From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxime Ripard Subject: Re: [PATCH] arm64: dts: allwinner: a64: Drop PMU node Date: Wed, 25 Sep 2019 13:08:44 +0200 Message-ID: <20190925110844.qfm5ris7xeze44th@gilmour> References: <20190807115614.phm7sbyae6yajkug@flea> <20190808162628.pthvy3tgf3naj76s@flea> <20190812080420.saelmqb36vkelxn4@flea> <20190813053905.hu2hyi7fah2vujzz@flea> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============7100334768661815615==" Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org To: Vasily Khoruzhick Cc: Mark Rutland , devicetree , "Jared D . McNeill" , Chen-Yu Tsai , Rob Herring , Harald Geyer , Robin Murphy , arm-linux List-Id: devicetree@vger.kernel.org --===============7100334768661815615== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="xfvtyfmvyh5dzqpu" Content-Disposition: inline --xfvtyfmvyh5dzqpu Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Mon, Sep 23, 2019 at 04:55:59PM -0700, Vasily Khoruzhick wrote: > On Mon, Sep 23, 2019 at 4:51 PM Vasily Khoruzhick wrote: > > > > On Mon, Aug 12, 2019 at 10:39 PM Maxime Ripard > > wrote: > > > > > > On Mon, Aug 12, 2019 at 11:01:51AM -0700, Vasily Khoruzhick wrote: > > > > On Mon, Aug 12, 2019 at 1:04 AM Maxime Ripard wrote: > > > > > > > > > > On Thu, Aug 08, 2019 at 12:59:07PM -0700, Vasily Khoruzhick wrote: > > > > > > On Thu, Aug 8, 2019 at 9:26 AM Maxime Ripard wrote: > > > > > > > > > > > > > > On Wed, Aug 07, 2019 at 10:36:08AM -0700, Vasily Khoruzhick wrote: > > > > > > > > On Wed, Aug 7, 2019 at 4:56 AM Maxime Ripard wrote: > > > > > > > > > > > > > > > > > > On Tue, Aug 06, 2019 at 07:39:26PM -0700, Vasily Khoruzhick wrote: > > > > > > > > > > On Tue, Aug 6, 2019 at 2:14 PM Robin Murphy wrote: > > > > > > > > > > > > > > > > > > > > > > On 2019-08-06 9:52 pm, Vasily Khoruzhick wrote: > > > > > > > > > > > > On Tue, Aug 6, 2019 at 1:19 PM Harald Geyer wrote: > > > > > > > > > > > >> > > > > > > > > > > > >> Vasily Khoruzhick writes: > > > > > > > > > > > >>> On Tue, Aug 6, 2019 at 7:35 AM Robin Murphy wrote: > > > > > > > > > > > >>>> > > > > > > > > > > > >>>> On 06/08/2019 15:01, Vasily Khoruzhick wrote: > > > > > > > > > > > >>>>> Looks like PMU in A64 is broken, it generates no interrupts at all and > > > > > > > > > > > >>>>> as result 'perf top' shows no events. > > > > > > > > > > > >>>> > > > > > > > > > > > >>>> Does something like 'perf stat sleep 1' at least count cycles correctly? > > > > > > > > > > > >>>> It could well just be that the interrupt numbers are wrong... > > > > > > > > > > > >>> > > > > > > > > > > > >>> Looks like it does, at least result looks plausible: > > > > > > > > > > > >> > > > > > > > > > > > >> I'm using perf stat regularly (cache benchmarks) and it works fine. > > > > > > > > > > > >> > > > > > > > > > > > >> Unfortunately I wasn't aware that perf stat is a poor test for > > > > > > > > > > > >> the interrupts part of the node, when I added it. So I'm not too > > > > > > > > > > > >> surprised I got it wrong. > > > > > > > > > > > >> > > > > > > > > > > > >> However, it would be unfortunate if the node got removed completely, > > > > > > > > > > > >> because perf stat would not work anymore. Maybe we can only remove > > > > > > > > > > > >> the interrupts or just fix them even if the HW doesn't work? > > > > > > > > > > > > > > > > > > > > > > > > I'm not familiar with PMU driver. Is it possible to get it working > > > > > > > > > > > > without interrupts? > > > > > > > > > > > > > > > > > > > > > > Yup - you get a grumpy message from the driver, it will refuse sampling > > > > > > > > > > > events (the ones which weren't working anyway), and if you measure > > > > > > > > > > > anything for long enough that a counter overflows you'll get wonky > > > > > > > > > > > results. But for counting hardware events over relatively short periods > > > > > > > > > > > it'll still do the job. > > > > > > > > > > > > > > > > > > > > I tried to drop interrupts completely from the node but 'perf top' is > > > > > > > > > > still broken. Though now in different way: it complains "cycles: PMU > > > > > > > > > > Hardware doesn't support sampling/overflow-interrupts. Try 'perf > > > > > > > > > > stat'" > > > > > > > > > > > > > > > > > > I have no idea if that's the culprit, but what is the state of the > > > > > > > > > 0x09010000 register? > > > > > > > > > > > > > > > > What register is that and how do I check it? > > > > > > > > > > > > > > It's in the CPUX Configuration block, and the bits are labelled as CPU > > > > > > > Debug Reset. > > > > > > > > > > > > > > And if you have busybox, you can use devmem. > > > > > > > > > > > > CPUX configuration block is at 0x01700000 according to A64 user > > > > > > manual, and particular register you're interested in is at 0x01700080, > > > > > > its value is 0x1110110F. > > > > > > > > > > > > Bits 16-19 are not defined in user manual and are not set. > > > > > > > > > > Sorry, I somehow thought this was for the H6... > > > > > > > > > > I don't have any idea then :/ > > > > > > > > OK, so what should we do? 'perf top'/'perf record' work fine if PMU > > > > node is dropped, but they don't work if PMU node is present (even with > > > > interrupts dropped). I'd prefer to have 'perf top' and 'perf record' > > > > working instead of 'perf stat' > > > > > > Well, it doesn't work so we should just remove the node, and if > > > someone wants it back, they should figure it out. > > > > Hey Maxime, > > > > So can you merge this patch? > > Added new Maxime's email to CC Queued as a fix for 5.4, thanks! Maxime --xfvtyfmvyh5dzqpu Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQRcEzekXsqa64kGDp7j7w1vZxhRxQUCXYtKvAAKCRDj7w1vZxhR xR1uAP97hTHRaN8dhsyjKWxKH1xeWMcMtioTmtYPAjmrULwgpQD+PRLN3idwDWf8 1xX4j9HiktGKEPSFa5JcdzrqH2NtLAU= =roCs -----END PGP SIGNATURE----- --xfvtyfmvyh5dzqpu-- --===============7100334768661815615== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel --===============7100334768661815615==--