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 324ABC282EC for ; Tue, 11 Mar 2025 20:55:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9D902280002; Tue, 11 Mar 2025 16:54:59 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9884C280001; Tue, 11 Mar 2025 16:54:59 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 850C9280002; Tue, 11 Mar 2025 16:54:59 -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 69734280001 for ; Tue, 11 Mar 2025 16:54:59 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 8E0A212065B for ; Tue, 11 Mar 2025 20:54:59 +0000 (UTC) X-FDA: 83210474718.23.B432B80 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf26.hostedemail.com (Postfix) with ESMTP id C77B0140008 for ; Tue, 11 Mar 2025 20:54:57 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=nCEuXvlI; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf26.hostedemail.com: domain of sj@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=sj@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741726497; a=rsa-sha256; cv=none; b=I8ugjsoHBZ4UITzNCiT+QWF5mQ9oJJlkYhMOzni2Qr5mOIemPqpQt+zMRyGhPJfoDVHfJB Z68KG23WriBEzEGX8u5Si+6ZuNWqX3LaBQt19ZWGbUE7FLWPS7t8M9NHp+z8PTNgNSMZuE xRLRLlxYphI45FVslDiSRwYHdDe4bMY= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=nCEuXvlI; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf26.hostedemail.com: domain of sj@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=sj@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741726497; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=bNcBC8et8dYbEg6RgvsecdjiYnkmQbB2EZrSx0DNKMQ=; b=ZTMZCxnBxfzJ1ctHZhZxqrJK8UzHHegeYfl6/3UpzOJc2g87uD76QiaCkonaqg73uW35/R KD3EZb+0DB5hECDaXWSDdAgmukEh2LibHVP5gOhvjmFIodFkirRWOlDNIkLMF9lTtl1XRr Vnpy4o+C5hlMc9cMivb4jTv9QWyA0Gk= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 0ECA45C58A2; Tue, 11 Mar 2025 20:52:40 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5C7C1C4CEE9; Tue, 11 Mar 2025 20:54:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1741726496; bh=TzN4LNJKffjQiREVo1HUuDuM9wbToU+KqxW8vsljPSM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=nCEuXvlI90Che7cF5uy2sAyIgOtY3koGKLdjSA9Xz45+5DBS7hzSv8eDLOggxcVbu Wz3hY/ZrWFzDf5bM/xNH3xdVPCKakaSZYY5hEICYrcKjOrnv1/vIHthgwB7aniAomL QKx7OIqiYPr6UJUaxBrxL0O/ayMNHSiwepNhlv65kMtfTaqJKjaNkDelJkXi4+L/3e qPP+1N3xux0oX6pGlYsoExPIS2ZilkwtgDkbzTINnP65fz+rRhf6/xxfoIvubXLXPC uVJTWa4FpJB5knpiG1KJl5kDkKdtNnWMG+QL59MZ5D1hNBxNiD5RqYckuh0qPojum2 URfmbWb6Umh7A== From: SeongJae Park To: Lorenzo Stoakes Cc: SeongJae Park , Andrew Morton , "Liam R. Howlett" , David Hildenbrand , Shakeel Butt , Vlastimil Babka , kernel-team@meta.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH 3/9] mm/madvise: deduplicate madvise_do_behavior() skip case handlings Date: Tue, 11 Mar 2025 13:54:53 -0700 Message-Id: <20250311205453.85220-1-sj@kernel.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <45ce499d-27a8-45ba-9644-67cfb73e489a@lucifer.local> References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam07 X-Rspam-User: X-Stat-Signature: s3p85d54txt8qgpxy73rxjywbjydrre6 X-Rspamd-Queue-Id: C77B0140008 X-HE-Tag: 1741726497-273393 X-HE-Meta: U2FsdGVkX19X3tr4qu+WgSxH4Uj349of2rendufN0lRym24KMUOcb/zRVl1Qe7e1cApknS8rn2s8cKii3AGp+HVkhb9RXlEY1/hi8fTFG/TWxCKQEmUk8cA8ts/aeFTw1IpVAZojopxjH8tlEvMfRx3XaS6fCiBurPqwt9wfGWMjNYZwxUv8W7Z7zuLnJCTiWfdFuuYMl0nCXgGIK/5bNd4nY5NBgiIOdEAnp9Pqbd1e7e41ZPyzUxpJ/m4YcrEXiIAR+Tjo7l7B7nBAIFO+9EPYZMJODCQA7gNrw372eqowj0bcubFzz7fCZUKAgU10Mfrv/1Spu+1FpqVETP2CHtrT4tkdv8aNH9Af/2ZTUOxtdImtuSnWcBpi7cvTxwEsCxE5kcKTCOGhp6qVM2dEMc2drdg6phpBrfIJHpwW3GtQpUSs6+H12e7R6czbwjf9yl7ko6sR3ydSTBBVT73kVjX0dIK0YynvVxuFRafRtLJ0I1Jm/kRHXfL2gWm12N4ST0smTbQOcWIFjjldbpqFgOzNKO76Mcv0DiW02UTls01XBbjO5kASTC8+qXpRo6JeQcEGemKAcFZny2OuiQT/d1lx3UE178j85eR+ctIOG39imhwpDpH0gVPIHKuovIHiElCk2OYpfsJww7BluNgxF5ffcfdWMrbmpWQUNvoItnZI9OBxzTYN8lrwd3PrLIcivAO4k8PLaqYu53bt5c0ceG13q6c1ptJ/IRzuFhz5avPnfyKt0mIa09PN8EX6xNgGVxVKA0tWHlP3W1bqwLeOiEijuhICWcALoPtTZV2CtSmnrIQoDWmyfWgFdB87TKDfq8ZlxcPS4DODfTKHcPu0qp9cLN21WoXd/rd5R85oUJsgfz0NRx9OHwRNEj4Bov7esGNmddR1EnAP+n/bHnSaWqbQdrdJRd+jydTTuldhYlCX88MlnFuUodZ+iFO56zjXoCcpPhAci2Rrxqn54qe pkqVexUm 8H7wCqFj95N0WB8RBoaDH6FsKHLRphUKPX2fI1AVHOCQGAFR3BBdcQvzIUri1uY/yRDTrCezcw1p8th6zS5qfBDgCg92n5plTAK0vgFMw3oDtCvl55N4aq9pk5oyGDLX4wEFknZN1keGW/11sh/Rf0cdMzzlGiKKEV4BUL9rpVoWQW1guQW+4s9zFNA6U3XZ9UxCqcxgOuLkfSQU7Bw7anNkqXQm9KrEGFV9aM7yio+zU5cRZh/ILRNN3ChurJvITeRjn+awJkVKAMRXRWUDoBox7M1uBS/O/mSUiecn21bLEBIOQCV7zk/VOzw== 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 Tue, 11 Mar 2025 12:02:48 +0000 Lorenzo Stoakes wrote: > On Mon, Mar 10, 2025 at 10:23:12AM -0700, SeongJae Park wrote: > > The logic for checking if a given madvise() request for a single memory > > range can skip real work, namely madvise_do_behavior(), is duplicated in > > do_madvise() and vector_madvise(). Split out the logic to a function > > and resue it. > > NIT: typo :) > > > > > Signed-off-by: SeongJae Park > > madvise_set_anon_name() seems to do something similar, but somewhat > differently... not sure if you address this in a later commit but worth > looking at too! Thank you for sharing the good finding! I don't have a plan to address that for now. > > Anyway this seems sane, so: > > Reviewed-by: Lorenzo Stoakes Thank you for your review! > > Note nits! > > > --- > > mm/madvise.c | 53 +++++++++++++++++++++++++++++----------------------- > > 1 file changed, 30 insertions(+), 23 deletions(-) > > > > diff --git a/mm/madvise.c b/mm/madvise.c > > index 611db868ae38..764ec1f2475b 100644 > > --- a/mm/madvise.c > > +++ b/mm/madvise.c > > @@ -1640,6 +1640,27 @@ static bool is_valid_madvise(unsigned long start, size_t len_in, int behavior) > > return true; > > } > > > > +/* > > + * madvise_should_skip() - Return if an madivse request can skip real works. > > NIT: 'real works' sounds strange. > > I'd say something like 'if the specified behaviour is invalid or nothing > would occur, we skip this operation. In the former case we return an > error.' Thanks for this nice suggestion. I will updte so in the next version. Thanks, SJ [...]