Messages in this thread | | | Date | Sun, 14 Nov 2021 13:29:38 -0800 | From | Drew Fustini <> | Subject | Re: drivers/clocksource/timer-pistachio.c:74:22: warning: variable 'overflow' set but not used |
| |
On Fri, Nov 12, 2021 at 07:05:48AM +0800, kernel test robot wrote: > Hi Drew, > > FYI, the error/warning still remains. > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master > head: debe436e77c72fcee804fb867f275e6d31aa999c > commit: a47d7ef4550d08fb428ea4c3f1a9c71674212208 clocksource/drivers/pistachio: Fix trivial typo > date: 7 months ago > config: mips-randconfig-r012-20210927 (attached as .config) > compiler: mips-linux-gcc (GCC) 11.2.0 > 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 > # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a47d7ef4550d08fb428ea4c3f1a9c71674212208 > git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > git fetch --no-tags linus master > git checkout a47d7ef4550d08fb428ea4c3f1a9c71674212208 > # save the attached .config to linux build tree > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=mips > > If you fix the issue, kindly add following tag as appropriate > Reported-by: kernel test robot <lkp@intel.com> > > All warnings (new ones prefixed by >>): > > drivers/clocksource/timer-pistachio.c: In function 'pistachio_clocksource_read_cycles': > >> drivers/clocksource/timer-pistachio.c:74:22: warning: variable 'overflow' set but not used [-Wunused-but-set-variable] > 74 | u32 counter, overflow; > | ^~~~~~~~ > > > vim +/overflow +74 drivers/clocksource/timer-pistachio.c > > 69 > 70 static u64 notrace > 71 pistachio_clocksource_read_cycles(struct clocksource *cs) > 72 { > 73 struct pistachio_clocksource *pcs = to_pistachio_clocksource(cs); > > 74 u32 counter, overflow; > 75 unsigned long flags; > 76 > 77 /* > 78 * The counter value is only refreshed after the overflow value is read. > 79 * And they must be read in strict order, hence raw spin lock added. > 80 */ > 81 > 82 raw_spin_lock_irqsave(&pcs->lock, flags); > 83 overflow = gpt_readl(pcs->base, TIMER_CURRENT_OVERFLOW_VALUE, 0);
I fail to see how variable 'overflow' set but not used as the return value of gpt_readl() is unconditionally assigned to 'overflow'.
Am I missing something?
Thanks, Drew
| |