Re: ATA RAID -- Promise SATA150 vanished /dev/ar0

From: Søren Schmidt <sos_at_DeepCore.dk>
Date: Sat, 30 Apr 2005 20:16:40 +0200
Jon Door wrote:

> Using the BIOS. The Fasttrak reports the array as  functional during 
> boot, and returning to a 5.4 kernel allows me to mount the volume 
> without incident.
> Thanks!
> 
> It looks like its not getting any metadata persiod, cut from the dmesg:
> 
> ata0-master: pio=PIO4 wdma=WDMA2 udma=UDMA133 cable=40 wire
> ad4: 114440MB <Maxtor 6Y120M0 YAR51EW0> at ata2-master SATA150
> ad4: 234375000 sectors [232514C/16H/63S] 16 sectors/interrupt 1 depth queue
> ad4: Promise check1 failed
> ad4: Adaptec check1 failed
> ad4: LSI (v3) check1 failed
> ad4: LSI (v2) check1 failed
> ad4: FreeBSD check1 failed
> ata1-master: pio=PIO4 wdma=WDMA2 udma=UDMA133 cable=40 wire
> ad6: 114440MB <Maxtor 6Y120M0 YAR51EW0> at ata3-master SATA150
> ad6: 234375000 sectors [232514C/16H/63S] 16 sectors/interrupt 1 depth queue
> ad6: Promise check1 failed
> ad6: Adaptec check1 failed
> ad6: LSI (v3) check1 failed
> ad6: LSI (v2) check1 failed
> ad6: FreeBSD check1 failed

OK, I think we are looking at the wrong place for the metadata, I think 
I messed up and made the calculation too simple :)

Try this patch:

-- 

-Søren


Index: ata-raid.h
===================================================================
RCS file: /home/ncvs/src/sys/dev/ata/ata-raid.h,v
retrieving revision 1.32
diff -u -r1.32 ata-raid.h
--- ata-raid.h	30 Apr 2005 16:22:07 -0000	1.32
+++ ata-raid.h	30 Apr 2005 18:16:22 -0000
_at__at_ -521,8 +521,13 _at__at_
 
 
 /* Promise FastTrak Metadata */
+#if 0
 #define PR_LBA(dev) \
 	(((struct ad_softc *)device_get_ivars(dev))->total_secs - 63)
+#else
+#define PR_LBA(dev) \
+        (((((struct ad_softc *)device_get_ivars(dev))->total_secs / (((struct ad_softc *)device_get_ivars(dev))->heads * ((struct ad_softc *)device_get_ivars(dev))->sectors)) * ((struct ad_softc *)device_get_ivars(dev))->heads * ((struct ad_softc *)device_get_ivars(dev))->sectors) - ((struct ad_softc *)device_get_ivars(dev))->sectors)
+#endif
 
 struct promise_raid_conf {
     char                promise_id[24];
Received on Sat Apr 30 2005 - 16:18:41 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:33 UTC