From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: Stabilising some tools only HVMOPs? Date: Wed, 17 Feb 2016 17:28:08 +0000 Message-ID: <20160217172808.GB3723@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta14.messagelabs.com ([193.109.254.103]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1aW5tc-0002Xs-2V for xen-devel@lists.xenproject.org; Wed, 17 Feb 2016 17:28:12 +0000 Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Xen-devel Cc: Wei Liu , Ian Campbell , Stefano Stabellini , Andrew Cooper , Ian Jackson , Paul Durrant , Jan Beulich , Anthony PERARD List-Id: xen-devel@lists.xenproject.org Hi all Tools people are in the process of splitting libxenctrl into a set of stable libraries. One of the proposed libraries is libxendevicemodel which has a collection of APIs that can be used by device model. Currently we use QEMU as reference to extract symbols and go through them one by one. Along the way we discover QEMU is using some tools only HVMOPs. The list of tools only HVMOPs used by QEMU are: #define HVMOP_track_dirty_vram 6 #define HVMOP_modified_memory 7 #define HVMOP_set_mem_type 8 #define HVMOP_inject_msi 16 #define HVMOP_create_ioreq_server 17 #define HVMOP_get_ioreq_server_info 18 #define HVMOP_map_io_range_to_ioreq_server 19 #define HVMOP_unmap_io_range_from_ioreq_server 20 #define HVMOP_destroy_ioreq_server 21 #define HVMOP_set_ioreq_server_state 22 I'm curious about the rationale for making them tools only in the first place and what needs to be done to make them stable. The option to build stable library APIs on top of unstable hypervisor APIs is always there, but that looks suboptimal to me. Wei.