Re: max_sectors_kb limitations with VDO and dm-thin

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Great, I will do that. Thank you for all your help!

On Wed, Apr 24, 2019 at 6:22 PM Mike Snitzer <snitzer@xxxxxxxxxx> wrote:
On Wed, Apr 24 2019 at  5:27pm -0400,
Mike Snitzer <snitzer@xxxxxxxxxx> wrote:

>
> On Wed, Apr 24 2019 at 10:46am -0400,
> Ryan Norwood <ryan.p.norwood@xxxxxxxxx> wrote:
>
> >    On Wed, Apr 24, 2019 at 9:08 AM Ryan Norwood <[1]ryan.p.norwood@xxxxxxxxx>
> >    wrote:
> >
> >      Thank you for your help.
> >      You are correct, it appears that the problem occurs when there is a RAID
> >      5 or RAID 50 volume beneath VDO.
> >      NAME      KNAME    RA   SIZE ALIGNMENT  MIN-IO  OPT-IO PHY-SEC LOG-SEC
> >      RQ-SIZE SCHED    WSAME
> >      sdh
> >       sdh     128 977.5G         0     512       0     512     512     128
> >      deadline    0B
> >      +-sed6
> >      dm-6    128 977.5G         0     512       0     512     512     128
> >               0B
> >        +-md127
> >       md127 12288   5.7T         0 1048576 6291456     512     512     128
> >               0B
> >          +-vdo_data
> >      dm-17   128   5.7T         0 1048576 6291456     512     512     128
> >               0B
> >            +-vdo
> >       dm-18   128  57.3T         0    4096    4096    4096    4096     128
> >               0B

<snip>

> >      /sys/block/dm-18/queue/max_hw_sectors_kb:4
> >      /sys/block/dm-18/queue/max_sectors_kb:4

These are getting set as a side-effect of MD raid imposing the need for
merge_bvec (in the context of RHEL7.x only, not upstream) otherwise it
goes conservative and forces the IO to be contrained to a single page,
please see:

drivers/md/dm-table.c:dm_set_device_limits() at the end:

        /*
         * Check if merge fn is supported.
         * If not we'll force DM to use PAGE_SIZE or
         * smaller I/O, just to be safe.
         */
        if (dm_queue_merge_is_compulsory(q) && !ti->type->merge)
                blk_limits_max_hw_sectors(limits,
                                          (unsigned int) (PAGE_SIZE >> 9));

With MD raid in the IO stack, dm_queue_merge_is_compulsory() will return
true, so the VDO target not providing ti->type->merge causes this issue.

Please file a BZ at bugzilla.redhat.com against VDO and I'll continue to
work with the VDO developers to get this fixed for you for RHEL7.5, etc.

Thanks,
Mike
--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/dm-devel

[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux