Patchwork Introduce DPRINTF() macro and convert serial printf() calls to DPRINTF()'s

login
register
mail settings
Submitter Michal Novotny
Date Sept. 13, 2010, 12:37 p.m.
Message ID <4C8E1B06.4070500@redhat.com>
Download mbox | patch
Permalink /patch/64586/
State New
Headers show

Comments

Michal Novotny - Sept. 13, 2010, 12:37 p.m.
On 09/13/2010 02:07 PM, Edgar E. Iglesias wrote:
> On Mon, Sep 13, 2010 at 01:18:27PM +0200, Michal Novotny wrote:
>    
>> Hi,
>> this is the patch to introduce DPRINTF() macro as used in the rest of the
>> qemu source files for printing debug messages when the debugging macro is
>> set (i.e. the debugging is enabled) - e.g. as used in LSI SCSI controller
>> implementation.
>>      
> Hi,
>
> This patch seems to be corrupt, can you please resubmit with git send-email?
>
> Thanks,
> Edgar
>
>
>    

Well, I'd love to but I'm having git 1.7.0.1 and it's saying that 
send-email it doesn't know send-email [1] so I did append it myself. 
Nevertheless when I did copy & paste of this e-mails body to one file 
and applied using `cat patchfile | patch -p1` in the current git tree 
(pulled from upstream repository before issuing the command) it applied 
fine so I don't know what's wrong. The patch file applicable to latest 
qemu codebase is attached.

Michal

[1] This is what I'm having:
$ git send-email 0001-dprintf-implementation.patch --to minovotn@redhat.com
git: 'send-email' is not a git command. See 'git --help'.
$

>> Signed-off-by: Michal Novotny<minovotn@redhat.com>
>> ---
>> diff --git a/hw/serial.c b/hw/serial.c
>> index b66d13a..49431b2 100644
>> --- a/hw/serial.c
>> +++ b/hw/serial.c
>> @@ -99,6 +99,14 @@
>>    #define RECV_FIFO           1
>>    #define MAX_XMIT_RETRY      4
>>
>> +#ifdef DEBUG_SERIAL
>> +#define DPRINTF(fmt, ...) \
>> +do { fprintf(stderr, "serial: " fmt , ## __VA_ARGS__); } while (0);
>> +#else
>> +#define DPRINTF(fmt, ...) \
>> +do {} while(0);
>> +#endif
>> +
>>    typedef struct SerialFIFO {
>>        uint8_t data[UART_FIFO_LENGTH];
>>        uint8_t count;
>> @@ -267,10 +275,9 @@ static void serial_update_parameters(SerialState *s)
>>        ssp.stop_bits = stop_bits;
>>        s->char_transmit_time =  (get_ticks_per_sec() / speed) * frame_size;
>>        qemu_chr_ioctl(s->chr, CHR_IOCTL_SERIAL_SET_PARAMS,&ssp);
>> -#if 0
>> -    printf("speed=%d parity=%c data=%d stop=%d\n",
>> +
>> +    DPRINTF("speed=%d parity=%c data=%d stop=%d\n",
>>               speed, parity, data_bits, stop_bits);
>> -#endif
>>    }
>>
>>    static void serial_update_msl(SerialState *s)
>> @@ -360,9 +367,7 @@ static void serial_ioport_write(void *opaque,
>> uint32_t addr, uint32_t val)
>>        SerialState *s = opaque;
>>
>>        addr&= 7;
>> -#ifdef DEBUG_SERIAL
>> -    printf("serial: write addr=0x%02x val=0x%02x\n", addr, val);
>> -#endif
>> +    DPRINTF("write addr=0x%02x val=0x%02x\n", addr, val);
>>        switch(addr) {
>>        default:
>>        case 0:
>> @@ -583,9 +588,7 @@ static uint32_t serial_ioport_read(void *opaque,
>> uint32_t addr)
>>            ret = s->scr;
>>            break;
>>        }
>> -#ifdef DEBUG_SERIAL
>> -    printf("serial: read addr=0x%02x val=0x%02x\n", addr, ret);
>> -#endif
>> +    DPRINTF("read addr=0x%02x val=0x%02x\n", addr, ret);
>>        return ret;
>>    }
>>
>> @@ -651,9 +654,7 @@ static void serial_receive1(void *opaque, const
>> uint8_t *buf, int size)
>>    static void serial_event(void *opaque, int event)
>>    {
>>        SerialState *s = opaque;
>> -#ifdef DEBUG_SERIAL
>> -    printf("serial: event %x\n", event);
>> -#endif
>> +    DPRINTF("event %x\n", event);
>>        if (event == CHR_EVENT_BREAK)
>>            serial_receive_break(s);
>>    }
>>
>> -- 
>> Michal Novotny<minovotn@redhat.com>, RHCE
>> Virtualization Team (xen userspace), Red Hat
>>
>>
>>
Edgar Iglesias - Sept. 13, 2010, 12:37 p.m.
On Mon, Sep 13, 2010 at 02:37:26PM +0200, Michal Novotny wrote:
> On 09/13/2010 02:07 PM, Edgar E. Iglesias wrote:
> > On Mon, Sep 13, 2010 at 01:18:27PM +0200, Michal Novotny wrote:
> >    
> >> Hi,
> >> this is the patch to introduce DPRINTF() macro as used in the rest of the
> >> qemu source files for printing debug messages when the debugging macro is
> >> set (i.e. the debugging is enabled) - e.g. as used in LSI SCSI controller
> >> implementation.
> >>      
> > Hi,
> >
> > This patch seems to be corrupt, can you please resubmit with git send-email?
> >
> > Thanks,
> > Edgar
> >
> >
> >    
> 
> Well, I'd love to but I'm having git 1.7.0.1 and it's saying that 
> send-email it doesn't know send-email [1] so I did append it myself. 
> Nevertheless when I did copy & paste of this e-mails body to one file 
> and applied using `cat patchfile | patch -p1` in the current git tree 
> (pulled from upstream repository before issuing the command) it applied 
> fine so I don't know what's wrong. The patch file applicable to latest 
> qemu codebase is attached.


Thanks, the attached one works. Applied.

Cheers
Andreas Färber - Sept. 13, 2010, 10:34 p.m.
Am 13.09.2010 um 14:37 schrieb Michal Novotny:

> I'm having git 1.7.0.1 and it's saying that send-email it doesn't  
> know send-email [1]

> [1] This is what I'm having:
> $ git send-email 0001-dprintf-implementation.patch --to minovotn@redhat.com
> git: 'send-email' is not a git command. See 'git --help'.

I believe on Fedora it's in an extra package. Don't have the name at  
hand.

Andreas
Michal Novotny - Sept. 14, 2010, 8:56 a.m.
On 09/14/2010 12:34 AM, Andreas Färber wrote:
> Am 13.09.2010 um 14:37 schrieb Michal Novotny:
>
>> I'm having git 1.7.0.1 and it's saying that send-email it doesn't 
>> know send-email [1]
>
>> [1] This is what I'm having:
>> $ git send-email 0001-dprintf-implementation.patch --to 
>> minovotn@redhat.com
>> git: 'send-email' is not a git command. See 'git --help'.
>
> I believe on Fedora it's in an extra package. Don't have the name at 
> hand.
>
> Andreas
Paolo already helped me (thanks a lot!) with this one, it's in the 
git-email package for Fedora - it can be useful to send this information 
to the list so I'm CCing list now.

Michal

Patch

commit 03615a2319e7ef85fc54661493f33c172883cecf
Author: Michal Novotny <minovotn@redhat.com>
Date:   Mon Sep 13 13:36:29 2010 +0200

    DPRINTF() impl.

diff --git a/hw/serial.c b/hw/serial.c
index b66d13a..49431b2 100644
--- a/hw/serial.c
+++ b/hw/serial.c
@@ -99,6 +99,14 @@ 
 #define RECV_FIFO           1
 #define MAX_XMIT_RETRY      4
 
+#ifdef DEBUG_SERIAL
+#define DPRINTF(fmt, ...) \
+do { fprintf(stderr, "serial: " fmt , ## __VA_ARGS__); } while (0);
+#else
+#define DPRINTF(fmt, ...) \
+do {} while(0);
+#endif
+
 typedef struct SerialFIFO {
     uint8_t data[UART_FIFO_LENGTH];
     uint8_t count;
@@ -267,10 +275,9 @@  static void serial_update_parameters(SerialState *s)
     ssp.stop_bits = stop_bits;
     s->char_transmit_time =  (get_ticks_per_sec() / speed) * frame_size;
     qemu_chr_ioctl(s->chr, CHR_IOCTL_SERIAL_SET_PARAMS, &ssp);
-#if 0
-    printf("speed=%d parity=%c data=%d stop=%d\n",
+
+    DPRINTF("speed=%d parity=%c data=%d stop=%d\n",
            speed, parity, data_bits, stop_bits);
-#endif
 }
 
 static void serial_update_msl(SerialState *s)
@@ -360,9 +367,7 @@  static void serial_ioport_write(void *opaque, uint32_t addr, uint32_t val)
     SerialState *s = opaque;
 
     addr &= 7;
-#ifdef DEBUG_SERIAL
-    printf("serial: write addr=0x%02x val=0x%02x\n", addr, val);
-#endif
+    DPRINTF("write addr=0x%02x val=0x%02x\n", addr, val);
     switch(addr) {
     default:
     case 0:
@@ -583,9 +588,7 @@  static uint32_t serial_ioport_read(void *opaque, uint32_t addr)
         ret = s->scr;
         break;
     }
-#ifdef DEBUG_SERIAL
-    printf("serial: read addr=0x%02x val=0x%02x\n", addr, ret);
-#endif
+    DPRINTF("read addr=0x%02x val=0x%02x\n", addr, ret);
     return ret;
 }
 
@@ -651,9 +654,7 @@  static void serial_receive1(void *opaque, const uint8_t *buf, int size)
 static void serial_event(void *opaque, int event)
 {
     SerialState *s = opaque;
-#ifdef DEBUG_SERIAL
-    printf("serial: event %x\n", event);
-#endif
+    DPRINTF("event %x\n", event);
     if (event == CHR_EVENT_BREAK)
         serial_receive_break(s);
 }