Commit Graph

778 Commits

Author SHA1 Message Date
Nickolai Zeldovich
0d9cabad65 linux22-also-alloc-avoid-potential-recursion-freeing-memory-and-schedule-when-vmalloc-fails-20011229
linux 2.2 lacks set_current_state. currently in 2.4 it's a definition and not a real function, so this will work
2001-12-30 00:07:02 +00:00
David Howells
c1d2386e44 linux-alloc-avoid-potential-recursion-freeing-memory-and-schedule-when-vmalloc-fails-20011225
"The first is to change the gfp_mask passed to kmalloc(). Using GFP_KERNEL,
  it is possible that the VM will call back to the filesystem to free up
  memory to satisfy the kmalloc request. GFP_NOFS will prevent this possible
  recursion. I believe GFP_NOFS first appeared in the 2.4.6 kernel.

  The second change involves the call to schedule() when vmalloc() fails. This
  can also cause a hang. The schedule() call could be replaced with:

  set_current_state(TASK_INTERRUPTIBLE);
  schedule_timeout(HZ);"
2001-12-25 18:19:20 +00:00
Nickolai Zeldovich
3ea10ea353 rx-avoid-unnecessary-wakeups-20011225
"This fixes a livelock condition introduced in my earlier
  resource starvation patch; apparently I had erred too far
  on the side of "wake up just in case".  The livelock bug
  is exhibited when running 10 fsstress processes at once;
  if many processes are waiting for a new Rx call, they get
  stuck in an uninterruptible kernel loop waking each other
  up."
2001-12-25 18:13:20 +00:00
Nickolai Zeldovich
28eefd7613 fix-dcache-deadlock-20011225
"This patch fixes a deadlock in the new dcache locking scheme.
  The underlying bug apparently existed before, but due to the
  absence of locking, it probably resulted in spuriously high
  refcounts rather than deadlock.

  The problem happens when there are zero-length dcache entries
  associated with a file; this is demonstrated by fsx, which
  hangs after running on AFS for a while.  The writeback loop
  never releases dcache entries unless they're stored back to
  the server as part of a sequential byte range."
2001-12-25 18:10:39 +00:00
Nickolai Zeldovich
fcda63bda0 fix-formatting-in-afs-h-20011225
minor formatting cleanup
2001-12-25 18:09:44 +00:00
Nickolai Zeldovich
96f340c532 dcache-dont-erroneously-fail-to-fill-in-tsmall-20011225
"The particular problem seems to be, when size
  is computed to be zero, tsmall is not filled in with valid data,
  and ProcessFS is called with a zeroed out OutStatus.  This causes
  the file to magically turn into a directory (VDIR), among other
  things"

"The second part of the patch doesn't fix any bug that I've ran into
  thus far, but seemed like a good idea while I was reading the code
  to find the former bug."
2001-12-25 18:04:52 +00:00
Derrick Brashear
4e02670a22 doc-heimdal-conversion-howto-20011224
short explanation of how to convert from a kaserver to a heimdal kdc
including setting up iprop
2001-12-24 21:19:07 +00:00
Nickolai Zeldovich
ddaf08d4b8 make-storedata-use-unsigned-values-so-quota-cant-get-corrupted-20011203
Currently it's possible to give StoreData negative Pos/Length/FileLength
  arguments and thereby set the volume quota usage to arbitrary values.
  This patch makes these values unsigned, since negative file positions
  and lengths don't make sense anyway.
2001-12-08 02:29:24 +00:00
Love Hörnquist-Åstrand
18f5f636dd rx-add-performance-testing-client-20011206
add rxperf with modified license which allows us to distribute it now
pending more useful OpenAFS documentation existing at some point in the
future.
2001-12-06 23:39:08 +00:00
Sam Hartman
c5cd875222 bosserver-dont-enforce-world-readability-on-server-etcdir-20011126
no reason server etcdir needs to be forced world readable; nothing need
default to those cellconfig files except in the localauth case and then
you need to be able to read the KeyFile anyway
2001-11-26 21:29:16 +00:00
Jeff Riegel
83873a8474 windows-afsdb-freelance-notes-20011120
notes from Jeff about AFSDB and Freelance clients
2001-11-21 18:29:16 +00:00
Nickolai Zeldovich
d99c35279d dcache-finegrained-locks-20011121
This patch implements more fine-grained locking for dcache entries.
The main advantage is that multiple chunks of the same file can be
fetched at once.  This means that an incorrectly-guessed prefetch
won't block other fetches, prefetches of multiple chunks can occur
in parallel, and multiple processes sharing the same file can read
from different parts of the file at once.
2001-11-21 16:01:19 +00:00
Yves Schutz
392ae5ce36 quote-modloaddir-when-looking-for-kernel-module-20011120
quote variable evaluation
2001-11-21 15:54:35 +00:00
Thomas Mueller
16b809cef2 linux-rc-make-ifconfig-speak-english-for-parsing-20011120
sadly the script is fluent only in english and can't even pretend it knows
anything else
2001-11-21 15:41:26 +00:00
Garry Zacheiss
74432508a7 bozo-make-logging-more-readable-20011120
add missing newlines
2001-11-21 15:36:43 +00:00
Nathan Neulinger
8b5438790d afs-trace-missing-dependancy-20011120
so when afs_trace.et updates the header gets rebuilt
2001-11-21 15:31:24 +00:00
Sam Hartman
a26794a25c ktc-dont-prototype-lseek-20011120
breaks sparc linux 2.2
2001-11-21 15:29:52 +00:00
James Peterson
6a0443bdcc windows-updates-20011121
missed updates needed for next release
2001-11-21 06:44:28 +00:00
Derrick Brashear
7d38c7fe58 afs-resetvolumes-zero-serverhost-to-avoid-deadlock-20011120
the equivalent of what's done in InstallUVolumeEntry to avoid a deadlock
but just for this server since it's all we're dealing with
2001-11-20 20:04:55 +00:00
Chas Williams
c53a034e36 viced-getstatus-clear-lengthhi-since-not-now-using-it-20011119
so we don't end up with bogus value here
2001-11-19 16:59:53 +00:00
Chas Williams
b460d29502 startrxafs-fetchdata64-always-show-result-and-EFBIG-at-7fffffff-20011119
show fetch64 errors
also mask high bit for reporting EFBIG
2001-11-19 16:58:02 +00:00
Chas Williams
cae92b082c viced-fetchdata64-should-call-common-code-in-64-mode-20011119
both of the stubs shouldn't be using the 32 bit case in common
2001-11-19 16:53:46 +00:00
Chas Williams
0a6069850a rx-sys-fix-broken-install-dependancies-20011119
this got broken in one of the sets of changes
2001-11-19 16:52:02 +00:00
Derrick Brashear
05c2a3e13a viced-add-missing-comma-in-64bit-detailed-stats-case-20011114
and due to no prototypes this slipped right on by
2001-11-14 23:59:57 +00:00
Garry Zacheiss
3f7e327718 bosserver-log-improve-readability-20011114
include newlines in boslog output
2001-11-14 17:39:30 +00:00
Nickolai Zeldovich
54f0650052 rx-fix-resource-starvation-problem-20011113
This patch fixes a resource starvation condition in Rx.  The
  problem arises, for instance, when more than 4 daemons try to
  prefetch chunks of the same file at once.  The fifth daemon is
  stuck in MAKECALL_WAITING state, never getting a chance to run,
  because the other 4 daemons never yield to the scheduler after
  releasing the call, and just grab the call back again.
2001-11-14 04:02:27 +00:00
Derrick Brashear
94bc1753e9 afs-cell-avoid-need-for-new-prototype-20011113
reogranize so we don't need to add a prototype

based on report from kolya@mit.edu
2001-11-13 20:31:31 +00:00
Derrick Brashear
cb99519f77 hold-afs-xcell-lock-during-setserverprefs-20011113
afs_RemoveCellEntry holds afs_xcell; setserverprefs modified the same
structure but did not which was problematic if something changed out from under
it
2001-11-13 17:24:05 +00:00
Hartmut Reuter
b2821b103c 64bit-client-mods-build-cleanly-20011113
necessary fixes for aix and solaris, plus fix for linux for when wake_up
doesn't wake the sleeper
2001-11-13 14:47:11 +00:00
Hartmut Reuter
b4e3729aae pam-include-limits-h-for-NGROUPS-MAX-20011113
pam module needs limits.h to build
2001-11-13 14:40:54 +00:00
Nickolai Zeldovich
85ccf89c5a nbobtainwritelock-fix-precedence-problem-20011113
NBObtainWriteLock always returned 0 due to precedence problem. Also
add NBObtainSharedLock
2001-11-13 13:14:06 +00:00
Nickolai Zeldovich
4916d4b422 rx-compute-ackdatasize-correctly-20011113
This patch clarifies the implicit 3 reserved bytes in rx_AckDataSize,
  and hopefully makes the code more portable for future platforms.
2001-11-13 04:59:22 +00:00
Chas Williams
5edece8304 irix-build-cleanup-20011113
make IP35 port select correctly. make pagsh build again
2001-11-13 04:52:26 +00:00
Chas Williams
da3a557c29 irix-PFLUSHINVAL-should-be-VOP-FLUSHINVAL-PAGES-20011111
Based on suggestions from gwehrman@sgi.com
2001-11-11 17:11:06 +00:00
Chaskiel M Grundman
0304373130 make-darwin-14-build-with-new-makefile-frag-system-20011110
head now builds on darwin 1.4; may not build in objdir env yet
2001-11-11 01:57:36 +00:00
Chaskiel M Grundman
bedb78b0b0 darwin-14-support-20011110
base support for darwin 1.4
2001-11-10 23:20:04 +00:00
Hartmut Reuter
c9d01b536d more-64bit-client-fixes-20011110
some afs_offs_t still missing
so obsolete code fixed
and new trace for m.Length change
2001-11-10 23:00:55 +00:00
Thomas Mueller
4c9808b25b use-NGROUPS-MAX-instead-of-constant-for-curpag-getgroups-call-20011110
NGROUPS_MAX instead of 30 used so we get all groups from getgroups
2001-11-10 22:36:45 +00:00
James Peterson
de99fc23d4 windows-updates-including-dont-lose-tokens-20011110
Win2k tokens association problems are fixed. details are in doc/txt/winnotes
in the 1.2.2a updates file
2001-11-10 22:31:04 +00:00
David Thompson
9d8b844b3e linux-afsd-allow-ext3-journals-without-error-20011110
an ext3 journal in the vice cache (root of the partition) is allowable

we have no useful way to discern ext2 from ext3 without groveling in fstab
so just allow it
2001-11-10 18:21:59 +00:00
Nickolai Zeldovich
db2ddfaf1b rx-dont-ackall-a-connection-were-waiting-for-retransmits-on-20011110
"My theory of what happened is roughly as follows:

    Process tries to read data from AFS (as part of a page fault);
    issues a new Rx call on an Rx connection to the fileserver.

    The server transmits some data back to the client, but some packet
    is lost.

    Something tries to garbage-collect/destroy the connection; since
    there is an active call, it can't do so, but issues an rx_AckAll
    anyway, which acknowledges all packets transmitted by the server
    as having been received.  Server flushes its retransmit queue.

    Client waits forever for the lost packet to arrive, but since the
    server has already flushed the transmit queue, it cannot possibly
    retransmit it.

All this is happening while the client has read-locked its address
space (since the read is part of a page fault).  /proc accesses that
try to poke into that processes address space hang waiting for said
lock, causing the lossage we actually observed."
2001-11-10 18:14:30 +00:00
Garry Zacheiss
7a012ce879 rx-deal-with-missed-keepalives-by-accurately-tracking-call-number-20011110
(as originally discovered by ted@mit.edu)

"This fix deals with the following lose case:
  Client starts a call that, for some reason, takes a long time on the
  server.  While the client waits for the server to finish, client and
  server usually send each other keep alive packets.  If something
  causes those packets to be delayed or dropped, then the client will
  conclude that the call has failed or finished (usually failed), while
  the server is still *busy* doing the call.

  In this circumstance, the client will initiate another call and the
  server will correctly respond that it is busy.  Unfortunately, if the
  callNumber of a received packet doesn't match the callNumber of the
  outstanding call, then the client never sees that the server says it's
  busy.  Instead the server appears as a black hole to the client.

  This fix ensures that the client sees the busy packets when its
  callNumber is reasonably out of sync with the server."
2001-11-10 18:08:40 +00:00
Chas Williams
b9d15d1b49 irix-memcache-dont-call-osi-vm-storeallsegments-20011110
this caused a call to pdflush to happen at the wrong time, which should fix
the zero filled files problem, the osi_assert(cred) problem and the
execsorwriters == 0 warnings to go away
2001-11-10 17:53:04 +00:00
Derrick Brashear
a781c8a5bf linux-kdump-also-work-with-early-24-kernels-20011108
yup, it had to come from somewhere. now it would compile with early and late 2.4 kernels
2001-11-08 08:12:59 +00:00
Nickolai Zeldovich
c32ee0e39d config-makefile-include-xcflags64-20011107
this was missed during the conversion
2001-11-08 03:02:08 +00:00
Garry Zacheiss
c602093e51 solaris-vfsck-do-a-better-job-of-putting-on-the-ufs-fsck-face-for-the-world-20011106
if you're not using ufs logging it's ok to replace solaris fsck with vfsck,
except sometimes it exits with 40 and that's not a failure to the solaris
scripts.

make it so for us also
2001-11-07 00:15:27 +00:00
Garry Zacheiss
3e9aa01a1c butc-allow-comments-in-tapeconfig-20011106
continue to allow extra column for comments as was previously (afs 3.4a) the case
2001-11-07 00:11:20 +00:00
Nickolai Zeldovich
0d4fd9fd66 afsdb-avoid-dns-case-issues-for-cell-aliases-20011106
This patch makes sure that in-kernel aliases to non-existant names aren't
  accidentally created due to case mismatch (e.g. "athena" being created as
  a symlink to "athena.MIT.EDU", while "athena.mit.edu" is the real cell
  that already exists).  It also lowercases cell names in AFSDB lookups,
  otherwise the same problem appears in userspace (eg "aklog athena" tries
  to obtain tokens for cell "athena.MIT.EDU").
2001-11-07 00:01:52 +00:00
Derrick Brashear
547ce13327 linux-kdump-kernel-also-has-timer-t-sigh-20011105
not the cleanest way of dealing, either
2001-11-05 19:43:47 +00:00
Derrick Brashear
13d279883a linux-kdump-timeval-probably-not-needed-20011105
not sure what needs this. if something does we need to figure out what
and only do this for them
2001-11-05 19:39:06 +00:00