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-next>] [day] [month] [year] [list]
Message-ID: <202601150001.sKSN644a-lkp@intel.com>
Date: Thu, 15 Jan 2026 00:36:01 +0800
From: kernel test robot <lkp@...el.com>
To: Ian Rogers <irogers@...gle.com>
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
 x86@...nel.org, Thomas Gleixner <tglx@...nel.org>
Subject: [tip:timers/vdso 12/14] net/rds/ib_cm.c:96:35: sparse:
 sparse: incorrect type in argument 1 (different modifiers)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers/vdso
head:   759a1f97373f25770cf438d9fb5f2bddf4d77a54
commit: e04a494143bab7ea804fe1ebe286701ee8288e4a [12/14] vdso: Switch get/put_unaligned() from packed struct to memcpy()
config: x86_64-randconfig-122-20260114 (https://download.01.org/0day-ci/archive/20260115/202601150001.sKSN644a-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
rustc: rustc 1.88.0 (6b00bc388 2025-06-23)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260115/202601150001.sKSN644a-lkp@intel.com/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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202601150001.sKSN644a-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
>> net/rds/ib_cm.c:96:35: sparse: sparse: incorrect type in argument 1 (different modifiers) @@     expected void * @@     got restricted __be64 const * @@
   net/rds/ib_cm.c:96:35: sparse:     expected void *
   net/rds/ib_cm.c:96:35: sparse:     got restricted __be64 const *
   net/rds/ib_cm.c:103:27: sparse: sparse: incorrect type in argument 1 (different modifiers) @@     expected void * @@     got restricted __be64 const * @@
   net/rds/ib_cm.c:103:27: sparse:     expected void *
   net/rds/ib_cm.c:103:27: sparse:     got restricted __be64 const *

vim +96 net/rds/ib_cm.c

ec16227e14141e Andy Grover                  2009-02-24   69  
ec16227e14141e Andy Grover                  2009-02-24   70  /*
ec16227e14141e Andy Grover                  2009-02-24   71   * Connection established.
ec16227e14141e Andy Grover                  2009-02-24   72   * We get here for both outgoing and incoming connection.
ec16227e14141e Andy Grover                  2009-02-24   73   */
ec16227e14141e Andy Grover                  2009-02-24   74  void rds_ib_cm_connect_complete(struct rds_connection *conn, struct rdma_cm_event *event)
ec16227e14141e Andy Grover                  2009-02-24   75  {
ec16227e14141e Andy Grover                  2009-02-24   76  	struct rds_ib_connection *ic = conn->c_transport_data;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   77  	const union rds_ib_conn_priv *dp = NULL;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   78  	__be64 ack_seq = 0;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   79  	__be32 credit = 0;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   80  	u8 major = 0;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   81  	u8 minor = 0;
ec16227e14141e Andy Grover                  2009-02-24   82  	int err;
ec16227e14141e Andy Grover                  2009-02-24   83  
ec16227e14141e Andy Grover                  2009-02-24   84  	dp = event->param.conn.private_data;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   85  	if (conn->c_isv6) {
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   86  		if (event->param.conn.private_data_len >=
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   87  		    sizeof(struct rds6_ib_connect_private)) {
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   88  			major = dp->ricp_v6.dp_protocol_major;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   89  			minor = dp->ricp_v6.dp_protocol_minor;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   90  			credit = dp->ricp_v6.dp_credit;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   91  			/* dp structure start is not guaranteed to be 8 bytes
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   92  			 * aligned.  Since dp_ack_seq is 64-bit extended load
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   93  			 * operations can be used so go through get_unaligned
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   94  			 * to avoid unaligned errors.
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   95  			 */
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  @96  			ack_seq = get_unaligned(&dp->ricp_v6.dp_ack_seq);
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   97  		}
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   98  	} else if (event->param.conn.private_data_len >=
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23   99  		   sizeof(struct rds_ib_connect_private)) {
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  100  		major = dp->ricp_v4.dp_protocol_major;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  101  		minor = dp->ricp_v4.dp_protocol_minor;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  102  		credit = dp->ricp_v4.dp_credit;
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  103  		ack_seq = get_unaligned(&dp->ricp_v4.dp_ack_seq);
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  104  	}
ec16227e14141e Andy Grover                  2009-02-24  105  
02a6a2592e41d2 Andy Grover                  2009-07-17  106  	/* make sure it isn't empty data */
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  107  	if (major) {
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  108  		rds_ib_set_protocol(conn, RDS_PROTOCOL(major, minor));
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  109  		rds_ib_set_flow_control(conn, be32_to_cpu(credit));
02a6a2592e41d2 Andy Grover                  2009-07-17  110  	}
ec16227e14141e Andy Grover                  2009-02-24  111  
cdc306a5c9cd36 Santosh Shilimkar            2018-10-13  112  	if (conn->c_version < RDS_PROTOCOL_VERSION) {
cdc306a5c9cd36 Santosh Shilimkar            2018-10-13  113  		if (conn->c_version != RDS_PROTOCOL_COMPAT_VERSION) {
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  114  			pr_notice("RDS/IB: Connection <%pI6c,%pI6c> version %u.%u no longer supported\n",
ff3f19a2f608ee Santosh Shilimkar            2016-03-14  115  				  &conn->c_laddr, &conn->c_faddr,
f147dd9ecabf23 Andy Grover                  2010-01-13  116  				  RDS_PROTOCOL_MAJOR(conn->c_version),
f147dd9ecabf23 Andy Grover                  2010-01-13  117  				  RDS_PROTOCOL_MINOR(conn->c_version));
f147dd9ecabf23 Andy Grover                  2010-01-13  118  			rds_conn_destroy(conn);
f147dd9ecabf23 Andy Grover                  2010-01-13  119  			return;
cdc306a5c9cd36 Santosh Shilimkar            2018-10-13  120  		}
cdc306a5c9cd36 Santosh Shilimkar            2018-10-13  121  	}
cdc306a5c9cd36 Santosh Shilimkar            2018-10-13  122  
fd261ce6a30e01 Santosh Shilimkar            2018-10-13  123  	pr_notice("RDS/IB: %s conn connected <%pI6c,%pI6c,%d> version %u.%u%s\n",
581d53c91cbf7b Santosh Shilimkar            2016-07-09  124  		  ic->i_active_side ? "Active" : "Passive",
fd261ce6a30e01 Santosh Shilimkar            2018-10-13  125  		  &conn->c_laddr, &conn->c_faddr, conn->c_tos,
ec16227e14141e Andy Grover                  2009-02-24  126  		  RDS_PROTOCOL_MAJOR(conn->c_version),
ec16227e14141e Andy Grover                  2009-02-24  127  		  RDS_PROTOCOL_MINOR(conn->c_version),
ec16227e14141e Andy Grover                  2009-02-24  128  		  ic->i_flowctl ? ", flow control" : "");
ec16227e14141e Andy Grover                  2009-02-24  129  
e0e6d062822529 Zhu Yanjun                   2019-08-23  130  	/* receive sl from the peer */
e0e6d062822529 Zhu Yanjun                   2019-08-23  131  	ic->i_sl = ic->i_cm_id->route.path_rec->sl;
e0e6d062822529 Zhu Yanjun                   2019-08-23  132  
cf657269d311d5 Santosh Shilimkar            2016-09-29  133  	atomic_set(&ic->i_cq_quiesce, 0);
cf657269d311d5 Santosh Shilimkar            2016-09-29  134  
581d53c91cbf7b Santosh Shilimkar            2016-07-09  135  	/* Init rings and fill recv. this needs to wait until protocol
581d53c91cbf7b Santosh Shilimkar            2016-07-09  136  	 * negotiation is complete, since ring layout is different
581d53c91cbf7b Santosh Shilimkar            2016-07-09  137  	 * from 3.1 to 4.1.
e11d912a7dd4df Andy Grover                  2009-07-17  138  	 */
e11d912a7dd4df Andy Grover                  2009-07-17  139  	rds_ib_send_init_ring(ic);
e11d912a7dd4df Andy Grover                  2009-07-17  140  	rds_ib_recv_init_ring(ic);
e11d912a7dd4df Andy Grover                  2009-07-17  141  	/* Post receive buffers - as a side effect, this will update
e11d912a7dd4df Andy Grover                  2009-07-17  142  	 * the posted credit count. */
73ce4317bf9832 santosh.shilimkar@...cle.com 2015-08-22  143  	rds_ib_recv_refill(conn, 1, GFP_KERNEL);
e11d912a7dd4df Andy Grover                  2009-07-17  144  
3e0249f9c05cb7 Zach Brown                   2010-05-18  145  	/* update ib_device with this local ipaddr */
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  146  	err = rds_ib_update_ipaddr(ic->rds_ibdev, &conn->c_laddr);
ec16227e14141e Andy Grover                  2009-02-24  147  	if (err)
3e0249f9c05cb7 Zach Brown                   2010-05-18  148  		printk(KERN_ERR "rds_ib_update_ipaddr failed (%d)\n",
3e0249f9c05cb7 Zach Brown                   2010-05-18  149  			err);
ec16227e14141e Andy Grover                  2009-02-24  150  
ec16227e14141e Andy Grover                  2009-02-24  151  	/* If the peer gave us the last packet it saw, process this as if
ec16227e14141e Andy Grover                  2009-02-24  152  	 * we had received a regular ACK. */
c0adf54a10903b shamir rabinovitch           2015-04-30  153  	if (dp) {
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  154  		if (ack_seq)
eee2fa6ab32251 Ka-Cheong Poon               2018-07-23  155  			rds_send_drop_acked(conn, be64_to_cpu(ack_seq),
c0adf54a10903b shamir rabinovitch           2015-04-30  156  					    NULL);
c0adf54a10903b shamir rabinovitch           2015-04-30  157  	}
ec16227e14141e Andy Grover                  2009-02-24  158  
cdc306a5c9cd36 Santosh Shilimkar            2018-10-13  159  	conn->c_proposed_version = conn->c_version;
ec16227e14141e Andy Grover                  2009-02-24  160  	rds_connect_complete(conn);
ec16227e14141e Andy Grover                  2009-02-24  161  }
ec16227e14141e Andy Grover                  2009-02-24  162  

:::::: The code at line 96 was first introduced by commit
:::::: eee2fa6ab3225192d6d894c54a6fb02ac9efdff6 rds: Changing IP address internal representation to struct in6_addr

:::::: TO: Ka-Cheong Poon <ka-cheong.poon@...cle.com>
:::::: CC: David S. Miller <davem@...emloft.net>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ