Re: [PATCH 00/12] single-binary: link ARM and RISC-V into qemu-system
Daniel P. Berrangé <[email protected]>
| Newsgroups | org.nongnu.qemu-riscv,org.nongnu.qemu-arm,org.nongnu.qemu-devel |
|---|---|
| Message-ID | <[email protected]> |
On Wed, Aug 26, 2026 at 02:40:46PM +0100, Mark Cave-Ayland wrote: > On 26/08/2026 13:32, Daniel P. Berrangé wrote: > > > On Sun, Aug 23, 2026 at 11:07:18PM +0800, Yonggang Luo wrote: > > > > snip, > > > > ..to comment just on the end result for now.. > > > > Specifically > > > > * -nodefaults should become the default > > * All CLI args should be processed in order from > > the command line, so we eliminate the nonsense > > where we process some -object, then -chardev, > > then more -object through hand crafted deps > > > > * No default machine type > > I would even go as far as to suggest that we should make modules mandatory > for qemu-system, so that devices can be loaded upon demand during machine > construction to help keep the size down. I think it is worth considering whether modules could be mandatory unconditionally for everything. We don't need to block on this decision though. > I'll leave whether that is through dependency tracking or via an explicit > load directive for someone else to decide :) > > * Drop all legacy syntax so we only have a single > > QAPI based way of configuring. > > eg drop -hda, -hdb, -cdrom, -drive, etc > > only keeping -blockdev > > eg drop -mon, -monitor, -qmp, etc only > > keeping -object > > The only problem with this is that I often get a lot of complaints that QEMU > command lines are complicated from retro folks who just want to run their > favourite old games. Why would they want to come up with a long-winded > -drive command line when they can just use -hda instead? -blockdev isn't as hard as it appears - we make it harder than it ought to be by not documenting it well and carrying on using -hda/-drive in examples so users have little good guidance. Then when people go beyond the needs that -hda can service, they have an worse experiance as a result. Having many different ways to do the same thing and not getting rid of enough outdated/obsoleted stuff is what has always created confusion for QEMU. Also why it is -hda when it is created a SCSI disk (sda), or a VirtIO disk (xda) or a SSD (mmcblk0), or the guest is calling it C:\ :-) Yes, -hda is simple, but it is also nonsensical historical cruft. All the various "convenience" args are also something that could be provided by a higher level launcher script that translates to the canonical syntax, even if they're not in qemu-system itself. With regards, Daniel -- |: https://berrange.com ~~ https://hachyderm.io/@berrange :| |: https://libvirt.org ~~ https://entangle-photo.org :| |: https://pixelfed.art/berrange ~~ https://fstop138.berrange.com :|