Re: [PATCH 037/190] Revert "RDMA/core: Fix several reference count leaks."

From: Greg Kroah-Hartman
Date: Thu Apr 29 2021 - 09:38:58 EST


On Wed, Apr 28, 2021 at 10:00:44AM -0300, Jason Gunthorpe wrote:
> On Wed, Apr 28, 2021 at 02:23:40PM +0200, Greg Kroah-Hartman wrote:
>
> > > We've talked about this specifically before:
> > >
> > > http://lore.kernel.org/r/20210331170720.GY2710221@xxxxxxxx
> > >
> > > I still don't understand what you mean by "udev sees it properly", as
> > > above, all the tests I thought of look OK.
> >
> > Can you query the udev database to see the attribute values?
>
> It appears so unless I misunderstand your ask:
>
> $ udevadm info -a /sys/class/infiniband/ibp0s9
> ATTR{ports/1/cm_rx_duplicates/dreq}=="0"

That works? Nice, I didn't think it did.

But what about the uevent that fired for "1", isn't there attibutes
assigned to it that udev ignores?

> > As you say, it's uABI for now, so odds are nothing can be changed. It's
> > just no fun for when other subsystems want to do this same thing, they
> > point at this code and say "see, they did it!" :)
>
> Are you sure we shouldn't just formally support this?
>
> What is the exact technical blocker?

Placing a raw kobject below a struct device breaks the "device tree"
model. You now have devices with an arbritrary number of levels deep
set of attributes, making it impossible to determine all attributes for
a device in a simple way.

thanks,

greg k-h