qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Making TCG configurable in system mode


From: Laurent Vivier
Subject: Re: [Qemu-devel] Making TCG configurable in system mode
Date: Thu, 15 Dec 2016 10:19:27 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1


On 14/12/2016 20:30, Alvise Rigo wrote:
> Hi all,
> 
> I am looking at the possibility to add a new QEMU configuration option
> to make TCG optional (in qemu-system-*). What I am exploring is a way
> to exclude any of the TCG code not needed by KVM from the QEMU binary.
> There has been a previous attempt in the past from Paolo Bonzini,
> namely https://github.com/bonzini/qemu/tree/disable-tcg, that
> eventually was not upstreamed. I was looking into this work mainly,
> mostly to understand if the same approach can be respinned and used to
> support all the QEMU's targets. Any input on this is welcome.
> 
> I was also wondering if an approach could be based on the recent patch
> series that allows to use the TCG frontend as a library --
> https://www.mail-archive.com/address@hidden/msg415514.html.
> Making qemu-user and qemu-system users of such a library might help in
> having TCG optional. Obviously this solution introduces many other
> challenges and I'm not even sure if it's actually viable.

To have a library has also another interest: testing.

For the moment RISU is doing a great job but it needs to be able to
start a client (the apprentice) in a chroot. So it requires a "viable"
TCG implementation.

If we would have a library we could directly link the "apprentice" with
the library and it will inject the code to test directly (without
chroot) in the TCG engine. Moreover, I think we could use single-step
instead of trap to synchronize master and apprentice.

We had something like that to test 680x0 [1], but the main program was
written in C++ compiling some parts of QEMU inside, and I failed to
recompile it last time I tried (I use RISU now).

Thanks,
Laurent
[1] https://github.com/vivier/m68k-tester



reply via email to

[Prev in Thread] Current Thread [Next in Thread]