Re: OOPS in 2.4.21-pre5, ide-scsi

From: James Stevenson (james@stev.org)
Date: Thu Mar 13 2003 - 12:11:01 EST


> > > Your explanation doesn't quite make sense, but I can take a look at
the
> > > problem :-)
> > >
> > > What kernel is the below oops from? What compiler?
> >
> > i can trigger this on any 2.4.x series kernel.
> > -> Insert dmaged / lightly scratched cd into drive
> > dd /dev/scd0 bs=8192k of=file
> > wait for opps.
> > opps also cd tries to re read several times
> > short hang then the following output
> >
> > gcc versions.
> > Whatever shits with redhat 7.1 + 7.2 + 7.3 and the
> > updates between them in each of the redhat versions.
> > but normally
> > Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs
> > gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-98)
> >
> > or
> > Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs
> > gcc version 2.96 20000731 (Red Hat Linux 7.3 2.96-113)
>
> weee ok not my choice for compilers, but probably alright. do me a favor
> then:
>
> # cd /to/kernel/source
> # rm drivers/scsi/ide-scsi.o
> # EXTRA_CFLAGS=-g make drivers/scsi/ide-scsi.o
> # objdump -S drivers/scsi/ide-scsi.o > /tmp/some_file

i know longer have the source tree from what the opps was generated
from that was actually the 2.4.19 opps i posted but the kernel is now
2.4.20 it was the same trace and same place in the file i tracked it to
this point.

>From 2.4.20 tree line 333 ide-scsi.c

333: if ((status & DRQ_STAT) == 0) { /* No more interrupts */
                if (test_bit(IDESCSI_LOG_CMD, &scsi->log))
                        printk (KERN_INFO "Packet command completed, %d
bytes transferred\n", pc->actually_transferred);
                ide__sti();
                if (status & ERR_STAT)
 338: rq->errors++;
                idescsi_end_request (1, HWGROUP(drive));
                return ide_stopped;
        }

 the oops occurs on line 338

i know its only error counting on that line but rq->errors is used
in idescsi_end_request as well which from what i can work out if it
never hits the limit it will keep retrying on the drive for ever. Then
i start to get lost / confused ....
I cant retrigger at the weekend if you wish and provide all uptodate
information on it.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Mar 15 2003 - 22:00:35 EST