Re: [linux-usb-devel] drivers/usb/gadget/ether.c: NULL dereference

2006-11-12 Thread Adrian Bunk
On Sat, Nov 11, 2006 at 11:10:17PM -0800, David Brownell wrote: void dev_kfree_skb_any(struct sk_buff *skb) { if (in_irq() || irqs_disabled()) dev_kfree_skb_irq(skb); else dev_kfree_skb(skb); } And the first thing

[linux-usb-devel] drivers/usb/gadget/ether.c: NULL dereference

2006-11-11 Thread Adrian Bunk
The Coverity checker spotted the following NULL dereference of skb in drivers/usb/gadget/ether.c: -- snip -- ... static int rx_submit (struct eth_dev *dev, struct usb_request *req, gfp_t gfp_flags) { struct sk_buff *skb; int retval = -ENOMEM; ...

Re: [linux-usb-devel] drivers/usb/gadget/ether.c: NULL dereference

2006-11-11 Thread David Brownell
On Saturday 11 November 2006 8:06 am, Adrian Bunk wrote: The Coverity checker spotted the following NULL dereference of skb in drivers/usb/gadget/ether.c: I don't see such a dereference. As usual, free(NULL) is legit. Is this another case of bogus reports from Coverity? I still need to

Re: [linux-usb-devel] drivers/usb/gadget/ether.c: NULL dereference

2006-11-11 Thread Adrian Bunk
On Sat, Nov 11, 2006 at 10:35:48PM -0800, David Brownell wrote: On Saturday 11 November 2006 8:06 am, Adrian Bunk wrote: The Coverity checker spotted the following NULL dereference of skb in drivers/usb/gadget/ether.c: I don't see such a dereference. As usual, free(NULL) is legit. ...

Re: [linux-usb-devel] drivers/usb/gadget/ether.c: NULL dereference

2006-11-11 Thread David Brownell
void dev_kfree_skb_any(struct sk_buff *skb) { if (in_irq() || irqs_disabled()) dev_kfree_skb_irq(skb); else dev_kfree_skb(skb); } And the first thing dev_kfree_skb_irq() does is to dereference skb... Yet dev_kfree_skb() -- kfree_skb()