linux-watchdog.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/34] watchdog: Convert to platform remove callback returning void
@ 2023-03-03 21:36 Uwe Kleine-König
  2023-03-03 21:36 ` [PATCH 01/34] watchdog: s3c2410: Don't skip cleanup in remove's error path Uwe Kleine-König
                   ` (35 more replies)
  0 siblings, 36 replies; 74+ messages in thread
From: Uwe Kleine-König @ 2023-03-03 21:36 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Wim Van Sebroeck, Guenter Roeck,
	Doug Anderson, Leela Krishna Amudala, Nicolas Ferre,
	Alexandre Belloni, Claudiu Beznea, Florian Fainelli, Ray Jui,
	Scott Branden, Vladimir Zapolskiy, Patrice Chotard,
	Maxime Coquelin, Alexandre Torgue
  Cc: Alim Akhtar, linux-arm-kernel, linux-samsung-soc, linux-watchdog,
	Broadcom internal kernel review list, linux-rpi-kernel,
	linux-stm32, patches, kernel

Hello,

this patch series adapts the platform drivers below drivers/watchdog to
use the .remove_new() callback. Compared to the traditional .remove()
callback .remove_new() returns no value. This is a good thing because
the driver core doesn't (and cannot) cope for errors during remove. The
only effect of a non-zero return value in .remove() is that the driver
core emits a warning. The device is removed anyhow and an early return
from .remove() usually yields a resource leak. One driver suffering from
this problem (s3c2410) is fixed by the first patch.

By changing the remove callback to return void driver authors cannot
reasonably (but wrongly) assume any more that there happens some kind of
cleanup later.

All watchdog drivers but the above mentioned one returned zero
unconditionally in their remove callback, so they could all be converted
trivially to .remove_new().

Note that this series depends on commit 5c5a7680e67b ("platform: Provide
a remove callback that returns no value") that is already in Linus' tree
but not yet included in a tagged version.

Best regards
Uwe

Uwe Kleine-König (34):
  watchdog: s3c2410: Don't skip cleanup in remove's error path
  watchdog: acquirewdt: Convert to platform remove callback returning void
  watchdog: advantechwdt: Convert to platform remove callback returning void
  watchdog: ar7: Convert to platform remove callback returning void
  watchdog: at91rm9200: Convert to platform remove callback returning void
  watchdog: ath79: Convert to platform remove callback returning void
  watchdog: bcm2835: Convert to platform remove callback returning void
  watchdog: bcm47xx: Convert to platform remove callback returning void
  watchdog: bcm_kona: Convert to platform remove callback returning void
  watchdog: cpwd: Convert to platform remove callback returning void
  watchdog: dw: Convert to platform remove callback returning void
  watchdog: gef: Convert to platform remove callback returning void
  watchdog: geodewdt: Convert to platform remove callback returning void
  watchdog: ib700wdt: Convert to platform remove callback returning void
  watchdog: ie6xx: Convert to platform remove callback returning void
  watchdog: lpc18xx: Convert to platform remove callback returning void
  watchdog: mtx-1: Convert to platform remove callback returning void
  watchdog: nic7018: Convert to platform remove callback returning void
  watchdog: nv_tco: Convert to platform remove callback returning void
  watchdog: omap: Convert to platform remove callback returning void
  watchdog: orion: Convert to platform remove callback returning void
  watchdog: rc32434: Convert to platform remove callback returning void
  watchdog: rdc321x: Convert to platform remove callback returning void
  watchdog: renesas: Convert to platform remove callback returning void
  watchdog: riowd: Convert to platform remove callback returning void
  watchdog: rn5t618: Convert to platform remove callback returning void
  watchdog: rti: Convert to platform remove callback returning void
  watchdog: s3c2410: Convert to platform remove callback returning void
  watchdog: sa1100: Convert to platform remove callback returning void
  watchdog: sch311x: Convert to platform remove callback returning void
  watchdog: shwdt: Convert to platform remove callback returning void
  watchdog: st_lpc: Convert to platform remove callback returning void
  watchdog: stmp3xxx_rtc: Convert to platform remove callback returning void
  watchdog: wm8350: Convert to platform remove callback returning void

 drivers/watchdog/acquirewdt.c       | 6 ++----
 drivers/watchdog/advantechwdt.c     | 6 ++----
 drivers/watchdog/ar7_wdt.c          | 5 ++---
 drivers/watchdog/at91rm9200_wdt.c   | 6 ++----
 drivers/watchdog/ath79_wdt.c        | 5 ++---
 drivers/watchdog/bcm2835_wdt.c      | 6 ++----
 drivers/watchdog/bcm47xx_wdt.c      | 6 ++----
 drivers/watchdog/bcm_kona_wdt.c     | 6 ++----
 drivers/watchdog/cpwd.c             | 6 ++----
 drivers/watchdog/dw_wdt.c           | 6 ++----
 drivers/watchdog/gef_wdt.c          | 6 ++----
 drivers/watchdog/geodewdt.c         | 5 ++---
 drivers/watchdog/ib700wdt.c         | 5 ++---
 drivers/watchdog/ie6xx_wdt.c        | 6 ++----
 drivers/watchdog/lpc18xx_wdt.c      | 6 ++----
 drivers/watchdog/mtx-1_wdt.c        | 5 ++---
 drivers/watchdog/nic7018_wdt.c      | 6 ++----
 drivers/watchdog/nv_tco.c           | 6 ++----
 drivers/watchdog/omap_wdt.c         | 6 ++----
 drivers/watchdog/orion_wdt.c        | 5 ++---
 drivers/watchdog/rc32434_wdt.c      | 5 ++---
 drivers/watchdog/rdc321x_wdt.c      | 6 ++----
 drivers/watchdog/renesas_wdt.c      | 6 ++----
 drivers/watchdog/riowd.c            | 6 ++----
 drivers/watchdog/rn5t618_wdt.c      | 6 ++----
 drivers/watchdog/rti_wdt.c          | 6 ++----
 drivers/watchdog/s3c2410_wdt.c      | 9 ++++-----
 drivers/watchdog/sa1100_wdt.c       | 6 ++----
 drivers/watchdog/sch311x_wdt.c      | 5 ++---
 drivers/watchdog/shwdt.c            | 6 ++----
 drivers/watchdog/st_lpc_wdt.c       | 6 ++----
 drivers/watchdog/stmp3xxx_rtc_wdt.c | 5 ++---
 drivers/watchdog/wm8350_wdt.c       | 5 ++---
 33 files changed, 68 insertions(+), 123 deletions(-)

base-commit: 2eb29d59ddf02e39774abfb60b2030b0b7e27c1f
-- 
2.39.1


^ permalink raw reply	[flat|nested] 74+ messages in thread

end of thread, other threads:[~2023-03-14  8:39 UTC | newest]

Thread overview: 74+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-03 21:36 [PATCH 00/34] watchdog: Convert to platform remove callback returning void Uwe Kleine-König
2023-03-03 21:36 ` [PATCH 01/34] watchdog: s3c2410: Don't skip cleanup in remove's error path Uwe Kleine-König
2023-03-04 16:58   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 02/34] watchdog: acquirewdt: Convert to platform remove callback returning void Uwe Kleine-König
2023-03-04 17:02   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 03/34] watchdog: advantechwdt: " Uwe Kleine-König
2023-03-04 17:02   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 04/34] watchdog: ar7: " Uwe Kleine-König
2023-03-04 17:02   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 05/34] watchdog: at91rm9200: " Uwe Kleine-König
2023-03-04 17:02   ` Guenter Roeck
2023-03-06 11:55   ` Claudiu.Beznea
2023-03-03 21:36 ` [PATCH 06/34] watchdog: ath79: " Uwe Kleine-König
2023-03-04 17:02   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 07/34] watchdog: bcm2835: " Uwe Kleine-König
2023-03-03 21:38   ` Florian Fainelli
2023-03-04 17:04   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 08/34] watchdog: bcm47xx: " Uwe Kleine-König
2023-03-04 17:01   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 09/34] watchdog: bcm_kona: " Uwe Kleine-König
2023-03-03 21:39   ` Florian Fainelli
2023-03-04 17:05   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 10/34] watchdog: cpwd: " Uwe Kleine-König
2023-03-04 17:05   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 11/34] watchdog: dw: " Uwe Kleine-König
2023-03-04 17:06   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 12/34] watchdog: gef: " Uwe Kleine-König
2023-03-04 17:06   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 13/34] watchdog: geodewdt: " Uwe Kleine-König
2023-03-04 17:07   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 14/34] watchdog: ib700wdt: " Uwe Kleine-König
2023-03-04 17:07   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 15/34] watchdog: ie6xx: " Uwe Kleine-König
2023-03-04 17:07   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 16/34] watchdog: lpc18xx: " Uwe Kleine-König
2023-03-04 17:08   ` Guenter Roeck
2023-03-03 21:36 ` [PATCH 17/34] watchdog: mtx-1: " Uwe Kleine-König
2023-03-04 17:09   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 18/34] watchdog: nic7018: " Uwe Kleine-König
2023-03-04 17:09   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 19/34] watchdog: nv_tco: " Uwe Kleine-König
2023-03-04 17:09   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 20/34] watchdog: omap: " Uwe Kleine-König
2023-03-04 17:09   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 21/34] watchdog: orion: " Uwe Kleine-König
2023-03-04 17:10   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 22/34] watchdog: rc32434: " Uwe Kleine-König
2023-03-04 17:10   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 23/34] watchdog: rdc321x: " Uwe Kleine-König
2023-03-04 17:10   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 24/34] watchdog: renesas: " Uwe Kleine-König
2023-03-04 17:10   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 25/34] watchdog: riowd: " Uwe Kleine-König
2023-03-04 17:10   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 26/34] watchdog: rn5t618: " Uwe Kleine-König
2023-03-04 17:12   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 27/34] watchdog: rti: " Uwe Kleine-König
2023-03-04 17:12   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 28/34] watchdog: s3c2410: " Uwe Kleine-König
2023-03-04 17:12   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 29/34] watchdog: sa1100: " Uwe Kleine-König
2023-03-04 17:13   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 30/34] watchdog: sch311x: " Uwe Kleine-König
2023-03-04 17:13   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 31/34] watchdog: shwdt: " Uwe Kleine-König
2023-03-04 17:13   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 32/34] watchdog: st_lpc: " Uwe Kleine-König
2023-03-04 17:13   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 33/34] watchdog: stmp3xxx_rtc: " Uwe Kleine-König
2023-03-04 17:14   ` Guenter Roeck
2023-03-03 21:37 ` [PATCH 34/34] watchdog: wm8350: " Uwe Kleine-König
2023-03-04 17:14   ` Guenter Roeck
2023-03-06 17:05 ` [PATCH 00/34] watchdog: " Uwe Kleine-König
2023-03-14  8:38 ` Naresh Kamboju

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).