From mboxrd@z Thu Jan 1 00:00:00 1970 From: Weidong Han Subject: Re: Re: [PATCH][RFC] gfx_passthru: warning when vgabios rom has invalid checksum Date: Wed, 24 Feb 2010 10:50:41 +0800 Message-ID: <4B849401.7090703@intel.com> References: <4B8219F1.5040301@jp.fujitsu.com> <4B823088.8090706@intel.com> <4B82398B.6020109@jp.fujitsu.com> <4B8246C5.4090005@intel.com> <4B8252A5.4020008@jp.fujitsu.com> <4B8257A9.8080600@intel.com> <19332.6040.166229.889595@mariner.uk.xensource.com> <4B848239.2060603@jp.fujitsu.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <4B848239.2060603@jp.fujitsu.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Noboru Iwamatsu Cc: "xen-devel@lists.xensource.com" , "Ian.Jackson@eu.citrix.com" List-Id: xen-devel@lists.xenproject.org Noboru Iwamatsu wrote: > Hi, > > >> Weidong Han writes ("Re: [Xen-devel] Re: [PATCH][RFC] gfx_passthru: warning when vgabios rom has invalid checksum"): >> >>> Now I understand. Because your Q35 works with recalculated checksum, I >>> prefer to only add a warning message, and continue to load rom for gfx >>> passthru. >>> >> Having read this thread I'm still a bit confused. The problem is that >> the VGA BIOS on the graphics card is broken and has a broken checksum, >> and the proposed workaround is to recalculate the checksum for the >> benefit of the guest ? >> > > In the native environment, the VGABIOS, the expansion ROM on the > graphics card, is placed into the 0C0000h address space, and then > executed. Of course, the checksum of the ROM must be valid. > > After this initialization, the system BIOS, the actual BIOS of the M/B, > can resize the expansion ROM code to reduce the amount of occupied > space. If the system BIOS resizes it, a new checksum must be calculated > and stored in the ROM image that is on the RAM. > > So, normally, shadowed VGABIOS, that is placed in 0C0000h, is already > modified and its checksum must be recalculated. > > Qemu-dm copies 0C0000h's contents of the dom0 to guest's 0C0000h. > Guest re-uses dom0's used-up VGABIOS. > > The problem that I mentioned is about this recalculated checksum. > > System BIOS must guarantee the checksum after the resizing, but, > some M/B does not. > However, after adjusting the checksum, guest seems to work, and > current qemu-dm does so. The buggy system BIOS might just forgets > to recalculate. > > Should we check strictly here? > > >> Does this incorrectly checksummed BIOS work natively (ie without >> passthrough) and if so why is passthrough different ? Alternatively >> if it doesn't work native why are we trying to make it work with >> passthrough ? >> >> On another level, Weidong, are you suggesting you'd like to see Noboru >> produce a different patch which just produces a warning ? >> > > I sent "just warning" patch on the first of this thread. > I resend it. > Yes, I ack this one. Acked-by: Weidong Han Regards, Weidong > Noboru. > > Signed-off-by: Noboru Iwamatsu > > >