From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41911) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZzlzB-0005OE-IJ for qemu-devel@nongnu.org; Fri, 20 Nov 2015 08:44:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zzlz7-000579-Do for qemu-devel@nongnu.org; Fri, 20 Nov 2015 08:44:21 -0500 Received: from mx-v6.kamp.de ([2a02:248:0:51::16]:35298 helo=mx01.kamp.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zzlz7-00055W-5G for qemu-devel@nongnu.org; Fri, 20 Nov 2015 08:44:17 -0500 Message-ID: <564F23AC.5030903@kamp.de> Date: Fri, 20 Nov 2015 14:44:12 +0100 From: Peter Lieven MIME-Version: 1.0 References: <1447932069-2772-1-git-send-email-quintela@redhat.com> <20151119151627.GH2653@work-vm> <564EEA17.9080006@kamp.de> In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PULL 00/14] Migration pull request List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: Kevin Wolf , Juan Quintela , QEMU Developers , "Dr. David Alan Gilbert" , Amit Shah , John Snow Am 20.11.2015 um 12:33 schrieb Peter Maydell: > On 20 November 2015 at 09:38, Peter Lieven wrote: >> I wonder if there is a glitch in the PIO implementation of test-ide.c. As far as I understand the specs >> it is not allowed to read data while the BSY flag is set. With the following change to the test-ide script >> the test does not race: >> >> diff --git a/tests/ide-test.c b/tests/ide-test.c >> index d1014bb..ab0489e 100644 >> --- a/tests/ide-test.c >> +++ b/tests/ide-test.c >> @@ -728,6 +728,7 @@ static void cdrom_pio_impl(int nblocks) >> for (i = 0; i < DIV_ROUND_UP(rxsize, limit); i++) { >> size_t offset = i * (limit / 2); >> size_t rem = (rxsize / 2) - offset; >> + ide_wait_clear(BSY); >> for (j = 0; j < MIN((limit / 2), rem); j++) { >> rx[offset + j] = le16_to_cpu(inw(IDE_BASE + reg_data)); >> } >> >> Note: in the old sync version of the ATAPI PIO implementation this could not happen. > This certainly fixes the stalls for me, though I don't know enough > IDE to say whether it is the correct fix. Thanks for testing. I hope that John or Kevin can verify this fix? Peter