On 30.10.25 20:19, Peter Xu wrote:
On Thu, Oct 30, 2025 at 01:14:22PM -0400, Peter Xu wrote:
On Wed, Oct 29, 2025 at 02:13:24AM +0300, Vladimir Sementsov-Ogievskiy wrote:
Hi all!
That's a proof-of-concept for converting vmstate_load/save_state
to have boolean error value, to fixup this analysis
https://lore.kernel.org/qemu-devel/[email protected]/
in code.
As many of .get / .set handlers call vmstate_load/save_state,
let's convert them too, it not too much.
And finally, while touching each file, let's also use
new pre/post _errp() APIs.
So, this series propagate a lot of errors through errp, which
were simply printed out before.
Why it is an RFC:
1. I didn't yet double check the accuracy of all patches
2. Maybe, commit messages need to be more detailed, maybe they
need more arguments about correctness of the change
3. Maybe, it's better first merge new generic interfaces, and
than send per-maintainer small series, to avoid this huge
series, depending on many maintainers.
So, I don't include in CC many maintainers now, to get a first
look from Markus and Peter.
It's still good to collect more opinions on especially rfc series, even if
the list doesn't need to include maintainers for each device. I added
Fabiano and Dan too.
What do you think?
In general.. I liked it. :) Thanks for trying it.
Oh wait, so this is still not the full list of what needs to be done?
After I applied your patchset, I still see:
$ git grep -E "\.get | \.set " | wc -l
214
Some of them are outliers but most of them look not.. :(
I think, they are qdev properties, not VMStateInfo. In this series I do
remove old .get / .set interfaces, and compilation still works for me..
Maybe some modules are not included into my build config? Unfortunately yes:
git grep -A 5 'VMStateInfo .* = {' | grep '\.get' | awk '{print $1}' | sort |
uniq
hw/usb/redirect.c-
target/alpha/machine.c-
target/arm/machine.c-
target/avr/machine.c-
target/hppa/machine.c-
target/microblaze/machine.c-
target/mips/system/machine.c-
target/openrisc/machine.c-
target/ppc/machine.c-
target/sparc/machine.c-
That's 10 more commits. And the whole series would be 32, involving many
people..
I think, I'll resend only migration/* commits as "part I", except for 20/22 (to
save
old interfaces too), and then other parts in separate smaller series.
--
Best regards,
Vladimir