llvm.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH v2 19/21] scsi: fnic: Switch to use %ptS
       [not found] <20251111122735.880607-20-andriy.shevchenko@linux.intel.com>
@ 2025-11-13  4:51 ` kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-11-13  4:51 UTC (permalink / raw)
  To: Andy Shevchenko, Corey Minyard, Christian König,
	Dr. David Alan Gilbert, Alex Deucher, Thomas Zimmermann,
	Dmitry Baryshkov, Rob Clark, Matthew Brost, Ulf Hansson,
	Vitaly Lifshits, Manivannan Sadhasivam, Niklas Cassel,
	Calvin Owens, Vadim Fedorenko, Sagi Maimon, Martin K. Petersen,
	Karan Tilak Kumar, Hans Verkuil, Casey Schaufler, Steven Rostedt,
	Petr Mladek, Viacheslav Dubeyko, Max Kellermann, linux-doc,
	linux-kernel, openipmi-developer, linux-media, dri-devel,
	linaro-mm-sig
  Cc: llvm, oe-kbuild-all

Hi Andy,

kernel test robot noticed the following build errors:

[auto build test ERROR on ceph-client/testing]
[also build test ERROR on ceph-client/for-linus cminyard-ipmi/for-next mkp-scsi/for-next jejb-scsi/for-next linus/master v6.18-rc5 next-20251112]
[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#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Andy-Shevchenko/lib-vsprintf-Add-specifier-for-printing-struct-timespec64/20251111-203105
base:   https://github.com/ceph/ceph-client.git testing
patch link:    https://lore.kernel.org/r/20251111122735.880607-20-andriy.shevchenko%40linux.intel.com
patch subject: [PATCH v2 19/21] scsi: fnic: Switch to use %ptS
config: x86_64-kexec (https://download.01.org/0day-ci/archive/20251113/202511130449.Q1mCZRpT-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251113/202511130449.Q1mCZRpT-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202511130449.Q1mCZRpT-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/scsi/fnic/fnic_trace.c:234:2: error: cannot take the address of an rvalue of type 'struct timespec64'
     234 |         &timespec64_sub(val1, stats->stats_timestamps.last_reset_time),
         |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/scsi/fnic/fnic_trace.c:235:2: error: cannot take the address of an rvalue of type 'struct timespec64'
     235 |         &timespec64_sub(val1, stats->stats_timestamps.last_read_time));
         |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   2 errors generated.


vim +234 drivers/scsi/fnic/fnic_trace.c

   198	
   199	/*
   200	 * fnic_get_stats_data - Copy fnic stats buffer to a memory file
   201	 * @fnic_dbgfs_t: pointer to debugfs fnic stats buffer
   202	 *
   203	 * Description:
   204	 * This routine gathers the fnic stats debugfs data from the fnic_stats struct
   205	 * and dumps it to stats_debug_info.
   206	 *
   207	 * Return Value:
   208	 * This routine returns the amount of bytes that were dumped into
   209	 * stats_debug_info
   210	 */
   211	int fnic_get_stats_data(struct stats_debug_info *debug,
   212				struct fnic_stats *stats)
   213	{
   214		int len = 0;
   215		int buf_size = debug->buf_size;
   216		struct timespec64 val1, val2;
   217		int i = 0;
   218	
   219		ktime_get_real_ts64(&val1);
   220		len = scnprintf(debug->debug_buffer + len, buf_size - len,
   221			"------------------------------------------\n"
   222			 "\t\tTime\n"
   223			"------------------------------------------\n");
   224	
   225		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   226			"Current time :          [%ptSp]\n"
   227			"Last stats reset time:  [%ptSp]\n"
   228			"Last stats read time:   [%ptSp]\n"
   229			"delta since last reset: [%ptSp]\n"
   230			"delta since last read:  [%ptSp]\n",
   231		&val1,
   232		&stats->stats_timestamps.last_reset_time,
   233		&stats->stats_timestamps.last_read_time,
 > 234		&timespec64_sub(val1, stats->stats_timestamps.last_reset_time),
   235		&timespec64_sub(val1, stats->stats_timestamps.last_read_time));
   236	
   237		stats->stats_timestamps.last_read_time = val1;
   238	
   239		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   240			  "------------------------------------------\n"
   241			  "\t\tIO Statistics\n"
   242			  "------------------------------------------\n");
   243		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   244			  "Number of Active IOs: %lld\nMaximum Active IOs: %lld\n"
   245			  "Number of IOs: %lld\nNumber of IO Completions: %lld\n"
   246			  "Number of IO Failures: %lld\nNumber of IO NOT Found: %lld\n"
   247			  "Number of Memory alloc Failures: %lld\n"
   248			  "Number of IOREQ Null: %lld\n"
   249			  "Number of SCSI cmd pointer Null: %lld\n"
   250	
   251			  "\nIO completion times: \n"
   252			  "            < 10 ms : %lld\n"
   253			  "     10 ms - 100 ms : %lld\n"
   254			  "    100 ms - 500 ms : %lld\n"
   255			  "    500 ms -   5 sec: %lld\n"
   256			  "     5 sec -  10 sec: %lld\n"
   257			  "    10 sec -  30 sec: %lld\n"
   258			  "            > 30 sec: %lld\n",
   259			  (u64)atomic64_read(&stats->io_stats.active_ios),
   260			  (u64)atomic64_read(&stats->io_stats.max_active_ios),
   261			  (u64)atomic64_read(&stats->io_stats.num_ios),
   262			  (u64)atomic64_read(&stats->io_stats.io_completions),
   263			  (u64)atomic64_read(&stats->io_stats.io_failures),
   264			  (u64)atomic64_read(&stats->io_stats.io_not_found),
   265			  (u64)atomic64_read(&stats->io_stats.alloc_failures),
   266			  (u64)atomic64_read(&stats->io_stats.ioreq_null),
   267			  (u64)atomic64_read(&stats->io_stats.sc_null),
   268			  (u64)atomic64_read(&stats->io_stats.io_btw_0_to_10_msec),
   269			  (u64)atomic64_read(&stats->io_stats.io_btw_10_to_100_msec),
   270			  (u64)atomic64_read(&stats->io_stats.io_btw_100_to_500_msec),
   271			  (u64)atomic64_read(&stats->io_stats.io_btw_500_to_5000_msec),
   272			  (u64)atomic64_read(&stats->io_stats.io_btw_5000_to_10000_msec),
   273			  (u64)atomic64_read(&stats->io_stats.io_btw_10000_to_30000_msec),
   274			  (u64)atomic64_read(&stats->io_stats.io_greater_than_30000_msec));
   275	
   276		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   277				"------------------------------------------\n"
   278				"\t\tIO Queues and cumulative IOs\n"
   279				"------------------------------------------\n");
   280	
   281		for (i = 0; i < FNIC_MQ_MAX_QUEUES; i++) {
   282			len += scnprintf(debug->debug_buffer + len, buf_size - len,
   283					"Q:%d -> %lld\n", i, (u64)atomic64_read(&stats->io_stats.ios[i]));
   284		}
   285	
   286		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   287			  "\nCurrent Max IO time : %lld\n",
   288			  (u64)atomic64_read(&stats->io_stats.current_max_io_time));
   289	
   290		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   291			  "\n------------------------------------------\n"
   292			  "\t\tAbort Statistics\n"
   293			  "------------------------------------------\n");
   294	
   295		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   296			  "Number of Aborts: %lld\n"
   297			  "Number of Abort Failures: %lld\n"
   298			  "Number of Abort Driver Timeouts: %lld\n"
   299			  "Number of Abort FW Timeouts: %lld\n"
   300			  "Number of Abort IO NOT Found: %lld\n"
   301	
   302			  "Abort issued times: \n"
   303			  "            < 6 sec : %lld\n"
   304			  "     6 sec - 20 sec : %lld\n"
   305			  "    20 sec - 30 sec : %lld\n"
   306			  "    30 sec - 40 sec : %lld\n"
   307			  "    40 sec - 50 sec : %lld\n"
   308			  "    50 sec - 60 sec : %lld\n"
   309			  "            > 60 sec: %lld\n",
   310	
   311			  (u64)atomic64_read(&stats->abts_stats.aborts),
   312			  (u64)atomic64_read(&stats->abts_stats.abort_failures),
   313			  (u64)atomic64_read(&stats->abts_stats.abort_drv_timeouts),
   314			  (u64)atomic64_read(&stats->abts_stats.abort_fw_timeouts),
   315			  (u64)atomic64_read(&stats->abts_stats.abort_io_not_found),
   316			  (u64)atomic64_read(&stats->abts_stats.abort_issued_btw_0_to_6_sec),
   317			  (u64)atomic64_read(&stats->abts_stats.abort_issued_btw_6_to_20_sec),
   318			  (u64)atomic64_read(&stats->abts_stats.abort_issued_btw_20_to_30_sec),
   319			  (u64)atomic64_read(&stats->abts_stats.abort_issued_btw_30_to_40_sec),
   320			  (u64)atomic64_read(&stats->abts_stats.abort_issued_btw_40_to_50_sec),
   321			  (u64)atomic64_read(&stats->abts_stats.abort_issued_btw_50_to_60_sec),
   322			  (u64)atomic64_read(&stats->abts_stats.abort_issued_greater_than_60_sec));
   323	
   324		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   325			  "\n------------------------------------------\n"
   326			  "\t\tTerminate Statistics\n"
   327			  "------------------------------------------\n");
   328	
   329		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   330			  "Number of Terminates: %lld\n"
   331			  "Maximum Terminates: %lld\n"
   332			  "Number of Terminate Driver Timeouts: %lld\n"
   333			  "Number of Terminate FW Timeouts: %lld\n"
   334			  "Number of Terminate IO NOT Found: %lld\n"
   335			  "Number of Terminate Failures: %lld\n",
   336			  (u64)atomic64_read(&stats->term_stats.terminates),
   337			  (u64)atomic64_read(&stats->term_stats.max_terminates),
   338			  (u64)atomic64_read(&stats->term_stats.terminate_drv_timeouts),
   339			  (u64)atomic64_read(&stats->term_stats.terminate_fw_timeouts),
   340			  (u64)atomic64_read(&stats->term_stats.terminate_io_not_found),
   341			  (u64)atomic64_read(&stats->term_stats.terminate_failures));
   342	
   343		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   344			  "\n------------------------------------------\n"
   345			  "\t\tReset Statistics\n"
   346			  "------------------------------------------\n");
   347	
   348		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   349			  "Number of Device Resets: %lld\n"
   350			  "Number of Device Reset Failures: %lld\n"
   351			  "Number of Device Reset Aborts: %lld\n"
   352			  "Number of Device Reset Timeouts: %lld\n"
   353			  "Number of Device Reset Terminates: %lld\n"
   354			  "Number of FW Resets: %lld\n"
   355			  "Number of FW Reset Completions: %lld\n"
   356			  "Number of FW Reset Failures: %lld\n"
   357			  "Number of Fnic Reset: %lld\n"
   358			  "Number of Fnic Reset Completions: %lld\n"
   359			  "Number of Fnic Reset Failures: %lld\n",
   360			  (u64)atomic64_read(&stats->reset_stats.device_resets),
   361			  (u64)atomic64_read(&stats->reset_stats.device_reset_failures),
   362			  (u64)atomic64_read(&stats->reset_stats.device_reset_aborts),
   363			  (u64)atomic64_read(&stats->reset_stats.device_reset_timeouts),
   364			  (u64)atomic64_read(
   365				  &stats->reset_stats.device_reset_terminates),
   366			  (u64)atomic64_read(&stats->reset_stats.fw_resets),
   367			  (u64)atomic64_read(&stats->reset_stats.fw_reset_completions),
   368			  (u64)atomic64_read(&stats->reset_stats.fw_reset_failures),
   369			  (u64)atomic64_read(&stats->reset_stats.fnic_resets),
   370			  (u64)atomic64_read(
   371				  &stats->reset_stats.fnic_reset_completions),
   372			  (u64)atomic64_read(&stats->reset_stats.fnic_reset_failures));
   373	
   374		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   375			  "\n------------------------------------------\n"
   376			  "\t\tFirmware Statistics\n"
   377			  "------------------------------------------\n");
   378	
   379		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   380			  "Number of Active FW Requests %lld\n"
   381			  "Maximum FW Requests: %lld\n"
   382			  "Number of FW out of resources: %lld\n"
   383			  "Number of FW IO errors: %lld\n",
   384			  (u64)atomic64_read(&stats->fw_stats.active_fw_reqs),
   385			  (u64)atomic64_read(&stats->fw_stats.max_fw_reqs),
   386			  (u64)atomic64_read(&stats->fw_stats.fw_out_of_resources),
   387			  (u64)atomic64_read(&stats->fw_stats.io_fw_errs));
   388	
   389		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   390			  "\n------------------------------------------\n"
   391			  "\t\tVlan Discovery Statistics\n"
   392			  "------------------------------------------\n");
   393	
   394		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   395			  "Number of Vlan Discovery Requests Sent %lld\n"
   396			  "Vlan Response Received with no FCF VLAN ID: %lld\n"
   397			  "No solicitations recvd after vlan set, expiry count: %lld\n"
   398			  "Flogi rejects count: %lld\n",
   399			  (u64)atomic64_read(&stats->vlan_stats.vlan_disc_reqs),
   400			  (u64)atomic64_read(&stats->vlan_stats.resp_withno_vlanID),
   401			  (u64)atomic64_read(&stats->vlan_stats.sol_expiry_count),
   402			  (u64)atomic64_read(&stats->vlan_stats.flogi_rejects));
   403	
   404		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   405			  "\n------------------------------------------\n"
   406			  "\t\tOther Important Statistics\n"
   407			  "------------------------------------------\n");
   408	
   409		jiffies_to_timespec64(stats->misc_stats.last_isr_time, &val1);
   410		jiffies_to_timespec64(stats->misc_stats.last_ack_time, &val2);
   411	
   412		len += scnprintf(debug->debug_buffer + len, buf_size - len,
   413			  "Last ISR time: %llu (%ptSp)\n"
   414			  "Last ACK time: %llu (%ptSp)\n"
   415			  "Max ISR jiffies: %llu\n"
   416			  "Max ISR time (ms) (0 denotes < 1 ms): %llu\n"
   417			  "Corr. work done: %llu\n"
   418			  "Number of ISRs: %lld\n"
   419			  "Maximum CQ Entries: %lld\n"
   420			  "Number of ACK index out of range: %lld\n"
   421			  "Number of data count mismatch: %lld\n"
   422			  "Number of FCPIO Timeouts: %lld\n"
   423			  "Number of FCPIO Aborted: %lld\n"
   424			  "Number of SGL Invalid: %lld\n"
   425			  "Number of Copy WQ Alloc Failures for ABTs: %lld\n"
   426			  "Number of Copy WQ Alloc Failures for Device Reset: %lld\n"
   427			  "Number of Copy WQ Alloc Failures for IOs: %lld\n"
   428			  "Number of no icmnd itmf Completions: %lld\n"
   429			  "Number of Check Conditions encountered: %lld\n"
   430			  "Number of QUEUE Fulls: %lld\n"
   431			  "Number of rport not ready: %lld\n"
   432			 "Number of receive frame errors: %lld\n"
   433			 "Port speed (in Mbps): %lld\n",
   434			  (u64)stats->misc_stats.last_isr_time,
   435			  &val1,
   436			  (u64)stats->misc_stats.last_ack_time,
   437			  &val2,
   438			  (u64)atomic64_read(&stats->misc_stats.max_isr_jiffies),
   439			  (u64)atomic64_read(&stats->misc_stats.max_isr_time_ms),
   440			  (u64)atomic64_read(&stats->misc_stats.corr_work_done),
   441			  (u64)atomic64_read(&stats->misc_stats.isr_count),
   442			  (u64)atomic64_read(&stats->misc_stats.max_cq_entries),
   443			  (u64)atomic64_read(&stats->misc_stats.ack_index_out_of_range),
   444			  (u64)atomic64_read(&stats->misc_stats.data_count_mismatch),
   445			  (u64)atomic64_read(&stats->misc_stats.fcpio_timeout),
   446			  (u64)atomic64_read(&stats->misc_stats.fcpio_aborted),
   447			  (u64)atomic64_read(&stats->misc_stats.sgl_invalid),
   448			  (u64)atomic64_read(
   449				  &stats->misc_stats.abts_cpwq_alloc_failures),
   450			  (u64)atomic64_read(
   451				  &stats->misc_stats.devrst_cpwq_alloc_failures),
   452			  (u64)atomic64_read(&stats->misc_stats.io_cpwq_alloc_failures),
   453			  (u64)atomic64_read(&stats->misc_stats.no_icmnd_itmf_cmpls),
   454			  (u64)atomic64_read(&stats->misc_stats.check_condition),
   455			  (u64)atomic64_read(&stats->misc_stats.queue_fulls),
   456			  (u64)atomic64_read(&stats->misc_stats.tport_not_ready),
   457			  (u64)atomic64_read(&stats->misc_stats.frame_errors),
   458			  (u64)atomic64_read(&stats->misc_stats.port_speed_in_mbps));
   459	
   460		return len;
   461	

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-11-13  4:51 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20251111122735.880607-20-andriy.shevchenko@linux.intel.com>
2025-11-13  4:51 ` [PATCH v2 19/21] scsi: fnic: Switch to use %ptS kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).