[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC][PATCH v3 03/21] virtproxy: add debug functions fo
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [RFC][PATCH v3 03/21] virtproxy: add debug functions for virtproxy core |
Date: |
Fri, 19 Nov 2010 09:21:02 +0000 |
On Thu, Nov 18, 2010 at 5:17 PM, Michael Roth <address@hidden> wrote:
> On 11/18/2010 05:43 AM, Stefan Hajnoczi wrote:
>>
>> On Thu, Nov 18, 2010 at 11:09 AM, Jes Sorensen<address@hidden>
>> wrote:
>>>
>>> On 11/16/10 02:15, Michael Roth wrote:
>>>>
>>>> Signed-off-by: Michael Roth<address@hidden>
>>>> ---
>>>> virtproxy.c | 17 +++++++++++++++++
>>>> 1 files changed, 17 insertions(+), 0 deletions(-)
>>>>
>>>> diff --git a/virtproxy.c b/virtproxy.c
>>>> index 8f18d83..3686c77 100644
>>>> --- a/virtproxy.c
>>>> +++ b/virtproxy.c
>>>> @@ -13,6 +13,23 @@
>>>>
>>>> #include "virtproxy.h"
>>>>
>>>> +#define DEBUG_VP
>>>> +
>>>> +#ifdef DEBUG_VP
>>>> +#define TRACE(msg, ...) do { \
>>>> + fprintf(stderr, "%s:%s():L%d: " msg "\n", \
>>>> + __FILE__, __FUNCTION__, __LINE__, ## __VA_ARGS__); \
>>>> +} while(0)
>>>> +#else
>>>> +#define TRACE(msg, ...) \
>>>> + do { } while (0)
>>>> +#endif
>>>> +
>>>> +#define LOG(msg, ...) do { \
>>>> + fprintf(stderr, "%s:%s(): " msg "\n", \
>>>> + __FILE__, __FUNCTION__, ## __VA_ARGS__); \
>>>> +} while(0)
>>>> +
>>>
>>> I wonder if it wouldn't make sense to do this in a more generic way and
>>> stick it in a header file. This type of debug code seems to show up
>>> repeatedly all over the place.
>>
>> I wanted to suggest actually using QEMU tracing but given that this
>> code compiles stand-alone, it may be more trouble to integrate than
>> it's worth.
>>
>> For qemu and qemu-tools code we should be using tracing because you
>> can build it into production without high overhead. How often do
>> these #defines get used, not often is my guess because no one wants to
>> tweak the source and rebuild, especially not in production.
>>
>
> I'd planned on replacing the TRACE()'s with trace calls eventually. Maybe I
> missed it in the documentation, but do we have a way to enable them for
> qemu-tools or does we need to provide our own hooks and do it
> programmatically?
qemu-tools builds with QEMU tracing. I wasn't sure whether you're
building in the qemu-tools style or whether qemu-vp is a completely
separate program.
So if qemu-vp is built with all the common qemu-tools make
infrastructure, then you should have tracing in there.
Stefan
- Re: [Qemu-devel] [RFC][PATCH v3 01/21] virtproxy: base data structures and constants, (continued)
- Re: [Qemu-devel] [RFC][PATCH v3 01/21] virtproxy: base data structures and constants, Jes Sorensen, 2010/11/18
- Re: [Qemu-devel] [RFC][PATCH v3 01/21] virtproxy: base data structures and constants, Michael Roth, 2010/11/18
- Re: [Qemu-devel] [RFC][PATCH v3 01/21] virtproxy: base data structures and constants, Anthony Liguori, 2010/11/18
- Re: [Qemu-devel] [RFC][PATCH v3 01/21] virtproxy: base data structures and constants, Jes Sorensen, 2010/11/18
- Re: [Qemu-devel] [RFC][PATCH v3 01/21] virtproxy: base data structures and constants, Anthony Liguori, 2010/11/18
- Re: [Qemu-devel] [RFC][PATCH v3 01/21] virtproxy: base data structures and constants, Jes Sorensen, 2010/11/18
[Qemu-devel] [RFC][PATCH v3 03/21] virtproxy: add debug functions for virtproxy core, Michael Roth, 2010/11/15
[Qemu-devel] [RFC][PATCH v3 04/21] virtproxy: list look-up functions conns/oforwards/iforwards, Michael Roth, 2010/11/15
[Qemu-devel] [RFC][PATCH v3 02/21] virtproxy: qemu-vp, standalone daemon skeleton, Michael Roth, 2010/11/15
[Qemu-devel] [RFC][PATCH v3 05/21] virtproxy, add vp_channel_send_all, Michael Roth, 2010/11/15
[Qemu-devel] [RFC][PATCH v3 06/21] virtproxy: add accept handler for communication channel, Michael Roth, 2010/11/15
[Qemu-devel] [RFC][PATCH v3 07/21] virtproxy: add read handler for communication channel, Michael Roth, 2010/11/15