panic on 4.x using star to /dev/nsa0

David Magda dmagda at ee.ryerson.ca
Fri Apr 9 18:12:26 PDT 2004


Hello,

I've experienced a panic when I was trying to backup /home using star 
(archivers/star) to sa0:

sa0 at ahc0 bus 0 target 6 lun 0
sa0: <HP C1557A U812> Removable Sequential Access SCSI-2 device
sa0: 10.000MB/s transfers (10.000MHz, offset 15)

ahc0 is the following:

ahc0: <Adaptec 2940 SCSI adapter> port 0xd400-0xd4ff mem 
0xef800000-0xef800fff irq 9 at device 10.0 on pci2

/home is on a Seagate SCSI disk (da1) sitting on a Tekram controller 
(sym0). The system is a 4.9-STABLE box:

FreeBSD number6.magda.ca 4.9-STABLE FreeBSD 4.9-STABLE #2: Tue Mar  2 
15:58:20 EST 2004     
dave<at>number6.magda.ca:/usr/obj/usr/src/sys/MYKERNELE  i386

I've setup the system to dump core in these situations so running 
gdb(1) gives the following results:

(no debugging symbols found)...
IdlePTD at physical address 0x005af000
initial pcb at physical address 0x0030a0e0
panicstr: Waiting List traversal

panic messages:
---
panic: Waiting List traversal

[...]
7 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 
13 12 11 10 9 8 7 6 5 4 3 2 1 0 <<<<<<<<<<<<< Dump Card State Ends 
 >>>>>>>>>>>>>>>>>>
ahc0: ahc_intr - referenced scb not valid during SELTO scb(0, 0)
 >>>>>>>>>>>>>>>>>> Dump Card State Begins <<<<<<<<<<<<<<<<<
ahc0: Dumping Card State while idle, at SEQADDR 0x18
Card was paused
ACCUM = 0x8, SINDEX = 0x20, DINDEX = 0xc0, ARG_2 = 0x2
HCNT = 0x0 SCBPTR = 0x0
SCSISIGI[0x0] ERROR[0x0] SCSIBUSL[0x0] LASTPHASE[0x1]
SCSISEQ[0x0] SBLKCTL[0x0] SCSIRATE[0x0] SEQCTL[0x10]
SEQ_FLAGS[0xc0] SSTAT0[0x5] SSTAT1[0x2] SSTAT2[0x0]
SSTAT3[0x0] SIMODE0[0x0] SIMODE1[0xa4] SXFRCTL0[0x80]
DFCNTRL[0x0] DFSTATUS[0x8]
STACK: 0x0 0x160 0x190 0x17
SCB count = 10
Kernel NEXTQSCB = 7
Card NEXTQSCB = 31
QINFIFO entries:
Waiting Queue entries: 0:0
Disconnected Queue entries:
QOUTFIFO entries:
Sequencer Free SCB List: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Sequencer SCB Info:
   0 SCB_CONTROL[0x0] SCB_SCSIID[0x10] SCB_LUN[0x0] SCB_TAG[0x0]
   1 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
   2 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
   3 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
   4 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
   5 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
   6 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
   7 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
   8 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
   9 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
  10 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
  11 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
  12 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
  13 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
  14 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
  15 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
Pending list:
   8 SCB_CONTROL[0x40] SCB_SCSIID[0x67] SCB_LUN[0x0]
Kernel Free SCB list: 9 6 5 4 3 2 1 0
Untagged Q(6): 8

<<<<<<<<<<<<<<<<< Dump Card State Ends >>>>>>>>>>>>>>>>>>
ahc0: ahc_intr - referenced scb not valid during SELTO scb(0, 0)
 >>>>>>>>>>>>>>>>>> Dump Card State Begins <<<<<<<<<<<<<<<<<
ahc0: Dumping Card State while idle, at SEQADDR 0x18
Card was paused
ACCUM = 0x8, SINDEX = 0x20, DINDEX = 0xc0, ARG_2 = 0x2
HCNT = 0x0 SCBPTR = 0x0
[...]

The above is repeated over and over again. A 'bt' command in the 
debugger gives the following:

(kgdb) bt
#0  0xc01822ce in dumpsys ()
#1  0xc0182098 in boot ()
#2  0xc01824e5 in panic ()
#3  0xc0152c8f in ahc_search_qinfifo ()
#4  0xc0155690 in ahc_recover_commands ()
#5  0xc01573cf in ahc_recovery_thread ()

This has only happened once so far so I haven't filed a PR in case it's 
not reproducible. Since I have the kernel dump I can give more 
information if needed if someone would be willing to tell me what to 
type into the debugger's CLI. Don't have much experience in this since 
I haven't had many panics under FreeBSD. :> (Is there a document 
describing this?  A kind of "what happens if the system panics" 
FAQ/HOWTO.)

I'll try reproducing it tomorrow (Saturday).

P.S. Please CC me as I'm not currently subscribed to freebsd-stable at .



More information about the freebsd-stable mailing list