Received: by 2002:ab2:3350:0:b0:1f4:6588:b3a7 with SMTP id o16csp1506772lqe; Mon, 8 Apr 2024 10:45:13 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCXXUYO5/j2j/47RVf+WReqBqDrzgnB7VjUSSsxgoAyPcjzgLk5hYo2X6cIP9xk7wQPIlVmMDqfZ942mXK5in9bxUu2OVrhGFBRcneJJeg== X-Google-Smtp-Source: AGHT+IGsDZIVHgjBv7aJWLyCNFzNlTBK7JZoL6opGBDfmrdyZAuzdW3lBVGmEGeIC96j5Dm1wwky X-Received: by 2002:a05:6e02:1386:b0:368:783e:55c1 with SMTP id d6-20020a056e02138600b00368783e55c1mr13171554ilo.6.1712598312489; Mon, 08 Apr 2024 10:45:12 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1712598312; cv=pass; d=google.com; s=arc-20160816; b=SuSsk9hVIzSYYeuQ/IzFBT3oe5/geME1HLegbonxpn/61qz6vSKOWO/mEs5sxDEqm/ cjud8MEgdsFttuz7kGGc6Gw20RZkmUOMsp2A1WlvUGkXZUPD3MuI0RqkEMap1nmJXYfX jrEXbWIufIDncWPh9lj8DZ0Gzo/OePYswjlU8gdT1Fzk16GOGe/l9FxjxVEmsSXijrvx IwxmlObJzlB0h2r9dF0BnulwflIoNL7uYq382n1wbToq0j09ZC0G8twWpm4d7l9JaYC/ cFzkNVIscfEac7peSNkmD9CXtBCx8ym09i+v+jUyN78NluArFSbhLwIb+EWJpvkeZqsy xpmw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=NgLifqMLNoPhkeuwYN1mZhaC6UMZX4YFeTDWmTZyaBM=; fh=G8k5KLlKAeFR9xe9SXCzJ3g7WPs151bJx6zrec4c8hI=; b=WWKStJD03OQa47ma200pwA4ks4+mZDyVHwUMoyeC4jImg85lGqWXFg4rEXriazOblX nr5xgoCXkYJmEO8lN5aiiBLhFdVY1wq2Cuh7CxoyFEzgZJ/Usrjz/JOyF1wmsYoZQYYP QK2b7v9s4ZJunXqrc/2cHpKis1YLRZkVHjWRXRkalFiWVkHgb4MaQJz/NQCuW+o4txM8 LTVYMFA4LYCqr2l6ZZFXGNjJBvSjX81NUfqyW+zc0Qe2z4rweg1Y9Aiw09DcOnqsl5Q+ 7oAh/jJpSKh6StTU7pZaWVUCTqN6RaF8psRuM/rIZ/j6x2Wou7wx7vEBU4Dk3qGTp08g /Qsw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=V5uolRQy; arc=pass (i=1 dkim=pass dkdomain=intel.com dmarc=pass fromdomain=linux.intel.com); spf=pass (google.com: domain of linux-kernel+bounces-135677-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-135677-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id 2-20020a630e42000000b005dc48945ce7si6729299pgo.802.2024.04.08.10.45.12 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Apr 2024 10:45:12 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-135677-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=V5uolRQy; arc=pass (i=1 dkim=pass dkdomain=intel.com dmarc=pass fromdomain=linux.intel.com); spf=pass (google.com: domain of linux-kernel+bounces-135677-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-135677-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 19077283974 for ; Mon, 8 Apr 2024 16:34:18 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id C3943142E92; Mon, 8 Apr 2024 16:33:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="V5uolRQy" Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 45C97142651; Mon, 8 Apr 2024 16:33:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=192.198.163.16 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712594023; cv=none; b=DeiKfswYtscwHsWQHhwfQRfxyDwy/rE0Y72hsIB4f9/lgOZzEwzDomHAvpa4kAeT5iP9uVL3IRfZXXB3V/4XnL8DsjpK1R92sVSwmHgEzbW6Ce/UHR/juxXykWh3aYM5NL5aMTfQLTyZHTmD4/Uhrj5rfXRMxzb5+MSjLErQ+A0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712594023; c=relaxed/simple; bh=XRhgrSVE+Ccbo/1mafBVP6+lTEkURptm3cPIo+6wO0E=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=NskfQlsOeGqM6VeKV7KNZ0f48EkzBkFCIQ/pRa0hYgYvm0WdN2nROqn2rBb6z2xTpg4cQrUkzvzQSAibP9jQ199gXRquNbVgC+7g9ZgzuveGGcpP0FyD3hNw3n5YfxJS5ZTB76VN7l8Crvl6JpVwbyB1P5p8xvae3nuM5qlQhd4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=V5uolRQy; arc=none smtp.client-ip=192.198.163.16 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1712594022; x=1744130022; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=XRhgrSVE+Ccbo/1mafBVP6+lTEkURptm3cPIo+6wO0E=; b=V5uolRQyjjJqXtMVGskg+tDuJRxJu8VPtk1A8vMLC2ijRmJ10PKoIVt7 ImxPFx5ThXMsM+6I0qo/aB1DudmTvznmuht5J+gSCxlgHqVtq5pFom/sq kQ/Nh4MFnH+Sxqjs6uQQLtpWkDEEtkCRi0WK9H/d9j9A5Zg4fFq/d0rfH fH8N1hWtlsQuPyq7TtP5CwWEXXrr3JEuy0I75sUQ+IoMqe7JvYNt/KjD1 WaK1wlLuMEkhdiLccsrmi6onPjlr+DhvqjZnofJ5VH+dCGZd7NXSI87kE rJMu/OD5Kh9ccB6IHnMfDEhdsmxzPc9Jm9r5jdBPwAsMgVWtSFWG0eP4e A==; X-CSE-ConnectionGUID: 9h6ac7WwRheVS5Y7i7WvSQ== X-CSE-MsgGUID: C0oKpTFxQ8GA8QQEB7t++w== X-IronPort-AV: E=McAfee;i="6600,9927,11038"; a="8460985" X-IronPort-AV: E=Sophos;i="6.07,187,1708416000"; d="scan'208";a="8460985" Received: from orviesa010.jf.intel.com ([10.64.159.150]) by fmvoesa110.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Apr 2024 09:33:41 -0700 X-CSE-ConnectionGUID: n8T0kgPORWKzqvDVKLYLFQ== X-CSE-MsgGUID: VwUXSNZHSN28610qxa4o6w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,187,1708416000"; d="scan'208";a="19812967" Received: from ijarvine-desk1.ger.corp.intel.com (HELO localhost) ([10.245.247.28]) by orviesa010-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Apr 2024 09:33:38 -0700 From: =?UTF-8?q?Ilpo=20J=C3=A4rvinen?= To: linux-kselftest@vger.kernel.org, Reinette Chatre , Shuah Khan , Babu Moger , =?UTF-8?q?Maciej=20Wiecz=C3=B3r-Retman?= Cc: Fenghua Yu , linux-kernel@vger.kernel.org, =?UTF-8?q?Ilpo=20J=C3=A4rvinen?= Subject: [PATCH v3 05/16] selftests/resctrl: Consolidate get_domain_id() into resctrl_val() Date: Mon, 8 Apr 2024 19:32:36 +0300 Message-Id: <20240408163247.3224-6-ilpo.jarvinen@linux.intel.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240408163247.3224-1-ilpo.jarvinen@linux.intel.com> References: <20240408163247.3224-1-ilpo.jarvinen@linux.intel.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Both initialize_mem_bw_resctrl() and initialize_llc_occu_resctrl() that are called from resctrl_val() need to determine domain ID to construct resctrl fs related paths. Both functions do it by taking CPU ID which neither needs for any other purpose than determining the domain ID. Consolidate determining the domain ID into resctrl_val() and pass the domain ID instead of CPU ID to initialize_mem_bw_resctrl() and initialize_llc_occu_resctrl(). Signed-off-by: Ilpo Järvinen --- tools/testing/selftests/resctrl/resctrl_val.c | 33 ++++++++----------- 1 file changed, 13 insertions(+), 20 deletions(-) diff --git a/tools/testing/selftests/resctrl/resctrl_val.c b/tools/testing/selftests/resctrl/resctrl_val.c index e28a1ebef730..9753914b2250 100644 --- a/tools/testing/selftests/resctrl/resctrl_val.c +++ b/tools/testing/selftests/resctrl/resctrl_val.c @@ -446,19 +446,12 @@ void set_mbm_path(const char *ctrlgrp, const char *mongrp, int domain_id) * initialize_mem_bw_resctrl: Appropriately populate "mbm_total_path" * @ctrlgrp: Name of the control monitor group (con_mon grp) * @mongrp: Name of the monitor group (mon grp) - * @cpu_no: CPU number that the benchmark PID is binded to + * @domain_id: Domain ID (cache ID; for MB, L3 cache ID) * @resctrl_val: Resctrl feature (Eg: mbm, mba.. etc) */ static void initialize_mem_bw_resctrl(const char *ctrlgrp, const char *mongrp, - int cpu_no, char *resctrl_val) + int domain_id, char *resctrl_val) { - int domain_id; - - if (get_domain_id("MB", cpu_no, &domain_id) < 0) { - ksft_print_msg("Could not get domain ID\n"); - return; - } - if (!strncmp(resctrl_val, MBM_STR, sizeof(MBM_STR))) set_mbm_path(ctrlgrp, mongrp, domain_id); @@ -618,19 +611,12 @@ static void set_cmt_path(const char *ctrlgrp, const char *mongrp, char sock_num) * initialize_llc_occu_resctrl: Appropriately populate "llc_occup_path" * @ctrlgrp: Name of the control monitor group (con_mon grp) * @mongrp: Name of the monitor group (mon grp) - * @cpu_no: CPU number that the benchmark PID is binded to + * @domain_id: Domain ID (cache ID; for MB, L3 cache ID) * @resctrl_val: Resctrl feature (Eg: cat, cmt.. etc) */ static void initialize_llc_occu_resctrl(const char *ctrlgrp, const char *mongrp, - int cpu_no, char *resctrl_val) + int domain_id, char *resctrl_val) { - int domain_id; - - if (get_domain_id("L3", cpu_no, &domain_id) < 0) { - ksft_print_msg("Could not get domain ID\n"); - return; - } - if (!strncmp(resctrl_val, CMT_STR, sizeof(CMT_STR))) set_cmt_path(ctrlgrp, mongrp, domain_id); } @@ -747,10 +733,17 @@ int resctrl_val(const struct resctrl_test *test, int ret = 0, pipefd[2]; char pipe_message = 0; union sigval value; + int domain_id; if (strcmp(param->filename, "") == 0) sprintf(param->filename, "stdio"); + ret = get_domain_id(test->resource, uparams->cpu, &domain_id); + if (ret < 0) { + ksft_print_msg("Could not get domain ID\n"); + return ret; + } + if (!strncmp(resctrl_val, MBA_STR, sizeof(MBA_STR)) || !strncmp(resctrl_val, MBM_STR, sizeof(MBM_STR))) { ret = validate_bw_report_request(param->bw_report); @@ -845,10 +838,10 @@ int resctrl_val(const struct resctrl_test *test, goto out; initialize_mem_bw_resctrl(param->ctrlgrp, param->mongrp, - uparams->cpu, resctrl_val); + domain_id, resctrl_val); } else if (!strncmp(resctrl_val, CMT_STR, sizeof(CMT_STR))) initialize_llc_occu_resctrl(param->ctrlgrp, param->mongrp, - uparams->cpu, resctrl_val); + domain_id, resctrl_val); /* Parent waits for child to be ready. */ close(pipefd[1]); -- 2.39.2