From johannes@sipsolutions.net Wed Jul 19 06:40:21 2006 Subject: USB: appletouch: fix atp_disconnect From: Johannes Berg To: gregkh@suse.de Cc: vojtech@suse.cz, linux-usb-devel@lists.sourceforge.net Date: Wed, 19 Jul 2006 15:39:46 +0200 Message-Id: <1153316386.14524.3.camel@johannes.berg> appletouch uses urb->transfer_dma after having freed the urb, this shows up only if the system is compiled with slab debugging. This patch fixes it by reordering the free calls. Signed-off-by: Johannes Berg Signed-off-by: Vojtech Pavlik Signed-off-by: Greg Kroah-Hartman --- drivers/usb/input/appletouch.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- gregkh-2.6.orig/drivers/usb/input/appletouch.c +++ gregkh-2.6/drivers/usb/input/appletouch.c @@ -597,9 +597,9 @@ static void atp_disconnect(struct usb_in if (dev) { usb_kill_urb(dev->urb); input_unregister_device(dev->input); - usb_free_urb(dev->urb); usb_buffer_free(dev->udev, dev->datalen, dev->data, dev->urb->transfer_dma); + usb_free_urb(dev->urb); kfree(dev); } printk(KERN_INFO "input: appletouch disconnected\n");