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>] [day] [month] [year] [list]
Message-ID: <202112171058.s47VBRgI-lkp@intel.com>
Date:   Fri, 17 Dec 2021 10:41:50 +0800
From:   kernel test robot <lkp@...el.com>
To:     Tero Kristo <tero.kristo@...ux.intel.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: [t-kristo-pm:usi-5.16-v5-bpf 16/19] drivers/hid/hid-bpf.c:696:36:
 sparse: sparse: incorrect type in argument 1 (different address spaces)

tree:   https://github.com/t-kristo/linux-pm usi-5.16-v5-bpf
head:   82a2c7cbd9682f2664179cd7e01647e46272c316
commit: 8ffc42bfd37f05ffa2c284b71a6c3bb5021fac8f [16/19] HID: bpf: add support for new workqueue triggering BPF call
config: arm64-randconfig-s031-20211216 (https://download.01.org/0day-ci/archive/20211217/202112171058.s47VBRgI-lkp@intel.com/config)
compiler: aarch64-linux-gcc (GCC) 11.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.4-dirty
        # https://github.com/t-kristo/linux-pm/commit/8ffc42bfd37f05ffa2c284b71a6c3bb5021fac8f
        git remote add t-kristo-pm https://github.com/t-kristo/linux-pm
        git fetch --no-tags t-kristo-pm usi-5.16-v5-bpf
        git checkout 8ffc42bfd37f05ffa2c284b71a6c3bb5021fac8f
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/hid/ drivers/pinctrl/

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


sparse warnings: (new ones prefixed by >>)
   drivers/hid/hid-bpf.c:38:21: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/hid/hid-bpf.c:38:21: sparse:    struct bpf_prog_array [noderef] __rcu *
   drivers/hid/hid-bpf.c:38:21: sparse:    struct bpf_prog_array *
   drivers/hid/hid-bpf.c:48:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/hid/hid-bpf.c:48:9: sparse:    struct bpf_prog_array [noderef] __rcu *
   drivers/hid/hid-bpf.c:48:9: sparse:    struct bpf_prog_array *
   drivers/hid/hid-bpf.c:68:20: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/hid/hid-bpf.c:68:20: sparse:    struct bpf_prog [noderef] __rcu *
   drivers/hid/hid-bpf.c:68:20: sparse:    struct bpf_prog *
   drivers/hid/hid-bpf.c:68:20: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/hid/hid-bpf.c:68:20: sparse:    struct bpf_prog [noderef] __rcu *
   drivers/hid/hid-bpf.c:68:20: sparse:    struct bpf_prog *
   drivers/hid/hid-bpf.c:83:59: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected struct bpf_prog_array **array @@     got struct bpf_prog_array [noderef] __rcu ** @@
   drivers/hid/hid-bpf.c:83:59: sparse:     expected struct bpf_prog_array **array
   drivers/hid/hid-bpf.c:83:59: sparse:     got struct bpf_prog_array [noderef] __rcu **
   drivers/hid/hid-bpf.c:85:59: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected struct bpf_prog_array **array @@     got struct bpf_prog_array [noderef] __rcu ** @@
   drivers/hid/hid-bpf.c:85:59: sparse:     expected struct bpf_prog_array **array
   drivers/hid/hid-bpf.c:85:59: sparse:     got struct bpf_prog_array [noderef] __rcu **
   drivers/hid/hid-bpf.c:87:52: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected struct bpf_prog **target @@     got struct bpf_prog [noderef] __rcu ** @@
   drivers/hid/hid-bpf.c:87:52: sparse:     expected struct bpf_prog **target
   drivers/hid/hid-bpf.c:87:52: sparse:     got struct bpf_prog [noderef] __rcu **
   drivers/hid/hid-bpf.c:93:53: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected struct bpf_prog **target @@     got struct bpf_prog [noderef] __rcu ** @@
   drivers/hid/hid-bpf.c:93:53: sparse:     expected struct bpf_prog **target
   drivers/hid/hid-bpf.c:93:53: sparse:     got struct bpf_prog [noderef] __rcu **
   drivers/hid/hid-bpf.c:111:21: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/hid/hid-bpf.c:111:21: sparse:    struct bpf_prog_array [noderef] __rcu *
   drivers/hid/hid-bpf.c:111:21: sparse:    struct bpf_prog_array *
   drivers/hid/hid-bpf.c:121:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/hid/hid-bpf.c:121:9: sparse:    struct bpf_prog_array [noderef] __rcu *
   drivers/hid/hid-bpf.c:121:9: sparse:    struct bpf_prog_array *
   drivers/hid/hid-bpf.c:140:20: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/hid/hid-bpf.c:140:20: sparse:    struct bpf_prog [noderef] __rcu *
   drivers/hid/hid-bpf.c:140:20: sparse:    struct bpf_prog *
   drivers/hid/hid-bpf.c:140:20: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/hid/hid-bpf.c:140:20: sparse:    struct bpf_prog [noderef] __rcu *
   drivers/hid/hid-bpf.c:140:20: sparse:    struct bpf_prog *
   drivers/hid/hid-bpf.c:156:59: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected struct bpf_prog_array **array @@     got struct bpf_prog_array [noderef] __rcu ** @@
   drivers/hid/hid-bpf.c:156:59: sparse:     expected struct bpf_prog_array **array
   drivers/hid/hid-bpf.c:156:59: sparse:     got struct bpf_prog_array [noderef] __rcu **
   drivers/hid/hid-bpf.c:158:59: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected struct bpf_prog_array **array @@     got struct bpf_prog_array [noderef] __rcu ** @@
   drivers/hid/hid-bpf.c:158:59: sparse:     expected struct bpf_prog_array **array
   drivers/hid/hid-bpf.c:158:59: sparse:     got struct bpf_prog_array [noderef] __rcu **
   drivers/hid/hid-bpf.c:160:26: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/hid/hid-bpf.c:160:26: sparse:    struct bpf_prog *
   drivers/hid/hid-bpf.c:160:26: sparse:    struct bpf_prog [noderef] __rcu *
   drivers/hid/hid-bpf.c:169:26: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/hid/hid-bpf.c:169:26: sparse:    struct bpf_prog *
   drivers/hid/hid-bpf.c:169:26: sparse:    struct bpf_prog [noderef] __rcu *
   drivers/hid/hid-bpf.c:228:27: sparse: sparse: symbol 'hid_prog_ops' was not declared. Should it be static?
   drivers/hid/hid-bpf.c:243:23: sparse: sparse: symbol 'hid_bpf_add_report' was not declared. Should it be static?
   drivers/hid/hid-bpf.c:271:6: sparse: sparse: symbol 'hid_bpf_free_reports' was not declared. Should it be static?
   drivers/hid/hid-bpf.c:649:31: sparse: sparse: symbol 'hid_verifier_ops' was not declared. Should it be static?
>> drivers/hid/hid-bpf.c:696:36: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct bpf_prog const *prog @@     got struct bpf_prog [noderef] __rcu *work_prog @@
   drivers/hid/hid-bpf.c:857:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct bpf_prog const *prog @@     got struct bpf_prog [noderef] __rcu *rdesc_fixup_prog @@
   drivers/hid/hid-bpf.c:909:39: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct bpf_prog *prog @@     got struct bpf_prog [noderef] __rcu *rdesc_fixup_prog @@

vim +696 drivers/hid/hid-bpf.c

   688	
   689	static void hid_bpf_work(struct work_struct *work)
   690	{
   691		struct hid_bpf_ctx *ctx =
   692			container_of(work, struct hid_bpf_ctx, work.work);
   693	
   694		migrate_disable();
   695	
 > 696		bpf_prog_run(ctx->hdev->bpf.work_prog, ctx);
   697	
   698		migrate_enable();
   699	}
   700	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ