From 4785820f2a2178d477e03e7f6d8d7eea777a9f20 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 1 Oct 2026 10:56:42 +0200 Subject: [PATCH 1/2] Drop virtio-gpu fence passing patch Was never really used, and defines an ID that collides with another one already merged upstream. Signed-off-by: Sergio Lopez --- ...able-DMA-API-if-memory-is-restricted.patch | 2 +- .../0002-x86-sev-write-AP-reset-vector.patch | 2 +- ...ver-to-retrieve-secrets-from-cmdline.patch | 2 +- ...004-x86-sev-Avoid-using-native_cpuid.patch | 2 +- ...01-krunfw-Don-t-panic-when-init-dies.patch | 2 +- ...nfw-Ignore-run_cmd-on-orderly-reboot.patch | 2 +- ...ralize-recvmsg-and-drop-transport-dg.patch | 2 +- ...vsock-refactor-transport-lookup-code.patch | 2 +- ...ck-support-multi-transport-datagrams.patch | 2 +- .../0006-vsock-make-vsock-bind-reusable.patch | 2 +- ...add-VIRTIO_VSOCK_F_DGRAM-feature-bit.patch | 2 +- .../0008-virtio-vsock-support-dgrams.patch | 2 +- ...-vsock-Add-support-for-SIOCINQ-ioctl.patch | 2 +- ...o-vsock-implement-has_data-for-DGRAM.patch | 2 +- ...-Socket-Impersonation-implementation.patch | 2 +- ...i-allow-hijacking-sockets-tsi_hijack.patch | 2 +- ...-Unify-SCOPE_LOCAL_CPU-early-late-be.patch | 2 +- ...ctl-Introduce-PR_-SET-GET-_MEM_MODEL.patch | 2 +- ...PR_-GET-SET-_MEM_MODEL-for-always-TS.patch | 2 +- ...scaffolding-to-add-ACTLR_EL1-to-thre.patch | 2 +- ...Apple-IMPDEF-TSO-memory-model-contro.patch | 2 +- ...cesses-to-use-compat-input-syscalls.patch} | 4 +- ...virtio-Support-fence-passing-feature.patch | 454 ------------------ ...0019-dax-Allow-block-size-PAGE_SIZE.patch} | 4 +- ...copy_user-fallback-path-for-remote-.patch} | 4 +- ...tch => 0021-virtgpu-gem-partial-map.patch} | 4 +- ...tch => 0022-virtgpu-mixed-page-size.patch} | 4 +- ...mark-DAX-inode-releases-as-blocking.patch} | 4 +- ...24-can-virtio-Add-virtio-CAN-driver.patch} | 4 +- ...rtio_rtc-Add-module-and-driver-core.patch} | 4 +- ...h => 0026-virtio_rtc-Add-PTP-clocks.patch} | 4 +- ...rm-Generic-Timer-cross-timestamping.patch} | 4 +- ...028-virtio_rtc-Add-RTC-class-driver.patch} | 4 +- ...c-Fix-compatibility-for-kernel-6.12.patch} | 4 +- ...io-Add-skeleton-virtio-media-driver.patch} | 4 +- ...media-virtio-Add-session-management.patch} | 4 +- ...edia-virtio-Add-scatterlist-builder.patch} | 4 +- ...d-ioctl-operations-and-driver-logic.patch} | 4 +- ...0034-virtio-Add-ID-for-virtio-media.patch} | 4 +- ...virtio-fix-v4l2-API-for-kernel-6.12.patch} | 4 +- ...=> 0036-drm-vblank-Add-vblank-timer.patch} | 33 +- ...nux-6.12-hrtimer-initialization-API.patch} | 13 +- ...> 0038-drm-virtgpu-Use-vblank-timer.patch} | 24 +- 43 files changed, 103 insertions(+), 535 deletions(-) rename patches/{0019-Enable-64-bit-processes-to-use-compat-input-syscalls.patch => 0018-Enable-64-bit-processes-to-use-compat-input-syscalls.patch} (97%) delete mode 100644 patches/0018-drm-virtio-Support-fence-passing-feature.patch rename patches/{0020-dax-Allow-block-size-PAGE_SIZE.patch => 0019-dax-Allow-block-size-PAGE_SIZE.patch} (91%) rename patches/{0021-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch => 0020-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch} (96%) rename patches/{0022-virtgpu-gem-partial-map.patch => 0021-virtgpu-gem-partial-map.patch} (90%) rename patches/{0023-virtgpu-mixed-page-size.patch => 0022-virtgpu-mixed-page-size.patch} (92%) rename patches/{0024-fuse-mark-DAX-inode-releases-as-blocking.patch => 0023-fuse-mark-DAX-inode-releases-as-blocking.patch} (95%) rename patches/{0025-can-virtio-Add-virtio-CAN-driver.patch => 0024-can-virtio-Add-virtio-CAN-driver.patch} (99%) rename patches/{0026-virtio_rtc-Add-module-and-driver-core.patch => 0025-virtio_rtc-Add-module-and-driver-core.patch} (99%) rename patches/{0027-virtio_rtc-Add-PTP-clocks.patch => 0026-virtio_rtc-Add-PTP-clocks.patch} (99%) rename patches/{0028-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch => 0027-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch} (95%) rename patches/{0029-virtio_rtc-Add-RTC-class-driver.patch => 0028-virtio_rtc-Add-RTC-class-driver.patch} (99%) rename patches/{0030-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch => 0029-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch} (91%) rename patches/{0031-media-virtio-Add-skeleton-virtio-media-driver.patch => 0030-media-virtio-Add-skeleton-virtio-media-driver.patch} (99%) rename patches/{0032-media-virtio-Add-session-management.patch => 0031-media-virtio-Add-session-management.patch} (99%) rename patches/{0033-media-virtio-Add-scatterlist-builder.patch => 0032-media-virtio-Add-scatterlist-builder.patch} (99%) rename patches/{0034-media-virtio-Add-ioctl-operations-and-driver-logic.patch => 0033-media-virtio-Add-ioctl-operations-and-driver-logic.patch} (99%) rename patches/{0035-virtio-Add-ID-for-virtio-media.patch => 0034-virtio-Add-ID-for-virtio-media.patch} (85%) rename patches/{0036-media-virtio-fix-v4l2-API-for-kernel-6.12.patch => 0035-media-virtio-fix-v4l2-API-for-kernel-6.12.patch} (91%) rename patches/{0037-drm-vblank-timer-infrastructure.patch => 0036-drm-vblank-Add-vblank-timer.patch} (96%) rename patches/{0038-drm-vblank-linux-6.12-compat.patch => 0037-drm-vblank-Use-Linux-6.12-hrtimer-initialization-API.patch} (62%) rename patches/{0039-drm-virtgpu-use-vblank-timer.patch => 0038-drm-virtgpu-Use-vblank-timer.patch} (73%) diff --git a/patches-tee/0001-virtio-enable-DMA-API-if-memory-is-restricted.patch b/patches-tee/0001-virtio-enable-DMA-API-if-memory-is-restricted.patch index 5b79c4c1..322d2f9b 100644 --- a/patches-tee/0001-virtio-enable-DMA-API-if-memory-is-restricted.patch +++ b/patches-tee/0001-virtio-enable-DMA-API-if-memory-is-restricted.patch @@ -1,4 +1,4 @@ -From 7c25b1a6a2f1a7d9c1f7ac762bc4f855a69099c4 Mon Sep 17 00:00:00 2001 +From 467c71ed09fcaedcfd2a85c3380411ccccbf549e Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Fri, 10 Sep 2021 13:05:01 +0200 Subject: [PATCH 1/4] virtio: enable DMA API if memory is restricted diff --git a/patches-tee/0002-x86-sev-write-AP-reset-vector.patch b/patches-tee/0002-x86-sev-write-AP-reset-vector.patch index cea783c7..45ad5b68 100644 --- a/patches-tee/0002-x86-sev-write-AP-reset-vector.patch +++ b/patches-tee/0002-x86-sev-write-AP-reset-vector.patch @@ -1,4 +1,4 @@ -From dd6d8ff1c77bff2e640720778602f63de744743e Mon Sep 17 00:00:00 2001 +From e162b2f85d770158afb1d49cd5bca933dd17581b Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 20 Oct 2022 10:23:16 +0200 Subject: [PATCH 2/4] x86/sev: write AP reset vector diff --git a/patches-tee/0003-Implement-driver-to-retrieve-secrets-from-cmdline.patch b/patches-tee/0003-Implement-driver-to-retrieve-secrets-from-cmdline.patch index 6982f99e..8da40f14 100644 --- a/patches-tee/0003-Implement-driver-to-retrieve-secrets-from-cmdline.patch +++ b/patches-tee/0003-Implement-driver-to-retrieve-secrets-from-cmdline.patch @@ -1,4 +1,4 @@ -From f53c42eb667b87a44b92dd505f88869050c7b46b Mon Sep 17 00:00:00 2001 +From ba73233150bde566b13bd2756dae8df53c9c58ea Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Wed, 3 Aug 2022 12:35:12 +0200 Subject: [PATCH 3/4] Implement driver to retrieve secrets from cmdline diff --git a/patches-tee/0004-x86-sev-Avoid-using-native_cpuid.patch b/patches-tee/0004-x86-sev-Avoid-using-native_cpuid.patch index baedd35e..980577aa 100644 --- a/patches-tee/0004-x86-sev-Avoid-using-native_cpuid.patch +++ b/patches-tee/0004-x86-sev-Avoid-using-native_cpuid.patch @@ -1,4 +1,4 @@ -From 6067167bc59a2c6e898f1ef468c00c891781bb80 Mon Sep 17 00:00:00 2001 +From 2b74a2aedd69ba6144714d3067283ff0b5087a8e Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Wed, 5 Jun 2024 16:20:08 +0200 Subject: [PATCH 4/4] x86/sev: Avoid using native_cpuid diff --git a/patches/0001-krunfw-Don-t-panic-when-init-dies.patch b/patches/0001-krunfw-Don-t-panic-when-init-dies.patch index 1ced6414..fc0c7fe7 100644 --- a/patches/0001-krunfw-Don-t-panic-when-init-dies.patch +++ b/patches/0001-krunfw-Don-t-panic-when-init-dies.patch @@ -1,7 +1,7 @@ From 1019974df06a399d9755b1ee592f0ff62c709371 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 2 Mar 2023 07:34:49 +0100 -Subject: [PATCH 01/36] krunfw: Don't panic when init dies +Subject: [PATCH 01/38] krunfw: Don't panic when init dies In libkrun, the isolated process runs as PID 1. When it exits, trigger an orderly reboot instead of panic'ing. diff --git a/patches/0002-krunfw-Ignore-run_cmd-on-orderly-reboot.patch b/patches/0002-krunfw-Ignore-run_cmd-on-orderly-reboot.patch index 6db160ea..32cb1bee 100644 --- a/patches/0002-krunfw-Ignore-run_cmd-on-orderly-reboot.patch +++ b/patches/0002-krunfw-Ignore-run_cmd-on-orderly-reboot.patch @@ -1,7 +1,7 @@ From e7c60d5e1f4173a6a228e4609ecf0c2f5c46a987 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Mon, 16 May 2022 16:04:27 +0200 -Subject: [PATCH 02/36] krunfw: Ignore run_cmd on orderly reboot +Subject: [PATCH 02/38] krunfw: Ignore run_cmd on orderly reboot We don't really support restarting the conventional way, so ignore "run_cmd" so we can fall back to an emergency sync and reboot. diff --git a/patches/0003-vsock-dgram-generalize-recvmsg-and-drop-transport-dg.patch b/patches/0003-vsock-dgram-generalize-recvmsg-and-drop-transport-dg.patch index c4003ca8..42e87e83 100644 --- a/patches/0003-vsock-dgram-generalize-recvmsg-and-drop-transport-dg.patch +++ b/patches/0003-vsock-dgram-generalize-recvmsg-and-drop-transport-dg.patch @@ -1,7 +1,7 @@ From 7d78c03e4d008b83e0262ee1af5c54515c0df711 Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:28 +0000 -Subject: [PATCH 03/36] vsock/dgram: generalize recvmsg and drop +Subject: [PATCH 03/38] vsock/dgram: generalize recvmsg and drop transport->dgram_dequeue This commit drops the transport->dgram_dequeue callback and makes diff --git a/patches/0004-vsock-refactor-transport-lookup-code.patch b/patches/0004-vsock-refactor-transport-lookup-code.patch index baff4b6a..2e5fc2e6 100644 --- a/patches/0004-vsock-refactor-transport-lookup-code.patch +++ b/patches/0004-vsock-refactor-transport-lookup-code.patch @@ -1,7 +1,7 @@ From 87c404066aa6497430d824f5fa2d114d0e768c68 Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:29 +0000 -Subject: [PATCH 04/36] vsock: refactor transport lookup code +Subject: [PATCH 04/38] vsock: refactor transport lookup code Introduce new reusable function vsock_connectible_lookup_transport() that performs the transport lookup logic. diff --git a/patches/0005-vsock-support-multi-transport-datagrams.patch b/patches/0005-vsock-support-multi-transport-datagrams.patch index 96c2d9e1..35741a3f 100644 --- a/patches/0005-vsock-support-multi-transport-datagrams.patch +++ b/patches/0005-vsock-support-multi-transport-datagrams.patch @@ -1,7 +1,7 @@ From cb66798255b582838b5dd5d2dee04f039cf7e281 Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:30 +0000 -Subject: [PATCH 05/36] vsock: support multi-transport datagrams +Subject: [PATCH 05/38] vsock: support multi-transport datagrams This patch adds support for multi-transport datagrams. diff --git a/patches/0006-vsock-make-vsock-bind-reusable.patch b/patches/0006-vsock-make-vsock-bind-reusable.patch index 778b51aa..60d3f1ea 100644 --- a/patches/0006-vsock-make-vsock-bind-reusable.patch +++ b/patches/0006-vsock-make-vsock-bind-reusable.patch @@ -1,7 +1,7 @@ From 909eb28767726557a02619ecc50c9f207df55d5a Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:31 +0000 -Subject: [PATCH 06/36] vsock: make vsock bind reusable +Subject: [PATCH 06/38] vsock: make vsock bind reusable This commit makes the bind table management functions in vsock usable for different bind tables. For use by datagrams in a future patch. diff --git a/patches/0007-virtio-vsock-add-VIRTIO_VSOCK_F_DGRAM-feature-bit.patch b/patches/0007-virtio-vsock-add-VIRTIO_VSOCK_F_DGRAM-feature-bit.patch index 2dba337c..f856d1b5 100644 --- a/patches/0007-virtio-vsock-add-VIRTIO_VSOCK_F_DGRAM-feature-bit.patch +++ b/patches/0007-virtio-vsock-add-VIRTIO_VSOCK_F_DGRAM-feature-bit.patch @@ -1,7 +1,7 @@ From fc8093a6f7348558416cb16a62174448bf6e0a10 Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:32 +0000 -Subject: [PATCH 07/36] virtio/vsock: add VIRTIO_VSOCK_F_DGRAM feature bit +Subject: [PATCH 07/38] virtio/vsock: add VIRTIO_VSOCK_F_DGRAM feature bit This commit adds a feature bit for virtio vsock to support datagrams. diff --git a/patches/0008-virtio-vsock-support-dgrams.patch b/patches/0008-virtio-vsock-support-dgrams.patch index 8b5f501c..b7624732 100644 --- a/patches/0008-virtio-vsock-support-dgrams.patch +++ b/patches/0008-virtio-vsock-support-dgrams.patch @@ -1,7 +1,7 @@ From aa8d05eb5d994be74195a42df0fde477e0216124 Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:33 +0000 -Subject: [PATCH 08/36] virtio/vsock: support dgrams +Subject: [PATCH 08/38] virtio/vsock: support dgrams This commit adds support for datagrams over virtio/vsock. diff --git a/patches/0009-vsock-Add-support-for-SIOCINQ-ioctl.patch b/patches/0009-vsock-Add-support-for-SIOCINQ-ioctl.patch index a38cbe2e..a679009b 100644 --- a/patches/0009-vsock-Add-support-for-SIOCINQ-ioctl.patch +++ b/patches/0009-vsock-Add-support-for-SIOCINQ-ioctl.patch @@ -1,7 +1,7 @@ From 2fc5e66a1f39c626768559ea17769cfac5287b7f Mon Sep 17 00:00:00 2001 From: Xuewei Niu Date: Tue, 8 Jul 2025 14:36:12 +0800 -Subject: [PATCH 09/36] vsock: Add support for SIOCINQ ioctl +Subject: [PATCH 09/38] vsock: Add support for SIOCINQ ioctl Add support for SIOCINQ ioctl, indicating the length of bytes unread in the socket. The value is obtained from `vsock_stream_has_data()`. diff --git a/patches/0010-virtio-vsock-implement-has_data-for-DGRAM.patch b/patches/0010-virtio-vsock-implement-has_data-for-DGRAM.patch index 112a1406..5af95053 100644 --- a/patches/0010-virtio-vsock-implement-has_data-for-DGRAM.patch +++ b/patches/0010-virtio-vsock-implement-has_data-for-DGRAM.patch @@ -1,7 +1,7 @@ From b2443370182382eee9e7aa1a11d472921182374d Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 28 May 2026 11:43:46 +0200 -Subject: [PATCH 10/36] virtio/vsock: implement has_data for DGRAM +Subject: [PATCH 10/38] virtio/vsock: implement has_data for DGRAM Signed-off-by: Sergio Lopez --- diff --git a/patches/0011-Transparent-Socket-Impersonation-implementation.patch b/patches/0011-Transparent-Socket-Impersonation-implementation.patch index e4e74958..154bf444 100644 --- a/patches/0011-Transparent-Socket-Impersonation-implementation.patch +++ b/patches/0011-Transparent-Socket-Impersonation-implementation.patch @@ -1,7 +1,7 @@ From 3c2901379d8789be51b75a04fb99ded75d988667 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 19 May 2022 22:38:26 +0200 -Subject: [PATCH 11/36] Transparent Socket Impersonation implementation +Subject: [PATCH 11/38] Transparent Socket Impersonation implementation Transparent Socket Impersonation (AF_TSI) is an address family that provides sockets presenting two simultaneous personalities, one of diff --git a/patches/0012-tsi-allow-hijacking-sockets-tsi_hijack.patch b/patches/0012-tsi-allow-hijacking-sockets-tsi_hijack.patch index b75580a0..09a3b119 100644 --- a/patches/0012-tsi-allow-hijacking-sockets-tsi_hijack.patch +++ b/patches/0012-tsi-allow-hijacking-sockets-tsi_hijack.patch @@ -1,7 +1,7 @@ From 70e18687e023f17ecc999ee9ccf4734575f38413 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 19 May 2022 22:42:01 +0200 -Subject: [PATCH 12/36] tsi: allow hijacking sockets (tsi_hijack) +Subject: [PATCH 12/38] tsi: allow hijacking sockets (tsi_hijack) Add a kernel command line option (tsi_hijack) enabling users to request the kernel to hijack AF_INET(SOCK_STREAM || SOCK_DGRAM) diff --git a/patches/0013-arm64-cpufeature-Unify-SCOPE_LOCAL_CPU-early-late-be.patch b/patches/0013-arm64-cpufeature-Unify-SCOPE_LOCAL_CPU-early-late-be.patch index f782984d..8e159c93 100644 --- a/patches/0013-arm64-cpufeature-Unify-SCOPE_LOCAL_CPU-early-late-be.patch +++ b/patches/0013-arm64-cpufeature-Unify-SCOPE_LOCAL_CPU-early-late-be.patch @@ -1,7 +1,7 @@ From 42c0a7432e0ab59dc8df40302081bee9257c714a Mon Sep 17 00:00:00 2001 From: Asahi Lina Date: Wed, 25 Sep 2024 16:35:34 +0200 -Subject: [PATCH 13/36] arm64: cpufeature: Unify SCOPE_LOCAL_CPU early & late +Subject: [PATCH 13/38] arm64: cpufeature: Unify SCOPE_LOCAL_CPU early & late behavior SCOPE_LOCAL_CPU is mostly used for CPU errata. The early feature logic diff --git a/patches/0014-prctl-Introduce-PR_-SET-GET-_MEM_MODEL.patch b/patches/0014-prctl-Introduce-PR_-SET-GET-_MEM_MODEL.patch index 3cd3f65d..656c9335 100644 --- a/patches/0014-prctl-Introduce-PR_-SET-GET-_MEM_MODEL.patch +++ b/patches/0014-prctl-Introduce-PR_-SET-GET-_MEM_MODEL.patch @@ -1,7 +1,7 @@ From 6d853f297b8b497b0bc5fd632f5a3a8b61000c66 Mon Sep 17 00:00:00 2001 From: Hector Martin Date: Thu, 11 Apr 2024 09:51:20 +0900 -Subject: [PATCH 14/36] prctl: Introduce PR_{SET,GET}_MEM_MODEL +Subject: [PATCH 14/38] prctl: Introduce PR_{SET,GET}_MEM_MODEL On some architectures, it is possible to query and/or change the CPU memory model. This allows userspace to switch to a stricter memory model diff --git a/patches/0015-arm64-Implement-PR_-GET-SET-_MEM_MODEL-for-always-TS.patch b/patches/0015-arm64-Implement-PR_-GET-SET-_MEM_MODEL-for-always-TS.patch index e865c2fe..2b90cf86 100644 --- a/patches/0015-arm64-Implement-PR_-GET-SET-_MEM_MODEL-for-always-TS.patch +++ b/patches/0015-arm64-Implement-PR_-GET-SET-_MEM_MODEL-for-always-TS.patch @@ -1,7 +1,7 @@ From 8e536a62edd22dd81987aade17e01bda5fc918f7 Mon Sep 17 00:00:00 2001 From: Hector Martin Date: Thu, 11 Apr 2024 09:51:21 +0900 -Subject: [PATCH 15/36] arm64: Implement PR_{GET,SET}_MEM_MODEL for always-TSO +Subject: [PATCH 15/38] arm64: Implement PR_{GET,SET}_MEM_MODEL for always-TSO CPUs Some ARM64 implementations are known to always use the TSO memory model. diff --git a/patches/0016-arm64-Introduce-scaffolding-to-add-ACTLR_EL1-to-thre.patch b/patches/0016-arm64-Introduce-scaffolding-to-add-ACTLR_EL1-to-thre.patch index 296c5ba1..decc00af 100644 --- a/patches/0016-arm64-Introduce-scaffolding-to-add-ACTLR_EL1-to-thre.patch +++ b/patches/0016-arm64-Introduce-scaffolding-to-add-ACTLR_EL1-to-thre.patch @@ -1,7 +1,7 @@ From 4909f68d1d65a28af8ab2fa23b3b1209cf2b2cdd Mon Sep 17 00:00:00 2001 From: Hector Martin Date: Thu, 11 Apr 2024 09:51:22 +0900 -Subject: [PATCH 16/36] arm64: Introduce scaffolding to add ACTLR_EL1 to thread +Subject: [PATCH 16/38] arm64: Introduce scaffolding to add ACTLR_EL1 to thread state Some CPUs expose IMPDEF features in ACTLR_EL1 that can be meaningfully diff --git a/patches/0017-arm64-Implement-Apple-IMPDEF-TSO-memory-model-contro.patch b/patches/0017-arm64-Implement-Apple-IMPDEF-TSO-memory-model-contro.patch index f57e6829..05e52f37 100644 --- a/patches/0017-arm64-Implement-Apple-IMPDEF-TSO-memory-model-contro.patch +++ b/patches/0017-arm64-Implement-Apple-IMPDEF-TSO-memory-model-contro.patch @@ -1,7 +1,7 @@ From c4057360186d0047a721c9852bc1d7a633139580 Mon Sep 17 00:00:00 2001 From: Hector Martin Date: Thu, 11 Apr 2024 09:51:23 +0900 -Subject: [PATCH 17/36] arm64: Implement Apple IMPDEF TSO memory model control +Subject: [PATCH 17/38] arm64: Implement Apple IMPDEF TSO memory model control Apple CPUs may implement the TSO memory model as an optional configurable mode. This allows x86 emulators to simplify their diff --git a/patches/0019-Enable-64-bit-processes-to-use-compat-input-syscalls.patch b/patches/0018-Enable-64-bit-processes-to-use-compat-input-syscalls.patch similarity index 97% rename from patches/0019-Enable-64-bit-processes-to-use-compat-input-syscalls.patch rename to patches/0018-Enable-64-bit-processes-to-use-compat-input-syscalls.patch index e65fe658..51ff0052 100644 --- a/patches/0019-Enable-64-bit-processes-to-use-compat-input-syscalls.patch +++ b/patches/0018-Enable-64-bit-processes-to-use-compat-input-syscalls.patch @@ -1,7 +1,7 @@ -From 62efc5665240814f15f351cb37c29264e6e8d2f6 Mon Sep 17 00:00:00 2001 +From 9a77b95ba50cdc2bf2d15a559f74d09f1f449cb9 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Tue, 8 Oct 2024 11:24:25 +0200 -Subject: [PATCH 19/36] Enable 64 bit processes to use compat input syscalls +Subject: [PATCH 18/38] Enable 64 bit processes to use compat input syscalls The compat variant of input syscalls is only enabled for 32 bit tasks, but in some cases, such as userspace emulation, it's useful to diff --git a/patches/0018-drm-virtio-Support-fence-passing-feature.patch b/patches/0018-drm-virtio-Support-fence-passing-feature.patch deleted file mode 100644 index d67cb407..00000000 --- a/patches/0018-drm-virtio-Support-fence-passing-feature.patch +++ /dev/null @@ -1,454 +0,0 @@ -From c30236a930949a21bb9be1820d2b14011eee64a8 Mon Sep 17 00:00:00 2001 -From: Dmitry Osipenko -Date: Sat, 7 Oct 2023 22:47:47 +0300 -Subject: [PATCH 18/36] drm/virtio: Support fence-passing feature - -Support extended version of VIRTIO_GPU_CMD_SUBMIT_3D command that allows -passing in-fence IDs to host for waiting, removing need to do expensive -host-guest roundtrips in a case of waiting for fences on a guest side. - -Guest userspace must enable new VIRTGPU_CONTEXT_PARAM_FENCE_PASSING flag -and host must support new VIRTIO_GPU_F_FENCE_PASSING feature in order to -activate the fence passing for a given virtio-gpu context. Array of -in-fence IDs is then prepended to the VIRTIO_GPU_CMD_SUBMIT_3D's data, -the previously unused padding field of the command is reused for the -number of in-fences. - -A new VIRTGPU_EXECBUF_SHARED_FENCE flag is added to the job submission -UAPI and must be set by userspace if it wants to make fence shareable -with/on host. Certain jobs won't want to share fence, in particular Venus -will benefit from this flag. - -Link: https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/1138 -Link: https://gitlab.freedesktop.org/digetx/qemu/-/commits/native-context-iris -Link: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/4679609 -Signed-off-by: Dmitry Osipenko ---- - drivers/gpu/drm/virtio/virtgpu_drv.c | 1 + - drivers/gpu/drm/virtio/virtgpu_drv.h | 11 ++- - drivers/gpu/drm/virtio/virtgpu_fence.c | 15 +++- - drivers/gpu/drm/virtio/virtgpu_ioctl.c | 11 ++- - drivers/gpu/drm/virtio/virtgpu_kms.c | 8 +- - drivers/gpu/drm/virtio/virtgpu_submit.c | 99 ++++++++++++++++++++++++- - drivers/gpu/drm/virtio/virtgpu_vq.c | 7 +- - include/uapi/drm/virtgpu_drm.h | 3 + - include/uapi/linux/virtio_gpu.h | 11 ++- - 9 files changed, 152 insertions(+), 14 deletions(-) - -diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.c b/drivers/gpu/drm/virtio/virtgpu_drv.c -index 44d99e89bb9b..4ec7f4ea3ac4 100644 ---- a/drivers/gpu/drm/virtio/virtgpu_drv.c -+++ b/drivers/gpu/drm/virtio/virtgpu_drv.c -@@ -152,6 +152,7 @@ static unsigned int features[] = { - VIRTIO_GPU_F_RESOURCE_UUID, - VIRTIO_GPU_F_RESOURCE_BLOB, - VIRTIO_GPU_F_CONTEXT_INIT, -+ VIRTIO_GPU_F_FENCE_PASSING, - }; - static struct virtio_driver virtio_gpu_driver = { - .feature_table = features, -diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.h b/drivers/gpu/drm/virtio/virtgpu_drv.h -index ca0f7dcc99a2..d360cdf419e8 100644 ---- a/drivers/gpu/drm/virtio/virtgpu_drv.h -+++ b/drivers/gpu/drm/virtio/virtgpu_drv.h -@@ -152,6 +152,7 @@ struct virtio_gpu_fence { - struct virtio_gpu_fence_event *e; - struct virtio_gpu_fence_driver *drv; - struct list_head node; -+ bool host_shareable; - }; - - struct virtio_gpu_vbuffer { -@@ -256,6 +257,7 @@ struct virtio_gpu_device { - bool has_resource_blob; - bool has_host_visible; - bool has_context_init; -+ bool has_fence_passing; - struct virtio_shm_region host_visible_region; - struct drm_mm host_visible_mm; - -@@ -283,6 +285,7 @@ struct virtio_gpu_fpriv { - uint32_t num_rings; - uint64_t base_fence_ctx; - uint64_t ring_idx_mask; -+ bool fence_passing_enabled; - struct mutex context_lock; - char debug_name[DEBUG_NAME_MAX_LEN]; - bool explicit_debug_name; -@@ -380,7 +383,9 @@ void virtio_gpu_cmd_submit(struct virtio_gpu_device *vgdev, - void *data, uint32_t data_size, - uint32_t ctx_id, - struct virtio_gpu_object_array *objs, -- struct virtio_gpu_fence *fence); -+ struct virtio_gpu_fence *fence, -+ uint32_t cmd_size, -+ unsigned int num_in_fences); - void virtio_gpu_cmd_transfer_from_host_3d(struct virtio_gpu_device *vgdev, - uint32_t ctx_id, - uint64_t offset, uint32_t level, -@@ -433,6 +438,9 @@ virtio_gpu_cmd_set_scanout_blob(struct virtio_gpu_device *vgdev, - uint32_t width, uint32_t height, - uint32_t x, uint32_t y); - -+void virtio_gpu_cmd_in_fence(struct virtio_gpu_device *vgdev, -+ uint32_t ctx_id, uint64_t fence_id); -+ - /* virtgpu_display.c */ - int virtio_gpu_modeset_init(struct virtio_gpu_device *vgdev); - void virtio_gpu_modeset_fini(struct virtio_gpu_device *vgdev); -@@ -452,6 +460,7 @@ void virtio_gpu_fence_emit(struct virtio_gpu_device *vgdev, - struct virtio_gpu_fence *fence); - void virtio_gpu_fence_event_process(struct virtio_gpu_device *vdev, - u64 fence_id); -+struct virtio_gpu_fence *to_virtio_gpu_fence(struct dma_fence *dma_fence); - - /* virtgpu_object.c */ - void virtio_gpu_cleanup_object(struct virtio_gpu_object *bo); -diff --git a/drivers/gpu/drm/virtio/virtgpu_fence.c b/drivers/gpu/drm/virtio/virtgpu_fence.c -index f28357dbde35..1fd3cfeca2f5 100644 ---- a/drivers/gpu/drm/virtio/virtgpu_fence.c -+++ b/drivers/gpu/drm/virtio/virtgpu_fence.c -@@ -27,9 +27,6 @@ - - #include "virtgpu_drv.h" - --#define to_virtio_gpu_fence(x) \ -- container_of(x, struct virtio_gpu_fence, f) -- - static const char *virtio_gpu_get_driver_name(struct dma_fence *f) - { - return "virtio_gpu"; -@@ -71,6 +68,14 @@ static const struct dma_fence_ops virtio_gpu_fence_ops = { - .timeline_value_str = virtio_gpu_timeline_value_str, - }; - -+struct virtio_gpu_fence *to_virtio_gpu_fence(struct dma_fence *dma_fence) -+{ -+ if (dma_fence->ops != &virtio_gpu_fence_ops) -+ return NULL; -+ -+ return container_of(dma_fence, struct virtio_gpu_fence, f); -+} -+ - struct virtio_gpu_fence *virtio_gpu_fence_alloc(struct virtio_gpu_device *vgdev, - uint64_t base_fence_ctx, - uint32_t ring_idx) -@@ -122,6 +127,10 @@ void virtio_gpu_fence_emit(struct virtio_gpu_device *vgdev, - cpu_to_le32(VIRTIO_GPU_FLAG_INFO_RING_IDX); - cmd_hdr->ring_idx = (u8)fence->ring_idx; - } -+ -+ if (fence->host_shareable) -+ cmd_hdr->flags |= -+ cpu_to_le32(VIRTIO_GPU_FLAG_FENCE_SHAREABLE); - } - - void virtio_gpu_fence_event_process(struct virtio_gpu_device *vgdev, -diff --git a/drivers/gpu/drm/virtio/virtgpu_ioctl.c b/drivers/gpu/drm/virtio/virtgpu_ioctl.c -index e4f76f315550..894f3fd14c51 100644 ---- a/drivers/gpu/drm/virtio/virtgpu_ioctl.c -+++ b/drivers/gpu/drm/virtio/virtgpu_ioctl.c -@@ -524,7 +524,8 @@ static int virtio_gpu_resource_create_blob_ioctl(struct drm_device *dev, - return PTR_ERR(buf); - - virtio_gpu_cmd_submit(vgdev, buf, rc_blob->cmd_size, -- vfpriv->ctx_id, NULL, NULL); -+ vfpriv->ctx_id, NULL, NULL, -+ rc_blob->cmd_size, 0); - } - - if (guest_blob) -@@ -667,6 +668,14 @@ static int virtio_gpu_context_init_ioctl(struct drm_device *dev, - vfpriv->explicit_debug_name = true; - ret = 0; - break; -+ case VIRTGPU_CONTEXT_PARAM_FENCE_PASSING: -+ if (!vgdev->has_fence_passing && value) { -+ ret = -EINVAL; -+ goto out_unlock; -+ } -+ -+ vfpriv->fence_passing_enabled = !!value; -+ break; - default: - ret = -EINVAL; - goto out_unlock; -diff --git a/drivers/gpu/drm/virtio/virtgpu_kms.c b/drivers/gpu/drm/virtio/virtgpu_kms.c -index ec31a41d33d6..14e0886ca96e 100644 ---- a/drivers/gpu/drm/virtio/virtgpu_kms.c -+++ b/drivers/gpu/drm/virtio/virtgpu_kms.c -@@ -199,12 +199,16 @@ int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev) - if (virtio_has_feature(vgdev->vdev, VIRTIO_GPU_F_CONTEXT_INIT)) { - vgdev->has_context_init = true; - } -+ if (virtio_has_feature(vgdev->vdev, VIRTIO_GPU_F_FENCE_PASSING)) { -+ vgdev->has_fence_passing = true; -+ } - -- DRM_INFO("features: %cvirgl %cedid %cresource_blob %chost_visible", -+ DRM_INFO("features: %cvirgl %cedid %cresource_blob %chost_visible %cfence_passing", - vgdev->has_virgl_3d ? '+' : '-', - vgdev->has_edid ? '+' : '-', - vgdev->has_resource_blob ? '+' : '-', -- vgdev->has_host_visible ? '+' : '-'); -+ vgdev->has_host_visible ? '+' : '-', -+ vgdev->has_fence_passing ? '+' : '-'); - - DRM_INFO("features: %ccontext_init\n", - vgdev->has_context_init ? '+' : '-'); -diff --git a/drivers/gpu/drm/virtio/virtgpu_submit.c b/drivers/gpu/drm/virtio/virtgpu_submit.c -index 409ecdb0d680..db3642591028 100644 ---- a/drivers/gpu/drm/virtio/virtgpu_submit.c -+++ b/drivers/gpu/drm/virtio/virtgpu_submit.c -@@ -25,6 +25,11 @@ struct virtio_gpu_submit_post_dep { - u64 point; - }; - -+struct virtio_gpu_in_fence { -+ u64 id; -+ u32 context; -+}; -+ - struct virtio_gpu_submit { - struct virtio_gpu_submit_post_dep *post_deps; - unsigned int num_out_syncobjs; -@@ -32,6 +37,9 @@ struct virtio_gpu_submit { - struct drm_syncobj **in_syncobjs; - unsigned int num_in_syncobjs; - -+ struct virtio_gpu_in_fence *in_fences; -+ unsigned int num_in_fences; -+ - struct virtio_gpu_object_array *buflist; - struct drm_virtgpu_execbuffer *exbuf; - struct virtio_gpu_fence *out_fence; -@@ -41,6 +49,8 @@ struct virtio_gpu_submit { - struct drm_file *file; - int out_fence_fd; - u64 fence_ctx; -+ u32 data_size; -+ u32 cmd_size; - u32 ring_idx; - void *buf; - }; -@@ -48,11 +58,44 @@ struct virtio_gpu_submit { - static int virtio_gpu_do_fence_wait(struct virtio_gpu_submit *submit, - struct dma_fence *in_fence) - { -+ struct virtio_gpu_fence *fence = to_virtio_gpu_fence(in_fence); - u64 context = submit->fence_ctx + submit->ring_idx; -+ struct virtio_gpu_in_fence *vfence, *in_fences; -+ u32 i; - - if (dma_fence_match_context(in_fence, context)) - return 0; - -+ if (fence && fence->host_shareable && -+ submit->vfpriv->fence_passing_enabled) { -+ /* -+ * Merge sync_file + syncobj in-fences to avoid sending more -+ * than one fence per-context to host. Use latest fence from -+ * the same context. -+ */ -+ for (i = 0; i < submit->num_in_fences; i++) { -+ vfence = &submit->in_fences[i]; -+ -+ if (dma_fence_match_context(in_fence, vfence->context)) { -+ vfence->id = max(vfence->id, fence->fence_id); -+ return 0; -+ } -+ } -+ -+ in_fences = krealloc_array(submit->in_fences, -+ submit->num_in_fences + 1, -+ sizeof(*in_fences), GFP_KERNEL); -+ if (!in_fences) -+ return -ENOMEM; -+ -+ in_fences[submit->num_in_fences].id = fence->fence_id; -+ in_fences[submit->num_in_fences].context = context; -+ submit->in_fences = in_fences; -+ submit->num_in_fences++; -+ -+ return 0; -+ } -+ - return dma_fence_wait(in_fence, true); - } - -@@ -333,6 +376,7 @@ static void virtio_gpu_cleanup_submit(struct virtio_gpu_submit *submit) - virtio_gpu_reset_syncobjs(submit->in_syncobjs, submit->num_in_syncobjs); - virtio_gpu_free_syncobjs(submit->in_syncobjs, submit->num_in_syncobjs); - virtio_gpu_free_post_deps(submit->post_deps, submit->num_out_syncobjs); -+ kfree(submit->in_fences); - - if (!IS_ERR(submit->buf)) - kvfree(submit->buf); -@@ -350,12 +394,51 @@ static void virtio_gpu_cleanup_submit(struct virtio_gpu_submit *submit) - fput(submit->sync_file->file); - } - --static void virtio_gpu_submit(struct virtio_gpu_submit *submit) -+static int virtio_gpu_attach_in_fences(struct virtio_gpu_submit *submit) -+{ -+ size_t in_fences_size = sizeof(u64) * submit->num_in_fences; -+ size_t new_data_size = submit->data_size + in_fences_size; -+ void *buf = submit->buf; -+ u64 *in_fences; -+ unsigned int i; -+ -+ if (new_data_size < submit->data_size) -+ return -EINVAL; -+ -+ buf = kvrealloc(buf, new_data_size, GFP_KERNEL); -+ if (!buf) -+ return -ENOMEM; -+ -+ memmove(buf + in_fences_size, buf, submit->data_size); -+ in_fences = buf; -+ -+ for (i = 0; i < submit->num_in_fences; i++) -+ in_fences[i] = cpu_to_le64(submit->in_fences[i].id); -+ -+ submit->data_size = new_data_size; -+ submit->buf = buf; -+ -+ return 0; -+} -+ -+static int virtio_gpu_submit(struct virtio_gpu_submit *submit) - { -- virtio_gpu_cmd_submit(submit->vgdev, submit->buf, submit->exbuf->size, -+ int err; -+ -+ if (submit->num_in_fences) { -+ err = virtio_gpu_attach_in_fences(submit); -+ if (err) -+ return err; -+ } -+ -+ virtio_gpu_cmd_submit(submit->vgdev, submit->buf, submit->data_size, - submit->vfpriv->ctx_id, submit->buflist, -- submit->out_fence); -+ submit->out_fence, submit->cmd_size, -+ submit->num_in_fences); -+ - virtio_gpu_notify(submit->vgdev); -+ -+ return 0; - } - - static void virtio_gpu_complete_submit(struct virtio_gpu_submit *submit) -@@ -402,6 +485,12 @@ static int virtio_gpu_init_submit(struct virtio_gpu_submit *submit, - } - } - -+ if ((exbuf->flags & VIRTGPU_EXECBUF_SHARED_FENCE) && -+ vfpriv->fence_passing_enabled && out_fence) -+ out_fence->host_shareable = true; -+ -+ submit->data_size = exbuf->size; -+ submit->cmd_size = exbuf->size; - submit->out_fence = out_fence; - submit->fence_ctx = fence_ctx; - submit->ring_idx = ring_idx; -@@ -528,7 +617,9 @@ int virtio_gpu_execbuffer_ioctl(struct drm_device *dev, void *data, - if (ret) - goto cleanup; - -- virtio_gpu_submit(&submit); -+ ret = virtio_gpu_submit(&submit); -+ if (ret) -+ goto cleanup; - - /* - * Set up user-out data after submitting the job to optimize -diff --git a/drivers/gpu/drm/virtio/virtgpu_vq.c b/drivers/gpu/drm/virtio/virtgpu_vq.c -index 4369275cb56b..a870f10136b8 100644 ---- a/drivers/gpu/drm/virtio/virtgpu_vq.c -+++ b/drivers/gpu/drm/virtio/virtgpu_vq.c -@@ -1077,7 +1077,9 @@ void virtio_gpu_cmd_submit(struct virtio_gpu_device *vgdev, - void *data, uint32_t data_size, - uint32_t ctx_id, - struct virtio_gpu_object_array *objs, -- struct virtio_gpu_fence *fence) -+ struct virtio_gpu_fence *fence, -+ uint32_t cmd_size, -+ unsigned int num_in_fences) - { - struct virtio_gpu_cmd_submit *cmd_p; - struct virtio_gpu_vbuffer *vbuf; -@@ -1091,7 +1093,8 @@ void virtio_gpu_cmd_submit(struct virtio_gpu_device *vgdev, - - cmd_p->hdr.type = cpu_to_le32(VIRTIO_GPU_CMD_SUBMIT_3D); - cmd_p->hdr.ctx_id = cpu_to_le32(ctx_id); -- cmd_p->size = cpu_to_le32(data_size); -+ cmd_p->size = cpu_to_le32(cmd_size); -+ cmd_p->num_in_fences = cpu_to_le32(num_in_fences); - - virtio_gpu_queue_fenced_ctrl_buffer(vgdev, vbuf, fence); - } -diff --git a/include/uapi/drm/virtgpu_drm.h b/include/uapi/drm/virtgpu_drm.h -index c2ce71987e9b..2bb2d3a0c7bd 100644 ---- a/include/uapi/drm/virtgpu_drm.h -+++ b/include/uapi/drm/virtgpu_drm.h -@@ -52,10 +52,12 @@ extern "C" { - #define VIRTGPU_EXECBUF_FENCE_FD_IN 0x01 - #define VIRTGPU_EXECBUF_FENCE_FD_OUT 0x02 - #define VIRTGPU_EXECBUF_RING_IDX 0x04 -+#define VIRTGPU_EXECBUF_SHARED_FENCE 0x08 - #define VIRTGPU_EXECBUF_FLAGS (\ - VIRTGPU_EXECBUF_FENCE_FD_IN |\ - VIRTGPU_EXECBUF_FENCE_FD_OUT |\ - VIRTGPU_EXECBUF_RING_IDX |\ -+ VIRTGPU_EXECBUF_SHARED_FENCE |\ - 0) - - struct drm_virtgpu_map { -@@ -200,6 +202,7 @@ struct drm_virtgpu_resource_create_blob { - #define VIRTGPU_CONTEXT_PARAM_NUM_RINGS 0x0002 - #define VIRTGPU_CONTEXT_PARAM_POLL_RINGS_MASK 0x0003 - #define VIRTGPU_CONTEXT_PARAM_DEBUG_NAME 0x0004 -+#define VIRTGPU_CONTEXT_PARAM_FENCE_PASSING 0x0005 - struct drm_virtgpu_context_set_param { - __u64 param; - __u64 value; -diff --git a/include/uapi/linux/virtio_gpu.h b/include/uapi/linux/virtio_gpu.h -index bf2c9cabd207..ceb656264aa0 100644 ---- a/include/uapi/linux/virtio_gpu.h -+++ b/include/uapi/linux/virtio_gpu.h -@@ -65,6 +65,11 @@ - */ - #define VIRTIO_GPU_F_CONTEXT_INIT 4 - -+/* -+ * VIRTIO_GPU_CMD_SUBMIT_3D -+ */ -+#define VIRTIO_GPU_F_FENCE_PASSING 5 -+ - enum virtio_gpu_ctrl_type { - VIRTIO_GPU_UNDEFINED = 0, - -@@ -133,6 +138,10 @@ enum virtio_gpu_shm_id { - * of the command ring that needs to used when creating the fence - */ - #define VIRTIO_GPU_FLAG_INFO_RING_IDX (1 << 1) -+/* -+ * The fence is shareable between host contexts if flag is set. -+ */ -+#define VIRTIO_GPU_FLAG_FENCE_SHAREABLE (1 << 2) - - struct virtio_gpu_ctrl_hdr { - __le32 type; -@@ -304,7 +313,7 @@ struct virtio_gpu_ctx_resource { - struct virtio_gpu_cmd_submit { - struct virtio_gpu_ctrl_hdr hdr; - __le32 size; -- __le32 padding; -+ __le32 num_in_fences; - }; - - #define VIRTIO_GPU_CAPSET_VIRGL 1 --- -2.55.0 - diff --git a/patches/0020-dax-Allow-block-size-PAGE_SIZE.patch b/patches/0019-dax-Allow-block-size-PAGE_SIZE.patch similarity index 91% rename from patches/0020-dax-Allow-block-size-PAGE_SIZE.patch rename to patches/0019-dax-Allow-block-size-PAGE_SIZE.patch index 57445f14..e2abd22b 100644 --- a/patches/0020-dax-Allow-block-size-PAGE_SIZE.patch +++ b/patches/0019-dax-Allow-block-size-PAGE_SIZE.patch @@ -1,7 +1,7 @@ -From 0d1373e19040b82a50d9c81fe42a9a16485c7602 Mon Sep 17 00:00:00 2001 +From 9687692ffd4db993bdd283dd0b7cdb2efa23e948 Mon Sep 17 00:00:00 2001 From: Asahi Lina Date: Sun, 20 Oct 2024 01:23:41 +0900 -Subject: [PATCH 20/36] dax: Allow block size > PAGE_SIZE +Subject: [PATCH 19/38] dax: Allow block size > PAGE_SIZE For virtio-dax, the file/FS blocksize is irrelevant. FUSE always uses large DAX blocks (2MiB), which will work with all host page sizes. Since diff --git a/patches/0021-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch b/patches/0020-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch similarity index 96% rename from patches/0021-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch rename to patches/0020-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch index 3e856fbe..f10d71a2 100644 --- a/patches/0021-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch +++ b/patches/0020-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch @@ -1,7 +1,7 @@ -From e008b5b793f8c50fb80864a547944ac24347aab5 Mon Sep 17 00:00:00 2001 +From 78dac7c17e313d2d9ed65878986ae080ad5f85da Mon Sep 17 00:00:00 2001 From: Asahi Lina Date: Mon, 21 Oct 2024 23:21:16 +0900 -Subject: [PATCH 21/36] mm: Fix __wp_page_copy_user fallback path for remote mm +Subject: [PATCH 20/38] mm: Fix __wp_page_copy_user fallback path for remote mm If the source page is a PFN mapping, we copy back from userspace. However, if this fault is a remote access, we cannot use diff --git a/patches/0022-virtgpu-gem-partial-map.patch b/patches/0021-virtgpu-gem-partial-map.patch similarity index 90% rename from patches/0022-virtgpu-gem-partial-map.patch rename to patches/0021-virtgpu-gem-partial-map.patch index 94451776..cbb16199 100644 --- a/patches/0022-virtgpu-gem-partial-map.patch +++ b/patches/0021-virtgpu-gem-partial-map.patch @@ -1,7 +1,7 @@ -From 9528ae2b9840a9a27194b8c94484a4b37a656b70 Mon Sep 17 00:00:00 2001 +From 06f12095992e7293073e364c8769e9f040f2a29c Mon Sep 17 00:00:00 2001 From: Sasha Finkelstein Date: Fri, 17 Jan 2025 12:34:23 +0100 -Subject: [PATCH 22/36] virtgpu: gem partial map +Subject: [PATCH 21/38] virtgpu: gem partial map Those are useful to implement coherent cross-vm mmap. diff --git a/patches/0023-virtgpu-mixed-page-size.patch b/patches/0022-virtgpu-mixed-page-size.patch similarity index 92% rename from patches/0023-virtgpu-mixed-page-size.patch rename to patches/0022-virtgpu-mixed-page-size.patch index ac32d1b4..0189a980 100644 --- a/patches/0023-virtgpu-mixed-page-size.patch +++ b/patches/0022-virtgpu-mixed-page-size.patch @@ -1,7 +1,7 @@ -From 2a19c64a78b11a982d7acbc1153002dce25cb49f Mon Sep 17 00:00:00 2001 +From 881cd13daa212b0b4d3b5e5f8b8d9bf73d565b9b Mon Sep 17 00:00:00 2001 From: Sasha Finkelstein Date: Fri, 17 Jan 2025 12:34:28 +0100 -Subject: [PATCH 23/36] virtgpu: mixed page size +Subject: [PATCH 22/38] virtgpu: mixed page size This allows running different page sizes between host and guest on platforms that support mixed page sizes. diff --git a/patches/0024-fuse-mark-DAX-inode-releases-as-blocking.patch b/patches/0023-fuse-mark-DAX-inode-releases-as-blocking.patch similarity index 95% rename from patches/0024-fuse-mark-DAX-inode-releases-as-blocking.patch rename to patches/0023-fuse-mark-DAX-inode-releases-as-blocking.patch index b481fd3f..8845126e 100644 --- a/patches/0024-fuse-mark-DAX-inode-releases-as-blocking.patch +++ b/patches/0023-fuse-mark-DAX-inode-releases-as-blocking.patch @@ -1,7 +1,7 @@ -From f26b563f493d2cb211a6e8ef9824da3cb1274bec Mon Sep 17 00:00:00 2001 +From f89e93e9cf72f04a5cbbc8cdfd162db2c0bd2ca4 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Sun, 18 Jan 2026 23:37:30 +0100 -Subject: [PATCH 24/36] fuse: mark DAX inode releases as blocking +Subject: [PATCH 23/38] fuse: mark DAX inode releases as blocking Commit 26e5c67deb2e ("fuse: fix livelock in synchronous file put from fuseblk workers") made fputs on closing files always asynchronous. diff --git a/patches/0025-can-virtio-Add-virtio-CAN-driver.patch b/patches/0024-can-virtio-Add-virtio-CAN-driver.patch similarity index 99% rename from patches/0025-can-virtio-Add-virtio-CAN-driver.patch rename to patches/0024-can-virtio-Add-virtio-CAN-driver.patch index a381b6f7..b3f1a487 100644 --- a/patches/0025-can-virtio-Add-virtio-CAN-driver.patch +++ b/patches/0024-can-virtio-Add-virtio-CAN-driver.patch @@ -1,7 +1,7 @@ -From b102a9d8f6ae4688477c93f034a354107d2bb366 Mon Sep 17 00:00:00 2001 +From 82c33f501cc6ad349298e3d2de6a8317e0e9cc89 Mon Sep 17 00:00:00 2001 From: Matias Ezequiel Vara Larsen Date: Fri, 8 May 2026 14:23:37 +0200 -Subject: [PATCH 25/36] can: virtio: Add virtio CAN driver +Subject: [PATCH 24/38] can: virtio: Add virtio CAN driver Add virtio CAN driver based on Virtio 1.4 specification (see https://github.com/oasis-tcs/virtio-spec/tree/virtio-1.4). The driver diff --git a/patches/0026-virtio_rtc-Add-module-and-driver-core.patch b/patches/0025-virtio_rtc-Add-module-and-driver-core.patch similarity index 99% rename from patches/0026-virtio_rtc-Add-module-and-driver-core.patch rename to patches/0025-virtio_rtc-Add-module-and-driver-core.patch index 2486e004..662b72e4 100644 --- a/patches/0026-virtio_rtc-Add-module-and-driver-core.patch +++ b/patches/0025-virtio_rtc-Add-module-and-driver-core.patch @@ -1,7 +1,7 @@ -From efe3e5fc34c3af1fec4e09a27d67caf6851fd1dd Mon Sep 17 00:00:00 2001 +From 36ab36c64faafa209a3d40a4eb43beb173f13a45 Mon Sep 17 00:00:00 2001 From: Peter Hilber Date: Fri, 9 May 2025 18:07:22 +0200 -Subject: [PATCH 26/36] virtio_rtc: Add module and driver core +Subject: [PATCH 25/38] virtio_rtc: Add module and driver core Add the virtio_rtc module and driver core. The virtio_rtc module implements a driver compatible with the proposed Virtio RTC device specification. diff --git a/patches/0027-virtio_rtc-Add-PTP-clocks.patch b/patches/0026-virtio_rtc-Add-PTP-clocks.patch similarity index 99% rename from patches/0027-virtio_rtc-Add-PTP-clocks.patch rename to patches/0026-virtio_rtc-Add-PTP-clocks.patch index 1ea11478..4f8a7f8f 100644 --- a/patches/0027-virtio_rtc-Add-PTP-clocks.patch +++ b/patches/0026-virtio_rtc-Add-PTP-clocks.patch @@ -1,7 +1,7 @@ -From 1c5498cbd13e00dfecc58899e617324ea1602752 Mon Sep 17 00:00:00 2001 +From a1fc399e1d33181b682843c24e23e00e98506d95 Mon Sep 17 00:00:00 2001 From: Peter Hilber Date: Fri, 9 May 2025 18:07:23 +0200 -Subject: [PATCH 27/36] virtio_rtc: Add PTP clocks +Subject: [PATCH 26/38] virtio_rtc: Add PTP clocks Expose the virtio_rtc clocks as PTP clocks to userspace, similar to ptp_kvm. virtio_rtc can expose multiple clocks, e.g. a UTC clock and a diff --git a/patches/0028-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch b/patches/0027-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch similarity index 95% rename from patches/0028-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch rename to patches/0027-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch index a816a924..5c00a014 100644 --- a/patches/0028-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch +++ b/patches/0027-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch @@ -1,7 +1,7 @@ -From 458268cd703c55a02240ee50a390af5cd7d91879 Mon Sep 17 00:00:00 2001 +From b8cb81b245541d10ad4e8071ef98110d1614e70e Mon Sep 17 00:00:00 2001 From: Peter Hilber Date: Fri, 9 May 2025 18:07:24 +0200 -Subject: [PATCH 28/36] virtio_rtc: Add Arm Generic Timer cross-timestamping +Subject: [PATCH 27/38] virtio_rtc: Add Arm Generic Timer cross-timestamping For platforms using the Arm Generic Timer, add precise cross-timestamping support to virtio_rtc. diff --git a/patches/0029-virtio_rtc-Add-RTC-class-driver.patch b/patches/0028-virtio_rtc-Add-RTC-class-driver.patch similarity index 99% rename from patches/0029-virtio_rtc-Add-RTC-class-driver.patch rename to patches/0028-virtio_rtc-Add-RTC-class-driver.patch index 6004f315..b6919c55 100644 --- a/patches/0029-virtio_rtc-Add-RTC-class-driver.patch +++ b/patches/0028-virtio_rtc-Add-RTC-class-driver.patch @@ -1,7 +1,7 @@ -From 33a0096f1f4af0d0ca0b1d4a2f364642e27a302a Mon Sep 17 00:00:00 2001 +From 049d63ec8ad84a4bd471b86ffa819fd6d393df7e Mon Sep 17 00:00:00 2001 From: Peter Hilber Date: Fri, 9 May 2025 18:07:25 +0200 -Subject: [PATCH 29/36] virtio_rtc: Add RTC class driver +Subject: [PATCH 28/38] virtio_rtc: Add RTC class driver Expose the virtio-rtc UTC-like clock as an RTC clock to userspace - if it is present, and if it does not step on leap seconds. The RTC class enables diff --git a/patches/0030-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch b/patches/0029-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch similarity index 91% rename from patches/0030-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch rename to patches/0029-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch index 007a67df..913d7e7d 100644 --- a/patches/0030-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch +++ b/patches/0029-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch @@ -1,7 +1,7 @@ -From 2d8290a9272f96efddd9551c607bf931b0be4030 Mon Sep 17 00:00:00 2001 +From 73e82d5dfa2dce38c8e73950aaf09f95459f6cae Mon Sep 17 00:00:00 2001 From: Dorinda Bassey Date: Wed, 29 Apr 2026 11:35:00 +0200 -Subject: [PATCH 30/36] virtio_rtc: Fix compatibility for kernel 6.12 +Subject: [PATCH 29/38] virtio_rtc: Fix compatibility for kernel 6.12 Backport virtio_rtc driver to kernel 6.12 by fixing API differences: diff --git a/patches/0031-media-virtio-Add-skeleton-virtio-media-driver.patch b/patches/0030-media-virtio-Add-skeleton-virtio-media-driver.patch similarity index 99% rename from patches/0031-media-virtio-Add-skeleton-virtio-media-driver.patch rename to patches/0030-media-virtio-Add-skeleton-virtio-media-driver.patch index d037bf7b..d450093a 100644 --- a/patches/0031-media-virtio-Add-skeleton-virtio-media-driver.patch +++ b/patches/0030-media-virtio-Add-skeleton-virtio-media-driver.patch @@ -1,7 +1,7 @@ -From 69ed5b8004028f1e588d35369f2e6148f90d4e7f Mon Sep 17 00:00:00 2001 +From 3f54ab38a866987b9dd9d18ede6301c4db7baa36 Mon Sep 17 00:00:00 2001 From: Brian Daniels Date: Tue, 8 Sep 2026 10:40:13 +0200 -Subject: [PATCH 31/36] media: virtio: Add skeleton virtio-media driver +Subject: [PATCH 30/38] media: virtio: Add skeleton virtio-media driver From: Alexandre Courbot diff --git a/patches/0032-media-virtio-Add-session-management.patch b/patches/0031-media-virtio-Add-session-management.patch similarity index 99% rename from patches/0032-media-virtio-Add-session-management.patch rename to patches/0031-media-virtio-Add-session-management.patch index f2b72004..39a2102d 100644 --- a/patches/0032-media-virtio-Add-session-management.patch +++ b/patches/0031-media-virtio-Add-session-management.patch @@ -1,7 +1,7 @@ -From 9be49fb32b4aeb6e45f214f6443b9cf083d4910b Mon Sep 17 00:00:00 2001 +From 0f24427e944d9bbab964be35318cd530cd12c1b0 Mon Sep 17 00:00:00 2001 From: Brian Daniels Date: Tue, 8 Sep 2026 10:44:39 +0200 -Subject: [PATCH 32/36] media: virtio: Add session management +Subject: [PATCH 31/38] media: virtio: Add session management From: Alexandre Courbot diff --git a/patches/0033-media-virtio-Add-scatterlist-builder.patch b/patches/0032-media-virtio-Add-scatterlist-builder.patch similarity index 99% rename from patches/0033-media-virtio-Add-scatterlist-builder.patch rename to patches/0032-media-virtio-Add-scatterlist-builder.patch index 5e2ea3cd..95011403 100644 --- a/patches/0033-media-virtio-Add-scatterlist-builder.patch +++ b/patches/0032-media-virtio-Add-scatterlist-builder.patch @@ -1,7 +1,7 @@ -From 82b5649718b6a1450e68beb1a9e2ca653c90ab5c Mon Sep 17 00:00:00 2001 +From e840f6ff0cf0be933dbebaf1b2b902bb9175b0f4 Mon Sep 17 00:00:00 2001 From: Brian Daniels Date: Tue, 8 Sep 2026 10:48:24 +0200 -Subject: [PATCH 33/36] media: virtio: Add scatterlist builder +Subject: [PATCH 32/38] media: virtio: Add scatterlist builder From: Alexandre Courbot diff --git a/patches/0034-media-virtio-Add-ioctl-operations-and-driver-logic.patch b/patches/0033-media-virtio-Add-ioctl-operations-and-driver-logic.patch similarity index 99% rename from patches/0034-media-virtio-Add-ioctl-operations-and-driver-logic.patch rename to patches/0033-media-virtio-Add-ioctl-operations-and-driver-logic.patch index 760c26f1..eb6f258e 100644 --- a/patches/0034-media-virtio-Add-ioctl-operations-and-driver-logic.patch +++ b/patches/0033-media-virtio-Add-ioctl-operations-and-driver-logic.patch @@ -1,7 +1,7 @@ -From 38ef95306de88ccc689e06500088d18d83fbbd6d Mon Sep 17 00:00:00 2001 +From d85256eb44ab68f2d270843b761c7cf66a454581 Mon Sep 17 00:00:00 2001 From: Brian Daniels Date: Tue, 8 Sep 2026 10:49:26 +0200 -Subject: [PATCH 34/36] media: virtio: Add ioctl operations and driver logic +Subject: [PATCH 33/38] media: virtio: Add ioctl operations and driver logic From: Alexandre Courbot diff --git a/patches/0035-virtio-Add-ID-for-virtio-media.patch b/patches/0034-virtio-Add-ID-for-virtio-media.patch similarity index 85% rename from patches/0035-virtio-Add-ID-for-virtio-media.patch rename to patches/0034-virtio-Add-ID-for-virtio-media.patch index 0af5d990..7ede8731 100644 --- a/patches/0035-virtio-Add-ID-for-virtio-media.patch +++ b/patches/0034-virtio-Add-ID-for-virtio-media.patch @@ -1,7 +1,7 @@ -From c5e1760189b5bd7818e5a62d978de6203e83fcdc Mon Sep 17 00:00:00 2001 +From 08237059687bf415b6ca10ef0a3bba9ea7b69df8 Mon Sep 17 00:00:00 2001 From: Albert Esteve Date: Tue, 10 Mar 2026 09:40:46 +0100 -Subject: [PATCH 35/36] virtio: Add ID for virtio media +Subject: [PATCH 34/38] virtio: Add ID for virtio media Add VIRTIO_ID_MEDIA definition for virtio-media. diff --git a/patches/0036-media-virtio-fix-v4l2-API-for-kernel-6.12.patch b/patches/0035-media-virtio-fix-v4l2-API-for-kernel-6.12.patch similarity index 91% rename from patches/0036-media-virtio-fix-v4l2-API-for-kernel-6.12.patch rename to patches/0035-media-virtio-fix-v4l2-API-for-kernel-6.12.patch index 30c88954..07f8cd6b 100644 --- a/patches/0036-media-virtio-fix-v4l2-API-for-kernel-6.12.patch +++ b/patches/0035-media-virtio-fix-v4l2-API-for-kernel-6.12.patch @@ -1,7 +1,7 @@ -From 268c45840115b4a8e6c771608c9d89603d00073a Mon Sep 17 00:00:00 2001 +From 9a09f34aa1f14535b423ae07ace8fbb77c44a369 Mon Sep 17 00:00:00 2001 From: Dorinda Bassey Date: Tue, 8 Sep 2026 10:51:22 +0200 -Subject: [PATCH 36/36] media: virtio: fix v4l2 API for kernel 6.12 +Subject: [PATCH 35/38] media: virtio: fix v4l2 API for kernel 6.12 Kernel 6.12 lacks two helpers added in later kernels: diff --git a/patches/0037-drm-vblank-timer-infrastructure.patch b/patches/0036-drm-vblank-Add-vblank-timer.patch similarity index 96% rename from patches/0037-drm-vblank-timer-infrastructure.patch rename to patches/0036-drm-vblank-Add-vblank-timer.patch index 61987f24..085d27d7 100644 --- a/patches/0037-drm-vblank-timer-infrastructure.patch +++ b/patches/0036-drm-vblank-Add-vblank-timer.patch @@ -1,7 +1,7 @@ -From 74afeb8128502a529041a2566febd26053a7be11 Mon Sep 17 00:00:00 2001 +From 27e25f85d3cf61f7a45c207ce4d092a7590bae5c Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Tue, 16 Sep 2025 10:36:19 +0200 -Subject: [PATCH] drm/vblank: Add vblank timer +Subject: [PATCH 36/38] drm/vblank: Add vblank timer The vblank timer simulates a vblank interrupt for hardware without support. Rate-limits the display update frequency. @@ -68,7 +68,7 @@ Link: https://lore.kernel.org/r/20250916083816.30275-2-tzimmermann@suse.de create mode 100644 include/drm/drm_vblank_helper.h diff --git a/Documentation/gpu/drm-kms-helpers.rst b/Documentation/gpu/drm-kms-helpers.rst -index 5139705089f200..781129f78b06b8 100644 +index 96c03b9a644e..e6d65457aa16 100644 --- a/Documentation/gpu/drm-kms-helpers.rst +++ b/Documentation/gpu/drm-kms-helpers.rst @@ -92,6 +92,18 @@ GEM Atomic Helper Reference @@ -91,17 +91,21 @@ index 5139705089f200..781129f78b06b8 100644 =========================== diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile -index 4a899e75a25cf..c5ee3e0f1fc6 100644 +index 4a899e75a25c..c5ee3e0f1fc6 100644 --- a/drivers/gpu/drm/Makefile +++ b/drivers/gpu/drm/Makefile -@@ -145,3 +145,4 @@ drm_kms_helper-y := \ +@@ -143,7 +143,8 @@ drm_kms_helper-y := \ + drm_probe_helper.o \ + drm_rect.o \ drm_self_refresh_helper.o \ - drm_simple_kms_helper.o + drm_simple_kms_helper.o \ + drm_vblank_helper.o drm_kms_helper-$(CONFIG_DRM_CLIENT_SETUP) += \ + drm_client_setup.o + drm_kms_helper-$(CONFIG_DRM_PANEL_BRIDGE) += bridge/panel.o diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c -index 46f59883183d97..61e211fd3c9c8a 100644 +index 94e45ed6869d..a07863185d23 100644 --- a/drivers/gpu/drm/drm_vblank.c +++ b/drivers/gpu/drm/drm_vblank.c @@ -136,8 +136,17 @@ @@ -124,7 +128,7 @@ index 46f59883183d97..61e211fd3c9c8a 100644 * automatically generate fake vblank events as part of the display update. * This functionality also can be controlled by the driver by enabling and * disabling struct drm_crtc_state.no_vblank. -@@ -508,6 +517,9 @@ static void drm_vblank_init_release(struct drm_device *dev, void *ptr) +@@ -507,6 +516,9 @@ static void drm_vblank_init_release(struct drm_device *dev, void *ptr) drm_WARN_ON(dev, READ_ONCE(vblank->enabled) && drm_core_check_feature(dev, DRIVER_MODESET)); @@ -132,9 +136,9 @@ index 46f59883183d97..61e211fd3c9c8a 100644 + hrtimer_cancel(&vblank->vblank_timer.timer); + drm_vblank_destroy_worker(vblank); - timer_delete_sync(&vblank->disable_timer); + del_timer_sync(&vblank->disable_timer); } -@@ -2162,3 +2174,159 @@ int drm_crtc_queue_sequence_ioctl(struct drm_device *dev, void *data, +@@ -2161,3 +2173,159 @@ int drm_crtc_queue_sequence_ioctl(struct drm_device *dev, void *data, return ret; } @@ -296,7 +300,7 @@ index 46f59883183d97..61e211fd3c9c8a 100644 +EXPORT_SYMBOL(drm_crtc_vblank_get_vblank_timeout); diff --git a/drivers/gpu/drm/drm_vblank_helper.c b/drivers/gpu/drm/drm_vblank_helper.c new file mode 100644 -index 00000000000000..f94d1e706191b2 +index 000000000000..f94d1e706191 --- /dev/null +++ b/drivers/gpu/drm/drm_vblank_helper.c @@ -0,0 +1,96 @@ @@ -397,7 +401,7 @@ index 00000000000000..f94d1e706191b2 +} +EXPORT_SYMBOL(drm_crtc_vblank_helper_get_vblank_timestamp_from_timer); diff --git a/include/drm/drm_modeset_helper_vtables.h b/include/drm/drm_modeset_helper_vtables.h -index ce7c7aeac887bb..fe32854b7ffec0 100644 +index ec59015aec3c..b79e427ffcd4 100644 --- a/include/drm/drm_modeset_helper_vtables.h +++ b/include/drm/drm_modeset_helper_vtables.h @@ -490,6 +490,18 @@ struct drm_crtc_helper_funcs { @@ -420,7 +424,7 @@ index ce7c7aeac887bb..fe32854b7ffec0 100644 /** diff --git a/include/drm/drm_vblank.h b/include/drm/drm_vblank.h -index 151ab1e85b1b76..ffa564d7963849 100644 +index 151ab1e85b1b..ffa564d79638 100644 --- a/include/drm/drm_vblank.h +++ b/include/drm/drm_vblank.h @@ -25,6 +25,7 @@ @@ -485,7 +489,7 @@ index 151ab1e85b1b76..ffa564d7963849 100644 */ diff --git a/include/drm/drm_vblank_helper.h b/include/drm/drm_vblank_helper.h new file mode 100644 -index 00000000000000..74a971d0cfba0b +index 000000000000..74a971d0cfba --- /dev/null +++ b/include/drm/drm_vblank_helper.h @@ -0,0 +1,33 @@ @@ -522,3 +526,6 @@ index 00000000000000..74a971d0cfba0b + .get_vblank_timestamp = drm_crtc_vblank_helper_get_vblank_timestamp_from_timer + +#endif +-- +2.55.0 + diff --git a/patches/0038-drm-vblank-linux-6.12-compat.patch b/patches/0037-drm-vblank-Use-Linux-6.12-hrtimer-initialization-API.patch similarity index 62% rename from patches/0038-drm-vblank-linux-6.12-compat.patch rename to patches/0037-drm-vblank-Use-Linux-6.12-hrtimer-initialization-API.patch index d086e245..a8da07ed 100644 --- a/patches/0038-drm-vblank-linux-6.12-compat.patch +++ b/patches/0037-drm-vblank-Use-Linux-6.12-hrtimer-initialization-API.patch @@ -1,9 +1,15 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From 79635f95f77cb425d0ffc950a912b9aa68544fc6 Mon Sep 17 00:00:00 2001 From: Matej Hrica -Subject: [PATCH] drm/vblank: Use Linux 6.12 hrtimer initialization API +Date: Thu, 1 Oct 2026 10:50:39 +0200 +Subject: [PATCH 37/38] drm/vblank: Use Linux 6.12 hrtimer initialization API Linux 6.12 predates hrtimer_setup(). Initialize timer and callback separately. +--- + drivers/gpu/drm/drm_vblank.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) +diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c +index a07863185d23..0298d5efe370 100644 --- a/drivers/gpu/drm/drm_vblank.c +++ b/drivers/gpu/drm/drm_vblank.c @@ -2233,8 +2233,8 @@ int drm_crtc_vblank_start_timer(struct drm_crtc *crtc) @@ -17,3 +23,6 @@ Linux 6.12 predates hrtimer_setup(). Initialize timer and callback separately. } else { /* * Timer should not be active. If it is, wait for the +-- +2.55.0 + diff --git a/patches/0039-drm-virtgpu-use-vblank-timer.patch b/patches/0038-drm-virtgpu-Use-vblank-timer.patch similarity index 73% rename from patches/0039-drm-virtgpu-use-vblank-timer.patch rename to patches/0038-drm-virtgpu-Use-vblank-timer.patch index 9a2a4a93..b9b57c16 100644 --- a/patches/0039-drm-virtgpu-use-vblank-timer.patch +++ b/patches/0038-drm-virtgpu-Use-vblank-timer.patch @@ -1,10 +1,15 @@ -From a036f5fceedb9fbd715565fef7b824a121503de7 Mon Sep 17 00:00:00 2001 +From b22c25a9d1e25cce7d127bf81cf6cf78201c9ab5 Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Wed, 8 Oct 2025 15:06:51 +0200 -Subject: [PATCH] drm/virtgpu: Use vblank timer +Subject: [PATCH 38/38] drm/virtgpu: Use vblank timer Backport of upstream commit a036f5fceedb9fbd715565fef7b824a121503de7. +--- + drivers/gpu/drm/virtio/virtgpu_display.c | 29 ++++++++++++++++++++++-- + 1 file changed, 27 insertions(+), 2 deletions(-) +diff --git a/drivers/gpu/drm/virtio/virtgpu_display.c b/drivers/gpu/drm/virtio/virtgpu_display.c +index 64baf2f22d9f..db773faa021d 100644 --- a/drivers/gpu/drm/virtio/virtgpu_display.c +++ b/drivers/gpu/drm/virtio/virtgpu_display.c @@ -32,6 +32,8 @@ @@ -16,7 +21,7 @@ Backport of upstream commit a036f5fceedb9fbd715565fef7b824a121503de7. #include "virtgpu_drv.h" -@@ -55,6 +57,7 @@ +@@ -55,6 +57,7 @@ static const struct drm_crtc_funcs virtio_gpu_crtc_funcs = { .reset = drm_atomic_helper_crtc_reset, .atomic_duplicate_state = drm_atomic_helper_crtc_duplicate_state, .atomic_destroy_state = drm_atomic_helper_crtc_destroy_state, @@ -24,7 +29,7 @@ Backport of upstream commit a036f5fceedb9fbd715565fef7b824a121503de7. }; static const struct drm_framebuffer_funcs virtio_gpu_fb_funcs = { -@@ -98,6 +101,7 @@ +@@ -98,6 +101,7 @@ static void virtio_gpu_crtc_mode_set_nofb(struct drm_crtc *crtc) static void virtio_gpu_crtc_atomic_enable(struct drm_crtc *crtc, struct drm_atomic_state *state) { @@ -32,7 +37,7 @@ Backport of upstream commit a036f5fceedb9fbd715565fef7b824a121503de7. } static void virtio_gpu_crtc_atomic_disable(struct drm_crtc *crtc, -@@ -107,6 +111,8 @@ +@@ -107,6 +111,8 @@ static void virtio_gpu_crtc_atomic_disable(struct drm_crtc *crtc, struct virtio_gpu_device *vgdev = dev->dev_private; struct virtio_gpu_output *output = drm_crtc_to_virtio_gpu_output(crtc); @@ -41,7 +46,7 @@ Backport of upstream commit a036f5fceedb9fbd715565fef7b824a121503de7. virtio_gpu_cmd_set_scanout(vgdev, output->index, 0, 0, 0, 0, 0); virtio_gpu_notify(vgdev); } -@@ -120,9 +126,10 @@ +@@ -120,9 +126,10 @@ static int virtio_gpu_crtc_atomic_check(struct drm_crtc *crtc, static void virtio_gpu_crtc_atomic_flush(struct drm_crtc *crtc, struct drm_atomic_state *state) { @@ -54,7 +59,7 @@ Backport of upstream commit a036f5fceedb9fbd715565fef7b824a121503de7. /* * virtio-gpu can't do modeset and plane update operations -@@ -133,6 +140,20 @@ +@@ -133,6 +140,20 @@ static void virtio_gpu_crtc_atomic_flush(struct drm_crtc *crtc, if (drm_atomic_crtc_needs_modeset(crtc_state)) { output->needs_modeset = true; } @@ -75,7 +80,7 @@ Backport of upstream commit a036f5fceedb9fbd715565fef7b824a121503de7. } static const struct drm_crtc_helper_funcs virtio_gpu_crtc_helper_funcs = { -@@ -355,6 +376,10 @@ +@@ -355,6 +376,10 @@ int virtio_gpu_modeset_init(struct virtio_gpu_device *vgdev) for (i = 0 ; i < vgdev->num_scanouts; ++i) vgdev_output_init(vgdev, i); @@ -87,4 +92,5 @@ Backport of upstream commit a036f5fceedb9fbd715565fef7b824a121503de7. return 0; } -- -2.50.1 +2.55.0 + From 1868d872d7f9bdd08c59b0adb4c9553ca199ec5c Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 1 Oct 2026 11:03:54 +0200 Subject: [PATCH 2/2] Rebase on a 6.12.111 Rebase on the latest 6.12.x LTS. No changes needed in the downstream patches. Signed-off-by: Sergio Lopez --- Makefile | 6 +++--- ...01-virtio-enable-DMA-API-if-memory-is-restricted.patch | 4 ++-- patches-tee/0002-x86-sev-write-AP-reset-vector.patch | 2 +- ...mplement-driver-to-retrieve-secrets-from-cmdline.patch | 2 +- patches-tee/0004-x86-sev-Avoid-using-native_cpuid.patch | 2 +- patches/0001-krunfw-Don-t-panic-when-init-dies.patch | 2 +- .../0002-krunfw-Ignore-run_cmd-on-orderly-reboot.patch | 2 +- ...k-dgram-generalize-recvmsg-and-drop-transport-dg.patch | 8 ++++---- patches/0004-vsock-refactor-transport-lookup-code.patch | 4 ++-- .../0005-vsock-support-multi-transport-datagrams.patch | 6 +++--- patches/0006-vsock-make-vsock-bind-reusable.patch | 4 ++-- ...irtio-vsock-add-VIRTIO_VSOCK_F_DGRAM-feature-bit.patch | 2 +- patches/0008-virtio-vsock-support-dgrams.patch | 4 ++-- patches/0009-vsock-Add-support-for-SIOCINQ-ioctl.patch | 4 ++-- .../0010-virtio-vsock-implement-has_data-for-DGRAM.patch | 4 ++-- ...-Transparent-Socket-Impersonation-implementation.patch | 2 +- patches/0012-tsi-allow-hijacking-sockets-tsi_hijack.patch | 2 +- ...4-cpufeature-Unify-SCOPE_LOCAL_CPU-early-late-be.patch | 2 +- patches/0014-prctl-Introduce-PR_-SET-GET-_MEM_MODEL.patch | 4 ++-- ...4-Implement-PR_-GET-SET-_MEM_MODEL-for-always-TS.patch | 6 +++--- ...4-Introduce-scaffolding-to-add-ACTLR_EL1-to-thre.patch | 6 +++--- ...4-Implement-Apple-IMPDEF-TSO-memory-model-contro.patch | 6 +++--- ...le-64-bit-processes-to-use-compat-input-syscalls.patch | 4 ++-- patches/0019-dax-Allow-block-size-PAGE_SIZE.patch | 2 +- ...ix-__wp_page_copy_user-fallback-path-for-remote-.patch | 2 +- patches/0021-virtgpu-gem-partial-map.patch | 2 +- patches/0022-virtgpu-mixed-page-size.patch | 2 +- .../0023-fuse-mark-DAX-inode-releases-as-blocking.patch | 4 ++-- patches/0024-can-virtio-Add-virtio-CAN-driver.patch | 6 +++--- patches/0025-virtio_rtc-Add-module-and-driver-core.patch | 6 +++--- patches/0026-virtio_rtc-Add-PTP-clocks.patch | 2 +- ...tio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch | 2 +- patches/0028-virtio_rtc-Add-RTC-class-driver.patch | 2 +- ...029-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch | 2 +- ...30-media-virtio-Add-skeleton-virtio-media-driver.patch | 8 ++++---- patches/0031-media-virtio-Add-session-management.patch | 2 +- patches/0032-media-virtio-Add-scatterlist-builder.patch | 2 +- ...dia-virtio-Add-ioctl-operations-and-driver-logic.patch | 2 +- patches/0034-virtio-Add-ID-for-virtio-media.patch | 2 +- .../0035-media-virtio-fix-v4l2-API-for-kernel-6.12.patch | 2 +- patches/0036-drm-vblank-Add-vblank-timer.patch | 2 +- ...vblank-Use-Linux-6.12-hrtimer-initialization-API.patch | 2 +- patches/0038-drm-virtgpu-Use-vblank-timer.patch | 4 ++-- 43 files changed, 73 insertions(+), 73 deletions(-) diff --git a/Makefile b/Makefile index 23a1425e..1295b501 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -KERNEL_VERSION = linux-6.12.109 +KERNEL_VERSION = linux-6.12.111 KERNEL_REMOTE = https://cdn.kernel.org/pub/linux/kernel/v6.x/$(KERNEL_VERSION).tar.xz KERNEL_TARBALL = tarballs/$(KERNEL_VERSION).tar.xz KERNEL_SOURCES = $(KERNEL_VERSION) @@ -6,8 +6,8 @@ KERNEL_PATCHES = $(shell find patches/ -name "0*.patch" | sort) KERNEL_C_BUNDLE = kernel.c ABI_VERSION = 5 -FULL_VERSION = 5.6.2 -TIMESTAMP = "Mon Sep 21 20:29:27 CEST 2026" +FULL_VERSION = 5.7.0 +TIMESTAMP = "Thu Oct 1 11:02:46 CEST 2026" KERNEL_FLAGS = KBUILD_BUILD_TIMESTAMP=$(TIMESTAMP) KERNEL_FLAGS += KBUILD_BUILD_USER=root diff --git a/patches-tee/0001-virtio-enable-DMA-API-if-memory-is-restricted.patch b/patches-tee/0001-virtio-enable-DMA-API-if-memory-is-restricted.patch index 322d2f9b..69b0fd07 100644 --- a/patches-tee/0001-virtio-enable-DMA-API-if-memory-is-restricted.patch +++ b/patches-tee/0001-virtio-enable-DMA-API-if-memory-is-restricted.patch @@ -1,4 +1,4 @@ -From 467c71ed09fcaedcfd2a85c3380411ccccbf549e Mon Sep 17 00:00:00 2001 +From a858e1f970880b6a4904dc708c4079fa2ac23cc8 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Fri, 10 Sep 2021 13:05:01 +0200 Subject: [PATCH 1/4] virtio: enable DMA API if memory is restricted @@ -15,7 +15,7 @@ Signed-off-by: Sergio Lopez 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/virtio/virtio.c b/drivers/virtio/virtio.c -index b9095751e43b..9e6420d5bc66 100644 +index 1b193d08a6ba..55f1dbe703d1 100644 --- a/drivers/virtio/virtio.c +++ b/drivers/virtio/virtio.c @@ -213,12 +213,6 @@ static int virtio_features_ok(struct virtio_device *dev) diff --git a/patches-tee/0002-x86-sev-write-AP-reset-vector.patch b/patches-tee/0002-x86-sev-write-AP-reset-vector.patch index 45ad5b68..52dba2b5 100644 --- a/patches-tee/0002-x86-sev-write-AP-reset-vector.patch +++ b/patches-tee/0002-x86-sev-write-AP-reset-vector.patch @@ -1,4 +1,4 @@ -From e162b2f85d770158afb1d49cd5bca933dd17581b Mon Sep 17 00:00:00 2001 +From 57b14a1cc119a7233967699e466954b0ab628ba9 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 20 Oct 2022 10:23:16 +0200 Subject: [PATCH 2/4] x86/sev: write AP reset vector diff --git a/patches-tee/0003-Implement-driver-to-retrieve-secrets-from-cmdline.patch b/patches-tee/0003-Implement-driver-to-retrieve-secrets-from-cmdline.patch index 8da40f14..6ea957de 100644 --- a/patches-tee/0003-Implement-driver-to-retrieve-secrets-from-cmdline.patch +++ b/patches-tee/0003-Implement-driver-to-retrieve-secrets-from-cmdline.patch @@ -1,4 +1,4 @@ -From ba73233150bde566b13bd2756dae8df53c9c58ea Mon Sep 17 00:00:00 2001 +From 8fdfb74318a2f58ed1ab84b9f7c7784044928489 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Wed, 3 Aug 2022 12:35:12 +0200 Subject: [PATCH 3/4] Implement driver to retrieve secrets from cmdline diff --git a/patches-tee/0004-x86-sev-Avoid-using-native_cpuid.patch b/patches-tee/0004-x86-sev-Avoid-using-native_cpuid.patch index 980577aa..2bccf675 100644 --- a/patches-tee/0004-x86-sev-Avoid-using-native_cpuid.patch +++ b/patches-tee/0004-x86-sev-Avoid-using-native_cpuid.patch @@ -1,4 +1,4 @@ -From 2b74a2aedd69ba6144714d3067283ff0b5087a8e Mon Sep 17 00:00:00 2001 +From 9901fb97cced6ced9cf356b8cd7d7a6708ef6cbe Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Wed, 5 Jun 2024 16:20:08 +0200 Subject: [PATCH 4/4] x86/sev: Avoid using native_cpuid diff --git a/patches/0001-krunfw-Don-t-panic-when-init-dies.patch b/patches/0001-krunfw-Don-t-panic-when-init-dies.patch index fc0c7fe7..fa0ffe13 100644 --- a/patches/0001-krunfw-Don-t-panic-when-init-dies.patch +++ b/patches/0001-krunfw-Don-t-panic-when-init-dies.patch @@ -1,4 +1,4 @@ -From 1019974df06a399d9755b1ee592f0ff62c709371 Mon Sep 17 00:00:00 2001 +From 6f4cad41f3ed7a98ac7a943a10113a10875de4c2 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 2 Mar 2023 07:34:49 +0100 Subject: [PATCH 01/38] krunfw: Don't panic when init dies diff --git a/patches/0002-krunfw-Ignore-run_cmd-on-orderly-reboot.patch b/patches/0002-krunfw-Ignore-run_cmd-on-orderly-reboot.patch index 32cb1bee..33446cc2 100644 --- a/patches/0002-krunfw-Ignore-run_cmd-on-orderly-reboot.patch +++ b/patches/0002-krunfw-Ignore-run_cmd-on-orderly-reboot.patch @@ -1,4 +1,4 @@ -From e7c60d5e1f4173a6a228e4609ecf0c2f5c46a987 Mon Sep 17 00:00:00 2001 +From 61501edb76d01cdfc51012d6da83f9303cff1a50 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Mon, 16 May 2022 16:04:27 +0200 Subject: [PATCH 02/38] krunfw: Ignore run_cmd on orderly reboot diff --git a/patches/0003-vsock-dgram-generalize-recvmsg-and-drop-transport-dg.patch b/patches/0003-vsock-dgram-generalize-recvmsg-and-drop-transport-dg.patch index 42e87e83..3b210a38 100644 --- a/patches/0003-vsock-dgram-generalize-recvmsg-and-drop-transport-dg.patch +++ b/patches/0003-vsock-dgram-generalize-recvmsg-and-drop-transport-dg.patch @@ -1,4 +1,4 @@ -From 7d78c03e4d008b83e0262ee1af5c54515c0df711 Mon Sep 17 00:00:00 2001 +From 624f72b5004a3624ba7ab0f90d1a494b230b446e Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:28 +0000 Subject: [PATCH 03/38] vsock/dgram: generalize recvmsg and drop @@ -81,7 +81,7 @@ index 70302c92d329..9ba6e2bcef94 100644 /* STREAM. */ /* TODO: stream_bind() */ diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c -index f03e00cae028..e75651c04f5d 100644 +index 0cbe5a1a40d3..2b710d5ccd5f 100644 --- a/net/vmw_vsock/af_vsock.c +++ b/net/vmw_vsock/af_vsock.c @@ -1374,10 +1374,62 @@ static int vsock_dgram_connect(struct socket *sock, @@ -151,7 +151,7 @@ index f03e00cae028..e75651c04f5d 100644 int vsock_dgram_recvmsg(struct socket *sock, struct msghdr *msg, diff --git a/net/vmw_vsock/hyperv_transport.c b/net/vmw_vsock/hyperv_transport.c -index 865e004ee286..5564c0e11d74 100644 +index c73793615f70..cd7b193e8919 100644 --- a/net/vmw_vsock/hyperv_transport.c +++ b/net/vmw_vsock/hyperv_transport.c @@ -557,8 +557,17 @@ static int hvs_dgram_bind(struct vsock_sock *vsk, struct sockaddr_vm *addr) @@ -232,7 +232,7 @@ index 39584992c6c8..d2340f6139e1 100644 { return false; diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c -index 75bf643ff6fa..a203166f3620 100644 +index 4f02a6f269cd..648074165727 100644 --- a/net/vmw_vsock/vmci_transport.c +++ b/net/vmw_vsock/vmci_transport.c @@ -1735,57 +1735,40 @@ static int vmci_transport_dgram_enqueue( diff --git a/patches/0004-vsock-refactor-transport-lookup-code.patch b/patches/0004-vsock-refactor-transport-lookup-code.patch index 2e5fc2e6..be1d7fae 100644 --- a/patches/0004-vsock-refactor-transport-lookup-code.patch +++ b/patches/0004-vsock-refactor-transport-lookup-code.patch @@ -1,4 +1,4 @@ -From 87c404066aa6497430d824f5fa2d114d0e768c68 Mon Sep 17 00:00:00 2001 +From da005e088a069d3a6b57b6e5c40841123dc9b470 Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:29 +0000 Subject: [PATCH 04/38] vsock: refactor transport lookup code @@ -14,7 +14,7 @@ Signed-off-by: Bobby Eshleman 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c -index e75651c04f5d..fa5821c97845 100644 +index 2b710d5ccd5f..568912943df1 100644 --- a/net/vmw_vsock/af_vsock.c +++ b/net/vmw_vsock/af_vsock.c @@ -432,6 +432,22 @@ static void vsock_deassign_transport(struct vsock_sock *vsk) diff --git a/patches/0005-vsock-support-multi-transport-datagrams.patch b/patches/0005-vsock-support-multi-transport-datagrams.patch index 35741a3f..c49a8f52 100644 --- a/patches/0005-vsock-support-multi-transport-datagrams.patch +++ b/patches/0005-vsock-support-multi-transport-datagrams.patch @@ -1,4 +1,4 @@ -From cb66798255b582838b5dd5d2dee04f039cf7e281 Mon Sep 17 00:00:00 2001 +From 5ba1cba96b3ffaf41d29ddf26427b8a5caa72b26 Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:30 +0000 Subject: [PATCH 05/38] vsock: support multi-transport datagrams @@ -82,7 +82,7 @@ index 06d5b15642ae..6c8791d3bc70 100644 int virtio_transport_dgram_get_cid(struct sk_buff *skb, unsigned int *cid); int virtio_transport_dgram_get_port(struct sk_buff *skb, unsigned int *port); diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c -index fa5821c97845..9ea29661b5aa 100644 +index 568912943df1..93e79c0f27e0 100644 --- a/net/vmw_vsock/af_vsock.c +++ b/net/vmw_vsock/af_vsock.c @@ -448,6 +448,18 @@ vsock_connectible_lookup_transport(unsigned int cid, __u8 flags) @@ -238,7 +238,7 @@ index fa5821c97845..9ea29661b5aa 100644 /* sock map disallows redirection of non-TCP sockets with sk_state != diff --git a/net/vmw_vsock/hyperv_transport.c b/net/vmw_vsock/hyperv_transport.c -index 5564c0e11d74..238b18544e51 100644 +index cd7b193e8919..6e2f7038e846 100644 --- a/net/vmw_vsock/hyperv_transport.c +++ b/net/vmw_vsock/hyperv_transport.c @@ -552,11 +552,6 @@ static void hvs_destruct(struct vsock_sock *vsk) diff --git a/patches/0006-vsock-make-vsock-bind-reusable.patch b/patches/0006-vsock-make-vsock-bind-reusable.patch index 60d3f1ea..0cdd146c 100644 --- a/patches/0006-vsock-make-vsock-bind-reusable.patch +++ b/patches/0006-vsock-make-vsock-bind-reusable.patch @@ -1,4 +1,4 @@ -From 909eb28767726557a02619ecc50c9f207df55d5a Mon Sep 17 00:00:00 2001 +From 438f55c2d8c67455e53e38389ce8b9a4681be5d7 Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:31 +0000 Subject: [PATCH 06/38] vsock: make vsock bind reusable @@ -12,7 +12,7 @@ Signed-off-by: Bobby Eshleman 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c -index 9ea29661b5aa..d33474b555a0 100644 +index 93e79c0f27e0..b4af5ed65b0b 100644 --- a/net/vmw_vsock/af_vsock.c +++ b/net/vmw_vsock/af_vsock.c @@ -235,11 +235,12 @@ static void __vsock_remove_connected(struct vsock_sock *vsk) diff --git a/patches/0007-virtio-vsock-add-VIRTIO_VSOCK_F_DGRAM-feature-bit.patch b/patches/0007-virtio-vsock-add-VIRTIO_VSOCK_F_DGRAM-feature-bit.patch index f856d1b5..5cc142f3 100644 --- a/patches/0007-virtio-vsock-add-VIRTIO_VSOCK_F_DGRAM-feature-bit.patch +++ b/patches/0007-virtio-vsock-add-VIRTIO_VSOCK_F_DGRAM-feature-bit.patch @@ -1,4 +1,4 @@ -From fc8093a6f7348558416cb16a62174448bf6e0a10 Mon Sep 17 00:00:00 2001 +From c2ca09351719770dc4f078a00c7d7fbce0db4cb9 Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:32 +0000 Subject: [PATCH 07/38] virtio/vsock: add VIRTIO_VSOCK_F_DGRAM feature bit diff --git a/patches/0008-virtio-vsock-support-dgrams.patch b/patches/0008-virtio-vsock-support-dgrams.patch index b7624732..4aa91109 100644 --- a/patches/0008-virtio-vsock-support-dgrams.patch +++ b/patches/0008-virtio-vsock-support-dgrams.patch @@ -1,4 +1,4 @@ -From aa8d05eb5d994be74195a42df0fde477e0216124 Mon Sep 17 00:00:00 2001 +From f6b70f6797524ab6ffc6ea78765e606cce32db1d Mon Sep 17 00:00:00 2001 From: Bobby Eshleman Date: Sat, 10 Jun 2023 00:58:33 +0000 Subject: [PATCH 08/38] virtio/vsock: support dgrams @@ -157,7 +157,7 @@ index 9c25f267bbc0..27b4b2b8bf13 100644 enum virtio_vsock_op { diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c -index d33474b555a0..5242795aad35 100644 +index b4af5ed65b0b..4dfc16b4acb6 100644 --- a/net/vmw_vsock/af_vsock.c +++ b/net/vmw_vsock/af_vsock.c @@ -118,6 +118,7 @@ static int __vsock_bind(struct sock *sk, struct sockaddr_vm *addr); diff --git a/patches/0009-vsock-Add-support-for-SIOCINQ-ioctl.patch b/patches/0009-vsock-Add-support-for-SIOCINQ-ioctl.patch index a679009b..6dcec3f8 100644 --- a/patches/0009-vsock-Add-support-for-SIOCINQ-ioctl.patch +++ b/patches/0009-vsock-Add-support-for-SIOCINQ-ioctl.patch @@ -1,4 +1,4 @@ -From 2fc5e66a1f39c626768559ea17769cfac5287b7f Mon Sep 17 00:00:00 2001 +From 2303d7f8a82319de6fb0d061a3316f51d20cabc0 Mon Sep 17 00:00:00 2001 From: Xuewei Niu Date: Tue, 8 Jul 2025 14:36:12 +0800 Subject: [PATCH 09/38] vsock: Add support for SIOCINQ ioctl @@ -18,7 +18,7 @@ Signed-off-by: Sergio Lopez 1 file changed, 22 insertions(+) diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c -index 5242795aad35..522ac6a3c830 100644 +index 4dfc16b4acb6..907b99101f29 100644 --- a/net/vmw_vsock/af_vsock.c +++ b/net/vmw_vsock/af_vsock.c @@ -1560,6 +1560,28 @@ static int vsock_do_ioctl(struct socket *sock, unsigned int cmd, diff --git a/patches/0010-virtio-vsock-implement-has_data-for-DGRAM.patch b/patches/0010-virtio-vsock-implement-has_data-for-DGRAM.patch index 5af95053..4e6e2eac 100644 --- a/patches/0010-virtio-vsock-implement-has_data-for-DGRAM.patch +++ b/patches/0010-virtio-vsock-implement-has_data-for-DGRAM.patch @@ -1,4 +1,4 @@ -From b2443370182382eee9e7aa1a11d472921182374d Mon Sep 17 00:00:00 2001 +From ae076c6759008f96dec6ccfa2d4a13f55f2de2e0 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 28 May 2026 11:43:46 +0200 Subject: [PATCH 10/38] virtio/vsock: implement has_data for DGRAM @@ -46,7 +46,7 @@ index 5f93bb290a83..45469aa8cf60 100644 /* STREAM. */ /* TODO: stream_bind() */ diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c -index 522ac6a3c830..3f802cf57609 100644 +index 907b99101f29..94befed82ff1 100644 --- a/net/vmw_vsock/af_vsock.c +++ b/net/vmw_vsock/af_vsock.c @@ -1007,6 +1007,15 @@ s64 vsock_stream_has_data(struct vsock_sock *vsk) diff --git a/patches/0011-Transparent-Socket-Impersonation-implementation.patch b/patches/0011-Transparent-Socket-Impersonation-implementation.patch index 154bf444..49c6c472 100644 --- a/patches/0011-Transparent-Socket-Impersonation-implementation.patch +++ b/patches/0011-Transparent-Socket-Impersonation-implementation.patch @@ -1,4 +1,4 @@ -From 3c2901379d8789be51b75a04fb99ded75d988667 Mon Sep 17 00:00:00 2001 +From 170227a50e602db9d9231651a80b3ed29af99d90 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 19 May 2022 22:38:26 +0200 Subject: [PATCH 11/38] Transparent Socket Impersonation implementation diff --git a/patches/0012-tsi-allow-hijacking-sockets-tsi_hijack.patch b/patches/0012-tsi-allow-hijacking-sockets-tsi_hijack.patch index 09a3b119..f55a2186 100644 --- a/patches/0012-tsi-allow-hijacking-sockets-tsi_hijack.patch +++ b/patches/0012-tsi-allow-hijacking-sockets-tsi_hijack.patch @@ -1,4 +1,4 @@ -From 70e18687e023f17ecc999ee9ccf4734575f38413 Mon Sep 17 00:00:00 2001 +From 268522d6c000dace0afb2a15625fb8a7e0aa15b7 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Thu, 19 May 2022 22:42:01 +0200 Subject: [PATCH 12/38] tsi: allow hijacking sockets (tsi_hijack) diff --git a/patches/0013-arm64-cpufeature-Unify-SCOPE_LOCAL_CPU-early-late-be.patch b/patches/0013-arm64-cpufeature-Unify-SCOPE_LOCAL_CPU-early-late-be.patch index 8e159c93..390c0d08 100644 --- a/patches/0013-arm64-cpufeature-Unify-SCOPE_LOCAL_CPU-early-late-be.patch +++ b/patches/0013-arm64-cpufeature-Unify-SCOPE_LOCAL_CPU-early-late-be.patch @@ -1,4 +1,4 @@ -From 42c0a7432e0ab59dc8df40302081bee9257c714a Mon Sep 17 00:00:00 2001 +From 6f5406d84e32de852c4d20155a786dfab10dc9ad Mon Sep 17 00:00:00 2001 From: Asahi Lina Date: Wed, 25 Sep 2024 16:35:34 +0200 Subject: [PATCH 13/38] arm64: cpufeature: Unify SCOPE_LOCAL_CPU early & late diff --git a/patches/0014-prctl-Introduce-PR_-SET-GET-_MEM_MODEL.patch b/patches/0014-prctl-Introduce-PR_-SET-GET-_MEM_MODEL.patch index 656c9335..5d3ce54f 100644 --- a/patches/0014-prctl-Introduce-PR_-SET-GET-_MEM_MODEL.patch +++ b/patches/0014-prctl-Introduce-PR_-SET-GET-_MEM_MODEL.patch @@ -1,4 +1,4 @@ -From 6d853f297b8b497b0bc5fd632f5a3a8b61000c66 Mon Sep 17 00:00:00 2001 +From b9ba99bb14ced622051507c0cb1c612b1be2dd9a Mon Sep 17 00:00:00 2001 From: Hector Martin Date: Thu, 11 Apr 2024 09:51:20 +0900 Subject: [PATCH 14/38] prctl: Introduce PR_{SET,GET}_MEM_MODEL @@ -73,7 +73,7 @@ index 35791791a879..36c278683cd6 100644 + #endif /* _LINUX_PRCTL_H */ diff --git a/kernel/sys.c b/kernel/sys.c -index 8283e35c9eeb..b14846a80169 100644 +index 6c870636ea73..4c7ca5e7a489 100644 --- a/kernel/sys.c +++ b/kernel/sys.c @@ -45,6 +45,7 @@ diff --git a/patches/0015-arm64-Implement-PR_-GET-SET-_MEM_MODEL-for-always-TS.patch b/patches/0015-arm64-Implement-PR_-GET-SET-_MEM_MODEL-for-always-TS.patch index 2b90cf86..ee6749b4 100644 --- a/patches/0015-arm64-Implement-PR_-GET-SET-_MEM_MODEL-for-always-TS.patch +++ b/patches/0015-arm64-Implement-PR_-GET-SET-_MEM_MODEL-for-always-TS.patch @@ -1,4 +1,4 @@ -From 8e536a62edd22dd81987aade17e01bda5fc918f7 Mon Sep 17 00:00:00 2001 +From 99631bd5290cfe6496257be02040d812797e059c Mon Sep 17 00:00:00 2001 From: Hector Martin Date: Thu, 11 Apr 2024 09:51:21 +0900 Subject: [PATCH 15/38] arm64: Implement PR_{GET,SET}_MEM_MODEL for always-TSO @@ -27,10 +27,10 @@ Reviewed-by: Neal Gompa create mode 100644 arch/arm64/kernel/cpufeature_impdef.c diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig -index dd98fa97aad0..4277f71e03aa 100644 +index 938bf2f96b1a..a604440b6c17 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig -@@ -2314,6 +2314,15 @@ config ARM64_DEBUG_PRIORITY_MASKING +@@ -2315,6 +2315,15 @@ config ARM64_DEBUG_PRIORITY_MASKING If unsure, say N endif # ARM64_PSEUDO_NMI diff --git a/patches/0016-arm64-Introduce-scaffolding-to-add-ACTLR_EL1-to-thre.patch b/patches/0016-arm64-Introduce-scaffolding-to-add-ACTLR_EL1-to-thre.patch index decc00af..251b45cf 100644 --- a/patches/0016-arm64-Introduce-scaffolding-to-add-ACTLR_EL1-to-thre.patch +++ b/patches/0016-arm64-Introduce-scaffolding-to-add-ACTLR_EL1-to-thre.patch @@ -1,4 +1,4 @@ -From 4909f68d1d65a28af8ab2fa23b3b1209cf2b2cdd Mon Sep 17 00:00:00 2001 +From bd9d82ee1335cc34f55ea4892781036eb12c5375 Mon Sep 17 00:00:00 2001 From: Hector Martin Date: Thu, 11 Apr 2024 09:51:22 +0900 Subject: [PATCH 16/38] arm64: Introduce scaffolding to add ACTLR_EL1 to thread @@ -24,10 +24,10 @@ Reviewed-by: Neal Gompa 5 files changed, 44 insertions(+) diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig -index 4277f71e03aa..5c180e2ab5bf 100644 +index a604440b6c17..12c90108663e 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig -@@ -430,6 +430,9 @@ config KASAN_SHADOW_OFFSET +@@ -431,6 +431,9 @@ config KASAN_SHADOW_OFFSET config UNWIND_TABLES bool diff --git a/patches/0017-arm64-Implement-Apple-IMPDEF-TSO-memory-model-contro.patch b/patches/0017-arm64-Implement-Apple-IMPDEF-TSO-memory-model-contro.patch index 05e52f37..830d97ce 100644 --- a/patches/0017-arm64-Implement-Apple-IMPDEF-TSO-memory-model-contro.patch +++ b/patches/0017-arm64-Implement-Apple-IMPDEF-TSO-memory-model-contro.patch @@ -1,4 +1,4 @@ -From c4057360186d0047a721c9852bc1d7a633139580 Mon Sep 17 00:00:00 2001 +From 19e77d22d7f773dd22bfe6f14a1c4b3373a696d1 Mon Sep 17 00:00:00 2001 From: Hector Martin Date: Thu, 11 Apr 2024 09:51:23 +0900 Subject: [PATCH 17/38] arm64: Implement Apple IMPDEF TSO memory model control @@ -27,10 +27,10 @@ Reviewed-by: Neal Gompa create mode 100644 arch/arm64/include/asm/apple_cpufeature.h diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig -index 5c180e2ab5bf..0f8062760f83 100644 +index 12c90108663e..6fb3c5fd8e9c 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig -@@ -2319,6 +2319,8 @@ endif # ARM64_PSEUDO_NMI +@@ -2320,6 +2320,8 @@ endif # ARM64_PSEUDO_NMI config ARM64_MEMORY_MODEL_CONTROL bool "Runtime memory model control" diff --git a/patches/0018-Enable-64-bit-processes-to-use-compat-input-syscalls.patch b/patches/0018-Enable-64-bit-processes-to-use-compat-input-syscalls.patch index 51ff0052..536c9f1d 100644 --- a/patches/0018-Enable-64-bit-processes-to-use-compat-input-syscalls.patch +++ b/patches/0018-Enable-64-bit-processes-to-use-compat-input-syscalls.patch @@ -1,4 +1,4 @@ -From 9a77b95ba50cdc2bf2d15a559f74d09f1f449cb9 Mon Sep 17 00:00:00 2001 +From ac14d97a51ae4dcfe8b27555ae468ddb655cf0d4 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Tue, 8 Oct 2024 11:24:25 +0200 Subject: [PATCH 18/38] Enable 64 bit processes to use compat input syscalls @@ -94,7 +94,7 @@ index 36c278683cd6..c2027aa99409 100644 + #endif /* _LINUX_PRCTL_H */ diff --git a/kernel/sys.c b/kernel/sys.c -index b14846a80169..f98671f25026 100644 +index 4c7ca5e7a489..88fbfeb3d57c 100644 --- a/kernel/sys.c +++ b/kernel/sys.c @@ -2818,6 +2818,21 @@ SYSCALL_DEFINE5(prctl, int, option, unsigned long, arg2, unsigned long, arg3, diff --git a/patches/0019-dax-Allow-block-size-PAGE_SIZE.patch b/patches/0019-dax-Allow-block-size-PAGE_SIZE.patch index e2abd22b..e0ac79e1 100644 --- a/patches/0019-dax-Allow-block-size-PAGE_SIZE.patch +++ b/patches/0019-dax-Allow-block-size-PAGE_SIZE.patch @@ -1,4 +1,4 @@ -From 9687692ffd4db993bdd283dd0b7cdb2efa23e948 Mon Sep 17 00:00:00 2001 +From a633e18a5070835609e4480bb677005fd4e2072a Mon Sep 17 00:00:00 2001 From: Asahi Lina Date: Sun, 20 Oct 2024 01:23:41 +0900 Subject: [PATCH 19/38] dax: Allow block size > PAGE_SIZE diff --git a/patches/0020-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch b/patches/0020-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch index f10d71a2..6f171c19 100644 --- a/patches/0020-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch +++ b/patches/0020-mm-Fix-__wp_page_copy_user-fallback-path-for-remote-.patch @@ -1,4 +1,4 @@ -From 78dac7c17e313d2d9ed65878986ae080ad5f85da Mon Sep 17 00:00:00 2001 +From 9281eb75e39285f586c25a59dab35e85b3f51d97 Mon Sep 17 00:00:00 2001 From: Asahi Lina Date: Mon, 21 Oct 2024 23:21:16 +0900 Subject: [PATCH 20/38] mm: Fix __wp_page_copy_user fallback path for remote mm diff --git a/patches/0021-virtgpu-gem-partial-map.patch b/patches/0021-virtgpu-gem-partial-map.patch index cbb16199..d99efd74 100644 --- a/patches/0021-virtgpu-gem-partial-map.patch +++ b/patches/0021-virtgpu-gem-partial-map.patch @@ -1,4 +1,4 @@ -From 06f12095992e7293073e364c8769e9f040f2a29c Mon Sep 17 00:00:00 2001 +From 17befc2ba28e441246a4ff55f62058614d74b05b Mon Sep 17 00:00:00 2001 From: Sasha Finkelstein Date: Fri, 17 Jan 2025 12:34:23 +0100 Subject: [PATCH 21/38] virtgpu: gem partial map diff --git a/patches/0022-virtgpu-mixed-page-size.patch b/patches/0022-virtgpu-mixed-page-size.patch index 0189a980..9335ab63 100644 --- a/patches/0022-virtgpu-mixed-page-size.patch +++ b/patches/0022-virtgpu-mixed-page-size.patch @@ -1,4 +1,4 @@ -From 881cd13daa212b0b4d3b5e5f8b8d9bf73d565b9b Mon Sep 17 00:00:00 2001 +From 870c572d04684b168737e450cac1be161c16990a Mon Sep 17 00:00:00 2001 From: Sasha Finkelstein Date: Fri, 17 Jan 2025 12:34:28 +0100 Subject: [PATCH 22/38] virtgpu: mixed page size diff --git a/patches/0023-fuse-mark-DAX-inode-releases-as-blocking.patch b/patches/0023-fuse-mark-DAX-inode-releases-as-blocking.patch index 8845126e..0313cf33 100644 --- a/patches/0023-fuse-mark-DAX-inode-releases-as-blocking.patch +++ b/patches/0023-fuse-mark-DAX-inode-releases-as-blocking.patch @@ -1,4 +1,4 @@ -From f89e93e9cf72f04a5cbbc8cdfd162db2c0bd2ca4 Mon Sep 17 00:00:00 2001 +From 89140ae98a5db18b74186fc933acad6bcccc5dc6 Mon Sep 17 00:00:00 2001 From: Sergio Lopez Date: Sun, 18 Jan 2026 23:37:30 +0100 Subject: [PATCH 23/38] fuse: mark DAX inode releases as blocking @@ -51,7 +51,7 @@ Signed-off-by: Sergio Lopez 1 file changed, 6 insertions(+) diff --git a/fs/fuse/file.c b/fs/fuse/file.c -index a03ebfc55ee0..3e0e3eb770ed 100644 +index 33ba8ae3b8c2..3e7cd3409701 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c @@ -116,6 +116,12 @@ static void fuse_file_put(struct fuse_file *ff, bool sync) diff --git a/patches/0024-can-virtio-Add-virtio-CAN-driver.patch b/patches/0024-can-virtio-Add-virtio-CAN-driver.patch index b3f1a487..4b8ff2ba 100644 --- a/patches/0024-can-virtio-Add-virtio-CAN-driver.patch +++ b/patches/0024-can-virtio-Add-virtio-CAN-driver.patch @@ -1,4 +1,4 @@ -From 82c33f501cc6ad349298e3d2de6a8317e0e9cc89 Mon Sep 17 00:00:00 2001 +From 0dad018e1a270b39847222b4c1cca7ee858871d1 Mon Sep 17 00:00:00 2001 From: Matias Ezequiel Vara Larsen Date: Fri, 8 May 2026 14:23:37 +0200 Subject: [PATCH 24/38] can: virtio: Add virtio CAN driver @@ -36,10 +36,10 @@ Signed-off-by: Matias Ezequiel Vara Larsen create mode 100644 include/uapi/linux/virtio_can.h diff --git a/MAINTAINERS b/MAINTAINERS -index d5d394a5ad6b..e53aa8538ce3 100644 +index 1cf22c9536b1..6de3461fc4e0 100644 --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -24469,6 +24469,15 @@ F: drivers/scsi/virtio_scsi.c +@@ -24470,6 +24470,15 @@ F: drivers/scsi/virtio_scsi.c F: include/uapi/linux/virtio_blk.h F: include/uapi/linux/virtio_scsi.h diff --git a/patches/0025-virtio_rtc-Add-module-and-driver-core.patch b/patches/0025-virtio_rtc-Add-module-and-driver-core.patch index 662b72e4..90b55e65 100644 --- a/patches/0025-virtio_rtc-Add-module-and-driver-core.patch +++ b/patches/0025-virtio_rtc-Add-module-and-driver-core.patch @@ -1,4 +1,4 @@ -From 36ab36c64faafa209a3d40a4eb43beb173f13a45 Mon Sep 17 00:00:00 2001 +From 56e79748ffefdced1a4b8c7ed023e2d6aa7bf414 Mon Sep 17 00:00:00 2001 From: Peter Hilber Date: Fri, 9 May 2025 18:07:22 +0200 Subject: [PATCH 25/38] virtio_rtc: Add module and driver core @@ -34,10 +34,10 @@ Signed-off-by: Michael S. Tsirkin create mode 100644 include/uapi/linux/virtio_rtc.h diff --git a/MAINTAINERS b/MAINTAINERS -index e53aa8538ce3..259b63cee143 100644 +index 6de3461fc4e0..3f2938ab0406 100644 --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -24625,6 +24625,13 @@ S: Maintained +@@ -24626,6 +24626,13 @@ S: Maintained F: drivers/nvdimm/nd_virtio.c F: drivers/nvdimm/virtio_pmem.c diff --git a/patches/0026-virtio_rtc-Add-PTP-clocks.patch b/patches/0026-virtio_rtc-Add-PTP-clocks.patch index 4f8a7f8f..d2ccca85 100644 --- a/patches/0026-virtio_rtc-Add-PTP-clocks.patch +++ b/patches/0026-virtio_rtc-Add-PTP-clocks.patch @@ -1,4 +1,4 @@ -From a1fc399e1d33181b682843c24e23e00e98506d95 Mon Sep 17 00:00:00 2001 +From 90b68d5666a38dd6b08d5a88e5f2056e5397f350 Mon Sep 17 00:00:00 2001 From: Peter Hilber Date: Fri, 9 May 2025 18:07:23 +0200 Subject: [PATCH 26/38] virtio_rtc: Add PTP clocks diff --git a/patches/0027-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch b/patches/0027-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch index 5c00a014..8b2bc977 100644 --- a/patches/0027-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch +++ b/patches/0027-virtio_rtc-Add-Arm-Generic-Timer-cross-timestamping.patch @@ -1,4 +1,4 @@ -From b8cb81b245541d10ad4e8071ef98110d1614e70e Mon Sep 17 00:00:00 2001 +From a2998df8e160a13e960226bf4dffe9b49c0c9ac0 Mon Sep 17 00:00:00 2001 From: Peter Hilber Date: Fri, 9 May 2025 18:07:24 +0200 Subject: [PATCH 27/38] virtio_rtc: Add Arm Generic Timer cross-timestamping diff --git a/patches/0028-virtio_rtc-Add-RTC-class-driver.patch b/patches/0028-virtio_rtc-Add-RTC-class-driver.patch index b6919c55..d45456b5 100644 --- a/patches/0028-virtio_rtc-Add-RTC-class-driver.patch +++ b/patches/0028-virtio_rtc-Add-RTC-class-driver.patch @@ -1,4 +1,4 @@ -From 049d63ec8ad84a4bd471b86ffa819fd6d393df7e Mon Sep 17 00:00:00 2001 +From 7c4d647943cf425d8f1ad9be4e110f0554a4a29e Mon Sep 17 00:00:00 2001 From: Peter Hilber Date: Fri, 9 May 2025 18:07:25 +0200 Subject: [PATCH 28/38] virtio_rtc: Add RTC class driver diff --git a/patches/0029-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch b/patches/0029-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch index 913d7e7d..4aeabb22 100644 --- a/patches/0029-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch +++ b/patches/0029-virtio_rtc-Fix-compatibility-for-kernel-6.12.patch @@ -1,4 +1,4 @@ -From 73e82d5dfa2dce38c8e73950aaf09f95459f6cae Mon Sep 17 00:00:00 2001 +From 75d16d8627f8f35701d72c3c4244e059071c8d7e Mon Sep 17 00:00:00 2001 From: Dorinda Bassey Date: Wed, 29 Apr 2026 11:35:00 +0200 Subject: [PATCH 29/38] virtio_rtc: Fix compatibility for kernel 6.12 diff --git a/patches/0030-media-virtio-Add-skeleton-virtio-media-driver.patch b/patches/0030-media-virtio-Add-skeleton-virtio-media-driver.patch index d450093a..6fc8c320 100644 --- a/patches/0030-media-virtio-Add-skeleton-virtio-media-driver.patch +++ b/patches/0030-media-virtio-Add-skeleton-virtio-media-driver.patch @@ -1,4 +1,4 @@ -From 3f54ab38a866987b9dd9d18ede6301c4db7baa36 Mon Sep 17 00:00:00 2001 +From 13396bcb95d477c38421a6d776f7e349965085cc Mon Sep 17 00:00:00 2001 From: Brian Daniels Date: Tue, 8 Sep 2026 10:40:13 +0200 Subject: [PATCH 30/38] media: virtio: Add skeleton virtio-media driver @@ -35,10 +35,10 @@ Signed-off-by: Brian Daniels create mode 100644 include/uapi/linux/virtio_media.h diff --git a/MAINTAINERS b/MAINTAINERS -index 259b63cee143..1042ebc5f336 100644 +index 3f2938ab0406..bc7aeccd2649 100644 --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -24498,6 +24498,7 @@ F: Documentation/devicetree/bindings/virtio/ +@@ -24499,6 +24499,7 @@ F: Documentation/devicetree/bindings/virtio/ F: Documentation/driver-api/virtio/ F: drivers/block/virtio_blk.c F: drivers/crypto/virtio/ @@ -46,7 +46,7 @@ index 259b63cee143..1042ebc5f336 100644 F: drivers/net/virtio_net.c F: drivers/vdpa/ F: drivers/virtio/ -@@ -24610,6 +24611,13 @@ S: Maintained +@@ -24611,6 +24612,13 @@ S: Maintained F: drivers/iommu/virtio-iommu.c F: include/uapi/linux/virtio_iommu.h diff --git a/patches/0031-media-virtio-Add-session-management.patch b/patches/0031-media-virtio-Add-session-management.patch index 39a2102d..c31e902a 100644 --- a/patches/0031-media-virtio-Add-session-management.patch +++ b/patches/0031-media-virtio-Add-session-management.patch @@ -1,4 +1,4 @@ -From 0f24427e944d9bbab964be35318cd530cd12c1b0 Mon Sep 17 00:00:00 2001 +From ae334402f3e00009de16c2136a90aaff4d804741 Mon Sep 17 00:00:00 2001 From: Brian Daniels Date: Tue, 8 Sep 2026 10:44:39 +0200 Subject: [PATCH 31/38] media: virtio: Add session management diff --git a/patches/0032-media-virtio-Add-scatterlist-builder.patch b/patches/0032-media-virtio-Add-scatterlist-builder.patch index 95011403..3518e6bf 100644 --- a/patches/0032-media-virtio-Add-scatterlist-builder.patch +++ b/patches/0032-media-virtio-Add-scatterlist-builder.patch @@ -1,4 +1,4 @@ -From e840f6ff0cf0be933dbebaf1b2b902bb9175b0f4 Mon Sep 17 00:00:00 2001 +From e1460ecf3f5b477a0f7d4c25ba0207c98fb2ea42 Mon Sep 17 00:00:00 2001 From: Brian Daniels Date: Tue, 8 Sep 2026 10:48:24 +0200 Subject: [PATCH 32/38] media: virtio: Add scatterlist builder diff --git a/patches/0033-media-virtio-Add-ioctl-operations-and-driver-logic.patch b/patches/0033-media-virtio-Add-ioctl-operations-and-driver-logic.patch index eb6f258e..7af76097 100644 --- a/patches/0033-media-virtio-Add-ioctl-operations-and-driver-logic.patch +++ b/patches/0033-media-virtio-Add-ioctl-operations-and-driver-logic.patch @@ -1,4 +1,4 @@ -From d85256eb44ab68f2d270843b761c7cf66a454581 Mon Sep 17 00:00:00 2001 +From 7daf0512ef4f77a24b87a07ad49cc1ef4021e567 Mon Sep 17 00:00:00 2001 From: Brian Daniels Date: Tue, 8 Sep 2026 10:49:26 +0200 Subject: [PATCH 33/38] media: virtio: Add ioctl operations and driver logic diff --git a/patches/0034-virtio-Add-ID-for-virtio-media.patch b/patches/0034-virtio-Add-ID-for-virtio-media.patch index 7ede8731..668ce3b9 100644 --- a/patches/0034-virtio-Add-ID-for-virtio-media.patch +++ b/patches/0034-virtio-Add-ID-for-virtio-media.patch @@ -1,4 +1,4 @@ -From 08237059687bf415b6ca10ef0a3bba9ea7b69df8 Mon Sep 17 00:00:00 2001 +From 5762332f76e588108fb31172eafd71ed845ac24d Mon Sep 17 00:00:00 2001 From: Albert Esteve Date: Tue, 10 Mar 2026 09:40:46 +0100 Subject: [PATCH 34/38] virtio: Add ID for virtio media diff --git a/patches/0035-media-virtio-fix-v4l2-API-for-kernel-6.12.patch b/patches/0035-media-virtio-fix-v4l2-API-for-kernel-6.12.patch index 07f8cd6b..5c90b7e6 100644 --- a/patches/0035-media-virtio-fix-v4l2-API-for-kernel-6.12.patch +++ b/patches/0035-media-virtio-fix-v4l2-API-for-kernel-6.12.patch @@ -1,4 +1,4 @@ -From 9a09f34aa1f14535b423ae07ace8fbb77c44a369 Mon Sep 17 00:00:00 2001 +From 560bc6cc71948df93dbd56daa663ff4986fb8d64 Mon Sep 17 00:00:00 2001 From: Dorinda Bassey Date: Tue, 8 Sep 2026 10:51:22 +0200 Subject: [PATCH 35/38] media: virtio: fix v4l2 API for kernel 6.12 diff --git a/patches/0036-drm-vblank-Add-vblank-timer.patch b/patches/0036-drm-vblank-Add-vblank-timer.patch index 085d27d7..7cc64e09 100644 --- a/patches/0036-drm-vblank-Add-vblank-timer.patch +++ b/patches/0036-drm-vblank-Add-vblank-timer.patch @@ -1,4 +1,4 @@ -From 27e25f85d3cf61f7a45c207ce4d092a7590bae5c Mon Sep 17 00:00:00 2001 +From 8c1157adcdd65a01f01a436e3da22cb79d8916e1 Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Tue, 16 Sep 2025 10:36:19 +0200 Subject: [PATCH 36/38] drm/vblank: Add vblank timer diff --git a/patches/0037-drm-vblank-Use-Linux-6.12-hrtimer-initialization-API.patch b/patches/0037-drm-vblank-Use-Linux-6.12-hrtimer-initialization-API.patch index a8da07ed..45068edd 100644 --- a/patches/0037-drm-vblank-Use-Linux-6.12-hrtimer-initialization-API.patch +++ b/patches/0037-drm-vblank-Use-Linux-6.12-hrtimer-initialization-API.patch @@ -1,4 +1,4 @@ -From 79635f95f77cb425d0ffc950a912b9aa68544fc6 Mon Sep 17 00:00:00 2001 +From 36a7d7cb606ea5990097bcb09121aa972b67dc6f Mon Sep 17 00:00:00 2001 From: Matej Hrica Date: Thu, 1 Oct 2026 10:50:39 +0200 Subject: [PATCH 37/38] drm/vblank: Use Linux 6.12 hrtimer initialization API diff --git a/patches/0038-drm-virtgpu-Use-vblank-timer.patch b/patches/0038-drm-virtgpu-Use-vblank-timer.patch index b9b57c16..468f584b 100644 --- a/patches/0038-drm-virtgpu-Use-vblank-timer.patch +++ b/patches/0038-drm-virtgpu-Use-vblank-timer.patch @@ -1,4 +1,4 @@ -From b22c25a9d1e25cce7d127bf81cf6cf78201c9ab5 Mon Sep 17 00:00:00 2001 +From 62fcf863ffcb53047f225586f54be2abafd96cf9 Mon Sep 17 00:00:00 2001 From: Thomas Zimmermann Date: Wed, 8 Oct 2025 15:06:51 +0200 Subject: [PATCH 38/38] drm/virtgpu: Use vblank timer @@ -9,7 +9,7 @@ Backport of upstream commit a036f5fceedb9fbd715565fef7b824a121503de7. 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/virtio/virtgpu_display.c b/drivers/gpu/drm/virtio/virtgpu_display.c -index 64baf2f22d9f..db773faa021d 100644 +index 9d4fcf2b6e87..fefb8089cbec 100644 --- a/drivers/gpu/drm/virtio/virtgpu_display.c +++ b/drivers/gpu/drm/virtio/virtgpu_display.c @@ -32,6 +32,8 @@