From: NeilBrown <neilb@suse.com>
Cc: Jens Axboe <axboe@kernel.dk>,
linux-block@vger.kernel.org, linux-raid@vger.kernel.org,
"Martin K . Petersen" <martin.petersen@oracle.com>,
Mike Snitzer <snitzer@redhat.com>,
Ming Lei <tom.leiming@gmail.com>,
linux-kernel@vger.kernel.org,
Christoph Hellwig <hch@infradead.org>,
dm-devel@redhat.com, Shaohua Li <shli@kernel.org>,
Alasdair Kergon <agk@redhat.com>
Subject: Re: [dm-devel] [PATCH v3] block: trace completion of all bios.
Date: Tue, 28 Mar 2017 10:42:12 +1100 [thread overview]
Message-ID: <87tw6e70dn.fsf@notabene.neil.brown.name> (raw)
In-Reply-To: <20170327171421.GA464@infradead.org>
[-- Attachment #1: Type: text/plain, Size: 1192 bytes --]
On Mon, Mar 27 2017, Christoph Hellwig wrote:
> On Mon, Mar 27, 2017 at 08:49:57PM +1100, NeilBrown wrote:
>> On Mon, Mar 27 2017, Christoph Hellwig wrote:
>>
>> > I don't really like the flag at all. I'd much prefer a __bio_endio
>> > with a 'bool trace' flag. Also please remove the manual tracing in
>> > dm.ċ. Once that is done I suspect we can also remove the
>> > block_bio_complete export.
>>
>> Can you say why you don't like it?
>
> It uses up a precious bit in the bio for something that should be state
> that can be determined in the caller at compile time.
I've already demonstrated that the bit is not "precious" at all. I have
shown how I could easily give you 20 unused flag bits without increasing
the size of struct bio.
Yes, the state could be determined in the caller at compiler time. That
would require developers to make the correct choice between two very
similar interfaces, where the consequences of an correct choice are not
immediately obvious.
I think that spending one bit (out of 20) to relieve developers of the
burden of choice (and to spare as all of the consequences of wrong
choice) is a price worth paying.
NeilBrown
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
prev parent reply other threads:[~2017-03-27 23:42 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-22 2:38 [PATCH] block: trace completion of all bios NeilBrown
2017-03-22 12:51 ` Christoph Hellwig
2017-03-23 6:26 ` NeilBrown
2017-03-23 6:29 ` [PATCH v2] " NeilBrown
2017-03-23 10:43 ` Ming Lei
2017-03-24 0:06 ` NeilBrown
2017-03-24 0:07 ` [PATCH v3] " NeilBrown
2017-03-24 6:47 ` Ming Lei
2017-03-26 23:17 ` NeilBrown
2017-03-27 9:03 ` Christoph Hellwig
2017-03-27 9:49 ` NeilBrown
2017-03-27 17:14 ` Christoph Hellwig
2017-03-27 23:42 ` NeilBrown [this message]
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=87tw6e70dn.fsf@notabene.neil.brown.name \
--to=neilb@suse.com \
--cc=agk@redhat.com \
--cc=axboe@kernel.dk \
--cc=dm-devel@redhat.com \
--cc=hch@infradead.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-raid@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=shli@kernel.org \
--cc=snitzer@redhat.com \
--cc=tom.leiming@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).