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 77000C433EF for ; Mon, 6 Dec 2021 12:45:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E9A736B007B; Mon, 6 Dec 2021 07:45:38 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E4B296B007D; Mon, 6 Dec 2021 07:45:38 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D129F6B007E; Mon, 6 Dec 2021 07:45:38 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0179.hostedemail.com [216.40.44.179]) by kanga.kvack.org (Postfix) with ESMTP id C3E1C6B007B for ; Mon, 6 Dec 2021 07:45:38 -0500 (EST) Received: from smtpin22.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id 82E5A8249980 for ; Mon, 6 Dec 2021 12:45:28 +0000 (UTC) X-FDA: 78887340336.22.3954F12 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf10.hostedemail.com (Postfix) with ESMTP id 214836001988 for ; Mon, 6 Dec 2021 12:45:28 +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 3675761248; Mon, 6 Dec 2021 12:45:27 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2837EC341C2; Mon, 6 Dec 2021 12:45:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1638794726; bh=GSABlPFm0T2h43gikjVwJWjVzcYXiMcZUh9QxU8U/pM=; h=From:To:Cc:Subject:Date:In-Reply-To:From; b=phNT5Zuwo3JsijnInN5uqiAtsRQrRqZnEyNU6kOP8FYuotBIi0aoRLolW7RC8WOoE FQqQEGvD+Fl/KynQw0F2BBh6rdBx+3NItt8WMffkR/t5cqJluzPkJD+R3vZ5I6bE2b a8zeV0SfJU/i5/f8z8R/wkaoGL+cawiMbLdPE2Hk0OBeVWf21llrDgXko3j+SEo+b3 00dBhlvHDNyEphFjxDgh4Y0aGk7b8QEsNKFni8/YIBYFQ13FTgd+PryZevM8rzYGSj aSJVtBXENDvS5HrNCM7lIQXEPmt+FnQ5eiTfj6eZ1pF39eXS4blP5S+/k6FGh631xI /Tv9ptByc8a1w== From: SeongJae Park To: Xin Hao Cc: sj@kernel.org, akpm@linux-foundation.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH V1] mm/damon: Modify damon_rand() macro to static inline function Date: Mon, 6 Dec 2021 12:45:23 +0000 Message-Id: <20211206124523.6259-1-sj@kernel.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <7066b07ba4f89e32c5264ed1f7d71260bea8812e.1638794380.git.xhao@linux.alibaba.com> X-Stat-Signature: bsz5sm48kj149gbbecyo7axa8dubw5o5 Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=phNT5Zuw; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf10.hostedemail.com: domain of sj@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=sj@kernel.org X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 214836001988 X-HE-Tag: 1638794728-305036 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 Mon, 6 Dec 2021 20:41:29 +0800 Xin Hao wrote: > The damon_rand() func can not be implemented as a macro. > Example: > damon_rand(a++, b); > The value of 'a' will be incremented twice, This is obviously > unreasonable, So there fix it. > > Fixes: b9a6ac4e4ede ("mm/damon: adaptively adjust regions") > Reported-by: Andrew Morton > Signed-off-by: Xin Hao > --- > include/linux/damon.h | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/include/linux/damon.h b/include/linux/damon.h > index c6df025d8704..bc9c8932b1e8 100644 > --- a/include/linux/damon.h > +++ b/include/linux/damon.h > @@ -19,7 +19,10 @@ > #define DAMOS_MAX_SCORE (99) > > /* Get a random number in [l, r) */ > -#define damon_rand(l, r) (l + prandom_u32_max(r - l)) > +static inline unsigned long damon_rand(unsigned long l, unsigned long r) > +{ > + return l + (r - l); Seems prandom_u32_max() is missed? Thanks, SJ > +} > > /** > * struct damon_addr_range - Represents an address region of [@start, @end). > -- > 2.31.0