--- openafs-1.4.10/src/afs/LINUX/osi_cred.c.orig 2009-06-12 02:03:13.000000000 -0400 +++ openafs-1.4.10/src/afs/LINUX/osi_cred.c 2009-06-12 02:03:16.000000000 -0400 @@ -104,6 +104,12 @@ #if defined(STRUCT_TASK_HAS_CRED) struct cred *new_creds; + /* If our current task doesn't have identical real and effective + * credentials, commit_cred won't let us change them, so we just + * bail here. + */ + if (current->cred != current->real_cred) + return; new_creds = prepare_creds(); new_creds->fsuid = cr->cr_uid; new_creds->uid = cr->cr_ruid;