[Top] [All Lists]

Bug#661580: mkfs.xfs fails to detect correct sector size

To: Eric Sandeen <sandeen@xxxxxxxxxxx>
Subject: Bug#661580: mkfs.xfs fails to detect correct sector size
From: Goswin von Brederlow <goswin-v-b@xxxxxx>
Date: Thu, 01 Mar 2012 04:53:32 +0100
Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>, 661580@xxxxxxxxxxxxxxx, Goswin von Brederlow <goswin-v-b@xxxxxx>, Debian Bug Tracking System <submit@xxxxxxxxxxxxxxx>, Carlos Maiolino <cmaiolino@xxxxxxxxxx>
Delivered-to: submit@xxxxxxxxxxxxxxx
In-reply-to: <4F4E82E6.3040505@xxxxxxxxxxx> (Eric Sandeen's message of "Wed, 29 Feb 2012 13:56:22 -0600")
References: <20120228074914.31280.78231.reportbug@xxxxxxxxxxxxxxxxx> <20120228091151.GA24717@xxxxxxxxxxxxx> <4F4E82E6.3040505@xxxxxxxxxxx>
Reply-to: Goswin von Brederlow <goswin-v-b@xxxxxx>, 661580@xxxxxxxxxxxxxxx
Resent-cc: XFS Development Team <xfs@xxxxxxxxxxx>
Resent-date: Thu, 01 Mar 2012 04:33:01 +0000
Resent-from: Goswin von Brederlow <goswin-v-b@xxxxxx>
Resent-message-id: <handler.661580.B.13305761474124@xxxxxxxxxxxxxxx>
Resent-sender: Debian BTS <debbugs@xxxxxxxxxxxxxxxxx>
Resent-to: debian-bugs-dist@xxxxxxxxxxxxxxxx
User-agent: Gnus/5.110009 (No Gnus v0.9) XEmacs/21.4.22 (linux, no MULE)
Eric Sandeen <sandeen@xxxxxxxxxxx> writes:

> On 2/28/12 3:11 AM, Christoph Hellwig wrote:
>> Carlos, didn't you plan to look into this issue?
>> Goswin, how do you determin that mkfs is still doing unaligned I/O
>> when forcing the large sevtor size?  Once we set the sector size XFS
>> can't do I/O smaller than it.
> I did think this was supposed to be working already:
>         get_topology(&xi, &ft);
>         if (ft.sectoralign) {
>                 /*
>                  * Older Linux software RAID versions want the sector size
>                  * to match the block size to avoid switching I/O sizes.
>                  * For the legacy libdisk case we thus set the sector size to
>                  * match the block size.  For systems using libblkid we assume
>                  * that the kernel is recent enough to not require this and
>                  * ft.sectoralign will never be set.
>                  */
>                 sectorsize = blocksize;
>         } else if (!ssflag) {
>                 /*
>                  * Unless specified manually on the command line use the
>                  * advertised sector size of the device.
>                  */
>                 sectorsize = ft.sectorsize ? ft.sectorsize : 
>         }
> but it may depend on whether or not it is being built with libblkid support 
> or not...?
> I'll try to test it when I have some time, unless Carlos beats me to it.
> -Eric

I'm asuming libblkid is used, otherwise a sectorsize of 512 would make
no sense.

It might be that NBD advertises the geometry wrong, as in ft.sectorsize
isn't set correctly. That would make that part at least a kernel bug.


<Prev in Thread] Current Thread [Next in Thread>