On Sat, Nov 5, 2022 at 2:03 PM Jason A. Donenfeld Jason@zx2c4.com 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