X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Fllite%2Fllite_mmap.c;h=14ed60d3abca2ba4c4980d1eaaf324eb48fb9f7f;hp=1009c70f147661447db047ab34d75c5af42d436a;hb=d31a4dad4e698c537dff3d018fd67f196b2b293f;hpb=92c4ad14d4b1e77e1566c8481195bb623472f149 diff --git a/lustre/llite/llite_mmap.c b/lustre/llite/llite_mmap.c index 1009c70..14ed60d 100644 --- a/lustre/llite/llite_mmap.c +++ b/lustre/llite/llite_mmap.c @@ -394,6 +394,12 @@ restart: result |= VM_FAULT_LOCKED; } cfs_restore_sigs(set); + + if (vmf->page && result == VM_FAULT_LOCKED) + ll_rw_stats_tally(ll_i2sbi(file_inode(vma->vm_file)), + current->pid, LUSTRE_FPRIVATE(vma->vm_file), + cl_offset(NULL, vmf->page->index), PAGE_SIZE, + READ); return result; } @@ -455,6 +461,11 @@ static vm_fault_t ll_page_mkwrite(struct vm_area_struct *vma, break; } + if (result == VM_FAULT_LOCKED) + ll_rw_stats_tally(ll_i2sbi(file_inode(vma->vm_file)), + current->pid, LUSTRE_FPRIVATE(vma->vm_file), + cl_offset(NULL, vmf->page->index), PAGE_SIZE, + WRITE); return result; }