Re: memory management

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Nov 11, 2002 at 08:37:34AM -0500, Steve Miller wrote:
> Hi,
> 
> I'm trying to write a driver for a usb device that requires a firmware 
> upload that is around 31Kb. This data is currently dealt with as a 
> static array of unsigned char and a pointer to it is given as the urb 
> transfer buffer when usb_submit_urb() is called.  Then the usb core 
> crashes.  I'm working with the 2.4.18 kernel from Mandrake 8.2. Here is 
> the error output:

The USB core can't handle data that is static.  You need to have your
urb buffer be created with kmalloc (I thought this was documented
somewhere...)  See the ezusb_writememory() function in
drivers/usb/serial/usbserial.c as an example of how to handle writing
firmware from within a kernel driver.

Hope this helps,

greg k-h
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux