[Drbd-dev] [PATCH v4a 00/38] timers: Use timer_shutdown*() before freeing timers
Steven Rostedt
rostedt at goodmis.org
Sat Nov 5 18:53:38 CET 2022
On Sat, 5 Nov 2022 08:59:36 -0700
Linus Torvalds <torvalds at linux-foundation.org> wrote:
> Others in the series were *definitely* not scripted, doing clearly
> manual cleanups:
>
> - if (dch->timer.function) {
> - del_timer(&dch->timer);
> - dch->timer.function = NULL;
> - }
> + timer_shutdown(&dch->timer);
>
> so no, this does *not* make me feel "ok, this is all trivial".
I just ran the script and the above code turned to:
diff --git a/drivers/isdn/hardware/mISDN/hfcmulti.c b/drivers/isdn/hardware/mISDN/hfcmulti.c
index 4f7eaa17fb27..2695bbde52db 100644
--- a/drivers/isdn/hardware/mISDN/hfcmulti.c
+++ b/drivers/isdn/hardware/mISDN/hfcmulti.c
@@ -4544,7 +4544,7 @@ release_port(struct hfc_multi *hc, struct dchannel *dch)
spin_lock_irqsave(&hc->lock, flags);
if (dch->timer.function) {
- del_timer(&dch->timer);
+ timer_shutdown(&dch->timer);
dch->timer.function = NULL;
}
Which is silly. Because timer_shutdown() makes timer.function = NULL.
That's why I changed it. And it really shouldn't be touching
timer.function anyway.
-- Steve
More information about the drbd-dev
mailing list