Re: [PATCH v4a 00/38] timers: Use timer_shutdown*() before freeing timers
"Jason A. Donenfeld" <[email protected]>
| Newsgroups | org.kernel.vger.lvs-devel,dev.linux.lists.bridge,dev.linux.lists.drbd-dev,dev.linux.lists.linux-staging,org.alsa-project.alsa-devel,org.freedesktop.lists.dri-devel,org.freedesktop.lists.intel-gfx,org.kernel.vger.cgroups,org.kernel.vger.linux-acpi,org.kernel.vger.linux-block,org.kernel.vger.linux-bluetooth,org.kernel.vger.linux-doc,org.kernel.vger.linux-edac,org.kernel.vger.linux-ext4,org.kernel.vger.linux-input,org.kernel.vger.linux-kernel,org.kernel.vger.linux-leds,org.kernel.vger.linux-media,org.kernel.vger.linux-nfs,org.kernel.vger.linux-nilfs,org.kernel.vger.linux-parisc,org.kernel.vger.linux-pm,org.kernel.vger.linux-s390,org.kernel.vger.linux-scsi,org.kernel.vger.linux-sh,org.kernel.vger.linux-usb,org.kernel.vger.linux-wireless,org.kernel.vger.netdev,org.kernel.vger.netfilter-devel,org.kernel.vger.rcu,org.osuosl.intel-wired-lan |
|---|---|
| Message-ID | <[email protected]> |
On Sat, Nov 05, 2022 at 12:36:42PM -0400, Steven Rostedt wrote: > ----------------------8<------------------------ > @@ > identifier ptr, timer, rfield, slab; > @@ > ( > - del_timer(&ptr->timer); > + timer_shutdown(&ptr->timer); > | > - del_timer_sync(&ptr->timer); > + timer_shutdown_sync(&ptr->timer); > ) > ... > ( > kfree_rcu(ptr, rfield); > | > kmem_cache_free(slab, ptr); > | > kfree(ptr); > ) > ---------------------->8------------------------ Something that might help here is changing the `...` into `... when exists` or into `... when != ptr` or similar. See this section of the manual: https://coccinelle.gitlabpages.inria.fr/website/docs/main_grammar004.html Jason