mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] HID: wacom: replace sprintf calls with sysfs_emit calls in wacom_sys.c
@ 2026-11-01  1:14 Nehuen Lian Bova
  2026-11-01  5:48 ` [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives Nehuen Lian Bova
  0 siblings, 1 reply; 7+ messages in thread
From: Nehuen Lian Bova @ 2026-11-01  1:14 UTC (permalink / raw)
  To: jikos, bentiss; +Cc: linux-input, linux-kernel, Nehuen Lian Bova

Replace 'sprintf' calls with safer 'sysfs_emit' calls in wacom_sys.c, also
include the header '<linux/sysfs.h>'. No functional changes.

Signed-off-by: Nehuen Lian Bova <nehuenlian.kernel@gmail.com>
---
 drivers/hid/wacom_sys.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/hid/wacom_sys.c b/drivers/hid/wacom_sys.c
index 628372ab818a..bb51ea4b34f8 100644
--- a/drivers/hid/wacom_sys.c
+++ b/drivers/hid/wacom_sys.c
@@ -6,6 +6,7 @@
 #include "wacom_wac.h"
 #include "wacom.h"
 #include <linux/input/mt.h>
+#include <linux/sysfs.h>
 
 #define WAC_MSG_RETRIES		5
 #define WAC_CMD_RETRIES		10
@@ -1838,7 +1839,7 @@ static int __wacom_initialize_battery(struct wacom *wacom,
 	bat_desc->properties = wacom_battery_props;
 	bat_desc->num_properties = ARRAY_SIZE(wacom_battery_props);
 	bat_desc->get_property = wacom_battery_get_property;
-	sprintf(battery->bat_name, "wacom_battery_%ld", n);
+	sysfs_emit(battery->bat_name, "wacom_battery_%ld", n);
 	bat_desc->name = battery->bat_name;
 	bat_desc->type = POWER_SUPPLY_TYPE_BATTERY;
 	bat_desc->use_for_apm = 0;
@@ -1928,7 +1929,7 @@ static ssize_t wacom_show_remote_mode(struct kobject *kobj,
 	u8 mode;
 
 	mode = wacom->led.groups[index].select;
-	return sprintf(buf, "%d\n", mode < 3 ? mode : -1);
+	return sysfs_emit(buf, "%d\n", mode < 3 ? mode : -1);
 }
 
 #define DEVICE_EKR_ATTR_GROUP(SET_ID)					\
-- 
2.43.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives
  2026-11-01  1:14 [PATCH] HID: wacom: replace sprintf calls with sysfs_emit calls in wacom_sys.c Nehuen Lian Bova
@ 2026-11-01  5:48 ` Nehuen Lian Bova
  2026-11-01  7:18   ` [PATCH v3] HID: wacom: replace sprintf calls with safer alternatives in wacom_sys.c Nehuen Lian Bova
                     ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Nehuen Lian Bova @ 2026-11-01  5:48 UTC (permalink / raw)
  To: jikos, bentiss; +Cc: linux-input, linux-kernel, Nehuen Lian Bova

Replace sprintf() calls with sysfs_emit() and snprintf() calls in
wacom_sys.c, which are safer and avoid buffer overflows.
Also include the header '<linux/sysfs.h>'

Signed-off-by: Nehuen Lian Bova <nehuenlian.kernel@gmail.com>
---
Changes in v2:
- Use snprintf() instead of sysfs_emit() in __wacom_initialize_battery()
  as suggested by Sashiko bot.
 drivers/hid/wacom_sys.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/hid/wacom_sys.c b/drivers/hid/wacom_sys.c
index 628372ab818a..bb5bb9c15f93 100644
--- a/drivers/hid/wacom_sys.c
+++ b/drivers/hid/wacom_sys.c
@@ -6,6 +6,7 @@
 #include "wacom_wac.h"
 #include "wacom.h"
 #include <linux/input/mt.h>
+#include <linux/sysfs.h>
 
 #define WAC_MSG_RETRIES		5
 #define WAC_CMD_RETRIES		10
@@ -1838,7 +1839,7 @@ static int __wacom_initialize_battery(struct wacom *wacom,
 	bat_desc->properties = wacom_battery_props;
 	bat_desc->num_properties = ARRAY_SIZE(wacom_battery_props);
 	bat_desc->get_property = wacom_battery_get_property;
-	sprintf(battery->bat_name, "wacom_battery_%ld", n);
+	snprintf(battery->bat_name, "wacom_battery_%ld", n);
 	bat_desc->name = battery->bat_name;
 	bat_desc->type = POWER_SUPPLY_TYPE_BATTERY;
 	bat_desc->use_for_apm = 0;
@@ -1928,7 +1929,7 @@ static ssize_t wacom_show_remote_mode(struct kobject *kobj,
 	u8 mode;
 
 	mode = wacom->led.groups[index].select;
-	return sprintf(buf, "%d\n", mode < 3 ? mode : -1);
+	return sysfs_emit(buf, "%d\n", mode < 3 ? mode : -1);
 }
 
 #define DEVICE_EKR_ATTR_GROUP(SET_ID)					\
-- 
2.43.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v3] HID: wacom: replace sprintf calls with safer alternatives in wacom_sys.c
  2026-11-01  5:48 ` [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives Nehuen Lian Bova
@ 2026-11-01  7:18   ` Nehuen Lian Bova
  2026-11-02 19:40     ` Jason Gerecke
  2026-11-03  5:32   ` [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives kernel test robot
                     ` (2 subsequent siblings)
  3 siblings, 1 reply; 7+ messages in thread
From: Nehuen Lian Bova @ 2026-11-01  7:18 UTC (permalink / raw)
  To: Jiri Kosina, Benjamin Tissoires
  Cc: linux-input, linux-kernel, Nehuen Lian Bova

 Replace sprintf() calls with sysfs_emit() and snprintf() calls in
 wacom_sys.c, which are safer and avoid buffer overflows.
 Also include the header '<linux/sysfs.h>'

Signed-off-by: Nehuen Lian Bova <nehuenlian.kernel@gmail.com>
---
Changes in v2:
- Use snprintf() instead of sysfs_emit() in __wacom_initialize_battery()
  as suggested by Sashiko bot.

Changes in v3:
- Pass sizeof(battery->bat_name) to snprintf() as suggested by
  Sashiko bot.
 drivers/hid/wacom_sys.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/hid/wacom_sys.c b/drivers/hid/wacom_sys.c
index 628372ab818a..7d9bbcb13ae0 100644
--- a/drivers/hid/wacom_sys.c
+++ b/drivers/hid/wacom_sys.c
@@ -6,6 +6,7 @@
 #include "wacom_wac.h"
 #include "wacom.h"
 #include <linux/input/mt.h>
+#include <linux/sysfs.h>
 
 #define WAC_MSG_RETRIES		5
 #define WAC_CMD_RETRIES		10
@@ -1838,7 +1839,7 @@ static int __wacom_initialize_battery(struct wacom *wacom,
 	bat_desc->properties = wacom_battery_props;
 	bat_desc->num_properties = ARRAY_SIZE(wacom_battery_props);
 	bat_desc->get_property = wacom_battery_get_property;
-	sprintf(battery->bat_name, "wacom_battery_%ld", n);
+	snprintf(battery->bat_name, sizeof(battery->bat_name), "wacom_battery_%ld", n);
 	bat_desc->name = battery->bat_name;
 	bat_desc->type = POWER_SUPPLY_TYPE_BATTERY;
 	bat_desc->use_for_apm = 0;
@@ -1928,7 +1929,7 @@ static ssize_t wacom_show_remote_mode(struct kobject *kobj,
 	u8 mode;
 
 	mode = wacom->led.groups[index].select;
-	return sprintf(buf, "%d\n", mode < 3 ? mode : -1);
+	return sysfs_emit(buf, "%d\n", mode < 3 ? mode : -1);
 }
 
 #define DEVICE_EKR_ATTR_GROUP(SET_ID)					\
-- 
2.43.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3] HID: wacom: replace sprintf calls with safer alternatives in wacom_sys.c
  2026-11-01  7:18   ` [PATCH v3] HID: wacom: replace sprintf calls with safer alternatives in wacom_sys.c Nehuen Lian Bova
@ 2026-11-02 19:40     ` Jason Gerecke
  0 siblings, 0 replies; 7+ messages in thread
From: Jason Gerecke @ 2026-11-02 19:40 UTC (permalink / raw)
  To: Nehuen Lian Bova
  Cc: Jiri Kosina, Benjamin Tissoires, linux-input, linux-kernel

On Sun, Nov 1, 2026 at 12:18 AM Nehuen Lian Bova
<nehuenlian.kernel@gmail.com> wrote:
>
>  Replace sprintf() calls with sysfs_emit() and snprintf() calls in
>  wacom_sys.c, which are safer and avoid buffer overflows.
>  Also include the header '<linux/sysfs.h>'
>
> Signed-off-by: Nehuen Lian Bova <nehuenlian.kernel@gmail.com>
> ---
> Changes in v2:
> - Use snprintf() instead of sysfs_emit() in __wacom_initialize_battery()
>   as suggested by Sashiko bot.
>
> Changes in v3:
> - Pass sizeof(battery->bat_name) to snprintf() as suggested by
>   Sashiko bot.
>  drivers/hid/wacom_sys.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/hid/wacom_sys.c b/drivers/hid/wacom_sys.c
> index 628372ab818a..7d9bbcb13ae0 100644
> --- a/drivers/hid/wacom_sys.c
> +++ b/drivers/hid/wacom_sys.c
> @@ -6,6 +6,7 @@
>  #include "wacom_wac.h"
>  #include "wacom.h"
>  #include <linux/input/mt.h>
> +#include <linux/sysfs.h>
>
>  #define WAC_MSG_RETRIES                5
>  #define WAC_CMD_RETRIES                10
> @@ -1838,7 +1839,7 @@ static int __wacom_initialize_battery(struct wacom *wacom,
>         bat_desc->properties = wacom_battery_props;
>         bat_desc->num_properties = ARRAY_SIZE(wacom_battery_props);
>         bat_desc->get_property = wacom_battery_get_property;
> -       sprintf(battery->bat_name, "wacom_battery_%ld", n);
> +       snprintf(battery->bat_name, sizeof(battery->bat_name), "wacom_battery_%ld", n);

If you're going through the effort to use snprintf the string, you
might as well also read its return value to check to check for
truncation (return value greater than or equal to size) and handle
such an error condition appropriately.

Jason (she/they)
---
Now instead of four in the eights place /
you’ve got three, ‘Cause you added one  /
(That is to say, eight) to the two,     /
But you can’t take seven from three,    /
So you look at the sixty-fours....

>         bat_desc->name = battery->bat_name;
>         bat_desc->type = POWER_SUPPLY_TYPE_BATTERY;
>         bat_desc->use_for_apm = 0;
> @@ -1928,7 +1929,7 @@ static ssize_t wacom_show_remote_mode(struct kobject *kobj,
>         u8 mode;
>
>         mode = wacom->led.groups[index].select;
> -       return sprintf(buf, "%d\n", mode < 3 ? mode : -1);
> +       return sysfs_emit(buf, "%d\n", mode < 3 ? mode : -1);



>  }
>
>  #define DEVICE_EKR_ATTR_GROUP(SET_ID)                                  \
> --
> 2.43.0
>
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives
  2026-11-01  5:48 ` [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives Nehuen Lian Bova
  2026-11-01  7:18   ` [PATCH v3] HID: wacom: replace sprintf calls with safer alternatives in wacom_sys.c Nehuen Lian Bova
@ 2026-11-03  5:32   ` kernel test robot
  2026-11-03  9:25   ` kernel test robot
  2026-11-03 10:56   ` kernel test robot
  3 siblings, 0 replies; 7+ messages in thread
From: kernel test robot @ 2026-11-03  5:32 UTC (permalink / raw)
  To: Nehuen Lian Bova, jikos, bentiss
  Cc: oe-kbuild-all, linux-input, linux-kernel, Nehuen Lian Bova

Hi Nehuen,

kernel test robot noticed the following build errors:

[auto build test ERROR on hid/for-next]
[also build test ERROR on linus/master v7.3 next-20261030]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Nehuen-Lian-Bova/HID-wacom-replace-sprintf-calls-with-safer-alternatives/20261101-024830
base:   https://git.kernel.org/pub/scm/linux/kernel/git/hid/hid.git for-next
patch link:    https://lore.kernel.org/r/20261101054830.291749-1-nehuenlian.kernel%40gmail.com
patch subject: [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives
config: parisc-randconfig-1001-20261103 (https://download.01.org/0day-ci/archive/20261103/202611031325.X7t40TAw-lkp@intel.com/config)
compiler: hppa-linux-gcc (GCC) 14.4.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261103/202611031325.X7t40TAw-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202611031325.X7t40TAw-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/hid/wacom_sys.c: In function '__wacom_initialize_battery':
>> drivers/hid/wacom_sys.c:1842:37: error: passing argument 2 of 'snprintf' makes integer from pointer without a cast [-Wint-conversion]
    1842 |         snprintf(battery->bat_name, "wacom_battery_%ld", n);
         |                                     ^~~~~~~~~~~~~~~~~~~
         |                                     |
         |                                     char *
   In file included from include/linux/kernel.h:32,
                    from include/linux/random.h:7,
                    from include/linux/nodemask.h:94,
                    from include/linux/numa.h:6,
                    from include/linux/cpumask.h:15,
                    from include/linux/smp.h:13,
                    from include/linux/interrupt_rc.h:18,
                    from include/linux/spinlock.h:60,
                    from include/linux/mmzone.h:8,
                    from include/linux/gfp.h:7,
                    from include/linux/slab.h:17,
                    from include/linux/hid.h:19,
                    from drivers/hid/wacom_wac.h:7,
                    from drivers/hid/wacom_sys.c:6:
   include/linux/sprintf.h:13:47: note: expected 'size_t' {aka 'unsigned int'} but argument is of type 'char *'
      13 | __printf(3, 4) int snprintf(char *buf, size_t size, const char *fmt, ...);
         |                                        ~~~~~~~^~~~
>> drivers/hid/wacom_sys.c:1842:58: error: passing argument 3 of 'snprintf' makes pointer from integer without a cast [-Wint-conversion]
    1842 |         snprintf(battery->bat_name, "wacom_battery_%ld", n);
         |                                                          ^
         |                                                          |
         |                                                          long unsigned int
   include/linux/sprintf.h:13:65: note: expected 'const char *' but argument is of type 'long unsigned int'
      13 | __printf(3, 4) int snprintf(char *buf, size_t size, const char *fmt, ...);
         |                                                     ~~~~~~~~~~~~^~~


vim +/snprintf +1842 drivers/hid/wacom_sys.c

  1820	
  1821	static int __wacom_initialize_battery(struct wacom *wacom,
  1822					      struct wacom_battery *battery)
  1823	{
  1824		static atomic_t battery_no = ATOMIC_INIT(0);
  1825		struct device *dev = &wacom->hdev->dev;
  1826		struct power_supply_config psy_cfg = { .drv_data = battery, };
  1827		struct power_supply *ps_bat;
  1828		struct power_supply_desc *bat_desc = &battery->bat_desc;
  1829		unsigned long n;
  1830		int error;
  1831	
  1832		if (!devres_open_group(dev, bat_desc, GFP_KERNEL))
  1833			return -ENOMEM;
  1834	
  1835		battery->wacom = wacom;
  1836	
  1837		n = atomic_inc_return(&battery_no) - 1;
  1838	
  1839		bat_desc->properties = wacom_battery_props;
  1840		bat_desc->num_properties = ARRAY_SIZE(wacom_battery_props);
  1841		bat_desc->get_property = wacom_battery_get_property;
> 1842		snprintf(battery->bat_name, "wacom_battery_%ld", n);
  1843		bat_desc->name = battery->bat_name;
  1844		bat_desc->type = POWER_SUPPLY_TYPE_BATTERY;
  1845		bat_desc->use_for_apm = 0;
  1846	
  1847		ps_bat = devm_power_supply_register(dev, bat_desc, &psy_cfg);
  1848		if (IS_ERR(ps_bat)) {
  1849			error = PTR_ERR(ps_bat);
  1850			goto err;
  1851		}
  1852	
  1853		power_supply_powers(ps_bat, &wacom->hdev->dev);
  1854	
  1855		battery->battery = ps_bat;
  1856	
  1857		devres_close_group(dev, bat_desc);
  1858		return 0;
  1859	
  1860	err:
  1861		devres_release_group(dev, bat_desc);
  1862		return error;
  1863	}
  1864	

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives
  2026-11-01  5:48 ` [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives Nehuen Lian Bova
  2026-11-01  7:18   ` [PATCH v3] HID: wacom: replace sprintf calls with safer alternatives in wacom_sys.c Nehuen Lian Bova
  2026-11-03  5:32   ` [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives kernel test robot
@ 2026-11-03  9:25   ` kernel test robot
  2026-11-03 10:56   ` kernel test robot
  3 siblings, 0 replies; 7+ messages in thread
From: kernel test robot @ 2026-11-03  9:25 UTC (permalink / raw)
  To: Nehuen Lian Bova, jikos, bentiss
  Cc: llvm, oe-kbuild-all, linux-input, linux-kernel, Nehuen Lian Bova

Hi Nehuen,

kernel test robot noticed the following build errors:

[auto build test ERROR on hid/for-next]
[also build test ERROR on linus/master v7.3 next-20261030]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Nehuen-Lian-Bova/HID-wacom-replace-sprintf-calls-with-safer-alternatives/20261101-024830
base:   https://git.kernel.org/pub/scm/linux/kernel/git/hid/hid.git for-next
patch link:    https://lore.kernel.org/r/20261101054830.291749-1-nehuenlian.kernel%40gmail.com
patch subject: [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives
config: i386-randconfig-1000-20261103 (https://download.01.org/0day-ci/archive/20261103/202611031735.MAqF2fN1-lkp@intel.com/config)
compiler: clang version 22.1.8 (https://github.com/llvm/llvm-project ca7933e47d3a3451d81e72ac174dcb5aa28b59d1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261103/202611031735.MAqF2fN1-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202611031735.MAqF2fN1-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/hid/wacom_sys.c:1842:30: error: incompatible pointer to integer conversion passing 'char[18]' to parameter of type '__size_t' (aka 'unsigned int') [-Wint-conversion]
    1842 |         snprintf(battery->bat_name, "wacom_battery_%ld", n);
         |                                     ^~~~~~~~~~~~~~~~~~~
   include/linux/sprintf.h:13:47: note: passing argument to parameter 'size' here
      13 | __printf(3, 4) int snprintf(char *buf, size_t size, const char *fmt, ...);
         |                                               ^
>> drivers/hid/wacom_sys.c:1842:51: error: incompatible integer to pointer conversion passing 'unsigned long' to parameter of type 'const char *' [-Wint-conversion]
    1842 |         snprintf(battery->bat_name, "wacom_battery_%ld", n);
         |                                                          ^
   include/linux/sprintf.h:13:65: note: passing argument to parameter 'fmt' here
      13 | __printf(3, 4) int snprintf(char *buf, size_t size, const char *fmt, ...);
         |                                                                 ^
   2 errors generated.


vim +1842 drivers/hid/wacom_sys.c

  1820	
  1821	static int __wacom_initialize_battery(struct wacom *wacom,
  1822					      struct wacom_battery *battery)
  1823	{
  1824		static atomic_t battery_no = ATOMIC_INIT(0);
  1825		struct device *dev = &wacom->hdev->dev;
  1826		struct power_supply_config psy_cfg = { .drv_data = battery, };
  1827		struct power_supply *ps_bat;
  1828		struct power_supply_desc *bat_desc = &battery->bat_desc;
  1829		unsigned long n;
  1830		int error;
  1831	
  1832		if (!devres_open_group(dev, bat_desc, GFP_KERNEL))
  1833			return -ENOMEM;
  1834	
  1835		battery->wacom = wacom;
  1836	
  1837		n = atomic_inc_return(&battery_no) - 1;
  1838	
  1839		bat_desc->properties = wacom_battery_props;
  1840		bat_desc->num_properties = ARRAY_SIZE(wacom_battery_props);
  1841		bat_desc->get_property = wacom_battery_get_property;
> 1842		snprintf(battery->bat_name, "wacom_battery_%ld", n);
  1843		bat_desc->name = battery->bat_name;
  1844		bat_desc->type = POWER_SUPPLY_TYPE_BATTERY;
  1845		bat_desc->use_for_apm = 0;
  1846	
  1847		ps_bat = devm_power_supply_register(dev, bat_desc, &psy_cfg);
  1848		if (IS_ERR(ps_bat)) {
  1849			error = PTR_ERR(ps_bat);
  1850			goto err;
  1851		}
  1852	
  1853		power_supply_powers(ps_bat, &wacom->hdev->dev);
  1854	
  1855		battery->battery = ps_bat;
  1856	
  1857		devres_close_group(dev, bat_desc);
  1858		return 0;
  1859	
  1860	err:
  1861		devres_release_group(dev, bat_desc);
  1862		return error;
  1863	}
  1864	

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives
  2026-11-01  5:48 ` [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives Nehuen Lian Bova
                     ` (2 preceding siblings ...)
  2026-11-03  9:25   ` kernel test robot
@ 2026-11-03 10:56   ` kernel test robot
  3 siblings, 0 replies; 7+ messages in thread
From: kernel test robot @ 2026-11-03 10:56 UTC (permalink / raw)
  To: Nehuen Lian Bova, jikos, bentiss
  Cc: oe-kbuild-all, linux-input, linux-kernel, Nehuen Lian Bova

Hi Nehuen,

kernel test robot noticed the following build warnings:

[auto build test WARNING on hid/for-next]
[also build test WARNING on linus/master v7.3 next-20261030]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Nehuen-Lian-Bova/HID-wacom-replace-sprintf-calls-with-safer-alternatives/20261101-024830
base:   https://git.kernel.org/pub/scm/linux/kernel/git/hid/hid.git for-next
patch link:    https://lore.kernel.org/r/20261101054830.291749-1-nehuenlian.kernel%40gmail.com
patch subject: [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives
config: nios2-allmodconfig (https://download.01.org/0day-ci/archive/20261103/202611031828.iUFgzaYo-lkp@intel.com/config)
compiler: nios2-linux-gcc (GCC) 11.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261103/202611031828.iUFgzaYo-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202611031828.iUFgzaYo-lkp@intel.com/

All warnings (new ones prefixed by >>):

   drivers/hid/wacom_sys.c: In function '__wacom_initialize_battery':
>> drivers/hid/wacom_sys.c:1842:37: warning: passing argument 2 of 'snprintf' makes integer from pointer without a cast [-Wint-conversion]
    1842 |         snprintf(battery->bat_name, "wacom_battery_%ld", n);
         |                                     ^~~~~~~~~~~~~~~~~~~
         |                                     |
         |                                     char *
   In file included from include/linux/kernel.h:32,
                    from include/linux/random.h:7,
                    from include/linux/nodemask.h:94,
                    from include/linux/numa.h:6,
                    from include/linux/cpumask.h:15,
                    from include/linux/smp.h:13,
                    from include/linux/interrupt_rc.h:18,
                    from include/linux/spinlock.h:60,
                    from include/linux/mmzone.h:8,
                    from include/linux/gfp.h:7,
                    from include/linux/slab.h:17,
                    from include/linux/hid.h:19,
                    from drivers/hid/wacom_wac.h:7,
                    from drivers/hid/wacom_sys.c:6:
   include/linux/sprintf.h:13:47: note: expected 'size_t' {aka 'unsigned int'} but argument is of type 'char *'
      13 | __printf(3, 4) int snprintf(char *buf, size_t size, const char *fmt, ...);
         |                                        ~~~~~~~^~~~
>> drivers/hid/wacom_sys.c:1842:58: warning: passing argument 3 of 'snprintf' makes pointer from integer without a cast [-Wint-conversion]
    1842 |         snprintf(battery->bat_name, "wacom_battery_%ld", n);
         |                                                          ^
         |                                                          |
         |                                                          long unsigned int
   In file included from include/linux/kernel.h:32,
                    from include/linux/random.h:7,
                    from include/linux/nodemask.h:94,
                    from include/linux/numa.h:6,
                    from include/linux/cpumask.h:15,
                    from include/linux/smp.h:13,
                    from include/linux/interrupt_rc.h:18,
                    from include/linux/spinlock.h:60,
                    from include/linux/mmzone.h:8,
                    from include/linux/gfp.h:7,
                    from include/linux/slab.h:17,
                    from include/linux/hid.h:19,
                    from drivers/hid/wacom_wac.h:7,
                    from drivers/hid/wacom_sys.c:6:
   include/linux/sprintf.h:13:65: note: expected 'const char *' but argument is of type 'long unsigned int'
      13 | __printf(3, 4) int snprintf(char *buf, size_t size, const char *fmt, ...);
         |                                                     ~~~~~~~~~~~~^~~


vim +/snprintf +1842 drivers/hid/wacom_sys.c

  1820	
  1821	static int __wacom_initialize_battery(struct wacom *wacom,
  1822					      struct wacom_battery *battery)
  1823	{
  1824		static atomic_t battery_no = ATOMIC_INIT(0);
  1825		struct device *dev = &wacom->hdev->dev;
  1826		struct power_supply_config psy_cfg = { .drv_data = battery, };
  1827		struct power_supply *ps_bat;
  1828		struct power_supply_desc *bat_desc = &battery->bat_desc;
  1829		unsigned long n;
  1830		int error;
  1831	
  1832		if (!devres_open_group(dev, bat_desc, GFP_KERNEL))
  1833			return -ENOMEM;
  1834	
  1835		battery->wacom = wacom;
  1836	
  1837		n = atomic_inc_return(&battery_no) - 1;
  1838	
  1839		bat_desc->properties = wacom_battery_props;
  1840		bat_desc->num_properties = ARRAY_SIZE(wacom_battery_props);
  1841		bat_desc->get_property = wacom_battery_get_property;
> 1842		snprintf(battery->bat_name, "wacom_battery_%ld", n);
  1843		bat_desc->name = battery->bat_name;
  1844		bat_desc->type = POWER_SUPPLY_TYPE_BATTERY;
  1845		bat_desc->use_for_apm = 0;
  1846	
  1847		ps_bat = devm_power_supply_register(dev, bat_desc, &psy_cfg);
  1848		if (IS_ERR(ps_bat)) {
  1849			error = PTR_ERR(ps_bat);
  1850			goto err;
  1851		}
  1852	
  1853		power_supply_powers(ps_bat, &wacom->hdev->dev);
  1854	
  1855		battery->battery = ps_bat;
  1856	
  1857		devres_close_group(dev, bat_desc);
  1858		return 0;
  1859	
  1860	err:
  1861		devres_release_group(dev, bat_desc);
  1862		return error;
  1863	}
  1864	

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-11-03 10:57 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-11-01  1:14 [PATCH] HID: wacom: replace sprintf calls with sysfs_emit calls in wacom_sys.c Nehuen Lian Bova
2026-11-01  5:48 ` [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives Nehuen Lian Bova
2026-11-01  7:18   ` [PATCH v3] HID: wacom: replace sprintf calls with safer alternatives in wacom_sys.c Nehuen Lian Bova
2026-11-02 19:40     ` Jason Gerecke
2026-11-03  5:32   ` [PATCH v2] HID: wacom: replace sprintf calls with safer alternatives kernel test robot
2026-11-03  9:25   ` kernel test robot
2026-11-03 10:56   ` kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®