Drop GLOCK over the entire loop iterating over the iovec, since
it's not needed for any operations performed in the loop (rather
than dropping it just for the memcpy inside the loop).
screw it. if winnt can have generic pointers, so can we
====================
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 "fs newcell" work even when there are no pre-existing cells in
the kernel yet. Previously, newcell tried to issue a GetCell pioctl
to figure out what version of the pioctl interface the kernel is
using. Lacking such information (if the pioctl returns an error),
we now assume the newer interface.
fix the following problems
- including osi_vfs.h on almost all platforms, even though afsincludes.h
already deals with it
- universally declaring afs_globalVFS as a struct vfs *
- declaring afs_stats_XferSumBytes in a header without a storage class
- using afsincludes.h without sysincludes.h
- make clean removes a source file in rxkad
====================
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.
====================
Changing the length and offset fields from afs_int64 to afs_uint64 gave
strange results for CompareInt64 and SubtractInt64. Therefore it's
better to cast the values as signed in these macros.
This patch adds support for building OpenAFS user-mode code on SunOS 4.
It does not include libafs, ulibafs, or any code that needs to understand
the filesystem layout (so, no vfsck, and while the salvager will be built,
it won't work).
Allow users with admin bits to store different user/group IDs
along with a StoreData call; they can already do so anyway by
using StoreStatus. Fixes a spurious permission denied error
with arla clients.
hold the dcache lock only briefly; instead put dcache entries to be junked
onto a free list, by unhashing them, then grab the dcache lock, junk them,
and release it.
avoid potential race for shrink_dcache_parent/d_drop
smbfs and nfs do equivalent.
====================
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.
====================
avoid potential race for shrink_dcache_parent/d_drop
smbfs and nfs do equivalent.
slight rework to avoid holding glock in a way which could deadlock us
Garry Zacheiss [Mon, 19 Aug 2002 19:53:34 +0000 (19:53 +0000)]
Don't return ELOOP when crossing a mountpoint boundary from a BK volume to
a BK volume. find treats it as a fatal error, and it's annoying not to be
able to naively use find to recurse through a volume with its backup volume
mounted. Never noticed this before because we used to ignore this return
value. Return ENODEV instead.
An unintentional change accidentally leaked out when the
rx-avoid-using-newproc-on-solaris-20020812 delta was checked
in. Undo it, since it breaks things.
Second attempt at avoiding the use of newproc() on Solaris.
This time, use thread_create to spawn a kernel thread, and
use a dummy packet to wake up the listener during shutdown.
Set the maxfilesize rlimit to infinity while writing to cache files
to avoid potential truncation if the user's rlimit is too low. This
bug likely also exists in AIX, DARWIN, DUX, FBSD, HPUX and NBSD, but
surprisingly IRIX got this right.
fix-fakestat-support-for-hardlinks-20020731 made afs_vnop_link.c
not compile under Sun's cc, since it tried to take the address of
a register variable. Don't declare the arguments as register.
Support empty CellServDB entries like arla; this is useful to
tell dynroot about the existence of a cell without hard-coding
the server list (it will be fetched from AFSDB).
Verify that afs_GetCellByIndex() returns a valid cell -- it might
be NULL if afs_NewCell() aborted partway through, which could be
the case of the CellServDB file has a typo.
You need to specify "refresh_token" the second time you call it to prevent
it from getting a second PAG and making your first token useless.
Or, you can just use it once to authenticate to a cell other than what's
in /usr/vice/etc/ThisCell. Not specifying the "cell" argument causes the
expected behavior of authenticating against the local cell."
"The multithreaded butc (src/tbutc/butc) includes bucoord/status.o, which is
compiled together with the other bucoord stuff without MT_CFLAGS and hence
without AFS_PTHREAD_ENV defined. Alas, it uses ObtainWriteLock and other
macros out of lock.h which *are* sensitive to AFS_PTHREAD_ENV. Consequently,
butc can hang trying to acquire the statusQueueLock when dumping volumes, in
particular if 'backup status' commands are issued frequently.
A proper fix would probably be to push some of those macros out of lock.h and
make them subroutines in lock.c.
A quick fix is ensuring status.c gets recompiled in tbutc/Makefile.in"
This patch will fix the "freebsd can't read files > 1 chunk" problem. It
will almost certainly not fix the "cache files get the bootloader written
into them" problem, but there is a miniscule chance: