Re: [PATCH 06/10] mmc/core/block: add error handling support for add_disk()
- To: Luis Chamberlain <mcgrof@kernel.org>
- Cc: Christoph Hellwig <hch@infradead.org>, 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, 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
- Subject: Re: [PATCH 06/10] mmc/core/block: add error handling support for add_disk()
- From: Christoph Hellwig <hch@infradead.org>
- Date: Sat, 28 Aug 2021 08:32:11 +0100
- Message-id: <YSnme1mfHS/HCguW@infradead.org>
- In-reply-to: <YSkyHINtV/djFEej@bombadil.infradead.org>
- References: <20210823202930.137278-1-mcgrof@kernel.org> <20210823202930.137278-7-mcgrof@kernel.org> <[🔎] YSSN+eac2aCFXTAA@infradead.org> <YSkyHINtV/djFEej@bombadil.infradead.org>
On Fri, Aug 27, 2021 at 11:42:36AM -0700, Luis Chamberlain wrote:
> > > if (area_type == MMC_BLK_DATA_AREA_MAIN)
> > > dev_set_drvdata(&card->dev, md);
> > > - device_add_disk(md->parent, md->disk, mmc_disk_attr_groups);
> > > + ret = device_add_disk(md->parent, md->disk, mmc_disk_attr_groups);
> > > + if (ret)
> > > + goto out;
> >
> > This needs to do a blk_cleanup_queue and also te kfree of md.
>
> If mmc_blk_alloc_parts() fails mmc_blk_remove_req() is called which
> does both for us?
Yes, but only for the main gendisk, and those parts already added to
the list which happens after device_add_disk succeeded.
Reply to: