From: kernel test robot <lkp@intel.com>
To: Xu Lu <luxu.kernel@bytedance.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
Paul Walmsley <pjw@kernel.org>
Subject: [linux-next:master 6105/7063] arch/riscv/include/asm/pgtable.h:584:47: warning: variable 'asid' is uninitialized when used here
Date: Sat, 18 Jul 2026 04:20:13 +0800 [thread overview]
Message-ID: <202607180449.FJLkX0Mf-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 1a1757b76427f6201bfe0bf1bea9f7574f332a93
commit: 6dfbb04908eb630ae6a592454b28c2f666a20a5a [6105/7063] riscv: mm: Apply Svinval in update_mmu_cache()
config: riscv-randconfig-001-20260717 (https://download.01.org/0day-ci/archive/20260718/202607180449.FJLkX0Mf-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260718/202607180449.FJLkX0Mf-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/202607180449.FJLkX0Mf-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from arch/riscv/kernel/asm-offsets.c:9:
In file included from include/linux/mm.h:31:
In file included from include/linux/pgtable.h:6:
>> arch/riscv/include/asm/pgtable.h:584:47: warning: variable 'asid' is uninitialized when used here [-Wuninitialized]
584 | local_sinval_vma(address + nr * PAGE_SIZE, asid);
| ^~~~
arch/riscv/include/asm/pgtable.h:571:20: note: initialize the variable 'asid' to silence this warning
571 | unsigned long asid;
| ^
| = 0
1 warning generated.
--
In file included from drivers/message/fusion/mptbase.c:50:
In file included from include/linux/module.h:20:
In file included from include/linux/elf.h:6:
In file included from arch/riscv/include/asm/elf.h:12:
In file included from include/linux/compat.h:17:
In file included from include/linux/fs.h:5:
In file included from include/linux/fs/super.h:5:
In file included from include/linux/fs/super_types.h:13:
In file included from include/linux/percpu-rwsem.h:7:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:9:
In file included from include/linux/sched/task.h:13:
In file included from include/linux/uaccess.h:13:
In file included from arch/riscv/include/asm/uaccess.h:13:
>> arch/riscv/include/asm/pgtable.h:584:47: warning: variable 'asid' is uninitialized when used here [-Wuninitialized]
584 | local_sinval_vma(address + nr * PAGE_SIZE, asid);
| ^~~~
arch/riscv/include/asm/pgtable.h:571:20: note: initialize the variable 'asid' to silence this warning
571 | unsigned long asid;
| ^
| = 0
drivers/message/fusion/mptbase.c:2299:6: warning: variable 'a' set but not used [-Wunused-but-set-variable]
2299 | u8 *a;
| ^
drivers/message/fusion/mptbase.c:2815:6: warning: variable 'sz_first' set but not used [-Wunused-but-set-variable]
2815 | int sz_first, sz_last;
| ^
drivers/message/fusion/mptbase.c:2815:16: warning: variable 'sz_last' set but not used [-Wunused-but-set-variable]
2815 | int sz_first, sz_last;
| ^
drivers/message/fusion/mptbase.c:3964:6: warning: variable 'diag1val' set but not used [-Wunused-but-set-variable]
3964 | u32 diag1val = 0;
| ^
drivers/message/fusion/mptbase.c:6977:17: warning: variable 'time_count' set but not used [-Wunused-but-set-variable]
6977 | unsigned long time_count;
| ^
drivers/message/fusion/mptbase.c:7146:17: warning: variable 'time_count' set but not used [-Wunused-but-set-variable]
7146 | unsigned long time_count;
| ^
7 warnings generated.
--
In file included from drivers/message/fusion/mptsas.c:46:
In file included from include/linux/module.h:20:
In file included from include/linux/elf.h:6:
In file included from arch/riscv/include/asm/elf.h:12:
In file included from include/linux/compat.h:17:
In file included from include/linux/fs.h:5:
In file included from include/linux/fs/super.h:5:
In file included from include/linux/fs/super_types.h:13:
In file included from include/linux/percpu-rwsem.h:7:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:9:
In file included from include/linux/sched/task.h:13:
In file included from include/linux/uaccess.h:13:
In file included from arch/riscv/include/asm/uaccess.h:13:
>> arch/riscv/include/asm/pgtable.h:584:47: warning: variable 'asid' is uninitialized when used here [-Wuninitialized]
584 | local_sinval_vma(address + nr * PAGE_SIZE, asid);
| ^~~~
arch/riscv/include/asm/pgtable.h:571:20: note: initialize the variable 'asid' to silence this warning
571 | unsigned long asid;
| ^
| = 0
drivers/message/fusion/mptsas.c:1449:5: warning: variable 'fw_id' set but not used [-Wunused-but-set-variable]
1449 | u8 fw_id;
| ^
drivers/message/fusion/mptsas.c:1527:5: warning: variable 'fw_id' set but not used [-Wunused-but-set-variable]
1527 | u8 fw_id;
| ^
drivers/message/fusion/mptsas.c:4790:17: warning: variable 'timeleft' set but not used [-Wunused-but-set-variable]
4790 | unsigned long timeleft;
| ^
drivers/message/fusion/mptsas.c:4870:9: warning: variable 'termination_count' set but not used [-Wunused-but-set-variable]
4870 | u32 termination_count;
| ^
drivers/message/fusion/mptsas.c:4871:9: warning: variable 'query_count' set but not used [-Wunused-but-set-variable]
4871 | u32 query_count;
| ^
6 warnings generated.
--
In file included from drivers/message/fusion/mptscsih.c:47:
In file included from include/linux/module.h:20:
In file included from include/linux/elf.h:6:
In file included from arch/riscv/include/asm/elf.h:12:
In file included from include/linux/compat.h:17:
In file included from include/linux/fs.h:5:
In file included from include/linux/fs/super.h:5:
In file included from include/linux/fs/super_types.h:13:
In file included from include/linux/percpu-rwsem.h:7:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:9:
In file included from include/linux/sched/task.h:13:
In file included from include/linux/uaccess.h:13:
In file included from arch/riscv/include/asm/uaccess.h:13:
>> arch/riscv/include/asm/pgtable.h:584:47: warning: variable 'asid' is uninitialized when used here [-Wuninitialized]
584 | local_sinval_vma(address + nr * PAGE_SIZE, asid);
| ^~~~
arch/riscv/include/asm/pgtable.h:571:20: note: initialize the variable 'asid' to silence this warning
571 | unsigned long asid;
| ^
| = 0
drivers/message/fusion/mptscsih.c:1036:8: warning: variable 'channel' set but not used [-Wunused-but-set-variable]
1036 | int channel, id;
| ^
drivers/message/fusion/mptscsih.c:1036:17: warning: variable 'id' set but not used [-Wunused-but-set-variable]
1036 | int channel, id;
| ^
drivers/message/fusion/mptscsih.c:1148:15: warning: variable 'ioc' set but not used [-Wunused-but-set-variable]
1148 | MPT_ADAPTER *ioc;
| ^
drivers/message/fusion/mptscsih.c:1177:6: warning: variable 'sz1' set but not used [-Wunused-but-set-variable]
1177 | int sz1;
| ^
drivers/message/fusion/mptscsih.c:1522:17: warning: variable 'time_count' set but not used [-Wunused-but-set-variable]
1522 | unsigned long time_count;
| ^
drivers/message/fusion/mptscsih.c:2345:15: warning: variable 'vtarget' set but not used [-Wunused-but-set-variable]
2345 | VirtTarget *vtarget;
| ^
7 warnings generated.
--
In file included from arch/riscv/kernel/asm-offsets.c:9:
In file included from include/linux/mm.h:31:
In file included from include/linux/pgtable.h:6:
>> arch/riscv/include/asm/pgtable.h:584:47: warning: variable 'asid' is uninitialized when used here [-Wuninitialized]
584 | local_sinval_vma(address + nr * PAGE_SIZE, asid);
| ^~~~
arch/riscv/include/asm/pgtable.h:571:20: note: initialize the variable 'asid' to silence this warning
571 | unsigned long asid;
| ^
| = 0
1 warning generated.
In file included from kernel/sched/rq-offsets.c:5:
In file included from kernel/sched/sched.h:17:
In file included from include/linux/sched/signal.h:9:
In file included from include/linux/sched/task.h:13:
In file included from include/linux/uaccess.h:13:
In file included from arch/riscv/include/asm/uaccess.h:13:
>> arch/riscv/include/asm/pgtable.h:584:47: warning: variable 'asid' is uninitialized when used here [-Wuninitialized]
584 | local_sinval_vma(address + nr * PAGE_SIZE, asid);
| ^~~~
arch/riscv/include/asm/pgtable.h:571:20: note: initialize the variable 'asid' to silence this warning
571 | unsigned long asid;
| ^
| = 0
1 warning generated.
In file included from <built-in>:4:
In file included from lib/vdso/getrandom.c:15:
In file included from include/uapi/linux/mman.h:5:
In file included from arch/riscv/include/asm/mman.h:7:
In file included from include/linux/mm.h:31:
In file included from include/linux/pgtable.h:6:
>> arch/riscv/include/asm/pgtable.h:584:47: warning: variable 'asid' is uninitialized when used here [-Wuninitialized]
584 | local_sinval_vma(address + nr * PAGE_SIZE, asid);
| ^~~~
arch/riscv/include/asm/pgtable.h:571:20: note: initialize the variable 'asid' to silence this warning
571 | unsigned long asid;
| ^
| = 0
1 warning generated.
vim +/asid +584 arch/riscv/include/asm/pgtable.h
561
562 #define pgd_ERROR(e) \
563 pr_err("%s:%d: bad pgd " PTE_FMT ".\n", __FILE__, __LINE__, pgd_val(e))
564
565
566 /* Commit new configuration to MMU hardware */
567 static inline void update_mmu_cache_range(struct vm_fault *vmf,
568 struct vm_area_struct *vma, unsigned long address,
569 pte_t *ptep, unsigned int nr)
570 {
571 unsigned long asid;
572
573 /*
574 * Svvptc guarantees that the new valid pte will be visible within
575 * a bounded timeframe, so when the uarch does not cache invalid
576 * entries, we don't have to do anything.
577 */
578 if (riscv_has_extension_unlikely(RISCV_ISA_EXT_SVVPTC))
579 return;
580
581 if (riscv_has_extension_unlikely(RISCV_ISA_EXT_SVINVAL)) {
582 local_sfence_w_inval();
583 while (nr--)
> 584 local_sinval_vma(address + nr * PAGE_SIZE, asid);
585 local_sfence_inval_ir();
586 return;
587 }
588
589 /*
590 * The kernel assumes that TLBs don't cache invalid entries, but
591 * in RISC-V, SFENCE.VMA specifies an ordering constraint, not a
592 * cache flush; it is necessary even after writing invalid entries.
593 * Relying on flush_tlb_fix_spurious_fault would suffice, but
594 * the extra traps reduce performance. So, eagerly SFENCE.VMA.
595 */
596 asid = get_mm_asid(vma->vm_mm);
597 while (nr--)
598 local_flush_tlb_page_asid(address + nr * PAGE_SIZE, asid);
599 }
600
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2026-07-17 20:20 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=202607180449.FJLkX0Mf-lkp@intel.com \
--to=lkp@intel.com \
--cc=llvm@lists.linux.dev \
--cc=luxu.kernel@bytedance.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=pjw@kernel.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.