Re: [PATCH 1/1] x86-64: introduce struct pci_sysdata to facilitate sharing of ->sysdata

From: Muli Ben-Yehuda
Date: Thu Jul 12 2007 - 05:17:18 EST


On Thu, Jul 12, 2007 at 05:13:05PM +0800, Arjan van de Ven wrote:

> > > I very much start to dislike the untyped "sysdata"... I much
> > > rather have separate fields for the different uses (like a IOMMU
> > > field) that aren't going to share ever. Possibly even typed, but
> > > for IOMMU that may be tricky....
> >
> > Could you elaborate on what you mean here?
> >
> > If you mean instead of hanging a pci_sysdata off of struct
> > pci_bus, hang a 'void *iommu' and an 'int node' directly off of
> > the pci_bus,
>
> yes that is what I mean.
>
> > that looks like a lot of churn (most architecture use sysdata as
> > an opaque pointer to an arch specific structure) and bloat (you
> > would
>
> it's only a few bytes per pci device/bus. not all that bad for
> having something which involves splitting a shared pointer into
> logical users.
>
> (and heck, if you really really are worried we could make it a union
> for some of them, although that defeats the "split is safer"
> benefit)

It's not just bloat and code churn, I also don't like teaching every
architecture about every other architecture's use of sysdata, which is
inherently architecture specific. I think the benefits of modularity
here outweigh the benefits of a little type safety.

Cheers,
Muli
-
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/