5067 Commits

Author SHA1 Message Date
Jeffrey Altman
ea2fe73741 DEVEL15-windows-scache-clean-bufs-20080224
LICENSE MIT

In MergeStatus, only remove clean buffers from the hash table.


(cherry picked from commit f52c6e1bc020a0985d2bc168d06b2c87fe7a2797)
2008-02-24 15:35:34 +00:00
Jeffrey Altman
44bed5a0aa DEVEL15-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.


(cherry picked from commit 9e41258fad54e3122a0722b3f1c24810590c8d0a)
2008-02-24 06:33:20 +00:00
Jeffrey Altman
06db2350c2 DEVEL15-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.


(cherry picked from commit 812ac61cfd3601abb1373f6d3f9e4d52c2ff61b9)
2008-02-24 06:28:57 +00:00
Asanka Herath
a3ce05447c DEVEL15-windows-checkntopen-20080223
LICENSE MIT

do not forget to call cm_SyncOpDone if cm_SyncOp succeeded


(cherry picked from commit c73b73ee33c37aee2c52051005a12ad36fde70d4)
2008-02-23 21:37:08 +00:00
Jeffrey Altman
d0f2422ba4 DEVEL15-windows-buf-createlock-20080223
LICENSE MIT

Do not leak a read lock on the bufCreateLock

Add logging to cm_CheckNTOpen[Done]


(cherry picked from commit 8bddb4892bb815076861507f8ae781ae2c3f3310)
2008-02-23 21:14:19 +00:00
Jeffrey Altman
4c4658bf1c DEVEL15-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.


(cherry picked from commit 12c6cfd4435c5a491e613e6394fabeeed4d81447)
2008-02-23 07:30:18 +00:00
Jeffrey Altman
57e8e826b2 DEVEL15-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.


(cherry picked from commit dcef8fa4adc4c2cdc166494979d77d91c40c1f06)
2008-02-23 00:17:34 +00:00
Derrick Brashear
8e55bd64d8 DEVEL15-debian-packaging-update-20080220
LICENSE IPL10

Russ' metadata, repacked into our tree


(cherry picked from commit cd9ce022ee97bee809e840be8612aafb2cbfc6b8)
2008-02-20 21:35:53 +00:00
Derrick Brashear
bb6eeeb234 DEVEL15-vos-addsite-pod-error-20080220
LICENSE IPL10
Item is not item


(cherry picked from commit 49d77d8d4b8c26a56143a3655d460a6495f7d57a)
2008-02-20 20:19:44 +00:00
Derrick Brashear
2c06bbc2af DEVEL15-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.


(cherry picked from commit d5c32c97a01f02cd69e2167964b43d83c6d413fb)
2008-02-20 20:09:05 +00:00
Jeffrey Altman
b7f6335baf DEVEL15-windows-smb-locking-20080220
LICENSE MIT

minor improvements to smb_rctLock usage.


(cherry picked from commit d48e3d1e7a5a5d065a0046b9115043bed47510a7)
2008-02-20 17:37:09 +00:00
Jeffrey Altman
a8897dbc75 DEVEL15-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.


(cherry picked from commit dd4ecb4ca0467d9f5727de1bfe9082f195330b99)
2008-02-20 17:33:34 +00:00
Jeffrey Altman
686f2f04ca DEVEL15-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.


(cherry picked from commit 5067e6786dc93b8760edf6b1b9d92c3999caea7e)
2008-02-20 17:18:47 +00:00
Derrick Brashear
3cf0cce78b DEVEL15-openafs-1-5-32-20080219
LICENSE IPL10

make 1.5.32
openafs-devel-1_5_32
2008-02-20 03:36:24 +00:00
Jason Edgecombe
3d9465aed9 DEVEL15-man-page-updates-20080219
LICENSE IPL10
FIXES 86677

note 2tb limit, add fs minidump document


(cherry picked from commit 897c36027476843db988b9d0625a8fc189c8716d)
2008-02-19 15:28:55 +00:00
Mike Meffie
ecc8374ee4 DEVEL15-s390x-not-s390-20080219
LICENSE IPL10

don't try to link multiple things to asm


(cherry picked from commit 4bd64596caebf79962db441782082d07c2de9e4e)
2008-02-19 15:07:36 +00:00
Rainer Toebbicke
103b4c8c19 DEVEL15-viced-rmdir-fid-leak-20080219
LICENSE IPL10
FIXES 86786


(cherry picked from commit 19b829d21934d60ab0b1af3ef0c7eefb2cce17b6)
2008-02-19 14:38:20 +00:00
Jeffrey Altman
2f1131d3eb DEVEL15-windows-version-20080218
LICENSE MIT

1.5.32 = 1.5.3200.0
2008-02-19 04:30:19 +00:00
Jeffrey Altman
0357c4e60d DEVEL15-windows-notes-20080218
LICENSE MIT

more for 1.5.32
2008-02-19 04:19:09 +00:00
Derrick Brashear
622a0a6a67 DEVEL15-windows-name-entries-20080218
LICENSE IPL10

restore the original behavior.  Fixes smb_ReceiveTran2SearchDir().


(cherry picked from commit c2de3a1623441f93b119dbdbd772bfa81973b230)
2008-02-19 04:15:03 +00:00
Derrick Brashear
0867f2c59a DEVEL15-arm-linux26-syscall-missing-20080218
LICENSE IPL10

there's nothing non-political about this. whatever.


(cherry picked from commit 1e4c03deecee1671703af891dbaf11e11b0dd5c8)
2008-02-19 03:39:17 +00:00
Derrick Brashear
3c3d217289 DEVEL15-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


(cherry picked from commit 7421feda944d5fa05f5223528a69f23a7bb0b724)
2008-02-18 19:20:52 +00:00
Jeffrey Altman
e389d8f964 DEVEL15-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.


(cherry picked from commit 7a290f39ec303cb3473f63f7d9c634e767191279)
2008-02-18 17:34:51 +00:00
Jeffrey Altman
037928cb1c DEVEL15-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.


(cherry picked from commit 5fd85f53f26ba1f0649b8a8c68d3abb1c5159eb9)
2008-02-18 17:29:16 +00:00
Jeffrey Altman
5ce30c436c DEVEL15-windows-afskfw-20080218
LICENSE MIT

if we are going to insert the full ccache name then we must search by
it as well.


(cherry picked from commit f5645ccffe05f2c1b44d5ba1adb32ba45e26aae8)
2008-02-18 14:17:11 +00:00
Jeffrey Altman
177ab75b1e DEVEL15-windows-notes-20080217
LICENSE MIT

1.5.32
2008-02-18 05:56:30 +00:00
Jeffrey Altman
2dfdc9f665 DEVEL15-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.


(cherry picked from commit 72da5c434c8caef0cb81523091915738e7e930ed)
2008-02-18 05:53:56 +00:00
Jeffrey Altman
f6d1601368 DEVEL15-windows-release-notes-20080217
LICENSE MIT

1.5.32
2008-02-18 04:37:44 +00:00
Asanka Herath
551816663b DEVEL15-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.


(cherry picked from commit 55aa6f04dcfebae134b3459944e005599d06ef05)
2008-02-17 14:38:07 +00:00
Jeffrey Altman
e64053d95f DEVEL15-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.


(cherry picked from commit 38c2524bd16f1e535ea28f9d0788b7eaa8d26c3d)
2008-02-17 05:59:30 +00:00
Jeffrey Altman
0582ea3bca DEVEL15-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.


(cherry picked from commit 33bed6296114e16914cecf312c762774d44386c8)
2008-02-17 05:28:04 +00:00
Jeffrey Altman
a520fbe955 DEVEL15-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.


(cherry picked from commit 935c49a2a6efa476c327e8a24fc4895f0c8f623d)
2008-02-15 03:31:36 +00:00
Jeffrey Altman
a549019b51 DEVEL15-windows-afsd-rx-extrapackets-20080214
LICENSE MIT

Add support for specifying rx_extraPackets in the Windows client


(cherry picked from commit 4aad2a7b6bcf97af384de36994af94b7b4b07f98)
2008-02-15 03:26:35 +00:00
Jeffrey Altman
9c7471bd5b DEVEL15-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.


(cherry picked from commit 093433b981cd1917215a4ee6196c5a0a55352d92)
2008-02-14 14:13:28 +00:00
Jeffrey Altman
b737d13bfa DEVEL15-windows-vnovol-20080214
LICENSE MIT

avoid a crash when logging VNOVOL errors returned from cm_CheckOfflineVolume


(cherry picked from commit 1133cc441862f3f0d44f0ab380a7274ead672b0f)
2008-02-14 19:20:32 +00:00
Jeffrey Altman
df7932a364 DEVEL15-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.


(cherry picked from commit 00bada9c5eb803c13a6b930e79684a470cf94278)
2008-02-14 14:09:18 +00:00
Jeffrey Altman
1dc9b5ce7b DEVEL15-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.


(cherry picked from commit 588a229110c92bd82b819916260ee9727759c4a0)
2008-02-13 05:58:25 +00:00
Jeffrey Altman
2124e5bedf DEVEL15-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.


(cherry picked from commit 44c20384ed5c0fdb4bce737a2a3c2b9c0af4472b)
2008-02-13 05:46:27 +00:00
Derrick Brashear
9d8e15cdc7 DEVEL15-redhat-openafs-kmodtool-20080213
LICENSE IPL10

rename to be specific to us.


(cherry picked from commit 31990decdef84adc1c9033944fcc59910720c834)
2008-02-13 05:28:58 +00:00
Jeffrey Altman
33fd7b0a69 DEVEL15-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


(cherry picked from commit e9e1d1a39bfe047a38f153afdc2fe8951174135c)
2008-02-12 14:02:35 +00:00
Jeffrey Altman
00811fa149 DEVEL15-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.


(cherry picked from commit a5e5736c67cdf3d08bce548447bc7635b65329c2)
2008-02-12 13:32:48 +00:00
Jeffrey Altman
443a232f3d DEVEL15-windows-afscreds-username-20080212
LICENSE MIT

Use GetUserNameEx to obtain the username instead of searching the registry.
Try UserPrincipalName first and fallback to SamCompatible.


(cherry picked from commit 512ec8f51880d4e9e1cc5564bd27991a2c2915d6)
2008-02-12 13:21:17 +00:00
Jeffrey Altman
50de73ac4a DEVEL15-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.


(cherry picked from commit 7a8d8da95f5bd23fbb97d93840f3a2c5a145a695)
2008-02-11 16:44:27 +00:00
Jeffrey Altman
b8aeb52fdb DEVEL15-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


(cherry picked from commit 61bb3b7f096f3b10075dcb1403879e3ec518276b)
2008-02-11 14:46:36 +00:00
Jeffrey Altman
f4b17cf4c9 DEVEL15-windows-version-20080210
LICENSE MIT

1.5.3100.0 == 1.5.31
openafs-devel-1_5_31
2008-02-11 04:04:05 +00:00
Derrick Brashear
1fa2ae43fd DEVEL15-openafs-1-5-31-20080210
LICENSE IPL10

make 1.5.31
2008-02-11 04:02:12 +00:00
Derrick Brashear
9d3214ef2e DEVEL15-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.


(cherry picked from commit a5dbdd03b8187f0c2c146f330e9adc42e103432c)
2008-02-11 04:00:47 +00:00
Derrick Brashear
6232f1a001 DEVEL15-vos-syncv-dryrun-20080210
LICENSE IPL10

add a dryrun mode to vos syncvldb and syncserv


(cherry picked from commit b44afa839b7c5dd33ab83958f0871edac32fc7ac)
2008-02-11 03:44:23 +00:00
Tom Keiser
30de231d0b DEVEL15-dafs-vol-updates-20080210
LICENSE IPL10

make sure status is consistent in vol package when doing dafs


(cherry picked from commit c61712de68f6bcb59eac29cb59e9ae78d98cf179)
2008-02-11 03:37:22 +00:00
Jeffrey Altman
c248666fd8 DEVEL15-windows-windows-pipes-20080210
LICENSE MIT

do not search for cellnames that match srvsvc or wkssvc pipes


(cherry picked from commit d7235b1493917250a163dc4336f8b6ac83c6a07e)
2008-02-11 00:18:32 +00:00