qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v3 1/1] char/serial: Fix emptyness handling


From: Peter Crosthwaite
Subject: Re: [Qemu-devel] [PATCH v3 1/1] char/serial: Fix emptyness handling
Date: Fri, 4 Apr 2014 22:13:23 +1000

On Fri, Mar 28, 2014 at 10:10 PM, Paolo Bonzini <address@hidden> wrote:
> Il 28/03/2014 12:43, Don Slutz ha scritto:
>
>> Ping.  (Since this is a bug fix, I think it can go into 2.0)
>>     -Don Slutz
>
>
> I think the problem is that not many people understand the 8250 device
> model.  CCing someone who hopefully does...
>

I have a bit of experience with 16550 :) Ill push for a merge on this one.

Regards,
Peter

> Paolo
>
>
>> On 03/18/14 12:29, Don Slutz wrote:
>>>
>>> The commit 88c1ee73d3231c74ff90bcfc084a7589670ec244
>>> char/serial: Fix emptyness check
>>>
>>> Still causes extra NULL byte(s) to be sent.
>>>
>>> So if the fifo is empty, do not send an extra NULL byte.
>>>
>>> Reviewed-by: Peter Crosthwaite <address@hidden>
>>> Signed-off-by: Don Slutz <address@hidden>
>>> ---
>>> Changes V2 to v3
>>>    Revert v2 changes
>>>    Fix coding style issues.
>>> Changes v1 to v2
>>>    Do full state change on fifo8_is_empty.
>>>
>>>   hw/char/serial.c | 6 ++++--
>>>   1 file changed, 4 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/hw/char/serial.c b/hw/char/serial.c
>>> index 6d3b5af..f4d167f 100644
>>> --- a/hw/char/serial.c
>>> +++ b/hw/char/serial.c
>>> @@ -225,8 +225,10 @@ static gboolean serial_xmit(GIOChannel *chan,
>>> GIOCondition cond, void *opaque)
>>>         if (s->tsr_retry <= 0) {
>>>           if (s->fcr & UART_FCR_FE) {
>>> -            s->tsr = fifo8_is_empty(&s->xmit_fifo) ?
>>> -                        0 : fifo8_pop(&s->xmit_fifo);
>>> +            if (fifo8_is_empty(&s->xmit_fifo)) {
>>> +                return FALSE;
>>> +            }
>>> +            s->tsr = fifo8_pop(&s->xmit_fifo);
>>>               if (!s->xmit_fifo.num) {
>>>                   s->lsr |= UART_LSR_THRE;
>>>               }
>>
>>
>>
>>
>
>



reply via email to

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