[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250304153206.gr7footrqrpc5uxf@thinkpad>
Date: Tue, 4 Mar 2025 21:02:06 +0530
From: Manivannan Sadhasivam <manivannan.sadhasivam@...aro.org>
To: Fan Ni <nifan.cxl@...il.com>
Cc: Krzysztof Wilczyński <kw@...ux.com>,
Shradha Todi <shradha.t@...sung.com>, linux-kernel@...r.kernel.org,
linux-pci@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-perf-users@...r.kernel.org, lpieralisi@...nel.org,
robh@...nel.org, bhelgaas@...gle.com, jingoohan1@...il.com,
Jonathan.Cameron@...wei.com, a.manzanares@...sung.com,
pankaj.dubey@...sung.com, cassel@...nel.org, 18255117159@....com,
xueshuai@...ux.alibaba.com, renyu.zj@...ux.alibaba.com,
will@...nel.org, mark.rutland@....com
Subject: Re: [PATCH v7 5/5] Add debugfs based statistical counter support in
DWC
On Mon, Mar 03, 2025 at 01:03:12PM -0800, Fan Ni wrote:
> On Tue, Mar 04, 2025 at 04:42:28AM +0900, Krzysztof Wilczyński wrote:
> > Hello,
> >
> > [...]
> > > > +static ssize_t counter_value_read(struct file *file, char __user *buf, size_t count, loff_t *ppos)
> > > > +{
> > > > + struct dwc_pcie_rasdes_priv *pdata = file->private_data;
> > > > + struct dw_pcie *pci = pdata->pci;
> > > > + struct dwc_pcie_rasdes_info *rinfo = pci->debugfs->rasdes_info;
> > > > + char debugfs_buf[DWC_DEBUGFS_BUF_MAX];
> > > > + ssize_t pos;
> > > > + u32 val;
> > > > +
> > > > + mutex_lock(&rinfo->reg_event_lock);
> > > > + set_event_number(pdata, pci, rinfo);
> > > > + val = dw_pcie_readl_dbi(pci, rinfo->ras_cap_offset + RAS_DES_EVENT_COUNTER_DATA_REG);
> > > > + mutex_unlock(&rinfo->reg_event_lock);
> > > > + pos = scnprintf(debugfs_buf, DWC_DEBUGFS_BUF_MAX, "Counter value: %d\n", val);
> > > > +
> > > > + return simple_read_from_buffer(buf, count, ppos, debugfs_buf, pos);
> > > > +}
> > >
> > > Do we need to check whether the counter is enabled or not for the event
> > > before retrieving the counter value?
> >
> > I believe, we have a patch that aims to address, have a look at:
> >
> > https://lore.kernel.org/linux-pci/20250225171239.19574-1-manivannan.sadhasivam@linaro.org
>
> Maybe I missed something, that seems to fix counter_enable_read(), but
> here is to retrieve counter value.
> How dw_pcie_readl_dbi() can return something like "Counter Disabled"?
>
Only way to know if a counter is enabled by reading back the status. And that is
what the patch is doing.
- Mani
--
மணிவண்ணன் சதாசிவம்
Powered by blists - more mailing lists