diff options
author | Liang He <windhl@126.com> | 2022-07-19 17:10:51 +0800 |
---|---|---|
committer | Ulf Hansson <ulf.hansson@linaro.org> | 2022-07-21 18:02:41 +0200 |
commit | 883c1d6fa4368a63cae2d6ae2d9c91141c60e233 (patch) | |
tree | 62ad28fb08ec5584f37cfb9b73139c505eb1dbf8 /drivers/mmc | |
parent | 886201c70a1cab34ef96f867c2b2dd6379ffa7b9 (diff) | |
download | linux-883c1d6fa4368a63cae2d6ae2d9c91141c60e233.tar.gz linux-883c1d6fa4368a63cae2d6ae2d9c91141c60e233.tar.bz2 linux-883c1d6fa4368a63cae2d6ae2d9c91141c60e233.zip |
mmc: core: quirks: Add of_node_put() when breaking out of loop
In mmc_fixup_of_compatible_match(), we should call of_node_put()
when breaking out of for_each_child_of_node() which will increase
and decrease the refcount during one iteration.
Fixes: b360b1102670 ("mmc: core: allow to match the device tree to apply quirks")
Signed-off-by: Liang He <windhl@126.com>
Link: https://lore.kernel.org/r/20220719091051.1210806-1-windhl@126.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/core/quirks.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/mmc/core/quirks.h b/drivers/mmc/core/quirks.h index f879dc63d936..be4393988086 100644 --- a/drivers/mmc/core/quirks.h +++ b/drivers/mmc/core/quirks.h @@ -163,8 +163,10 @@ static inline bool mmc_fixup_of_compatible_match(struct mmc_card *card, struct device_node *np; for_each_child_of_node(mmc_dev(card->host)->of_node, np) { - if (of_device_is_compatible(np, compatible)) + if (of_device_is_compatible(np, compatible)) { + of_node_put(np); return true; + } } return false; |