- In versalnet_edac, properly release a remote processor reference which was

acquired at probe time, on memory controller instance remove
 
 - A handful of Altera EDAC driver fixes:
 
   - Fix device node reference leaks covering both the success path and the
     various error paths, and route the single-bit setup function through the
     common exit label
 
   - Fix a use-after-free by releasing the devres group before freeing the
     control info structure in the error paths, since managed IRQ handlers
     could reference the freed dci struct if they fire at just the right time
 
   - Fix a memory leak by freeing the allocated control info structure when the
     devres group open fails in the Altera SDMMC setup path
 
   - Remove the __init marking from the Altera Arria10 setup paths and their
     helpers so they remain safely callable at runtime, including after
     deferred or re-triggered probing
 
   - Prevent the Altera driver from being unbound by removing their ->remove
     callbacks and marking them to suppress bind/unbind sysfs attributes, since
     unbinding could erase active system memory
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEzv7L6UO9uDPlPSfHEsHwGGHeVUoFAmrBzj0ACgkQEsHwGGHe
 VUpYCw/+PunHfO7n2E+jDTzJZh74NA6gcjVl9izDghf2MF2RBOMmS1o9swH1FAsJ
 IwOxBkT79xmKBoaSeJ3Ompjm+/aIDZO4INHP1QiSq0f6p/7ilT+QLJwgIGvW9C6l
 ipdYqjPJI1MoOGRQokGPGDkGsANTrO1IlSbI4KI8NQZf67QkKn7SPsf6RlF0DP4O
 XvJL2xLtIVvcRIMcwWUwmkvxrTgyVc9uxKUWdhLhRR6u7ZYMNLHH3BEaVKxr2mo5
 my+eW12hUJIrcSLKR0NOCQYgfiC0gS3hPZRMB3hWMD3YVVxLOzvx3UIF2PIj0PKZ
 xRoGnQXjRd7yHtY1t8Un7OGCnmCcEFuQbP4jDw6HrsrwJlZ8N3R+jciSuhk88FFr
 GKdrvUSAaBoJXpgDVxba7KBkxO/5pi3iSf5yAjbWob/+U6Lm02/7V9GQzk7b802R
 sK7lJo1gqKXA6Yyh7DjT7yWDjAQNDH/Y5gp0EpN67meR9MScTV/3Pe0ZCRYJ81F2
 hrSKS+WuJdBQBxR++QZBEan3PbTKwfdWntQxGwEsf2swyiG4WUn0AwH+P85NUGtx
 EM9HNCHR2PR3jaNP539TDx4YEw186yIKLn1DyCQ6JaUvtRE/eZ/uuSfr5/4aGBVQ
 3gGF+i+xXxGr0UJ6OIZe3vocEt0tU/ecRuA5hNy+7LiFOgaQ0Wg=
 =2r1p
 -----END PGP SIGNATURE-----

Merge tag 'edac_urgent_for_v7.3_rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras

Pull EDAC fixes from Borislav Petkov:
 "This is more of the new normal of LLM-induced fixes of error paths. Oh
  well, they should be done eventually and hopefully we'll be back to
  normal soon-ish... one would hope... :-P

  AMD Versal NET:

   - Properly release a remote processor reference which was acquired at
     probe time, on memory controller instance remove

  A handful of Altera EDAC driver fixes:

   - Fix device node reference leaks covering both the success path and
     the various error paths, and route the single-bit setup function
     through the common exit label

   - Fix a use-after-free by releasing the devres group before freeing
     the control info structure in the error paths, since managed IRQ
     handlers could reference the freed dci struct if they fire at just
     the right time

   - Fix a memory leak by freeing the allocated control info structure
     when the devres group open fails in the Altera SDMMC setup path

   - Remove the __init marking from the Altera Arria10 setup paths and
     their helpers so they remain safely callable at runtime, including
     after deferred or re-triggered probing

   - Prevent the Altera driver from being unbound by removing their
     ->remove callbacks and marking them to suppress bind/unbind sysfs
     attributes, since unbinding could erase active system memory"

* tag 'edac_urgent_for_v7.3_rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
  EDAC/versalnet: Drop remote processor handle refcount on driver removal
  EDAC/altera: Fix device node reference leaks in the SDMMC ECC setup
  EDAC/altera: Fix use-after-free in error paths
  EDAC/altera: Fix memory leak on dci allocation failure
  EDAC/altera: Drop __init from ECC setup paths for re-probe safety
  EDAC/altera: Do not allow driver unbinding
This commit is contained in:
Linus Torvalds 2026-10-03 21:14:25 -07:00
commit 6addb4f385
2 changed files with 36 additions and 32 deletions