Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

kernel/resource: simplify API __devm_release_region() implementation

Simplify __devm_release_region() implementation by dedicated API
devres_release() which have below advantages than current
__release_region() + devres_destroy():

It is simpler if __devm_release_region() is undoing what
__devm_request_region() did, otherwise, it can avoid wrong and undesired
__release_region().

Link: https://lkml.kernel.org/r/20241017-release_region_fix-v1-1-84a3e8441284@quicinc.com
Signed-off-by: Zijun Hu <quic_zijuhu@quicinc.com>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Cc: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

authored by

Zijun Hu and committed by
Andrew Morton
1e185723 79ada2ae

+1 -2
+1 -2
kernel/resource.c
··· 1683 1683 { 1684 1684 struct region_devres match_data = { parent, start, n }; 1685 1685 1686 - __release_region(parent, start, n); 1687 - WARN_ON(devres_destroy(dev, devm_region_release, devm_region_match, 1686 + WARN_ON(devres_release(dev, devm_region_release, devm_region_match, 1688 1687 &match_data)); 1689 1688 } 1690 1689 EXPORT_SYMBOL(__devm_release_region);