Skip to content

Commit b7cc1fb

Browse files
authored
perf(config): optimize the x86 guest kernel (#25)
* fix(kernel): update Linux to 6.12.99 Advance the bundled stable kernel by one patch release so the firmware build remains on the current Linux 6.12.y baseline. Keep the existing libkrunfw version, ABI, reproducible timestamp, and patch stack unchanged. * perf(config): accelerate x86 CRC32C Build the kernel's feature-detected CRC32C implementation so capable AMD and Intel guests can use hardware acceleration for ext4 metadata checksums instead of crc32c-generic. * perf(config): make x86 preemption mode static Disable dynamic preemption in the x86 firmware configuration so the PREEMPT_NONE selection is compiled as the sole scheduling model. Keep this change isolated for hardlink throughput and responsiveness A/B testing before it is considered for the cumulative stack. * perf(config): enable x2APIC for interrupt benchmarks Enable the x86 guest kernel's x2APIC support on top of the cumulative CRC32C and static PREEMPT_NONE firmware. Keep the change isolated so its interrupt-routing and workload effects can be accepted or rejected without changing the cumulative performance branch.
1 parent c5503d8 commit b7cc1fb

2 files changed

Lines changed: 4 additions & 4 deletions

File tree

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
KERNEL_VERSION = linux-6.12.98
1+
KERNEL_VERSION = linux-6.12.99
22
# Kernel source from the kernel.org CDN (static release tarball).
33
KERNEL_REMOTE = https://cdn.kernel.org/pub/linux/kernel/v6.x/$(KERNEL_VERSION).tar.gz
44
KERNEL_TARBALL = tarballs/$(KERNEL_VERSION).tar.gz

config-libkrunfw_x86_64

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ CONFIG_PREEMPT_NONE=y
128128
# CONFIG_PREEMPT_RT is not set
129129
CONFIG_PREEMPT_COUNT=y
130130
CONFIG_PREEMPTION=y
131-
CONFIG_PREEMPT_DYNAMIC=y
131+
# CONFIG_PREEMPT_DYNAMIC is not set
132132
# CONFIG_SCHED_CORE is not set
133133

134134
#
@@ -319,7 +319,7 @@ CONFIG_CC_HAS_SANE_STACKPROTECTOR=y
319319
# Processor type and features
320320
#
321321
CONFIG_SMP=y
322-
# CONFIG_X86_X2APIC is not set
322+
CONFIG_X86_X2APIC=y
323323
CONFIG_X86_MPPARSE=y
324324
# CONFIG_X86_CPU_RESCTRL is not set
325325
# CONFIG_X86_FRED is not set
@@ -2666,7 +2666,7 @@ CONFIG_CRYPTO_KDF800108_CTR=y
26662666
# CONFIG_CRYPTO_SHA512_SSSE3 is not set
26672667
# CONFIG_CRYPTO_SM3_AVX_X86_64 is not set
26682668
# CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL is not set
2669-
# CONFIG_CRYPTO_CRC32C_INTEL is not set
2669+
CONFIG_CRYPTO_CRC32C_INTEL=y
26702670
# CONFIG_CRYPTO_CRC32_PCLMUL is not set
26712671
CONFIG_CRYPTO_CRCT10DIF_PCLMUL=y
26722672
# end of Accelerated Cryptographic Algorithms for CPU (x86)

0 commit comments

Comments
 (0)