diff options
author | Xiongfeng Wang <wangxiongfeng2@huawei.com> | 2022-11-18 09:31:35 +0300 |
---|---|---|
committer | Peter Zijlstra <peterz@infradead.org> | 2022-11-24 13:09:25 +0300 |
commit | 1ff9dd6e7071a561f803135c1d684b13c7a7d01d (patch) | |
tree | dd73ad62ba4f02916ffe2bd65e1915a109b07234 | |
parent | c508eb042d9739bf9473526f53303721b70e9100 (diff) | |
download | linux-1ff9dd6e7071a561f803135c1d684b13c7a7d01d.tar.xz |
perf/x86/intel/uncore: Fix reference count leak in hswep_has_limit_sbox()
pci_get_device() will increase the reference count for the returned
'dev'. We need to call pci_dev_put() to decrease the reference count.
Since 'dev' is only used in pci_read_config_dword(), let's add
pci_dev_put() right after it.
Fixes: 9d480158ee86 ("perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3")
Signed-off-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Kan Liang <kan.liang@linux.intel.com>
Link: https://lore.kernel.org/r/20221118063137.121512-3-wangxiongfeng2@huawei.com
-rw-r--r-- | arch/x86/events/intel/uncore_snbep.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/events/intel/uncore_snbep.c b/arch/x86/events/intel/uncore_snbep.c index b14d59183516..93b0f1f4d0d1 100644 --- a/arch/x86/events/intel/uncore_snbep.c +++ b/arch/x86/events/intel/uncore_snbep.c @@ -2910,6 +2910,7 @@ static bool hswep_has_limit_sbox(unsigned int device) return false; pci_read_config_dword(dev, HSWEP_PCU_CAPID4_OFFET, &capid4); + pci_dev_put(dev); if (!hswep_get_chop(capid4)) return true; |