Re: [PATCH] block: Clear kernel memory before copying to user

From
Ming Lei <tom.leiming@gmail.com>
Date
2018-11-07 15:09:27
Reply to
Keith Busch, 2018-11-07
On Wed, Nov 7, 2018 at 10:42 PM Keith Busch [off-list ref] wrote:
quoted hunk ↗ jump to hunk
If the kernel allocates a bounce buffer for user read data, this memory
needs to be cleared before copying it to the user, otherwise it may leak
kernel memory to user space.

Signed-off-by: Keith Busch <redacted>
---
 block/bio.c | 1 +
 1 file changed, 1 insertion(+)
diff --git a/block/bio.c b/block/bio.c
index d5368a445561..a50d59236b19 100644
--- a/block/bio.c
+++ b/block/bio.c
@@ -1260,6 +1260,7 @@ struct bio *bio_copy_user_iov(struct request_queue *q,
                if (ret)
                        goto cleanup;
        } else {
+               zero_fill_bio(bio);
                iov_iter_advance(iter, bio->bi_iter.bi_size);
        }
This way looks inefficient because zero fill should only be required
for short READ.

Thanks,
Ming Lei
Thread (15 messages) 15 messages, 5 authors, last reply 2018-11-08
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help