From 6535e21891c68c9a094dc1b59acb950a49f23120 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Felipe=20Ferrada?= Date: Tue, 18 Mar 2025 15:52:01 -0300 Subject: [PATCH] Update dma-proxy.c Updated dma_proxy.c to fix issues related to class_create --- linux-user-space-dma/Software/Kernel/dma-proxy.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/linux-user-space-dma/Software/Kernel/dma-proxy.c b/linux-user-space-dma/Software/Kernel/dma-proxy.c index ed3b524..65585df 100644 --- a/linux-user-space-dma/Software/Kernel/dma-proxy.c +++ b/linux-user-space-dma/Software/Kernel/dma-proxy.c @@ -428,8 +428,14 @@ static int cdevice_init(struct dma_proxy_channel *pchannel_p, char *name) * in /dev to be created */ if (!local_class_p) { + //Fix extracted from https://community.intel.com/t5/Analyzers/redhat9-5-14-0-kernal-header-changes-break-sepdk-build/m-p/1605880 + // from 6.4, class_create changed + //https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=1aaba11da9aa7d7d6b52a74d45b31cac118295a1 + #if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0) + local_class_p = class_create(DRIVER_NAME); + #else local_class_p = class_create(THIS_MODULE, DRIVER_NAME); - + #endif if (IS_ERR(pchannel_p->dma_device_p->class)) { dev_err(pchannel_p->dma_device_p, "unable to create class\n"); rc = ERROR;