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 0D228C83F03 for ; Wed, 2 Jul 2025 20:14:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A50828D0005; Wed, 2 Jul 2025 16:14:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A27538D0001; Wed, 2 Jul 2025 16:14:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9169A8D0005; Wed, 2 Jul 2025 16:14:39 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 7CED68D0001 for ; Wed, 2 Jul 2025 16:14:39 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 55F2E160461 for ; Wed, 2 Jul 2025 20:14:39 +0000 (UTC) X-FDA: 83620427478.29.26457E0 Received: from mail-yb1-f173.google.com (mail-yb1-f173.google.com [209.85.219.173]) by imf29.hostedemail.com (Postfix) with ESMTP id 73CF912000A for ; Wed, 2 Jul 2025 20:14:37 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=mzUlhxBi; spf=pass (imf29.hostedemail.com: domain of bijan311@gmail.com designates 209.85.219.173 as permitted sender) smtp.mailfrom=bijan311@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751487277; 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=Ws2fCY+40qz7qYM2UXMSStun9zyhHrsexuHO2VyV7ZQ=; b=ySn7Ge0DbZXoF7rjkw5awRS+UbZlqaMXwqjkCJK4vdJKOlxs4kTRhhue23MCwh/7Ozzn5B 7x3gI5byTF+0Q4QQsk2We5FH97oF9YFnI+jKJif5ZLHGzOKICq1Kgx0bGvnauLDZbRzoYi JuO0du1E0uaBV+ypY2cLmAT/5GUNFV0= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=mzUlhxBi; spf=pass (imf29.hostedemail.com: domain of bijan311@gmail.com designates 209.85.219.173 as permitted sender) smtp.mailfrom=bijan311@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751487277; a=rsa-sha256; cv=none; b=V2+k+KcyGKeHT+aY8pfArYItyw4KhOLY/yy+TuSOIX3Skeh62F7sd/AU6qM3wpw/iUE87a U7MBcTHyc+XDklDmsBfBHF/t8g7P+joAzXeGDNgTYx/SA9kyNheWn34N5K90xAcxWI+xyw LNhPMW1+khrWpIRglqmwX1yEtutrkOM= Received: by mail-yb1-f173.google.com with SMTP id 3f1490d57ef6-e898fb745beso151893276.1 for ; Wed, 02 Jul 2025 13:14:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751487276; x=1752092076; darn=kvack.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Ws2fCY+40qz7qYM2UXMSStun9zyhHrsexuHO2VyV7ZQ=; b=mzUlhxBixwHy9CLCQ7Rip76ehMNr6KHpFrBaPcN19+JLRHtt9M0heb2gYGT5UhfWo1 /U6SAiDrJ+yBc2kKnXj4R98UbkJJNUDNAk8XP8kGcNPArFT6ZTWAeipK3JyyQ2/bG1k4 BM1iBcWHKBMSPJlwcPAhDa+USNx9ygcL50jOBtU+T9FxNsh8xWxQ3vUBWghKyQer2wDe F3iN5Ep6T6iRa9CVQCbXzj+id242eb+GZP+fy2s8wmW3MjloyE3TW6Zcm7EfbgBAP4uu fP4Toc6uOwrQpV9floDlu5dImImL1Glowae2VnE7mf8uNhMpN/mA1gi54dih1vZjjuxG JpAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751487276; x=1752092076; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Ws2fCY+40qz7qYM2UXMSStun9zyhHrsexuHO2VyV7ZQ=; b=vUTD9+7G90gaF2DZV9jVJdw272nW5kNIafgdBSJUAxuyDFU6SIIYqq6ZA90C6v/MB3 os9xwqLW0l9B0TTGZZSCdm1k3xAIefuJvPON7SE2eKRCAtQ50DIzqbhYaO3amjYd/7fS EqCR6j8ey7nMDov12bVst/FaCxb5ZfeqFpm+oRhtM8d2RYt4YJUWWc/spUSJbXIhMURH aHLTyysqrxe4CjTkTnmNm2G1ez+Ix6FvPVLmayTkIMd/lgX/6g/gOGlOfpesGqpfepuB gRLY8YW1+nCTLdBAhLPRWo727airCe5z0bqJupceQ4XflWgM7gKv0M++eh+JsYDbvRzk 1tyg== X-Forwarded-Encrypted: i=1; AJvYcCVFBxk+5jcn5sqqruJQ5DPMrf7ggBihu18r+5ZF+N1VcO8r3rCX8pToVzTA5aI+sRB9+GQpYPrHsw==@kvack.org X-Gm-Message-State: AOJu0Yx2QZUs6zNVpcZ/lvadIYGbzWYD9g1Hf0YMBx2DnfLKPak9RJvK GECwaLCB2SN56cPOS2MR44D1xyfUfshcp7bDy765sinAC+Lap54qEv7e X-Gm-Gg: ASbGncsWomM3APATrHBE8V6V57MrL9m3mTKpdkreeNqYW21wnNUjPlIMBSVqJbNPGtH tC6jn6tre63pELhabFFlhiiu0pzeKpFtjRZCmmhieDexKw3BMR13athgNEWApDPSUrpEV7JdCXa wwVi+zlT6UM0SDO+hIcIsz6aLWs3U+ofcF1Yqo1AICyBdqLCxSSS7Y57x7yM/MwUVkzINgaLJLQ WRfuDwSHUx5eWCzKOQyZVZXPqWdbtpSXevcjHoGP90qCB7+Tkx+X4kGbK4Oo4lLT7kGAUFfuuiR BvetzzSZLNfOygIUQ314nHjlOBeE/MriVMn3/Zl24tkDa/LMWI5KGWdVj3g4lHiqG9D3GbeTsb0 8Kdj1HCM= X-Google-Smtp-Source: AGHT+IFMh0Zpmv4j5OzZGutnmhihaCWP4mrmEUdEh5Fn5yyRhW1DwP6dI+488wgyAG0GH6wDYQKuKQ== X-Received: by 2002:a05:690c:8686:10b0:70e:4d8:5cab with SMTP id 00721157ae682-716590c7964mr10179957b3.2.1751487276493; Wed, 02 Jul 2025 13:14:36 -0700 (PDT) Received: from bijan-laptop.attlocal.net ([2600:1700:680e:c000:873e:8f35:7cd8:3fe3]) by smtp.gmail.com with ESMTPSA id 00721157ae682-71515cb4347sm26124157b3.83.2025.07.02.13.14.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 13:14:36 -0700 (PDT) From: Bijan Tabatabai To: damon@lists.linux.dev, linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org Cc: sj@kernel.org, akpm@linux-foundation.org, corbet@lwn.net, joshua.hahnjy@gmail.com, bijantabatab@micron.com, venkataravis@micron.com, emirakhur@micron.com, ajayjoshi@micron.com, vtavarespetr@micron.com Subject: [RFC PATCH v3 07/13] mm/damon/core: Commit damos->target_nid/migrate_dests Date: Wed, 2 Jul 2025 15:13:30 -0500 Message-ID: <20250702201337.5780-8-bijan311@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702201337.5780-1-bijan311@gmail.com> References: <20250702201337.5780-1-bijan311@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 73CF912000A X-Stat-Signature: cm1mnd59urwo1is7qf8m1t9rs19fmze6 X-HE-Tag: 1751487277-527218 X-HE-Meta: U2FsdGVkX1+yk0M6PUqG6cm4AmSgEJv8n6ObFiTNSV6jBrcnqVe78VDkTKkmXzn2eA8fAaGlZIvVSpyWJ73wfTpw6sgmq2/LfzY/Qmva7QAJe8vuolO1vhGi1+2EHT3Nxvc6ERk6FRDBVpx8hTNXCfVYUjOVSaAz51PqcDiyOetZzmdcw24MGEDSKZ+O8QuxdLMpI7Rg1BEXRRBSvqn5Y6SAAH2C5LT7C+6TQAkfKWSAVzndyS9jOU9fuCFeqUN+i55NWanspAxX3YAhYwANoubgebiPu7pM2y60kU4tax5aoByP9tEmBNZp/838YtZgazgIJlPnoXxcDvc+eD+GPgn9T0ls+e8KhNQ5tuZl9hEMcnCrfUUwHXZ3MYonvZv02K74tVm5/GgEq3a+TnBTLKhl7U95QAUJXTPeXbxgUBW1LxNtArrGvXoIA2LqzCzcBxsYgYBq4Vzf6OhGFnLfcHYUs9vg81UcqcR1TI30XspOP0b+PER0wqYfoGsjIk/NE7VHHP/jQcSvhRIR00UUntXETAU2gyD0mytbyC5wr94P7xbe1d12bWcrK9ibH9n5usNxULlAVm2Uz0erXwX4lq2OxZFItbKNPAN+qkkL/JX5L+2YJLFYIUqrwJrwHTRcLVPu1xRaChhN48OTGCL0A7gzxy69uiM/7+3A7VWe00UcTsBI2sVn3nIo7U7c8jRfNMj2RDByUL6BO6zE/yKCTZz/eIDtuhmFuZXXFDbi9FSEBwWAEdvwyDvOIF6Znmfjt2gPNWyizTn8pVw9OZTyagi4uRs77b7aw0qpYoZ0bJD9/RFTI8rNfO3mBQaCynUpZbDNLdu5RWbtxqfT5qDswlUhYuhdmTOvWRovgo0p0KEQT3B/oHGqUdogyHGDlpaQfKSEE9i7nNv96Me0T976SEgZAIo/hb6l/05fRt/DRbmL0iLnzspbHz0mWrom0/f00b7QafCpOd8ly2yRkjX k1xwfhWA Gm3DZeI+tarkAgeFf/jYkms5deRv4V+7toz4/i9Ev2g9fG/e9QNrBw4AoRt+IJm2+JnzWqdfJKHBnLtgXdS5IumYO1OlDwpoR5dFYXnhS3Lm+TzYx+jnIp80+8e2R4X5hYyLIjPK9WgHxYQrMxW7zbLI8/Ez+/NcAILNoNJTsEiGYYkphR+/czbf2HZHzupX/Hg0ihjd7rKrNduLR2ucz6vk32mD3A7Ga8UmE6CaNsVbfs3gtPSsYa2ek9+lkjtZedopg6qmzGVQWHo6CWGS8dP6bE4l/+JL2OPSFyBnHEmLAkDHhBImgYSEKiSL3PKOnPFtaTEoHPiuUrew38Ar7gK0np83osEinKrx3wLyWsLdYU0oYQ1kAd5yJRQadmszJReUsjrHtZLqzMCgcm5z924ZsIIDb0BMUXbAUnKNiILYcQg65oiO9wwidzpusqrXfUc8B4UltBiXhw6udtIzI2vnUUSXiOHsOcVH9P7Kd0G7mSGuKGhZzbInyxR0wY8GzUl9K22CC3n8nRQuo1TNGAFPNhX8mN8sF3CwfrCF78+NbYO5kHgGbUREVTPJpPpC8GC9oUqejaNWDtk+/4B4EVtmmt4Zv8CjRk6xChsTsrt6x29o5Kz5aVJk/wIw5WdwLV0Yg1+XZJ7tuXoA= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000002, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Bijan Tabatabai When committing new scheme parameters from the sysfs, copy the target_nid and migrate_dests of the source schemes into the destination schemes. Signed-off-by: Bijan Tabatabai --- mm/damon/core.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/mm/damon/core.c b/mm/damon/core.c index a4c3cfe531df..0565aae8d1fa 100644 --- a/mm/damon/core.c +++ b/mm/damon/core.c @@ -943,6 +943,41 @@ static void damos_set_filters_default_reject(struct damos *s) damos_filters_default_reject(&s->ops_filters); } +static int damos_commit_dests(struct damos *dst, struct damos *src) +{ + struct damos_migrate_dests *dst_dests, *src_dests; + + dst_dests = &dst->migrate_dests; + src_dests = &src->migrate_dests; + + if (dst_dests->nr_dests != src_dests->nr_dests) { + kfree(dst_dests->node_id_arr); + kfree(dst_dests->weight_arr); + + dst_dests->node_id_arr = kmalloc_array(src_dests->nr_dests, + sizeof(*dst_dests->node_id_arr), GFP_KERNEL); + if (!dst_dests->node_id_arr) { + dst_dests->weight_arr = NULL; + return -ENOMEM; + } + + dst_dests->weight_arr = kmalloc_array(src_dests->nr_dests, + sizeof(*dst_dests->weight_arr), GFP_KERNEL); + if (!dst_dests->weight_arr) { + /* ->node_id_arr will be freed by scheme destruction */ + return -ENOMEM; + } + } + + dst_dests->nr_dests = src_dests->nr_dests; + for (int i = 0; i < src_dests->nr_dests; i++) { + dst_dests->node_id_arr[i] = src_dests->node_id_arr[i]; + dst_dests->weight_arr[i] = src_dests->weight_arr[i]; + } + + return 0; +} + static int damos_commit_filters(struct damos *dst, struct damos *src) { int err; @@ -983,6 +1018,11 @@ static int damos_commit(struct damos *dst, struct damos *src) dst->wmarks = src->wmarks; + dst->target_nid = src->target_nid; + err = damos_commit_dests(dst, src); + if (err) + return err; + err = damos_commit_filters(dst, src); return err; } -- 2.43.5