Date: Fri, 1 Nov 2002 14:40:03 -0800 (PST) From: Kent Palmkvist <kentp@isy.liu.se> To: freebsd-bugs@FreeBSD.org Subject: Re: i386/43222: setrootbyname panic in 4.6 Message-ID: <200211012240.gA1Me3CO070229@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR i386/43222; it has been noted by GNATS. From: Kent Palmkvist <kentp@isy.liu.se> To: freebsd-gnats-submit@FreeBSD.org, rrice@molecomputers.com Cc: Subject: Re: i386/43222: setrootbyname panic in 4.6 Date: Fri, 01 Nov 2002 23:32:31 +0100 Found a similar problem using a Intel Plato board (90 MHz Pentium board). The problem is caused by a detection problem of the RZ100? chip. There are two places that checks for this chip: /sys/dev/ata/ata-pci.c driver called atapci (detects and tries to use the chip). /sys/pci/pcisupport.c driver called ign (dummy routine to make sure the chip is ignored). In the installation floppy kernel does the ign driver find the chip first. The primary channel is then detected later as standard ata channels on the isa-buss. In the installed GENERIC kernel does the atapci driver find the chip first. The driver tries to attach the ata2 channel to the atapci0 controller, but fails. The net result of these differences are that the user can boot the install floppies, do a complete installation, but when booting from the newly installed harddisk, the kernel panics. Early in the display (taken from a boot -v) when booting from the harddisk: atapci0: <RZ 100? ATA controller !WARNING! buggy chip data loss possible> port 0x3f4-0x3f7,0x1f0-0x1f7 at device 1.0 on pci0 atapci0: Busmastering DMA not supported atapci0: Busmastering DMA disabled ata2: iobase=0x01f0 altiobase=0x03f6 bmaddr=0x0000 ata2: mask=03 ostat0=50 ostat2=00 ata2-master: ATAPI 00 00 ata2-slave: ATAPI 00 00 ata2: mask=03 stat0=50 stat1=00 ata2-master: ATA 01 a5 ata2: devices=01 ata2: at 0x1f0 on atapci0 ata2: unable to allocate interrupt device_probe_and_attach: ata2 attach returned 6 and at the end of the kernel boot: Mounting root from ufs:/dev/ad0s1a Root mount failed: 6 Manual root filesystem specification: <fstype>:<device> Mount <device> using filesystem <fstype> eg. ufs:/dev/da0s1a ? List valid disk boot devices <empty line> Abort manual input mountroot> A quick and dirty solution to get the system to boot from the harddisk (tested with 4.7-RELEASE) is to copy the kernel from the install floppies. The following steps given below does this (got some problems with ad0s1a not defined in the fixit /dev): Boot fixit CD mv /dev /dev.old && ln -s /dist/dev /dev mkdir /mnt/hd mount /dev/ad0s1a /mnt/hd mkdir /mnt/floppy mount /dev/fd0 /mnt/floppy cp /mnt/floppy/kernel.gz /mnt/hd/ rm /mnt/hd/kernel gunzip /mnt/hd/kernel.gz sync reboot A more permanent solution is to remove the recognition of the chip in /sys/dev/ata/ata-pci.c. The following diff removes the RZ chip recognition: *** /usr/src/sys/dev/ata/ata-pci.c Fri Nov 1 22:52:35 2002 --- /usr/src/sys/dev/ata/ata-pci.c.orig Fri Nov 1 20:28:15 2002 *************** *** 321,329 **** /* unsupported but known chipsets, generic DMA only */ case 0x10001042: case 0x10011042: ! /* return "RZ 100? ATA controller !WARNING! buggy chip data loss possible"; */ ! return NULL; ! case 0x06401095: return "CMD 640 ATA controller !WARNING! buggy chip data loss possible"; --- 321,328 ---- /* unsupported but known chipsets, generic DMA only */ case 0x10001042: case 0x10011042: ! return "RZ 100? ATA controller !WARNING! buggy chip data loss possible"; ! case 0x06401095: return "CMD 640 ATA controller !WARNING! buggy chip data loss possible"; IMPORTANT NOTE: The RZ100? chips have serious bugs. Beware of the problems. For more information see: http://mindprod.com/eideflaw.html best regards /Kent Kent Palmkvist Electronics Systems Department of Electrical Engineering Linkoping University S-581 83 Linkoping Sweden Email: kentp@isy.liu.se Phone: +46 13 28 13 47 Fax: +46 13 13 92 82 www: http://www.es.isy.liu.se/staff/kentp To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200211012240.gA1Me3CO070229>