On 2/1/2011 6:22 PM, Jeremy Chadwick wrote:
On Tue, Feb 01, 2011 at 05:34:18PM -0500, Colin Legendre wrote:
Hey All,
I'm having an odd issue, and the only thing I can imagine is that
there has been a major change between 8.1 and 8.2.
Using the 8.1 kernel everything is dandy. But when I try to use a
newly compiled kernel from 8.2(GENERIC) I have no luck. Root will
not mount.
Here are relevant kernel messages under 8.1...
FreeBSD 8.1-RELEASE-p2 #2: Mon Jan 31 19:25:14 EST 2011
atapci2:<Intel ICH7 SATA300 controller> port
0x30d8-0x30df,0x30cc-0x30cf,0x30d0-0x30d7,0x30c8-0x30cb,0x3060-0x307f
mem 0xc0000400-0xc00007ff irq 19 at device 31.2 on pci0
atapci2: [ITHREAD]
atapci2: AHCI called from vendor specific driver
atapci2: AHCI v1.10 controller with 4 3Gbps ports, PM not supported
ata4:<ATA channel 0> on atapci2
ata4: [ITHREAD]
ata5:<ATA channel 2> on atapci2
ata5: [ITHREAD]
ad8: 286168MB<Seagate ST3300622AS 3.AAH> at ata4-master UDMA100 SATA 3Gb/s
ad10: 286168MB<Seagate ST3300622AS 3.AAH> at ata5-master UDMA100 SATA 3Gb/s
ar0: 286168MB<Intel MatrixRAID RAID1> status: READY
ar0: disk0 READY (master) using ad8 at ata4-master
ar0: disk1 READY (mirror) using ad10 at ata5-master
GEOM: ad8s1: geometry does not match label (255h,63s != 16h,63s).
GEOM: ad10s1: geometry does not match label (255h,63s != 16h,63s).
GEOM: ufsid/4bb50de139c19cf4: geometry does not match label
(255h,63s != 16h,63s).
Trying to mount root from ufs:/dev/ar0s1a
WARNING: ufsid/47f409368a08243c expected rawoffset 0, found 63
WARNING: ufsid/4bb50de139c19cf4 expected rawoffset 0, found 63
WARNING: ar0s1a expected rawoffset 0, found 63
WARNING: ad10s1a expected rawoffset 0, found 63
WARNING: ad8s1a expected rawoffset 0, found 63
WARNING: ar0s1 expected rawoffset 0, found 63
WARNING: ad10s1 expected rawoffset 0, found 63
WARNING: ad8s1 expected rawoffset 0, found 63
GEOM: ufsid/4bb50de139c19cf4c: geometry does not match label
(255h,63s != 16h,63s).
GEOM: ad10s1a: geometry does not match label (255h,63s != 16h,63s).
GEOM: ad10s1c: geometry does not match label (255h,63s != 16h,63s).
GEOM: ad8s1a: geometry does not match label (255h,63s != 16h,63s).
GEOM: ad8s1c: geometry does not match label (255h,63s != 16h,63s).
Under 8.2 I don't see...
--->atapci2: AHCI called from vendor specific driver
--->atapci2: AHCI v1.10 controller with 4 3Gbps ports, PM not supported
at all, I don't see the drives, nothing It drops to the
'mountroot' prompt and when I do ? the only drive I see is the cd
drive.
If I boot back with to 'kernel.old' which is 8.1 Release I have no issues.
Any ideas?
Get rid of Intel MatrixRAID entirely, use gmirror instead. FreeBSD's
support for MatrixRAID at this time is sub-par. See Wikipedia's entry
on it, with regards to FreeBSD:
http://en.wikipedia.org/wiki/Intel_Rapid_Storage_Technology
As for the geometry mismatches you see, these are due to changes in
GEOM. The easiest way is to simply re-create the partitions (not newfs,
I'm talking about fdisk/gpart) under a 8.2 kernel. This sounds drastic,
but it's what I recommend. Others may have other recommendations.
As for the AHCI messages, the AHCI capabilities have changed a bit in
FreeBSD in recent days. There are two AHCI modules now available for
Intel ICHxx or ESBxx cards: ahci.ko and ataahci.ko.
ahci.ko does AHCI->CAM translation, which also gets you NCQ capability
as well as other things. Your disks will show up as /dev/adaX (read
closely). ataahci.ko is the "classic" AHCI you're used to.
I strongly advocate use of ahci.ko. You can load this via
/boot/loader.conf and it will take precedence over ataahci:
ahci_load="yes"
So, I would say if your disks don't show up when you build 8.2, then
your kernel configuration is incorrect, or you have some brokenness in
/boot/loader.conf. There are other possibilities as well, for example
I'd be curious to know how you went about upgrading from an 8.1-RELEASE
tag to 8.2-PRERELEASE; this implies you went from tag RELENG_8_1 to
RELENG_8. When you installed 8.1-RELEASE, did you choose to install
src? If so, did you "adopt" your source tree? The below FAQ for cvsup
also applies to csup:
http://www.cvsup.org/faq.html#caniadopt
I would recommend you start clean, and make a backup of your kernel
configuration file first of course:
rm -fr /usr/obj/*
rm -fr /usr/src
rm -fr /usr/sup (if you were using cvsup)
rm -fr /var/db/sup/src-*
csup -h some.sup.server -L2 /usr/share/examples/cvsup/stable-supfile
<rebuild world/kernel here, per instructions in src/Makefile>
I will eventually move away from Matrix Raid, but right now I just want
to upgrade safely to stable. I was running 7.0 Release. I upgraded
using CVSUP/makebuildworld/makebuildkernel etc... to 7 Stable.
Everything was fine. Then did same to 8.0 Release. Everything was
fine. Then to 8.1 Release. Everything was fine. then to 8 Stable.
And then things broke. They only way I can boot is by doing a 'boot
kernel.old' which boots the 8.1 Release kernel.
_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"