On Mon, 2017-08-21 at 14:13 -0700, David Miller wrote:
> From: Eric Dumazet
> Date: Fri, 18 Aug 2017 20:40:01 -0700
>
> > Let look at tun->pcpu_stats, for example.
> >
> > It is allocated at line 1831, before the register_netdevice()
> >
> > drivers/net/tun.c does not provide ndo_init()
>
> I
From: Eric Dumazet
Date: Fri, 18 Aug 2017 20:40:01 -0700
> Let look at tun->pcpu_stats, for example.
>
> It is allocated at line 1831, before the register_netdevice()
>
> drivers/net/tun.c does not provide ndo_init()
I see the problem now.
And it's done this way because several steps need to
On Fri, 2017-08-18 at 15:58 -0700, David Miller wrote:
> From: Eric Dumazet
> Date: Fri, 18 Aug 2017 06:13:49 -0700
>
> > On Thu, 2017-08-17 at 22:21 -0700, David Miller wrote:
> >> From: Eric Dumazet
> >> Date: Thu, 17 Aug 2017 15:30:40 -0700
> >>
> >> > So we do not really know if we need to
From: Eric Dumazet
Date: Fri, 18 Aug 2017 06:13:49 -0700
> On Thu, 2017-08-17 at 22:21 -0700, David Miller wrote:
>> From: Eric Dumazet
>> Date: Thu, 17 Aug 2017 15:30:40 -0700
>>
>> > So we do not really know if we need to clean up or not.
>>
>> We always know, the answer is that whenever reg
On Thu, 2017-08-17 at 22:21 -0700, David Miller wrote:
> From: Eric Dumazet
> Date: Thu, 17 Aug 2017 15:30:40 -0700
>
> > So we do not really know if we need to clean up or not.
>
> We always know, the answer is that whenever register_netdev() fails we
> never need to perform any cleanup which i
From: Eric Dumazet
Date: Thu, 17 Aug 2017 15:30:40 -0700
> So we do not really know if we need to clean up or not.
We always know, the answer is that whenever register_netdev() fails we
never need to perform any cleanup which is done by priv_destructor.
> Any idea how to fix the issue ?
Your p
David
If I read correctly this commit :
cf124db566e6b036b8bcbe8decbed740bdfac8c6
("net: Fix inconsistent teardown and release of private netdev state.")
We have problems in drivers providing priv_destructor
and handling a failure in register_netdevice()
register_netdevice() might have called ->p