[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event instrument
From: |
Lluís Vilanova |
Subject: |
Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event instrumentation |
Date: |
Sun, 10 Sep 2017 20:34:48 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) |
Emilio G Cota writes:
> On Thu, Sep 07, 2017 at 12:58:05 +0200, Markus Armbruster wrote:
>> Lluís Vilanova <address@hidden> writes:
>>
>> > This series adds an API to add instrumentation events.
>> >
>> > It also provides additional APIs for:
>> > * Controlling tracing events
>> > * Peek/poke guest memory
>> >
>> > There's still missing APIs for (can be added in later series?):
>> > * Provide something like tracing's per-vCPU trace states (i.e., so that
>> > each
>> > vCPU can have different instrumentation code). It's still not clear to
>> > me if
>> > we should extend the per-vCPU bitmap with instrumentation events, or
>> > otherwise
>> > somehow reuse the bits in tracing events (since they're currently
>> > limited).
>> > * Peek/poke guest registers
>> >
>> > The instrumentation code is dynamically loaded as a library into QEMU
>> > either
>> > when it starts or later using its remote control interfaces.
>> >
>> > Signed-off-by: Lluís Vilanova <address@hidden>
>>
>> Taking a step back.
>>
>> This looks like a way to dynamically load arbitrary code. What
>> interfaces can this code use? Your cover letter should answer this.
>>
>> As long as the answer is "everything the dynamic linker is willing to
>> resolve", this series heading nowhere. We can talk about an interface
>> for plugins, but "anything goes" is not on the menu.
> A simple solution to this is to only export the API symbols by passing
> --dynamic-file to the linker -- see patch 2 of the following series for an
> example (ELF-only, although I'm pretty sure this can be achieved on Windows
> as well):
> https://lists.gnu.org/archive/html/qemu-devel/2017-09/msg01446.html
Sorry, I adapted the instr series in a rush and missed your series. I'm now
preparing a new version that fixes this without the flags you mention (missed to
add a line in this series).
Thanks,
Lluis
- [Qemu-devel] [PATCH v4 16/20] instrument: Add event 'guest_mem_before_trans', (continued)
- [Qemu-devel] [PATCH v4 16/20] instrument: Add event 'guest_mem_before_trans', Lluís Vilanova, 2017/09/06
- [Qemu-devel] [PATCH v4 17/20] instrument: Add event 'guest_mem_before_exec', Lluís Vilanova, 2017/09/06
- [Qemu-devel] [PATCH v4 18/20] instrument: Add event 'guest_user_syscall', Lluís Vilanova, 2017/09/06
- [Qemu-devel] [PATCH v4 19/20] instrument: Add event 'guest_user_syscall_ret', Lluís Vilanova, 2017/09/06
- [Qemu-devel] [PATCH v4 20/20] instrument: Add API to manipulate guest memory, Lluís Vilanova, 2017/09/06
- Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event instrumentation, Emilio G. Cota, 2017/09/06
- Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event instrumentation, Markus Armbruster, 2017/09/07
- Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event instrumentation, Markus Armbruster, 2017/09/07