From: kernel test robot <lkp@intel.com>
To: cros-kernel-buildreports@googlegroups.com
Cc: oe-kbuild-all@lists.linux.dev
Subject: [android-common:android16-6.12-p3s 2/2] arch/arm64/kvm/mmu.c:378: warning: Function parameter or struct member 'addr' not described in '___unmap_stage2_range'
Date: Thu, 29 Oct 2026 22:48:33 +0800 [thread overview]
Message-ID: <202610292257.ELEb1wQN-lkp@intel.com> (raw)
Hi Quentin,
FYI, the error/warning still remains.
tree: https://android.googlesource.com/kernel/common android16-6.12-p3s
head: 606d03f6372c0cd085fc0d154cbfc17c298058f2
commit: fcc111df8789eb3964c040712266abb15c823476 [2/2] ANDROID: KVM: arm64: Unshare pages from __unmap_stage2_range()
config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20261029/202610292257.ELEb1wQN-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project c2ea4440d4b64c148de4fdfca1fc2c437a0701e4)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261029/202610292257.ELEb1wQN-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/202610292257.ELEb1wQN-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> arch/arm64/kvm/mmu.c:378: warning: Function parameter or struct member 'addr' not described in '___unmap_stage2_range'
>> arch/arm64/kvm/mmu.c:378: warning: expecting prototype for __unmap_stage2_range(). Prototype was for ___unmap_stage2_range() instead
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for INTEL_MEI_ME
Depends on [n]: X86 && PCI [=y]
Selected by [m]:
- INTEL_MEI_HDCP [=m] && (DRM_I915 [=n] || DRM_XE [=m])
- INTEL_MEI_PXP [=m] && (DRM_I915 [=n] || DRM_XE [=m])
vim +378 arch/arm64/kvm/mmu.c
fcc111df8789eb arch/arm64/kvm/mmu.c Quentin Perret 2022-07-06 339
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 340 /*
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 341 * Unmapping vs dcache management:
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 342 *
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 343 * If a guest maps certain memory pages as uncached, all writes will
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 344 * bypass the data cache and go directly to RAM. However, the CPUs
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 345 * can still speculate reads (not writes) and fill cache lines with
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 346 * data.
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 347 *
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 348 * Those cache lines will be *clean* cache lines though, so a
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 349 * clean+invalidate operation is equivalent to an invalidate
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 350 * operation, because no cache lines are marked dirty.
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 351 *
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 352 * Those clean cache lines could be filled prior to an uncached write
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 353 * by the guest, and the cache coherent IO subsystem would therefore
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 354 * end up writing old data to disk.
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 355 *
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 356 * This is why right after unmapping a page/section and invalidating
52bae936f0e7be arch/arm64/kvm/mmu.c Will Deacon 2020-09-11 357 * the corresponding TLBs, we flush to make sure the IO subsystem will
52bae936f0e7be arch/arm64/kvm/mmu.c Will Deacon 2020-09-11 358 * never hit in the cache.
e48d53a91f6e90 virt/kvm/arm/mmu.c Marc Zyngier 2018-04-06 359 *
e48d53a91f6e90 virt/kvm/arm/mmu.c Marc Zyngier 2018-04-06 360 * This is all avoided on systems that have ARM64_HAS_STAGE2_FWB, as
e48d53a91f6e90 virt/kvm/arm/mmu.c Marc Zyngier 2018-04-06 361 * we then fully enforce cacheability of RAM, no matter what the guest
e48d53a91f6e90 virt/kvm/arm/mmu.c Marc Zyngier 2018-04-06 362 * does.
363ef89f8e9bce arch/arm/kvm/mmu.c Marc Zyngier 2014-12-19 363 */
7a1c831ee8553b arch/arm/kvm/mmu.c Suzuki K Poulose 2016-03-23 364 /**
ffd9eaffa34d79 arch/arm64/kvm/mmu.c Randy Dunlap 2024-01-17 365 * __unmap_stage2_range -- Clear stage2 page table entries to unmap a range
c9c0279cc02b4e arch/arm64/kvm/mmu.c Xiaofei Tan 2020-09-17 366 * @mmu: The KVM stage-2 MMU pointer
7a1c831ee8553b arch/arm/kvm/mmu.c Suzuki K Poulose 2016-03-23 367 * @start: The intermediate physical base address of the range to unmap
7a1c831ee8553b arch/arm/kvm/mmu.c Suzuki K Poulose 2016-03-23 368 * @size: The size of the area to unmap
c9c0279cc02b4e arch/arm64/kvm/mmu.c Xiaofei Tan 2020-09-17 369 * @may_block: Whether or not we are permitted to block
7a1c831ee8553b arch/arm/kvm/mmu.c Suzuki K Poulose 2016-03-23 370 *
7a1c831ee8553b arch/arm/kvm/mmu.c Suzuki K Poulose 2016-03-23 371 * Clear a range of stage-2 mappings, lowering the various ref-counts. Must
7a1c831ee8553b arch/arm/kvm/mmu.c Suzuki K Poulose 2016-03-23 372 * be called while holding mmu_lock (unless for freeing the stage2 pgd before
7a1c831ee8553b arch/arm/kvm/mmu.c Suzuki K Poulose 2016-03-23 373 * destroying the VM), otherwise another faulting VCPU may come in and mess
7a1c831ee8553b arch/arm/kvm/mmu.c Suzuki K Poulose 2016-03-23 374 * with things behind our backs.
7a1c831ee8553b arch/arm/kvm/mmu.c Suzuki K Poulose 2016-03-23 375 */
80a72f6ae4aa66 arch/arm64/kvm/mmu.c Quentin Perret 2022-05-11 376
80a72f6ae4aa66 arch/arm64/kvm/mmu.c Quentin Perret 2022-05-11 377 static int ___unmap_stage2_range(struct kvm_s2_mmu *mmu, u64 addr, u64 size)
80a72f6ae4aa66 arch/arm64/kvm/mmu.c Quentin Perret 2022-05-11 @378 {
fcc111df8789eb arch/arm64/kvm/mmu.c Quentin Perret 2022-07-06 379 if (!is_protected_kvm_enabled())
80a72f6ae4aa66 arch/arm64/kvm/mmu.c Quentin Perret 2022-05-11 380 return kvm_pgtable_stage2_unmap(mmu->pgt, addr, size);
fcc111df8789eb arch/arm64/kvm/mmu.c Quentin Perret 2022-07-06 381
fcc111df8789eb arch/arm64/kvm/mmu.c Quentin Perret 2022-07-06 382 return pkvm_unmap_range(kvm_s2_mmu_to_kvm(mmu), addr, addr + size);
80a72f6ae4aa66 arch/arm64/kvm/mmu.c Quentin Perret 2022-05-11 383 }
80a72f6ae4aa66 arch/arm64/kvm/mmu.c Quentin Perret 2022-05-11 384
:::::: The code at line 378 was first introduced by commit
:::::: 80a72f6ae4aa66b8fb00a1c8a0d61f054d618003 ANDROID: KVM: amr64: Pass kvm_s2_mmu struct from stage2_apply_range()
:::::: TO: Quentin Perret <qperret@google.com>
:::::: CC: Keir Fraser <keirf@google.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2026-10-29 14:49 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=202610292257.ELEb1wQN-lkp@intel.com \
--to=lkp@intel.com \
--cc=cros-kernel-buildreports@googlegroups.com \
--cc=oe-kbuild-all@lists.linux.dev \
/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.