From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:44008) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ugo3W-0002cO-9X for qemu-devel@nongnu.org; Sun, 26 May 2013 23:25:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ugo3Q-0008DV-Hw for qemu-devel@nongnu.org; Sun, 26 May 2013 23:25:06 -0400 Received: from mail-ob0-x22b.google.com ([2607:f8b0:4003:c01::22b]:34420) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ugo3Q-0008DP-C1 for qemu-devel@nongnu.org; Sun, 26 May 2013 23:25:00 -0400 Received: by mail-ob0-f171.google.com with SMTP id ef5so7502731obb.16 for ; Sun, 26 May 2013 20:24:59 -0700 (PDT) Sender: fluxion Date: Sun, 26 May 2013 22:24:38 -0500 From: mdroth Message-ID: <20130527032438.GC4599@vm> References: <20130526152648.GA4599@vm> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20130526152648.GA4599@vm> Subject: Re: [Qemu-devel] make check breakage on 32 bit hosts List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Blue Swirl Cc: qemu-devel On Sun, May 26, 2013 at 10:26:48AM -0500, mdroth wrote: > On Sun, May 26, 2013 at 12:00:57PM +0000, Blue Swirl wrote: > > I get this on i386 chroot for make check: > > > > GTESTER tests/test-qmp-output-visitor > > ** > > ERROR:/src/qemu/tests/test-qmp-output-visitor.c:595:check_native_list: > > assertion failed: (tmp) > > GTester: last random seed: R02S559792e7c8d0762d9a2ee153fba8896c > > ** > > Tests case looks correct, problem seems to be that we cast list node to > GenericList, which expects the 'value' field to be a pointer type. With > native lists types these are in some cases non-pointer types, like > intList, where 'value' is an int64_t. On 32-bit archs this cast leads to > use uses incorrect offset when trying to traverse the list. > > Don't see a way to fix this outside of making the code generators do > a bit of massaging for these cases rather than a cast. Looking at it > now, but might not be able to send a patch till later. Patch sent: http://article.gmane.org/gmane.comp.emulators.qemu/213202 Teaching code generators to be smarter didn't work out so well since visitor implementations allocate storage of list types based on GenericList, so ended up relying on padding to 64-bit instead.