Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
137 commits
Select commit Hold shift + click to select a range
cdf2e22
Ubuntu: [Packaging] Initialize noble:linux-nvidia-6.17
Sep 24, 2025
2a080e4
UBUNTU: [Packaging] debian.nvidia-6.17/dkms-versions -- update from k…
Sep 26, 2025
4984e41
UBUNTU: [Config] nvidia-6.14: import misc configs from noble:linux-nv…
jacobmartin0 Apr 8, 2025
4f916fd
UBUNTU: [Packaging] dkms-versions standalone provides support
nvidia-bfigg Jan 5, 2024
5cd0c59
UBUNTU: [Packaging] add versioning to dkms standalone rprovides
ianmay81 Mar 21, 2024
a392890
NVIDIA: [Config]: Disable the NOUVEAU driver which is not used with -…
nvidia-bfigg Apr 4, 2024
fed9e02
NVIDIA: [Config]: Adding CORESIGHT and ARM64_ERRATUM configs to annot…
nvidia-bfigg Apr 5, 2024
5d4752f
UBUNTU: [Config] Disable Ubuntu ODM drivers for NVIDIA kernels
jacobmartin0 Oct 17, 2024
bf922fe
NVIDIA: [Config] arm64: ARM64_CONTPTE=y
Mar 27, 2024
d29bd0a
UBUNTU: [Packaging] blacklist coresight_etm4x
ianmay81 Apr 25, 2024
00d5d90
NVIDIA: [Config] EFI: set CAPSULE_LOADER=y for arm64
nvidia-bfigg Aug 7, 2024
e762a78
UBUNTU: [Config] nvidia-6.11: Enable MANA configs on x86 and arm64
jacobmartin0 Oct 16, 2024
8498a2e
NVIDIA: SAUCE: WAR: Expose PCI PASID capability to userspace
ankita-nv Nov 15, 2023
72ff068
NVIDIA: SAUCE: WAR: iommufd/pages: Bypass PFNMAP
ankita-nv Nov 15, 2023
0add584
NVIDIA: SAUCE: [Config] nvidia-6.14: Update annotations for Grace I/O…
nvmochs Jul 16, 2024
47b5ad7
NVIDIA: [Config] set CONFIG_CPUFREQ_ARCH_CUR_FREQ=y for x86
jamieNguyenNVIDIA Feb 25, 2025
bab41f5
NVIDIA: SAUCE: serial: 8250_mtk: Add ACPI support
yenchia-chen Feb 11, 2025
2d58bbb
NVIDIA: SAUCE: Adds MT7925 BT devices
nvidia-bfigg Feb 11, 2025
8b97194
NVIDIA: SAUCE: Fixes the kernel boot issues due to xhci mem errors
nvidia-bfigg Feb 11, 2025
ac71c23
NVIDIA: SAUCE: MEDIATEK: usb: host: xhci-plat: support usb3 bulks str…
Apr 12, 2025
b08fb51
NVIDIA: SAUCE: MEDIATEK: PCI: disable SBR on Gen5 ports
Apr 11, 2025
1ff64f0
UBUNTU: [Packaging] update variants
Oct 2, 2025
79f5b97
NVIDIA: [Packaging] Take out the sbsa_gwdt from the blacklist
clsotog Apr 29, 2025
3fdd03f
UBUNTU: [Config] nvidia-6.17: do not build lib-rust package
Oct 6, 2025
be3a119
NVIDIA: SAUCE: r8127: Add Realtek r8127 ethernet driver
abhsahu Apr 28, 2025
35e0736
NVIDIA: SAUCE: r8127: Remove Realtek r8127 non required files
abhsahu Apr 28, 2025
4dca78e
NVIDIA: SAUCE: r8127: Moved files from r8127/src to r8127 folder
abhsahu Apr 28, 2025
6cd9bfd
NVIDIA: SAUCE: Add r8127 in kernel build
terjebergstrom Apr 22, 2025
0120752
UBUNTU: [Config] nvidia-6.11: Update annotations to enable realtek R8…
abhsahu Apr 24, 2025
39feeb1
UBUNTU: [Config] nvidia-6.14: Drop CONFIG_TEGRA241_CMDQV from annotat…
jamieNguyenNVIDIA May 5, 2025
255faf9
NVIDIA: SAUCE: [Config] nvidia-6.14 CONFIG_SND_HDA_ACPI=m on arm64
dadap Apr 22, 2025
f40a832
UBUNTU: [Config] nvidia-6.14: Update annotations to enable TPM over FFA
abhsahu May 22, 2025
f6af9cc
NVIDIA: SAUCE: MEDIATEK: wifi: mt76: mt7925: add reg hint support
May 2, 2025
c7faa68
NVIDIA: SAUCE: MEDIATEK: wifi: mt76: mt7925: update the regd by count…
May 26, 2025
cf0b43b
NVIDIA: SAUCE: Add support for custom ARM FFH offset handler
abhsahu May 7, 2025
68a6a2d
NVIDIA: SAUCE: Add nvidia ffa driver for EC communication
abhsahu May 7, 2025
033a8c9
NVIDIA: SAUCE: Add ffa driver for each secure EC service
abhsahu May 7, 2025
d04508c
NVIDIA: SAUCE: Add support for EC secure service communication
abhsahu May 7, 2025
4ced3ad
NVIDIA: SAUCE: Rescan acpi devices that uses secure EC communication
abhsahu May 7, 2025
77047fd
NVIDIA: SAUCE: irqchip/gic-v3: Allow unused SGIs for drivers/modules
shankerd04 Aug 13, 2024
c2c211e
NVIDIA: SAUCE: Add support for notifications from secure EC services
abhsahu May 8, 2025
fc50262
UBUNTU: [Config] nvidia-6.14: Update annotations to enable NVIDIA FFA…
abhsahu Jun 13, 2025
980ae7a
NVIDIA: SAUCE: MEDIATEK: pcie: disable SBR on Gen4 Ports
Jun 9, 2025
a7ef9ff
NVIDIA: SAUCE: MEDIATEK: pinctrl: mediatek: Add gpio-range record in …
Apr 21, 2025
bcd34eb
NVIDIA: SAUCE: MEDIATEK: pinctrl: mediatek: Add acpi support
Apr 22, 2025
8cc425a
NVIDIA: SAUCE: MEDIATEK: pinctrl: mt8901: Add pinctrl driver
Apr 22, 2025
07b67e4
UBUNTU: [Config] nvidia-6.14: Update annotations to enable CONFIG_PIN…
abhsahu Jul 22, 2025
2b94f34
NVIDIA: SAUCE: Fix FFH data response length
abhsahu Jul 22, 2025
3b80674
NVIDIA: SAUCE: arm64: cputype: Add NVIDIA Olympus definitions
shankerd04 May 3, 2025
9aaa25d
UBUNTU: [Config] nvidia-6.14: Enable BRBE
nvmochs Jul 23, 2025
7d7ac3a
NVIDIA: SAUCE: mm: handle poisoning of pfn without struct pages
ankita-nv Jul 14, 2025
cb8caf9
NVIDIA: SAUCE: mm: correctly identify pfn without struct pages
nvmochs Sep 22, 2025
aafefc3
NVIDIA: SAUCE: mm: Add poison error check in fixup_user_fault() for m…
ankita-nv Dec 6, 2023
53f315d
NVIDIA: SAUCE: mm: Change ghes code to allow poison of non-struct pfn
ankita-nv Dec 6, 2023
68cfe31
NVIDIA: SAUCE: vfio/nvgrace-gpu: register device memory for poison ha…
ankita-nv Feb 25, 2024
a6ff936
NVIDIA: SAUCE: arm64: configs: Build NVGRACE_GPU_VFIO_PCI as LKM
nicolinc Dec 4, 2023
036f5aa
NVIDIA: SAUCE: arm64: configs: Enable IOMMUFD and VFIO_DEVICE_CDEV
nicolinc Nov 7, 2023
c488273
NVIDIA: SAUCE: arm64: configs: Replace VFIO_CONTAINER with IOMMUFD_VF…
nicolinc Jan 22, 2024
6f43d59
NVIDIA: SAUCE: KVM: arm64: Allow exec fault on memory mapped cacheabl…
ankita-nv Aug 29, 2024
ed4416d
NVIDIA: SAUCE: vfio/nvgrace-egm: Introduce module to manage EGM
ankita-nv Aug 29, 2024
a499e56
NVIDIA: SAUCE: vfio/nvgrace-egm: Handle pages with ECC errors on the EGM
ankita-nv Aug 29, 2024
6f526c5
NVIDIA: SAUCE: vfio/nvgrace-egm: Register EGM for runtime ECC poison …
ankita-nv Aug 29, 2024
557bf90
NVIDIA: SAUCE: arm64: configs: Build CONFIG_NVGRACE_EGM as LKM
nvmochs Aug 30, 2024
28aa910
NVIDIA: SAUCE: vfio/nvgrace-egm: Move the egm header file to include
ankita-nv Oct 13, 2024
132e564
NVIDIA: SAUCE: vfio/nvgrace-egm: Free region memory during unregistra…
nvmochs Nov 7, 2024
629fa69
NVIDIA: SAUCE: vfio/nvgrace-egm: Move region hash initialization
nvmochs Nov 7, 2024
f52a03f
NVIDIA: SAUCE: vfio/nvgrace-egm: Handle and convey EGM registration e…
nvmochs Nov 7, 2024
d6ae5e5
NVIDIA: SAUCE: vfio/nvgrace-gpu: Handle EGM registration failure
nvmochs Nov 7, 2024
2f7a30a
NVIDIA: SAUCE: vfio/nvgrace-gpu: Address checkpatch warnings
nvmochs Nov 7, 2024
92734e5
NVIDIA: SAUCE: vfio/nvgrace-egm: Address sparse errors
nvmochs Nov 8, 2024
7b0175a
NVIDIA: SAUCE: vfio/nvgrace-egm: Address smatch errors
nvmochs Nov 8, 2024
a0aa556
NVIDIA: SAUCE: vfio/nvgrace-gpu: Address smatch errors
nvmochs Nov 8, 2024
9b15afd
NVIDIA: SAUCE: vfio/nvgrace-egm: Ensure ACPI value reads are successful
nvmochs Nov 22, 2024
336eda6
NVIDIA: SAUCE: vfio/nvgrace-egm: Avoid invalid retired pages base
nvmochs Nov 14, 2024
688fba6
NVIDIA: SAUCE: vfio/nvgrace-egm: Update EGM unregistration API
nvmochs Jan 23, 2025
1f946e0
NVIDIA: SAUCE: vfio/nvgrace-egm: track GPUs associated with the EGM r…
ankita-nv May 6, 2025
9fb8a5a
NVIDIA: SAUCE: vfio/nvgrace-egm: list gpus through sysfs
ankita-nv May 6, 2025
f9ab1fc
NVIDIA: SAUCE: vfio/nvgrace-egm: expose the egm size through sysfs
ankita-nv May 6, 2025
f18a40c
NVIDIA: SAUCE: vfio/nvgrace-egm: Add null pointer checks after memory…
KobaKoNvidia May 26, 2025
ae9e27c
NVIDIA: SAUCE: arm64: configs: enable NVGRACE_EGM as module
nirmoy Jul 14, 2025
22fb001
NVIDIA: SAUCE: vfio/nvgrace-gpu: Avoid resmem pfn unregistration
nvmochs Jun 30, 2025
7f67d7b
NVIDIA: [Config] Fix CONFIG_IRQ_MSI_IOMMU annotation for amd64
nvmochs Jul 25, 2025
e9423af
UBUNTU: [Config] nvidia-6.14: Update annotations to set CONFIG_IOMMU_…
nirmoy Aug 6, 2025
b3c2300
UBUNTU: [Config] nvidia-6.14: Use performance CPU frequency governor …
jacobmartin0 Aug 26, 2025
8c5bc4e
PCI/ACPI: Fix pci_acpi_preserve_config() memory leak
nirmoy Aug 25, 2025
a75580a
NVIDIA: SAUCE: vfio/nvgrace-gpu: Add GB300 SKU to the devid table
tdavenvidia Aug 25, 2025
812aba9
NVIDIA: SAUCE: Fix FFA notification count initialization
abhsahu Sep 15, 2025
9528bb0
NVIDIA: SAUCE: MEDIATEK: usb: host: xhci-hub: fix MT89xx SoCs return …
May 26, 2025
d633580
UBUNTU: [Config] nvidia-6.17: update configs
Oct 6, 2025
607204a
UBUNTU: [Packaging] update update.conf
jacobmartin0 Oct 9, 2025
bf5e6f0
UBUNTU: Start new release
jacobmartin0 Oct 9, 2025
10b9539
UBUNTU: link-to-tracker: update tracking bug
jacobmartin0 Oct 9, 2025
c69addc
UBUNTU: [Packaging] nvidia-6.17: Drop use of do_extras_package = false
jacobmartin0 Oct 9, 2025
38f6128
UBUNTU: [Packaging] nvidia-6.17: Update build dependencies for Noble …
jacobmartin0 Oct 10, 2025
88cb913
UBUNTU: Ubuntu-nvidia-6.17-6.17.0-1002.2
jacobmartin0 Oct 10, 2025
b003d30
NVIDIA: SAUCE: iommu/io-pgtable-arm: backport contiguous bit support
aritger May 21, 2025
c465bd3
NVIDIA: SAUCE: wifi: mt76: mt7925: introduce CSA support in non-MLO mode
leon-yen Sep 26, 2025
9993e32
NVIDIA: SAUCE: iommu/arm-smmu-v3: Set DGX Spark iGPU default domain t…
nirmoy Sep 10, 2025
0e92865
UBUNTU: [Config] nvidia-6.17: Update annotations to set CONFIG_IOMMU_…
nirmoy Oct 24, 2025
4f53a5a
arm64: cpufeature: Add Olympus MIDR to BBML2 allow list
shankerd04 Sep 18, 2025
bf5f117
spi: tegra210-quad: Fix timeout handling
Oct 28, 2025
aaac75b
spi: tegra210-quad: Refactor error handling into helper functions
Oct 28, 2025
4523c9f
spi: tegra210-quad: Check hardware status on timeout
Oct 28, 2025
52d98b5
NVIDIA: SAUCE: r8127: fix a kernel panic when dump all registers
RealtekNIC Oct 28, 2025
5264710
NVIDIA: SAUCE: r8127: add support for RTL8127 cable diagnostic test
RealtekNIC Oct 28, 2025
2ec32d8
KVM: arm64: Guard PMSCR_EL1 initialization with SPE presence check
mukeshojha-linux Oct 10, 2025
8bb6121
UBUNTU: [Packaging] Add do_tools_noble_hwe to include perf and bpftoo…
jacobmartin0 Sep 29, 2025
d84bfc0
UBUNTU: [Packaging] nvidia-6.17: enable do_tools_noble_hwe
jacobmartin0 Oct 1, 2025
51d25ab
UBUNTU: Start new release
jacobmartin0 Nov 15, 2025
233d9eb
UBUNTU: link-to-tracker: update tracking bug
jacobmartin0 Nov 15, 2025
120bfd8
UBUNTU: [Packaging] debian.nvidia-6.17/dkms-versions -- update from k…
jacobmartin0 Nov 15, 2025
d400db9
UBUNTU: [Config] nvidia-6.17: update annotations
jacobmartin0 Nov 15, 2025
afc5606
perf tools: Fix arm64 libjvmti build by generating unistd_64.h
vminet Sep 22, 2025
980c3e0
Revert "UBUNTU: [Packaging] Install compressed vmlinuz.efi on arm64"
smb49 Nov 17, 2025
1700b31
UBUNTU: Ubuntu-nvidia-6.17-6.17.0-1004.4
jacobmartin0 Nov 17, 2025
3e05852
NVIDIA: SAUCE: cpufreq: CPPC: Add generic helpers for sysfs show/store
Nov 5, 2025
36744f3
NVIDIA: SAUCE: ACPI: CPPC: Add cppc_get_perf() API to read performanc…
Nov 5, 2025
2111030
NVIDIA: SAUCE: ACPI: CPPC: extend APIs to support auto_sel and epp
Nov 5, 2025
d6dca46
NVIDIA: SAUCE: ACPI: CPPC: add APIs and sysfs interface for min/max_perf
Nov 5, 2025
00702db
NVIDIA: SAUCE: ACPI: CPPC: add APIs and sysfs interface for perf_limi…
Nov 5, 2025
5cba34d
NVIDIA: SAUCE: cpufreq: CPPC: Add sysfs for min/max_perf and perf_lim…
Nov 5, 2025
edad78b
NVIDIA: SAUCE: cpufreq: CPPC: update policy min/max when toggling aut…
Nov 5, 2025
3c60084
NVIDIA: SAUCE: cpufreq: CPPC: add autonomous mode boot parameter support
Nov 5, 2025
cf6aaef
NVIDIA: SAUCE: iommu/arm-smmu-v3: Add two more DGX Spark iGPU IDs for…
nirmoy Nov 20, 2025
1c00f9e
NVIDIA: SAUCE: vfio/nvgrace-egm: Prevent double-unregister of pfn_add…
NathanChenNVIDIA Nov 15, 2025
5a614d6
perf/arm_cspmu: Add callback to reset filter config
bwicaksononv Sep 30, 2025
bcdde91
perf/arm_cspmu: Add pmpidr support
bwicaksononv Sep 30, 2025
211ad4b
perf/arm_cspmu: nvidia: Add revision id matching
bwicaksononv Sep 30, 2025
9081369
perf/arm_cspmu: nvidia: Add pmevfiltr2 support
bwicaksononv Sep 30, 2025
148c962
gpio: tegra186: Use generic macro for port definitions
Oct 10, 2025
5334436
gpio: tegra186: Add support for Tegra410
Oct 10, 2025
53d8774
net: aquantia: Add missing descriptor cache invalidation on ATL2
Nov 20, 2025
a125718
NVIDIA: SAUCE: r8127: Add PTP hardware timestamping support
ruppala-nv Nov 25, 2025
1eea3d3
NVIDIA: SAUCE: r8127: Enable SyncE support for PTP
ruppala-nv Nov 25, 2025
d03be66
NVIDIA: SAUCE: r8127: Update ts_info prototype for kernels >= 6.11
ruppala-nv Nov 25, 2025
548d455
NVIDIA: SAUCE: r8127: fix ptp4l fail after restart interface
RealtekNIC Nov 24, 2025
98bf57e
NVIDIA: SAUCE: r8127: Fix PPS hrtimer init for kernel 6.15+
ruppala-nv Dec 12, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 46 additions & 0 deletions Documentation/ABI/testing/sysfs-devices-system-cpu
Original file line number Diff line number Diff line change
Expand Up @@ -327,6 +327,52 @@ Description: Energy performance preference

This file is only present if the cppc-cpufreq driver is in use.

What: /sys/devices/system/cpu/cpuX/cpufreq/min_perf
Date: December 2025
Contact: [email protected]
Description: Minimum Performance Frequency

Read/write a frequency value in kHz from/to this file. This
file conveys the minimum performance level (as frequency) at
which the platform may run. The frequency value is internally
converted to a performance value and must correspond to a
performance level in the range [Lowest Performance, Highest
Performance], inclusive. The minimum must be less than or equal
to the maximum performance. The performance range can be checked
from nodes:
/sys/devices/system/cpu/cpuX/acpi_cppc/highest_perf
/sys/devices/system/cpu/cpuX/acpi_cppc/lowest_perf

This file is only present if the cppc-cpufreq driver is in use.

What: /sys/devices/system/cpu/cpuX/cpufreq/max_perf
Date: December 2025
Contact: [email protected]
Description: Maximum Performance Frequency

Read/write a frequency value in kHz from/to this file. This
file conveys the maximum performance level (as frequency) at
which the platform may run. The frequency value is internally
converted to a performance value and must correspond to a
performance level in the range [Lowest Performance, Highest
Performance], inclusive. The performance range can be checked
from nodes:
/sys/devices/system/cpu/cpuX/acpi_cppc/highest_perf
/sys/devices/system/cpu/cpuX/acpi_cppc/lowest_perf

This file is only present if the cppc-cpufreq driver is in use.

What: /sys/devices/system/cpu/cpuX/cpufreq/perf_limited
Date: December 2025
Contact: [email protected]
Description: Performance Limited

Read/write a 32 bits value from/to this file. This file indicates
to OSPM that an unpredictable event has limited processor
performance, and the delivered performance may be less than
desired/minimum performance.

This file is only present if the cppc-cpufreq driver is in use.

What: /sys/devices/system/cpu/cpu*/cache/index3/cache_disable_{0,1}
Date: August 2008
Expand Down
12 changes: 12 additions & 0 deletions Documentation/admin-guide/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -911,6 +911,18 @@
Format:
<first_slot>,<last_slot>,<port>,<enum_bit>[,<debug>]

cppc_cpufreq.auto_sel_mode=
[CPU_FREQ] Enable ACPI CPPC autonomous performance selection.
When enabled, hardware automatically adjusts CPU frequency
on all CPUs based on workload demands. In Autonomous mode,
Energy Performance Preference(EPP) hints guide hardware
toward performance(0x0) or energy efficiency (0xff).
Requires ACPI CPPC autonomous selection register support.
Format: <bool>
Default: 0 (disabled)
0: use cpufreq governors
1: enable if supoorted by hardware

cpuidle.off=1 [CPU_IDLE]
disable the cpuidle sub-system

Expand Down
12 changes: 6 additions & 6 deletions Ubuntu.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
Name: linux
Name: linux-nvidia-6.17
Version: 6.17.0
Series: 25.10 (questing)
Series: 24.04 (noble)
Description:
This is the source code for the Ubuntu linux kernel for the 25.10 series. This
source tree is used to produce the flavours: generic, generic-64k.
This kernel is configured to support the widest range of desktop, laptop and
server configurations.
This is the source code for the Ubuntu linux-nvidia-6.17 kernel for the
Noble series. This source tree is used to produce the flavours: nvidia,
nvidia-64k. This kernel is configured to support the NVIDIA x86 and arm64
platforms.
9 changes: 9 additions & 0 deletions arch/arm64/configs/defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -1810,3 +1810,12 @@ CONFIG_CORESIGHT_STM=m
CONFIG_CORESIGHT_CPU_DEBUG=m
CONFIG_CORESIGHT_CTI=m
CONFIG_MEMTEST=y
CONFIG_NVGRACE_GPU_VFIO_PCI=m
CONFIG_NVGRACE_EGM=m
CONFIG_VFIO_DEVICE_CDEV=y
# CONFIG_VFIO_CONTAINER is not set
CONFIG_FAULT_INJECTION=y
CONFIG_IOMMUFD_DRIVER=y
CONFIG_IOMMUFD=y
CONFIG_IOMMUFD_TEST=y
CONFIG_IOMMUFD_VFIO_CONTAINER=y
2 changes: 2 additions & 0 deletions arch/arm64/include/asm/cputype.h
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,7 @@

#define NVIDIA_CPU_PART_DENVER 0x003
#define NVIDIA_CPU_PART_CARMEL 0x004
#define NVIDIA_CPU_PART_OLYMPUS 0x010

#define FUJITSU_CPU_PART_A64FX 0x001

Expand Down Expand Up @@ -220,6 +221,7 @@

#define MIDR_NVIDIA_DENVER MIDR_CPU_MODEL(ARM_CPU_IMP_NVIDIA, NVIDIA_CPU_PART_DENVER)
#define MIDR_NVIDIA_CARMEL MIDR_CPU_MODEL(ARM_CPU_IMP_NVIDIA, NVIDIA_CPU_PART_CARMEL)
#define MIDR_NVIDIA_OLYMPUS MIDR_CPU_MODEL(ARM_CPU_IMP_NVIDIA, NVIDIA_CPU_PART_OLYMPUS)
#define MIDR_FUJITSU_A64FX MIDR_CPU_MODEL(ARM_CPU_IMP_FUJITSU, FUJITSU_CPU_PART_A64FX)
#define MIDR_HISI_TSV110 MIDR_CPU_MODEL(ARM_CPU_IMP_HISI, HISI_CPU_PART_TSV110)
#define MIDR_HISI_HIP09 MIDR_CPU_MODEL(ARM_CPU_IMP_HISI, HISI_CPU_PART_HIP09)
Expand Down
1 change: 1 addition & 0 deletions arch/arm64/kernel/cpufeature.c
Original file line number Diff line number Diff line change
Expand Up @@ -2235,6 +2235,7 @@ static bool has_bbml2_noabort(const struct arm64_cpu_capabilities *caps, int sco
static const struct midr_range supports_bbml2_noabort_list[] = {
MIDR_REV_RANGE(MIDR_CORTEX_X4, 0, 3, 0xf),
MIDR_REV_RANGE(MIDR_NEOVERSE_V3, 0, 2, 0xf),
MIDR_ALL_VERSIONS(MIDR_NVIDIA_OLYMPUS),
{}
};

Expand Down
15 changes: 10 additions & 5 deletions arch/arm64/kvm/debug.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,12 @@
#include <asm/kvm_arm.h>
#include <asm/kvm_emulate.h>

static int cpu_has_spe(u64 dfr0)
{
return cpuid_feature_extract_unsigned_field(dfr0, ID_AA64DFR0_EL1_PMSVer_SHIFT) &&
!(read_sysreg_s(SYS_PMBIDR_EL1) & PMBIDR_EL1_P);
}

/**
* kvm_arm_setup_mdcr_el2 - configure vcpu mdcr_el2 value
*
Expand Down Expand Up @@ -74,13 +80,12 @@ void kvm_init_host_debug_data(void)
*host_data_ptr(debug_brps) = SYS_FIELD_GET(ID_AA64DFR0_EL1, BRPs, dfr0);
*host_data_ptr(debug_wrps) = SYS_FIELD_GET(ID_AA64DFR0_EL1, WRPs, dfr0);

if (cpu_has_spe(dfr0))
host_data_set_flag(HAS_SPE);

if (has_vhe())
return;

if (cpuid_feature_extract_unsigned_field(dfr0, ID_AA64DFR0_EL1_PMSVer_SHIFT) &&
!(read_sysreg_s(SYS_PMBIDR_EL1) & PMBIDR_EL1_P))
host_data_set_flag(HAS_SPE);

/* Check if we have BRBE implemented and available at the host */
if (cpuid_feature_extract_unsigned_field(dfr0, ID_AA64DFR0_EL1_BRBE_SHIFT))
host_data_set_flag(HAS_BRBE);
Expand All @@ -99,7 +104,7 @@ void kvm_init_host_debug_data(void)
void kvm_debug_init_vhe(void)
{
/* Clear PMSCR_EL1.E{0,1}SPE which reset to UNKNOWN values. */
if (SYS_FIELD_GET(ID_AA64DFR0_EL1, PMSVer, read_sysreg(id_aa64dfr0_el1)))
if (host_data_test_flag(HAS_SPE))
write_sysreg_el1(0, SYS_PMSCR);
}

Expand Down
5 changes: 4 additions & 1 deletion arch/arm64/kvm/mmu.c
Original file line number Diff line number Diff line change
Expand Up @@ -1493,6 +1493,7 @@ static int user_mem_abort(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa,
bool s2_force_noncacheable = false, vfio_allow_any_uc = false;
unsigned long mmu_seq;
phys_addr_t ipa = fault_ipa;
unsigned long mt;
struct kvm *kvm = vcpu->kvm;
struct vm_area_struct *vma;
short vma_shift;
Expand Down Expand Up @@ -1612,6 +1613,8 @@ static int user_mem_abort(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa,
vma_pagesize = min(vma_pagesize, (long)max_map_size);
}

mt = FIELD_GET(PTE_ATTRINDX_MASK, pgprot_val(vma->vm_page_prot));

/*
* Both the canonical IPA and fault IPA must be hugepage-aligned to
* ensure we find the right PFN and lay down the mapping in the right
Expand Down Expand Up @@ -1695,7 +1698,7 @@ static int user_mem_abort(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa,
writable = false;
}

if (exec_fault && s2_force_noncacheable)
if (exec_fault && s2_force_noncacheable && mt != MT_NORMAL)
return -ENOEXEC;

/*
Expand Down
4 changes: 2 additions & 2 deletions debian.master/rules.d/arm64.mk
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
build_arch = arm64
defconfig = defconfig
flavours = generic generic-64k
build_image = vmlinuz.efi
kernel_file = arch/$(build_arch)/boot/vmlinuz.efi
build_image = Image.gz
kernel_file = arch/$(build_arch)/boot/Image.gz
install_file = vmlinuz
no_dumpfile = true
uefi_signed = true
Expand Down
Loading