AFS: checking wrong bit in afs_readpages()
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 20 Mar 2012 16:58:06 +0000 (16:58 +0000)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 20 Mar 2012 18:14:38 +0000 (11:14 -0700)
We should be testing "if (vnode->flags & (1 << 4))" instead of
"if (vnode->flags & 4) {".  The current test checks if the data was
modified instead of deleted.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/afs/file.c

index 14d89fa58feec61d52cb8afe572883647c62a997..8f6e9234d5654a6b397500762048aff9da394baf 100644 (file)
@@ -251,7 +251,7 @@ static int afs_readpages(struct file *file, struct address_space *mapping,
        ASSERT(key != NULL);
 
        vnode = AFS_FS_I(mapping->host);
-       if (vnode->flags & AFS_VNODE_DELETED) {
+       if (test_bit(AFS_VNODE_DELETED, &vnode->flags)) {
                _leave(" = -ESTALE");
                return -ESTALE;
        }