From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH 2/4] xen/public: arm: Rework __guest_handle_param* Date: Mon, 2 Nov 2015 15:39:15 +0000 Message-ID: <563783A3.2090802@citrix.com> References: <1446228813-2593-1-git-send-email-julien.grall@citrix.com> <1446228813-2593-3-git-send-email-julien.grall@citrix.com> <56378041.1030305@citrix.com> <1446478555.3088.79.camel@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1ZtHDt-0006no-HC for xen-devel@lists.xenproject.org; Mon, 02 Nov 2015 15:40:41 +0000 In-Reply-To: <1446478555.3088.79.camel@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Ian Campbell , Stefano Stabellini Cc: xen-devel@lists.xenproject.org, Keir Fraser , Ian Jackson , Jan Beulich , Tim Deegan List-Id: xen-devel@lists.xenproject.org On 02/11/15 15:35, Ian Campbell wrote: > On Mon, 2015-11-02 at 15:24 +0000, Julien Grall wrote: >> Hi Stefano, >> >> On 02/11/15 15:19, Stefano Stabellini wrote: >>> On Fri, 30 Oct 2015, Julien Grall wrote: >>>> __guest_handle_param is used to represent a guest pointer stored pass >>>> as >>>> an hypercall parameters. They are the same size as the native >>>> register >>>> for the architecture. It will be 32-bit on ARM32 and 64-bit on ARM64. >>>> >>>> As the __guest_handle_param will always be the size of a native >>>> pointer, there is no need to have a union with an unsigned long. >>>> >>>> Note that unsigned long may be not equivalent to the size of a >>>> pointer >>>> on ARM64. It depends whether the software is build using the LP64 or >>>> LLP64 data model. The size of an unsigned long in the latter will be >>>> 32-bit. >>>> >>>> Signed-off-by: Julien Grall >>> >>> Obviously this is going to break set_xen_guest_handle_raw. I don't >>> think >>> this cannot be committed separately to the change to >>> set_xen_guest_handle_raw. >> >> Well, all the usage of set_xen_guest_handle_raw within the hypervisor >> are in compat and kexec which is not built for ARM. > > Shall we drop it from ARM then? No. Sorry it wasn't clear on my previous mail, I was only speaking about the usage of set_xen_guest_handle_raw on a XEN_GUEST_HANDLE_PARAM. set_xen_guest_handle_raw is used by the guest/toolstack to set a pointer in a structure. All those usages are done with a GUEST_HANDLE and not a GUEST_HANDLE_PARAM. Regards, -- Julien Grall