• Benjamin LaHaise's avatar
    x86: fix synchronize_rcu(): high latency on idle system · 0723a69a
    Benjamin LaHaise authored
    an otherwise idle system takes about 3 ticks per network
    interface in unregister_netdev() due to multiple calls to synchronize_rcu(),
    which adds up to quite a few seconds for tearing down thousands of
    interfaces.  By flushing pending rcu callbacks in the idle loop, the system
    makes progress hundreds of times faster.  If this is indeed a sane thing to,
    it probably needs to be done for other architectures than x86.  And yes, the
    network stack shouldn't call synchronize_rcu() quite so much, but fixing that
    is a little more involved.
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    0723a69a
process_32.c 21.9 KB