Whamcloud - gitweb
LU-6179 llite: Implement ladvise lockahead
[fs/lustre-release.git] / lustre / llite / vvp_io.c
index a6c355a..c0dad2d 100644 (file)
@@ -541,6 +541,8 @@ static int vvp_io_rw_lock(const struct lu_env *env, struct cl_io *io,
 
        if (io->u.ci_rw.rw_nonblock)
                ast_flags |= CEF_NONBLOCK;
+       if (io->ci_lock_no_expand)
+               ast_flags |= CEF_LOCK_NO_EXPAND;
 
        result = vvp_mmap_locks(env, io);
        if (result == 0)
@@ -1130,12 +1132,12 @@ static int vvp_io_kernel_fault(struct vvp_fault_io *cfio)
 {
        struct vm_fault *vmf = cfio->ft_vmf;
 
-       cfio->ft_flags = filemap_fault(cfio->ft_vma, vmf);
+       cfio->ft_flags = ll_filemap_fault(cfio->ft_vma, vmf);
        cfio->ft_flags_valid = 1;
 
        if (vmf->page) {
                LL_CDEBUG_PAGE(D_PAGE, vmf->page, "got addr %p type NOPAGE\n",
-                              vmf->virtual_address);
+                              get_vmf_address(vmf));
                if (unlikely(!(cfio->ft_flags & VM_FAULT_LOCKED))) {
                        lock_page(vmf->page);
                        cfio->ft_flags |= VM_FAULT_LOCKED;
@@ -1147,12 +1149,12 @@ static int vvp_io_kernel_fault(struct vvp_fault_io *cfio)
        }
 
        if (cfio->ft_flags & VM_FAULT_SIGBUS) {
-               CDEBUG(D_PAGE, "got addr %p - SIGBUS\n", vmf->virtual_address);
+               CDEBUG(D_PAGE, "got addr %p - SIGBUS\n", get_vmf_address(vmf));
                return -EFAULT;
        }
 
        if (cfio->ft_flags & VM_FAULT_OOM) {
-               CDEBUG(D_PAGE, "got addr %p - OOM\n", vmf->virtual_address);
+               CDEBUG(D_PAGE, "got addr %p - OOM\n", get_vmf_address(vmf));
                return -ENOMEM;
        }