|
From: | Li Zhijian |
Subject: | Re: [Qemu-devel] [PATCH] net/net: Bugfix for net_fill_rstate() |
Date: | Thu, 18 Aug 2016 09:31:59 +0800 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 |
/* * Returns * 0: SocketReadState is not ready * 1: SocketReadState is ready * otherwise error occurs */ int net_fill_rstate(SocketReadState *rs, const uint8_t *buf, int size)
it seems you need to fix the returns and comments too. simply, just remove the 'return 1;' would be OK ? because the callers only concern about the error case. -- Best regards. Li Zhijian On 08/17/2016 08:33 PM, Zhang Chen wrote:
When network is busy, we will receive multiple packets at one time. this bug will lost packets that comes late. Signed-off-by: Zhang Chen <address@hidden> Signed-off-by: Li Zhijian <address@hidden> --- net/net.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/net/net.c b/net/net.c index a8e2e6b..8f3237e 100644 --- a/net/net.c +++ b/net/net.c @@ -1636,7 +1636,9 @@ int net_fill_rstate(SocketReadState *rs, const uint8_t *buf, int size) if (rs->finalize) { rs->finalize(rs); } - return 1; + if (!size) { + return 1; + } } break; }
[Prev in Thread] | Current Thread | [Next in Thread] |