Re: Kernel Oopses in serial Gadget

Oliver Neukum <[email protected]>
Newsgroups gmane.linux.usb.devel
Organization Novell
Message-ID <[email protected]>
Am Donnerstag, 19. April 2007 12:50 schrieb Thomas Brinker:
> Hi!
> 
> We are facing here kernel oopes in the USB-Gadget driver serial.
> 
> Quiet seldomly the kernel oopses during heavy load on the serial line.
> 
> The pc value of the Oops points not always to the same function, but always 
> near to places where the list &dev->dev_req_list is in use. So we got the 
> idea that somehow this list was corrupted.
> 
> By further investigation we found that in callback-funktion gs_write_complete 
> the list is only protected with spin_lock/spin_unlock.
> To my knowledge the callback is most time called in interrupt. But it is also 
> called outside of interrupt and then there would be no proctection from race 
> conditions.

If this is so, you need to use spin_(un)lock_irqsave/restore.
Try that.

	Regards
		Oliver

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.