lkml.org 
[lkml]   [2017]   [Jul]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [RFC PATCH v1 00/11] Create fast idle path for short idle periods
    On Wed, Jul 12, 2017 at 11:53:06AM -0700, Paul E. McKenney wrote:
    > On Wed, Jul 12, 2017 at 07:46:42PM +0200, Peter Zijlstra wrote:
    > > On Wed, Jul 12, 2017 at 08:56:51AM -0700, Paul E. McKenney wrote:
    > > > Very good, I have queued the patch below. I left out the removal of
    > > > the export as I need to work out why the export was there. If it turns
    > > > out not to be needed, I will remove the related ones as well.
    > >
    > > 'git grep rcu_idle_enter' shows no callers other than
    > > kernel/sched/idle.c. Which seems a clear indication its not needed.
    > >
    > > You also have to ask yourself, do I want joe module author to ever call
    > > this. To which I suspect the answer is: hell no ;-)
    >
    > The other question is "why did I do this in the first place".
    >
    > The only case where there will turn out to have been a still-valid reason
    > is if I remove it without checking first. ;-)

    And I have now checked. Please see below.

    Thanx, Paul

    ------------------------------------------------------------------------

    commit 31b2fd02abe5f036d7e83461bd19bbca3636d62e
    Author: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
    Date: Wed Jul 12 11:55:21 2017 -0700

    rcu: Remove exports from rcu_idle_exit() and rcu_idle_enter()

    The rcu_idle_exit() and rcu_idle_enter() functions are exported because
    they were originally used by RCU_NONIDLE(), which was intended to
    be usable from modules. However, RCU_NONIDLE() now instead uses
    rcu_irq_enter_irqson() and rcu_irq_exit_irqson(), which are not
    exported, and there have been no complaints.

    This commit therefore removes the exports from rcu_idle_exit() and
    rcu_idle_enter().

    Reported-by: Peter Zijlstra <peterz@infradead.org>
    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>

    diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
    index 0798d2585e87..860d1c147606 100644
    --- a/kernel/rcu/tree.c
    +++ b/kernel/rcu/tree.c
    @@ -843,7 +843,6 @@ void rcu_idle_enter(void)
    RCU_LOCKDEP_WARN(!irqs_disabled(), "rcu_idle_enter() invoked with irqs enabled!!!");
    rcu_eqs_enter(false);
    }
    -EXPORT_SYMBOL_GPL(rcu_idle_enter);

    #ifdef CONFIG_NO_HZ_FULL
    /**
    @@ -976,7 +975,6 @@ void rcu_idle_exit(void)
    rcu_eqs_exit(false);
    local_irq_restore(flags);
    }
    -EXPORT_SYMBOL_GPL(rcu_idle_exit);

    #ifdef CONFIG_NO_HZ_FULL
    /**
    \
     
     \ /
      Last update: 2017-07-12 21:00    [W:2.438 / U:0.196 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site