From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: drivers/net/ethernet/intel/ice/ice_ptp.c:109:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
Date: Sun, 29 May 2022 14:27:50 +0800 [thread overview]
Message-ID: <202205291455.l3CbC31D-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 17000 bytes --]
CC: llvm(a)lists.linux.dev
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Jacob Keller <jacob.e.keller@intel.com>
CC: Tony Nguyen <anthony.l.nguyen@intel.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 9d004b2f4fea97cde123e7f1939b80e77bf2e695
commit: 67569a7f940130fcfe9041e07a614a5263a9944d ice: report the PTP clock index in ethtool .get_ts_info
date: 12 months ago
:::::: branch date: 26 hours ago
:::::: commit date: 12 months ago
config: s390-randconfig-c005-20220524 (https://download.01.org/0day-ci/archive/20220529/202205291455.l3CbC31D-lkp(a)intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 134d7f9a4b97e9035150d970bd9e376043c4577e)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install s390 cross compiling tool for clang build
# apt-get install binutils-s390x-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=67569a7f940130fcfe9041e07a614a5263a9944d
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 67569a7f940130fcfe9041e07a614a5263a9944d
# save the config file
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=s390 clang-analyzer
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
clang-analyzer warnings: (new ones prefixed by >>)
if (skb_put_padto(skb, ETH_ZLEN) < 0)
^
drivers/net/ethernet/rdc/r6040.c:803:2: note: Loop condition is false. Exiting loop
spin_lock_irqsave(&lp->lock, flags);
^
include/linux/spinlock.h:384:2: note: expanded from macro 'spin_lock_irqsave'
raw_spin_lock_irqsave(spinlock_check(lock), flags); \
^
include/linux/spinlock.h:250:2: note: expanded from macro 'raw_spin_lock_irqsave'
do { \
^
drivers/net/ethernet/rdc/r6040.c:803:2: note: Loop condition is false. Exiting loop
spin_lock_irqsave(&lp->lock, flags);
^
include/linux/spinlock.h:382:43: note: expanded from macro 'spin_lock_irqsave'
#define spin_lock_irqsave(lock, flags) \
^
drivers/net/ethernet/rdc/r6040.c:806:6: note: Assuming field 'tx_free_desc' is not equal to 0
if (!lp->tx_free_desc) {
^~~~~~~~~~~~~~~~~
drivers/net/ethernet/rdc/r6040.c:806:2: note: Taking false branch
if (!lp->tx_free_desc) {
^
drivers/net/ethernet/rdc/r6040.c:825:7: note: Calling 'netdev_xmit_more'
if (!netdev_xmit_more() || netif_queue_stopped(dev))
^~~~~~~~~~~~~~~~~~
include/linux/netdevice.h:4949:9: note: Loop condition is false. Exiting loop
return __this_cpu_read(softnet_data.xmit.more);
^
include/linux/percpu-defs.h:446:2: note: expanded from macro '__this_cpu_read'
raw_cpu_read(pcp); \
^
include/linux/percpu-defs.h:420:28: note: expanded from macro 'raw_cpu_read'
#define raw_cpu_read(pcp) __pcpu_size_call_return(raw_cpu_read_, pcp)
^
include/linux/percpu-defs.h:319:2: note: expanded from macro '__pcpu_size_call_return'
__verify_pcpu_ptr(&(variable)); \
^
include/linux/percpu-defs.h:217:37: note: expanded from macro '__verify_pcpu_ptr'
#define __verify_pcpu_ptr(ptr) \
^
include/linux/netdevice.h:4949:9: note: Control jumps to 'case 1:' at line 4949
return __this_cpu_read(softnet_data.xmit.more);
^
include/linux/percpu-defs.h:446:2: note: expanded from macro '__this_cpu_read'
raw_cpu_read(pcp); \
^
include/linux/percpu-defs.h:420:28: note: expanded from macro 'raw_cpu_read'
#define raw_cpu_read(pcp) __pcpu_size_call_return(raw_cpu_read_, pcp)
^
include/linux/percpu-defs.h:320:2: note: expanded from macro '__pcpu_size_call_return'
switch(sizeof(variable)) { \
^
include/linux/netdevice.h:4949:9: note: Loop condition is false. Exiting loop
return __this_cpu_read(softnet_data.xmit.more);
^
include/linux/percpu-defs.h:446:2: note: expanded from macro '__this_cpu_read'
raw_cpu_read(pcp); \
^
include/linux/percpu-defs.h:420:28: note: expanded from macro 'raw_cpu_read'
#define raw_cpu_read(pcp) __pcpu_size_call_return(raw_cpu_read_, pcp)
^
include/linux/percpu-defs.h:321:23: note: expanded from macro '__pcpu_size_call_return'
case 1: pscr_ret__ = stem##1(variable); break; \
^
note: (skipping 2 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/asm-generic/percpu.h:67:3: note: expanded from macro 'raw_cpu_generic_read'
*raw_cpu_ptr(&(pcp)); \
^
include/linux/percpu-defs.h:241:2: note: expanded from macro 'raw_cpu_ptr'
__verify_pcpu_ptr(ptr); \
^
include/linux/percpu-defs.h:217:37: note: expanded from macro '__verify_pcpu_ptr'
#define __verify_pcpu_ptr(ptr) \
^
include/linux/netdevice.h:4949:9: note: Dereference of null pointer
return __this_cpu_read(softnet_data.xmit.more);
^
include/linux/percpu-defs.h:446:2: note: expanded from macro '__this_cpu_read'
raw_cpu_read(pcp); \
^~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:420:28: note: expanded from macro 'raw_cpu_read'
#define raw_cpu_read(pcp) __pcpu_size_call_return(raw_cpu_read_, pcp)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:321:23: note: expanded from macro '__pcpu_size_call_return'
case 1: pscr_ret__ = stem##1(variable); break; \
^~~~~~~~~~~~~~~~~
note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/asm-generic/percpu.h:44:31: note: expanded from macro 'arch_raw_cpu_ptr'
#define arch_raw_cpu_ptr(ptr) SHIFT_PERCPU_PTR(ptr, __my_cpu_offset)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:231:2: note: expanded from macro 'SHIFT_PERCPU_PTR'
RELOC_HIDE((typeof(*(__p)) __kernel __force *)(__p), (__offset))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:182:28: note: expanded from macro 'RELOC_HIDE'
(typeof(ptr)) (__ptr + (off)); })
^~~~~
Suppressed 26 warnings (14 in non-user code, 12 with check filters).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
29 warnings generated.
>> drivers/net/ethernet/intel/ice/ice_ptp.c:109:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct device *dev = ice_pf_to_dev(pf);
^~~
drivers/net/ethernet/intel/ice/ice_ptp.c:109:17: note: Value stored to 'dev' during its initialization is never read
struct device *dev = ice_pf_to_dev(pf);
^~~
include/linux/time64.h:67:50: warning: The left operand of '+' is a garbage value [clang-analyzer-core.UndefinedBinaryOperatorResult]
set_normalized_timespec64(&ts_delta, lhs.tv_sec + rhs.tv_sec,
^
drivers/net/ethernet/intel/ice/ice_ptp.c:358:22: note: Left side of '&&' is false
struct ice_pf *pf = ptp_info_to_pf(info);
^
drivers/net/ethernet/intel/ice/ice_ptp.h:24:15: note: expanded from macro 'ptp_info_to_pf'
container_of(__ptp_info_to_ptp((i)), struct ice_pf, ptp)
^
drivers/net/ethernet/intel/ice/ice_ptp.h:22:2: note: expanded from macro '__ptp_info_to_ptp'
container_of((i), struct ice_ptp, info)
^
include/linux/kernel.h:716:61: note: expanded from macro 'container_of'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^
drivers/net/ethernet/intel/ice/ice_ptp.c:358:22: note: Taking false branch
struct ice_pf *pf = ptp_info_to_pf(info);
^
drivers/net/ethernet/intel/ice/ice_ptp.h:24:15: note: expanded from macro 'ptp_info_to_pf'
container_of(__ptp_info_to_ptp((i)), struct ice_pf, ptp)
^
drivers/net/ethernet/intel/ice/ice_ptp.h:22:2: note: expanded from macro '__ptp_info_to_ptp'
container_of((i), struct ice_ptp, info)
^
include/linux/kernel.h:716:2: note: expanded from macro 'container_of'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler_types.h:328:2: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^
include/linux/compiler_types.h:316:2: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^
include/linux/compiler_types.h:308:3: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^
drivers/net/ethernet/intel/ice/ice_ptp.c:358:22: note: Loop condition is false. Exiting loop
struct ice_pf *pf = ptp_info_to_pf(info);
^
drivers/net/ethernet/intel/ice/ice_ptp.h:24:15: note: expanded from macro 'ptp_info_to_pf'
container_of(__ptp_info_to_ptp((i)), struct ice_pf, ptp)
^
drivers/net/ethernet/intel/ice/ice_ptp.h:22:2: note: expanded from macro '__ptp_info_to_ptp'
container_of((i), struct ice_ptp, info)
^
include/linux/kernel.h:716:2: note: expanded from macro 'container_of'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler_types.h:328:2: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^
include/linux/compiler_types.h:316:2: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^
include/linux/compiler_types.h:306:2: note: expanded from macro '__compiletime_assert'
do { \
^
drivers/net/ethernet/intel/ice/ice_ptp.c:358:22: note: Left side of '&&' is false
struct ice_pf *pf = ptp_info_to_pf(info);
^
drivers/net/ethernet/intel/ice/ice_ptp.h:24:2: note: expanded from macro 'ptp_info_to_pf'
container_of(__ptp_info_to_ptp((i)), struct ice_pf, ptp)
^
include/linux/kernel.h:716:61: note: expanded from macro 'container_of'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^
drivers/net/ethernet/intel/ice/ice_ptp.c:358:22: note: Taking false branch
struct ice_pf *pf = ptp_info_to_pf(info);
^
drivers/net/ethernet/intel/ice/ice_ptp.h:24:2: note: expanded from macro 'ptp_info_to_pf'
container_of(__ptp_info_to_ptp((i)), struct ice_pf, ptp)
^
include/linux/kernel.h:716:2: note: expanded from macro 'container_of'
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
^
include/linux/build_bug.h:39:37: note: expanded from macro 'BUILD_BUG_ON_MSG'
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^
include/linux/compiler_types.h:328:2: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^
include/linux/compiler_types.h:316:2: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^
include/linux/compiler_types.h:308:3: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^
drivers/net/ethernet/intel/ice/ice_ptp.c:358:22: note: Loop condition is false. Exiting loop
struct ice_pf *pf = ptp_info_to_pf(info);
^
drivers/net/ethernet/intel/ice/ice_ptp.h:24:2: note: expanded from macro 'ptp_info_to_pf'
container_of(__ptp_info_to_ptp((i)), struct ice_pf, ptp)
^
vim +/dev +109 drivers/net/ethernet/intel/ice/ice_ptp.c
67569a7f940130 Jacob Keller 2021-06-09 98
67569a7f940130 Jacob Keller 2021-06-09 99 /**
67569a7f940130 Jacob Keller 2021-06-09 100 * ice_clear_ptp_clock_index - Clear the PTP clock index
67569a7f940130 Jacob Keller 2021-06-09 101 * @pf: the PF pointer
67569a7f940130 Jacob Keller 2021-06-09 102 *
67569a7f940130 Jacob Keller 2021-06-09 103 * Clear the PTP clock index for this device. Must be called when
67569a7f940130 Jacob Keller 2021-06-09 104 * unregistering the PTP clock, in order to ensure other PFs stop reporting
67569a7f940130 Jacob Keller 2021-06-09 105 * a clock object that no longer exists.
67569a7f940130 Jacob Keller 2021-06-09 106 */
67569a7f940130 Jacob Keller 2021-06-09 107 static void ice_clear_ptp_clock_index(struct ice_pf *pf)
67569a7f940130 Jacob Keller 2021-06-09 108 {
67569a7f940130 Jacob Keller 2021-06-09 @109 struct device *dev = ice_pf_to_dev(pf);
67569a7f940130 Jacob Keller 2021-06-09 110 enum ice_aqc_driver_params param_idx;
67569a7f940130 Jacob Keller 2021-06-09 111 struct ice_hw *hw = &pf->hw;
67569a7f940130 Jacob Keller 2021-06-09 112 u8 tmr_idx;
67569a7f940130 Jacob Keller 2021-06-09 113 int err;
67569a7f940130 Jacob Keller 2021-06-09 114
67569a7f940130 Jacob Keller 2021-06-09 115 /* Do not clear the index if we don't own the timer */
67569a7f940130 Jacob Keller 2021-06-09 116 if (!hw->func_caps.ts_func_info.src_tmr_owned)
67569a7f940130 Jacob Keller 2021-06-09 117 return;
67569a7f940130 Jacob Keller 2021-06-09 118
67569a7f940130 Jacob Keller 2021-06-09 119 tmr_idx = hw->func_caps.ts_func_info.tmr_index_assoc;
67569a7f940130 Jacob Keller 2021-06-09 120 if (!tmr_idx)
67569a7f940130 Jacob Keller 2021-06-09 121 param_idx = ICE_AQC_DRIVER_PARAM_CLK_IDX_TMR0;
67569a7f940130 Jacob Keller 2021-06-09 122 else
67569a7f940130 Jacob Keller 2021-06-09 123 param_idx = ICE_AQC_DRIVER_PARAM_CLK_IDX_TMR1;
67569a7f940130 Jacob Keller 2021-06-09 124
67569a7f940130 Jacob Keller 2021-06-09 125 err = ice_aq_set_driver_param(hw, param_idx, 0, NULL);
67569a7f940130 Jacob Keller 2021-06-09 126 if (err) {
67569a7f940130 Jacob Keller 2021-06-09 127 dev_dbg(dev, "Failed to clear PTP clock index parameter, err %d aq_err %s\n",
67569a7f940130 Jacob Keller 2021-06-09 128 err, ice_aq_str(hw->adminq.sq_last_status));
67569a7f940130 Jacob Keller 2021-06-09 129 }
67569a7f940130 Jacob Keller 2021-06-09 130 }
67569a7f940130 Jacob Keller 2021-06-09 131
--
0-DAY CI Kernel Test Service
https://01.org/lkp
next reply other threads:[~2022-05-29 6:27 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-29 6:27 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2022-06-06 19:13 drivers/net/ethernet/intel/ice/ice_ptp.c:109:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores] kernel test robot
2022-06-05 14:42 kernel test robot
2022-06-02 16:16 kernel test robot
2022-06-02 7:33 kernel test robot
2022-05-26 5:18 kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202205291455.l3CbC31D-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.