2023-12-20 13:35:29

by Mathias Krause

[permalink] [raw]
Subject: [PATCH] PCI: Remove unused 'node' member from struct pci_driver

Remove the unused 'node' member. It got replaced by device_driver
chaining more than 20 years ago in commit 4b4a837f2b57 ("PCI: start to
use common fields of struct device_driver more...") of the history.git
tree.

Signed-off-by: Mathias Krause <[email protected]>
---
There is only one "user" that makes use of the 'node' member, which is
the brcm80211 driver. However, its "use" is clearly wrong (a list head
cannot be initialized this way) and, obviously, not needed.

If netdev folks instead want to split this off into a separate commit, I
can do that. However, I don't expect any cross-tree conflicts regarding
this change.

drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c | 1 -
include/linux/pci.h | 2 --
2 files changed, 3 deletions(-)

diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
index 80220685f5e4..d7fb88bb6ae1 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
@@ -2707,7 +2707,6 @@ MODULE_DEVICE_TABLE(pci, brcmf_pcie_devid_table);


static struct pci_driver brcmf_pciedrvr = {
- .node = {},
.name = KBUILD_MODNAME,
.id_table = brcmf_pcie_devid_table,
.probe = brcmf_pcie_probe,
diff --git a/include/linux/pci.h b/include/linux/pci.h
index dea043bc1e38..835a937fd233 100644
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -885,7 +885,6 @@ struct module;

/**
* struct pci_driver - PCI driver structure
- * @node: List of driver structures.
* @name: Driver name.
* @id_table: Pointer to table of device IDs the driver is
* interested in. Most drivers should export this
@@ -940,7 +939,6 @@ struct module;
* own I/O address space.
*/
struct pci_driver {
- struct list_head node;
const char *name;
const struct pci_device_id *id_table; /* Must be non-NULL for probe to be called */
int (*probe)(struct pci_dev *dev, const struct pci_device_id *id); /* New device inserted */
--
2.39.2



2023-12-20 14:11:45

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH] PCI: Remove unused 'node' member from struct pci_driver

Mathias Krause <[email protected]> writes:

> Remove the unused 'node' member. It got replaced by device_driver
> chaining more than 20 years ago in commit 4b4a837f2b57 ("PCI: start to
> use common fields of struct device_driver more...") of the history.git
> tree.
>
> Signed-off-by: Mathias Krause <[email protected]>
> ---
> There is only one "user" that makes use of the 'node' member, which is
> the brcm80211 driver. However, its "use" is clearly wrong (a list head
> cannot be initialized this way) and, obviously, not needed.
>
> If netdev folks instead want to split this off into a separate commit, I
> can do that. However, I don't expect any cross-tree conflicts regarding
> this change.
>
> drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c | 1 -
> include/linux/pci.h | 2 --
> 2 files changed, 3 deletions(-)

No need to split anything, feel free to take this via PCI tree:

Acked-by: Kalle Valo <[email protected]>

--
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches

2023-12-27 00:01:31

by Bjorn Helgaas

[permalink] [raw]
Subject: Re: [PATCH] PCI: Remove unused 'node' member from struct pci_driver

On Wed, Dec 20, 2023 at 02:35:05PM +0100, Mathias Krause wrote:
> Remove the unused 'node' member. It got replaced by device_driver
> chaining more than 20 years ago in commit 4b4a837f2b57 ("PCI: start to
> use common fields of struct device_driver more...") of the history.git
> tree.
>
> Signed-off-by: Mathias Krause <[email protected]>

Applied with Kalle's ack to pci/misc for v6.8, thanks!

> ---
> There is only one "user" that makes use of the 'node' member, which is
> the brcm80211 driver. However, its "use" is clearly wrong (a list head
> cannot be initialized this way) and, obviously, not needed.
>
> If netdev folks instead want to split this off into a separate commit, I
> can do that. However, I don't expect any cross-tree conflicts regarding
> this change.
>
> drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c | 1 -
> include/linux/pci.h | 2 --
> 2 files changed, 3 deletions(-)
>
> diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
> index 80220685f5e4..d7fb88bb6ae1 100644
> --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
> +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
> @@ -2707,7 +2707,6 @@ MODULE_DEVICE_TABLE(pci, brcmf_pcie_devid_table);
>
>
> static struct pci_driver brcmf_pciedrvr = {
> - .node = {},
> .name = KBUILD_MODNAME,
> .id_table = brcmf_pcie_devid_table,
> .probe = brcmf_pcie_probe,
> diff --git a/include/linux/pci.h b/include/linux/pci.h
> index dea043bc1e38..835a937fd233 100644
> --- a/include/linux/pci.h
> +++ b/include/linux/pci.h
> @@ -885,7 +885,6 @@ struct module;
>
> /**
> * struct pci_driver - PCI driver structure
> - * @node: List of driver structures.
> * @name: Driver name.
> * @id_table: Pointer to table of device IDs the driver is
> * interested in. Most drivers should export this
> @@ -940,7 +939,6 @@ struct module;
> * own I/O address space.
> */
> struct pci_driver {
> - struct list_head node;
> const char *name;
> const struct pci_device_id *id_table; /* Must be non-NULL for probe to be called */
> int (*probe)(struct pci_dev *dev, const struct pci_device_id *id); /* New device inserted */
> --
> 2.39.2
>