[cifs:for-next 33/35] fs/cifs/cifs_debug.c:402:44: warning: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'size_t {aka unsigned int}'

kbuild test robot lkp at intel.com
Fri Nov 22 10:09:21 UTC 2019


tree:   git://git.samba.org/sfrench/cifs-2.6.git for-next
head:   85c48cf275b0279d13f42e61904ffca1e4da0a50
commit: ac204b8b2b598cb64db24832aa0df347c6480616 [33/35] cifs: dump channel info in DebugData
config: parisc-defconfig (attached as .config)
compiler: hppa-linux-gcc (GCC) 7.4.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout ac204b8b2b598cb64db24832aa0df347c6480616
        # save the attached .config to linux build tree
        GCC_VERSION=7.4.0 make.cross ARCH=parisc 

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

All warnings (new ones prefixed by >>):

   fs/cifs/cifs_debug.c: In function 'cifs_dump_channel':
   fs/cifs/cifs_debug.c:141:25: error: 'struct TCP_Server_Info' has no member named 'in_send'
         atomic_read(&server->in_send),
                            ^~
   fs/cifs/cifs_debug.c:142:25: error: 'struct TCP_Server_Info' has no member named 'num_waiters'
         atomic_read(&server->num_waiters));
                            ^~
   fs/cifs/cifs_debug.c: In function 'cifs_debug_data_proc_show':
>> fs/cifs/cifs_debug.c:402:44: warning: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'size_t {aka unsigned int}' [-Wformat=]
        seq_printf(m, "\n\n\tExtra Channels: %lu\n",
                                             ~~^
                                             %u
            ses->chan_count-1);
            ~~~~~~~~~~~~~~~~~                   

vim +402 fs/cifs/cifs_debug.c

   215	
   216	static int cifs_debug_data_proc_show(struct seq_file *m, void *v)
   217	{
   218		struct list_head *tmp1, *tmp2, *tmp3;
   219		struct mid_q_entry *mid_entry;
   220		struct TCP_Server_Info *server;
   221		struct cifs_ses *ses;
   222		struct cifs_tcon *tcon;
   223		int i, j;
   224	
   225		seq_puts(m,
   226			    "Display Internal CIFS Data Structures for Debugging\n"
   227			    "---------------------------------------------------\n");
   228		seq_printf(m, "CIFS Version %s\n", CIFS_VERSION);
   229		seq_printf(m, "Features:");
   230	#ifdef CONFIG_CIFS_DFS_UPCALL
   231		seq_printf(m, " DFS");
   232	#endif
   233	#ifdef CONFIG_CIFS_FSCACHE
   234		seq_printf(m, ",FSCACHE");
   235	#endif
   236	#ifdef CONFIG_CIFS_SMB_DIRECT
   237		seq_printf(m, ",SMB_DIRECT");
   238	#endif
   239	#ifdef CONFIG_CIFS_STATS2
   240		seq_printf(m, ",STATS2");
   241	#else
   242		seq_printf(m, ",STATS");
   243	#endif
   244	#ifdef CONFIG_CIFS_DEBUG2
   245		seq_printf(m, ",DEBUG2");
   246	#elif defined(CONFIG_CIFS_DEBUG)
   247		seq_printf(m, ",DEBUG");
   248	#endif
   249	#ifdef CONFIG_CIFS_ALLOW_INSECURE_LEGACY
   250		seq_printf(m, ",ALLOW_INSECURE_LEGACY");
   251	#endif
   252	#ifdef CONFIG_CIFS_WEAK_PW_HASH
   253		seq_printf(m, ",WEAK_PW_HASH");
   254	#endif
   255	#ifdef CONFIG_CIFS_POSIX
   256		seq_printf(m, ",CIFS_POSIX");
   257	#endif
   258	#ifdef CONFIG_CIFS_UPCALL
   259		seq_printf(m, ",UPCALL(SPNEGO)");
   260	#endif
   261	#ifdef CONFIG_CIFS_XATTR
   262		seq_printf(m, ",XATTR");
   263	#endif
   264		seq_printf(m, ",ACL");
   265		seq_putc(m, '\n');
   266		seq_printf(m, "CIFSMaxBufSize: %d\n", CIFSMaxBufSize);
   267		seq_printf(m, "Active VFS Requests: %d\n", GlobalTotalActiveXid);
   268		seq_printf(m, "Servers:");
   269	
   270		i = 0;
   271		spin_lock(&cifs_tcp_ses_lock);
   272		list_for_each(tmp1, &cifs_tcp_ses_list) {
   273			server = list_entry(tmp1, struct TCP_Server_Info,
   274					    tcp_ses_list);
   275	
   276	#ifdef CONFIG_CIFS_SMB_DIRECT
   277			if (!server->rdma)
   278				goto skip_rdma;
   279	
   280			if (!server->smbd_conn) {
   281				seq_printf(m, "\nSMBDirect transport not available");
   282				goto skip_rdma;
   283			}
   284	
   285			seq_printf(m, "\nSMBDirect (in hex) protocol version: %x "
   286				"transport status: %x",
   287				server->smbd_conn->protocol,
   288				server->smbd_conn->transport_status);
   289			seq_printf(m, "\nConn receive_credit_max: %x "
   290				"send_credit_target: %x max_send_size: %x",
   291				server->smbd_conn->receive_credit_max,
   292				server->smbd_conn->send_credit_target,
   293				server->smbd_conn->max_send_size);
   294			seq_printf(m, "\nConn max_fragmented_recv_size: %x "
   295				"max_fragmented_send_size: %x max_receive_size:%x",
   296				server->smbd_conn->max_fragmented_recv_size,
   297				server->smbd_conn->max_fragmented_send_size,
   298				server->smbd_conn->max_receive_size);
   299			seq_printf(m, "\nConn keep_alive_interval: %x "
   300				"max_readwrite_size: %x rdma_readwrite_threshold: %x",
   301				server->smbd_conn->keep_alive_interval,
   302				server->smbd_conn->max_readwrite_size,
   303				server->smbd_conn->rdma_readwrite_threshold);
   304			seq_printf(m, "\nDebug count_get_receive_buffer: %x "
   305				"count_put_receive_buffer: %x count_send_empty: %x",
   306				server->smbd_conn->count_get_receive_buffer,
   307				server->smbd_conn->count_put_receive_buffer,
   308				server->smbd_conn->count_send_empty);
   309			seq_printf(m, "\nRead Queue count_reassembly_queue: %x "
   310				"count_enqueue_reassembly_queue: %x "
   311				"count_dequeue_reassembly_queue: %x "
   312				"fragment_reassembly_remaining: %x "
   313				"reassembly_data_length: %x "
   314				"reassembly_queue_length: %x",
   315				server->smbd_conn->count_reassembly_queue,
   316				server->smbd_conn->count_enqueue_reassembly_queue,
   317				server->smbd_conn->count_dequeue_reassembly_queue,
   318				server->smbd_conn->fragment_reassembly_remaining,
   319				server->smbd_conn->reassembly_data_length,
   320				server->smbd_conn->reassembly_queue_length);
   321			seq_printf(m, "\nCurrent Credits send_credits: %x "
   322				"receive_credits: %x receive_credit_target: %x",
   323				atomic_read(&server->smbd_conn->send_credits),
   324				atomic_read(&server->smbd_conn->receive_credits),
   325				server->smbd_conn->receive_credit_target);
   326			seq_printf(m, "\nPending send_pending: %x "
   327				"send_payload_pending: %x",
   328				atomic_read(&server->smbd_conn->send_pending),
   329				atomic_read(&server->smbd_conn->send_payload_pending));
   330			seq_printf(m, "\nReceive buffers count_receive_queue: %x "
   331				"count_empty_packet_queue: %x",
   332				server->smbd_conn->count_receive_queue,
   333				server->smbd_conn->count_empty_packet_queue);
   334			seq_printf(m, "\nMR responder_resources: %x "
   335				"max_frmr_depth: %x mr_type: %x",
   336				server->smbd_conn->responder_resources,
   337				server->smbd_conn->max_frmr_depth,
   338				server->smbd_conn->mr_type);
   339			seq_printf(m, "\nMR mr_ready_count: %x mr_used_count: %x",
   340				atomic_read(&server->smbd_conn->mr_ready_count),
   341				atomic_read(&server->smbd_conn->mr_used_count));
   342	skip_rdma:
   343	#endif
   344			seq_printf(m, "\nNumber of credits: %d Dialect 0x%x",
   345				server->credits,  server->dialect);
   346			if (server->compress_algorithm == SMB3_COMPRESS_LZNT1)
   347				seq_printf(m, " COMPRESS_LZNT1");
   348			else if (server->compress_algorithm == SMB3_COMPRESS_LZ77)
   349				seq_printf(m, " COMPRESS_LZ77");
   350			else if (server->compress_algorithm == SMB3_COMPRESS_LZ77_HUFF)
   351				seq_printf(m, " COMPRESS_LZ77_HUFF");
   352			if (server->sign)
   353				seq_printf(m, " signed");
   354			if (server->posix_ext_supported)
   355				seq_printf(m, " posix");
   356	
   357			i++;
   358			list_for_each(tmp2, &server->smb_ses_list) {
   359				ses = list_entry(tmp2, struct cifs_ses,
   360						 smb_ses_list);
   361				if ((ses->serverDomain == NULL) ||
   362					(ses->serverOS == NULL) ||
   363					(ses->serverNOS == NULL)) {
   364					seq_printf(m, "\n%d) Name: %s Uses: %d Capability: 0x%x\tSession Status: %d ",
   365						i, ses->serverName, ses->ses_count,
   366						ses->capabilities, ses->status);
   367					if (ses->session_flags & SMB2_SESSION_FLAG_IS_GUEST)
   368						seq_printf(m, "Guest\t");
   369					else if (ses->session_flags & SMB2_SESSION_FLAG_IS_NULL)
   370						seq_printf(m, "Anonymous\t");
   371				} else {
   372					seq_printf(m,
   373					    "\n%d) Name: %s  Domain: %s Uses: %d OS:"
   374					    " %s\n\tNOS: %s\tCapability: 0x%x\n\tSMB"
   375					    " session status: %d ",
   376					i, ses->serverName, ses->serverDomain,
   377					ses->ses_count, ses->serverOS, ses->serverNOS,
   378					ses->capabilities, ses->status);
   379				}
   380				if (server->rdma)
   381					seq_printf(m, "RDMA\n\t");
   382				seq_printf(m, "TCP status: %d Instance: %d\n\tLocal Users To "
   383					   "Server: %d SecMode: 0x%x Req On Wire: %d",
   384					   server->tcpStatus,
   385					   server->reconnect_instance,
   386					   server->srv_count,
   387					   server->sec_mode, in_flight(server));
   388	
   389	#ifdef CONFIG_CIFS_STATS2
   390				seq_printf(m, " In Send: %d In MaxReq Wait: %d",
   391					atomic_read(&server->in_send),
   392					atomic_read(&server->num_waiters));
   393	#endif
   394				/* dump session id helpful for use with network trace */
   395				seq_printf(m, " SessionId: 0x%llx", ses->Suid);
   396				if (ses->session_flags & SMB2_SESSION_FLAG_ENCRYPT_DATA)
   397					seq_puts(m, " encrypted");
   398				if (ses->sign)
   399					seq_puts(m, " signed");
   400	
   401				if (ses->chan_count > 1) {
 > 402					seq_printf(m, "\n\n\tExtra Channels: %lu\n",
   403						   ses->chan_count-1);
   404					for (j = 1; j < ses->chan_count; j++)
   405						cifs_dump_channel(m, j, &ses->chans[j]);
   406				}
   407	
   408				seq_puts(m, "\n\tShares:");
   409				j = 0;
   410	
   411				seq_printf(m, "\n\t%d) IPC: ", j);
   412				if (ses->tcon_ipc)
   413					cifs_debug_tcon(m, ses->tcon_ipc);
   414				else
   415					seq_puts(m, "none\n");
   416	
   417				list_for_each(tmp3, &ses->tcon_list) {
   418					tcon = list_entry(tmp3, struct cifs_tcon,
   419							  tcon_list);
   420					++j;
   421					seq_printf(m, "\n\t%d) ", j);
   422					cifs_debug_tcon(m, tcon);
   423				}
   424	
   425				seq_puts(m, "\n\tMIDs:\n");
   426	
   427				spin_lock(&GlobalMid_Lock);
   428				list_for_each(tmp3, &server->pending_mid_q) {
   429					mid_entry = list_entry(tmp3, struct mid_q_entry,
   430						qhead);
   431					seq_printf(m, "\tState: %d com: %d pid:"
   432						      " %d cbdata: %p mid %llu\n",
   433						      mid_entry->mid_state,
   434						      le16_to_cpu(mid_entry->command),
   435						      mid_entry->pid,
   436						      mid_entry->callback_data,
   437						      mid_entry->mid);
   438				}
   439				spin_unlock(&GlobalMid_Lock);
   440	
   441				spin_lock(&ses->iface_lock);
   442				if (ses->iface_count)
   443					seq_printf(m, "\n\tServer interfaces: %zu\n",
   444						   ses->iface_count);
   445				for (j = 0; j < ses->iface_count; j++) {
   446					struct cifs_server_iface *iface;
   447	
   448					iface = &ses->iface_list[j];
   449					seq_printf(m, "\t%d)", j);
   450					cifs_dump_iface(m, iface);
   451					if (is_ses_using_iface(ses, iface))
   452						seq_puts(m, "\t\t[CONNECTED]\n");
   453				}
   454				spin_unlock(&ses->iface_lock);
   455			}
   456		}
   457		spin_unlock(&cifs_tcp_ses_lock);
   458		seq_putc(m, '\n');
   459	
   460		/* BB add code to dump additional info such as TCP session info now */
   461		return 0;
   462	}
   463	

---
0-DAY kernel test infrastructure                 Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 16259 bytes
Desc: not available
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20191122/48c0930c/config.gz>


More information about the samba-technical mailing list