On Tue, May 29, 2018 at 8:20 PM, Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote: > On Tue, May 29, 2018 at 08:01:26PM +0530, Souptick Joarder wrote: >> Use new return type vm_fault_t for fault handler. For >> now, this is just documenting that the function returns >> a VM_FAULT value rather than an errno. Once all instances >> are converted, vm_fault_t will become a distinct type. > > I don't believe you've checked this with sparse. > >> @@ -802,7 +802,8 @@ int fixup_user_fault(struct task_struct *tsk, struct mm_struct *mm, >> bool *unlocked) >> { >> struct vm_area_struct *vma; >> - int ret, major = 0; >> + int major = 0; >> + vm_fault_t ret; >> >> if (unlocked) >> fault_flags |= FAULT_FLAG_ALLOW_RETRY; > > ... > major |= ret & VM_FAULT_MAJOR; > > That should be throwing a warning. Sorry, but I verified again and didn't see similar warnings. steps followed - apply the patch make c=2 -j4 ( build for x86_64) looking for warnings in files because of this patch. The only error I am seeing "error: undefined identifier '__COUNTER__' " which is pointing to BUG(). There are few warnings but those are not related to this patch. In my test tree the final patch to create new vm_fault_t type is already applied. Do you want me to verify in some other way ?