summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralperak <alperyasinak1@gmail.com>2024-01-01 18:45:19 +0300
committerKhem Raj <raj.khem@gmail.com>2024-01-01 17:09:56 -0800
commit7a6ca59ab1f57974066a377677bb3c41908ceaa1 (patch)
tree31c914044c0685c519c77bfe22ecd9e4dd30d244
parente1c4be9bd47cb77c70b8ffe8f3b2abdb1e911318 (diff)
downloadmeta-openembedded-7a6ca59ab1f57974066a377677bb3c41908ceaa1.tar.gz
libnvme: upgrade 1.6 -> 1.7.1
* Patch dropped because it is already available in the new version. Changelog: ====== 1.7.1 ====== * The v1.7 contains a bug in the sysfs scan topology code which could double free some memory. As this is a very common code path to execute, it's worth to get this fix out fast. ======= 1.7 ======= * allocated payloads aligned * refactoring and improvements of RAE handling in get log pages * auto cleanup of resources * build instruction update and improving build situation for older distros * support for TP8018 * use sysfs only for topology scan The last point addresses a long standing problem. Whenever 'nvme list' is used it could add error log entries for certain devices. With the corresponding kernel changes this will not happen anymore. It also unlocks some possible new features. Note this depends on the upcoming 6.8 kernel. Signed-off-by: alperak <alperyasinak1@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/recipes-support/libnvme/libnvme/0001-test-handle-POSIX-ioctl-prototype.patch68
-rw-r--r--meta-oe/recipes-support/libnvme/libnvme_1.7.1.bb (renamed from meta-oe/recipes-support/libnvme/libnvme_1.6.bb)6
2 files changed, 2 insertions, 72 deletions
diff --git a/meta-oe/recipes-support/libnvme/libnvme/0001-test-handle-POSIX-ioctl-prototype.patch b/meta-oe/recipes-support/libnvme/libnvme/0001-test-handle-POSIX-ioctl-prototype.patch
deleted file mode 100644
index ef9cc47d25..0000000000
--- a/meta-oe/recipes-support/libnvme/libnvme/0001-test-handle-POSIX-ioctl-prototype.patch
+++ /dev/null
@@ -1,68 +0,0 @@
1From ca47ba3119365eafac0ab25a86cab9d9a1b29bd4 Mon Sep 17 00:00:00 2001
2From: Sam James <sam@gentoo.org>
3Date: Sat, 30 Sep 2023 06:38:53 +0100
4Subject: [PATCH] test: handle POSIX ioctl prototype
5
6glibc has the following prototype for ioctl: int ioctl(int fd, unsigned long request, ...)
7POSIX (inc. musl) has the following for ioctl: int ioctl(int fd, int request, ...)
8
9Check which prototype is used in <sys/ioctl.h> to avoid a conflict and conditionally
10define the right one for the system.
11
12Bug: https://bugs.gentoo.org/914921
13Signed-off-by: Sam James <sam@gentoo.org>
14Upstream-Status: Backport [https://github.com/linux-nvme/libnvme/commit/ca47ba3119365eafac0ab25a86cab9d9a1b29bd4]
15---
16 meson.build | 10 ++++++++++
17 test/ioctl/mock.c | 6 +++++-
18 2 files changed, 15 insertions(+), 1 deletion(-)
19
20diff --git a/meson.build b/meson.build
21index 6fcf1da..2c979cc 100644
22--- a/meson.build
23+++ b/meson.build
24@@ -230,6 +230,16 @@ conf.set(
25 ),
26 description: 'Is network address and service translation available'
27 )
28+conf.set(
29+ 'HAVE_GLIBC_IOCTL',
30+ cc.compiles(
31+ '''#include <sys/ioctl.h>
32+ int ioctl(int fd, unsigned long request, ...);
33+ ''',
34+ name: 'ioctl has glibc-style prototype'
35+ ),
36+ description: 'Is ioctl the glibc interface (rather than POSIX)'
37+)
38
39 if cc.has_function_attribute('fallthrough')
40 conf.set('fallthrough', '__attribute__((__fallthrough__))')
41diff --git a/test/ioctl/mock.c b/test/ioctl/mock.c
42index e917244..5d2ac94 100644
43--- a/test/ioctl/mock.c
44+++ b/test/ioctl/mock.c
45@@ -114,7 +114,11 @@ void end_mock_cmds(void)
46 } \
47 })
48
49+#ifdef HAVE_GLIBC_IOCTL
50 int ioctl(int fd, unsigned long request, ...)
51+#else
52+int ioctl(int fd, int request, ...)
53+#endif
54 {
55 struct mock_cmds *mock_cmds;
56 bool result64;
57@@ -141,7 +145,7 @@ int ioctl(int fd, unsigned long request, ...)
58 result64 = true;
59 break;
60 default:
61- fail("unexpected %s %lu", __func__, request);
62+ fail("unexpected %s %lu", __func__, (unsigned long) request);
63 }
64 check(mock_cmds->remaining_cmds,
65 "unexpected %s command", mock_cmds->name);
66--
672.40.1
68
diff --git a/meta-oe/recipes-support/libnvme/libnvme_1.6.bb b/meta-oe/recipes-support/libnvme/libnvme_1.7.1.bb
index 802edac508..985fd7c55c 100644
--- a/meta-oe/recipes-support/libnvme/libnvme_1.6.bb
+++ b/meta-oe/recipes-support/libnvme/libnvme_1.7.1.bb
@@ -11,11 +11,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
11 file://ccan/licenses/CC0;md5=c17af43b05840255a6fedc5eda9d56cc \ 11 file://ccan/licenses/CC0;md5=c17af43b05840255a6fedc5eda9d56cc \
12 file://ccan/licenses/BSD-MIT;md5=838c366f69b72c5df05c96dff79b35f2" 12 file://ccan/licenses/BSD-MIT;md5=838c366f69b72c5df05c96dff79b35f2"
13DEPENDS = "json-c" 13DEPENDS = "json-c"
14SRCREV = "37a803cf77e224f66d86b1e1d9e74a15f55ea600" 14SRCREV = "13ba38387e5446849ae59d3ccd8183cf9aca3145"
15 15
16SRC_URI = "git://github.com/linux-nvme/libnvme;protocol=https;branch=master \ 16SRC_URI = "git://github.com/linux-nvme/libnvme;protocol=https;branch=master"
17 file://0001-test-handle-POSIX-ioctl-prototype.patch \
18"
19 17
20S = "${WORKDIR}/git" 18S = "${WORKDIR}/git"
21 19