Re: [patch 1/6] arch: mm: remove obsolete init OOM protection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu 25-07-13 18:25:33, Johannes Weiner wrote:
> Back before smart OOM killing, when faulting tasks where killed
> directly on allocation failures, the arch-specific fault handlers
> needed special protection for the init process.
> 
> Now that all fault handlers call into the generic OOM killer (609838c
> "mm: invoke oom-killer from remaining unconverted page fault
> handlers"), which already provides init protection, the arch-specific
> leftovers can be removed.
> 
> Signed-off-by: Johannes Weiner <hannes@xxxxxxxxxxx>

Looks good to me
Reviewed-by: Michal Hocko <mhocko@xxxxxxx>

> ---
>  arch/arc/mm/fault.c   | 5 -----
>  arch/score/mm/fault.c | 6 ------
>  arch/tile/mm/fault.c  | 6 ------
>  3 files changed, 17 deletions(-)
> 
> diff --git a/arch/arc/mm/fault.c b/arch/arc/mm/fault.c
> index 0fd1f0d..6b0bb41 100644
> --- a/arch/arc/mm/fault.c
> +++ b/arch/arc/mm/fault.c
> @@ -122,7 +122,6 @@ good_area:
>  			goto bad_area;
>  	}
>  
> -survive:
>  	/*
>  	 * If for any reason at all we couldn't handle the fault,
>  	 * make sure we exit gracefully rather than endlessly redo
> @@ -201,10 +200,6 @@ no_context:
>  	die("Oops", regs, address);
>  
>  out_of_memory:
> -	if (is_global_init(tsk)) {
> -		yield();
> -		goto survive;
> -	}
>  	up_read(&mm->mmap_sem);
>  
>  	if (user_mode(regs)) {
> diff --git a/arch/score/mm/fault.c b/arch/score/mm/fault.c
> index 6b18fb0..4b71a62 100644
> --- a/arch/score/mm/fault.c
> +++ b/arch/score/mm/fault.c
> @@ -100,7 +100,6 @@ good_area:
>  			goto bad_area;
>  	}
>  
> -survive:
>  	/*
>  	* If for any reason at all we couldn't handle the fault,
>  	* make sure we exit gracefully rather than endlessly redo
> @@ -167,11 +166,6 @@ no_context:
>  	*/
>  out_of_memory:
>  	up_read(&mm->mmap_sem);
> -	if (is_global_init(tsk)) {
> -		yield();
> -		down_read(&mm->mmap_sem);
> -		goto survive;
> -	}
>  	if (!user_mode(regs))
>  		goto no_context;
>  	pagefault_out_of_memory();
> diff --git a/arch/tile/mm/fault.c b/arch/tile/mm/fault.c
> index f7f99f9..ac553ee 100644
> --- a/arch/tile/mm/fault.c
> +++ b/arch/tile/mm/fault.c
> @@ -430,7 +430,6 @@ good_area:
>  			goto bad_area;
>  	}
>  
> - survive:
>  	/*
>  	 * If for any reason at all we couldn't handle the fault,
>  	 * make sure we exit gracefully rather than endlessly redo
> @@ -568,11 +567,6 @@ no_context:
>   */
>  out_of_memory:
>  	up_read(&mm->mmap_sem);
> -	if (is_global_init(tsk)) {
> -		yield();
> -		down_read(&mm->mmap_sem);
> -		goto survive;
> -	}
>  	if (is_kernel_mode)
>  		goto no_context;
>  	pagefault_out_of_memory();
> -- 
> 1.8.3.2
> 

-- 
Michal Hocko
SUSE Labs

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]