Skip to content

Commit

Permalink
PCI: Remove struct pci_vpd_ops.release function pointer
Browse files Browse the repository at this point in the history
The struct pci_vpd_ops.release function pointer is always
pci_vpd_pci22_release(), so there's no need for the flexibility of a
function pointer.

Inline the pci_vpd_pci22_release() body into pci_vpd_release() and remove
pci_vpd_pci22_release() and the struct pci_vpd_ops.release function
pointer.

Tested-by: Shane Seymour <[email protected]>
Tested-by: Babu Moger <[email protected]>
Signed-off-by: Bjorn Helgaas <[email protected]>
Reviewed-by: Hannes Reinecke <[email protected]>
  • Loading branch information
bjorn-helgaas committed Feb 29, 2016
1 parent 6437907 commit da00684
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 9 deletions.
9 changes: 1 addition & 8 deletions drivers/pci/access.c
Original file line number Diff line number Diff line change
Expand Up @@ -508,15 +508,9 @@ static ssize_t pci_vpd_pci22_write(struct pci_dev *dev, loff_t pos, size_t count
return ret ? ret : count;
}

static void pci_vpd_pci22_release(struct pci_dev *dev)
{
kfree(container_of(dev->vpd, struct pci_vpd_pci22, base));
}

static const struct pci_vpd_ops pci_vpd_pci22_ops = {
.read = pci_vpd_pci22_read,
.write = pci_vpd_pci22_write,
.release = pci_vpd_pci22_release,
};

static ssize_t pci_vpd_f0_read(struct pci_dev *dev, loff_t pos, size_t count,
Expand Down Expand Up @@ -552,7 +546,6 @@ static ssize_t pci_vpd_f0_write(struct pci_dev *dev, loff_t pos, size_t count,
static const struct pci_vpd_ops pci_vpd_f0_ops = {
.read = pci_vpd_f0_read,
.write = pci_vpd_f0_write,
.release = pci_vpd_pci22_release,
};

int pci_vpd_pci22_init(struct pci_dev *dev)
Expand Down Expand Up @@ -584,7 +577,7 @@ int pci_vpd_pci22_init(struct pci_dev *dev)
void pci_vpd_release(struct pci_dev *dev)
{
if (dev->vpd)
dev->vpd->ops->release(dev);
kfree(container_of(dev->vpd, struct pci_vpd_pci22, base));
}

/**
Expand Down
1 change: 0 additions & 1 deletion drivers/pci/pci.h
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,6 @@ static inline bool pci_has_subordinate(struct pci_dev *pci_dev)
struct pci_vpd_ops {
ssize_t (*read)(struct pci_dev *dev, loff_t pos, size_t count, void *buf);
ssize_t (*write)(struct pci_dev *dev, loff_t pos, size_t count, const void *buf);
void (*release)(struct pci_dev *dev);
};

struct pci_vpd {
Expand Down

0 comments on commit da00684

Please sign in to comment.