All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] How do we do user input bitmap properties?
@ 2019-04-18  9:28 ` Andrew Jones
  0 siblings, 0 replies; 45+ messages in thread
From: Andrew Jones @ 2019-04-18  9:28 UTC (permalink / raw)
  To: qemu-devel; +Cc: armbru, dgilbert, peter.maydell, Dave.Martin, imammedo

Hi all,

First some background:

For the userspace side of AArch64 guest SVE support we need to
expose KVM's allowed vector lengths bitmap to the user and allow
the user to choose a subset of that bitmap. Since bitmaps are a
bit awkward to work with then we'll likely want to expose it as
an array of vector lengths instead. Also, assuming we want to
expose the lengths as number-of-quadwords (quadword == 128 bits
for AArch64 and vector lengths must be multiples of quadwords)
rather than number-of-bits, then an example array (which will
always be a sequence) might be

 [ 8, 16, 32 ]

The user may choose a subsequence, but only through truncation,
i.e. [ 8, 32 ] is not valid, but [ 8, 16 ] is.

Furthermore, different hosts may support different sequences
which have the same maximum. For example, if the above sequence
is for Host_A, then Host_B could be

 [ 8, 16, 24, 32 ]

The host must support all lengths in the sequence, which means
that while Host_A supports 32, since it doesn't support 24 and
we can only truncate sequences, we must use either [ 8 ] or
[ 8, 16 ] for a compatible sequence if we intend to migrate
between the hosts.

Now to the $SUBJECT question:

My feeling is that we should require the sequence to be
provided on the command line as a cpu property. Something
like

  -cpu host,sve-vl-list=8:16

(I chose ':' for the delimiter because ',' can't work, but
if there's a better choice, then that's fine by me.)

Afaict a property list like this will require a new parser,
which feels a bit funny since it seems we should already
have support for this type of thing somewhere in QEMU. So,
the question is: do we? I see we have array properties, but
I don't believe that works with the command line. Should we
only use QMP for this? We already want some QMP in order to
query the supported vector lengths. Maybe we should use QMP
to set the selection too? But then what about command line
support for developers? And if the property is on the command
line then we don't have to add it to the migration stream.

Thanks,
drew

^ permalink raw reply	[flat|nested] 45+ messages in thread

end of thread, other threads:[~2019-05-27 19:00 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-18  9:28 [Qemu-devel] How do we do user input bitmap properties? Andrew Jones
2019-04-18  9:28 ` Andrew Jones
2019-04-18  9:46 ` Andrew Jones
2019-04-18  9:46   ` Andrew Jones
2019-04-18 10:52   ` Dave Martin
2019-04-18 10:52     ` Dave Martin
2019-04-18 11:28     ` Andrew Jones
2019-04-18 11:28       ` Andrew Jones
2019-04-18 14:03       ` Dave Martin
2019-04-18 14:03         ` Dave Martin
2019-04-18 14:43         ` Andrew Jones
2019-04-18 14:43           ` Andrew Jones
2019-04-18 14:46           ` Dave Martin
2019-04-18 14:46             ` Dave Martin
2019-04-18 14:57           ` Dr. David Alan Gilbert
2019-04-18 14:57             ` Dr. David Alan Gilbert
2019-04-18 11:26 ` Daniel P. Berrangé
2019-04-18 11:26   ` Daniel P. Berrangé
2019-04-18 15:09   ` Andrew Jones
2019-04-18 15:09     ` Andrew Jones
2019-04-18 17:48   ` Markus Armbruster
2019-04-18 17:48     ` Markus Armbruster
2019-05-13 18:42     ` Andrew Jones
2019-05-14  4:54       ` Markus Armbruster
2019-05-14  9:02         ` Andrew Jones
2019-05-14 13:32           ` Markus Armbruster
2019-05-15  8:15             ` Andrew Jones
2019-05-15 10:53               ` Dave Martin
2019-05-15 10:59                 ` Dr. David Alan Gilbert
2019-05-14 14:48           ` Igor Mammedov
2019-05-15  8:18             ` Andrew Jones
2019-05-15 10:52               ` Igor Mammedov
2019-05-15 11:54                 ` Andrew Jones
2019-05-23  8:35                   ` Andrea Bolognani
2019-05-24 18:24                     ` Eduardo Habkost
2019-05-27 16:29                       ` Andrea Bolognani
2019-05-27 18:59                         ` Eduardo Habkost
2019-05-15 11:00               ` Dave Martin
2019-05-15 11:09                 ` Dr. David Alan Gilbert
2019-05-15 12:51                   ` Dave Martin
2019-05-15 11:42                 ` Andrew Jones
2019-05-15 12:50                   ` Dave Martin
2019-05-14 15:28         ` Dave Martin
2019-04-19  0:07 ` Laszlo Ersek
2019-04-19  0:07   ` Laszlo Ersek

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.