On 9/21/20 2:24 PM, Dr. David Alan Gilbert wrote: > * Markus Armbruster (arm...@redhat.com) wrote: >> Philippe Mathieu-Daudé <phi...@redhat.com> writes: >> >>> +Paolo & Kevin. >>> >>> On 9/21/20 10:40 AM, Markus Armbruster wrote: >>>> Philippe Mathieu-Daudé <f4...@amsat.org> writes: >>>> >>>>> As it is legal to WRITE/ERASE the address/block 0, >>>>> change the value of this definition to an illegal >>>>> address: UINT32_MAX. >>>>> >>>>> Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> >>>>> --- >>>>> Cc: Dr. David Alan Gilbert <dgilb...@redhat.com> >>>>> Cc: Markus Armbruster <arm...@redhat.com> >>>>> >>>>> Same problem I had with the pflash device last year... >>>>> This break migration :( >>>>> What is the best way to do this? >>>> >>>> Remind me: did we solve the problem with pflash, and if yes, how? >>> >>> No we can't. The best I could do is add a comment and as this >>> is not fixable. See commit aba53a12bd5: ("hw/block/pflash_cfi01: >>> Document use of non-CFI compliant command '0x00'"). >>> >>> I now consider the device in maintenance-only >>> mode and won't add any new features. >>> >>> I started working on a new implementation, hoping it can be a >>> drop in replacement. Laszlo still has hope that QEMU pflash >>> device will support sector locking so firmware developers could >>> test upgrading fw in VMs. >>> >>> Back to the SDcard, it might be less critical, so a migration >>> breaking change might be acceptable. I'm only aware of Paolo >>> and Kevin using this device for testing. Not sure of its >>> importance in production. >> >> Neither am I. >> >> Which machine types include this device by default? > > To me it looks like it's some of the ARM boards.
My worry is TYPE_PCI_SDHCI ("sdhci-pci"): k->vendor_id = PCI_VENDOR_ID_REDHAT; k->device_id = PCI_DEVICE_ID_REDHAT_SDHCI; k->class_id = PCI_CLASS_SYSTEM_SDHCI; config SDHCI_PCI bool default y if PCI_DEVICES > > Dave > >> How can a non-default device be added, and to which machine types? >> >> I gather the fix changes device state incompatibly. Always, or only in >> certain states? I'm asking because if device state remains compatible >> most of the time, we might be able use subsection trickery to keep >> migration working most of the time. Has been done before, I think.