From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755213AbbBTRAY (ORCPT ); Fri, 20 Feb 2015 12:00:24 -0500 Received: from cantor2.suse.de ([195.135.220.15]:49643 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754407AbbBTRAW (ORCPT ); Fri, 20 Feb 2015 12:00:22 -0500 Message-ID: <54E76823.9000106@suse.de> Date: Fri, 20 Feb 2015 18:00:19 +0100 From: Alexander Graf User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: Michael Mueller CC: qemu-devel@nongnu.org, kvm@vger.kernel.org, linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org, Gleb Natapov , Christian Borntraeger , "Jason J. Herne" , Cornelia Huck , Paolo Bonzini , Andreas Faerber , Richard Henderson Subject: Re: [Qemu-devel] [RFC PATCH v2 13/15] cpu-model/s390: Add processor property routines References: <1424183053-4310-1-git-send-email-mimu@linux.vnet.ibm.com> <1424183053-4310-14-git-send-email-mimu@linux.vnet.ibm.com> <54E73EB2.6050700@suse.de> <20150220163209.4e082e0b@bee> In-Reply-To: <20150220163209.4e082e0b@bee> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 20.02.15 16:32, Michael Mueller wrote: > On Fri, 20 Feb 2015 15:03:30 +0100 > Alexander Graf wrote: > >>> >>> - s390_get_proceccor_props() >>> - s390_set_proceccor_props() >>> >>> They can be used to request or retrieve processor related information from an accelerator. >>> That information comprises the cpu identifier, the ICB value and the facility lists. >>> >>> Signed-off-by: Michael Mueller >> >> Hrm, I still seem to miss the point of this interface. What do you need >> it for? > > These functions make the internal s390 cpu model API independent from a specific accelerator: > > int s390_set_processor_props(S390ProcessorProps *prop) > { > if (kvm_enabled()) { > return kvm_s390_set_processor_props(prop); > } > return -ENOSYS; > } > > It's called by: > > s390_select_cpu_model(const char *model) > > which is itself called by: > > S390CPU *cpu_s390x_init(const char *cpu_model) > { > S390CPU *cpu; > > cpu = S390_CPU(object_new(s390_select_cpu_model(cpu_model))); > > object_property_set_bool(OBJECT(cpu), true, "realized", NULL); > > return cpu; > } > > So above s390_set/get_processor_props() the code is accelerator independent. Any particular reason you can't do it like PPC? Alex From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33753) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YOqwF-0001cw-K7 for qemu-devel@nongnu.org; Fri, 20 Feb 2015 12:00:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YOqw9-0003us-N0 for qemu-devel@nongnu.org; Fri, 20 Feb 2015 12:00:27 -0500 Received: from cantor2.suse.de ([195.135.220.15]:44374 helo=mx2.suse.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YOqw9-0003ua-Hg for qemu-devel@nongnu.org; Fri, 20 Feb 2015 12:00:21 -0500 Message-ID: <54E76823.9000106@suse.de> Date: Fri, 20 Feb 2015 18:00:19 +0100 From: Alexander Graf MIME-Version: 1.0 References: <1424183053-4310-1-git-send-email-mimu@linux.vnet.ibm.com> <1424183053-4310-14-git-send-email-mimu@linux.vnet.ibm.com> <54E73EB2.6050700@suse.de> <20150220163209.4e082e0b@bee> In-Reply-To: <20150220163209.4e082e0b@bee> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RFC PATCH v2 13/15] cpu-model/s390: Add processor property routines List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Michael Mueller Cc: linux-s390@vger.kernel.org, kvm@vger.kernel.org, Gleb Natapov , qemu-devel@nongnu.org, linux-kernel@vger.kernel.org, Christian Borntraeger , "Jason J. Herne" , Cornelia Huck , Paolo Bonzini , Andreas Faerber , Richard Henderson On 20.02.15 16:32, Michael Mueller wrote: > On Fri, 20 Feb 2015 15:03:30 +0100 > Alexander Graf wrote: > >>> >>> - s390_get_proceccor_props() >>> - s390_set_proceccor_props() >>> >>> They can be used to request or retrieve processor related information from an accelerator. >>> That information comprises the cpu identifier, the ICB value and the facility lists. >>> >>> Signed-off-by: Michael Mueller >> >> Hrm, I still seem to miss the point of this interface. What do you need >> it for? > > These functions make the internal s390 cpu model API independent from a specific accelerator: > > int s390_set_processor_props(S390ProcessorProps *prop) > { > if (kvm_enabled()) { > return kvm_s390_set_processor_props(prop); > } > return -ENOSYS; > } > > It's called by: > > s390_select_cpu_model(const char *model) > > which is itself called by: > > S390CPU *cpu_s390x_init(const char *cpu_model) > { > S390CPU *cpu; > > cpu = S390_CPU(object_new(s390_select_cpu_model(cpu_model))); > > object_property_set_bool(OBJECT(cpu), true, "realized", NULL); > > return cpu; > } > > So above s390_set/get_processor_props() the code is accelerator independent. Any particular reason you can't do it like PPC? Alex