All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Snitzer <snitzer@redhat.com>
To: Eric Sandeen <sandeen@redhat.com>
Cc: Jens Axboe <jaxboe@fusionio.com>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	"James.Bottomley@hansenpartnership.com"
	<James.Bottomley@hansenpartnership.com>,
	"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	"linux-ext4@vger.kernel.org" <linux-ext4@vger.kernel.org>
Subject: Re: I/O topology fixes for big physical block size
Date: Tue, 28 Sep 2010 10:15:45 -0400	[thread overview]
Message-ID: <20100928141545.GA21587@redhat.com> (raw)
In-Reply-To: <4CA17B13.7080801@redhat.com>

On Tue, Sep 28 2010 at  1:20am -0400,
Eric Sandeen <sandeen@redhat.com> wrote:

> Jens Axboe wrote:
> > On 2010-09-28 08:15, Mike Snitzer wrote:
> >> On Mon, Sep 27 2010 at  6:36pm -0400,
> >> Martin K. Petersen <martin.petersen@oracle.com> wrote:
> >>
> >>>>>>>> "Jens" == Jens Axboe <jaxboe@fusionio.com> writes:
> >>> Jens> Does mkfs do the right thing?
> >>>
> >>> Depends on which mkfs it is. Mike has tested things and can chip in
> >>> here...
> >> I haven't test all mkfs.* but...
> >>
> >> mkfs.xfs just works with 1M physical_block_size.
> >>
> >> mkfs.ext4 won't by default but -F "fixes" that:
> >>
> >> # mkfs.ext4 -b 4096 -F /dev/mapper/20017380023360006
> >> mke2fs 1.41.12 (17-May-2010)
> >> Warning: specified blocksize 4096 is less than device physical sectorsize 1048576, forced to continue
> > 
> > OK, so that's not exactly doing the right thing, but at least you can
> > work around it with a parameter. So I'd say that is good enough.
> 
> Which part of it is the wrong thing...?
> 
> Today mkfs.ext4 refuses to create an fs blocksize which is smaller than logical
> or physical by default, because one is suboptimal and the other is impossible.
> -F (force) can override the suboptimal fs blocksize < logical blocksize case...

Actually, -F allows one to override fs blocksize < physical_block_size.

In this instance we have the following:
# cat /sys/block/dm-2/queue/physical_block_size 
1048576
# cat /sys/block/dm-2/queue/logical_block_size 
512
 
> Should we change something?

Unclear.  I could see maybe automatically capping the fs block size at
4096 if physical_block_size is larger and is a multiple of 4096?

> >> I'll check fdisk and parted tomorrow (I know lvm2 doesn't look at
> >> physical_block_size).

Both fdisk and parted look good (partitions are physical_block_size
aligned, will warn if you attempt to stray from that alignment).  I'll
spare you detials of the creation steps...

Results of fdisk:
-----------------

# fdisk /dev/sdb
...
The device presents a logical sector size that is smaller than
the physical sector size. Aligning to a physical sector (or optimal
I/O) size boundary is recommended, or performance may be impacted.
...

# fdisk -l -u /dev/sdb

Disk /dev/sdb: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders, total 33554432 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 1048576 bytes
I/O size (minimum/optimal): 1048576 bytes / 1048576 bytes
Disk identifier: 0x0009bf46

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    16775167     8386560   83  Linux


Results of parted:
------------------
Also looks good, doesn't care about physical_block_size.  Is more
concerned with {minimum,optimal}_io_size.

(parted) unit MiB
(parted) p
Model: XXXXXXXXXXXXX
Disk /dev/sdb: 16384MiB
Sector size (logical/physical): 512B/1048576B
Partition Table: msdos

Number  Start    End      Size     Type     File system  Flags
 1      1.00MiB  8191MiB  8190MiB  primary

  reply	other threads:[~2010-09-28 14:15 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-27 16:41 I/O topology fixes for big physical block size Martin K. Petersen
2010-09-27 16:41 ` [PATCH 1/2] block: Ensure physical block size is unsigned int Martin K. Petersen
2010-09-27 17:40   ` Mike Snitzer
2010-10-08  5:15     ` Martin K. Petersen
2010-10-13 19:12       ` Mike Snitzer
2010-10-13 19:15         ` Jens Axboe
2010-09-27 16:41 ` [PATCH 2/2] sd: Fix overflow with big physical blocks Martin K. Petersen
2010-09-27 17:42   ` Mike Snitzer
2010-09-27 18:13   ` [PATCH] block: eliminate potential for infinite loop in blkdev_issue_discard Mike Snitzer
2010-10-14 21:37     ` Mike Snitzer
2010-10-15 11:05       ` Jens Axboe
2010-09-27 16:54 ` I/O topology fixes for big physical block size Jens Axboe
2010-09-27 17:20   ` Martin K. Petersen
2010-09-27 22:21     ` Jens Axboe
2010-09-27 22:36       ` Martin K. Petersen
2010-09-27 23:15         ` Mike Snitzer
2010-09-28  4:30           ` Jens Axboe
2010-09-28  5:20             ` Eric Sandeen
2010-09-28 14:15               ` Mike Snitzer [this message]
2010-09-28 20:57                 ` Ted Ts'o
2010-09-28 21:24                   ` Martin K. Petersen
2010-09-28 21:24                     ` Martin K. Petersen
2010-09-28 21:36                     ` Eric Sandeen
2010-09-30 16:30                       ` Ted Ts'o
2010-09-30 17:07                         ` Eric Sandeen
2010-09-30 17:07                         ` Eric Sandeen
2010-09-30 17:33                           ` Mike Snitzer
2010-10-01 14:24                             ` Ted Ts'o
2010-10-01 22:19                               ` Martin K. Petersen
2010-10-01 22:19                                 ` Martin K. Petersen
2010-10-02  2:31                                 ` Ted Ts'o
2010-10-02  3:03                                   ` Daniel Taylor
2010-10-04 19:49                                   ` Martin K. Petersen
2010-10-04 19:49                                     ` Martin K. Petersen
2010-09-27 17:23   ` Mike Snitzer
2010-09-27 21:58     ` James Bottomley
2010-09-27 22:03       ` Jens Axboe
2010-09-27 22:14         ` Martin K. Petersen
2010-09-27 22:24           ` Jens Axboe
2010-09-28 18:48             ` Martin K. Petersen
2010-09-28 18:54               ` Mike Snitzer

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=20100928141545.GA21587@redhat.com \
    --to=snitzer@redhat.com \
    --cc=James.Bottomley@hansenpartnership.com \
    --cc=jaxboe@fusionio.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=sandeen@redhat.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.