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 5C8ACC43334 for ; Tue, 21 Jun 2022 20:38:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CC2D68E0018; Tue, 21 Jun 2022 16:38:43 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C4BEF8E0014; Tue, 21 Jun 2022 16:38:43 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AEAA48E0018; Tue, 21 Jun 2022 16:38:43 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 9BF7F8E0014 for ; Tue, 21 Jun 2022 16:38:43 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 6AD6D605F2 for ; Tue, 21 Jun 2022 20:38:43 +0000 (UTC) X-FDA: 79603406526.06.FC356AD Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf18.hostedemail.com (Postfix) with ESMTP id 63E8E1C008D for ; Tue, 21 Jun 2022 20:38:42 +0000 (UTC) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 88BC861840; Tue, 21 Jun 2022 20:38:41 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E7EE1C3411C; Tue, 21 Jun 2022 20:38:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1655843921; bh=Ow+eTKi/AGhRax2ZmaF8XrqDcXcJRnKxDwli+QzUE38=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=fphi7PzNTHbXTZWnHWt/zNcSAqTwPTzjoDACizwcbGF6PHdDsNR4uj5Ito5piFgU8 EMdTggkyPVnDdn8MtrGG1xGXmQRMGJkyykaBnM+xwp6oGHqg+U4yQVB99+9/UelhTm B5ujj6h+l/GLXu4LKvsw4hVIqL3Z+b6sIit9rh5A= Date: Tue, 21 Jun 2022 13:38:27 -0700 From: Andrew Morton To: Liam Howlett Cc: David Hildenbrand , "maple-tree@lists.infradead.org" , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH] maple_tree: Make mas_prealloc() error checking more generic Message-Id: <20220621133827.1579fb8673d21d01e409de22@linux-foundation.org> In-Reply-To: <20220621132251.sloxxcbecwmurb42@revolver> References: <20220615174213.738849-1-Liam.Howlett@oracle.com> <20220621132251.sloxxcbecwmurb42@revolver> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1655843922; a=rsa-sha256; cv=none; b=qe7B6DUwAhKx1wgdWLpwdUjRsMgMgKN6jYJaLQ3Gggg2FA5ylatipECOd4i9Ex+zEz/noC yCg1opNA6zxxe0PR+qJC9HHwNWD1yxoPHoedSv+LOrVgch1NfRbx5kYSprT35FBnFHv0FO yDSkCMZNauWsQyRKuu9mF2ADVbvXODg= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=fphi7PzN; dmarc=none; spf=pass (imf18.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1655843922; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=uMcSPGhvg6HHvg2BKnzaVL93aDwxsxaFRuo4AwfXi1c=; b=MCh7J84UNlLEjIOeQ/5GXwsHFLN7MG9eRpqhoNcM46ApwrVjhRhTsNOlZUr/SU/L1dIBL3 fd/dlnl1xjf525WtXyzSu6himB3c3EHJ+kC8u2H+H74JHx+7yYwXv0DA74HTQ8exa6P+yJ 1zaz4aB9hyBSTKsTt2JWVCW72j9xdMw= Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=fphi7PzN; dmarc=none; spf=pass (imf18.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org X-Stat-Signature: qasodunkxcmpmsb53di6gxqe6c8dfckn X-Rspamd-Queue-Id: 63E8E1C008D X-Rspam-User: X-Rspamd-Server: rspam03 X-HE-Tag: 1655843922-646340 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: On Tue, 21 Jun 2022 13:22:59 +0000 Liam Howlett wrote: > * David Hildenbrand [220621 05:09]: > > On 15.06.22 19:42, Liam Howlett wrote: > > > Return the error regardless of what it is. This is a safer option. > > > > > > Signed-off-by: Liam R. Howlett > > > --- > > > lib/maple_tree.c | 5 ++--- > > > 1 file changed, 2 insertions(+), 3 deletions(-) > > > > > > diff --git a/lib/maple_tree.c b/lib/maple_tree.c > > > index f413b6f0da2b..89ff5ef7ee28 100644 > > > --- a/lib/maple_tree.c > > > +++ b/lib/maple_tree.c > > > @@ -5670,16 +5670,15 @@ void mas_store_prealloc(struct ma_state *mas, void *entry) > > > */ > > > int mas_preallocate(struct ma_state *mas, void *entry, gfp_t gfp) > > > { > > > - > > > mas_set_alloc_req(mas, 1 + mas_mt_height(mas) * 3); > > > mas_alloc_nodes(mas, gfp); > > > - if (likely(mas->node != MA_ERROR(-ENOMEM))) > > > + if (likely(!mas_is_err(mas))) > > > return 0; > > > > > > mas_set_alloc_req(mas, 0); > > > mas_destroy(mas); > > > mas->node = MAS_START; > > > - return -ENOMEM; > > > + return xa_err(mas->node); > > > } > > > > > > /* > > > > Liam, (as asked privately before, I was just too busy to respond :) ) > > once all known issues are fixed, can we have a new version posted to > > ease review? That would make my life easier to see what needs review and > > in which order patches apply. Thanks! > > > > > Yes. Thanks for asking. > > Andrew didn't want to lose the comments so maybe I'll squash the fixes > into a branch and send that out as a response to v9 if that works? I guess it's time for a new series - things are getting a little straggly: maple-tree-add-new-data-structure-fix.patch maple-tree-add-new-data-structure-fix-2.patch maple-tree-add-new-data-structure-fix-3.patch maple-tree-add-new-data-structure-fix-4.patch maple-tree-add-new-data-structure-fix-5.patch maple-tree-add-new-data-structure-fix-6.patch maple-tree-add-new-data-structure-fix-7.patch maple-tree-add-new-data-structure-fix-8.patch maple-tree-add-new-data-structure-fix-8-fix.patch maple-tree-add-new-data-structure-fix-9.patch maple-tree-add-new-data-structure-fix-10.patch lib-test_maple_tree-add-testing-for-maple-tree-fix.patch lib-test_maple_tree-add-testing-for-maple-tree-fix-2.patch mm-start-tracking-vmas-with-maple-tree-fix.patch mm-start-tracking-vmas-with-maple-tree-fix-2.patch damon-convert-__damon_va_three_regions-to-use-the-vma-iterator-fix.patch mm-mmap-use-advanced-maple-tree-api-for-mmap_region-fix.patch mm-mmap-use-advanced-maple-tree-api-for-mmap_region-fix-checkpatch-fixes.patch mm-mmap-use-advanced-maple-tree-api-for-mmap_region-fix-2.patch mm-mmap-use-advanced-maple-tree-api-for-mmap_region-fix-3.patch mm-mmap-change-do_brk_munmap-to-use-do_mas_align_munmap-fix.patch userfaultfd-use-maple-tree-iterator-to-iterate-vmas-fix.patch nommu-remove-uses-of-vma-linked-list-fix.patch nommu-remove-uses-of-vma-linked-list-fix-fix.patch mm-remove-the-vma-linked-list-fix.patch mm-remove-the-vma-linked-list-fix-fix.patch mm-remove-the-vma-linked-list-fix-fix-fix.patch mm-remove-the-vma-linked-list-fix-4.patch So please send when convenient and I'll check that it matches what I presently have.