--- src/kernel/linux-2.6/pvfs2-utils.c.orig 2009-09-25 18:36:56.767515720 -0700 +++ src/kernel/linux-2.6/pvfs2-utils.c 2009-09-25 18:50:42.832514197 -0700 @@ -19,8 +19,8 @@ if (credentials) { memset(credentials, 0, sizeof(PVFS_credentials)); - credentials->uid = current->fsuid; - credentials->gid = current->fsgid; + credentials->uid = current_fsuid(); + credentials->gid = current_fsgid(); ret = 0; } @@ -731,7 +731,7 @@ if (inode) { gossip_debug(GOSSIP_XATTR_DEBUG, "getxattr on inode %llu, name %s (uid %o, gid %o)\n", - llu(get_handle_from_ino(inode)), name, current->fsuid, current->fsgid); + llu(get_handle_from_ino(inode)), name, current_fsuid(), current_fsgid()); pvfs2_inode = PVFS2_I(inode); /* obtain the xattr semaphore */ down_read(&pvfs2_inode->xattr_sem); --- src/kernel/linux-2.6/acl.c.orig 2009-09-25 19:18:47.078514494 -0700 +++ src/kernel/linux-2.6/acl.c 2008-04-14 08:37:32.000000000 -0700 @@ -420,11 +420,11 @@ return -EOPNOTSUPP; } /* Are we capable of setting acls on a file for which we should not be? */ - if ((current->fsuid != inode->i_uid) && !capable(CAP_FOWNER)) + if ((current_fsuid() != inode->i_uid) && !capable(CAP_FOWNER)) { gossip_err("pvfs2_xattr_set_acl: operation not permitted " - "(current->fsuid %d), (inode->owner %d)\n", - current->fsuid, inode->i_uid); + "(current_fsuid %d), (inode->owner %d)\n", + current_fsuid(), inode->i_uid); return -EPERM; } if (value) @@ -680,11 +680,11 @@ if (ret != 0) { gossip_debug(GOSSIP_ACL_DEBUG, "pvfs2_permission failed: inode: %llu mask = %o" - "mode = %o current->fsuid = %d " + "mode = %o current_fsuid = %d " "inode->i_uid = %d, inode->i_gid = %d " "in_group_p = %d " "(ret = %d)\n", - llu(get_handle_from_ino(inode)), mask, inode->i_mode, current->fsuid, + llu(get_handle_from_ino(inode)), mask, inode->i_mode, current_fsuid(), inode->i_uid, inode->i_gid, in_group_p(inode->i_gid), ret); @@ -706,10 +706,10 @@ int error; gossip_debug(GOSSIP_ACL_DEBUG, "pvfs2_permission: inode: %llu mask = %o" - "mode = %o current->fsuid = %d " + "mode = %o current_fsuid = %d " "inode->i_uid = %d, inode->i_gid = %d" "in_group_p = %d\n", - llu(get_handle_from_ino(inode)), mask, mode, current->fsuid, + llu(get_handle_from_ino(inode)), mask, mode, current_fsuid(), inode->i_uid, inode->i_gid, in_group_p(inode->i_gid)); @@ -727,7 +727,7 @@ gossip_err("pvfs2_permission: cannot write to an immutable file!\n"); return -EACCES; } - if (current->fsuid == inode->i_uid) + if (current_fsuid() == inode->i_uid) { mode >>= 6; } --- src/kernel/linux-2.6/inode.c.orig 2009-09-25 19:16:42.865984161 -0700 +++ src/kernel/linux-2.6/inode.c 2008-04-14 08:37:32.000000000 -0700 @@ -532,8 +532,8 @@ "pvfs2_get_custom_inode_common: inode: %p, inode->i_mode %o\n", inode, inode->i_mode); inode->i_mapping->host = inode; - inode->i_uid = current->fsuid; - inode->i_gid = current->fsgid; + inode->i_uid = current_fsuid(); + inode->i_gid = current_fsgid(); inode->i_atime = inode->i_mtime = inode->i_ctime = CURRENT_TIME; inode->i_size = PAGE_CACHE_SIZE; #ifdef HAVE_I_BLKSIZE_IN_STRUCT_INODE --- src/kernel/linux-2.6/pvfs2-kernel.h.orig 2009-09-25 19:15:56.296513227 -0700 +++ src/kernel/linux-2.6/pvfs2-kernel.h 2008-04-14 08:37:32.000000000 -0700 @@ -1137,8 +1137,8 @@ #define fill_default_sys_attrs(sys_attr,type,mode)\ do \ { \ - sys_attr.owner = current->fsuid; \ - sys_attr.group = current->fsgid; \ + sys_attr.owner = current_fsuid(); \ + sys_attr.group = current_fsgid(); \ sys_attr.size = 0; \ sys_attr.perms = PVFS_util_translate_mode(mode,0); \ sys_attr.objtype = type; \ @@ -1165,8 +1165,8 @@ #define fill_default_sys_attrs(sys_attr,type,mode)\ do \ { \ - sys_attr.owner = current->fsuid; \ - sys_attr.group = current->fsgid; \ + sys_attr.owner = current_fsuid(); \ + sys_attr.group = current_fsgid(); \ sys_attr.size = 0; \ sys_attr.perms = PVFS_util_translate_mode(mode,0); \ sys_attr.objtype = type; \ --- src/kernel/linux-2.6/acl.c.orig 2009-09-26 20:13:28.207761152 -0700 +++ src/kernel/linux-2.6/acl.c 2009-09-26 20:14:42.388005460 -0700 @@ -20,6 +20,7 @@ #if !defined(PVFS2_LINUX_KERNEL_2_4) && defined(HAVE_GENERIC_GETXATTR) && defined(CONFIG_FS_POSIX_ACL) #include "pvfs2-internal.h" +#include #ifdef HAVE_POSIX_ACL_H #include #endif