aboutsummaryrefslogtreecommitdiff
path: root/drivers/cdx/controller/mcdi.c
diff options
context:
space:
mode:
authorVincenzo Mezzela <[email protected]>2024-07-19 17:13:35 +0200
committerGreg Kroah-Hartman <[email protected]>2024-07-31 13:56:34 +0200
commit1b48fbbc03775bea3264d50cabd9370b1987047b (patch)
tree1f957038edd5f15b348003dc842a24f6a417bfdb /drivers/cdx/controller/mcdi.c
parent30b968b002a92870325a5c9d1ce78eba0ce386e7 (diff)
drivers: cacheinfo: use __free attribute instead of of_node_put()
Introduce the __free attribute for scope-based resource management. Resources allocated with __free are automatically released at the end of the scope. This enhancement aims to mitigate memory management issues associated with forgetting to release resources by utilizing __free instead of of_node_put(). To introduce this feature, some modifications to the code structure were necessary. The original pattern: ``` prev = np; while(...) { [...] np = of_find_next_cache_node(np); of_node_put(prev); prev = np; [...] } ``` has been updated to: ``` while(...) { [...] struct device_node __free(device_node) *prev = np; np = of_find_next_cache_node(np) [...] } ``` With this change, the previous node is automatically cleaned up at the end of each iteration, allowing the elimination of all of_node_put() calls and some goto statements. Suggested-by: Julia Lawall <[email protected]> Signed-off-by: Vincenzo Mezzela <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'drivers/cdx/controller/mcdi.c')
0 files changed, 0 insertions, 0 deletions