Re: [PATCH 06/10] mmc/core/block: add error handling support for add_disk()
- To: Luis Chamberlain <mcgrof@kernel.org>
- Cc: 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, 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
- Subject: Re: [PATCH 06/10] mmc/core/block: add error handling support for add_disk()
- From: Christoph Hellwig <hch@infradead.org>
- Date: Tue, 24 Aug 2021 07:13:13 +0100
- Message-id: <[🔎] YSSN+eac2aCFXTAA@infradead.org>
- In-reply-to: <20210823202930.137278-7-mcgrof@kernel.org>
- References: <20210823202930.137278-1-mcgrof@kernel.org> <20210823202930.137278-7-mcgrof@kernel.org>
On Mon, Aug 23, 2021 at 01:29:26PM -0700, Luis Chamberlain wrote:
> We never checked for errors on add_disk() as this function
> returned void. Now that this is fixed, use the shiny new
> error handling.
>
> The caller cleanups the disk already so all we need to do
> is just pass along the return value.
>
> Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
> ---
> drivers/mmc/core/block.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mmc/core/block.c b/drivers/mmc/core/block.c
> index 4c11f171e56d..4f12c6d1e1b5 100644
> --- a/drivers/mmc/core/block.c
> +++ b/drivers/mmc/core/block.c
> @@ -2432,7 +2432,9 @@ static struct mmc_blk_data *mmc_blk_alloc_req(struct mmc_card *card,
> /* used in ->open, must be set before add_disk: */
> 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.
Reply to: