Commit Graph

5086 Commits

Author SHA1 Message Date
Derrick Brashear
27dc7b13aa nulluuid-check-only-valid-input-20080224
LICENSE IPL10

as reported by jhutz@cmu.edu
2008-02-25 04:57:47 +00:00
Jeffrey Altman
f52c6e1bc0 windows-scache-clean-bufs-20080224
LICENSE MIT

In MergeStatus, only remove clean buffers from the hash table.
2008-02-24 15:33:52 +00:00
Jeffrey Altman
9e41258fad windows-buf-data-versions-20080224
LICENSE MIT

An implementation of Asanka's idea.

Avoid the need to update the data version number on each buffer associated
with a scache when MergeStatus is called after a StoreData by maintaining
a range of valid data versions as part of the cm_scache_t object.
2008-02-24 06:31:54 +00:00
Jeffrey Altman
812ac61cfd windows-optimize-access-20080224
LICENSE MIT

profiling shows large numbers of blocked calls in cm_HoldSCache
from cm_HaveAccess...   We can safely avoid the call so do so.
2008-02-24 06:27:38 +00:00
Asanka Herath
c73b73ee33 windows-checkntopen-20080223
LICENSE MIT

do not forget to call cm_SyncOpDone if cm_SyncOp succeeded
2008-02-23 21:35:56 +00:00
Jeffrey Altman
8bddb4892b windows-buf-createlock-20080223
LICENSE MIT

Do not leak a read lock on the bufCreateLock

Add logging to cm_CheckNTOpen[Done]
2008-02-23 21:12:54 +00:00
Jeffrey Altman
12c6cfd443 windows-buf-scache-interlock-20080222
LICENSE MIT

Improve parallelism by using InterlockedIncrement and InterlockedDecrement
to adjust the refCount fields of cm_buf_t and cm_scache_t objects.  This
permits read locks to be used for increments and decrements but requires
a write-lock to perform any actions based upon the refCount hitting zero.

Inline cm_FidCmp to further improve performance.

Remove unused variables.
2008-02-23 07:27:17 +00:00
Jeffrey Altman
dcef8fa4ad windows-afsd-20080222
LICENSE MIT

1. Change RxEnableHotThread default to 'on'

2. Add a 'hash' value to the cm_fid_t structure in order to speed up cm_FidCmp().
   Add cm_SetFid() for use in constructing a fid complete with the hash.

3. Redefine the BUF_HASH and BUF_FILEHASH in terms of the cm_fid_t hash which
   has a better distribution

4. Modify cm_ConsiderPrefetch to evaluate the amount of data in the most recent
   read request instead of the next chunkSize.  cm_chunkSize can be dozens or
   hundreds of buffers.  As a result too much time is spent performing the
   evaluation.

5. Fix the usage of cm_scache_t bufCreateLock.  The purpose of this lock is
   to prevent the creation of new buffers while a truncation is being performed.
   All references to bufCreateLock have been removed except in two places:
   i.  a write-lock surrounding the function that calls buf_Truncate()
   ii. a read-lock within buf_GetNewLocked() that actually allocates new
       buffers

6. Modify the CM_CONFIG_DATA_MAGIC value to include a CM_CONFIG_DATA_VERSION
   number which value be used to force the replacement of the cache file
   contents when incompatible changes are made between releases.

7. CM_SCACHESYNC_ASYNCSTORE should not be ordered by cm_SyncOpCheckContinue

8. Avoid calls to multi_Rx if nconns == 0

9. Modify smb_WriteData to perform background writes based upon the crossing
   of buf_blockSize boundaries instead of cm_chunkSize boundaries.  This will
   slow down writes from the SMB interface but will avoid the risk of
   the CIFS client disconnecting from the AFS client SMB server.
2008-02-23 00:15:22 +00:00
Derrick Brashear
cd9ce022ee debian-packaging-update-20080220
LICENSE IPL10

Russ' metadata, repacked into our tree
2008-02-20 21:31:02 +00:00
Derrick Brashear
49d77d8d4b vos-addsite-pod-error-20080220
LICENSE IPL10
Item is not item
2008-02-20 20:18:03 +00:00
Derrick Brashear
d5c32c97a0 urecovery-invalidate-without-truncate-20080220
LICENSE IPL10

critical to label the database invalid when we don't truncate so recovery finishes.

issue in 84609 remains.
2008-02-20 20:07:51 +00:00
Jeffrey Altman
d48e3d1e7a windows-smb-locking-20080220
LICENSE MIT

minor improvements to smb_rctLock usage.
2008-02-20 17:35:45 +00:00
Jeffrey Altman
dd4ecb4ca0 windows-rx_enable_hot_thread-20080220
LICENSE MIT

Add RxEnableHotThread registry option to permit rx_enable_hot_thread
to be set.  The default is off for the moment but turning it on does
provide significant performance benefits.
2008-02-20 17:32:53 +00:00
Jeffrey Altman
5067e6786d rx-osi_socket-20080220
LICENSE MIT

The portable type to be used for sockets is osi_socket not int.

On 64-bit Windows this caused failures when hot threads were enabled.
2008-02-20 17:17:21 +00:00
Jason Edgecombe
897c360274 man-page-updates-20080219
LICENSE IPL10
FIXES 86677

note 2tb limit, add fs minidump document
2008-02-19 15:25:17 +00:00
Mike Meffie
4bd64596ca s390x-not-s390-20080219
LICENSE IPL10

don't try to link multiple things to asm
2008-02-19 15:07:24 +00:00
Rainer Toebbicke
19b829d219 viced-rmdir-fid-leak-20080219
LICENSE IPL10
FIXES 86786
2008-02-19 14:29:42 +00:00
Derrick Brashear
c2de3a1623 windows-name-entries-20080218
LICENSE IPL10

restore the original behavior.  Fixes smb_ReceiveTran2SearchDir().
2008-02-19 04:10:44 +00:00
Derrick Brashear
1e4c03deec arm-linux26-syscall-missing-20080218
LICENSE IPL10

there's nothing non-political about this. whatever.
2008-02-19 03:39:06 +00:00
Derrick Brashear
7421feda94 viced-qsort-cba-before-multibreakcallback-to-avoid-lockup-20080218
LICENSE IPL10

my code, though, this is a result of a problem reported by Chaskiel Grundman and analysis by him, Jeff Altman and myself.

I'm just checking in my implementation. In any case, the issue this addresses
is one where we can end up in makecall_waiting in rx on multiple connections
when we multibreakcallback because the lists are sorted differently and each has "pending" calls on a different connection. by sorting by index we will not
block on another caller while also holding what they're after
2008-02-18 19:19:12 +00:00
Jeffrey Altman
7a290f39ec windows-do-not-discard-badtickets-20080218
LICENSE MIT

The RXKADBADTICKET error is returned when a krb5 derived token is sent
to a server that does not support them.  In a mixed cell it is possible
that some servers were not updated.  Discarding the token does not make
it possible to perform the request successfully and adversely affects
the user experience because those servers that do support the token
can no longer be accessed in an authenticated manner.  Users can't
determine what the cause is, all they see are their tokens disappearing
and there is nothing they can do about it anyway.

From now on return STATUS_NO_KERB_KEY and do not retry.
2008-02-18 17:33:45 +00:00
Jeffrey Altman
5fd85f53f2 rx-stats-optimization-20080218
LICENSE IPL10

Do not grab the peer mutex or the rpc stats mutex if we are not
intending to collect stats.  Doing so is a bottleneck.
2008-02-18 17:27:48 +00:00
Jeffrey Altman
f5645ccffe windows-afskfw-20080218
LICENSE MIT

if we are going to insert the full ccache name then we must search by
it as well.
2008-02-18 14:13:59 +00:00
Jeffrey Altman
72da5c434c windows-share-parse-20080217
LICENSE MIT

add srvsvc and wkssvc to reserved names in smb_ShareParse.

include slash in ipc$ reference in dfs referrals check.
2008-02-18 05:52:34 +00:00
Asanka Herath
55aa6f04dc windows-netidmgr-extension-sample-20080217
LICENSE MIT

A sample template for constructing Network Identity Manager OpenAFS
Provider Extensions for obtaining and identifying new token types.
2008-02-17 14:33:26 +00:00
Jeffrey Altman
38c2524bd1 windows-invalidate-file-locks-vnovnode-20080217
LICENSE MIT

Upon receiving a VNOVNODE error from a file server, be sure to
invalidate any file locks.  This prevents on-going attempts to
extend the locks and will cause subsequent attempts to access
the file to receive a invalid handle error.
2008-02-17 05:58:13 +00:00
Jeffrey Altman
33bed62961 windows-buf-consistency-20080217
LICENSE MIT

All calls to buf_Get() must be protected by a read lock on the
cm_scache_t bufCreateLock

When a MergeStatus results in the invalidation of buffers, do
not remove buffers from the hash tables that have active references.
2008-02-17 05:26:51 +00:00
Jeffrey Altman
935c49a2a6 windows-check-offline-volumes-20080214
LICENSE MIT

when checking offline volumes, update the cell vlserver info
if required and don't perform a check if there are no servers
in the list.
2008-02-15 03:31:04 +00:00
Jeffrey Altman
4aad2a7b6b windows-afsd-rx-extrapackets-20080214
LICENSE MIT

Add support for specifying rx_extraPackets in the Windows client
2008-02-15 03:24:52 +00:00
Simon Wilkinson
9babb9f88f mockbuild-20080214
LICENSE BSD

driver script for mock massbuilds
2008-02-14 19:26:39 +00:00
Jeffrey Altman
093433b981 windows-volstat-vl-unknown-20080214
LICENSE MIT

Add volumes in the vl_unknown state to the list of objects to be
checked as offline or retried when an allbusy error is received
in cm_Analyze.
2008-02-15 03:23:44 +00:00
Jeffrey Altman
1133cc4418 windows-vnovol-20080214
LICENSE MIT

avoid a crash when logging VNOVOL errors returned from cm_CheckOfflineVolume
2008-02-14 19:19:38 +00:00
Jeffrey Altman
00bada9c5e windows-osilog-savestring-20080214
LICENSE MIT

When osi_Log is disabled, osi_LogSaveString will no longer copy the
provided string into the circular log buffer.  This saves a huge amount
of time.
2008-02-15 03:18:42 +00:00
Jeffrey Altman
588a229110 windows-smb-special-share-names-20080212
LICENSE MIT

Treat srvsvc, wkssvc and ipc$ as pseudo files.  Permit them to be opened
and closed without actually existing.  For now we treat them as equivalent
to ioctls but this should eventually change.

Fix RAP processing to not reject names that exist in the root.afs volume
for GetInfo queries.
2008-02-13 05:57:27 +00:00
Jeffrey Altman
44c20384ed windows-dfs-referrals-20080212
LICENSE MIT

Add "ipc$" to the list of names that must not be automatically added
as a share name.

If the sharename is a partial match and therefore will not be added
automatically to the share list, make sure that we return an error
to the requestor.
2008-02-13 05:43:16 +00:00
Derrick Brashear
31990decde redhat-openafs-kmodtool-20080213
LICENSE IPL10

rename to be specific to us.
2008-02-13 05:27:15 +00:00
Jeffrey Altman
e9e1d1a39b windows-no-wx-20080212
LICENSE MIT

Warnings as errors are nice, but when different compiler versions
stop building simply because a parameter is not being referenced
in a meaningful way its time for the option to be turned off
2008-02-12 14:00:41 +00:00
Jeffrey Altman
a5e5736c67 windows-no-more-rpcns4-dll-20080212
LICENSE MIT

Remove all references to rpcns4.lib and its included functions RpcNsXXX.
These APIs are no longer supported on Vista.  Except for TaAfsAdmSvr
they had been commented out for a long time but we still continued to
link to the library.  Loading the library generates a no longer supported
error on Vista.  So lets get rid of it.
2008-02-12 13:29:36 +00:00
Jeffrey Altman
512ec8f518 windows-afscreds-username-20080212
LICENSE MIT

Use GetUserNameEx to obtain the username instead of searching the registry.
Try UserPrincipalName first and fallback to SamCompatible.
2008-02-12 13:16:20 +00:00
Jeffrey Altman
7a8d8da95f windows-afscreds-vista-uac-20080211
LICENSE MIT
FIXES 82701

Modifying the registry and the startup shortcuts is not permitted under
Vista UAC.  Generate an error dialog and notify the end user.
2008-02-11 16:42:45 +00:00
Jeffrey Altman
61bb3b7f09 windows-freelance-20080211
LICENSE MIT

Do not return BAD_NETWORK_ERROR in response to attempts to create directories
or files in the Freelance root.afs volume.  Instead return ACCESS_DENIED.

BAD_NETWORK_ERROR was being sent because the Freelance cell has no
vldb servers.  Short circuit the error by testing for freelance
in CreateFile and MakeDir
2008-02-11 14:45:43 +00:00
Derrick Brashear
a5dbdd03b8 magic-vnodes-20080210
LICENSE IPL10

add magic vnodes like the magic mounts we already have. you can now
cons up any afs vnode if you know the cell and fid.
2008-02-11 03:58:49 +00:00
Derrick Brashear
b44afa839b vos-syncv-dryrun-20080210
LICENSE IPL10

add a dryrun mode to vos syncvldb and syncserv
2008-02-11 03:42:40 +00:00
Tom Keiser
c61712de68 dafs-vol-updates-20080210
LICENSE IPL10

make sure status is consistent in vol package when doing dafs
2008-02-11 03:35:43 +00:00
Jeffrey Altman
d7235b1493 windows-windows-pipes-20080210
LICENSE MIT

do not search for cellnames that match srvsvc or wkssvc pipes
2008-02-11 00:13:50 +00:00
Jeffrey Altman
cd82af9d4e windows-wow64-registry-20080208
LICENSE MIT

Enable the 32-bit tools that are distributed for use in the WOW64 environment
to access the 64-bit registry keys instead of the 32-bit versions.  This
will remove the need to support both 64-bit and 32-bit versions of the
values.
2008-02-09 02:30:17 +00:00
Jeffrey Altman
0caf7c54df windows-vnodeops-20080208
LICENSE MIT

Add support for returning RANGE_NOT_LOCKED errors

Do not attempt to add a mount point for share names of the form
<cell><mount-type><volume>.  Its just a big waste of time.  DNS
queries and CellServDB file searches are expensive.
2008-02-09 02:26:28 +00:00
Derrick Brashear
607c0959f0 rx-kill-void-stupidity-20080208
LICENSE IPL10

remove VOID since it conflicts with this. and we shouldn't need it anymore anyway
2008-02-08 21:19:02 +00:00
Jeffrey Altman
629feb40c4 windows-scache-locks-20080207
LICENSE MIT

add lock assertions to ensure we are holding write locks when
manipulating scache refcounts
2008-02-08 01:20:01 +00:00
Jeffrey Altman
1c0c38b918 windows-fs-utils-20080207
LICENSE MIT

Use ismeta() correctly when parsing integer strings.
2008-02-07 21:40:08 +00:00