[<prev] [next>] [day] [month] [year] [list]
Message-Id: <1252061554.6449.1552.camel@dell-laptop>
Date: Fri, 04 Sep 2009 11:52:34 +0100
From: Tony Olech <tony.olech@...ndigitalsystems.com>
To: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux USB Mailing List <inux-usb@...r.kernel.org>
Subject: is WARN_ON(irqs_disabled) in dma_free_coherent() spurious ??
Hi
I am trying to develop a linux kernel driver for a USB
device and I am initially following the example driver
usb-skeleton.c and also the driver usblcd.c
The sequence:
in the file operation ..write():
usb_alloc_urb()
usb_buffer_alloc(a big buffer)
usb_fill_bulk_urb(for an OUT pipe)
usb_submit_urb()
usb_free_urb()
then in the completion ..callback():
usb_buffer_free()
the routine dma_free_coherent() is called which calls
WARN_ON(irqs_disabled)
and because I am running the kernel with all the debugs
and warnings switched on I get a stack dump in the system
log.
Because I do not want to see warnings unless I am doing
something wrong I have to investigate the (possible)
problem. As far as I can tell the WARN_ON() is completely
spurious. Is that correct?? If so what is the solution
and who will change the drivers that use the same algorithm??
Many thanks,
Tony Olech
Elan Digital Systems Ltd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists