Always verify that the client is fully reachable before talking
to it, in the fileserver. This prevents some additional lossage
cases with poorly-connected clients.
Disable same feature for other Rx services, since they don't
need to incur extra RTT delay.
a) a freebsd client that compiles, and to a certain extent, works. Should
not be used except by people doing freebsd client development
b) configure glue for freebsd 4.3, 4.4, and 4.5
c) freebsd tfileserver support. Note that, by default, this isn't very
interesting, as the supported freebsd pthreads are just as cooperative as
LWP. if you install the linuxthreads port and swap the MT_* variables in
osconf.m4, you will get a more traditional tfileserver though. configure
glue for that will be forthcoming at some point.
d) a maybe-fix that sets sin_len in sockaddrs on platforms that have them.
(and also a fix for the AC_PROG_CC issue which affects autoconf 2.13 and 2.5x
on same conf files issue)
Use autoconf to check for p_corefile in struct proc, rather than
assuming it exists in Solaris 7 and above; nneul@umr.edu reports
that it doesn't for some kernel revision.
somehow i suspect one of our platforms doesn't do volatile and i'll
regret this, but this stops linux i386 when afs_int32 is an int from
going off into la-la land when an Rx retransmit is needed
====================
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.
====================
undo. the bug was a little more subtle and my debugging code masked it
it's ok to support a null request being passed in, but if a real one is
passed in we shouldn't analyze it when it's not the one we used when
making calls.
-- Add afs_osi_SleepSig, which returns EINTR when interrupted by signal.
-- Similar CV_WAIT_SIG for Rx code.
-- Implement afs_osi_SleepSig and CV_WAIT_SIG for Linux, Solaris.
-- Use afs_osi_SleepSig in afs_{UFS,Mem}Read, allowing user to interrupt
an AFS read if it's being handled by background daemon.
-- Balance the number of open & close braces in CV_TIMEDWAIT macros,
even though noone uses them.
-- Untangle parts of the macro forest by moving some of the Rx CV code
into rx_kmutex.c.
Block signals when sleeping in CV_WAIT() and CV_TIMEDWAIT(), similar
to the linux-avoid-signal-wakeups-while-sleeping-20020129 change for
afs_osi_Sleep().
Use filemap_fdata{sync,wait} directly (available in 2.4.5 and above)
rather than write_inode_now(), which steals afs inodes and puts them
on the global inode lists.
it was previously agreed that we wouldn't add gratuitous new sysnames unless things
(not just what the vendor calls the operating system) changed. precedent is
sun4m_412 still being "current" for sun4m_413, etc.
since the rxk listener gets "kill"d at shutdown we need to unmask to wake
it up. this should probably be replaced but the logical way is evil,
involves simulating a packet to the listener so it wakes up and notices it's
time to die
====================
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.
====================
with modifications by shadow@dementia.org
a guide to what's where in the OpenAFS source
this time the right file. a sure sign that it's bedtime.
====================
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.
====================
redo in a way that doesn't screw up with respect to libafsrpc and libafsrpc-
using suites
====================
redo in a way that doesn't screw up with respect to libafsrpc and libafsrpc-
using suites
Also include a patch that make sure that data are alligned on alpha. All
bsd's will fix it up in kernel when used, but you'll get a huge performace
penalty
Use afs_int32 in the des programs to make sure they work and make them
build again.
This patch should protect Rx-based servers from half-reachable clients,
which issue requests but don't acknowledge the server's response, thereby
eventually tying up all of the server threads, and denying service to all
other clients. Such clients can arise in case of uni-directional routing
failures, whereby all packets from the server to client are lost but not
the other way around.
The idea it to ping clients (using Rx ack ping) before attaching them to
a thread, if (a) we're running low on threads, and (b) the client hasn't
responsed to a ping recently.
make alpha AFS_64BIT_ENV
Avoid warning by not passing data inside a pointer in the test program rw.
Provide compatibility symbols for those w/o preempt hack so its possible to
link test program `rw'.
When comparing to lwp_cpptr->statcheck, cast to int, since that is the type
of lwp_cpptr->statcheck. It may be the case that sizeof(int) !=
sizeof(afs_int32), but then other things will break too.
clean tests with -f
====================
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.
====================
====================
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.
====================