Received: by 2002:a05:6a11:4021:0:0:0:0 with SMTP id ky33csp4342091pxb; Mon, 27 Sep 2021 15:02:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz81MDy3G39MH7ulHudndkR+oLT948//lmyytCRDFZpJJDCBEAIcOff88seytwLxFdYoIZn X-Received: by 2002:a17:902:7ec2:b0:13d:b563:c39 with SMTP id p2-20020a1709027ec200b0013db5630c39mr1984055plb.14.1632780136117; Mon, 27 Sep 2021 15:02:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1632780136; cv=none; d=google.com; s=arc-20160816; b=Ewk0VYnSOHsBFSoBpKYx1ENkKELY8u4MjwT4ReudR2AA/LpbCR2QCIv8vaL3LQaN+g 9MfiIFGvqqPjVBzVq0Ea9TcZzXlPEeB9BleqlLk7+kY2a7i95kvGCneXcuUhqBdLYUvB rBwZ1fLzGQUNSklfGbtlB4Jkmeq7GC0ua5KAgwj0XCJS+zlyAJXX2cVBBmWO8f5vb9c4 IJ1A0N1zU3fBz3FLZv7IkwenlVpx7FVFrIQ/qE6pVzmeHWqYfIGYO1TEPg41R5ZNy+c3 sdVptKVBN2b6T7kia4n49y3xwKQ4CNbTBSprAgNeaLAme9bnvdAKw1ustwYXLmpmS8Zt 2s7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=HTpU756JwpvmNMTCPyUXuh2Qpa/4bMT1Du7tontR+t4=; b=d4tdL197Mp8fQ/E8f/TjpcCHqS2cuIKUQDDFQTiVUhWsGNbqMx63n9nY+NdzVpjBRa h+McPmXnhY9AFMlMrg14OVk0SgcQJXaQd9N1wg4C9OV2dhz8aZH8l1gXpaF5Naw07aJV uoiu05s1CC7sVJ7P97Xgx5SsYQ6mKOfquwaiHYMqBHgkpBFQxvEg3JlDkPwP70JIJcbq AkDaPgVqyt6PIJ0ogwi1oT1JlIyF3FtC2eJ7638PUy8VesYr/fKVC40bVpRCQuqNsXNz gq41fYR0tosQ2icdfavRXnddrqrzPd4bCazr/yWnzM5GH8RNlLWSavflvQVC8NG3Fdin qUow== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20210309 header.b=A0pK45hI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id l6si25937867pls.421.2021.09.27.15.02.02; Mon, 27 Sep 2021 15:02:16 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20210309 header.b=A0pK45hI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237766AbhI0WC1 (ORCPT + 99 others); Mon, 27 Sep 2021 18:02:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50730 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237399AbhI0WCJ (ORCPT ); Mon, 27 Sep 2021 18:02:09 -0400 Received: from bombadil.infradead.org (unknown [IPv6:2607:7c80:54:e::133]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 27CE3C06176D; Mon, 27 Sep 2021 15:00:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Sender:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description; bh=HTpU756JwpvmNMTCPyUXuh2Qpa/4bMT1Du7tontR+t4=; b=A0pK45hIyb0/WC2mLfXZDclFOY vYSeo3bNtuSAKN19j+1y8Ulrkkr+TO2dNjrkURnDjL67pI/zNww2Bmf4lzFBAUuyYZ8sBM+NyCznc 9GDxypVIZ5L238CKFUiALoNaF+7JJgnPZwFg5UxI/w2QPmbf7VjD97MiRcKUCUB+fv5oEQvQ9sGy6 2Y12bvtDiOjrx2978ZFfWi8Ti9Frz7LZ7QJcioy9y+12o7L5Xp6UXFEFoRvBpEf020rmUkGntrv2C j6eGSHwM1p0VL0g0NPHC3SZvRVYuTwIuz95vcQKJBih7o/zKFMngWLokRbcT4wUmQkfBYuFgEuqXF RwLNNeVA==; Received: from mcgrof by bombadil.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1mUyfM-004SUz-Tn; Mon, 27 Sep 2021 22:00:04 +0000 From: Luis Chamberlain To: axboe@kernel.dk, martin.petersen@oracle.com, jejb@linux.ibm.com, kbusch@kernel.org, sagi@grimberg.me, adrian.hunter@intel.com, beanhuo@micron.com, ulf.hansson@linaro.org, avri.altman@wdc.com, swboyd@chromium.org, agk@redhat.com, snitzer@redhat.com, josef@toxicpanda.com Cc: hch@infradead.org, hare@suse.de, bvanassche@acm.org, ming.lei@redhat.com, linux-scsi@vger.kernel.org, linux-nvme@lists.infradead.org, linux-mmc@vger.kernel.org, dm-devel@redhat.com, nbd@other.debian.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, Luis Chamberlain , Christoph Hellwig , Song Liu Subject: [PATCH v4 3/6] md: add error handling support for add_disk() Date: Mon, 27 Sep 2021 14:59:55 -0700 Message-Id: <20210927215958.1062466-4-mcgrof@kernel.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210927215958.1062466-1-mcgrof@kernel.org> References: <20210927215958.1062466-1-mcgrof@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: Luis Chamberlain Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org We never checked for errors on add_disk() as this function returned void. Now that this is fixed, use the shiny new error handling. We just do the unwinding of what was not done before, and are sure to unlock prior to bailing. Reviewed-by: Christoph Hellwig Signed-off-by: Luis Chamberlain Signed-off-by: Song Liu --- drivers/md/md.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/md/md.c b/drivers/md/md.c index 6c0c3d0d905a..6bd5ad3c30b4 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c @@ -5700,7 +5700,11 @@ static int md_alloc(dev_t dev, char *name) disk->flags |= GENHD_FL_EXT_DEVT; disk->events |= DISK_EVENT_MEDIA_CHANGE; mddev->gendisk = disk; - add_disk(disk); + error = add_disk(disk); + if (error) { + blk_cleanup_disk(disk); + goto abort; + } error = kobject_add(&mddev->kobj, &disk_to_dev(disk)->kobj, "%s", "md"); if (error) { -- 2.30.2