lkml.org 
[lkml]   [2018]   [Apr]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH tip/core/rcu 07/22] softirq: Eliminate unused cond_resched_softirq() macro
    Date
    The cond_resched_softirq() macro is not used anywhere in mainline, so
    this commit simplifies the kernel by eliminating it.

    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    ---
    include/linux/sched.h | 8 --------
    kernel/sched/core.c | 14 --------------
    kernel/softirq.c | 3 +--
    3 files changed, 1 insertion(+), 24 deletions(-)

    diff --git a/include/linux/sched.h b/include/linux/sched.h
    index fe8f7178a22d..9ae6943b7310 100644
    --- a/include/linux/sched.h
    +++ b/include/linux/sched.h
    @@ -1613,7 +1613,6 @@ static inline int test_tsk_need_resched(struct task_struct *tsk)
    * explicit rescheduling in places that are safe. The return
    * value indicates whether a reschedule was done in fact.
    * cond_resched_lock() will drop the spinlock before scheduling,
    - * cond_resched_softirq() will enable bhs before scheduling.
    */
    #ifndef CONFIG_PREEMPT
    extern int _cond_resched(void);
    @@ -1639,13 +1638,6 @@ extern int __cond_resched_lock(spinlock_t *lock);
    __cond_resched_lock(lock); \
    })

    -extern int __cond_resched_softirq(void);
    -
    -#define cond_resched_softirq() ({ \
    - ___might_sleep(__FILE__, __LINE__, SOFTIRQ_DISABLE_OFFSET); \
    - __cond_resched_softirq(); \
    -})
    -
    static inline void cond_resched_rcu(void)
    {
    #if defined(CONFIG_DEBUG_ATOMIC_SLEEP) || !defined(CONFIG_PREEMPT_RCU)
    diff --git a/kernel/sched/core.c b/kernel/sched/core.c
    index 5e10aaeebfcc..6a09e6af64b9 100644
    --- a/kernel/sched/core.c
    +++ b/kernel/sched/core.c
    @@ -5012,20 +5012,6 @@ int __cond_resched_lock(spinlock_t *lock)
    }
    EXPORT_SYMBOL(__cond_resched_lock);

    -int __sched __cond_resched_softirq(void)
    -{
    - BUG_ON(!in_softirq());
    -
    - if (should_resched(SOFTIRQ_DISABLE_OFFSET)) {
    - local_bh_enable();
    - preempt_schedule_common();
    - local_bh_disable();
    - return 1;
    - }
    - return 0;
    -}
    -EXPORT_SYMBOL(__cond_resched_softirq);
    -
    /**
    * yield - yield the current processor to other threads.
    *
    diff --git a/kernel/softirq.c b/kernel/softirq.c
    index 177de3640c78..03981f1c39ea 100644
    --- a/kernel/softirq.c
    +++ b/kernel/softirq.c
    @@ -145,8 +145,7 @@ static void __local_bh_enable(unsigned int cnt)
    }

    /*
    - * Special-case - softirqs can safely be enabled in
    - * cond_resched_softirq(), or by __do_softirq(),
    + * Special-case - softirqs can safely be enabled by __do_softirq(),
    * without processing still-pending softirqs:
    */
    void _local_bh_enable(void)
    --
    2.5.2
    \
     
     \ /
      Last update: 2018-04-23 04:36    [W:4.072 / U:0.100 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site