Date: Thu, 22 May 2003 13:49:38 +0100 (BST) From: Gavin Atkinson <gavin@ury.york.ac.uk> To: current@freebsd.org Cc: gibbs@freebsd.org Subject: GEOM panic on boot when ahd cannot find disk Message-ID: <20030522123034.F54865-100000@ury.york.ac.uk>
next in thread | raw e-mail | index | archive | help
Hi, Freshly burned ISO of 5.1-BETA-20030522-JPSNAP booting off an IDE cd-rom on the single processor version of http://www.supermicro.com/PRODUCT/SUPERServer/SuperServer6012P-8.htm The system fails to detect the drive (a Fujitsu MAP3367NC) attached to an Adaptec AIC7902 controller, and GEOM panics over recursuing on a non-recursive lock. There seems to be three issues here to my untrained eye: - Firstly, why could the ahd driver not find the drive (Linux and Windows 2000 find it no problems), - secondly, why was GEOM called to create the disk when the detection had errored out, - and thirdly, why did GEOM panic? I will only have access to this machine for an hour or so (I was able to boot FreeBSD on it as a favour, and it's getting installed for it's real role as a Windows 2000 server later today) so I may not be able to try patches for a while, if at all. Hand transcribed, so forgive any errors... ahd0: <Adaptec AIC7902 Ultra320 SCSI adapter> ... aic7902: Ultra320 Wide Channel A, SCSI Id=7, PCI 33Mhz or 66Mhz, 512 SCBs ahd1: <Adaptec AIC7902 Ultra320 SCSI adapter> ... aic7902: Ultra320 Wide Channel B, SCSI Id=7, PCI 33Mhz or 66Mhz, 512 SCBs ... Waiting 15 seconds for SCSI devices to settle ses0 at ahd0 bus0 target 6 lun 0 ses0: <SUPER GEM318 0> Fixed Processor SCSI-2 device ses0: 3.300 MB/s transfers ses0: SAF-TE compliant device Copied 32 bytes of sense data offset 12: 0x70 0x0 0x5 0x0 0x0 0x0 0x0 0x28 0x0 0x0 0x0 0x0 0x25 0x0 0x0 0x0 0x0 0x0 0x0 0x25 0x0 0x1 0x7 0x2 0x0 0x0 0x0 0x0 0x0 0x0 0x0 (da0:ahd0:0:0:0): READ CAPACITY CDB: 25 0 0 0 0 0 0 0 0 0 (da0:ahd0:0:0:0): ILLEGAL REQUEST asc:25,0 (da0:ahd0:0:0:0): Logical unit not supported (da0:ahd0:0:0:0): fatal error, failed to attach device (da0:ahd0:0:0:0): lost device (da0:ahd0:0:0:0): removing device entry Lock GEOM topology not exclusively locked @ /usr/src/sys/geom/geom_disk.c:300 Lock GEOM topology not exclusively locked @ /usr/src/sys/geom/geom_subr.c:119 malloc() of "32" with the following non-sleepablelocks held: exclusive sleep mutex GEOM orphanage r = 0 (0xc05ba640) locked @ /usr/src/sys/geom/geom_event.c:210 malloc() of "16" with the following non-sleepablelocks held: exclusive sleep mutex GEOM orphanage r = 0 (0xc05ba640) locked @ /usr/src/sys/geom/geom_event.c:210 malloc() of "128" with the following non-sleepablelocks held: exclusive sleep mutex GEOM orphanage r = 0 (0xc05ba640) locked @ /usr/src/sys/geom/geom_event.c:210 malloc() of "16" with the following non-sleepablelocks held: exclusive sleep mutex GEOM orphanage r = 0 (0xc05ba640) locked @ /usr/src/sys/geom/geom_event.c:210 Lock GEOM topology not exclusively locked @ /usr/src/sys/geom/geom_subr.c:270 malloc() of "32" with the following non-sleepablelocks held: exclusive sleep mutex GEOM orphanage r = 0 (0xc05ba640) locked @ /usr/src/sys/geom/geom_event.c:210 malloc() of "16" with the following non-sleepablelocks held: exclusive sleep mutex GEOM orphanage r = 0 (0xc05ba640) locked @ /usr/src/sys/geom/geom_event.c:210 malloc() of "128" with the following non-sleepablelocks held: exclusive sleep mutex GEOM orphanage r = 0 (0xc05ba640) locked @ /usr/src/sys/geom/geom_event.c:210 malloc() of "128" with the following non-sleepablelocks held: exclusive sleep mutex GEOM orphanage r = 0 (0xc05ba640) locked @ /usr/src/sys/geom/geom_event.c:210 malloc() of "128" with the following non-sleepablelocks held: exclusive sleep mutex GEOM orphanage r = 0 (0xc05ba640) locked @ /usr/src/sys/geom/geom_event.c:210 recursed on non-recursive lock (sleep mutex) GEOM orphanage @ /usr/src/sys/geom/geom_event.c:262 first aquired @ /usr/src/sys/geom/geom_event.c:210 panic: recurse db> trace panic() witness_lock() _mtx_lock_flags() g_post_event_x() g_post_event() g_new_providerf() g_disk_create() g_cancel_event() disk_destroy() dacleanup() camperiphfree() cam_periph_release() cam_periph_unlock() dadone() camisr() ithread_loop() fork_exit() fork_trampoline() db> show locks exclusive sleep mutex GEOM orphanage r = 1 (0xc05ba640) locked @ /usr/src/sys/geom/geom_event.c:210 (giant is also locked) Gavin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030522123034.F54865-100000>