From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Dr. David Alan Gilbert" Subject: Re: [Qemu-devel] E5-2620v2 - emulation stop error Date: Wed, 11 Mar 2015 17:59:04 +0000 Message-ID: <20150311175904.GN2334@work-vm> References: <54FF4541.9080608@redhat.com> <20150310202958.GR2338@work-vm> <20150311134556.GH2334@work-vm> <20150311154220.GA26463@morn.localdomain> <20150311155306.GK2334@work-vm> <20150311163739.GA29522@morn.localdomain> <20150311165203.GL2334@work-vm> <20150311173738.GD29522@morn.localdomain> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Bandan Das , Paolo Bonzini , kraxel@redhat.com, Andrey Korolyov , "qemu-devel@nongnu.org" , "kvm@vger.kernel.org" To: "Kevin O'Connor" Return-path: Received: from mx1.redhat.com ([209.132.183.28]:37066 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751274AbbCKR7N (ORCPT ); Wed, 11 Mar 2015 13:59:13 -0400 Content-Disposition: inline In-Reply-To: <20150311173738.GD29522@morn.localdomain> Sender: kvm-owner@vger.kernel.org List-ID: * Kevin O'Connor (kevin@koconnor.net) wrote: > On Wed, Mar 11, 2015 at 04:52:03PM +0000, Dr. David Alan Gilbert wrote: > > * Kevin O'Connor (kevin@koconnor.net) wrote: > > > So, I couldn't get this to fail on my older AMD machine at all with > > > the default SeaBIOS code. But, when I change the code with the patch > > > below, it failed right away. > [...] > > > And the failed debug output looks like: > > > > > > SeaBIOS (version rel-1.8.0-7-gd23eba6-dirty-20150311_121819-morn.localdomain) > > > [...] > > > cmos_smp_count0=20 > > > [...] > > > cmos_smp_count=1 > > > cmos_smp_count2=1/20 > > > Found 1 cpu(s) max supported 20 cpu(s) > > > > > > I'm going to check the assembly for a compiler error, but is it > > > possible QEMU is returning incorrect data in cmos index 0x5f? > > I checked the SeaBIOS assembler and it looks sane. So, I think the > question is, why is QEMU sometimes returning a 0 instead of 127 from > cmos 0x5f. My reading of the logs I've just created is that qemu doesn't think it's ever being asked to read 5f in the failed case: good: pc_cmos_init 5f setting smp_cpus=20 cmos: read index=0x0f val=0x00 cmos: read index=0x34 val=0x00 cmos: read index=0x35 val=0x3f cmos: read index=0x38 val=0x30 cmos: read index=0x3d val=0x12 cmos: read index=0x38 val=0x30 cmos: read index=0x0b val=0x02 cmos: read index=0x0d val=0x80 cmos: read index=0x5f val=0x13 Yeh! cmos: read index=0x0f val=0x00 cmos: read index=0x0f val=0x00 cmos: read index=0x0f val=0x00 bad: pc_cmos_init 5f setting smp_cpus=20 cmos: read index=0x0f val=0x00 cmos: read index=0x34 val=0x00 cmos: read index=0x35 val=0x3f cmos: read index=0x38 val=0x30 cmos: read index=0x3d val=0x12 cmos: read index=0x38 val=0x30 cmos: read index=0x0b val=0x02 cmos: read index=0x0d val=0x80 Oh! cmos: read index=0x0f val=0x00 cmos: read index=0x0f val=0x00 cmos: read index=0x0f val=0x00 Dave > > > > David, any chance you can recompile seabios and double check your > > > output? > > > > Done; > > > > =========== Working =========== > > SeaBIOS (version rel-1.8.0-0-g4c59f5d-dirty-20150311_164408-dgilbert-t530) > [...] > > cmos_smp_count0=20 > > cmos_smp_count=20 > > cmos_smp_count2=20/20 > > Found 20 cpu(s) max supported 20 cpu(s) > [...] > > =========== Broken =========== > > SeaBIOS (version rel-1.8.0-0-g4c59f5d-dirty-20150311_164408-dgilbert-t530) > [...] > > cmos_smp_count0=20 > > cmos_smp_count=1 > > cmos_smp_count2=1/20 > > Found 1 cpu(s) max supported 20 cpu(s) > > That's the same pattern I see. > > -Kevin -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40676) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVkuf-00078t-VW for qemu-devel@nongnu.org; Wed, 11 Mar 2015 13:59:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YVkuX-00026Y-R3 for qemu-devel@nongnu.org; Wed, 11 Mar 2015 13:59:21 -0400 Received: from mx1.redhat.com ([209.132.183.28]:36148) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVkuX-00026O-JW for qemu-devel@nongnu.org; Wed, 11 Mar 2015 13:59:13 -0400 Date: Wed, 11 Mar 2015 17:59:04 +0000 From: "Dr. David Alan Gilbert" Message-ID: <20150311175904.GN2334@work-vm> References: <54FF4541.9080608@redhat.com> <20150310202958.GR2338@work-vm> <20150311134556.GH2334@work-vm> <20150311154220.GA26463@morn.localdomain> <20150311155306.GK2334@work-vm> <20150311163739.GA29522@morn.localdomain> <20150311165203.GL2334@work-vm> <20150311173738.GD29522@morn.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150311173738.GD29522@morn.localdomain> Subject: Re: [Qemu-devel] E5-2620v2 - emulation stop error List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin O'Connor Cc: Andrey Korolyov , "kvm@vger.kernel.org" , "qemu-devel@nongnu.org" , Bandan Das , kraxel@redhat.com, Paolo Bonzini * Kevin O'Connor (kevin@koconnor.net) wrote: > On Wed, Mar 11, 2015 at 04:52:03PM +0000, Dr. David Alan Gilbert wrote: > > * Kevin O'Connor (kevin@koconnor.net) wrote: > > > So, I couldn't get this to fail on my older AMD machine at all with > > > the default SeaBIOS code. But, when I change the code with the patch > > > below, it failed right away. > [...] > > > And the failed debug output looks like: > > > > > > SeaBIOS (version rel-1.8.0-7-gd23eba6-dirty-20150311_121819-morn.localdomain) > > > [...] > > > cmos_smp_count0=20 > > > [...] > > > cmos_smp_count=1 > > > cmos_smp_count2=1/20 > > > Found 1 cpu(s) max supported 20 cpu(s) > > > > > > I'm going to check the assembly for a compiler error, but is it > > > possible QEMU is returning incorrect data in cmos index 0x5f? > > I checked the SeaBIOS assembler and it looks sane. So, I think the > question is, why is QEMU sometimes returning a 0 instead of 127 from > cmos 0x5f. My reading of the logs I've just created is that qemu doesn't think it's ever being asked to read 5f in the failed case: good: pc_cmos_init 5f setting smp_cpus=20 cmos: read index=0x0f val=0x00 cmos: read index=0x34 val=0x00 cmos: read index=0x35 val=0x3f cmos: read index=0x38 val=0x30 cmos: read index=0x3d val=0x12 cmos: read index=0x38 val=0x30 cmos: read index=0x0b val=0x02 cmos: read index=0x0d val=0x80 cmos: read index=0x5f val=0x13 Yeh! cmos: read index=0x0f val=0x00 cmos: read index=0x0f val=0x00 cmos: read index=0x0f val=0x00 bad: pc_cmos_init 5f setting smp_cpus=20 cmos: read index=0x0f val=0x00 cmos: read index=0x34 val=0x00 cmos: read index=0x35 val=0x3f cmos: read index=0x38 val=0x30 cmos: read index=0x3d val=0x12 cmos: read index=0x38 val=0x30 cmos: read index=0x0b val=0x02 cmos: read index=0x0d val=0x80 Oh! cmos: read index=0x0f val=0x00 cmos: read index=0x0f val=0x00 cmos: read index=0x0f val=0x00 Dave > > > > David, any chance you can recompile seabios and double check your > > > output? > > > > Done; > > > > =========== Working =========== > > SeaBIOS (version rel-1.8.0-0-g4c59f5d-dirty-20150311_164408-dgilbert-t530) > [...] > > cmos_smp_count0=20 > > cmos_smp_count=20 > > cmos_smp_count2=20/20 > > Found 20 cpu(s) max supported 20 cpu(s) > [...] > > =========== Broken =========== > > SeaBIOS (version rel-1.8.0-0-g4c59f5d-dirty-20150311_164408-dgilbert-t530) > [...] > > cmos_smp_count0=20 > > cmos_smp_count=1 > > cmos_smp_count2=1/20 > > Found 1 cpu(s) max supported 20 cpu(s) > > That's the same pattern I see. > > -Kevin -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK