From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH] Handle guest access to BBL_CR_CTL3 MSR Date: Sun, 09 Jan 2011 14:25:07 +0200 Message-ID: <4D29A923.7020704@redhat.com> References: <4D27F08A.2090209@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: KVM list To: john cooper Return-path: Received: from mx1.redhat.com ([209.132.183.28]:51012 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751714Ab1AIMZL (ORCPT ); Sun, 9 Jan 2011 07:25:11 -0500 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id p09CPAwK015307 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Sun, 9 Jan 2011 07:25:10 -0500 In-Reply-To: <4D27F08A.2090209@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: On 01/08/2011 07:05 AM, john cooper wrote: > A correction to Intel cpu model CPUID data (patch queued) > caused winxp-64 to BSOD when booted with a Penryn model. > This was traced to the CPUID "model" field correction from > 6 -> 23 (as is proper for a Penryn class of cpu). Only in > this case does the problem surface. > > The cause for this failure is winxp accessing the BBL_CR_CTL3 > MSR which is unsupported by current kvm, appears to be a > legacy MSR not fully characterized yet existing in current > silicon, and is apparently carried forward in MSR space to > accommodate vintage code as here. It is not yet conclusive > whether this MSR implements any of its legacy functionality > or is just an ornamental dud for compatibility. While I > found no silicon version specific documentation link to > this MSR, a general description exists in Intel's developer's > reference which agrees with the functional behavior of > other bootloader/kernel code I've examined accessing > BBL_CR_CTL3. Regrettably winxp-64 appears to be setting bit #19 > called out as "reserved" in the above document. > > So to minimally accommodate this MSR, kvm msr get will provide > the equivalent mock data and kvm msr write will simply toss the > guest passed data without interpretation. While this treatment > of BBL_CR_CTL3 addresses the immediate problem, the approach may > be modified pending clarification from Intel. > Looks reasonable. -- error compiling committee.c: too many arguments to function