Received: by 2002:a05:6358:489b:b0:bb:da1:e618 with SMTP id x27csp7638341rwn; Wed, 14 Sep 2022 01:53:48 -0700 (PDT) X-Google-Smtp-Source: AA6agR60idMDA2/PsPtL6co6YgRsFSenKpRWFvHQLuMheWwfu/3nbvLyaTIv6YAjyouIrLPZCdiL X-Received: by 2002:a17:907:80d:b0:73d:a576:dfbd with SMTP id wv13-20020a170907080d00b0073da576dfbdmr25289219ejb.402.1663145627717; Wed, 14 Sep 2022 01:53:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1663145627; cv=none; d=google.com; s=arc-20160816; b=M4UE4PT9aVl5jXfIvFfVolHdpMhnyxl0tdvBcqeqygbOpm8QYsHaUzu5jlL+I+k2L8 AYMscYZs1ylNmUw7YMozOiWOWhm6ztTbIoFn4uCxWF3AUKq+pakJwyQlajgB+OFgFb+k FSaootxqq/HYOmkNJsunMsLRJie7WK+Ti2/vTZpaRO5Dv3gNhAdbhXm8bHTSW/4L84c7 PpS7/5UeWzJ64e8/S0G25n23Wanzw383kjVOcuVdaOUgub2JST0Z6N9AQeryRBuMRAVu cOK5URFXTm1ZUHZj/Ki7UyTuNdWhYk/VgCY359FNMOPqI58oHlA57iYQ3ihIF8Zsp1MX a/Yw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=3UKIk4qiNGeI494C27KBAZqn6jtDvV/m2RC2yv6bqug=; b=LamTg5sT9MzwosDzw5P13eBCpacqVPA2VaUpu1SyepbEi7sWimggLMdmwlCB48OWIH 8eq+4WVQl9aIpr90HvREe7pOIS4yHM8B2vfEuEnY9inz8jsryv1ucba/WcOybzT1cPYh n3P0IhRf1TlhQUHto3Fog3weUHJ6LkabYfl1gmOCEKy+peSKjsFvFxMLK8zffYDf/wm5 JUrlKIZIj2Z+izwZzIIQzY2gHeHtBD2LBdbHZHyjvULowxjLHO4Ykyu8D6j5/gjO/FQx 44ManMmoRXNOFjBl+tgOA8efwBANy9ODNqUwH9rA76F9u5aZGQspxWdLAy309t3RsqRn /03Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="KWUoZ6/U"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w19-20020a50d793000000b0043d7a3c3cddsi11918649edi.408.2022.09.14.01.53.22; Wed, 14 Sep 2022 01:53:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="KWUoZ6/U"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230178AbiINIE4 (ORCPT + 99 others); Wed, 14 Sep 2022 04:04:56 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46754 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230192AbiINIER (ORCPT ); Wed, 14 Sep 2022 04:04:17 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EAB3D4F399 for ; Wed, 14 Sep 2022 01:04:09 -0700 (PDT) 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 ams.source.kernel.org (Postfix) with ESMTPS id 71E32B81180 for ; Wed, 14 Sep 2022 08:04:08 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9BF35C433C1; Wed, 14 Sep 2022 08:04:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1663142647; bh=WzqqgSgzUFWOkOjIplcFxh7on/nwjcTWKKddQ0+s+KY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KWUoZ6/UySZmgNgzT1dSbBtIMaa3WjDd3S+vKfIU4fGqRSadPoNcHzSvhzPlqJi+B Q4QUJkfdVbMv1K3WlGMvPPHWasNL4nptfRUb1wQk96O6B+4pV72zM9jOoQcD0spUyh YEvTOtTH9E8gOazRwVxaMClI5F/WXi0us/+9ZFfs+kBsboe2UYaJqtmCffCvAuIsAh d1q2rpwALHlFYDJGm3cy59PwQliqSsCQhOQ+dKJzczSSrcR8a9mlpK3jtEtm47I920 VUlbDxlOKkyNRm5euKKgiGbRTQSrc/C3ul1mcd6B+jaVxIG5p61QPfUlUMWLQmctv6 Z0O//8w+HR9nA== From: SeongJae Park To: Kaixu Xia Cc: SeongJae Park , akpm@linux-foundation.org, damon@lists.linux.dev, linux-mm@kvack.org, LKML , Kaixu Xia Subject: Re: [PATCH 4/4] mm/damon/vaddr: indicate the target is invalid when 'nr_regions' is zero Date: Wed, 14 Sep 2022 08:04:04 +0000 Message-Id: <20220914080404.58913-1-sj@kernel.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 14 Sep 2022 12:02:05 +0800 Kaixu Xia wrote: > On Tue, Sep 13, 2022 at 11:11 PM SeongJae Park wrote: > > > > On Tue, 13 Sep 2022 17:11:27 +0800 xiakaixu1987@gmail.com wrote: > > > > > From: Kaixu Xia > > > > > > When 'init()' and 'update()' DAMON operations failed and the number > > > of the damon_target regions is zero, > > > > Well, I think that could be a temporal failure. In the case, later call of > > 'update()' could success? > > > Yeah, the kdamond while() loop calls 'update()' periodically to fix this > temporary failure. But for extreme scenarios that 'update()' continues to fail, > we should have some ways to detect this case. Even in the case, kdamond will do nothing but continuing the main loop while sleeping sample_aggr interval (5ms by default) for each iteration, and calling 'update()' for every update interval (100ms by default). Waste is waste, but I don't think that's a real issue. Further, continuous 'update()' failures mean the process is in some weird state anyway, so I'd assume the process would be finished soon. kdamond will also finish as soon as the process finishes. Users could also find the strange situation (nothing in the monitoring results) and finish kdamond on their own. Anything I'm missing? Andrew, I found you merged this patch in mm-unstable. Could you please hold it until we finish this discussion? Thanks, SJ > > Thanks, > Kaixu > > > > Thanks, > > SJ > > > > > the kdamond would do nothing > > > to this monitoring target in this case. It makes no sense to run > > > kdamond when all of monitoring targets have no regions. So add the > > > judgement in 'target_valid()' operation to indicate the target is > > > invalid when 'nr_regions' is zero. > > > > > > > > Signed-off-by: Kaixu Xia > > > --- > > > mm/damon/vaddr.c | 3 +++ > > > 1 file changed, 3 insertions(+) > > > > > > diff --git a/mm/damon/vaddr.c b/mm/damon/vaddr.c > > > index 39ea48d9cc15..65ff98d49ec0 100644 > > > --- a/mm/damon/vaddr.c > > > +++ b/mm/damon/vaddr.c > > > @@ -598,6 +598,9 @@ static bool damon_va_target_valid(void *target) > > > struct damon_target *t = target; > > > struct task_struct *task; > > > > > > + if (!damon_nr_regions(t)) > > > + return false; > > > + > > > task = damon_get_task_struct(t); > > > if (task) { > > > put_task_struct(task); > > > -- > > > 2.27.0 >