qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] pci: allow 32-bit PCI IO accesses to pass throu


From: Mark Cave-Ayland
Subject: Re: [Qemu-devel] [PATCH] pci: allow 32-bit PCI IO accesses to pass through the PCI bridge
Date: Sun, 24 Sep 2017 17:56:00 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0

On 24/09/17 16:43, Marcel Apfelbaum wrote:

> Hi Mark,
> 
>>> Based on the commit message, I assume this change is guest-visible. If
>>> so, should it be made dependent on a compat property, so that it doesn't
>>> cause problems with migration?
>>
>> In order to enable 32-bit IO accesses the PCI bridge needs to set bit 0
>> in the IO_LIMIT and IO_BASE registers - this bit is read-only to guests,
>> so unless a PCI bridge has this bit set then it's impossible for this
>> change to be guest visible.
>>
>> I did a grep for PCI_IO_RANGE_TYPE_32 and didn't see any existing users
>> (other than an upcoming patchset from me!), so this combined with the
>> fact that without this patch the feature is broken makes me think that I
>> am the first user and so existing guests won't have a problem.
>>
> 
> (adding Dave for his expertise)
> 
> Do you know how the migration code will behave if it will have
> a 65k address space on source and MAX UINT on destination?
> (and the other way around for rolling back)

Thanks Marcel. I should add that qemu-system-sparc64 isn't currently
migratable anyhow, so if with my upcoming patch qemu-system-sparc64 is
still the only user of PCI_IO_RANGE_TYPE_32 then that won't cause me any
particular issue trying to migrate to earlier versions.

Also in my local tests without the patch applied, the guest always
panics during boot trying to access the IO space above 64K so I can't
see there's a way that an older guest could boot in order to migrate
forward either.


ATB,

Mark.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]