bonding_priv.h only defined DRV_NAME and DRV_DESCRIPTION, but caused unnecessary recompilation: it included to define bond_version, which is used solely in bond_procfs.c. With CONFIG_LOCALVERSION_AUTO=y, utsrelease.h is regenerated on every git commit, so any git operation triggered recompilation of bond_main.c which also included bonding_priv.h. Remove the header entirely, as suggested by Jakub, given the macros on this file can be integrated into the C files directly. Signed-off-by: Breno Leitao --- Changes in v2: - Remove drivers/net/bonding/bonding_priv.h completly (Jakub) - Link to v1: https://patch.msgid.link/20260316-bond_uts-v1-1-428696ea79d5@debian.org --- drivers/net/bonding/bond_main.c | 6 ++---- drivers/net/bonding/bond_procfs.c | 11 ++++++----- drivers/net/bonding/bonding_priv.h | 22 ---------------------- 3 files changed, 8 insertions(+), 31 deletions(-) diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index 90b71bd530401..d93d61ce6a08d 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c @@ -93,8 +93,6 @@ #include #include -#include "bonding_priv.h" - /*---------------------------- Module parameters ----------------------------*/ /* monitor all links that often (in milliseconds). <=0 disables monitoring */ @@ -5874,7 +5872,7 @@ static int bond_ethtool_get_link_ksettings(struct net_device *bond_dev, static void bond_ethtool_get_drvinfo(struct net_device *bond_dev, struct ethtool_drvinfo *drvinfo) { - strscpy(drvinfo->driver, DRV_NAME, sizeof(drvinfo->driver)); + strscpy(drvinfo->driver, KBUILD_MODNAME, sizeof(drvinfo->driver)); snprintf(drvinfo->fw_version, sizeof(drvinfo->fw_version), "%d", BOND_ABI_VERSION); } @@ -6654,6 +6652,6 @@ static void __exit bonding_exit(void) module_init(bonding_init); module_exit(bonding_exit); MODULE_LICENSE("GPL"); -MODULE_DESCRIPTION(DRV_DESCRIPTION); +MODULE_DESCRIPTION("Ethernet Channel Bonding Driver"); MODULE_AUTHOR("Thomas Davis, tadavis@lbl.gov and many others"); MODULE_IMPORT_NS("NETDEV_INTERNAL"); diff --git a/drivers/net/bonding/bond_procfs.c b/drivers/net/bonding/bond_procfs.c index 7edf72ec816ab..e34f803051913 100644 --- a/drivers/net/bonding/bond_procfs.c +++ b/drivers/net/bonding/bond_procfs.c @@ -1,4 +1,5 @@ // SPDX-License-Identifier: GPL-2.0 +#include #include #include #include @@ -6,7 +7,7 @@ #include #include -#include "bonding_priv.h" +#define bond_version "Ethernet Channel Bonding Driver: v" UTS_RELEASE "\n" static void *bond_info_seq_start(struct seq_file *seq, loff_t *pos) __acquires(RCU) @@ -290,7 +291,7 @@ void bond_create_proc_entry(struct bonding *bond) bn->proc_dir, &bond_info_seq_ops, bond); if (bond->proc_entry == NULL) netdev_warn(bond_dev, "Cannot create /proc/net/%s/%s\n", - DRV_NAME, bond_dev->name); + KBUILD_MODNAME, bond_dev->name); else memcpy(bond->proc_file_name, bond_dev->name, IFNAMSIZ); } @@ -314,10 +315,10 @@ void bond_remove_proc_entry(struct bonding *bond) void __net_init bond_create_proc_dir(struct bond_net *bn) { if (!bn->proc_dir) { - bn->proc_dir = proc_mkdir(DRV_NAME, bn->net->proc_net); + bn->proc_dir = proc_mkdir(KBUILD_MODNAME, bn->net->proc_net); if (!bn->proc_dir) pr_warn("Warning: Cannot create /proc/net/%s\n", - DRV_NAME); + KBUILD_MODNAME); } } @@ -326,7 +327,7 @@ void __net_init bond_create_proc_dir(struct bond_net *bn) void __net_exit bond_destroy_proc_dir(struct bond_net *bn) { if (bn->proc_dir) { - remove_proc_entry(DRV_NAME, bn->net->proc_net); + remove_proc_entry(KBUILD_MODNAME, bn->net->proc_net); bn->proc_dir = NULL; } } diff --git a/drivers/net/bonding/bonding_priv.h b/drivers/net/bonding/bonding_priv.h deleted file mode 100644 index fef6288c6944f..0000000000000 --- a/drivers/net/bonding/bonding_priv.h +++ /dev/null @@ -1,22 +0,0 @@ -/* SPDX-License-Identifier: GPL-1.0+ */ -/* - * Bond several ethernet interfaces into a Cisco, running 'Etherchannel'. - * - * Portions are (c) Copyright 1995 Simon "Guru Aleph-Null" Janes - * NCM: Network and Communications Management, Inc. - * - * BUT, I'm the one who modified it for ethernet, so: - * (c) Copyright 1999, Thomas Davis, tadavis@lbl.gov - * - */ - -#ifndef _BONDING_PRIV_H -#define _BONDING_PRIV_H -#include - -#define DRV_NAME "bonding" -#define DRV_DESCRIPTION "Ethernet Channel Bonding Driver" - -#define bond_version DRV_DESCRIPTION ": v" UTS_RELEASE "\n" - -#endif --- base-commit: 5446b8691eb8278f10deca92048fad84ffd1e4d5 change-id: 20260316-bond_uts-077fed8dce56 Best regards, -- Breno Leitao