]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
block: Clear kernel memory before copying to user
authorKeith Busch <keith.busch@intel.com>
Thu, 27 Jun 2019 18:16:00 +0000 (20:16 +0200)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Tue, 2 Jul 2019 12:18:49 +0000 (14:18 +0200)
BugLink: http://bugs.launchpad.net/bugs/1834499
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.

Laurence Oberman <loberman@redhat.com>
Signed-off-by: Keith Busch <keith.busch@intel.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
(cherry picked from commit f3587d76da05f68098ddb1cb3c98cc6a9e8a402c)
Signed-off-by: Marcelo Henrique Cerri <marcelo.cerri@canonical.com>
Acked-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
Acked-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
block/bio.c

index 095da59a303cf5b13469a9b8c3386c9f42ffd985..cea6758155878ddb681c6c0a63b92d9951dc7937 100644 (file)
@@ -1338,6 +1338,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);
        }