Hello,
disk devices are accessed in units of 'blocks', a block can be any size, however NetBSD makes assumptions in many places that a block is 512 bytes or DEV_BSIZE bytes which makes it impossible to use devices with different block sizes. IMHO there need to be three different ways to specify block offsets and block counts: 1. in units of blocks of the physical device 2. in units of blocks of DEV_BSIZE bytes 3. in bytes and we need to establish what units are used where. One possible path to support devices where physical blocks are not of size DEV_BSIZE would be - device drivers use 1. - wedges use 1. - the dk driver translates between 1. and 2. - the buffer system uses 2. and 3. Filesystems can be pretty agnostic to this as any multiple of DEV_BSIZE will work (but slower if not properly aligned to the physical block size). The necessary changes are rather small. In particular, dkwedge_info needs to be extended to keep track of the physical sector size so that the dk driver can do the transformations. Comments? -- Michael van Elst Internet: mlel...@serpens.de "A potential Snark may lurk in every tree." -- -- Michael van Elst Internet: mlel...@serpens.de "A potential Snark may lurk in every tree."