From patchwork Fri Sep 15 15:44:33 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ilpo_J=C3=A4rvinen?= X-Patchwork-Id: 140542 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:172:b0:3f2:4152:657d with SMTP id h50csp1186315vqi; Fri, 15 Sep 2023 09:54:07 -0700 (PDT) X-Google-Smtp-Source: AGHT+IF6mvwWeMX0xx0ZrluBNqKkbioqI1liAzD1PLLAFum2b3A/mo55CX6E3Feh4Q8skjzz1ZNG X-Received: by 2002:a17:902:a409:b0:1c2:1c9f:6bd8 with SMTP id p9-20020a170902a40900b001c21c9f6bd8mr2312960plq.27.1694796846904; Fri, 15 Sep 2023 09:54:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694796846; cv=none; d=google.com; s=arc-20160816; b=uEOOilqAQhBc9FWppNyMh/hSA11xqeba9hjbEuvzdlBCn+dDUuCphU6/kj9sHz3bCN gxbfsvSrXB2XXfb0dFKm4QnlB71Ieyv5BUPblQQL7kEU0MDBea0HXNB/esVs0oz/2UXA 5VmSWoQsQlYBkX3EXr5njaL9i7qxcXX970A1sBLOUZ9fPNLbr5cfIwDIfBOsaU8SWTiT I44aWwvWLyxwX+XjuRpyDvaA6WEYjvPtv0i7U2dg+3M6DZKSWugBIXMK5TIHiwZcN76S mVGyCIig6dIyRVyS/G03969ZY9McuHXkK6opzDNQF+nYoN1d/bxc1DQFjOYTHhO+4mrk zXUA== 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=Dz0NcGSAzOEda3+ghuFhyc5Qj6htbkb6NT1bcZvgHsw=; fh=Oe5yk31AF04Qo65fz7tkP1GVCJnC7lCD9IuQIxFtXv8=; b=fKRLXd4LOSupLja1i3nCJrFSPBqWdWzWXrkzIJj5L2c0XM0u03efsRnuUrD5DGEGCG ywJYzjaDOCEYq2A1VB+cL1kZa/GHyGwF3ACK9d1LtFwp3+aQONFduE6VgCwACnOx1npD 5FduDqRGhbtobbnJWaZECXGD+UKV47Wt/9Fj4Fd5z38YUfH08yZKufQEO5R22D3Ebfec DiV+qu/cYLlYCabn9EGg5pWgHrglnidD04YPHjrdOQbuq3+UW5kixBEy12DBZAFetA2V svB5gd2he3J6VeAQHBJu9Wn48b3bQMaXPSR2uU2nLm/TdOwm5bsU/vY6dSS9NjYD2R/w t10Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=ZKlL4qlb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:6 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from pete.vger.email (pete.vger.email. [2620:137:e000::3:6]) by mx.google.com with ESMTPS id kp16-20020a170903281000b001c3fe4a1e1dsi3506225plb.211.2023.09.15.09.54.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Sep 2023 09:54:06 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:6 as permitted sender) client-ip=2620:137:e000::3:6; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=ZKlL4qlb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:6 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by pete.vger.email (Postfix) with ESMTP id EDBFD80C5C97; Fri, 15 Sep 2023 08:46:00 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at pete.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236307AbjIOPp2 (ORCPT + 31 others); Fri, 15 Sep 2023 11:45:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60790 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236286AbjIOPo7 (ORCPT ); Fri, 15 Sep 2023 11:44:59 -0400 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.88]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 069A410D9; Fri, 15 Sep 2023 08:44:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1694792692; x=1726328692; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=p3WKUD0Jn0eiW+5uYqB0b3LYfda6aL3MfFO/89kyeUc=; b=ZKlL4qlbhJvAn6o0nBrnBIeA8tlZOXpAKgtg0YkAf24gnvaBsMz+Up67 KSFjMx5OP4K50jD0c5mbasozz0Hj7A83wdh1sSQ2/eZTeXf5GbyR40IAP A+hhbVieG1iuYjKDUI5giM6iBjEDghgDpGmdU5FefTsM4EA8i028ULLav OMEsmwGL7AJifJGoJS14Zm9LeSkga4z4Ffkcb7myi1FIJ3eHlH4AUGm1b c9pwt97SV3HTLNlvce2SJFDYFHu57IjMc7irCx4VsZJ20b5lFRJDeBpjL Yd86IpTA3+A1BPatTIXFFVh0yA9ALCpjZy3VmrkZt4tWLO0HcoQ5fnr2x Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="410217238" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="410217238" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:44:51 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="991878544" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="991878544" Received: from srdoo-mobl1.ger.corp.intel.com (HELO ijarvine-mobl2.ger.corp.intel.com) ([10.252.38.99]) by fmsmga006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:44:48 -0700 From: =?utf-8?q?Ilpo_J=C3=A4rvinen?= To: Reinette Chatre , Shuah Khan , Shuah Khan , linux-kselftest@vger.kernel.org, =?utf-8?q?Maciej_Wiecz=C3=B3r-Retman?= Cc: LKML , Shaopeng Tan , stable@vger.kernel.org, =?utf-8?q?Ilpo_J=C3=A4rvinen?= Subject: [PATCH v2 1/6] selftests/resctrl: Extend signal handler coverage to unmount on receiving signal Date: Fri, 15 Sep 2023 18:44:33 +0300 Message-Id: <20230915154438.82931-2-ilpo.jarvinen@linux.intel.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> References: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on pete.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (pete.vger.email [0.0.0.0]); Fri, 15 Sep 2023 08:46:01 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1777123298409200463 X-GMAIL-MSGID: 1777123298409200463 Unmounting resctrl FS has been moved into the per test functions in resctrl_tests.c by commit caddc0fbe495 ("selftests/resctrl: Move resctrl FS mount/umount to higher level"). In case a signal (SIGINT, SIGTERM, or SIGHUP) is received, the running selftest is aborted by ctrlc_handler() which then unmounts resctrl fs before exiting. The current section between signal_handler_register() and signal_handler_unregister(), however, does not cover the entire duration when resctrl FS is mounted. Move signal_handler_register() and signal_handler_unregister() calls from per test files into resctrl_tests.c to properly unmount resctrl fs. In order to not add signal_handler_register()/unregister() n times, create helpers test_prepare() and test_cleanup(). Adjust child process kill() call in ctrlc_handler() to only be invoked if the child was already forked. Fixes: caddc0fbe495 ("selftests/resctrl: Move resctrl FS mount/umount to higher level") Signed-off-by: Ilpo Järvinen Cc: --- tools/testing/selftests/resctrl/cat_test.c | 8 --- .../testing/selftests/resctrl/resctrl_tests.c | 65 +++++++++++-------- tools/testing/selftests/resctrl/resctrl_val.c | 22 +++---- 3 files changed, 48 insertions(+), 47 deletions(-) diff --git a/tools/testing/selftests/resctrl/cat_test.c b/tools/testing/selftests/resctrl/cat_test.c index 97b87285ab2a..224ba8544d8a 100644 --- a/tools/testing/selftests/resctrl/cat_test.c +++ b/tools/testing/selftests/resctrl/cat_test.c @@ -167,12 +167,6 @@ int cat_perf_miss_val(int cpu_no, int n, char *cache_type) strcpy(param.filename, RESULT_FILE_NAME1); param.num_of_runs = 0; param.cpu_no = sibling_cpu_no; - } else { - ret = signal_handler_register(); - if (ret) { - kill(bm_pid, SIGKILL); - goto out; - } } remove(param.filename); @@ -209,10 +203,8 @@ int cat_perf_miss_val(int cpu_no, int n, char *cache_type) } close(pipefd[0]); kill(bm_pid, SIGKILL); - signal_handler_unregister(); } -out: cat_test_cleanup(); return ret; diff --git a/tools/testing/selftests/resctrl/resctrl_tests.c b/tools/testing/selftests/resctrl/resctrl_tests.c index 823672a20a43..524ba83d7568 100644 --- a/tools/testing/selftests/resctrl/resctrl_tests.c +++ b/tools/testing/selftests/resctrl/resctrl_tests.c @@ -67,21 +67,41 @@ void tests_cleanup(void) cat_test_cleanup(); } -static void run_mbm_test(const char * const *benchmark_cmd, int cpu_no) +static int test_prepare() { int res; - ksft_print_msg("Starting MBM BW change ...\n"); + res = signal_handler_register(); + if (res) + return res; res = mount_resctrlfs(); if (res) { + signal_handler_unregister(); ksft_exit_fail_msg("Failed to mount resctrl FS\n"); - return; + return res; } + return 0; +} + +static void test_cleanup() +{ + umount_resctrlfs(); + signal_handler_unregister(); +} + +static void run_mbm_test(const char * const *benchmark_cmd, int cpu_no) +{ + int res; + + ksft_print_msg("Starting MBM BW change ...\n"); + + if (test_prepare()) + return; if (!validate_resctrl_feature_request(MBM_STR) || (get_vendor() != ARCH_INTEL)) { ksft_test_result_skip("Hardware does not support MBM or MBM is disabled\n"); - goto umount; + goto cleanup; } res = mbm_bw_change(cpu_no, benchmark_cmd); @@ -89,8 +109,8 @@ static void run_mbm_test(const char * const *benchmark_cmd, int cpu_no) if ((get_vendor() == ARCH_INTEL) && res) ksft_print_msg("Intel MBM may be inaccurate when Sub-NUMA Clustering is enabled. Check BIOS configuration.\n"); -umount: - umount_resctrlfs(); +cleanup: + test_cleanup(); } static void run_mba_test(const char * const *benchmark_cmd, int cpu_no) @@ -99,22 +119,19 @@ static void run_mba_test(const char * const *benchmark_cmd, int cpu_no) ksft_print_msg("Starting MBA Schemata change ...\n"); - res = mount_resctrlfs(); - if (res) { - ksft_exit_fail_msg("Failed to mount resctrl FS\n"); + if (test_prepare()) return; - } if (!validate_resctrl_feature_request(MBA_STR) || (get_vendor() != ARCH_INTEL)) { ksft_test_result_skip("Hardware does not support MBA or MBA is disabled\n"); - goto umount; + goto cleanup; } res = mba_schemata_change(cpu_no, benchmark_cmd); ksft_test_result(!res, "MBA: schemata change\n"); -umount: - umount_resctrlfs(); +cleanup: + test_cleanup(); } static void run_cmt_test(const char * const *benchmark_cmd, int cpu_no) @@ -123,15 +140,12 @@ static void run_cmt_test(const char * const *benchmark_cmd, int cpu_no) ksft_print_msg("Starting CMT test ...\n"); - res = mount_resctrlfs(); - if (res) { - ksft_exit_fail_msg("Failed to mount resctrl FS\n"); + if (test_prepare()) return; - } if (!validate_resctrl_feature_request(CMT_STR)) { ksft_test_result_skip("Hardware does not support CMT or CMT is disabled\n"); - goto umount; + goto cleanup; } res = cmt_resctrl_val(cpu_no, 5, benchmark_cmd); @@ -139,8 +153,8 @@ static void run_cmt_test(const char * const *benchmark_cmd, int cpu_no) if ((get_vendor() == ARCH_INTEL) && res) ksft_print_msg("Intel CMT may be inaccurate when Sub-NUMA Clustering is enabled. Check BIOS configuration.\n"); -umount: - umount_resctrlfs(); +cleanup: + test_cleanup(); } static void run_cat_test(int cpu_no, int no_of_bits) @@ -149,22 +163,19 @@ static void run_cat_test(int cpu_no, int no_of_bits) ksft_print_msg("Starting CAT test ...\n"); - res = mount_resctrlfs(); - if (res) { - ksft_exit_fail_msg("Failed to mount resctrl FS\n"); + if (test_prepare()) return; - } if (!validate_resctrl_feature_request(CAT_STR)) { ksft_test_result_skip("Hardware does not support CAT or CAT is disabled\n"); - goto umount; + goto cleanup; } res = cat_perf_miss_val(cpu_no, no_of_bits, "L3"); ksft_test_result(!res, "CAT: test\n"); -umount: - umount_resctrlfs(); +cleanup: + test_cleanup(); } int main(int argc, char **argv) diff --git a/tools/testing/selftests/resctrl/resctrl_val.c b/tools/testing/selftests/resctrl/resctrl_val.c index 51963a6f2186..a9fe61133119 100644 --- a/tools/testing/selftests/resctrl/resctrl_val.c +++ b/tools/testing/selftests/resctrl/resctrl_val.c @@ -468,7 +468,9 @@ pid_t bm_pid, ppid; void ctrlc_handler(int signum, siginfo_t *info, void *ptr) { - kill(bm_pid, SIGKILL); + /* Only kill child after bm_pid is set after fork() */ + if (bm_pid) + kill(bm_pid, SIGKILL); umount_resctrlfs(); tests_cleanup(); ksft_print_msg("Ending\n\n"); @@ -485,6 +487,8 @@ int signal_handler_register(void) struct sigaction sigact; int ret = 0; + bm_pid = 0; + sigact.sa_sigaction = ctrlc_handler; sigemptyset(&sigact.sa_mask); sigact.sa_flags = SA_SIGINFO; @@ -706,10 +710,6 @@ int resctrl_val(const char * const *benchmark_cmd, struct resctrl_val_param *par ksft_print_msg("Benchmark PID: %d\n", bm_pid); - ret = signal_handler_register(); - if (ret) - goto out; - /* * The cast removes constness but nothing mutates benchmark_cmd within * the context of this process. At the receiving process, it becomes @@ -721,19 +721,19 @@ int resctrl_val(const char * const *benchmark_cmd, struct resctrl_val_param *par /* Taskset benchmark to specified cpu */ ret = taskset_benchmark(bm_pid, param->cpu_no); if (ret) - goto unregister; + goto out; /* Write benchmark to specified control&monitoring grp in resctrl FS */ ret = write_bm_pid_to_resctrl(bm_pid, param->ctrlgrp, param->mongrp, resctrl_val); if (ret) - goto unregister; + goto out; if (!strncmp(resctrl_val, MBM_STR, sizeof(MBM_STR)) || !strncmp(resctrl_val, MBA_STR, sizeof(MBA_STR))) { ret = initialize_mem_bw_imc(); if (ret) - goto unregister; + goto out; initialize_mem_bw_resctrl(param->ctrlgrp, param->mongrp, param->cpu_no, resctrl_val); @@ -748,7 +748,7 @@ int resctrl_val(const char * const *benchmark_cmd, struct resctrl_val_param *par sizeof(pipe_message)) { perror("# failed reading message from child process"); close(pipefd[0]); - goto unregister; + goto out; } } close(pipefd[0]); @@ -757,7 +757,7 @@ int resctrl_val(const char * const *benchmark_cmd, struct resctrl_val_param *par if (sigqueue(bm_pid, SIGUSR1, value) == -1) { perror("# sigqueue SIGUSR1 to child"); ret = errno; - goto unregister; + goto out; } /* Give benchmark enough time to fully run */ @@ -786,8 +786,6 @@ int resctrl_val(const char * const *benchmark_cmd, struct resctrl_val_param *par } } -unregister: - signal_handler_unregister(); out: kill(bm_pid, SIGKILL); From patchwork Fri Sep 15 15:44:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ilpo_J=C3=A4rvinen?= X-Patchwork-Id: 141146 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:172:b0:3f2:4152:657d with SMTP id h50csp2112562vqi; Sun, 17 Sep 2023 05:42:26 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGcleqji22TbkB7W8dhmeekkZJErVf0Vy2GGpEq0VnP1TU6mu0cuPC/CnqnBr5m7JXSboXj X-Received: by 2002:a17:903:186:b0:1bd:aeb3:9504 with SMTP id z6-20020a170903018600b001bdaeb39504mr8771008plg.15.1694954545941; Sun, 17 Sep 2023 05:42:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694954545; cv=none; d=google.com; s=arc-20160816; b=z6lXKAC2L0gwScE6GYrvk1FKl7rz+obZJbmR6BQIH4BB/M6s6pDSL3YDRaOta7m8O6 877fZToCS6puTsFNRFWfnszxPIu6QXiWEvzyay18QCjBspD1AFe/sCHPUYJ6W0T3vEGh YFKOSIdpD/axL1pS3AU21JfAmZXN3+FxqMFcb4Nnq5H3X0cTMAFWrLOuuj685fzN8w6y Vpz9GyqtG9IPS75/51Rj5vvyMnADKhpBFvEIR7Zqt6L7EXKy04RRibWxWZYJ9DiU/Dm/ i/RxeTQKe77LhoJxMXMoaaTm9wyRkEfHsWUkzKUMUa4BfiQ/XPhNIruoBUyKWpN6ATBl BiJg== 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=tCIgvX5k7MVmbp6R75ivVAzCww0iAOJb2Zk7qaA874s=; fh=Oe5yk31AF04Qo65fz7tkP1GVCJnC7lCD9IuQIxFtXv8=; b=qIYAPgzNQ+escWYu5/H0JKDyZg45w3iW+ruzekyG+uWpNVw00981Z8debSbirZ5yL0 jkMtpE/eeqw4qE1tu0f8p/sqOfoFd8Fh68gSiyvdggvBBMeY1gxVzpHjTGqkO+C/kEyl rN3RkeSOm3txv2aG6OJCur/d9U59EOAJmCugyQrD1VAyDKCPe2J2fzLghaB7cSw1K8/S K/emzINjzgVMGdh4Di3ibJfRC8ObchrDpO6rjTWWg+pkAkfT4RzfwSwlCZuljHJ3tp0E Cgeq3YLl9UMXx74GYg39ASM8stSdGfbipyQTQHrBESfqWk9eRL8BP2kja/35G/GAX3uL 3h5w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=hnx+8B8+; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from howler.vger.email (howler.vger.email. [2620:137:e000::3:4]) by mx.google.com with ESMTPS id r4-20020a17090aad0400b0027540ebd2absi1039725pjq.187.2023.09.17.05.42.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 17 Sep 2023 05:42:25 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) client-ip=2620:137:e000::3:4; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=hnx+8B8+; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id 65F098310D3C; Fri, 15 Sep 2023 08:45:47 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236277AbjIOPpZ (ORCPT + 31 others); Fri, 15 Sep 2023 11:45:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60862 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236310AbjIOPpC (ORCPT ); Fri, 15 Sep 2023 11:45:02 -0400 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.88]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4154DE78; Fri, 15 Sep 2023 08:44:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1694792697; x=1726328697; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=wLwew0FGrNlO4wtyN0Y18C8cvUXaHIIyCDls0VyYU/A=; b=hnx+8B8+dB94xwDGnP/PcUzume1zC3kM6yaR4sjX9zJmc8NZQxcME9g2 kPLFEtJxrxZzHkQjfNUh/t7S/9BKmBDTKNNJeqiH4MYa/kWyWWfj+DicM NHLhSx/JSJmuA9BU91tejFlHqTUc3lLC2Ru1ka/5Rxy92VocfmhKuItTs mNzh1O6aUPiVg0l3h7Upc8ULgCRWTRbw+4qohzl7aPusxera+2j26JFCR 4qpCGFrhrEq3XgxYo/SGczPVFnE0xifwrlIurtOEZ0mxbNrFtfRkaewJ9 xySiEY/xGrctvesCY4QttrMheHbVZRzfOduqWtCBY3qismLJ+AtM75pwU g==; X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="410217275" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="410217275" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:44:56 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="991878580" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="991878580" Received: from srdoo-mobl1.ger.corp.intel.com (HELO ijarvine-mobl2.ger.corp.intel.com) ([10.252.38.99]) by fmsmga006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:44:53 -0700 From: =?utf-8?q?Ilpo_J=C3=A4rvinen?= To: Reinette Chatre , Shuah Khan , Shuah Khan , linux-kselftest@vger.kernel.org, =?utf-8?q?Maciej_Wiecz=C3=B3r-Retman?= Cc: LKML , Shaopeng Tan , stable@vger.kernel.org, =?utf-8?q?Ilpo_J=C3=A4rvinen?= Subject: [PATCH v2 2/6] selftests/resctrl: Remove duplicate feature check from CMT test Date: Fri, 15 Sep 2023 18:44:34 +0300 Message-Id: <20230915154438.82931-3-ilpo.jarvinen@linux.intel.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> References: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE 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 X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Fri, 15 Sep 2023 08:45:47 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1777288657962881658 X-GMAIL-MSGID: 1777288657962881658 The test runner run_cmt_test() in resctrl_tests.c checks for CMT feature and does not run cmt_resctrl_val() if CMT is not supported. Then cmt_resctrl_val() also check is CMT is supported. Remove the duplicated feature check for CMT from cmt_resctrl_val(). Signed-off-by: Ilpo Järvinen Cc: Reviewed-by: Reinette Chatre --- tools/testing/selftests/resctrl/cmt_test.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/tools/testing/selftests/resctrl/cmt_test.c b/tools/testing/selftests/resctrl/cmt_test.c index cf2f5e92dea6..50bdbce9fba9 100644 --- a/tools/testing/selftests/resctrl/cmt_test.c +++ b/tools/testing/selftests/resctrl/cmt_test.c @@ -80,9 +80,6 @@ int cmt_resctrl_val(int cpu_no, int n, const char * const *benchmark_cmd) size_t span; int ret, i; - if (!validate_resctrl_feature_request(CMT_STR)) - return -1; - ret = get_cbm_mask("L3", cbm_mask); if (ret) return ret; From patchwork Fri Sep 15 15:44:35 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ilpo_J=C3=A4rvinen?= X-Patchwork-Id: 140608 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:172:b0:3f2:4152:657d with SMTP id h50csp1238577vqi; Fri, 15 Sep 2023 11:21:09 -0700 (PDT) X-Google-Smtp-Source: AGHT+IED3vHfdcXoIOaKiHTvEQFN54Rq0agEvZL6i6dHSA841iTTGU+B9HYQK/R7yZm2UqzcfVPo X-Received: by 2002:a17:903:120c:b0:1c4:2641:7744 with SMTP id l12-20020a170903120c00b001c426417744mr2794268plh.25.1694802068708; Fri, 15 Sep 2023 11:21:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694802068; cv=none; d=google.com; s=arc-20160816; b=GzZHftZozfe72Wnzu/2MDNbWxuuEPFOgxqyaT3AjQBQnOb/DdZDGfjnWtznVedqfFI NOK4+VpssGNA/mnmVh0NxaKGg5L5qY3c1IJE1hDBnb0A2O8LpGsDcgh4o5HZDYsi6znc 6xgJX9usG2r/2wZCWQrSsgcjATzQWnYMdvwRa2cKyVG93CJcrP/biQZbgaS7mLLmrG99 T2qEb3zWZEV5mwSVOvyHSrnAIjE7sJPdHEyrHwjkdCeh53V91lXRqcptbQo1LLKqFfLZ PvtaaDoiK2JMq6PwXck/jD2+3HvLC6Xo4oeDn3QtNWpDJtwELNAbbQDRGCNtQE5b5Nwz VNlg== 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=fIIBT3at8yUz/wix8IGyhlDzrURZEye12q/xDsP41Jw=; fh=Oe5yk31AF04Qo65fz7tkP1GVCJnC7lCD9IuQIxFtXv8=; b=a6Ox3Ja7ATudsQRNcenZcNkE8NIWQKl3Nh2OEi5hWJNFuyt6gBYnHSOF/kH2gvLFIK RhojWhn6u7n/fsoCHSmC/nAYsQ7KXv8GpkTjvf9TBOPd+bIIIpfC+PWYq0d01IT9nVsh VQXUH+ccKc97CqFNT7RtXDubd+QSUqtpLtLtwji7/DozHezubaTw3oKAmLlJAGUFE8IT EDWrYrfIhhBtN2PBHptwFP8JRWEbUaoqB8j3LiU01Ab7jEnSe6w7LHB/nmHQblJ4Pamy M7fFInbGenVeUFoZnfgjaimTySW03BRT3OV1aOWM7wJ7J/1cMbr9vB8OXoqXJMats8kh tBsg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=lfL1No7n; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from howler.vger.email (howler.vger.email. [2620:137:e000::3:4]) by mx.google.com with ESMTPS id t7-20020a1709027fc700b001b885fbe17dsi3703449plb.532.2023.09.15.11.21.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Sep 2023 11:21:08 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) client-ip=2620:137:e000::3:4; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=lfL1No7n; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id D1A928067B7C; Fri, 15 Sep 2023 08:45:46 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236319AbjIOPpa (ORCPT + 31 others); Fri, 15 Sep 2023 11:45:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55378 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236313AbjIOPpG (ORCPT ); Fri, 15 Sep 2023 11:45:06 -0400 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.88]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2768BF3; Fri, 15 Sep 2023 08:45:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1694792701; x=1726328701; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=1VrjDLRK9ilo+mpcwT7YEZEofj9q92dtdWBmOI0btQw=; b=lfL1No7npdSscFhKKk3hoxUSBLjXTICD1Pz8rtl134orJn/OtDnUA4dX sREROO7Weuc03Qucpf+j8+CeHRKgQAOr0eXCXJvlkooj63/uxWmTWzxM3 Sxv/NOFqOsNXhzwxTiAHvA0NXpsnsEXA7PCDW0vON/sZl6PZvKCGgnFHx ggDxs+lWPUKfIZrvCAm5LE9yzn102oMi1ui1CiecaZZ4s++jcNffaJYSF kqHzabPnFLKVEFTbAfX0m5aaC2c9zZlO1hQrbNjUIIDGUqXA7xWr8/FKy esNX23Gc8rx3BPJLPHdz6gpNEWzMihlJVBopWAQP2976hJ5F9FzTKysI4 g==; X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="410217313" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="410217313" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:45:00 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="991878645" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="991878645" Received: from srdoo-mobl1.ger.corp.intel.com (HELO ijarvine-mobl2.ger.corp.intel.com) ([10.252.38.99]) by fmsmga006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:44:58 -0700 From: =?utf-8?q?Ilpo_J=C3=A4rvinen?= To: Reinette Chatre , Shuah Khan , Shuah Khan , linux-kselftest@vger.kernel.org, =?utf-8?q?Maciej_Wiecz=C3=B3r-Retman?= Cc: LKML , Shaopeng Tan , stable@vger.kernel.org, =?utf-8?q?Ilpo_J=C3=A4rvinen?= Subject: [PATCH v2 3/6] selftests/resctrl: Move _GNU_SOURCE define into Makefile Date: Fri, 15 Sep 2023 18:44:35 +0300 Message-Id: <20230915154438.82931-4-ilpo.jarvinen@linux.intel.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> References: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE 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 X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Fri, 15 Sep 2023 08:45:47 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1777128774282068338 X-GMAIL-MSGID: 1777128774282068338 Currently, _GNU_SOURCE is defined in resctrl.h. Defining _GNU_SOURCE has a large impact on what gets defined when including headers either before or after it. This can result in compile failures if .c file decides to include a standard header file before resctrl.h. It is safer to define _GNU_SOURCE in Makefile so it is always defined regardless of in which order includes are done. Signed-off-by: Ilpo Järvinen Cc: Reviewed-by: Reinette Chatre --- tools/testing/selftests/resctrl/Makefile | 2 +- tools/testing/selftests/resctrl/resctrl.h | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/tools/testing/selftests/resctrl/Makefile b/tools/testing/selftests/resctrl/Makefile index 5073dbc96125..2deac2031de9 100644 --- a/tools/testing/selftests/resctrl/Makefile +++ b/tools/testing/selftests/resctrl/Makefile @@ -1,6 +1,6 @@ # SPDX-License-Identifier: GPL-2.0 -CFLAGS = -g -Wall -O2 -D_FORTIFY_SOURCE=2 +CFLAGS = -g -Wall -O2 -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE CFLAGS += $(KHDR_INCLUDES) TEST_GEN_PROGS := resctrl_tests diff --git a/tools/testing/selftests/resctrl/resctrl.h b/tools/testing/selftests/resctrl/resctrl.h index dd07463cdf48..d9b5df95849d 100644 --- a/tools/testing/selftests/resctrl/resctrl.h +++ b/tools/testing/selftests/resctrl/resctrl.h @@ -1,5 +1,4 @@ /* SPDX-License-Identifier: GPL-2.0 */ -#define _GNU_SOURCE #ifndef RESCTRL_H #define RESCTRL_H #include From patchwork Fri Sep 15 15:44:36 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ilpo_J=C3=A4rvinen?= X-Patchwork-Id: 140548 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:172:b0:3f2:4152:657d with SMTP id h50csp1190037vqi; Fri, 15 Sep 2023 10:00:45 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFPsthr5pYWyieN9l1oSHjUwi3BKDTLwTpyNctk7eii6YelkHzWZBRgc68kihkEW2XuRJ4Z X-Received: by 2002:a05:6a20:734c:b0:159:cf93:9b50 with SMTP id v12-20020a056a20734c00b00159cf939b50mr2865253pzc.46.1694797245416; Fri, 15 Sep 2023 10:00:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694797245; cv=none; d=google.com; s=arc-20160816; b=CzhfnsfNyVLX2wx6aubH5sAHREzlZOWz8pSPn4VG5VfTSGwAUKYx6EFTM5p2HErKhV kxnpxjRq/+67G4GIvHkmtG3I32gTdTed1Oq673wLQhqIb5hpdG1tOUl3jgwpdeoYa7vY E9ZxSZtuIrHLB7gxMgT0BlIzIFqvrH06NVf5kZmZBBnH88fhvbu4R0MeFkdHuxK+tANL HluOe6iZApsQnxNNXpdnxCquCFu87W9yAPGk1U62lcPrgVOL57nhpY8rPzbf/mcpmv9c TucHW/6nSbPvdaHjuE0NcTUPMBjMyxnHY3u/8bphcWHSqVC4+1elZgXu0yHECR9PRNOW UpSg== 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=57BTHu3hP3r+B6LCBSaJ5SG3Y7EuLtoJqQ7crAuXMok=; fh=Oe5yk31AF04Qo65fz7tkP1GVCJnC7lCD9IuQIxFtXv8=; b=wPKSvaqbv4BhASMl/7RkjWQM+IE1q+UKz196rzfoj35tXl8g7WmCh4DVeSOSJEM3EW Sr5yzE7/F+YCC7wUI7TnoXoPRNZP7e3j9i21h5q6hT2whzMM+SJBZc5TFGHd4OQCuQ0R e9u8zPjP4KOQhNTbOiai6cS/IunR4J5j+dnF/eRREGCZlW2FsTLevhfJkbUuKJbrAg2I wY6znEci70DlX/Wufl1kjt1zTTm2eG6qPlmS7d5uMKFTPqW8pkbQeqowS4k+9xtC0ZHH 9vrUBrNPKJB2nviH+nvQBHfHqa3a1Voy2wQPhNTeQjLFHDufta913FMZjQyL9n3Iri7Y AcJA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mQ5HkQDZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from groat.vger.email (groat.vger.email. [2620:137:e000::3:5]) by mx.google.com with ESMTPS id bt8-20020a632908000000b00565f0e91894si3400124pgb.394.2023.09.15.10.00.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Sep 2023 10:00:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) client-ip=2620:137:e000::3:5; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mQ5HkQDZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id DE39D836FFFE; Fri, 15 Sep 2023 08:46:28 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236228AbjIOPpt (ORCPT + 31 others); Fri, 15 Sep 2023 11:45:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35008 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236235AbjIOPpV (ORCPT ); Fri, 15 Sep 2023 11:45:21 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 343BFE6D; Fri, 15 Sep 2023 08:45:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1694792716; x=1726328716; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Ex2MQ21l01Q/4c3TuXPDqbGcgN/ilOQy9XmeMo6Wzq4=; b=mQ5HkQDZ9qDOn/kAyCCfmv+8XhxFaJfLJI9UxM/VuFttEeWIPsJlFiLI j8uBeulp0Ad1CIquqULKx+tCec/VW+9POdotjQKYVnhz6vcXlertgqdGY SBe8aJ8gxEVStF3+AZP4m7ESBCEYmzxgUQtW/4MR4JAdKVaUxtOCyAxMO Nxy/VWp1bgKOoRvnmnEtTVrsnKi70UisGM+TyuibfbN5GU6Vm+rHMAq9w rNsltz6oeX3vRGJt6XCdgKjUnrclJOmB/mm1rzTnVr3rJxJxSnrO2UJRk QwKwA80o2uOjfqoeYaRUL7VIZZ8tkQc/Eju6Bkqc/1dDOaIkP/mfI0Qcm g==; X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="443338366" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="443338366" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:45:15 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="991879041" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="991879041" Received: from srdoo-mobl1.ger.corp.intel.com (HELO ijarvine-mobl2.ger.corp.intel.com) ([10.252.38.99]) by fmsmga006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:45:12 -0700 From: =?utf-8?q?Ilpo_J=C3=A4rvinen?= To: Reinette Chatre , Shuah Khan , Shuah Khan , linux-kselftest@vger.kernel.org, =?utf-8?q?Maciej_Wiecz=C3=B3r-Retman?= Cc: LKML , Shaopeng Tan , stable@vger.kernel.org, =?utf-8?q?Ilpo_J=C3=A4rvinen?= Subject: [PATCH v2 4/6] selftests/resctrl: Refactor feature check to use resource and feature name Date: Fri, 15 Sep 2023 18:44:36 +0300 Message-Id: <20230915154438.82931-5-ilpo.jarvinen@linux.intel.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> References: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Fri, 15 Sep 2023 08:46:29 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1777123715952061159 X-GMAIL-MSGID: 1777123715952061159 Feature check in validate_resctrl_feature_request() takes in the test name string and maps that to what to check per test. Pass resource and feature names to validate_resctrl_feature_request() directly rather than deriving them from the test name inside the function which makes the feature check easier to extend for new test cases. Use !! in the return statement to make the boolean conversion more obvious even if it is not strictly necessary from correctness point of view (to avoid it looking like the function is returning a freed pointer). Signed-off-by: Ilpo Järvinen Cc: # selftests/resctrl: Remove duplicate feature check from CMT test Cc: # selftests/resctrl: Move _GNU_SOURCE define into Makefile Reviewed-by: Reinette Chatre --- tools/testing/selftests/resctrl/resctrl.h | 6 +- .../testing/selftests/resctrl/resctrl_tests.c | 10 +-- tools/testing/selftests/resctrl/resctrlfs.c | 69 ++++++++----------- 3 files changed, 34 insertions(+), 51 deletions(-) diff --git a/tools/testing/selftests/resctrl/resctrl.h b/tools/testing/selftests/resctrl/resctrl.h index d9b5df95849d..8578a8b4e145 100644 --- a/tools/testing/selftests/resctrl/resctrl.h +++ b/tools/testing/selftests/resctrl/resctrl.h @@ -27,10 +27,6 @@ #define RESCTRL_PATH "/sys/fs/resctrl" #define PHYS_ID_PATH "/sys/devices/system/cpu/cpu" #define INFO_PATH "/sys/fs/resctrl/info" -#define L3_PATH "/sys/fs/resctrl/info/L3" -#define MB_PATH "/sys/fs/resctrl/info/MB" -#define L3_MON_PATH "/sys/fs/resctrl/info/L3_MON" -#define L3_MON_FEATURES_PATH "/sys/fs/resctrl/info/L3_MON/mon_features" #define ARCH_INTEL 1 #define ARCH_AMD 2 @@ -87,7 +83,7 @@ int get_resource_id(int cpu_no, int *resource_id); int mount_resctrlfs(void); int umount_resctrlfs(void); int validate_bw_report_request(char *bw_report); -bool validate_resctrl_feature_request(const char *resctrl_val); +bool validate_resctrl_feature_request(const char *resource, const char *feature); char *fgrep(FILE *inf, const char *str); int taskset_benchmark(pid_t bm_pid, int cpu_no); void run_benchmark(int signum, siginfo_t *info, void *ucontext); diff --git a/tools/testing/selftests/resctrl/resctrl_tests.c b/tools/testing/selftests/resctrl/resctrl_tests.c index 524ba83d7568..b13aee5dffb9 100644 --- a/tools/testing/selftests/resctrl/resctrl_tests.c +++ b/tools/testing/selftests/resctrl/resctrl_tests.c @@ -99,7 +99,9 @@ static void run_mbm_test(const char * const *benchmark_cmd, int cpu_no) if (test_prepare()) return; - if (!validate_resctrl_feature_request(MBM_STR) || (get_vendor() != ARCH_INTEL)) { + if (!validate_resctrl_feature_request("L3_MON", "mbm_total_bytes") || + !validate_resctrl_feature_request("L3_MON", "mbm_local_bytes") || + (get_vendor() != ARCH_INTEL)) { ksft_test_result_skip("Hardware does not support MBM or MBM is disabled\n"); goto cleanup; } @@ -122,7 +124,7 @@ static void run_mba_test(const char * const *benchmark_cmd, int cpu_no) if (test_prepare()) return; - if (!validate_resctrl_feature_request(MBA_STR) || (get_vendor() != ARCH_INTEL)) { + if (!validate_resctrl_feature_request("MB", NULL) || (get_vendor() != ARCH_INTEL)) { ksft_test_result_skip("Hardware does not support MBA or MBA is disabled\n"); goto cleanup; } @@ -143,7 +145,7 @@ static void run_cmt_test(const char * const *benchmark_cmd, int cpu_no) if (test_prepare()) return; - if (!validate_resctrl_feature_request(CMT_STR)) { + if (!validate_resctrl_feature_request("L3_MON", "llc_occupancy")) { ksft_test_result_skip("Hardware does not support CMT or CMT is disabled\n"); goto cleanup; } @@ -166,7 +168,7 @@ static void run_cat_test(int cpu_no, int no_of_bits) if (test_prepare()) return; - if (!validate_resctrl_feature_request(CAT_STR)) { + if (!validate_resctrl_feature_request("L3", NULL)) { ksft_test_result_skip("Hardware does not support CAT or CAT is disabled\n"); goto cleanup; } diff --git a/tools/testing/selftests/resctrl/resctrlfs.c b/tools/testing/selftests/resctrl/resctrlfs.c index bd36ee206602..3a8111362d26 100644 --- a/tools/testing/selftests/resctrl/resctrlfs.c +++ b/tools/testing/selftests/resctrl/resctrlfs.c @@ -8,6 +8,8 @@ * Sai Praneeth Prakhya , * Fenghua Yu */ +#include + #include "resctrl.h" static int find_resctrl_mount(char *buffer) @@ -604,63 +606,46 @@ char *fgrep(FILE *inf, const char *str) /* * validate_resctrl_feature_request - Check if requested feature is valid. - * @resctrl_val: Requested feature + * @resource: Required resource (e.g., MB, L3, L2, L3_MON, etc.) + * @feature: Required monitor feature (in mon_features file). Can only be + * set for L3_MON. Must be NULL for all other resources. * - * Return: True if the feature is supported, else false. False is also - * returned if resctrl FS is not mounted. + * Return: True if the resource/feature is supported, else false. False is + * also returned if resctrl FS is not mounted. */ -bool validate_resctrl_feature_request(const char *resctrl_val) +bool validate_resctrl_feature_request(const char *resource, const char *feature) { + char res_path[PATH_MAX]; struct stat statbuf; - bool found = false; char *res; FILE *inf; int ret; - if (!resctrl_val) + if (!resource) return false; ret = find_resctrl_mount(NULL); if (ret) return false; - if (!strncmp(resctrl_val, CAT_STR, sizeof(CAT_STR))) { - if (!stat(L3_PATH, &statbuf)) - return true; - } else if (!strncmp(resctrl_val, MBA_STR, sizeof(MBA_STR))) { - if (!stat(MB_PATH, &statbuf)) - return true; - } else if (!strncmp(resctrl_val, MBM_STR, sizeof(MBM_STR)) || - !strncmp(resctrl_val, CMT_STR, sizeof(CMT_STR))) { - if (!stat(L3_MON_PATH, &statbuf)) { - inf = fopen(L3_MON_FEATURES_PATH, "r"); - if (!inf) - return false; - - if (!strncmp(resctrl_val, CMT_STR, sizeof(CMT_STR))) { - res = fgrep(inf, "llc_occupancy"); - if (res) { - found = true; - free(res); - } - } - - if (!strncmp(resctrl_val, MBM_STR, sizeof(MBM_STR))) { - res = fgrep(inf, "mbm_total_bytes"); - if (res) { - free(res); - res = fgrep(inf, "mbm_local_bytes"); - if (res) { - found = true; - free(res); - } - } - } - fclose(inf); - } - } + snprintf(res_path, sizeof(res_path), "%s/%s", INFO_PATH, resource); + + if (stat(res_path, &statbuf)) + return false; + + if (!feature) + return true; + + snprintf(res_path, sizeof(res_path), "%s/%s/mon_features", INFO_PATH, resource); + inf = fopen(res_path, "r"); + if (!inf) + return false; + + res = fgrep(inf, feature); + free(res); + fclose(inf); - return found; + return !!res; } int filter_dmesg(void) From patchwork Fri Sep 15 15:44:37 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ilpo_J=C3=A4rvinen?= X-Patchwork-Id: 140525 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:172:b0:3f2:4152:657d with SMTP id h50csp1160015vqi; Fri, 15 Sep 2023 09:12:29 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFQXCBoF9qX3pxyBtmLcOcdV1O0SlLx4q3GzoIUMAlX74+nLb/VZKuv7Ax+ti4sfKL7bV7g X-Received: by 2002:a17:90a:69c1:b0:273:ffc0:7a80 with SMTP id s59-20020a17090a69c100b00273ffc07a80mr1853186pjj.46.1694794349533; Fri, 15 Sep 2023 09:12:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694794349; cv=none; d=google.com; s=arc-20160816; b=zqBG5bOpwDLhrXxPZFp4H1hPRwW3VcM2UTLDCG4dTJA8SOKtnyi94jO1I0OHhI1PfQ hCdlW1C+WBO7P3R0IPIWanyb5gWk3fiuy0ypmJTN8kUV390HWUdBfFjHuWNHewMF9shK Qbn07P5Wt0KcoBVPAwAGzX4vP8Gydtgg66hxsNAuM/rVxh/0XbUKYs2S96UEi4xJtlP5 1WBs+u1i7FM0sljV25Px3nyB2KqE3OO3MSsA6hD3YV6bi+VxrzxZXkrPOKxhf/2TMHkR IVxhCvOsU8/JiCza0oUFgQCz3IENqtIDgMB6/JTCR2O571MYxSUoUwS9+QwUgcItMhD+ MUiQ== 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=PW9HilWuVEJCwr6Dl0Jqb2druEJaGLB9ng6qDgAiepg=; fh=Oe5yk31AF04Qo65fz7tkP1GVCJnC7lCD9IuQIxFtXv8=; b=SZKWYlB5d9rqGmCyOwDzQtPXx+EEX/oZmS7iBjq0N6Dwg0YsJcSRSFR3332ebu76HL G72/W8klK+dUHIopjIFFLhXbW6P/XluJnz6tNUlwTvJETnCL5NiYGL9PNA91urSW5Lbh ZuWdRtVrO57iZEdhVfWpE/+hFQ8P34n4m9IinY0Bh+w51taTwcfhhroKAL8Fslz561Ly QILvNsJYp8F8IzsBIfql9uC0+v1QBqub6RV4At1E9qiNNf2+qAIV94GmISNQmz72LlW1 FdmwF8CSsi0QlNHgBe48hZBRJE7tXqSuIjWEsO71dFF6/lrDRrMNA5pQsbJYSGBCkfyJ dq6g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=jhfBNsBT; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from pete.vger.email (pete.vger.email. [23.128.96.36]) by mx.google.com with ESMTPS id hk10-20020a17090b224a00b00271a9dda68csi6288032pjb.131.2023.09.15.09.12.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Sep 2023 09:12:29 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) client-ip=23.128.96.36; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=jhfBNsBT; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by pete.vger.email (Postfix) with ESMTP id 9D9C880C5C8A; Fri, 15 Sep 2023 08:46:31 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at pete.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236260AbjIOPpw (ORCPT + 31 others); Fri, 15 Sep 2023 11:45:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44352 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236279AbjIOPpZ (ORCPT ); Fri, 15 Sep 2023 11:45:25 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3A02010E6; Fri, 15 Sep 2023 08:45:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1694792720; x=1726328720; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=RnZumUDhM2YQNSLf8I2FgO5Jp9vigh6f97eD4zmNqxE=; b=jhfBNsBTUW03vZEB47v3gdCQi3/hmt/0oNUpmI4EWQiVnXbOZjalQOnL xR+ND+65Pps6K9lMUXftc7+JMwmjzCd2hfZy0/oZ0zdS9I9FdbZMIDQrB 2CjVD4XqxO0twfXUjldw3FxfD38gTEb8/yd3lwWyo2YBPEh/DNDdxvGrg M5YzI45YZOhK7OIefd7BP45sMqm9Hd/QlUW0+//mlipWLZWB8/TnVQsOW qYmEbZAhmvcYXGelf0NfBjWNTY+fxGUvOVZnID/E2dUR+3++SESLMe5Xn Wad5aL64g0yyP6MwOo6RwTPRI2Jy888woylKc4UH6RZwjzeq5wBIFmC8J w==; X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="443338377" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="443338377" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:45:19 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="991879085" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="991879085" Received: from srdoo-mobl1.ger.corp.intel.com (HELO ijarvine-mobl2.ger.corp.intel.com) ([10.252.38.99]) by fmsmga006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:45:17 -0700 From: =?utf-8?q?Ilpo_J=C3=A4rvinen?= To: Reinette Chatre , Shuah Khan , Shuah Khan , linux-kselftest@vger.kernel.org, =?utf-8?q?Maciej_Wiecz=C3=B3r-Retman?= Cc: LKML , Shaopeng Tan , stable@vger.kernel.org, =?utf-8?q?Ilpo_J=C3=A4rvinen?= Subject: [PATCH v2 5/6] selftests/resctrl: Fix feature checks Date: Fri, 15 Sep 2023 18:44:37 +0300 Message-Id: <20230915154438.82931-6-ilpo.jarvinen@linux.intel.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> References: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on pete.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (pete.vger.email [0.0.0.0]); Fri, 15 Sep 2023 08:46:31 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1777120679570257917 X-GMAIL-MSGID: 1777120679570257917 The MBA and CMT tests expect support of other features to be able to run. When platform only supports MBA but not MBM, MBA test will fail with: Failed to open total bw file: No such file or directory When platform only supports CMT but not CAT, CMT test will fail with: Failed to open bit mask file '/sys/fs/resctrl/info/L3/cbm_mask': No such file or directory Extend feature checks to cover these two conditions. Fixes: ee0415681eb6 ("selftests/resctrl: Use resctrl/info for feature detection") Signed-off-by: Ilpo Järvinen Cc: # selftests/resctrl: Refactor feature check to use resource and feature name Reviewed-by: Reinette Chatre --- tools/testing/selftests/resctrl/resctrl_tests.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/resctrl/resctrl_tests.c b/tools/testing/selftests/resctrl/resctrl_tests.c index b13aee5dffb9..836dfe5c0b4d 100644 --- a/tools/testing/selftests/resctrl/resctrl_tests.c +++ b/tools/testing/selftests/resctrl/resctrl_tests.c @@ -124,7 +124,9 @@ static void run_mba_test(const char * const *benchmark_cmd, int cpu_no) if (test_prepare()) return; - if (!validate_resctrl_feature_request("MB", NULL) || (get_vendor() != ARCH_INTEL)) { + if (!validate_resctrl_feature_request("MB", NULL) || + !validate_resctrl_feature_request("L3_MON", "mbm_local_bytes") || + (get_vendor() != ARCH_INTEL)) { ksft_test_result_skip("Hardware does not support MBA or MBA is disabled\n"); goto cleanup; } @@ -145,7 +147,8 @@ static void run_cmt_test(const char * const *benchmark_cmd, int cpu_no) if (test_prepare()) return; - if (!validate_resctrl_feature_request("L3_MON", "llc_occupancy")) { + if (!validate_resctrl_feature_request("L3_MON", "llc_occupancy") || + !validate_resctrl_feature_request("L3", NULL)) { ksft_test_result_skip("Hardware does not support CMT or CMT is disabled\n"); goto cleanup; } From patchwork Fri Sep 15 15:44:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ilpo_J=C3=A4rvinen?= X-Patchwork-Id: 140653 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:172:b0:3f2:4152:657d with SMTP id h50csp1283779vqi; Fri, 15 Sep 2023 12:52:28 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHDhp6BBIUZBN52JIUUWyKNw0jaxCWVpUnTGDH24vKuY/7FdIU1RFwjYWFlWuPGSBrWQoez X-Received: by 2002:a05:6870:328f:b0:1d5:aa87:69fe with SMTP id q15-20020a056870328f00b001d5aa8769femr3601869oac.32.1694807548132; Fri, 15 Sep 2023 12:52:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694807548; cv=none; d=google.com; s=arc-20160816; b=cezpA6C0c0y2swRaLSZJtIFWIJ2+Y0Ir5FzFh/U96N1w1bfRnwJ3YKMCS/1dcXIMod 1yWxlV/vHpHgqOlBTa30HMsUf5y7ZTKOd774XPQDRWE+l0TACjjeGu1MfB/re6u/cvJ0 FmC3wIOD0KGeqd5yNV9BiUTqQgwobDD1+oX32Dtfqcfl68xj1HJMN846NFsseek58vtd iOjUl0Wi8OLADAH3XManivDxo+L4INUlmnB3LL0A2ehjNsYVzkBRwB/vfoL8xQPaqd1q Qufwczr1Iiboe4x2CVEDPzXlLVZoZP7gG/zIOLquYAt9szsHxkgzALZTp3TpXP85wZyt DdoA== 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=4MNdejejI1aqFuCb52iK+qAaZgGDk5y0xfawYjkBxeo=; fh=Oe5yk31AF04Qo65fz7tkP1GVCJnC7lCD9IuQIxFtXv8=; b=szB3y5C4PB8+2B/Vbi3Z8Lr0q+9VMHOtk3YMyGEb5ew6l+Nbb0zU6ktHkX9yUsL7EJ I6EgY5mE9RwaybA/DI4pv8mdLul5Wm8efr2r6IxFurIr2QtOKucVpHdfvkjGKXl85Whx 8Y/g/fjuL/GJxxhiZViu/jAuGjAyljJtDXjJc7StVFSl41SLkg1bwjUcgrW+VwZN2+tf ZGl2c8DO7mhNVbMDozXGzC4O29OahDZIU+suWMoCmJQUZFK6IJgyIUenvwqPXuAP/gCX VBwZTLMYXzA5dMHSySmMV1VSnq71vkGkt9G1pizm3PmA2rPMZpZzUbCbDVIjf3beXLmi n0uw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=G7zzZVBR; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from lipwig.vger.email (lipwig.vger.email. [23.128.96.33]) by mx.google.com with ESMTPS id l64-20020a639143000000b005775c819f23si3771852pge.336.2023.09.15.12.52.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Sep 2023 12:52:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) client-ip=23.128.96.33; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=G7zzZVBR; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 1D4508242995; Fri, 15 Sep 2023 08:46:30 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236313AbjIOPp4 (ORCPT + 31 others); Fri, 15 Sep 2023 11:45:56 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44456 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236326AbjIOPpb (ORCPT ); Fri, 15 Sep 2023 11:45:31 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CA389E78; Fri, 15 Sep 2023 08:45:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1694792724; x=1726328724; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=m9DmAo53kMkAK+lCVH7xp30k1iLpqm4CmpnavugfAy0=; b=G7zzZVBR9HCzsHNUFMNFTZnMBf6YoSuIqbuFj4vw+U9xivShEet2xrCQ +KjV+kUhzw7pCTD4CEIYH7JyuBU3VQTKxplI5qnBC3+7fXtD9BJrjoKta 4Z2rMjulUNytfA5ZYc8ph/3vWlyMfGJzZ3wANWeFQbP00fPPFqcsARsNd MWXIG6BLgVCWgTqkf6n+vwCfrkSQTpFPX9zS0X2jrn44jTwD+uyk8mLTx L04zWqXNUlmUdjkrO7hiOhtiY3AiQ27x/Nr2OBb6nN2/fG0GS0A66GWc4 Wk7bDtYviaLsx7l7wSgXrB6ee9SIRFpTAVfFjKolY1iVa5cUQYDrBAozP w==; X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="443338387" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="443338387" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:45:24 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10834"; a="991879110" X-IronPort-AV: E=Sophos;i="6.02,149,1688454000"; d="scan'208";a="991879110" Received: from srdoo-mobl1.ger.corp.intel.com (HELO ijarvine-mobl2.ger.corp.intel.com) ([10.252.38.99]) by fmsmga006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2023 08:45:21 -0700 From: =?utf-8?q?Ilpo_J=C3=A4rvinen?= To: Reinette Chatre , Shuah Khan , Shuah Khan , linux-kselftest@vger.kernel.org, =?utf-8?q?Maciej_Wiecz=C3=B3r-Retman?= Cc: LKML , Shaopeng Tan , stable@vger.kernel.org, =?utf-8?q?Ilpo_J=C3=A4rvinen?= Subject: [PATCH v2 6/6] selftests/resctrl: Reduce failures due to outliers in MBA/MBM tests Date: Fri, 15 Sep 2023 18:44:38 +0300 Message-Id: <20230915154438.82931-7-ilpo.jarvinen@linux.intel.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> References: <20230915154438.82931-1-ilpo.jarvinen@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Fri, 15 Sep 2023 08:46:30 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1777134519558522116 X-GMAIL-MSGID: 1777134519558522116 The initial value of 5% chosen for the maximum allowed percentage difference between resctrl mbm value and IMC mbm value in commit 06bd03a57f8c ("selftests/resctrl: Fix MBA/MBM results reporting format") was "randomly chosen value" (as admitted by the changelog). When running tests in our lab across a large number platforms, 5% difference upper bound for success seems a bit on the low side for the MBA and MBM tests. Some platforms produce outliers that are slightly above that, typically 6-7%, which leads MBA/MBM test frequently failing. Replace the "randomly chosen value" with a success bound that is based on those measurements across large number of platforms by relaxing the MBA/MBM success bound to 8%. The relaxed bound removes the failures due the frequent outliers. Fixes: 06bd03a57f8c ("selftests/resctrl: Fix MBA/MBM results reporting format") Cc: Signed-off-by: Ilpo Järvinen Reviewed-by: Reinette Chatre --- tools/testing/selftests/resctrl/mba_test.c | 2 +- tools/testing/selftests/resctrl/mbm_test.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/resctrl/mba_test.c b/tools/testing/selftests/resctrl/mba_test.c index cf8284dadcb2..d3bf4368341e 100644 --- a/tools/testing/selftests/resctrl/mba_test.c +++ b/tools/testing/selftests/resctrl/mba_test.c @@ -12,7 +12,7 @@ #define RESULT_FILE_NAME "result_mba" #define NUM_OF_RUNS 5 -#define MAX_DIFF_PERCENT 5 +#define MAX_DIFF_PERCENT 8 #define ALLOCATION_MAX 100 #define ALLOCATION_MIN 10 #define ALLOCATION_STEP 10 diff --git a/tools/testing/selftests/resctrl/mbm_test.c b/tools/testing/selftests/resctrl/mbm_test.c index 1ae131a2e246..d3c0d30c676a 100644 --- a/tools/testing/selftests/resctrl/mbm_test.c +++ b/tools/testing/selftests/resctrl/mbm_test.c @@ -11,7 +11,7 @@ #include "resctrl.h" #define RESULT_FILE_NAME "result_mbm" -#define MAX_DIFF_PERCENT 5 +#define MAX_DIFF_PERCENT 8 #define NUM_OF_RUNS 5 static int