Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1112 commits
Select commit Hold shift + click to select a range
4a426ca
smb: client: fix fiemap wild read on empty truncated response
suruurism Oct 23, 2026
ba57bfe
smb: client: fix slab-out-of-bounds write in id_mode_to_cifs_acl()
domenukk Oct 22, 2026
520b487
smb: client: validate NT transaction response layout and offsets
Oct 17, 2026
bed2aa2
pNFS: Fix CB_NOTIFY_DEVICEID CHANGE to consume ndc_immediate
Sep 15, 2026
7b757e1
pnfs/blocklayout: Complete a device upcall only on its own reply
chucklever Sep 1, 2026
9b89bd1
pnfs/blocklayout: Complete a device upcall when the pipe is closed
chucklever Sep 1, 2026
cf4c0b3
NFSv4/pnfs: Free the netid when draining a data-server address list
Sep 15, 2026
bfa512d
NFSv4.1/pnfs: suspend pNFS on NFS4ERR_TOOSMALL from LAYOUTGET
Sep 4, 2026
8581c8e
NFSv4/filelayout: Anchor page coalescing on pattern_offset
Sep 15, 2026
938f374
NFSv4/flexfiles: fail I/O to the data server once a lock is lost
Oct 15, 2026
12326bd
NFSv4/flexfiles: Use the full 64-bit offset for read DS selection
Sep 15, 2026
43b9e0c
NFSv4/flexfiles: Use the full 64-bit stripe_unit
Sep 15, 2026
d2609b2
NFSv4/flexfiles: Bound page coalescing on the absolute stripe offset
Sep 15, 2026
209ad09
NFS: Fix stale negative cache on failed nfs_mkdir()
jimmy-zuber-amzn Sep 22, 2026
c4faa63
NFS/localio: fix nfs_local_dio_misaligned tracepoint
Sep 28, 2026
7c4846f
NFS/localio: report the stability a DIO WRITE actually has
Sep 28, 2026
f256b39
NFSD: cap the number of listeners accepted in listener_set
jtlayton Sep 1, 2026
624531e
nfsd: clear XDR padding in GETXATTR replies
AldoAriel12 Sep 15, 2026
20b76bd
NFSD: copy SETXATTR data from all XDR buffer segments
AldoAriel12 Sep 15, 2026
b202a33
NFSD: Do not send CB_RECALL_ANY to NFSv4.0 clients
chucklever Aug 18, 2026
f6d1f10
NFSD: Don't complete a cld upcall the daemon has not read
chucklever Sep 1, 2026
0b5149b
nfsd: don't modify a session slot when replaying its cached reply
ixhamza Aug 24, 2026
36fcebc
NFSD: Fail a pool_threads read whose reply does not fit
chucklever Aug 16, 2026
fa5fbc8
nfsd: fetch direct I/O alignment for files handed to the filecache
Sep 8, 2026
e489964
nfsd: Fix id-to-name cache entry leak in idtoname_parse()
ISCAS-Vulab Sep 17, 2026
676b048
NFSD: Fix out-of-bounds read in the rpc_status dump
chucklever Aug 24, 2026
540649c
nfsd: hold cl_lock in client_has_openowners()
occia Aug 28, 2026
5733621
nfsd: honour client-provided attributes for NFS4_CREATE_EXCLUSIVE4_1
neilbrown Jul 17, 2026
16ee8e3
NFSD: map fh_verify() status codes for NFS_ACLv3 replies
chucklever Sep 16, 2026
76bb89e
NFSD: Map flex file layout IDs through the request's user namespace
chucklever Jul 20, 2026
37fc2ec
nfsd: preflight SEQUENCE replies before accepting a slot
jj-anssi Aug 18, 2026
7d464c3
nfsd: propagate SETXATTR value decode errors
AldoAriel12 Sep 15, 2026
af501c5
NFSD: Reject an oversized principal hash from nfsdcld
chucklever Sep 1, 2026
ea993a4
NFSD: Resolve the recall-any mask names in the trace format
chucklever Aug 18, 2026
f4d884c
NFSD: Return NFSERR_ISDIR for NFSv2 READ and WRITE on a non-regular file
chucklever Aug 28, 2026
c12f04f
NFSD: Set nn->cld_net before registering the cld pipe
chucklever Sep 1, 2026
f5a336a
NFSD: validate transport name in listener_set before serv creation
jtlayton Sep 1, 2026
c1e3882
nfsd: zero NFSv4 COMPOUND tag padding
AldoAriel12 Sep 15, 2026
d514dd8
SUNRPC: Copy the deferred RPC Call from the head buffer
chucklever Sep 2, 2026
67d36b3
SUNRPC: Do not credit control-record octets to the RPC stream
chucklever Aug 8, 2026
1cc4b30
SUNRPC: fix oversized GSS proxy token copy
jj-anssi Sep 10, 2026
c5862ac
SUNRPC: keep the first error in svc_register()
jtlayton Sep 1, 2026
f735700
sunrpc: pin gss module across auth_domain RCU free
Sep 13, 2026
f44daa5
SUNRPC: Reject a socket that already has an svc_sock attached
chucklever Aug 15, 2026
560956c
SUNRPC: Reject a TLS alert record that is not two octets
chucklever Aug 8, 2026
03bfe78
SUNRPC: Resume receiving after a TLS control record
chucklever Aug 8, 2026
fd7b128
SUNRPC: trace an accepted transport before publishing it
Sep 12, 2026
8067c65
sunrpc: treat empty auth.unix.gid replies as negative entries
ixhamza Aug 14, 2026
e77fe40
SUNRPC: Treat every TLS error alert as fatal
chucklever Aug 8, 2026
9654561
rxrpc: Fix update of call->tx_pending without holding lock
dhowells Oct 6, 2026
8b9efc7
rxrpc: Fix lack of short-send handling in rxrpc_kernel_send_data()
dhowells Oct 6, 2026
ff518f5
afs: Fix afs to abort the rxrpc call on send error
dhowells Oct 6, 2026
7ea6252
rxrpc: Fix double IRQ enablement
dhowells Oct 6, 2026
7ace453
rxrpc: Fix return in rxrpc_recvmsg_data() for service calls
dhowells Oct 6, 2026
ff30731
x86/cpuid: Mark CPUID function 0x23 as being indexed
sean-jc Oct 22, 2026
da31978
x86/mm/pat: Fix effective RW computation in lookup_address_in_pgd_attr()
rppt Aug 13, 2026
058173b
KVM: SVM: Trigger new ASID allocation in both VMCBs on pCPU switch
yosrym93 Sep 3, 2026
a4c2d0a
KVM: nSVM: Ignore EFER.LMA if EFER.LME=0 when preparing L2 state
sean-jc Sep 2, 2026
a12e105
KVM: Use goto to handle errors during memslot preparation
sean-jc Sep 22, 2026
196450c
KVM: VMX: Disallow using to_vmx() in common VT code
sean-jc Sep 4, 2026
4ef5e62
KVM: VMX: Make handle_bus_lock_vmexit() a shared helper
calmisi Aug 19, 2026
8715213
KVM: VMX: Preserve negative return value in vmx_handle_exit() with bu…
calmisi Aug 19, 2026
54afd54
KVM: x86/mmu: Bug the VM if KVM attempts to walk more levels than the…
sean-jc Sep 2, 2026
fea3d34
KVM: x86/mmu: Bug the VM if KVM calcs a CPU role with EFER.LMA=1 && C…
sean-jc Sep 2, 2026
b7af8dc
KVM: x86/xen: Enforce 4-byte alignment of vcpu_info registration
dwmw2 Aug 31, 2026
46f5df8
KVM: x86/xen: Take kvm->srcu in __kvm_xen_has_interrupt()
dwmw2 Aug 31, 2026
8239d35
KVM: x86: Clear hardware HLT state when userspace makes a vCPU not-ha…
Aug 20, 2026
a58917a
KVM: x86: Preserve DR6.BLD (Bus Lock Detect) when delivering #DB payload
sean-jc Sep 30, 2026
a92a072
KVM: x86: Request event processing for exception VM-Exits
Oct 2, 2026
ec9df57
KVM: x86: Take SRCU in kvm_zap_gfn_range()
Ychame Aug 25, 2026
ab15e40
KVM: x86: Zero reserved synic flags when delivering message to avoid …
sean-jc Aug 26, 2026
c16bdb1
KVM: TDX: Check if there is valid exit infos based on vp_enter_ret
calmisi Aug 19, 2026
216729d
KVM: TDX: Enable Notify VM exit
calmisi Aug 19, 2026
7a02dfb
KVM: PPC: Book3S HV: Add preempt_disable() around virtual-mode HPTE b…
Sep 28, 2026
d4de3f8
KVM: PPC: Fix get_d_signext() 12-bit displacement for paired-single D…
Sep 28, 2026
30e55a9
HID: zydacron: validate key report length
Sep 24, 2026
292e9c4
HID: amd_sfh: Remove unsupported motion-state field from acceleromete…
basuamd Oct 6, 2026
5652b50
HID: amd_sfh: Use report type from request node
basuamd Oct 6, 2026
076bea9
HID: core: Fix out-of-bounds left shift by 32 in s32ton()
AlanStern Oct 10, 2026
d618e93
HID: cougar: reject short special-key reports
Sep 24, 2026
94d0e78
HID: cp2112: validate response report lengths
Sep 24, 2026
6a0a7d6
HID: elo: reject short touchscreen reports
Sep 24, 2026
bf3e9e0
HID: logitech-dj: validate unnumbered keyboard reports
Sep 24, 2026
47f50fb
HID: mcp2200: validate READ_ALL response length
Sep 24, 2026
ee55408
HID: mcp2221: validate response report length
Sep 24, 2026
14acfdf
HID: picoLCD: check for fb_deferred_io_init() error
ljskernel Sep 26, 2026
ac0e2a0
HID: prodikeys: validate fixed-format MIDI reports
Sep 24, 2026
d4cb80a
HID: pxrc: reject short input reports
Sep 24, 2026
6ebe75d
HID: quirks: Always poll the Anne Pro 2 with product ID a292
izolight Oct 12, 2026
664627e
HID: roccat: isku: reject short button reports
Sep 24, 2026
6d1f22a
HID: roccat: koneplus: reject short button reports
Sep 24, 2026
49360ac
HID: roccat: konepure: reject short button reports
Sep 24, 2026
196fff6
HID: roccat: kovaplus: reject short button reports
Sep 24, 2026
08a4c26
HID: roccat: pyra: reject short button reports
Sep 24, 2026
c2e9016
HID: roccat: ryos: reject short special reports
Sep 24, 2026
ae8c222
HID: roccat: savu: reject short special reports
Sep 24, 2026
68439a0
ovl: check that the parents of volatile/dirty are dirs
masoncl Nov 4, 2026
0759376
ovl: hold a reference on the parent in readdir
masoncl Nov 4, 2026
1d9706f
ovl: do not copy up a dentry that was removed
masoncl Nov 4, 2026
224e985
ovl: fix mount setup failing when override_creds drops CAP_SYS_ADMIN
amir73il Oct 17, 2026
1f5c774
smb: smbdirect: fix buffer length underflow in RDMA transfers
metze-samba Oct 23, 2026
4b3c285
io_uring/kbuf: advance head when a pickup empties the buffer ring
chenyichong1 Nov 4, 2026
87160b4
io_uring/net: keep recvmsg buffer select length within MAX_RW_COUNT
chenyichong1 Nov 4, 2026
6621b09
io_uring/net: don't retry a non-blocking connect() that fails with -E…
daandemeyer Nov 4, 2026
2b8f167
io_uring/io-wq: no new workers once the exit has begun
josefbacik Nov 4, 2026
963c6e8
io_uring/rsrc: charge buffer arrays and nodes to memcg
masoncl Nov 4, 2026
9089fd4
io_uring: charge tctx nodes and personalities
masoncl Nov 4, 2026
9063d0b
io_uring: free XArray nodes left by a failed store
masoncl Nov 4, 2026
8bfd0b6
io_uring/sqpoll: don't wait for the thread to exit
masoncl Nov 4, 2026
0ac8f06
io_uring: defer foreign io-wq enqueues to task_work
kylebot-oai Nov 4, 2026
b5e2224
io_uring/timeout: count cancelled timeouts in cq_timeouts
Nov 4, 2026
0eec7b8
io_uring/net: fix multishot recv length limit accounting
Nov 4, 2026
ee793cc
smb: client: do not pass a NULL buf to is_oplock_break()
Eknight-Eutopia Nov 2, 2026
4d6e1b4
smb: client: fix early procfs exposure race
Fredric-Cover Nov 2, 2026
2af51c1
driver core: Check drivers_autoprobe for all added devices
vliu-nutanix Nov 3, 2026
1f1a7cd
driver core: take parent lock in async device attach
petemlei Nov 3, 2026
28db998
ksmbd: deny access for an empty DACL instead of granting the request
elbourne12345 Nov 3, 2026
38cddb9
ksmbd: fix session reference leak on compounded SESSION_SETUP
icb-linux Nov 3, 2026
2756a41
ksmbd: prevent share root removal through empty paths
namjaejeon Nov 3, 2026
fbe9fcd
ksmbd: prevent stale data from being written by SMB2 WRITE requests
namjaejeon Nov 3, 2026
4a7f332
ksmbd: fix invalid pointer dereference when get_inode_acl() fails
fshh520 Nov 3, 2026
52a8eb8
ksmbd: use the existing xattr name for a named stream
charsyam Nov 3, 2026
3092d8a
ksmbd: fix out-of-bounds read when padding the final compound response
icb-linux Nov 3, 2026
c81681b
ksmbd: fix named stream write and EOF handling
charsyam Nov 3, 2026
7f30b88
ksmbd: verify transform SessionId matches the decrypted header
Nov 3, 2026
bd47ee5
ksmbd: fix use-after-free after a failed durable reconnect
icb-linux Nov 3, 2026
d1df2ec
media: ipu-bridge: Fix use-after-free in IVSC error path
Nov 4, 2026
2b2a1d3
pps: change pps_gen_class to a const struct
LATENTBOUNCE Nov 4, 2026
63dc565
pps: generators: fix use-after-free when closing a removed device
Danishk2445 Nov 4, 2026
3594027
mm/rmap: don't discard lazyfree THPs at PMD level
x-y-z Oct 13, 2026
7dc3361
media: rc: Fix build failure with CONFIG_LIRC disabled
seanyoung Sep 23, 2026
27f2fdc
selftests: ublk: add missing gitignore for metadata_size binary
zazolabs Jan 25, 2026
34bdda8
drm/amdgpu/powerplay: Align get_tonga_state_array() header with proto…
srishanm Jun 25, 2026
4225b49
netfilter: conntrack: always lower timeout for non-closing RST packets
ummakynes Aug 10, 2026
9ec1c52
opp: fix use after free in _update_opp_table_clk()
petegriffin Sep 8, 2026
3c5bfee
ALSA: hda/realtek: Fix audio after Windows reboot on ASUS Q423SA
Oct 5, 2026
2f92c02
tun: Require CAP_NET_ADMIN to attach to an ownerless device
dwmw2 Oct 20, 2026
4d14072
rust: bitmap: add MAX_LEN and MAX_INLINE_LEN constants
Darksonn Nov 25, 2025
7ab5732
Linux 6.18.61
gregkh Nov 6, 2026
37d5a73
xen-netback: Fix UAF when reading statistics data
jgross1 Nov 6, 2026
34f0f63
xen-netback: defer xenvif_mcast_addr_list_free()
jbeulich Nov 6, 2026
c49934d
xen-blkback: Avoid UAF when reading I/O statistics
jgross1 Nov 5, 2026
c3f63d7
Linux 6.18.62
gregkh Nov 6, 2026
9c9b312
x86/hyperv: enable a Xen PV dom0 to use the L0 Hyper-V host
kaniini Jul 23, 2026
090d276
Drivers: hv: use host frames for GPADLs and SynIC pages when nested o…
kaniini Jul 23, 2026
5b235a0
drivers: hv: deliver the VMBus interrupt via a Xen VIRQ when nested o…
kaniini Jul 23, 2026
2d41d0a
hv_netvsc: DMA-map transmit pages when nested on Xen
kaniini Jul 23, 2026
8e32238
x86/hyperv: take vPCI device interrupts through Xen when nested on Xen
kaniini Jul 28, 2026
9210882
drivers: hv: tear down the Xen VMBus interrupt bridge on unwind
kaniini Sep 17, 2026
5e39526
iommu/xen: Add Xen PV-IOMMU driver
azenla Sep 2, 2026
a943824
iommu/xen: Allow the PV-IOMMU driver in a guest
azenla Sep 2, 2026
df0b8d5
iommu/xen: Give the identity domain a type and ops
azenla Sep 2, 2026
13f6675
iommu/dma: Don't reserve PCI windows under a paravirtual IOMMU
azenla Sep 2, 2026
0fff561
xen/pcifront: Let callers ask for a device's machine BDF
azenla Sep 2, 2026
0d2c25d
iommu/xen: Default a PV guest to the identity context
azenla Sep 2, 2026
8cc1207
PCI/MSI: don't write the MSI-X table in a Xen PV guest
azenla Sep 3, 2026
82c8d8b
iommu/xen: batch map subops over contiguous runs
azenla Sep 3, 2026
0634459
iommu/xen: do not claim the IOMMU itself
azenla Sep 3, 2026
166f85b
x86/xen: disable the right interrupt type when tearing down MSI
azenla Sep 3, 2026
4671919
iommu/xen: flush the IOTLB once per mapping, not once per subop
azenla Sep 3, 2026
b5e72b9
iommu/xen: restrict the PV-IOMMU driver to x86
kaniini Sep 17, 2026
b41802b
x86/topology: Tolerate lack of APIC when booting as Xen domU
azenla Apr 10, 2025
16363d6
x86/CPU/AMD: avoid printing reset reasons on Xen domU
kaniini Sep 4, 2025
66ba435
9p/xen: share one frontend across mounts and advertise it (6.18)
azenla Jul 15, 2026
39631ec
x86/amd_node: fix integer divide by zero during init
tycho Nov 14, 2025
69fa905
xen/evtchn: diagnose ring_overflow with post-barrier cons re-read
tycho Jul 20, 2026
ff79e3d
xen: add xen_mfn_to_node to resolve a foreign frame's host NUMA node
tycho Jul 20, 2026
6b01d66
xen: make xen_alloc_unpopulated_pages NUMA-aware
tycho Jul 20, 2026
f541fac
xen/grant-table: add gnttab_alloc_pages_node
tycho Jul 20, 2026
b467516
xen/events: add _on_node variants of the lateeoi bind helpers
tycho Jul 20, 2026
bf94899
xen/xenbus: home ring mappings on the foreign frame's host node
tycho Jul 20, 2026
aecc655
xen/xenbus: add xenbus_setup_ring_node for per-node ring allocation
tycho Jul 20, 2026
2e91c4c
xen-netback: place per-queue kthreads and IRQs near the ring
tycho Jul 20, 2026
af2d049
xen-blkback: place per-ring kthread and IRQ near the ring
tycho Jul 20, 2026
b5efccc
xen-netfront: place per-queue rings on per-queue nodes, with XPS
tycho Jul 20, 2026
e6e4c3d
xen-blkfront: place per-ring buffers on per-hctx nodes
tycho Jul 20, 2026
86aa7ed
xen/gntdev: home grant-map placeholder pages on the foreign frame's node
tycho Jul 20, 2026
d65ea21
xen: xlate_mmu: relocate remap_pfn utils
alexandermerritt May 27, 2026
506bb6a
xen: xlate_mmu: batch gfn mappings
alexandermerritt May 27, 2026
f67181f
feat(xen): deflate balloon via oom notifier
alexandermerritt Aug 6, 2026
327a653
firmware: qemu_fw_cfg: do not use the DMA interface on Xen PV
bleggett Aug 11, 2026
1d12f69
security: Add openpax configuration menus
kaniini Jul 7, 2024
db640bb
xattr: add support for retrieving PaX flags stored in xattrs
kaniini Jul 7, 2024
4869c54
mm: add openpax flags, settable via atomics
kaniini Jul 7, 2024
d5082ed
mman: enforce MPROTECT when enabled for a task
kaniini Jul 7, 2024
dad79d3
elf: wire up setup for PaX flags
kaniini Jul 7, 2024
9f0f5bc
security: openpax: add OPENPAX_SOFTMODE configuration knob
kaniini Jul 10, 2024
276e861
documentation: add pax_softmode= to kernel parameters doc
kaniini Jul 10, 2024
e041793
init: add pax_softmode= kernel command-line option
kaniini Jul 10, 2024
678110d
sysctl: wire up PaX softmode setting
kaniini Jul 10, 2024
9201fe3
elf: only enable PaX features by default if softmode is disabled
kaniini Jul 10, 2024
497e301
elf: enable PAXF_RANDMMAP if randomize_va_space > 0
kaniini Jul 11, 2024
5ec27ab
elf: use PAXF_RANDMMAP to control whether ASLR is enabled on a process
kaniini Jul 11, 2024
918bb1f
elf: allow executable stacks if PAXF_EMUTRAMP is enabled
kaniini Jul 11, 2024
0e44a79
proc: display PaX status in procfs status entries
kaniini Jul 11, 2024
a379eb0
elf: only test for PAXF_RANDMMAP if OPENPAX is enabled
kaniini Jul 16, 2024
03dd4e9
security: add openpax EMUTRAMP config option
kaniini Jul 21, 2024
44434e8
elf: simplify executable stack logic
kaniini Jul 21, 2024
e5ce249
x86: fault: add openpax_fault_is_trampoline to detect if a page-fault…
kaniini Jul 22, 2024
974bbd8
x86: fault: add stack trampoline emulator
kaniini Jul 22, 2024
e0d8d42
x86: fault: hook up stack trampoline emulator
kaniini Jul 22, 2024
384bf94
security: openpax: add OPENPAX_EMUTRAMP_DEFAULT config option
kaniini Jul 22, 2024
48b044b
elf: enable EMUTRAMP by default if CONFIG_OPENPAX_EMUTRAMP_DEFAULT is…
kaniini Jul 22, 2024
f965750
arm64: determine stack entropy based on mmap entropy
thestinger May 22, 2017
de1cb32
x86: determine stack entropy based on mmap entropy
thestinger May 22, 2017
41846af
mmap: further improve randomization of brk(2) addresses
kaniini Jul 23, 2024
f8673a4
exec: randomize argument block location
kaniini Jul 23, 2024
c52f916
use maximum supported mmap rnd entropy by default
thestinger May 7, 2017
6d4f8aa
elf: avoid double read of randomize_va_space in OpenPaX flag setup
kaniini Sep 13, 2024
179efcc
init: provide pax_softmode symbol unconditionally
kaniini Oct 31, 2024
8296289
security: openpax: disable OpenPaX by default
azenla Sep 26, 2026
fff8670
xen/mem-reservation: add ordered populate
alexandermerritt Sep 24, 2026
56fd417
x86/xen: add batched helpers for remapping a contiguous pfn run
alexandermerritt Sep 24, 2026
07d3bbd
xen/mem-reservation: add contiguous mapping helpers
alexandermerritt Sep 24, 2026
9931506
xen/balloon: inflate in 2 MiB blocks
alexandermerritt Sep 24, 2026
ceaf64a
xen/balloon: deflate in 2 MiB blocks
alexandermerritt Sep 24, 2026
125ae7f
xen/balloon: deflate 2 MiB blocks in the OOM path
alexandermerritt Sep 24, 2026
62ffa49
automation: rebase edera/6.18-lts onto stable linux-6.18.y nightly
kaniini Oct 9, 2026
92f6f46
automation: propose a 6.18-lts backport for each merged mainline PR
kaniini Oct 9, 2026
4d106e7
automation: allow github-actions to initiate workflows
azenla Oct 12, 2026
f923934
iommu/xen: register before xen-pciback binds its devices
azenla Oct 10, 2026
88dca3e
automation: do not fail backport retries when nothing needs retrying
kaniini Oct 12, 2026
ab89170
x86/xen: take the early CPU frequency from the hypervisor
azenla Aug 22, 2026
71e7fa1
xen/xenbus: wake the boot device wait when a backend changes state
azenla Aug 22, 2026
106713d
fix(xen/balloon): register the OOM deflate notifier only in domUs
alexandermerritt Oct 16, 2026
0fb140c
xen/balloon: add boot-time extra memory as 2 MiB blocks
alexandermerritt Oct 16, 2026
26e721c
x86/xen: keep dom0's growth room on the balloon
alexandermerritt Oct 16, 2026
aebdd98
9p/xen: wake ring-space waiters with wake_up()
azenla Oct 18, 2026
86357ac
9p/xen: reconnect to the backend on resume
azenla Oct 18, 2026
10ce669
9p/xen: carry the 9P session across a restore
azenla Oct 18, 2026
d2bc529
9p/xen: advertise session transfer to the toolstack
azenla Oct 18, 2026
48ec723
x86/xen: include the Xen types before interface/memory.h
azenla Oct 19, 2026
926d090
xen/unpopulated-alloc: borrow from other nodes before carving a region
azenla Oct 19, 2026
39ef73f
xen/unpopulated-alloc: never hand out another node's pages from the n…
azenla Oct 19, 2026
b05fce4
automation: request reviews of LTS backports from the patch authors
kaniini Oct 23, 2026
c59e6a7
automation: allow landing an approved rebase by hand
kaniini Oct 23, 2026
48bf541
automation: audit edera/6.18-lts weekly for missing mainline commits
kaniini Oct 23, 2026
b3bede8
iommu/xen: take the old domain in attach_dev (#58)
graysonguarino Oct 26, 2026
363cab2
automation: build x86_64 on the Edera host config
kaniini Oct 26, 2026
90b6a41
automation: repair a rebase whose build fails instead of proposing it
kaniini Oct 26, 2026
da2620d
Revert "x86/xen: include the Xen types before interface/memory.h"
alexandermerritt Oct 23, 2026
fdb91cb
Revert "x86/xen: keep dom0's growth room on the balloon"
alexandermerritt Oct 23, 2026
062ae9c
Revert "xen/balloon: add boot-time extra memory as 2 MiB blocks"
alexandermerritt Oct 23, 2026
d408d6f
xen/unpopulated-alloc: add push_page()
alexandermerritt Oct 21, 2026
713b019
xen/unpopulated-alloc: keep boot-time address space as 2 MiB blocks
alexandermerritt Oct 27, 2026
219d3d9
xen/balloon: grow dom0 into 2 MiB blocks from the unpopulated allocator
alexandermerritt Oct 27, 2026
358b088
xen/balloon: report how far dom0 can still grow
alexandermerritt Oct 27, 2026
d172bfa
ci: file a Linear issue for pull requests opened without one
kdaula Nov 3, 2026
6d764a6
9p/xen: grant each ring page by its own frame
kdaula Nov 3, 2026
19aa70b
xen-blkfront: Fix IO race during unplug (#89)
kdaula Nov 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 11 additions & 0 deletions .automation/backport-skip
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Edera commits on edera/mainline that must never be backported to
# edera/6.18-lts, one subject per line, exactly as the commit has it.
#
# Each pull request merged into edera/mainline is backported on its own
# (.github/workflows/lts-backport.yml); label it no-backport to opt out. This
# file is for commits that did not arrive through such a pull request, or
# were ported to 6.18 in a form the subject match cannot see. A commit that
# is listed here, or belongs to a no-backport pull request, does not hold up
# later backports that touch the same files.
#
# Blank lines and lines starting with # are ignored.
125 changes: 125 additions & 0 deletions .automation/skills/lts-audit/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
---
name: lts-audit
description: Weekly audit of edera/6.18-lts for Edera commits from edera/mainline that it lacks, run unattended in CI by .github/workflows/lts-audit.yml. Covers telling a commit that is really missing from one that was ported in another form or does not apply to 6.18, and the triage notes that go into the audit issue.
---

# LTS audit triage

Edera kernel work lands on `edera/mainline` first and flows down to
`edera/6.18-lts`, one backport pull request per mainline pull request. Some
commits still fall through. The workflow has already listed, from git alone,
every Edera commit on mainline that the LTS tree does not seem to have, and
it files that list as an issue whatever you say. Your job is to tell the
maintainers which of those are **really** missing, and what to do about the
rest.

The list comes from `pending-backports.sh`, which counts a mainline commit as
present on the LTS tree only when the LTS series has a commit with the same
subject (ignoring a trailing version tag such as ` (6.18)`) or the same
patch-id. So a commit can be listed although it is there: ported under a
reworded subject and with a changed diff, folded into another commit, or
already in `linux-6.18.y` upstream. And a commit can be listed because it
does not belong on 6.18 at all.

This runs unattended. Nobody can answer a question. Everything a maintainer
needs has to end up in the report.

## Inputs

The workflow gives you, in the prompt:

- `LTS_TIP`: the `edera/6.18-lts` commit audited (checked out). Local branch
`lts-upstream` is its upstream, `linux-6.18.y`; the Edera series is
`<lts-base>..LTS_TIP`, where `<lts-base>` is their merge-base.
- `MAINLINE_TIP`: the `edera/mainline` commit audited (fetched). Local branch
`mainline-upstream` is its upstream, Linus' `master`, and `<mainline-base>`
their merge-base.
- `PENDING`: the commits listed as missing, one per line as `<sha> TAB
<subject>`, oldest first. The shas are mainline commits.
- `STATUS`: what is already happening to them, one per line as `<where> TAB
<subject>`. `<where>` is `#N` for an open pull request into
`edera/6.18-lts` that carries a commit with that subject, or `#N
backport-waiting` / `#N backport-needs-attention` for a merged mainline
pull request whose backport is in that state. It may be empty.
- `REPORT`: the path your report must be written to.

You change nothing: no commits, no branches, no checkouts, no pushes. Read
with `git log`, `git show`, `git diff`, `git range-diff`, `git grep` and the
like.

### How to run commands here

Your shell commands are checked against an allowlist that matches the
command's first words. Shell variables, `$(...)`, `<(...)`, pipes into
commands that are not on the list, and `VAR=x cmd` prefixes will be refused,
so `LTS_TIP`, `<sha>` and `<...>` below are placeholders: substitute the
literal value. Work out the merge-bases once with `git merge-base` and reuse
the hashes.

This is a blobless clone: file contents are fetched from GitHub the first time
a command needs them, so the first `git show` of a commit can be slow. That is
not a hang.

## 1. Read the list

```sh
cat PENDING
cat STATUS
git merge-base LTS_TIP lts-upstream
git merge-base MAINLINE_TIP mainline-upstream
```

A commit with an open backport pull request in `STATUS` is in flight: note
the pull request and move on, unless something in it looks wrong.

## 2. Judge each commit

For every other commit, `git show <sha>` and decide which one of these it is.
Look, in this order:

1. **Ported in another form.** Search the LTS series for the change: the
files it touches (`git log --format='%h %s' <lts-base>..LTS_TIP --
<path>`), distinctive identifiers it adds (`git grep -n <identifier>
LTS_TIP -- <path>`), and its subject with different wording. If an LTS
commit carries the same change, adapted or not, name it, and say how it
differs. Several mainline commits squashed into one LTS commit count.
2. **Already upstream in 6.18.** Edera fixes are sometimes sent upstream and
land in a stable release: look for the change in `lts-upstream` (`git log
--format='%h %s' lts-upstream -- <path>`, then `git show`).
3. **Not applicable to 6.18.** The commit fixes or extends code that only
mainline has, upstream or Edera, and the LTS tree has nothing for it to
apply to. Say what is absent.
4. **Missing.** None of the above: the LTS tree lacks the change. Say what
it does in one line, which later Edera commits in `PENDING` depend on it,
and whether it looks likely to apply to 6.18 as is, or needs adapting (and
why).

When you cannot tell, say **UNSURE**, give both readings and what would
settle it. Never call a commit present on a guess: a maintainer will act on
"ported" by adding it to the skip file, and a commit skipped by mistake is
lost from the LTS tree for good.

## 3. Write the report

Write `REPORT` as Markdown. It is pasted under a table of the commits, so do
not repeat the table. Start with one short paragraph saying how many are
really missing, how many are in flight, and how many need a maintainer to
skip them. Then one entry per commit, in `PENDING` order:

```markdown
### `<sha12>` <subject>

**Missing** | **In flight (#N)** | **Ported as `<lts-sha12>`** | **Upstream in 6.18 as `<sha12>`** | **Not applicable** | **UNSURE**

<two to five sentences: the evidence, and what to do>
```

What to do, by verdict:

- Missing: backport it. If its mainline pull request is in `STATUS` as
waiting or needing attention, point at that pull request.
- Ported, upstream, or not applicable: add its subject, exactly as `PENDING`
has it, to `.automation/backport-skip` on `edera/6.18-lts`, or label its
mainline pull request `no-backport`.

Keep it factual and short. Do not quote large diffs.
206 changes: 206 additions & 0 deletions .automation/skills/mainline-backport/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,206 @@
---
name: mainline-backport
description: Backport of one merged edera/mainline pull request to edera/6.18-lts, run unattended in CI by .github/workflows/lts-backport.yml. Covers the cherry-picks, adapting a commit to the older kernel, spotting a dependency on another backport, build checks, and the report that becomes the backport pull request.
---

# Mainline pull request backport

Edera kernel work lands on `edera/mainline` first, one pull request at a time,
and every merged pull request is proposed for `edera/6.18-lts` as its own
backport pull request. You are preparing one of those. The workflow has
already worked out which of the pull request's commits the LTS tree still
lacks and hands you that list.

The goal is that each backport changes **exactly what its mainline commit
changes**. Where 6.18 differs from mainline enough that the same change does
not apply, you adapt it the way a careful stable maintainer would and you say
exactly what you did.

This runs unattended. Nobody is watching while you work, and nobody can answer
a question. Everything a reviewer needs has to end up in the report.

## What happens to your result

You cannot push, and nothing you write lands on `edera/6.18-lts`: a maintainer
merges the backport pull request, or does not. When you finish, the workflow
independently:

1. runs `verify-backport.sh`, which checks from git alone that your branch
fast-forwards the LTS tip, is linear, and holds one commit per requested
commit, in order, each naming its source with a `(cherry picked from
commit <sha>)` trailer, keeping its source's subject, and changing the
same files by the same +/- lines;
2. builds x86_64 and arm64 `vmlinux` with `kernel-build.sh`.

Both results go into the pull request next to your report. A commit you had
to adapt **will** show up as adapted there. That is expected, not a failure;
your report explains it. Never reword a subject, merge two commits into one,
or split one into two: backports are recognised later by subject, and a
renamed one would be offered again.

## Inputs

The workflow gives you, in the prompt:

- `MAINLINE_PR`: the number and title of the merged pull request.
- `OLD_TIP`: the `edera/6.18-lts` commit to build on (already checked out).
- `REQUEST`: a file listing the pull request's commits to backport, one per
line as `<sha> TAB <subject>`, oldest first. Their objects are already
fetched. Commits the LTS tree already has, and automation-only commits, are
not in it.
- `PENDING`: a file listing every Edera commit on `edera/mainline` that the
LTS tree lacks, in the same format, oldest first. The request's own commits
are among them. The workflow has already checked that nothing earlier in
this list touches the request's files; you look for the dependencies a file
match cannot see.
- `RESULT`: the local branch name your result must end up on.
- `REPORT`: the path your report must be written to.

The automation's own scripts are in `.rebase-tools/scripts/`, copied from the
commit this run started from. Use those, never the copy inside the tree.

### How to run commands here

Your shell commands are checked against an allowlist that matches the
command's first word. Shell variables, `$(...)`, `<(...)` and `VAR=x cmd`
prefixes will be refused, so `OLD_TIP`, `RESULT`, `<sha>` and `<...>` below
are placeholders: substitute the literal value. Put scratch files, worktrees
and build output under `.rebase-scratch/` in the repository root; the
kernel's `.gitignore` ignores it.

This is a blobless clone: file contents are fetched from GitHub the first time
a command needs them, so the first checkout or `git show` can be slow. That is
not a hang.

## 1. Read the request

```sh
cat REQUEST
cat PENDING
git show --stat <sha> # for each requested commit
```

For each commit, read its message and diff, and check what it depends on:
does it call a helper, use a struct field or a Kconfig symbol that 6.18
lacks? If so, where does that come from?

- From an earlier commit in the request: fine, it is backported first.
- From a commit in `PENDING` that is not in the request: this backport has to
**wait** for that one. Stop here; see "If it has to wait".
- From upstream (Linus' tree) only: see the next section.

## 2. Cherry-pick, in order

```sh
git switch -c RESULT OLD_TIP
git cherry-pick -x <sha> # one at a time, oldest first
```

`-x` is required: the trailer it adds is how the checker pairs your commit
with its source. If you have to amend, keep the trailer and the subject.

When a pick conflicts, or applies but would not build or behave the same on
6.18:

- Read what differs between the two kernels around the change, and adapt the
change so it does on 6.18 what it does on mainline. Prefer the smallest
adaptation; do not backport an unrelated upstream refactor to make the
patch apply.
- If the conflict is with Edera code that only a pending commit brings,
that is a dependency: **wait**, as above.
- If the commit depends on an upstream change 6.18 lacks and cannot be
adapted without it, do not pull that upstream change in. Leave the commit
out (`git cherry-pick --abort` for that one, then continue with the next)
and make it a **Needs a decision** item saying what it needs.
- If the commit does not apply to 6.18 at all (it fixes code only mainline
has), leave it out the same way and say so.
- If you cannot tell what the right adaptation is, make the most conservative
one you can defend, mark it **UNSURE** in the report, and explain both
readings.
- Never use `-X ours`, `-X theirs`, or `git checkout --ours/--theirs` on a
whole file to make a conflict go away.
- Never commit anything that is not a backport of a requested commit. If a
backport needs a 6.18-only fix to build, fold it into that backport and
report it as an adaptation.

## 3. Build

```sh
bash .rebase-tools/scripts/kernel-build.sh x86_64 .rebase-scratch/obj-x86 4
bash .rebase-tools/scripts/kernel-build.sh arm64 .rebase-scratch/obj-arm64 4
```

If a build fails because of a backport, fix it **in that backport**: drive the
todo list with sed, `git -c sequence.editor="sed -i 's/^pick <sha>/edit
<sha>/'" rebase -i OLD_TIP`, amend (keeping subject and trailer), then `git
rebase --continue`. Never rebase below OLD_TIP.

If a build fails on OLD_TIP too, it is not yours: build OLD_TIP the same way
in a `.rebase-scratch/` worktree to confirm, and report it as pre-existing.

## 4. Check yourself

```sh
bash .rebase-tools/scripts/verify-backport.sh OLD_TIP RESULT REQUEST
```

Every commit it lists as adapted or left out must be accounted for in your
report. If one is not, you changed something you did not mean to: find it and
undo it.

## 5. Report

Write the report to the `REPORT` path, in Markdown. Its **first line** is the
status, exactly one of:

- `Status: proposed` when the RESULT branch holds a backport for review;
- `Status: waiting` when it has to wait for another backport (no RESULT
branch);
- `Status: not-applicable` when none of the request applies to 6.18 (no
RESULT branch).

The rest becomes the pull request body (or the comment on the mainline pull
request when there is no branch), so lead with what a reviewer must decide.
No preamble, no sign-off.

```markdown
Status: proposed

## Summary
One paragraph: commits requested, backported unchanged, adapted, left out,
and whether you expect the checker to pass.

## Needs a decision
One bullet per question, each starting **UNSURE:**, with both readings and
what you committed. Every left-out commit is one. "None." if there is
nothing.

## Adapted commits
Per commit: subject, what differs on 6.18, what you changed and why. "None."
if none.

## Left out
Per commit: subject and why. "None." if none.

## Builds
x86_64, arm64: pass, fail (with the first error), or pre-existing failure
(confirmed on OLD_TIP).
```

Then stop. The workflow reads the branch, not the working tree.

## If it has to wait

Do not create the RESULT branch. Write the report with `Status: waiting`,
and under `## Waiting on` list each pending commit it needs, as `` `<sha>`
<subject> ``, with one line on what it needs from it. The workflow labels the
mainline pull request `backport-waiting` and tries again once other backports
land.

## If nothing applies, or you cannot finish

If none of the request applies to 6.18, do not create the RESULT branch and
write the report with `Status: not-applicable`, explaining why. If you could
not produce a backport for any other reason, do not create the branch either
and explain what went wrong; the first line is then whatever fits best, and
a missing branch is treated as needing a human either way.
Loading