Whamcloud - gitweb
LU-11403 llite: ll_fault fixes 47/34247/7
authorPatrick Farrell <pfarrell@whamcloud.com>
Tue, 12 Mar 2019 18:32:21 +0000 (14:32 -0400)
committerOleg Drokin <green@whamcloud.com>
Sat, 13 Apr 2019 04:49:57 +0000 (04:49 +0000)
commita8f4d1e5fd79e77f1347e983ec52f2ddc3e75ab9
treed4b7e711fd283eeb0377dca19932ebe313994946
parent404f289a80ceff8978bccf43ce2fac023f33c9f5
LU-11403 llite: ll_fault fixes

Various error conditions in the fault path can cause us to
not return a page in vm_fault.  Check if it's present
before accessing it.

Additionally, it's not valid to return VM_FAULT_NOPAGE for
page faults.  The correct return when accessing a page that
does not exist is VM_FAULT_SIGBUS.  Correcting this avoids
looping infinitely in the testcase.

Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I53fc16d91462ac5d4555855dfa067d7fd6716c90
Reviewed-on: https://review.whamcloud.com/34247
Tested-by: Jenkins
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Alexander Zarochentsev <c17826@cray.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/llite/llite_mmap.c
lustre/tests/Makefile.am
lustre/tests/mmap_mknod_test.c [new file with mode: 0644]
lustre/tests/sanity.sh