mbox series

[v3,0/3] Fix NULL pointer dereference in RZ/{G2L,V2M,A2} pinctrl driver

Message ID 20230815131558.33787-1-biju.das.jz@bp.renesas.com (mailing list archive)
Headers show
Series Fix NULL pointer dereference in RZ/{G2L,V2M,A2} pinctrl driver | expand

Message

Biju Das Aug. 15, 2023, 1:15 p.m. UTC
Fix NULL pointer dereference in RZ/{G2L,V2M,A2M} pinctrl driver due to
a race condition during boot. We have seen issues with RZ/{G2L,V2M} boards.
Based on the code, RZ/A2 will also hit this issue. So fixing RZ/A2 aswell.

This issue is reproducible with 1/200 reboots.

v2->v3:
 * Added comments for bitmap_lock and lock.
 * Moved map allocation down to reduce lock section.
 * Added locks for maps and pinctrl group and function creation/remove
   calls
 * Added unlock_and_done label for lock error path.
v1->v2:
 * Updated crash logs as per submitting patches doc.

Biju Das (3):
  pinctrl: renesas: rzg2l: Fix NULL pointer dereference in
    rzg2l_dt_subnode_to_map()
  pinctrl: renesas: rzv2m: Fix NULL pointer dereference in
    rzv2m_dt_subnode_to_map()
  pinctrl: renesas: rza2: Add lock around
    pinctrl_generic{{add,remove}_group,{add,remove}_function}

 drivers/pinctrl/renesas/pinctrl-rza2.c  | 15 ++++++-
 drivers/pinctrl/renesas/pinctrl-rzg2l.c | 58 ++++++++++++++-----------
 drivers/pinctrl/renesas/pinctrl-rzv2m.c | 56 ++++++++++++++----------
 3 files changed, 78 insertions(+), 51 deletions(-)