* [ptxdist] [PATCH 1/3] cryptodev: fix compilation with Linux-6.18-rc1
2026-02-22 15:17 [ptxdist] [PATCH 0/3] cryptodev update Ladislav Michl
@ 2026-02-22 15:18 ` Ladislav Michl
2026-02-22 15:19 ` [ptxdist] [PATCH 2/3] cryptodev: move cryptodev kernel module to platform Ladislav Michl
2026-02-22 15:19 ` [ptxdist] [PATCH 3/3] cryptodev: simplify rules Ladislav Michl
2 siblings, 0 replies; 4+ messages in thread
From: Ladislav Michl @ 2026-02-22 15:18 UTC (permalink / raw)
To: ptxdist
From: Ladislav Michl <ladis@triops.cz>
Signed-off-by: Ladislav Michl <ladis@triops.cz>
---
.../0004-Fix-build-for-Linux-6.18-rc1.patch | 50 +++++++++++++++++++
patches/cryptodev-linux-1.14/series | 3 +-
2 files changed, 52 insertions(+), 1 deletion(-)
create mode 100644 patches/cryptodev-linux-1.14/0004-Fix-build-for-Linux-6.18-rc1.patch
diff --git a/patches/cryptodev-linux-1.14/0004-Fix-build-for-Linux-6.18-rc1.patch b/patches/cryptodev-linux-1.14/0004-Fix-build-for-Linux-6.18-rc1.patch
new file mode 100644
index 000000000..879f755e5
--- /dev/null
+++ b/patches/cryptodev-linux-1.14/0004-Fix-build-for-Linux-6.18-rc1.patch
@@ -0,0 +1,50 @@
+From: =?UTF-8?q?Joan=20Bruguera=20Mic=C3=B3?= <joanbrugueram@gmail.com>
+Date: Sat, 6 Sep 2025 20:36:38 +0000
+Subject: [PATCH] Fix build for Linux 6.18-rc1
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It's no longer required to use nth_page() when iterating pages within a
+single scatterlist entry.
+
+Note I believe this code path in `sg_advance` is currently unreachable:
+It is only called from `get_userbuf_srtp`, passing in a scatterlist
+copied from one created by `__get_userbuf`, which only generates
+entries such that `sg->offset + sg->length <= PAGE_SIZE`.
+On the other hand, this code path in `sg_advance` requires that
+`sg->offset + sg->length > sg->offset + consumed >= PAGE_SIZE`.
+
+See also: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f8f03eb5f0f91fddc9bb8563c7e82bd7d3ba1dd0
+ https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ce00897b94bc5c62fab962625efcf1ab824d3688
+
+Signed-off-by: Joan Bruguera Micó <joanbrugueram@gmail.com>
+---
+ util.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/util.c b/util.c
+index 9eba4836ba6a..d42678169b2d 100644
+--- a/util.c
++++ b/util.c
+@@ -21,6 +21,7 @@
+
+ #include <crypto/scatterwalk.h>
+ #include <linux/scatterlist.h>
++#include <linux/version.h>
+ #include "util.h"
+
+ /* These were taken from Maxim Levitsky's patch to lkml.
+@@ -44,8 +45,12 @@ struct scatterlist *sg_advance(struct scatterlist *sg, int consumed)
+ sg->length -= consumed;
+
+ if (sg->offset >= PAGE_SIZE) {
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 18, 0))
++ struct page *page = sg_page(sg) + (sg->offset / PAGE_SIZE);
++#else
+ struct page *page =
+ nth_page(sg_page(sg), sg->offset / PAGE_SIZE);
++#endif
+ sg_set_page(sg, page, sg->length, sg->offset % PAGE_SIZE);
+ }
+
diff --git a/patches/cryptodev-linux-1.14/series b/patches/cryptodev-linux-1.14/series
index 12704929b..d832ab663 100644
--- a/patches/cryptodev-linux-1.14/series
+++ b/patches/cryptodev-linux-1.14/series
@@ -3,4 +3,5 @@
0001-Fix-cryptodev_verbosity-sysctl-for-Linux-6.11-rc1.patch
0002-Exclude-unused-struct-since-Linux-6.5.patch
0003-Fix-uninitialized-session-pointers.patch
-# b25ab355176e0ac9ad9433b6a050c0e4 - git-ptx-patches magic
+0004-Fix-build-for-Linux-6.18-rc1.patch
+# 3025afd546f1ec2e0afecd54c87e23d2 - git-ptx-patches magic
--
2.47.3
^ permalink raw reply [flat|nested] 4+ messages in thread* [ptxdist] [PATCH 2/3] cryptodev: move cryptodev kernel module to platform
2026-02-22 15:17 [ptxdist] [PATCH 0/3] cryptodev update Ladislav Michl
2026-02-22 15:18 ` [ptxdist] [PATCH 1/3] cryptodev: fix compilation with Linux-6.18-rc1 Ladislav Michl
@ 2026-02-22 15:19 ` Ladislav Michl
2026-02-22 15:19 ` [ptxdist] [PATCH 3/3] cryptodev: simplify rules Ladislav Michl
2 siblings, 0 replies; 4+ messages in thread
From: Ladislav Michl @ 2026-02-22 15:19 UTC (permalink / raw)
To: ptxdist
From: Ladislav Michl <ladis@triops.cz>
Signed-off-by: Ladislav Michl <ladis@triops.cz>
---
{rules => platforms}/cryptodev.in | 2 +-
rules/cryptodev-api.in | 1 -
rules/cryptodev-api.make | 1 +
3 files changed, 2 insertions(+), 2 deletions(-)
rename {rules => platforms}/cryptodev.in (89%)
diff --git a/rules/cryptodev.in b/platforms/cryptodev.in
similarity index 89%
rename from rules/cryptodev.in
rename to platforms/cryptodev.in
index f59d8f58c..59d4aa9f0 100644
--- a/rules/cryptodev.in
+++ b/platforms/cryptodev.in
@@ -1,4 +1,4 @@
-## SECTION=core
+## SECTION=platform_project_specific
config CRYPTODEV
tristate
diff --git a/rules/cryptodev-api.in b/rules/cryptodev-api.in
index 86af4ed23..10a42c46d 100644
--- a/rules/cryptodev-api.in
+++ b/rules/cryptodev-api.in
@@ -2,7 +2,6 @@
config CRYPTODEV_API
tristate
- select CRYPTODEV if RUNTIME
prompt "cryptodev API"
help
API headers for Cryptodev-linux. This is needed to build
diff --git a/rules/cryptodev-api.make b/rules/cryptodev-api.make
index 606108bd9..762195278 100644
--- a/rules/cryptodev-api.make
+++ b/rules/cryptodev-api.make
@@ -18,6 +18,7 @@ CRYPTODEV_API_VERSION = $(CRYPTODEV_VERSION)
CRYPTODEV_API_MD5 = $(CRYPTODEV_MD5)
CRYPTODEV_API = cryptodev-api-$(CRYPTODEV_API_VERSION)
CRYPTODEV_API_SUFFIX = tar.gz
+CRYPTODEV_API_PATCHES = $(CRYPTODEV)
CRYPTODEV_API_URL = $(CRYPTODEV_URL)
CRYPTODEV_API_SOURCE = $(CRYPTODEV_SOURCE)
CRYPTODEV_API_DIR = $(BUILDDIR)/$(CRYPTODEV_API)
--
2.47.3
^ permalink raw reply [flat|nested] 4+ messages in thread* [ptxdist] [PATCH 3/3] cryptodev: simplify rules
2026-02-22 15:17 [ptxdist] [PATCH 0/3] cryptodev update Ladislav Michl
2026-02-22 15:18 ` [ptxdist] [PATCH 1/3] cryptodev: fix compilation with Linux-6.18-rc1 Ladislav Michl
2026-02-22 15:19 ` [ptxdist] [PATCH 2/3] cryptodev: move cryptodev kernel module to platform Ladislav Michl
@ 2026-02-22 15:19 ` Ladislav Michl
2 siblings, 0 replies; 4+ messages in thread
From: Ladislav Michl @ 2026-02-22 15:19 UTC (permalink / raw)
To: ptxdist
From: Ladislav Michl <ladis@triops.cz>
As a header is installed in separate cryptodev-api package rules can
call kernel build system directly.
Signed-off-by: Ladislav Michl <ladis@triops.cz>
---
rules/cryptodev.make | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/rules/cryptodev.make b/rules/cryptodev.make
index 4f4f2944a..d5e34e39a 100644
--- a/rules/cryptodev.make
+++ b/rules/cryptodev.make
@@ -45,11 +45,8 @@ CRYPTODEV_WRAPPER_ACCEPT_PATHS = \
$(KERNEL_DIR)
CRYPTODEV_MAKE_OPT = \
- O=$(KERNEL_BUILD_DIR) \
- $(KERNEL_BASE_OPT) \
- KERNEL_DIR=$(KERNEL_DIR) \
- DESTDIR=$(CRYPTODEV_PKGDIR) \
- prefix=/usr
+ $(KERNEL_MODULE_OPT) \
+ modules
# ----------------------------------------------------------------------------
# Install
@@ -65,7 +62,7 @@ $(STATEDIR)/cryptodev.install:
$(STATEDIR)/cryptodev.targetinstall:
@$(call targetinfo)
- @$(call compile, CRYPTODEV, $(CRYPTODEV_MAKE_OPT) install)
+ @$(call compile, CRYPTODEV, $(CRYPTODEV_MAKE_OPT)_install)
@$(call touch)
# vim: syntax=make
--
2.47.3
^ permalink raw reply [flat|nested] 4+ messages in thread