From d5a27889edfa4f572eba8722d04885dce1706c47 Mon Sep 17 00:00:00 2001 From: Alessandro Rubini <rubini@gnudd.com> Date: Fri, 18 Jan 2013 23:26:39 +0100 Subject: [PATCH] buf-vmalloc: refuse zero-sized channels Signed-off-by: Alessandro Rubini <rubini@gnudd.com> Acked-by: Federico Vaga <federico.vaga@gmail.com> --- buffers/zio-buf-vmalloc.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/buffers/zio-buf-vmalloc.c b/buffers/zio-buf-vmalloc.c index 2ef27ed..b55c566 100644 --- a/buffers/zio-buf-vmalloc.c +++ b/buffers/zio-buf-vmalloc.c @@ -283,6 +283,10 @@ static struct zio_bi *zbk_create(struct zio_buffer_type *zbuf, pr_debug("%s:%d\n", __func__, __LINE__); + /* zero-sized blocks can't use this buffer type */ + if (chan->cset->ssize == 0) + return ERR_PTR(-EINVAL); + size = 1024 * zbuf->zattr_set.std_zattr[ZIO_ATTR_ZBUF_MAXKB].value; zbki = kzalloc(sizeof(*zbki), GFP_KERNEL); -- GitLab