Re: [PATCH v4a 00/38] timers: Use timer_shutdown*() before freeing timers
From: Linus Torvalds
Date: Sat Nov 05 2022 - 17:14:14 EST
On Sat, Nov 5, 2022 at 2:03 PM Jason A. Donenfeld <Jason@xxxxxxxxx> wrote:
>
> Something that might help here is changing the `...` into
> `... when exists` or into `... when != ptr` or similar.
I actually tried that.
You don't want "when exists", you'd want "when forall", but that seems
to be the default.
And trying "when != ptr->timer" actually does the right thing in that
it gets rid of the case where the timer is modified outside of the
del_timer() case, *but* it also causes odd other changes to the
output.
Look at what it generates for that
drivers/media/usb/pvrusb2/pvrusb2-hdw.c
file, which finds a lot of triggers with the "when != ptr->timer",
but only does one without it.
So I gave up, just because I clearly don't understand the rules.
(Comparing output is also fun because the ordering of the patches is
random, so consecutive runs with the same rule will give different
patches. I assume that it's just because it's done in parallel, but it
doesn't help the "try to see what changes when you change the script"
;)
Linus