All of lore.kernel.org
 help / color / mirror / Atom feed
* [android-common:android-4.9-o-release 44/44] include/linux/rculist_nulls.h:127:16: sparse: sparse: incorrect type in assignment (different address spaces)
@ 2019-11-07 15:22 kbuild test robot
  2019-11-07 15:22 ` [RFC PATCH android-common] objtool, perf: nfs4_cb_sv_ops[] can be static kbuild test robot
  0 siblings, 1 reply; 2+ messages in thread
From: kbuild test robot @ 2019-11-07 15:22 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 14203 bytes --]

tree:   https://android.googlesource.com/kernel/common android-4.9-o-release
head:   2d1579e6534c17bac9e927d85fe5d76b7c95b3ad
commit: 2d1579e6534c17bac9e927d85fe5d76b7c95b3ad [44/44] objtool, perf: Fix GCC 8 -Wrestrict error
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.1-21-gb31adac-dirty
        git checkout 2d1579e6534c17bac9e927d85fe5d76b7c95b3ad
        make ARCH=x86_64 allmodconfig
        make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>


sparse warnings: (new ones prefixed by >>)

>> include/linux/rculist_nulls.h:127:16: sparse: sparse: incorrect type in assignment (different address spaces) @@    expected struct hlist_nulls_node *i @@    got struct hlist_nullsstruct hlist_nulls_node *i @@
>> include/linux/rculist_nulls.h:127:16: sparse:    expected struct hlist_nulls_node *i
>> include/linux/rculist_nulls.h:127:16: sparse:    got struct hlist_nulls_node [noderef] <asn:4> *
   include/linux/rculist_nulls.h:128:16: sparse: sparse: incorrect type in assignment (different address spaces) @@    expected struct hlist_nulls_node *i @@    got struct hlist_nullsstruct hlist_nulls_node *i @@
   include/linux/rculist_nulls.h:128:16: sparse:    expected struct hlist_nulls_node *i
   include/linux/rculist_nulls.h:128:16: sparse:    got struct hlist_nulls_node [noderef] <asn:4> *
>> include/linux/rculist_nulls.h:127:16: sparse: sparse: incorrect type in assignment (different address spaces) @@    expected struct hlist_nulls_node *i @@    got struct hlist_nullsstruct hlist_nulls_node *i @@
>> include/linux/rculist_nulls.h:127:16: sparse:    expected struct hlist_nulls_node *i
>> include/linux/rculist_nulls.h:127:16: sparse:    got struct hlist_nulls_node [noderef] <asn:4> *
   include/linux/rculist_nulls.h:128:16: sparse: sparse: incorrect type in assignment (different address spaces) @@    expected struct hlist_nulls_node *i @@    got struct hlist_nullsstruct hlist_nulls_node *i @@
   include/linux/rculist_nulls.h:128:16: sparse:    expected struct hlist_nulls_node *i
   include/linux/rculist_nulls.h:128:16: sparse:    got struct hlist_nulls_node [noderef] <asn:4> *
   include/linux/rculist.h:514:16: sparse: sparse: incorrect type in assignment (different address spaces) @@    expected struct hlist_node *i @@    got struct hlist_node struct hlist_node *i @@
   include/linux/rculist.h:514:16: sparse:    expected struct hlist_node *i
   include/linux/rculist.h:514:16: sparse:    got struct hlist_node [noderef] <asn:4> *
   include/linux/rculist.h:514:43: sparse: sparse: incorrect type in assignment (different address spaces) @@    expected struct hlist_node *i @@    got struct hlist_node struct hlist_node *i @@
   include/linux/rculist.h:514:43: sparse:    expected struct hlist_node *i
   include/linux/rculist.h:514:43: sparse:    got struct hlist_node [noderef] <asn:4> *
--
>> include/linux/rculist_nulls.h:127:16: sparse: sparse: incorrect type in assignment (different address spaces) @@    expected struct hlist_nulls_node *i @@    got struct hlist_nullsstruct hlist_nulls_node *i @@
>> include/linux/rculist_nulls.h:127:16: sparse:    expected struct hlist_nulls_node *i
>> include/linux/rculist_nulls.h:127:16: sparse:    got struct hlist_nulls_node [noderef] <asn:4> *
   include/linux/rculist_nulls.h:128:16: sparse: sparse: incorrect type in assignment (different address spaces) @@    expected struct hlist_nulls_node *i @@    got struct hlist_nullsstruct hlist_nulls_node *i @@
   include/linux/rculist_nulls.h:128:16: sparse:    expected struct hlist_nulls_node *i
   include/linux/rculist_nulls.h:128:16: sparse:    got struct hlist_nulls_node [noderef] <asn:4> *
--
>> net/ipv6/ip6_tunnel.c:886:12: sparse: sparse: context imbalance in 'ipxip6_rcv' - different lock contexts for basic block
--
>> net/qrtr/qrtr.c:274:16: sparse: sparse: incorrect type in assignment (different base types) @@    expected unsigned int [usertype] @@    got restrunsigned int [usertype] @@
>> net/qrtr/qrtr.c:274:16: sparse:    expected unsigned int [usertype]
>> net/qrtr/qrtr.c:274:16: sparse:    got restricted __le32 [usertype]
   net/qrtr/qrtr.c:275:16: sparse: sparse: incorrect type in assignment (different base types) @@    expected unsigned int [usertype] @@    got restrunsigned int [usertype] @@
   net/qrtr/qrtr.c:275:16: sparse:    expected unsigned int [usertype]
   net/qrtr/qrtr.c:275:16: sparse:    got restricted __le32 [usertype]
   net/qrtr/qrtr.c:276:16: sparse: sparse: incorrect type in assignment (different base types) @@    expected unsigned int [usertype] @@    got restrunsigned int [usertype] @@
   net/qrtr/qrtr.c:276:16: sparse:    expected unsigned int [usertype]
   net/qrtr/qrtr.c:276:16: sparse:    got restricted __le32 [usertype]
--
>> fs/nfs/callback.c:234:21: sparse: sparse: symbol 'nfs4_cb_sv_ops' was not declared. Should it be static?
--
>> drivers/net/ethernet/broadcom/bgmac.c:532:38: sparse: sparse: restricted __le32 degrades to integer
--
>> drivers/base/regmap/regmap.c:101:27: sparse: sparse: Using plain integer as NULL pointer
   drivers/base/regmap/regmap.c:323:14: sparse: sparse: incorrect type in assignment (different base types) @@    expected restricted __be16 [usertype] @@    got e] @@
   drivers/base/regmap/regmap.c:323:14: sparse:    expected restricted __be16 [usertype]
   drivers/base/regmap/regmap.c:323:14: sparse:    got int
   drivers/base/regmap/regmap.c:330:14: sparse: sparse: incorrect type in assignment (different base types) @@    expected restricted __le16 [usertype] @@    got tricted __le16 [usertype] @@
   drivers/base/regmap/regmap.c:330:14: sparse:    expected restricted __le16 [usertype]
   drivers/base/regmap/regmap.c:330:14: sparse:    got unsigned short [usertype]
   drivers/base/regmap/regmap.c:366:14: sparse: sparse: incorrect type in assignment (different base types) @@    expected restricted __be32 [usertype] @@    got  [usertype] @@
   drivers/base/regmap/regmap.c:366:14: sparse:    expected restricted __be32 [usertype]
   drivers/base/regmap/regmap.c:366:14: sparse:    got unsigned int
   drivers/base/regmap/regmap.c:373:14: sparse: sparse: incorrect type in assignment (different base types) @@    expected restricted __le32 [usertype] @@    got icted __le32 [usertype] @@
   drivers/base/regmap/regmap.c:373:14: sparse:    expected restricted __le32 [usertype]
   drivers/base/regmap/regmap.c:373:14: sparse:    got unsigned int [usertype]
   drivers/base/regmap/regmap.c:400:14: sparse: sparse: incorrect type in assignment (different base types) @@    expected restricted __be64 [usertype] @@    got __be64 [usertype] @@
   drivers/base/regmap/regmap.c:400:14: sparse:    expected restricted __be64 [usertype]
   drivers/base/regmap/regmap.c:400:14: sparse:    got unsigned long long
   drivers/base/regmap/regmap.c:407:14: sparse: sparse: incorrect type in assignment (different base types) @@    expected restricted __le64 [usertype] @@    got urestricted __le64 [usertype] @@
   drivers/base/regmap/regmap.c:407:14: sparse:    expected restricted __le64 [usertype]
   drivers/base/regmap/regmap.c:407:14: sparse:    got unsigned long long [usertype]
--
>> sound/soc/codecs/rt5659.c:1153:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1156:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1159:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1162:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1165:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1168:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1171:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1174:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1210:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1214:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1218:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1222:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1226:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1230:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1234:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1933:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1940:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1954:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1967:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1980:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:1993:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2007:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2021:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2034:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2041:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2054:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2067:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2080:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2093:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2107:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2114:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2127:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2134:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2147:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2154:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2167:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2174:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2187:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2200:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2213:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2220:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2233:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:2253:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5659.c:4233:19: sparse: sparse: symbol 'rt5659_i2c_driver' was not declared. Should it be static?
--
>> sound/soc/codecs/rt5660.c:529:14: sparse: sparse: duplicate const
   sound/soc/codecs/rt5660.c:532:14: sparse: sparse: duplicate const

Please review and possibly fold the followup patch.

vim +127 include/linux/rculist_nulls.h

d894ba18d4e449 Craig Gallek 2016-04-12  101  
d894ba18d4e449 Craig Gallek 2016-04-12  102  /**
d894ba18d4e449 Craig Gallek 2016-04-12  103   * hlist_nulls_add_tail_rcu
d894ba18d4e449 Craig Gallek 2016-04-12  104   * @n: the element to add to the hash list.
d894ba18d4e449 Craig Gallek 2016-04-12  105   * @h: the list to add to.
d894ba18d4e449 Craig Gallek 2016-04-12  106   *
d894ba18d4e449 Craig Gallek 2016-04-12  107   * Description:
d894ba18d4e449 Craig Gallek 2016-04-12  108   * Adds the specified element to the end of the specified hlist_nulls,
d894ba18d4e449 Craig Gallek 2016-04-12  109   * while permitting racing traversals.  NOTE: tail insertion requires
d894ba18d4e449 Craig Gallek 2016-04-12  110   * list traversal.
d894ba18d4e449 Craig Gallek 2016-04-12  111   *
d894ba18d4e449 Craig Gallek 2016-04-12  112   * The caller must take whatever precautions are necessary
d894ba18d4e449 Craig Gallek 2016-04-12  113   * (such as holding appropriate locks) to avoid racing
d894ba18d4e449 Craig Gallek 2016-04-12  114   * with another list-mutation primitive, such as hlist_nulls_add_head_rcu()
d894ba18d4e449 Craig Gallek 2016-04-12  115   * or hlist_nulls_del_rcu(), running on this same list.
d894ba18d4e449 Craig Gallek 2016-04-12  116   * However, it is perfectly legal to run concurrently with
d894ba18d4e449 Craig Gallek 2016-04-12  117   * the _rcu list-traversal primitives, such as
d894ba18d4e449 Craig Gallek 2016-04-12  118   * hlist_nulls_for_each_entry_rcu(), used to prevent memory-consistency
d894ba18d4e449 Craig Gallek 2016-04-12  119   * problems on Alpha CPUs.  Regardless of the type of CPU, the
d894ba18d4e449 Craig Gallek 2016-04-12  120   * list-traversal primitive must be guarded by rcu_read_lock().
d894ba18d4e449 Craig Gallek 2016-04-12  121   */
d894ba18d4e449 Craig Gallek 2016-04-12  122  static inline void hlist_nulls_add_tail_rcu(struct hlist_nulls_node *n,
d894ba18d4e449 Craig Gallek 2016-04-12  123  					struct hlist_nulls_head *h)
d894ba18d4e449 Craig Gallek 2016-04-12  124  {
d894ba18d4e449 Craig Gallek 2016-04-12  125  	struct hlist_nulls_node *i, *last = NULL;
d894ba18d4e449 Craig Gallek 2016-04-12  126  
d894ba18d4e449 Craig Gallek 2016-04-12 @127  	for (i = hlist_nulls_first_rcu(h); !is_a_nulls(i);
d894ba18d4e449 Craig Gallek 2016-04-12  128  	     i = hlist_nulls_next_rcu(i))
d894ba18d4e449 Craig Gallek 2016-04-12  129  		last = i;
d894ba18d4e449 Craig Gallek 2016-04-12  130  
d894ba18d4e449 Craig Gallek 2016-04-12  131  	if (last) {
d894ba18d4e449 Craig Gallek 2016-04-12  132  		n->next = last->next;
d894ba18d4e449 Craig Gallek 2016-04-12  133  		n->pprev = &last->next;
d894ba18d4e449 Craig Gallek 2016-04-12  134  		rcu_assign_pointer(hlist_nulls_next_rcu(last), n);
d894ba18d4e449 Craig Gallek 2016-04-12  135  	} else {
d894ba18d4e449 Craig Gallek 2016-04-12  136  		hlist_nulls_add_head_rcu(n, h);
d894ba18d4e449 Craig Gallek 2016-04-12  137  	}
d894ba18d4e449 Craig Gallek 2016-04-12  138  }
d894ba18d4e449 Craig Gallek 2016-04-12  139  

:::::: The code at line 127 was first introduced by commit
:::::: d894ba18d4e449b3a7f6eb491f16c9e02933736e soreuseport: fix ordering for mixed v4/v6 sockets

:::::: TO: Craig Gallek <kraig@google.com>
:::::: CC: David S. Miller <davem@davemloft.net>

---
0-DAY kernel test infrastructure                 Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org Intel Corporation

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [RFC PATCH android-common] objtool, perf: nfs4_cb_sv_ops[] can be static
  2019-11-07 15:22 [android-common:android-4.9-o-release 44/44] include/linux/rculist_nulls.h:127:16: sparse: sparse: incorrect type in assignment (different address spaces) kbuild test robot
@ 2019-11-07 15:22 ` kbuild test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kbuild test robot @ 2019-11-07 15:22 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 601 bytes --]


Fixes: 2d1579e6534c ("objtool, perf: Fix GCC 8 -Wrestrict error")
Signed-off-by: kbuild test robot <lkp@intel.com>
---
 callback.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/nfs/callback.c b/fs/nfs/callback.c
index 0a2115084c3f2..ba847e82be71c 100644
--- a/fs/nfs/callback.c
+++ b/fs/nfs/callback.c
@@ -231,7 +231,7 @@ static struct svc_serv_ops nfs41_cb_sv_ops = {
 	.svo_module		= THIS_MODULE,
 };
 
-struct svc_serv_ops *nfs4_cb_sv_ops[] = {
+static struct svc_serv_ops *nfs4_cb_sv_ops[] = {
 	[0] = &nfs40_cb_sv_ops,
 	[1] = &nfs41_cb_sv_ops,
 };

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-11-07 15:22 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-07 15:22 [android-common:android-4.9-o-release 44/44] include/linux/rculist_nulls.h:127:16: sparse: sparse: incorrect type in assignment (different address spaces) kbuild test robot
2019-11-07 15:22 ` [RFC PATCH android-common] objtool, perf: nfs4_cb_sv_ops[] can be static kbuild test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.