]> git.baikalelectronics.ru Git - kernel.git/commit
NFS: Don't use vm_map_ram() in readdir
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Sat, 8 Jan 2011 22:45:38 +0000 (17:45 -0500)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Mon, 10 Jan 2011 19:45:01 +0000 (14:45 -0500)
commit6a53960c43f884770d99d91a6f4c281befb63d24
tree505c9a1dc26c26608ce6a5981093a6357d4f3638
parentb1d6256ab80481c7e660520326c38f375686235c
NFS: Don't use vm_map_ram() in readdir

vm_map_ram() is not available on NOMMU platforms, and causes trouble
on incoherrent architectures such as ARM when we access the page data
through both the direct and the virtual mapping.

The alternative is to use the direct mapping to access page data
for the case when we are not crossing a page boundary, but to copy
the data into a linear scratch buffer when we are accessing data
that spans page boundaries.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Tested-by: Marc Kleine-Budde <mkl@pengutronix.de>
Cc: stable@kernel.org [2.6.37]
fs/nfs/dir.c
fs/nfs/nfs2xdr.c
fs/nfs/nfs3xdr.c
fs/nfs/nfs4xdr.c
include/linux/sunrpc/xdr.h
net/sunrpc/xdr.c