pds_core: fix up some format-truncation complaints
authorShannon Nelson <shannon.nelson@amd.com>
Mon, 13 Nov 2023 18:32:57 +0000 (10:32 -0800)
committerJakub Kicinski <kuba@kernel.org>
Wed, 15 Nov 2023 03:52:09 +0000 (19:52 -0800)
Our friendly kernel test robot pointed out a couple of potential
string truncation issues.  None of which were we worried about,
but can be relatively easily fixed to quiet the complaints.

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202310211736.66syyDpp-lkp@intel.com/
Fixes: 45d76f492938 ("pds_core: set up device and adminq")
Signed-off-by: Shannon Nelson <shannon.nelson@amd.com>
Link: https://lore.kernel.org/r/20231113183257.71110-3-shannon.nelson@amd.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/amd/pds_core/core.h
drivers/net/ethernet/amd/pds_core/dev.c
drivers/net/ethernet/amd/pds_core/devlink.c

index f3a7deda997245bd3c80070889981f35c01dcd28..e35d3e7006bfc1891a0343643910b915f31ba56a 100644 (file)
@@ -15,7 +15,7 @@
 #define PDSC_DRV_DESCRIPTION   "AMD/Pensando Core Driver"
 
 #define PDSC_WATCHDOG_SECS     5
-#define PDSC_QUEUE_NAME_MAX_SZ  32
+#define PDSC_QUEUE_NAME_MAX_SZ  16
 #define PDSC_ADMINQ_MIN_LENGTH 16      /* must be a power of two */
 #define PDSC_NOTIFYQ_LENGTH    64      /* must be a power of two */
 #define PDSC_TEARDOWN_RECOVERY false
index 7c1b965d61a926df45a88e8c941f0806f12923ad..31940b857e0e501d2d4d220a0ed6a0cfd03098c7 100644 (file)
@@ -261,10 +261,14 @@ static int pdsc_identify(struct pdsc *pdsc)
        struct pds_core_drv_identity drv = {};
        size_t sz;
        int err;
+       int n;
 
        drv.drv_type = cpu_to_le32(PDS_DRIVER_LINUX);
-       snprintf(drv.driver_ver_str, sizeof(drv.driver_ver_str),
-                "%s %s", PDS_CORE_DRV_NAME, utsname()->release);
+       /* Catching the return quiets a Wformat-truncation complaint */
+       n = snprintf(drv.driver_ver_str, sizeof(drv.driver_ver_str),
+                    "%s %s", PDS_CORE_DRV_NAME, utsname()->release);
+       if (n > sizeof(drv.driver_ver_str))
+               dev_dbg(pdsc->dev, "release name truncated, don't care\n");
 
        /* Next let's get some info about the device
         * We use the devcmd_lock at this level in order to
index 57f88c8b37defe17fed6e8b9d82578a4f9701dc2..e9948ea5bbcdbaae713390cca46280e55b548956 100644 (file)
@@ -104,7 +104,7 @@ int pdsc_dl_info_get(struct devlink *dl, struct devlink_info_req *req,
        struct pds_core_fw_list_info fw_list;
        struct pdsc *pdsc = devlink_priv(dl);
        union pds_core_dev_comp comp;
-       char buf[16];
+       char buf[32];
        int listlen;
        int err;
        int i;