commit eb5430d2d7258418edb2166804d194336b20e276 Author: Michael Meffie Date: Fri Aug 16 09:30:17 2024 -0400 Make OpenAFS 1.8.12.1 Update version strings for the 1.8.12.1 release. Change-Id: Ib56bd2f56155890b036523c0a3dcf70b312b4751 Reviewed-on: https://gerrit.openafs.org/15824 Reviewed-by: Cheyenne Wills Tested-by: BuildBot Reviewed-by: Mark Vitale Reviewed-by: Benjamin Kaduk commit 66bce637571b5c72fee92cd0def6729e2c4201f7 Author: Michael Meffie Date: Thu Aug 15 12:41:35 2024 -0400 Update NEWS for OpenAFS 1.8.12.1 Change-Id: Ia1917f20ecff66fa7bae28c02dbc703fa44b1737 Reviewed-on: https://gerrit.openafs.org/15822 Reviewed-by: Cheyenne Wills Tested-by: BuildBot Reviewed-by: Benjamin Kaduk Reviewed-by: Andrew Deason commit c788883d620843692bafaa50aa8fc57e99fefa68 Author: Cheyenne Wills 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. Reviewed-on: https://gerrit.openafs.org/15768 Reviewed-by: Andrew Deason Tested-by: Andrew Deason (cherry picked from commit 7097eec17bc01bcfc12c4d299136b2d3b94ec3d7) Change-Id: Ifce9c6b0b110788a054f0bad6066505e4bd86d40 Reviewed-on: https://gerrit.openafs.org/15800 Tested-by: BuildBot Reviewed-by: Mark Vitale Reviewed-by: Michael Meffie Reviewed-by: Andrew Deason Reviewed-by: Benjamin Kaduk commit e24033ddabddbc3da34818811d07ee99ef60da65 Author: Cheyenne Wills 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. Reviewed-on: https://gerrit.openafs.org/15766 Reviewed-by: Michael Meffie Tested-by: BuildBot Reviewed-by: Andrew Deason (cherry picked from commit d8b56f21994ce66d8daebb7d69e792f34c1a19ed) Change-Id: I0617aeba36b638ae36678043216e2b4c145921b7 Reviewed-on: https://gerrit.openafs.org/15799 Tested-by: BuildBot Reviewed-by: Mark Vitale Reviewed-by: Michael Meffie Reviewed-by: Andrew Deason Reviewed-by: Benjamin Kaduk commit f08f7e821addad639667fd81d84fa7b81115cff8 Author: Cheyenne Wills 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. Reviewed-on: https://gerrit.openafs.org/15763 Reviewed-by: Michael Meffie Tested-by: BuildBot Reviewed-by: Andrew Deason (cherry picked from commit 03b280649f5e22ed74c217d7c98c3416a2fa9052) Change-Id: Ifdd7c831e46796a3c3f1f80c973f4319dc791ecc Reviewed-on: https://gerrit.openafs.org/15798 Tested-by: BuildBot Reviewed-by: Mark Vitale Reviewed-by: Michael Meffie Reviewed-by: Andrew Deason Reviewed-by: Benjamin Kaduk commit f1b890fbb916db6be5d8a50748b2563d43478771 Author: Cheyenne Wills 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. Reviewed-on: https://gerrit.openafs.org/15765 Tested-by: BuildBot Reviewed-by: Andrew Deason Reviewed-by: Michael Meffie (cherry picked from commit 658942f2791fad5e33ec7542158c16dfc66eed39) Change-Id: Iece75aea9c8dbc072e1dfa83cf82aee88ac647dd Reviewed-on: https://gerrit.openafs.org/15797 Tested-by: BuildBot Reviewed-by: Mark Vitale Reviewed-by: Michael Meffie Reviewed-by: Andrew Deason Reviewed-by: Benjamin Kaduk commit e5766258ef6dbddbc3885d5b298679af262d03aa Author: Cheyenne Wills 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. Reviewed-on: https://gerrit.openafs.org/15764 Tested-by: BuildBot Reviewed-by: Andrew Deason Reviewed-by: Michael Meffie (cherry picked from commit 0f6a3a402f4a66114da9231032bd68cdc4dee7bc) Change-Id: Iabb894a606816e8ae43a4a8028ac054cc643f84f Reviewed-on: https://gerrit.openafs.org/15796 Tested-by: BuildBot Reviewed-by: Mark Vitale Reviewed-by: Michael Meffie Reviewed-by: Andrew Deason Reviewed-by: Benjamin Kaduk