On Fri, Apr 22, 2022 at 03:30:46PM -0500, Eric Blake wrote: > On Thu, Apr 21, 2022 at 02:27:55PM -0500, Eric Blake wrote: > > On Thu, Apr 21, 2022 at 06:50:48PM +0200, Dirk Müller wrote: > > > Change --help output for aio option to only list the aio backend options > > > that > > > are actually available. io_uring is an optional, linux only backend > > > option so hide it for cases where it isn't there. > > > > As pointed out by Dan, this commit message is not quite accurate. It > > hides only one of the two conditional options, but 'native' is also a > > Linux-only optional backend (CONFIG_LINUX_AIO). > > Stepping back a bit - we already said that making --help > machine-parseable is a non-goal, and so the intent of this patch is > for human readers. But adding an #ifdef ladder to show all 4 possible > combinations gets hairy; adding another option turns it into 8 > combinations. Is there a better way > > What if we just document ALL strings possible in at least one build > (no #ifdef ladder in the help text), but add --aio=help as a way to do > a runtime list of which aio modes are understood by THIS build? It > would match how we have --device=help for qemu proper, and may even be > able to reuse some of that framework code (for parsing out when help > is requested).
Did you literally mean '--aio=help' ? 'aio' is just an option for disks, and I don't think we want new top levelk options. So would have to be '-drive ....,aio=help', or '--blockdev ....aio=help' the latter gets tricky with nested json syntax though, so not sure it is nicer. With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|