From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christian Borntraeger Subject: Re: [Qemu-devel] [PATCH v5 11/17] target-s390x: Add KVM VM attribute interface for S390 CPU models Date: Mon, 27 Apr 2015 12:52:54 +0200 Message-ID: <553E1506.5080206@de.ibm.com> References: <1428933396-37887-1-git-send-email-mimu@linux.vnet.ibm.com> <1428933396-37887-12-git-send-email-mimu@linux.vnet.ibm.com> <553DF033.1060405@de.ibm.com> <20150427114353.0386c3eb@bee> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org, linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org, Eduardo Habkost , Gleb Natapov , Alexander Graf , Daniel Hansel , "Jason J. Herne" , Cornelia Huck , Paolo Bonzini , Richard Henderson , Andreas Faerber To: Michael Mueller Return-path: Received: from e06smtp13.uk.ibm.com ([195.75.94.109]:33968 "EHLO e06smtp13.uk.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932572AbbD0KxA (ORCPT ); Mon, 27 Apr 2015 06:53:00 -0400 Received: from /spool/local by e06smtp13.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 27 Apr 2015 11:52:58 +0100 In-Reply-To: <20150427114353.0386c3eb@bee> Sender: kvm-owner@vger.kernel.org List-ID: Am 27.04.2015 um 11:43 schrieb Michael Mueller: > On Mon, 27 Apr 2015 10:15:47 +0200 > Christian Borntraeger wrote: > >> Am 13.04.2015 um 15:56 schrieb Michael Mueller: >> [...] >>> +static int cpu_model_get(KVMState *s, uint64_t attr, uint64_t addr) >>> +{ >>> + int rc = -ENOSYS; >>> + struct kvm_device_attr dev_attr = { >>> + .group = KVM_S390_VM_CPU_MODEL, >>> + .attr = attr, >>> + .addr = addr, >> >> Would it make sense to do the cast here.... > > cpu_model_get/set() is used to handle both attributes, > KVM_S390_VM_CPU_MACHINE and KVM_S390_VM_CPU_PROCESSOR. > Both require a different type in the signature, (S390ProcessorProps*) > and (S390MachineProps*). Adding both as parameters seems to be odd > and would require additionally logic in the function. > Thus I think doing the cast outside is just the right thing to do. So what about a void pointer then as parameter? I prefer a pointer for qemu process memory over uint64_t as part of the function interface. This makes it somewhat clearer that this is an address within QEMU. Both ways will certainly work, though. Conny, I guess you will pick up the patches. Any preference? Christian