]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - net/core/flow_dissector.c
rps: flow_dissector: Fix uninitialized flow_keys used in __skb_get_hash possibly
[karo-tx-linux.git] / net / core / flow_dissector.c
index 61ad43f61c5edbffa48f4983d8bf1a7472a66cdc..52742a02814fddc6da9dd23c90af50c363b93b11 100644 (file)
@@ -680,11 +680,13 @@ EXPORT_SYMBOL_GPL(__skb_get_hash_symmetric);
 void __skb_get_hash(struct sk_buff *skb)
 {
        struct flow_keys keys;
+       u32 hash;
 
        __flow_hash_secret_init();
 
-       __skb_set_sw_hash(skb, ___skb_get_hash(skb, &keys, hashrnd),
-                         flow_keys_have_l4(&keys));
+       hash = ___skb_get_hash(skb, &keys, hashrnd);
+
+       __skb_set_sw_hash(skb, hash, flow_keys_have_l4(&keys));
 }
 EXPORT_SYMBOL(__skb_get_hash);