On Wed, Mar 8, 2023 at 8:25 PM Michael S. Tsirkin <m...@redhat.com> wrote: > > On Wed, Mar 08, 2023 at 01:21:52PM +0100, Philippe Mathieu-Daudé wrote: > > On 8/3/23 13:17, Michael S. Tsirkin wrote: > > > On Wed, Mar 08, 2023 at 08:40:42AM +0100, Philippe Mathieu-Daudé wrote: > > > > On 8/3/23 07:56, Jason Wang wrote: > > > > > On Wed, Mar 8, 2023 at 4:43 AM Philippe Mathieu-Daudé > > > > > <phi...@linaro.org> wrote: > > > > > > > > > > > > On 7/3/23 18:01, Peter Maydell wrote: > > > > > > > On Tue, 7 Mar 2023 at 07:08, Jason Wang <jasow...@redhat.com> > > > > > > > wrote: > > > > > > > > > > > > > > > > The following changes since commit > > > > > > > > 817fd33836e73812df2f1907612b57750fcb9491: > > > > > > > > > > > > > > > > Merge tag 'audio-pull-request' of > > > > > > > > https://gitlab.com/marcandre.lureau/qemu into staging > > > > > > > > (2023-03-06 14:06:06 +0000) > > > > > > > > > > > > > > > > are available in the git repository at: > > > > > > > > > > > > > > > > https://github.com/jasowang/qemu.git tags/net-pull-request > > > > > > > > > > > > > > > > for you to fetch changes up to > > > > > > > > c19b566a3898510ec2b3e881b3fb78614b240414: > > > > > > > > > > > > > > > > hw/net/eepro100: Replace DO_UPCAST(EEPRO100State) by > > > > > > > > EEPRO100() (2023-03-07 14:55:39 +0800) > > > > > > > > > > > > > > > > ---------------------------------------------------------------- > > > > > > > > > > > > > build-oss-fuzz failed on something involving fuzzing eepro100: > > > > > > > https://gitlab.com/qemu-project/qemu/-/jobs/3889073821 > > > > > > Jason, please drop my patches. I'll look at that failure. > > > > > > > > Before "hw/net/eepro100: Convert reset handler to DeviceReset", > > > > e100_pci_reset() is only called once from DeviceRealize _before_ > > > > the device is realized. > > > > > > > > After, 1/ it can be called multiple times and 2/ it seems to do > > > > stuffs that really belong to DeviceRealize (should be called once), > > > > in particular pci_add_capability(). > > > > > > > > I *think* it should be illegal to call pci_add_capability() _after_ > > > > a device is realized. Auditing pci_add_capability(), there is only > > > > one other use before realize: amdvi_sysbus_realize() in > > > > hw/i386/amd_iommu.c. > > > > > > Calling pci_add_capability when VM is running is likely to confuse > > > guests, yes. > > > > Thanks for confirming. Similar pattern: msi_init(). > > > > While trying to fix that in hw/i386/amd_iommu.c I realized this device > > isn't in a good shape, almost unmaintained: 2 bugfixes in since 7 years, > > the other commits are generic API cleanups.
Last time I tried AMD vIOMMU it didn't even boot. We need to check if anyone can maintain that driver (adding Wei and Peter). > I'll post the series and > > we can discuss that there. > > Absolutely. A mix of VTD or for that matter virtio iommu and AMD CPUs > seems to work well enough that most people don't bother. > I vaguely remember spec review showed some things were hard > to support correctly with shadowing, but I don't remember > the detail Something like caching mode otherwise we need to trap the page table modification via userfaultfd? > (and our shadowing with VTD only works because > it matches what drivers are doing). I think not, VTD has a caching mode that is designed to be friendly for virtualization/emulation (mentioned in the spec). But it would be replaced by hardware accelerated one soon. Thanks > > -- > MST >