[PATCH] NFS: split nfsi->flags into two fields

Certain bits in nfsi->flags can be manipulated with atomic bitops, and some
are better manipulated via logical bitmask operations.

This patch splits the flags field into two.  The next patch introduces atomic
bitops for one of the fields.

Test plan:
 Millions of fsx ops on SMP clients.

Signed-off-by: Chuck Lever <cel@netapp.com>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Chuck Lever
2005-08-18 11:24:09 -07:00
committed by Linus Torvalds
parent 3c7bf1eaee
commit 5529680981
6 changed files with 63 additions and 52 deletions

View File

@ -140,7 +140,7 @@ static int nfs_readpage_sync(struct nfs_open_context *ctx, struct inode *inode,
if (rdata->res.eof != 0 || result == 0)
break;
} while (count);
NFS_FLAGS(inode) |= NFS_INO_INVALID_ATIME;
NFS_I(inode)->cache_validity |= NFS_INO_INVALID_ATIME;
if (count)
memclear_highpage_flush(page, rdata->args.pgbase, count);
@ -473,7 +473,7 @@ void nfs_readpage_result(struct rpc_task *task)
}
task->tk_status = -EIO;
}
NFS_FLAGS(data->inode) |= NFS_INO_INVALID_ATIME;
NFS_I(data->inode)->cache_validity |= NFS_INO_INVALID_ATIME;
data->complete(data, status);
}