SHA256
1
0
forked from pool/openafs

Accepting request 1010296 from home:hauky:branches:filesystems

- update to openafs-1.8.9pre1 
- apply patch for kernel 6.0:
  * 79f03c2.diff

OBS-URL: https://build.opensuse.org/request/show/1010296
OBS-URL: https://build.opensuse.org/package/show/filesystems/openafs?expand=0&rev=94
This commit is contained in:
Christof Hanke 2022-10-12 17:23:47 +00:00 committed by Git OBS Bridge
parent a77b606a5f
commit b59d3999b8
21 changed files with 773 additions and 380 deletions

View File

@ -1,115 +0,0 @@
From 05b722dd59ad2257986f9ab0739d03a1f4a76ee5 Mon Sep 17 00:00:00 2001
From: Cheyenne Wills <cwills@sinenomine.net>
Date: Tue, 05 Jul 2022 10:33:19 -0600
Subject: [PATCH] Linux-5.19: Remove flags from aops->write_begin
The Linux 5.19 commits:
fs: Remove aop flags parameter from grab_cache_page_write_begin()
(b7446e7c)
fs: Remove flags parameter from aops->write_begin (9d6b0cd7)
removed the flags parameter from the address space operations
'write_begin' as well as removing the flags parameter from the Linux
function 'grab_cache_page_write_begin'.
Add an autoconf test to see if grab_cache_page_write_begin takes 2 or
3 parameters. Use this as a test to determine if the address space
operations 'write_begin' takes a flags parameter.
Create a version of afs_linux_write_begin that does not take a flags
parameter, which also calls grab_cache_page_write_begin without flags.
Reviewed-on: https://gerrit.openafs.org/15041
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit 52d8df218ff27c139ede221ec4decf593610fc47)
Change-Id: I20575c2e9d0979749078f4e3d6f862900c6b6561
---
diff --git a/src/afs/LINUX/osi_compat.h b/src/afs/LINUX/osi_compat.h
index 53a079b..9a080da 100644
--- a/src/afs/LINUX/osi_compat.h
+++ b/src/afs/LINUX/osi_compat.h
@@ -138,7 +138,9 @@
#define AOP_WRITEPAGE_ACTIVATE WRITEPAGE_ACTIVATE
#endif
-#if defined(STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_WRITE_BEGIN) && !defined(HAVE_LINUX_GRAB_CACHE_PAGE_WRITE_BEGIN)
+#if defined(STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_WRITE_BEGIN) && \
+ !defined(HAVE_LINUX_GRAB_CACHE_PAGE_WRITE_BEGIN_WITHFLAGS) && \
+ !defined(HAVE_LINUX_GRAB_CACHE_PAGE_WRITE_BEGIN_NOFLAGS)
static inline struct page *
grab_cache_page_write_begin(struct address_space *mapping, pgoff_t index,
unsigned int flags) {
diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
index 04f13a1..881d38e 100644
--- a/src/afs/LINUX/osi_vnodeops.c
+++ b/src/afs/LINUX/osi_vnodeops.c
@@ -3480,6 +3480,33 @@
return code;
}
+# if defined(HAVE_LINUX_GRAB_CACHE_PAGE_WRITE_BEGIN_NOFLAGS)
+static int
+afs_linux_write_begin(struct file *file, struct address_space *mapping,
+ loff_t pos, unsigned len,
+ struct page **pagep, void **fsdata)
+{
+ struct page *page;
+ pgoff_t index = pos >> PAGE_SHIFT;
+ unsigned int from = pos & (PAGE_SIZE - 1);
+ int code;
+
+ page = grab_cache_page_write_begin(mapping, index);
+ if (!page) {
+ return -ENOMEM;
+ }
+
+ *pagep = page;
+
+ code = afs_linux_prepare_write(file, page, from, from + len);
+ if (code) {
+ unlock_page(page);
+ put_page(page);
+ }
+
+ return code;
+}
+# else
static int
afs_linux_write_begin(struct file *file, struct address_space *mapping,
loff_t pos, unsigned len, unsigned flags,
@@ -3505,7 +3532,8 @@
return code;
}
-#endif
+# endif /* HAVE_LINUX_GRAB_CACHE_PAGE_WRITE_BEGIN_NOFLAGS */
+#endif /* STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_WRITE_BEGIN */
#ifndef STRUCT_DENTRY_OPERATIONS_HAS_D_AUTOMOUNT
static void *
diff --git a/src/cf/linux-kernel-func.m4 b/src/cf/linux-kernel-func.m4
index cd4afe9..27a1d41 100644
--- a/src/cf/linux-kernel-func.m4
+++ b/src/cf/linux-kernel-func.m4
@@ -59,9 +59,14 @@
AC_CHECK_LINUX_FUNC([generic_file_aio_read],
[#include <linux/fs.h>],
[generic_file_aio_read(NULL,NULL,0,0);])
-AC_CHECK_LINUX_FUNC([grab_cache_page_write_begin],
+dnl - linux 5.19 removed the flags parameter, need to test
+dnl - with and without the flags parameter
+AC_CHECK_LINUX_FUNC([grab_cache_page_write_begin_withflags],
[#include <linux/pagemap.h>],
[grab_cache_page_write_begin(NULL, 0, 0);])
+AC_CHECK_LINUX_FUNC([grab_cache_page_write_begin_noflags],
+ [#include <linux/pagemap.h>],
+ [grab_cache_page_write_begin(NULL, 0);])
AC_CHECK_LINUX_FUNC([hlist_unhashed],
[#include <linux/list.h>],
[hlist_unhashed(0);])

View File

@ -1,127 +0,0 @@
From 6348262b1ef2cdb54f9a9bd6dab78aa8dc1ddac5 Mon Sep 17 00:00:00 2001
From: Cheyenne Wills <cwills@sinenomine.net>
Date: Tue, 05 Jul 2022 11:45:29 -0600
Subject: [PATCH] Linux-5.19: Rename aops readpage to read_folio
With Linux commits:
mm,fs: Remove aops->readpage (7e0a126519)
fs: Introduce aops->read_folio (5efe7448a1)
the address space operations method 'readpage' was replaced with
read_folio. The operation behaves the same, except instead of taking a
struct page parameter, the new function takes a folio structure.
Add an autoconf test for the address space operation entry read_folio
Replace the references to an address space operations' readpage with
read_folio. Note that the function Linux page_folio can be used to
obtain the required pointer to the folio for a given page.
Introduce afs_linux_read_folio that accepts a folio and calls
afs_linux_readpage with the page associated with that folio.
Reviewed-on: https://gerrit.openafs.org/15040
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
(cherry picked from commit bfb852197edcbe0c38c499faecd7c1be23308a20)
Change-Id: Iab96bd10a143d88fe37ac8aa8980b33339c76852
---
diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
index b834a40..04f13a1 100644
--- a/src/afs/LINUX/osi_vnodeops.c
+++ b/src/afs/LINUX/osi_vnodeops.c
@@ -2215,7 +2215,11 @@
static int
mapping_read_page(struct address_space *mapping, struct page *page)
{
+#if defined(STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_READ_FOLIO)
+ return mapping->a_ops->read_folio(NULL, page_folio(page));
+#else
return mapping->a_ops->readpage(NULL, page);
+#endif
}
/* Populate a page by filling it from the cache file pointed at by cachefp
@@ -2326,8 +2330,13 @@
static int inline
file_can_read_pages(struct file *fp)
{
+#if defined(STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_READ_FOLIO)
+ if (fp->f_dentry->d_inode->i_mapping->a_ops->read_folio != NULL)
+ return 1;
+#else
if (fp->f_dentry->d_inode->i_mapping->a_ops->readpage != NULL)
return 1;
+#endif
return 0;
}
@@ -2848,6 +2857,16 @@
return code;
}
+
+#if defined(STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_READ_FOLIO)
+static int
+afs_linux_read_folio(struct file *fp, struct folio *folio)
+{
+ struct page *pp = &folio->page;
+
+ return afs_linux_readpage(fp, pp);
+}
+#endif
/*
* Updates the adc and acacheFp parameters
@@ -3536,7 +3555,11 @@
};
static struct address_space_operations afs_file_aops = {
+#if defined(STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_READ_FOLIO)
+ .read_folio = afs_linux_read_folio,
+#else
.readpage = afs_linux_readpage,
+#endif
#if defined(STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_READAHEAD)
.readahead = afs_linux_readahead,
#else
@@ -3609,9 +3632,22 @@
unlock_page(page);
return code;
}
+#if defined(STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_READ_FOLIO)
+static int
+afs_symlink_filler_folio(struct file *file, struct folio *folio)
+{
+ struct page *page = &folio->page;
+ return afs_symlink_filler(file, page);
+}
+#endif
+
static struct address_space_operations afs_symlink_aops = {
+#if defined(STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_READ_FOLIO)
+ .read_folio = afs_symlink_filler_folio
+#else
.readpage = afs_symlink_filler
+#endif
};
#endif /* USABLE_KERNEL_PAGE_SYMLINK_CACHE */
diff --git a/src/cf/linux-kernel-struct.m4 b/src/cf/linux-kernel-struct.m4
index 597289b..3d4b10b 100644
--- a/src/cf/linux-kernel-struct.m4
+++ b/src/cf/linux-kernel-struct.m4
@@ -7,6 +7,8 @@
AC_CHECK_LINUX_STRUCT([address_space_operations], [dirty_folio], [fs.h])
dnl linux 5.18 replaced readpages with readahead (introduced in 5.8)
AC_CHECK_LINUX_STRUCT([address_space_operations], [readahead], [fs.h])
+dnl linux 5.18 replaced readpage with read_folio
+AC_CHECK_LINUX_STRUCT([address_space_operations], [read_folio], [fs.h])
AC_CHECK_LINUX_STRUCT([backing_dev_info], [name],
[backing-dev.h])
AC_CHECK_LINUX_STRUCT([cred], [session_keyring], [cred.h])

131
79f03c2.diff Normal file
View File

@ -0,0 +1,131 @@
From 79f03c2d6714e653cee4aa6af81d6568ad4368b7 Mon Sep 17 00:00:00 2001
From: Cheyenne Wills <cwills@sinenomine.net>
Date: Thu, 22 Sep 2022 13:04:59 -0600
Subject: [PATCH] Linux-6.0: Replace add_to_page_cache
Linux 6.0 removed the add_to_page_cache function in the Linux commit:
'filemap: Remove add_to_page_cache() and add_to_page_cache_locked()'
(2bb876b58d593d7f2522ec0f41f20a74fde76822)
The replacement function, filemap_add_folio function is exported as GPL,
but a non-GPL wrapper was provided in the Linux 5.15 commit:
'mm/filemap: Add filemap_add_folio()'
(9dd3d069406cea073fc633e77bc59abbfde8c6c4)
which changed the GPL exported function add_to_page_cache_lru to a
non-GPL exported function.
The function add_to_page_cache_lru functionally combines the
add_to_page_cache with lru_cache_add. Within afs, all the calls to
add_to_page_cache follow the pattern of calling the lru_cache_add
via the wrapper afs_lru_cache_add immediately after (except in one case
noted below).
Add an autoconf check to see if add_to_page_cache_lru is available.
Introduce a new wrapper function afs_add_to_page_cache_lru that handles
calling either add_to_page_cache/afs_lru_cache_add or
add_to_page_cache_lru.
As noted above there is one function, afs_linux_bypass_readpages, that
calls add_to_page_cache but does not immediately call afs_lru_cache_add.
This function is only used in Linux kernels prior to 5.18, see the
commit:
'Linux-5.18: replace readpages with readahead' (7a181415db)
Since this code path is only built for a Linux kernel level where
add_to_page_cache should also exists, we do not replace this call.
NOTE:
The add_to_page_cache_lru was moved into mm/folio-compat.c which has a
comment indicating that callers of these functions should migrate to
folio calls. However the replacement folio call that is needed by afs,
filemap_add_folio, is exported as GPL.
Reviewed-on: https://gerrit.openafs.org/15132
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit 0ce315f0cee1cff7e19e6ebcc0e0e82e03719c20)
Change-Id: Ic0496c2fba00e7be467dbbcf52d9854495e1ad9f
---
diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
index 621e4da..bec30bb 100644
--- a/src/afs/LINUX/osi_vnodeops.c
+++ b/src/afs/LINUX/osi_vnodeops.c
@@ -148,6 +148,23 @@
}
#endif /* !HAVE_LINUX_LRU_ADD_FILE */
+static inline int
+afs_add_to_page_cache_lru(struct afs_lru_pages *alrupages, struct page *page,
+ struct address_space *mapping,
+ pgoff_t index, gfp_t gfp)
+{
+#if defined(HAVE_LINUX_ADD_TO_PAGE_CACHE_LRU)
+ return add_to_page_cache_lru(page, mapping, index, gfp);
+#else
+ int code;
+ code = add_to_page_cache(page, mapping, index, gfp);
+ if (code == 0) {
+ afs_lru_cache_add(alrupages, page);
+ }
+ return code;
+#endif
+}
+
/* This function converts a positive error code from AFS into a negative
* code suitable for passing into the Linux VFS layer. It checks that the
* error code is within the permissable bounds for the ERR_PTR mechanism.
@@ -2269,12 +2286,11 @@
goto out;
}
- code = add_to_page_cache(newpage, cachemapping,
- pageindex, GFP_KERNEL);
+ code = afs_add_to_page_cache_lru(alrupages, newpage, cachemapping,
+ pageindex, GFP_KERNEL);
if (code == 0) {
cachepage = newpage;
newpage = NULL;
- afs_lru_cache_add(alrupages, cachepage);
} else {
put_page(newpage);
newpage = NULL;
@@ -3092,11 +3108,9 @@
goto out;
}
- if (tdc && !add_to_page_cache(page, mapping, page->index,
- GFP_KERNEL)) {
- afs_lru_cache_add(&lrupages, page);
-
- /* Note that add_to_page_cache() locked 'page'.
+ if (tdc && !afs_add_to_page_cache_lru(&lrupages, page, mapping, page->index,
+ GFP_KERNEL)) {
+ /* Note that afs_add_to_page_cache_lru() locks the 'page'.
* afs_linux_read_cache() is guaranteed to handle unlocking it. */
afs_linux_read_cache(cacheFp, page, tdc->f.chunk, &lrupages, task);
}
diff --git a/src/cf/linux-kernel-func.m4 b/src/cf/linux-kernel-func.m4
index 27a1d41..d3abdf9 100644
--- a/src/cf/linux-kernel-func.m4
+++ b/src/cf/linux-kernel-func.m4
@@ -189,6 +189,16 @@
#include <linux/kthread.h>],
[kthread_complete_and_exit(0, 0);])
+dnl Linux 6.0 removed add_to_page_cache. It's replacement, filemap_add_folio,
+dnl was added in 5.15 and is GPL-only, but has a NON-GPL wrapper called
+dnl add_to_page_cache_lru.
+dnl Note prior to 5.15, add_to_page_cache_lru was either not exported or
+dnl or exported as GPL-only.
+AC_CHECK_LINUX_FUNC([add_to_page_cache_lru],
+ [#include <linux/kernel.h>
+ #include <linux/pagemap.h>],
+ [add_to_page_cache_lru(NULL, NULL, 0, 0);])
+
dnl Consequences - things which get set as a result of the
dnl above tests
AS_IF([test "x$ac_cv_linux_func_d_alloc_anon" = "xno"],

570
ChangeLog
View File

@ -1,3 +1,354 @@
commit a2c1f9dc21b9e17aa8b075e4507f07def3275c2a
Author: Stephan Wiesand <stephan.wiesand@desy.de>
Date: Thu Sep 23 20:20:44 2021 +0200
Make OpenAFS 1.8.9pre1
Update version strings for the first 1.8.9 prerelease.
Change-Id: I6fc6dff8143445ee82188a2614588068f1feeb25
Reviewed-on: https://gerrit.openafs.org/14810
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit 7a44c381f1d599f8a7ee8e6349f3c7ab190ea1f5
Author: Stephan Wiesand <stephan.wiesand@desy.de>
Date: Thu Aug 25 16:01:02 2022 +0200
Update NEWS for 1.8.9pre1
Release notes for the first 1.8.9 prerelease.
Change-Id: I26e4334f9f1e34b36299b097525a61a89f422aaf
Reviewed-on: https://gerrit.openafs.org/15126
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit beb1a8a16c946c5ffba9868ae33f20a719fca95f
Author: Cheyenne Wills <cwills@sinenomine.net>
Date: Fri Mar 6 10:00:25 2020 -0700
afs: Clean up compiler warning casting ptr to int
In osi_probe.c, the macro 'check_result' casts a pointer to an int which
on older Linux kernels (e.g. 2.6.18) produces several lines with the C
warning:
... warning: cast from pointer to integer of different size
Change the cast from int to long int.
Linux 2.6.18 doesn't provide intptr_t or uintptr_t, and stdint.h is not
available to kernel modules. But the size of a pointer is the size of a
long (see uintptr_t in linux/types.h - Linux 2.6.24+), so
change the cast from int to long.
Note that the this code by default only gets pulled in for older Linux
kernels (e.g. 2.6.18). For newer kernels, ENABLE_LINUX_SYSCALL_PROBING
is not defined, and so most of osi_probe.c is not built.
Reviewed-on: https://gerrit.openafs.org/14092
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
(cherry picked from commit 38d78e2496c3d242e44bad401ecffe15e3883388)
Change-Id: I474ad10c8cda8c414154e20f739a2aba5ba890cf
Reviewed-on: https://gerrit.openafs.org/15134
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit 7a8c044c09e965af05ac7978123695a3b234d8a1
Author: Andrew Deason <adeason@sinenomine.net>
Date: Tue Oct 13 12:17:37 2020 -0500
dir: Set srcdir correctly in src/dir/test
srcdir is a magic variable that needs to be set to @srcdir@, not some
relative path like ../../.. (which will usually be somewhere in the
objdir, not srcdir). Set it correctly in here.
Without this, objdir builds can fail with:
make[4]: Entering directory '...obj/src/dir/test'
make[4]: *** No rule to make target 'dtest.o', needed by 'dtest'. Stop.
Which happens because the automatic rule for dtest.o can't be
constructed, since we cannot find dtest.c automatically because srcdir
isn't set properly.
This has been broken since commit 37b4195d (dtest-20021111), but was
not noticeable until commit 192a2ff4 (dir: make dtest buildable
again), since that caused dtest to actually get built.
Also set LIBS correctly in here, using the conventional ${TOP_LIBDIR},
since ${srcdir} no longer points to "../../..".
Reviewed-on: https://gerrit.openafs.org/14384
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit bc6f50ca0ce6c17a5a9b1042fa90235613f80c95)
Change-Id: I8aff31557b6b92bb10c68abb0ba5a61a68b8f750
Reviewed-on: https://gerrit.openafs.org/15133
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit e3edd8c43e5808c19a37d8d74a311f4d9240665a
Author: Cheyenne Wills <cwills@sinenomine.net>
Date: Mon Mar 7 18:35:03 2022 -0700
LINUX: Use bitwise & for f_flags test
This code is clearly supposed to be masking f_flags with O_ACCMODE, and
so should be using a bitwise &, not the boolean &&. Clang complains
about this, causing a warning (which breaks the build with
--enable-checking):
error: use of logical '&&' with constant operand [-Werror,
-Wconstant-logical-operand]
} else if ((file->f_flags && O_ACCMODE) != O_WRONLY) {
^ ~~~~~~~~~
.../osi_vnodeops.c:3192:28: note: use '&' for a
bitwise operation
For the current code without this commit the behavior of this
check is as follows:
When f_flags is: The check is:
==================== =============
O_RDONLY True (as expected)
O_WRONLY False (as expected)
O_RDWR False (incorrect)
has some non-O_ACCMODE False (incorrect)
bit is set
The incorrect check doesn't cause any problems for overall correctness,
but it does mean that in those cases afs_linux_fillpage will not be
called and that partially-written pages will be left out of date and any
reader will need to fill the page again.
Fix this by using the bitwise &.
There is also an out of date link to the Linux documentation. Update
the comment to point to the current documentation that is in the Linux
source tree.
Reviewed-on: https://gerrit.openafs.org/14903
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit 8d9545008240d7f285b140503e432f53f41e0724)
Change-Id: Iae459ffe87df9a21a90587c02a1ee2c20b360d33
Reviewed-on: https://gerrit.openafs.org/15129
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit c3f31cc9c3442aca0f6f66ba493ea92bfa46dcca
Author: Jan Iven <iven.jan@gmail.com>
Date: Fri Aug 5 14:46:27 2022 +0200
systemd: do not load the 'openafs' module on boot
remove /etc/sysconfig/modules/openafs-client.modules, i.e no longer have
systemd run "modprobe openafs" at boot, on RPM-based systems.
This had been introduced with a reference to the Fedora packaging guide
at the time. However, this mechanism was meant just for persistent
driver modules (i.e expected to stay loaded over the runtime) - the
"openafs" module is loaded (and unloaded) by the actual systemd unit.
The systemd unit that processes the above file comes from "initscripts",
this is optional in later Fedoras/RHELs and so the file may not even be
processed (/usr/lib/modules-load.d/ would be an alternative mechanism to
load modules at boot.. if needed).
This change is mostly cosmetic, although RT#135204 showed that having
the "openafs" module loaded without a client running can actually be
harmful.
Reviewed-on: https://gerrit.openafs.org/15092
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit 40b2c6036737a416f3b33624b5abeefa407c1b01)
Change-Id: Iea1475217b8ae56accfb4436248011f0b84e0c09
Reviewed-on: https://gerrit.openafs.org/15128
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit 99f04b1398cc38fc18f7f98cca9d5785218feb0b
Author: Cheyenne Wills <cwills@sinenomine.net>
Date: Thu Jul 14 13:03:08 2022 -0600
linux: Call put_page if errors in aops->readpages
Within the address_space_operations readpages function, when we remove a
page from the page->lru list, we must ensure that the page reference
count is decremented via put_page.
There are two cases within the flow of the afs_linux_readpages where
we remove a page from the page->lru list, but fail to put_page() it.
- If we go through afs_linux_bypass_readpages we fail to call
put_page() if the page index is larger than the index calculated from
i_size_read for the cache file.
- If get_dcache_readahead returns an error in afs_linux_readpages, we
fail to put_page(). This can happen if there was a problem opening
the cache file, or if the cache file has no a_ops->readpage.
Add a call to put_page in afs_linux_bypass_readpages when the page index
is greater than the index calculated from the i_size_read for the cache
file.
Add a call to put_page in afs_linux_readpages if get_dcache_readahead
returns an error.
Note: The condition of not calling put_page if there was an error
opening the cache file was introduced by commit 'LINUX: Don't panic on
some file open errors' (af73b9a3b1f), which replaced an assert with
code that handled the error. The other conditions have existed since
the relevant code was introduced.
In addition, the problems addressed by this commit are not present in
Linux kernels 5.8 and greater when the commit 'Linux-5.18: replace
readpages with readahead' (7a181415db1) is present, because we call
afs_linux_readahead instead of afs_linux_readpages.
Reviewed-on: https://gerrit.openafs.org/15068
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit 903dd5bf5e9328431e356abc42e20c248c5df6fd)
Change-Id: I3679969f985e83a7291a5fb735c80f7d57429c29
Reviewed-on: https://gerrit.openafs.org/15096
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit 0ca47d0a03bfc39c064d2a1ae88970c67dc3dbce
Author: Cheyenne Wills <cwills@sinenomine.net>
Date: Tue Jul 5 10:33:19 2022 -0600
Linux-5.19: Remove flags from aops->write_begin
The Linux 5.19 commits:
fs: Remove aop flags parameter from grab_cache_page_write_begin()
(b7446e7c)
fs: Remove flags parameter from aops->write_begin (9d6b0cd7)
removed the flags parameter from the address space operations
'write_begin' as well as removing the flags parameter from the Linux
function 'grab_cache_page_write_begin'.
Add an autoconf test to see if grab_cache_page_write_begin takes 2 or
3 parameters. Use this as a test to determine if the address space
operations 'write_begin' takes a flags parameter.
Create a version of afs_linux_write_begin that does not take a flags
parameter, which also calls grab_cache_page_write_begin without flags.
Reviewed-on: https://gerrit.openafs.org/15041
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit 52d8df218ff27c139ede221ec4decf593610fc47)
Change-Id: I20575c2e9d0979749078f4e3d6f862900c6b6561
Reviewed-on: https://gerrit.openafs.org/15095
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit e8f136dd687a7f7ac5296f52739f46dde8c8543e
Author: Cheyenne Wills <cwills@sinenomine.net>
Date: Tue Jul 5 11:45:29 2022 -0600
Linux-5.19: Rename aops readpage to read_folio
With Linux commits:
mm,fs: Remove aops->readpage (7e0a126519)
fs: Introduce aops->read_folio (5efe7448a1)
the address space operations method 'readpage' was replaced with
read_folio. The operation behaves the same, except instead of taking a
struct page parameter, the new function takes a folio structure.
Add an autoconf test for the address space operation entry read_folio
Replace the references to an address space operations' readpage with
read_folio. Note that the function Linux page_folio can be used to
obtain the required pointer to the folio for a given page.
Introduce afs_linux_read_folio that accepts a folio and calls
afs_linux_readpage with the page associated with that folio.
Reviewed-on: https://gerrit.openafs.org/15040
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
(cherry picked from commit bfb852197edcbe0c38c499faecd7c1be23308a20)
Change-Id: Iab96bd10a143d88fe37ac8aa8980b33339c76852
Reviewed-on: https://gerrit.openafs.org/15094
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit 43c926bf4da3f66f3acc013159fb51072e39efdb
Author: Cheyenne Wills <cwills@sinenomine.net>
Date: Tue Jul 5 10:28:10 2022 -0600
Linux: Introduce file mapping readpage helpers
Create a helper function that determines if a file's
i_mapping->a_ops->readpage
is NULL.
Create a helper function that calls a file's
i_mapping->a_ops->readpage
There are no functional changes with this commit.
Note: This commit isolates references to 'readpage' so that future
commits can change the name in a more straight forward manner.
Reviewed-on: https://gerrit.openafs.org/15039
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit a81f7300f08d6e515adbde4bce4b72a3102b60f9)
Change-Id: I9268fd2622ecd48ad6971a8faaeefef8128f4024
Reviewed-on: https://gerrit.openafs.org/15093
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit 6997f890445680ecda572778155c900ba9147b7b
Author: Cheyenne Wills <cwills@sinenomine.net>
Date: Mon Jun 27 08:38:25 2022 -0600
@ -2342,3 +2693,222 @@ Date: Thu Jun 2 13:45:27 2022 -0600
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit ec106b0768dc2ce54c48bf5d9799a966ba29a0a9
Author: Pat Riehecky <riehecky@fnal.gov>
Date: Wed Sep 19 15:51:00 2018 -0500
configure.ac: Add missing double include guard
This is primarily a sanity check (identified by clang-tidy).
Reviewed-on: https://gerrit.openafs.org/13333
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit ec45ae60536190c2f5fbf272a9acfe0a85824e24)
Change-Id: I6cf42d3645fa2669971a3adcd320397afb4cf2bd
Reviewed-on: https://gerrit.openafs.org/14964
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit f8a2aceb05914908b6a9d3e03c75e3a0c5e1a55c
Author: Cheyenne Wills <cwills@sinenomine.net>
Date: Tue Dec 22 11:06:42 2020 -0700
afs: Cleanup afsincludes.h indentation
Clean up the indentation of preprocessor statements
Remove commented out code.
Reviewed-on: https://gerrit.openafs.org/14471
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit 031ebf43a8d4db79ee1aa9aff571094354c548b1)
Change-Id: I04c86b8ac8735ec50bf955bb418bb81ee5105afd
Reviewed-on: https://gerrit.openafs.org/14931
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit 7a03627a64789b6c5fb44def81d4d39df3587d9d
Author: Cheyenne Wills <cwills@sinenomine.net>
Date: Tue Dec 22 11:03:33 2020 -0700
afs: Clean up VNOPS/afs_vnops_attrs.c indentation
Clean up the indentation of preprocessor statements, add #endif comments
where helpful.
Clean up whitespace in code indentation.
Reviewed-on: https://gerrit.openafs.org/14470
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit 873a5d9e8835b969370f1f031acef60745a0fff8)
Change-Id: Ia3c41652e99c44164dec852b0f8ab2f103e8e3c1
Reviewed-on: https://gerrit.openafs.org/14930
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit f92508b5f7cbf9562f841d226cc9cd9f345c020b
Author: Cheyenne Wills <cwills@sinenomine.net>
Date: Wed Dec 23 13:25:31 2020 -0700
afs: Clean up afs_init.c indentation
Clean up the indentation of preprocessor statements, add #endif comments
where helpful.
Clean up whitespace in code indentation.
Reviewed-on: https://gerrit.openafs.org/14469
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit d7469128ceefbd96b61f32f62fd1e11c3674dac8)
Change-Id: Iccf5587e02b3caf0ec6725dc554255366b879d9e
Reviewed-on: https://gerrit.openafs.org/14929
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit 97dd85ba97799fe97d424bbdbad9ced6e582ebaa
Author: Mark Vitale <mvitale@sinenomine.net>
Date: Sun May 10 22:13:13 2020 -0400
DARWIN: remove vestigial etap_event_t typedefs
These typedefs have been present since commit
a41175cfbbf4d06ccfe14ae54bef8b7464ecd80b
"initial-darwin-support-20010327"; at least some of this material was
obtained directly from IBM after the initial code import.
Based on research of old Darwin source code and kernel documentation,
the Event Trace Analysis Package (ETAP) was a lock-profiling interface
provided in older versions of Mach and xnu. ETAP was not enabled by
default; the kernel had to be recompiled with certain options to enable
it. Support for ETAP was removed from the xnu tree sometime between
xnu-517 (10.3 Panther) and xnu-792 (10.4 Tiger), although some
references remain in the latter under PPC support (osfmk/ppc/hw_lock.s).
All remaining references to etap_event_t disappeared when PPC support
was removed, some time between xnu-1456.1.26 (10.6 Snow Leopard) and
xnu-1699.24.8 (10.7.2 Lion).
Therefore, it is possible that these typedefs were needed in the past by
(IBM/Transarc) AFS to support use of some lock APIs (e.g.,
simple_lock_init, usimple_lock_init) after the ETAP code was withdrawn
from xnu. However, these typedefs have probably always been vestigial
for OpenAFS, because OpenAFS has never used any lock API that took
etap_event_t as an argument.
Regardless, OpenAFS does not need these definitions to build and run on
any currently supported version of macOS.
Remove the vestigial code.
No functional change should be incurred by this commit.
Reviewed-on: https://gerrit.openafs.org/14219
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit 145c90bdbeeff4ea95acacd7dc110f0c6fcba281)
Change-Id: I96cdfe756cb8917079a7cc46d6186e69337caf0d
Reviewed-on: https://gerrit.openafs.org/14928
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit 8db804eb1ec3f6a4b41dafff31f4805688a3da60
Author: Andrew Deason <adeason@sinenomine.net>
Date: Thu Jul 18 16:21:10 2019 -0500
afs: Handle osi_NewVnode failures
Currently, code inside afs_vcache.c assumes that osi_NewVnode always
returns non-NULL, which means that osi_NewVnode must panic if it
cannot create a new vnode.
All of the callers of afs_GetVCache, afs_NewVCache, etc, already
handle getting a NULL return, though (after all, the given fid may not
exist or be inaccessible due to network errors, etc). So, just
propagate NULL returns from osi_NewVnode up to our callers, to avoid
panics in these situations.
Modify osi_NewVnode on many arches to return an error on allocation
failure, instead of panic'ing.
Reviewed-on: https://gerrit.openafs.org/13701
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Reviewed-by: Yadavendra Yadav <yadayada@in.ibm.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
(cherry picked from commit ea9e5e8519dc486cfb019447ee5d695de104079d)
Change-Id: I2a3c5aac44a57093caee4008b86420ed05c66eb7
Reviewed-on: https://gerrit.openafs.org/14927
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
commit dfc2626e2aac0904c954915ed1d474030414cb78
Author: Mark Vitale <mvitale@sinenomine.net>
Date: Fri Oct 5 10:39:23 2018 -0400
rx: remove rx_atomic bitops
The rx_atomic bitops were introduced with commit
1839cdbe268f4b19ac8e81ae78548f5c78e0c641 ("rx: atomic bit ops").
The last (only) reference to them was recently removed with commit
5ced6025b9f11fadbdf2e092bf40cc87499ed277 ("rx: Convert rxinit_status to
rx_IsRunning()").
Remove the now unreferenced bitops. This commit is comprised of partial
or complete reverts of the following commits:
ae4ad509d35 rx: fix rx_atomic warnings under Solaris (partial)
c16423ec4e6 rx: fix atomics on darwin (partial)
9dc6dd9858a rx: Fix AIX test_and_set_bit (complete)
1839cdbe268 rx: atomic bit ops (complete)
Note: The rx_atomic bitops for Linux systems are known to be broken due
to incorrect casting of rx_atomic_t into the unsigned long operand
expected by the native Linux bitops. The failure modes include silent
overruns on little-endian and incorrect results on big-endian. Do not
merely revert this commit in order to bring these bitops back into the
tree.
Reviewed-on: https://gerrit.openafs.org/13390
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
(cherry picked from commit d0dbd0f12119f0e874ba30adec81061ac6ae27c7)
Change-Id: I214ec09c07fb35a4d1dbf9719ec3861bde931638
Reviewed-on: https://gerrit.openafs.org/14926
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>

43
RELNOTES-1.8.9pre1 Normal file
View File

@ -0,0 +1,43 @@
User-Visible OpenAFS Changes
OpenAFS 1.8.9 (in progress)
All platforms
* Performance improvements (14814 14815 15129)
* Support for building with more recent compilers (14970 14982..14987
14990 14991 15056 15057 15061..15064)
* Build fixes and improvements around the test suite (14879 14880
14909..14911 15133)
* Documentation improvements (14980 15047)
* Improved diagnostics and error messages. In particular, warn when
server processes are started without keys and properly print the
volume transaction flags in "vos status" output (14594 14968)
FreeBSD
* Added support for release 12.3 and further improvements (14878
14920 14921)
Linux clients
* Support mainline kernels up to 5.19 (14942..14944 14989 14945
14946 15058 15065 15094 15095)
* Fixed a potential memory leak (15096)
* Fixed a type cast which could make builds fail against older kernels
(15134)
* In Red Hat packaging, no longer have systemd load the openafs module
during boot (15128)
Most client platforms
* Handle certain failure conditions rather than panicking the system
(14927 15052)

View File

@ -1,14 +0,0 @@
User-Visible OpenAFS Changes
OpenAFS 1.8.8.2~rc2
Linux clients
* Support mainline kernels 5.17, 5.18 and 5.19
* Support for gcc-12, clang-14
Maybe others
This is an intermediate package based on the git-branch
stable-1_8_x with additional patches
to fill the need of supporting Linux-5.19

View File

@ -1,99 +0,0 @@
From cc8edf7f9b75a2114ef6c7f003456b5515cbaaf5 Mon Sep 17 00:00:00 2001
From: Cheyenne Wills <cwills@sinenomine.net>
Date: Tue, 05 Jul 2022 10:28:10 -0600
Subject: [PATCH] Linux: Introduce file mapping readpage helpers
Create a helper function that determines if a file's
i_mapping->a_ops->readpage
is NULL.
Create a helper function that calls a file's
i_mapping->a_ops->readpage
There are no functional changes with this commit.
Note: This commit isolates references to 'readpage' so that future
commits can change the name in a more straight forward manner.
Reviewed-on: https://gerrit.openafs.org/15039
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(cherry picked from commit a81f7300f08d6e515adbde4bce4b72a3102b60f9)
Change-Id: I9268fd2622ecd48ad6971a8faaeefef8128f4024
---
diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
index 5411863..b834a40 100644
--- a/src/afs/LINUX/osi_vnodeops.c
+++ b/src/afs/LINUX/osi_vnodeops.c
@@ -2206,6 +2206,18 @@
#endif /* USABLE_KERNEL_PAGE_SYMLINK_CACHE */
+/*
+ * Call the mapping function that reads data for a given page.
+ * Note: When we return, it is expected that the page is unlocked. It is the
+ * responsibility of the called function (e.g. ->readpage) to unlock the given
+ * page, even when an error occurs.
+ */
+static int
+mapping_read_page(struct address_space *mapping, struct page *page)
+{
+ return mapping->a_ops->readpage(NULL, page);
+}
+
/* Populate a page by filling it from the cache file pointed at by cachefp
* (which contains indicated chunk)
* If task is NULL, the page copy occurs syncronously, and the routine
@@ -2272,9 +2284,9 @@
if (!PageUptodate(cachepage)) {
ClearPageError(cachepage);
- /* Note that ->readpage always handles unlocking the given page, even
- * when an error is returned. */
- code = cachemapping->a_ops->readpage(NULL, cachepage);
+ /* Note that mapping_read_page always handles unlocking the given page,
+ * even when an error is returned. */
+ code = mapping_read_page(cachemapping, cachepage);
if (!code && !task) {
wait_on_page_locked(cachepage);
}
@@ -2306,6 +2318,17 @@
put_page(cachepage);
return code;
+}
+
+/*
+ * Return true if the file has a mapping that can read pages
+ */
+static int inline
+file_can_read_pages(struct file *fp)
+{
+ if (fp->f_dentry->d_inode->i_mapping->a_ops->readpage != NULL)
+ return 1;
+ return 0;
}
static int inline
@@ -2403,7 +2426,8 @@
AFS_GLOCK();
goto out;
}
- if (!cacheFp->f_dentry->d_inode->i_mapping->a_ops->readpage) {
+
+ if (!file_can_read_pages(cacheFp)) {
cachefs_noreadpage = 1;
AFS_GLOCK();
goto out;
@@ -2871,7 +2895,7 @@
code = -1;
goto out;
}
- if (cacheFp->f_dentry->d_inode->i_mapping->a_ops->readpage == NULL) {
+ if (!file_can_read_pages(cacheFp)) {
cachefs_noreadpage = 1;
/* No mapping function */
code = -1;

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f6576fdbd4796adce3f7ab114c9e34c4cca717924ab02e5d8f2dc5bf0fa93f2e
size 3773323

View File

@ -0,0 +1 @@
ed561539e89a36a4aae32fcdcdb6d3fb openafs-1.8.9pre1-doc.tar.bz2

View File

@ -0,0 +1 @@
f6576fdbd4796adce3f7ab114c9e34c4cca717924ab02e5d8f2dc5bf0fa93f2e openafs-1.8.9pre1-doc.tar.bz2

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3b9d5f646b1efd24ae18ba6be45490bb01b4547725621fb335379f5754c6cb7a
size 14878054

View File

@ -0,0 +1 @@
d366d6fd5c835c6858738cc6ec37f76c openafs-1.8.9pre1-src.tar.bz2

View File

@ -0,0 +1 @@
3b9d5f646b1efd24ae18ba6be45490bb01b4547725621fb335379f5754c6cb7a openafs-1.8.9pre1-src.tar.bz2

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:64b6816f6019dc371631893d67398a9a1d59f83d15f236504376d441a022df07
size 3374112

View File

@ -1 +0,0 @@
b39c1f237fddfc696b04f02185cfffda openafs-stable-1_8_x-doc.tar.bz2

View File

@ -1 +0,0 @@
64b6816f6019dc371631893d67398a9a1d59f83d15f236504376d441a022df07 openafs-stable-1_8_x-doc.tar.bz2

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3e9ba0783deef51d7838ec847c2cfe6d00967b0ce50104ac0dcdf9d8e39b67c4
size 14570039

View File

@ -1 +0,0 @@
5ed303e2b2ade613991395b34dbbd2f8 openafs-stable-1_8_x-src.tar.bz2

View File

@ -1 +0,0 @@
3e9ba0783deef51d7838ec847c2cfe6d00967b0ce50104ac0dcdf9d8e39b67c4 openafs-stable-1_8_x-src.tar.bz2

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Wed Oct 12 16:19:20 UTC 2022 - Christof Hanke <christof.hanke@mpcdf.mpg.de>
- update to openafs-1.8.9pre1
- apply patch for kernel 6.0:
* 79f03c2.diff
-------------------------------------------------------------------
Tue Aug 16 09:54:58 UTC 2022 - Christof Hanke <christof.hanke@mpcdf.mpg.de>

View File

@ -57,11 +57,11 @@
# used for %setup only
# leave upstream tar-balls untouched for integrity checks.
%define upstream_version stable-1_8_x
%define upstream_version 1.8.9pre1
Name: openafs
Version: 1.8.8.2~rc1
Version: 1.8.9pre1
Release: 0
Summary: OpenAFS Distributed File System
License: IPL-1.0
@ -106,9 +106,8 @@ Source99: openafs.changes
# PATCH-FIX-UPSTREAM KMP build and gcc
# required patches for Linux-5.18 as mentionend on
# https://wiki.openafs.org/devel/Whiteboard/ (June 2022)
Patch1: cc8edf7.diff
Patch2: 05b722d.diff
Patch3: 6348262.diff
# PATCH-FIX-KMP-BUILDING
Patch1: 79f03c2.diff
# PATCH-FIX-UPSTREAM make configure detect ncurses 6 correctly
Patch4: 4cf7a9a.diff
@ -321,8 +320,6 @@ done
%setup -q -n openafs-%{upstream_version} -T -b 0 -b 1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
./regen.sh