From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33661) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aVAj7-0006Bo-9X for qemu-devel@nongnu.org; Sun, 14 Feb 2016 23:25:34 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aVAj2-0005We-AF for qemu-devel@nongnu.org; Sun, 14 Feb 2016 23:25:33 -0500 Received: from mx1.redhat.com ([209.132.183.28]:33277) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aVAj2-0005WV-4I for qemu-devel@nongnu.org; Sun, 14 Feb 2016 23:25:28 -0500 Date: Mon, 15 Feb 2016 09:55:21 +0530 (IST) From: P J P In-Reply-To: Message-ID: References: <1454423392-7732-1-git-send-email-ppandit@redhat.com> <56B465B7.8000201@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Subject: Re: [Qemu-devel] [PATCH] net: ne2000: check ring buffer control registers List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jason Wang Cc: Yang Hongke , QEMU Developers +-- On Tue, 9 Feb 2016, P J P wrote --+ | +-- On Fri, 5 Feb 2016, Jason Wang wrote --+ | | I suspect this could even work. Consider after realizing, s->stop is | | zero, any attempt to set STARTPG will fail? | | Ie after 'pci_ne2000_realize'? It does not seem to set or reset s->stop | register. | | | This may not be sufficient, consider: | | | | set start to 1 | | set stop to 100 | | set boundary to 50 | | then set stop to 10 | | I think any attempts to define the ring buffer limits should reset | 'boundary' and 'curpag' registers to s->start(STARTPG). I wonder if a driver | should be allowed to fiddle with the ring buffers location inside contorller's | memory. It does not seem right. | | | I'm thinking maybe we need check during receiving like what we did in | | dd793a74882477ca38d49e191110c17dfee51dcc? | | Check if (s->start == s->stop) at each receive call? Ping...Jason? -- - P J P 47AF CE69 3A90 54AA 9045 1053 DD13 3D32 FE5B 041F