Re: [PARPORT] Re: 2.2.1 crash


Adrian Bridgett (adrian.bridgett@zetnet.co.uk)
Tue, 2 Mar 1999 19:36:49 +0000


Read the "I don't read kernel list" msg so I've Cc'd these to you.

Short story - my Zip drive has click of death (I think) so I've been
unplugging it and experiencing a few nasties.

The last dmesg says this:

parport0: PC-style at 0x378, irq 7 [SPP,PS2]
ppa: Version 2.03 (for Linux 2.2.x)
ppa: Found device at ID 6, Attempting to use EPP 32 bit
ppa: Found device at ID 6, Attempting to use PS/2
ppa: Communication established with ID 6 using PS/2
scsi1 : Iomega VPI0 (ppa) interface
scsi : 2 hosts.
  Vendor: IOMEGA Model: ZIP 100 Rev: J.03
  Type: Direct-Access ANSI SCSI revision: 02

--------------1st msg--------------------------
Maybe my "click o' death" Zip drive has a purpose in life - finding kernel
bugs :-)

I've seen a few oopses (too busy to write down), but here is a kernel hang:

boot into 2.2.2-ac1
insert zip disk
mount /zip
# doesn't work - need to insert module
insmod ppa
# error
eject disk
re-insert disk
insmod ppa
# that wasn't needed IIRC
mount /zip

this mount hangs in D state - in WCHAN is down_failed.

on another console, do "mount /zip". Now things go funny:

- Alt-L/R works, Alt-Fx works
- cannot type anything to a user level process at all

Alt-SysRq t shows this (and this never alters):

mount 30 D C520E000 5688 262 227
sig :0 00...80002 00...fffbfaef :X
mount -32 R current 5752 311 229
sig :0 00...00000 00...fffbfaef :X

The only messages in /var/log are:
21:08:30 ppa: Version 2.03 (for Linux 2.2.x)
21:08:30 ppa: Found device at ID 6, Attempting to use EPP 32 bit
21:08:30 ppa: Found device at ID 6, Attempting to use PS/2
21:08:30 ppa: Communication established with ID 6 using PS/2
21:08:30 scsi1 : Iomega VPI0 (ppa) interface
21:08:30 scsi : 2 hosts.
21:08:30 Vendor: IOMEGA Model: ZIP 100 Rev: J.03
21:08:30 Type: Direct-Access ANSI SCSI revision: 02
21:08:30 Detected scsi removable disk sda at scsi1, channel 0, id 6, lun 0
21:08:30 SCSI device sda: hdwr sector= 512 bytes. Sectors= 196608 [96 MB]
[0.1 GB]
21:08:30 sda: Write Protect is off
21:08:31 sda:SCSI disk error : host 1 channel 0 id 6 lun 0 return code =
28000000
21:08:31 Current error sd08:00: sns = f0 4
21:08:31 ASC=15 ASCQ=94
21:08:31 Raw sense data:0xf0 0x00 0x04 0x00 0x00 0x00 0x00 0x11 0x00 0x00
0x00 0x00 0x15 0x94 0x00
+0x00
21:08:31 scsidisk I/O error: dev 08:00, sector 0
21:08:31 unable to read partition table
21:08:46 Disc change detected.
21:08:46 VFS: Disk change detected on device sd(8,1)

----------------------------------------------------------------

-------------2nd msg---------------------------
All three oopses typed by hand so there maybe quite a few typos even though
I've tried to be careful. I still have the written versions so I can double
check things if needed.

I have a "click of death" zip drive so crashing the kernel the only thing
it's good for.

What I did:
Plugged everything together and insert Zip disk. Wait a few seconds for the
clicking to stop. mounting _will_ fail, so:
  dd if=/dev/sda of=/dev/null bs=512 count=10
whilst this is busy clicking away, remove power from Zip. restore power,
pull power, pull cable (and possibly plug cable and power back in)

1st oops (partially off the screen):
Options used: -V (default)
              -o /lib/modules/2.2.2-ac1/ (default)
              -k /proc/ksyms (default)
              -l /proc/modules (default)
              -m /boot/System.map-2.2.2-ac1 (specified)
              -c 1 (default)

EIP: 0010:[<00000000>]
EFLAGS: 00010046
eax: 00000000 ebx: c2cac200 ecx: 00000005 edx: c5db6000
esi: 00000000 edi: c008e9a0 ebp: 00000003 esp: c01a5f10
ds: 0018 es: 0018 ss: 0018
Process swapper (pid: 0, process nr: 0, stackpage=c01a5000)
Stack: c2cac200 00000282 00000001 c01a5f48 c680eef8 c2cac200 00000003 c2cac200
       c680eeb0 c010f9c1 c2cac200 00000005 c01bffd4 00000000 c01a5f60 c0115e75
       00000000 c01a4000 00017d2f c0108be9 00001000 c0107adc 00000000 c01a4000
Call Trace: [<c680eef8>] [<c680eeb0>] [<c010f9c1>] [<c0115e75>] [<c0108be9>] [<c0107adc>] [<c010626d>]
       [<c0106000>] [<c0106290>] [<c0107a40>] [<c0106000>] [<c010607b>] [<c0106000>] [<c0100176>]

>>EIP: 00000000 Before first symbol
Trace: c680eef8 <scsi_old_times_out+48/11c>
Trace: c680eeb0 <scsi_old_times_out+0/11c>
Trace: c010f9c1 <timer_bh+2e9/330>
Trace: c0115e75 <do_bottom_half+49/64>
Trace: c0108be9 <do_IRQ+39/40>
Trace: c0107adc <ret_from_intr+0/20>
Trace: c010626d <cpu_idle+5d/6c>
Trace: c0106000 <get_options+0/74>

1 warning issued. Results may not be reliable.

2nd oops had occured:
Options used: -V (default)
              -o /lib/modules/2.2.2-ac1/ (default)
              -k /proc/ksyms (default)
              -l /proc/modules (default)
              -m /boot/System.map-2.2.2-ac1 (specified)
              -c 1 (default)

current->tss.cr3 = 00101000, %cr3 = 00101000
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c0107ebf>]
EFLAGS: 00010082
eax: 00000000 ebx: 00000000 ecx: 00000005 edx: c5db6000
esi: c0100176 edi: c01a6000 ebp: c6800000 esp: c01a5e54
ds: 0018 es: 0018 ss: 0018
Process swapper (pid: 0, process nr: 0, stackpage=c01a5000)
Stack: c01a4000 c0195224 c01afcda 00000000 c008e9a0 00000003 00000000 c2cac200
       00000005 c5db6000 00000000 00010046 c6800000 c7000000 c0107f20 c01a5ed4
       c0182f94 c0183e89 00000000 00000000 c010ceba c0183e89 c01a5ed4 00000000
Call Trace: [<c6800000>] [<c7000000>] [<c0107f20>] [<c0182f94>] [<c0183e89>] [<c010ceba>] [<c0183e89>]
       [<c0107b45>] [<c680f7eb>] [<c680eef8>] [<c680eeb0>] [<c010f9c1>] [<c0115e75>] [<c0108be9>] [<c0107adc>]
       [<c010626d>] [<c0106000>] [<c0106290>] [<c0107a40>] [<c0106000>] [<c010607b>] [<c0106000>] [<c0100176>]
Code: 0f b6 0c 03 89 4c 24 38 51 68 8c 2f 18 c0 e8 36 97 00 00 83

>>EIP: c0107ebf <show_registers+26b/29c>
Trace: c6800000 <_end+6635b28/663eb74>
Trace: c7000000 <END_OF_CODE+778084/????>
Trace: c0107f20 <die+30/38>
Trace: c0182f94 <stext_lock+cf0/1c6c>
Trace: c0183e89 <stext_lock+1be5/1c6c>
Trace: c010ceba <do_page_fault+2c6/318>
Trace: c0183e89 <stext_lock+1be5/1c6c>
Trace: c0107b45 <error_code+2d/34>
Trace: c010626d <cpu_idle+5d/6c>
Code: c0107ebf <show_registers+26b/29c> 00000000 <_EIP>:
Code: c0107ebf <show_registers+26b/29c> 0: 0f b6 0c 03 movzbl (%ebx,%eax,1),%ecx
Code: c0107ec3 <show_registers+26f/29c> 4: 89 4c 24 38 movl %ecx,0x38(%esp,1)
Code: c0107ec7 <show_registers+273/29c> 8: 51 pushl %ecx
Code: c0107ec8 <show_registers+274/29c> 9: 68 8c 2f 18 c0 pushl $0xc0182f8c
Code: c0107ecd <show_registers+279/29c> e: e8 36 97 00 00 call 9749 <_EIP+0x9749> c0111608 <printk+0/174>
Code: c0107ed2 <show_registers+27e/29c> 13: 83 00 00 addl $0x0,(%eax)

Aiee, killing interrupt handler.
Kernel panic: Attempted to kill the idle task!
In swapper task - not syncing.

Rebooted. Trying to recreate that first oops, things went pear shapped, so I
did SysRq-i (by mistake), then SysRq-u (remount readonly):

SysRq: Emergency Remount R/O.
Remounting device 03:06 ... Scheduling in interrupt:

(third oops)
Options used: -V (default)
              -o /lib/modules/2.2.2-ac1/ (default)
              -k /proc/ksyms (default)
              -l /proc/modules (default)
              -m /boot/System.map-2.2.2-ac1 (specified)
              -c 1 (default)

current->tss.cr3 = 00101000, %cr3 = 00101000
*pde = 00000000
Oops: 0002
CPU: 0
EIP: 0010:[<c010ee1a>]
EFLAGS: 00010282
eax: 00000018 ebx: c01a4000 ecx: 00000005 edx: c5d5c000
esi: c01ae000 edi: c5ea6e60 ebp: c01a5d1c esp: c01a5d10
ds: 0018 es: 0018 ss: 0018
Process swapper (pid: 0, process nr: 0, stackpage=c01a5000)
Stack: c01a5d34 c5ea6e60 00000000 c01a4000 c012327d 00000007 c4dfc200 00000001
       00000000 co1a4000 c5ea6e8c c0123451 c5ea6e60 00000306 00000306 c01a4000
       c0195224 c01a0306 c0195224 00000000 c5ea6e60 c01234d1 00000306 00000001
Call Trace: [<c012327d>] [<c0123451>] [<c01234d1>] [<c0172ac6>] [<c0172bae>] [<c011138e>] [<c0114d8c>]
       [<c018461c>] [<c0107f28>] [<c0182f94>] [<c0183e89>] [<c010ceba>] [<c0183e89>] [<c0100176>] [<c6800000>]
       [<c0107b45>] [<c0100176>] [<c6800000>] [<c0107ebf>] [<c6800000>] [<c7000000>] [<c0107f20>] [<c0182f94>]
       [<c0183e89>] [<c010ceba>] [<c0183e89>] [<c0107b45>] [<c680f7eb>] [<c680eef8>] [<c680eeb0>] [<c010f9c1>]
       [<c0115e75>] [<c0108be9>] [<c0107adc>] [<c01061fd>] [<c010624f>] [<c0106000>] [<c0106290>] [<c0107a40>]
       [<c0106000>] [<c010607b>] [<c0106000>] [<c0100176>]
Code: c7 05 00 00 00 00 00 00 00 00 8d 65 f0 5b 5e 5f 89 ec 5d c3

>>EIP: c010ee1a <schedule+24a/260>
Trace: c012327d <__wait_on_buffer+89/c4>
Trace: c0123451 <sync_buffers+199/1cc>
Trace: c01234d1 <fsync_dev+25/2c>
Trace: c0172ac6 <go_sync+72/114>
Trace: c0172bae <do_emergency_sync+46/9c>
Trace: c011138e <panic+c6/c8>
Trace: c0114d8c <do_exit+40/274>
Trace: c018461c <tvecs+70c/5060>
Trace: c0107b45 <error_code+2d/34>
Trace: c0183e89 <stext_lock+1be5/1c6c>
Trace: c0115e75 <do_bottom_half+49/64>
Trace: c0106000 <get_options+0/74>
Code: c010ee1a <schedule+24a/260> 00000000 <_EIP>:
Code: c010ee1a <schedule+24a/260> 0: c7 05 00 00 00 movl $0x0,0x0
Code: c010ee1f <schedule+24f/260> 5: 00 00 00 00 00
Code: c010ee24 <schedule+254/260> a: 8d 65 f0 leal 0xfffffff0(%ebp),%esp
Code: c010ee27 <schedule+257/260> d: 5b popl %ebx
Code: c010ee28 <schedule+258/260> e: 5e popl %esi
Code: c010ee29 <schedule+259/260> f: 5f popl %edi
Code: c010ee2a <schedule+25a/260> 10: 89 ec movl %ebp,%esp
Code: c010ee2c <schedule+25c/260> 12: 5d popl %ebp
Code: c010ee2d <schedule+25d/260> 13: c3 ret

Aiee, killing interrupt handler.
Kernel panic: Attempted to kill the idle task!
In swapper task - not syncing.

I'm more than happy to try things - a broken zip is alot cheaper than a
broken SCSI disk :-)
----------------------------------

Cheers

Adrian

email: adrian.bridgett@zetnet.co.uk, http://www.poboxes.com/adrian.bridgett
Windows NT - Unix in beta-testing. PGP key available on public key servers
Avoid tiresome goat sacrifices -=- use Debian Linux http://www.debian.org

-- To unsubscribe, send mail to: linux-parport-request@torque.net --
-- with the single word "unsubscribe" in the body of the message. --



This archive was generated by hypermail 2.0b3 on Wed 03 Mar 1999 - 14:58:40 EST