NFS: Replace atomic_t variables in nfs_direct_req with a single spin lock
authorChuck Lever <cel@netapp.com>
Mon, 20 Mar 2006 18:44:34 +0000 (13:44 -0500)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Mon, 20 Mar 2006 18:44:34 +0000 (13:44 -0500)
commit15ce4a0c1ce0d5e288398cb9e5493fd4e55e2025
treeb40b3096bbbed8b0aa2a29e9374240dd7eaa47a0
parent88467055f7654302c12df74e5fe4d12516656a39
NFS: Replace atomic_t variables in nfs_direct_req with a single spin lock

Three atomic_t variables cause a lot of bus locking.  Because they are all
used in the same places in the code, just use a single spin lock.

Now that the atomic_t variables are gone, we can remove the request size
limitation since the code no longer depends on the limited width of atomic_t
on some platforms.

Test plan:
Compile with CONFIG_NFS and CONFIG_NFS_DIRECTIO enabled.  Millions of fsx
operations, iozone, OraSim.

Signed-off-by: Chuck Lever <cel@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfs/direct.c