Thread (21 messages) 21 messages, 5 authors, 2022-11-07

Re: [PATCH v4a 00/38] timers: Use timer_shutdown*() before freeing timers

From: Steven Rostedt <rostedt@goodmis.org>
Date: 2022-11-05 17:53:49
Also in: alsa-devel, bridge, cgroups, dri-devel, intel-gfx, intel-wired-lan, linux-acpi, linux-block, linux-bluetooth, linux-doc, linux-edac, linux-ext4, linux-input, linux-leds, linux-media, linux-nfs, linux-pm, linux-s390, linux-scsi, linux-sh, linux-staging, linux-usb, linux-wireless, lkml, lvs-devel, netfilter-devel, rcu
Subsystem: the rest · Maintainer: Linus Torvalds

On Sat, 5 Nov 2022 08:59:36 -0700
Linus Torvalds [off-list ref] 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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help