Commit Graph

283 Commits

Author SHA1 Message Date
Tom Keiser
87e748f20d cblater-hold-lock-on-broadcast-20050411
avoid race from not holding lock around fsync_cond broadcast
2005-04-11 19:10:58 +00:00
Tom Keiser
4bf562265c hid2client-write-lock-20050403
FIXES 17867

h_ID2Client currently returns a client struct with a shared lock. The
only caller of h_ID2Client (SRXAFS_FlushCPS) immediately calls
BoostSharedLock. This patch just goes ahead and makes h_ID2Client return
it with the write lock so we don't enter the Lock struct mutex multiple
times in a row. This also happens to remove the last reference to
BoostSharedLock in the tree.
2005-04-03 21:09:53 +00:00
Derrick Brashear
706530c295 openafs-kill-dead-code-20050403
Code ifdef'd any of AFS_MACH_ENV, AFS_GFS_ENV, AFS_DEC_ENV dies

Code ifdef'd AFS_SUN_ENV either becomes AFS_SUN5_ENV or dies as appropriate,
in the kernel only. The database servers etc are probably still buildable,
and I still have a SunOS 4.1.4 machine. ;-) But the Solaris vnops get all
SunOS 4 code nuked.

Uses of AFS_ALPHA_ENV which secretly meant OSF/1,D/UX,Tru64 become
AFS_OSF_ENV.

Bozon lock use gets its own ifdef. OSF and Solaris define it. Darwin and any
BSDs have bozon lock usage removed: note that only OSF and Solaris were
bothering to *init* the bozon lock during NewVCache. Bozon locks are for
platforms where basically we could end up deadlocking ourselves because of
how locks are handled.

Some nonsensical ifdefs removed.
Some if 0'd code removed.
Some obsolete code (hpux pre-10, for instance) removed.
2005-04-03 19:09:05 +00:00
Jeffrey Altman
0b90d69f8a windows-pcache-20050310
This patch applies all of the work done to add persistent cache support,
cache manager debugging, and a variety of bug fixes.  A full description
will be committed within doc/txt/winnotes as part of a later commit.
2005-03-11 05:33:12 +00:00
Love Hörnquist-Åstrand
248d5402fe fake-admin-on-create-file-20050228
pass back admin in status bits for create file
2005-02-28 20:18:11 +00:00
Derrick Brashear
c9b63162b6 cblater-protection-and-paranoia-20050225
with additional fix from jaltman for case where we need to get a fresh fe.
don't reuse FE_LATER file entries.
2005-02-25 19:49:10 +00:00
Jeffrey Altman
e697e7bd13 fe-clear-status-on-reuse-20050225
jeff pointed this out yesterday, it may fix more than he guessed.
2005-02-25 17:42:17 +00:00
Derrick Brashear
89d655566f tviced-log-thread-at-high-loglevel-20050224
if loglevel > 999, log thread id as part of logging
2005-02-24 15:21:28 +00:00
Derrick Brashear
0801ce99b7 fix-uae-20050223
make uae flag not secretly overflow hostFlags
2005-02-24 04:44:59 +00:00
Derrick Brashear
d9e55baca1 fs-busy-stats-20050113
add support for counting number of vbusies returned
2005-01-14 03:03:27 +00:00
Derrick Brashear
0a872abd75 largefile-efbig-20050113
FIXES 16964

return EFBIG instead of E2BIG
2005-01-14 01:04:13 +00:00
Rainer Toebbicke
e496140274 lih-host-hold-20050113
FIXES 17211

"lih_r now leaves the current lih_host held, and h_Releases those for which
it changed mind during h_Enumerate. It also closes the window that
ClearHostCallbacks_r opens.

The problem was: due to the leak on the h_Hold table, rx connections and
host and client structures stopped being garbage collected once the
fileserver went through GetSomeSpace_r. Only relevant for "busy" servers,
many would never even invoke this routine."
2005-01-13 23:55:27 +00:00
Chaskiel M Grundman
08af3229f3 callback-rxcon-use-safely-20041108
FIXES 15973

add get/put refs to all callback rxconn usages to preclude any possibility of race
2004-11-08 06:04:12 +00:00
Derrick Brashear
a3da9532a9 inlinebulk-put-ref-on-error-20041028
if we got an error during InlineBulk, put back the reference
2004-10-28 21:46:42 +00:00
Derrick Brashear
2fbfef7f91 drop-h-lock-around-putconn-20041027
the problem with rx_PutConnection is h_FreeConnection uses the host global lock

====================
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.
====================

the problem with rx_PutConnection is h_FreeConnection uses the host global lock
but it shouldn't matter (callback conn should be a client not server conn and
thus not h_FreeConnection on cleanup)

further, we should free the conns we GetConnection'd not the ones still in
the host struct at the end.
2004-10-28 19:08:06 +00:00
Chaskiel M Grundman
8be8a671c5 h-tossstuff-r-leak-20041013
don't leak host hash objects in h_TossStuff_r
2004-10-13 17:29:36 +00:00
Derrick Brashear
d98a0af85d viced-callback-lock-host-during-multi-breakcallback-20041011
since it looks like CheckHost is using a gc'd client conn, this more or less has to be it.

====================
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.
====================

since it looks like CheckHost is using a gc'd client conn, this more or less has
 to be it.

and don't deadlock.

====================

since it looks like CheckHost is using a gc'd client conn, this more or less has
 to be it.

and don't deadlock.

====================

since it looks like CheckHost is using a gc'd client conn, this more or less has
 to be it.

and don't deadlock.
2004-10-11 19:39:55 +00:00
Jeffrey Altman
24da12afa3 time_t-pointer-conversions-20040908
FIXES 15169

Modify all parameters to functions which take a pointer to time_t
to actually provide a pointer to time_t instead of pointers to long,
afs_int32, afs_uint32, etc.

This is to provide compatibility with systems that use 64-bit time_t
typedefs such as the IBM compilers for AIX and the Microsoft Visual
Studio 2005 compiler.

This patch does not address any of the issues of data loss caused
by converting 64-bit time_t to 32-bit signed or unsigned values.
2004-09-08 22:35:33 +00:00
Derrick Brashear
c50f171f2c findclient-print-stolen-clients-20040805
when a client is "stolen" due to a race, print it.
2004-08-05 15:48:09 +00:00
Derrick Brashear
b0161198cf callback-rxcon-move-20040602
FIXES 4891

apply it disabled in the fileserver, but provide mech for client to suggest a particular IP address to the fileserver

====================
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 4891

apply it disabled in the fileserver, but provide mech for client to suggest a pa
rticular IP address to the fileserver

====================
FIXES 4891

apply it disabled in the fileserver, but provide mech for client to suggest a pa
rticular IP address to the fileserver

====================
FIXES 4891

apply it disabled in the fileserver, but provide mech for client to suggest a pa
rticular IP address to the fileserver
2004-06-02 09:43:02 +00:00
Ken Hornstein
1757180dab fileserver-no-longer-asserts-when-read-past-EOF-20040413 2004-04-13 21:41:11 +00:00
Derrick Brashear
819a0a44fe viced-dont-atoi-NULL-20040324
FIXES 3726

check argument number when processing args at startup
2004-03-24 17:36:57 +00:00
Nathan Neulinger
5cef3a3fca viced-revert-EIO-and-instead-use-zero-length-20040311
FIXES 3594

this was the other considered approach, i'm unsure why it's needed,
but we'll play along for now.
2004-03-11 07:15:52 +00:00
Derrick Brashear
526c586898 fs-return-EIO-when-starting-read-beyond-EOF-20040202
FIXES 1493

large file support asserted when attempting to read beginning past
the end of the file
2004-02-03 05:43:23 +00:00
Tom Maher
bb236704d3 acquire-fsync-lock-inside-while-loop-20040202
FIXES 3205

in order to not violate the invariant that pthread_cond_timedwait be called
with a locked mutex, we must relock if we unlock.
2004-02-03 04:53:43 +00:00
Jeffrey Altman
3dc648d761 add-missing-return-values-20031207
Add missing return values producing warnings on Windows
2003-12-08 01:45:23 +00:00
Jeffrey Altman
21caaae64f ticket-2618-patches-20031207
TICKET 2618

flexelint patches for prototype handling from Joe Beuhler

>>>>>>>>>>>>>>>>>>>>>>>>>>>>

This patch adds a bunch of missing prototypes, makes various
corrections to global prototypes, and removes global declarations that
are not needed.

One set of added prototypes is commented out because it applies to
some printf-like functions that are implemented the way it used to be
done before varargs existed, and they need to be unprototyped or the
code will fail to compile.  (There are a number of functions in the
OpenAFS code that need to be converted to use varargs...)

There is one place of note in src/WINNT/afsd/fs.c where typedefs for
afs_int32 and afs_uint32 conflict with afs/stds.h.  I just added a
note to that effect.

Prototypes in src/WINNT/afsd/fs.c are incorrect for Windows NT.  I
don't know whether the return type involved changes from platform to
platform -- they come from .xg files.

Some prototypes are now commented out or #ifdef'd to match the code
that uses them.

Some global variables conflict between modules and have been made static.
The bufferBlock variable was of two completely different types...

In src/config/stds.h, I changed the declaration of afs_intmax_t to
reflect the fact that the Windows platform supports 64 bit integers.
This may be incorrect semantically, but I believe it is needed for the
%llx format to match afs_intmax_t arguments (for printing of inodes
mainly, I believe).

There were two different declarations for the rxkad_stats structure --
I synced them up.

- Joe

Removed the conflicting typedefs from src/WINNT/afsd/fs.c

Removed the changes to src/config/stds.h.  Added declaration of
AFS_64BIT_CLIENT to src/config/NTMakefile.i386_nt40 instead.

Do not remove unused variables which are defintions of data type
values.  Instead comment them out to avoid space utilization and
warnings.
2003-12-07 22:49:00 +00:00
Derrick Brashear
1c5a7b4ea1 rpc-rename-avoid-loop-20031201
enumerated solution (n vnodes cannot yield n+1 loop passes) suggested by
jhutz@cmu.edu. avoid looping forever on a corrupt parent.
2003-12-01 20:16:02 +00:00
Jeffrey Altman
fc7931f4f2 joe-beuhler-patches-20031122
Joe Beuhler's many patches merged into the tree
2003-11-23 04:52:52 +00:00
Jeffrey Altman
98544e6ab4 patch-from-shadow-to-jaltman-bkbox-20031120
This massive patch contains changes in several significant areas for Windows:

- the ability to specify the mount point to be something other than /afs

- functionality to assist debugging of the NT Services

- support for languages other than English (NTLang.bat)

- revisions to the Build system to support separate trees for src, obj,
  dest and free or checked; allow any MS compiler to be used

- updates to NSIS installer build

- mutex locking added to critical locations

- updates to IS5 directory tree creation

- update to afswsNetscape_config.sh
2003-11-21 07:59:35 +00:00
Garry Zacheiss
63ba8d77fb callbacks-later-locking-order-20031117
be consistent in the order we hold H_LOCK and FSYNC_LOCK;
in this case acquire FSYNC_LOCK as needed.
2003-11-17 23:21:52 +00:00
Derrick Brashear
4458dd4410 callback-rxcon-protection-20031114
FIXES 2498

        CheckHost() sets the HOSTDELETED flag on a host, does its
        touch, calls H_UNLOCK at the end of its function;
        AddCallBCal1 in a different thread grabs the lock, does its
        thing.  Gets to GetSomeSpace_r(), which calls
        h_Enumerate_r; the host in question isn't held, so
        h_Enumerate_r calls h_Hold_r and h_Release_r on the host
        that CheckHost() set the HOSTDELETED flag on; h_Release_r
        sees the HOSTDELETED flag and calls h_TossStuff_r, poof, we
        have our broken host entry for ClearHostCallbacks_r to trip
2003-11-15 03:08:10 +00:00
Ed Moy
e2e93aa892 macos103-20031024
FIXES 2325

support for macos 10.3 for 1.2.10
2003-10-24 07:25:58 +00:00
Love Hörnquist-Åstrand
5d4f88c5c3 fsync-wait-typing-mistake-20030924
FIXES 2155

correct refs to fsync_wait
2003-09-24 19:54:10 +00:00
Derrick Brashear
c5b9483a47 callbacks-later-remove-lhs-cast-20030915
FIXES 2100

lhs cast illegal, some compilers barf, remove it.

====================
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 2100

lhs cast illegal, some compilers barf, remove it.
this time commit the correct patch
2003-09-22 20:19:21 +00:00
Robert S. Murawski
c1157da616 winnt-build-cleanup-20030825
include unified afs error support for winnt. removed dup'd code.

supports building an installer with NSIS

====================
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.
====================

include unified afs error support for winnt. removed dup'd code.

supports building an installer with NSIS

remove orphaned osi_malloc header ref

====================

more updates. make libadmin build, fix dependancies for unified_afs,
copy rxstat header out during build

====================

fix NSIS installer build paths
clean up base64 support for nt
clean up int64 support in volser

====================

more updates. make libadmin build, fix dependancies for unified_afs,
copy rxstat header out during build
2003-08-26 04:03:32 +00:00
Derrick Brashear
8f00fdfd5f reindent-again-20030808
FIXES 1774

catch things which crept in. if emacs hadn't started ignoring my code
formatting settings this would suck so much less....
2003-08-08 22:54:30 +00:00
R. Lindsay Todd
08db75c196 large-file-support-20030808
FIXES 1493

large file support in the fileserver, again
2003-08-08 21:40:42 +00:00
Kevin Coffman
0a0ba24b62 viced-vlserver-rpc-proto-20030808
FIXES 1835

add prototype for vlserver function to stifle warnings on aix
2003-08-08 21:22:11 +00:00
Nickolai Zeldovich
5227918cb9 fix-indent-bug-with-lock-macros-20030729
Add trailing semicolons to lock/unlock macro invocations to make
indent do the right thing, and re-indent.
2003-07-29 19:58:19 +00:00
Derrick Brashear
872bc94f8c reindent-20030715
FIXES 1774

thanks to nneul@umr.edu for providing a script to do this.
gnu indent 2.2.9 options:
-npro -nbad -bap -nbc -bbo -br -ce -cdw -brs -ncdb -cp1 -ncs -di2 -ndj -nfc1
-nfca -i4 -lp -npcs -nprs -psl -sc -nsob -ts8

====================
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 1774

fix subst mistake
2003-07-16 00:28:24 +00:00
R. Lindsay Todd
4dd74ef182 splint-support-20030701
FIXES 1493

add splint support targets to makefiles
add support files
2003-07-02 02:03:17 +00:00
Nathan Neulinger
8236e418cc more-warnings-and-prototyping-work-20030619
FIXES 1816

abstracted from work by toddr@rpi.edu
2003-06-20 01:40:15 +00:00
Chaskiel M Grundman
bc9ff0f640 windows-file-versioning-20030619
FIXES 1488

It adds:

- the binary version of the file version/productversion, which the MSI
engine sort of want files in MSI packages to all have. This requires
another variable to be maintained in NTMakefile.i386_nt40 (Please don't
change the value from 1,2,910,0 to 1,2,9,1 or something like that. The last
number group in the version is considered completely insignificant by some
things)
- some file typing, which I don't know if anything cares about
- Some new items in the stringfileinfo table, (InternalName and
OriginalFilename) without which explorer won't show use the version info in
constructing tooltip text.
- Actually setting ProductVersion and FileVersion to something real
- Language codes, which the MSI engine also wants
2003-06-19 20:00:31 +00:00
R. Lindsay Todd
befd22d01d logging-changes-for-large-files-20030619
FIXES 1493

create afs_vsnprintf. use it in FSLog. add new types which are intmax and uintmax,
32 or 64 bit as needed.. some casting.
2003-06-19 18:35:44 +00:00
R. Lindsay Todd
df3dbd1578 splint-fileserver-volserver-cleanup-20030602
FIXES 1493

add "make splint" target for viced, vol, volser and clean up for splint
2003-06-02 15:35:59 +00:00
R. Lindsay Todd
a04ba28f72 largefile-2nd-try-base-work-20030602
FIXES 1433

another try at largefile support. macroize so things can be easily cut over
2003-06-02 15:27:54 +00:00
Jeffrey Hutzelman
e011b31bfa syslog-tags-20030515
FIXES 1266

include a program tag in syslog output
2003-05-29 19:03:14 +00:00
Nathan Neulinger
f1198f411f stifle-valgrind-20030515
FIXES 1379

shut up valgrind on zeroing allocations
2003-05-15 18:10:39 +00:00
Derrick Brashear
76832e229e mapname-allocate-enough-space-for-pr-nametoid-20030505
the alternative is to crash when we get a foreign user here
2003-05-05 16:40:25 +00:00
Jim Rees
1c67a70709 proto-20030425
add missing prototype for ClearHostCallbacks_r()
2003-04-25 16:54:48 +00:00
Nickolai Zeldovich
5c8d5da460 uae-dont-translate-zero-20030424
Leave a zero return value as zero, rather than translating to UAEMEDIUMTYPE.
2003-04-24 20:21:31 +00:00
Rainer Toebbicke
05be212fea viced-shutdown-avoid-deadlock-20030424
don't deadlock on H_LOCK if we need to shut down in an emergency
2003-04-24 14:37:15 +00:00
Derrick Brashear
ddd9554560 pass-pointers-for-uuid-printing-20030422
pass pointers for uuid string building
2003-04-22 06:27:17 +00:00
Love Hörnquist-Åstrand
3ab4af08ac viced-file-readonly-fs-support-20030408
add missed curly braces so VannilaUsers don't get EACCES
2003-04-08 22:38:18 +00:00
Derrick Brashear
f40a6356f7 h-gethost-r-race-20030401
FIXES 1308

don't deref null identP if code was -1
2003-04-07 21:11:35 +00:00
Derrick Brashear
dd517125c2 flushhostcps-20030407
make it so flushhostcps can't try to Release when no host was found,
which was apparently the problem dlc@cs really observed.
2003-04-07 18:38:56 +00:00
Derrick Brashear
5967b22698 h-gethost-r-race-20030401
FIXES 1308

Thanks to Chaskiel Grundman for explaining what was happening:
- the connection is old and pre-existing, but has no host structure.
- 2 calls come in
- the first one enters h_GetHost_r, and h_Lookup_r returns null (but identP is
non-null, since rx keeps it around until it gc's the connection)
  The first thread calls WhoAreYou, which succeeds, it then calls
InitCallBackState3 (after H_UNLOCK) note that the host has been inserted into
the hashtable
- the second thread enters h_GetHost_r, and calls rx_GetSpecific. it then
calls h_Lookup_r. h_Lookup_r will block (new host is locked), but eventually
returns the new host
- InitCallBackState3 returns, and the frees the old identP, replaces it, and
unlocks the host.
- the first thread returns from h_Lookup_r. boom.

the changes:
-call rx_GetSpecific after h_Lookup_r returns (and potentially slept)
-removes an if wrapping which always is true (since !interfValid is always
 true)
-don't realloc identP if it exists
-don't free an old one by calling rx_SetSpecific either
2003-04-02 01:22:16 +00:00
Nathan Neulinger
73b4283116 revert-large-file-support-20030328
FIXES 1341

sadly there are problems. how long before this comes to the fore again
i don't know.
2003-03-28 09:35:53 +00:00
Daryl Clevenger
665e86f6fc flushhostcps-init-held-20030328
init held so flushhostcps is more useful.
2003-03-28 09:21:13 +00:00
Jim Rees
668e5d7ef5 fix-my-screwup-20030318
Back out my last unnecessary "fix."
2003-03-18 14:30:48 +00:00
Love Hörnquist-Åstrand
4f35fbb680 viced-vbusy-when-getclient-fails-20030317
more paranoia to not crash if GetClient fails, since there's apparently a
race we haven't found yet
2003-03-18 03:54:51 +00:00
Jim Rees
6f7795fc9f fix-errnos-20030317
Put non-unix errnos inside of #ifdef __linux__.
This should be a temporary fix, waiting for real fix from Derrick.
2003-03-17 17:26:22 +00:00
James Peterson
5df76f7321 windows-build-updates-20030314
support for V6.0 and .Net complier, compile from either NT4.0 or XP
Source and object are separated into different directories.  The directory
tree would look as follows:

Base from %AFSROOT% environment variable
%AFSROOT%\src\... - all source and generated source
%AFSROOT%\obj\checked\... objects from a checked build
%AFSROOT%\obj\free\...    objects from a free build
%AFSROOT%\obj\dest\checked\...  DEST folder from a checked build
%AFSROOT%\obj\dest\free\....    DEST folder from a free build

Before you start the build, you must build an object tree by issuing the
following:

nmake -f NTMAKEFILE mkdir

====================
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.
====================

support for V6.0 and .Net complier, compile from either NT4.0 or XP
Source and object are separated into different directories.  The directory
tree would look as follows:
2003-03-14 20:11:44 +00:00
Douglas Engert
47df7e9f3a hpux11i-20030310
Support for HPUX110
2003-03-10 20:02:35 +00:00
Derrick Brashear
4f33d5b428 cbd-all-flag-in-usage-20030310
cbd supports -all; put it in usage.
2003-03-10 16:11:49 +00:00
Derrick Brashear
863b113a4d cleanup-licensing-and-transarc-references-20030309
tired? on a plane? need some mindless (maybe that's mind-numbing) stuff
to work on? clean up licensing and references in code comments. it's big fun.
2003-03-10 01:59:12 +00:00
Derrick Brashear
35f1dec615 afs-error-translation-update-20030306
make it vaguely useful. still need client side

====================
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 it vaguely useful.
now with client side(tm)

====================

make it vaguely useful.
now with client side(tm)

====================

make it vaguely useful.
now with client side(tm)
2003-03-06 17:11:22 +00:00
Derrick Brashear
c4a1aeaf8c initial-error-translation-implementation-20030306
client still needs to "untranslate", and the error tables themselves need
to be defined and the server-side array populated
2003-03-06 15:43:56 +00:00
Derrick Brashear
2712c1202a capabilities-20030304
need to remove dummy capability, but otherwise this is the rpc part.
2003-03-04 16:19:46 +00:00
Derrick Brashear
4484c4d971 flushhostcps-byte-order-20030304
at insistence of lha@stacken.kth.se
2003-03-04 15:42:23 +00:00
Harald Barth
8d27129f4d viced-debug-log-which-thread-package-we-are-20030304
log "pthreads" or "LWP" started
2003-03-04 14:49:09 +00:00
Harald Barth
025ec7bf79 viced-set-fssync-threadid-20030304
set a thread id for the fssync callback thread
2003-03-04 14:46:04 +00:00
Derrick Brashear
c240e56bc6 update-giveupallcallbacks-20030304
fix logging.
2003-03-04 12:53:07 +00:00
Love Hörnquist-Åstrand
41918aaf5a viced-abort-threshhold-20030303
allow abort threshhold to be set by switch
2003-03-04 11:26:40 +00:00
Derrick Brashear
30f3ae458c new-giveup-all-callbacks-rpc-20030303
untested. will try it shortly. allow a client to give back all of its callbacks
without enumerating them
2003-03-04 11:14:13 +00:00
Derrick Brashear
1075b3c7f1 viced-callback-remove-dead-functions-20030303
remove ClearHostCallbacks; make ClearHostCallbacks_r static
2003-03-04 10:40:01 +00:00
Derrick Brashear
db942233a5 viced-vol-ansification-20030303
some more code ansified
2003-03-03 15:37:03 +00:00
Derrick Brashear
1e3319b049 viced-correct-probe-failure-message-20030228
based on complaint from haba@pdc.kth.se
2003-02-28 23:56:25 +00:00
Douglas Engert
e18dd8bc0f hpux-1122-updated-support-20030227
updated support for hp-ux 11.22
2003-02-27 17:27:25 +00:00
Derrick Brashear
a7fbdc7bcd viced-rewrite-breaklatercallbacks-20030218
FIXES 1309

deal with only a single volume at a time
2003-02-19 03:50:47 +00:00
Love Hörnquist-Åstrand
45a43078f0 viced-fix-port-logging-20030218
FIXES 1307

put port in correct byte order when logging
2003-02-19 02:21:35 +00:00
Derrick Brashear
6c308978e1 viced-host-logging-update-20030218
FIXES 1308

print info before letting host get gc'd
2003-02-18 08:03:09 +00:00
Derrick Brashear
6a1182d4bf viced-log-refd-client-while-deleting-20030215
if we gc a client with a positive refCount, log it. should probably log more
data.
2003-02-16 00:22:00 +00:00
Derrick Brashear
214c2e7b19 viced-allow-hinting-of-all-new-clients-for-vbusy-vrestarting-handling-20030215
For sites with only new (>3.4) clients (or who decide to not care
about older clients) and want to force VRESTARTING instead of VBUSY.
2003-02-15 14:17:15 +00:00
Derrick Brashear
825e7d57e7 viced-client-set-refcount-before-chaining-into-host-20030215
didn't find a race but it's safer this way if there's one i missed
2003-02-15 06:03:25 +00:00
Derrick Brashear
41351b5c2e viced-gethostcps-simplify-holds-20030215
all of our callers have a hold when we're called. get rid of the "get us a hold"
logic. do we need a lock?
2003-02-15 05:39:16 +00:00
Derrick Brashear
701a750415 viced-consistent-val-and-len-cleanup-20030215
just so we don't leave things inconsistent ever
2003-02-15 05:27:04 +00:00
Nickolai Zeldovich
3ef47cdfd2 avoid-client-connection-mismatches-20030213
Avoid asymmetry between rx connections and clients, such that one
points at the other but the other doesn't point at the first one.
This can sometimes happen with hosts that change addresses/ports.
2003-02-14 01:14:10 +00:00
Derrick Brashear
49e4a9d3b0 callbacks-later-cdel-fix-20030213
if something else ends up trying to e.g. break delayed callbacks over the same
callback that we're playing with in break later callbacks, the manipulation in
CDelPtr becomes important
2003-02-13 22:28:38 +00:00
Derrick Brashear
0e3380edae host-tossstuff-require-unlocked-20030211
add warning and don't clean up if host is locked. shouldn't be able to happen

====================
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 1294

and make it useful
2003-02-13 06:44:28 +00:00
Derrick Brashear
5e2dc3d41c viced-check-all-malloc-returns-20030208
log something and assert if malloc fails
2003-02-08 07:30:04 +00:00
Derrick Brashear
1e4b22a9f5 callback-interfaces-check-malloc-result-for-error-20030208
if we run out of memory, maybe we should assert. we should probably log.
this is just so i remember to deal better.
2003-02-08 06:43:26 +00:00
Rainer Toebbicke
ea4f1a80d7 rx-assign-thread-id-key-to-periodic-helpers-20030117
so each gets own holdbits
2003-01-17 18:13:19 +00:00
Derrick Brashear
2e3678c882 viced-getclient-assert-logging-20030117
log some more info before asserting
2003-01-17 07:39:28 +00:00
Derrick Brashear
12eb511d45 viced-improved-host-logging-20030117
to deal with condition reported by lha@stacken.kth.se
2003-01-17 06:21:37 +00:00
Nickolai Zeldovich
14c5be99b6 callbacks-later-linked-list-fix-20030114
the linked list code was never updated for multiple passes when we
started doing that.

====================
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.
====================


the linked list code was never updated for multiple passes when we
started doing that.
2003-01-15 00:28:46 +00:00
Derrick Brashear
cff9ae0f10 viced-alloc-hosts-held-and-locked-20030114
to avoid potential race as we chain in while allocating then try to lock
after returning to h_GetHost_r
2003-01-15 00:21:08 +00:00
Derrick Brashear
c52ddf77fa viced-junk-unused-functions-20030114
more cleanup of fileserver
2003-01-15 00:10:10 +00:00
Nickolai Zeldovich
eff534794e Improved signal-thread support for the pthread fileserver,
which avoids blocking signals in any thread, to appease Linux's
thread signaling semantics.
2003-01-14 01:20:03 +00:00
Nathan Neulinger
580af44321 makefiles-cflag-cleanup-20030111
move cflags back to makefile.config, more cleanup, dup removal
2003-01-11 07:33:52 +00:00
R. Lindsay Todd
800b103f0a fileserver-largefile-support-20020109
Fix compile problems for 64BIT_ENV with large files turned off
2003-01-09 19:16:50 +00:00
R. Lindsay Todd
a038124edc fileserver-largefile-support-20020107
fileserver-side large file support
2003-01-07 23:38:02 +00:00
Nickolai Zeldovich
d86a3e307e Create a special thread to receive signals in the pthread fileserver, in
order to avoid deadlock (we have signal handlers that unsafely grab locks).
2003-01-04 05:20:55 +00:00
Derrick Brashear
c9f2a72c91 fssync-interface-change-to-deal-with-callback-delays-20021204
move callback breaking into a separate thread

====================
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.
====================

the rest of it. somehow the original version of this was lost.

====================

the rest of it. somehow the original version of this was lost.

====================

the rest of it. somehow the original version of this was lost.
2002-12-04 16:52:53 +00:00
Jim Rees
bb66c6098b remove-prototypes-20021203
Remove prototypes from viced_prototypes.h.
2002-12-03 17:44:14 +00:00
Derrick Brashear
484d4b8588 viced-prototypes-inclusion-20021202
include prototypes header file
2002-12-03 02:03:42 +00:00
Jim Rees
63b85f21f5 fix-includes-20021202
Fix includes so the tree will build again
2002-12-02 13:39:46 +00:00
Derrick Brashear
3b95323f9f viced-make-send-buffersize-tunable-20021122
idea from chas williams. arguably should be made larger than 16k also.
2002-11-23 01:51:43 +00:00
Nickolai Zeldovich
f349e5b3fa Allocate memory for the interface addr arrays dynamically
to avoid potential overruns.
2002-10-30 09:10:16 +00:00
Derrick Brashear
dfaf556aea viced-cleanup-20021030
it all compiles nicely

====================
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.
====================

a little more cleanup

====================

a little more cleanup

====================

a little more cleanup

====================

a little more cleanup
2002-10-30 08:40:38 +00:00
Derrick Brashear
fac0740132 afsfileprocs-more-cleanup-20021030
finish ansification
take some functions internal
reorganize to avoid need for some prototypes
remove said prototypes
strip out some unused code
2002-10-30 07:06:46 +00:00
Derrick Brashear
e1f2501c4f viced-afsfileprocs-partial-protoizing-20021029
need to finish protoizing and create useful header
2002-10-30 00:12:15 +00:00
Derrick Brashear
511e067fd2 fileserver-host-interface-cleanup-20021029
get rid of HPCS macros from person who was confused

get rid of unused functions in host.c

convert to ansi func decls
2002-10-29 23:03:13 +00:00
Nathan Neulinger
190bc027de fileserver-readonly-support-20021028
so a fileserver can deny writes
2002-10-29 00:06:41 +00:00
Satish Kumar
ec5df8df8c fix-quota-calcs-with-unsigned-20021018
Change some ints to unsigned for correct quota calculation.
From Gregory via Satish Kumar.
2002-10-18 16:59:00 +00:00
Nathan Neulinger
782109a29b no-copy-libafs-builds-20021015
make things so file copies from src/libafs don't happen; change how libafs_tree is done
2002-10-16 04:58:13 +00:00
Derrick Brashear
5714e09b34 fileserver-cbs-raise-limit-by-killing-goofy-u-short-indexing-20021008
i probably missed something here.

====================
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.
====================

i did miss something. also, change FileEntry padding and axe useless comment

====================

try, try again

====================

once more with feeling

====================

make typing of the indexes into timeout[] match

====================

make struct CallBack a multiple of 32 bit so the weird math works again
2002-10-09 16:54:48 +00:00
Nathan Neulinger
729ec68bf6 handle-cow-differently-if-volume-wont-be-salvaged-20020930
as edited by shadow@dementia.org
2002-09-30 20:21:40 +00:00
Nathan Neulinger
697feb05a0 prototypes-empty-files-to-diff-against-20020826
literally empty
2002-08-26 22:04:48 +00:00
Nathan Neulinger
e4b7c9513e viced-prototypes-20020826
prototyping for viced/callback.c
2002-08-26 16:46:32 +00:00
Derrick Brashear
8e66ec5e01 prototypes-fixes-20020821
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.
====================

and cast all the pointers
2002-08-22 19:45:11 +00:00
Nathan Neulinger
0ca7613ac4 viced-provide-way-to-not-retraverse-hostlist-20020821
based on thomas muellers patch
2002-08-21 21:32:19 +00:00
Jeffrey Hutzelman
808369b969 sunos4-port-20020821
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).
2002-08-21 20:19:28 +00:00
Nathan Neulinger
8f2df21ffe pull-prototypes-to-head-20020821
pull up prototypes to head
2002-08-21 19:52:17 +00:00
Nickolai Zeldovich
847a5af3be 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.
2002-08-20 22:39:31 +00:00
Richard Basch
30433f36a9 Update_TargetVnodeStatus() checks and strips setuid bits for non admin
clients; it should do the same thing for setgid files.
2002-06-22 05:32:45 +00:00
Richard Basch
a0d69dfa39 Don't give directory owners any implicit rights. Volume owners still
have their implicit rights.
2002-06-12 18:06:45 +00:00
Derrick Brashear
bbab909436 viced-malloc-dont-make-assumptions-about-the-compiler-20020524
based on report from lha@stacken.kth.se
"identP = (struct Identity *)malloc(1);

This can't be right, there should not be an assumption how the
c-compiler will lay out code. I find it acceptable to do something like this

	   /* sizeof valid + offset of valid. */
	   i.. = malloc(sizeof(identP->valid) + (int)&(((struct Identity *)0)->valid));

But then, why not just allocate a whole identP and be happy. A afsUUID
is not that bloted (16 bytes) so I can't see why way this is
chosen. 20 bytes will probably be allocated on 32 bit platforms for
the whole struct Identity.

"
2002-05-24 23:05:47 +00:00
Derrick Brashear
ee798e49f2 viced-cleanup-dirhandle-references-after-ourselves-20020509
doesn't fix any problem that i can find, but results in ihandles not
having thousands of bogus references (and may fix problems if refcnt were to wrap)
2002-05-09 16:56:46 +00:00
Nickolai Zeldovich
27595ffcd9 The heldp argument to h_Lookup should be an int* rather than int,
as pointed out by amu@alum.mit.edu.
2002-04-22 18:16:16 +00:00
Nickolai Zeldovich
d4493526a7 Make h_Lookup_r return the host held, and ensure that it's not
deleted at that point; otherwise, the host may be deleted by
another thread between a call to h_Lookup_r and the time when
we actually get around to h_Hold'ing it.
2002-04-15 22:36:00 +00:00
Nickolai Zeldovich
c4ac62f829 Clean up some more ViceLog calls to consistently refer to hosts in a
format like 18.239.2.102:7001, rather than memory address or hex IP.
2002-03-24 23:39:01 +00:00
Love Hörnquist-Åstrand
a5cb7c256b rxgen-prototypes-fixes-20020310
prototype fixes as fallout from rxgen header prototypes

emit server stubs which include header as well
2002-03-10 19:07:56 +00:00
Nickolai Zeldovich
571f314329 viced-call-safss-functions-with-acall-not-tcon-20020307
based on report from mattiasa@e.kth.se who has the following feedback from
lha@e.kth.se:
Patch from Love to make filserver not loop on MUTEX_ENTER() in
  rx_SetSpecific()
2002-03-08 06:08:05 +00:00
Nathan Neulinger
676a493f5b Really apply improve-type-safety-and-prototype-matching-20020226.
Somehow only the first 128K of afsfileprocs.c got copied over before.
2002-02-26 23:35:26 +00:00
Nathan Neulinger
864edcbc52 Make the SRXAFS_* functions match prototypes by taking an
rx_call instead of rx_connection, and make CallPreamble()
type-safe by taking two arguments instead of magically
turning an rx_call into rx_connection.
2002-02-26 23:26:36 +00:00
Nickolai Zeldovich
feb689396c 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.
2002-02-22 08:58:20 +00:00
Chaskiel M Grundman
bd707fb7e6 freebsd-almost-working-client-20020216
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)
2002-02-16 18:23:44 +00:00
Nathan Neulinger
9a6dbb4df7 viced-printinode-returns-string-not-number-20020212
based on feedback from ota@transarc.com

PrintInode returns a string, use it
2002-02-13 04:00:57 +00:00
Hartmut Reuter
b7b1788424 viced-callback-avoid-potential-looping-problem-20020201
avoid case where we never come out of loop attempting to clear host cvallbacks
2002-02-01 22:12:51 +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
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
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
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
Nickolai Zeldovich
3aaaa28ba8 viced-clear-clientdeleted-when-deleted-clients-are-cleaned-up-20011102
Currently nothing clears the CLIENTDELETED flag in hosts, so once
  a client has been deleted, h_TossStuff_r() will keep getting called
  with every host release.  This patch clears the CLIENTDELETED flag
  every time we take care of deleted clients.
2001-11-02 07:57:12 +00:00
Nathan Neulinger
838e1eae1a build-system-specific-makefile-configuration-from-configure-20011031
junk all of Makefile.${SYS_NAME} in favor of a common makefile built by
configure, and use it
2001-11-01 04:59:26 +00:00
Hartmut Reuter
971b18bc42 client-64bit-file-size-support-20011031
new RPCs and client-side support for large files
2001-11-01 04:01:22 +00:00
Eric Lauriault
367c2856e8 sunx86-support-20011017
base sunx86 support for newer than solaris 2.4
2001-10-18 00:36:02 +00:00
Nathan Neulinger
b9948dd965 initial-objdir-support-20011017
first cut at objdir support
2001-10-18 00:06:58 +00:00