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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202111210320.qVQUuvuH-lkp@intel.com>
Date:   Sun, 21 Nov 2021 03:05:59 +0800
From:   kernel test robot <lkp@...el.com>
To:     Alejandro Colomar <alx.manpages@...il.com>,
        LKML <linux-kernel@...r.kernel.org>
Cc:     kbuild-all@...ts.01.org,
        Alejandro Colomar <alx.manpages@...il.com>,
        Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
        Arnd Bergmann <arnd@...db.de>,
        Alexey Dobriyan <adobriyan@...il.com>,
        Jani Nikula <jani.nikula@...ux.intel.com>,
        Rasmus Villemoes <linux@...musvillemoes.dk>,
        Kees Cook <keescook@...omium.org>,
        Joe Perches <joe@...ches.com>
Subject: Re: [PATCH v2 10/20] linux/container_of.h: Remove unnecessary cast

Hi Alejandro,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on robh/for-next]
[also build test WARNING on linux/master linus/master v5.16-rc1 next-20211118]
[cannot apply to drm-intel/for-linux-next]
[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]

url:    https://github.com/0day-ci/linux/commits/Alejandro-Colomar/linux-stddef-h-linux-offsetof-h-Split-offsetof-into-a-separate-header/20211120-220144
base:   https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
config: csky-randconfig-s031-20211118 (attached as .config)
compiler: csky-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/0day-ci/linux/commit/ed03be33a3de1708b5a06ea31cc6cd8573890649
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Alejandro-Colomar/linux-stddef-h-linux-offsetof-h-Split-offsetof-into-a-separate-header/20211120-220144
        git checkout ed03be33a3de1708b5a06ea31cc6cd8573890649
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=csky 

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/char/ipmi/ipmi_msghandler.c:200:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/char/ipmi/ipmi_msghandler.c:200:17: sparse:    struct ipmi_user [noderef] __rcu *
   drivers/char/ipmi/ipmi_msghandler.c:200:17: sparse:    struct ipmi_user *
   drivers/char/ipmi/ipmi_msghandler.c:1251:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/char/ipmi/ipmi_msghandler.c:1251:9: sparse:    struct ipmi_user [noderef] __rcu *
   drivers/char/ipmi/ipmi_msghandler.c:1251:9: sparse:    struct ipmi_user *
   drivers/char/ipmi/ipmi_msghandler.c:1320:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/char/ipmi/ipmi_msghandler.c:1320:9: sparse:    struct ipmi_user [noderef] __rcu *
   drivers/char/ipmi/ipmi_msghandler.c:1320:9: sparse:    struct ipmi_user *
>> drivers/char/ipmi/ipmi_msghandler.c:3701:25: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const *__mptr @@     got struct list_head [noderef] __rcu * @@
   drivers/char/ipmi/ipmi_msghandler.c:203:9: sparse: sparse: context imbalance in 'acquire_ipmi_user' - different lock contexts for basic block
   drivers/char/ipmi/ipmi_msghandler.c: note: in included file (through include/linux/notifier.h, include/linux/memory_hotplug.h, include/linux/mmzone.h, ...):
   include/linux/srcu.h:188:9: sparse: sparse: context imbalance in 'release_ipmi_user' - unexpected unlock
   drivers/char/ipmi/ipmi_msghandler.c:942:9: sparse: sparse: context imbalance in 'deliver_response' - different lock contexts for basic block
   drivers/char/ipmi/ipmi_msghandler.c:1303:13: sparse: sparse: context imbalance in '_ipmi_destroy_user' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1385:5: sparse: sparse: context imbalance in 'ipmi_get_version' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1407:5: sparse: sparse: context imbalance in 'ipmi_set_my_address' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1429:5: sparse: sparse: context imbalance in 'ipmi_get_my_address' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1451:5: sparse: sparse: context imbalance in 'ipmi_set_my_LUN' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1473:5: sparse: sparse: context imbalance in 'ipmi_get_my_LUN' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1495:5: sparse: sparse: context imbalance in 'ipmi_get_maintenance_mode' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1520:5: sparse: sparse: context imbalance in 'ipmi_set_maintenance_mode' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1562:5: sparse: sparse: context imbalance in 'ipmi_set_gets_events' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1659:5: sparse: sparse: context imbalance in 'ipmi_register_for_cmd' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1704:5: sparse: sparse: context imbalance in 'ipmi_unregister_for_cmd' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:1869:39: sparse: sparse: context imbalance in 'smi_send' - unexpected unlock
   drivers/char/ipmi/ipmi_msghandler.c:2372:5: sparse: sparse: context imbalance in 'ipmi_request_settime' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:2411:5: sparse: sparse: context imbalance in 'ipmi_request_supply_msgs' - wrong count at exit
   drivers/char/ipmi/ipmi_msghandler.c:4687:39: sparse: sparse: context imbalance in 'handle_new_recv_msgs' - unexpected unlock
   drivers/char/ipmi/ipmi_msghandler.c:4744:9: sparse: sparse: context imbalance in 'smi_recv_tasklet' - different lock contexts for basic block
   drivers/char/ipmi/ipmi_msghandler.c:4779:39: sparse: sparse: context imbalance in 'ipmi_smi_msg_received' - unexpected unlock
   drivers/char/ipmi/ipmi_msghandler.c:4875:39: sparse: sparse: context imbalance in 'check_msg_timeout' - unexpected unlock

vim +3701 drivers/char/ipmi/ipmi_msghandler.c

b2c03941b50944 Corey Minyard  2006-12-06  3674  
6a0d23ed338ed7 Corey Minyard  2018-04-11  3675  void ipmi_unregister_smi(struct ipmi_smi *intf)
^1da177e4c3f41 Linus Torvalds 2005-04-16  3676  {
^1da177e4c3f41 Linus Torvalds 2005-04-16  3677  	struct ipmi_smi_watcher *w;
e86ee2d44b4405 Corey Minyard  2018-04-05  3678  	int intf_num = intf->intf_num, index;
^1da177e4c3f41 Linus Torvalds 2005-04-16  3679  
bca0324d09e413 Corey Minyard  2006-12-06  3680  	mutex_lock(&ipmi_interfaces_mutex);
b2c03941b50944 Corey Minyard  2006-12-06  3681  	intf->intf_num = -1;
7ea0ed2b5be817 Corey Minyard  2014-11-06  3682  	intf->in_shutdown = true;
bca0324d09e413 Corey Minyard  2006-12-06  3683  	list_del_rcu(&intf->link);
bca0324d09e413 Corey Minyard  2006-12-06  3684  	mutex_unlock(&ipmi_interfaces_mutex);
e86ee2d44b4405 Corey Minyard  2018-04-05  3685  	synchronize_srcu(&ipmi_interfaces_srcu);
^1da177e4c3f41 Linus Torvalds 2005-04-16  3686  
e86ee2d44b4405 Corey Minyard  2018-04-05  3687  	/* At this point no users can be added to the interface. */
^1da177e4c3f41 Linus Torvalds 2005-04-16  3688  
c70d749986f6f1 Corey Minyard  2008-04-29  3689  	/*
c70d749986f6f1 Corey Minyard  2008-04-29  3690  	 * Call all the watcher interfaces to tell them that
e86ee2d44b4405 Corey Minyard  2018-04-05  3691  	 * an interface is going away.
c70d749986f6f1 Corey Minyard  2008-04-29  3692  	 */
e86ee2d44b4405 Corey Minyard  2018-04-05  3693  	mutex_lock(&smi_watchers_mutex);
393d2cc354d150 Corey Minyard  2005-11-07  3694  	list_for_each_entry(w, &smi_watchers, link)
b2c03941b50944 Corey Minyard  2006-12-06  3695  		w->smi_gone(intf_num);
b2c03941b50944 Corey Minyard  2006-12-06  3696  	mutex_unlock(&smi_watchers_mutex);
393d2cc354d150 Corey Minyard  2005-11-07  3697  
e86ee2d44b4405 Corey Minyard  2018-04-05  3698  	index = srcu_read_lock(&intf->users_srcu);
e86ee2d44b4405 Corey Minyard  2018-04-05  3699  	while (!list_empty(&intf->users)) {
e86ee2d44b4405 Corey Minyard  2018-04-05  3700  		struct ipmi_user *user =
e86ee2d44b4405 Corey Minyard  2018-04-05 @3701  			container_of(list_next_rcu(&intf->users),
e86ee2d44b4405 Corey Minyard  2018-04-05  3702  				     struct ipmi_user, link);
e86ee2d44b4405 Corey Minyard  2018-04-05  3703  
e86ee2d44b4405 Corey Minyard  2018-04-05  3704  		_ipmi_destroy_user(user);
e86ee2d44b4405 Corey Minyard  2018-04-05  3705  	}
e86ee2d44b4405 Corey Minyard  2018-04-05  3706  	srcu_read_unlock(&intf->users_srcu, index);
e86ee2d44b4405 Corey Minyard  2018-04-05  3707  
2512e40e48d21d Corey Minyard  2018-08-22  3708  	if (intf->handlers->shutdown)
e86ee2d44b4405 Corey Minyard  2018-04-05  3709  		intf->handlers->shutdown(intf->send_info);
e86ee2d44b4405 Corey Minyard  2018-04-05  3710  
e86ee2d44b4405 Corey Minyard  2018-04-05  3711  	cleanup_smi_msgs(intf);
e86ee2d44b4405 Corey Minyard  2018-04-05  3712  
e86ee2d44b4405 Corey Minyard  2018-04-05  3713  	ipmi_bmc_unregister(intf);
e86ee2d44b4405 Corey Minyard  2018-04-05  3714  
e86ee2d44b4405 Corey Minyard  2018-04-05  3715  	cleanup_srcu_struct(&intf->users_srcu);
393d2cc354d150 Corey Minyard  2005-11-07  3716  	kref_put(&intf->refcount, intf_free);
^1da177e4c3f41 Linus Torvalds 2005-04-16  3717  }
c70d749986f6f1 Corey Minyard  2008-04-29  3718  EXPORT_SYMBOL(ipmi_unregister_smi);
^1da177e4c3f41 Linus Torvalds 2005-04-16  3719  

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

Download attachment ".config.gz" of type "application/gzip" (27774 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ