From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: [ammarfaizi2-block:next/linux-next/master 378/379] mm/sparse-vmemmap.c:747:17: warning: Value stored to 'next' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
Date: Sat, 26 Feb 2022 12:24:39 +0800 [thread overview]
Message-ID: <202202261206.iayFIHUI-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 18902 bytes --]
CC: llvm(a)lists.linux.dev
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: "GNU/Weeb Mailing List" <gwml@vger.gnuweeb.org>
CC: linux-kernel(a)vger.kernel.org
TO: Mark Brown <broonie@kernel.org>
tree: https://github.com/ammarfaizi2/linux-block next/linux-next/master
head: 44948bd49d878dad6c9707e34f4a06df73c3a800
commit: 15aa3a056caa5192fe614cacebf054634b4c5e90 [378/379] Fix up more mismerges
:::::: branch date: 26 hours ago
:::::: commit date: 27 hours ago
config: x86_64-randconfig-c007 (https://download.01.org/0day-ci/archive/20220226/202202261206.iayFIHUI-lkp(a)intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project d271fc04d5b97b12e6b797c6067d3c96a8d7470e)
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://github.com/ammarfaizi2/linux-block/commit/15aa3a056caa5192fe614cacebf054634b4c5e90
git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
git fetch --no-tags ammarfaizi2-block next/linux-next/master
git checkout 15aa3a056caa5192fe614cacebf054634b4c5e90
# save the config file to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 clang-analyzer
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
clang-analyzer warnings: (new ones prefixed by >>)
drivers/pinctrl/intel/pinctrl-intel.c:1777:15: note: Value stored to 'n' during its initialization is never read
unsigned int n = reg / sizeof(u32);
^ ~~~~~~~~~~~~~~~~~
drivers/pinctrl/intel/pinctrl-intel.c:1778:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct device *dev = pctrl->dev;
^~~ ~~~~~~~~~~
drivers/pinctrl/intel/pinctrl-intel.c:1778:17: note: Value stored to 'dev' during its initialization is never read
struct device *dev = pctrl->dev;
^~~ ~~~~~~~~~~
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
6 warnings generated.
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
6 warnings generated.
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
6 warnings generated.
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
6 warnings generated.
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
6 warnings generated.
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
7 warnings generated.
drivers/hwmon/f71882fg.c:1801:4: warning: Division by zero [clang-analyzer-core.DivideZero]
/ fan_from_reg(data->fan_full_speed[nr]);
~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/f71882fg.c:1795:6: note: Assuming the condition is false
if (data->pwm_enable & (1 << (2 * nr)))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/f71882fg.c:1795:2: note: Taking false branch
if (data->pwm_enable & (1 << (2 * nr)))
^
drivers/hwmon/f71882fg.c:1801:6: note: Calling 'fan_from_reg'
/ fan_from_reg(data->fan_full_speed[nr]);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/f71882fg.c:1148:9: note: Assuming 'reg' is 0
return reg ? (1500000 / reg) : 0;
^~~
drivers/hwmon/f71882fg.c:1148:9: note: '?' condition is false
drivers/hwmon/f71882fg.c:1148:2: note: Returning zero
return reg ? (1500000 / reg) : 0;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/f71882fg.c:1801:6: note: Returning from 'fan_from_reg'
/ fan_from_reg(data->fan_full_speed[nr]);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/f71882fg.c:1801:4: note: Division by zero
/ fan_from_reg(data->fan_full_speed[nr]);
~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
6 warnings generated.
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
6 warnings generated.
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
7 warnings generated.
Suppressed 7 warnings (7 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
7 warnings generated.
Suppressed 7 warnings (7 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
8 warnings generated.
mm/swap_state.c:165:9: warning: Value stored to 'entry' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
void *entry = xas_store(&xas, shadow);
^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
mm/swap_state.c:165:9: note: Value stored to 'entry' during its initialization is never read
void *entry = xas_store(&xas, shadow);
^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
Suppressed 7 warnings (7 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
9 warnings generated.
mm/swapfile.c:533:28: warning: Value stored to 'ci' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct swap_cluster_info *ci = si->cluster_info + idx;
^~ ~~~~~~~~~~~~~~~~~~~~~~
mm/swapfile.c:533:28: note: Value stored to 'ci' during its initialization is never read
struct swap_cluster_info *ci = si->cluster_info + idx;
^~ ~~~~~~~~~~~~~~~~~~~~~~
mm/swapfile.c:1312:2: warning: Value stored to 'count' is never read [clang-analyzer-deadcode.DeadStores]
count = p->swap_map[offset];
^ ~~~~~~~~~~~~~~~~~~~
mm/swapfile.c:1312:2: note: Value stored to 'count' is never read
count = p->swap_map[offset];
^ ~~~~~~~~~~~~~~~~~~~
Suppressed 7 warnings (7 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
6 warnings generated.
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
6 warnings generated.
Suppressed 6 warnings (6 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
7 warnings generated.
Suppressed 7 warnings (6 in non-user code, 1 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.
6 warnings generated.
>> mm/sparse-vmemmap.c:747:17: warning: Value stored to 'next' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
unsigned long next = addr, last = addr + size;
^~~~ ~~~~
mm/sparse-vmemmap.c:747:17: note: Value stored to 'next' during its initialization is never read
unsigned long next = addr, last = addr + size;
^~~~ ~~~~
Suppressed 5 warnings (5 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
5 warnings generated.
Suppressed 5 warnings (5 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
5 warnings generated.
Suppressed 5 warnings (5 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
14 warnings generated.
drivers/block/aoe/aoecmd.c:152:13: warning: Although the value stored to 'lba' is used in the enclosing expression, the value is never actually read from 'lba' [clang-analyzer-deadcode.DeadStores]
ah->lba5 = lba >>= 8;
^ ~
drivers/block/aoe/aoecmd.c:152:13: note: Although the value stored to 'lba' is used in the enclosing expression, the value is never actually read from 'lba'
ah->lba5 = lba >>= 8;
^ ~
Suppressed 13 warnings (13 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
13 warnings generated.
Suppressed 13 warnings (13 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
8 warnings generated.
Suppressed 8 warnings (8 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
13 warnings generated.
Suppressed 13 warnings (13 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
7 warnings generated.
arch/x86/include/asm/paravirt.h:55:2: warning: Assigned value is garbage or undefined [clang-analyzer-core.uninitialized.Assign]
PVOP_VCALL0(cpu.io_delay);
^
arch/x86/include/asm/paravirt_types.h:512:2: note: expanded from macro 'PVOP_VCALL0'
__PVOP_VCALL(op)
^
arch/x86/include/asm/paravirt_types.h:492:8: note: expanded from macro '__PVOP_VCALL'
(void)____PVOP_CALL(, op, CLBR_ANY, PVOP_VCALL_CLOBBERS, \
^
arch/x86/include/asm/paravirt_types.h:447:3: note: expanded from macro '____PVOP_CALL'
PVOP_CALL_ARGS; \
^
arch/x86/include/asm/paravirt_types.h:405:16: note: expanded from macro 'PVOP_CALL_ARGS'
unsigned long __edi = __edi, __esi = __esi, \
^
drivers/usb/host/pci-quirks.c:509:2: note: Calling 'usb_amd_quirk_pll'
usb_amd_quirk_pll(0);
^~~~~~~~~~~~~~~~~~~~
drivers/usb/host/pci-quirks.c:343:12: note: 'disable' is 0
u32 bit = disable ? 0 : 1;
^~~~~~~
drivers/usb/host/pci-quirks.c:343:12: note: '?' condition is false
drivers/usb/host/pci-quirks.c:346:2: note: Loop condition is false. Exiting loop
spin_lock_irqsave(&amd_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:240:2: note: expanded from macro 'raw_spin_lock_irqsave'
do { \
^
drivers/usb/host/pci-quirks.c:346:2: note: Loop condition is false. Exiting loop
spin_lock_irqsave(&amd_lock, flags);
^
include/linux/spinlock.h:382:43: note: expanded from macro 'spin_lock_irqsave'
#define spin_lock_irqsave(lock, flags) \
^
drivers/usb/host/pci-quirks.c:348:6: note: 'disable' is 0
if (disable) {
^~~~~~~
drivers/usb/host/pci-quirks.c:348:2: note: Taking false branch
if (disable) {
^
drivers/usb/host/pci-quirks.c:356:7: note: Assuming field 'isoc_reqs' is <= 0
if (amd_chipset.isoc_reqs > 0) {
^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/usb/host/pci-quirks.c:356:3: note: Taking false branch
if (amd_chipset.isoc_reqs > 0) {
^
drivers/usb/host/pci-quirks.c:362:6: note: Assuming field 'gen' is equal to AMD_CHIPSET_SB800
if (amd_chipset.sb_type.gen == AMD_CHIPSET_SB800 ||
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/usb/host/pci-quirks.c:362:51: note: Left side of '||' is true
if (amd_chipset.sb_type.gen == AMD_CHIPSET_SB800 ||
^
drivers/usb/host/pci-quirks.c:365:3: note: Calling 'outb_p'
outb_p(AB_REG_BAR_LOW, 0xcd6);
^
arch/x86/include/asm/io.h:337:16: note: expanded from macro 'outb_p'
#define outb_p outb_p
^
arch/x86/include/asm/io.h:320:1: note: Calling 'slow_down_io'
BUILDIO(b, b, char)
^
arch/x86/include/asm/io.h:278:2: note: expanded from macro 'BUILDIO'
slow_down_io(); \
^~~~~~~~~~~~~~
arch/x86/include/asm/paravirt.h:55:2: note: Assigned value is garbage or undefined
vim +/next +747 mm/sparse-vmemmap.c
69543e15fc8fb75 Joao Martins 2022-02-24 723
69543e15fc8fb75 Joao Martins 2022-02-24 724 static int __meminit vmemmap_populate_compound_pages(unsigned long start_pfn,
69543e15fc8fb75 Joao Martins 2022-02-24 725 unsigned long start,
69543e15fc8fb75 Joao Martins 2022-02-24 726 unsigned long end, int node,
69543e15fc8fb75 Joao Martins 2022-02-24 727 struct dev_pagemap *pgmap)
69543e15fc8fb75 Joao Martins 2022-02-24 728 {
69543e15fc8fb75 Joao Martins 2022-02-24 729 unsigned long size, addr;
69543e15fc8fb75 Joao Martins 2022-02-24 730 pte_t *pte;
69543e15fc8fb75 Joao Martins 2022-02-24 731 int rc;
69543e15fc8fb75 Joao Martins 2022-02-24 732
69543e15fc8fb75 Joao Martins 2022-02-24 733 if (reuse_compound_section(start_pfn, pgmap)) {
69543e15fc8fb75 Joao Martins 2022-02-24 734 pte = compound_section_tail_page(start);
4076bbc93eda6e1 Joao Martins 2022-02-24 735 if (!pte)
4076bbc93eda6e1 Joao Martins 2022-02-24 736 return -ENOMEM;
69543e15fc8fb75 Joao Martins 2022-02-24 737
69543e15fc8fb75 Joao Martins 2022-02-24 738 /*
69543e15fc8fb75 Joao Martins 2022-02-24 739 * Reuse the page that was populated in the prior iteration
69543e15fc8fb75 Joao Martins 2022-02-24 740 * with just tail struct pages.
69543e15fc8fb75 Joao Martins 2022-02-24 741 */
69543e15fc8fb75 Joao Martins 2022-02-24 742 return vmemmap_populate_range(start, end, node, pte_page(*pte));
69543e15fc8fb75 Joao Martins 2022-02-24 743 }
69543e15fc8fb75 Joao Martins 2022-02-24 744
69543e15fc8fb75 Joao Martins 2022-02-24 745 size = min(end - start, pgmap_vmemmap_nr(pgmap) * sizeof(struct page));
69543e15fc8fb75 Joao Martins 2022-02-24 746 for (addr = start; addr < end; addr += size) {
69543e15fc8fb75 Joao Martins 2022-02-24 @747 unsigned long next = addr, last = addr + size;
69543e15fc8fb75 Joao Martins 2022-02-24 748
69543e15fc8fb75 Joao Martins 2022-02-24 749 /* Populate the head page vmemmap page */
69543e15fc8fb75 Joao Martins 2022-02-24 750 pte = vmemmap_populate_address(addr, node, NULL, NULL);
69543e15fc8fb75 Joao Martins 2022-02-24 751 if (!pte)
69543e15fc8fb75 Joao Martins 2022-02-24 752 return -ENOMEM;
69543e15fc8fb75 Joao Martins 2022-02-24 753
69543e15fc8fb75 Joao Martins 2022-02-24 754 /* Populate the tail pages vmemmap page */
69543e15fc8fb75 Joao Martins 2022-02-24 755 next = addr + PAGE_SIZE;
69543e15fc8fb75 Joao Martins 2022-02-24 756 pte = vmemmap_populate_address(next, node, NULL, NULL);
69543e15fc8fb75 Joao Martins 2022-02-24 757 if (!pte)
69543e15fc8fb75 Joao Martins 2022-02-24 758 return -ENOMEM;
69543e15fc8fb75 Joao Martins 2022-02-24 759
69543e15fc8fb75 Joao Martins 2022-02-24 760 /*
69543e15fc8fb75 Joao Martins 2022-02-24 761 * Reuse the previous page for the rest of tail pages
69543e15fc8fb75 Joao Martins 2022-02-24 762 * See layout diagram in Documentation/vm/vmemmap_dedup.rst
69543e15fc8fb75 Joao Martins 2022-02-24 763 */
69543e15fc8fb75 Joao Martins 2022-02-24 764 next += PAGE_SIZE;
69543e15fc8fb75 Joao Martins 2022-02-24 765 rc = vmemmap_populate_range(next, last, node, pte_page(*pte));
69543e15fc8fb75 Joao Martins 2022-02-24 766 if (rc)
69543e15fc8fb75 Joao Martins 2022-02-24 767 return -ENOMEM;
8f6aac419bd590f Christoph Lameter 2007-10-16 768 }
29c71111d055738 Andy Whitcroft 2007-10-16 769
29c71111d055738 Andy Whitcroft 2007-10-16 770 return 0;
8f6aac419bd590f Christoph Lameter 2007-10-16 771 }
8f6aac419bd590f Christoph Lameter 2007-10-16 772
:::::: The code@line 747 was first introduced by commit
:::::: 69543e15fc8fb75dac97bd88442acbcd8d016704 mm/sparse-vmemmap: improve memory savings for compound devmaps
:::::: TO: Joao Martins <joao.m.martins@oracle.com>
:::::: CC: Mark Brown <broonie@kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
reply other threads:[~2022-02-26 4:24 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=202202261206.iayFIHUI-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.