On 15/02/17 13:46, Eric Dumazet wrote:
On Wed, 2017-02-15 at 11:07 +, Anoob Soman wrote:
On 13/02/17 14:50, Anoob Soman wrote:
On 13/02/17 14:26, Eric Dumazet wrote:
On Mon, 2017-02-13 at 13:28 +, Anoob Soman wrote:
Wouldn't it be easier to call synchronize_net(), before calling
On Wed, 2017-02-15 at 11:07 +, Anoob Soman wrote:
> On 13/02/17 14:50, Anoob Soman wrote:
> > On 13/02/17 14:26, Eric Dumazet wrote:
> >> On Mon, 2017-02-13 at 13:28 +, Anoob Soman wrote:
> >>
> >>> Wouldn't it be easier to call synchronize_net(), before calling
> >>> fanout_release_data()
On 13/02/17 14:50, Anoob Soman wrote:
On 13/02/17 14:26, Eric Dumazet wrote:
On Mon, 2017-02-13 at 13:28 +, Anoob Soman wrote:
Wouldn't it be easier to call synchronize_net(), before calling
fanout_release_data() and kfree(f).
The behavior, wrt synchronize_net, would be same as before and
On 13/02/17 14:26, Eric Dumazet wrote:
On Mon, 2017-02-13 at 13:28 +, Anoob Soman wrote:
Wouldn't it be easier to call synchronize_net(), before calling
fanout_release_data() and kfree(f).
The behavior, wrt synchronize_net, would be same as before and
fanout_release() will cleanup
On Mon, 2017-02-13 at 13:28 +, Anoob Soman wrote:
> Wouldn't it be easier to call synchronize_net(), before calling
> fanout_release_data() and kfree(f).
> The behavior, wrt synchronize_net, would be same as before and
> fanout_release() will cleanup everything without leaving any residue.
On 10/02/17 13:57, Eric Dumazet wrote:
On Fri, 2017-02-10 at 12:39 +, Anoob Soman wrote:
Commit 6664498280cf ("packet: call fanout_release, while UNREGISTERING a
netdev"), unfortunately, introduced the following issues.
1. calling mutex_lock(_mutex) (fanout_release()) from inside
On Fri, 2017-02-10 at 12:39 +, Anoob Soman wrote:
> Commit 6664498280cf ("packet: call fanout_release, while UNREGISTERING a
> netdev"), unfortunately, introduced the following issues.
>
> 1. calling mutex_lock(_mutex) (fanout_release()) from inside
> rcu_read-side critical section.
Commit 6664498280cf ("packet: call fanout_release, while UNREGISTERING a
netdev"), unfortunately, introduced the following issues.
1. calling mutex_lock(_mutex) (fanout_release()) from inside
rcu_read-side critical section. rcu_read_lock disables preemption, most often,
which prohibits calling