Hi,

Probably more of a feature request than a bug - but there's little info out 
there on how to work around it (or I failed to find it).

System: OpenBSD 5.2 amd64
Pretty much stock.

DIsk: Seagate Backup+ Desktop 4Tbyte

dmesg says this when plugging it in (USB):
--->8---
umass0 at uhub4 port 1 configuration 1 interface 0 "Seagate Backup+ Desk" rev 
2.10/1.00 addr 6
umass0: using SCSI over Bulk-Only
scsibus3 at umass0: 2 targets, initiator 0
sd0 at scsibus3 targ 1 lun 0: <Seagate, Backup+ Desk, 0503> SCSI4 0/direct fixed
sd0: 3815447MB, 4096 bytes/sector, 976754645 sectors
--->8---

Init it with fdisk, disklabel to make an "a" partition spanning the available 
space:
# fdisk -i sd0
Do you wish to write new MBR and partition table? [n] y
Writing MBR at offset 0.
# fdisk sd0
Disk: sd0       geometry: 60800/255/63 [976754645 4096-byte Sectors]
Offset: 0       Signature: 0xAA55
            Starting         Ending         LBA Info:
 #: id      C   H   S -      C   H   S [       start:        size ]
-------------------------------------------------------------------------------
 0: 00      0   0   0 -      0   0   0 [           0:           0 ] unused      
 1: 00      0   0   0 -      0   0   0 [           0:           0 ] unused      
 2: 00      0   0   0 -      0   0   0 [           0:           0 ] unused      
*3: A6      0   1   2 -  60799 254  63 [          64:   976751936 ] OpenBSD  
# disklabel sd0
# /dev/rsd0c:
type: SCSI
disk: SCSI disk
label: Backup+ Desk    
duid: 0000000000000000
flags:
bytes/sector: 4096
sectors/track: 63
tracks/cylinder: 255
sectors/cylinder: 16065
cylinders: 60800
total sectors: 976754645
boundstart: 64
boundend: 976752000
drivedata: 0 

16 partitions:
#                size           offset  fstype [fsize bsize  cpg]
  c:        976754645                0  unused                   
kvasir# a
bash: a: command not found
kvasir# disklabel -E sd0
Label editor (enter '?' for help at any prompt)
> p
OpenBSD area: 64-976752000; size: 976751936; free: 976751936
#                size           offset  fstype [fsize bsize  cpg]
  c:        976754645                0  unused                   
> a
partition: [a] a
offset: [64] 
size: [976751936] 
FS type: [4.2BSD] 
> p
OpenBSD area: 64-976752000; size: 976751936; free: 0
#                size           offset  fstype [fsize bsize  cpg]
  a:        976751936               64  4.2BSD  16384 131072    1 
  c:        976754645                0  unused                   
> w


# disklabel -v sd0
# /dev/rsd0c:
type: SCSI
disk: SCSI disk
label: Backup+ Desk    
duid: 99f3f6850096e833
flags:
bytes/sector: 4096
sectors/track: 63
tracks/cylinder: 255
sectors/cylinder: 16065
cylinders: 60800
total sectors: 976754645
boundstart: 64
boundend: 976752000
drivedata: 0 

16 partitions:
#                size           offset  fstype [fsize bsize  cpg]
  a:        976751936               64  4.2BSD  16384 131072    1 
  c:        976754645                0  unused   

asd then newfs …
All straightforward on other disks, but here so such thing ...

newfs gives: 
# newfs /dev/rsd0a
newfs: block size 131072 is too large, maximum is 65536


Now disklabel has an expert mode where you can reduce the block size, but 
documentation I've seen so far is sparse. And impact of it is unclear for now 
(I'm still testing the disk).

What do I suggest:
- make sure that disklabel selects parameters on its own where newfs is happy 
with, or at least give a warning that it's not going to work out.
- enhance disklabel's man page to point to explanations and/or explain the 
bsize and fsize parameters a little bit. I know, understand and agree with the 
obvious drawbacks to documenting things that should not be changed … but if 
we're going to have issues with what's chosen automatically, we should have 
documentation about what the impact of the change is in order to not make it 
worse.


My workaround so far (mostly untested):
# disklabel -E sd0
Label editor (enter '?' for help at any prompt)
> X
Entering expert mode
> p
OpenBSD area: 64-976752000; size: 976751936; free: 0
#                size           offset  fstype [fsize bsize  cpg]
  a:        976751936               64  4.2BSD  16384 131072    1 
  c:        976754645                0  unused                   
> d
partition to delete: [] a
> a
partition: [a] 
offset: [64] 
size: [976751936] 
FS type: [4.2BSD] 
fragment size: [16384] 
block size: [131072] 65536
Align partition to block size: [y] 
> p
OpenBSD area: 64-976752000; size: 976751936; free: 0
#                size           offset  fstype [fsize bsize  cpg]
  a:        976751936               64  4.2BSD   8192 65536    1 
  c:        976754645                0  unused                   
> w
> q
No label changes.
kvasir# newfs sd0a
/dev/rsd0a: 3815437.2MB in 7814015488 sectors of 4096 bytes
1168 cylinder groups of 3266.88MB, 52270 blocks, 104704 inodes each
super-block backups (for fsck -b #) at:
 256, 6690816, 13381376, 20071936, 26762496, 33453056, 40143616, 46834176,
 53524736, 60215296, 66905856, 73596416, 80286976, 86977536, 93668096,
[rest suppressed for brevity]

newfs's -b option is probably another way around the problem (I didn't try it), 
but that has a drawbacks too (e.g. remembering redoing changing the default 
block size when quickly wiping the disk) 

--
Swa Frantzen

Reply via email to