From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1ME4PZ-00074y-SU for qemu-devel@nongnu.org; Tue, 09 Jun 2009 12:42:57 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1ME4PR-0006rb-6s for qemu-devel@nongnu.org; Tue, 09 Jun 2009 12:42:53 -0400 Received: from [199.232.76.173] (port=49849 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ME4PQ-0006rG-Uk for qemu-devel@nongnu.org; Tue, 09 Jun 2009 12:42:49 -0400 Received: from lizzard.sbs.de ([194.138.37.39]:18947) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1ME4PQ-0007sY-8j for qemu-devel@nongnu.org; Tue, 09 Jun 2009 12:42:48 -0400 Message-ID: <4A2E9104.3010504@siemens.com> Date: Tue, 09 Jun 2009 18:42:44 +0200 From: Jan Kiszka MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: [PATCH] create kvm-shared-all.c and kvm-shared.h References: <1244563466-32598-1-git-send-email-glommer@redhat.com> <4A2E8B15.3010401@siemens.com> <4A2E8D52.4080600@redhat.com> <20090609163906.GO11966@poweredge.glommer> In-Reply-To: <20090609163906.GO11966@poweredge.glommer> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Glauber Costa Cc: aliguori@us.ibm.com, Avi Kivity , qemu-devel@nongnu.org Glauber Costa wrote: > On Tue, Jun 09, 2009 at 07:26:58PM +0300, Avi Kivity wrote: >> Jan Kiszka wrote: >>> Glauber Costa wrote: >>> >>>> Following a suggestion given by Jan, the idea here is to >>>> move shared pieces between qemu and qemu-kvm.git into a common >>>> file, so we can do sharing while avoid clashes. >>>> >>>> In the future, this files should disappear. >>>> >>>> >>> OK for the header - but why do we have to push the ioctl services into a >>> separate module? Will all functions qemu-kvm start to use from upstream >>> have to be pushed around? Or what is special about the ioctls? >>> >>> I rather think qemu-kvm should build kvm-all.c and #ifdef out those >>> parts which collide with its own implementation. Moreover, when we morph >>> qemu-kvm services for upstream, this could already happen where they >>> shall once be located: in kvm-all.c or target-*/kvm.c. >>> >> Yes, we could simply append libkvm-all.c and qemu-kvm.c to kvm-all.c, >> and gradually include more of kvm-all.c as we delete parts of libkvm.c >> and qemu-kvm.c. > I tried it myself, and it generates tons of conflicts. So scary. > I'd prefer to do it in the way I propose, until there is nothing left on kvm-all.c > kvm-all.c: #ifdef DONT_USE_UPSTREAM_YET #endif int kvm_ioctl(KVMState *s, int type, ...) ... #ifdef DONT_USE_UPSTREAM_YET #endif Can't imagine that this is infeasible. And it would all happily live in qemu-kvm, so upstream would never see these hacks. Jan -- Siemens AG, Corporate Technology, CT SE 2 Corporate Competence Center Embedded Linux