From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55697) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bAF7p-0005m9-Vo for qemu-devel@nongnu.org; Tue, 07 Jun 2016 07:24:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bAF7n-00060M-UL for qemu-devel@nongnu.org; Tue, 07 Jun 2016 07:24:48 -0400 Date: Tue, 7 Jun 2016 13:24:38 +0200 From: Kevin Wolf Message-ID: <20160607112438.GE4684@noname.str.redhat.com> References: <1464973388-15821-1-git-send-email-eblake@redhat.com> <1464973388-15821-6-git-send-email-eblake@redhat.com> <5751C32F.3040806@redhat.com> <5751F9E8.6090900@redhat.com> <20160607100810.GB4684@noname.str.redhat.com> <03515d0b-afa7-0ba8-ee40-67ff78a72804@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <03515d0b-afa7-0ba8-ee40-67ff78a72804@redhat.com> Subject: Re: [Qemu-devel] [PATCH 5/5] block: Move request_alignment into BlockLimit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Eric Blake , qemu-devel@nongnu.org, Fam Zheng , Ronnie Sahlberg , qemu-block@nongnu.org, Peter Lieven , mreitz@redhat.com, Stefan Hajnoczi Am 07.06.2016 um 13:04 hat Paolo Bonzini geschrieben: > On 07/06/2016 12:08, Kevin Wolf wrote: > >>> > > Something in this patch is causing qemu-iotests 77 to infloop; we may > >>> > > decide it is just easier to drop this patch rather than find all the > >>> > > places where the request_alignment must be preserved across what > >>> > > otherwise zeroes out limits. > >> > > >> > Found it; squash this in (or use it as an argument why we don't want > >> > request_alignment in bs->bl after all): > > This hunk doesn't make sense to me. For the correctness of the code it > > shouldn't make a difference whether the alignment happens before passing > > the request to file/raw-posix or already in the raw format layer. > > > > The cause for the hang you're seeing is probably that the request is > > already aligned before the blkdebug layer and therefore the blkdebug > > events aren't generated any more. That's a problem with the test (I'm > > considering the blkdebug events part of the test infrastructure), > > however, and not with the code. > > Perhaps you could add an alignment option to blkdebug (or in general > options to force block limits on blkdebug), which would help testing in > general? It exists and is exactly what this test uses. The problem is just that the raw format driver inherits the alignment, so the RMW cycle that we want to test with blkdebug breakpoints happens too early and the blkdebug layer (more precisely, the block/io.c functions for the blkdebug BDS before they call into the driver) already sees aligned requests and we don't get the events any more that the test is looking for. Kevin