Background: OpenAFS is vulnerable to crashing in the linux kernel symlink
code when running on kernel versions between 2.6.10 to 2.6.12. This also
includes all RHEL4 kernels, because RHEL4 includes the code from 2.6.10. The
problem is that the symlink text caching API, page_follow_link() et al, is
unsuitable for network filesystems where the page cache may be invalidated
in parallel with a path lookup.
This crash can be triggered easily by doing a bunch of path lookups
involving symlinks (e.g., stat() on various files pointed to through links),
while simultaneously running 'fs flushvol' on the volume containing the
symlinks.
The simplest way to fix this problem is to disable the use of symlink text
caching when the kernel does not provide a usable symlink API.
(cherry picked from commit 2d18bd1777b8d18a3b855685928dcdafcbe609b8)
fix linux flock, remove a bogus lock assert, and fix pid tracking to avoid usele
ss panic
(cherry picked from commit fd1c37ebe7f5fb2ed52371705aaf1efc7764c7eb)
FIXES 40604
Test whether Linux kernel builds work at all before going into specific
builds so that we can fail earlier with a better error message. Try to
put more errors from the kernel build into config.log.
(cherry picked from commit 182a18931a3fc696a53288dbd6fcf04e109f785b)
FIXES 39797
lockf when not locking and unlocking the whole file is fraught with peril
(cherry picked from commit 1c8080fe9dcb3713bf1231cf4b455e80c6f0c697)
FIXES 27590
add missing variable test
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
FIXES 27589
update for new mutexes
new (2.6.16) kernerls have i_mutex instead of i_sem
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
make i_sem become i_mutex
FIXES 18349
add a volume update counter. danger will robinson. see ticket for details.
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
add configure gunk
====================
add configure gunk
====================
make this happy in libadmin on e.g. solaris
====================
make this work on Windows
incorporating STABLE14-macos104-20051005 STABLE14-macos-cleanup-20051006 macos-cleanup-20051006 macos-cleanup-20051007 from the 1.4.x branch, which needed to be forward-ported to work here, sadly.
i slipped a rollback on the linux 2.4 dentry stuff for osi_UFS* in here
at the same time. this patch lets us use kernel inodes instead of our own pool.