From: Eric Sandeen <sandeen@sandeen.net>
To: Dave Chinner <david@fromorbit.com>
Cc: Carlos Maiolino <cmaiolino@redhat.com>, xfs@oss.sgi.com
Subject: Re: [PATCH] libxfs: Get Physical Sector Size instead of Logical Sector size
Date: Sun, 27 Nov 2011 17:05:23 -0600 [thread overview]
Message-ID: <4ED2C233.8010104@sandeen.net> (raw)
In-Reply-To: <20111127010643.GU2386@dastard>
On 11/26/11 7:06 PM, Dave Chinner wrote:
> On Thu, Nov 24, 2011 at 05:50:42PM -0200, Carlos Maiolino wrote:
>> On Thu, Nov 24, 2011 at 05:20:51PM -0200, Carlos Maiolino wrote:
>>> xfsprogs (mainly mkfs) is using the logical sector size of a volume to initialize
>>> the filesystem, which, even in devices using Advanced Format, it can get a 512
>>> bytes sector size if it is set as the logical sector size.
>>> This patch changes the ioctl to get the physical sector size, independent of the
>>> logical size.
>>>
>>
>> Just as information, this patch proposal does not change the behaviour of mkfs in case the
>> user is using libblkid, which in case, mkfs will take advantage of libblkid to retrieve disk
>> topology and information.
>> I'm not sure if libblkid is the best way to retrieve the device sector's size here, since
>> this does not provide a way to retrive the physical sector size, only the logical size, but
>> I can be very wrong.
>
> If libblkid exports the PBS (physical block size) as exposed in
> /sys/block/<dev>/queue/physical_block_size, then we should be able
> to get it.
>
> However, the issue in my mind is not whether it is supported, but
> what is the effect of making this change? The filesystem relies on
> the fact that the minimum guaranteed unit of atomic IO is a sector,
> not the PBS of the underlying disk. What guarantees do we have when
> do a PBS sized IO is doesn't get torn into sector sized IOs by the
> drive and hence only partitially completed on failure? Indeed, if
> the filesystem is sector unaligned, it is -guaranteed- to have PBS
> sized IOs torn apart by the hardware....
>
> i.e. do we have any guarantee at all that a PBS sized IO will either
> wholly complete or wholly fail when PBS != sector size? And if not,
> why is this a change we should make given it appears to me to
> violate a fundamental assumption of the filesystem design?
I had the expectation that physical block size WAS the fundamental/atomic
IO size for the disk, and anything smaller required read/modify/write.
So I made this suggestion (and I think hch concurred) so that we weren't
doing log IOs which required RMW & translation.
i.e. for a 4k physical / 512 logical disk - wouldn't we want to choose
4k sectors?
Ok, if we have mismanaged the alignment and aligned to logical, not
physical, then I guess there would be an issue... but at that point
we've already messed up (though not catastrophically I guess)...
-Eric
> Cheers,
>
> Dave.
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2011-11-27 23:05 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-24 19:20 [PATCH] libxfs: Get Physical Sector Size instead of Logical Sector size Carlos Maiolino
2011-11-24 19:50 ` Carlos Maiolino
2011-11-27 1:06 ` Dave Chinner
2011-11-27 23:05 ` Eric Sandeen [this message]
2011-11-27 23:50 ` Dave Chinner
2011-11-28 7:56 ` Christoph Hellwig
2011-11-28 16:08 ` Martin K. Petersen
2011-11-28 16:11 ` Eric Sandeen
2011-11-29 17:15 ` Martin K. Petersen
2011-11-29 17:38 ` Eric Sandeen
2011-11-30 0:19 ` Dave Chinner
2011-11-30 15:03 ` Carlos Maiolino
2011-11-28 16:56 ` Greg Freemyer
2011-11-28 7:54 ` Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4ED2C233.8010104@sandeen.net \
--to=sandeen@sandeen.net \
--cc=cmaiolino@redhat.com \
--cc=david@fromorbit.com \
--cc=xfs@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.