On Fri, Jul 18, 2025 at 01:29:18PM +0800, Shuai Xue wrote:
> 在 2025/7/18 11:46, Matthew W Carlis 写道:
> > On Thu, Jul 17, 2025 Bjorn Helgaas wrote
> > > So I think your idea of adding current link speed/width to the "Link
> > > Up" event is still on the table, and that does sound useful to me.
> > 
> > We're already reading the link status register here to check DLLA so
> > it would be nice. I guess if everything is healthy we're probably already
> > at the maximum speed by this point.
> > 
> > > In the future we might add another tracepoint when we enumerate the
> > > device and know the Vendor/Device ID.
> > 
> > I think we might have someone who would be interested in doing it.
> 
> IIUC, the current hotplug event (or presence event) is enough for Matthew.
> and we would like a new tracepoing for link speed change which reports
> speeds.
> 
> For hotplug event, I plan to send a new version to
> 
> 1. address Bjorn' concerns about event strings by removing its spaces.
> 
> #define PCI_HOTPLUG_EVENT                                                     
> \
>       EM(PCI_HOTPLUG_LINK_UP,                 "PCI_HOTPLUG_LINK_UP")          
> \
>       EM(PCI_HOTPLUG_LINK_DOWN,               "PCI_HOTPLUG_LINK_DOWN")        
> \
>       EM(PCI_HOTPLUG_CARD_PRESENT,            "PCI_HOTPLUG_CARD_PRESENT")     
> \
>       EMe(PCI_HOTPLUG_CARD_NOT_PRESENT,       "PCI_HOTPLUG_CARD_NOT_PRESENT")
> 
> 2. address Ilpo comments by moving pci_hp_event to a common place
> (include/trace/events/pci.h) so that the new comming can also use it.
> 
> For link speed change event (perhaps named as pci_link_event),
> I plan to send a seperate patch, which provides:
> 
>       TP_STRUCT__entry(
>               __string(       port_name,      port_name       )
>               __field(        unsigned char,  cur_bus_speed   )
>               __field(        unsigned char,  max_bus_speed   )
>               __field(        unsigned char,  width           )
>               __field(        unsigned int,   flit_mode       )
>               __field(        unsigned char,  reason          )
>               ),
> 
> The reason field is from Lukas ideas which indicates why the link speed
> changed, e.g. "hotplug", "autonomous", "thermal", "retrain", etc.
> 
> Are you happy with above changes?

Seems good to me.

What do you plan for PCI_HOTPLUG_LINK_UP?  It would be nice to have
the link info there since that's sort of a link speed change itself.

Bjorn

Reply via email to