From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: "KVM internal error. Suberror: 1" with ancient 2.4 kernel as guest Date: Mon, 28 Mar 2011 11:23:27 +0200 Message-ID: <4D90538F.5060901@redhat.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Jiri Kosina , Marcelo Tosatti , kvm@vger.kernel.org To: Wei Xu Return-path: Received: from mx1.redhat.com ([209.132.183.28]:8187 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752538Ab1C1JXf (ORCPT ); Mon, 28 Mar 2011 05:23:35 -0400 In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: On 03/28/2011 02:53 AM, Wei Xu wrote: > >> +++ linux/contents/include/linux/kvm.h 2011-03-21 09:16:39.000000000 -0700 > >> @@ -152,7 +152,7 @@ > >> /* KVM_EXIT_MMIO */ > >> struct { > >> __u64 phys_addr; > >> - __u8 data[8]; > >> + __u8 data[16]; > >> __u32 len; > >> __u8 is_write; > >> } mmio; > > > > This breaks the userspace interface. My implementation split the I/O > > into two separate 64-bit writes. > > Wei>>It will not break the user interface -- the "len" tells user space qemu > how many bytes need to be copied; and qemu mmio logic can handle more than > 64-bit writes. But the location of the 'len' field changes. You have to recompile your userspace so the code is aware of the new location. -- error compiling committee.c: too many arguments to function