bce285df84
- update to official openafs-1.8.10 - remove obsolete patches: * 7a3ad3bc.diff * b885159.diff * f6fbb85.diff * 4cf7a9a.diff OBS-URL: https://build.opensuse.org/request/show/1097970 OBS-URL: https://build.opensuse.org/package/show/filesystems/openafs?expand=0&rev=109
3786 lines
166 KiB
Plaintext
3786 lines
166 KiB
Plaintext
commit a0b7f71122285f71c3ff0d006d1f9a77b1481732
|
||
Author: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Date: Thu Jun 29 23:20:28 2023 +0200
|
||
|
||
Make OpenAFS 1.8.10
|
||
|
||
Update version strings for the 1.8.10 release, and add the
|
||
finishing touch to NEWS.
|
||
|
||
Change-Id: I5ade3bf8eb05474c5e4344e7c727545e807a0053
|
||
Reviewed-on: https://gerrit.openafs.org/15490
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit a48dc74d793a95790c34e9701bbcbe02080308bc
|
||
Author: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Date: Thu Jan 12 18:06:30 2023 +0100
|
||
|
||
Make OpenAFS 1.8.10pre1
|
||
|
||
Update version strings for the first 1.8.10 prerelease.
|
||
|
||
Change-Id: I116eb9852e7799540fea4cd439f513d571231f45
|
||
Reviewed-on: https://gerrit.openafs.org/15282
|
||
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: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 30e83126649e8aeeecf1c10436f6f9a315e459b6
|
||
Author: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Date: Thu May 18 16:55:11 2023 +0200
|
||
|
||
Update NEWS for 1.8.10pre1
|
||
|
||
Release notes for the first 1.8.10 prerelease.
|
||
|
||
Change-Id: Ie7ed1b65444239528edcb4861ad3e99af54c4bbb
|
||
Reviewed-on: https://gerrit.openafs.org/15440
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@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 abeed74bb0d0bd7a3a5dbd13b9e953a994fb78e6
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Fri May 5 16:47:45 2023 -0500
|
||
|
||
LINUX: Set .getattr for symlinks
|
||
|
||
On Linux, we can define a .getattr callback for files and directories,
|
||
which is called when a caller requests metadata for the file, such as
|
||
during lstat(). For regular files and directories, we set this to
|
||
afs_linux_getattr(), which updates the metadata for the file in
|
||
question if it's out of date (CStatd not set).
|
||
|
||
For symlinks, however, we don't set .getattr at all. This would seem
|
||
to allow symlink metadata to become stale if another client changes
|
||
it, but the metadata often happens to stay up to date via other means.
|
||
For example, we can see the following happen:
|
||
|
||
- Another client changes, for example, the owner of a symlink we have
|
||
cached.
|
||
|
||
- The fileserver sends us a callback break, and so we clear CStatd for
|
||
the vcache for the symlink.
|
||
|
||
- lstat() is called for the symlink, which causes
|
||
afs_linux_dentry_revalidate() to be called for the cached dentry.
|
||
Since CStatd is not set for the vcache, we verify the entry by
|
||
calling afs_lookup(), and then update the symlink's metadata via
|
||
afs_getattr() and vattr2inode().
|
||
|
||
However, if CStatd _is_ set for the symlink when lstat() is called,
|
||
afs_linux_dentry_revalidate() will not update anything, and will just
|
||
return success. So, if we manage to set CStatd for the symlink without
|
||
updating it's Linux VFS metadata, the Linux metadata won't be updated,
|
||
and we'll report the old metadata to the caller of lstat().
|
||
|
||
We can set CStatd without updating the Linux VFS info in a few
|
||
different ways. A few pioctls such as PRemoveMount or PFlushMount can
|
||
do this if they encounter an error, but the only code paths that call
|
||
these pioctls in OpenAFS (via the 'fs' utility) also lstat() the
|
||
relevant path, so this doesn't happen in practice.
|
||
|
||
A more common way that this can occur is via afs_DoBulkStat(). If
|
||
userspace triggers a bulkstat that includes the symlink in question,
|
||
the symlink would gain the CStatd flag without any interaction with
|
||
the Linux VFS.
|
||
|
||
For example, say a symlink was chown'd from 'adeason' to 'root'. On
|
||
another client with the symlink cached, running 'ls -l' on the symlink
|
||
itself would show the updated owner, because
|
||
afs_linux_dentry_revalidate() updates the metadata:
|
||
|
||
$ ls -l dir.slink
|
||
lrwxr-xr-x. 1 root root 3 May 5 14:48 dir.slink -> dir
|
||
|
||
But if we 'ls -l' the entire directory, which contains other entries,
|
||
we will bulkstat many of the entries, possibly including the symlink.
|
||
And so we may see the old metadata:
|
||
|
||
$ ls -l
|
||
total 9
|
||
[...]
|
||
lrwxr-xr-x. 1 adeason root 3 May 5 14:48 dir.slink -> dir
|
||
|
||
Triggering this behavior requires a bulkstat to be triggered before we
|
||
access the symlink itself, and so triggering this behavior depends on
|
||
the order of the entries in the directory as well as whether the other
|
||
items in the dir are cached. As such, triggering this behavior during
|
||
normal operation tends to be inconsistent and confusing.
|
||
|
||
The only lstat() info for symlinks that can change like this is the
|
||
owner, group, and modtime; mode bits cannot change, and neither can
|
||
the length/size (or the contents in general). So, stale metadata tends
|
||
to not be very noticeable.
|
||
|
||
To fix all of this, set .getattr to afs_linux_getattr() for symlinks,
|
||
just like we do for regular files and directories. This ensures that
|
||
we will update the Linux VFS metadata for the symlink when it is
|
||
requested, so we won't return stale metadata to callers.
|
||
|
||
This behavior appears to have existed for symlinks on Linux for quite
|
||
a while, possibly since our Linux 2.6 support was added. The behavoir
|
||
may have been introduced around commit b860b359d58
|
||
(initial-linux24-support-20001105) or commit 00543744955
|
||
(linux22-fix-20040405). Before those commits, we defined a .revalidate
|
||
callback for symlinks, which was called on older Linux versions before
|
||
fetching file metadata, and so probably ensured that an lstat() on a
|
||
symlink returned properly updated info.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15423
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 2b32b130f534068251ce9fd1b621de6e480d56d7)
|
||
|
||
Change-Id: I194308e2a4783cc3205c6cfd54880421635f6b38
|
||
Reviewed-on: https://gerrit.openafs.org/15443
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 4394a3ee84ffaba559bbe9102c8e6d801f8d6625
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Wed Aug 26 13:54:00 2020 -0500
|
||
|
||
Retire AFS_MOUNT_AFS
|
||
|
||
Currently, the AFS_MOUNT_AFS #define is used to mean two completely
|
||
different things:
|
||
|
||
- The string "afs", corresponding to the first argument to mount(2) on
|
||
many platforms and some related calls inside libafs (e.g.
|
||
getnewvnode() on FBSD).
|
||
|
||
- An integer identifying the AFS filesystem (e.g. gfsadd() on AIX).
|
||
|
||
Depending on the platform and the build context (UKERNEL vs KERNEL),
|
||
AFS_MOUNT_AFS gets defined to one of those two things. This is very
|
||
confusing, and has led to mistakes in the past, such as those fixed in
|
||
commit 446457a1 (afs: Set AFS_VFSFSID to a numerical value).
|
||
|
||
To avoid such confusion, get rid of AFS_MOUNT_AFS completely, and
|
||
replace it with two new symbols:
|
||
|
||
- AFS_MOUNT_STR, the string "afs".
|
||
|
||
- AFS_FSNO, the integer given to gfsadd() et al.
|
||
|
||
When AFS_MOUNT_AFS is split this way, AFS_MOUNT_STR then is always
|
||
defined to the same value, so remove it from the param.h files for our
|
||
platforms. Instead, define it in afs.h for libafs use, and in
|
||
afsd_kernel.c (the only place outside of src/afs that uses it).
|
||
|
||
Also remove the logic for conditionally defining MOUNT_AFS from the
|
||
param.h files, moving the logic to the same locations as
|
||
AFS_MOUNT_STR.
|
||
|
||
Note that this commit removes the numeric definition for AFS_MOUNT_AFS
|
||
in param.sgi_65.h (aka AFS_FSNO). We never actually used this value,
|
||
since AFS_FSNO is not used on IRIX; instead, we tend to use the
|
||
'afs_fstype' global instead of a constant number.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14323
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 6b96a49eb6268adf9fc7e077fe849af7802a1575)
|
||
|
||
Change-Id: Iebb35b323ceb50f9603387c46168b80ec800735d
|
||
Reviewed-on: https://gerrit.openafs.org/15422
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Tested-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit ee6944d96d7692244438cb1aa7f84a102aebff76
|
||
Author: Benjamin Kaduk <kaduk@mit.edu>
|
||
Date: Tue Aug 16 07:48:02 2022 -0700
|
||
|
||
rxevent: fix mismatched #endif
|
||
|
||
We should only assign to 'ev' once, rather than assigning a second
|
||
time to an uninitialized value.
|
||
|
||
Reported by Ben Huntsman and diagnosed by Jeffrey Altman.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15106
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit e51ed7be3849025e9b47d1a644a4fcd99b774b30)
|
||
|
||
Change-Id: I06ac2155170d8f005afd9551c69d5ef3e60afff3
|
||
Reviewed-on: https://gerrit.openafs.org/15442
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Tested-by: Ben Huntsman <ben@huntsmans.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit e4e9122365a3ec05c01add5333b532f2c19e1732
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Sun Jul 18 23:05:38 2021 -0500
|
||
|
||
opr: Avoid sigwait on SIGWAITING
|
||
|
||
On AIX, calling sigwait() on a sigset containing SIGWAITING (or
|
||
SIGKILL or SIGSTOP), causes sigwait to return with an EINVAL error.
|
||
Currently, signalHandler() calls sigwait() with SIGWAITING, because
|
||
SIGWAITING is in the sigset returned by softsigSignalSet(). And so,
|
||
sigwait() returns EINVAL, and our opr_Verify in signalHandler() fails,
|
||
causing a crash.
|
||
|
||
To avoid this, remove SIGWAITING from the sigset in
|
||
softsigSignalSet(). This is AIX-specific, since the SIGWAITING signal
|
||
is AIX-specific.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14705
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit c2db41258370159c1257ee79df10afa4a2a2d9e8)
|
||
|
||
Change-Id: I433e4842b684c5f0f453e20d2f5d455b10a792eb
|
||
Reviewed-on: https://gerrit.openafs.org/15441
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 332b5593d487c25d0091c5572519364c57cace90
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Thu May 4 16:52:38 2023 -0700
|
||
|
||
AIX: Free pinned_heap during shutdown to prevent kernel panic
|
||
|
||
During shutdown, the function shutdown_osisleep is called in
|
||
src/afs/afs_osi.c. The body of this function is platform-
|
||
specific, and on AIX there is a call to xmfree:
|
||
|
||
xmfree(tmp);
|
||
|
||
However, on AIX, xmfree actually takes two arguments:
|
||
|
||
int xmfree ( ptr, heap)
|
||
caddr_t ptr;
|
||
caddr_t heap;
|
||
|
||
This is called elsewhere in the OpenAFS code correctly for
|
||
kernel_heap. In src/afs/AIX/osi_sleep.c we start using the
|
||
pinned_heap, but never xmfree it. Therefore, we need to do so here
|
||
during the shutdown. Here we include a header file which defines
|
||
pinned_heap, and then supply it as an argument to xmfree. This
|
||
prevents a kernel panic during OS shutdown.
|
||
|
||
The panic might go unnoticed in many environments, as during a
|
||
reboot, the system will normally dump and restart anyway. However,
|
||
if kdb is loaded (bosboot -a -D), the system will break into the
|
||
debugger before the full shutdown procedure completes. The stack
|
||
trace shows the following:
|
||
|
||
KDB(0)> stack
|
||
pvthread+01D200 STACK:
|
||
[00023900]abend_trap+000000 ()
|
||
[000EFF24]xmfree_frontend+0000A4 (??, ??, ??)
|
||
[F1000000C064CF1C]shutdown_osisleep@AF72_5+0000BC (??)
|
||
[F1000000C064CB7C]shutdown_osi+00001C ()
|
||
[F1000000C064A51C]afs_shutdown+0003BC (0000000100000001)
|
||
[F1000000C05A8DD4]afs_unmount+000094 (F1000A01501D4C10, 0000000000000000)
|
||
[F1000000C059FCE0]vfs_unmount+0000A0 (F1000A01501D4C10, 0000000000000000,
|
||
F1000A015047B07C)
|
||
[00014D70].hkey_legacy_gate+00004C ()
|
||
[006A6AAC]vfs_unmount+00008C (??, ??, ??)
|
||
[006B4228]kunmount+000228 (??, ??, ??, ??)
|
||
[006B4944]uvmount+000204 (??, ??)
|
||
[00003954]syscall+00024C ()
|
||
[100084FC]helper_UMfunc+00027C (??, ??)
|
||
[10003D48]dounmount+0000C8 (??, ??, ??, ??)
|
||
[100044DC]umountmain+0001BC (??, ??)
|
||
[10000AD4]main+0000B4 (??, ??)
|
||
[10000168]__start+000068 ()
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15419
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 4810cca10bc32df7ba7809fc2bf095d20e2febd8)
|
||
|
||
Change-Id: I687caa6daae83fc7986e76d370b55f90f5ca53cc
|
||
Reviewed-on: https://gerrit.openafs.org/15425
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Tested-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit a2ab598bae94a9ce0c95034c1a54bcd8e12d5a87
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Thu May 4 10:00:43 2023 -0700
|
||
|
||
AIX: AFS_SMALLOCSIZ too small on newer OS releases
|
||
|
||
Addresses a situation where a write in AFS space can cause a kernel
|
||
panic. In src/afs/afs_osi_uio.c in the function afsio_partialcopy:
|
||
|
||
size_t space_len = sizeof(struct uio) +
|
||
sizeof(struct iovec) * AFS_MAXIOVCNT;
|
||
|
||
/* Allocate a block that can contain both the UIO and the iovec */
|
||
space = osi_AllocSmallSpace(space_len);
|
||
|
||
On newer AIX systems (since at least 6.1), space_len is larger than
|
||
AFS_SMALLOCSIZ. When osi_AllocSmallSpace is called, the following
|
||
test in src/afs/afs_osi_alloc.c causes a kernel panic:
|
||
|
||
if (size > AFS_SMALLOCSIZ)
|
||
osi_Panic("osi_AllocSmallS: size=%d\n", (int)size);
|
||
|
||
This is due to the following definition in src/config/afs_args.h:
|
||
|
||
/*
|
||
* Note that the AFS_*ALLOCSIZ values should be multiples of sizeof(void*) to
|
||
* accomodate pointer alignment.
|
||
*/
|
||
/* Used in rx.c as well as afs directory. */
|
||
/* XXX Because of rxkad_cprivate... XXX */
|
||
|
||
All the supported AIX platforms define AFS_AIX32_ENV in
|
||
src/config/param.rs_aixXX.h, where XX is the AIX version. Therefore,
|
||
all the AIX platforms end up with AFS_SMALLOCSIZ = 152 bytes instead
|
||
of 256. To resolve this, we will modify the preprocessor test to use
|
||
the second case for AIX versions greater than 6.1. This issue may be
|
||
present on earlier releases of AIX as well, but AIX 5.3 and older
|
||
test systems were not available at this time.
|
||
|
||
Also, a spelling error in the comment was fixed.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15418
|
||
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>
|
||
(cherry picked from commit 8a2d4faa73d0f2e03a4016d7f84c5d5437040cec)
|
||
|
||
Change-Id: I5a2fc4ad1a829f1ee30387da20ce477c84fa020f
|
||
Reviewed-on: https://gerrit.openafs.org/15424
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Tested-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit af58c5cd15ad7b93a93892247fd1c4119e806767
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Thu Apr 27 09:49:03 2023 -0600
|
||
|
||
Linux: Clear msghdr structure before use
|
||
|
||
The msghdr structure is used as a parameter to the Linux kernel
|
||
functions kernel_sendmsg() and kernel_recvmsg(). Some required fields
|
||
need to be set prior to calling these functions, but there are also
|
||
additional structure members that may not be used by the calling code.
|
||
Some of these fields may be initialized by the Linux kernel functions
|
||
being used, but there may be some that are left uninitialized.
|
||
|
||
To ensure that all fields in the msghdr structure are cleared, use
|
||
memset to zero the entire structure. This will eliminate the need to set
|
||
individual fields to 0 or NULL.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15409
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 795ef90d4041f1a5a1139435cc70f96457e0f64b)
|
||
|
||
Change-Id: Id037e2e548c27b23e2746f804ddcaf7b79d905c4
|
||
Reviewed-on: https://gerrit.openafs.org/15411
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 12ce31ce1dbd86dff47a036b36ce6ad506bd7b75
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Tue Apr 25 10:37:01 2023 -0600
|
||
|
||
Linux: Do not initialize msghdr's msg_iter/msg_iov
|
||
|
||
Since the initial Linux commit (2.6.12-rc2) the Linux function
|
||
kernel_recvmsg() handles the initialization of the msghdr members
|
||
related to the iov (msghdr.msg_iter and for earlier kernels
|
||
msghdr.msg_iov and msghdr.msg_iovlen).
|
||
|
||
The code in osi_NetReceive for Linux unnecessarily initializes these
|
||
structure members prior to calling kernel_recvmsg().
|
||
|
||
Remove the unnecessary code from osi_NetReceive along with the
|
||
surrounding preprocessor check for STRUCT_MSGHDR_HAS_MSG_ITER. Since
|
||
this is the only location that uses this define, also remove the
|
||
associated autoconf test.
|
||
|
||
NOTE: This was discovered while investigating changes needed for
|
||
Linux 6.4, due to: "iov_iter: add iter_iovec() helper" (de4f5fed3f)
|
||
which renamed the Linux structure iter_iovec's member iov to __iov.
|
||
Since the openafs code that was affected by the Linux 6.4 change is
|
||
being removed as unnecessary, this commit is not Linux 6.4 specific,
|
||
but effects all versions of Linux.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15408
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 5a7630acfd8bfd462b633475a6e195d9dbdfb451)
|
||
|
||
Change-Id: I3a803f76ab84f1e055e91cf4f2be96440f141746
|
||
Reviewed-on: https://gerrit.openafs.org/15410
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 0967702c3f71c5d61e33f905c3272d029303743e
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Thu Jul 15 19:59:47 2021 -0500
|
||
|
||
AIX: Fix undefined symbols
|
||
|
||
Various pieces of our code try to use symbols in our internal
|
||
libraries that are not exported in the respective .sym file. On AIX,
|
||
this causes the following build failures:
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .ubik_CallRock
|
||
ld: 0711-317 ERROR: Undefined symbol: DISK_function_names
|
||
ld: 0711-317 ERROR: Undefined symbol: VOTE_function_names
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[4]: *** [Makefile:45: afscp] Error 8
|
||
make[4]: Leaving directory '/.../src/libadmin/test'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: PR_function_names
|
||
ld: 0711-317 ERROR: Undefined symbol: KAA_function_names
|
||
ld: 0711-317 ERROR: Undefined symbol: KAT_function_names
|
||
ld: 0711-317 ERROR: Undefined symbol: KAM_function_names
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[4]: *** [Makefile:117: rxstat_get_peer] Error 8
|
||
make[4]: Leaving directory '/.../src/libadmin/samples'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .osi_audit_cmd_Options
|
||
ld: 0711-317 ERROR: Undefined symbol: .osi_audit_open
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_SuperIdentity
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[3]: *** [Makefile:71: butc] Error 8
|
||
make[3]: Leaving directory '/.../src/tbutc'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .pr_Initialize2
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[3]: *** [Makefile:111: pts] Error 8
|
||
make[3]: Leaving directory '/.../src/tptserver'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .AFSVolListPartitions
|
||
ld: 0711-317 ERROR: Undefined symbol: .AFSVolXListPartitions
|
||
ld: 0711-317 ERROR: Undefined symbol: .RXAFS_GetStatistics64
|
||
ld: 0711-317 ERROR: Undefined symbol: .AFSVolPartitionInfo64
|
||
ld: 0711-317 ERROR: Undefined symbol: .AFSVolPartitionInfo
|
||
ld: 0711-317 ERROR: Undefined symbol: .RXAFS_GetStatistics
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[3]: *** [Makefile:65: fsprobe_test] Error 8
|
||
make[3]: Leaving directory '/.../src/fsprobe'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: fsprobe_Results
|
||
ld: 0711-317 ERROR: Undefined symbol: gtxframe_exitValue
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[3]: *** [Makefile:45: scout] Error 8
|
||
make[3]: Leaving directory '/.../src/scout'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_toString
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_freeString
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[3]: *** [Makefile:50: check_sysid] Error 8
|
||
make[3]: Leaving directory '/.../src/viced'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .GetLogLevel
|
||
make[3]: *** [Makefile:130: fileserver] Error 8
|
||
make[3]: Leaving directory '/.../src/viced'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .GetLogDest
|
||
ld: 0711-317 ERROR: Undefined symbol: .GetLogFilename
|
||
ld: 0711-317 ERROR: Undefined symbol: .CloseLog
|
||
make[3]: *** [Makefile:166: salvageserver] Error 8
|
||
make[3]: Leaving directory '/.../src/tsalvaged'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .rxkad_StringToLevel
|
||
ld: 0711-317 ERROR: Undefined symbol: .FilepathNormalize
|
||
ld: 0711-317 ERROR: Undefined symbol: .ConstructLocalPath
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[3]: *** [Makefile:32: upserver] Error 8
|
||
make[3]: Leaving directory '/.../src/update'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: xstat_fs_Results
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[3]: *** [Makefile:77: xstat_fs_test] Error 8
|
||
make[3]: Leaving directory '/.../src/xstat'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_DeleteKeyBySubType
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_DeleteKeyByType
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[3]: *** [Makefile:35: asetkey] Error 8
|
||
make[3]: Leaving directory '/.../src/aklog'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_FindService
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_AddKey
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetLatestKeyByTypes
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[4]: *** [Makefile:19: authcon-t] Error 8
|
||
make[4]: Leaving directory '/.../tests/auth'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_AddUser
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_IsSuperIdentity
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_AddIdentity
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetNthUser
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetNthIdentity
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_DeleteUser
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_DeleteIdentity
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[4]: *** [Makefile:25: superuser-t] Error 8
|
||
make[4]: Leaving directory '/.../tests/auth'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetKeys
|
||
ld: 0711-317 ERROR: Undefined symbol: .rx_opaque_new
|
||
ld: 0711-317 ERROR: Undefined symbol: .rx_opaque_free
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetKeyByTypes
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetKeysByType
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_PutTypedKeyList
|
||
ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetLatestKeysByType
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[4]: *** [Makefile:31: keys-t] Error 8
|
||
make[4]: Leaving directory '/.../tests/auth'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: ._afsconf_Touch
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[1]: *** [Makefile:34: realms-t] Error 8
|
||
make[1]: Leaving directory '/.../tests/auth'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_cache_get
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_cache_put
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_cache_init
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_cache_free
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[1]: *** [Makefile:16: cache-t] Error 8
|
||
make[1]: Leaving directory '/.../tests/opr'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_isNil
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_equal
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_hash
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_fromString
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_create
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_unpack
|
||
ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_pack
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[1]: *** [Makefile:37: uuid-t] Error 8
|
||
make[1]: Leaving directory '/.../tests/opr'
|
||
|
||
ld: 0711-317 ERROR: Undefined symbol: .rxevent_Init
|
||
ld: 0711-317 ERROR: Undefined symbol: .rxevent_Post
|
||
ld: 0711-317 ERROR: Undefined symbol: .rxevent_Cancel
|
||
ld: 0711-317 ERROR: Undefined symbol: .rxevent_RaiseEvents
|
||
ld: 0711-317 ERROR: Undefined symbol: .rxevent_Put
|
||
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
|
||
make[1]: *** [Makefile:18: event-t] Error 8
|
||
make[1]: Leaving directory '/.../tests/rx'
|
||
|
||
To fix these, export the relevant symbols from the library's .sym
|
||
file.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14707
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 9656a6b92b86849aa964529947bacb5aea4d83eb)
|
||
|
||
Backport notes:
|
||
|
||
The following symbols are not present in the 1.8.x branch at this time,
|
||
so removed from this backported patch:
|
||
|
||
* afsconf_GetLatestRXGKKey
|
||
* opr_cache_free
|
||
* opr_cache_get
|
||
* opr_cache_init
|
||
* opr_cache_put
|
||
* osi_audit_close
|
||
* osi_audit_cmd_Options
|
||
* osi_audit_open
|
||
* pr_Initialize2
|
||
* ubik_CallRock
|
||
|
||
The following symbol files are not present in the 1.8.x branch at this
|
||
time, so were removed from this backported patch:
|
||
|
||
* src/fsprobe/liboafs_fsprobe.la.sym
|
||
* src/gtx/liboafs_gtx.la.sym
|
||
* src/xstat/liboafs_xstat_fs.la.sym
|
||
|
||
Change-Id: Idd7059fe9e372d9131fa575412b391f03cb24bb3
|
||
Reviewed-on: https://gerrit.openafs.org/15403
|
||
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 5e282943ff00fbd5c9ba3056c25959794f8a1144
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Fri Apr 7 14:10:58 2023 -0500
|
||
|
||
LINUX: Introduce afs_d_alias_foreach
|
||
|
||
We have a couple of places in the code that iterate over the dentry
|
||
aliases of an inode, and each of these involves a small #ifdef ladder
|
||
to handle slightly different ways of traversing the relevant list.
|
||
Split this logic into its own compatibility macro,
|
||
afs_d_alias_foreach[_reverse], to contain this ugliness in
|
||
osi_compat.h and make the callers more readable.
|
||
|
||
This commit should incur no functional change; it is just code
|
||
reorganization.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15390
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 5aaed53f07fae0856e6da9defc408960e72364a7)
|
||
|
||
Change-Id: I107c01917512da6c1043880cb93754be37919c47
|
||
Reviewed-on: https://gerrit.openafs.org/15401
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 7f9445bbeb72bcb8257ba0e0608746e31efae40e
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Mon Jul 15 16:24:10 2019 -0500
|
||
|
||
afs: Fix a few ARCH/osi_vcache.c style errors
|
||
|
||
Most of the ARCH/osi_vcache.c implementations were defining functions
|
||
like:
|
||
|
||
void
|
||
osi_foo(args) {
|
||
/* impl */
|
||
}
|
||
|
||
But our prevailing style is:
|
||
|
||
void
|
||
osi_foo(args)
|
||
{
|
||
/* impl */
|
||
}
|
||
|
||
Fix them to follow our prevailing style, and fix a couple of the more
|
||
obvious errors with identation and goto label.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/13699
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit ee7019a7630d01f29fecebd89ca69ad8a37e24e2)
|
||
|
||
Change-Id: I2a34a0d8fd7b6c3721ede0c40c212c3993402235
|
||
Reviewed-on: https://gerrit.openafs.org/15400
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit f6fbb85c00411bf97e9855be73baf49bd6b061d7
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Wed Mar 29 12:11:38 2023 -0600
|
||
|
||
Linux 6.3: Use mnt_idmap for inode op functions
|
||
|
||
Through a series of Linux 6.3 commits starting with:
|
||
'f2fs: project ids aren't idmapped' (64b4cdf22f) and ending with
|
||
'fs: move mnt_idmap' (3707d84c13)
|
||
the inode operations functions were changed to take a mnt_idmap
|
||
structure instead of a user_namespace structure. These were pulled in
|
||
via the the merge commit:
|
||
'Pull vfs idmapping updates from Christian Brauner' (05e6295f7b)
|
||
The commit message for the merge contains background and overall
|
||
information for this conversion.
|
||
|
||
The above change simply changes the functions to use a different
|
||
structure (mnt_idmap instead of user_namespace). For afs, it is a
|
||
simple change to swap the structures. But for some of the Linux calls
|
||
(generic_fillattr(), setattr_prepare(), and inode_op->setattr()) we
|
||
would like to use the Linux symbol nop_mnt_idmap, but that symbol is
|
||
exported as GPL only. Instead, we will obtain its address from the
|
||
current task structure at libafs initialization (much the same way as
|
||
obtaining current user namespace for afs_ns).
|
||
|
||
Add autoconf tests to determine if inode_operations.create() uses the
|
||
mnt_idmap structure. If so set a generic configure define for
|
||
"IOP_TAKES_MNT_IDMAP".
|
||
|
||
Update afs's inode operations functions to take and use a mnt_idmap
|
||
instead of a user_namespace.
|
||
|
||
At libafs initialization, obtain the mnt_idmap from the current task
|
||
and save it as an afs global variable, afs_mnt_idmap, to be used where
|
||
needed.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15347
|
||
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>
|
||
(cherry picked from commit 858ee34545e57acab1e4e5813cd1b9a011538b9e)
|
||
|
||
Change-Id: If89c6f401db04826ef45de83b91240f106cca616
|
||
Reviewed-on: https://gerrit.openafs.org/15389
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Kailas Zadbuke <kailashsz@in.ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 7a3ad3bc1c87e525698f7dda1e4b0fbbd913da03
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Wed Mar 22 16:56:09 2023 -0600
|
||
|
||
Linux 6.3: Include linux/filelock.h if available
|
||
|
||
Linux 6.3 commit
|
||
'filelock: move file locking definitions to separate header file'
|
||
(5970e15dbc)
|
||
|
||
relocated file lock related declarations from 'linux/fs.h' into its own
|
||
header file, 'linux/filelock.h'.
|
||
|
||
Add autoconf tests to check for the header file 'linux/filelock.h' and
|
||
update function checks for locks_lock_file_wait() and posix_lock_file().
|
||
|
||
Update osi_compat.h to include linux/filelock.h if it is available.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15346
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
(cherry picked from commit 6873dc925c5acc0ce7d65cf778ffee09c82a9898)
|
||
|
||
Change-Id: If131bee5b466a119f54b05388a065e6af23698cf
|
||
Reviewed-on: https://gerrit.openafs.org/15388
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Kailas Zadbuke <kailashsz@in.ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 30cf5d8f934afdaa5a2a28b2e5fac8adde70808b
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Tue Jan 31 11:28:49 2023 -0600
|
||
|
||
AIX: Avoid including net/netisr.h on AIX 7.2 and above
|
||
|
||
On AIX 7.2 and higher, /usr/include/net/netisr.h includes a header
|
||
<sys/libsysp.h>. This is an internal kernel library header that IBM
|
||
does not ship. The include of sys/libsysp.h is new in AIX 7.2. The
|
||
only information we need from net/netisr.h are the definitions for
|
||
NETISR_MAX and NET_KPROC. Using the macro AFS_AIX72_ENV, defined in
|
||
src/config/param.rs_aix72.h and param.rs_aix73.h, we can just
|
||
provide these definitions directly and avoid the include of
|
||
net/netisr.h. As part of this update we also add the macro
|
||
AFS_AIX72_ENV to src/config/param.rs_aix72.h as it was missing there
|
||
but is required for the edit to src/rx/AIX/rx_knet.c to work. On
|
||
earlier versions of AIX, we will continue to include net/netisr.h. A
|
||
case has been opened with IBM and they acknowledge the problem and
|
||
are working on a solution. However, we still need to be able to deal
|
||
with the situation as shipped from IBM. A future AIX 7.4 will likely
|
||
be able to include net/netisr.h again.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15312
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit ca67e8c84891200398e577d76c0125966d22b01e)
|
||
|
||
Change-Id: Icc3e241e09876a4e9ed3e779c1ba904e0762f92c
|
||
Reviewed-on: https://gerrit.openafs.org/15386
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit e83ce49c2dfff64b87a265a4250957a2e62c94d2
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Mon Jan 30 19:11:32 2023 -0600
|
||
|
||
comerr: Update rule for compile_et
|
||
|
||
Update the build rule for compile_et under new platform rs_aix73.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15311
|
||
Reviewed-by: Cheyenne Wills <cwills@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 b713b62b3358482a818436a54975596188cb002b)
|
||
|
||
Change-Id: I726cf21a2c70305c24c3f43f2504e70a98536aa7
|
||
Reviewed-on: https://gerrit.openafs.org/15385
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 9b94108664330ac4b95a026a8be6c1e260c507fc
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Mon Jan 30 19:08:20 2023 -0600
|
||
|
||
configure: Add platform rs_aix73
|
||
|
||
Enable the configure script to detect and configure AIX 7.3.
|
||
Update INSTALL to reflect new platform.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15310
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit d03723e87a16e19a34950ca84a6139095a0694f9)
|
||
|
||
Change-Id: I6727512ee343b3ee4cbb03c1e6242a69f407b987
|
||
Reviewed-on: https://gerrit.openafs.org/15384
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit c962d1b91141daceb66c58b30f2acef9e22f36c0
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Thu Aug 25 11:58:31 2022 -0700
|
||
|
||
INSTALL: Update INSTALL to reflect AIX platforms
|
||
|
||
Update the INSTALL file to reflect the current rs_aix platforms
|
||
that we can build for.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15142
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 4580f213b3a25dd57e6fd721f7ecc0ecad84fb07)
|
||
|
||
Change-Id: I3e0d62258e57ff6a54fae2e49a427c764e03a9ae
|
||
Reviewed-on: https://gerrit.openafs.org/15383
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit cff8ef661ba272027e44a0b21d77c3cc4e69b0ef
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Thu Aug 25 14:53:00 2022 -0700
|
||
|
||
AIX: Fix issue with make install on AIX 7.1 and higher
|
||
|
||
Added rules to src/export/Makefile.in for the install target
|
||
under AIX 7.1 and higher.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15146
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit f4fc18b80e81f10b17729ef06cca6a9548d36130)
|
||
|
||
Change-Id: I0fcc1429111eaafa489adec330b5eb900022293e
|
||
Reviewed-on: https://gerrit.openafs.org/15382
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit c6a391f6212860e381373f3c915885ff92a755cf
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Thu Aug 25 12:00:51 2022 -0700
|
||
|
||
configure: Add platform rs_aix71
|
||
|
||
Enable the configure script to detect and configure AIX 7.1.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15143
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 1aeac365712f09ac90fe251c90b889548e25ac89)
|
||
|
||
Change-Id: I469d94701d3554e74cfdc78686a83e7333210ad4
|
||
Reviewed-on: https://gerrit.openafs.org/15381
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 3a88fb9a73b612473090c505a67d3bd4d707f4ba
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Thu Aug 25 14:23:51 2022 -0700
|
||
|
||
libafs: Add support for AIX 7.1, 7.2
|
||
|
||
src/libafs/MakefileProto.AIX.in contains rules for various versions of
|
||
AIX, but did not have any case for AIX 7.1 or 7.2 This causes build
|
||
failures on those platforms. Added in the missing entries for rs_aix71
|
||
and rs_aix72.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15145
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 0c43fe64dd885aed1ec1be4a2419e6396e583ec5)
|
||
|
||
Change-Id: I68315c09eb3d6b2e30ea759d4f9bf5726a98e5d7
|
||
Reviewed-on: https://gerrit.openafs.org/15380
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit b6696e67bc7a85d892531a5e7c3a0f03998ba64b
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Thu Aug 25 13:15:11 2022 -0700
|
||
|
||
AIX: Correctly create export64.exp on AIX 7.1+
|
||
|
||
Create the export64.exp file on AIX 7 and higher.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15144
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit ba3e1410d5df4454dc4dc63e1404a261977b0f60)
|
||
|
||
Change-Id: I7ec71522f8e35ede3532e3b1d77623ef25510561
|
||
Reviewed-on: https://gerrit.openafs.org/15379
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 927f906f3d0cfdbe6f38608a56f9f92700806f1e
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Tue Aug 23 13:15:46 2022 -0700
|
||
|
||
afs: Use strlcat instead of snprintf to enable AIX build
|
||
|
||
The original code used strcpy(), etc. Some compilers have begun
|
||
to raise warnings that the use of these functions is unsafe, and
|
||
in the case of newer Linux kernels in particular, have caused the
|
||
build to fail outright. To adapt to these compilers/kernels, the
|
||
code was changed to leverage strlcpy(), snprintf(), etc. as they
|
||
are safer. AIX does not provide these functions within the
|
||
kernel. For some of the functions such as strlcpy(), etc. we
|
||
can use replacement functions from libroken within the AIX kernel
|
||
extension. However, libroken does not offer a suitable
|
||
replacement for snprintf(), and instead the same purpose can be
|
||
accomplished by using strlcpy() and multiple calls to strlcat().
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15122
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 54dbd474a5bd43cf62a226802593b062069509ce)
|
||
|
||
Change-Id: Ie59450a91fcb374b1362f0bd88a93f258597a22d
|
||
Reviewed-on: https://gerrit.openafs.org/15378
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 2826b3271aea8608fec44174d8b7e1ea7e805d99
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Fri Aug 19 08:34:33 2022 -0700
|
||
|
||
BUILD: Ensure that make clean actually cleans all products
|
||
|
||
After a build, running make clean leaves the following objects:
|
||
|
||
src/dir/test/dtest.o
|
||
src/libuafs/libuafs.a
|
||
src/libuafs/*.o
|
||
src/roken/*.o
|
||
|
||
Add a few rules to the various Makefiles to ensure that we clean
|
||
up those files as well.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15119
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit ad2b880c3791046883f8c0ef15f327c85e013b5b)
|
||
|
||
Change-Id: Iaef185ec0e045ded8453f6b276e6b6b9075b3388
|
||
Reviewed-on: https://gerrit.openafs.org/15377
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 9d2bfcab35eac3dc0040be10681269daba30f866
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Sat Aug 13 11:40:44 2022 -0700
|
||
|
||
afs: Fix missing def for pinned_heap on AIX
|
||
|
||
Include sys/malloc.h in AIX's osi_sleep.c. This resolves a build
|
||
failure in which pinned_heap is not defined.
|
||
|
||
The commit below introduced code to resolve an issue on AIX 5.3:
|
||
|
||
5e5bfa6b9401ebc1fa5446e208cf46c15943c411
|
||
Author: Tom Keiser <tkeiser@sinenomine.net>
|
||
Date: Mon Jun 25 21:22:49 2007 +0000
|
||
|
||
aix53-avoid-wait-crash-20070625
|
||
|
||
newp = (afs_event_t *) xmalloc(sizeof(afs_event_t), 5, pinned_heap);
|
||
|
||
pinned_heap has always been defined in sys/malloc.h since at least
|
||
AIX 4.1. It is likely that the aix53-avoid-wait-crash-20070625
|
||
commit did not compile, or that sys/malloc.h was included
|
||
elsewhere at the time.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15108
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Jeffrey Altman <jaltman@auristor.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 615681710a38bd1a92f2c476df9fdab7ac1d9bdd)
|
||
|
||
Change-Id: I3fcfc1c7e3e26e927d0a8e2a233c4c12b0781308
|
||
Reviewed-on: https://gerrit.openafs.org/15376
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit d00e6d6fb5ec4cf2520ae2c71f38091d950ec785
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Mon Aug 15 10:44:14 2022 -0700
|
||
|
||
AIX: Fix install of 64-bit kernel module
|
||
|
||
Remove make step in error. This was preventing the install of the
|
||
built kernel module on AIX when not using Transarc-style paths via
|
||
the make install step.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15114
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 319d361499af933451425acaeabac9bc6548c96b)
|
||
|
||
Change-Id: I252de19363824ae23187b7b9da878137814ab09d
|
||
Reviewed-on: https://gerrit.openafs.org/15375
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 99ea3deeb5b082bdcbd14c41b6a2c11a900bccb4
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Mon Aug 15 10:00:07 2022 -0700
|
||
|
||
util: Add missing symbol for AIX build
|
||
|
||
Added symbol afs_exec_alt to liboafs_util.la.sym. This resolves a
|
||
build failure on AIX.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15113
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit c0968b6c69c3f16468a7fe4a234d8421731e20e0)
|
||
|
||
Change-Id: I060b7b102c963a517d79bad41b5e4c827cbccad8
|
||
Reviewed-on: https://gerrit.openafs.org/15374
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 0d845973f05ef70991f0ee8007fb1a2dfdea3ea1
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Sat Aug 13 23:25:10 2022 -0700
|
||
|
||
fsint: export symbol needed by fileserver
|
||
|
||
The symbol RXAFS_OpCodeIndex is consumed by the fileserver via the various
|
||
"opcode_<RPC Name>" macros produced by rxgen. The functionality is provided
|
||
by liboafs_fsint but RXAFS_OpCodeIndex was omitted from the export symbol list.
|
||
This went undetected because we use static linking for the fileserver, and
|
||
libtool does not enforce export symbol lists while static linking, on platforms
|
||
other than AIX. Recent efforts to revive the AIX build illuminated the error,
|
||
which we resolve by adding RXAFS_OpCodeIndex to the export list.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15112
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 91532e3142751468aa8f7bbabe7de087b77259bf)
|
||
|
||
Change-Id: Ia665937002137dca1a8ec4573b4fe8932fc90dd0
|
||
Reviewed-on: https://gerrit.openafs.org/15373
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit c0cfe72f072ad27c7958b110678134adad7cebbd
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Sat Aug 13 11:47:07 2022 -0700
|
||
|
||
export: Ignore additional build products generated on AIX
|
||
|
||
Update .gitignore to ignore additional build products generated on AIX.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15110
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 448d2b1184e872f977a662c3f48af04029f9a112)
|
||
|
||
Change-Id: Iff910b63174c9b046e031285dd30672b0f592c1a
|
||
Reviewed-on: https://gerrit.openafs.org/15372
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit b768ba5f1fa15763177cad3ed35e1da5316e7f14
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Mon Aug 15 14:45:12 2022 -0700
|
||
|
||
export: Install kernel utilities with execute permissions on AIX
|
||
|
||
Make sure that cfgexport and cfgafs are installed with execute
|
||
permissions. These executables load the AIX kernel modules into
|
||
the running kernel and are called by the rc.afs script.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15116
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 1a4da8868fd32e928def64599bb6ec9d6b455423)
|
||
|
||
Change-Id: I575d89164ef386d1cdf562b2206b502b3c2e8582
|
||
Reviewed-on: https://gerrit.openafs.org/15371
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit f3cdd139d83fc74f89d16ab6f685ec25ea40edf4
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Sat Aug 13 11:40:18 2022 -0700
|
||
|
||
afs: Fix missing def for timestruc_t on AIX
|
||
|
||
Include sys/time.h in AIX's osi_machdep.h. This resolves a build
|
||
issue where the struct timestruc_t was not defined.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15107
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit b5b34278b26ca22eea988fb18d738969dd608ede)
|
||
|
||
Change-Id: Icb91b47d819f1bcc0e277a482f2a22d87dc8bc6c
|
||
Reviewed-on: https://gerrit.openafs.org/15370
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 75578909c5071d45eb2a5989917a3e4a9234aace
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Fri Jul 16 14:02:07 2021 -0500
|
||
|
||
tsm41: Fix libs for AIX 7.2
|
||
|
||
AIX 7.2 doesn't seem to have libcsys, netinet.exp, sockets.exp, or
|
||
statcmd.exp available. To allow for our IMPORTS and LDFLAGS to change
|
||
depending on the AIX version, introduce the autoconf vars TSM_IMPORTS
|
||
and TSM_LIBS, which do not contain the missing libs on AIX 7.2, so we
|
||
can build on AIX 7.2.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14703
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit a912db315b4f29673808a7f900eb038ebd7b89c2)
|
||
|
||
Change-Id: Ic106b893f212b33c85bded8443bcb782205f290c
|
||
Reviewed-on: https://gerrit.openafs.org/15369
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 567c987992b2e027668186e75017423e5637308b
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Thu Jul 15 17:53:43 2021 -0500
|
||
|
||
AIX: Add buildsystem support for AIX 7.2
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14701
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 7acd66ae39db2049c8f80f4fceb4fcd15fe8e8b8)
|
||
|
||
Change-Id: I94e74b56379fe1103d966883835b8af8a0d98f7e
|
||
Reviewed-on: https://gerrit.openafs.org/15368
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit c8a92c4a7e1badfaf81517303440cd9ac7a55dd0
|
||
Author: Michael Meffie <mmeffie@sinenomine.net>
|
||
Date: Thu Mar 15 18:53:59 2018 -0400
|
||
|
||
roken: do not clobber __attribute__
|
||
|
||
The roken-common.h header defines an empty macro called __attribute__
|
||
when HAVE___ATTRIBUTE__ is not defined. This macro conditionally removes
|
||
the `format' function attributes in the roken headers at compile time.
|
||
Unfortunately, the empty __attribute__ macro will also clobber other
|
||
attribute types encountered after the roken.h header inclusion.
|
||
|
||
This is not an issue when building under gcc or clang, since the empty
|
||
attribute macro will not be defined. However Solaris Studio supports a
|
||
subset of the function attribute types, with `format' not currently
|
||
supported. This means roken will define an empty __attribute__ macro,
|
||
which prevents the use of other attribute types.
|
||
|
||
This commit does not change the roken files directly because they are
|
||
external. Instead, the processing of the roken.h.in file has been
|
||
updated to undefine the __attribute__ macro at the end of the generated
|
||
roken.h header.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/12961
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 388eaec3452ed4b18a95ee34efcbe4cf64814701)
|
||
|
||
Change-Id: Id93ec414a59a2f5866e503601b7e42bbb4f8d66a
|
||
Reviewed-on: https://gerrit.openafs.org/15367
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ben Huntsman <ben@huntsmans.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit c08c7ba8fbf37018176ee87b980650dd34124678
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Fri Feb 24 13:05:29 2023 -0700
|
||
|
||
rx: Revert RXS_DestroyConnection()'s return type
|
||
|
||
Commit 'rx: Do not ignore RXS_* op errors' (635594d6c) changed the
|
||
rx_securityOps.op_DestoryConnection()'s signature to a void return.
|
||
This is a change to a public interface.
|
||
|
||
To maintain backward compatibility within openafs 1.8.x, restore
|
||
op_DestoryConnection's signature back to returning an 'int', and revert
|
||
the changes to rxkad_DestroyConnection() so it returns an int value.
|
||
Since returning an error value from this function doesn't make sense,
|
||
as noted by commit '635594d6c', always return a 0 value.
|
||
|
||
This is a 1.8.x specific commit
|
||
|
||
Change-Id: I9685ac884a10298ae8faad012717499874f25316
|
||
Reviewed-on: https://gerrit.openafs.org/15334
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 1da00dfa9446c4c881e8659ec48a5e00262828ca
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Mon Apr 12 18:21:23 2021 -0500
|
||
|
||
afs: Assert avc->lock is held in afs_IAS_once
|
||
|
||
Commit 3be5880d (afs: Avoid panics in afs_InvalidateAllSegments) added
|
||
an assert to check that vcache->lock is write-locked before we call
|
||
afs_InvalidateAllSegments_once from a background operation.
|
||
|
||
However, afs_InvalidateAllSegments_once should always be called with
|
||
vcache->lock write-locked; there's nothing specific about the
|
||
backgrounded call that requires this. So to make sure we catch all
|
||
cases, move this assert to afs_InvalidateAllSegments_once itself.
|
||
|
||
Also remove the conditional check for WriteLocked(&avc->lock) in here,
|
||
since clearly avc->lock must be write-locked (and actually is, since
|
||
change Ic309e4006bf47bcb38fa2b53bf103e0c645a856d "afs: write-lock
|
||
vcache->lock in afs_InactiveVCache").
|
||
|
||
Add some comments to this function while we're here, to more clearly
|
||
indicate what locks are needed.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14592
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 72223e0958c2d7cddd968970547dd73fc3cc1351)
|
||
|
||
Change-Id: I9acf5599a8ef1e724a00cf362695fe34ca87c0bf
|
||
Reviewed-on: https://gerrit.openafs.org/15331
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 002c5a0c758aeb023c0fb2caa2247e8574fff1aa
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Mon Feb 10 15:57:43 2014 -0600
|
||
|
||
Move key-related warnings to common server code
|
||
|
||
Each server process can log a couple of different warnings about the
|
||
server keys found on disk:
|
||
|
||
- If afsconf_GetLatestKey() returns success (indicating a single-DES
|
||
key is present), we call LogDesWarning().
|
||
|
||
- If afsconf_CountKeys() returns 0 (indicating there are no keys at
|
||
all on disk), we log a warning that all authenticated access will
|
||
fail.
|
||
|
||
Currently, the code to do these checks and log the relevant warning is
|
||
duplicated across the startup code for nearly every server process. To
|
||
avoid this duplication, and to make sure the checks aren't
|
||
accidentally skipped for anyone, move these checks to
|
||
afsconf_BuildServerSecurityObjects, which every server process calls.
|
||
|
||
We must add an additional parameter to
|
||
afsconf_BuildServerSecurityObjects to handle the different logging
|
||
mechanism these servers use, but afsconf_BuildServerSecurityObjects is
|
||
declared in a public header (cellconfig.h), and is exported in a
|
||
public library (libafsauthent). So to avoid changing a public symbol,
|
||
introduce a new variant of the function, called
|
||
afsconf_BuildServerSecurityObjects_int. Declare this in a new internal
|
||
header, authcon.h.
|
||
|
||
We don't have easily-usable logging functions for upserver and butc,
|
||
so just don't log the warnings for those. For ubik servers, don't
|
||
update ubik_SetServerSecurityProcs to use the new function; the
|
||
initial call to afsconf_BuildServerSecurityObjects_int in the server's
|
||
startup code will cover logging the warning on startup.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/10831
|
||
Tested-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 2630e70550defc664efa0952589cf82ed3c51796)
|
||
|
||
Change-Id: Ib37b92cfccbf161d72d2db73eeaea6fd8b312961
|
||
Reviewed-on: https://gerrit.openafs.org/15316
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
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 363a3050610ec66483c71c8052ba40337fead942
|
||
Author: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Date: Thu Jan 26 19:30:04 2023 +0100
|
||
|
||
CellServDB update 09 May 2022
|
||
|
||
Update all three copies in the tree, and the rpm specfile.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15305
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 1b92c766f1cf52b3bae3a00e08d40a2334bf9f24)
|
||
|
||
Change-Id: I26fb3ff045d41b840fc6565d1a17aca8e75fcd30
|
||
Reviewed-on: https://gerrit.openafs.org/15323
|
||
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 4a0f5562915b1058de15ec46649c09cdbddce269
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Wed Jul 7 11:08:10 2021 -0600
|
||
|
||
Remove kdump
|
||
|
||
Remove the obsolete kdump debugging tool from the tree. Remove and
|
||
clean up the preprocessor tests associated with KDUMP, KDUMP_RX_LOCK and
|
||
KDUMP_KERNEL. Clean up the autoconf and Makefiles to remove kdump and
|
||
the associated autoconf and Makefile vars XLIBELFA and XLIBKVM.
|
||
|
||
The kdump utility has not been well maintained; for some platforms it
|
||
fails to build (e.g. Solaris 11). For Linux, the makefile does not
|
||
even try to compile the kdump source but instead creates the kdump file
|
||
via touch.
|
||
|
||
The intended functionality of kdump has been replaced by various kernel
|
||
debugging tools, such as dtrace or systemtap.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14623
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 489cfb587a87ab53817ad0b4eccd65d9f7b332e2)
|
||
|
||
Change-Id: Idf9582fd65482f32e7f13af0bf734c2b970da757
|
||
Reviewed-on: https://gerrit.openafs.org/15315
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Tested-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 4e4ffde5d0a17e48f82c4b67e921a8881ffc4fe5
|
||
Author: Andrew Deason <adeason@dson.org>
|
||
Date: Mon May 25 16:48:34 2020 -0500
|
||
|
||
IRIX: Remove pre-65 code
|
||
|
||
Commit d1923139 (irix kill efs and start pruning pre-65) removed all
|
||
files that defined AFS_SGI64_ENV and earlier, but didn't remove that
|
||
code that depended on those defines. In addition, there has been code
|
||
in the tree that checks for AFS_SGI53_ENV since OpenAFS 1.0, but
|
||
nothing has ever defined Irix 5.3 support in OpenAFS.
|
||
|
||
Remove all of this obsolete code. Change all references to
|
||
AFS_SGIXX_ENV to AFS_SGI_ENV, and assume AFS_SGI_ENV is defined in all
|
||
IRIX dirs. Consolidate some of the resulting ifdef logic
|
||
appropriately.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14230
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit e0c288416df59a117cd818ada930fd1259955983)
|
||
|
||
Change-Id: Ie188b9f108bf55cfae7fcb358a1de21bad076f11
|
||
Reviewed-on: https://gerrit.openafs.org/15314
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 85df2442240c9384822e6658e9aad4f83c19d6e3
|
||
Author: Mark Vitale <mvitale@sinenomine.net>
|
||
Date: Tue Mar 9 23:12:50 2021 -0500
|
||
|
||
DARWIN: correct size of fstrace ICL_TYPE_LONG and ICL_TYPE_POINTER
|
||
|
||
Commit 248da50aa56f19bdc8b2b322f5e17b3d2a363dce 'icl 64 bit platform
|
||
rationalization' introduced support for 64-bit ICL_TYPE_POINTER and
|
||
ICL_TYPE_LONG for fstrace running on DARWIN kernels. However, it
|
||
neglected to make the matching change in the fstrace utility itself,
|
||
which reads and reports these trace entries. The result is that all
|
||
fstrace records which contain 64-bit pointers or longs are misreported
|
||
as 32-bit values. Furthermore, any subsequent values in the same
|
||
fstrace record are also misreported because the offsets are now
|
||
incorrect.
|
||
|
||
Move the definition of ICL_LONG from afs_icl.c to icl.h so fstrace.c may
|
||
share the ICL_LONG logic and value.
|
||
|
||
Modify fstrace to use logic similar to the recording logic in afs_icl.c
|
||
so that the correct size and offsets are maintained while decoding the
|
||
contents of each fstrace record.
|
||
|
||
We can use the build-time value of ICL_LONG (rather than the runtime
|
||
value of afs_sizeofLong) because the difference only matters for SGI62
|
||
32-bit kernels. It is unknown whether the existing code works correctly
|
||
for SGI62 32-bit mode, but this commit should not affect that support
|
||
either way.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14558
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit adf08b464efa8c29256dc7b261b10b60cc31119d)
|
||
|
||
Change-Id: Ie3ef988d209a984839751051d7bd9a62369b5b11
|
||
Reviewed-on: https://gerrit.openafs.org/15313
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 37d01094b929a6bb745aeb00a3f5a40fd8fe5822
|
||
Author: Ben Huntsman <ben@huntsmans.net>
|
||
Date: Wed Aug 17 17:19:55 2022 -0700
|
||
|
||
rx: Only use printf in the AIX kernel
|
||
|
||
An earlier version of the OpenAFS code used an unusual preprocessor
|
||
macro for the function osi_Msg and osi_VMsg. This causes problems
|
||
on newer Linux kernels. The macro was replaced with a function
|
||
leveraging vprintf, etc. These functions are not available in the
|
||
AIX kernel, where our only option is printf. However, AIX does
|
||
provide these functions in libc. This change ensures we only use
|
||
printf when building the AIX kernel module.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15118
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 8b1beaffb40c93ddab50c75b37f3de5ae517a849)
|
||
|
||
Change-Id: Id06478cbc87b6965c021f26902e13bdfc2ef83d5
|
||
Reviewed-on: https://gerrit.openafs.org/15309
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 7c3c93db2977765a8b82426f0524b380f896b82f
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Tue Jan 14 10:51:42 2020 -0600
|
||
|
||
afs: Properly type afs_osi_suser cred arg
|
||
|
||
Currently, afs_osi_suser is declared with a void* argument, even
|
||
though its only argument is always effectively a afs_ucred_t*. This
|
||
allows us to call afs_osi_suser with any pointer type without the
|
||
compiler complaining. Currently, some callers call afs_osi_suser with
|
||
an incorrectly-typed afs_ucred_t** instead, like so:
|
||
|
||
func(afs_ucred_t **credpp)
|
||
{
|
||
afs_ucred_t **acred = *acredpp; /* incorrect assignment */
|
||
if (afs_osi_suser(acred)) {
|
||
/* ... */
|
||
}
|
||
}
|
||
|
||
The actual code in the tree hides this to some degree behind various
|
||
function calls and layers of indirection (e.g. afs_suser()), but this
|
||
is effectively what we do. This causes compiler warnings because we
|
||
are doing incorrect pointer assignments, but the end result works
|
||
because afs_osi_suser actually uses an afs_ucred_t*.
|
||
|
||
The type confusion makes it very easy to accidentally give the wrong
|
||
type to afs_osi_suser. This only really matters on SOLARIS, since that
|
||
is the only platform that actually uses its argument to
|
||
afs_osi_suser().
|
||
|
||
To fix all of this, just declare afs_osi_suser as taking an
|
||
afs_ucred_t*, and fix all of the relevant functions to handle the
|
||
right type.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14085
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 4ce922d339777faf647f7129f5ae3f173a7870b1)
|
||
|
||
Change-Id: I1a6ce7788e86c32e554f87785f96f1d7b56d1496
|
||
Reviewed-on: https://gerrit.openafs.org/15308
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit bfb3125fc1b73ae17a346d33a1a34e51379db9c4
|
||
Author: Mark Vitale <mvitale@sinenomine.net>
|
||
Date: Mon May 4 15:55:07 2020 -0400
|
||
|
||
Add static assert for size of osi_timeval32_t
|
||
|
||
OpenAFS code requires osi_timeval32_t to have 32-bit sizes for members
|
||
tv_sec and tv_usec - a total of 8 octets. One symptom of a
|
||
misdefinition may be incorrect operation of xstat_cm_test, which relies
|
||
on wire representations of time being 8 bytes on both the client and
|
||
server side.
|
||
|
||
In order to prevent incorrect sizes of osi_timeval32_t, add a static
|
||
assert.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14195
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 10c5ba12ace51440c7e98add83465a7018961e6f)
|
||
|
||
Change-Id: I9584a53154ffe673d19191a0bd9f6a92d6daf140
|
||
Reviewed-on: https://gerrit.openafs.org/15304
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
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 9433217b56afe3f23b2eeeefdb8fa644c2185e4a
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Mon Jun 14 16:13:57 2021 -0600
|
||
|
||
rx: Cleanup rx.h
|
||
|
||
Fix up indentation and white space within preprocessor statements.
|
||
|
||
Remove multiple blank lines
|
||
|
||
Fix #endif comments so they match the #if
|
||
|
||
Split long #define lines
|
||
RX_PACKET_TYPES
|
||
rx_MaxUserDatasize,
|
||
RXS_OP
|
||
RXS_SetConfiguration
|
||
|
||
Note, this commit does not refactor any preprocessor statements.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14629
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 21df433134a059de8d3b3b46bb0892b34d910364)
|
||
|
||
Change-Id: I197897f4f7e81bd2f931e3decefe447caae0c5d9
|
||
Reviewed-on: https://gerrit.openafs.org/15301
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit bfc7688475fe5d2a178072a8978cf75635a15400
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Wed Mar 13 18:30:43 2019 -0500
|
||
|
||
rx: Do not ignore RXS_* op errors
|
||
|
||
Several places in rx call an RXS_* security layer operation, but
|
||
ignore the error code. Though errors for these operations are rare or
|
||
impossible currently, if they ever do return an error there could be
|
||
noticeable consequences, like a connection getting an uninitialized
|
||
challenge nonce, or sending a challenge packet with uninitialized
|
||
payload.
|
||
|
||
Change these call sites to record and handle the error. Errors from
|
||
the security class normally mean aborting the entire conn, but for
|
||
many operations we need to behave differently:
|
||
|
||
- For RXS_DestroyConnection, errors don't make sense, since we're just
|
||
freeing an object. Change the op to return void, and update our
|
||
implementations of DestroyConnection to match.
|
||
|
||
- For RXS_GetStats, just clear the relevant stats structure on error
|
||
instead. This change also results in us clearing the stats structure
|
||
when there is no security class associated with the connection;
|
||
previously we just reused the same struct data as the previous conn.
|
||
|
||
- For RXS_CreateChallenge, aborting the entire conn is difficult,
|
||
because some code paths have callers that potentially lock multiple
|
||
calls on the same conn (rxi_UpdatePeerReach -> TryAttach ->
|
||
rxi_ChallengeOn -> RXS_CreateChallenge), and aborting our conn
|
||
requires locking every call on the conn. So instead we just
|
||
propagate an error up to our callers, and we abort just the call we
|
||
have.
|
||
|
||
- For RXS_GetChallenge, we cannot abort the conn when
|
||
rxi_ChallengeEvent is called directly, because the caller will have
|
||
the call locked. But when rxi_ChallengeEvent is called as an event
|
||
(when we retry sending the challenge), we can.
|
||
|
||
- For RXS_SetConfiguration, propagate the error up to our caller.
|
||
Update all rx_SetSecurityConfiguration callers to record and handle
|
||
the error; all of these are during initialization of daemons, so
|
||
have them log an error and exit.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/13522
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 635594d6cceba6de4e09be5a9e9b908f7d16697d)
|
||
|
||
Change-Id: I800516335f6ab0d01d2b29dd0ceba9213dafde59
|
||
Reviewed-on: https://gerrit.openafs.org/15300
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 48d9848c5eef99bf1d8552acc055d3b91b2fbcc0
|
||
Author: Yadavendra Yadav <yadayada@in.ibm.com>
|
||
Date: Wed Jul 7 12:32:36 2021 -0400
|
||
|
||
LINUX: defer afs_remunlink when current->fs==NULL
|
||
|
||
afs_remunlink is called to delete a file on the fileserver after it
|
||
has been silly-renamed (due to being unlinked while the file is open).
|
||
Sometimes current->fs is NULL when this happens, typically when the
|
||
process is shutting down, after current->fs has been freed and file
|
||
handles are getting released. During afs_remunlink, we need to
|
||
interact with our cache files, and so we call dentry_open, which calls
|
||
security_file_open, which calls into the configured LSM for security
|
||
checks. Certain LSMs (e.g. Crowdstrike Falcon) will panic the kernel
|
||
in this situation if current->fs is NULL.
|
||
|
||
There's no way to skip the LSM hooks, or to flag to the LSM that we're
|
||
making an in-kernel VFS call, so the only way to avoid these panics is
|
||
to do our I/O in another thread. Fortunately, we already have a way to
|
||
defer afs_remunlink calls to a background daemon (CUnlinkedDel), since
|
||
we already do this in some cases (when someone else is holding
|
||
afs_xvcache or afs_xdcache).
|
||
|
||
So, to avoid the panic in the above scenario, defer calls to
|
||
afs_remunlink to a background daemon using CUnlinkedDel when
|
||
current->fs is NULL, and we're using a disk cache.
|
||
|
||
More details on this issue is discussed at following thread:
|
||
https://lists.openafs.org/pipermail/openafs-info/2021-March/043073.html
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14691
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Tested-by: Jonathan Billings <jsbillings@jsbillings.org>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
(cherry picked from commit 9e043e1a0cdca7624de3e27872273263c57027ed)
|
||
|
||
Change-Id: If85d992c2639e59af7578ebc295f91d4f8462b69
|
||
Reviewed-on: https://gerrit.openafs.org/15295
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit b1bbe87643462ae88f8564044d9bff2703fd5123
|
||
Author: Mark Vitale <mvitale@sinenomine.net>
|
||
Date: Sat Mar 27 00:00:17 2021 -0400
|
||
|
||
afs: write-lock vcache->lock in afs_InactiveVCache
|
||
|
||
Since the original IBM code import, the comments for
|
||
afs_InvalidateAllSegments indicate that vcache->lock W should be held at
|
||
entry. However, even back then, only LINUX and IRIX honored this
|
||
requirement when the 'inactive' vnode operation reached
|
||
afs_InvalidateAllSegments.
|
||
|
||
Over the years, a number of commits have changed the operation and
|
||
locking for the LINUX inactive vnode op:
|
||
|
||
5293aa35617a6ad35980ce16fdf492ea960cc18a linux-iput-and-glock-changes-20010130
|
||
e8591334602e5e8dad78dc6426d3c44d564572c1 linux-osi-clear-inode-locking-fix-20010816
|
||
652f3bd9cb7a5d7833a760ba50ef7c2c67214bba linux-dynamic-inodes-20050710
|
||
e0d9e434bb778a2507c1cd6d96c1faa2071f2b2c put-inode-speedup-20050815
|
||
b21c13dc3ab751118220dc31276995050841a1ae linux-dentry-iput-20060813
|
||
|
||
Eventually, ac52e2f3c0bec9298d020de963036409165f380e
|
||
linux-dont-lock-around-inactivevcache-20061010 removed the vcache->lock
|
||
from afs_dentry_iput (the current OpenAFS handler for inactive vcaches).
|
||
The commit message states:
|
||
|
||
"iafs_InactiveVCache() [sic] calls afs_InvalidateAllSegments() which says
|
||
it should be called with the vnode locked. so the lock should
|
||
probably be moved to afs_InactiveVCache() so it can be droppped
|
||
before calling afs_remunlink()."
|
||
|
||
Unfortunately, the vcache->lock was never moved to afs_InactiveVCache.
|
||
|
||
Finally, 3be5880d1d2a0aef6600047ed43d602949cd5f4d 'afs: Avoid panics in
|
||
afs_InvalidateAllSegments' introduced a background operation
|
||
BInvalidateSegments that contains an assert for vcache->lock. This
|
||
assert has exposed the existing lack of proper locking for some paths to
|
||
afs_InvalidateAllSegments by causing a kernel panic:
|
||
|
||
d_iput -> afs_dentry_iput -> afs_InactiveVCache ->
|
||
afs_InvalidateAllSegments -> afs_BQueue(BOP_INVALIDATE_SEGMENTS..) ->
|
||
BInvalidateSegments -> osi_Assert(WriteLocked(&vcache->lock))
|
||
|
||
Prevent the panic by modifying afs_InactiveVCache to obtain vcache->lock
|
||
W before calling afs_InvalidateAllSegments, and dropping it before
|
||
calling afs_remunlink.
|
||
|
||
Thanks to Chaskiel Grundman for reporting and diagnosing the problem.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14584
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit f02be4e3b89382317a3baa496f9cb672cdb4b32a)
|
||
|
||
Change-Id: I38dc6e5d70b1743b96d2a227d28e58d1950b5835
|
||
Reviewed-on: https://gerrit.openafs.org/15324
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 1023b96ab1ea842c883c070e6197e71826dbe8be
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Wed Apr 20 13:06:17 2022 +0000
|
||
|
||
cmdebug: Print AFSFid fields as unsigned integers
|
||
|
||
Currently, AFSFid fields are printed as signed integers. As a result,
|
||
large numbers can be erroneously printed as negative numbers.
|
||
|
||
To fix this problem, print AFSFid fields as unsigned integers.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14950
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 29a89c82ad422f88b0898ad07e773dc2e71be983)
|
||
|
||
Change-Id: Ieb303354f1332abb8278e62252c4842baa2132c7
|
||
Reviewed-on: https://gerrit.openafs.org/15302
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit d2429aec59fb3cc7d8a2cc94aa9e0ce8256ecb94
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Wed Jun 3 15:53:48 2020 -0500
|
||
|
||
vol: Introduce and use FDH_BLOCKSIZE
|
||
|
||
A couple of places in src/volser currently have some logic to get the
|
||
size and blocksize of a file. The existing logic is nontrivial due to
|
||
platform-specific quirks, and ignores afs_fstat errors.
|
||
|
||
To fix these issue and consolidate the code into one place, introduce
|
||
a new function, FDH_BLOCKSIZE, which gets the file size and blksize.
|
||
Update the places in src/volser to use the new function.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14662
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 939787565d5be55a8a803043dbc4f27b3f11b906)
|
||
|
||
Change-Id: I32c73e87fa0b6b0b45971e06b8d8c5653f882f7b
|
||
Reviewed-on: https://gerrit.openafs.org/15303
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 1eac15a85a50b1c322dd460f5c747538c88c1a31
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Mon Jan 10 18:11:58 2022 -0700
|
||
|
||
afs.h: fix out of tree build failures
|
||
|
||
There are several compiler errors and warnings when building an out of
|
||
tree program that includes "afs/afs.h".
|
||
|
||
- Errors for unknown type names 'afs_ucred_t' and 'wait_queue_head'
|
||
.../afs/afs.h:1542:16: error: unknown type name ‘afs_ucred_t’
|
||
... | afs_set_cr_uid(afs_ucred_t *cred, uid_t uid) {
|
||
.../afs/afs.h:1605:5: error: unknown type name ‘wait_queue_head_t’
|
||
... | wait_queue_head_t cond;
|
||
|
||
- Warnings about declaring structures within missing declarations for
|
||
the structs: osi_File, dcache and afs_FetchOutput
|
||
.../afs/afs.h:1486:36: warning: ‘struct osi_file’ declared inside
|
||
parameter list will not be visible outside of this definition or
|
||
declaration
|
||
... | int (*read)(void *rock, struct osi_file *tfile,
|
||
afs_uint32 offset,
|
||
|
||
- Unable to find the file for the include opr/jhash.h
|
||
|
||
The missing type name 'afs_ucred_t' is due to miss-placed declarations
|
||
for some kernel only functions.
|
||
|
||
The type name 'wait_queue_head' is a data type for Linux kernel modules.
|
||
|
||
The warnings for the missing declarations are due to either references
|
||
to the structures before they are declared, or because they are not
|
||
available in any of the other public header files.
|
||
|
||
To fix the unknown type name afs_ucred_t, relocate the function
|
||
declarations that reference 'afs_ucred_t' into the KERNEL only section
|
||
(since afs_ucred_t is a kernel specific type).
|
||
|
||
To fix the unknown type name 'wait_queue_head', relocate the afs_event
|
||
structure and the afs_evhasht variable to be within the KERNEL only
|
||
section.
|
||
|
||
To resolve the warnings associated with the structures, simply declare
|
||
the structure names before they are referenced. All references that
|
||
are resulting in the warnings are declarations for pointers.
|
||
|
||
Relocate the include for opr/jhash.h and the define for VCSIZE into the
|
||
kernel block.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14857
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 92342b099dd5ea539efc5ad119d36a87647c0895)
|
||
|
||
Change-Id: Ib321796e473495d7d8774133c5e690b53bb26c17
|
||
Reviewed-on: https://gerrit.openafs.org/15299
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 80cb460a8b434fa7fb2dacf642d54de1c0af5314
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Sun Apr 5 16:29:52 2020 -0500
|
||
|
||
libafs: Serialize INSTDIRS/DESTDIRS and COMPDIRS
|
||
|
||
Our libafs build logic involves a few targets that 'cd' into a
|
||
per-kernel subdir: notably INSTDIRS and DESTDIRS (the targets to 'make
|
||
install' or 'make dest' our kernel modules) and COMPDIRS (the target
|
||
to setup/build the kernel module).
|
||
|
||
Both of these potentially 'cd' into a subdirectory (e.g. MODLOAD64),
|
||
and run some make rules. Since INSTDIRS and COMPDIRS are different
|
||
targets and don't depend on each other for many platforms, running
|
||
those rules can happen in parallel. After they 'cd' into the relevant
|
||
dir, they run a new 'make' in a subshell, and so underlying rules for
|
||
building e.g. AFS_component_version_number.c are not serialized.
|
||
|
||
So for a parallel build on, say, Solaris, we can encounter errors when
|
||
two sub-makes try to make AFS_component_version_number.c at the same
|
||
time, which looks something like this (with various lines output from
|
||
other sub-processes mixed in):
|
||
|
||
cd src && cd sys && gmake install
|
||
gmake[3]: Leaving directory '/[...]/src/libuafs'
|
||
rm -f AFS_component_version_number.c.NEW
|
||
/opt/developerstudio12.6/bin/cc [...] -D_KERNEL -DSYSV -dn -m64 -xmodel=kernel -xvector=%none -xregs=no%float -Wu,-save_args -o AFS_component_version_number.o -c AFS_component_version_number.c
|
||
mv: cannot access AFS_component_version_number.c.NEW
|
||
gmake[4]: *** [/[...]/src/config/Makefile.version:13: AFS_component_version_number.c] Error 2
|
||
gmake[4]: Leaving directory '/[...]/src/libafs/MODLOAD64'
|
||
gmake[3]: *** [Makefile:85: solaris_instdirs] Error 2
|
||
gmake[3]: *** Waiting for unfinished jobs....
|
||
|
||
To avoid this, just make INSTDIRS and DESTDIRS depend on COMPDIRS, so
|
||
we can make sure they don't run at the same time.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14137
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 3db8c37e8ef6bea0f03ef6b8f82ed93d52937d7d)
|
||
|
||
Change-Id: Ied7875e885f51a6d3f00d65f1783df9439a18ae3
|
||
Reviewed-on: https://gerrit.openafs.org/15298
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 30dc7fd2acbe756d5e618a6da484f0eebaf07e07
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Sat Sep 22 01:58:17 2018 -0500
|
||
|
||
SOLARIS: Fix libafs $(KOBJ) parallel make race
|
||
|
||
Currently, our COMPDIRS make rule for SOLARIS libafs builds looks like
|
||
this:
|
||
|
||
${COMPDIRS} ${INSTDIRS} ${DESTDIRS}:
|
||
for t in $(KOBJ) ; do
|
||
# set some variables ; \
|
||
cd $$t ; \
|
||
$(MAKE) $@_libafs || exit $$? ; \
|
||
cd ../ ;\
|
||
done
|
||
|
||
And Makefile.common has this:
|
||
|
||
all: setup $(COMPDIRS)
|
||
|
||
Where the 'setup' rule creates the $(KOBJ) dirs and sets up some
|
||
symlinks.
|
||
|
||
For parallel builds, this means that our commands in the ${COMPDIRS}
|
||
target can be running in parallel with the 'setup' target, and so our
|
||
$(KOBJ) dirs may not exist by the time we try to 'cd $$t'.
|
||
|
||
For single-KOBJ platforms this actually largely works, since the 'cd'
|
||
will fail, but then the subsequent 'make' will run (just in the wrong
|
||
dir), but this can cause us to wastefully re-compile the same source
|
||
files (and cause some possibly confusing error messages). For
|
||
platforms with multiple KOBJs, this causes obvious problems, since we
|
||
don't cd into each KOBJ dir.
|
||
|
||
To solve this, just have the ${COMPDIRS}/etc rule depend on setup, so
|
||
we know that 'setup' has finished running. Also change our way of
|
||
'cd'ing into each KOBJ dir to actually cause the rule to fail, to make
|
||
any errors here more obvious and consistent.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/13344
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 00aa9200be86b187c903503e56b2af55639ea2b8)
|
||
|
||
Change-Id: I4b68cc8aa7b50f792152c2c00da6c6e3684755b7
|
||
Reviewed-on: https://gerrit.openafs.org/15297
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 69839045c269af1b7023159e78dbc59e13e6202a
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Wed Feb 9 14:00:13 2022 -0700
|
||
|
||
autoconf: Additional library test for ncurses
|
||
|
||
Depending on how the ncurses libraries were built the external symbol
|
||
'LINES' may be replaced with the '_nc_LINES' external symbol. Because
|
||
the symbol 'LINES' may or may not be present, the autoconf test can fail
|
||
to detect the correct libraries needed for curses support.
|
||
|
||
Add an additional AC_CHECK_LIBs for the symbol _nc_LINES (within the
|
||
ncurses or tinfo libraries) when setting the $LIB_curses.
|
||
|
||
This commit was adapted from the openSuSE source packaging for openafs.
|
||
|
||
Background: when ncurses is built with --enable-reentrant, LINES is
|
||
defined as a C preprocessor macro that expands to a call to _nc_LINES
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14889
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ralf Brunckhorst <rbrunckhorst@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit c98994dd116121af75f6df6891e706957c6c953d)
|
||
|
||
Change-Id: I6eb15897f48eb93d72739965c10b5f51b21d7336
|
||
Reviewed-on: https://gerrit.openafs.org/15296
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit f7625760d515a4954596526e78b9a8c2a9e9ec13
|
||
Author: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Date: Wed Jan 18 14:18:08 2023 +0100
|
||
|
||
afs: check for non-NULL before memset in afs_LookupName
|
||
|
||
Commit 981bc005f8161ca9ee52ea281c7d73e0e4e2461a refactored PNewStatMount
|
||
and PFlushMount by moving their common logic to a new function
|
||
afs_LookupName(). In this function, the output parameters are zeroed.
|
||
However, this is done before checking that their pointers are valid.
|
||
Add additional checks before memset().
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15283
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit e2890626bc11964dd96cde0d7d8dd7fdfcf90857)
|
||
|
||
Change-Id: I213ea7e23e01e7902919919581ad1d8e596303a2
|
||
Reviewed-on: https://gerrit.openafs.org/15292
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit cba2b88851c3ae0ab1b18ea3ce77f7f5e8200b2f
|
||
Author: Jeffrey Hutzelman <jhutz@cmu.edu>
|
||
Date: Tue Mar 1 10:31:14 2022 -0500
|
||
|
||
LINUX 5.13: set .proc_lseek in proc_ops
|
||
|
||
When using the proc_ops structure, set .proc_lseek explicitly rather
|
||
than leaving it unset. This field has always been present in proc_ops,
|
||
but prior to Linux 5.13, it could be unset, causing default_llseek to be
|
||
used. Starting with commit d4455faccd6 (proc: mandate ->proc_lseek in
|
||
"struct proc_ops"), this field is now mandatory.
|
||
|
||
This fixes a problem which would cause an oops if llseek(2) is called
|
||
on /proc/fs/openafs/afs_ioctl.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14918
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 68851b782ca2cb5e4ae7457255841f44f3bef15c)
|
||
|
||
Change-Id: Ifd3a517f595cfef7fd9dd1fdd3f3aca8fe1bc25f
|
||
Reviewed-on: https://gerrit.openafs.org/15286
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit b885159cc2bc6c746aec1d54cdd8a515d1115d14
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Wed Dec 14 13:40:48 2022 -0700
|
||
|
||
Linux: Replace lru_cache_add with folio_add_lru
|
||
|
||
The Linux 6.2 commit:
|
||
"folio-compat: remove lru_cache_add()" (6e1ca48d0)
|
||
removed the lru_cache_add() function (which was introduced in Linux 5.8)
|
||
|
||
The replacement function is folio_add_lru(), which was introduced with
|
||
the Linux 5.16 commit:
|
||
"mm/lru: Add folio_add_lru()" (0d31125d2d)
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15227
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit cfac0df9cd7152be2672c665442aac84215494d6)
|
||
|
||
Change-Id: I74535bf83cdd47c9dd60a7114ec7694ae9981c9b
|
||
Reviewed-on: https://gerrit.openafs.org/15281
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit f0fee2c7752d18ff183d60bcfba4c98c3348cd5f
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Fri Nov 18 08:41:50 2022 -0700
|
||
|
||
Linux: Check for block_dirty_folio
|
||
|
||
The build for the openafs Linux kernel module fails on RHEL9.1 with an
|
||
undefined function reference for block_dirty_folio().
|
||
|
||
RedHat 9.1 includes the Linux commit:
|
||
fs: Add aops->dirty_folio (6f31a5a261db)
|
||
which added the dirty_folio member to the address_space_operations
|
||
structure.
|
||
|
||
However RedHat 9.1 does not include the following 2 Linux commits:
|
||
fs: Convert __set_page_dirty_buffers to block_dirty_folio (e621900ad2)
|
||
which introduced block_dirty_folio() as a function that could be used to
|
||
handle the address_space_operations's dirty_folio operation.
|
||
|
||
And
|
||
fs: Remove aops ->set_page_dirty (3a3bae50af)
|
||
which removed the set_page_dirty member in the address_space_operations
|
||
structure.
|
||
|
||
The openafs commit:
|
||
Linux-5.18 replace set_page_dirty with dirty_folio (6aa129e743e88)
|
||
introduced an autoconf test that checks for the presence of aops'
|
||
dirty_folio member and assumed that the Linux function
|
||
block_dirty_folio() was also provided (since all three of the above
|
||
Linux commits were added in Linux-5.18-rc1).
|
||
|
||
Without the (e621900ad2) commit, the openafs Linux kernel module fails
|
||
to build since block_dirty_folio() is not defined by Linux.
|
||
|
||
Introduce new autoconf tests that checks for the presence of the
|
||
block_dirty_folio() function.
|
||
|
||
Change the preprocessor conditional within LINUX/osi_vnodeops.c to only
|
||
use dirty_folio if aops has dirty_folio and block_dirty_folio() is
|
||
available. When block_dirty_folio() is not available, we continue to
|
||
use the older set_page_dirty method, which remains a valid method until
|
||
its removal by the (3a3bae50af) Linux commit.
|
||
|
||
Note: Reviewing the Linux source for RedHat 9.1 shows that there is only
|
||
one location that is defining the dirty_folio member and it is providing
|
||
its own function instead of relying on block_dirty_folio.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15199
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit e7737edb932a1c4d55a2551a44e481b40310c96d)
|
||
|
||
Change-Id: If29ad539c5530289ffa49aa1fa489f612e9f5c78
|
||
Reviewed-on: https://gerrit.openafs.org/15228
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 9d217903f0c7f6b260f166fad6dbf77c67df7c2d
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Thu Feb 13 00:39:00 2020 -0300
|
||
|
||
vos: take RO volume offline during convertROtoRW
|
||
|
||
The vos convertROtoRW command converts a RO volume into a RW volume.
|
||
Unfortunately, the RO volume in question is not set as "out of service"
|
||
during this process. As a result, accesses to the volume being converted
|
||
can leave volume objects in an inconsistent state.
|
||
|
||
Consider the following scenario:
|
||
|
||
1. Create a volume on host_b and add replicas on host_a and host_b.
|
||
|
||
$ vos create host_b a vol_1
|
||
$ vos addsite host_b a vol_1
|
||
$ vos addiste host_a a vol_1
|
||
|
||
2. Mount the volume:
|
||
|
||
$ fs mkmount /afs/.mycell/vol_1 vol_1
|
||
$ vos release vol_1
|
||
$ vos release root.cell
|
||
|
||
3. Shutdown dafs on host_b:
|
||
|
||
$ bos shutdown host_b dafs
|
||
|
||
4. Remove RO reference to host_b from the vldb:
|
||
|
||
$ vos remsite host_b a vol_1
|
||
|
||
5. Attach the RO copy by touching it:
|
||
|
||
$ fs flushall
|
||
$ ls /afs/mycell/vol_1
|
||
|
||
6. Convert RO copy to RW:
|
||
|
||
$ vos convertROtoRW host_a a vol_1
|
||
|
||
Notice that FSYNC_com_VolDone fails silently (FSYNC_BAD_STATE), leaving
|
||
the volume object for the RO copy set as VOL_STATE_ATTACHED (on success,
|
||
this volume should be set as VOL_STATE_DELETED).
|
||
|
||
7. Add replica on host_a:
|
||
|
||
$ vos addsite host_a a vol_1
|
||
|
||
8. Wait until the "inUse" flag of the RO entry is cleared (or force this
|
||
to happen by attaching multiple volumes).
|
||
|
||
9. Release the volume:
|
||
|
||
$ vos release vol_1
|
||
|
||
Failed to start transaction on volume 536870922
|
||
Volume not attached, does not exist, or not on line
|
||
Error in vos release command.
|
||
Volume not attached, does not exist, or not on line
|
||
|
||
To fix this problem, take the RO volume offline during the vos
|
||
convertROtoRW operation.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14066
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 32d35db64061e4102281c235cf693341f9de9271)
|
||
|
||
Change-Id: I00a99819ac7d1d981695da3eae1bd60de1cb53ae
|
||
Reviewed-on: https://gerrit.openafs.org/15233
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 5a48ce589a24f2280b085e50718b05d08db918bd
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Fri Mar 6 15:15:38 2020 +0000
|
||
|
||
vol: fix namei_ConvertROtoRWvolume return code
|
||
|
||
Commit 8632f23d6718a3cd621791e82d1cf6ead8690978 introduced checks for
|
||
the return value of snprintf calls in namei_ops. On success, the value
|
||
returned by this function represents the number of written characters.
|
||
Unfortunately, the variable used to store this value is the same
|
||
variable that represents the status code returned by
|
||
namei_ConvertROtoRWvolume. Consequently, a successful execution of
|
||
namei_ConvertROtoRWvolume results in a status code different the 0 (and
|
||
equal to the number of written characters).
|
||
|
||
To fix this problem, set the status code in question back to 0 after a
|
||
successful execution of namei_ConvertROtoRWvolume.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14065
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 957b06984b77cba74bd90217b723220c1844809b)
|
||
|
||
Change-Id: If82cf4d2983e7b6f8975ca4a9fa104ee5e36b917
|
||
Reviewed-on: https://gerrit.openafs.org/15232
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 3084117f10bd62acb1182cb54fc85b1d96738f70
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Fri Nov 4 08:33:39 2022 -0600
|
||
|
||
Linux: Fix functions without prototypes
|
||
|
||
The Linux kernel build has -Wstrict-prototypes enabled and flags
|
||
functions without a proper prototype. With clang-16 these warnings are
|
||
reported as errors when the kernel is configured with CONFIG_WERROR or
|
||
when openafs is configured with --enable-checking.
|
||
|
||
src/libafs/MODLOAD-6.1.0-rc3-SP/osi_alloc.c:339:32: error: a
|
||
function declaration without a prototype is deprecated in all
|
||
versions of C [-Werror,-Wstrict-prototypes]
|
||
osi_linux_verify_alloced_memory()
|
||
^
|
||
void
|
||
|
||
Update function prototypes to comply with -Wstrict-prototypes.
|
||
|
||
There are no functional changes with this commit.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15194
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 63db2de22ef75292463ec1f0979e32afc05d0b95)
|
||
|
||
Change-Id: I2e9c09c3b88ca3597720b1d8885537600d307418
|
||
Reviewed-on: https://gerrit.openafs.org/15275
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit c990b0d086632aef51585beabb42fd9ff22d1fc4
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Thu Dec 1 10:00:06 2022 -0700
|
||
|
||
libadmin: Fix RPCStatsStateGet 'rpc' prototype
|
||
|
||
clang-16 is flagging a incompatible-function-pointer-types warning which
|
||
results in build errors when --enable-warning is turned on.
|
||
|
||
client.c:498:13: error: incompatible function pointer types passing
|
||
'int (struct rx_connection *, afs_int32 *)'
|
||
(aka 'int (struct rx_connection *, int *)') to parameter of type
|
||
'int (*)(struct rx_connection *, afs_RPCStatsState_p)'
|
||
(aka 'int (*)(struct rx_connection *, afs_RPCStatsState_t *)')
|
||
[-Wincompatible-function-pointer-types]
|
||
|
||
(conn, RXSTATS_QueryPeerRPCStats, &state, &st)) {
|
||
^~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
||
Update the 'util_RPCStatsStateGet()' function's parameter to match the
|
||
function type for the RPC functions actually being called.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15180
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 97f0a20e50f027fe00adb22c39b71f0ac79f1ff7)
|
||
|
||
Change-Id: Icbbbd137fa6a404090ef7af94621100bb552d502
|
||
Reviewed-on: https://gerrit.openafs.org/15274
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 973c5c585f59c0e88a2852d290abcb5e8fdf2b86
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Thu Dec 1 12:09:09 2022 -0700
|
||
|
||
clang-16: Fix simple unused-but-set variables
|
||
|
||
Clang-16 is flagging variables as unused-but-set-variables resulting in
|
||
build errors when --enable-warning is used.
|
||
|
||
db_verify.c:996:9: error: variable 'builtinUsers' set but not used
|
||
[-Werror,-Wunused-but-set-variable]
|
||
int builtinUsers = 0;
|
||
^
|
||
Remove the variables that are set but never actually used.
|
||
|
||
This commit fixes the simpler cases where variables are only set but
|
||
not used elsewhere.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15178
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit afafde158ff875d2459bb81ac373cde3e45dac03)
|
||
|
||
Change-Id: I65cd27325b768ba192831401f4ac71e94071ecc7
|
||
Reviewed-on: https://gerrit.openafs.org/15273
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit f336d0aa01d208b1a7f3c1c509e2bd5d4d11f095
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Wed Nov 2 14:47:04 2022 -0600
|
||
|
||
clang-16: Fix conditionally unused-but-set variables
|
||
|
||
clang-16 is flagging unused-but-set variables which result in build
|
||
errors when --enable-warning is turned on.
|
||
|
||
remote.c:485:15: error: variable 'pass' set but not used
|
||
[-Werror,-Wunused-but-set-variable]
|
||
afs_int32 pass;
|
||
^
|
||
These variables are actually used in specific cases depending on
|
||
build configuration (e.g. AFS_PTHREAD_ENV, etc.).
|
||
|
||
Relocate these variables so they are fully defined or referenced within
|
||
preprocessor '#if' blocks.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15177
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 97018ace991d300a6ff75a1dcd1a69b4044f2b89)
|
||
|
||
Change-Id: Iee3a196d9c23a8725171db4a3a884a077f0e95ac
|
||
Reviewed-on: https://gerrit.openafs.org/15277
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit fb3071563922df8172bab261e8f0c3e3e779b666
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Thu Dec 1 09:05:58 2022 -0700
|
||
|
||
clang-16: Fix unused-but-set 'for' control vars
|
||
|
||
clang-16 is flagging unused-but-set variables which result in build
|
||
errors when --enable-warning is turned on. Several of these variables
|
||
are used within 'for(..)' loops but are not actually referenced anywhere
|
||
else.
|
||
|
||
fcrypt.c:181:16: error: variable 'i' set but not used
|
||
[-Werror,-Wunused-but-set-variable]
|
||
afs_uint32 i, j;
|
||
^
|
||
Refactor the for statements to eliminate the unused variables.
|
||
|
||
Note, this commit is a little more complex than simply removing unused
|
||
variables.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15176
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 05eb420829f9bca155c1d5af9fe96844db974770)
|
||
|
||
Change-Id: I80506cb8ae1c4bef67225eb11e3f640e8de52d26
|
||
Reviewed-on: https://gerrit.openafs.org/15271
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit b87081682dcc3035889c799d9752c6b35bdda87b
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Mon Nov 14 15:55:41 2022 -0700
|
||
|
||
crypto: Define krb5_keytype as krb5_enctype
|
||
|
||
When building with clang-16 and configured with --enable-checking, the
|
||
external source heimdal/krb5/crypto.c used in src/crypto/rfc3961 fails
|
||
with the following error:
|
||
|
||
src/external/heimdal/krb5/crypto.c:702:28
|
||
error: implicit conversion from enumeration type 'krb5_enctype' (aka
|
||
'enum ENCTYPE') to different enumeration type 'krb5_keytype' (aka
|
||
'enum krb5_keytype') [-Werror,-Wenum-conversion]
|
||
*keytype = e->keytype->type; /* XXX */
|
||
~ ~~~~~~~~~~~~^~~~
|
||
|
||
Replace the enum definition of krb5_keytype with a typedef to
|
||
krb5_enctype and create an anonymous enum mapping of KEYTYPE_ARCFOUR to
|
||
ETYPE_ARCFOUR_HMAC_MD5.
|
||
|
||
It should be noted that krb5_keytype and KEYTYPE_ARCFOUR are only used
|
||
by the external file src/external/heimdal/krb5/crypto.c
|
||
|
||
Changing the type for krb5_keytype was suggested by Andrew Deason
|
||
(adeason@sinenomine.net).
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15189
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit c9ac7cdfb6365e3fc1914de80019a10328de1f4f)
|
||
|
||
Change-Id: I15a793b35cfa920e8db1a99c5575b4f3f55be0dd
|
||
Reviewed-on: https://gerrit.openafs.org/15270
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 334debcd4c9032aa7c71bb79bce2be8acafe78e2
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Wed Nov 2 14:53:21 2022 -0600
|
||
|
||
dumptool: Remove unused 'sflag' variable
|
||
|
||
clang-16 is flagging unused-but-set variables which result in build
|
||
errors when --enable-warning is turned on.
|
||
|
||
./dumptool.c:1285:54: error: variable 'sflag' set but not used
|
||
[-Werror,-Wunused-but-set-variable]
|
||
int errflg = 0, lflag = 0, iflag = 0, Fflag = 0, sflag = 0, Rflag = 0;
|
||
|
||
Within dumptool the '-s' option of the 'ls' subcommand sets the 'sflag'
|
||
variable, but the variable itself is never used anywhere else.
|
||
|
||
Remove the variable 'sflag', and ignore the '-s' option.
|
||
|
||
The sflag variable was unused in the commit that introduced the code:
|
||
"test-suite-pull-tools-directly-in-20020114" (fcb32c07ed6d)
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15181
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 3e9d41c98ecf07519ff6d2a1413615547ace13b8)
|
||
|
||
Change-Id: I4cd4584c6374a525714d392f98fb39be5406bdbc
|
||
Reviewed-on: https://gerrit.openafs.org/15269
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 241dcae439cb1646f053391b3ee57553003cf6fa
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Fri Oct 28 17:53:15 2022 -0600
|
||
|
||
libuafs: include com_err.h in ukernel_swig.i
|
||
|
||
clang-16 is flagging an implicit-function-definition which results in a
|
||
build error when --enable-warning is turned on.
|
||
|
||
PERLUAFS/ukernel_swig_perl.c:1585:9: error: call to undeclared
|
||
function 'afs_com_err'; ISO C99 and later do not support
|
||
implicit function declarations [-Wimplicit-function-declaration]
|
||
afs_com_err("AFS::ukernel", code, "parsing line: '%s'", line);
|
||
^
|
||
|
||
Add an include for afs/com_err.h to resolve the warning.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15179
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 4be3e5d31fa3fbe6c80ad0973430074124b157bc)
|
||
|
||
Change-Id: I62785fe6248cb4b26f680c2db044f59511a1e02e
|
||
Reviewed-on: https://gerrit.openafs.org/15268
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 0b908b7b9b39e36fc1bf98701d7e28d9a7a2f310
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Fri Nov 4 08:24:09 2022 -0600
|
||
|
||
rx: Remove event_handler rx_pthread_* counters
|
||
|
||
The event_handler() function contains several counters that are
|
||
set and incremented but are not actually used. Clang-16 is flagging
|
||
these with a 'unused-but-set-variable' warning resulting in build errors
|
||
when --enable-warnings is used.
|
||
|
||
rx_pthread.c:136:19: error: variable 'rx_pthread_n_event_expired' set
|
||
but not used [-Werror,-Wunused-but-set-variable]
|
||
unsigned long rx_pthread_n_event_expired = 0;
|
||
|
||
Several 'if' statements are used to conditionally set these variables,
|
||
but serve no other purpose. These 'if' statements can also be
|
||
eliminated.
|
||
|
||
Remove the unused rx_pthread_* counter variables as well as the
|
||
associated 'if' statements. In addition the only purpose of the
|
||
'error' variable was to conditionally increment one of the removed
|
||
variables, remove the 'error' variable.
|
||
|
||
These variables have been 'unused but set' since the original commit
|
||
from IBM.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15175
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
(cherry picked from commit f7cb492c7e755ec91226c96cc82ad9f567f01f11)
|
||
|
||
Change-Id: I4dfdd7e536f6af642789fc51f6f055652c63a46d
|
||
Reviewed-on: https://gerrit.openafs.org/15267
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 5af53db475cdf4350d1cc41c9d4d955156eced57
|
||
Author: Mark Vitale <mvitale@sinenomine.net>
|
||
Date: Sun Jan 26 20:17:40 2020 -0500
|
||
|
||
afs: silence bogus warning about dcListCount uninitialized
|
||
|
||
Commit 3be5880d1d2a0aef6600047ed43d602949cd5f4d 'afs: Avoid panics in
|
||
afs_InvalidateAllSegments' is correct, but at least one compiler (gcc
|
||
4.3.4 on SLES 11.3) is fooled into issuing a warning:
|
||
|
||
[...]/afs_segments.c: In function 'afs_InvalidateAllSegments_once':
|
||
[...]/afs_segments.c:506: error: 'dcListCount' may be used uninitialized in this function
|
||
|
||
To silence the bogus warning, initialize dcListCount when defined.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14048
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 09ec1073b4c5d2eb70dcf5d8063018bc82e5a35e)
|
||
|
||
Change-Id: I84b1d4b8b9041242d64b03a84ad4392ff9778950
|
||
Reviewed-on: https://gerrit.openafs.org/15266
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 05a4adcdffaa75827fbdd80ab7b54195a2f0d243
|
||
Author: Ganesh Chaudhari <gangovind@in.ibm.com>
|
||
Date: Fri Oct 7 21:52:40 2022 +0530
|
||
|
||
macos: Update postinstall instructions for MacOS 13
|
||
|
||
System preferences is getting replaced by System settings in MacOS 13.
|
||
So, this commit will address the required changes in the dialog box
|
||
which gets popped after installing OpenAFS.
|
||
|
||
Signed-off-by: Ganesh Chaudhari <gangovind@in.ibm.com>
|
||
Reviewed-on: https://gerrit.openafs.org/15150
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit c620c91416f726357d556ce043b6cc285cf87a8b)
|
||
|
||
Change-Id: I6d8da31dc3735cab93c2b2226d436960c77b78ff
|
||
Reviewed-on: https://gerrit.openafs.org/15264
|
||
Reviewed-by: Ganesh G. Chaudhari <gangovind@in.ibm.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 9c6503e117f52dba91e10a09eb8d28c428550e34
|
||
Author: Ganesh Chaudhari <gangovind@in.ibm.com>
|
||
Date: Fri Oct 7 19:13:34 2022 +0530
|
||
|
||
macOS: Add support for aarch64-*-darwin* sysname
|
||
|
||
As of libtool 2.4.7, the supplied config.guess file modifies
|
||
the sysname returned on macOS arm64 from arm-*-darwin* to
|
||
aarch64-*-darwin*. As a result, trying to build OpenAFS on
|
||
macOS arm64 fails with the following message:
|
||
|
||
configure: error: An AFS sysname is required
|
||
|
||
To avoid this problem, added support for aarch64-*-darwin*.
|
||
|
||
Signed-off-by: Ganesh Chaudhari <gangovind@in.ibm.com>
|
||
Reviewed-on: https://gerrit.openafs.org/15149
|
||
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit d38b068627f5e84cead88af85f904fea0c8edb6d)
|
||
|
||
Change-Id: I7685c2b75f62fe28b8723e00fba22f5f7fe795f1
|
||
Reviewed-on: https://gerrit.openafs.org/15263
|
||
Reviewed-by: Ganesh G. Chaudhari <gangovind@in.ibm.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 41e46e12ac74fab70c692cf475aad13be0bdb518
|
||
Author: Ganesh Chaudhari <gangovind@in.ibm.com>
|
||
Date: Wed Sep 14 15:57:27 2022 +0530
|
||
|
||
macos: Add support for MacOS 13.0 (Ventura)
|
||
|
||
This commit introduces the new set of changes / files required to
|
||
successfully build the OpenAFS source code on OS X 13.0 “Ventura”.
|
||
|
||
Thank you Kailas Zadbuke (IBM) and Harish Sharma (IBM) for your help.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15139
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit e5a97ef2b46c8821db81363f4917ef214fc34a5e)
|
||
|
||
Change-Id: I5092fe02a3bc3b7a6cb4ecfd4c8660278da9b0e8
|
||
Reviewed-on: https://gerrit.openafs.org/15262
|
||
Reviewed-by: Ganesh G. Chaudhari <gangovind@in.ibm.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit f6b088d2a7fe7fcabeb6b4635c8a01072c7219c4
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Sun Jun 20 00:52:36 2021 -0300
|
||
|
||
klog.krb5: remove "save and reuse password" logic
|
||
|
||
In order to avoid repeated requests for the user's password, klog.krb5
|
||
caches and reuses it whenever necessary. However, with the introduction
|
||
of commit 3a9a5783cd1fd73902655f0876e2069b42688c94, klog.krb5 always
|
||
requests a TGT regardless of the state of writeTicketFile, eliminating
|
||
the need for possible extra requests for the user's password.
|
||
|
||
Moreover, krb5_get_init_creds_password() does not accept a custom
|
||
prompter on macOS (returns EINVAL). Consequently, if the -password
|
||
argument is omitted, klog.krb5 fails with the following error:
|
||
|
||
klog: Invalid argument Unable to authenticate in realm <REALM>
|
||
|
||
Given that the user won't be prompted for a password multiple times,
|
||
remove the "save and reuse password" logic and use krb5_prompter_posix()
|
||
as the prompter function (instead of klog_prompter).
|
||
|
||
Relevant issue identified by gangovind@in.ibm.com.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14643
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Ganesh G. Chaudhari <gangovind@in.ibm.com>
|
||
Tested-by: Ganesh G. Chaudhari <gangovind@in.ibm.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit a10f99dbe025c74fb488b501daaf1f9574830cec)
|
||
|
||
Change-Id: I6587283d93a2dc801c8a41f0663a6de1b5d8a045
|
||
Reviewed-on: https://gerrit.openafs.org/15261
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 69f1ffb8989d8f1ac9a5ac4ea9459c358478e61d
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Thu Apr 7 22:51:21 2022 +0000
|
||
|
||
DARWIN: On macOS 12, mount afs on user's directory
|
||
|
||
Currently, /afs is mounted/unmounted by a LaunchDaemon. In order to
|
||
unmount /afs on restart/shutdown, this daemon runs umount -force /afs.
|
||
Unfortunately, SIP (System Integrity Protection) is not allowing the
|
||
LaunchDaemon in question to run this command successfully on macOS 12
|
||
(exclusively on restart/shutdown):
|
||
|
||
umount: Operation not permitted
|
||
|
||
In this situation, afs can't be turned off correctly, leaving many
|
||
unkillable afsd processes lingering around. As a result, the
|
||
restart/shutdown process gets stuck indefinitely.
|
||
|
||
Fortunately, this problem doesn't happen if /afs is mounted on an user's
|
||
directory. That said, avoid this issue by mounting /afs on the current
|
||
user's directory (/Users/$USER/OpenAFS/afs). Notice that afs is still
|
||
accessible (including for other users) through a synthetic link added in
|
||
the root directory (/afs -> /Users/$USER/OpenAFS/afs).
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14925
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 1c7eda8ea83bee3e674435109efccbc6082e4765)
|
||
|
||
Change-Id: Idb013d76f00a78cfebd790900eabbcd6968029b7
|
||
Reviewed-on: https://gerrit.openafs.org/15260
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit fd64dcd3fb49e5575bf0ac8f0bb36857953c4f8a
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Tue Mar 15 10:58:16 2022 -0300
|
||
|
||
macos: Packaging support for MacOS X 12.0
|
||
|
||
This commit introduces the new set of changes / files required to
|
||
successfully create the dmg installer on OS X 12.0 "Monterey".
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14924
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 873d803a3dc7acffd74c9432872bed4f6575abf9)
|
||
|
||
Change-Id: I4cbbbeb5eb740b4f7979fa2137cb7faa9027d774
|
||
Reviewed-on: https://gerrit.openafs.org/15259
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 046e787f1f87c6e18676510f7f89206ead1069bb
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Thu Apr 7 03:16:45 2022 +0000
|
||
|
||
macos: Add support for MacOS 12.0
|
||
|
||
This commit introduces the new set of changes / files required to
|
||
successfully build the OpenAFS source code on OS X 12.0 "Monterey".
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14923
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 7a862f940b2e2f2169e267fc6deb31db8f3534c0)
|
||
|
||
Change-Id: I4f1b42002c670e15b3fecfd8d0cfb2f461b8d136
|
||
Reviewed-on: https://gerrit.openafs.org/15258
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit fc80c74689ae6be3f428401aec071f0a273d4bff
|
||
Author: Mark Vitale <mvitale@sinenomine.net>
|
||
Date: Tue May 12 12:59:31 2020 -0400
|
||
|
||
DARWIN: disable kextutil check for versions requiring notarization
|
||
|
||
Our kextutil signing check will fail for releases that require
|
||
notarization (Mojave 10.14.5 and up, Catalina 10.15 all versions),
|
||
because we aren't notarized yet at the time of the check.
|
||
|
||
Instead, disable the check for those releases.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14222
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit d2e755e33a266df17169a1fc05db1e540b5e76af)
|
||
|
||
Change-Id: Ie191503cb3f57c60a2a9c31e638dc7f79c496591
|
||
Reviewed-on: https://gerrit.openafs.org/15257
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 6652a632795aa23e1894c049f2d48c0881968add
|
||
Author: Mark Vitale <mvitale@sinenomine.net>
|
||
Date: Sun May 10 20:53:22 2020 -0400
|
||
|
||
DARWIN: ensure OpenAFS.pkg is signed
|
||
|
||
Installation fails because the OpenAFS.pkg was inadvertently omitted
|
||
from the codesign logic.
|
||
|
||
Ensure that the package is signed.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14221
|
||
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 336f5d91c6f4e93f77560d456fb29fbd82b237e5)
|
||
|
||
Change-Id: I58c0ca157653b76562ee7071a567db681d33fc2e
|
||
Reviewed-on: https://gerrit.openafs.org/15256
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit d20def23d094b11b88265d1f7430fc5e4d55484a
|
||
Author: Mark Vitale <mvitale@sinenomine.net>
|
||
Date: Sun May 10 20:51:59 2020 -0400
|
||
|
||
DARWIN: ensure PrefPane materials are properly signed
|
||
|
||
Notarization fails because some prefPane materials were inadvertently
|
||
omitted by the codesign logic.
|
||
|
||
Ensure that these objects are properly signed.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14220
|
||
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit d3f8d8122880de9f5b25868b39efd1cc7d385ff6)
|
||
|
||
Change-Id: Ice6c954e41e375fbe8ac670586d2616c565f0499
|
||
Reviewed-on: https://gerrit.openafs.org/15255
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 35fde5873a1a9327333d15af399738ae55680e22
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Tue Mar 15 10:38:45 2022 -0300
|
||
|
||
DARWIN: Replace afs_osi_cred by allocated ucred
|
||
|
||
Building the current version of OpenAFS on macOS Monterey arm64 results
|
||
in the following error:
|
||
|
||
error: globals with authenticated null values are currently unsupported
|
||
afs_ucred_t afs_osi_cred;
|
||
|
||
To avoid this problem, replace the global in question by a pointer to a
|
||
dynamically allocated afs_osi_cred (afs_osi_credp). Ideally we would
|
||
create a new credential with kauth_cred_create(), but this function is
|
||
not well documented and using it results in crashes. Moreover, if the
|
||
kauth_cred_dup() function were still available (private since XNU
|
||
1456.1.26 - macOS 10.6), we could also duplicate the current user's
|
||
credential during startup (like commit f40f466c7f did for BSD).
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14922
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 982d2f9dbe6586d06ffa2a61c02ea726b83b5902)
|
||
|
||
Change-Id: I720132478d4d1b742f63576e6a98e96c7a935885
|
||
Reviewed-on: https://gerrit.openafs.org/15254
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 29f7182c3fe25db9666871567a631e9173568ac8
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Mon Feb 25 11:35:24 2019 -0600
|
||
|
||
Remove references to SunOS 4
|
||
|
||
We already removed support for Solaris versions before Solaris 8, in
|
||
commit e4c2810f ("Remove support for Solaris pre-8"), but there are
|
||
still some references to SunOS (meaning SunOS 4) in the tree. This is
|
||
even older than Solaris (aka SunOS 5), so get rid of these.
|
||
|
||
This commit removes most references to SunOS 4 regarding platform
|
||
support, and a few comments. This also removes a few comments that
|
||
were just wrong or nonsensical (e.g. CMAPPED in afs.h is used by
|
||
other platforms; some comments in platform-specific osi_file.c files
|
||
referenced SunOS for some reason).
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/13506
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 6e5638ac7297701a99ea396dee1df8f56a6a50da)
|
||
|
||
Change-Id: I17821e2cd0050bb0a468bfadda2c446beafeb537
|
||
Reviewed-on: https://gerrit.openafs.org/15253
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 3ee628c2dc5128ac68dd861b439a20db8837cecf
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Fri Sep 21 12:11:46 2018 -0500
|
||
|
||
Remove alpha_dux/alpha_osf references
|
||
|
||
Several files were still referencing the alpha_dux* and alpha_osf*
|
||
sysnames. The code for these platforms has been removed, so get rid of
|
||
this cruft.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/13339
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 809ee49b80d7bc0e720aaebe78fb9ecfd453065d)
|
||
|
||
Change-Id: Iae1f642df6cfb4c2e757f0fc381cb98eb5bf448e
|
||
Reviewed-on: https://gerrit.openafs.org/15252
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 8ec429d0a3a7b3169d1eb24eb37e8084e5bc6a4f
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Mon Mar 21 14:43:34 2022 -0300
|
||
|
||
DARWIN: Drop afs_event lock before destroying it
|
||
|
||
On macOS arm64, a lock (lck_mtx_t) must be released (lck_mtx_unlock)
|
||
before it can be destroyed/freed (lck_mtx_free -> lck_mtx_destroy). If
|
||
this rules isn't respected, the operating system in question will panic
|
||
with the following message:
|
||
|
||
panic("lck_mtx_assert(): mutex (%p) not owned", lock);
|
||
|
||
Unfortunately, the current shutdown process of the osi_sleep module
|
||
doesn't respect this rule. As a result, macOS arm64 panics when the
|
||
OpenAFS client is shut down/restarted. To fix this problem, release
|
||
afs_event->lck (EVTLOCK_UNLOCK) before destroying it (EVTLOCK_DESTROY).
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14933
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Tested-by: Mark Vitale <mvitale@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 93b88935999ad25bc22daf64f9ebff30957e0a27)
|
||
|
||
Change-Id: Ib81c3decc748c06b2f99cfa155095bffd1048f57
|
||
Reviewed-on: https://gerrit.openafs.org/15251
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit b5dd4df6ec3e87c7f06d214b213e30270a358f13
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Thu Apr 7 22:35:02 2022 +0000
|
||
|
||
macos: Add support for Apple Silicon
|
||
|
||
This commit introduces the new set of changes / files required to
|
||
successfully build the OpenAFS source code on Apple M1 (macOS 11+).
|
||
|
||
Notice that kexts on Apple silicon must support the arm64e architecture,
|
||
since they run in kernel space and must support the same architecture
|
||
and restrictions as other kernel code. On the other hand, the utilities
|
||
that run on user space, like vos, fs, and others, have to be built for
|
||
arm64 (currently).
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14746
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: Andrew Deason <adeason@sinenomine.net>
|
||
(cherry picked from commit cdbcb6f947feff528adc324dd6487b21083e23aa)
|
||
|
||
Change-Id: I854e7553b65956032a3c15aa427189bf8e4e3a0d
|
||
Reviewed-on: https://gerrit.openafs.org/15250
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 33bcff698f8b12c7830acf969f93eecad52a937f
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Thu Apr 7 02:15:57 2022 +0000
|
||
|
||
macos: Refactor param.x86_darwin_200.h
|
||
|
||
In preparation for a future commit, try to make param.x86_darwin_200.h
|
||
more readable. Also, rename this file to param.darwin_200.h so code from
|
||
other architectures can be included in this header.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14934
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 39b74c2c3725cfa39fc5076cd7803ee7d55923e3)
|
||
|
||
Change-Id: I184591c24fac37b4c5a2b6fab7b42850b3004744
|
||
Reviewed-on: https://gerrit.openafs.org/15249
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit b9c3dbc0a60a3295f1622bc79a05938173aa95b4
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Mon Feb 14 15:09:27 2022 -0800
|
||
|
||
build: Select param.h in sysname.m4
|
||
|
||
Currently, the way the file that will be used as param.h is selected
|
||
doesn't allow us to choose headers from other architectures, making
|
||
cross-compiling difficult. In an effort to facilitate this process,
|
||
select the header that will be used as param.h in sysname.m4. By doing
|
||
this, we will have more flexibility to select which header should be
|
||
used (in future commits).
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14914
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit d456bd9b258445f60745867c34ef7c7a8c7be187)
|
||
|
||
Change-Id: Iaaa372887ac17f352a6a4bb9c14b896e88e3b28b
|
||
Reviewed-on: https://gerrit.openafs.org/15248
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 84b177ccc856519a6a1aac7e18cd30514fccac15
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Wed Apr 6 23:36:15 2022 +0000
|
||
|
||
macos: Build afscell for supported architectures
|
||
|
||
Given that i386 is no longer supported, trying to build the current
|
||
version of afscell on macOS 11 (Big Sur) results in the following error:
|
||
|
||
error: The i386 architecture is deprecated. You should update your ARCHS
|
||
build setting to remove the i386 architecture.
|
||
|
||
To fix this problem, build afscell for all architectures listed in
|
||
ARCHS_STANDARD.
|
||
|
||
For the macosx11.0 sdk:
|
||
|
||
$ xcodebuild -showBuildSettings -scheme afscell -sdk macosx | grep ARCHS
|
||
|
||
ARCHS = arm64 x86_64
|
||
ARCHS_STANDARD = arm64 x86_64
|
||
ARCHS_STANDARD_32_64_BIT = arm64 x86_64 i386
|
||
ARCHS_STANDARD_32_BIT = i386
|
||
ARCHS_STANDARD_64_BIT = arm64 x86_64
|
||
ARCHS_STANDARD_INCLUDING_64_BIT = arm64 x86_64
|
||
VALID_ARCHS = arm64 arm64e i386 x86_64
|
||
|
||
While here, add arm64 to the list of valid architectures.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14745
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit dc6ced5e6d63ad89b1ad6f6b236a28b823abb59d)
|
||
|
||
Change-Id: I483c41a5954caa8ed080134d82f2e08a7c1973a4
|
||
Reviewed-on: https://gerrit.openafs.org/15247
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit a0898c2d90ed2928245576505f74e935a1ea2722
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Mon Sep 19 16:25:13 2022 -0600
|
||
|
||
UKERNEL: avoid double include of roken.h
|
||
|
||
Commit 'afs: Replace strcpy &co by safer alternatives' (419f0cd7aa75719)
|
||
added an include for roken.h into UKERNEL/afsincludes.h. Neither
|
||
UKERNEL/afsincludes.h or roken.h has a guard against a double include,
|
||
which can result in a build failure on older kernels (discovered on a
|
||
2.6.18 build):
|
||
|
||
In file included from ~/openafs/src/afs/UKERNEL/afsincludes.h:30,
|
||
from ~/openafs/src/afs/UKERNEL/afs_usrops.h:15,
|
||
from ~/openafs/src/afs/UKERNEL/afs_usrops.c:24:
|
||
include/roken.h:89: error: redefinition of typedef 'rk_socket_t'
|
||
include/roken.h:89: error: previous declaration of 'rk_socket_t' was here
|
||
In file included from ~/openafs/src/afs/UKERNEL/afsincludes.h:30,
|
||
from ../afs/afsincludes.h:16,
|
||
from ../afs/afs_bypasscache.h:68,
|
||
from ~/openafs/src/afs/UKERNEL/afs_usrops.c:30:
|
||
|
||
Since roken.h is from an external source, we cannot update it to add
|
||
the necessary check.
|
||
|
||
Update UKERNEL/afsincludes.h to add a check to see if it has already
|
||
been included.
|
||
|
||
auth/ktc.c has a required include for roken.h, but it also can pull in
|
||
UKERNEL/afsincludes.h as well. This can result in a double include for
|
||
roken.h.
|
||
|
||
Update auth/ktc.c to only include roken.h if not building UKERNEL.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15130
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit cc0ffc56e85eec4133bcc5e745efa28f5d3c53a7)
|
||
|
||
Change-Id: I4508c2d4bb878dadce649f0da2af16c9efa69b91
|
||
Reviewed-on: https://gerrit.openafs.org/15265
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 5993965112da00e29ebdb2be084b50bae5cbb90f
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Wed Mar 23 17:58:41 2022 -0300
|
||
|
||
DARWIN: Declare/include functions before using them
|
||
|
||
Every function should be explicitly declared before it can be called.
|
||
Since -Wimplicit-function-declaration is usually a warning and not an
|
||
error, calling undeclared functions does not prevent us from building
|
||
the code.
|
||
|
||
However, apple-clang 12 makes this an error by default, prohibiting the
|
||
build of the current version on macOS 11 (Big Sur).
|
||
|
||
To fix this problem, declare functions before calling them. Also,
|
||
include mach/thread_act.h into afs_call.c so the declaration of
|
||
thread_terminate() can be found on macOS. Last, given that the third
|
||
argument of PIOCTL() (if UKERNEL is defined) is a pointer, cast it to
|
||
'long'. Doing so, we can avoid another inhibited warning. Notice that
|
||
this PIOCTL definition is scoped to a single file (src/auth/ktc.c).
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14744
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit f9c96d0fd609e14fcb8ff7d9269024e026f742cb)
|
||
|
||
Change-Id: I70dadc44d40e1fc877f9e0490e28636907432faa
|
||
Reviewed-on: https://gerrit.openafs.org/15246
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Tested-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 34d869996dda2de2449a1623de051b86e262212c
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Fri Jan 21 17:54:48 2022 -0600
|
||
|
||
afs: Organize setpag() declarations better
|
||
|
||
The current declarations for setpag() are a mess (not to be confused
|
||
with many other setpag functions, like afs_setpag()), accumulated
|
||
across various commits over time. Shuffle the #ifdef logic around, so
|
||
this becomes a much more straightforward #ifdef ladder, with one
|
||
declaration per conditional. And move the LINUX declaration to be next
|
||
to all of the others (even the LINUX setpag() is declared in
|
||
osi_groups.c, not osi_misc.c, so it's in the wrong spot anyway).
|
||
|
||
The resulting #ifdef logic should be identical to the original code,
|
||
but is now easier to follow. For the BSDs, it may look like we have
|
||
changed the conditional for the case of "XBSD && !DFBSD && !FBSD &&
|
||
!NBSD", but that's a very roundabout way of saying OBSD (OpenBSD).
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14883
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 738a6487ad088068d19a18c6330e01a40f2fd278)
|
||
|
||
Change-Id: I9dc933fa96fc6e7839c010c5207e644179343898
|
||
Reviewed-on: https://gerrit.openafs.org/15245
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Tested-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit b56d5cdfa8cfff3bd3c166a38204cfa4dceaaf73
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Wed Mar 23 17:31:54 2022 -0300
|
||
|
||
bucoord: Introduce ubik_Call_SingleServer_BUDB_*
|
||
|
||
In an effort to avoid the usage of undeclared functions, add wrappers
|
||
for ubik_Call_SingleServer() (_BUDB_GetVolumes(), _BUDB_DumpDB()) and
|
||
adjust its callers accordingly.
|
||
|
||
Also, make sure that ubik_Call_SingleServer() uses the same signature as
|
||
ubik_Call(). This change helps us to get rid of casting errors.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14886
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 981b3d723ec56dad553be570147d1b2aa632f4e1)
|
||
|
||
Change-Id: I5893a939bc5cd64eec9dbbf1ce8a0dc5032c81f0
|
||
Reviewed-on: https://gerrit.openafs.org/15244
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Tested-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 1e6fd4ceae1f8146a5dfa7c66330289564dbe7be
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Tue Apr 5 22:39:56 2022 +0000
|
||
|
||
afs: Ensure dirEntry->name has room for entry name
|
||
|
||
Currently, the afs_dynroot_addDirEnt() function assumes that the caller
|
||
has allocated the directory to be large enough to hold the necessary
|
||
entry. In order to make sure that memory isn't being accidentally
|
||
stomped, use strlcpy to truncate instead of stomping on other memory.
|
||
That way, if the caller makes a mistake we don't silently corrupt memory.
|
||
|
||
We specifically do not assert that there is no truncation or panic if
|
||
truncation occurs, since the effect of a truncated entry in the
|
||
dynamic AFS root volume is limited and does not justify bringing down
|
||
the entire client.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14938
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
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 aa9180652876a3ba9157776b69a6995ac4201d1b)
|
||
|
||
Change-Id: I21a402bb6e20f2546c61bdabde021817dd3827d8
|
||
Reviewed-on: https://gerrit.openafs.org/15243
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Tested-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 79c8c8639952fc3305b50152ba450ed8d858e7be
|
||
Author: Michael Meffie <mmeffie@sinenomine.net>
|
||
Date: Wed Sep 1 12:38:14 2021 -0400
|
||
|
||
fs: Trim trailing lsmount and flushmount path slashes
|
||
|
||
Remove trailing slashes from paths given to `fs lsmount` and `fs
|
||
flushmount`. This makes for a more pleasant user experience when shell
|
||
tab completion is used to specify the paths.
|
||
|
||
Thanks to Stephan Wiesand for pointing out this issue.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14779
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit a7a672cae871aa9cf9cc003a37579cb4df51b3fe)
|
||
|
||
Change-Id: I24a2ae323f64f2d73be8fbc26860fa2864e34bfe
|
||
Reviewed-on: https://gerrit.openafs.org/15242
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Tested-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 91f11551714c6b6f653fd367bc8d184c8aba9e7b
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Fri Aug 24 13:03:24 2018 -0500
|
||
|
||
afs: Detect VIOCPREFETCH special case properly
|
||
|
||
Currently, afs_syscall_pioctl handles the VIOCPREFETCH pioctl as a
|
||
special case, calling into a different code path to handle
|
||
backgrounding the prefetch operation. However, we detect that we're
|
||
handling a VIOCPREFETCH operation just by looking at the lower 8 bits
|
||
of the given opcode. This means that any pioctl that ends in 0x0F will
|
||
trigger this codepath, such as if we add a 'C' or 'O' pioctl that uses
|
||
code 0x0F.
|
||
|
||
We only want to catch VIOCPREFETCH requests for this code path, so fix
|
||
the check to also check if we're processing a 'V' pioctl.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/13301
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 252b3bcc75ea141ff93a7b3147865f4b952fcaca)
|
||
|
||
Change-Id: I12d0616059dd8115b109b1ffa4cafe6ddc4b1662
|
||
Reviewed-on: https://gerrit.openafs.org/15241
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Tested-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 581450c74c57680eeb89bf937b4d42936df6196b
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Wed Apr 6 20:59:56 2022 +0000
|
||
|
||
afs: Replace strcpy &co by safer alternatives
|
||
|
||
In addition to being unsafe, these functions (strcpy, strncpy, strcat,
|
||
and sprintf) are deprecated on macOS. Replace these functions by safer
|
||
alternatives (strlcpy, strlcat, snprintf, and afs_strdup).
|
||
|
||
Notice that, in order to use afs_strdup(), this commit adds the afs_util
|
||
library to the AFSPAGOBJS list. Given that afs_strcasecmp() is also
|
||
implemented in afs_util.c, src/crypto/hcrypto/kernel/strcasecmp.c can be
|
||
removed from the tree.
|
||
|
||
No functional change should be incurred by this commit.
|
||
|
||
This commit is a continuation of a patch initially developed by
|
||
cwills@sinenomine.net.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14743
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 419f0cd7aa75719dcf4df97e603ad4f0d936ddd9)
|
||
|
||
[cwills@sinenomine.net]
|
||
Part of the (419f0cd7aa) changes to afs_callback.c were pulled in to a
|
||
1.8.x specific commit:
|
||
"afs: Avoid unbounded string copy in SRXAFSCB_GetLock()" (79a04c344)
|
||
In order to resync the code, the include roken.h in afs_callback.c
|
||
introduced in that commit needed to be removed.
|
||
|
||
Change-Id: Ica0e9bdc82de2b1e89e6d4b513e775b2809fbc34
|
||
Reviewed-on: https://gerrit.openafs.org/15240
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
Tested-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit c7048f9a5c29df5816b6bcebaa42965bccb12557
|
||
Author: Mark Vitale <mvitale@sinenomine.net>
|
||
Date: Thu Jun 14 14:38:54 2018 -0400
|
||
|
||
afs: remove dead code
|
||
|
||
afs_CheckLocks has been dead code since openafs-ibm-1_0.
|
||
|
||
No functional change incurred.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/13210
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 0839a3326858f7d7a0042614710dcf7316bb6018)
|
||
|
||
Change-Id: I1c564255990803dac7abe1789f2941bf4fa30b58
|
||
Reviewed-on: https://gerrit.openafs.org/15239
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit fc5be911a0ef216b9af79a0ec6bc32512085d398
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Wed Mar 23 16:04:46 2022 -0300
|
||
|
||
UKERNEL: Remove flock -> usr_flock redirection
|
||
|
||
In order to replace 'struck flock' with 'struct usr_flock' and 'flock()'
|
||
with 'usr_flock()', the current version of src/afs/UKERNEL/sysincludes.h
|
||
defines flock to usr_flock. This can cause problems when trying to use
|
||
libroken in UKERNEL code, because roken.h redefines flock.
|
||
|
||
To avoid conflicts with libroken (included in a future commit), add a
|
||
new UKERNEL specific AFS_FLOCK -> usr_flock redirection. Doing so, the
|
||
flock -> usr_flock redirection can be removed. While here, also remove
|
||
'usr_flock()' as it shouldn't be called and is not defined in any header
|
||
file.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14913
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 51c0387aaa5ec507c6e29063ef56d98e2931402d)
|
||
|
||
Change-Id: I3c2d9de056bae3f2fed68f1ec183540b63584a43
|
||
Reviewed-on: https://gerrit.openafs.org/15238
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 276632ea7334fd27972585823f358e92b448da59
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Thu Jan 27 14:49:15 2022 -0600
|
||
|
||
UKERNEL: Remove socket -> usr_socket redirection
|
||
|
||
Currently, src/afs/UKERNEL/sysincludes.h #defines 'socket' to
|
||
'usr_socket', in order for 'struct socket' declarations to use struct
|
||
usr_socket. Redefining a simple word/function like 'socket' can easily
|
||
cause issues, and currently makes it difficult to introduce libroken
|
||
callers in UKERNEL code. There are already several instances of
|
||
'#undef socket' in the tree for UKERNEL, suggesting that this wasn't a
|
||
good idea to start with.
|
||
|
||
Fortunately, this redefinition of 'socket' in UKERNEL seems
|
||
unnecessary, since the only place 'struct usr_socket' is actually
|
||
deferenced is inside src/rx/UKERNEL/rx_knet.c. So we can treat 'struct
|
||
usr_socket' as a struct definition that's just internal to rx_knet.c,
|
||
and no other code even needs to know about the struct, or think that
|
||
it's equivalent to 'struct socket'.
|
||
|
||
Most code in rx_knet.c already explicitly casts between 'struct
|
||
socket' and 'struct usr_socket'. The only exception is rxi_Recvmsg
|
||
starting in commits near 27c42be1 (ukernel-rx-knet-deref-20060126),
|
||
but this is easily fixed by adding an additional explicit cast.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14887
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 17b16cb3989d1f41e314795515daf6c9b41cf1de)
|
||
|
||
Change-Id: I35c7b7fc61c1c741be928fa7beb889d8848f0b81
|
||
Reviewed-on: https://gerrit.openafs.org/15237
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit f2f0be5e04f2a700b721f647a87cbffe2ccd606a
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Wed Mar 23 15:10:15 2022 -0300
|
||
|
||
afs: Save size of sysname_info->name
|
||
|
||
In preparation for a future commit, save the size of sysname_info->name
|
||
by adding a new field (name_size) into the sysname_info struct. Also,
|
||
remove the sysname_info->allocked field, since now we can find out if
|
||
memory has been allocated by checking if sysname_info->name_size is
|
||
different than zero.
|
||
|
||
No functional change should be incurred by this commit.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14912
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit c40c0bd00b7e49e67377e13f5b902c13a0e4478c)
|
||
|
||
Change-Id: I5a7d0d733dfc48d4d4eb5d00ef959ad980722e17
|
||
Reviewed-on: https://gerrit.openafs.org/15236
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 6ba75f842f307e94db86b95c9da98e9e40d11c35
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Thu Jul 1 10:47:50 2021 -0300
|
||
|
||
fs: add option to evaluate symlink or mtpt
|
||
|
||
Currently, several fs subcommands for Windows offer an option (-literal)
|
||
to evaluate symlink / mount point rather than the object it refers to.
|
||
Provide the same option on Unix for fs_getfid.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14542
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 83d947c150322c3c7c65130ecf08719e466cae04)
|
||
|
||
Change-Id: Ife60e046c149f3586dbdad0e9b3fd6059967ece1
|
||
Reviewed-on: https://gerrit.openafs.org/15235
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit f1fd9c9cae8438635ea6e64fff05507921046ef3
|
||
Author: Marcio Barbosa <mbarbosa@sinenomine.net>
|
||
Date: Tue Aug 17 19:52:11 2021 +0000
|
||
|
||
afs: refactor PNewStatMount and PFlushMount
|
||
|
||
Both functions use the same logic to find a name in a given directory.
|
||
To avoid repetition, move this logic to a separate function called
|
||
afs_LookupName().
|
||
|
||
No functional change is incurred by this commit.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/14541
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit 981bc005f8161ca9ee52ea281c7d73e0e4e2461a)
|
||
|
||
Change-Id: I11f03146da86c91f83ad682df7ad1943cb4ab68f
|
||
Reviewed-on: https://gerrit.openafs.org/15234
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Harish Sharma <Harish.Sharma1@ibm.com>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit b17625959386459059f6f43875d8817383554481
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Thu Dec 1 14:18:36 2022 -0700
|
||
|
||
cf: Handle autoconf linux checks with -Werror
|
||
|
||
When the linux kernel has been configured with CONFIG_WERROR=y, several
|
||
autoconf configure checks used to detect linux features fail due to the
|
||
compiler performing additional coding checks (e.g. unused variables,
|
||
uninitialized variables, etc.). Typically these additional coding
|
||
checks produce compiler warnings, but with CONFIG_WERROR=y these
|
||
warnings are reported as compiler errors, resulting in a misconfigured
|
||
build environment.
|
||
|
||
When testing for kernel features, turn off -Werror in the autoconf
|
||
functions AC_CHECK_LINUX_BUILD and AC_CHECK_LINUX_FUNC by explicitly
|
||
setting the compiler '-Wno-error' flag.
|
||
|
||
In addition, fix the commented description for AC_CHECK_LINUX_BUILD to
|
||
match the actual parameters
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15191
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
(cherry picked from commit e2ad1ca5f7355062e808f1717e7410b7ae893371)
|
||
|
||
Change-Id: I2c8ba4c421ed751aa6ff2899ea173c1e84053322
|
||
Reviewed-on: https://gerrit.openafs.org/15231
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 57df4dff496ca9bea04510759b8fdd9cd2cc0009
|
||
Author: Cheyenne Wills <cwills@sinenomine.net>
|
||
Date: Thu Dec 1 12:55:26 2022 -0700
|
||
|
||
cf: Detect how to pass CFLAGS to linux kbuild
|
||
|
||
The autoconf test LINUX_KBUILD_USES_EXTRA_CFLAGS fails on modern kernels
|
||
when detecting how to pass CFLAGS to the compiler when building a Linux
|
||
kernel module. The result of this test is used by configure when
|
||
testing for Linux kernel features.
|
||
|
||
In addition the EXTRA_CFLAGS method of passing compiler parameters has
|
||
been deprecated since Linux 2.6.24 commit:
|
||
"kbuild: introduce ccflags-y, asflags-y and ldflags-y" (f77bf01425b)
|
||
|
||
The currently preferred method is to use the make variable 'ccflags-y'
|
||
to set compiler flags.
|
||
|
||
Replace the autoconf function LINUX_KBUILD_USES_EXTRA_CFLAGS with a new
|
||
test, LINUX_KBUILD_FIND_CFLAGS_METHOD, that checks the various ways to
|
||
pass compiler flags when building the kernel module.
|
||
|
||
Set the build variable "LINUX_KBUILD_CFLAGS_VAR" with the determined
|
||
method for setting kbuild compiler flags.
|
||
|
||
Update the AC_TRY_KBUILD26 autoconf function and the
|
||
make_kbuild_makefile.pl script to use the determined method for setting
|
||
the compiler flags for the kbuild process.
|
||
|
||
Background:
|
||
|
||
The autoconf test, LINUX_KBUILD_USES_EXTRA_CFLAGS, is used to determine
|
||
when to use either CFLAGS for EXTRA_CFLAGS when performing other
|
||
autoconf tests for Linux kernel features. The test was added with the
|
||
openafs commit:
|
||
"linux-2624-20071123" (af7cf697ef8)
|
||
|
||
LINUX_KBUILD_USES_EXTRA_CFLAGS relied on the Linux 2.6.24 commit:
|
||
"kbuild: check for wrong use of CFLAGS" (0c53c8e6eb4)
|
||
which caused a build failure if CFLAGS where used instead of
|
||
EXTRA_CFLAGS.
|
||
|
||
Later with the Linux 4.20 commit:
|
||
"kbuild: remove old check for CFLAGS use" (0d91bf584fe)
|
||
which removed the build failure when CFLAGS were set and this resulted
|
||
in LINUX_KBUILD_USES_EXTRA_CFLAGS failing to properly determining how to
|
||
set compiler flags in the kbuild process.
|
||
|
||
As mentioned above, the EXTRA_CFLAGS method itself has been deprecated
|
||
in Linux 2.6.24, but support for using it has still present in the
|
||
kbuild processes.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/15196
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit f81b01de1a51f02798ac764fb2f6948b592639da)
|
||
|
||
Change-Id: Ib1e07bf6b8734a427a2682ca694fbe2e083f1ecd
|
||
Reviewed-on: https://gerrit.openafs.org/15230
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|
||
|
||
commit 2cf76b31ce4c912b1151c141818f6e8c5cddcab2
|
||
Author: Andrew Deason <adeason@sinenomine.net>
|
||
Date: Fri Jun 28 14:14:48 2019 -0500
|
||
|
||
LINUX: Run the 'sparse' checker if available
|
||
|
||
The Linux kernel module buildsystem supports running an external tool
|
||
(by default, the 'sparse' tool) during the build to run additional
|
||
static checks on the source code to flag various warnings.
|
||
|
||
Tell the kernel build to run such a tool, if 'sparse' is installed.
|
||
This causes various new warnings in the build, such as:
|
||
|
||
CHECK /.../src/libafs/MODLOAD-4.9.0-8-amd64-MP/afs_tokens.c
|
||
/.../src/libafs/MODLOAD-4.9.0-8-amd64-MP/afs_tokens.c:73:1: warning: symbol 'afs_FreeOneToken' was not declared. Should it be static?
|
||
/.../src/libafs/MODLOAD-4.9.0-8-amd64-MP/afs_tokens.c:160:1: warning: symbol 'afs_IsTokenExpired' was not declared. Should it be static?
|
||
/.../src/libafs/MODLOAD-4.9.0-8-amd64-MP/afs_tokens.c:187:1: warning: symbol 'afs_IsTokenUsable' was not declared. Should it be static?
|
||
|
||
None cause the build to fail currently, but are just printed for
|
||
potential further investigation.
|
||
|
||
To control detecting 'sparse', add the --with-sparse configure option
|
||
and SPARSE configure variable. Default to checking if sparse is
|
||
available, and enabling it if so.
|
||
|
||
Further information on using sparse in the Linux kernel is available
|
||
in Documentation/sparse.txt in the Linux tree.
|
||
|
||
Using 'sparse' during the build was suggested by yadayada@in.ibm.com.
|
||
|
||
Reviewed-on: https://gerrit.openafs.org/13665
|
||
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
|
||
(cherry picked from commit 1210a8d6d96db2d84595d35ef81ec5d176de05e8)
|
||
|
||
Change-Id: I5d52b1eed48564956a687fba0419185b01621b13
|
||
Reviewed-on: https://gerrit.openafs.org/15229
|
||
Tested-by: BuildBot <buildbot@rampaginggeek.com>
|
||
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
|
||
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
|
||
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
|