[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <10e2dc46-56e4-b6a7-5a10-dfda445f9cf7@huawei.com>
Date: Fri, 20 Jan 2023 17:20:53 +0800
From: Yicong Yang <yangyicong@...wei.com>
To: Suzuki K Poulose <suzuki.poulose@....com>
CC: <yangyicong@...ilicon.com>, <mathieu.poirier@...aro.org>,
<jonathan.cameron@...wei.com>,
<alexander.shishkin@...ux.intel.com>, <helgaas@...nel.org>,
<linux-pci@...r.kernel.org>, <prime.zeng@...wei.com>,
<linuxarm@...wei.com>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v3 1/2] hwtracing: hisi_ptt: Only add the supported
devices to the filters list
On 2023/1/19 17:55, Suzuki K Poulose wrote:
> On 19/01/2023 09:10, Yicong Yang wrote:
>> Hi Suzuki,
>>
>> Any comments or is it ok to pick these two patches?
>> Hope to not miss this cycle since there's one fix :)
>
> Apologies, I will queue this, once I clear my queue.
Never mind! Thanks a lot for taking this!
>
> Thanks
> Suzuki
>
>
>>
>> Thanks,
>> Yicong
>>
>> On 2023/1/12 19:22, Yicong Yang wrote:
>>> From: Yicong Yang <yangyicong@...ilicon.com>
>>>
>>> The PTT device can only support the devices on the same PCIe core,
>>> within BDF range [lower_bdf, upper_bdf]. It's not correct to assume
>>> the devices on the root bus are from the same PCIe core, there are
>>> cases that root ports from different PCIe core are sharing the same
>>> bus. So check when initializing the filters list.
>>>
>>> Fixes: ff0de066b463 ("hwtracing: hisi_ptt: Add trace function support for HiSilicon PCIe Tune and Trace device")
>>> Signed-off-by: Yicong Yang <yangyicong@...ilicon.com>
>>> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@...wei.com>
>>> ---
>>> Change since v2:
>>> - Refine the commit per Bjorn
>>> Link: https://lore.kernel.org/linux-pci/20230110130833.53474-1-yangyicong@huawei.com/
>>>
>>> Change since v1:
>>> - Add tags from Jonathan
>>> Link: https://lore.kernel.org/linux-pci/20221122120209.25682-1-yangyicong@huawei.com/raw
>>>
>>> drivers/hwtracing/ptt/hisi_ptt.c | 10 ++++++++++
>>> 1 file changed, 10 insertions(+)
>>>
>>> diff --git a/drivers/hwtracing/ptt/hisi_ptt.c b/drivers/hwtracing/ptt/hisi_ptt.c
>>> index 5d5526aa60c4..30f1525639b5 100644
>>> --- a/drivers/hwtracing/ptt/hisi_ptt.c
>>> +++ b/drivers/hwtracing/ptt/hisi_ptt.c
>>> @@ -356,8 +356,18 @@ static int hisi_ptt_register_irq(struct hisi_ptt *hisi_ptt)
>>> static int hisi_ptt_init_filters(struct pci_dev *pdev, void *data)
>>> {
>>> + struct pci_dev *root_port = pcie_find_root_port(pdev);
>>> struct hisi_ptt_filter_desc *filter;
>>> struct hisi_ptt *hisi_ptt = data;
>>> + u32 port_devid;
>>> +
>>> + if (!root_port)
>>> + return 0;
>>> +
>>> + port_devid = PCI_DEVID(root_port->bus->number, root_port->devfn);
>>> + if (port_devid < hisi_ptt->lower_bdf ||
>>> + port_devid > hisi_ptt->upper_bdf)
>>> + return 0;
>>> /*
>>> * We won't fail the probe if filter allocation failed here. The filters
>>>
>
>
> .
Powered by blists - more mailing lists