From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rusty Russell Subject: Re: [RFC 5/5] KVM: ARM: Access all registers via KVM_GET_ONE_REG/KVM_SET_ONE_REG. Date: Thu, 30 Aug 2012 03:51:35 +0930 Message-ID: <87pq69sgnk.fsf@rustcorp.com.au> References: <877gsia8rm.fsf@rustcorp.com.au> <87pq6a8toa.fsf@rustcorp.com.au> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Avi Kivity , Christoffer Dall , Alexander Graf , kvmarm@lists.cs.columbia.edu, kvm-devel To: Peter Maydell Return-path: Received: from ozlabs.org ([203.10.76.45]:56376 "EHLO ozlabs.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753324Ab2H2SVs (ORCPT ); Wed, 29 Aug 2012 14:21:48 -0400 In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: Peter Maydell writes: > On 29 August 2012 00:48, Rusty Russell wrote: >> No structures at all any more. > > I'm not fussed whether we use structs for the core regs or > not; they're not exactly going to change in future so it's > purely a question of whether you think it's aesthetically > prettier to have everything funneled through the one ioctl. Avi wanted to get rid of the structures. But I thought "it will never change" was already proven untrue, for your psuedo-secure mode proposal? >> + /* Coprocessor 0 means we want a core register. */ >> + if ((u32)reg->id >> KVM_REG_ARM_COPROC_START == 0) >> + return set_core_reg(vcpu, reg); > > ...but if we do go this path, you can't use coprocessor 0 > to mean core register -- cp0 could be a valid coprocessor > (the ARM ARM reserves cp0..cp7 for "vendor specific features"). > Use something outside 0..15. OK, changed that too (16). Thanks, Rusty.