[net-next,v2,4/5] net: devlink: remove devlink_info_driver_name_put()

Message ID 20221127081604.5242-5-mailhol.vincent@wanadoo.fr
State New
Headers
Series net: devlink: return the driver name in devlink_nl_info_fill |

Commit Message

Vincent Mailhol Nov. 27, 2022, 8:16 a.m. UTC
  Now that the core sets the driver name attribute, drivers are not
supposed to call devlink_info_driver_name_put() anymore. Remove it.

Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
---
 include/net/devlink.h |  2 --
 net/core/devlink.c    | 11 ++---------
 2 files changed, 2 insertions(+), 11 deletions(-)
  

Comments

kernel test robot Nov. 27, 2022, 12:01 p.m. UTC | #1
Hi Vincent,

I love your patch! Yet something to improve:

[auto build test ERROR on net-next/master]

url:    https://github.com/intel-lab-lkp/linux/commits/Vincent-Mailhol/mlxsw-minimal-fix-mlxsw_m_module_get_drvinfo-to-correctly-report-driver-name/20221127-171657
patch link:    https://lore.kernel.org/r/20221127081604.5242-5-mailhol.vincent%40wanadoo.fr
patch subject: [PATCH net-next v2 4/5] net: devlink: remove devlink_info_driver_name_put()
config: x86_64-randconfig-a016
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/intel-lab-lkp/linux/commit/32018f68afc2b6dca866e1cdf0e5417ef4413d75
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Vincent-Mailhol/mlxsw-minimal-fix-mlxsw_m_module_get_drvinfo-to-correctly-report-driver-name/20221127-171657
        git checkout 32018f68afc2b6dca866e1cdf0e5417ef4413d75
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

>> drivers/net/ethernet/mellanox/mlxsw/core.c:1463:8: error: implicit declaration of function 'devlink_info_driver_name_put' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
           err = devlink_info_driver_name_put(req,
                 ^
   drivers/net/ethernet/mellanox/mlxsw/core.c:1463:8: note: did you mean 'devlink_info_serial_number_put'?
   include/net/devlink.h:1747:5: note: 'devlink_info_serial_number_put' declared here
   int devlink_info_serial_number_put(struct devlink_info_req *req,
       ^
   1 error generated.


vim +/devlink_info_driver_name_put +1463 drivers/net/ethernet/mellanox/mlxsw/core.c

1ceecc88d29bbb Jiri Pirko      2016-04-14  1450  
a9c8336f65446b Shalom Toledo   2019-04-08  1451  static int
a9c8336f65446b Shalom Toledo   2019-04-08  1452  mlxsw_devlink_info_get(struct devlink *devlink, struct devlink_info_req *req,
a9c8336f65446b Shalom Toledo   2019-04-08  1453  		       struct netlink_ext_ack *extack)
a9c8336f65446b Shalom Toledo   2019-04-08  1454  {
a9c8336f65446b Shalom Toledo   2019-04-08  1455  	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
92f165ec5b1e76 Vincent Mailhol 2022-11-27  1456  	struct device *dev = mlxsw_core->bus_info->dev;
a9c8336f65446b Shalom Toledo   2019-04-08  1457  	char fw_info_psid[MLXSW_REG_MGIR_FW_INFO_PSID_SIZE];
a9c8336f65446b Shalom Toledo   2019-04-08  1458  	u32 hw_rev, fw_major, fw_minor, fw_sub_minor;
a9c8336f65446b Shalom Toledo   2019-04-08  1459  	char mgir_pl[MLXSW_REG_MGIR_LEN];
a9c8336f65446b Shalom Toledo   2019-04-08  1460  	char buf[32];
a9c8336f65446b Shalom Toledo   2019-04-08  1461  	int err;
a9c8336f65446b Shalom Toledo   2019-04-08  1462  
a9c8336f65446b Shalom Toledo   2019-04-08 @1463  	err = devlink_info_driver_name_put(req,
92f165ec5b1e76 Vincent Mailhol 2022-11-27  1464  					   dev_driver_string(dev->parent));
a9c8336f65446b Shalom Toledo   2019-04-08  1465  	if (err)
a9c8336f65446b Shalom Toledo   2019-04-08  1466  		return err;
a9c8336f65446b Shalom Toledo   2019-04-08  1467  
a9c8336f65446b Shalom Toledo   2019-04-08  1468  	mlxsw_reg_mgir_pack(mgir_pl);
a9c8336f65446b Shalom Toledo   2019-04-08  1469  	err = mlxsw_reg_query(mlxsw_core, MLXSW_REG(mgir), mgir_pl);
a9c8336f65446b Shalom Toledo   2019-04-08  1470  	if (err)
a9c8336f65446b Shalom Toledo   2019-04-08  1471  		return err;
a9c8336f65446b Shalom Toledo   2019-04-08  1472  	mlxsw_reg_mgir_unpack(mgir_pl, &hw_rev, fw_info_psid, &fw_major,
a9c8336f65446b Shalom Toledo   2019-04-08  1473  			      &fw_minor, &fw_sub_minor);
a9c8336f65446b Shalom Toledo   2019-04-08  1474  
a9c8336f65446b Shalom Toledo   2019-04-08  1475  	sprintf(buf, "%X", hw_rev);
a9c8336f65446b Shalom Toledo   2019-04-08  1476  	err = devlink_info_version_fixed_put(req, "hw.revision", buf);
a9c8336f65446b Shalom Toledo   2019-04-08  1477  	if (err)
a9c8336f65446b Shalom Toledo   2019-04-08  1478  		return err;
a9c8336f65446b Shalom Toledo   2019-04-08  1479  
7dafcc4c9dfb41 Jiri Pirko      2021-05-26  1480  	err = devlink_info_version_fixed_put(req,
7dafcc4c9dfb41 Jiri Pirko      2021-05-26  1481  					     DEVLINK_INFO_VERSION_GENERIC_FW_PSID,
7dafcc4c9dfb41 Jiri Pirko      2021-05-26  1482  					     fw_info_psid);
a9c8336f65446b Shalom Toledo   2019-04-08  1483  	if (err)
a9c8336f65446b Shalom Toledo   2019-04-08  1484  		return err;
a9c8336f65446b Shalom Toledo   2019-04-08  1485  
a9c8336f65446b Shalom Toledo   2019-04-08  1486  	sprintf(buf, "%d.%d.%d", fw_major, fw_minor, fw_sub_minor);
a9c8336f65446b Shalom Toledo   2019-04-08  1487  	err = devlink_info_version_running_put(req, "fw.version", buf);
a9c8336f65446b Shalom Toledo   2019-04-08  1488  	if (err)
a9c8336f65446b Shalom Toledo   2019-04-08  1489  		return err;
a9c8336f65446b Shalom Toledo   2019-04-08  1490  
f55c998c274e3b Jiri Pirko      2021-05-26  1491  	return devlink_info_version_running_put(req,
f55c998c274e3b Jiri Pirko      2021-05-26  1492  						DEVLINK_INFO_VERSION_GENERIC_FW,
f55c998c274e3b Jiri Pirko      2021-05-26  1493  						buf);
a9c8336f65446b Shalom Toledo   2019-04-08  1494  }
a9c8336f65446b Shalom Toledo   2019-04-08  1495
  
kernel test robot Nov. 27, 2022, 12:11 p.m. UTC | #2
Hi Vincent,

I love your patch! Yet something to improve:

[auto build test ERROR on net-next/master]

url:    https://github.com/intel-lab-lkp/linux/commits/Vincent-Mailhol/mlxsw-minimal-fix-mlxsw_m_module_get_drvinfo-to-correctly-report-driver-name/20221127-171657
patch link:    https://lore.kernel.org/r/20221127081604.5242-5-mailhol.vincent%40wanadoo.fr
patch subject: [PATCH net-next v2 4/5] net: devlink: remove devlink_info_driver_name_put()
config: x86_64-allyesconfig
compiler: gcc-11 (Debian 11.3.0-8) 11.3.0
reproduce (this is a W=1 build):
        # https://github.com/intel-lab-lkp/linux/commit/32018f68afc2b6dca866e1cdf0e5417ef4413d75
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Vincent-Mailhol/mlxsw-minimal-fix-mlxsw_m_module_get_drvinfo-to-correctly-report-driver-name/20221127-171657
        git checkout 32018f68afc2b6dca866e1cdf0e5417ef4413d75
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   drivers/net/ethernet/mellanox/mlxsw/core.c: In function 'mlxsw_devlink_info_get':
>> drivers/net/ethernet/mellanox/mlxsw/core.c:1463:15: error: implicit declaration of function 'devlink_info_driver_name_put'; did you mean 'devlink_info_serial_number_put'? [-Werror=implicit-function-declaration]
    1463 |         err = devlink_info_driver_name_put(req,
         |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |               devlink_info_serial_number_put
   cc1: some warnings being treated as errors


vim +1463 drivers/net/ethernet/mellanox/mlxsw/core.c

1ceecc88d29bbb Jiri Pirko      2016-04-14  1450  
a9c8336f65446b Shalom Toledo   2019-04-08  1451  static int
a9c8336f65446b Shalom Toledo   2019-04-08  1452  mlxsw_devlink_info_get(struct devlink *devlink, struct devlink_info_req *req,
a9c8336f65446b Shalom Toledo   2019-04-08  1453  		       struct netlink_ext_ack *extack)
a9c8336f65446b Shalom Toledo   2019-04-08  1454  {
a9c8336f65446b Shalom Toledo   2019-04-08  1455  	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
92f165ec5b1e76 Vincent Mailhol 2022-11-27  1456  	struct device *dev = mlxsw_core->bus_info->dev;
a9c8336f65446b Shalom Toledo   2019-04-08  1457  	char fw_info_psid[MLXSW_REG_MGIR_FW_INFO_PSID_SIZE];
a9c8336f65446b Shalom Toledo   2019-04-08  1458  	u32 hw_rev, fw_major, fw_minor, fw_sub_minor;
a9c8336f65446b Shalom Toledo   2019-04-08  1459  	char mgir_pl[MLXSW_REG_MGIR_LEN];
a9c8336f65446b Shalom Toledo   2019-04-08  1460  	char buf[32];
a9c8336f65446b Shalom Toledo   2019-04-08  1461  	int err;
a9c8336f65446b Shalom Toledo   2019-04-08  1462  
a9c8336f65446b Shalom Toledo   2019-04-08 @1463  	err = devlink_info_driver_name_put(req,
92f165ec5b1e76 Vincent Mailhol 2022-11-27  1464  					   dev_driver_string(dev->parent));
a9c8336f65446b Shalom Toledo   2019-04-08  1465  	if (err)
a9c8336f65446b Shalom Toledo   2019-04-08  1466  		return err;
a9c8336f65446b Shalom Toledo   2019-04-08  1467  
a9c8336f65446b Shalom Toledo   2019-04-08  1468  	mlxsw_reg_mgir_pack(mgir_pl);
a9c8336f65446b Shalom Toledo   2019-04-08  1469  	err = mlxsw_reg_query(mlxsw_core, MLXSW_REG(mgir), mgir_pl);
a9c8336f65446b Shalom Toledo   2019-04-08  1470  	if (err)
a9c8336f65446b Shalom Toledo   2019-04-08  1471  		return err;
a9c8336f65446b Shalom Toledo   2019-04-08  1472  	mlxsw_reg_mgir_unpack(mgir_pl, &hw_rev, fw_info_psid, &fw_major,
a9c8336f65446b Shalom Toledo   2019-04-08  1473  			      &fw_minor, &fw_sub_minor);
a9c8336f65446b Shalom Toledo   2019-04-08  1474  
a9c8336f65446b Shalom Toledo   2019-04-08  1475  	sprintf(buf, "%X", hw_rev);
a9c8336f65446b Shalom Toledo   2019-04-08  1476  	err = devlink_info_version_fixed_put(req, "hw.revision", buf);
a9c8336f65446b Shalom Toledo   2019-04-08  1477  	if (err)
a9c8336f65446b Shalom Toledo   2019-04-08  1478  		return err;
a9c8336f65446b Shalom Toledo   2019-04-08  1479  
7dafcc4c9dfb41 Jiri Pirko      2021-05-26  1480  	err = devlink_info_version_fixed_put(req,
7dafcc4c9dfb41 Jiri Pirko      2021-05-26  1481  					     DEVLINK_INFO_VERSION_GENERIC_FW_PSID,
7dafcc4c9dfb41 Jiri Pirko      2021-05-26  1482  					     fw_info_psid);
a9c8336f65446b Shalom Toledo   2019-04-08  1483  	if (err)
a9c8336f65446b Shalom Toledo   2019-04-08  1484  		return err;
a9c8336f65446b Shalom Toledo   2019-04-08  1485  
a9c8336f65446b Shalom Toledo   2019-04-08  1486  	sprintf(buf, "%d.%d.%d", fw_major, fw_minor, fw_sub_minor);
a9c8336f65446b Shalom Toledo   2019-04-08  1487  	err = devlink_info_version_running_put(req, "fw.version", buf);
a9c8336f65446b Shalom Toledo   2019-04-08  1488  	if (err)
a9c8336f65446b Shalom Toledo   2019-04-08  1489  		return err;
a9c8336f65446b Shalom Toledo   2019-04-08  1490  
f55c998c274e3b Jiri Pirko      2021-05-26  1491  	return devlink_info_version_running_put(req,
f55c998c274e3b Jiri Pirko      2021-05-26  1492  						DEVLINK_INFO_VERSION_GENERIC_FW,
f55c998c274e3b Jiri Pirko      2021-05-26  1493  						buf);
a9c8336f65446b Shalom Toledo   2019-04-08  1494  }
a9c8336f65446b Shalom Toledo   2019-04-08  1495
  

Patch

diff --git a/include/net/devlink.h b/include/net/devlink.h
index 074a79b8933f..52d5fb67e9b8 100644
--- a/include/net/devlink.h
+++ b/include/net/devlink.h
@@ -1746,8 +1746,6 @@  int devlink_region_snapshot_create(struct devlink_region *region,
 				   u8 *data, u32 snapshot_id);
 int devlink_info_serial_number_put(struct devlink_info_req *req,
 				   const char *sn);
-int devlink_info_driver_name_put(struct devlink_info_req *req,
-				 const char *name);
 int devlink_info_board_serial_number_put(struct devlink_info_req *req,
 					 const char *bsn);
 
diff --git a/net/core/devlink.c b/net/core/devlink.c
index 6478135d9ba1..3babc16eeb6b 100644
--- a/net/core/devlink.c
+++ b/net/core/devlink.c
@@ -6633,14 +6633,6 @@  static int devlink_nl_cmd_region_read_dumpit(struct sk_buff *skb,
 	return err;
 }
 
-int devlink_info_driver_name_put(struct devlink_info_req *req, const char *name)
-{
-	if (!req->msg)
-		return 0;
-	return nla_put_string(req->msg, DEVLINK_ATTR_INFO_DRIVER_NAME, name);
-}
-EXPORT_SYMBOL_GPL(devlink_info_driver_name_put);
-
 int devlink_info_serial_number_put(struct devlink_info_req *req, const char *sn)
 {
 	if (!req->msg)
@@ -6756,7 +6748,8 @@  static int devlink_nl_driver_info_get(struct device_driver *drv,
 		return 0;
 
 	if (drv->name[0])
-		return devlink_info_driver_name_put(req, drv->name);
+		return nla_put_string(req->msg, DEVLINK_ATTR_INFO_DRIVER_NAME,
+				      drv->name);
 
 	return 0;
 }