[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20161116.183213.1491793896240161705.davem@davemloft.net>
Date: Wed, 16 Nov 2016 18:32:13 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: eric.dumazet@...il.com
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH net-next] netpoll: more efficient locking
From: Eric Dumazet <eric.dumazet@...il.com>
Date: Wed, 16 Nov 2016 14:54:50 -0800
> From: Eric Dumazet <edumazet@...gle.com>
>
> Callers of netpoll_poll_lock() own NAPI_STATE_SCHED
>
> Callers of netpoll_poll_unlock() have BH blocked between
> the NAPI_STATE_SCHED being cleared and poll_lock is released.
>
> We can avoid the spinlock which has no contention, and use cmpxchg()
> on poll_owner which we need to set anyway.
>
> This removes a possible lockdep violation after the cited commit,
> since sk_busy_loop() re-enables BH before calling busy_poll_stop()
>
> Fixes: 217f69743681 ("net: busy-poll: allow preemption in sk_busy_loop()")
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
Applied, thanks Eric.
Powered by blists - more mailing lists