.. | .. |
---|
1274 | 1274 | /* MCHBAR is disabled */ |
---|
1275 | 1275 | if (!(mch_bar & BIT(0))) { |
---|
1276 | 1276 | pr_warn("perf uncore: MCHBAR is disabled. Failed to map IMC free-running counters.\n"); |
---|
| 1277 | + pci_dev_put(pdev); |
---|
1277 | 1278 | return; |
---|
1278 | 1279 | } |
---|
1279 | 1280 | mch_bar &= ~BIT(0); |
---|
.. | .. |
---|
1287 | 1288 | box->io_addr = ioremap(addr, type->mmio_map_size); |
---|
1288 | 1289 | if (!box->io_addr) |
---|
1289 | 1290 | pr_warn("perf uncore: Failed to ioremap for %s.\n", type->name); |
---|
| 1291 | + |
---|
| 1292 | + pci_dev_put(pdev); |
---|
1290 | 1293 | } |
---|
1291 | 1294 | |
---|
1292 | 1295 | static struct intel_uncore_ops tgl_uncore_imc_freerunning_ops = { |
---|