Skip to content

[PW_SID:1097006] [1/2] riscv: track effective hardware PTE A/D updates#1968

Closed
linux-riscv-bot wants to merge 3 commits into
workflow__riscv__fixesfrom
pw1097006
Closed

[PW_SID:1097006] [1/2] riscv: track effective hardware PTE A/D updates#1968
linux-riscv-bot wants to merge 3 commits into
workflow__riscv__fixesfrom
pw1097006

Conversation

@linux-riscv-bot
Copy link
Copy Markdown

PR for series 1097006 applied to workflow__riscv__fixes

Name: [1/2] riscv: track effective hardware PTE A/D updates
URL: https://patchwork.kernel.org/project/linux-riscv/list/?series=1097006
Version: 1

Linux RISC-V bot and others added 3 commits May 14, 2026 08:49
Separate Svadu capability discovery from the host's effective ADUE
state. Enable SBI FWFT PTE A/D hardware updating on each online CPU
through CPUHP when both Svade and Svadu are present, use the resulting
runtime state for arch_has_hw_pte_young(), and fall back to
software-managed A/D updates when enabling the feature fails.

Platforms with Svadu but without Svade are treated as always using
hardware PTE A/D updates. Expose the runtime state through an inline
getter so hot MM paths avoid an out-of-line function call.

Signed-off-by: Yunhui Cui <cuiyunhui@bytedance.com>
Reviewed-by: Qingwei Hu <qingwei.hu@bytedance.com>
Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
Use cmpxchg-based merges for live RISC-V PTE permission updates so
software changes do not lose concurrently hardware-updated accessed and
dirty state. Cover ptep_set_access_flags(),
ptep_test_and_clear_young(), and ptep_set_wrprotect(), and extend the
same wrprotect handling to the PUD leaf helper used by huge mappings.

Keep the existing Svvptc flush behaviour, but only flush when the
merged PTE value actually changed.

Signed-off-by: Yunhui Cui <cuiyunhui@bytedance.com>
Reviewed-by: Qingwei Hu <qingwei.hu@bytedance.com>
Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
build-rv32-defconfig
Desc: Builds riscv32 defconfig
Duration: 114.12 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
build-rv64-clang-allmodconfig
Desc: Builds riscv64 allmodconfig with Clang, and checks for errors and added warnings
Duration: 2219.71 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
build-rv64-gcc-allmodconfig
Desc: Builds riscv64 allmodconfig with GCC, and checks for errors and added warnings
Duration: 2999.99 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
build-rv64-nommu-k210-defconfig
Desc: Builds riscv64 defconfig with NOMMU for K210
Duration: 18.04 seconds
Result: ERROR
Output:

Full log:
W: Support for running offline not available (unshare: unshare failed: Operation not permitted)
I: config: PASS in 0:00:02.312878
I: default: FAIL in 0:00:12.042545
I: kernel: SKIP in 0:00:00.000008
I: xipkernel: SKIP in 0:00:00.000002
I: modules: SKIP in 0:00:00.001382
I: dtbs: PASS in 0:00:00.564947
I: dtbs-legacy: SKIP in 0:00:00.002064
I: debugkernel: SKIP in 0:00:00.000002
I: headers: PASS in 0:00:00.964508
I: build output in /build/tmp.nd05rdxVDY
tuxmake --download-all-korg-gcc-toolchains --target-arch=riscv --kconfig=nommu_k210_defconfig --toolchain=gcc --wrapper=ccache --environment=KBUILD_BUILD_TIMESTAMP=@1621270510 --environment=KBUILD_BUILD_USER=tuxmake --environment=KBUILD_BUILD_HOST=tuxmake --environment=KCFLAGS=-ffile-prefix-map=/build/tmp.nd05rdxVDY/build/= --runtime=null --image=docker.io/tuxmake/riscv_gcc CROSS_COMPILE=riscv64-linux- config default kernel xipkernel modules dtbs dtbs-legacy debugkernel headers
make --silent --keep-going --jobs=48 O=/build/tmp.nd05rdxVDY/build ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' nommu_k210_defconfig
make --silent --keep-going --jobs=48 O=/build/tmp.nd05rdxVDY/build ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc'
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c: In function 'riscv_hw_pte_ad_updating_starting':
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:301:15: error: implicit declaration of function 'sbi_fwft_set' [-Wimplicit-function-declaration]
  301 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 1, 0);
      |               ^~~~~~~~~~~~
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:301:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
  301 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 1, 0);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:301:28: note: each undeclared identifier is reported only once for each function it appears in
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c: In function 'riscv_hw_pte_ad_updating_dying':
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:316:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
  316 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 0, 0);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
make[5]: *** [/build/tmpw9ld39xt/scripts/Makefile.build:289: arch/riscv/kernel/cpufeature.o] Error 1
make[5]: Target 'arch/riscv/kernel/' not remade because of errors.
make[4]: *** [/build/tmpw9ld39xt/scripts/Makefile.build:548: arch/riscv/kernel] Error 2
make[4]: Target 'arch/riscv/' not remade because of errors.
make[3]: *** [/build/tmpw9ld39xt/scripts/Makefile.build:548: arch/riscv] Error 2
make[3]: Target './' not remade because of errors.
make[2]: *** [/build/tmpw9ld39xt/Makefile:2141: .] Error 2
make[2]: Target '__all' not remade because of errors.
make[1]: *** [/build/tmpw9ld39xt/Makefile:248: __sub-make] Error 2
make[1]: Target '__all' not remade because of errors.
make: *** [Makefile:248: __sub-make] Error 2
make: Target '__all' not remade because of errors.
make --silent --keep-going --jobs=48 O=/build/tmp.nd05rdxVDY/build INSTALL_DTBS_PATH=/build/tmp.nd05rdxVDY/build/dtbsinstall/dtbs ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' dtbs
rm -rf /build/tmp.nd05rdxVDY/build/dtbsinstall
mkdir -p /build/tmp.nd05rdxVDY/build/dtbsinstall/dtbs
make --silent --keep-going --jobs=48 O=/build/tmp.nd05rdxVDY/build INSTALL_DTBS_PATH=/build/tmp.nd05rdxVDY/build/dtbsinstall/dtbs ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' dtbs_install
tar --sort=name --owner=tuxmake:1000 --group=tuxmake:1000 --mtime=@1779166064 --clamp-mtime -caf /build/tmp.nd05rdxVDY/build/dtbs.tar -C /build/tmp.nd05rdxVDY/build/dtbsinstall dtbs
rm -rf /build/tmp.nd05rdxVDY/build/install_hdr
make --silent --keep-going --jobs=48 O=/build/tmp.nd05rdxVDY/build INSTALL_HDR_PATH=/build/tmp.nd05rdxVDY/build/install_hdr/ ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' headers_install
tar --sort=name --owner=tuxmake:1000 --group=tuxmake:1000 --mtime=@1779166064 --clamp-mtime -caf /build/tmp.nd05rdxVDY/build/headers.tar -C /build/tmp.nd05rdxVDY/build/install_hdr .
warnings/errors:
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:301:15: error: implicit declaration of function 'sbi_fwft_set' [-Wimplicit-function-declaration]
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:301:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:316:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)


@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
build-rv64-nommu-k210-virt
Desc: Builds riscv64 defconfig with NOMMU for the virt platform
Duration: 19.49 seconds
Result: ERROR
Output:

Full log:
W: Support for running offline not available (unshare: unshare failed: Operation not permitted)
I: config: PASS in 0:00:02.308018
I: default: FAIL in 0:00:13.527296
I: kernel: SKIP in 0:00:00.000005
I: xipkernel: SKIP in 0:00:00.000002
I: modules: SKIP in 0:00:00.001496
I: dtbs: PASS in 0:00:00.565002
I: dtbs-legacy: SKIP in 0:00:00.002022
I: debugkernel: SKIP in 0:00:00.000002
I: headers: PASS in 0:00:00.988895
I: build output in /build/tmp.ITJJfLbnuP
tuxmake --download-all-korg-gcc-toolchains --target-arch=riscv --kconfig=nommu_virt_defconfig --toolchain=gcc --wrapper=ccache --environment=KBUILD_BUILD_TIMESTAMP=@1621270510 --environment=KBUILD_BUILD_USER=tuxmake --environment=KBUILD_BUILD_HOST=tuxmake --environment=KCFLAGS=-ffile-prefix-map=/build/tmp.ITJJfLbnuP/build/= --runtime=null --image=docker.io/tuxmake/riscv_gcc CROSS_COMPILE=riscv64-linux- config default kernel xipkernel modules dtbs dtbs-legacy debugkernel headers
make --silent --keep-going --jobs=48 O=/build/tmp.ITJJfLbnuP/build ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' nommu_virt_defconfig
make --silent --keep-going --jobs=48 O=/build/tmp.ITJJfLbnuP/build ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc'
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c: In function 'riscv_hw_pte_ad_updating_starting':
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:301:15: error: implicit declaration of function 'sbi_fwft_set' [-Wimplicit-function-declaration]
  301 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 1, 0);
      |               ^~~~~~~~~~~~
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:301:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
  301 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 1, 0);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:301:28: note: each undeclared identifier is reported only once for each function it appears in
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c: In function 'riscv_hw_pte_ad_updating_dying':
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:316:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
  316 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 0, 0);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
make[5]: *** [/build/tmpw9ld39xt/scripts/Makefile.build:289: arch/riscv/kernel/cpufeature.o] Error 1
make[5]: Target 'arch/riscv/kernel/' not remade because of errors.
make[4]: *** [/build/tmpw9ld39xt/scripts/Makefile.build:548: arch/riscv/kernel] Error 2
make[4]: Target 'arch/riscv/' not remade because of errors.
make[3]: *** [/build/tmpw9ld39xt/scripts/Makefile.build:548: arch/riscv] Error 2
make[3]: Target './' not remade because of errors.
make[2]: *** [/build/tmpw9ld39xt/Makefile:2141: .] Error 2
make[2]: Target '__all' not remade because of errors.
make[1]: *** [/build/tmpw9ld39xt/Makefile:248: __sub-make] Error 2
make[1]: Target '__all' not remade because of errors.
make: *** [Makefile:248: __sub-make] Error 2
make: Target '__all' not remade because of errors.
make --silent --keep-going --jobs=48 O=/build/tmp.ITJJfLbnuP/build INSTALL_DTBS_PATH=/build/tmp.ITJJfLbnuP/build/dtbsinstall/dtbs ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' dtbs
rm -rf /build/tmp.ITJJfLbnuP/build/dtbsinstall
mkdir -p /build/tmp.ITJJfLbnuP/build/dtbsinstall/dtbs
make --silent --keep-going --jobs=48 O=/build/tmp.ITJJfLbnuP/build INSTALL_DTBS_PATH=/build/tmp.ITJJfLbnuP/build/dtbsinstall/dtbs ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' dtbs_install
tar --sort=name --owner=tuxmake:1000 --group=tuxmake:1000 --mtime=@1779166064 --clamp-mtime -caf /build/tmp.ITJJfLbnuP/build/dtbs.tar -C /build/tmp.ITJJfLbnuP/build/dtbsinstall dtbs
rm -rf /build/tmp.ITJJfLbnuP/build/install_hdr
make --silent --keep-going --jobs=48 O=/build/tmp.ITJJfLbnuP/build INSTALL_HDR_PATH=/build/tmp.ITJJfLbnuP/build/install_hdr/ ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' headers_install
tar --sort=name --owner=tuxmake:1000 --group=tuxmake:1000 --mtime=@1779166064 --clamp-mtime -caf /build/tmp.ITJJfLbnuP/build/headers.tar -C /build/tmp.ITJJfLbnuP/build/install_hdr .
warnings/errors:
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:301:15: error: implicit declaration of function 'sbi_fwft_set' [-Wimplicit-function-declaration]
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:301:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
/build/tmpw9ld39xt/arch/riscv/kernel/cpufeature.c:316:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)


@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
checkpatch
Desc: Runs checkpatch.pl on the patch
Duration: 0.98 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
dtb-warn-rv64
Desc: Checks for Device Tree warnings/errors
Duration: 77.35 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
header-inline
Desc: Detects static functions without inline keyword in header files
Duration: 0.23 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
kdoc
Desc: Detects for kdoc errors
Duration: 0.72 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
module-param
Desc: Detect module_param changes
Duration: 0.24 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
verify-fixes
Desc: Verifies that the Fixes: tags exist
Duration: 0.23 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "[1/2] riscv: track effective hardware PTE A/D updates"
verify-signedoff
Desc: Verifies that Signed-off-by: tags are correct
Duration: 0.26 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
build-rv32-defconfig
Desc: Builds riscv32 defconfig
Duration: 114.99 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
build-rv64-clang-allmodconfig
Desc: Builds riscv64 allmodconfig with Clang, and checks for errors and added warnings
Duration: 2223.31 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
build-rv64-gcc-allmodconfig
Desc: Builds riscv64 allmodconfig with GCC, and checks for errors and added warnings
Duration: 2992.01 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
build-rv64-nommu-k210-defconfig
Desc: Builds riscv64 defconfig with NOMMU for K210
Duration: 17.71 seconds
Result: ERROR
Output:

Full log:
W: Support for running offline not available (unshare: unshare failed: Operation not permitted)
I: config: PASS in 0:00:02.342534
I: default: FAIL in 0:00:11.753062
I: kernel: SKIP in 0:00:00.000006
I: xipkernel: SKIP in 0:00:00.000002
I: modules: SKIP in 0:00:00.001345
I: dtbs: PASS in 0:00:00.562850
I: dtbs-legacy: SKIP in 0:00:00.001909
I: debugkernel: SKIP in 0:00:00.000002
I: headers: PASS in 0:00:00.986516
I: build output in /build/tmp.xnAi8JG3bO
tuxmake --download-all-korg-gcc-toolchains --target-arch=riscv --kconfig=nommu_k210_defconfig --toolchain=gcc --wrapper=ccache --environment=KBUILD_BUILD_TIMESTAMP=@1621270510 --environment=KBUILD_BUILD_USER=tuxmake --environment=KBUILD_BUILD_HOST=tuxmake --environment=KCFLAGS=-ffile-prefix-map=/build/tmp.xnAi8JG3bO/build/= --runtime=null --image=docker.io/tuxmake/riscv_gcc CROSS_COMPILE=riscv64-linux- config default kernel xipkernel modules dtbs dtbs-legacy debugkernel headers
make --silent --keep-going --jobs=48 O=/build/tmp.xnAi8JG3bO/build ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' nommu_k210_defconfig
make --silent --keep-going --jobs=48 O=/build/tmp.xnAi8JG3bO/build ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc'
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c: In function 'riscv_hw_pte_ad_updating_starting':
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:301:15: error: implicit declaration of function 'sbi_fwft_set' [-Wimplicit-function-declaration]
  301 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 1, 0);
      |               ^~~~~~~~~~~~
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:301:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
  301 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 1, 0);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:301:28: note: each undeclared identifier is reported only once for each function it appears in
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c: In function 'riscv_hw_pte_ad_updating_dying':
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:316:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
  316 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 0, 0);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
make[5]: *** [/build/tmptwk8okcx/scripts/Makefile.build:289: arch/riscv/kernel/cpufeature.o] Error 1
make[5]: Target 'arch/riscv/kernel/' not remade because of errors.
make[4]: *** [/build/tmptwk8okcx/scripts/Makefile.build:548: arch/riscv/kernel] Error 2
make[4]: Target 'arch/riscv/' not remade because of errors.
make[3]: *** [/build/tmptwk8okcx/scripts/Makefile.build:548: arch/riscv] Error 2
make[3]: Target './' not remade because of errors.
make[2]: *** [/build/tmptwk8okcx/Makefile:2141: .] Error 2
make[2]: Target '__all' not remade because of errors.
make[1]: *** [/build/tmptwk8okcx/Makefile:248: __sub-make] Error 2
make[1]: Target '__all' not remade because of errors.
make: *** [Makefile:248: __sub-make] Error 2
make: Target '__all' not remade because of errors.
make --silent --keep-going --jobs=48 O=/build/tmp.xnAi8JG3bO/build INSTALL_DTBS_PATH=/build/tmp.xnAi8JG3bO/build/dtbsinstall/dtbs ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' dtbs
rm -rf /build/tmp.xnAi8JG3bO/build/dtbsinstall
mkdir -p /build/tmp.xnAi8JG3bO/build/dtbsinstall/dtbs
make --silent --keep-going --jobs=48 O=/build/tmp.xnAi8JG3bO/build INSTALL_DTBS_PATH=/build/tmp.xnAi8JG3bO/build/dtbsinstall/dtbs ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' dtbs_install
tar --sort=name --owner=tuxmake:1000 --group=tuxmake:1000 --mtime=@1779166064 --clamp-mtime -caf /build/tmp.xnAi8JG3bO/build/dtbs.tar -C /build/tmp.xnAi8JG3bO/build/dtbsinstall dtbs
rm -rf /build/tmp.xnAi8JG3bO/build/install_hdr
make --silent --keep-going --jobs=48 O=/build/tmp.xnAi8JG3bO/build INSTALL_HDR_PATH=/build/tmp.xnAi8JG3bO/build/install_hdr/ ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' headers_install
tar --sort=name --owner=tuxmake:1000 --group=tuxmake:1000 --mtime=@1779166064 --clamp-mtime -caf /build/tmp.xnAi8JG3bO/build/headers.tar -C /build/tmp.xnAi8JG3bO/build/install_hdr .
warnings/errors:
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:301:15: error: implicit declaration of function 'sbi_fwft_set' [-Wimplicit-function-declaration]
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:301:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:316:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)


@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
build-rv64-nommu-k210-virt
Desc: Builds riscv64 defconfig with NOMMU for the virt platform
Duration: 19.36 seconds
Result: ERROR
Output:

Full log:
W: Support for running offline not available (unshare: unshare failed: Operation not permitted)
I: config: PASS in 0:00:02.351823
I: default: FAIL in 0:00:13.235969
I: kernel: SKIP in 0:00:00.000006
I: xipkernel: SKIP in 0:00:00.000002
I: modules: SKIP in 0:00:00.001345
I: dtbs: PASS in 0:00:00.561040
I: dtbs-legacy: SKIP in 0:00:00.002088
I: debugkernel: SKIP in 0:00:00.000002
I: headers: PASS in 0:00:01.013114
I: build output in /build/tmp.dHsQWtzdUh
tuxmake --download-all-korg-gcc-toolchains --target-arch=riscv --kconfig=nommu_virt_defconfig --toolchain=gcc --wrapper=ccache --environment=KBUILD_BUILD_TIMESTAMP=@1621270510 --environment=KBUILD_BUILD_USER=tuxmake --environment=KBUILD_BUILD_HOST=tuxmake --environment=KCFLAGS=-ffile-prefix-map=/build/tmp.dHsQWtzdUh/build/= --runtime=null --image=docker.io/tuxmake/riscv_gcc CROSS_COMPILE=riscv64-linux- config default kernel xipkernel modules dtbs dtbs-legacy debugkernel headers
make --silent --keep-going --jobs=48 O=/build/tmp.dHsQWtzdUh/build ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' nommu_virt_defconfig
make --silent --keep-going --jobs=48 O=/build/tmp.dHsQWtzdUh/build ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc'
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c: In function 'riscv_hw_pte_ad_updating_starting':
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:301:15: error: implicit declaration of function 'sbi_fwft_set' [-Wimplicit-function-declaration]
  301 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 1, 0);
      |               ^~~~~~~~~~~~
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:301:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
  301 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 1, 0);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:301:28: note: each undeclared identifier is reported only once for each function it appears in
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c: In function 'riscv_hw_pte_ad_updating_dying':
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:316:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
  316 |         ret = sbi_fwft_set(SBI_FWFT_PTE_AD_HW_UPDATING, 0, 0);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
make[5]: *** [/build/tmptwk8okcx/scripts/Makefile.build:289: arch/riscv/kernel/cpufeature.o] Error 1
make[5]: Target 'arch/riscv/kernel/' not remade because of errors.
make[4]: *** [/build/tmptwk8okcx/scripts/Makefile.build:548: arch/riscv/kernel] Error 2
make[4]: Target 'arch/riscv/' not remade because of errors.
make[3]: *** [/build/tmptwk8okcx/scripts/Makefile.build:548: arch/riscv] Error 2
make[3]: Target './' not remade because of errors.
make[2]: *** [/build/tmptwk8okcx/Makefile:2141: .] Error 2
make[2]: Target '__all' not remade because of errors.
make[1]: *** [/build/tmptwk8okcx/Makefile:248: __sub-make] Error 2
make[1]: Target '__all' not remade because of errors.
make: *** [Makefile:248: __sub-make] Error 2
make: Target '__all' not remade because of errors.
make --silent --keep-going --jobs=48 O=/build/tmp.dHsQWtzdUh/build INSTALL_DTBS_PATH=/build/tmp.dHsQWtzdUh/build/dtbsinstall/dtbs ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' dtbs
rm -rf /build/tmp.dHsQWtzdUh/build/dtbsinstall
mkdir -p /build/tmp.dHsQWtzdUh/build/dtbsinstall/dtbs
make --silent --keep-going --jobs=48 O=/build/tmp.dHsQWtzdUh/build INSTALL_DTBS_PATH=/build/tmp.dHsQWtzdUh/build/dtbsinstall/dtbs ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' dtbs_install
tar --sort=name --owner=tuxmake:1000 --group=tuxmake:1000 --mtime=@1779166064 --clamp-mtime -caf /build/tmp.dHsQWtzdUh/build/dtbs.tar -C /build/tmp.dHsQWtzdUh/build/dtbsinstall dtbs
rm -rf /build/tmp.dHsQWtzdUh/build/install_hdr
make --silent --keep-going --jobs=48 O=/build/tmp.dHsQWtzdUh/build INSTALL_HDR_PATH=/build/tmp.dHsQWtzdUh/build/install_hdr/ ARCH=riscv CROSS_COMPILE=riscv64-linux- 'CC=ccache riscv64-linux-gcc' 'HOSTCC=ccache gcc' headers_install
tar --sort=name --owner=tuxmake:1000 --group=tuxmake:1000 --mtime=@1779166064 --clamp-mtime -caf /build/tmp.dHsQWtzdUh/build/headers.tar -C /build/tmp.dHsQWtzdUh/build/install_hdr .
warnings/errors:
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:301:15: error: implicit declaration of function 'sbi_fwft_set' [-Wimplicit-function-declaration]
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:301:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)
/build/tmptwk8okcx/arch/riscv/kernel/cpufeature.c:316:28: error: 'SBI_FWFT_PTE_AD_HW_UPDATING' undeclared (first use in this function)


@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
checkpatch
Desc: Runs checkpatch.pl on the patch
Duration: 0.82 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
dtb-warn-rv64
Desc: Checks for Device Tree warnings/errors
Duration: 76.92 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
header-inline
Desc: Detects static functions without inline keyword in header files
Duration: 0.23 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
kdoc
Desc: Detects for kdoc errors
Duration: 0.71 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
module-param
Desc: Detect module_param changes
Duration: 0.23 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
verify-fixes
Desc: Verifies that the Fixes: tags exist
Duration: 0.23 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 2: "[2/2] riscv: merge hardware A/D updates in PTE accessors"
verify-signedoff
Desc: Verifies that Signed-off-by: tags are correct
Duration: 0.26 seconds
Result: PASS

@linux-riscv-bot linux-riscv-bot force-pushed the workflow__riscv__fixes branch from cd9d421 to a1231b7 Compare May 22, 2026 06:39
@linux-riscv-bot linux-riscv-bot deleted the pw1097006 branch May 22, 2026 15:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants