diff options
author | Michał Mirosław <mirq-linux@rere.qmqm.pl> | 2012-01-17 11:00:40 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-01-17 21:51:23 +0100 |
commit | 65e9d2faab70d07b9a38ac6ed298f191d24541fc (patch) | |
tree | 41bb55a55858d79f142cb37c2f3c3364fc778790 /net/core/dev.c | |
parent | net: WARN if skb_checksum_help() is called on skb requiring segmentation (diff) | |
download | linux-65e9d2faab70d07b9a38ac6ed298f191d24541fc.tar.xz linux-65e9d2faab70d07b9a38ac6ed298f191d24541fc.zip |
net: fix NULL-deref in WARN() in skb_gso_segment()
Bug was introduced in commit c8f44affb7244f2ac3e703cab13d55ede27621bb.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/dev.c')
-rw-r--r-- | net/core/dev.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index 17db2f2e5236..115dee1d985d 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -1889,6 +1889,7 @@ EXPORT_SYMBOL(skb_set_dev); static void skb_warn_bad_offload(const struct sk_buff *skb) { + static const netdev_features_t null_features = 0; struct net_device *dev = skb->dev; const char *driver = ""; @@ -1897,8 +1898,8 @@ static void skb_warn_bad_offload(const struct sk_buff *skb) WARN(1, "%s: caps=(%pNF, %pNF) len=%d data_len=%d gso_size=%d " "gso_type=%d ip_summed=%d\n", - driver, dev ? &dev->features : NULL, - skb->sk ? &skb->sk->sk_route_caps : NULL, + driver, dev ? &dev->features : &null_features, + skb->sk ? &skb->sk->sk_route_caps : &null_features, skb->len, skb->data_len, skb_shinfo(skb)->gso_size, skb_shinfo(skb)->gso_type, skb->ip_summed); } |