Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 08 Sep 2004 18:22:12 +0200
From:      Martin Matuska <matuska@firma.zoznam.sk>
To:        freebsd-geom@freebsd.org
Subject:   Partition table offset increment by 63 with geom mirror
Message-ID:  <413F31B4.9080407@firma.zoznam.sk>

next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------000904050608060207060107
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Hello, I have experienced the same problem as stated in:
http://lists.freebsd.org/pipermail/freebsd-current/2003-July/007708.html

System: FreeBSD 5.3-BETA3 i386

Problem description:
When accessing SCSI disks via gmirror, the c partition (and all sub-partitions)
reports an increased offset by 63 (under GEOM).

Additional data:
dmesg:

CPU: Intel(R) Xeon(TM) CPU 2.80GHz (2791.01-MHz 686-class CPU)

ahd0: <Adaptec AIC7902 Ultra320 SCSI adapter> port 0x4000-0x40ff,0x3800-0x38ff mem 0xfe9e0000-0xfe9e1fff irq 50 at device 7.0 on pci4
ahd0: [GIANT-LOCKED]
aic7902: Ultra320 Wide Channel A, SCSI Id=7, PCI-X 67-100Mhz, 512 SCBs
ahd1: <Adaptec AIC7902 Ultra320 SCSI adapter> port 0x3400-0x34ff,0x3000-0x30ff mem 0xfe9f0000-0xfe9f1fff irq 49 at device 7.1 on pci4
ahd1: [GIANT-LOCKED]

da0 at ahd1 bus 0 target 0 lun 0
da0: <SEAGATE ST336607LSUN36G 0307> Fixed Direct Access SCSI-3 device
da0: 320.000MB/s transfers (160.000MHz, offset 63, 16bit), Tagged Queueing Enabled
da0: 34732MB (71132959 512 byte sectors: 255H 63S/T 4427C)
da1 at ahd1 bus 0 target 1 lun 0
da1: <SEAGATE ST336607LSUN36G 0307> Fixed Direct Access SCSI-3 device
da1: 320.000MB/s transfers (160.000MHz, offset 63, 16bit), Tagged Queueing Enabled
da1: 34732MB (71132959 512 byte sectors: 255H 63S/T 4427C)

test# fdisk da0
******* Working on device /dev/da0 *******
parameters extracted from in-core disklabel are:
cylinders=4427 heads=255 sectors/track=63 (16065 blks/cyl)

Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=4427 heads=255 sectors/track=63 (16065 blks/cyl)

Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
    start 63, size 71119692 (34726 Meg), flag 80 (active)
        beg: cyl 0/ head 1/ sector 1;
        end: cyl 1023/ head 254/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>


test# bsdlabel -r /dev/da0s1
# /dev/da0s1:
8 partitions:
#        size   offset    fstype   [fsize bsize bps/cpg]
  c: 71119692        0    unused        0     0         # "raw" part, don't edit

test# gmirror label -v m1 da0
Metadata value stored on da0.
Done.

test# bsdlabel -r /dev/mirror/m1s1
# /dev/mirror/m1s1:
8 partitions:
#        size   offset    fstype   [fsize bsize bps/cpg]
  c: 71119692       63    unused        0     0         # "raw" part, don't edit
partition c: partition extends past end of unit
bsdlabel: partition c doesn't start at 0!
bsdlabel: An incorrect partition c may cause problems for standard system utilities

This happens when mirroring the slice directly, too.

I have the following sources compiled into my kernel:

g_mirror.c: 1.25 (but I tried 1.19 from RELENG_5, too)
g_mirror.h: 1.8
g_mirror_ctl.c: 1.4

--------------000904050608060207060107--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?413F31B4.9080407>