On Wed, Feb 27, 2019 at 02:56:52PM +0100, Cornelia Huck wrote:
> On Mon, 25 Feb 2019 18:45:06 +0000
> "Dr. David Alan Gilbert" <> wrote:
>
> > * Stefan Hajnoczi () wrote:
> > > On Fri, Feb 22, 2019 at 11:54:33AM +0000, Dr. David Alan Gilbert (git) wrote:
>
> > > > + region, as defined by the device for the region selected by
> > > > + the \field{SHMId} register. Reading from a non-existent
> > > > + region (i.e. where the ID written to \field{SHMId} is unused)
> > > > + results in a length of -1.
> > >
> > > -1 is used to indicate the absence of a region, does 0 have a meaning?
> >
> > No, I'd be happy to switch; although this does lead to another question;
> > what happens on an older virtio-mmio implementation when a device
> > tries to read these registers to detect if the region exists?
>
> You probably mean that the driver is reading, right? Not sure if we
> ever specified what happens if a driver interacts with a register that
> was not specified when the device was written... maybe we need to bump
> the device version number? But that would break old drivers if they get
> a 3 but expected a 2.
I see the rationale for using 0xffffffff since that's what loads produce
when there is nothing at the memory address. It would be good to
document that :).
Incrementing the version as Cornelia suggested is cleaner though, if
existing drivers handle that gracefully. Or maybe a transport feature
bit (are they in short supply?).
Stefan