lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <202312021646.cwwvptuB-lkp@intel.com>
Date:   Sun, 3 Dec 2023 14:07:07 +0800
From:   kernel test robot <lkp@...el.com>
To:     Böszörményi Zoltán <zboszormenyi@...om.com>
Cc:     oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
        Dmitry Torokhov <dmitry.torokhov@...il.com>
Subject: drivers/input/touchscreen/egalax_ts_serial.c:116:21: warning:
 '/input0' directive output may be truncated writing 7 bytes into a region of
 size between 1 and 32

Hi Böszörményi,

FYI, the error/warning still remains.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   815fb87b753055df2d9e50f6cd80eb10235fe3e9
commit: 6b0f8f9c52efe24d6dac06ab963b7bd91c723751 Input: add eGalaxTouch serial touchscreen driver
date:   8 years ago
config: x86_64-randconfig-r032-20230515 (https://download.01.org/0day-ci/archive/20231202/202312021646.cwwvptuB-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231202/202312021646.cwwvptuB-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202312021646.cwwvptuB-lkp@intel.com/

All warnings (new ones prefixed by >>):

   In file included from include/linux/kobject.h:21,
                    from include/linux/module.h:17,
                    from drivers/input/touchscreen/egalax_ts_serial.c:19:
   include/linux/sysfs.h: In function 'sysfs_get_dirent':
   include/linux/sysfs.h:517:44: warning: pointer targets in passing argument 2 of 'kernfs_find_and_get' differ in signedness [-Wpointer-sign]
     517 |         return kernfs_find_and_get(parent, name);
         |                                            ^~~~
         |                                            |
         |                                            const unsigned char *
   In file included from include/linux/sysfs.h:15:
   include/linux/kernfs.h:428:57: note: expected 'const char *' but argument is of type 'const unsigned char *'
     428 | kernfs_find_and_get(struct kernfs_node *kn, const char *name)
         |                                             ~~~~~~~~~~~~^~~~
   drivers/input/touchscreen/egalax_ts_serial.c: In function 'egalax_connect':
>> drivers/input/touchscreen/egalax_ts_serial.c:116:21: warning: '/input0' directive output may be truncated writing 7 bytes into a region of size between 1 and 32 [-Wformat-truncation=]
     116 |                  "%s/input0", serio->phys);
         |                     ^~~~~~~
   drivers/input/touchscreen/egalax_ts_serial.c:115:9: note: 'snprintf' output between 8 and 39 bytes into a destination of size 32
     115 |         snprintf(egalax->phys, sizeof(egalax->phys),
         |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     116 |                  "%s/input0", serio->phys);
         |                  ~~~~~~~~~~~~~~~~~~~~~~~~~


vim +116 drivers/input/touchscreen/egalax_ts_serial.c

    94	
    95	/*
    96	 * egalax_connect() is the routine that is called when someone adds a
    97	 * new serio device that supports egalax protocol and registers it as
    98	 * an input device. This is usually accomplished using inputattach.
    99	 */
   100	static int egalax_connect(struct serio *serio, struct serio_driver *drv)
   101	{
   102		struct egalax *egalax;
   103		struct input_dev *input_dev;
   104		int error;
   105	
   106		egalax = kzalloc(sizeof(struct egalax), GFP_KERNEL);
   107		input_dev = input_allocate_device();
   108		if (!egalax) {
   109			error = -ENOMEM;
   110			goto err_free_mem;
   111		}
   112	
   113		egalax->serio = serio;
   114		egalax->input = input_dev;
   115		snprintf(egalax->phys, sizeof(egalax->phys),
 > 116			 "%s/input0", serio->phys);
   117	
   118		input_dev->name = "EETI eGalaxTouch Serial TouchScreen";
   119		input_dev->phys = egalax->phys;
   120		input_dev->id.bustype = BUS_RS232;
   121		input_dev->id.vendor = SERIO_EGALAX;
   122		input_dev->id.product = 0;
   123		input_dev->id.version = 0x0001;
   124		input_dev->dev.parent = &serio->dev;
   125	
   126		input_set_capability(input_dev, EV_KEY, BTN_TOUCH);
   127		input_set_abs_params(input_dev, ABS_X,
   128				     EGALAX_MIN_XC, EGALAX_MAX_XC, 0, 0);
   129		input_set_abs_params(input_dev, ABS_Y,
   130				     EGALAX_MIN_YC, EGALAX_MAX_YC, 0, 0);
   131	
   132		serio_set_drvdata(serio, egalax);
   133	
   134		error = serio_open(serio, drv);
   135		if (error)
   136			goto err_reset_drvdata;
   137	
   138		error = input_register_device(input_dev);
   139		if (error)
   140			goto err_close_serio;
   141	
   142		return 0;
   143	
   144	err_close_serio:
   145		serio_close(serio);
   146	err_reset_drvdata:
   147		serio_set_drvdata(serio, NULL);
   148	err_free_mem:
   149		input_free_device(input_dev);
   150		kfree(egalax);
   151		return error;
   152	}
   153	

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

Powered by blists - more mailing lists