Re: [PATCH v2 1/1] block: blk-merge: don't merge the pages withnon-contiguous descriptors

From: James Bottomley
Date: Thu Jan 17 2013 - 06:19:15 EST


On Thu, 2013-01-17 at 11:04 +0000, Russell King - ARM Linux wrote:
> On Thu, Jan 17, 2013 at 11:01:47AM +0000, James Bottomley wrote:
> > On Thu, 2013-01-17 at 10:47 +0000, Russell King - ARM Linux wrote:
> > > Also, couldn't the addition of the scatterlist offset to the page also
> > > be buggy too?
> >
> > No, fortunately, offset must be within the first page from the point of
> > view of block generated sg lists. As long as nothing within arm
> > violates this, it should be a safe assumption ... although the code
> > seems to assume otherwise.
>
> Are you absolutely sure about that? I believe I have seen cases where
> that has been violated in the past, though it was many years ago.

>From the point of view of the block layer, absolutely: the scatterlist
is generated from an array of bio_vecs. Each bio_vec is a page, offset
and length element and obeys the rule that offset must be within the
page and offset + length cannot stray over the page.

>From the point of view of other arm stuff, I don't know.

James


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/