Received: by 2002:a05:6a10:9afc:0:0:0:0 with SMTP id t28csp382602pxm; Wed, 2 Mar 2022 17:56:18 -0800 (PST) X-Google-Smtp-Source: ABdhPJw50IL2QWf1pJ+dcXqaHkCRexsgwi6PQ/ZGPipd3Pid9vRZj19odRzJ6qlx8O5Pp9w68upO X-Received: by 2002:a63:20f:0:b0:378:9f08:a0a4 with SMTP id 15-20020a63020f000000b003789f08a0a4mr15600317pgc.17.1646272577684; Wed, 02 Mar 2022 17:56:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1646272577; cv=none; d=google.com; s=arc-20160816; b=AB3S4O6+K0MJObKPG1VnbdfN+Zvn90vrFNzbSlXHiYd9Vv6SgiwfderS4VlREEEFIH amoq4xxZiGfCndECPnQvMMJH6qiAQMkyrMW/QY5WPl6hshrabI16vFvUrZ0eH0otax/o IGGoxgfly8tc/uur6RrLZRN7QAK9fEZE2U+r0Q9pbKWz5D4wnPAesqIAPolLyrt+3Em6 cnWA5xRwY4ku3DCyOrJ2XBckiZhaoa7PepnYTJwyFnOOyXQeTXu3c4PFqmXen6XVy0C2 id5JbAdDmageEcp0LONBCwGlJrvJBQGhjKwQJ8iZGxkimDSazpuIEGuRsnR7YwKXXSnA YE1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from :dkim-signature; bh=GvqqsXp9JqRW+QoRebFXnXLKeWDJccxwpi7zx7aah6k=; b=gSCu7ev2Z651R/kc85FJtx0NHYyWX0UXgIxI6QTaxJ8/6idUA1GmdErskllD8RkYLC I7kYOiTLg8QkqoFIFXXxCVzKlY7q2gnfTiAkqGUZ6nBhx5tMGrBu4EBYDhHD1qUFfVQP hvFfuxAs7pSp3B2EN5vt+Cc0ifZ/iX335xU+K2rkKRULrSP2J9KOydSimeLLQ80pm1HB j4a0HVpLe9cP7iiOBGR/EJkf5yi7Momzt8nblnpmOvshsh66XKpT0tr9KWzBvftF1vhZ XYUJBIi9vr97CuwFcBoqIv3ejbieRgVqXy5LQQ/UgmZVkEDZRDQCZaYuWvuFdY6jTZ/8 Jffw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=enhTd8NL; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id t35-20020a632263000000b00373d6e7e784si693571pgm.645.2022.03.02.17.56.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Mar 2022 17:56:17 -0800 (PST) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=enhTd8NL; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 2F3C3C8FB4; Wed, 2 Mar 2022 17:56:03 -0800 (PST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231544AbiCCB4o (ORCPT + 99 others); Wed, 2 Mar 2022 20:56:44 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33692 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231533AbiCCB4n (ORCPT ); Wed, 2 Mar 2022 20:56:43 -0500 Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com [IPv6:2a00:1450:4864:20::32d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0801CC3C1C; Wed, 2 Mar 2022 17:55:59 -0800 (PST) Received: by mail-wm1-x32d.google.com with SMTP id p184-20020a1c29c1000000b0037f76d8b484so2353727wmp.5; Wed, 02 Mar 2022 17:55:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id; bh=GvqqsXp9JqRW+QoRebFXnXLKeWDJccxwpi7zx7aah6k=; b=enhTd8NLMcPGtMzrxXlO6sQ4IUzfhtLJdzJZRVTG1u19GurckZA1UnbtdorF3sVe3h 9udPBxjZZ1yUiWNU2I6L48t5rEynB+rAERTsffdK4G3vObAtj4q5smzQ7SOu2EseZrr3 22Bk/NpXVtZCsEpk36vgFNoLy/OYBa/NpzEZpsoPZtUpQF3J3lCKLIVRaPE4jFthNglf VItuwvFt3YLxRXl6b56FE68wq5CExiMLEOxM9HdOBS8M1r+v2bOAGS929cC9j4kNfXfj hJrMwwLCKHftrH+fDcUKYy0mpszEjex3wsEuU1O2G3svnRsycT+M8XAfoF4febdKee22 PSyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=GvqqsXp9JqRW+QoRebFXnXLKeWDJccxwpi7zx7aah6k=; b=NxsEpqreGOHduVzZeJMKqdyy23ffhYhUhLB8IahWpFAwAPgKp0j4RTB/bz2E00L6wK rQcygKlskCzInlrbvZwTj6BnMFM/JU+3txf7yrO9/q3ZXx/fCWOKSknNTCMMFeC/hQ+d 9ru02iAODZg9ntVrHG151QZNy9u2b317HdUXgF5J00ViGSSRQqzO6N4D9w8WnbXiAvTF bzbFmslVcSaHS7TX7DZR0lx1xCOpXqIogMNRNI/JrjM7K8Gxf7li6GkmVHB4oyU4W9Na xpWkREGrC5y8+wX5P6g1WqfI7s/8hKKkhmjo1Sf5qq7cgwIlJONuGhFsLQRuB8xCtB+M myxA== X-Gm-Message-State: AOAM532gLsRydTGzb5Eg2IEfRRAn4pGf6yXj0M9zGOovBrpSZoyUTvsY OHpZKASNLNzep4N5w2J0Lq5llmKIW91y1Q== X-Received: by 2002:a05:600c:1c9c:b0:386:f4ed:3f59 with SMTP id k28-20020a05600c1c9c00b00386f4ed3f59mr1788258wms.27.1646272557491; Wed, 02 Mar 2022 17:55:57 -0800 (PST) Received: from localhost.localdomain ([64.64.123.48]) by smtp.gmail.com with ESMTPSA id l12-20020a05600012cc00b001f059bcbd7asm88093wrx.31.2022.03.02.17.55.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Mar 2022 17:55:57 -0800 (PST) From: Jia-Ju Bai To: colyli@suse.de, kent.overstreet@gmail.com Cc: linux-bcache@vger.kernel.org, linux-kernel@vger.kernel.org, Jia-Ju Bai Subject: [PATCH v2] md: bcache: check the return value of kzalloc() in detached_dev_do_request() Date: Wed, 2 Mar 2022 17:55:44 -0800 Message-Id: <20220303015544.32186-1-baijiaju1990@gmail.com> X-Mailer: git-send-email 2.17.1 X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RDNS_NONE, SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The function kzalloc() in detached_dev_do_request() can fail, so its return value should be checked. Fixes: bc082a55d25c ("bcache: fix inaccurate io state for detached bcache devices") Reported-by: TOTE Robot Signed-off-by: Jia-Ju Bai --- v2: * Fix the error handling code when ddip is NULL. Thank Coly for good advice. --- drivers/md/bcache/request.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/md/bcache/request.c b/drivers/md/bcache/request.c index d15aae6c51c1..673a680240a9 100644 --- a/drivers/md/bcache/request.c +++ b/drivers/md/bcache/request.c @@ -1107,6 +1107,12 @@ static void detached_dev_do_request(struct bcache_device *d, struct bio *bio, * which would call closure_get(&dc->disk.cl) */ ddip = kzalloc(sizeof(struct detached_dev_io_private), GFP_NOIO); + if (!ddip) { + bio->bi_status = BLK_STS_RESOURCE; + bio->bi_end_io(bio); + return; + } + ddip->d = d; /* Count on the bcache device */ ddip->orig_bdev = orig_bdev; -- 2.17.1