Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp5632592imu; Mon, 26 Nov 2018 03:16:29 -0800 (PST) X-Google-Smtp-Source: AFSGD/VYGrFXRGVwWAPz5lEVe8sveZq2lAVxYakpr9VhrUO97TzDp0kEriM7NM4+e0YJRdO2d7gN X-Received: by 2002:a65:5088:: with SMTP id r8mr23896973pgp.15.1543230989036; Mon, 26 Nov 2018 03:16:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1543230989; cv=none; d=google.com; s=arc-20160816; b=NcVCUf1WuNbNL1t1llphqTFQAqJl5CEPntyejH+ZVN+S8Mm7FJ5xfhACZzVQgNuhdW whQQLF0EyD+FDnHDnQIwIBKk00m0KzkBkqMMjsJtQ4VzYaGDh9YiBn0h9X3cvjSCDC+A iRMhSj9yeHZcyUAL4RnBufMaxPPoyENb3pMC6Y87FDGUND/Vj1AE8c8khQ+2JGocsmat ws9bi45p9wuLu0SGbCkvr6Z/Nj218/kgzwtnZeVxJBvq1mwH+Ve6pcM57AnrhpY3iThF 4q+x8uI5kmxnBUDdDX+elAZqYCppFXCHKmqpbUc1vrcfeUHe8+CM/giV2/AJJF63mizB N8dw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from; bh=g61XyV3Pio/C9GLNnZJFCav5KRMoeW6xE63ulsMmR94=; b=meIWOqq4n8oUNzG+vWZMd2B2qum+K/aCl/Pb2n4mcyuLUFYjeCYh0NH79thPpXKytv DmCfNXKvRdJaxgmxZM3sVshkwLzCNR5TJZ5sIB9sPqMZVpN4Y7nhThG5QSrBTBiIVpH/ ZklvF3bwFH73glw/H29yo+3mx0s5TIjyOyua7IS5C1PCJ2+QWyn/jViSAtbJcjlVeE4R fhNi3QpK3csOMdVR8zJFbb7+mKydzbRYunG30LuE5g4koO9df5AdLdg8bX61zkXgAf4f TZchnIid3bPMcZRUtCEUSI35nUcae9o5bzWyQST2G7eRv5on/JBb2ACVKJvVmZpn3dhu S3fg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t20si3429plj.94.2018.11.26.03.16.14; Mon, 26 Nov 2018 03:16:29 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731005AbeKZWIn (ORCPT + 99 others); Mon, 26 Nov 2018 17:08:43 -0500 Received: from usa-sjc-mx-foss1.foss.arm.com ([217.140.101.70]:33206 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729097AbeKZWIm (ORCPT ); Mon, 26 Nov 2018 17:08:42 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 16D3F391A; Mon, 26 Nov 2018 03:14:55 -0800 (PST) Received: from e119886-lin.cambridge.arm.com (unknown [10.37.6.11]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 5F7C33F5AF; Mon, 26 Nov 2018 03:14:50 -0800 (PST) From: Andrew Murray To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Shawn Guo , Sascha Hauer , Will Deacon , Mark Rutland , Benjamin Herrenschmidt , Thomas Gleixner , Borislav Petkov , x86@kernel.org, Ralf Baechle , Paul Burton , James Hogan , Martin Schwidefsky , Heiko Carstens , "David S . Miller" , sparclinux@vger.kernel.org, Michael Ellerman Cc: linux-s390@vger.kernel.org, linux-mips@linux-mips.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-alpha@vger.kernel.org Subject: [PATCH v2 18/20] x86: perf/core remove unnecessary checks for exclusion Date: Mon, 26 Nov 2018 11:12:34 +0000 Message-Id: <1543230756-15319-19-git-send-email-andrew.murray@arm.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1543230756-15319-1-git-send-email-andrew.murray@arm.com> References: <1543230756-15319-1-git-send-email-andrew.murray@arm.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org For x86 PMUs that do not support context exclusion we do not advertise the PERF_PMU_CAP_EXCLUDE capability. This ensures that perf will prevent us from handling events where any exclusion flags are set. Let's remove the now unnecessary check for exclusion flags. This change means that amd/iommu and amd/uncore will now also indicate that they do not support exclude_{hv|idle} and intel/uncore that it does not support exclude_{guest|host}. Signed-off-by: Andrew Murray --- arch/x86/events/amd/iommu.c | 5 ----- arch/x86/events/amd/uncore.c | 5 ----- arch/x86/events/intel/uncore.c | 8 -------- 3 files changed, 18 deletions(-) diff --git a/arch/x86/events/amd/iommu.c b/arch/x86/events/amd/iommu.c index 3210fee..eb35fe4 100644 --- a/arch/x86/events/amd/iommu.c +++ b/arch/x86/events/amd/iommu.c @@ -223,11 +223,6 @@ static int perf_iommu_event_init(struct perf_event *event) if (is_sampling_event(event) || event->attach_state & PERF_ATTACH_TASK) return -EINVAL; - /* IOMMU counters do not have usr/os/guest/host bits */ - if (event->attr.exclude_user || event->attr.exclude_kernel || - event->attr.exclude_host || event->attr.exclude_guest) - return -EINVAL; - if (event->cpu < 0) return -EINVAL; diff --git a/arch/x86/events/amd/uncore.c b/arch/x86/events/amd/uncore.c index 8671de1..d6ade30 100644 --- a/arch/x86/events/amd/uncore.c +++ b/arch/x86/events/amd/uncore.c @@ -201,11 +201,6 @@ static int amd_uncore_event_init(struct perf_event *event) if (is_sampling_event(event) || event->attach_state & PERF_ATTACH_TASK) return -EINVAL; - /* NB and Last level cache counters do not have usr/os/guest/host bits */ - if (event->attr.exclude_user || event->attr.exclude_kernel || - event->attr.exclude_host || event->attr.exclude_guest) - return -EINVAL; - /* and we do not enable counter overflow interrupts */ hwc->config = event->attr.config & AMD64_RAW_EVENT_MASK_NB; hwc->idx = -1; diff --git a/arch/x86/events/intel/uncore.c b/arch/x86/events/intel/uncore.c index 27a4614..f1d78d9 100644 --- a/arch/x86/events/intel/uncore.c +++ b/arch/x86/events/intel/uncore.c @@ -695,14 +695,6 @@ static int uncore_pmu_event_init(struct perf_event *event) if (pmu->func_id < 0) return -ENOENT; - /* - * Uncore PMU does measure at all privilege level all the time. - * So it doesn't make sense to specify any exclude bits. - */ - if (event->attr.exclude_user || event->attr.exclude_kernel || - event->attr.exclude_hv || event->attr.exclude_idle) - return -EINVAL; - /* Sampling not supported yet */ if (hwc->sample_period) return -EINVAL; -- 2.7.4