On Wed, Jul 15, 2020 at 3:57 AM Philippe Mathieu-Daudé <f4...@amsat.org> wrote: > > On 7/15/20 11:00 AM, Markus Armbruster wrote: > > Now my point. Why first make up user configuration, then use that to > > create a BlockBackend, when you could just go ahead and create the > > BlockBackend? > > CLI issue mostly. > > We can solve it similarly to the recent "sdcard: Do not allow invalid SD > card sizes" patch: > > if (!dinfo) { > error_setg(errp, "Missing SPI flash drive"); > error_append_hint(errp, "You can use a dummy drive using:\n"); > error_append_hint(errp, "-drive if=mtd,driver=null-co," > "read-ones=on,size=64M\n); > return; > } > > having npcm7xx_connect_flash() taking an Error* argument, > and MachineClass::init() call it with &error_fatal.
Erroring out if the user specifies a configuration that can't possibly boot sounds good to me. Better than trying to come up with defaults that are still not going to result in a bootable system. For testing recovery paths, I think it makes sense to explicitly specify a null device as you suggest. Havard