Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp1169784ybz; Wed, 22 Apr 2020 15:05:56 -0700 (PDT) X-Google-Smtp-Source: APiQypJEaLcdv89TQjVGUvZJxWsaOQb6N8O2VExBu9TasOikSIxs1U0ygkGNWCohbFUUzO+JgS+C X-Received: by 2002:a17:906:2558:: with SMTP id j24mr404940ejb.72.1587593156360; Wed, 22 Apr 2020 15:05:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587593156; cv=none; d=google.com; s=arc-20160816; b=T2KL9M0k7+HGo5/cpAXO6th9EEVo6P0CvT2X8Jd0bUxkC322pIldt+cHpTVJvbJotU R0N/tHZgQ1BPZZOYap8NHxo3tPFvkXboFX1++bGb1ovkdvmQbquZUiyl80AfEtq45LsL FZCS4dmY2cKsewaf8DTuN6nZonlRCs+KjoZCdOkXYPM1N3ZKIFoKTJn5Y5nTTDujTztn d9pJL+WpsPB5xAZ+JxwpifULY7yTP54w4PgJ1SjwZbAOmQESf391ejfrR8rvSIrpR3Dn NTQdLszcZcFCYSLM8E1a87XAcuRcEPVNjAExy6VSbmejh7CNR8dI2eSzzZTW51rKsbjl F/mA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:from:subject:mime-version :message-id:date:dkim-signature; bh=DS4nO2RcZHgVqAM7Or5SHSuF67Tyxr1samkiogrvdDE=; b=E6KZraOZU6V2VNZUYKapH9xtVjkOtB5DE7z40a4iNZV35xf9LGCKYw9FmS0P1o8CeT G3LpI/oSQvdR4+65giJ5I+t9XAce5d+Qm9LQjSfBDDe7LweyRJHprMKeZuoEqhXiceTd CoRcEc9LvxwTtIIt/c32V7eJZ3aivm4hATyrS4KvDvi76C8DoraTkTzwC0LioOd4Apxh 5fmnJW2+rkWN+JoAwzxdrDoj5l57pDGtIt6S01Rs93IRtvvrECm5uUsebY9/mE5eQu22 E7L6DJjPFuTLoe7Mu/h+vLfL7yppLY3K6PYFKZUKkTDEaLO/NRo057NAESZ8mgnDpabf YQWg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=GrYF5+Fe; 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=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ba9si247281edb.114.2020.04.22.15.05.32; Wed, 22 Apr 2020 15:05:56 -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=@google.com header.s=20161025 header.b=GrYF5+Fe; 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=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726061AbgDVWEg (ORCPT + 99 others); Wed, 22 Apr 2020 18:04:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60004 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725839AbgDVWEg (ORCPT ); Wed, 22 Apr 2020 18:04:36 -0400 Received: from mail-pg1-x549.google.com (mail-pg1-x549.google.com [IPv6:2607:f8b0:4864:20::549]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 96995C03C1A9 for ; Wed, 22 Apr 2020 15:04:34 -0700 (PDT) Received: by mail-pg1-x549.google.com with SMTP id j21so2920290pgh.12 for ; Wed, 22 Apr 2020 15:04:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:message-id:mime-version:subject:from:to:cc; bh=DS4nO2RcZHgVqAM7Or5SHSuF67Tyxr1samkiogrvdDE=; b=GrYF5+Fe44e7TtDj+lfnRL78Afido3TJ904/mlIboaw7b0PZBqdWAo9WRvh1q4TLop Ddsg/gRZlEo3Q5sbV7BrpCKkfJ5HJHqIasSgJmBcv2mBzIL3mPnsYTB7dSrnt7S+bYew 8pccmjwl1RK+Hb3QLgluybXo0m/fqA355tVEH3+wA5KOyTPs3ZtyRdaX50NlwJSefc9r 9DvRr1CRJUPnKSox4JXbgFvucBSCWY3PDtaDuR7Dc+gK9GRyrwfpNnfH6qPnyuQJyGOC kyteRBmxsm8pdiwtnIxtKXB04ng8Hcbw348nqQ7vJR6588+0i4SzHRP+7TjDxh1YXUMi +TWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=DS4nO2RcZHgVqAM7Or5SHSuF67Tyxr1samkiogrvdDE=; b=awjTfPYCkBgdDbJJi/xVq9WvwD7HtiKFhNfc6zk/6M4ydVmukbdEC/RpmEWlpOfwQo hZ0v4TfFT7khtOv9MoVefgXAMYFD2l3RApJuBV5GuLQp2Jriya6R/mZDgeiY5tTkERyv z7RKEUIEIobw+w3TI4NbCA7fPS/JlwRTJ+HLwbydlA7G0I73152FjgBBiovL2xJA6YsZ ji12NQMaM6YJQyvg5D+a1zdi1GpjnquZm0g/kXjPNoBc9sL0vfP/ZXhlEikdxsTo5KV3 vavQ7EhWgS+kIgPZ0DmXhq9GLODMAHwpJf2WY9EGwV1Oir7MBaj7A75le0TxqgV4S7u4 0ssw== X-Gm-Message-State: AGi0PuZpfprBDSlCgE0YgTp7v2SMXCL07QeBc/b0yx7xKVKbXYsoqCJB D5/a3n9hTiuZMzK3Zz2und5IJV5B0hCN X-Received: by 2002:a63:ea42:: with SMTP id l2mr1086309pgk.193.1587593073820; Wed, 22 Apr 2020 15:04:33 -0700 (PDT) Date: Wed, 22 Apr 2020 15:04:19 -0700 Message-Id: <20200422220430.254014-1-irogers@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.26.2.303.gf8c07b1a785-goog Subject: [PATCH v2 00/11] perf metric fixes and test From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Kan Liang , Andi Kleen , Haiyan Song , Jin Yao , Song Liu , Ravi Bangoria , John Garry , Leo Yan , Adrian Hunter , Paul Clarke , linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org Cc: Stephane Eranian , Ian Rogers Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add a test that all perf metrics (for your architecture) are parsable. Fix bugs in the expr parser and in x86 metrics. Untested on architectures other than x86. v2 adds Fixes tags to commit messages for when broken metrics were first added. Adds a debug warning for division by zero in expr, and adds a workaround for id values in the expr test necessary for powerpc. It also fixes broken power8 and power9 metrics. Ian Rogers (11): perf expr: unlimited escaped characters in a symbol perf metrics: fix parse errors in cascade lake metrics perf metrics: fix parse errors in skylake metrics perf expr: allow ',' to be an other token perf expr: increase max other perf expr: parse numbers as doubles perf expr: debug lex if debugging yacc perf metrics: fix parse errors in power8 metrics perf metrics: fix parse errors in power9 metrics perf expr: print a debug message for division by zero perf test: add expr test for pmu metrics .../arch/powerpc/power8/metrics.json | 4 +- .../arch/powerpc/power9/metrics.json | 2 +- .../arch/x86/cascadelakex/clx-metrics.json | 10 +- .../arch/x86/skylakex/skx-metrics.json | 4 +- tools/perf/tests/builtin-test.c | 5 + tools/perf/tests/expr.c | 96 ++++++++++++++++++- tools/perf/tests/tests.h | 2 + tools/perf/util/expr.c | 1 + tools/perf/util/expr.h | 2 +- tools/perf/util/expr.l | 16 ++-- tools/perf/util/expr.y | 16 +++- 11 files changed, 135 insertions(+), 23 deletions(-) -- 2.26.2.303.gf8c07b1a785-goog