xfs
[Top] [All Lists]

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

To: Christoph Hellwig <hch@xxxxxxxxxxxxx>, 661580@xxxxxxxxxxxxxxx
Subject: Bug#661580: mkfs.xfs fails to detect correct sector size
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Wed, 29 Feb 2012 13:56:22 -0600
Cc: Goswin von Brederlow <goswin-v-b@xxxxxx>, Debian Bug Tracking System <submit@xxxxxxxxxxxxxxx>, Carlos Maiolino <cmaiolino@xxxxxxxxxx>
Delivered-to: submit@xxxxxxxxxxxxxxx
In-reply-to: <20120228091151.GA24717@xxxxxxxxxxxxx>
References: <20120228074914.31280.78231.reportbug@xxxxxxxxxxxxxxxxx> <20120228091151.GA24717@xxxxxxxxxxxxx>
Reply-to: Eric Sandeen <sandeen@xxxxxxxxxxx>, 661580@xxxxxxxxxxxxxxx
Resent-cc: XFS Development Team <xfs@xxxxxxxxxxx>
Resent-date: Wed, 29 Feb 2012 20:24:05 +0000
Resent-from: Eric Sandeen <sandeen@xxxxxxxxxxx>
Resent-message-id: <handler.661580.B.133054691614219@xxxxxxxxxxxxxxx>
Resent-sender: Debian BTS <debbugs@xxxxxxxxxxxxxxxxx>
Resent-to: debian-bugs-dist@xxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:10.0.2) Gecko/20120216 Thunderbird/10.0.2
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 : XFS_MIN_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




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