Re: [PATCH net] flow_dissect: call init_default_flow_dissectors() earlier
On Tue, Nov 22, 11:17, Eric Dumazet wrote > -late_initcall_sync(init_default_flow_dissectors); > +core_initcall(init_default_flow_dissectors); Indeed, that fixed it. Feel free to add Tested-by: Andre Noll Thanks a lot Andre -- Max Planck Institute for Developmental Biology Spemannstraße 35, 72076 Tübingen, Germany. Phone: (+49) 7071 601 829 http://people.tuebingen.mpg.de/maan/ signature.asc Description: Digital signature
Re: [PATCH net] flow_dissect: call init_default_flow_dissectors() earlier
From: Eric Dumazet Date: Tue, 22 Nov 2016 11:17:30 -0800 > From: Eric Dumazet > > 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 > Reported-by: Andre Noll > Diagnosed-by: Alexander Duyck Applied and queued up for -stable, I'll try to fast-track this.
[PATCH net] flow_dissect: call init_default_flow_dissectors() earlier
From: Eric Dumazet 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 Reported-by: Andre Noll Diagnosed-by: Alexander Duyck --- net/core/flow_dissector.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/core/flow_dissector.c b/net/core/flow_dissector.c index 69e4463a4b1b..c6d8207ffa7e 100644 --- a/net/core/flow_dissector.c +++ b/net/core/flow_dissector.c @@ -1013,4 +1013,4 @@ static int __init init_default_flow_dissectors(void) return 0; } -late_initcall_sync(init_default_flow_dissectors); +core_initcall(init_default_flow_dissectors);