mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] [PATCH 0/3] cryptodev update
@ 2026-02-22 15:17 Ladislav Michl
  2026-02-22 15:18 ` [ptxdist] [PATCH 1/3] cryptodev: fix compilation with Linux-6.18-rc1 Ladislav Michl
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Ladislav Michl @ 2026-02-22 15:17 UTC (permalink / raw)
  To: ptxdist

A small update of cryptodev package consisting of one imported fix
from upstream and most importantly moving package to platform.
I guess it should be alway done this way. Cryptodev is linux module
and should depend on Linux kernel, however it currently depends on
Linux kernel tools (unfortunately both are using PTXCONF_KERNEL
symbol, so it remained unnoticed)

Ladislav Michl (3):
  cryptodev: fix compilation with Linux-6.18-rc1
  cryptodev: move cryptodev kernel module to platform
  cryptodev: simplify rules

 .../0004-Fix-build-for-Linux-6.18-rc1.patch   | 50 +++++++++++++++++++
 patches/cryptodev-linux-1.14/series           |  3 +-
 {rules => platforms}/cryptodev.in             |  2 +-
 rules/cryptodev-api.in                        |  1 -
 rules/cryptodev-api.make                      |  1 +
 rules/cryptodev.make                          |  9 ++--
 6 files changed, 57 insertions(+), 9 deletions(-)
 create mode 100644 patches/cryptodev-linux-1.14/0004-Fix-build-for-Linux-6.18-rc1.patch
 rename {rules => platforms}/cryptodev.in (89%)

-- 
2.47.3




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [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

end of thread, other threads:[~2026-02-22 15:19 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
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 ` [ptxdist] [PATCH 3/3] cryptodev: simplify rules Ladislav Michl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox