[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 0/6] tools/libs: add missing support of linear p2m_list, cleanup


  • To: Juergen Gross <jgross@xxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  • Date: Mon, 22 Mar 2021 12:46:04 +0000
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UJDNkkH/vzI+iZBh+0yrj1IXH9B10obPpkIrSyfHwhQ=; b=DxN6x/JPY5sIQWedQzkW+BxpNc+UO2HjkAxcoWBKLgtZLkHjEA2H2DNyWFHGfzGeCixnPBEBrrV+K/nSNU8pSUIAlEHjO/PdPUGY3Bt5F8gKxMKYAF6kNQQhC+oXZTbGbRCWotM4APVlIUIz6q+cDCgwaJNoe/aQ3Up6bdLv7johV2/R5/T96L/1gRwpUhRFYUrH5F9CZqhUfJ+xLMJbMLuUBhkvgKfuISTrR51RU1evNnpdBI5VzpVjPYaDrrR/zAVplXXMMCdaS/wTRDB2x5ohtUtAb8CNfyOxhzyrW5SxphPHdBttFN2LokNTsD3yW8lpIUf6eC+0Pr3HS/kLTQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=C1SD6Q65ioodaMk6EQVkQxX3T9c17yz5a888mDePSwiC9I06G+bYO/W07g58m1r/vFpZ8RDVNIoDi6A7wJH/fYSVp5R7OCbfxZJspLM1IJVfnBfufSk8V6sGkF+YA5FcJu4y3G4nDzyXi4LSWpYanaRAZupIHzFKyZyH2lWVEWpt0KPu5zKTrTLIRFiNm3FD3gyvSKq9TpUseGKXm9PVxGlVrJDUGbtrFe18AamwaCnUcdtAder9mPdiEX4dvls+xGVhDNd5avkWIFt0cCSJrhMOkAlq3uofmqc+1Uo5+UtlTca0byoZ6BGhSnBq3Ak35CZ0eMvtCTCCDcelQhMTLg==
  • Authentication-results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: Ian Jackson <iwj@xxxxxxxxxxxxxx>, Wei Liu <wl@xxxxxxx>
  • Delivery-date: Mon, 22 Mar 2021 12:46:52 +0000
  • Ironport-hdrordr: A9a23:xtC59qrZyOajfLmnessxWwQaV5v5L9V00zAX/kB9WHVpW+SFis Gjm+ka3xfoiDAXHEotg8yEJbPoex7h3LR+iLNwAZ6JWg76tGy0aLxz9IeK+UyFJwTS1M54kZ 1hfa93FcHqATFB5/rSzQGkH78br+Wv37uvgY7loUtFaSFPR+Ve4xxiCgCde3cGITVuIZYiDp KT6o5milObCBcqR/+2DHUEQOTPzuej/P7bSCULGgI97022hS6ogYSQLzGjwhwcXzlTqI1Sk1 TtrgqR3MSemsD+8DDw/Sv575NamNzuo+EzefCku4wuBRjHziqtbIRlcbWesD4yu/HH0idXrP D85y0OEu42x3TNfnykgRaF4Xie7B8er0XM5HXdoXz/rdf3TDg3YvAx+75xQ1/ixGcL+PRfuZ g7uF6xht5sIj7r2BnZ3ZzuUSpnk0KlyEBS6tI7vjhkfqY1LINKoZd3xjIyLL4wWBjUxaoAC+ dUAMTV9J9tACmnRkGchGVpzdC2N05DZyuucwwHssyR5TBcgGp0+Use3NAehXcN7vsGOuF529 g=
  • Ironport-sdr: k+zyy8smYtM1C4ydKbMA4lkCI7t6a54bcHSDt+2gWG5iwwJWj4GZ+C0CSH75vPtAyR4iRtQnXs 7JhSz+DkyDCnAfofEVt1t9TER+gv+BJ6ihqkzi8wAAQc25OUjNrB6ddz/9rgJHNAF2nOPX+u6a fWDAg+MDA1wXhZ+9uiYMCfpJqWKGJnwvO3qv1MMDR+QNT9MPO3gAD34HnXdma9H1544ZN+ifbA sr7Cc9c6KYNcEpIcwZCCAPDtil6XHC1IDlClQEeWchM3zymbUK3ih7abY3J0wMqOp2FvCQ9sUp tNE=
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 22/03/2021 10:58, Juergen Gross wrote:
> There are some corners left which don't support the not so very new
> linear p2m list of pv guests, which has been introduced in Linux kernel
> 3.19 and which is mandatory for non-legacy versions of Xen since kernel
> 4.14.
>
> This series adds support for the linear p2m list where it is missing
> (colo support and "xl dump-core").
>
> In theory it should be possible to merge the p2m list mapping code
> from migration handling and core dump handling, but this needs quite
> some cleanup before this is possible.
>
> The first three patches of this series are fixing real problems, so
> I've put them at the start of this series, especially in order to make
> backports easier.
>
> The other three patches are only the first steps of cleanup. The main
> work done here is to concentrate all p2m mapping in libxenguest instead
> of having one implementation in each of libxenguest and libxenctrl.
>
> Merging the two implementations should be rather easy, but this will
> require to touch many lines of code, as the migration handling variant
> seems to be more mature, but it is using the migration stream specific
> structures heavily. So I'd like to have some confirmation that my way
> to clean this up is the right one.
>
> My idea would be to add the data needed for p2m mapping to struct
> domain_info_context and replace the related fields in struct
> xc_sr_context with a struct domain_info_context. Modifying the
> interface of xc_core_arch_map_p2m() to take most current parameters
> via struct domain_info_context would then enable migration coding to
> use xc_core_arch_map_p2m() for mapping the p2m. xc_core_arch_map_p2m()
> should look basically like the current migration p2m mapping code
> afterwards.
>
> Any comments to that plan?
>
> Juergen Gross (6):
>   tools/libs/guest: fix max_pfn setting in map_p2m()
>   tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m
>     table
>   tools/libs/ctrl: use common p2m mapping code in xc_domain_resume_any()
>   tools/libs: move xc_resume.c to libxenguest
>   tools/libs: move xc_core* from libxenctrl to libxenguest
>   tools/libs/guest: make some definitions private to libxenguest

https://gitlab.com/xen-project/patchew/xen/-/jobs/1116936958

xenctrl_stubs.c:342:11: error: implicit declaration of function
'xc_domain_resume' is invalid in C99
[-Werror,-Wimplicit-function-declaration]
        result = xc_domain_resume(_H(xch), c_domid, 1);
                 ^
1 error generated.

I suspect you need to shuffle the headers in use for the Ocaml stubs too.

~Andrew



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.