From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751128AbdJBHGW (ORCPT ); Mon, 2 Oct 2017 03:06:22 -0400 Received: from out1-smtp.messagingengine.com ([66.111.4.25]:51277 "EHLO out1-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751019AbdJBHGV (ORCPT ); Mon, 2 Oct 2017 03:06:21 -0400 X-ME-Sender: X-Sasl-enc: MpW4L76ioqpVnEL/gSBW/pqIAVJ5CmOV00BxlShZY4w0 1506927979 From: "Tobin C. Harding" To: Jens Axboe Cc: "Tobin C. Harding" , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] block: add NULL argument check to bioset_free() Date: Mon, 2 Oct 2017 18:06:03 +1100 Message-Id: <1506927963-27865-1-git-send-email-me@tobin.cc> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 --- 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