lkml.org 
[lkml]   [2010]   [Jan]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH -mmotm-2010-01-06-14-34] Fix fault count of task in GUP
On Mon, 11 Jan 2010, Minchan Kim wrote:
>
> get_user_pages calls handle_mm_fault to pin the arguemented
> task's page. handle_mm_fault cause major or minor fault and
> get_user_pages counts it into task which is passed by argument.
>
> But the fault happens in current task's context.
> So we have to count it not argumented task's context but current
> task's one.

Have to?

current simulates a fault into tsk's address space.
It is not a fault into current's address space.

I can see that this could be argued either way, or even
that such a "fault" should not be counted at all; but I do not
see a reason to change the way we have been counting it for years.

Sorry, but NAK (to this and to the v2) -
unless you have a stronger argument.

Hugh

>
> Signed-off-by: Minchan Kim <minchan.kim@gmail.com>
> CC: Nick Piggin <npiggin@suse.de>
> CC: Hugh Dickins <hugh.dickins@tiscali.co.uk>
> ---
> mm/memory.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/mm/memory.c b/mm/memory.c
> index 521abf6..2513581 100644
> --- a/mm/memory.c
> +++ b/mm/memory.c
> @@ -1486,9 +1486,9 @@ int __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
> BUG();
> }
> if (ret & VM_FAULT_MAJOR)
> - tsk->maj_flt++;
> + current->maj_flt++;
> else
> - tsk->min_flt++;
> + current->min_flt++;
>
> /*
> * The VM_FAULT_WRITE bit tells us that
> --
> 1.5.6.3
>
>
> --
> Kind regards,
> Minchan Kim


\
 
 \ /
  Last update: 2010-01-12 00:31    [W:0.041 / U:3.996 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site