Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp5359089imm; Tue, 21 Aug 2018 10:20:32 -0700 (PDT) X-Google-Smtp-Source: AA+uWPx+Du98XtCpRv8nxK7AQC8qeAaCItTAjCgZDSAEFRTxkbVDJEIKHDn8KiVLLdT2uCzDcHF+ X-Received: by 2002:a63:aa44:: with SMTP id x4-v6mr48594275pgo.120.1534872032280; Tue, 21 Aug 2018 10:20:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1534872032; cv=none; d=google.com; s=arc-20160816; b=uU/usvCKcIRb1qVzeLj9m2E9LtnJRLgF8grHBqtOGA7VSSDDv7jevD2CgrvxoFjs2k O3wyVGobVYm1leXk5lRABGjusrOjYnk8OPGI7GlttvnkHesIVPHRZX8yxBEYPgXPny3u Fq54vPvcKd23lIjcXK2tXJnvp/qbzGHO2fm6Gyjv0Cymhr+Q2505HtOlRVeKFCdIPoZi dsDVSrHnxbV1v3j0QjAihRVD+lPiG8cqd0L4CjxH/gr+3+ftBV5kRhcu6W6eSCBL+CH2 xQ9XNU0tFGEWIJayDJloeQF4ml6yO/GmK2GJJ6n0qYnBptgesizznpjFPU81raTPHFvJ w19w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature :arc-authentication-results; bh=FhJVq2UVLFY04vF/xJIbhQ5ZujucudCfmHJk6TpRCJ0=; b=pgBsYTPZOv45wCO9UCaie2ZJkqXXf7wPtp7OcMQcO6cB6OybJb8kAJVOWidEgxeaEg 7DMA+78bin6AFUkvKsb2+zqlpnBb78kVgk7EYOLN04oBvMR8nKXVWg7NMevXreyl3oZ7 msbQb2vyVnaScl0YhppULPTLwkEh7EG1OU8qQgATsIVZ51xmHwOUtHYmvottMfckFUXI QD4lbUxuMvwHJwkRA6MGmiWOvFD1JSiIpubXrw//S51ZyLuWylffNsRzCK04IVv1zhUK xYYujtp1qvPBh2xO99ZepBeQBhp+o9+aWEYI3qFmaR7Y87m6NIxDje3hIVdC7ggJEDHE iFmg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=VmdM+VCK; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z19-v6si12344914pgi.388.2018.08.21.10.20.17; Tue, 21 Aug 2018 10:20:32 -0700 (PDT) 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; dkim=pass header.i=@linaro.org header.s=google header.b=VmdM+VCK; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728110AbeHUUiE (ORCPT + 99 others); Tue, 21 Aug 2018 16:38:04 -0400 Received: from mail-lj1-f196.google.com ([209.85.208.196]:36751 "EHLO mail-lj1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727962AbeHUUiD (ORCPT ); Tue, 21 Aug 2018 16:38:03 -0400 Received: by mail-lj1-f196.google.com with SMTP id u7-v6so14921921lji.3 for ; Tue, 21 Aug 2018 10:17:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=FhJVq2UVLFY04vF/xJIbhQ5ZujucudCfmHJk6TpRCJ0=; b=VmdM+VCKyB1esx0n45h4cEFdesrJGp5oO92ohWrHt41Zk5xETIH4YA00FcUR8Di/SD kSdzrZdg1fHK4TwvaOAO4puBULDqI7MNB4nlAyYGmkGdvUg2M4F4le2jlSOWx9n83BCi mPEIvkR8AqWi+8pBNRuqWt2zRuQljg1Qub62E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=FhJVq2UVLFY04vF/xJIbhQ5ZujucudCfmHJk6TpRCJ0=; b=ek1HhyGjIqPsC2ETbiOzt8oYRJrdiT1hUO2GhCz8G1byEQUaPZmGBJO55GwlWoMp96 cCZVMrp9SdZRbO8QnQEQz29pROG0wukb5eaagOeBLbkRQbJYioU2hgutebgvDf53xeS9 x0r7UH0nErWvQmaQm/qfpVCbLLBcs4yEjDSegu45Q740g/vfrvaf5IGOcbVFckGqGvM/ dnj8lJSmDYDEb1HXuhn+R5J00nDhrxzVEbTiGJcCKjpkZVNnqTkXPo8EX2sN72HkXL1T NWLS3dwNDMK3iBvOxSLAIxu2UgfFRDvrl8RlrMIQN3EPgEca55KAe/PajwYoL38N6+UY EJKQ== X-Gm-Message-State: AOUpUlEwSa+JMrBS8JvVTB2RKX0rEZkEPzFuzgIIoSAFuXvKBFP25NpZ wsL28qTti300mCpWMeNeeqGE44MEm4/Jvg6AwAG2iA== X-Received: by 2002:a2e:9ec9:: with SMTP id h9-v6mr11025781ljk.133.1534871820456; Tue, 21 Aug 2018 10:17:00 -0700 (PDT) MIME-Version: 1.0 References: <1531950487-24554-1-git-send-email-mathieu.poirier@linaro.org> <20180813124642.3d49c082a95fc294d926016e@arm.com> <20180814120910.ed225bbc462c58b09e5d68de@arm.com> <20180815093912.GE2427@arm.com> <20180815102820.3520d0c3875d2fd82300cdef@arm.com> <18fe78a3-9a58-cecd-ddb9-d46cbc473b95@arm.com> <20180820092252.32dd015afcc5cbf2fe4c7ab7@arm.com> In-Reply-To: From: Mathieu Poirier Date: Tue, 21 Aug 2018 11:16:49 -0600 Message-ID: Subject: Re: [PATCH v3 0/7] perf: Add ioctl for PMU driver configuration To: "Suzuki K. Poulose" Cc: Kim Phillips , Will Deacon , Peter Zijlstra , Arnaldo Carvalho de Melo , Ingo Molnar , Thomas Gleixner , Alexander Shishkin , schwidefsky@de.ibm.com, heiko.carstens@de.ibm.com, Mark Rutland , Jiri Olsa , Namhyung Kim , Adrian Hunter , ast@kernel.org, Greg KH , "H. Peter Anvin" , suzuki.poulosi@arm.com, linux-s390@vger.kernel.org, Linux Kernel Mailing List , linux-arm-kernel 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 On Mon, 20 Aug 2018 at 08:36, Suzuki K Poulose wrote: > > On 08/20/2018 03:22 PM, Kim Phillips wrote: > > On Mon, 20 Aug 2018 11:03:03 +0100 > > Suzuki K Poulose wrote: > > > >> On 08/16/2018 08:28 PM, Mathieu Poirier wrote: > >>> On Wed, 15 Aug 2018 at 09:28, Kim Phillips wrote: > >>>> > >>>> On Wed, 15 Aug 2018 10:39:13 +0100 > >>>> Will Deacon wrote: > >>>> > >>>>> On Tue, Aug 14, 2018 at 01:42:27PM -0600, Mathieu Poirier wrote: > >>>>>> On Tue, 14 Aug 2018 at 11:09, Kim Phillips wrote: > >>>>>>> The other thing that's going on here is that I'm becoming numb to the > >>>>>>> loathsome "failed to mmap with 12 (Cannot allocate memory)" being > >>>>>>> returned no matter what the error is/was. E.g., an error that would > >>>>>>> indicate a sense of non-implementation would be much better > >>>>>>> appreciated than presumably what the above is doing, i.e., returning > >>>>>>> -ENOMEM. That, backed up with specific details in the form of human > >>>>>>> readable text in dmesg would be *most* welcome. > >>>>>> > >>>>>> As part of the refactoring of the code to support CPU-wide scenarios I > >>>>>> intend to emit better diagnostic messages from the driver. Modifying > >>>>>> rb_alloc_aux() to propagate the error message generated by the > >>>>>> architecture specific PMUs doesn't look hard either and I _may_ get to > >>>>>> it as part of this work. > >>>>> > >>>>> For the record, I will continue to oppose PMU drivers that dump diagnostics > >>>>> about user-controlled input into dmesg, but the coresight drivers are yours > >>>>> so it's up to you and I won't get in the way! > >>>> > >>>> That sounds technically self-contradicting to me. Why shouldn't > >>>> coresight share the same policies as those used for PMU drivers? Or > >>>> why not allow the individual vendor PMU driver authors control the > >>>> level of user-friendliness of their own drivers? > >>>> > >>>> That being said, Matheiu, would you accept patches that make coresight > >>>> more verbose in dmesg? > >>> > >>> It depends on the issue you're hoping to address. I'd rather see the > >>> root cause of the problem fixed than adding temporary code. Suzuki > >>> added the ETR perf API and I'm currently working on CPU-wide > >>> scenarios. From there and with regards to what can happen in > >>> setup_aux(), we should have things covered. > >> > >> I think the main issue is the lack of error code propagation from > >> setup_aux() back to the perf_aux_output_handle_begin(), which always > >> return -ENOMEM. If we fix that, we could get better idea of whats > >> wrong. > > > > Why get a better idea when we can get the exact details? > > The different values for error numbers are there for a reason... > > > > >> If someone is planning to add verbose messages, they may do so by adding > >> dev_dbg() / pr_debug(), which can be turned on as and when needed. > > > > I disagree: that just adds another usage and kernel configuration > > obstacle. Why not use pr_err straight up? I think everything on this topic has been said already. As I remarked earlier once I'm done with CPU-wide support we shouldn't need detailed error reporting. Everything should be handled via error code propagation and that is what I'd like to see addressed in the first place. From there we can think about individual error cases as they come up. > > I personally don't agree to usage of pr_err() in paths which are easily > triggered from user input. Also, we are moving all the "debugging" > messages to the dynamic debug, to prevent lockdep splats. A slight correction here - we are moving most of the framework error reporting to dynamic debug because they clog the log file and aren't useful outside of a development context. It is not a remedy for the negative interaction between event locking and console access generated by the framework's reporting of device status as a path is built/enabled/disabled. > > Suzuki