From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.remote-ip=209.85.128.51 ARC-Seal: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; cv=none; t=1793287091; b=OOcWlG5a+yu1xInT4CWDhFVN3hiCoufcv7YeMsM+tYjoc+zIA+Hl/Tb1pFiLfUagff1w XA1Nw2y7wtKltVGXM4FpIL7AJf66p0Fzo47J3ta7B2dOnXxC+jp5Rk6gC+YmS58UiNyha FMt04aWqNxnkcmFW9WzwJymV33tEHrHNOMwJ73k9VaQv0zELXv2q2ckWwmn0HolTKLIv+ f3nPvklGudmPQEj33wvpYgyWDv8HuNQTIdVj/SNYf1/OQKBb44Fki1IWWUKtC0wv2drj8 rqzqr9kTaGaMjmAyqZC/soX9PogJ1+B/dutd9nagEgVyIZGX5ySndLJfDf/wEGXAJ5w== ARC-Message-Signature: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; c=relaxed/relaxed; t=1793287091; h=DMARC-Filter:Received:DKIM-Signature:X-Google-DKIM-Signature: X-Forwarded-Encrypted:X-Gm-Message-State:X-Gm-Gg:X-Received:Received: Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; bh=XKclWe9kzl34mf7ikCBlpHKdvGAXpEly40KTRKr1ZNY=; b=F2Qp8xpB4mahfr57aBBQf1TsgvVkAG/N7aF5Moj9pl18lBEZE5fh+xJKuUfs9R6Iwxpa 2Oy7v5vjr4LUAfYZxdpED673cSO91imepIPwE7XAY4ABxoh2QDm4FouNcd7ivXNzpK0DG 6CBL+WlgY0LBr9njUhtVvP4bQ71FSISqoTyjhpCW+wLYfc+hzYYcvg18Eh1VdjuiGA9+a Adfem3pYKicvBx3ueJemZfKAYp5XhJZtq8CSrRytAnhkDkt+95ImMhPAnRzkSN14054Kr H2KZdFoo5GNqEOtTHMSzh/QzOoI34vAlaI6tJgX5HLYW/BaCJh0ter/CqlqX4dWloaw== ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20260707 header.b=lkHYRBLy; arc=none smtp.remote-ip=209.85.128.51 Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 69E07606A31A for ; Thu, 29 Oct 2026 15:18:11 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.2 smtp.subspace.kernel.org 69E07606A31A Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key, unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20260707 header.b=lkHYRBLy Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-4a215e64962so24339055e9.1 for ; Thu, 29 Oct 2026 08:18:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20260707; t=1793287090; x=1793891890; darn=vger.kernel.org; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:from:to:cc:subject :date:message-id:reply-to:content-type; bh=XKclWe9kzl34mf7ikCBlpHKdvGAXpEly40KTRKr1ZNY=; b=lkHYRBLy5VLy9lkQOcJ3o9qdIPz574Rme6P63ZH03Ucpos0khXntA7NZejBhJZX79p tv+/DlEor90Vx6TmKdPFWRQavGmI+kWGcRMLu12S7rAWJrrVooTEi9wbmyeeaIrB8Ar5 K6WDEWHUor7AlFuZ2JFi7fCfTGjrochFSL7XZYTtz70J+DxtLHnNTrylhyH+PLbhShyI 2yUzyM903mFa9I1fRobJG0bJwYPxx0KNP0tslpoJlx3yINr08LeQuCrPBiLzej1j8twf +iAraxXQ+RrJpZgI9tvry9uEGvyxTqDdfnAEoKAjYMsP/cFGH60OM6KdBUNSEs7lTYaL h2Mg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1793287090; x=1793891890; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=XKclWe9kzl34mf7ikCBlpHKdvGAXpEly40KTRKr1ZNY=; b=xPpiT9LiyaQeuFo6TkwKEWLRrgkz85mttNChNu77NIeNY4yeTa5v7YP6PkGO/cqMxk RzEaXBm2qFWJ/5oVFkAdomi5C6rTspckx5tIUpxuViyxsaGKXRNI5+Ci5fmubjHFRmkI jivOwwnHuDrLgS1Z1sgr4GdSBiIAX78PzXhr74CJvZE98jfdqeuVAq9FuuWFLkZouHL5 h8AhuGqNEDog4L1mhwCRzFv6xkYsDWMxF3xWnuhiCo9H4lO5lxFFzPpCjSt0vW8u0/VE OpsTZ3ohjsp5F+lPlwYvHeAwHtv5WP+Z/Jkjt1Evo0jBxP5PzwknIq9PJwLpTwMZsA8k eveQ== X-Forwarded-Encrypted: i=1; AKwUvBzgBMAi8ujNG0kWP4OH3/VltmL2b+ewNt0OkgayDymZ9sceoOn5lxGM/5ShXFda+UqlhfipX2nO9f2MM3s=@vger.kernel.org X-Gm-Message-State: AFq9FYKeMblMnAxe6YTOw8SjuS3YtUHMiva8amWtftQSbCFv3o/1o3Sd 9bZP9P8XkA+DK3d7zoDnQgOU5kbYEfLpf9dR5Vgkmtl0Xf725ctyNcj6 X-Gm-Gg: AYBFou2JXbZGNG6Ea2OiiuzUsOFkGQA0uE2qyXTivWFCU6akvg0wSMW/4qF6kTpbCdB T5ZExGXZ3klreiouwFraozv79zFBKiOe9losLVQXbQmTafSRQzh0QEMsmmlknP3adxX2ZKa8xhS yOXQDpqzH7V89onGeAG9PaAbFnN9d/yPTm5zEnp+ScMo7hbSm5rgL9cXriZ2rUtQsLQcbLj7L3s 5dhKesjqKXjgTVcrIYbxTneAthVuK1vGTVLpUQMkBB8lveaR/0rkyfGiEFbuF8GvanWUZZ63bc9 CtR4rbVC+ckDAFhTpFoPLGtwBEdIbu1HQjDQUP1O9k+6CAMvTACNTfqt+tHSZ5ikPoa1TxJPosX WkqLJ+SQD7J7vdaMLZIfMQXYYMyF0yjPATFGuCLDVt5n3EkDmuJBQPeLrfkc73H/3ESboXWyG90 unDVFEIr9g6OS/E8SRIZTQysjn2HtSIsvuR1xGzSKJFsnUPd/ILow7il7KSYYv2/IrHFQKi0j7s eQpcnLj5AMyLfCq73AMPRnmRv8kALsikEKP/z9iPqsu4Hi5PkxKlIhV1q3X1MNpWdTL+PwV3hJS cGRTAGvE4Tr0YyqMseNJf7Za7gwSry4oBeQcODFBanyDdSDcfUtGWHhzk2e/2Mk0+OB7r1wkmxG lykqvTxi8SHO1KZ5rj24t0DY4WfoWjQ7jaa5qoPUyBC+ZPogWaJHkyycxl3wpVRT1usk= X-Received: by 2002:a05:600c:4f89:b0:4a1:c6fd:4db0 with SMTP id 5b1f17b1804b1-4a966c41836mr142852995e9.19.1793287089736; Thu, 29 Oct 2026 08:18:09 -0700 (PDT) Received: from localhost ([2c0f:3d00:6be:8900:ce5e:9212:ea4b:f30]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a94f05e4e4sm87571055e9.3.2026.10.29.08.18.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2026 08:18:09 -0700 (PDT) Date: Thu, 29 Oct 2026 18:18:05 +0300 From: Dan Carpenter To: SJ Park Cc: Xiaolei Wang , akpm@linux-foundation.org, david@kernel.org, ljs@kernel.org, damon@lists.linux.dev, linux-mm@kvack.org, linux-kernel@vger.kernel.org, "Liam R. Howlett" , Michal Hocko , Mike Rapoport , Suren Baghdasaryan , Vlastimil Babka , stable@vger.kernel.org Subject: Re: [PATCH v2] mm/damon/tests/sysfs-kunit: fix leaked pid reference in add_targets test Message-ID: References: <20261029075609.35661-1-xiaoleiwangxiaolei@gmail.com> <20261029141040.148392-1-sj@kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20261029141040.148392-1-sj@kernel.org> On Thu, Oct 29, 2026 at 07:10:40AM -0700, SJ Park wrote: > Hello Xiaolei, > > On Thu, 29 Oct 2026 15:56:09 +0800 Xiaolei Wang wrote: > > > From: Wang Xiaolei > > > > damon_sysfs_test_add_targets() creates its monitoring context with > > damon_new_ctx(), which leaves ctx->ops zero-initialized. Since > > DAMON_OPS_VADDR is zero, damon_target_has_pid() returns true for the > > context, and damon_sysfs_add_targets() therefore calls > > damon_set_target_pid() for each target it adds. That function grabs a > > reference to the target's struct pid via find_get_pid(). > > > > The test then tears the context down with damon_destroy_ctx(), which > > releases such a reference from ctx->ops.cleanup_target(). For the vaddr > > operations set that callback is damon_va_cleanup_target(), and it is the > > only place where the reference is put. The test never selects an > > operations set, though, so cleanup_target is NULL and both references -- > > one for each of the two damon_sysfs_add_targets() calls -- are leaked on > > every run of the test. Running the test with CONFIG_DEBUG_KMEMLEAK > > enabled reports the leaked struct pid objects as unreferenced. > > > > Fix this by selecting the vaddr operations set for the context before > > adding the targets, mirroring what the sysfs interface does. > > damon_select_ops() fails if the vaddr operations set is not registered, > > in which case the test cannot exercise the pid handling and skips > > itself. > > Makes sense. Thank you for finding and fixing this. > > > > > Fixes: b8ee5575f763 ("mm/damon/sysfs-test: add a unit test for damon_sysfs_set_targets()") > > The impact is leak. I think we should add Cc: stable@. I wouldn't bother Cc stable for unit tests. It's not something which affects production or real life at all. I used to be a be more involved in testing and the rule was that you pulled the tests from the latest kernel and ran them against the stable kernels. It feels like that can't make a lot of sense for unit testing so maybe for unit testing we didn't do that. I can't remember... regards, dan carpenter