Commit Graph

4347 Commits

Author SHA1 Message Date
Jeffrey Altman
377689b39a windows-dirty-buffer-optimization-20070808
when storing dirty buffers only store the bytes that are dirty

increase the default chunksize from 128KB to 1MB

remove OVERLAPPED field from cm_buf_t.  It was unused.

add a dummy pointer in order to ensure data structure compatibility
between the checked and release builds.
2007-08-09 06:33:17 +00:00
Jeffrey Altman
d51feff4b2 viced-hash-20070808
(1) fixes a bug that could cause a 'host' structure to not be removed
from the global host list if the 'host' did not possess an interface
list. This would happen with older AFS clients that do not support the
WhoAreYou family of RPCs. Windows clients older than 1.3.80 and old
Transarc UNIX clients.

(2) fixes a bug which could result in ViceLog being called with an
uninitialized 'hoststr' buffer as a parameter.

(3) ensures that only addresses known to belong to the 'host' are
added to the address hash table.  The list of addresses provided by
the client are stored as alternates and are only used when searching
for a client that is no longer accessible on the primary address.
These addresses are not stored in the address hash table within
initInterfaceAddr_r().

The addresses provided by the client should not be added to the hash
table because they have not been verified as belonging to the 'host'
that provided them.  The contents of the list may in fact be completely
unreliable.  Consider the existing UNIX clients that generate the list
at startup and never alter it even after the client has migrated to a
different network.  If two client's both claim the same address,
lookups by address may fail to find the correct one.

a. The client list might contain private address ranges which
are likely to be re-used by many clients allocated addresses
by a NAT.

b. The client list will not include any public addresses that
are hidden by a NAT.

c. Private address ranges that are exposed to the server will
be obtained from the rx connections that use them.

d. Lists provided by the client are not necessarily truthful.
Many existing clients (UNIX) do not refresh the IP address
list as the actual assigned addresses change. The end result
is that they report the initial address list for the lifetime
of the process. In other words, a client can report addresses
that they are in fact not using. Adding these addresses to
the host interface list without verification is not only
pointless, it is downright dangerous.

e. The reported addresses do not include port numbers and
guessing that the port number is 7001 does not work when
port mapping devices such as NATs or some VPNs are in
use.

(4) improves logging to ensure that all references to a 'host' structure
report both a memory address and the IP address/port. this will avoid
confusion *if* more than one 'host' structure is assigned the same
primary address.

(5) logs the UUID along with the client addresses when initializing the
host's interface list. (level 125)

(6) saves memory by using a smaller structure for the UUID hash table
2007-08-08 17:30:20 +00:00
Rainer Toebbicke
f099df38b2 viced-multi-probe-addr-20070808
FIXES 67355

MultiProbeAlternateAddress_r badly indexes the list of interfaces for
clients with multiple IP interfaces, resulting in peers with IP
address 0 port 0 to be created. This in turn results in rxi_sendmsg
errors (on systems where caught early, as on Linux, on others it may
pass unnoticed).
2007-08-08 16:53:17 +00:00
Jeffrey Altman
8c69510d92 windows-afsd-uninit-vars-20070806
FIXES 67126

ensure the connp is set to NULL in case of error
2007-08-07 05:00:06 +00:00
Jason Edgecombe
87d2f5cd3f man-page-vos-size-20070805
Add a new man page for vos size.
2007-08-05 22:58:35 +00:00
Jason Edgecombe
e7742db31f man-page-fs-newalias-20070805
Add a new fs newalias man page.  Add -help to the synopsis and options of
the other new man pages.  Add additional missing links in the fs man page.
Fix some wording in the CellAlias man page.
2007-08-05 22:38:10 +00:00
Jason Edgecombe
95cfc0cfaf man-page-fs-listaliases-20070805
Add manual page for fs listaliases.  Also add the links in the fs(1) man
page and update README more for the current to-do list.
2007-08-05 22:16:47 +00:00
Russ Allbery
e735ef962d man-page-style-20070805
Some style fixes and some additional style documentation in README.
2007-08-05 22:08:22 +00:00
Jason Edgecombe
8761673c60 man-page-afsd-crypt-alias-20070805
Complete the documentation of the afsd flags and update a few things like
-settime and -nosettime.  Add man pages for fs setcrypt, fs getcrypt, and
CellAlias.  Based on work by Jason Edgecombe and then extensively edited,
so any errors I probably introduced.
2007-08-05 22:01:42 +00:00
Asanka Herath
9353e122a3 windows-local-directory-updates-smb-20070802
The windows cache manager has suffered from poor performance as a result
of Create, Rename, and Delete operations because they invalidate the
contents of the directory pages in the cache thereby forcing them to be
reloaded from the file server.   As the directory size increases, the clock
time necessary to perform the reload increases.

This delta adds support for parsing and updating the AFS3 directory buffers
to cm_dir.c.  It then uses that functionality to perform local updates to
the directory buffers whenever the following conditions are met:

 1. the data version on the directory as a result of the change
    was incremented by one.

 2. all of the directory buffers required for the update are in
    the cache.

If these conditions are not met, the directory is reloaded from the file
server.
2007-08-02 22:05:39 +00:00
Jeffrey Altman
ac5346c370 windows-no-more-infinite-recursion-20070802
FIXES 15855

In cm_NameI, keep track of what fids were crossed when evaluating the
path.  If we discover a loop return a CM_ERROR_TOO_MANY_SYMLINKS error.

This resolves the complaint that when infinite loops are hit in the afs
name space the afsd_service.exe process uses 100% of the CPU.
2007-08-02 21:57:38 +00:00
Asanka Herath
c4047f6cb5 windows-local-directory-updates-20070802
The windows cache manager has suffered from poor performance as a result
of Create, Rename, and Delete operations because they invalidate the
contents of the directory pages in the cache thereby forcing them to be
reloaded from the file server.   As the directory size increases, the clock
time necessary to perform the reload increases.

This delta adds support for parsing and updating the AFS3 directory buffers
to cm_dir.c.  It then uses that functionality to perform local updates to
the directory buffers whenever the following conditions are met:

 1. the data version on the directory as a result of the change
    was incremented by one.

 2. all of the directory buffers required for the update are in
    the cache.

If these conditions are not met, the directory is reloaded from the file
server.
2007-08-02 21:52:54 +00:00
Jeffrey Altman
10b76dffa0 windows-do-not-expire-cbs-when-servers-are-down-20070802
if all of the servers are down when a callback is due to expire
delay the expiration until at least one server is available.
this prevents some applications that are running when the CM
is off the network from failing if their pages are swapped out.
2007-08-02 21:44:54 +00:00
Jeffrey Altman
4d75b4758e windows-libafsrpc-20070802
use bg-fcrypt in libafsrpc.dll which is used by the CM
2007-08-02 06:20:08 +00:00
Jeffrey Altman
4b8db9f211 rxkad-bg-fcrypt-unbreak-windows-20070731
i (derrick) broke everything. fix it.
2007-07-31 23:19:15 +00:00
Derrick Brashear
ece19eefbe viced-avoid-tying-up-all-threads-20070730
FIXES 19461

implement a thread quota.
2007-07-30 14:17:27 +00:00
Derrick Brashear
a608cd2e24 darwin-avoid-fsref-panic-maybe-20070728
maybe this works.
2007-07-28 15:31:44 +00:00
Jeffrey Altman
840ad12eb3 windows-fs-20070727
return error when GetCell fails
2007-07-28 04:03:58 +00:00
Jeffrey Altman
0ba1a62757 windows-rdrtimeout-20070727
RDRtimeout is seconds.  need to convert to milliseconds for comparison
2007-07-28 03:50:23 +00:00
Jeffrey Altman
d7d12d7c9b windows-client_config-20070727
FIXES 66302

change text of error message to indicate that the user is not a member
of the AFS Administrators Group instead of not being a Windows administrator.
2007-07-27 16:40:44 +00:00
Steven Jenkins
b741b29b4b man-page-demand-attach-20070726
Document additional bos flags for the demand attach file server.
2007-07-26 21:53:42 +00:00
Jason Edgecombe
2367c273bb man-page-updates-20070726
FIXES 65988

Mention aklog and kinit in klog's man page, add -dynroot to the afsd man
page, and mention that -skipauth tells uss not to create any Kerberos
principal and this has to be done separately.
2007-07-26 21:46:46 +00:00
Derrick Brashear
ed13fac911 md5inum-md5-clobbers-input-20070726 2007-07-26 18:04:21 +00:00
Jeffrey Altman
8ba66b7ff5 windows-afsd-ubik-20070722
not currently in use but replace ubik_Call(FOO,...) with ubik_FOO(...)
2007-07-23 00:09:06 +00:00
Derrick Brashear
16b32c1345 volser-directoryless-incremental-dumps-20070719
add an rpc, give vos a switch, allow incrementals which do not include directory objects
2007-07-19 19:51:55 +00:00
Jeffrey Altman
960ac913a4 windows-afs-svrmgr-20070719
uninitialized variable removal
2007-07-19 16:55:44 +00:00
Derrick Brashear
58d6f0b42a viced-assert-less-20070719
in don't assert for every silly thing
2007-07-19 16:14:20 +00:00
Derrick Brashear
91fee8a699 viced-no-nulluuid-20070719
a host with a zero uuid has no uuid support
2007-07-19 16:09:50 +00:00
Derrick Brashear
c010052699 kill-more-ubikcall-20070719
tested more ubik call death, so, byebye
2007-07-19 16:00:20 +00:00
Derrick Brashear
982f455deb vos-validate-dumpfile-20070719
based on code from jon nials
validate a dumpfile as being complete (look for end of dump signature)
2007-07-19 15:55:39 +00:00
Cesar Garcia
ef76695bb9 libadmin-deubikcall-cleanup-20070718
remove bogus extra arg
2007-07-18 15:21:12 +00:00
Jeffrey Altman
397cd0c3b8 windows-pioctl-20070718
cm_dir.h depends on cm_buf.h
2007-07-18 14:02:59 +00:00
Jeffrey Altman
a8b270d5a3 windows-single-dir-search-not-bulk-20070718
the single directory search routine used when there are no wildcards
does not perform a bulk stat operation.  do not set the flag on the
cm_scache_t.
2007-07-18 13:07:46 +00:00
Derrick Brashear
5e8227cd5e fs-state-only-in-dafs-20070717
FIXES 65681

only in dafs. oops.
2007-07-17 18:04:01 +00:00
Jeffrey Hutzelman
65c1b37f15 osi-probe-check-readable-20070717
FIXES 63971

avoid potentially reading pges that don't exist
2007-07-17 13:15:19 +00:00
Marcus Watts
2abf6e204c bg-fcrypt-64bit-fix-20070717
instead of this arcane ifdef which is flawed, we know which platforms support 64 bit types...
2007-07-17 13:06:47 +00:00
Russ Allbery
7fb5e02ff4 sparc32-no-ucontext-20070716
Undefine USE_UCONTEXT on sparc32 Linux since glibc doesn't implement
getcontext/setcontext for that architecture.
2007-07-17 04:46:25 +00:00
Derrick Brashear
f489b05a1c sparc32-no-getcontext-20070716
implement ptr_mangle for sparc32
2007-07-17 04:10:18 +00:00
Eric Sturdivant
5662cd310b xbsa-54-solaris-cplusplus-fun-20070716
FIXES 65588

deal with change to c++ xbsa library
2007-07-16 21:40:45 +00:00
Jeffrey Altman
82cb8884c8 libadmin-ubik_call-20070715
replace all calls to ubik_Call(FOO, ...) with ubik_FOO(...)

correct the incorrect parameter lists for ubik_FOO()
2007-07-16 00:58:52 +00:00
Derrick Brashear
a818f2d6b6 aix-aklog-lam-plugin-20070713
allow aklog equivalent from lam
2007-07-13 20:53:58 +00:00
Derrick Brashear
7aa5f7ad8b suser-aix-macro-20070712
can't use ifdefs inside the macro...
2007-07-12 19:10:05 +00:00
Derrick Brashear
1e86d1f3cc demand-attach-init-fsstate-rwlock-20070712
the rwlock needs to be initd before use
2007-07-12 09:28:26 +00:00
Douglas Engert
e13f8859a0 aklog-deal-without-524-20070711
patch in a way of dealing with no krb524
2007-07-11 05:29:36 +00:00
Rainer Toebbicke
73087bd4be pagsh-krb5-20070710
FIXES 54621

clean up the environment
2007-07-10 21:27:59 +00:00
Derrick Brashear
28208c9a24 linux-register-fs-deal-with-error-20070709
deal with other people who think they are afs.
2007-07-09 20:58:57 +00:00
Chaskiel M Grundman
d8457dd359 sparc-linux-des-alignment-20070709
seems like compilers really hate des. it should would be nice to euthanize this.

it's a shame there's no simple license-friendly des library to use
2007-07-09 20:14:09 +00:00
Jeffrey Altman
90bc0a7f31 windows-give-up-callbacks-20070707
don't try so hard to give up all callbacks.  If the server doesn't
respond in 10 seconds, too bad!

cleanup the server probe code a bit.  reorganize the code so that we
can avoid unnecessary pointer evaluation.  add a missing include file.
2007-07-07 14:36:59 +00:00
Jeffrey Altman
5e29856f7a windows-afsd-misc-20070706
* Do not give back callbacks to down servers

* Output more cm_scache_t data in afsd_alloc.log

* call VolStatus_Service_Stopped after the service has stopped
2007-07-07 00:20:38 +00:00
Marcus Watts
62bf68f4ba budb-ol_verify-20070706
FIXES 53210

fixes a missing pointer declaration that would presumably
break on 64-bit architectures.
2007-07-06 12:37:01 +00:00