From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH 1/14] KVM: userspace interface Date: Mon, 06 Nov 2006 12:28:26 +0200 Message-ID: <454F0E4A.7030001@qumranet.com> References: <454E4941.7000108@qumranet.com> <20061105202934.B5F842500A7@cleopatra.q> <1162807420.3160.186.camel@laptopd505.fenrus.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org, akpm-3NddpPZAyC0@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Return-path: To: Arjan van de Ven In-Reply-To: <1162807420.3160.186.camel-NIQFrBLA1CpScpXdPBN83iCwEArCW2h5@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kvm-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org Errors-To: kvm-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org List-Id: kvm.vger.kernel.org Arjan van de Ven wrote: > Hi, > > some nitpicks about the ioctl interfaces while it still can be done ;) > > There are some changes still planned (to streamline smp support). > >> Signed-off-by: Yaniv Kamay >> Signed-off-by: Avi Kivity >> >> --- /dev/null 2006-10-25 17:42:42.376631750 +0200 >> +++ linux-2.6/include/linux/kvm.h 2006-10-26 15:22:01.000000000 +0200 >> @@ -0,0 +1,198 @@ >> +#ifndef __LINUX_KVM_H >> +#define __LINUX_KVM_H >> + >> +/* >> + * Userspace interface for /dev/kvm - kernel based virtual machine >> + * >> + * Note: this interface is considered experimental and may change without >> + * notice. >> + */ >> + >> +#include >> +#include >> + >> +/* for KVM_CREATE_MEMORY_REGION */ >> +struct kvm_memory_region { >> + __u32 slot; >> + __u32 flags; >> + __u64 guest_phys_addr; >> + __u64 memory_size; /* bytes */ >> +}; >> > > as a general rule, it's a lot better to sort structures big-to-small, to > make sure alignments inside the struct are minimized and don't suck too > much. This is especially important to get right for 32/64 bit > compatibility. This comment is true for most structures in this header > file; please consider this at least > Doesn't that cause an unnatural field order? for example, in some structures I separated in and out variables. Sorting by size is a bit like sorting alphabetically. Anyway I observed 32/64 bit compatibility religiously. > >> + >> +enum kvm_exit_reason { >> + KVM_EXIT_UNKNOWN, >> + KVM_EXIT_EXCEPTION, >> + KVM_EXIT_IO, >> + KVM_EXIT_CPUID, >> + KVM_EXIT_DEBUG, >> + KVM_EXIT_HLT, >> + KVM_EXIT_MMIO, >> +}; >> > > it's probably nicer to use explicit enum values for the interface, just > as documentation if nothing else > > Will do. -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642