From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34976) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1asq6k-0005d8-UO for qemu-devel@nongnu.org; Wed, 20 Apr 2016 07:15:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1asq6g-0004ER-ST for qemu-devel@nongnu.org; Wed, 20 Apr 2016 07:15:46 -0400 Received: from mail.kernel.org ([198.145.29.136]:55300) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1asq6g-0004EM-MY for qemu-devel@nongnu.org; Wed, 20 Apr 2016 07:15:42 -0400 From: Stefano Stabellini Date: Wed, 20 Apr 2016 12:15:22 +0100 Message-Id: <1461150922-14509-1-git-send-email-sstabellini@kernel.org> In-Reply-To: References: Subject: [Qemu-devel] [PULL for-2.6 1/1] xenfb: use the correct condition to avoid excessive looping List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: peter.maydell@linaro.org Cc: sstabellini@kernel.org, qemu-devel@nongnu.org, xen-devel@lists.xensource.com, Wei Liu From: Wei Liu In commit ac0487e1 ("xenfb.c: avoid expensive loops when prod <= out_cons"), ">=" was used. In fact, a full ring is a legit state. Correct the test to use ">". Reported-by: "Hao, Xudong" Signed-off-by: Wei Liu Tested-by: "Hao, Xudong" Acked-by: Anthony Perard Signed-off-by: Stefano Stabellini --- hw/display/xenfb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/display/xenfb.c b/hw/display/xenfb.c index 40b096a..9866dfd 100644 --- a/hw/display/xenfb.c +++ b/hw/display/xenfb.c @@ -775,7 +775,7 @@ static void xenfb_handle_events(struct XenFB *xenfb) prod = page->out_prod; out_cons = page->out_cons; - if (prod - out_cons >= XENFB_OUT_RING_LEN) { + if (prod - out_cons > XENFB_OUT_RING_LEN) { return; } xen_rmb(); /* ensure we see ring contents up to prod */ -- 1.9.1