On Mon, Jan 14, 2019 at 11:27 AM Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote: > > +Linus Walleij (recently made a cleanup of the mmc bounce buffering code). > > On Mon, 14 Jan 2019 at 10:58, Christoph Hellwig <hch@xxxxxx> wrote: > > > > Hi everyone, > > > > this series converts the remaining MMC host drivers to properly kmap the > > scatterlist entries it does PIO operations on, and then goes on to > > remove the usage of block layer bounce buffering (which I plan to remove > > eventually) from the MMC layer. > > > > As a bonus I've converted various drivers to the proper scatterlist > > helpers so that at least in theory they are ready for chained > > scatterlists. > > > > All the changes are compile tested only as I don't have any of the > > hardware, so a careful review would be appreciated. > > Thanks for posting this. I will have a look as soon as I can, but > first needs to catch up with things since the holidays. Linus probably knows more here, but I have a vague recollection of the MMC bounce buffer code being needed mostly for performance reasons: when the scatterlist is discontiguous, that can result in a request being split up into separate MMC commands, which due to the lack of queued commands combined with the need for garbage collection on sub-page writes results in a huge slowdown compared to having larger bounce buffers all the time. We had discussed finding a different way to do this (separate from the bounce buffering), but I don't know if that ever happened, or if this is even the code that you are changing here. Arnd