[PATCH] block: add NULL argument check to bioset_free()

From: Tobin C. Harding
Date: Mon Oct 02 2017 - 03:06:50 EST


Currently bioset_free() will oops if passed a NULL argument. Other
kernel 'free' functions typically check for NULL arguments and
return. The rule of least surprise dictates that bioset_free() should
behave safely even if passed a NULL argument.

Add NULL argument check to bioset_free().

Signed-off-by: Tobin C. Harding <me@xxxxxxxx>
---

block/bio.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/block/bio.c b/block/bio.c
index b38e962..780aecc 100644
--- a/block/bio.c
+++ b/block/bio.c
@@ -1925,6 +1925,9 @@ mempool_t *biovec_create_pool(int pool_entries)

void bioset_free(struct bio_set *bs)
{
+ if (unlikely(!bs))
+ return;
+
if (bs->rescue_workqueue)
destroy_workqueue(bs->rescue_workqueue);

--
2.7.4