On Wed, Nov 15, 2023 at 11:28 AM Maria Yu <quic_aiquny@xxxxxxxxxxx> wrote: > When in the list_for_each_entry iteration, reload of p->state->settings > with a local setting from old_state will makes the list iteration in a > infinite loop. > The typical issue happened, it will frequently have printk message like: > "not freeing pin xx (xxx) as part of deactivating group xxx - it is > already used for some other setting". > This is a compiler-dependent problem, one instance was got using Clang > version 10.0 plus arm64 architecture with linux version 4.19. > > Fixes: 6e5e959dde0d ("pinctrl: API changes to support multiple states per device") > Signed-off-by: Maria Yu <quic_aiquny@xxxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx Patch applied, I edited the commit message a bit. Thanks a lot for finding this tricky bug! Yours, Linus Walleij