Thread (76 messages) 76 messages, 5 authors, 2012-09-21

Re: [PATCH v2 00/26] Prep work for immutable bio vecs

From: NeilBrown <hidden>
Date: 2012-09-11 05:23:08
Also in: dm-devel, lkml

On Mon, 10 Sep 2012 17:22:11 -0700 Kent Overstreet [off-list ref]
wrote:
Random assortment of refactoring and trivial cleanups;

Immutable bio vecs and efficient bio splitting require auditing and
removing pretty much all bi_idx uses, among other things.

The reason is that with immutable bio vecs we can't use the bvec array
directly; if we have a partially completed bvec, that'll be indicated
with a field in struct bvec_iter (which gets embedded in struct bio) -
bi_bvec_done.

bio_for_each_segments() will handle this transparently, so code needs to
be converted to use it or some other generic accessor.

Also, bio splitting means that when a driver gets a bio, bi_idx and
bi_bvec_done may both be nonzero. Again, just need to use generic
accessors.

v2: Patch series now has all the prep work to be done before abstracting
out the bio iterator, I think.
Hi Kent,
 this looks pretty good to me.  I've only really looked closely at the md
 bits, but they all seem to make sense (with the minor issues that I reported
 separately).

 If/when there is another posting I'll try to allocate some time to testing
 them and looking more closely.

thanks!

NeilBrown

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help