Hi Linus, On Thu, May 18, 2017 at 11:36:14AM +0200, Christoph Hellwig wrote: > On Thu, May 18, 2017 at 11:29:34AM +0200, Linus Walleij wrote: > > We are storing the ioctl() in/out argument as a pointer in > > the per-request struct mmc_blk_request container. > > Btw, for the main ioctl data (not the little reponse field) it might > make sense to use blk_rq_map_user, which will do a get_user_pages > on the user data if the alignment fits, and otherwise handle the > kernel bounce buffering for you. This should simplify the code > quite a bit more, and in the case where you can access the user > memory directly provide a nice little performance boost. Did you get a chance to look into this?