Skip to content

Commit b1778a8

Browse files
authored
feat(kernel): Enable LWTUNNEL_BPF and SCHED_CORE (#15607)
Enables CONFIG_LWTUNNEL_BPF (Lightweight Tunnel BPF) support in the kernel. This allows attaching eBPF programs to routing entries (via encap bpf) so routes can execute BPF-based encapsulation/forwarding actions without requiring a dedicated tunnel netdevice. No behavior changes unless encap bpf routes are configured. Enable SCHED_CORE to support core scheduling, allowing the scheduler to restrict which tasks may co-run on sibling hyperthreads for improved SMT isolation and side-channel risk reduction.
1 parent eeb5146 commit b1778a8

20 files changed

Lines changed: 51 additions & 25 deletions

File tree

SPECS-EXTENDED/kernel-ipe/config

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ CONFIG_PREEMPT_NONE=y
129129
CONFIG_PREEMPT_COUNT=y
130130
CONFIG_PREEMPTION=y
131131
CONFIG_PREEMPT_DYNAMIC=y
132-
# CONFIG_SCHED_CORE is not set
132+
CONFIG_SCHED_CORE=y
133133

134134
#
135135
# CPU/Task time and stats accounting
@@ -1888,7 +1888,8 @@ CONFIG_CEPH_LIB=m
18881888
# CONFIG_NFC is not set
18891889
# CONFIG_PSAMPLE is not set
18901890
# CONFIG_NET_IFE is not set
1891-
# CONFIG_LWTUNNEL is not set
1891+
CONFIG_LWTUNNEL=y
1892+
CONFIG_LWTUNNEL_BPF=y
18921893
CONFIG_DST_CACHE=y
18931894
CONFIG_GRO_CELLS=y
18941895
CONFIG_NET_SELFTESTS=y

SPECS-EXTENDED/kernel-ipe/config_aarch64

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ CONFIG_PREEMPT_NONE=y
108108
# CONFIG_PREEMPT_VOLUNTARY is not set
109109
# CONFIG_PREEMPT is not set
110110
# CONFIG_PREEMPT_DYNAMIC is not set
111-
# CONFIG_SCHED_CORE is not set
111+
CONFIG_SCHED_CORE=y
112112

113113
#
114114
# CPU/Task time and stats accounting

SPECS-EXTENDED/kernel-ipe/kernel-ipe.signatures.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"Signatures": {
33
"azurelinux-ca-20230216.pem": "d545401163c75878319f01470455e6bc18a5968e39dd964323225e3fe308849b",
4-
"config": "45568c4b391b581400145626bd7ca1712028bfcef6b1f3ab4691c27786a91c3a",
5-
"config_aarch64": "77ba2d0761f07f9d1182fd3ab469106e99c38e839665e5af699379a1a204a844",
4+
"config": "2097c9f5677490d2e55ac1d5c2df18ee606cce1528131ab49b2d55ec67c19137",
5+
"config_aarch64": "9367e7839d7810988b8a02d9419b8812561dab018cc3f5d257a31d5a0ada25a0",
66
"cpupower": "d7518767bf2b1110d146a49c7d42e76b803f45eb8bd14d931aa6d0d346fae985",
77
"cpupower.service": "b057fe9e5d0e8c36f485818286b80e3eba8ff66ff44797940e99b1fd5361bb98",
88
"sha512hmac-openssl.sh": "02ab91329c4be09ee66d759e4d23ac875037c3b56e5a598e32fd1206da06a27f",

SPECS-EXTENDED/kernel-ipe/kernel-ipe.spec

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
Summary: Linux Kernel
3434
Name: kernel-ipe
3535
Version: 6.6.121.1
36-
Release: 1%{?dist}
36+
Release: 2%{?dist}
3737
License: GPLv2
3838
Vendor: Microsoft Corporation
3939
Distribution: Azure Linux
@@ -460,6 +460,9 @@ echo "initrd of kernel %{uname_r} removed" >&2
460460
%{_sysconfdir}/bash_completion.d/bpftool
461461

462462
%changelog
463+
* Mon Feb 23 2026 Rachel Menge <rachelmenge@microsoft.com> - 6.6.121.1-2
464+
- Enable lwtunnel, lwtunnel-bpf, and sched_core
465+
463466
* Mon Feb 02 2026 CBL-Mariner Servicing Account <cblmargh@microsoft.com> - 6.6.121.1-1
464467
- Auto-upgrade to 6.6.121.1
465468

SPECS-SIGNED/kernel-64k-signed/kernel-64k-signed.spec

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
Summary: Signed Linux Kernel for %{buildarch} systems
88
Name: kernel-64k-signed-%{buildarch}
99
Version: 6.6.121.1
10-
Release: 1%{?dist}
10+
Release: 2%{?dist}
1111
License: GPLv2
1212
Vendor: Microsoft Corporation
1313
Distribution: Azure Linux
@@ -105,6 +105,9 @@ echo "initrd of kernel %{uname_r} removed" >&2
105105
%exclude /module_info.ld
106106

107107
%changelog
108+
* Mon Feb 23 2026 Rachel Menge <rachelmenge@microsoft.com> - 6.6.121.1-2
109+
- Bump release to match kernel-64k
110+
108111
* Mon Feb 02 2026 CBL-Mariner Servicing Account <cblmargh@microsoft.com> - 6.6.121.1-1
109112
- Auto-upgrade to 6.6.121.1
110113

SPECS-SIGNED/kernel-signed/kernel-signed.spec

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
Summary: Signed Linux Kernel for %{buildarch} systems
1111
Name: kernel-signed-%{buildarch}
1212
Version: 6.6.121.1
13-
Release: 1%{?dist}
13+
Release: 2%{?dist}
1414
License: GPLv2
1515
Vendor: Microsoft Corporation
1616
Distribution: Azure Linux
@@ -145,6 +145,9 @@ echo "initrd of kernel %{uname_r} removed" >&2
145145
%exclude /module_info.ld
146146

147147
%changelog
148+
* Mon Feb 23 2026 Rachel Menge <rachelmenge@microsoft.com> - 6.6.121.1-2
149+
- Bump release to match kernel,kernel-ipe
150+
148151
* Mon Feb 02 2026 CBL-Mariner Servicing Account <cblmargh@microsoft.com> - 6.6.121.1-1
149152
- Auto-upgrade to 6.6.121.1
150153

SPECS-SIGNED/kernel-uki-signed/kernel-uki-signed.spec

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
Summary: Signed Unified Kernel Image for %{buildarch} systems
77
Name: kernel-uki-signed-%{buildarch}
88
Version: 6.6.121.1
9-
Release: 1%{?dist}
9+
Release: 2%{?dist}
1010
License: GPLv2
1111
Vendor: Microsoft Corporation
1212
Distribution: Azure Linux
@@ -68,6 +68,9 @@ popd
6868
/boot/efi/EFI/Linux/vmlinuz-uki-%{kernelver}.efi
6969

7070
%changelog
71+
* Mon Feb 23 2026 Rachel Menge <rachelmenge@microsoft.com> - 6.6.121.1-2
72+
- Bump release to match kernel,kernel-ipe
73+
7174
* Mon Feb 02 2026 CBL-Mariner Servicing Account <cblmargh@microsoft.com> - 6.6.121.1-1
7275
- Auto-upgrade to 6.6.121.1
7376

SPECS/kernel-64k/config_aarch64

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ CONFIG_PREEMPT_NONE=y
108108
# CONFIG_PREEMPT_VOLUNTARY is not set
109109
# CONFIG_PREEMPT is not set
110110
# CONFIG_PREEMPT_DYNAMIC is not set
111-
# CONFIG_SCHED_CORE is not set
111+
CONFIG_SCHED_CORE=y
112112

113113
#
114114
# CPU/Task time and stats accounting

SPECS/kernel-64k/kernel-64k.signatures.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"Signatures": {
33
"azurelinux-ca-20230216.pem": "d545401163c75878319f01470455e6bc18a5968e39dd964323225e3fe308849b",
4-
"config_aarch64": "d91ca78ac79434988a8317c42549fd453a25f883c0cd4dba4269c5b0a9203ab9",
4+
"config_aarch64": "f2ee5acbc11373fd6314bd7a268843a2f2a0bb5991e1393f1e9b3d9107c7a7bc",
55
"cpupower": "d7518767bf2b1110d146a49c7d42e76b803f45eb8bd14d931aa6d0d346fae985",
66
"cpupower.service": "b057fe9e5d0e8c36f485818286b80e3eba8ff66ff44797940e99b1fd5361bb98",
77
"sha512hmac-openssl.sh": "02ab91329c4be09ee66d759e4d23ac875037c3b56e5a598e32fd1206da06a27f",

SPECS/kernel-64k/kernel-64k.spec

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
Summary: Linux Kernel
2828
Name: kernel-64k
2929
Version: 6.6.121.1
30-
Release: 1%{?dist}
30+
Release: 2%{?dist}
3131
License: GPLv2
3232
Vendor: Microsoft Corporation
3333
Distribution: Azure Linux
@@ -380,6 +380,9 @@ echo "initrd of kernel %{uname_r} removed" >&2
380380
%{_sysconfdir}/bash_completion.d/bpftool
381381

382382
%changelog
383+
* Mon Feb 23 2026 Rachel Menge <rachelmenge@microsoft.com> - 6.6.121.1-2
384+
- Enable sched_core
385+
383386
* Mon Feb 02 2026 CBL-Mariner Servicing Account <cblmargh@microsoft.com> - 6.6.121.1-1
384387
- Auto-upgrade to 6.6.121.1
385388

0 commit comments

Comments
 (0)