Received: by 2002:a05:6a10:8a4d:0:0:0:0 with SMTP id dn13csp960348pxb; Fri, 13 Aug 2021 10:05:46 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwGXkWN3Eizhhm7gAga+2of2H9oAxf03KVyM3Lz7ufWISueaov8ig5BoW+1RXCyPtgbZpGr X-Received: by 2002:a05:6e02:13f3:: with SMTP id w19mr127115ilj.164.1628874346701; Fri, 13 Aug 2021 10:05:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628874346; cv=none; d=google.com; s=arc-20160816; b=YiMLAxhrUMLv73bFV2lkrIR3OdJpe/j5LVcx++s63P2Srd2yQH6PQWZ2NogoI/9Ejp yMJQa5Cxd3IxOjDr4xb2ewoazap7v4+nBVQnjg5uIHpDfIGoPs/DaXJVMc81fNs/vSRT 5nxfny64IIcjrdlvdrj/vhgQPtVUTB+fnVEtoxBH8/qDrS0IhoItQHSngEpD9Y+M+dzn ZM/rW5tBmcpmzka4HQ0Si5x/gEDZwjdRbFYNhhpLmPFDubqlSRaky39mtnliQ1oMVaDi NuC9r7Fyu1bc4UOLCkA5X0XOzA8DxaiDy/JddUkEf1UtctfOoHaulzyJP9DrYAK8wA74 mNMA== 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 :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=ykpuH3YH01x1KfKoT5PtioYcD/VbECvvLwPBI7xkiHs=; b=TaJb7luWRcudMlIRkUczCeaml7n36WkoFPdAR/D+7SQxjheqmbqDKzdNmhvlvf5iEY TpGLmAOEnGWFMIbhqJ2ohZoIzdkvopVTUntJg5k2ZBT5kMqI1Kfvao+mTcYWw6qVf+d7 jduW6Hhiy10qbEP+Jb2C3czAObe2+fpsmvQFhIMhxP3e2XgLMr0QVVkF+vb0xB5rmceI 8sZ5kLFBLi32IUMvFAzXrjBw2zOsHFWQyjMwYRweSNKqifzoOJUiGjOtRqcNoDo1yDqr g9j5xcQcKQ9ZAn9clvAbGP+Eyv4Y2SEzL+TwhFKY7vyEf7mH7dIEm8X7ZUOM16XkWg2Y avcw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=JQqBQTKJ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id t12si2112898jal.3.2021.08.13.10.05.34; Fri, 13 Aug 2021 10:05:46 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=JQqBQTKJ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242916AbhHMPTP (ORCPT + 99 others); Fri, 13 Aug 2021 11:19:15 -0400 Received: from mail.kernel.org ([198.145.29.99]:59300 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242003AbhHMPOu (ORCPT ); Fri, 13 Aug 2021 11:14:50 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id A6DBD61106; Fri, 13 Aug 2021 15:14:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1628867663; bh=GnLiUCEFIhRUyu66/ERAEgKRe+I2rpqXXN68TmQHLqk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=JQqBQTKJF7AD3krFS/3BzLx7/KkGbecMMLIC67UPh/z5NAv6iK/MsXPYdhnXJpnUc rYBxiGw06pmsJrBEqCA6TFpGBBrzVcFBbT2PDZ9iAJDhFv+Wv5SpTHwYAZIaCp7lik uFLJnDaIxE4tFubtnK5qUPBwi5h9/zInskDsnP3A= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Greg Kroah-Hartman , Reinette Chatre Subject: [PATCH 5.10 06/19] Revert "selftests/resctrl: Use resctrl/info for feature detection" Date: Fri, 13 Aug 2021 17:07:23 +0200 Message-Id: <20210813150522.835692058@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210813150522.623322501@linuxfoundation.org> References: <20210813150522.623322501@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Reinette Chatre This reverts commit 19eaad1400eab34e97ec4467cd2ab694d1caf20c which is ee0415681eb661efa1eb2db7acc263f2c7df1e23 upstream. This commit is not a stable candidate and was backported without needed dependencies that results in the resctrl tests unable to compile. Signed-off-by: Reinette Chatre Signed-off-by: Greg Kroah-Hartman --- tools/testing/selftests/resctrl/resctrl.h | 6 --- tools/testing/selftests/resctrl/resctrlfs.c | 50 +++++----------------------- 2 files changed, 11 insertions(+), 45 deletions(-) --- a/tools/testing/selftests/resctrl/resctrl.h +++ b/tools/testing/selftests/resctrl/resctrl.h @@ -28,10 +28,6 @@ #define RESCTRL_PATH "/sys/fs/resctrl" #define PHYS_ID_PATH "/sys/devices/system/cpu/cpu" #define CBM_MASK_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 PARENT_EXIT(err_msg) \ do { \ @@ -83,7 +79,7 @@ int remount_resctrlfs(bool mum_resctrlfs int get_resource_id(int cpu_no, int *resource_id); 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(char *resctrl_val); 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); --- a/tools/testing/selftests/resctrl/resctrlfs.c +++ b/tools/testing/selftests/resctrl/resctrlfs.c @@ -616,56 +616,26 @@ char *fgrep(FILE *inf, const char *str) * validate_resctrl_feature_request - Check if requested feature is valid. * @resctrl_val: Requested feature * - * Return: True if the feature is supported, else false + * Return: 0 on success, non-zero on failure */ -bool validate_resctrl_feature_request(const char *resctrl_val) +bool validate_resctrl_feature_request(char *resctrl_val) { - struct stat statbuf; + FILE *inf = fopen("/proc/cpuinfo", "r"); bool found = false; char *res; - FILE *inf; - if (!resctrl_val) + if (!inf) return false; - if (remount_resctrlfs(false)) - 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; + res = fgrep(inf, "flags"); - if (!strncmp(resctrl_val, CMT_STR, sizeof(CMT_STR))) { - res = fgrep(inf, "llc_occupancy"); - if (res) { - found = true; - free(res); - } - } + if (res) { + char *s = strchr(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); - } + found = s && !strstr(s, resctrl_val); + free(res); } + fclose(inf); return found; }