summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Lass2020-05-19 20:45:17 +0200
committerMichael Lass2020-05-19 20:45:17 +0200
commitccdc867844c69a71ae74e7d5240f8ae98d123c3c (patch)
tree38fa7a2591eb15d797879c6df2049e256c3162dd
parent141a18ea22014dd87aa4ddb247429e30737ed092 (diff)
downloadaur-ccdc867844c69a71ae74e7d5240f8ae98d123c3c.tar.gz
Update to actual 1.8.6pre2 and fix build with GCC 10
-rw-r--r--.SRCINFO18
-rw-r--r--0001-LINUX-Avoid-building-rand-fortuna-kernel.o.patch261
-rw-r--r--0001-Temporary-fix-for-compilation-with-GCC-10.patch33
-rw-r--r--0002-LINUX-5.6-define-time_t-and-use-timespec-timespec64.patch162
-rw-r--r--0003-Update-NEWS-for-OpenAFS-1.8.6pre2.patch41
-rw-r--r--0004-Make-OpenAFS-1.8.6pre2.patch86
-rw-r--r--PKGBUILD21
7 files changed, 45 insertions, 577 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 10fe7cc1c2d..9de322c1dc1 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = openafs-modules-dkms
pkgdesc = Kernel module for OpenAFS (dkms)
- pkgver = 1.8.6pre1
+ pkgver = 1.8.6pre2
pkgrel = 1
url = http://www.openafs.org
arch = i686
@@ -10,23 +10,17 @@ pkgbase = openafs-modules-dkms
depends = dkms
depends = libelf
depends = openafs
- provides = openafs-modules=1.8.6pre1
+ provides = openafs-modules=1.8.6pre2
conflicts = openafs-features-libafs
conflicts = openafs-modules
conflicts = openafs<1.6.6-2
options = !emptydirs
- source = http://openafs.org/dl/openafs/candidate/1.8.6pre1/openafs-1.8.6pre1-src.tar.bz2
+ source = http://openafs.org/dl/openafs/candidate/1.8.6pre2/openafs-1.8.6pre2-src.tar.bz2
source = dkms.conf
- source = 0001-LINUX-Avoid-building-rand-fortuna-kernel.o.patch
- source = 0002-LINUX-5.6-define-time_t-and-use-timespec-timespec64.patch
- source = 0003-Update-NEWS-for-OpenAFS-1.8.6pre2.patch
- source = 0004-Make-OpenAFS-1.8.6pre2.patch
- sha256sums = 4ae020010632fbc9198be94ea97d6f6301c813227117fd8a28e15f32e8f58517
+ source = 0001-Temporary-fix-for-compilation-with-GCC-10.patch
+ sha256sums = ae1aa62c977fc13d61df1f9822ff75af301c50f8ff0528c8fd1f2914fffafcf5
sha256sums = 5ea5e184f9b44f5ed45817d2b5a10149d15c8c54f49e0b5b4b773652673cb9b0
- sha256sums = 3639bc58cf7896f4b3c5a0c93f8a7a65a119dbd6eff0cb55597e3762ac2e6b3f
- sha256sums = a75af2f13ac35e4d324183ac76727f53b832e7fa3b16f4983b48226a0c5452d2
- sha256sums = 5fc7fc6c44f950c99a1ad9629d6fe56bd88bd1f0b2f2ce3922939e7d073790c9
- sha256sums = d15fd705b0b24280c06ca8f2cb6d5c08bcb492cdb1f8f509de1d2c076c01c99d
+ sha256sums = ebd26d2434689ca7f1c71434cf9a524cf8f2457faa2ba93b90723f4244092451
pkgname = openafs-modules-dkms
diff --git a/0001-LINUX-Avoid-building-rand-fortuna-kernel.o.patch b/0001-LINUX-Avoid-building-rand-fortuna-kernel.o.patch
deleted file mode 100644
index e4a2acad244..00000000000
--- a/0001-LINUX-Avoid-building-rand-fortuna-kernel.o.patch
+++ /dev/null
@@ -1,261 +0,0 @@
-From 355ea43f0d1b7feae1b3af58bc33af12838db7c3 Mon Sep 17 00:00:00 2001
-From: Andrew Deason <adeason@sinenomine.net>
-Date: Mon, 2 Mar 2020 16:17:55 -0600
-Subject: [PATCH 1/5] LINUX: Avoid building rand-fortuna-kernel.o
-
-Currently, we build rand-fortuna-kernel.o for libafs on all platforms,
-even though we only use the fortuna RNG on AIX, DragonFlyBSD, HP-UX,
-and Irix. Everywhere else, our RAND_bytes() in
-src/crypto/hcrypto/kernel/rand.c uses osi_readRandom() instead of
-going through heimdal.
-
-Building rand-fortuna.c causes occasional build headaches for the
-kernel on Linux (see cc7f942, "LINUX: Disable kernel fortuna large
-frame errors"). The most recent instance of this is that Linux 5.6
-removes the definition for struct timeval, which is referenced in
-rand-fortuna.c.
-
-The Linux kernel is constantly changing, and so trying to keep
-rand-fortuna.c building on Linux seems like a waste of ongoing effort.
-So, just stop building rand-fortuna-kernel.o on Linux. The original
-intent of building this file on all platforms was to avoid bitrot, so
-still keep building rand-fortuna-kernel.o on all other platforms even
-when it's not used; just avoid it on Linux specifically, the platform
-that requires the most effort.
-
-To accomplish this, move rand-fortuna-kernel.o from AFSAOBJS to
-AFS_OS_OBJS, and remove it from the Linux-only AFSPAGOBJS.
-
-[1.8.x: The 1.8 branch does not contain the commits that introduced
--Wno-error=frame-larger-than= (cc7f942a and 54150f38), so we can skip
-removing the references to -Wno-error=frame-larger-than=.]
-
-Reviewed-on: https://gerrit.openafs.org/14084
-Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
-Tested-by: BuildBot <buildbot@rampaginggeek.com>
-Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
-(cherry picked from commit b8088b49dec23da19406fcb014e7100695dc8322)
-
-Change-Id: Iad0d1af5ffd79c576ddbc253b0037b9772187350
-Reviewed-on: https://gerrit.openafs.org/14094
-Reviewed-by: Andrew Deason <adeason@sinenomine.net>
-Tested-by: BuildBot <buildbot@rampaginggeek.com>
-Tested-by: Cheyenne Wills <cwills@sinenomine.net>
-Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
----
- src/crypto/hcrypto/kernel/rand.c | 13 ++++++++++++-
- src/libafs/Makefile.common.in | 2 --
- src/libafs/MakefileProto.AIX.in | 3 ++-
- src/libafs/MakefileProto.DARWIN.in | 4 ++--
- src/libafs/MakefileProto.DFBSD.in | 3 ++-
- src/libafs/MakefileProto.FBSD.in | 3 +++
- src/libafs/MakefileProto.HPUX.in | 3 ++-
- src/libafs/MakefileProto.IRIX.in | 3 ++-
- src/libafs/MakefileProto.LINUX.in | 1 -
- src/libafs/MakefileProto.NBSD.in | 3 ++-
- src/libafs/MakefileProto.OBSD.in | 3 ++-
- src/libafs/MakefileProto.SOLARIS.in | 3 ++-
- 12 files changed, 31 insertions(+), 13 deletions(-)
-
-diff --git a/src/crypto/hcrypto/kernel/rand.c b/src/crypto/hcrypto/kernel/rand.c
-index 81064863b..72cc41877 100644
---- a/src/crypto/hcrypto/kernel/rand.c
-+++ b/src/crypto/hcrypto/kernel/rand.c
-@@ -15,6 +15,15 @@
- */
- afs_kmutex_t hckernel_mutex;
-
-+/*
-+ * For these platforms, we use the fortuna RNG from heimdal (seeded from afsd
-+ * userspace on startup). Otherwise, we rely on osi_readRandom() as the source
-+ * of random data.
-+ */
-+#if defined(AFS_AIX_ENV) || defined(AFS_DFBSD_ENV) || defined(AFS_HPUX_ENV) || defined(AFS_SGI_ENV)
-+# define USE_FORTUNA
-+#endif
-+
- /* Called from osi_Init(); will only run once. */
- void
- init_hckernel_mutex(void)
-@@ -25,8 +34,10 @@ init_hckernel_mutex(void)
- void
- RAND_seed(const void *indata, size_t size)
- {
-+#ifdef USE_FORTUNA
- const RAND_METHOD *m = RAND_fortuna_method();
- m->seed(indata, size);
-+#endif
- }
-
- int
-@@ -34,7 +45,7 @@ RAND_bytes(void *outdata, size_t size)
- {
- if (size == 0)
- return 0;
--#if defined(AFS_AIX_ENV) || defined(AFS_DFBSD_ENV) || defined(AFS_HPUX_ENV) || defined(AFS_SGI_ENV)
-+#ifdef USE_FORTUNA
- const RAND_METHOD *m = RAND_fortuna_method();
- return m->bytes(outdata, size);
- #else
-diff --git a/src/libafs/Makefile.common.in b/src/libafs/Makefile.common.in
-index 0b8505a0f..b4e00166a 100644
---- a/src/libafs/Makefile.common.in
-+++ b/src/libafs/Makefile.common.in
-@@ -72,7 +72,6 @@ depsrcs:
-
- AFSAOBJS = \
- sha256-kernel.o \
-- rand-fortuna-kernel.o \
- rand-timer-kernel.o \
- afs_atomlist.o \
- afs_lhash.o \
-@@ -217,7 +216,6 @@ AFSNONFSOBJS = \
- # init daemons call pioctl
- AFSPAGOBJS = \
- sha256-kernel.o \
-- rand-fortuna-kernel.o \
- rand-timer-kernel.o \
- md5.o \
- evp.o \
-diff --git a/src/libafs/MakefileProto.AIX.in b/src/libafs/MakefileProto.AIX.in
-index 5c2b7467c..697ba7aa9 100644
---- a/src/libafs/MakefileProto.AIX.in
-+++ b/src/libafs/MakefileProto.AIX.in
-@@ -24,7 +24,8 @@ AFS_OS_OBJS = \
- osi_sleep.o \
- osi_timeout.o \
- osi_vcache.o \
-- osi_vm.o
-+ osi_vm.o \
-+ rand-fortuna-kernel.o
-
- AFSNOIAUTHOBJS = \
- afs_call.o \
-diff --git a/src/libafs/MakefileProto.DARWIN.in b/src/libafs/MakefileProto.DARWIN.in
-index 0592913c1..fc0945480 100644
---- a/src/libafs/MakefileProto.DARWIN.in
-+++ b/src/libafs/MakefileProto.DARWIN.in
-@@ -28,8 +28,8 @@ AFS_OS_OBJS = \
- osi_vcache.o \
- osi_vm.o \
- osi_vnodeops.o \
-- osi_module.o
--
-+ osi_module.o \
-+ rand-fortuna-kernel.o
-
- #AFS_OS_NFSOBJS = osi_vfsops_nfs.o
-
-diff --git a/src/libafs/MakefileProto.DFBSD.in b/src/libafs/MakefileProto.DFBSD.in
-index 41e1b5140..9c06a50a7 100644
---- a/src/libafs/MakefileProto.DFBSD.in
-+++ b/src/libafs/MakefileProto.DFBSD.in
-@@ -20,7 +20,8 @@ AFS_OS_OBJS = \
- osi_vcache.o \
- osi_vm.o \
- osi_vnodeops.o \
-- osi_module.o
-+ osi_module.o \
-+ rand-fortuna-kernel.o
-
- #AFS_OS_NFSOBJS = \
- # osi_vfsops_nfs.o
-diff --git a/src/libafs/MakefileProto.FBSD.in b/src/libafs/MakefileProto.FBSD.in
-index 4c3c0cd8e..e0616afad 100644
---- a/src/libafs/MakefileProto.FBSD.in
-+++ b/src/libafs/MakefileProto.FBSD.in
-@@ -31,6 +31,9 @@ SRCS+= \
- osi_vnodeops.c \
- osi_module.c
-
-+AFS_OS_OBJS = \
-+ rand-fortuna-kernel.o
-+
- #AFS_OS_NFSOBJS = \
- # osi_vfsops_nfs.o
-
-diff --git a/src/libafs/MakefileProto.HPUX.in b/src/libafs/MakefileProto.HPUX.in
-index 929884e23..0925a3f96 100644
---- a/src/libafs/MakefileProto.HPUX.in
-+++ b/src/libafs/MakefileProto.HPUX.in
-@@ -24,7 +24,8 @@ AFS_OS_OBJS = \
- osi_sleep.o \
- osi_vcache.o \
- osi_vnodeops.o \
-- osi_vm.o
-+ osi_vm.o \
-+ rand-fortuna-kernel.o
-
- AFS_OS_NFSOBJS = \
- <ia64_hpux1123 hp_ux1123>
-diff --git a/src/libafs/MakefileProto.IRIX.in b/src/libafs/MakefileProto.IRIX.in
-index 310db13fb..4142b413f 100644
---- a/src/libafs/MakefileProto.IRIX.in
-+++ b/src/libafs/MakefileProto.IRIX.in
-@@ -26,7 +26,8 @@ AFS_OS_OBJS = \
- osi_sleep.o \
- osi_vcache.o \
- osi_vm.o \
-- osi_vnodeops.o
-+ osi_vnodeops.o \
-+ rand-fortuna-kernel.o
-
- AFS_OS_NFSOBJS = \
- osi_vfsops_nfs.o
-diff --git a/src/libafs/MakefileProto.LINUX.in b/src/libafs/MakefileProto.LINUX.in
-index ed687f1ec..d98fa05ad 100644
---- a/src/libafs/MakefileProto.LINUX.in
-+++ b/src/libafs/MakefileProto.LINUX.in
-@@ -82,7 +82,6 @@ CFLAGS_evp.o = -I$(TOP_SRCDIR)/external/heimdal/hcrypto \
- -DHAVE_CONFIG_H
- CFLAGS_evp-algs.o = -I$(TOP_SRCDIR)/external/heimdal/hcrypto
- CFLAGS_evp-kernel.o = -I$(TOP_SRCDIR)/external/heimdal/hcrypto
--CFLAGS_rand-fortuna-kernel.o = -I$(TOP_SRCDIR)/external/heimdal/hcrypto
- CFLAGS_rand-timer-kernel.o = -I$(TOP_SRCDIR)/external/heimdal/hcrypto
- CFLAGS_rand-kernel.o = -I$(TOP_SRCDIR)/external/heimdal/hcrypto
- CFLAGS_aes.o = -I$(TOP_SRCDIR)/external/heimdal/hcrypto
-diff --git a/src/libafs/MakefileProto.NBSD.in b/src/libafs/MakefileProto.NBSD.in
-index 892dea2e9..f1669339e 100644
---- a/src/libafs/MakefileProto.NBSD.in
-+++ b/src/libafs/MakefileProto.NBSD.in
-@@ -24,7 +24,8 @@ AFS_OS_OBJS = \
- osi_sleep.o \
- osi_vcache.o \
- osi_vm.o \
-- osi_vnodeops.o
-+ osi_vnodeops.o \
-+ rand-fortuna-kernel.o
-
- AFS_OS_NFSOBJS = \
- osi_vfsops_nfs.o
-diff --git a/src/libafs/MakefileProto.OBSD.in b/src/libafs/MakefileProto.OBSD.in
-index 3e3beaae7..69871cc37 100644
---- a/src/libafs/MakefileProto.OBSD.in
-+++ b/src/libafs/MakefileProto.OBSD.in
-@@ -44,7 +44,8 @@ AFS_OS_OBJS = \
- osi_sleep.o \
- osi_vcache.o \
- osi_vm.o \
-- osi_vnodeops.o
-+ osi_vnodeops.o \
-+ rand-fortuna-kernel.o
-
- #AFS_OS_NFSOBJS = osi_vfsops_nfs.o
-
-diff --git a/src/libafs/MakefileProto.SOLARIS.in b/src/libafs/MakefileProto.SOLARIS.in
-index 602fed543..5d7e07037 100644
---- a/src/libafs/MakefileProto.SOLARIS.in
-+++ b/src/libafs/MakefileProto.SOLARIS.in
-@@ -26,7 +26,8 @@ AFS_OS_OBJS = \
- osi_sleep.o \
- osi_vcache.o \
- osi_vm.o \
-- osi_vnodeops.o
-+ osi_vnodeops.o \
-+ rand-fortuna-kernel.o
-
- AFS_OS_NFSOBJS = \
- osi_vfsops_nfs.o
---
-2.26.0
-
diff --git a/0001-Temporary-fix-for-compilation-with-GCC-10.patch b/0001-Temporary-fix-for-compilation-with-GCC-10.patch
new file mode 100644
index 00000000000..7d3e4c50167
--- /dev/null
+++ b/0001-Temporary-fix-for-compilation-with-GCC-10.patch
@@ -0,0 +1,33 @@
+From 240278523907c8a0e733620d6acf7b3933d5cbdb Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michael=20La=C3=9F?= <lass@mail.uni-paderborn.de>
+Date: Tue, 19 May 2020 16:17:01 +0200
+Subject: [PATCH 1/2] Temporary fix for compilation with GCC 10
+
+See:
+* https://bugs.gentoo.org/706738
+* https://gerrit.openafs.org/14106
+
+Backporting that fix to OpenAFS 1.8 requires some changes in the xstat
+code so for now let's just allow duplicate declarations.
+
+Change-Id: I0bbf317dcf584d5531db714c5e9b986f3fbb6a0b
+---
+ src/cf/osconf.m4 | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/cf/osconf.m4 b/src/cf/osconf.m4
+index 29a79d7ce..ac11e9310 100644
+--- a/src/cf/osconf.m4
++++ b/src/cf/osconf.m4
+@@ -681,6 +681,8 @@ if test "x$GCC" = "xyes"; then
+ else
+ CFLAGS_NOSTRICT=
+ fi
++ else
++ XCFLAGS="${XCFLAGS} -fcommon"
+ fi
+ else
+ case $AFS_SYSNAME in
+--
+2.26.2
+
diff --git a/0002-LINUX-5.6-define-time_t-and-use-timespec-timespec64.patch b/0002-LINUX-5.6-define-time_t-and-use-timespec-timespec64.patch
deleted file mode 100644
index 1d75d37a477..00000000000
--- a/0002-LINUX-5.6-define-time_t-and-use-timespec-timespec64.patch
+++ /dev/null
@@ -1,162 +0,0 @@
-From 17d38e31e6f2e237a7fb4dfb46841060296310b6 Mon Sep 17 00:00:00 2001
-From: Cheyenne Wills <cwills@sinenomine.net>
-Date: Tue, 3 Mar 2020 15:39:49 -0700
-Subject: [PATCH 2/5] LINUX 5.6: define time_t and use timespec/timespec64
-
-The time_t type and the structure timeval were removed for use in kernel
-space code in Linux commits:
- 412c53a680a97cb1ae2c0ab60230e193bee86387
- y2038: remove unused time32 interfaces
- c766d1472c70d25ad475cf56042af1652e792b23
- y2038: hide timeval/timespec/itimerval/itimerspec types
-
-Add an autoconf test for the time_t type.
-
-If time_t is missing, define the time_t type when building the kernel
-module.
-
-Change the vattr structure in LINUX/osi_vfs.h to use timespec/timespec64
-instead of the timeval structure.
-
-Conditionalize the definition of gettimeofday (needed by rand-fortuna.c) in
-crypto/hcrypto/kernel/config.h. It is unused by the Linux kernel module
-and the function uses struct timeval that is no longer available.
-
-Reviewed-on: https://gerrit.openafs.org/14083
-Tested-by: BuildBot <buildbot@rampaginggeek.com>
-Reviewed-by: Andrew Deason <adeason@sinenomine.net>
-Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
-Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
-(cherry picked from commit 78049987aa3e84865e2e7e0f3dd3b54d66258e74)
-
-Change-Id: Iff80c161441356d19b5962956dd524792b7bf629
-Reviewed-on: https://gerrit.openafs.org/14095
-Tested-by: BuildBot <buildbot@rampaginggeek.com>
-Reviewed-by: Andrew Deason <adeason@sinenomine.net>
-Tested-by: Cheyenne Wills <cwills@sinenomine.net>
-Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
----
- src/afs/LINUX/osi_machdep.h | 4 ++++
- src/afs/LINUX/osi_vfs.h | 12 +++++++++---
- src/afs/LINUX/osi_vnodeops.c | 6 +++---
- src/afs/VNOPS/afs_vnop_attrs.c | 4 ++--
- src/cf/linux-kernel-type.m4 | 1 +
- src/crypto/hcrypto/kernel/config.h | 7 +++++++
- 6 files changed, 26 insertions(+), 8 deletions(-)
-
-diff --git a/src/afs/LINUX/osi_machdep.h b/src/afs/LINUX/osi_machdep.h
-index 6832c3ee0..1864cec6e 100644
---- a/src/afs/LINUX/osi_machdep.h
-+++ b/src/afs/LINUX/osi_machdep.h
-@@ -76,6 +76,10 @@
- #include "h/cred.h"
- #endif
-
-+#if !defined(HAVE_LINUX_TIME_T)
-+typedef time64_t time_t;
-+#endif
-+
- #if defined(HAVE_LINUX_KTIME_GET_COARSE_REAL_TS64)
- static inline time_t osi_Time(void) {
- struct timespec64 xtime;
-diff --git a/src/afs/LINUX/osi_vfs.h b/src/afs/LINUX/osi_vfs.h
-index f771dad38..b3006796e 100644
---- a/src/afs/LINUX/osi_vfs.h
-+++ b/src/afs/LINUX/osi_vfs.h
-@@ -70,9 +70,15 @@ typedef struct vattr {
- dev_t va_rdev;
- ino_t va_nodeid; /* Inode number */
- nlink_t va_nlink; /* link count for file. */
-- struct timeval va_atime;
-- struct timeval va_mtime;
-- struct timeval va_ctime;
-+#if defined(IATTR_TAKES_64BIT_TIME)
-+ struct timespec64 va_atime;
-+ struct timespec64 va_mtime;
-+ struct timespec64 va_ctime;
-+#else
-+ struct timespec va_atime;
-+ struct timespec va_mtime;
-+ struct timespec va_ctime;
-+#endif
- } vattr_t;
-
- #define VATTR_NULL(A) memset(A, 0, sizeof(struct vattr))
-diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
-index d8487afb3..03635212c 100644
---- a/src/afs/LINUX/osi_vnodeops.c
-+++ b/src/afs/LINUX/osi_vnodeops.c
-@@ -1008,15 +1008,15 @@ iattr2vattr(struct vattr *vattrp, struct iattr *iattrp)
- vattrp->va_size = iattrp->ia_size;
- if (iattrp->ia_valid & ATTR_ATIME) {
- vattrp->va_atime.tv_sec = iattrp->ia_atime.tv_sec;
-- vattrp->va_atime.tv_usec = 0;
-+ vattrp->va_atime.tv_nsec = 0;
- }
- if (iattrp->ia_valid & ATTR_MTIME) {
- vattrp->va_mtime.tv_sec = iattrp->ia_mtime.tv_sec;
-- vattrp->va_mtime.tv_usec = 0;
-+ vattrp->va_mtime.tv_nsec = 0;
- }
- if (iattrp->ia_valid & ATTR_CTIME) {
- vattrp->va_ctime.tv_sec = iattrp->ia_ctime.tv_sec;
-- vattrp->va_ctime.tv_usec = 0;
-+ vattrp->va_ctime.tv_nsec = 0;
- }
- }
-
-diff --git a/src/afs/VNOPS/afs_vnop_attrs.c b/src/afs/VNOPS/afs_vnop_attrs.c
-index 05a38ce96..a22331a5b 100644
---- a/src/afs/VNOPS/afs_vnop_attrs.c
-+++ b/src/afs/VNOPS/afs_vnop_attrs.c
-@@ -141,7 +141,7 @@ afs_CopyOutAttrs(struct vcache *avc, struct vattr *attrs)
- attrs->va_atime.tv_nsec = attrs->va_mtime.tv_nsec =
- attrs->va_ctime.tv_nsec = 0;
- attrs->va_gen = hgetlo(avc->f.m.DataVersion);
--#elif defined(AFS_SGI_ENV) || defined(AFS_SUN5_ENV) || defined(AFS_AIX41_ENV) || defined(AFS_OBSD_ENV) || defined(AFS_NBSD_ENV)
-+#elif defined(AFS_SGI_ENV) || defined(AFS_SUN5_ENV) || defined(AFS_AIX41_ENV) || defined(AFS_OBSD_ENV) || defined(AFS_NBSD_ENV) || defined(AFS_LINUX26_ENV)
- attrs->va_atime.tv_nsec = attrs->va_mtime.tv_nsec =
- attrs->va_ctime.tv_nsec =
- (hgetlo(avc->f.m.DataVersion) & 0x7ffff) * 1000;
-@@ -433,7 +433,7 @@ afs_VAttrToAS(struct vcache *avc, struct vattr *av,
- #endif
- mask |= AFS_SETMODTIME;
- #ifndef AFS_SGI_ENV
--#if defined(AFS_SUN5_ENV) || defined(AFS_AIX41_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV)
-+#if defined(AFS_SUN5_ENV) || defined(AFS_AIX41_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV) || defined(AFS_LINUX26_ENV)
- if (av->va_mtime.tv_nsec == -1)
- #else
- if (av->va_mtime.tv_usec == -1)
-diff --git a/src/cf/linux-kernel-type.m4 b/src/cf/linux-kernel-type.m4
-index ae59fccfb..444317da5 100644
---- a/src/cf/linux-kernel-type.m4
-+++ b/src/cf/linux-kernel-type.m4
-@@ -3,4 +3,5 @@ dnl Type existence checks
- AC_CHECK_LINUX_TYPE([struct vfs_path], [dcache.h])
- AC_CHECK_LINUX_TYPE([kuid_t], [uidgid.h])
- AC_CHECK_LINUX_TYPE([struct proc_ops], [proc_fs.h])
-+AC_CHECK_LINUX_TYPE([time_t], [types.h])
- ])
-diff --git a/src/crypto/hcrypto/kernel/config.h b/src/crypto/hcrypto/kernel/config.h
-index 6fec83da0..dd7608dae 100644
---- a/src/crypto/hcrypto/kernel/config.h
-+++ b/src/crypto/hcrypto/kernel/config.h
-@@ -98,8 +98,15 @@ static_inline int close(int d) {return -1;}
- #ifdef HAVE_ARC4RANDOM
- # undef HAVE_ARC4RANDOM
- #endif
-+
-+#if !defined(AFS_LINUX26_ENV)
-+/*
-+ * gettimeofday is only used in rand-fortuna.c, not built for Linux.
-+ * Linux 5.6 removes the native struct timeval, so this stub would not build.
-+ */
- static_inline int gettimeofday(struct timeval *tp, void *tzp)
- {if (tp == NULL) return -1; tp->tv_sec = osi_Time(); tp->tv_usec = 0; return 0;}
-+#endif
-
- #if defined(KERNEL) && (defined(AFS_SUN5_ENV) || defined(AFS_ARM64_LINUX26_ENV))
- /*
---
-2.26.0
-
diff --git a/0003-Update-NEWS-for-OpenAFS-1.8.6pre2.patch b/0003-Update-NEWS-for-OpenAFS-1.8.6pre2.patch
deleted file mode 100644
index c07cd43b22a..00000000000
--- a/0003-Update-NEWS-for-OpenAFS-1.8.6pre2.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 828bd461d9be40b53ded91977b9ea1238575f77f Mon Sep 17 00:00:00 2001
-From: Stephan Wiesand <stephan.wiesand@desy.de>
-Date: Fri, 13 Mar 2020 18:19:45 +0100
-Subject: [PATCH 3/5] Update NEWS for OpenAFS 1.8.6pre2
-
-Release notes for the second 1.8.6 prerelease
-
-Change-Id: I3abfbfacb68a134afafa73a9ac292f9ee776d9a2
----
- NEWS | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/NEWS b/NEWS
-index df1743454..cd77d193a 100644
---- a/NEWS
-+++ b/NEWS
-@@ -24,7 +24,11 @@ OpenAFS 1.8.6 (in progress)
- All server platforms
-
- * Do not leave empty directories behind in the file server vice partition
-- when running the "vos zap -force" command (13896 13897)
-+ when running the "vos zap -force" command (13897)
-+
-+ * Fix "vos zap -force" failures when the volume being zapped does not have
-+ an entry in the fileserver's volume group cache (e.g., during fileserver
-+ startup) (13896)
-
- * Relax the length limits on some membership lists used in ptserver RPCs,
- introduced in release 1.8.0 to prevent denial of service attacks, to
-@@ -66,7 +70,7 @@ OpenAFS 1.8.6 (in progress)
-
- Linux clients
-
-- * Support mainline kernels up to and including 5.6-rc2 (14069)
-+ * Support mainline kernels up to and including 5.6-rc5 (14069 14094 14095)
-
- * Make builds succeed with --enable-checking for mainline kernels
- 5.3-rc2 and later (13910)
---
-2.26.0
-
diff --git a/0004-Make-OpenAFS-1.8.6pre2.patch b/0004-Make-OpenAFS-1.8.6pre2.patch
deleted file mode 100644
index b2d05a5a900..00000000000
--- a/0004-Make-OpenAFS-1.8.6pre2.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-From efebfb1576872777c77a64005e12c92218a0b3b3 Mon Sep 17 00:00:00 2001
-From: Stephan Wiesand <stephan.wiesand@desy.de>
-Date: Fri, 13 Mar 2020 18:23:14 +0100
-Subject: [PATCH 4/5] Make OpenAFS 1.8.6pre2
-
-Update version strings for the second 1.8.6 prerelease.
-
-Change-Id: Ic5e452a379dac906520040a451f84ca19fd158e1
----
- configure-libafs.ac | 2 +-
- configure.ac | 4 ++--
- src/config/NTMakefile.amd64_w2k | 2 +-
- src/config/NTMakefile.i386_nt40 | 2 +-
- src/config/NTMakefile.i386_w2k | 2 +-
- 5 files changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/configure-libafs.ac b/configure-libafs.ac
-index 218c5d515..0839d3711 100644
---- a/configure-libafs.ac
-+++ b/configure-libafs.ac
-@@ -4,7 +4,7 @@ AC_CONFIG_AUX_DIR([build-tools])
- AC_CONFIG_SRCDIR([src/libafs/Makefile.common.in])
-
- AC_CONFIG_HEADER([src/config/afsconfig.h])
--MACOS_VERSION=1.8.6fc1
-+MACOS_VERSION=1.8.6fc2
-
- AC_SUBST([MACOS_VERSION])
-
-diff --git a/configure.ac b/configure.ac
-index 3c9fa9dbe..ebeaf031c 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -5,8 +5,8 @@ AC_CONFIG_MACRO_DIR([src/cf])
- AC_CONFIG_SRCDIR([src/config/stds.h])
-
- AC_CONFIG_HEADER([src/config/afsconfig.h])
--MACOS_VERSION=1.8.6fc1
--LINUX_PKGREL=1.8.6pre1
-+MACOS_VERSION=1.8.6fc2
-+LINUX_PKGREL=1.8.6pre2
-
- AC_SUBST([MACOS_VERSION])
-
-diff --git a/src/config/NTMakefile.amd64_w2k b/src/config/NTMakefile.amd64_w2k
-index e09a0a3bb..1eb1f8c32 100644
---- a/src/config/NTMakefile.amd64_w2k
-+++ b/src/config/NTMakefile.amd64_w2k
-@@ -88,7 +88,7 @@ AFSPRODUCT_VER_MAJOR=1
- AFSPRODUCT_VER_MINOR=8
- !ENDIF
- !IF !DEFINED(AFSPRODUCT_VER_PATCH)
--AFSPRODUCT_VER_PATCH=0600
-+AFSPRODUCT_VER_PATCH=0601
- !ENDIF
- !IF !DEFINED(AFSPRODUCT_VER_BUILD)
- AFSPRODUCT_VER_BUILD=0
-diff --git a/src/config/NTMakefile.i386_nt40 b/src/config/NTMakefile.i386_nt40
-index 58ea05c11..88b1afcbf 100644
---- a/src/config/NTMakefile.i386_nt40
-+++ b/src/config/NTMakefile.i386_nt40
-@@ -88,7 +88,7 @@ AFSPRODUCT_VER_MAJOR=1
- AFSPRODUCT_VER_MINOR=8
- !ENDIF
- !IF !DEFINED(AFSPRODUCT_VER_PATCH)
--AFSPRODUCT_VER_PATCH=0600
-+AFSPRODUCT_VER_PATCH=0601
- !ENDIF
- !IF !DEFINED(AFSPRODUCT_VER_BUILD)
- AFSPRODUCT_VER_BUILD=0
-diff --git a/src/config/NTMakefile.i386_w2k b/src/config/NTMakefile.i386_w2k
-index b16d0f227..596163d93 100644
---- a/src/config/NTMakefile.i386_w2k
-+++ b/src/config/NTMakefile.i386_w2k
-@@ -92,7 +92,7 @@ AFSPRODUCT_VER_MAJOR=1
- AFSPRODUCT_VER_MINOR=8
- !ENDIF
- !IF !DEFINED(AFSPRODUCT_VER_PATCH)
--AFSPRODUCT_VER_PATCH=0600
-+AFSPRODUCT_VER_PATCH=0601
- !ENDIF
- !IF !DEFINED(AFSPRODUCT_VER_BUILD)
- AFSPRODUCT_VER_BUILD=0
---
-2.26.0
-
diff --git a/PKGBUILD b/PKGBUILD
index 7976091fa5c..8203bfe52cf 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,7 +6,7 @@
pkgname=openafs-modules-dkms
_srcname=openafs
-pkgver=1.8.6pre1
+pkgver=1.8.6pre2
pkgrel=1
pkgdesc="Kernel module for OpenAFS (dkms)"
arch=('i686' 'x86_64' 'armv7h')
@@ -18,25 +18,16 @@ conflicts=('openafs-features-libafs' 'openafs-modules' 'openafs<1.6.6-2')
options=(!emptydirs)
source=("http://openafs.org/dl/openafs/candidate/${pkgver}/${_srcname}-${pkgver}-src.tar.bz2"
"dkms.conf"
- 0001-LINUX-Avoid-building-rand-fortuna-kernel.o.patch
- 0002-LINUX-5.6-define-time_t-and-use-timespec-timespec64.patch
- 0003-Update-NEWS-for-OpenAFS-1.8.6pre2.patch
- 0004-Make-OpenAFS-1.8.6pre2.patch)
-sha256sums=('4ae020010632fbc9198be94ea97d6f6301c813227117fd8a28e15f32e8f58517'
+ 0001-Temporary-fix-for-compilation-with-GCC-10.patch)
+sha256sums=('ae1aa62c977fc13d61df1f9822ff75af301c50f8ff0528c8fd1f2914fffafcf5'
'5ea5e184f9b44f5ed45817d2b5a10149d15c8c54f49e0b5b4b773652673cb9b0'
- '3639bc58cf7896f4b3c5a0c93f8a7a65a119dbd6eff0cb55597e3762ac2e6b3f'
- 'a75af2f13ac35e4d324183ac76727f53b832e7fa3b16f4983b48226a0c5452d2'
- '5fc7fc6c44f950c99a1ad9629d6fe56bd88bd1f0b2f2ce3922939e7d073790c9'
- 'd15fd705b0b24280c06ca8f2cb6d5c08bcb492cdb1f8f509de1d2c076c01c99d')
+ 'ebd26d2434689ca7f1c71434cf9a524cf8f2457faa2ba93b90723f4244092451')
prepare() {
cd "${srcdir}/${_srcname}-${pkgver}"
- # Imitate what is likely to become 1.8.6pre2
- patch -p1 < "${srcdir}/0001-LINUX-Avoid-building-rand-fortuna-kernel.o.patch"
- patch -p1 < "${srcdir}/0002-LINUX-5.6-define-time_t-and-use-timespec-timespec64.patch"
- patch -p1 < "${srcdir}/0003-Update-NEWS-for-OpenAFS-1.8.6pre2.patch"
- patch -p1 < "${srcdir}/0004-Make-OpenAFS-1.8.6pre2.patch"
+ # Fix compilation with GCC 10 (see https://bugs.gentoo.org/706738 and https://gerrit.openafs.org/14106)
+ patch -p1 < "${srcdir}/0001-Temporary-fix-for-compilation-with-GCC-10.patch"
# Only needed when changes to configure were made
./regen.sh -q