Known problem with cdrecord -scanbus with removed devices. Patch in the works.
Matt On Sat, Nov 10, 2001 at 07:54:16PM +0100, Oliver Kurth wrote: > Hello! > > I have problems with the combination ide-scsi and usb-storage. I need > ide-scsi for my CD writer and usb-storage for my camera (Fuji Finepix > 2400). Mounting the camera works fine. Writing CDs was always fine. > > I get problems as soon as I use the CD writer (even cdrecord -scanbus), > afterwards I cannot mount the camera any more if it wasn't plugged in at > that time. cdrecord -scanbus hangs with trying to scan scsibus1, but can > be interrupted with Ctrl-C. After this, I cannot mount the camera any > more: > > blue:~# mount /mnt/camera/ > mount: /dev/sda1 is not a valid block device > > I tried to unload the usb-storage module, because I thought reloading it > again would solve the problems, but then modprobe -r > hangs forever (until reboot). > > I have turned on debugging for usb-storage, these are the last messages: > > Nov 10 19:10:59 blue kernel: usb-storage: storage_disconnect() called > Nov 10 19:10:59 blue kernel: usb-storage: -- releasing irq URB > Nov 10 19:10:59 blue kernel: usb-storage: USB IRQ recieved for device on > host 1 > Nov 10 19:10:59 blue kernel: usb-storage: -- IRQ data length is 0 > Nov 10 19:10:59 blue kernel: usb-storage: -- IRQ state is -2 > Nov 10 19:10:59 blue kernel: usb-storage: -- Interrupt Status (0x0, 0x0) > Nov 10 19:10:59 blue kernel: usb-storage: -- IRQ too short > Nov 10 19:10:59 blue kernel: usb-storage: -- usb_unlink_urb() returned 0 > Nov 10 19:10:59 blue kernel: usb-storage: -- releasing main URB > Nov 10 19:10:59 blue kernel: usb-storage: -- usb_unlink_urb() returned > -19 > Nov 10 19:10:59 blue kernel: usb-storage: -- calling > scsi_unregister_module() > Nov 10 19:10:59 blue kernel: usb-storage: release() called for host > usb-storage > Nov 10 19:10:59 blue kernel: usb-storage: -- sending US_ACT_EXIT command > to thre > ad > > I tried to debug the problem myself, but I do not know enough about usb, > scsi and kernel programming in general, all I can track is that the > problem is probably somewhere in > /usr/src/kernel/drivers/usb/storage/scsiglue.c: > > static int release(struct Scsi_Host *psh) > { > struct us_data *us = (struct us_data *)psh->hostdata[0]; > > US_DEBUGP("release() called for host %s\n", us->htmplt.name); > > /* Kill the control threads > * > * Enqueue the command, wake up the thread, and wait for > * notification that it's exited. > */ > US_DEBUGP("-- sending US_ACT_EXIT command to thread\n"); > us->action = US_ACT_EXIT; > > up(&(us->sema)); > wait_for_completion(&(us->notify)); > > /* remove the pointer to the data structure we were using */ > (struct us_data*)psh->hostdata[0] = NULL; > > /* we always have a successful release */ > return 0; > } > > It seems that wait_for_completion() never returns. > > My current kernel version is 2.4.14, but I had the same problems with > older 2.4.x kernels, including ac patches. Never tried usb with 2.2.x. > > Well, I would be happy if I could just reload usb-storage.o without > rebooting. > > Greetings, > Oliver > -- > Oliver Kurth > mailto:[EMAIL PROTECTED] http://leinekanal.de > > _______________________________________________ > [EMAIL PROTECTED] > To unsubscribe, use the last form field at: > https://lists.sourceforge.net/lists/listinfo/linux-usb-users -- Matthew Dharm Home: [EMAIL PROTECTED] Maintainer, Linux USB Mass Storage Driver Why am I talking to a toilet brush? -- CEO User Friendly, 4/30/1998
msg01540/pgp00000.pgp
Description: PGP signature