Hi Stefan,

Am 21.07.2013 12:57, schrieb Stefan Weil:
> The KVM stub variables and functions don't depend on target specific data
> types, so it is possible to compile kvm-stub.c only once.
> 
> Integrating the target specific KVM stubs for ARM, I386 and PPC in the
> common kvm-stub.c further simplifies the build environment and allows
> removing CONFIG_NO_KVM.
> 
> Instead of 53 kvm-stub.o files, there is now only one file.
> 
> abort() is replaced by g_assert_not_reached() which gives better diagnostic
> messages when it is called.
> 
> Signed-off-by: Stefan Weil <s...@weilnetz.de>
> ---
> 
> The resulting binary is slightly larger than before because it
> includes more stub functions. It could be made smaller by adding
> separate stubs/kvm-stub-arm.c, stubs/kvm-stub-i386.c and
> stubs/kvm-stub-ppc.c files. Using alias symbols for the stub
> functions would reduce the size further, but I don't think
> the size is critical here.
> 
> Should we call g_assert_not_reached() in more (all?) stub functions?
> 
> If the patch is accepted, a similar modification could be done
> for xen-stub.c.

I had thought about turning kvm-stub.c into stubs/kvm.c but rejected
that idea at the time due to CPU dependencies beyond CPUState.
Also I was wondering whether all stubs are actually from kvm-all.c (fine
then) or whether we would be opening a door for silently forgetting to
implement some functions in a new KVM target such as MIPS.

In the current form I think it's a gross hack wrt target_ulong and
HW_POISON_H. ;)

And yes, I would prefer to keep target stubs in separate files.

Regards,
Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

Reply via email to