Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp5575920pxb; Sun, 7 Nov 2021 15:33:27 -0800 (PST) X-Google-Smtp-Source: ABdhPJzPQ3lyH8Btk4FNhlXuUt93yHgVLOVsSvC7RWHjFjh220ROo4FAY1Lh2dPlM89hXu2r/CdP X-Received: by 2002:a17:907:1c15:: with SMTP id nc21mr78125523ejc.260.1636328006833; Sun, 07 Nov 2021 15:33:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1636328006; cv=none; d=google.com; s=arc-20160816; b=KoAT4rhp9uS+mJktoaPg5u3PaFymnCDSUw9Nezdr44253OwcjvSPdqEeQFZukFNboJ 6yjPaM7S8Zm6L0PlUp3y/GG8M2WqyzsdBFB41K9cGo+qQC7GdOx5QY3enFdAMtaUC69+ AQyOwDDlD8RSWgWJU3EckjT4WiHCDVZmqu40Q3eWHFNBFYxFg8bXvKD4tnn2iDJcR2v7 Hgo7RQwfrVCrE3wyvlHKIFy19Yq/zjM4VSK0yEKkfqzgs7YQZP627OSg9S8SgZhgglGS iKEdudC4NTzFfK7Uc7nRa8oX9daxJZov466kR32ExXPMXnKzJAB7+bxbTMXM5FEjntHL +0kA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=dhhxLhr3MT6ioM/NuOOgmVWVijZ5GSU5baah7cfylo8=; b=hEJwUe0F+aZztoiT15SjTp9TM9uUYvsURw62p0DgmbT0FqHSX1QDPnicRHZbvHPz6Q yw0aYdbkmzQbUiRfAEeZj2crnL5OmJiQJ4DR46R3V6aECre6DW52x3JXi3AqFSh2HDL6 xZ+kM9eLu0uA0i1iI4IexfdpQjEc9N6wTAURmCn2BYufmh0ESkySTRI6YoXswWiXWqJJ sm5xjhFA1L53rYIskE6uYdyZelsIQWgdCQobsH+dYL1tIr3uuwplyppisEa4eKb8/lwb 3HDXK/aWN44oTQY8eg8ZlAx5F7ggxEdTSjuERKYhJUVJM3TG9dB9UAoCuRfZixff1mbu hxKg== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id qb35si28733633ejc.667.2021.11.07.15.32.48; Sun, 07 Nov 2021 15:33:26 -0800 (PST) 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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234597AbhKGROm (ORCPT + 99 others); Sun, 7 Nov 2021 12:14:42 -0500 Received: from mga04.intel.com ([192.55.52.120]:41072 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229985AbhKGROl (ORCPT ); Sun, 7 Nov 2021 12:14:41 -0500 X-IronPort-AV: E=McAfee;i="6200,9189,10161"; a="230834401" X-IronPort-AV: E=Sophos;i="5.87,216,1631602800"; d="scan'208";a="230834401" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Nov 2021 09:11:58 -0800 X-IronPort-AV: E=Sophos;i="5.87,216,1631602800"; d="scan'208";a="502693291" Received: from iweiny-desk2.sc.intel.com (HELO localhost) ([10.3.52.147]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Nov 2021 09:11:57 -0800 Date: Sun, 7 Nov 2021 09:11:57 -0800 From: Ira Weiny To: Christophe JAILLET Cc: dan.j.williams@intel.com, vishal.l.verma@intel.com, dave.jiang@intel.com, nvdimm@lists.linux.dev, linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org Subject: Re: [PATCH] nvdimm/pmem: Fix an error handling path in 'pmem_attach_disk()' Message-ID: <20211107171157.GC3538886@iweiny-DESK2.sc.intel.com> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.11.1 (2018-12-01) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Nov 06, 2021 at 06:27:11PM +0100, Christophe JAILLET wrote: > If 'devm_init_badblocks()' fails, a previous 'blk_alloc_disk()' call must > be undone. I think this is a problem... > > Signed-off-by: Christophe JAILLET > --- > This patch is speculative. Several fixes on error handling paths have been > done recently, but this one has been left as-is. There was maybe a good > reason that I have missed for that. So review with care! > > I've not been able to identify a Fixes tag that please me :( > --- > drivers/nvdimm/pmem.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/nvdimm/pmem.c b/drivers/nvdimm/pmem.c > index fe7ece1534e1..c37a1e6750b3 100644 > --- a/drivers/nvdimm/pmem.c > +++ b/drivers/nvdimm/pmem.c > @@ -490,8 +490,9 @@ static int pmem_attach_disk(struct device *dev, > nvdimm_namespace_disk_name(ndns, disk->disk_name); > set_capacity(disk, (pmem->size - pmem->pfn_pad - pmem->data_offset) > / 512); > - if (devm_init_badblocks(dev, &pmem->bb)) > - return -ENOMEM; > + rc = devm_init_badblocks(dev, &pmem->bb); > + if (rc) > + goto out; But I don't see this 'out' label in the function currently? Was that part of your patch missing? Ira > nvdimm_badblocks_populate(nd_region, &pmem->bb, &bb_range); > disk->bb = &pmem->bb; > > -- > 2.30.2 >