]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
blk-mq: make sure that line break can be printed
authorMing Lei <ming.lei@redhat.com>
Mon, 4 Nov 2019 08:26:53 +0000 (16:26 +0800)
committerMarcelo Henrique Cerri <marcelo.cerri@canonical.com>
Fri, 17 Jan 2020 17:22:53 +0000 (14:22 -0300)
BugLink: https://bugs.launchpad.net/bugs/1857158
commit d2c9be89f8ebe7ebcc97676ac40f8dec1cf9b43a upstream.

8962842ca5ab ("blk-mq: avoid sysfs buffer overflow with too many CPU cores")
avoids sysfs buffer overflow, and reserves one character for line break.
However, the last snprintf() doesn't get correct 'size' parameter passed
in, so fixed it.

Fixes: 8962842ca5ab ("blk-mq: avoid sysfs buffer overflow with too many CPU cores")
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Cc: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
block/blk-mq-sysfs.c

index ace2526ca05598684ec34c2962435acc30001ab3..22b70c5dfe67edc2e4f524556a930d1b127a866d 100644 (file)
@@ -168,7 +168,7 @@ static ssize_t blk_mq_hw_sysfs_cpus_show(struct blk_mq_hw_ctx *hctx, char *page)
                pos += ret;
        }
 
-       ret = snprintf(pos + page, size - pos, "\n");
+       ret = snprintf(pos + page, size + 1 - pos, "\n");
        return pos + ret;
 }