Re: [PATCH] virtio-net: Read MAC only after initializing MSI-X

From: Sasha Levin
Date: Wed Sep 28 2011 - 14:31:47 EST


On Mon, 2011-09-19 at 17:19 +0930, Rusty Russell wrote:
> On Mon, 19 Sep 2011 09:01:50 +0300, "Michael S. Tsirkin" <mst@xxxxxxxxxx> wrote:
> > On Mon, Sep 19, 2011 at 01:05:17PM +0930, Rusty Russell wrote:
> > > On Sat, 20 Aug 2011 23:00:44 +0300, "Michael S. Tsirkin" <mst@xxxxxxxxxx> wrote:
> > > > On Fri, Aug 19, 2011 at 07:33:07PM +0300, Sasha Levin wrote:
> > > > > Maybe this is better solved by copying the way it was done in PCI itself
> > > > > with capability linked list?
> > > >
> > > > There are any number of ways to lay out the structure. I went for what
> > > > seemed a simplest one. For MSI-X the train has left the station. We
> > > > can probably still tweak where the high 32 bit features
> > > > for 64 bit features are. No idea if it's worth it.
> > >
> > > Sorry, this has been in the back of my mind. I think it's a good idea;
> > > can we use the capability linked list for pre-device specific stuff from
> > > now on?
> > >
> > > Thanks,
> > > Rusty.
> >
> > Do we even want capability bits then?
> > We can give each capability an ack flag ...
>
> We could have, and if I'd known PCI when I designed virtio I might have.
>
> But it's not easy now to map structure offsets to that scheme, and we
> can't really force such a change on the non-PCI users. So I'd say we
> should only do it for the non-device-specific options. ie. we'll still
> have the MSI-X case move the device-specific config, but we'll use a
> linked list from now on, eg. for the next 32 features bits...
>
> Thoughts?
> Rusty.

What if we create a capability list but place it in the virtio-pci
config space instead of the PCI space?

It'll work fine with non-PCI users and would leave MSI-X as the only
thing that changes offsets (and we could probably deprecate and remove
it at some point in the future).

--

Sasha.

--
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/