Re: [PATCH net] flow_dissect: call init_default_flow_dissectors() earlier

From: David Miller
Date: Tue Nov 22 2016 - 14:44:54 EST


From: Eric Dumazet <eric.dumazet@xxxxxxxxx>
Date: Tue, 22 Nov 2016 11:17:30 -0800

> From: Eric Dumazet <edumazet@xxxxxxxxxx>
>
> Andre Noll reported panics after my recent fix (commit 34fad54c2537
> "net: __skb_flow_dissect() must cap its return value")
>
> After some more headaches, Alexander root caused the problem to
> init_default_flow_dissectors() being called too late, in case
> a network driver like IGB is not a module and receives DHCP message
> very early.
>
> Fix is to call init_default_flow_dissectors() much earlier,
> as it is a core infrastructure and does not depend on another
> kernel service.
>
> Fixes: 06635a35d13d4 ("flow_dissect: use programable dissector in skb_flow_dissect and friends")
> Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
> Reported-by: Andre Noll <maan@xxxxxxxxxxxxxxxx>
> Diagnosed-by: Alexander Duyck <alexander.h.duyck@xxxxxxxxx>

Applied and queued up for -stable, I'll try to fast-track this.