On 10/24/14 5:08 PM, Stan Hoeppner wrote:
> On 10/24/2014 03:14 PM, Eric Sandeen wrote:
>>> Any ideas how to verify what's going on here and fix it?
>> # blockdev --getiomin --getioopt /dev/s2d_a1l003
>> The first number, minimum io size, is what is used for sunit
>> The 2nd number, optimal io size, is what is used for swidth
>> Where dm got the geometry, I'm not sure - you'd have to look into
>> how you set up the dm device, and what its defaults are I think.
> Looks like they're being passed up the stack:
> # blockdev --getiomin --getioopt /dev/dm-0
> # multipath -ll
> 3600c0ff0003630917954075401000000 dm-0 Tek,DH6554
> size=44T features='0' hwhandler='0' wp=rw
> |-+- policy='round-robin 0' prio=50 status=active
> | `- 9:0:0:3 sdj 8:144 active ready running
> `-+- policy='round-robin 0' prio=10 status=enabled
> `- 1:0:0:3 sdf 8:80 active ready running
> /sys/block/sdj/queue# cat minimum_io_size
> /sys/block/sdj/queue# cat optimal_io_size
so supposedly a 512 byte stripe unit, and a 1MB width. Hrmph.
> root@Anguish-ssu-1:/sys/block/sdf/queue# cat minimum_io_size
> root@Anguish-ssu-1:/sys/block/sdf/queue# cat optimal_io_size
> So it's the presence of a value in optimal_io_size that causes the
> problem here. My single disk workstation has min but not optimal, as I
> assume most do. And I don't get this msg when formatting it.
> It's interesting that mkfs.xfs would use these values given they are
> static firmware values in most controllers. Thus they don't change when
> one uses different geometry for different arrays/LUNs...
Well, they should change with geometry, but many hardware raids
don't advertise anything meaningful.
There are some heuristics in mkfs to ignore things that just
obviously don't make sense. Perhaps we should ignore anything
with a sector-sized "stripe unit".
(I'll also ask the dm folks why they set it this way).
Dave, any thoughts?
> So it seems I can safely ignore this mkfs msg.
Probably so, but it'd be nice to get rid of it if we could, either
by ignoring sector-sized "stripe units" or changing what dm reports;