atom feed3 messages in org.freebsd.freebsd-mobilead driver fails on 6.2, OK on 4.11 wi...
FromSent OnAttachments
Julian StaceyApr 17, 2007 5:13 pm 
Ian SmithApr 18, 2007 6:02 am 
Julian H. StaceyApr 19, 2007 3:17 pm 
Subject:ad driver fails on 6.2, OK on 4.11 with Dell Latitude XPi P133ST
From:Julian H. Stacey (jh@tower.berklix.net)
Date:Apr 19, 2007 3:17:24 pm
List:org.freebsd.freebsd-mobile

Ian Smith wrote:

I have this fdisk layout F1 The data for partition 1 is: sysid 165,(FreeBSD/NetBSD/386BSD) 4.11 start 63, size 1228689 (599 Meg), flag 80 (active) beg: cyl 0/ head 1/ sector 1; end: cyl 1023/ head 15/ sector 63 F2 The data for partition 2 is: sysid 165,(FreeBSD/NetBSD/386BSD) 6.2 start 1228752, size 1228689 (599 Meg), flag 80 (active) beg: cyl 195/ head 0/ sector 1; end: cyl 389/ head 14/ sector 63 F3 The data for partition 3 is: sysid 165,(FreeBSD/NetBSD/386BSD) /usr1 start 2457441, size 5550111 (2710 Meg), flag 80 (active) beg: cyl 389/ head 15/ sector 1; end: cyl 775/ head 15/ sector 63

Firstly, it looks weird having flag 80 (active) on more than one slice; I'm not sure what the MBR boot manager would make of that (as it usually offers the currently marked active slice as default).

Thanks ! Hadn't spotted that. Looks bad. Worse as now I can't repeat this, now I have (again from 4.11)

sysid 165,(FreeBSD/NetBSD/386BSD) start 63, size 1228689 (599 Meg), flag 80 (active) beg: cyl 0/ head 1/ sector 1; end: cyl 1023/ head 15/ sector 63 The data for partition 2 is: sysid 165,(FreeBSD/NetBSD/386BSD) start 1228752, size 1228689 (599 Meg), flag 0 beg: cyl 195/ head 0/ sector 1; end: cyl 389/ head 14/ sector 63 The data for partition 3 is: sysid 165,(FreeBSD/NetBSD/386BSD) start 2457441, size 5550111 (2710 Meg), flag 0 beg: cyl 389/ head 15/ sector 1; end: cyl 775/ head 15/ sector 63 The data for partition 4 is: <UNUSED>

Also the break between slices 2 and 3 looks possibly unusual, F3 not starting on a (CHS) head 0 sector 1; this might be ok but it might explain 6.2 install fdisk wanting to start your slice 3 a bit later on.

Yes. Not too worried about F3 though, not bootable, just space.

I NFS'd a 6.2 on, but on reboot, F2 just beeped; I suspected a corrupt MBR, so to test, on 4.11 did : cd /usr/src; make install dd if=/dev/ad0c of=/dev/ad1c

Is ad1 a separate drive you haven't mentioned? and ad0c doesn't make sense to me anyway (ad0s1c maybe). What were you trying to do here?

Sorry, my typo. I meant dd if=/dev/ad0s0c of=/dev/ad0s1c

disklabel -B /dev/ad0s2 reboot

So you installed 4.11 bootstrap code on your 6.2 slice?

Yes. I was NFS'd. Laptop only with 4.11 bootable from hard disc. OK could have tried floppy, but though that was dead (not so). Point taken though, if changes between 4 & 6 ...

F2 just beeped again. (same beep as for an invalid key)

Mmm. Sounds like you want a new MBR with the right data, and I'd suggest using 6.2 to fix that, not 4.11 .. see below.

Yup.

Restored F2 back to 6.2 using NFS + AMD from another 6.2-RELEASE box & setenv DESTDIR /host/test/a grep "CFLAGS /etc/make.conf # "CFLAGS += -march=i586 cd /usr/src;make clean all install # & install kernel etc F2 still just beeped.

Can't comment on that procedure.

Booted 6.2-RELEASE floppies, 6.2 kernel saw nothing on disc ! Offered ito install on whole disc. I told it to to use same 1228689 for F1 & 1228689 for F2 as above, ( & it came up with 5552064 not 5550111 ) for F3. I accepted & aloc'd F2 with / & var & usr & no swap, & F3 mainly for /usr1 with 300M swap at end). I told it to set normal FreeSBD boot manager etc, then it failed to write with: ad0 timeout READ_DMA timed out

Sure your BIOS hasn't got 'virus protection' MBR writes prohibited?

No, but did discover Replicator SCSI & Replicator Network & turned both off.

Reboot ... No sign 6.2 has ever written disc. F2 6.2 is intact with data I'd expected wiped if 6.2 boot from floppy + newfs had succeeded. Is 6.2 ad driver too ambitious during install ? Needs more conservative sysctls to avoid failures to upgrade/ install ?

F1 4.11 is intact so I can easily run tests anyone might suggest. I ran dd if=/dev/ad0 of=/dev/null to see if any block errors. - None reported. 8007552+0 records 4099866624 bytes (1633191 bytes/sec)

That's some good news :)

Yup.

About the only other thing I can think of is somehow within the floppy install trying to add the equivalent of: /boot/loader.conf hw.ata.ata_dma="0" hw.ata.wc="0" Though I dont believe that will solve the F2 beep.

I tend to doubt that this is really a dma (or for that matter, ata) problem; it might be spurious to the problem of having a crook MBR or your 6.2 boot blocks mangled.

If it were me, I think I'd use 6.2 sysinstall to a) preserve your 4.11 slice, of course; b) delete slices 2 and 3 completely; then c) allocate slice 2 afresh (600MB is a bit teensy for 6.2, I'd have thought, and it might be safer in this present context to put your swap on ad0s2 also) and partition/label (for now) just slice 2, then install 6.2 minimally.

And of course install the standard FreeBSD boot manager from 6.2; that should leave your 4.11 slice alone ok, but properly install 6.2 boot blocks in s2, and a fresh good MBR.

You can easily allocate the remaining space for your third /usr1 slice later, once happily installed .. my maxim with sysinstall is if you just do one thing at a time with it, then it'll probably work out ok :)

Good luck,

Yes, In fact now Ive seen 6.2 can boot on this laptop (not all laptops I've had could boot some 5.x though they could do 4.x)) I'll be even more drastic, & wipe the entire disc & lay down a new MBR from 6.2 boot flops. ( It'll have to wait a week though. )

Thanks ! Julian