-
qapi-rs-tmp065f4b81 · ·
-
machine-next-pull-request5a312b0c · ·
machine + QOM queue, 2020-10-14 * Register some properties as class properties (Eduardo Habkost) * authz-list-file: Fix crash when filename is not set (Eduardo Habkost) * can-host-socketcan: Fix crash when 'if' option is not set (Eduardo Habkost)
-
-
qga-ssh-add-v3a7cf94d0 · ·
qemu-ga: add ssh-{get,add,remove}-authorized-keys Hi Add new commands to help modify a user .ssh/authorized_keys. Although it's possible already to modify the authorized_keys files via file-{read,write} or exec, the commands are often denied by default, and the logic is left to the client. Let's add specific commands for this job. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1885332 v3: - add "qga: add ssh-get-authorized-keys" & "qga: add *reset argument to ssh-add-authorized-keys" patches - add some fixup! patches to be squashed after review, adding 'if' - added the reviewed-by - misc doc improvements v2: - misc doc improvements - various warnings fixes - fix build for !unix - added reviewed-by
-
qemu-kvm-4.2.0-35.module+el8.4.0+8453+f5da6c508cf47b53 · ·
Update to qemu-kvm-4.2.0-35.module+el8.4.0+8453+f5da6c50
-
qapi-if-v1a5f10b3c · ·
qapi: untie 'if' conditions from C preprocessor Hi, This series makes the 'if' conditions less liberal, by formalizing a simple expression tree based on bare boolean logic of configure option identifiers. (this will allow to express conditions in Rust in my QAPI-Rust PoC series, but it is worth a standalone post) This is based on John Snow QAPI cleanup branch: https://gitlab.com/jsnow/qemu/-/tree/python-qapi-cleanup-pt6 thanks
-
x86-next-pull-request3e6a015c · ·
x86 queue, 2020-10-15 Cleanups: * Drop x86_cpu_get_supported_feature_word() forward declaration (Vitaly Kuznetsov) * Delete kvm_allows_irq0_override() (Eduardo Habkost) * Correct documentation of kvm_irqchip_*() (Eduardo Habkost) * Fix FEATURE_HYPERV_EDX value in hyperv_passthrough case (Zhenyu Wang) Deprecation: * CPU model deprecation API (Robert Hoo) * Mark Icelake-Client CPU models deprecated (Robert Hoo) Bug fixes: * Remove core_id assert check in CPUID 0x8000001E (Babu Moger)
-
-
qemu-kvm-4.2.0-29.module+el8.2.1+8442+7a3eadf7.515bf7a09 · ·
Update to qemu-kvm-4.2.0-29.module+el8.2.1+8442+7a3eadf7.5
-
qemu-kvm-5.1.0-14.module+el8.3.0+8438+644aff694320b13f · ·
Update to qemu-kvm-5.1.0-14.module+el8.3.0+8438+644aff69
-
qga-ssh-add-v11d8e7b7f · ·
qemu-ga: add ssh-{add,remove}-authorized-keys Hi, Add two new commands to help modify ~/.ssh/authorized_keys. Although it's possible already to modify the authorized_keys files via file-{read,write} or exec, the commands are often denied by default, and the logic is left to the client. Let's add specific commands for this job. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1885332
-
qapi-rs-v159e7bbc1 · ·
Rust binding for QAPI (qemu-ga only, for now) Hi, Among the QEMU developers, there is a desire to use Rust. (see previous thread from Stefan "Why QEMU should move from C to Rust", the rust-vmm related projects and other experiments). Thanks to our QAPI type system and the associate code generator, it is relatively straightforward to create Rust bindings for the generated C types (also called sys/ffi binding) and functions. (rust-bindgen could probably do a similar job, but it would probably bring other issues). This provides an important internal API already. Slightly more complicated is to expose a Rust API for those, and provide convenient conversions C<->Rust. Taking inspiration from glib-rs binding, I implemented a simplified version of the FromGlib/ToGlib traits, with simpler ownership model, sufficient for QAPI needs. The usage is relatively simple: - from_qemu_none(ptr: *const sys::P) -> T Return a Rust type T for a const ffi pointer P. - from_qemu_full(ptr: *mut sys::P) -> T Return a Rust type T for a ffi pointer P, taking ownership. - T::to_qemu_none() -> Stash<P> Returns a borrowed ffi pointer P (using a Stash to destroy "glue" storage data, if any). - T::to_qemu_full() -> P Returns a ffi pointer P. (P resources are leaked/passed to C/ffi) With those traits, it's relatively easy to implement the QMP callbacks. With enough interest, we could eventually add new commands in Rust, and start rewriting QGA in Rust, as it is a simple service. See qga/qmp/ for some examples. QEMU would be the next obvious target. My biggest pain-point right now is the handling of 'if' conditions. I tried different approaches, but none of them are satisfying. I am planning to tackle this next again, along with full QEMU API schema support and hopefully some test integration. v2: - split the original patch in smaller patches and more digestable form - dropped the DBus interface experiment from this series - various build-sys improvements, new configure options --with-rust(-target) - various attempts at better meson integration, finally satisfied enough with the current solution, which handles getting link flags from Rust sanely. (more meson stuff to come to handle config-host/features mapping etc). - rebased, QGA QMP now uses unions, added support for it. - start a common crate (which re-surfaced issues with foreign types and traits, worked around with a NewPtr wrapper) - explicit errors when ifcond are presents (after various unsucessful attempts, I will try to tackle it in v3) - mingw cross compilation support - some attempts to add it to CI - actually implement {get,set}-vcpus - vendor the external crates
-
screendump-co-v1d9945668 · ·
console: make QMP screendump use coroutine Hi, Thanks to recent work by Kevin, it becomes possible to run HMP/QMP commands in a coroutine. The screendump command is a good target, as it requires to re-enter the main-loop in ordre to flush the display, and write to file in a non-blocking way. Despite the flush, the dump may still have glitches. The graphic device may perform some operations during the write on the same framebuffer. Doing a memory copy could help, but it would also create a number of other issues. Keeping the BQL would defeat a number of advantages of using a coroutine. Afaik, there is no mechanism to "freeze" the device either (and this could also have bad consequences anyway). Good enough?
-
qemu-kvm-5.1.0-13.module+el8.3.0+8382+afc3bbea9563a08c · ·
Update to qemu-kvm-5.1.0-13.module+el8.3.0+8382+afc3bbea