linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / fs / jfs / acl.c
index bc0135a..5df5582 100644 (file)
@@ -183,9 +183,6 @@ cleanup:
                posix_acl_release(acl);
        } else
                inode->i_mode &= ~current->fs->umask;
-       
-       JFS_IP(inode)->mode2 = (JFS_IP(inode)->mode2 & 0xffff0000) |
-                              inode->i_mode;
 
        return rc;
 }
@@ -210,12 +207,12 @@ static int jfs_acl_chmod(struct inode *inode)
        rc = posix_acl_chmod_masq(clone, inode->i_mode);
        if (!rc) {
                tid_t tid = txBegin(inode->i_sb, 0);
-               mutex_lock(&JFS_IP(inode)->commit_mutex);
+               down(&JFS_IP(inode)->commit_sem);
                rc = jfs_set_acl(tid, inode, ACL_TYPE_ACCESS, clone);
                if (!rc)
                        rc = txCommit(tid, 1, &inode, 0);
                txEnd(tid);
-               mutex_unlock(&JFS_IP(inode)->commit_mutex);
+               up(&JFS_IP(inode)->commit_sem);
        }
 
        posix_acl_release(clone);