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-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 17 Nov 2022 03:29:38 +0800
From:   kernel test robot <lkp@...el.com>
To:     Vincent Knecht <vincent.knecht@...loo.org>,
        Dmitry Torokhov <dmitry.torokhov@...il.com>,
        Rob Herring <robh+dt@...nel.org>,
        Krzysztof Kozlowski <krzk@...nel.org>,
        linux-input@...r.kernel.org, devicetree@...r.kernel.org,
        linux-kernel@...r.kernel.org
Cc:     oe-kbuild-all@...ts.linux.dev, w.david0@...tonmail.com,
        stephan@...hold.net, phone-devel@...r.kernel.org,
        ~postmarketos/upstreaming@...ts.sr.ht
Subject: Re: [PATCH v5 2/2] Input: msg2638 - Add support for msg2138 key
 events

Hi Vincent,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on dtor-input/next]
[also build test WARNING on next-20221116]
[cannot apply to dtor-input/for-linus robh/for-next krzk-dt/for-next linus/master v6.1-rc5]
[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/Vincent-Knecht/Input-msg2638-Add-support-for-msg2138-and-key-events/20221117-021842
base:   https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git next
patch link:    https://lore.kernel.org/r/20221116181715.2118436-3-vincent.knecht%40mailoo.org
patch subject: [PATCH v5 2/2] Input: msg2638 - Add support for msg2138 key events
config: m68k-allyesconfig
compiler: m68k-linux-gcc (GCC) 12.1.0
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/290da623ffac857edd71f373a1c152e0fd71f593
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Vincent-Knecht/Input-msg2638-Add-support-for-msg2138-and-key-events/20221117-021842
        git checkout 290da623ffac857edd71f373a1c152e0fd71f593
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=m68k SHELL=/bin/bash drivers/input/

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

All warnings (new ones prefixed by >>):

   In file included from include/linux/device.h:15,
                    from include/linux/acpi.h:15,
                    from include/linux/i2c.h:13,
                    from drivers/input/touchscreen/msg2638.c:16:
   drivers/input/touchscreen/msg2638.c: In function 'msg2638_ts_probe':
>> drivers/input/touchscreen/msg2638.c:407:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'unsigned int' [-Wformat=]
     407 |                 dev_warn(dev, "Found %d linux,keycodes but max is %ld, ignoring the rest\n",
         |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/dev_printk.h:110:30: note: in definition of macro 'dev_printk_index_wrap'
     110 |                 _p_func(dev, fmt, ##__VA_ARGS__);                       \
         |                              ^~~
   include/linux/dev_printk.h:146:61: note: in expansion of macro 'dev_fmt'
     146 |         dev_printk_index_wrap(_dev_warn, KERN_WARNING, dev, dev_fmt(fmt), ##__VA_ARGS__)
         |                                                             ^~~~~~~
   drivers/input/touchscreen/msg2638.c:407:17: note: in expansion of macro 'dev_warn'
     407 |                 dev_warn(dev, "Found %d linux,keycodes but max is %ld, ignoring the rest\n",
         |                 ^~~~~~~~
   drivers/input/touchscreen/msg2638.c:407:69: note: format string is defined here
     407 |                 dev_warn(dev, "Found %d linux,keycodes but max is %ld, ignoring the rest\n",
         |                                                                   ~~^
         |                                                                     |
         |                                                                     long int
         |                                                                   %d


vim +407 drivers/input/touchscreen/msg2638.c

   355	
   356	static int msg2638_ts_probe(struct i2c_client *client)
   357	{
   358		const struct msg_chip_data *chip_data;
   359		struct device *dev = &client->dev;
   360		struct msg2638_ts_data *msg2638;
   361		int error;
   362	
   363		if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) {
   364			dev_err(dev, "Failed to assert adapter's support for plain I2C.\n");
   365			return -ENXIO;
   366		}
   367	
   368		msg2638 = devm_kzalloc(dev, sizeof(*msg2638), GFP_KERNEL);
   369		if (!msg2638)
   370			return -ENOMEM;
   371	
   372		msg2638->client = client;
   373		i2c_set_clientdata(client, msg2638);
   374	
   375		chip_data = device_get_match_data(&client->dev);
   376		if (!chip_data || !chip_data->max_fingers) {
   377			dev_err(dev, "Invalid or missing chip data\n");
   378			return -EINVAL;
   379		}
   380	
   381		msg2638->max_fingers = chip_data->max_fingers;
   382	
   383		msg2638->supplies[0].supply = "vdd";
   384		msg2638->supplies[1].supply = "vddio";
   385		error = devm_regulator_bulk_get(dev, ARRAY_SIZE(msg2638->supplies),
   386						msg2638->supplies);
   387		if (error) {
   388			dev_err(dev, "Failed to get regulators: %d\n", error);
   389			return error;
   390		}
   391	
   392		msg2638->reset_gpiod = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
   393		if (IS_ERR(msg2638->reset_gpiod)) {
   394			error = PTR_ERR(msg2638->reset_gpiod);
   395			dev_err(dev, "Failed to request reset GPIO: %d\n", error);
   396			return error;
   397		}
   398	
   399		msg2638->num_keycodes = fwnode_property_count_u32(dev->fwnode, "linux,keycodes");
   400		if (msg2638->num_keycodes == -EINVAL) {
   401			msg2638->num_keycodes = 0;
   402		} else if (msg2638->num_keycodes < 0) {
   403			dev_err(dev, "Unable to parse linux,keycodes property: %d\n",
   404				msg2638->num_keycodes);
   405			return msg2638->num_keycodes;
   406		} else if (msg2638->num_keycodes > ARRAY_SIZE(msg2638->keycodes)) {
 > 407			dev_warn(dev, "Found %d linux,keycodes but max is %ld, ignoring the rest\n",
   408				 msg2638->num_keycodes, ARRAY_SIZE(msg2638->keycodes));
   409			msg2638->num_keycodes = ARRAY_SIZE(msg2638->keycodes);
   410		}
   411	
   412		error = fwnode_property_read_u32_array(dev->fwnode, "linux,keycodes",
   413						       msg2638->keycodes, msg2638->num_keycodes);
   414		if (error) {
   415			dev_err(dev, "Unable to read linux,keycodes values: %d\n", error);
   416			return error;
   417		}
   418	
   419		error = devm_request_threaded_irq(dev, client->irq,
   420						  NULL, chip_data->irq_handler,
   421						  IRQF_ONESHOT | IRQF_NO_AUTOEN,
   422						  client->name, msg2638);
   423		if (error) {
   424			dev_err(dev, "Failed to request IRQ: %d\n", error);
   425			return error;
   426		}
   427	
   428		error = msg2638_init_input_dev(msg2638);
   429		if (error) {
   430			dev_err(dev, "Failed to initialize input device: %d\n", error);
   431			return error;
   432		}
   433	
   434		return 0;
   435	}
   436	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

View attachment "config" of type "text/plain" (282840 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ