> On May 4, 2022, at 7:45 AM, Markus Armbruster <arm...@redhat.com> wrote: > > Jagannathan Raman <jag.ra...@oracle.com> writes: > >> Define vfio-user object which is remote process server for QEMU. Setup >> object initialization functions and properties necessary to instantiate >> the object >> >> Signed-off-by: Elena Ufimtseva <elena.ufimts...@oracle.com> >> Signed-off-by: John G Johnson <john.g.john...@oracle.com> >> Signed-off-by: Jagannathan Raman <jag.ra...@oracle.com> >> --- >> qapi/qom.json | 20 +++- >> include/hw/remote/machine.h | 2 + >> hw/remote/machine.c | 27 +++++ >> hw/remote/vfio-user-obj.c | 210 ++++++++++++++++++++++++++++++++++++ >> MAINTAINERS | 1 + >> hw/remote/meson.build | 1 + >> hw/remote/trace-events | 3 + >> 7 files changed, 262 insertions(+), 2 deletions(-) >> create mode 100644 hw/remote/vfio-user-obj.c >> >> diff --git a/qapi/qom.json b/qapi/qom.json >> index eeb5395ff3..582def0522 100644 >> --- a/qapi/qom.json >> +++ b/qapi/qom.json >> @@ -703,6 +703,20 @@ >> { 'struct': 'RemoteObjectProperties', >> 'data': { 'fd': 'str', 'devid': 'str' } } >> >> +## >> +# @VfioUserServerProperties: >> +# >> +# Properties for x-vfio-user-server objects. >> +# >> +# @socket: socket to be used by the libvfio-user library >> +# >> +# @device: the id of the device to be emulated at the server > > Suggest "the ID", because "id" is not a word. > > What kind of ID is this? The kind set with -device id=...?
Yes, it’s the “id” sub-option of the “-device” option. Will update this comment. Thank you! -- Jag > >> +# >> +# Since: 7.1 >> +## >> +{ 'struct': 'VfioUserServerProperties', >> + 'data': { 'socket': 'SocketAddress', 'device': 'str' } } >> + >> ## >> # @RngProperties: >> # >> @@ -842,7 +856,8 @@ >> 'tls-creds-psk', >> 'tls-creds-x509', >> 'tls-cipher-suites', >> - { 'name': 'x-remote-object', 'features': [ 'unstable' ] } >> + { 'name': 'x-remote-object', 'features': [ 'unstable' ] }, >> + { 'name': 'x-vfio-user-server', 'features': [ 'unstable' ] } >> ] } >> >> ## >> @@ -905,7 +920,8 @@ >> 'tls-creds-psk': 'TlsCredsPskProperties', >> 'tls-creds-x509': 'TlsCredsX509Properties', >> 'tls-cipher-suites': 'TlsCredsProperties', >> - 'x-remote-object': 'RemoteObjectProperties' >> + 'x-remote-object': 'RemoteObjectProperties', >> + 'x-vfio-user-server': 'VfioUserServerProperties' >> } } >> >> ## > > [...]