Re: [PATCH] PCI/DOE: Expose the DOE protocols via sysfs

From: Jonathan Cameron
Date: Thu Jul 27 2023 - 04:59:46 EST


On Tue, 25 Jul 2023 18:30:46 +0200
Lukas Wunner <lukas@xxxxxxxxx> wrote:

> On Tue, Jul 25, 2023 at 01:57:55PM +1000, Alistair Francis wrote:
> > The PCIe 6 specification added support for the Data Object Exchange (DOE).
> > When DOE is supported the Discovery Data Object Protocol must be
> > implemented. The protocol allows a requester to obtain information about
> > the other DOE protocols supported by the device.
> >
> > The kernel is already querying the DOE protocols supported and cacheing
> > the values. This patch exposes the values via sysfs. This will allow
> > userspace to determine which DOE protocols are supported by the PCIe
> > device.
>
> Just dumping the list of supported protocols into dmesg might be simpler,
> unless you intend to add mechanisms to actually use certain DOE mailboxes
> from user space or expose the information in lspci. Do have plans for
> either of that or what's the motivation to use sysfs?
>

I can answer this one in rather than waiting for Alastair to see it
(given I was involved in shooting down the earlier proposal :(

At least partly motivated by providing the info for lspci which
I agree with being a useful addition for debug etc.
https://github.com/pciutils/pciutils/pull/152

I can see it would also be useful for things that will poke from
userspace because they aren't expected to run in production (and hence
hopefully don't care about potential races etc). CXL compliance
comes to mind - I don't think we ever want to carry kernel code for that.

Jonathan



> I think I'd rather want everything in doe.c (#ifdef'ed to CONFIG_SYSFS)
> and only make dev_attr_doe_proto public.
>
> Thanks,
>
> Lukas
>