summaryrefslogtreecommitdiff
path: root/drivers/pci
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2023-10-28 21:30:59 +0300
committerBjorn Helgaas <bhelgaas@google.com>2023-10-28 21:30:59 +0300
commit209491885f827f04302c6abad587f45f744e9d90 (patch)
treece99319acaa3f289dc2293e6e77e8782ee9a4135 /drivers/pci
parentadfe8d727dc5720da787725e6cf9a80591e5cd78 (diff)
parent805b196fb3bceda87f785ac34824fff9246c800f (diff)
downloadlinux-209491885f827f04302c6abad587f45f744e9d90.tar.xz
Merge branch 'pci/p2pdma'
- Move struct dev_pagemap (a flexible structure) to end of struct pci_p2pdma_pagemap to avoid overwriting things after dev_pagemap (Gustavo A. R. Silva) * pci/p2pdma: PCI/P2PDMA: Remove redundant goto PCI/P2PDMA: Fix undefined behavior bug in struct pci_p2pdma_pagemap
Diffstat (limited to 'drivers/pci')
-rw-r--r--drivers/pci/p2pdma.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/pci/p2pdma.c b/drivers/pci/p2pdma.c
index fa7370f9561a..0c361561b855 100644
--- a/drivers/pci/p2pdma.c
+++ b/drivers/pci/p2pdma.c
@@ -28,9 +28,9 @@ struct pci_p2pdma {
};
struct pci_p2pdma_pagemap {
- struct dev_pagemap pgmap;
struct pci_dev *provider;
u64 bus_offset;
+ struct dev_pagemap pgmap;
};
static struct pci_p2pdma_pagemap *to_p2p_pgmap(struct dev_pagemap *pgmap)
@@ -837,7 +837,6 @@ void *pci_alloc_p2pmem(struct pci_dev *pdev, size_t size)
if (unlikely(!percpu_ref_tryget_live_rcu(ref))) {
gen_pool_free(p2pdma->pool, (unsigned long) ret, size);
ret = NULL;
- goto out;
}
out:
rcu_read_unlock();