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

Attachment: msg01540/pgp00000.pgp
Description: PGP signature

Reply via email to