Re: MMC layer regression with single-block controllers

From: Pierre Ossman
Date: Wed Mar 25 2009 - 12:25:01 EST


On Wed, 25 Mar 2009 17:14:25 +0100
Jens Axboe <jens.axboe@xxxxxxxxxx> wrote:

> On Wed, Mar 25 2009, Pierre Ossman wrote:
> >
> > The code was there previously, but it seemed a bit redundant to have
> > functionality like that in the block driver since we've already told
> > the block layer about the restrictions.
>
> You never saw the warnings? It's pretty clear that it does not support <
> PAGE_CACHE_SIZE blocks. It has always been so, I don't know why the
> subject says regression. I guess that is referring to a mmc layer
> regression?
>

Yes. The MMC code did all of this magic by itself previously and
assumed very little about the block layer.

> > The code was pretty simple. Basically it just cropped the sg list at
> > the correct place. Couldn't that be as easily done in the block layer?
>
> No, because if you do it transparently, then you have to keep partial
> state in the bio for completions. So it makes everything a lot more
> complex, I don't want to do that for something like this.
>

How is this different from the low level driver partially completing a
request, which is how it would have to be handled otherwise?

Rgds
--
-- Pierre Ossman

WARNING: This correspondence is being monitored by the
Swedish government. Make sure your server uses encryption
for SMTP traffic and consider using PGP for end-to-end
encryption.

Attachment: signature.asc
Description: PGP signature