All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
To: Miquel Raynal <miquel.raynal@bootlin.com>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>,
	Vignesh Raghavendra <vigneshr@ti.com>,
	Tudor Ambarus <tudor.ambarus@microchip.com>,
	Richard Weinberger <richard@nod.at>,
	Nicolas Ferre <nicolas.ferre@microchip.com>,
	linux-mtd@lists.infradead.org, kernel@pengutronix.de,
	Claudiu Beznea <claudiu.beznea@microchip.com>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 08/14] mtd: rawnand: atmel: Warn about failure to unregister mtd device
Date: Mon, 6 Jun 2022 21:37:21 +0200	[thread overview]
Message-ID: <20220606193721.w2cjrnhtsvrkvumf@pengutronix.de> (raw)
In-Reply-To: <20220606151620.0282cece@xps-13>


[-- Attachment #1.1: Type: text/plain, Size: 1591 bytes --]

On Mon, Jun 06, 2022 at 03:16:20PM +0200, Miquel Raynal wrote:
> Hi Uwe,
> 
> u.kleine-koenig@pengutronix.de wrote on Fri,  3 Jun 2022 23:07:52 +0200:
> 
> > The Linux device core doesn't intend remove callbacks to fail. If an
> > error code is returned the device is removed anyhow. So wail loudly if
> > the atmel specific remove callback fails and return 0 anyhow to suppress
> > the generic (and little helpful) error message by the device core.
> > 
> > Also check the remove callback to actually exist before calling it. That
> > might happen if nc->caps->ops points to atmel_nand_controller_ops.
> 
> I believe you got mislead by grepping the code because there is:
> 
> * struct nand_controller_ops atmel_nand_controller_ops
>   -> this is a NAND-wide controller ops structure
> 
> * struct atmel_nand_controller_ops atmel_<smtg>_nc_ops
>   -> this is a driver specific structure to provide different
>      registration helpers.
> 
> The latter always provide a probe and a remove implementation, so I
> believe the addition if the "if (nc->caps->ops->remove)" check is not
> relevant, unless I missed something.

You're right. I assume it's easiest for you if I send a v2 with all 14
patches? If you consider this a waste of bytes, please advise. The
patches are independant, so it would work if you pick up 1-7 + 9-14,
too. Then I'd resend a fixed patch 8 individually.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | https://www.pengutronix.de/ |

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

[-- Attachment #2: Type: text/plain, Size: 144 bytes --]

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

WARNING: multiple messages have this Message-ID (diff)
From: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
To: Miquel Raynal <miquel.raynal@bootlin.com>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>,
	Vignesh Raghavendra <vigneshr@ti.com>,
	Tudor Ambarus <tudor.ambarus@microchip.com>,
	Richard Weinberger <richard@nod.at>,
	linux-mtd@lists.infradead.org, kernel@pengutronix.de,
	Claudiu Beznea <claudiu.beznea@microchip.com>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 08/14] mtd: rawnand: atmel: Warn about failure to unregister mtd device
Date: Mon, 6 Jun 2022 21:37:21 +0200	[thread overview]
Message-ID: <20220606193721.w2cjrnhtsvrkvumf@pengutronix.de> (raw)
In-Reply-To: <20220606151620.0282cece@xps-13>


[-- Attachment #1.1: Type: text/plain, Size: 1591 bytes --]

On Mon, Jun 06, 2022 at 03:16:20PM +0200, Miquel Raynal wrote:
> Hi Uwe,
> 
> u.kleine-koenig@pengutronix.de wrote on Fri,  3 Jun 2022 23:07:52 +0200:
> 
> > The Linux device core doesn't intend remove callbacks to fail. If an
> > error code is returned the device is removed anyhow. So wail loudly if
> > the atmel specific remove callback fails and return 0 anyhow to suppress
> > the generic (and little helpful) error message by the device core.
> > 
> > Also check the remove callback to actually exist before calling it. That
> > might happen if nc->caps->ops points to atmel_nand_controller_ops.
> 
> I believe you got mislead by grepping the code because there is:
> 
> * struct nand_controller_ops atmel_nand_controller_ops
>   -> this is a NAND-wide controller ops structure
> 
> * struct atmel_nand_controller_ops atmel_<smtg>_nc_ops
>   -> this is a driver specific structure to provide different
>      registration helpers.
> 
> The latter always provide a probe and a remove implementation, so I
> believe the addition if the "if (nc->caps->ops->remove)" check is not
> relevant, unless I missed something.

You're right. I assume it's easiest for you if I send a v2 with all 14
patches? If you consider this a waste of bytes, please advise. The
patches are independant, so it would work if you pick up 1-7 + 9-14,
too. Then I'd resend a fixed patch 8 individually.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | https://www.pengutronix.de/ |

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-06-06 19:38 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-03 21:07 [PATCH 00/14] mtd: Fix platform remove callbacks to always return 0 Uwe Kleine-König
2022-06-03 21:07 ` Uwe Kleine-König
2022-06-03 21:07 ` Uwe Kleine-König
2022-06-03 21:07 ` Uwe Kleine-König
2022-06-03 21:07 ` Uwe Kleine-König
2022-06-03 21:07 ` [PATCH 01/14] mtd: hyperbus: Make hyperbus_unregister_device() return void Uwe Kleine-König
2022-06-09 13:10   ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 02/14] mtd: spi-nor: aspeed-smc: Make aspeed_smc_unregister() " Uwe Kleine-König
2022-06-03 21:07   ` Uwe Kleine-König
2022-06-07  9:28   ` Pratyush Yadav
2022-06-07  9:28     ` Pratyush Yadav
2022-06-07  9:54     ` Cédric Le Goater
2022-06-07  9:54       ` Cédric Le Goater
2022-06-03 21:07 ` [PATCH 03/14] mtd: powernv_flash: Warn about failure to unregister mtd device Uwe Kleine-König
2022-06-03 21:07   ` Uwe Kleine-König
2022-06-09 13:09   ` Miquel Raynal
2022-06-09 13:09     ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 04/14] mtd: st-spi_fsm: " Uwe Kleine-König
2022-06-03 21:07 ` [PATCH 05/14] mtd: lpddr2_nvm: " Uwe Kleine-König
2022-06-09 13:09   ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 06/14] mtd: spear_smi: Don't skip cleanup after mtd_device_unregister() failed Uwe Kleine-König
2022-06-09 13:09   ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 07/14] mtd: spear_smi: Drop if with an always false condition Uwe Kleine-König
2022-06-09 13:09   ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 08/14] mtd: rawnand: atmel: Warn about failure to unregister mtd device Uwe Kleine-König
2022-06-03 21:07   ` Uwe Kleine-König
2022-06-06 13:16   ` Miquel Raynal
2022-06-06 13:16     ` Miquel Raynal
2022-06-06 19:37     ` Uwe Kleine-König [this message]
2022-06-06 19:37       ` Uwe Kleine-König
2022-06-07  6:14       ` Miquel Raynal
2022-06-07  6:14         ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 09/14] mtd: rawnand: omap2: Suppress error message after WARN in .remove() Uwe Kleine-König
2022-06-09 13:09   ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 10/14] mtd: rawnand: tegra: Don't skip cleanup after mtd_device_unregister() failed Uwe Kleine-König
2022-06-03 21:07   ` Uwe Kleine-König
2022-06-09 13:09   ` Miquel Raynal
2022-06-09 13:09     ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 11/14] mtd: rawnand: meson: " Uwe Kleine-König
2022-06-03 21:07   ` Uwe Kleine-König
2022-06-03 21:07   ` Uwe Kleine-König
2022-06-09 13:09   ` Miquel Raynal
2022-06-09 13:09     ` Miquel Raynal
2022-06-09 13:09     ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 12/14] mtd: rawnand: meson: Drop cleaning platform data in .remove() Uwe Kleine-König
2022-06-03 21:07   ` Uwe Kleine-König
2022-06-03 21:07   ` Uwe Kleine-König
2022-06-09 13:09   ` Miquel Raynal
2022-06-09 13:09     ` Miquel Raynal
2022-06-09 13:09     ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 13/14] mtd: physmap: Don't skip cleanup after mtd_device_unregister() failed Uwe Kleine-König
2022-06-09 13:09   ` Miquel Raynal
2022-06-03 21:07 ` [PATCH 14/14] mtd: physmap: Drop if with an always false condition Uwe Kleine-König
2022-06-09 13:09   ` Miquel Raynal
2022-06-06 13:18 ` [PATCH 00/14] mtd: Fix platform remove callbacks to always return 0 Miquel Raynal
2022-06-06 13:18   ` Miquel Raynal
2022-06-06 13:18   ` Miquel Raynal
2022-06-06 13:18   ` Miquel Raynal
2022-06-06 13:18   ` Miquel Raynal
2022-06-07  9:32   ` Pratyush Yadav
2022-06-07  9:32     ` Pratyush Yadav
2022-06-07  9:32     ` Pratyush Yadav
2022-06-07  9:32     ` Pratyush Yadav
2022-06-07  9:32     ` Pratyush Yadav
2022-06-07 10:47     ` Miquel Raynal
2022-06-07 10:47       ` Miquel Raynal
2022-06-07 10:47       ` Miquel Raynal
2022-06-07 10:47       ` Miquel Raynal
2022-06-07 10:47       ` Miquel Raynal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220606193721.w2cjrnhtsvrkvumf@pengutronix.de \
    --to=u.kleine-koenig@pengutronix.de \
    --cc=alexandre.belloni@bootlin.com \
    --cc=claudiu.beznea@microchip.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=miquel.raynal@bootlin.com \
    --cc=nicolas.ferre@microchip.com \
    --cc=richard@nod.at \
    --cc=tudor.ambarus@microchip.com \
    --cc=vigneshr@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.