Re: [RFC PATCH] PCI: export MSI mode using attributes, not kobjects
From: Neil Horman
Date: Fri Nov 01 2013 - 22:10:21 EST
On Fri, Nov 01, 2013 at 05:40:02PM -0600, Bjorn Helgaas wrote:
> On Tue, Oct 29, 2013 at 3:46 PM, Greg Kroah-Hartman
> <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> > From: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> > The PCI MSI sysfs code is a mess with kobjects for things that don't
> > really need to be kobjects. This patch creates attributes dynamically
> > for the MSI interrupts instead of using kobjects.
> > Note, this does not delete the existing sysfs MSI code, but puts the
> > attributes under a "msi_irqs_2" directory for testing / example.
> > Also note, this removes a directory from the current MSI interrupt sysfs
> > code:
> > old MSI kobjects:
> > pci_device
> > âââ msi_irqs
> > âââ 40
> > âââ mode
> > new MSI attributes:
> > pci_device
> > âââ msi_irqs_2
> > âââ 40
> > As there was only one file "mode" with the kobject model, the interrupt
> > number is now a file that returns the "mode" of the interrupt (msi vs.
> > msix).
> > Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> > ---
> > Bjorn, I can make up a patch that rips out the existing kobject code
> > here, but I figured this patch would make things easier to follow
> > instead of having to dig through the removed logic at the same time.
> > I'll clean up the error handling path for the create attribute logic as
> > well, this was just a proof of concept that this could be done.
> > Do you think that anyone cares about the current mode files in sysfs to
> > move things in this manner?
> I like this a lot better than trying to fix all the holes in the
> current kobject code.
> I have no idea who, if anybody, cares about the "mode" files. I
> assume there's a way to create the "mode" files with attributes, too?
> If so, we could replicate the existing structure with one patch, and
> simplify it with a second patch, so it would be easier to revert the
> directory change while keeping the fix.
FWIW, I created the mode files because I wanted to be able to add other
attributes to an irq in the future, in case we needed them. I think time has
show that additional attributes seem unnecessecary, so it makes sense to me to
just include the mode attribute in the irq number file
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/