Thread (43 messages) 43 messages, 7 authors, 2024-09-19

Re: [PATCH V4 11/12] bnxt_en: Add TPH support in BNXT driver

From: Wei Huang <hidden>
Date: 2024-09-19 16:14:34
Also in: linux-doc, linux-pci, lkml


On 9/18/24 12:31, Alejandro Lucero Palau wrote:
On 9/16/24 19:55, Wei Huang wrote:
quoted

On 9/11/24 10:37 AM, Alejandro Lucero Palau wrote:
quoted
...
quoted
quoted
I understand just one cpu from the mask has to be used, but I wonder if
some check should be done for ensuring the mask is not mad.

This is control path and the related queue is going to be restarted, so
maybe a sanity check for ensuring all the cpus in the mask are from the
same CCX complex?
I don't think this is always true and we shouldn't warn when this
happens. There is only one ST can be supported, so the driver need to
make a good judgement on which ST to be used. But no matter what, ST
is just a hint - it shouldn't cause any correctness issues in HW, even
when it is not the optimal target CPU. So warning is unnecessary.
1) You can use a "mad" mask for avoiding a specific interrupt to disturb
a specific execution is those cores not part of the mask. But I argue
the ST hint should not be set then.


2) Someone, maybe an automatic script, could try to get the best
performance possible, and a "mad" mask could preclude such outcome
inadvertently.
For this case, you can use the following command:

echo cpu_id > /proc/irq/nnn/smp_affinity_list

where nnn is the MSI IRQ number associated witht the device. This forces
IRQ to be associated with only one specific CPU.
I agree a warning could not be a good idea because 1, but I would say
adding some way of traceability here could be interesting. A tracepoint
or a new ST field for last hint set for that interrupt/queue.
We do have two pci_dbg() in tph.c. You can see the logs with proper
kernel print level. The logs show GET/SET ST values in what PCIe device,
which ST table, and at which index.
quoted
quoted
That would be an iteration checking the tag is the same one for all of
them. If not, at least a warning stating the tag/CCX/cpu used.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help