Good catch. What can I say, except "Ooops" :-).
What exactly was the reason for dropping into the failure case? This
normally shouldn't happen, but it isn't always a bug that it did. I just
want to make sure that there isn't some other bug...
-Eric
----- Original Message -----
From: "Manfred Spraul" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>
Cc: "German Jose Gomez Garcia" <[EMAIL PROTECTED]>; "Tigran
Aivazian" <[EMAIL PROTECTED]>; "Steven N. Hirsch" <[EMAIL PROTECTED]>;
<[EMAIL PROTECTED]>
Sent: Friday, December 24, 1999 9:29 AM
Subject: Re: Bug at spinlock.h line 92
> German Jose Gomez Garcia wrote:
> > >
> > > The request function of your hardware device driver returned without
> > > owning the io_request_lock.
> >
> > It is a SCSI ZIP disk attached to an onboard AIC7890 (included
in a
> > Supermicro PDBU motherboard)
> >
> I could reproduce it too:
> * sym53810 [compiled as module]
> * Iomega ZIP [no disk inserted]
> * scsi midlayer statically linked into the kernel
>
> if I start "modprobe sym53c8xx", then the kernel causes an oops.
>
> The patch below fixes the problem.
>
> german, could you try the patch below?
>
> --
> Manfred
----------------------------------------------------------------------------
----
> --- 2.3/drivers/scsi/scsi_lib.c Tue Dec 21 09:35:12 1999
> +++ build-2.3/drivers/scsi/scsi_lib.c Fri Dec 24 09:50:00 1999
> @@ -821,12 +821,14 @@
> * get those allocated here.
> */
> if (!SDpnt->scsi_init_io_fn(SCpnt)) {
> + spin_lock_irq(&io_request_lock);
> continue;
> }
> /*
> * Initialize the actual SCSI command for this request.
> */
> if (!STpnt->init_command(SCpnt)) {
> + spin_lock_irq(&io_request_lock);
> continue;
> }
> }
>
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]