Compare commits
No commits in common. "factory" and "factory" have entirely different histories.
111
03b280649f5e22ed74c217d7c98c3416a2fa9052
Normal file
111
03b280649f5e22ed74c217d7c98c3416a2fa9052
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
commit 03b280649f5e22ed74c217d7c98c3416a2fa9052
|
||||||
|
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||||||
|
Date: Wed Jun 12 13:56:44 2024 -0600
|
||||||
|
|
||||||
|
Linux-6.10: remove includes for asm/ia32_unistd.h
|
||||||
|
|
||||||
|
The Linux 6.10 commit:
|
||||||
|
"x86/syscall/compat: Remove ia32_unistd.h" (e2d168328e)
|
||||||
|
|
||||||
|
Removed the header ia32_unistd.h since it was just a wrapper for the
|
||||||
|
unistd_32_ia32.h.
|
||||||
|
|
||||||
|
The commit:
|
||||||
|
"linux-afs-translator-xen-20060731" (29dd792381)
|
||||||
|
added an ia32_unistd.h include to several files; all were not needed
|
||||||
|
(as they didn't reference any of the contents from the header file, e.g
|
||||||
|
_NR_ia32_*).
|
||||||
|
|
||||||
|
The commit:
|
||||||
|
"amd64-hook-ia32-table-20030519" (831e172463)
|
||||||
|
added an include for ia32_unistd.h to osi_module.c.
|
||||||
|
|
||||||
|
A later commit:
|
||||||
|
"osi-probe-syscall-20050129" (f126dbdbe2)
|
||||||
|
removed many of the references to defines from ia32_unistd.h, but did
|
||||||
|
not remove the include for the header.
|
||||||
|
|
||||||
|
Currently the only remaining files (linux-kernel-syscall-probe.m4,
|
||||||
|
LINUX/osi_probe.c and LINUX/osi_syscall.c) continue to reference the
|
||||||
|
items from ia32_unistd.h, but only when building older kernels that
|
||||||
|
either don't have LINUX_KEYRING_SUPPORT or when
|
||||||
|
ENABLE_LINUX_SYSCALL_PROBING is enabled (in both cases, these are only
|
||||||
|
applicable for older kernels where the asm/ia32_unistd.h file would be
|
||||||
|
present).
|
||||||
|
|
||||||
|
For the files that don't have references (i.e. _NR_ia32_*), we can
|
||||||
|
simply remove the include for asm/ia32_unistd.h. For the remaining set
|
||||||
|
of files, we can leave the include for asm/ia32_unistd.h since the code
|
||||||
|
already has preprocessor conditionals so it's only included for older
|
||||||
|
Linux kernels where the header file will be present.
|
||||||
|
|
||||||
|
We noted above, the include for asm/ia32_unistd.h is already conditional
|
||||||
|
on the checks for LINUX_KEYRING_SUPPORT and ENABLE_LINUX_SYSCALL_PROBING
|
||||||
|
so we do not need to add any additional configure checks.
|
||||||
|
|
||||||
|
Change-Id: I901b5c0f0ff86272b02f898f3951325533d22f4f
|
||||||
|
Reviewed-on: https://gerrit.openafs.org/15763
|
||||||
|
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||||||
|
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||||||
|
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||||||
|
|
||||||
|
diff --git a/src/afs/LINUX/osi_ioctl.c b/src/afs/LINUX/osi_ioctl.c
|
||||||
|
index 3e797745c..d964d8103 100644
|
||||||
|
--- a/src/afs/LINUX/osi_ioctl.c
|
||||||
|
+++ b/src/afs/LINUX/osi_ioctl.c
|
||||||
|
@@ -21,10 +21,6 @@
|
||||||
|
#include <linux/unistd.h> /* For syscall numbers. */
|
||||||
|
#include <linux/mm.h>
|
||||||
|
|
||||||
|
-#ifdef AFS_AMD64_LINUX_ENV
|
||||||
|
-#include <asm/ia32_unistd.h>
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
#include <linux/slab.h>
|
||||||
|
#include <linux/init.h>
|
||||||
|
#include <linux/sched.h>
|
||||||
|
diff --git a/src/afs/LINUX/osi_module.c b/src/afs/LINUX/osi_module.c
|
||||||
|
index 8ace127f4..499810cc6 100644
|
||||||
|
--- a/src/afs/LINUX/osi_module.c
|
||||||
|
+++ b/src/afs/LINUX/osi_module.c
|
||||||
|
@@ -21,10 +21,6 @@
|
||||||
|
#include <linux/unistd.h> /* For syscall numbers. */
|
||||||
|
#include <linux/mm.h>
|
||||||
|
|
||||||
|
-#ifdef AFS_AMD64_LINUX_ENV
|
||||||
|
-#include <asm/ia32_unistd.h>
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
#include <linux/proc_fs.h>
|
||||||
|
#include <linux/slab.h>
|
||||||
|
#include <linux/init.h>
|
||||||
|
diff --git a/src/afs/LINUX/osi_pag_module.c b/src/afs/LINUX/osi_pag_module.c
|
||||||
|
index ea3d1bd2c..346108489 100644
|
||||||
|
--- a/src/afs/LINUX/osi_pag_module.c
|
||||||
|
+++ b/src/afs/LINUX/osi_pag_module.c
|
||||||
|
@@ -20,10 +20,6 @@
|
||||||
|
#include <linux/unistd.h> /* For syscall numbers. */
|
||||||
|
#include <linux/mm.h>
|
||||||
|
|
||||||
|
-#ifdef AFS_AMD64_LINUX_ENV
|
||||||
|
-#include <asm/ia32_unistd.h>
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
#include <linux/proc_fs.h>
|
||||||
|
#include <linux/slab.h>
|
||||||
|
#include <linux/init.h>
|
||||||
|
diff --git a/src/afs/LINUX/osi_proc.c b/src/afs/LINUX/osi_proc.c
|
||||||
|
index 9c5a080f0..ad7c695b9 100644
|
||||||
|
--- a/src/afs/LINUX/osi_proc.c
|
||||||
|
+++ b/src/afs/LINUX/osi_proc.c
|
||||||
|
@@ -25,10 +25,6 @@
|
||||||
|
#include <linux/unistd.h> /* For syscall numbers. */
|
||||||
|
#include <linux/mm.h>
|
||||||
|
|
||||||
|
-#ifdef AFS_AMD64_LINUX_ENV
|
||||||
|
-# include <asm/ia32_unistd.h>
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
#include <linux/slab.h>
|
||||||
|
#include <linux/init.h>
|
||||||
|
#include <linux/sched.h>
|
96
0f6a3a402f4a66114da9231032bd68cdc4dee7bc
Normal file
96
0f6a3a402f4a66114da9231032bd68cdc4dee7bc
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
commit 0f6a3a402f4a66114da9231032bd68cdc4dee7bc
|
||||||
|
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||||||
|
Date: Wed Jun 12 14:13:59 2024 -0600
|
||||||
|
|
||||||
|
Linux-6.10: Use filemap_alloc_folio when avail
|
||||||
|
|
||||||
|
The Linux 6.10 commit:
|
||||||
|
"mm: remove page_cache_alloc()" (3f2ae4ebd5)
|
||||||
|
removed the page_cache_alloc(), with a note that callers would be using
|
||||||
|
filemap_alloc_folio instead.
|
||||||
|
|
||||||
|
The function filemap_alloc_folio() was introduced in Linux 5.15 commit:
|
||||||
|
"mm/filemap: Add filemap_alloc_folio" (bb3c579e25)
|
||||||
|
|
||||||
|
Add a configure check for filemap_alloc_folio and update the function
|
||||||
|
afs_linux_read_cache() to use a wrapper that calls filemap_alloc_folio()
|
||||||
|
if available otherwise calls page_cache_alloc().
|
||||||
|
|
||||||
|
Minor whitespace/style cleanup
|
||||||
|
|
||||||
|
Note: The function filemap_alloc_folio() was introduced in Linux 5.15,
|
||||||
|
so this change affects builds using the Linux kernel 5.15 and later.
|
||||||
|
|
||||||
|
Change-Id: Ia17aefc38fe9787e54b315c864da726d610b8bb9
|
||||||
|
Reviewed-on: https://gerrit.openafs.org/15764
|
||||||
|
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||||||
|
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||||||
|
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||||||
|
|
||||||
|
diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
|
||||||
|
index 511b0838f..18809c89f 100644
|
||||||
|
--- a/src/afs/LINUX/osi_vnodeops.c
|
||||||
|
+++ b/src/afs/LINUX/osi_vnodeops.c
|
||||||
|
@@ -2320,6 +2320,24 @@ mapping_read_page(struct address_space *mapping, struct page *page)
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
+/*
|
||||||
|
+ * small compat wrapper for filemap_alloc_folio/page_cache_alloc
|
||||||
|
+ */
|
||||||
|
+static struct page *
|
||||||
|
+afs_page_cache_alloc(struct address_space *cachemapping)
|
||||||
|
+{
|
||||||
|
+#if defined(HAVE_LINUX_FILEMAP_ALLOC_FOLIO)
|
||||||
|
+ struct folio *folio;
|
||||||
|
+ folio = filemap_alloc_folio(mapping_gfp_mask(cachemapping), 0);
|
||||||
|
+ if (folio == NULL) {
|
||||||
|
+ return NULL;
|
||||||
|
+ }
|
||||||
|
+ return &folio->page;
|
||||||
|
+#else
|
||||||
|
+ return page_cache_alloc(cachemapping);
|
||||||
|
+#endif
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
/* 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
|
||||||
|
@@ -2358,11 +2376,12 @@ afs_linux_read_cache(struct file *cachefp, struct page *page,
|
||||||
|
pageindex = (offset - AFS_CHUNKTOBASE(chunk)) >> PAGE_SHIFT;
|
||||||
|
|
||||||
|
while (cachepage == NULL) {
|
||||||
|
- cachepage = find_get_page(cachemapping, pageindex);
|
||||||
|
+ cachepage = find_get_page(cachemapping, pageindex);
|
||||||
|
if (!cachepage) {
|
||||||
|
- if (!newpage)
|
||||||
|
- newpage = page_cache_alloc(cachemapping);
|
||||||
|
- if (!newpage) {
|
||||||
|
+ if (newpage == NULL) {
|
||||||
|
+ newpage = afs_page_cache_alloc(cachemapping);
|
||||||
|
+ }
|
||||||
|
+ if (newpage == NULL) {
|
||||||
|
code = -ENOMEM;
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
|
diff --git a/src/cf/linux-kernel-func.m4 b/src/cf/linux-kernel-func.m4
|
||||||
|
index 93f96f5ad..83ea354b0 100644
|
||||||
|
--- a/src/cf/linux-kernel-func.m4
|
||||||
|
+++ b/src/cf/linux-kernel-func.m4
|
||||||
|
@@ -253,6 +253,16 @@ AC_CHECK_LINUX_FUNC([no_strlcpy],
|
||||||
|
size_t s;
|
||||||
|
s = strlcpy(buff);]])
|
||||||
|
|
||||||
|
+dnl Linux 5.15 introduced filemap_alloc_folio() as a replacement for
|
||||||
|
+dnl page_cache_alloc(). page_cache_alloc() was updated to become just a
|
||||||
|
+dnl wrapper for filemap_alloc_folio().
|
||||||
|
+dnl Linux 6.10 removed page_cache_alloc().
|
||||||
|
+AC_CHECK_LINUX_FUNC([filemap_alloc_folio],
|
||||||
|
+ [#include <linux/kernel.h>
|
||||||
|
+ #include <linux/pagemap.h>],
|
||||||
|
+ [[static struct folio *folio;
|
||||||
|
+ folio = filemap_alloc_folio(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"],
|
66
658942f2791fad5e33ec7542158c16dfc66eed39
Normal file
66
658942f2791fad5e33ec7542158c16dfc66eed39
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
commit 658942f2791fad5e33ec7542158c16dfc66eed39
|
||||||
|
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||||||
|
Date: Wed Jun 12 14:16:43 2024 -0600
|
||||||
|
|
||||||
|
Linux-6.10: define a wrapper for vmalloc
|
||||||
|
|
||||||
|
The Linux 6.10 commit:
|
||||||
|
"mm: vmalloc: enable memory allocation profiling" (88ae5fb755)
|
||||||
|
changed vmalloc from a function to a wrapper macro.
|
||||||
|
|
||||||
|
This change results in build errors:
|
||||||
|
"error: implicit declaration of function ‘vmalloc’; did you mean
|
||||||
|
‘kmalloc’? [-Werror=implicit-function-declaration]"
|
||||||
|
|
||||||
|
when vmalloc is passed as a parameter to the afs_atomlist_create() and
|
||||||
|
afs_lhash_create() functions.
|
||||||
|
|
||||||
|
Add a little wrapper function around vmalloc() to use for the parameter
|
||||||
|
to afs_atomlist_create() and afs_lhash_create().
|
||||||
|
|
||||||
|
Note: A configure test was not needed for this change since the name
|
||||||
|
and functionality of Linux's vmalloc did not change.
|
||||||
|
|
||||||
|
Change-Id: I69c1da9eea5d1de11c1628bbcef427f81f5c01e1
|
||||||
|
Reviewed-on: https://gerrit.openafs.org/15765
|
||||||
|
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||||||
|
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||||||
|
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||||||
|
|
||||||
|
diff --git a/src/afs/LINUX/osi_alloc.c b/src/afs/LINUX/osi_alloc.c
|
||||||
|
index 86cd0e571..7c4b4a1ca 100644
|
||||||
|
--- a/src/afs/LINUX/osi_alloc.c
|
||||||
|
+++ b/src/afs/LINUX/osi_alloc.c
|
||||||
|
@@ -196,6 +196,15 @@ local_free(void *p, size_t n)
|
||||||
|
vfree(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
+/*
|
||||||
|
+ * wrapper for vmalloc(), since vmalloc() may be a macro
|
||||||
|
+ */
|
||||||
|
+static void *
|
||||||
|
+local_vmalloc(size_t size)
|
||||||
|
+{
|
||||||
|
+ return vmalloc(size);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
/* linux_alloc_init(): Initializes the kernel memory allocator. As part
|
||||||
|
* of this process, it also initializes a pool of osi_linux_mem
|
||||||
|
* structures as well as the hash table itself.
|
||||||
|
@@ -209,14 +218,14 @@ linux_alloc_init(void)
|
||||||
|
/* initiate our pool of osi_linux_mem structs */
|
||||||
|
al_mem_pool =
|
||||||
|
afs_atomlist_create(sizeof(struct osi_linux_mem), sizeof(long) * 1024,
|
||||||
|
- (void *)vmalloc, local_free);
|
||||||
|
+ local_vmalloc, local_free);
|
||||||
|
if (!al_mem_pool) {
|
||||||
|
printf("afs_osi_Alloc: Error in initialization(atomlist_create)\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* initialize the hash table to hold references to alloc'ed chunks */
|
||||||
|
- lh_mem_htab = afs_lhash_create(hash_equal, (void *)vmalloc, local_free);
|
||||||
|
+ lh_mem_htab = afs_lhash_create(hash_equal, local_vmalloc, local_free);
|
||||||
|
if (!lh_mem_htab) {
|
||||||
|
printf("afs_osi_Alloc: Error in initialization(lhash_create)\n");
|
||||||
|
return 0;
|
51
7097eec17bc01bcfc12c4d299136b2d3b94ec3d7
Normal file
51
7097eec17bc01bcfc12c4d299136b2d3b94ec3d7
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
commit 7097eec17bc01bcfc12c4d299136b2d3b94ec3d7
|
||||||
|
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||||||
|
Date: Thu Jun 6 10:42:57 2024 -0600
|
||||||
|
|
||||||
|
Linux 6.10: Move 'inline' before func return type
|
||||||
|
|
||||||
|
With Linux 6.10 commit:
|
||||||
|
"kbuild: turn on -Wextra by default" (f5982cceb3)
|
||||||
|
there are additional compiler warnings that can turn
|
||||||
|
into build errors when --enable-checking is used.
|
||||||
|
|
||||||
|
"error: ‘inline’ is not at beginning of declaration
|
||||||
|
[-Werror=old-style-declaration]"
|
||||||
|
|
||||||
|
The error is due to the return type preceding the "inline" keyword
|
||||||
|
in function declarations.
|
||||||
|
|
||||||
|
Fix the declarations for file_can_read_pages() and
|
||||||
|
afs_linux_readpage_fastpath() to have the proper ordering of the
|
||||||
|
static/inline keywords attributes so they precede the return type.
|
||||||
|
|
||||||
|
Just a note that the `static` and `inline` keywords must precede a
|
||||||
|
function's return type.
|
||||||
|
|
||||||
|
Change-Id: I3ff9d45c119e70a90faf18fbf6d49fb6b9adcf33
|
||||||
|
Reviewed-on: https://gerrit.openafs.org/15768
|
||||||
|
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||||||
|
Tested-by: Andrew Deason <adeason@sinenomine.net>
|
||||||
|
|
||||||
|
diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c
|
||||||
|
index 18809c89f..c6c3bfe39 100644
|
||||||
|
--- a/src/afs/LINUX/osi_vnodeops.c
|
||||||
|
+++ b/src/afs/LINUX/osi_vnodeops.c
|
||||||
|
@@ -2443,7 +2443,7 @@ afs_linux_read_cache(struct file *cachefp, struct page *page,
|
||||||
|
/*
|
||||||
|
* Return true if the file has a mapping that can read pages
|
||||||
|
*/
|
||||||
|
-static int inline
|
||||||
|
+static inline int
|
||||||
|
file_can_read_pages(struct file *fp)
|
||||||
|
{
|
||||||
|
#if defined(STRUCT_ADDRESS_SPACE_OPERATIONS_HAS_READ_FOLIO)
|
||||||
|
@@ -2456,7 +2456,7 @@ file_can_read_pages(struct file *fp)
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static int inline
|
||||||
|
+static inline int
|
||||||
|
afs_linux_readpage_fastpath(struct file *fp, struct page *pp, int *codep)
|
||||||
|
{
|
||||||
|
loff_t offset = page_offset(pp);
|
@ -1,27 +1,104 @@
|
|||||||
<!--NO-FRAMELESS-->
|
Preface:
|
||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
|
========
|
||||||
"http://www.w3c.org/TR/html4/frameset.dtd">
|
|
||||||
<html><head>
|
This is the Release-Notes of the last official release.
|
||||||
<meta name="verify-v1" content="I/X2Wfxkt50ZaXkdbfIow6iFQIZ71o0o2b6sPTOGmPE=" /><!-- shadow -->
|
However,
|
||||||
<META name="verify-v1" content="THAFicQcPIBMrawRwzaJg3JK8FArpvoecAy5Zx7v9DM=" /><!-- cg2v -->
|
this version is based on the git branch "openafs-stable-1_8_x"
|
||||||
<META name="verify-v1" content="VMsthPusbXnedJuKjM0/lhH0uzVj79aQ/lPfk2FLXsA=" /><!-- jaltman -->
|
and thus has additional changes beside the ones for 1.8.11.
|
||||||
<META name="verify-v1" content="fijqhqC5PvhJOATNi4e6h2uSK0v1deFiKXL+yItw/5w=" /><!-- jhutz -->
|
The reason for this is the compatibility with current Linux-Kernels.
|
||||||
<title>OpenAFS</title>
|
The ChangeLog gives you all commits applied since then.
|
||||||
<link href="/openafs.css" rel="stylesheet" type="text/css">
|
The versioning-scheme of these packages is: openafs-$LAST_OFFICIAL_RELEASE.git$DATE_OF_NEWEST_COMMIT
|
||||||
<script type="text/javascript">
|
|
||||||
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
|
The package-maintainer.
|
||||||
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
|
|
||||||
</script>
|
|
||||||
<script type="text/javascript">
|
User-Visible OpenAFS Changes
|
||||||
var pageTracker = _gat._getTracker("UA-5995928-1");
|
|
||||||
pageTracker._trackPageview();
|
OpenAFS 1.8.11
|
||||||
</script>
|
|
||||||
</head>
|
All platforms
|
||||||
<frameset cols="265,*" border=0>
|
|
||||||
<frame src="/navbar.html" name="navbar">
|
* Check Rx RPC call number in incoming packets before allocating new
|
||||||
<frameset rows="170,*" border=0>
|
RPC calls to avoid re-running RPC calls when spurious packets are
|
||||||
<frame src="/top.html" scrolling=no name="top">
|
received (15562)
|
||||||
<frame src="/dl/openafs/1.8.13/RELNOTES-1.8.13" name="openafs_main">
|
|
||||||
</frameset>
|
* Fix memory leaks (15516 15517)
|
||||||
</frameset>
|
|
||||||
</html>
|
* Fix build failure when building with _FORTIFY_SOURCE (15518 15519)
|
||||||
|
|
||||||
|
* Fix build failures when building with the clang compiler (15540 15541
|
||||||
|
15547 15548)
|
||||||
|
|
||||||
|
* Improve error detection in OpenAFS directories for both clients
|
||||||
|
and servers (15544 15545 15546)
|
||||||
|
|
||||||
|
* Add a Makefile target to build Red Hat RPM packages (15514)
|
||||||
|
|
||||||
|
* Add support for custom version numbers in Red Hat RPM packages (15513)
|
||||||
|
|
||||||
|
All server platforms
|
||||||
|
|
||||||
|
* Fix File Server and Protection Server crashes due to recursive thread
|
||||||
|
lock bug (15609)
|
||||||
|
|
||||||
|
* Fix fileserver crashes during startup (15509 15543)
|
||||||
|
|
||||||
|
* The bosserver no longer creates the client configuration directory and
|
||||||
|
"ThisCell" and "CellServDB" symlinks. The "vos", "pts", and "bos"
|
||||||
|
commands now read cell configuration from the server cell configuration
|
||||||
|
directory when the client cell configuration directory is not present.
|
||||||
|
This change allows server packaging to be independent of client packaging
|
||||||
|
and removes the need for client configuration artifacts on hosts running
|
||||||
|
server processes only (15510 15511 15512)
|
||||||
|
|
||||||
|
* Print a warning in the volserver log when an older version of a volume
|
||||||
|
is restored over an existing volume, unless the volume was restored with
|
||||||
|
"-overwrite full" (15531)
|
||||||
|
|
||||||
|
* Print a warning in the bosserver log when the bosserver was not started
|
||||||
|
in restricted mode (15537)
|
||||||
|
|
||||||
|
* Avoid unbounded string copies when looking up volumes by name in
|
||||||
|
the vlserver (15538)
|
||||||
|
|
||||||
|
* Fix off-by-one directory entry name size check in salvager (15598)
|
||||||
|
|
||||||
|
All client platforms
|
||||||
|
|
||||||
|
* Updated the CellServDB to the latest version from grand.central.org
|
||||||
|
(15603)
|
||||||
|
|
||||||
|
All UNIX/Linux client platforms
|
||||||
|
|
||||||
|
* Fix PAG object memory leak which can degrade performance (15506)
|
||||||
|
|
||||||
|
* Improve kernel memory reclamation after accessing a large number of
|
||||||
|
files (15536)
|
||||||
|
|
||||||
|
* Improve cache corruption detection and refetch cache entries
|
||||||
|
when cache entry size mismatches are detected (15532 15533 15535)
|
||||||
|
|
||||||
|
* Fix panic in user-space client (libuafs, Fuse client) (15539)
|
||||||
|
|
||||||
|
Linux clients
|
||||||
|
|
||||||
|
* Add support for Linux 6.7 (15600)
|
||||||
|
|
||||||
|
* Add support for Linux 6.6 (15575 15589 15590)
|
||||||
|
|
||||||
|
* Add support for Linux 6.5 (15520 15521 15522 15523 15558)
|
||||||
|
|
||||||
|
* Fix BUG when directory entry names are longer than 16 characters.
|
||||||
|
Affects Linux 6.5 or higher built with GCC 13 or higher (15599)
|
||||||
|
|
||||||
|
* Invalidate Linux VFS dentry caches in the AFS filesystem when running
|
||||||
|
"fs flush*" commands. This reduces the need to drop Linux VFS caches
|
||||||
|
by writing to the "/proc/sys/vm/drop_caches" file when
|
||||||
|
troubleshooting (15515)
|
||||||
|
|
||||||
|
* Fix build failures (15507 15508 15596 15542 15549)
|
||||||
|
|
||||||
|
macOS
|
||||||
|
|
||||||
|
* Add support for MacOS 14 ("Sonoma") (15602)
|
||||||
|
|
||||||
|
76
d8b56f21994ce66d8daebb7d69e792f34c1a19ed
Normal file
76
d8b56f21994ce66d8daebb7d69e792f34c1a19ed
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
commit d8b56f21994ce66d8daebb7d69e792f34c1a19ed
|
||||||
|
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||||||
|
Date: Wed Jun 12 14:24:01 2024 -0600
|
||||||
|
|
||||||
|
afs: avoid empty-body warning
|
||||||
|
|
||||||
|
With Linux 6.10 commit:
|
||||||
|
"kbuild: turn on -Wextra by default" (f5982cceb3)
|
||||||
|
there are additional compiler warnings that can turn
|
||||||
|
into build errors when --enable-checking is used.
|
||||||
|
|
||||||
|
"error: suggest braces around empty body in an ‘if’
|
||||||
|
statement [-Werror=empty-body]"
|
||||||
|
|
||||||
|
when there is an empty body, e.g.
|
||||||
|
if (foo)
|
||||||
|
;
|
||||||
|
|
||||||
|
Most cases are due to the macros afs_PutCell and afs_PutServer which are
|
||||||
|
"empty" macros.
|
||||||
|
|
||||||
|
Update the afs_PutCell and afs_PutServer macros so they expand to
|
||||||
|
do {} while(0)
|
||||||
|
|
||||||
|
Add a comment at the definitions for afs_PutCell and afs_PutServer to
|
||||||
|
document the reason for keeping them.
|
||||||
|
|
||||||
|
Add braces to conditionals that have an empty body.
|
||||||
|
|
||||||
|
There are no functional changes with this commit.
|
||||||
|
|
||||||
|
Change-Id: I359723eb6a19d1c78449902b4f477da131b0fa18
|
||||||
|
Reviewed-on: https://gerrit.openafs.org/15766
|
||||||
|
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||||||
|
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||||||
|
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||||||
|
|
||||||
|
diff --git a/src/afs/afs.h b/src/afs/afs.h
|
||||||
|
index 4bde047e8..621a8a517 100644
|
||||||
|
--- a/src/afs/afs.h
|
||||||
|
+++ b/src/afs/afs.h
|
||||||
|
@@ -349,7 +349,8 @@ struct cell_alias {
|
||||||
|
char *cell;
|
||||||
|
};
|
||||||
|
|
||||||
|
-#define afs_PutCell(cellp, locktype)
|
||||||
|
+/* In case someday a counterpart for afs_GetCell is needed */
|
||||||
|
+#define afs_PutCell(cellp, locktype) do {} while(0)
|
||||||
|
|
||||||
|
/* the unixuser flag bit definitions */
|
||||||
|
#define UHasTokens 1 /* are the st and ct fields valid (ever set)? */
|
||||||
|
@@ -537,7 +538,8 @@ struct server {
|
||||||
|
afs_int32 capabilities;
|
||||||
|
};
|
||||||
|
|
||||||
|
-#define afs_PutServer(servp, locktype)
|
||||||
|
+/* In case someday a counterpart for afs_GetServer is needed */
|
||||||
|
+#define afs_PutServer(servp, locktype) do {} while(0)
|
||||||
|
|
||||||
|
/* structs for some pioctls - these are (or should be)
|
||||||
|
* also in venus.h
|
||||||
|
diff --git a/src/afs/afs_cbqueue.c b/src/afs/afs_cbqueue.c
|
||||||
|
index 2dd633588..11e3aa3f1 100644
|
||||||
|
--- a/src/afs/afs_cbqueue.c
|
||||||
|
+++ b/src/afs/afs_cbqueue.c
|
||||||
|
@@ -139,7 +139,9 @@ afs_DequeueCallback(struct vcache *avc)
|
||||||
|
debugvc = avc;
|
||||||
|
if (avc->callsort.prev) {
|
||||||
|
QRemove(&(avc->callsort));
|
||||||
|
- } else; /* must have got dequeued in a race */
|
||||||
|
+ } else {
|
||||||
|
+ /* must have got dequeued in a race */
|
||||||
|
+ }
|
||||||
|
|
||||||
|
return;
|
||||||
|
} /* afs_DequeueCallback */
|
11
handle_backports.diff
Normal file
11
handle_backports.diff
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- a/src/afs/LINUX/osi_vnodeops.c
|
||||||
|
+++ b/src/afs/LINUX/osi_vnodeops.c
|
||||||
|
@@ -971,7 +971,7 @@
|
||||||
|
# else
|
||||||
|
.splice_write = generic_file_splice_write,
|
||||||
|
# endif
|
||||||
|
-# if LINUX_VERSION_CODE >= KERNEL_VERSION(6,5,0)
|
||||||
|
+# if LINUX_VERSION_CODE >= KERNEL_VERSION(6,4,0)
|
||||||
|
.splice_read = filemap_splice_read,
|
||||||
|
# else
|
||||||
|
.splice_read = generic_file_splice_read,
|
@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:751d7e554eabb383359b97963d6a14e286f98a13402298d3494accc9dd440b82
|
oid sha256:20c484ebfcedae2f5c3f7fe3ea5b0b02d7a05c0490ea75c80d255b1fe6e336fd
|
||||||
size 3371907
|
size 3370191
|
||||||
|
@ -1 +1 @@
|
|||||||
89e9cddb836abd6fa55f3af13d879bbf /home/hanke/obs/home:hauky:branches:filesystems/openafs/openafs-stable-1_8_x-doc.tar.bz2
|
0fa436de034023841082afa08ab08bdf /home/hanke/obs/home:hauky:branches:filesystems/openafs/openafs-stable-1_8_x-doc.tar.bz2
|
||||||
|
@ -1 +1 @@
|
|||||||
751d7e554eabb383359b97963d6a14e286f98a13402298d3494accc9dd440b82 /home/hanke/obs/home:hauky:branches:filesystems/openafs/openafs-stable-1_8_x-doc.tar.bz2
|
20c484ebfcedae2f5c3f7fe3ea5b0b02d7a05c0490ea75c80d255b1fe6e336fd /home/hanke/obs/home:hauky:branches:filesystems/openafs/openafs-stable-1_8_x-doc.tar.bz2
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:33b7c95fc52aa200cd118c65dbeadf8b2536a330a8c0dc316493a5709b77eda4
|
oid sha256:c7afd3cab43d1dd6078c944cfb97ca2aee622187a5443b97166a3a25384fb01a
|
||||||
size 14642570
|
size 14596525
|
||||||
|
@ -1 +1 @@
|
|||||||
6b06c6afa7b493940613d3ab6d804636 /home/hanke/obs/home:hauky:branches:filesystems/openafs/openafs-stable-1_8_x-src.tar.bz2
|
63de2df7b8b37f9305a12024ed400fb6 /home/hanke/obs/home:hauky:branches:filesystems/openafs/openafs-stable-1_8_x-src.tar.bz2
|
||||||
|
@ -1 +1 @@
|
|||||||
33b7c95fc52aa200cd118c65dbeadf8b2536a330a8c0dc316493a5709b77eda4 /home/hanke/obs/home:hauky:branches:filesystems/openafs/openafs-stable-1_8_x-src.tar.bz2
|
c7afd3cab43d1dd6078c944cfb97ca2aee622187a5443b97166a3a25384fb01a /home/hanke/obs/home:hauky:branches:filesystems/openafs/openafs-stable-1_8_x-src.tar.bz2
|
||||||
|
@ -1,21 +1,3 @@
|
|||||||
-------------------------------------------------------------------
|
|
||||||
Mon Dec 23 07:44:52 UTC 2024 - Christof Hanke <christof.hanke@mpcdf.mpg.de>
|
|
||||||
|
|
||||||
- update to latest git branch stable-1_8_x, required to support kernel 6.12
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Nov 25 10:54:35 UTC 2024 - Christof Hanke <christof.hanke@mpcdf.mpg.de>
|
|
||||||
|
|
||||||
- update to latest git branch stable-1_8_x, includes security update 1.8.13
|
|
||||||
- change version to openafs-1.8.13.g... since the new stable release is 1.8.13
|
|
||||||
- remove patch handle_backports.diff, it is now included upstream
|
|
||||||
- remove intermediate patches:
|
|
||||||
* 03b280649f5e22ed74c217d7c98c3416a2fa9052: Linux-6.10: remove includes for asm/ia32_unistd.h
|
|
||||||
* 0f6a3a402f4a66114da9231032bd68cdc4dee7bc: Linux-6.10: Use filemap_alloc_folio when avail
|
|
||||||
* 658942f2791fad5e33ec7542158c16dfc66eed39: Linux-6.10: define a wrapper for vmalloc
|
|
||||||
* d8b56f21994ce66d8daebb7d69e792f34c1a19ed: afs: avoid empty-body warning
|
|
||||||
* 7097eec17bc01bcfc12c4d299136b2d3b94ec3d7: Linux 6.10: Move 'inline' before func return type
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Aug 14 06:46:15 UTC 2024 - Christof Hanke <christof.hanke@mpcdf.mpg.de>
|
Wed Aug 14 06:46:15 UTC 2024 - Christof Hanke <christof.hanke@mpcdf.mpg.de>
|
||||||
|
|
||||||
|
20
openafs.spec
20
openafs.spec
@ -61,7 +61,7 @@
|
|||||||
|
|
||||||
Name: openafs
|
Name: openafs
|
||||||
|
|
||||||
Version: 1.8.13.g20241116
|
Version: 1.8.12.g20240711
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: OpenAFS Distributed File System
|
Summary: OpenAFS Distributed File System
|
||||||
License: IPL-1.0
|
License: IPL-1.0
|
||||||
@ -103,6 +103,16 @@ Source58: openafs.cacheinfo
|
|||||||
Source98: kmp_only.files
|
Source98: kmp_only.files
|
||||||
Source99: openafs.changes
|
Source99: openafs.changes
|
||||||
|
|
||||||
|
# PATCH-UPSTREAM required for kernel 6.10
|
||||||
|
Patch1: 03b280649f5e22ed74c217d7c98c3416a2fa9052
|
||||||
|
Patch2: 0f6a3a402f4a66114da9231032bd68cdc4dee7bc
|
||||||
|
Patch3: 658942f2791fad5e33ec7542158c16dfc66eed39
|
||||||
|
Patch4: d8b56f21994ce66d8daebb7d69e792f34c1a19ed
|
||||||
|
Patch5: 7097eec17bc01bcfc12c4d299136b2d3b94ec3d7
|
||||||
|
# PATCH-HANDLE-BACKPORTS
|
||||||
|
# some kernel-features from 6.5 are apparently in 6.4
|
||||||
|
Patch99: handle_backports.diff
|
||||||
|
|
||||||
# GENERAL BuildRequires and Requires
|
# GENERAL BuildRequires and Requires
|
||||||
#
|
#
|
||||||
|
|
||||||
@ -313,6 +323,14 @@ for src_file in %{S:0} %{S:1}; do
|
|||||||
done
|
done
|
||||||
|
|
||||||
%setup -q -n openafs-%{upstream_version} -T -b 0 -b 1
|
%setup -q -n openafs-%{upstream_version} -T -b 0 -b 1
|
||||||
|
%patch -P 1 -p1
|
||||||
|
%patch -P 2 -p1
|
||||||
|
%patch -P 3 -p1
|
||||||
|
%patch -P 4 -p1
|
||||||
|
%patch -P 5 -p1
|
||||||
|
%if 0%{?sle_version} == 150600
|
||||||
|
%patch -P 99 -p1
|
||||||
|
%endif
|
||||||
|
|
||||||
./regen.sh
|
./regen.sh
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user