From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 61419C3DA61 for ; Wed, 24 Jul 2024 12:25:28 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B67C96B0088; Wed, 24 Jul 2024 08:25:27 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B16476B0089; Wed, 24 Jul 2024 08:25:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A04B86B008A; Wed, 24 Jul 2024 08:25:27 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 819596B0088 for ; Wed, 24 Jul 2024 08:25:27 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 37AE7A08EC for ; Wed, 24 Jul 2024 12:25:27 +0000 (UTC) X-FDA: 82374566694.07.DA2ABF8 Received: from mail-lf1-f42.google.com (mail-lf1-f42.google.com [209.85.167.42]) by imf29.hostedemail.com (Postfix) with ESMTP id 2934D120020 for ; Wed, 24 Jul 2024 12:25:24 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=ID7XAjV1; spf=pass (imf29.hostedemail.com: domain of mhocko@suse.com designates 209.85.167.42 as permitted sender) smtp.mailfrom=mhocko@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1721823878; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=nrFqaYpj4eLT6IX1V9Vf1afrsx1mFigmF9d2Uyaa6S4=; b=L4BROKl94tJk8nU3thdblq3UiE2qpYi4X+7H33CUtzITspZsHf3H/hwO+x1zvvjFj6kZ9P 9PeUOc2SgDrOJTDC8yrRFbpH/OVKXnWPtHBQyum2piuHomtLnctG1EgdG37fXy8nOCfTN7 C0ydo2pk1fWYGTa0XjVrM1qvWjkKHoQ= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1721823878; a=rsa-sha256; cv=none; b=sYKBJ9bIx9D0Dw3YyvaSkCQuIYH6MMIY3G4f/wd58+LgS+2RibhB7XhLygQK1KPpfgTqCG u4BDv5FZqE00EKi+OS22LfPXHTZO+ZbMYnPBsa4vaLkAAsdOqQdp42Loh6BSz2h8YXn5M9 ehdev1H1Nd7CrBRs3eGA/uBBf3zcmdI= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=ID7XAjV1; spf=pass (imf29.hostedemail.com: domain of mhocko@suse.com designates 209.85.167.42 as permitted sender) smtp.mailfrom=mhocko@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com Received: by mail-lf1-f42.google.com with SMTP id 2adb3069b0e04-52f01b8738dso3539251e87.1 for ; Wed, 24 Jul 2024 05:25:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1721823923; x=1722428723; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=nrFqaYpj4eLT6IX1V9Vf1afrsx1mFigmF9d2Uyaa6S4=; b=ID7XAjV1tciqjSPhX8yGVZP2pECsoVjeLuPDRfbXJXN5lzJTQu7hPRiSISoJCGG0z5 Xlu8HOGZ2kia+NBmMDu1E19BHQGZ2BxGOiHsIsw1Xh4JVwO8pp9XrGTnF16hGRvJ+kPG 29s0RjW1DlKOZtG3kkeYQUwisk6Zr//sgWTGwuv0I8m2NsrdgUVv5Y0fdNVBfpNARHdV PdyoBknWJizQK+feePEDjLgKbobSQ2kaCYivfOLhUHBGTUOPPGMqTcs+NXWLgtwAUcR1 R24/FA4aBYCwSTMjLSWu20LP71jI2MFA7Yvsa6JxgGkOP9OueOSK718BwnOKyupFaE5F 2ZTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1721823923; x=1722428723; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=nrFqaYpj4eLT6IX1V9Vf1afrsx1mFigmF9d2Uyaa6S4=; b=iOeQS59dISX/gdLN//tONyuwtQL47iDE1U6IFfzupfVhIDYQ+iHKsWwuUxcFPz9xLb zInuIz2HP35avYAeuIcr7OKck+THXLYFjeZDrcoWizw/oEqGprEx+skDoTUZxkDuI3wi sn1siDStyv/URKyEDNMWZNZgpv2GFVaAc+ZW9TkNKWSjDmAphIHqFy/nWXNUHYzPkpj9 qD0b8nbc058RhD1a12Db+6fpy1BeaJVerJKNT1YGWBsdWPbdMBDvnRnH2r5Oh+CzLCaH IwzkM8ObC3lORWBGSZ/Yb0vZSOeVat1wB9Fsmj+y7OnspfIkIekUhFpd+6RCpHf0Qu7Y FNMw== X-Forwarded-Encrypted: i=1; AJvYcCWGuVRvHsj9JOe2rMSGMNwQvItcjmTb/GcE2HjtL6n7Gqk4F5cYvVwD1iQsU1RF1JtS/im0G3BAd3Nw6yAbt4Cxpak= X-Gm-Message-State: AOJu0YyYLmJoECMH+hm7+/KGl44yQdkG+QlqFjsVmacTHYn5WCyg4xiU DhUlpu5mg9r4OAauUzds0hL1RInnuYfdOiqHuF3D8CjcbK9VVsOfmwYStjjaQvM= X-Google-Smtp-Source: AGHT+IFGCKRyUaP9yJn7FT3Fvxh81APKwaw0rHEz3bEaldlitBrro27WNG7/CNseiQHDNU7rH0tQdA== X-Received: by 2002:a05:6512:3c96:b0:52c:d967:79c6 with SMTP id 2adb3069b0e04-52fceff676fmr1426664e87.20.1721823923278; Wed, 24 Jul 2024 05:25:23 -0700 (PDT) Received: from localhost (109-81-94-157.rct.o2.cz. [109.81.94.157]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a7a9450ba13sm180883366b.92.2024.07.24.05.25.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Jul 2024 05:25:23 -0700 (PDT) Date: Wed, 24 Jul 2024 14:25:22 +0200 From: Michal Hocko To: Vlastimil Babka Cc: Barry Song <21cnbao@gmail.com>, akpm@linux-foundation.org, linux-mm@kvack.org, 42.hyeyoo@gmail.com, cl@linux.com, hch@infradead.org, iamjoonsoo.kim@lge.com, lstoakes@gmail.com, penberg@kernel.org, rientjes@google.com, roman.gushchin@linux.dev, urezki@gmail.com, v-songbaohua@oppo.com, virtualization@lists.linux.dev, hailong.liu@oppo.com, torvalds@linux-foundation.org Subject: Re: [PATCH RFC 5/5] non-mm: discourage the usage of __GFP_NOFAIL and encourage GFP_NOFAIL Message-ID: References: <20240724085544.299090-1-21cnbao@gmail.com> <20240724085544.299090-6-21cnbao@gmail.com> <68ee812b-3b96-4c8b-9a54-70d4742488bb@suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <68ee812b-3b96-4c8b-9a54-70d4742488bb@suse.cz> X-Rspamd-Queue-Id: 2934D120020 X-Stat-Signature: puxoig9rtj1cm131w6p1odxg1xjdxxfh X-Rspamd-Server: rspam09 X-Rspam-User: X-HE-Tag: 1721823924-993155 X-HE-Meta: U2FsdGVkX1+G1a8hIzMAugm1faWbWTTs71G8iNzsiwg0VzT9xrISAje7HoJnxP2rv+4ad3AtccIupYPmDpqCkOKJz0IQWZkQaz7Hhc6JlneYb6Z9mx92RjTPM/CXCs1geYN1nmww/3wYA/zi0IJ5MjmjzDjhlYE5GS8abJqilQxRPEsayVjyo2Gbr16DpzZqQOArreI8ecUZ1sHziIxBVU/ERu/wGu3qI8LrzoO5SZY5qvoiZeWqCVl2Tp6ni59MicHMAwHS1SHsMpWvVvCTEGgyXKe84t0Nl42MxDCzkesow1Rnh5xLZmYyaaUu19hZsKky3IuOuhdqfOzgiosiZfjCKFN9527aAOg4bk15IX96uzHHAXDvQA4ax7aclVwLYT8DLOLlq49NxdoEt0DZAVVKHvyMKrw44vhs4c7FaG5f2l8E1avKk4hDlZn2SRI6myqFkuqgdhdbn3uz0dASwmi39iUgpNBR0l0AkStGd61m6cM7xR7AMtK2KtowhoT22RhH3BVS2MysOeMaX3TXLVYkw06lWwftrsWcTKsTQXEAtGZRnftpdmUrvePMbkSQGfN2UPuZQPnJa4dpOTKKKRCr6Ha/wJCHxJHO0WNdNfOVYAo3yfVPCq5GCmHuPrYwJo18uslMGac93M9lkyGnvRg6Qrd6wsM526Gr8AmwC84LrUYjcUPhN1he/uEW61Z/oTpx9YmL4KJq5k4gHz9O6fzSwKLBu4Ri3G7CbQYS74iMspVz4djAv5FFgiWvDVyjXlP3dgE+AYcllt2Hn+bbTaBWu4OXvsw+f1XC341N1zPPUYEni8/Hb5WQvWzaUSKA0SW/P4yI4v0ilFyDN/Hr5QZsoPPKhNSEHQ0FO7BfFiq+0bBg1/K6G9k7QkwgqcDynzeQAr1Ghq/0HCOMqv0e2itzLJuMk/aXdSPA/cRng3aNdJu4Fl7Ur0OqIxprPk0pGXVrTTD7HG6ScSUZeTN 1Kes3Qyx ohd45nXhOJNTJCO7ySI65sv76Q73R9xXK7OyfFREFNyCaBAZZfLguzxWhHW2XQM7E1UlbtqKr8+J00gLIZcOeu2M+/p020z/9ET03gb9zLRWwqPsnbUE5/8rziIJDcDsF8Vaa22mygCVo17w/8quObT68zQNAfvozTnDH2jx16PIcB3DytYJ7yMBU8AlWG7Mvwocxg0g19Uv3BVF9dZbOpTGvxFE0cm62sGI2cj5+LagS/Ab0lS7m6vSjfG7GUNLBtOkYs0JYUXnBYPcBdSmQ0b8d5fpbAUO9IjD3ZC7DHEAn3ljNIVJxBfB+pT7VDTH+wOTvoz/dzDWZ506SlPksusEO2ksXAbwU+DFuslmsN8sEl0ACwXCCkKcGpVlD5u6fejDC7lkytzvLqam++15dYQP4QB3Fw9WvBKZAeea4+STBknSUHXWkuWr7j6ugmPzkxgy5EVAfTscJKu14pbfW46EIIQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Wed 24-07-24 11:53:49, Vlastimil Babka wrote: > On 7/24/24 10:55 AM, Barry Song wrote: > > From: Barry Song > > > > GFP_NOFAIL includes the meaning of block and direct reclamation, which > > is essential for a true no-fail allocation. We are gradually starting > > to enforce this block semantics to prevent the potential misuse of > > __GFP_NOFAIL in atomic contexts in the future. > > > > A typical example of incorrect usage is in VDPA, where GFP_ATOMIC > > and __GFP_NOFAIL are used together. > > > > [RFC]: This patch seems quite large; I don't mind splitting it into > > multiple patches for different subsystems after patches 1 ~ 4 have > > been applied. > > > > Signed-off-by: Barry Song > > > > diff --git a/arch/powerpc/sysdev/xive/common.c b/arch/powerpc/sysdev/xive/common.c > > index fa01818c1972..29eaf8b84b52 100644 > > --- a/arch/powerpc/sysdev/xive/common.c > > +++ b/arch/powerpc/sysdev/xive/common.c > > @@ -1146,7 +1146,7 @@ static int __init xive_init_ipis(void) > > if (!ipi_domain) > > goto out_free_fwnode; > > > > - xive_ipis = kcalloc(nr_node_ids, sizeof(*xive_ipis), GFP_KERNEL | __GFP_NOFAIL); > > + xive_ipis = kcalloc(nr_node_ids, sizeof(*xive_ipis), GFP_KERNEL | GFP_NOFAIL); > > This (and others) doesn't look great. Normally there's just one GFP_MAIN > that combines several commonly used together flags internally, with possibly > some | __GFP_EXTRA addition for less common modifications. Now you're > combining two GFP_MAIN's and that's just confusing. I am not sure we can expect too much consistency from our gfp flags. This is unfortunate but something that is really hard to fix. Combining GFP_$FOO | GFP_$BAR is not unprecedented. A quick grep shows that GFP_KERNEL | GFP_DMA* is quite used. So while not great, if we want to enforce sleepable NOFAIL allocations then this seems like something that is acceptable. Adding yet another set of GFP_$FOO_NOFAIL seems like too many flags that are likely seldom used and make the whole thing overblown. -- Michal Hocko SUSE Labs