Re: [PATCH 3/3] HID: nvidia-shield: Introduce thunderstrike_destroy()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 26 Aug, 2023 23:13:01 +0200 Christophe JAILLET <christophe.jaillet@xxxxxxxxxx> wrote:
> Le 26/08/2023 à 22:00, kernel test robot a écrit :
>> Hi Christophe,
>> kernel test robot noticed the following build warnings:
>> [auto build test WARNING on linux-next/master]
>> [cannot apply to linus/master v6.5-rc7]
>> [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/Christophe-JAILLET/HID-nvidia-shield-Fix-a-missing-led_classdev_unregister-in-the-probe-error-handling-path/20230827-014602
>> base:   linux-next/master
>> patch link:    https://lore.kernel.org/r/4c9a8c7f6b4eb879dd7ef4d44bb6a80b3f126d25.1693070958.git.christophe.jaillet%40wanadoo.fr
>> patch subject: [PATCH 3/3] HID: nvidia-shield: Introduce thunderstrike_destroy()
>> config: parisc-allyesconfig (https://download.01.org/0day-ci/archive/20230827/202308270307.EDe7t62T-lkp@xxxxxxxxx/config)
>> compiler: hppa-linux-gcc (GCC) 13.2.0
>
> On x86_64, gcc 12.3.0 does not complain. :(

The key to getting gcc to spew the warning is passing W=1 for the make
variable to get the compiler to invoke the unused warning.

  [nix-shell:~/Documents/linux]$ make help | grep -i W=
   make W=n   [targets] Enable extra build checks, n=1,2,3 where
 		Multiple levels can be combined with W=12 or W=123

  linux on  cjaillet/shield-fixup [?] via ❄️  impure (linux-6.1.31)
  ❯ make -C $dev/lib/modules/*/build M=$(pwd)/drivers/hid W=1 modules
    CC [M]  /home/binary-eater/Documents/linux/drivers/hid/hid-nvidia-shield.o
  /home/binary-eater/Documents/linux/drivers/hid/hid-nvidia-shield.c: In function ‘shield_probe’:
  /home/binary-eater/Documents/linux/drivers/hid/hid-nvidia-shield.c:1046:31: warning: variable ‘ts’ set but not used [-Wunused-but-set-variable]
   1046 |         struct thunderstrike *ts;
        |                               ^~
    MODPOST /home/binary-eater/Documents/linux/drivers/hid/Module.symvers
    CC [M]  /home/binary-eater/Documents/linux/drivers/hid/hid-nvidia-shield.mod.o
    LD [M]  /home/binary-eater/Documents/linux/drivers/hid/hid-nvidia-shield.ko
    BTF [M] /home/binary-eater/Documents/linux/drivers/hid/hid-nvidia-shield.ko

  linux on  cjaillet/shield-fixup [?] via ❄️  impure (linux-6.1.31) took 4s
  ❯ gcc --version
  gcc (GCC) 12.2.0
  Copyright (C) 2022 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Hope this is helpful.

-- Rahul Rameshbabu

>
> Let see first if there is some comment on the serie, then I'll send a v2 to fix
> the warning.
>
> CJ
>
>> reproduce: (https://download.01.org/0day-ci/archive/20230827/202308270307.EDe7t62T-lkp@xxxxxxxxx/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@xxxxxxxxx>
>> | Closes: https://lore.kernel.org/oe-kbuild-all/202308270307.EDe7t62T-lkp@xxxxxxxxx/
>> All warnings (new ones prefixed by >>):
>>     drivers/hid/hid-nvidia-shield.c: In function 'shield_probe':
>>>> drivers/hid/hid-nvidia-shield.c:1046:31: warning: variable 'ts' set but not used [-Wunused-but-set-variable]
>>      1046 |         struct thunderstrike *ts;
>>           |                               ^~
>> vim +/ts +1046 drivers/hid/hid-nvidia-shield.c
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1042
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1043  static int shield_probe(struct hid_device *hdev, const struct hid_device_id *id)
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1044  {
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1045  	struct shield_device *shield_dev = NULL;
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08 @1046  	struct thunderstrike *ts;
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1047  	int ret;
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1048
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1049  	ret = hid_parse(hdev);
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1050  	if (ret) {
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1051  		hid_err(hdev, "Parse failed\n");
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1052  		return ret;
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1053  	}
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1054
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1055  	switch (id->product) {
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1056  	case USB_DEVICE_ID_NVIDIA_THUNDERSTRIKE_CONTROLLER:
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1057  		shield_dev = thunderstrike_create(hdev);
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1058  		break;
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1059  	}
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1060
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1061  	if (unlikely(!shield_dev)) {
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1062  		hid_err(hdev, "Failed to identify SHIELD device\n");
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1063  		return -ENODEV;
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1064  	}
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1065  	if (IS_ERR(shield_dev)) {
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1066  		hid_err(hdev, "Failed to create SHIELD device\n");
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1067  		return PTR_ERR(shield_dev);
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1068  	}
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1069
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1070  	ts = container_of(shield_dev, struct thunderstrike, base);
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1071
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1072  	ret = hid_hw_start(hdev, HID_CONNECT_HIDINPUT);
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1073  	if (ret) {
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1074  		hid_err(hdev, "Failed to start HID device\n");
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1075  		goto err_haptics;
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1076  	}
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1077
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1078  	ret = hid_hw_open(hdev);
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1079  	if (ret) {
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1080  		hid_err(hdev, "Failed to open HID device\n");
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1081  		goto err_stop;
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1082  	}
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1083
>> 3ab196f882377ed Rahul Rameshbabu   2023-08-07  1084  	thunderstrike_device_init_info(shield_dev);
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1085
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1086  	return ret;
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1087
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1088  err_stop:
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1089  	hid_hw_stop(hdev);
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1090  err_haptics:
>> 2cc4637842495c6 Christophe JAILLET 2023-08-26  1091  	thunderstrike_destroy(hdev);
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1092  	return ret;
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1093  }
>> 09308562d4afb1a Rahul Rameshbabu   2023-06-08  1094
>> 




[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux