From: Mike Snitzer <snitzer@redhat.com>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: sandeen@redhat.com, Christoph Hellwig <hch@infradead.org>,
device-mapper development <dm-devel@redhat.com>,
DarkNovaNick@gmail.com, linux-lvm@redhat.com,
Lukas Czerner <lczerner@redhat.com>,
linux-ext4@vger.kernel.org, Alasdair G Kergon <agk@redhat.com>
Subject: Re: do not disable ext4 discards on first discard failure? [was: Re: dm snapshot: ignore discards issued to the snapshot-origin target]
Date: Wed, 4 May 2011 14:03:44 -0400 [thread overview]
Message-ID: <20110504180343.GB558@redhat.com> (raw)
In-Reply-To: <yq1k4e6z9xq.fsf@sermon.lab.mkp.net>
On Wed, May 04 2011 at 12:50pm -0400,
Martin K. Petersen <martin.petersen@oracle.com> wrote:
> >>>>> "Mike" == Mike Snitzer <snitzer@redhat.com> writes:
>
> Mike> lim->discard_zeroes_data = -1; was suspect to me too.
> Mike> But why default to 1 here?
>
> Because otherwise DM would default to having dzd to "unsupported",
> meaning the feature would never be turned on regardless of the bottom
> device capabilities.
>
> The old approach used the -1 value to indicate "has not been set". That
> was only really intended as a value for the stacking drivers, not for
> the LLDs. It was a bit of a hack and I'd rather deal with dzd the same
> way as we do with clustering.
>
>
> >> @@ -166,6 +166,7 @@ void blk_queue_make_request(struct request_queue
> >> *q, make_request_fn *mfn)
> >>
> >> blk_set_default_limits(&q->limits);
> >> blk_queue_max_hw_sectors(q, BLK_SAFE_MAX_SECTORS);
> >> + q->limits.discard_zeroes_data = 0;
> >>
> >> /*
> >> * by default assume old behaviour and bounce for any highmem page
>
> Mike> Only to then reset to 0 here? Shouldn't we default to 0 and only
> Mike> set to 1 where applicable (e.g. sd_config_discard)?
>
> My first approach was to set it in dm-table.c before stacking. But I
> thought it was icky to have the stacking driver ask for defaults and
> then have to tweak them for things to work correctly.
>
> The other option is to have blk_set_default_stacking_limits(). Or we
> could add a flag to blk_set_default_limits to indicate whether this is a
> LLD or a stacking driver.
>
> We already special-case BLK_SAFE_MAX_SECTORS when setting the request
> function. And that's the only non-stacking user of the default limits
> call. So that's why I disabled dzd there. Since this is a stable bugfix
> I also wanted to keep it small and simple. But I'm totally open to
> suggestions.
Your current approach sounds good. Might be good to briefly speak to
the duality of the stacking vs non-stacking approach in the associated
patch header.
Thanks for clarifying.
Mike
WARNING: multiple messages have this Message-ID (diff)
From: Mike Snitzer <snitzer@redhat.com>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: sandeen@redhat.com, Christoph Hellwig <hch@infradead.org>,
device-mapper development <dm-devel@redhat.com>,
DarkNovaNick@gmail.com, linux-lvm@redhat.com,
Lukas Czerner <lczerner@redhat.com>,
linux-ext4@vger.kernel.org, Alasdair G Kergon <agk@redhat.com>
Subject: Re: [linux-lvm] do not disable ext4 discards on first discard failure? [was: Re: dm snapshot: ignore discards issued to the snapshot-origin target]
Date: Wed, 4 May 2011 14:03:44 -0400 [thread overview]
Message-ID: <20110504180343.GB558@redhat.com> (raw)
In-Reply-To: <yq1k4e6z9xq.fsf@sermon.lab.mkp.net>
On Wed, May 04 2011 at 12:50pm -0400,
Martin K. Petersen <martin.petersen@oracle.com> wrote:
> >>>>> "Mike" == Mike Snitzer <snitzer@redhat.com> writes:
>
> Mike> lim->discard_zeroes_data = -1; was suspect to me too.
> Mike> But why default to 1 here?
>
> Because otherwise DM would default to having dzd to "unsupported",
> meaning the feature would never be turned on regardless of the bottom
> device capabilities.
>
> The old approach used the -1 value to indicate "has not been set". That
> was only really intended as a value for the stacking drivers, not for
> the LLDs. It was a bit of a hack and I'd rather deal with dzd the same
> way as we do with clustering.
>
>
> >> @@ -166,6 +166,7 @@ void blk_queue_make_request(struct request_queue
> >> *q, make_request_fn *mfn)
> >>
> >> blk_set_default_limits(&q->limits);
> >> blk_queue_max_hw_sectors(q, BLK_SAFE_MAX_SECTORS);
> >> + q->limits.discard_zeroes_data = 0;
> >>
> >> /*
> >> * by default assume old behaviour and bounce for any highmem page
>
> Mike> Only to then reset to 0 here? Shouldn't we default to 0 and only
> Mike> set to 1 where applicable (e.g. sd_config_discard)?
>
> My first approach was to set it in dm-table.c before stacking. But I
> thought it was icky to have the stacking driver ask for defaults and
> then have to tweak them for things to work correctly.
>
> The other option is to have blk_set_default_stacking_limits(). Or we
> could add a flag to blk_set_default_limits to indicate whether this is a
> LLD or a stacking driver.
>
> We already special-case BLK_SAFE_MAX_SECTORS when setting the request
> function. And that's the only non-stacking user of the default limits
> call. So that's why I disabled dzd there. Since this is a stable bugfix
> I also wanted to keep it small and simple. But I'm totally open to
> suggestions.
Your current approach sounds good. Might be good to briefly speak to
the duality of the stacking vs non-stacking approach in the associated
patch header.
Thanks for clarifying.
Mike
next prev parent reply other threads:[~2011-05-04 18:03 UTC|newest]
Thread overview: 104+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-12 14:59 [linux-lvm] Testing TRIM with LVM DarkNovaNick
2011-04-12 23:47 ` Mike Snitzer
2011-04-13 1:47 ` DarkNovaNick
2011-04-13 8:41 ` Zdenek Kabelac
2011-04-13 15:38 ` DarkNovaNick
2011-04-13 22:40 ` [PATCH] dm snapshot: add discard support to the snapshot-origin target [was: Re: Testing TRIM with LVM] Mike Snitzer
2011-04-13 22:40 ` [linux-lvm] " Mike Snitzer
2011-04-13 23:48 ` Mike Snitzer
2011-04-13 23:48 ` [linux-lvm] " Mike Snitzer
2011-04-26 17:32 ` Mike Snitzer
2011-04-26 17:32 ` [linux-lvm] " Mike Snitzer
2011-04-28 0:19 ` [PATCH] dm snapshot: ignore discards issued to the snapshot-origin target Mike Snitzer
2011-04-28 0:19 ` [linux-lvm] " Mike Snitzer
2011-04-28 7:53 ` Christoph Hellwig
2011-04-28 7:53 ` [linux-lvm] [dm-devel] " Christoph Hellwig
2011-04-28 20:59 ` do not disable ext4 discards on first discard failure? [was: Re: dm snapshot: ignore discards issued to the snapshot-origin target] Mike Snitzer
2011-04-28 20:59 ` [linux-lvm] " Mike Snitzer
2011-04-28 21:28 ` Eric Sandeen
2011-04-28 21:28 ` [linux-lvm] " Eric Sandeen
2011-04-28 22:59 ` Alasdair G Kergon
2011-04-28 22:59 ` Alasdair G Kergon
2011-04-28 23:01 ` Eric Sandeen
2011-04-28 23:01 ` Eric Sandeen
2011-04-28 23:11 ` Alasdair G Kergon
2011-04-28 23:11 ` Alasdair G Kergon
2011-04-29 1:12 ` Andreas Dilger
2011-04-29 1:12 ` [linux-lvm] " Andreas Dilger
2011-04-29 13:55 ` Mike Snitzer
2011-04-29 13:55 ` [linux-lvm] " Mike Snitzer
2011-04-29 9:30 ` Lukas Czerner
2011-04-29 9:30 ` [linux-lvm] " Lukas Czerner
2011-04-29 12:24 ` [dm-devel] " Alasdair G Kergon
2011-04-29 12:24 ` [linux-lvm] " Alasdair G Kergon
2011-04-29 12:29 ` Christoph Hellwig
2011-04-29 12:29 ` [linux-lvm] " Christoph Hellwig
2011-04-29 14:28 ` Eric Sandeen
2011-04-29 14:28 ` [linux-lvm] " Eric Sandeen
2011-04-29 15:13 ` Ray Morris
2011-04-29 15:13 ` Ray Morris
2011-05-04 16:33 ` Ted Ts'o
2011-05-04 16:33 ` [linux-lvm] " Ted Ts'o
2011-05-04 16:51 ` Eric Sandeen
2011-05-04 16:57 ` Lukas Czerner
2011-05-04 17:02 ` Lukas Czerner
2011-05-04 17:02 ` [linux-lvm] " Lukas Czerner
2011-05-02 7:16 ` Lukas Czerner
2011-05-02 7:16 ` [linux-lvm] " Lukas Czerner
2011-05-02 8:13 ` Alasdair G Kergon
2011-05-02 8:13 ` [linux-lvm] " Alasdair G Kergon
2011-05-02 8:19 ` Christoph Hellwig
2011-05-02 8:19 ` [linux-lvm] " Christoph Hellwig
2011-05-02 10:24 ` Lukas Czerner
2011-05-02 10:24 ` [linux-lvm] " Lukas Czerner
2011-05-02 12:48 ` Mike Snitzer
2011-05-02 12:48 ` [linux-lvm] " Mike Snitzer
2011-05-02 13:05 ` Lukas Czerner
2011-05-02 13:05 ` [linux-lvm] " Lukas Czerner
2011-05-02 14:47 ` Eric Sandeen
2011-05-02 14:47 ` [linux-lvm] " Eric Sandeen
2011-05-02 14:48 ` Christoph Hellwig
2011-05-02 14:48 ` [linux-lvm] " Christoph Hellwig
2011-05-02 14:58 ` Lukas Czerner
2011-05-02 14:58 ` [linux-lvm] " Lukas Czerner
2011-05-02 13:48 ` [dm-devel] " Martin K. Petersen
2011-05-02 13:48 ` [linux-lvm] " Martin K. Petersen
2011-05-02 14:20 ` Martin K. Petersen
2011-05-02 14:20 ` [linux-lvm] [dm-devel] " Martin K. Petersen
2011-05-02 14:39 ` Lukas Czerner
2011-05-02 14:39 ` [linux-lvm] " Lukas Czerner
2011-05-02 14:50 ` Martin K. Petersen
2011-05-02 14:50 ` [linux-lvm] " Martin K. Petersen
2011-05-02 14:58 ` Mike Snitzer
2011-05-02 14:58 ` [linux-lvm] " Mike Snitzer
2011-05-02 16:58 ` [dm-devel] " Martin K. Petersen
2011-05-02 16:58 ` [linux-lvm] " Martin K. Petersen
2011-05-03 8:57 ` Lukas Czerner
2011-05-03 8:57 ` [linux-lvm] " Lukas Czerner
2011-05-04 15:10 ` Martin K. Petersen
2011-05-04 15:10 ` [linux-lvm] " Martin K. Petersen
2011-05-04 16:02 ` Mike Snitzer
2011-05-04 16:02 ` [linux-lvm] " Mike Snitzer
2011-05-04 16:50 ` Martin K. Petersen
2011-05-04 16:50 ` [linux-lvm] " Martin K. Petersen
2011-05-04 18:03 ` Mike Snitzer [this message]
2011-05-04 18:03 ` Mike Snitzer
2011-05-04 17:10 ` [dm-devel] " Lukas Czerner
2011-05-04 17:10 ` [linux-lvm] " Lukas Czerner
2011-05-04 17:32 ` Martin K. Petersen
2011-05-04 17:32 ` [linux-lvm] " Martin K. Petersen
2011-05-04 17:35 ` Lukas Czerner
2011-05-04 17:35 ` [linux-lvm] " Lukas Czerner
2011-05-18 12:16 ` Mike Snitzer
2011-05-18 12:16 ` [linux-lvm] " Mike Snitzer
2011-05-18 12:52 ` Mike Snitzer
2011-05-18 12:52 ` [linux-lvm] " Mike Snitzer
2011-05-04 15:16 ` [dm-devel] " Martin K. Petersen
2011-05-04 15:16 ` [linux-lvm] " Martin K. Petersen
2011-05-04 16:12 ` Lukas Czerner
2011-05-04 16:12 ` [linux-lvm] " Lukas Czerner
2011-05-05 8:33 ` Karel Zak
2011-05-05 8:33 ` [linux-lvm] " Karel Zak
2011-05-05 10:48 ` Lukas Czerner
2011-05-05 10:48 ` [linux-lvm] " Lukas Czerner
2011-04-14 15:31 ` [linux-lvm] [PATCH] dm snapshot: add discard support to the snapshot-origin target [was: Re: Testing TRIM wi DarkNovaNick
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=20110504180343.GB558@redhat.com \
--to=snitzer@redhat.com \
--cc=DarkNovaNick@gmail.com \
--cc=agk@redhat.com \
--cc=dm-devel@redhat.com \
--cc=hch@infradead.org \
--cc=lczerner@redhat.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-lvm@redhat.com \
--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.