Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754016AbcDKL3D (ORCPT ); Mon, 11 Apr 2016 07:29:03 -0400 Received: from e06smtp10.uk.ibm.com ([195.75.94.106]:38846 "EHLO e06smtp10.uk.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752994AbcDKL3A (ORCPT ); Mon, 11 Apr 2016 07:29:00 -0400 X-IBM-Helo: d06dlp03.portsmouth.uk.ibm.com X-IBM-MailFrom: cornelia.huck@de.ibm.com X-IBM-RcptTo: linux-arch@vger.kernel.org;linux-kernel@vger.kernel.org Date: Mon, 11 Apr 2016 13:28:37 +0200 From: Cornelia Huck To: Michal Hocko Cc: , Andrew Morton , LKML , Michal Hocko , Christian Borntraeger , linux-arch@vger.kernel.org, Martin Schwidefsky , Heiko Carstens Subject: Re: [PATCH 13/19] s390: get rid of superfluous __GFP_REPEAT Message-ID: <20160411132837.3cba168f.cornelia.huck@de.ibm.com> In-Reply-To: <1460372892-8157-14-git-send-email-mhocko@kernel.org> References: <1460372892-8157-1-git-send-email-mhocko@kernel.org> <1460372892-8157-14-git-send-email-mhocko@kernel.org> Organization: IBM Deutschland Research & Development GmbH Vorsitzende des Aufsichtsrats: Martina Koederitz =?UTF-8?B?R2VzY2jDpGZ0c2bDvGhydW5nOg==?= Dirk Wittkopp Sitz der Gesellschaft: =?UTF-8?B?QsO2Ymxpbmdlbg==?= Registergericht: Amtsgericht Stuttgart, HRB 243294 X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.10; i686-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 16041111-0041-0000-0000-0000146A1E3F Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2037 Lines: 53 On Mon, 11 Apr 2016 13:08:06 +0200 Michal Hocko wrote: > From: Michal Hocko > > __GFP_REPEAT has a rather weak semantic but since it has been introduced > around 2.6.12 it has been ignored for low order allocations. > > arch_dup_task_struct uses __GFP_REPEAT for fpu_regs_size which is either > sizeof(__vector128) * __NUM_VXRS = 4069B resp. > sizeof(freg_t) * __NUM_FPRS = 1024B AFAICS. page_table_alloc then uses > the flag for a single page allocation. This means that this flag has > never been actually useful here because it has always been used only for > PAGE_ALLOC_COSTLY requests. > > Cc: Christian Borntraeger > Cc: Cornelia Huck Let's cc: Martin/Heiko instead :) > Cc: linux-arch@vger.kernel.org > Signed-off-by: Michal Hocko > --- > arch/s390/kernel/process.c | 2 +- > arch/s390/mm/pgalloc.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/s390/kernel/process.c b/arch/s390/kernel/process.c > index f8e79824e284..1837a1901d4b 100644 > --- a/arch/s390/kernel/process.c > +++ b/arch/s390/kernel/process.c > @@ -102,7 +102,7 @@ int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src) > */ > fpu_regs_size = MACHINE_HAS_VX ? sizeof(__vector128) * __NUM_VXRS > : sizeof(freg_t) * __NUM_FPRS; > - dst->thread.fpu.regs = kzalloc(fpu_regs_size, GFP_KERNEL|__GFP_REPEAT); > + dst->thread.fpu.regs = kzalloc(fpu_regs_size, GFP_KERNEL); > if (!dst->thread.fpu.regs) > return -ENOMEM; > > diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c > index f6c3de26cda8..3f716741797a 100644 > --- a/arch/s390/mm/pgalloc.c > +++ b/arch/s390/mm/pgalloc.c > @@ -198,7 +198,7 @@ unsigned long *page_table_alloc(struct mm_struct *mm) > return table; > } > /* Allocate a fresh page */ > - page = alloc_page(GFP_KERNEL|__GFP_REPEAT); > + page = alloc_page(GFP_KERNEL); > if (!page) > return NULL; > if (!pgtable_page_ctor(page)) {