diff options
author | Xiongfeng Wang <wangxiongfeng2@huawei.com> | 2022-12-02 21:22:34 +0800 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2022-12-09 18:45:00 +0800 |
commit | 9f6ec8dc574efb7f4f3d7ee9cd59ae307e78f445 (patch) | |
tree | 94b4679d2377ba1b5d3fb23c25d6ba82080a09e1 /drivers/crypto/stm32/stm32-cryp.c | |
parent | ecadb5b0111ea19fc7c240bb25d424a94471eb7d (diff) |
hwrng: geode - Fix PCI device refcount leak
for_each_pci_dev() is implemented by pci_get_device(). The comment of
pci_get_device() says that it will increase the reference count for the
returned pci_dev and also decrease the reference count for the input
pci_dev @from if it is not NULL.
If we break for_each_pci_dev() loop with pdev not NULL, we need to call
pci_dev_put() to decrease the reference count. We add a new struct
'amd_geode_priv' to record pointer of the pci_dev and membase, and then
add missing pci_dev_put() for the normal and error path.
Fixes: ef5d862734b8 ("[PATCH] Add Geode HW RNG driver")
Signed-off-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/stm32/stm32-cryp.c')
0 files changed, 0 insertions, 0 deletions