Commit Graph

5600 Commits

Author SHA1 Message Date
Mike Meffie
9c1ba1108c DEVEL15-linux-module-build-test-configure-fix-20090221
LICENSE IPL10
FIXES 124381

deal when the module link warning has extra characters


(cherry picked from commit 2290db5f16)
2009-02-21 15:36:49 +00:00
Jeffrey Altman
5a29b090de DEVEL15-smb-reformat-20090220
LICENSE MIT

make consistent with the head
2009-02-21 04:32:45 +00:00
Jeffrey Altman
a14281359d DEVEL15-windows-smb-misc-20090220
LICENSE MIT

Fix smb_FindFIDByScache() to avoid obtaining the smb_fid_t.mx and
smb_rctLock out of order.  Doing so requires obtaining references
on each smb_fid_t belonging to the smb_vc_t in order to prevent them
from being removed from the list while the list is being walked.

Reorder tests for CM_SCACHEFLAG_DELETED and smb_fid_t.scp to make
them more efficient and consistent.

When processing Tran2SetPathInfo do not fail because an smb_fid_t
cannot be found for the path object.  The PathInfo function is
being used because we do not have a file descriptor.  Most importantly
do not fail by returning success.


(cherry picked from commit 8382f8ccb1)
2009-02-21 04:26:53 +00:00
Jeffrey Altman
671c0e3435 DEVEL15-windows-rename-cross-dir-invalid-handle-20090220
LICENSE MIT

Problems with the cm_Rename() functions:

 * when a rename occurs across directories, the file server allocates
   a new vnode which in turn alters the FID.  Since the new FID and
   potentially version number is unknown to the client, it is not
   possible to update the target directory with the new name and
   FID thereby avoiding reading the directory from the file server.

 * when the old vnode is removed, the callback is broken but the
   client did not discard the cm_scache_t object

In order to optimize the client cache AFS requires a RXAFS_RenameEx
rpc that is equivalent to the current RPC but returns the new FID
and status.  This would permit the cache manager to relabel the
data buffers and cm_scache_t that are known to contain valid data.


(cherry picked from commit 54a3c85ae4)
2009-02-21 04:19:40 +00:00
Asanka Herath
a0b49b790d DEVEL15-smb-vc-reset-on-request-20090218
LICENSE MIT

When processing SMB_SESSION_SETUP_ANDX in smb_ReceiveV3SessionSetupX
it is possible that the smb client might indicate that it requires an
Mpx Count greater than we are configured to support.  If so, log it
to the Windows Event Log as a warning.

It is also possible that the client might specify that its maximum
receive buffer is smaller than the SMB_PACKETSIZE.  If so, log it
to the Windows Event Log as a warning.

Finally, if the client specifies a virtual circuit number of zero,
the client thinks this is its first time communicating with us.
In which case we should invalidate all prior virtual circuits.
We also log this request to the Windows Event Log as informational.


(cherry picked from commit 4eb808d26b)
2009-02-19 04:04:36 +00:00
Simon Wilkinson
4440af0090 DEVEL15-windows-64bit-printf-sanity-20090218
LICENSE IPL10
FIXES 124265

don't assume %lld works for 64 bit ints on windows


(cherry picked from commit 5bd86a09eb)
2009-02-18 17:48:58 +00:00
Peter Tripician
578e0ac98a DEVEL15-vos-increment-offline-count-20090218
LICENSE IPL10
FIXES 124333

increment offline volume count, not pointer to it


(cherry picked from commit 733794b4d8)
2009-02-18 17:28:10 +00:00
Derrick Brashear
cd34361596 DEVEL15-vldb-check-no-bogus-shadow-decl-20090217
LICENSE IPL10

unfussy compilers treat this as a shadow declare; others thankfully as an error


(cherry picked from commit da8df5ea2c)
2009-02-17 14:34:31 +00:00
Derrick Brashear
04ca4bdd05 DEVEL15-aklog-524-vars-20090216
LICENSE IPL10

add missing variables


(cherry picked from commit 8b74a85b97)
2009-02-17 14:27:59 +00:00
Jeffrey Altman
1c0553f73b DEVEL15-vclosevnodefiles-ihandle-leak-20090216
LICENSE IPL10
FIXES 124359

don't leak ihandles on close. this isn't a complete fix for the issue


(cherry picked from commit b9816e12f7)
2009-02-17 04:37:37 +00:00
Peter Tripician
919fac924a DEVEL15-bozo-corefile-timestamp-fix-20090216
LICENSE IPL10
FIXES 124340

output y2k-correct corefile names


(cherry picked from commit 846919700b)
2009-02-17 04:32:19 +00:00
Evan Broder
298e3bde1e DEVEL15-aklog-use-native-principal-conversion-20090216
LICENSE IPL10
FIXES 124338

use krb5_524_conv_principal instead of doing it potentially wrong ourselves


(cherry picked from commit b1f9b4cb5d)
2009-02-17 04:29:04 +00:00
Chas Williams
0981b42ea8 DEVEL15-macos-10-6-support-20090216
LICENSE IPL10
FIXES 124288

support for (32 bit) macos 10.6. no pam yet


(cherry picked from commit 8bc58a3d6d)
2009-02-17 04:25:25 +00:00
Steven Jenkins
ba36fc7190 DEVEL15-vldb-check-meaningful-return-codes-20090216
LICENSE IPL10
FIXES 124321

make vldb_check have meaningful return codes


(cherry picked from commit 43bcfaf9cc)
2009-02-17 04:17:09 +00:00
Peter Tripician
ff8b8f3b72 DEVEL15-fs-lsm-parse-bug-20090226
LICENSE IPL10
FIXES 124319

print correct error on root directory


(cherry picked from commit 52f3295d32)
2009-02-17 03:59:41 +00:00
Tony D'Amato
29ce678676 DEVEL15-redhat-rpms-kernel24-20090216
LICENSE IPL10
FIXES 102673

rewrite make rule for 2.4 kernels


(cherry picked from commit 4817a4a98f)
2009-02-17 03:29:37 +00:00
Jeffrey Altman
55f05917e6 DEVEL15-windows-smb-fidp-scp-race-20090212
LICENSE MIT
FIXES 124293

As evident in a crash dump, there is a race surrounding access to the
scp field of the smb_fid_t object.  Not all access was protected by
the smb_fid_t mx and the cm_scache_t object was not always being
reference counted within the accessing function.

This patch ensures that all initial references to the scp object
are performed under the smb_fid_t mx mutex and that the cm_scache_t
is prevented from being recycled by obtaining a local reference.

Finally, CM_ERROR_BADFD is returned as an error if a request begins
after the smb_fid_t scp field has already been cleared by a smb_CloseFID()
call as part of a concurrent request.


(cherry picked from commit 8e3b67b953)
2009-02-12 21:45:00 +00:00
Jeffrey Altman
cc092d7bfe DEVEL15-windows-vmoved-vnovol-failover-20090212
LICENSE MIT
FIXES 124276

A readonly volume with multiple instances was being marked alldown
when one of the instances resulted in VNOVOL because the vldb and
the indicated file server were out of sync.  The cache manager would
then attempt to re-obtain the volume location info from the vldb
for the entire timeout period.

This patch:

adds trace logging to cm_Analyze indicating which server references
are being deleted and which remain in response to a VNOVOL/VMOVED error.

adds trace logging to cm_UpdateVolumeStatusInt showing how the
new volume status value is determined.

corrects cm_Analyze() so that it doesn't corrupt the server reference
list during cm_FreeServerList() calls; doesn't orphan the server reference
list by setting *serverpp to NULL; and only re-obtains the volume info
list once per request.


(cherry picked from commit 8bb35234aa)
2009-02-12 21:30:16 +00:00
Jeffrey Altman
d43ca50135 DEVEL15-fix-tsfpq-20090210
LICENSE BSD

avoid transferring more than the number of packets in a queue


(cherry picked from commit 1050049411)
2009-02-10 22:42:50 +00:00
Derrick Brashear
38da9ef09d DEVEL15-restore-unix-rxdebug-20090210
LICENSE IPL10

stale fixes from my sandbox


(cherry picked from commit c12e2fa019)
2009-02-10 22:40:13 +00:00
Jeffrey Altman
c85a24fa0e DEVEL15-rx-writevproc-wrong-type-20090207
LICENSE BSD

In rxi_WritevProc the queueScan that sets RX_PKTFLAG_TQ on the packet
really needs to cast the queue objects to rx_packet instead of rx_call.
Trashing random fields is not a good idea.


(cherry picked from commit 0edbc512b5)
2009-02-07 17:22:46 +00:00
Asanka Herath
174cd9d781 DEVEL15-windows-netidmgr-progress-20090205
LICENSE MIT

add progress reporting to the provider.


(cherry picked from commit b842ee3ea5)
2009-02-06 03:14:21 +00:00
Jeffrey Altman
a529552f51 DEVEL15-windows-freelance-20090204
LICENSE MIT

set the correct fid vnode/unique values when adding new symlnks and
mount points.


(cherry picked from commit ffdc7c7088)
2009-02-05 00:24:42 +00:00
Mike Meffie
073fb89d2c DEVEL15-upclient-cleanup-temp-files-20090203
LICENSE IPL10
FIXES 124221

remove tempfiles in the event of a fetching error


(cherry picked from commit 58a924fd50)
2009-02-03 19:44:39 +00:00
Simon Wilkinson
848db9a002 DEVEL15-rename-internal-gettimeofday-refs-20090203
LICENSE IPL10
FIXES 124259

switch to using fasttime, instead of wrapper


(cherry picked from commit 1811577fca)
2009-02-03 19:42:27 +00:00
Simon Wilkinson
4b997f0067 DEVEL15-redhat-packaging-non-stable-branches-20090203
LICENSE IPL10
FIXES 124273

make rpm stuff work for other than 1.4.x


(cherry picked from commit 0ac1e74178)
2009-02-03 19:37:50 +00:00
Simon Wilkinson
ee2175a020 DEVEL15-redhat-packaging-updates-20090203
LICENSE IPL10
FIXES 124272

adds fc10, fc11 support


(cherry picked from commit fe3779411e)
2009-02-03 19:34:20 +00:00
Russ Allbery
82f25debf9 DEVEL15-man-page-salvager-fixes-20090201
LICENSE BSD

Fix the -parallel example in the main description text: "5all" should be
"all5".  Reword the description a bit to hopefully make it clearer that
there are two separate values set here.  Note under the option description
of -parallel that multiple partitions on the same device are normally
processed serially.


(cherry picked from commit d476340465)
2009-02-02 01:23:06 +00:00
Russ Allbery
31bb6b0120 DEVEL15-man-page-vos-examine-copy-date-20090201
LICENSE BSD

Document the Copy field of vos examine output.


(cherry picked from commit f204e4e37f)
2009-02-02 01:22:34 +00:00
Simon Wilkinson
fc7717096a DEVEL15-linux-vmtruncate-20090130
LICENSE IPL10
FIXES 124128

use linux's vmtruncate feature instead of doing a somewhat-right internal versio
n


(cherry picked from commit 175393288d)
2009-01-30 14:36:24 +00:00
Tom Keiser
ede2cb1feb DEVEL15-dafs-vnode-close-race-20090129
LICENSE IPL10
FIXES 124223

address race between VCloseVnodeFiles_r and VGetFreeVnode_r


(cherry picked from commit ff795a12c5)
2009-01-29 17:06:52 +00:00
Derrick Brashear
328fffda8b DEVEL15-discon-diskslot-linux-20090129
LICENSE IPL10

build in the linux case on non-disconnected


(cherry picked from commit 47e99e36fd)
2009-01-29 16:05:16 +00:00
Derrick Brashear
aa7be50728 DEVEL15-discon-remove-fix-20090128
LICENSE IPL10

fix my own error


(cherry picked from commit df139845e9)
2009-01-28 22:39:13 +00:00
Jeffrey Altman
2ed1c68c04 DEVEL15-rx-no-more-register-20090128
LICENSE BSD

kill off use of register in rx


(cherry picked from commit 35cc76c21e)
2009-01-28 22:33:28 +00:00
Jeffrey Altman
2e7e916a18 DEVEL15-rx-pthread-mutex-protects-threadcount-20090128
LICENSE BSD

add protection of previously unprotected thread count variables


(cherry picked from commit 226cf894b6)
2009-01-28 21:34:51 +00:00
Simon Wilkinson
64e47bb98b DEVEL15-discon-avoid-looping-on-replay-20090128
LICENSE IPL10
FIXES 124203

don't defer based on a shadow copy


(cherry picked from commit 7cd7bcdc4c)
2009-01-28 21:14:32 +00:00
Simon Wilkinson
cbb930673a DEVEL15-disconnected-reply-no-locking-yet-20090128
LICENSE IPL10
FIXES 124202

don't lock files before replaying changes yet


(cherry picked from commit cc2f0d2bc5)
2009-01-28 21:02:28 +00:00
Derrick Brashear
8a81664b9e DEVEL15-disconnected-deal-with-unlink-while-open-20090127
LICENSE IPL10
FIXES 124178

treat something as unlinked until a rename suceeds, then let that win


(cherry picked from commit af61732e4a)
2009-01-28 15:52:52 +00:00
Jeffrey Altman
0c2d43b5f6 DEVEL15-rx-windows-debugging-20090127
LICENSE MIT

separate rx debugging from cache manager debugging.
assign bit 5 of the TraceOption registry value to activation of
rx debug output via DebugOutputString().


(cherry picked from commit 50d57f6c7b)
2009-01-27 17:49:15 +00:00
Jeffrey Altman
1ac9ac2cd4 DEVEL15-windows-libafsrpc-20090127
LICENSE MIT

confirmed that rx_ReadvProc, rx_WritevProc, and rx_WritevAlloc are
properly implemented for Windows.  Add them to the public export list.

Add rx_ReadProc32 and rx_WriteProc32 to the public export list.


(cherry picked from commit 306a7761b3)
2009-01-27 17:09:38 +00:00
Jeffrey Altman
028cf5da91 DEVEL15-windows-dcache-20090127
LICENSE MIT

Use the optimized rx_Read32 call instead of the slower rx_Read when
reading 32-bit integer values.


(cherry picked from commit bc558c75dc)
2009-01-27 17:06:23 +00:00
Mike Meffie
6f7011b335 DEVEL15-dafs-vol-offline-race-20090127
LICENSE IPL10
FIXES 124215

avoid race when taking volumes offline in dafs


(cherry picked from commit 72d502be69)
2009-01-27 14:24:33 +00:00
Jeffrey Altman
ee3f5dfda9 DEVEL15-rx-windows-xmit-20090126
LICENSE MIT

The WinSock API does not include the Posix recvmsg/sendmsg interfaces.
Beginning with XP/2003 Microsoft began to support WSARecvMsg which is
a mostly compatible implementation of recvmsg.  In Vista/2008 Microsoft
began to support WSASendMsg a mostly compatible implementation of sendmsg.

Neither are part of the WinSock API and therefore they must be loaded
at runtime via a WSAIoctl() call to obtain the function pointers.
When the functions are available it is now possible to avoid a large
number of memcpy() calls.

This patch also enables UDP port unreachable messages on XP and above.


(cherry picked from commit a4f63a818e)
2009-01-27 06:05:04 +00:00
Jeffrey Altman
3923a8ffe5 DEVEL15-rx-slow-write-packet-20090126
LICENSE MIT

In rx_SlowWritePacket the use of RX_MAXWVECS was incorrect.  The
niovecs field is allocated as [RX_MAXWVECS+1] with the 0th element
reserved for the rx header.  niovecs[RX_MAXWVECS] is therefore a
valid data buffer and the comparison should be (i <= RX_MAXWVECS).

This error has most likely not been noticed previously because
nothing in the OpenAFS source tree uses this function.


(cherry picked from commit 6e8039e8a5)
2009-01-26 22:54:06 +00:00
Simon Wilkinson
68e3572584 DEVEL15-discon-allow-saving-vcaches-on-shutdown-20090126
LICENSE IPL10
FIXES 124211

restructure so we can save info necessary to keep dirty changes across offline
shutdown


(cherry picked from commit 8552f84b8e)
2009-01-26 19:38:09 +00:00
Jeffrey Altman
ce42351755 DEVEL15-windows-btree-dir-enum-20090126
LICENSE MIT

Modify the cm_BPlusDirEnum interface:

* add the cm_scache_t * of the directory being enumerated to the
  cm_direnum_t object

* remove the cm_scache_t * from the cm_BPlusDirEnumBulkStat call
  now that it is part of the cm_direnum_t object

* maintain a reference to the cm_scache_t for the life of the
  cm_direnum_t object.  This ensures that the object cannot be
  recycled while the enumeration is in use.


(cherry picked from commit e42a066da1)
2009-01-26 15:50:59 +00:00
Simon Wilkinson
f93da82161 DEVEL15-disconnected-lseek-extension-20090126
LICENSE IPL10
FIXES 124200

make extending a file by lseek make the extension-created parts as cache
chunks


(cherry picked from commit 7a01a35adf)
2009-01-26 13:42:15 +00:00
Simon Wilkinson
3479a42592 DEVEL15-disconnected-symlink-support-20090125
LICENSE IPL10
FIXES 124177

allow creation of symlinks while disconnected


(cherry picked from commit d2960e5442)
2009-01-25 14:52:49 +00:00
Simon Wilkinson
50ad15d5a4 DEVEL15-disconnected-clear-cstatd-on-reconnect-20090125
LICENSE IPL10
FIXES 124180

don't treat any information we forged as being valid while offline as valid


(cherry picked from commit 58ab0e7c58)
2009-01-25 14:48:39 +00:00
Simon Wilkinson
f4c57fbce2 DEVEL15-linux24-update-20090123
LICENSE IPL10

make things work on linux 2.4 again


(cherry picked from commit b690aa8f81)
2009-01-23 15:20:46 +00:00