All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/12] Next round of qemu_api patches
@ 2024-12-20 14:29 Paolo Bonzini
  2024-12-20 14:29 ` [PATCH 01/12] rust: qom: add ParentField Paolo Bonzini
                   ` (12 more replies)
  0 siblings, 13 replies; 26+ messages in thread
From: Paolo Bonzini @ 2024-12-20 14:29 UTC (permalink / raw)
  To: qemu-devel; +Cc: zhao1.liu, junjie.mao

This includes:

1) the outcome of reviewing
   https://lore.kernel.org/qemu-devel/20241209123717.99077-1-pbonzini@redhat.com/T/,
   especially with respect to instance_finalize implementation and
   Rust-defined subclasses (patches 1-6)

2) the beginnings of separating instance_init/instance_post_init, making
   the latter take &self (patches 7-9)

3) extracting pl011's logic to convert an integer into an enum into a
   #[derive(TryInto)] procedural macro (patches 10-11)

4) a one-off change that I noticed while reading Cargo documentation
   (patch 12)

Zhao: I have placed these in rust-next, but feel free to ignore them for
your next HPET submission.  I have also included in my tree your test
additions for usage in CI, but I'm not including them here to give you
the opportunity to post them with a commit message and a signed-off-by.
If you don't have time, it's in safe hands. :)

Paolo

Paolo Bonzini (12):
  rust: qom: add ParentField
  rust: add a utility module for compile-time type checks
  rust: macros: check that the first field of a #[derive(Object)] struct
    is a ParentField
  rust: macros: check that #[derive(Object)] requires #[repr(C)]
  rust: qom: automatically use Drop trait to implement instance_finalize
  rust: qom: move device_id to PL011 class side
  rust: pl011: only leave embedded object initialization in
    instance_init
  rust: qom: make INSTANCE_POST_INIT take a shared reference
  rust: qdev: expose inherited methods to subclasses of SysBusDevice
  rust: qemu-api-macros: extend error reporting facility to parse errors
  rust: qemu-api-macros: add automatic TryFrom/TryInto derivation
  rust: hide warnings for subprojects

 rust/hw/char/pl011/src/device.rs              |  79 +++++----
 rust/hw/char/pl011/src/lib.rs                 |  28 +---
 rust/qemu-api-macros/src/lib.rs               | 150 +++++++++++++-----
 rust/qemu-api-macros/src/utils.rs             |  26 +++
 rust/qemu-api/meson.build                     |   1 +
 rust/qemu-api/src/assertions.rs               |  90 +++++++++++
 rust/qemu-api/src/irq.rs                      |   3 +-
 rust/qemu-api/src/lib.rs                      |   1 +
 rust/qemu-api/src/prelude.rs                  |   2 +
 rust/qemu-api/src/qom.rs                      |  77 +++++++--
 rust/qemu-api/src/sysbus.rs                   |  23 ++-
 rust/qemu-api/tests/tests.rs                  |   4 +-
 subprojects/arbitrary-int-1-rs.wrap           |   3 +
 subprojects/bilge-0.2-rs.wrap                 |   3 +
 subprojects/bilge-impl-0.2-rs.wrap            |   3 +
 subprojects/either-1-rs.wrap                  |   3 +
 subprojects/itertools-0.11-rs.wrap            |   3 +
 .../arbitrary-int-1-rs/meson.build            |   1 +
 .../packagefiles/bilge-0.2-rs/meson.build     |   1 +
 .../bilge-impl-0.2-rs/meson.build             |   1 +
 .../packagefiles/either-1-rs/meson.build      |   1 +
 .../itertools-0.11-rs/meson.build             |   1 +
 .../proc-macro-error-1-rs/meson.build         |   1 +
 .../proc-macro-error-attr-1-rs/meson.build    |   1 +
 .../packagefiles/proc-macro2-1-rs/meson.build |   1 +
 .../packagefiles/quote-1-rs/meson.build       |   1 +
 subprojects/packagefiles/syn-2-rs/meson.build |   1 +
 .../unicode-ident-1-rs/meson.build            |   1 +
 subprojects/proc-macro-error-1-rs.wrap        |   3 +
 subprojects/proc-macro-error-attr-1-rs.wrap   |   3 +
 subprojects/proc-macro2-1-rs.wrap             |   3 +
 subprojects/quote-1-rs.wrap                   |   3 +
 subprojects/syn-2-rs.wrap                     |   3 +
 subprojects/unicode-ident-1-rs.wrap           |   3 +
 subprojects/unicode-ident-1-rs/meson.build    |  20 ---
 35 files changed, 402 insertions(+), 146 deletions(-)
 create mode 100644 rust/qemu-api-macros/src/utils.rs
 create mode 100644 rust/qemu-api/src/assertions.rs
 delete mode 100644 subprojects/unicode-ident-1-rs/meson.build

-- 
2.47.1



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

end of thread, other threads:[~2024-12-27  4:27 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-20 14:29 [PATCH 00/12] Next round of qemu_api patches Paolo Bonzini
2024-12-20 14:29 ` [PATCH 01/12] rust: qom: add ParentField Paolo Bonzini
2024-12-25  8:54   ` Zhao Liu
2024-12-20 14:29 ` [PATCH 02/12] rust: add a utility module for compile-time type checks Paolo Bonzini
2024-12-25 16:24   ` Zhao Liu
2024-12-27  4:26     ` Paolo Bonzini
2024-12-20 14:29 ` [PATCH 03/12] rust: macros: check that the first field of a #[derive(Object)] struct is a ParentField Paolo Bonzini
2024-12-25 16:41   ` Zhao Liu
2024-12-20 14:29 ` [PATCH 04/12] rust: macros: check that #[derive(Object)] requires #[repr(C)] Paolo Bonzini
2024-12-25 16:46   ` Zhao Liu
2024-12-20 14:29 ` [PATCH 05/12] rust: qom: automatically use Drop trait to implement instance_finalize Paolo Bonzini
2024-12-20 14:29 ` [PATCH 06/12] rust: qom: move device_id to PL011 class side Paolo Bonzini
2024-12-26  3:07   ` Zhao Liu
2024-12-20 14:29 ` [PATCH 07/12] rust: pl011: only leave embedded object initialization in instance_init Paolo Bonzini
2024-12-26  3:20   ` Zhao Liu
2024-12-20 14:29 ` [PATCH 08/12] rust: qom: make INSTANCE_POST_INIT take a shared reference Paolo Bonzini
2024-12-26  3:29   ` Zhao Liu
2024-12-20 14:29 ` [PATCH 09/12] rust: qdev: expose inherited methods to subclasses of SysBusDevice Paolo Bonzini
2024-12-26  4:47   ` Zhao Liu
2024-12-20 14:29 ` [PATCH 10/12] rust: qemu-api-macros: extend error reporting facility to parse errors Paolo Bonzini
2024-12-26  4:50   ` Zhao Liu
2024-12-20 14:29 ` [PATCH 11/12] rust: qemu-api-macros: add automatic TryFrom/TryInto derivation Paolo Bonzini
2024-12-26  7:14   ` Zhao Liu
2024-12-20 14:29 ` [PATCH 12/12] rust: hide warnings for subprojects Paolo Bonzini
2024-12-26  7:21   ` Zhao Liu
2024-12-23  6:40 ` [PATCH 00/12] Next round of qemu_api patches Zhao Liu

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.