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 CC7F4C00A5A for ; Tue, 17 Jan 2023 22:20:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D6FCE6B0071; Tue, 17 Jan 2023 17:20:44 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id D1FCA6B0072; Tue, 17 Jan 2023 17:20:44 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BC0656B0073; Tue, 17 Jan 2023 17:20:44 -0500 (EST) 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 AD44C6B0071 for ; Tue, 17 Jan 2023 17:20:44 -0500 (EST) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 7B9B580BC0 for ; Tue, 17 Jan 2023 22:20:44 +0000 (UTC) X-FDA: 80365711608.03.DF90C49 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) by imf30.hostedemail.com (Postfix) with ESMTP id D084C80016 for ; Tue, 17 Jan 2023 22:20:42 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=d21qx3XZ; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf30.hostedemail.com: domain of dlatypov@google.com designates 209.85.214.176 as permitted sender) smtp.mailfrom=dlatypov@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1673994042; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=lSGOsJAtpiNhXze0eb7NkEGJHEgCM3o3h68MxeurWOQ=; b=Z1cHlhndWUnPRFFQWvf2nDkJAwSIKnyvLCPd6KYxDlwdQ0VzXiTveSaZdZXX85GOS8qzgN ICpqz9DnOsd3Q+XMzU8OWeIOD52cKPYvBNEo0WY8HmqHBgMpzf0SCZhSiWhTMUdMNlW6pz Q6Bj9E8vlYvcWauVkSU7F10HbFHAucw= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=d21qx3XZ; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf30.hostedemail.com: domain of dlatypov@google.com designates 209.85.214.176 as permitted sender) smtp.mailfrom=dlatypov@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1673994042; a=rsa-sha256; cv=none; b=RyuHKnmrO2bjtjSn9ztbI1A224yWm7/UHEb8oZ8UAK0UQ9ownXLBQlmdaOyVgzLDlgTT3r 53GKkLXM6Ks2OWrJDYuGofcozTz6PwIDd7pkReKyLSmuh9GNdpRs6s1rLUMXYjXs6PHsy3 KEadBmcpCsFsv0BKQpIHqwNaOR9ePPE= Received: by mail-pl1-f176.google.com with SMTP id 20so7678800plo.3 for ; Tue, 17 Jan 2023 14:20:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=lSGOsJAtpiNhXze0eb7NkEGJHEgCM3o3h68MxeurWOQ=; b=d21qx3XZ6vWnpM2uMNOpnaDrS6JFYZLqsPmQZR4rEDpPNDTK7CxWECLavKnY5flXhE xYn3PSdRgFwFcUMkYcOEnDq3GHlWRS49qWlUXrbUqbvIH0yCw15L6qX0Z0C94FHLKOkc VvFcZS93yqCWJXeQtYmHhWSxuVqHgPxtrcq7aaxyIoZJVF4uLEpeizfgCV+lD2wyjlno OT6u3A6pd+rbjY8jz41OW/xfuyUQV1LORUTY9ehw+XngDyK2N6nDiauJ67MVNuXg3oWL Kwnw8HaQavzOcd85p16aGf4pQ+7HlvzaCHiW/NewsYN2nc4MXSXIaVdSXzsZaeFyzTxa Hi5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=lSGOsJAtpiNhXze0eb7NkEGJHEgCM3o3h68MxeurWOQ=; b=WL3rlzEMGep2fwvcRkRL1bi9AlflzWfvHrDxzfnf0fe90NV0MIBmzClbAKKk/sAOYW znj7TwIrC8TlnUbkgTZyLOPutmzlowrPzkp9oRE3ca4faYCf41dD37SYbGDDYUE2devO gFGCZzjqsHYK9RwN2sOyR42yaiAQX1alnXcI5CpYjSn71csFo+I/KzONOZE+UxbWfsKE rdNMk+7F0MkgmJYblvh1fu3BQCh3a9XAJz667rzHvloBiX8Jrd7C9JgarX6XhJ2xqIqu KkRoH8kz4E4WZe+FMYCtV4eYaO0s8QlugcEOMKsms0/iXZjctlifNMflYFd50SMf/ufd W3Hw== X-Gm-Message-State: AFqh2krn9Tefl49UK+6ZtQqpAYdihCRcKTXCqvDi7p9n+v0EaGYO3+80 z2h7N9RWXpt/MMv7wDtk5RApnDKnoNri6b1lcGF8TQ== X-Google-Smtp-Source: AMrXdXv1tNSDA/vdVXrwznsUrTfJP5P5q4ykJ1GIOQkYbHKQCS2WJEk7FEHpnkKj40mxqilmHFwVqHlzOhVZdPBqT8w= X-Received: by 2002:a17:902:d506:b0:193:3760:1ca3 with SMTP id b6-20020a170902d50600b0019337601ca3mr310680plg.98.1673994041426; Tue, 17 Jan 2023 14:20:41 -0800 (PST) MIME-Version: 1.0 References: <20230117023335.1690727-31-Liam.Howlett@oracle.com> <20230117191109.116438-1-sj@kernel.org> In-Reply-To: <20230117191109.116438-1-sj@kernel.org> From: Daniel Latypov Date: Tue, 17 Jan 2023 14:20:30 -0800 Message-ID: Subject: Re: [PATCH v3 30/48] mm/damon: Stop using vma_mas_store() for maple tree store To: SeongJae Park Cc: Liam Howlett , brendanhiggins@google.com, kunit-dev@googlegroups.com, "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , Andrew Morton , "maple-tree@lists.infradead.org" , "damon@lists.linux.dev" , kernel test robot Content-Type: text/plain; charset="UTF-8" X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: D084C80016 X-Stat-Signature: tnzinmrdgdxc6xzx1roygcafnqh3mfc9 X-HE-Tag: 1673994042-167662 X-HE-Meta: U2FsdGVkX1+0/cyNeT7yiTvpAoHdhLyjTx9gA/jjt50gSNFFjcNJb4vlB1sUfKLYzTJSlU4v1Dj5UQ8xiPe5LzZqaYzIhclWQKejxFFXslidolITXNBd6DvnWWOHwKhUn/a581v78m3IQbu+d9gbuXRMB6x822jYc0dO/wDGQFO6xZfVslndEPl2iGsiF12RLg7106jCNQbBEct1gm+mUsgO/sTS86lnOkIzDnN5sQzAm7dBG1DEs/8OfJXKCwjJ4D+O1rQoF0dthORCeSglowPCRVP60F1VNfrfySMkYKuZMI6y39t7pO3dKce8E7+iH5Ui11q0hoFZuKJbzXGPUq78/FavjL23F4bCyfatkvQMgXhYRciH5lXi7ezgAhp/7O5IuHcDSjyaKcpm4C6Hn3+6MHaOXN1hheVHJjFuiU1x6u9F13FczgVuk9GatBFmqHGeSBzXpAPxjZmKvcZyOnjB2MQXkABIPfuNvCImEihIogu8V8tBU69UNG6rNyzyaer+b8haTuobZkqk2YuC/CLvDsDCtJ+17aw0Avhs1wU1fYfHO2vCPhw4xamBSo78Iw4ZmiSs1w7LH8Y0ihricGmCCb6yaubyUmBg793PWkXwcNvm94syFdfVZiuTxY58YduwJYwNBJoPdTt0MjNtaPrcUQx9yqEThwQxZoEa9kL6pftKm+tdJM+KRAlNlCsSI5b35hWRxfnSoIpqsviV2WirlQrkUDIdUv+Cwyp5T0uB8LAbthJuXvSn8qlV0UCCjTtb1e7T6JT8/qp6VZyFqs4Ht1j366T6swT1iyzhBsdNyA55S2JwtyJ1eDqHecbkUQozXRc/jF7skX1yhdRUArEwfeSqipLjucfGR3VcL+NTgIs4RTAgXD77aKrDOnbtXWwuL+gAylVgSLHU4bpMCLwSC45KUsLHMWfwhBrXgYrQZBVNr7IZ6c1+/nBQyuzsfbW31haZcEm2yDIzx/Q 9xOTWVew zg0jrlYqXzTG/7cDGRQoBrctP67lNTKSi/dDk3KJ46ewpJRDGbGBbqxfKxNy4mUCReW9HEpLb2KYuqrBtOLUmxe4j+z2gVVaqx3S0 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, Jan 17, 2023 at 11:11 AM SeongJae Park wrote: > > Cc-ing kunit people. > > Hi Liam, > > > Could we put touching file name on the summary? > E.g., mm/damon/vaddr-test: Stop using ... > > On Tue, 17 Jan 2023 02:34:19 +0000 Liam Howlett wrote: > > > From: "Liam R. Howlett" > > > > Prepare for the removal of the vma_mas_store() function by open coding > > the maple tree store in this test code. Set the range of the maple > > state and call the store function directly. > > > > Cc: SeongJae Park > > Cc: damon@lists.linux.dev > > Reported-by: kernel test robot > > Signed-off-by: Liam R. Howlett > > --- > > mm/damon/vaddr-test.h | 19 +++++++++++++------ > > 1 file changed, 13 insertions(+), 6 deletions(-) > > > > diff --git a/mm/damon/vaddr-test.h b/mm/damon/vaddr-test.h > > index bce37c487540..6098933d3272 100644 > > --- a/mm/damon/vaddr-test.h > > +++ b/mm/damon/vaddr-test.h > > @@ -14,19 +14,26 @@ > > > > #include > > > > -static void __link_vmas(struct maple_tree *mt, struct vm_area_struct *vmas, > > +static int __link_vmas(struct maple_tree *mt, struct vm_area_struct *vmas, > > ssize_t nr_vmas) > > { > > - int i; > > + int i, ret = -ENOMEM; > > MA_STATE(mas, mt, 0, 0); > > > > if (!nr_vmas) > > - return; > > + return -ENOENT; We could pass in the `test` object here and give more detailed info, e.g. (if !nr_vmas) kunit_skip(test, "..."); And below could be bool stored_all = false; // instead of ret ... for (...) { } stored_all = true; failed: mas_unlock(&mas); if (!stored_all) kunit_skip(test, "failed to..."); > > > > mas_lock(&mas); > > - for (i = 0; i < nr_vmas; i++) > > - vma_mas_store(&vmas[i], &mas); > > + for (i = 0; i < nr_vmas; i++) { > > + mas_set_range(&mas, vmas[i].vm_start, vmas[i].vm_end - 1); > > + if (mas_store_gfp(&mas, &vmas[i], GFP_KERNEL)) > > + goto failed; > > + } > > + ret = 0; > > + > > +failed: > > mas_unlock(&mas); > > + return ret; > > } > > > > /* > > @@ -71,7 +78,7 @@ static void damon_test_three_regions_in_vmas(struct kunit *test) > > }; > > > > mt_init_flags(&mm.mm_mt, MM_MT_FLAGS); > > - __link_vmas(&mm.mm_mt, vmas, ARRAY_SIZE(vmas)); > > + KUNIT_EXPECT_EQ(test, __link_vmas(&mm.mm_mt, vmas, ARRAY_SIZE(vmas)), 0); > > In case of the __link_vmas() failure, I think we should skip this test using > 'kunit_skip()', rather marking this test failed. As noted above, I'd suggest we also pass in the `test` object to __link_vmas() and call kunit_skip() from there. > > > Thanks, > SJ Daniel