Re: [Xen-devel] [PATCH] Xen/pciback: Implement PCI slot or bus reset with 'do_flr' SysFS attribute

From: Konrad Rzeszutek Wilk
Date: Wed Nov 29 2017 - 14:26:43 EST


On Wed, Nov 29, 2017 at 09:40:20AM -0700, Jan Beulich wrote:
> >>> On 29.11.17 at 17:29, <konrad.wilk@xxxxxxxxxx> wrote:
> > On Wed, Nov 29, 2017 at 08:35:33AM -0700, Jan Beulich wrote:
> >> >>> On 29.11.17 at 16:08, <govinda.tatti@xxxxxxxxxx> wrote:
> >> > On 11/9/2017 2:28 AM, Jan Beulich wrote:
> >> >>>>> On 08.11.17 at 16:44, <govinda.tatti@xxxxxxxxxx> wrote:
> >> >>> On 11/7/2017 8:40 AM, Jan Beulich wrote:
> >> >>>>>>> On 06.11.17 at 18:48, <Govinda.Tatti@xxxxxxxxxx> wrote:
> >> >>>>> --- a/Documentation/ABI/testing/sysfs-driver-pciback
> >> >>>>> +++ b/Documentation/ABI/testing/sysfs-driver-pciback
> >> >>>>> @@ -11,3 +11,15 @@ Description:
> >> >>>>> #echo 00:19.0-E0:2:FF >
> > /sys/bus/pci/drivers/pciback/quirks
> >> >>>>> will allow the guest to read and write to the
> > configuration
> >> >>>>> register 0x0E.
> >> >>>>> +
> >> >>>>> +What: /sys/bus/pci/drivers/pciback/do_flr
> >> >>>>> +Date: Nov 2017
> >> >>>>> +KernelVersion: 4.15
> >> >>>>> +Contact: xen-devel@xxxxxxxxxxxxxxxxxxxx
> >> >>>>> +Description:
> >> >>>>> + An option to perform a slot or bus reset when a PCI device
> >> >>>>> + is owned by Xen PCI backend. Writing a string of DDDD:BB:DD.F
> >> >>>>> + will cause the pciback driver to perform a slot or bus reset
> >> >>>>> + if the device supports it. It also checks to make sure that
> >> >>>>> + all of the devices under the bridge are owned by Xen PCI
> >> >>>>> + backend.
> >> >>>> Why do you name this "do_flr" when you don't even try FLR, but
> >> >>>> go to slot or then bus reset right away.
> >> >>> Yes, I agree but xen toolstack has already been modified to
> >> >>> consume"do_flr" attribute. Hence, we are using the
> >> >>> function that matches with sysfs attribute.
> >> >> That's not a valid reason imo: Right now the driver doesn't expose
> >> >> such an attribute, so if the tool stack was trying to use it, it would
> >> >> not do what is intended at present anyway (i.e. the code could at
> >> >> best be called dead).
> >> > Sure, we can consider renaming "do_flr" attribute to "pci reset" or "bus
> >> > reset".
> >> > Please let me knowyour preference.
> >>
> >> Well, that's more a question to Konrad as the maintainer.
> >> Personally I'd prefer just "reset", as "pci" is redundant and "bus"
> >
> > Can't do 'reset'.
>
> Why?

B/c I forgot that this attribute is not per device, but on the module sub-directory:

/sys/bus/pci/drivers/pciback/do_flr

It can be indeed called 'reset'.

>
> >> doesn't cover the slot variant.
> >
> > 'bus_reset' sounds lovely?
>
> Lovely sounding or not, it may end up misleading, and even more so
> if - like asked for - FLR would be tried first.

Fair enough. Reset should work then.