]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
platform/mellanox: mlxbf-pmc: Validate event/enable input
authorShravan Kumar Ramani <shravankr@nvidia.com>
Wed, 2 Jul 2025 10:09:02 +0000 (06:09 -0400)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Mon, 7 Jul 2025 12:53:27 +0000 (15:53 +0300)
Before programming the event info, validate the event number received as input
by checking if it exists in the event_list. Also fix a typo in the comment for
mlxbf_pmc_get_event_name() to correctly mention that it returns the event name
when taking the event number as input, and not the other way round.

Fixes: 423c3361855c ("platform/mellanox: mlxbf-pmc: Add support for BlueField-3")
Signed-off-by: Shravan Kumar Ramani <shravankr@nvidia.com>
Reviewed-by: David Thompson <davthompson@nvidia.com>
Link: https://lore.kernel.org/r/2ee618c59976bcf1379d5ddce2fc60ab5014b3a9.1751380187.git.shravankr@nvidia.com
[ij: split kstrbool() change to own commit.]
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
drivers/platform/mellanox/mlxbf-pmc.c

index 2b692a76398e6909b1858916bca930c8f9366ed9..c654b4bf141f2c59233aed257a9de0c606f9d432 100644 (file)
@@ -1223,7 +1223,7 @@ static int mlxbf_pmc_get_event_num(const char *blk, const char *evt)
        return -ENODEV;
 }
 
-/* Get the event number given the name */
+/* Get the event name given the number */
 static char *mlxbf_pmc_get_event_name(const char *blk, u32 evt)
 {
        const struct mlxbf_pmc_events *events;
@@ -1807,6 +1807,9 @@ static ssize_t mlxbf_pmc_event_store(struct device *dev,
                err = kstrtouint(buf, 0, &evt_num);
                if (err < 0)
                        return err;
+
+               if (!mlxbf_pmc_get_event_name(pmc->block_name[blk_num], evt_num))
+                       return -EINVAL;
        }
 
        if (strstr(pmc->block_name[blk_num], "l3cache"))