On Mon, 2018-12-10 at 08:36 -0700, Jens Axboe wrote: > On 12/10/18 8:32 AM, Keith Busch wrote: > > On Sun, Dec 09, 2018 at 07:08:14PM -0800, Bart Van Assche wrote: > > > According to what I found in > > > https://bugzilla.kernel.org/show_bug.cgi?id=201935 patch "block: > > > Clear > > > kernel memory before copying to user" broke tape access. Hence > > > revert > > > that patch. > > > > Instead of reverting back to the leaking arbitrary kernel memory, > > why > > not just make a fix on top of it? This should do it: > > > > --- > > diff --git a/block/bio.c b/block/bio.c > > index c4ef8aa46452..55a5386fd431 100644 > > --- a/block/bio.c > > +++ b/block/bio.c > > @@ -1262,7 +1262,8 @@ struct bio *bio_copy_user_iov(struct > > request_queue *q, > > if (ret) > > goto cleanup; > > } else { > > - zero_fill_bio(bio); > > + if (bmd->is_our_pages) > > + zero_fill_bio(bio); > > iov_iter_advance(iter, bio->bi_iter.bi_size); > > } > > > > That should be fine, the other case is user mapped memory anyway. > OK, I will test this today Thanks folks!! Laurence