Skip to content
Snippets Groups Projects
Verified Commit 39beb7f2 authored by Spotlight Deveaux's avatar Spotlight Deveaux :fox:
Browse files

sys-fs/zfs-kmod: Add patches to support Linux 6.2.8 and 6.3.x

parent e87b3a2d
No related branches found
No related tags found
No related merge requests found
AUX 2.1.7-ppc64-ieee128-compat.patch 6889 BLAKE2B 9214915ed5b1d149927d46f749903fbb9b4d243d993041b8c6db039dcb7a3968a315f211e010ef9373b721336d45daef264d951e7ea1e0aed01818ebccae9d02 SHA512 4e3edbe396d0c1fdb7b286417b2bf7fe114b392e09158b3f5d3e3d1c4844bf0d59263309883363175dacd63194fd0d6a120ace35c83989d0546dae825bbb91bd
AUX zfs-kmod-2.1.6-fgrep.patch 2183 BLAKE2B b8c9b58cc6d94e9ddeacbe3c5eca9d040f1c6fba84b814c8c553d5c1e15334765d3190286a4ad2298762bc54f66a8b89ef69d115cfbd5a25d928170a1d46a770 SHA512 f65e7ffa8cfd00da7ad6d1fcbf5d61172c52e55ea2630f719b49750692c1c046e8baed0e04cadc841adbd804cf861ec712b0d07dbbcae7c1c3b475326045ae8c
AUX zfs-kmod-2.1.9-6.3-compat.patch 3588 BLAKE2B 2f78329bc613be0d5cd7c5cddbc37096218c6a0f72d3241037ae843f493c9204b0fa5072d30ba6ba7276b6f5217cc385cb80aa89fc4255895418b9c1ec9857f4 SHA512 808b565b247faf5a005e8088d9b556f2711f271eb7f7df177675a1ecc9331710ed19028296dc70db225f4979333237fd391bfb64a7f5d5d743e358e578c93e9b
AUX zfs-kmod-2.1.9-blkdev-compat.patch 1667 BLAKE2B 4cbfabbb37e9ed590a7c082b2d1c12ff3fb3c471a313e3db6b8c5bfe63fb956015370268caf0c0d11230f1e41fc6136ed1ec26710ca539c0a20281f2dfb18485 SHA512 b17a67cad309b498351b5833c7863b1df017e62d34843bef2784b951fd9bfc019671b0e5574da86314d7a36901c71bbfd302464096d2ab551e9842ca801ed409
DIST zfs-2.1.9.tar.gz 35106538 BLAKE2B d7553cc162687531b254089e29e2e15e2eb6b362cecd8e70c24bbb5dbffbde82036ad2d416f4caeceaa324bee8a2e59d9e3cd8a3bf55a2e3c0718c7af9562812 SHA512 a3c410abe911be7d3d66af8ad7023a810eb4ae3284001e544c3a34275eb17a4916a7c094936a2628a590007c007eea84673efa9f3201fd9f24c499fd5ed3ed75
DIST zfs-2.1.9.tar.gz.asc 836 BLAKE2B 1e76525eab338398dd6ff7539ea4e7d18847d0f40e9093d813ec93fce5fa4c16e09f91c0805ba01a29190f673d131f85442c13035166d6f2d007a7e42dc15486 SHA512 35e1213fcac0458e1243355beba021dfefef455df2b341fbc4b10047f9ed4747df84e319d10ffe4bbcd572fbf014019e0dec200eb4e7d3c116fb805369182cb0
EBUILD zfs-kmod-2.1.9.ebuild 5434 BLAKE2B f417c108ad15c32d0a9a7c0a3ce13c094cdb68b5042a2a9c90a237db8c4cffe4658844989efa0b6ec2dafa68d0d5bd12fd1fc6c22a89b78fb175cd6b40761730 SHA512 565937235122e96ed251bb2b555ba6c756c3fc860cb61ba8139fd2d763d8a29f87410bb00e804318f224fb7f28e5bade1bef4c4cb741ca435f9e1a3f72b11b2a
EBUILD zfs-kmod-2.1.9.ebuild 5653 BLAKE2B cdcad3067962346a759f56706bb0fd5ab8d8213ae14948d78736c173ed821c4d5d7465def7c0a271fea9deb28dea8e7de8d6e39de540d84c526453b50e2045e3 SHA512 e82965568fbab4a1d2dde1e10d93c7ef8c4b227c0478d54d2d568262c4aea14bce45aef286a6b82b4cec8beadcb821370c84707ca5214ff596c588f4a267263f
EBUILD zfs-kmod-9999.ebuild 6569 BLAKE2B 8930919548137104670e3b2567bba97e763b67265b6fe00621d6a458546770318602dc1333fcd908475ce6583a6150e38a1bcceaf76a85da219071564d3ab387 SHA512 c32cfef598f388bc7ce5474ca27dcc115ac35620aa16a06cd5b5c9bc101819d2f5116605e2b1d6300ceb1bdc048fd70bbae2c18bac831517b281cb7b4a47d926
MISC metadata.xml 651 BLAKE2B 477c5d768a2eddab7bc0c14d0845801e25bfd9298fe229a132d7ff11a8560988d0230ec5d4b1447df32f58b9754df0cbe989f2a5600cd3fa99124ea4edc45cdd SHA512 d9bf0598c87bcdaab7d81dd5502caf1400f3c8d3834a6770630d85ed365cd4ebb3beeebae72d2d4d49bcdd0aa6cd709aa57cb2af4195dfc04a9c0cef89cfd724
From 8324d738fdb3096bd97336476bb399e6c312289a Mon Sep 17 00:00:00 2001
From: Richard Yao <richard.yao@alumni.stonybrook.edu>
Date: Thu, 12 Jan 2023 11:06:57 -0500
Subject: [PATCH] Linux ppc64le ieee128 compat: Do not redefine __asm on
external headers
There is an external assembly declaration extension in GNU C that glibc
uses when building with ieee128 floating point support on ppc64le.
Marking that as volatile makes no sense, so the build breaks.
It does not make sense to only mark this as volatile on Linux, since if
do not want the compiler reordering things on Linux, we do not want the
compiler reordering things on any other platform, so we stop treating
Linux specially and just manually inline the CPP macro so that we can
eliminate it. This should fix the build on ppc64le.
Closes openzfs/zfs#14308
Signed-off-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
---
.../vdev_raidz_math_powerpc_altivec_common.h | 44 +++++++++----------
1 file changed, 20 insertions(+), 24 deletions(-)
diff --git a/module/zfs/vdev_raidz_math_powerpc_altivec_common.h b/module/zfs/vdev_raidz_math_powerpc_altivec_common.h
index 46d42c5e241..f76eb47a9c6 100644
--- a/module/zfs/vdev_raidz_math_powerpc_altivec_common.h
+++ b/module/zfs/vdev_raidz_math_powerpc_altivec_common.h
@@ -26,10 +26,6 @@
#include <sys/types.h>
#include <sys/simd.h>
-#ifdef __linux__
-#define __asm __asm__ __volatile__
-#endif
-
#define _REG_CNT(_0, _1, _2, _3, _4, _5, _6, _7, N, ...) N
#define REG_CNT(r...) _REG_CNT(r, 8, 7, 6, 5, 4, 3, 2, 1)
@@ -142,7 +138,7 @@ typedef struct v {
{ \
switch (REG_CNT(r)) { \
case 8: \
- __asm( \
+ __asm__ __volatile__( \
"lvx 21,0,%[SRC0]\n" \
"lvx 20,0,%[SRC1]\n" \
"lvx 19,0,%[SRC2]\n" \
@@ -172,7 +168,7 @@ typedef struct v {
: "v18", "v19", "v20", "v21"); \
break; \
case 4: \
- __asm( \
+ __asm__ __volatile__( \
"lvx 21,0,%[SRC0]\n" \
"lvx 20,0,%[SRC1]\n" \
"lvx 19,0,%[SRC2]\n" \
@@ -189,7 +185,7 @@ typedef struct v {
: "v18", "v19", "v20", "v21"); \
break; \
case 2: \
- __asm( \
+ __asm__ __volatile__( \
"lvx 21,0,%[SRC0]\n" \
"lvx 20,0,%[SRC1]\n" \
"vxor " VR0(r) "," VR0(r) ",21\n" \
@@ -208,7 +204,7 @@ typedef struct v {
{ \
switch (REG_CNT(r)) { \
case 8: \
- __asm( \
+ __asm__ __volatile__( \
"vxor " VR4(r) "," VR4(r) "," VR0(r) "\n" \
"vxor " VR5(r) "," VR5(r) "," VR1(r) "\n" \
"vxor " VR6(r) "," VR6(r) "," VR2(r) "\n" \
@@ -217,7 +213,7 @@ typedef struct v {
: RVR0(r), RVR1(r), RVR2(r), RVR3(r)); \
break; \
case 4: \
- __asm( \
+ __asm__ __volatile__( \
"vxor " VR2(r) "," VR2(r) "," VR0(r) "\n" \
"vxor " VR3(r) "," VR3(r) "," VR1(r) "\n" \
: UVR2(r), UVR3(r) \
@@ -232,7 +228,7 @@ typedef struct v {
{ \
switch (REG_CNT(r)) { \
case 8: \
- __asm( \
+ __asm__ __volatile__( \
"vxor " VR0(r) "," VR0(r) "," VR0(r) "\n" \
"vxor " VR1(r) "," VR1(r) "," VR1(r) "\n" \
"vxor " VR2(r) "," VR2(r) "," VR2(r) "\n" \
@@ -245,7 +241,7 @@ typedef struct v {
WVR4(r), WVR5(r), WVR6(r), WVR7(r)); \
break; \
case 4: \
- __asm( \
+ __asm__ __volatile__( \
"vxor " VR0(r) "," VR0(r) "," VR0(r) "\n" \
"vxor " VR1(r) "," VR1(r) "," VR1(r) "\n" \
"vxor " VR2(r) "," VR2(r) "," VR2(r) "\n" \
@@ -253,7 +249,7 @@ typedef struct v {
: WVR0(r), WVR1(r), WVR2(r), WVR3(r)); \
break; \
case 2: \
- __asm( \
+ __asm__ __volatile__( \
"vxor " VR0(r) "," VR0(r) "," VR0(r) "\n" \
"vxor " VR1(r) "," VR1(r) "," VR1(r) "\n" \
: WVR0(r), WVR1(r)); \
@@ -267,7 +263,7 @@ typedef struct v {
{ \
switch (REG_CNT(r)) { \
case 8: \
- __asm( \
+ __asm__ __volatile__( \
"vor " VR4(r) "," VR0(r) "," VR0(r) "\n" \
"vor " VR5(r) "," VR1(r) "," VR1(r) "\n" \
"vor " VR6(r) "," VR2(r) "," VR2(r) "\n" \
@@ -276,7 +272,7 @@ typedef struct v {
: RVR0(r), RVR1(r), RVR2(r), RVR3(r)); \
break; \
case 4: \
- __asm( \
+ __asm__ __volatile__( \
"vor " VR2(r) "," VR0(r) "," VR0(r) "\n" \
"vor " VR3(r) "," VR1(r) "," VR1(r) "\n" \
: WVR2(r), WVR3(r) \
@@ -291,7 +287,7 @@ typedef struct v {
{ \
switch (REG_CNT(r)) { \
case 8: \
- __asm( \
+ __asm__ __volatile__( \
"lvx " VR0(r) " ,0,%[SRC0]\n" \
"lvx " VR1(r) " ,0,%[SRC1]\n" \
"lvx " VR2(r) " ,0,%[SRC2]\n" \
@@ -312,7 +308,7 @@ typedef struct v {
[SRC7] "r" ((OFFSET(src, 112)))); \
break; \
case 4: \
- __asm( \
+ __asm__ __volatile__( \
"lvx " VR0(r) " ,0,%[SRC0]\n" \
"lvx " VR1(r) " ,0,%[SRC1]\n" \
"lvx " VR2(r) " ,0,%[SRC2]\n" \
@@ -324,7 +320,7 @@ typedef struct v {
[SRC3] "r" ((OFFSET(src, 48)))); \
break; \
case 2: \
- __asm( \
+ __asm__ __volatile__( \
"lvx " VR0(r) " ,0,%[SRC0]\n" \
"lvx " VR1(r) " ,0,%[SRC1]\n" \
: WVR0(r), WVR1(r) \
@@ -340,7 +336,7 @@ typedef struct v {
{ \
switch (REG_CNT(r)) { \
case 8: \
- __asm( \
+ __asm__ __volatile__( \
"stvx " VR0(r) " ,0,%[DST0]\n" \
"stvx " VR1(r) " ,0,%[DST1]\n" \
"stvx " VR2(r) " ,0,%[DST2]\n" \
@@ -362,7 +358,7 @@ typedef struct v {
: "memory"); \
break; \
case 4: \
- __asm( \
+ __asm__ __volatile__( \
"stvx " VR0(r) " ,0,%[DST0]\n" \
"stvx " VR1(r) " ,0,%[DST1]\n" \
"stvx " VR2(r) " ,0,%[DST2]\n" \
@@ -375,7 +371,7 @@ typedef struct v {
: "memory"); \
break; \
case 2: \
- __asm( \
+ __asm__ __volatile__( \
"stvx " VR0(r) " ,0,%[DST0]\n" \
"stvx " VR1(r) " ,0,%[DST1]\n" \
: : [DST0] "r" ((OFFSET(dst, 0))), \
@@ -400,7 +396,7 @@ typedef struct v {
#define MUL2_SETUP() \
{ \
- __asm( \
+ __asm__ __volatile__( \
"vspltisb " VR(16) ",14\n" \
"vspltisb " VR(17) ",15\n" \
"vaddubm " VR(16) "," VR(17) "," VR(16) "\n" \
@@ -412,7 +408,7 @@ typedef struct v {
{ \
switch (REG_CNT(r)) { \
case 4: \
- __asm( \
+ __asm__ __volatile__( \
"vcmpgtsb 19," VR(17) "," VR0(r) "\n" \
"vcmpgtsb 18," VR(17) "," VR1(r) "\n" \
"vcmpgtsb 21," VR(17) "," VR2(r) "\n" \
@@ -434,7 +430,7 @@ typedef struct v {
: "v18", "v19", "v20", "v21"); \
break; \
case 2: \
- __asm( \
+ __asm__ __volatile__( \
"vcmpgtsb 19," VR(17) "," VR0(r) "\n" \
"vcmpgtsb 18," VR(17) "," VR1(r) "\n" \
"vand 19,19," VR(16) "\n" \
@@ -478,7 +474,7 @@ typedef struct v {
{ \
switch (REG_CNT(r)) { \
case 2: \
- __asm( \
+ __asm__ __volatile__( \
/* lts for upper part */ \
"vspltisb 15,15\n" \
"lvx 10,0,%[lt0]\n" \
https://github.com/openzfs/zfs/commit/d30577c9dd811688f2609ad532b011b99bceb485
From d30577c9dd811688f2609ad532b011b99bceb485 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=BD=D0=B0=D0=B1?= <nabijaczleweli@nabijaczleweli.xyz>
Date: Sat, 12 Mar 2022 00:26:46 +0100
Subject: [PATCH] fgrep -> grep -F
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: John Kennedy <john.kennedy@delphix.com>
Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz>
Closes #13259
--- a/config/kernel.m4
+++ b/config/kernel.m4
@@ -394,11 +394,11 @@ AC_DEFUN([ZFS_AC_KERNEL], [
utsrelease1=$kernelbuild/include/linux/version.h
utsrelease2=$kernelbuild/include/linux/utsrelease.h
utsrelease3=$kernelbuild/include/generated/utsrelease.h
- AS_IF([test -r $utsrelease1 && fgrep -q UTS_RELEASE $utsrelease1], [
+ AS_IF([test -r $utsrelease1 && grep -qF UTS_RELEASE $utsrelease1], [
utsrelease=$utsrelease1
- ], [test -r $utsrelease2 && fgrep -q UTS_RELEASE $utsrelease2], [
+ ], [test -r $utsrelease2 && grep -qF UTS_RELEASE $utsrelease2], [
utsrelease=$utsrelease2
- ], [test -r $utsrelease3 && fgrep -q UTS_RELEASE $utsrelease3], [
+ ], [test -r $utsrelease3 && grep -qF UTS_RELEASE $utsrelease3], [
utsrelease=$utsrelease3
])
--- a/config/zfs-build.m4
+++ b/config/zfs-build.m4
@@ -173,7 +173,7 @@ AC_DEFUN([ZFS_AC_DEBUG_KMEM_TRACKING], [
])
AC_DEFUN([ZFS_AC_DEBUG_INVARIANTS_DETECT_FREEBSD], [
- AS_IF([sysctl -n kern.conftxt | fgrep -qx $'options\tINVARIANTS'],
+ AS_IF([sysctl -n kern.conftxt | grep -Fqx $'options\tINVARIANTS'],
[enable_invariants="yes"],
[enable_invariants="no"])
])
--- a/tests/zfs-tests/tests/functional/cli_root/zpool_wait/zpool_wait.kshlib
+++ b/tests/zfs-tests/tests/functional/cli_root/zpool_wait/zpool_wait.kshlib
@@ -120,5 +120,5 @@ function check_while_waiting
# Whether any vdev in the given pool is initializing
function is_vdev_initializing # pool
{
- zpool status -i "$1" | grep 'initialized, started' >/dev/null
+ zpool status -i "$1" | grep -q 'initialized, started'
}
From 3ace9dea01f2088e81c0b90ca8e07faad7364eca Mon Sep 17 00:00:00 2001
From: Rich Ercolani <rincebrain@gmail.com>
Date: Thu, 23 Mar 2023 03:45:42 -0400
Subject: [PATCH] An attempt at 6.3 compat
Signed-off-by: Rich Ercolani <rincebrain@gmail.com>
---
config/kernel-generic_io_acct.m4 | 28 +++++++++++++++----
include/os/linux/kernel/linux/blkdev_compat.h | 9 ++++--
2 files changed, 30 insertions(+), 7 deletions(-)
diff --git a/config/kernel-generic_io_acct.m4 b/config/kernel-generic_io_acct.m4
index a8a448c6fe9..2e30c480030 100644
--- a/config/kernel-generic_io_acct.m4
+++ b/config/kernel-generic_io_acct.m4
@@ -2,7 +2,20 @@ dnl #
dnl # Check for generic io accounting interface.
dnl #
AC_DEFUN([ZFS_AC_KERNEL_SRC_GENERIC_IO_ACCT], [
- ZFS_LINUX_TEST_SRC([bdev_io_acct], [
+ ZFS_LINUX_TEST_SRC([bdev_io_acct_62], [
+ #include <linux/blkdev.h>
+ ], [
+ struct block_device *bdev = NULL;
+ struct bio *bio = NULL;
+ unsigned long passed_time = 0;
+ unsigned long start_time;
+
+ start_time = bdev_start_io_acct(bdev, bio_op(bio),
+ bio_sectors(bio), passed_time);
+ bdev_end_io_acct(bdev, bio_op(bio), bio_sectors(bio), start_time);
+ ])
+
+ ZFS_LINUX_TEST_SRC([bdev_io_acct_old], [
#include <linux/blkdev.h>
], [
struct block_device *bdev = NULL;
@@ -68,13 +81,17 @@ AC_DEFUN([ZFS_AC_KERNEL_GENERIC_IO_ACCT], [
dnl # disk_start_io_acct() and disk_end_io_acct() have been replaced by
dnl # bdev_start_io_acct() and bdev_end_io_acct().
dnl #
- AC_MSG_CHECKING([whether generic bdev_*_io_acct() are available])
- ZFS_LINUX_TEST_RESULT([bdev_io_acct], [
+ AC_MSG_CHECKING([whether 6.2+ bdev_*_io_acct() are available])
+ ZFS_LINUX_TEST_RESULT([bdev_io_acct_62], [
AC_MSG_RESULT(yes)
- AC_DEFINE(HAVE_BDEV_IO_ACCT, 1, [bdev_*_io_acct() available])
+ AC_DEFINE(HAVE_BDEV_IO_ACCT_62, 1, [bdev_*_io_acct() available])
], [
AC_MSG_RESULT(no)
-
+ AC_MSG_CHECKING([whether pre-6.3 bdev_*_io_acct() are available])
+ ZFS_LINUX_TEST_RESULT([bdev_io_acct_old], [
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_BDEV_IO_ACCT_OLD, 1, [bdev_*_io_acct() available])
+ ], [
dnl #
dnl # 5.12 API,
dnl #
@@ -137,3 +154,4 @@ AC_DEFUN([ZFS_AC_KERNEL_GENERIC_IO_ACCT], [
])
])
])
+])
\ No newline at end of file
diff --git a/include/os/linux/kernel/linux/blkdev_compat.h b/include/os/linux/kernel/linux/blkdev_compat.h
index f04eb5b2593..470abbd3454 100644
--- a/include/os/linux/kernel/linux/blkdev_compat.h
+++ b/include/os/linux/kernel/linux/blkdev_compat.h
@@ -592,7 +592,10 @@ blk_generic_start_io_acct(struct request_queue *q __attribute__((unused)),
struct gendisk *disk __attribute__((unused)),
int rw __attribute__((unused)), struct bio *bio)
{
-#if defined(HAVE_BDEV_IO_ACCT)
+#if defined(HAVE_BDEV_IO_ACCT_62)
+ return (bdev_start_io_acct(bio->bi_bdev, bio_op(bio),
+ bio_sectors(bio), jiffies));
+#elif defined(HAVE_BDEV_IO_ACCT_OLD)
return (bdev_start_io_acct(bio->bi_bdev, bio_sectors(bio),
bio_op(bio), jiffies));
#elif defined(HAVE_DISK_IO_ACCT)
@@ -618,7 +621,9 @@ blk_generic_end_io_acct(struct request_queue *q __attribute__((unused)),
struct gendisk *disk __attribute__((unused)),
int rw __attribute__((unused)), struct bio *bio, unsigned long start_time)
{
-#if defined(HAVE_BDEV_IO_ACCT)
+#if defined(HAVE_BDEV_IO_ACCT_62)
+ bdev_end_io_acct(bio->bi_bdev, bio_op(bio), bio_sectors(bio), start_time);
+#elif defined(HAVE_BDEV_IO_ACCT_OLD)
bdev_end_io_acct(bio->bi_bdev, bio_op(bio), start_time);
#elif defined(HAVE_DISK_IO_ACCT)
disk_end_io_acct(disk, bio_op(bio), start_time);
From 2e9c9b792fd34b4fe1fb524444529f41bcb1b7c5 Mon Sep 17 00:00:00 2001
From: Rich Ercolani <rincebrain@gmail.com>
Date: Thu, 23 Mar 2023 06:49:04 -0400
Subject: [PATCH] go away
---
config/kernel-generic_io_acct.m4 | 3 ++-
include/os/linux/kernel/linux/blkdev_compat.h | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/config/kernel-generic_io_acct.m4 b/config/kernel-generic_io_acct.m4
index 2e30c480030..c7b700c5d40 100644
--- a/config/kernel-generic_io_acct.m4
+++ b/config/kernel-generic_io_acct.m4
@@ -11,7 +11,7 @@ AC_DEFUN([ZFS_AC_KERNEL_SRC_GENERIC_IO_ACCT], [
unsigned long start_time;
start_time = bdev_start_io_acct(bdev, bio_op(bio),
- bio_sectors(bio), passed_time);
+ passed_time);
bdev_end_io_acct(bdev, bio_op(bio), bio_sectors(bio), start_time);
])
@@ -92,6 +92,7 @@ AC_DEFUN([ZFS_AC_KERNEL_GENERIC_IO_ACCT], [
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_BDEV_IO_ACCT_OLD, 1, [bdev_*_io_acct() available])
], [
+ AC_MSG_RESULT(no)
dnl #
dnl # 5.12 API,
dnl #
diff --git a/include/os/linux/kernel/linux/blkdev_compat.h b/include/os/linux/kernel/linux/blkdev_compat.h
index 470abbd3454..c6cc743c866 100644
--- a/include/os/linux/kernel/linux/blkdev_compat.h
+++ b/include/os/linux/kernel/linux/blkdev_compat.h
@@ -594,7 +594,7 @@ blk_generic_start_io_acct(struct request_queue *q __attribute__((unused)),
{
#if defined(HAVE_BDEV_IO_ACCT_62)
return (bdev_start_io_acct(bio->bi_bdev, bio_op(bio),
- bio_sectors(bio), jiffies));
+ jiffies));
#elif defined(HAVE_BDEV_IO_ACCT_OLD)
return (bdev_start_io_acct(bio->bi_bdev, bio_sectors(bio),
bio_op(bio), jiffies));
......@@ -26,7 +26,7 @@ else
ZFS_KERNEL_DEP="${ZFS_KERNEL_DEP%%.*}.$(( ${ZFS_KERNEL_DEP##*.} + 1))"
if [[ ${PV} != *_rc* ]]; then
KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv ~sparc"
KEYWORDS="amd64 arm64 ppc64 ~riscv ~sparc"
fi
fi
......@@ -60,6 +60,13 @@ RESTRICT="debug? ( strip ) test"
DOCS=( AUTHORS COPYRIGHT META README.md )
PATCHES=(
# Workaround for kernel 6.2.8/6.3.x support:
# https://github.com/openzfs/zfs/issues/14658#issuecomment-1480723155
"${FILESDIR}"/${PN}-2.1.9-6.3-compat.patch
"${FILESDIR}"/${PN}-2.1.9-blkdev-compat.patch
)
pkg_pretend() {
use rootfs || return 0
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment