NFS: Convert kmap_atomic() to kmap_local_folio()
authorFabio M. De Francesco <fmdefrancesco@gmail.com>
Wed, 3 May 2023 17:24:11 +0000 (19:24 +0200)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Fri, 19 May 2023 20:50:05 +0000 (16:50 -0400)
commit4b71e2416ec4cb3edd6c667243bce357b0c6f7b3
tree8aad3c7a837022aa87be89aa891a2b46f7d2e8e3
parentf1fcbaa18b28dec10281551dfe6ed3a3ed80e3d6
NFS: Convert kmap_atomic() to kmap_local_folio()

kmap_atomic() is deprecated in favor of kmap_local_{folio,page}().

Therefore, replace kmap_atomic() with kmap_local_folio() in
nfs_readdir_folio_array_append().

kmap_atomic() disables page-faults and preemption (the latter only for
!PREEMPT_RT kernels), However, the code within the mapping/un-mapping in
nfs_readdir_folio_array_append() does not depend on the above-mentioned
side effects.

Therefore, a mere replacement of the old API with the new one is all that
is required (i.e., there is no need to explicitly add any calls to
pagefault_disable() and/or preempt_disable()).

Tested with (x)fstests in a QEMU/KVM x86_32 VM, 6GB RAM, booting a kernel
with HIGHMEM64GB enabled.

Cc: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Fabio M. De Francesco <fmdefrancesco@gmail.com>
Fixes: ec108d3cc766 ("NFS: Convert readdir page array functions to use a folio")
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
fs/nfs/dir.c