Simon Wilkinson [Tue, 17 Nov 2009 20:46:17 +0000 (20:46 +0000)]
Kernel is always defined
When we build the kernel module, either in the real or the ukernel
case, KERNEL is defined. So, remove the #ifdefs around our locking
primitives, so that things are a little bit clearer.
afsd: decprecate -mem_alloc_sleep flag (and related code)
On most platforms, afs_osi_Alloc_NoSleep() is already afs_osi_Alloc().
I have tested this on Solaris (the major exception) and haven't seen
any problems.
Andrew Deason [Mon, 11 Jan 2010 19:36:32 +0000 (13:36 -0600)]
Always check VInitVolumePackage2 return code
Some programs were not checking the return code of VInitVolumePackage2.
Although some programs do not care so much if we fail to properly init
the volume package (SYNC debug tools), at the very least log/print an
error, so it doesn't silently fail.
Other programs are changed to exit when VInitVolumePackage2 fail, so
e.g. salvages don't accidentally cause corruption on 'logging'-mounted
UFS partitions.
In any case, ensure the return code is always checked anywhere it is
called.
Simon Wilkinson [Sat, 19 Dec 2009 23:58:54 +0000 (23:58 +0000)]
Linux: Rework PAG to group conversions
The change to using a single group for PAGs on Linux led to a load
of special cases throughout the code. This patch moves the OS
dependent parts of this into the LINUX/ platform directory, and
rearranges that file so that there is a clear distinction between
the one and two group sections of the code.
Jeffrey Altman [Mon, 11 Jan 2010 19:21:11 +0000 (14:21 -0500)]
Windows: Protect buffers in smb_WriteData from simultaneous writes
smb_WriteData does not properly use CM_SCACHESYNC_WRITE to
protect buffers from simultaneous writes. Instead of simply
testing CM_SCACHESYNC_WRITE at the top of the while loop,
the flag must remain set until the entire write completes.
cm_SyncOp is now called once and cm_SyncOpDone is only called
upon final success or error.
In addition, as 'count' is unsigned, the test for count < 0
is replaced with count != 0.
Jeffrey Altman [Mon, 11 Jan 2010 18:51:42 +0000 (13:51 -0500)]
Windows: buf_Recycle should clean up flags and reset version
The CM_BUF_EOF and CM_BUF_ERROR buffer flags and the
buffer dataVersion should be reset within buf_Recycle()
instead of by the caller of buf_Recycle().
Jeffrey Altman [Sat, 9 Jan 2010 05:26:37 +0000 (00:26 -0500)]
Windows: do not leak scp->dirlock if cm_BPlusDirBuildTree fails
In cm_BeginDirOp, the scp->dirlock would be leaked if
cm_BPlusDirBuildTree() failed. This would either result in
a panic later on if lock order validation is active; or as
an inability to process subsequent requests on the directory.
Simon Wilkinson [Sun, 22 Nov 2009 23:31:00 +0000 (23:31 +0000)]
Use dget_parent to handle getting inode of parent
We can't safely do dp->d_parent->d_inode to access the parent inode
of a given dentry. Instead, use dget_parent() to get safely get a
reference on the parent dcache, and access the inode using that
reference. Dispose of this reference with dput() as appropriate.
Matt Benjamin [Tue, 5 Jan 2010 02:31:27 +0000 (21:31 -0500)]
freebsd: CM changes targeting RELENG_8
Force all vnodes onto the fs mount queue when allocated. This fixes
a long-standing vnode recycling problem. Don't call vgone() on a vnode
whose refcount is 0. Always destroy vnodes in VOP_RECLAIM. This is work
in progress towards fixing old reclaim bug mentioned in Rees comment.
Hold vnode returned from gop_lookupname_user in afs_pioctl_syscall,
to avoid it going inactive before we're finished. Also unlock it if
necessary. Don't use custom vop_lock impl when AFS_FBSD80_ENV. Remove
duplicate conditional code in vnode pretty-print (old cruft). Also don't
format fid members as hex. Revert vn_lock exclusve in osi_VM_StoreAllSegments
(fixes deadlock introduced by me in a 2009 changeset). Remove unused
variables in osi_VM_StoreAllSegments.
Andrew Deason [Thu, 17 Dec 2009 19:59:57 +0000 (13:59 -0600)]
DAFS: avoid saving fileserver state when panicing
When ShutDownAndCore is called with dopanic=1, avoid trying to save
fileserver state. When we are panic'ing it is very possible that the
thread that called ShutDownAndCore is one of the background threads we
are waiting for, or that the calling thread is holding H_LOCK. Since we
are panicing, the fileserver state is probably not consistent anyway, so
just avoid trying to save state altogether, and avoid a possible
deadlock.
Andrew Deason [Fri, 6 Nov 2009 20:05:16 +0000 (14:05 -0600)]
DAFS: Allow non-fileserver to schedule salvages
Allow non-fileserver programs to schedule salvages through the fileserver
via FSSYNC (VOL_FORCE_ERROR with the FSYNC_SALVAGE reason code). Also
make the volserver schedule salvages this way when it encounters the
appropriate errors.
FIXES 124484
Change-Id: I03ecf6302436c35fec705cd6c84a40b7cdbf6f97
Reviewed-on: http://gerrit.openafs.org/787 Reviewed-by: Andrew Deason <adeason@sinenomine.net> Tested-by: Andrew Deason <adeason@sinenomine.net> Reviewed-by: Derrick Brashear <shadow@dementia.org>
Remove the conditionals in the linux 2.6 tree for GFP_NOFS. This feature
has existed since the beginning of the 2.6 tree. This makes the code
easier to read.
tidy up the osi_module and osi_misc prototyping, and the error checking
and returns at module load time. side effect: also use the afs3_syscall
prototype for the BSDs.
Dan Hyde [Wed, 6 Jan 2010 15:49:39 +0000 (10:49 -0500)]
volmonitor copy link before calling free
Copy tt->next before TRELE(tt) calls free(tt).
We have a core file from a VTRANS_OBJ_LOCK(tt) assert failure, with tt
pointing into glibc's malloc data structures.
Change-Id: Id52b774520c59c224b58f5d507cc490dafea5ca1
Reviewed-on: http://gerrit.openafs.org/1069 Reviewed-by: Andrew Deason <adeason@sinenomine.net> Tested-by: Andrew Deason <adeason@sinenomine.net> Reviewed-by: Thomas L. Kula <tkula@umich.edu> Reviewed-by: Michael Meffie <mmeffie@sinenomine.net> Reviewed-by: Dan Hyde <drh@umich.edu> Reviewed-by: Derrick Brashear <shadow@dementia.org>
Simon Wilkinson [Wed, 6 Jan 2010 15:12:32 +0000 (15:12 +0000)]
Linux: Use the correct ATIME flag
Since Linux kernel 2.4.0, MS_NOATIME has been a super block flag,
and S_NOATIME has been the corresponding inode flag. Use the
correct flag when we're opening cache files.
this is a dodge; we should sign with a real certificate and distribute
signed binaries. until we more formally exist, this allows application
firewall to at least cope better with us.
Andrew Deason [Fri, 18 Dec 2009 18:17:41 +0000 (12:17 -0600)]
Refuse to attach inode partitions with UFS logging
Partitions with the 'logging' UFS mount option are known to cause
corruption when using the inode fileserver backend. So, if we detect
that we are attempting to attach a 'logging' partition, refuse to attach
it.
Marc Dionne [Tue, 5 Jan 2010 00:37:40 +0000 (19:37 -0500)]
Linux: don't oops on writeback if vcache has no stashed credentials
When doing writeback, use current credentials if we can't find
stashed credentials in the vcache entry.
This is normally stashed in afs_open, so it's not clear how we
get to that point, but that's not a reason to trigger an oops.
Michael Meffie [Tue, 29 Dec 2009 18:40:15 +0000 (13:40 -0500)]
viced: allow alternate addresses on the same hash chain again
Revert the logic meant to prevent duplicate entries in the
host address hash table so hosts with multiple addresses can
be stored in the same hash bucket again.
Add a new log message to show when the host cannot be stored
in the hash table because of an address-port pair collision
with a host already in the hash table.
Jeffrey Altman [Wed, 30 Dec 2009 11:32:58 +0000 (11:32 +0000)]
Unix CM: Use xdr_free to free memory allocated by XDR
In src/afs/afs_volume.c VL_GetAddrsU() returns memory allocated by the
xdr package. In 1.4 there was no method of freeing this safely. On the
head there is using the xdr_free() function.
Marc Dionne [Thu, 31 Dec 2009 16:08:32 +0000 (11:08 -0500)]
Build fix: restore centry in ptutils.c
The declaration of centry is needed when supergroups are not
enabled. Restore it within the ifdef so that we don't get
an unused variable warning if supergroups are enabled.
Russ Allbery [Thu, 31 Dec 2009 00:22:37 +0000 (16:22 -0800)]
Remove warnings from supergroups code on x86
Prototype functions where necessary, remove unused variables, fix
mismatches of data types (char * != void *), initialize variables the
compiler can't tell are initialized, compare integers against 0 and
not NULL, and wrap assignments used as conditions in an explicit
comparison.
This removes all warnings that fail --enable-checking on x86 with
--enable-supergroups. 64-bit will still have warnings.
Matt Benjamin [Wed, 23 Dec 2009 00:48:02 +0000 (19:48 -0500)]
freebsd: track RELENG_8
Fixes to re-enable build and load of kernel module on FreeBSD's
RELENG_8. Includes the following changes:
Remove cred pointer argument to vop_getattr and vop_setattr.
Restore VSUID and VGUID defines, but move to osi_machdep.h.
Fixup calls to vinvalbuf, create a macro to avoid too many ifdefs.
Revert incorrect definition of gop_lookupname_user. Avoid
uninitialized use of 'code' variable in vop_access, and track
new a_accmode member name. Remove cred pointer in VFS_STATFS.
Avoid including sys/ioctl.h in kernel mode (formerly had no
effect, it's now an error). Avoid using an empty file as an
object file in shlibafsrpc link. Replace suser() calls with calls
to priv_check, using defined OpenAFS privileges (thanks due to
Ben Kaduk).
Simon Wilkinson [Sun, 27 Dec 2009 11:06:01 +0000 (11:06 +0000)]
Abstract out Linux sillyrename function
In order to keep the dcache happy, the Linux client has its own
sillyrename function. Abstract this out from afs_linux_unlink into a
function of its own (afs_linux_sillyrename) so we can make use of it
from other vnodeops.
Simon Wilkinson [Thu, 24 Dec 2009 18:19:01 +0000 (18:19 +0000)]
Remove HAVE_STRUCT_BUF test
Ever since b1edf891d717ee8e08c0d93738a204cff09cf68f was committed,
we've not needed to test to see if the OS provides struct buf - we
can just declare it as a structure without providing a definition
in all circumstances.
Simon Wilkinson [Thu, 24 Dec 2009 15:14:46 +0000 (15:14 +0000)]
Remove --disable-afsdb
Remove the --disable-afsdb option from configure, and the
corresponding AFS_AFSDB_ENV #ifdefs from the code. This means that
the AFSDB code will always be built, but whether it used or not
can still be controlled by runtime options in the cache manager.
Andrew Deason [Wed, 30 Dec 2009 16:44:39 +0000 (11:44 -0500)]
Make DAFS 'bos salvage' work in restricted mode
bosserver currently has code to specifically allow 'bos
salvage'-initiated salvages to run when in restricted mode. This only
specifically tests for running salvager, though, and so fails when 'bos
salvage' is run against a DAFS fileserver and tries to run
'salvageserver -client' instead.
Test for 'salvageserver -client' as well, so we can run 'bos salvage'
for DAFS fileservers in restricted mode.
Simon Wilkinson [Thu, 24 Dec 2009 13:00:53 +0000 (13:00 +0000)]
Turn on bos restricted code
Remove the #ifdef's around the bos restricted mode code. This makes
restricted mode available as part of the standard build, but a server
will not go into restricted mode unless the relevant command line
options are specified, or bos setrestricted is run.
Document bos_setrestricted and bos_getrestricted, and the new
'-restricted' command line option. Add a note to the man pages of
all of the commands whose behaviour is affected by restricted mode.
Add 'setr' and 'getr' aliases for setrestart and getrestart so that
these documented shortcuts continue to work (otherwise they'd be
ambiguous against setrestricted and getrestricted). Note that
setre, setres, and setrest will not work once this patch is applied.
Change-Id: Ie69d21493ea5f78757f0a3d478de43fdaabd3c31
Reviewed-on: http://gerrit.openafs.org/1028 Reviewed-by: Michael Meffie <mmeffie@sinenomine.net> Reviewed-by: Andrew Deason <adeason@sinenomine.net> Tested-by: Andrew Deason <adeason@sinenomine.net> Reviewed-by: Derrick Brashear <shadow@dementia.org> Tested-by: Derrick Brashear <shadow@dementia.org>
Simon Wilkinson [Tue, 29 Dec 2009 17:03:50 +0000 (17:03 +0000)]
Unix: Merge aklog with aklog_main
Historically, aklog was split into aklog.c (which just contained a
wrapper) and aklog_main.c, which did all of the hard work. Now
that we've purged all of the Windows code from aklog_main.c, we
can merge them both into the same file, so do so.
Andrew Deason [Tue, 29 Dec 2009 20:45:51 +0000 (15:45 -0500)]
Return a cell name from afsconf_LookupServer
Previously, afsconf_LookupServer could not meaningfully return a cell
name, since a char* was passed in for realCellName, and
afsconf_GetAfsdbInfo was expecting the value of the pointer to change.
Change afsconf_LookupServer to take a char**, and pass realCellName by
reference, so we can get a cell name back.
Simon Wilkinson [Tue, 29 Dec 2009 21:56:36 +0000 (21:56 +0000)]
Fix ioctl32 inclusion on Sparc 64
ioctl32.h only became available in Linux 2.5.44, so reduce the scope
of the include. It went away again, in Linux 2.6.22. In its short
life, it only ever provided prototypes for registering translation
handlers, and for sys_ioctl.
Only include it where we call those handlers, and when we call them,
to remove compilation errors for Sparc64.
Simon Wilkinson [Tue, 29 Dec 2009 22:58:56 +0000 (22:58 +0000)]
Linux: Replace invalidate_inode_pages
invalidate_inode_pages is now marked as deprecated in the kernel
headers. Use the equivalent call to invalidate_mapping_pages() which
has been available since Linux 2.5
Andrew Deason [Thu, 24 Dec 2009 18:32:14 +0000 (13:32 -0500)]
Move TOP_INCDIR/des dependency to prelude
Make TOP_INCDIR/des a dependency of the 'prelude' target, not all of the
'dest'-ish targets. Without this, things like 'make tviced' fail since
we never create the TOP_INCDIR/des directory, but 'des' needs to copy
headers into there.
Also, remove the other redundant INCDIR/LIBDIR deps in the 'dest'-y
targets, and put them in 'prelude'.
Simon Wilkinson [Tue, 22 Dec 2009 21:46:43 +0000 (21:46 +0000)]
Solaris: Don't access lbolt directly
Recent changes in OpenSolaris have removed the 'lbolt' variable.
However, the ddi_get_lbolt accessor (which has been present since
Solaris 10) can be used to get access to the same value. So, use it.
Simon Wilkinson [Tue, 22 Dec 2009 21:42:19 +0000 (21:42 +0000)]
Solaris: Don't directly fiddle with the groups structure
Solaris doesn't let us directly play with the groups structure
anymore. Instead, there is a crsetgroups accessor which can be
used instead. So, use it.
Simon Wilkinson [Tue, 22 Dec 2009 21:38:00 +0000 (21:38 +0000)]
Solaris: Be more flexible about compilers
OpenSolaris doesn't have its C compiler in /opt/SUNWspro/bin/cc,
but we still have to be careful to avoid gcc, as that can't
build the kernel module.
As a short term stop gap, add a PATH_PROG test which looks in
both /opt/SUNWspro/bin and /opt/SunStudioExpress/bin for cc.
We probably should look in more places, and in the long run,
we should probably be taking whatever autoconf gives us
(for userspace, at least)
Simon Wilkinson [Tue, 22 Dec 2009 21:34:23 +0000 (21:34 +0000)]
Look for aclocal in more places
Some operating systems (cough, OpenSolaris, cough) have multiple
versions of aclocal installed, and don't populate the 'aclocal' name.
If 'aclocal' isn't present, then try using 'aclocal-1.10' before we give
up in disgust.
Andrew Deason [Tue, 22 Dec 2009 14:49:21 +0000 (09:49 -0500)]
Fix typo in afs_linux_cred_is_current
987816dfa852750caca8c64c44174a5333ae0e3b introduced a stray 'cred' in
one of the afs_linux_cred_is_current definitions. Remove it so we can
build without STRUCT_TASK_HAS_CRED.
Michael Meffie [Thu, 10 Dec 2009 16:37:34 +0000 (11:37 -0500)]
Consolidate duplicate definitions
Housekeeping change to consolidate some common definitions.
Create a new common header called afs_consts.h. This allows
us to remove the afscp.c dependency on afs.h (so src/tests
will build again.) Rename the max filename definition in the
update server package to MAXFNSIZE to avoid a name conflict
with MAXSIZE. The global defines will be prefixed with
AFS_ in a second patch.
Change-Id: I2b8d555a244cc92d889618de4eec4a99550d7c7f
Reviewed-on: http://gerrit.openafs.org/855 Reviewed-by: Mickey Lane <mlane@sinenomine.net> Tested-by: Mickey Lane <mlane@sinenomine.net> Reviewed-by: Derrick Brashear <shadow@dementia.org> Tested-by: Derrick Brashear <shadow@dementia.org>
Marc Dionne [Sun, 20 Dec 2009 03:22:05 +0000 (22:22 -0500)]
Linux: utsrelease.h is moving
In kernel 2.6.33, utsrelease.h has moved to include/generated.
Adapt the configure code to consider that location, and clean
up that section's indentation.
Simon Wilkinson [Sat, 19 Dec 2009 21:53:54 +0000 (21:53 +0000)]
Fix PAGs for all platforms without Linux keyrings
The changes in 7b272177de4c6f78db7f2315f4e30e85ab7660bb sadly break
all platforms which aren't Linux. This is because the logic in PagInCred
doesn't handle the non-Linux case at all. Fix this so that we call
afs_get_group_pag whenever we're not running on Linux.
The code also doesn't match the comment - Linux kernels which don't
have keyrings should use afs_get_group_pag(), regardless of whether
STRUCT_TASK_HAS_CRED. It's unlikely this bit would ever bite anyone
though, kernels with cred support almost certainly require keyrings.
Simon Wilkinson [Sat, 19 Dec 2009 20:21:36 +0000 (20:21 +0000)]
Linux: Simplify keyring compatibility code
This introduces a few inline functions in osi_compat.h, to reduce the
number of #ifdefs in the main chunk of code. In particular, we gain
* afs_linux_key_alloc : to handle all the different key_alloc
signatures
* afs_linux_search_keyring : to handle our two different mechanisms
for searching a keyring
* afs_linux_cred_is_current : will return true if we're using native
credentials, and the passed creds are also
those of the current task
Simon Wilkinson [Sat, 19 Dec 2009 15:40:49 +0000 (15:40 +0000)]
Linux: Don't panic when keys aren't found
This fixes two potential problems in our session keyring lookup code,
which can lead to panics in situations where we're using the new struct
cred based code.
The first is that if there is no session kerying installed for the
current task, we'll attempt to do a lookup on a NULL kerying and oops.
The second is that if the keyring_search returns EPERM, then we can end
up unmasking that error code, and return NULL, rather than an error.
Change-Id: If0e2804408ec17b00f352980cee6a8e56704d93f
Reviewed-on: http://gerrit.openafs.org/1004 Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com> Tested-by: Marc Dionne <marc.c.dionne@gmail.com> Reviewed-by: Derrick Brashear <shadow@dementia.org>
Simon Wilkinson [Sat, 19 Dec 2009 14:48:32 +0000 (14:48 +0000)]
Linux: Flush vcaches when a mount fails
GetVCache (well, really NewVCache) creates a new vcache, with an attached
inode, and links it into the VLRU queue, regardless of whether it is
successful in populating that vcache or not. The attached inode, on Linux,
contains a reference to the super block of the filesystem. If the created
vcache is for the root, however, and populating that vcache failes, then mount
fails, and the super block is disposed of. This leaves us with a vcache in
the VLRU queue which contains a reference to a non-existent inode.
When ShakeLooseVCaches comes along a few minutes later, it attempts to discard
this inode. However, doing so fails because the inode no longer has a valid
super block.
Avoid this trauma by ensuring all vcaches are disposed of before the super
block goes away, in the event of a mount failure.
Change-Id: I68864f1ea401d24adba76164905a17de6ab3e6ce
Reviewed-on: http://gerrit.openafs.org/1003 Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com> Tested-by: Marc Dionne <marc.c.dionne@gmail.com> Reviewed-by: Derrick Brashear <shadow@dementia.org>
Andrew Deason [Thu, 17 Dec 2009 20:59:44 +0000 (14:59 -0600)]
Do not trust FetchData length from fileservers
Currently the Unix CM implicitly trusts that the length from a FetchData
request from a fileserver will always be less than the requested length.
If the fileserver sends more data than requested, we can use up more
cache space than we intended, possibly exceeding the cacheinfo cache
limits.
Add a check for this, and return EIO to the caller if the fileserver
responds with too much data.
Andrew Deason [Fri, 18 Dec 2009 18:21:35 +0000 (12:21 -0600)]
platform target depends on cmd and vol
The 'platform' target depends on cmd and vol, since on solaris
non-namei, we build fs_conv_sol26.c, which depends on some volume
structures, and uses libcmd. So, have Makefile.in accurately reflect
that dependency so we can build.
Andrew Deason [Fri, 16 Oct 2009 22:12:35 +0000 (17:12 -0500)]
Add the 'vos endtrans' command
Add a command to vos to explicitly end volume transactions. These can
happen if (for example) we segfault or the user ctrl-C's in 'vos'
before/after a volume operation, but before we AFSVolEndTrans.
Andrew Deason [Fri, 6 Nov 2009 20:03:52 +0000 (14:03 -0600)]
Expand ProgramType enumeration
The ProgramType values volumeUtility and salvager are overloaded. Expand
the ProgramType enum to include more specific program types, and adjust
conditionals to match.
Also, instead of determining all behavior by checking programType, add
some flags to be passed in to VInitVolumePackage to determine e.g.
whether or not we can use the FSSYNC channel. This makes it easier to
see the intent of some conditionals, and reduces the number of times a
caller must lie about what program it is.
Simon Wilkinson [Fri, 20 Nov 2009 15:08:25 +0000 (15:08 +0000)]
Linux: Use splice to speed up cache storeback
This patch adds a new cache store function for Linux, which uses
splice() and direct access to the page cache, rather than doing
data copies to a temporary buffer between rx and afs. It removes
one copy, and some context switching, from the write codepath.
One side-effect here is that it will delay storebehinds from
returning control to the user. Instead of returning once the first
4k has been successfully transfered, we will wait until a cache
chunk has been transmitted. This is currently unavoidable, as we
can't take the GLOCK within a splice actor.
Simon Wilkinson [Fri, 20 Nov 2009 15:03:37 +0000 (15:03 +0000)]
Rework cache store back
This patch reworks the code to store data from the cache to the server,
such that the entire store loop can be replaced. The idea here is that a
platform which wishes to provide a different store loop, in particular
one which doesn't rely upon multiple data copies, may do so simply by
plugging in a new function.
Marc Dionne [Thu, 10 Dec 2009 00:06:18 +0000 (19:06 -0500)]
Linux: deal with ctl_name removal
The binary sysctl interface will be removed in kernel 2.6.33 and
ctl_name will be dropped from the ctl_table structure.
Make the code that uses ctl_name conditional on a configure test.
Jeffrey Altman [Sat, 5 Dec 2009 15:51:27 +0000 (10:51 -0500)]
Windows: cm_BPlusEnumAlloc should not fail for zero entries
If cm_BPlusEnumAlloc returns NULL, the caller assumes a
memory allocation error. If the enumeration consists of
zero entries, allocate a structure that stores zero entries.
Jeffrey Altman [Sat, 5 Dec 2009 15:53:03 +0000 (10:53 -0500)]
Windows: cm_BPlusDirBuildTree can fail
It is possible that cm_BPlusDirBuildTree can fail. For example,
the server could be marked down after a callback is obtained
but before all of the directory data buffers have been fetched.
cm_BeginDirOp must check for the failure, destroy the tree,
and return the failure code to the caller. Otherwise, a tree
with no entries may be created and marked with the current
data version.
Andrew Deason [Sun, 6 Dec 2009 20:56:20 +0000 (14:56 -0600)]
Make HandleClientContext take an afs_ucred_t
5d5d18071608d9782a5d936f79215048af641410 missed one occurrence of
AFS_UCRED. Make HandleClientContext take an afs_ucred_t instead of
AFS_UCRED, so afs_pioctl.c builds again.
Simon Wilkinson [Sun, 6 Dec 2009 14:25:08 +0000 (14:25 +0000)]
Remove AFS_USEBUFFERS
The AFS_USEBUFFERS code has been disabled for all supported platforms
since the initial OpenAFS code drop. Simplify the buffers code by
removing it entirely.
Change-Id: Iab6b2d54361eca1a1446b4804b3d6533d75f2831
Reviewed-on: http://gerrit.openafs.org/894 Reviewed-by: Andrew Deason <adeason@sinenomine.net> Tested-by: Andrew Deason <adeason@sinenomine.net> Reviewed-by: Derrick Brashear <shadow@dementia.org>