From minios-devel-bounces@lists.xenproject.org Sun Apr 01 12:53:04 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sun, 01 Apr 2018 12:53:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f2cTm-00025f-6j; Sun, 01 Apr 2018 12:53:02 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=8rlr=gw=citrix.com=prvs=6229ec9b9=wei.liu2@srs-us1.protection.inumbo.net>)
 id 1f2cTk-00025a-Uz
 for minios-devel@lists.xenproject.org; Sun, 01 Apr 2018 12:53:00 +0000
X-Inumbo-ID: 8743bc8b-35ab-11e8-9728-bc764e045a96
Received: from SMTP.CITRIX.COM (unknown [66.165.176.89])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 8743bc8b-35ab-11e8-9728-bc764e045a96;
 Sun, 01 Apr 2018 14:52:26 +0200 (CEST)
X-IronPort-AV: E=Sophos;i="5.48,391,1517875200"; d="scan'208";a="469564148"
Date: Sun, 1 Apr 2018 13:52:17 +0100
From: Wei Liu <wei.liu2@citrix.com>
To: Ajay Garg <ajaygargnsit@gmail.com>
Message-ID: <20180401125217.yzi4rsz5a4roascj@citrix.com>
References: <CAHP4M8UGZaeazQDWA2RdBkwa3wFwGLvK4oj5v0QzK74=VeXS6Q@mail.gmail.com>
 <CAHP4M8V8megiFdt5LcZOCpZvV_fVg+WJ0AR_guxk7e7Coh6ORQ@mail.gmail.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <CAHP4M8V8megiFdt5LcZOCpZvV_fVg+WJ0AR_guxk7e7Coh6ORQ@mail.gmail.com>
User-Agent: NeoMutt/20170113 (1.7.2)
Subject: Re: [Minios-devel] Absence of CONFIG_PARAVIRT for arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, Wei Liu <wei.liu2@citrix.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gU2F0LCBNYXIgMzEsIDIwMTggYXQgMDc6MDg6MTVQTSArMDUzMCwgQWpheSBHYXJnIHdyb3Rl
Ogo+IEFsc28sIENvbmZpZy5tayBleHBsaWNpdGx5IGRpc2FibGVzIHBhcmEtdmlydHVhbGl6YXRp
b24gZm9yIGFueXRoaW5nCj4gb3RoZXIgdGhhbiB4ODYKPiAKPiAjIENvbmZpZ3VyYXRpb24gZGVm
YXVsdHMKPiBpZmVxICgkKFRBUkdFVF9BUkNIX0ZBTSkseDg2KQo+IENPTkZJR19QQVJBVklSVCA/
PSB5Cj4gZWxzZQo+IENPTkZJR19QQVJBVklSVCA/PSBuCj4gZW5kaWYKPiAKPiAKPiBTbywgaXMg
aXQgdGhhdCBwYXJhLXZpcnR1YWxpemF0aW9uIGlzIG5vdCBwb3NzaWJsZSBpbiBBUk0sIG9yIGl0
J3MKPiBqdXN0IG5vdCBsYW5kZWQgaW4gbWluaS1vcyAoeWV0KT8KPiAKClRoZSBBUk0gcG9ydCBv
ZiBtaW5pLW9zIGlzIGluY29tcGxldGUsIHNvIEkgd291bGRuJ3QgZXhwZWN0IGFueXRoaW5nIHRv
CmZ1bmN0aW9uIGF0IGFsbC4KCldlaS4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxp
c3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9s
aXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Sun Apr 01 12:55:26 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sun, 01 Apr 2018 12:55:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f2cW6-000297-EQ; Sun, 01 Apr 2018 12:55:26 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=vx/o=gw=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f2cW4-000292-GP
 for minios-devel@lists.xenproject.org; Sun, 01 Apr 2018 12:55:24 +0000
X-Inumbo-ID: dd43b1f2-35ab-11e8-9728-bc764e045a96
Received: from mail-lf0-x22d.google.com (unknown [2a00:1450:4010:c07::22d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id dd43b1f2-35ab-11e8-9728-bc764e045a96;
 Sun, 01 Apr 2018 14:54:51 +0200 (CEST)
Received: by mail-lf0-x22d.google.com with SMTP id p142-v6so17576043lfd.6
 for <minios-devel@lists.xenproject.org>; Sun, 01 Apr 2018 05:55:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=jImLRuUYSuR4eqNLnMoFlhA6D1HUDfQMW/5Nke04tH4=;
 b=P9PXpDGL86dDfXkTlZZto71fVuJCgi5b8KbjLDnXdIfo0av7/NWyp9+rZWt4XnyOI3
 ZDZxAvUdMjnvK7F0JeshrbTK38GTWbobBIWUpwfU8GC/rv9z5JyQXs7S0lzTwKfhu7Xe
 fOourV5nWG5wISq4D0/FBqlR4TTKBmx4WGQChn5ji0UoKE/QydJXOpXDaStSiv423+al
 ZBn06D7aZGcO2HPtMizhePHnjdZun0+G871AkKu2OltjVN9POnrYvrnvtG3xCrlIY7LO
 YGIzd4mE90JHm1beOU1xj9KQmxxp34zBOmdmLg6Ohs4vwqHnaPliBCP8X+qsZD0N4/6V
 MRQA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=jImLRuUYSuR4eqNLnMoFlhA6D1HUDfQMW/5Nke04tH4=;
 b=BDSTb8A+3J3UD4hy0tzfx6TCvyNjjNnZFe7EvILc6wjabcOivN9EbiUC/S8gVLllXG
 OF95DuvvNl34AK0f9I/WmMjJydWtd14r42a85ZWq92W3qWr1Gq/5RPYO+MzMlXValRkL
 FYEE5+k9xglJLypZIOTqtxXZejo33fIn9j/Ne/vxVK9o7d8j06bBEoNnYJl8RXDT1Lhr
 oxZcgPHRCDFti8zGAaKBeMnadqcJOhIwggwmZwqLVB0FOTwpEPMbCyw1X6sUnPR6xKt6
 zgEoXkpMtZyAHpz9kYLddmktOFOedFAqjy0YfMJFI7Cnzu8FyYhEJFJqwDD7gFGzWDM7
 doFQ==
X-Gm-Message-State: ALQs6tDHudnbPlRzWHdHOm4KYSjfQ/LDmWBKeirsVDhLpCjL54GakDwF
 EpQ0b0MfFheRpo0X/StVwpminoFCDt1/k2DTUBc=
X-Google-Smtp-Source: AIpwx48RkYFQxOgDIskOmR/4ORPIsnzOYLnSs97XZO7JBbAojbUTFCebbpsAcV6b/oKwnYrbSnxzr2YokxFiK+Mq7ic=
X-Received: by 10.46.158.19 with SMTP id e19mr3818988ljk.47.1522587321537;
 Sun, 01 Apr 2018 05:55:21 -0700 (PDT)
MIME-Version: 1.0
References: <CAHP4M8UGZaeazQDWA2RdBkwa3wFwGLvK4oj5v0QzK74=VeXS6Q@mail.gmail.com>
 <CAHP4M8V8megiFdt5LcZOCpZvV_fVg+WJ0AR_guxk7e7Coh6ORQ@mail.gmail.com>
 <20180401125217.yzi4rsz5a4roascj@citrix.com>
In-Reply-To: <20180401125217.yzi4rsz5a4roascj@citrix.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Sun, 01 Apr 2018 12:55:10 +0000
Message-ID: <CAHP4M8Wj-k-jRbtRxidkoSydNdWhNA9C_0XicQH4bp9T2XVkqw@mail.gmail.com>
To: Wei Liu <wei.liu2@citrix.com>
Subject: Re: [Minios-devel] Absence of CONFIG_PARAVIRT for arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: multipart/mixed; boundary="===============3655187101567360408=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============3655187101567360408==
Content-Type: multipart/alternative; boundary="883d24f1a568709a460568c8fcda"

--883d24f1a568709a460568c8fcda
Content-Type: text/plain; charset="UTF-8"

Ohh.. ok Wei.

Is there a task/work-in-progress listing somewhere? If yes, may I
contribute?



On Sun, 1 Apr 2018, 6:22 p.m. Wei Liu, <wei.liu2@citrix.com> wrote:

> On Sat, Mar 31, 2018 at 07:08:15PM +0530, Ajay Garg wrote:
> > Also, Config.mk explicitly disables para-virtualization for anything
> > other than x86
> >
> > # Configuration defaults
> > ifeq ($(TARGET_ARCH_FAM),x86)
> > CONFIG_PARAVIRT ?= y
> > else
> > CONFIG_PARAVIRT ?= n
> > endif
> >
> >
> > So, is it that para-virtualization is not possible in ARM, or it's
> > just not landed in mini-os (yet)?
> >
>
> The ARM port of mini-os is incomplete, so I wouldn't expect anything to
> function at all.
>
> Wei.
>

--883d24f1a568709a460568c8fcda
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">Ohh.. ok Wei.<div dir=3D"auto"><br></div><div dir=3D"auto=
">Is there a task/work-in-progress listing somewhere? If yes, may I contrib=
ute?</div><div dir=3D"auto"><br></div><div dir=3D"auto"><br></div></div><br=
><div class=3D"gmail_quote"><div dir=3D"ltr">On Sun, 1 Apr 2018, 6:22 p.m. =
Wei Liu, &lt;<a href=3D"mailto:wei.liu2@citrix.com">wei.liu2@citrix.com</a>=
&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 =
0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Sat, Mar 31, 2018 at=
 07:08:15PM +0530, Ajay Garg wrote:<br>
&gt; Also, Config.mk explicitly disables para-virtualization for anything<b=
r>
&gt; other than x86<br>
&gt;<br>
&gt; # Configuration defaults<br>
&gt; ifeq ($(TARGET_ARCH_FAM),x86)<br>
&gt; CONFIG_PARAVIRT ?=3D y<br>
&gt; else<br>
&gt; CONFIG_PARAVIRT ?=3D n<br>
&gt; endif<br>
&gt;<br>
&gt;<br>
&gt; So, is it that para-virtualization is not possible in ARM, or it&#39;s=
<br>
&gt; just not landed in mini-os (yet)?<br>
&gt;<br>
<br>
The ARM port of mini-os is incomplete, so I wouldn&#39;t expect anything to=
<br>
function at all.<br>
<br>
Wei.<br>
</blockquote></div>

--883d24f1a568709a460568c8fcda--


--===============3655187101567360408==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============3655187101567360408==--


From minios-devel-bounces@lists.xenproject.org Sun Apr 01 13:08:19 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sun, 01 Apr 2018 13:08:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f2ciY-0002tE-Cz; Sun, 01 Apr 2018 13:08:18 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=8rlr=gw=citrix.com=prvs=6229ec9b9=wei.liu2@srs-us1.protection.inumbo.net>)
 id 1f2ciX-0002sh-EG
 for minios-devel@lists.xenproject.org; Sun, 01 Apr 2018 13:08:17 +0000
X-Inumbo-ID: a9f9944b-35ad-11e8-9728-bc764e045a96
Received: from SMTP02.CITRIX.COM (unknown [66.165.176.63])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id a9f9944b-35ad-11e8-9728-bc764e045a96;
 Sun, 01 Apr 2018 15:07:43 +0200 (CEST)
X-IronPort-AV: E=Sophos;i="5.48,391,1517875200"; d="scan'208";a="467743057"
Date: Sun, 1 Apr 2018 14:07:30 +0100
From: Wei Liu <wei.liu2@citrix.com>
To: Ajay Garg <ajaygargnsit@gmail.com>
Message-ID: <20180401130730.76wsh2kersh5mklr@citrix.com>
References: <CAHP4M8UGZaeazQDWA2RdBkwa3wFwGLvK4oj5v0QzK74=VeXS6Q@mail.gmail.com>
 <CAHP4M8V8megiFdt5LcZOCpZvV_fVg+WJ0AR_guxk7e7Coh6ORQ@mail.gmail.com>
 <20180401125217.yzi4rsz5a4roascj@citrix.com>
 <CAHP4M8Wj-k-jRbtRxidkoSydNdWhNA9C_0XicQH4bp9T2XVkqw@mail.gmail.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <CAHP4M8Wj-k-jRbtRxidkoSydNdWhNA9C_0XicQH4bp9T2XVkqw@mail.gmail.com>
User-Agent: NeoMutt/20170113 (1.7.2)
Subject: Re: [Minios-devel] Absence of CONFIG_PARAVIRT for arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, shijie.huang@arm.com,
 Julien Grall <julien.grall@arm.com>, Wei Liu <wei.liu2@citrix.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UGxlYXNlIGRvbid0IHRvcC1wb3N0LgoKT24gU3VuLCBBcHIgMDEsIDIwMTggYXQgMTI6NTU6MTBQ
TSArMDAwMCwgQWpheSBHYXJnIHdyb3RlOgo+IE9oaC4uIG9rIFdlaS4KPiAKPiBJcyB0aGVyZSBh
IHRhc2svd29yay1pbi1wcm9ncmVzcyBsaXN0aW5nIHNvbWV3aGVyZT8gSWYgeWVzLCBtYXkgSQo+
IGNvbnRyaWJ1dGU/CgpJIGhhdmUgQ0MnZWQgc29tZSBBUk0gZm9sa3MgZm9yIHlvdS4gWW91IGNh
biBhbHNvIGZpbmQgdGhlaXIgcGF0Y2hlcyBpbgptaW5pb3MtZGV2ZWwgYXJjaGl2ZS4KCldlaS4K
Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1k
ZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBz
Oi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Sun Apr 01 13:51:53 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sun, 01 Apr 2018 13:51:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f2dOh-00063y-CS; Sun, 01 Apr 2018 13:51:51 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=vx/o=gw=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f2dOh-00063t-3t
 for minios-devel@lists.xenproject.org; Sun, 01 Apr 2018 13:51:51 +0000
X-Inumbo-ID: bfa16336-35b3-11e8-9728-bc764e045a96
Received: from mail-lf0-x235.google.com (unknown [2a00:1450:4010:c07::235])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id bfa16336-35b3-11e8-9728-bc764e045a96;
 Sun, 01 Apr 2018 15:51:17 +0200 (CEST)
Received: by mail-lf0-x235.google.com with SMTP id x70-v6so10822805lfa.0
 for <minios-devel@lists.xenproject.org>; Sun, 01 Apr 2018 06:51:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=tXGUpox5MDT+056Ci0wWpoFWOjybuMYW09pgneWFbhY=;
 b=JIbfALf+EnpeBxuQElbjEwPuWwbYludnMel7t16UpCgyylnMRhl1O84W7hdmpa77vm
 DDY4Wqw3itBYITCdswsWZfBxwvsxvY2EfvRerOAbf0gHBJnFZI4GZZk+ZYpE5ondzxff
 nPcXlU21cOXlETSgyzT2zW6aCCn+pQUUlxJDXZEAThu/1QYrFBv891uKXtUAJNNRau35
 +cgFwengLRf8Fe/1ax38jUVwv8Vw7PoNRet7BrzG7MW5ihu1qR4VI0oacHkLWe/ZwtmE
 X2axwGUmpzrr486+Dw8eSDjg/RHWcVEDjXU4yo0ozVueJPDS6B329Ck4WMrkrvn4DoJA
 Allg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=tXGUpox5MDT+056Ci0wWpoFWOjybuMYW09pgneWFbhY=;
 b=aeJaqB3lTWa2G/Mu59fkDiyxUEOl/jFA1eikoKT183QSE3h0970Pe2ZXBsMH1e1V29
 yEeR3yWCjvoE8Qf79zCc1XMKAh5X3LzZDoPfq9ZFYG2eJvrinU86Tkn0PQjpYTMsrv2k
 dbQk58Fk7Eue6UVrSefznxCLR2mbjAViJn4sH3dJLtsCpURE1z4aXvKeBmFdAkeE/Xzu
 swPFcnZpzxh95OzGWjxIFAwoB7ZupG8cyXc2mBmtFM2mYe2XIJdD8pGG3g3AphYRrWN1
 iah3gJyWT6F1x6Swo5wItEDs2KqztfGnf4DocIbWfezqeuJRgg8njzK+4/QHJqXDTeoq
 TCag==
X-Gm-Message-State: ALQs6tDIZlERqO+y8S0PPgg+3Ly6APERsQwMSQXeHN8lpKNoo4bBMx7K
 2i6vsKh8nFXpWPC1OOn1Q/gnjS3qOUBxQko4tHc=
X-Google-Smtp-Source: AIpwx49WGNzSm58nma0vsTK7IsZctA724VCF+XaccN/6ml/2EY3yb6PpaNM1V3Oet6cwfNP8rwnoGWWDW57Ffyr+8lc=
X-Received: by 2002:a19:d89a:: with SMTP id
 r26-v6mr3565218lfi.25.1522590707091; 
 Sun, 01 Apr 2018 06:51:47 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Sun, 1 Apr 2018 06:51:46 -0700 (PDT)
In-Reply-To: <20180401130730.76wsh2kersh5mklr@citrix.com>
References: <CAHP4M8UGZaeazQDWA2RdBkwa3wFwGLvK4oj5v0QzK74=VeXS6Q@mail.gmail.com>
 <CAHP4M8V8megiFdt5LcZOCpZvV_fVg+WJ0AR_guxk7e7Coh6ORQ@mail.gmail.com>
 <20180401125217.yzi4rsz5a4roascj@citrix.com>
 <CAHP4M8Wj-k-jRbtRxidkoSydNdWhNA9C_0XicQH4bp9T2XVkqw@mail.gmail.com>
 <20180401130730.76wsh2kersh5mklr@citrix.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Sun, 1 Apr 2018 19:21:46 +0530
Message-ID: <CAHP4M8X9u69qkKXpqbzBJXPp=4SBWCWOR_MJs8u4mKYtXwnOXg@mail.gmail.com>
To: Wei Liu <wei.liu2@citrix.com>
Subject: Re: [Minios-devel] Absence of CONFIG_PARAVIRT for arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, shijie.huang@arm.com,
 Julien Grall <julien.grall@arm.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gU3VuLCBBcHIgMSwgMjAxOCBhdCA2OjM3IFBNLCBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXgu
Y29tPiB3cm90ZToKPiBQbGVhc2UgZG9uJ3QgdG9wLXBvc3QuCj4KClNvcnJ5IFdlaSwgd2lsbCB0
YWtlIGNhcmUgaW4gZnV0dXJlLAoKCj4KPiBJIGhhdmUgQ0MnZWQgc29tZSBBUk0gZm9sa3MgZm9y
IHlvdS4gWW91IGNhbiBhbHNvIGZpbmQgdGhlaXIgcGF0Y2hlcyBpbgo+IG1pbmlvcy1kZXZlbCBh
cmNoaXZlLgoKVGhhbmtzIGEgdG9uIFdlaS4KCj4KPiBXZWkuCgoKCi0tIApSZWdhcmRzLApBamF5
CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3Mt
ZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw
czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Sun Apr 01 14:49:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sun, 01 Apr 2018 14:49:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f2eIM-000155-Ik; Sun, 01 Apr 2018 14:49:22 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=vx/o=gw=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f2eIL-000150-9S
 for minios-devel@lists.xenproject.org; Sun, 01 Apr 2018 14:49:21 +0000
X-Inumbo-ID: c74471b2-35bb-11e8-9728-bc764e045a96
Received: from mail-lf0-x229.google.com (unknown [2a00:1450:4010:c07::229])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id c74471b2-35bb-11e8-9728-bc764e045a96;
 Sun, 01 Apr 2018 16:48:46 +0200 (CEST)
Received: by mail-lf0-x229.google.com with SMTP id q5-v6so17727508lff.12
 for <minios-devel@lists.xenproject.org>; Sun, 01 Apr 2018 07:49:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:from:date:message-id:subject:to;
 bh=XKXc45k2qqflpKnNX2TGCDmUvv4mq3mYvdksML9Mvg4=;
 b=VKPw4sMOpTusvrQBl4+hyYnRhxk3YXO5JDLJZxmEc6OfRSSJM84MRE4zHJ4CMHjrR+
 rkjpFqmFxWELB/453s55V6TYnOt+zJyvVD4hZ6dOOxRqlcFMM1PeWU8AroyPgnAiveUy
 7F00eGRxfKKzPKIukXekqh+X/3kcdGqbdee8ZMgnfIR+sal3yTwUVyNCaQ2gAU//EIyL
 SNk9nsb6tvWk1GFBl0DmyUHjPhak5RfPEsCS3Do22HNKndGPUJxhPNH509joa+V85tuP
 gA1k2EelS4zItTU3lunjy7l9fQCr48NedZj37UXk9TNTUJ7p2+T8YYTgpwVuqe+UJnxW
 s9OQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
 bh=XKXc45k2qqflpKnNX2TGCDmUvv4mq3mYvdksML9Mvg4=;
 b=LgR67H2Sl+AbrWz/T6pkMwubNDaCZHnYl8l7+2nbd5qsFm0+9awpHF7H678WYO5+w/
 3CjQ1BX+nGNwGsKrmyeE15RbqLoAw1O8HCIbRfak+/tbgi24lQeHZzLHWMOty2My6qQF
 V2MG6xCDhlnmUFyxgmkhPvQEU5MciSdsd+26+wWBeMCcbANb3H+b4s8Aa8wLxFkbrRX9
 xSAvkjWzaMd6dJc9/v0X+eE7IStiZkdxDR7MnIbMvL0Lu/Ed7Hda6p61k4Gr4JySGHUS
 +0DQmRfTYx1tMm4i7tJ9V7mpEgBhlHUwEE+ldU/1bImYd8tCb3raXxa2OXXMOBugnDNR
 E2Kg==
X-Gm-Message-State: ALQs6tDGO2uh3U08KZkhV87H0VMkReKDyAe1XzBWryWcM/Qt0OqPYh6Q
 wjnu5hEoV5q+MWYvAKBZ8XxvBROcY0WXZS4eEQa5mA==
X-Google-Smtp-Source: AIpwx4+czt0IoRoWV8Nnkl8e+eqZMRUKdKvsfbcSDoyBlzYVg0T5iogi4WAhe4nn8qMlopCTu71IVNvawV1B107oUQk=
X-Received: by 10.46.158.137 with SMTP id f9mr4008279ljk.113.1522594156456;
 Sun, 01 Apr 2018 07:49:16 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Sun, 1 Apr 2018 07:49:15 -0700 (PDT)
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Sun, 1 Apr 2018 20:19:15 +0530
Message-ID: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen on
 x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgQWxsLgoKSSBmb2xsb3dlZCB0aGUgc3RlcHMgYXMgcGVyCmh0dHBzOi8vd2lraS54ZW5wcm9q
ZWN0Lm9yZy93aWtpL0NhdGVnb3J5OlVuaWtyYWZ0X1VzZXJzCgphbmQgd2FzIGFibGUgdG8gcnVu
IHRoZSB1c2Vyc3BhY2UgYmluYXJ5IHdpdGhvdXQgYW55IGhhc3NsZXMuCgoKSG93ZXZlciwgYWZ0
ZXIgSSBjb21waWxlIHRoZSBoZWxsby13b3JsZCBhcHAgZm9yIHhlbiBmb3IgeDg2XzY0IGFuZAp0
cnkgcnVubmluZyBpdCwgSSBnZXQgZXJyb3JzIGFzIGZvbGxvd3MgOgoKIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpy
b290QHVidW50dTovaG9tZS9hamF5L2hlbGxvd29ybGQjIHhsIGxpc3QKTmFtZSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJRCAgIE1lbSBWQ1BVcyAgICBTdGF0ZSAgICBU
aW1lKHMpCkRvbWFpbi0wICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAgIDI4
MzAgICAgIDEgICAgIHItLS0tLSAgICAgIDQ4LjYKCnJvb3RAdWJ1bnR1Oi9ob21lL2FqYXkvaGVs
bG93b3JsZCMgeGwgY3JlYXRlIC1jIGhlbGxvd29ybGQuY2ZnClBhcnNpbmcgY29uZmlnIGZyb20g
aGVsbG93b3JsZC5jZmcKbGlieGw6IGVycm9yOiBsaWJ4bF9kb20uYzozNzpsaWJ4bF9fZG9tYWlu
X3R5cGU6IHVuYWJsZSB0byBnZXQgZG9tYWluCnR5cGUgZm9yIGRvbWlkPTIKeGw6IHVuYWJsZSB0
byBleGVjIGNvbnNvbGUgY2xpZW50OiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmxpYnhsOiBl
cnJvcjogbGlieGxfZXhlYy5jOjExODpsaWJ4bF9yZXBvcnRfY2hpbGRfZXhpdHN0YXR1czogY29u
c29sZQpjaGlsZCBbNDExNV0gZXhpdGVkIHdpdGggZXJyb3Igc3RhdHVzIDEKCnJvb3RAdWJ1bnR1
Oi9ob21lL2FqYXkvaGVsbG93b3JsZCMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKCldoYXQgYW0gSSBtaXNzaW5n
PwoKClRoYW5rcyBhbmQgUmVnYXJkcywKQWpheQoKX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2
ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWls
bWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 02 03:53:18 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 02 Apr 2018 03:53:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f2qWy-0008OX-JB; Mon, 02 Apr 2018 03:53:16 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5oge=gx=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f2qWx-0008OS-3b
 for minios-devel@lists.xenproject.org; Mon, 02 Apr 2018 03:53:15 +0000
X-Inumbo-ID: 49afc7c1-3629-11e8-9728-bc764e045a96
Received: from mail-lf0-x231.google.com (unknown [2a00:1450:4010:c07::231])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 49afc7c1-3629-11e8-9728-bc764e045a96;
 Mon, 02 Apr 2018 05:52:40 +0200 (CEST)
Received: by mail-lf0-x231.google.com with SMTP id o102-v6so18926438lfg.8
 for <minios-devel@lists.xenproject.org>; Sun, 01 Apr 2018 20:53:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to;
 bh=uwWp6QNST/zVSM+6NK95fq87qXdbk9OuaQ+ZhxdJJDk=;
 b=CjzRR7TrnEvBVl2RWfvyuodFALotlyqWGPRhuj9G7H0ONvrD5MMpuAAAYFNWkBCgPw
 z9VZblE9S9zPl8wShsy6RHckuboFenAv4SEePzt2O5eAd+/te0Hmp9OMiI7v3Q8lhKK8
 5NMf1YvomW4mEUhNPoPrYvv6JfEF7JXO+UPnQzjM/V4J0nXmuU1eex6Zu5RF//Q6LtVP
 hi8A1WOG6ATL+4ihv4EoYODk+BGzg/D4rJfTukcSVgrPqnEH1FnCwrytztZpjefb3pCt
 5ah3Slc5E+5007Egpl2LOv9+OD5/QGHsFklvdKWzaFHz783gSK/Marha/P2iHCoOdlDv
 /MLQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=uwWp6QNST/zVSM+6NK95fq87qXdbk9OuaQ+ZhxdJJDk=;
 b=Iyyi5rKKCt0sFfmmUVYySEwX0AXnRLZCbLYgiej6nYDK1xYU5zk7rQSJ3QtSc+cj96
 63g0UmfGBO+aD9kb6KhbQeEgfxmFr1fDDjrSNyIf7P2fFCB0V6QwoUiRDpvK6MHW4M/H
 JpzhVx3f5ks5JcUK6Wz7haBY7iUbdRp+I9ZbNzMbQfR+g16xa/wyPg5T0J9RFQ1L5tXd
 hiZmUXCpdPn35EfVBXWIcwrSWdpsPCI6StctSTCgQKKhVAybtooCPOM/ELguN0OWcsZq
 Yow7tlIGkA1eyRqSSpOOjdmFbp8EN6nVAquWq2TcKy1uUHb9gcHhON5PyNKrju8rH0X4
 qUfQ==
X-Gm-Message-State: ALQs6tAdaOFAM8RXs2kAlyAyC1CzVoetUpl99Bpv7bYOeC1vwtWZliUy
 mVl105E7G3Z5U4rDhPC/mO3BF7JF6WWjTC/AOWQdHw==
X-Google-Smtp-Source: AIpwx49/8DhrgpvXcgoxWb/8uxaZIH6xpmrienQpIsHw0QRteHcPmPOuV2fq6zNSkn3ySu3n7VjRM65wGjQWFEkpX0U=
X-Received: by 10.46.153.147 with SMTP id w19mr4984663lji.93.1522641191286;
 Sun, 01 Apr 2018 20:53:11 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Sun, 1 Apr 2018 20:53:10 -0700 (PDT)
In-Reply-To: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Mon, 2 Apr 2018 09:23:10 +0530
Message-ID: <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QXMgcGVyIGh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvYXJjaGl2ZXMvaHRtbC94ZW4tZGV2
ZWwvMjAxNS0wOS9tc2cwMzg2NC5odG1sLApJIGFkZGVkIHRoZSBvcHRpb25zLgpQbGVhc2UgZmlu
ZCAvYm9vdC9ncnViL2dydWIuY2ZnIGF0dGFjaGVkIChnZW5lcmF0ZWQgYWZ0ZXIgcnVubmluZyB1
cGRhdGUtZ3J1YikuCgpBZnRlciB0aGlzLCBJIGNhbiBzZWUgdGhhdCBtb3N0IG9mIHRoZSBib290
LXVwIGxvZ3MgYXJlIE5PVCBzZWVuIGluCnRoZSB0ZXJtaW5hbCwgYW5kIGFsc28gdGhlIGZvbGxv
d2luZyBpcyBzZWVuIHdoZW4gSSBkbyAieGwgZG1lc2ciIDoKCiMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMzCihYRU4pIFN0ZC4gTG9nbGV2
ZWw6IEFsbAooWEVOKSBHdWVzdCBMb2dsZXZlbDogQWxsCihYRU4pIFhlbiBpcyByZWxpbnF1aXNo
aW5nIFZHQSBjb25zb2xlLgooWEVOKSAqKiogU2VyaWFsIGlucHV0IC0+IERPTTAgKHR5cGUgJ0NU
UkwtYScgdGhyZWUgdGltZXMgdG8gc3dpdGNoCmlucHV0IHRvIFhlbikKKFhFTikgRnJlZWQgMzA0
a0IgaW5pdCBtZW1vcnkuCihYRU4pIGQwIGF0dGVtcHRlZCB0byBjaGFuZ2UgZDB2MCdzIENSNCBm
bGFncyAwMDAwMDYyMCAtPiAwMDA0MDY2MAooWEVOKSBQQ0kgYWRkIGRldmljZSAwMDAwOjAwOjAw
LjAKKFhFTikgUENJIGFkZCBkZXZpY2UgMDAwMDowMDowMS4wCihYRU4pIFBDSSBhZGQgZGV2aWNl
IDAwMDA6MDA6MDEuMQooWEVOKSBQQ0kgYWRkIGRldmljZSAwMDAwOjAwOjAyLjAKKFhFTikgUENJ
IGFkZCBkZXZpY2UgMDAwMDowMDowMy4wCihYRU4pIFBDSSBhZGQgZGV2aWNlIDAwMDA6MDA6MDQu
MAooWEVOKSBQQ0kgYWRkIGRldmljZSAwMDAwOjAwOjA1LjAKKFhFTikgUENJIGFkZCBkZXZpY2Ug
MDAwMDowMDowNi4wCihYRU4pIFBDSSBhZGQgZGV2aWNlIDAwMDA6MDA6MDcuMAooWEVOKSBQQ0kg
YWRkIGRldmljZSAwMDAwOjAwOjBiLjAKKFhFTikgUENJIGFkZCBkZXZpY2UgMDAwMDowMDowZC4w
CiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMKCgpIb3dldmVyLCBhZnRlciBJIHJ1biAieGwgY3JlYXRlIC1jIGhlbGxvd29ybGQuY2ZnIiwg
SSBnZXQgdGhlIHNhbWUKZXJyb3JzIG9uIGNvbW1hbmQtbGluZSwgYW5kIGFic29sdXRlbHkgbm90
aGluZyBleHRyYSBpbiAieGwgZG1lc2ciLgoKCk9uIFN1biwgQXByIDEsIDIwMTggYXQgODoxOSBQ
TSwgQWpheSBHYXJnIDxhamF5Z2FyZ25zaXRAZ21haWwuY29tPiB3cm90ZToKPiBIaSBBbGwuCj4K
PiBJIGZvbGxvd2VkIHRoZSBzdGVwcyBhcyBwZXIKPiBodHRwczovL3dpa2kueGVucHJvamVjdC5v
cmcvd2lraS9DYXRlZ29yeTpVbmlrcmFmdF9Vc2Vycwo+Cj4gYW5kIHdhcyBhYmxlIHRvIHJ1biB0
aGUgdXNlcnNwYWNlIGJpbmFyeSB3aXRob3V0IGFueSBoYXNzbGVzLgo+Cj4KPiBIb3dldmVyLCBh
ZnRlciBJIGNvbXBpbGUgdGhlIGhlbGxvLXdvcmxkIGFwcCBmb3IgeGVuIGZvciB4ODZfNjQgYW5k
Cj4gdHJ5IHJ1bm5pbmcgaXQsIEkgZ2V0IGVycm9ycyBhcyBmb2xsb3dzIDoKPgo+ICMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMKPiByb290QHVidW50dTovaG9tZS9hamF5L2hlbGxvd29ybGQjIHhsIGxpc3QKPiBOYW1l
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElEICAgTWVtIFZDUFVzICAg
IFN0YXRlICAgIFRpbWUocykKPiBEb21haW4tMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAwICAyODMwICAgICAxICAgICByLS0tLS0gICAgICA0OC42Cj4KPiByb290QHVidW50
dTovaG9tZS9hamF5L2hlbGxvd29ybGQjIHhsIGNyZWF0ZSAtYyBoZWxsb3dvcmxkLmNmZwo+IFBh
cnNpbmcgY29uZmlnIGZyb20gaGVsbG93b3JsZC5jZmcKPiBsaWJ4bDogZXJyb3I6IGxpYnhsX2Rv
bS5jOjM3OmxpYnhsX19kb21haW5fdHlwZTogdW5hYmxlIHRvIGdldCBkb21haW4KPiB0eXBlIGZv
ciBkb21pZD0yCj4geGw6IHVuYWJsZSB0byBleGVjIGNvbnNvbGUgY2xpZW50OiBObyBzdWNoIGZp
bGUgb3IgZGlyZWN0b3J5Cj4gbGlieGw6IGVycm9yOiBsaWJ4bF9leGVjLmM6MTE4OmxpYnhsX3Jl
cG9ydF9jaGlsZF9leGl0c3RhdHVzOiBjb25zb2xlCj4gY2hpbGQgWzQxMTVdIGV4aXRlZCB3aXRo
IGVycm9yIHN0YXR1cyAxCj4KPiByb290QHVidW50dTovaG9tZS9hamF5L2hlbGxvd29ybGQjCj4g
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIwo+Cj4KPiBXaGF0IGFtIEkgbWlzc2luZz8KPgo+Cj4gVGhhbmtzIGFuZCBS
ZWdhcmRzLAo+IEFqYXkKCgoKLS0gClJlZ2FyZHMsCkFqYXkKCl9fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWlu
aW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5v
cmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 02 03:54:14 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 02 Apr 2018 03:54:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f2qXu-0008Q6-Mx; Mon, 02 Apr 2018 03:54:14 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5oge=gx=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f2qXt-0008Q1-7J
 for minios-devel@lists.xenproject.org; Mon, 02 Apr 2018 03:54:13 +0000
X-Inumbo-ID: 6ca1532e-3629-11e8-9728-bc764e045a96
Received: from mail-lf0-x235.google.com (unknown [2a00:1450:4010:c07::235])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 6ca1532e-3629-11e8-9728-bc764e045a96;
 Mon, 02 Apr 2018 05:53:38 +0200 (CEST)
Received: by mail-lf0-x235.google.com with SMTP id j68-v6so18909434lfg.13
 for <minios-devel@lists.xenproject.org>; Sun, 01 Apr 2018 20:54:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to;
 bh=+FLRIQNQCkk54xWJn2ffUjoNQh/bvAoLY4VmPScAcpY=;
 b=Ei8KOAYZhvPLuvvRAyQMk6rh4FRCSo2eJfg6inUFWBFnFh/Al6PMMlsDIJ4Zia1lKP
 9BGf8vM6AKbtEIBR3GjnLVRSTHlu/SXamZhkQE8Bf5gBn/FVOsOLRhRRPrYdrdzw7OWq
 d5AjqjRfj6YsdnrA4JGv5WwhK4UAXZyl7XMZSjIHvX9pg/S2zvYaoabUz5wHGw8qI+IN
 OwgdRCJNS1ai6kX6DY6dZ98xEqQC5FM/c4OVPs1sBVGxId7rGWClHRG/34SjoJ1sgh53
 TONFQYLpFawSbocMCUv12NjjOCHGUelUtVjhwIpNYl9iyDAkDAPrTeCzMjCDknUgPEQ5
 CFRg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=+FLRIQNQCkk54xWJn2ffUjoNQh/bvAoLY4VmPScAcpY=;
 b=YqAxC6h8/uEf/7wVeyMzk274Bnfjk66tuoWycXmzki24YgE1uuKI9oVkthEwSYpcSg
 HNyTpQc/LmbWq5olQjv377Fywsa5aE9a7iT2jEgbbHUYGaRoJveiMWxrtSUzC9kZhPpR
 u/KxDtXqO1eOhSekFqcuiofwU0B0TXIdA3IDFrpyVD2cM7cieI8xgy+oyjE6drrWX18h
 07sg0AEEKLiDKF12J0s9sxLvua0pneeOK+HmtWlKBu4PpdylnEibn3bGImgL2nLPcQl7
 K+1M/TLDzLKWW06xr+u9cHsIe4i2iJQNTDCquxQFIO2apAqdGn8QoeoXxWoSEQscxYMv
 ELFw==
X-Gm-Message-State: ALQs6tBZO+ZfD5NZjMc0r7cLPw45JYfyBO+lpqLcdLpDZglRxLv3PMIb
 pZ7VJv/n3LwEjZXOTI2hdnV9bT1BbTF8GjAHZP0=
X-Google-Smtp-Source: AIpwx4/e+lM64NGIqvJuyH/Yqaq08TYPB4srTHKnvfj9kl3GpICMynct5EZkh6qegel1iGJ4rUcfasOfAbMnfUyUdrQ=
X-Received: by 2002:a19:e418:: with SMTP id
 b24-v6mr4482450lfh.61.1522641250090; 
 Sun, 01 Apr 2018 20:54:10 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Sun, 1 Apr 2018 20:54:09 -0700 (PDT)
In-Reply-To: <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Mon, 2 Apr 2018 09:24:09 +0530
Message-ID: <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Content-Type: multipart/mixed; boundary="000000000000d51da70568d58a3c"
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--000000000000d51da70568d58a3c
Content-Type: text/plain; charset="UTF-8"

Forgot the attachment..

On Mon, Apr 2, 2018 at 9:23 AM, Ajay Garg <ajaygargnsit@gmail.com> wrote:
> As per https://lists.xenproject.org/archives/html/xen-devel/2015-09/msg03864.html,
> I added the options.
> Please find /boot/grub/grub.cfg attached (generated after running update-grub).
>
> After this, I can see that most of the boot-up logs are NOT seen in
> the terminal, and also the following is seen when I do "xl dmesg" :
>
> ##########################################################3
> (XEN) Std. Loglevel: All
> (XEN) Guest Loglevel: All
> (XEN) Xen is relinquishing VGA console.
> (XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch
> input to Xen)
> (XEN) Freed 304kB init memory.
> (XEN) d0 attempted to change d0v0's CR4 flags 00000620 -> 00040660
> (XEN) PCI add device 0000:00:00.0
> (XEN) PCI add device 0000:00:01.0
> (XEN) PCI add device 0000:00:01.1
> (XEN) PCI add device 0000:00:02.0
> (XEN) PCI add device 0000:00:03.0
> (XEN) PCI add device 0000:00:04.0
> (XEN) PCI add device 0000:00:05.0
> (XEN) PCI add device 0000:00:06.0
> (XEN) PCI add device 0000:00:07.0
> (XEN) PCI add device 0000:00:0b.0
> (XEN) PCI add device 0000:00:0d.0
> ##########################################################
>
>
> However, after I run "xl create -c helloworld.cfg", I get the same
> errors on command-line, and absolutely nothing extra in "xl dmesg".
>
>
> On Sun, Apr 1, 2018 at 8:19 PM, Ajay Garg <ajaygargnsit@gmail.com> wrote:
>> Hi All.
>>
>> I followed the steps as per
>> https://wiki.xenproject.org/wiki/Category:Unikraft_Users
>>
>> and was able to run the userspace binary without any hassles.
>>
>>
>> However, after I compile the hello-world app for xen for x86_64 and
>> try running it, I get errors as follows :
>>
>> ######################################################################
>> root@ubuntu:/home/ajay/helloworld# xl list
>> Name                                        ID   Mem VCPUs    State    Time(s)
>> Domain-0                                     0  2830     1     r-----      48.6
>>
>> root@ubuntu:/home/ajay/helloworld# xl create -c helloworld.cfg
>> Parsing config from helloworld.cfg
>> libxl: error: libxl_dom.c:37:libxl__domain_type: unable to get domain
>> type for domid=2
>> xl: unable to exec console client: No such file or directory
>> libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: console
>> child [4115] exited with error status 1
>>
>> root@ubuntu:/home/ajay/helloworld#
>> ######################################################################
>>
>>
>> What am I missing?
>>
>>
>> Thanks and Regards,
>> Ajay
>
>
>
> --
> Regards,
> Ajay



-- 
Regards,
Ajay

--000000000000d51da70568d58a3c
Content-Type: application/octet-stream; name="grub.cfg"
Content-Disposition: attachment; filename="grub.cfg"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_jfhpa6q00

IwojIERPIE5PVCBFRElUIFRISVMgRklMRQojCiMgSXQgaXMgYXV0b21hdGljYWxseSBnZW5lcmF0
ZWQgYnkgZ3J1Yi1ta2NvbmZpZyB1c2luZyB0ZW1wbGF0ZXMKIyBmcm9tIC9ldGMvZ3J1Yi5kIGFu
ZCBzZXR0aW5ncyBmcm9tIC9ldGMvZGVmYXVsdC9ncnViCiMKCiMjIyBCRUdJTiAvZXRjL2dydWIu
ZC8wMF9oZWFkZXIgIyMjCmlmIFsgLXMgJHByZWZpeC9ncnViZW52IF07IHRoZW4KICBzZXQgaGF2
ZV9ncnViZW52PXRydWUKICBsb2FkX2VudgpmaQppZiBbICIke25leHRfZW50cnl9IiBdIDsgdGhl
bgogICBzZXQgZGVmYXVsdD0iJHtuZXh0X2VudHJ5fSIKICAgc2V0IG5leHRfZW50cnk9CiAgIHNh
dmVfZW52IG5leHRfZW50cnkKICAgc2V0IGJvb3Rfb25jZT10cnVlCmVsc2UKICAgc2V0IGRlZmF1
bHQ9IlVidW50dSBHTlUvTGludXgsIHdpdGggWGVuIGh5cGVydmlzb3IiCmZpCgppZiBbIHgiJHtm
ZWF0dXJlX21lbnVlbnRyeV9pZH0iID0geHkgXTsgdGhlbgogIG1lbnVlbnRyeV9pZF9vcHRpb249
Ii0taWQiCmVsc2UKICBtZW51ZW50cnlfaWRfb3B0aW9uPSIiCmZpCgpleHBvcnQgbWVudWVudHJ5
X2lkX29wdGlvbgoKaWYgWyAiJHtwcmV2X3NhdmVkX2VudHJ5fSIgXTsgdGhlbgogIHNldCBzYXZl
ZF9lbnRyeT0iJHtwcmV2X3NhdmVkX2VudHJ5fSIKICBzYXZlX2VudiBzYXZlZF9lbnRyeQogIHNl
dCBwcmV2X3NhdmVkX2VudHJ5PQogIHNhdmVfZW52IHByZXZfc2F2ZWRfZW50cnkKICBzZXQgYm9v
dF9vbmNlPXRydWUKZmkKCmZ1bmN0aW9uIHNhdmVkZWZhdWx0IHsKICBpZiBbIC16ICIke2Jvb3Rf
b25jZX0iIF07IHRoZW4KICAgIHNhdmVkX2VudHJ5PSIke2Nob3Nlbn0iCiAgICBzYXZlX2VudiBz
YXZlZF9lbnRyeQogIGZpCn0KZnVuY3Rpb24gcmVjb3JkZmFpbCB7CiAgc2V0IHJlY29yZGZhaWw9
MQogIGlmIFsgLW4gIiR7aGF2ZV9ncnViZW52fSIgXTsgdGhlbiBpZiBbIC16ICIke2Jvb3Rfb25j
ZX0iIF07IHRoZW4gc2F2ZV9lbnYgcmVjb3JkZmFpbDsgZmk7IGZpCn0KZnVuY3Rpb24gbG9hZF92
aWRlbyB7CiAgaWYgWyB4JGZlYXR1cmVfYWxsX3ZpZGVvX21vZHVsZSA9IHh5IF07IHRoZW4KICAg
IGluc21vZCBhbGxfdmlkZW8KICBlbHNlCiAgICBpbnNtb2QgZWZpX2dvcAogICAgaW5zbW9kIGVm
aV91Z2EKICAgIGluc21vZCBpZWVlMTI3NV9mYgogICAgaW5zbW9kIHZiZQogICAgaW5zbW9kIHZn
YQogICAgaW5zbW9kIHZpZGVvX2JvY2hzCiAgICBpbnNtb2QgdmlkZW9fY2lycnVzCiAgZmkKfQoK
aWYgWyB4JGZlYXR1cmVfZGVmYXVsdF9mb250X3BhdGggPSB4eSBdIDsgdGhlbgogICBmb250PXVu
aWNvZGUKZWxzZQppbnNtb2QgcGFydF9tc2RvcwppbnNtb2QgZXh0MgpzZXQgcm9vdD0naGQwLG1z
ZG9zMScKaWYgWyB4JGZlYXR1cmVfcGxhdGZvcm1fc2VhcmNoX2hpbnQgPSB4eSBdOyB0aGVuCiAg
c2VhcmNoIC0tbm8tZmxvcHB5IC0tZnMtdXVpZCAtLXNldD1yb290IC0taGludC1iaW9zPWhkMCxt
c2RvczEgLS1oaW50LWVmaT1oZDAsbXNkb3MxIC0taGludC1iYXJlbWV0YWw9YWhjaTAsbXNkb3Mx
ICBlMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZhNzMKZWxzZQogIHNlYXJjaCAtLW5v
LWZsb3BweSAtLWZzLXV1aWQgLS1zZXQ9cm9vdCBlMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4
ZjA4OTZhNzMKZmkKICAgIGZvbnQ9Ii91c3Ivc2hhcmUvZ3J1Yi91bmljb2RlLnBmMiIKZmkKCmlm
IGxvYWRmb250ICRmb250IDsgdGhlbgogIHNldCBnZnhtb2RlPWF1dG8KICBsb2FkX3ZpZGVvCiAg
aW5zbW9kIGdmeHRlcm0KICBzZXQgbG9jYWxlX2Rpcj0kcHJlZml4L2xvY2FsZQogIHNldCBsYW5n
PWVuX0lOCiAgaW5zbW9kIGdldHRleHQKZmkKdGVybWluYWxfb3V0cHV0IGdmeHRlcm0KaWYgWyAi
JHtyZWNvcmRmYWlsfSIgPSAxIF0gOyB0aGVuCiAgc2V0IHRpbWVvdXQ9MzAKZWxzZQogIGlmIFsg
eCRmZWF0dXJlX3RpbWVvdXRfc3R5bGUgPSB4eSBdIDsgdGhlbgogICAgc2V0IHRpbWVvdXRfc3R5
bGU9bWVudQogICAgc2V0IHRpbWVvdXQ9MgogICMgRmFsbGJhY2sgbm9ybWFsIHRpbWVvdXQgY29k
ZSBpbiBjYXNlIHRoZSB0aW1lb3V0X3N0eWxlIGZlYXR1cmUgaXMKICAjIHVuYXZhaWxhYmxlLgog
IGVsc2UKICAgIHNldCB0aW1lb3V0PTIKICBmaQpmaQojIyMgRU5EIC9ldGMvZ3J1Yi5kLzAwX2hl
YWRlciAjIyMKCiMjIyBCRUdJTiAvZXRjL2dydWIuZC8wNV9kZWJpYW5fdGhlbWUgIyMjCnNldCBt
ZW51X2NvbG9yX25vcm1hbD13aGl0ZS9ibGFjawpzZXQgbWVudV9jb2xvcl9oaWdobGlnaHQ9Ymxh
Y2svbGlnaHQtZ3JheQojIyMgRU5EIC9ldGMvZ3J1Yi5kLzA1X2RlYmlhbl90aGVtZSAjIyMKCiMj
IyBCRUdJTiAvZXRjL2dydWIuZC8xMF9saW51eCAjIyMKZnVuY3Rpb24gZ2Z4bW9kZSB7CglzZXQg
Z2Z4cGF5bG9hZD0iJHsxfSIKCWlmIFsgIiR7MX0iID0gImtlZXAiIF07IHRoZW4KCQlzZXQgdnRf
aGFuZG9mZj12dC5oYW5kb2ZmPTcKCWVsc2UKCQlzZXQgdnRfaGFuZG9mZj0KCWZpCn0KaWYgWyAi
JHtyZWNvcmRmYWlsfSIgIT0gMSBdOyB0aGVuCiAgaWYgWyAtZSAke3ByZWZpeH0vZ2Z4YmxhY2ts
aXN0LnR4dCBdOyB0aGVuCiAgICBpZiBod21hdGNoICR7cHJlZml4fS9nZnhibGFja2xpc3QudHh0
IDM7IHRoZW4KICAgICAgaWYgWyAke21hdGNofSA9IDAgXTsgdGhlbgogICAgICAgIHNldCBsaW51
eF9nZnhfbW9kZT1rZWVwCiAgICAgIGVsc2UKICAgICAgICBzZXQgbGludXhfZ2Z4X21vZGU9dGV4
dAogICAgICBmaQogICAgZWxzZQogICAgICBzZXQgbGludXhfZ2Z4X21vZGU9dGV4dAogICAgZmkK
ICBlbHNlCiAgICBzZXQgbGludXhfZ2Z4X21vZGU9a2VlcAogIGZpCmVsc2UKICBzZXQgbGludXhf
Z2Z4X21vZGU9dGV4dApmaQpleHBvcnQgbGludXhfZ2Z4X21vZGUKbWVudWVudHJ5ICdVYnVudHUn
IC0tY2xhc3MgdWJ1bnR1IC0tY2xhc3MgZ251LWxpbnV4IC0tY2xhc3MgZ251IC0tY2xhc3Mgb3Mg
JG1lbnVlbnRyeV9pZF9vcHRpb24gJ2dudWxpbnV4LXNpbXBsZS1lMTBjM2NhOS1hY2QyLTRkYmYt
ODg5ZS0wMjM4ZjA4OTZhNzMnIHsKCXJlY29yZGZhaWwKCWxvYWRfdmlkZW8KCWdmeG1vZGUgJGxp
bnV4X2dmeF9tb2RlCglpbnNtb2QgZ3ppbwoJaWYgWyB4JGdydWJfcGxhdGZvcm0gPSB4eGVuIF07
IHRoZW4gaW5zbW9kIHh6aW87IGluc21vZCBsem9waW87IGZpCglpbnNtb2QgcGFydF9tc2RvcwoJ
aW5zbW9kIGV4dDIKCXNldCByb290PSdoZDAsbXNkb3MxJwoJaWYgWyB4JGZlYXR1cmVfcGxhdGZv
cm1fc2VhcmNoX2hpbnQgPSB4eSBdOyB0aGVuCgkgIHNlYXJjaCAtLW5vLWZsb3BweSAtLWZzLXV1
aWQgLS1zZXQ9cm9vdCAtLWhpbnQtYmlvcz1oZDAsbXNkb3MxIC0taGludC1lZmk9aGQwLG1zZG9z
MSAtLWhpbnQtYmFyZW1ldGFsPWFoY2kwLG1zZG9zMSAgZTEwYzNjYTktYWNkMi00ZGJmLTg4OWUt
MDIzOGYwODk2YTczCgllbHNlCgkgIHNlYXJjaCAtLW5vLWZsb3BweSAtLWZzLXV1aWQgLS1zZXQ9
cm9vdCBlMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZhNzMKCWZpCiAgICAgICAgbGlu
dXgJL2Jvb3Qvdm1saW51ei00LjQuMC0xMTYtZ2VuZXJpYyByb290PVVVSUQ9ZTEwYzNjYTktYWNk
Mi00ZGJmLTg4OWUtMDIzOGYwODk2YTczIHJvICAKCWluaXRyZAkvYm9vdC9pbml0cmQuaW1nLTQu
NC4wLTExNi1nZW5lcmljCn0Kc3VibWVudSAnQWR2YW5jZWQgb3B0aW9ucyBmb3IgVWJ1bnR1JyAk
bWVudWVudHJ5X2lkX29wdGlvbiAnZ251bGludXgtYWR2YW5jZWQtZTEwYzNjYTktYWNkMi00ZGJm
LTg4OWUtMDIzOGYwODk2YTczJyB7CgltZW51ZW50cnkgJ1VidW50dSwgd2l0aCBMaW51eCA0LjQu
MC0xMTYtZ2VuZXJpYycgLS1jbGFzcyB1YnVudHUgLS1jbGFzcyBnbnUtbGludXggLS1jbGFzcyBn
bnUgLS1jbGFzcyBvcyAkbWVudWVudHJ5X2lkX29wdGlvbiAnZ251bGludXgtNC40LjAtMTE2LWdl
bmVyaWMtYWR2YW5jZWQtZTEwYzNjYTktYWNkMi00ZGJmLTg4OWUtMDIzOGYwODk2YTczJyB7CgkJ
cmVjb3JkZmFpbAoJCWxvYWRfdmlkZW8KCQlnZnhtb2RlICRsaW51eF9nZnhfbW9kZQoJCWluc21v
ZCBnemlvCgkJaWYgWyB4JGdydWJfcGxhdGZvcm0gPSB4eGVuIF07IHRoZW4gaW5zbW9kIHh6aW87
IGluc21vZCBsem9waW87IGZpCgkJaW5zbW9kIHBhcnRfbXNkb3MKCQlpbnNtb2QgZXh0MgoJCXNl
dCByb290PSdoZDAsbXNkb3MxJwoJCWlmIFsgeCRmZWF0dXJlX3BsYXRmb3JtX3NlYXJjaF9oaW50
ID0geHkgXTsgdGhlbgoJCSAgc2VhcmNoIC0tbm8tZmxvcHB5IC0tZnMtdXVpZCAtLXNldD1yb290
IC0taGludC1iaW9zPWhkMCxtc2RvczEgLS1oaW50LWVmaT1oZDAsbXNkb3MxIC0taGludC1iYXJl
bWV0YWw9YWhjaTAsbXNkb3MxICBlMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZhNzMK
CQllbHNlCgkJICBzZWFyY2ggLS1uby1mbG9wcHkgLS1mcy11dWlkIC0tc2V0PXJvb3QgZTEwYzNj
YTktYWNkMi00ZGJmLTg4OWUtMDIzOGYwODk2YTczCgkJZmkKCQllY2hvCSdMb2FkaW5nIExpbnV4
IDQuNC4wLTExNi1nZW5lcmljIC4uLicKCSAgICAgICAgbGludXgJL2Jvb3Qvdm1saW51ei00LjQu
MC0xMTYtZ2VuZXJpYyByb290PVVVSUQ9ZTEwYzNjYTktYWNkMi00ZGJmLTg4OWUtMDIzOGYwODk2
YTczIHJvICAKCQllY2hvCSdMb2FkaW5nIGluaXRpYWwgcmFtZGlzayAuLi4nCgkJaW5pdHJkCS9i
b290L2luaXRyZC5pbWctNC40LjAtMTE2LWdlbmVyaWMKCX0KCW1lbnVlbnRyeSAnVWJ1bnR1LCB3
aXRoIExpbnV4IDQuNC4wLTExNi1nZW5lcmljIChyZWNvdmVyeSBtb2RlKScgLS1jbGFzcyB1YnVu
dHUgLS1jbGFzcyBnbnUtbGludXggLS1jbGFzcyBnbnUgLS1jbGFzcyBvcyAkbWVudWVudHJ5X2lk
X29wdGlvbiAnZ251bGludXgtNC40LjAtMTE2LWdlbmVyaWMtcmVjb3ZlcnktZTEwYzNjYTktYWNk
Mi00ZGJmLTg4OWUtMDIzOGYwODk2YTczJyB7CgkJcmVjb3JkZmFpbAoJCWxvYWRfdmlkZW8KCQlp
bnNtb2QgZ3ppbwoJCWlmIFsgeCRncnViX3BsYXRmb3JtID0geHhlbiBdOyB0aGVuIGluc21vZCB4
emlvOyBpbnNtb2QgbHpvcGlvOyBmaQoJCWluc21vZCBwYXJ0X21zZG9zCgkJaW5zbW9kIGV4dDIK
CQlzZXQgcm9vdD0naGQwLG1zZG9zMScKCQlpZiBbIHgkZmVhdHVyZV9wbGF0Zm9ybV9zZWFyY2hf
aGludCA9IHh5IF07IHRoZW4KCQkgIHNlYXJjaCAtLW5vLWZsb3BweSAtLWZzLXV1aWQgLS1zZXQ9
cm9vdCAtLWhpbnQtYmlvcz1oZDAsbXNkb3MxIC0taGludC1lZmk9aGQwLG1zZG9zMSAtLWhpbnQt
YmFyZW1ldGFsPWFoY2kwLG1zZG9zMSAgZTEwYzNjYTktYWNkMi00ZGJmLTg4OWUtMDIzOGYwODk2
YTczCgkJZWxzZQoJCSAgc2VhcmNoIC0tbm8tZmxvcHB5IC0tZnMtdXVpZCAtLXNldD1yb290IGUx
MGMzY2E5LWFjZDItNGRiZi04ODllLTAyMzhmMDg5NmE3MwoJCWZpCgkJZWNobwknTG9hZGluZyBM
aW51eCA0LjQuMC0xMTYtZ2VuZXJpYyAuLi4nCgkgICAgICAgIGxpbnV4CS9ib290L3ZtbGludXot
NC40LjAtMTE2LWdlbmVyaWMgcm9vdD1VVUlEPWUxMGMzY2E5LWFjZDItNGRiZi04ODllLTAyMzhm
MDg5NmE3MyBybyByZWNvdmVyeSBub21vZGVzZXQgCgkJZWNobwknTG9hZGluZyBpbml0aWFsIHJh
bWRpc2sgLi4uJwoJCWluaXRyZAkvYm9vdC9pbml0cmQuaW1nLTQuNC4wLTExNi1nZW5lcmljCgl9
Cn0KCiMjIyBFTkQgL2V0Yy9ncnViLmQvMTBfbGludXggIyMjCgojIyMgQkVHSU4gL2V0Yy9ncnVi
LmQvMjBfbGludXhfeGVuICMjIwptZW51ZW50cnkgJ1VidW50dSBHTlUvTGludXgsIHdpdGggWGVu
IGh5cGVydmlzb3InIC0tY2xhc3MgdWJ1bnR1IC0tY2xhc3MgZ251LWxpbnV4IC0tY2xhc3MgZ251
IC0tY2xhc3Mgb3MgLS1jbGFzcyB4ZW4gJG1lbnVlbnRyeV9pZF9vcHRpb24gJ3hlbi1nbnVsaW51
eC1zaW1wbGUtZTEwYzNjYTktYWNkMi00ZGJmLTg4OWUtMDIzOGYwODk2YTczJyB7CglpbnNtb2Qg
cGFydF9tc2RvcwoJaW5zbW9kIGV4dDIKCXNldCByb290PSdoZDAsbXNkb3MxJwoJaWYgWyB4JGZl
YXR1cmVfcGxhdGZvcm1fc2VhcmNoX2hpbnQgPSB4eSBdOyB0aGVuCgkgIHNlYXJjaCAtLW5vLWZs
b3BweSAtLWZzLXV1aWQgLS1zZXQ9cm9vdCAtLWhpbnQtYmlvcz1oZDAsbXNkb3MxIC0taGludC1l
Zmk9aGQwLG1zZG9zMSAtLWhpbnQtYmFyZW1ldGFsPWFoY2kwLG1zZG9zMSAgZTEwYzNjYTktYWNk
Mi00ZGJmLTg4OWUtMDIzOGYwODk2YTczCgllbHNlCgkgIHNlYXJjaCAtLW5vLWZsb3BweSAtLWZz
LXV1aWQgLS1zZXQ9cm9vdCBlMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZhNzMKCWZp
CgllY2hvCSdMb2FkaW5nIFhlbiA0LjYtYW1kNjQgLi4uJwogICAgICAgIGlmIFsgIiRncnViX3Bs
YXRmb3JtIiA9ICJwYyIgLW8gIiRncnViX3BsYXRmb3JtIiA9ICIiIF07IHRoZW4KICAgICAgICAg
ICAgeGVuX3JtX29wdHM9CiAgICAgICAgZWxzZQogICAgICAgICAgICB4ZW5fcm1fb3B0cz0ibm8t
cmVhbC1tb2RlIGVkZD1vZmYiCiAgICAgICAgZmkKCW11bHRpYm9vdAkvYm9vdC94ZW4tNC42LWFt
ZDY0Lmd6IHBsYWNlaG9sZGVyICBsb2dsdmw9YWxsIGd1ZXN0X2xvZ2x2bD1hbGwgJHt4ZW5fcm1f
b3B0c30KCWVjaG8JJ0xvYWRpbmcgTGludXggNC40LjAtMTE2LWdlbmVyaWMgLi4uJwoJbW9kdWxl
CS9ib290L3ZtbGludXotNC40LjAtMTE2LWdlbmVyaWMgcGxhY2Vob2xkZXIgcm9vdD1VVUlEPWUx
MGMzY2E5LWFjZDItNGRiZi04ODllLTAyMzhmMDg5NmE3MyBybyAgZWFybHlwcmludGs9eGVuIHhl
bmNvbnM9aHZjIGNvbnNvbGU9aHZjMAoJZWNobwknTG9hZGluZyBpbml0aWFsIHJhbWRpc2sgLi4u
JwoJbW9kdWxlCS0tbm91bnppcCAgIC9ib290L2luaXRyZC5pbWctNC40LjAtMTE2LWdlbmVyaWMK
fQpzdWJtZW51ICdBZHZhbmNlZCBvcHRpb25zIGZvciBVYnVudHUgR05VL0xpbnV4ICh3aXRoIFhl
biBoeXBlcnZpc29yKScgJG1lbnVlbnRyeV9pZF9vcHRpb24gJ2dudWxpbnV4LWFkdmFuY2VkLWUx
MGMzY2E5LWFjZDItNGRiZi04ODllLTAyMzhmMDg5NmE3MycgewoJc3VibWVudSAnWGVuIGh5cGVy
dmlzb3IsIHZlcnNpb24gNC42LWFtZDY0JyAkbWVudWVudHJ5X2lkX29wdGlvbiAneGVuLWh5cGVy
dmlzb3ItNC42LWFtZDY0LWUxMGMzY2E5LWFjZDItNGRiZi04ODllLTAyMzhmMDg5NmE3MycgewoJ
CW1lbnVlbnRyeSAnVWJ1bnR1IEdOVS9MaW51eCwgd2l0aCBYZW4gNC42LWFtZDY0IGFuZCBMaW51
eCA0LjQuMC0xMTYtZ2VuZXJpYycgLS1jbGFzcyB1YnVudHUgLS1jbGFzcyBnbnUtbGludXggLS1j
bGFzcyBnbnUgLS1jbGFzcyBvcyAtLWNsYXNzIHhlbiAkbWVudWVudHJ5X2lkX29wdGlvbiAneGVu
LWdudWxpbnV4LTQuNC4wLTExNi1nZW5lcmljLWFkdmFuY2VkLWUxMGMzY2E5LWFjZDItNGRiZi04
ODllLTAyMzhmMDg5NmE3MycgewoJCQlpbnNtb2QgcGFydF9tc2RvcwoJCQlpbnNtb2QgZXh0MgoJ
CQlzZXQgcm9vdD0naGQwLG1zZG9zMScKCQkJaWYgWyB4JGZlYXR1cmVfcGxhdGZvcm1fc2VhcmNo
X2hpbnQgPSB4eSBdOyB0aGVuCgkJCSAgc2VhcmNoIC0tbm8tZmxvcHB5IC0tZnMtdXVpZCAtLXNl
dD1yb290IC0taGludC1iaW9zPWhkMCxtc2RvczEgLS1oaW50LWVmaT1oZDAsbXNkb3MxIC0taGlu
dC1iYXJlbWV0YWw9YWhjaTAsbXNkb3MxICBlMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4
OTZhNzMKCQkJZWxzZQoJCQkgIHNlYXJjaCAtLW5vLWZsb3BweSAtLWZzLXV1aWQgLS1zZXQ9cm9v
dCBlMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZhNzMKCQkJZmkKCQkJZWNobwknTG9h
ZGluZyBYZW4gNC42LWFtZDY0IC4uLicKCQkgICAgICAgIGlmIFsgIiRncnViX3BsYXRmb3JtIiA9
ICJwYyIgLW8gIiRncnViX3BsYXRmb3JtIiA9ICIiIF07IHRoZW4KCQkgICAgICAgICAgICB4ZW5f
cm1fb3B0cz0KCQkgICAgICAgIGVsc2UKCQkgICAgICAgICAgICB4ZW5fcm1fb3B0cz0ibm8tcmVh
bC1tb2RlIGVkZD1vZmYiCgkJICAgICAgICBmaQoJCQltdWx0aWJvb3QJL2Jvb3QveGVuLTQuNi1h
bWQ2NC5neiBwbGFjZWhvbGRlciAgbG9nbHZsPWFsbCBndWVzdF9sb2dsdmw9YWxsICR7eGVuX3Jt
X29wdHN9CgkJCWVjaG8JJ0xvYWRpbmcgTGludXggNC40LjAtMTE2LWdlbmVyaWMgLi4uJwoJCQlt
b2R1bGUJL2Jvb3Qvdm1saW51ei00LjQuMC0xMTYtZ2VuZXJpYyBwbGFjZWhvbGRlciByb290PVVV
SUQ9ZTEwYzNjYTktYWNkMi00ZGJmLTg4OWUtMDIzOGYwODk2YTczIHJvICBlYXJseXByaW50az14
ZW4geGVuY29ucz1odmMgY29uc29sZT1odmMwCgkJCWVjaG8JJ0xvYWRpbmcgaW5pdGlhbCByYW1k
aXNrIC4uLicKCQkJbW9kdWxlCS0tbm91bnppcCAgIC9ib290L2luaXRyZC5pbWctNC40LjAtMTE2
LWdlbmVyaWMKCQl9CgkJbWVudWVudHJ5ICdVYnVudHUgR05VL0xpbnV4LCB3aXRoIFhlbiA0LjYt
YW1kNjQgYW5kIExpbnV4IDQuNC4wLTExNi1nZW5lcmljIChyZWNvdmVyeSBtb2RlKScgLS1jbGFz
cyB1YnVudHUgLS1jbGFzcyBnbnUtbGludXggLS1jbGFzcyBnbnUgLS1jbGFzcyBvcyAtLWNsYXNz
IHhlbiAkbWVudWVudHJ5X2lkX29wdGlvbiAneGVuLWdudWxpbnV4LTQuNC4wLTExNi1nZW5lcmlj
LXJlY292ZXJ5LWUxMGMzY2E5LWFjZDItNGRiZi04ODllLTAyMzhmMDg5NmE3MycgewoJCQlpbnNt
b2QgcGFydF9tc2RvcwoJCQlpbnNtb2QgZXh0MgoJCQlzZXQgcm9vdD0naGQwLG1zZG9zMScKCQkJ
aWYgWyB4JGZlYXR1cmVfcGxhdGZvcm1fc2VhcmNoX2hpbnQgPSB4eSBdOyB0aGVuCgkJCSAgc2Vh
cmNoIC0tbm8tZmxvcHB5IC0tZnMtdXVpZCAtLXNldD1yb290IC0taGludC1iaW9zPWhkMCxtc2Rv
czEgLS1oaW50LWVmaT1oZDAsbXNkb3MxIC0taGludC1iYXJlbWV0YWw9YWhjaTAsbXNkb3MxICBl
MTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZhNzMKCQkJZWxzZQoJCQkgIHNlYXJjaCAt
LW5vLWZsb3BweSAtLWZzLXV1aWQgLS1zZXQ9cm9vdCBlMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0w
MjM4ZjA4OTZhNzMKCQkJZmkKCQkJZWNobwknTG9hZGluZyBYZW4gNC42LWFtZDY0IC4uLicKCQkg
ICAgICAgIGlmIFsgIiRncnViX3BsYXRmb3JtIiA9ICJwYyIgLW8gIiRncnViX3BsYXRmb3JtIiA9
ICIiIF07IHRoZW4KCQkgICAgICAgICAgICB4ZW5fcm1fb3B0cz0KCQkgICAgICAgIGVsc2UKCQkg
ICAgICAgICAgICB4ZW5fcm1fb3B0cz0ibm8tcmVhbC1tb2RlIGVkZD1vZmYiCgkJICAgICAgICBm
aQoJCQltdWx0aWJvb3QJL2Jvb3QveGVuLTQuNi1hbWQ2NC5neiBwbGFjZWhvbGRlciAgJHt4ZW5f
cm1fb3B0c30KCQkJZWNobwknTG9hZGluZyBMaW51eCA0LjQuMC0xMTYtZ2VuZXJpYyAuLi4nCgkJ
CW1vZHVsZQkvYm9vdC92bWxpbnV6LTQuNC4wLTExNi1nZW5lcmljIHBsYWNlaG9sZGVyIHJvb3Q9
VVVJRD1lMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZhNzMgcm8gc2luZ2xlIAoJCQll
Y2hvCSdMb2FkaW5nIGluaXRpYWwgcmFtZGlzayAuLi4nCgkJCW1vZHVsZQktLW5vdW56aXAgICAv
Ym9vdC9pbml0cmQuaW1nLTQuNC4wLTExNi1nZW5lcmljCgkJfQoJfQoJc3VibWVudSAnWGVuIGh5
cGVydmlzb3IsIHZlcnNpb24gNC42LWFtZDY0LmVmaScgJG1lbnVlbnRyeV9pZF9vcHRpb24gJ3hl
bi1oeXBlcnZpc29yLTQuNi1hbWQ2NC5lZmktZTEwYzNjYTktYWNkMi00ZGJmLTg4OWUtMDIzOGYw
ODk2YTczJyB7CgkJbWVudWVudHJ5ICdVYnVudHUgR05VL0xpbnV4LCB3aXRoIFhlbiA0LjYtYW1k
NjQuZWZpIGFuZCBMaW51eCA0LjQuMC0xMTYtZ2VuZXJpYycgLS1jbGFzcyB1YnVudHUgLS1jbGFz
cyBnbnUtbGludXggLS1jbGFzcyBnbnUgLS1jbGFzcyBvcyAtLWNsYXNzIHhlbiAkbWVudWVudHJ5
X2lkX29wdGlvbiAneGVuLWdudWxpbnV4LTQuNC4wLTExNi1nZW5lcmljLWFkdmFuY2VkLWUxMGMz
Y2E5LWFjZDItNGRiZi04ODllLTAyMzhmMDg5NmE3MycgewoJCQlpbnNtb2QgcGFydF9tc2RvcwoJ
CQlpbnNtb2QgZXh0MgoJCQlzZXQgcm9vdD0naGQwLG1zZG9zMScKCQkJaWYgWyB4JGZlYXR1cmVf
cGxhdGZvcm1fc2VhcmNoX2hpbnQgPSB4eSBdOyB0aGVuCgkJCSAgc2VhcmNoIC0tbm8tZmxvcHB5
IC0tZnMtdXVpZCAtLXNldD1yb290IC0taGludC1iaW9zPWhkMCxtc2RvczEgLS1oaW50LWVmaT1o
ZDAsbXNkb3MxIC0taGludC1iYXJlbWV0YWw9YWhjaTAsbXNkb3MxICBlMTBjM2NhOS1hY2QyLTRk
YmYtODg5ZS0wMjM4ZjA4OTZhNzMKCQkJZWxzZQoJCQkgIHNlYXJjaCAtLW5vLWZsb3BweSAtLWZz
LXV1aWQgLS1zZXQ9cm9vdCBlMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZhNzMKCQkJ
ZmkKCQkJZWNobwknTG9hZGluZyBYZW4gNC42LWFtZDY0LmVmaSAuLi4nCgkJICAgICAgICBpZiBb
ICIkZ3J1Yl9wbGF0Zm9ybSIgPSAicGMiIC1vICIkZ3J1Yl9wbGF0Zm9ybSIgPSAiIiBdOyB0aGVu
CgkJICAgICAgICAgICAgeGVuX3JtX29wdHM9CgkJICAgICAgICBlbHNlCgkJICAgICAgICAgICAg
eGVuX3JtX29wdHM9Im5vLXJlYWwtbW9kZSBlZGQ9b2ZmIgoJCSAgICAgICAgZmkKCQkJbXVsdGli
b290CS9ib290L3hlbi00LjYtYW1kNjQuZWZpIHBsYWNlaG9sZGVyICBsb2dsdmw9YWxsIGd1ZXN0
X2xvZ2x2bD1hbGwgJHt4ZW5fcm1fb3B0c30KCQkJZWNobwknTG9hZGluZyBMaW51eCA0LjQuMC0x
MTYtZ2VuZXJpYyAuLi4nCgkJCW1vZHVsZQkvYm9vdC92bWxpbnV6LTQuNC4wLTExNi1nZW5lcmlj
IHBsYWNlaG9sZGVyIHJvb3Q9VVVJRD1lMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZh
NzMgcm8gIGVhcmx5cHJpbnRrPXhlbiB4ZW5jb25zPWh2YyBjb25zb2xlPWh2YzAKCQkJZWNobwkn
TG9hZGluZyBpbml0aWFsIHJhbWRpc2sgLi4uJwoJCQltb2R1bGUJLS1ub3VuemlwICAgL2Jvb3Qv
aW5pdHJkLmltZy00LjQuMC0xMTYtZ2VuZXJpYwoJCX0KCQltZW51ZW50cnkgJ1VidW50dSBHTlUv
TGludXgsIHdpdGggWGVuIDQuNi1hbWQ2NC5lZmkgYW5kIExpbnV4IDQuNC4wLTExNi1nZW5lcmlj
IChyZWNvdmVyeSBtb2RlKScgLS1jbGFzcyB1YnVudHUgLS1jbGFzcyBnbnUtbGludXggLS1jbGFz
cyBnbnUgLS1jbGFzcyBvcyAtLWNsYXNzIHhlbiAkbWVudWVudHJ5X2lkX29wdGlvbiAneGVuLWdu
dWxpbnV4LTQuNC4wLTExNi1nZW5lcmljLXJlY292ZXJ5LWUxMGMzY2E5LWFjZDItNGRiZi04ODll
LTAyMzhmMDg5NmE3MycgewoJCQlpbnNtb2QgcGFydF9tc2RvcwoJCQlpbnNtb2QgZXh0MgoJCQlz
ZXQgcm9vdD0naGQwLG1zZG9zMScKCQkJaWYgWyB4JGZlYXR1cmVfcGxhdGZvcm1fc2VhcmNoX2hp
bnQgPSB4eSBdOyB0aGVuCgkJCSAgc2VhcmNoIC0tbm8tZmxvcHB5IC0tZnMtdXVpZCAtLXNldD1y
b290IC0taGludC1iaW9zPWhkMCxtc2RvczEgLS1oaW50LWVmaT1oZDAsbXNkb3MxIC0taGludC1i
YXJlbWV0YWw9YWhjaTAsbXNkb3MxICBlMTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZh
NzMKCQkJZWxzZQoJCQkgIHNlYXJjaCAtLW5vLWZsb3BweSAtLWZzLXV1aWQgLS1zZXQ9cm9vdCBl
MTBjM2NhOS1hY2QyLTRkYmYtODg5ZS0wMjM4ZjA4OTZhNzMKCQkJZmkKCQkJZWNobwknTG9hZGlu
ZyBYZW4gNC42LWFtZDY0LmVmaSAuLi4nCgkJICAgICAgICBpZiBbICIkZ3J1Yl9wbGF0Zm9ybSIg
PSAicGMiIC1vICIkZ3J1Yl9wbGF0Zm9ybSIgPSAiIiBdOyB0aGVuCgkJICAgICAgICAgICAgeGVu
X3JtX29wdHM9CgkJICAgICAgICBlbHNlCgkJICAgICAgICAgICAgeGVuX3JtX29wdHM9Im5vLXJl
YWwtbW9kZSBlZGQ9b2ZmIgoJCSAgICAgICAgZmkKCQkJbXVsdGlib290CS9ib290L3hlbi00LjYt
YW1kNjQuZWZpIHBsYWNlaG9sZGVyICAke3hlbl9ybV9vcHRzfQoJCQllY2hvCSdMb2FkaW5nIExp
bnV4IDQuNC4wLTExNi1nZW5lcmljIC4uLicKCQkJbW9kdWxlCS9ib290L3ZtbGludXotNC40LjAt
MTE2LWdlbmVyaWMgcGxhY2Vob2xkZXIgcm9vdD1VVUlEPWUxMGMzY2E5LWFjZDItNGRiZi04ODll
LTAyMzhmMDg5NmE3MyBybyBzaW5nbGUgCgkJCWVjaG8JJ0xvYWRpbmcgaW5pdGlhbCByYW1kaXNr
IC4uLicKCQkJbW9kdWxlCS0tbm91bnppcCAgIC9ib290L2luaXRyZC5pbWctNC40LjAtMTE2LWdl
bmVyaWMKCQl9Cgl9Cn0KCiMjIyBFTkQgL2V0Yy9ncnViLmQvMjBfbGludXhfeGVuICMjIwoKIyMj
IEJFR0lOIC9ldGMvZ3J1Yi5kLzMwX29zLXByb2JlciAjIyMKIyMjIEVORCAvZXRjL2dydWIuZC8z
MF9vcy1wcm9iZXIgIyMjCgojIyMgQkVHSU4gL2V0Yy9ncnViLmQvMzBfdWVmaS1maXJtd2FyZSAj
IyMKIyMjIEVORCAvZXRjL2dydWIuZC8zMF91ZWZpLWZpcm13YXJlICMjIwoKIyMjIEJFR0lOIC9l
dGMvZ3J1Yi5kLzQwX2N1c3RvbSAjIyMKIyBUaGlzIGZpbGUgcHJvdmlkZXMgYW4gZWFzeSB3YXkg
dG8gYWRkIGN1c3RvbSBtZW51IGVudHJpZXMuICBTaW1wbHkgdHlwZSB0aGUKIyBtZW51IGVudHJp
ZXMgeW91IHdhbnQgdG8gYWRkIGFmdGVyIHRoaXMgY29tbWVudC4gIEJlIGNhcmVmdWwgbm90IHRv
IGNoYW5nZQojIHRoZSAnZXhlYyB0YWlsJyBsaW5lIGFib3ZlLgojIyMgRU5EIC9ldGMvZ3J1Yi5k
LzQwX2N1c3RvbSAjIyMKCiMjIyBCRUdJTiAvZXRjL2dydWIuZC80MV9jdXN0b20gIyMjCmlmIFsg
LWYgICR7Y29uZmlnX2RpcmVjdG9yeX0vY3VzdG9tLmNmZyBdOyB0aGVuCiAgc291cmNlICR7Y29u
ZmlnX2RpcmVjdG9yeX0vY3VzdG9tLmNmZwplbGlmIFsgLXogIiR7Y29uZmlnX2RpcmVjdG9yeX0i
IC1hIC1mICAkcHJlZml4L2N1c3RvbS5jZmcgXTsgdGhlbgogIHNvdXJjZSAkcHJlZml4L2N1c3Rv
bS5jZmc7CmZpCiMjIyBFTkQgL2V0Yy9ncnViLmQvNDFfY3VzdG9tICMjIwo=
--000000000000d51da70568d58a3c
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--000000000000d51da70568d58a3c--


From minios-devel-bounces@lists.xenproject.org Tue Apr 03 00:58:15 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 03 Apr 2018 00:58:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3AH7-0005q5-LL; Tue, 03 Apr 2018 00:58:13 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ttb/=gy=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3AH6-0005q0-37
 for minios-devel@lists.xenproject.org; Tue, 03 Apr 2018 00:58:12 +0000
X-Inumbo-ID: ff10995e-36d9-11e8-9728-bc764e045a96
Received: from mail-wr0-x231.google.com (unknown [2a00:1450:400c:c0c::231])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id ff10995e-36d9-11e8-9728-bc764e045a96;
 Tue, 03 Apr 2018 02:57:35 +0200 (CEST)
Received: by mail-wr0-x231.google.com with SMTP id s12so5627806wrc.8
 for <minios-devel@lists.xenproject.org>; Mon, 02 Apr 2018 17:58:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to;
 bh=glt9H2h3sUblU5L29ZB8plg8RCiNMad3bp3iE9qSwCg=;
 b=HpxyJwPrLVa84WRHZksRyf0QE3gzgY7mIAL+aXR36wnIzt/Gr+D+g27PsT1VIjj/mk
 BTycfeCdkPSCu+/4UqX6vsDvdM6w+5VAOQyHKn1XpqkuhHtcPmY039bvX/cynw1pKbq1
 KN4HrZpiP+/6d1mmxx2HaK6W3B6ReBu3ZRf4DCbLOGTjUTp30YQINhKXfc0bMjMAYTF7
 Lm1tWBokFhfU2uTWU+gnenjHtG+IjsB98FH9MLrGiNj9rcF8qJBX571WTIetUNPHy71P
 kNoS2Vp0ccYMQ3d0KH3mFJfZvtJzNX3ymE4m4QdpyIM3vg7s/pfrNgLyJmlFqGwuELfI
 XpRg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=glt9H2h3sUblU5L29ZB8plg8RCiNMad3bp3iE9qSwCg=;
 b=XFHrMAksudWSNfEktmNhFXgu+3TZwBDIc97fZZRB8IdlGpRUaIE+YRkHG6yP95NhAS
 5lztyvVlZPjTOzOFh2ls22TyBJr8h8DvK5An5OeQv+qjYgEtbt3tEFHrlgS+0JuM9Eze
 /Ze4Gy6v47RSmw179HWhwVmDo3n2J4QzHtMnvFpsQTgrJ9RhKVRw5C+rTQvoRnOww7CH
 CpEHm4nkE3NmPKbQVuwN7C6VwD24dOrwl7kyLS/9/LT4Z3nCafwTePeMY1DO9N409182
 4CnKVy6HTi4EwMe60G59XIxhl0QVUuJDo8zV/ERqRXEuxVEs5A+XA2cNVGG3/RGs/vxi
 S/IQ==
X-Gm-Message-State: ALQs6tBEtlqn3DI44IVPBSPqj8NsRMqyHawVOTOwsgTd4MG8n0T8+CaL
 pGhuiX9iestOmkiMbhDPIPGkjJc0usM0H0AEBVo=
X-Google-Smtp-Source: AIpwx4+IgYl8eomzqt7MJCjb9nh+cIzapM61GHXCh2a2/NVo3OCEBPfatv+VxKDBsQ7avoZS0c08CMel3BhXff8amLc=
X-Received: by 2002:a19:59d1:: with SMTP id
 n200-v6mr6718845lfb.84.1522717088480; 
 Mon, 02 Apr 2018 17:58:08 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Mon, 2 Apr 2018 17:58:07 -0700 (PDT)
In-Reply-To: <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
 <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Tue, 3 Apr 2018 06:28:07 +0530
Message-ID: <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============4376539347749110424=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============4376539347749110424==
Content-Type: multipart/alternative; boundary="0000000000002702cd0568e733a0"

--0000000000002702cd0568e733a0
Content-Type: text/plain; charset="UTF-8"

Ping ...

On Mon, Apr 2, 2018 at 9:24 AM, Ajay Garg <ajaygargnsit@gmail.com> wrote:

> Forgot the attachment..
>
> On Mon, Apr 2, 2018 at 9:23 AM, Ajay Garg <ajaygargnsit@gmail.com> wrote:
> > As per https://lists.xenproject.org/archives/html/xen-devel/2015-
> 09/msg03864.html,
> > I added the options.
> > Please find /boot/grub/grub.cfg attached (generated after running
> update-grub).
> >
> > After this, I can see that most of the boot-up logs are NOT seen in
> > the terminal, and also the following is seen when I do "xl dmesg" :
> >
> > ##########################################################3
> > (XEN) Std. Loglevel: All
> > (XEN) Guest Loglevel: All
> > (XEN) Xen is relinquishing VGA console.
> > (XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch
> > input to Xen)
> > (XEN) Freed 304kB init memory.
> > (XEN) d0 attempted to change d0v0's CR4 flags 00000620 -> 00040660
> > (XEN) PCI add device 0000:00:00.0
> > (XEN) PCI add device 0000:00:01.0
> > (XEN) PCI add device 0000:00:01.1
> > (XEN) PCI add device 0000:00:02.0
> > (XEN) PCI add device 0000:00:03.0
> > (XEN) PCI add device 0000:00:04.0
> > (XEN) PCI add device 0000:00:05.0
> > (XEN) PCI add device 0000:00:06.0
> > (XEN) PCI add device 0000:00:07.0
> > (XEN) PCI add device 0000:00:0b.0
> > (XEN) PCI add device 0000:00:0d.0
> > ##########################################################
> >
> >
> > However, after I run "xl create -c helloworld.cfg", I get the same
> > errors on command-line, and absolutely nothing extra in "xl dmesg".
> >
> >
> > On Sun, Apr 1, 2018 at 8:19 PM, Ajay Garg <ajaygargnsit@gmail.com>
> wrote:
> >> Hi All.
> >>
> >> I followed the steps as per
> >> https://wiki.xenproject.org/wiki/Category:Unikraft_Users
> >>
> >> and was able to run the userspace binary without any hassles.
> >>
> >>
> >> However, after I compile the hello-world app for xen for x86_64 and
> >> try running it, I get errors as follows :
> >>
> >> ######################################################################
> >> root@ubuntu:/home/ajay/helloworld# xl list
> >> Name                                        ID   Mem VCPUs    State
> Time(s)
> >> Domain-0                                     0  2830     1     r-----
>     48.6
> >>
> >> root@ubuntu:/home/ajay/helloworld# xl create -c helloworld.cfg
> >> Parsing config from helloworld.cfg
> >> libxl: error: libxl_dom.c:37:libxl__domain_type: unable to get domain
> >> type for domid=2
> >> xl: unable to exec console client: No such file or directory
> >> libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: console
> >> child [4115] exited with error status 1
> >>
> >> root@ubuntu:/home/ajay/helloworld#
> >> ######################################################################
> >>
> >>
> >> What am I missing?
> >>
> >>
> >> Thanks and Regards,
> >> Ajay
> >
> >
> >
> > --
> > Regards,
> > Ajay
>
>
>
> --
> Regards,
> Ajay
>



-- 
Regards,
Ajay

--0000000000002702cd0568e733a0
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Ping ...<br></div><div class=3D"gmail_extra"><br><div clas=
s=3D"gmail_quote">On Mon, Apr 2, 2018 at 9:24 AM, Ajay Garg <span dir=3D"lt=
r">&lt;<a href=3D"mailto:ajaygargnsit@gmail.com" target=3D"_blank">ajaygarg=
nsit@gmail.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Forg=
ot the attachment..<br>
<div class=3D"HOEnZb"><div class=3D"h5"><br>
On Mon, Apr 2, 2018 at 9:23 AM, Ajay Garg &lt;<a href=3D"mailto:ajaygargnsi=
t@gmail.com">ajaygargnsit@gmail.com</a>&gt; wrote:<br>
&gt; As per <a href=3D"https://lists.xenproject.org/archives/html/xen-devel=
/2015-09/msg03864.html" rel=3D"noreferrer" target=3D"_blank">https://lists.=
xenproject.org/<wbr>archives/html/xen-devel/2015-<wbr>09/msg03864.html</a>,=
<br>
&gt; I added the options.<br>
&gt; Please find /boot/grub/grub.cfg attached (generated after running upda=
te-grub).<br>
&gt;<br>
&gt; After this, I can see that most of the boot-up logs are NOT seen in<br=
>
&gt; the terminal, and also the following is seen when I do &quot;xl dmesg&=
quot; :<br>
&gt;<br>
&gt; ##############################<wbr>############################3<br>
&gt; (XEN) Std. Loglevel: All<br>
&gt; (XEN) Guest Loglevel: All<br>
&gt; (XEN) Xen is relinquishing VGA console.<br>
&gt; (XEN) *** Serial input -&gt; DOM0 (type &#39;CTRL-a&#39; three times t=
o switch<br>
&gt; input to Xen)<br>
&gt; (XEN) Freed 304kB init memory.<br>
&gt; (XEN) d0 attempted to change d0v0&#39;s CR4 flags 00000620 -&gt; 00040=
660<br>
&gt; (XEN) PCI add device 0000:00:00.0<br>
&gt; (XEN) PCI add device 0000:00:01.0<br>
&gt; (XEN) PCI add device 0000:00:01.1<br>
&gt; (XEN) PCI add device 0000:00:02.0<br>
&gt; (XEN) PCI add device 0000:00:03.0<br>
&gt; (XEN) PCI add device 0000:00:04.0<br>
&gt; (XEN) PCI add device 0000:00:05.0<br>
&gt; (XEN) PCI add device 0000:00:06.0<br>
&gt; (XEN) PCI add device 0000:00:07.0<br>
&gt; (XEN) PCI add device 0000:00:0b.0<br>
&gt; (XEN) PCI add device 0000:00:0d.0<br>
&gt; ##############################<wbr>############################<br>
&gt;<br>
&gt;<br>
&gt; However, after I run &quot;xl create -c helloworld.cfg&quot;, I get th=
e same<br>
&gt; errors on command-line, and absolutely nothing extra in &quot;xl dmesg=
&quot;.<br>
&gt;<br>
&gt;<br>
&gt; On Sun, Apr 1, 2018 at 8:19 PM, Ajay Garg &lt;<a href=3D"mailto:ajayga=
rgnsit@gmail.com">ajaygargnsit@gmail.com</a>&gt; wrote:<br>
&gt;&gt; Hi All.<br>
&gt;&gt;<br>
&gt;&gt; I followed the steps as per<br>
&gt;&gt; <a href=3D"https://wiki.xenproject.org/wiki/Category:Unikraft_User=
s" rel=3D"noreferrer" target=3D"_blank">https://wiki.xenproject.org/<wbr>wi=
ki/Category:Unikraft_Users</a><br>
&gt;&gt;<br>
&gt;&gt; and was able to run the userspace binary without any hassles.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; However, after I compile the hello-world app for xen for x86_64 an=
d<br>
&gt;&gt; try running it, I get errors as follows :<br>
&gt;&gt;<br>
&gt;&gt; ##############################<wbr>##############################<=
wbr>##########<br>
&gt;&gt; root@ubuntu:/home/ajay/<wbr>helloworld# xl list<br>
&gt;&gt; Name=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 ID=C2=A0 =C2=A0Mem VCPUs=C2=A0 =C2=A0 State=C2=A0 =C2=A0 Time(s)<br>
&gt;&gt; Domain-0=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A00=C2=A0 2830=C2=A0 =C2=A0 =C2=A01=C2=A0 =C2=A0 =C2=A0r-----=C2=A0 =C2=A0=
 =C2=A0 48.6<br>
&gt;&gt;<br>
&gt;&gt; root@ubuntu:/home/ajay/<wbr>helloworld# xl create -c helloworld.cf=
g<br>
&gt;&gt; Parsing config from helloworld.cfg<br>
&gt;&gt; libxl: error: libxl_dom.c:37:libxl__domain_<wbr>type: unable to ge=
t domain<br>
&gt;&gt; type for domid=3D2<br>
&gt;&gt; xl: unable to exec console client: No such file or directory<br>
&gt;&gt; libxl: error: libxl_exec.c:118:libxl_report_<wbr>child_exitstatus:=
 console<br>
&gt;&gt; child [4115] exited with error status 1<br>
&gt;&gt;<br>
&gt;&gt; root@ubuntu:/home/ajay/<wbr>helloworld#<br>
&gt;&gt; ##############################<wbr>##############################<=
wbr>##########<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; What am I missing?<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Thanks and Regards,<br>
&gt;&gt; Ajay<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Regards,<br>
&gt; Ajay<br>
<br>
<br>
<br>
</div></div><span class=3D"HOEnZb"><font color=3D"#888888">--<br>
Regards,<br>
Ajay<br>
</font></span></blockquote></div><br><br clear=3D"all"><br>-- <br><div clas=
s=3D"gmail_signature" data-smartmail=3D"gmail_signature">Regards,<br>Ajay<b=
r></div>
</div>

--0000000000002702cd0568e733a0--


--===============4376539347749110424==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============4376539347749110424==--


From minios-devel-bounces@lists.xenproject.org Tue Apr 03 03:17:02 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 03 Apr 2018 03:17:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3CRQ-0005Fk-OX; Tue, 03 Apr 2018 03:17:00 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ttb/=gy=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3CRO-0005Ff-CW
 for minios-devel@lists.xenproject.org; Tue, 03 Apr 2018 03:16:58 +0000
X-Inumbo-ID: 5c5441c5-36ed-11e8-9728-bc764e045a96
Received: from mail-wm0-x235.google.com (unknown [2a00:1450:400c:c09::235])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 5c5441c5-36ed-11e8-9728-bc764e045a96;
 Tue, 03 Apr 2018 05:16:13 +0200 (CEST)
Received: by mail-wm0-x235.google.com with SMTP id h76so29953097wme.4
 for <minios-devel@lists.xenproject.org>; Mon, 02 Apr 2018 20:16:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to;
 bh=YmX6wwQt9rRb5jupzyWXUN6Tb82Pj+Yz1Ly2I/kPqlE=;
 b=S0wP1Gfv0l/aPlyXllw3Ci63dHLEn4cbtNj08m5+zUVuDK1isvWFDzMmQIbT3yoPfd
 kMRZf6oC9zWfv1SwKSon4CJRmLq6Q/qrdaaHyE4uxK46TLgnxLrmVdbfvgy0UHxuTEpX
 k36k78KYfDiRwtQpDAY3yTAWqX3berfyE7pv9Yjvhe+KZyVEPCg0LkIs3rOtKsCgnL9v
 m0vQE49IikqKo+ScWPH/lD+rV1QwLjRr1jhsMzhyE+Iwpd7FApO2VOUJoBb5FglQpIfR
 MtF5gmNEAIVS9Vy/V5TdgCv7MIXS79+CwLELp78mCVA7jbu13pCHcJH4UtLziRSW9ja8
 +iKA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=YmX6wwQt9rRb5jupzyWXUN6Tb82Pj+Yz1Ly2I/kPqlE=;
 b=b5nM/3juANOrnr8l4Y7EA15Iw3LFn0264Bof5uz5hHB9nRaRMQMdrKrAaPrH18bgHe
 Yt6KzFqsz3SyWxQ/oz8uagFEOrrFWZtqbKqHq0DMfGlqmi7WBt9iv5J+uTH76vK7hd4s
 Eeeex/qQmtmuASJbpwzEIHC9BBwwXr1owkPCnKeD7G4j28Jb67Ak4UTW40YvxVXjBG6M
 rCEPNFruwvV+G3AJEw6pQTgkERNU7EtK14WbXCwSyZJD9uRP/Xq+pdrucErnfM7N9mCk
 GxHnSC+Qx2rSXaL1BZwV/IBQmjoguJd2EUN58B1rXAoN6LphfEAW903Lfmr3mOqb5Zt5
 CeFA==
X-Gm-Message-State: ALQs6tDSmMk/CyL0saFoqNmZ70G4piPWgcuWSfoTX91ie8fMvSEp/OaN
 YfjfBYVQNDCxban18APPePBcu6pL4db4YokH2ikQbg==
X-Google-Smtp-Source: AIpwx4+siBC0jNLZ3rifiIlEjdnOjru4+dvcmYip3/BZo345Bwy/EwvypjD0+u+cbtNFbuDyCHmUNBO/A37B4T1wyfw=
X-Received: by 10.46.158.19 with SMTP id e19mr7441576ljk.47.1522725400237;
 Mon, 02 Apr 2018 20:16:40 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:a5d0:0:0:0:0:0 with HTTP;
 Mon, 2 Apr 2018 20:16:39 -0700 (PDT)
In-Reply-To: <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
 <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
 <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Tue, 3 Apr 2018 08:46:39 +0530
Message-ID: <CAHP4M8XO-hSJT0EXkhoTZDv_esZy=dbYLTAqWS7jAkxCTe9VmA@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============4051855199721525760=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============4051855199721525760==
Content-Type: multipart/alternative; boundary="883d24f1a5689259940568e92286"

--883d24f1a5689259940568e92286
Content-Type: text/plain; charset="UTF-8"

Following is seen when run with strace



*root@ubuntu:/home/ajay/unikraft/apps/helloworld# strace xl create -c
helloworld.cfg*execve("/usr/sbin/xl", ["xl", "create", "-c",
"helloworld.cfg"], [/* 17 vars */]) = 0
brk(NULL)                               = 0x55907a585000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=30772, ...}) = 0
mmap(NULL, 30772, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f53ac230000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\t\2\0\0\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1868984, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7f53ac22f000
mmap(NULL, 3971488, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7f53abc49000
mprotect(0x7f53abe09000, 2097152, PROT_NONE) = 0
mmap(0x7f53ac009000, 24576, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c0000) = 0x7f53ac009000
mmap(0x7f53ac00f000, 14752, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f53ac00f000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7f53ac22e000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7f53ac22d000
arch_prctl(ARCH_SET_FS, 0x7f53ac22e700) = 0
mprotect(0x7f53ac009000, 16384, PROT_READ) = 0
mprotect(0x55907a474000, 8192, PROT_READ) = 0
mprotect(0x7f53ac238000, 4096, PROT_READ) = 0
munmap(0x7f53ac230000, 30772)           = 0
getuid()                                = 0
getgid()                                = 0
getpid()                                = 4605
rt_sigaction(SIGCHLD, {0x55907a268540, ~[RTMIN RT_1], SA_RESTORER,
0x7f53abc7e4b0}, NULL, 8) = 0
geteuid()                               = 0
brk(NULL)                               = 0x55907a585000
brk(0x55907a5a6000)                     = 0x55907a5a6000
getppid()                               = 4603
stat("/home/ajay/unikraft/apps/helloworld", {st_mode=S_IFDIR|0775,
st_size=4096, ...}) = 0
stat(".", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/usr/sbin/xl", O_RDONLY)          = 3
fcntl(3, F_DUPFD, 10)                   = 10
close(3)                                = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
geteuid()                               = 0
getegid()                               = 0
rt_sigaction(SIGINT, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGINT, {0x55907a268540, ~[RTMIN RT_1], SA_RESTORER,
0x7f53abc7e4b0}, NULL, 8) = 0
rt_sigaction(SIGQUIT, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL, ~[RTMIN RT_1], SA_RESTORER,
0x7f53abc7e4b0}, NULL, 8) = 0
rt_sigaction(SIGTERM, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGTERM, {SIG_DFL, ~[RTMIN RT_1], SA_RESTORER,
0x7f53abc7e4b0}, NULL, 8) = 0
read(10, "#!/bin/sh -e\n\nCOMMAND=\"$(basenam"..., 8192) = 314
pipe([3, 4])                            = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0x7f53ac22e9d0) = 4606
close(4)                                = 0
read(3, "xl\n", 128)                    = 3
read(3, "", 128)                        = 0
close(3)                                = 0
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4606
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4606, si_uid=0,
si_status=0, si_utime=0, si_stime=0} ---
rt_sigreturn({mask=[]})                 = 4606
pipe([3, 4])                            = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0x7f53ac22e9d0) = 4607
close(4)                                = 0
read(3, "/usr/lib/xen-4.6/bin/xl\n", 128) = 24
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4607, si_uid=0,
si_status=0, si_utime=0, si_stime=0} ---
rt_sigreturn({mask=[]})                 = 24
read(3, "", 128)                        = 0
close(3)                                = 0
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4607
pipe([3, 4])                            = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0x7f53ac22e9d0) = 4615
close(4)                                = 0
read(3, "xl\n", 128)                    = 3
read(3, "", 128)                        = 0
close(3)                                = 0
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4615
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4615, si_uid=0,
si_status=0, si_utime=0, si_stime=0} ---
rt_sigreturn({mask=[]})                 = 4615
execve("/usr/lib/xen-4.6/bin/xl", ["/usr/lib/xen-4.6/bin/xl", "create",
"-c", "helloworld.cfg"], [/* 17 vars */]) = 0
brk(NULL)                               = 0x1659000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
readlink("/proc/self/exe", "/usr/lib/xen-4.6/bin/xl", 4096) = 23
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or
directory)
open("/usr/lib/xen-4.6/bin/../lib/tls/x86_64/libxlutil-4.6.so",
O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/usr/lib/xen-4.6/bin/../lib/tls/x86_64", 0x7ffc8caeb930) = -1 ENOENT
(No such file or directory)
open("/usr/lib/xen-4.6/bin/../lib/tls/libxlutil-4.6.so",
O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/usr/lib/xen-4.6/bin/../lib/tls", 0x7ffc8caeb930) = -1 ENOENT (No
such file or directory)
open("/usr/lib/xen-4.6/bin/../lib/x86_64/libxlutil-4.6.so",
O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/usr/lib/xen-4.6/bin/../lib/x86_64", 0x7ffc8caeb930) = -1 ENOENT (No
such file or directory)
open("/usr/lib/xen-4.6/bin/../lib/libxlutil-4.6.so", O_RDONLY|O_CLOEXEC) =
-1 ENOENT (No such file or directory)
stat("/usr/lib/xen-4.6/bin/../lib", {st_mode=S_IFDIR|0755, st_size=4096,
...}) = 0
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=30772, ...}) = 0
mmap(NULL, 30772, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ff5c75e8000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/usr/lib/x86_64-linux-gnu/libxlutil-4.6.so", O_RDONLY|O_CLOEXEC) = 3
read(3,
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360'\0\0\0\0\0\0"..., 832)
= 832
fstat(3, {st_mode=S_IFREG|0644, st_size=63840, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7ff5c75e7000
mmap(NULL, 2158904, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c71bb000
mprotect(0x7ff5c71ca000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c73c9000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe000) = 0x7ff5c73c9000
close(3)                                = 0
open("/usr/lib/xen-4.6/bin/../lib/libxenlight-4.6.so", O_RDONLY|O_CLOEXEC)
= -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/usr/lib/x86_64-linux-gnu/libxenlight-4.6.so", O_RDONLY|O_CLOEXEC) = 3
read(3,
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\3406\1\0\0\0\0\0"..., 832)
= 832
fstat(3, {st_mode=S_IFREG|0644, st_size=584368, ...}) = 0
mmap(NULL, 2679776, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c6f2c000
mprotect(0x7ff5c6fb8000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c71b7000, 16384, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8b000) = 0x7ff5c71b7000
close(3)                                = 0
open("/usr/lib/xen-4.6/bin/../lib/libxenctrl-4.6.so", O_RDONLY|O_CLOEXEC) =
-1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/usr/lib/x86_64-linux-gnu/libxenctrl-4.6.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 p\0\0\0\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=191552, ...}) = 0
mmap(NULL, 2286776, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c6cfd000
mprotect(0x7ff5c6d2b000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c6f2a000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2d000) = 0x7ff5c6f2a000
close(3)                                = 0
open("/usr/lib/xen-4.6/bin/../lib/libyajl.so.2", O_RDONLY|O_CLOEXEC) = -1
ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/usr/lib/x86_64-linux-gnu/libyajl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3,
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\22\0\0\0\0\0\0"..., 832)
= 832
fstat(3, {st_mode=S_IFREG|0644, st_size=43200, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7ff5c75e6000
mmap(NULL, 2138328, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c6af2000
mprotect(0x7ff5c6afb000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c6cfa000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x7ff5c6cfa000
close(3)                                = 0
open("/usr/lib/xen-4.6/bin/../lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) =
-1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3,
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260`\0\0\0\0\0\0"..., 832)
= 832
fstat(3, {st_mode=S_IFREG|0755, st_size=138696, ...}) = 0
mmap(NULL, 2212904, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c68d5000
mprotect(0x7ff5c68ed000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c6aec000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7ff5c6aec000
mmap(0x7ff5c6aee000, 13352, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ff5c6aee000
close(3)                                = 0
open("/usr/lib/xen-4.6/bin/../lib/libc.so.6", O_RDONLY|O_CLOEXEC) = -1
ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\t\2\0\0\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1868984, ...}) = 0
mmap(NULL, 3971488, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c650b000
mprotect(0x7ff5c66cb000, 2097152, PROT_NONE) = 0
mmap(0x7ff5c68cb000, 24576, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c0000) = 0x7ff5c68cb000
mmap(0x7ff5c68d1000, 14752, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ff5c68d1000
close(3)                                = 0
open("/usr/lib/x86_64-linux-gnu/tls/x86_64/libxenguest-4.6.so",
O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/usr/lib/x86_64-linux-gnu/tls/x86_64", 0x7ffc8caeb5c0) = -1 ENOENT
(No such file or directory)
open("/usr/lib/x86_64-linux-gnu/tls/libxenguest-4.6.so",
O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/usr/lib/x86_64-linux-gnu/tls", 0x7ffc8caeb5c0) = -1 ENOENT (No such
file or directory)
open("/usr/lib/x86_64-linux-gnu/x86_64/libxenguest-4.6.so",
O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/usr/lib/x86_64-linux-gnu/x86_64", 0x7ffc8caeb5c0) = -1 ENOENT (No
such file or directory)
open("/usr/lib/x86_64-linux-gnu/libxenguest-4.6.so", O_RDONLY|O_CLOEXEC) = 3
read(3,
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360Q\0\0\0\0\0\0"..., 832)
= 832
fstat(3, {st_mode=S_IFREG|0644, st_size=167584, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7ff5c75e5000
mmap(NULL, 2262688, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c62e2000
mprotect(0x7ff5c630a000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c6509000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x27000) = 0x7ff5c6509000
close(3)                                = 0
open("/usr/lib/x86_64-linux-gnu/libxenstore.so.3.0", O_RDONLY|O_CLOEXEC) = 3
read(3,
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\37\0\0\0\0\0\0"..., 832) =
832
fstat(3, {st_mode=S_IFREG|0644, st_size=27088, ...}) = 0
mmap(NULL, 2134472, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c60d8000
mprotect(0x7ff5c60de000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c62dd000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x7ff5c62dd000
mmap(0x7ff5c62df000, 8648, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ff5c62df000
close(3)                                = 0
open("/usr/lib/x86_64-linux-gnu/libutil.so.1", O_RDONLY|O_CLOEXEC) = -1
ENOENT (No such file or directory)
open("/usr/lib/xen-4.6/bin/../lib/libutil.so.1", O_RDONLY|O_CLOEXEC) = -1
ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/x86_64-linux-gnu/libutil.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3,
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\16\0\0\0\0\0\0"..., 832) =
832
fstat(3, {st_mode=S_IFREG|0644, st_size=10656, ...}) = 0
mmap(NULL, 2105608, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c5ed5000
mprotect(0x7ff5c5ed7000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c60d6000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7ff5c60d6000
close(3)                                = 0
open("/usr/lib/x86_64-linux-gnu/libuuid.so.1", O_RDONLY|O_CLOEXEC) = -1
ENOENT (No such file or directory)
open("/usr/lib/xen-4.6/bin/../lib/libuuid.so.1", O_RDONLY|O_CLOEXEC) = -1
ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/x86_64-linux-gnu/libuuid.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3,
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\25\0\0\0\0\0\0"..., 832)
= 832
fstat(3, {st_mode=S_IFREG|0644, st_size=18976, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7ff5c75e4000
mmap(NULL, 2113904, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c5cd0000
mprotect(0x7ff5c5cd4000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c5ed3000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7ff5c5ed3000
close(3)                                = 0
open("/usr/lib/xen-4.6/bin/../lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1
ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3,
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\r\0\0\0\0\0\0"..., 832)
= 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14608, ...}) = 0
mmap(NULL, 2109680, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c5acc000
mprotect(0x7ff5c5acf000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c5cce000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7ff5c5cce000
close(3)                                = 0
open("/usr/lib/x86_64-linux-gnu/liblzma.so.5", O_RDONLY|O_CLOEXEC) = -1
ENOENT (No such file or directory)
open("/usr/lib/xen-4.6/bin/../lib/liblzma.so.5", O_RDONLY|O_CLOEXEC) = -1
ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/x86_64-linux-gnu/liblzma.so.5", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320
\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=137400, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7ff5c75e3000
mmap(NULL, 2232456, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c58aa000
mprotect(0x7ff5c58cb000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c5aca000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x20000) = 0x7ff5c5aca000
close(3)                                = 0
open("/usr/lib/x86_64-linux-gnu/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT
(No such file or directory)
open("/usr/lib/xen-4.6/bin/../lib/libz.so.1", O_RDONLY|O_CLOEXEC) = -1
ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/usr/local/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3,
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000$\0\0\0\0\0\0"..., 832) =
832
fstat(3, {st_mode=S_IFREG|0755, st_size=121928, ...}) = 0
mmap(NULL, 2208144, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x7ff5c568e000
mprotect(0x7ff5c56a9000, 2093056, PROT_NONE) = 0
mmap(0x7ff5c58a8000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000) = 0x7ff5c58a8000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7ff5c75e2000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7ff5c75e0000
arch_prctl(ARCH_SET_FS, 0x7ff5c75e0780) = 0
mprotect(0x7ff5c68cb000, 16384, PROT_READ) = 0
mprotect(0x7ff5c58a8000, 4096, PROT_READ) = 0
mprotect(0x7ff5c5cce000, 4096, PROT_READ) = 0
mprotect(0x7ff5c5aca000, 4096, PROT_READ) = 0
mprotect(0x7ff5c5ed3000, 4096, PROT_READ) = 0
mprotect(0x7ff5c60d6000, 4096, PROT_READ) = 0
mprotect(0x7ff5c6aec000, 4096, PROT_READ) = 0
mprotect(0x7ff5c62dd000, 4096, PROT_READ) = 0
mprotect(0x7ff5c6f2a000, 4096, PROT_READ) = 0
mprotect(0x7ff5c6509000, 4096, PROT_READ) = 0
mprotect(0x7ff5c6cfa000, 8192, PROT_READ) = 0
mprotect(0x7ff5c71b7000, 4096, PROT_READ) = 0
mprotect(0x7ff5c73c9000, 4096, PROT_READ) = 0
mprotect(0x62a000, 4096, PROT_READ)     = 0
mprotect(0x7ff5c75f0000, 4096, PROT_READ) = 0
munmap(0x7ff5c75e8000, 30772)           = 0
set_tid_address(0x7ff5c75e0a50)         = 4605
set_robust_list(0x7ff5c75e0a60, 24)     = 0
rt_sigaction(SIGRTMIN, {0x7ff5c68dab50, [], SA_RESTORER|SA_SIGINFO,
0x7ff5c68e6390}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x7ff5c68dabe0, [],
SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7ff5c68e6390}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
ioctl(2, TCGETS, {B38400 opost isig icanon echo ...}) = 0
brk(NULL)                               = 0x1659000
brk(0x167a000)                          = 0x167a000
pipe([3, 4])                            = 0
fcntl(3, F_GETFL)                       = 0 (flags O_RDONLY)
fcntl(3, F_SETFL, O_RDONLY|O_NONBLOCK)  = 0
fcntl(4, F_GETFL)                       = 0x1 (flags O_WRONLY)
fcntl(4, F_SETFL, O_WRONLY|O_NONBLOCK)  = 0
open("/proc/xen/privcmd", O_RDWR)       = 5
fcntl(5, F_GETFD)                       = 0
fcntl(5, F_SETFD, FD_CLOEXEC)           = 0
stat("/var/run/xenstored/socket", {st_mode=S_IFSOCK|0600, st_size=0, ...})
= 0
socket(PF_LOCAL, SOCK_STREAM, 0)        = 6
fcntl(6, F_GETFD)                       = 0
fcntl(6, F_SETFD, FD_CLOEXEC)           = 0
connect(6, {sa_family=AF_LOCAL, sun_path="/var/run/xenstored/socket"}, 110)
= 0
open("/etc/xen/xl.conf", O_RDONLY)      = 7
fstat(7, {st_mode=S_IFREG|0644, st_size=1303, ...}) = 0
fstat(7, {st_mode=S_IFREG|0644, st_size=1303, ...}) = 0
read(7, "## Global XL config file ##\n\n# C"..., 4096) = 1303
close(7)                                = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) = 262150
mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75ef000
madvise(0x7ff5c75ef000, 4096, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) = 4096
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) = 0
open("helloworld.cfg", O_RDONLY)        = 7
fstat(7, {st_mode=S_IFREG|0664, st_size=123, ...}) = 0
fstat(7, {st_mode=S_IFREG|0664, st_size=123, ...}) = 0
read(7, " name          = 'helloworld'\n v"..., 4096) = 123
close(7)                                = 0
write(2, "Parsing config from helloworld.c"..., 35Parsing config from
helloworld.cfg
) = 35
stat("/dev/random", {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 8), ...}) = 0
open("/dev/urandom", O_RDONLY|O_CLOEXEC) = 7
fcntl(7, F_GETFD)                       = 0x1 (flags FD_CLOEXEC)
fcntl(7, F_SETFD, FD_CLOEXEC)           = 0
getuid()                                = 0
getppid()                               = 4603
read(7, "\253\302\21\234Xz\351+uj~\36\351\352r`", 16) = 16
close(7)                                = 0
gettid()                                = 4605
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb730) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb7b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb7b0) = 0
open("/var/lock/xl", O_WRONLY|O_CREAT, 0200) = 7
fcntl(7, F_SETFD, FD_CLOEXEC)           = 0
fcntl(7, F_SETLKW, {l_type=F_WRLCK, l_whence=SEEK_SET, l_start=0, l_len=0})
= 0
access("/usr/bin/qemu-system-i386", X_OK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb890) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb910) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb910) = 0
pipe([8, 9])                            = 0
fcntl(8, F_GETFL)                       = 0 (flags O_RDONLY)
fcntl(8, F_SETFL, O_RDONLY|O_NONBLOCK)  = 0
fcntl(9, F_GETFL)                       = 0x1 (flags O_WRONLY)
fcntl(9, F_SETFL, O_WRONLY|O_NONBLOCK)  = 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], 0}, 8) = 0
write(6, "\2\0\0\0\0\0\0\0\0\0\0\0\23\0\0\0", 16) = 16
write(6, "/local/pool/0/name\0", 19)    = 19
read(6, "\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0", 16) = 16
read(6, "ENOENT\0", 7)                  = 7
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb800) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb7e0) = 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
write(6, "5\0", 2)                      = 2
read(6, "\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0", 16) = 16
read(6, "/local/domain/5\0", 16)        = 16
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\6\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0", 16) = 16
write(6, "\0", 1)                       = 1
read(6, "\6\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
read(6, "1\0", 2)                       = 2
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\r\0\0\0\0\0\0\0\1\0\0\0\20\0\0\0", 16) = 16
write(6, "/local/domain/5\0", 16)       = 16
read(6, "\r\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0\20\0\0\0", 16) = 16
write(6, "/local/domain/5\0", 16)       = 16
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0\26\0\0\0", 16) = 16
write(6, "/local/domain/5\0", 16)       = 16
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\r\0\0\0\0\0\0\0\1\0\0\0)\0\0\0", 16) = 16
write(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 41) = 41
read(6, "\r\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0)\0\0\0", 16) = 16
write(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 41) = 41
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0/\0\0\0", 16) = 16
write(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 41) = 41
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\r\0\0\0\0\0\0\0\1\0\0\0\t\0\0\0", 16) = 16
write(6, "/libxl/5\0", 9)               = 9
read(6, "\r\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0\t\0\0\0", 16) = 16
write(6, "/libxl/5\0", 9)               = 9
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0\f\0\0\0", 16) = 16
write(6, "/libxl/5\0", 9)               = 9
write(6, "n0\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0\20\0\0\0", 16) = 16
write(6, "/libxl/5/device\0", 16)       = 16
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0\23\0\0\0", 16) = 16
write(6, "/libxl/5/device\0", 16)       = 16
write(6, "n0\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\1\0\0\0;\0\0\0", 16) = 16
write(6, "/local/domain/5/vm\0", 19)    = 19
write(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 40) = 40
read(6, "\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
write(6, "5\0", 2)                      = 2
read(6, "\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0", 16) = 16
read(6, "/local/domain/5\0", 16)        = 16
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
write(6, "5\0", 2)                      = 2
read(6, "\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0", 16) = 16
read(6, "/local/domain/5\0", 16)        = 16
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\2\0\0\0\0\0\0\0\0\0\0\0)\0\0\0", 16) = 16
write(6, "/local/domain/5/image/device-mod"..., 41) = 41
read(6, "\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0", 16) = 16
read(6, "ENOENT\0", 7)                  = 7
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
mmap(NULL, 102400, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75c7000
madvise(0x7ff5c75c7000, 102400, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cad35d0) = 0
madvise(0x7ff5c75c7000, 102400, MADV_DOFORK) = 0
munmap(0x7ff5c75c7000, 102400)          = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75ed000
madvise(0x7ff5c75ed000, 8192, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cad25d0) = -1 ENOSYS (Function
not implemented)
madvise(0x7ff5c75ed000, 8192, MADV_DOFORK) = 0
munmap(0x7ff5c75ed000, 8192)            = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75ed000
madvise(0x7ff5c75ed000, 8192, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cad25d0) = -1 ENOSYS (Function
not implemented)
madvise(0x7ff5c75ed000, 8192, MADV_DOFORK) = 0
munmap(0x7ff5c75ed000, 8192)            = 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\2\0\0\0\0\0\0\0\0\0\0\0\25\0\0\0", 16) = 16
write(6, "/local/domain/0/name\0", 21)  = 21
read(6, "\2\0\0\0\0\0\0\0\0\0\0\0\10\0\0\0", 16) = 16
read(6, "Domain-0", 8)                  = 8
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\2\0\0\0\0\0\0\0\0\0\0\0\25\0\0\0", 16) = 16
write(6, "/local/domain/5/name\0", 21)  = 21
read(6, "\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0", 16) = 16
read(6, "ENOENT\0", 7)                  = 7
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\1\0\0\0\37\0\0\0", 16) = 16
write(6, "/local/domain/5/name\0", 21)  = 21
write(6, "helloworld", 10)              = 10
read(6, "\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75ee000
madvise(0x7ff5c75ee000, 4096, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb5f0) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75ec000
madvise(0x7ff5c75ec000, 8192, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea5f0) = -1 ENOSYS (Function
not implemented)
madvise(0x7ff5c75ec000, 8192, MADV_DOFORK) = 0
munmap(0x7ff5c75ec000, 8192)            = 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\1\0\0\0008\0\0\0", 16) = 16
write(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 46) = 46
write(6, "helloworld", 10)              = 10
read(6, "\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0\24\0\0\0", 16) = 16
write(6, "/local/domain/5/cpu\0", 20)   = 20
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0\32\0\0\0", 16) = 16
write(6, "/local/domain/5/cpu\0", 20)   = 20
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0\27\0\0\0", 16) = 16
write(6, "/local/domain/5/memory\0", 23) = 23
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0\35\0\0\0", 16) = 16
write(6, "/local/domain/5/memory\0", 23) = 23
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0\27\0\0\0", 16) = 16
write(6, "/local/domain/5/device\0", 23) = 23
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0\35\0\0\0", 16) = 16
write(6, "/local/domain/5/device\0", 23) = 23
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0\30\0\0\0", 16) = 16
write(6, "/local/domain/5/control\0", 24) = 24
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0\36\0\0\0", 16) = 16
write(6, "/local/domain/5/control\0", 24) = 24
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0!\0\0\0", 16) = 16
write(6, "/local/domain/5/control/shutdown"..., 33) = 33
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0$\0\0\0", 16) = 16
write(6, "/local/domain/5/control/shutdown"..., 33) = 33
write(6, "n5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0-\0\0\0", 16) = 16
write(6, "/local/domain/5/device/suspend/e"..., 45) = 45
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0000\0\0\0", 16) = 16
write(6, "/local/domain/5/device/suspend/e"..., 45) = 45
write(6, "n5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\1\0\0\0\25\0\0\0", 16) = 16
write(6, "/local/domain/5/data\0", 21)  = 21
read(6, "\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\1\0\0\0\30\0\0\0", 16) = 16
write(6, "/local/domain/5/data\0", 21)  = 21
write(6, "n5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
mmap(NULL, 102400, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75c7000
madvise(0x7ff5c75c7000, 102400, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cad3730) = 0
madvise(0x7ff5c75c7000, 102400, MADV_DOFORK) = 0
munmap(0x7ff5c75c7000, 102400)          = 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
write(6, "5\0", 2)                      = 2
read(6, "\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0", 16) = 16
read(6, "/local/domain/5\0", 16)        = 16
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\2\0\0\0\0\0\0\0\0\0\0\0\27\0\0\0", 16) = 16
write(6, "/local/domain/5/target\0", 23) = 23
read(6, "\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0", 16) = 16
read(6, "ENOENT\0", 7)                  = 7
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\1\0\0\0R\0\0\0", 16) = 16
write(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 46) = 46
write(6, "089886d4-2b18-47a2-8e78-b8aad32a"..., 36) = 36
read(6, "\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\1\0\0\0008\0\0\0", 16) = 16
write(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 46) = 46
write(6, "helloworld", 10)              = 10
read(6, "\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\1\0\0\0A\0\0\0", 16) = 16
write(6, "/local/domain/5/control/platform"..., 64) = 64
write(6, "1", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\1\0\0\0;\0\0\0", 16) = 16
write(6, "/local/domain/5/control/platform"..., 58) = 58
write(6, "1", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\7\0\0\0\0\0\0\0\1\0\0\0\2\0\0\0", 16) = 16
write(6, "T\0", 2)                      = 2
read(6, "\7\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6e0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb610) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb610) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb5f0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb5f0) = 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\2\0\0\0\0\0\0\0\0\0\0\0\23\0\0\0", 16) = 16
write(6, "/local/pool/0/name\0", 19)    = 19
read(6, "\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0", 16) = 16
read(6, "ENOENT\0", 7)                  = 7
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75ed000
madvise(0x7ff5c75ed000, 4096, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb650) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb650) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb5d0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6e0) = 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\2\0\0\0\0\0\0\0\0\0\0\0\26\0\0\0", 16) = 16
write(6, "/tool/xenstored/domid\0", 22) = 22
read(6, "\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0", 16) = 16
read(6, "ENOENT\0", 7)                  = 7
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\2\0\0\0\0\0\0\0\0\0\0\0\30\0\0\0", 16) = 16
write(6, "/tool/xenconsoled/domid\0", 24) = 24
read(6, "\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0", 16) = 16
read(6, "ENOENT\0", 7)                  = 7
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb750) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb750) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb660) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb660) = 0
open("./build/helloworld_xen-x86_64", O_RDONLY) = 10
lseek(10, 0, SEEK_SET)                  = 0
lseek(10, 0, SEEK_END)                  = 79896
mmap(NULL, 79896, PROT_READ, MAP_SHARED, 10, 0) = 0x7ff5c75cc000
close(10)                               = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb810) = 262150
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb810) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea800) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea6f0) = 0
mmap(NULL, 208896, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x7ff5c7599000
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea6c0) = 50
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea6f0) = 0
mmap(NULL, 372736, PROT_READ|PROT_WRITE, MAP_SHARED, 5, 0) = 0x7ff5c753e000
ioctl(5, _IOC(0, 0x50, 0x04, 0x20), 0x7ffc8caeb630) = 0
mmap(NULL, 204800, PROT_READ|PROT_WRITE, MAP_SHARED, 5, 0) = 0x7ff5c750c000
ioctl(5, _IOC(0, 0x50, 0x04, 0x20), 0x7ffc8caeb610) = 0
mmap(NULL, 20480, PROT_READ|PROT_WRITE, MAP_SHARED, 5, 0) = 0x7ff5c75e8000
ioctl(5, _IOC(0, 0x50, 0x04, 0x20), 0x7ffc8caeb630) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c750a000
madvise(0x7ff5c750a000, 8192, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb5b0) = 0
mmap(NULL, 4096, PROT_WRITE, MAP_SHARED, 5, 0) = 0x7ff5c7509000
ioctl(5, _IOC(0, 0x50, 0x04, 0x20), 0x7ffc8caeb510) = 0
munmap(0x7ff5c7509000, 4096)            = 0
mmap(NULL, 4096, PROT_WRITE, MAP_SHARED, 5, 0) = 0x7ff5c7509000
ioctl(5, _IOC(0, 0x50, 0x04, 0x20), 0x7ffc8caeb510) = 0
munmap(0x7ff5c7509000, 4096)            = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, 5, 0) = 0x7ff5c7509000
ioctl(5, _IOC(0, 0x50, 0x04, 0x20), 0x7ffc8caeb4a0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb720) = 0
munmap(0x7ff5c75e8000, 20480)           = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb5f0) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, 5, 0) = 0x7ff5c75ec000
ioctl(5, _IOC(0, 0x50, 0x04, 0x20), 0x7ffc8caeb540) = 0
munmap(0x7ff5c75ec000, 4096)            = 0
munmap(0x7ff5c7509000, 4096)            = 0
munmap(0x7ff5c750c000, 204800)          = 0
munmap(0x7ff5c753e000, 372736)          = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75eb000
madvise(0x7ff5c75eb000, 8192, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb5c0) = 0
madvise(0x7ff5c75eb000, 8192, MADV_DOFORK) = 0
munmap(0x7ff5c75eb000, 8192)            = 0
madvise(0x7ff5c750a000, 8192, MADV_DOFORK) = 0
munmap(0x7ff5c750a000, 8192)            = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb780) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, 5, 0) = 0x7ff5c75ec000
ioctl(5, _IOC(0, 0x50, 0x04, 0x20), 0x7ffc8caeb6a0) = 0
munmap(0x7ff5c75ec000, 4096)            = 0
munmap(0x7ff5c7599000, 208896)          = 0
munmap(0x7ff5c75cc000, 79896)           = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb520) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb520) = 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\2\0\0\0\0\0\0\0\0\0\0\0\23\0\0\0", 16) = 16
write(6, "/local/pool/0/name\0", 19)    = 19
read(6, "\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0", 16) = 16
read(6, "ENOENT\0", 7)                  = 7
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb610) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb670) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb670) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb740) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) = 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
write(6, "5\0", 2)                      = 2
read(6, "\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0", 16) = 16
read(6, "/local/domain/5\0", 16)        = 16
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\2\0\0\0\0\0\0\0\0\0\0\0\23\0\0\0", 16) = 16
write(6, "/local/domain/5/vm\0", 19)    = 19
read(6, "\2\0\0\0\0\0\0\0\0\0\0\0(\0\0\0", 16) = 16
read(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 40) = 40
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\6\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0", 16) = 16
write(6, "\0", 1)                       = 1
read(6, "\6\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
read(6, "2\0", 2)                       = 2
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\2\0\0\0(\0\0\0", 16) = 16
write(6, "/local/domain/5/memory/static-ma"..., 34) = 34
write(6, "102400", 6)                   = 6
read(6, "\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\2\0\0\0$\0\0\0", 16) = 16
write(6, "/local/domain/5/memory/target\0", 30) = 30
write(6, "102400", 6)                   = 6
read(6, "\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\2\0\0\0!\0\0\0", 16) = 16
write(6, "/local/domain/5/memory/videoram\0", 32) = 32
write(6, "0", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\2\0\0\0\27\0\0\0", 16) = 16
write(6, "/local/domain/5/domid\0", 22) = 22
write(6, "5", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\2\0\0\0\34\0\0\0", 16) = 16
write(6, "/local/domain/5/store/port\0", 27) = 27
write(6, "1", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\2\0\0\0$\0\0\0", 16) = 16
write(6, "/local/domain/5/store/ring-ref\0", 31) = 31
write(6, "49806", 5)                    = 5
read(6, "\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\2\0\0\0)\0\0\0", 16) = 16
write(6, "/local/domain/5/cpu/0/availabili"..., 35) = 35
write(6, "online", 6)                   = 6
read(6, "\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\2\0\0\0;\0\0\0", 16) = 16
write(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 54) = 54
write(6, "linux", 5)                    = 5
read(6, "\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\2\0\0\0S\0\0\0", 16) = 16
write(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 54) = 54
write(6, "./build/helloworld_xen-x86_64", 29) = 29
read(6, "\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\2\0\0\0A\0\0\0", 16) = 16
write(6, "/vm/089886d4-2b18-47a2-8e78-b8aa"..., 52) = 52
write(6, "1522724864.71", 13)           = 13
read(6, "\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\7\0\0\0\0\0\0\0\2\0\0\0\2\0\0\0", 16) = 16
write(6, "T\0", 2)                      = 2
read(6, "\7\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\10\0\0\0\0\0\0\0\0\0\0\0\n\0\0\0", 16) = 16
write(6, "5\0", 2)                      = 2
write(6, "49806\0", 6)                  = 6
write(6, "1\0", 2)                      = 2
read(6, "\10\0\0\0\0\0\0\0\0\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\0\0\0\0\34\0\0\0", 16) = 16
write(6, "/libxl/5/dm-version\0", 20)   = 20
write(6, "qemu_xen", 8)                 = 8
read(6, "\v\0\0\0\0\0\0\0\0\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
write(6, "5\0", 2)                      = 2
read(6, "\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0", 16) = 16
read(6, "/local/domain/5\0", 16)        = 16
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
write(6, "0\0", 2)                      = 2
read(6, "\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0", 16) = 16
read(6, "/local/domain/0\0", 16)        = 16
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\6\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0", 16) = 16
write(6, "\0", 1)                       = 1
read(6, "\6\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
read(6, "3\0", 2)                       = 2
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\r\0\0\0\0\0\0\0\3\0\0\0\32\0\0\0", 16) = 16
write(6, "/libxl/5/device/console/0\0", 26) = 26
read(6, "\20\0\0\0\0\0\0\0\3\0\0\0\7\0\0\0", 16) = 16
read(6, "ENOENT\0", 7)                  = 7
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0:\0\0\0", 16) = 16
write(6, "/libxl/5/device/console/0/fronte"..., 35) = 35
write(6, "/local/domain/5/console", 23) = 23
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0E\0\0\0", 16) = 16
write(6, "/libxl/5/device/console/0/backen"..., 34) = 34
write(6, "/local/domain/0/backend/console/"..., 35) = 35
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\r\0\0\0\0\0\0\0\3\0\0\0\30\0\0\0", 16) = 16
write(6, "/local/domain/5/console\0", 24) = 24
read(6, "\r\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\3\0\0\0\30\0\0\0", 16) = 16
write(6, "/local/domain/5/console\0", 24) = 24
read(6, "\f\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\3\0\0\0\36\0\0\0", 16) = 16
write(6, "/local/domain/5/console\0", 24) = 24
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0C\0\0\0", 16) = 16
write(6, "/local/domain/5/console/backend\0", 32) = 32
write(6, "/local/domain/0/backend/console/"..., 35) = 35
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0$\0\0\0", 16) = 16
write(6, "/local/domain/5/console/backend-"..., 35) = 35
write(6, "0", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\3\0\0\0)\0\0\0", 16) = 16
write(6, "/local/domain/5/console/backend-"..., 35) = 35
write(6, "n5\0", 3)                     = 3
write(6, "r0\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0%\0\0\0", 16) = 16
write(6, "/local/domain/5/console/limit\0", 30) = 30
write(6, "1048576", 7)                  = 7
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\3\0\0\0$\0\0\0", 16) = 16
write(6, "/local/domain/5/console/limit\0", 30) = 30
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0(\0\0\0", 16) = 16
write(6, "/local/domain/5/console/type\0", 29) = 29
write(6, "xenconsoled", 11)             = 11
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\3\0\0\0#\0\0\0", 16) = 16
write(6, "/local/domain/5/console/type\0", 29) = 29
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0\"\0\0\0", 16) = 16
write(6, "/local/domain/5/console/output\0", 31) = 31
write(6, "pty", 3)                      = 3
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\3\0\0\0%\0\0\0", 16) = 16
write(6, "/local/domain/5/console/output\0", 31) = 31
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0\34\0\0\0", 16) = 16
write(6, "/local/domain/5/console/tty\0", 28) = 28
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\3\0\0\0\"\0\0\0", 16) = 16
write(6, "/local/domain/5/console/tty\0", 28) = 28
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0\36\0\0\0", 16) = 16
write(6, "/local/domain/5/console/port\0", 29) = 29
write(6, "2", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\3\0\0\0#\0\0\0", 16) = 16
write(6, "/local/domain/5/console/port\0", 29) = 29
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0&\0\0\0", 16) = 16
write(6, "/local/domain/5/console/ring-ref"..., 33) = 33
write(6, "49807", 5)                    = 5
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\3\0\0\0'\0\0\0", 16) = 16
write(6, "/local/domain/5/console/ring-ref"..., 33) = 33
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\r\0\0\0\0\0\0\0\3\0\0\0$\0\0\0", 16) = 16
write(6, "/local/domain/0/backend/console/"..., 36) = 36
read(6, "\20\0\0\0\0\0\0\0\3\0\0\0\7\0\0\0", 16) = 16
read(6, "ENOENT\0", 7)                  = 7
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\f\0\0\0\0\0\0\0\3\0\0\0$\0\0\0", 16) = 16
write(6, "/local/domain/0/backend/console/"..., 36) = 36
read(6, "\f\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\16\0\0\0\0\0\0\0\3\0\0\0*\0\0\0", 16) = 16
write(6, "/local/domain/0/backend/console/"..., 36) = 36
write(6, "n0\0", 3)                     = 3
write(6, "r5\0", 3)                     = 3
read(6, "\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0D\0\0\0", 16) = 16
write(6, "/local/domain/0/backend/console/"..., 45) = 45
write(6, "/local/domain/5/console", 23) = 23
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0001\0\0\0", 16) = 16
write(6, "/local/domain/0/backend/console/"..., 48) = 48
write(6, "5", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0,\0\0\0", 16) = 16
write(6, "/local/domain/0/backend/console/"..., 43) = 43
write(6, "1", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0+\0\0\0", 16) = 16
write(6, "/local/domain/0/backend/console/"..., 42) = 42
write(6, "1", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0002\0\0\0", 16) = 16
write(6, "/local/domain/0/backend/console/"..., 45) = 45
write(6, "vt100", 5)                    = 5
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0'\0\0\0", 16) = 16
write(6, "/libxl/5/device/console/0/fronte"..., 38) = 38
write(6, "5", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0\"\0\0\0", 16) = 16
write(6, "/libxl/5/device/console/0/online"..., 33) = 33
write(6, "1", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0!\0\0\0", 16) = 16
write(6, "/libxl/5/device/console/0/state\0", 32) = 32
write(6, "1", 1)                        = 1
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\v\0\0\0\0\0\0\0\3\0\0\0(\0\0\0", 16) = 16
write(6, "/libxl/5/device/console/0/protoc"..., 35) = 35
write(6, "vt100", 5)                    = 5
read(6, "\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL,
[], SA_RESTORER, 0x7ff5c68e6390}, 8) = 0
write(6, "\7\0\0\0\0\0\0\0\3\0\0\0\2\0\0\0", 16) = 16
write(6, "T\0", 2)                      = 2
read(6, "\7\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0", 16) = 16
read(6, "OK\0", 3)                      = 3
rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)
= 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb400) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75eb000
madvise(0x7ff5c75eb000, 8192, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea400) = -1 ENOSYS (Function
not implemented)
madvise(0x7ff5c75eb000, 8192, MADV_DOFORK) = 0
munmap(0x7ff5c75eb000, 8192)            = 0
open("/var/lib/xen/userdata-l.5.089886d4-2b18-47a2-8e78-b8aad32a6db8.domain-userdata-lock",
O_RDWR|O_CREAT, 0666) = 10
fcntl(10, F_GETFD)                      = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
flock(10, LOCK_EX)                      = 0
fstat(10, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
stat("/var/lib/xen/userdata-l.5.089886d4-2b18-47a2-8e78-b8aad32a6db8.domain-userdata-lock",
{st_mode=S_IFREG|0644, st_size=0, ...}) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb510) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75eb000
madvise(0x7ff5c75eb000, 8192, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea510) = -1 ENOSYS (Function
not implemented)
madvise(0x7ff5c75eb000, 8192, MADV_DOFORK) = 0
munmap(0x7ff5c75eb000, 8192)            = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb510) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) = 0x7ff5c75eb000
madvise(0x7ff5c75eb000, 8192, MADV_DONTFORK) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea510) = -1 ENOSYS (Function
not implemented)
madvise(0x7ff5c75eb000, 8192, MADV_DOFORK) = 0
munmap(0x7ff5c75eb000, 8192)            = 0
open("/var/lib/xen/userdata-n.5.089886d4-2b18-47a2-8e78-b8aad32a6db8.libxl-json",
O_RDWR|O_CREAT|O_TRUNC, 0600) = 11
write(11, "{\n    \"c_info\": {\n        \"type\""..., 914) = 914
close(11)                               = 0
rename("/var/lib/xen/userdata-n.5.089886d4-2b18-47a2-8e78-b8aad32a6db8.libxl-json",
"/var/lib/xen/userdata-d.5.089886d4-2b18-47a2-8e78-b8aad32a6db8.libxl-json")
= 0
unlink("/var/lib/xen/userdata-l.5.089886d4-2b18-47a2-8e78-b8aad32a6db8.domain-userdata-lock")
= 0
close(10)                               = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0x7ff5c75e0a50) = 4617
fcntl(7, F_SETLKW, {l_type=F_UNLCK, l_whence=SEEK_SET, l_start=0, l_len=0})
= 0
close(7)                                = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb8a0) = 0
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb990) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0x7ff5c75e0a50) = 4619
wait4(4619, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 4619
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4619, si_uid=0,
si_status=0, si_utime=0, si_stime=0} ---
wait4(4617, libxl: error: libxl_dom.c:37:libxl__domain_type: unable to get
domain type for domid=5
xl: unable to exec console client: No such file or directory
[{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0, NULL) = 4617
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=4617, si_uid=0,
si_status=1, si_utime=0, si_stime=0} ---
write(2, "libxl: ", 7libxl: )                  = 7
write(2, "error: ", 7error: )                  = 7
write(2, "libxl_exec.c:118:libxl_report_ch"...,
95libxl_exec.c:118:libxl_report_child_exitstatus: console child [4617]
exited with error status 1) = 95
write(2, "\n", 1
)                       = 1
close(5)                                = 0
madvise(0x7ff5c75ee000, 4096, MADV_DOFORK) = 0
munmap(0x7ff5c75ee000, 4096)            = 0
madvise(0x7ff5c75ef000, 4096, MADV_DOFORK) = 0
munmap(0x7ff5c75ef000, 4096)            = 0
madvise(0x7ff5c75ed000, 4096, MADV_DOFORK) = 0
munmap(0x7ff5c75ed000, 4096)            = 0
close(6)                                = 0
close(3)                                = 0
close(4)                                = 0
close(8)                                = 0
close(9)                                = 0
exit_group(0)                           = ?
+++ exited with 0 +++

--883d24f1a5689259940568e92286
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Following is seen when run with strace<br><br><b>root@ubun=
tu:/home/ajay/unikraft/apps/helloworld# strace xl create -c helloworld.cfg<=
br><br></b>execve(&quot;/usr/sbin/xl&quot;, [&quot;xl&quot;, &quot;create&q=
uot;, &quot;-c&quot;, &quot;helloworld.cfg&quot;], [/* 17 vars */]) =3D 0<b=
r>brk(NULL)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0x55907a585000<br>access(&qu=
ot;/etc/ld.so.nohwcap&quot;, F_OK)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENO=
ENT (No such file or directory)<br>access(&quot;/etc/ld.so.preload&quot;, R=
_OK)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENOENT (No such file or directory=
)<br>open(&quot;/etc/ld.so.cache&quot;, O_RDONLY|O_CLOEXEC) =3D 3<br>fstat(=
3, {st_mode=3DS_IFREG|0644, st_size=3D30772, ...}) =3D 0<br>mmap(NULL, 3077=
2, PROT_READ, MAP_PRIVATE, 3, 0) =3D 0x7f53ac230000<br>close(3)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>access(&quot;/etc/ld.so.nohwcap&quot;, F_=
OK)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENOENT (No such file or directory)=
<br>open(&quot;/lib/x86_64-linux-gnu/libc.so.6&quot;, O_RDONLY|O_CLOEXEC) =
=3D 3<br>read(3, &quot;\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0&gt;\0\1\0\0\0P\t=
\2\0\0\0\0\0&quot;..., 832) =3D 832<br>fstat(3, {st_mode=3DS_IFREG|0755, st=
_size=3D1868984, ...}) =3D 0<br>mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_=
PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x7f53ac22f000<br>mmap(NULL, 3971488, PRO=
T_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =3D 0x7f53abc49000<br>mp=
rotect(0x7f53abe09000, 2097152, PROT_NONE) =3D 0<br>mmap(0x7f53ac009000, 24=
576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c0000=
) =3D 0x7f53ac009000<br>mmap(0x7f53ac00f000, 14752, PROT_READ|PROT_WRITE, M=
AP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) =3D 0x7f53ac00f000<br>close(3)=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>mmap(NULL, 4096, PROT_READ|PR=
OT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x7f53ac22e000<br>mmap(NULL=
, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x7f53a=
c22d000<br>arch_prctl(ARCH_SET_FS, 0x7f53ac22e700) =3D 0<br>mprotect(0x7f53=
ac009000, 16384, PROT_READ) =3D 0<br>mprotect(0x55907a474000, 8192, PROT_RE=
AD) =3D 0<br>mprotect(0x7f53ac238000, 4096, PROT_READ) =3D 0<br>munmap(0x7f=
53ac230000, 30772)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 0<br>getuid()=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>getgid()=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>getpid()=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 4605<br>rt_sigaction(SIGCHLD, {0x55907a268540, ~[RTMIN =
RT_1], SA_RESTORER, 0x7f53abc7e4b0}, NULL, 8) =3D 0<br>geteuid()=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>brk(NULL)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 0x55907a585000<br>brk(0x55907a5a6000)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 0x55907a5a6000<br>getppid()=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 4603<br>stat(&quot;/home/ajay/unikraft/apps/helloworld&quot;, {st_mode=
=3DS_IFDIR|0775, st_size=3D4096, ...}) =3D 0<br>stat(&quot;.&quot;, {st_mod=
e=3DS_IFDIR|0775, st_size=3D4096, ...}) =3D 0<br>open(&quot;/usr/sbin/xl&qu=
ot;, O_RDONLY)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<=
br>fcntl(3, F_DUPFD, 10)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 10<br>close(3=
)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>fcntl(10, F_SETFD, FD_CLOE=
XEC)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>geteuid=
()=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>getegid()=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 0<br>rt_sigaction(SIGINT, NULL, {SIG_DFL, [], 0}, 8) =3D 0<br=
>rt_sigaction(SIGINT, {0x55907a268540, ~[RTMIN RT_1], SA_RESTORER, 0x7f53ab=
c7e4b0}, NULL, 8) =3D 0<br>rt_sigaction(SIGQUIT, NULL, {SIG_DFL, [], 0}, 8)=
 =3D 0<br>rt_sigaction(SIGQUIT, {SIG_DFL, ~[RTMIN RT_1], SA_RESTORER, 0x7f5=
3abc7e4b0}, NULL, 8) =3D 0<br>rt_sigaction(SIGTERM, NULL, {SIG_DFL, [], 0},=
 8) =3D 0<br>rt_sigaction(SIGTERM, {SIG_DFL, ~[RTMIN RT_1], SA_RESTORER, 0x=
7f53abc7e4b0}, NULL, 8) =3D 0<br>read(10, &quot;#!/bin/sh -e\n\nCOMMAND=3D\=
&quot;$(basenam&quot;..., 8192) =3D 314<br>pipe([3, 4])=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0=
<br>clone(child_stack=3D0, flags=3DCLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|=
SIGCHLD, child_tidptr=3D0x7f53ac22e9d0) =3D 4606<br>close(4)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>read(3, &quot;xl\n&quot;, 128)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(3, &quot;&quot;, 128)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>close(3)=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>wait4(-1, [{WIFEXITED(s) &amp;&amp;=
 WEXITSTATUS(s) =3D=3D 0}], 0, NULL) =3D 4606<br>--- SIGCHLD {si_signo=3DSI=
GCHLD, si_code=3DCLD_EXITED, si_pid=3D4606, si_uid=3D0, si_status=3D0, si_u=
time=3D0, si_stime=3D0} ---<br>rt_sigreturn({mask=3D[]})=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 4606<br>pipe([3, 4])=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>clone(child_stack=3D0, =
flags=3DCLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=3D0x7=
f53ac22e9d0) =3D 4607<br>close(4)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0=
<br>read(3, &quot;/usr/lib/xen-4.6/bin/xl\n&quot;, 128) =3D 24<br>--- SIGCH=
LD {si_signo=3DSIGCHLD, si_code=3DCLD_EXITED, si_pid=3D4607, si_uid=3D0, si=
_status=3D0, si_utime=3D0, si_stime=3D0} ---<br>rt_sigreturn({mask=3D[]})=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 24<br>read(3, &quot;&quot;, 128)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>close(3)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>wait4(-1, [{WIFEXITED(s) &amp;&amp; WE=
XITSTATUS(s) =3D=3D 0}], 0, NULL) =3D 4607<br>pipe([3, 4])=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 0<br>clone(child_stack=3D0, flags=3DCLONE_CHILD_CLEARTID|CLONE_CHILD_SE=
TTID|SIGCHLD, child_tidptr=3D0x7f53ac22e9d0) =3D 4615<br>close(4)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>read(3, &quot;xl\n&quot;, 128)=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(3, &quot;&quot;, 128)=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>close(3)=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>wait4(-1, [{WIFEXITED(s) &amp=
;&amp; WEXITSTATUS(s) =3D=3D 0}], 0, NULL) =3D 4615<br>--- SIGCHLD {si_sign=
o=3DSIGCHLD, si_code=3DCLD_EXITED, si_pid=3D4615, si_uid=3D0, si_status=3D0=
, si_utime=3D0, si_stime=3D0} ---<br>rt_sigreturn({mask=3D[]})=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 4615<br>execve(&quot;/usr/lib/xen-4.6/bin/xl&quot;, [&quot;/u=
sr/lib/xen-4.6/bin/xl&quot;, &quot;create&quot;, &quot;-c&quot;, &quot;hell=
oworld.cfg&quot;], [/* 17 vars */]) =3D 0<br>brk(NULL)=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 0x1659000<br>access(&quot;/etc/ld.so.nohwcap&quot;, F_OK)=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENOENT (No such file or directory)<br>re=
adlink(&quot;/proc/self/exe&quot;, &quot;/usr/lib/xen-4.6/bin/xl&quot;, 409=
6) =3D 23<br>access(&quot;/etc/ld.so.preload&quot;, R_OK)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D -1 ENOENT (No such file or directory)<br>open(&quot;/usr/l=
ib/xen-4.6/bin/../lib/tls/x86_64/<a href=3D"http://libxlutil-4.6.so">libxlu=
til-4.6.so</a>&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or di=
rectory)<br>stat(&quot;/usr/lib/xen-4.6/bin/../lib/tls/x86_64&quot;, 0x7ffc=
8caeb930) =3D -1 ENOENT (No such file or directory)<br>open(&quot;/usr/lib/=
xen-4.6/bin/../lib/tls/<a href=3D"http://libxlutil-4.6.so">libxlutil-4.6.so=
</a>&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)<b=
r>stat(&quot;/usr/lib/xen-4.6/bin/../lib/tls&quot;, 0x7ffc8caeb930) =3D -1 =
ENOENT (No such file or directory)<br>open(&quot;/usr/lib/xen-4.6/bin/../li=
b/x86_64/<a href=3D"http://libxlutil-4.6.so">libxlutil-4.6.so</a>&quot;, O_=
RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)<br>stat(&quot;/=
usr/lib/xen-4.6/bin/../lib/x86_64&quot;, 0x7ffc8caeb930) =3D -1 ENOENT (No =
such file or directory)<br>open(&quot;/usr/lib/xen-4.6/bin/../lib/<a href=
=3D"http://libxlutil-4.6.so">libxlutil-4.6.so</a>&quot;, O_RDONLY|O_CLOEXEC=
) =3D -1 ENOENT (No such file or directory)<br>stat(&quot;/usr/lib/xen-4.6/=
bin/../lib&quot;, {st_mode=3DS_IFDIR|0755, st_size=3D4096, ...}) =3D 0<br>o=
pen(&quot;/etc/ld.so.cache&quot;, O_RDONLY|O_CLOEXEC) =3D 3<br>fstat(3, {st=
_mode=3DS_IFREG|0644, st_size=3D30772, ...}) =3D 0<br>mmap(NULL, 30772, PRO=
T_READ, MAP_PRIVATE, 3, 0) =3D 0x7ff5c75e8000<br>close(3)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 0<br>access(&quot;/etc/ld.so.nohwcap&quot;, F_OK)=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENOENT (No such file or directory)<br>op=
en(&quot;/usr/lib/x86_64-linux-gnu/<a href=3D"http://libxlutil-4.6.so">libx=
lutil-4.6.so</a>&quot;, O_RDONLY|O_CLOEXEC) =3D 3<br>read(3, &quot;\177ELF\=
2\1\1\0\0\0\0\0\0\0\0\0\3\0&gt;\0\1\0\0\0\360&#39;\0\0\0\0\0\0&quot;..., 83=
2) =3D 832<br>fstat(3, {st_mode=3DS_IFREG|0644, st_size=3D63840, ...}) =3D =
0<br>mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, =
0) =3D 0x7ff5c75e7000<br>mmap(NULL, 2158904, PROT_READ|PROT_EXEC, MAP_PRIVA=
TE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c71bb000<br>mprotect(0x7ff5c71ca000, 2093=
056, PROT_NONE) =3D 0<br>mmap(0x7ff5c73c9000, 8192, PROT_READ|PROT_WRITE, M=
AP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe000) =3D 0x7ff5c73c9000<br>close(=
3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>open(&quot;/usr/lib/xen-4.=
6/bin/../lib/<a href=3D"http://libxenlight-4.6.so">libxenlight-4.6.so</a>&q=
uot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)<br>acce=
ss(&quot;/etc/ld.so.nohwcap&quot;, F_OK)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D =
-1 ENOENT (No such file or directory)<br>open(&quot;/usr/lib/x86_64-linux-g=
nu/<a href=3D"http://libxenlight-4.6.so">libxenlight-4.6.so</a>&quot;, O_RD=
ONLY|O_CLOEXEC) =3D 3<br>read(3, &quot;\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&=
gt;\0\1\0\0\0\3406\1\0\0\0\0\0&quot;..., 832) =3D 832<br>fstat(3, {st_mode=
=3DS_IFREG|0644, st_size=3D584368, ...}) =3D 0<br>mmap(NULL, 2679776, PROT_=
READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c6f2c000<br>mpro=
tect(0x7ff5c6fb8000, 2093056, PROT_NONE) =3D 0<br>mmap(0x7ff5c71b7000, 1638=
4, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8b000) =
=3D 0x7ff5c71b7000<br>close(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br=
>open(&quot;/usr/lib/xen-4.6/bin/../lib/<a href=3D"http://libxenctrl-4.6.so=
">libxenctrl-4.6.so</a>&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such f=
ile or directory)<br>access(&quot;/etc/ld.so.nohwcap&quot;, F_OK)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENOENT (No such file or directory)<br>open(&qu=
ot;/usr/lib/x86_64-linux-gnu/<a href=3D"http://libxenctrl-4.6.so">libxenctr=
l-4.6.so</a>&quot;, O_RDONLY|O_CLOEXEC) =3D 3<br>read(3, &quot;\177ELF\2\1\=
1\0\0\0\0\0\0\0\0\0\3\0&gt;\0\1\0\0\0 p\0\0\0\0\0\0&quot;..., 832) =3D 832<=
br>fstat(3, {st_mode=3DS_IFREG|0644, st_size=3D191552, ...}) =3D 0<br>mmap(=
NULL, 2286776, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =3D 0x=
7ff5c6cfd000<br>mprotect(0x7ff5c6d2b000, 2093056, PROT_NONE) =3D 0<br>mmap(=
0x7ff5c6f2a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYW=
RITE, 3, 0x2d000) =3D 0x7ff5c6f2a000<br>close(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 0<br>open(&quot;/usr/lib/xen-4.6/bin/../lib/libyajl.so.2&quot=
;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)<br>access(=
&quot;/etc/ld.so.nohwcap&quot;, F_OK)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D -1 =
ENOENT (No such file or directory)<br>open(&quot;/usr/lib/x86_64-linux-gnu/=
libyajl.so.2&quot;, O_RDONLY|O_CLOEXEC) =3D 3<br>read(3, &quot;\177ELF\2\1\=
1\0\0\0\0\0\0\0\0\0\3\0&gt;\0\1\0\0\0\0\22\0\0\0\0\0\0&quot;..., 832) =3D 8=
32<br>fstat(3, {st_mode=3DS_IFREG|0644, st_size=3D43200, ...}) =3D 0<br>mma=
p(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0=
x7ff5c75e6000<br>mmap(NULL, 2138328, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_D=
ENYWRITE, 3, 0) =3D 0x7ff5c6af2000<br>mprotect(0x7ff5c6afb000, 2093056, PRO=
T_NONE) =3D 0<br>mmap(0x7ff5c6cfa000, 12288, PROT_READ|PROT_WRITE, MAP_PRIV=
ATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) =3D 0x7ff5c6cfa000<br>close(3)=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>open(&quot;/usr/lib/xen-4.6/bin/=
../lib/libpthread.so.0&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such fi=
le or directory)<br>access(&quot;/etc/ld.so.nohwcap&quot;, F_OK)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENOENT (No such file or directory)<br>open(&qu=
ot;/lib/x86_64-linux-gnu/libpthread.so.0&quot;, O_RDONLY|O_CLOEXEC) =3D 3<b=
r>read(3, &quot;\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&gt;\0\1\0\0\0\260`\0\0\=
0\0\0\0&quot;..., 832) =3D 832<br>fstat(3, {st_mode=3DS_IFREG|0755, st_size=
=3D138696, ...}) =3D 0<br>mmap(NULL, 2212904, PROT_READ|PROT_EXEC, MAP_PRIV=
ATE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c68d5000<br>mprotect(0x7ff5c68ed000, 209=
3056, PROT_NONE) =3D 0<br>mmap(0x7ff5c6aec000, 8192, PROT_READ|PROT_WRITE, =
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) =3D 0x7ff5c6aec000<br>mmap=
(0x7ff5c6aee000, 13352, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANO=
NYMOUS, -1, 0) =3D 0x7ff5c6aee000<br>close(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0 =3D 0<br>open(&quot;/usr/lib/xen-4.6/bin/../lib/libc.so.6&quot;, O_R=
DONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)<br>access(&quot;=
/etc/ld.so.nohwcap&quot;, F_OK)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENOENT=
 (No such file or directory)<br>open(&quot;/lib/x86_64-linux-gnu/libc.so.6&=
quot;, O_RDONLY|O_CLOEXEC) =3D 3<br>read(3, &quot;\177ELF\2\1\1\3\0\0\0\0\0=
\0\0\0\3\0&gt;\0\1\0\0\0P\t\2\0\0\0\0\0&quot;..., 832) =3D 832<br>fstat(3, =
{st_mode=3DS_IFREG|0755, st_size=3D1868984, ...}) =3D 0<br>mmap(NULL, 39714=
88, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c650b00=
0<br>mprotect(0x7ff5c66cb000, 2097152, PROT_NONE) =3D 0<br>mmap(0x7ff5c68cb=
000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0=
x1c0000) =3D 0x7ff5c68cb000<br>mmap(0x7ff5c68d1000, 14752, PROT_READ|PROT_W=
RITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) =3D 0x7ff5c68d1000<br>clo=
se(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>open(&quot;/usr/lib/x86=
_64-linux-gnu/tls/x86_64/<a href=3D"http://libxenguest-4.6.so">libxenguest-=
4.6.so</a>&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or direct=
ory)<br>stat(&quot;/usr/lib/x86_64-linux-gnu/tls/x86_64&quot;, 0x7ffc8caeb5=
c0) =3D -1 ENOENT (No such file or directory)<br>open(&quot;/usr/lib/x86_64=
-linux-gnu/tls/<a href=3D"http://libxenguest-4.6.so">libxenguest-4.6.so</a>=
&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)<br>st=
at(&quot;/usr/lib/x86_64-linux-gnu/tls&quot;, 0x7ffc8caeb5c0) =3D -1 ENOENT=
 (No such file or directory)<br>open(&quot;/usr/lib/x86_64-linux-gnu/x86_64=
/<a href=3D"http://libxenguest-4.6.so">libxenguest-4.6.so</a>&quot;, O_RDON=
LY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)<br>stat(&quot;/usr/=
lib/x86_64-linux-gnu/x86_64&quot;, 0x7ffc8caeb5c0) =3D -1 ENOENT (No such f=
ile or directory)<br>open(&quot;/usr/lib/x86_64-linux-gnu/<a href=3D"http:/=
/libxenguest-4.6.so">libxenguest-4.6.so</a>&quot;, O_RDONLY|O_CLOEXEC) =3D =
3<br>read(3, &quot;\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&gt;\0\1\0\0\0\360Q\0=
\0\0\0\0\0&quot;..., 832) =3D 832<br>fstat(3, {st_mode=3DS_IFREG|0644, st_s=
ize=3D167584, ...}) =3D 0<br>mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRI=
VATE|MAP_ANONYMOUS, -1, 0) =3D 0x7ff5c75e5000<br>mmap(NULL, 2262688, PROT_R=
EAD|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c62e2000<br>mprot=
ect(0x7ff5c630a000, 2093056, PROT_NONE) =3D 0<br>mmap(0x7ff5c6509000, 8192,=
 PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x27000) =3D=
 0x7ff5c6509000<br>close(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>op=
en(&quot;/usr/lib/x86_64-linux-gnu/libxenstore.so.3.0&quot;, O_RDONLY|O_CLO=
EXEC) =3D 3<br>read(3, &quot;\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&gt;\0\1\0\=
0\0`\37\0\0\0\0\0\0&quot;..., 832) =3D 832<br>fstat(3, {st_mode=3DS_IFREG|0=
644, st_size=3D27088, ...}) =3D 0<br>mmap(NULL, 2134472, PROT_READ|PROT_EXE=
C, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c60d8000<br>mprotect(0x7ff5c6=
0de000, 2093056, PROT_NONE) =3D 0<br>mmap(0x7ff5c62dd000, 8192, PROT_READ|P=
ROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) =3D 0x7ff5c62dd0=
00<br>mmap(0x7ff5c62df000, 8648, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXE=
D|MAP_ANONYMOUS, -1, 0) =3D 0x7ff5c62df000<br>close(3)=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 0<br>open(&quot;/usr/lib/x86_64-linux-gnu/libutil.so.1&=
quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)<br>ope=
n(&quot;/usr/lib/xen-4.6/bin/../lib/libutil.so.1&quot;, O_RDONLY|O_CLOEXEC)=
 =3D -1 ENOENT (No such file or directory)<br>access(&quot;/etc/ld.so.nohwc=
ap&quot;, F_OK)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENOENT (No such file o=
r directory)<br>open(&quot;/lib/x86_64-linux-gnu/libutil.so.1&quot;, O_RDON=
LY|O_CLOEXEC) =3D 3<br>read(3, &quot;\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&gt=
;\0\1\0\0\0`\16\0\0\0\0\0\0&quot;..., 832) =3D 832<br>fstat(3, {st_mode=3DS=
_IFREG|0644, st_size=3D10656, ...}) =3D 0<br>mmap(NULL, 2105608, PROT_READ|=
PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c5ed5000<br>mprotect(=
0x7ff5c5ed7000, 2093056, PROT_NONE) =3D 0<br>mmap(0x7ff5c60d6000, 8192, PRO=
T_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) =3D 0x7f=
f5c60d6000<br>close(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>open(=
&quot;/usr/lib/x86_64-linux-gnu/libuuid.so.1&quot;, O_RDONLY|O_CLOEXEC) =3D=
 -1 ENOENT (No such file or directory)<br>open(&quot;/usr/lib/xen-4.6/bin/.=
./lib/libuuid.so.1&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file o=
r directory)<br>access(&quot;/etc/ld.so.nohwcap&quot;, F_OK)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D -1 ENOENT (No such file or directory)<br>open(&quot;/li=
b/x86_64-linux-gnu/libuuid.so.1&quot;, O_RDONLY|O_CLOEXEC) =3D 3<br>read(3,=
 &quot;\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&gt;\0\1\0\0\0\20\25\0\0\0\0\0\0&=
quot;..., 832) =3D 832<br>fstat(3, {st_mode=3DS_IFREG|0644, st_size=3D18976=
, ...}) =3D 0<br>mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANO=
NYMOUS, -1, 0) =3D 0x7ff5c75e4000<br>mmap(NULL, 2113904, PROT_READ|PROT_EXE=
C, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c5cd0000<br>mprotect(0x7ff5c5=
cd4000, 2093056, PROT_NONE) =3D 0<br>mmap(0x7ff5c5ed3000, 8192, PROT_READ|P=
ROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) =3D 0x7ff5c5ed30=
00<br>close(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>open(&quot;/us=
r/lib/xen-4.6/bin/../lib/libdl.so.2&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOEN=
T (No such file or directory)<br>access(&quot;/etc/ld.so.nohwcap&quot;, F_O=
K)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENOENT (No such file or directory)<=
br>open(&quot;/lib/x86_64-linux-gnu/libdl.so.2&quot;, O_RDONLY|O_CLOEXEC) =
=3D 3<br>read(3, &quot;\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&gt;\0\1\0\0\0\24=
0\r\0\0\0\0\0\0&quot;..., 832) =3D 832<br>fstat(3, {st_mode=3DS_IFREG|0644,=
 st_size=3D14608, ...}) =3D 0<br>mmap(NULL, 2109680, PROT_READ|PROT_EXEC, M=
AP_PRIVATE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c5acc000<br>mprotect(0x7ff5c5acf0=
00, 2093056, PROT_NONE) =3D 0<br>mmap(0x7ff5c5cce000, 8192, PROT_READ|PROT_=
WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) =3D 0x7ff5c5cce000<b=
r>close(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>open(&quot;/usr/l=
ib/x86_64-linux-gnu/liblzma.so.5&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (=
No such file or directory)<br>open(&quot;/usr/lib/xen-4.6/bin/../lib/liblzm=
a.so.5&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)=
<br>access(&quot;/etc/ld.so.nohwcap&quot;, F_OK)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D -1 ENOENT (No such file or directory)<br>open(&quot;/lib/x86_64-lin=
ux-gnu/liblzma.so.5&quot;, O_RDONLY|O_CLOEXEC) =3D 3<br>read(3, &quot;\177E=
LF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&gt;\0\1\0\0\0\320 \0\0\0\0\0\0&quot;..., 832=
) =3D 832<br>fstat(3, {st_mode=3DS_IFREG|0644, st_size=3D137400, ...}) =3D =
0<br>mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, =
0) =3D 0x7ff5c75e3000<br>mmap(NULL, 2232456, PROT_READ|PROT_EXEC, MAP_PRIVA=
TE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c58aa000<br>mprotect(0x7ff5c58cb000, 2093=
056, PROT_NONE) =3D 0<br>mmap(0x7ff5c5aca000, 8192, PROT_READ|PROT_WRITE, M=
AP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x20000) =3D 0x7ff5c5aca000<br>close=
(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>open(&quot;/usr/lib/x86_64=
-linux-gnu/libz.so.1&quot;, O_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file=
 or directory)<br>open(&quot;/usr/lib/xen-4.6/bin/../lib/libz.so.1&quot;, O=
_RDONLY|O_CLOEXEC) =3D -1 ENOENT (No such file or directory)<br>access(&quo=
t;/etc/ld.so.nohwcap&quot;, F_OK)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D -1 ENOE=
NT (No such file or directory)<br>open(&quot;/usr/local/lib/libz.so.1&quot;=
, O_RDONLY|O_CLOEXEC) =3D 3<br>read(3, &quot;\177ELF\2\1\1\0\0\0\0\0\0\0\0\=
0\3\0&gt;\0\1\0\0\0000$\0\0\0\0\0\0&quot;..., 832) =3D 832<br>fstat(3, {st_=
mode=3DS_IFREG|0755, st_size=3D121928, ...}) =3D 0<br>mmap(NULL, 2208144, P=
ROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =3D 0x7ff5c568e000<br>=
mprotect(0x7ff5c56a9000, 2093056, PROT_NONE) =3D 0<br>mmap(0x7ff5c58a8000, =
8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000=
) =3D 0x7ff5c58a8000<br>close(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0=
<br>mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0=
) =3D 0x7ff5c75e2000<br>mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|=
MAP_ANONYMOUS, -1, 0) =3D 0x7ff5c75e0000<br>arch_prctl(ARCH_SET_FS, 0x7ff5c=
75e0780) =3D 0<br>mprotect(0x7ff5c68cb000, 16384, PROT_READ) =3D 0<br>mprot=
ect(0x7ff5c58a8000, 4096, PROT_READ) =3D 0<br>mprotect(0x7ff5c5cce000, 4096=
, PROT_READ) =3D 0<br>mprotect(0x7ff5c5aca000, 4096, PROT_READ) =3D 0<br>mp=
rotect(0x7ff5c5ed3000, 4096, PROT_READ) =3D 0<br>mprotect(0x7ff5c60d6000, 4=
096, PROT_READ) =3D 0<br>mprotect(0x7ff5c6aec000, 4096, PROT_READ) =3D 0<br=
>mprotect(0x7ff5c62dd000, 4096, PROT_READ) =3D 0<br>mprotect(0x7ff5c6f2a000=
, 4096, PROT_READ) =3D 0<br>mprotect(0x7ff5c6509000, 4096, PROT_READ) =3D 0=
<br>mprotect(0x7ff5c6cfa000, 8192, PROT_READ) =3D 0<br>mprotect(0x7ff5c71b7=
000, 4096, PROT_READ) =3D 0<br>mprotect(0x7ff5c73c9000, 4096, PROT_READ) =
=3D 0<br>mprotect(0x62a000, 4096, PROT_READ)=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<=
br>mprotect(0x7ff5c75f0000, 4096, PROT_READ) =3D 0<br>munmap(0x7ff5c75e8000=
, 30772)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<=
br>set_tid_address(0x7ff5c75e0a50)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 4605<br>set_robust_list(0x7ff5c75e0a60, 24)=C2=A0=C2=A0=C2=A0=
=C2=A0 =3D 0<br>rt_sigaction(SIGRTMIN, {0x7ff5c68dab50, [], SA_RESTORER|SA_=
SIGINFO, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGRT_1, {0x7ff5c6=
8dabe0, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7ff5c68e6390}, NULL, 8) =
=3D 0<br>rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) =3D 0<br>getrli=
mit(RLIMIT_STACK, {rlim_cur=3D8192*1024, rlim_max=3DRLIM64_INFINITY}) =3D 0=
<br>ioctl(2, TCGETS, {B38400 opost isig icanon echo ...}) =3D 0<br>brk(NULL=
)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0x1659000<br>brk(0x167a000)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0x16=
7a000<br>pipe([3, 4])=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>fcntl(3, F_GETFL)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0 (flags O_RDONLY)<br>fcntl(=
3, F_SETFL, O_RDONLY|O_NONBLOCK)=C2=A0 =3D 0<br>fcntl(4, F_GETFL)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0x1 (flags O_WRONLY)<b=
r>fcntl(4, F_SETFL, O_WRONLY|O_NONBLOCK)=C2=A0 =3D 0<br>open(&quot;/proc/xe=
n/privcmd&quot;, O_RDWR)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 5<br>fcntl=
(5, F_GETFD)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0=
<br>fcntl(5, F_SETFD, FD_CLOEXEC)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 0<br>stat(&quot;/var/run/xenstored/socket&quot;, {st=
_mode=3DS_IFSOCK|0600, st_size=3D0, ...}) =3D 0<br>socket(PF_LOCAL, SOCK_ST=
REAM, 0)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 6<br>fcntl(6, F_GETF=
D)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>fcntl=
(6, F_SETFD, FD_CLOEXEC)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 0<br>connect(6, {sa_family=3DAF_LOCAL, sun_path=3D&quot;/var/=
run/xenstored/socket&quot;}, 110) =3D 0<br>open(&quot;/etc/xen/xl.conf&quot=
;, O_RDONLY)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 7<br>fstat(7, {st_mode=3DS_I=
FREG|0644, st_size=3D1303, ...}) =3D 0<br>fstat(7, {st_mode=3DS_IFREG|0644,=
 st_size=3D1303, ...}) =3D 0<br>read(7, &quot;## Global XL config file ##\n=
\n# C&quot;..., 4096) =3D 1303<br>close(7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) =3D 262150=
<br>mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_LO=
CKED, -1, 0) =3D 0x7ff5c75ef000<br>madvise(0x7ff5c75ef000, 4096, MADV_DONTF=
ORK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) =3D 0<br>=
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) =3D 0<br>ioctl(5, _IOC(=
0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00,=
 0x30), 0x7ffc8caebc90) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc=
8caebc90) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) =3D =
4096<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caebc90) =3D 0<br>open(&=
quot;helloworld.cfg&quot;, O_RDONLY)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 7<br>fstat(7, {st_mode=3DS_IFREG|0664, st_size=3D123, ...}) =3D 0<b=
r>fstat(7, {st_mode=3DS_IFREG|0664, st_size=3D123, ...}) =3D 0<br>read(7, &=
quot; name=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D &#39;h=
elloworld&#39;\n v&quot;..., 4096) =3D 123<br>close(7)=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 0<br>write(2, &quot;Parsing config from helloworld.c&qu=
ot;..., 35Parsing config from helloworld.cfg<br>) =3D 35<br>stat(&quot;/dev=
/random&quot;, {st_mode=3DS_IFCHR|0666, st_rdev=3Dmakedev(1, 8), ...}) =3D =
0<br>open(&quot;/dev/urandom&quot;, O_RDONLY|O_CLOEXEC) =3D 7<br>fcntl(7, F=
_GETFD)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0x1 =
(flags FD_CLOEXEC)<br>fcntl(7, F_SETFD, FD_CLOEXEC)=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>getuid()=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 0<br>getppid()=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 4603=
<br>read(7, &quot;\253\302\21\234Xz\351+uj~\36\351\352r`&quot;, 16) =3D 16<=
br>close(7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>gettid()=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 4605<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30),=
 0x7ffc8caeb730) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb7b=
0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb7b0) =3D 0<br>op=
en(&quot;/var/lock/xl&quot;, O_WRONLY|O_CREAT, 0200) =3D 7<br>fcntl(7, F_SE=
TFD, FD_CLOEXEC)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 0<br>fcntl(7, F_SETLKW, {l_type=3DF_WRLCK, l_whence=3DSEEK_SET, l_s=
tart=3D0, l_len=3D0}) =3D 0<br>access(&quot;/usr/bin/qemu-system-i386&quot;=
, X_OK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb890) =3D 0<=
br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb910) =3D 0<br>ioctl(5, _I=
OC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb910) =3D 0<br>pipe([8, 9])=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 0<br>fcntl(8, F_GETFL)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 0 (flags O_RDONLY)<br>fcntl(8, F_SETFL, O_RDONLY|O_NONBLOCK)=
=C2=A0 =3D 0<br>fcntl(9, F_GETFL)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 0x1 (flags O_WRONLY)<br>fcntl(9, F_SETFL, O_WRONLY|O_NO=
NBLOCK)=C2=A0 =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7=
ff5c68e6390}, {SIG_DFL, [], 0}, 8) =3D 0<br>write(6, &quot;\2\0\0\0\0\0\0\0=
\0\0\0\0\23\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/pool/0/name\0&=
quot;, 19)=C2=A0=C2=A0=C2=A0 =3D 19<br>read(6, &quot;\20\0\0\0\0\0\0\0\0\0\=
0\0\7\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;ENOENT\0&quot;, 7)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 7<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER=
, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x=
7ffc8caeb800) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb7e0) =
=3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, =
{SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\n\0=
\0\0\0\0\0\0\0\0\0\0\2\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;5\0&quot;,=
 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 2<br>read(6, &qu=
ot;\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;/lo=
cal/domain/5\0&quot;, 16)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 16<=
br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, =
8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390=
}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\=
6\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;\0&quot=
;, 1)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 1<br>re=
ad(6, &quot;\6\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0&quot;, 16) =3D 16<br>read(6, &=
quot;1\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 2<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\r\0\0\0\0\0\0\0\1\0\0\0\20\0\0\0&quot;, 16) =3D 16<br>write(6, &quot=
;/local/domain/5\0&quot;, 16)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 16<br=
>read(6, &quot;\r\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6=
, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\f\0\0\0\0\0\0\0\1\0\0\0\20\0\0\0&quot;, 16) =3D 16<br>write(6, &quot=
;/local/domain/5\0&quot;, 16)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 16<br=
>read(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6=
, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\16\0\0\0\0\0\0\0\1\0\0\0\26\0\0\0&quot;, 16) =3D 16<br>write(6, &quo=
t;/local/domain/5\0&quot;, 16)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 16<b=
r>write(6, &quot;n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 3<br>write(6, &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;=
, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTO=
RER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [],=
 SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, =
8) =3D 0<br>write(6, &quot;\r\0\0\0\0\0\0\0\1\0\0\0)\0\0\0&quot;, 16) =3D 1=
6<br>write(6, &quot;/vm/089886d4-2b18-47a2-8e78-b8aa&quot;..., 41) =3D 41<b=
r>read(6, &quot;\r\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(=
6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\f\0\0\0\0\0\0\0\1\0\0\0)\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/=
vm/089886d4-2b18-47a2-8e78-b8aa&quot;..., 41) =3D 41<br>read(6, &quot;\f\0\=
0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, =
3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigactio=
n(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt=
_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [=
], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\0\0=
\0\1\0\0\0/\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/vm/089886d4-2b18-47a=
2-8e78-b8aa&quot;..., 41) =3D 41<br>write(6, &quot;n0\0&quot;, 3)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>write(6, &quot;r5\0&quot;, 3)=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\=
0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, =
3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigactio=
n(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt=
_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [=
], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\r\0\0\0\0\0\0\=
0\1\0\0\0\t\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/libxl/5\0&quot;, 9)=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 9<br>read(6, &quot;\r\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16=
) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER=
, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA=
_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =
=3D 0<br>write(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0\t\0\0\0&quot;, 16) =3D 16<=
br>write(6, &quot;/libxl/5\0&quot;, 9)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 9<br>read(6, &quot;\f\=
0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;=
, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigac=
tion(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br=
>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL=
, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\=
0\0\0\1\0\0\0\f\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/libxl/5\0&quot;,=
 9)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 9<br>write(6, &quot;n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\1\0\0\0\3\0\=
0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [],=
 SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG=
_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c6=
8e6390}, 8) =3D 0<br>write(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0\20\0\0\0&quot;=
, 16) =3D 16<br>write(6, &quot;/libxl/5/device\0&quot;, 16)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 16<br>read(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0\3\0\=
0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [],=
 SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG=
_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c6=
8e6390}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\0\0\0\1\0\0\0\23\0\0\0&quot=
;, 16) =3D 16<br>write(6, &quot;/libxl/5/device\0&quot;, 16)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 16<br>write(6, &quot;n0\0&quot;, 3)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\=
1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {=
SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(S=
IGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTOR=
ER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\1\0\0\0;\0=
\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/vm\0&quot;, 19)=C2=
=A0=C2=A0=C2=A0 =3D 19<br>write(6, &quot;/vm/089886d4-2b18-47a2-8e78-b8aa&q=
uot;..., 40) =3D 40<br>read(6, &quot;\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;=
, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTO=
RER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [],=
 SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, =
8) =3D 0<br>write(6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0&quot;, 16) =3D =
16<br>write(6, &quot;5\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 2<br>read(6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0&quot;=
, 16) =3D 16<br>read(6, &quot;/local/domain/5\0&quot;, 16)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 16<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], S=
A_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_I=
GN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e=
6390}, 8) =3D 0<br>write(6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0&quot;, 1=
6) =3D 16<br>write(6, &quot;5\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 2<br>read(6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0=
&quot;, 16) =3D 16<br>read(6, &quot;/local/domain/5\0&quot;, 16)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 16<br>rt_sigaction(SIGPIPE, {SIG_DFL,=
 [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, =
{SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7f=
f5c68e6390}, 8) =3D 0<br>write(6, &quot;\2\0\0\0\0\0\0\0\0\0\0\0)\0\0\0&quo=
t;, 16) =3D 16<br>write(6, &quot;/local/domain/5/image/device-mod&quot;...,=
 41) =3D 41<br>read(6, &quot;\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0&quot;, 16) =
=3D 16<br>read(6, &quot;ENOENT\0&quot;, 7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 7=
<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL,=
 8) =3D 0<br>mmap(NULL, 102400, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONY=
MOUS|MAP_LOCKED, -1, 0) =3D 0x7ff5c75c7000<br>madvise(0x7ff5c75c7000, 10240=
0, MADV_DONTFORK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cad35=
d0) =3D 0<br>madvise(0x7ff5c75c7000, 102400, MADV_DOFORK) =3D 0<br>munmap(0=
x7ff5c75c7000, 102400)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 0<br>mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMO=
US|MAP_LOCKED, -1, 0) =3D 0x7ff5c75ed000<br>madvise(0x7ff5c75ed000, 8192, M=
ADV_DONTFORK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cad25d0) =
=3D -1 ENOSYS (Function not implemented)<br>madvise(0x7ff5c75ed000, 8192, M=
ADV_DOFORK) =3D 0<br>munmap(0x7ff5c75ed000, 8192)=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>mmap(NULL, 8192, PROT_R=
EAD|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) =3D 0x7ff5c75e=
d000<br>madvise(0x7ff5c75ed000, 8192, MADV_DONTFORK) =3D 0<br>ioctl(5, _IOC=
(0, 0x50, 0x00, 0x30), 0x7ffc8cad25d0) =3D -1 ENOSYS (Function not implemen=
ted)<br>madvise(0x7ff5c75ed000, 8192, MADV_DOFORK) =3D 0<br>munmap(0x7ff5c7=
5ed000, 8192)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0 =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e=
6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &qu=
ot;\2\0\0\0\0\0\0\0\0\0\0\0\25\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/l=
ocal/domain/0/name\0&quot;, 21)=C2=A0 =3D 21<br>read(6, &quot;\2\0\0\0\0\0\=
0\0\0\0\0\0\10\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;Domain-0&quot;, 8)=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 8<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA=
_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IG=
N, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6=
390}, 8) =3D 0<br>write(6, &quot;\2\0\0\0\0\0\0\0\0\0\0\0\25\0\0\0&quot;, 1=
6) =3D 16<br>write(6, &quot;/local/domain/5/name\0&quot;, 21)=C2=A0 =3D 21<=
br>read(6, &quot;\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0&quot;, 16) =3D 16<br>rea=
d(6, &quot;ENOENT\0&quot;, 7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 7<br>rt_sigac=
tion(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br=
>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL=
, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0=
\0\0\1\0\0\0\37\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/n=
ame\0&quot;, 21)=C2=A0 =3D 21<br>write(6, &quot;helloworld&quot;, 10)=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 10<br>read(6, &quot;\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<=
br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c=
68e6390}, NULL, 8) =3D 0<br>mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIV=
ATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) =3D 0x7ff5c75ee000<br>madvise(0x7ff5c7=
5ee000, 4096, MADV_DONTFORK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0=
x7ffc8caeb5f0) =3D 0<br>mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|=
MAP_ANONYMOUS|MAP_LOCKED, -1, 0) =3D 0x7ff5c75ec000<br>madvise(0x7ff5c75ec0=
00, 8192, MADV_DONTFORK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ff=
c8caea5f0) =3D -1 ENOSYS (Function not implemented)<br>madvise(0x7ff5c75ec0=
00, 8192, MADV_DOFORK) =3D 0<br>munmap(0x7ff5c75ec000, 8192)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>rt_sigaction(S=
IGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTOR=
ER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\1\0\0\0008=
\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/vm/089886d4-2b18-47a2-8e78-b8aa=
&quot;..., 46) =3D 46<br>write(6, &quot;helloworld&quot;, 10)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 10<b=
r>read(6, &quot;\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(=
6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\f\0\0\0\0\0\0\0\1\0\0\0\24\0\0\0&quot;, 16) =3D 16<br>write(6, &quot=
;/local/domain/5/cpu\0&quot;, 20)=C2=A0=C2=A0 =3D 20<br>read(6, &quot;\f\0\=
0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, =
3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigactio=
n(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt=
_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [=
], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\0\0=
\0\1\0\0\0\32\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/cpu=
\0&quot;, 20)=C2=A0=C2=A0 =3D 20<br>write(6, &quot;n0\0&quot;, 3)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>write(6, &quot;r5\0&quot;, 3)=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\=
0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, =
3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigactio=
n(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt=
_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [=
], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\f\0\0\0\0\0\0\=
0\1\0\0\0\27\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/memo=
ry\0&quot;, 23) =3D 23<br>read(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&qu=
ot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RE=
STORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, =
[], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390=
}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\0\0\0\1\0\0\0\35\0\0\0&quot;, 16)=
 =3D 16<br>write(6, &quot;/local/domain/5/memory\0&quot;, 23) =3D 23<br>wri=
te(6, &quot;n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 3<br>write(6, &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 1=
6) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER=
, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA=
_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =
=3D 0<br>write(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0\27\0\0\0&quot;, 16) =3D 16=
<br>write(6, &quot;/local/domain/5/device\0&quot;, 23) =3D 23<br>read(6, &q=
uot;\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\=
0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt=
_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =
=3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, =
{SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\16\=
0\0\0\0\0\0\0\1\0\0\0\35\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/d=
omain/5/device\0&quot;, 23) =3D 23<br>write(6, &quot;n0\0&quot;, 3)=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>write(6, &quot;r5\0&quot;,=
 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16=
\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot=
;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigac=
tion(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br=
>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL=
, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\f\0\0\0\0\0=
\0\0\1\0\0\0\30\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/c=
ontrol\0&quot;, 24) =3D 24<br>read(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\=
0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA=
_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IG=
N, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6=
390}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\0\0\0\1\0\0\0\36\0\0\0&quot;, =
16) =3D 16<br>write(6, &quot;/local/domain/5/control\0&quot;, 24) =3D 24<br=
>write(6, &quot;n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>write(6, &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 1=
6) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER=
, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA=
_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =
=3D 0<br>write(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0!\0\0\0&quot;, 16) =3D 16<b=
r>write(6, &quot;/local/domain/5/control/shutdown&quot;..., 33) =3D 33<br>r=
ead(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, =
&quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, =
NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c6=
8e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &=
quot;\16\0\0\0\0\0\0\0\1\0\0\0$\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/=
local/domain/5/control/shutdown&quot;..., 33) =3D 33<br>write(6, &quot;n5\0=
&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, =
&quot;\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;=
OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br=
>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8)=
 =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390},=
 {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\f\=
0\0\0\0\0\0\0\1\0\0\0-\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/dom=
ain/5/device/suspend/e&quot;..., 45) =3D 45<br>read(6, &quot;\f\0\0\0\0\0\0=
\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE=
, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigactio=
n(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RES=
TORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\0\0\0\1\0\0\=
0000\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/device/suspe=
nd/e&quot;..., 45) =3D 45<br>write(6, &quot;n5\0&quot;, 3)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\1\0=
\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG=
_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGP=
IPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER,=
 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0\25\0\=
0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/data\0&quot;, 21)=
=C2=A0 =3D 21<br>read(6, &quot;\f\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =
=3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0=
x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RE=
STORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D=
 0<br>write(6, &quot;\16\0\0\0\0\0\0\0\1\0\0\0\30\0\0\0&quot;, 16) =3D 16<b=
r>write(6, &quot;/local/domain/5/data\0&quot;, 21)=C2=A0 =3D 21<br>write(6,=
 &quot;n5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br=
>read(6, &quot;\16\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(=
6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>mmap(NULL, 102400, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP=
_ANONYMOUS|MAP_LOCKED, -1, 0) =3D 0x7ff5c75c7000<br>madvise(0x7ff5c75c7000,=
 102400, MADV_DONTFORK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc=
8cad3730) =3D 0<br>madvise(0x7ff5c75c7000, 102400, MADV_DOFORK) =3D 0<br>mu=
nmap(0x7ff5c75c7000, 102400)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;=
5\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 2<br=
>read(6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0&quot;, 16) =3D 16<br>read(=
6, &quot;/local/domain/5\0&quot;, 16)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0 =3D 16<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68=
e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, =
0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>wr=
ite(6, &quot;\2\0\0\0\0\0\0\0\0\0\0\0\27\0\0\0&quot;, 16) =3D 16<br>write(6=
, &quot;/local/domain/5/target\0&quot;, 23) =3D 23<br>read(6, &quot;\20\0\0=
\0\0\0\0\0\0\0\0\0\7\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;ENOENT\0&quot=
;, 7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 7<br>rt_sigaction(SIGPIPE, {SIG_DFL, =
[], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {=
SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff=
5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\1\0\0\0R\0\0\0&quot=
;, 16) =3D 16<br>write(6, &quot;/vm/089886d4-2b18-47a2-8e78-b8aa&quot;..., =
46) =3D 46<br>write(6, &quot;089886d4-2b18-47a2-8e78-b8aad32a&quot;..., 36)=
 =3D 36<br>read(6, &quot;\v\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16=
<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c=
68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER=
, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>=
write(6, &quot;\v\0\0\0\0\0\0\0\1\0\0\0008\0\0\0&quot;, 16) =3D 16<br>write=
(6, &quot;/vm/089886d4-2b18-47a2-8e78-b8aa&quot;..., 46) =3D 46<br>write(6,=
 &quot;helloworld&quot;, 10)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 10<br>read(6, &quot;\v\0\0\0\0\0\0\0\=
1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {=
SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(S=
IGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTOR=
ER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\1\0\0\0A\0=
\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/control/platform&q=
uot;..., 64) =3D 64<br>write(6, &quot;1&quot;, 1)=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 1<br>read(6, &quot;\v\0\0\0\0\0=
\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGP=
IPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigac=
tion(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_=
RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\1\0\=
0\0;\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/control/plat=
form&quot;..., 58) =3D 58<br>write(6, &quot;1&quot;, 1)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 1<br>read(6, &quot;\v\0\0=
\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3=
)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigactio=
n(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt=
_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [=
], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\7\0\0\0\0\0\0\=
0\1\0\0\0\2\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;T\0&quot;, 2)=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 2<br>read(6, &quot;\7\0\0=
\0\0\0\0\0\1\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3=
)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigactio=
n(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>io=
ctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6e0) =3D 0<br>ioctl(5, _IOC(0,=
 0x50, 0x00, 0x30), 0x7ffc8caeb610) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0=
x30), 0x7ffc8caeb610) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8c=
aeb5f0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb5f0) =3D 0<=
br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_D=
FL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\2\0\0\0\0=
\0\0\0\0\0\0\0\23\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/pool/0/n=
ame\0&quot;, 19)=C2=A0=C2=A0=C2=A0 =3D 19<br>read(6, &quot;\20\0\0\0\0\0\0\=
0\0\0\0\0\7\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;ENOENT\0&quot;, 7)=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 7<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RE=
STORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x3=
0), 0x7ffc8caeb4c0) =3D 0<br>mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRI=
VATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) =3D 0x7ff5c75ed000<br>madvise(0x7ff5c=
75ed000, 4096, MADV_DONTFORK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), =
0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb650=
) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb650) =3D 0<br>ioc=
tl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb5d0) =3D 0<br>ioctl(5, _IOC(0, =
0x50, 0x00, 0x30), 0x7ffc8caeb6c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x=
30), 0x7ffc8caeb6e0) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTOR=
ER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<b=
r>write(6, &quot;\2\0\0\0\0\0\0\0\0\0\0\0\26\0\0\0&quot;, 16) =3D 16<br>wri=
te(6, &quot;/tool/xenstored/domid\0&quot;, 22) =3D 22<br>read(6, &quot;\20\=
0\0\0\0\0\0\0\0\0\0\0\7\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;ENOENT\0&q=
uot;, 7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 7<br>rt_sigaction(SIGPIPE, {SIG_DF=
L, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE=
, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x=
7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\2\0\0\0\0\0\0\0\0\0\0\0\30\0\0\0=
&quot;, 16) =3D 16<br>write(6, &quot;/tool/xenconsoled/domid\0&quot;, 24) =
=3D 24<br>read(6, &quot;\20\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0&quot;, 16) =3D 16=
<br>read(6, &quot;ENOENT\0&quot;, 7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 7<br>rt=
_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =
=3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb750) =3D 0<br>ioctl=
(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb750) =3D 0<br>ioctl(5, _IOC(0, 0x=
50, 0x00, 0x30), 0x7ffc8caeb660) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30=
), 0x7ffc8caeb660) =3D 0<br>open(&quot;./build/helloworld_xen-x86_64&quot;,=
 O_RDONLY) =3D 10<br>lseek(10, 0, SEEK_SET)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 0<br>lseek(10, 0, SEEK_END)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 79896<br>m=
map(NULL, 79896, PROT_READ, MAP_SHARED, 10, 0) =3D 0x7ff5c75cc000<br>close(=
10)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x3=
0), 0x7ffc8caeb810) =3D 262150<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ff=
c8caeb810) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea800) =3D=
 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea6f0) =3D 0<br>mmap(NUL=
L, 208896, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =3D 0x7f=
f5c7599000<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea6c0) =3D 50<br=
>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea6f0) =3D 0<br>mmap(NULL, 37=
2736, PROT_READ|PROT_WRITE, MAP_SHARED, 5, 0) =3D 0x7ff5c753e000<br>ioctl(5=
, _IOC(0, 0x50, 0x04, 0x20), 0x7ffc8caeb630) =3D 0<br>mmap(NULL, 204800, PR=
OT_READ|PROT_WRITE, MAP_SHARED, 5, 0) =3D 0x7ff5c750c000<br>ioctl(5, _IOC(0=
, 0x50, 0x04, 0x20), 0x7ffc8caeb610) =3D 0<br>mmap(NULL, 20480, PROT_READ|P=
ROT_WRITE, MAP_SHARED, 5, 0) =3D 0x7ff5c75e8000<br>ioctl(5, _IOC(0, 0x50, 0=
x04, 0x20), 0x7ffc8caeb630) =3D 0<br>mmap(NULL, 8192, PROT_READ|PROT_WRITE,=
 MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) =3D 0x7ff5c750a000<br>madvise=
(0x7ff5c750a000, 8192, MADV_DONTFORK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00,=
 0x30), 0x7ffc8caeb5b0) =3D 0<br>mmap(NULL, 4096, PROT_WRITE, MAP_SHARED, 5=
, 0) =3D 0x7ff5c7509000<br>ioctl(5, _IOC(0, 0x50, 0x04, 0x20), 0x7ffc8caeb5=
10) =3D 0<br>munmap(0x7ff5c7509000, 4096)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>mmap(NULL, 4096, PROT_WRITE, MAP=
_SHARED, 5, 0) =3D 0x7ff5c7509000<br>ioctl(5, _IOC(0, 0x50, 0x04, 0x20), 0x=
7ffc8caeb510) =3D 0<br>munmap(0x7ff5c7509000, 4096)=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>mmap(NULL, 4096, PROT_R=
EAD|PROT_WRITE, MAP_SHARED, 5, 0) =3D 0x7ff5c7509000<br>ioctl(5, _IOC(0, 0x=
50, 0x04, 0x20), 0x7ffc8caeb4a0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30=
), 0x7ffc8caeb720) =3D 0<br>munmap(0x7ff5c75e8000, 20480)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>ioctl(5, _IOC(0, 0x50, =
0x00, 0x30), 0x7ffc8caeb5f0) =3D 0<br>mmap(NULL, 4096, PROT_READ|PROT_WRITE=
, MAP_SHARED, 5, 0) =3D 0x7ff5c75ec000<br>ioctl(5, _IOC(0, 0x50, 0x04, 0x20=
), 0x7ffc8caeb540) =3D 0<br>munmap(0x7ff5c75ec000, 4096)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>munmap(0x7ff5c750=
9000, 4096)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 0<br>munmap(0x7ff5c750c000, 204800)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>munmap(0x7ff5c753e000, 372736)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>mmap(NULL, 8192, PRO=
T_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) =3D 0x7ff5c=
75eb000<br>madvise(0x7ff5c75eb000, 8192, MADV_DONTFORK) =3D 0<br>ioctl(5, _=
IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb5c0) =3D 0<br>madvise(0x7ff5c75eb000, =
8192, MADV_DOFORK) =3D 0<br>munmap(0x7ff5c75eb000, 8192)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>madvise(0x7ff5c75=
0a000, 8192, MADV_DOFORK) =3D 0<br>munmap(0x7ff5c750a000, 8192)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>ioctl(5, _I=
OC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb780) =3D 0<br>mmap(NULL, 4096, PROT_REA=
D|PROT_WRITE, MAP_SHARED, 5, 0) =3D 0x7ff5c75ec000<br>ioctl(5, _IOC(0, 0x50=
, 0x04, 0x20), 0x7ffc8caeb6a0) =3D 0<br>munmap(0x7ff5c75ec000, 4096)=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>munma=
p(0x7ff5c7599000, 208896)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0 =3D 0<br>munmap(0x7ff5c75cc000, 79896)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30),=
 0x7ffc8caeb520) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb52=
0) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390=
}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\=
2\0\0\0\0\0\0\0\0\0\0\0\23\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local=
/pool/0/name\0&quot;, 19)=C2=A0=C2=A0=C2=A0 =3D 19<br>read(6, &quot;\20\0\0=
\0\0\0\0\0\0\0\0\0\7\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;ENOENT\0&quot=
;, 7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 7<br>rt_sigaction(SIGPIPE, {SIG_DFL, =
[], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>ioctl(5, _IOC(0, 0x50, =
0x00, 0x30), 0x7ffc8caeb610) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0=
x7ffc8caeb670) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb670)=
 =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb740) =3D 0<br>ioct=
l(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0=
x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x3=
0), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cae=
b6b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br=
>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC=
(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00=
, 0x30), 0x7ffc8caeb6b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ff=
c8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D=
 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5,=
 _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) =3D 0<br>ioctl(5, _IOC(0, 0x50,=
 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), =
0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620=
) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioc=
tl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, =
0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x=
30), 0x7ffc8caeb6b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8ca=
eb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<b=
r>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IO=
C(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x0=
0, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7f=
fc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =
=3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) =3D 0<br>ioctl=
(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x=
50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30=
), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb=
6b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>=
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(=
0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00,=
 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc=
8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D =
0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, =
_IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, =
0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0=
x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0)=
 =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioct=
l(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) =3D 0<br>ioctl(5, _IOC(0, 0=
x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x3=
0), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cae=
b620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br=
>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC=
(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00=
, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ff=
c8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D=
 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5,=
 _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50,=
 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), =
0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0=
) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioc=
tl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, =
0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x=
30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8ca=
eb6b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<b=
r>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IO=
C(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x0=
0, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7f=
fc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =
=3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) =3D 0<br>ioctl=
(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x=
50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30=
), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb=
4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>=
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(=
0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00,=
 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc=
8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D =
0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, =
_IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, =
0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0=
x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620)=
 =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioct=
l(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0=
x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x3=
0), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cae=
b4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br=
>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC=
(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00=
, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ff=
c8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D=
 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5,=
 _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50,=
 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), =
0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0=
) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioc=
tl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, =
0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x=
30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8ca=
eb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<b=
r>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IO=
C(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x0=
0, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7f=
fc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =
=3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl=
(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x=
50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30=
), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb=
4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>=
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(=
0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00,=
 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc=
8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D =
0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, =
_IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, =
0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0=
x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0)=
 =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioct=
l(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0=
x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x3=
0), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cae=
b620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br=
>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC=
(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00=
, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ff=
c8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D=
 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5,=
 _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50,=
 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), =
0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0=
) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioc=
tl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, =
0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x=
30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8ca=
eb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<b=
r>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IO=
C(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x0=
0, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7f=
fc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =
=3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl=
(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x=
50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30=
), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb=
620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>=
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(=
0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00,=
 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc=
8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D =
0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, =
_IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, =
0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0=
x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0)=
 =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioct=
l(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0=
x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x3=
0), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cae=
b4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br=
>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC=
(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00=
, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ff=
c8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D=
 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5,=
 _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50,=
 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), =
0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620=
) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioc=
tl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, =
0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x=
30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8ca=
eb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<b=
r>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IO=
C(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x0=
0, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7f=
fc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =
=3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl=
(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x=
50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30=
), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb=
4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>=
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(=
0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00,=
 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc=
8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D =
0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, =
_IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, =
0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0=
x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620)=
 =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioct=
l(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0=
x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x3=
0), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cae=
b4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br=
>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC=
(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00=
, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ff=
c8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D=
 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5,=
 _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50,=
 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), =
0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0=
) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioc=
tl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, =
0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x=
30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8ca=
eb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<b=
r>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IO=
C(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x0=
0, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7f=
fc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =
=3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl=
(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x=
50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30=
), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb=
4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>=
ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(=
0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00,=
 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc=
8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D =
0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, =
_IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, =
0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0=
x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0)=
 =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioct=
l(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0=
x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x3=
0), 0x7ffc8caeb6b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8cae=
b4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br=
>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC=
(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00=
, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ff=
c8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D=
 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) =3D 0<br>ioctl(5,=
 _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50,=
 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), =
0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0=
) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioc=
tl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, =
0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x=
30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8ca=
eb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<b=
r>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) =3D 0<br>ioctl(5, _IO=
C(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x0=
0, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7f=
fc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb6b0) =
=3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4b0) =3D 0<br>ioctl=
(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x=
50, 0x00, 0x30), 0x7ffc8caeb620) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30=
), 0x7ffc8caeb6b0) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER=
, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>=
write(6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0&quot;, 16) =3D 16<br>write(=
6, &quot;5\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 2<br>read(6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0&quot;, 16) =3D 16=
<br>read(6, &quot;/local/domain/5\0&quot;, 16)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 16<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, =
0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_R=
ESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =
=3D 0<br>write(6, &quot;\2\0\0\0\0\0\0\0\0\0\0\0\23\0\0\0&quot;, 16) =3D 16=
<br>write(6, &quot;/local/domain/5/vm\0&quot;, 19)=C2=A0=C2=A0=C2=A0 =3D 19=
<br>read(6, &quot;\2\0\0\0\0\0\0\0\0\0\0\0(\0\0\0&quot;, 16) =3D 16<br>read=
(6, &quot;/vm/089886d4-2b18-47a2-8e78-b8aa&quot;..., 40) =3D 40<br>rt_sigac=
tion(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br=
>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL=
, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\6\0\0\0\0\0=
\0\0\0\0\0\0\1\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;\0&quot;, 1)=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 1<br>read(6, &quot;=
\6\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;2\0&quo=
t;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 2<br>rt=
_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =
=3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, =
{SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0=
\0\0\0\0\0\0\2\0\0\0(\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/doma=
in/5/memory/static-ma&quot;..., 34) =3D 34<br>write(6, &quot;102400&quot;, =
6)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 6<br>read(6, &quot;\v\0\0\0\0\0\0\=
0\2\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE=
, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigactio=
n(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RES=
TORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0=
$\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/memory/target\0=
&quot;, 30) =3D 30<br>write(6, &quot;102400&quot;, 6)=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 6<br>read(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0&quot;,=
 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTO=
RER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [],=
 SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, =
8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0!\0\0\0&quot;, 16) =3D 1=
6<br>write(6, &quot;/local/domain/5/memory/videoram\0&quot;, 32) =3D 32<br>=
write(6, &quot;0&quot;, 1)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 1<br>read(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0&quo=
t;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RE=
STORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, =
[], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390=
}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0\27\0\0\0&quot;, 16) =
=3D 16<br>write(6, &quot;/local/domain/5/domid\0&quot;, 22) =3D 22<br>write=
(6, &quot;5&quot;, 1)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 1<br>read(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0&quot;, 16=
) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER=
, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA=
_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =
=3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0\34\0\0\0&quot;, 16) =3D 16=
<br>write(6, &quot;/local/domain/5/store/port\0&quot;, 27) =3D 27<br>write(=
6, &quot;1&quot;, 1)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 1<br>read(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0&quot;, 16=
) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER=
, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA=
_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =
=3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0$\0\0\0&quot;, 16) =3D 16<b=
r>write(6, &quot;/local/domain/5/store/ring-ref\0&quot;, 31) =3D 31<br>writ=
e(6, &quot;49806&quot;, 5)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 5<br=
>read(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6=
, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\v\0\0\0\0\0\0\0\2\0\0\0)\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/=
local/domain/5/cpu/0/availabili&quot;..., 35) =3D 35<br>write(6, &quot;onli=
ne&quot;, 6)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 6<br>read(6, &quot;\v\0\0=
\0\0\0\0\0\2\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3=
)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigactio=
n(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt=
_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [=
], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\=
0\2\0\0\0;\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/vm/089886d4-2b18-47a2=
-8e78-b8aa&quot;..., 54) =3D 54<br>write(6, &quot;linux&quot;, 5)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 5<br>read(6, &quot;\v\0\0\0\0\0\0\0\2\0\=
0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG=
_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGP=
IPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER,=
 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0S\0\0\=
0&quot;, 16) =3D 16<br>write(6, &quot;/vm/089886d4-2b18-47a2-8e78-b8aa&quot=
;..., 54) =3D 54<br>write(6, &quot;./build/helloworld_xen-x86_64&quot;, 29)=
 =3D 29<br>read(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0&quot;, 16) =3D 16=
<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c=
68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER=
, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>=
write(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0A\0\0\0&quot;, 16) =3D 16<br>write(6=
, &quot;/vm/089886d4-2b18-47a2-8e78-b8aa&quot;..., 52) =3D 52<br>write(6, &=
quot;1522724864.71&quot;, 13)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 13<br>read(6, &quot;\v\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0&qu=
ot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RE=
STORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, =
[], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390=
}, 8) =3D 0<br>write(6, &quot;\7\0\0\0\0\0\0\0\2\0\0\0\2\0\0\0&quot;, 16) =
=3D 16<br>write(6, &quot;T\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 2<br>read(6, &quot;\7\0\0\0\0\0\0\0\2\0\0\0\3\0\0\0&quo=
t;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RE=
STORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, =
[], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390=
}, 8) =3D 0<br>write(6, &quot;\10\0\0\0\0\0\0\0\0\0\0\0\n\0\0\0&quot;, 16) =
=3D 16<br>write(6, &quot;5\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 2<br>write(6, &quot;49806\0&quot;, 6)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 6<br>write(6, &quot;1\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 2<br>read(6, &quot;\10\0\0\0\0\0\0\0\0\0\0\0\3=
\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, =
[], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {=
SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff=
5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\0\0\0\0\34\0\0\0&qu=
ot;, 16) =3D 16<br>write(6, &quot;/libxl/5/dm-version\0&quot;, 20)=C2=A0=C2=
=A0 =3D 20<br>write(6, &quot;qemu_xen&quot;, 8)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 8=
<br>read(6, &quot;\v\0\0\0\0\0\0\0\0\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>rea=
d(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e639=
0}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7f=
f5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(=
6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0&quot;, 16) =3D 16<br>write(6, &qu=
ot;5\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 2=
<br>read(6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0&quot;, 16) =3D 16<br>re=
ad(6, &quot;/local/domain/5\0&quot;, 16)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 16<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5=
c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORE=
R, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br=
>write(6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0&quot;, 16) =3D 16<br>write=
(6, &quot;0\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 2<br>read(6, &quot;\n\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0&quot;, 16) =3D 16=
<br>read(6, &quot;/local/domain/0\0&quot;, 16)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 16<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, =
0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_R=
ESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =
=3D 0<br>write(6, &quot;\6\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0&quot;, 16) =3D 16<=
br>write(6, &quot;\0&quot;, 1)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 1<br>read(6, &quot;\6\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0&quot;,=
 16) =3D 16<br>read(6, &quot;3\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 2<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RE=
STORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, =
[], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390=
}, 8) =3D 0<br>write(6, &quot;\r\0\0\0\0\0\0\0\3\0\0\0\32\0\0\0&quot;, 16) =
=3D 16<br>write(6, &quot;/libxl/5/device/console/0\0&quot;, 26) =3D 26<br>r=
ead(6, &quot;\20\0\0\0\0\0\0\0\3\0\0\0\7\0\0\0&quot;, 16) =3D 16<br>read(6,=
 &quot;ENOENT\0&quot;, 7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 7<br>rt_sigactio=
n(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt=
_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [=
], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\=
0\3\0\0\0:\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/libxl/5/device/consol=
e/0/fronte&quot;..., 35) =3D 35<br>write(6, &quot;/local/domain/5/console&q=
uot;, 23) =3D 23<br>read(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 1=
6) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER=
, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA=
_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =
=3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0E\0\0\0&quot;, 16) =3D 16<b=
r>write(6, &quot;/libxl/5/device/console/0/backen&quot;..., 34) =3D 34<br>w=
rite(6, &quot;/local/domain/0/backend/console/&quot;..., 35) =3D 35<br>read=
(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &qu=
ot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3=
<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL,=
 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e639=
0}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;=
\r\0\0\0\0\0\0\0\3\0\0\0\30\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/loca=
l/domain/5/console\0&quot;, 24) =3D 24<br>read(6, &quot;\r\0\0\0\0\0\0\0\3\=
0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG=
_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGP=
IPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER,=
 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\f\0\0\0\0\0\0\0\3\0\0\0\30\0\=
0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/console\0&quot;, 24=
) =3D 24<br>read(6, &quot;\f\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 1=
6<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c=
68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER=
, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>=
write(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0\36\0\0\0&quot;, 16) =3D 16<br>writ=
e(6, &quot;/local/domain/5/console\0&quot;, 24) =3D 24<br>write(6, &quot;n0=
\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>write(6,=
 &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br=
>read(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(=
6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\v\0\0\0\0\0\0\0\3\0\0\0C\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/=
local/domain/5/console/backend\0&quot;, 32) =3D 32<br>write(6, &quot;/local=
/domain/0/backend/console/&quot;..., 35) =3D 35<br>read(6, &quot;\v\0\0\0\0=
\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGP=
IPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigac=
tion(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_=
RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\3\0\=
0\0$\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/console/back=
end-&quot;..., 35) =3D 35<br>write(6, &quot;0&quot;, 1)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 1<br>read(6, &quot;\v\0\0=
\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3=
)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigactio=
n(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt=
_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [=
], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\0\0=
\0\3\0\0\0)\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/conso=
le/backend-&quot;..., 35) =3D 35<br>write(6, &quot;n5\0&quot;, 3)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>write(6, &quot;r0\0&quot;, 3)=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\=
0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, =
3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigactio=
n(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt=
_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [=
], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\=
0\3\0\0\0%\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/consol=
e/limit\0&quot;, 30) =3D 30<br>write(6, &quot;1048576&quot;, 7)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 7<br>read(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quo=
t;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RE=
STORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, =
[], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390=
}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0$\0\0\0&quot;, 16) =
=3D 16<br>write(6, &quot;/local/domain/5/console/limit\0&quot;, 30) =3D 30<=
br>write(6, &quot;n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 3<br>write(6, &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;=
, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTO=
RER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [],=
 SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, =
8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0(\0\0\0&quot;, 16) =3D 1=
6<br>write(6, &quot;/local/domain/5/console/type\0&quot;, 29) =3D 29<br>wri=
te(6, &quot;xenconsoled&quot;, 11)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 11<br>read(6, &quot;\v\0\0\0\0\0\0\0\=
3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {=
SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(S=
IGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTOR=
ER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0#\=
0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/console/type\0&qu=
ot;, 29) =3D 29<br>write(6, &quot;n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 3<br>write(6, &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\=
0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DF=
L, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE=
, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x=
7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\&quot;\0=
\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/5/console/output\0&q=
uot;, 31) =3D 31<br>write(6, &quot;pty&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\=
0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, =
[], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {=
SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff=
5c68e6390}, 8) =3D 0<br>write(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0%\0\0\0&quo=
t;, 16) =3D 16<br>write(6, &quot;/local/domain/5/console/output\0&quot;, 31=
) =3D 31<br>write(6, &quot;n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 3<br>write(6, &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0\3\0\=
0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [],=
 SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG=
_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c6=
8e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\34\0\0\0&quot;=
, 16) =3D 16<br>write(6, &quot;/local/domain/5/console/tty\0&quot;, 28) =3D=
 28<br>read(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>=
read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e=
6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0=
x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>wri=
te(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0\&quot;\0\0\0&quot;, 16) =3D 16<br>wri=
te(6, &quot;/local/domain/5/console/tty\0&quot;, 28) =3D 28<br>write(6, &qu=
ot;n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>wr=
ite(6, &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<=
br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c=
68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER=
, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>=
write(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\36\0\0\0&quot;, 16) =3D 16<br>write=
(6, &quot;/local/domain/5/console/port\0&quot;, 29) =3D 29<br>write(6, &quo=
t;2&quot;, 1)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 1<br>read(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D =
16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7f=
f5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTO=
RER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<=
br>write(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0#\0\0\0&quot;, 16) =3D 16<br>wri=
te(6, &quot;/local/domain/5/console/port\0&quot;, 29) =3D 29<br>write(6, &q=
uot;n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>wr=
ite(6, &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<=
br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c=
68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER=
, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>=
write(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0&amp;\0\0\0&quot;, 16) =3D 16<br>wri=
te(6, &quot;/local/domain/5/console/ring-ref&quot;..., 33) =3D 33<br>write(=
6, &quot;49807&quot;, 5)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 5<br>re=
ad(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &=
quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, =
NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c6=
8e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &=
quot;\16\0\0\0\0\0\0\0\3\0\0\0&#39;\0\0\0&quot;, 16) =3D 16<br>write(6, &qu=
ot;/local/domain/5/console/ring-ref&quot;..., 33) =3D 33<br>write(6, &quot;=
n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>write=
(6, &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3=
<br>read(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>re=
ad(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e639=
0}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7f=
f5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(=
6, &quot;\r\0\0\0\0\0\0\0\3\0\0\0$\0\0\0&quot;, 16) =3D 16<br>write(6, &quo=
t;/local/domain/0/backend/console/&quot;..., 36) =3D 36<br>read(6, &quot;\2=
0\0\0\0\0\0\0\0\3\0\0\0\7\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;ENOENT\0=
&quot;, 7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 7<br>rt_sigaction(SIGPIPE, {SIG=
_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGP=
IPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER,=
 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\f\0\0\0\0\0\0\0\3\0\0\0$\0\0\=
0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/0/backend/console/&quot=
;..., 36) =3D 36<br>read(6, &quot;\f\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 1=
6) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER=
, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA=
_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =
=3D 0<br>write(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0*\0\0\0&quot;, 16) =3D 16<=
br>write(6, &quot;/local/domain/0/backend/console/&quot;..., 36) =3D 36<br>=
write(6, &quot;n0\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>write(6, &quot;r5\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 =3D 3<br>read(6, &quot;\16\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 1=
6) =3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER=
, 0x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA=
_RESTORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =
=3D 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0D\0\0\0&quot;, 16) =3D 16<b=
r>write(6, &quot;/local/domain/0/backend/console/&quot;..., 45) =3D 45<br>w=
rite(6, &quot;/local/domain/5/console&quot;, 23) =3D 23<br>read(6, &quot;\v=
\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0&quot=
;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt_sigac=
tion(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =3D 0<br=
>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, {SIG_DFL=
, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0\0\0\0\0=
\0\0\3\0\0\0001\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/domain/0/b=
ackend/console/&quot;..., 48) =3D 48<br>write(6, &quot;5&quot;, 1)=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 1<br>read(6, &qu=
ot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0=
&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt=
_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =
=3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, =
{SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0=
\0\0\0\0\0\0\3\0\0\0,\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/doma=
in/0/backend/console/&quot;..., 43) =3D 43<br>write(6, &quot;1&quot;, 1)=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 1<br>read(=
6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quo=
t;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3=
<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL,=
 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e639=
0}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;=
\v\0\0\0\0\0\0\0\3\0\0\0+\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/local/=
domain/0/backend/console/&quot;..., 42) =3D 42<br>write(6, &quot;1&quot;, 1=
)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 1<br=
>read(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6=
, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\v\0\0\0\0\0\0\0\3\0\0\0002\0\0\0&quot;, 16) =3D 16<br>write(6, &quot=
;/local/domain/0/backend/console/&quot;..., 45) =3D 45<br>write(6, &quot;vt=
100&quot;, 5)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 5<br>read(6, &qu=
ot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6, &quot;OK\0=
&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 3<br>rt=
_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, NULL, 8) =
=3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c68e6390}, =
{SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, &quot;\v\0=
\0\0\0\0\0\0\3\0\0\0&#39;\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;/libxl/=
5/device/console/0/fronte&quot;..., 38) =3D 38<br>write(6, &quot;5&quot;, 1=
)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 1<br=
>read(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6=
, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\v\0\0\0\0\0\0\0\3\0\0\0\&quot;\0\0\0&quot;, 16) =3D 16<br>write(6, &=
quot;/libxl/5/device/console/0/online&quot;..., 33) =3D 33<br>write(6, &quo=
t;1&quot;, 1)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 1<br>read(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D =
16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7f=
f5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTO=
RER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<=
br>write(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0!\0\0\0&quot;, 16) =3D 16<br>writ=
e(6, &quot;/libxl/5/device/console/0/state\0&quot;, 32) =3D 32<br>write(6, =
&quot;1&quot;, 1)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0 =3D 1<br>read(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =
=3D 16<br>read(6, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0=
x7ff5c68e6390}, NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RE=
STORER, 0x7ff5c68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D=
 0<br>write(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0(\0\0\0&quot;, 16) =3D 16<br>w=
rite(6, &quot;/libxl/5/device/console/0/protoc&quot;..., 35) =3D 35<br>writ=
e(6, &quot;vt100&quot;, 5)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 5<br=
>read(6, &quot;\v\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6=
, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>rt_sigaction(SIGPIPE, {SIG_IGN, [], SA_RESTORER, 0x7ff5c=
68e6390}, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390}, 8) =3D 0<br>write(6, =
&quot;\7\0\0\0\0\0\0\0\3\0\0\0\2\0\0\0&quot;, 16) =3D 16<br>write(6, &quot;=
T\0&quot;, 2)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 2<br=
>read(6, &quot;\7\0\0\0\0\0\0\0\3\0\0\0\3\0\0\0&quot;, 16) =3D 16<br>read(6=
, &quot;OK\0&quot;, 3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 3<br>rt_sigaction(SIGPIPE, {SIG_DFL, [], SA_RESTORER, 0x7ff5c68e6390},=
 NULL, 8) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb400) =3D =
0<br>mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_L=
OCKED, -1, 0) =3D 0x7ff5c75eb000<br>madvise(0x7ff5c75eb000, 8192, MADV_DONT=
FORK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caea400) =3D -1 E=
NOSYS (Function not implemented)<br>madvise(0x7ff5c75eb000, 8192, MADV_DOFO=
RK) =3D 0<br>munmap(0x7ff5c75eb000, 8192)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>open(&quot;/var/lib/xen/userdata=
-l.5.089886d4-2b18-47a2-8e78-b8aad32a6db8.domain-userdata-lock&quot;, O_RDW=
R|O_CREAT, 0666) =3D 10<br>fcntl(10, F_GETFD)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>fcntl(10, F_SETFD, FD_CLOEXEC)=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>flock(10, LOCK_EX)=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>fstat(10, {st_mod=
e=3DS_IFREG|0644, st_size=3D0, ...}) =3D 0<br>stat(&quot;/var/lib/xen/userd=
ata-l.5.089886d4-2b18-47a2-8e78-b8aad32a6db8.domain-userdata-lock&quot;, {s=
t_mode=3DS_IFREG|0644, st_size=3D0, ...}) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0=
x00, 0x30), 0x7ffc8caeb4c0) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x=
7ffc8caeb510) =3D 0<br>mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|M=
AP_ANONYMOUS|MAP_LOCKED, -1, 0) =3D 0x7ff5c75eb000<br>madvise(0x7ff5c75eb00=
0, 8192, MADV_DONTFORK) =3D 0<br>ioctl(5, _IOC(0, 0x50, 0x00, 0x30), 0x7ffc=
8caea510) =3D -1 ENOSYS (Function not implemented)<br>madvise(0x7ff5c75eb00=
0, 8192, MADV_DOFORK) =3D 0<br>munmap(0x7ff5c75eb000, 8192)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>ioctl(5, _IOC(=
0, 0x50, 0x00, 0x30), 0x7ffc8caeb510) =3D 0<br>mmap(NULL, 8192, PROT_READ|P=
ROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_LOCKED, -1, 0) =3D 0x7ff5c75eb000<=
br>madvise(0x7ff5c75eb000, 8192, MADV_DONTFORK) =3D 0<br>ioctl(5, _IOC(0, 0=
x50, 0x00, 0x30), 0x7ffc8caea510) =3D -1 ENOSYS (Function not implemented)<=
br>madvise(0x7ff5c75eb000, 8192, MADV_DOFORK) =3D 0<br>munmap(0x7ff5c75eb00=
0, 8192)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 0<br>open(&quot;/var/lib/xen/userdata-n.5.089886d4-2b18-47a2-8e78-b8aad=
32a6db8.libxl-json&quot;, O_RDWR|O_CREAT|O_TRUNC, 0600) =3D 11<br>write(11,=
 &quot;{\n=C2=A0=C2=A0=C2=A0 \&quot;c_info\&quot;: {\n=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 \&quot;type\&quot;&quot;..., 914) =3D 914<br>close(11=
)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>rename(&quot;/var/lib/xen/userda=
ta-n.5.089886d4-2b18-47a2-8e78-b8aad32a6db8.libxl-json&quot;, &quot;/var/li=
b/xen/userdata-d.5.089886d4-2b18-47a2-8e78-b8aad32a6db8.libxl-json&quot;) =
=3D 0<br>unlink(&quot;/var/lib/xen/userdata-l.5.089886d4-2b18-47a2-8e78-b8a=
ad32a6db8.domain-userdata-lock&quot;) =3D 0<br>close(10)=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 0<br>clone(child_stack=3D0, flags=3DCLONE_CHILD_CLEARTID|C=
LONE_CHILD_SETTID|SIGCHLD, child_tidptr=3D0x7ff5c75e0a50) =3D 4617<br>fcntl=
(7, F_SETLKW, {l_type=3DF_UNLCK, l_whence=3DSEEK_SET, l_start=3D0, l_len=3D=
0}) =3D 0<br>close(7)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>ioctl(5,=
 _IOC(0, 0x50, 0x00, 0x30), 0x7ffc8caeb8a0) =3D 0<br>ioctl(5, _IOC(0, 0x50,=
 0x00, 0x30), 0x7ffc8caeb990) =3D 0<br>clone(child_stack=3D0, flags=3DCLONE=
_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=3D0x7ff5c75e0a50) =
=3D 4619<br>wait4(4619, [{WIFEXITED(s) &amp;&amp; WEXITSTATUS(s) =3D=3D 0}]=
, 0, NULL) =3D 4619<br>--- SIGCHLD {si_signo=3DSIGCHLD, si_code=3DCLD_EXITE=
D, si_pid=3D4619, si_uid=3D0, si_status=3D0, si_utime=3D0, si_stime=3D0} --=
-<br>wait4(4617, libxl: error: libxl_dom.c:37:libxl__domain_type: unable to=
 get domain type for domid=3D5<br>xl: unable to exec console client: No suc=
h file or directory<br>[{WIFEXITED(s) &amp;&amp; WEXITSTATUS(s) =3D=3D 1}],=
 0, NULL) =3D 4617<br>--- SIGCHLD {si_signo=3DSIGCHLD, si_code=3DCLD_EXITED=
, si_pid=3D4617, si_uid=3D0, si_status=3D1, si_utime=3D0, si_stime=3D0} ---=
<br>write(2, &quot;libxl: &quot;, 7libxl: )=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
=3D 7<br>write(2, &quot;error: &quot;, 7error: )=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 7<br>write(2, &quot;libxl_exec.c:118:libxl_report_ch&quot;..., 95libxl=
_exec.c:118:libxl_report_child_exitstatus: console child [4617] exited with=
 error status 1) =3D 95<br>write(2, &quot;\n&quot;, 1<br>)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 1<br>close(5)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>madvise(0x7ff5c75ee000, 4096, MADV_DOFORK) =
=3D 0<br>munmap(0x7ff5c75ee000, 4096)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>madvise(0x7ff5c75ef000, 4096, MADV_=
DOFORK) =3D 0<br>munmap(0x7ff5c75ef000, 4096)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>madvise(0x7ff5c75ed000, 4096,=
 MADV_DOFORK) =3D 0<br>munmap(0x7ff5c75ed000, 4096)=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>close(6)=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>close(3)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 =3D 0<br>close(4)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>close(8)=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0<br>close(9)=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 0<br>exit_group(0)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D ?<br>+++ exited with 0 +++<b=
r><br><div class=3D"gmail_extra"><br></div></div>

--883d24f1a5689259940568e92286--


--===============4051855199721525760==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============4051855199721525760==--


From minios-devel-bounces@lists.xenproject.org Tue Apr 03 07:30:32 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 03 Apr 2018 07:30:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3GOk-0006Ig-Ji; Tue, 03 Apr 2018 07:30:30 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=bqlj=gy=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f3GOj-0006Ib-Gx
 for minios-devel@lists.xenproject.org; Tue, 03 Apr 2018 07:30:29 +0000
X-Inumbo-ID: cbdfa2f8-3710-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::630])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id cbdfa2f8-3710-11e8-9728-bc764e045a96;
 Tue, 03 Apr 2018 09:29:52 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=bDROQQln5OUaC6bbHB08UOPUo3oH0m4GqrYE2PKjHwU=;
 b=SJ1drE7zBqaswgoN+I6HToEz2h7nv1fa1YUTYegM3zAneKwMfbTFJCNyKgQTUGJXouZl9CBCCf7V9wMMKOuuXuOnv8sLaP599TAGgXz5IhDMZfHVN1NBqrU+hNdlVPOu/aIuBga4Q3yetJzaaL9Qn9qffpzD/PyjvydELK0V1Dw=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0121.eurprd08.prod.outlook.com (10.161.56.23) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.631.10; Tue, 3 Apr 2018 07:30:20 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0631.013; Tue, 3 Apr 2018
 07:30:20 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Florian Schmidt <Florian.Schmidt@neclab.eu>,
 "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Thread-Topic: [Minios-devel] [UNIKRAFT PATCH 1/9] build: Adjust sed script to
 avoid treating arm64 as arm
Thread-Index: AQHTvA9BE0t7XtLhCkWCHHQmOrc5RaPRCzSAgB21v5A=
Date: Tue, 3 Apr 2018 07:30:20 +0000
Message-ID: <DB3PR08MB01072EB6A022EE2E1E691DF09EA50@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-2-git-send-email-Wei.Chen@arm.com>
 <0e8a73c5-f7f7-47b7-5345-6e2a23e445e2@neclab.eu>
In-Reply-To: <0e8a73c5-f7f7-47b7-5345-6e2a23e445e2@neclab.eu>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0121;
 7:TmOxcwC1WwfyXQBz3cOdyT2DUxTxr6NEsoNXwxbByRy6aj97j7HcbmRFCzLLtb+TaMmuTzJ5XMPSIQuE6w5NyLM4DGms2GCcxJp4xj86gj0kk3RqWMh1rFLM2JDrUN6hk1asC9ctdvMZEhjlu9dlznl2skJt9nx/jHpDXa8uUhe+l1qUw87ZTMKz1Phcaz1F8J04b66Z43M+LXb+x45HoPkxr/iGx8pKdXEQmb4LUrjPCn9naAXVLcmYAEaMReg/
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: a50d8524-91cf-45a4-a6eb-08d59934c16a
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0121; 
x-ms-traffictypediagnostic: DB3PR08MB0121:
x-microsoft-antispam-prvs: <DB3PR08MB012135AF17A701BE05F96B6A9EA50@DB3PR08MB0121.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(158342451672863)(58134797142442)(265313219721884); 
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231221)(944501327)(52105095)(3002001)(10201501046)(93006095)(93001095)(6055026)(6041310)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123558120)(20161123560045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0121; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0121; 
x-forefront-prvs: 0631F0BC3D
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(366004)(376002)(39380400002)(39860400002)(396003)(346002)(252514010)(13464003)(189003)(199004)(51914003)(40434004)(74316002)(55016002)(6306002)(102836004)(2906002)(110136005)(99286004)(6116002)(105586002)(3846002)(55236004)(33656002)(14454004)(76176011)(81166006)(7696005)(8676002)(59450400001)(53366004)(81156014)(8936002)(7736002)(6246003)(53546011)(305945005)(6436002)(53936002)(5890100001)(106356001)(5660300001)(25786009)(6506007)(53376002)(5250100002)(9686003)(2501003)(86362001)(229853002)(66066001)(446003)(11346002)(486005)(476003)(486005)(316002)(966005)(2900100001)(3280700002)(68736007)(97736004)(26005)(186003)(3660700001)(478600001)(72206003)(217873001)(10090945008);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0121;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; MX:1; A:1; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: 0npXGKrybL0/GpxWZghhBo6VEcIrNewitRI2Q5+XInHFwnafDW+9gQcycIz5gH55EbYHhGcbKlidn0xuBtw0ritruOFbH38CmWf7BCjYKXhqkP6pF4wTIBsa0WEFnPvstHIsGQkPCFtmtPqv+3fC265+bCrHZa7XgpBMLo/IHY63dlczJzSeSFl8+5v+N3PsjIBTnGU+lptoD7j5jCvNS16MfZRGsFBeVIYG5Ma/U7zCGhfR/iYRJUDORDTtdYz0foxFGuN7+41tWElOFd+mXxybr0ZGwqHnAjzosCo7sL/CnH/hmh7aRbOk7tzBG00/nbT1d9+aKkSdYI704UWXeBI4Qpv5z7fYvi577Fll/XR3UtMFXNbrhvMXcQ1seLK3U8vp4onozSoc7lwpFbjrbMcG+7UWvDUcEsJY6uqY7R0=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a50d8524-91cf-45a4-a6eb-08d59934c16a
X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Apr 2018 07:30:20.4665 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0121
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 1/9] build: Adjust sed script to
 avoid treating arm64 as arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgRmxvcmlhbiwNCg0KVGhhbmtzIGZvciB5b3VyIGNvbW1lbnRzLiBTb3JyeSBmb3IgcmVwbHlp
bmcgbGF0ZXIuIEkgZG9uJ3Qga25vdw0Kd2h5IHRoaXMgZW1haWwgaGFkIGJlZW4gYmxvY2tlZCBi
eSBtYWlsIHNlcnZlciBmb3Igc2V2ZXJhbCBkYXlzLg0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2Fn
ZS0tLS0tDQo+IEZyb206IE1pbmlvcy1kZXZlbCA8bWluaW9zLWRldmVsLWJvdW5jZXNAbGlzdHMu
eGVucHJvamVjdC5vcmc+IE9uIEJlaGFsZiBPZg0KPiBGbG9yaWFuIFNjaG1pZHQNCj4gU2VudDog
MjAxOOW5tDPmnIgxNeaXpSAxNzo0MQ0KPiBUbzogbWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2pl
Y3Qub3JnDQo+IFN1YmplY3Q6IFJlOiBbTWluaW9zLWRldmVsXSBbVU5JS1JBRlQgUEFUQ0ggMS85
XSBidWlsZDogQWRqdXN0IHNlZCBzY3JpcHQgdG8NCj4gYXZvaWQgdHJlYXRpbmcgYXJtNjQgYXMg
YXJtDQo+DQo+IFtUaGlzIHNlbmRlciBmYWlsZWQgb3VyIGZyYXVkIGRldGVjdGlvbiBjaGVja3Mg
YW5kIG1heSBub3QgYmUgd2hvIHRoZXkgYXBwZWFyDQo+IHRvIGJlLiBMZWFybiBhYm91dCBzcG9v
ZmluZyBhdCBodHRwOi8vYWthLm1zL0xlYXJuQWJvdXRTcG9vZmluZ10NCj4NCj4gSGksDQo+DQo+
IHRoYW5rcyBmb3IgdGhlIHBhdGNoIHNlcmllcy4gU2ltb24gY2FuIHByb2JhYmx5IHNheSBtb3Jl
IGFib3V0IHRoZQ0KPiBsYXlvdXQgcmVkZXNpZ24sIGJ1dCBicm93c2luZyBvdmVyIHlvdXIgcGF0
Y2gsIEkgZm91bmQgdGhpczoNCj4NCj4gT24gMDMvMTUvMjAxOCAwNDozOSBBTSwgV2VpIENoZW4g
d3JvdGU6DQo+ID4gLSAgICAgICAgICAgICAgICAgICAgLWUgJ3MvYXJtLiovYXJtLycgXA0KPiA+
ICsgICAgICAgICAgICAgICAgICAgIC1lICdzL2FybVteNl40XS4qL2FybS8nIFwNCj4NCj4gW2Fu
ZCB0d28gbW9yZSB0aW1lcyBiZWxvdyB0aGF0XQ0KPg0KPiBJIGRvbid0IHRoaW5rIHRoaXMgZG9l
cyB0aGUgcmlnaHQgdGhpbmcuIFRoaXMgbWF0Y2hlcyBhbnkgbGluZSB0aGF0DQo+IHN0YXJ0cyB3
aXRoIGFybSwgdGhlbiBkb2VzIG5vdCBoYXZlIGEgc2luZ2xlIG5leHQgY2hhcmFjdGVyIHRoYXQg
aXMNCj4gZWl0aGVyIGEgNCwgYSA2LCBvciBhIF4sIGFuZCB0aGVuIHdoYXRldmVyIGNvbWVzIGFm
dGVyLiBTbyB0aGlzIGxpbmUNCj4gY29udmVydHMgImFybTNYWVoiIHRvICJhcm0iLCBidXQgbm90
ICJhcm00WFlaIiBvciAiYXJtXlhZWiIuDQo+DQo+IEluc3RlYWQgeW91IHByb2JhYmx5IHdhbnQg
dG8gbWF0Y2ggYW55dGhpbmcgdGhhdCBzYXlzICJhcm0iLCBmb2xsb3dlZCBieQ0KPiBzb21ldGhp
bmcsIGV4Y2VwdCBpZiBpdCBjb250YWlucyB0aGUgc3RyaW5nIGFybTY0Pw0KPg0KPiBJIHRoaW5r
IHRoaXMgc2hvdWxkIHdvcmsgaW5zdGVhZDoNCj4NCj4gLWUgJy9hcm02NC8hIHMvYXJtLiovYXJt
LycNCj4NCj4gc28sIG9ubHkgYXBwbHkgdGhlIG9yaWdpbmFsIGxpbmUgaWYgaXQgZG9lc24ndCBj
b250YWluIGFybTY0Lg0KPg0KDQpZZXMsIHRoYXQncyB3aGF0IEkgd2FudGVkLiBJIHdpbGwgcmVi
YXNlIHRoZSB3aG9sZSBzZXJpZXMgdG8gdGhlIGxhdGVzdA0Kc3RhZ2luZyB0cmVlLiBJIHdpbGwg
YXBwbHkgYWJvdmUgY2hhbmdlIHRvIHYyIHBhdGNoLg0KDQpUaGFuayB5b3UgdmVyeSBtdWNoIQ0K
DQo+IENoZWVycywNCj4gRmxvcmlhbg0KPg0KPiAtLQ0KPiBEci4gRmxvcmlhbiBTY2htaWR0DQo+
IOODleODreODvOODquOCouODs+ODu+OCt+ODpeODn+ODg+ODiA0KPiBSZXNlYXJjaCBTY2llbnRp
c3QsDQo+IFN5c3RlbXMgYW5kIE1hY2hpbmUgTGVhcm5pbmcgR3JvdXANCj4gTkVDIExhYm9yYXRv
cmllcyBFdXJvcGUNCj4gS3VyZsO8cnN0ZW4tQW5sYWdlIDM2LCBELTY5MTE1IEhlaWRlbGJlcmcN
Cj4gVGVsLiAgICAgKzQ5ICgwKTYyMjEgNDM0Mi0yNjUNCj4gRmF4OiAgICAgKzQ5ICgwKTYyMjEg
NDM0Mi0xNTUNCj4gZS1tYWlsOiAgZmxvcmlhbi5zY2htaWR0QG5lY2xhYi5ldQ0KPiA9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4g
UmVnaXN0ZXJlZCBhdCBBbXRzZ2VyaWNodCBNYW5uaGVpbSwgR2VybWFueSwgSFJCNzI4NTU4DQo+
DQo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+IE1p
bmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QNCj4gTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qu
b3JnDQo+IGh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5p
b3MtZGV2ZWwNCklNUE9SVEFOVCBOT1RJQ0U6IFRoZSBjb250ZW50cyBvZiB0aGlzIGVtYWlsIGFu
ZCBhbnkgYXR0YWNobWVudHMgYXJlIGNvbmZpZGVudGlhbCBhbmQgbWF5IGFsc28gYmUgcHJpdmls
ZWdlZC4gSWYgeW91IGFyZSBub3QgdGhlIGludGVuZGVkIHJlY2lwaWVudCwgcGxlYXNlIG5vdGlm
eSB0aGUgc2VuZGVyIGltbWVkaWF0ZWx5IGFuZCBkbyBub3QgZGlzY2xvc2UgdGhlIGNvbnRlbnRz
IHRvIGFueSBvdGhlciBwZXJzb24sIHVzZSBpdCBmb3IgYW55IHB1cnBvc2UsIG9yIHN0b3JlIG9y
IGNvcHkgdGhlIGluZm9ybWF0aW9uIGluIGFueSBtZWRpdW0uIFRoYW5rIHlvdS4NCl9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWls
aW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMu
eGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Tue Apr 03 08:36:39 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 03 Apr 2018 08:36:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3HQj-0002Xu-Lw; Tue, 03 Apr 2018 08:36:37 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ttb/=gy=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3HQi-0002Xp-G9
 for minios-devel@lists.xenproject.org; Tue, 03 Apr 2018 08:36:36 +0000
X-Inumbo-ID: 09133ef4-371a-11e8-9728-bc764e045a96
Received: from mail-wr0-x232.google.com (unknown [2a00:1450:400c:c0c::232])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 09133ef4-371a-11e8-9728-bc764e045a96;
 Tue, 03 Apr 2018 10:36:00 +0200 (CEST)
Received: by mail-wr0-x232.google.com with SMTP id d1so17598610wrj.13
 for <minios-devel@lists.xenproject.org>; Tue, 03 Apr 2018 01:36:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to;
 bh=DzjKYofmIJUjtIEDawJQvbRpBZvpeSQYzJOXRPH1APw=;
 b=bAG7T+F3thc7sfWq8Z4x4pgbSfHdLsjMcTXQxP/T4Y2DMWzBgiruIu8gMNioTTm6Sw
 ObExx20hG8PLtkagzilzyY114v1iRZuwe6sWGzi6EtYDy9rGCctDBVqaWS+4cnRErpv9
 qMXfPfinlsB8PyJAaqhoIGvy2k+eLAij5zgT/+X+MdLOUvAZwoCI1mEk2HyHOWiDp1rk
 Xh8bvtjn6RRJUL1kJeduCfIHlfwBFjjlBTY0nRt2KCob8kff61mAQUq08dAWo5mfo1Vh
 +aIaqynnz2T66iJmJ8qeb3kxTTWiPCM6zy1iXu7Gap32lHEkgD1ZrfUtpY9wGyyd7e/5
 H+xA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=DzjKYofmIJUjtIEDawJQvbRpBZvpeSQYzJOXRPH1APw=;
 b=jDW+qvftFJJT0eUU8aA6bCh2fn1FTH6NEBDs8YjT1i3fbxyJlFgc9Bb72Dl78+TXsj
 3NiV4BUnVDjxX+rVEOype+3Dv3GDZ2xiEEwN3c4nS3ufa1McLwR/a13zEW1pvN1LvO5b
 QO292Rjr2NzlRsNloHraaIBoWqUMk/O7tUi3dL2N3W62XeCcHEBsdFEJO2iWWI+LLKJI
 ayRpYXx69WKlWC30l10oExMea1K+Z6nML86RV+6Fxx85SGwu0uKScoKo9mzOiPT+LLsf
 MzwI7qwUeyU2TYHcjDkzYo0eu04v0FhrD5OPJCZIgTSwmYEj68bwm0gT6s/NuU70vKQ8
 UdYw==
X-Gm-Message-State: ALQs6tDel/B2V43ByYrSKHmq8aJiJbrthQvzCiuIe5B6uMIvW1/TamKf
 BwTsmw3uGULUmHIVSH4vwZJaQ2tzF/nn2XyOIio=
X-Google-Smtp-Source: AIpwx49e3maXMkl22Nig0gkchrSaDjS+3CIEhneI1D4Dv0QI9dPlk7wpXJ4D38glJRPUTes3kfbgcFZlFLLAduwuMZA=
X-Received: by 2002:a19:2044:: with SMTP id g65-v6mr7987588lfg.0.1522744593668; 
 Tue, 03 Apr 2018 01:36:33 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Tue, 3 Apr 2018 01:36:33 -0700 (PDT)
In-Reply-To: <CAHP4M8XO-hSJT0EXkhoTZDv_esZy=dbYLTAqWS7jAkxCTe9VmA@mail.gmail.com>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
 <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
 <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
 <CAHP4M8XO-hSJT0EXkhoTZDv_esZy=dbYLTAqWS7jAkxCTe9VmA@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Tue, 3 Apr 2018 14:06:33 +0530
Message-ID: <CAHP4M8UL0=FARsbhy7ZO3Pteyq+8FMWCqT7N0ca2akk_8+ckBA@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============4137198484923535870=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============4137198484923535870==
Content-Type: multipart/alternative; boundary="00000000000096e3ae0568ed9a91"

--00000000000096e3ae0568ed9a91
Content-Type: text/plain; charset="UTF-8"

Help please ... unikraft seems to be the only option now to run unikernels
on ARM.
But before I reach there, I need to feel confident first on x86 (with
unikraft).


Thanks and Regards,
Ajay

--00000000000096e3ae0568ed9a91
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Help please ... unikraft seems to be the only option =
now to run unikernels on ARM.<br></div>But before I reach there, I need to =
feel confident first on x86 (with unikraft).<br><div class=3D"gmail_extra">=
<br clear=3D"all"><br><div class=3D"gmail_signature" data-smartmail=3D"gmai=
l_signature">Thanks and Regards,<br>Ajay<br></div>
</div></div>

--00000000000096e3ae0568ed9a91--


--===============4137198484923535870==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============4137198484923535870==--


From minios-devel-bounces@lists.xenproject.org Tue Apr 03 10:17:52 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 03 Apr 2018 10:17:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3J0h-0000fI-1n; Tue, 03 Apr 2018 10:17:51 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ttb/=gy=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3J0g-0000fD-06
 for minios-devel@lists.xenproject.org; Tue, 03 Apr 2018 10:17:50 +0000
X-Inumbo-ID: 2cdb5a7b-3728-11e8-9728-bc764e045a96
Received: from mail-wm0-x22a.google.com (unknown [2a00:1450:400c:c09::22a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 2cdb5a7b-3728-11e8-9728-bc764e045a96;
 Tue, 03 Apr 2018 12:17:13 +0200 (CEST)
Received: by mail-wm0-x22a.google.com with SMTP id p9so32277507wmc.3
 for <minios-devel@lists.xenproject.org>; Tue, 03 Apr 2018 03:17:48 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:from:date:message-id:subject:to;
 bh=P1CgBSotBgb9skoT+At5y3NlNqA6zL0jgawLr7jMboc=;
 b=hAve/AOaMh09a19XRYRD78Idtpz8Gq7/BKHzaLvPvYD/wnE31rJnHLLCcfymmJJbtC
 00iPBRlqQsccNevv4hKAaWupYeFnvXjI5ziVRYdC4a44V75rX/j5lHKF6nMsy5Y/ysAA
 IlFieHZ/0Zt/l4NMj5bhnT8VXSKY8x5J1FR/+CfWtlisBedbU2r92t/UjCAtA6crrNHx
 8U1WlYoN5MkdQMzGDZtK+73vl70JHaKi0At2aViReFr3iF5EOwPTm18EVThKyJntNSX5
 bRM8s7kDpY2SV77VEUx14chb/b2YEp4sezEbkC6eknYd2TxabmZHHiriGM0QLhG7uK/a
 Uv8A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
 bh=P1CgBSotBgb9skoT+At5y3NlNqA6zL0jgawLr7jMboc=;
 b=iZ8UWLpsdTKt+tp6+raQ/I+OnnSxqVC3y7lGwOLYxX+W0FIA9IySsa/Im6LQSkpIh+
 C2WYMmtZtkF+zuTZBy9LOFdKgjCPHI15IRgjZ/OIYPc7BFWLUu0SFue5fWVnW6vXOcdZ
 M/nmLTdx5Z+Ozw1fON3SBQsihzLqfxvUHCavgY5ClRikycQP1WWUnOf46AwRxE4gQf0V
 GYPOmpiD3Y54ShKOAkRoA4Y4ZxbJ/eIk2PeBHxPgAAsJuKgjCOwPG7rj6j5T3L+qnm9v
 MefhVaANpTurFTrkUvW8S4B6vnXfXIr73eOV465ScJq9WyKJ/llw47cBg04g5WunbKu1
 xglg==
X-Gm-Message-State: ALQs6tDE1ZcgswS4tAgU0pWU9R06WpE8vsbEZKjwq3uZ1E3ElIuyFRkK
 dxXv28G/rdOCvMzBEh84n+74PV8Lo1A3d3NYJMA=
X-Google-Smtp-Source: AIpwx4/yteADLnWpNm0bLCGGuwQ28fSR6yV/R5RaSgYxluqWspylbL2eKY0fZBW3n+2XI2go/BfrqnrkFj7jKsg8BTU=
X-Received: by 10.46.158.137 with SMTP id f9mr8372141ljk.113.1522750666826;
 Tue, 03 Apr 2018 03:17:46 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Tue, 3 Apr 2018 03:17:46 -0700 (PDT)
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Tue, 3 Apr 2018 15:47:46 +0530
Message-ID: <CAHP4M8Vv1y--nwrh9uODm_0dJ_MNjaNrtyQv+HOfW_-rbupdQw@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: [Minios-devel] Single codebase for para-virtualized guests on x86
 and ARM?
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============1820433116374839243=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============1820433116374839243==
Content-Type: multipart/alternative; boundary="883d24f1a11493e9150568ef045a"

--883d24f1a11493e9150568ef045a
Content-Type: text/plain; charset="UTF-8"

Hi All.

Since last few days, I have been attempting to understand the
minios/xen/rumprun/unikraft/x86/arm ecosystem, and (if not wrong) have come
to the conclusion that a unikernel run as a PV guest on either of x86/arm
would run in all cases (and not be dependent upon hardware-virtualization
support).

Now, since PV is a pure software-solution, I wonder if a common codebase is
possible for x86 and arm?
Or the differences in x86 and arm structures will eventually lead to (some)
differences in PV-code for x86 and arm?

Hoping for some clearance.


Thanks and Regards,
Ajay

--883d24f1a11493e9150568ef045a
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div>Hi All.<br><br></div>Since last few days, I=
 have been attempting to understand the minios/xen/rumprun/unikraft/x86/arm=
 ecosystem, and (if not wrong) have come to the conclusion that a unikernel=
 run as a PV guest on either of x86/arm would run in all cases (and not be =
dependent upon hardware-virtualization support).<br><br></div>Now, since PV=
 is a pure software-solution, I wonder if a common codebase is possible for=
 x86 and arm?<br></div>Or the differences in x86 and arm structures will ev=
entually lead to (some) differences in PV-code for x86 and arm?<br clear=3D=
"all"><div><div><div><div><br></div><div>Hoping for some clearance.<br><br>=
<br></div><div><div class=3D"gmail_signature" data-smartmail=3D"gmail_signa=
ture">Thanks and Regards,<br>Ajay<br></div>
</div></div></div></div></div>

--883d24f1a11493e9150568ef045a--


--===============1820433116374839243==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============1820433116374839243==--


From minios-devel-bounces@lists.xenproject.org Tue Apr 03 10:50:48 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 03 Apr 2018 10:50:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3JWY-0003Qe-5x; Tue, 03 Apr 2018 10:50:46 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=dcxo=gy=linaro.org=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f3JWX-0003QZ-6d
 for minios-devel@lists.xenproject.org; Tue, 03 Apr 2018 10:50:45 +0000
X-Inumbo-ID: c66f617f-372c-11e8-9728-bc764e045a96
Received: from mail-wm0-x229.google.com (unknown [2a00:1450:400c:c09::229])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id c66f617f-372c-11e8-9728-bc764e045a96;
 Tue, 03 Apr 2018 12:50:08 +0200 (CEST)
Received: by mail-wm0-x229.google.com with SMTP id r191so2027219wmg.4
 for <minios-devel@lists.xenproject.org>; Tue, 03 Apr 2018 03:50:43 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google;
 h=subject:to:references:from:message-id:date:user-agent:mime-version
 :in-reply-to:content-language:content-transfer-encoding;
 bh=H2y6r4Cw5ZWRiEUMWwvzVK0FmWRsthVtOmLoOZdGv5w=;
 b=hygr+ltHFN5Ph8jnVBZChWiPYOXohkDOc0nj4U9hurp24WlF+L/JgQaVkJjOUK2pzs
 lJ5mJ9laygkHtugm48R8qPAZDGshlUCelrzLsmLnISffG0U7xwhUEGyhhLsrgF5m9s/p
 UZ/m4rykGc+gOXWnz2j3r7GCD31AVpf1p8aeU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:subject:to:references:from:message-id:date
 :user-agent:mime-version:in-reply-to:content-language
 :content-transfer-encoding;
 bh=H2y6r4Cw5ZWRiEUMWwvzVK0FmWRsthVtOmLoOZdGv5w=;
 b=c/I3PxbElpmH2sMWO8e6VPDllJ+4T9f25rQfIrzwLvSXT2fHfTytSIhMjOQTSHZYGQ
 NQOxPQLIJlHQnb8CTO0fI673tRS0YDXOVgl6W96WC047CG+v2o7AJSH7iczm1QYURajN
 MvPqLn0Dxp5ak3Yg0koMIq3y8zWtjFoUUGGLQGkQCpIsQn8fZpSz7qWeZrbyA+78tWg4
 QsfULrW4dKAfQfiR2o8ysQf+PM9DqEYJ8bQ1Sh+GOMiUZA3auAdz/yci72y5qz4kPHk7
 qiE+/7s5+MP9x0oviaA9jrM/vvZJAw32u/ueAvwDds3yW/YvlRZ/NZ3afwZeLRA42oEc
 vFuA==
X-Gm-Message-State: AElRT7G/9EZSVmocwS67FTUMBxRut6dtmvt6G1G0ekALY/0hxJkJLXkM
 7/bSkhfGzJRSmeD++jU5bZZrg/EMJ8o=
X-Google-Smtp-Source: AIpwx4/Q7WDVykjonwrDCJA+4iQ1MIJRxlkeXvOpM/RwBMZhtP7bl0GNI0xg+hZp6DqTaJ9cR0fQwQ==
X-Received: by 10.80.170.84 with SMTP id p20mr16146974edc.233.1522752642501;
 Tue, 03 Apr 2018 03:50:42 -0700 (PDT)
Received: from ?IPv6:::1? ([2001:41d0:1:6c23::1])
 by smtp.gmail.com with ESMTPSA id d22sm1696127eda.31.2018.04.03.03.50.41
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 03 Apr 2018 03:50:41 -0700 (PDT)
To: Ajay Garg <ajaygargnsit@gmail.com>, minios-devel@lists.xenproject.org
References: <CAHP4M8Vv1y--nwrh9uODm_0dJ_MNjaNrtyQv+HOfW_-rbupdQw@mail.gmail.com>
From: Julien Grall <julien.grall@linaro.org>
Message-ID: <c6e33298-fcc9-f69f-aaa8-b0891c337fa6@linaro.org>
Date: Tue, 3 Apr 2018 11:50:40 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8Vv1y--nwrh9uODm_0dJ_MNjaNrtyQv+HOfW_-rbupdQw@mail.gmail.com>
Content-Language: en-US
Subject: Re: [Minios-devel] Single codebase for para-virtualized guests on
 x86 and ARM?
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAwMy8wNC8xOCAxMToxNywgQWpheSBHYXJnIHdyb3RlOgo+IEhpIEFsbC4KCkhpLAoKPiBT
aW5jZSBsYXN0IGZldyBkYXlzLCBJIGhhdmUgYmVlbiBhdHRlbXB0aW5nIHRvIHVuZGVyc3RhbmQg
dGhlIAo+IG1pbmlvcy94ZW4vcnVtcHJ1bi91bmlrcmFmdC94ODYvYXJtIGVjb3N5c3RlbSwgYW5k
IChpZiBub3Qgd3JvbmcpIGhhdmUgCj4gY29tZSB0byB0aGUgY29uY2x1c2lvbiB0aGF0IGEgdW5p
a2VybmVsIHJ1biBhcyBhIFBWIGd1ZXN0IG9uIGVpdGhlciBvZiAKPiB4ODYvYXJtIHdvdWxkIHJ1
biBpbiBhbGwgY2FzZXMgKGFuZCBub3QgYmUgZGVwZW5kZW50IHVwb24gCj4gaGFyZHdhcmUtdmly
dHVhbGl6YXRpb24gc3VwcG9ydCkuCj4gCj4gTm93LCBzaW5jZSBQViBpcyBhIHB1cmUgc29mdHdh
cmUtc29sdXRpb24sIEkgd29uZGVyIGlmIGEgY29tbW9uIGNvZGViYXNlIAo+IGlzIHBvc3NpYmxl
IGZvciB4ODYgYW5kIGFybT8KPiBPciB0aGUgZGlmZmVyZW5jZXMgaW4geDg2IGFuZCBhcm0gc3Ry
dWN0dXJlcyB3aWxsIGV2ZW50dWFsbHkgbGVhZCB0byAKPiAoc29tZSkgZGlmZmVyZW5jZXMgaW4g
UFYtY29kZSBmb3IgeDg2IGFuZCBhcm0/CgpBcyBJIHNhaWQgeWVzdGVyZGF5IGluIGFuIGFuc3dl
ciBvbmUgb2YgeW91ciB0aHJlYWQuIFRoZXJlIGFyZSAoYW5kIHdpbGwgCmJlKSBubyBzdXBwb3J0
IG9mIFBWIGd1ZXN0IGluIFhlbiBvbiBBcm0uCgpTbyB0aGVyZSBhcmUgbm8gcG9pbnQgdG8gZGlz
Y3VzcyBhYm91dCBhIHNpbmdsZSBjb2RlYmFzZSBmb3IgdGhhdC4KCkNoZWVycywKCi0tIApKdWxp
ZW4gR3JhbGwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
Ck1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qu
b3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3Mt
ZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Tue Apr 03 10:58:59 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 03 Apr 2018 10:58:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3JeU-0003ZS-Q3; Tue, 03 Apr 2018 10:58:58 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ttb/=gy=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3JeT-0003ZN-Mo
 for minios-devel@lists.xenproject.org; Tue, 03 Apr 2018 10:58:57 +0000
X-Inumbo-ID: eb8ff46a-372d-11e8-9728-bc764e045a96
Received: from mail-wr0-x242.google.com (unknown [2a00:1450:400c:c0c::242])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id eb8ff46a-372d-11e8-9728-bc764e045a96;
 Tue, 03 Apr 2018 12:58:20 +0200 (CEST)
Received: by mail-wr0-x242.google.com with SMTP id s12so7697001wrc.8
 for <minios-devel@lists.xenproject.org>; Tue, 03 Apr 2018 03:58:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=WTQ+O3UQS+zSVQUm2o+xggHGdj9qke9S+a4CSSExE4o=;
 b=FkptdeWlDFoSmpyIJ76zpqFiZ5/1t0E1CjWK+IrVn0R6T3sBOJrmnZOQ/D4QLd5LPa
 fURPzmT8UFmXFgP9HxQ7EofYyM4vJ3gi1N7GkZIMWTJqcTMMqz89Vl3wUhMcsemuVMtA
 rRrKALbNpHPsLo3iQj/STP4ig0dgHbvPMNYuXwBEGCkg2MhqzuncYFdFQPXMx8DQ36hU
 RHyJoifjc4ShsH7Qo4S8/icuObu1VnDAaJRBm3FJjDTepjlfTNfmkVhMCsabQ5mkYmce
 Ge6VRj+Ei6qoPGP4R3p0UpCA30edO9mLGvCg9MbMbtEtTRYEzy5Y/ywqUfV4MOWJud0e
 kxNg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=WTQ+O3UQS+zSVQUm2o+xggHGdj9qke9S+a4CSSExE4o=;
 b=kMLICn1AlSmy+WHEl5kxkrvh+zWyMDcG46lFGbK0TR17pyNGoKNts7MxeSb+He/Gk1
 usXnAov4+n9rYN1ldjmdFW4X9hhA/G6ljt3kD1KvHHk1TcIePAPNu/fY6lFSZR9hF4aT
 kubqWEBxH80RhkRlbWMjEYiHyMknQ0xu4xPHvGW1iuUW1LMXJsYSS4yMtRGJlBOGKm1I
 YxpjDDpxhJXNj+eSpoRMhTxgWGGoB2ektYZZa0invejMGAPd7toZkt0fzuERHv2HYpMh
 Sg5mBJOUUHVKx4J5r+IDuAJfyBKQ67z0AmRh7GizIw06Fydz42FIchODPDJvtmhObIDI
 nmyw==
X-Gm-Message-State: ALQs6tBQjq+iH79ml5fZc+xf+jsbef6j7Hgwysh0clo1VNeOWQj/L7Jr
 T4O4/tovO+hENUCMtKQtszhoYObvCM9JeljCcf4=
X-Google-Smtp-Source: AIpwx4/XWMPxzW2PODmGaqjIamXPhomEqXC5OHfLH2PlL/ECI5YPxehXsA1h9kXpx+o+OowhYFUHzNGzbG+SZCmZT30=
X-Received: by 2002:a19:179b:: with SMTP id
 27-v6mr7728438lfx.143.1522753134440; 
 Tue, 03 Apr 2018 03:58:54 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Tue, 3 Apr 2018 03:58:53 -0700 (PDT)
In-Reply-To: <c6e33298-fcc9-f69f-aaa8-b0891c337fa6@linaro.org>
References: <CAHP4M8Vv1y--nwrh9uODm_0dJ_MNjaNrtyQv+HOfW_-rbupdQw@mail.gmail.com>
 <c6e33298-fcc9-f69f-aaa8-b0891c337fa6@linaro.org>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Tue, 3 Apr 2018 16:28:53 +0530
Message-ID: <CAHP4M8XzPqOuVL5_-C43SZ2FipZVL6Y6SqtudGqF7ih_e37eqA@mail.gmail.com>
To: Julien Grall <julien.grall@linaro.org>
Subject: Re: [Minios-devel] Single codebase for para-virtualized guests on
 x86 and ARM?
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: multipart/mixed; boundary="===============5466967883037581636=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============5466967883037581636==
Content-Type: multipart/alternative; boundary="000000000000a8b5c80568ef9762"

--000000000000a8b5c80568ef9762
Content-Type: text/plain; charset="UTF-8"

Thanks Julien for the crisp reply !! :)

On Tue, Apr 3, 2018 at 4:20 PM, Julien Grall <julien.grall@linaro.org>
wrote:

>
>
> On 03/04/18 11:17, Ajay Garg wrote:
>
>> Hi All.
>>
>
> Hi,
>
> Since last few days, I have been attempting to understand the
>> minios/xen/rumprun/unikraft/x86/arm ecosystem, and (if not wrong) have
>> come to the conclusion that a unikernel run as a PV guest on either of
>> x86/arm would run in all cases (and not be dependent upon
>> hardware-virtualization support).
>>
>> Now, since PV is a pure software-solution, I wonder if a common codebase
>> is possible for x86 and arm?
>> Or the differences in x86 and arm structures will eventually lead to
>> (some) differences in PV-code for x86 and arm?
>>
>
> As I said yesterday in an answer one of your thread. There are (and will
> be) no support of PV guest in Xen on Arm.
>
> So there are no point to discuss about a single codebase for that.
>
> Cheers,
>
> --
> Julien Grall
>



-- 
Regards,
Ajay

--000000000000a8b5c80568ef9762
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Thanks Julien for the crisp reply !! :)<br><div class=3D"g=
mail_extra"><br><div class=3D"gmail_quote">On Tue, Apr 3, 2018 at 4:20 PM, =
Julien Grall <span dir=3D"ltr">&lt;<a href=3D"mailto:julien.grall@linaro.or=
g" target=3D"_blank">julien.grall@linaro.org</a>&gt;</span> wrote:<br><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #cc=
c solid;padding-left:1ex"><br>
<br>
On 03/04/18 11:17, Ajay Garg wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
Hi All.<br>
</blockquote>
<br>
Hi,<span class=3D""><br>
<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
Since last few days, I have been attempting to understand the minios/xen/ru=
mprun/unikraft/x8<wbr>6/arm ecosystem, and (if not wrong) have come to the =
conclusion that a unikernel run as a PV guest on either of x86/arm would ru=
n in all cases (and not be dependent upon hardware-virtualization support).=
<br>
<br>
Now, since PV is a pure software-solution, I wonder if a common codebase is=
 possible for x86 and arm?<br>
Or the differences in x86 and arm structures will eventually lead to (some)=
 differences in PV-code for x86 and arm?<br>
</blockquote>
<br></span>
As I said yesterday in an answer one of your thread. There are (and will be=
) no support of PV guest in Xen on Arm.<br>
<br>
So there are no point to discuss about a single codebase for that.<br>
<br>
Cheers,<span class=3D"HOEnZb"><font color=3D"#888888"><br>
<br>
-- <br>
Julien Grall<br>
</font></span></blockquote></div><br><br clear=3D"all"><br>-- <br><div clas=
s=3D"gmail_signature" data-smartmail=3D"gmail_signature">Regards,<br>Ajay<b=
r></div>
</div></div>

--000000000000a8b5c80568ef9762--


--===============5466967883037581636==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============5466967883037581636==--


From minios-devel-bounces@lists.xenproject.org Tue Apr 03 11:16:47 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 03 Apr 2018 11:16:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3Jvi-0004vC-At; Tue, 03 Apr 2018 11:16:46 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ttb/=gy=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3Jvh-0004v7-8T
 for minios-devel@lists.xenproject.org; Tue, 03 Apr 2018 11:16:45 +0000
X-Inumbo-ID: 684be080-3730-11e8-9728-bc764e045a96
Received: from mail-lf0-x22e.google.com (unknown [2a00:1450:4010:c07::22e])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 684be080-3730-11e8-9728-bc764e045a96;
 Tue, 03 Apr 2018 13:16:09 +0200 (CEST)
Received: by mail-lf0-x22e.google.com with SMTP id t132-v6so19614704lfe.2
 for <minios-devel@lists.xenproject.org>; Tue, 03 Apr 2018 04:16:44 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:from:date:message-id:subject:to;
 bh=L97H30gV5aYFi2x1lTB4x0LvSvMhoXyRj5gzU4qHGTY=;
 b=AXVqtQz02T3jAZXp7vf1pn4mtP7pJnz9nCd9/z+/e6G3e3OlOs5EfkawsJUemGGvz5
 vSB8FSrK72Z/xGpX+v5Cys6+PbqRidBUrxgj6+JWkTFC1wE2I++x0t0syrqKI+gQHqLZ
 NDV2y3ywXYfHDxACEfA7N4TEnkTQkEUjpeGTvW4vV9dBuo5gb8JLxxOzpfkRbawDBP4/
 fHNHGheKWARcgDOjwjNnjnZcja6j6W0qeDnrsT5VfLsFIANq8cGZzC3+LIRDGFDRhu9l
 6TP5gqNf5obeY6vLeEHYxMqRCl0TTba2Dit8RJdJ0J+CXgmSHbmgiGnGerlgTYof6hSR
 yjxQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
 bh=L97H30gV5aYFi2x1lTB4x0LvSvMhoXyRj5gzU4qHGTY=;
 b=XBFSWzvziF1fDkuqOMMVcGPsb/nQyNnGozJSoXvoxu+OuvwSJHJk6mQNGAfP8XJI0M
 gYA/84UQO+A1f3WehJ4KE4Ud4ye5TO0reXMlBB30MTFUjNnsuXvMYr5Kngzj6QY50lZt
 TKJgSng2U1ARSj9WPWMuCnqLMsFPcx1s3R9xUobrXn/bruAbwzqYKJFg6hiEa5rGwy8x
 d+FgX2zkgXiOvzxU9yMQKCZeSS7dlrWcm/q4t8Ie7MffAKnmLwQ+dH/xPzUPf2rsqNRt
 IVntbdn68C7dB/CdhElhiFqoBDY80E8ox9I4IwCZT73bAL8V1xl1CjgV6XecXurODrFm
 Qz3w==
X-Gm-Message-State: ALQs6tDhAC+Bk7xGmjZW4jrHx+JxL9hJ6mknT9jdQOizWjpDdWPYDgXT
 xGK0Z2s5ZCZzgMCnC+1TIORx5Yd0XTR46QqGv+NPQA==
X-Google-Smtp-Source: AIpwx494vCxpiP1D9VYGbK4o1eAvkz3ZQcI2QLKMK8K3FdsA9nDIY3ENANPydsflhgcIyHn5S6VDJzqRNSUgRNQSxTk=
X-Received: by 10.46.153.147 with SMTP id w19mr8383760lji.93.1522754202386;
 Tue, 03 Apr 2018 04:16:42 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Tue, 3 Apr 2018 04:16:41 -0700 (PDT)
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Tue, 3 Apr 2018 16:46:41 +0530
Message-ID: <CAHP4M8Xhau9VS3Mi_7VwYhosP7n5S9brgsrRxfwFj3R8rrDxJg@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: [Minios-devel] Some queries regarding Unikraft on x86/arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============4423856028767157066=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============4423856028767157066==
Content-Type: multipart/alternative; boundary="883d24f229605046c20568efd7b9"

--883d24f229605046c20568efd7b9
Content-Type: text/plain; charset="UTF-8"

Hi All.

It's pretty clear that PV-guests on ARM are not the way to go (neither
there are any plans for support of PV-guests on ARM), primarily because of
the following reasons :

       * Too much complexity in OS code while booting up, and in general.
       * Security issues (Meltdown).

So, rumprun, as of now is unusable for ARM, because rumprun is built with
PV-guests in mind.

So, that leaves us with Unikraft.
So, kindly confirm :

a)
Unikraft (for arm32) is built using HVM mode, and will _only_ work with
processors that have hardware-virtualization enabled, right?

b)
Unikraft (for x86) also uses HVM mode, and works _only_ with processors
that have hardware-virtualization enabled, right?
Or Unikraft works/can-work using PV mode?


I think with the above two resolutions, we can be sure to zero-in on
Unikraft for running unikernels.


Many thanks to everyone who have helped, big thanks to Julien (<
julien.grall@arm.com>) !!


Thanks and Regards,
Ajay

--883d24f229605046c20568efd7b9
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div><div><div><div><div><div><div><div><div><di=
v>Hi All.<br><br></div>I<span class=3D"gmail-gI"><span>t&#39;s pretty clear=
 that PV-guests on ARM are not the way to go (neither there are any plans f=
or support of PV-guests on ARM), primarily because of the following reasons=
 :<br><br></span></span></div><span class=3D"gmail-gI"><span>=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 * Too much complexity in OS code while booting up,=
 and in general.<br></span></span></div><span class=3D"gmail-gI"><span>=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * Security issues (Meltdown).<br><br></sp=
an></span></div><span class=3D"gmail-gI"><span>So, rumprun, as of now is un=
usable for ARM, because rumprun is built with PV-guests in mind.<br><br></s=
pan></span></div><span class=3D"gmail-gI"><span></span></span></div><span c=
lass=3D"gmail-gI"><span>So, that leaves us with Unikraft.<br></span></span>=
<span class=3D"gmail-gI"><span>So, kindly confirm :</span></span><br><span =
class=3D"gmail-gI"><span></span></span></div><span class=3D"gmail-gI"><span=
><br></span></span></div><span class=3D"gmail-gI"><span>a)<br></span></span=
></div><span class=3D"gmail-gI"><span>Unikraft (for arm32) is built using H=
VM mode, and will _only_ work with processors that have hardware-virtualiza=
tion enabled, right?<br><br></span></span></div><span class=3D"gmail-gI"><s=
pan>b)<br></span></span></div><span class=3D"gmail-gI"><span>Unikraft (for =
x86) also uses HVM mode, and works _only_ with processors that have hardwar=
e-virtualization enabled, right?<br></span></span></div><span class=3D"gmai=
l-gI"><span>Or Unikraft works/can-work using PV mode?<br></span></span><div=
><div><div><div><div><div><div><div><div><div><span class=3D"gmail-gI"><spa=
n><br><br>I think with the above two resolutions, we can be sure to zero-in=
 on Unikraft for running unikernels.<br><br><br></span></span></div><div><s=
pan class=3D"gmail-gI"><span>Many thanks to everyone who have helped, big t=
hanks to Julien (<span class=3D"gmail-gI"><span>&lt;<a href=3D"mailto:julie=
n.grall@arm.com">julien.grall@arm.com</a>&gt;</span></span>) !!<br></span><=
/span></div><div><span class=3D"gmail-gI"><span><br clear=3D"all"></span></=
span></div><div><div><div><div><div><br><div class=3D"gmail_signature" data=
-smartmail=3D"gmail_signature">Thanks and Regards,<br>Ajay<br></div>
</div></div></div></div></div></div></div></div></div></div></div></div></d=
iv></div></div>

--883d24f229605046c20568efd7b9--


--===============4423856028767157066==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============4423856028767157066==--


From minios-devel-bounces@lists.xenproject.org Tue Apr 03 17:51:00 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 03 Apr 2018 17:51:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3Q5D-0003Tb-7S; Tue, 03 Apr 2018 17:50:59 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=0tpn=gy=citrix.com=prvs=624464b1e=wei.liu2@srs-us1.protection.inumbo.net>)
 id 1f3Q5C-0003TV-Cg
 for minios-devel@lists.xenproject.org; Tue, 03 Apr 2018 17:50:58 +0000
X-Inumbo-ID: 7a752c74-3767-11e8-9728-bc764e045a96
Received: from SMTP03.CITRIX.COM (unknown [162.221.156.55])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 7a752c74-3767-11e8-9728-bc764e045a96;
 Tue, 03 Apr 2018 19:50:21 +0200 (CEST)
X-IronPort-AV: E=Sophos;i="5.48,402,1517875200"; d="scan'208";a="50552268"
Date: Tue, 3 Apr 2018 18:50:54 +0100
From: Wei Liu <wei.liu2@citrix.com>
To: Bruno Alvisio <bruno.alvisio@gmail.com>
Message-ID: <20180403175053.xpjn7bldr2olktff@citrix.com>
References: <1522166060-32341-1-git-send-email-bruno.alvisio@gmail.com>
 <1522166060-32341-3-git-send-email-bruno.alvisio@gmail.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <1522166060-32341-3-git-send-email-bruno.alvisio@gmail.com>
User-Agent: NeoMutt/20170113 (1.7.2)
Subject: Re: [Minios-devel] [PATCH v3 2/2] Save/Restore Support: Add
 fini_shutdown call to app exit flow.
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, samuel.thibault@ens-lyon.org,
 wei.liu2@citrix.com, jgross@suse.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVHVlLCBNYXIgMjcsIDIwMTggYXQgMDg6NTQ6MjBBTSAtMDcwMCwgQnJ1bm8gQWx2aXNpbyB3
cm90ZToKPiBJbnN0ZWFkIG9mIGNhbGxpbmcga2VybmVsX3NodXRkb3duKCkgaW4gdGhlIGV4aXQg
ZmxvdywgYSBjYWxsIHRvIGZpbmlfc2h1dGRvd24oKQo+IGlzIGFkZGVkIHRvIHRoZSBleGlzdGlu
ZyBleGl0IGZsb3cuCj4gCj4ga2VybmVsX3NodXRkb3duKCkgaXMgcmVtb3ZlZCBzaW5jZSBpdCBp
cyBub3QgdXNlZCBpbiBhbnkgcGFydCBvZiBtaW5pLU9TLgo+IAo+IFNpZ25lZC1vZmYtYnk6IEJy
dW5vIEFsdmlzaW8gPGJydW5vLmFsdmlzaW9AZ21haWwuY29tPgoKSSBiZWxpZXZlIHlvdXIgbG90
IG9mIHBhdGNoZXMgaGFzIGF0IGxlYXN0IGEgdXNlLWFmdGVyLWZyZWUgYnVnLCB3aGljaApjYXVz
ZXMgc3R1YmRvbSB0byBmYWlsLgoKU2VlOgoKaHR0cDovL2xvZ3MudGVzdC1sYWIueGVucHJvamVj
dC5vcmcvb3NzdGVzdC9sb2dzLzEyMTcyMS90ZXN0LWFtZDY0LWFtZDY0LXhsLXFlbXV0LXN0dWJk
b20tZGViaWFuaHZtLWFtZDY0LXhzbS9lbGJsaW5nMC0tLXZhci1sb2cteGVuLXFlbXUtZG0tZGVi
aWFuaHZtLmd1ZXN0Lm9zc3Rlc3QubG9nCgpXZWkuCgpfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1k
ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21h
aWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 02:34:26 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 02:34:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3YFk-0004Pr-EL; Wed, 04 Apr 2018 02:34:24 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=lmys=gz=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f3YFi-0004Pm-SW
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 02:34:23 +0000
X-Inumbo-ID: 97add050-37b0-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::617])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 97add050-37b0-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 04:33:44 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=wqvDTeRgipvBV02qA8vtMUrxyZ3DhtlUgqvu4ttw4wQ=;
 b=PhOPdB6vp1jI5weGglazb29pdB0InUMPbKL9WgBBTJxfCqJe60CNo4JjFjJgzNR8DY8dzzC5x0pmIaq6olYyP2DyK+VIzsJRvi5DKQMpwYyaARRIbeKCTUT/w3V7A6zXssuup657lNkizrA6ndnQzlkpalXra4Ov4MQ5k5zt8+c=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0187.eurprd08.prod.outlook.com (10.161.60.21) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.631.10; Wed, 4 Apr 2018 02:34:11 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0631.013; Wed, 4 Apr 2018
 02:34:11 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Ajay Garg <ajaygargnsit@gmail.com>, "minios-devel@lists.xenproject.org"
 <minios-devel@lists.xenproject.org>
Thread-Topic: [Minios-devel] Some queries regarding Unikraft on x86/arm
Thread-Index: AQHTyz1HRbje8xmj40SLzyr9iF5IWqPv3rKA
Date: Wed, 4 Apr 2018 02:34:11 +0000
Message-ID: <DB3PR08MB010781EFD85A6B572FE1428D9EA40@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <CAHP4M8Xhau9VS3Mi_7VwYhosP7n5S9brgsrRxfwFj3R8rrDxJg@mail.gmail.com>
In-Reply-To: <CAHP4M8Xhau9VS3Mi_7VwYhosP7n5S9brgsrRxfwFj3R8rrDxJg@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0187;
 7:qOZmlsMyGx9OHb0AFXrm3n65P88t0kR84e3qgIWhqlanFOhPBVQ0xap+1b+QeiWtUK+D8BmEK8Dr4rtlTkIloxWkFhZ+i1wB2QLCp6K740zNd4XJ01RTgphqX4YpO8fH1CVX0Sb5R5RM6Tiadh91J0bZUXjlNENty3BnyKER+32lDkaKYmmQXT5s7zoIJJQg3ERHCDhagZ3mXsYIFdNor6/GB12+eghADaTghHTBukK4mbA8azwHwyeQmuPRL00D
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: f0ced236-b01f-43a6-3221-08d599d48cd8
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0187; 
x-ms-traffictypediagnostic: DB3PR08MB0187:
x-microsoft-antispam-prvs: <DB3PR08MB01873B688BA06F80F517CEC39EA40@DB3PR08MB0187.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(28532068793085)(180628864354917)(192374486261705)(58134797142442)(21748063052155);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231221)(944501327)(52105095)(3002001)(93006095)(93001095)(10201501046)(6055026)(6041310)(20161123562045)(20161123558120)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:DB3PR08MB0187; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0187; 
x-forefront-prvs: 0632519F33
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(396003)(39860400002)(376002)(346002)(366004)(39380400002)(54164003)(199004)(40434004)(53754006)(189003)(39060400002)(33656002)(9326002)(9686003)(6306002)(54896002)(8936002)(53946003)(53936002)(2906002)(478600001)(72206003)(68736007)(8676002)(14454004)(81166006)(6116002)(3846002)(105586002)(2501003)(81156014)(5250100002)(486006)(7736002)(3280700002)(790700001)(55016002)(97736004)(5890100001)(6436002)(236005)(3660700001)(74316002)(99286004)(66066001)(316002)(26005)(229853002)(4326008)(6246003)(76176011)(7696005)(86362001)(11346002)(476003)(53546011)(186003)(2900100001)(55236004)(446003)(110136005)(106356001)(25786009)(102836004)(5660300001)(6506007)(59450400001)(579004);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0187;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; A:1; MX:1; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: Rd7bkSNdvr7vAbk1I1pkvYyWi6TJDvRArlm5CjGAxFlSYcT8F0lz7/GbKyN9RVrAEhThXZ52efW7X5w2H7Kk5h/86utOsl7RlU3uHGDVXoKoBkDATzI2wZK8O5GBYog3RMpMZay61zsaVPMfmEZ0+0qTl6HKVIY1KbZ+b0Xs7+E6HjGCjyrQ0p9rvb2/zICu8ltlmKQujstrHN5GxYQiQn6IEQB2YfkBKRU1uScFdAygg3GuFHIwBZ4mf2JFdHVtkOT11QhX2Mjeo755222mnydPnj2+GiTtE7sUqE7r8N4whWb1DA4GIVmL1U89vyxZ4EaRTNH9T6rReiRg+5PIHkELPGkBgmbc3D6rvGLAVPjHauxSOmZy9TOSCw5T5xOLlvmeRGmKpvdoaUoK0v9izCntBBmgD1jkBw/x7jhuVf0=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f0ced236-b01f-43a6-3221-08d599d48cd8
X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Apr 2018 02:34:11.7263 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0187
Subject: Re: [Minios-devel] Some queries regarding Unikraft on x86/arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "Simon Kuenzer \(simon.kuenzer@neclab.eu\)" <simon.kuenzer@neclab.eu>
Content-Type: multipart/mixed; boundary="===============0731193938414213082=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============0731193938414213082==
Content-Language: en-US
Content-Type: multipart/alternative;
	boundary="_000_DB3PR08MB010781EFD85A6B572FE1428D9EA40DB3PR08MB0107eurp_"

--_000_DB3PR08MB010781EFD85A6B572FE1428D9EA40DB3PR08MB0107eurp_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGkgQWpheSwNCg0KPiAgYSkgVW5pa3JhZnQgKGZvciBhcm0zMikgaXMgYnVpbHQgdXNpbmcgSFZN
IG1vZGUsIGFuZCB3aWxsIF9vbmx5XyB3b3JrIHdpdGggcHJvY2Vzc29ycyB0aGF0IGhhdmUgaGFy
ZHdhcmUtdmlydHVhbGl6YXRpb24gZW5hYmxlZCwgcmlnaHQ/DQoNClllcywgdGhhdOKAmXMgcmln
aHQuIEN1cnJlbnRseSwgZm9yIGFybTMyLXVuaWtyYWZ0LCB3ZSBwbGFuIHRvIHN1cHBvcnQgWGVu
IGFuZCBMaW51eC9LVk0uDQpCb3RoIG9mIHRoZW0gbmVlZCBoYXJkd2FyZSB2aXJ0dWFsaXphdGlv
biBlbmFibGVkIHByb2Nlc3NvcnMuDQoNCj4gYikgVW5pa3JhZnQgKGZvciB4ODYpIGFsc28gdXNl
cyBIVk0gbW9kZSwgYW5kIHdvcmtzIF9vbmx5XyB3aXRoIHByb2Nlc3NvcnMgdGhhdCBoYXZlIGhh
cmR3YXJlLXZpcnR1YWxpemF0aW9uIGVuYWJsZWQsIHJpZ2h0Pw0KPiBPciBVbmlrcmFmdCB3b3Jr
cy9jYW4td29yayB1c2luZyBQViBtb2RlPw0KDQpVbmlrcmFmdC14ODYgb2YgS1ZNIHBsYXRmb3Jt
IHVzZXMgSFZNIG1vZGUsIGl0IHNob3VsZCByZXF1aXJlIGhhcmR3YXJlIHZpcnR1YWxpemF0aW9u
DQplbmFibGVkIHByb2Nlc3NvcnMuIEJ1dCBpdCBzZWVtcyB0aGUgVW5pa3JhZnQteDg2IG9mIFhl
biBwbGF0Zm9ybSBpcyB1c2luZyBQVi1tb2RlLg0KSSBhbSBub3Qgc3VyZSBhYm91dCBpdCwgYnV0
IEkgdGhpbmsgU2ltb24gY291bGQgZ2l2ZSB5b3UgYSBjbGVhciBhbnN3ZXIuDQoNClJlZ2FyZHMs
DQpXZWkgQ2hlbg0KDQpGcm9tOiBNaW5pb3MtZGV2ZWwgPG1pbmlvcy1kZXZlbC1ib3VuY2VzQGxp
c3RzLnhlbnByb2plY3Qub3JnPiBPbiBCZWhhbGYgT2YgQWpheSBHYXJnDQpTZW50OiAyMDE45bm0
NOaciDPml6UgMTk6MTcNClRvOiBtaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcNClN1
YmplY3Q6IFtNaW5pb3MtZGV2ZWxdIFNvbWUgcXVlcmllcyByZWdhcmRpbmcgVW5pa3JhZnQgb24g
eDg2L2FybQ0KDQpIaSBBbGwuDQpJdCdzIHByZXR0eSBjbGVhciB0aGF0IFBWLWd1ZXN0cyBvbiBB
Uk0gYXJlIG5vdCB0aGUgd2F5IHRvIGdvIChuZWl0aGVyIHRoZXJlIGFyZSBhbnkgcGxhbnMgZm9y
IHN1cHBvcnQgb2YgUFYtZ3Vlc3RzIG9uIEFSTSksIHByaW1hcmlseSBiZWNhdXNlIG9mIHRoZSBm
b2xsb3dpbmcgcmVhc29ucyA6DQogICAgICAgKiBUb28gbXVjaCBjb21wbGV4aXR5IGluIE9TIGNv
ZGUgd2hpbGUgYm9vdGluZyB1cCwgYW5kIGluIGdlbmVyYWwuDQogICAgICAgKiBTZWN1cml0eSBp
c3N1ZXMgKE1lbHRkb3duKS4NClNvLCBydW1wcnVuLCBhcyBvZiBub3cgaXMgdW51c2FibGUgZm9y
IEFSTSwgYmVjYXVzZSBydW1wcnVuIGlzIGJ1aWx0IHdpdGggUFYtZ3Vlc3RzIGluIG1pbmQuDQpT
bywgdGhhdCBsZWF2ZXMgdXMgd2l0aCBVbmlrcmFmdC4NClNvLCBraW5kbHkgY29uZmlybSA6DQoN
CmEpDQpVbmlrcmFmdCAoZm9yIGFybTMyKSBpcyBidWlsdCB1c2luZyBIVk0gbW9kZSwgYW5kIHdp
bGwgX29ubHlfIHdvcmsgd2l0aCBwcm9jZXNzb3JzIHRoYXQgaGF2ZSBoYXJkd2FyZS12aXJ0dWFs
aXphdGlvbiBlbmFibGVkLCByaWdodD8NCmIpDQpVbmlrcmFmdCAoZm9yIHg4NikgYWxzbyB1c2Vz
IEhWTSBtb2RlLCBhbmQgd29ya3MgX29ubHlfIHdpdGggcHJvY2Vzc29ycyB0aGF0IGhhdmUgaGFy
ZHdhcmUtdmlydHVhbGl6YXRpb24gZW5hYmxlZCwgcmlnaHQ/DQpPciBVbmlrcmFmdCB3b3Jrcy9j
YW4td29yayB1c2luZyBQViBtb2RlPw0KDQoNCkkgdGhpbmsgd2l0aCB0aGUgYWJvdmUgdHdvIHJl
c29sdXRpb25zLCB3ZSBjYW4gYmUgc3VyZSB0byB6ZXJvLWluIG9uIFVuaWtyYWZ0IGZvciBydW5u
aW5nIHVuaWtlcm5lbHMuDQoNCk1hbnkgdGhhbmtzIHRvIGV2ZXJ5b25lIHdobyBoYXZlIGhlbHBl
ZCwgYmlnIHRoYW5rcyB0byBKdWxpZW4gKDxqdWxpZW4uZ3JhbGxAYXJtLmNvbTxtYWlsdG86anVs
aWVuLmdyYWxsQGFybS5jb20+PikgISENCg0KDQpUaGFua3MgYW5kIFJlZ2FyZHMsDQpBamF5DQpJ
TVBPUlRBTlQgTk9USUNFOiBUaGUgY29udGVudHMgb2YgdGhpcyBlbWFpbCBhbmQgYW55IGF0dGFj
aG1lbnRzIGFyZSBjb25maWRlbnRpYWwgYW5kIG1heSBhbHNvIGJlIHByaXZpbGVnZWQuIElmIHlv
dSBhcmUgbm90IHRoZSBpbnRlbmRlZCByZWNpcGllbnQsIHBsZWFzZSBub3RpZnkgdGhlIHNlbmRl
ciBpbW1lZGlhdGVseSBhbmQgZG8gbm90IGRpc2Nsb3NlIHRoZSBjb250ZW50cyB0byBhbnkgb3Ro
ZXIgcGVyc29uLCB1c2UgaXQgZm9yIGFueSBwdXJwb3NlLCBvciBzdG9yZSBvciBjb3B5IHRoZSBp
bmZvcm1hdGlvbiBpbiBhbnkgbWVkaXVtLiBUaGFuayB5b3UuDQo=

--_000_DB3PR08MB010781EFD85A6B572FE1428D9EA40DB3PR08MB0107eurp_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IlByb2dJZCIg
Y29udGVudD0iV29yZC5Eb2N1bWVudCI+DQo8bWV0YSBuYW1lPSJHZW5lcmF0b3IiIGNvbnRlbnQ9
Ik1pY3Jvc29mdCBXb3JkIDE1Ij4NCjxtZXRhIG5hbWU9Ik9yaWdpbmF0b3IiIGNvbnRlbnQ9Ik1p
Y3Jvc29mdCBXb3JkIDE1Ij4NCjxsaW5rIHJlbD0iRmlsZS1MaXN0IiBocmVmPSJjaWQ6ZmlsZWxp
c3QueG1sQDAxRDNDQzAwLjc2OUJCQUEwIj48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOk9m
ZmljZURvY3VtZW50U2V0dGluZ3M+DQo8bzpBbGxvd1BORy8+DQo8L286T2ZmaWNlRG9jdW1lbnRT
ZXR0aW5ncz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPHc6
V29yZERvY3VtZW50Pg0KPHc6U3BlbGxpbmdTdGF0ZT5DbGVhbjwvdzpTcGVsbGluZ1N0YXRlPg0K
PHc6RG9jdW1lbnRLaW5kPkRvY3VtZW50RW1haWw8L3c6RG9jdW1lbnRLaW5kPg0KPHc6VHJhY2tN
b3Zlcy8+DQo8dzpUcmFja0Zvcm1hdHRpbmcvPg0KPHc6RW52ZWxvcGVWaXMvPg0KPHc6VmFsaWRh
dGVBZ2FpbnN0U2NoZW1hcy8+DQo8dzpTYXZlSWZYTUxJbnZhbGlkPmZhbHNlPC93OlNhdmVJZlhN
TEludmFsaWQ+DQo8dzpJZ25vcmVNaXhlZENvbnRlbnQ+ZmFsc2U8L3c6SWdub3JlTWl4ZWRDb250
ZW50Pg0KPHc6QWx3YXlzU2hvd1BsYWNlaG9sZGVyVGV4dD5mYWxzZTwvdzpBbHdheXNTaG93UGxh
Y2Vob2xkZXJUZXh0Pg0KPHc6RG9Ob3RQcm9tb3RlUUYvPg0KPHc6TGlkVGhlbWVPdGhlcj5FTi1V
UzwvdzpMaWRUaGVtZU90aGVyPg0KPHc6TGlkVGhlbWVBc2lhbj5aSC1DTjwvdzpMaWRUaGVtZUFz
aWFuPg0KPHc6TGlkVGhlbWVDb21wbGV4U2NyaXB0PlgtTk9ORTwvdzpMaWRUaGVtZUNvbXBsZXhT
Y3JpcHQ+DQo8dzpDb21wYXRpYmlsaXR5Pg0KPHc6RG9Ob3RFeHBhbmRTaGlmdFJldHVybi8+DQo8
dzpCcmVha1dyYXBwZWRUYWJsZXMvPg0KPHc6U3BsaXRQZ0JyZWFrQW5kUGFyYU1hcmsvPg0KPHc6
RW5hYmxlT3BlblR5cGVLZXJuaW5nLz4NCjx3OlVzZUZFTGF5b3V0Lz4NCjwvdzpDb21wYXRpYmls
aXR5Pg0KPG06bWF0aFByPg0KPG06bWF0aEZvbnQgbTp2YWw9IkNhbWJyaWEgTWF0aCIvPg0KPG06
YnJrQmluIG06dmFsPSJiZWZvcmUiLz4NCjxtOmJya0JpblN1YiBtOnZhbD0iJiM0NTstIi8+DQo8
bTpzbWFsbEZyYWMgbTp2YWw9Im9mZiIvPg0KPG06ZGlzcERlZi8+DQo8bTpsTWFyZ2luIG06dmFs
PSIwIi8+DQo8bTpyTWFyZ2luIG06dmFsPSIwIi8+DQo8bTpkZWZKYyBtOnZhbD0iY2VudGVyR3Jv
dXAiLz4NCjxtOndyYXBJbmRlbnQgbTp2YWw9IjE0NDAiLz4NCjxtOmludExpbSBtOnZhbD0ic3Vi
U3VwIi8+DQo8bTpuYXJ5TGltIG06dmFsPSJ1bmRPdnIiLz4NCjwvbTptYXRoUHI+PC93OldvcmRE
b2N1bWVudD4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPHc6
TGF0ZW50U3R5bGVzIERlZkxvY2tlZFN0YXRlPSJmYWxzZSIgRGVmVW5oaWRlV2hlblVzZWQ9ImZh
bHNlIiBEZWZTZW1pSGlkZGVuPSJmYWxzZSIgRGVmUUZvcm1hdD0iZmFsc2UiIERlZlByaW9yaXR5
PSI5OSIgTGF0ZW50U3R5bGVDb3VudD0iMzc1Ij4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iMCIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iTm9ybWFsIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFFGb3JtYXQ9InRydWUiIE5hbWU9
ImhlYWRpbmcgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIg
TmFtZT0iaGVhZGluZyAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0
cnVlIiBOYW1lPSJoZWFkaW5nIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIFFGb3Jt
YXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
UUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0
cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgNyIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA4Ii8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDkiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iaW5kZXggMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCAy
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0i
aW5kZXggNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRy
dWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCA1Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUi
IE5hbWU9ImluZGV4IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iaW5kZXggNyIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJpbmRleCA4Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IDkiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2MgMSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9InRvYyAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0idG9jIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iMzkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2Mg
NCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9InRvYyA1Ii8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idG9jIDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJ0b2MgNyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSIzOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9
InRvYyA4Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBT
ZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idG9jIDkiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iTm9ybWFsIEluZGVudCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJm
b290bm90ZSB0ZXh0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRl
bj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImFubm90YXRpb24gdGV4dCIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBOYW1lPSJoZWFkZXIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iZm9vdGVy
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IGhlYWRpbmciLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzUiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJjYXB0aW9uIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9InRhYmxlIG9mIGZpZ3VyZXMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iZW52ZWxv
cGUgYWRkcmVzcyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJlbnZlbG9wZSByZXR1cm4iLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iZm9vdG5vdGUgcmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9ImFubm90YXRpb24gcmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImxpbmUgbnVt
YmVyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIg
VW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9InBhZ2UgbnVtYmVyIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUi
IE5hbWU9ImVuZG5vdGUgcmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImVuZG5vdGUg
dGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0YWJsZSBvZiBhdXRob3JpdGllcyIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5V
c2VkPSJ0cnVlIiBOYW1lPSJtYWNybyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2EgaGVhZGlu
ZyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxp
c3QgQnVsbGV0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgTnVtYmVyIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9Ikxpc3QgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IDMiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IEJ1bGxldCAyIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ikxpc3QgQnVsbGV0IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBCdWxsZXQgNCIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IEJ1bGxldCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ikxpc3QgTnVtYmVyIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBOdW1iZXIgMyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IE51bWJlciA0Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ikxpc3QgTnVtYmVyIDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iMTAiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlRpdGxlIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9IkNsb3NpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVu
PSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iU2lnbmF0dXJlIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjEiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJEZWZhdWx0IFBhcmFncmFwaCBGb250Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRl
eHQgSW5kZW50Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgQ29udGludWUiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgTmFtZT0iTGlzdCBDb250aW51ZSAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxp
c3QgQ29udGludWUgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IENvbnRpbnVlIDQiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBDb250aW51ZSA1Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ik1lc3NhZ2UgSGVhZGVyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjExIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJTdWJ0aXRsZSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJTYWx1dGF0aW9uIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkRhdGUiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgTmFtZT0iQm9keSBUZXh0IEZpcnN0IEluZGVudCIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBO
YW1lPSJCb2R5IFRleHQgRmlyc3QgSW5kZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTm90
ZSBIZWFkaW5nIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4dCAyIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9IkJvZHkgVGV4dCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4
dCBJbmRlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRleHQgSW5kZW50IDMiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iQmxvY2sgVGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJI
eXBlcmxpbmsiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iRm9sbG93ZWRIeXBlcmxpbmsiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjIiIFFGb3JtYXQ9InRydWUi
IE5hbWU9IlN0cm9uZyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSIyMCIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iRW1waGFzaXMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFt
ZT0iRG9jdW1lbnQgTWFwIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlBsYWluIFRleHQiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iRS1tYWlsIFNpZ25hdHVyZSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJIVE1MIFRvcCBvZiBGb3JtIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkhUTUwgQm90dG9tIG9m
IEZvcm0iLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTm9ybWFsIChXZWIpIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9IkhUTUwgQWNyb255bSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIEFkZHJl
c3MiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBDaXRlIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9IkhUTUwgQ29kZSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIERlZmluaXRpb24iLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBLZXlib2FyZCIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJIVE1MIFByZWZvcm1hdHRlZCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIFNhbXBsZSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIFR5cGV3cml0ZXIiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iSFRNTCBWYXJpYWJsZSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJOb3JtYWwgVGFibGUi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhp
ZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iYW5ub3RhdGlvbiBzdWJqZWN0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9Ik5vIExpc3QiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iT3V0bGluZSBMaXN0IDEi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhp
ZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iT3V0bGluZSBMaXN0IDIiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iT3V0bGluZSBMaXN0IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBT
ZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgU2ltcGxl
IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgU2ltcGxlIDIiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0iVGFibGUgU2ltcGxlIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ2xh
c3NpYyAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1
ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENsYXNzaWMgMiIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJUYWJsZSBDbGFzc2ljIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFi
bGUgQ2xhc3NpYyA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRl
bj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENvbG9yZnVsIDEiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ29sb3JmdWwgMiIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBO
YW1lPSJUYWJsZSBDb2xvcmZ1bCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENvbHVt
bnMgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBDb2x1bW5zIDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgQ29sdW1ucyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxl
IENvbHVtbnMgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBDb2x1bW5zIDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRh
YmxlIEdyaWQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBHcmlkIDMiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxl
IEdyaWQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRy
dWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBHcmlkIDYiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCA3Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIEdy
aWQgOCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0IDEiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0iVGFibGUgTGlzdCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIExpc3Qg
MyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0IDQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iVGFibGUgTGlzdCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIExpc3QgNiIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0IDciLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFt
ZT0iVGFibGUgTGlzdCA4Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIDNEIGVmZmVjdHMg
MSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSAzRCBlZmZlY3RzIDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgM0QgZWZmZWN0cyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRh
YmxlIENvbnRlbXBvcmFyeSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlI
aWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBFbGVnYW50Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIFByb2Zlc3Npb25hbCIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJUYWJsZSBTdWJ0bGUgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBTdWJ0
bGUgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBXZWIgMSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJUYWJsZSBXZWIgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBXZWIgMyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCYWxsb29uIFRleHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9IlRhYmxlIEdyaWQiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgVGhlbWUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBOYW1lPSJQbGFjZWhvbGRlciBUZXh0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjEiIFFGb3JtYXQ9InRydWUiIE5hbWU9Ik5v
IFNwYWNpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAi
IE5hbWU9IkxpZ2h0IFNoYWRpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iNjEiIE5hbWU9IkxpZ2h0IExpc3QiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdyaWQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIE5hbWU9Ik1lZGl1
bSBTaGFkaW5nIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjUiIE5hbWU9Ik1lZGl1bSBMaXN0IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iNjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIE5hbWU9Ik1lZGl1bSBHcmlkIDEiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1bSBHcmlk
IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIE5hbWU9
Ik1lZGl1bSBHcmlkIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI3MSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgTmFtZT0iQ29sb3JmdWwgTGlzdCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwg
R3JpZCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgTmFt
ZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI2MSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgMSIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBBY2Nl
bnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgTmFt
ZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI2NCIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgMSIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVkaXVt
IExpc3QgMSBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlI
aWRkZW49InRydWUiIE5hbWU9IlJldmlzaW9uIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjM0IiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJMaXN0IFBhcmFncmFwaCIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIyOSIgUUZvcm1hdD0i
dHJ1ZSIgTmFtZT0iUXVvdGUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iMzAiIFFGb3JtYXQ9InRydWUiIE5hbWU9IkludGVuc2UgUXVvdGUiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIg
QWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjci
IE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDEiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIE5hbWU9Ik1lZGl1bSBH
cmlkIDMgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgMSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgTmFtZT0iQ29s
b3JmdWwgTGlzdCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgTmFtZT0iTGlnaHQgU2hhZGluZyBBY2Nl
bnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgTmFt
ZT0iTGlnaHQgTGlzdCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBB
Y2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIg
TmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVkaXVtIExpc3QgMSBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgTmFtZT0iTWVkaXVt
IExpc3QgMiBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI2NyIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQg
MiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgTmFtZT0i
TWVkaXVtIEdyaWQgMyBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI3MCIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFj
Y2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBO
YW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjczIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCAyIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYwIiBOYW1lPSJMaWdodCBTaGFk
aW5nIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjYxIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBOYW1lPSJMaWdodCBHcmlkIEFjY2VudCAzIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBOYW1lPSJNZWRpdW0gU2hh
ZGluZyAxIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjY0IiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBOYW1lPSJNZWRpdW0gTGlzdCAxIEFjY2Vu
dCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBOYW1l
PSJNZWRpdW0gTGlzdCAyIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjY3IiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCAzIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBOYW1lPSJNZWRpdW0gR3JpZCAy
IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5
IiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDMiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIE5hbWU9IkNvbG9yZnVsIFNo
YWRpbmcgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzIiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDMi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIE5hbWU9Ikxp
Z2h0IFNoYWRpbmcgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iNjEiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDQi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIE5hbWU9Ik1l
ZGl1bSBTaGFkaW5nIDEgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iNjQiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDQiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIE5hbWU9Ik1lZGl1bSBMaXN0
IDEgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDQiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1
bSBHcmlkIDIgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNjkiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgNCIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgTmFtZT0iQ29s
b3JmdWwgU2hhZGluZyBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI3MiIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgNCIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwgR3JpZCBB
Y2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIg
TmFtZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI2MSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBB
Y2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIg
TmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVk
aXVtIExpc3QgMSBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI2NiIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2Nl
bnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgTmFt
ZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI2OSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgTmFtZT0iRGFyayBMaXN0IEFj
Y2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBO
YW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCA1Ii8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBOYW1lPSJDb2xvcmZ1
bCBHcmlkIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjYwIiBOYW1lPSJMaWdodCBTaGFkaW5nIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYxIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCA2Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBOYW1lPSJMaWdo
dCBHcmlkIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjYzIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAxIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY0IiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFj
Y2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBO
YW1lPSJNZWRpdW0gTGlzdCAxIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjY2IiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCA2Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBOYW1lPSJNZWRpdW0gR3Jp
ZCAxIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjY4IiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCA2Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBOYW1lPSJEYXJr
IExpc3QgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzEiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50
IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIE5hbWU9
IkNvbG9yZnVsIEdyaWQgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iMTkiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlN1YnRsZSBFbXBoYXNpcyIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIyMSIgUUZvcm1hdD0idHJ1
ZSIgTmFtZT0iSW50ZW5zZSBFbXBoYXNpcyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSIzMSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iU3VidGxlIFJlZmVyZW5jZSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzMiIgUUZvcm1hdD0i
dHJ1ZSIgTmFtZT0iSW50ZW5zZSBSZWZlcmVuY2UiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iMzMiIFFGb3JtYXQ9InRydWUiIE5hbWU9IkJvb2sgVGl0bGUiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzciIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCaWJsaW9ncmFwaHkiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJUT0MgSGVhZGluZyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0MSIgTmFtZT0iUGxh
aW4gVGFibGUgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0
MiIgTmFtZT0iUGxhaW4gVGFibGUgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI0MyIgTmFtZT0iUGxhaW4gVGFibGUgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NCIgTmFtZT0iUGxhaW4gVGFibGUgNCIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NSIgTmFtZT0iUGxhaW4gVGFibGUg
NSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0MCIgTmFtZT0i
R3JpZCBUYWJsZSBMaWdodCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI0NiIgTmFtZT0iR3JpZCBUYWJsZSAxIExpZ2h0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFibGUgMyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iR3Jp
ZCBUYWJsZSA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUw
IiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iR3JpZCBUYWJsZSA2IENvbG9yZnVsIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcg
Q29sb3JmdWwiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYi
IE5hbWU9IkdyaWQgVGFibGUgMSBMaWdodCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIEFjY2VudCAxIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlk
IFRhYmxlIDMgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNDkiIE5hbWU9IkdyaWQgVGFibGUgNCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsgQWNj
ZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5h
bWU9IkdyaWQgVGFibGUgNiBDb2xvcmZ1bCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJsZSA3IENvbG9yZnVsIEFj
Y2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBO
YW1lPSJHcmlkIFRhYmxlIDEgTGlnaHQgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDciIE5hbWU9IkdyaWQgVGFibGUgMiBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iR3JpZCBU
YWJsZSAzIEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjQ5IiBOYW1lPSJHcmlkIFRhYmxlIDQgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9IkdyaWQgVGFibGUgNSBEYXJrIEFjY2Vu
dCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1l
PSJHcmlkIFRhYmxlIDYgQ29sb3JmdWwgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9IkdyaWQgVGFibGUgNyBDb2xvcmZ1bCBBY2Nl
bnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFt
ZT0iR3JpZCBUYWJsZSAxIExpZ2h0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIgQWNjZW50IDMiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFi
bGUgMyBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI0OSIgTmFtZT0iR3JpZCBUYWJsZSA0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUwIiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayBBY2NlbnQg
MyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0i
R3JpZCBUYWJsZSA2IENvbG9yZnVsIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50
IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9
IkdyaWQgVGFibGUgMSBMaWdodCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIEFjY2VudCA0Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlkIFRhYmxl
IDMgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NDkiIE5hbWU9IkdyaWQgVGFibGUgNCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsgQWNjZW50IDQi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikdy
aWQgVGFibGUgNiBDb2xvcmZ1bCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCA0
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJH
cmlkIFRhYmxlIDEgTGlnaHQgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNDciIE5hbWU9IkdyaWQgVGFibGUgMiBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iR3JpZCBUYWJsZSAz
IEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5
IiBOYW1lPSJHcmlkIFRhYmxlIDQgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9IkdyaWQgVGFibGUgNSBEYXJrIEFjY2VudCA1Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJHcmlk
IFRhYmxlIDYgQ29sb3JmdWwgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9IkdyaWQgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iR3Jp
ZCBUYWJsZSAxIExpZ2h0IEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIgQWNjZW50IDYiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFibGUgMyBB
Y2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIg
TmFtZT0iR3JpZCBUYWJsZSA0IEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjUwIiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayBBY2NlbnQgNiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iR3JpZCBU
YWJsZSA2IENvbG9yZnVsIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDYiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3Qg
VGFibGUgMSBMaWdodCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI0NyIgTmFtZT0iTGlzdCBUYWJsZSAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFibGUgNCIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iTGlzdCBUYWJsZSA1
IERhcmsiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5h
bWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1bCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJMaXN0IFRhYmxlIDEg
TGlnaHQgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNDciIE5hbWU9Ikxpc3QgVGFibGUgMiBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIEFjY2VudCAxIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0
IFRhYmxlIDQgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNTAiIE5hbWU9Ikxpc3QgVGFibGUgNSBEYXJrIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29s
b3JmdWwgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNTIiIE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgMSIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iTGlzdCBUYWJsZSAxIExp
Z2h0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjQ3IiBOYW1lPSJMaXN0IFRhYmxlIDIgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikxpc3QgVGFibGUgMyBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iTGlzdCBU
YWJsZSA0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjUwIiBOYW1lPSJMaXN0IFRhYmxlIDUgRGFyayBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iTGlzdCBUYWJsZSA2IENvbG9y
ZnVsIEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjUyIiBOYW1lPSJMaXN0IFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3QgVGFibGUgMSBMaWdo
dCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0
NyIgTmFtZT0iTGlzdCBUYWJsZSAyIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMgQWNjZW50IDMiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFi
bGUgNCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI1MCIgTmFtZT0iTGlzdCBUYWJsZSA1IERhcmsgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1
bCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1
MiIgTmFtZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJMaXN0IFRhYmxlIDEgTGlnaHQg
QWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDci
IE5hbWU9Ikxpc3QgVGFibGUgMiBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIEFjY2VudCA0Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0IFRhYmxl
IDQgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NTAiIE5hbWU9Ikxpc3QgVGFibGUgNSBEYXJrIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29sb3JmdWwg
QWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIi
IE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iTGlzdCBUYWJsZSAxIExpZ2h0IEFj
Y2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBO
YW1lPSJMaXN0IFRhYmxlIDIgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikxpc3QgVGFibGUgMyBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iTGlzdCBUYWJsZSA0
IEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUw
IiBOYW1lPSJMaXN0IFRhYmxlIDUgRGFyayBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iTGlzdCBUYWJsZSA2IENvbG9yZnVsIEFj
Y2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBO
YW1lPSJMaXN0IFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3QgVGFibGUgMSBMaWdodCBBY2Nl
bnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFt
ZT0iTGlzdCBUYWJsZSAyIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMgQWNjZW50IDYiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFibGUgNCBB
Y2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIg
TmFtZT0iTGlzdCBUYWJsZSA1IERhcmsgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1bCBBY2Nl
bnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFt
ZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9
Ik1lbnRpb24iLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iU21hcnQgSHlwZXJsaW5rIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9Ikhhc2h0YWciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVW5yZXNvbHZl
ZCBNZW50aW9uIi8+DQo8L3c6TGF0ZW50U3R5bGVzPg0KPC94bWw+PCFbZW5kaWZdLS0+PHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDsNCgltc28tZm9u
dC1hbHQ6IkNhbGlzdG8gTVQiOw0KCW1zby1mb250LWNoYXJzZXQ6MDsNCgltc28tZ2VuZXJpYy1m
b250LWZhbWlseTpyb21hbjsNCgltc28tZm9udC1waXRjaDp2YXJpYWJsZTsNCgltc28tZm9udC1z
aWduYXR1cmU6LTUzNjg3MDE0NSAxMTA3MzA1NzI3IDAgMCA0MTUgMDt9DQpAZm9udC1mYWNlDQoJ
e2ZvbnQtZmFtaWx5OkRlbmdYaWFuOw0KCXBhbm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAxIDE7DQoJ
bXNvLWZvbnQtYWx0Onw/P8Kowqw/Pz/CocKnPz8/wqHCpz8/PzsNCgltc28tZm9udC1jaGFyc2V0
OjEzNDsNCgltc28tZ2VuZXJpYy1mb250LWZhbWlseTphdXRvOw0KCW1zby1mb250LXBpdGNoOnZh
cmlhYmxlOw0KCW1zby1mb250LXNpZ25hdHVyZTotMTYxMDYxMjAzMyA5NTMxMjIwNDIgMjIgMCAy
NjIxNTkgMDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGlicmk7DQoJcGFub3NlLTE6
MiAxNSA1IDIgMiAyIDQgMyAyIDQ7DQoJbXNvLWZvbnQtYWx0OiJBcmlhbCBSb3VuZGVkIE1UIEJv
bGQiOw0KCW1zby1mb250LWNoYXJzZXQ6MDsNCgltc28tZ2VuZXJpYy1mb250LWZhbWlseTpzd2lz
czsNCgltc28tZm9udC1waXRjaDp2YXJpYWJsZTsNCgltc28tZm9udC1zaWduYXR1cmU6LTUzNjg1
OTkwNSAtMTA3MzczMjQ4NSA5IDAgNTExIDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseToi
XEDnrYnnur8iOw0KCXBhbm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAxIDE7DQoJbXNvLWZvbnQtYWx0
OiJcQERlbmdYaWFuIjsNCgltc28tZm9udC1jaGFyc2V0OjEzNDsNCgltc28tZ2VuZXJpYy1mb250
LWZhbWlseTphdXRvOw0KCW1zby1mb250LXBpdGNoOnZhcmlhYmxlOw0KCW1zby1mb250LXNpZ25h
dHVyZTotMTYxMDYxMjAzMyA5NTMxMjIwNDIgMjIgMCAyNjIxNTkgMDt9DQpAZm9udC1mYWNlDQoJ
e2ZvbnQtZmFtaWx5OkNvbnNvbGFzOw0KCXBhbm9zZS0xOjIgMTEgNiA5IDIgMiA0IDMgMiA0Ow0K
CW1zby1mb250LWNoYXJzZXQ6MDsNCgltc28tZ2VuZXJpYy1mb250LWZhbWlseTptb2Rlcm47DQoJ
bXNvLWZvbnQtcGl0Y2g6Zml4ZWQ7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi01MzY4NjkxMjEgNjQ3
NjcgMSAwIDQxNSAwO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk65b6u6L2v6ZuF6buROw0K
CXBhbm9zZS0xOjIgMTEgNSAzIDIgMiA0IDIgMiA0Ow0KCW1zby1mb250LWNoYXJzZXQ6MTM0Ow0K
CW1zby1nZW5lcmljLWZvbnQtZmFtaWx5OnN3aXNzOw0KCW1zby1mb250LXBpdGNoOnZhcmlhYmxl
Ow0KCW1zby1mb250LXNpZ25hdHVyZTotMjE0NzQ4MzAwMSA2ODQ2NzAwMzIgMjIgMCAyNjIxNzUg
MDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OiJcQOW+rui9r+mbhem7kSI7DQoJbXNvLWZv
bnQtY2hhcnNldDoxMzQ7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7DQoJbXNvLWZv
bnQtcGl0Y2g6dmFyaWFibGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi0yMTQ3NDgzMDAxIDY4NDY3
MDAzMiAyMiAwIDI2MjE3NSAwO30NCi8qIFN0eWxlIERlZmluaXRpb25zICovDQpwLk1zb05vcm1h
bCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21zby1zdHlsZS11bmhpZGU6bm87DQoJ
bXNvLXN0eWxlLXFmb3JtYXQ6eWVzOw0KCW1zby1zdHlsZS1wYXJlbnQ6IiI7DQoJbWFyZ2luOjBj
bTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFu
Ow0KCWZvbnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7
DQoJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6RGVuZ1hpYW47fQ0KYTpsaW5rLCBzcGFuLk1zb0h5
cGVybGluaw0KCXttc28tc3R5bGUtbm9zaG93OnllczsNCgltc28tc3R5bGUtcHJpb3JpdHk6OTk7
DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOw0KCXRleHQtdW5kZXJs
aW5lOnNpbmdsZTt9DQphOnZpc2l0ZWQsIHNwYW4uTXNvSHlwZXJsaW5rRm9sbG93ZWQNCgl7bXNv
LXN0eWxlLW5vc2hvdzp5ZXM7DQoJbXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9yOnB1cnBs
ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOw0KCXRleHQtdW5kZXJsaW5lOnNpbmdsZTt9
DQpwLk1zb0xpc3RQYXJhZ3JhcGgsIGxpLk1zb0xpc3RQYXJhZ3JhcGgsIGRpdi5Nc29MaXN0UGFy
YWdyYXBoDQoJe21zby1zdHlsZS1wcmlvcml0eTozNDsNCgltc28tc3R5bGUtdW5oaWRlOm5vOw0K
CW1zby1zdHlsZS1xZm9ybWF0OnllczsNCgltYXJnaW4tdG9wOjBjbTsNCgltYXJnaW4tcmlnaHQ6
MGNtOw0KCW1hcmdpbi1ib3R0b206MGNtOw0KCW1hcmdpbi1sZWZ0OjM2LjBwdDsNCgltYXJnaW4t
Ym90dG9tOi4wMDAxcHQ7DQoJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOw0KCWZvbnQtc2l6
ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7DQoJbXNvLWZhcmVh
c3QtZm9udC1mYW1pbHk6RGVuZ1hpYW47fQ0KcC5tc29ub3JtYWwwLCBsaS5tc29ub3JtYWwwLCBk
aXYubXNvbm9ybWFsMA0KCXttc28tc3R5bGUtbmFtZTptc29ub3JtYWw7DQoJbXNvLXN0eWxlLXVu
aGlkZTpubzsNCgltc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzsNCgltYXJnaW4tcmlnaHQ6MGNtOw0K
CW1zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvOw0KCW1hcmdpbi1sZWZ0OjBjbTsNCgltc28tcGFn
aW5hdGlvbjp3aWRvdy1vcnBoYW47DQoJZm9udC1zaXplOjExLjBwdDsNCglmb250LWZhbWlseToi
Q2FsaWJyaSIsc2Fucy1zZXJpZjsNCgltc28tZmFyZWFzdC1mb250LWZhbWlseTpEZW5nWGlhbjt9
DQpzcGFuLmdtYWlsLWdpDQoJe21zby1zdHlsZS1uYW1lOmdtYWlsLWdpOw0KCW1zby1zdHlsZS11
bmhpZGU6bm87fQ0Kc3Bhbi5FbWFpbFN0eWxlMTkNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWw7
DQoJbXNvLXN0eWxlLW5vc2hvdzp5ZXM7DQoJbXNvLXN0eWxlLXVuaGlkZTpubzsNCgltc28tYW5z
aS1mb250LXNpemU6MTEuMHB0Ow0KCW1zby1iaWRpLWZvbnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1m
YW1pbHk6Q29uc29sYXM7DQoJbXNvLWFzY2lpLWZvbnQtZmFtaWx5OkNvbnNvbGFzOw0KCW1zby1m
YXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTsNCgltc28taGFuc2ktZm9udC1mYW1pbHk6
Q29uc29sYXM7DQoJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7DQoJY29s
b3I6d2luZG93dGV4dDt9DQpzcGFuLkVtYWlsU3R5bGUyMA0KCXttc28tc3R5bGUtdHlwZTpwZXJz
b25hbC1jb21wb3NlOw0KCW1zby1zdHlsZS1ub3Nob3c6eWVzOw0KCW1zby1zdHlsZS11bmhpZGU6
bm87DQoJbXNvLWFuc2ktZm9udC1zaXplOjExLjBwdDsNCgltc28tYmlkaS1mb250LXNpemU6MTEu
MHB0Ow0KCWZvbnQtZmFtaWx5OkNvbnNvbGFzOw0KCW1zby1hc2NpaS1mb250LWZhbWlseTpDb25z
b2xhczsNCgltc28tZmFyZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7DQoJbXNvLWhhbnNp
LWZvbnQtZmFtaWx5OkNvbnNvbGFzOw0KCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcg
Um9tYW4iOw0KCWNvbG9yOndpbmRvd3RleHQ7fQ0KLk1zb0NocERlZmF1bHQNCgl7bXNvLXN0eWxl
LXR5cGU6ZXhwb3J0LW9ubHk7DQoJbXNvLWRlZmF1bHQtcHJvcHM6eWVzOw0KCWZvbnQtZmFtaWx5
OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0KCW1zby1hc2NpaS1mb250LWZhbWlseTpDYWxpYnJpOw0K
CW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OkRlbmdYaWFuOw0KCW1zby1oYW5zaS1mb250LWZhbWls
eTpDYWxpYnJpOw0KCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30NCkBw
YWdlIFdvcmRTZWN0aW9uMQ0KCXtzaXplOjYxMi4wcHQgNzkyLjBwdDsNCgltYXJnaW46NzIuMHB0
IDkwLjBwdCA3Mi4wcHQgOTAuMHB0Ow0KCW1zby1oZWFkZXItbWFyZ2luOjM2LjBwdDsNCgltc28t
Zm9vdGVyLW1hcmdpbjozNi4wcHQ7DQoJbXNvLXBhcGVyLXNvdXJjZTowO30NCmRpdi5Xb3JkU2Vj
dGlvbjENCgl7cGFnZTpXb3JkU2VjdGlvbjE7fQ0KLS0+PC9zdHlsZT48IS0tW2lmIGd0ZSBtc28g
MTBdPjxzdHlsZT4vKiBTdHlsZSBEZWZpbml0aW9ucyAqLw0KdGFibGUuTXNvTm9ybWFsVGFibGUN
Cgl7bXNvLXN0eWxlLW5hbWU6IlRhYmxlIE5vcm1hbCI7DQoJbXNvLXRzdHlsZS1yb3diYW5kLXNp
emU6MDsNCgltc28tdHN0eWxlLWNvbGJhbmQtc2l6ZTowOw0KCW1zby1zdHlsZS1ub3Nob3c6eWVz
Ow0KCW1zby1zdHlsZS1wcmlvcml0eTo5OTsNCgltc28tc3R5bGUtcGFyZW50OiIiOw0KCW1zby1w
YWRkaW5nLWFsdDowY20gNS40cHQgMGNtIDUuNHB0Ow0KCW1zby1wYXJhLW1hcmdpbjowY207DQoJ
bXNvLXBhcmEtbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCW1zby1wYWdpbmF0aW9uOndpZG93LW9y
cGhhbjsNCglmb250LXNpemU6MTEuMHB0Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNl
cmlmOw0KCW1zby1hc2NpaS1mb250LWZhbWlseTpDYWxpYnJpOw0KCW1zby1oYW5zaS1mb250LWZh
bWlseTpDYWxpYnJpOw0KCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30N
Cjwvc3R5bGU+PCFbZW5kaWZdLS0+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWRl
ZmF1bHRzIHY6ZXh0PSJlZGl0IiBzcGlkbWF4PSIxMDI2IiAvPg0KPC94bWw+PCFbZW5kaWZdLS0+
PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWxheW91dCB2OmV4dD0iZWRpdCI+DQo8
bzppZG1hcCB2OmV4dD0iZWRpdCIgZGF0YT0iMSIgLz4NCjwvbzpzaGFwZWxheW91dD48L3htbD48
IVtlbmRpZl0tLT4NCjwvaGVhZD4NCjxib2R5IGxhbmc9IkVOLVVTIiBsaW5rPSJibHVlIiB2bGlu
az0icHVycGxlIiBzdHlsZT0idGFiLWludGVydmFsOjM2LjBwdCI+DQo8ZGl2IGNsYXNzPSJXb3Jk
U2VjdGlvbjEiPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5
OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1m
b250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPkhpIEFqYXksPG86cD48L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gY2xhc3M9ImdtYWlsLWdp
Ij48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3Bh
biBjbGFzcz0iZ21haWwtZ2kiPiZndDsgPHNwYW4gc3R5bGU9Im1zby1zcGFjZXJ1bjp5ZXMiPiZu
YnNwOzwvc3Bhbj5hKSBVbmlrcmFmdCAoZm9yIGFybTMyKSBpcyBidWlsdCB1c2luZyBIVk0gbW9k
ZSwgYW5kIHdpbGwgX29ubHlfIHdvcmsgd2l0aCBwcm9jZXNzb3JzIHRoYXQgaGF2ZSBoYXJkd2Fy
ZS12aXJ0dWFsaXphdGlvbiBlbmFibGVkLCByaWdodD88L3NwYW4+PG86cD48L286cD48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNv
LWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZx
dW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21z
by1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTom
cXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPlllcywgdGhhdOKAmXMgcmlnaHQuIEN1cnJlbnRs
eSwgZm9yIGFybTMyLXVuaWtyYWZ0LCB3ZSBwbGFuIHRvIHN1cHBvcnQgWGVuIGFuZCBMaW51eC9L
Vk0uPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5
bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mb
hem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPkJv
dGggb2YgdGhlbSBuZWVkIGhhcmR3YXJlIHZpcnR1YWxpemF0aW9uIGVuYWJsZWQgcHJvY2Vzc29y
cy48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHls
ZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF
6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+PG86
cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gY2xh
c3M9ImdtYWlsLWdpIj4mZ3Q7IGIpIFVuaWtyYWZ0IChmb3IgeDg2KSBhbHNvIHVzZXMgSFZNIG1v
ZGUsIGFuZCB3b3JrcyBfb25seV8gd2l0aCBwcm9jZXNzb3JzIHRoYXQgaGF2ZSBoYXJkd2FyZS12
aXJ0dWFsaXphdGlvbiBlbmFibGVkLCByaWdodD88L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBjbGFzcz0iZ21haWwtZ2kiPiZndDsgT3IgVW5pa3JhZnQg
d29ya3MvY2FuLXdvcmsgdXNpbmcgUFYgbW9kZT88L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZh
cmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90
O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1m
YXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVv
dDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPlVuaWtyYWZ0LXg4NiBvZiBLVk0gcGxhdGZvcm0gdXNl
cyBIVk0gbW9kZSwgaXQgc2hvdWxkIHJlcXVpcmUgaGFyZHdhcmUgdmlydHVhbGl6YXRpb248bzpw
PjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9u
dC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21z
by1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+ZW5hYmxlZCBw
cm9jZXNzb3JzLiBCdXQgaXQgc2VlbXMgdGhlIFVuaWtyYWZ0LXg4NiBvZiBYZW4gcGxhdGZvcm0g
aXMgdXNpbmcgUFYtbW9kZS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1m
YW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBS
b21hbiZxdW90OyI+SSBhbSBub3Qgc3VyZSBhYm91dCBpdCwgYnV0IEkgdGhpbmsgU2ltb24gY291
bGQgZ2l2ZSB5b3UgYSBjbGVhciBhbnN3ZXIuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJl
YXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtU
aW1lcyBOZXcgUm9tYW4mcXVvdDsiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhczttc28tZmFy
ZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7bXNvLWJpZGktZm9udC1mYW1pbHk6JnF1b3Q7
VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij5SZWdhcmRzLDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhczttc28t
ZmFyZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7bXNvLWJpZGktZm9udC1mYW1pbHk6JnF1
b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij5XZWkgQ2hlbjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhcztt
c28tZmFyZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7bXNvLWJpZGktZm9udC1mYW1pbHk6
JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+
DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xpZCBibHVlIDEuNXB0O3Bh
ZGRpbmc6MGNtIDBjbSAwY20gNC4wcHQiPg0KPGRpdj4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25l
O2JvcmRlci10b3A6c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBjbSAwY20gMGNt
Ij4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiPjxzcGFuIHN0eWxlPSJtc28tZmFyZWFzdC1mb250
LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPkZyb206PC9zcGFuPjwvYj48c3Bh
biBzdHlsZT0ibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1
b3Q7Ij4gTWluaW9zLWRldmVsICZsdDttaW5pb3MtZGV2ZWwtYm91bmNlc0BsaXN0cy54ZW5wcm9q
ZWN0Lm9yZyZndDsNCjxiPk9uIEJlaGFsZiBPZiA8L2I+QWpheSBHYXJnPGJyPg0KPGI+U2VudDo8
L2I+IDIwMTg8L3NwYW4+PHNwYW4gbGFuZz0iWkgtQ04iIHN0eWxlPSJmb250LWZhbWlseTomcXVv
dDvlvq7ova/pm4Xpu5EmcXVvdDssc2Fucy1zZXJpZjttc28tYmlkaS1mb250LWZhbWlseTrlvq7o
va/pm4Xpu5EiPuW5tDwvc3Bhbj48c3BhbiBzdHlsZT0ibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6
JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij40PC9zcGFuPjxzcGFuIGxhbmc9IlpILUNOIiBz
dHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q75b6u6L2v6ZuF6buRJnF1b3Q7LHNhbnMtc2VyaWY7bXNv
LWJpZGktZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRIj7mnIg8L3NwYW4+PHNwYW4gc3R5bGU9Im1z
by1mYXJlYXN0LWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+Mzwvc3Bh
bj48c3BhbiBsYW5nPSJaSC1DTiIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O+W+rui9r+mbhem7
kSZxdW90OyxzYW5zLXNlcmlmO21zby1iaWRpLWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kSI+5pel
PC9zcGFuPjxzcGFuIHN0eWxlPSJtc28tZmFyZWFzdC1mb250LWZhbWlseTomcXVvdDtUaW1lcyBO
ZXcgUm9tYW4mcXVvdDsiPg0KIDE5OjE3PGJyPg0KPGI+VG86PC9iPiBtaW5pb3MtZGV2ZWxAbGlz
dHMueGVucHJvamVjdC5vcmc8YnI+DQo8Yj5TdWJqZWN0OjwvYj4gW01pbmlvcy1kZXZlbF0gU29t
ZSBxdWVyaWVzIHJlZ2FyZGluZyBVbmlrcmFmdCBvbiB4ODYvYXJtPG86cD48L286cD48L3NwYW4+
PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9v
OnA+PC9wPg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4N
CjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+SGkgQWxsLjxvOnA+PC9vOnA+PC9w
Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4w
cHQiPkk8c3BhbiBjbGFzcz0iZ21haWwtZ2kiPnQncyBwcmV0dHkgY2xlYXIgdGhhdCBQVi1ndWVz
dHMgb24gQVJNIGFyZSBub3QgdGhlIHdheSB0byBnbyAobmVpdGhlciB0aGVyZSBhcmUgYW55IHBs
YW5zIGZvciBzdXBwb3J0IG9mIFBWLWd1ZXN0cyBvbiBBUk0pLCBwcmltYXJpbHkgYmVjYXVzZSBv
ZiB0aGUgZm9sbG93aW5nIHJlYXNvbnMgOjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gY2xhc3M9ImdtYWlsLWdpIj4mbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKiBUb28gbXVjaCBjb21wbGV4aXR5IGluIE9TIGNvZGUg
d2hpbGUgYm9vdGluZyB1cCwgYW5kIGluIGdlbmVyYWwuPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0K
PC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQi
PjxzcGFuIGNsYXNzPSJnbWFpbC1naSI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7ICogU2VjdXJpdHkgaXNzdWVzIChNZWx0ZG93bikuPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0K
PC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQi
PjxzcGFuIGNsYXNzPSJnbWFpbC1naSI+U28sIHJ1bXBydW4sIGFzIG9mIG5vdyBpcyB1bnVzYWJs
ZSBmb3IgQVJNLCBiZWNhdXNlIHJ1bXBydW4gaXMgYnVpbHQgd2l0aCBQVi1ndWVzdHMgaW4gbWlu
ZC48L3NwYW4+PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+PHNwYW4gY2xhc3M9ImdtYWlsLWdpIj5TbywgdGhhdCBsZWF2ZXMgdXMgd2l0aCBVbmlr
cmFmdC48L3NwYW4+PGJyPg0KPHNwYW4gY2xhc3M9ImdtYWlsLWdpIj5Tbywga2luZGx5IGNvbmZp
cm0gOjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IGNsYXNzPSJnbWFpbC1naSI+YSk8L3NwYW4+PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+PHNwYW4gY2xhc3M9
ImdtYWlsLWdpIj5VbmlrcmFmdCAoZm9yIGFybTMyKSBpcyBidWlsdCB1c2luZyBIVk0gbW9kZSwg
YW5kIHdpbGwgX29ubHlfIHdvcmsgd2l0aCBwcm9jZXNzb3JzIHRoYXQgaGF2ZSBoYXJkd2FyZS12
aXJ0dWFsaXphdGlvbiBlbmFibGVkLCByaWdodD88L3NwYW4+PG86cD48L286cD48L3A+DQo8L2Rp
dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGNsYXNzPSJnbWFpbC1naSI+Yik8L3NwYW4+
PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGNsYXNz
PSJnbWFpbC1naSI+VW5pa3JhZnQgKGZvciB4ODYpIGFsc28gdXNlcyBIVk0gbW9kZSwgYW5kIHdv
cmtzIF9vbmx5XyB3aXRoIHByb2Nlc3NvcnMgdGhhdCBoYXZlIGhhcmR3YXJlLXZpcnR1YWxpemF0
aW9uIGVuYWJsZWQsIHJpZ2h0Pzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gY2xhc3M9ImdtYWlsLWdpIj5PciBVbmlrcmFmdCB3b3Jrcy9j
YW4td29yayB1c2luZyBQViBtb2RlPzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxkaXY+DQo8ZGl2
Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQiPjxicj4N
Cjxicj4NCjxzcGFuIGNsYXNzPSJnbWFpbC1naSI+SSB0aGluayB3aXRoIHRoZSBhYm92ZSB0d28g
cmVzb2x1dGlvbnMsIHdlIGNhbiBiZSBzdXJlIHRvIHplcm8taW4gb24gVW5pa3JhZnQgZm9yIHJ1
bm5pbmcgdW5pa2VybmVscy48L3NwYW4+PGJyIHN0eWxlPSJtc28tc3BlY2lhbC1jaGFyYWN0ZXI6
bGluZS1icmVhayI+DQo8IVtpZiAhc3VwcG9ydExpbmVCcmVha05ld0xpbmVdPjxiciBzdHlsZT0i
bXNvLXNwZWNpYWwtY2hhcmFjdGVyOmxpbmUtYnJlYWsiPg0KPCFbZW5kaWZdPjxvOnA+PC9vOnA+
PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gY2xhc3M9Imdt
YWlsLWdpIj5NYW55IHRoYW5rcyB0byBldmVyeW9uZSB3aG8gaGF2ZSBoZWxwZWQsIGJpZyB0aGFu
a3MgdG8gSnVsaWVuICgmbHQ7PGEgaHJlZj0ibWFpbHRvOmp1bGllbi5ncmFsbEBhcm0uY29tIj5q
dWxpZW4uZ3JhbGxAYXJtLmNvbTwvYT4mZ3Q7KSAhITwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiciBjbGVhcj0iYWxsIiBzdHlsZT0i
bXNvLXNwZWNpYWwtY2hhcmFjdGVyOmxpbmUtYnJlYWsiPg0KPG86cD48L286cD48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+VGhh
bmtzIGFuZCBSZWdhcmRzLDxicj4NCkFqYXk8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+
DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4N
CjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0K
PC9kaXY+DQo8L2Rpdj4NCklNUE9SVEFOVCBOT1RJQ0U6IFRoZSBjb250ZW50cyBvZiB0aGlzIGVt
YWlsIGFuZCBhbnkgYXR0YWNobWVudHMgYXJlIGNvbmZpZGVudGlhbCBhbmQgbWF5IGFsc28gYmUg
cHJpdmlsZWdlZC4gSWYgeW91IGFyZSBub3QgdGhlIGludGVuZGVkIHJlY2lwaWVudCwgcGxlYXNl
IG5vdGlmeSB0aGUgc2VuZGVyIGltbWVkaWF0ZWx5IGFuZCBkbyBub3QgZGlzY2xvc2UgdGhlIGNv
bnRlbnRzIHRvIGFueSBvdGhlciBwZXJzb24sIHVzZSBpdCBmb3IgYW55IHB1cnBvc2UsDQogb3Ig
c3RvcmUgb3IgY29weSB0aGUgaW5mb3JtYXRpb24gaW4gYW55IG1lZGl1bS4gVGhhbmsgeW91Lg0K
PC9ib2R5Pg0KPC9odG1sPg0K

--_000_DB3PR08MB010781EFD85A6B572FE1428D9EA40DB3PR08MB0107eurp_--


--===============0731193938414213082==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============0731193938414213082==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 04 03:05:28 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 03:05:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3Yjm-0006NP-Oa; Wed, 04 Apr 2018 03:05:26 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=3ptd=gz=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3Yjl-0006NK-SW
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 03:05:25 +0000
X-Inumbo-ID: ee31d3ba-37b4-11e8-9728-bc764e045a96
Received: from mail-lf0-x234.google.com (unknown [2a00:1450:4010:c07::234])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id ee31d3ba-37b4-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 05:04:47 +0200 (CEST)
Received: by mail-lf0-x234.google.com with SMTP id m200-v6so17343862lfm.4
 for <minios-devel@lists.xenproject.org>; Tue, 03 Apr 2018 20:05:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=36RSh4HXPO2p/HZ2LVJcMS3ouoWBXYCqIr1KMKLzbKI=;
 b=IKQwIn8gqqfMOK6WxoBAyfzaGAOsqX/pmi9g/YIJZWD3z+Vmv/H7+7NG5FzA/uH825
 m6+vwEgy91/Hiwd3oCTqLCD2t9UVXyilmyBMZxqNz87adHa9+cZ9czZTG4gATOpZ4uQU
 w8riJ5L4+4DtwXqZkDiYRvaO0o7gAEEP9vHJ0TWhpZGWK5niB/R6Gr7zGdLfc1WmWPLD
 cNPn2Yx9cYEqEe9j7rA909D9lZSqN2g27thkw0cB58kmX59ZKLPynDo1d/Q9WmF5vP5g
 LeyW4m/CN1PuZDWwgnfTUXhY3XrlUVy6N91+iiHnAoVcbSBOmlDWALa+wBBT8SEnIfmP
 k5iQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=36RSh4HXPO2p/HZ2LVJcMS3ouoWBXYCqIr1KMKLzbKI=;
 b=c+0DfKxTsBfxiCYF3Lg1v4gl/kxPjOQX7ZwcGd2uSFcqi9kFgplmIHSNd1WmrkCI7B
 4Qk70/CP3yYTkUP05lnzA9Pk1wn4vd1UlcXoz2Loma9+6oxbs9YwaYGZrKGNuH2bYeYn
 rOqn+sJm0IrRnEVywM8VnYU+U8heVV7J2DvkiuRWASgaQhrxlO10FHpUnl6acnXUq0OE
 QUVta03ygx2ihbYo3n4SK/Mx2diiPBWm+yzq4nH4R+3yCQiU4U0WGfwJXthNp+cSndXT
 XyZaznuumBXaDLiYEr9zcYd7PC4EZUpwt/n60hiRXP+NVFloUR1fNltv6ESUR4rNZfxt
 jYcA==
X-Gm-Message-State: ALQs6tBd2ksQb5saeRyWkIIcrq2EH4d7hLbcgDFc/8bNj438OwhxpJJT
 k3q65I5OZeEOyqACEHQc75VxCN+ZrJ039wjMxH0=
X-Google-Smtp-Source: AIpwx4+xhu16JQdJGbOMpDS4c1cQIyZZVvMP0lFQXwQCb3lslYm0z21YPLIRaskySXJGs3Rqnw9OQVmfYfcv0TCQfRs=
X-Received: by 2002:a19:960e:: with SMTP id
 y14-v6mr10101001lfd.43.1522811121793; 
 Tue, 03 Apr 2018 20:05:21 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Tue, 3 Apr 2018 20:05:21 -0700 (PDT)
In-Reply-To: <DB3PR08MB010781EFD85A6B572FE1428D9EA40@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <CAHP4M8Xhau9VS3Mi_7VwYhosP7n5S9brgsrRxfwFj3R8rrDxJg@mail.gmail.com>
 <DB3PR08MB010781EFD85A6B572FE1428D9EA40@DB3PR08MB0107.eurprd08.prod.outlook.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Wed, 4 Apr 2018 08:35:21 +0530
Message-ID: <CAHP4M8UgQgrZM9ZsmrYLx61mb-EX5oe3HPF0zHwfmx=jaB7WrQ@mail.gmail.com>
To: Wei Chen <Wei.Chen@arm.com>
Subject: Re: [Minios-devel] Some queries regarding Unikraft on x86/arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>,
 "Simon Kuenzer \(simon.kuenzer@neclab.eu\)" <simon.kuenzer@neclab.eu>
Content-Type: multipart/mixed; boundary="===============7671372681314851571=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============7671372681314851571==
Content-Type: multipart/alternative; boundary="000000000000f981c30568fd1784"

--000000000000f981c30568fd1784
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Thanks Wei for the crisp reply !!
Waiting for Simon's insights on Unikraft-x86 on Xen :)

Thanks and Regards,
Ajay

On Wed, Apr 4, 2018 at 8:04 AM, Wei Chen <Wei.Chen@arm.com> wrote:

> Hi Ajay,
>
>
>
> >  a) Unikraft (for arm32) is built using HVM mode, and will _only_ work
> with processors that have hardware-virtualization enabled, right?
>
>
>
> Yes, that=E2=80=99s right. Currently, for arm32-unikraft, we plan to supp=
ort Xen
> and Linux/KVM.
>
> Both of them need hardware virtualization enabled processors.
>
>
>
> > b) Unikraft (for x86) also uses HVM mode, and works _only_ with
> processors that have hardware-virtualization enabled, right?
>
> > Or Unikraft works/can-work using PV mode?
>
>
>
> Unikraft-x86 of KVM platform uses HVM mode, it should require hardware
> virtualization
>
> enabled processors. But it seems the Unikraft-x86 of Xen platform is usin=
g
> PV-mode.
>
> I am not sure about it, but I think Simon could give you a clear answer.
>
>
>
> Regards,
>
> Wei Chen
>
>
>
> *From:* Minios-devel <minios-devel-bounces@lists.xenproject.org> *On
> Behalf Of *Ajay Garg
> *Sent:* 2018=E5=B9=B44=E6=9C=883=E6=97=A5 19:17
> *To:* minios-devel@lists.xenproject.org
> *Subject:* [Minios-devel] Some queries regarding Unikraft on x86/arm
>
>
>
> Hi All.
>
> It's pretty clear that PV-guests on ARM are not the way to go (neither
> there are any plans for support of PV-guests on ARM), primarily because o=
f
> the following reasons :
>
>        * Too much complexity in OS code while booting up, and in general.
>
>        * Security issues (Meltdown).
>
> So, rumprun, as of now is unusable for ARM, because rumprun is built with
> PV-guests in mind.
>
> So, that leaves us with Unikraft.
> So, kindly confirm :
>
>
>
> a)
>
> Unikraft (for arm32) is built using HVM mode, and will _only_ work with
> processors that have hardware-virtualization enabled, right?
>
> b)
>
> Unikraft (for x86) also uses HVM mode, and works _only_ with processors
> that have hardware-virtualization enabled, right?
>
> Or Unikraft works/can-work using PV mode?
>
>
>
> I think with the above two resolutions, we can be sure to zero-in on
> Unikraft for running unikernels.
>
> Many thanks to everyone who have helped, big thanks to Julien (<
> julien.grall@arm.com>) !!
>
>
>
>
> Thanks and Regards,
> Ajay
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy th=
e
> information in any medium. Thank you.
>



--=20
Regards,
Ajay

--000000000000f981c30568fd1784
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div>Thanks Wei for the crisp reply !!<br></div>=
Waiting for Simon&#39;s insights on Unikraft-x86 on Xen :)<br><br></div>Tha=
nks and Regards,<br></div>Ajay<br></div><div class=3D"gmail_extra"><br><div=
 class=3D"gmail_quote">On Wed, Apr 4, 2018 at 8:04 AM, Wei Chen <span dir=
=3D"ltr">&lt;<a href=3D"mailto:Wei.Chen@arm.com" target=3D"_blank">Wei.Chen=
@arm.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=
=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">







<div link=3D"blue" vlink=3D"purple" lang=3D"EN-US">
<div class=3D"m_8707037069318026063WordSection1">
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Hi Ajay,<u></u>=
<u></u></span></p><span class=3D"">
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi"><u></u=
>=C2=A0<u></u></span></p>
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi">&gt; <=
span>=C2=A0</span>a) Unikraft (for arm32) is built using HVM mode, and will=
 _only_ work with processors that have hardware-virtualization enabled, rig=
ht?</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p>
</span><p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Yes, tha=
t=E2=80=99s right. Currently, for arm32-unikraft, we plan to support Xen an=
d Linux/KVM.<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Both of them ne=
ed hardware virtualization enabled processors.<u></u><u></u></span></p><spa=
n class=3D"">
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p>
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi">&gt; b=
) Unikraft (for x86) also uses HVM mode, and works _only_ with processors t=
hat have hardware-virtualization enabled, right?</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi">&gt; O=
r Unikraft works/can-work using PV mode?</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p>
</span><p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Unikraft=
-x86 of KVM platform uses HVM mode, it should require hardware virtualizati=
on<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">enabled process=
ors. But it seems the Unikraft-x86 of Xen platform is using PV-mode.<u></u>=
<u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">I am not sure a=
bout it, but I think Simon could give you a clear answer.<u></u><u></u></sp=
an></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Regards,<u></u>=
<u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Wei Chen<u></u>=
<u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p>
<div style=3D"border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm =
4.0pt">
<div>
<div style=3D"border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b><span>From:</span></b><span> Minios-devel &lt;<a =
href=3D"mailto:minios-devel-bounces@lists.xenproject.org" target=3D"_blank"=
>minios-devel-bounces@lists.<wbr>xenproject.org</a>&gt;
<b>On Behalf Of </b>Ajay Garg<br>
<b>Sent:</b> 2018</span><span style=3D"font-family:&quot;\005fae\008f6f\009=
6c5\009ed1&quot;,sans-serif" lang=3D"ZH-CN">=E5=B9=B4</span><span>4</span><=
span style=3D"font-family:&quot;\005fae\008f6f\0096c5\009ed1&quot;,sans-ser=
if" lang=3D"ZH-CN">=E6=9C=88</span><span>3</span><span style=3D"font-family=
:&quot;\005fae\008f6f\0096c5\009ed1&quot;,sans-serif" lang=3D"ZH-CN">=E6=97=
=A5</span><span>
 19:17<br>
<b>To:</b> <a href=3D"mailto:minios-devel@lists.xenproject.org" target=3D"_=
blank">minios-devel@lists.xenproject.<wbr>org</a><br>
<b>Subject:</b> [Minios-devel] Some queries regarding Unikraft on x86/arm<u=
></u><u></u></span></p>
</div>
</div><div><div class=3D"h5">
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">Hi All.<u></u><u></u>=
</p>
</div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">I<span class=3D"m_870=
7037069318026063gmail-gi">t&#39;s pretty clear that PV-guests on ARM are no=
t the way to go (neither there are any plans for support of PV-guests on AR=
M), primarily because of the following reasons :</span><u></u><u></u></p>
</div>
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi">=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * Too much complexity in OS code while booti=
ng up, and in general.</span><u></u><u></u></p>
</div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt"><span class=3D"m_8707=
037069318026063gmail-gi">=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * Security is=
sues (Meltdown).</span><u></u><u></u></p>
</div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt"><span class=3D"m_8707=
037069318026063gmail-gi">So, rumprun, as of now is unusable for ARM, becaus=
e rumprun is built with PV-guests in mind.</span><u></u><u></u></p>
</div>
</div>
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi">So, th=
at leaves us with Unikraft.</span><br>
<span class=3D"m_8707037069318026063gmail-gi">So, kindly confirm :</span><u=
></u><u></u></p>
</div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi">a)</sp=
an><u></u><u></u></p>
</div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt"><span class=3D"m_8707=
037069318026063gmail-gi">Unikraft (for arm32) is built using HVM mode, and =
will _only_ work with processors that have hardware-virtualization enabled,=
 right?</span><u></u><u></u></p>
</div>
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi">b)</sp=
an><u></u><u></u></p>
</div>
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi">Unikra=
ft (for x86) also uses HVM mode, and works _only_ with processors that have=
 hardware-virtualization enabled, right?</span><u></u><u></u></p>
</div>
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi">Or Uni=
kraft works/can-work using PV mode?</span><u></u><u></u></p>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt"><br>
<br>
<span class=3D"m_8707037069318026063gmail-gi">I think with the above two re=
solutions, we can be sure to zero-in on Unikraft for running unikernels.</s=
pan><br>
<u></u><br>
<u></u><u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><span class=3D"m_8707037069318026063gmail-gi">Many t=
hanks to everyone who have helped, big thanks to Julien (&lt;<a href=3D"mai=
lto:julien.grall@arm.com" target=3D"_blank">julien.grall@arm.com</a>&gt;) !=
!</span><u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><br clear=3D"all">
<u></u><u></u></p>
</div>
<div>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal">Thanks and Regards,<br>
Ajay<u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div></div></div>
</div>
IMPORTANT NOTICE: The contents of this email and any attachments are confid=
ential and may also be privileged. If you are not the intended recipient, p=
lease notify the sender immediately and do not disclose the contents to any=
 other person, use it for any purpose,
 or store or copy the information in any medium. Thank you.
</div>

</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature" data-smartmail=3D"gmail_signature">Regards,<br>Ajay<br></div>
</div>

--000000000000f981c30568fd1784--


--===============7671372681314851571==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============7671372681314851571==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 04 03:31:16 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 03:31:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3Z8k-0008Dj-MO; Wed, 04 Apr 2018 03:31:14 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=3ptd=gz=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3Z8j-0008De-Qm
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 03:31:13 +0000
X-Inumbo-ID: 88f5791c-37b8-11e8-9728-bc764e045a96
Received: from mail-lf0-x22a.google.com (unknown [2a00:1450:4010:c07::22a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 88f5791c-37b8-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 05:30:35 +0200 (CEST)
Received: by mail-lf0-x22a.google.com with SMTP id x70-v6so16345118lfa.0
 for <minios-devel@lists.xenproject.org>; Tue, 03 Apr 2018 20:31:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to;
 bh=2EPEOb2UPlwbDFJkiCm5IMc0e/WwYJw9Z6Wp5LWMpgc=;
 b=Q1YJgwcxSLB2wlmWB4D+XtbfEvZ1OrmJ+ZZ414qzuhTRCfVJtZ+ralqRvGPHsja/nM
 Ln6jgS7aH0Mznd11IOulwqMOBD9xa3hrl5yPkZJBN6Wpqksdm+iJhniwLUU0htqSXHBv
 1XvUC+plaRIxi6j+3umUD4nMph/qRp8lnYy8PPU6fmYJlS+bBt9J/BbNtdXi3nLJ3ll+
 698VCK18Swslu5Pl7WuHbcUsNpH4HguKg7twsLunse5qQjVhJzKNNz0FnGa0QlYA7R+c
 2xzYxWwzGHBnVqlSUH2k+HuzsySTeen3i9uF2gjAemnMmzZmM71c9ZcQQbWgsz7KqV0m
 1Pjw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=2EPEOb2UPlwbDFJkiCm5IMc0e/WwYJw9Z6Wp5LWMpgc=;
 b=PJV1HcGSn1dC3bZ/U+eTfvxasVplLlGyqSOpfqBGuxX8k2b+LKrj9SFCG663zdyBSX
 4hmbbdUL+XUlIcquOudFhckhEAdQIWvAMdgbXT+WTSR+uEVv0lZHQMXUSOdCmFWo71NX
 gj5kGJWVQJh6uEtHZ+ZYGypNHd1YFStmqSQJiDGSDgg4evovfaR9C1E/U/gy3BpCdRFJ
 nqZlvXbEw4gS/xnA/WZD140ksb7NQKBWF2V/KzJksopAVyVRlu/MfKPI+W5IuEblNMOe
 Ogt/ba8K3zFNYYjLngs5qhiS0SUtB2FBuQNydmx/y+Sr3j+d7bPNJEnzaaCFUEF9oPao
 OECA==
X-Gm-Message-State: ALQs6tCFVlw95OKmDR5pzrn/YD/w61o+MH/Y6O1+nPzVcgVHPa6HwUxH
 LttEtDzjFiKAgoGAya7BleqpmZEKaiY7wropXD4wjw==
X-Google-Smtp-Source: AIpwx49x8FKH/Vp7sheaHby0t54W/ec+sWKGqYNSV2qVNB2Pcgt5N3dR8Cfk687GynLQgaP/x5YXBWN60jT9cjwb/zw=
X-Received: by 10.46.85.196 with SMTP id g65mr9983251lje.10.1522812669887;
 Tue, 03 Apr 2018 20:31:09 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Tue, 3 Apr 2018 20:31:09 -0700 (PDT)
In-Reply-To: <CAHP4M8UL0=FARsbhy7ZO3Pteyq+8FMWCqT7N0ca2akk_8+ckBA@mail.gmail.com>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
 <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
 <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
 <CAHP4M8XO-hSJT0EXkhoTZDv_esZy=dbYLTAqWS7jAkxCTe9VmA@mail.gmail.com>
 <CAHP4M8UL0=FARsbhy7ZO3Pteyq+8FMWCqT7N0ca2akk_8+ckBA@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Wed, 4 Apr 2018 09:01:09 +0530
Message-ID: <CAHP4M8URiaqes5yf_nAoBeWWjSV9UeTz6gFuni1JsfQBQdoBqw@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============8844343390387589882=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============8844343390387589882==
Content-Type: multipart/alternative; boundary="94eb2c1aa7003f89b60568fd742d"

--94eb2c1aa7003f89b60568fd742d
Content-Type: text/plain; charset="UTF-8"

Earnest request for help please.

I have even confirmed that hardware-virtualization is enabled in CPU and
BIOS.
Also, when booted into Xen, following is seen fine :

########################################################
ajay@Latitude-3480:~$ cat /sys/hypervisor/properties/capabilities
xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64
########################################################


However, running the hello-world app gives the same error :

########################################################
root@Latitude-3480:/home/ajay/unikraft/apps/helloworld# xl create -c
helloworld.cfg
Parsing config from helloworld.cfg
libxl: error: libxl_dom.c:37:libxl__domain_type: unable to get domain type
for domid=1
xl: unable to exec console client: No such file or directory
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: console child
[3004] exited with error status 1
########################################################

On Tue, Apr 3, 2018 at 2:06 PM, Ajay Garg <ajaygargnsit@gmail.com> wrote:

> Help please ... unikraft seems to be the only option now to run unikernels
> on ARM.
> But before I reach there, I need to feel confident first on x86 (with
> unikraft).
>
>
> Thanks and Regards,
> Ajay
>



-- 
Regards,
Ajay

--94eb2c1aa7003f89b60568fd742d
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div>Earnest request for help please.<br><br></d=
iv>I have even confirmed that hardware-virtualization is enabled in CPU and=
 BIOS.<br></div>Also, when booted into Xen, following is seen fine :<br><br=
>##############################<wbr>##########################<br>ajay@Lati=
tude-3480:~$ cat /sys/hypervisor/properties/<wbr>capabilities <br>xen-3.0-x=
86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64<br>####=
##########################<wbr>##########################<br><br><br></div>=
However, running the hello-world app gives the same error :<br><br>########=
######################<wbr>##########################<br>root@Latitude-3480=
:/home/ajay/unikraft/apps/helloworld# xl create -c helloworld.cfg <br>Parsi=
ng config from helloworld.cfg<br>libxl: error: libxl_dom.c:37:libxl__domain=
_type: unable to get domain type for domid=3D1<br>xl: unable to exec consol=
e client: No such file or directory<br>libxl: error: libxl_exec.c:118:libxl=
_report_child_exitstatus: console child [3004] exited with error status 1<b=
r>##############################<wbr>##########################<br></div><d=
iv class=3D"gmail_extra"><br><div class=3D"gmail_quote">On Tue, Apr 3, 2018=
 at 2:06 PM, Ajay Garg <span dir=3D"ltr">&lt;<a href=3D"mailto:ajaygargnsit=
@gmail.com" target=3D"_blank">ajaygargnsit@gmail.com</a>&gt;</span> wrote:<=
br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left=
:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div>Help please ... uni=
kraft seems to be the only option now to run unikernels on ARM.<br></div>Bu=
t before I reach there, I need to feel confident first on x86 (with unikraf=
t).<br><div class=3D"gmail_extra"><br clear=3D"all"><br><div class=3D"m_-76=
8295406711455949gmail_signature" data-smartmail=3D"gmail_signature">Thanks =
and Regards,<br>Ajay<br></div>
</div></div>
</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature" data-smartmail=3D"gmail_signature">Regards,<br>Ajay<br></div>
</div>

--94eb2c1aa7003f89b60568fd742d--


--===============8844343390387589882==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============8844343390387589882==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 04 04:20:53 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 04:20:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3Zul-00038i-KK; Wed, 04 Apr 2018 04:20:51 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=3ptd=gz=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3Zuj-00038d-L2
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 04:20:49 +0000
X-Inumbo-ID: 759ed791-37bf-11e8-9728-bc764e045a96
Received: from mail-lf0-x22c.google.com (unknown [2a00:1450:4010:c07::22c])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 759ed791-37bf-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 06:20:09 +0200 (CEST)
Received: by mail-lf0-x22c.google.com with SMTP id t132-v6so23300773lfe.2
 for <minios-devel@lists.xenproject.org>; Tue, 03 Apr 2018 21:20:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to;
 bh=Hm9vXeJzQ3yH06SWtM6NFLJmDUlE3ahmkd5DBRCbmsM=;
 b=DMZ/NuPhK09kJy3Q/GcAl8fw8MnfAA/BvStkWoZL16Ho7CRj4U7GihJQjNvpAK/Ru9
 u6qbj5f35w2kRoDfndbrpB6tmDDbMtAHkECTLttXswxVc+QscOX++WddktbfZzJi11L1
 ETEhBDgIuzaZ0iPfDLs857fy2UnFw2Udx8N6QyAgEWixiqYHeV7yzUQhgZYqWgvToB3H
 J3i6tb1DzG8LdRPYpSq40/SxpLPBVTFecdqr7YQd2e9PfjKHtZ02W/EML1qauRKzOR+g
 NApRuf+kduKaMtgguJaKkv/LA7or+iD5cbfRH8Cauaue8I/SexEbmHBMCxnQB+bEhYrl
 IYbg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=Hm9vXeJzQ3yH06SWtM6NFLJmDUlE3ahmkd5DBRCbmsM=;
 b=QBFl/wULjKNry1ld2ZCYLeJlyXy77I/GgW2UrCToI/GM8kyPk+aRJw6X5o5OY5AX27
 83S4fXXTcJTBLGS+yo3gcTmni3GYLYwcDv+OAU/c7MSHEJQGOo5DCcfcipodAD5rwtQy
 toQtTT4icFa6bX86cMHeevKttBt8++Lr9SAT7I/Pm0uIBTvHopokau9V8p8h8n1ybYDk
 ya2iI611C4vM+jYpUsAB4Hu2TKyrSOd5LSP0eV2+MDR7rUREe6h9qdvc3EHfQgykR7kv
 dZ/mzXgD1JF2usQG/K0DE6WKwmaezialipSXosVAt9Saf71vH2OFx8nb29i2U2etkvOg
 Xibg==
X-Gm-Message-State: ALQs6tC5FIuaaQg7rIt9mqZO6cnxuhDodDj2wo+ObdPbI3QGamDdMxy+
 Xos10xbsjxAK0eNiOjPAdbWy9eQykHZpcDRWShcFHA==
X-Google-Smtp-Source: AIpwx4/lGAE1YYc+KA0hZ7cuswD/numqp4DR4L5P4gpOc8sO3k78aGtzz/0delLhWPLWyH6ub99GqsPPX0032NNvR/8=
X-Received: by 2002:a19:d89a:: with SMTP id
 r26-v6mr9726938lfi.25.1522815643890; 
 Tue, 03 Apr 2018 21:20:43 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Tue, 3 Apr 2018 21:20:43 -0700 (PDT)
In-Reply-To: <CAHP4M8URiaqes5yf_nAoBeWWjSV9UeTz6gFuni1JsfQBQdoBqw@mail.gmail.com>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
 <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
 <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
 <CAHP4M8XO-hSJT0EXkhoTZDv_esZy=dbYLTAqWS7jAkxCTe9VmA@mail.gmail.com>
 <CAHP4M8UL0=FARsbhy7ZO3Pteyq+8FMWCqT7N0ca2akk_8+ckBA@mail.gmail.com>
 <CAHP4M8URiaqes5yf_nAoBeWWjSV9UeTz6gFuni1JsfQBQdoBqw@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Wed, 4 Apr 2018 09:50:43 +0530
Message-ID: <CAHP4M8UGQ5JaFbHFG_cgFQoP+d3YRR1yvbBjXPHq4bN1kHcoSg@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============1403800715659095899=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============1403800715659095899==
Content-Type: multipart/alternative; boundary="000000000000833d190568fe2590"

--000000000000833d190568fe2590
Content-Type: text/plain; charset="UTF-8"

Following is the log, when starting the domain with verbose-logging enabled
:


########################################################
root@Latitude-3480:/home/ajay/unikraft/apps/helloworld# *xl -vv create -c
helloworld.cfg*
Parsing config from helloworld.cfg
domainbuilder: detail: xc_dom_allocate: cmdline="(null)", features="(null)"
domainbuilder: detail: xc_dom_kernel_file:
filename="./build/helloworld_xen-x86_64"
domainbuilder: detail: xc_dom_boot_xen_init: ver 4.6, caps xen-3.0-x86_64
xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64
domainbuilder: detail: xc_dom_parse_image: called
domainbuilder: detail: xc_dom_find_loader: trying multiboot-binary loader
...
domainbuilder: detail: loader probe failed
domainbuilder: detail: xc_dom_find_loader: trying Linux bzImage loader ...
domainbuilder: detail: xc_dom_probe_bzimage_kernel: kernel is not a bzImage
domainbuilder: detail: loader probe failed
domainbuilder: detail: xc_dom_find_loader: trying ELF-generic loader ...
domainbuilder: detail: loader probe OK
xc: detail: elf_parse_binary: phdr: paddr=0x0 memsz=0x5a088
xc: detail: elf_parse_binary: memory: 0x0 -> 0x5a088
xc: detail: elf_xen_parse_note: GUEST_OS = "Unikraft"
xc: detail: elf_xen_parse_note: LOADER = "generic"
xc: detail: elf_xen_parse_note: HYPERCALL_PAGE = 0x3000
xc: detail: elf_xen_parse_note: XEN_VERSION = "xen-3.0"
xc: detail: elf_xen_parse: using notes from SHT_NOTE section
xc: detail: elf_xen_addr_calc_check: VIRT_BASE unset, using 0x0
xc: detail: elf_xen_addr_calc_check: ELF_PADDR_OFFSET unset, using 0x0
xc: detail: elf_xen_addr_calc_check: addresses:
xc: detail:     virt_base        = 0x0
xc: detail:     elf_paddr_offset = 0x0
xc: detail:     virt_offset      = 0x0
xc: detail:     virt_kstart      = 0x0
xc: detail:     virt_kend        = 0x5a088
xc: detail:     virt_entry       = 0x1000
xc: detail:     p2m_base         = 0xffffffffffffffff
domainbuilder: detail: xc_dom_parse_elf_kernel: xen-3.0-x86_64: 0x0 ->
0x5a088
domainbuilder: detail: xc_dom_mem_init: mem 4 MB, pages 0x400 pages, 4k each
domainbuilder: detail: xc_dom_mem_init: 0x400 pages
domainbuilder: detail: xc_dom_boot_mem_init: called
domainbuilder: detail: x86_compat: guest xen-3.0-x86_64, address size 64
domainbuilder: detail: xc_dom_build_image: called
domainbuilder: detail: xc_dom_alloc_segment:   kernel       : 0x0 ->
0x5b000  (pfn 0x0 + 0x5b pages)
domainbuilder: detail: xc_dom_pfn_to_ptr_retcount: domU mapping: pfn
0x0+0x5b at 0x7fe015720000
xc: detail: elf_load_binary: phdr 0 at 0x7fe015720000 -> 0x7fe01572f15c
domainbuilder: detail: xc_dom_alloc_segment:   phys2mach    : 0x5b000 ->
0x5d000  (pfn 0x5b + 0x2 pages)
domainbuilder: detail: xc_dom_pfn_to_ptr_retcount: domU mapping: pfn
0x5b+0x2 at 0x7fe01578e000
domainbuilder: detail: xc_dom_alloc_page   :   start info   : 0x5d000 (pfn
0x5d)
domainbuilder: detail: xc_dom_alloc_page   :   xenstore     : 0x5e000 (pfn
0x5e)
domainbuilder: detail: xc_dom_alloc_page   :   console      : 0x5f000 (pfn
0x5f)
domainbuilder: detail: nr_page_tables: 0x0000ffffffffffff/48:
0x0000000000000000 -> 0x0000ffffffffffff, 1 table(s)
domainbuilder: detail: nr_page_tables: 0x0000007fffffffff/39:
0x0000000000000000 -> 0x0000007fffffffff, 1 table(s)
domainbuilder: detail: nr_page_tables: 0x000000003fffffff/30:
0x0000000000000000 -> 0x000000003fffffff, 1 table(s)
domainbuilder: detail: nr_page_tables: 0x00000000001fffff/21:
0x0000000000000000 -> 0x00000000003fffff, 2 table(s)
domainbuilder: detail: xc_dom_alloc_segment:   page tables  : 0x60000 ->
0x65000  (pfn 0x60 + 0x5 pages)
domainbuilder: detail: xc_dom_pfn_to_ptr_retcount: domU mapping: pfn
0x60+0x5 at 0x7fe015789000
domainbuilder: detail: xc_dom_alloc_page   :   boot stack   : 0x65000 (pfn
0x65)
domainbuilder: detail: xc_dom_build_image  : virt_alloc_end : 0x66000
domainbuilder: detail: xc_dom_build_image  : virt_pgtab_end : 0x400000
domainbuilder: detail: xc_dom_boot_image: called
domainbuilder: detail: arch_setup_bootearly: doing nothing
domainbuilder: detail: xc_dom_compat_check: supported guest type:
xen-3.0-x86_64 <= matches
domainbuilder: detail: xc_dom_compat_check: supported guest type:
xen-3.0-x86_32p
domainbuilder: detail: xc_dom_compat_check: supported guest type:
hvm-3.0-x86_32
domainbuilder: detail: xc_dom_compat_check: supported guest type:
hvm-3.0-x86_32p
domainbuilder: detail: xc_dom_compat_check: supported guest type:
hvm-3.0-x86_64
domainbuilder: detail: xc_dom_update_guest_p2m: dst 64bit, pages 0x400
domainbuilder: detail: clear_page: pfn 0x5f, mfn 0x130c5f
domainbuilder: detail: clear_page: pfn 0x5e, mfn 0x130c5e
domainbuilder: detail: xc_dom_pfn_to_ptr_retcount: domU mapping: pfn
0x5d+0x1 at 0x7fe015786000
domainbuilder: detail: start_info_x86_64: called
domainbuilder: detail: setup_hypercall_page: vaddr=0x3000 pfn=0x3
domainbuilder: detail: domain builder memory footprint
domainbuilder: detail:    allocated
domainbuilder: detail:       malloc             : 13384 bytes
domainbuilder: detail:       anon mmap          : 0 bytes
domainbuilder: detail:    mapped
domainbuilder: detail:       file mmap          : 65 kB
domainbuilder: detail:       domU mmap          : 396 kB
domainbuilder: detail: arch_setup_bootlate: shared_info: pfn 0x0, mfn
0xb6c8e
domainbuilder: detail: shared_info_x86_64: called
domainbuilder: detail: vcpu_x86_64: called
domainbuilder: detail: vcpu_x86_64: cr3: pfn 0x60 mfn 0x130c60
domainbuilder: detail: launch_vm: called, ctxt=0x7fe015787004
domainbuilder: detail: xc_dom_release: called
libxl: error: libxl_dom.c:37:libxl__domain_type: unable to get domain type
for domid=2
xl: unable to exec console client: No such file or directory
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: console child
[3855] exited with error status 1
########################################################

On Wed, Apr 4, 2018 at 9:01 AM, Ajay Garg <ajaygargnsit@gmail.com> wrote:

> Earnest request for help please.
>
> I have even confirmed that hardware-virtualization is enabled in CPU and
> BIOS.
> Also, when booted into Xen, following is seen fine :
>
> ########################################################
> ajay@Latitude-3480:~$ cat /sys/hypervisor/properties/capabilities
> xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p
> hvm-3.0-x86_64
> ########################################################
>
>
> However, running the hello-world app gives the same error :
>
> ########################################################
> root@Latitude-3480:/home/ajay/unikraft/apps/helloworld# xl create -c
> helloworld.cfg
> Parsing config from helloworld.cfg
> libxl: error: libxl_dom.c:37:libxl__domain_type: unable to get domain
> type for domid=1
> xl: unable to exec console client: No such file or directory
> libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: console
> child [3004] exited with error status 1
> ########################################################
>
> On Tue, Apr 3, 2018 at 2:06 PM, Ajay Garg <ajaygargnsit@gmail.com> wrote:
>
>> Help please ... unikraft seems to be the only option now to run
>> unikernels on ARM.
>> But before I reach there, I need to feel confident first on x86 (with
>> unikraft).
>>
>>
>> Thanks and Regards,
>> Ajay
>>
>
>
>
> --
> Regards,
> Ajay
>



-- 
Regards,
Ajay

--000000000000833d190568fe2590
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Following is the log, when starting the domain with verbos=
e-logging enabled :<br><br><br>############################################=
############<br>root@Latitude-3480:/home/ajay/unikraft/apps/helloworld# <b>=
xl -vv create -c helloworld.cfg</b> <br>Parsing config from helloworld.cfg<=
br>domainbuilder: detail: xc_dom_allocate: cmdline=3D&quot;(null)&quot;, fe=
atures=3D&quot;(null)&quot;<br>domainbuilder: detail: xc_dom_kernel_file: f=
ilename=3D&quot;./build/helloworld_xen-x86_64&quot;<br>domainbuilder: detai=
l: xc_dom_boot_xen_init: ver 4.6, caps xen-3.0-x86_64 xen-3.0-x86_32p hvm-3=
.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64 <br>domainbuilder: detail: xc_dom_=
parse_image: called<br>domainbuilder: detail: xc_dom_find_loader: trying mu=
ltiboot-binary loader ... <br>domainbuilder: detail: loader probe failed<br=
>domainbuilder: detail: xc_dom_find_loader: trying Linux bzImage loader ...=
 <br>domainbuilder: detail: xc_dom_probe_bzimage_kernel: kernel is not a bz=
Image<br>domainbuilder: detail: loader probe failed<br>domainbuilder: detai=
l: xc_dom_find_loader: trying ELF-generic loader ... <br>domainbuilder: det=
ail: loader probe OK<br>xc: detail: elf_parse_binary: phdr: paddr=3D0x0 mem=
sz=3D0x5a088<br>xc: detail: elf_parse_binary: memory: 0x0 -&gt; 0x5a088<br>=
xc: detail: elf_xen_parse_note: GUEST_OS =3D &quot;Unikraft&quot;<br>xc: de=
tail: elf_xen_parse_note: LOADER =3D &quot;generic&quot;<br>xc: detail: elf=
_xen_parse_note: HYPERCALL_PAGE =3D 0x3000<br>xc: detail: elf_xen_parse_not=
e: XEN_VERSION =3D &quot;xen-3.0&quot;<br>xc: detail: elf_xen_parse: using =
notes from SHT_NOTE section<br>xc: detail: elf_xen_addr_calc_check: VIRT_BA=
SE unset, using 0x0<br>xc: detail: elf_xen_addr_calc_check: ELF_PADDR_OFFSE=
T unset, using 0x0<br>xc: detail: elf_xen_addr_calc_check: addresses:<br>xc=
: detail:=C2=A0=C2=A0=C2=A0=C2=A0 virt_base=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 =3D 0x0<br>xc: detail:=C2=A0=C2=A0=C2=A0=C2=A0 elf_paddr_offse=
t =3D 0x0<br>xc: detail:=C2=A0=C2=A0=C2=A0=C2=A0 virt_offset=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 =3D 0x0<br>xc: detail:=C2=A0=C2=A0=C2=A0=C2=A0 virt_kstart=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0x0<br>xc: detail:=C2=A0=C2=A0=C2=A0=C2=
=A0 virt_kend=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0x5a088<br>xc: =
detail:=C2=A0=C2=A0=C2=A0=C2=A0 virt_entry=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 =3D 0x1000<br>xc: detail:=C2=A0=C2=A0=C2=A0=C2=A0 p2m_base=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =3D 0xffffffffffffffff<br>domainbuilde=
r: detail: xc_dom_parse_elf_kernel: xen-3.0-x86_64: 0x0 -&gt; 0x5a088<br>do=
mainbuilder: detail: xc_dom_mem_init: mem 4 MB, pages 0x400 pages, 4k each<=
br>domainbuilder: detail: xc_dom_mem_init: 0x400 pages<br>domainbuilder: de=
tail: xc_dom_boot_mem_init: called<br>domainbuilder: detail: x86_compat: gu=
est xen-3.0-x86_64, address size 64<br>domainbuilder: detail: xc_dom_build_=
image: called<br>domainbuilder: detail: xc_dom_alloc_segment:=C2=A0=C2=A0 k=
ernel=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 : 0x0 -&gt; 0x5b000=C2=A0 (pfn 0x=
0 + 0x5b pages)<br>domainbuilder: detail: xc_dom_pfn_to_ptr_retcount: domU =
mapping: pfn 0x0+0x5b at 0x7fe015720000<br>xc: detail: elf_load_binary: phd=
r 0 at 0x7fe015720000 -&gt; 0x7fe01572f15c<br>domainbuilder: detail: xc_dom=
_alloc_segment:=C2=A0=C2=A0 phys2mach=C2=A0=C2=A0=C2=A0 : 0x5b000 -&gt; 0x5=
d000=C2=A0 (pfn 0x5b + 0x2 pages)<br>domainbuilder: detail: xc_dom_pfn_to_p=
tr_retcount: domU mapping: pfn 0x5b+0x2 at 0x7fe01578e000<br>domainbuilder:=
 detail: xc_dom_alloc_page=C2=A0=C2=A0 :=C2=A0=C2=A0 start info=C2=A0=C2=A0=
 : 0x5d000 (pfn 0x5d)<br>domainbuilder: detail: xc_dom_alloc_page=C2=A0=C2=
=A0 :=C2=A0=C2=A0 xenstore=C2=A0=C2=A0=C2=A0=C2=A0 : 0x5e000 (pfn 0x5e)<br>=
domainbuilder: detail: xc_dom_alloc_page=C2=A0=C2=A0 :=C2=A0=C2=A0 console=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 : 0x5f000 (pfn 0x5f)<br>domainbuilder: detai=
l: nr_page_tables: 0x0000ffffffffffff/48: 0x0000000000000000 -&gt; 0x0000ff=
ffffffffff, 1 table(s)<br>domainbuilder: detail: nr_page_tables: 0x0000007f=
ffffffff/39: 0x0000000000000000 -&gt; 0x0000007fffffffff, 1 table(s)<br>dom=
ainbuilder: detail: nr_page_tables: 0x000000003fffffff/30: 0x00000000000000=
00 -&gt; 0x000000003fffffff, 1 table(s)<br>domainbuilder: detail: nr_page_t=
ables: 0x00000000001fffff/21: 0x0000000000000000 -&gt; 0x00000000003fffff, =
2 table(s)<br>domainbuilder: detail: xc_dom_alloc_segment:=C2=A0=C2=A0 page=
 tables=C2=A0 : 0x60000 -&gt; 0x65000=C2=A0 (pfn 0x60 + 0x5 pages)<br>domai=
nbuilder: detail: xc_dom_pfn_to_ptr_retcount: domU mapping: pfn 0x60+0x5 at=
 0x7fe015789000<br>domainbuilder: detail: xc_dom_alloc_page=C2=A0=C2=A0 :=
=C2=A0=C2=A0 boot stack=C2=A0=C2=A0 : 0x65000 (pfn 0x65)<br>domainbuilder: =
detail: xc_dom_build_image=C2=A0 : virt_alloc_end : 0x66000<br>domainbuilde=
r: detail: xc_dom_build_image=C2=A0 : virt_pgtab_end : 0x400000<br>domainbu=
ilder: detail: xc_dom_boot_image: called<br>domainbuilder: detail: arch_set=
up_bootearly: doing nothing<br>domainbuilder: detail: xc_dom_compat_check: =
supported guest type: xen-3.0-x86_64 &lt;=3D matches<br>domainbuilder: deta=
il: xc_dom_compat_check: supported guest type: xen-3.0-x86_32p<br>domainbui=
lder: detail: xc_dom_compat_check: supported guest type: hvm-3.0-x86_32<br>=
domainbuilder: detail: xc_dom_compat_check: supported guest type: hvm-3.0-x=
86_32p<br>domainbuilder: detail: xc_dom_compat_check: supported guest type:=
 hvm-3.0-x86_64<br>domainbuilder: detail: xc_dom_update_guest_p2m: dst 64bi=
t, pages 0x400<br>domainbuilder: detail: clear_page: pfn 0x5f, mfn 0x130c5f=
<br>domainbuilder: detail: clear_page: pfn 0x5e, mfn 0x130c5e<br>domainbuil=
der: detail: xc_dom_pfn_to_ptr_retcount: domU mapping: pfn 0x5d+0x1 at 0x7f=
e015786000<br>domainbuilder: detail: start_info_x86_64: called<br>domainbui=
lder: detail: setup_hypercall_page: vaddr=3D0x3000 pfn=3D0x3<br>domainbuild=
er: detail: domain builder memory footprint<br>domainbuilder: detail:=C2=A0=
=C2=A0=C2=A0 allocated<br>domainbuilder: detail:=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 malloc=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 : 13384 bytes<br>domainbuilder: detail:=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 anon mmap=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 : 0 bytes<br>domainbuilder: detail:=C2=A0=C2=A0=C2=A0 mapped<br>d=
omainbuilder: detail:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 file mmap=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 : 65 kB<br>domainbuilder: =
detail:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 domU mmap=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 : 396 kB<br>domainbuilder: detail: arch_s=
etup_bootlate: shared_info: pfn 0x0, mfn 0xb6c8e<br>domainbuilder: detail: =
shared_info_x86_64: called<br>domainbuilder: detail: vcpu_x86_64: called<br=
>domainbuilder: detail: vcpu_x86_64: cr3: pfn 0x60 mfn 0x130c60<br>domainbu=
ilder: detail: launch_vm: called, ctxt=3D0x7fe015787004<br>domainbuilder: d=
etail: xc_dom_release: called<br>libxl: error: libxl_dom.c:37:libxl__domain=
_type: unable to get domain type for domid=3D2<br>xl: unable to exec consol=
e client: No such file or directory<br>libxl: error: libxl_exec.c:118:libxl=
_report_child_exitstatus: console child [3855] exited with error status 1<b=
r>########################################################<br></div><div cl=
ass=3D"gmail_extra"><br><div class=3D"gmail_quote">On Wed, Apr 4, 2018 at 9=
:01 AM, Ajay Garg <span dir=3D"ltr">&lt;<a href=3D"mailto:ajaygargnsit@gmai=
l.com" target=3D"_blank">ajaygargnsit@gmail.com</a>&gt;</span> wrote:<br><b=
lockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px =
#ccc solid;padding-left:1ex"><div dir=3D"ltr"><div><div><div>Earnest reques=
t for help please.<br><br></div>I have even confirmed that hardware-virtual=
ization is enabled in CPU and BIOS.<br></div>Also, when booted into Xen, fo=
llowing is seen fine :<br><br>##############################<wbr>##########=
################<br>ajay@Latitude-3480:~$ cat /sys/hypervisor/properties/ca=
p<wbr>abilities <br>xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x=
86_32p hvm-3.0-x86_64<br>##############################<wbr>###############=
###########<br><br><br></div>However, running the hello-world app gives the=
 same error :<br><br>##############################<wbr>###################=
#######<br>root@Latitude-3480:/home/ajay/<wbr>unikraft/apps/helloworld# xl =
create -c helloworld.cfg <br>Parsing config from helloworld.cfg<br>libxl: e=
rror: libxl_dom.c:37:libxl__domain_<wbr>type: unable to get domain type for=
 domid=3D1<span class=3D""><br>xl: unable to exec console client: No such f=
ile or directory<br></span>libxl: error: libxl_exec.c:118:libxl_report_<wbr=
>child_exitstatus: console child [3004] exited with error status 1<br>#####=
#########################<wbr>##########################<br></div><div clas=
s=3D"gmail_extra"><div><div class=3D"h5"><br><div class=3D"gmail_quote">On =
Tue, Apr 3, 2018 at 2:06 PM, Ajay Garg <span dir=3D"ltr">&lt;<a href=3D"mai=
lto:ajaygargnsit@gmail.com" target=3D"_blank">ajaygargnsit@gmail.com</a>&gt=
;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 =
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div>Hel=
p please ... unikraft seems to be the only option now to run unikernels on =
ARM.<br></div>But before I reach there, I need to feel confident first on x=
86 (with unikraft).<br><div class=3D"gmail_extra"><br clear=3D"all"><br><di=
v class=3D"m_3408957258325873683m_-768295406711455949gmail_signature" data-=
smartmail=3D"gmail_signature">Thanks and Regards,<br>Ajay<br></div>
</div></div>
</blockquote></div><br><br clear=3D"all"><br></div></div><span class=3D"HOE=
nZb"><font color=3D"#888888">-- <br><div class=3D"m_3408957258325873683gmai=
l_signature" data-smartmail=3D"gmail_signature">Regards,<br>Ajay<br></div>
</font></span></div>
</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature" data-smartmail=3D"gmail_signature">Regards,<br>Ajay<br></div>
</div>

--000000000000833d190568fe2590--


--===============1403800715659095899==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============1403800715659095899==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 04 09:35:43 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 09:35:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3epR-0000RZ-A2; Wed, 04 Apr 2018 09:35:41 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=3ptd=gz=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3epP-0000RQ-7i
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 09:35:39 +0000
X-Inumbo-ID: 71c11e72-37eb-11e8-9728-bc764e045a96
Received: from mail-wm0-x22f.google.com (unknown [2a00:1450:400c:c09::22f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 71c11e72-37eb-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 11:35:00 +0200 (CEST)
Received: by mail-wm0-x22f.google.com with SMTP id r131so40590018wmb.2;
 Wed, 04 Apr 2018 02:35:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:from:date:message-id:subject:to;
 bh=moar02QZgHLvPizdmR7sIM9ToimCbxvpV6Ps/VzK8aI=;
 b=dOpDwjkRsGGqkwasdJbX8V3JnBrBMgsz3ZADOKHqP7exqWr32wOePW9TbyqnF3EB9k
 7/XBb99jV6RIkqEY/Xj1ah6l/RAJxHDb7EENglHG/1aMFtv5u7Z2zMY0jv2VlXxm0d6m
 ByED1MMrFK6EGlxAv/CDkLABWCk4xtbNreviFvDMidnQ7QG60Jq6E1AYPYWjePiPmIXl
 CKs1xAVy0JJ0OqCLCmGcFavit25dpzTAYU2qh+AIGXc7SxMEZQXH4NHwARxTlkxbhr61
 c1vPoMkeQg27wegEsFmBrLsoZx88F0Rbc8pAzw8o6D053BxP8+/+AtPKsTS3nfx19KSJ
 nvGg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
 bh=moar02QZgHLvPizdmR7sIM9ToimCbxvpV6Ps/VzK8aI=;
 b=S++qskfQAY2q/8cD/K3Hejgru610b3hTqs0Ga9Vu6Y3Sl6KSRVMFfAEdWJChJ0FkKJ
 c1dL4Txwqq6xRumOqPTMZroZMPkD4jYNBrCzxVKIGpbpwiu84XAHNeAva416hb7YPIG1
 LTSDjY2rcDwB1JAIDxTEuuYiDhwI31PoAdOzhiPCTbPqAz6UmAhyXTo9qKnVLawVTtEP
 A9BJqyE8SetkS8vlwEaOBqhuNEDUgouHywqu2i+/wtXtud1rApY+pN2dry6X9tz6RE7m
 jJi0lEf//SDFYFHHJWob9lZuvIbUodKz5mnUx8QYRVRQmgz4YAd8lFEYfngqAbh2KL3q
 0jCw==
X-Gm-Message-State: ALQs6tChsAiSKa9FwdyyqcGCYpT9XLNidMTNJ0Jj2z/obk/SqQh/a7Ou
 q92T+vmXJwy59efTd6sEXHhPCcZCgVG6hvg2ky5gfw==
X-Google-Smtp-Source: AIpwx4+YWIEWKs3ALhFjsG5A5wA7LgF+0AOawfkFabm0OtnFuk6ZP9JsTIfq2HKDsHJfyiLpSGcL5KMdzUCr6sI1Nus=
X-Received: by 10.46.131.86 with SMTP id l22mr8251601ljh.82.1522834535556;
 Wed, 04 Apr 2018 02:35:35 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Wed, 4 Apr 2018 02:35:35 -0700 (PDT)
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Wed, 4 Apr 2018 15:05:35 +0530
Message-ID: <CAHP4M8WiOD+RhbX2Eqk8z+1g=i0pcQNmJqM6X_hQ_u=K+A3ryw@mail.gmail.com>
To: xen-devel@lists.xenproject.org, minios-devel@lists.xenproject.org
Subject: [Minios-devel] Xen-4.10 Domain-0 crashes at bootup
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U2luY2UgSSBmYWlsZWQgdG8gZ2V0IGEgc2luZ2xlIHJlcGx5IG9uIG15IG9yaWdpbmFsIGlzc3Vl
IGFzIHBlcgpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL2FyY2hpdmVzL2h0bWwvbWluaW9z
LWRldmVsLzIwMTgtMDQvbXNnMDAwMDQuaHRtbCwKc28gSSBoYWQgbm8gb3B0aW9uIGJ1dCB0byB0
cnkgb24gYSBuZXdlciB4ZW4gdmVyc2lvbi4KClNvLCBJIGNyZWF0ZWQgIGEgIG5ldyB2aXJ0dWFs
Ym94LWd1ZXN0LCBhbmQgZm9sbG93ZWQgdGhlIHN0ZXBzIGFzIHBlcgpodHRwczovL2Jsb2cud2Vy
azIxLmRlL2VuLzIwMTgvMDIvMDgvYnVpbGQteGVuLWh5cGVydmlzb3ItNDEwLWFuZC14ZW4tdG9v
bHMtdWJ1bnR1LTE2MDQtcHZoCgpOb3csIHdoZW4gc3RhcnQgdGhlIGd1ZXN0IHdpdGggWGVuLWh5
cGVydmlzb3IgZW5hYmxlZCwgaXQgZG9lcyBub3QgY29tZSB1cC4KSSB0b29rIHNlcmlhbC1sb2dz
IGF0IGJvb3R1cCB0aW1lLCB0aGV5IGFyZSBhcyBmb2xsb3dzIDoKCiMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjCiBYZW4gNC4xMC4xLXByZQooWEVOKSBYZW4gdmVyc2lvbiA0LjEwLjEtcHJlIChhamF5QCkg
KGdjYyAoVWJ1bnR1CjUuNC4wLTZ1YnVudHUxfjE2LjA0LjkpIDUuNC4wIDIwMTYwNjA5KSBkZWJ1
Zz1uICBXZWQgQXByICA0IDEyOjU0OjU4CklTVCAyMDE4CihYRU4pIExhdGVzdCBDaGFuZ2VTZXQ6
IFR1ZSBNYXIgMjAgMTQ6MjM6MTQgMjAxOCArMDEwMCBnaXQ6MGY5Mjk2OAooWEVOKSBCb290bG9h
ZGVyOiBHUlVCIDIuMDJ+YmV0YTItMzZ1YnVudHUzLjE3CihYRU4pIENvbW1hbmQgbGluZTogcGxh
Y2Vob2xkZXIgY29uc29sZT1jb20xIGNvbTE9MTE1MjAwLDhuMQpsb2dsdmw9YWxsIGd1ZXN0X2xv
Z2x2bD1hbGwKKFhFTikgWGVuIGltYWdlIGxvYWQgYmFzZSBhZGRyZXNzOiAwCihYRU4pIFZpZGVv
IGluZm9ybWF0aW9uOgooWEVOKSAgVkdBIGlzIHRleHQgbW9kZSA4MHgyNSwgZm9udCA4eDE2CihY
RU4pIERpc2MgaW5mb3JtYXRpb246CihYRU4pICBGb3VuZCAxIE1CUiBzaWduYXR1cmVzCihYRU4p
ICBGb3VuZCAxIEVERCBpbmZvcm1hdGlvbiBzdHJ1Y3R1cmVzCihYRU4pIFhlbi1lODIwIFJBTSBt
YXA6CihYRU4pICAwMDAwMDAwMDAwMDAwMDAwIC0gMDAwMDAwMDAwMDA5ZmMwMCAodXNhYmxlKQoo
WEVOKSAgMDAwMDAwMDAwMDA5ZmMwMCAtIDAwMDAwMDAwMDAwYTAwMDAgKHJlc2VydmVkKQooWEVO
KSAgMDAwMDAwMDAwMDBmMDAwMCAtIDAwMDAwMDAwMDAxMDAwMDAgKHJlc2VydmVkKQooWEVOKSAg
MDAwMDAwMDAwMDEwMDAwMCAtIDAwMDAwMDAwYmZmZjAwMDAgKHVzYWJsZSkKKFhFTikgIDAwMDAw
MDAwYmZmZjAwMDAgLSAwMDAwMDAwMGMwMDAwMDAwIChBQ1BJIGRhdGEpCihYRU4pICAwMDAwMDAw
MGZlYzAwMDAwIC0gMDAwMDAwMDBmZWMwMTAwMCAocmVzZXJ2ZWQpCihYRU4pICAwMDAwMDAwMGZl
ZTAwMDAwIC0gMDAwMDAwMDBmZWUwMTAwMCAocmVzZXJ2ZWQpCihYRU4pICAwMDAwMDAwMGZmZmMw
MDAwIC0gMDAwMDAwMDEwMDAwMDAwMCAocmVzZXJ2ZWQpCihYRU4pIE5ldyBYZW4gaW1hZ2UgYmFz
ZSBhZGRyZXNzOiAweGJmODAwMDAwCihYRU4pIFN5c3RlbSBSQU06IDMwNzFNQiAoMzE0NTI3NmtC
KQooWEVOKSBBQ1BJOiBSU0RQIDAwMEUwMDAwLCAwMDI0IChyMiBWQk9YICApCihYRU4pIEFDUEk6
IFhTRFQgQkZGRjAwMzAsIDAwM0MgKHIxIFZCT1ggICBWQk9YWFNEVCAgICAgICAgMSBBU0wgICAg
ICAgIDYxKQooWEVOKSBBQ1BJOiBGQUNQIEJGRkYwMEYwLCAwMEY0IChyNCBWQk9YICAgVkJPWEZB
Q1AgICAgICAgIDEgQVNMICAgICAgICA2MSkKKFhFTikgQUNQSTogRFNEVCBCRkZGMDQ3MCwgMjFG
RiAocjIgVkJPWCAgIFZCT1hCSU9TICAgICAgICAyIElOVEwgMjAxNjAxMDgpCihYRU4pIEFDUEk6
IEZBQ1MgQkZGRjAyMDAsIDAwNDAKKFhFTikgQUNQSTogQVBJQyBCRkZGMDI0MCwgMDA1NCAocjIg
VkJPWCAgIFZCT1hBUElDICAgICAgICAxIEFTTCAgICAgICAgNjEpCihYRU4pIEFDUEk6IFNTRFQg
QkZGRjAyQTAsIDAxQ0MgKHIxIFZCT1ggICBWQk9YQ1BVVCAgICAgICAgMiBJTlRMIDIwMTYwMTA4
KQooWEVOKSBObyBOVU1BIGNvbmZpZ3VyYXRpb24gZm91bmQKKFhFTikgRmFraW5nIGEgbm9kZSBh
dCAwMDAwMDAwMDAwMDAwMDAwLTAwMDAwMDAwYmZmZjAwMDAKKFhFTikgRG9tYWluIGhlYXAgaW5p
dGlhbGlzZWQKKFhFTikgQ1BVIFZlbmRvcjogSW50ZWwsIEZhbWlseSA2ICgweDYpLCBNb2RlbCAx
NDIgKDB4OGUpLCBTdGVwcGluZyA5CihyYXcgMDAwODA2ZTkpCihYRU4pIGZvdW5kIFNNUCBNUC10
YWJsZSBhdCAwMDA5ZmZmMAooWEVOKSBETUkgMi41IHByZXNlbnQuCihYRU4pIFVzaW5nIEFQSUMg
ZHJpdmVyIGRlZmF1bHQKKFhFTikgQUNQSTogUE0tVGltZXIgSU8gUG9ydDogMHg0MDA4ICgzMiBi
aXRzKQooWEVOKSBBQ1BJOiBTTEVFUCBJTkZPOiBwbTF4X2NudFsxOjQwMDQsMTowXSwgcG0xeF9l
dnRbMTo0MDAwLDE6MF0KKFhFTikgQUNQSTogICAgICAgICAgICAgd2FrZXVwX3ZlY1tiZmZmMDIw
Y10sIHZlY19zaXplWzIwXQooWEVOKSBBQ1BJOiBMb2NhbCBBUElDIGFkZHJlc3MgMHhmZWUwMDAw
MAooWEVOKSBBQ1BJOiBMQVBJQyAoYWNwaV9pZFsweDAwXSBsYXBpY19pZFsweDAwXSBlbmFibGVk
KQooWEVOKSBBQ1BJOiBJT0FQSUMgKGlkWzB4MDFdIGFkZHJlc3NbMHhmZWMwMDAwMF0gZ3NpX2Jh
c2VbMF0pCihYRU4pIElPQVBJQ1swXTogYXBpY19pZCAxLCB2ZXJzaW9uIDMyLCBhZGRyZXNzIDB4
ZmVjMDAwMDAsIEdTSSAwLTIzCihYRU4pIEFDUEk6IElOVF9TUkNfT1ZSIChidXMgMCBidXNfaXJx
IDAgZ2xvYmFsX2lycSAyIGRmbCBkZmwpCihYRU4pIEFDUEk6IElOVF9TUkNfT1ZSIChidXMgMCBi
dXNfaXJxIDkgZ2xvYmFsX2lycSA5IGhpZ2ggbGV2ZWwpCihYRU4pIEFDUEk6IElSUTAgdXNlZCBi
eSBvdmVycmlkZS4KKFhFTikgQUNQSTogSVJRMiB1c2VkIGJ5IG92ZXJyaWRlLgooWEVOKSBBQ1BJ
OiBJUlE5IHVzZWQgYnkgb3ZlcnJpZGUuCihYRU4pIEVuYWJsaW5nIEFQSUMgbW9kZTogIEZsYXQu
ICBVc2luZyAxIEkvTyBBUElDcwooWEVOKSBFUlNUIHRhYmxlIHdhcyBub3QgZm91bmQKKFhFTikg
VXNpbmcgQUNQSSAoTUFEVCkgZm9yIFNNUCBjb25maWd1cmF0aW9uIGluZm9ybWF0aW9uCihYRU4p
IFNNUDogQWxsb3dpbmcgMSBDUFVzICgwIGhvdHBsdWcgQ1BVcykKKFhFTikgSVJRIGxpbWl0czog
MjQgR1NJLCAxODQgTVNJL01TSS1YCihYRU4pIE5vdCBlbmFibGluZyB4MkFQSUM6IGRlcGVuZHMg
b24gaW9tbXVfc3VwcG9ydHNfZWltLgooWEVOKSB4c3RhdGU6IHNpemU6IDB4NDQwIGFuZCBzdGF0
ZXM6IDB4NwooWEVOKSBDUFUwOiBObyBNQ0UgYmFua3MgcHJlc2VudC4gTWFjaGluZSBjaGVjayBz
dXBwb3J0IGRpc2FibGVkCihYRU4pIFNwZWN1bGF0aXZlIG1pdGlnYXRpb24gZmFjaWxpdGllczoK
KFhFTikgICBDb21waWxlZC1pbiBzdXBwb3J0OiBJTkRJUkVDVF9USFVOSwooWEVOKSBCVEkgbWl0
aWdhdGlvbnM6IFRodW5rIFJFVFBPTElORSwgT3RoZXJzOiBSU0JfTkFUSVZFIFJTQl9WTUVYSVQK
KFhFTikgVXNpbmcgc2NoZWR1bGVyOiBTTVAgQ3JlZGl0IFNjaGVkdWxlciAoY3JlZGl0KQooWEVO
KSBQbGF0Zm9ybSB0aW1lciBpcyAzLjU3OU1IeiBBQ1BJIFBNIFRpbWVyCihYRU4pIERldGVjdGVk
IDI3MTIuMDM1IE1IeiBwcm9jZXNzb3IuCihYRU4pIEluaXRpbmcgbWVtb3J5IHNoYXJpbmcuCihY
RU4pIGFsdCB0YWJsZSBmZmZmODJkMDgwNDIxNzk4IC0+IGZmZmY4MmQwODA0MjMyNDQKKFhFTikg
SS9PIHZpcnR1YWxpc2F0aW9uIGRpc2FibGVkCihYRU4pIG5yX3NvY2tldHM6IDEKKFhFTikgRU5B
QkxJTkcgSU8tQVBJQyBJUlFzCihYRU4pICAtPiBVc2luZyBuZXcgQUNLIG1ldGhvZAooWEVOKSAu
LlRJTUVSOiB2ZWN0b3I9MHhGMCBhcGljMT0wIHBpbjE9MiBhcGljMj0tMSBwaW4yPS0xCihYRU4p
IEFsbG9jYXRlZCBjb25zb2xlIHJpbmcgb2YgMTYgS2lCLgooWEVOKSBCcm91Z2h0IHVwIDEgQ1BV
cwooWEVOKSBidWlsZC1pZDogMDczNDA1MDgwOWUwY2I5ZjUyZTY1MzIyYTBkMzkxMWQwODJlMzQ4
YgooWEVOKSBDUFVJRExFOiBkaXNhYmxlZCBkdWUgdG8gbm8gSFBFVC4gRm9yY2UgZW5hYmxlIHdp
dGggJ2NwdWlkbGUnLgooWEVOKSBBQ1BJIHNsZWVwIG1vZGVzOiBTMwooWEVOKSBWUE1VOiBkaXNh
YmxlZAooWEVOKSB4ZW5vcHJvZjogSW5pdGlhbGl6YXRpb24gZmFpbGVkLiBJbnRlbCBwcm9jZXNz
b3IgZmFtaWx5IDYgbW9kZWwKMTQyIGlzIG5vdCBzdXBwb3J0ZWQKKFhFTikgRG9tMCBoYXMgbWF4
aW11bSAyMDggUElSUXMKKFhFTikgTlggKEV4ZWN1dGUgRGlzYWJsZSkgcHJvdGVjdGlvbiBhY3Rp
dmUKKFhFTikgKioqIExPQURJTkcgRE9NQUlOIDAgKioqCihYRU4pICBYZW4gIGtlcm5lbDogNjQt
Yml0LCBsc2IsIGNvbXBhdDMyCihYRU4pICBEb20wIGtlcm5lbDogNjQtYml0LCBQQUUsIGxzYiwg
cGFkZHIgMHgxMDAwMDAwIC0+IDB4Mjk1NzAwMAooWEVOKSBQSFlTSUNBTCBNRU1PUlkgQVJSQU5H
RU1FTlQ6CihYRU4pICBEb20wIGFsbG9jLjogICAwMDAwMDAwMGI0MDAwMDAwLT4wMDAwMDAwMGI4
MDAwMDAwICg3MTUzMDkgcGFnZXMKdG8gYmUgYWxsb2NhdGVkKQooWEVOKSAgSW5pdC4gcmFtZGlz
azogMDAwMDAwMDBiYzkxNTAwMC0+MDAwMDAwMDBiZjdmZmVkOQooWEVOKSBWSVJUVUFMIE1FTU9S
WSBBUlJBTkdFTUVOVDoKKFhFTikgIExvYWRlZCBrZXJuZWw6IGZmZmZmZmZmODEwMDAwMDAtPmZm
ZmZmZmZmODI5NTcwMDAKKFhFTikgIEluaXQuIHJhbWRpc2s6IDAwMDAwMDAwMDAwMDAwMDAtPjAw
MDAwMDAwMDAwMDAwMDAKKFhFTikgIFBoeXMtTWFjaCBtYXA6IDAwMDAwMDgwMDAwMDAwMDAtPjAw
MDAwMDgwMDA1YWM4YzAKKFhFTikgIFN0YXJ0IGluZm86ICAgIGZmZmZmZmZmODI5NTcwMDAtPmZm
ZmZmZmZmODI5NTc0YjQKKFhFTikgIFhlbnN0b3JlIHJpbmc6IDAwMDAwMDAwMDAwMDAwMDAtPjAw
MDAwMDAwMDAwMDAwMDAKKFhFTikgIENvbnNvbGUgcmluZzogIDAwMDAwMDAwMDAwMDAwMDAtPjAw
MDAwMDAwMDAwMDAwMDAKKFhFTikgIFBhZ2UgdGFibGVzOiAgIGZmZmZmZmZmODI5NTgwMDAtPmZm
ZmZmZmZmODI5NzEwMDAKKFhFTikgIEJvb3Qgc3RhY2s6ICAgIGZmZmZmZmZmODI5NzEwMDAtPmZm
ZmZmZmZmODI5NzIwMDAKKFhFTikgIFRPVEFMOiAgICAgICAgIGZmZmZmZmZmODAwMDAwMDAtPmZm
ZmZmZmZmODJjMDAwMDAKKFhFTikgIEVOVFJZIEFERFJFU1M6IGZmZmZmZmZmODI0YTQxODAKKFhF
TikgRG9tMCBoYXMgbWF4aW11bSAxIFZDUFVzCihYRU4pIEluaXRpYWwgbG93IG1lbW9yeSB2aXJx
IHRocmVzaG9sZCBzZXQgYXQgMHg0MDAwIHBhZ2VzLgooWEVOKSBTY3J1YmJpbmcgRnJlZSBSQU0g
b24gMSBub2RlcyB1c2luZyAxIENQVXMKKFhFTikgLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uZG9u
ZS4KKFhFTikgU3RkLiBMb2dsZXZlbDogQWxsCihYRU4pIEd1ZXN0IExvZ2xldmVsOiBBbGwKKFhF
TikgKioqIFNlcmlhbCBpbnB1dCAtPiBET00wICh0eXBlICdDVFJMLWEnIHRocmVlIHRpbWVzIHRv
IHN3aXRjaAppbnB1dCB0byBYZW4pCihYRU4pIEZyZWVkIDQ2OGtCIGluaXQgbWVtb3J5Cm1hcHBp
bmcga2VybmVsIGludG8gcGh5c2ljYWwgbWVtb3J5CmFib3V0IHRvIGdldCBzdGFydGVkLi4uCihY
RU4pIGQwdjAgVW5oYW5kbGVkIGludmFsaWQgb3Bjb2RlIGZhdWx0L3RyYXAgWyM2LCBlYz1mZmZm
ZmZmZl0KKFhFTikgZG9tYWluX2NyYXNoX3N5bmMgY2FsbGVkIGZyb20gZW50cnkuUzogZmF1bHQg
YXQgZmZmZjgyZDA4MDM1NTAxZgp4ODZfNjQvZW50cnkuUyNjcmVhdGVfYm91bmNlX2ZyYW1lKzB4
MTM1LzB4MTY2CihYRU4pIERvbWFpbiAwICh2Y3B1IzApIGNyYXNoZWQgb24gY3B1IzA6CihYRU4p
IC0tLS1bIFhlbi00LjEwLjEtcHJlICB4ODZfNjQgIGRlYnVnPW4gICBOb3QgdGFpbnRlZCBdLS0t
LQooWEVOKSBDUFU6ICAgIDAKKFhFTikgUklQOiAgICBlMDMzOls8ZmZmZmZmZmY4MjRiNDljZD5d
CihYRU4pIFJGTEFHUzogMDAwMDAwMDAwMDAwMDI4NiAgIEVNOiAxICAgQ09OVEVYVDogcHYgZ3Vl
c3QgKGQwdjApCihYRU4pIHJheDogMDAwMDAwMDAwMDAwMDAyOSAgIHJieDogMDAwMDAwMDAwMDAw
MDAwYSAgIHJjeDogZmZmZmZmZmY4MjI2MTFjOAooWEVOKSByZHg6IDAwMDAwMDAwMDAwMDAwMDAg
ICByc2k6IDAwMDAwMDAwMDAwMDAwMDAgICByZGk6IDAwMDAwMDAwMDAwMDAwMDAKKFhFTikgcmJw
OiBmZmZmZmZmZjgyMjAzZTAwICAgcnNwOiBmZmZmZmZmZjgyMjAzZDY4ICAgcjg6ICA2NTc2NjE2
NTZjMjA2NzZlCihYRU4pIHI5OiAgMDAwMDAwMDAwMDAwMDAwNyAgIHIxMDogZmZmZmZmZmY4MjIw
M2Q4NCAgIHIxMTogMDAwMDAwMDAwMDAwMDAyOQooWEVOKSByMTI6IDAwMDAwMDAwMDAwMDAxMDAg
ICByMTM6IDAwMDAwMDAwMDAwMDAzNDAgICByMTQ6IDAwMDAwMDAwMDAwMDA0NDAKKFhFTikgcjE1
OiBmZmZmZmZmZjgyMjAzZGMwICAgY3IwOiAwMDAwMDAwMDgwMDUwMDMzICAgY3I0OiAwMDAwMDAw
MDAwMDQwNmEwCihYRU4pIGNyMzogMDAwMDAwMDBiNjIwYTAwMCAgIGNyMjogMDAwMDAwMDAwMDAw
MDAwMAooWEVOKSBmc2I6IDAwMDAwMDAwMDAwMDAwMDAgICBnc2I6IGZmZmZmZmZmODI0ODAwMDAg
ICBnc3M6IDAwMDAwMDAwMDAwMDAwMDAKKFhFTikgZHM6IDAwMDAgICBlczogMDAwMCAgIGZzOiAw
MDAwICAgZ3M6IDAwMDAgICBzczogZTAyYiAgIGNzOiBlMDMzCihYRU4pIEd1ZXN0IHN0YWNrIHRy
YWNlIGZyb20gcnNwPWZmZmZmZmZmODIyMDNkNjg6CihYRU4pICAgIGZmZmZmZmZmODIyNjExYzgg
MDAwMDAwMDAwMDAwMDAyOSBmZmZmZmZmZjgyNGI0OWNkIDAwMDAwMDAxMDAwMGUwMzAKKFhFTikg
ICAgMDAwMDAwMDAwMDAxMDA4NiBmZmZmZmZmZjgyMjAzZGEwIDAwMDAwMDAwMDAwMGUwMmIgMDAw
MDA0NDAwMDAwMDAwNwooWEVOKSAgICAwMDAwMDAwMDAwMDAwMzQwIDAwMDAwMDAwMDAwMDAwMjAg
ZmZmZmZmZmY4MjIwM2RmMCAwMDAwMDI0MDAwMDAwMTAwCihYRU4pICAgIDAwMDAwMDAwMDAwMDAw
MDAgYTZmNmEyOTJhNmY2YTIwMCBmZmZmZmZmZjgyMjAzZTI4IGZmZmZmZmZmODFlMDhkODAKKFhF
TikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAg
ZmZmZmZmZmY4MjIwM2U2MAooWEVOKSAgICBmZmZmZmZmZjgyNGI0MzQyIGZmZmZmZmZmODIyMDNl
MjggZmZmZmZmZmY4MTAxZjJhNiBmZmZmZmZmZjgyMjAzZTI4CihYRU4pICAgIGZmZmZmZmZmODEw
NDA5MDAgZmZmZmZmZmY4MTA0MGFlMiAwMDAwMDgwMDAwMDgwNmU5IDA3ODlkYmY1ZGVmODIyMDMK
KFhFTikgICAgYTZmNmEyOTJhNmY2YTIwMCAwMDAwMDAwMDAwMDAwMDE4IGZmZmZmZmZmODIyMDNl
NzggZmZmZmZmZmY4MjIwM2U4OAooWEVOKSAgICBmZmZmZmZmZjgyNGI1NmIwIGZmZmZmZmZmODI0
YjU2YjAgMDAwMDAwMDAwMTAwMDAwMCBmZmZmZmZmZjgyMjAzZjAwCihYRU4pICAgIGZmZmZmZmZm
ODIyMDNlZjAgZmZmZmZmZmY4MjRiMDdhYSBmZmZmZmZmZjAwMDAwMDEwIGZmZmZmZmZmODIyMDNm
MDAKKFhFTikgICAgZmZmZmZmZmY4MjIwM2ViOCBhNmY2YTI5MmE2ZjZhMjAwIGZmZmZmZmZmODIy
MDNlNjggYTZmNmEyOTJhNmY2YTIwMAooWEVOKSAgICBmZmZmZmZmZjgyMjAzZjYwIGZmZmZmZmZm
ODIyMDNmNWMgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwCihYRU4pICAgIDAwMDAw
MDAwMDAwMDAwMDAgZmZmZmZmZmY4MjIwM2YzMCBmZmZmZmZmZjgyNGE0ZDBjIGE2ZjZhMjkyYTZm
NmEyMDAKKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCBmZmZmZmZmZjgyMjAzZjYwIGZmZmZmZmZm
ODIyMDNmNWMgMDAwMDAwMDAwMDAwMDAwMAooWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIGZmZmZm
ZmZmODIyMDNmNDAgZmZmZmZmZmY4MjRhNDJkNSBmZmZmZmZmZjgyMjAzZmY4CihYRU4pICAgIGZm
ZmZmZmZmODI0YWQxNDUgMDAwODA2ZTkwMDAwMDAwMCAwMDAwMDAwMTAwMDAwODAwIDAzMDAwMDAx
MDAwMDAwMzIKKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwNSAwMDAwMDAwMDAwMDAwMDAwIDAwMDAw
MDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMAooWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIDAw
MDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwCihYRU4pICAg
IDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAw
MDAwMDAwMDAwMDAKKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAw
MDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMAooWEVOKSBIYXJkd2FyZSBEb20wIGNyYXNo
ZWQ6IHJlYm9vdGluZyBtYWNoaW5lIGluIDUgc2Vjb25kcy4KKFhFTikgUmVzZXR0aW5nIHdpdGgg
QUNQSSBNRU1PUlkgb3IgSS9PIFJFU0VUX1JFRy4KIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCgpPbmUg
dGhpbmcgaXMgZm9yIHN1cmUsIHRoYXQgdGhlcmUgaXMgbm8gdmlydHVhbGl6YXRpb24tcmVsYXRl
ZCBpc3N1ZSwKYXMgeGVuLWRvbTAgaXMgc3RhcnRpbmcgaW4gUFYgbW9kZSBvbmx5LgoKV2lsbCBi
ZSB0aGFua2Z1bCB0byBnZXQgc29tZSBoZWxwIG9uIHN0ZXBzIHRvIGZpeCB0aGUgY3Jhc2gsCgoK
VGhhbmtzIGFuZCBSZWdhcmRzLApBamF5CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4v
bGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 09:46:30 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 09:46:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3ezt-0001S4-2p; Wed, 04 Apr 2018 09:46:29 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3ezr-0001RB-KT
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 09:46:27 +0000
X-Inumbo-ID: f37ce9dd-37ec-11e8-9728-bc764e045a96
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id f37ce9dd-37ec-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 11:45:48 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id C290BF200F;
 Wed,  4 Apr 2018 11:46:22 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 5HihKcmhmRRx; Wed,  4 Apr 2018 11:46:22 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id 99575F200C;
 Wed,  4 Apr 2018 11:46:16 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 11:46:16 +0200
To: Ajay Garg <ajaygargnsit@gmail.com>, Wei Chen <Wei.Chen@arm.com>
References: <CAHP4M8Xhau9VS3Mi_7VwYhosP7n5S9brgsrRxfwFj3R8rrDxJg@mail.gmail.com>
 <DB3PR08MB010781EFD85A6B572FE1428D9EA40@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <CAHP4M8UgQgrZM9ZsmrYLx61mb-EX5oe3HPF0zHwfmx=jaB7WrQ@mail.gmail.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <d4af1c4c-ec08-adf3-e740-aad9cd1fb344@neclab.eu>
Date: Wed, 4 Apr 2018 11:46:15 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8UgQgrZM9ZsmrYLx61mb-EX5oe3HPF0zHwfmx=jaB7WrQ@mail.gmail.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] Some queries regarding Unikraft on x86/arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGV5IEFqYXksCgpPbiAwNC4wNC4yMDE4IDA1OjA1LCBBamF5IEdhcmcgd3JvdGU6Cj4gVGhhbmtz
IFdlaSBmb3IgdGhlIGNyaXNwIHJlcGx5ICEhCj4gV2FpdGluZyBmb3IgU2ltb24ncyBpbnNpZ2h0
cyBvbiBVbmlrcmFmdC14ODYgb24gWGVuIDopCj4gCj4gVGhhbmtzIGFuZCBSZWdhcmRzLAo+IEFq
YXkKPiAKPiBPbiBXZWQsIEFwciA0LCAyMDE4IGF0IDg6MDQgQU0sIFdlaSBDaGVuIDxXZWkuQ2hl
bkBhcm0uY29tIAo+IDxtYWlsdG86V2VpLkNoZW5AYXJtLmNvbT4+IHdyb3RlOgo+IAo+ICAgICBI
aSBBamF5LF9fX18KPiAKPiAgICAgX18gX18KPiAKPiAgICAgPiBhKSBVbmlrcmFmdCAoZm9yIGFy
bTMyKSBpcyBidWlsdCB1c2luZyBIVk0gbW9kZSwgYW5kIHdpbGwgX29ubHlfCj4gICAgIHdvcmsg
d2l0aCBwcm9jZXNzb3JzIHRoYXQgaGF2ZSBoYXJkd2FyZS12aXJ0dWFsaXphdGlvbiBlbmFibGVk
LAo+ICAgICByaWdodD9fX19fCj4gCj4gICAgIF9fIF9fCj4gCj4gICAgIFllcywgdGhhdOKAmXMg
cmlnaHQuIEN1cnJlbnRseSwgZm9yIGFybTMyLXVuaWtyYWZ0LCB3ZSBwbGFuIHRvIHN1cHBvcnQK
PiAgICAgWGVuIGFuZCBMaW51eC9LVk0uX19fXwo+IAo+ICAgICBCb3RoIG9mIHRoZW0gbmVlZCBo
YXJkd2FyZSB2aXJ0dWFsaXphdGlvbiBlbmFibGVkIHByb2Nlc3NvcnMuX19fXwoKQ29ycmVjdC4g
Oy0pCgo+IAo+ICAgICBfXyBfXwo+IAo+ICAgICA+IGIpIFVuaWtyYWZ0IChmb3IgeDg2KSBhbHNv
IHVzZXMgSFZNIG1vZGUsIGFuZCB3b3JrcyBfb25seV8gd2l0aCBwcm9jZXNzb3JzIHRoYXQgaGF2
ZSBoYXJkd2FyZS12aXJ0dWFsaXphdGlvbiBlbmFibGVkLCByaWdodD9fX19fCj4gCj4gICAgID4g
T3IgVW5pa3JhZnQgd29ya3MvY2FuLXdvcmsgdXNpbmcgUFYgbW9kZT9fX19fCj4gCj4gICAgIF9f
IF9fCj4gCj4gICAgIFVuaWtyYWZ0LXg4NiBvZiBLVk0gcGxhdGZvcm0gdXNlcyBIVk0gbW9kZSwg
aXQgc2hvdWxkIHJlcXVpcmUKPiAgICAgaGFyZHdhcmUgdmlydHVhbGl6YXRpb25fX19fCj4gCj4g
ICAgIGVuYWJsZWQgcHJvY2Vzc29ycy4gQnV0IGl0IHNlZW1zIHRoZSBVbmlrcmFmdC14ODYgb2Yg
WGVuIHBsYXRmb3JtIGlzCj4gICAgIHVzaW5nIFBWLW1vZGUuX19fXwo+IAo+ICAgICBJIGFtIG5v
dCBzdXJlIGFib3V0IGl0LCBidXQgSSB0aGluayBTaW1vbiBjb3VsZCBnaXZlIHlvdSBhIGNsZWFy
Cj4gICAgIGFuc3dlci5fX19fCgpBbHNvIGNvcnJlY3QuIFVuaWtyYWZ0IG9uIFhlbiBpcyBQViBv
bmx5LCBmb3Igbm93LiBXZSBhY3R1YWxseSBwbGFuIHRvIApzdXBwb3J0IFBWSC9IVk0gb24gWGVu
IGluIHRoZSBmdXR1cmUuIFRoZXNlIHR3byBtb2RlcyBhbHNvIHJlcXVpcmUgCmhhcmR3YXJlIHZp
cnR1YWxpemF0aW9uIGNhcGFiaWxpdGllcy4gUGxlYXNlIG5vdGUgdGhhdCB0aGVyZSBhcmUgcGF0
Y2hlcyAKZm9yIFhlbidzIFBWIG1vZGUgYmVjYXVzZSBvZiBNZWx0ZG93biB3aGljaCBtaWdodCBh
bHNvIHJlcXVpcmUgCnZpcnR1YWxpemF0aW9uIGNhcGFiaWxpdGllcyBvbiB5b3VyIENQVS4KCj4g
Cj4gICAgIF9fIF9fCj4gCj4gICAgIFJlZ2FyZHMsX19fXwo+IAo+ICAgICBXZWkgQ2hlbl9fX18K
ClRoYW5rcywKClNpbW9uCgo+IAo+ICAgICBfXyBfXwo+IAo+ICAgICAqRnJvbToqTWluaW9zLWRl
dmVsIDxtaW5pb3MtZGV2ZWwtYm91bmNlc0BsaXN0cy54ZW5wcm9qZWN0Lm9yZwo+ICAgICA8bWFp
bHRvOm1pbmlvcy1kZXZlbC1ib3VuY2VzQGxpc3RzLnhlbnByb2plY3Qub3JnPj4gKk9uIEJlaGFs
ZiBPZgo+ICAgICAqQWpheSBHYXJnCj4gICAgICpTZW50OiogMjAxOOW5tDTmnIgz5pelMTk6MTcK
PiAgICAgKlRvOiogbWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCj4gICAgIDxtYWls
dG86bWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnPgo+ICAgICAqU3ViamVjdDoqIFtN
aW5pb3MtZGV2ZWxdIFNvbWUgcXVlcmllcyByZWdhcmRpbmcgVW5pa3JhZnQgb24geDg2L2FybV9f
X18KPiAKPiAgICAgX18gX18KPiAKPiAgICAgSGkgQWxsLl9fX18KPiAKPiAgICAgSXQncyBwcmV0
dHkgY2xlYXIgdGhhdCBQVi1ndWVzdHMgb24gQVJNIGFyZSBub3QgdGhlIHdheSB0byBnbwo+ICAg
ICAobmVpdGhlciB0aGVyZSBhcmUgYW55IHBsYW5zIGZvciBzdXBwb3J0IG9mIFBWLWd1ZXN0cyBv
biBBUk0pLAo+ICAgICBwcmltYXJpbHkgYmVjYXVzZSBvZiB0aGUgZm9sbG93aW5nIHJlYXNvbnMg
Ol9fX18KPiAKPiAgICAgIMKgwqDCoMKgwqDCoCAqIFRvbyBtdWNoIGNvbXBsZXhpdHkgaW4gT1Mg
Y29kZSB3aGlsZSBib290aW5nIHVwLCBhbmQgaW4KPiAgICAgZ2VuZXJhbC5fX19fCj4gCj4gICAg
ICDCoMKgwqDCoMKgwqAgKiBTZWN1cml0eSBpc3N1ZXMgKE1lbHRkb3duKS5fX19fCj4gCj4gICAg
IFNvLCBydW1wcnVuLCBhcyBvZiBub3cgaXMgdW51c2FibGUgZm9yIEFSTSwgYmVjYXVzZSBydW1w
cnVuIGlzIGJ1aWx0Cj4gICAgIHdpdGggUFYtZ3Vlc3RzIGluIG1pbmQuX19fXwo+IAo+ICAgICBT
bywgdGhhdCBsZWF2ZXMgdXMgd2l0aCBVbmlrcmFmdC4KPiAgICAgU28sIGtpbmRseSBjb25maXJt
IDpfX19fCj4gCj4gICAgIF9fIF9fCj4gCj4gICAgIGEpX19fXwo+IAo+ICAgICBVbmlrcmFmdCAo
Zm9yIGFybTMyKSBpcyBidWlsdCB1c2luZyBIVk0gbW9kZSwgYW5kIHdpbGwgX29ubHlfIHdvcmsK
PiAgICAgd2l0aCBwcm9jZXNzb3JzIHRoYXQgaGF2ZSBoYXJkd2FyZS12aXJ0dWFsaXphdGlvbiBl
bmFibGVkLCByaWdodD9fX19fCj4gCj4gICAgIGIpX19fXwo+IAo+ICAgICBVbmlrcmFmdCAoZm9y
IHg4NikgYWxzbyB1c2VzIEhWTSBtb2RlLCBhbmQgd29ya3MgX29ubHlfIHdpdGgKPiAgICAgcHJv
Y2Vzc29ycyB0aGF0IGhhdmUgaGFyZHdhcmUtdmlydHVhbGl6YXRpb24gZW5hYmxlZCwgcmlnaHQ/
X19fXwo+IAo+ICAgICBPciBVbmlrcmFmdCB3b3Jrcy9jYW4td29yayB1c2luZyBQViBtb2RlP19f
X18KPiAKPiAKPiAKPiAgICAgSSB0aGluayB3aXRoIHRoZSBhYm92ZSB0d28gcmVzb2x1dGlvbnMs
IHdlIGNhbiBiZSBzdXJlIHRvIHplcm8taW4gb24KPiAgICAgVW5pa3JhZnQgZm9yIHJ1bm5pbmcg
dW5pa2VybmVscy4KPiAgICAgX18KPiAgICAgX19fX19fCj4gCj4gICAgIE1hbnkgdGhhbmtzIHRv
IGV2ZXJ5b25lIHdobyBoYXZlIGhlbHBlZCwgYmlnIHRoYW5rcyB0byBKdWxpZW4KPiAgICAgKDxq
dWxpZW4uZ3JhbGxAYXJtLmNvbSA8bWFpbHRvOmp1bGllbi5ncmFsbEBhcm0uY29tPj4pICEhX19f
Xwo+IAo+IAo+ICAgICBfX19fCj4gCj4gICAgIF9fIF9fCj4gCj4gICAgIFRoYW5rcyBhbmQgUmVn
YXJkcywKPiAgICAgQWpheV9fX18KPiAKPiAgICAgSU1QT1JUQU5UIE5PVElDRTogVGhlIGNvbnRl
bnRzIG9mIHRoaXMgZW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBhcmUKPiAgICAgY29uZmlkZW50
aWFsIGFuZCBtYXkgYWxzbyBiZSBwcml2aWxlZ2VkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5k
ZWQKPiAgICAgcmVjaXBpZW50LCBwbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkg
YW5kIGRvIG5vdCBkaXNjbG9zZQo+ICAgICB0aGUgY29udGVudHMgdG8gYW55IG90aGVyIHBlcnNv
biwgdXNlIGl0IGZvciBhbnkgcHVycG9zZSwgb3Igc3RvcmUKPiAgICAgb3IgY29weSB0aGUgaW5m
b3JtYXRpb24gaW4gYW55IG1lZGl1bS4gVGhhbmsgeW91Lgo+IAo+IAo+IAo+IAo+IC0tIAo+IFJl
Z2FyZHMsCj4gQWpheQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJv
amVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21p
bmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 10:25:40 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 10:25:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3fbm-0004J8-HZ; Wed, 04 Apr 2018 10:25:38 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=2lni=gz=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1f3fbl-0004Iy-B6
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 10:25:37 +0000
X-Inumbo-ID: 6c300ef0-37f2-11e8-9728-bc764e045a96
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 6c300ef0-37f2-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 12:24:57 +0200 (CEST)
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
Received: from relay1.suse.de (charybdis-ext.suse.de [195.135.220.254])
 by mx2.suse.de (Postfix) with ESMTP id D76E1AE08;
 Wed,  4 Apr 2018 10:25:32 +0000 (UTC)
To: M A Young <m.a.young@durham.ac.uk>, Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8WiOD+RhbX2Eqk8z+1g=i0pcQNmJqM6X_hQ_u=K+A3ryw@mail.gmail.com>
 <alpine.LFD.2.21.1804041102390.2498@algedi.dur.ac.uk>
From: Juergen Gross <jgross@suse.com>
Message-ID: <572b11f1-79f8-7e29-f340-e701543ea0b6@suse.com>
Date: Wed, 4 Apr 2018 12:25:31 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <alpine.LFD.2.21.1804041102390.2498@algedi.dur.ac.uk>
Content-Language: de-DE
Subject: Re: [Minios-devel] [Xen-devel] Xen-4.10 Domain-0 crashes at bootup
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gMDQvMDQvMTggMTI6MDcsIE0gQSBZb3VuZyB3cm90ZToKPiBPbiBXZWQsIDQgQXByIDIwMTgs
IEFqYXkgR2FyZyB3cm90ZToKPiAKPj4gU2luY2UgSSBmYWlsZWQgdG8gZ2V0IGEgc2luZ2xlIHJl
cGx5IG9uIG15IG9yaWdpbmFsIGlzc3VlIGFzIHBlcgo+PiBodHRwczovL2xpc3RzLnhlbnByb2pl
Y3Qub3JnL2FyY2hpdmVzL2h0bWwvbWluaW9zLWRldmVsLzIwMTgtMDQvbXNnMDAwMDQuaHRtbCwK
Pj4gc28gSSBoYWQgbm8gb3B0aW9uIGJ1dCB0byB0cnkgb24gYSBuZXdlciB4ZW4gdmVyc2lvbi4K
Pj4KPj4gU28sIEkgY3JlYXRlZCAgYSAgbmV3IHZpcnR1YWxib3gtZ3Vlc3QsIGFuZCBmb2xsb3dl
ZCB0aGUgc3RlcHMgYXMgcGVyCj4+IGh0dHBzOi8vYmxvZy53ZXJrMjEuZGUvZW4vMjAxOC8wMi8w
OC9idWlsZC14ZW4taHlwZXJ2aXNvci00MTAtYW5kLXhlbi10b29scy11YnVudHUtMTYwNC1wdmgK
Pj4KPj4gTm93LCB3aGVuIHN0YXJ0IHRoZSBndWVzdCB3aXRoIFhlbi1oeXBlcnZpc29yIGVuYWJs
ZWQsIGl0IGRvZXMgbm90IGNvbWUgdXAuCj4+IEkgdG9vayBzZXJpYWwtbG9ncyBhdCBib290dXAg
dGltZSwgdGhleSBhcmUgYXMgZm9sbG93cyA6Cj4+Cj4+ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCj4+
ICBYZW4gNC4xMC4xLXByZQo+PiAoWEVOKSBYZW4gdmVyc2lvbiA0LjEwLjEtcHJlIChhamF5QCkg
KGdjYyAoVWJ1bnR1Cj4+IDUuNC4wLTZ1YnVudHUxfjE2LjA0LjkpIDUuNC4wIDIwMTYwNjA5KSBk
ZWJ1Zz1uICBXZWQgQXByICA0IDEyOjU0OjU4Cj4+IElTVCAyMDE4Cj4+IChYRU4pIExhdGVzdCBD
aGFuZ2VTZXQ6IFR1ZSBNYXIgMjAgMTQ6MjM6MTQgMjAxOCArMDEwMCBnaXQ6MGY5Mjk2OAo+PiAo
WEVOKSBCb290bG9hZGVyOiBHUlVCIDIuMDJ+YmV0YTItMzZ1YnVudHUzLjE3Cj4+IChYRU4pIENv
bW1hbmQgbGluZTogcGxhY2Vob2xkZXIgY29uc29sZT1jb20xIGNvbTE9MTE1MjAwLDhuMQo+PiBs
b2dsdmw9YWxsIGd1ZXN0X2xvZ2x2bD1hbGwKPj4gKFhFTikgWGVuIGltYWdlIGxvYWQgYmFzZSBh
ZGRyZXNzOiAwCj4+IChYRU4pIFZpZGVvIGluZm9ybWF0aW9uOgo+PiAoWEVOKSAgVkdBIGlzIHRl
eHQgbW9kZSA4MHgyNSwgZm9udCA4eDE2Cj4+IChYRU4pIERpc2MgaW5mb3JtYXRpb246Cj4+IChY
RU4pICBGb3VuZCAxIE1CUiBzaWduYXR1cmVzCj4+IChYRU4pICBGb3VuZCAxIEVERCBpbmZvcm1h
dGlvbiBzdHJ1Y3R1cmVzCj4+IChYRU4pIFhlbi1lODIwIFJBTSBtYXA6Cj4+IChYRU4pICAwMDAw
MDAwMDAwMDAwMDAwIC0gMDAwMDAwMDAwMDA5ZmMwMCAodXNhYmxlKQo+PiAoWEVOKSAgMDAwMDAw
MDAwMDA5ZmMwMCAtIDAwMDAwMDAwMDAwYTAwMDAgKHJlc2VydmVkKQo+PiAoWEVOKSAgMDAwMDAw
MDAwMDBmMDAwMCAtIDAwMDAwMDAwMDAxMDAwMDAgKHJlc2VydmVkKQo+PiAoWEVOKSAgMDAwMDAw
MDAwMDEwMDAwMCAtIDAwMDAwMDAwYmZmZjAwMDAgKHVzYWJsZSkKPj4gKFhFTikgIDAwMDAwMDAw
YmZmZjAwMDAgLSAwMDAwMDAwMGMwMDAwMDAwIChBQ1BJIGRhdGEpCj4+IChYRU4pICAwMDAwMDAw
MGZlYzAwMDAwIC0gMDAwMDAwMDBmZWMwMTAwMCAocmVzZXJ2ZWQpCj4+IChYRU4pICAwMDAwMDAw
MGZlZTAwMDAwIC0gMDAwMDAwMDBmZWUwMTAwMCAocmVzZXJ2ZWQpCj4+IChYRU4pICAwMDAwMDAw
MGZmZmMwMDAwIC0gMDAwMDAwMDEwMDAwMDAwMCAocmVzZXJ2ZWQpCj4+IChYRU4pIE5ldyBYZW4g
aW1hZ2UgYmFzZSBhZGRyZXNzOiAweGJmODAwMDAwCj4+IChYRU4pIFN5c3RlbSBSQU06IDMwNzFN
QiAoMzE0NTI3NmtCKQo+PiAoWEVOKSBBQ1BJOiBSU0RQIDAwMEUwMDAwLCAwMDI0IChyMiBWQk9Y
ICApCj4+IChYRU4pIEFDUEk6IFhTRFQgQkZGRjAwMzAsIDAwM0MgKHIxIFZCT1ggICBWQk9YWFNE
VCAgICAgICAgMSBBU0wgICAgICAgIDYxKQo+PiAoWEVOKSBBQ1BJOiBGQUNQIEJGRkYwMEYwLCAw
MEY0IChyNCBWQk9YICAgVkJPWEZBQ1AgICAgICAgIDEgQVNMICAgICAgICA2MSkKPj4gKFhFTikg
QUNQSTogRFNEVCBCRkZGMDQ3MCwgMjFGRiAocjIgVkJPWCAgIFZCT1hCSU9TICAgICAgICAyIElO
VEwgMjAxNjAxMDgpCj4+IChYRU4pIEFDUEk6IEZBQ1MgQkZGRjAyMDAsIDAwNDAKPj4gKFhFTikg
QUNQSTogQVBJQyBCRkZGMDI0MCwgMDA1NCAocjIgVkJPWCAgIFZCT1hBUElDICAgICAgICAxIEFT
TCAgICAgICAgNjEpCj4+IChYRU4pIEFDUEk6IFNTRFQgQkZGRjAyQTAsIDAxQ0MgKHIxIFZCT1gg
ICBWQk9YQ1BVVCAgICAgICAgMiBJTlRMIDIwMTYwMTA4KQo+PiAoWEVOKSBObyBOVU1BIGNvbmZp
Z3VyYXRpb24gZm91bmQKPj4gKFhFTikgRmFraW5nIGEgbm9kZSBhdCAwMDAwMDAwMDAwMDAwMDAw
LTAwMDAwMDAwYmZmZjAwMDAKPj4gKFhFTikgRG9tYWluIGhlYXAgaW5pdGlhbGlzZWQKPj4gKFhF
TikgQ1BVIFZlbmRvcjogSW50ZWwsIEZhbWlseSA2ICgweDYpLCBNb2RlbCAxNDIgKDB4OGUpLCBT
dGVwcGluZyA5Cj4+IChyYXcgMDAwODA2ZTkpCj4+IChYRU4pIGZvdW5kIFNNUCBNUC10YWJsZSBh
dCAwMDA5ZmZmMAo+PiAoWEVOKSBETUkgMi41IHByZXNlbnQuCj4+IChYRU4pIFVzaW5nIEFQSUMg
ZHJpdmVyIGRlZmF1bHQKPj4gKFhFTikgQUNQSTogUE0tVGltZXIgSU8gUG9ydDogMHg0MDA4ICgz
MiBiaXRzKQo+PiAoWEVOKSBBQ1BJOiBTTEVFUCBJTkZPOiBwbTF4X2NudFsxOjQwMDQsMTowXSwg
cG0xeF9ldnRbMTo0MDAwLDE6MF0KPj4gKFhFTikgQUNQSTogICAgICAgICAgICAgd2FrZXVwX3Zl
Y1tiZmZmMDIwY10sIHZlY19zaXplWzIwXQo+PiAoWEVOKSBBQ1BJOiBMb2NhbCBBUElDIGFkZHJl
c3MgMHhmZWUwMDAwMAo+PiAoWEVOKSBBQ1BJOiBMQVBJQyAoYWNwaV9pZFsweDAwXSBsYXBpY19p
ZFsweDAwXSBlbmFibGVkKQo+PiAoWEVOKSBBQ1BJOiBJT0FQSUMgKGlkWzB4MDFdIGFkZHJlc3Nb
MHhmZWMwMDAwMF0gZ3NpX2Jhc2VbMF0pCj4+IChYRU4pIElPQVBJQ1swXTogYXBpY19pZCAxLCB2
ZXJzaW9uIDMyLCBhZGRyZXNzIDB4ZmVjMDAwMDAsIEdTSSAwLTIzCj4+IChYRU4pIEFDUEk6IElO
VF9TUkNfT1ZSIChidXMgMCBidXNfaXJxIDAgZ2xvYmFsX2lycSAyIGRmbCBkZmwpCj4+IChYRU4p
IEFDUEk6IElOVF9TUkNfT1ZSIChidXMgMCBidXNfaXJxIDkgZ2xvYmFsX2lycSA5IGhpZ2ggbGV2
ZWwpCj4+IChYRU4pIEFDUEk6IElSUTAgdXNlZCBieSBvdmVycmlkZS4KPj4gKFhFTikgQUNQSTog
SVJRMiB1c2VkIGJ5IG92ZXJyaWRlLgo+PiAoWEVOKSBBQ1BJOiBJUlE5IHVzZWQgYnkgb3ZlcnJp
ZGUuCj4+IChYRU4pIEVuYWJsaW5nIEFQSUMgbW9kZTogIEZsYXQuICBVc2luZyAxIEkvTyBBUElD
cwo+PiAoWEVOKSBFUlNUIHRhYmxlIHdhcyBub3QgZm91bmQKPj4gKFhFTikgVXNpbmcgQUNQSSAo
TUFEVCkgZm9yIFNNUCBjb25maWd1cmF0aW9uIGluZm9ybWF0aW9uCj4+IChYRU4pIFNNUDogQWxs
b3dpbmcgMSBDUFVzICgwIGhvdHBsdWcgQ1BVcykKPj4gKFhFTikgSVJRIGxpbWl0czogMjQgR1NJ
LCAxODQgTVNJL01TSS1YCj4+IChYRU4pIE5vdCBlbmFibGluZyB4MkFQSUM6IGRlcGVuZHMgb24g
aW9tbXVfc3VwcG9ydHNfZWltLgo+PiAoWEVOKSB4c3RhdGU6IHNpemU6IDB4NDQwIGFuZCBzdGF0
ZXM6IDB4Nwo+PiAoWEVOKSBDUFUwOiBObyBNQ0UgYmFua3MgcHJlc2VudC4gTWFjaGluZSBjaGVj
ayBzdXBwb3J0IGRpc2FibGVkCj4+IChYRU4pIFNwZWN1bGF0aXZlIG1pdGlnYXRpb24gZmFjaWxp
dGllczoKPj4gKFhFTikgICBDb21waWxlZC1pbiBzdXBwb3J0OiBJTkRJUkVDVF9USFVOSwo+PiAo
WEVOKSBCVEkgbWl0aWdhdGlvbnM6IFRodW5rIFJFVFBPTElORSwgT3RoZXJzOiBSU0JfTkFUSVZF
IFJTQl9WTUVYSVQKPj4gKFhFTikgVXNpbmcgc2NoZWR1bGVyOiBTTVAgQ3JlZGl0IFNjaGVkdWxl
ciAoY3JlZGl0KQo+PiAoWEVOKSBQbGF0Zm9ybSB0aW1lciBpcyAzLjU3OU1IeiBBQ1BJIFBNIFRp
bWVyCj4+IChYRU4pIERldGVjdGVkIDI3MTIuMDM1IE1IeiBwcm9jZXNzb3IuCj4+IChYRU4pIElu
aXRpbmcgbWVtb3J5IHNoYXJpbmcuCj4+IChYRU4pIGFsdCB0YWJsZSBmZmZmODJkMDgwNDIxNzk4
IC0+IGZmZmY4MmQwODA0MjMyNDQKPj4gKFhFTikgSS9PIHZpcnR1YWxpc2F0aW9uIGRpc2FibGVk
Cj4+IChYRU4pIG5yX3NvY2tldHM6IDEKPj4gKFhFTikgRU5BQkxJTkcgSU8tQVBJQyBJUlFzCj4+
IChYRU4pICAtPiBVc2luZyBuZXcgQUNLIG1ldGhvZAo+PiAoWEVOKSAuLlRJTUVSOiB2ZWN0b3I9
MHhGMCBhcGljMT0wIHBpbjE9MiBhcGljMj0tMSBwaW4yPS0xCj4+IChYRU4pIEFsbG9jYXRlZCBj
b25zb2xlIHJpbmcgb2YgMTYgS2lCLgo+PiAoWEVOKSBCcm91Z2h0IHVwIDEgQ1BVcwo+PiAoWEVO
KSBidWlsZC1pZDogMDczNDA1MDgwOWUwY2I5ZjUyZTY1MzIyYTBkMzkxMWQwODJlMzQ4Ygo+PiAo
WEVOKSBDUFVJRExFOiBkaXNhYmxlZCBkdWUgdG8gbm8gSFBFVC4gRm9yY2UgZW5hYmxlIHdpdGgg
J2NwdWlkbGUnLgo+PiAoWEVOKSBBQ1BJIHNsZWVwIG1vZGVzOiBTMwo+PiAoWEVOKSBWUE1VOiBk
aXNhYmxlZAo+PiAoWEVOKSB4ZW5vcHJvZjogSW5pdGlhbGl6YXRpb24gZmFpbGVkLiBJbnRlbCBw
cm9jZXNzb3IgZmFtaWx5IDYgbW9kZWwKPj4gMTQyIGlzIG5vdCBzdXBwb3J0ZWQKPj4gKFhFTikg
RG9tMCBoYXMgbWF4aW11bSAyMDggUElSUXMKPj4gKFhFTikgTlggKEV4ZWN1dGUgRGlzYWJsZSkg
cHJvdGVjdGlvbiBhY3RpdmUKPj4gKFhFTikgKioqIExPQURJTkcgRE9NQUlOIDAgKioqCj4+IChY
RU4pICBYZW4gIGtlcm5lbDogNjQtYml0LCBsc2IsIGNvbXBhdDMyCj4+IChYRU4pICBEb20wIGtl
cm5lbDogNjQtYml0LCBQQUUsIGxzYiwgcGFkZHIgMHgxMDAwMDAwIC0+IDB4Mjk1NzAwMAo+PiAo
WEVOKSBQSFlTSUNBTCBNRU1PUlkgQVJSQU5HRU1FTlQ6Cj4+IChYRU4pICBEb20wIGFsbG9jLjog
ICAwMDAwMDAwMGI0MDAwMDAwLT4wMDAwMDAwMGI4MDAwMDAwICg3MTUzMDkgcGFnZXMKPj4gdG8g
YmUgYWxsb2NhdGVkKQo+PiAoWEVOKSAgSW5pdC4gcmFtZGlzazogMDAwMDAwMDBiYzkxNTAwMC0+
MDAwMDAwMDBiZjdmZmVkOQo+PiAoWEVOKSBWSVJUVUFMIE1FTU9SWSBBUlJBTkdFTUVOVDoKPj4g
KFhFTikgIExvYWRlZCBrZXJuZWw6IGZmZmZmZmZmODEwMDAwMDAtPmZmZmZmZmZmODI5NTcwMDAK
Pj4gKFhFTikgIEluaXQuIHJhbWRpc2s6IDAwMDAwMDAwMDAwMDAwMDAtPjAwMDAwMDAwMDAwMDAw
MDAKPj4gKFhFTikgIFBoeXMtTWFjaCBtYXA6IDAwMDAwMDgwMDAwMDAwMDAtPjAwMDAwMDgwMDA1
YWM4YzAKPj4gKFhFTikgIFN0YXJ0IGluZm86ICAgIGZmZmZmZmZmODI5NTcwMDAtPmZmZmZmZmZm
ODI5NTc0YjQKPj4gKFhFTikgIFhlbnN0b3JlIHJpbmc6IDAwMDAwMDAwMDAwMDAwMDAtPjAwMDAw
MDAwMDAwMDAwMDAKPj4gKFhFTikgIENvbnNvbGUgcmluZzogIDAwMDAwMDAwMDAwMDAwMDAtPjAw
MDAwMDAwMDAwMDAwMDAKPj4gKFhFTikgIFBhZ2UgdGFibGVzOiAgIGZmZmZmZmZmODI5NTgwMDAt
PmZmZmZmZmZmODI5NzEwMDAKPj4gKFhFTikgIEJvb3Qgc3RhY2s6ICAgIGZmZmZmZmZmODI5NzEw
MDAtPmZmZmZmZmZmODI5NzIwMDAKPj4gKFhFTikgIFRPVEFMOiAgICAgICAgIGZmZmZmZmZmODAw
MDAwMDAtPmZmZmZmZmZmODJjMDAwMDAKPj4gKFhFTikgIEVOVFJZIEFERFJFU1M6IGZmZmZmZmZm
ODI0YTQxODAKPj4gKFhFTikgRG9tMCBoYXMgbWF4aW11bSAxIFZDUFVzCj4+IChYRU4pIEluaXRp
YWwgbG93IG1lbW9yeSB2aXJxIHRocmVzaG9sZCBzZXQgYXQgMHg0MDAwIHBhZ2VzLgo+PiAoWEVO
KSBTY3J1YmJpbmcgRnJlZSBSQU0gb24gMSBub2RlcyB1c2luZyAxIENQVXMKPj4gKFhFTikgLi4u
Li4uLi4uLi4uLi4uLi4uLi4uLi4uZG9uZS4KPj4gKFhFTikgU3RkLiBMb2dsZXZlbDogQWxsCj4+
IChYRU4pIEd1ZXN0IExvZ2xldmVsOiBBbGwKPj4gKFhFTikgKioqIFNlcmlhbCBpbnB1dCAtPiBE
T00wICh0eXBlICdDVFJMLWEnIHRocmVlIHRpbWVzIHRvIHN3aXRjaAo+PiBpbnB1dCB0byBYZW4p
Cj4+IChYRU4pIEZyZWVkIDQ2OGtCIGluaXQgbWVtb3J5Cj4+IG1hcHBpbmcga2VybmVsIGludG8g
cGh5c2ljYWwgbWVtb3J5Cj4+IGFib3V0IHRvIGdldCBzdGFydGVkLi4uCj4+IChYRU4pIGQwdjAg
VW5oYW5kbGVkIGludmFsaWQgb3Bjb2RlIGZhdWx0L3RyYXAgWyM2LCBlYz1mZmZmZmZmZl0KPj4g
KFhFTikgZG9tYWluX2NyYXNoX3N5bmMgY2FsbGVkIGZyb20gZW50cnkuUzogZmF1bHQgYXQgZmZm
ZjgyZDA4MDM1NTAxZgo+PiB4ODZfNjQvZW50cnkuUyNjcmVhdGVfYm91bmNlX2ZyYW1lKzB4MTM1
LzB4MTY2Cj4+IChYRU4pIERvbWFpbiAwICh2Y3B1IzApIGNyYXNoZWQgb24gY3B1IzA6Cj4+IChY
RU4pIC0tLS1bIFhlbi00LjEwLjEtcHJlICB4ODZfNjQgIGRlYnVnPW4gICBOb3QgdGFpbnRlZCBd
LS0tLQo+PiAoWEVOKSBDUFU6ICAgIDAKPj4gKFhFTikgUklQOiAgICBlMDMzOls8ZmZmZmZmZmY4
MjRiNDljZD5dCj4+IChYRU4pIFJGTEFHUzogMDAwMDAwMDAwMDAwMDI4NiAgIEVNOiAxICAgQ09O
VEVYVDogcHYgZ3Vlc3QgKGQwdjApCj4+IChYRU4pIHJheDogMDAwMDAwMDAwMDAwMDAyOSAgIHJi
eDogMDAwMDAwMDAwMDAwMDAwYSAgIHJjeDogZmZmZmZmZmY4MjI2MTFjOAo+PiAoWEVOKSByZHg6
IDAwMDAwMDAwMDAwMDAwMDAgICByc2k6IDAwMDAwMDAwMDAwMDAwMDAgICByZGk6IDAwMDAwMDAw
MDAwMDAwMDAKPj4gKFhFTikgcmJwOiBmZmZmZmZmZjgyMjAzZTAwICAgcnNwOiBmZmZmZmZmZjgy
MjAzZDY4ICAgcjg6ICA2NTc2NjE2NTZjMjA2NzZlCj4+IChYRU4pIHI5OiAgMDAwMDAwMDAwMDAw
MDAwNyAgIHIxMDogZmZmZmZmZmY4MjIwM2Q4NCAgIHIxMTogMDAwMDAwMDAwMDAwMDAyOQo+PiAo
WEVOKSByMTI6IDAwMDAwMDAwMDAwMDAxMDAgICByMTM6IDAwMDAwMDAwMDAwMDAzNDAgICByMTQ6
IDAwMDAwMDAwMDAwMDA0NDAKPj4gKFhFTikgcjE1OiBmZmZmZmZmZjgyMjAzZGMwICAgY3IwOiAw
MDAwMDAwMDgwMDUwMDMzICAgY3I0OiAwMDAwMDAwMDAwMDQwNmEwCj4+IChYRU4pIGNyMzogMDAw
MDAwMDBiNjIwYTAwMCAgIGNyMjogMDAwMDAwMDAwMDAwMDAwMAo+PiAoWEVOKSBmc2I6IDAwMDAw
MDAwMDAwMDAwMDAgICBnc2I6IGZmZmZmZmZmODI0ODAwMDAgICBnc3M6IDAwMDAwMDAwMDAwMDAw
MDAKPj4gKFhFTikgZHM6IDAwMDAgICBlczogMDAwMCAgIGZzOiAwMDAwICAgZ3M6IDAwMDAgICBz
czogZTAyYiAgIGNzOiBlMDMzCj4+IChYRU4pIEd1ZXN0IHN0YWNrIHRyYWNlIGZyb20gcnNwPWZm
ZmZmZmZmODIyMDNkNjg6Cj4+IChYRU4pICAgIGZmZmZmZmZmODIyNjExYzggMDAwMDAwMDAwMDAw
MDAyOSBmZmZmZmZmZjgyNGI0OWNkIDAwMDAwMDAxMDAwMGUwMzAKPj4gKFhFTikgICAgMDAwMDAw
MDAwMDAxMDA4NiBmZmZmZmZmZjgyMjAzZGEwIDAwMDAwMDAwMDAwMGUwMmIgMDAwMDA0NDAwMDAw
MDAwNwo+PiAoWEVOKSAgICAwMDAwMDAwMDAwMDAwMzQwIDAwMDAwMDAwMDAwMDAwMjAgZmZmZmZm
ZmY4MjIwM2RmMCAwMDAwMDI0MDAwMDAwMTAwCj4+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAg
YTZmNmEyOTJhNmY2YTIwMCBmZmZmZmZmZjgyMjAzZTI4IGZmZmZmZmZmODFlMDhkODAKPj4gKFhF
TikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAg
ZmZmZmZmZmY4MjIwM2U2MAo+PiAoWEVOKSAgICBmZmZmZmZmZjgyNGI0MzQyIGZmZmZmZmZmODIy
MDNlMjggZmZmZmZmZmY4MTAxZjJhNiBmZmZmZmZmZjgyMjAzZTI4Cj4+IChYRU4pICAgIGZmZmZm
ZmZmODEwNDA5MDAgZmZmZmZmZmY4MTA0MGFlMiAwMDAwMDgwMDAwMDgwNmU5IDA3ODlkYmY1ZGVm
ODIyMDMKPj4gKFhFTikgICAgYTZmNmEyOTJhNmY2YTIwMCAwMDAwMDAwMDAwMDAwMDE4IGZmZmZm
ZmZmODIyMDNlNzggZmZmZmZmZmY4MjIwM2U4OAo+PiAoWEVOKSAgICBmZmZmZmZmZjgyNGI1NmIw
IGZmZmZmZmZmODI0YjU2YjAgMDAwMDAwMDAwMTAwMDAwMCBmZmZmZmZmZjgyMjAzZjAwCj4+IChY
RU4pICAgIGZmZmZmZmZmODIyMDNlZjAgZmZmZmZmZmY4MjRiMDdhYSBmZmZmZmZmZjAwMDAwMDEw
IGZmZmZmZmZmODIyMDNmMDAKPj4gKFhFTikgICAgZmZmZmZmZmY4MjIwM2ViOCBhNmY2YTI5MmE2
ZjZhMjAwIGZmZmZmZmZmODIyMDNlNjggYTZmNmEyOTJhNmY2YTIwMAo+PiAoWEVOKSAgICBmZmZm
ZmZmZjgyMjAzZjYwIGZmZmZmZmZmODIyMDNmNWMgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAw
MDAwMDAwCj4+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgZmZmZmZmZmY4MjIwM2YzMCBmZmZm
ZmZmZjgyNGE0ZDBjIGE2ZjZhMjkyYTZmNmEyMDAKPj4gKFhFTikgICAgMDAwMDAwMDAwMDAwMDAw
MCBmZmZmZmZmZjgyMjAzZjYwIGZmZmZmZmZmODIyMDNmNWMgMDAwMDAwMDAwMDAwMDAwMAo+PiAo
WEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIGZmZmZmZmZmODIyMDNmNDAgZmZmZmZmZmY4MjRhNDJk
NSBmZmZmZmZmZjgyMjAzZmY4Cj4+IChYRU4pICAgIGZmZmZmZmZmODI0YWQxNDUgMDAwODA2ZTkw
MDAwMDAwMCAwMDAwMDAwMTAwMDAwODAwIDAzMDAwMDAxMDAwMDAwMzIKPj4gKFhFTikgICAgMDAw
MDAwMDAwMDAwMDAwNSAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAw
MDAwMDAwMAo+PiAoWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAw
MDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwCj4+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAw
MDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAKPj4g
KFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAw
MDAgMDAwMDAwMDAwMDAwMDAwMAo+PiAoWEVOKSBIYXJkd2FyZSBEb20wIGNyYXNoZWQ6IHJlYm9v
dGluZyBtYWNoaW5lIGluIDUgc2Vjb25kcy4KPj4gKFhFTikgUmVzZXR0aW5nIHdpdGggQUNQSSBN
RU1PUlkgb3IgSS9PIFJFU0VUX1JFRy4KPj4gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPj4KPj4KPj4g
T25lIHRoaW5nIGlzIGZvciBzdXJlLCB0aGF0IHRoZXJlIGlzIG5vIHZpcnR1YWxpemF0aW9uLXJl
bGF0ZWQgaXNzdWUsCj4+IGFzIHhlbi1kb20wIGlzIHN0YXJ0aW5nIGluIFBWIG1vZGUgb25seS4K
PiAKPiBJdCBpcyBhIGtlcm5lbCBwcm9ibGVtIHVuZGVyIHNvbWUgY29tcGlsZSBjb25kaXRpb25z
LiBTZWUgZm9yIGV4YW1wbGUKPiBodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL2FyY2hpdmVz
L2h0bWwveGVuLWRldmVsLzIwMTgtMDIvbXNnMDAwMTAuaHRtbAo+IGFuZCB0aGUgcGF0Y2ggYXQK
PiBodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL2FyY2hpdmVzL2h0bWwveGVuLWRldmVsLzIw
MTgtMDIvbXNnMDAwNDUuaHRtbAoKTm8sIHRob3NlIGFyZSBkaWZmZXJlbnQuCgpUaGVyZSBpcyBu
byB3YXkgdG8gdGVsbCB3aGF0IGxlZCB0byB0aGUgY3Jhc2ggd2l0aG91dCBmdXJ0aGVyIGRhdGEK
KGRvbTAga2VybmVsIHZlcnNpb24sIGtlcm5lbCBib290IHBhcmFtZXRlcnMsIG1hcHBpbmcgb2Yg
ZnVuY3Rpb24gbmFtZXMKdG8ga2VybmVsIGFkZHJlc3NlcyBvbiB0aGUgZ3Vlc3Qgc3RhY2spLgoK
V2hhdCBjYW4gYmUgc2FpZCwgaG93ZXZlciwgaXMgdGhhdCBuZXN0ZWQgdmlydHVhbGl6YXRpb24g
aXMgb2Z0ZW4gYQpwcm9ibGVtIGFuZCBtaWdodCBiZSB0aGUgY2F1c2UgaGVyZSwgdG9vLgoKCkp1
ZXJnZW4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1p
bmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3Jn
Cmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2
ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 10:37:31 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 10:37:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3fnG-000597-3E; Wed, 04 Apr 2018 10:37:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=yz9+=gz=durham.ac.uk=m.a.young@srs-us1.protection.inumbo.net>)
 id 1f3fKb-0002pT-Qi
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 10:07:53 +0000
X-Inumbo-ID: 3363106b-37f0-11e8-8249-2fda3a446a53
Received: from hermes2.dur.ac.uk (unknown [129.234.7.139])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 3363106b-37f0-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 10:09:03 +0000 (UTC)
Received: from smtphost3.dur.ac.uk (smtphost3.dur.ac.uk [129.234.7.145])
 by hermes2.dur.ac.uk (8.14.4/8.14.4) with ESMTP id w34A7ca7008251;
 Wed, 4 Apr 2018 11:07:42 +0100
Received: from algedi.dur.ac.uk (algedi.dur.ac.uk [129.234.2.28])
 by smtphost3.dur.ac.uk (8.14.4/8.14.4) with ESMTP id w34A7Wm4047240;
 Wed, 4 Apr 2018 11:07:32 +0100
Received: by algedi.dur.ac.uk (Postfix, from userid 2742)
 id 60BDC2830D0; Wed,  4 Apr 2018 11:07:27 +0100 (BST)
Received: from localhost (localhost [127.0.0.1])
 by algedi.dur.ac.uk (Postfix) with ESMTP id 4F83D28089E;
 Wed,  4 Apr 2018 11:07:27 +0100 (BST)
Date: Wed, 4 Apr 2018 11:07:27 +0100 (BST)
From: M A Young <m.a.young@durham.ac.uk>
To: Ajay Garg <ajaygargnsit@gmail.com>
In-Reply-To: <CAHP4M8WiOD+RhbX2Eqk8z+1g=i0pcQNmJqM6X_hQ_u=K+A3ryw@mail.gmail.com>
Message-ID: <alpine.LFD.2.21.1804041102390.2498@algedi.dur.ac.uk>
References: <CAHP4M8WiOD+RhbX2Eqk8z+1g=i0pcQNmJqM6X_hQ_u=K+A3ryw@mail.gmail.com>
User-Agent: Alpine 2.21 (LFD 202 2017-01-01)
MIME-Version: 1.0
X-DurhamAcUk-MailScanner: Found to be clean, Found to be clean
X-DurhamAcUk-MailScanner-ID: w34A7ca7008251
X-Mailman-Approved-At: Wed, 04 Apr 2018 10:37:29 +0000
Subject: Re: [Minios-devel] [Xen-devel] Xen-4.10 Domain-0 crashes at bootup
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCA0IEFwciAyMDE4LCBBamF5IEdhcmcgd3JvdGU6Cgo+IFNpbmNlIEkgZmFpbGVkIHRv
IGdldCBhIHNpbmdsZSByZXBseSBvbiBteSBvcmlnaW5hbCBpc3N1ZSBhcyBwZXIKPiBodHRwczov
L2xpc3RzLnhlbnByb2plY3Qub3JnL2FyY2hpdmVzL2h0bWwvbWluaW9zLWRldmVsLzIwMTgtMDQv
bXNnMDAwMDQuaHRtbCwKPiBzbyBJIGhhZCBubyBvcHRpb24gYnV0IHRvIHRyeSBvbiBhIG5ld2Vy
IHhlbiB2ZXJzaW9uLgo+IAo+IFNvLCBJIGNyZWF0ZWQgIGEgIG5ldyB2aXJ0dWFsYm94LWd1ZXN0
LCBhbmQgZm9sbG93ZWQgdGhlIHN0ZXBzIGFzIHBlcgo+IGh0dHBzOi8vYmxvZy53ZXJrMjEuZGUv
ZW4vMjAxOC8wMi8wOC9idWlsZC14ZW4taHlwZXJ2aXNvci00MTAtYW5kLXhlbi10b29scy11YnVu
dHUtMTYwNC1wdmgKPiAKPiBOb3csIHdoZW4gc3RhcnQgdGhlIGd1ZXN0IHdpdGggWGVuLWh5cGVy
dmlzb3IgZW5hYmxlZCwgaXQgZG9lcyBub3QgY29tZSB1cC4KPiBJIHRvb2sgc2VyaWFsLWxvZ3Mg
YXQgYm9vdHVwIHRpbWUsIHRoZXkgYXJlIGFzIGZvbGxvd3MgOgo+IAo+ICMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjCj4gIFhlbiA0LjEwLjEtcHJlCj4gKFhFTikgWGVuIHZlcnNpb24gNC4xMC4xLXByZSAo
YWpheUApIChnY2MgKFVidW50dQo+IDUuNC4wLTZ1YnVudHUxfjE2LjA0LjkpIDUuNC4wIDIwMTYw
NjA5KSBkZWJ1Zz1uICBXZWQgQXByICA0IDEyOjU0OjU4Cj4gSVNUIDIwMTgKPiAoWEVOKSBMYXRl
c3QgQ2hhbmdlU2V0OiBUdWUgTWFyIDIwIDE0OjIzOjE0IDIwMTggKzAxMDAgZ2l0OjBmOTI5NjgK
PiAoWEVOKSBCb290bG9hZGVyOiBHUlVCIDIuMDJ+YmV0YTItMzZ1YnVudHUzLjE3Cj4gKFhFTikg
Q29tbWFuZCBsaW5lOiBwbGFjZWhvbGRlciBjb25zb2xlPWNvbTEgY29tMT0xMTUyMDAsOG4xCj4g
bG9nbHZsPWFsbCBndWVzdF9sb2dsdmw9YWxsCj4gKFhFTikgWGVuIGltYWdlIGxvYWQgYmFzZSBh
ZGRyZXNzOiAwCj4gKFhFTikgVmlkZW8gaW5mb3JtYXRpb246Cj4gKFhFTikgIFZHQSBpcyB0ZXh0
IG1vZGUgODB4MjUsIGZvbnQgOHgxNgo+IChYRU4pIERpc2MgaW5mb3JtYXRpb246Cj4gKFhFTikg
IEZvdW5kIDEgTUJSIHNpZ25hdHVyZXMKPiAoWEVOKSAgRm91bmQgMSBFREQgaW5mb3JtYXRpb24g
c3RydWN0dXJlcwo+IChYRU4pIFhlbi1lODIwIFJBTSBtYXA6Cj4gKFhFTikgIDAwMDAwMDAwMDAw
MDAwMDAgLSAwMDAwMDAwMDAwMDlmYzAwICh1c2FibGUpCj4gKFhFTikgIDAwMDAwMDAwMDAwOWZj
MDAgLSAwMDAwMDAwMDAwMGEwMDAwIChyZXNlcnZlZCkKPiAoWEVOKSAgMDAwMDAwMDAwMDBmMDAw
MCAtIDAwMDAwMDAwMDAxMDAwMDAgKHJlc2VydmVkKQo+IChYRU4pICAwMDAwMDAwMDAwMTAwMDAw
IC0gMDAwMDAwMDBiZmZmMDAwMCAodXNhYmxlKQo+IChYRU4pICAwMDAwMDAwMGJmZmYwMDAwIC0g
MDAwMDAwMDBjMDAwMDAwMCAoQUNQSSBkYXRhKQo+IChYRU4pICAwMDAwMDAwMGZlYzAwMDAwIC0g
MDAwMDAwMDBmZWMwMTAwMCAocmVzZXJ2ZWQpCj4gKFhFTikgIDAwMDAwMDAwZmVlMDAwMDAgLSAw
MDAwMDAwMGZlZTAxMDAwIChyZXNlcnZlZCkKPiAoWEVOKSAgMDAwMDAwMDBmZmZjMDAwMCAtIDAw
MDAwMDAxMDAwMDAwMDAgKHJlc2VydmVkKQo+IChYRU4pIE5ldyBYZW4gaW1hZ2UgYmFzZSBhZGRy
ZXNzOiAweGJmODAwMDAwCj4gKFhFTikgU3lzdGVtIFJBTTogMzA3MU1CICgzMTQ1Mjc2a0IpCj4g
KFhFTikgQUNQSTogUlNEUCAwMDBFMDAwMCwgMDAyNCAocjIgVkJPWCAgKQo+IChYRU4pIEFDUEk6
IFhTRFQgQkZGRjAwMzAsIDAwM0MgKHIxIFZCT1ggICBWQk9YWFNEVCAgICAgICAgMSBBU0wgICAg
ICAgIDYxKQo+IChYRU4pIEFDUEk6IEZBQ1AgQkZGRjAwRjAsIDAwRjQgKHI0IFZCT1ggICBWQk9Y
RkFDUCAgICAgICAgMSBBU0wgICAgICAgIDYxKQo+IChYRU4pIEFDUEk6IERTRFQgQkZGRjA0NzAs
IDIxRkYgKHIyIFZCT1ggICBWQk9YQklPUyAgICAgICAgMiBJTlRMIDIwMTYwMTA4KQo+IChYRU4p
IEFDUEk6IEZBQ1MgQkZGRjAyMDAsIDAwNDAKPiAoWEVOKSBBQ1BJOiBBUElDIEJGRkYwMjQwLCAw
MDU0IChyMiBWQk9YICAgVkJPWEFQSUMgICAgICAgIDEgQVNMICAgICAgICA2MSkKPiAoWEVOKSBB
Q1BJOiBTU0RUIEJGRkYwMkEwLCAwMUNDIChyMSBWQk9YICAgVkJPWENQVVQgICAgICAgIDIgSU5U
TCAyMDE2MDEwOCkKPiAoWEVOKSBObyBOVU1BIGNvbmZpZ3VyYXRpb24gZm91bmQKPiAoWEVOKSBG
YWtpbmcgYSBub2RlIGF0IDAwMDAwMDAwMDAwMDAwMDAtMDAwMDAwMDBiZmZmMDAwMAo+IChYRU4p
IERvbWFpbiBoZWFwIGluaXRpYWxpc2VkCj4gKFhFTikgQ1BVIFZlbmRvcjogSW50ZWwsIEZhbWls
eSA2ICgweDYpLCBNb2RlbCAxNDIgKDB4OGUpLCBTdGVwcGluZyA5Cj4gKHJhdyAwMDA4MDZlOSkK
PiAoWEVOKSBmb3VuZCBTTVAgTVAtdGFibGUgYXQgMDAwOWZmZjAKPiAoWEVOKSBETUkgMi41IHBy
ZXNlbnQuCj4gKFhFTikgVXNpbmcgQVBJQyBkcml2ZXIgZGVmYXVsdAo+IChYRU4pIEFDUEk6IFBN
LVRpbWVyIElPIFBvcnQ6IDB4NDAwOCAoMzIgYml0cykKPiAoWEVOKSBBQ1BJOiBTTEVFUCBJTkZP
OiBwbTF4X2NudFsxOjQwMDQsMTowXSwgcG0xeF9ldnRbMTo0MDAwLDE6MF0KPiAoWEVOKSBBQ1BJ
OiAgICAgICAgICAgICB3YWtldXBfdmVjW2JmZmYwMjBjXSwgdmVjX3NpemVbMjBdCj4gKFhFTikg
QUNQSTogTG9jYWwgQVBJQyBhZGRyZXNzIDB4ZmVlMDAwMDAKPiAoWEVOKSBBQ1BJOiBMQVBJQyAo
YWNwaV9pZFsweDAwXSBsYXBpY19pZFsweDAwXSBlbmFibGVkKQo+IChYRU4pIEFDUEk6IElPQVBJ
QyAoaWRbMHgwMV0gYWRkcmVzc1sweGZlYzAwMDAwXSBnc2lfYmFzZVswXSkKPiAoWEVOKSBJT0FQ
SUNbMF06IGFwaWNfaWQgMSwgdmVyc2lvbiAzMiwgYWRkcmVzcyAweGZlYzAwMDAwLCBHU0kgMC0y
Mwo+IChYRU4pIEFDUEk6IElOVF9TUkNfT1ZSIChidXMgMCBidXNfaXJxIDAgZ2xvYmFsX2lycSAy
IGRmbCBkZmwpCj4gKFhFTikgQUNQSTogSU5UX1NSQ19PVlIgKGJ1cyAwIGJ1c19pcnEgOSBnbG9i
YWxfaXJxIDkgaGlnaCBsZXZlbCkKPiAoWEVOKSBBQ1BJOiBJUlEwIHVzZWQgYnkgb3ZlcnJpZGUu
Cj4gKFhFTikgQUNQSTogSVJRMiB1c2VkIGJ5IG92ZXJyaWRlLgo+IChYRU4pIEFDUEk6IElSUTkg
dXNlZCBieSBvdmVycmlkZS4KPiAoWEVOKSBFbmFibGluZyBBUElDIG1vZGU6ICBGbGF0LiAgVXNp
bmcgMSBJL08gQVBJQ3MKPiAoWEVOKSBFUlNUIHRhYmxlIHdhcyBub3QgZm91bmQKPiAoWEVOKSBV
c2luZyBBQ1BJIChNQURUKSBmb3IgU01QIGNvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24KPiAoWEVO
KSBTTVA6IEFsbG93aW5nIDEgQ1BVcyAoMCBob3RwbHVnIENQVXMpCj4gKFhFTikgSVJRIGxpbWl0
czogMjQgR1NJLCAxODQgTVNJL01TSS1YCj4gKFhFTikgTm90IGVuYWJsaW5nIHgyQVBJQzogZGVw
ZW5kcyBvbiBpb21tdV9zdXBwb3J0c19laW0uCj4gKFhFTikgeHN0YXRlOiBzaXplOiAweDQ0MCBh
bmQgc3RhdGVzOiAweDcKPiAoWEVOKSBDUFUwOiBObyBNQ0UgYmFua3MgcHJlc2VudC4gTWFjaGlu
ZSBjaGVjayBzdXBwb3J0IGRpc2FibGVkCj4gKFhFTikgU3BlY3VsYXRpdmUgbWl0aWdhdGlvbiBm
YWNpbGl0aWVzOgo+IChYRU4pICAgQ29tcGlsZWQtaW4gc3VwcG9ydDogSU5ESVJFQ1RfVEhVTksK
PiAoWEVOKSBCVEkgbWl0aWdhdGlvbnM6IFRodW5rIFJFVFBPTElORSwgT3RoZXJzOiBSU0JfTkFU
SVZFIFJTQl9WTUVYSVQKPiAoWEVOKSBVc2luZyBzY2hlZHVsZXI6IFNNUCBDcmVkaXQgU2NoZWR1
bGVyIChjcmVkaXQpCj4gKFhFTikgUGxhdGZvcm0gdGltZXIgaXMgMy41NzlNSHogQUNQSSBQTSBU
aW1lcgo+IChYRU4pIERldGVjdGVkIDI3MTIuMDM1IE1IeiBwcm9jZXNzb3IuCj4gKFhFTikgSW5p
dGluZyBtZW1vcnkgc2hhcmluZy4KPiAoWEVOKSBhbHQgdGFibGUgZmZmZjgyZDA4MDQyMTc5OCAt
PiBmZmZmODJkMDgwNDIzMjQ0Cj4gKFhFTikgSS9PIHZpcnR1YWxpc2F0aW9uIGRpc2FibGVkCj4g
KFhFTikgbnJfc29ja2V0czogMQo+IChYRU4pIEVOQUJMSU5HIElPLUFQSUMgSVJRcwo+IChYRU4p
ICAtPiBVc2luZyBuZXcgQUNLIG1ldGhvZAo+IChYRU4pIC4uVElNRVI6IHZlY3Rvcj0weEYwIGFw
aWMxPTAgcGluMT0yIGFwaWMyPS0xIHBpbjI9LTEKPiAoWEVOKSBBbGxvY2F0ZWQgY29uc29sZSBy
aW5nIG9mIDE2IEtpQi4KPiAoWEVOKSBCcm91Z2h0IHVwIDEgQ1BVcwo+IChYRU4pIGJ1aWxkLWlk
OiAwNzM0MDUwODA5ZTBjYjlmNTJlNjUzMjJhMGQzOTExZDA4MmUzNDhiCj4gKFhFTikgQ1BVSURM
RTogZGlzYWJsZWQgZHVlIHRvIG5vIEhQRVQuIEZvcmNlIGVuYWJsZSB3aXRoICdjcHVpZGxlJy4K
PiAoWEVOKSBBQ1BJIHNsZWVwIG1vZGVzOiBTMwo+IChYRU4pIFZQTVU6IGRpc2FibGVkCj4gKFhF
TikgeGVub3Byb2Y6IEluaXRpYWxpemF0aW9uIGZhaWxlZC4gSW50ZWwgcHJvY2Vzc29yIGZhbWls
eSA2IG1vZGVsCj4gMTQyIGlzIG5vdCBzdXBwb3J0ZWQKPiAoWEVOKSBEb20wIGhhcyBtYXhpbXVt
IDIwOCBQSVJRcwo+IChYRU4pIE5YIChFeGVjdXRlIERpc2FibGUpIHByb3RlY3Rpb24gYWN0aXZl
Cj4gKFhFTikgKioqIExPQURJTkcgRE9NQUlOIDAgKioqCj4gKFhFTikgIFhlbiAga2VybmVsOiA2
NC1iaXQsIGxzYiwgY29tcGF0MzIKPiAoWEVOKSAgRG9tMCBrZXJuZWw6IDY0LWJpdCwgUEFFLCBs
c2IsIHBhZGRyIDB4MTAwMDAwMCAtPiAweDI5NTcwMDAKPiAoWEVOKSBQSFlTSUNBTCBNRU1PUlkg
QVJSQU5HRU1FTlQ6Cj4gKFhFTikgIERvbTAgYWxsb2MuOiAgIDAwMDAwMDAwYjQwMDAwMDAtPjAw
MDAwMDAwYjgwMDAwMDAgKDcxNTMwOSBwYWdlcwo+IHRvIGJlIGFsbG9jYXRlZCkKPiAoWEVOKSAg
SW5pdC4gcmFtZGlzazogMDAwMDAwMDBiYzkxNTAwMC0+MDAwMDAwMDBiZjdmZmVkOQo+IChYRU4p
IFZJUlRVQUwgTUVNT1JZIEFSUkFOR0VNRU5UOgo+IChYRU4pICBMb2FkZWQga2VybmVsOiBmZmZm
ZmZmZjgxMDAwMDAwLT5mZmZmZmZmZjgyOTU3MDAwCj4gKFhFTikgIEluaXQuIHJhbWRpc2s6IDAw
MDAwMDAwMDAwMDAwMDAtPjAwMDAwMDAwMDAwMDAwMDAKPiAoWEVOKSAgUGh5cy1NYWNoIG1hcDog
MDAwMDAwODAwMDAwMDAwMC0+MDAwMDAwODAwMDVhYzhjMAo+IChYRU4pICBTdGFydCBpbmZvOiAg
ICBmZmZmZmZmZjgyOTU3MDAwLT5mZmZmZmZmZjgyOTU3NGI0Cj4gKFhFTikgIFhlbnN0b3JlIHJp
bmc6IDAwMDAwMDAwMDAwMDAwMDAtPjAwMDAwMDAwMDAwMDAwMDAKPiAoWEVOKSAgQ29uc29sZSBy
aW5nOiAgMDAwMDAwMDAwMDAwMDAwMC0+MDAwMDAwMDAwMDAwMDAwMAo+IChYRU4pICBQYWdlIHRh
YmxlczogICBmZmZmZmZmZjgyOTU4MDAwLT5mZmZmZmZmZjgyOTcxMDAwCj4gKFhFTikgIEJvb3Qg
c3RhY2s6ICAgIGZmZmZmZmZmODI5NzEwMDAtPmZmZmZmZmZmODI5NzIwMDAKPiAoWEVOKSAgVE9U
QUw6ICAgICAgICAgZmZmZmZmZmY4MDAwMDAwMC0+ZmZmZmZmZmY4MmMwMDAwMAo+IChYRU4pICBF
TlRSWSBBRERSRVNTOiBmZmZmZmZmZjgyNGE0MTgwCj4gKFhFTikgRG9tMCBoYXMgbWF4aW11bSAx
IFZDUFVzCj4gKFhFTikgSW5pdGlhbCBsb3cgbWVtb3J5IHZpcnEgdGhyZXNob2xkIHNldCBhdCAw
eDQwMDAgcGFnZXMuCj4gKFhFTikgU2NydWJiaW5nIEZyZWUgUkFNIG9uIDEgbm9kZXMgdXNpbmcg
MSBDUFVzCj4gKFhFTikgLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uZG9uZS4KPiAoWEVOKSBTdGQu
IExvZ2xldmVsOiBBbGwKPiAoWEVOKSBHdWVzdCBMb2dsZXZlbDogQWxsCj4gKFhFTikgKioqIFNl
cmlhbCBpbnB1dCAtPiBET00wICh0eXBlICdDVFJMLWEnIHRocmVlIHRpbWVzIHRvIHN3aXRjaAo+
IGlucHV0IHRvIFhlbikKPiAoWEVOKSBGcmVlZCA0NjhrQiBpbml0IG1lbW9yeQo+IG1hcHBpbmcg
a2VybmVsIGludG8gcGh5c2ljYWwgbWVtb3J5Cj4gYWJvdXQgdG8gZ2V0IHN0YXJ0ZWQuLi4KPiAo
WEVOKSBkMHYwIFVuaGFuZGxlZCBpbnZhbGlkIG9wY29kZSBmYXVsdC90cmFwIFsjNiwgZWM9ZmZm
ZmZmZmZdCj4gKFhFTikgZG9tYWluX2NyYXNoX3N5bmMgY2FsbGVkIGZyb20gZW50cnkuUzogZmF1
bHQgYXQgZmZmZjgyZDA4MDM1NTAxZgo+IHg4Nl82NC9lbnRyeS5TI2NyZWF0ZV9ib3VuY2VfZnJh
bWUrMHgxMzUvMHgxNjYKPiAoWEVOKSBEb21haW4gMCAodmNwdSMwKSBjcmFzaGVkIG9uIGNwdSMw
Ogo+IChYRU4pIC0tLS1bIFhlbi00LjEwLjEtcHJlICB4ODZfNjQgIGRlYnVnPW4gICBOb3QgdGFp
bnRlZCBdLS0tLQo+IChYRU4pIENQVTogICAgMAo+IChYRU4pIFJJUDogICAgZTAzMzpbPGZmZmZm
ZmZmODI0YjQ5Y2Q+XQo+IChYRU4pIFJGTEFHUzogMDAwMDAwMDAwMDAwMDI4NiAgIEVNOiAxICAg
Q09OVEVYVDogcHYgZ3Vlc3QgKGQwdjApCj4gKFhFTikgcmF4OiAwMDAwMDAwMDAwMDAwMDI5ICAg
cmJ4OiAwMDAwMDAwMDAwMDAwMDBhICAgcmN4OiBmZmZmZmZmZjgyMjYxMWM4Cj4gKFhFTikgcmR4
OiAwMDAwMDAwMDAwMDAwMDAwICAgcnNpOiAwMDAwMDAwMDAwMDAwMDAwICAgcmRpOiAwMDAwMDAw
MDAwMDAwMDAwCj4gKFhFTikgcmJwOiBmZmZmZmZmZjgyMjAzZTAwICAgcnNwOiBmZmZmZmZmZjgy
MjAzZDY4ICAgcjg6ICA2NTc2NjE2NTZjMjA2NzZlCj4gKFhFTikgcjk6ICAwMDAwMDAwMDAwMDAw
MDA3ICAgcjEwOiBmZmZmZmZmZjgyMjAzZDg0ICAgcjExOiAwMDAwMDAwMDAwMDAwMDI5Cj4gKFhF
TikgcjEyOiAwMDAwMDAwMDAwMDAwMTAwICAgcjEzOiAwMDAwMDAwMDAwMDAwMzQwICAgcjE0OiAw
MDAwMDAwMDAwMDAwNDQwCj4gKFhFTikgcjE1OiBmZmZmZmZmZjgyMjAzZGMwICAgY3IwOiAwMDAw
MDAwMDgwMDUwMDMzICAgY3I0OiAwMDAwMDAwMDAwMDQwNmEwCj4gKFhFTikgY3IzOiAwMDAwMDAw
MGI2MjBhMDAwICAgY3IyOiAwMDAwMDAwMDAwMDAwMDAwCj4gKFhFTikgZnNiOiAwMDAwMDAwMDAw
MDAwMDAwICAgZ3NiOiBmZmZmZmZmZjgyNDgwMDAwICAgZ3NzOiAwMDAwMDAwMDAwMDAwMDAwCj4g
KFhFTikgZHM6IDAwMDAgICBlczogMDAwMCAgIGZzOiAwMDAwICAgZ3M6IDAwMDAgICBzczogZTAy
YiAgIGNzOiBlMDMzCj4gKFhFTikgR3Vlc3Qgc3RhY2sgdHJhY2UgZnJvbSByc3A9ZmZmZmZmZmY4
MjIwM2Q2ODoKPiAoWEVOKSAgICBmZmZmZmZmZjgyMjYxMWM4IDAwMDAwMDAwMDAwMDAwMjkgZmZm
ZmZmZmY4MjRiNDljZCAwMDAwMDAwMTAwMDBlMDMwCj4gKFhFTikgICAgMDAwMDAwMDAwMDAxMDA4
NiBmZmZmZmZmZjgyMjAzZGEwIDAwMDAwMDAwMDAwMGUwMmIgMDAwMDA0NDAwMDAwMDAwNwo+IChY
RU4pICAgIDAwMDAwMDAwMDAwMDAzNDAgMDAwMDAwMDAwMDAwMDAyMCBmZmZmZmZmZjgyMjAzZGYw
IDAwMDAwMjQwMDAwMDAxMDAKPiAoWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIGE2ZjZhMjkyYTZm
NmEyMDAgZmZmZmZmZmY4MjIwM2UyOCBmZmZmZmZmZjgxZTA4ZDgwCj4gKFhFTikgICAgMDAwMDAw
MDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgZmZmZmZmZmY4MjIw
M2U2MAo+IChYRU4pICAgIGZmZmZmZmZmODI0YjQzNDIgZmZmZmZmZmY4MjIwM2UyOCBmZmZmZmZm
ZjgxMDFmMmE2IGZmZmZmZmZmODIyMDNlMjgKPiAoWEVOKSAgICBmZmZmZmZmZjgxMDQwOTAwIGZm
ZmZmZmZmODEwNDBhZTIgMDAwMDA4MDAwMDA4MDZlOSAwNzg5ZGJmNWRlZjgyMjAzCj4gKFhFTikg
ICAgYTZmNmEyOTJhNmY2YTIwMCAwMDAwMDAwMDAwMDAwMDE4IGZmZmZmZmZmODIyMDNlNzggZmZm
ZmZmZmY4MjIwM2U4OAo+IChYRU4pICAgIGZmZmZmZmZmODI0YjU2YjAgZmZmZmZmZmY4MjRiNTZi
MCAwMDAwMDAwMDAxMDAwMDAwIGZmZmZmZmZmODIyMDNmMDAKPiAoWEVOKSAgICBmZmZmZmZmZjgy
MjAzZWYwIGZmZmZmZmZmODI0YjA3YWEgZmZmZmZmZmYwMDAwMDAxMCBmZmZmZmZmZjgyMjAzZjAw
Cj4gKFhFTikgICAgZmZmZmZmZmY4MjIwM2ViOCBhNmY2YTI5MmE2ZjZhMjAwIGZmZmZmZmZmODIy
MDNlNjggYTZmNmEyOTJhNmY2YTIwMAo+IChYRU4pICAgIGZmZmZmZmZmODIyMDNmNjAgZmZmZmZm
ZmY4MjIwM2Y1YyAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAKPiAoWEVOKSAgICAw
MDAwMDAwMDAwMDAwMDAwIGZmZmZmZmZmODIyMDNmMzAgZmZmZmZmZmY4MjRhNGQwYyBhNmY2YTI5
MmE2ZjZhMjAwCj4gKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCBmZmZmZmZmZjgyMjAzZjYwIGZm
ZmZmZmZmODIyMDNmNWMgMDAwMDAwMDAwMDAwMDAwMAo+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAw
MDAgZmZmZmZmZmY4MjIwM2Y0MCBmZmZmZmZmZjgyNGE0MmQ1IGZmZmZmZmZmODIyMDNmZjgKPiAo
WEVOKSAgICBmZmZmZmZmZjgyNGFkMTQ1IDAwMDgwNmU5MDAwMDAwMDAgMDAwMDAwMDEwMDAwMDgw
MCAwMzAwMDAwMTAwMDAwMDMyCj4gKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwNSAwMDAwMDAwMDAw
MDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMAo+IChYRU4pICAgIDAwMDAw
MDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAw
MDAwMDAKPiAoWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAw
MDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwCj4gKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCAw
MDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMAo+IChYRU4p
IEhhcmR3YXJlIERvbTAgY3Jhc2hlZDogcmVib290aW5nIG1hY2hpbmUgaW4gNSBzZWNvbmRzLgo+
IChYRU4pIFJlc2V0dGluZyB3aXRoIEFDUEkgTUVNT1JZIG9yIEkvTyBSRVNFVF9SRUcuCj4gIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMKPiAKPiAKPiBPbmUgdGhpbmcgaXMgZm9yIHN1cmUsIHRoYXQgdGhl
cmUgaXMgbm8gdmlydHVhbGl6YXRpb24tcmVsYXRlZCBpc3N1ZSwKPiBhcyB4ZW4tZG9tMCBpcyBz
dGFydGluZyBpbiBQViBtb2RlIG9ubHkuCgpJdCBpcyBhIGtlcm5lbCBwcm9ibGVtIHVuZGVyIHNv
bWUgY29tcGlsZSBjb25kaXRpb25zLiBTZWUgZm9yIGV4YW1wbGUKaHR0cHM6Ly9saXN0cy54ZW5w
cm9qZWN0Lm9yZy9hcmNoaXZlcy9odG1sL3hlbi1kZXZlbC8yMDE4LTAyL21zZzAwMDEwLmh0bWwK
YW5kIHRoZSBwYXRjaCBhdApodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL2FyY2hpdmVzL2h0
bWwveGVuLWRldmVsLzIwMTgtMDIvbXNnMDAwNDUuaHRtbAoKCU1pY2hhZWwgWW91bmcKCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBt
YWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlz
dHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 10:53:32 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 10:53:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3g2m-0006kn-HX; Wed, 04 Apr 2018 10:53:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3g2l-0006kg-TK
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 10:53:31 +0000
X-Inumbo-ID: 93b81264-37f6-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 93b81264-37f6-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 10:54:42 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id CD3D91042D3;
 Wed,  4 Apr 2018 12:53:27 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id CPpFaVUrTae1; Wed,  4 Apr 2018 12:53:27 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id AA013103EBC;
 Wed,  4 Apr 2018 12:53:23 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 12:53:23 +0200
To: Ajay Garg <ajaygargnsit@gmail.com>, <minios-devel@lists.xenproject.org>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
 <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
 <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
 <CAHP4M8XO-hSJT0EXkhoTZDv_esZy=dbYLTAqWS7jAkxCTe9VmA@mail.gmail.com>
 <CAHP4M8UL0=FARsbhy7ZO3Pteyq+8FMWCqT7N0ca2akk_8+ckBA@mail.gmail.com>
 <CAHP4M8URiaqes5yf_nAoBeWWjSV9UeTz6gFuni1JsfQBQdoBqw@mail.gmail.com>
 <CAHP4M8UGQ5JaFbHFG_cgFQoP+d3YRR1yvbBjXPHq4bN1kHcoSg@mail.gmail.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <a833ecbd-33bd-3f67-a167-aef790c7051c@neclab.eu>
Date: Wed, 4 Apr 2018 12:53:22 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8UGQ5JaFbHFG_cgFQoP+d3YRR1yvbBjXPHq4bN1kHcoSg@mail.gmail.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGV5IEFqYXksCgpjYW4geW91IHNob3cgbWUgeW91ciBoZWxsb3dvcmxkLmNmZyAob3IgaXMgaXQg
dGhlIG9uZSBmcm9tIHRoZSB3aWtpKT8gCkhvdyBkaWQgeW91IGluc3RhbGwgWGVuPyBXaGljaCBk
aXN0cm8gZG8geW91IHVzZSBmb3IgeW91ciBEb20wPyBEaWQgYWxsIApyZXF1aXJlZCBzZXJ2aWNl
cyBmb3IgWGVuIGdldCBpbml0aWFsaXplZCBhbmQgcnVuIGluIHlvdXIgRG9tMD8KClRoYW5rcywK
ClNpbW9uCgpPbiAwNC4wNC4yMDE4IDA2OjIwLCBBamF5IEdhcmcgd3JvdGU6Cj4gRm9sbG93aW5n
IGlzIHRoZSBsb2csIHdoZW4gc3RhcnRpbmcgdGhlIGRvbWFpbiB3aXRoIHZlcmJvc2UtbG9nZ2lu
ZyAKPiBlbmFibGVkIDoKPiAKPiAKPiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo+IHJvb3RATGF0aXR1ZGUtMzQ4MDovaG9tZS9hamF5L3Vu
aWtyYWZ0L2FwcHMvaGVsbG93b3JsZCMgKnhsIC12diBjcmVhdGUgCj4gLWMgaGVsbG93b3JsZC5j
ZmcqCj4gUGFyc2luZyBjb25maWcgZnJvbSBoZWxsb3dvcmxkLmNmZwo+IGRvbWFpbmJ1aWxkZXI6
IGRldGFpbDogeGNfZG9tX2FsbG9jYXRlOiBjbWRsaW5lPSIobnVsbCkiLCBmZWF0dXJlcz0iKG51
bGwpIgo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX2tlcm5lbF9maWxlOiAKPiBmaWxl
bmFtZT0iLi9idWlsZC9oZWxsb3dvcmxkX3hlbi14ODZfNjQiCj4gZG9tYWluYnVpbGRlcjogZGV0
YWlsOiB4Y19kb21fYm9vdF94ZW5faW5pdDogdmVyIDQuNiwgY2FwcyAKPiB4ZW4tMy4wLXg4Nl82
NCB4ZW4tMy4wLXg4Nl8zMnAgaHZtLTMuMC14ODZfMzIgaHZtLTMuMC14ODZfMzJwIAo+IGh2bS0z
LjAteDg2XzY0Cj4gZG9tYWluYnVpbGRlcjogZGV0YWlsOiB4Y19kb21fcGFyc2VfaW1hZ2U6IGNh
bGxlZAo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX2ZpbmRfbG9hZGVyOiB0cnlpbmcg
bXVsdGlib290LWJpbmFyeSAKPiBsb2FkZXIgLi4uCj4gZG9tYWluYnVpbGRlcjogZGV0YWlsOiBs
b2FkZXIgcHJvYmUgZmFpbGVkCj4gZG9tYWluYnVpbGRlcjogZGV0YWlsOiB4Y19kb21fZmluZF9s
b2FkZXI6IHRyeWluZyBMaW51eCBiekltYWdlIGxvYWRlciAuLi4KPiBkb21haW5idWlsZGVyOiBk
ZXRhaWw6IHhjX2RvbV9wcm9iZV9iemltYWdlX2tlcm5lbDoga2VybmVsIGlzIG5vdCBhIGJ6SW1h
Z2UKPiBkb21haW5idWlsZGVyOiBkZXRhaWw6IGxvYWRlciBwcm9iZSBmYWlsZWQKPiBkb21haW5i
dWlsZGVyOiBkZXRhaWw6IHhjX2RvbV9maW5kX2xvYWRlcjogdHJ5aW5nIEVMRi1nZW5lcmljIGxv
YWRlciAuLi4KPiBkb21haW5idWlsZGVyOiBkZXRhaWw6IGxvYWRlciBwcm9iZSBPSwo+IHhjOiBk
ZXRhaWw6IGVsZl9wYXJzZV9iaW5hcnk6IHBoZHI6IHBhZGRyPTB4MCBtZW1zej0weDVhMDg4Cj4g
eGM6IGRldGFpbDogZWxmX3BhcnNlX2JpbmFyeTogbWVtb3J5OiAweDAgLT4gMHg1YTA4OAo+IHhj
OiBkZXRhaWw6IGVsZl94ZW5fcGFyc2Vfbm90ZTogR1VFU1RfT1MgPSAiVW5pa3JhZnQiCj4geGM6
IGRldGFpbDogZWxmX3hlbl9wYXJzZV9ub3RlOiBMT0FERVIgPSAiZ2VuZXJpYyIKPiB4YzogZGV0
YWlsOiBlbGZfeGVuX3BhcnNlX25vdGU6IEhZUEVSQ0FMTF9QQUdFID0gMHgzMDAwCj4geGM6IGRl
dGFpbDogZWxmX3hlbl9wYXJzZV9ub3RlOiBYRU5fVkVSU0lPTiA9ICJ4ZW4tMy4wIgo+IHhjOiBk
ZXRhaWw6IGVsZl94ZW5fcGFyc2U6IHVzaW5nIG5vdGVzIGZyb20gU0hUX05PVEUgc2VjdGlvbgo+
IHhjOiBkZXRhaWw6IGVsZl94ZW5fYWRkcl9jYWxjX2NoZWNrOiBWSVJUX0JBU0UgdW5zZXQsIHVz
aW5nIDB4MAo+IHhjOiBkZXRhaWw6IGVsZl94ZW5fYWRkcl9jYWxjX2NoZWNrOiBFTEZfUEFERFJf
T0ZGU0VUIHVuc2V0LCB1c2luZyAweDAKPiB4YzogZGV0YWlsOiBlbGZfeGVuX2FkZHJfY2FsY19j
aGVjazogYWRkcmVzc2VzOgo+IHhjOiBkZXRhaWw6wqDCoMKgwqAgdmlydF9iYXNlwqDCoMKgwqDC
oMKgwqAgPSAweDAKPiB4YzogZGV0YWlsOsKgwqDCoMKgIGVsZl9wYWRkcl9vZmZzZXQgPSAweDAK
PiB4YzogZGV0YWlsOsKgwqDCoMKgIHZpcnRfb2Zmc2V0wqDCoMKgwqDCoCA9IDB4MAo+IHhjOiBk
ZXRhaWw6wqDCoMKgwqAgdmlydF9rc3RhcnTCoMKgwqDCoMKgID0gMHgwCj4geGM6IGRldGFpbDrC
oMKgwqDCoCB2aXJ0X2tlbmTCoMKgwqDCoMKgwqDCoCA9IDB4NWEwODgKPiB4YzogZGV0YWlsOsKg
wqDCoMKgIHZpcnRfZW50cnnCoMKgwqDCoMKgwqAgPSAweDEwMDAKPiB4YzogZGV0YWlsOsKgwqDC
oMKgIHAybV9iYXNlwqDCoMKgwqDCoMKgwqDCoCA9IDB4ZmZmZmZmZmZmZmZmZmZmZgo+IGRvbWFp
bmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX3BhcnNlX2VsZl9rZXJuZWw6IHhlbi0zLjAteDg2XzY0
OiAweDAgLT4gCj4gMHg1YTA4OAo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX21lbV9p
bml0OiBtZW0gNCBNQiwgcGFnZXMgMHg0MDAgcGFnZXMsIDRrIGVhY2gKPiBkb21haW5idWlsZGVy
OiBkZXRhaWw6IHhjX2RvbV9tZW1faW5pdDogMHg0MDAgcGFnZXMKPiBkb21haW5idWlsZGVyOiBk
ZXRhaWw6IHhjX2RvbV9ib290X21lbV9pbml0OiBjYWxsZWQKPiBkb21haW5idWlsZGVyOiBkZXRh
aWw6IHg4Nl9jb21wYXQ6IGd1ZXN0IHhlbi0zLjAteDg2XzY0LCBhZGRyZXNzIHNpemUgNjQKPiBk
b21haW5idWlsZGVyOiBkZXRhaWw6IHhjX2RvbV9idWlsZF9pbWFnZTogY2FsbGVkCj4gZG9tYWlu
YnVpbGRlcjogZGV0YWlsOiB4Y19kb21fYWxsb2Nfc2VnbWVudDrCoMKgIGtlcm5lbMKgwqDCoMKg
wqDCoCA6IDB4MCAtPiAKPiAweDViMDAwwqAgKHBmbiAweDAgKyAweDViIHBhZ2VzKQo+IGRvbWFp
bmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX3Bmbl90b19wdHJfcmV0Y291bnQ6IGRvbVUgbWFwcGlu
ZzogcGZuIAo+IDB4MCsweDViIGF0IDB4N2ZlMDE1NzIwMDAwCj4geGM6IGRldGFpbDogZWxmX2xv
YWRfYmluYXJ5OiBwaGRyIDAgYXQgMHg3ZmUwMTU3MjAwMDAgLT4gMHg3ZmUwMTU3MmYxNWMKPiBk
b21haW5idWlsZGVyOiBkZXRhaWw6IHhjX2RvbV9hbGxvY19zZWdtZW50OsKgwqAgcGh5czJtYWNo
wqDCoMKgIDogMHg1YjAwMCAtPiAKPiAweDVkMDAwwqAgKHBmbiAweDViICsgMHgyIHBhZ2VzKQo+
IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX3Bmbl90b19wdHJfcmV0Y291bnQ6IGRvbVUg
bWFwcGluZzogcGZuIAo+IDB4NWIrMHgyIGF0IDB4N2ZlMDE1NzhlMDAwCj4gZG9tYWluYnVpbGRl
cjogZGV0YWlsOiB4Y19kb21fYWxsb2NfcGFnZcKgwqAgOsKgwqAgc3RhcnQgaW5mb8KgwqAgOiAw
eDVkMDAwIAo+IChwZm4gMHg1ZCkKPiBkb21haW5idWlsZGVyOiBkZXRhaWw6IHhjX2RvbV9hbGxv
Y19wYWdlwqDCoCA6wqDCoCB4ZW5zdG9yZcKgwqDCoMKgIDogMHg1ZTAwMCAKPiAocGZuIDB4NWUp
Cj4gZG9tYWluYnVpbGRlcjogZGV0YWlsOiB4Y19kb21fYWxsb2NfcGFnZcKgwqAgOsKgwqAgY29u
c29sZcKgwqDCoMKgwqAgOiAweDVmMDAwIAo+IChwZm4gMHg1ZikKPiBkb21haW5idWlsZGVyOiBk
ZXRhaWw6IG5yX3BhZ2VfdGFibGVzOiAweDAwMDBmZmZmZmZmZmZmZmYvNDg6IAo+IDB4MDAwMDAw
MDAwMDAwMDAwMCAtPiAweDAwMDBmZmZmZmZmZmZmZmYsIDEgdGFibGUocykKPiBkb21haW5idWls
ZGVyOiBkZXRhaWw6IG5yX3BhZ2VfdGFibGVzOiAweDAwMDAwMDdmZmZmZmZmZmYvMzk6IAo+IDB4
MDAwMDAwMDAwMDAwMDAwMCAtPiAweDAwMDAwMDdmZmZmZmZmZmYsIDEgdGFibGUocykKPiBkb21h
aW5idWlsZGVyOiBkZXRhaWw6IG5yX3BhZ2VfdGFibGVzOiAweDAwMDAwMDAwM2ZmZmZmZmYvMzA6
IAo+IDB4MDAwMDAwMDAwMDAwMDAwMCAtPiAweDAwMDAwMDAwM2ZmZmZmZmYsIDEgdGFibGUocykK
PiBkb21haW5idWlsZGVyOiBkZXRhaWw6IG5yX3BhZ2VfdGFibGVzOiAweDAwMDAwMDAwMDAxZmZm
ZmYvMjE6IAo+IDB4MDAwMDAwMDAwMDAwMDAwMCAtPiAweDAwMDAwMDAwMDAzZmZmZmYsIDIgdGFi
bGUocykKPiBkb21haW5idWlsZGVyOiBkZXRhaWw6IHhjX2RvbV9hbGxvY19zZWdtZW50OsKgwqAg
cGFnZSB0YWJsZXPCoCA6IDB4NjAwMDAgLT4gCj4gMHg2NTAwMMKgIChwZm4gMHg2MCArIDB4NSBw
YWdlcykKPiBkb21haW5idWlsZGVyOiBkZXRhaWw6IHhjX2RvbV9wZm5fdG9fcHRyX3JldGNvdW50
OiBkb21VIG1hcHBpbmc6IHBmbiAKPiAweDYwKzB4NSBhdCAweDdmZTAxNTc4OTAwMAo+IGRvbWFp
bmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX2FsbG9jX3BhZ2XCoMKgIDrCoMKgIGJvb3Qgc3RhY2vC
oMKgIDogMHg2NTAwMCAKPiAocGZuIDB4NjUpCj4gZG9tYWluYnVpbGRlcjogZGV0YWlsOiB4Y19k
b21fYnVpbGRfaW1hZ2XCoCA6IHZpcnRfYWxsb2NfZW5kIDogMHg2NjAwMAo+IGRvbWFpbmJ1aWxk
ZXI6IGRldGFpbDogeGNfZG9tX2J1aWxkX2ltYWdlwqAgOiB2aXJ0X3BndGFiX2VuZCA6IDB4NDAw
MDAwCj4gZG9tYWluYnVpbGRlcjogZGV0YWlsOiB4Y19kb21fYm9vdF9pbWFnZTogY2FsbGVkCj4g
ZG9tYWluYnVpbGRlcjogZGV0YWlsOiBhcmNoX3NldHVwX2Jvb3RlYXJseTogZG9pbmcgbm90aGlu
Zwo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX2NvbXBhdF9jaGVjazogc3VwcG9ydGVk
IGd1ZXN0IHR5cGU6IAo+IHhlbi0zLjAteDg2XzY0IDw9IG1hdGNoZXMKPiBkb21haW5idWlsZGVy
OiBkZXRhaWw6IHhjX2RvbV9jb21wYXRfY2hlY2s6IHN1cHBvcnRlZCBndWVzdCB0eXBlOiAKPiB4
ZW4tMy4wLXg4Nl8zMnAKPiBkb21haW5idWlsZGVyOiBkZXRhaWw6IHhjX2RvbV9jb21wYXRfY2hl
Y2s6IHN1cHBvcnRlZCBndWVzdCB0eXBlOiAKPiBodm0tMy4wLXg4Nl8zMgo+IGRvbWFpbmJ1aWxk
ZXI6IGRldGFpbDogeGNfZG9tX2NvbXBhdF9jaGVjazogc3VwcG9ydGVkIGd1ZXN0IHR5cGU6IAo+
IGh2bS0zLjAteDg2XzMycAo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX2NvbXBhdF9j
aGVjazogc3VwcG9ydGVkIGd1ZXN0IHR5cGU6IAo+IGh2bS0zLjAteDg2XzY0Cj4gZG9tYWluYnVp
bGRlcjogZGV0YWlsOiB4Y19kb21fdXBkYXRlX2d1ZXN0X3AybTogZHN0IDY0Yml0LCBwYWdlcyAw
eDQwMAo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogY2xlYXJfcGFnZTogcGZuIDB4NWYsIG1mbiAw
eDEzMGM1Zgo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogY2xlYXJfcGFnZTogcGZuIDB4NWUsIG1m
biAweDEzMGM1ZQo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX3Bmbl90b19wdHJfcmV0
Y291bnQ6IGRvbVUgbWFwcGluZzogcGZuIAo+IDB4NWQrMHgxIGF0IDB4N2ZlMDE1Nzg2MDAwCj4g
ZG9tYWluYnVpbGRlcjogZGV0YWlsOiBzdGFydF9pbmZvX3g4Nl82NDogY2FsbGVkCj4gZG9tYWlu
YnVpbGRlcjogZGV0YWlsOiBzZXR1cF9oeXBlcmNhbGxfcGFnZTogdmFkZHI9MHgzMDAwIHBmbj0w
eDMKPiBkb21haW5idWlsZGVyOiBkZXRhaWw6IGRvbWFpbiBidWlsZGVyIG1lbW9yeSBmb290cHJp
bnQKPiBkb21haW5idWlsZGVyOiBkZXRhaWw6wqDCoMKgIGFsbG9jYXRlZAo+IGRvbWFpbmJ1aWxk
ZXI6IGRldGFpbDrCoMKgwqDCoMKgwqAgbWFsbG9jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDog
MTMzODQgYnl0ZXMKPiBkb21haW5idWlsZGVyOiBkZXRhaWw6wqDCoMKgwqDCoMKgIGFub24gbW1h
cMKgwqDCoMKgwqDCoMKgwqDCoCA6IDAgYnl0ZXMKPiBkb21haW5idWlsZGVyOiBkZXRhaWw6wqDC
oMKgIG1hcHBlZAo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDrCoMKgwqDCoMKgwqAgZmlsZSBtbWFw
wqDCoMKgwqDCoMKgwqDCoMKgIDogNjUga0IKPiBkb21haW5idWlsZGVyOiBkZXRhaWw6wqDCoMKg
wqDCoMKgIGRvbVUgbW1hcMKgwqDCoMKgwqDCoMKgwqDCoCA6IDM5NiBrQgo+IGRvbWFpbmJ1aWxk
ZXI6IGRldGFpbDogYXJjaF9zZXR1cF9ib290bGF0ZTogc2hhcmVkX2luZm86IHBmbiAweDAsIG1m
biAKPiAweGI2YzhlCj4gZG9tYWluYnVpbGRlcjogZGV0YWlsOiBzaGFyZWRfaW5mb194ODZfNjQ6
IGNhbGxlZAo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogdmNwdV94ODZfNjQ6IGNhbGxlZAo+IGRv
bWFpbmJ1aWxkZXI6IGRldGFpbDogdmNwdV94ODZfNjQ6IGNyMzogcGZuIDB4NjAgbWZuIDB4MTMw
YzYwCj4gZG9tYWluYnVpbGRlcjogZGV0YWlsOiBsYXVuY2hfdm06IGNhbGxlZCwgY3R4dD0weDdm
ZTAxNTc4NzAwNAo+IGRvbWFpbmJ1aWxkZXI6IGRldGFpbDogeGNfZG9tX3JlbGVhc2U6IGNhbGxl
ZAo+IGxpYnhsOiBlcnJvcjogbGlieGxfZG9tLmM6Mzc6bGlieGxfX2RvbWFpbl90eXBlOiB1bmFi
bGUgdG8gZ2V0IGRvbWFpbiAKPiB0eXBlIGZvciBkb21pZD0yCj4geGw6IHVuYWJsZSB0byBleGVj
IGNvbnNvbGUgY2xpZW50OiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5Cj4gbGlieGw6IGVycm9y
OiBsaWJ4bF9leGVjLmM6MTE4OmxpYnhsX3JlcG9ydF9jaGlsZF9leGl0c3RhdHVzOiBjb25zb2xl
IAo+IGNoaWxkIFszODU1XSBleGl0ZWQgd2l0aCBlcnJvciBzdGF0dXMgMQo+ICMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCj4gCj4gT24gV2Vk
LCBBcHIgNCwgMjAxOCBhdCA5OjAxIEFNLCBBamF5IEdhcmcgPGFqYXlnYXJnbnNpdEBnbWFpbC5j
b20gCj4gPG1haWx0bzphamF5Z2FyZ25zaXRAZ21haWwuY29tPj4gd3JvdGU6Cj4gCj4gICAgIEVh
cm5lc3QgcmVxdWVzdCBmb3IgaGVscCBwbGVhc2UuCj4gCj4gICAgIEkgaGF2ZSBldmVuIGNvbmZp
cm1lZCB0aGF0IGhhcmR3YXJlLXZpcnR1YWxpemF0aW9uIGlzIGVuYWJsZWQgaW4gQ1BVCj4gICAg
IGFuZCBCSU9TLgo+ICAgICBBbHNvLCB3aGVuIGJvb3RlZCBpbnRvIFhlbiwgZm9sbG93aW5nIGlz
IHNlZW4gZmluZSA6Cj4gCj4gICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjCj4gICAgIGFqYXlATGF0aXR1ZGUtMzQ4MDp+JCBjYXQgL3N5
cy9oeXBlcnZpc29yL3Byb3BlcnRpZXMvY2FwYWJpbGl0aWVzCj4gICAgIHhlbi0zLjAteDg2XzY0
IHhlbi0zLjAteDg2XzMycCBodm0tMy4wLXg4Nl8zMiBodm0tMy4wLXg4Nl8zMnAKPiAgICAgaHZt
LTMuMC14ODZfNjQKPiAgICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMKPiAKPiAKPiAgICAgSG93ZXZlciwgcnVubmluZyB0aGUgaGVsbG8t
d29ybGQgYXBwIGdpdmVzIHRoZSBzYW1lIGVycm9yIDoKPiAKPiAgICAgIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPiAgICAgcm9vdEBMYXRp
dHVkZS0zNDgwOi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9oZWxsb3dvcmxkIyB4bCBjcmVhdGUg
LWMKPiAgICAgaGVsbG93b3JsZC5jZmcKPiAgICAgUGFyc2luZyBjb25maWcgZnJvbSBoZWxsb3dv
cmxkLmNmZwo+ICAgICBsaWJ4bDogZXJyb3I6IGxpYnhsX2RvbS5jOjM3OmxpYnhsX19kb21haW5f
dHlwZTogdW5hYmxlIHRvIGdldAo+ICAgICBkb21haW4gdHlwZSBmb3IgZG9taWQ9MQo+ICAgICB4
bDogdW5hYmxlIHRvIGV4ZWMgY29uc29sZSBjbGllbnQ6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rv
cnkKPiAgICAgbGlieGw6IGVycm9yOiBsaWJ4bF9leGVjLmM6MTE4OmxpYnhsX3JlcG9ydF9jaGls
ZF9leGl0c3RhdHVzOgo+ICAgICBjb25zb2xlIGNoaWxkIFszMDA0XSBleGl0ZWQgd2l0aCBlcnJv
ciBzdGF0dXMgMQo+ICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIwo+IAo+ICAgICBPbiBUdWUsIEFwciAzLCAyMDE4IGF0IDI6MDYgUE0s
IEFqYXkgR2FyZyA8YWpheWdhcmduc2l0QGdtYWlsLmNvbQo+ICAgICA8bWFpbHRvOmFqYXlnYXJn
bnNpdEBnbWFpbC5jb20+PiB3cm90ZToKPiAKPiAgICAgICAgIEhlbHAgcGxlYXNlIC4uLiB1bmlr
cmFmdCBzZWVtcyB0byBiZSB0aGUgb25seSBvcHRpb24gbm93IHRvIHJ1bgo+ICAgICAgICAgdW5p
a2VybmVscyBvbiBBUk0uCj4gICAgICAgICBCdXQgYmVmb3JlIEkgcmVhY2ggdGhlcmUsIEkgbmVl
ZCB0byBmZWVsIGNvbmZpZGVudCBmaXJzdCBvbiB4ODYKPiAgICAgICAgICh3aXRoIHVuaWtyYWZ0
KS4KPiAKPiAKPiAgICAgICAgIFRoYW5rcyBhbmQgUmVnYXJkcywKPiAgICAgICAgIEFqYXkKPiAK
PiAKPiAKPiAKPiAgICAgLS0gCj4gICAgIFJlZ2FyZHMsCj4gICAgIEFqYXkKPiAKPiAKPiAKPiAK
PiAtLSAKPiBSZWdhcmRzLAo+IEFqYXkKPiAKPiAKPiBfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fXwo+IE1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKPiBNaW5p
b3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKPiBodHRwczovL2xpc3RzLnhlbnByb2plY3Qu
b3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVsCj4gCgpfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1p
bmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qu
b3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 11:58:05 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 11:58:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3h3D-0003RV-78; Wed, 04 Apr 2018 11:58:03 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=3ptd=gz=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3h3B-0003RQ-Rg
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 11:58:01 +0000
X-Inumbo-ID: 55f1dc4b-37ff-11e8-9728-bc764e045a96
Received: from mail-wr0-x22f.google.com (unknown [2a00:1450:400c:c0c::22f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 55f1dc4b-37ff-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 13:57:24 +0200 (CEST)
Received: by mail-wr0-x22f.google.com with SMTP id s12so11595332wrc.8
 for <minios-devel@lists.xenproject.org>; Wed, 04 Apr 2018 04:58:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=Hwu6GemPdUF2+APlxQjuDfAT3lZKMjJGAleMLPiSmwI=;
 b=HZikd30q3bGULBllah2cE4W9wx49x28fq4cgpidu+w1Hiq4Ck1mZBWqZ5fIYxYFUaL
 hPcJY+lBDCGuRvNkukliuVmOniKkwtHaCm7gS7t0N9+oVEcVAtCJHBX6d9G3/rQ/OW4J
 Ozaqjxt6yKUftD6rWJKV45eew9wYBc1fV8XWrFrRZJp7XRtXBcFj5P+sgJP1LS069QAS
 9g2oSx76CwhkGOJltw+9JP2cXXjOIDGN1W306oBmNBAMr9J5mXHMM2EeA5boMQ7kZBIp
 +AGpWpEhDb3wS9iLOjYmtnsmTsG2HTwpgRDysGUwRY3a+974QFnNZqEuYxscbun1b/Dy
 qcTQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=Hwu6GemPdUF2+APlxQjuDfAT3lZKMjJGAleMLPiSmwI=;
 b=poOSNMfMQziqmfhLjZD6QuOApEiMAc7k4LWPha1+jeBx4biQWR3zGF4Q4QGd00/CVP
 g7kD8pPEH8bP9uNMrxdTfjC1FmkqQkH+2Gz45axdr/j1i+zLU06vnB76j7v4788GVIRr
 ksM36Yf5dADqarPDkURRSo/Dv6iepmm8/1Vx1dQMDT8qM+Bj27mHayDag1ERDRnlCboC
 J526daohb2ZU1mv99oc+0PDkD5h5kNPNC69pje6EQyxb0hc+jkPMt5uQHAe54tdEmlqN
 /4IO5XbCMiHIkLcnXPZ1eeAE6RavMyUaQmyHK0rpDg2piFkiLgJE9xKoUKdFV995shkg
 wOhA==
X-Gm-Message-State: ALQs6tBs8+SHQuU5C603iX87q1LZ8x29/ZBDfmOlc43x3Rkedzc2QyBV
 GVgvuOJUNxhoeyhsuW+NJDchnHt4EJQKPCbx/14=
X-Google-Smtp-Source: AIpwx4+NZXExysGyhROsoIJnVzJ9tDkD+Db7aIvfcFpeYo/mxtByndDSkWn6hHhL+wbfOhLlIwC8Uv5je/TCYagiqSo=
X-Received: by 2002:a19:2044:: with SMTP id
 g65-v6mr11365123lfg.0.1522843079324; 
 Wed, 04 Apr 2018 04:57:59 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Wed, 4 Apr 2018 04:57:58 -0700 (PDT)
In-Reply-To: <a833ecbd-33bd-3f67-a167-aef790c7051c@neclab.eu>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
 <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
 <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
 <CAHP4M8XO-hSJT0EXkhoTZDv_esZy=dbYLTAqWS7jAkxCTe9VmA@mail.gmail.com>
 <CAHP4M8UL0=FARsbhy7ZO3Pteyq+8FMWCqT7N0ca2akk_8+ckBA@mail.gmail.com>
 <CAHP4M8URiaqes5yf_nAoBeWWjSV9UeTz6gFuni1JsfQBQdoBqw@mail.gmail.com>
 <CAHP4M8UGQ5JaFbHFG_cgFQoP+d3YRR1yvbBjXPHq4bN1kHcoSg@mail.gmail.com>
 <a833ecbd-33bd-3f67-a167-aef790c7051c@neclab.eu>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Wed, 4 Apr 2018 17:27:58 +0530
Message-ID: <CAHP4M8XrH+Fv0hrYOUS_84ggH+LnNg+EZMjZ=QC9Z+jK=O2MwQ@mail.gmail.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24uCgpUaGFua3MgZm9yIHRoZSByZXBseS4KCk9uIFdlZCwgQXByIDQsIDIwMTggYXQg
NDoyMyBQTSwgU2ltb24gS3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+IHdyb3RlOgo+
IEhleSBBamF5LAo+Cj4gY2FuIHlvdSBzaG93IG1lIHlvdXIgaGVsbG93b3JsZC5jZmcgKG9yIGlz
IGl0IHRoZSBvbmUgZnJvbSB0aGUgd2lraSk/CgpZZXAsIGV4YWN0bHkgdGhlIHNhbWUuCgoKCj4g
SG93IGRpZCB5b3UgaW5zdGFsbCBYZW4/CgpWaWEgdmFuaWxsYSBzdWRvICJhcHQtZ2V0IGluc3Rh
bGwgeGVuLWh5cGVydmlzb3ItNC42LWFtZDY0IgoKCgo+IFdoaWNoIGRpc3RybyBkbyB5b3UgdXNl
IGZvciB5b3VyIERvbTA/CgpJIGRpZCBub3RoaW5nIHNwZWNpYWwuCgpKdXN0IGluc3RhbGxlZCB4
ZW4gaW4gYSBVYnVudHUtMTYuMDRfeDg2XzY0IHZpcnR1YWxib3gtZ3Vlc3Qgb24gYQpVYnVudHUt
MTYuMDRfeDg2XzY0IGhvc3QsIGFuZCByZWJvb3RlZCAodGhlIGd1ZXN0KS4KVXBvbiByZWJvb3Rp
bmcsIERvbWFpbi0wIHdhcyB2aXNpYmxlIChvbiB0aGUgZ3Vlc3QpIHdoZW4gZG9pbmcgInN1ZG8g
eGwgbGlzdCIuCgoKCj5EaWQgYWxsIHJlcXVpcmVkIHNlcnZpY2VzIGZvciBYZW4gZ2V0IGluaXRp
YWxpemVkIGFuZCBydW4gaW4geW91ciBEb20wPwoKQXMgc3RhdGVkLCBJIGNhbiBzZWUgRG9tYWlu
LTAgYXMgb3V0cHV0IG9mICJzdWRvIHhsIGxpc3QiLgpBbHNvLCBkb2luZyAic3lzdGVtY3RsIHN0
YXR1cyB4ZW4iIHNob3dzIGl0IGFjdGl2ZS9ydW5uaW5nLgoKUGxlYXNlIGxldCBtZSBrbm93IHdo
YXQgZXhhY3RseSBlbHNlIEkgbmVlZCB0byBjaGVjazsgSSB3aWxsIHJldmVydCBwcm9tcHRseS4K
CgpUaGFua3MgYWdhaW4gZm9yIHlvdXIgdGltZS4KCgpUaGFua3MgYW5kIFJlZ2FyZHMsCkFqYXkK
Pgo+IFRoYW5rcywKPgo+IFNpbW9uCgoKCi0tIApSZWdhcmRzLApBamF5CgpfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBs
aXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnBy
b2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irn-0003HH-Oi; Wed, 04 Apr 2018 13:54:23 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irl-0003G6-QF
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:21 +0000
X-Inumbo-ID: 96047e20-380f-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 96047e20-380f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 15:53:43 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3AZTEFxRUc8cveo17wB07QBMhKJSfV8LGtZVwlr6E/?=
 =?us-ascii?q?grcLSJyIuqrYbBSBt8tkgFKBZ4jH8fUM07OQ7/i7HzRYqb+681k6OKRWUBEEjc?=
 =?us-ascii?q?hE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAAjwOhRo?=
 =?us-ascii?q?LerpBIHSk9631+ev8JHPfglEnjWwba98IRmssQndqtQdjJd/JKo21hbHuGZDdf?=
 =?us-ascii?q?5MxWNvK1KTnhL86dm18ZV+7SleuO8v+tBZX6nicKs2UbJXDDI9M2Ao/8LrrgXM?=
 =?us-ascii?q?TRGO5nQHTGoblAdDDhXf4xH7WpfxtTb6tvZ41SKHM8D6Uaw4VDK/5KptVRTmij?=
 =?us-ascii?q?oINyQh/W/XlMJ+kaxVrhGmqRN9zY7Ze52ZOOZkc6/BZ94WWXZNU8BMXCJBGIO8?=
 =?us-ascii?q?aI4PAvIfMOZftIn9u1oOrR2jDgeqGePv0iJIjWLx0KIm1OQhCh3G3A0mH94UtH?=
 =?us-ascii?q?TUsc31NLoJXO+p16nE1y3Db+5N1jvn8ojIdQksrPeRVrxzacrc0VQjGgzYglmK?=
 =?us-ascii?q?qoHoPymZ2voTv2WZ9eZtW/qjh3Mopg1suDSixcchhpPXio8bxF3I7zh1zYkrKd?=
 =?us-ascii?q?C+VUV1e8SrEIFKuCGfL4Z2R8QiTHx2tysi0b0GvIK7fDANyJQ62x7Tc/yHfJaM?=
 =?us-ascii?q?4hLkTOuRPzJ4i2hkeLK7nRq97VOgxvfkVsmpy1lGtDBFkt7UunAM0Rzc9NSHR+?=
 =?us-ascii?q?Ng8kquxDqDzQPe5+FeLUwqi6bWKYQtz7AompoWq0vDHyv2mEvsjK+Rc0Up4vSn?=
 =?us-ascii?q?6+P8YrX6p5+cMZV4igXjMqQ2h8yyGvg3MhMUU2iD5OSzz6fv/Vf+QLlSlP05jr?=
 =?us-ascii?q?HZsIzGJcQcvqO5Bg5V0oAi6xa4FDeqyckXkmcZLF1bfBKKlIzpO1DVIPDkFvez?=
 =?us-ascii?q?mVutnyltx/zcOb3hGJrNJGDZkLj9ZbZ991JcyA0rwNBE5pJUD7YBIPTpVk/yqd?=
 =?us-ascii?q?zXEBk5Mg2qzOb9E9h90J0RVn6LAqCDK6zeq0GH5v98a9WLMYoUvjf6ML0p6uDj?=
 =?us-ascii?q?iVc9mEQBZu+50J1Rb2q3Tdp8JEDMSn33ntYHWUMXphd2GOftk0GDV3hXem6vd6?=
 =?us-ascii?q?knoCkmAsS8CtGQFciWnLWd0XLjTdVtbWdcBwXUHA=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYUSKItfXo8TGpJVFIFmggWDCQKEXjQYAQIBAQEBAQECARMBAQEmV4I1IoJ?=
 =?us-ascii?q?MAwN5ED8SVxmFEa15hFeDbIIlhmeCTz+BDIJQhF0LFAGFegKHOYQ6C1OKbQiBX?=
 =?us-ascii?q?4kigzKBSopwkSACHDeBUzMacoJDgiAOCY4abIssAQ4Xgh8BAQ?=
X-IPAS-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBCQEBAYUSKItfXo8?=
 =?us-ascii?q?TGpJVFIFmggWDCQKEXjQYAQIBAQEBAQECARMBAQEmV4I1IoJMAwN5ED8SVxmFE?=
 =?us-ascii?q?a15hFeDbIIlhmeCTz+BDIJQhF0LFAGFegKHOYQ6C1OKbQiBX4kigzKBSopwkSA?=
 =?us-ascii?q?CHDeBUzMacoJDgiAOCY4abIssAQ4Xgh8BAQ?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492101"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 0E6AB1A6018F;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id ZeiWmgyJxyHC; Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id E6C6C1A602F2;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id E30791A602E9;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:53:53 +0300
Message-Id: <1522850048-13204-3-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 02/17] plat/common: Common x86
 segment descriptors definitions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW50cm9kdWNpbmcgbmV3IGhlYWRlciBmb3Igc2VnbWVudCBkZXNjcmlwdG9ycy4KClNpZ25lZC1v
ZmYtYnk6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Ci0tLQogcGxhdC9jb21t
b24vaW5jbHVkZS94ODYvZGVzYy5oICAgICAgICB8IDE5NyArKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrCiBwbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NC5oIHwgICA1
IC0KIHBsYXQva3ZtL3g4Ni9jcHVfeDg2XzY0LmMgICAgICAgICAgICAgfCAgMTEgKy0KIHBsYXQv
eGVuL3g4Ni90cmFwcy5jICAgICAgICAgICAgICAgICAgfCAgMTEgKy0KIDQgZmlsZXMgY2hhbmdl
ZCwgMjA4IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0
IHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L2Rlc2MuaAoKZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9u
L2luY2x1ZGUveDg2L2Rlc2MuaCBiL3BsYXQvY29tbW9uL2luY2x1ZGUveDg2L2Rlc2MuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMGNhYmQ1Ci0tLSAvZGV2L251bGwKKysr
IGIvcGxhdC9jb21tb24vaW5jbHVkZS94ODYvZGVzYy5oCkBAIC0wLDAgKzEsMTk3IEBACisvKiBT
UERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICovCisvKgorICogQXV0aG9yczog
Q29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KKyAqCisgKiBDb3B5cmlnaHQgKGMp
IDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdo
dCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiAgICB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUKKyAqIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICoKKyAqIFRISVMgSEVBREVSIE1BWSBOT1QgQkUgRVhUUkFDVEVEIE9SIE1PRElGSUVE
IElOIEFOWSBXQVkuCisgKi8KKy8qCisgKiBBZGFwdGVkIGZyb20gTWluaS1PUzogaW5jbHVkZS94
ODYvZGVzYy5oCisgKi8KKworI2lmbmRlZiBfX1BMQVRfQ01OX1g4Nl9ERVNDX0hfXworI2RlZmlu
ZSBfX1BMQVRfQ01OX1g4Nl9ERVNDX0hfXworCisjaW5jbHVkZSA8dWsvYXJjaC90eXBlcy5oPgor
I2luY2x1ZGUgPHVrL2Vzc2VudGlhbHMuaD4KKworCisvKiBQcm90ZWN0ZWQgbW9kZSBsZ2R0L2xp
ZHQgdGFibGUgcG9pbnRlci4gKi8KK3N0cnVjdCBkZXNjX3RhYmxlX3B0cjMyIHsKKwlfX3UxNiBs
aW1pdDsKKwlfX3UzMiBiYXNlOworfSBfX3BhY2tlZDsKKworLyogTG9uZyBtb2RlIGxnZHQvbGlk
dCB0YWJsZSBwb2ludGVyLiAqLworc3RydWN0IGRlc2NfdGFibGVfcHRyNjQgeworCV9fdTE2IGxp
bWl0OworCV9fdTY0IGJhc2U7Cit9IF9fcGFja2VkOworCisKKy8qIDggYnl0ZSB1c2VyIHNlZ21l
bnQgZGVzY3JpcHRvciAoR0RUL0xEVCBlbnRyaWVzIHdpdGggLnMgPSAxKSAqLworc3RydWN0IHNl
Z19kZXNjMzIgeworCXVuaW9uIHsKKwkJLyogUmF3IGJhY2tpbmcgaW50ZWdlcnMuICovCisJCXN0
cnVjdCB7CisJCQlfX3UzMiBsbywgaGk7CisJCX07CisJCS8qIENvbW1vbiBuYW1lZCBmaWVsZHMu
ICovCisJCXN0cnVjdCB7CisJCQlfX3U2NCBsaW1pdF9sbzoxNjsKKwkJCV9fdTY0IGJhc2VfbG86
MjQ7CisJCQlfX3U2NCB0eXBlOjQ7CisJCQlfX3U2NCBzOjE7CisJCQlfX3U2NCBkcGw6MjsKKwkJ
CV9fdTY0IHA6MTsKKwkJCV9fdTY0IGxpbWl0X2hpOjQ7CisJCQlfX3U2NCBhdmw6MTsKKwkJCV9f
dTY0IGw6MTsKKwkJCV9fdTY0IGQ6MTsKKwkJCV9fdTY0IGdyYW46MTsKKwkJCV9fdTY0IGJhc2Vf
aGk6ODsKKwkJfTsKKwkJLyogQ29kZSBzZWdtZW50IHNwZWNpZmljIGZpZWxkIG5hbWVzLiAqLwor
CQlzdHJ1Y3QgeworCQkJX191NjQgbGltaXRfbG86MTY7CisJCQlfX3U2NCBiYXNlX2xvOjI0Owor
CQkJX191NjQgYToxOworCQkJX191NjQgcjoxOworCQkJX191NjQgYzoxOworCQkJX191NjQgeDox
OworCQkJX191NjQgczoxOworCQkJX191NjQgZHBsOjI7CisJCQlfX3U2NCBwOjE7CisJCQlfX3U2
NCBsaW1pdF9oaTo0OworCQkJX191NjQgYXZsOjE7CisJCQlfX3U2NCBsOjE7CisJCQlfX3U2NCBk
OjE7CisJCQlfX3U2NCBncmFuOjE7CisJCQlfX3U2NCBiYXNlX2hpOjg7CisJCX0gY29kZTsKKwkJ
LyogRGF0YSBzZWdtZW50IHNwZWNpZmljIGZpZWxkIG5hbWVzLiAqLworCQlzdHJ1Y3QgeworCQkJ
X191NjQgbGltaXRfbG86MTY7CisJCQlfX3U2NCBiYXNlX2xvOjI0OworCQkJX191NjQgYToxOwor
CQkJX191NjQgdzoxOworCQkJX191NjQgZToxOworCQkJX191NjQgeDoxOworCQkJX191NjQgczox
OworCQkJX191NjQgZHBsOjI7CisJCQlfX3U2NCBwOjE7CisJCQlfX3U2NCBsaW1pdF9oaTo0Owor
CQkJX191NjQgYXZsOjE7CisJCQlfX3U2NCByZXNlcnZlZDoxOworCQkJX191NjQgYjoxOworCQkJ
X191NjQgZ3JhbjoxOworCQkJX191NjQgYmFzZV9oaTo4OworCQl9IGRhdGE7CisKKwkJX191NjQg
cmF3OworCX07Cit9IF9fcGFja2VkOworCitzdHJ1Y3Qgc2VnX2Rlc2M2NCB7CisJdW5pb24gewor
CQlzdHJ1Y3QgeworCQkJX191NjQgbG8sIGhpOworCQl9OworCQlzdHJ1Y3QgeworCQkJX191NjQg
bGltaXRfbG86MTY7CisJCQlfX3U2NCBiYXNlX2xvOjI0OworCQkJX191NjQgdHlwZTo0OworCQkJ
X191NjQgemVybzoxOworCQkJX191NjQgZHBsOjI7CisJCQlfX3U2NCBwOjE7CisJCQlfX3U2NCBs
aW1pdF9oaTo0OworCQkJX191NjQgYXZsOjE7CisJCQlfX3U2NCB1bnVzZWQ6MjsKKwkJCV9fdTY0
IGdyYW46MTsKKwkJCV9fdTY0IGJhc2VfaGk6NDA7CisJCQlfX3U2NCByZXNlcnZlZDo4OworCQkJ
X191NjQgemVybzE6NTsKKwkJCV9fdTY0IHJlc2VydmVkMToxOTsKKwkJfSBfX3BhY2tlZDsKKwl9
OworfSBfX3BhY2tlZDsKKworCisvKiA4LWJ5dGUgZ2F0ZSAtIFByb3RlY3RlZCBtb2RlIElEVCBl
bnRyeSwgR0RUIHRhc2svY2FsbCBnYXRlLiAqLworc3RydWN0IHNlZ19nYXRlX2Rlc2MzMiB7CisJ
dW5pb24geworCQlzdHJ1Y3QgeworCQkJX191MzIgbG8sIGhpOworCQl9OworCQlzdHJ1Y3Qgewor
CQkJX191MzIgb2Zmc2V0X2xvOjE2OworCQkJX191MzIgc2VsZWN0b3I6MTY7CisJCQlfX3UzMiBy
ZXNlcnZlZDo4OworCQkJX191MzIgdHlwZTo0OworCQkJX191MzIgczoxOworCQkJX191MzIgZHBs
OjI7CisJCQlfX3UzMiBwOjE7CisJCQlfX3UzMiBvZmZzZXRfaGk6MTY7CisJCX07CisJfTsKK30g
X19wYWNrZWQ7CisKKy8qIDE2LWJ5dGUgZ2F0ZSAtIExvbmcgbW9kZSBJRFQgZW50cnkuICovCitz
dHJ1Y3Qgc2VnX2dhdGVfZGVzYzY0IHsKKwl1bmlvbiB7CisJCXN0cnVjdCB7CisJCQlfX3U2NCBs
bywgaGk7CisJCX07CisJCXN0cnVjdCB7CisJCQlfX3U2NCBvZmZzZXRfbG86MTY7CisJCQlfX3U2
NCBzZWxlY3RvcjoxNjsKKwkJCV9fdTY0IGlzdDozOworCQkJX191NjQgcmVzZXJ2ZWQ6NTsKKwkJ
CV9fdTY0IHR5cGU6NDsKKwkJCV9fdTY0IHM6IDE7CisJCQlfX3U2NCBkcGw6IDI7CisJCQlfX3U2
NCBwOiAxOworCQkJX191NjQgb2Zmc2V0X2hpOjQ4OworCQkJX191NjQgcmVzZXJ2ZWQxOjMyOwor
CQl9IF9fcGFja2VkOworCX07Cit9IF9fcGFja2VkOworCisKK3N0cnVjdCB0c3M2NCB7CisJX191
MzIgcmVzZXJ2ZWQ7CisJX191NjQgcnNwWzNdOworCV9fdTY0IHJlc2VydmVkMjsKKwlfX3U2NCBp
c3RbN107CSAgIC8qIDEtYmFzZWQgc3RydWN0dXJlICovCisJX191NjQgcmVzZXJ2ZWQzOworCV9f
dTE2IHJlc2VydmVkNDsKKwlfX3UxNiBpb21hcF9iYXNlOworfSBfX3BhY2tlZDsKKworI2VuZGlm
IC8qIF9fUExBVF9DTU5fWDg2X0RFU0NfSF9fICovCmRpZmYgLS1naXQgYS9wbGF0L2t2bS9pbmNs
dWRlL2t2bS14ODYvY3B1X3g4Nl82NC5oIGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L2NwdV94
ODZfNjQuaAppbmRleCA5NjI1MmI4Li40MjdjNzA1IDEwMDY0NAotLS0gYS9wbGF0L2t2bS9pbmNs
dWRlL2t2bS14ODYvY3B1X3g4Nl82NC5oCisrKyBiL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9j
cHVfeDg2XzY0LmgKQEAgLTIwLDExICsyMCw2IEBACiAgKi8KICNpbmNsdWRlIDxpbnR0eXBlcy5o
PgogCi1zdHJ1Y3QgZ2R0cHRyIHsKLQl1aW50MTZfdCBsaW1pdDsKLQl1aW50NjRfdCBiYXNlOwot
fSBfX3BhY2tlZDsKLQogLyogYWNjZXNzaW5nIGRldmljZXMgdmlhIHBvcnQgc3BhY2UgKi8KIHN0
YXRpYyBpbmxpbmUgdm9pZCBvdXRiKHVpbnQxNl90IHBvcnQsIHVpbnQ4X3QgdikKIHsKZGlmZiAt
LWdpdCBhL3BsYXQva3ZtL3g4Ni9jcHVfeDg2XzY0LmMgYi9wbGF0L2t2bS94ODYvY3B1X3g4Nl82
NC5jCmluZGV4IDdiZmY4YmUuLjJmOThiOTUgMTAwNjQ0Ci0tLSBhL3BsYXQva3ZtL3g4Ni9jcHVf
eDg2XzY0LmMKKysrIGIvcGxhdC9rdm0veDg2L2NwdV94ODZfNjQuYwpAQCAtMjUsMTEgKzI1LDEy
IEBACiAgKi8KIAogI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHg4Ni9kZXNjLmg+CiAj
aW5jbHVkZSA8a3ZtL3NldHVwLmg+CiAjaW5jbHVkZSA8a3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMu
aD4KICNpbmNsdWRlIDxrdm0teDg2L2NwdV94ODZfNjQuaD4KIAotc3RhdGljIHVpbnQ2NF90IGNw
dV9nZHQ2NFtHRFRfTlVNX0VOVFJJRVNdIEFMSUdOXzY0X0JJVDsKK3N0YXRpYyBzdHJ1Y3Qgc2Vn
X2Rlc2MzMiBjcHVfZ2R0NjRbR0RUX05VTV9FTlRSSUVTXSBBTElHTl82NF9CSVQ7CiAKIC8qCiAg
KiBUaGUgbW9uaXRvciAodWt2bSkgb3IgYm9vdGxvYWRlciArIGJvb3RzdHJhcCAodmlydGlvKSBz
dGFydHMgdXMgdXAgd2l0aCBhCkBAIC00MSwxNCArNDIsMTQgQEAgc3RhdGljIHVpbnQ2NF90IGNw
dV9nZHQ2NFtHRFRfTlVNX0VOVFJJRVNdIEFMSUdOXzY0X0JJVDsKICAqLwogc3RhdGljIHZvaWQg
Z2R0X2luaXQodm9pZCkKIHsKLQl2b2xhdGlsZSBzdHJ1Y3QgZ2R0cHRyIGdkdHB0cjsKKwl2b2xh
dGlsZSBzdHJ1Y3QgZGVzY190YWJsZV9wdHI2NCBnZHRwdHI7CiAKIAltZW1zZXQoY3B1X2dkdDY0
LCAwLCBzaXplb2YoY3B1X2dkdDY0KSk7Ci0JY3B1X2dkdDY0W0dEVF9ERVNDX0NPREVdID0gR0RU
X0RFU0NfQ09ERV9WQUw7Ci0JY3B1X2dkdDY0W0dEVF9ERVNDX0RBVEFdID0gR0RUX0RFU0NfREFU
QV9WQUw7CisJY3B1X2dkdDY0W0dEVF9ERVNDX0NPREVdLnJhdyA9IEdEVF9ERVNDX0NPREVfVkFM
OworCWNwdV9nZHQ2NFtHRFRfREVTQ19EQVRBXS5yYXcgPSBHRFRfREVTQ19EQVRBX1ZBTDsKIAog
CWdkdHB0ci5saW1pdCA9IHNpemVvZihjcHVfZ2R0NjQpIC0gMTsKLQlnZHRwdHIuYmFzZSA9ICh1
aW50NjRfdCkmY3B1X2dkdDY0OworCWdkdHB0ci5iYXNlID0gKF9fdTY0KSAmY3B1X2dkdDY0Owog
CV9fYXNtX18gX192b2xhdGlsZV9fKCJsZ2R0ICglMCkiIDo6InIiKCZnZHRwdHIpKTsKIAkvKgog
CSAqIFRPRE86IFRlY2huaWNhbGx5IHdlIHNob3VsZCByZWxvYWQgYWxsIHNlZ21lbnQgcmVnaXN0
ZXJzIGhlcmUsIGluCmRpZmYgLS1naXQgYS9wbGF0L3hlbi94ODYvdHJhcHMuYyBiL3BsYXQveGVu
L3g4Ni90cmFwcy5jCmluZGV4IDMxOGFiYmEuLjcwNTc4MzkgMTAwNjQ0Ci0tLSBhL3BsYXQveGVu
L3g4Ni90cmFwcy5jCisrKyBiL3BsYXQveGVuL3g4Ni90cmFwcy5jCkBAIC0zMTcsMTggKzMxNywx
NyBAQCBod190c3MgdHNzIF9fYXR0cmlidXRlX18oKGFsaWduZWQoMTYpKSkgPSB7CiAKIHN0YXRp
YyB2b2lkIHNldHVwX2dhdGUodW5zaWduZWQgaW50IGVudHJ5LCB2b2lkICphZGRyLCB1bnNpZ25l
ZCBpbnQgZHBsKQogewotCWlkdFtlbnRyeV0ub2Zmc2V0MCA9ICh1bnNpZ25lZCBsb25nKWFkZHIg
JiAweGZmZmY7CisJaWR0W2VudHJ5XS5vZmZzZXRfbG8gPSAodW5zaWduZWQgbG9uZykgYWRkciAm
IDB4ZmZmZjsKIAlpZHRbZW50cnldLnNlbGVjdG9yID0gX19LRVJOX0NTOwotCWlkdFtlbnRyeV0u
X3IwID0gMDsKLQlpZHRbZW50cnldLnR5cGUgPSAxNDsKKwlpZHRbZW50cnldLnJlc2VydmVkID0g
MDsKKwlpZHRbZW50cnldLnR5cGUgPSAxNDsgLyogPT0gMGIxMTEwICovCiAJaWR0W2VudHJ5XS5z
ID0gMDsKIAlpZHRbZW50cnldLmRwbCA9IGRwbDsKIAlpZHRbZW50cnldLnAgPSAxOwotCWlkdFtl
bnRyeV0ub2Zmc2V0MSA9ICgodW5zaWduZWQgbG9uZylhZGRyID4+IDE2KSAmIDB4ZmZmZjsKKwlp
ZHRbZW50cnldLm9mZnNldF9oaSA9ICh1bnNpZ25lZCBsb25nKSBhZGRyID4+IDE2OwogI2lmZGVm
IF9fWDg2XzY0X18KIAlpZHRbZW50cnldLmlzdCA9IDA7Ci0JaWR0W2VudHJ5XS5vZmZzZXQyID0g
KCh1bnNpZ25lZCBsb25nKWFkZHIgPj4gMzIpICYgMHhmZmZmZmZmZnU7Ci0JaWR0W2VudHJ5XS5f
cjEgPSAwOworCWlkdFtlbnRyeV0ucmVzZXJ2ZWQxID0gMDsKICNlbmRpZgogfQogCi0tIAoyLjEu
NAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlv
cy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0
dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irn-0003HM-Qf; Wed, 04 Apr 2018 13:54:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irm-0003GJ-5f
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:22 +0000
X-Inumbo-ID: d8856dc3-380f-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id d8856dc3-380f-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 13:55:34 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3Ae+XByh9Nldv0V/9uRHKM819IXTAuvvDOBiVQ1KB3?=
 =?us-ascii?q?1+4cTK2v8tzYMVDF4r011RmVBd6ds6oMotGVmpioYXYH75eFvSJKW713fDhBt/?=
 =?us-ascii?q?8rmRc9CtWOE0zxIa2iRSU7GMNfSA0tpCnjYgBaF8nkelLdvGC54yIMFRXjLwp1?=
 =?us-ascii?q?Ifn+FpLPg8it2O2+55Pebx9UiDahfLh/MAi4oQLNu8cMnIBsMLwxyhzHontJf+?=
 =?us-ascii?q?RZ22ZlLk+Nkhj/+8m94odt/zxftPw9+cFAV776f7kjQrxDEDsmKWE169b1uhTF?=
 =?us-ascii?q?UACC+2ETUmQSkhpPHgjF8BT3VYr/vyfmquZw3jSRMMvrRr42RDui9b9mRh/2hi?=
 =?us-ascii?q?kaOTA382bZhc5+jK9AvB6tuwZyz5LObY2JKPZzeL7Wc9MARWpGW8ZcTzJMAoSn?=
 =?us-ascii?q?b4sTDuoBO/tToY/gp1sWsBu1GA6hC//oyj9Tmn/23Ks63/4lEQHbxAwgAskDv2?=
 =?us-ascii?q?jPrNnvLKcSTPu6wLPSzTXEdv5b3yr25obPchAku/6MXLRwfNLPxkkpCwPFlFWR?=
 =?us-ascii?q?pI3qMj+PzeQCqG6W5PdjW+K3k2Mrtg58riW1ysovioTFnJwZxk7G+Cljzos5Pc?=
 =?us-ascii?q?C0RUFmbdK+E5ZdtzuWO5V4T84sWW1kpSk3xqMAtJWmZiYF0o4nyATaa/GfdoiI?=
 =?us-ascii?q?5Q/sW/iJLDdjgXJlZKq/hxGv8Ui80uH8Vte70FJNriddjNnMs2oC1x3X6sSdVv?=
 =?us-ascii?q?R95V2t2S6S1w/I8O1EO0c0mbLaK54n3LEwioIevVnMEyPrgkn7j6+bel869uS2?=
 =?us-ascii?q?6enreLvrqoeZN4BuiwH+Nqoumta4AeQ9KgUBQ2+b+f+g1L3i+031WrFKjuAukq?=
 =?us-ascii?q?nEq53VOd8bqrShAw9IyYkv8Qy/DzC+3NQCgXYHNE5FeA6Aj4XxPlHOIfb4Dfa4?=
 =?us-ascii?q?g1S3iTtk2u7JPqP/DZXJNXXDlLbhfa1h605H0gYyws5Q55ROBrEGOvLzVVf7tM?=
 =?us-ascii?q?bEAR8hLwy03+HnBc1m1oMfXGKPBamZPLnRsV+V+O0vJeiNa5EPuDvmLfgq+eLh?=
 =?us-ascii?q?jXsjllAGZ6Wmw4YXOziEGaFjIkOYZmGpjtofHGMiugslUPesmFCEFzlJaCWcRa?=
 =?us-ascii?q?U5sxo8E56nC8/nW5iwyOiK2zynH5sQYn1eF3iHCjHwao/CQfBaO3HaGdNojjFR?=
 =?us-ascii?q?DevpcIQmzxz77AI=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2B7AAC/18RajAPjVY1cHAEBAQQBAQoBA?=
 =?us-ascii?q?YUSKItfXo8TGpJVFIFmggWDCQKEXjQYAQIBAQEBAQECARMBAQEmV4I1IoJMAwN?=
 =?us-ascii?q?5ED8SVxmFEa15hFeDbIIlhmeCTz+BDIJQhGgUhXsChyOEW1OKbQiBX4kigzKBS?=
 =?us-ascii?q?opwkSACHDeBUzMacoJDgh0RCY4abIssgkUBAQ?=
X-IPAS-Result: =?us-ascii?q?A2B7AAC/18RajAPjVY1cHAEBAQQBAQoBAYUSKItfXo8TGpJ?=
 =?us-ascii?q?VFIFmggWDCQKEXjQYAQIBAQEBAQECARMBAQEmV4I1IoJMAwN5ED8SVxmFEa15h?=
 =?us-ascii?q?FeDbIIlhmeCTz+BDIJQhGgUhXsChyOEW1OKbQiBX4kigzKBSopwkSACHDeBUzM?=
 =?us-ascii?q?acoJDgh0RCY4abIssgkUBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492103"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 19E761A602F2;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 6Vuv5rL4g2If; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id EF5731A60305;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id E5F781A602F1;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:53:54 +0300
Message-Id: <1522850048-13204-4-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 03/17] plat/common: x86 hardware
 context definition
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

X19yZWdzIHN0cnVjdHVyZSByZXByZXNlbnRzIHRoZSBoYXJkd2FyZSBjb250ZXh0IHVzZWQgaW4g
dHJhcCBoYW5kbGluZy4KSW4gYXNzZW1ibHksIHN0cnVjdHVyZSBmaWVsZHMgYXJlIGFjY2Vzc2Vk
IGJ5IHVzaW5nIHRoZSBjb3JyZXNwb25kaW5nIG9mZnNldAptYWNybyBkZWZpbml0aW9uLgoKU2ln
bmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KLS0tCiBpbmNs
dWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaCAgICB8IDI4IC0tLS0tLS0tLS0tLQogcGxhdC9jb21t
b24vaW5jbHVkZS94ODYvcmVncy5oICAgfCA5NCArKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrCiBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvdHJhcHMuaCB8ICAyICstCiBw
bGF0L3hlbi94ODYvZW50cnk2NC5TICAgICAgICAgICB8IDk0ICsrKysrKysrKysrKysrKysrKy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0KIDQgZmlsZXMgY2hhbmdlZCwgMTM4IGluc2VydGlvbnMoKyks
IDgwIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUv
eDg2L3JlZ3MuaAoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5oIGIv
aW5jbHVkZS91ay9hcmNoL3g4Nl82NC9sY3B1LmgKaW5kZXggY2Q2NjdlNS4uNjQwZmY2OCAxMDA2
NDQKLS0tIGEvaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9sY3B1LmgKKysrIGIvaW5jbHVkZS91ay9h
cmNoL3g4Nl82NC9sY3B1LmgKQEAgLTMyLDM0ICszMiw2IEBACiAjZXJyb3IgRG8gbm90IGluY2x1
ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKICNlbmRpZgogCi1zdHJ1Y3QgX19yZWdzIHsKLQl1bnNp
Z25lZCBsb25nIHIxNTsKLQl1bnNpZ25lZCBsb25nIHIxNDsKLQl1bnNpZ25lZCBsb25nIHIxMzsK
LQl1bnNpZ25lZCBsb25nIHIxMjsKLQl1bnNpZ25lZCBsb25nIHJicDsKLQl1bnNpZ25lZCBsb25n
IHJieDsKLS8qIGFyZ3VtZW50czogbm9uIGludGVycnVwdHMvbm9uIHRyYWNpbmcgc3lzY2FsbHMg
b25seSBzYXZlIHVwdG8gaGVyZSovCi0JdW5zaWduZWQgbG9uZyByMTE7Ci0JdW5zaWduZWQgbG9u
ZyByMTA7Ci0JdW5zaWduZWQgbG9uZyByOTsKLQl1bnNpZ25lZCBsb25nIHI4OwotCXVuc2lnbmVk
IGxvbmcgcmF4OwotCXVuc2lnbmVkIGxvbmcgcmN4OwotCXVuc2lnbmVkIGxvbmcgcmR4OwotCXVu
c2lnbmVkIGxvbmcgcnNpOwotCXVuc2lnbmVkIGxvbmcgcmRpOwotCXVuc2lnbmVkIGxvbmcgb3Jp
Z19yYXg7Ci0vKiBlbmQgb2YgYXJndW1lbnRzICovCi0vKiBjcHUgZXhjZXB0aW9uIGZyYW1lIG9y
IHVuZGVmaW5lZCAqLwotCXVuc2lnbmVkIGxvbmcgcmlwOwotCXVuc2lnbmVkIGxvbmcgY3M7Ci0J
dW5zaWduZWQgbG9uZyBlZmxhZ3M7Ci0JdW5zaWduZWQgbG9uZyByc3A7Ci0JdW5zaWduZWQgbG9u
ZyBzczsKLS8qIHRvcCBvZiBzdGFjayBwYWdlICovCi19OwotCiAjaWZuZGVmIG1iCiAjZGVmaW5l
IG1iKCkgICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCJtZmVuY2UiIDogOiA6ICJtZW1vcnkiKQog
I2VuZGlmCmRpZmYgLS1naXQgYS9wbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9yZWdzLmggYi9wbGF0
L2NvbW1vbi9pbmNsdWRlL3g4Ni9yZWdzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uYTZhODQ3ZQotLS0gL2Rldi9udWxsCisrKyBiL3BsYXQvY29tbW9uL2luY2x1ZGUveDg2
L3JlZ3MuaApAQCAtMCwwICsxLDk0IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNE
LTItQ2xhdXNlICovCisvKgorICogQ29weXJpZ2h0IChjKSAyMDA1LCBHcnplZ29yeiBNaWxvcywg
SW50ZWwgUmVzZWFyY2ggQ2FtYnJpZGdlCisgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJv
cGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICog
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJ
TiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisg
KiBTVUNIIERBTUFHRS4KKyAqLworI2lmbmRlZiBfX1VLQVJDSF9SRUdTX0hfXworI2RlZmluZSBf
X1VLQVJDSF9SRUdTX0hfXworCisjaWZuZGVmIF9fQVNTRU1CTFlfXworc3RydWN0IF9fcmVncyB7
CisJdW5zaWduZWQgbG9uZyBwYWQ7IC8qIGZvciAxNiBieXRlcyBhbGlnbm1lbnQgKi8KKwl1bnNp
Z25lZCBsb25nIHIxNTsKKwl1bnNpZ25lZCBsb25nIHIxNDsKKwl1bnNpZ25lZCBsb25nIHIxMzsK
Kwl1bnNpZ25lZCBsb25nIHIxMjsKKwl1bnNpZ25lZCBsb25nIHJicDsKKwl1bnNpZ25lZCBsb25n
IHJieDsKKy8qIGFyZ3VtZW50czogbm9uIGludGVycnVwdHMvbm9uIHRyYWNpbmcgc3lzY2FsbHMg
b25seSBzYXZlIHVwdG8gaGVyZSovCisJdW5zaWduZWQgbG9uZyByMTE7CisJdW5zaWduZWQgbG9u
ZyByMTA7CisJdW5zaWduZWQgbG9uZyByOTsKKwl1bnNpZ25lZCBsb25nIHI4OworCXVuc2lnbmVk
IGxvbmcgcmF4OworCXVuc2lnbmVkIGxvbmcgcmN4OworCXVuc2lnbmVkIGxvbmcgcmR4OworCXVu
c2lnbmVkIGxvbmcgcnNpOworCXVuc2lnbmVkIGxvbmcgcmRpOworCXVuc2lnbmVkIGxvbmcgb3Jp
Z19yYXg7CisvKiBlbmQgb2YgYXJndW1lbnRzICovCisvKiBjcHUgZXhjZXB0aW9uIGZyYW1lIG9y
IHVuZGVmaW5lZCAqLworCXVuc2lnbmVkIGxvbmcgcmlwOworCXVuc2lnbmVkIGxvbmcgY3M7CisJ
dW5zaWduZWQgbG9uZyBlZmxhZ3M7CisJdW5zaWduZWQgbG9uZyByc3A7CisJdW5zaWduZWQgbG9u
ZyBzczsKKy8qIHRvcCBvZiBzdGFjayBwYWdlICovCit9OworI2VuZGlmCisKKyNkZWZpbmUgT0ZG
U0VUT0ZfUkVHU19QQUQgICAgICAgMAorI2RlZmluZSBPRkZTRVRPRl9SRUdTX1IxNSAgICAgICA4
CisjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUjE0ICAgICAgIDE2CisjZGVmaW5lIE9GRlNFVE9GX1JF
R1NfUjEzICAgICAgIDI0CisjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUjEyICAgICAgIDMyCisjZGVm
aW5lIE9GRlNFVE9GX1JFR1NfUkJQICAgICAgIDQwCisjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUkJY
ICAgICAgIDQ4CisjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUjExICAgICAgIDU2CisjZGVmaW5lIE9G
RlNFVE9GX1JFR1NfUjEwICAgICAgIDY0CisjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUjkgICAgICAg
IDcyCisjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUjggICAgICAgIDgwCisjZGVmaW5lIE9GRlNFVE9G
X1JFR1NfUkFYICAgICAgIDg4CisjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUkNYICAgICAgIDk2Cisj
ZGVmaW5lIE9GRlNFVE9GX1JFR1NfUkRYICAgICAgIDEwNAorI2RlZmluZSBPRkZTRVRPRl9SRUdT
X1JTSSAgICAgICAxMTIKKyNkZWZpbmUgT0ZGU0VUT0ZfUkVHU19SREkgICAgICAgMTIwCisjZGVm
aW5lIE9GRlNFVE9GX1JFR1NfT1JJR19SQVggIDEyOAorI2RlZmluZSBPRkZTRVRPRl9SRUdTX1JJ
UCAgICAgICAxMzYKKyNkZWZpbmUgT0ZGU0VUT0ZfUkVHU19DUyAgICAgICAgMTQ0CisjZGVmaW5l
IE9GRlNFVE9GX1JFR1NfRUZMQUdTICAgIDE1MgorI2RlZmluZSBPRkZTRVRPRl9SRUdTX1JTUCAg
ICAgICAxNjAKKyNkZWZpbmUgT0ZGU0VUT0ZfUkVHU19TUyAgICAgICAgMTY4CisKKyNkZWZpbmUg
UkVHU19QQURfU0laRSAgICAgICAgICAgT0ZGU0VUT0ZfUkVHU19SMTUKKyNkZWZpbmUgU0laRU9G
X1JFR1MgICAgICAgICAgICAgMTc2CisKKyNpZiBTSVpFT0ZfUkVHUyAmIDB4ZgorI2Vycm9yICJf
X3JlZ3Mgc3RydWN0dXJlIHNpemUgc2hvdWxkIGJlIG11bHRpcGxlIG9mIDE2LiIKKyNlbmRpZgor
CisvKiBUaGlzIHNob3VsZCBiZSBiZXR0ZXIgZGVmaW5lZCBpbiB0aGUgdGhyZWFkIGhlYWRlciAq
LworI2RlZmluZSBPRkZTRVRPRl9VS1RIUkVBRF9SRUdTICAxNgorCisjZW5kaWYgLyogX19VS0FS
Q0hfUkVHU19IX18gKi8KZGlmZiAtLWdpdCBhL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni90cmFw
cy5oIGIvcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L3RyYXBzLmgKaW5kZXggYzVjZmI4NS4uNDk4
YWY3NiAxMDA2NDQKLS0tIGEvcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L3RyYXBzLmgKKysrIGIv
cGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L3RyYXBzLmgKQEAgLTM1LDcgKzM1LDcgQEAKICNpZm5k
ZWYgX1RSQVBTX0hfCiAjZGVmaW5lIF9UUkFQU19IXwogCi0jaW5jbHVkZSA8dWsvYXJjaC9sY3B1
Lmg+CisjaW5jbHVkZSA8eDg2L3JlZ3MuaD4KIAogI2RlZmluZSBwdF9yZWdzIF9fcmVncwogCmRp
ZmYgLS1naXQgYS9wbGF0L3hlbi94ODYvZW50cnk2NC5TIGIvcGxhdC94ZW4veDg2L2VudHJ5NjQu
UwppbmRleCAzMTRiYjcwLi44MTA5Y2NiIDEwMDY0NAotLS0gYS9wbGF0L3hlbi94ODYvZW50cnk2
NC5TCisrKyBiL3BsYXQveGVuL3g4Ni9lbnRyeTY0LlMKQEAgLTI1LDYgKzI1LDcgQEAKIAogI2lu
Y2x1ZGUgPHVrL2FyY2gvdHlwZXMuaD4KICNpbmNsdWRlIDx1ay9hcmNoL2xpbWl0cy5oPgorI2lu
Y2x1ZGUgPHg4Ni9yZWdzLmg+CiAjaW5jbHVkZSA8dWsvY29uZmlnLmg+CiAjaW5jbHVkZSA8eGVu
L3hlbi5oPgogI2luY2x1ZGUgPHhlbi9lbGZub3RlLmg+CkBAIC05MSwxNSArOTIsNiBAQCBoeXBl
cmNhbGxfcGFnZToKIE5NSV9NQVNLID0gMHg4MDAwMDAwMAogS0VSTkVMX0NTX01BU0sgPSAweGZj
CiAKLSNkZWZpbmUgUkFYICAgICAgIDgwCi0jZGVmaW5lIFJESSAgICAgIDExMgotI2RlZmluZSBP
UklHX1JBWCAxMjAgICAgICAgLyogKyBlcnJvcl9jb2RlICovCi0jZGVmaW5lIFJJUCAgICAgIDEy
OAotI2RlZmluZSBDUyAgICAgICAxMzYKLSNkZWZpbmUgUkZMQUdTICAgMTQ0Ci0jZGVmaW5lIFJT
UCAgICAgIDE1MgotCi0KIC8qIE1hY3JvcyAqLwogLm1hY3JvIFNBVkVfUEFSQVZJUlQKICNpZmRl
ZiBDT05GSUdfUEFSQVZJUlQKQEAgLTEyNCw0NCArMTE2LDQ0IEBAIEtFUk5FTF9DU19NQVNLID0g
MHhmYwogLmVuZG0KIAogLm1hY3JvIFJFU1RPUkVfQUxMCi0JbW92cSAoJXJzcCksJXIxNQotCW1v
dnEgMSo4KCVyc3ApLCVyMTQKLQltb3ZxIDIqOCglcnNwKSwlcjEzCi0JbW92cSAzKjgoJXJzcCks
JXIxMgotCW1vdnEgNCo4KCVyc3ApLCVyYnAKLQltb3ZxIDUqOCglcnNwKSwlcmJ4Ci0JbW92cSA2
KjgoJXJzcCksJXIxMQotCW1vdnEgNyo4KCVyc3ApLCVyMTAKLQltb3ZxIDgqOCglcnNwKSwlcjkK
LQltb3ZxIDkqOCglcnNwKSwlcjgKLQltb3ZxIDEwKjgoJXJzcCksJXJheAotCW1vdnEgMTEqOCgl
cnNwKSwlcmN4Ci0JbW92cSAxMio4KCVyc3ApLCVyZHgKLQltb3ZxIDEzKjgoJXJzcCksJXJzaQot
CW1vdnEgMTQqOCglcnNwKSwlcmRpCi0JYWRkcSAkMTUqOCs4LCVyc3AKKwltb3ZxIE9GRlNFVE9G
X1JFR1NfUjE1KCVyc3ApLCAlcjE1CisJbW92cSBPRkZTRVRPRl9SRUdTX1IxNCglcnNwKSwgJXIx
NAorCW1vdnEgT0ZGU0VUT0ZfUkVHU19SMTMoJXJzcCksICVyMTMKKwltb3ZxIE9GRlNFVE9GX1JF
R1NfUjEyKCVyc3ApLCAlcjEyCisJbW92cSBPRkZTRVRPRl9SRUdTX1JCUCglcnNwKSwgJXJicAor
CW1vdnEgT0ZGU0VUT0ZfUkVHU19SQlgoJXJzcCksICVyYngKKwltb3ZxIE9GRlNFVE9GX1JFR1Nf
UjExKCVyc3ApLCAlcjExCisJbW92cSBPRkZTRVRPRl9SRUdTX1IxMCglcnNwKSwgJXIxMAorCW1v
dnEgT0ZGU0VUT0ZfUkVHU19SOSglcnNwKSwgICVyOQorCW1vdnEgT0ZGU0VUT0ZfUkVHU19SOCgl
cnNwKSwgICVyOAorCW1vdnEgT0ZGU0VUT0ZfUkVHU19SQVgoJXJzcCksICVyYXgKKwltb3ZxIE9G
RlNFVE9GX1JFR1NfUkNYKCVyc3ApLCAlcmN4CisJbW92cSBPRkZTRVRPRl9SRUdTX1JEWCglcnNw
KSwgJXJkeAorCW1vdnEgT0ZGU0VUT0ZfUkVHU19SU0koJXJzcCksICVyc2kKKwltb3ZxIE9GRlNF
VE9GX1JFR1NfUkRJKCVyc3ApLCAlcmRpCisJYWRkcSAkT0ZGU0VUT0ZfUkVHU19SSVAsJXJzcAog
LmVuZG0KIAogLm1hY3JvIFNBVkVfQUxMCiAJLyogcmRpIHNsb3QgY29udGFpbnMgcmF4LCBvbGRy
YXggY29udGFpbnMgZXJyb3IgY29kZSAqLwogCWNsZAotCXN1YnEgJDE0KjgsJXJzcAotCW1vdnEg
JXJzaSwxMyo4KCVyc3ApCi0JbW92cSAxNCo4KCVyc3ApLCVyc2kJLyogbG9hZCByYXggZnJvbSBy
ZGkgc2xvdCAqLwotCW1vdnEgJXJkeCwxMio4KCVyc3ApCi0JbW92cSAlcmN4LDExKjgoJXJzcCkK
LQltb3ZxICVyc2ksMTAqOCglcnNwKQkvKiBzdG9yZSByYXggKi8KLQltb3ZxICVyOCwgOSo4KCVy
c3ApCi0JbW92cSAlcjksIDgqOCglcnNwKQotCW1vdnEgJXIxMCw3KjgoJXJzcCkKLQltb3ZxICVy
MTEsNio4KCVyc3ApCi0JbW92cSAlcmJ4LDUqOCglcnNwKQotCW1vdnEgJXJicCw0KjgoJXJzcCkK
LQltb3ZxICVyMTIsMyo4KCVyc3ApCi0JbW92cSAlcjEzLDIqOCglcnNwKQotCW1vdnEgJXIxNCwx
KjgoJXJzcCkKLQltb3ZxICVyMTUsKCVyc3ApCi0JbW92cSAlcmRpLCBSREkoJXJzcCkJLyogcHV0
IHJkaSBpbnRvIHRoZSBzbG90ICovCisJc3VicSAkT0ZGU0VUT0ZfUkVHU19SREksICVyc3AKKwlt
b3ZxICVyc2ksIE9GRlNFVE9GX1JFR1NfUlNJKCVyc3ApCisJbW92cSBPRkZTRVRPRl9SRUdTX1JE
SSglcnNwKSwgJXJzaSAgICAvKiBsb2FkIHJheCBmcm9tIHJkaSBzbG90ICovCisJbW92cSAlcmR4
LCBPRkZTRVRPRl9SRUdTX1JEWCglcnNwKQorCW1vdnEgJXJjeCwgT0ZGU0VUT0ZfUkVHU19SQ1go
JXJzcCkKKwltb3ZxICVyc2ksIE9GRlNFVE9GX1JFR1NfUkFYKCVyc3ApICAgIC8qIHN0b3JlIHJh
eCAqLworCW1vdnEgJXI4LCAgT0ZGU0VUT0ZfUkVHU19SOCglcnNwKQorCW1vdnEgJXI5LCAgT0ZG
U0VUT0ZfUkVHU19SOSglcnNwKQorCW1vdnEgJXIxMCwgT0ZGU0VUT0ZfUkVHU19SMTAoJXJzcCkK
Kwltb3ZxICVyMTEsIE9GRlNFVE9GX1JFR1NfUjExKCVyc3ApCisJbW92cSAlcmJ4LCBPRkZTRVRP
Rl9SRUdTX1JCWCglcnNwKQorCW1vdnEgJXJicCwgT0ZGU0VUT0ZfUkVHU19SQlAoJXJzcCkKKwlt
b3ZxICVyMTIsIE9GRlNFVE9GX1JFR1NfUjEyKCVyc3ApCisJbW92cSAlcjEzLCBPRkZTRVRPRl9S
RUdTX1IxMyglcnNwKQorCW1vdnEgJXIxNCwgT0ZGU0VUT0ZfUkVHU19SMTQoJXJzcCkKKwltb3Zx
ICVyMTUsIE9GRlNFVE9GX1JFR1NfUjE1KCVyc3ApCisJbW92cSAlcmRpLCBPRkZTRVRPRl9SRUdT
X1JESSglcnNwKSAgICAvKiBwdXQgcmRpIGludG8gdGhlIHNsb3QgKi8KIC5lbmRtCiAKIC5tYWNy
byBIWVBFUlZJU09SX0lSRVQKQEAgLTE5Miw4ICsxODQsOCBAQCBlcnJvcl9lbnRyeToKIAlTQVZF
X0FMTAogCiAJbW92cSAlcnNwLCVyZGkKLQltb3ZxIE9SSUdfUkFYKCVyc3ApLCVyc2kJIyBnZXQg
ZXJyb3IgY29kZQotCW1vdnEgJC0xLE9SSUdfUkFYKCVyc3ApCisJbW92cSBPRkZTRVRPRl9SRUdT
X09SSUdfUkFYKCVyc3ApLCVyc2kJIyBnZXQgZXJyb3IgY29kZQorCW1vdnEgJC0xLE9GRlNFVE9G
X1JFR1NfT1JJR19SQVgoJXJzcCkKIAljYWxsIColcmF4CiAJam1wIGVycm9yX2V4aXQKIApAQCAt
MjA5LDcgKzIwMSw3IEBAIGh5cGVydmlzb3JfY2FsbGJhY2syOgogCW1vdnEgJXJkaSwgJXJzcAog
CiAJLyogY2hlY2sgYWdhaW5zdCBldmVudCByZS1lbnRyYW50ICovCi0JbW92cSBSSVAoJXJzcCks
JXJheAorCW1vdnEgT0ZGU0VUT0ZfUkVHU19SSVAoJXJzcCksJXJheAogCWNtcHEgJHNjcml0LCVy
YXgKIAlqYiAxMWYKIAljbXBxICRlY3JpdCwlcmF4CkBAIC0yMjQsNyArMjE2LDcgQEAgaHlwZXJ2
aXNvcl9jYWxsYmFjazI6CiAJZGVjbCAlZ3M6MAogCiBlcnJvcl9leGl0OgotCW1vdmwgUkZMQUdT
KCVyc3ApLCAlZWF4CisJbW92bCBPRkZTRVRPRl9SRUdTX0VGTEFHUyglcnNwKSwgJWVheAogCXNo
ciAkOSwgJWVheAkJCSMgRUFYWzBdID09IElSRVRfUkZMQUdTLklGCiAJWEVOX0dFVF9WQ1BVX0lO
Rk8oJXJzaSkKIAlhbmRiIGV2dGNobl91cGNhbGxfbWFzayglcnNpKSwlYWwKQEAgLTI3MCwxMSAr
MjYyLDExIEBAIGh5cGVydmlzb3JfcHJvbG9ndWU6CiAKIGNyaXRpY2FsX3JlZ2lvbl9maXh1cDoK
IAkjIFNldCB1cCBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uIHJlZ2lvbiBwb2ludGVycwotCWxlYXEg
UklQKCVyc3ApLCVyc2kgICAjIGVzaSBwb2ludHMgYXQgZW5kIG9mIHNyYyByZWdpb24KKwlsZWFx
IE9GRlNFVE9GX1JFR1NfUklQKCVyc3ApLCVyc2kgICAjIGVzaSBwb2ludHMgYXQgZW5kIG9mIHNy
YyByZWdpb24KIAkjIEFjcXVpcmUgaW50ZXJydXB0ZWQgcnNwIHdoaWNoIHdhcyBzYXZlZC1vbi1z
dGFjay4gVGhpcyBwb2ludHMgdG8KIAkjIHRoZSBlbmQgb2YgZHN0IHJlZ2lvbi4gTm90ZSB0aGF0
IGl0IGlzIG5vdCBuZWNlc3NhcmlseSBjdXJyZW50IHJzcAogCSMgcGx1cyAweGIwLCBiZWNhdXNl
IHRoZSBzZWNvbmQgaW50ZXJydXB0IG1pZ2h0IGFsaWduIHRoZSBzdGFjayBmcmFtZS4KLQltb3Zx
IFJTUCglcnNwKSwlcmRpICAgIyBlZGkgcG9pbnRzIGF0IGVuZCBvZiBkc3QgcmVnaW9uCisJbW92
cSBPRkZTRVRPRl9SRUdTX1JTUCglcnNwKSwlcmRpICAgIyBlZGkgcG9pbnRzIGF0IGVuZCBvZiBk
c3QgcmVnaW9uCiAKIAljbXBxICRyZXN0b3JlX2VuZCwlcmF4CiAJamFlICAxM2YKQEAgLTI4Miwx
MSArMjc0LDExIEBAIGNyaXRpY2FsX3JlZ2lvbl9maXh1cDoKIAkjIElmIGludGVycnVwdGVkIHJp
cCBpcyBiZWZvcmUgcmVzdG9yZV9lbmQKIAkjIHRoZW4gcmF4IGhhc24ndCBiZWVuIHJlc3RvcmVk
IHlldAogCW1vdnEgKCVyZGkpLCVyYXgKLQltb3ZxICVyYXgsIFJBWCglcnNwKSAgIyBzYXZlIHJh
eAorCW1vdnEgJXJheCwgT0ZGU0VUT0ZfUkVHU19SQVgoJXJzcCkgICMgc2F2ZSByYXgKIAlhZGRx
ICRSU1BfT0ZGU0VULCVyZGkKIAogCSMgU2V0IHVwIHRoZSBjb3B5Ci0xMzoJbW92cSAkUklQLCVy
Y3gKKzEzOgltb3ZxICRPRkZTRVRPRl9SRUdTX1JJUCwlcmN4CiAJc2hyICAkMywlcmN4ICAgICAg
ICAgICMgY29udmVydCBieXRlcyBpbnRvIGNvdW50IG9mIDY0LWJpdCBlbnRpdGllcwogMTU6CXN1
YnEgJDgsJXJzaSAgICAgICAgICAjIHByZS1kZWNyZW1lbnRpbmcgY29weSBsb29wCiAJc3VicSAk
OCwlcmRpCkBAIC0yOTQsNyArMjg2LDcgQEAgY3JpdGljYWxfcmVnaW9uX2ZpeHVwOgogCW1vdnEg
JXJheCwoJXJkaSkKIAlsb29wIDE1YgogMTY6CW1vdnEgJXJkaSwlcnNwICAgICAgICAjIGZpbmFs
IHJkaSBpcyB0b3Agb2YgbWVyZ2VkIHN0YWNrCi0JYW5kYiAkS0VSTkVMX0NTX01BU0ssQ1MoJXJz
cCkgICAgICAjIENTIG1pZ2h0IGhhdmUgY2hhbmdlZAorCWFuZGIgJEtFUk5FTF9DU19NQVNLLE9G
RlNFVE9GX1JFR1NfQ1MoJXJzcCkgICAgICAjIENTIG1pZ2h0IGhhdmUgY2hhbmdlZAogCWptcCAg
MTFiCiAKICNlbHNlCi0tIAoyLjEuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxp
c3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9s
aXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irn-0003H6-Ld; Wed, 04 Apr 2018 13:54:23 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irl-0003G4-Oz
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:21 +0000
X-Inumbo-ID: 96d2b55b-380f-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 96d2b55b-380f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 15:53:44 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3AGPgAiRcFLFctfS3mZRuctp7ClGMj4u6mDksu8pMi?=
 =?us-ascii?q?zoh2WeGdxcS6Yh7h7PlgxGXEQZ/co6odzbaO6Oa4ASQp2tWoiDg6aptCVhsI24?=
 =?us-ascii?q?09vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFRrhKAF7?=
 =?us-ascii?q?Ovr6GpLIj8Swyuu+54Dfbx9HiTahb75+Ngm6oRnMvcQKnIVuLbo8xAHUqXVSYe?=
 =?us-ascii?q?RWwm1oJVOXnxni48q74YBu/SdNtf8/7sBMSar1cbg2QrxeFzQmLns65Nb3uhnZ?=
 =?us-ascii?q?TAuA/WUTX2MLmRdVGQfF7RX6XpDssivms+d2xSeXMdHqQb0yRD+v6bpgRh31hy?=
 =?us-ascii?q?cdLzM38H/ZhNF+gqxYpxyupRJ/zpXIbI2JLvdyYrnQcc8GSWdHQ81fVzZBAoS5?=
 =?us-ascii?q?b4YXEecBOv1Yr5X8p1sIsBCwAxSsBPvyyjRVgXL5wao60/89EQHH2gwsBdYOsG?=
 =?us-ascii?q?nMrNXoL6odTfu1wLPQzTXedPxawy396I/Rfx0nvPqCXqpwfNLMxUQgCg/JlFad?=
 =?us-ascii?q?pIz/Mz+LyOgAsXKX4uR4We6yhGMrtht9rzuvy8s2lIXEiIwYxkrZ+Sh23oo4I8?=
 =?us-ascii?q?CzRlRhbt6+CpRQsjmXN45xQsw/XW5loD06yrgauZ6jeygK1Ygnywbfa/OZd4iI?=
 =?us-ascii?q?5QruVPiUIThihXJlfKiziAqp8US60u38S9K73ExQripCitXMt3YN2ALP6sWfV/?=
 =?us-ascii?q?dw8Vqt1SyM2g3T8O1IP144mKjBJ5Mv2rIwk4AcsUXHHi/4gkX2i6qWe1049eiv?=
 =?us-ascii?q?8OTnfrTmppmGO49wlwH+Krkul9ejDuQjKAQOR3Wb9v+m2L35+k31WK9KgeEukq?=
 =?us-ascii?q?nFrJDaItwWpqu4Aw9T04Yj7A2/Ay6739sGg3kIMlZFdQmDj4joIFHOPOv4Ae2w?=
 =?us-ascii?q?gluyljdn3ffGPqfuAp/VNHjMjK/hfaph605b0Acz1tFf55dTCrEHOv7zWVLxu8?=
 =?us-ascii?q?LeDh44LQO02f3qCNNj2YwCXWKAGLSWPLnMvl+VtaoTJLyJZYkUvy24J/U76vrG?=
 =?us-ascii?q?iX4ihURbbaSvm5wNZyOWBPNjdm6eembthJ8lDH8X9l41S/f2iVvEVSNLel65RO?=
 =?us-ascii?q?Qk+zt9EoXwXtSLfZyknLHUhHTzJZZRfG0TUl0=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYUSKItfXo8tklWBeoUOAoReNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3k?=
 =?us-ascii?q?QPxJXGYURrXmEV4NsgiWJNj+JS4UIAoxRim0IgV+MVIEiixgrkHUCHDeBUzMag?=
 =?us-ascii?q?zWCLo4jbI1xAQE?=
X-IPAS-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBCQEBAYUSKItfXo8?=
 =?us-ascii?q?tklWBeoUOAoReNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3kQPxJXGYURrXmEV?=
 =?us-ascii?q?4NsgiWJNj+JS4UIAoxRim0IgV+MVIEiixgrkHUCHDeBUzMagzWCLo4jbI1xAQE?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492110"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 317641A60183;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id taqKLK8ME6gm; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 171ED1A602EF;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 09B2D1A602FE;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:54:02 +0300
Message-Id: <1522850048-13204-12-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 11/17] arch/x86_64: Add nop() macro
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KLS0tCiBp
bmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaCB8IDQgKysrKwogMSBmaWxlIGNoYW5nZWQsIDQg
aW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5o
IGIvaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9sY3B1LmgKaW5kZXggNjQwZmY2OC4uMTc1MGM2ZiAx
MDA2NDQKLS0tIGEvaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9sY3B1LmgKKysrIGIvaW5jbHVkZS91
ay9hcmNoL3g4Nl82NC9sY3B1LmgKQEAgLTQzLDMgKzQzLDcgQEAKICNpZm5kZWYgd21iCiAjZGVm
aW5lIHdtYigpICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCJzZmVuY2UiIDogOiA6ICJtZW1vcnki
KQogI2VuZGlmCisKKyNpZm5kZWYgbm9wCisjZGVmaW5lIG5vcCgpICAgX19hc21fXyBfX3ZvbGF0
aWxlX18gKCJub3AiIDogOiA6ICJtZW1vcnkiKQorI2VuZGlmCi0tIAoyLjEuNAoKCl9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWls
aW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMu
eGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irn-0003HB-ND; Wed, 04 Apr 2018 13:54:23 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irl-0003G5-Pk
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:21 +0000
X-Inumbo-ID: 961b9ed0-380f-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 961b9ed0-380f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 15:53:43 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3ACILJ1BYbsZizfHqgEuurMG7/LSx+4OfEezUN459i?=
 =?us-ascii?q?sYplN5qZr8y8bnLW6fgltlLVR4KTs6sC17KN9fi4EUU7or+5+EgYd5JNUxJXwe?=
 =?us-ascii?q?43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRp?=
 =?us-ascii?q?OOv1BpTSj8Oq3Oyu5pHfeQpFiCazbL9oMBm6sRjau9ULj4dlNqs/0AbCrGFSe+?=
 =?us-ascii?q?RRy2NoJFaTkAj568yt4pNt8Dletuw4+cJYXqr0Y6o3TbpDDDQ7KG81/9HktQPC?=
 =?us-ascii?q?TQSU+HQRVHgdnwdSDAjE6BH6WYrxsjf/u+Fg1iSWIdH6QLYpUjmk8qxlSgLniD?=
 =?us-ascii?q?0fOjA57m/Zl8J+gqFcrh2jqRxy2JLYbJ2POfZiZK7RYc8WSGxcVchRTSxBBYa8?=
 =?us-ascii?q?YpMRAuoGJuZYs4j9p10TphW4GAmsHP7vwSJPi3Dq2q06yPghEQDA3AA6G9IOrW?=
 =?us-ascii?q?zUrMjuOagOSuC51rHIzSjYYP9Mwzf975HFfxY8qv+PRbJ9adfdxEYyGw/fjVid?=
 =?us-ascii?q?qZbpMy2L2ukPqWSW4fJsWf+ghmI6sQ18oTiiyt0yhoTHiI8Z0E3I+CpnzIszON?=
 =?us-ascii?q?a2UlR0YcS+H5tVryyaMox2Td48TGxwoyY6z6EGuYa8fCgX1JQr3x7fZOKDc4iP?=
 =?us-ascii?q?+h/jSuORLi15hHJhYr6wmw2y/VK4yu3hTca4ykxKri1dntnNsHACyQDT59CaRv?=
 =?us-ascii?q?Zy40utwzWC2gDJ5u1aP0w5l7DXJpA5zr41jJUTsEDDHiHsmEXxia+bblkr+u+z?=
 =?us-ascii?q?6+T7Y7XmoIWQN4tpigHmL6QjgdCwAf8iPggWQmiU4v6w1Kfk/UHhWrVFkuU2kr?=
 =?us-ascii?q?XFsJDdPckbo6+5AwlU0oYk8BazFiqp38oGnXYZKFJIYxaHj4nyO1HSO/D0F/i+?=
 =?us-ascii?q?jEqqkDtxwPDGJLLhCI3XLnffiLfhYap960lExQoozNBf4pVUCrcbLPLwR0/+qt?=
 =?us-ascii?q?rYDx4nPAyu2OvnDsty2Z8aWW2VGaCVKr3dsULbrt4oduyNYo4So3PxJuYo49bq?=
 =?us-ascii?q?jGQlghkNcK/v2oEYO16iGfEzCEKCfXvqyvMcCXpC6gE5V/DrjhuGTCZOT32pGb?=
 =?us-ascii?q?oh7HchD9T1Xs/4WomxjenZj2+AFZpMazUeBw=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2A+AAC/18RajAPjVY1cGgEBAQEBAgEBA?=
 =?us-ascii?q?QEIAQEBAYUSKItfXo8TGpJVFIFmggWDCQKEXjQYAQIBAQEBAQECARMBAQEmV4I?=
 =?us-ascii?q?1IoJMAwMnUhA/ElcZhRGtRjOEV4NsgiWGZ4JPP4EMglAGhGIUhXsChyOFLoptC?=
 =?us-ascii?q?IFfiSKDMoFKinCRIAIcN4FTMxpygkOCIA4JjhpsiyyCRQEB?=
X-IPAS-Result: =?us-ascii?q?A2A+AAC/18RajAPjVY1cGgEBAQEBAgEBAQEIAQEBAYUSKIt?=
 =?us-ascii?q?fXo8TGpJVFIFmggWDCQKEXjQYAQIBAQEBAQECARMBAQEmV4I1IoJMAwMnUhA/E?=
 =?us-ascii?q?lcZhRGtRjOEV4NsgiWGZ4JPP4EMglAGhGIUhXsChyOFLoptCIFfiSKDMoFKinC?=
 =?us-ascii?q?RIAIcN4FTMxpygkOCIA4JjhpsiyyCRQEB?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492102"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 14B8F1A602E9;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 7DZvu246LNbA; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id ED61E1A60301;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id E8EAF1A602F6;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:53:55 +0300
Message-Id: <1522850048-13204-5-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 04/17] plat/common: Common x86 CPU
 interrupt flag handling
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW50cm9kdWNpbmcgbmV3IGhlYWRlciBmb3IgbmF0aXZlIGludGVycnVwdCBmbGFnIGZ1bmN0aW9u
cy4KClNpZ25lZC1vZmYtYnk6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Ci0t
LQogcGxhdC9jb21tb24vaW5jbHVkZS94ODYvaXJxLmggIHwgODcgKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrCiBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvaXJxLmgg
fCA1NSArKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA5MSBpbnNl
cnRpb25zKCspLCA1MSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1v
bi9pbmNsdWRlL3g4Ni9pcnEuaAoKZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9uL2luY2x1ZGUveDg2
L2lycS5oIGIvcGxhdC9jb21tb24vaW5jbHVkZS94ODYvaXJxLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uYTBmMDFmOAotLS0gL2Rldi9udWxsCisrKyBiL3BsYXQvY29tbW9u
L2luY2x1ZGUveDg2L2lycS5oCkBAIC0wLDAgKzEsODcgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVu
dGlmaWVyOiBCU0QtMi1DbGF1c2UgKi8KKy8qCisgKiBQb3J0IGZyb20gTWluaS1PUzogaW5jbHVk
ZS94ODYvb3MuaAorICovCisvKgorICogQ29weXJpZ2h0IChjKSAyMDA5IENpdHJpeCBTeXN0ZW1z
LCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisg
KiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4g
IElOIE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICog
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
KyAqIFNVQ0ggREFNQUdFLgorICovCisjaWZuZGVmIF9fUExBVF9DTU5fWDg2X0lSUV9IX18KKyNk
ZWZpbmUgX19QTEFUX0NNTl9YODZfSVJRX0hfXworCisjaW5jbHVkZSA8eDg2L2NwdV9kZWZzLmg+
CisKKyNpZmRlZiBfX1g2NF8zMl9fCisjZGVmaW5lIF9fU1ogICJsIgorI2RlZmluZSBfX1JFRyAi
ZSIKKyNlbHNlCisjZGVmaW5lIF9fU1ogICJxIgorI2RlZmluZSBfX1JFRyAiciIKKyNlbmRpZgor
CisjZGVmaW5lIF9fY2xpKCkgXAorKHsgXAorCWFzbSB2b2xhdGlsZSgiY2xpIiA6IDogOiAibWVt
b3J5Iik7IFwKK30pCisKKyNkZWZpbmUgX19zdGkoKSBcCisoeyBcCisJYXNtIHZvbGF0aWxlKCJz
dGkiIDogOiA6ICJtZW1vcnkiKTsgXAorfSkKKworI2RlZmluZSBfX3NhdmVfZmxhZ3MoeCkgXAor
CWRvIHsgXAorCQl1bnNpZ25lZCBsb25nIF9fZjsgXAorCQlhc20gdm9sYXRpbGUoInB1c2hmIiBf
X1NaICIgOyBwb3AiIF9fU1ogIiAlMCIgOiAiPWciKF9fZikpOyBcCisJCXggPSAoX19mICYgWDg2
X0VGTEFHU19JRikgPyAxIDogMDsgXAorCX0gd2hpbGUgKDApCisKKyNkZWZpbmUgX19yZXN0b3Jl
X2ZsYWdzKHgpIFwKKwlkbyB7IFwKKwkJaWYgKHgpIFwKKwkJCV9fc3RpKCk7IFwKKwkJZWxzZSBc
CisJCQlfX2NsaSgpOyBcCisJfSB3aGlsZSAoMCkKKworI2RlZmluZSBfX3NhdmVfYW5kX2NsaSh4
KSBcCisJZG8geyBcCisJCV9fc2F2ZV9mbGFncyh4KTsgXAorCQlfX2NsaSgpOyBcCisJfSB3aGls
ZSAoMCkKKworc3RhdGljIGlubGluZSBpbnQgaXJxc19kaXNhYmxlZCh2b2lkKQoreworCWludCBm
bGFnOworCisJX19zYXZlX2ZsYWdzKGZsYWcpOworCXJldHVybiAhZmxhZzsKK30KKworI2RlZmlu
ZSBsb2NhbF9pcnFfc2F2ZSh4KSAgICAgICAgX19zYXZlX2FuZF9jbGkoeCkKKyNkZWZpbmUgbG9j
YWxfaXJxX3Jlc3RvcmUoeCkgICAgIF9fcmVzdG9yZV9mbGFncyh4KQorI2RlZmluZSBsb2NhbF9z
YXZlX2ZsYWdzKHgpICAgICAgX19zYXZlX2ZsYWdzKHgpCisjZGVmaW5lIGxvY2FsX2lycV9kaXNh
YmxlKCkgICAgICBfX2NsaSgpCisjZGVmaW5lIGxvY2FsX2lycV9lbmFibGUoKSAgICAgICBfX3N0
aSgpCisKKyNlbmRpZiAvKiBfX1BMQVRfQ01OX1g4Nl9JUlFfSF9fICovCmRpZmYgLS1naXQgYS9w
bGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvaXJxLmggYi9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYv
aXJxLmgKaW5kZXggNGEwOTVmZC4uYmFjMzYyMCAxMDA2NDQKLS0tIGEvcGxhdC94ZW4vaW5jbHVk
ZS94ZW4teDg2L2lycS5oCisrKyBiL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9pcnEuaApAQCAt
MTAwLDYxICsxMDAsMTQgQEAKICNkZWZpbmUgaXJxc19kaXNhYmxlZCgpICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAJSFlQRVJWSVNPUl9z
aGFyZWRfaW5mby0+dmNwdV9pbmZvW3NtcF9wcm9jZXNzb3JfaWQoKV0uZXZ0Y2huX3VwY2FsbF9t
YXNrCiAKLSNlbHNlCi0KLSNpZmRlZiBfX1g2NF8zMl9fCi0jZGVmaW5lIF9fU1ogImwiCi0jZGVm
aW5lIF9fUkVHICJlIgotI2Vsc2UKLSNkZWZpbmUgX19TWiAicSIKLSNkZWZpbmUgX19SRUcgInIi
Ci0jZW5kaWYKLQotI2RlZmluZSBfX2NsaSgpIFwKLSh7IFwKLQlhc20gdm9sYXRpbGUoImNsaSIg
OiA6IDogIm1lbW9yeSIpOyBcCi19KQotCi0jZGVmaW5lIF9fc3RpKCkgXAotKHsgXAotCWFzbSB2
b2xhdGlsZSgic3RpIiA6IDogOiAibWVtb3J5Iik7IFwKLX0pCi0KLSNkZWZpbmUgX19zYXZlX2Zs
YWdzKHgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCi0JZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCi0JCXVuc2lnbmVkIGxvbmcgX19mOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLQkJYXNtIHZvbGF0aWxlKCJwdXNo
ZiIgX19TWiAiIDsgcG9wIiBfX1NaICIgJTAiIDogIj1nIihfX2YpKTsgICAgXAotCQl4ID0gKF9f
ZiAmIFg4Nl9FRkxBR1NfSUYpID8gMSA6IDA7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
Ci0JfSB3aGlsZSAoMCkKLQotI2RlZmluZSBfX3Jlc3RvcmVfZmxhZ3MoeCkgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLQlkbyB7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKLQkJaWYgKHgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAotCQkJX19zdGkoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKLQkJZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotCQkJX19jbGkoKTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLQl9IHdoaWxlICgwKQotCi0jZGVmaW5l
IF9fc2F2ZV9hbmRfY2xpKHgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAotCWRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotCQlfX3NhdmVfZmxhZ3MoeCk7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0JCV9fY2xpKCk7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
LQl9IHdoaWxlICgwKQotCi1zdGF0aWMgaW5saW5lIGludCBpcnFzX2Rpc2FibGVkKHZvaWQpCi17
Ci0JaW50IGZsYWc7Ci0KLQlfX3NhdmVfZmxhZ3MoZmxhZyk7Ci0JcmV0dXJuICFmbGFnOwotfQot
Ci0jZW5kaWYKLQogI2RlZmluZSBsb2NhbF9pcnFfc2F2ZSh4KSAgICAgICAgX19zYXZlX2FuZF9j
bGkoeCkKICNkZWZpbmUgbG9jYWxfaXJxX3Jlc3RvcmUoeCkgICAgIF9fcmVzdG9yZV9mbGFncyh4
KQogI2RlZmluZSBsb2NhbF9zYXZlX2ZsYWdzKHgpICAgICAgX19zYXZlX2ZsYWdzKHgpCiAjZGVm
aW5lIGxvY2FsX2lycV9kaXNhYmxlKCkgICAgICBfX2NsaSgpCiAjZGVmaW5lIGxvY2FsX2lycV9l
bmFibGUoKSAgICAgICBfX3N0aSgpCiAKKyNlbHNlCisjaW5jbHVkZSA8eDg2L2lycS5oPgorI2Vu
ZGlmCisKICNlbmRpZiAvKiBQTEFUX1hFTl9JTkNMVURFX1hFTl9YODZfSVJRX0hfICovCi0tIAoy
LjEuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1p
bmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3Jn
Cmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2
ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irm-0003Ge-Jv; Wed, 04 Apr 2018 13:54:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irl-0003Fw-09
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:21 +0000
X-Inumbo-ID: d82bc08c-380f-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id d82bc08c-380f-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 13:55:33 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3AsrIYWBwLz0ZhuFLXCy+O+j09IxM/srCxBDY+r6Qd?=
 =?us-ascii?q?2+oQIJqq85mqBkHD//Il1AaPAd2Araocw8Pt8InYEVQa5piAtH1QOLdtbDQizf?=
 =?us-ascii?q?ssogo7HcSeAlf6JvO5JwYzHcBFSUM3tyrjaRsdF8nxfUDdrWOv5jAOBBr/KRB1?=
 =?us-ascii?q?JuPoEYLOksi7ze+/94HdbglSmDaxfa55IQmrownWqsQYm5ZpJLwryhvOrHtIeu?=
 =?us-ascii?q?BWyn1tKFmOgRvy5dq+8YB6/ShItP0v68BPUaPhf6QlVrNYFygpM3o05MLwqxbO?=
 =?us-ascii?q?SxaE62YGXWUXlhpIBBXF7A3/U5zsvCb2qvZx1S+HNsDwULs6Wymt771zRRHoli?=
 =?us-ascii?q?kJKjA3/mLQhMNygqJWuw6tqwBlzoLIeoyZKOZyc6XAdt0aX2pBWcNRWjRfD4O7?=
 =?us-ascii?q?dIsPE+sBPeBFpIf7ulsOtQa+DhSrCezzzT9InWP23aw80+g7FQHGwRQgH88VvX?=
 =?us-ascii?q?vIt9X5Lr8SUf2uw6XS1zXDaOpb1DHg44bLahAsueyAUL1tfcbLykQiFxnJgkuO?=
 =?us-ascii?q?pYHnJT+Y2PwBv3WU4uZ9T+6iiG4qpxtvrjWhyMogkJTFi40Lxl3C6C532pw6Jc?=
 =?us-ascii?q?eiR05+edOkFZxQuDyEOIZuWcMiRn1ouD49yr0bpZ63ZCgKx4ojxx7Yc/GHbY2I?=
 =?us-ascii?q?7QjiVOaVOzt3mGlldKinhxav6kes0Pf8Vs6s3FZLqCpKjMXMu2gQ2xHc98SLUP?=
 =?us-ascii?q?hw80e71TqRyQze6PtILE4smareMZEhw7owlpQJsUTEGy/7gFn5jKiNdkU4++io?=
 =?us-ascii?q?7f7rYrH7pp+EKo95kR3xMr80lsynHOQ3KRICX3Kc+eikzr3s4VX5QKlWjv0xiq?=
 =?us-ascii?q?TZtZHaJcIapq6+GA9Zy5ss5AihDzi41NQVhn0HLFNeeBKblIjlIV7PL+7+Dful?=
 =?us-ascii?q?hFSsijhrzejcPrL9GpXNMmTDkLD5cLZm6k5czQ0zzdZF65JXF7EOPvTzW07vu9?=
 =?us-ascii?q?zCFRI5NRK7zPrjCNpnzYwSQ3yAArLKeJ/V5FqJ4OMoOKyAaZEYvB75KuM5/Lj+?=
 =?us-ascii?q?gHl/nkUSLoez2p5CQ3ejAvVga2GEeWek1twGCnsLuEw6UfT3oFaZFyZObTCoWP?=
 =?us-ascii?q?RvtXkAFIu6ANKbFciWi7ub0XLjEw=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2DWAAC/18RajAPjVY1cGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYUSKIw9jy2SVYF6hQ4ChF41FwECAQEBAQEBAgETAQEBJleCNSKCTAMDeRA?=
 =?us-ascii?q?/ElcZhRGteYRXg2yCJYk2P4NchW+FCAKMUYptCIFfjFSMOiuQdQIdATWBUzMag?=
 =?us-ascii?q?zWCIA4JEY4JbI1xAQE?=
X-IPAS-Result: =?us-ascii?q?A2DWAAC/18RajAPjVY1cGwEBAQEDAQEBCQEBAYUSKIw9jy2?=
 =?us-ascii?q?SVYF6hQ4ChF41FwECAQEBAQEBAgETAQEBJleCNSKCTAMDeRA/ElcZhRGteYRXg?=
 =?us-ascii?q?2yCJYk2P4NchW+FCAKMUYptCIFfjFSMOiuQdQIdATWBUzMagzWCIA4JEY4JbI1?=
 =?us-ascii?q?xAQE?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492107"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 236D11A60334;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id XXNITogm2HYO; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 042621A602F6;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 010171A6031F;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:53:59 +0300
Message-Id: <1522850048-13204-9-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 08/17] plat/common: Add
 ukplat_lcpu_{enable, disable}_irq functions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlc2UgZnVuY3Rpb25zIGVuYWJsZS9kaXNhYmxlIGludGVycnVwdHMgd2l0aG91dCB1c2luZyB0
aGUgaW50ZXJydXB0CmVuYWJsZSBmbGFnIG9mIHRoZSBDUFUgZmxhZ3MgcmVnaXN0ZXIuIFRoZXNl
IGFyZSB1c2VkIGJ5IHRoZSBDUFUgaGFsdGluZwpmdW5jdGlvbnMuCgpTaWduZWQtb2ZmLWJ5OiBD
b3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgotLS0KIGluY2x1ZGUvdWsvcGxhdC9s
Y3B1LmggfCAxMCArKysrKysrKysrCiBwbGF0L3hlbi9sY3B1LmMgICAgICAgIHwgMTAgKysrKysr
KysrKwogMiBmaWxlcyBjaGFuZ2VkLCAyMCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvaW5j
bHVkZS91ay9wbGF0L2xjcHUuaCBiL2luY2x1ZGUvdWsvcGxhdC9sY3B1LmgKaW5kZXggNWY1OTM5
ZC4uZGUzN2U4YiAxMDA2NDQKLS0tIGEvaW5jbHVkZS91ay9wbGF0L2xjcHUuaAorKysgYi9pbmNs
dWRlL3VrL3BsYXQvbGNwdS5oCkBAIC00OSw2ICs0OSwxNiBAQCBfX3U4IHVrcGxhdF9sY3B1X2Nv
dW50KHZvaWQpOwogI2VuZGlmCiAKIC8qKgorICogRW5hYmxlcyBpbnRlcnJ1cHRzCisgKi8KK3Zv
aWQgdWtwbGF0X2xjcHVfZW5hYmxlX2lycSh2b2lkKTsKKworLyoqCisgKiBEaXNhYmxlcyBpbnRl
cnJ1cHRzCisgKi8KK3ZvaWQgdWtwbGF0X2xjcHVfZGlzYWJsZV9pcnEodm9pZCk7CisKKy8qKgog
ICogUmV0dXJucyBjdXJyZW50IGludGVycnVwdCBmbGFncyBhbmQgZGlzYWJsZXMgdGhlbQogICog
QHJldHVybiBpbnRlcnJ1cHQgZmxhZ3MgKE5vdGUgdGhhdCB0aGUgZm9ybWF0IGlzIHVuc3BlY2lm
aWVkKQogICovCmRpZmYgLS1naXQgYS9wbGF0L3hlbi9sY3B1LmMgYi9wbGF0L3hlbi9sY3B1LmMK
aW5kZXggNDc2MzQ1Yi4uZWVkODlmYiAxMDA2NDQKLS0tIGEvcGxhdC94ZW4vbGNwdS5jCisrKyBi
L3BsYXQveGVuL2xjcHUuYwpAQCAtNDQsNiArNDQsMTYgQEAKICNpbmNsdWRlIDx1ay9wbGF0L2xj
cHUuaD4KICNpbmNsdWRlIDx1ay9wbGF0L3RpbWUuaD4KIAordm9pZCB1a3BsYXRfbGNwdV9lbmFi
bGVfaXJxKHZvaWQpCit7CisJbG9jYWxfaXJxX2VuYWJsZSgpOworfQorCit2b2lkIHVrcGxhdF9s
Y3B1X2Rpc2FibGVfaXJxKHZvaWQpCit7CisJbG9jYWxfaXJxX2Rpc2FibGUoKTsKK30KKwogdW5z
aWduZWQgbG9uZyB1a3BsYXRfbGNwdV9zYXZlX2lycWYodm9pZCkKIHsKIAl1bnNpZ25lZCBsb25n
IGZsYWdzOwotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54
ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGlu
Zm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irn-0003HS-TB; Wed, 04 Apr 2018 13:54:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irm-0003GL-Ah
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:22 +0000
X-Inumbo-ID: d91f6e10-380f-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id d91f6e10-380f-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 13:55:35 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3Am+B+YBH8oPDnOBZU/yOBT51GYnF86YWxBRYc798d?=
 =?us-ascii?q?s5kLTJ7zp8qwAkXT6L1XgUPTWs2DsrQY07GQ6/iocFdDyK7JiGoFfp1IWk1Nou?=
 =?us-ascii?q?QttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBXdrXKo8DEdBAj0OxZr?=
 =?us-ascii?q?KeTpAI7SiNm82/yv95HJbAhEmDSwbaluIBmqsA7cqtQYjYx+J6gr1xDHuGFIe+?=
 =?us-ascii?q?NYxWNpIVKcgRPx7dqu8ZBg7ipdpesv+9ZPXqvmcas4S6dYDCk9PGAu+MLrrxjD?=
 =?us-ascii?q?QhCR6XYaT24bjwBHAwnB7BH9Q5fxri73vfdz1SWGIcH7S60/VDK/5KlpVRDokj?=
 =?us-ascii?q?8KOT4n/m/KhMJ+j6VVrxCvpxFk34LYfJuYOOZkc6/BYd8XQ3dKUMZLVyxGB4Ox?=
 =?us-ascii?q?d5UCD+0aPeZEron9oUYFox2jBQm0GePk1zhFiWPx3a0hz+QhEAfG0BYkH9ITqH?=
 =?us-ascii?q?TUsc74O7sJUeyv1KnI0C7MY+lM2Tf68YXFdA0qr/KUXb9obMbcxlQjGxnGg1iQ?=
 =?us-ascii?q?s4DpIS2Z2+YXv2WV9+ZsSO2ih3M9pwxyojWj3Nkgh4fHi44P11zJ+jt1zYAoLt?=
 =?us-ascii?q?OiUkF7e8SrEJ5IuiGfMIt5X90tTnlzuCY/1r0GoZm7fDUWyJg/xx7QdfiHc4+Q?=
 =?us-ascii?q?7xL9UeaeOzZ4hHZ/dL2jnBa+61CgyvDnWcWuylZKqTJJktjKtn8Tyxze8tWLR/?=
 =?us-ascii?q?Rg8ku72juC1xrf5v9aLU02j6bWJYYtwrsqmZoStUTDEDX2mELzjKKOakok/fOo?=
 =?us-ascii?q?6/jmYrXgvJOcM5J0ihnjMqk1hsO/Gv40MhATX2eA4+i8zrrj8VXjQLpWlv02jr?=
 =?us-ascii?q?XZsJfCKMQep665BQ5V0oE46xqmEjipzsoYkmcDLF9efBKHjpPpO03VIPziAvaw?=
 =?us-ascii?q?nVKsnC1sx/DcMb3rGo/NIWTbkLf9YbZ97FZRyBEyzdBa4JJUDKsNIPHuWkDvst?=
 =?us-ascii?q?zZDwE2MxavzubhFtpyyoceVniUDaODLqzSrAzA2uV6JuiKZYgO/TrwNfUhz/rv?=
 =?us-ascii?q?lmMi308Qe++ux5RERmq/G6FNJF6FYHykpsoZDC9etQ0lUO3szlmfSSN7bG30R7?=
 =?us-ascii?q?82oCs8XtH1RbzfT5yg1eTSlBywGYdbMzhL?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYUSKItfXo8tklWBeoUOAoReNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3k?=
 =?us-ascii?q?QPxJXGYURrXmEV4NsgiWJNj+DYoVphQgCjFGKbQiBX4xUgSKLGCuQdQIcN4FTM?=
 =?us-ascii?q?xqDNYIgDgmOGmyNcQEB?=
X-IPAS-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBCQEBAYUSKItfXo8?=
 =?us-ascii?q?tklWBeoUOAoReNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3kQPxJXGYURrXmEV?=
 =?us-ascii?q?4NsgiWJNj+DYoVphQgCjFGKbQiBX4xUgSKLGCuQdQIcN4FTMxqDNYIgDgmOGmy?=
 =?us-ascii?q?NcQEB?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492111"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 3EFB11A602FE;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id cnMFhzynSkqe; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 24CA51A6018D;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 1628B1A60183;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:54:03 +0300
Message-Id: <1522850048-13204-13-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 12/17] arch/x86_64: Add function for
 stack pointer retrieval
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KLS0tCiBp
bmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaCB8IDggKysrKysrKysKIDEgZmlsZSBjaGFuZ2Vk
LCA4IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xj
cHUuaCBiL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5oCmluZGV4IDE3NTBjNmYuLjhjNzA1
NDAgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5oCisrKyBiL2luY2x1
ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5oCkBAIC00NywzICs0NywxMSBAQAogI2lmbmRlZiBub3AK
ICNkZWZpbmUgbm9wKCkgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoIm5vcCIgOiA6IDogIm1lbW9y
eSIpCiAjZW5kaWYKKworc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHVrYXJjaF9yZWFkX3Nw
KHZvaWQpCit7CisJdW5zaWduZWQgbG9uZyBzcDsKKworCV9fYXNtX18gX192b2xhdGlsZV9fKCJt
b3YgJSVyc3AsICUwIiA6ICI9ciIoc3ApKTsKKwlyZXR1cm4gc3A7Cit9Ci0tIAoyLjEuNAoKCl9f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZl
bCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8v
bGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irm-0003GY-I7; Wed, 04 Apr 2018 13:54:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irk-0003Fu-RY
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:20 +0000
X-Inumbo-ID: d595b59f-380f-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id d595b59f-380f-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 13:55:30 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3AlC0nAR9KJSpuR/9uRHKM819IXTAuvvDOBiVQ1KB3?=
 =?us-ascii?q?1+4cTK2v8tzYMVDF4r011RmVBd6ds6oMotGVmpioYXYH75eFvSJKW713fDhBt/?=
 =?us-ascii?q?8rmRc9CtWOE0zxIa2iRSU7GMNfSA0tpCnjYgBaF8nkelLdvGC54yIMFRXjLwp1?=
 =?us-ascii?q?Ifn+FpLPg8it2O2+55Pebx9UiDahfLh/MAi4oQLNu8cMnIBsMLwxyhzHontJf+?=
 =?us-ascii?q?RZ22ZlLk+Nkhj/+8m94odt/zxftPw9+cFAV776f7kjQrxDEDsmKWE169b1uhTF?=
 =?us-ascii?q?UACC+2ETUmQSkhpPHgjF8BT3VYr/vyfmquZw3jSRMMvrRr42RDui9b9mRh/2hi?=
 =?us-ascii?q?kaOTA382bZhc5+jK9AvB6tuwZyz5LObY2JKPZzeL7Wc9MARWpGW8ZcTzJMAoSn?=
 =?us-ascii?q?b4sTDuoBO/tToY/gp1sWsBu1GA6hC//oyj9Tmn/23Ks63/4lEQHbxAwgAskDv2?=
 =?us-ascii?q?jPrNnvLKcSTPu6wLPSzTXEdv5b3yr25obPchAku/6MXLRwfNLPxkkpCwPFlFWR?=
 =?us-ascii?q?pI3qMj+PzeQCqG6W5PdjW+K3k2Mrtg58riW1ysovioTFnJwZxk7G+Cljzos5Pc?=
 =?us-ascii?q?C0RUFmbdK+E5ZdtzuWO5V4T84sWW1kpSk3xqMAtJWmZiYF0o4nyATaa/GfdoiI?=
 =?us-ascii?q?5Q/sW/iJLDdjgXJlZKq/hxGv8Ui80uH8Vte70FJNriddjNnMs2oC1x3X6sSdVv?=
 =?us-ascii?q?R95V2t2S6S1w/I8O1EO0c0mbLaK54n3LEwioIevVnMEyPrgkn7j6+bel869uS2?=
 =?us-ascii?q?6enreLvrqoeZN4BuiwH+Nqoumta4AeQ9KgUBQ2+b+f+g1L3i+031WrFKjuAukq?=
 =?us-ascii?q?nEq53VOd8bqrShAw9IyYkv8Qy/DzC+3NQCgXYHNE5FeA6Aj4XxPlHOIfb4Dfa4?=
 =?us-ascii?q?g1S3iTtk2u7JPqP/DZXJNXXDlLbhfa1h605H0gYyws5Q55ROBrEGOvLzVVf7tM?=
 =?us-ascii?q?bEAR8hLwy03+HnBc1m1oMfXGKPBamZPLnRsV+V+O0vJeiNa5EPuDvmLfgq+eLh?=
 =?us-ascii?q?jXsjllAGZ6Wmw4YXOziEGaFjIkOYZmGpjtofHGMiugslUPesmFCEFzlJaCWcRa?=
 =?us-ascii?q?U5sxo8E56nC8/nW5iwyOiK2zynH5sQYn1eF3iHCjHwao/CQfBaO3HaGdNojjFR?=
 =?us-ascii?q?DevpcIQmzxz77AI=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYQjbyiLX16PExqLEodDFIFmJoFfgwkChF40GAECAQEBAQEBAgETAQEBJks?=
 =?us-ascii?q?MgjUigkwDA3kQPxJXGYURrXmEV4NsgiWGZ4JPP4EMglCEaBSFewKHIxaEOgtTi?=
 =?us-ascii?q?m0IgV+DdIUugzKBSiCKUJEgAhw3gVMzGnKCQwmCJYtIgltsiyyCRQEB?=
X-IPAS-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBCQEBAYQjbyiLX16?=
 =?us-ascii?q?PExqLEodDFIFmJoFfgwkChF40GAECAQEBAQEBAgETAQEBJksMgjUigkwDA3kQP?=
 =?us-ascii?q?xJXGYURrXmEV4NsgiWGZ4JPP4EMglCEaBSFewKHIxaEOgtTim0IgV+DdIUugzK?=
 =?us-ascii?q?BSiCKUJEgAhw3gVMzGnKCQwmCJYtIgltsiyyCRQEB?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492100"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 0D3A11A60183;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id TljcnGvmmAna; Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id E37271A602EF;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id E07901A6018D;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:53:52 +0300
Message-Id: <1522850048-13204-2-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 01/17] plat/common: Common x86 CPU
 definitions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW50cm9kdWNpbmcgbmV3IGhlYWRlciBmb3IgeDg2IENQVSByZWdpc3RlciBsYXlvdXRzLgoKU2ln
bmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KLS0tCiBwbGF0
L2NvbW1vbi9pbmNsdWRlL3g4Ni9jcHVfZGVmcy5oICAgICAgICAgfCA3NiArKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysKIHBsYXQva3ZtL01ha2VmaWxlLnVrICAgICAgICAgICAgICAgICAg
ICAgICB8ICAyICsKIHBsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMuaCB8
IDQ2ICstLS0tLS0tLS0tLS0tLS0tLQogcGxhdC9rdm0veDg2L2VudHJ5NjQuUyAgICAgICAgICAg
ICAgICAgICAgIHwgIDIgKy0KIHBsYXQveGVuL01ha2VmaWxlLnVrICAgICAgICAgICAgICAgICAg
ICAgICB8ICAyICsKIHBsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9vcy5oICAgICAgICAgICAgICB8
ICA5ICstLS0KIDYgZmlsZXMgY2hhbmdlZCwgODMgaW5zZXJ0aW9ucygrKSwgNTQgZGVsZXRpb25z
KC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS94ODYvY3B1X2RlZnMu
aAoKZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9uL2luY2x1ZGUveDg2L2NwdV9kZWZzLmggYi9wbGF0
L2NvbW1vbi9pbmNsdWRlL3g4Ni9jcHVfZGVmcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjllY2VjOTYKLS0tIC9kZXYvbnVsbAorKysgYi9wbGF0L2NvbW1vbi9pbmNsdWRl
L3g4Ni9jcHVfZGVmcy5oCkBAIC0wLDAgKzEsNzYgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlm
aWVyOiBCU0QtMy1DbGF1c2UgKi8KKy8qCisgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGlu
Lmx1cHVAY3MucHViLnJvPgorICoKKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBM
dGQuLCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5h
bWVzIG9mIGl0cworICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAi
QVMgSVMiCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENP
TlRSSUJVVE9SUyBCRQorICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRQorICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICogVEhJUyBI
RUFERVIgTUFZIE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KKyAqLwor
I2lmbmRlZiBfX1BMQVRfQ01OX1g4Nl9DUFVfREVGU19IX18KKyNkZWZpbmUgX19QTEFUX0NNTl9Y
ODZfQ1BVX0RFRlNfSF9fCisKKy8qIEVGTEFHUyByZWdpc3RlciAqLworI2RlZmluZSBYODZfRUZM
QUdTX0NGICAgICAgICAgICAoMSA8PCAgMCkgICAvKiBjYXJyeSBmbGFnICAgICAgICAgICAgICAg
ICovCisjZGVmaW5lIFg4Nl9FRkxBR1NfUEYgICAgICAgICAgICgxIDw8ICAyKSAgIC8qIHBhcml0
eSBmbGFnICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgWDg2X0VGTEFHU19BRiAgICAgICAgICAg
KDEgPDwgIDQpICAgLyogYXV4aWxpYXJ5IGZsYWcgICAgICAgICAgICAqLworI2RlZmluZSBYODZf
RUZMQUdTX1pGICAgICAgICAgICAoMSA8PCAgNikgICAvKiB6ZXJvIGZsYWcgICAgICAgICAgICAg
ICAgICovCisjZGVmaW5lIFg4Nl9FRkxBR1NfU0YgICAgICAgICAgICgxIDw8ICA3KSAgIC8qIHNp
Z24gZmxhZyAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgWDg2X0VGTEFHU19URiAgICAgICAg
ICAgKDEgPDwgIDgpICAgLyogdHJhcCBmbGFnICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBY
ODZfRUZMQUdTX0lGICAgICAgICAgICAoMSA8PCAgOSkgICAvKiBpbnRlcnJ1cHQgZmxhZyAgICAg
ICAgICAgICovCisjZGVmaW5lIFg4Nl9FRkxBR1NfREYgICAgICAgICAgICgxIDw8IDEwKSAgIC8q
IGRpcmVjdGlvbiBmbGFnICAgICAgICAgICAgKi8KKyNkZWZpbmUgWDg2X0VGTEFHU19PRiAgICAg
ICAgICAgKDEgPDwgMTEpICAgLyogb3ZlcmZsb3cgZmxhZyAgICAgICAgICAgICAqLworI2RlZmlu
ZSBYODZfRUZMQUdTX05UICAgICAgICAgICAoMSA8PCAxNCkgICAvKiBuZXN0ZWQgdGFzayBmbGFn
ICAgICAgICAgICovCisjZGVmaW5lIFg4Nl9FRkxBR1NfUkYgICAgICAgICAgICgxIDw8IDE2KSAg
IC8qIHJlc3VtZSBmbGFnICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgWDg2X0VGTEFHU19WTSAg
ICAgICAgICAgKDEgPDwgMTcpICAgLyogdmlydHVhbCA4MDg2IG1vZGUgZmxhZyAgICAqLworI2Rl
ZmluZSBYODZfRUZMQUdTX0FDICAgICAgICAgICAoMSA8PCAxOCkgICAvKiBhbGlnbm1lbnQgY2hl
Y2sgZmxhZyAgICAgICovCisjZGVmaW5lIFg4Nl9FRkxBR1NfVklGICAgICAgICAgICgxIDw8IDE5
KSAgIC8qIHZpcnR1YWwgaW50ZXJydXB0IGZsYWcgICAgKi8KKyNkZWZpbmUgWDg2X0VGTEFHU19W
SVAgICAgICAgICAgKDEgPDwgMjApICAgLyogdmlydHVhbCBpbnRlcnJ1cHQgcGVuZGluZyAqLwor
I2RlZmluZSBYODZfRUZMQUdTX0lEICAgICAgICAgICAoMSA8PCAyMSkgICAvKiBJRCBmbGFnICAg
ICAgICAgICAgICAgICAgICovCisKKworLyoKKyAqIEJhc2ljIENQVSBjb250cm9sIGluIENSMAor
ICovCisjZGVmaW5lIFg4Nl9DUjBfTVAgICAgICAgICAgICAgICgxIDw8IDEpICAgIC8qIE1vbml0
b3IgQ29wcm9jZXNzb3IgKi8KKyNkZWZpbmUgWDg2X0NSMF9FTSAgICAgICAgICAgICAgKDEgPDwg
MikgICAgLyogRW11bGF0aW9uICovCisjZGVmaW5lIFg4Nl9DUjBfTkUgICAgICAgICAgICAgICgx
IDw8IDUpICAgIC8qIE51bWVyaWMgRXhjZXB0aW9uICovCisjZGVmaW5lIFg4Nl9DUjBfUEcgICAg
ICAgICAgICAgICgxIDw8IDMxKSAgIC8qIFBhZ2luZyAqLworCisvKgorICogSW50ZWwgQ1BVIGZl
YXR1cmVzIGluIENSNAorICovCisjZGVmaW5lIFg4Nl9DUjRfUEFFICAgICAgICAgICAgICgxIDw8
IDUpICAgIC8qIGVuYWJsZSBQQUUgKi8KKyNkZWZpbmUgWDg2X0NSNF9PU0ZYU1IgICAgICAgICAg
KDEgPDwgOSkgICAgLyogT1Mgc3VwcG9ydCBmb3IgRlhTQVZFL0ZYUlNUT1IgKi8KKyNkZWZpbmUg
WDg2X0NSNF9PU1hNTUVYQ1BUICAgICAgKDEgPDwgMTApICAgLyogT1Mgc3VwcG9ydCBmb3IgRlAg
ZXhjZXB0aW9ucyAqLworCisvKgorICogSW50ZWwgQ1BVIGZlYXR1cmVzIGluIEVGRVIKKyAqLwor
I2RlZmluZSBYODZfRUZFUl9MTUUgICAgICAgICAgICAoMSA8PCA4KSAgICAvKiBMb25nIG1vZGUg
ZW5hYmxlIChSL1cpICovCisKKyNlbmRpZiAvKiBfX1BMQVRfQ01OX1g4Nl9DUFVfREVGU19IX18g
Ki8KZGlmZiAtLWdpdCBhL3BsYXQva3ZtL01ha2VmaWxlLnVrIGIvcGxhdC9rdm0vTWFrZWZpbGUu
dWsKaW5kZXggNGIzYWJjMy4uZTdhNTVmZCAxMDA2NDQKLS0tIGEvcGxhdC9rdm0vTWFrZWZpbGUu
dWsKKysrIGIvcGxhdC9rdm0vTWFrZWZpbGUudWsKQEAgLTEyLDcgKzEyLDkgQEAgJChldmFsICQo
Y2FsbCBhZGRwbGF0bGliLGt2bSxsaWJrdm1wbGF0KSkKICMjIFBsYXRmb3JtIGxpYnJhcnkgZGVm
aW5pdGlvbnMKICMjCiBMSUJLVk1QTEFUX0FTSU5DTFVERVMteSAgICAgICAgKz0gLUkkKExJQktW
TVBMQVRfQkFTRSkvaW5jbHVkZQorTElCS1ZNUExBVF9BU0lOQ0xVREVTLXkgICAgICAgICs9IC1J
JChVS19QTEFUX0NPTU1PTl9CQVNFKS9pbmNsdWRlCiBMSUJLVk1QTEFUX0NJTkNMVURFUy15ICAg
ICAgICAgKz0gLUkkKExJQktWTVBMQVRfQkFTRSkvaW5jbHVkZQorTElCS1ZNUExBVF9DSU5DTFVE
RVMteSAgICAgICAgICs9IC1JJChVS19QTEFUX0NPTU1PTl9CQVNFKS9pbmNsdWRlCiAKIExJQktW
TVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2L2VudHJ5
NjQuUwogTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoTElCS1ZNUExBVF9CQVNF
KS94ODYvY3B1X3g4Nl82NC5jCmRpZmYgLS1naXQgYS9wbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYv
Y3B1X3g4Nl82NF9kZWZzLmggYi9wbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NF9k
ZWZzLmgKaW5kZXggOTQ1OTY4OS4uOTg1ZjhkMyAxMDA2NDQKLS0tIGEvcGxhdC9rdm0vaW5jbHVk
ZS9rdm0teDg2L2NwdV94ODZfNjRfZGVmcy5oCisrKyBiL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4
Ni9jcHVfeDg2XzY0X2RlZnMuaApAQCAtMTksNTEgKzE5LDcgQEAKICAqIENPTk5FQ1RJT04gV0lU
SCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCiAgKi8KIAotI2lmbmRl
ZiBfQklUVUwKLQotI2RlZmluZSBfQUMoWCwgWSkgICAgICAgICAgICAgICBYCi0jZGVmaW5lIF9B
VChULCBYKSAgICAgICAgICAgICAgIFgKLSNlbHNlCi0jZGVmaW5lIF9fQUMoWCwgWSkgICAgICAg
ICAgICAgIChYIyNZKQotI2RlZmluZSBfQUMoWCwgWSkgICAgICAgICAgICAgICBfX0FDKFgsIFkp
Ci0jZGVmaW5lIF9BVChULCBYKSAgICAgICAgICAgICAgICgoVCkoWCkpCi0jZW5kaWYKLQotI2Rl
ZmluZSBfQklUVUwoeCkgICAgICAgICAgICAgICAoX0FDKDEsIFVMKSA8PCAoeCkpCi0jZGVmaW5l
IF9CSVRVTEwoeCkgICAgICAgICAgICAgIChfQUMoMSwgVUxMKSA8PCAoeCkpCi0KLS8qCi0gKiBC
YXNpYyBDUFUgY29udHJvbCBpbiBDUjAKLSAqLwotI2RlZmluZSBYODZfQ1IwX01QX0JJVCAgICAg
ICAgICAxIC8qIE1vbml0b3IgQ29wcm9jZXNzb3IgKi8KLSNkZWZpbmUgWDg2X0NSMF9NUCAgICAg
ICAgICAgICAgX0JJVFVMKFg4Nl9DUjBfTVBfQklUKQotI2RlZmluZSBYODZfQ1IwX0VNX0JJVCAg
ICAgICAgICAyIC8qIEVtdWxhdGlvbiAqLwotI2RlZmluZSBYODZfQ1IwX0VNICAgICAgICAgICAg
ICBfQklUVUwoWDg2X0NSMF9FTV9CSVQpCi0jZGVmaW5lIFg4Nl9DUjBfTkVfQklUICAgICAgICAg
IDUgLyogTnVtZXJpYyBFeGNlcHRpb24gKi8KLSNkZWZpbmUgWDg2X0NSMF9ORSAgICAgICAgICAg
ICAgX0JJVFVMKFg4Nl9DUjBfTkVfQklUKQotI2RlZmluZSBYODZfQ1IwX1BHX0JJVCAgICAgICAg
ICAzMSAvKiBQYWdpbmcgKi8KLSNkZWZpbmUgWDg2X0NSMF9QRyAgICAgICAgICAgICAgX0JJVFVM
KFg4Nl9DUjBfUEdfQklUKQotCi0vKgotICogSW50ZWwgQ1BVIGZlYXR1cmVzIGluIENSNAotICov
Ci0jZGVmaW5lIFg4Nl9DUjRfUEFFX0JJVCAgICAgICAgIDUgLyogZW5hYmxlIHBoeXNpY2FsIGFk
ZHJlc3MgZXh0ZW5zaW9ucyAqLwotI2RlZmluZSBYODZfQ1I0X1BBRSAgICAgICAgICAgICBfQklU
VUwoWDg2X0NSNF9QQUVfQklUKQotI2RlZmluZSBYODZfQ1I0X09TRlhTUl9CSVQgICAgICA5IC8q
IE9TIHN1cHBvcnQgZm9yIEZYU0FWRS9GWFJTVE9SICovCi0jZGVmaW5lIFg4Nl9DUjRfT1NGWFNS
ICAgICAgICAgIF9CSVRVTChYODZfQ1I0X09TRlhTUl9CSVQpCi0jZGVmaW5lIFg4Nl9DUjRfT1NY
TU1FWENQVF9CSVQgIDEwIC8qIE9TIHN1cHBvcnQgZm9yIEZQIGV4Y2VwdGlvbnMgKi8KLSNkZWZp
bmUgWDg2X0NSNF9PU1hNTUVYQ1BUICAgICAgX0JJVFVMKFg4Nl9DUjRfT1NYTU1FWENQVF9CSVQp
Ci0KLS8qCi0gKiBJbnRlbCBDUFUgZmVhdHVyZXMgaW4gRUZFUgotICovCi0jZGVmaW5lIFg4Nl9F
RkVSX0xNRV9CSVQgICAgICAgIDggLyogTG9uZyBtb2RlIGVuYWJsZSAoUi9XKSAqLwotI2RlZmlu
ZSBYODZfRUZFUl9MTUUgICAgICAgICAgICBfQklUVUwoWDg2X0VGRVJfTE1FX0JJVCkKLQotLyog
TmVlZGVkIGJ5IG1lbS5jICovCi0jZGVmaW5lIFBBR0VfU0laRSAgICAgICAgICAgICAgIDQwOTYK
LS8vI2RlZmluZSBQQUdFX1NISUZUICAgICAgICAgICAgICAxMgotI2RlZmluZSBQQUdFX01BU0sg
ICAgICAgICAgICAgICB+KDB4ZmZmKQorI2luY2x1ZGUgPHg4Ni9jcHVfZGVmcy5oPgogCiAvKgog
ICogR0RUIGxheW91dApkaWZmIC0tZ2l0IGEvcGxhdC9rdm0veDg2L2VudHJ5NjQuUyBiL3BsYXQv
a3ZtL3g4Ni9lbnRyeTY0LlMKaW5kZXggMmQxNDM4Ni4uNjU3MGM0NyAxMDA2NDQKLS0tIGEvcGxh
dC9rdm0veDg2L2VudHJ5NjQuUworKysgYi9wbGF0L2t2bS94ODYvZW50cnk2NC5TCkBAIC0yNyw4
ICsyNyw4IEBACiAgKiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSA8eDg2L2NwdV9kZWZz
Lmg+CiAjaW5jbHVkZSA8a3ZtLXg4Ni9tdWx0aWJvb3RfZGVmcy5oPgotI2luY2x1ZGUgPGt2bS14
ODYvY3B1X3g4Nl82NF9kZWZzLmg+CiAKICNkZWZpbmUgRU5UUlkoeCkgLnRleHQ7IC5nbG9ibCB4
OyAudHlwZSB4LCVmdW5jdGlvbjsgeDoKICNkZWZpbmUgRU5EKHgpICAgLnNpemUgeCwgLiAtIHgK
ZGlmZiAtLWdpdCBhL3BsYXQveGVuL01ha2VmaWxlLnVrIGIvcGxhdC94ZW4vTWFrZWZpbGUudWsK
aW5kZXggMDhlNzdlMC4uYzFiMmVjYiAxMDA2NDQKLS0tIGEvcGxhdC94ZW4vTWFrZWZpbGUudWsK
KysrIGIvcGxhdC94ZW4vTWFrZWZpbGUudWsKQEAgLTIyLDcgKzIyLDkgQEAgTElCWEVOUExBVF9D
WFhGTEFHUy15ICAgICs9IC1EX19YRU5fSU5URVJGQUNFX1ZFUlNJT05fXz0kKFhFTl9JTlRFUkZB
Q0VfVkVSU0lPTikKICMjIFBsYXRmb3JtIGxpYnJhcnkgZGVmaW5pdGlvbnMKICMjCiBMSUJYRU5Q
TEFUX0FTSU5DTFVERVMteSAgICAgICAgKz0gLUkkKExJQlhFTlBMQVRfQkFTRSkvaW5jbHVkZQor
TElCWEVOUExBVF9BU0lOQ0xVREVTLXkgICAgICAgICs9IC1JJChVS19QTEFUX0NPTU1PTl9CQVNF
KS9pbmNsdWRlCiBMSUJYRU5QTEFUX0NJTkNMVURFUy15ICAgICAgICAgKz0gLUkkKExJQlhFTlBM
QVRfQkFTRSkvaW5jbHVkZQorTElCWEVOUExBVF9DSU5DTFVERVMteSAgICAgICAgICs9IC1JJChV
S19QTEFUX0NPTU1PTl9CQVNFKS9pbmNsdWRlCiBMSUJYRU5QTEFUX1NSQ1MteSAgICAgICAgICAg
ICAgKz0gJChMSUJYRU5QTEFUX0JBU0UpL2h5cGVydmlzb3IuYwogTElCWEVOUExBVF9TUkNTLXkg
ICAgICAgICAgICAgICs9ICQoTElCWEVOUExBVF9CQVNFKS9tZW1vcnkuYwogCmRpZmYgLS1naXQg
YS9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvb3MuaCBiL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4
Ni9vcy5oCmluZGV4IDk5YzlkMTQuLjNkZjc3M2MgMTAwNjQ0Ci0tLSBhL3BsYXQveGVuL2luY2x1
ZGUveGVuLXg4Ni9vcy5oCisrKyBiL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9vcy5oCkBAIC02
MCwxNCArNjAsNyBAQCB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgdV9sb25nOwogI2luY2x1ZGUgPHhl
bi94c20vZmxhc2tfb3AuaD4KICNlbmRpZgogCi0jZGVmaW5lIE1TUl9FRkVSICAgICAgICAweGMw
MDAwMDgwCi0jZGVmaW5lIF9FRkVSX0xNRSAgICAgICA4ICAgICAgICAgICAvKiBMb25nIG1vZGUg
ZW5hYmxlICovCi0KLSNkZWZpbmUgWDg2X0NSMF9QRyAgICAgIDB4ODAwMDAwMDAgIC8qIFBhZ2lu
ZyAqLwotI2RlZmluZSBYODZfQ1I0X1BBRSAgICAgMHgwMDAwMDAyMCAgLyogZW5hYmxlIHBoeXNp
Y2FsIGFkZHJlc3MgZXh0ZW5zaW9ucyAqLwotI2RlZmluZSBYODZfQ1I0X09TRlhTUiAgMHgwMDAw
MDIwMCAgLyogZW5hYmxlIGZhc3QgRlBVIHNhdmUgYW5kIHJlc3RvcmUgKi8KLQotI2RlZmluZSBY
ODZfRUZMQUdTX0lGICAgMHgwMDAwMDIwMAorI2luY2x1ZGUgPHg4Ni9jcHVfZGVmcy5oPgogCiAj
ZGVmaW5lIF9fS0VSTkVMX0NTICAgICBGTEFUX0tFUk5FTF9DUwogI2RlZmluZSBfX0tFUk5FTF9E
UyAgICAgRkxBVF9LRVJORUxfRFMKLS0gCjIuMS40CgoKX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3Mt
ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9t
YWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3iro-0003Hf-2z; Wed, 04 Apr 2018 13:54:24 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irm-0003Gf-Oz
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:22 +0000
X-Inumbo-ID: 96f7b26d-380f-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 96f7b26d-380f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 15:53:44 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3Ay2QwNxFBxFfpQTpWa5/Dfp1GYnF86YWxBRYc798d?=
 =?us-ascii?q?s5kLTJ7zp8qwAkXT6L1XgUPTWs2DsrQY07GQ6/iocFdDyK7JiGoFfp1IWk1Nou?=
 =?us-ascii?q?QttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBXdrXKo8DEdBAj0OxZr?=
 =?us-ascii?q?KeTpAI7SiNm82/yv95HJbAhEmDSwbaluIBmqsA7cqtQYjYx+J6gr1xDHuGFIe+?=
 =?us-ascii?q?NYxWNpIVKcgRPx7dqu8ZBg7ipdpesv+9ZPXqvmcas4S6dYDCk9PGAu+MLrrxjD?=
 =?us-ascii?q?QhCR6XYaT24bjwBHAwnB7BH9Q5fxri73vfdz1SWGIcH7S60/VDK/5KlpVRDokj?=
 =?us-ascii?q?8KOT4n/m/KhMJ+j6VVrxCvpxFk34LYfJuYOOZkc6/BYd8XQ3dKUMZLVyxGB4Ox?=
 =?us-ascii?q?d5UCD+0aPeZEron9oUYFox2jBQm0GePk1zhFiWPx3a0hz+QhEAfG0BYkH9ITqH?=
 =?us-ascii?q?TUsc74O7sJUeyv1KnI0C7MY+lM2Tf68YXFdA0qr/KUXb9obMbcxlQjGxnGg1iQ?=
 =?us-ascii?q?s4DpIS2Z2+YXv2WV9+ZsSO2ih3M9pwxyojWj3Nkgh4fHi44P11zJ+jt1zYAoLt?=
 =?us-ascii?q?OiUkF7e8SrEJ5IuiGfMIt5X90tTnlzuCY/1r0GoZm7fDUWyJg/xx7QdfiHc4+Q?=
 =?us-ascii?q?7xL9UeaeOzZ4hHZ/dL2jnBa+61CgyvDnWcWuylZKqTJJktjKtn8Tyxze8tWLR/?=
 =?us-ascii?q?Rg8ku72juC1xrf5v9aLU02j6bWJYYtwrsqmZoStUTDEDX2mELzjKKOakok/fOo?=
 =?us-ascii?q?6/jmYrXgvJOcM5J0ihnjMqk1hsO/Gv40MhATX2eA4+i8zrrj8VXjQLpWlv02jr?=
 =?us-ascii?q?XZsJfCKMQep665BQ5V0oE46xqmEjipzsoYkmcDLF9efBKHjpPpO03VIPziAvaw?=
 =?us-ascii?q?nVKsnC1sx/DcMb3rGo/NIWTbkLf9YbZ97FZRyBEyzdBa4JJUDKsNIPHuWkDvst?=
 =?us-ascii?q?zZDwE2MxavzubhFtpyyoceVniUDaODLqzSrAzA2uV6JuiKZYgO/TrwNfUhz/rv?=
 =?us-ascii?q?lmMi308Qe++ux5RERmq/G6FNJF6FYHykpsoZDC9etQ0lUO3szlmfSSN7bG30R7?=
 =?us-ascii?q?82oCs8XtH1RbzfT5yg1eTSlBywGYdbMzhL?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2B7AAC/18RajAPjVY1cHAEBAQQBAQoBA?=
 =?us-ascii?q?YQjbyiLX16PExqLEodDFIFmJoFfgwkChF40GAECAQEBAQEBAgETAQEBJksMgjU?=
 =?us-ascii?q?igkwDAydSEB0iEkkOGYURrUYzhFeDbIIlhmeCTz+BDIJQhGgUD4VsAocjFoQ6C?=
 =?us-ascii?q?1OKbQiBX4N0hS6DMoFKIIpQkSACHDeBUzMacoJDCYIXDgmLP4JbbIssgkUBAQ?=
X-IPAS-Result: =?us-ascii?q?A2B7AAC/18RajAPjVY1cHAEBAQQBAQoBAYQjbyiLX16PExq?=
 =?us-ascii?q?LEodDFIFmJoFfgwkChF40GAECAQEBAQEBAgETAQEBJksMgjUigkwDAydSEB0iE?=
 =?us-ascii?q?kkOGYURrUYzhFeDbIIlhmeCTz+BDIJQhGgUD4VsAocjFoQ6C1OKbQiBX4N0hS6?=
 =?us-ascii?q?DMoFKIIpQkSACHDeBUzMacoJDCYIXDgmLP4JbbIssgkUBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492105"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 1FCD61A60305;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id ib1ECnlmzW7X; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id F274C1A60306;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id ED6031A60183;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:53:57 +0300
Message-Id: <1522850048-13204-7-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 06/17] plat/common: Common x86
 tracing functions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Q3VycmVudCBjaGFuZ2VzIGludHJvZHVjZSBjb21tb24geDg2IHRyYWNpbmcgZnVuY3Rpb25zIChz
dGFjayB0cmFjZSwgcmVnaXN0ZXIKZHVtcHMgYW5kIG1lbW9yeSBkdW1wcykgd2hpY2ggYXJlIG1v
dmVkIGZyb20gcGxhdC94ZW4uIFRoZSBpbnRlcmZhY2Ugc2hvdWxkIGJlCnRoZSBzYW1lIGZvciBh
bGwgcGxhdGZvcm1zIGFuZCBhcmNoaXRlY3R1cmVzLgoKVGhlc2UgY2hhbmdlcyBzaG91bGQgYmUg
cmV2aXNpdGVkIHdoZW4gbGlidWtkZWJ1ZyB3aWxsIGJlIGltcGxlbWVudGluZyB0aGUKaGlnaC1s
ZXZlbCBsb2dpYyBvZiByZWdpc3RlciBkdW1wcyBhbmQgc3RhY2sgd2Fsa3MuCgpTaWduZWQtb2Zm
LWJ5OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgotLS0KIHBsYXQvY29tbW9u
L2luY2x1ZGUvdHJhY2UuaCB8IDQ4ICsrKysrKysrKysrKysrKysrKysrKysrCiBwbGF0L2NvbW1v
bi94ODYvdHJhY2UuYyAgICAgfCA5MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysKIHBsYXQveGVuL01ha2VmaWxlLnVrICAgICAgICB8ICAxICsKIHBsYXQveGVu
L3g4Ni90cmFwcy5jICAgICAgICB8IDcwICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KIDQgZmlsZXMgY2hhbmdlZCwgMTQzIGluc2VydGlvbnMoKyksIDY4IGRlbGV0aW9ucygtKQog
Y3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUvdHJhY2UuaAogY3JlYXRlIG1v
ZGUgMTAwNjQ0IHBsYXQvY29tbW9uL3g4Ni90cmFjZS5jCgpkaWZmIC0tZ2l0IGEvcGxhdC9jb21t
b24vaW5jbHVkZS90cmFjZS5oIGIvcGxhdC9jb21tb24vaW5jbHVkZS90cmFjZS5oCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0MjMxNTMKLS0tIC9kZXYvbnVsbAorKysgYi9w
bGF0L2NvbW1vbi9pbmNsdWRlL3RyYWNlLmgKQEAgLTAsMCArMSw0OCBAQAorLyogU1BEWC1MaWNl
bnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLworLyoKKyAqIEF1dGhvcnM6IENvc3RpbiBM
dXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+CisgKgorICogQ29weXJpZ2h0IChjKSAyMDE4LCBO
RUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVy
IG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogICAgdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09O
VFJJQlVUT1JTICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBI
T0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCisgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
CisgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkg
V0FZLgorICovCisjaWZuZGVmIF9fUExBVF9DTU5fVFJBQ0VfSF9fCisjZGVmaW5lIF9fUExBVF9D
TU5fVFJBQ0VfSF9fCisKKyNpZmRlZiBfX1g4Nl82NF9fCisjaW5jbHVkZSA8eDg2L3JlZ3MuaD4g
LyogVE9ETyBpbmNsdWRlIGEgZ2VuZXJpYyBoZWFkZXIgKi8KKyNlbHNlCisjZXJyb3IgIkNyZWF0
ZSByZWdzLmggZm9yIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIgorI2VuZGlmCisKK3ZvaWQgZHVtcF9y
ZWdzKHN0cnVjdCBfX3JlZ3MgKnJlZ3MpOwordm9pZCBkdW1wX21lbSh1bnNpZ25lZCBsb25nIGFk
ZHIpOwordm9pZCBzdGFja193YWxrKHZvaWQpOwordm9pZCBzdGFja193YWxrX2Zvcl9mcmFtZSh1
bnNpZ25lZCBsb25nIGZyYW1lX2Jhc2UpOworCisjZW5kaWYgLyogX19QTEFUX0NNTl9UUkFDRV9I
X18gKi8KZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9uL3g4Ni90cmFjZS5jIGIvcGxhdC9jb21tb24v
eDg2L3RyYWNlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWJiOWVlYgot
LS0gL2Rldi9udWxsCisrKyBiL3BsYXQvY29tbW9uL3g4Ni90cmFjZS5jCkBAIC0wLDAgKzEsOTIg
QEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UgKi8KKy8qCisgKiBB
dXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgorICoKKyAqIENvcHly
aWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUg
Y29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cworICogICAgY29udHJpYnV0b3Jz
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20K
KyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQorICogTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgor
ICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAq
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICogUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKgorICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBFWFRSQUNURUQgT1Ig
TU9ESUZJRUQgSU4gQU5ZIFdBWS4KKyAqLworCisjaW5jbHVkZSA8dHJhY2UuaD4KKyNpbmNsdWRl
IDx1ay9wcmludC5oPgorCisjZGVmaW5lIFBBR0VfU0laRSA0MDk2IC8qIFRPRE8gdGFrZSB0aGlz
IGZyb20gYW5vdGhlciBoZWFkZXIgKi8KKworCit2b2lkIGR1bXBfcmVncyhzdHJ1Y3QgX19yZWdz
ICpyZWdzKQoreworCS8qIFRPRE8gdWtfcHJpbnRkKCkgaW5zdGVhZCBvZiB1a19wcmludGsoKSAq
LworCXVrX3ByaW50aygiUklQOiAlMDE2bHggQ1M6ICUwNGx4XG4iLCByZWdzLT5yaXAsIHJlZ3Mt
PmNzICYgMHhmZmZmKTsKKwl1a19wcmludGsoIlJTUDogJTAxNmx4IFNTOiAlMDRseCBFRkxBR1M6
ICUwOGx4XG4iLAorCQkJcmVncy0+cnNwLCByZWdzLT5zcywgcmVncy0+ZWZsYWdzKTsKKwl1a19w
cmludGsoIlJBWDogJTAxNmx4IFJCWDogJTAxNmx4IFJDWDogJTAxNmx4XG4iLAorCQkJcmVncy0+
cmF4LCByZWdzLT5yYngsIHJlZ3MtPnJjeCk7CisJdWtfcHJpbnRrKCJSRFg6ICUwMTZseCBSU0k6
ICUwMTZseCBSREk6ICUwMTZseFxuIiwKKwkJCXJlZ3MtPnJkeCwgcmVncy0+cnNpLCByZWdzLT5y
ZGkpOworCXVrX3ByaW50aygiUkJQOiAlMDE2bHggUjA4OiAlMDE2bHggUjA5OiAlMDE2bHhcbiIs
CisJCQlyZWdzLT5yYnAsIHJlZ3MtPnI4LCByZWdzLT5yOSk7CisJdWtfcHJpbnRrKCJSMTA6ICUw
MTZseCBSMTE6ICUwMTZseCBSMTI6ICUwMTZseFxuIiwKKwkJCXJlZ3MtPnIxMCwgcmVncy0+cjEx
LCByZWdzLT5yMTIpOworCXVrX3ByaW50aygiUjEzOiAlMDE2bHggUjE0OiAlMDE2bHggUjE1OiAl
MDE2bHhcbiIsCisJCQlyZWdzLT5yMTMsIHJlZ3MtPnIxNCwgcmVncy0+cjE1KTsKK30KKworLyog
VE9ETyB0byBiZSByZW1vdmVkOyB3ZSBzaG91bGQgdXNlIHVrX2hleGR1bXAoKSBpbnN0ZWFkICov
Cit2b2lkIGR1bXBfbWVtKHVuc2lnbmVkIGxvbmcgYWRkcikKK3sKKwl1bnNpZ25lZCBsb25nIGk7
CisKKwlpZiAoYWRkciA8IFBBR0VfU0laRSkKKwkJcmV0dXJuOworCisJZm9yIChpID0gKChhZGRy
KSAtIDE2KSAmIH4xNTsgaSA8ICgoKGFkZHIpICsgNDgpICYgfjE1KTsgaSsrKSB7CisJCWlmICgh
KGkgJSAxNikpCisJCQl1a19wcmludGsoIlxuJWx4OiIsIGkpOworCQl1a19wcmludGsoIiAlMDJ4
IiwgKih1bnNpZ25lZCBjaGFyICopIGkpOworCX0KKwl1a19wcmludGsoIlxuIik7Cit9CisKK3Zv
aWQgc3RhY2tfd2Fsayh2b2lkKQoreworCXVuc2lnbmVkIGxvbmcgYnA7CisKKwlhc20oIm1vdnEg
JSVyYnAsICUwIiA6ICI9ciIoYnApKTsKKworCXN0YWNrX3dhbGtfZm9yX2ZyYW1lKGJwKTsKK30K
Kwordm9pZCBzdGFja193YWxrX2Zvcl9mcmFtZSh1bnNpZ25lZCBsb25nIGZyYW1lX2Jhc2UpCit7
CisJdW5zaWduZWQgbG9uZyAqZnJhbWUgPSAodm9pZCAqKSBmcmFtZV9iYXNlOworCisJdWtfcHJp
bnRrKCJiYXNlIGlzICUjbHggIiwgZnJhbWVfYmFzZSk7CisJdWtfcHJpbnRrKCJjYWxsZXIgaXMg
JSNseFxuIiwgZnJhbWVbMV0pOworCWlmIChmcmFtZVswXSkKKwkJc3RhY2tfd2Fsa19mb3JfZnJh
bWUoZnJhbWVbMF0pOworfQpkaWZmIC0tZ2l0IGEvcGxhdC94ZW4vTWFrZWZpbGUudWsgYi9wbGF0
L3hlbi9NYWtlZmlsZS51awppbmRleCAyMjBjOGQ5Li40OWM0MzUyIDEwMDY0NAotLS0gYS9wbGF0
L3hlbi9NYWtlZmlsZS51aworKysgYi9wbGF0L3hlbi9NYWtlZmlsZS51awpAQCAtMjksNiArMjks
NyBAQCBMSUJYRU5QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJYRU5QTEFUX0JBU0Up
L2h5cGVydmlzb3IuYwogTElCWEVOUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCWEVO
UExBVF9CQVNFKS9tZW1vcnkuYwogCiBpZm5lcSAoLCQoZmlsdGVyIHg4Nl8zMiB4ODZfNjQsJChV
S19BUkNIKSkpCitMSUJYRU5QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChVS19QTEFUX0NP
TU1PTl9CQVNFKS94ODYvdHJhY2UuY3xjb21tb24KIExJQlhFTlBMQVRfU1JDUy15ICAgICAgICAg
ICAgICArPSAkKExJQlhFTlBMQVRfQkFTRSkveDg2L3NldHVwLmMKIExJQlhFTlBMQVRfU1JDUy15
ICAgICAgICAgICAgICArPSAkKExJQlhFTlBMQVRfQkFTRSkveDg2L3RyYXBzLmMKIExJQlhFTlBM
QVRfU1JDUy0kKEFSQ0hfWDg2XzMyKSArPSAkKExJQlhFTlBMQVRfQkFTRSkveDg2L2VudHJ5MzIu
UwpkaWZmIC0tZ2l0IGEvcGxhdC94ZW4veDg2L3RyYXBzLmMgYi9wbGF0L3hlbi94ODYvdHJhcHMu
YwppbmRleCA3MDU3ODM5Li5kYTNjYTlhIDEwMDY0NAotLS0gYS9wbGF0L3hlbi94ODYvdHJhcHMu
YworKysgYi9wbGF0L3hlbi94ODYvdHJhcHMuYwpAQCAtNTQsMzYgKzU0LDYgQEAgdm9pZCBtYWNo
aW5lX2NoZWNrKHZvaWQpOwogCWZvciAoOzspIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogCX0KIAotdm9pZCBkdW1wX3JlZ3Mo
c3RydWN0IF9fcmVncyAqcmVncykKLXsKLS8vIHVrX3ByaW50aygiVGhyZWFkOiAlc1xuIiwgY3Vy
cmVudCA/IGN1cnJlbnQtPm5hbWUgOiAiKk5PTkUqIik7Ci0jaWZkZWYgX19YODZfNjRfXwotCXVr
X3ByaW50aygiUklQOiAlMDRseDpbPCUwMTZseD5dICIsIHJlZ3MtPmNzICYgMHhmZmZmLCByZWdz
LT5yaXApOwotCXVrX3ByaW50aygiXG5SU1A6ICUwNGx4OiUwMTZseCAgRUZMQUdTOiAlMDhseFxu
IiwgcmVncy0+c3MsIHJlZ3MtPnJzcCwKLQkJICByZWdzLT5lZmxhZ3MpOwotCXVrX3ByaW50aygi
UkFYOiAlMDE2bHggUkJYOiAlMDE2bHggUkNYOiAlMDE2bHhcbiIsIHJlZ3MtPnJheCwgcmVncy0+
cmJ4LAotCQkgIHJlZ3MtPnJjeCk7Ci0JdWtfcHJpbnRrKCJSRFg6ICUwMTZseCBSU0k6ICUwMTZs
eCBSREk6ICUwMTZseFxuIiwgcmVncy0+cmR4LCByZWdzLT5yc2ksCi0JCSAgcmVncy0+cmRpKTsK
LQl1a19wcmludGsoIlJCUDogJTAxNmx4IFIwODogJTAxNmx4IFIwOTogJTAxNmx4XG4iLCByZWdz
LT5yYnAsIHJlZ3MtPnI4LAotCQkgIHJlZ3MtPnI5KTsKLQl1a19wcmludGsoIlIxMDogJTAxNmx4
IFIxMTogJTAxNmx4IFIxMjogJTAxNmx4XG4iLCByZWdzLT5yMTAsIHJlZ3MtPnIxMSwKLQkJICBy
ZWdzLT5yMTIpOwotCXVrX3ByaW50aygiUjEzOiAlMDE2bHggUjE0OiAlMDE2bHggUjE1OiAlMDE2
bHhcbiIsIHJlZ3MtPnIxMywgcmVncy0+cjE0LAotCQkgIHJlZ3MtPnIxNSk7Ci0jZWxzZQotCXVr
X3ByaW50aygiRUlQOiAlbHgsIEVGTEFHUyAlbHguXG4iLCByZWdzLT5laXAsIHJlZ3MtPmVmbGFn
cyk7Ci0JdWtfcHJpbnRrKCJFQlg6ICUwOGx4IEVDWDogJTA4bHggRURYOiAlMDhseFxuIiwgcmVn
cy0+ZWJ4LCByZWdzLT5lY3gsCi0JCSAgcmVncy0+ZWR4KTsKLQl1a19wcmludGsoIkVTSTogJTA4
bHggRURJOiAlMDhseCBFQlA6ICUwOGx4IEVBWDogJTA4bHhcbiIsIHJlZ3MtPmVzaSwKLQkJICBy
ZWdzLT5lZGksIHJlZ3MtPmVicCwgcmVncy0+ZWF4KTsKLQl1a19wcmludGsoIkRTOiAlMDR4IEVT
OiAlMDR4IG9yaWdfZWF4OiAlMDhseCwgZWlwOiAlMDhseFxuIiwgcmVncy0+eGRzLAotCQkgIHJl
Z3MtPnhlcywgcmVncy0+b3JpZ19lYXgsIHJlZ3MtPmVpcCk7Ci0JdWtfcHJpbnRrKCJDUzogJTA0
eCBFRkxBR1M6ICUwOGx4IGVzcDogJTA4bHggc3M6ICUwNHhcbiIsIHJlZ3MtPnhjcywKLQkJICBy
ZWdzLT5lZmxhZ3MsIHJlZ3MtPmVzcCwgcmVncy0+eHNzKTsKLSNlbmRpZgotfQotCiBzdGF0aWMg
dm9pZCBkb190cmFwKGludCB0cmFwbnIsIGNoYXIgKnN0ciwgc3RydWN0IF9fcmVncyAqcmVncywK
IAkJICAgIHVuc2lnbmVkIGxvbmcgZXJyb3JfY29kZSkKIHsKQEAgLTExOCw0MiArODgsNiBAQCBE
T19FUlJPUigxMiwgInN0YWNrIHNlZ21lbnQiLCBzdGFja19zZWdtZW50KQogRE9fRVJST1JfSU5G
TygxNywgImFsaWdubWVudCBjaGVjayIsIGFsaWdubWVudF9jaGVjaywgQlVTX0FEUkFMTiwgMCkK
IERPX0VSUk9SKDE4LCAibWFjaGluZSBjaGVjayIsIG1hY2hpbmVfY2hlY2spCiAKLXN0YXRpYyB2
b2lkIGRvX3N0YWNrX3dhbGsodW5zaWduZWQgbG9uZyBmcmFtZV9iYXNlKQotewotCXVuc2lnbmVk
IGxvbmcgKmZyYW1lID0gKHZvaWQgKilmcmFtZV9iYXNlOwotCi0JdWtfcHJpbnRrKCJiYXNlIGlz
ICUjbHggIiwgZnJhbWVfYmFzZSk7Ci0JdWtfcHJpbnRrKCJjYWxsZXIgaXMgJSNseFxuIiwgZnJh
bWVbMV0pOwotCWlmIChmcmFtZVswXSkKLQkJZG9fc3RhY2tfd2FsayhmcmFtZVswXSk7Ci19Ci0K
LXZvaWQgc3RhY2tfd2Fsayh2b2lkKQotewotCXVuc2lnbmVkIGxvbmcgYnA7Ci0jaWZkZWYgX194
ODZfNjRfXwotCWFzbSgibW92cSAlJXJicCwgJTAiIDogIj1yIihicCkpOwotI2Vsc2UKLQlhc20o
Im1vdmwgJSVlYnAsICUwIiA6ICI9ciIoYnApKTsKLSNlbmRpZgotCWRvX3N0YWNrX3dhbGsoYnAp
OwotfQotCi1zdGF0aWMgdm9pZCBkdW1wX21lbSh1bnNpZ25lZCBsb25nIGFkZHIpCi17Ci0JdW5z
aWduZWQgbG9uZyBpOwotCi0JaWYgKGFkZHIgPCBQQUdFX1NJWkUpCi0JCXJldHVybjsKLQotCWZv
ciAoaSA9ICgoYWRkciktMTYpICYgfjE1OyBpIDwgKCgoYWRkcikgKyA0OCkgJiB+MTUpOyBpKysp
IHsKLQkJaWYgKCEoaSAlIDE2KSkKLQkJCXVrX3ByaW50aygiXG4lbHg6IiwgaSk7Ci0JCXVrX3By
aW50aygiICUwMngiLCAqKHVuc2lnbmVkIGNoYXIgKilpKTsKLQl9Ci0JdWtfcHJpbnRrKCJcbiIp
OwotfQotCiBzdGF0aWMgaW50IGhhbmRsaW5nX3BnX2ZhdWx0OwogCiB2b2lkIGRvX3BhZ2VfZmF1
bHQoc3RydWN0IF9fcmVncyAqcmVncywgdW5zaWduZWQgbG9uZyBlcnJvcl9jb2RlKQpAQCAtMTgy
LDcgKzExNiw3IEBAIHZvaWQgZG9fcGFnZV9mYXVsdChzdHJ1Y3QgX19yZWdzICpyZWdzLCB1bnNp
Z25lZCBsb25nIGVycm9yX2NvZGUpCiAKIAlkdW1wX3JlZ3MocmVncyk7CiAjaWZkZWYgX19YODZf
NjRfXwotCWRvX3N0YWNrX3dhbGsocmVncy0+cmJwKTsKKwlzdGFja193YWxrX2Zvcl9mcmFtZShy
ZWdzLT5yYnApOwogCWR1bXBfbWVtKHJlZ3MtPnJzcCk7CiAJZHVtcF9tZW0ocmVncy0+cmJwKTsK
IAlkdW1wX21lbShyZWdzLT5yaXApOwpAQCAtMjA3LDcgKzE0MSw3IEBAIHZvaWQgZG9fZ2VuZXJh
bF9wcm90ZWN0aW9uKHN0cnVjdCBfX3JlZ3MgKnJlZ3MsIGxvbmcgZXJyb3JfY29kZSkKICNlbmRp
ZgogCWR1bXBfcmVncyhyZWdzKTsKICNpZmRlZiBfX1g4Nl82NF9fCi0JZG9fc3RhY2tfd2Fsayhy
ZWdzLT5yYnApOworCXN0YWNrX3dhbGtfZm9yX2ZyYW1lKHJlZ3MtPnJicCk7CiAJZHVtcF9tZW0o
cmVncy0+cnNwKTsKIAlkdW1wX21lbShyZWdzLT5yYnApOwogCWR1bXBfbWVtKHJlZ3MtPnJpcCk7
Ci0tIAoyLjEuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2pl
Y3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5p
b3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3iro-0003Hl-5h; Wed, 04 Apr 2018 13:54:24 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irn-0003Gr-1R
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:23 +0000
X-Inumbo-ID: 975725fc-380f-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 975725fc-380f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 15:53:45 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3ASFkopxT4W4nkQp174/A5Xt9FGdpsv+yvbD5Q0YIu?=
 =?us-ascii?q?jvd0So/mwa6yZBKN2/xhgRfzUJnB7Loc0qyK6/umATRIyK3CmUhKSIZLWR4BhJ?=
 =?us-ascii?q?detC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+?=
 =?us-ascii?q?KPjrFY7OlcS30P2594HObwlSizexfb1/IA+qoQnNq8IbnZZsJqEtxxXTv3BGYf?=
 =?us-ascii?q?5WxWRmJVKSmxbz+MK994N9/ipTpvws6ddOXb31cKokQ7NYCi8mM30u683wqRbD?=
 =?us-ascii?q?VwqP6WACXWgQjxFFHhLK7BD+Xpf2ryv6qu9w0zSUMMHqUbw5Xymp4qF2QxHqlS?=
 =?us-ascii?q?gHLSY0/mHJhMJtgqxVoxWvqB5xw4PPfI2ZKOBzcr/HcN8GWWZMWNtaWSxbAoO7?=
 =?us-ascii?q?aosCF/QMPeFDr4nhplsOqwa1Cw+xBOP31z9Dm3j70rE90+Q6DQHG3QogE8gKsH?=
 =?us-ascii?q?TJtNX1KbwfXvyuzKXS1TXDcuhZ1S3n6IjPax0sp+yHU7FoccfJ1EUiGB7Jgk+T?=
 =?us-ascii?q?pIHlJT+ZyPoBvmqB4+duTe6jlmEqpxxrrjWsxsogkJfFi4wbx1ze6Cl0z5g5KN?=
 =?us-ascii?q?ulQ0Bhe9GkCoFftySCOotzRcMtXn9ntT4hyr0DpZ67ZC8KyIk7xxLHa/yIbYyI?=
 =?us-ascii?q?4hX7WeaPJDd3nnNleLalixmu6kis0PX8VtSv31pQtCpFlcHAtnEL1xPN9siKUu?=
 =?us-ascii?q?Zx80i81TqV1A3e6vtILV4qmafZMZIszKY8lp8JvkTCGi/2ll/2jKiTdkg85ueo?=
 =?us-ascii?q?7P/nYqnnpp+aLYN0jhz+MrwzmsGkHes4KRICX3CG+eunzrHj50r5TK1QjvIqiq?=
 =?us-ascii?q?nZrIzaJcMDq668Ag9V1Icj6xGkDzu/zdsXg2cHI0xBeB+ci4jpOkrOIOzjDful?=
 =?us-ascii?q?jFWjjjFry+rBPr37DZXHNmLDn6v5fbZh905czxI+zcte55JRDbEBJuj/WkzstN?=
 =?us-ascii?q?PGCB84MhK7w/z8BdV7yIwRRWaPDbWCP6/Ir1CI+7FnH+7ZYY4TuTHmbvQo+fPq?=
 =?us-ascii?q?pXs4gkMGO7mk290Qcn/rMO5hJhCyZmHwg9FJNXoSo0JqR+vxlFyEFzpOf2uaVL?=
 =?us-ascii?q?l6/iwxTpihW9SQDruxiaCMiX/oVqZdYXpLXwiB?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYUSKItfXo8tklWBeoUOAoReNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDAyd?=
 =?us-ascii?q?SED8SVxmFEa1GM4RXg2yCJYk2P4EMglaKcQKHI4Uuim0IgV+MVIw6kSACHDeBU?=
 =?us-ascii?q?zMagzWCIA4JEY4JbI1xAQE?=
X-IPAS-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBCQEBAYUSKItfXo8?=
 =?us-ascii?q?tklWBeoUOAoReNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDAydSED8SVxmFEa1GM?=
 =?us-ascii?q?4RXg2yCJYk2P4EMglaKcQKHI4Uuim0IgV+MVIw6kSACHDeBUzMagzWCIA4JEY4?=
 =?us-ascii?q?JbI1xAQE?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492113"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 46D111A602F1;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id B-x59jrkKutl; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 2C7C01A602F6;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 27B561A60338;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:54:05 +0300
Message-Id: <1522850048-13204-15-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 14/17] lib/ukschedcoop: Updates for
 inlining with uksched API changes
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Q2hhbmdlczoKLSB1c2luZyBuZXcgY29udGV4dCBjYWxsYmFja3MgYWJzdHJhY3Rpb24KLSBpZGxl
IHRocmVhZCBpcyBzcGVjaWZpYyB0byBhbGwgc2NoZWR1bGVycwoKU2lnbmVkLW9mZi1ieTogQ29z
dGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KLS0tCiBsaWIvdWtzY2hlZGNvb3Avc2No
ZWRjb29wLmMgfCA0NSArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KIDEgZmlsZSBjaGFuZ2VkLCAyMCBpbnNlcnRpb25zKCspLCAyNSBkZWxldGlvbnMoLSkKCmRp
ZmYgLS1naXQgYS9saWIvdWtzY2hlZGNvb3Avc2NoZWRjb29wLmMgYi9saWIvdWtzY2hlZGNvb3Av
c2NoZWRjb29wLmMKaW5kZXggNjIwMWM3Yi4uZGQyMjIwOSAxMDA2NDQKLS0tIGEvbGliL3Vrc2No
ZWRjb29wL3NjaGVkY29vcC5jCisrKyBiL2xpYi91a3NjaGVkY29vcC9zY2hlZGNvb3AuYwpAQCAt
MzUsNyArMzUsNiBAQAogI2luY2x1ZGUgPHVrL3NjaGVkY29vcC5oPgogCiBzdHJ1Y3Qgc2NoZWRj
b29wX3ByaXZhdGUgewotCXN0cnVjdCB1a190aHJlYWQgKmlkbGVfdGhyZWFkOwogCXN0cnVjdCB1
a190aHJlYWRfbGlzdCB0aHJlYWRfbGlzdDsKIAlzdHJ1Y3QgdWtfdGhyZWFkX2xpc3QgZXhpdGVk
X3RocmVhZHM7CiAJaW50IHRocmVhZHNfc3RhcnRlZDsKQEAgLTU2LDcgKzU1LDcgQEAgc3RhdGlj
IHZvaWQgcHJpbnRfcnVucXVldWUoc3RydWN0IHVrX3NjaGVkICpzKQogCiBzdGF0aWMgdm9pZCBz
Y2hlZGNvb3Bfc2NoZWR1bGUoc3RydWN0IHVrX3NjaGVkICpzKQogewotCXN0cnVjdCBzY2hlZGNv
b3BfcHJpdmF0ZSAqcHJ2ID0gcy0+cHJpdmF0ZTsKKwlzdHJ1Y3Qgc2NoZWRjb29wX3ByaXZhdGUg
KnBydiA9IHMtPnBydjsKIAlzdHJ1Y3QgdWtfdGhyZWFkICpwcmV2LCAqbmV4dCwgKnRocmVhZCwg
KnRtcDsKIAl1bnNpZ25lZCBsb25nIGZsYWdzOwogCkBAIC0xMjIsNyArMTIxLDcgQEAgc3RhdGlj
IHZvaWQgc2NoZWRjb29wX3NjaGVkdWxlKHN0cnVjdCB1a19zY2hlZCAqcykKIAkgKiBpbnRlcnJ1
cHRlZCBhdCB0aGUgcmV0dXJuIGluc3RydWN0aW9uLiBBbmQgdGhlcmVmb3JlIGF0IHNhZmUgcG9p
bnQuCiAJICovCiAJaWYgKHByZXYgIT0gbmV4dCkKLQkJdWtfdGhyZWFkX3N3aXRjaChwcmV2LCBu
ZXh0KTsKKwkJdWtfc2NoZWRfdGhyZWFkX3N3aXRjaChzLCBwcmV2LCBuZXh0KTsKIAogCVVLX1RB
SUxRX0ZPUkVBQ0hfU0FGRSh0aHJlYWQsICZwcnYtPmV4aXRlZF90aHJlYWRzLCB0aHJlYWRfbGlz
dCwgdG1wKSB7CiAJCWlmICh0aHJlYWQgIT0gcHJldikgewpAQCAtMTMzLDEwICsxMzIsMTAgQEAg
c3RhdGljIHZvaWQgc2NoZWRjb29wX3NjaGVkdWxlKHN0cnVjdCB1a19zY2hlZCAqcykKIAl9CiB9
CiAKLXN0YXRpYyB2b2lkIHNjaGVkY29vcF90aHJlYWRfc3RhcnQoc3RydWN0IHVrX3NjaGVkICpz
LCBzdHJ1Y3QgdWtfdGhyZWFkICp0KQorc3RhdGljIHZvaWQgc2NoZWRjb29wX3RocmVhZF9hZGQo
c3RydWN0IHVrX3NjaGVkICpzLCBzdHJ1Y3QgdWtfdGhyZWFkICp0KQogewogCXVuc2lnbmVkIGxv
bmcgZmxhZ3M7Ci0Jc3RydWN0IHNjaGVkY29vcF9wcml2YXRlICpwcnYgPSBzLT5wcml2YXRlOwor
CXN0cnVjdCBzY2hlZGNvb3BfcHJpdmF0ZSAqcHJ2ID0gcy0+cHJ2OwogCiAJc2V0X3J1bm5hYmxl
KHQpOwogCkBAIC0xNDUsMTAgKzE0NCwxMCBAQCBzdGF0aWMgdm9pZCBzY2hlZGNvb3BfdGhyZWFk
X3N0YXJ0KHN0cnVjdCB1a19zY2hlZCAqcywgc3RydWN0IHVrX3RocmVhZCAqdCkKIAl1a3BsYXRf
bGNwdV9yZXN0b3JlX2lycWYoZmxhZ3MpOwogfQogCi1zdGF0aWMgdm9pZCBzY2hlZGNvb3BfdGhy
ZWFkX3N0b3Aoc3RydWN0IHVrX3NjaGVkICpzLCBzdHJ1Y3QgdWtfdGhyZWFkICp0KQorc3RhdGlj
IHZvaWQgc2NoZWRjb29wX3RocmVhZF9yZW1vdmUoc3RydWN0IHVrX3NjaGVkICpzLCBzdHJ1Y3Qg
dWtfdGhyZWFkICp0KQogewogCXVuc2lnbmVkIGxvbmcgZmxhZ3M7Ci0Jc3RydWN0IHNjaGVkY29v
cF9wcml2YXRlICpwcnYgPSBzLT5wcml2YXRlOworCXN0cnVjdCBzY2hlZGNvb3BfcHJpdmF0ZSAq
cHJ2ID0gcy0+cHJ2OwogCiAJZmxhZ3MgPSB1a3BsYXRfbGNwdV9zYXZlX2lycWYoKTsKIApAQCAt
MTcyLDI0ICsxNzEsMjAgQEAgc3RhdGljIHZvaWQgaWRsZV90aHJlYWRfZm4odm9pZCAqdW51c2Vk
IF9fdW51c2VkKQogewogCXN0cnVjdCB1a190aHJlYWQgKmN1cnJlbnQgPSB1a190aHJlYWRfY3Vy
cmVudCgpOwogCXN0cnVjdCB1a19zY2hlZCAqcyA9IGN1cnJlbnQtPnNjaGVkOwotCXN0cnVjdCBz
Y2hlZGNvb3BfcHJpdmF0ZSAqcHJ2ID0gcy0+cHJpdmF0ZTsKLQotCVVLX0FTU0VSVChjdXJyZW50
ID09IHBydi0+aWRsZV90aHJlYWQpOworCXN0cnVjdCBzY2hlZGNvb3BfcHJpdmF0ZSAqcHJ2ID0g
cy0+cHJ2OwogCiAJcHJ2LT50aHJlYWRzX3N0YXJ0ZWQgPSAxOworCXVrcGxhdF9sY3B1X2VuYWJs
ZV9pcnEoKTsKKwogCXdoaWxlICgxKSB7CiAJCXVrX3RocmVhZF9ibG9jayhjdXJyZW50KTsKLQkJ
dWtfc2NoZWRfc2NoZWR1bGUocyk7CisJCXNjaGVkY29vcF9zY2hlZHVsZShzKTsKIAl9CiB9CiAK
LXN0YXRpYyB2b2lkIHNjaGVkY29vcF9ydW4oc3RydWN0IHVrX3NjaGVkICpzKSBfX25vcmV0dXJu
Owotc3RhdGljIHZvaWQgc2NoZWRjb29wX3J1bihzdHJ1Y3QgdWtfc2NoZWQgKnMpCitzdGF0aWMg
dm9pZCBzY2hlZGNvb3BfeWllbGQoc3RydWN0IHVrX3NjaGVkICpzKQogewotCXN0cnVjdCBzY2hl
ZGNvb3BfcHJpdmF0ZSAqcHJ2ID0gcy0+cHJpdmF0ZTsKLQlzdHJ1Y3QgdWtfdGhyZWFkICppZGxl
X3RocmVhZCA9IHBydi0+aWRsZV90aHJlYWQ7Ci0KLQl1a3BsYXRfdGhyZWFkX2N0eF9ydW5faWRs
ZSgmaWRsZV90aHJlYWQtPnBsYXRfY3R4KTsKKwlzY2hlZGNvb3Bfc2NoZWR1bGUocyk7CiB9CiAK
IHN0cnVjdCB1a19zY2hlZCAqdWtfc2NoZWRjb29wX2luaXQoc3RydWN0IHVrX2FsbG9jICphKQpA
QCAtMjA3LDYgKzIwMiw4IEBAIHN0cnVjdCB1a19zY2hlZCAqdWtfc2NoZWRjb29wX2luaXQoc3Ry
dWN0IHVrX2FsbG9jICphKQogCiAJc2NoZWQtPmFsbG9jYXRvciA9IGE7CiAKKwl1a3BsYXRfY3R4
X2NhbGxiYWNrc19pbml0KCZzY2hlZC0+cGxhdF9jdHhfY2JzLCB1a3BsYXRfY3R4X3N3KTsKKwog
CXBydiA9IHVrX21hbGxvYyhhLCBzaXplb2Yoc3RydWN0IHNjaGVkY29vcF9wcml2YXRlKSk7CiAJ
aWYgKHBydiA9PSBOVUxMKSB7CiAJCXVrX3ByaW50ZChETFZMX1dBUk4sCkBAIC0yMTcsMTYgKzIx
NCwxNCBAQCBzdHJ1Y3QgdWtfc2NoZWQgKnVrX3NjaGVkY29vcF9pbml0KHN0cnVjdCB1a19hbGxv
YyAqYSkKIAlVS19UQUlMUV9JTklUKCZwcnYtPmV4aXRlZF90aHJlYWRzKTsKIAlVS19UQUlMUV9J
TklUKCZwcnYtPnRocmVhZF9saXN0KTsKIAlwcnYtPnRocmVhZHNfc3RhcnRlZCA9IDA7Ci0Jc2No
ZWQtPnByaXZhdGUgPSBwcnY7Ci0KLQl1a19zY2hlZF9pbml0KHNjaGVkLCBzY2hlZGNvb3Bfc2No
ZWR1bGUsIHNjaGVkY29vcF9ydW4sCi0JCQlzY2hlZGNvb3BfdGhyZWFkX3N0YXJ0LCBzY2hlZGNv
b3BfdGhyZWFkX3N0b3ApOworCXNjaGVkLT5wcnYgPSBwcnY7CiAKLQlwcnYtPmlkbGVfdGhyZWFk
ID0gdWtfdGhyZWFkX2NyZWF0ZSgiSWRsZSIsIGlkbGVfdGhyZWFkX2ZuLCBOVUxMKTsKLQlpZiAo
cHJ2LT5pZGxlX3RocmVhZCA9PSBOVUxMKQotCQlnb3RvIG91dF9lcnI7CisJdWtfc2NoZWRfaWRs
ZV9pbml0KHNjaGVkLCBOVUxMLCBpZGxlX3RocmVhZF9mbik7CiAKLQl1a190aHJlYWRfc3RhcnQo
cHJ2LT5pZGxlX3RocmVhZCk7CisJdWtfc2NoZWRfaW5pdChzY2hlZCwKKwkJCXNjaGVkY29vcF95
aWVsZCwKKwkJCXNjaGVkY29vcF90aHJlYWRfYWRkLAorCQkJc2NoZWRjb29wX3RocmVhZF9yZW1v
dmUpOwogCiAJcmV0dXJuIHNjaGVkOwogCi0tIAoyLjEuNAoKCl9fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWlu
aW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5v
cmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irm-0003GT-GV; Wed, 04 Apr 2018 13:54:22 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irk-0003Fp-HG
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:20 +0000
X-Inumbo-ID: 936da0e7-380f-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 936da0e7-380f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 15:53:39 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3A1AS9fhR8+jUyzCc/rSzl1KShONpsv+yvbD5Q0YIu?=
 =?us-ascii?q?jvd0So/mwa6yZBaN2/xhgRfzUJnB7Loc0qyK6/umATRIyK3CmUhKSIZLWR4BhJ?=
 =?us-ascii?q?detC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+?=
 =?us-ascii?q?KPjrFY7OlcS30P2594HObwlSizexfb1/IA+qoQnNq8IbnZZsJqEtxxXTv3BGYf?=
 =?us-ascii?q?5WxWRmJVKSmxbz+MK994N9/ipTpvws6ddOXb31cKokQ7NYCi8mM30u683wqRbD?=
 =?us-ascii?q?VwqP6WACXWgQjxFFHhLK7BD+Xpf2ryv6qu9w0zSUMMHqUbw5Xymp4qF2QxHqlS?=
 =?us-ascii?q?gHLSY0/mHJhMJtgqxVoxWvqgdjz4LIeoyZKOBzcr/Bcd4cWGFPXtxRVytEAo6k?=
 =?us-ascii?q?cYYPCPEBPfpZr4n7ulAAqwa+BRGxBOjyzTJHmnj23bYm0+QgFwHKxgggH88WsH?=
 =?us-ascii?q?TJt9j6KLwSXfqtzKnV1jrPdelW2TDk5YXObxsvoumMUKptfcfe1EUjDQDIg1WK?=
 =?us-ascii?q?pYD7IT+Y1P4BvmaD4+Z9Wu+jlnQrpgJxrzS12MshhIfEipgIxl3L6yl0xps+K8?=
 =?us-ascii?q?eiR05he9GkFYNdtySdN4RrXMwvW3pouCMmyr0evp67YTQKxIwnxxHBb/yHdJCF?=
 =?us-ascii?q?4gzmVOmLIDd4gGhpd66khxqo6Uig1/bzWtOu0FZNtiZFk9/MuW4R1xHL98SKRe?=
 =?us-ascii?q?Zx8l2i1DuPzQzf9P9ILEIumafVM5Ihx6Q/lpsXsUTNBC/2n0D2gbeKeUUj4eio?=
 =?us-ascii?q?9+XnYrP8qp+YKo90khz+P78ylcykG+g4KhUOUHOB9eSm073v5Vf5T6lSjv0qjq?=
 =?us-ascii?q?nZt4jXJcEapq6/Ag9V1Z0j5w+iADi4ztQXg30HIUlBeBKGlIjpJ0rOLOr3DPih?=
 =?us-ascii?q?hVSgijBrx+rJPrf5GJXCMmDDkKv9fbZ680Nc0wszzdVY55JSEL0BI+/zVVH3tN?=
 =?us-ascii?q?3ZEBA5KRe5w+D5B9ph0oMRQ3mADrWHP6PP4he04bcqIu+NY5RQtDvjJvwN4//1?=
 =?us-ascii?q?kWR/iVIbO66z0sg5cne9S99hOFmYZzLIn88cWTMBuREiTeqsjECaTBZYfDCqQq?=
 =?us-ascii?q?h6/DZtW9HuNpvKWo342O/J5yy8BJADPm0=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2B7AAC/18RajAPjVY1cHAEBAQQBAQoBA?=
 =?us-ascii?q?YQjbyiLX16PLYsSh0OBeiaEaIRgNBgBAgEBAQEBAQIBEwEBASZLDII1IoNLT4Y?=
 =?us-ascii?q?TrXmEV4NsgiWJNj+DYopxAocjhS6KbQiBX4N0gk2GE4FqilCRIAIcN4FTMxqDN?=
 =?us-ascii?q?QmBYgFCi0iCW2yNcQEB?=
X-IPAS-Result: =?us-ascii?q?A2B7AAC/18RajAPjVY1cHAEBAQQBAQoBAYQjbyiLX16PLYs?=
 =?us-ascii?q?Sh0OBeiaEaIRgNBgBAgEBAQEBAQIBEwEBASZLDII1IoNLT4YTrXmEV4NsgiWJN?=
 =?us-ascii?q?j+DYopxAocjhS6KbQiBX4N0gk2GE4FqilCRIAIcN4FTMxqDNQmBYgFCi0iCW2y?=
 =?us-ascii?q?NcQEB?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492099"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 092D31A6033C;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id UNKM1CIy_-Ws; Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id E12781A6018F;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id DD1031A60183;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:53:51 +0300
Message-Id: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
Subject: [Minios-devel] [UNIKRAFT PATCH v2 00/17] Prepare for enabling
 scheduling on KVM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIGN1cnJlbnQgcGF0Y2ggc2VyaWVzIGluY2x1ZGUgcmVmYWN0b3JpemF0aW9ucyB0aGF0IGlu
dGVncmF0ZSBmdW5jdGlvbmFsaXR5CmZvciBib3RoIFhlbiBhbmQgS1ZNIHBsYXRmb3Jtcy4gV2Ug
YXJlIGludHJvZHVjaW5nIGNvbW1vbiBDUFUgcmVsYXRlZApkZWZpbml0aW9ucywgdHJhcCBoYW5k
bGluZyBhbmQgdGhyZWFkIHN3aXRjaGluZyBhYnN0cmFjdGl6YXRpb25zLiBUaGUKc2NoZWR1bGlu
ZyBBUEkgaXMgcmV2aXNpdGVkIGZvciBpbmxpbmluZyB3aXRoIHRoZSBwbGF0Zm9ybSBjaGFuZ2Vz
LiBUaGUgY3VycmVudApjaGFuZ2VzIGFyZSBuZWVkZWQgaW4gb3JkZXIgdG8gZWZmaWNpZW50bHkg
cmV1c2UgdGhlIHNjaGVkdWxpbmcgZnVuY3Rpb25hbGl0eSAKb24gS1ZNIGFzIHdlbGwuCgpDb3N0
aW4gTHVwdSAoMTcpOgogIHBsYXQvY29tbW9uOiBDb21tb24geDg2IENQVSBkZWZpbml0aW9ucwog
IHBsYXQvY29tbW9uOiBDb21tb24geDg2IHNlZ21lbnQgZGVzY3JpcHRvcnMgZGVmaW5pdGlvbnMK
ICBwbGF0L2NvbW1vbjogeDg2IGhhcmR3YXJlIGNvbnRleHQgZGVmaW5pdGlvbgogIHBsYXQvY29t
bW9uOiBDb21tb24geDg2IENQVSBpbnRlcnJ1cHQgZmxhZyBoYW5kbGluZwogIHBsYXQvY29tbW9u
OiBDb21tb24geDg2IENQVSBmdW5jdGlvbnMKICBwbGF0L2NvbW1vbjogQ29tbW9uIHg4NiB0cmFj
aW5nIGZ1bmN0aW9ucwogIHBsYXQvY29tbW9uOiBDb21tb24geDg2IHRyYXBzIGRlZmluaXRpb25z
IGFuZCBmdW5jdGlvbnMKICBwbGF0L2NvbW1vbjogQWRkIHVrcGxhdF9sY3B1X3tlbmFibGUsZGlz
YWJsZX1faXJxIGZ1bmN0aW9ucwogIHBsYXQvY29tbW9uOiBIYWx0aW5nIGZ1bmN0aW9ucwogIHBs
YXQvY29tbW9uOiBDb21tb24geDg2IHRocmVhZGluZyBjb2RlCiAgYXJjaC94ODZfNjQ6IEFkZCBu
b3AoKSBtYWNybwogIGFyY2gveDg2XzY0OiBBZGQgZnVuY3Rpb24gZm9yIHN0YWNrIHBvaW50ZXIg
cmV0cmlldmFsCiAgbGliL3Vrc2NoZWQ6IFVwZGF0ZXMgZm9yIGlubGluaW5nIHdpdGggcGxhdC9j
b21tb24gY2hhbmdlcwogIGxpYi91a3NjaGVkY29vcDogVXBkYXRlcyBmb3IgaW5saW5pbmcgd2l0
aCB1a3NjaGVkIEFQSSBjaGFuZ2VzCiAgcGxhdC94ZW46IFJlbW92ZSBldmVudHMgZW5hYmxpbmcg
ZnJvbSBwbGF0Zm9ybSBjb2RlCiAgcGxhdC94ZW46IEFkZCBJUlEgc3Vic3lzdGVtIGluaXRpYWxp
emF0aW9uIGZ1bmN0aW9uCiAgbGliL3VrYm9vdDogVXBkYXRlcyBmb3IgaW5saW5pbmcgd2l0aCBw
bGF0Zm9ybSBhbmQgc2NoZWR1bGluZyBjaGFuZ2VzCgogaW5jbHVkZS91ay9hcmNoL3RocmVhZC5o
ICAgICAgICAgICAgICAgICAgIHwgIDUzIC0tLS0tCiBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xj
cHUuaCAgICAgICAgICAgICAgfCAgNDAgKy0tLQogaW5jbHVkZS91ay9wbGF0L2lycS5oICAgICAg
ICAgICAgICAgICAgICAgIHwgIDU0ICsrKysrCiBpbmNsdWRlL3VrL3BsYXQvbGNwdS5oICAgICAg
ICAgICAgICAgICAgICAgfCAgMjUgKystCiBpbmNsdWRlL3VrL3BsYXQvdGhyZWFkLmggICAgICAg
ICAgICAgICAgICAgfCAgNzAgKysrKystCiBsaWIvdWtib290L2Jvb3QuYyAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgMjEgKy0KIGxpYi91a3NjaGVkL2luY2x1ZGUvdWsvc2NoZWQuaCAgICAg
ICAgICAgICB8IDEyMCArKysrKystLS0tCiBsaWIvdWtzY2hlZC9pbmNsdWRlL3VrL3RocmVhZC5o
ICAgICAgICAgICAgfCAgMzkgKystLQogbGliL3Vrc2NoZWQvc2NoZWQuYyAgICAgICAgICAgICAg
ICAgICAgICAgIHwgMTI0ICsrKysrKysrLS0tCiBsaWIvdWtzY2hlZC90aHJlYWQuYyAgICAgICAg
ICAgICAgICAgICAgICAgfCAgNzYgKysrKysrLQogbGliL3Vrc2NoZWRjb29wL3NjaGVkY29vcC5j
ICAgICAgICAgICAgICAgIHwgIDQ1ICsrLS0KIHBsYXQvY29tbW9uL2luY2x1ZGUvX3RpbWUuaCAg
ICAgICAgICAgICAgICB8ICA0MiArKysrCiBwbGF0L2NvbW1vbi9pbmNsdWRlL2NwdS5oICAgICAg
ICAgICAgICAgICAgfCAgNDYgKysrKwogcGxhdC9jb21tb24vaW5jbHVkZS9zd19jdHguaCAgICAg
ICAgICAgICAgIHwgIDU2ICsrKysrCiBwbGF0L2NvbW1vbi9pbmNsdWRlL3RyYWNlLmggICAgICAg
ICAgICAgICAgfCAgNDggKysrKwogcGxhdC9jb21tb24vaW5jbHVkZS94ODYvY3B1LmggICAgICAg
ICAgICAgIHwgMTA5ICsrKysrKysrKwogcGxhdC9jb21tb24vaW5jbHVkZS94ODYvY3B1X2RlZnMu
aCAgICAgICAgIHwgIDc2ICsrKysrKysKIHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L2Rlc2MuaCAg
ICAgICAgICAgICB8IDE5NyArKysrKysrKysrKysrKysrKwogcGxhdC9jb21tb24vaW5jbHVkZS94
ODYvaXJxLmggICAgICAgICAgICAgIHwgIDg3ICsrKysrKysrCiBwbGF0L2NvbW1vbi9pbmNsdWRl
L3g4Ni9yZWdzLmggICAgICAgICAgICAgfCAgOTQgKysrKysrKysKIHBsYXQvY29tbW9uL2luY2x1
ZGUveDg2L3RyYXBzLmggICAgICAgICAgICB8IDExNSArKysrKysrKysrCiBwbGF0L2NvbW1vbi9s
Y3B1LmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNjAgKysrKysKIHBsYXQvY29tbW9uL3N3
X2N0eC5jICAgICAgICAgICAgICAgICAgICAgICB8ICA5NyArKysrKysrKwogcGxhdC9jb21tb24v
dGhyZWFkLmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDY2ICsrKysrKwogcGxhdC9jb21tb24v
eDg2L2NwdV9uYXRpdmUuYyAgICAgICAgICAgICAgIHwgIDQ5ICsrKysrCiBwbGF0L2NvbW1vbi94
ODYvdGhyZWFkX3N0YXJ0LlMgICAgICAgICAgICAgfCAgNjUgKysrKysrCiBwbGF0L2NvbW1vbi94
ODYvdHJhY2UuYyAgICAgICAgICAgICAgICAgICAgfCAgOTIgKysrKysrKysKIHBsYXQvY29tbW9u
L3g4Ni90cmFwcy5jICAgICAgICAgICAgICAgICAgICB8IDExNiArKysrKysrKysrCiBwbGF0L2t2
bS9NYWtlZmlsZS51ayAgICAgICAgICAgICAgICAgICAgICAgfCAgIDggKwogcGxhdC9rdm0vaW5j
bHVkZS9rdm0teDg2L2NwdV94ODZfNjQuaCAgICAgIHwgICA1IC0KIHBsYXQva3ZtL2luY2x1ZGUv
a3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMuaCB8ICA0NiArLS0tCiBwbGF0L2t2bS9zaHV0ZG93bi5j
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHBsYXQva3ZtL3g4Ni9jb25zb2xlLmMg
ICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogcGxhdC9rdm0veDg2L2NwdV94ODZfNjQuYyAg
ICAgICAgICAgICAgICAgIHwgIDExICstCiBwbGF0L2t2bS94ODYvZW50cnk2NC5TICAgICAgICAg
ICAgICAgICAgICAgfCAgIDIgKy0KIHBsYXQva3ZtL3g4Ni9sY3B1LmMgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgNiAtCiBwbGF0L3hlbi9NYWtlZmlsZS51ayAgICAgICAgICAgICAgICAgICAg
ICAgfCAgMTYgKy0KIHBsYXQveGVuL2V2ZW50cy5jICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgOCArCiBwbGF0L3hlbi9pbmNsdWRlL2NvbW1vbi9zY2hlZC5oICAgICAgICAgICAgfCAgNTIg
LS0tLS0KIHBsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9hcmNoX3NjaGVkLmggICAgICB8ICA1NSAt
LS0tLQogcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L2NwdS5oICAgICAgICAgICAgIHwgMTAzIC0t
LS0tLS0tLQogcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L2lycS5oICAgICAgICAgICAgIHwgIDU1
ICstLS0tCiBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvb3MuaCAgICAgICAgICAgICAgfCAgNDYg
Ky0tLQogcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L3RyYXBzLmggICAgICAgICAgIHwgIDIzICst
CiBwbGF0L3hlbi9sY3B1LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjcgKy0tCiBw
bGF0L3hlbi9zY2hlZC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMDYgLS0tLS0tLS0t
CiBwbGF0L3hlbi90aHJlYWQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNjYgLS0tLS0t
CiBwbGF0L3hlbi94ODYvYXJjaF9ldmVudHMuYyAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHBs
YXQveGVuL3g4Ni9hcmNoX3RocmVhZC5jICAgICAgICAgICAgICAgICB8ICA5MyAtLS0tLS0tLQog
cGxhdC94ZW4veDg2L2FyY2hfdGltZS5jICAgICAgICAgICAgICAgICAgIHwgIDE3ICstCiBwbGF0
L3hlbi94ODYvY3B1X3B2LmMgICAgICAgICAgICAgICAgICAgICAgfCAgNDcgKysrKwogcGxhdC94
ZW4veDg2L2VudHJ5NjQuUyAgICAgICAgICAgICAgICAgICAgIHwgMjMxICsrKysrKystLS0tLS0t
LS0tLS0KIHBsYXQveGVuL3g4Ni9zZXR1cC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgOCAr
LQogcGxhdC94ZW4veDg2L3RyYXBzLmMgICAgICAgICAgICAgICAgICAgICAgIHwgMzQyICsrKysr
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiA1NCBmaWxlcyBjaGFuZ2VkLCAyMTM4IGluc2VydGlv
bnMoKyksIDEzMjMgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9h
cmNoL3RocmVhZC5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9wbGF0L2lycS5oCiBj
cmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS9fdGltZS5oCiBjcmVhdGUgbW9k
ZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS9jcHUuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHBs
YXQvY29tbW9uL2luY2x1ZGUvc3dfY3R4LmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1v
bi9pbmNsdWRlL3RyYWNlLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9pbmNsdWRl
L3g4Ni9jcHUuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L2Nw
dV9kZWZzLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9kZXNj
LmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9pcnEuaAogY3Jl
YXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L3JlZ3MuaAogY3JlYXRlIG1v
ZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L3RyYXBzLmgKIGNyZWF0ZSBtb2RlIDEw
MDY0NCBwbGF0L2NvbW1vbi9sY3B1LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9z
d19jdHguYwogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL3RocmVhZC5jCiBjcmVhdGUg
bW9kZSAxMDA2NDQgcGxhdC9jb21tb24veDg2L2NwdV9uYXRpdmUuYwogY3JlYXRlIG1vZGUgMTAw
NjQ0IHBsYXQvY29tbW9uL3g4Ni90aHJlYWRfc3RhcnQuUwogY3JlYXRlIG1vZGUgMTAwNjQ0IHBs
YXQvY29tbW9uL3g4Ni90cmFjZS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24veDg2
L3RyYXBzLmMKIGRlbGV0ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi9pbmNsdWRlL2NvbW1vbi9zY2hl
ZC5oCiBkZWxldGUgbW9kZSAxMDA2NDQgcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L2FyY2hfc2No
ZWQuaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHBsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9jcHUuaAog
ZGVsZXRlIG1vZGUgMTAwNjQ0IHBsYXQveGVuL3NjaGVkLmMKIGRlbGV0ZSBtb2RlIDEwMDY0NCBw
bGF0L3hlbi90aHJlYWQuYwogZGVsZXRlIG1vZGUgMTAwNjQ0IHBsYXQveGVuL3g4Ni9hcmNoX3Ro
cmVhZC5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC94ZW4veDg2L2NwdV9wdi5jCgotLSAKMi4x
LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5p
b3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpo
dHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3iro-0003Hw-AC; Wed, 04 Apr 2018 13:54:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irn-0003Gx-GC
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:23 +0000
X-Inumbo-ID: d9773cab-380f-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id d9773cab-380f-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 13:55:36 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3Aa2a39xCmIHLT6WvfUvtyUyQJP3N1i/DPJgcQr6Af?=
 =?us-ascii?q?oPdwSPT7ocbcNUDSrc9gkEXOFd2Cra4c0KyO6+jJYi8p2d65qncMcZhBBVcuqP?=
 =?us-ascii?q?49uEgeOvODElDxN/XwbiY3T4xoXV5h+GynYwAOQJ6tL1LdrWev4jEMBx7xKRR6?=
 =?us-ascii?q?JvjvGo7Vks+7y/2+94fcbglUijexe69+IAmrpgjNq8cahpdvJLwswRXTuHtIfO?=
 =?us-ascii?q?pWxWJsJV2Nmhv3+9m98p1+/SlOovwt78FPX7n0cKQ+VrxYES8pM3sp683xtBnM?=
 =?us-ascii?q?VhWA630BWWgLiBVIAgzF7BbnXpfttybxq+Rw1DWGMcDwULs5Xymp4aV2Rx/ykC?=
 =?us-ascii?q?oJNyA3/nzZhMJzi6xUohyhqgdjz4LIeoyZKOBzcr/Bcd4cWGFPXtxRVytEAo6k?=
 =?us-ascii?q?cYYPCPEBPfpZr4n7ulAAqwa+BRGxBOjyzTJHmnj23bYm0+QgFwHKxgggH88WsH?=
 =?us-ascii?q?TJt9j6KLwSXfqtzKnV1jrPdelW2TDk5YXObxsvoumMUKptfcfe1EUjDQDIg1WK?=
 =?us-ascii?q?pYD7IT+Y1P4BvmaD4+Z9Wu+jlnQrpgJxrzS12MshhIfEipgIxl3L6yl0xps+K8?=
 =?us-ascii?q?eiR05he9GkFYNdtySdN4RrXMwvW3pouCMmyr0evp67YTQKxIwnxxHBb/yHdJCF?=
 =?us-ascii?q?4gzmVOmLIDd4gGhpd66khxqo6Uig1/bzWtOu0FZNtiZFk9/MuW4R1xHL98SKRe?=
 =?us-ascii?q?Zx8l2i1DuPzQzf9P9ILEIumafVM5Ihx6Q/lpsXsUTNBC/2n0D2gbeKeUUj4eio?=
 =?us-ascii?q?9+XnYrP8qp+YKo90khz+P78ylcykG+g4KhUOUHOB9eSm073v5Vf5T6lSjv0qjq?=
 =?us-ascii?q?nZt4jXJcEapq6/Ag9V1Z0j5w+iADi4ztQXg30HIUlBeBKGlIjpJ0rOLOr3DPih?=
 =?us-ascii?q?hVSgijBrx+rJPrf5GJXCMmDDkKv9fbZ680Nc0wszzdVY55JSEL0BI+/zVVH3tN?=
 =?us-ascii?q?3ZEBA5KRe5w+D5B9ph0oMRQ3mADrWHP6PP4he04bcqIu+NY5RQtDvjJvwN4//1?=
 =?us-ascii?q?kWR/iVIbO66z0sg5cne9S99hOFmYZzLIn88cWTMBuREiTeqsjECaTBZYfDCqQq?=
 =?us-ascii?q?h6/DZtW9HuNpvKWo342O/J5yy8BJADPm0=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2B6AAC/18RajAPjVY1cHAEBAQQBAQoBA?=
 =?us-ascii?q?YUSKItfXo8tklWBeoUOAoReNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3kQPxJ?=
 =?us-ascii?q?XGYURrXmIQ4IliTY/gQyCVoVphQgCjFGKbQiBX4xUjDqRIAIcN4FTMxqDNYIgD?=
 =?us-ascii?q?gkRjglsjXEBAQ?=
X-IPAS-Result: =?us-ascii?q?A2B6AAC/18RajAPjVY1cHAEBAQQBAQoBAYUSKItfXo8tklW?=
 =?us-ascii?q?BeoUOAoReNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3kQPxJXGYURrXmIQ4Ili?=
 =?us-ascii?q?TY/gQyCVoVphQgCjFGKbQiBX4xUjDqRIAIcN4FTMxqDNYIgDgkRjglsjXEBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492114"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 599081A602EF;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 4UM4fh3B-UsN; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 3EA0D1A60183;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 3AEA41A60301;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:54:08 +0300
Message-Id: <1522850048-13204-18-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 17/17] lib/ukboot: Updates for
 inlining with platform and scheduling changes
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Q2hhbmdlczoKKiBpbml0IHRoZSBJUlEgc3Vic3lzdGVtCiogaW5pdCB0aGUgdGltZXIgYWZ0ZXIg
bWVtb3J5IGFsbG9jYXRvciBpbml0aWFsaXphdGlvbgoqIGVuYWJsZSB0aGUgaW50ZXJydXB0cyBq
dXN0IGJlZm9yZSBzdGFydGluZyB0aGUgYXBwbGljYXRpb24gd2hlbiBzY2hlZHVsaW5nIGlzIG5v
dCBlbmFibGVkCiogdXNpbmcgdWtfc2NoZWRfZGVmYXVsdF9pbml0IGZvciBzY2hlZHVsZXIgaW5p
dAoqIHVzaW5nIHVrX3NjaGVkX3N0YXJ0IHdoaWNoIGFsc28gc3RhcnRzIHRoZSBpZGxlIHRocmVh
ZCBhbmQgZW5hYmxlcyB0aGUgaW50ZXJydXB0cwoKU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUg
PGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KLS0tCiBsaWIvdWtib290L2Jvb3QuYyB8IDIxICsrKysr
KysrKysrKysrKy0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDYgZGVs
ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliL3VrYm9vdC9ib290LmMgYi9saWIvdWtib290L2Jv
b3QuYwppbmRleCBhY2JhZTZlLi43NThlZTUwIDEwMDY0NAotLS0gYS9saWIvdWtib290L2Jvb3Qu
YworKysgYi9saWIvdWtib290L2Jvb3QuYwpAQCAtNDMsMTIgKzQzLDE0IEBACiAjaWYgTElCVUtB
TExPQyAmJiBMSUJVS0FMTE9DQkJVRERZICYmIExJQlVLQk9PVF9JTklUQUxMT0MKICNpbmNsdWRl
IDx1ay9hbGxvY2JidWRkeS5oPgogI2VuZGlmCi0jaWYgTElCVUtTQ0hFRCAmJiBMSUJVS1NDSEVE
Q09PUAotI2luY2x1ZGUgPHVrL3NjaGVkY29vcC5oPgorI2lmIExJQlVLU0NIRUQKKyNpbmNsdWRl
IDx1ay9zY2hlZC5oPgogI2VuZGlmCiAjaW5jbHVkZSA8dWsvYXJjaC9sY3B1Lmg+CiAjaW5jbHVk
ZSA8dWsvcGxhdC9ib290c3RyYXAuaD4KICNpbmNsdWRlIDx1ay9wbGF0L21lbW9yeS5oPgorI2lu
Y2x1ZGUgPHVrL3BsYXQvbGNwdS5oPgorI2luY2x1ZGUgPHVrL3BsYXQvaXJxLmg+CiAjaW5jbHVk
ZSA8dWsvcGxhdC90aW1lLmg+CiAjaW5jbHVkZSA8dWsvZXNzZW50aWFscy5oPgogI2luY2x1ZGUg
PHVrL3ByaW50Lmg+CkBAIC0xMDksNiArMTExLDcgQEAgdm9pZCB1a3BsYXRfZW50cnkoaW50IGFy
Z2MsIGNoYXIgKmFyZ3ZbXSkKIAlzdHJ1Y3QgdGhyZWFkX21haW5fYXJnIHRtYTsKICNpZiBMSUJV
S0FMTE9DIHx8IExJQlVLU0NIRUQKIAlzdHJ1Y3QgdWtfYWxsb2MgKmEgPSBOVUxMOworCWludCBy
YzsKICNlbmRpZgogI2lmIExJQlVLQUxMT0MgJiYgTElCVUtBTExPQ0JCVUREWSAmJiBMSUJVS0JP
T1RfSU5JVEFMTE9DCiAJc3RydWN0IHVrcGxhdF9tZW1yZWdpb25fZGVzYyBtZDsKQEAgLTEyNyw3
ICsxMzAsNiBAQCB2b2lkIHVrcGxhdF9lbnRyeShpbnQgYXJnYywgY2hhciAqYXJndltdKQogCQkg
IFNUUklOR0lGWShVS19DT0RFTkFNRSkgIiAiIFNUUklOR0lGWShVS19GVUxMVkVSU0lPTikpOwog
I2VuZGlmCiAKLQl1a3BsYXRfdGltZV9pbml0KCk7CiAKICNpZiBMSUJVS0FMTE9DICYmIExJQlVL
QUxMT0NCQlVERFkgJiYgTElCVUtCT09UX0lOSVRBTExPQwogCS8qIGluaXRpYWxpemUgbWVtb3J5
IGFsbG9jYXRvcgpAQCAtMTgwLDExICsxODIsMTcgQEAgdm9pZCB1a3BsYXRfZW50cnkoaW50IGFy
Z2MsIGNoYXIgKmFyZ3ZbXSkKIAl9CiAJaWYgKHVubGlrZWx5KCFhKSkKIAkJdWtfcHJpbnRkKERM
VkxfV0FSTiwgIk5vIHN1aXRhYmxlIG1lbW9yeSByZWdpb24gZm9yIG1lbW9yeSBhbGxvY2F0b3Iu
IENvbnRpbnVlIHdpdGhvdXQgaGVhcFxuIik7CisKKwlyYyA9IHVrcGxhdF9pcnFfaW5pdChhKTsK
KwlpZiAodW5saWtlbHkocmMgIT0gMCkpCisJCVVLX0NSQVNIKCJDb3VsZCBub3QgaW5pdGlhbGl6
ZSB0aGUgcGxhdGZvcm0gSVJRIHN1YnN5c3RlbS4iKTsKICNlbmRpZgogCisJdWtwbGF0X3RpbWVf
aW5pdCgpOworCiAjaWYgSEFWRV9TQ0hFRAogCS8qIEluaXQgc2NoZWR1bGVyLiAqLwotCXMgPSB1
a19zY2hlZGNvb3BfaW5pdChhKTsKKwlzID0gdWtfc2NoZWRfZGVmYXVsdF9pbml0KGEpOwogCWlm
ICh1bmxpa2VseSghcykpCiAJCVVLX0NSQVNIKCJDb3VsZCBub3QgaW5pdGlhbGl6ZSB0aGUgc2No
ZWR1bGVyLiIpOwogI2VuZGlmCkBAIC0xOTYsOSArMjA0LDEwIEBAIHZvaWQgdWtwbGF0X2VudHJ5
KGludCBhcmdjLCBjaGFyICphcmd2W10pCiAJbWFpbl90aHJlYWQgPSB1a190aHJlYWRfY3JlYXRl
KCJtYWluIiwgbWFpbl90aHJlYWRfZnVuYywgJnRtYSk7CiAJaWYgKHVubGlrZWx5KCFtYWluX3Ro
cmVhZCkpCiAJCVVLX0NSQVNIKCJDb3VsZCBub3QgY3JlYXRlIG1haW4gdGhyZWFkLiIpOwotCXVr
X3RocmVhZF9zdGFydChtYWluX3RocmVhZCk7Ci0JdWtfc2NoZWRfcnVuKHMpOworCXVrX3NjaGVk
X3N0YXJ0KHMpOwogI2Vsc2UKKwkvKiBFbmFibGUgaW50ZXJydXB0cyBiZWZvcmUgc3RhcnRpbmcg
dGhlIGFwcGxpY2F0aW9uICovCisJdWtwbGF0X2xjcHVfZW5hYmxlX2lycSgpOwogCW1haW5fdGhy
ZWFkX2Z1bmMoJnRtYSk7CiAjZW5kaWYKIH0KLS0gCjIuMS40CgoKX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApN
aW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0
Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:24 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3iro-0003Hr-8O; Wed, 04 Apr 2018 13:54:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irn-0003Gw-Fg
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:23 +0000
X-Inumbo-ID: d9d75c97-380f-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id d9d75c97-380f-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 13:55:36 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3AsM/ThREgRmBTvDXvMt602J1GYnF86YWxBRYc798d?=
 =?us-ascii?q?s5kLTJ7zp8qwAkXT6L1XgUPTWs2DsrQY07GQ6/iocFdDyK7JiGoFfp1IWk1Nou?=
 =?us-ascii?q?QttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBXdrXKo8DEdBAj0OxZr?=
 =?us-ascii?q?KeTpAI7SiNm82/yv95HJbAhEmDSwbaluIBmqsA7cqtQYjYx+J6gr1xDHuGFIe+?=
 =?us-ascii?q?NYxWNpIVKcgRPx7dqu8ZBg7ipdpesv+9ZPXqvmcas4S6dYDCk9PGAu+MLrrxjD?=
 =?us-ascii?q?QhCR6XYaT24bjwBHAwnB7BH9Q5fxri73vfdz1SWGIcH7S60/VDK/5KlpVRDokj?=
 =?us-ascii?q?8KOT4n/m/KhMJ+j6VVrxCvpxFk34LYfJuYOOZkc6/BYd8XQ3dKUMZLVyxGB4Ox?=
 =?us-ascii?q?d5UCD+0aPeZEron9oUYFox2jBQm0GePk1zhFiWPx3a0hz+QhEAfG0BYkH9ITqH?=
 =?us-ascii?q?TUsc74O7sJUeyv1KnI0C7MY+lM2Tf68YXFdA0qr/KUXb9obMbcxlQjGxnGg1iQ?=
 =?us-ascii?q?s4DpIS2Z2+YXv2WV9+ZsSO2ih3M9pwxyojWj3Nkgh4fHi44P11zJ+jt1zYAoLt?=
 =?us-ascii?q?OiUkF7e8SrEJ5IuiGfMIt5X90tTnlzuCY/1r0GoZm7fDUWyJg/xx7QdfiHc4+Q?=
 =?us-ascii?q?7xL9UeaeOzZ4hHZ/dL2jnBa+61CgyvDnWcWuylZKqTJJktjKtn8Tyxze8tWLR/?=
 =?us-ascii?q?Rg8ku72juC1xrf5v9aLU02j6bWJYYtwrsqmZoStUTDEDX2mELzjKKOakok/fOo?=
 =?us-ascii?q?6/jmYrXgvJOcM5J0ihnjMqk1hsO/Gv40MhATX2eA4+i8zrrj8VXjQLpWlv02jr?=
 =?us-ascii?q?XZsJfCKMQep665BQ5V0oE46xqmEjipzsoYkmcDLF9efBKHjpPpO03VIPziAvaw?=
 =?us-ascii?q?nVKsnC1sx/DcMb3rGo/NIWTbkLf9YbZ97FZRyBEyzdBa4JJUDKsNIPHuWkDvst?=
 =?us-ascii?q?zZDwE2MxavzubhFtpyyoceVniUDaODLqzSrAzA2uV6JuiKZYgO/TrwNfUhz/rv?=
 =?us-ascii?q?lmMi308Qe++ux5RERmq/G6FNJF6FYHykpsoZDC9etQ0lUO3szlmfSSN7bG30R7?=
 =?us-ascii?q?82oCs8XtH1RbzfT5yg1eTSlBywGYdbMzhL?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2B6AAC/18RajAPjVY1cHAEBAQQBAQoBA?=
 =?us-ascii?q?YUSKItfXo8tklWBeoUOAoReNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3kQPxJ?=
 =?us-ascii?q?XGYURrXmEV4NsgiWJNj+DYoVphQgCjFGKbQiBX4xUjDqRIAIcN4FTMxqDNYIgD?=
 =?us-ascii?q?gmOGmyNcQEB?=
X-IPAS-Result: =?us-ascii?q?A2B6AAC/18RajAPjVY1cHAEBAQQBAQoBAYUSKItfXo8tklW?=
 =?us-ascii?q?BeoUOAoReNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3kQPxJXGYURrXmEV4Nsg?=
 =?us-ascii?q?iWJNj+DYoVphQgCjFGKbQiBX4xUjDqRIAIcN4FTMxqDNYIgDgmOGmyNcQEB?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492115"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 4E9AA1A6018F;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 27UdoTw99W4e; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 36B1C1A602E9;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 2B0221A602F1;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:54:06 +0300
Message-Id: <1522850048-13204-16-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 15/17] plat/xen: Remove events
 enabling from platform code
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW50ZXJydXB0cy9ldmVudHMgaGF2ZSB0byBiZSBlbmFibGVkIHJpZ2h0IGJlZm9yZSBzdGFydGlu
ZyB0aGUKYXBwbGljYXRpb24uCgpTaWduZWQtb2ZmLWJ5OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1
cHVAY3MucHViLnJvPgotLS0KIHBsYXQveGVuL3g4Ni9zZXR1cC5jIHwgMyAtLS0KIDEgZmlsZSBj
aGFuZ2VkLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni9zZXR1cC5j
IGIvcGxhdC94ZW4veDg2L3NldHVwLmMKaW5kZXggMWUwZjBmNy4uODg4NTQxNSAxMDA2NDQKLS0t
IGEvcGxhdC94ZW4veDg2L3NldHVwLmMKKysrIGIvcGxhdC94ZW4veDg2L3NldHVwLmMKQEAgLTE4
Nyw5ICsxODcsNiBAQCB2b2lkIF9saWJ4ZW5wbGF0X3g4NmVudHJ5KHZvaWQgKnN0YXJ0X2luZm8p
CiAJLyogU2V0IHVwIGV2ZW50cy4gKi8KIAlpbml0X2V2ZW50cygpOwogCi0JLyogRU5BQkxFIEVW
RU5UIERFTElWRVJZLiBUaGlzIGlzIGRpc2FibGVkIGF0IHN0YXJ0IG9mIGRheS4gKi8KLQlfX3N0
aSgpOwotCiAJdWtfcHJpbnRkKERMVkxfSU5GTywgIiAgICBzdGFydF9pbmZvOiAlcFxuIiwgSFlQ
RVJWSVNPUl9zdGFydF9pbmZvKTsKIAl1a19wcmludGQoRExWTF9JTkZPLCAiICAgc2hhcmVkX2lu
Zm86ICVwXG4iLCBIWVBFUlZJU09SX3NoYXJlZF9pbmZvKTsKIAl1a19wcmludGQoRExWTF9JTkZP
LCAiaHlwZXJjYWxsX3BhZ2U6ICVwXG4iLCBoeXBlcmNhbGxfcGFnZSk7Ci0tIAoyLjEuNAoKCl9f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZl
bCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8v
bGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:25 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irp-0003Kd-FF; Wed, 04 Apr 2018 13:54:25 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3iro-0003Hm-AX
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:24 +0000
X-Inumbo-ID: 97ea5e98-380f-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 97ea5e98-380f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 15:53:46 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3AOXfF1hfAI2N1eYRpBdFA0+qHlGMj4u6mDksu8pMi?=
 =?us-ascii?q?zoh2WeGdxcS6Yh7h7PlgxGXEQZ/co6odzbaO6Oa4ASQp2tWoiDg6aptCVhsI24?=
 =?us-ascii?q?09vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFRrhKAF7?=
 =?us-ascii?q?Ovr6GpLIj8Swyuu+54Dfbx9HiTahb75+Ngm6oRnMvcQKnIVuLbo8xAHUqXVSYe?=
 =?us-ascii?q?RWwm1oJVOXnxni48q74YBu/SdNtf8/7sBMSar1cbg2QrxeFzQmLns65Nb3uhnZ?=
 =?us-ascii?q?TAuA/WUTX2MLmRdVGQfF7RX6XpDssivms+d2xSeXMdHqQb0yRD+v6bpgRh31hy?=
 =?us-ascii?q?cdLzM38H/ZhNF+gqxYpxyupRJ/zpXIbI2JLvdyYrnQcc8GSWdHQ81fVzZBAoS5?=
 =?us-ascii?q?b4YXEecBOv1Yr5X8p1sIsBCwAxSsBPvyyjRVgXL5wao60/89EQHH2gwsBdYOsG?=
 =?us-ascii?q?nMrNXoL6odTfu1wLPQzTXedPxawy396I/Rfx0nvPqCXqpwfNLMxUQgCg/JlFad?=
 =?us-ascii?q?pIz/Mz+LyOgAsXKX4uR4We6yhGMrtht9rzuvy8s2lIXEiIwYxkrZ+Sh23oo4I8?=
 =?us-ascii?q?CzRlRhbt6+CpRQsjmXN45xQsw/XW5loD06yrgauZ6jeygK1Ygnywbfa/OZd4iI?=
 =?us-ascii?q?5QruVPiUIThihXJlfKiziAqp8US60u38S9K73ExQripCitXMt3YN2ALP6sWfV/?=
 =?us-ascii?q?dw8Vqt1SyM2g3T8O1IP144mKjBJ5Mv2rIwk4AcsUXHHi/4gkX2i6qWe1049eiv?=
 =?us-ascii?q?8OTnfrTmppmGO49wlwH+Krkul9ejDuQjKAQOR3Wb9v+m2L35+k31WK9KgeEukq?=
 =?us-ascii?q?nFrJDaItwWpqu4Aw9T04Yj7A2/Ay6739sGg3kIMlZFdQmDj4joIFHOPOv4Ae2w?=
 =?us-ascii?q?gluyljdn3ffGPqfuAp/VNHjMjK/hfaph605b0Acz1tFf55dTCrEHOv7zWVLxu8?=
 =?us-ascii?q?LeDh44LQO02f3qCNNj2YwCXWKAGLSWPLnMvl+VtaoTJLyJZYkUvy24J/U76vrG?=
 =?us-ascii?q?iX4ihURbbaSvm5wNZyOWBPNjdm6eembthJ8lDH8X9l41S/f2iVvEVSNLel65RO?=
 =?us-ascii?q?Qk+zt9EoXwXtSLfZyknLHUhHTzJZZRfG0TUl0=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2B7AAC/18RajAPjVY1cHAEBAQQBAQoBA?=
 =?us-ascii?q?YQjbyiLX16PExqLEodDFIFmJoFfgwkChF40GAECAQEBAQEBAgETAQEBJksMgjU?=
 =?us-ascii?q?igkwDA3kQHSISSQ4ZhRGteYRXg2yCJYZngk8/gQyCUIRoFIV7AocaCRaEOgtTP?=
 =?us-ascii?q?4ouCIFfg3SFLoMygUogilCRIAIcN4FTMxpygkMJghcOCYs/gltsiyyCRQEB?=
X-IPAS-Result: =?us-ascii?q?A2B7AAC/18RajAPjVY1cHAEBAQQBAQoBAYQjbyiLX16PExq?=
 =?us-ascii?q?LEodDFIFmJoFfgwkChF40GAECAQEBAQEBAgETAQEBJksMgjUigkwDA3kQHSISS?=
 =?us-ascii?q?Q4ZhRGteYRXg2yCJYZngk8/gQyCUIRoFIV7AocaCRaEOgtTP4ouCIFfg3SFLoM?=
 =?us-ascii?q?ygUogilCRIAIcN4FTMxpygkMJghcOCYs/gltsiyyCRQEB?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492106"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 25FD91A60306;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id e4pgzUQlqmU6; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 07F841A602F1;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 032FB1A60334;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:54:00 +0300
Message-Id: <1522850048-13204-10-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 09/17] plat/common: Halting functions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aXNpdGluZyB1a3BsYXRfbGNwdV9oYWx0KiBmdW5jdGlvbnMuCgpTaWduZWQtb2ZmLWJ5OiBD
b3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgotLS0KIGluY2x1ZGUvdWsvcGxhdC9s
Y3B1LmggICAgICB8IDE1ICsrKysrKysrKy0tLQogcGxhdC9jb21tb24vaW5jbHVkZS9fdGltZS5o
IHwgNDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogcGxhdC9jb21tb24vaW5jbHVk
ZS9jcHUuaCAgIHwgNDYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogcGxhdC9j
b21tb24vbGNwdS5jICAgICAgICAgIHwgNjAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrCiBwbGF0L2t2bS9NYWtlZmlsZS51ayAgICAgICAgfCAgMSArCiBwbGF0
L2t2bS94ODYvbGNwdS5jICAgICAgICAgfCAgNiAtLS0tLQogcGxhdC94ZW4vTWFrZWZpbGUudWsg
ICAgICAgIHwgIDEgKwogcGxhdC94ZW4vbGNwdS5jICAgICAgICAgICAgIHwgMTcgLS0tLS0tLS0t
LS0tLQogcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jICAgIHwgMTMgKysrLS0tLS0tLQogOSBmaWxl
cyBjaGFuZ2VkLCAxNjUgaW5zZXJ0aW9ucygrKSwgMzYgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9k
ZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS9fdGltZS5oCiBjcmVhdGUgbW9kZSAxMDA2NDQg
cGxhdC9jb21tb24vaW5jbHVkZS9jcHUuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9u
L2xjcHUuYwoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvcGxhdC9sY3B1LmggYi9pbmNsdWRlL3Vr
L3BsYXQvbGNwdS5oCmluZGV4IGRlMzdlOGIuLjc3ZTU4NDYgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUv
dWsvcGxhdC9sY3B1LmgKKysrIGIvaW5jbHVkZS91ay9wbGF0L2xjcHUuaApAQCAtMzYsNiArMzYs
OCBAQAogI2lmbmRlZiBfX1VLUExBVF9MQ1BVX0hfXwogI2RlZmluZSBfX1VLUExBVF9MQ1BVX0hf
XwogCisjaW5jbHVkZSA8dWsvYXJjaC90aW1lLmg+CisKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0
ZXJuICJDIiB7CiAjZW5kaWYKQEAgLTgwLDE3ICs4MiwyMiBAQCB2b2lkIHVrcGxhdF9sY3B1X2ly
cXNfaGFuZGxlX3BlbmRpbmcodm9pZCk7CiAKIC8qKgogICogSGFsdHMgdGhlIGN1cnJlbnQgbG9n
aWNhbCBDUFUgZXhlY3V0aW9uCi0gKiBFeGVjdXRpb24gaXMgcmV0dXJuZWQgd2hlbiBhbiBpbnRl
cnJ1cHQvc2lnbmFsIGFycml2ZWQKICAqLwogdm9pZCB1a3BsYXRfbGNwdV9oYWx0KHZvaWQpOwog
CiAvKioKICAqIEhhbHRzIHRoZSBjdXJyZW50IGxvZ2ljYWwgQ1BVIGV4ZWN1dGlvbgogICogRXhl
Y3V0aW9uIGlzIHJldHVybmVkIHdoZW4gYW4gaW50ZXJydXB0L3NpZ25hbCBhcnJpdmVkIG9yCi0g
KiB0aGUgc3BlY2lmaWVkIHRpbWVvdXQgZXhwaXJlZAotICogQHBhcmFtIG1pbGxpcyBudW1iZXIg
b2YgbWlsbGlzZWNvbmRzIHRvIGhhbHQgYXQgbG9uZ2VzdAorICogdGhlIHNwZWNpZmllZCBkZWFk
bGluZSBleHBpcmVkCisgKiBAcGFyYW0gdW50aWwgZGVhZGxpbmUgaW4gbmFub3NlY29uZHMKKyAq
Lwordm9pZCB1a3BsYXRfbGNwdV9oYWx0X3RvKF9fc25zZWMgdW50aWwpOworCisvKioKKyAqIEhh
bHRzIHRoZSBjdXJyZW50IGxvZ2ljYWwgQ1BVIGV4ZWN1dGlvbgorICogRXhlY3V0aW9uIGlzIHJl
dHVybmVkIHdoZW4gYW4gaW50ZXJydXB0L3NpZ25hbCBhcnJpdmVkCiAgKi8KLXZvaWQgdWtwbGF0
X2xjcHVfaGFsdF90byh1bnNpZ25lZCBsb25nIG1pbGxpcyk7Cit2b2lkIHVrcGxhdF9sY3B1X2hh
bHRfaXJxKHZvaWQpOwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdpdCBhL3BsYXQv
Y29tbW9uL2luY2x1ZGUvX3RpbWUuaCBiL3BsYXQvY29tbW9uL2luY2x1ZGUvX3RpbWUuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNjI0MGZmCi0tLSAvZGV2L251bGwKKysr
IGIvcGxhdC9jb21tb24vaW5jbHVkZS9fdGltZS5oCkBAIC0wLDAgKzEsNDIgQEAKKy8qIFNQRFgt
TGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UgKi8KKy8qCisgKiBBdXRob3JzOiBDb3N0
aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgorICoKKyAqIENvcHlyaWdodCAoYykgMjAx
OCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhv
bGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cworICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqICAgIHRoaXMg
c29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5E
IENPTlRSSUJVVE9SUyAiQVMgSVMiCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQorICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKgorICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4g
QU5ZIFdBWS4KKyAqLworCisjaWZuZGVmIF9fUExBVF9DTU5fVElNRV9IX18KKyNkZWZpbmUgX19Q
TEFUX0NNTl9USU1FX0hfXworCisjaW5jbHVkZSA8dWsvcGxhdC90aW1lLmg+CisKK3ZvaWQgdGlt
ZV9ibG9ja191bnRpbChfX3Nuc2VjIHVudGlsKTsKKworI2VuZGlmIC8qIF9fUExBVF9DTU5fVElN
RV9IX18gKi8KZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9uL2luY2x1ZGUvY3B1LmggYi9wbGF0L2Nv
bW1vbi9pbmNsdWRlL2NwdS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1
M2ViZjkKLS0tIC9kZXYvbnVsbAorKysgYi9wbGF0L2NvbW1vbi9pbmNsdWRlL2NwdS5oCkBAIC0w
LDAgKzEsNDYgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UgKi8K
Ky8qCisgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgorICoK
KyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24u
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFt
ZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cworICogICAgY29u
dHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkIGZyb20KKyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0
dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQorICogTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICogUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBFWFRS
QUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KKyAqLworCisjaWZuZGVmIF9fUExBVF9DTU5f
Q1BVX0hfXworI2RlZmluZSBfX1BMQVRfQ01OX0NQVV9IX18KKworI2luY2x1ZGUgPHVrL2FyY2gv
bGNwdS5oPgorI2lmZGVmIF9fWDg2XzY0X18KKyNpbmNsdWRlIDx4ODYvY3B1Lmg+CisjZWxzZQor
I2Vycm9yICJBZGQgY3B1LmggZm9yIGN1cnJlbnQgYXJjaGl0ZWN0dXJlLiIKKyNlbmRpZgorCisK
KyNlbmRpZiAvKiBfX1BMQVRfQ01OX0NQVV9IX18gKi8KZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9u
L2xjcHUuYyBiL3BsYXQvY29tbW9uL2xjcHUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi41MTdhM2RmCi0tLSAvZGV2L251bGwKKysrIGIvcGxhdC9jb21tb24vbGNwdS5jCkBA
IC0wLDAgKzEsNjAgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2Ug
Ki8KKy8qCisgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgor
ICoKKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRp
b24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUg
bmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cworICogICAg
Y29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBk
ZXJpdmVkIGZyb20KKyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3
cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCisgKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQorICog
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICogUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBF
WFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KKyAqLworCisjaW5jbHVkZSA8dWsvcGxh
dC9sY3B1Lmg+CisjaW5jbHVkZSA8Y3B1Lmg+CisjaW5jbHVkZSA8X3RpbWUuaD4KKworCit2b2lk
IHVrcGxhdF9sY3B1X2hhbHQodm9pZCkKK3sKKwl1a3BsYXRfbGNwdV9kaXNhYmxlX2lycSgpOwor
CWhhbHQoKTsKK30KKwordm9pZCB1a3BsYXRfbGNwdV9oYWx0X2lycSh2b2lkKQoreworCXVrcGxh
dF9sY3B1X2VuYWJsZV9pcnEoKTsKKwloYWx0KCk7CisJdWtwbGF0X2xjcHVfZGlzYWJsZV9pcnEo
KTsKK30KKwordm9pZCB1a3BsYXRfbGNwdV9oYWx0X3RvKF9fc25zZWMgdW50aWwpCit7CisJdW5z
aWduZWQgbG9uZyBmbGFnczsKKworCWZsYWdzID0gdWtwbGF0X2xjcHVfc2F2ZV9pcnFmKCk7CisJ
dGltZV9ibG9ja191bnRpbCh1bnRpbCk7CisJdWtwbGF0X2xjcHVfcmVzdG9yZV9pcnFmKGZsYWdz
KTsKK30KZGlmZiAtLWdpdCBhL3BsYXQva3ZtL01ha2VmaWxlLnVrIGIvcGxhdC9rdm0vTWFrZWZp
bGUudWsKaW5kZXggZTdhNTVmZC4uNDMzZDI5OCAxMDA2NDQKLS0tIGEvcGxhdC9rdm0vTWFrZWZp
bGUudWsKKysrIGIvcGxhdC9rdm0vTWFrZWZpbGUudWsKQEAgLTI0LDMgKzI0LDQgQEAgTElCS1ZN
UExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoTElCS1ZNUExBVF9CQVNFKS94ODYvbGNwdS5j
CiBMSUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3g4
Ni90aW1lLmMKIExJQktWTVBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQktWTVBMQVRf
QkFTRSkvc2h1dGRvd24uYwogTElCS1ZNUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElC
S1ZNUExBVF9CQVNFKS9tZW1vcnkuYworTElCS1ZNUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9
ICQoVUtfUExBVF9DT01NT05fQkFTRSkvbGNwdS5jfGNvbW1vbgpkaWZmIC0tZ2l0IGEvcGxhdC9r
dm0veDg2L2xjcHUuYyBiL3BsYXQva3ZtL3g4Ni9sY3B1LmMKaW5kZXggNmU3YmEwNC4uOTg1YzY3
MCAxMDA2NDQKLS0tIGEvcGxhdC9rdm0veDg2L2xjcHUuYworKysgYi9wbGF0L2t2bS94ODYvbGNw
dS5jCkBAIC0zNCw5ICszNCwzIEBACiAKICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDx1
ay9wbGF0L2xjcHUuaD4KLSNpbmNsdWRlIDx1ay9lc3NlbnRpYWxzLmg+Ci0KLXZvaWQgdWtwbGF0
X2xjcHVfaGFsdF90byh1bnNpZ25lZCBsb25nIG1pbGxpcyBfX3VudXNlZCkKLXsKLQkvL1RPRE8K
LX0KZGlmZiAtLWdpdCBhL3BsYXQveGVuL01ha2VmaWxlLnVrIGIvcGxhdC94ZW4vTWFrZWZpbGUu
dWsKaW5kZXggNTViYTUwYy4uN2NiNTVkYyAxMDA2NDQKLS0tIGEvcGxhdC94ZW4vTWFrZWZpbGUu
dWsKKysrIGIvcGxhdC94ZW4vTWFrZWZpbGUudWsKQEAgLTI3LDYgKzI3LDcgQEAgTElCWEVOUExB
VF9DSU5DTFVERVMteSAgICAgICAgICs9IC1JJChMSUJYRU5QTEFUX0JBU0UpL2luY2x1ZGUKIExJ
QlhFTlBMQVRfQ0lOQ0xVREVTLXkgICAgICAgICArPSAtSSQoVUtfUExBVF9DT01NT05fQkFTRSkv
aW5jbHVkZQogTElCWEVOUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCWEVOUExBVF9C
QVNFKS9oeXBlcnZpc29yLmMKIExJQlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJ
QlhFTlBMQVRfQkFTRSkvbWVtb3J5LmMKK0xJQlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAgICAr
PSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL2xjcHUuY3xjb21tb24KIAogaWZuZXEgKCwkKGZpbHRl
ciB4ODZfMzIgeDg2XzY0LCQoVUtfQVJDSCkpKQogTElCWEVOUExBVF9TUkNTLSQoQVJDSF9YODZf
NjQpICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkveDg2L3RyYWNlLmN8Y29tbW9uCmRpZmYgLS1n
aXQgYS9wbGF0L3hlbi9sY3B1LmMgYi9wbGF0L3hlbi9sY3B1LmMKaW5kZXggZWVkODlmYi4uZjA2
NTBkYSAxMDA2NDQKLS0tIGEvcGxhdC94ZW4vbGNwdS5jCisrKyBiL3BsYXQveGVuL2xjcHUuYwpA
QCAtNzIsMjAgKzcyLDMgQEAgaW50IHVrcGxhdF9sY3B1X2lycXNfZGlzYWJsZWQodm9pZCkKIHsK
IAlyZXR1cm4gaXJxc19kaXNhYmxlZCgpOwogfQotCi12b2lkIHVrcGxhdF9sY3B1X2hhbHRfdG8o
dW5zaWduZWQgbG9uZyBtaWxsaXMpCi17Ci0JX19zbnNlYyB1bnRpbDsKLQl1bnNpZ25lZCBsb25n
IGZsYWdzOwotCi0JdW50aWwgPSB1a3BsYXRfbW9ub3RvbmljX2Nsb2NrKCkgKyB1a2FyY2hfdGlt
ZV9tc2VjX3RvX25zZWMobWlsbGlzKTsKLQotCWZsYWdzID0gdWtwbGF0X2xjcHVfc2F2ZV9pcnFm
KCk7Ci0JYmxvY2tfZG9tYWluKHVudGlsKTsKLQl1a3BsYXRfbGNwdV9yZXN0b3JlX2lycWYoZmxh
Z3MpOwotfQotCi12b2lkIHVrcGxhdF9sY3B1X2hhbHQodm9pZCkKLXsKLQkvL1RPRE8KLX0KZGlm
ZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni9hcmNoX3RpbWUuYyBiL3BsYXQveGVuL3g4Ni9hcmNoX3Rp
bWUuYwppbmRleCAwNjIxZDkwLi43MDJmNzg2IDEwMDY0NAotLS0gYS9wbGF0L3hlbi94ODYvYXJj
aF90aW1lLmMKKysrIGIvcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jCkBAIC0zNSw4ICszNSw5IEBA
CiAKICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDxzeXMvdGltZS5oPgotI2luY2x1ZGUg
PHg4Ni9jcHUuaD4KICNpbmNsdWRlIDx1ay9wbGF0L3RpbWUuaD4KKyNpbmNsdWRlIDx4ODYvY3B1
Lmg+CisjaW5jbHVkZSA8X3RpbWUuaD4KICNpbmNsdWRlIDxjb21tb24vaHlwZXJ2aXNvci5oPgog
I2luY2x1ZGUgPGNvbW1vbi9ldmVudHMuaD4KICNpbmNsdWRlIDx4ZW4teDg2L2lycS5oPgpAQCAt
MjE3LDE5ICsyMTgsMTMgQEAgaW50IGdldHRpbWVvZmRheShzdHJ1Y3QgdGltZXZhbCAqdHYsIHZv
aWQgKnR6KQogI2VuZGlmCiAKIAotdm9pZCBibG9ja19kb21haW4oX19zbnNlYyB1bnRpbCkKK3Zv
aWQgdGltZV9ibG9ja191bnRpbChfX3Nuc2VjIHVudGlsKQogewogCVVLX0FTU0VSVChpcnFzX2Rp
c2FibGVkKCkpOwogCiAJaWYgKChfX3Nuc2VjKSB1a3BsYXRfbW9ub3RvbmljX2Nsb2NrKCkgPCB1
bnRpbCkgewogCQlIWVBFUlZJU09SX3NldF90aW1lcl9vcCh1bnRpbCk7Ci0jaWZkZWYgQ09ORklH
X1BBUkFWSVJUCi0JCUhZUEVSVklTT1Jfc2NoZWRfb3AoU0NIRURPUF9ibG9jaywgMCk7Ci0jZWxz
ZQotCQlsb2NhbF9pcnFfZW5hYmxlKCk7Ci0JCWFzbSB2b2xhdGlsZSgiaGx0IiA6IDogOiAibWVt
b3J5Iik7Ci0jZW5kaWYKLQkJbG9jYWxfaXJxX2Rpc2FibGUoKTsKKwkJdWtwbGF0X2xjcHVfaGFs
dF9pcnEoKTsKIAkJSFlQRVJWSVNPUl9zZXRfdGltZXJfb3AoMCk7CiAJfQogfQotLSAKMi4xLjQK
CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3Mt
ZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw
czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:25 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irp-0003Kj-IA; Wed, 04 Apr 2018 13:54:25 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3iro-0003In-F1
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:24 +0000
X-Inumbo-ID: 97ed6c4d-380f-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 97ed6c4d-380f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 15:53:46 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3AnPEZaBxAcisuL7nXCy+O+j09IxM/srCxBDY+r6Qd?=
 =?us-ascii?q?2+oQIJqq85mqBkHD//Il1AaPAd2Araocw8Pt8InYEVQa5piAtH1QOLdtbDQizf?=
 =?us-ascii?q?ssogo7HcSeAlf6JvO5JwYzHcBFSUM3tyrjaRsdF8nxfUDdrWOv5jAOBBr/KRB1?=
 =?us-ascii?q?JuPoEYLOksi7ze+/94HdbglSmDaxfa55IQmrownWqsQYm5ZpJLwryhvOrHtIeu?=
 =?us-ascii?q?BWyn1tKFmOgRvy5dq+8YB6/ShItP0v68BPUaPhf6QlVrNYFygpM3o05MLwqxbO?=
 =?us-ascii?q?SxaE62YGXWUXlhpIBBXF7A3/U5zsvCb2qvZx1S+HNsDwULs6Wymt771zRRHoli?=
 =?us-ascii?q?kJKjA3/mLQhMNygqJWuw6tqwBlzoLIeoyZKOZyc6XAdt0aX2pBWcNRWjRfD4O7?=
 =?us-ascii?q?dIsPE+sBPeBFpIf7ulsOtQa+DhSrCezzzT9InWP23aw80+g7FQHGwRQgH88VvX?=
 =?us-ascii?q?vIt9X5Lr8SUf2uw6XS1zXDaOpb1DHg44bLahAsueyAUL1tfcbLykQiFxnJgkuO?=
 =?us-ascii?q?pYHnJT+Y2PwBv3WU4uZ9T+6iiG4qpxtvrjWhyMogkJTFi40Lxl3C6C532pw6Jc?=
 =?us-ascii?q?eiR05+edOkFZxQuDyEOIZuWcMiRn1ouD49yr0bpZ63ZCgKx4ojxx7Yc/GHbY2I?=
 =?us-ascii?q?7QjiVOaVOzt3mGlldKinhxav6kes0Pf8Vs6s3FZLqCpKjMXMu2gQ2xHc98SLUP?=
 =?us-ascii?q?hw80e71TqRyQze6PtILE4smareMZEhw7owlpQJsUTEGy/7gFn5jKiNdkU4++io?=
 =?us-ascii?q?7f7rYrH7pp+EKo95kR3xMr80lsynHOQ3KRICX3Kc+eikzr3s4VX5QKlWjv0xiq?=
 =?us-ascii?q?TZtZHaJcIapq6+GA9Zy5ss5AihDzi41NQVhn0HLFNeeBKblIjlIV7PL+7+Dful?=
 =?us-ascii?q?hFSsijhrzejcPrL9GpXNMmTDkLD5cLZm6k5czQ0zzdZF65JXF7EOPvTzW07vu9?=
 =?us-ascii?q?zCFRI5NRK7zPrjCNpnzYwSQ3yAArLKeJ/V5FqJ4OMoOKyAaZEYvB75KuM5/Lj+?=
 =?us-ascii?q?gHl/nkUSLoez2p5CQ3ejAvVga2GEeWek1twGCnsLuEw6UfT3oFaZFyZObTCoWP?=
 =?us-ascii?q?RvtXkAFIu6ANKbFciWi7ub0XLjEw=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYQjbyiLX16PExqLEodDFIFmJoFfgwkChF40GAECAQEBAQEBAgETAQEBJks?=
 =?us-ascii?q?MgjUigkwDAydSEB0iEkkOGYURrUYzhFeDbIIlhmeCTz+BDIJQhF0LFIV7AocjF?=
 =?us-ascii?q?oQ6C1OKbQiBX4N0hS6DMoFKIIpQkSACHDeBUzMacoJDCYIXDgmLP4JbbIssDxe?=
 =?us-ascii?q?CHwEB?=
X-IPAS-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBCQEBAYQjbyiLX16?=
 =?us-ascii?q?PExqLEodDFIFmJoFfgwkChF40GAECAQEBAQEBAgETAQEBJksMgjUigkwDAydSE?=
 =?us-ascii?q?B0iEkkOGYURrUYzhFeDbIIlhmeCTz+BDIJQhF0LFIV7AocjFoQ6C1OKbQiBX4N?=
 =?us-ascii?q?0hS6DMoFKIIpQkSACHDeBUzMacoJDCYIXDgmLP4JbbIssDxeCHwEB?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492104"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 1F5F71A60301;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id cWZNpRB27AHR; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id F195E1A6018D;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id EB2AD1A602FE;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:53:56 +0300
Message-Id: <1522850048-13204-6-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 05/17] plat/common: Common x86 CPU
 functions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Q1BVIGZ1bmN0aW9ucyBjYW4gYmUgY2xhc3NpZmllZCBpbnRvIDMgY2F0ZWdvcmllczogKDEpIG5h
dGl2ZSBmdW5jdGlvbnMgdGhhdAphcmUgdXNlZCBvbiBib3RoIHBsYXRmb3JtcywgKDIpIG5hdGl2
ZSBmdW5jdGlvbnMgdXNlZCBvbmx5IGJ5IEhWTSAoS1ZNKSBhbmQgKDMpCnBhcmF2aXJ0dWFsaXpl
ZCBmdW5jdGlvbnMgY3VycmVudGx5IHVzZWQgYnkgWGVuIFBWIFZNLgoKU2lnbmVkLW9mZi1ieTog
Q29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KLS0tCiBwbGF0L2NvbW1vbi9pbmNs
dWRlL3g4Ni9jcHUuaCAgfCAxMDkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysKIHBsYXQvY29tbW9uL3g4Ni9jcHVfbmF0aXZlLmMgICB8ICA0OSArKysrKysrKysrKysr
KysrKysKIHBsYXQva3ZtL3NodXRkb3duLmMgICAgICAgICAgICB8ICAgMiArLQogcGxhdC9rdm0v
eDg2L2NvbnNvbGUuYyAgICAgICAgIHwgICAyICstCiBwbGF0L3hlbi9NYWtlZmlsZS51ayAgICAg
ICAgICAgfCAgIDMgKysKIHBsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9jcHUuaCB8IDEwMyAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogcGxhdC94ZW4vaW5jbHVkZS94ZW4t
eDg2L29zLmggIHwgICAxIC0KIHBsYXQveGVuL3g4Ni9hcmNoX2V2ZW50cy5jICAgICB8ICAgMiAr
LQogcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jICAgICAgIHwgICA0ICstCiBwbGF0L3hlbi94ODYv
Y3B1X3B2LmMgICAgICAgICAgfCAgNDcgKysrKysrKysrKysrKysrKysrCiAxMCBmaWxlcyBjaGFu
Z2VkLCAyMTMgaW5zZXJ0aW9ucygrKSwgMTA5IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAw
NjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L2NwdS5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxh
dC9jb21tb24veDg2L2NwdV9uYXRpdmUuYwogZGVsZXRlIG1vZGUgMTAwNjQ0IHBsYXQveGVuL2lu
Y2x1ZGUveGVuLXg4Ni9jcHUuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQveGVuL3g4Ni9jcHVf
cHYuYwoKZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9uL2luY2x1ZGUveDg2L2NwdS5oIGIvcGxhdC9j
b21tb24vaW5jbHVkZS94ODYvY3B1LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uY2U5NmMxYwotLS0gL2Rldi9udWxsCisrKyBiL3BsYXQvY29tbW9uL2luY2x1ZGUveDg2L2Nw
dS5oCkBAIC0wLDAgKzEsMTA5IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTIt
Q2xhdXNlICovCisvKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
VVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxM
IEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
ICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QK
KyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgor
ICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBjcHUuaAorICoKKyAqIENQVSByZWxhdGVk
IG1hY3JvcyBhbmQgZGVmaW5pdGlvbnMgY29waWVkIGZyb20gbWluaS1vcy9vcy5oCisgKi8KKwor
I2luY2x1ZGUgPHVrL2FyY2gvdHlwZXMuaD4KKworCit2b2lkIGhhbHQodm9pZCk7CisKK3N0YXRp
YyBpbmxpbmUgdm9pZCBjcHVpZChfX3UzMiBsZWFmLCBfX3UzMiAqZWF4LCBfX3UzMiAqZWJ4LAor
CQlfX3UzMiAqZWN4LCBfX3UzMiAqZWR4KQoreworCWFzbSB2b2xhdGlsZSgiY3B1aWQiCisJCSAg
ICAgOiAiPWEiKCplYXgpLCAiPWIiKCplYngpLCAiPWMiKCplY3gpLCAiPWQiKCplZHgpCisJCSAg
ICAgOiAiMCIobGVhZikpOworfQorCit1bnNpZ25lZCBsb25nIHJlYWRfY3IyKHZvaWQpOworCitz
dGF0aWMgaW5saW5lIHZvaWQgd3JpdGVfY3IzKHVuc2lnbmVkIGxvbmcgY3IzKQoreworCWFzbSB2
b2xhdGlsZSgibW92ICUwLCAlJWNyMyIgOiA6ICJyIihjcjMpIDogIm1lbW9yeSIpOworfQorCitz
dGF0aWMgaW5saW5lIHZvaWQgaW52bHBnKHVuc2lnbmVkIGxvbmcgdmEpCit7CisJYXNtIHZvbGF0
aWxlKCJpbnZscGcgJTAiIDogOiAibSIoKihjb25zdCBjaGFyICopKHZhKSkgOiAibWVtb3J5Iik7
Cit9CisKKworc3RhdGljIGlubGluZSB2b2lkIHdybXNyKHVuc2lnbmVkIGludCBtc3IsIF9fdTMy
IGxvLCBfX3UzMiBoaSkKK3sKKwlhc20gdm9sYXRpbGUoIndybXNyIgorCQkJICAgICA6IC8qIG5v
IG91dHB1dHMgKi8KKwkJCSAgICAgOiAiYyIobXNyKSwgImEiKGxvKSwgImQiKGhpKSk7Cit9CisK
K3N0YXRpYyBpbmxpbmUgdm9pZCB3cm1zcmwodW5zaWduZWQgaW50IG1zciwgX191NjQgdmFsKQor
eworCXdybXNyKG1zciwgKF9fdTMyKSAodmFsICYgMHhmZmZmZmZmZlVMTCksIChfX3UzMikgKHZh
bCA+PiAzMikpOworfQorCisKK3N0YXRpYyBpbmxpbmUgX191NjQgcmR0c2Modm9pZCkKK3sKKwlf
X3U2NCBsLCBoOworCisJX19hc21fXyBfX3ZvbGF0aWxlX18oInJkdHNjIiA6ICI9YSIobCksICI9
ZCIoaCkpOworCXJldHVybiAoaCA8PCAzMikgfCBsOworfQorCisKKy8qIGFjY2Vzc2luZyBkZXZp
Y2VzIHZpYSBwb3J0IHNwYWNlICovCitzdGF0aWMgaW5saW5lIF9fdTggaW5iKF9fdTE2IHBvcnQp
Cit7CisJX191OCB2OworCisJX19hc21fXyBfX3ZvbGF0aWxlX18oImluYiAlMSwlMCIgOiAiPWEi
KHYpIDogImROIihwb3J0KSk7CisJcmV0dXJuIHY7Cit9CisKK3N0YXRpYyBpbmxpbmUgdm9pZCBv
dXRiKF9fdTE2IHBvcnQsIF9fdTggdikKK3sKKwlfX2FzbV9fIF9fdm9sYXRpbGVfXygib3V0YiAl
MCwlMSIgOiA6ICJhIih2KSwgImROIihwb3J0KSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgdm9pZCBv
dXR3KF9fdTE2IHBvcnQsIF9fdTE2IHYpCit7CisJX19hc21fXyBfX3ZvbGF0aWxlX18oIm91dHcg
JTAsJTEiIDogOiAiYSIodiksICJkTiIocG9ydCkpOworfQorCitzdGF0aWMgaW5saW5lIF9fdTY0
IG11bDY0XzMyKF9fdTY0IGEsIF9fdTMyIGIpCit7CisJX191NjQgcHJvZDsKKworCV9fYXNtX18g
KAorCQkibXVsICUlcmR4IDsgIgorCQkic2hyZCAkMzIsICUlcmR4LCAlJXJheCIKKwkJOiAiPWEi
IChwcm9kKQorCQk6ICIwIiAoYSksICJkIiAoKF9fdTY0KSBiKQorCSk7CisKKwlyZXR1cm4gcHJv
ZDsKK30KZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9uL3g4Ni9jcHVfbmF0aXZlLmMgYi9wbGF0L2Nv
bW1vbi94ODYvY3B1X25hdGl2ZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LjAzMzBhMjAKLS0tIC9kZXYvbnVsbAorKysgYi9wbGF0L2NvbW1vbi94ODYvY3B1X25hdGl2ZS5j
CkBAIC0wLDAgKzEsNDkgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1
c2UgKi8KKy8qCisgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJv
PgorICoKKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9y
YXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0
aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cworICog
ICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20KKyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQor
ICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICog
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICogVEhJUyBIRUFERVIgTUFZIE5PVCBC
RSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KKyAqLworCisjaW5jbHVkZSA8eDg2
L2NwdS5oPgorCit2b2lkIGhhbHQodm9pZCkKK3sKKwlfX2FzbV9fIF9fdm9sYXRpbGVfXyAoImhs
dCIgOiA6IDogIm1lbW9yeSIpOworfQorCit1bnNpZ25lZCBsb25nIHJlYWRfY3IyKHZvaWQpCit7
CisJdW5zaWduZWQgbG9uZyBjcjI7CisKKwlfX2FzbV9fIF9fdm9sYXRpbGVfXygibW92ICUlY3Iy
LCAlMCIgOiAiPXIiKGNyMikpOworCisJcmV0dXJuIGNyMjsKK30KZGlmZiAtLWdpdCBhL3BsYXQv
a3ZtL3NodXRkb3duLmMgYi9wbGF0L2t2bS9zaHV0ZG93bi5jCmluZGV4IDZiNWJhZjIuLjY3M2Qw
NjUgMTAwNjQ0Ci0tLSBhL3BsYXQva3ZtL3NodXRkb3duLmMKKysrIGIvcGxhdC9rdm0vc2h1dGRv
d24uYwpAQCAtMjIsNyArMjIsNyBAQAogICovCiAKICNpbmNsdWRlIDxlcnJuby5oPgotI2luY2x1
ZGUgPGt2bS14ODYvY3B1X3g4Nl82NC5oPgorI2luY2x1ZGUgPHg4Ni9jcHUuaD4KICNpbmNsdWRl
IDx1ay9wcmludC5oPgogI2luY2x1ZGUgPHVrL3BsYXQvYm9vdHN0cmFwLmg+CiAKZGlmZiAtLWdp
dCBhL3BsYXQva3ZtL3g4Ni9jb25zb2xlLmMgYi9wbGF0L2t2bS94ODYvY29uc29sZS5jCmluZGV4
IDI4ZTEyNDYuLmNmY2MzY2QgMTAwNjQ0Ci0tLSBhL3BsYXQva3ZtL3g4Ni9jb25zb2xlLmMKKysr
IGIvcGxhdC9rdm0veDg2L2NvbnNvbGUuYwpAQCAtMjUsOCArMjUsOCBAQAogICogQ09OTkVDVElP
TiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KICAqLwogCisj
aW5jbHVkZSA8eDg2L2NwdS5oPgogI2luY2x1ZGUgPGt2bS9jb25zb2xlLmg+Ci0jaW5jbHVkZSA8
a3ZtLXg4Ni9jcHVfeDg2XzY0Lmg+CiAjaW5jbHVkZSA8dWsvcGxhdC9jb25zb2xlLmg+CiAjaW5j
bHVkZSA8dWsvZXNzZW50aWFscy5oPgogI2luY2x1ZGUgPHVrL3ByaW50Lmg+CmRpZmYgLS1naXQg
YS9wbGF0L3hlbi9NYWtlZmlsZS51ayBiL3BsYXQveGVuL01ha2VmaWxlLnVrCmluZGV4IGMxYjJl
Y2IuLjIyMGM4ZDkgMTAwNjQ0Ci0tLSBhL3BsYXQveGVuL01ha2VmaWxlLnVrCisrKyBiL3BsYXQv
eGVuL01ha2VmaWxlLnVrCkBAIC00MSw2ICs0MSw5IEBAIExJQlhFTlBMQVRfU1JDUy0kKExJQlVL
U0NIRUQpICArPSAkKExJQlhFTlBMQVRfQkFTRSkveDg2L2FyY2hfdGhyZWFkLmMKIGlmbmVxICgk
KFhFTl9IVk1MSVRFKSx5KQogTElCWEVOUExBVF9BU0ZMQUdTLXkgICAgICAgICAgICs9IC1EQ09O
RklHX1BBUkFWSVJUCiBMSUJYRU5QTEFUX0NGTEFHUy15ICAgICAgICAgICAgKz0gLURDT05GSUdf
UEFSQVZJUlQKK0xJQlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQlhFTlBMQVRf
QkFTRSkveDg2L2NwdV9wdi5jCitlbHNlCitMSUJYRU5QTEFUX1NSQ1MteSAgICAgICAgICAgICAg
Kz0gJChVS19QTEFUX0NPTU1PTl9CQVNFKS94ODYvY3B1X25hdGl2ZS5jCiBlbmRpZgogZW5kaWYK
IApkaWZmIC0tZ2l0IGEvcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L2NwdS5oIGIvcGxhdC94ZW4v
aW5jbHVkZS94ZW4teDg2L2NwdS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZjky
NDFiLi4wMDAwMDAwCi0tLSBhL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9jcHUuaAorKysgL2Rl
di9udWxsCkBAIC0xLDEwMyArMCwwIEBACi0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNE
LTItQ2xhdXNlICovCi0vKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6
Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
LSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNI
QUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdF
LgotICovCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gKiBjcHUuaAotICoKLSAqIENQVSByZWxh
dGVkIG1hY3JvcyBhbmQgZGVmaW5pdGlvbnMgY29waWVkIGZyb20gb3MuaAotICovCi0KLSNpZm5k
ZWYgUExBVF9YRU5fSU5DTFVERV9YRU5fWDg2X0NQVV9IXwotI2RlZmluZSBQTEFUX1hFTl9JTkNM
VURFX1hFTl9YODZfQ1BVX0hfCi0KLSNpZmRlZiBDT05GSUdfUEFSQVZJUlQKLSNpbmNsdWRlIDxj
b21tb24vaHlwZXJ2aXNvci5oPgotI2VuZGlmCi0KLXN0YXRpYyBpbmxpbmUgdm9pZCB3cml0ZV9j
cjModW5zaWduZWQgbG9uZyBjcjMpCi17Ci0JYXNtIHZvbGF0aWxlKCJtb3YgJTAsICUlY3IzIiA6
IDogInIiKGNyMykgOiAibWVtb3J5Iik7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgdm9pZCBpbnZscGco
dW5zaWduZWQgbG9uZyB2YSkKLXsKLQlhc20gdm9sYXRpbGUoImludmxwZyAlMCIgOiA6ICJtIigq
KGNvbnN0IGNoYXIgKikodmEpKSA6ICJtZW1vcnkiKTsKLX0KLQotLyoqKioqKioqKioqKioqKioq
KioqKioqKioqIGkzODYgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSNpZmRlZiBf
X1g2NF8zMl9fCi0KLSNkZWZpbmUgcmR0c2NsbCh2YWwpIChhc20gdm9sYXRpbGUoInJkdHNjIiA6
ICI9QSIodmFsKSkpCi0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKiB4ODZfODQgKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKi8KLSNlbGlmIGRlZmluZWQgX19YODZfNjRfXwotCi0j
ZGVmaW5lIHJkdHNjbGwodmFsKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKLQlkbyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotCQl1bnNpZ25lZCBpbnQgX19hLCBfX2Q7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0JCWFzbSB2b2xhdGlsZSgi
cmR0c2MiIDogIj1hIihfX2EpLCAiPWQiKF9fZCkpOyAgICAgICAgICAgICAgICAgIFwKLQkJKHZh
bCkgPSAoKHVuc2lnbmVkIGxvbmcpX19hKSB8ICgoKHVuc2lnbmVkIGxvbmcpX19kKSA8PCAzMik7
ICAgXAotCX0gd2hpbGUgKDApCi0KLSNlbHNlIC8qIGlmZGVmIF9feDg2XzY0X18gKi8KLSNlcnJv
ciAiVW5zdXBwb3J0ZWQgYXJjaGl0ZWN0dXJlIgotI2VuZGlmCi0KLS8qKioqKioqKioqKioqKioq
KioqKiogY29tbW9uIGkzODYgYW5kIHg4Nl82NCAgKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ki8KLQotI2RlZmluZSB3cm1zcihtc3IsIHZhbDEsIHZhbDIpIFwKLSh7IFwKLQlhc20gdm9sYXRp
bGUoIndybXNyIiBcCi0JCQkgICAgIDogLyogbm8gb3V0cHV0cyAqLyBcCi0JCQkgICAgIDogImMi
KG1zciksICJhIih2YWwxKSwgImQiKHZhbDIpKTsgXAotfSkKLQotc3RhdGljIGlubGluZSB2b2lk
IHdybXNybCh1bnNpZ25lZCBpbnQgbXNyLCB1aW50NjRfdCB2YWwpCi17Ci0Jd3Jtc3IobXNyLCAo
dWludDMyX3QpKHZhbCAmIDB4ZmZmZmZmZmZVTEwpLCAodWludDMyX3QpKHZhbCA+PiAzMikpOwot
fQotCi1zdGF0aWMgaW5saW5lIHZvaWQgY3B1aWQodWludDMyX3QgbGVhZiwgdWludDMyX3QgKmVh
eCwgdWludDMyX3QgKmVieCwKLQkJCSB1aW50MzJfdCAqZWN4LCB1aW50MzJfdCAqZWR4KQotewot
CWFzbSB2b2xhdGlsZSgiY3B1aWQiCi0JCSAgICAgOiAiPWEiKCplYXgpLCAiPWIiKCplYngpLCAi
PWMiKCplY3gpLCAiPWQiKCplZHgpCi0JCSAgICAgOiAiMCIobGVhZikpOwotfQotCi0jaWZkZWYg
Q09ORklHX1BBUkFWSVJUCi1zdGF0aWMgaW5saW5lIHVuc2lnbmVkIGxvbmcgcmVhZF9jcjIodm9p
ZCkKLXsKLQlyZXR1cm4gSFlQRVJWSVNPUl9zaGFyZWRfaW5mby0+dmNwdV9pbmZvW3NtcF9wcm9j
ZXNzb3JfaWQoKV0uYXJjaC5jcjI7Ci19Ci0jZWxzZQotc3RhdGljIGlubGluZSB1bnNpZ25lZCBs
b25nIHJlYWRfY3IyKHZvaWQpCi17Ci0JdW5zaWduZWQgbG9uZyBjcjI7Ci0KLQlhc20gdm9sYXRp
bGUoIm1vdiAlJWNyMiwlMFxuXHQiIDogIj1yIihjcjIpKTsKLQlyZXR1cm4gY3IyOwotfQotI2Vu
ZGlmCi0KLSNlbmRpZiAvKiBQTEFUX1hFTl9JTkNMVURFX1hFTl9YODZfQ1BVX0hfICovCmRpZmYg
LS1naXQgYS9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvb3MuaCBiL3BsYXQveGVuL2luY2x1ZGUv
eGVuLXg4Ni9vcy5oCmluZGV4IDNkZjc3M2MuLjZmYTRmYTAgMTAwNjQ0Ci0tLSBhL3BsYXQveGVu
L2luY2x1ZGUveGVuLXg4Ni9vcy5oCisrKyBiL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9vcy5o
CkBAIC0xMTEsNyArMTExLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgewogCXZvbGF0aWxlIGludCBjb3Vu
dGVyOwogfSBhdG9taWNfdDsKIAotI2luY2x1ZGUgPHhlbi14ODYvY3B1Lmg+CiAKIC8qKioqKioq
KioqKioqKioqKioqKiogY29tbW9uIGkzODYgYW5kIHg4Nl82NCAgKioqKioqKioqKioqKioqKioq
KioqKioqKioqKi8KICNkZWZpbmUgeGVuX21iKCkgbWIoKQpkaWZmIC0tZ2l0IGEvcGxhdC94ZW4v
eDg2L2FyY2hfZXZlbnRzLmMgYi9wbGF0L3hlbi94ODYvYXJjaF9ldmVudHMuYwppbmRleCBkY2Ez
YjljLi41Yjg4MDY1IDEwMDY0NAotLS0gYS9wbGF0L3hlbi94ODYvYXJjaF9ldmVudHMuYworKysg
Yi9wbGF0L3hlbi94ODYvYXJjaF9ldmVudHMuYwpAQCAtMjgsOCArMjgsOCBAQAogICogUG9ydGVk
IGZyb20gTWluaS1PUwogICovCiAjaW5jbHVkZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8eDg2L2Nw
dS5oPgogI2luY2x1ZGUgPHVrL3BsYXQvY29uZmlnLmg+Ci0jaW5jbHVkZSA8eGVuLXg4Ni9jcHUu
aD4KIAogI2lmIGRlZmluZWQoX194ODZfNjRfXykKIHN0YXRpYyBjaGFyIGlycXN0YWNrWzIgKiBT
VEFDS19TSVpFXTsKZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni9hcmNoX3RpbWUuYyBiL3BsYXQv
eGVuL3g4Ni9hcmNoX3RpbWUuYwppbmRleCA5OTFjMDMwLi45ZTlmMWJmIDEwMDY0NAotLS0gYS9w
bGF0L3hlbi94ODYvYXJjaF90aW1lLmMKKysrIGIvcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jCkBA
IC0zNSwxMCArMzUsMTAgQEAKIAogI2luY2x1ZGUgPHN0ZGludC5oPgogI2luY2x1ZGUgPHN5cy90
aW1lLmg+CisjaW5jbHVkZSA8eDg2L2NwdS5oPgogI2luY2x1ZGUgPHVrL3BsYXQvdGltZS5oPgog
I2luY2x1ZGUgPGNvbW1vbi9oeXBlcnZpc29yLmg+CiAjaW5jbHVkZSA8Y29tbW9uL2V2ZW50cy5o
PgotI2luY2x1ZGUgPHhlbi14ODYvY3B1Lmg+CiAjaW5jbHVkZSA8eGVuLXg4Ni9pcnEuaD4KICNp
bmNsdWRlIDx1ay9hc3NlcnQuaD4KIApAQCAtMTM0LDcgKzEzNCw3IEBAIHN0YXRpYyB1bnNpZ25l
ZCBsb25nIGdldF9uc2VjX29mZnNldCh2b2lkKQogewogCXVpbnQ2NF90IG5vdywgZGVsdGE7CiAK
LQlyZHRzY2xsKG5vdyk7CisJbm93ID0gcmR0c2MoKTsKIAlkZWx0YSA9IG5vdyAtIHNoYWRvdy50
c2NfdGltZXN0YW1wOwogCiAJcmV0dXJuIHNjYWxlX2RlbHRhKGRlbHRhLCBzaGFkb3cudHNjX3Rv
X25zZWNfbXVsLCBzaGFkb3cudHNjX3NoaWZ0KTsKZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni9j
cHVfcHYuYyBiL3BsYXQveGVuL3g4Ni9jcHVfcHYuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi40NzFjYzM3Ci0tLSAvZGV2L251bGwKKysrIGIvcGxhdC94ZW4veDg2L2NwdV9w
di5jCkBAIC0wLDAgKzEsNDcgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1D
bGF1c2UgKi8KKy8qCisgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHVi
LnJvPgorICoKKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhl
ciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cwor
ICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkIGZyb20KKyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBw
cmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBC
RQorICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQor
ICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICogVEhJUyBIRUFERVIgTUFZIE5P
VCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KKyAqLworCisjaW5jbHVkZSA8
eDg2L2NwdS5oPgorI2luY2x1ZGUgPGNvbW1vbi9oeXBlcnZpc29yLmg+CisKKwordm9pZCBoYWx0
KHZvaWQpCit7CisJSFlQRVJWSVNPUl9zY2hlZF9vcChTQ0hFRE9QX2Jsb2NrLCAwKTsKK30KKwor
dW5zaWduZWQgbG9uZyByZWFkX2NyMih2b2lkKQoreworCXJldHVybiBIWVBFUlZJU09SX3NoYXJl
ZF9pbmZvLT52Y3B1X2luZm9bc21wX3Byb2Nlc3Nvcl9pZCgpXS5hcmNoLmNyMjsKK30KLS0gCjIu
MS40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWlu
aW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcK
aHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZl
bA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:25 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irp-0003Kr-Ka; Wed, 04 Apr 2018 13:54:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3iro-0003K7-UA
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:24 +0000
X-Inumbo-ID: da2e996a-380f-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id da2e996a-380f-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 13:55:37 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3AzAkavh1MrAMs/eQgsmDT+DRfVm0co7zxezQtwd8Z?=
 =?us-ascii?q?seIWLPad9pjvdHbS+e9qxAeQG9mDsLQc06L/iOPJYSQ4+5GPsXQPItRndiQuro?=
 =?us-ascii?q?EopTEmG9OPEkbhLfTnPGQQFcVGU0J5rTngaRAGUMnxaEfPrXKs8DUcBgvwNRZv?=
 =?us-ascii?q?JuTyB4Xek9m72/q99pHPbQhEniaxba9vJxiqsAvdsdUbj5F/Iagr0BvJpXVIe+?=
 =?us-ascii?q?VSxWx2IF+Yggjx6MSt8pN96ipco/0u+dJOXqX8ZKQ4UKdXDC86PGAv5c3krgfM?=
 =?us-ascii?q?QA2S7XYBSGoWkx5IAw/Y7BHmW5r6ryX3uvZh1CScIMb7S60/Vza/4KdxUBLmiD?=
 =?us-ascii?q?kJOSM3/m/UjcJ/jqxbrQm9qxBj2YPYfJuYOOZicq7bYNgURXBBXsFUVyFZHI68?=
 =?us-ascii?q?aJAPD/YAPeZesoLzoUYOrQOjBQKxA+7g1jhIhmTq3a071eQtCwXG3BE4H9ITq3?=
 =?us-ascii?q?nbsM71OL0KUeCo16bE1y/Db/RP1Dr79YPGcQghrOmRUb9/bMbd00oiGgPfglmO?=
 =?us-ascii?q?t4DoPSmZ2+oVv2SG4OdsSPijhm0npg1rvDSiyMkhhpPUio8a1FzJ8zhyzpwvKt?=
 =?us-ascii?q?2iUkF7ZMapEJ5Xty6HKYR7WtgiQ2R0uCYizb0GpIK7cDAKyJs5wx7fbOSKc5aN?=
 =?us-ascii?q?4h35VeaRJS10i25+eL6lnxay7FOvxvfmVsmzyFpKryxFncfQtn0VyhDe5dWLRu?=
 =?us-ascii?q?F+80qhwzqDyR7f5+NeLU06jabbLoQuwr80lpodq0TDGSr2lV3qg6+RbUUk5umo?=
 =?us-ascii?q?6+L9brXiu5+cL5J0hxriPaQ1gMC/Gfk4PRMUU2iB/uSwzKfj8lHhQLVWkv02lb?=
 =?us-ascii?q?HUsJXbJcQdp665BBRV3p8+5BmhETepztAYkGIDLFJEYxKHk5PpN0vBIf/mC/ez?=
 =?us-ascii?q?mVOskC1kx/reJL3uHo3NLmTfkLfmZbt98E9cyA80zdBZ/Z5UCawBL+z1Wk7wqt?=
 =?us-ascii?q?PYFAQ0MwqqzOn7DNVyzJgRVXiRDa+EY+vutgqN5+QuJPLJaIILtTLVL/k+++Wo?=
 =?us-ascii?q?nXI/31gHcvqHx5wSPVu/BehnJQ29fGLxyoMKFnwWvwx4SPHylXWJSnhLenz0Ra?=
 =?us-ascii?q?VqtWJzM56vEYqWHtPlu7eGxiruRpA=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYMTgX8oi19ejy2SVYF6hQ4ChF40GAECAQEBAQEBAgETAQEBJleCNSKCTAM?=
 =?us-ascii?q?DJ1IQPxJXGYURrUYzhFeDbIIliTY/gQyNRwKHI4RQXoptCIFfjFSMOpEgAhw3g?=
 =?us-ascii?q?VMzGnKCQ4IgDgkRjglsjXEBAQ?=
X-IPAS-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBCQEBAYMTgX8oi19?=
 =?us-ascii?q?ejy2SVYF6hQ4ChF40GAECAQEBAQEBAgETAQEBJleCNSKCTAMDJ1IQPxJXGYURr?=
 =?us-ascii?q?UYzhFeDbIIliTY/gQyNRwKHI4RQXoptCIFfjFSMOpEgAhw3gVMzGnKCQ4IgDgk?=
 =?us-ascii?q?RjglsjXEBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492112"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 4507B1A6018D;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id p80kqHnMsNid; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 2A4211A6018F;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 22D9D1A602FE;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:54:04 +0300
Message-Id: <1522850048-13204-14-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 13/17] lib/uksched: Updates for
 inlining with plat/common changes
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2hlbiBjcmVhdGluZyBhIG5ldyB0aHJlYWQsIHRoZSBzY2hlZHVsZXIgYWxsb2NhdGVzIHRoZSBz
dGFjaywgc2V0cyB0aGUgdGhyZWFkCmFkZHJlc3Mgb24gdGhlIHN0YWNrIHRvcCBhbmQgcHVzaGVz
IHRoZSB0aHJlYWQgZnVuY3Rpb24gYW5kIGFyZ3VtZW50IG9uIHRoZQpuZXdseSBjcmVhdGVkIHN0
YWNrLiBUaGUgY29udGV4dCByZXNvdXJjZSB3aWxsIGJlIGNyZWF0ZWQgYnkgdGhlIHBsYXRmb3Jt
IHdoaWNoCndpbGwgc2V0IHRoZSBzdGFjayBwb2ludGVyIGFzIHByb3ZpZGVkIGJ5IHRoZSBzY2hl
ZHVsZXIgYW5kIHRoZSBpbnN0cnVjdGlvbgpwb2ludGVyIHRvIGEgdmFsdWUgcmVwcmVzZW50aW5n
IHRoZSBzdGFydCByb3V0aW5lIGZvciB0aGUgY29udGV4dC4KCk90aGVyIGNoYW5nZXM6Ci0gaW50
cm9kdWNpbmcgdWtfc2NoZWRfZGVmYXVsdF9pbml0IGZ1bmN0aW9uCi0gdXNpbmcgbmV3IGNvbnRl
eHQgY2FsbGJhY2tzIGFic3RyYWN0aW9uCi0gbmV3IHVrX3NjaGVkX3N0YXJ0IGZ1bmN0aW9uIHJl
cGxhY2luZyB1a19zY2hlZF9ydW47IHRoZSBzdGFydCBmdW5jdGlvbiBpcyB0aGUKc2FtZSBmb3Ig
YWxsIHNjaGVkdWxlcnMKLSBhbGwgc2NoZWR1bGVycyBoYXZlIGFuIGlkbGUgdGhyZWFkCi0gcmV2
aXNpdGVkIHNlbWFudGljczogZHJvcHBpbmcgc3RhcnQvc3RvcCBuYW1lcyBmb3IgdGhyZWFkcyBm
dW5jdGlvbnMgc2luY2Ugd2UKY2Fubm90IGNvbnRyb2wgZXhhY3RseSB3aGVuIHRocmVhZHMgc3Rh
cnQvc3RvcCBydW5uaW5nOyBtb3JlIHN1aXRhYmxlIGZ1bmN0aW9uCm5hbWVzIGFyZSBhZGQvcmVt
b3ZlCgpTaWduZWQtb2ZmLWJ5OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgot
LS0KIGxpYi91a3NjaGVkL2luY2x1ZGUvdWsvc2NoZWQuaCAgfCAxMjAgKysrKysrKysrKysrKysr
KysrKysrKysrKy0tLS0tLS0tLS0tLS0KIGxpYi91a3NjaGVkL2luY2x1ZGUvdWsvdGhyZWFkLmgg
fCAgMzkgKysrKysrKy0tLS0tLQogbGliL3Vrc2NoZWQvc2NoZWQuYyAgICAgICAgICAgICB8IDEy
NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tCiBsaWIvdWtzY2hlZC90
aHJlYWQuYyAgICAgICAgICAgIHwgIDc2ICsrKysrKysrKysrKysrKysrKysrKysrLQogNCBmaWxl
cyBjaGFuZ2VkLCAyNzQgaW5zZXJ0aW9ucygrKSwgODUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvbGliL3Vrc2NoZWQvaW5jbHVkZS91ay9zY2hlZC5oIGIvbGliL3Vrc2NoZWQvaW5jbHVkZS91
ay9zY2hlZC5oCmluZGV4IDEzNDkyYTcuLmJiZmU0NDIgMTAwNjQ0Ci0tLSBhL2xpYi91a3NjaGVk
L2luY2x1ZGUvdWsvc2NoZWQuaAorKysgYi9saWIvdWtzY2hlZC9pbmNsdWRlL3VrL3NjaGVkLmgK
QEAgLTQyLDg2ICs0MiwxMjggQEAKICNpbmNsdWRlIDx1ay9lc3NlbnRpYWxzLmg+CiAjaW5jbHVk
ZSA8ZXJybm8uaD4KIAorI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiIHsKKyNlbmRpZgor
CiBzdHJ1Y3QgdWtfc2NoZWQ7CiAKK3N0cnVjdCB1a19zY2hlZCAqdWtfc2NoZWRfZGVmYXVsdF9p
bml0KHN0cnVjdCB1a19hbGxvYyAqYSk7CisKIGV4dGVybiBzdHJ1Y3QgdWtfc2NoZWQgKnVrX3Nj
aGVkX2hlYWQ7CiBpbnQgdWtfc2NoZWRfcmVnaXN0ZXIoc3RydWN0IHVrX3NjaGVkICpzKTsKIHN0
cnVjdCB1a19zY2hlZCAqdWtfc2NoZWRfZ2V0X2RlZmF1bHQodm9pZCk7CiBpbnQgdWtfc2NoZWRf
c2V0X2RlZmF1bHQoc3RydWN0IHVrX3NjaGVkICpzKTsKIAotdHlwZWRlZiB2b2lkICAoKnVrX3Nj
aGVkX3J1bl9mdW5jX3QpCi0JCShzdHJ1Y3QgdWtfc2NoZWQgKnMpIF9fbm9yZXR1cm47Ci10eXBl
ZGVmIHZvaWQgICgqdWtfc2NoZWRfc2NoZWR1bGVfZnVuY190KQorCit0eXBlZGVmIHZvaWQgICgq
dWtfc2NoZWRfeWllbGRfZnVuY190KQogCQkoc3RydWN0IHVrX3NjaGVkICpzKTsKIAotdHlwZWRl
ZiB2b2lkICAoKnVrX3NjaGVkX3RocmVhZF9zdGFydF9mdW5jX3QpCit0eXBlZGVmIHZvaWQgICgq
dWtfc2NoZWRfdGhyZWFkX2FkZF9mdW5jX3QpCiAJCShzdHJ1Y3QgdWtfc2NoZWQgKnMsIHN0cnVj
dCB1a190aHJlYWQgKnQpOwotdHlwZWRlZiB2b2lkICAoKnVrX3NjaGVkX3RocmVhZF9zdG9wX2Z1
bmNfdCkKK3R5cGVkZWYgdm9pZCAgKCp1a19zY2hlZF90aHJlYWRfcmVtb3ZlX2Z1bmNfdCkKIAkJ
KHN0cnVjdCB1a19zY2hlZCAqcywgc3RydWN0IHVrX3RocmVhZCAqdCk7CiAKIHN0cnVjdCB1a19z
Y2hlZCB7Ci0JdWtfc2NoZWRfc2NoZWR1bGVfZnVuY190IHNjaGVkdWxlOworCXVrX3NjaGVkX3lp
ZWxkX2Z1bmNfdCB5aWVsZDsKIAotCXVrX3NjaGVkX3J1bl9mdW5jX3QgcnVuOwotCi0JdWtfc2No
ZWRfdGhyZWFkX3N0YXJ0X2Z1bmNfdCB0aHJlYWRfc3RhcnQ7Ci0JdWtfc2NoZWRfdGhyZWFkX3N0
b3BfZnVuY190ICB0aHJlYWRfc3RvcDsKKwl1a19zY2hlZF90aHJlYWRfYWRkX2Z1bmNfdCAgICAg
IHRocmVhZF9hZGQ7CisJdWtfc2NoZWRfdGhyZWFkX3JlbW92ZV9mdW5jX3QgICB0aHJlYWRfcmVt
b3ZlOwogCiAJLyogaW50ZXJuYWwgKi8KKwlzdHJ1Y3QgdWtfdGhyZWFkIGlkbGU7CisJc3RydWN0
IHVrcGxhdF9jdHhfY2FsbGJhY2tzIHBsYXRfY3R4X2NiczsKIAlzdHJ1Y3QgdWtfYWxsb2MgKmFs
bG9jYXRvcjsKIAlzdHJ1Y3QgdWtfc2NoZWQgKm5leHQ7Ci0Jdm9pZCAqcHJpdmF0ZTsKKwl2b2lk
ICpwcnY7CiB9OwogCi0vKiB3cmFwcGVyIGZ1bmN0aW9ucyAqLwotCi1zdGF0aWMgaW5saW5lIHZv
aWQgdWtfc2NoZWRfc2NoZWR1bGUoc3RydWN0IHVrX3NjaGVkICpzKQotewotCVVLX0FTU0VSVChz
KTsKLQlzLT5zY2hlZHVsZShzKTsKLX0KLQorLyogd3JhcHBlciBmdW5jdGlvbnMgb3ZlciBzY2hl
ZHVsZXIgY2FsbGJhY2tzICovCiBzdGF0aWMgaW5saW5lIHZvaWQgdWtfc2NoZWRfeWllbGQodm9p
ZCkKIHsKLQl1a19zY2hlZF9zY2hlZHVsZSh1a19zY2hlZF9nZXRfZGVmYXVsdCgpKTsKKwlzdHJ1
Y3QgdWtfc2NoZWQgKnM7CisJc3RydWN0IHVrX3RocmVhZCAqY3VycmVudCA9IHVrX3RocmVhZF9j
dXJyZW50KCk7CisKKwlVS19BU1NFUlQoY3VycmVudCk7CisKKwlzID0gY3VycmVudC0+c2NoZWQ7
CisJVUtfQVNTRVJUKHMpOworCXMtPnlpZWxkKHMpOwogfQogCi1zdGF0aWMgaW5saW5lIHZvaWQg
dWtfc2NoZWRfcnVuKHN0cnVjdCB1a19zY2hlZCAqcykgX19ub3JldHVybjsKLXN0YXRpYyBpbmxp
bmUgdm9pZCB1a19zY2hlZF9ydW4oc3RydWN0IHVrX3NjaGVkICpzKQorc3RhdGljIGlubGluZSB2
b2lkIHVrX3NjaGVkX3RocmVhZF9hZGQoc3RydWN0IHVrX3NjaGVkICpzLAorCQlzdHJ1Y3QgdWtf
dGhyZWFkICp0KQogewogCVVLX0FTU0VSVChzKTsKLQlzLT5ydW4ocyk7CisJVUtfQVNTRVJUKHQp
OworCXQtPnNjaGVkID0gczsKKwlzLT50aHJlYWRfYWRkKHMsIHQpOwogfQogCi1zdGF0aWMgaW5s
aW5lIHZvaWQgdWtfc2NoZWRfdGhyZWFkX3N0YXJ0KHN0cnVjdCB1a19zY2hlZCAqcywKK3N0YXRp
YyBpbmxpbmUgdm9pZCB1a19zY2hlZF90aHJlYWRfcmVtb3ZlKHN0cnVjdCB1a19zY2hlZCAqcywK
IAkJc3RydWN0IHVrX3RocmVhZCAqdCkKIHsKIAlVS19BU1NFUlQocyk7Ci0Jcy0+dGhyZWFkX3N0
YXJ0KHMsIHQpOworCVVLX0FTU0VSVCh0KTsKKwlzLT50aHJlYWRfcmVtb3ZlKHMsIHQpOworCXQt
PnNjaGVkID0gTlVMTDsKIH0KIAotc3RhdGljIGlubGluZSB2b2lkIHVrX3NjaGVkX3RocmVhZF9z
dG9wKHN0cnVjdCB1a19zY2hlZCAqcywKLQkJc3RydWN0IHVrX3RocmVhZCAqdCkKKworLyoKKyAq
IEludGVybmFsIHNjaGVkdWxlciBmdW5jdGlvbnMKKyAqLworCit2b2lkIHVrX3NjaGVkX2lkbGVf
aW5pdChzdHJ1Y3QgdWtfc2NoZWQgKnNjaGVkLAorCQl2b2lkICpzdGFjaywgdm9pZCAoKmZ1bmN0
aW9uKSh2b2lkICopKTsKKworc3RhdGljIGlubGluZSBzdHJ1Y3QgdWtfdGhyZWFkICp1a19zY2hl
ZF9nZXRfaWRsZShzdHJ1Y3QgdWtfc2NoZWQgKnMpCiB7CiAJVUtfQVNTRVJUKHMpOwotCXMtPnRo
cmVhZF9zdG9wKHMsIHQpOworCXJldHVybiAmcy0+aWRsZTsKIH0KIAotc3RydWN0IHVrX3RocmVh
ZCAqdWtfc2NoZWRfdGhyZWFkX2NyZWF0ZShzdHJ1Y3QgdWtfc2NoZWQgKnNjaGVkLAotCQljaGFy
ICpuYW1lLCB2b2lkICgqZnVuY3Rpb24pKHZvaWQgKiksIHZvaWQgKmRhdGEpOwotdm9pZCB1a19z
Y2hlZF90aHJlYWRfZGVzdHJveShzdHJ1Y3QgdWtfc2NoZWQgKnNjaGVkLAotCQlzdHJ1Y3QgdWtf
dGhyZWFkICp0aHJlYWQpOworLyoKKyAqIFB1YmxpYyBzY2hlZHVsZXIgZnVuY3Rpb25zCisgKi8K
IAotdm9pZCB1a19zY2hlZF9zbGVlcCh1aW50MzJfdCBtaWxsaXMpOwordm9pZCB1a19zY2hlZF9z
dGFydChzdHJ1Y3QgdWtfc2NoZWQgKnNjaGVkKSBfX25vcmV0dXJuOwogCi0jZGVmaW5lIHVrX3Nj
aGVkX2luaXQocywgc2NoZWRfZnVuYywgcnVuX2Z1bmMsIFwKLQkJCXN0YXJ0X3RocmVhZF9mdW5j
LCBzdG9wX3RocmVhZF9mdW5jKSBcCisjZGVmaW5lIHVrX3NjaGVkX2luaXQocywgeWllbGRfZnVu
YywgXAorCQl0aHJlYWRfYWRkX2Z1bmMsIHRocmVhZF9yZW1vdmVfZnVuYykgXAogCWRvIHsgXAot
CQkocyktPnNjaGVkdWxlICAgICAgPSBzY2hlZF9mdW5jOyBcCi0JCShzKS0+cnVuICAgICAgICAg
ICA9IHJ1bl9mdW5jOyBcCi0JCShzKS0+dGhyZWFkX3N0YXJ0ICA9IHN0YXJ0X3RocmVhZF9mdW5j
OyBcCi0JCShzKS0+dGhyZWFkX3N0b3AgICA9IHN0b3BfdGhyZWFkX2Z1bmM7IFwKKwkJKHMpLT55
aWVsZCAgICAgICAgICAgPSB5aWVsZF9mdW5jOyBcCisJCShzKS0+dGhyZWFkX2FkZCAgICAgID0g
dGhyZWFkX2FkZF9mdW5jOyBcCisJCShzKS0+dGhyZWFkX3JlbW92ZSAgID0gdGhyZWFkX3JlbW92
ZV9mdW5jOyBcCiAJCXVrX3NjaGVkX3JlZ2lzdGVyKChzKSk7IFwKIAl9IHdoaWxlICgwKQogCisK
Ky8qCisgKiBJbnRlcm5hbCB0aHJlYWQgc2NoZWR1bGluZyBmdW5jdGlvbnMKKyAqLworCitzdHJ1
Y3QgdWtfdGhyZWFkICp1a19zY2hlZF90aHJlYWRfY3JlYXRlKHN0cnVjdCB1a19zY2hlZCAqc2No
ZWQsCisJCWNvbnN0IGNoYXIgKm5hbWUsIHZvaWQgKCpmdW5jdGlvbikodm9pZCAqKSwgdm9pZCAq
YXJnKTsKK3ZvaWQgdWtfc2NoZWRfdGhyZWFkX2Rlc3Ryb3koc3RydWN0IHVrX3NjaGVkICpzY2hl
ZCwKKwkJc3RydWN0IHVrX3RocmVhZCAqdGhyZWFkKTsKKworc3RhdGljIGlubGluZQordm9pZCB1
a19zY2hlZF90aHJlYWRfc3dpdGNoKHN0cnVjdCB1a19zY2hlZCAqc2NoZWQsCisJCXN0cnVjdCB1
a190aHJlYWQgKnByZXYsIHN0cnVjdCB1a190aHJlYWQgKm5leHQpCit7CisJdWtwbGF0X3RocmVh
ZF9jdHhfc3dpdGNoKCZzY2hlZC0+cGxhdF9jdHhfY2JzLCBwcmV2LT5jdHgsIG5leHQtPmN0eCk7
Cit9CisKKy8qCisgKiBQdWJsaWMgdGhyZWFkIHNjaGVkdWxpbmcgZnVuY3Rpb25zCisgKi8KKwor
dm9pZCB1a19zY2hlZF90aHJlYWRfc2xlZXAoX19uc2VjIG5zZWMpOwordm9pZCB1a19zY2hlZF90
aHJlYWRfZXhpdCh2b2lkKSBfX25vcmV0dXJuOworCisjaWZkZWYgX19jcGx1c3BsdXMKK30KKyNl
bmRpZgorCiAjZW5kaWYgLyogX19VS19TQ0hFRF9IX18gKi8KZGlmZiAtLWdpdCBhL2xpYi91a3Nj
aGVkL2luY2x1ZGUvdWsvdGhyZWFkLmggYi9saWIvdWtzY2hlZC9pbmNsdWRlL3VrL3RocmVhZC5o
CmluZGV4IDdhYjhiMzEuLjlkNTJmMjUgMTAwNjQ0Ci0tLSBhL2xpYi91a3NjaGVkL2luY2x1ZGUv
dWsvdGhyZWFkLmgKKysrIGIvbGliL3Vrc2NoZWQvaW5jbHVkZS91ay90aHJlYWQuaApAQCAtMzIs
MTggKzMyLDIyIEBACiAjaWZkZWYgSEFWRV9MSUJDCiAjaW5jbHVkZSA8c3lzL3JlZW50Lmg+CiAj
ZW5kaWYKLSNpbmNsdWRlIDx1ay9hcmNoL3RocmVhZC5oPgorI2luY2x1ZGUgPHVrL2FyY2gvbGNw
dS5oPgogI2luY2x1ZGUgPHVrL2FyY2gvdGltZS5oPgogI2luY2x1ZGUgPHVrL3BsYXQvdGhyZWFk
Lmg+CiAjaW5jbHVkZSA8dWsvbGlzdC5oPgogI2luY2x1ZGUgPHVrL2Vzc2VudGlhbHMuaD4KIAor
I2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiIHsKKyNlbmRpZgorCiBzdHJ1Y3QgdWtfc2No
ZWQ7CiAKIHN0cnVjdCB1a190aHJlYWQgewotCWNoYXIgKm5hbWU7Ci0JY2hhciAqc3RhY2s7Ci0J
c3RydWN0IHVrcGxhdF90aHJlYWRfY3R4IHBsYXRfY3R4OworCWNvbnN0IGNoYXIgKm5hbWU7CisJ
dm9pZCAqc3RhY2s7CisJdm9pZCAqY3R4OwogCVVLX1RBSUxRX0VOVFJZKHN0cnVjdCB1a190aHJl
YWQpIHRocmVhZF9saXN0OwogCXVpbnQzMl90IGZsYWdzOwogCV9fc25zZWMgd2FrZXVwX3RpbWU7
CkBAIC01OSwyMyArNjMsMTYgQEAgVUtfVEFJTFFfSEVBRCh1a190aHJlYWRfbGlzdCwgc3RydWN0
IHVrX3RocmVhZCk7CiAJdWtfc2NoZWRfdGhyZWFkX2NyZWF0ZSh1a19zY2hlZF9nZXRfZGVmYXVs
dCgpLCBuYW1lLCBmdW5jdGlvbiwgZGF0YSkKICNkZWZpbmUgdWtfdGhyZWFkX2Rlc3Ryb3kodGhy
ZWFkKSBcCiAJdWtfc2NoZWRfdGhyZWFkX2Rlc3Ryb3kodGhyZWFkLT5zY2hlZCwgdGhyZWFkKQot
I2RlZmluZSB1a190aHJlYWRfc3RhcnQodGhyZWFkKSBcCi0JdWtfc2NoZWRfdGhyZWFkX3N0YXJ0
KHRocmVhZC0+c2NoZWQsIHRocmVhZCkKLSNkZWZpbmUgdWtfdGhyZWFkX3N0b3AodGhyZWFkKSBc
Ci0JdWtfc2NoZWRfdGhyZWFkX3N0b3AodGhyZWFkLT5zY2hlZCwgdGhyZWFkKQogCiBzdGF0aWMg
aW5saW5lCiBzdHJ1Y3QgdWtfdGhyZWFkICp1a190aHJlYWRfY3VycmVudCh2b2lkKQogewotCXN0
cnVjdCB1a3BsYXRfdGhyZWFkX2N0eCAqY3R4ID0gdWtwbGF0X3RocmVhZF9jdHhfY3VycmVudCgp
OworCXN0cnVjdCB1a190aHJlYWQgKipjdXJyZW50OworCXVuc2lnbmVkIGxvbmcgc3AgPSB1a2Fy
Y2hfcmVhZF9zcCgpOwogCi0JcmV0dXJuIF9fY29udGFpbmVyb2YoY3R4LCBzdHJ1Y3QgdWtfdGhy
ZWFkLCBwbGF0X2N0eCk7Ci19CisJY3VycmVudCA9IChzdHJ1Y3QgdWtfdGhyZWFkICoqKSAoc3Ag
JiB+KF9fU1RBQ0tfU0laRSAtIDEpKTsKIAotc3RhdGljIGlubGluZQotdm9pZCB1a190aHJlYWRf
c3dpdGNoKHN0cnVjdCB1a190aHJlYWQgKnByZXYsIHN0cnVjdCB1a190aHJlYWQgKm5leHQpCi17
Ci0JdWtwbGF0X3RocmVhZF9jdHhfc3dpdGNoKCZwcmV2LT5wbGF0X2N0eCwgJm5leHQtPnBsYXRf
Y3R4KTsKKwlyZXR1cm4gKmN1cnJlbnQ7CiB9CiAKICNkZWZpbmUgUlVOTkFCTEVfRkxBRyAgIDB4
MDAwMDAwMDEKQEAgLTg0LDggKzgxLDE4IEBAIHZvaWQgdWtfdGhyZWFkX3N3aXRjaChzdHJ1Y3Qg
dWtfdGhyZWFkICpwcmV2LCBzdHJ1Y3QgdWtfdGhyZWFkICpuZXh0KQogI2RlZmluZSBzZXRfcnVu
bmFibGUoX3RocmVhZCkgICAoKF90aHJlYWQpLT5mbGFncyB8PSAgUlVOTkFCTEVfRkxBRykKICNk
ZWZpbmUgY2xlYXJfcnVubmFibGUoX3RocmVhZCkgKChfdGhyZWFkKS0+ZmxhZ3MgJj0gflJVTk5B
QkxFX0ZMQUcpCiAKLXZvaWQgdWtfdGhyZWFkX2Jsb2NrX21pbGxpcyhzdHJ1Y3QgdWtfdGhyZWFk
ICp0aHJlYWQsIHVpbnQzMl90IG1pbGxpcyk7CitpbnQgdWtfdGhyZWFkX2luaXQoc3RydWN0IHVr
X3RocmVhZCAqdGhyZWFkLAorCQlzdHJ1Y3QgdWtwbGF0X2N0eF9jYWxsYmFja3MgKmNicywgc3Ry
dWN0IHVrX2FsbG9jICphbGxvY2F0b3IsCisJCWNvbnN0IGNoYXIgKm5hbWUsIHZvaWQgKnN0YWNr
LAorCQl2b2lkICgqZnVuY3Rpb24pKHZvaWQgKiksIHZvaWQgKmFyZyk7Cit2b2lkIHVrX3RocmVh
ZF9maW5pKHN0cnVjdCB1a190aHJlYWQgKnRocmVhZCwKKwkJc3RydWN0IHVrX2FsbG9jICphbGxv
Y2F0b3IpOwordm9pZCB1a190aHJlYWRfYmxvY2tfdGltZW91dChzdHJ1Y3QgdWtfdGhyZWFkICp0
aHJlYWQsIF9fbnNlYyBuc2VjKTsKIHZvaWQgdWtfdGhyZWFkX2Jsb2NrKHN0cnVjdCB1a190aHJl
YWQgKnRocmVhZCk7CiB2b2lkIHVrX3RocmVhZF93YWtlKHN0cnVjdCB1a190aHJlYWQgKnRocmVh
ZCk7CiAKKyNpZmRlZiBfX2NwbHVzcGx1cworfQorI2VuZGlmCisKICNlbmRpZiAvKiBfX1VLX1RI
UkVBRF9IX18gKi8KZGlmZiAtLWdpdCBhL2xpYi91a3NjaGVkL3NjaGVkLmMgYi9saWIvdWtzY2hl
ZC9zY2hlZC5jCmluZGV4IDNkZmEyYTQuLmJhYzg2YjMgMTAwNjQ0Ci0tLSBhL2xpYi91a3NjaGVk
L3NjaGVkLmMKKysrIGIvbGliL3Vrc2NoZWQvc2NoZWQuYwpAQCAtMzQsMTEgKzM0LDI3IEBACiAK
ICNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDx1ay9wbGF0L2NvbmZpZy5oPgorI2luY2x1
ZGUgPHVrL3BsYXQvdGhyZWFkLmg+CiAjaW5jbHVkZSA8dWsvYWxsb2MuaD4KICNpbmNsdWRlIDx1
ay9zY2hlZC5oPgorI2lmIExJQlVLU0NIRURDT09QCisjaW5jbHVkZSA8dWsvc2NoZWRjb29wLmg+
CisjZW5kaWYKIAogc3RydWN0IHVrX3NjaGVkICp1a19zY2hlZF9oZWFkOwogCisvKiBGSVhNRSBT
dXBwb3J0IGZvciBleHRlcm5hbCBzY2hlZHVsZXJzICovCitzdHJ1Y3QgdWtfc2NoZWQgKnVrX3Nj
aGVkX2RlZmF1bHRfaW5pdChzdHJ1Y3QgdWtfYWxsb2MgKmEpCit7CisJc3RydWN0IHVrX3NjaGVk
ICpzID0gTlVMTDsKKworI2lmIExJQlVLU0NIRURDT09QCisJcyA9IHVrX3NjaGVkY29vcF9pbml0
KGEpOworI2VuZGlmCisKKwlyZXR1cm4gczsKK30KKwogaW50IHVrX3NjaGVkX3JlZ2lzdGVyKHN0
cnVjdCB1a19zY2hlZCAqcykKIHsKIAlzdHJ1Y3QgdWtfc2NoZWQgKnRoaXMgPSB1a19zY2hlZF9o
ZWFkOwpAQCAtOTMsNjAgKzEwOSwxMTQgQEAgaW50IHVrX3NjaGVkX3NldF9kZWZhdWx0KHN0cnVj
dCB1a19zY2hlZCAqcykKIAlyZXR1cm4gMDsKIH0KIAordm9pZCB1a19zY2hlZF9zdGFydChzdHJ1
Y3QgdWtfc2NoZWQgKnNjaGVkKQoreworCVVLX0FTU0VSVChzY2hlZCAhPSBOVUxMKTsKKwl1a3Bs
YXRfdGhyZWFkX2N0eF9zdGFydCgmc2NoZWQtPnBsYXRfY3R4X2Nicywgc2NoZWQtPmlkbGUuY3R4
KTsKK30KKworc3RhdGljIHZvaWQgKmNyZWF0ZV9zdGFjayhzdHJ1Y3QgdWtfYWxsb2MgKmFsbG9j
YXRvcikKK3sKKwl2b2lkICpzdGFjazsKKworCXN0YWNrID0gdWtfcGFsbG9jKGFsbG9jYXRvciwg
U1RBQ0tfU0laRV9QQUdFX09SREVSKTsKKwlpZiAoc3RhY2sgPT0gTlVMTCkgeworCQl1a19wcmlu
dGQoRExWTF9XQVJOLCAiRXJyb3IgYWxsb2NhdGluZyB0aHJlYWQgc3RhY2suIik7CisJCXJldHVy
biBOVUxMOworCX0KKworCXJldHVybiBzdGFjazsKK30KKwordm9pZCB1a19zY2hlZF9pZGxlX2lu
aXQoc3RydWN0IHVrX3NjaGVkICpzY2hlZCwKKwkJdm9pZCAqc3RhY2ssIHZvaWQgKCpmdW5jdGlv
bikodm9pZCAqKSkKK3sKKwlzdHJ1Y3QgdWtfdGhyZWFkICppZGxlOworCWludCByYzsKKworCVVL
X0FTU0VSVChzY2hlZCAhPSBOVUxMKTsKKworCWlmIChzdGFjayA9PSBOVUxMKQorCQlzdGFjayA9
IGNyZWF0ZV9zdGFjayhzY2hlZC0+YWxsb2NhdG9yKTsKKwlVS19BU1NFUlQoc3RhY2sgIT0gTlVM
TCk7CisKKwlpZGxlID0gJnNjaGVkLT5pZGxlOworCisJcmMgPSB1a190aHJlYWRfaW5pdChpZGxl
LAorCQkJJnNjaGVkLT5wbGF0X2N0eF9jYnMsIHNjaGVkLT5hbGxvY2F0b3IsCisJCQkiSWRsZSIs
IHN0YWNrLCBmdW5jdGlvbiwgTlVMTCk7CisJaWYgKHJjKQorCQlVS19DUkFTSCgiRXJyb3IgaW5p
dGlhbGl6aW5nIGlkbGUgdGhyZWFkLiIpOworCisJaWRsZS0+c2NoZWQgPSBzY2hlZDsKK30KKwog
c3RydWN0IHVrX3RocmVhZCAqdWtfc2NoZWRfdGhyZWFkX2NyZWF0ZShzdHJ1Y3QgdWtfc2NoZWQg
KnNjaGVkLAotCQljaGFyICpuYW1lLCB2b2lkICgqZnVuY3Rpb24pKHZvaWQgKiksIHZvaWQgKmRh
dGEpCisJCWNvbnN0IGNoYXIgKm5hbWUsIHZvaWQgKCpmdW5jdGlvbikodm9pZCAqKSwgdm9pZCAq
YXJnKQogewotCXN0cnVjdCB1a190aHJlYWQgKnRocmVhZDsKKwlzdHJ1Y3QgdWtfdGhyZWFkICp0
aHJlYWQgPSBOVUxMOworCXZvaWQgKnN0YWNrOworCWludCByYzsKIAogCXRocmVhZCA9IHVrX21h
bGxvYyhzY2hlZC0+YWxsb2NhdG9yLCBzaXplb2Yoc3RydWN0IHVrX3RocmVhZCkpOwogCWlmICh0
aHJlYWQgPT0gTlVMTCkgewogCQl1a19wcmludGQoRExWTF9XQVJOLCAiRXJyb3IgYWxsb2NhdGlu
ZyBtZW1vcnkgZm9yIHRocmVhZC4iKTsKLQkJZ290byBvdXQ7CisJCWdvdG8gZXJyOwogCX0KIAog
CS8qIFdlIGNhbid0IHVzZSBsYXp5IGFsbG9jYXRpb24gaGVyZQogCSAqIHNpbmNlIHRoZSB0cmFw
IGhhbmRsZXIgcnVucyBvbiB0aGUgc3RhY2sKIAkgKi8KLQl0aHJlYWQtPnN0YWNrID0gdWtfcGFs
bG9jKHNjaGVkLT5hbGxvY2F0b3IsIFNUQUNLX1NJWkVfUEFHRV9PUkRFUik7Ci0JaWYgKHRocmVh
ZC0+c3RhY2sgPT0gTlVMTCkgewotCQl1a19wcmludGQoRExWTF9XQVJOLCAiRXJyb3IgYWxsb2Nh
dGluZyB0aHJlYWQgc3RhY2suIik7Ci0JCWZyZWUodGhyZWFkKTsKLQkJdGhyZWFkID0gTlVMTDsK
LQkJZ290byBvdXQ7Ci0JfQorCXN0YWNrID0gY3JlYXRlX3N0YWNrKHNjaGVkLT5hbGxvY2F0b3Ip
OworCWlmIChzdGFjayA9PSBOVUxMKQorCQlnb3RvIGVycjsKIAotCXRocmVhZC0+bmFtZSA9IG5h
bWU7Ci0JdWtfcHJpbnRkKERMVkxfRVhUUkEsICJUaHJlYWQgXCIlc1wiOiBwb2ludGVyOiAlcCwg
c3RhY2s6ICVwXG4iLAotCQkJbmFtZSwgdGhyZWFkLCB0aHJlYWQtPnN0YWNrKTsKKwlyYyA9IHVr
X3RocmVhZF9pbml0KHRocmVhZCwKKwkJCSZzY2hlZC0+cGxhdF9jdHhfY2JzLCBzY2hlZC0+YWxs
b2NhdG9yLAorCQkJbmFtZSwgc3RhY2ssIGZ1bmN0aW9uLCBhcmcpOworCWlmIChyYykKKwkJZ290
byBlcnI7CiAKLQkvKiBOb3QgcnVubmFibGUsIG5vdCBleGl0ZWQsIG5vdCBzbGVlcGluZyAqLwot
CXRocmVhZC0+ZmxhZ3MgPSAwOwotCXRocmVhZC0+d2FrZXVwX3RpbWUgPSAwTEw7CisJdWtfc2No
ZWRfdGhyZWFkX2FkZChzY2hlZCwgdGhyZWFkKTsKIAotCS8qIENhbGwgcGxhdGZvcm0gc3BlY2lm
aWMgc2V0dXAuICovCi0JdWtwbGF0X3RocmVhZF9jdHhfaW5pdCgmdGhyZWFkLT5wbGF0X2N0eCwg
dGhyZWFkLT5zdGFjaywKLQkJCSAgICAgICBmdW5jdGlvbiwgZGF0YSk7Ci0jaWZkZWYgSEFWRV9M
SUJDCi0JLy9UT0RPIF9SRUVOVF9JTklUX1BUUigmdGhyZWFkLT5yZWVudCk7Ci0jZW5kaWYKKwly
ZXR1cm4gdGhyZWFkOwogCi0JdGhyZWFkLT5zY2hlZCA9IHNjaGVkOworZXJyOgorCWlmIChzdGFj
aykKKwkJdWtfZnJlZShzY2hlZC0+YWxsb2NhdG9yLCBzdGFjayk7CisJaWYgKHRocmVhZCkKKwkJ
dWtfZnJlZShzY2hlZC0+YWxsb2NhdG9yLCB0aHJlYWQpOwogCi1vdXQ6Ci0JcmV0dXJuIHRocmVh
ZDsKKwlyZXR1cm4gTlVMTDsKIH0KIAogdm9pZCB1a19zY2hlZF90aHJlYWRfZGVzdHJveShzdHJ1
Y3QgdWtfc2NoZWQgKnNjaGVkLCBzdHJ1Y3QgdWtfdGhyZWFkICp0aHJlYWQpCiB7CisJVUtfQVNT
RVJUKHNjaGVkICE9IE5VTEwpOworCVVLX0FTU0VSVCh0aHJlYWQgIT0gTlVMTCk7CisJdWtfdGhy
ZWFkX2ZpbmkodGhyZWFkLCBzY2hlZC0+YWxsb2NhdG9yKTsKIAl1a19wZnJlZShzY2hlZC0+YWxs
b2NhdG9yLCB0aHJlYWQtPnN0YWNrLCBTVEFDS19TSVpFX1BBR0VfT1JERVIpOwogCXVrX2ZyZWUo
c2NoZWQtPmFsbG9jYXRvciwgdGhyZWFkKTsKIH0KIAotdm9pZCB1a19zY2hlZF9zbGVlcCh1aW50
MzJfdCBtaWxsaXMpCit2b2lkIHVrX3NjaGVkX3RocmVhZF9zbGVlcChfX25zZWMgbnNlYykKIHsK
IAlzdHJ1Y3QgdWtfdGhyZWFkICp0aHJlYWQ7CiAKIAl0aHJlYWQgPSB1a190aHJlYWRfY3VycmVu
dCgpOwotCXVrX3RocmVhZF9ibG9ja19taWxsaXModGhyZWFkLCBtaWxsaXMpOworCXVrX3RocmVh
ZF9ibG9ja190aW1lb3V0KHRocmVhZCwgbnNlYyk7CiAJdWtfc2NoZWRfeWllbGQoKTsKIH0KKwor
dm9pZCB1a19zY2hlZF90aHJlYWRfZXhpdCh2b2lkKQoreworCXN0cnVjdCB1a190aHJlYWQgKnRo
cmVhZDsKKworCXRocmVhZCA9IHVrX3RocmVhZF9jdXJyZW50KCk7CisKKwl1a19wcmludGQoRExW
TF9JTkZPLCAiVGhyZWFkIFwiJXNcIiBleGl0ZWQuXG4iLCB0aHJlYWQtPm5hbWUpOworCisJVUtf
QVNTRVJUKHRocmVhZC0+c2NoZWQpOworCXVrX3NjaGVkX3RocmVhZF9yZW1vdmUodGhyZWFkLT5z
Y2hlZCwgdGhyZWFkKTsKKwlVS19DUkFTSCgiRXJyb3Igc3RvcHBpbmcgdGhyZWFkLiIpOworfQpk
aWZmIC0tZ2l0IGEvbGliL3Vrc2NoZWQvdGhyZWFkLmMgYi9saWIvdWtzY2hlZC90aHJlYWQuYwpp
bmRleCAxMzM0YWFhLi44M2Q0M2E0IDEwMDY0NAotLS0gYS9saWIvdWtzY2hlZC90aHJlYWQuYwor
KysgYi9saWIvdWtzY2hlZC90aHJlYWQuYwpAQCAtMjksMjAgKzI5LDg3IEBACiAgKiBUaHJlYWQg
ZGVmaW5pdGlvbnMKICAqIFBvcnRlZCBmcm9tIE1pbmktT1MKICAqLworI2luY2x1ZGUgPHN0ZGxp
Yi5oPgorI2luY2x1ZGUgPHVrL3BsYXQvY29uZmlnLmg+CiAjaW5jbHVkZSA8dWsvcGxhdC90aW1l
Lmg+CiAjaW5jbHVkZSA8dWsvdGhyZWFkLmg+CisjaW5jbHVkZSA8dWsvcHJpbnQuaD4KKyNpbmNs
dWRlIDx1ay9hc3NlcnQuaD4KIAogCisvKiBQdXNoZXMgdGhlIHNwZWNpZmllZCB2YWx1ZSBvbnRv
IHRoZSBzdGFjayBvZiB0aGUgc3BlY2lmaWVkIHRocmVhZCAqLworc3RhdGljIHZvaWQgc3RhY2tf
cHVzaCh1bnNpZ25lZCBsb25nICpzcCwgdW5zaWduZWQgbG9uZyB2YWx1ZSkKK3sKKwkqc3AgLT0g
c2l6ZW9mKHVuc2lnbmVkIGxvbmcpOworCSooKHVuc2lnbmVkIGxvbmcgKikgKnNwKSA9IHZhbHVl
OworfQorCitzdGF0aWMgdm9pZCBpbml0X3NwKHVuc2lnbmVkIGxvbmcgKnNwLCBjaGFyICpzdGFj
aywKKwkJdm9pZCAoKmZ1bmN0aW9uKSh2b2lkICopLCB2b2lkICpkYXRhKQoreworCSpzcCA9ICh1
bnNpZ25lZCBsb25nKSBzdGFjayArIFNUQUNLX1NJWkU7CisKKwkvKiBNdXN0IGVuc3VyZSB0aGF0
ICglcnNwICsgOCkgaXMgMTYtYnl0ZSBhbGlnbmVkCisJICogYXQgdGhlIHN0YXJ0IG9mIHRocmVh
ZF9zdGFydGVyLgorCSAqLworCXN0YWNrX3B1c2goc3AsIDApOworCisJc3RhY2tfcHVzaChzcCwg
KHVuc2lnbmVkIGxvbmcpIGZ1bmN0aW9uKTsKKwlzdGFja19wdXNoKHNwLCAodW5zaWduZWQgbG9u
ZykgZGF0YSk7Cit9CisKK2ludCB1a190aHJlYWRfaW5pdChzdHJ1Y3QgdWtfdGhyZWFkICp0aHJl
YWQsCisJCXN0cnVjdCB1a3BsYXRfY3R4X2NhbGxiYWNrcyAqY2JzLCBzdHJ1Y3QgdWtfYWxsb2Mg
KmFsbG9jYXRvciwKKwkJY29uc3QgY2hhciAqbmFtZSwgdm9pZCAqc3RhY2ssCisJCXZvaWQgKCpm
dW5jdGlvbikodm9pZCAqKSwgdm9pZCAqYXJnKQoreworCXVuc2lnbmVkIGxvbmcgc3A7CisKKwlV
S19BU1NFUlQodGhyZWFkICE9IE5VTEwpOworCVVLX0FTU0VSVChzdGFjayAhPSBOVUxMKTsKKwor
CS8qIFNhdmUgcG9pbnRlciB0byB0aGUgdGhyZWFkIG9uIHRoZSBzdGFjayB0byBnZXQgY3VycmVu
dCB0aHJlYWQgKi8KKwkqKCh1bnNpZ25lZCBsb25nICopIHN0YWNrKSA9ICh1bnNpZ25lZCBsb25n
KSB0aHJlYWQ7CisKKwlpbml0X3NwKCZzcCwgc3RhY2ssIGZ1bmN0aW9uLCBhcmcpOworCisJLyog
Q2FsbCBwbGF0Zm9ybSBzcGVjaWZpYyBzZXR1cC4gKi8KKwl0aHJlYWQtPmN0eCA9IHVrcGxhdF90
aHJlYWRfY3R4X2NyZWF0ZShjYnMsIGFsbG9jYXRvciwgc3ApOworCWlmICh0aHJlYWQtPmN0eCA9
PSBOVUxMKQorCQlyZXR1cm4gLTE7CisKKwl0aHJlYWQtPm5hbWUgPSBuYW1lOworCXRocmVhZC0+
c3RhY2sgPSBzdGFjazsKKworCS8qIE5vdCBydW5uYWJsZSwgbm90IGV4aXRlZCwgbm90IHNsZWVw
aW5nICovCisJdGhyZWFkLT5mbGFncyA9IDA7CisJdGhyZWFkLT53YWtldXBfdGltZSA9IDBMTDsK
KworI2lmZGVmIEhBVkVfTElCQworCS8vVE9ETyBfUkVFTlRfSU5JVF9QVFIoJnRocmVhZC0+cmVl
bnQpOworI2VuZGlmCisKKwl1a19wcmludGQoRExWTF9JTkZPLCAiVGhyZWFkIFwiJXNcIjogcG9p
bnRlcjogJXAsIHN0YWNrOiAlcFxuIiwKKwkJCW5hbWUsIHRocmVhZCwgdGhyZWFkLT5zdGFjayk7
CisKKwlyZXR1cm4gMDsKK30KKwordm9pZCB1a190aHJlYWRfZmluaShzdHJ1Y3QgdWtfdGhyZWFk
ICp0aHJlYWQsIHN0cnVjdCB1a19hbGxvYyAqYWxsb2NhdG9yKQoreworCVVLX0FTU0VSVCh0aHJl
YWQgIT0gTlVMTCk7CisJdWtwbGF0X3RocmVhZF9jdHhfZGVzdHJveShhbGxvY2F0b3IsIHRocmVh
ZC0+Y3R4KTsKK30KKwogc3RhdGljIHZvaWQgdWtfdGhyZWFkX2Jsb2NrX3VudGlsKHN0cnVjdCB1
a190aHJlYWQgKnRocmVhZCwgX19zbnNlYyB1bnRpbCkKIHsKIAl0aHJlYWQtPndha2V1cF90aW1l
ID0gdW50aWw7CiAJY2xlYXJfcnVubmFibGUodGhyZWFkKTsKIH0KIAotdm9pZCB1a190aHJlYWRf
YmxvY2tfbWlsbGlzKHN0cnVjdCB1a190aHJlYWQgKnRocmVhZCwgdWludDMyX3QgbWlsbGlzKQor
dm9pZCB1a190aHJlYWRfYmxvY2tfdGltZW91dChzdHJ1Y3QgdWtfdGhyZWFkICp0aHJlYWQsIF9f
bnNlYyBuc2VjKQogewotCV9fc25zZWMgdW50aWwgPSAoX19zbnNlYykgdWtwbGF0X21vbm90b25p
Y19jbG9jaygpICsKLQkJCXVrYXJjaF90aW1lX21zZWNfdG9fbnNlYyhtaWxsaXMpOworCV9fc25z
ZWMgdW50aWwgPSAoX19zbnNlYykgdWtwbGF0X21vbm90b25pY19jbG9jaygpICsgbnNlYzsKIAog
CXVrX3RocmVhZF9ibG9ja191bnRpbCh0aHJlYWQsIHVudGlsKTsKIH0KQEAgLTU0LDYgKzEyMSw5
IEBAIHZvaWQgdWtfdGhyZWFkX2Jsb2NrKHN0cnVjdCB1a190aHJlYWQgKnRocmVhZCkKIAogdm9p
ZCB1a190aHJlYWRfd2FrZShzdHJ1Y3QgdWtfdGhyZWFkICp0aHJlYWQpCiB7CisJaWYgKGlzX3J1
bm5hYmxlKHRocmVhZCkpCisJCXJldHVybjsKKwogCXRocmVhZC0+d2FrZXVwX3RpbWUgPSAwTEw7
CiAJc2V0X3J1bm5hYmxlKHRocmVhZCk7CiB9Ci0tIAoyLjEuNAoKCl9fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QK
TWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVj
dC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:27 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irr-0003NG-Nh; Wed, 04 Apr 2018 13:54:27 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irq-0003M6-C6
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:26 +0000
X-Inumbo-ID: 98ea3313-380f-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 98ea3313-380f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 15:53:47 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3As4rsbRVb4EJnZXhvuGu/QL+XtkHV8LGtZVwlr6E/?=
 =?us-ascii?q?grcLSJyIuqrYbBSBt8tkgFKBZ4jH8fUM07OQ7/i7HzRYqb+681k6OKRWUBEEjc?=
 =?us-ascii?q?hE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAAjwOhRo?=
 =?us-ascii?q?LerpBIHSk9631+ev8JHPfglEnjWwba98IRmssQndqtQdjJd/JKo21hbHuGZDdf?=
 =?us-ascii?q?5MxWNvK1KTnhL86dm18ZV+7SleuO8v+tBZX6nicKs2UbJXDDI9M2Ao/8LrrgXM?=
 =?us-ascii?q?TRGO5nQHTGoblAdDDhXf4xH7WpfxtTb6tvZ41SKHM8D6Uaw4VDK/5KptVRTmij?=
 =?us-ascii?q?oINyQh/W/XlMJ+kaxVrhGmqRN9zY7Ze52ZOOZkc6/BZ94WWXZNU8BMXCJBGIO8?=
 =?us-ascii?q?aI4PAvIfMOZftIn9u1oOrR2jDgeqGePv0iJIjWLx0KIm1OQhCh3G3A0mH94UtH?=
 =?us-ascii?q?TUsc31NLoJXO+p16nE1y3Db+5N1jvn8ojIdQksrPeRVrxzacrc0VQjGgzYglmK?=
 =?us-ascii?q?qoHoPymZ2voTv2WZ9eZtW/qjh3Mopg1suDSixcchhpPXio8bxF3I7zh1zYkrKd?=
 =?us-ascii?q?C+VUV1e8SrEIFKuCGfL4Z2R8QiTHx2tysi0b0GvIK7fDANyJQ62x7Tc/yHfJaM?=
 =?us-ascii?q?4hLkTOuRPzJ4i2hkeLK7nRq97VOgxvfkVsmpy1lGtDBFkt7UunAM0Rzc9NSHR+?=
 =?us-ascii?q?Ng8kquxDqDzQPe5+FeLUwqi6bWKYQtz7AompoWq0vDHyv2mEvsjK+Rc0Up4vSn?=
 =?us-ascii?q?6+P8YrX6p5+cMZV4igXjMqQ2h8yyGvg3MhMUU2iD5OSzz6fv/Vf+QLlSlP05jr?=
 =?us-ascii?q?HZsIzGJcQcvqO5Bg5V0oAi6xa4FDeqyckXkmcZLF1bfBKKlIzpO1DVIPDkFvez?=
 =?us-ascii?q?mVutnyltx/zcOb3hGJrNJGDZkLj9ZbZ991JcyA0rwNBE5pJUD7YBIPTpVk/yqd?=
 =?us-ascii?q?zXEBk5Mg2qzOb9E9h90J0RVn6LAqCDK6zeq0GH5v98a9WLMYoUvjf6ML0p6uDj?=
 =?us-ascii?q?iVc9mEQBZu+50J1Rb2q3Tdp8JEDMSn33ntYHWUMXphd2GOftk0GDV3hXem6vd6?=
 =?us-ascii?q?knoCkmAsS8CtGQFciWnLWd0XLjTdVtbWdcBwXUHA=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYUSKItfXo8TGpJVFIFmggWDCQKEXjQYAQIBAQEBAQECARMBAQEmV4I1IoJ?=
 =?us-ascii?q?MAwMnUhA/ElcZhRGtRjOEV4NsgiWGZ4JPP4EMglCEaBSFewKHOYQ6C1OKbQiBX?=
 =?us-ascii?q?4kigzKBSopwkSACHDeBUzMacoJDgiAOCY4abIssgkUBAQ?=
X-IPAS-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBCQEBAYUSKItfXo8?=
 =?us-ascii?q?TGpJVFIFmggWDCQKEXjQYAQIBAQEBAQECARMBAQEmV4I1IoJMAwMnUhA/ElcZh?=
 =?us-ascii?q?RGtRjOEV4NsgiWGZ4JPP4EMglCEaBSFewKHOYQ6C1OKbQiBX4kigzKBSopwkSA?=
 =?us-ascii?q?CHDeBUzMacoJDgiAOCY4abIssgkUBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492116"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 577CE1A602E9;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id ixPevpUYWubz; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 3A7971A602F2;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 372BF1A602EF;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:54:07 +0300
Message-Id: <1522850048-13204-17-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 16/17] plat/xen: Add IRQ subsystem
 initialization function
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW50cm9kdWNpbmcgdWtwbGF0X2lycV9pbml0IGZ1bmN0aW9uIGZvciBJUlEgc3Vic3lzdGVtIGlu
aXRpYWxpemF0aW9uLgpUaGUgSVJRIHN1YnN5c3RlbSBtaWdodCByZXF1aXJlIG1lbW9yeSBhbGxv
Y2F0aW9ucyBmb3Igc2hhcmVkIElSUQpoYW5kbGluZyBpbiB3aGljaCBjYXNlIHRoZSBhbGxvY2F0
b3IgbXVzdCBiZSBzcGVjaWZpZWQgb24gaW5pdC4KClNpZ25lZC1vZmYtYnk6IENvc3RpbiBMdXB1
IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Ci0tLQogaW5jbHVkZS91ay9wbGF0L2lycS5oIHwgNTQg
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBwbGF0
L3hlbi9ldmVudHMuYyAgICAgfCAgOCArKysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA2MiBpbnNl
cnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9wbGF0L2lycS5oCgpkaWZm
IC0tZ2l0IGEvaW5jbHVkZS91ay9wbGF0L2lycS5oIGIvaW5jbHVkZS91ay9wbGF0L2lycS5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0ZTYzNzUKLS0tIC9kZXYvbnVsbAor
KysgYi9pbmNsdWRlL3VrL3BsYXQvaXJxLmgKQEAgLTAsMCArMSw1NCBAQAorLyogU1BEWC1MaWNl
bnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLworLyoKKyAqIEF1dGhvcnM6IENvc3RpbiBM
dXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+CisgKgorICogQ29weXJpZ2h0IChjKSAyMDE4LCBO
RUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVy
IG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogICAgdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09O
VFJJQlVUT1JTICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBI
T0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCisgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
CisgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkg
V0FZLgorICovCisjaWZuZGVmIF9fVUtQTEFUX0lSUV9IX18KKyNkZWZpbmUgX19VS1BMQVRfSVJR
X0hfXworCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIgeworI2VuZGlmCisKK3N0cnVj
dCB1a19hbGxvYzsKKworLyoqCisgKiBJbml0aWFsaXplcyBwbGF0Zm9ybSBJUlEgc3Vic3lzdGVt
CisgKiBAcGFyYW0gYSBUaGUgYWxsb2NhdG9yIHRvIGJlIHVzZWQgZm9yIGludGVybmFsIG1lbW9y
eSBhbGxvY2F0aW9ucworICogQHJldHVybiBpbml0aWFsaXphdGlvbiBzdGF0dXMKKyAqLworaW50
IHVrcGxhdF9pcnFfaW5pdChzdHJ1Y3QgdWtfYWxsb2MgKmEpOworCisjaWZkZWYgX19jcGx1c3Bs
dXMKK30KKyNlbmRpZgorCisjZW5kaWYgLyogX19VS1BMQVRfSVJRX0hfXyAqLwpkaWZmIC0tZ2l0
IGEvcGxhdC94ZW4vZXZlbnRzLmMgYi9wbGF0L3hlbi9ldmVudHMuYwppbmRleCA5Mzk2NzQ3Li4x
NzA5YjkwIDEwMDY0NAotLS0gYS9wbGF0L3hlbi9ldmVudHMuYworKysgYi9wbGF0L3hlbi9ldmVu
dHMuYwpAQCAtMzI3LDMgKzMyNywxMSBAQCBpbmxpbmUgdm9pZCBjbGVhcl9ldnRjaG4odWludDMy
X3QgcG9ydCkKIAogCXVrYXJjaF9jbHJfYml0X3N5bmMocG9ydCwgJnMtPmV2dGNobl9wZW5kaW5n
WzBdKTsKIH0KKworc3RydWN0IHVrX2FsbG9jOworCitpbnQgdWtwbGF0X2lycV9pbml0KHN0cnVj
dCB1a19hbGxvYyAqYSBfX3VudXNlZCkKK3sKKwkvKiBOb3RoaW5nIGZvciBub3cgKi8KKwlyZXR1
cm4gMDsKK30KLS0gCjIuMS40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMu
eGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3Rp
bmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:27 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irr-0003NN-QR; Wed, 04 Apr 2018 13:54:27 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irq-0003MK-Kd
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:26 +0000
X-Inumbo-ID: 98d01869-380f-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 98d01869-380f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 15:53:47 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3AXuSllRyx3oHs1F3XCy+O+j09IxM/srCxBDY+r6Qd?=
 =?us-ascii?q?2+4SIJqq85mqBkHD//Il1AaPAd2Araocw8Pt8InYEVQa5piAtH1QOLdtbDQizf?=
 =?us-ascii?q?ssogo7HcSeAlf6JvO5JwYzHcBFSUM3tyrjaRsdF8nxfUDdrWOv5jAOBBr/KRB1?=
 =?us-ascii?q?JuPoEYLOksi7ze+/94HdbglSmDaxfa55IQmrownWqsQYm5ZpJLwryhvOrHtIeu?=
 =?us-ascii?q?BWyn1tKFmOgRvy5dq+8YB6/ShItP0v68BPUaPhf6QlVrNYFygpM3o05MLwqxbO?=
 =?us-ascii?q?SxaE62YGXWUXlhpIBBXF7A3/U5zsvCb2qvZx1S+HNsDwULs6Wymt771zRRHoli?=
 =?us-ascii?q?kJKjA3/mLQhMNygqJWuw6tqwBlzoLIeoyZKOZyc6XAdt0aX2pBWcNRWjRfD4O7?=
 =?us-ascii?q?dIsPE+sBPeBFpIf7ulsOtQa+DhSrCezzzT9InWP23aw80+g7FQHGwRQgH88VvX?=
 =?us-ascii?q?vIt9X5Lr8SUf2uw6XS1zXDaOpb1DHg44bGdRAhpOuDXbN2ccfJ10YvER/Fjk+Q?=
 =?us-ascii?q?qIHkMD6ZzP8NvHOd4uF9Vuyvk3Yqpxx+rzSy3MshiYnEipgLxlza9yh12og4Kc?=
 =?us-ascii?q?WlREN0fNKoCphduiGAO4doTM4vTXtktDs1x7EYv5OwYTIEx449xxHFbvyKa42I?=
 =?us-ascii?q?4hX+W+mPOTp4n3dleK6nhxa17Eig1vXwVsmq31ZOqSpIisfMtnUX2BzS7siLUO?=
 =?us-ascii?q?dy/ly71TaXygDc8ftIIVozlabDKp4hxKA/loYLvEjeESL6hV/6gayWe0k+5OSk?=
 =?us-ascii?q?9ebqbq/oq5OEMo97kAD+MqAgmsylBuQ4NxADUHSc+eSnyL3j/Ev5TK9Ojv0riq?=
 =?us-ascii?q?nZrYvXKtgApqKjGw9Vz50s5wylDzehyNgYh2UILEpZeBKbiIjkI1TOIPH+Dfe+?=
 =?us-ascii?q?hFSsiy5nyO3YMb3/HJrNKmPOkLPgfbZm905c0xA/zN9B6JJSEL0BJ+jzWkDpvt?=
 =?us-ascii?q?zCEhA5KxC0w/rgCNhlzYMeWGePAqifMK/Isl+I+/wgI++NZYALojbwMP4l6ODy?=
 =?us-ascii?q?gn89g1ASZrOl0oUKaCPwIvMzJkSfYH33x9sMD2oOlg4/V/Dxzk2PV3hUfXnhcb?=
 =?us-ascii?q?g742QQD5m6DIGLYp21nfTV1yCgApxQIGRbEk2kGmyub5iOHe0LPnHBavR9myAJ?=
 =?us-ascii?q?AODyA7Qq0guj4Vf3?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2A+AAC/18RajAPjVY1cGgEBAQEBAgEBA?=
 =?us-ascii?q?QEIAQEBAYQjbyiLX16PExqLEodDFIFmJoFfgwkChF40GAECAQEBAQEBAgETAQE?=
 =?us-ascii?q?BJksMgjUigkwDAxoNUhA/ElcZhRGtRjOEV4NsgiWGZ4JPP4EMglAGhGIUhXsCh?=
 =?us-ascii?q?xwHFoQ6C1M/ii4IgV+DdIUugzKBSiCKUJEgAhw3gVMzGnKCQwmCFw4Jiz+CW2y?=
 =?us-ascii?q?LLIJFAQE?=
X-IPAS-Result: =?us-ascii?q?A2A+AAC/18RajAPjVY1cGgEBAQEBAgEBAQEIAQEBAYQjbyi?=
 =?us-ascii?q?LX16PExqLEodDFIFmJoFfgwkChF40GAECAQEBAQEBAgETAQEBJksMgjUigkwDA?=
 =?us-ascii?q?xoNUhA/ElcZhRGtRjOEV4NsgiWGZ4JPP4EMglAGhGIUhXsChxwHFoQ6C1M/ii4?=
 =?us-ascii?q?IgV+DdIUugzKBSiCKUJEgAhw3gVMzGnKCQwmCFw4Jiz+CW2yLLIJFAQE?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492108"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 26CF21A6031F;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id MoFarjm6eBF2; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 015EC1A60327;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id F22561A602E9;
 Wed,  4 Apr 2018 16:54:13 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:53:58 +0300
Message-Id: <1522850048-13204-8-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 07/17] plat/common: Common x86 traps
 definitions and functions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Q3VycmVudCBjaGFuZ2VzIGludHJvZHVjZSBjb21tb24geDg2IHRyYXBzIGRlZmluaXRpb25zIGFu
ZCBmdW5jdGlvbnMgZm9yIGJvdGgKWGVuIGFuZCBLVk0gcGxhdGZvcm1zLiBUcmFwIG5hbWVzIGFy
ZSBlbmZvcmNlZCBieSB0aGUgaGVscGVyIG1hY3JvcyB3aGljaApzaG91bGQgYmUgdXNlZCB3aGVu
IGRlZmluaW5nIGEgbmV3IHRyYXAgZnVuY3Rpb24uIFdoZW5ldmVyIGEgcGxhdGZvcm0gbmVlZHMg
dG8KYWRkIG5ldyB0cmFwcyBpdCBzaG91bGQgZGVmaW5lIHRoZSB0cmFwIG51bWJlciBpbgoncGxh
dC9uYW1lL2luY2x1ZGUvYXJjaC90cmFwcy5oJyBhbmQgdGhlIEMgdHJhcCBoYW5kbGVyIGluCidw
bGF0L25hbWUvYXJjaC90cmFwcy5jJy4gVGhlIGFzc2VtYmx5IHN0dWIgbmFtZSBzaG91bGQgYWxz
byBmb2xsb3cgdGhlCmNvbnZlbnRpb24gc3BlY2lmaWVkIGluICdwbGF0L2NvbW1vbi9pbmNsdWRl
L3g4Ni90cmFwcy5oJy4KVGhlIFhlbiBzcGVjaWZpYyB0cmFwcyB3b3JrIGFzIGFuIGV4YW1wbGUg
Zm9yIHRoaXMgcnVsZS4KCk90aGVyIGNoYW5nZXM6CiogSFZNIHRyYXBzIHVwZGF0ZXMgZm9yIGNv
bmZvcm1pbmcgd2l0aCB0aGUgbmV3IHRyYXBzIGFuZCBzZWdtZW50IGRlc2NyaXB0b3JzCmRlZmlu
aXRpb25zCiogJ29zLmgnIGNsZWFudXA7IHRoZSBnb2FsIGlzIHRvIGdldCByaWQgb2YgdGhpcyBo
ZWFkZXIKKiBtaW5vciBjaGFuZ2UgaW4gJ3BsYXQveGVuL3g4Ni9hcmNoX3RpbWUuYycKClNpZ25l
ZC1vZmYtYnk6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Ci0tLQogcGxhdC9j
b21tb24vaW5jbHVkZS94ODYvdHJhcHMuaCAgfCAxMTUgKysrKysrKysrKysrKysrKysKIHBsYXQv
Y29tbW9uL3g4Ni90cmFwcy5jICAgICAgICAgIHwgMTE2ICsrKysrKysrKysrKysrKysrCiBwbGF0
L3hlbi9NYWtlZmlsZS51ayAgICAgICAgICAgICB8ICAgMSArCiBwbGF0L3hlbi9pbmNsdWRlL3hl
bi14ODYvb3MuaCAgICB8ICAzNCAtLS0tLQogcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L3RyYXBz
LmggfCAgMjMgKystLQogcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jICAgICAgICAgfCAgIDIgKy0K
IHBsYXQveGVuL3g4Ni9lbnRyeTY0LlMgICAgICAgICAgIHwgMTA4ICsrKysrKy0tLS0tLS0tLS0K
IHBsYXQveGVuL3g4Ni9zZXR1cC5jICAgICAgICAgICAgIHwgICAyICstCiBwbGF0L3hlbi94ODYv
dHJhcHMuYyAgICAgICAgICAgICB8IDI2MyArKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0KIDkgZmlsZXMgY2hhbmdlZCwgMzQwIGluc2VydGlvbnMoKyksIDMyNCBkZWxldGlv
bnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni90cmFwcy5o
CiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24veDg2L3RyYXBzLmMKCmRpZmYgLS1naXQg
YS9wbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni90cmFwcy5oIGIvcGxhdC9jb21tb24vaW5jbHVkZS94
ODYvdHJhcHMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMjE3YjM0Ci0t
LSAvZGV2L251bGwKKysrIGIvcGxhdC9jb21tb24vaW5jbHVkZS94ODYvdHJhcHMuaApAQCAtMCww
ICsxLDExNSBAQAorLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwor
LyoKKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+CisgKgor
ICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1l
IG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiAgICBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbQorICogICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCisgKiBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqCisgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJB
Q1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgorICovCisvKiBQb3J0ZWQgZnJvbSBNaW5pLU9T
ICovCisKKyNpZm5kZWYgX19VS0FSQ0hfVFJBUFNfWDg2XzY0X0hfXworI2RlZmluZSBfX1VLQVJD
SF9UUkFQU19YODZfNjRfSF9fCisKKyNpbmNsdWRlIDx4ODYvcmVncy5oPgorCisjZGVmaW5lIFRS
QVBfZGl2aWRlX2Vycm9yICAgICAgICAwCisjZGVmaW5lIFRSQVBfZGVidWcgICAgICAgICAgICAg
ICAxCisjZGVmaW5lIFRSQVBfbm1pICAgICAgICAgICAgICAgICAyCisjZGVmaW5lIFRSQVBfaW50
MyAgICAgICAgICAgICAgICAzCisjZGVmaW5lIFRSQVBfb3ZlcmZsb3cgICAgICAgICAgICA0Cisj
ZGVmaW5lIFRSQVBfYm91bmRzICAgICAgICAgICAgICA1CisjZGVmaW5lIFRSQVBfaW52YWxpZF9v
cCAgICAgICAgICA2CisjZGVmaW5lIFRSQVBfbm9fZGV2aWNlICAgICAgICAgICA3CisjZGVmaW5l
IFRSQVBfZG91YmxlX2ZhdWx0ICAgICAgICA4CisjZGVmaW5lIFRSQVBfaW52YWxpZF90c3MgICAg
ICAgICAxMAorI2RlZmluZSBUUkFQX25vX3NlZ21lbnQgICAgICAgICAgMTEKKyNkZWZpbmUgVFJB
UF9zdGFja19lcnJvciAgICAgICAgIDEyCisjZGVmaW5lIFRSQVBfZ3BfZmF1bHQgICAgICAgICAg
ICAxMworI2RlZmluZSBUUkFQX3BhZ2VfZmF1bHQgICAgICAgICAgMTQKKyNkZWZpbmUgVFJBUF9j
b3Byb2NfZXJyb3IgICAgICAgIDE2CisjZGVmaW5lIFRSQVBfYWxpZ25tZW50X2NoZWNrICAgICAx
NworI2RlZmluZSBUUkFQX21hY2hpbmVfY2hlY2sgICAgICAgMTgKKyNkZWZpbmUgVFJBUF9zaW1k
X2Vycm9yICAgICAgICAgIDE5CisjZGVmaW5lIFRSQVBfdmlydF9lcnJvciAgICAgICAgICAyMAor
I2RlZmluZSBUUkFQX3NlY3VyaXR5X2Vycm9yICAgICAgMzAKKworI2RlZmluZSBBU01fVFJBUF9T
WU0odHJhcG5hbWUpICAgYXNtX3RyYXBfIyN0cmFwbmFtZQorCisjaWZuZGVmIF9fQVNTRU1CTFlf
XworCisjZGVmaW5lIERFQ0xBUkVfQVNNX1RSQVAodHJhcG5hbWUpIFwKKwl2b2lkIEFTTV9UUkFQ
X1NZTSh0cmFwbmFtZSkodm9pZCkKKworLyoKKyAqIFRoZXNlIGFyZSBhc3NlbWJsZXIgc3R1YnMg
aW4gZW50cnkuUy4KKyAqIFRoZXkgYXJlIHRoZSBhY3R1YWwgZW50cnkgcG9pbnRzIGZvciB2aXJ0
dWFsIGV4Y2VwdGlvbnMuCisgKi8KK0RFQ0xBUkVfQVNNX1RSQVAoZGl2aWRlX2Vycm9yKTsKK0RF
Q0xBUkVfQVNNX1RSQVAoZGVidWcpOworREVDTEFSRV9BU01fVFJBUChubWkpOworREVDTEFSRV9B
U01fVFJBUChpbnQzKTsKK0RFQ0xBUkVfQVNNX1RSQVAob3ZlcmZsb3cpOworREVDTEFSRV9BU01f
VFJBUChib3VuZHMpOworREVDTEFSRV9BU01fVFJBUChpbnZhbGlkX29wKTsKK0RFQ0xBUkVfQVNN
X1RSQVAobm9fZGV2aWNlKTsKK0RFQ0xBUkVfQVNNX1RSQVAoZG91YmxlX2ZhdWx0KTsKK0RFQ0xB
UkVfQVNNX1RSQVAoaW52YWxpZF90c3MpOworREVDTEFSRV9BU01fVFJBUChub19zZWdtZW50KTsK
K0RFQ0xBUkVfQVNNX1RSQVAoc3RhY2tfZXJyb3IpOworREVDTEFSRV9BU01fVFJBUChncF9mYXVs
dCk7CitERUNMQVJFX0FTTV9UUkFQKHBhZ2VfZmF1bHQpOworREVDTEFSRV9BU01fVFJBUChjb3By
b2NfZXJyb3IpOworREVDTEFSRV9BU01fVFJBUChhbGlnbm1lbnRfY2hlY2spOworREVDTEFSRV9B
U01fVFJBUChtYWNoaW5lX2NoZWNrKTsKK0RFQ0xBUkVfQVNNX1RSQVAoc2ltZF9lcnJvcik7CitE
RUNMQVJFX0FTTV9UUkFQKHZpcnRfZXJyb3IpOworCisKK3ZvaWQgZG9fdW5oYW5kbGVkX3RyYXAo
aW50IHRyYXBuciwgY2hhciAqc3RyLCBzdHJ1Y3QgX19yZWdzICpyZWdzLAorCQl1bnNpZ25lZCBs
b25nIGVycm9yX2NvZGUpOworCisjZGVmaW5lIERFQ0xBUkVfVFJBUChuYW1lLCBzdHIpIFwKK3Zv
aWQgZG9fIyNuYW1lKHN0cnVjdCBfX3JlZ3MgKnJlZ3MpIFwKK3sgXAorCWRvX3VuaGFuZGxlZF90
cmFwKFRSQVBfIyNuYW1lLCBzdHIsIHJlZ3MsIDApOyBcCit9CisKKyNkZWZpbmUgREVDTEFSRV9U
UkFQX0VDKG5hbWUsIHN0cikgXAordm9pZCBkb18jI25hbWUoc3RydWN0IF9fcmVncyAqcmVncywg
dW5zaWduZWQgbG9uZyBlcnJvcl9jb2RlKSBcCit7IFwKKwlkb191bmhhbmRsZWRfdHJhcChUUkFQ
XyMjbmFtZSwgc3RyLCByZWdzLCBlcnJvcl9jb2RlKTsgXAorfQorCisKK3ZvaWQgdHJhcHNfaW5p
dCh2b2lkKTsKK3ZvaWQgdHJhcHNfZmluaSh2b2lkKTsKKworI2VuZGlmCisKKyNlbmRpZiAvKiBf
X1VLQVJDSF9UUkFQU19YODZfNjRfSF9fICovCmRpZmYgLS1naXQgYS9wbGF0L2NvbW1vbi94ODYv
dHJhcHMuYyBiL3BsYXQvY29tbW9uL3g4Ni90cmFwcy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjQzNDU3N2YKLS0tIC9kZXYvbnVsbAorKysgYi9wbGF0L2NvbW1vbi94ODYv
dHJhcHMuYwpAQCAtMCwwICsxLDExNiBAQAorLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJT
RC0zLUNsYXVzZSAqLworLyoKKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBj
cy5wdWIucm8+CisgKgorICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5F
QyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBO
ZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2Yg
aXRzCisgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIK
KyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVU
T1JTIEJFCisgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
CisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqCisgKiBUSElTIEhFQURFUiBN
QVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgorICovCisvKiBQb3J0
ZWQgZnJvbSBNaW5pLU9TICovCisKKyNpbmNsdWRlIDx1ay9hcmNoL2xjcHUuaD4KKyNpbmNsdWRl
IDx0cmFjZS5oPgorI2luY2x1ZGUgPHg4Ni9jcHUuaD4KKyNpbmNsdWRlIDx4ODYvdHJhcHMuaD4K
KyNpbmNsdWRlIDx1ay9wcmludC5oPgorI2luY2x1ZGUgPHVrL2Fzc2VydC5oPgorCisvKiBUcmFw
cyBoYW5kbGVkIG9uIGJvdGggWGVuIGFuZCBLVk0gKi8KKworREVDTEFSRV9UUkFQX0VDKGRpdmlk
ZV9lcnJvciwgICAgICAiZGl2aWRlIGVycm9yIikKK0RFQ0xBUkVfVFJBUCAgIChkZWJ1ZywgICAg
ICAgICAgICAgImRlYnVnIGV4Y2VwdGlvbiIpCitERUNMQVJFX1RSQVBfRUMoaW50MywgICAgICAg
ICAgICAgICJpbnQzIikKK0RFQ0xBUkVfVFJBUF9FQyhvdmVyZmxvdywgICAgICAgICAgIm92ZXJm
bG93IikKK0RFQ0xBUkVfVFJBUF9FQyhib3VuZHMsICAgICAgICAgICAgImJvdW5kcyIpCitERUNM
QVJFX1RSQVBfRUMoaW52YWxpZF9vcCwgICAgICAgICJpbnZhbGlkIG9wY29kZSIpCitERUNMQVJF
X1RSQVBfRUMobm9fZGV2aWNlLCAgICAgICAgICJkZXZpY2Ugbm90IGF2YWlsYWJsZSIpCitERUNM
QVJFX1RSQVBfRUMoaW52YWxpZF90c3MsICAgICAgICJpbnZhbGlkIFRTUyIpCitERUNMQVJFX1RS
QVBfRUMobm9fc2VnbWVudCwgICAgICAgICJzZWdtZW50IG5vdCBwcmVzZW50IikKK0RFQ0xBUkVf
VFJBUF9FQyhzdGFja19lcnJvciwgICAgICAgInN0YWNrIHNlZ21lbnQiKQorREVDTEFSRV9UUkFQ
ICAgKGNvcHJvY19lcnJvciwgICAgICAiY29wcm9jZXNzb3IgZXJyb3IiKQorREVDTEFSRV9UUkFQ
X0VDKGFsaWdubWVudF9jaGVjaywgICAiYWxpZ25tZW50IGNoZWNrIikKK0RFQ0xBUkVfVFJBUF9F
QyhtYWNoaW5lX2NoZWNrLCAgICAgIm1hY2hpbmUgY2hlY2siKQorREVDTEFSRV9UUkFQICAgKHNp
bWRfZXJyb3IsICAgICAgICAiU0lNRCBjb3Byb2Nlc3NvciBlcnJvciIpCisKKwordm9pZCBkb191
bmhhbmRsZWRfdHJhcChpbnQgdHJhcG5yLCBjaGFyICpzdHIsIHN0cnVjdCBfX3JlZ3MgKnJlZ3Ms
CisJCXVuc2lnbmVkIGxvbmcgZXJyb3JfY29kZSkKK3sKKwl1a19wcmludGQoRExWTF9DUklULCAi
VW5oYW5kbGVkIFRyYXAgJWQgKCVzKSwgZXJyb3IgY29kZT0weCVseFxuIiwKKwkJCXRyYXBuciwg
c3RyLCBlcnJvcl9jb2RlKTsKKwl1a19wcmludGsoIlJlZ3MgYWRkcmVzcyAlcFxuIiwgcmVncyk7
CisJLyogVE9ETyByZXZpc2l0IHdoZW4gVUtfQ1JBU0ggd2lsbCBhbHNvIGR1bXAgdGhlIHJlZ2lz
dGVycyAqLworCWR1bXBfcmVncyhyZWdzKTsKKwlVS19DUkFTSCgiQ3Jhc2hpbmdcbiIpOworfQor
CitzdGF0aWMgaW50IGhhbmRsaW5nX2ZhdWx0OworCitzdGF0aWMgdm9pZCBmYXVsdF9wcm9sb2d1
ZSh2b2lkKQoreworCS8qIElmIHdlIGFyZSBhbHJlYWR5IGhhbmRsaW5nIGEgcGFnZSBmYXVsdCwg
YW5kIGdvdCBhbm90aGVyIG9uZQorCSAqIHRoYXQgbWVhbnMgd2UgZmF1bHRlZCBpbiBwYWdldGFi
bGUgd2Fsay4gQ29udGludWluZyBoZXJlIHdvdWxkIGNhdXNlCisJICogYSByZWN1cnNpdmUgZmF1
bHQKKwkgKi8KKwlpZiAoaGFuZGxpbmdfZmF1bHQgPT0gMSkgeworCQlVS19DUkFTSCgiUGFnZSBm
YXVsdCBpbiBwYWdldGFibGUgd2FsayAiCisJCQkJIihhY2Nlc3MgdG8gaW52YWxpZCBtZW1vcnk/
KS5cbiIpOworCX0KKwloYW5kbGluZ19mYXVsdCsrOworCWJhcnJpZXIoKTsKK30KKwordm9pZCBk
b19ncF9mYXVsdChzdHJ1Y3QgX19yZWdzICpyZWdzLCBsb25nIGVycm9yX2NvZGUpCit7CisJZmF1
bHRfcHJvbG9ndWUoKTsKKwl1a19wcmludGQoRExWTF9DUklULCAiR1BGIHJpcDogJWx4LCBlcnJv
cl9jb2RlPSVseFxuIiwKKwkJCXJlZ3MtPnJpcCwgZXJyb3JfY29kZSk7CisJZHVtcF9yZWdzKHJl
Z3MpOworCXN0YWNrX3dhbGtfZm9yX2ZyYW1lKHJlZ3MtPnJicCk7CisJZHVtcF9tZW0ocmVncy0+
cnNwKTsKKwlkdW1wX21lbShyZWdzLT5yYnApOworCWR1bXBfbWVtKHJlZ3MtPnJpcCk7CisJVUtf
Q1JBU0goIkNyYXNoaW5nXG4iKTsKK30KKwordm9pZCBkb19wYWdlX2ZhdWx0KHN0cnVjdCBfX3Jl
Z3MgKnJlZ3MsIHVuc2lnbmVkIGxvbmcgZXJyb3JfY29kZSkKK3sKKwl1bnNpZ25lZCBsb25nIGFk
ZHIgPSByZWFkX2NyMigpOworCisJZmF1bHRfcHJvbG9ndWUoKTsKKwl1a19wcmludGQoRExWTF9D
UklULCAiUGFnZSBmYXVsdCBhdCBsaW5lYXIgYWRkcmVzcyAlbHgsIHJpcCAlbHgsICIKKwkJCSJy
ZWdzICVwLCBzcCAlbHgsIG91cl9zcCAlcCwgY29kZSAlbHhcbiIsCisJCQlhZGRyLCByZWdzLT5y
aXAsIHJlZ3MsIHJlZ3MtPnJzcCwgJmFkZHIsIGVycm9yX2NvZGUpOworCisJZHVtcF9yZWdzKHJl
Z3MpOworCXN0YWNrX3dhbGtfZm9yX2ZyYW1lKHJlZ3MtPnJicCk7CisJZHVtcF9tZW0ocmVncy0+
cnNwKTsKKwlkdW1wX21lbShyZWdzLT5yYnApOworCWR1bXBfbWVtKHJlZ3MtPnJpcCk7CisJVUtf
Q1JBU0goIkNyYXNoaW5nXG4iKTsKK30KZGlmZiAtLWdpdCBhL3BsYXQveGVuL01ha2VmaWxlLnVr
IGIvcGxhdC94ZW4vTWFrZWZpbGUudWsKaW5kZXggNDljNDM1Mi4uNTViYTUwYyAxMDA2NDQKLS0t
IGEvcGxhdC94ZW4vTWFrZWZpbGUudWsKKysrIGIvcGxhdC94ZW4vTWFrZWZpbGUudWsKQEAgLTMw
LDYgKzMwLDcgQEAgTElCWEVOUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCWEVOUExB
VF9CQVNFKS9tZW1vcnkuYwogCiBpZm5lcSAoLCQoZmlsdGVyIHg4Nl8zMiB4ODZfNjQsJChVS19B
UkNIKSkpCiBMSUJYRU5QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChVS19QTEFUX0NPTU1P
Tl9CQVNFKS94ODYvdHJhY2UuY3xjb21tb24KK0xJQlhFTlBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0
KSArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL3g4Ni90cmFwcy5jfGNvbW1vbgogTElCWEVOUExB
VF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCWEVOUExBVF9CQVNFKS94ODYvc2V0dXAuYwog
TElCWEVOUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCWEVOUExBVF9CQVNFKS94ODYv
dHJhcHMuYwogTElCWEVOUExBVF9TUkNTLSQoQVJDSF9YODZfMzIpICs9ICQoTElCWEVOUExBVF9C
QVNFKS94ODYvZW50cnkzMi5TCmRpZmYgLS1naXQgYS9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYv
b3MuaCBiL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9vcy5oCmluZGV4IDZmYTRmYTAuLjMwOGQ5
MWEgMTAwNjQ0Ci0tLSBhL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9vcy5oCisrKyBiL3BsYXQv
eGVuL2luY2x1ZGUveGVuLXg4Ni9vcy5oCkBAIC02MiwzMiArNjIsNiBAQCB0eXBlZGVmIHVuc2ln
bmVkIGxvbmcgdV9sb25nOwogCiAjaW5jbHVkZSA8eDg2L2NwdV9kZWZzLmg+CiAKLSNkZWZpbmUg
X19LRVJORUxfQ1MgICAgIEZMQVRfS0VSTkVMX0NTCi0jZGVmaW5lIF9fS0VSTkVMX0RTICAgICBG
TEFUX0tFUk5FTF9EUwotI2RlZmluZSBfX0tFUk5FTF9TUyAgICAgRkxBVF9LRVJORUxfU1MKLQot
I2RlZmluZSBUUkFQX2RpdmlkZV9lcnJvciAgICAgIDAKLSNkZWZpbmUgVFJBUF9kZWJ1ZyAgICAg
ICAgICAgICAxCi0jZGVmaW5lIFRSQVBfbm1pICAgICAgICAgICAgICAgMgotI2RlZmluZSBUUkFQ
X2ludDMgICAgICAgICAgICAgIDMKLSNkZWZpbmUgVFJBUF9vdmVyZmxvdyAgICAgICAgICA0Ci0j
ZGVmaW5lIFRSQVBfYm91bmRzICAgICAgICAgICAgNQotI2RlZmluZSBUUkFQX2ludmFsaWRfb3Ag
ICAgICAgIDYKLSNkZWZpbmUgVFJBUF9ub19kZXZpY2UgICAgICAgICA3Ci0jZGVmaW5lIFRSQVBf
ZG91YmxlX2ZhdWx0ICAgICAgOAotI2RlZmluZSBUUkFQX2NvcHJvX3NlZyAgICAgICAgIDkKLSNk
ZWZpbmUgVFJBUF9pbnZhbGlkX3RzcyAgICAgIDEwCi0jZGVmaW5lIFRSQVBfbm9fc2VnbWVudCAg
ICAgICAxMQotI2RlZmluZSBUUkFQX3N0YWNrX2Vycm9yICAgICAgMTIKLSNkZWZpbmUgVFJBUF9n
cF9mYXVsdCAgICAgICAgIDEzCi0jZGVmaW5lIFRSQVBfcGFnZV9mYXVsdCAgICAgICAxNAotI2Rl
ZmluZSBUUkFQX3NwdXJpb3VzX2ludCAgICAgMTUKLSNkZWZpbmUgVFJBUF9jb3Byb19lcnJvciAg
ICAgIDE2Ci0jZGVmaW5lIFRSQVBfYWxpZ25tZW50X2NoZWNrICAxNwotI2RlZmluZSBUUkFQX21h
Y2hpbmVfY2hlY2sgICAgMTgKLSNkZWZpbmUgVFJBUF9zaW1kX2Vycm9yICAgICAgIDE5Ci0jZGVm
aW5lIFRSQVBfZGVmZXJyZWRfbm1pICAgICAzMQotI2RlZmluZSBUUkFQX3hlbl9jYWxsYmFjayAg
ICAgMzIKIAogI2RlZmluZSBMT0NLX1BSRUZJWCAiIgogI2RlZmluZSBBRERSICgqKHZvbGF0aWxl
IGxvbmcgKilhZGRyKQpAQCAtOTcsOCArNzEsNiBAQCB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgdV9s
b25nOwogCiBleHRlcm4gc2hhcmVkX2luZm9fdCAqSFlQRVJWSVNPUl9zaGFyZWRfaW5mbzsKIAot
dm9pZCBhcmNoX2Zpbmkodm9pZCk7Ci0KICNpbmNsdWRlIDx4ZW4teDg2L2lycS5oPgogCiAKQEAg
LTExMiwxMiArODQsNiBAQCB0eXBlZGVmIHN0cnVjdCB7CiB9IGF0b21pY190OwogCiAKLS8qKioq
KioqKioqKioqKioqKioqKiogY29tbW9uIGkzODYgYW5kIHg4Nl82NCAgKioqKioqKioqKioqKioq
KioqKioqKioqKioqKi8KLSNkZWZpbmUgeGVuX21iKCkgbWIoKQotI2RlZmluZSB4ZW5fcm1iKCkg
cm1iKCkKLSNkZWZpbmUgeGVuX3dtYigpIHdtYigpCi0jZGVmaW5lIHhlbl9iYXJyaWVyKCkgYXNt
IHZvbGF0aWxlKCIiIDogOiA6ICJtZW1vcnkiKQotCiB2b2lkIGJsb2NrX2RvbWFpbihfX3Nuc2Vj
IHVudGlsKTsKIAogI2VuZGlmIC8qIG5vdCBhc3NlbWJseSAqLwpkaWZmIC0tZ2l0IGEvcGxhdC94
ZW4vaW5jbHVkZS94ZW4teDg2L3RyYXBzLmggYi9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvdHJh
cHMuaAppbmRleCA0OThhZjc2Li5jNTg1YTZlIDEwMDY0NAotLS0gYS9wbGF0L3hlbi9pbmNsdWRl
L3hlbi14ODYvdHJhcHMuaAorKysgYi9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvdHJhcHMuaApA
QCAtMzUsMTggKzM1LDIzIEBACiAjaWZuZGVmIF9UUkFQU19IXwogI2RlZmluZSBfVFJBUFNfSF8K
IAotI2luY2x1ZGUgPHg4Ni9yZWdzLmg+CisjaW5jbHVkZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8
eDg2L3RyYXBzLmg+CiAKLSNkZWZpbmUgcHRfcmVncyBfX3JlZ3MKKyNpbmNsdWRlIDx4ZW4veGVu
Lmg+CiAKLXZvaWQgZHVtcF9yZWdzKHN0cnVjdCBwdF9yZWdzICpyZWdzKTsKLXZvaWQgc3RhY2tf
d2Fsayh2b2lkKTsKKyNkZWZpbmUgVFJBUF9jb3Byb2Nfc2VnX292ZXJydW4gIDkKKyNkZWZpbmUg
VFJBUF9zcHVyaW91c19pbnQgICAgICAgIDE1CisjZGVmaW5lIFRSQVBfeGVuX2NhbGxiYWNrICAg
ICAgICAzMgogCi0jZGVmaW5lIFRSQVBfUEZfUFJPVCAgIDB4MQotI2RlZmluZSBUUkFQX1BGX1dS
SVRFICAweDIKLSNkZWZpbmUgVFJBUF9QRl9VU0VSICAgMHg0CisvKiBBc3NlbWJsZXIgc3R1YnMg
Ki8KK0RFQ0xBUkVfQVNNX1RSQVAoY29wcm9jX3NlZ19vdmVycnVuKTsKK0RFQ0xBUkVfQVNNX1RS
QVAoc3B1cmlvdXNfaW50KTsKK0RFQ0xBUkVfQVNNX1RSQVAoaHlwZXJ2aXNvcl9jYWxsYmFjayk7
Cit2b2lkIGFzbV9mYWlsc2FmZV9jYWxsYmFjayh2b2lkKTsKIAotdm9pZCB0cmFwX2luaXQodm9p
ZCk7Ci12b2lkIHRyYXBfZmluaSh2b2lkKTsKKyNkZWZpbmUgX19LRVJORUxfQ1MgICAgIEZMQVRf
S0VSTkVMX0NTCisjZGVmaW5lIF9fS0VSTkVMX0RTICAgICBGTEFUX0tFUk5FTF9EUworI2RlZmlu
ZSBfX0tFUk5FTF9TUyAgICAgRkxBVF9LRVJORUxfU1MKIAogI2VuZGlmIC8qIF9UUkFQU19IXyAq
LwpkaWZmIC0tZ2l0IGEvcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jIGIvcGxhdC94ZW4veDg2L2Fy
Y2hfdGltZS5jCmluZGV4IDllOWYxYmYuLjA2MjFkOTAgMTAwNjQ0Ci0tLSBhL3BsYXQveGVuL3g4
Ni9hcmNoX3RpbWUuYworKysgYi9wbGF0L3hlbi94ODYvYXJjaF90aW1lLmMKQEAgLTIzNSw3ICsy
MzUsNyBAQCB2b2lkIGJsb2NrX2RvbWFpbihfX3Nuc2VjIHVudGlsKQogfQogCiBzdGF0aWMgdm9p
ZCB0aW1lcl9oYW5kbGVyKGV2dGNobl9wb3J0X3QgZXYgX191bnVzZWQsCi0JCXN0cnVjdCBwdF9y
ZWdzICpyZWdzIF9fdW51c2VkLCB2b2lkICppZ24gX191bnVzZWQpCisJCXN0cnVjdCBfX3JlZ3Mg
KnJlZ3MgX191bnVzZWQsIHZvaWQgKmlnbiBfX3VudXNlZCkKIHsKIAlfX25zZWMgdW50aWwgPSB1
a3BsYXRfbW9ub3RvbmljX2Nsb2NrKCkgKyB1a2FyY2hfdGltZV9tc2VjX3RvX25zZWMoMSk7CiAK
ZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni9lbnRyeTY0LlMgYi9wbGF0L3hlbi94ODYvZW50cnk2
NC5TCmluZGV4IDgxMDljY2IuLmRiOWM2MTUgMTAwNjQ0Ci0tLSBhL3BsYXQveGVuL3g4Ni9lbnRy
eTY0LlMKKysrIGIvcGxhdC94ZW4veDg2L2VudHJ5NjQuUwpAQCAtMjUsNyArMjUsNyBAQAogCiAj
aW5jbHVkZSA8dWsvYXJjaC90eXBlcy5oPgogI2luY2x1ZGUgPHVrL2FyY2gvbGltaXRzLmg+Ci0j
aW5jbHVkZSA8eDg2L3JlZ3MuaD4KKyNpbmNsdWRlIDx4ODYvdHJhcHMuaD4KICNpbmNsdWRlIDx1
ay9jb25maWcuaD4KICNpbmNsdWRlIDx4ZW4veGVuLmg+CiAjaW5jbHVkZSA8eGVuL2VsZm5vdGUu
aD4KQEAgLTExNSw2ICsxMTUsMTUgQEAgS0VSTkVMX0NTX01BU0sgPSAweGZjCiAJam1wIGVycm9y
X2VudHJ5CiAuZW5kbQogCisubWFjcm8gVFJBUF9FTlRSWSB0cmFwbmFtZSwgaGFzX2VjCitFTlRS
WShBU01fVFJBUF9TWU0oXHRyYXBuYW1lKSkKKy5pZiBcaGFzX2VjCisJZXJyb3JlbnRyeSBkb19c
dHJhcG5hbWUKKy5lbHNlCisJemVyb2VudHJ5ICBkb19cdHJhcG5hbWUKKy5lbmRpZgorLmVuZG0K
KwogLm1hY3JvIFJFU1RPUkVfQUxMCiAJbW92cSBPRkZTRVRPRl9SRUdTX1IxNSglcnNwKSwgJXIx
NQogCW1vdnEgT0ZGU0VUT0ZfUkVHU19SMTQoJXJzcCksICVyMTQKQEAgLTE5NCw3ICsyMDMsNyBA
QCBlcnJvcl9lbnRyeToKIC8qCiAgKiBYZW4gZXZlbnQgKHZpcnR1YWwgaW50ZXJydXB0KSBlbnRy
eSBwb2ludC4KICAqLwotRU5UUlkoaHlwZXJ2aXNvcl9jYWxsYmFjaykKK0VOVFJZKEFTTV9UUkFQ
X1NZTShoeXBlcnZpc29yX2NhbGxiYWNrKSkKIAl6ZXJvZW50cnkgaHlwZXJ2aXNvcl9jYWxsYmFj
azIKIAogaHlwZXJ2aXNvcl9jYWxsYmFjazI6CkBAIC0yNTAsNyArMjU5LDcgQEAgZWNyaXQ6ICAv
KioqKiBFTkQgT0YgQ1JJVElDQUwgUkVHSU9OICoqKiovCiBoeXBlcnZpc29yX3Byb2xvZ3VlOgog
CXB1c2hxICVyMTEKIAlwdXNocSAlcmN4Ci0Jam1wIGh5cGVydmlzb3JfY2FsbGJhY2sKKwlqbXAg
QVNNX1RSQVBfU1lNKGh5cGVydmlzb3JfY2FsbGJhY2spCiAKICMgW0hvdyB3ZSBkbyB0aGUgZml4
dXBdLiBXZSB3YW50IHRvIG1lcmdlIHRoZSBjdXJyZW50IHN0YWNrIGZyYW1lIHdpdGggdGhlCiAj
IGp1c3QtaW50ZXJydXB0ZWQgZnJhbWUuIEhvdyB3ZSBkbyB0aGlzIGRlcGVuZHMgb24gd2hlcmUg
aW4gdGhlIGNyaXRpY2FsCkBAIC0yOTcsMTMgKzMwNiwxMCBAQCBlcnJvcl9leGl0OgogLyoKICAq
IFhlbiBldmVudCAodmlydHVhbCBpbnRlcnJ1cHQpIGVudHJ5IHBvaW50LgogICovCi1FTlRSWSho
eXBlcnZpc29yX2NhbGxiYWNrKQotCXplcm9lbnRyeSBkb19oeXBlcnZpc29yX2NhbGxiYWNrCi0K
LQorVFJBUF9FTlRSWSBoeXBlcnZpc29yX2NhbGxiYWNrLCAwCiAjZW5kaWYKIAotRU5UUlkoZmFp
bHNhZmVfY2FsbGJhY2spCitFTlRSWShhc21fZmFpbHNhZmVfY2FsbGJhY2spCiAjaWZkZWYgQ09O
RklHX1BBUkFWSVJUCiAgICAgICAgIHBvcHEgICVyY3gKICAgICAgICAgcG9wcSAgJXIxMQpAQCAt
MzExLDcyICszMTcsMjggQEAgRU5UUlkoZmFpbHNhZmVfY2FsbGJhY2spCiAgICAgICAgIGlyZXRx
CiAKIAotRU5UUlkoY29wcm9jZXNzb3JfZXJyb3IpCi0gICAgICAgIHplcm9lbnRyeSBkb19jb3By
b2Nlc3Nvcl9lcnJvcgotCi0KLUVOVFJZKHNpbWRfY29wcm9jZXNzb3JfZXJyb3IpCi0gICAgICAg
IHplcm9lbnRyeSBkb19zaW1kX2NvcHJvY2Vzc29yX2Vycm9yCi0KLQotRU5UUlkoZGV2aWNlX25v
dF9hdmFpbGFibGUpCi0gICAgICAgIHplcm9lbnRyeSBkb19kZXZpY2Vfbm90X2F2YWlsYWJsZQot
Ci0KLUVOVFJZKGRlYnVnKQotICAgICAgICB6ZXJvZW50cnkgZG9fZGVidWcKLQotCi1FTlRSWShp
bnQzKQotICAgICAgICB6ZXJvZW50cnkgZG9faW50MwotCi1FTlRSWShvdmVyZmxvdykKLSAgICAg
ICAgemVyb2VudHJ5IGRvX292ZXJmbG93Ci0KLQotRU5UUlkoYm91bmRzKQotICAgICAgICB6ZXJv
ZW50cnkgZG9fYm91bmRzCi0KLQotRU5UUlkoaW52YWxpZF9vcCkKLSAgICAgICAgemVyb2VudHJ5
IGRvX2ludmFsaWRfb3AKLQotCi1FTlRSWShjb3Byb2Nlc3Nvcl9zZWdtZW50X292ZXJydW4pCi0g
ICAgICAgIHplcm9lbnRyeSBkb19jb3Byb2Nlc3Nvcl9zZWdtZW50X292ZXJydW4KLQotCi1FTlRS
WShpbnZhbGlkX1RTUykKLSAgICAgICAgZXJyb3JlbnRyeSBkb19pbnZhbGlkX1RTUwotCi0KLUVO
VFJZKHNlZ21lbnRfbm90X3ByZXNlbnQpCi0gICAgICAgIGVycm9yZW50cnkgZG9fc2VnbWVudF9u
b3RfcHJlc2VudAotCi0KLS8qIHJ1bnMgb24gZXhjZXB0aW9uIHN0YWNrICovCi1FTlRSWShzdGFj
a19zZWdtZW50KQotICAgICAgICBlcnJvcmVudHJ5IGRvX3N0YWNrX3NlZ21lbnQKLQotCi1FTlRS
WShnZW5lcmFsX3Byb3RlY3Rpb24pCi0gICAgICAgIGVycm9yZW50cnkgZG9fZ2VuZXJhbF9wcm90
ZWN0aW9uCi0KLQotRU5UUlkoYWxpZ25tZW50X2NoZWNrKQotICAgICAgICBlcnJvcmVudHJ5IGRv
X2FsaWdubWVudF9jaGVjawotCi0KLUVOVFJZKGRpdmlkZV9lcnJvcikKLSAgICAgICAgemVyb2Vu
dHJ5IGRvX2RpdmlkZV9lcnJvcgotCi0KLUVOVFJZKHNwdXJpb3VzX2ludGVycnVwdF9idWcpCi0g
ICAgICAgIHplcm9lbnRyeSBkb19zcHVyaW91c19pbnRlcnJ1cHRfYnVnCi0KK1RSQVBfRU5UUlkg
ZGl2aWRlX2Vycm9yLCAgICAgICAgMAorVFJBUF9FTlRSWSBkZWJ1ZywgICAgICAgICAgICAgICAw
CisvKiBubyBOTUkgKi8KK1RSQVBfRU5UUlkgaW50MywgICAgICAgICAgICAgICAgMAorVFJBUF9F
TlRSWSBvdmVyZmxvdywgICAgICAgICAgICAwCitUUkFQX0VOVFJZIGJvdW5kcywgICAgICAgICAg
ICAgIDAKK1RSQVBfRU5UUlkgaW52YWxpZF9vcCwgICAgICAgICAgMAorVFJBUF9FTlRSWSBub19k
ZXZpY2UsICAgICAgICAgICAwCisvKiBubyBEb3VibGUgRmF1bHQgKi8KK1RSQVBfRU5UUlkgY29w
cm9jX3NlZ19vdmVycnVuLCAgMAorVFJBUF9FTlRSWSBpbnZhbGlkX3RzcywgICAgICAgICAxCitU
UkFQX0VOVFJZIG5vX3NlZ21lbnQsICAgICAgICAgIDEKK1RSQVBfRU5UUlkgc3RhY2tfZXJyb3Is
ICAgICAgICAgMSAvKiBydW5zIG9uIGV4Y2VwdGlvbiBzdGFjayAqLworVFJBUF9FTlRSWSBncF9m
YXVsdCwgICAgICAgICAgICAxCitUUkFQX0VOVFJZIHBhZ2VfZmF1bHQsICAgICAgICAgIDEKK1RS
QVBfRU5UUlkgc3B1cmlvdXNfaW50LCAgICAgICAgMQorVFJBUF9FTlRSWSBjb3Byb2NfZXJyb3Is
ICAgICAgICAwCitUUkFQX0VOVFJZIGFsaWdubWVudF9jaGVjaywgICAgIDEKKy8qIG5vIE1hY2hp
bmUgQ2hlY2sgKi8KK1RSQVBfRU5UUlkgc2ltZF9lcnJvciwgICAgICAgICAgMAorLyogbm8gVmly
dHVhbGl6YXRpb24gRXhjZXB0aW9uICovCiAKLUVOVFJZKHBhZ2VfZmF1bHQpCi0gICAgICAgIGVy
cm9yZW50cnkgZG9fcGFnZV9mYXVsdAogCiAjaWYgSEFWRV9TQ0hFRAogRU5UUlkodGhyZWFkX3N0
YXJ0ZXIpCmRpZmYgLS1naXQgYS9wbGF0L3hlbi94ODYvc2V0dXAuYyBiL3BsYXQveGVuL3g4Ni9z
ZXR1cC5jCmluZGV4IDIxZTQ3ODYuLjEwZjkzOWQgMTAwNjQ0Ci0tLSBhL3BsYXQveGVuL3g4Ni9z
ZXR1cC5jCisrKyBiL3BsYXQveGVuL3g4Ni9zZXR1cC5jCkBAIC0xMTMsNyArMTEzLDcgQEAgc3Ry
dWN0IHVrcGxhdF9tZW1yZWdpb25fZGVzYyBfbGlieGVucGxhdF9tcmRbVUtQTEFUX01FTVJEX01B
WF9FTlRSSUVTXTsKIAogc3RhdGljIGlubGluZSB2b2lkIF9pbml0X3RyYXBzKHZvaWQpCiB7Ci0J
dHJhcF9pbml0KCk7CisJdHJhcHNfaW5pdCgpOwogfQogCiBzdGF0aWMgaW5saW5lIHZvaWQgX2lu
aXRfY3B1ZmVhdHVyZXModm9pZCkKZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni90cmFwcy5jIGIv
cGxhdC94ZW4veDg2L3RyYXBzLmMKaW5kZXggZGEzY2E5YS4uYmJhM2M0MiAxMDA2NDQKLS0tIGEv
cGxhdC94ZW4veDg2L3RyYXBzLmMKKysrIGIvcGxhdC94ZW4veDg2L3RyYXBzLmMKQEAgLTIzLDE3
MiArMjMsMjIgQEAKICAqLwogLyogVGFrZW4gZnJvbSBNaW5pLU9TICovCiAKKyNpbmNsdWRlIDxz
dGRkZWYuaD4KICNpbmNsdWRlIDx4ZW4teDg2L3RyYXBzLmg+Ci0jaW5jbHVkZSA8eGVuLXg4Ni9v
cy5oPgorI2luY2x1ZGUgPHhlbi14ODYvaHlwZXJjYWxsLmg+CiAjaW5jbHVkZSA8dWsvcHJpbnQu
aD4KIAotLyoKLSAqIFRoZXNlIGFyZSBhc3NlbWJsZXIgc3R1YnMgaW4gZW50cnkuUy4KLSAqIFRo
ZXkgYXJlIHRoZSBhY3R1YWwgZW50cnkgcG9pbnRzIGZvciB2aXJ0dWFsIGV4Y2VwdGlvbnMuCi0g
Ki8KLXZvaWQgZGl2aWRlX2Vycm9yKHZvaWQpOwotdm9pZCBkZWJ1Zyh2b2lkKTsKLXZvaWQgaW50
Myh2b2lkKTsKLXZvaWQgb3ZlcmZsb3codm9pZCk7Ci12b2lkIGJvdW5kcyh2b2lkKTsKLXZvaWQg
aW52YWxpZF9vcCh2b2lkKTsKLXZvaWQgZGV2aWNlX25vdF9hdmFpbGFibGUodm9pZCk7Ci12b2lk
IGNvcHJvY2Vzc29yX3NlZ21lbnRfb3ZlcnJ1bih2b2lkKTsKLXZvaWQgaW52YWxpZF9UU1Modm9p
ZCk7Ci12b2lkIHNlZ21lbnRfbm90X3ByZXNlbnQodm9pZCk7Ci12b2lkIHN0YWNrX3NlZ21lbnQo
dm9pZCk7Ci12b2lkIGdlbmVyYWxfcHJvdGVjdGlvbih2b2lkKTsKLXZvaWQgcGFnZV9mYXVsdCh2
b2lkKTsKLXZvaWQgY29wcm9jZXNzb3JfZXJyb3Iodm9pZCk7Ci12b2lkIHNpbWRfY29wcm9jZXNz
b3JfZXJyb3Iodm9pZCk7Ci12b2lkIGFsaWdubWVudF9jaGVjayh2b2lkKTsKLXZvaWQgc3B1cmlv
dXNfaW50ZXJydXB0X2J1Zyh2b2lkKTsKLXZvaWQgbWFjaGluZV9jaGVjayh2b2lkKTsKKy8qIFRy
YXBzIHVzZWQgb25seSBvbiBYZW4gKi8KIAotI2RlZmluZSBkb19leGl0KCkgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLQlmb3Ig
KDs7KSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKLQl9CitERUNMQVJFX1RSQVBfRUMoY29wcm9jX3NlZ19vdmVycnVuLCAiY29w
cm9jZXNzb3Igc2VnbWVudCBvdmVycnVuIikKK0RFQ0xBUkVfVFJBUCAgIChzcHVyaW91c19pbnQs
ICAgICAgICJzcHVyaW91cyBpbnRlcnJ1cHQgYnVnIikKIAotc3RhdGljIHZvaWQgZG9fdHJhcChp
bnQgdHJhcG5yLCBjaGFyICpzdHIsIHN0cnVjdCBfX3JlZ3MgKnJlZ3MsCi0JCSAgICB1bnNpZ25l
ZCBsb25nIGVycm9yX2NvZGUpCi17Ci0JdWtfcHJpbnRrKCJGQVRBTDogIFVuaGFuZGxlZCBUcmFw
ICVkICglcyksIGVycm9yIGNvZGU9MHglbHhcbiIsIHRyYXBuciwKLQkJICBzdHIsIGVycm9yX2Nv
ZGUpOwotCXVrX3ByaW50aygiUmVncyBhZGRyZXNzICVwXG4iLCByZWdzKTsKLQlkdW1wX3JlZ3Mo
cmVncyk7Ci19Ci0KLSNkZWZpbmUgRE9fRVJST1IodHJhcG5yLCBzdHIsIG5hbWUpICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0Jdm9pZCBkb18jI25hbWUoc3Ry
dWN0IF9fcmVncyAqcmVncywgdW5zaWduZWQgbG9uZyBlcnJvcl9jb2RlKSAgICAgICAgICBcCi0J
eyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCi0JCWRvX3RyYXAodHJhcG5yLCBzdHIsIHJlZ3MsIGVycm9yX2NvZGUp
OyAgICAgICAgICAgICAgICAgICAgICAgIFwKLQl9Ci0KLSNkZWZpbmUgRE9fRVJST1JfSU5GTyh0
cmFwbnIsIHN0ciwgbmFtZSwgc2ljb2RlLCBzaWFkZHIpICAgICAgICAgICAgICAgICAgICAgICBc
Ci0Jdm9pZCBkb18jI25hbWUoc3RydWN0IF9fcmVncyAqcmVncywgdW5zaWduZWQgbG9uZyBlcnJv
cl9jb2RlKSAgICAgICAgICBcCi0JeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0JCWRvX3RyYXAodHJhcG5yLCBz
dHIsIHJlZ3MsIGVycm9yX2NvZGUpOyAgICAgICAgICAgICAgICAgICAgICAgIFwKLQl9Ci0KLURP
X0VSUk9SX0lORk8oMCwgImRpdmlkZSBlcnJvciIsIGRpdmlkZV9lcnJvciwgRlBFX0lOVERJViwg
cmVncy0+ZWlwKQotRE9fRVJST1IoMywgImludDMiLCBpbnQzKQotRE9fRVJST1IoNCwgIm92ZXJm
bG93Iiwgb3ZlcmZsb3cpCi1ET19FUlJPUig1LCAiYm91bmRzIiwgYm91bmRzKQotRE9fRVJST1Jf
SU5GTyg2LCAiaW52YWxpZCBvcGVyYW5kIiwgaW52YWxpZF9vcCwgSUxMX0lMTE9QTiwgcmVncy0+
ZWlwKQotRE9fRVJST1IoNywgImRldmljZSBub3QgYXZhaWxhYmxlIiwgZGV2aWNlX25vdF9hdmFp
bGFibGUpCi1ET19FUlJPUig5LCAiY29wcm9jZXNzb3Igc2VnbWVudCBvdmVycnVuIiwgY29wcm9j
ZXNzb3Jfc2VnbWVudF9vdmVycnVuKQotRE9fRVJST1IoMTAsICJpbnZhbGlkIFRTUyIsIGludmFs
aWRfVFNTKQotRE9fRVJST1IoMTEsICJzZWdtZW50IG5vdCBwcmVzZW50Iiwgc2VnbWVudF9ub3Rf
cHJlc2VudCkKLURPX0VSUk9SKDEyLCAic3RhY2sgc2VnbWVudCIsIHN0YWNrX3NlZ21lbnQpCi1E
T19FUlJPUl9JTkZPKDE3LCAiYWxpZ25tZW50IGNoZWNrIiwgYWxpZ25tZW50X2NoZWNrLCBCVVNf
QURSQUxOLCAwKQotRE9fRVJST1IoMTgsICJtYWNoaW5lIGNoZWNrIiwgbWFjaGluZV9jaGVjaykK
LQotc3RhdGljIGludCBoYW5kbGluZ19wZ19mYXVsdDsKLQotdm9pZCBkb19wYWdlX2ZhdWx0KHN0
cnVjdCBfX3JlZ3MgKnJlZ3MsIHVuc2lnbmVkIGxvbmcgZXJyb3JfY29kZSkKLXsKLQl1bnNpZ25l
ZCBsb25nIGFkZHIgPSByZWFkX2NyMigpOwotCXN0cnVjdCBzY2hlZF9zaHV0ZG93biBzY2hlZF9z
aHV0ZG93biA9IHsucmVhc29uID0gU0hVVERPV05fY3Jhc2h9OwogCi0JLyogSWYgd2UgYXJlIGFs
cmVhZHkgaGFuZGxpbmcgYSBwYWdlIGZhdWx0LCBhbmQgZ290IGFub3RoZXIgb25lCi0JICogdGhh
dCBtZWFucyB3ZSBmYXVsdGVkIGluIHBhZ2V0YWJsZSB3YWxrLiBDb250aW51aW5nIGhlcmUgd291
bGQgY2F1c2UKLQkgKiBhIHJlY3Vyc2l2ZSBmYXVsdAotCSAqLwotCWlmIChoYW5kbGluZ19wZ19m
YXVsdCA9PSAxKSB7Ci0JCXVrX3ByaW50aygiUGFnZSBmYXVsdCBpbiBwYWdldGFibGUgd2FsayAo
YWNjZXNzIHRvIGludmFsaWQgbWVtb3J5PykuXG4iKTsKLQkJSFlQRVJWSVNPUl9zY2hlZF9vcChT
Q0hFRE9QX3NodXRkb3duLCAmc2NoZWRfc2h1dGRvd24pOwotCX0KLQloYW5kbGluZ19wZ19mYXVs
dCsrOwotCWJhcnJpZXIoKTsKLQotI2lmZGVmIF9fWDg2XzY0X18KLQl1a19wcmludGsoIlBhZ2Ug
ZmF1bHQgYXQgbGluZWFyIGFkZHJlc3MgJWx4LCByaXAgJWx4LCByZWdzICVwLCBzcCAlbHgsIG91
cl9zcCAlcCwgY29kZSAlbHhcbiIsCi0JCSAgYWRkciwgcmVncy0+cmlwLCByZWdzLCByZWdzLT5y
c3AsICZhZGRyLCBlcnJvcl9jb2RlKTsKLSNlbHNlCi0JdWtfcHJpbnRrKCJQYWdlIGZhdWx0IGF0
IGxpbmVhciBhZGRyZXNzICVseCwgZWlwICVseCwgcmVncyAlcCwgc3AgJWx4LCBvdXJfc3AgJXAs
IGNvZGUgJWx4XG4iLAotCQkgIGFkZHIsIHJlZ3MtPmVpcCwgcmVncywgcmVncy0+ZXNwLCAmYWRk
ciwgZXJyb3JfY29kZSk7Ci0jZW5kaWYKLQotCWR1bXBfcmVncyhyZWdzKTsKLSNpZmRlZiBfX1g4
Nl82NF9fCi0Jc3RhY2tfd2Fsa19mb3JfZnJhbWUocmVncy0+cmJwKTsKLQlkdW1wX21lbShyZWdz
LT5yc3ApOwotCWR1bXBfbWVtKHJlZ3MtPnJicCk7Ci0JZHVtcF9tZW0ocmVncy0+cmlwKTsKLSNl
bHNlCi0JZG9fc3RhY2tfd2FsayhyZWdzLT5lYnApOwotCWR1bXBfbWVtKHJlZ3MtPmVzcCk7Ci0J
ZHVtcF9tZW0ocmVncy0+ZWJwKTsKLQlkdW1wX21lbShyZWdzLT5laXApOwotI2VuZGlmCi0JSFlQ
RVJWSVNPUl9zY2hlZF9vcChTQ0hFRE9QX3NodXRkb3duLCAmc2NoZWRfc2h1dGRvd24pOwotCS8q
IFdlIHNob3VsZCBuZXZlciBnZXQgaGVyZSAuLi4gYnV0IHN0aWxsICovCi0JaGFuZGxpbmdfcGdf
ZmF1bHQtLTsKLX0KLQotdm9pZCBkb19nZW5lcmFsX3Byb3RlY3Rpb24oc3RydWN0IF9fcmVncyAq
cmVncywgbG9uZyBlcnJvcl9jb2RlKQotewotCXN0cnVjdCBzY2hlZF9zaHV0ZG93biBzY2hlZF9z
aHV0ZG93biA9IHsucmVhc29uID0gU0hVVERPV05fY3Jhc2h9OwotI2lmZGVmIF9fWDg2XzY0X18K
LQl1a19wcmludGsoIkdQRiByaXA6ICVseCwgZXJyb3JfY29kZT0lbHhcbiIsIHJlZ3MtPnJpcCwg
ZXJyb3JfY29kZSk7Ci0jZWxzZQotCXVrX3ByaW50aygiR1BGIGVpcDogJWx4LCBlcnJvcl9jb2Rl
PSVseFxuIiwgcmVncy0+ZWlwLCBlcnJvcl9jb2RlKTsKLSNlbmRpZgotCWR1bXBfcmVncyhyZWdz
KTsKLSNpZmRlZiBfX1g4Nl82NF9fCi0Jc3RhY2tfd2Fsa19mb3JfZnJhbWUocmVncy0+cmJwKTsK
LQlkdW1wX21lbShyZWdzLT5yc3ApOwotCWR1bXBfbWVtKHJlZ3MtPnJicCk7Ci0JZHVtcF9tZW0o
cmVncy0+cmlwKTsKLSNlbHNlCi0JZG9fc3RhY2tfd2FsayhyZWdzLT5lYnApOwotCWR1bXBfbWVt
KHJlZ3MtPmVzcCk7Ci0JZHVtcF9tZW0ocmVncy0+ZWJwKTsKLQlkdW1wX21lbShyZWdzLT5laXAp
OwotI2VuZGlmCi0JSFlQRVJWSVNPUl9zY2hlZF9vcChTQ0hFRE9QX3NodXRkb3duLCAmc2NoZWRf
c2h1dGRvd24pOwotfQotCi12b2lkIGRvX2RlYnVnKHN0cnVjdCBfX3JlZ3MgKnJlZ3MpCi17Ci0J
dWtfcHJpbnRrKCJEZWJ1ZyBleGNlcHRpb25cbiIpOwotI2RlZmluZSBURl9NQVNLIDB4MTAwCi0J
cmVncy0+ZWZsYWdzICY9IH5URl9NQVNLOwotCWR1bXBfcmVncyhyZWdzKTsKLQlkb19leGl0KCk7
Ci19Ci0KLXZvaWQgZG9fY29wcm9jZXNzb3JfZXJyb3Ioc3RydWN0IF9fcmVncyAqcmVncykKLXsK
LQl1a19wcmludGsoIkNvcHJvIGVycm9yXG4iKTsKLQlkdW1wX3JlZ3MocmVncyk7Ci0JZG9fZXhp
dCgpOwotfQotCi12b2lkIHNpbWRfbWF0aF9lcnJvcih2b2lkICplaXAgX191bnVzZWQpCi17Ci0J
dWtfcHJpbnRrKCJTSU1EIGVycm9yXG4iKTsKLX0KLQotdm9pZCBkb19zaW1kX2NvcHJvY2Vzc29y
X2Vycm9yKHN0cnVjdCBfX3JlZ3MgKnJlZ3MgX191bnVzZWQpCi17Ci0JdWtfcHJpbnRrKCJTSU1E
IGNvcHJvIGVycm9yXG4iKTsKLX0KLQotdm9pZCBkb19zcHVyaW91c19pbnRlcnJ1cHRfYnVnKHN0
cnVjdCBfX3JlZ3MgKnJlZ3MgX191bnVzZWQpCi17Ci19CisjaWZkZWYgQ09ORklHX1BBUkFWSVJU
CiAKLS8qIEFzc2VtYmxlciBpbnRlcmZhY2UgZm5zIGluIGVudHJ5LlMuICovCi12b2lkIGh5cGVy
dmlzb3JfY2FsbGJhY2sodm9pZCk7Ci12b2lkIGZhaWxzYWZlX2NhbGxiYWNrKHZvaWQpOworI2Rl
ZmluZSBUUkFQX1RBQkxFX0VOVFJZKHRyYXBuYW1lLCBwbCkgXAorCXsgVFJBUF8jI3RyYXBuYW1l
LCBwbCwgX19LRVJORUxfQ1MsICh1bnNpZ25lZCBsb25nKSBBU01fVFJBUF9TWU0odHJhcG5hbWUp
IH0KIAotI2lmZGVmIENPTkZJR19QQVJBVklSVAogLyoKICAqIFN1Ym1pdCBhIHZpcnR1YWwgSURU
IHRvIHRlaCBoeXBlcnZpc29yLiBUaGlzIGNvbnNpc3RzIG9mIHR1cGxlcwogICogKGludGVycnVw
dCB2ZWN0b3IsIHByaXZpbGVnZSByaW5nLCBDUzpFSVAgb2YgaGFuZGxlcikuCkBAIC0xOTYsNDEg
KzQ2LDQxIEBAIHZvaWQgZmFpbHNhZmVfY2FsbGJhY2sodm9pZCk7CiAgKiBjYW4gdHJhcCB0byB0
aGF0IHZlY3RvciB1c2luZyBhIHNvZnR3YXJlLWludGVycnVwdCBpbnN0cnVjdGlvbiAoSU5UKS4K
ICAqLwogc3RhdGljIHRyYXBfaW5mb190IHRyYXBfdGFibGVbXSA9IHsKLQl7ICAwLCAwLCBfX0tF
Uk5FTF9DUywgKHVuc2lnbmVkIGxvbmcpZGl2aWRlX2Vycm9yICAgICAgICAgICAgICAgIH0sCi0J
eyAgMSwgMCwgX19LRVJORUxfQ1MsICh1bnNpZ25lZCBsb25nKWRlYnVnICAgICAgICAgICAgICAg
ICAgICAgICB9LAotCXsgIDMsIDMsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylpbnQzICAg
ICAgICAgICAgICAgICAgICAgICAgfSwKLQl7ICA0LCAzLCBfX0tFUk5FTF9DUywgKHVuc2lnbmVk
IGxvbmcpb3ZlcmZsb3cgICAgICAgICAgICAgICAgICAgIH0sCi0JeyAgNSwgMywgX19LRVJORUxf
Q1MsICh1bnNpZ25lZCBsb25nKWJvdW5kcyAgICAgICAgICAgICAgICAgICAgICB9LAotCXsgIDYs
IDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylpbnZhbGlkX29wICAgICAgICAgICAgICAg
ICAgfSwKLQl7ICA3LCAwLCBfX0tFUk5FTF9DUywgKHVuc2lnbmVkIGxvbmcpZGV2aWNlX25vdF9h
dmFpbGFibGUgICAgICAgIH0sCi0JeyAgOSwgMCwgX19LRVJORUxfQ1MsICh1bnNpZ25lZCBsb25n
KWNvcHJvY2Vzc29yX3NlZ21lbnRfb3ZlcnJ1biB9LAotCXsgMTAsIDAsIF9fS0VSTkVMX0NTLCAo
dW5zaWduZWQgbG9uZylpbnZhbGlkX1RTUyAgICAgICAgICAgICAgICAgfSwKLQl7IDExLCAwLCBf
X0tFUk5FTF9DUywgKHVuc2lnbmVkIGxvbmcpc2VnbWVudF9ub3RfcHJlc2VudCAgICAgICAgIH0s
Ci0JeyAxMiwgMCwgX19LRVJORUxfQ1MsICh1bnNpZ25lZCBsb25nKXN0YWNrX3NlZ21lbnQgICAg
ICAgICAgICAgICB9LAotCXsgMTMsIDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylnZW5l
cmFsX3Byb3RlY3Rpb24gICAgICAgICAgfSwKLQl7IDE0LCAwLCBfX0tFUk5FTF9DUywgKHVuc2ln
bmVkIGxvbmcpcGFnZV9mYXVsdCAgICAgICAgICAgICAgICAgIH0sCi0JeyAxNSwgMCwgX19LRVJO
RUxfQ1MsICh1bnNpZ25lZCBsb25nKXNwdXJpb3VzX2ludGVycnVwdF9idWcgICAgICB9LAotCXsg
MTYsIDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZyljb3Byb2Nlc3Nvcl9lcnJvciAgICAg
ICAgICAgfSwKLQl7IDE3LCAwLCBfX0tFUk5FTF9DUywgKHVuc2lnbmVkIGxvbmcpYWxpZ25tZW50
X2NoZWNrICAgICAgICAgICAgIH0sCi0JeyAxOSwgMCwgX19LRVJORUxfQ1MsICh1bnNpZ25lZCBs
b25nKXNpbWRfY29wcm9jZXNzb3JfZXJyb3IgICAgICB9LAotCXsgIDAsIDAsICAgICAgICAgICAw
LCAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorCVRSQVBfVEFC
TEVfRU5UUlkoZGl2aWRlX2Vycm9yLCAgICAgICAgMCksCisJVFJBUF9UQUJMRV9FTlRSWShkZWJ1
ZywgICAgICAgICAgICAgICAwKSwKKwlUUkFQX1RBQkxFX0VOVFJZKGludDMsICAgICAgICAgICAg
ICAgIDMpLAorCVRSQVBfVEFCTEVfRU5UUlkob3ZlcmZsb3csICAgICAgICAgICAgMyksCisJVFJB
UF9UQUJMRV9FTlRSWShib3VuZHMsICAgICAgICAgICAgICAzKSwKKwlUUkFQX1RBQkxFX0VOVFJZ
KGludmFsaWRfb3AsICAgICAgICAgIDApLAorCVRSQVBfVEFCTEVfRU5UUlkobm9fZGV2aWNlLCAg
ICAgICAgICAgMCksCisJVFJBUF9UQUJMRV9FTlRSWShjb3Byb2Nfc2VnX292ZXJydW4sICAwKSwK
KwlUUkFQX1RBQkxFX0VOVFJZKGludmFsaWRfdHNzLCAgICAgICAgIDApLAorCVRSQVBfVEFCTEVf
RU5UUlkobm9fc2VnbWVudCwgICAgICAgICAgMCksCisJVFJBUF9UQUJMRV9FTlRSWShzdGFja19l
cnJvciwgICAgICAgICAwKSwKKwlUUkFQX1RBQkxFX0VOVFJZKGdwX2ZhdWx0LCAgICAgICAgICAg
IDApLAorCVRSQVBfVEFCTEVfRU5UUlkocGFnZV9mYXVsdCwgICAgICAgICAgMCksCisJVFJBUF9U
QUJMRV9FTlRSWShzcHVyaW91c19pbnQsICAgICAgICAwKSwKKwlUUkFQX1RBQkxFX0VOVFJZKGNv
cHJvY19lcnJvciwgICAgICAgIDApLAorCVRSQVBfVEFCTEVfRU5UUlkoYWxpZ25tZW50X2NoZWNr
LCAgICAgMCksCisJVFJBUF9UQUJMRV9FTlRSWShzaW1kX2Vycm9yLCAgICAgICAgICAwKSwKKwl7
IDAsIDAsIDAsIDAgfQogfTsKIAotdm9pZCB0cmFwX2luaXQodm9pZCkKK3ZvaWQgdHJhcHNfaW5p
dCh2b2lkKQogewogCUhZUEVSVklTT1Jfc2V0X3RyYXBfdGFibGUodHJhcF90YWJsZSk7CiAKICNp
ZmRlZiBfX2kzODZfXwogCUhZUEVSVklTT1Jfc2V0X2NhbGxiYWNrcyhfX0tFUk5FTF9DUywKLQkJ
CQkgKHVuc2lnbmVkIGxvbmcpaHlwZXJ2aXNvcl9jYWxsYmFjaywKLQkJCQkgX19LRVJORUxfQ1Ms
ICh1bnNpZ25lZCBsb25nKWZhaWxzYWZlX2NhbGxiYWNrKTsKKwkJCQkgKHVuc2lnbmVkIGxvbmcp
IGFzbV90cmFwX2h5cGVydmlzb3JfY2FsbGJhY2ssCisJCQkJIF9fS0VSTkVMX0NTLCAodW5zaWdu
ZWQgbG9uZykgYXNtX2ZhaWxzYWZlX2NhbGxiYWNrKTsKICNlbHNlCi0JSFlQRVJWSVNPUl9zZXRf
Y2FsbGJhY2tzKCh1bnNpZ25lZCBsb25nKWh5cGVydmlzb3JfY2FsbGJhY2ssCi0JCQkJICh1bnNp
Z25lZCBsb25nKWZhaWxzYWZlX2NhbGxiYWNrLCAwKTsKKwlIWVBFUlZJU09SX3NldF9jYWxsYmFj
a3MoKHVuc2lnbmVkIGxvbmcpIGFzbV90cmFwX2h5cGVydmlzb3JfY2FsbGJhY2ssCisJCQkJICh1
bnNpZ25lZCBsb25nKSBhc21fZmFpbHNhZmVfY2FsbGJhY2ssIDApOwogI2VuZGlmCiB9CiAKLXZv
aWQgdHJhcF9maW5pKHZvaWQpCit2b2lkIHRyYXBzX2Zpbmkodm9pZCkKIHsKIAlIWVBFUlZJU09S
X3NldF90cmFwX3RhYmxlKE5VTEwpOwogfQpAQCAtMjQxLDEyICs5MSwxMiBAQCBzdGF0aWMgdWlu
dDhfdCBpbnRyX3N0YWNrW0lOVFJfU1RBQ0tfU0laRV0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCgx
NikpKTsKIAogaHdfdHNzIHRzcyBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDE2KSkpID0gewogI2lm
ZGVmIF9fWDg2XzY0X18KLQkucnNwMCA9ICh1bnNpZ25lZCBsb25nKSZpbnRyX3N0YWNrW0lOVFJf
U1RBQ0tfU0laRV0sCisJLnJzcFswXSA9ICh1bnNpZ25lZCBsb25nKSZpbnRyX3N0YWNrW0lOVFJf
U1RBQ0tfU0laRV0sCiAjZWxzZQogCS5lc3AwID0gKHVuc2lnbmVkIGxvbmcpJmludHJfc3RhY2tb
SU5UUl9TVEFDS19TSVpFXSwKIAkuc3MwID0gX19LRVJOX0RTLAogI2VuZGlmCi0JLmlvcGIgPSBY
ODZfVFNTX0lOVkFMSURfSU9fQklUTUFQLAorCS5pb21hcF9iYXNlID0gWDg2X1RTU19JTlZBTElE
X0lPX0JJVE1BUCwKIH07CiAKIHN0YXRpYyB2b2lkIHNldHVwX2dhdGUodW5zaWduZWQgaW50IGVu
dHJ5LCB2b2lkICphZGRyLCB1bnNpZ25lZCBpbnQgZHBsKQpAQCAtMjY1LDI2ICsxMTUsMjggQEAg
c3RhdGljIHZvaWQgc2V0dXBfZ2F0ZSh1bnNpZ25lZCBpbnQgZW50cnksIHZvaWQgKmFkZHIsIHVu
c2lnbmVkIGludCBkcGwpCiAjZW5kaWYKIH0KIAotdm9pZCB0cmFwX2luaXQodm9pZCkKK3ZvaWQg
dHJhcHNfaW5pdCh2b2lkKQogewotCXNldHVwX2dhdGUoVFJBUF9kaXZpZGVfZXJyb3IsICZkaXZp
ZGVfZXJyb3IsIDApOwotCXNldHVwX2dhdGUoVFJBUF9kZWJ1ZywgJmRlYnVnLCAwKTsKLQlzZXR1
cF9nYXRlKFRSQVBfaW50MywgJmludDMsIDMpOwotCXNldHVwX2dhdGUoVFJBUF9vdmVyZmxvdywg
Jm92ZXJmbG93LCAzKTsKLQlzZXR1cF9nYXRlKFRSQVBfYm91bmRzLCAmYm91bmRzLCAwKTsKLQlz
ZXR1cF9nYXRlKFRSQVBfaW52YWxpZF9vcCwgJmludmFsaWRfb3AsIDApOwotCXNldHVwX2dhdGUo
VFJBUF9ub19kZXZpY2UsICZkZXZpY2Vfbm90X2F2YWlsYWJsZSwgMCk7Ci0Jc2V0dXBfZ2F0ZShU
UkFQX2NvcHJvX3NlZywgJmNvcHJvY2Vzc29yX3NlZ21lbnRfb3ZlcnJ1biwgMCk7Ci0Jc2V0dXBf
Z2F0ZShUUkFQX2ludmFsaWRfdHNzLCAmaW52YWxpZF9UU1MsIDApOwotCXNldHVwX2dhdGUoVFJB
UF9ub19zZWdtZW50LCAmc2VnbWVudF9ub3RfcHJlc2VudCwgMCk7Ci0Jc2V0dXBfZ2F0ZShUUkFQ
X3N0YWNrX2Vycm9yLCAmc3RhY2tfc2VnbWVudCwgMCk7Ci0Jc2V0dXBfZ2F0ZShUUkFQX2dwX2Zh
dWx0LCAmZ2VuZXJhbF9wcm90ZWN0aW9uLCAwKTsKLQlzZXR1cF9nYXRlKFRSQVBfcGFnZV9mYXVs
dCwgJnBhZ2VfZmF1bHQsIDApOwotCXNldHVwX2dhdGUoVFJBUF9zcHVyaW91c19pbnQsICZzcHVy
aW91c19pbnRlcnJ1cHRfYnVnLCAwKTsKLQlzZXR1cF9nYXRlKFRSQVBfY29wcm9fZXJyb3IsICZj
b3Byb2Nlc3Nvcl9lcnJvciwgMCk7Ci0Jc2V0dXBfZ2F0ZShUUkFQX2FsaWdubWVudF9jaGVjaywg
JmFsaWdubWVudF9jaGVjaywgMCk7Ci0Jc2V0dXBfZ2F0ZShUUkFQX3NpbWRfZXJyb3IsICZzaW1k
X2NvcHJvY2Vzc29yX2Vycm9yLCAwKTsKLQlzZXR1cF9nYXRlKFRSQVBfeGVuX2NhbGxiYWNrLCBo
eXBlcnZpc29yX2NhbGxiYWNrLCAwKTsKKyNkZWZpbmUgU0VUVVBfVFJBUF9HQVRFKHRyYXBuYW1l
LCBkcGwpIFwKKwlzZXR1cF9nYXRlKFRSQVBfIyN0cmFwbmFtZSwgJkFTTV9UUkFQX1NZTSh0cmFw
bmFtZSksIGRwbCkKKwlTRVRVUF9UUkFQX0dBVEUoZGl2aWRlX2Vycm9yLCAwKTsKKwlTRVRVUF9U
UkFQX0dBVEUoZGVidWcsIDApOworCVNFVFVQX1RSQVBfR0FURShpbnQzLCAzKTsKKwlTRVRVUF9U
UkFQX0dBVEUob3ZlcmZsb3csIDMpOworCVNFVFVQX1RSQVBfR0FURShib3VuZHMsIDApOworCVNF
VFVQX1RSQVBfR0FURShpbnZhbGlkX29wLCAwKTsKKwlTRVRVUF9UUkFQX0dBVEUobm9fZGV2aWNl
LCAwKTsKKwlTRVRVUF9UUkFQX0dBVEUoY29wcm9jX3NlZ19vdmVycnVuLCAwKTsKKwlTRVRVUF9U
UkFQX0dBVEUoaW52YWxpZF90c3MsIDApOworCVNFVFVQX1RSQVBfR0FURShub19zZWdtZW50LCAw
KTsKKwlTRVRVUF9UUkFQX0dBVEUoc3RhY2tfZXJyb3IsIDApOworCVNFVFVQX1RSQVBfR0FURShn
cF9mYXVsdCwgMCk7CisJU0VUVVBfVFJBUF9HQVRFKHBhZ2VfZmF1bHQsIDApOworCVNFVFVQX1RS
QVBfR0FURShzcHVyaW91c19pbnQsIDApOworCVNFVFVQX1RSQVBfR0FURShjb3Byb2NfZXJyb3Is
IDApOworCVNFVFVQX1RSQVBfR0FURShhbGlnbm1lbnRfY2hlY2ssIDApOworCVNFVFVQX1RSQVBf
R0FURShzaW1kX2Vycm9yLCAwKTsKKwlzZXR1cF9nYXRlKFRSQVBfeGVuX2NhbGxiYWNrLCBBU01f
VFJBUF9TWU0oaHlwZXJ2aXNvcl9jYWxsYmFjayksIDApOwogCiAJYXNtIHZvbGF0aWxlKCJsaWR0
IGlkdF9wdHIiKTsKIApAQCAtMjk0LDEyICsxNDYsMTEgQEAgdm9pZCB0cmFwX2luaXQodm9pZCkK
IAogCWlmIChodm1fc2V0X3BhcmFtZXRlcihIVk1fUEFSQU1fQ0FMTEJBQ0tfSVJRLAogCQkJICAg
ICAgKDJVTEwgPDwgNTYpIHwgVFJBUF94ZW5fY2FsbGJhY2spKSB7Ci0JCXVrX3ByaW50aygiUmVx
dWVzdCBmb3IgWGVuIEhWTSBjYWxsYmFjayB2ZWN0b3IgZmFpbGVkXG4iKTsKLQkJZG9fZXhpdCgp
OworCQlVS19DUkFTSCgiUmVxdWVzdCBmb3IgWGVuIEhWTSBjYWxsYmFjayB2ZWN0b3IgZmFpbGVk
XG4iKTsKIAl9CiB9CiAKLXZvaWQgdHJhcF9maW5pKHZvaWQpCit2b2lkIHRyYXBzX2Zpbmkodm9p
ZCkKIHsKIH0KICNlbmRpZgotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZl
bEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxt
YW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 13:54:28 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 13:54:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3irr-0003Ng-Uk; Wed, 04 Apr 2018 13:54:27 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=5eaq=gz=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f3irr-0003Mo-48
 for minios-devel@lists.xen.org; Wed, 04 Apr 2018 13:54:27 +0000
X-Inumbo-ID: daea9010-380f-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id daea9010-380f-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 13:55:38 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3AQhG3qRYm2IHyX4dewzmcqNj/LSx+4OfEezUN459i?=
 =?us-ascii?q?sYplN5qZr8q4bnLW6fgltlLVR4KTs6sC17KN9fi4EUU7or+5+EgYd5JNUxJXwe?=
 =?us-ascii?q?43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRp?=
 =?us-ascii?q?OOv1BpTSj8Oq3Oyu5pHfeQpFiCazbL9oMBm6sRjau9ULj4dlNqs/0AbCrGFSe+?=
 =?us-ascii?q?RRy2NoJFaTkAj568yt4pNt8Dletuw4+cJYXqr0Y6o3TbpDDDQ7KG81/9HktQPC?=
 =?us-ascii?q?TQSU+HQRVHgdnwdSDAjE6BH6WYrxsjf/u+Fg1iSWIdH6QLYpUjmk8qxlSgLniD?=
 =?us-ascii?q?0fOjA57m/Zl8J+gqFcrh2jqRxy2JLYbJ2POfZiZK7RYc8WSGxcVchRTSxBBYa8?=
 =?us-ascii?q?YpMRAuoGJuZYs4j9p10TphW4GAmsHP7vwSJPi3Dq2q06yPghEQDA3AA6G9IOrW?=
 =?us-ascii?q?zUrMjuOagOSuC51rHIzSjYYP9Mwzf975HFfxY8qv+CWrJwdNDeyUgpFw7dlVWQ?=
 =?us-ascii?q?tZbqPymJ1ugXqGiU9PJsWvypi247sQFwojmiy8g2honSnY0YzE3P+yZhwIstON?=
 =?us-ascii?q?G1R1N3bcSnHZZQrS2WKZV6T8E4T2xmoCo217ILtYOhcCUJyJkr3QDTZvKJfoSS?=
 =?us-ascii?q?/x7uW/idLDFlj3x/Yr2/nQy98U24x+35Ucm7zUhFozJektnJqnANzxvT6tWbSv?=
 =?us-ascii?q?dl/keuxzKP1wfL5+FaJEA7j6vbK5o7zrEsjZofq1zDHjLtl0nslq+WcV0o+umu?=
 =?us-ascii?q?6+v5frXrvoKQOoBphg3kMakjmtazDfomPgUMRWSW9/yw1Lj58k34RLVKgOc2kq?=
 =?us-ascii?q?7csJ3COcsbobW5AxNU0oYl8Rq/Cyqm0MwFnXQcMF1FYwiLj5D0O17VOvz4F/C/?=
 =?us-ascii?q?j0y2kDh33/DGIqHhApLVI3jGkbfhe7d960lHyAYq0N9Q+YxUBa8FIP/oXk/xtc?=
 =?us-ascii?q?fYDgMiMwCuzOfoFtN92pkZWWKVDa+TKLnSvkOQ5uIzP+mMY5cYuC38K/gg4P7u?=
 =?us-ascii?q?i2U1mVwAfaa325sWaW63Hu59LkWff3XjntMBHn0RsQYkUuPqlQ7KbTkGYne0Xq?=
 =?us-ascii?q?Unoz02Fo+iJYPCXZy2xqyM2mG8BJIFSHpBDwWnFmz0doPMf+oUdWrGKch6jj0C?=
 =?us-ascii?q?E7y8U5IJ3grorBLwjaBgeLmHshYEvI7ugYAmr9bYkgs/oGR5?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYQjbyiLX16OHnUaixKHQxSBZiaBX4MJAoReNBgBAgEBAQEBAQIBEwEBASZ?=
 =?us-ascii?q?LDII1IoJMAwMaAQxSEB0CIBJJDhmFEa1GM4RXg2yCJYZngk8/gQyCUIRoFIV7A?=
 =?us-ascii?q?ocjFoQ6C1OKbQiBX4N0gk2CYYMygUogilCRIAIcN4FTMxpygkMJghcOCYs/glt?=
 =?us-ascii?q?siyyCRQEB?=
X-IPAS-Result: =?us-ascii?q?A2BSAAC/18RajAPjVY1cGwEBAQEDAQEBCQEBAYQjbyiLX16?=
 =?us-ascii?q?OHnUaixKHQxSBZiaBX4MJAoReNBgBAgEBAQEBAQIBEwEBASZLDII1IoJMAwMaA?=
 =?us-ascii?q?QxSEB0CIBJJDhmFEa1GM4RXg2yCJYZngk8/gQyCUIRoFIV7AocjFoQ6C1OKbQi?=
 =?us-ascii?q?BX4N0gk2CYYMygUogilCRIAIcN4FTMxpygkMJghcOCYs/gltsiyyCRQEB?=
X-IronPort-AV: E=Sophos;i="5.48,406,1517868000"; 
   d="scan'208";a="2492109"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 04 Apr 2018 16:54:14 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 27C731A6033C;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id FD1LrNG5qyNY; Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 0ADEA1A6033F;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 0611D1A60338;
 Wed,  4 Apr 2018 16:54:14 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Wed,  4 Apr 2018 16:54:01 +0300
Message-Id: <1522850048-13204-11-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 10/17] plat/common: Common x86
 threading code
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2UgZGVmaW5lIGEgbmV3IHByaW1pdGl2ZSAtIHRoZSBzb2Z0d2FyZSBjb250ZXh0IC0gdXNlZCBp
biBjb250ZXh0IHN3aXRjaGluZyBmb3IKY29vcGVyYXRpdmUgc2NoZWR1bGluZyBhbmQgc2NoZWR1
bGluZyBvbiBQViBndWVzdHMuIFRoZSBjb2RlIGZvciBYZW4gcGxhdGZvcm0gaXMKcmV1c2VkIHRv
IGVuYWJsZSBjb29wZXJhdGl2ZSBzY2hlZHVsaW5nIG9uIEtWTSBhcyB3ZWxsLgoKU2luY2UgVW5p
a3JhZnQgbWF5IHJ1biBkaWZmZXJlbnQgc2NoZWR1bGVycyBvbiBkZWRpY2F0ZWQgQ1BVcywgYSBu
ZXcgYWJzdHJhY3Rpb24KaXMgaW50cm9kdWNlZCwgdWtwbGF0X2N0eF9jYWxsYmFja3MsIGZvciBl
bmFibGluZyBzdXBwb3J0IG9mIG90aGVyIHR5cGVzIG9mIGNvbnRleHRzCmFzIHdlbGwgKGUuZy4g
aGFyZHdhcmUgY29udGV4dHMgZm9yIHByZWVtcHRpdmUgc2NoZWR1bGluZykuCgpTaWduZWQtb2Zm
LWJ5OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgotLS0KIGluY2x1ZGUvdWsv
YXJjaC90aHJlYWQuaCAgICAgICAgICAgICAgfCAgNTMgLS0tLS0tLS0tLS0tLS0tLS0KIGluY2x1
ZGUvdWsvcGxhdC90aHJlYWQuaCAgICAgICAgICAgICAgfCAgNzAgKysrKysrKysrKysrKysrKysr
Ky0tLQogcGxhdC9jb21tb24vaW5jbHVkZS9zd19jdHguaCAgICAgICAgICB8ICA1NiArKysrKysr
KysrKysrKysrKysKIHBsYXQvY29tbW9uL3N3X2N0eC5jICAgICAgICAgICAgICAgICAgfCAgOTcg
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogcGxhdC9jb21tb24vdGhyZWFkLmMgICAg
ICAgICAgICAgICAgICB8ICA2NiArKysrKysrKysrKysrKysrKysrKysKIHBsYXQvY29tbW9uL3g4
Ni90aHJlYWRfc3RhcnQuUyAgICAgICAgfCAgNjUgKysrKysrKysrKysrKysrKysrKysrCiBwbGF0
L2t2bS9NYWtlZmlsZS51ayAgICAgICAgICAgICAgICAgIHwgICA1ICsrCiBwbGF0L3hlbi9NYWtl
ZmlsZS51ayAgICAgICAgICAgICAgICAgIHwgICA4ICsrLQogcGxhdC94ZW4vaW5jbHVkZS9jb21t
b24vc2NoZWQuaCAgICAgICB8ICA1MiAtLS0tLS0tLS0tLS0tLS0tLQogcGxhdC94ZW4vaW5jbHVk
ZS94ZW4teDg2L2FyY2hfc2NoZWQuaCB8ICA1NSAtLS0tLS0tLS0tLS0tLS0tLS0KIHBsYXQveGVu
L3NjaGVkLmMgICAgICAgICAgICAgICAgICAgICAgfCAxMDYgLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQogcGxhdC94ZW4vdGhyZWFkLmMgICAgICAgICAgICAgICAgICAgICB8ICA2
NiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHBsYXQveGVuL3g4Ni9hcmNoX3RocmVhZC5jICAgICAg
ICAgICAgfCAgOTMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHBsYXQveGVuL3g4Ni9l
bnRyeTY0LlMgICAgICAgICAgICAgICAgfCAgMzEgLS0tLS0tLS0tLQogcGxhdC94ZW4veDg2L3Nl
dHVwLmMgICAgICAgICAgICAgICAgICB8ICAgMyAtCiAxNSBmaWxlcyBjaGFuZ2VkLCAzNTcgaW5z
ZXJ0aW9ucygrKSwgNDY5IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUv
dWsvYXJjaC90aHJlYWQuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUv
c3dfY3R4LmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9zd19jdHguYwogY3JlYXRl
IG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL3RocmVhZC5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxh
dC9jb21tb24veDg2L3RocmVhZF9zdGFydC5TCiBkZWxldGUgbW9kZSAxMDA2NDQgcGxhdC94ZW4v
aW5jbHVkZS9jb21tb24vc2NoZWQuaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHBsYXQveGVuL2luY2x1
ZGUveGVuLXg4Ni9hcmNoX3NjaGVkLmgKIGRlbGV0ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi9zY2hl
ZC5jCiBkZWxldGUgbW9kZSAxMDA2NDQgcGxhdC94ZW4vdGhyZWFkLmMKIGRlbGV0ZSBtb2RlIDEw
MDY0NCBwbGF0L3hlbi94ODYvYXJjaF90aHJlYWQuYwoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsv
YXJjaC90aHJlYWQuaCBiL2luY2x1ZGUvdWsvYXJjaC90aHJlYWQuaApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggN2ExMGQyYS4uMDAwMDAwMAotLS0gYS9pbmNsdWRlL3VrL2FyY2gvdGhy
ZWFkLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi0vKiBTUERYLUxpY2Vuc2UtSWRl
bnRpZmllcjogQlNELTMtQ2xhdXNlICovCi0vKgotICogQXV0aG9yczogQ29zdGluIEx1cHUgPGNv
c3Rpbi5sdXB1QGNzLnB1Yi5ybz4KLSAqCi0gKgotICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMg
RXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0g
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5v
ciB0aGUgbmFtZXMgb2YgaXRzCi0gKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotICogICAgdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJ
QlVUT1JTICJBUyBJUyIKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
Ci0gKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xE
RVIgT1IgQ09OVFJJQlVUT1JTIEJFCi0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFCi0gKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqCi0g
KiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZ
LgotICovCi0KLSNpZm5kZWYgX19VS0FSQ0hfVEhSRUFEX0hfXwotI2RlZmluZSBfX1VLQVJDSF9U
SFJFQURfSF9fCi0KLSNpZmRlZiBfX2NwbHVzcGx1cwotZXh0ZXJuICJDIiB7Ci0jZW5kaWYKLQot
c3RydWN0IHVrcGxhdF90aHJlYWRfY3R4IHsKLQkvKiBrZWVwIGluIHRoYXQgb3JkZXIgKi8KLQl1
bnNpZ25lZCBsb25nIHNwOyAgLyogU3RhY2sgcG9pbnRlciAqLwotCXVuc2lnbmVkIGxvbmcgaXA7
ICAvKiBJbnN0cnVjdGlvbiBwb2ludGVyICovCi19OwotCi0jaWZkZWYgX19jcGx1c3BsdXMKLX0K
LSNlbmRpZgotCi0jZW5kaWYgLyogX19VS0FSQ0hfVEhSRUFEX0hfXyAqLwpkaWZmIC0tZ2l0IGEv
aW5jbHVkZS91ay9wbGF0L3RocmVhZC5oIGIvaW5jbHVkZS91ay9wbGF0L3RocmVhZC5oCmluZGV4
IDkwNWQ5NDIuLjY5ZmM1ZTIgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvdWsvcGxhdC90aHJlYWQuaAor
KysgYi9pbmNsdWRlL3VrL3BsYXQvdGhyZWFkLmgKQEAgLTM4LDE3ICszOCw3MyBAQAogI2lmbmRl
ZiBfX1VLUExBVF9USFJFQURfSF9fCiAjZGVmaW5lIF9fVUtQTEFUX1RIUkVBRF9IX18KIAotI2lu
Y2x1ZGUgPHVrL2FyY2gvdGhyZWFkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8
dWsvZXNzZW50aWFscy5oPgorI2luY2x1ZGUgPHVrL2Fzc2VydC5oPgogCi1pbnQgdWtwbGF0X3Ro
cmVhZF9jdHhfaW5pdChzdHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggKmN0eCwgdm9pZCAqc3RhY2ss
Ci0JCXZvaWQgKCpmdW5jdGlvbikodm9pZCAqKSwgdm9pZCAqZGF0YSk7CitlbnVtIHVrcGxhdF9j
dHhfdHlwZSB7CisJdWtwbGF0X2N0eF9ub25lLAorCXVrcGxhdF9jdHhfaHcsCisJdWtwbGF0X2N0
eF9zdywKK307CiAKLXZvaWQgdWtwbGF0X3RocmVhZF9jdHhfc3dpdGNoKHN0cnVjdCB1a3BsYXRf
dGhyZWFkX2N0eCAqcHJldiwKLQkJCSAgICAgIHN0cnVjdCB1a3BsYXRfdGhyZWFkX2N0eCAqbmV4
dCk7CitzdHJ1Y3QgdWtfYWxsb2M7CiAKLXN0cnVjdCB1a3BsYXRfdGhyZWFkX2N0eCAqdWtwbGF0
X3RocmVhZF9jdHhfY3VycmVudCh2b2lkKTsKK3R5cGVkZWYgdm9pZCAqKCp1a3BsYXRfY3R4X2Ny
ZWF0ZV9mdW5jX3QpCisJCShzdHJ1Y3QgdWtfYWxsb2MgKmFsbG9jYXRvciwgdW5zaWduZWQgbG9u
ZyBzcCk7Cit0eXBlZGVmIHZvaWQgICgqdWtwbGF0X2N0eF9zdGFydF9mdW5jX3QpCisJCSh2b2lk
ICpjdHgpOwordHlwZWRlZiB2b2lkICAoKnVrcGxhdF9jdHhfc3dpdGNoX2Z1bmNfdCkKKwkJKHZv
aWQgKnByZXZjdHgsIHZvaWQgKm5leHRjdHgpOwogCi12b2lkIHVrcGxhdF90aHJlYWRfY3R4X3J1
bl9pZGxlKHN0cnVjdCB1a3BsYXRfdGhyZWFkX2N0eCAqY3R4KSBfX25vcmV0dXJuOworc3RydWN0
IHVrcGxhdF9jdHhfY2FsbGJhY2tzIHsKKwkvKiBjYWxsYmFjayBmb3IgY3JlYXRpbmcgdGhyZWFk
IGNvbnRleHQgKi8KKwl1a3BsYXRfY3R4X2NyZWF0ZV9mdW5jX3QgY3JlYXRlX2NiOworCS8qIGNh
bGxiYWNrIGZvciBzdGFydGluZyB0aHJlYWQgY29udGV4dCAqLworCXVrcGxhdF9jdHhfc3RhcnRf
ZnVuY190IHN0YXJ0X2NiIF9fbm9yZXR1cm47CisJLyogY2FsbGJhY2sgZm9yIHN3aXRjaGluZyBj
b250ZXh0cyAqLworCXVrcGxhdF9jdHhfc3dpdGNoX2Z1bmNfdCBzd2l0Y2hfY2I7Cit9OworCitp
bnQgdWtwbGF0X2N0eF9jYWxsYmFja3NfaW5pdChzdHJ1Y3QgdWtwbGF0X2N0eF9jYWxsYmFja3Mg
KmN0eF9jYnMsCisJCWVudW0gdWtwbGF0X2N0eF90eXBlIGN0eF90eXBlKTsKKworCitzdGF0aWMg
aW5saW5lCit2b2lkICp1a3BsYXRfdGhyZWFkX2N0eF9jcmVhdGUoc3RydWN0IHVrcGxhdF9jdHhf
Y2FsbGJhY2tzICpjYnMsCisJCXN0cnVjdCB1a19hbGxvYyAqYWxsb2NhdG9yLCB1bnNpZ25lZCBs
b25nIHNwKQoreworCVVLX0FTU0VSVChjYnMgIT0gTlVMTCk7CisJVUtfQVNTRVJUKGFsbG9jYXRv
ciAhPSBOVUxMKTsKKworCXJldHVybiBjYnMtPmNyZWF0ZV9jYihhbGxvY2F0b3IsIHNwKTsKK30K
Kwordm9pZCB1a3BsYXRfdGhyZWFkX2N0eF9kZXN0cm95KHN0cnVjdCB1a19hbGxvYyAqYWxsb2Nh
dG9yLCB2b2lkICpjdHgpOworCitzdGF0aWMgaW5saW5lCit2b2lkIHVrcGxhdF90aHJlYWRfY3R4
X3N0YXJ0KHN0cnVjdCB1a3BsYXRfY3R4X2NhbGxiYWNrcyAqY2JzLAorCQl2b2lkICpjdHgpIF9f
bm9yZXR1cm47CisKK3N0YXRpYyBpbmxpbmUKK3ZvaWQgdWtwbGF0X3RocmVhZF9jdHhfc3RhcnQo
c3RydWN0IHVrcGxhdF9jdHhfY2FsbGJhY2tzICpjYnMsCisJCXZvaWQgKmN0eCkKK3sKKwlVS19B
U1NFUlQoY2JzICE9IE5VTEwpOworCVVLX0FTU0VSVChjdHggIT0gTlVMTCk7CisKKwljYnMtPnN0
YXJ0X2NiKGN0eCk7Cit9CisKK3N0YXRpYyBpbmxpbmUKK3ZvaWQgdWtwbGF0X3RocmVhZF9jdHhf
c3dpdGNoKHN0cnVjdCB1a3BsYXRfY3R4X2NhbGxiYWNrcyAqY2JzLAorCQl2b2lkICpwcmV2Y3R4
LCB2b2lkICpuZXh0Y3R4KQoreworCVVLX0FTU0VSVChjYnMgIT0gTlVMTCk7CisJVUtfQVNTRVJU
KHByZXZjdHggIT0gTlVMTCk7CisJVUtfQVNTRVJUKG5leHRjdHggIT0gTlVMTCk7CisKKwljYnMt
PnN3aXRjaF9jYihwcmV2Y3R4LCBuZXh0Y3R4KTsKK30KIAogI2VuZGlmIC8qIF9fVUtQTEFUX1RI
UkVBRF9IX18gKi8KZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9uL2luY2x1ZGUvc3dfY3R4LmggYi9w
bGF0L2NvbW1vbi9pbmNsdWRlL3N3X2N0eC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmZhZTk2YmUKLS0tIC9kZXYvbnVsbAorKysgYi9wbGF0L2NvbW1vbi9pbmNsdWRlL3N3
X2N0eC5oCkBAIC0wLDAgKzEsNTYgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0Qt
My1DbGF1c2UgKi8KKy8qCisgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3Mu
cHViLnJvPgorICoKKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMg
Q29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVp
dGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0
cworICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCisg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9S
UyBCRQorICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RQorICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICogVEhJUyBIRUFERVIgTUFZ
IE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KKyAqLworI2lmbmRlZiBf
X1BMQVRfQ01OX1NXX0NUWF9IX18KKyNkZWZpbmUgX19QTEFUX0NNTl9TV19DVFhfSF9fCisKKyNp
Zm5kZWYgX19BU1NFTUJMWV9fCisjaW5jbHVkZSA8dWsvcGxhdC90aHJlYWQuaD4KKworc3RydWN0
IHN3X2N0eCB7CisJdW5zaWduZWQgbG9uZyBzcDsgIC8qIFN0YWNrIHBvaW50ZXIgKi8KKwl1bnNp
Z25lZCBsb25nIGlwOyAgLyogSW5zdHJ1Y3Rpb24gcG9pbnRlciAqLworfTsKKwordm9pZCBzd19j
dHhfY2FsbGJhY2tzX2luaXQoc3RydWN0IHVrcGxhdF9jdHhfY2FsbGJhY2tzICpjdHhfY2JzKTsK
KyNlbmRpZgorCisjZGVmaW5lIE9GRlNFVE9GX1NXX0NUWF9TUCAgICAgIDAKKyNkZWZpbmUgT0ZG
U0VUT0ZfU1dfQ1RYX0lQICAgICAgOAorCisjZGVmaW5lIFNJWkVPRl9TV19DVFggICAgICAgICAg
IDgKKworLyogVE9ETyBUaGlzIHNob3VsZCBiZSBiZXR0ZXIgZGVmaW5lZCBpbiB0aGUgdGhyZWFk
IGhlYWRlciAqLworI2RlZmluZSBPRkZTRVRPRl9VS1RIUkVBRF9TV19DVFggIDE2CisKKyNlbmRp
ZiAvKiBfX1BMQVRfQ01OX1NXX0NUWF9IX18gKi8KZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9uL3N3
X2N0eC5jIGIvcGxhdC9jb21tb24vc3dfY3R4LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uNTkxMzc2OQotLS0gL2Rldi9udWxsCisrKyBiL3BsYXQvY29tbW9uL3N3X2N0eC5j
CkBAIC0wLDAgKzEsOTcgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1
c2UgKi8KKy8qCisgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJv
PgorICoKKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9y
YXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0
aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cworICog
ICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20KKyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQor
ICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICog
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICogVEhJUyBIRUFERVIgTUFZIE5PVCBC
RSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KKyAqLworCisjaW5jbHVkZSA8c3Rk
bGliLmg+CisjaW5jbHVkZSA8dWsvcGxhdC90aHJlYWQuaD4KKyNpbmNsdWRlIDx1ay9hbGxvYy5o
PgorI2luY2x1ZGUgPHN3X2N0eC5oPgorI2luY2x1ZGUgPHVrL2Fzc2VydC5oPgorCisKK3N0YXRp
YyB2b2lkICpzd19jdHhfY3JlYXRlKHN0cnVjdCB1a19hbGxvYyAqYWxsb2NhdG9yLCB1bnNpZ25l
ZCBsb25nIHNwKTsKK3N0YXRpYyB2b2lkICBzd19jdHhfc3RhcnQodm9pZCAqY3R4KSBfX25vcmV0
dXJuOworc3RhdGljIHZvaWQgIHN3X2N0eF9zd2l0Y2godm9pZCAqcHJldmN0eCwgdm9pZCAqbmV4
dGN0eCk7CisKKworLyogR2V0cyBydW4gd2hlbiBhIG5ldyB0aHJlYWQgaXMgc2NoZWR1bGVkIHRo
ZSBmaXJzdCB0aW1lIGV2ZXIsCisgKiBkZWZpbmVkIGluIHg4Nl9bMzIvNjRdLlMKKyAqLworZXh0
ZXJuIHZvaWQgYXNtX3RocmVhZF9zdGFydGVyKHZvaWQpOworCitzdGF0aWMgdm9pZCAqc3dfY3R4
X2NyZWF0ZShzdHJ1Y3QgdWtfYWxsb2MgKmFsbG9jYXRvciwgdW5zaWduZWQgbG9uZyBzcCkKK3sK
KwlzdHJ1Y3Qgc3dfY3R4ICpjdHg7CisKKwlVS19BU1NFUlQoYWxsb2NhdG9yICE9IE5VTEwpOwor
CisJY3R4ID0gdWtfbWFsbG9jKGFsbG9jYXRvciwgc2l6ZW9mKHN0cnVjdCBzd19jdHgpKTsKKwlp
ZiAoY3R4ID09IE5VTEwpIHsKKwkJdWtfcHJpbnRkKERMVkxfV0FSTiwgIkVycm9yIGFsbG9jYXRp
bmcgc29mdHdhcmUgY29udGV4dC4iKTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJY3R4LT5zcCA9
IHNwOworCWN0eC0+aXAgPSAodW5zaWduZWQgbG9uZykgYXNtX3RocmVhZF9zdGFydGVyOworCisJ
cmV0dXJuIGN0eDsKK30KKworZXh0ZXJuIHZvaWQgYXNtX2N0eF9zdGFydCh1bnNpZ25lZCBsb25n
IHNwLCB1bnNpZ25lZCBsb25nIGlwKSBfX25vcmV0dXJuOworCitzdGF0aWMgdm9pZCBzd19jdHhf
c3RhcnQodm9pZCAqY3R4KQoreworCXN0cnVjdCBzd19jdHggKnN3X2N0eCA9IGN0eDsKKworCVVL
X0FTU0VSVChzd19jdHggIT0gTlVMTCk7CisKKwkvKiBTd2l0Y2ggc3RhY2tzIGFuZCBydW4gdGhl
IHRocmVhZCAqLworCWFzbV9jdHhfc3RhcnQoc3dfY3R4LT5zcCwgc3dfY3R4LT5pcCk7CisKKwlV
S19DUkFTSCgiVGhyZWFkIGRpZCBub3Qgc3RhcnQuIik7Cit9CisKK2V4dGVybiB2b2lkIGFzbV9z
d19jdHhfc3dpdGNoKHZvaWQgKnByZXZjdHgsIHZvaWQgKm5leHRjdHgpOworCitzdGF0aWMgdm9p
ZCBzd19jdHhfc3dpdGNoKHZvaWQgKnByZXZjdHgsIHZvaWQgKm5leHRjdHgpCit7CisJYXNtX3N3
X2N0eF9zd2l0Y2gocHJldmN0eCwgbmV4dGN0eCk7Cit9CisKK3ZvaWQgc3dfY3R4X2NhbGxiYWNr
c19pbml0KHN0cnVjdCB1a3BsYXRfY3R4X2NhbGxiYWNrcyAqY3R4X2NicykKK3sKKwlVS19BU1NF
UlQoY3R4X2NicyAhPSBOVUxMKTsKKwljdHhfY2JzLT5jcmVhdGVfY2IgPSBzd19jdHhfY3JlYXRl
OworCWN0eF9jYnMtPnN0YXJ0X2NiID0gc3dfY3R4X3N0YXJ0OworCWN0eF9jYnMtPnN3aXRjaF9j
YiA9IHN3X2N0eF9zd2l0Y2g7Cit9CmRpZmYgLS1naXQgYS9wbGF0L2NvbW1vbi90aHJlYWQuYyBi
L3BsYXQvY29tbW9uL3RocmVhZC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LjcwMjMzOGUKLS0tIC9kZXYvbnVsbAorKysgYi9wbGF0L2NvbW1vbi90aHJlYWQuYwpAQCAtMCww
ICsxLDY2IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICovCisv
KgorICogQXV0aG9yczogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KKyAqCisg
KiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUg
b2YgdGhlIGNvcHlyaWdodCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqICAgIGNvbnRy
aWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tCisgKiAgICB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgorICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUKKyAqIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyAqIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICoKKyAqIFRISVMgSEVBREVSIE1BWSBOT1QgQkUgRVhUUkFD
VEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCisgKi8KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgor
I2luY2x1ZGUgPHVrL3BsYXQvdGhyZWFkLmg+CisjaW5jbHVkZSA8dWsvYWxsb2MuaD4KKyNpbmNs
dWRlIDxzd19jdHguaD4KKyNpbmNsdWRlIDx1ay9hc3NlcnQuaD4KKwordm9pZCB1a3BsYXRfdGhy
ZWFkX2N0eF9kZXN0cm95KHN0cnVjdCB1a19hbGxvYyAqYWxsb2NhdG9yLCB2b2lkICpjdHgpCit7
CisJVUtfQVNTRVJUKGFsbG9jYXRvciAhPSBOVUxMKTsKKwlVS19BU1NFUlQoY3R4ICE9IE5VTEwp
OworCisJdWtfZnJlZShhbGxvY2F0b3IsIGN0eCk7Cit9CisKK2ludCB1a3BsYXRfY3R4X2NhbGxi
YWNrc19pbml0KHN0cnVjdCB1a3BsYXRfY3R4X2NhbGxiYWNrcyAqY3R4X2NicywKKwkJZW51bSB1
a3BsYXRfY3R4X3R5cGUgY3R4X3R5cGUpCit7CisJaW50IGVyciA9IDA7CisKKwlVS19BU1NFUlQo
Y3R4X2NicyAhPSBOVUxMKTsKKworCXN3aXRjaCAoY3R4X3R5cGUpIHsKKwljYXNlIHVrcGxhdF9j
dHhfc3c6CisJCXN3X2N0eF9jYWxsYmFja3NfaW5pdChjdHhfY2JzKTsKKwkJYnJlYWs7CisJZGVm
YXVsdDoKKwkJZXJyID0gRUlOVkFMOworCQlicmVhazsKKwl9CisKKwlyZXR1cm4gZXJyOworfQpk
aWZmIC0tZ2l0IGEvcGxhdC9jb21tb24veDg2L3RocmVhZF9zdGFydC5TIGIvcGxhdC9jb21tb24v
eDg2L3RocmVhZF9zdGFydC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2
YWIyOTcKLS0tIC9kZXYvbnVsbAorKysgYi9wbGF0L2NvbW1vbi94ODYvdGhyZWFkX3N0YXJ0LlMK
QEAgLTAsMCArMSw2NSBAQAorLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVz
ZSAqLworLyoKKyAqIENvcHlyaWdodCAoYykgMjAwOSwgQ2l0cml4IFN5c3RlbXMsIEluYy4KKyAq
IENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBVVRIT1IgQU5EIENP
TlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBD
T05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisvKiBUYWtl
biBmcm9tIE1pbmktT1MgYXJjaC94ODYveDg2XzY0LlMgKi8KKworI2luY2x1ZGUgPHN3X2N0eC5o
PgorCisjZGVmaW5lIEVOVFJZKFgpIC5nbG9ibCBYIDsgWCA6CisKK0VOVFJZKGFzbV90aHJlYWRf
c3RhcnRlcikKKwlwb3BxICVyZGkKKwlwb3BxICVyYngKKwlwdXNocSAkMAorCXhvcnEgJXJicCwl
cmJwCisJY2FsbCAqJXJieAorCWNhbGwgdWtfc2NoZWRfdGhyZWFkX2V4aXQKKworRU5UUlkoYXNt
X2N0eF9zdGFydCkKKwltb3YgJXJkaSwgJXJzcCAgICAgIC8qIHNldCBTUCAqLworCXB1c2ggJXJz
aSAgICAgICAgICAgLyogcHVzaCBJUCBhbmQgcmV0dXJuICovCisJcmV0CisKK0VOVFJZKGFzbV9z
d19jdHhfc3dpdGNoKQorCXB1c2hxICVyYnAKKwlwdXNocSAlcmJ4CisJcHVzaHEgJXIxMgorCXB1
c2hxICVyMTMKKwlwdXNocSAlcjE0CisJcHVzaHEgJXIxNQorCW1vdnEgJXJzcCwgT0ZGU0VUT0Zf
U1dfQ1RYX1NQKCVyZGkpICAgICAgIC8qIHNhdmUgRVNQICovCisJbW92cSBPRkZTRVRPRl9TV19D
VFhfU1AoJXJzaSksICVyc3AgICAgICAgLyogcmVzdG9yZSBFU1AgKi8KKwltb3ZxICQxZiwgT0ZG
U0VUT0ZfU1dfQ1RYX0lQKCVyZGkpICAgICAgICAvKiBzYXZlIEVJUCAqLworCXB1c2hxIE9GRlNF
VE9GX1NXX0NUWF9JUCglcnNpKSAgICAgICAgICAgIC8qIHJlc3RvcmUgRUlQICovCisJcmV0Cisx
OgorCXBvcHEgJXIxNQorCXBvcHEgJXIxNAorCXBvcHEgJXIxMworCXBvcHEgJXIxMgorCXBvcHEg
JXJieAorCXBvcHEgJXJicAorCXJldApkaWZmIC0tZ2l0IGEvcGxhdC9rdm0vTWFrZWZpbGUudWsg
Yi9wbGF0L2t2bS9NYWtlZmlsZS51awppbmRleCA0MzNkMjk4Li44MjNlNzg1IDEwMDY0NAotLS0g
YS9wbGF0L2t2bS9NYWtlZmlsZS51aworKysgYi9wbGF0L2t2bS9NYWtlZmlsZS51awpAQCAtMTYs
NiArMTYsMTEgQEAgTElCS1ZNUExBVF9BU0lOQ0xVREVTLXkgICAgICAgICs9IC1JJChVS19QTEFU
X0NPTU1PTl9CQVNFKS9pbmNsdWRlCiBMSUJLVk1QTEFUX0NJTkNMVURFUy15ICAgICAgICAgKz0g
LUkkKExJQktWTVBMQVRfQkFTRSkvaW5jbHVkZQogTElCS1ZNUExBVF9DSU5DTFVERVMteSAgICAg
ICAgICs9IC1JJChVS19QTEFUX0NPTU1PTl9CQVNFKS9pbmNsdWRlCiAKK2lmZXEgKCQoSEFWRV9T
Q0hFRCkseSkKK0xJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKFVLX1BMQVRfQ09N
TU9OX0JBU0UpL3g4Ni90aHJlYWRfc3RhcnQuU3xjb21tb24KK0xJQktWTVBMQVRfU1JDUy0kKEFS
Q0hfWDg2XzY0KSArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL3RocmVhZC5jfGNvbW1vbgorTElC
S1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkvc3df
Y3R4LmN8Y29tbW9uCitlbmRpZgogTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQo
TElCS1ZNUExBVF9CQVNFKS94ODYvZW50cnk2NC5TCiBMSUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4
Nl82NCkgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3g4Ni9jcHVfeDg2XzY0LmMKIExJQktWTVBMQVRf
U1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2L3NldHVwLmMKZGlm
ZiAtLWdpdCBhL3BsYXQveGVuL01ha2VmaWxlLnVrIGIvcGxhdC94ZW4vTWFrZWZpbGUudWsKaW5k
ZXggN2NiNTVkYy4uNGEyZjliZiAxMDA2NDQKLS0tIGEvcGxhdC94ZW4vTWFrZWZpbGUudWsKKysr
IGIvcGxhdC94ZW4vTWFrZWZpbGUudWsKQEAgLTMyLDYgKzMyLDExIEBAIExJQlhFTlBMQVRfU1JD
Uy15ICAgICAgICAgICAgICArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL2xjcHUuY3xjb21tb24K
IGlmbmVxICgsJChmaWx0ZXIgeDg2XzMyIHg4Nl82NCwkKFVLX0FSQ0gpKSkKIExJQlhFTlBMQVRf
U1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL3g4Ni90cmFjZS5j
fGNvbW1vbgogTElCWEVOUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoVUtfUExBVF9DT01N
T05fQkFTRSkveDg2L3RyYXBzLmN8Y29tbW9uCitpZmVxICgkKEhBVkVfU0NIRUQpLHkpCitMSUJY
RU5QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNFKS94ODYv
dGhyZWFkX3N0YXJ0LlN8Y29tbW9uCitMSUJYRU5QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0g
JChVS19QTEFUX0NPTU1PTl9CQVNFKS90aHJlYWQuY3xjb21tb24KK0xJQlhFTlBMQVRfU1JDUy0k
KEFSQ0hfWDg2XzY0KSArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL3N3X2N0eC5jfGNvbW1vbgor
ZW5kaWYKIExJQlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQlhFTlBMQVRfQkFT
RSkveDg2L3NldHVwLmMKIExJQlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQlhF
TlBMQVRfQkFTRSkveDg2L3RyYXBzLmMKIExJQlhFTlBMQVRfU1JDUy0kKEFSQ0hfWDg2XzMyKSAr
PSAkKExJQlhFTlBMQVRfQkFTRSkveDg2L2VudHJ5MzIuUwpAQCAtMzksNyArNDQsNiBAQCBMSUJY
RU5QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChMSUJYRU5QTEFUX0JBU0UpL3g4Ni9lbnRy
eTY0LlMKIExJQlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQlhFTlBMQVRfQkFT
RSkveDg2L21tLmMKIExJQlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQlhFTlBM
QVRfQkFTRSkveDg2L2FyY2hfZXZlbnRzLmMKIExJQlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAg
ICArPSAkKExJQlhFTlBMQVRfQkFTRSkveDg2L2FyY2hfdGltZS5jCi1MSUJYRU5QTEFUX1NSQ1Mt
JChMSUJVS1NDSEVEKSAgKz0gJChMSUJYRU5QTEFUX0JBU0UpL3g4Ni9hcmNoX3RocmVhZC5jCiAK
IGlmbmVxICgkKFhFTl9IVk1MSVRFKSx5KQogTElCWEVOUExBVF9BU0ZMQUdTLXkgICAgICAgICAg
ICs9IC1EQ09ORklHX1BBUkFWSVJUCkBAIC02NSw1ICs2OSwzIEBAIExJQlhFTlBMQVRfU1JDUy15
ICAgICAgICAgICAgICArPSAkKExJQlhFTlBMQVRfQkFTRSkvbGNwdS5jCiBMSUJYRU5QTEFUX1NS
Q1MteSAgICAgICAgICAgICAgKz0gJChMSUJYRU5QTEFUX0JBU0UpL2NvbnNvbGUuYwogTElCWEVO
UExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCWEVOUExBVF9CQVNFKS9zaHV0ZG93bi5j
CiBMSUJYRU5QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJYRU5QTEFUX0JBU0UpL2V2
ZW50cy5jCi1MSUJYRU5QTEFUX1NSQ1MtJChMSUJVS1NDSEVEKSAgKz0gJChMSUJYRU5QTEFUX0JB
U0UpL3RocmVhZC5jCi1MSUJYRU5QTEFUX1NSQ1MtJChMSUJVS1NDSEVEKSAgKz0gJChMSUJYRU5Q
TEFUX0JBU0UpL3NjaGVkLmMKZGlmZiAtLWdpdCBhL3BsYXQveGVuL2luY2x1ZGUvY29tbW9uL3Nj
aGVkLmggYi9wbGF0L3hlbi9pbmNsdWRlL2NvbW1vbi9zY2hlZC5oCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAxMmRmMWJiLi4wMDAwMDAwCi0tLSBhL3BsYXQveGVuL2luY2x1ZGUvY29t
bW9uL3NjaGVkLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi0vKiBTUERYLUxpY2Vu
c2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDA5
IENpdHJpeCBTeXN0ZW1zLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBg
YEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBB
UkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAq
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0vKgotICogUG9ydCBmcm9tIE1p
bmktT1M6IGluY2x1ZGUvc2NoZWQuaAotICovCi0KLSNpZm5kZWYgX19TQ0hFRF9IX18KLSNkZWZp
bmUgX19TQ0hFRF9IX18KLQotI2luY2x1ZGUgPHN0ZGludC5oPgotI2lmZGVmIEhBVkVfTElCQwot
I2luY2x1ZGUgPHN5cy9yZWVudC5oPgotI2VuZGlmCi0jaW5jbHVkZSA8eGVuLXg4Ni9hcmNoX3Nj
aGVkLmg+Ci0jaW5jbHVkZSA8dWsvZXNzZW50aWFscy5oPgotI2luY2x1ZGUgPHVrL2xpc3QuaD4K
LSNpbmNsdWRlIDx1ay90aHJlYWQuaD4KLQotI2RlZmluZSBzd2l0Y2hfdGhyZWFkcyhwcmV2LCBu
ZXh0KSBhcmNoX3N3aXRjaF90aHJlYWRzKHByZXYsIG5leHQpCi0KLS8qIEFyY2hpdGVjdHVyZSBz
cGVjaWZpYyBzZXR1cCBvZiB0aHJlYWQgY3JlYXRpb24uICovCi12b2lkIGFyY2hfdGhyZWFkX2lu
aXQoc3RydWN0IHVrcGxhdF90aHJlYWRfY3R4ICp0aHJlYWQsIHZvaWQgKnN0YWNrLAotCQkgICAg
ICB2b2lkICgqZnVuY3Rpb24pKHZvaWQgKiksIHZvaWQgKmRhdGEpOwotdm9pZCBhcmNoX3J1bl9p
ZGxlX3RocmVhZChzdHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggKmlkbGVfdGhyZWFkKSBfX25vcmV0
dXJuOwotCi0vKiBUT0RPIHJldmlzaXQgZm9yIG90aGVyIHNjaGVkdWxlcnMgKi8KLXZvaWQgZXhp
dF90aHJlYWQodm9pZCkgX19ub3JldHVybjsKLQotI2VuZGlmIC8qIF9fU0NIRURfSF9fICovCmRp
ZmYgLS1naXQgYS9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvYXJjaF9zY2hlZC5oIGIvcGxhdC94
ZW4vaW5jbHVkZS94ZW4teDg2L2FyY2hfc2NoZWQuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNmY3MTRlOC4uMDAwMDAwMAotLS0gYS9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvYXJj
aF9zY2hlZC5oCisrKyAvZGV2L251bGwKQEAgLTEsNTUgKzAsMCBAQAotLyogU1BEWC1MaWNlbnNl
LUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLwotLyoKLSAqIENvcHlyaWdodCAoYykgMjAwOSBD
aXRyaXggU3lzdGVtcywgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBB
UyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJF
IERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotLyoKLSAqIFBvcnQgZnJvbSBNaW5p
LU9TOiBpbmNsdWRlL3g4Ni9hcmNoX3NjaGVkLmgKLSAqLwotCi0jaWZuZGVmIF9fQVJDSF9TQ0hF
RF9IX18KLSNkZWZpbmUgX19BUkNIX1NDSEVEX0hfXwotCi0jaW5jbHVkZSAidWsvYXJjaC9saW1p
dHMuaCIKLQotc3RhdGljIGlubGluZSBzdHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggKmdldF9jdXJy
ZW50X2N0eCh2b2lkKQotewotCXN0cnVjdCB1a3BsYXRfdGhyZWFkX2N0eCAqKmN1cnJlbnQ7Ci0j
aWZkZWYgX19pMzg2X18KLQlyZWdpc3RlciB1bnNpZ25lZCBsb25nIHNwIGFzbSgiZXNwIik7Ci0j
ZWxzZQotCXJlZ2lzdGVyIHVuc2lnbmVkIGxvbmcgc3AgYXNtKCJyc3AiKTsKLSNlbmRpZgotCWN1
cnJlbnQgPSAoc3RydWN0IHVrcGxhdF90aHJlYWRfY3R4ICoqKQotCQkgICh1bnNpZ25lZCBsb25n
KShzcCAmIH4oX19TVEFDS19TSVpFLTEpKTsKLQotCXJldHVybiAqY3VycmVudDsKLX0KLQotZXh0
ZXJuIHZvaWQgX19hcmNoX3N3aXRjaF90aHJlYWRzKHVuc2lnbmVkIGxvbmcgKnByZXZjdHgsCi0J
CQkJICB1bnNpZ25lZCBsb25nICpuZXh0Y3R4KTsKLQotI2RlZmluZSBhcmNoX3N3aXRjaF90aHJl
YWRzKHByZXYsIG5leHQpIFwKLQlfX2FyY2hfc3dpdGNoX3RocmVhZHMoJihwcmV2KS0+c3AsICYo
bmV4dCktPnNwKQotCi0jZW5kaWYgLyogX19BUkNIX1NDSEVEX0hfXyAqLwpkaWZmIC0tZ2l0IGEv
cGxhdC94ZW4vc2NoZWQuYyBiL3BsYXQveGVuL3NjaGVkLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDJhNDAxNWUuLjAwMDAwMDAKLS0tIGEvcGxhdC94ZW4vc2NoZWQuYworKysgL2Rl
di9udWxsCkBAIC0xLDEwNiArMCwwIEBACi0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlU
ICovCi0vKgotICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAqIChDKSAyMDA1IC0gR3J6ZWdvcnogTWls
b3MgLSBJbnRlbCBSZXNlYXJjaCBDYW1icmlkZ2UKLSAqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gKgot
ICogICAgICAgIEZpbGU6IHNjaGVkLmMKLSAqICAgICAgQXV0aG9yOiBHcnplZ29yeiBNaWxvcwot
ICogICAgIENoYW5nZXM6IFJvYmVydCBLYWlzZXIKLSAqCi0gKiAgICAgICAgRGF0ZTogQXVnIDIw
MDUKLSAqCi0gKiBFbnZpcm9ubWVudDogWGVuIE1pbmltYWwgT1MKLSAqIERlc2NyaXB0aW9uOiBz
aW1wbGUgc2NoZWR1bGVyIGZvciBNaW5pLU9zCi0gKiAgICAgICAgICAgICAgUG9ydGVkIGZyb20g
TWluaS1PUwotICoKLSAqIFRoZSBzY2hlZHVsZXIgaXMgbm9uLXByZWVtcHRpdmUgKGNvb3BlcmF0
aXZlKSwgYW5kIHNjaGVkdWxlcyBhY2NvcmRpbmcKLSAqIHRvIFJvdW5kIFJvYmluIGFsZ29yaXRo
bS4KLSAqCi0gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3Jh
bnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weQotICog
b2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUg
IlNvZnR3YXJlIiksIHRvCi0gKiBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0
aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZQotICogcmlnaHRzIHRvIHVzZSwg
Y29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5k
L29yCi0gKiBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29u
cyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwotICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0
IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKLSAqCi0gKiBUaGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbgot
ICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCi0g
KgotICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkg
T0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKLSAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJ
TUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAotICogRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFCi0gKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1Ig
QU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCi0gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4g
QUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORwotICogRlJPTSwg
T1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBP
VEhFUgotICogREVBTElOR1MgSU4gVEhFIFNPRlRXQVJFLgotICovCi0KLSNpbmNsdWRlIDxzdGRs
aWIuaD4KLSNpbmNsdWRlIDxzdGRpbnQuaD4KLSNpbmNsdWRlIDxjb21tb24vaHlwZXJ2aXNvci5o
PgotI2luY2x1ZGUgPGNvbW1vbi9zY2hlZC5oPgotI2luY2x1ZGUgPHhlbi14ODYvaXJxLmg+Ci0j
aW5jbHVkZSA8dWsvc2NoZWQuaD4KLSNpbmNsdWRlIDx1ay9saXN0Lmg+Ci0jaW5jbHVkZSA8dWsv
YXNzZXJ0Lmg+Ci0KLQotI2lmZGVmIFNDSEVEX0RFQlVHCi0jZGVmaW5lIERFQlVHKF9mLCBfYS4u
LikgXAotCXVrX3ByaW50aygiTUlOSV9PUyhmaWxlPXNjaGVkLmMsIGxpbmU9JWQpICIgX2YgIlxu
IiwgX19MSU5FX18sICMjIF9hKQotI2Vsc2UKLSNkZWZpbmUgREVCVUcoX2YsIF9hLi4uKQkoKHZv
aWQpMCkKLSNlbmRpZgotCi0jaWYgMC8vVE9ETyByZXZpc2l0Ci0jaWZkZWYgSEFWRV9MSUJDCi1z
dGF0aWMgc3RydWN0IF9yZWVudCBjYWxsYmFja19yZWVudDsKLXN0cnVjdCBfcmVlbnQgKl9fZ2V0
cmVlbnQodm9pZCkKLXsKLQlzdHJ1Y3QgX3JlZW50ICpfcmVlbnQ7Ci0KLQlpZiAoIXRocmVhZHNf
c3RhcnRlZCkKLQkJX3JlZW50ID0gX2ltcHVyZV9wdHI7Ci0JZWxzZSBpZiAoaW5fY2FsbGJhY2sp
Ci0JCV9yZWVudCA9ICZjYWxsYmFja19yZWVudDsKLQllbHNlCi0JCV9yZWVudCA9ICZnZXRfY3Vy
cmVudF9jdHgoKS0+cmVlbnQ7Ci0KLSNpZm5kZWYgTkRFQlVHCi0jaWYgZGVmaW5lZChfX3g4Nl82
NF9fKSB8fCBkZWZpbmVkKF9feDg2X18pCi0JewotI2lmZGVmIF9feDg2XzY0X18KLQkJcmVnaXN0
ZXIgdW5zaWduZWQgbG9uZyBzcCBhc20gKCJyc3AiKTsKLSNlbHNlCi0JCXJlZ2lzdGVyIHVuc2ln
bmVkIGxvbmcgc3AgYXNtICgiZXNwIik7Ci0jZW5kaWYKLQkJaWYgKChzcCAmIChTVEFDS19TSVpF
LTEpKSA8IFNUQUNLX1NJWkUgLyAxNikgewotCQkJc3RhdGljIGludCBvdmVyZmxvd2luZzsKLQot
CQkJaWYgKCFvdmVyZmxvd2luZykgewotCQkJCW92ZXJmbG93aW5nID0gMTsKLQkJCQl1a19wcmlu
dGsoInN0YWNrIG92ZXJmbG93XG4iKTsKLQkJCQlVQ19CVUcoKTsKLQkJCX0KLQkJfQotCX0KLSNl
bmRpZgotI2Vsc2UKLSNlcnJvciBOb3QgaW1wbGVtZW50ZWQgeWV0Ci0jZW5kaWYKLQlyZXR1cm4g
X3JlZW50OwotfQotI2VuZGlmCi0jZW5kaWYKLQotdm9pZCBleGl0X3RocmVhZCh2b2lkKQotewot
CXN0cnVjdCB1a190aHJlYWQgKnRocmVhZCA9IHVrX3RocmVhZF9jdXJyZW50KCk7Ci0KLQl1a19w
cmludGsoIlRocmVhZCBcIiVzXCIgZXhpdGVkLlxuIiwgdGhyZWFkLT5uYW1lKTsKLQotCXVrX3Ro
cmVhZF9zdG9wKHRocmVhZCk7Ci0JVUtfQ1JBU0goIkVycm9yIHN0b3BwaW5nIHRocmVhZC4iKTsK
LX0KZGlmZiAtLWdpdCBhL3BsYXQveGVuL3RocmVhZC5jIGIvcGxhdC94ZW4vdGhyZWFkLmMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxZjMzZDQuLjAwMDAwMDAKLS0tIGEvcGxhdC94
ZW4vdGhyZWFkLmMKKysrIC9kZXYvbnVsbApAQCAtMSw2NiArMCwwIEBACi0vKiBTUERYLUxpY2Vu
c2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICovCi0vKgotICogQXV0aG9yczogQ29zdGluIEx1
cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KLSAqCi0gKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5F
QyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xkZXIg
bm9yIHRoZSBuYW1lcyBvZiBpdHMKLSAqICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0gKiAgICB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMgIkFTIElTIgotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UKLSAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhP
TERFUiBPUiBDT05UUklCVVRPUlMgQkUKLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0g
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQot
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUKLSAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICoK
LSAqIFRISVMgSEVBREVSIE1BWSBOT1QgQkUgRVhUUkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBX
QVkuCi0gKi8KLS8qCi0gKiBQbGF0Zm9ybSBzcGVjaWZpYyB0aHJlYWQgZnVuY3Rpb25zCi0gKiBQ
b3J0ZWQgZnJvbSBNaW5pLU9TCi0gKi8KLQotI2luY2x1ZGUgPHVrL3NjaGVkLmg+Ci0jaW5jbHVk
ZSA8dWsvcGxhdC90aHJlYWQuaD4KLSNpbmNsdWRlIDxjb21tb24vc2NoZWQuaD4KLQotaW50IHVr
cGxhdF90aHJlYWRfY3R4X2luaXQoc3RydWN0IHVrcGxhdF90aHJlYWRfY3R4ICpjdHgsIHZvaWQg
KnN0YWNrLAotCQl2b2lkICgqZnVuY3Rpb24pKHZvaWQgKiksIHZvaWQgKmRhdGEpCi17Ci0JLyog
Q2FsbCBhcmNoaXRlY3R1cmUgc3BlY2lmaWMgc2V0dXAuICovCi0JYXJjaF90aHJlYWRfaW5pdChj
dHgsIHN0YWNrLCBmdW5jdGlvbiwgZGF0YSk7Ci0KLQlyZXR1cm4gMDsKLX0KLQotdm9pZCB1a3Bs
YXRfdGhyZWFkX2N0eF9zd2l0Y2goc3RydWN0IHVrcGxhdF90aHJlYWRfY3R4ICpwcmV2LAotCQlz
dHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggKm5leHQpCi17Ci0Jc3dpdGNoX3RocmVhZHMocHJldiwg
bmV4dCk7Ci19Ci0KLXN0cnVjdCB1a3BsYXRfdGhyZWFkX2N0eCAqdWtwbGF0X3RocmVhZF9jdHhf
Y3VycmVudCh2b2lkKQotewotCXJldHVybiBnZXRfY3VycmVudF9jdHgoKTsKLX0KLQotdm9pZCB1
a3BsYXRfdGhyZWFkX2N0eF9ydW5faWRsZShzdHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggKmN0eCkK
LXsKLQlhcmNoX3J1bl9pZGxlX3RocmVhZChjdHgpOwotfQpkaWZmIC0tZ2l0IGEvcGxhdC94ZW4v
eDg2L2FyY2hfdGhyZWFkLmMgYi9wbGF0L3hlbi94ODYvYXJjaF90aHJlYWQuYwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNjUyMmJkNS4uMDAwMDAwMAotLS0gYS9wbGF0L3hlbi94ODYv
YXJjaF90aHJlYWQuYworKysgL2Rldi9udWxsCkBAIC0xLDkzICswLDAgQEAKLS8qIFNQRFgtTGlj
ZW5zZS1JZGVudGlmaWVyOiBNSVQgKi8KLS8qCi0gKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICogKEMp
IDIwMDUgLSBHcnplZ29yeiBNaWxvcyAtIEludGVsIFJlc2VhcmNoIENhbWJyaWRnZQotICoqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioKLSAqCi0gKiAgICAgICAgRmlsZTogc2NoZWQuYwotICogICAgICBBdXRo
b3I6IEdyemVnb3J6IE1pbG9zCi0gKiAgICAgQ2hhbmdlczogUm9iZXJ0IEthaXNlcgotICoKLSAq
ICAgICAgICBEYXRlOiBBdWcgMjAwNQotICoKLSAqIEVudmlyb25tZW50OiBYZW4gTWluaW1hbCBP
UwotICogRGVzY3JpcHRpb246IHNpbXBsZSBzY2hlZHVsZXIgZm9yIE1pbmktT3MKLSAqICAgICAg
ICAgICAgICBQb3J0ZWQgZnJvbSBNaW5pLU9TCi0gKgotICogVGhlIHNjaGVkdWxlciBpcyBub24t
cHJlZW1wdGl2ZSAoY29vcGVyYXRpdmUpLCBhbmQgc2NoZWR1bGVzIGFjY29yZGluZwotICogdG8g
Um91bmQgUm9iaW4gYWxnb3JpdGhtLgotICoKLSAqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gKiBQZXJt
aXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBv
YnRhaW5pbmcgYSBjb3B5Ci0gKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3Vt
ZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8KLSAqIGRlYWwgaW4gdGhlIFNvZnR3
YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhl
Ci0gKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmli
dXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKLSAqIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwg
YW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCi0gKiBmdXJuaXNo
ZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgotICoKLSAq
IFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNo
YWxsIGJlIGluY2x1ZGVkIGluCi0gKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25z
IG9mIHRoZSBTb2Z0d2FyZS4KLSAqCi0gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElT
IiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgotICogSU1QTElFRCwg
SU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFksCi0gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklO
R0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhP
TERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKLSAqIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNF
LCBBUklTSU5HCi0gKiBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZU
V0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSCi0gKiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuCi0g
Ki8KLQotI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgPHVrL2FyY2gvdGhyZWFkLmg+Ci0j
aW5jbHVkZSA8dWsvcGxhdC9jb25maWcuaD4KLSNpbmNsdWRlIDx1ay9hc3NlcnQuaD4KLQotCi0v
KiBHZXRzIHJ1biB3aGVuIGEgbmV3IHRocmVhZCBpcyBzY2hlZHVsZWQgdGhlIGZpcnN0IHRpbWUg
ZXZlciwKLSAqIGRlZmluZWQgaW4geDg2X1szMi82NF0uUwotICovCi1leHRlcm4gdm9pZCB0aHJl
YWRfc3RhcnRlcih2b2lkKTsKLQotLyogUHVzaGVzIHRoZSBzcGVjaWZpZWQgdmFsdWUgb250byB0
aGUgc3RhY2sgb2YgdGhlIHNwZWNpZmllZCB0aHJlYWQgKi8KLXN0YXRpYyB2b2lkIHN0YWNrX3B1
c2goc3RydWN0IHVrcGxhdF90aHJlYWRfY3R4ICpjdHgsIHVuc2lnbmVkIGxvbmcgdmFsdWUpCi17
Ci0JY3R4LT5zcCAtPSBzaXplb2YodW5zaWduZWQgbG9uZyk7Ci0JKigodW5zaWduZWQgbG9uZyAq
KSBjdHgtPnNwKSA9IHZhbHVlOwotfQotCi0vKiBBcmNoaXRlY3R1cmUgc3BlY2lmaWMgc2V0dXAg
b2YgdGhyZWFkIGNyZWF0aW9uICovCi12b2lkIGFyY2hfdGhyZWFkX2luaXQoc3RydWN0IHVrcGxh
dF90aHJlYWRfY3R4ICpjdHgsIHZvaWQgKnN0YWNrLAotCQkgICAgICB2b2lkICgqZnVuY3Rpb24p
KHZvaWQgKiksIHZvaWQgKmRhdGEpCi17Ci0JVUtfQVNTRVJUKGN0eCAhPSBOVUxMKTsKLQlVS19B
U1NFUlQoc3RhY2sgIT0gTlVMTCk7Ci0KLQljdHgtPnNwID0gKHVuc2lnbmVkIGxvbmcpIHN0YWNr
ICsgU1RBQ0tfU0laRTsKLQkvKiBTYXZlIHBvaW50ZXIgdG8gdGhlIHRocmVhZCBvbiB0aGUgc3Rh
Y2ssIHVzZWQgYnkgY3VycmVudCBtYWNybyAqLwotCSooKHVuc2lnbmVkIGxvbmcgKikgc3RhY2sp
ID0gKHVuc2lnbmVkIGxvbmcpIGN0eDsKLQotCS8qIE11c3QgZW5zdXJlIHRoYXQgKCVyc3AgKyA4
KSBpcyAxNi1ieXRlIGFsaWduZWQKLQkgKiBhdCB0aGUgc3RhcnQgb2YgdGhyZWFkX3N0YXJ0ZXIu
Ci0JICovCi0JY3R4LT5zcCAtPSBzaXplb2YodW5zaWduZWQgbG9uZyk7Ci0KLQlzdGFja19wdXNo
KGN0eCwgKHVuc2lnbmVkIGxvbmcpIGZ1bmN0aW9uKTsKLQlzdGFja19wdXNoKGN0eCwgKHVuc2ln
bmVkIGxvbmcpIGRhdGEpOwotCWN0eC0+aXAgPSAodW5zaWduZWQgbG9uZykgdGhyZWFkX3N0YXJ0
ZXI7Ci19Ci0KLXZvaWQgYXJjaF9ydW5faWRsZV90aHJlYWQoc3RydWN0IHVrcGxhdF90aHJlYWRf
Y3R4ICpjdHgpCi17Ci0gICAgLyogU3dpdGNoIHN0YWNrcyBhbmQgcnVuIHRoZSB0aHJlYWQgKi8K
LQlfX2FzbV9fIF9fdm9sYXRpbGVfXygKLSNpZiBkZWZpbmVkKF9faTM4Nl9fKQotCQkJIm1vdiAl
MCwlJWVzcFxuXHQiCi0jZWxpZiBkZWZpbmVkKF9feDg2XzY0X18pCi0JCQkibW92ICUwLCUlcnNw
XG5cdCIKLSNlbmRpZgotCQkJInB1c2ggJTFcblx0IgotCQkJInJldCIKLQkJCTogIj1tIiAoY3R4
LT5zcCkKLQkJCTogIm0iIChjdHgtPmlwKQotCSk7Ci19CmRpZmYgLS1naXQgYS9wbGF0L3hlbi94
ODYvZW50cnk2NC5TIGIvcGxhdC94ZW4veDg2L2VudHJ5NjQuUwppbmRleCBkYjljNjE1Li5jMjY2
ODA0IDEwMDY0NAotLS0gYS9wbGF0L3hlbi94ODYvZW50cnk2NC5TCisrKyBiL3BsYXQveGVuL3g4
Ni9lbnRyeTY0LlMKQEAgLTM0MCwzNyArMzQwLDYgQEAgVFJBUF9FTlRSWSBzaW1kX2Vycm9yLCAg
ICAgICAgICAwCiAvKiBubyBWaXJ0dWFsaXphdGlvbiBFeGNlcHRpb24gKi8KIAogCi0jaWYgSEFW
RV9TQ0hFRAotRU5UUlkodGhyZWFkX3N0YXJ0ZXIpCi0gICAgICAgIHBvcHEgJXJkaQotICAgICAg
ICBwb3BxICVyYngKLSAgICAgICAgcHVzaHEgJDAKLSAgICAgICAgeG9ycSAlcmJwLCVyYnAKLSAg
ICAgICAgY2FsbCAqJXJieAotICAgICAgICBjYWxsIGV4aXRfdGhyZWFkCi0KLUVOVFJZKF9fYXJj
aF9zd2l0Y2hfdGhyZWFkcykKLQlwdXNocSAlcmJwCi0JcHVzaHEgJXJieAotCXB1c2hxICVyMTIK
LQlwdXNocSAlcjEzCi0JcHVzaHEgJXIxNAotCXB1c2hxICVyMTUKLQltb3ZxICVyc3AsICglcmRp
KQkJLyogc2F2ZSBFU1AgKi8KLQltb3ZxICglcnNpKSwgJXJzcAkJLyogcmVzdG9yZSBFU1AgKi8K
LQltb3ZxICQxZiwgOCglcmRpKQkJLyogc2F2ZSBFSVAgKi8KLQlwdXNocSA4KCVyc2kpCQkJLyog
cmVzdG9yZSBFSVAgKi8KLQlyZXQKLTE6Ci0JcG9wcSAlcjE1Ci0JcG9wcSAlcjE0Ci0JcG9wcSAl
cjEzCi0JcG9wcSAlcjEyCi0JcG9wcSAlcmJ4Ci0JcG9wcSAlcmJwCi0JcmV0Ci0jZW5kaWYKLQog
I2lmbmRlZiBDT05GSUdfUEFSQVZJUlQKIC5kYXRhCiAuZ2xvYmwgcGFnZV90YWJsZV9iYXNlCmRp
ZmYgLS1naXQgYS9wbGF0L3hlbi94ODYvc2V0dXAuYyBiL3BsYXQveGVuL3g4Ni9zZXR1cC5jCmlu
ZGV4IDEwZjkzOWQuLjFlMGYwZjcgMTAwNjQ0Ci0tLSBhL3BsYXQveGVuL3g4Ni9zZXR1cC5jCisr
KyBiL3BsYXQveGVuL3g4Ni9zZXR1cC5jCkBAIC03OCw5ICs3OCw2IEBACiAjaW5jbHVkZSA8eGVu
L3hlbi5oPgogI2luY2x1ZGUgPGNvbW1vbi9jb25zb2xlLmg+CiAjaW5jbHVkZSA8Y29tbW9uL2V2
ZW50cy5oPgotI2lmIExJQlVLU0NIRUQKLSNpbmNsdWRlIDxjb21tb24vc2NoZWQuaD4KLSNlbmRp
ZgogI2lmZGVmIF9fWDg2XzY0X18KICNpbmNsdWRlIDx4ZW4teDg2L2h5cGVyY2FsbDY0Lmg+CiAj
ZWxzZQotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5w
cm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8v
bWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 14:47:25 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 14:47:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3jh7-0007Hf-Eo; Wed, 04 Apr 2018 14:47:25 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=3ptd=gz=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3jh6-0007HQ-CQ
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 14:47:24 +0000
X-Inumbo-ID: ff043210-3816-11e8-9728-bc764e045a96
Received: from mail-wr0-x229.google.com (unknown [2a00:1450:400c:c0c::229])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id ff043210-3816-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 16:46:46 +0200 (CEST)
Received: by mail-wr0-x229.google.com with SMTP id d1so23119225wrj.13;
 Wed, 04 Apr 2018 07:47:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=Zqhgm+wOmX1ehSHuG1UfDT/79vYrSCDNcOciQdC8GXM=;
 b=swK9Pw7uw8BtXPjIm2xiXVpD2NVSAN6Y2Mrun76vWJ0zxb3Bon5kmCHFXoDF68SwAj
 k0Bww6/LQQ8cBWii9abweEeaKiaNG/ZPpg3C89GsdAh6ZSoYI2nvAxVX7vVT52UPQDFS
 ZaVUQCcoTdirDzb0WBxz71fFmcYPdCqzVMFPLQ7gvLInsvRsENL50bNjJ2EKwdharmRC
 OTAEQ0nExY7ZyWHq6ZzHUmMpGAolTwduSzKakfvkKdDowX/MxKl1vfo6SMiS5S66nyDh
 B3e9JGyDGF7kQ7KpvLYixNTvAPoPHFCNMjuqPuC67OGOQ9cIt/glO19G//Fwlqptwwwm
 D/2Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=Zqhgm+wOmX1ehSHuG1UfDT/79vYrSCDNcOciQdC8GXM=;
 b=Ed6ScAM8tWijNzkwr1W+8mqkD2Fc6uLvm1ci12Qfs3oKI0/q1gOKfZ/5zMluJgG2ji
 rVrZy+y0a3Dy+Q5qY9KSUB7XFy+5J6ao9HqhfJNH1CcAsGTe1Fuv8WXjgreeTu/aLX3j
 mHeCNBcZQB/lMsrYprCXUPvYZvqHhNuckb9Be6bn5SUxg1LlrGfh6pZ98I0UeIX+OlIb
 x0k+ILi5AhkhNM3zmbBdXer8iMYGfkF91w1hL73e4yQKPiEkXwTM5igp/mCtZrqL5NRP
 ujRd4ypydl6zj5ZTJYG5k95kSAUE/HO/ptWQlFZwPBG+7pHC87lOCJO/w7YsaduayUF4
 a2OQ==
X-Gm-Message-State: ALQs6tDdRGT059DpUG3i4YI5XTZAdfoH7mIO6GFJPm4xqllDlt/cJd7O
 3oI3qGih8YIsAlkg5cHOdb0vS+GW6jnWnLOR+fA=
X-Google-Smtp-Source: AIpwx4948YpDr3h0TfYp6oSRaymbKKXWAe/IVehoRSS7O+iHEox8iLO6KwjSk7MXaMeqjoP4LopguMOXOiBkmuFe6i0=
X-Received: by 2002:a19:e418:: with SMTP id
 b24-v6mr10995174lfh.61.1522853241587; 
 Wed, 04 Apr 2018 07:47:21 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Wed, 4 Apr 2018 07:47:21 -0700 (PDT)
In-Reply-To: <alpine.LFD.2.21.1804041102390.2498@algedi.dur.ac.uk>
References: <CAHP4M8WiOD+RhbX2Eqk8z+1g=i0pcQNmJqM6X_hQ_u=K+A3ryw@mail.gmail.com>
 <alpine.LFD.2.21.1804041102390.2498@algedi.dur.ac.uk>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Wed, 4 Apr 2018 20:17:21 +0530
Message-ID: <CAHP4M8WLxg+HaTs+L9SmhmkBiTugSR98YH8mvRx-T2i8A0q9jg@mail.gmail.com>
To: M A Young <m.a.young@durham.ac.uk>
Subject: Re: [Minios-devel] [Xen-devel] Xen-4.10 Domain-0 crashes at bootup
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhhbmtzIE1pY2hhZWwgZm9yIHRoZSByZXBseS4KCkkgd2FudCB0byBnaXZlIHRoaXMgcGF0Y2gg
YSB0cnksIGFzIHRoZSBzeW1wdG9tcyBsb29rIGlkZW50aWNhbC4KSG93ZXZlciwgSSBzZWUgbm8g
eGVuLWhlYWQuUyB3aGVuIEkgY2xvbmUgdGhlIHJlcG8gZnJvbQpnaXQ6Ly94ZW5iaXRzLnhlbi5v
cmcveGVuLmdpdAoKV2hhdCBhbSBJIG1pc3Npbmc/CgoKVGhhbmtzIGFuZCBSZWdhcmRzLApBamF5
Cgo+Cj4gSXQgaXMgYSBrZXJuZWwgcHJvYmxlbSB1bmRlciBzb21lIGNvbXBpbGUgY29uZGl0aW9u
cy4gU2VlIGZvciBleGFtcGxlCj4gaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9hcmNoaXZl
cy9odG1sL3hlbi1kZXZlbC8yMDE4LTAyL21zZzAwMDEwLmh0bWwKPiBhbmQgdGhlIHBhdGNoIGF0
Cj4gaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9hcmNoaXZlcy9odG1sL3hlbi1kZXZlbC8y
MDE4LTAyL21zZzAwMDQ1Lmh0bWwKPgo+ICAgICAgICAgTWljaGFlbCBZb3VuZwoKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxp
bmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54
ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 15:02:16 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 15:02:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3jvS-0000Ty-Vn; Wed, 04 Apr 2018 15:02:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=yz9+=gz=durham.ac.uk=m.a.young@srs-us1.protection.inumbo.net>)
 id 1f3jvR-0000Ti-TX
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 15:02:13 +0000
X-Inumbo-ID: 52fa5fbe-3819-11e8-8249-2fda3a446a53
Received: from hermes1.dur.ac.uk (unknown [129.234.7.138])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 52fa5fbe-3819-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 15:03:25 +0000 (UTC)
Received: from smtphost2.dur.ac.uk (smtphost2.dur.ac.uk [129.234.7.144])
 by hermes1.dur.ac.uk (8.14.4/8.14.4) with ESMTP id w34F151M036813;
 Wed, 4 Apr 2018 16:01:09 +0100
Received: from algedi.dur.ac.uk (algedi.dur.ac.uk [129.234.2.28])
 by smtphost2.dur.ac.uk (8.14.4/8.14.4) with ESMTP id w34F0xRM001243;
 Wed, 4 Apr 2018 16:00:59 +0100
Received: by algedi.dur.ac.uk (Postfix, from userid 2742)
 id DE744283F21; Wed,  4 Apr 2018 16:00:53 +0100 (BST)
Received: from localhost (localhost [127.0.0.1])
 by algedi.dur.ac.uk (Postfix) with ESMTP id CE7F1281364;
 Wed,  4 Apr 2018 16:00:53 +0100 (BST)
Date: Wed, 4 Apr 2018 16:00:53 +0100 (BST)
From: M A Young <m.a.young@durham.ac.uk>
To: Ajay Garg <ajaygargnsit@gmail.com>
In-Reply-To: <CAHP4M8WLxg+HaTs+L9SmhmkBiTugSR98YH8mvRx-T2i8A0q9jg@mail.gmail.com>
Message-ID: <alpine.LFD.2.21.1804041549230.2498@algedi.dur.ac.uk>
References: <CAHP4M8WiOD+RhbX2Eqk8z+1g=i0pcQNmJqM6X_hQ_u=K+A3ryw@mail.gmail.com>
 <alpine.LFD.2.21.1804041102390.2498@algedi.dur.ac.uk>
 <CAHP4M8WLxg+HaTs+L9SmhmkBiTugSR98YH8mvRx-T2i8A0q9jg@mail.gmail.com>
User-Agent: Alpine 2.21 (LFD 202 2017-01-01)
MIME-Version: 1.0
X-DurhamAcUk-MailScanner: Found to be clean, Found to be clean
X-DurhamAcUk-MailScanner-ID: w34F151M036813
Subject: Re: [Minios-devel] [Xen-devel] Xen-4.10 Domain-0 crashes at bootup
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCA0IEFwciAyMDE4LCBBamF5IEdhcmcgd3JvdGU6Cgo+IFRoYW5rcyBNaWNoYWVsIGZv
ciB0aGUgcmVwbHkuCj4gCj4gSSB3YW50IHRvIGdpdmUgdGhpcyBwYXRjaCBhIHRyeSwgYXMgdGhl
IHN5bXB0b21zIGxvb2sgaWRlbnRpY2FsLgo+IEhvd2V2ZXIsIEkgc2VlIG5vIHhlbi1oZWFkLlMg
d2hlbiBJIGNsb25lIHRoZSByZXBvIGZyb20KPiBnaXQ6Ly94ZW5iaXRzLnhlbi5vcmcveGVuLmdp
dAo+IAo+IFdoYXQgYW0gSSBtaXNzaW5nPwoKVGhlIHBhdGNoIGlzIGZvciB0aGUgeGVuIGNvZGUg
aW4gdGhlIGtlcm5lbC4gSXQgd2FzIGFjY2VwdGVkIGluIHRoZSBrZXJuZWwgCnVwc3RyZWFtIChp
biA0LjE1LjUgYW5kIHByb2JhYmx5IGJhY2twb3J0ZWQgdG8gb3RoZXIgbWFpbnRhaW5lZCBrZXJu
ZWxzKSAKc28geW91IHByb2JhYmx5IGp1c3QgbmVlZCBhIGtlcm5lbCBsZXNzIHRoYW4gYSBtb250
aCBvbGQsIGJ1dCBhcyBoYXMgCmFscmVhZHkgYmVlbiBzYWlkLCB0aGUga2VybmVsIG1heSBub3Qg
YmUgdGhlIHByb2JsZW0uCgoJTWljaGFlbCBZb3VuZwoKX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3Mt
ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9t
YWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 15:15:39 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 15:15:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3k8Q-0001Mx-9c; Wed, 04 Apr 2018 15:15:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=2lni=gz=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1f3k8O-0001Mn-FF
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 15:15:36 +0000
X-Inumbo-ID: 3142c2b6-381b-11e8-8249-2fda3a446a53
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 3142c2b6-381b-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 15:16:48 +0000 (UTC)
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
Received: from relay2.suse.de (charybdis-ext.suse.de [195.135.220.254])
 by mx2.suse.de (Postfix) with ESMTP id 93B3CAD48;
 Wed,  4 Apr 2018 15:15:33 +0000 (UTC)
To: M A Young <m.a.young@durham.ac.uk>, Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8WiOD+RhbX2Eqk8z+1g=i0pcQNmJqM6X_hQ_u=K+A3ryw@mail.gmail.com>
 <alpine.LFD.2.21.1804041102390.2498@algedi.dur.ac.uk>
 <CAHP4M8WLxg+HaTs+L9SmhmkBiTugSR98YH8mvRx-T2i8A0q9jg@mail.gmail.com>
 <alpine.LFD.2.21.1804041549230.2498@algedi.dur.ac.uk>
From: Juergen Gross <jgross@suse.com>
Message-ID: <d4a73b42-0bec-c237-51cd-88851ee0368e@suse.com>
Date: Wed, 4 Apr 2018 17:15:32 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <alpine.LFD.2.21.1804041549230.2498@algedi.dur.ac.uk>
Content-Language: de-DE
Subject: Re: [Minios-devel] [Xen-devel] Xen-4.10 Domain-0 crashes at bootup
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gMDQvMDQvMTggMTc6MDAsIE0gQSBZb3VuZyB3cm90ZToKPiBPbiBXZWQsIDQgQXByIDIwMTgs
IEFqYXkgR2FyZyB3cm90ZToKPiAKPj4gVGhhbmtzIE1pY2hhZWwgZm9yIHRoZSByZXBseS4KPj4K
Pj4gSSB3YW50IHRvIGdpdmUgdGhpcyBwYXRjaCBhIHRyeSwgYXMgdGhlIHN5bXB0b21zIGxvb2sg
aWRlbnRpY2FsLgo+PiBIb3dldmVyLCBJIHNlZSBubyB4ZW4taGVhZC5TIHdoZW4gSSBjbG9uZSB0
aGUgcmVwbyBmcm9tCj4+IGdpdDovL3hlbmJpdHMueGVuLm9yZy94ZW4uZ2l0Cj4+Cj4+IFdoYXQg
YW0gSSBtaXNzaW5nPwo+IAo+IFRoZSBwYXRjaCBpcyBmb3IgdGhlIHhlbiBjb2RlIGluIHRoZSBr
ZXJuZWwuIEl0IHdhcyBhY2NlcHRlZCBpbiB0aGUga2VybmVsIAo+IHVwc3RyZWFtIChpbiA0LjE1
LjUgYW5kIHByb2JhYmx5IGJhY2twb3J0ZWQgdG8gb3RoZXIgbWFpbnRhaW5lZCBrZXJuZWxzKSAK
PiBzbyB5b3UgcHJvYmFibHkganVzdCBuZWVkIGEga2VybmVsIGxlc3MgdGhhbiBhIG1vbnRoIG9s
ZCwgYnV0IGFzIGhhcyAKPiBhbHJlYWR5IGJlZW4gc2FpZCwgdGhlIGtlcm5lbCBtYXkgbm90IGJl
IHRoZSBwcm9ibGVtLgoKQW5kIHRoZSBzeW1wdG9tcyBhcmUgY29tcGxldGVseSBkaWZmZXJlbnQg
KHdlbGwsIGF0IGxlYXN0IGZvciBtZSkuCgpBamF5J3MgY3Jhc2ggaXMgZHVlIHRvIGFuIGlsbGVn
YWwgaW5zdHJ1Y3Rpb24sIHNvIHByb2JhYmx5IGEgQlVHKCkuCgpUaGUgcGF0Y2ggYWJvdmUgZml4
ZXMgYW4gZWFybHkgcGFnZSBmYXVsdCBpbiB0aGUga2VybmVsLgoKCkp1ZXJnZW4KCl9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWls
aW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMu
eGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 21:24:01 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 21:24:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3psu-0005Yv-9P; Wed, 04 Apr 2018 21:24:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3pst-0005Yq-MN
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 21:23:59 +0000
X-Inumbo-ID: a76d48d0-384e-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id a76d48d0-384e-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 21:25:10 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 11EF9104336;
 Wed,  4 Apr 2018 23:23:55 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id lm6fLJDS-f1i; Wed,  4 Apr 2018 23:23:54 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id E2110104335;
 Wed,  4 Apr 2018 23:23:44 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 23:23:44 +0200
To: Wei Chen <Wei.Chen@arm.com>, <minios-devel@lists.xenproject.org>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <103fce6f-1663-9e27-0c86-5cf34b892f4d@neclab.eu>
Date: Wed, 4 Apr 2018 23:23:43 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 0/9] Prepare build scripts to
 support ARM64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhhbmtzIGEgbG90IGZvciB0aGlzIHBhdGNoIHNlcmllcyEKSSBhZGRlZCBteSBjb21tZW50cyBp
bmxpbmUgdG8gZWFjaCBwYXRjaCBhbmQgbG9vayBmb3J3YXJkIGZvciB2Mi4gOy0pCgpJIGhhdmUg
c29tZSBnZW5lcmFsIG1pbm9yIG5vdGVzOgoKQ2FuIHlvdSBjb25maXJtIHRoYXQgeW91ciBmb3Jt
YXR0aW5nIG9mIHNvdXJjZSBmaWxlcyBpcyBjb3JyZWN0PyAoZS5nLiwgCnVzZSBjaGVja3BhdGNo
LnBsKS4gUGF0Y2ggMyB0aHJldyBhIHdhcm5pbmcgdGhhdCBhbm90aGVyIGJsYW5rIGxpbmUgd2Fz
IAppbnRyb2R1Y2VkIGF0IEVPRi4KClBsZWFzZSBkb3VibGUgY2hlY2sgdGhlIHNlbGVjdG9ycyBp
biB5b3VyIHNob3J0IGNvbW1pdCBtZXNzYWdlcy4gUGF0Y2ggCjQsIGZvciBpbnN0YW5jZSwgc2hv
dWxkIHVzZSAnaW5jbHVkZScgaW5zdGVhZCBvZiAnYnVpbGQnLgoKU2luY2UgSSBzYXcgaXQgaW4g
c2V2ZXJhbCBjb21taXQgbWVzc2FnZXM6IFJlbW92ZSB0aGUgImhhdmUgdG8icyBpbiB5b3VyIApj
b21taXQgbWVzc2FnZXMuIFRoZXkgYXJlIHN0aWxsIGZpbmUgd2l0aG91dCA7LSkuIFRoZSBtZXNz
YWdlIG9mIGVhY2ggCnBhdGNoIHNob3VsZCBqdXN0IGRlc2NyaWJlIHdoYXQgaXQgZG9lcyAtIGlu
ZGVwZW5kZW50IG9mIGFueSAKY2lyY3Vtc3RhbmNlcyBvciB3ZWlnaHRpbmdzLgoKVGhhbmtzLAoK
U2ltb24KCk9uIDE1LjAzLjIwMTggMDQ6MzksIFdlaSBDaGVuIHdyb3RlOgo+IEN1cnJlbnRseSwg
VW5pa3JhZnQgb25seSBzdXBwb3J0cyBhcm0zMiBhbmQgeDg2XzY0LiBUaGUgZm9sZGVyIGxheW91
dAo+IGlzIG5vdCB2ZXJ5IGNvbnZlbmllbnQgdG8gYWRkIGFybTY0IG9yIHg4Nl8zMiBzdXBwb3J0
IHRvIGl0LiBJbiB0aGlzCj4gY2FzZSB3ZSB3aWxsIG1vZGlmeSB0aGUgZm9sZGVyIGxheW91dCB0
byBzdXBwb3J0IGNvbW1vbiBjb2RlIGZvciB0aGUKPiBhcmNoaXRlY3R1cmVzIG9mIHRoZSBzYW1l
IENQVSBmYW1pbGllcy4gV2UgYWxzbyBoYXZlIHRvIG1vZGlmeSB0aGUKPiBidWlsZCBzY3JpcHRz
IHdoaWNoIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBjaGFuZ2UgYXQgdGhlIHNhbWUgdGltZS4KPiAK
PiBXZWkgQ2hlbiAoOSk6Cj4gICAgYnVpbGQ6IEFkanVzdCBzZWQgc2NyaXB0IHRvIGF2b2lkIHRy
ZWF0aW5nIGFybTY0IGFzIGFybQo+ICAgIGJ1aWxkOiBJbnRyb2R1Y2UgYSBuZXcgdmFyaWFibGUg
VUtfRkFNSUxZCj4gICAgYnVpbGQ6IE1vdmUgYXJtMzIgbGlicmFyaWVzIHRvIG5ldyBmYW1pbHkv
YXJjaGl0ZWN0dXJlIGZvbGRlcgo+ICAgIGJ1aWxkOiBNb3ZlIGFyY2hpdGVjdHVyZSBoZWFkZXJz
IHRvIGZhbWlseS9hcmNoaXRlY3R1cmUgZm9sZGVyCj4gICAgYnVpbGQ6IEFkZCBhIG1ha2VmaWxl
IHJ1bGUgdG8gY2hlY2sgdmFsaWQgZ2NjIHZlcnNpb24KPiAgICBidWlsZDogQWRkIGFybTY0IGFy
Y2hpdGVjdHVyZSBjb25maWcgdG8gbWVudWNvbmZpZwo+ICAgIGJ1aWxkOiBBZGQgYSBtYWNybyB0
byBjaGVjayBhbmQgYWRkIGdjYyBmbGFncyBmb3IgdGFyZ2V0IENQVQo+ICAgIGJ1aWxkOiBBZGQg
Y29tcGlsZXIgYW5kIGZsYWdzIGZvciBhcm02NAo+ICAgIGJ1aWxkOiBDaGVjayB0aGUgbWluaW11
bSBHQ0MgdmVyc2lvbiBmb3IgYXJtMzIKPiAKPiAgIE1ha2VmaWxlICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgMzYgKystCj4gICBhcmNoL0FyY2gudWsgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAyICsKPiAgIGFyY2gvQ29uZmlnLnVrICAgICAgICAgICAgICAgICAgICAgICAg
fCAgIDcgKy0KPiAgIGFyY2gvYXJtL0NvbXBpbGVyLnVrICAgICAgICAgICAgICAgICAgfCAgIDQg
Kwo+ICAgYXJjaC9hcm0vQ29uZmlnLnVrICAgICAgICAgICAgICAgICAgICB8ICA2NyArKysrKy0K
PiAgIGFyY2gvYXJtL01ha2VmaWxlLnVrICAgICAgICAgICAgICAgICAgfCAgODMgKysrKysrLQo+
ICAgYXJjaC9hcm0vYXJtMzIvZGl2c2kzLlMgICAgICAgICAgICAgICB8IDQwNCArKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrCj4gICBhcmNoL2FybS9hcm0zMi9sZGl2bW9kLlMgICAg
ICAgICAgICAgIHwgIDY4ICsrKysrKwo+ICAgYXJjaC9hcm0vYXJtMzIvbGRpdm1vZF9oZWxwZXIu
YyAgICAgICB8ICA2NyArKysrKysKPiAgIGFyY2gvYXJtL2FybTMyL3FkaXZyZW0uYyAgICAgICAg
ICAgICAgfCAzMjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gICBhcmNoL2FybS9kaXZz
aTMuUyAgICAgICAgICAgICAgICAgICAgIHwgNDA0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0KPiAgIGFyY2gvYXJtL2xkaXZtb2QuUyAgICAgICAgICAgICAgICAgICAgfCAgNjgg
LS0tLS0tCj4gICBhcmNoL2FybS9sZGl2bW9kX2hlbHBlci5jICAgICAgICAgICAgIHwgIDY3IC0t
LS0tLQo+ICAgYXJjaC9hcm0vcWRpdnJlbS5jICAgICAgICAgICAgICAgICAgICB8IDMyNCAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgIGFyY2gveDg2L0NvbXBpbGVyLnVrICAgICAgICAg
ICAgICAgICAgfCAgIDYgKwo+ICAgYXJjaC94ODYvQ29uZmlnLnVrICAgICAgICAgICAgICAgICAg
ICB8ICA4OSArKysrKysrKwo+ICAgYXJjaC94ODYvTWFrZWZpbGUudWsgICAgICAgICAgICAgICAg
ICB8ICAzNyArKysrCj4gICBhcmNoL3g4Nl82NC9Db21waWxlci51ayAgICAgICAgICAgICAgIHwg
ICA2IC0KPiAgIGFyY2gveDg2XzY0L0NvbmZpZy51ayAgICAgICAgICAgICAgICAgfCAgODkgLS0t
LS0tLS0KPiAgIGFyY2gveDg2XzY0L01ha2VmaWxlLnVrICAgICAgICAgICAgICAgfCAgMzcgLS0t
LQo+ICAgaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9hdG9taWMuaCAgICB8ICA2NCArKysrKysK
PiAgIGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIvaW50c2l6ZXMuaCAgfCAgNDUgKysrKwo+ICAg
aW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9sY3B1LmggICAgICB8ICA1OSArKysrKwo+ICAgaW5j
bHVkZS91ay9hcmNoL2FybS9hcm0zMi9saW1pdHMuaCAgICB8ICA0NSArKysrCj4gICBpbmNsdWRl
L3VrL2FyY2gvYXJtL2FybTMyL3R5cGVzLmggICAgIHwgIDM1ICsrKwo+ICAgaW5jbHVkZS91ay9h
cmNoL2FybS9hdG9taWMuaCAgICAgICAgICB8ICA2NCAtLS0tLS0KPiAgIGluY2x1ZGUvdWsvYXJj
aC9hcm0vaW50c2l6ZXMuaCAgICAgICAgfCAgNDUgLS0tLQo+ICAgaW5jbHVkZS91ay9hcmNoL2Fy
bS9sY3B1LmggICAgICAgICAgICB8ICA1OSAtLS0tLQo+ICAgaW5jbHVkZS91ay9hcmNoL2FybS9s
aW1pdHMuaCAgICAgICAgICB8ICA0NSAtLS0tCj4gICBpbmNsdWRlL3VrL2FyY2gvYXJtL3R5cGVz
LmggICAgICAgICAgIHwgIDM1IC0tLQo+ICAgaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oICAgICAg
ICAgICAgICB8ICAgOCArLQo+ICAgaW5jbHVkZS91ay9hcmNoL2xjcHUuaCAgICAgICAgICAgICAg
ICB8ICAgOCArLQo+ICAgaW5jbHVkZS91ay9hcmNoL2xpbWl0cy5oICAgICAgICAgICAgICB8ICAx
NiArLQo+ICAgaW5jbHVkZS91ay9hcmNoL3R5cGVzLmggICAgICAgICAgICAgICB8ICAxNiArLQo+
ICAgaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvYXRvbWljLmggICB8ICA0NSArKysrCj4gICBp
bmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9pbnRzaXplcy5oIHwgIDQ1ICsrKysKPiAgIGluY2x1
ZGUvdWsvYXJjaC94ODYveDg2XzY0L2xjcHUuaCAgICAgfCAgNzMgKysrKysrCj4gICBpbmNsdWRl
L3VrL2FyY2gveDg2L3g4Nl82NC9saW1pdHMuaCAgIHwgIDQ2ICsrKysKPiAgIGluY2x1ZGUvdWsv
YXJjaC94ODYveDg2XzY0L3R5cGVzLmggICAgfCAgMzggKysrKwo+ICAgaW5jbHVkZS91ay9hcmNo
L3g4Nl82NC9hdG9taWMuaCAgICAgICB8ICA0NSAtLS0tCj4gICBpbmNsdWRlL3VrL2FyY2gveDg2
XzY0L2ludHNpemVzLmggICAgIHwgIDQ1IC0tLS0KPiAgIGluY2x1ZGUvdWsvYXJjaC94ODZfNjQv
bGNwdS5oICAgICAgICAgfCAgNzMgLS0tLS0tCj4gICBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xp
bWl0cy5oICAgICAgIHwgIDQ2IC0tLS0KPiAgIGluY2x1ZGUvdWsvYXJjaC94ODZfNjQvdHlwZXMu
aCAgICAgICAgfCAgMzggLS0tLQo+ICAgc3VwcG9ydC9idWlsZC9NYWtlZmlsZS5ydWxlcyAgICAg
ICAgICB8ICAgOCArCj4gICA0NSBmaWxlcyBjaGFuZ2VkLCAxNjk4IGluc2VydGlvbnMoKyksIDE1
MzcgZGVsZXRpb25zKC0pCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtMzIvZGl2
c2kzLlMKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm0zMi9sZGl2bW9kLlMKPiAg
IGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm0zMi9sZGl2bW9kX2hlbHBlci5jCj4gICBj
cmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtMzIvcWRpdnJlbS5jCj4gICBkZWxldGUgbW9k
ZSAxMDA2NDQgYXJjaC9hcm0vZGl2c2kzLlMKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBhcmNoL2Fy
bS9sZGl2bW9kLlMKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9sZGl2bW9kX2hlbHBl
ci5jCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vcWRpdnJlbS5jCj4gICBjcmVhdGUg
bW9kZSAxMDA2NDQgYXJjaC94ODYvQ29tcGlsZXIudWsKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBh
cmNoL3g4Ni9Db25maWcudWsKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL3g4Ni9NYWtlZmls
ZS51awo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gveDg2XzY0L0NvbXBpbGVyLnVrCj4gICBk
ZWxldGUgbW9kZSAxMDA2NDQgYXJjaC94ODZfNjQvQ29uZmlnLnVrCj4gICBkZWxldGUgbW9kZSAx
MDA2NDQgYXJjaC94ODZfNjQvTWFrZWZpbGUudWsKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNs
dWRlL3VrL2FyY2gvYXJtL2FybTMyL2F0b21pYy5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5j
bHVkZS91ay9hcmNoL2FybS9hcm0zMi9pbnRzaXplcy5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQg
aW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9sY3B1LmgKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBp
bmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2xpbWl0cy5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQg
aW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi90eXBlcy5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQg
aW5jbHVkZS91ay9hcmNoL2FybS9hdG9taWMuaAo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1
ZGUvdWsvYXJjaC9hcm0vaW50c2l6ZXMuaAo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUv
dWsvYXJjaC9hcm0vbGNwdS5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNo
L2FybS9saW1pdHMuaAo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0v
dHlwZXMuaAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0
L2F0b21pYy5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZf
NjQvaW50c2l6ZXMuaAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODYv
eDg2XzY0L2xjcHUuaAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODYv
eDg2XzY0L2xpbWl0cy5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL3g4
Ni94ODZfNjQvdHlwZXMuaAo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94
ODZfNjQvYXRvbWljLmgKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2
XzY0L2ludHNpemVzLmgKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2
XzY0L2xjcHUuaAo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODZfNjQv
bGltaXRzLmgKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L3R5
cGVzLmgKPiAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
Ck1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qu
b3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3Mt
ZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 21:25:38 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 21:25:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3puT-0005c8-EV; Wed, 04 Apr 2018 21:25:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3puS-0005c3-4b
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 21:25:36 +0000
X-Inumbo-ID: e1c87cff-384e-11e8-8249-2fda3a446a53
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id e1c87cff-384e-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 21:26:48 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id 32CE1F2001;
 Wed,  4 Apr 2018 23:25:33 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id UkT__xINvdPN; Wed,  4 Apr 2018 23:25:33 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id 05EA4F200C;
 Wed,  4 Apr 2018 23:25:23 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 23:25:22 +0200
To: Wei Chen <Wei.Chen@arm.com>, <minios-devel@lists.xenproject.org>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-3-git-send-email-Wei.Chen@arm.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <b528a08e-47f4-39b1-def0-d1cec13a1a59@neclab.eu>
Date: Wed, 4 Apr 2018 23:25:21 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1521085152-77655-3-git-send-email-Wei.Chen@arm.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 2/9] build: Introduce a new
 variable UK_FAMILY
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gMTUuMDMuMjAxOCAwNDozOSwgV2VpIENoZW4gd3JvdGU6Cj4gV2Ugd2FudCBtb2RpZnkgdGhl
IGZvbGRlcnMgbGF5b3V0IGZvciBtdWx0aS1hcmNoaXRlY3R1cmVzIGxpa2U6Cj4gdW5pa3JhZnQt
LS0tYXJjaC0tLS1hcm0tLS0tYXJtMzIKPiAgICAgICAgICAgICAgICB8ICAgICAgfC0tLS0tYXJt
NjQKPiAgICAgICAgICAgICAgICB8Cj4gICAgICAgICAgICAgICAgfC0tLS0teDg2LS0tLXg4Ngo+
ICAgICAgICAgICAgICAgICAgICAgICB8LS0tLS14ODZfNjQKCkludGVhZCBvZiAnV2Ugd2FudCcs
IGp1c3Qgc2F5IHRoYXQgdGhpcyBwYXRjaCBtb2RpZmllcyB0aGUgZm9sZGVyIGxheW91dCAKb3Jn
YW5pemVkIGJ5IENQVSBmYW1pbGllcy4gWW91IGNhbiBrZWVwIHRoZSBhc2NpaSBhcnQgYXMgZXhh
bXBsZS4KCj4gCj4gSW4gdGhpcyBjYXNlLCB3ZSBpbnRyb2R1Y2UgYSBuZXcgdmFyaWFibGUgVUtf
RkFNSUxZIGZvciBidWlsZCBzY2lwdHMuCj4gd2Ugc2hvdWxkIG5vdCBleHBlY3QgdGhlIHVzZXIg
dG8gc2V0IG9yIHNlbGVjdCBVS19GQU1JTFkgaW4gYSBtZW51IG9yCj4gYnkgc2V0dGluZyB0aGUg
dmFyaWFibGUgZXh0ZXJuYWxseS4gU28gd2UgcmV0cmlldmUgVUtfRkFNSUxZIGRpcmVjdGx5Cj4g
ZnJvbSBVS19BUkNILiBCZWNhdXNlIG9mIHRoaXMgd2UgY2FuIGtlZXAgQ29tcGlsZXIudWssIE1h
a2VmaWxlLnVrLAo+IGFuZCBDb25maWcudWsgZGlyZWN0bHkgdW5kZXIgdGhlIFVLX0ZBTUlMWSBk
aXJlY3RvcnkuCgpUaGlzIGlzIGFjdHVhbGx5IGEgZ29vZCB0aGluZy4gSSBsaWtlIHRoYXQgd2Ug
a2VlcCBpdCBvcGVuIGhvdyB0aGUgCmluZGl2aWR1YWwgYXJjaGl0ZWN0dXJlcyBvcmdhbml6ZSB0
aGVpciBmb2xkZXIgc3RydWN0dXJlcy4gRm9yIHNvbWUgaXQgCm1pZ2h0IG1ha2Ugc2Vuc2UgdG8g
dXNlIGZvcndhcmQgZGVjbGFyYXRpb25zIGluIENvbXBpbGVyLnVrIGFuZCAKTWFrZWZpbGUudWsg
dG8gaW5jbHVkZSBhIGNvcnJlc3BvbmRpbmcgZmlsZSBpbiBhIHN1YmZvbGRlcjoKCkZvciBpbnN0
YW5jZSBhcm0vTWFrZWZpbGUudWsgaW5jbHVkZXMgYXJtL2FybTMyL01ha2VmaWxlLnVrIHdoZW4g
YW4gCkFSTTMyIGFyY2hpdGVjdHVyZSB3YXMgc2VsZWN0ZWQuCgo+IAo+IFNpZ25lZC1vZmYtYnk6
IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPgo+IC0tLQo+ICAgTWFrZWZpbGUgICAgICAgICAg
ICAgICAgfCAyNSArKysrKysrKystLS0tLQo+ICAgYXJjaC9Db25maWcudWsgICAgICAgICAgfCAg
MiArLQo+ICAgYXJjaC94ODYvQ29tcGlsZXIudWsgICAgfCAgNiArKysrCj4gICBhcmNoL3g4Ni9D
b25maWcudWsgICAgICB8IDg5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysKPiAgIGFyY2gveDg2L01ha2VmaWxlLnVrICAgIHwgMzcgKysrKysrKysrKysr
KysrKysrKysKPiAgIGFyY2gveDg2XzY0L0NvbXBpbGVyLnVrIHwgIDYgLS0tLQo+ICAgYXJjaC94
ODZfNjQvQ29uZmlnLnVrICAgfCA4OSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCj4gICBhcmNoL3g4Nl82NC9NYWtlZmlsZS51ayB8IDM3IC0tLS0tLS0t
LS0tLS0tLS0tLS0tCj4gICA4IGZpbGVzIGNoYW5nZWQsIDE1MCBpbnNlcnRpb25zKCspLCAxNDEg
ZGVsZXRpb25zKC0pCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC94ODYvQ29tcGlsZXIudWsK
PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL3g4Ni9Db25maWcudWsKPiAgIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBhcmNoL3g4Ni9NYWtlZmlsZS51awo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gv
eDg2XzY0L0NvbXBpbGVyLnVrCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgYXJjaC94ODZfNjQvQ29u
ZmlnLnVrCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgYXJjaC94ODZfNjQvTWFrZWZpbGUudWsKPiAK
PiBkaWZmIC0tZ2l0IGEvTWFrZWZpbGUgYi9NYWtlZmlsZQo+IGluZGV4IGY4Y2I2NjEuLjQ5ZTUw
NzAgMTAwNjQ0Cj4gLS0tIGEvTWFrZWZpbGUKPiArKysgYi9NYWtlZmlsZQo+IEBAIC0yOTcsNyAr
Mjk3LDYgQEAgZXhwb3J0IEhPU1RBUkNIIDo9ICQoc2hlbGwgTENfQUxMPUMgJChIT1NUQ0NfTk9D
Q0FDSEUpIC12IDI+JjEgfCBcCj4gICBleHBvcnQgSE9TVEFSIEhPU1RBUyBIT1NUQ0MgSE9TVEND
X1ZFUlNJT04gSE9TVENYWCBIT1NUTEQgSE9TVEFSQ0gKPiAgIGV4cG9ydCBIT1NUQ0NfTk9DQ0FD
SEUgSE9TVENYWF9OT0NDQUNIRQo+ICAgCj4gLQo+ICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK
PiAgICMgVW5pa3JhZnQgQXJjaGl0ZWN0dXJlCj4gICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo+
IEBAIC0zMzcsMTQgKzMzNiwyNCBAQCBlbmRpZgo+ICAgb3ZlcnJpZGUgQVJDSCA6PSAkKFVLX0FS
Q0gpCj4gICBleHBvcnQgVUtfQVJDSCBBUkNICj4gICAKPiAtIyBRdWljay1jaGVjayBpZiBhcmNo
aXRlY3R1cmUgZXhpc3RzCj4gKyMgUmV0cml2ZSB0YXJnZXQgQ1BVIGZhbWlseSBmcm9tIGFyY2hp
dGVjdHVyZQo+ICtleHBvcnQgVUtfRkFNSUxZID89ICQoc2hlbGwgZWNobyAiJChVS19BUkNIKSIg
fCBcCj4gKwkJCXNlZCAtZSAicy8tLiovLyIgXAo+ICsJCQkJLWUgJ3MvL1wxLycgXAo+ICsJCQkJ
LWUgJ3MveDg2LioveDg2LycgXAo+ICsJCQkJLWUgJ3Mvc3BhcmM2NC9zcGFyYy8nIFwKPiArCQkJ
CS1lICdzL2FybS4qL2FybS8nIFwKPiArCQkJCS1lICdzL3Bvd2VycGMuKi9wb3dlcnBjLycgXAo+
ICsJCQkJLWUgJ3Mvc2guKi9zaC8nICkKPiArCj4gKyMgUXVpY2stY2hlY2sgaWYgYXJjaGl0ZWN0
dXJlIGZhbWlseSBleGlzdHMKPiAgIGlmZXEgKCQoZmlsdGVyICQobnVsbF90YXJnZXRzKSBwcmlu
dC12YXJzLCQoTUFLRUNNREdPQUxTKSksKQo+IC1pZmVxICgkKHdpbGRjYXJkICQoVUtfQkFTRSkv
YXJjaC8kKEFSQ0gpL01ha2VmaWxlLnVrKSwpCj4gLSQoZXJyb3IgVGFyZ2V0IGFyY2hpdGVjdHVy
ZSAoJChBUkNIKSkgaXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgKGNvdWxkIG5vdCBmaW5kICQo
VUtfQkFTRSkvYXJjaC8kKEFSQ0gpL01ha2VmaWxlLnVrKS4pCj4gK2lmZXEgKCQod2lsZGNhcmQg
JChVS19CQVNFKS9hcmNoLyQoVUtfRkFNSUxZKS9NYWtlZmlsZS51ayksKQo+ICskKGVycm9yIFRh
cmdldCBmYW1pbHkgKCQoVUtfRkFNSUxZKSkgaXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgKGNv
dWxkIG5vdCBmaW5kICQoVUtfQkFTRSkvYXJjaC8kKFVLX0ZBTUlMWSkvTWFrZWZpbGUudWspLikK
PiAgIGVuZGlmCj4gICAKPiAtaWZlcSAoJCh3aWxkY2FyZCBhcmNoLyQoQVJDSCkvQ29tcGlsZXIu
dWspLCkKPiAtJChlcnJvciBUYXJnZXQgYXJjaGl0ZWN0dXJlICgkKEFSQ0gpKSBpcyBjdXJyZW50
bHkgbm90IHN1cHBvcnRlZCAoY291bGQgbm90IGZpbmQgJChVS19CQVNFKS9hcmNoLyQoQVJDSCkv
Q29tcGlsZXIudWspLikKPiAraWZlcSAoJCh3aWxkY2FyZCAkKFVLX0JBU0UpL2FyY2gvJChVS19G
QU1JTFkpL0NvbXBpbGVyLnVrKSwpCj4gKyQoZXJyb3IgVGFyZ2V0IGZhbWlseSAoJChVS19GQU1J
TFkpKSBpcyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZCAoY291bGQgbm90IGZpbmQgJChVS19CQVNF
KS9hcmNoLyQoVUtfRkFNSUxZKS9Db21waWxlci51aykuKQo+ICAgZW5kaWYKPiAgIGVuZGlmCj4g
ICAKPiBAQCAtMzgzLDcgKzM5Miw3IEBAIHVuZXhwb3J0IE1BQ0hJTkUKPiAgICMgTm90ZTogU29t
ZSBhcmNoaXRlY3R1cmVzIGFzc2lnbiBDUk9TU19DT01QSUxFIGluIHRoZWlyIGFyY2gvKi9NYWtl
ZmlsZS51awo+ICAgQ1JPU1NfQ09NUElMRSA6PSAkKENST1NTX0NPTVBJTEU6IiUiPSUpCj4gICAK
PiAtaW5jbHVkZSAkKFVLX0JBU0UpL2FyY2gvJChVS19BUkNIKS9Db21waWxlci51awo+ICtpbmNs
dWRlICQoVUtfQkFTRSkvYXJjaC8kKFVLX0ZBTUlMWSkvQ29tcGlsZXIudWsKPiAgIAo+ICAgIyBN
YWtlIHZhcmlhYmxlcyAoQ0MsIGV0Yy4uLikKPiAgIExECQk6PSAkKENST1NTX0NPTVBJTEUpbGQK
PiBAQCAtNDQ1LDcgKzQ1NCw3IEBAIGVuZGlmCj4gICAkKGZvcmVhY2ggRSwkKEVMSUJfRElSKSwg
XAo+ICAgCSQoZXZhbCAkKGNhbGwgX2ltcG9ydF9saWIsJChFKSkpOyBcCj4gICApCj4gLSQoZXZh
bCAkKGNhbGwgX2ltcG9ydF9saWIsJChVS19CQVNFKS9hcmNoLyQoVUtfQVJDSCkpKSAjIGFyY2hp
dGVjdHVyZSBsaWJyYXJpZXMKPiArJChldmFsICQoY2FsbCBfaW1wb3J0X2xpYiwkKFVLX0JBU0Up
L2FyY2gvJChVS19GQU1JTFkpKSkgIyBhcmNoaXRlY3R1cmUgbGlicmFyaWVzCj4gICBpbmNsdWRl
ICQoVUtfQkFTRSkvcGxhdC9NYWtlZmlsZS51ayAjIHBsYXRmb3JtIGxpYnJhcmllcwo+ICAgaW5j
bHVkZSAkKFVLX0JBU0UpL2xpYi9NYWtlZmlsZS51ayAjIGxpYnJhcmllcwo+ICAgaW5jbHVkZSAk
KFVLX0JBU0UpL01ha2VmaWxlLnVrICMgVW5pa3JhZnQgYmFzZQo+IGRpZmYgLS1naXQgYS9hcmNo
L0NvbmZpZy51ayBiL2FyY2gvQ29uZmlnLnVrCj4gaW5kZXggMzZkZjhkMS4uYTA0MDI4OCAxMDA2
NDQKPiAtLS0gYS9hcmNoL0NvbmZpZy51awo+ICsrKyBiL2FyY2gvQ29uZmlnLnVrCj4gQEAgLTEz
LDcgKzEzLDcgQEAgY29uZmlnIEFSQ0hfQVJNXzMyCj4gICBlbmRjaG9pY2UKPiAgIAo+ICAgaWYg
KEFSQ0hfWDg2XzY0KQo+IC0Jc291cmNlICJhcmNoL3g4Nl82NC9Db25maWcudWsiCj4gKwlzb3Vy
Y2UgImFyY2gveDg2L0NvbmZpZy51ayIKPiAgIGVuZGlmCj4gICBpZiAoQVJDSF9BUk1fMzIpCj4g
ICAJc291cmNlICJhcmNoL2FybS9Db25maWcudWsiCj4gZGlmZiAtLWdpdCBhL2FyY2gveDg2L0Nv
bXBpbGVyLnVrIGIvYXJjaC94ODYvQ29tcGlsZXIudWsKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+
IGluZGV4IDAwMDAwMDAuLmE1NDcwZWQKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvYXJjaC94ODYv
Q29tcGlsZXIudWsKPiBAQCAtMCwwICsxLDYgQEAKPiArIyBzZXQgY3Jvc3MgY29tcGlsZQo+ICtp
ZmVxICgkKENST1NTX0NPTVBJTEUpLCkKPiAraWZuZXEgKCQoVUtfQVJDSCksJChIT1NUQVJDSCkp
Cj4gKwlDUk9TU19DT01QSUxFIDo9IHg4Nl82NC1saW51eC1nbnUtCj4gK2VuZGlmCj4gK2VuZGlm
Cj4gZGlmZiAtLWdpdCBhL2FyY2gveDg2L0NvbmZpZy51ayBiL2FyY2gveDg2L0NvbmZpZy51awo+
IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uY2E0OWVlZAo+IC0tLSAvZGV2
L251bGwKPiArKysgYi9hcmNoL3g4Ni9Db25maWcudWsKPiBAQCAtMCwwICsxLDg5IEBACj4gK2No
b2ljZQo+ICsJcHJvbXB0ICJQcm9jZXNzb3IgT3B0aW1pemF0aW9uIgo+ICsJZGVmYXVsdCBNQVJD
SF9HRU5FUklDCj4gKwloZWxwCj4gKwkJT3B0aW1pemUgdGhlIGNvZGUgZm9yIHNlbGVjdGVkIHRh
cmdldCBwcm9jZXNzb3IKPiArCQlHZW5lcmljIHg4Nl82NCBkb2VzIG5vdCBlbmFibGUgYW55IGFk
ZGl0aW9uYWwgQ1BVIGZlYXR1cmVzCj4gKwkJKGUuZy4sIFNTRSwgM0ROb3chKSBhbmQgcHJvZHVj
ZXMgaGlnaGx5IHByb3RhYmxlIGNvZGUgZm9yIHg4Ni4KPiArCj4gK2NvbmZpZyBNQVJDSF9OQVRJ
VkUKPiArCWJvb2wgIkF1dG8tZGV0ZWN0IGhvc3QgQ1BVIgo+ICsJaGVscAo+ICsJCU9wdGltaXpl
IGNvbXBpbGF0aW9uIHRvIGhvc3QgQ1BVCj4gKwkJUGxlYXNlIG5vdGUgdGhhdCB0aGlzIG9wdGlv
biB3aWxsIGZhaWwgaW4gY2FzZSBvZiBjcm9zcy1jb21waWxhdGlvbgo+ICsKPiArY29uZmlnIE1B
UkNIX0dFTkVSSUMKPiArCWJvb2wgIkdlbmVyaWMgNjQtYml0Igo+ICsJaGVscAo+ICsJCUNvbXBp
bGUgZm9yIDY0LWJpdCBjb21wYXRpYmxlIHg4NiBDUFVzCj4gKwo+ICtjb25maWcgTUFSQ0hfTk9D
T05BCj4gKwlib29sICJJbnRlbCBQZW50aXVtIDQvWGVvbiAoTm9jb25hKSIKPiArCWhlbHAKPiAr
CQlJbXByb3ZlZCB2ZXJzaW9uIG9mIEludGVsIFBlbnRpdW0gNCBDUFUgd2l0aCA2NC1iaXQgZXh0
ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIgYW5kIFNTRTMgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQu
Cj4gKwo+ICtjb25maWcgTUFSQ0hfQ09SRTIKPiArCWJvb2wgIkludGVsIENvcmUgMi9YZW9uIgo+
ICsJaGVscAo+ICsJCUludGVsIENvcmUgMiBDUFUgd2l0aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1Y
LCBTU0UsIFNTRTIsIFNTRTMgYW5kIFNTU0UzIGluc3RydWN0aW9uIHNldCBzdXBwb3J0Lgo+ICsK
PiArY29uZmlnIE1BUkNIX0NPUkVJNwo+ICsJYm9vbCAiSW50ZWwgQ29yZSBpNy9YZW9uIgo+ICsJ
aGVscAo+ICsJCUludGVsIENvcmUgaTcgQ1BVIHdpdGggNjQtYml0IGV4dGVuc2lvbnMsIE1NWCwg
U1NFLCBTU0UyLCBTU0UzLCBTU1NFMywgU1NFNC4xIGFuZCBTU0U0LjIgaW5zdHJ1Y3Rpb24gc2V0
IHN1cHBvcnQuCj4gKwo+ICtjb25maWcgTUFSQ0hfQ09SRUk3QVZYCj4gKwlib29sICJJbnRlbCBD
b3JlIGk3L1hlb24gK0FWWCIKPiArCWhlbHAKPiArCQlJbnRlbCBDb3JlIGk3IENQVSB3aXRoIDY0
LWJpdCBleHRlbnNpb25zLCBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NTRTMsIFNTRTQuMSwgU1NF
NC4yLCBBVlgsIEFFUyBhbmQgUENMTVVMIGluc3RydWN0aW9uIHNldCBzdXBwb3J0Lgo+ICsKPiAr
Y29uZmlnIE1BUkNIX0NPUkVJN0FWWEkKPiArCWJvb2wgIkludGVsIENvcmUvWGVvbiArQVZYICtS
RFJORCIKPiArCWhlbHAKPiArCQlJbnRlbCBDb3JlIENQVSB3aXRoIDY0LWJpdCBleHRlbnNpb25z
LCBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NTRTMsIFNTRTQuMSwgU1NFNC4yLCBBVlgsIEFFUywg
UENMTVVMLCBGU0dTQkFTRSwgUkRSTkQgYW5kIEYxNkMgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQu
Cj4gKwo+ICtjb25maWcgTUFSQ0hfQVRPTQo+ICsJYm9vbCAiSW50ZWwgQXRvbSA2NC1iaXQiCj4g
KwloZWxwCj4gKwkJSW50ZWwgQXRvbSBDUFUgd2l0aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBT
U0UsIFNTRTIsIFNTRTMgYW5kIFNTU0UzIGluc3RydWN0aW9uIHNldCBzdXBwb3J0Lgo+ICsKPiAr
Y29uZmlnIE1BUkNIX0s4Cj4gKwlib29sICJBTUQgQXRobG9uNjQvT3B0ZXJvbiIKPiArCWhlbHAK
PiArCQlQcm9jZXNzb3JzIGJhc2VkIG9uIHRoZSBBTUQgSzggY29yZSB3aXRoIHg4Ni02NCBpbnN0
cnVjdGlvbiBzZXQgc3VwcG9ydCwgaW5jbHVkaW5nIHRoZSBBTUQgT3B0ZXJvbiwgQXRobG9uIDY0
LCBhbmQgQXRobG9uIDY0IEZYIHByb2Nlc3NvcnMuIChUaGlzIHN1cGVyc2V0cyBNTVgsIFNTRSwg
U1NFMiwgM0ROb3chLCBlbmhhbmNlZCAzRE5vdyEgYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQg
ZXh0ZW5zaW9ucy4pCj4gKwo+ICtjb25maWcgTUFSQ0hfSzhTU0UzCj4gKwlib29sICJBTUQgQXRo
bG9uNjQvT3B0ZXJvbiArU1NFMyIKPiArCWhlbHAKPiArCQlJbXByb3ZlZCB2ZXJzaW9ucyBvZiBB
TUQgSzggY29yZXMgd2l0aCBTU0UzIGluc3RydWN0aW9uIHNldCBzdXBwb3J0Lgo+ICsKPiArY29u
ZmlnIE1BUkNIX0FNREZBTTEwCj4gKwlib29sICJBTUQgRmFtaWx5IDEwaCBjb3JlcyIKPiArCWhl
bHAKPiArCQlDUFVzIGJhc2VkIG9uIEFNRCBGYW1pbHkgMTBoIGNvcmVzIHdpdGggeDg2LTY0IGlu
c3RydWN0aW9uIHNldCBzdXBwb3J0LiAoVGhpcyBzdXBlcnNldHMgTU1YLCBTU0UsIFNTRTIsIFNT
RTMsIFNTRTRBLCAzRE5vdyEsIGVuaGFuY2VkIDNETm93ISwgQUJNIGFuZCA2NC1iaXQgaW5zdHJ1
Y3Rpb24gc2V0IGV4dGVuc2lvbnMuKQo+ICsKPiArY29uZmlnIE1BUkNIX0JUVkVSMQo+ICsJYm9v
bCAiQU1EIEZhbWlseSAxNGggY29yZXMiCj4gKwloZWxwCj4gKwkJQ1BVcyBiYXNlZCBvbiBBTUQg
RmFtaWx5IDE0aCBjb3JlcyB3aXRoIHg4Ni02NCBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4gKFRo
aXMgc3VwZXJzZXRzIE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBTU1NFMywgU1NFNEEsIENYMTYsIEFC
TSBhbmQgNjQtYml0IGluc3RydWN0aW9uIHNldCBleHRlbnNpb25zLikKPiArCj4gK2NvbmZpZyBN
QVJDSF9CRFZFUjEKPiArCWJvb2wgIkFNRCBGYW1pbHkgMTVoIGNvcmVzIChiZHZlcjEpIgo+ICsJ
aGVscAo+ICsJCUNQVXMgYmFzZWQgb24gQU1EIEZhbWlseSAxNWggY29yZXMgd2l0aCB4ODYtNjQg
aW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuIChUaGlzIHN1cGVyc2V0cyBGTUE0LCBBVlgsIFhPUCwg
TFdQLCBBRVMsIFBDTF9NVUwsIENYMTYsIE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBTU0U0QSwgU1NT
RTMsIFNTRTQuMSwgU1NFNC4yLCBBQk0gYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQgZXh0ZW5z
aW9ucy4pCj4gKwo+ICtjb25maWcgTUFSQ0hfQkRWRVIyCj4gKwlib29sICJBTUQgRmFtaWx5IDE1
aCBjb3JlcyAoYmR2ZXIyKSIKPiArCWhlbHAKPiArCQlBTUQgRmFtaWx5IDE1aCBjb3JlIGJhc2Vk
IENQVXMgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuIChUaGlzIHN1cGVyc2V0
cyBCTUksIFRCTSwgRjE2QywgRk1BLCBBVlgsIFhPUCwgTFdQLCBBRVMsIFBDTF9NVUwsIENYMTYs
IE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBTU0U0QSwgU1NTRTMsIFNTRTQuMSwgU1NFNC4yLCBBQk0g
YW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQgZXh0ZW5zaW9ucy4pCj4gKwo+ICtjb25maWcgTUFS
Q0hfQkRWRVIzCj4gKwlib29sICJBTUQgRmFtaWx5IDE1aCBjb3JlcyAoYmR2ZXIzKSIKPiArCWhl
bHAKPiArCQlBTUQgRmFtaWx5IDE1aCBjb3JlIGJhc2VkIENQVXMgd2l0aCB4ODYtNjQgaW5zdHJ1
Y3Rpb24gc2V0IHN1cHBvcnQuIChUaGlzIHN1cGVyc2V0cyBCTUksIFRCTSwgRjE2QywgRk1BLCBB
VlgsIFhPUCwgTFdQLCBBRVMsIFBDTF9NVUwsIENYMTYsIE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBT
U0U0QSwgU1NTRTMsIFNTRTQuMSwgU1NFNC4yLCBBQk0gYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBz
ZXQgZXh0ZW5zaW9ucy4KPiArCj4gK2NvbmZpZyBNQVJDSF9CVFZFUjIKPiArCWJvb2wgIkFNRCBG
YW1pbHkgMTZoIGNvcmVzIgo+ICsJaGVscAo+ICsJCUNQVXMgYmFzZWQgb24gQU1EIEZhbWlseSAx
NmggY29yZXMgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuIFRoaXMgaW5jbHVk
ZXMgTU9WQkUsIEYxNkMsIEJNSSwgQVZYLCBQQ0xfTVVMLCBBRVMsIFNTRTQuMiwgU1NFNC4xLCBD
WDE2LCBBQk0sIFNTRTRBLCBTU1NFMywgU1NFMywgU1NFMiwgU1NFLCBNTVggYW5kIDY0LWJpdCBp
bnN0cnVjdGlvbiBzZXQgZXh0ZW5zaW9ucy4KPiArZW5kY2hvaWNlCj4gZGlmZiAtLWdpdCBhL2Fy
Y2gveDg2L01ha2VmaWxlLnVrIGIvYXJjaC94ODYvTWFrZWZpbGUudWsKPiBuZXcgZmlsZSBtb2Rl
IDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLjhjOWJmZTMKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIv
YXJjaC94ODYvTWFrZWZpbGUudWsKPiBAQCAtMCwwICsxLDM3IEBACj4gK0FTRkxBR1MgICs9IC1E
X19YODZfNjRfXwo+ICtBU0ZMQUdTICArPSAtbTY0Cj4gK0NGTEFHUyAgICs9IC1EX19YODZfNjRf
Xwo+ICtDRkxBR1MgICArPSAtbTY0IC1tbm8tcmVkLXpvbmUgLWZuby1yZW9yZGVyLWJsb2NrcyAt
Zm5vLWFzeW5jaHJvbm91cy11bndpbmQtdGFibGVzCj4gK0NYWEZMQUdTICs9IC1EX19YODZfNjRf
Xwo+ICtDWFhGTEFHUyArPSAtbTY0IC1tbm8tcmVkLXpvbmUgLWZuby1yZW9yZGVyLWJsb2NrcyAt
Zm5vLWFzeW5jaHJvbm91cy11bndpbmQtdGFibGVzCj4gKwo+ICtDRkxBR1MtJChNQVJDSF9HRU5F
UklDKSAgICAgICs9IC1tdHVuZT1nZW5lcmljCj4gK0NYWEZMQUdTLSQoTUFSQ0hfR0VORVJJQykg
ICAgKz0gLW10dW5lPWdlbmVyaWMKPiArQ0ZMQUdTLSQoTUFSQ0hfTk9DT05BKSAgICAgICArPSAt
bWFyY2g9bm9jb25hCj4gK0NYWEZMQUdTLSQoTUFSQ0hfTk9DT05BKSAgICAgKz0gLW1hcmNoPW5v
Y29uYQo+ICtDRkxBR1MtJChNQVJDSF9DT1JFMikgICAgICAgICs9IC1tYXJjaD1jb3JlMgo+ICtD
WFhGTEFHUy0kKE1BUkNIX0NPUkUyKSAgICAgICs9IC1tYXJjaD1jb3JlMgo+ICtDRkxBR1MtJChN
QVJDSF9DT1JFSTcpICAgICAgICs9IC1tYXJjaD1jb3JlaTcKPiArQ1hYRkxBR1MtJChNQVJDSF9D
T1JFSTcpICAgICArPSAtbWFyY2g9Y29yZWk3Cj4gK0NGTEFHUy0kKE1BUkNIX0NPUkVJN0FWWCkg
ICAgKz0gLW1hcmNoPWNvcmVpNy1hdngKPiArQ1hYRkxBR1MtJChNQVJDSF9DT1JFSTdBVlgpICAr
PSAtbWFyY2g9Y29yZWk3LWF2eAo+ICtDRkxBR1MtJChNQVJDSF9DT1JFSTdBVlhJKSAgICs9IC1t
YXJjaD1jb3JlLWF2eC1pCj4gK0NYWEZMQUdTLSQoTUFSQ0hfQ09SRUk3QVZYSSkgKz0gLW1hcmNo
PWNvcmUtYXZ4LWkKPiArQ0ZMQUdTLSQoTUFSQ0hfQVRPTSkgICAgICAgICArPSAtbWFyY2g9YXRv
bQo+ICtDWFhGTEFHUy0kKE1BUkNIX0FUT00pICAgICAgICs9IC1tYXJjaD1hdG9tCj4gK0NGTEFH
Uy0kKE1BUkNIX0s4KSAgICAgICAgICAgKz0gLW1hcmNoPWs4Cj4gK0NYWEZMQUdTLSQoTUFSQ0hf
SzgpICAgICAgICAgKz0gLW1hcmNoPWs4Cj4gK0NGTEFHUy0kKE1BUkNIX0s4U1NFMykgICAgICAg
Kz0gLW1hcmNoPWs4LXNzZTMKPiArQ1hYRkxBR1MtJChNQVJDSF9LOFNTRTMpICAgICArPSAtbWFy
Y2g9azgtc3NlMwo+ICtDRkxBR1MtJChNQVJDSF9BTURGQU0xMCkgICAgICs9IC1tYXJjaD1hbWRm
YW0xMAo+ICtDWFhGTEFHUy0kKE1BUkNIX0FNREZBTTEwKSAgICs9IC1tYXJjaD1hbWRmYW0xMAo+
ICtDRkxBR1MtJChNQVJDSF9CRFZFUjEpICAgICAgICs9IC1tYXJjaD1iZHZlcjEKPiArQ1hYRkxB
R1MtJChNQVJDSF9CRFZFUjEpICAgICArPSAtbWFyY2g9YmR2ZXIxCj4gK0NGTEFHUy0kKE1BUkNI
X0JEVkVSMikgICAgICAgKz0gLW1hcmNoPWJkdmVyMgo+ICtDWFhGTEFHUy0kKE1BUkNIX0JEVkVS
MikgICAgICs9IC1tYXJjaD1iZHZlcjIKPiArQ0ZMQUdTLSQoTUFSQ0hfQkRWRVIzKSAgICAgICAr
PSAtbWFyY2g9YmR2ZXIzCj4gK0NYWEZMQUdTLSQoTUFSQ0hfQkRWRVIzKSAgICAgKz0gLW1hcmNo
PWJkdmVyMwo+ICtDRkxBR1MtJChNQVJDSF9CVFZFUjEpICAgICAgICs9IC1tYXJjaD1idHZlcjEK
PiArQ1hYRkxBR1MtJChNQVJDSF9CVFZFUjEpICAgICArPSAtbWFyY2g9YnR2ZXIxCj4gK0NGTEFH
Uy0kKE1BUkNIX0JUVkVSMikgICAgICAgKz0gLW1hcmNoPWJ0dmVyMgo+ICtDWFhGTEFHUy0kKE1B
UkNIX0JUVkVSMikgICAgICs9IC1tYXJjaD1idHZlcjIKPiBkaWZmIC0tZ2l0IGEvYXJjaC94ODZf
NjQvQ29tcGlsZXIudWsgYi9hcmNoL3g4Nl82NC9Db21waWxlci51awo+IGRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAo+IGluZGV4IGE1NDcwZWQuLjAwMDAwMDAKPiAtLS0gYS9hcmNoL3g4Nl82NC9D
b21waWxlci51awo+ICsrKyAvZGV2L251bGwKPiBAQCAtMSw2ICswLDAgQEAKPiAtIyBzZXQgY3Jv
c3MgY29tcGlsZQo+IC1pZmVxICgkKENST1NTX0NPTVBJTEUpLCkKPiAtaWZuZXEgKCQoVUtfQVJD
SCksJChIT1NUQVJDSCkpCj4gLQlDUk9TU19DT01QSUxFIDo9IHg4Nl82NC1saW51eC1nbnUtCj4g
LWVuZGlmCj4gLWVuZGlmCj4gZGlmZiAtLWdpdCBhL2FyY2gveDg2XzY0L0NvbmZpZy51ayBiL2Fy
Y2gveDg2XzY0L0NvbmZpZy51awo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IGNh
NDllZWQuLjAwMDAwMDAKPiAtLS0gYS9hcmNoL3g4Nl82NC9Db25maWcudWsKPiArKysgL2Rldi9u
dWxsCj4gQEAgLTEsODkgKzAsMCBAQAo+IC1jaG9pY2UKPiAtCXByb21wdCAiUHJvY2Vzc29yIE9w
dGltaXphdGlvbiIKPiAtCWRlZmF1bHQgTUFSQ0hfR0VORVJJQwo+IC0JaGVscAo+IC0JCU9wdGlt
aXplIHRoZSBjb2RlIGZvciBzZWxlY3RlZCB0YXJnZXQgcHJvY2Vzc29yCj4gLQkJR2VuZXJpYyB4
ODZfNjQgZG9lcyBub3QgZW5hYmxlIGFueSBhZGRpdGlvbmFsIENQVSBmZWF0dXJlcwo+IC0JCShl
LmcuLCBTU0UsIDNETm93ISkgYW5kIHByb2R1Y2VzIGhpZ2hseSBwcm90YWJsZSBjb2RlIGZvciB4
ODYuCj4gLQo+IC1jb25maWcgTUFSQ0hfTkFUSVZFCj4gLQlib29sICJBdXRvLWRldGVjdCBob3N0
IENQVSIKPiAtCWhlbHAKPiAtCQlPcHRpbWl6ZSBjb21waWxhdGlvbiB0byBob3N0IENQVQo+IC0J
CVBsZWFzZSBub3RlIHRoYXQgdGhpcyBvcHRpb24gd2lsbCBmYWlsIGluIGNhc2Ugb2YgY3Jvc3Mt
Y29tcGlsYXRpb24KPiAtCj4gLWNvbmZpZyBNQVJDSF9HRU5FUklDCj4gLQlib29sICJHZW5lcmlj
IDY0LWJpdCIKPiAtCWhlbHAKPiAtCQlDb21waWxlIGZvciA2NC1iaXQgY29tcGF0aWJsZSB4ODYg
Q1BVcwo+IC0KPiAtY29uZmlnIE1BUkNIX05PQ09OQQo+IC0JYm9vbCAiSW50ZWwgUGVudGl1bSA0
L1hlb24gKE5vY29uYSkiCj4gLQloZWxwCj4gLQkJSW1wcm92ZWQgdmVyc2lvbiBvZiBJbnRlbCBQ
ZW50aXVtIDQgQ1BVIHdpdGggNjQtYml0IGV4dGVuc2lvbnMsIE1NWCwgU1NFLCBTU0UyIGFuZCBT
U0UzIGluc3RydWN0aW9uIHNldCBzdXBwb3J0Lgo+IC0KPiAtY29uZmlnIE1BUkNIX0NPUkUyCj4g
LQlib29sICJJbnRlbCBDb3JlIDIvWGVvbiIKPiAtCWhlbHAKPiAtCQlJbnRlbCBDb3JlIDIgQ1BV
IHdpdGggNjQtYml0IGV4dGVuc2lvbnMsIE1NWCwgU1NFLCBTU0UyLCBTU0UzIGFuZCBTU1NFMyBp
bnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4KPiAtCj4gLWNvbmZpZyBNQVJDSF9DT1JFSTcKPiAtCWJv
b2wgIkludGVsIENvcmUgaTcvWGVvbiIKPiAtCWhlbHAKPiAtCQlJbnRlbCBDb3JlIGk3IENQVSB3
aXRoIDY0LWJpdCBleHRlbnNpb25zLCBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NTRTMsIFNTRTQu
MSBhbmQgU1NFNC4yIGluc3RydWN0aW9uIHNldCBzdXBwb3J0Lgo+IC0KPiAtY29uZmlnIE1BUkNI
X0NPUkVJN0FWWAo+IC0JYm9vbCAiSW50ZWwgQ29yZSBpNy9YZW9uICtBVlgiCj4gLQloZWxwCj4g
LQkJSW50ZWwgQ29yZSBpNyBDUFUgd2l0aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNT
RTIsIFNTRTMsIFNTU0UzLCBTU0U0LjEsIFNTRTQuMiwgQVZYLCBBRVMgYW5kIFBDTE1VTCBpbnN0
cnVjdGlvbiBzZXQgc3VwcG9ydC4KPiAtCj4gLWNvbmZpZyBNQVJDSF9DT1JFSTdBVlhJCj4gLQli
b29sICJJbnRlbCBDb3JlL1hlb24gK0FWWCArUkRSTkQiCj4gLQloZWxwCj4gLQkJSW50ZWwgQ29y
ZSBDUFUgd2l0aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIsIFNTRTMsIFNTU0Uz
LCBTU0U0LjEsIFNTRTQuMiwgQVZYLCBBRVMsIFBDTE1VTCwgRlNHU0JBU0UsIFJEUk5EIGFuZCBG
MTZDIGluc3RydWN0aW9uIHNldCBzdXBwb3J0Lgo+IC0KPiAtY29uZmlnIE1BUkNIX0FUT00KPiAt
CWJvb2wgIkludGVsIEF0b20gNjQtYml0Igo+IC0JaGVscAo+IC0JCUludGVsIEF0b20gQ1BVIHdp
dGggNjQtYml0IGV4dGVuc2lvbnMsIE1NWCwgU1NFLCBTU0UyLCBTU0UzIGFuZCBTU1NFMyBpbnN0
cnVjdGlvbiBzZXQgc3VwcG9ydC4KPiAtCj4gLWNvbmZpZyBNQVJDSF9LOAo+IC0JYm9vbCAiQU1E
IEF0aGxvbjY0L09wdGVyb24iCj4gLQloZWxwCj4gLQkJUHJvY2Vzc29ycyBiYXNlZCBvbiB0aGUg
QU1EIEs4IGNvcmUgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQsIGluY2x1ZGlu
ZyB0aGUgQU1EIE9wdGVyb24sIEF0aGxvbiA2NCwgYW5kIEF0aGxvbiA2NCBGWCBwcm9jZXNzb3Jz
LiAoVGhpcyBzdXBlcnNldHMgTU1YLCBTU0UsIFNTRTIsIDNETm93ISwgZW5oYW5jZWQgM0ROb3ch
IGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuKQo+IC0KPiAtY29uZmlnIE1B
UkNIX0s4U1NFMwo+IC0JYm9vbCAiQU1EIEF0aGxvbjY0L09wdGVyb24gK1NTRTMiCj4gLQloZWxw
Cj4gLQkJSW1wcm92ZWQgdmVyc2lvbnMgb2YgQU1EIEs4IGNvcmVzIHdpdGggU1NFMyBpbnN0cnVj
dGlvbiBzZXQgc3VwcG9ydC4KPiAtCj4gLWNvbmZpZyBNQVJDSF9BTURGQU0xMAo+IC0JYm9vbCAi
QU1EIEZhbWlseSAxMGggY29yZXMiCj4gLQloZWxwCj4gLQkJQ1BVcyBiYXNlZCBvbiBBTUQgRmFt
aWx5IDEwaCBjb3JlcyB3aXRoIHg4Ni02NCBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4gKFRoaXMg
c3VwZXJzZXRzIE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBTU0U0QSwgM0ROb3chLCBlbmhhbmNlZCAz
RE5vdyEsIEFCTSBhbmQgNjQtYml0IGluc3RydWN0aW9uIHNldCBleHRlbnNpb25zLikKPiAtCj4g
LWNvbmZpZyBNQVJDSF9CVFZFUjEKPiAtCWJvb2wgIkFNRCBGYW1pbHkgMTRoIGNvcmVzIgo+IC0J
aGVscAo+IC0JCUNQVXMgYmFzZWQgb24gQU1EIEZhbWlseSAxNGggY29yZXMgd2l0aCB4ODYtNjQg
aW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuIChUaGlzIHN1cGVyc2V0cyBNTVgsIFNTRSwgU1NFMiwg
U1NFMywgU1NTRTMsIFNTRTRBLCBDWDE2LCBBQk0gYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQg
ZXh0ZW5zaW9ucy4pCj4gLQo+IC1jb25maWcgTUFSQ0hfQkRWRVIxCj4gLQlib29sICJBTUQgRmFt
aWx5IDE1aCBjb3JlcyAoYmR2ZXIxKSIKPiAtCWhlbHAKPiAtCQlDUFVzIGJhc2VkIG9uIEFNRCBG
YW1pbHkgMTVoIGNvcmVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldCBzdXBwb3J0LiAoVGhp
cyBzdXBlcnNldHMgRk1BNCwgQVZYLCBYT1AsIExXUCwgQUVTLCBQQ0xfTVVMLCBDWDE2LCBNTVgs
IFNTRSwgU1NFMiwgU1NFMywgU1NFNEEsIFNTU0UzLCBTU0U0LjEsIFNTRTQuMiwgQUJNIGFuZCA2
NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuKQo+IC0KPiAtY29uZmlnIE1BUkNIX0JE
VkVSMgo+IC0JYm9vbCAiQU1EIEZhbWlseSAxNWggY29yZXMgKGJkdmVyMikiCj4gLQloZWxwCj4g
LQkJQU1EIEZhbWlseSAxNWggY29yZSBiYXNlZCBDUFVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9u
IHNldCBzdXBwb3J0LiAoVGhpcyBzdXBlcnNldHMgQk1JLCBUQk0sIEYxNkMsIEZNQSwgQVZYLCBY
T1AsIExXUCwgQUVTLCBQQ0xfTVVMLCBDWDE2LCBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NFNEEs
IFNTU0UzLCBTU0U0LjEsIFNTRTQuMiwgQUJNIGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0IGV4
dGVuc2lvbnMuKQo+IC0KPiAtY29uZmlnIE1BUkNIX0JEVkVSMwo+IC0JYm9vbCAiQU1EIEZhbWls
eSAxNWggY29yZXMgKGJkdmVyMykiCj4gLQloZWxwCj4gLQkJQU1EIEZhbWlseSAxNWggY29yZSBi
YXNlZCBDUFVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldCBzdXBwb3J0LiAoVGhpcyBzdXBl
cnNldHMgQk1JLCBUQk0sIEYxNkMsIEZNQSwgQVZYLCBYT1AsIExXUCwgQUVTLCBQQ0xfTVVMLCBD
WDE2LCBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NFNEEsIFNTU0UzLCBTU0U0LjEsIFNTRTQuMiwg
QUJNIGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuCj4gLQo+IC1jb25maWcg
TUFSQ0hfQlRWRVIyCj4gLQlib29sICJBTUQgRmFtaWx5IDE2aCBjb3JlcyIKPiAtCWhlbHAKPiAt
CQlDUFVzIGJhc2VkIG9uIEFNRCBGYW1pbHkgMTZoIGNvcmVzIHdpdGggeDg2LTY0IGluc3RydWN0
aW9uIHNldCBzdXBwb3J0LiBUaGlzIGluY2x1ZGVzIE1PVkJFLCBGMTZDLCBCTUksIEFWWCwgUENM
X01VTCwgQUVTLCBTU0U0LjIsIFNTRTQuMSwgQ1gxNiwgQUJNLCBTU0U0QSwgU1NTRTMsIFNTRTMs
IFNTRTIsIFNTRSwgTU1YIGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuCj4g
LWVuZGNob2ljZQo+IGRpZmYgLS1naXQgYS9hcmNoL3g4Nl82NC9NYWtlZmlsZS51ayBiL2FyY2gv
eDg2XzY0L01ha2VmaWxlLnVrCj4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggOGM5
YmZlMy4uMDAwMDAwMAo+IC0tLSBhL2FyY2gveDg2XzY0L01ha2VmaWxlLnVrCj4gKysrIC9kZXYv
bnVsbAo+IEBAIC0xLDM3ICswLDAgQEAKPiAtQVNGTEFHUyAgKz0gLURfX1g4Nl82NF9fCj4gLUFT
RkxBR1MgICs9IC1tNjQKPiAtQ0ZMQUdTICAgKz0gLURfX1g4Nl82NF9fCj4gLUNGTEFHUyAgICs9
IC1tNjQgLW1uby1yZWQtem9uZSAtZm5vLXJlb3JkZXItYmxvY2tzIC1mbm8tYXN5bmNocm9ub3Vz
LXVud2luZC10YWJsZXMKPiAtQ1hYRkxBR1MgKz0gLURfX1g4Nl82NF9fCj4gLUNYWEZMQUdTICs9
IC1tNjQgLW1uby1yZWQtem9uZSAtZm5vLXJlb3JkZXItYmxvY2tzIC1mbm8tYXN5bmNocm9ub3Vz
LXVud2luZC10YWJsZXMKPiAtCj4gLUNGTEFHUy0kKE1BUkNIX0dFTkVSSUMpICAgICAgKz0gLW10
dW5lPWdlbmVyaWMKPiAtQ1hYRkxBR1MtJChNQVJDSF9HRU5FUklDKSAgICArPSAtbXR1bmU9Z2Vu
ZXJpYwo+IC1DRkxBR1MtJChNQVJDSF9OT0NPTkEpICAgICAgICs9IC1tYXJjaD1ub2NvbmEKPiAt
Q1hYRkxBR1MtJChNQVJDSF9OT0NPTkEpICAgICArPSAtbWFyY2g9bm9jb25hCj4gLUNGTEFHUy0k
KE1BUkNIX0NPUkUyKSAgICAgICAgKz0gLW1hcmNoPWNvcmUyCj4gLUNYWEZMQUdTLSQoTUFSQ0hf
Q09SRTIpICAgICAgKz0gLW1hcmNoPWNvcmUyCj4gLUNGTEFHUy0kKE1BUkNIX0NPUkVJNykgICAg
ICAgKz0gLW1hcmNoPWNvcmVpNwo+IC1DWFhGTEFHUy0kKE1BUkNIX0NPUkVJNykgICAgICs9IC1t
YXJjaD1jb3JlaTcKPiAtQ0ZMQUdTLSQoTUFSQ0hfQ09SRUk3QVZYKSAgICArPSAtbWFyY2g9Y29y
ZWk3LWF2eAo+IC1DWFhGTEFHUy0kKE1BUkNIX0NPUkVJN0FWWCkgICs9IC1tYXJjaD1jb3JlaTct
YXZ4Cj4gLUNGTEFHUy0kKE1BUkNIX0NPUkVJN0FWWEkpICAgKz0gLW1hcmNoPWNvcmUtYXZ4LWkK
PiAtQ1hYRkxBR1MtJChNQVJDSF9DT1JFSTdBVlhJKSArPSAtbWFyY2g9Y29yZS1hdngtaQo+IC1D
RkxBR1MtJChNQVJDSF9BVE9NKSAgICAgICAgICs9IC1tYXJjaD1hdG9tCj4gLUNYWEZMQUdTLSQo
TUFSQ0hfQVRPTSkgICAgICAgKz0gLW1hcmNoPWF0b20KPiAtQ0ZMQUdTLSQoTUFSQ0hfSzgpICAg
ICAgICAgICArPSAtbWFyY2g9azgKPiAtQ1hYRkxBR1MtJChNQVJDSF9LOCkgICAgICAgICArPSAt
bWFyY2g9azgKPiAtQ0ZMQUdTLSQoTUFSQ0hfSzhTU0UzKSAgICAgICArPSAtbWFyY2g9azgtc3Nl
Mwo+IC1DWFhGTEFHUy0kKE1BUkNIX0s4U1NFMykgICAgICs9IC1tYXJjaD1rOC1zc2UzCj4gLUNG
TEFHUy0kKE1BUkNIX0FNREZBTTEwKSAgICAgKz0gLW1hcmNoPWFtZGZhbTEwCj4gLUNYWEZMQUdT
LSQoTUFSQ0hfQU1ERkFNMTApICAgKz0gLW1hcmNoPWFtZGZhbTEwCj4gLUNGTEFHUy0kKE1BUkNI
X0JEVkVSMSkgICAgICAgKz0gLW1hcmNoPWJkdmVyMQo+IC1DWFhGTEFHUy0kKE1BUkNIX0JEVkVS
MSkgICAgICs9IC1tYXJjaD1iZHZlcjEKPiAtQ0ZMQUdTLSQoTUFSQ0hfQkRWRVIyKSAgICAgICAr
PSAtbWFyY2g9YmR2ZXIyCj4gLUNYWEZMQUdTLSQoTUFSQ0hfQkRWRVIyKSAgICAgKz0gLW1hcmNo
PWJkdmVyMgo+IC1DRkxBR1MtJChNQVJDSF9CRFZFUjMpICAgICAgICs9IC1tYXJjaD1iZHZlcjMK
PiAtQ1hYRkxBR1MtJChNQVJDSF9CRFZFUjMpICAgICArPSAtbWFyY2g9YmR2ZXIzCj4gLUNGTEFH
Uy0kKE1BUkNIX0JUVkVSMSkgICAgICAgKz0gLW1hcmNoPWJ0dmVyMQo+IC1DWFhGTEFHUy0kKE1B
UkNIX0JUVkVSMSkgICAgICs9IC1tYXJjaD1idHZlcjEKPiAtQ0ZMQUdTLSQoTUFSQ0hfQlRWRVIy
KSAgICAgICArPSAtbWFyY2g9YnR2ZXIyCj4gLUNYWEZMQUdTLSQoTUFSQ0hfQlRWRVIyKSAgICAg
Kz0gLW1hcmNoPWJ0dmVyMgo+IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMu
eGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3Rp
bmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 21:28:25 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 21:28:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3pxA-0005gH-NJ; Wed, 04 Apr 2018 21:28:24 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3px9-0005gC-1h
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 21:28:23 +0000
X-Inumbo-ID: 00926923-384f-11e8-9728-bc764e045a96
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 00926923-384f-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 23:27:40 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id B9B1BF200C;
 Wed,  4 Apr 2018 23:28:16 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id uy7qr5zFOByY; Wed,  4 Apr 2018 23:28:16 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id 776C7F2001;
 Wed,  4 Apr 2018 23:28:06 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 23:28:05 +0200
To: Wei Chen <Wei.Chen@arm.com>, <minios-devel@lists.xenproject.org>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-4-git-send-email-Wei.Chen@arm.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <8ec9a205-2021-d228-697f-8ba2a7127bcc@neclab.eu>
Date: Wed, 4 Apr 2018 23:28:04 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1521085152-77655-4-git-send-email-Wei.Chen@arm.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 3/9] build: Move arm32 libraries
 to new family/architecture folder
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gMTUuMDMuMjAxOCAwNDozOSwgV2VpIENoZW4gd3JvdGU6Cj4gV2UgaGF2ZSB1c2UgdGhlIGFy
Y2gvPEZBTUlMWT4vIHRvIHN0b3JlIHRoZSBjb21tb24gY29kZXMgYW5kIGJ1aWxkCj4gc2NyaXB0
cyBmb3IgdGhlIGFyY2hpdGVjdHVyZXMgb2Ygc2FtZSBmYW1pbHkuIFRoZSBvcmlnaW5hbCBjb2Rl
cwo+IHRoYXQgc3RvcmVkIGluIGFyY2gvYXJtMzIgYXJlIGFybTMyIGNvZGVzLiBTbyB3ZSBoYXZl
IG1vdmUgdGhlbSB0bwo+IHRoZSBuZXcgZm9sZGVyIGFyY2gvYXJtL2FybTMyLgo+IAo+IFNpZ25l
ZC1vZmYtYnk6IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPgo+IC0tLQo+ICAgYXJjaC9hcm0v
TWFrZWZpbGUudWsgICAgICAgICAgICB8ICAxNSArLQo+ICAgYXJjaC9hcm0vYXJtMzIvZGl2c2kz
LlMgICAgICAgICB8IDQwNCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
Cj4gICBhcmNoL2FybS9hcm0zMi9sZGl2bW9kLlMgICAgICAgIHwgIDY4ICsrKysrKysKPiAgIGFy
Y2gvYXJtL2FybTMyL2xkaXZtb2RfaGVscGVyLmMgfCAgNjcgKysrKysrKwo+ICAgYXJjaC9hcm0v
YXJtMzIvcWRpdnJlbS5jICAgICAgICB8IDMyNCArKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKwo+ICAgYXJjaC9hcm0vZGl2c2kzLlMgICAgICAgICAgICAgICB8IDQwNCAtLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gICBhcmNoL2FybS9sZGl2bW9kLlMgICAg
ICAgICAgICAgIHwgIDY4IC0tLS0tLS0KPiAgIGFyY2gvYXJtL2xkaXZtb2RfaGVscGVyLmMgICAg
ICAgfCAgNjcgLS0tLS0tLQo+ICAgYXJjaC9hcm0vcWRpdnJlbS5jICAgICAgICAgICAgICB8IDMy
NCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAgOSBmaWxlcyBjaGFuZ2VkLCA4
NzQgaW5zZXJ0aW9ucygrKSwgODY3IGRlbGV0aW9ucygtKQo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0
IGFyY2gvYXJtL2FybTMyL2RpdnNpMy5TCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0v
YXJtMzIvbGRpdm1vZC5TCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtMzIvbGRp
dm1vZF9oZWxwZXIuYwo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FybTMyL3FkaXZy
ZW0uYwo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2RpdnNpMy5TCj4gICBkZWxldGUg
bW9kZSAxMDA2NDQgYXJjaC9hcm0vbGRpdm1vZC5TCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgYXJj
aC9hcm0vbGRpdm1vZF9oZWxwZXIuYwo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL3Fk
aXZyZW0uYwo+IAo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9NYWtlZmlsZS51ayBiL2FyY2gvYXJt
L01ha2VmaWxlLnVrCj4gaW5kZXggMjU2N2RiZS4uNzgwYTAzNSAxMDA2NDQKPiAtLS0gYS9hcmNo
L2FybS9NYWtlZmlsZS51awo+ICsrKyBiL2FyY2gvYXJtL01ha2VmaWxlLnVrCj4gQEAgLTEsMyAr
MSw2IEBACj4gKyMgU2V0dXAgY29tcGlsZXIgZmxhZ3MgYW5kIG9iamVjdHMgZm9yIGFybTMyCgpJ
IHdvdWxkIGNhbGwgaXQgbGlicmFyaWVzIGluIHRoZSBjb21tZW50IGluc3RlYWQgb2Ygb2JqZWN0
cy4gbGliYXJtbWF0aCAKaXMgZXNzZW50aWFsbHkgYSBsaWJyYXJ5IGZvciBBUk0zMi4gV2lsbCB5
b3UgbmVlZCBzb21ldGhpbmcgc2ltaWxhciBmb3IgCkFBUkNINjQ/IElmIHllcywga2VlcCB0aGUg
TElCQVJNTUFUSF9TUkNTLSQoQVJDSF9BUk1fMzIpIGZvcm0gYW5kIGRvIHRoZSAKYWRkbGliIGNh
bGwgZm9yIGJvdGggQ1BVIGFyY2hpdGVjdHVyZXMuIElmIGEgbGlicmFyeSBkb2VzIG5vdCBoYXZl
IGFueSAKc291cmNlIGZpbGVzIGRlZmluZWQsIHRoZSBidWlsZCBzeXN0ZW0gd2lsbCBhdXRvbWF0
aWNhbGx5IGV4Y2x1ZGUgaXQgCmZyb20gdGhlIGJ1aWxkLgoKPiAraWZlcSAoJChVS19BUkNIKSxh
cm0pCj4gKwo+ICAgQVNGTEFHUyAgKz0gLURfX0FSTV8zMl9fCj4gICBBU0ZMQUdTICArPSAtbWFy
bQo+ICAgQ0ZMQUdTICAgKz0gLURfX0FSTV8zMl9fCj4gQEAgLTEzLDcgKzE2LDExIEBAIENGTEFH
Uy0kKE1BUkNIX0NPUlRFWEE3KSAgICs9IC1tY3B1PWNvcnRleC1hNyAtbXR1bmU9Y29ydGV4LWE3
Cj4gICBDWFhGTEFHUy0kKE1BUkNIX0NPUlRFWEE3KSArPSAtbWNwdT1jb3J0ZXgtYTcgLW10dW5l
PWNvcnRleC1hCj4gICAKPiAgICQoZXZhbCAkKGNhbGwgYWRkbGliLGxpYmFybW1hdGgpKQo+IC1M
SUJBUk1NQVRIX1NSQ1MtJChBUkNIX0FSTV8zMikgKz0gJChVS19CQVNFKS9hcmNoL2FybS9kaXZz
aTMuUwo+IC1MSUJBUk1NQVRIX1NSQ1MtJChBUkNIX0FSTV8zMikgKz0gJChVS19CQVNFKS9hcmNo
L2FybS9sZGl2bW9kLlMKPiAtTElCQVJNTUFUSF9TUkNTLSQoQVJDSF9BUk1fMzIpICs9ICQoVUtf
QkFTRSkvYXJjaC9hcm0vbGRpdm1vZF9oZWxwZXIuYwo+IC1MSUJBUk1NQVRIX1NSQ1MtJChBUkNI
X0FSTV8zMikgKz0gJChVS19CQVNFKS9hcmNoL2FybS9xZGl2cmVtLmMKPiArTElCQVJNTUFUSF9T
UkNTLXkgKz0gJChVS19CQVNFKS9hcmNoL2FybS9hcm0zMi9kaXZzaTMuUwo+ICtMSUJBUk1NQVRI
X1NSQ1MteSArPSAkKFVLX0JBU0UpL2FyY2gvYXJtL2FybTMyL2xkaXZtb2QuUwo+ICtMSUJBUk1N
QVRIX1NSQ1MteSArPSAkKFVLX0JBU0UpL2FyY2gvYXJtL2FybTMyL2xkaXZtb2RfaGVscGVyLmMK
PiArTElCQVJNTUFUSF9TUkNTLXkgKz0gJChVS19CQVNFKS9hcmNoL2FybS9hcm0zMi9xZGl2cmVt
LmMKPiArCj4gK2Vsc2UKPiArJChlcnJvciBUYXJnZXQgYXJjaGl0ZWN0dXJlICgkKFVLX0FSQ0gp
KSBpcyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZC4pCj4gK2VuZGlmCj4gZGlmZiAtLWdpdCBhL2Fy
Y2gvYXJtL2FybTMyL2RpdnNpMy5TIGIvYXJjaC9hcm0vYXJtMzIvZGl2c2kzLlMKPiBuZXcgZmls
ZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLjhiZjVhYzIKPiAtLS0gL2Rldi9udWxsCj4g
KysrIGIvYXJjaC9hcm0vYXJtMzIvZGl2c2kzLlMKPiBAQCAtMCwwICsxLDQwNCBAQAo+ICsvKgkk
TmV0QlNEOiBkaXZzaTMuUyx2IDEuNCAyMDAzLzA0LzA1IDIzOjI3OjE1IGJqaDIxIEV4cCAkCSov
Cj4gKwo+ICsvKi0KPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9S
IEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAo+ICsgKiBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiArICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UKPiArICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKPiArICogRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwKPiArICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKPiArICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCj4gKyAqIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUCj4gKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKPiArICogT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgo+
ICsgKiBTVUNIIERBTUFHRS4KPiArICovCj4gKwo+ICsjZGVmaW5lIEVOVFJZX05QKHN5bWJvbCkg
XAo+ICsJLmdsb2JsIHN5bWJvbDsJXAo+ICsJc3ltYm9sOgo+ICsKPiArI2RlZmluZSBFTkQoc3lt
Ym9sKQo+ICsKPiArLyoKPiArICogc3RhY2sgaXMgYWxpZ25lZCBhcyB0aGVyZSdzIGEgcG9zc2li
aWxpdHkgb2YgYnJhbmNoaW5nIHRvIExfb3ZlcmZsb3cKPiArICogd2hpY2ggbWFrZXMgYSBDIGNh
bGwKPiArICovCj4gKwo+ICtFTlRSWV9OUChfX3Vtb2RzaTMpCj4gKwlzdG1mZAlzcCEsIHtscn0K
PiArCXN1YglzcCwgc3AsICM0CS8qIGFsaWduIHN0YWNrICovCj4gKwlibAkuTF91ZGl2aWRlCj4g
KwlhZGQJc3AsIHNwLCAjNAkvKiB1bmFsaWduIHN0YWNrICovCj4gKwltb3YJcjAsIHIxCj4gKwls
ZG1mZAlzcCEsIHtwY30KPiArRU5EKF9fdW1vZHNpMykKPiArCj4gK0VOVFJZX05QKF9fbW9kc2kz
KQo+ICsJc3RtZmQJc3AhLCB7bHJ9Cj4gKwlzdWIJc3AsIHNwLCAjNAkvKiBhbGlnbiBzdGFjayAq
Lwo+ICsJYmwJLkxfZGl2aWRlCj4gKwlhZGQJc3AsIHNwLCAjNAkvKiB1bmFsaWduIHN0YWNrICov
Cj4gKwltb3YJcjAsIHIxCj4gKwlsZG1mZAlzcCEsIHtwY30KPiArCj4gKy5MX292ZXJmbG93Ogo+
ICsJLyogWFhYIHNob3VsZCBjYXVzZSBhIGZhdGFsIGVycm9yICovCj4gKwltdm4JcjAsICMwCj4g
Kwltb3YJcGMsIGxyCj4gKwo+ICtFTkQoX19tb2RzaTMpCj4gKwo+ICsjaWZkZWYgX19BUk1fRUFC
SV9fCj4gK0VOVFJZX05QKF9fYWVhYmlfdWlkaXYpCj4gK0VOVFJZX05QKF9fYWVhYmlfdWlkaXZt
b2QpCj4gKyNlbmRpZgo+ICtFTlRSWV9OUChfX3VkaXZzaTMpCj4gKy5MX3VkaXZpZGU6CQkJCS8q
IHIwID0gcjAgLyByMTsgcjEgPSByMCAlIHIxICovCj4gKwllb3IgICAgIHIwLCByMSwgcjAKPiAr
CWVvciAgICAgcjEsIHIwLCByMQo+ICsJZW9yICAgICByMCwgcjEsIHIwCj4gKwkJCQkJLyogcjAg
PSByMSAvIHIwOyByMSA9IHIxICUgcjAgKi8KPiArCWNtcAlyMCwgIzEKPiArCWJjYwkuTF9vdmVy
Zmxvdwo+ICsJYmVxCS5MX2RpdmlkZV9sMAo+ICsJbW92CWlwLCAjMAo+ICsJbW92cwlyMSwgcjEK
PiArCWJwbAkuTF9kaXZpZGVfbDEKPiArCW9ycglpcCwgaXAsICMweDIwMDAwMDAwCS8qIGlwIGJp
dCAweDIwMDAwMDAwID0gLXZlIHIxICovCj4gKwltb3ZzCXIxLCByMSwgbHNyICMxCj4gKwlvcnJj
cwlpcCwgaXAsICMweDEwMDAwMDAwCS8qIGlwIGJpdCAweDEwMDAwMDAwID0gYml0IDAgb2YgcjEg
Ki8KPiArCWIJLkxfZGl2aWRlX2wxCj4gKwo+ICsuTF9kaXZpZGVfbDA6CQkJCS8qIHIwID09IDEg
Ki8KPiArCW1vdglyMCwgcjEKPiArCW1vdglyMSwgIzAKPiArCW1vdglwYywgbHIKPiArI2lmZGVm
IF9fQVJNX0VBQklfXwo+ICtFTkQoX19hZWFiaV91aWRpdikKPiArRU5EKF9fYWVhYmlfdWlkaXZt
b2QpCj4gKyNlbmRpZgo+ICtFTkQoX191ZGl2c2kzKQo+ICsKPiArI2lmZGVmIF9fQVJNX0VBQklf
Xwo+ICtFTlRSWV9OUChfX2FlYWJpX2lkaXYpCj4gK0VOVFJZX05QKF9fYWVhYmlfaWRpdm1vZCkK
PiArI2VuZGlmCj4gK0VOVFJZX05QKF9fZGl2c2kzKQo+ICsuTF9kaXZpZGU6CQkJCS8qIHIwID0g
cjAgLyByMTsgcjEgPSByMCAlIHIxICovCj4gKwllb3IgICAgIHIwLCByMSwgcjAKPiArCWVvciAg
ICAgcjEsIHIwLCByMQo+ICsJZW9yICAgICByMCwgcjEsIHIwCj4gKwkJCQkJLyogcjAgPSByMSAv
IHIwOyByMSA9IHIxICUgcjAgKi8KPiArCWNtcAlyMCwgIzEKPiArCWJjYwkuTF9vdmVyZmxvdwo+
ICsJYmVxCS5MX2RpdmlkZV9sMAo+ICsJYW5kcwlpcCwgcjAsICMweDgwMDAwMDAwCj4gKwlyc2Jt
aQlyMCwgcjAsICMwCj4gKwlhbmRzCXIyLCByMSwgIzB4ODAwMDAwMDAKPiArCWVvcglpcCwgaXAs
IHIyCj4gKwlyc2JtaQlyMSwgcjEsICMwCj4gKwlvcnIJaXAsIHIyLCBpcCwgbHNyICMxCS8qIGlw
IGJpdCAweDQwMDAwMDAwID0gLXZlIGRpdmlzaW9uICovCj4gKwkJCQkJLyogaXAgYml0IDB4ODAw
MDAwMDAgPSAtdmUgcmVtYWluZGVyICovCj4gKwo+ICsuTF9kaXZpZGVfbDE6Cj4gKwltb3YJcjIs
ICMxCj4gKwltb3YJcjMsICMwCj4gKwo+ICsJLyoKPiArCSAqIElmIHRoZSBoaWdoZXN0IGJpdCBv
ZiB0aGUgZGl2aWRlbmQgaXMgc2V0LCB3ZSBoYXZlIHRvIGJlCj4gKwkgKiBjYXJlZnVsIHdoZW4g
c2hpZnRpbmcgdGhlIGRpdmlzb3IuIFRlc3QgdGhpcy4KPiArCSAqLwo+ICsJbW92cwlyMSxyMQo+
ICsJYnBsCS5MX29sZF9jb2RlCj4gKwo+ICsJLyoKPiArCSAqIEF0IHRoaXMgcG9pbnQsIHRoZSBo
aWdoZXN0IGJpdCBvZiByMSBpcyBrbm93biB0byBiZSBzZXQuCj4gKwkgKiBXZSBhYnVzZSB0aGlz
IGJlbG93IGluIHRoZSB0c3QgaW5zdHJ1Y3Rpb25zLgo+ICsJICovCj4gKwl0c3QJcjEsIHIwIC8q
LCBsc2wgIzAgKi8KPiArCWJtaQkuTF9kaXZpZGVfYjEKPiArCXRzdAlyMSwgcjAsIGxzbCAjMQo+
ICsJYm1pCS5MX2RpdmlkZV9iMgo+ICsJdHN0CXIxLCByMCwgbHNsICMyCj4gKwlibWkJLkxfZGl2
aWRlX2IzCj4gKwl0c3QJcjEsIHIwLCBsc2wgIzMKPiArCWJtaQkuTF9kaXZpZGVfYjQKPiArCXRz
dAlyMSwgcjAsIGxzbCAjNAo+ICsJYm1pCS5MX2RpdmlkZV9iNQo+ICsJdHN0CXIxLCByMCwgbHNs
ICM1Cj4gKwlibWkJLkxfZGl2aWRlX2I2Cj4gKwl0c3QJcjEsIHIwLCBsc2wgIzYKPiArCWJtaQku
TF9kaXZpZGVfYjcKPiArCXRzdAlyMSwgcjAsIGxzbCAjNwo+ICsJYm1pCS5MX2RpdmlkZV9iOAo+
ICsJdHN0CXIxLCByMCwgbHNsICM4Cj4gKwlibWkJLkxfZGl2aWRlX2I5Cj4gKwl0c3QJcjEsIHIw
LCBsc2wgIzkKPiArCWJtaQkuTF9kaXZpZGVfYjEwCj4gKwl0c3QJcjEsIHIwLCBsc2wgIzEwCj4g
KwlibWkJLkxfZGl2aWRlX2IxMQo+ICsJdHN0CXIxLCByMCwgbHNsICMxMQo+ICsJYm1pCS5MX2Rp
dmlkZV9iMTIKPiArCXRzdAlyMSwgcjAsIGxzbCAjMTIKPiArCWJtaQkuTF9kaXZpZGVfYjEzCj4g
Kwl0c3QJcjEsIHIwLCBsc2wgIzEzCj4gKwlibWkJLkxfZGl2aWRlX2IxNAo+ICsJdHN0CXIxLCBy
MCwgbHNsICMxNAo+ICsJYm1pCS5MX2RpdmlkZV9iMTUKPiArCXRzdAlyMSwgcjAsIGxzbCAjMTUK
PiArCWJtaQkuTF9kaXZpZGVfYjE2Cj4gKwl0c3QJcjEsIHIwLCBsc2wgIzE2Cj4gKwlibWkJLkxf
ZGl2aWRlX2IxNwo+ICsJdHN0CXIxLCByMCwgbHNsICMxNwo+ICsJYm1pCS5MX2RpdmlkZV9iMTgK
PiArCXRzdAlyMSwgcjAsIGxzbCAjMTgKPiArCWJtaQkuTF9kaXZpZGVfYjE5Cj4gKwl0c3QJcjEs
IHIwLCBsc2wgIzE5Cj4gKwlibWkJLkxfZGl2aWRlX2IyMAo+ICsJdHN0CXIxLCByMCwgbHNsICMy
MAo+ICsJYm1pCS5MX2RpdmlkZV9iMjEKPiArCXRzdAlyMSwgcjAsIGxzbCAjMjEKPiArCWJtaQku
TF9kaXZpZGVfYjIyCj4gKwl0c3QJcjEsIHIwLCBsc2wgIzIyCj4gKwlibWkJLkxfZGl2aWRlX2Iy
Mwo+ICsJdHN0CXIxLCByMCwgbHNsICMyMwo+ICsJYm1pCS5MX2RpdmlkZV9iMjQKPiArCXRzdAly
MSwgcjAsIGxzbCAjMjQKPiArCWJtaQkuTF9kaXZpZGVfYjI1Cj4gKwl0c3QJcjEsIHIwLCBsc2wg
IzI1Cj4gKwlibWkJLkxfZGl2aWRlX2IyNgo+ICsJdHN0CXIxLCByMCwgbHNsICMyNgo+ICsJYm1p
CS5MX2RpdmlkZV9iMjcKPiArCXRzdAlyMSwgcjAsIGxzbCAjMjcKPiArCWJtaQkuTF9kaXZpZGVf
YjI4Cj4gKwl0c3QJcjEsIHIwLCBsc2wgIzI4Cj4gKwlibWkJLkxfZGl2aWRlX2IyOQo+ICsJdHN0
CXIxLCByMCwgbHNsICMyOQo+ICsJYm1pCS5MX2RpdmlkZV9iMzAKPiArCXRzdAlyMSwgcjAsIGxz
bCAjMzAKPiArCWJtaQkuTF9kaXZpZGVfYjMxCj4gKy8qCj4gKyAqIGluc3RlYWQgb2Y6Cj4gKyAq
CXRzdAlyMSwgcjAsIGxzbCAjMzEKPiArICoJYm1pCS5MX2RpdmlkZV9iMzIKPiArICovCj4gKwli
CS5MX2RpdmlkZV9iMzIKPiArCj4gKy5MX29sZF9jb2RlOgo+ICsJY21wCXIxLCByMAo+ICsJYmNj
CS5MX2RpdmlkZV9iMAo+ICsJY21wCXIxLCByMCwgbHNsICMxCj4gKwliY2MJLkxfZGl2aWRlX2Ix
Cj4gKwljbXAJcjEsIHIwLCBsc2wgIzIKPiArCWJjYwkuTF9kaXZpZGVfYjIKPiArCWNtcAlyMSwg
cjAsIGxzbCAjMwo+ICsJYmNjCS5MX2RpdmlkZV9iMwo+ICsJY21wCXIxLCByMCwgbHNsICM0Cj4g
KwliY2MJLkxfZGl2aWRlX2I0Cj4gKwljbXAJcjEsIHIwLCBsc2wgIzUKPiArCWJjYwkuTF9kaXZp
ZGVfYjUKPiArCWNtcAlyMSwgcjAsIGxzbCAjNgo+ICsJYmNjCS5MX2RpdmlkZV9iNgo+ICsJY21w
CXIxLCByMCwgbHNsICM3Cj4gKwliY2MJLkxfZGl2aWRlX2I3Cj4gKwljbXAJcjEsIHIwLCBsc2wg
IzgKPiArCWJjYwkuTF9kaXZpZGVfYjgKPiArCWNtcAlyMSwgcjAsIGxzbCAjOQo+ICsJYmNjCS5M
X2RpdmlkZV9iOQo+ICsJY21wCXIxLCByMCwgbHNsICMxMAo+ICsJYmNjCS5MX2RpdmlkZV9iMTAK
PiArCWNtcAlyMSwgcjAsIGxzbCAjMTEKPiArCWJjYwkuTF9kaXZpZGVfYjExCj4gKwljbXAJcjEs
IHIwLCBsc2wgIzEyCj4gKwliY2MJLkxfZGl2aWRlX2IxMgo+ICsJY21wCXIxLCByMCwgbHNsICMx
Mwo+ICsJYmNjCS5MX2RpdmlkZV9iMTMKPiArCWNtcAlyMSwgcjAsIGxzbCAjMTQKPiArCWJjYwku
TF9kaXZpZGVfYjE0Cj4gKwljbXAJcjEsIHIwLCBsc2wgIzE1Cj4gKwliY2MJLkxfZGl2aWRlX2Ix
NQo+ICsJY21wCXIxLCByMCwgbHNsICMxNgo+ICsJYmNjCS5MX2RpdmlkZV9iMTYKPiArCWNtcAly
MSwgcjAsIGxzbCAjMTcKPiArCWJjYwkuTF9kaXZpZGVfYjE3Cj4gKwljbXAJcjEsIHIwLCBsc2wg
IzE4Cj4gKwliY2MJLkxfZGl2aWRlX2IxOAo+ICsJY21wCXIxLCByMCwgbHNsICMxOQo+ICsJYmNj
CS5MX2RpdmlkZV9iMTkKPiArCWNtcAlyMSwgcjAsIGxzbCAjMjAKPiArCWJjYwkuTF9kaXZpZGVf
YjIwCj4gKwljbXAJcjEsIHIwLCBsc2wgIzIxCj4gKwliY2MJLkxfZGl2aWRlX2IyMQo+ICsJY21w
CXIxLCByMCwgbHNsICMyMgo+ICsJYmNjCS5MX2RpdmlkZV9iMjIKPiArCWNtcAlyMSwgcjAsIGxz
bCAjMjMKPiArCWJjYwkuTF9kaXZpZGVfYjIzCj4gKwljbXAJcjEsIHIwLCBsc2wgIzI0Cj4gKwli
Y2MJLkxfZGl2aWRlX2IyNAo+ICsJY21wCXIxLCByMCwgbHNsICMyNQo+ICsJYmNjCS5MX2Rpdmlk
ZV9iMjUKPiArCWNtcAlyMSwgcjAsIGxzbCAjMjYKPiArCWJjYwkuTF9kaXZpZGVfYjI2Cj4gKwlj
bXAJcjEsIHIwLCBsc2wgIzI3Cj4gKwliY2MJLkxfZGl2aWRlX2IyNwo+ICsJY21wCXIxLCByMCwg
bHNsICMyOAo+ICsJYmNjCS5MX2RpdmlkZV9iMjgKPiArCWNtcAlyMSwgcjAsIGxzbCAjMjkKPiAr
CWJjYwkuTF9kaXZpZGVfYjI5Cj4gKwljbXAJcjEsIHIwLCBsc2wgIzMwCj4gKwliY2MJLkxfZGl2
aWRlX2IzMAo+ICsuTF9kaXZpZGVfYjMyOgo+ICsJY21wCXIxLCByMCwgbHNsICMzMQo+ICsJc3Vi
aHMJcjEsIHIxLHIwLCBsc2wgIzMxCj4gKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMzEKPiArLkxf
ZGl2aWRlX2IzMToKPiArCWNtcAlyMSwgcjAsIGxzbCAjMzAKPiArCXN1YmhzCXIxLCByMSxyMCwg
bHNsICMzMAo+ICsJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzMwCj4gKy5MX2RpdmlkZV9iMzA6Cj4g
KwljbXAJcjEsIHIwLCBsc2wgIzI5Cj4gKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMjkKPiArCWFk
ZGhzCXIzLCByMyxyMiwgbHNsICMyOQo+ICsuTF9kaXZpZGVfYjI5Ogo+ICsJY21wCXIxLCByMCwg
bHNsICMyOAo+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzI4Cj4gKwlhZGRocwlyMywgcjMscjIs
IGxzbCAjMjgKPiArLkxfZGl2aWRlX2IyODoKPiArCWNtcAlyMSwgcjAsIGxzbCAjMjcKPiArCXN1
YmhzCXIxLCByMSxyMCwgbHNsICMyNwo+ICsJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzI3Cj4gKy5M
X2RpdmlkZV9iMjc6Cj4gKwljbXAJcjEsIHIwLCBsc2wgIzI2Cj4gKwlzdWJocwlyMSwgcjEscjAs
IGxzbCAjMjYKPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyNgo+ICsuTF9kaXZpZGVfYjI2Ogo+
ICsJY21wCXIxLCByMCwgbHNsICMyNQo+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzI1Cj4gKwlh
ZGRocwlyMywgcjMscjIsIGxzbCAjMjUKPiArLkxfZGl2aWRlX2IyNToKPiArCWNtcAlyMSwgcjAs
IGxzbCAjMjQKPiArCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyNAo+ICsJYWRkaHMJcjMsIHIzLHIy
LCBsc2wgIzI0Cj4gKy5MX2RpdmlkZV9iMjQ6Cj4gKwljbXAJcjEsIHIwLCBsc2wgIzIzCj4gKwlz
dWJocwlyMSwgcjEscjAsIGxzbCAjMjMKPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyMwo+ICsu
TF9kaXZpZGVfYjIzOgo+ICsJY21wCXIxLCByMCwgbHNsICMyMgo+ICsJc3ViaHMJcjEsIHIxLHIw
LCBsc2wgIzIyCj4gKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMjIKPiArLkxfZGl2aWRlX2IyMjoK
PiArCWNtcAlyMSwgcjAsIGxzbCAjMjEKPiArCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyMQo+ICsJ
YWRkaHMJcjMsIHIzLHIyLCBsc2wgIzIxCj4gKy5MX2RpdmlkZV9iMjE6Cj4gKwljbXAJcjEsIHIw
LCBsc2wgIzIwCj4gKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMjAKPiArCWFkZGhzCXIzLCByMyxy
MiwgbHNsICMyMAo+ICsuTF9kaXZpZGVfYjIwOgo+ICsJY21wCXIxLCByMCwgbHNsICMxOQo+ICsJ
c3ViaHMJcjEsIHIxLHIwLCBsc2wgIzE5Cj4gKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMTkKPiAr
LkxfZGl2aWRlX2IxOToKPiArCWNtcAlyMSwgcjAsIGxzbCAjMTgKPiArCXN1YmhzCXIxLCByMSxy
MCwgbHNsICMxOAo+ICsJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzE4Cj4gKy5MX2RpdmlkZV9iMTg6
Cj4gKwljbXAJcjEsIHIwLCBsc2wgIzE3Cj4gKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTcKPiAr
CWFkZGhzCXIzLCByMyxyMiwgbHNsICMxNwo+ICsuTF9kaXZpZGVfYjE3Ogo+ICsJY21wCXIxLCBy
MCwgbHNsICMxNgo+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzE2Cj4gKwlhZGRocwlyMywgcjMs
cjIsIGxzbCAjMTYKPiArLkxfZGl2aWRlX2IxNjoKPiArCWNtcAlyMSwgcjAsIGxzbCAjMTUKPiAr
CXN1YmhzCXIxLCByMSxyMCwgbHNsICMxNQo+ICsJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzE1Cj4g
Ky5MX2RpdmlkZV9iMTU6Cj4gKwljbXAJcjEsIHIwLCBsc2wgIzE0Cj4gKwlzdWJocwlyMSwgcjEs
cjAsIGxzbCAjMTQKPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICMxNAo+ICsuTF9kaXZpZGVfYjE0
Ogo+ICsJY21wCXIxLCByMCwgbHNsICMxMwo+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzEzCj4g
KwlhZGRocwlyMywgcjMscjIsIGxzbCAjMTMKPiArLkxfZGl2aWRlX2IxMzoKPiArCWNtcAlyMSwg
cjAsIGxzbCAjMTIKPiArCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxMgo+ICsJYWRkaHMJcjMsIHIz
LHIyLCBsc2wgIzEyCj4gKy5MX2RpdmlkZV9iMTI6Cj4gKwljbXAJcjEsIHIwLCBsc2wgIzExCj4g
KwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTEKPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICMxMQo+
ICsuTF9kaXZpZGVfYjExOgo+ICsJY21wCXIxLCByMCwgbHNsICMxMAo+ICsJc3ViaHMJcjEsIHIx
LHIwLCBsc2wgIzEwCj4gKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMTAKPiArLkxfZGl2aWRlX2Ix
MDoKPiArCWNtcAlyMSwgcjAsIGxzbCAjOQo+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzkKPiAr
CWFkZGhzCXIzLCByMyxyMiwgbHNsICM5Cj4gKy5MX2RpdmlkZV9iOToKPiArCWNtcAlyMSwgcjAs
IGxzbCAjOAo+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzgKPiArCWFkZGhzCXIzLCByMyxyMiwg
bHNsICM4Cj4gKy5MX2RpdmlkZV9iODoKPiArCWNtcAlyMSwgcjAsIGxzbCAjNwo+ICsJc3ViaHMJ
cjEsIHIxLHIwLCBsc2wgIzcKPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICM3Cj4gKy5MX2Rpdmlk
ZV9iNzoKPiArCWNtcAlyMSwgcjAsIGxzbCAjNgo+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzYK
PiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICM2Cj4gKy5MX2RpdmlkZV9iNjoKPiArCWNtcAlyMSwg
cjAsIGxzbCAjNQo+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzUKPiArCWFkZGhzCXIzLCByMyxy
MiwgbHNsICM1Cj4gKy5MX2RpdmlkZV9iNToKPiArCWNtcAlyMSwgcjAsIGxzbCAjNAo+ICsJc3Vi
aHMJcjEsIHIxLHIwLCBsc2wgIzQKPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICM0Cj4gKy5MX2Rp
dmlkZV9iNDoKPiArCWNtcAlyMSwgcjAsIGxzbCAjMwo+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wg
IzMKPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICMzCj4gKy5MX2RpdmlkZV9iMzoKPiArCWNtcAly
MSwgcjAsIGxzbCAjMgo+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzIKPiArCWFkZGhzCXIzLCBy
MyxyMiwgbHNsICMyCj4gKy5MX2RpdmlkZV9iMjoKPiArCWNtcAlyMSwgcjAsIGxzbCAjMQo+ICsJ
c3ViaHMJcjEsIHIxLHIwLCBsc2wgIzEKPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICMxCj4gKy5M
X2RpdmlkZV9iMToKPiArCWNtcAlyMSwgcjAKPiArCXN1YmhzCXIxLCByMSwgcjAKPiArCWFkZGhz
CXIzLCByMywgcjIKPiArLkxfZGl2aWRlX2IwOgo+ICsKPiArCXRzdAlpcCwgIzB4MjAwMDAwMDAK
PiArCWJuZQkuTF91ZGl2aWRlX2wxCj4gKwltb3YJcjAsIHIzCj4gKwljbXAJaXAsICMwCj4gKwly
c2JtaQlyMSwgcjEsICMwCj4gKwltb3ZzCWlwLCBpcCwgbHNsICMxCj4gKwliaWNtaQlyMCwgcjAs
ICMweDgwMDAwMDAwCS8qIEZpeCBpbmNhc2Ugd2UgZGl2aWRlZCAweDgwMDAwMDAwICovCj4gKwly
c2JtaQlyMCwgcjAsICMwCj4gKwltb3YJcGMsIGxyCj4gKwo+ICsuTF91ZGl2aWRlX2wxOgo+ICsJ
dHN0CWlwLCAjMHgxMDAwMDAwMAo+ICsJbW92CXIxLCByMSwgbHNsICMxCj4gKwlvcnJuZQlyMSwg
cjEsICMxCj4gKwltb3YJcjMsIHIzLCBsc2wgIzEKPiArCWNtcAlyMSwgcjAKPiArCXN1YmhzCXIx
LCByMSwgcjAKPiArCWFkZGhzCXIzLCByMywgcjIKPiArCW1vdglyMCwgcjMKPiArCW1vdglwYywg
bHIKPiArRU5EKF9fYWVhYmlfaWRpdikKPiArRU5EKF9fYWVhYmlfaWRpdm1vZCkKPiArRU5EKF9f
ZGl2c2kzKQo+ICsKPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtMzIvbGRpdm1vZC5TIGIvYXJj
aC9hcm0vYXJtMzIvbGRpdm1vZC5TCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAw
MDAwLi4xODAyMjdjCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2FyY2gvYXJtL2FybTMyL2xkaXZt
b2QuUwo+IEBAIC0wLDAgKzEsNjggQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJT
RC0yLUNsYXVzZSAqLwo+ICsvKgo+ICsgKiBDb3B5cmlnaHQgKEMpIDIwMTIgQW5kcmV3IFR1cm5l
cgo+ICsgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+ICsgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKPiArICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4gKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KPiAr
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+ICsgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgo+
ICsgKgo+ICsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENP
TlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECj4gKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+ICsgKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRQo+ICsgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBB
VVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQo+ICsgKiBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAo+
ICsgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUwo+ICsgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiArICogSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QKPiArICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQo+ICsgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCj4gKyAqIFNV
Q0ggREFNQUdFLgo+ICsgKgo+ICsgKi8KPiArCj4gKyNkZWZpbmUgRU5UUllfTlAoc3ltYm9sKSBc
Cj4gKwkuZ2xvYmwgc3ltYm9sOwlcCj4gKwlzeW1ib2w6Cj4gKwo+ICsjZGVmaW5lIEVORChzeW1i
b2wpCj4gKwo+ICsvKgo+ICsgKiBUaGVzZSBjYWxjdWxhdGU6Cj4gKyAqIHEgPSBuIC8gbQo+ICsg
KiBXaXRoIGEgcmVtYWluZXIgci4KPiArICoKPiArICogVGhleSB0YWtlIG4gaW4ge3IwLCByMX0g
YW5kIG0gaW4ge3IyLCByM30gdGhlbiBwYXNzIHRoZW0gaW50byB0aGUKPiArICogaGVscGVyIGZ1
bmN0aW9uLiBUaGUgaGVwbGVyIGZ1bmN0aW9ucyByZXR1cm4gcSBpbiB7cjAsIHIxfSBhcwo+ICsg
KiByZXF1aXJlZCBieSB0aGUgQVBJIHNwZWMgaG93ZXZlciByIGlzIHJldHVybmVkIG9uIHRoZSBz
dGFjay4gVGhlCj4gKyAqIEFCSSByZXF1aXJlZCB1cyB0byByZXR1cm4gciBpbiB7cjIsIHIzfS4K
PiArICoKPiArICogV2UgbmVlZCB0byBhbGxvY2F0ZSA4IGJ5dGVzIG9uIHRoZSBzdGFjayB0byBz
dG9yZSByLCB0aGUgbGluawo+ICsgKiByZWdpc3RlciwgYW5kIGEgcG9pbnRlciB0byB0aGUgc3Bh
Y2Ugd2hlcmUgdGhlIGhlbHBlciBmdW5jdGlvbgo+ICsgKiB3aWxsIHdyaXRlIHIgdG8uIEFmdGVy
IHJldHVybmluZyBmcm9tIHRoZSBoZWxwZXIgZnVpbmN0aW9uIHdlIGxvYWQKPiArICogdGhlIG9s
ZCBsaW5rIHJlZ2lzdGVyIGFuZCByIGZyb20gdGhlIHN0YWNrIGFuZCByZXR1cm4uCj4gKyAqLwo+
ICtFTlRSWV9OUChfX2FlYWJpX2xkaXZtb2QpCj4gKwlzdWIJc3AsIHNwLCAjOAkvKiBTcGFjZSBm
b3IgdGhlIHJlbWFpbmRlciAqLwo+ICsJc3RtZmQJc3AhLCB7c3AsIGxyfQkvKiBTYXZlIGEgcG9p
bnRlciB0byB0aGUgYWJvdmUgc3BhY2UgYW5kIGxyICovCj4gKwlibAlfX2tlcm5fbGRpdm1vZAo+
ICsJbGRyCWxyLCBbc3AsICM0XQkvKiBSZXN0b3JlIGxyICovCj4gKwlhZGQJc3AsIHNwLCAjOAkv
KiBNb3ZlIHNwIHRvIHRoZSByZW1haW5kZXIgdmFsdWUgKi8KPiArCWxkbWZkCXNwISwge3IyLCBy
M30JLyogTG9hZCB0aGUgcmVtYWluZGVyICovCj4gKwltb3YJcGMsIGxyCj4gK0VORChfX2FlYWJp
X2xkaXZtb2QpCj4gKwo+ICtFTlRSWV9OUChfX2FlYWJpX3VsZGl2bW9kKQo+ICsJc3ViCXNwLCBz
cCwgIzgJLyogU3BhY2UgZm9yIHRoZSByZW1haW5kZXIgKi8KPiArCXN0bWZkCXNwISwge3NwLCBs
cn0JLyogU2F2ZSBhIHBvaW50ZXIgdG8gdGhlIGFib3ZlIHNwYWNlIGFuZCBsciAqLwo+ICsJYmwJ
X19xZGl2cmVtCj4gKwlsZHIJbHIsIFtzcCwgIzRdCS8qIFJlc3RvcmUgbHIgKi8KPiArCWFkZAlz
cCwgc3AsICM4CS8qIE1vdmUgc3AgdG8gdGhlIHJlbWFpbmRlciB2YWx1ZSAqLwo+ICsJbGRtZmQJ
c3AhLCB7cjIsIHIzfQkvKiBMb2FkIHRoZSByZW1haW5kZXIgKi8KPiArCW1vdglwYywgbHIKPiAr
RU5EKF9fYWVhYmlfdWxkaXZtb2QpCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTMyL2xkaXZt
b2RfaGVscGVyLmMgYi9hcmNoL2FybS9hcm0zMi9sZGl2bW9kX2hlbHBlci5jCj4gbmV3IGZpbGUg
bW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi4wOTg1MjNlCj4gLS0tIC9kZXYvbnVsbAo+ICsr
KyBiL2FyY2gvYXJtL2FybTMyL2xkaXZtb2RfaGVscGVyLmMKPiBAQCAtMCwwICsxLDY3IEBACj4g
Ky8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UgKi8KPiArLyoKPiArICog
Q29weXJpZ2h0IChDKSAyMDEyIEFuZHJldyBUdXJuZXIKPiArICogQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KPiArICoKPiArICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+ICsgKiBhcmUgbWV0Ogo+
ICsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKPiArICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAo+
ICsgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKPiArICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKPiArICogQVJFIERJU0NM
QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUKPiArICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKPiArICogREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKPiArICog
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pCj4gKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCj4gKyAqIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkKPiArICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRgo+ICsgKiBTVUNIIERBTUFHRS4KPiArICoKPiArICovCj4g
Kwo+ICsjaW5jbHVkZSA8dWsvYXJjaC90eXBlcy5oPgo+ICsKPiArX191NjQgX19xZGl2cmVtKF9f
dTY0IHUsIF9fdTY0IHYsIF9fdTY0ICpyZW0pOwo+ICsKPiArI2lmbmRlZiBIQVZFX0xJQkMKPiAr
X19zNjQgX19kaXZkaTMoX19zNjQgYSwgX19zNjQgYikKPiArewo+ICsJX191NjQgdWEsIHViLCB1
cTsKPiArCWludCBuZWc7Cj4gKwo+ICsJaWYgKGEgPCAwKQo+ICsJCXVhID0gLShfX3U2NClhLCBu
ZWcgPSAxOwo+ICsJZWxzZQo+ICsJCXVhID0gYSwgbmVnID0gMDsKPiArCWlmIChiIDwgMCkKPiAr
CQl1YiA9IC0oX191NjQpYiwgbmVnIF49IDE7Cj4gKwllbHNlCj4gKwkJdWIgPSBiOwo+ICsJdXEg
PSBfX3FkaXZyZW0odWEsIHViLCAoX191NjQgKikwKTsKPiArCXJldHVybiBuZWcgPyAtdXEgOiB1
cTsKPiArfQo+ICsjZW5kaWYKPiArCj4gKy8qCj4gKyAqIEhlbHBlciBmb3IgX19hZWFiaV9sZGl2
bW9kLgo+ICsgKiBUT0RPOiBfX2RpdmRpMyBjYWxscyBfX3FkaXZyZW0uIFdlIHNob3VsZCBkbyB0
aGUgc2FtZSBhbmQgdXNlIHRoZQo+ICsgKiByZW1haW5kZXIgdmFsdWUgcmF0aGVyIHRoYW4gcmUt
Y2FsY3VsYXRpbmcgaXQuCj4gKyAqLwo+ICtsb25nIGxvbmcgX19rZXJuX2xkaXZtb2QobG9uZyBs
b25nLCBsb25nIGxvbmcsIGxvbmcgbG9uZyAqKTsKPiArCj4gK2xvbmcgbG9uZyBfX2tlcm5fbGRp
dm1vZChsb25nIGxvbmcgbiwgbG9uZyBsb25nIG0sIGxvbmcgbG9uZyAqcmVtKQo+ICt7Cj4gKwls
b25nIGxvbmcgcTsKPiArCj4gKwlxID0gX19kaXZkaTMobiwgbSk7IC8qIHEgPSBuIC8gbSAqLwo+
ICsJKnJlbSA9IG4gLSBtICogcTsKPiArCj4gKwlyZXR1cm4gcTsKPiArfQo+IGRpZmYgLS1naXQg
YS9hcmNoL2FybS9hcm0zMi9xZGl2cmVtLmMgYi9hcmNoL2FybS9hcm0zMi9xZGl2cmVtLmMKPiBu
ZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLmU3ZDE0NzEKPiAtLS0gL2Rldi9u
dWxsCj4gKysrIGIvYXJjaC9hcm0vYXJtMzIvcWRpdnJlbS5jCj4gQEAgLTAsMCArMSwzMjQgQEAK
PiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwo+ICsvKi0KPiAr
ICogQ29weXJpZ2h0IChjKSAxOTkyLCAxOTkzCj4gKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2
ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+ICsgKiBU
aGlzIHNvZnR3YXJlIHdhcyBkZXZlbG9wZWQgYnkgdGhlIENvbXB1dGVyIFN5c3RlbXMgRW5naW5l
ZXJpbmcgZ3JvdXAKPiArICogYXQgTGF3cmVuY2UgQmVya2VsZXkgTGFib3JhdG9yeSB1bmRlciBE
QVJQQSBjb250cmFjdCBCRyA5MS02NiBhbmQKPiArICogY29udHJpYnV0ZWQgdG8gQmVya2VsZXku
Cj4gKyAqCj4gKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAo+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKPiArICogYXJlIG1ldDoKPiAr
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCj4gKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4gKyAqIDQuIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCj4gKyAqICAg
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20g
dGhpcyBzb2Z0d2FyZQo+ICsgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVH
RU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKPiArICogQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4g
KyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQo+ICsgKiBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTAo+ICsgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwo+ICsgKiBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiArICog
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QKPiArICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQo+ICsgKiBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GCj4gKyAqIFNVQ0ggREFNQUdFLgo+ICsgKi8KPiArCj4gKyNpbmNsdWRlIDx1ay9hcmNoL3R5
cGVzLmg+Cj4gKyNpbmNsdWRlIDx1ay9hcmNoL2xpbWl0cy5oPgo+ICsKPiArLyoKPiArICogTXVs
dGlwcmVjaXNpb24gZGl2aWRlLiAgVGhpcyBhbGdvcml0aG0gaXMgZnJvbSBLbnV0aCB2b2wuIDIg
KDJuZCBlZCksCj4gKyAqIHNlY3Rpb24gNC4zLjEsIHBwLiAyNTctLTI1OS4KPiArICovCj4gKwo+
ICsvKgo+ICsgKiBGcm9tCj4gKyAqCUAoIylxdWFkLmgJOC4xIChCZXJrZWxleSkgNi80LzkzCj4g
KyAqLwo+ICsKPiArI2lmZGVmIF9fQklHX0VORElBTgo+ICsjZGVmaW5lIF9RVUFEX0hJR0hXT1JE
IDAKPiArI2RlZmluZSBfUVVBRF9MT1dXT1JEIDEKPiArI2Vsc2UgLyogX19MSVRUTEVfRU5ESUFO
ICovCj4gKyNkZWZpbmUgX1FVQURfSElHSFdPUkQgMQo+ICsjZGVmaW5lIF9RVUFEX0xPV1dPUkQg
MAo+ICsjZW5kaWYKPiArCj4gKy8qCj4gKyAqIERlZmluZSBoaWdoIGFuZCBsb3cgbG9uZ3dvcmRz
Lgo+ICsgKi8KPiArI2RlZmluZSBRVUFESCAgICAgICAgICAgICAgIF9RVUFEX0hJR0hXT1JECj4g
KyNkZWZpbmUgUVVBREwgICAgICAgICAgICAgICBfUVVBRF9MT1dXT1JECj4gKwo+ICsvKgo+ICsg
KiBUb3RhbCBudW1iZXIgb2YgYml0cyBpbiBhIHF1YWRfdCBhbmQgaW4gdGhlIHBpZWNlcyB0aGF0
IG1ha2UgaXQgdXAuCj4gKyAqIFRoZXNlIGFyZSB1c2VkIGZvciBzaGlmdGluZywgYW5kIGFsc28g
YmVsb3cgZm9yIGhhbGZ3b3JkIGV4dHJhY3Rpb24KPiArICogYW5kIGFzc2VtYmx5Lgo+ICsgKi8K
PiArI2RlZmluZSBDSEFSX0JJVCAgICAgICAgOCAgICAgICAgICAgICAgIC8qIG51bWJlciBvZiBi
aXRzIGluIGEgY2hhciAqLwo+ICsjZGVmaW5lIFFVQURfQklUUyAgICAgICAoc2l6ZW9mKF9fczY0
KSAqIENIQVJfQklUKQo+ICsjZGVmaW5lIExPTkdfQklUUyAgICAgICAoc2l6ZW9mKGxvbmcpICog
Q0hBUl9CSVQpCj4gKyNkZWZpbmUgSEFMRl9CSVRTICAgICAgIChzaXplb2YobG9uZykgKiBDSEFS
X0JJVCAvIDIpCj4gKwo+ICsjZGVmaW5lIERJR0lUX0JBU0UgKDEgPDwgSEFMRl9CSVRTKSAvKiBk
aWdpdCBiYXNlICovCj4gKy8qCj4gKyAqIEV4dHJhY3QgaGlnaCBhbmQgbG93IHNob3J0d29yZHMg
ZnJvbSBsb25nd29yZCwgYW5kIG1vdmUgbG93IHNob3J0d29yZCBvZgo+ICsgKiBsb25nd29yZCB0
byB1cHBlciBoYWxmIG9mIGxvbmcsIGkuZS4sIHByb2R1Y2UgdGhlIHVwcGVyIGxvbmd3b3JkIG9m
Cj4gKyAqICgocXVhZF90KSh4KSA8PCAobnVtYmVyX29mX2JpdHNfaW5fbG9uZy8yKSkuICAoYHgn
IG11c3QgYWN0dWFsbHkgYmUgdV9sb25nLikKPiArICoKPiArICogVGhlc2UgYXJlIHVzZWQgaW4g
dGhlIG11bHRpcGx5IGNvZGUsIHRvIHNwbGl0IGEgbG9uZ3dvcmQgaW50byB1cHBlcgo+ICsgKiBh
bmQgbG93ZXIgaGFsdmVzLCBhbmQgdG8gcmVhc3NlbWJsZSBhIHByb2R1Y3QgYXMgYSBxdWFkX3Qs
IHNoaWZ0ZWQgbGVmdAo+ICsgKiAoc2l6ZW9mKGxvbmcpKkNIQVJfQklULzIpLgo+ICsgKi8KPiAr
I2RlZmluZSBISEFMRih4KSAgICAgICAgKCh4KSA+PiBIQUxGX0JJVFMpCj4gKyNkZWZpbmUgTEhB
TEYoeCkgICAgICAgICgoeCkgJiAoKDEgPDwgSEFMRl9CSVRTKSAtIDEpKQo+ICsjZGVmaW5lIExI
VVAoeCkgICAgICAgICAoKHgpIDw8IEhBTEZfQklUUykKPiArCj4gKyNkZWZpbmUgQ09NQklORShh
LCBiKSAoKCh1bnNpZ25lZCBsb25nKShhKSA8PCBIQUxGX0JJVFMpIHwgKGIpKQo+ICsKPiArLyoK
PiArICogRGVwZW5kaW5nIG9uIHRoZSBkZXNpcmVkIG9wZXJhdGlvbiwgd2UgdmlldyBhIGBsb25n
IGxvbmcnIChha2EgcXVhZF90KSBpbgo+ICsgKiBvbmUgb3IgbW9yZSBvZiB0aGUgZm9sbG93aW5n
IGZvcm1hdHMuCj4gKyAqLwo+ICt1bmlvbiB1dSB7Cj4gKwlfX3M2NCAgICAgICAgICAgcTsgICAg
ICAgICAgICAgLyogYXMgYSAoc2lnbmVkKSBxdWFkICovCj4gKwlfX3M2NCAgICAgICAgICB1cTsg
ICAgICAgICAgICAgLyogYXMgYW4gdW5zaWduZWQgcXVhZCAqLwo+ICsJbG9uZyAgICAgICAgICAg
c2xbMl07ICAgICAgICAgIC8qIGFzIHR3byBzaWduZWQgbG9uZ3MgKi8KPiArCXVuc2lnbmVkIGxv
bmcgIHVsWzJdOyAgICAgICAgICAvKiBhcyB0d28gdW5zaWduZWQgbG9uZ3MgKi8KPiArfTsKPiAr
Cj4gKyNkZWZpbmUJQgkoMSA8PCBIQUxGX0JJVFMpCS8qIGRpZ2l0IGJhc2UgKi8KPiArCj4gKy8q
IHNlbGVjdCBhIHR5cGUgZm9yIGRpZ2l0cyBpbiBiYXNlIEI6IHVzZSB1bnNpZ25lZCBzaG9ydCBp
ZiB0aGV5IGZpdCAqLwo+ICsjaWYgX19VTF9NQVggPT0gMHhmZmZmZmZmZiAmJiBfX1VTX01BWCA+
PSAweGZmZmYKPiArdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBkaWdpdDsKPiArI2Vsc2UKPiArdHlw
ZWRlZiB1bnNpZ25lZCBsb25nIGRpZ2l0Owo+ICsjZW5kaWYKPiArCj4gKy8qCj4gKyAqIFNoaWZ0
IHBbMF0uLnBbbGVuXSBsZWZ0IGBzaCcgYml0cywgaWdub3JpbmcgYW55IGJpdHMgdGhhdAo+ICsg
KiBgZmFsbCBvdXQnIHRoZSBsZWZ0ICh0aGVyZSBuZXZlciB3aWxsIGJlIGFueSBzdWNoIGFueXdh
eSkuCj4gKyAqIFdlIG1heSBhc3N1bWUgbGVuID49IDAuICBOT1RFIFRIQVQgVEhJUyBXUklURVMg
bGVuKzEgRElHSVRTLgo+ICsgKi8KPiArc3RhdGljIHZvaWQgX19zaGwocmVnaXN0ZXIgZGlnaXQg
KnAsIHJlZ2lzdGVyIGludCBsZW4sIHJlZ2lzdGVyIGludCBzaCkKPiArewo+ICsJcmVnaXN0ZXIg
aW50IGk7Cj4gKwo+ICsJZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKQo+ICsJCXBbaV0gPSBMSEFM
RihwW2ldIDw8IHNoKSB8IChwW2kgKyAxXSA+PiAoSEFMRl9CSVRTIC0gc2gpKTsKPiArCXBbaV0g
PSBMSEFMRihwW2ldIDw8IHNoKTsKPiArfQo+ICsKPiArLyoKPiArICogX19xZGl2cmVtKHUsIHYs
IHJlbSkgcmV0dXJucyB1L3YgYW5kLCBvcHRpb25hbGx5LCBzZXRzICpyZW0gdG8gdSV2Lgo+ICsg
Kgo+ICsgKiBXZSBkbyB0aGlzIGluIGJhc2UgMi1zdXAtSEFMRl9CSVRTLCBzbyB0aGF0IGFsbCBp
bnRlcm1lZGlhdGUgcHJvZHVjdHMKPiArICogZml0IHdpdGhpbiB1X2xvbmcuICBBcyBhIGNvbnNl
cXVlbmNlLCB0aGUgbWF4aW11bSBsZW5ndGggZGl2aWRlbmQgYW5kCj4gKyAqIGRpdmlzb3IgYXJl
IDQgYGRpZ2l0cycgaW4gdGhpcyBiYXNlICh0aGV5IGFyZSBzaG9ydGVyIGlmIHRoZXkgaGF2ZQo+
ICsgKiBsZWFkaW5nIHplcm9zKS4KPiArICovCj4gK19fdTY0IF9fcWRpdnJlbShfX3U2NCB1cSwg
X191NjQgdnEsIF9fdTY0ICphcnEpCj4gK3sKPiArCXVuaW9uIHV1IHRtcDsKPiArCWRpZ2l0ICp1
LCAqdiwgKnE7Cj4gKwlyZWdpc3RlciBkaWdpdCB2MSwgdjI7Cj4gKwl1bnNpZ25lZCBsb25nIHFo
YXQsIHJoYXQsIHQ7Cj4gKwlpbnQgbSwgbiwgZCwgaiwgaTsKPiArCWRpZ2l0IHVzcGFjZVs1XSwg
dnNwYWNlWzVdLCBxc3BhY2VbNV07Cj4gKwo+ICsJLyoKPiArCSAqIFRha2UgY2FyZSBvZiBzcGVj
aWFsIGNhc2VzOiBkaXZpZGUgYnkgemVybywgYW5kIHUgPCB2Lgo+ICsJICovCj4gKwlpZiAodnEg
PT0gMCkgewo+ICsJCS8qIGRpdmlkZSBieSB6ZXJvLiAqLwo+ICsJCXN0YXRpYyB2b2xhdGlsZSBj
b25zdCB1bnNpZ25lZCBpbnQgemVybyA9IDA7Cj4gKwo+ICsJCXRtcC51bFtRVUFESF0gPSB0bXAu
dWxbUVVBRExdID0gMSAvIHplcm87Cj4gKwkJaWYgKGFycSkKPiArCQkJKmFycSA9IHVxOwo+ICsJ
CXJldHVybiB0bXAucTsKPiArCX0KPiArCWlmICh1cSA8IHZxKSB7Cj4gKwkJaWYgKGFycSkKPiAr
CQkJKmFycSA9IHVxOwo+ICsJCXJldHVybiAwOwo+ICsJfQo+ICsJdSA9ICZ1c3BhY2VbMF07Cj4g
Kwl2ID0gJnZzcGFjZVswXTsKPiArCXEgPSAmcXNwYWNlWzBdOwo+ICsKPiArCS8qCj4gKwkgKiBC
cmVhayBkaXZpZGVuZCBhbmQgZGl2aXNvciBpbnRvIGRpZ2l0cyBpbiBiYXNlIEIsIHRoZW4KPiAr
CSAqIGNvdW50IGxlYWRpbmcgemVyb3MgdG8gZGV0ZXJtaW5lIG0gYW5kIG4uICBXaGVuIGRvbmUs
IHdlCj4gKwkgKiB3aWxsIGhhdmU6Cj4gKwkgKgl1ID0gKHVbMV11WzJdLi4udVttK25dKSBzdWIg
Qgo+ICsJICoJdiA9ICh2WzFddlsyXS4uLnZbbl0pIHN1YiBCCj4gKwkgKgl2WzFdICE9IDAKPiAr
CSAqCTEgPCBuIDw9IDQgKGlmIG4gPSAxLCB3ZSB1c2UgYSBkaWZmZXJlbnQgZGl2aXNpb24gYWxn
b3JpdGhtKQo+ICsJICoJbSA+PSAwIChvdGhlcndpc2UgdSA8IHYsIHdoaWNoIHdlIGFscmVhZHkg
Y2hlY2tlZCkKPiArCSAqCW0gKyBuID0gNAo+ICsJICogYW5kIHRodXMKPiArCSAqCW0gPSA0IC0g
biA8PSAyCj4gKwkgKi8KPiArCXRtcC51cSA9IHVxOwo+ICsJdVswXSA9IDA7Cj4gKwl1WzFdID0g
SEhBTEYodG1wLnVsW1FVQURIXSk7Cj4gKwl1WzJdID0gTEhBTEYodG1wLnVsW1FVQURIXSk7Cj4g
Kwl1WzNdID0gSEhBTEYodG1wLnVsW1FVQURMXSk7Cj4gKwl1WzRdID0gTEhBTEYodG1wLnVsW1FV
QURMXSk7Cj4gKwl0bXAudXEgPSB2cTsKPiArCXZbMV0gPSBISEFMRih0bXAudWxbUVVBREhdKTsK
PiArCXZbMl0gPSBMSEFMRih0bXAudWxbUVVBREhdKTsKPiArCXZbM10gPSBISEFMRih0bXAudWxb
UVVBRExdKTsKPiArCXZbNF0gPSBMSEFMRih0bXAudWxbUVVBRExdKTsKPiArCWZvciAobiA9IDQ7
IHZbMV0gPT0gMDsgdisrKSB7Cj4gKwkJaWYgKC0tbiA9PSAxKSB7Cj4gKwkJCXVuc2lnbmVkIGxv
bmcgcmJqOyAvKiByKkIrdVtqXSAobm90IHJvb3QgYm95IGppbSkgKi8KPiArCQkJZGlnaXQgcTEs
IHEyLCBxMywgcTQ7Cj4gKwo+ICsJCQkvKgo+ICsJCQkgKiBDaGFuZ2Ugb2YgcGxhbiwgcGVyIGV4
ZXJjaXNlIDE2Lgo+ICsJCQkgKglyID0gMDsKPiArCQkJICoJZm9yIGogPSAxLi40Ogo+ICsJCQkg
KgkJcVtqXSA9IGZsb29yKChyKkIgKyB1W2pdKSAvIHYpLAo+ICsJCQkgKgkJciA9IChyKkIgKyB1
W2pdKSAlIHY7Cj4gKwkJCSAqIFdlIHVucm9sbCB0aGlzIGNvbXBsZXRlbHkgaGVyZS4KPiArCQkJ
ICovCj4gKwkJCXQgPSB2WzJdOwkvKiBub256ZXJvLCBieSBkZWZpbml0aW9uICovCj4gKwkJCXEx
ID0gdVsxXSAvIHQ7Cj4gKwkJCXJiaiA9IENPTUJJTkUodVsxXSAlIHQsIHVbMl0pOwo+ICsJCQlx
MiA9IHJiaiAvIHQ7Cj4gKwkJCXJiaiA9IENPTUJJTkUocmJqICUgdCwgdVszXSk7Cj4gKwkJCXEz
ID0gcmJqIC8gdDsKPiArCQkJcmJqID0gQ09NQklORShyYmogJSB0LCB1WzRdKTsKPiArCQkJcTQg
PSByYmogLyB0Owo+ICsJCQlpZiAoYXJxKQo+ICsJCQkJKmFycSA9IHJiaiAlIHQ7Cj4gKwkJCXRt
cC51bFtRVUFESF0gPSBDT01CSU5FKHExLCBxMik7Cj4gKwkJCXRtcC51bFtRVUFETF0gPSBDT01C
SU5FKHEzLCBxNCk7Cj4gKwkJCXJldHVybiB0bXAucTsKPiArCQl9Cj4gKwl9Cj4gKwo+ICsJLyoK
PiArCSAqIEJ5IGFkanVzdGluZyBxIG9uY2Ugd2UgZGV0ZXJtaW5lIG0sIHdlIGNhbiBndWFyYW50
ZWUgdGhhdAo+ICsJICogdGhlcmUgaXMgYSBjb21wbGV0ZSBmb3VyLWRpZ2l0IHF1b3RpZW50IGF0
ICZxc3BhY2VbMV0gd2hlbgo+ICsJICogd2UgZmluYWxseSBzdG9wLgo+ICsJICovCj4gKwlmb3Ig
KG0gPSA0IC0gbjsgdVsxXSA9PSAwOyB1KyspCj4gKwkJbS0tOwo+ICsJZm9yIChpID0gNCAtIG07
IC0taSA+PSAwOykKPiArCQlxW2ldID0gMDsKPiArCXEgKz0gNCAtIG07Cj4gKwo+ICsJLyoKPiAr
CSAqIEhlcmUgd2UgcnVuIFByb2dyYW0gRCwgdHJhbnNsYXRlZCBmcm9tIE1JWCB0byBDIGFuZCBh
Y3F1aXJpbmcKPiArCSAqIGEgZmV3IG1pbm9yIGNoYW5nZXMuCj4gKwkgKgo+ICsJICogRDE6IGNo
b29zZSBtdWx0aXBsaWVyIDEgPDwgZCB0byBlbnN1cmUgdlsxXSA+PSBCLzIuCj4gKwkgKi8KPiAr
CWQgPSAwOwo+ICsJZm9yICh0ID0gdlsxXTsgdCA8IEIgLyAyOyB0IDw8PSAxKQo+ICsJCWQrKzsK
PiArCWlmIChkID4gMCkgewo+ICsJCV9fc2hsKCZ1WzBdLCBtICsgbiwgZCk7CQkvKiB1IDw8PSBk
ICovCj4gKwkJX19zaGwoJnZbMV0sIG4gLSAxLCBkKTsJCS8qIHYgPDw9IGQgKi8KPiArCX0KPiAr
CS8qCj4gKwkgKiBEMjogaiA9IDAuCj4gKwkgKi8KPiArCWogPSAwOwo+ICsJdjEgPSB2WzFdOwkv
KiBmb3IgRDMgLS0gbm90ZSB0aGF0IHZbMS4ubl0gYXJlIGNvbnN0YW50ICovCj4gKwl2MiA9IHZb
Ml07CS8qIGZvciBEMyAqLwo+ICsJZG8gewo+ICsJCXJlZ2lzdGVyIGRpZ2l0IHVqMCwgdWoxLCB1
ajI7Cj4gKwo+ICsJCS8qCj4gKwkJICogRDM6IENhbGN1bGF0ZSBxaGF0IChcXnEsIGluIFRlWCBu
b3RhdGlvbikuCj4gKwkJICogTGV0IHFoYXQgPSBtaW4oKHVbal0qQiArIHVbaisxXSkvdlsxXSwg
Qi0xKSwgYW5kCj4gKwkJICogbGV0IHJoYXQgPSAodVtqXSpCICsgdVtqKzFdKSBtb2QgdlsxXS4K
PiArCQkgKiBXaGlsZSByaGF0IDwgQiBhbmQgdlsyXSpxaGF0ID4gcmhhdCpCK3VbaisyXSwKPiAr
CQkgKiBkZWNyZW1lbnQgcWhhdCBhbmQgaW5jcmVhc2UgcmhhdCBjb3JyZXNwb25kaW5nbHkuCj4g
KwkJICogTm90ZSB0aGF0IGlmIHJoYXQgPj0gQiwgdlsyXSpxaGF0IDwgcmhhdCpCLgo+ICsJCSAq
Lwo+ICsJCXVqMCA9IHVbaiArIDBdOwkvKiBmb3IgRDMgb25seSAtLSBub3RlIHRoYXQgdVtqKy4u
Ll0gY2hhbmdlICovCj4gKwkJdWoxID0gdVtqICsgMV07CS8qIGZvciBEMyBvbmx5ICovCj4gKwkJ
dWoyID0gdVtqICsgMl07CS8qIGZvciBEMyBvbmx5ICovCj4gKwkJaWYgKHVqMCA9PSB2MSkgewo+
ICsJCQlxaGF0ID0gQjsKPiArCQkJcmhhdCA9IHVqMTsKPiArCQkJZ290byBxaGF0X3Rvb19iaWc7
Cj4gKwkJfSBlbHNlIHsKPiArCQkJdW5zaWduZWQgbG9uZyBubiA9IENPTUJJTkUodWowLCB1ajEp
Owo+ICsKPiArCQkJcWhhdCA9IG5uIC8gdjE7Cj4gKwkJCXJoYXQgPSBubiAlIHYxOwo+ICsJCX0K
PiArCQl3aGlsZSAodjIgKiBxaGF0ID4gQ09NQklORShyaGF0LCB1ajIpKSB7Cj4gK3FoYXRfdG9v
X2JpZzoKPiArCQkJcWhhdC0tOwo+ICsJCQlpZiAoKHJoYXQgKz0gdjEpID49IEIpCj4gKwkJCQli
cmVhazsKPiArCQl9Cj4gKwkJLyoKPiArCQkgKiBENDogTXVsdGlwbHkgYW5kIHN1YnRyYWN0Lgo+
ICsJCSAqIFRoZSB2YXJpYWJsZSBgdCcgaG9sZHMgYW55IGJvcnJvd3MgYWNyb3NzIHRoZSBsb29w
Lgo+ICsJCSAqIFdlIHNwbGl0IHRoaXMgdXAgc28gdGhhdCB3ZSBkbyBub3QgcmVxdWlyZSB2WzBd
ID0gMCwKPiArCQkgKiBhbmQgdG8gZWxpbWluYXRlIGEgZmluYWwgc3BlY2lhbCBjYXNlLgo+ICsJ
CSAqLwo+ICsJCWZvciAodCA9IDAsIGkgPSBuOyBpID4gMDsgaS0tKSB7Cj4gKwkJCXQgPSB1W2kg
KyBqXSAtIHZbaV0gKiBxaGF0IC0gdDsKPiArCQkJdVtpICsgal0gPSBMSEFMRih0KTsKPiArCQkJ
dCA9IChCIC0gSEhBTEYodCkpICYgKEIgLSAxKTsKPiArCQl9Cj4gKwkJdCA9IHVbal0gLSB0Owo+
ICsJCXVbal0gPSBMSEFMRih0KTsKPiArCQkvKgo+ICsJCSAqIEQ1OiB0ZXN0IHJlbWFpbmRlci4K
PiArCQkgKiBUaGVyZSBpcyBhIGJvcnJvdyBpZiBhbmQgb25seSBpZiBISEFMRih0KSBpcyBub256
ZXJvOwo+ICsJCSAqIGluIHRoYXQgKHJhcmUpIGNhc2UsIHFoYXQgd2FzIHRvbyBsYXJnZSAoYnkg
ZXhhY3RseSAxKS4KPiArCQkgKiBGaXggaXQgYnkgYWRkaW5nIHZbMS4ubl0gdG8gdVtqLi5qK25d
Lgo+ICsJCSAqLwo+ICsJCWlmIChISEFMRih0KSkgewo+ICsJCQlxaGF0LS07Cj4gKwkJCWZvciAo
dCA9IDAsIGkgPSBuOyBpID4gMDsgaS0tKSB7IC8qIEQ2OiBhZGQgYmFjay4gKi8KPiArCQkJCXQg
Kz0gdVtpICsgal0gKyB2W2ldOwo+ICsJCQkJdVtpICsgal0gPSBMSEFMRih0KTsKPiArCQkJCXQg
PSBISEFMRih0KTsKPiArCQkJfQo+ICsJCQl1W2pdID0gTEhBTEYodVtqXSArIHQpOwo+ICsJCX0K
PiArCQlxW2pdID0gcWhhdDsKPiArCX0gd2hpbGUgKCsraiA8PSBtKTsJCS8qIEQ3OiBsb29wIG9u
IGouICovCj4gKwo+ICsJLyoKPiArCSAqIElmIGNhbGxlciB3YW50cyB0aGUgcmVtYWluZGVyLCB3
ZSBoYXZlIHRvIGNhbGN1bGF0ZSBpdCBhcwo+ICsJICogdVttLi5tK25dID4+IGQgKHRoaXMgaXMg
YXQgbW9zdCBuIGRpZ2l0cyBhbmQgdGh1cyBmaXRzIGluCj4gKwkgKiB1W20rMS4ubStuXSwgYnV0
IHdlIG1heSBuZWVkIG1vcmUgc291cmNlIGRpZ2l0cykuCj4gKwkgKi8KPiArCWlmIChhcnEpIHsK
PiArCQlpZiAoZCkgewo+ICsJCQlmb3IgKGkgPSBtICsgbjsgaSA+IG07IC0taSkKPiArCQkJCXVb
aV0gPSAodVtpXSA+PiBkKSB8Cj4gKwkJCQkgICAgTEhBTEYodVtpIC0gMV0gPDwgKEhBTEZfQklU
UyAtIGQpKTsKPiArCQkJdVtpXSA9IDA7Cj4gKwkJfQo+ICsJCXRtcC51bFtRVUFESF0gPSBDT01C
SU5FKHVzcGFjZVsxXSwgdXNwYWNlWzJdKTsKPiArCQl0bXAudWxbUVVBRExdID0gQ09NQklORSh1
c3BhY2VbM10sIHVzcGFjZVs0XSk7Cj4gKwkJKmFycSA9IHRtcC5xOwo+ICsJfQo+ICsKPiArCXRt
cC51bFtRVUFESF0gPSBDT01CSU5FKHFzcGFjZVsxXSwgcXNwYWNlWzJdKTsKPiArCXRtcC51bFtR
VUFETF0gPSBDT01CSU5FKHFzcGFjZVszXSwgcXNwYWNlWzRdKTsKPiArCXJldHVybiB0bXAucTsK
PiArfQo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9kaXZzaTMuUyBiL2FyY2gvYXJtL2RpdnNpMy5T
Cj4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggZmE5MjIzMy4uMDAwMDAwMAo+IC0t
LSBhL2FyY2gvYXJtL2RpdnNpMy5TCj4gKysrIC9kZXYvbnVsbAo+IEBAIC0xLDQwNCArMCwwIEBA
Cj4gLS8qCSROZXRCU0Q6IGRpdnNpMy5TLHYgMS40IDIwMDMvMDQvMDUgMjM6Mjc6MTUgYmpoMjEg
RXhwICQJKi8KPiAtCj4gLS8qLQo+IC0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECj4gLSAqIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQo+IC0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+IC0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQo+IC0gKiBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTAo+IC0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwo+IC0gKiBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiAt
ICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QKPiAtICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQo+IC0gKiBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GCj4gLSAqIFNVQ0ggREFNQUdFLgo+IC0gKi8KPiAtCj4gLSNkZWZpbmUgRU5UUllfTlAo
c3ltYm9sKSBcCj4gLQkuZ2xvYmwgc3ltYm9sOwlcCj4gLQlzeW1ib2w6Cj4gLQo+IC0jZGVmaW5l
IEVORChzeW1ib2wpCj4gLQo+IC0vKgo+IC0gKiBzdGFjayBpcyBhbGlnbmVkIGFzIHRoZXJlJ3Mg
YSBwb3NzaWJpbGl0eSBvZiBicmFuY2hpbmcgdG8gTF9vdmVyZmxvdwo+IC0gKiB3aGljaCBtYWtl
cyBhIEMgY2FsbAo+IC0gKi8KPiAtCj4gLUVOVFJZX05QKF9fdW1vZHNpMykKPiAtCXN0bWZkCXNw
ISwge2xyfQo+IC0Jc3ViCXNwLCBzcCwgIzQJLyogYWxpZ24gc3RhY2sgKi8KPiAtCWJsCS5MX3Vk
aXZpZGUKPiAtCWFkZAlzcCwgc3AsICM0CS8qIHVuYWxpZ24gc3RhY2sgKi8KPiAtCW1vdglyMCwg
cjEKPiAtCWxkbWZkCXNwISwge3BjfQo+IC1FTkQoX191bW9kc2kzKQo+IC0KPiAtRU5UUllfTlAo
X19tb2RzaTMpCj4gLQlzdG1mZAlzcCEsIHtscn0KPiAtCXN1YglzcCwgc3AsICM0CS8qIGFsaWdu
IHN0YWNrICovCj4gLQlibAkuTF9kaXZpZGUKPiAtCWFkZAlzcCwgc3AsICM0CS8qIHVuYWxpZ24g
c3RhY2sgKi8KPiAtCW1vdglyMCwgcjEKPiAtCWxkbWZkCXNwISwge3BjfQo+IC0KPiAtLkxfb3Zl
cmZsb3c6Cj4gLQkvKiBYWFggc2hvdWxkIGNhdXNlIGEgZmF0YWwgZXJyb3IgKi8KPiAtCW12bgly
MCwgIzAKPiAtCW1vdglwYywgbHIKPiAtCj4gLUVORChfX21vZHNpMykKPiAtCj4gLSNpZmRlZiBf
X0FSTV9FQUJJX18KPiAtRU5UUllfTlAoX19hZWFiaV91aWRpdikKPiAtRU5UUllfTlAoX19hZWFi
aV91aWRpdm1vZCkKPiAtI2VuZGlmCj4gLUVOVFJZX05QKF9fdWRpdnNpMykKPiAtLkxfdWRpdmlk
ZToJCQkJLyogcjAgPSByMCAvIHIxOyByMSA9IHIwICUgcjEgKi8KPiAtCWVvciAgICAgcjAsIHIx
LCByMAo+IC0JZW9yICAgICByMSwgcjAsIHIxCj4gLQllb3IgICAgIHIwLCByMSwgcjAKPiAtCQkJ
CQkvKiByMCA9IHIxIC8gcjA7IHIxID0gcjEgJSByMCAqLwo+IC0JY21wCXIwLCAjMQo+IC0JYmNj
CS5MX292ZXJmbG93Cj4gLQliZXEJLkxfZGl2aWRlX2wwCj4gLQltb3YJaXAsICMwCj4gLQltb3Zz
CXIxLCByMQo+IC0JYnBsCS5MX2RpdmlkZV9sMQo+IC0Jb3JyCWlwLCBpcCwgIzB4MjAwMDAwMDAJ
LyogaXAgYml0IDB4MjAwMDAwMDAgPSAtdmUgcjEgKi8KPiAtCW1vdnMJcjEsIHIxLCBsc3IgIzEK
PiAtCW9ycmNzCWlwLCBpcCwgIzB4MTAwMDAwMDAJLyogaXAgYml0IDB4MTAwMDAwMDAgPSBiaXQg
MCBvZiByMSAqLwo+IC0JYgkuTF9kaXZpZGVfbDEKPiAtCj4gLS5MX2RpdmlkZV9sMDoJCQkJLyog
cjAgPT0gMSAqLwo+IC0JbW92CXIwLCByMQo+IC0JbW92CXIxLCAjMAo+IC0JbW92CXBjLCBscgo+
IC0jaWZkZWYgX19BUk1fRUFCSV9fCj4gLUVORChfX2FlYWJpX3VpZGl2KQo+IC1FTkQoX19hZWFi
aV91aWRpdm1vZCkKPiAtI2VuZGlmCj4gLUVORChfX3VkaXZzaTMpCj4gLQo+IC0jaWZkZWYgX19B
Uk1fRUFCSV9fCj4gLUVOVFJZX05QKF9fYWVhYmlfaWRpdikKPiAtRU5UUllfTlAoX19hZWFiaV9p
ZGl2bW9kKQo+IC0jZW5kaWYKPiAtRU5UUllfTlAoX19kaXZzaTMpCj4gLS5MX2RpdmlkZToJCQkJ
LyogcjAgPSByMCAvIHIxOyByMSA9IHIwICUgcjEgKi8KPiAtCWVvciAgICAgcjAsIHIxLCByMAo+
IC0JZW9yICAgICByMSwgcjAsIHIxCj4gLQllb3IgICAgIHIwLCByMSwgcjAKPiAtCQkJCQkvKiBy
MCA9IHIxIC8gcjA7IHIxID0gcjEgJSByMCAqLwo+IC0JY21wCXIwLCAjMQo+IC0JYmNjCS5MX292
ZXJmbG93Cj4gLQliZXEJLkxfZGl2aWRlX2wwCj4gLQlhbmRzCWlwLCByMCwgIzB4ODAwMDAwMDAK
PiAtCXJzYm1pCXIwLCByMCwgIzAKPiAtCWFuZHMJcjIsIHIxLCAjMHg4MDAwMDAwMAo+IC0JZW9y
CWlwLCBpcCwgcjIKPiAtCXJzYm1pCXIxLCByMSwgIzAKPiAtCW9ycglpcCwgcjIsIGlwLCBsc3Ig
IzEJLyogaXAgYml0IDB4NDAwMDAwMDAgPSAtdmUgZGl2aXNpb24gKi8KPiAtCQkJCQkvKiBpcCBi
aXQgMHg4MDAwMDAwMCA9IC12ZSByZW1haW5kZXIgKi8KPiAtCj4gLS5MX2RpdmlkZV9sMToKPiAt
CW1vdglyMiwgIzEKPiAtCW1vdglyMywgIzAKPiAtCj4gLQkvKgo+IC0JICogSWYgdGhlIGhpZ2hl
c3QgYml0IG9mIHRoZSBkaXZpZGVuZCBpcyBzZXQsIHdlIGhhdmUgdG8gYmUKPiAtCSAqIGNhcmVm
dWwgd2hlbiBzaGlmdGluZyB0aGUgZGl2aXNvci4gVGVzdCB0aGlzLgo+IC0JICovCj4gLQltb3Zz
CXIxLHIxCj4gLQlicGwJLkxfb2xkX2NvZGUKPiAtCj4gLQkvKgo+IC0JICogQXQgdGhpcyBwb2lu
dCwgdGhlIGhpZ2hlc3QgYml0IG9mIHIxIGlzIGtub3duIHRvIGJlIHNldC4KPiAtCSAqIFdlIGFi
dXNlIHRoaXMgYmVsb3cgaW4gdGhlIHRzdCBpbnN0cnVjdGlvbnMuCj4gLQkgKi8KPiAtCXRzdAly
MSwgcjAgLyosIGxzbCAjMCAqLwo+IC0JYm1pCS5MX2RpdmlkZV9iMQo+IC0JdHN0CXIxLCByMCwg
bHNsICMxCj4gLQlibWkJLkxfZGl2aWRlX2IyCj4gLQl0c3QJcjEsIHIwLCBsc2wgIzIKPiAtCWJt
aQkuTF9kaXZpZGVfYjMKPiAtCXRzdAlyMSwgcjAsIGxzbCAjMwo+IC0JYm1pCS5MX2RpdmlkZV9i
NAo+IC0JdHN0CXIxLCByMCwgbHNsICM0Cj4gLQlibWkJLkxfZGl2aWRlX2I1Cj4gLQl0c3QJcjEs
IHIwLCBsc2wgIzUKPiAtCWJtaQkuTF9kaXZpZGVfYjYKPiAtCXRzdAlyMSwgcjAsIGxzbCAjNgo+
IC0JYm1pCS5MX2RpdmlkZV9iNwo+IC0JdHN0CXIxLCByMCwgbHNsICM3Cj4gLQlibWkJLkxfZGl2
aWRlX2I4Cj4gLQl0c3QJcjEsIHIwLCBsc2wgIzgKPiAtCWJtaQkuTF9kaXZpZGVfYjkKPiAtCXRz
dAlyMSwgcjAsIGxzbCAjOQo+IC0JYm1pCS5MX2RpdmlkZV9iMTAKPiAtCXRzdAlyMSwgcjAsIGxz
bCAjMTAKPiAtCWJtaQkuTF9kaXZpZGVfYjExCj4gLQl0c3QJcjEsIHIwLCBsc2wgIzExCj4gLQli
bWkJLkxfZGl2aWRlX2IxMgo+IC0JdHN0CXIxLCByMCwgbHNsICMxMgo+IC0JYm1pCS5MX2Rpdmlk
ZV9iMTMKPiAtCXRzdAlyMSwgcjAsIGxzbCAjMTMKPiAtCWJtaQkuTF9kaXZpZGVfYjE0Cj4gLQl0
c3QJcjEsIHIwLCBsc2wgIzE0Cj4gLQlibWkJLkxfZGl2aWRlX2IxNQo+IC0JdHN0CXIxLCByMCwg
bHNsICMxNQo+IC0JYm1pCS5MX2RpdmlkZV9iMTYKPiAtCXRzdAlyMSwgcjAsIGxzbCAjMTYKPiAt
CWJtaQkuTF9kaXZpZGVfYjE3Cj4gLQl0c3QJcjEsIHIwLCBsc2wgIzE3Cj4gLQlibWkJLkxfZGl2
aWRlX2IxOAo+IC0JdHN0CXIxLCByMCwgbHNsICMxOAo+IC0JYm1pCS5MX2RpdmlkZV9iMTkKPiAt
CXRzdAlyMSwgcjAsIGxzbCAjMTkKPiAtCWJtaQkuTF9kaXZpZGVfYjIwCj4gLQl0c3QJcjEsIHIw
LCBsc2wgIzIwCj4gLQlibWkJLkxfZGl2aWRlX2IyMQo+IC0JdHN0CXIxLCByMCwgbHNsICMyMQo+
IC0JYm1pCS5MX2RpdmlkZV9iMjIKPiAtCXRzdAlyMSwgcjAsIGxzbCAjMjIKPiAtCWJtaQkuTF9k
aXZpZGVfYjIzCj4gLQl0c3QJcjEsIHIwLCBsc2wgIzIzCj4gLQlibWkJLkxfZGl2aWRlX2IyNAo+
IC0JdHN0CXIxLCByMCwgbHNsICMyNAo+IC0JYm1pCS5MX2RpdmlkZV9iMjUKPiAtCXRzdAlyMSwg
cjAsIGxzbCAjMjUKPiAtCWJtaQkuTF9kaXZpZGVfYjI2Cj4gLQl0c3QJcjEsIHIwLCBsc2wgIzI2
Cj4gLQlibWkJLkxfZGl2aWRlX2IyNwo+IC0JdHN0CXIxLCByMCwgbHNsICMyNwo+IC0JYm1pCS5M
X2RpdmlkZV9iMjgKPiAtCXRzdAlyMSwgcjAsIGxzbCAjMjgKPiAtCWJtaQkuTF9kaXZpZGVfYjI5
Cj4gLQl0c3QJcjEsIHIwLCBsc2wgIzI5Cj4gLQlibWkJLkxfZGl2aWRlX2IzMAo+IC0JdHN0CXIx
LCByMCwgbHNsICMzMAo+IC0JYm1pCS5MX2RpdmlkZV9iMzEKPiAtLyoKPiAtICogaW5zdGVhZCBv
ZjoKPiAtICoJdHN0CXIxLCByMCwgbHNsICMzMQo+IC0gKglibWkJLkxfZGl2aWRlX2IzMgo+IC0g
Ki8KPiAtCWIJLkxfZGl2aWRlX2IzMgo+IC0KPiAtLkxfb2xkX2NvZGU6Cj4gLQljbXAJcjEsIHIw
Cj4gLQliY2MJLkxfZGl2aWRlX2IwCj4gLQljbXAJcjEsIHIwLCBsc2wgIzEKPiAtCWJjYwkuTF9k
aXZpZGVfYjEKPiAtCWNtcAlyMSwgcjAsIGxzbCAjMgo+IC0JYmNjCS5MX2RpdmlkZV9iMgo+IC0J
Y21wCXIxLCByMCwgbHNsICMzCj4gLQliY2MJLkxfZGl2aWRlX2IzCj4gLQljbXAJcjEsIHIwLCBs
c2wgIzQKPiAtCWJjYwkuTF9kaXZpZGVfYjQKPiAtCWNtcAlyMSwgcjAsIGxzbCAjNQo+IC0JYmNj
CS5MX2RpdmlkZV9iNQo+IC0JY21wCXIxLCByMCwgbHNsICM2Cj4gLQliY2MJLkxfZGl2aWRlX2I2
Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzcKPiAtCWJjYwkuTF9kaXZpZGVfYjcKPiAtCWNtcAlyMSwg
cjAsIGxzbCAjOAo+IC0JYmNjCS5MX2RpdmlkZV9iOAo+IC0JY21wCXIxLCByMCwgbHNsICM5Cj4g
LQliY2MJLkxfZGl2aWRlX2I5Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzEwCj4gLQliY2MJLkxfZGl2
aWRlX2IxMAo+IC0JY21wCXIxLCByMCwgbHNsICMxMQo+IC0JYmNjCS5MX2RpdmlkZV9iMTEKPiAt
CWNtcAlyMSwgcjAsIGxzbCAjMTIKPiAtCWJjYwkuTF9kaXZpZGVfYjEyCj4gLQljbXAJcjEsIHIw
LCBsc2wgIzEzCj4gLQliY2MJLkxfZGl2aWRlX2IxMwo+IC0JY21wCXIxLCByMCwgbHNsICMxNAo+
IC0JYmNjCS5MX2RpdmlkZV9iMTQKPiAtCWNtcAlyMSwgcjAsIGxzbCAjMTUKPiAtCWJjYwkuTF9k
aXZpZGVfYjE1Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzE2Cj4gLQliY2MJLkxfZGl2aWRlX2IxNgo+
IC0JY21wCXIxLCByMCwgbHNsICMxNwo+IC0JYmNjCS5MX2RpdmlkZV9iMTcKPiAtCWNtcAlyMSwg
cjAsIGxzbCAjMTgKPiAtCWJjYwkuTF9kaXZpZGVfYjE4Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzE5
Cj4gLQliY2MJLkxfZGl2aWRlX2IxOQo+IC0JY21wCXIxLCByMCwgbHNsICMyMAo+IC0JYmNjCS5M
X2RpdmlkZV9iMjAKPiAtCWNtcAlyMSwgcjAsIGxzbCAjMjEKPiAtCWJjYwkuTF9kaXZpZGVfYjIx
Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzIyCj4gLQliY2MJLkxfZGl2aWRlX2IyMgo+IC0JY21wCXIx
LCByMCwgbHNsICMyMwo+IC0JYmNjCS5MX2RpdmlkZV9iMjMKPiAtCWNtcAlyMSwgcjAsIGxzbCAj
MjQKPiAtCWJjYwkuTF9kaXZpZGVfYjI0Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzI1Cj4gLQliY2MJ
LkxfZGl2aWRlX2IyNQo+IC0JY21wCXIxLCByMCwgbHNsICMyNgo+IC0JYmNjCS5MX2RpdmlkZV9i
MjYKPiAtCWNtcAlyMSwgcjAsIGxzbCAjMjcKPiAtCWJjYwkuTF9kaXZpZGVfYjI3Cj4gLQljbXAJ
cjEsIHIwLCBsc2wgIzI4Cj4gLQliY2MJLkxfZGl2aWRlX2IyOAo+IC0JY21wCXIxLCByMCwgbHNs
ICMyOQo+IC0JYmNjCS5MX2RpdmlkZV9iMjkKPiAtCWNtcAlyMSwgcjAsIGxzbCAjMzAKPiAtCWJj
YwkuTF9kaXZpZGVfYjMwCj4gLS5MX2RpdmlkZV9iMzI6Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzMx
Cj4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMzEKPiAtCWFkZGhzCXIzLCByMyxyMiwgbHNsICMz
MQo+IC0uTF9kaXZpZGVfYjMxOgo+IC0JY21wCXIxLCByMCwgbHNsICMzMAo+IC0Jc3ViaHMJcjEs
IHIxLHIwLCBsc2wgIzMwCj4gLQlhZGRocwlyMywgcjMscjIsIGxzbCAjMzAKPiAtLkxfZGl2aWRl
X2IzMDoKPiAtCWNtcAlyMSwgcjAsIGxzbCAjMjkKPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNsICMy
OQo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzI5Cj4gLS5MX2RpdmlkZV9iMjk6Cj4gLQljbXAJ
cjEsIHIwLCBsc2wgIzI4Cj4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMjgKPiAtCWFkZGhzCXIz
LCByMyxyMiwgbHNsICMyOAo+IC0uTF9kaXZpZGVfYjI4Ogo+IC0JY21wCXIxLCByMCwgbHNsICMy
Nwo+IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzI3Cj4gLQlhZGRocwlyMywgcjMscjIsIGxzbCAj
MjcKPiAtLkxfZGl2aWRlX2IyNzoKPiAtCWNtcAlyMSwgcjAsIGxzbCAjMjYKPiAtCXN1YmhzCXIx
LCByMSxyMCwgbHNsICMyNgo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzI2Cj4gLS5MX2Rpdmlk
ZV9iMjY6Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzI1Cj4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAj
MjUKPiAtCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyNQo+IC0uTF9kaXZpZGVfYjI1Ogo+IC0JY21w
CXIxLCByMCwgbHNsICMyNAo+IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzI0Cj4gLQlhZGRocwly
MywgcjMscjIsIGxzbCAjMjQKPiAtLkxfZGl2aWRlX2IyNDoKPiAtCWNtcAlyMSwgcjAsIGxzbCAj
MjMKPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyMwo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wg
IzIzCj4gLS5MX2RpdmlkZV9iMjM6Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzIyCj4gLQlzdWJocwly
MSwgcjEscjAsIGxzbCAjMjIKPiAtCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyMgo+IC0uTF9kaXZp
ZGVfYjIyOgo+IC0JY21wCXIxLCByMCwgbHNsICMyMQo+IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wg
IzIxCj4gLQlhZGRocwlyMywgcjMscjIsIGxzbCAjMjEKPiAtLkxfZGl2aWRlX2IyMToKPiAtCWNt
cAlyMSwgcjAsIGxzbCAjMjAKPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyMAo+IC0JYWRkaHMJ
cjMsIHIzLHIyLCBsc2wgIzIwCj4gLS5MX2RpdmlkZV9iMjA6Cj4gLQljbXAJcjEsIHIwLCBsc2wg
IzE5Cj4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTkKPiAtCWFkZGhzCXIzLCByMyxyMiwgbHNs
ICMxOQo+IC0uTF9kaXZpZGVfYjE5Ogo+IC0JY21wCXIxLCByMCwgbHNsICMxOAo+IC0Jc3ViaHMJ
cjEsIHIxLHIwLCBsc2wgIzE4Cj4gLQlhZGRocwlyMywgcjMscjIsIGxzbCAjMTgKPiAtLkxfZGl2
aWRlX2IxODoKPiAtCWNtcAlyMSwgcjAsIGxzbCAjMTcKPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNs
ICMxNwo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzE3Cj4gLS5MX2RpdmlkZV9iMTc6Cj4gLQlj
bXAJcjEsIHIwLCBsc2wgIzE2Cj4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTYKPiAtCWFkZGhz
CXIzLCByMyxyMiwgbHNsICMxNgo+IC0uTF9kaXZpZGVfYjE2Ogo+IC0JY21wCXIxLCByMCwgbHNs
ICMxNQo+IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzE1Cj4gLQlhZGRocwlyMywgcjMscjIsIGxz
bCAjMTUKPiAtLkxfZGl2aWRlX2IxNToKPiAtCWNtcAlyMSwgcjAsIGxzbCAjMTQKPiAtCXN1Ymhz
CXIxLCByMSxyMCwgbHNsICMxNAo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzE0Cj4gLS5MX2Rp
dmlkZV9iMTQ6Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzEzCj4gLQlzdWJocwlyMSwgcjEscjAsIGxz
bCAjMTMKPiAtCWFkZGhzCXIzLCByMyxyMiwgbHNsICMxMwo+IC0uTF9kaXZpZGVfYjEzOgo+IC0J
Y21wCXIxLCByMCwgbHNsICMxMgo+IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzEyCj4gLQlhZGRo
cwlyMywgcjMscjIsIGxzbCAjMTIKPiAtLkxfZGl2aWRlX2IxMjoKPiAtCWNtcAlyMSwgcjAsIGxz
bCAjMTEKPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxMQo+IC0JYWRkaHMJcjMsIHIzLHIyLCBs
c2wgIzExCj4gLS5MX2RpdmlkZV9iMTE6Cj4gLQljbXAJcjEsIHIwLCBsc2wgIzEwCj4gLQlzdWJo
cwlyMSwgcjEscjAsIGxzbCAjMTAKPiAtCWFkZGhzCXIzLCByMyxyMiwgbHNsICMxMAo+IC0uTF9k
aXZpZGVfYjEwOgo+IC0JY21wCXIxLCByMCwgbHNsICM5Cj4gLQlzdWJocwlyMSwgcjEscjAsIGxz
bCAjOQo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzkKPiAtLkxfZGl2aWRlX2I5Ogo+IC0JY21w
CXIxLCByMCwgbHNsICM4Cj4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjOAo+IC0JYWRkaHMJcjMs
IHIzLHIyLCBsc2wgIzgKPiAtLkxfZGl2aWRlX2I4Ogo+IC0JY21wCXIxLCByMCwgbHNsICM3Cj4g
LQlzdWJocwlyMSwgcjEscjAsIGxzbCAjNwo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzcKPiAt
LkxfZGl2aWRlX2I3Ogo+IC0JY21wCXIxLCByMCwgbHNsICM2Cj4gLQlzdWJocwlyMSwgcjEscjAs
IGxzbCAjNgo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzYKPiAtLkxfZGl2aWRlX2I2Ogo+IC0J
Y21wCXIxLCByMCwgbHNsICM1Cj4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjNQo+IC0JYWRkaHMJ
cjMsIHIzLHIyLCBsc2wgIzUKPiAtLkxfZGl2aWRlX2I1Ogo+IC0JY21wCXIxLCByMCwgbHNsICM0
Cj4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjNAo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzQK
PiAtLkxfZGl2aWRlX2I0Ogo+IC0JY21wCXIxLCByMCwgbHNsICMzCj4gLQlzdWJocwlyMSwgcjEs
cjAsIGxzbCAjMwo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzMKPiAtLkxfZGl2aWRlX2IzOgo+
IC0JY21wCXIxLCByMCwgbHNsICMyCj4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMgo+IC0JYWRk
aHMJcjMsIHIzLHIyLCBsc2wgIzIKPiAtLkxfZGl2aWRlX2IyOgo+IC0JY21wCXIxLCByMCwgbHNs
ICMxCj4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMQo+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wg
IzEKPiAtLkxfZGl2aWRlX2IxOgo+IC0JY21wCXIxLCByMAo+IC0Jc3ViaHMJcjEsIHIxLCByMAo+
IC0JYWRkaHMJcjMsIHIzLCByMgo+IC0uTF9kaXZpZGVfYjA6Cj4gLQo+IC0JdHN0CWlwLCAjMHgy
MDAwMDAwMAo+IC0JYm5lCS5MX3VkaXZpZGVfbDEKPiAtCW1vdglyMCwgcjMKPiAtCWNtcAlpcCwg
IzAKPiAtCXJzYm1pCXIxLCByMSwgIzAKPiAtCW1vdnMJaXAsIGlwLCBsc2wgIzEKPiAtCWJpY21p
CXIwLCByMCwgIzB4ODAwMDAwMDAJLyogRml4IGluY2FzZSB3ZSBkaXZpZGVkIDB4ODAwMDAwMDAg
Ki8KPiAtCXJzYm1pCXIwLCByMCwgIzAKPiAtCW1vdglwYywgbHIKPiAtCj4gLS5MX3VkaXZpZGVf
bDE6Cj4gLQl0c3QJaXAsICMweDEwMDAwMDAwCj4gLQltb3YJcjEsIHIxLCBsc2wgIzEKPiAtCW9y
cm5lCXIxLCByMSwgIzEKPiAtCW1vdglyMywgcjMsIGxzbCAjMQo+IC0JY21wCXIxLCByMAo+IC0J
c3ViaHMJcjEsIHIxLCByMAo+IC0JYWRkaHMJcjMsIHIzLCByMgo+IC0JbW92CXIwLCByMwo+IC0J
bW92CXBjLCBscgo+IC1FTkQoX19hZWFiaV9pZGl2KQo+IC1FTkQoX19hZWFiaV9pZGl2bW9kKQo+
IC1FTkQoX19kaXZzaTMpCj4gLQo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9sZGl2bW9kLlMgYi9h
cmNoL2FybS9sZGl2bW9kLlMKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAzYzMw
ODNiLi4wMDAwMDAwCj4gLS0tIGEvYXJjaC9hcm0vbGRpdm1vZC5TCj4gKysrIC9kZXYvbnVsbAo+
IEBAIC0xLDY4ICswLDAgQEAKPiAtLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNs
YXVzZSAqLwo+IC0vKgo+IC0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQW5kcmV3IFR1cm5lcgo+IC0g
KiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+IC0gKgo+IC0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKPiAtICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCj4gLSAqIGFyZSBtZXQ6Cj4gLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KPiAtICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKPiAtICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+IC0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgo+IC0gKgo+
IC0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJV
VE9SUyBgYEFTIElTJycgQU5ECj4gLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+IC0gKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRQo+IC0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1Ig
T1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQo+IC0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAo+IC0gKiBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUwo+IC0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiAtICogSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QK
PiAtICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQo+IC0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCj4gLSAqIFNVQ0ggREFN
QUdFLgo+IC0gKgo+IC0gKi8KPiAtCj4gLSNkZWZpbmUgRU5UUllfTlAoc3ltYm9sKSBcCj4gLQku
Z2xvYmwgc3ltYm9sOwlcCj4gLQlzeW1ib2w6Cj4gLQo+IC0jZGVmaW5lIEVORChzeW1ib2wpCj4g
LQo+IC0vKgo+IC0gKiBUaGVzZSBjYWxjdWxhdGU6Cj4gLSAqIHEgPSBuIC8gbQo+IC0gKiBXaXRo
IGEgcmVtYWluZXIgci4KPiAtICoKPiAtICogVGhleSB0YWtlIG4gaW4ge3IwLCByMX0gYW5kIG0g
aW4ge3IyLCByM30gdGhlbiBwYXNzIHRoZW0gaW50byB0aGUKPiAtICogaGVscGVyIGZ1bmN0aW9u
LiBUaGUgaGVwbGVyIGZ1bmN0aW9ucyByZXR1cm4gcSBpbiB7cjAsIHIxfSBhcwo+IC0gKiByZXF1
aXJlZCBieSB0aGUgQVBJIHNwZWMgaG93ZXZlciByIGlzIHJldHVybmVkIG9uIHRoZSBzdGFjay4g
VGhlCj4gLSAqIEFCSSByZXF1aXJlZCB1cyB0byByZXR1cm4gciBpbiB7cjIsIHIzfS4KPiAtICoK
PiAtICogV2UgbmVlZCB0byBhbGxvY2F0ZSA4IGJ5dGVzIG9uIHRoZSBzdGFjayB0byBzdG9yZSBy
LCB0aGUgbGluawo+IC0gKiByZWdpc3RlciwgYW5kIGEgcG9pbnRlciB0byB0aGUgc3BhY2Ugd2hl
cmUgdGhlIGhlbHBlciBmdW5jdGlvbgo+IC0gKiB3aWxsIHdyaXRlIHIgdG8uIEFmdGVyIHJldHVy
bmluZyBmcm9tIHRoZSBoZWxwZXIgZnVpbmN0aW9uIHdlIGxvYWQKPiAtICogdGhlIG9sZCBsaW5r
IHJlZ2lzdGVyIGFuZCByIGZyb20gdGhlIHN0YWNrIGFuZCByZXR1cm4uCj4gLSAqLwo+IC1FTlRS
WV9OUChfX2FlYWJpX2xkaXZtb2QpCj4gLQlzdWIJc3AsIHNwLCAjOAkvKiBTcGFjZSBmb3IgdGhl
IHJlbWFpbmRlciAqLwo+IC0Jc3RtZmQJc3AhLCB7c3AsIGxyfQkvKiBTYXZlIGEgcG9pbnRlciB0
byB0aGUgYWJvdmUgc3BhY2UgYW5kIGxyICovCj4gLQlibAlfX2tlcm5fbGRpdm1vZAo+IC0JbGRy
CWxyLCBbc3AsICM0XQkvKiBSZXN0b3JlIGxyICovCj4gLQlhZGQJc3AsIHNwLCAjOAkvKiBNb3Zl
IHNwIHRvIHRoZSByZW1haW5kZXIgdmFsdWUgKi8KPiAtCWxkbWZkCXNwISwge3IyLCByM30JLyog
TG9hZCB0aGUgcmVtYWluZGVyICovCj4gLQltb3YJcGMsIGxyCj4gLUVORChfX2FlYWJpX2xkaXZt
b2QpCj4gLQo+IC1FTlRSWV9OUChfX2FlYWJpX3VsZGl2bW9kKQo+IC0Jc3ViCXNwLCBzcCwgIzgJ
LyogU3BhY2UgZm9yIHRoZSByZW1haW5kZXIgKi8KPiAtCXN0bWZkCXNwISwge3NwLCBscn0JLyog
U2F2ZSBhIHBvaW50ZXIgdG8gdGhlIGFib3ZlIHNwYWNlIGFuZCBsciAqLwo+IC0JYmwJX19xZGl2
cmVtCj4gLQlsZHIJbHIsIFtzcCwgIzRdCS8qIFJlc3RvcmUgbHIgKi8KPiAtCWFkZAlzcCwgc3As
ICM4CS8qIE1vdmUgc3AgdG8gdGhlIHJlbWFpbmRlciB2YWx1ZSAqLwo+IC0JbGRtZmQJc3AhLCB7
cjIsIHIzfQkvKiBMb2FkIHRoZSByZW1haW5kZXIgKi8KPiAtCW1vdglwYywgbHIKPiAtRU5EKF9f
YWVhYmlfdWxkaXZtb2QpCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2xkaXZtb2RfaGVscGVyLmMg
Yi9hcmNoL2FybS9sZGl2bW9kX2hlbHBlci5jCj4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cj4g
aW5kZXggMDk4NTIzZS4uMDAwMDAwMAo+IC0tLSBhL2FyY2gvYXJtL2xkaXZtb2RfaGVscGVyLmMK
PiArKysgL2Rldi9udWxsCj4gQEAgLTEsNjcgKzAsMCBAQAo+IC0vKiBTUERYLUxpY2Vuc2UtSWRl
bnRpZmllcjogQlNELTItQ2xhdXNlICovCj4gLS8qCj4gLSAqIENvcHlyaWdodCAoQykgMjAxMiBB
bmRyZXcgVHVybmVyCj4gLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gLSAqCj4gLSAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAo+IC0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKPiAtICogYXJlIG1ldDoKPiAtICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiAtICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgo+IC0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gLSAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCj4gLSAqCj4gLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFV
VEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKPiAtICogQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4g
LSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFCj4gLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCj4gLSAqIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMCj4gLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCj4gLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQo+IC0gKiBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVAo+IC0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCj4gLSAqIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YKPiAtICogU1VDSCBEQU1BR0UuCj4gLSAqCj4gLSAqLwo+IC0KPiAtI2luY2x1ZGUgPHVrL2Fy
Y2gvdHlwZXMuaD4KPiAtCj4gLV9fdTY0IF9fcWRpdnJlbShfX3U2NCB1LCBfX3U2NCB2LCBfX3U2
NCAqcmVtKTsKPiAtCj4gLSNpZm5kZWYgSEFWRV9MSUJDCj4gLV9fczY0IF9fZGl2ZGkzKF9fczY0
IGEsIF9fczY0IGIpCj4gLXsKPiAtCV9fdTY0IHVhLCB1YiwgdXE7Cj4gLQlpbnQgbmVnOwo+IC0K
PiAtCWlmIChhIDwgMCkKPiAtCQl1YSA9IC0oX191NjQpYSwgbmVnID0gMTsKPiAtCWVsc2UKPiAt
CQl1YSA9IGEsIG5lZyA9IDA7Cj4gLQlpZiAoYiA8IDApCj4gLQkJdWIgPSAtKF9fdTY0KWIsIG5l
ZyBePSAxOwo+IC0JZWxzZQo+IC0JCXViID0gYjsKPiAtCXVxID0gX19xZGl2cmVtKHVhLCB1Yiwg
KF9fdTY0ICopMCk7Cj4gLQlyZXR1cm4gbmVnID8gLXVxIDogdXE7Cj4gLX0KPiAtI2VuZGlmCj4g
LQo+IC0vKgo+IC0gKiBIZWxwZXIgZm9yIF9fYWVhYmlfbGRpdm1vZC4KPiAtICogVE9ETzogX19k
aXZkaTMgY2FsbHMgX19xZGl2cmVtLiBXZSBzaG91bGQgZG8gdGhlIHNhbWUgYW5kIHVzZSB0aGUK
PiAtICogcmVtYWluZGVyIHZhbHVlIHJhdGhlciB0aGFuIHJlLWNhbGN1bGF0aW5nIGl0Lgo+IC0g
Ki8KPiAtbG9uZyBsb25nIF9fa2Vybl9sZGl2bW9kKGxvbmcgbG9uZywgbG9uZyBsb25nLCBsb25n
IGxvbmcgKik7Cj4gLQo+IC1sb25nIGxvbmcgX19rZXJuX2xkaXZtb2QobG9uZyBsb25nIG4sIGxv
bmcgbG9uZyBtLCBsb25nIGxvbmcgKnJlbSkKPiAtewo+IC0JbG9uZyBsb25nIHE7Cj4gLQo+IC0J
cSA9IF9fZGl2ZGkzKG4sIG0pOyAvKiBxID0gbiAvIG0gKi8KPiAtCSpyZW0gPSBuIC0gbSAqIHE7
Cj4gLQo+IC0JcmV0dXJuIHE7Cj4gLX0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vcWRpdnJlbS5j
IGIvYXJjaC9hcm0vcWRpdnJlbS5jCj4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXgg
ZTdkMTQ3MS4uMDAwMDAwMAo+IC0tLSBhL2FyY2gvYXJtL3FkaXZyZW0uYwo+ICsrKyAvZGV2L251
bGwKPiBAQCAtMSwzMjQgKzAsMCBAQAo+IC0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNE
LTMtQ2xhdXNlICovCj4gLS8qLQo+IC0gKiBDb3B5cmlnaHQgKGMpIDE5OTIsIDE5OTMKPiAtICoJ
VGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCj4gLSAqCj4gLSAqIFRoaXMgc29mdHdhcmUgd2FzIGRldmVsb3BlZCBieSB0aGUg
Q29tcHV0ZXIgU3lzdGVtcyBFbmdpbmVlcmluZyBncm91cAo+IC0gKiBhdCBMYXdyZW5jZSBCZXJr
ZWxleSBMYWJvcmF0b3J5IHVuZGVyIERBUlBBIGNvbnRyYWN0IEJHIDkxLTY2IGFuZAo+IC0gKiBj
b250cmlidXRlZCB0byBCZXJrZWxleS4KPiAtICoKPiAtICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cj4gLSAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwo+IC0gKiBhcmUgbWV0Ogo+IC0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+IC0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCj4gLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0Cj4gLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKPiAtICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KPiAtICog
NC4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0
cyBjb250cmlidXRvcnMKPiAtICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCj4gLSAqICAgIHdpdGhvdXQgc3Bl
Y2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgo+IC0gKgo+IC0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFO
RAo+IC0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKPiAtICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKPiAtICogQVJFIERJ
U0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFCj4gLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCj4gLSAqIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCj4g
LSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKQo+IC0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAo+IC0gKiBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZCj4gLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKPiAtICogU1VDSCBEQU1BR0UuCj4gLSAqLwo+IC0K
PiAtI2luY2x1ZGUgPHVrL2FyY2gvdHlwZXMuaD4KPiAtI2luY2x1ZGUgPHVrL2FyY2gvbGltaXRz
Lmg+Cj4gLQo+IC0vKgo+IC0gKiBNdWx0aXByZWNpc2lvbiBkaXZpZGUuICBUaGlzIGFsZ29yaXRo
bSBpcyBmcm9tIEtudXRoIHZvbC4gMiAoMm5kIGVkKSwKPiAtICogc2VjdGlvbiA0LjMuMSwgcHAu
IDI1Ny0tMjU5Lgo+IC0gKi8KPiAtCj4gLS8qCj4gLSAqIEZyb20KPiAtICoJQCgjKXF1YWQuaAk4
LjEgKEJlcmtlbGV5KSA2LzQvOTMKPiAtICovCj4gLQo+IC0jaWZkZWYgX19CSUdfRU5ESUFOCj4g
LSNkZWZpbmUgX1FVQURfSElHSFdPUkQgMAo+IC0jZGVmaW5lIF9RVUFEX0xPV1dPUkQgMQo+IC0j
ZWxzZSAvKiBfX0xJVFRMRV9FTkRJQU4gKi8KPiAtI2RlZmluZSBfUVVBRF9ISUdIV09SRCAxCj4g
LSNkZWZpbmUgX1FVQURfTE9XV09SRCAwCj4gLSNlbmRpZgo+IC0KPiAtLyoKPiAtICogRGVmaW5l
IGhpZ2ggYW5kIGxvdyBsb25nd29yZHMuCj4gLSAqLwo+IC0jZGVmaW5lIFFVQURIICAgICAgICAg
ICAgICAgX1FVQURfSElHSFdPUkQKPiAtI2RlZmluZSBRVUFETCAgICAgICAgICAgICAgIF9RVUFE
X0xPV1dPUkQKPiAtCj4gLS8qCj4gLSAqIFRvdGFsIG51bWJlciBvZiBiaXRzIGluIGEgcXVhZF90
IGFuZCBpbiB0aGUgcGllY2VzIHRoYXQgbWFrZSBpdCB1cC4KPiAtICogVGhlc2UgYXJlIHVzZWQg
Zm9yIHNoaWZ0aW5nLCBhbmQgYWxzbyBiZWxvdyBmb3IgaGFsZndvcmQgZXh0cmFjdGlvbgo+IC0g
KiBhbmQgYXNzZW1ibHkuCj4gLSAqLwo+IC0jZGVmaW5lIENIQVJfQklUICAgICAgICA4ICAgICAg
ICAgICAgICAgLyogbnVtYmVyIG9mIGJpdHMgaW4gYSBjaGFyICovCj4gLSNkZWZpbmUgUVVBRF9C
SVRTICAgICAgIChzaXplb2YoX19zNjQpICogQ0hBUl9CSVQpCj4gLSNkZWZpbmUgTE9OR19CSVRT
ICAgICAgIChzaXplb2YobG9uZykgKiBDSEFSX0JJVCkKPiAtI2RlZmluZSBIQUxGX0JJVFMgICAg
ICAgKHNpemVvZihsb25nKSAqIENIQVJfQklUIC8gMikKPiAtCj4gLSNkZWZpbmUgRElHSVRfQkFT
RSAoMSA8PCBIQUxGX0JJVFMpIC8qIGRpZ2l0IGJhc2UgKi8KPiAtLyoKPiAtICogRXh0cmFjdCBo
aWdoIGFuZCBsb3cgc2hvcnR3b3JkcyBmcm9tIGxvbmd3b3JkLCBhbmQgbW92ZSBsb3cgc2hvcnR3
b3JkIG9mCj4gLSAqIGxvbmd3b3JkIHRvIHVwcGVyIGhhbGYgb2YgbG9uZywgaS5lLiwgcHJvZHVj
ZSB0aGUgdXBwZXIgbG9uZ3dvcmQgb2YKPiAtICogKChxdWFkX3QpKHgpIDw8IChudW1iZXJfb2Zf
Yml0c19pbl9sb25nLzIpKS4gIChgeCcgbXVzdCBhY3R1YWxseSBiZSB1X2xvbmcuKQo+IC0gKgo+
IC0gKiBUaGVzZSBhcmUgdXNlZCBpbiB0aGUgbXVsdGlwbHkgY29kZSwgdG8gc3BsaXQgYSBsb25n
d29yZCBpbnRvIHVwcGVyCj4gLSAqIGFuZCBsb3dlciBoYWx2ZXMsIGFuZCB0byByZWFzc2VtYmxl
IGEgcHJvZHVjdCBhcyBhIHF1YWRfdCwgc2hpZnRlZCBsZWZ0Cj4gLSAqIChzaXplb2YobG9uZykq
Q0hBUl9CSVQvMikuCj4gLSAqLwo+IC0jZGVmaW5lIEhIQUxGKHgpICAgICAgICAoKHgpID4+IEhB
TEZfQklUUykKPiAtI2RlZmluZSBMSEFMRih4KSAgICAgICAgKCh4KSAmICgoMSA8PCBIQUxGX0JJ
VFMpIC0gMSkpCj4gLSNkZWZpbmUgTEhVUCh4KSAgICAgICAgICgoeCkgPDwgSEFMRl9CSVRTKQo+
IC0KPiAtI2RlZmluZSBDT01CSU5FKGEsIGIpICgoKHVuc2lnbmVkIGxvbmcpKGEpIDw8IEhBTEZf
QklUUykgfCAoYikpCj4gLQo+IC0vKgo+IC0gKiBEZXBlbmRpbmcgb24gdGhlIGRlc2lyZWQgb3Bl
cmF0aW9uLCB3ZSB2aWV3IGEgYGxvbmcgbG9uZycgKGFrYSBxdWFkX3QpIGluCj4gLSAqIG9uZSBv
ciBtb3JlIG9mIHRoZSBmb2xsb3dpbmcgZm9ybWF0cy4KPiAtICovCj4gLXVuaW9uIHV1IHsKPiAt
CV9fczY0ICAgICAgICAgICBxOyAgICAgICAgICAgICAvKiBhcyBhIChzaWduZWQpIHF1YWQgKi8K
PiAtCV9fczY0ICAgICAgICAgIHVxOyAgICAgICAgICAgICAvKiBhcyBhbiB1bnNpZ25lZCBxdWFk
ICovCj4gLQlsb25nICAgICAgICAgICBzbFsyXTsgICAgICAgICAgLyogYXMgdHdvIHNpZ25lZCBs
b25ncyAqLwo+IC0JdW5zaWduZWQgbG9uZyAgdWxbMl07ICAgICAgICAgIC8qIGFzIHR3byB1bnNp
Z25lZCBsb25ncyAqLwo+IC19Owo+IC0KPiAtI2RlZmluZQlCCSgxIDw8IEhBTEZfQklUUykJLyog
ZGlnaXQgYmFzZSAqLwo+IC0KPiAtLyogc2VsZWN0IGEgdHlwZSBmb3IgZGlnaXRzIGluIGJhc2Ug
QjogdXNlIHVuc2lnbmVkIHNob3J0IGlmIHRoZXkgZml0ICovCj4gLSNpZiBfX1VMX01BWCA9PSAw
eGZmZmZmZmZmICYmIF9fVVNfTUFYID49IDB4ZmZmZgo+IC10eXBlZGVmIHVuc2lnbmVkIHNob3J0
IGRpZ2l0Owo+IC0jZWxzZQo+IC10eXBlZGVmIHVuc2lnbmVkIGxvbmcgZGlnaXQ7Cj4gLSNlbmRp
Zgo+IC0KPiAtLyoKPiAtICogU2hpZnQgcFswXS4ucFtsZW5dIGxlZnQgYHNoJyBiaXRzLCBpZ25v
cmluZyBhbnkgYml0cyB0aGF0Cj4gLSAqIGBmYWxsIG91dCcgdGhlIGxlZnQgKHRoZXJlIG5ldmVy
IHdpbGwgYmUgYW55IHN1Y2ggYW55d2F5KS4KPiAtICogV2UgbWF5IGFzc3VtZSBsZW4gPj0gMC4g
IE5PVEUgVEhBVCBUSElTIFdSSVRFUyBsZW4rMSBESUdJVFMuCj4gLSAqLwo+IC1zdGF0aWMgdm9p
ZCBfX3NobChyZWdpc3RlciBkaWdpdCAqcCwgcmVnaXN0ZXIgaW50IGxlbiwgcmVnaXN0ZXIgaW50
IHNoKQo+IC17Cj4gLQlyZWdpc3RlciBpbnQgaTsKPiAtCj4gLQlmb3IgKGkgPSAwOyBpIDwgbGVu
OyBpKyspCj4gLQkJcFtpXSA9IExIQUxGKHBbaV0gPDwgc2gpIHwgKHBbaSArIDFdID4+IChIQUxG
X0JJVFMgLSBzaCkpOwo+IC0JcFtpXSA9IExIQUxGKHBbaV0gPDwgc2gpOwo+IC19Cj4gLQo+IC0v
Kgo+IC0gKiBfX3FkaXZyZW0odSwgdiwgcmVtKSByZXR1cm5zIHUvdiBhbmQsIG9wdGlvbmFsbHks
IHNldHMgKnJlbSB0byB1JXYuCj4gLSAqCj4gLSAqIFdlIGRvIHRoaXMgaW4gYmFzZSAyLXN1cC1I
QUxGX0JJVFMsIHNvIHRoYXQgYWxsIGludGVybWVkaWF0ZSBwcm9kdWN0cwo+IC0gKiBmaXQgd2l0
aGluIHVfbG9uZy4gIEFzIGEgY29uc2VxdWVuY2UsIHRoZSBtYXhpbXVtIGxlbmd0aCBkaXZpZGVu
ZCBhbmQKPiAtICogZGl2aXNvciBhcmUgNCBgZGlnaXRzJyBpbiB0aGlzIGJhc2UgKHRoZXkgYXJl
IHNob3J0ZXIgaWYgdGhleSBoYXZlCj4gLSAqIGxlYWRpbmcgemVyb3MpLgo+IC0gKi8KPiAtX191
NjQgX19xZGl2cmVtKF9fdTY0IHVxLCBfX3U2NCB2cSwgX191NjQgKmFycSkKPiAtewo+IC0JdW5p
b24gdXUgdG1wOwo+IC0JZGlnaXQgKnUsICp2LCAqcTsKPiAtCXJlZ2lzdGVyIGRpZ2l0IHYxLCB2
MjsKPiAtCXVuc2lnbmVkIGxvbmcgcWhhdCwgcmhhdCwgdDsKPiAtCWludCBtLCBuLCBkLCBqLCBp
Owo+IC0JZGlnaXQgdXNwYWNlWzVdLCB2c3BhY2VbNV0sIHFzcGFjZVs1XTsKPiAtCj4gLQkvKgo+
IC0JICogVGFrZSBjYXJlIG9mIHNwZWNpYWwgY2FzZXM6IGRpdmlkZSBieSB6ZXJvLCBhbmQgdSA8
IHYuCj4gLQkgKi8KPiAtCWlmICh2cSA9PSAwKSB7Cj4gLQkJLyogZGl2aWRlIGJ5IHplcm8uICov
Cj4gLQkJc3RhdGljIHZvbGF0aWxlIGNvbnN0IHVuc2lnbmVkIGludCB6ZXJvID0gMDsKPiAtCj4g
LQkJdG1wLnVsW1FVQURIXSA9IHRtcC51bFtRVUFETF0gPSAxIC8gemVybzsKPiAtCQlpZiAoYXJx
KQo+IC0JCQkqYXJxID0gdXE7Cj4gLQkJcmV0dXJuIHRtcC5xOwo+IC0JfQo+IC0JaWYgKHVxIDwg
dnEpIHsKPiAtCQlpZiAoYXJxKQo+IC0JCQkqYXJxID0gdXE7Cj4gLQkJcmV0dXJuIDA7Cj4gLQl9
Cj4gLQl1ID0gJnVzcGFjZVswXTsKPiAtCXYgPSAmdnNwYWNlWzBdOwo+IC0JcSA9ICZxc3BhY2Vb
MF07Cj4gLQo+IC0JLyoKPiAtCSAqIEJyZWFrIGRpdmlkZW5kIGFuZCBkaXZpc29yIGludG8gZGln
aXRzIGluIGJhc2UgQiwgdGhlbgo+IC0JICogY291bnQgbGVhZGluZyB6ZXJvcyB0byBkZXRlcm1p
bmUgbSBhbmQgbi4gIFdoZW4gZG9uZSwgd2UKPiAtCSAqIHdpbGwgaGF2ZToKPiAtCSAqCXUgPSAo
dVsxXXVbMl0uLi51W20rbl0pIHN1YiBCCj4gLQkgKgl2ID0gKHZbMV12WzJdLi4udltuXSkgc3Vi
IEIKPiAtCSAqCXZbMV0gIT0gMAo+IC0JICoJMSA8IG4gPD0gNCAoaWYgbiA9IDEsIHdlIHVzZSBh
IGRpZmZlcmVudCBkaXZpc2lvbiBhbGdvcml0aG0pCj4gLQkgKgltID49IDAgKG90aGVyd2lzZSB1
IDwgdiwgd2hpY2ggd2UgYWxyZWFkeSBjaGVja2VkKQo+IC0JICoJbSArIG4gPSA0Cj4gLQkgKiBh
bmQgdGh1cwo+IC0JICoJbSA9IDQgLSBuIDw9IDIKPiAtCSAqLwo+IC0JdG1wLnVxID0gdXE7Cj4g
LQl1WzBdID0gMDsKPiAtCXVbMV0gPSBISEFMRih0bXAudWxbUVVBREhdKTsKPiAtCXVbMl0gPSBM
SEFMRih0bXAudWxbUVVBREhdKTsKPiAtCXVbM10gPSBISEFMRih0bXAudWxbUVVBRExdKTsKPiAt
CXVbNF0gPSBMSEFMRih0bXAudWxbUVVBRExdKTsKPiAtCXRtcC51cSA9IHZxOwo+IC0JdlsxXSA9
IEhIQUxGKHRtcC51bFtRVUFESF0pOwo+IC0JdlsyXSA9IExIQUxGKHRtcC51bFtRVUFESF0pOwo+
IC0JdlszXSA9IEhIQUxGKHRtcC51bFtRVUFETF0pOwo+IC0Jdls0XSA9IExIQUxGKHRtcC51bFtR
VUFETF0pOwo+IC0JZm9yIChuID0gNDsgdlsxXSA9PSAwOyB2KyspIHsKPiAtCQlpZiAoLS1uID09
IDEpIHsKPiAtCQkJdW5zaWduZWQgbG9uZyByYmo7IC8qIHIqQit1W2pdIChub3Qgcm9vdCBib3kg
amltKSAqLwo+IC0JCQlkaWdpdCBxMSwgcTIsIHEzLCBxNDsKPiAtCj4gLQkJCS8qCj4gLQkJCSAq
IENoYW5nZSBvZiBwbGFuLCBwZXIgZXhlcmNpc2UgMTYuCj4gLQkJCSAqCXIgPSAwOwo+IC0JCQkg
Kglmb3IgaiA9IDEuLjQ6Cj4gLQkJCSAqCQlxW2pdID0gZmxvb3IoKHIqQiArIHVbal0pIC8gdiks
Cj4gLQkJCSAqCQlyID0gKHIqQiArIHVbal0pICUgdjsKPiAtCQkJICogV2UgdW5yb2xsIHRoaXMg
Y29tcGxldGVseSBoZXJlLgo+IC0JCQkgKi8KPiAtCQkJdCA9IHZbMl07CS8qIG5vbnplcm8sIGJ5
IGRlZmluaXRpb24gKi8KPiAtCQkJcTEgPSB1WzFdIC8gdDsKPiAtCQkJcmJqID0gQ09NQklORSh1
WzFdICUgdCwgdVsyXSk7Cj4gLQkJCXEyID0gcmJqIC8gdDsKPiAtCQkJcmJqID0gQ09NQklORShy
YmogJSB0LCB1WzNdKTsKPiAtCQkJcTMgPSByYmogLyB0Owo+IC0JCQlyYmogPSBDT01CSU5FKHJi
aiAlIHQsIHVbNF0pOwo+IC0JCQlxNCA9IHJiaiAvIHQ7Cj4gLQkJCWlmIChhcnEpCj4gLQkJCQkq
YXJxID0gcmJqICUgdDsKPiAtCQkJdG1wLnVsW1FVQURIXSA9IENPTUJJTkUocTEsIHEyKTsKPiAt
CQkJdG1wLnVsW1FVQURMXSA9IENPTUJJTkUocTMsIHE0KTsKPiAtCQkJcmV0dXJuIHRtcC5xOwo+
IC0JCX0KPiAtCX0KPiAtCj4gLQkvKgo+IC0JICogQnkgYWRqdXN0aW5nIHEgb25jZSB3ZSBkZXRl
cm1pbmUgbSwgd2UgY2FuIGd1YXJhbnRlZSB0aGF0Cj4gLQkgKiB0aGVyZSBpcyBhIGNvbXBsZXRl
IGZvdXItZGlnaXQgcXVvdGllbnQgYXQgJnFzcGFjZVsxXSB3aGVuCj4gLQkgKiB3ZSBmaW5hbGx5
IHN0b3AuCj4gLQkgKi8KPiAtCWZvciAobSA9IDQgLSBuOyB1WzFdID09IDA7IHUrKykKPiAtCQlt
LS07Cj4gLQlmb3IgKGkgPSA0IC0gbTsgLS1pID49IDA7KQo+IC0JCXFbaV0gPSAwOwo+IC0JcSAr
PSA0IC0gbTsKPiAtCj4gLQkvKgo+IC0JICogSGVyZSB3ZSBydW4gUHJvZ3JhbSBELCB0cmFuc2xh
dGVkIGZyb20gTUlYIHRvIEMgYW5kIGFjcXVpcmluZwo+IC0JICogYSBmZXcgbWlub3IgY2hhbmdl
cy4KPiAtCSAqCj4gLQkgKiBEMTogY2hvb3NlIG11bHRpcGxpZXIgMSA8PCBkIHRvIGVuc3VyZSB2
WzFdID49IEIvMi4KPiAtCSAqLwo+IC0JZCA9IDA7Cj4gLQlmb3IgKHQgPSB2WzFdOyB0IDwgQiAv
IDI7IHQgPDw9IDEpCj4gLQkJZCsrOwo+IC0JaWYgKGQgPiAwKSB7Cj4gLQkJX19zaGwoJnVbMF0s
IG0gKyBuLCBkKTsJCS8qIHUgPDw9IGQgKi8KPiAtCQlfX3NobCgmdlsxXSwgbiAtIDEsIGQpOwkJ
LyogdiA8PD0gZCAqLwo+IC0JfQo+IC0JLyoKPiAtCSAqIEQyOiBqID0gMC4KPiAtCSAqLwo+IC0J
aiA9IDA7Cj4gLQl2MSA9IHZbMV07CS8qIGZvciBEMyAtLSBub3RlIHRoYXQgdlsxLi5uXSBhcmUg
Y29uc3RhbnQgKi8KPiAtCXYyID0gdlsyXTsJLyogZm9yIEQzICovCj4gLQlkbyB7Cj4gLQkJcmVn
aXN0ZXIgZGlnaXQgdWowLCB1ajEsIHVqMjsKPiAtCj4gLQkJLyoKPiAtCQkgKiBEMzogQ2FsY3Vs
YXRlIHFoYXQgKFxecSwgaW4gVGVYIG5vdGF0aW9uKS4KPiAtCQkgKiBMZXQgcWhhdCA9IG1pbigo
dVtqXSpCICsgdVtqKzFdKS92WzFdLCBCLTEpLCBhbmQKPiAtCQkgKiBsZXQgcmhhdCA9ICh1W2pd
KkIgKyB1W2orMV0pIG1vZCB2WzFdLgo+IC0JCSAqIFdoaWxlIHJoYXQgPCBCIGFuZCB2WzJdKnFo
YXQgPiByaGF0KkIrdVtqKzJdLAo+IC0JCSAqIGRlY3JlbWVudCBxaGF0IGFuZCBpbmNyZWFzZSBy
aGF0IGNvcnJlc3BvbmRpbmdseS4KPiAtCQkgKiBOb3RlIHRoYXQgaWYgcmhhdCA+PSBCLCB2WzJd
KnFoYXQgPCByaGF0KkIuCj4gLQkJICovCj4gLQkJdWowID0gdVtqICsgMF07CS8qIGZvciBEMyBv
bmx5IC0tIG5vdGUgdGhhdCB1W2orLi4uXSBjaGFuZ2UgKi8KPiAtCQl1ajEgPSB1W2ogKyAxXTsJ
LyogZm9yIEQzIG9ubHkgKi8KPiAtCQl1ajIgPSB1W2ogKyAyXTsJLyogZm9yIEQzIG9ubHkgKi8K
PiAtCQlpZiAodWowID09IHYxKSB7Cj4gLQkJCXFoYXQgPSBCOwo+IC0JCQlyaGF0ID0gdWoxOwo+
IC0JCQlnb3RvIHFoYXRfdG9vX2JpZzsKPiAtCQl9IGVsc2Ugewo+IC0JCQl1bnNpZ25lZCBsb25n
IG5uID0gQ09NQklORSh1ajAsIHVqMSk7Cj4gLQo+IC0JCQlxaGF0ID0gbm4gLyB2MTsKPiAtCQkJ
cmhhdCA9IG5uICUgdjE7Cj4gLQkJfQo+IC0JCXdoaWxlICh2MiAqIHFoYXQgPiBDT01CSU5FKHJo
YXQsIHVqMikpIHsKPiAtcWhhdF90b29fYmlnOgo+IC0JCQlxaGF0LS07Cj4gLQkJCWlmICgocmhh
dCArPSB2MSkgPj0gQikKPiAtCQkJCWJyZWFrOwo+IC0JCX0KPiAtCQkvKgo+IC0JCSAqIEQ0OiBN
dWx0aXBseSBhbmQgc3VidHJhY3QuCj4gLQkJICogVGhlIHZhcmlhYmxlIGB0JyBob2xkcyBhbnkg
Ym9ycm93cyBhY3Jvc3MgdGhlIGxvb3AuCj4gLQkJICogV2Ugc3BsaXQgdGhpcyB1cCBzbyB0aGF0
IHdlIGRvIG5vdCByZXF1aXJlIHZbMF0gPSAwLAo+IC0JCSAqIGFuZCB0byBlbGltaW5hdGUgYSBm
aW5hbCBzcGVjaWFsIGNhc2UuCj4gLQkJICovCj4gLQkJZm9yICh0ID0gMCwgaSA9IG47IGkgPiAw
OyBpLS0pIHsKPiAtCQkJdCA9IHVbaSArIGpdIC0gdltpXSAqIHFoYXQgLSB0Owo+IC0JCQl1W2kg
KyBqXSA9IExIQUxGKHQpOwo+IC0JCQl0ID0gKEIgLSBISEFMRih0KSkgJiAoQiAtIDEpOwo+IC0J
CX0KPiAtCQl0ID0gdVtqXSAtIHQ7Cj4gLQkJdVtqXSA9IExIQUxGKHQpOwo+IC0JCS8qCj4gLQkJ
ICogRDU6IHRlc3QgcmVtYWluZGVyLgo+IC0JCSAqIFRoZXJlIGlzIGEgYm9ycm93IGlmIGFuZCBv
bmx5IGlmIEhIQUxGKHQpIGlzIG5vbnplcm87Cj4gLQkJICogaW4gdGhhdCAocmFyZSkgY2FzZSwg
cWhhdCB3YXMgdG9vIGxhcmdlIChieSBleGFjdGx5IDEpLgo+IC0JCSAqIEZpeCBpdCBieSBhZGRp
bmcgdlsxLi5uXSB0byB1W2ouLmorbl0uCj4gLQkJICovCj4gLQkJaWYgKEhIQUxGKHQpKSB7Cj4g
LQkJCXFoYXQtLTsKPiAtCQkJZm9yICh0ID0gMCwgaSA9IG47IGkgPiAwOyBpLS0pIHsgLyogRDY6
IGFkZCBiYWNrLiAqLwo+IC0JCQkJdCArPSB1W2kgKyBqXSArIHZbaV07Cj4gLQkJCQl1W2kgKyBq
XSA9IExIQUxGKHQpOwo+IC0JCQkJdCA9IEhIQUxGKHQpOwo+IC0JCQl9Cj4gLQkJCXVbal0gPSBM
SEFMRih1W2pdICsgdCk7Cj4gLQkJfQo+IC0JCXFbal0gPSBxaGF0Owo+IC0JfSB3aGlsZSAoKytq
IDw9IG0pOwkJLyogRDc6IGxvb3Agb24gai4gKi8KPiAtCj4gLQkvKgo+IC0JICogSWYgY2FsbGVy
IHdhbnRzIHRoZSByZW1haW5kZXIsIHdlIGhhdmUgdG8gY2FsY3VsYXRlIGl0IGFzCj4gLQkgKiB1
W20uLm0rbl0gPj4gZCAodGhpcyBpcyBhdCBtb3N0IG4gZGlnaXRzIGFuZCB0aHVzIGZpdHMgaW4K
PiAtCSAqIHVbbSsxLi5tK25dLCBidXQgd2UgbWF5IG5lZWQgbW9yZSBzb3VyY2UgZGlnaXRzKS4K
PiAtCSAqLwo+IC0JaWYgKGFycSkgewo+IC0JCWlmIChkKSB7Cj4gLQkJCWZvciAoaSA9IG0gKyBu
OyBpID4gbTsgLS1pKQo+IC0JCQkJdVtpXSA9ICh1W2ldID4+IGQpIHwKPiAtCQkJCSAgICBMSEFM
Rih1W2kgLSAxXSA8PCAoSEFMRl9CSVRTIC0gZCkpOwo+IC0JCQl1W2ldID0gMDsKPiAtCQl9Cj4g
LQkJdG1wLnVsW1FVQURIXSA9IENPTUJJTkUodXNwYWNlWzFdLCB1c3BhY2VbMl0pOwo+IC0JCXRt
cC51bFtRVUFETF0gPSBDT01CSU5FKHVzcGFjZVszXSwgdXNwYWNlWzRdKTsKPiAtCQkqYXJxID0g
dG1wLnE7Cj4gLQl9Cj4gLQo+IC0JdG1wLnVsW1FVQURIXSA9IENPTUJJTkUocXNwYWNlWzFdLCBx
c3BhY2VbMl0pOwo+IC0JdG1wLnVsW1FVQURMXSA9IENPTUJJTkUocXNwYWNlWzNdLCBxc3BhY2Vb
NF0pOwo+IC0JcmV0dXJuIHRtcC5xOwo+IC19Cj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1k
ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21h
aWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 21:29:42 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 21:29:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3pyP-0005iV-TH; Wed, 04 Apr 2018 21:29:41 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3pyP-0005iO-2C
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 21:29:41 +0000
X-Inumbo-ID: 730c8668-384f-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 730c8668-384f-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 21:30:52 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id C036A104339;
 Wed,  4 Apr 2018 23:29:36 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id Uf2ft75JcT_1; Wed,  4 Apr 2018 23:29:12 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id CBACC103892;
 Wed,  4 Apr 2018 23:29:02 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 23:29:02 +0200
To: Wei Chen <Wei.Chen@arm.com>, <minios-devel@lists.xenproject.org>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-5-git-send-email-Wei.Chen@arm.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <79513222-053d-7cfb-29e4-2f1441571eb7@neclab.eu>
Date: Wed, 4 Apr 2018 23:29:01 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1521085152-77655-5-git-send-email-Wei.Chen@arm.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 4/9] build: Move architecture
 headers to family/architecture folder
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SSB3b3VsZCBwcmVmZXIgYSBkZXNjcmlwdGlvbiB0aGF0IHNheXMgdGhhdCB0aGlzIHBhdGNoIHJl
ZmxlY3RzIHRoZSBDUFUgCmZhbWlseSBzY2hlbWUgYWxzbyB0byB0aGUgVW5pa3JhZnRzIGJhc2Ug
aW5jbHVkZSBmb2xkZXIuCgpPbiAxNS4wMy4yMDE4IDA0OjM5LCBXZWkgQ2hlbiB3cm90ZToKPiBB
cyB3ZSBoYXZlIGludHJvZHVjZWQgdGhlIFVLX0ZBTUlMWSBpbiBwcmV2aW91cyBwYXRjaC4gV2Ug
aGF2ZSB0byBwbGFjZQo+IHRoZSBhcmNoaXRlY3R1cmUgc3BlY2lmaWVkIGhlYWRlcnMgdG8gYXJj
aC9mYW1pbHkvPGFjdHVhbCBhcmNoaXRlY3R1cmU+Ogo+IHVuaWtyYWZ0L2luY2x1ZGUvdWsvYXJj
aC0tLS1hcm0tLS0tYXJtMzIKPiAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICB8LS0tLS1h
cm02NAo+ICAgICAgICAgICAgICAgICAgICAgICAgfAo+ICAgICAgICAgICAgICAgICAgICAgICAg
fC0tLS0teDg2LS0tLXg4Ngo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwtLS0tLXg4
Nl82NAo+IEFuZCwgYmVjYXVzZSBvZiBhcmNoLyouaCBhcmUgd3JhcHBlcnMgb2YgYWN0dWFsIGFy
Y2hpdGVjdHVyZSBoZWFkZXJzLCB3ZQo+IGhhdmUgdG8gbW9kaWZ5IHRoZXNlIGhlYWRlcnMgdG8g
aW5jbHVkZSBmaWxlcyBmcm9tIG5ldyBmb2xkZXIuCj4gCj4gU2lnbmVkLW9mZi1ieTogV2VpIENo
ZW4gPFdlaS5DaGVuQGFybS5jb20+Cj4gLS0tCj4gICBpbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMy
L2F0b21pYy5oICAgIHwgNjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gICBpbmNs
dWRlL3VrL2FyY2gvYXJtL2FybTMyL2ludHNpemVzLmggIHwgNDUgKysrKysrKysrKysrKysrKysr
KysrCj4gICBpbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2xjcHUuaCAgICAgIHwgNTkgKysrKysr
KysrKysrKysrKysrKysrKysrKysrKwo+ICAgaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9saW1p
dHMuaCAgICB8IDQ1ICsrKysrKysrKysrKysrKysrKysrKwo+ICAgaW5jbHVkZS91ay9hcmNoL2Fy
bS9hcm0zMi90eXBlcy5oICAgICB8IDM1ICsrKysrKysrKysrKysrKysrCj4gICBpbmNsdWRlL3Vr
L2FyY2gvYXJtL2F0b21pYy5oICAgICAgICAgIHwgNjQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tCj4gICBpbmNsdWRlL3VrL2FyY2gvYXJtL2ludHNpemVzLmggICAgICAgIHwgNDUgLS0t
LS0tLS0tLS0tLS0tLS0tLS0tCj4gICBpbmNsdWRlL3VrL2FyY2gvYXJtL2xjcHUuaCAgICAgICAg
ICAgIHwgNTkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAgaW5jbHVkZS91ay9hcmNo
L2FybS9saW1pdHMuaCAgICAgICAgICB8IDQ1IC0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAgaW5j
bHVkZS91ay9hcmNoL2FybS90eXBlcy5oICAgICAgICAgICB8IDM1IC0tLS0tLS0tLS0tLS0tLS0t
Cj4gICBpbmNsdWRlL3VrL2FyY2gvYXRvbWljLmggICAgICAgICAgICAgIHwgIDggKystLQo+ICAg
aW5jbHVkZS91ay9hcmNoL2xjcHUuaCAgICAgICAgICAgICAgICB8ICA4ICsrLS0KPiAgIGluY2x1
ZGUvdWsvYXJjaC9saW1pdHMuaCAgICAgICAgICAgICAgfCAxNiArKysrLS0tLQo+ICAgaW5jbHVk
ZS91ay9hcmNoL3R5cGVzLmggICAgICAgICAgICAgICB8IDE2ICsrKystLS0tCj4gICBpbmNsdWRl
L3VrL2FyY2gveDg2L3g4Nl82NC9hdG9taWMuaCAgIHwgNDUgKysrKysrKysrKysrKysrKysrKysr
Cj4gICBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9pbnRzaXplcy5oIHwgNDUgKysrKysrKysr
KysrKysrKysrKysrCj4gICBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9sY3B1LmggICAgIHwg
NzMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgIGluY2x1ZGUvdWsvYXJj
aC94ODYveDg2XzY0L2xpbWl0cy5oICAgfCA0NiArKysrKysrKysrKysrKysrKysrKysrCj4gICBp
bmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC90eXBlcy5oICAgIHwgMzggKysrKysrKysrKysrKysr
KysrCj4gICBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2F0b21pYy5oICAgICAgIHwgNDUgLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCj4gICBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2ludHNpemVzLmggICAg
IHwgNDUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gICBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xj
cHUuaCAgICAgICAgIHwgNzMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAg
IGluY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGltaXRzLmggICAgICAgfCA0NiAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tCj4gICBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L3R5cGVzLmggICAgICAgIHwgMzgg
LS0tLS0tLS0tLS0tLS0tLS0tCj4gICAyNCBmaWxlcyBjaGFuZ2VkLCA1MTkgaW5zZXJ0aW9ucygr
KSwgNTE5IGRlbGV0aW9ucygtKQo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJj
aC9hcm0vYXJtMzIvYXRvbWljLmgKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2Fy
Y2gvYXJtL2FybTMyL2ludHNpemVzLmgKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3Vr
L2FyY2gvYXJtL2FybTMyL2xjcHUuaAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsv
YXJjaC9hcm0vYXJtMzIvbGltaXRzLmgKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3Vr
L2FyY2gvYXJtL2FybTMyL3R5cGVzLmgKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3Vr
L2FyY2gvYXJtL2F0b21pYy5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNo
L2FybS9pbnRzaXplcy5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2Fy
bS9sY3B1LmgKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gvYXJtL2xpbWl0
cy5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS90eXBlcy5oCj4g
ICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvYXRvbWljLmgK
PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9pbnRzaXpl
cy5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGNw
dS5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGlt
aXRzLmgKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC90
eXBlcy5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9hdG9t
aWMuaAo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODZfNjQvaW50c2l6
ZXMuaAo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5o
Cj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9saW1pdHMuaAo+
ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODZfNjQvdHlwZXMuaAo+IAo+
IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2F0b21pYy5oIGIvaW5jbHVk
ZS91ay9hcmNoL2FybS9hcm0zMi9hdG9taWMuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5k
ZXggMDAwMDAwMC4uOWQ1NGVlYQo+IC0tLSAvZGV2L251bGwKPiArKysgYi9pbmNsdWRlL3VrL2Fy
Y2gvYXJtL2FybTMyL2F0b21pYy5oCj4gQEAgLTAsMCArMSw2NCBAQAo+ICsvKiBTUERYLUxpY2Vu
c2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovCj4gKy8qCj4gKyAqIFBvcnQgZnJvbSBNaW5p
LU9TOiBpbmNsdWRlL2FybS9vcy5oCj4gKyAqLwo+ICsvKgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIw
MDkgQ2l0cml4IFN5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KPiArICoKPiArICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Cj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+ICsgKiBhcmUgbWV0Ogo+ICsgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+
ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKPiArICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
VVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECj4gKyAqIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+
ICsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+ICsgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5U
IFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCj4gKyAqIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMCj4gKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCj4gKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQo+ICsgKiBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVAo+ICsgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCj4gKyAqIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YK
PiArICogU1VDSCBEQU1BR0UuCj4gKyAqLwo+ICsKPiArI2lmbmRlZiBfX1VLQVJDSF9BVE9NSUNf
SF9fCj4gKyNlcnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQo+ICsjZW5k
aWYKPiArCj4gKy8qKgo+ICsgKiB1a2FyY2hfZmluZF9sc2JpdCAtIGZpbmQgZmlyc3QgKGxvd2Vz
dCkgc2V0IGJpdCBpbiB3b3JkLgo+ICsgKiBAd29yZDogVGhlIHdvcmQgdG8gc2VhcmNoCj4gKyAq
Cj4gKyAqIFVuZGVmaW5lZCBpZiBubyBiaXQgZXhpc3RzLCBzbyBjb2RlIHNob3VsZCBjaGVjayBh
Z2FpbnN0IDAgZmlyc3QuCj4gKyAqLwo+ICtzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGxvbmcgdWth
cmNoX2ZpbmRfbHNiaXQodW5zaWduZWQgbG9uZyB3b3JkKQo+ICt7Cj4gKwlpbnQgY2x6Owo+ICsK
PiArCS8qIHh4eHh4MTAwMDAgPSB3b3JkCj4gKwkgKiB4eHh4eDAxMTExID0gd29yZCAtIDEKPiAr
CSAqIDAwMDAwMTExMTEgPSB3b3JkIF4gKHdvcmQgLSAxKQo+ICsJICogICAgICA0ICAgICA9IDMx
IC0gY2x6KHdvcmQgXiAod29yZCAtIDEpKQo+ICsJICovCj4gKwo+ICsJX19hc21fXygic3ViIHIw
LCAlW3dvcmRdLCAjMVxuIgo+ICsJCSJlb3IgcjAsIHIwLCAlW3dvcmRdXG4iCj4gKwkJImNseiAl
W2Nsel0sIHIwXG4iCj4gKwkJOgo+ICsJCS8qIE91dHB1dHM6ICovCj4gKwkJW2Nsel0gIj1yIihj
bHopCj4gKwkJOgo+ICsJCS8qIElucHV0czogKi8KPiArCQlbd29yZF0gInIiKHdvcmQpCj4gKwkJ
Ogo+ICsJCS8qIENsb2JiZXJzOiAqLwo+ICsJCSJyMCIpOwo+ICsKPiArCXJldHVybiAzMSAtIGNs
ejsKPiArfQo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2ludHNpemVz
LmggYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2ludHNpemVzLmgKPiBuZXcgZmlsZSBtb2Rl
IDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLjViMzZjNGIKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIv
aW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9pbnRzaXplcy5oCj4gQEAgLTAsMCArMSw0NSBAQAo+
ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICovCj4gKy8qCj4gKyAq
IEF1dGhvcnM6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1Pgo+ICsgKgo+
ICsgKgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBv
cmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+ICsgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKPiArICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4gKyAqCj4gKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KPiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+ICsgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgo+ICsgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5v
ciB0aGUgbmFtZXMgb2YgaXRzCj4gKyAqICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCj4gKyAqICAgIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCj4gKyAqCj4g
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMgIkFTIElTIgo+ICsgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4gKyAqIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUKPiArICogTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgo+ICsg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgo+ICsgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKPiArICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
PiArICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKPiArICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKPiArICogUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4gKyAqCj4gKyAqIFRISVMgSEVBREVSIE1BWSBOT1QgQkUg
RVhUUkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCj4gKyAqLwo+ICsKPiArI2lmICgoIWRl
ZmluZWQgX19VS0FSQ0hfVFlQRVNfSF9fKSAmJiAoIWRlZmluZWQgX19VS0FSQ0hfTElNSVRTX0hf
XykpCj4gKyNlcnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQo+ICsjZW5k
aWYKPiArCj4gKyNkZWZpbmUgX19DX0lTXzggICAgIC8qIGNoYXIgKi8KPiArI2RlZmluZSBfX1Nf
SVNfMTYgICAgLyogc2hvcnQgKi8KPiArI2RlZmluZSBfX0lfSVNfMzIgICAgLyogaW50ICovCj4g
KyNkZWZpbmUgX19MX0lTXzMyICAgIC8qIGxvbmcgKi8KPiArI2RlZmluZSBfX0xMX0lTXzY0ICAg
LyogbG9uZyBsb25nICovCj4gKyNkZWZpbmUgX19QVFJfSVNfMzIgLyogdm9pZCAqICovCj4gZGlm
ZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIvbGNwdS5oIGIvaW5jbHVkZS91ay9h
cmNoL2FybS9hcm0zMi9sY3B1LmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAw
MDAuLmNkZWZmYzMKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvaW5jbHVkZS91ay9hcmNoL2FybS9h
cm0zMi9sY3B1LmgKPiBAQCAtMCwwICsxLDU5IEBACj4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlm
aWVyOiBCU0QtMi1DbGF1c2UgKi8KPiArLyoKPiArICogQ29weXJpZ2h0IChjKSAyMDA5LCBDaXRy
aXggU3lzdGVtcywgSW5jLgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBFdXJvcGUgTHRk
LiwgTkVDIENvcnBvcmF0aW9uLgo+ICsgKgo+ICsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKPiArICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Cj4gKyAqIGFyZSBtZXQ6Cj4gKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KPiArICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+ICsgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgo+ICsgKgo+ICsg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJyBBTkQKPiArICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4gKyAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCj4g
KyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9SIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUKPiArICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKPiArICogREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMKPiArICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pCj4gKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCj4gKyAqIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkKPiArICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgo+ICsgKiBTVUNIIERBTUFHRS4KPiArICov
Cj4gKwo+ICsjaWZuZGVmIF9fVUtBUkNIX0xDUFVfSF9fCj4gKyNlcnJvciBEbyBub3QgaW5jbHVk
ZSB0aGlzIGhlYWRlciBkaXJlY3RseQo+ICsjZW5kaWYKPiArCj4gK3N0cnVjdCBfX3JlZ3Mgewo+
ICsJdW5zaWduZWQgbG9uZyByMDsKPiArCXVuc2lnbmVkIGxvbmcgcjE7Cj4gKwl1bnNpZ25lZCBs
b25nIHIyOwo+ICsJdW5zaWduZWQgbG9uZyByMzsKPiArCXVuc2lnbmVkIGxvbmcgcjQ7Cj4gKwl1
bnNpZ25lZCBsb25nIHI1Owo+ICsJdW5zaWduZWQgbG9uZyByNjsKPiArCXVuc2lnbmVkIGxvbmcg
cjc7Cj4gKwl1bnNpZ25lZCBsb25nIHI4Owo+ICsJdW5zaWduZWQgbG9uZyByOTsKPiArCXVuc2ln
bmVkIGxvbmcgcjEwOwo+ICsJdW5zaWduZWQgbG9uZyByMTE7Cj4gKwl1bnNpZ25lZCBsb25nIHIx
MjsKPiArfTsKPiArCj4gKy8qIFdlIHByb2JhYmx5IG9ubHkgbmVlZCAiZG1iIiBoZXJlLCBidXQg
d2UnbGwgc3RhcnQgYnkgYmVpbmcgcGFyYW5vaWQuICovCj4gKyNpZm5kZWYgbWIKPiArI2RlZmlu
ZSBtYigpIF9fYXNtX18oImRzYiIgOiA6IDogIm1lbW9yeSIpCj4gKyNlbmRpZgo+ICsKPiArI2lm
bmRlZiBybWIKPiArI2RlZmluZSBybWIoKSBfX2FzbV9fKCJkc2IiIDogOiA6ICJtZW1vcnkiKQo+
ICsjZW5kaWYKPiArCj4gKyNpZm5kZWYgd21iCj4gKyNkZWZpbmUgd21iKCkgX19hc21fXygiZHNi
IiA6IDogOiAibWVtb3J5IikKPiArI2VuZGlmCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJj
aC9hcm0vYXJtMzIvbGltaXRzLmggYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2xpbWl0cy5o
Cj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi4wODU3NjFjCj4gLS0tIC9k
ZXYvbnVsbAo+ICsrKyBiL2luY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIvbGltaXRzLmgKPiBAQCAt
MCwwICsxLDQ1IEBACj4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2Ug
Ki8KPiArLyoKPiArICogQ29weXJpZ2h0IChjKSAyMDA5LCBDaXRyaXggU3lzdGVtcywgSW5jLgo+
ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9u
Lgo+ICsgKgo+ICsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKPiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4g
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KPiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQo+ICsgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgo+ICsgKgo+ICsgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKPiArICog
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCj4gKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKPiAr
ICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwKPiArICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKPiArICogT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pCj4gKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCj4gKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKPiArICog
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRgo+ICsgKiBTVUNIIERBTUFHRS4KPiArICovCj4gKwo+ICsjaWZuZGVmIF9f
VUtBUkNIX0xJTUlUU19IX18KPiArI2Vycm9yIERvIG5vdCBpbmNsdWRlIHRoaXMgaGVhZGVyIGRp
cmVjdGx5Cj4gKyNlbmRpZgo+ICsKPiArI2RlZmluZSBfX1BBR0VfU0hJRlQJCTEyCj4gKwo+ICsj
aWZkZWYgX19BU1NFTUJMWV9fCj4gKyNkZWZpbmUgX19QQUdFX1NJWkUJCSgxIDw8IF9fUEFHRV9T
SElGVCkKPiArI2RlZmluZSBfX1BBR0VfTUFTSwkJKH4oKF9fUEFHRV9TSVpFKSAtIDEpKQo+ICsj
ZWxzZQo+ICsjZGVmaW5lIF9fUEFHRV9TSVpFCQkoMVVMTCA8PCBfX1BBR0VfU0hJRlQpCj4gKyNk
ZWZpbmUgX19QQUdFX01BU0sJCSh+KChfX1BBR0VfU0laRSkgLSAxKSkKPiArI2VuZGlmCj4gKwo+
ICsjZGVmaW5lIF9fU1RBQ0tfU0laRV9QQUdFX09SREVSCTIKPiArI2RlZmluZSBfX1NUQUNLX1NJ
WkUJCShfX1BBR0VfU0laRSAqICgxIDw8IF9fU1RBQ0tfU0laRV9QQUdFX09SREVSKSkKPiArCj4g
KyNkZWZpbmUgX19XT1JEU0laRQkJMzIKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNoL2Fy
bS9hcm0zMi90eXBlcy5oIGIvaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi90eXBlcy5oCj4gbmV3
IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi5lNzQ1YzBjCj4gLS0tIC9kZXYvbnVs
bAo+ICsrKyBiL2luY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIvdHlwZXMuaAo+IEBAIC0wLDAgKzEs
MzUgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVCAqLwo+ICsvKgo+ICsgKiBD
b3B5cmlnaHQgKGMpIDIwMDItMjAwMywgSyBBIEZyYXNlciAmIFIgTmV1Z2ViYXVlcgo+ICsgKiBD
b3B5cmlnaHQgKGMpIDIwMDUsIEdyemVnb3J6IE1pbG9zLCBJbnRlbCBSZXNlYXJjaCBDYW1icmlk
Z2UKPiArICoKPiArICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFy
Z2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weQo+ICsgKiBvZiB0aGlzIHNvZnR3YXJl
IGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8K
PiArICogZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5n
IHdpdGhvdXQgbGltaXRhdGlvbiB0aGUKPiArICogcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5
LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yCj4gKyAqIHNl
bGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20g
dGhlIFNvZnR3YXJlIGlzCj4gKyAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnM6Cj4gKyAqCj4gKyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90
aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCj4gKyAq
IGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgo+ICsg
Kgo+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5U
WSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgo+ICsgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5P
VCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKPiArICogRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8g
RVZFTlQgU0hBTEwgVEhFCj4gKyAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElB
QkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKPiArICogTElBQklMSVRZLCBXSEVU
SEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcK
PiArICogRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1Ig
VEhFIFVTRSBPUiBPVEhFUgo+ICsgKiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuCj4gKyAqLwo+
ICsKPiArI2lmbmRlZiBfX1VLQVJDSF9UWVBFU19IX18KPiArI2Vycm9yIERvIG5vdCBpbmNsdWRl
IHRoaXMgaGVhZGVyIGRpcmVjdGx5Cj4gKyNlbmRpZgo+ICsKPiArI2lmbmRlZiBfX0FTU0VNQkxZ
X18KPiArCj4gK3N0cnVjdCBfX3B0ZSB7IHVuc2lnbmVkIGxvbmcgcHRlX2xvdywgcHRlX2hpZ2g7
IH07Cj4gKyNkZWZpbmUgbnB0ZSh4KSAoeyB1bnNpZ25lZCBsb25nIGxvbmcgX3ggPSAoeCk7IFwK
PiArCQkgKChwdGVfdCkgeyh1bnNpZ25lZCBsb25nKShfeCksICh1bnNpZ25lZCBsb25nKShfeD4+
MzIpfSk7IH0pCj4gKwo+ICsjZW5kaWYgLyogIV9fQVNTRU1CTFlfXyAqLwo+IGRpZmYgLS1naXQg
YS9pbmNsdWRlL3VrL2FyY2gvYXJtL2F0b21pYy5oIGIvaW5jbHVkZS91ay9hcmNoL2FybS9hdG9t
aWMuaAo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDlkNTRlZWEuLjAwMDAwMDAK
PiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2F0b21pYy5oCj4gKysrIC9kZXYvbnVsbAo+IEBA
IC0xLDY0ICswLDAgQEAKPiAtLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVz
ZSAqLwo+IC0vKgo+IC0gKiBQb3J0IGZyb20gTWluaS1PUzogaW5jbHVkZS9hcm0vb3MuaAo+IC0g
Ki8KPiAtLyoKPiAtICogQ29weXJpZ2h0IChjKSAyMDA5IENpdHJpeCBTeXN0ZW1zLCBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCj4gLSAqCj4gLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+IC0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
PiAtICogYXJlIG1ldDoKPiAtICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiAtICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+IC0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAo+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4gLSAqCj4gLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBB
UyBJUycnIEFORAo+IC0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiAtICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKPiAt
ICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1IgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRQo+IC0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAo+IC0gKiBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
Uwo+IC0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikKPiAtICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKPiAtICogTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWQo+IC0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCj4gLSAqIFNVQ0ggREFNQUdFLgo+IC0gKi8K
PiAtCj4gLSNpZm5kZWYgX19VS0FSQ0hfQVRPTUlDX0hfXwo+IC0jZXJyb3IgRG8gbm90IGluY2x1
ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKPiAtI2VuZGlmCj4gLQo+IC0vKioKPiAtICogdWthcmNo
X2ZpbmRfbHNiaXQgLSBmaW5kIGZpcnN0IChsb3dlc3QpIHNldCBiaXQgaW4gd29yZC4KPiAtICog
QHdvcmQ6IFRoZSB3b3JkIHRvIHNlYXJjaAo+IC0gKgo+IC0gKiBVbmRlZmluZWQgaWYgbm8gYml0
IGV4aXN0cywgc28gY29kZSBzaG91bGQgY2hlY2sgYWdhaW5zdCAwIGZpcnN0Lgo+IC0gKi8KPiAt
c3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHVrYXJjaF9maW5kX2xzYml0KHVuc2lnbmVkIGxv
bmcgd29yZCkKPiAtewo+IC0JaW50IGNsejsKPiAtCj4gLQkvKiB4eHh4eDEwMDAwID0gd29yZAo+
IC0JICogeHh4eHgwMTExMSA9IHdvcmQgLSAxCj4gLQkgKiAwMDAwMDExMTExID0gd29yZCBeICh3
b3JkIC0gMSkKPiAtCSAqICAgICAgNCAgICAgPSAzMSAtIGNseih3b3JkIF4gKHdvcmQgLSAxKSkK
PiAtCSAqLwo+IC0KPiAtCV9fYXNtX18oInN1YiByMCwgJVt3b3JkXSwgIzFcbiIKPiAtCQkiZW9y
IHIwLCByMCwgJVt3b3JkXVxuIgo+IC0JCSJjbHogJVtjbHpdLCByMFxuIgo+IC0JCToKPiAtCQkv
KiBPdXRwdXRzOiAqLwo+IC0JCVtjbHpdICI9ciIoY2x6KQo+IC0JCToKPiAtCQkvKiBJbnB1dHM6
ICovCj4gLQkJW3dvcmRdICJyIih3b3JkKQo+IC0JCToKPiAtCQkvKiBDbG9iYmVyczogKi8KPiAt
CQkicjAiKTsKPiAtCj4gLQlyZXR1cm4gMzEgLSBjbHo7Cj4gLX0KPiBkaWZmIC0tZ2l0IGEvaW5j
bHVkZS91ay9hcmNoL2FybS9pbnRzaXplcy5oIGIvaW5jbHVkZS91ay9hcmNoL2FybS9pbnRzaXpl
cy5oCj4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggNWIzNmM0Yi4uMDAwMDAwMAo+
IC0tLSBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vaW50c2l6ZXMuaAo+ICsrKyAvZGV2L251bGwKPiBA
QCAtMSw0NSArMCwwIEBACj4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1
c2UgKi8KPiAtLyoKPiAtICogQXV0aG9yczogU2ltb24gS3VlbnplciA8c2ltb24ua3VlbnplckBu
ZWNsYWIuZXU+Cj4gLSAqCj4gLSAqCj4gLSAqIENvcHlyaWdodCAoYykgMjAxNywgTkVDIEV1cm9w
ZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gLSAqCj4gLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAo+IC0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKPiAtICogYXJlIG1ldDoKPiAtICoKPiAtICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKPiAtICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgo+IC0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+IC0gKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Cj4gLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCj4gLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNv
cHlyaWdodCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHMKPiAtICogICAgY29udHJpYnV0b3Jz
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20K
PiAtICogICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KPiAtICoKPiAtICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCj4gLSAqIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUKPiAtICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKPiAtICogQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQo+IC0g
KiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCj4gLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCj4gLSAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwo+IC0g
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgo+IC0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQo+IC0gKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQo+IC0gKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KPiAtICoKPiAtICogVEhJUyBI
RUFERVIgTUFZIE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KPiAtICov
Cj4gLQo+IC0jaWYgKCghZGVmaW5lZCBfX1VLQVJDSF9UWVBFU19IX18pICYmICghZGVmaW5lZCBf
X1VLQVJDSF9MSU1JVFNfSF9fKSkKPiAtI2Vycm9yIERvIG5vdCBpbmNsdWRlIHRoaXMgaGVhZGVy
IGRpcmVjdGx5Cj4gLSNlbmRpZgo+IC0KPiAtI2RlZmluZSBfX0NfSVNfOCAgICAgLyogY2hhciAq
Lwo+IC0jZGVmaW5lIF9fU19JU18xNiAgICAvKiBzaG9ydCAqLwo+IC0jZGVmaW5lIF9fSV9JU18z
MiAgICAvKiBpbnQgKi8KPiAtI2RlZmluZSBfX0xfSVNfMzIgICAgLyogbG9uZyAqLwo+IC0jZGVm
aW5lIF9fTExfSVNfNjQgICAvKiBsb25nIGxvbmcgKi8KPiAtI2RlZmluZSBfX1BUUl9JU18zMiAv
KiB2b2lkICogKi8KPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNoL2FybS9sY3B1LmggYi9p
bmNsdWRlL3VrL2FyY2gvYXJtL2xjcHUuaAo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAo+IGlu
ZGV4IGNkZWZmYzMuLjAwMDAwMDAKPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2xjcHUuaAo+
ICsrKyAvZGV2L251bGwKPiBAQCAtMSw1OSArMCwwIEBACj4gLS8qIFNQRFgtTGljZW5zZS1JZGVu
dGlmaWVyOiBCU0QtMi1DbGF1c2UgKi8KPiAtLyoKPiAtICogQ29weXJpZ2h0IChjKSAyMDA5LCBD
aXRyaXggU3lzdGVtcywgSW5jLgo+IC0gKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBFdXJvcGUg
THRkLiwgTkVDIENvcnBvcmF0aW9uLgo+IC0gKgo+IC0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKPiAtICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCj4gLSAqIGFyZSBtZXQ6Cj4gLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KPiAtICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKPiAtICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+IC0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgo+IC0gKgo+
IC0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQKPiAtICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4gLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
Cj4gLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9SIE9SIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUKPiAtICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKPiAtICogREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMKPiAtICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCj4gLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCj4gLSAqIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkKPiAtICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgo+IC0gKiBTVUNIIERBTUFHRS4KPiAt
ICovCj4gLQo+IC0jaWZuZGVmIF9fVUtBUkNIX0xDUFVfSF9fCj4gLSNlcnJvciBEbyBub3QgaW5j
bHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQo+IC0jZW5kaWYKPiAtCj4gLXN0cnVjdCBfX3JlZ3Mg
ewo+IC0JdW5zaWduZWQgbG9uZyByMDsKPiAtCXVuc2lnbmVkIGxvbmcgcjE7Cj4gLQl1bnNpZ25l
ZCBsb25nIHIyOwo+IC0JdW5zaWduZWQgbG9uZyByMzsKPiAtCXVuc2lnbmVkIGxvbmcgcjQ7Cj4g
LQl1bnNpZ25lZCBsb25nIHI1Owo+IC0JdW5zaWduZWQgbG9uZyByNjsKPiAtCXVuc2lnbmVkIGxv
bmcgcjc7Cj4gLQl1bnNpZ25lZCBsb25nIHI4Owo+IC0JdW5zaWduZWQgbG9uZyByOTsKPiAtCXVu
c2lnbmVkIGxvbmcgcjEwOwo+IC0JdW5zaWduZWQgbG9uZyByMTE7Cj4gLQl1bnNpZ25lZCBsb25n
IHIxMjsKPiAtfTsKPiAtCj4gLS8qIFdlIHByb2JhYmx5IG9ubHkgbmVlZCAiZG1iIiBoZXJlLCBi
dXQgd2UnbGwgc3RhcnQgYnkgYmVpbmcgcGFyYW5vaWQuICovCj4gLSNpZm5kZWYgbWIKPiAtI2Rl
ZmluZSBtYigpIF9fYXNtX18oImRzYiIgOiA6IDogIm1lbW9yeSIpCj4gLSNlbmRpZgo+IC0KPiAt
I2lmbmRlZiBybWIKPiAtI2RlZmluZSBybWIoKSBfX2FzbV9fKCJkc2IiIDogOiA6ICJtZW1vcnki
KQo+IC0jZW5kaWYKPiAtCj4gLSNpZm5kZWYgd21iCj4gLSNkZWZpbmUgd21iKCkgX19hc21fXygi
ZHNiIiA6IDogOiAibWVtb3J5IikKPiAtI2VuZGlmCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsv
YXJjaC9hcm0vbGltaXRzLmggYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2xpbWl0cy5oCj4gZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDg1NzYxYy4uMDAwMDAwMAo+IC0tLSBhL2luY2x1
ZGUvdWsvYXJjaC9hcm0vbGltaXRzLmgKPiArKysgL2Rldi9udWxsCj4gQEAgLTEsNDUgKzAsMCBA
QAo+IC0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovCj4gLS8qCj4g
LSAqIENvcHlyaWdodCAoYykgMjAwOSwgQ2l0cml4IFN5c3RlbXMsIEluYy4KPiAtICogQ29weXJp
Z2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4KPiAtICoKPiAt
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Cj4gLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+IC0gKiBhcmUgbWV0Ogo+IC0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAo+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCj4gLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKPiAt
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KPiAtICoKPiAtICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECj4gLSAqIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQo+IC0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+IC0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVW
RU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCj4gLSAqIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMCj4gLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCj4gLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQo+IC0gKiBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVAo+IC0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCj4gLSAqIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YKPiAtICogU1VDSCBEQU1BR0UuCj4gLSAqLwo+IC0KPiAtI2lmbmRlZiBfX1VLQVJDSF9MSU1J
VFNfSF9fCj4gLSNlcnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQo+IC0j
ZW5kaWYKPiAtCj4gLSNkZWZpbmUgX19QQUdFX1NISUZUCQkxMgo+IC0KPiAtI2lmZGVmIF9fQVNT
RU1CTFlfXwo+IC0jZGVmaW5lIF9fUEFHRV9TSVpFCQkoMSA8PCBfX1BBR0VfU0hJRlQpCj4gLSNk
ZWZpbmUgX19QQUdFX01BU0sJCSh+KChfX1BBR0VfU0laRSkgLSAxKSkKPiAtI2Vsc2UKPiAtI2Rl
ZmluZSBfX1BBR0VfU0laRQkJKDFVTEwgPDwgX19QQUdFX1NISUZUKQo+IC0jZGVmaW5lIF9fUEFH
RV9NQVNLCQkofigoX19QQUdFX1NJWkUpIC0gMSkpCj4gLSNlbmRpZgo+IC0KPiAtI2RlZmluZSBf
X1NUQUNLX1NJWkVfUEFHRV9PUkRFUgkyCj4gLSNkZWZpbmUgX19TVEFDS19TSVpFCQkoX19QQUdF
X1NJWkUgKiAoMSA8PCBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUikpCj4gLQo+IC0jZGVmaW5lIF9f
V09SRFNJWkUJCTMyCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vdHlwZXMuaCBi
L2luY2x1ZGUvdWsvYXJjaC9hcm0vdHlwZXMuaAo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAo+
IGluZGV4IGU3NDVjMGMuLjAwMDAwMDAKPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gvYXJtL3R5cGVz
LmgKPiArKysgL2Rldi9udWxsCj4gQEAgLTEsMzUgKzAsMCBAQAo+IC0vKiBTUERYLUxpY2Vuc2Ut
SWRlbnRpZmllcjogTUlUICovCj4gLS8qCj4gLSAqIENvcHlyaWdodCAoYykgMjAwMi0yMDAzLCBL
IEEgRnJhc2VyICYgUiBOZXVnZWJhdWVyCj4gLSAqIENvcHlyaWdodCAoYykgMjAwNSwgR3J6ZWdv
cnogTWlsb3MsIEludGVsIFJlc2VhcmNoIENhbWJyaWRnZQo+IC0gKgo+IC0gKiBQZXJtaXNzaW9u
IGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5p
bmcgYSBjb3B5Cj4gLSAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRh
dGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0bwo+IC0gKiBkZWFsIGluIHRoZSBTb2Z0d2Fy
ZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZQo+
IC0gKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmli
dXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKPiAtICogc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJl
LCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKPiAtICogZnVy
bmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKPiAt
ICoKPiAtICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBu
b3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KPiAtICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlh
bCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCj4gLSAqCj4gLSAqIFRIRSBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9S
Cj4gLSAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZLAo+IC0gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKPiAtICogQVVU
SE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdF
UyBPUiBPVEhFUgo+IC0gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRS
QUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORwo+IC0gKiBGUk9NLCBPVVQgT0YgT1IgSU4g
Q09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSCj4gLSAqIERF
QUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KPiAtICovCj4gLQo+IC0jaWZuZGVmIF9fVUtBUkNIX1RZ
UEVTX0hfXwo+IC0jZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKPiAt
I2VuZGlmCj4gLQo+IC0jaWZuZGVmIF9fQVNTRU1CTFlfXwo+IC0KPiAtc3RydWN0IF9fcHRlIHsg
dW5zaWduZWQgbG9uZyBwdGVfbG93LCBwdGVfaGlnaDsgfTsKPiAtI2RlZmluZSBucHRlKHgpICh7
IHVuc2lnbmVkIGxvbmcgbG9uZyBfeCA9ICh4KTsgXAo+IC0JCSAoKHB0ZV90KSB7KHVuc2lnbmVk
IGxvbmcpKF94KSwgKHVuc2lnbmVkIGxvbmcpKF94Pj4zMil9KTsgfSkKPiAtCj4gLSNlbmRpZiAv
KiAhX19BU1NFTUJMWV9fICovCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hdG9taWMu
aCBiL2luY2x1ZGUvdWsvYXJjaC9hdG9taWMuaAo+IGluZGV4IDMzMWJkODEuLjQ4YTRhNzQgMTAw
NjQ0Cj4gLS0tIGEvaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oCj4gKysrIGIvaW5jbHVkZS91ay9h
cmNoL2F0b21pYy5oCj4gQEAgLTM3LDE2ICszNywxNiBAQCBleHRlcm4gIkMiIHsKPiAgICNlbmRp
Zgo+ICAgCj4gICAjaWZkZWYgX19YODZfMzJfXwo+IC0jaW5jbHVkZSA8dWsvYXJjaC94ODYvYXRv
bWljLmg+Cj4gKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODYvYXRvbWljLmg+Cj4gICAjZW5kaWYK
PiAgICNpZmRlZiBfX1g4Nl82NF9fCj4gLSNpbmNsdWRlIDx1ay9hcmNoL3g4Nl82NC9hdG9taWMu
aD4KPiArI2luY2x1ZGUgPHVrL2FyY2gveDg2L3g4Nl82NC9hdG9taWMuaD4KPiAgICNlbmRpZgo+
ICAgI2lmZGVmIF9fQVJNXzMyX18KPiAtI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2F0b21pYy5oPgo+
ICsjaW5jbHVkZSA8dWsvYXJjaC9hcm0vYXJtMzIvYXRvbWljLmg+Cj4gICAjZW5kaWYKPiAgICNp
ZmRlZiBfX0FSTV82NF9fCj4gLSNpbmNsdWRlIDx1ay9hcmNoL2FybTY0L2F0b21pYy5oPgo+ICsj
aW5jbHVkZSA8dWsvYXJjaC9hcm0vYXJtNjQvYXRvbWljLmg+Cj4gICAjZW5kaWYKPiAgIAo+ICAg
LyoqCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9sY3B1LmggYi9pbmNsdWRlL3VrL2Fy
Y2gvbGNwdS5oCj4gaW5kZXggZWE3ODBmNy4uMDYwNGE5MiAxMDA2NDQKPiAtLS0gYS9pbmNsdWRl
L3VrL2FyY2gvbGNwdS5oCj4gKysrIGIvaW5jbHVkZS91ay9hcmNoL2xjcHUuaAo+IEBAIC00Mywx
NiArNDMsMTYgQEAgZXh0ZXJuICJDIiB7Cj4gICAjZW5kaWYKPiAgIAo+ICAgI2lmZGVmIF9fWDg2
XzMyX18KPiAtI2luY2x1ZGUgPHVrL2FyY2gveDg2L2xjcHUuaD4KPiArI2luY2x1ZGUgPHVrL2Fy
Y2gveDg2L3g4Ni9sY3B1Lmg+Cj4gICAjZW5kaWYKPiAgICNpZmRlZiBfX1g4Nl82NF9fCj4gLSNp
bmNsdWRlIDx1ay9hcmNoL3g4Nl82NC9sY3B1Lmg+Cj4gKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94
ODZfNjQvbGNwdS5oPgo+ICAgI2VuZGlmCj4gICAjaWZkZWYgX19BUk1fMzJfXwo+IC0jaW5jbHVk
ZSA8dWsvYXJjaC9hcm0vbGNwdS5oPgo+ICsjaW5jbHVkZSA8dWsvYXJjaC9hcm0vYXJtMzIvbGNw
dS5oPgo+ICAgI2VuZGlmCj4gICAjaWZkZWYgX19BUk1fNjRfXwo+IC0jaW5jbHVkZSA8dWsvYXJj
aC9hcm02NC9sY3B1Lmg+Cj4gKyNpbmNsdWRlIDx1ay9hcmNoL2FybS9hcm02NC9sY3B1Lmg+Cj4g
ICAjZW5kaWYKPiAgIAo+ICAgI2lmbmRlZiBsaWtlbHkKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91
ay9hcmNoL2xpbWl0cy5oIGIvaW5jbHVkZS91ay9hcmNoL2xpbWl0cy5oCj4gaW5kZXggODE2OTRk
OS4uN2JjZGM5MiAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gvbGltaXRzLmgKPiArKysg
Yi9pbmNsdWRlL3VrL2FyY2gvbGltaXRzLmgKPiBAQCAtMzcsMzEgKzM3LDMxIEBACj4gICAjZGVm
aW5lIF9fVUtBUkNIX0xJTUlUU19IX18KPiAgIAo+ICAgI2lmZGVmIF9fWDg2XzMyX18KPiAtI2lu
Y2x1ZGUgPHVrL2FyY2gveDg2L2xpbWl0cy5oPgo+ICsjaW5jbHVkZSA8dWsvYXJjaC94ODYveDg2
L2xpbWl0cy5oPgo+ICAgI2VuZGlmCj4gICAjaWZkZWYgX19YODZfNjRfXwo+IC0jaW5jbHVkZSA8
dWsvYXJjaC94ODZfNjQvbGltaXRzLmg+Cj4gKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODZfNjQv
bGltaXRzLmg+Cj4gICAjZW5kaWYKPiAgICNpZmRlZiBfX0FSTV8zMl9fCj4gLSNpbmNsdWRlIDx1
ay9hcmNoL2FybS9saW1pdHMuaD4KPiArI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2FybTMyL2xpbWl0
cy5oPgo+ICAgI2VuZGlmCj4gICAjaWZkZWYgX19BUk1fNjRfXwo+IC0jaW5jbHVkZSA8dWsvYXJj
aC9hcm02NC9saW1pdHMuaD4KPiArI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2FybTY0L2xpbWl0cy5o
Pgo+ICAgI2VuZGlmCj4gICAKPiAgICNpZm5kZWYgX19BU1NFTUJMWV9fCj4gICAKPiAgICNpZmRl
ZiBfX1g4Nl8zMl9fCj4gLSNpbmNsdWRlIDx1ay9hcmNoL3g4Ni9pbnRzaXplcy5oPgo+ICsjaW5j
bHVkZSA8dWsvYXJjaC94ODYveDg2L2ludHNpemVzLmg+Cj4gICAjZW5kaWYKPiAgICNpZmRlZiBf
X1g4Nl82NF9fCj4gLSNpbmNsdWRlIDx1ay9hcmNoL3g4Nl82NC9pbnRzaXplcy5oPgo+ICsjaW5j
bHVkZSA8dWsvYXJjaC94ODYveDg2XzY0L2ludHNpemVzLmg+Cj4gICAjZW5kaWYKPiAgICNpZmRl
ZiBfX0FSTV8zMl9fCj4gLSNpbmNsdWRlIDx1ay9hcmNoL2FybS9pbnRzaXplcy5oPgo+ICsjaW5j
bHVkZSA8dWsvYXJjaC9hcm0vYXJtMzIvaW50c2l6ZXMuaD4KPiAgICNlbmRpZgo+ICAgI2lmZGVm
IF9fQVJNXzY0X18KPiAtI2luY2x1ZGUgPHVrL2FyY2gvYXJtNjQvaW50c2l6ZXMuaD4KPiArI2lu
Y2x1ZGUgPHVrL2FyY2gvYXJtL2FybTY0L2ludHNpemVzLmg+Cj4gICAjZW5kaWYKPiAgIAo+ICAg
I2lmIChkZWZpbmVkIF9fQ19JU184KQo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gvdHlw
ZXMuaCBiL2luY2x1ZGUvdWsvYXJjaC90eXBlcy5oCj4gaW5kZXggZThkNzcyNi4uZDJjOGZmOSAx
MDA2NDQKPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gvdHlwZXMuaAo+ICsrKyBiL2luY2x1ZGUvdWsv
YXJjaC90eXBlcy5oCj4gQEAgLTQxLDIwICs0MSwyMCBAQCBleHRlcm4gIkMiIHsKPiAgICNlbmRp
Zgo+ICAgCj4gICAjaWZkZWYgX19YODZfMzJfXwo+IC0jaW5jbHVkZSA8dWsvYXJjaC94ODYvaW50
c2l6ZXMuaD4KPiAtI2luY2x1ZGUgPHVrL2FyY2gveDg2L3R5cGVzLmg+Cj4gKyNpbmNsdWRlIDx1
ay9hcmNoL3g4Ni94ODYvaW50c2l6ZXMuaD4KPiArI2luY2x1ZGUgPHVrL2FyY2gveDg2L3g4Ni90
eXBlcy5oPgo+ICAgI2VuZGlmCj4gICAjaWZkZWYgX19YODZfNjRfXwo+IC0jaW5jbHVkZSA8dWsv
YXJjaC94ODZfNjQvaW50c2l6ZXMuaD4KPiAtI2luY2x1ZGUgPHVrL2FyY2gveDg2XzY0L3R5cGVz
Lmg+Cj4gKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODZfNjQvaW50c2l6ZXMuaD4KPiArI2luY2x1
ZGUgPHVrL2FyY2gveDg2L3g4Nl82NC90eXBlcy5oPgo+ICAgI2VuZGlmCj4gICAjaWZkZWYgX19B
Uk1fMzJfXwo+IC0jaW5jbHVkZSA8dWsvYXJjaC9hcm0vaW50c2l6ZXMuaD4KPiAtI2luY2x1ZGUg
PHVrL2FyY2gvYXJtL3R5cGVzLmg+Cj4gKyNpbmNsdWRlIDx1ay9hcmNoL2FybS9hcm0zMi9pbnRz
aXplcy5oPgo+ICsjaW5jbHVkZSA8dWsvYXJjaC9hcm0vYXJtMzIvdHlwZXMuaD4KPiAgICNlbmRp
Zgo+ICAgI2lmZGVmIF9fQVJNXzY0X18KPiAtI2luY2x1ZGUgPHVrL2FyY2gvYXJtNjQvaW50c2l6
ZXMuaD4KPiAtI2luY2x1ZGUgPHVrL2FyY2gvYXJtNjQvdHlwZXMuaD4KPiArI2luY2x1ZGUgPHVr
L2FyY2gvYXJtL2FybTY0L2ludHNpemVzLmg+Cj4gKyNpbmNsdWRlIDx1ay9hcmNoL2FybS9hcm02
NC90eXBlcy5oPgo+ICAgI2VuZGlmCj4gICAKPiAgICNpZm5kZWYgX19BU1NFTUJMWV9fCj4gZGlm
ZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2F0b21pYy5oIGIvaW5jbHVkZS91
ay9hcmNoL3g4Ni94ODZfNjQvYXRvbWljLmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4
IDAwMDAwMDAuLjk4NWMzODgKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvaW5jbHVkZS91ay9hcmNo
L3g4Ni94ODZfNjQvYXRvbWljLmgKPiBAQCAtMCwwICsxLDQ1IEBACj4gKy8qIFNQRFgtTGljZW5z
ZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UgKi8KPiArLyoKPiArICogUG9ydCBmcm9tIE1pbmkt
T1M6IGluY2x1ZGUveDg2L29zLmgKPiArICovCj4gKy8qCj4gKyAqIENvcHlyaWdodCAoYykgMjAw
OSBDaXRyaXggU3lzdGVtcywgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+ICsgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKPiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4gKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4g
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KPiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+ICsgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgo+ICsgKgo+ICsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFV
VEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKPiArICogQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4g
KyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKPiArICogRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwKPiArICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKPiArICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCj4gKyAqIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUCj4gKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKPiArICogT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgo+
ICsgKiBTVUNIIERBTUFHRS4KPiArICovCj4gKyNpZm5kZWYgX19VS0FSQ0hfQVRPTUlDX0hfXwo+
ICsjZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKPiArI2VuZGlmCj4g
Kwo+ICsvKioKPiArICogdWthcmNoX2ZpbmRfbHNiaXQgLSBmaW5kIGZpcnN0IChsb3dlc3QpIHNl
dCBiaXQgaW4gd29yZC4KPiArICogQHdvcmQ6IFRoZSB3b3JkIHRvIHNlYXJjaAo+ICsgKgo+ICsg
KiBVbmRlZmluZWQgaWYgbm8gYml0IGV4aXN0cywgc28gY29kZSBzaG91bGQgY2hlY2sgYWdhaW5z
dCAwIGZpcnN0Lgo+ICsgKi8KPiArc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHVrYXJjaF9m
aW5kX2xzYml0KHVuc2lnbmVkIGxvbmcgd29yZCkKPiArewo+ICsJX19hc21fXygiYnNmcSAlMSwl
MCIKPiArCQk6Ij1yIiAod29yZCkKPiArCQk6InJtIiAod29yZCkpOwo+ICsJcmV0dXJuIHdvcmQ7
Cj4gK30KPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvaW50c2l6ZXMu
aCBiL2luY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2ludHNpemVzLmgKPiBuZXcgZmlsZSBtb2Rl
IDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLmUzZWY1MTAKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIv
aW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvaW50c2l6ZXMuaAo+IEBAIC0wLDAgKzEsNDUgQEAK
PiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwo+ICsvKgo+ICsg
KiBBdXRob3JzOiBTaW1vbiBLdWVuemVyIDxzaW1vbi5rdWVuemVyQG5lY2xhYi5ldT4KPiArICoK
PiArICoKPiArICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jw
b3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KPiArICoKPiArICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cj4gKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwo+ICsgKiBhcmUgbWV0Ogo+ICsgKgo+ICsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKPiArICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KPiArICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBu
b3IgdGhlIG5hbWVzIG9mIGl0cwo+ICsgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQo+ICsgKiAgICB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgo+ICsgKgo+
ICsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKPiArICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+ICsgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRQo+ICsgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCj4gKyAqIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKPiAr
ICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YKPiArICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCj4gKyAqIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
Cj4gKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCj4gKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCj4gKyAqIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgo+ICsgKgo+ICsgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJF
IEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgo+ICsgKi8KPiArCj4gKyNpZiAoKCFk
ZWZpbmVkIF9fVUtBUkNIX1RZUEVTX0hfXykgJiYgKCFkZWZpbmVkIF9fVUtBUkNIX0xJTUlUU19I
X18pKQo+ICsjZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKPiArI2Vu
ZGlmCj4gKwo+ICsjZGVmaW5lIF9fQ19JU184ICAgIC8qIGNoYXIgKi8KPiArI2RlZmluZSBfX1Nf
SVNfMTYgICAvKiBzaG9ydCAqLwo+ICsjZGVmaW5lIF9fSV9JU18zMiAgIC8qIGludCAqLwo+ICsj
ZGVmaW5lIF9fTF9JU182NCAgIC8qIGxvbmcgKi8KPiArI2RlZmluZSBfX0xMX0lTXzY0ICAvKiBs
b25nIGxvbmcgKi8KPiArI2RlZmluZSBfX1BUUl9JU182NCAvKiB2b2lkICogKi8KPiBkaWZmIC0t
Z2l0IGEvaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGNwdS5oIGIvaW5jbHVkZS91ay9hcmNo
L3g4Ni94ODZfNjQvbGNwdS5oCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAw
Li5jZDY2N2U1Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2luY2x1ZGUvdWsvYXJjaC94ODYveDg2
XzY0L2xjcHUuaAo+IEBAIC0wLDAgKzEsNzMgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZp
ZXI6IEJTRC0yLUNsYXVzZSAqLwo+ICsvKgo+ICsgKiBBdXRob3JzOiBHcnplZ29yeiBNaWxvcyA8
Z20yODFAY2FtLmFjLnVrPgo+ICsgKiAgICAgICAgICBTaW1vbiBLdWVuemVyIDxzaW1vbi5rdWVu
emVyQG5lY2xhYi5ldT4KPiArICoKPiArICogQ29weXJpZ2h0IChjKSAyMDA1LCBHcnplZ29yeiBN
aWxvcywgSW50ZWwgUmVzZWFyY2ggQ2FtYnJpZGdlCj4gKyAqIENvcHlyaWdodCAoYykgMjAxNywg
TkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uCj4gKyAqCj4gKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+
ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKPiArICogYXJlIG1ldDoKPiArICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
Lgo+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCj4gKyAqCj4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBD
T05UUklCVVRPUlMgYGBBUyBJUycnIEFORAo+ICsgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiArICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UKPiArICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRI
T1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQo+ICsgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAo+ICsg
KiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUwo+ICsgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiArICogSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QKPiArICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQo+ICsgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCj4gKyAqIFNVQ0gg
REFNQUdFLgo+ICsgKi8KPiArCj4gKyNpZm5kZWYgX19VS0FSQ0hfTENQVV9IX18KPiArI2Vycm9y
IERvIG5vdCBpbmNsdWRlIHRoaXMgaGVhZGVyIGRpcmVjdGx5Cj4gKyNlbmRpZgo+ICsKPiArc3Ry
dWN0IF9fcmVncyB7Cj4gKwl1bnNpZ25lZCBsb25nIHIxNTsKPiArCXVuc2lnbmVkIGxvbmcgcjE0
Owo+ICsJdW5zaWduZWQgbG9uZyByMTM7Cj4gKwl1bnNpZ25lZCBsb25nIHIxMjsKPiArCXVuc2ln
bmVkIGxvbmcgcmJwOwo+ICsJdW5zaWduZWQgbG9uZyByYng7Cj4gKy8qIGFyZ3VtZW50czogbm9u
IGludGVycnVwdHMvbm9uIHRyYWNpbmcgc3lzY2FsbHMgb25seSBzYXZlIHVwdG8gaGVyZSovCj4g
Kwl1bnNpZ25lZCBsb25nIHIxMTsKPiArCXVuc2lnbmVkIGxvbmcgcjEwOwo+ICsJdW5zaWduZWQg
bG9uZyByOTsKPiArCXVuc2lnbmVkIGxvbmcgcjg7Cj4gKwl1bnNpZ25lZCBsb25nIHJheDsKPiAr
CXVuc2lnbmVkIGxvbmcgcmN4Owo+ICsJdW5zaWduZWQgbG9uZyByZHg7Cj4gKwl1bnNpZ25lZCBs
b25nIHJzaTsKPiArCXVuc2lnbmVkIGxvbmcgcmRpOwo+ICsJdW5zaWduZWQgbG9uZyBvcmlnX3Jh
eDsKPiArLyogZW5kIG9mIGFyZ3VtZW50cyAqLwo+ICsvKiBjcHUgZXhjZXB0aW9uIGZyYW1lIG9y
IHVuZGVmaW5lZCAqLwo+ICsJdW5zaWduZWQgbG9uZyByaXA7Cj4gKwl1bnNpZ25lZCBsb25nIGNz
Owo+ICsJdW5zaWduZWQgbG9uZyBlZmxhZ3M7Cj4gKwl1bnNpZ25lZCBsb25nIHJzcDsKPiArCXVu
c2lnbmVkIGxvbmcgc3M7Cj4gKy8qIHRvcCBvZiBzdGFjayBwYWdlICovCj4gK307Cj4gKwo+ICsj
aWZuZGVmIG1iCj4gKyNkZWZpbmUgbWIoKSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoIm1mZW5j
ZSIgOiA6IDogIm1lbW9yeSIpCj4gKyNlbmRpZgo+ICsKPiArI2lmbmRlZiBybWIKPiArI2RlZmlu
ZSBybWIoKSAgIF9fYXNtX18gX192b2xhdGlsZV9fICgibGZlbmNlIiA6IDogOiAibWVtb3J5IikK
PiArI2VuZGlmCj4gKwo+ICsjaWZuZGVmIHdtYgo+ICsjZGVmaW5lIHdtYigpICAgX19hc21fXyBf
X3ZvbGF0aWxlX18gKCJzZmVuY2UiIDogOiA6ICJtZW1vcnkiKQo+ICsjZW5kaWYKPiBkaWZmIC0t
Z2l0IGEvaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGltaXRzLmggYi9pbmNsdWRlL3VrL2Fy
Y2gveDg2L3g4Nl82NC9saW1pdHMuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAw
MDAwMC4uYTk2OWJkMQo+IC0tLSAvZGV2L251bGwKPiArKysgYi9pbmNsdWRlL3VrL2FyY2gveDg2
L3g4Nl82NC9saW1pdHMuaAo+IEBAIC0wLDAgKzEsNDYgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlk
ZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLwo+ICsvKgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMDks
IENpdHJpeCBTeXN0ZW1zLCBJbmMuCj4gKyAqIENvcHlyaWdodCAoYykgMjAxNywgTkVDIEV1cm9w
ZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uCj4gKyAqCj4gKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+ICsgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKPiArICogYXJlIG1ldDoKPiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+ICsgKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4gKyAq
Cj4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORAo+ICsgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiArICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UKPiArICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRQo+ICsgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAo+ICsgKiBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUwo+ICsgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiArICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKPiArICog
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWQo+ICsgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCj4gKyAqIFNVQ0ggREFNQUdFLgo+
ICsgKi8KPiArCj4gKyNpZm5kZWYgX19VS0FSQ0hfTElNSVRTX0hfXwo+ICsjZXJyb3IgRG8gbm90
IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKPiArI2VuZGlmCj4gKwo+ICsjZGVmaW5lIF9f
UEFHRV9TSElGVAkJMTIKPiArCj4gKyNpZmRlZiBfX0FTU0VNQkxZX18KPiArI2RlZmluZSBfX1BB
R0VfU0laRQkJKDEgPDwgX19QQUdFX1NISUZUKQo+ICsjZGVmaW5lIF9fUEFHRV9NQVNLCQkofigo
X19QQUdFX1NJWkUpIC0gMSkpCj4gKyNlbHNlCj4gKyNkZWZpbmUgX19QQUdFX1NJWkUJCSgxVUxM
IDw8IF9fUEFHRV9TSElGVCkKPiArI2RlZmluZSBfX1BBR0VfTUFTSwkJKH4oKF9fUEFHRV9TSVpF
KSAtIDEpKQo+ICsjZW5kaWYKPiArCj4gKyNkZWZpbmUgX19TVEFDS19TSVpFX1BBR0VfT1JERVIJ
NAo+ICsjZGVmaW5lIF9fU1RBQ0tfU0laRQkJKF9fUEFHRV9TSVpFICogKDEgPDwgX19TVEFDS19T
SVpFX1BBR0VfT1JERVIpKQo+ICsKPiArI2RlZmluZSBfX1dPUkRTSVpFCQk2NAo+ICsjZGVmaW5l
IF9fV09SRFNJWkVfQ09NUEFUMzIJMQo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2
L3g4Nl82NC90eXBlcy5oIGIvaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvdHlwZXMuaAo+IG5l
dyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uNTU0N2IzNwo+IC0tLSAvZGV2L251
bGwKPiArKysgYi9pbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC90eXBlcy5oCj4gQEAgLTAsMCAr
MSwzOCBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUICovCj4gKy8qCj4gKyAq
IENvcHlyaWdodCAoYykgMjAwMi0yMDAzLCBLIEEgRnJhc2VyICYgUiBOZXVnZWJhdWVyCj4gKyAq
IENvcHlyaWdodCAoYykgMjAwNSwgR3J6ZWdvcnogTWlsb3MsIEludGVsIFJlc2VhcmNoIENhbWJy
aWRnZQo+ICsgKgo+ICsgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNo
YXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cj4gKyAqIG9mIHRoaXMgc29mdHdh
cmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0
bwo+ICsgKiBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRp
bmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZQo+ICsgKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2Rp
ZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKPiArICog
c2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hv
bSB0aGUgU29mdHdhcmUgaXMKPiArICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKPiArICoKPiArICogVGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KPiAr
ICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCj4g
KyAqCj4gKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJB
TlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SCj4gKyAqIElNUExJRUQsIElOQ0xVRElORyBCVVQg
Tk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAo+ICsgKiBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUKPiArICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBM
SUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUgo+ICsgKiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lO
Rwo+ICsgKiBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBP
UiBUSEUgVVNFIE9SIE9USEVSCj4gKyAqIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KPiArICov
Cj4gKwo+ICsjaWZuZGVmIF9fVUtBUkNIX1RZUEVTX0hfXwo+ICsjZXJyb3IgRG8gbm90IGluY2x1
ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKPiArI2VuZGlmCj4gKwo+ICsjaWZuZGVmIF9fQVNTRU1C
TFlfXwo+ICsKPiArc3RydWN0IF9fcHRlIHsgdW5zaWduZWQgbG9uZyBwdGU7IH07Cj4gKyNkZWZp
bmUgbnB0ZSh4KSAoKHN0cnVjdCBfX3B0ZSkgeyAoeCkgfSkKPiArCj4gKyNkZWZpbmUgX1dPUkQg
Ii5xdWFkIgo+ICsKPiArI2Vsc2UKPiArI2RlZmluZSBfV09SRCAucXVhZAo+ICsjZW5kaWYgLyog
IV9fQVNTRU1CTFlfXyAqLwo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2F0
b21pYy5oIGIvaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9hdG9taWMuaAo+IGRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAo+IGluZGV4IDk4NWMzODguLjAwMDAwMDAKPiAtLS0gYS9pbmNsdWRlL3VrL2Fy
Y2gveDg2XzY0L2F0b21pYy5oCj4gKysrIC9kZXYvbnVsbAo+IEBAIC0xLDQ1ICswLDAgQEAKPiAt
LyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLwo+IC0vKgo+IC0gKiBQ
b3J0IGZyb20gTWluaS1PUzogaW5jbHVkZS94ODYvb3MuaAo+IC0gKi8KPiAtLyoKPiAtICogQ29w
eXJpZ2h0IChjKSAyMDA5IENpdHJpeCBTeXN0ZW1zLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Cj4gLSAqCj4gLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAo+IC0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKPiAtICogYXJlIG1ldDoKPiAt
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKPiAtICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+IC0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+IC0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCj4gLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4gLSAqCj4gLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAo+IC0gKiBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKPiAtICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKPiAtICogQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQo+IC0g
KiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTAo+IC0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwo+IC0gKiBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikKPiAtICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKPiAtICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQo+IC0gKiBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GCj4gLSAqIFNVQ0ggREFNQUdFLgo+IC0gKi8KPiAtI2lmbmRlZiBfX1VLQVJD
SF9BVE9NSUNfSF9fCj4gLSNlcnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3Rs
eQo+IC0jZW5kaWYKPiAtCj4gLS8qKgo+IC0gKiB1a2FyY2hfZmluZF9sc2JpdCAtIGZpbmQgZmly
c3QgKGxvd2VzdCkgc2V0IGJpdCBpbiB3b3JkLgo+IC0gKiBAd29yZDogVGhlIHdvcmQgdG8gc2Vh
cmNoCj4gLSAqCj4gLSAqIFVuZGVmaW5lZCBpZiBubyBiaXQgZXhpc3RzLCBzbyBjb2RlIHNob3Vs
ZCBjaGVjayBhZ2FpbnN0IDAgZmlyc3QuCj4gLSAqLwo+IC1zdGF0aWMgaW5saW5lIHVuc2lnbmVk
IGxvbmcgdWthcmNoX2ZpbmRfbHNiaXQodW5zaWduZWQgbG9uZyB3b3JkKQo+IC17Cj4gLQlfX2Fz
bV9fKCJic2ZxICUxLCUwIgo+IC0JCToiPXIiICh3b3JkKQo+IC0JCToicm0iICh3b3JkKSk7Cj4g
LQlyZXR1cm4gd29yZDsKPiAtfQo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0
L2ludHNpemVzLmggYi9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2ludHNpemVzLmgKPiBkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCBlM2VmNTEwLi4wMDAwMDAwCj4gLS0tIGEvaW5jbHVk
ZS91ay9hcmNoL3g4Nl82NC9pbnRzaXplcy5oCj4gKysrIC9kZXYvbnVsbAo+IEBAIC0xLDQ1ICsw
LDAgQEAKPiAtLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwo+IC0v
Kgo+IC0gKiBBdXRob3JzOiBTaW1vbiBLdWVuemVyIDxzaW1vbi5rdWVuemVyQG5lY2xhYi5ldT4K
PiAtICoKPiAtICoKPiAtICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0ZC4sIE5F
QyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KPiAtICoKPiAtICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Cj4gLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwo+IC0gKiBhcmUgbWV0Ogo+IC0gKgo+IC0gKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+IC0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCj4gLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKPiAtICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KPiAtICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhv
bGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cwo+IC0gKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQo+IC0gKiAgICB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgo+
IC0gKgo+IC0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKPiAtICogQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+IC0g
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRQo+IC0gKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCj4gLSAqIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IKPiAtICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKPiAtICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCj4gLSAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCj4gLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCj4gLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCj4gLSAq
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgo+IC0gKgo+IC0gKiBUSElTIEhFQURFUiBNQVkg
Tk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgo+IC0gKi8KPiAtCj4gLSNp
ZiAoKCFkZWZpbmVkIF9fVUtBUkNIX1RZUEVTX0hfXykgJiYgKCFkZWZpbmVkIF9fVUtBUkNIX0xJ
TUlUU19IX18pKQo+IC0jZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkK
PiAtI2VuZGlmCj4gLQo+IC0jZGVmaW5lIF9fQ19JU184ICAgIC8qIGNoYXIgKi8KPiAtI2RlZmlu
ZSBfX1NfSVNfMTYgICAvKiBzaG9ydCAqLwo+IC0jZGVmaW5lIF9fSV9JU18zMiAgIC8qIGludCAq
Lwo+IC0jZGVmaW5lIF9fTF9JU182NCAgIC8qIGxvbmcgKi8KPiAtI2RlZmluZSBfX0xMX0lTXzY0
ICAvKiBsb25nIGxvbmcgKi8KPiAtI2RlZmluZSBfX1BUUl9JU182NCAvKiB2b2lkICogKi8KPiBk
aWZmIC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9sY3B1LmggYi9pbmNsdWRlL3VrL2Fy
Y2gveDg2XzY0L2xjcHUuaAo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IGNkNjY3
ZTUuLjAwMDAwMDAKPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaAo+ICsrKyAv
ZGV2L251bGwKPiBAQCAtMSw3MyArMCwwIEBACj4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVy
OiBCU0QtMi1DbGF1c2UgKi8KPiAtLyoKPiAtICogQXV0aG9yczogR3J6ZWdvcnogTWlsb3MgPGdt
MjgxQGNhbS5hYy51az4KPiAtICogICAgICAgICAgU2ltb24gS3VlbnplciA8c2ltb24ua3Vlbnpl
ckBuZWNsYWIuZXU+Cj4gLSAqCj4gLSAqIENvcHlyaWdodCAoYykgMjAwNSwgR3J6ZWdvcnogTWls
b3MsIEludGVsIFJlc2VhcmNoIENhbWJyaWRnZQo+IC0gKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5F
QyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uLgo+IC0gKgo+IC0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKPiAt
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCj4gLSAqIGFyZSBtZXQ6Cj4gLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
PiAtICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKPiAtICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+IC0gKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
Lgo+IC0gKgo+IC0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUiBBTkQgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKPiAtICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4gLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFCj4gLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9S
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKPiAtICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKPiAtICog
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMKPiAtICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCj4gLSAqIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
Cj4gLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkKPiAtICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgo+IC0gKiBTVUNIIERB
TUFHRS4KPiAtICovCj4gLQo+IC0jaWZuZGVmIF9fVUtBUkNIX0xDUFVfSF9fCj4gLSNlcnJvciBE
byBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQo+IC0jZW5kaWYKPiAtCj4gLXN0cnVj
dCBfX3JlZ3Mgewo+IC0JdW5zaWduZWQgbG9uZyByMTU7Cj4gLQl1bnNpZ25lZCBsb25nIHIxNDsK
PiAtCXVuc2lnbmVkIGxvbmcgcjEzOwo+IC0JdW5zaWduZWQgbG9uZyByMTI7Cj4gLQl1bnNpZ25l
ZCBsb25nIHJicDsKPiAtCXVuc2lnbmVkIGxvbmcgcmJ4Owo+IC0vKiBhcmd1bWVudHM6IG5vbiBp
bnRlcnJ1cHRzL25vbiB0cmFjaW5nIHN5c2NhbGxzIG9ubHkgc2F2ZSB1cHRvIGhlcmUqLwo+IC0J
dW5zaWduZWQgbG9uZyByMTE7Cj4gLQl1bnNpZ25lZCBsb25nIHIxMDsKPiAtCXVuc2lnbmVkIGxv
bmcgcjk7Cj4gLQl1bnNpZ25lZCBsb25nIHI4Owo+IC0JdW5zaWduZWQgbG9uZyByYXg7Cj4gLQl1
bnNpZ25lZCBsb25nIHJjeDsKPiAtCXVuc2lnbmVkIGxvbmcgcmR4Owo+IC0JdW5zaWduZWQgbG9u
ZyByc2k7Cj4gLQl1bnNpZ25lZCBsb25nIHJkaTsKPiAtCXVuc2lnbmVkIGxvbmcgb3JpZ19yYXg7
Cj4gLS8qIGVuZCBvZiBhcmd1bWVudHMgKi8KPiAtLyogY3B1IGV4Y2VwdGlvbiBmcmFtZSBvciB1
bmRlZmluZWQgKi8KPiAtCXVuc2lnbmVkIGxvbmcgcmlwOwo+IC0JdW5zaWduZWQgbG9uZyBjczsK
PiAtCXVuc2lnbmVkIGxvbmcgZWZsYWdzOwo+IC0JdW5zaWduZWQgbG9uZyByc3A7Cj4gLQl1bnNp
Z25lZCBsb25nIHNzOwo+IC0vKiB0b3Agb2Ygc3RhY2sgcGFnZSAqLwo+IC19Owo+IC0KPiAtI2lm
bmRlZiBtYgo+IC0jZGVmaW5lIG1iKCkgICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCJtZmVuY2Ui
IDogOiA6ICJtZW1vcnkiKQo+IC0jZW5kaWYKPiAtCj4gLSNpZm5kZWYgcm1iCj4gLSNkZWZpbmUg
cm1iKCkgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoImxmZW5jZSIgOiA6IDogIm1lbW9yeSIpCj4g
LSNlbmRpZgo+IC0KPiAtI2lmbmRlZiB3bWIKPiAtI2RlZmluZSB3bWIoKSAgIF9fYXNtX18gX192
b2xhdGlsZV9fICgic2ZlbmNlIiA6IDogOiAibWVtb3J5IikKPiAtI2VuZGlmCj4gZGlmZiAtLWdp
dCBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGltaXRzLmggYi9pbmNsdWRlL3VrL2FyY2gveDg2
XzY0L2xpbWl0cy5oCj4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggYTk2OWJkMS4u
MDAwMDAwMAo+IC0tLSBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGltaXRzLmgKPiArKysgL2Rl
di9udWxsCj4gQEAgLTEsNDYgKzAsMCBAQAo+IC0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog
QlNELTItQ2xhdXNlICovCj4gLS8qCj4gLSAqIENvcHlyaWdodCAoYykgMjAwOSwgQ2l0cml4IFN5
c3RlbXMsIEluYy4KPiAtICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0ZC4sIE5F
QyBDb3Jwb3JhdGlvbi4KPiAtICoKPiAtICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cj4gLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+IC0g
KiBhcmUgbWV0Ogo+IC0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCj4gLSAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Cj4gLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKPiAtICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KPiAtICoKPiAtICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElT
JycgQU5ECj4gLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+IC0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+IC0gKiBB
UkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFCj4gLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCj4gLSAqIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCj4g
LSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKQo+IC0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAo+IC0gKiBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZCj4gLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKPiAtICogU1VDSCBEQU1BR0UuCj4gLSAqLwo+IC0K
PiAtI2lmbmRlZiBfX1VLQVJDSF9MSU1JVFNfSF9fCj4gLSNlcnJvciBEbyBub3QgaW5jbHVkZSB0
aGlzIGhlYWRlciBkaXJlY3RseQo+IC0jZW5kaWYKPiAtCj4gLSNkZWZpbmUgX19QQUdFX1NISUZU
CQkxMgo+IC0KPiAtI2lmZGVmIF9fQVNTRU1CTFlfXwo+IC0jZGVmaW5lIF9fUEFHRV9TSVpFCQko
MSA8PCBfX1BBR0VfU0hJRlQpCj4gLSNkZWZpbmUgX19QQUdFX01BU0sJCSh+KChfX1BBR0VfU0la
RSkgLSAxKSkKPiAtI2Vsc2UKPiAtI2RlZmluZSBfX1BBR0VfU0laRQkJKDFVTEwgPDwgX19QQUdF
X1NISUZUKQo+IC0jZGVmaW5lIF9fUEFHRV9NQVNLCQkofigoX19QQUdFX1NJWkUpIC0gMSkpCj4g
LSNlbmRpZgo+IC0KPiAtI2RlZmluZSBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUgk0Cj4gLSNkZWZp
bmUgX19TVEFDS19TSVpFCQkoX19QQUdFX1NJWkUgKiAoMSA8PCBfX1NUQUNLX1NJWkVfUEFHRV9P
UkRFUikpCj4gLQo+IC0jZGVmaW5lIF9fV09SRFNJWkUJCTY0Cj4gLSNkZWZpbmUgX19XT1JEU0la
RV9DT01QQVQzMgkxCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvdHlwZXMu
aCBiL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvdHlwZXMuaAo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAo+IGluZGV4IDU1NDdiMzcuLjAwMDAwMDAKPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gveDg2
XzY0L3R5cGVzLmgKPiArKysgL2Rldi9udWxsCj4gQEAgLTEsMzggKzAsMCBAQAo+IC0vKiBTUERY
LUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUICovCj4gLS8qCj4gLSAqIENvcHlyaWdodCAoYykgMjAw
Mi0yMDAzLCBLIEEgRnJhc2VyICYgUiBOZXVnZWJhdWVyCj4gLSAqIENvcHlyaWdodCAoYykgMjAw
NSwgR3J6ZWdvcnogTWlsb3MsIEludGVsIFJlc2VhcmNoIENhbWJyaWRnZQo+IC0gKgo+IC0gKiBQ
ZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNv
biBvYnRhaW5pbmcgYSBjb3B5Cj4gLSAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQg
ZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0bwo+IC0gKiBkZWFsIGluIHRo
ZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0
aW9uIHRoZQo+IC0gKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNo
LCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKPiAtICogc2VsbCBjb3BpZXMgb2YgdGhl
IFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMK
PiAtICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9uczoKPiAtICoKPiAtICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVy
bWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KPiAtICogYWxsIGNvcGllcyBvciBz
dWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCj4gLSAqCj4gLSAqIFRIRSBTT0ZU
V0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBF
WFBSRVNTIE9SCj4gLSAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhF
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAo+IC0gKiBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUK
PiAtICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJ
TSwgREFNQUdFUyBPUiBPVEhFUgo+IC0gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9O
IE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORwo+IC0gKiBGUk9NLCBPVVQg
T0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVS
Cj4gLSAqIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KPiAtICovCj4gLQo+IC0jaWZuZGVmIF9f
VUtBUkNIX1RZUEVTX0hfXwo+IC0jZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGly
ZWN0bHkKPiAtI2VuZGlmCj4gLQo+IC0jaWZuZGVmIF9fQVNTRU1CTFlfXwo+IC0KPiAtc3RydWN0
IF9fcHRlIHsgdW5zaWduZWQgbG9uZyBwdGU7IH07Cj4gLSNkZWZpbmUgbnB0ZSh4KSAoKHN0cnVj
dCBfX3B0ZSkgeyAoeCkgfSkKPiAtCj4gLSNkZWZpbmUgX1dPUkQgIi5xdWFkIgo+IC0KPiAtI2Vs
c2UKPiAtI2RlZmluZSBfV09SRCAucXVhZAo+IC0jZW5kaWYgLyogIV9fQVNTRU1CTFlfXyAqLwo+
IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9z
LWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0
cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 21:46:47 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 21:46:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3qEw-0006yj-7W; Wed, 04 Apr 2018 21:46:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3qEu-0006ye-Fs
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 21:46:44 +0000
X-Inumbo-ID: d60b567e-3851-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id d60b567e-3851-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 21:47:57 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id D0E941038CF;
 Wed,  4 Apr 2018 23:46:41 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 0_k5KlqFP9n1; Wed,  4 Apr 2018 23:46:41 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id A4C4A103892;
 Wed,  4 Apr 2018 23:46:31 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 23:46:31 +0200
To: Wei Chen <Wei.Chen@arm.com>, <minios-devel@lists.xenproject.org>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-6-git-send-email-Wei.Chen@arm.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <92c97498-6c6e-5256-e292-6a0e902162c2@neclab.eu>
Date: Wed, 4 Apr 2018 23:46:30 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1521085152-77655-6-git-send-email-Wei.Chen@arm.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 5/9] build: Add a makefile rule
 to check valid gcc version
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gMTUuMDMuMjAxOCAwNDozOSwgV2VpIENoZW4gd3JvdGU6Cj4gRGlmZmVyZW50IEdDQyB2ZXJz
aW9ucyBzdXBwb3J0IGRpZmZlcmVudCBtYXJjaCwgbWNwdSBhbmQgbXR1bmUgbGlzdC4KPiBJbiBv
cmRlciB0byBhdm9pZCB1c2VycyB0byBzZWxlY3QgdW5zdXBwb3J0ZWQgb3B0aW1pemF0aW9uIHBy
b2Nlc3Nvcgo+IGZvciB0aGUgR0NDIHRoZXkgdXNlZC4gV2UgYWRkIHRoaXMgY2hlY2tfdmFsaWRf
Z2NjX3ZlcnNpb24gcnVsZSB0bwo+IGNoZWNrIEdDQyB2ZXJzaW9uIGFuZCBwcm92aWRlIHRoZSBt
aW5pbXVtIHZlcnNpb24gZm9yIHVzZXIgc2VsZWN0ZWQKPiBwcm9jZXNzb3IuCj4gCj4gU2lnbmVk
LW9mZi1ieTogV2VpIENoZW4gPFdlaS5DaGVuQGFybS5jb20+Cj4gLS0tCj4gICBNYWtlZmlsZSAg
ICAgICAgICAgICAgICAgICAgIHwgNCArKysrCj4gICBzdXBwb3J0L2J1aWxkL01ha2VmaWxlLnJ1
bGVzIHwgOCArKysrKysrKwo+ICAgMiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspCj4g
Cj4gZGlmZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKPiBpbmRleCA0OWU1MDcwLi45OTdh
MzU5IDEwMDY0NAo+IC0tLSBhL01ha2VmaWxlCj4gKysrIGIvTWFrZWZpbGUKPiBAQCAtNDI2LDYg
KzQyNiwxMCBAQCBMSUZUT0ZGCQk6PSBsaWZ0b2ZmIC1lIC1zCj4gICBvdmVycmlkZSBBUkZMQUdT
Oj0gcmNzCj4gICBDQ19WRVJTSU9OCTo9ICQoc2hlbGwgJChDQykgLS12ZXJzaW9uIHwgXAo+ICAg
CQkgICBzZWQgLW4gLXIgJ3MvXi4qIChbMC05XSopXC4oWzAtOV0qKVwuKFswLTldKilbIF0qLiov
XDEuXDIvcCcpCj4gKyMgUmV0cmlldmUgR0NDIG1ham9yIGFuZCBtaW5vciBudW1iZXIgZnJvbSBD
Q19WRVJTSU9OLiBUaGV5IHdvdWxkIGJlIHVzZWQKPiArIyB0byBzZWxlY3QgY29ycmVjdCBvcHRp
bWl6YXRpb24gcGFyYW1ldGVycyBmb3IgdGFyZ2V0IENQVXMuCj4gK0NDX1ZFUl9NQUpPUiAgIDo9
ICQod29yZCAxLCQoc3Vic3QgLiwgLCQoQ0NfVkVSU0lPTikpKQo+ICtDQ19WRVJfTUlOT1IgICA6
PSAkKHdvcmQgMiwkKHN1YnN0IC4sICwkKENDX1ZFUlNJT04pKSkKPiAgIAo+ICAgQVNGTEFHUwkJ
Kz0gLURDQ19WRVJTSU9OPSQoQ0NfVkVSU0lPTikKPiAgIENGTEFHUwkJKz0gLURDQ19WRVJTSU9O
PSQoQ0NfVkVSU0lPTikKPiBkaWZmIC0tZ2l0IGEvc3VwcG9ydC9idWlsZC9NYWtlZmlsZS5ydWxl
cyBiL3N1cHBvcnQvYnVpbGQvTWFrZWZpbGUucnVsZXMKPiBpbmRleCBlNGFjMjY0Li5lNTFmOTAy
IDEwMDY0NAo+IC0tLSBhL3N1cHBvcnQvYnVpbGQvTWFrZWZpbGUucnVsZXMKPiArKysgYi9zdXBw
b3J0L2J1aWxkL01ha2VmaWxlLnJ1bGVzCj4gQEAgLTI5LDYgKzI5LDE0IEBAIGxjID0gJChzdWJz
dCBBLGEsJChzdWJzdCBCLGIsJChzdWJzdCBDLGMsJChzdWJzdCBELGQsJChzdWJzdCBFLGUsJChz
dWJzdCBGLGYsJChzCj4gICAjIHVwcGVyIGNhc2UKPiAgIHVjID0gJChzdWJzdCBhLEEsJChzdWJz
dCBiLEIsJChzdWJzdCBjLEMsJChzdWJzdCBkLEQsJChzdWJzdCBlLEUsJChzdWJzdCBmLEYsJChz
dWJzdCBnLEcsJChzdWJzdCBoLEgsJChzdWJzdCBpLEksJChzdWJzdCBqLEosJChzdWJzdCBrLEss
JChzdWJzdCBsLEwsJChzdWJzdCBtLE0sJChzdWJzdCBuLE4sJChzdWJzdCBvLE8sJChzdWJzdCBw
LFAsJChzdWJzdCBxLFEsJChzdWJzdCByLFIsJChzdWJzdCBzLFMsJChzdWJzdCB0LFQsJChzdWJz
dCB1LFUsJChzdWJzdCB2LFYsJChzdWJzdCB3LFcsJChzdWJzdCB4LFgsJChzdWJzdCB5LFksJChz
dWJzdCB6LFosJCgxKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpCj4gICAKPiArIyBjaGVjayB3
aGV0aGVyIHRoZSBHQ0MgbWVldHMgdGhlIG1pbmltdW0gdmVyc2lvbiByZXF1aXJlbWVudAo+ICsj
ICQoMSk6IFRoZSBtaW5pbXVtIEdDQyBtYWpvciBudW1iZXIKPiArIyAkKDIpOiBUaGUgbWluaW11
bSBHQ0MgbWlub3IgbnVtYmVyCj4gKyMgJCgzKTogVGhlIG9wdGltaXphdGlvbiB0YXJnZXQgQ1BV
Cj4gK2RlZmluZSBjaGVja192YWxpZF9nY2NfdmVyc2lvbiA9Cj4gKyQoaWYgJChzaGVsbCB0ZXN0
ICQoQ0NfVkVSX01BSk9SKSAtZ3QgJCgxKSAtbyAnKCcgJChDQ19WRVJfTUFKT1IpIC1lcSAkKDEp
IC1hICQoQ0NfVkVSX01JTk9SKSAtZ2UgJCgyKSAnKScgJiYgZWNobyB5KSwsXAo+ICsgICAgICQo
ZXJyb3IgT3B0aW1pemF0aW9uIGZvciAkKDMpIHJlcXVpcmVzIEdDQyB2ZXJzaW9uID49ICQoMSku
JCgyKSkpCj4gK2VuZGVmCgpIdW0sIEkgdGhpbmsgdGhpcyBjb3VsZCBiZSB1c2VmdWwgdG8gYSBs
b3Qgb2Ygb3RoZXIgcGxhY2VzIGluIFVuaWtyYWZ0LgpCdXQgZm9yIHRoaXMgd2Ugc2hvdWxkIGRv
IGEgc3BsaXQuIE9uZSBkZWZpbml0aW9uIHNob3VsZCBqdXN0IGRvIHRoZSAKdGVzdCBzbyB0aGF0
IHRoZSByZXN1bHQgY291bGQgYmUgdXNlZCBmb3IgaWYgc3RhdGVtZW50cy4KSSB3b3VsZCBjYWxs
IHRoaXMgb25lICd0ZXN0X2djY192ZXJzaW9uJy4KCllvdXJzIHNob3VsZCB1c2UgJ3Rlc3RfZ2Nj
X3ZlcnNpb24nLCBhbmQgdXNlICQoZXJyb3IgKSBpZiBHQ0MgaXMgdG9vIApvbGQuIEkgd291bGQg
YWxzbyB0aGUgbm90IHRhbGsgYWJvdXQgb3B0aW1pemF0aW9uIGluIHRoZSBlcnJvciBtZXNzYWdl
LiAKWW91IGNvdWxkIHRyZWF0ICQoMykgYXMgb3B0aW9uYWwgYXJndW1lbnQgb3IgZXZlbiByZW1v
dmUgaXQuCgpIb3cgYWJvdXQgc29tZXRoaW5nIGxpa2UgdGhpczoKClJlcXVpcmUgR0NDIHZlcnNp
b24gPj0gJCgxKS4kKDIpIChmb3VuZCAkKENDX1ZFUl9NQUpPUikuJChDQ19WRVJfTUlOT1IpKQoK
PiAgIAo+ICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPiAgICMKPiAKCl9fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxp
c3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJv
amVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 21:49:51 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 21:49:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3qHu-00071c-GF; Wed, 04 Apr 2018 21:49:50 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3qHt-00071X-3H
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 21:49:49 +0000
X-Inumbo-ID: 009a7ef6-3852-11e8-9728-bc764e045a96
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 009a7ef6-3852-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 23:49:09 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 55A791038CF;
 Wed,  4 Apr 2018 23:49:45 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id GkMVVl8DjJDZ; Wed,  4 Apr 2018 23:49:45 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 31FAC103892;
 Wed,  4 Apr 2018 23:49:35 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 23:49:34 +0200
To: Wei Chen <Wei.Chen@arm.com>, <minios-devel@lists.xenproject.org>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-7-git-send-email-Wei.Chen@arm.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <e72fdd16-25e4-9a3b-3ec5-a44dd08f49c4@neclab.eu>
Date: Wed, 4 Apr 2018 23:49:33 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1521085152-77655-7-git-send-email-Wei.Chen@arm.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 6/9] build: Add arm64
 architecture config to menuconfig
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gMTUuMDMuMjAxOCAwNDozOSwgV2VpIENoZW4gd3JvdGU6Cj4gQWRkIHRoZSBhcm02NCBlbnRy
eSBmb3IgbWVudWNvbmZpZy4gQXMgZGlmZmVyZW50IHNpbGljb24gdmVuZG9ycyBtYXkKPiBoYXZl
IGRpZmZlcmVudCA2NC1iaXQgQVJNdjggU29Dcy4gSWYgd2Ugd2FudCB0byBhZGQgdGhlbSB0byBD
b25maWcsCj4gaXQgd2lsbCBiZSBhIGxhcmdlIGxpc3QuIFNvIHdlIG9ubHkgcHJvdmlkZSBBUk0n
cyBjb3J0ZXggQTUzfkE3NSBDUFVzCj4gZm9yICJQcm9jZXNzb3IgT3B0aW1pemF0aW9uIgo+IAo+
IElmIHdlIHVzZSBNQVJDSF8gYXMgdGhlIHByZWZpeCBmb3IgQVJNNjQgQ1BVcyBhcyB4ODYsIHdo
ZW4gd2Ugc2VsZWN0Cj4gImdlbmVyaWMiLCB0aGUgTUFSQ0hfR0VORVJJQyB3aWxsIGNvbmZsaWN0
IHdpdGggeDg2J3MgTUFSQ0hfR0VORVJJQy4KPiBTbywgd2UgdXNlIE1BUkNIX0FSTTY0XyBmb3Ig
QVJNNjQgYXMgdGhlIHByZWZpeC4KCkh1bSwgdGhlIHNhbWUgc2hvdWxkIGhhcHBlbiB3aXRoIEFS
TTMyLCByaWdodD8KQW5kIHdlIHNob3VsZCBldmVuIHJlbmFtZSB0aGUgTUFSQ0hfKiBmb3IgeDg2
LiBDYW4geW91IGFkZCB0aGVzZSBwYXRjaGVzIAp0byB5b3VyIHNlcmllcz8KCj4gCj4gU2lnbmVk
LW9mZi1ieTogV2VpIENoZW4gPFdlaS5DaGVuQGFybS5jb20+Cj4gLS0tCj4gICBhcmNoL0FyY2gu
dWsgICAgICAgfCAgMiArKwo+ICAgYXJjaC9Db25maWcudWsgICAgIHwgIDUgKysrLQo+ICAgYXJj
aC9hcm0vQ29uZmlnLnVrIHwgNjcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKystCj4gICAzIGZpbGVzIGNoYW5nZWQsIDcyIGluc2VydGlvbnMoKyks
IDIgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2FyY2gvQXJjaC51ayBiL2FyY2gvQXJj
aC51awo+IGluZGV4IDY0ZjQxOGMuLmVkY2JkZDQgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9BcmNoLnVr
Cj4gKysrIGIvYXJjaC9BcmNoLnVrCj4gQEAgLTEsNiArMSw4IEBACj4gICAjIFNlbGVjdHMgYXJj
aGl0ZWN0dXJlIGFjY29yZGluZyB0byAuY29uZmlnCj4gICBpZmVxICgkKEFSQ0hfWDg2XzY0KSx5
KQo+ICAgVUtfQVJDSCA6PSB4ODZfNjQKPiArZWxzZSBpZmVxICgkKEFSQ0hfQVJNXzY0KSx5KQo+
ICtVS19BUkNIIDo9IGFybTY0Cj4gICBlbHNlIGlmZXEgKCQoQVJDSF9BUk1fMzIpLHkpCj4gICBV
S19BUkNIIDo9IGFybQo+ICAgZW5kaWYKPiBkaWZmIC0tZ2l0IGEvYXJjaC9Db25maWcudWsgYi9h
cmNoL0NvbmZpZy51awo+IGluZGV4IGEwNDAyODguLjkyYWE2YzYgMTAwNjQ0Cj4gLS0tIGEvYXJj
aC9Db25maWcudWsKPiArKysgYi9hcmNoL0NvbmZpZy51awo+IEBAIC0xLDEyICsxLDE1IEBACj4g
ICBjaG9pY2UKPiAgIAlwcm9tcHQgIkFyY2hpdGVjdHVyZSIKPiAgIAlkZWZhdWx0IEFSQ0hfQVJN
XzMyIGlmIChVS19BUkNIID0gImFybSIpCj4gKwlkZWZhdWx0IEFSQ0hfQVJNXzY0IGlmIChVS19B
UkNIID0gImFybTY0IikKPiAgIAlkZWZhdWx0IEFSQ0hfWDg2XzY0Cj4gICAJaGVscAo+ICAgCSAg
U2VsZWN0IHRoZSB0YXJnZXQgQ1BVIGFyY2hpdGVjdHVyZS4KPiAgIAo+ICAgY29uZmlnIEFSQ0hf
WDg2XzY0Cj4gICAgICAgICAgYm9vbCAieDg2IGNvbXBhdGlibGUgKDY0IGJpdHMpIgo+ICtjb25m
aWcgQVJDSF9BUk1fNjQKPiArICAgICAgIGJvb2wgIkFSTXY4IGNvbXBhdGlibGUgKDY0IGJpdHMp
Igo+ICAgY29uZmlnIEFSQ0hfQVJNXzMyCj4gICAgICAgICAgYm9vbCAiQVJNdjcgY29tcGF0aWJs
ZSAoMzIgYml0cykiCj4gICAKPiBAQCAtMTUsNiArMTgsNiBAQCBlbmRjaG9pY2UKPiAgIGlmIChB
UkNIX1g4Nl82NCkKPiAgIAlzb3VyY2UgImFyY2gveDg2L0NvbmZpZy51ayIKPiAgIGVuZGlmCj4g
LWlmIChBUkNIX0FSTV8zMikKPiAraWYgKEFSQ0hfQVJNXzMyIHx8IEFSQ0hfQVJNXzY0KQo+ICAg
CXNvdXJjZSAiYXJjaC9hcm0vQ29uZmlnLnVrIgo+ICAgZW5kaWYKPiBkaWZmIC0tZ2l0IGEvYXJj
aC9hcm0vQ29uZmlnLnVrIGIvYXJjaC9hcm0vQ29uZmlnLnVrCj4gaW5kZXggNDI2YzExMy4uOTMy
Y2JkOSAxMDA2NDQKPiAtLS0gYS9hcmNoL2FybS9Db25maWcudWsKPiArKysgYi9hcmNoL2FybS9D
b25maWcudWsKPiBAQCAtMSwxOCArMSw4MyBAQAo+ICAgY2hvaWNlCj4gICAJcHJvbXB0ICJQcm9j
ZXNzb3IgT3B0aW1pemF0aW9uIgo+IC0JZGVmYXVsdCBNQVJDSF9DT1JURVhBNwo+ICsJZGVmYXVs
dCBNQVJDSF9DT1JURVhBNyBpZiBBUkNIX0FSTV8zMgo+ICsJZGVmYXVsdCBNQVJDSF9BUk02NF9H
RU5FUklDIGlmIEFSQ0hfQVJNXzY0Cj4gICAJaGVscAo+ICAgCQlPcHRpbWl6ZSB0aGUgY29kZSBm
b3Igc2VsZWN0ZWQgdGFyZ2V0IHByb2Nlc3Nvcgo+ICAgCj4gICBjb25maWcgTUFSQ0hfQ09SVEVY
QTcKPiAgIAlib29sICJHZW5lcmljIENvcnRleCBBNyIKPiArCWRlcGVuZHMgb24gQVJDSF9BUk1f
MzIKPiAgIAloZWxwCj4gICAJCUNvbXBpbGUgZm9yIENvcnRleC1BNyBDUFVzLCBubyBoYXJkd2Fy
ZSBGUFUgc3VwcG9ydAo+ICAgCj4gICBjb25maWcgTUFSQ0hfQTIwTkVPTgo+ICAgCWJvb2wgIkNv
cnRleCBBNzogQWxsV2lubmVyIEEyMCIKPiArCWRlcGVuZHMgb24gQVJDSF9BUk1fMzIKPiAgIAlo
ZWxwCj4gICAJCUNvbXBpbGUgZm9yIEFsbFdpbm5lciBBMjAgKENvcnRleC1BNykgQ1BVcwo+ICAg
CQlUaGUgTkVPTiBGUFUgaXMgZW5hYmxlZC4gUGxlYXNlIG5vdGUgdGhhdCBORU9OIGlzCj4gICAJ
CW5vdCBmdWxseSBJRUVFIDc1NCBjb21wbGlhbnQuCj4gKwo+ICtjb25maWcgTUFSQ0hfQVJNNjRf
TkFUSVZFCj4gKwlib29sICJBdXRvLWRldGVjdCBob3N0IENQVSIKPiArCWRlcGVuZHMgb24gQVJD
SF9BUk1fNjQKPiArCWhlbHAKPiArCQlPcHRpbWl6ZSBjb21waWxhdGlvbiB0byBob3N0IENQVS4g
UGxlYXNlIG5vdGUgdGhhdCB0aGlzCj4gKwkJb3B0aW9uIHdpbGwgZmFpbCBpbiBjYXNlIG9mIGNy
b3NzLWNvbXBpbGF0aW9uCj4gKwo+ICtjb25maWcgTUFSQ0hfQVJNNjRfR0VORVJJQwo+ICsJYm9v
bCAiR2VuZXJpYyBBUk12OCBDUFUiCj4gKwlkZXBlbmRzIG9uIEFSQ0hfQVJNXzY0Cj4gKwloZWxw
Cj4gKwkJQ29tcGlsZSBmb3IgR2VuZXJpYyBBUk12OCBjb21wYXRpYmxlIENQVXMKPiArCj4gK2Nv
bmZpZyBNQVJDSF9BUk02NF9DT1JURVhBNTMKPiArCWJvb2wgIkdlbmVyaWMgQVJNdjggQ29ydGV4
IEE1MyIKPiArCWRlcGVuZHMgb24gQVJDSF9BUk1fNjQKPiArCWhlbHAKPiArCQlDb21waWxlIGZv
ciBBUk12OCBDb3J0ZXgtQTUzIENQVXMuIFN1cHBvcnQgVHJ1c3Rab25lLCBORU9OCj4gKwkJYWR2
YW5jZWQgU0lNRCwgVkZQdjQsIGhhcmR3YXJlIHZpcnR1YWxpemF0aW9uLCBkdWFsIGlzc3VlLAo+
ICsJCWluLW9yZGVyIHBpcGVsaW5lCj4gKwo+ICtjb25maWcgTUFSQ0hfQVJNNjRfQ09SVEVYQTU3
Cj4gKwlib29sICJHZW5lcmljIEFSTXY4IENvcnRleCBBNTciCj4gKwlkZXBlbmRzIG9uIEFSQ0hf
QVJNXzY0Cj4gKwloZWxwCj4gKwkJQ29tcGlsZSBmb3IgQVJNdjggQ29ydGV4LUE1NyBDUFVzLiBT
dXBwb3J0IFRydXN0Wm9uZSwgTkVPTgo+ICsJCWFkdmFuY2VkIFNJTUQsIFZGUHY0LCBoYXJkd2Fy
ZSB2aXJ0dWFsaXphdGlvbiwgMy13YXkKPiArCQlzdXBlcnNjYWxhciwgZGVlcGx5IG91dC1vZi1v
cmRlciBwaXBlbGluZQo+ICsKPiArY29uZmlnIE1BUkNIX0FSTTY0X0NPUlRFWEE3Mgo+ICsJYm9v
bCAiR2VuZXJpYyBBUk12OCBDb3J0ZXggQTcyIgo+ICsJZGVwZW5kcyBvbiBBUkNIX0FSTV82NAo+
ICsJaGVscAo+ICsJCUNvbXBpbGUgZm9yIEFSTXY4IENvcnRleC1BNzIgQ1BVcy4gU3VwcG9ydCBU
cnVzdFpvbmUsIE5FT04KPiArCQlhZHZhbmNlZCBTSU1ELCBWRlB2NCwgaGFyZHdhcmUgdmlydHVh
bGl6YXRpb24sIDMtd2F5Cj4gKwkJc3VwZXJzY2FsYXIsIGRlZXBseSBvdXQtb2Ytb3JkZXIgcGlw
ZWxpbmUKPiArCj4gK2NvbmZpZyBNQVJDSF9BUk02NF9DT1JURVhBNzMKPiArCWJvb2wgIkdlbmVy
aWMgQVJNdjggQ29ydGV4IEE3MyIKPiArCWRlcGVuZHMgb24gQVJDSF9BUk1fNjQKPiArCWhlbHAK
PiArCQlDb21waWxlIGZvciBBUk12OCBDb3J0ZXgtQTczIENQVXMuIFN1cHBvcnQgVHJ1c3Rab25l
LCBORU9OCj4gKwkJYWR2YW5jZWQgU0lNRCwgVkZQdjQsIGhhcmR3YXJlIHZpcnR1YWxpemF0aW9u
LCAyLXdheQo+ICsJCXN1cGVyc2NhbGFyLCBkZWVwbHkgb3V0LW9mLW9yZGVyIHBpcGVsaW5lCj4g
Kwo+ICtjb25maWcgTUFSQ0hfQVJNNjRfQ09SVEVYQTU1Cj4gKwlib29sICJHZW5lcmljIEFSTXY4
LjIgQ29ydGV4IEE1NSIKPiArCWRlcGVuZHMgb24gQVJDSF9BUk1fNjQKPiArCWhlbHAKPiArCQlD
b21waWxlIGZvciBBUk12OC4yIENvcnRleC1BNTUgQ1BVcy4gU3VwcG9ydCBUcnVzdFpvbmUsIE5F
T04KPiArCQlhZHZhbmNlZCBTSU1ELCBWRlB2NCwgaGFyZHdhcmUgdmlydHVhbGl6YXRpb24sIHRy
aXBsZSBpc3N1ZSwKPiArCQlpbi1vcmRlciBwaXBlbGluZQo+ICsKPiArY29uZmlnIE1BUkNIX0FS
TTY0X0NPUlRFWEE3NQo+ICsJYm9vbCAiR2VuZXJpYyBBUk12OC4yIENvcnRleCBBNzUiCj4gKwlk
ZXBlbmRzIG9uIEFSQ0hfQVJNXzY0Cj4gKwloZWxwCj4gKwkJQ29tcGlsZSBmb3IgQVJNdjguMiBD
b3J0ZXgtQTc1IENQVXMuIFN1cHBvcnQgVHJ1c3Rab25lLCBORU9OCj4gKwkJYWR2YW5jZWQgU0lN
RCwgVkZQdjQsIGhhcmR3YXJlIHZpcnR1YWxpemF0aW9uLCAzLXdheQo+ICsJCXN1cGVyc2NhbGFy
LCBkZWVwbHkgb3V0LW9mLW9yZGVyIHBpcGVsaW5lCj4gKwo+ICAgZW5kY2hvaWNlCj4gCgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwg
bWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp
c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 21:51:15 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 21:51:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3qJG-0007X4-Kg; Wed, 04 Apr 2018 21:51:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3qJF-0007Wv-Lf
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 21:51:13 +0000
X-Inumbo-ID: 770a93cf-3852-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 770a93cf-3852-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 21:52:27 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 284791038CF;
 Wed,  4 Apr 2018 23:51:12 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id fAH3P5FzpPkc; Wed,  4 Apr 2018 23:51:12 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 03A7C103892;
 Wed,  4 Apr 2018 23:51:02 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 23:51:01 +0200
To: Wei Chen <Wei.Chen@arm.com>, <minios-devel@lists.xenproject.org>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-8-git-send-email-Wei.Chen@arm.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <793e5227-ed3e-ca24-6248-135a802300f5@neclab.eu>
Date: Wed, 4 Apr 2018 23:51:00 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1521085152-77655-8-git-send-email-Wei.Chen@arm.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 7/9] build: Add a macro to check
 and add gcc flags for target CPU
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAxNS4wMy4yMDE4IDA0OjM5LCBXZWkgQ2hlbiB3cm90ZToKPiBJbiBsYXRlciBwYXRjaGVz
LCB3ZSB3aWxsIGFkZCBnY2MgZmxhZ3MgZm9yIG5ldyBhZGRlZCBBUk02NCBDUFVzLgo+IFdlIGhh
dmUgdG8gY2hlY2sgYW5kIGFkZCBmbGFncyBmb3IgZWFjaCB0YXJnZXQgQ1BVLiBTbyBpdCdzIGJl
dHRlcgo+IHRvIGFkZCBhIG1hY3JvIHRvIHJlZHVjZSByZWR1bmRhbmN5IE1ha2VmaWxlIGNvZGVz
Lgo+IAo+IFNpZ25lZC1vZmYtYnk6IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPgo+IC0tLQo+
ICAgYXJjaC9hcm0vTWFrZWZpbGUudWsgfCAxMiArKysrKysrKysrKysKPiAgIDEgZmlsZSBjaGFu
Z2VkLCAxMiBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL01ha2VmaWxl
LnVrIGIvYXJjaC9hcm0vTWFrZWZpbGUudWsKPiBpbmRleCA3ODBhMDM1Li5lN2Y3YjQ5IDEwMDY0
NAo+IC0tLSBhL2FyY2gvYXJtL01ha2VmaWxlLnVrCj4gKysrIGIvYXJjaC9hcm0vTWFrZWZpbGUu
dWsKPiBAQCAtMSwzICsxLDE1IEBACj4gKyMgZGVmaW5lIGEgbWFjcm8gdG8gY2hlY2sgdGhlIEdD
QyB2ZXJzaW9uIGFuZCBhZGQgb3B0aW1pemF0aW9uIGZsYWdzCj4gKyMgZm9yIHRhcmdldCBDUFU6
Cj4gKyMgJCgxKTogVGhlIGZsYWcgZm9yIC1tYXJjaAo+ICsjICQoMik6IFRoZSBmbGFnIGZvciAt
bWNwdSBhbmQgLW10dW5lCj4gKyMgJCgzKTogVGhlIG1pbmltdW0gR0NDIG1ham9yIG51bWJlciBm
b3IgdGFyZ2V0IENQVQo+ICsjICQoNCk6IFRoZSBtaW5pbXVtIEdDQyBtaW5vciBudW1iZXIgZm9y
IHRhcmdldCBDUFUKPiArZGVmaW5lIHNldF9jY19mbGFncyA9Cj4gKyQoY2FsbCBjaGVja192YWxp
ZF9nY2NfdmVyc2lvbiwkKDMpLCQoNCksJCgyKSkKPiArQ0ZMQUdTLXkgICArPSAtbWFyY2g9JCgx
KSAtbWNwdT0kKDIpIC1tdHVuZT0kKDIpCj4gK0NYWEZMQUdTLXkgKz0gLW1hcmNoPSQoMSkgLW1j
cHU9JCgyKSAtbXR1bmU9JCgyKQo+ICtlbmRlZgo+ICsKCkluIG9yZGVyIHRvIGF2b2lkIGFueSBk
ZWZpbml0aW9uIGNsYXNoZXMgaW4gdGhlIGZ1dHVyZSwgSSBwcmVmZXIgdG8gaGF2ZSAKdGhpcyBp
biBzdXBwb3J0L2J1aWxkL01ha2VmaWxlLnJ1bGVzIC4gVGhlIG5hbWUgInNldF9jY19mbGFncyIg
aXMgYWxzbyAKdG9vIGdlbmVyaWMsIGl0IGNvdWxkIG1lYW4gc2V0dGluZyBvZiBhbnkgdHlwZSBv
ZiBjYyBmbGFnLiBDYW4geW91IApjaG9vc2Ugc29tZXRoaW5nIHRoYXQgaXMgY2xvc2VyPyBJdCBj
aGVja3MgdGhhdCBHQ0Mgc3VwcG9ydHMgYSB0YXJnZXQgCmNwdSBhbmQgc2V0cyB0aGUgR0NDIHBh
cmFtZXRlcnMuCgo+ICAgIyBTZXR1cCBjb21waWxlciBmbGFncyBhbmQgb2JqZWN0cyBmb3IgYXJt
MzIKPiAgIGlmZXEgKCQoVUtfQVJDSCksYXJtKQo+ICAgCj4gCgpfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1p
bmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qu
b3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 21:54:38 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 21:54:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3qMW-0007br-Td; Wed, 04 Apr 2018 21:54:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3qMV-0007bl-4d
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 21:54:35 +0000
X-Inumbo-ID: ee92f7ec-3852-11e8-8249-2fda3a446a53
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id ee92f7ec-3852-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 21:55:48 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id 55DC3F200C;
 Wed,  4 Apr 2018 23:54:32 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id iCqY8ej2Yoez; Wed,  4 Apr 2018 23:54:32 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id 1E618F2001;
 Wed,  4 Apr 2018 23:54:22 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 23:54:21 +0200
To: Wei Chen <Wei.Chen@arm.com>, <minios-devel@lists.xenproject.org>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-9-git-send-email-Wei.Chen@arm.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <b1a294b3-87a2-0c99-cb47-1e4cfd8999bd@neclab.eu>
Date: Wed, 4 Apr 2018 23:54:20 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1521085152-77655-9-git-send-email-Wei.Chen@arm.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 8/9] build: Add compiler and
 flags for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

RmluZS4gSSB3b3VsZCByZS1waHJhc2UgdGhlIG1lc3NhZ2UgYSBiaXQgYW5kIHNheSB3aGljaCBD
b3J0ZXggbW9kZWxzIAphcmUgYWRkZWQuCgpPbiAxNS4wMy4yMDE4IDA0OjM5LCBXZWkgQ2hlbiB3
cm90ZToKPiBJbiBvcmRlciB0byBzdXBwb3J0IGFybTY0LCB3ZSBoYXZlIHRvIGFkZCBjb3JyZWN0
IGNvbXBpbGVyCj4gZm9yIGFybTY0LCBhbmQgYWRkIHByb3BlciBvcHRpbWl6YXRpb24gZmxhZ3Mg
Zm9yIHNlbGVjdAo+IHByb2Nlc3Nvci4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBXZWkgQ2hlbiA8V2Vp
LkNoZW5AYXJtLmNvbT4KPiAtLS0KPiAgIGFyY2gvYXJtL0NvbXBpbGVyLnVrIHwgIDQgKysrKwo+
ICAgYXJjaC9hcm0vTWFrZWZpbGUudWsgfCAzOCArKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKwo+ICAgMiBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspCj4gCj4gZGlm
ZiAtLWdpdCBhL2FyY2gvYXJtL0NvbXBpbGVyLnVrIGIvYXJjaC9hcm0vQ29tcGlsZXIudWsKPiBp
bmRleCBlZTM0OTE2Li5mNjI1ZDdjIDEwMDY0NAo+IC0tLSBhL2FyY2gvYXJtL0NvbXBpbGVyLnVr
Cj4gKysrIGIvYXJjaC9hcm0vQ29tcGlsZXIudWsKPiBAQCAtMSw2ICsxLDEwIEBACj4gICAjIHNl
dCBjcm9zcyBjb21waWxlCj4gICBpZmVxICgkKENST1NTX0NPTVBJTEUpLCkKPiAgIGlmbmVxICgk
KFVLX0FSQ0gpLCQoSE9TVEFSQ0gpKQo+ICtpZmVxICgkKFVLX0FSQ0gpLGFybSkKPiAgIAlDUk9T
U19DT01QSUxFIDo9IGFybS1saW51eC1nbnVlYWJpaGYtCj4gK2Vsc2UgaWZlcSAoJChVS19BUkNI
KSxhcm02NCkKPiArCUNST1NTX0NPTVBJTEUgOj0gYWFyY2g2NC1saW51eC1nbnUtCj4gK2VuZGlm
Cj4gICBlbmRpZgo+ICAgZW5kaWYKPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vTWFrZWZpbGUudWsg
Yi9hcmNoL2FybS9NYWtlZmlsZS51awo+IGluZGV4IGU3ZjdiNDkuLjAzZTgwOWYgMTAwNjQ0Cj4g
LS0tIGEvYXJjaC9hcm0vTWFrZWZpbGUudWsKPiArKysgYi9hcmNoL2FybS9NYWtlZmlsZS51awo+
IEBAIC0zMyw2ICszMyw0NCBAQCBMSUJBUk1NQVRIX1NSQ1MteSArPSAkKFVLX0JBU0UpL2FyY2gv
YXJtL2FybTMyL2xkaXZtb2QuUwo+ICAgTElCQVJNTUFUSF9TUkNTLXkgKz0gJChVS19CQVNFKS9h
cmNoL2FybS9hcm0zMi9sZGl2bW9kX2hlbHBlci5jCj4gICBMSUJBUk1NQVRIX1NSQ1MteSArPSAk
KFVLX0JBU0UpL2FyY2gvYXJtL2FybTMyL3FkaXZyZW0uYwo+ICAgCj4gK2Vsc2UgaWZlcSAoJChV
S19BUkNIKSxhcm02NCkKPiArCj4gK0FTRkxBR1MgICs9IC1EX19BUk1fNjRfXwo+ICtDRkxBR1Mg
ICArPSAtRF9fQVJNXzY0X18gLWZtcy1leHRlbnNpb25zCj4gK0NYWEZMQUdTICs9IC1EX19BUk1f
NjRfXyAtZm1zLWV4dGVuc2lvbnMKPiArCj4gK2lmZXEgKCQoTUFSQ0hfQVJNNjRfTkFUSVZFKSwg
eSkKPiArJChldmFsICQoY2FsbCBzZXRfY2NfZmxhZ3MsYXJtdjgtYSxuYXRpdmUsNiwwKSkKPiAr
ZW5kaWYKPiArCj4gK2lmZXEgKCQoTUFSQ0hfQVJNNjRfR0VORVJJQyksIHkpCj4gKyQoZXZhbCAk
KGNhbGwgc2V0X2NjX2ZsYWdzLGFybXY4LWEsZ2VuZXJpYyw0LDgpKQo+ICtlbmRpZgo+ICsKPiAr
aWZlcSAoJChNQVJDSF9BUk02NF9DT1JURVhBNTMpLHkpCj4gKyQoZXZhbCAkKGNhbGwgc2V0X2Nj
X2ZsYWdzLGFybXY4LWEsY29ydGV4LWE1Myw0LDkpKQo+ICtlbmRpZgo+ICsKPiAraWZlcSAoJChN
QVJDSF9BUk02NF9DT1JURVhBNTcpLHkpCj4gKyQoZXZhbCAkKGNhbGwgc2V0X2NjX2ZsYWdzLGFy
bXY4LWEsY29ydGV4LWE1Nyw0LDkpKQo+ICtlbmRpZgo+ICsKPiAraWZlcSAoJChNQVJDSF9BUk02
NF9DT1JURVhBNzIpLHkpCj4gKyQoZXZhbCAkKGNhbGwgc2V0X2NjX2ZsYWdzLGFybXY4LWEsY29y
dGV4LWE3Miw1LDApKQo+ICtlbmRpZgo+ICsKPiAraWZlcSAoJChNQVJDSF9BUk02NF9DT1JURVhB
NzMpLHkpCj4gKyQoZXZhbCAkKGNhbGwgc2V0X2NjX2ZsYWdzLGFybXY4LWEsY29ydGV4LWE3Myw3
LDApKQo+ICtlbmRpZgo+ICsKPiAraWZlcSAoJChNQVJDSF9BUk02NF9DT1JURVhBNTUpLHkpCj4g
KyQoZXZhbCAkKGNhbGwgc2V0X2NjX2ZsYWdzLGFybXY4LjItYSxjb3J0ZXgtYTU1LDgsMCkpCj4g
K2VuZGlmCj4gKwo+ICtpZmVxICgkKE1BUkNIX0FSTTY0X0NPUlRFWEE3NSkseSkKPiArJChldmFs
ICQoY2FsbCBzZXRfY2NfZmxhZ3MsYXJtdjguMi1hLGNvcnRleC1hNzUsOCwwKSkKPiArZW5kaWYK
PiArCj4gICBlbHNlCj4gICAkKGVycm9yIFRhcmdldCBhcmNoaXRlY3R1cmUgKCQoVUtfQVJDSCkp
IGlzIGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkLikKPiAgIGVuZGlmCj4gCgpfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBs
aXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnBy
b2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 04 21:55:27 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Apr 2018 21:55:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3qNL-0007cu-0f; Wed, 04 Apr 2018 21:55:27 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=phhg=gz=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3qNJ-0007cp-Fl
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 21:55:25 +0000
X-Inumbo-ID: 0d0118f6-3853-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 0d0118f6-3853-11e8-8249-2fda3a446a53;
 Wed, 04 Apr 2018 21:56:39 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id A9417103892;
 Wed,  4 Apr 2018 23:55:23 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id I7sVU_I0RrCi; Wed,  4 Apr 2018 23:55:23 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 87F1F1038CF;
 Wed,  4 Apr 2018 23:55:13 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 4 Apr
 2018 23:55:13 +0200
To: Wei Chen <Wei.Chen@arm.com>, <minios-devel@lists.xenproject.org>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-10-git-send-email-Wei.Chen@arm.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <ea3543d4-0914-f780-fa73-d48e9f754a1d@neclab.eu>
Date: Wed, 4 Apr 2018 23:55:12 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1521085152-77655-10-git-send-email-Wei.Chen@arm.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 9/9] build: Check the minimum
 GCC version for arm32
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

RmluZS4KCk9uIDE1LjAzLjIwMTggMDQ6MzksIFdlaSBDaGVuIHdyb3RlOgo+IFNpbWlsYXIgdG8g
QVJNNjQsIHRoZSBvcHRpbWl6YXRpb24gcHJvY2Vzc29yIGZsYWdzIGhhdmUgdGhlIG1pbmltdW0K
PiBnY2MgdmVyc2lvbiByZXF1aXJlbWVudC4gU28gd2Ugc3RpbGwgbmVlZCB0byBjaGVjayB0aGUg
R0NDIHZlcnNpb24KPiBmb3IgYXJtMzIuCj4gCj4gU2lnbmVkLW9mZi1ieTogV2VpIENoZW4gPFdl
aS5DaGVuQGFybS5jb20+Cj4gLS0tCj4gICBhcmNoL2FybS9NYWtlZmlsZS51ayB8IDE4ICsrKysr
KysrKysrKysrLS0tLQo+ICAgMSBmaWxlIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDQgZGVs
ZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL01ha2VmaWxlLnVrIGIvYXJjaC9h
cm0vTWFrZWZpbGUudWsKPiBpbmRleCAwM2U4MDlmLi4xOGQ1NzQ4IDEwMDY0NAo+IC0tLSBhL2Fy
Y2gvYXJtL01ha2VmaWxlLnVrCj4gKysrIGIvYXJjaC9hcm0vTWFrZWZpbGUudWsKPiBAQCAtNiw4
ICs2LDEzIEBACj4gICAjICQoNCk6IFRoZSBtaW5pbXVtIEdDQyBtaW5vciBudW1iZXIgZm9yIHRh
cmdldCBDUFUKPiAgIGRlZmluZSBzZXRfY2NfZmxhZ3MgPQo+ICAgJChjYWxsIGNoZWNrX3ZhbGlk
X2djY192ZXJzaW9uLCQoMyksJCg0KSwkKDIpKQo+ICtpZmVxICgkKFVLX0FSQ0gpLGFybSkKPiAr
Q0ZMQUdTLXkgICArPSAtbWNwdT0kKDIpIC1tdHVuZT0kKDIpCj4gK0NYWEZMQUdTLXkgKz0gLW1j
cHU9JCgyKSAtbXR1bmU9JCgyKQo+ICtlbHNlCj4gICBDRkxBR1MteSAgICs9IC1tYXJjaD0kKDEp
IC1tY3B1PSQoMikgLW10dW5lPSQoMikKPiAgIENYWEZMQUdTLXkgKz0gLW1hcmNoPSQoMSkgLW1j
cHU9JCgyKSAtbXR1bmU9JCgyKQo+ICtlbmRpZgo+ICAgZW5kZWYKPiAgIAo+ICAgIyBTZXR1cCBj
b21waWxlciBmbGFncyBhbmQgb2JqZWN0cyBmb3IgYXJtMzIKPiBAQCAtMjIsMTAgKzI3LDE1IEBA
IENYWEZMQUdTICs9IC1tYXJtIC1mbXMtZXh0ZW5zaW9ucwo+ICAgCj4gICAjLW1hcmNoPWFybXY3
LWEKPiAgIAo+IC1DRkxBR1MtJChNQVJDSF9BMjBORU9OKSAgICArPSAtbWNwdT1jb3J0ZXgtYTcg
LW10dW5lPWNvcnRleC1hNyAtbWZwdT12ZnB2NC1kMTYgLW1mcHU9bmVvbi12ZnB2NCAtZnVuc2Fm
ZS1tYXRoLW9wdGltaXphdGlvbnMKPiAtQ1hYRkxBR1MtJChNQVJDSF9BMjBORU9OKSAgKz0gLW1j
cHU9Y29ydGV4LWE3IC1tdHVuZT1jb3J0ZXgtYTcgLW1mcHU9dmZwdjQtZDE2IC1tZnB1PW5lb24t
dmZwdjQgLWZ1bnNhZmUtbWF0aC1vcHRpbWl6YXRpb25zCj4gLUNGTEFHUy0kKE1BUkNIX0NPUlRF
WEE3KSAgICs9IC1tY3B1PWNvcnRleC1hNyAtbXR1bmU9Y29ydGV4LWE3Cj4gLUNYWEZMQUdTLSQo
TUFSQ0hfQ09SVEVYQTcpICs9IC1tY3B1PWNvcnRleC1hNyAtbXR1bmU9Y29ydGV4LWEKPiAraWZl
cSAoJChNQVJDSF9BMjBORU9OKSx5KQo+ICskKGV2YWwgJChjYWxsIHNldF9jY19mbGFncyxhcm12
Ny1hLGNvcnRleC1hNyw0LDcpKQo+ICtDRkxBR1MteSAgICArPSAtbWZwdT12ZnB2NC1kMTYgLW1m
cHU9bmVvbi12ZnB2NCAtZnVuc2FmZS1tYXRoLW9wdGltaXphdGlvbnMKPiArQ1hYRkxBR1MteSAg
Kz0gLW1mcHU9dmZwdjQtZDE2IC1tZnB1PW5lb24tdmZwdjQgLWZ1bnNhZmUtbWF0aC1vcHRpbWl6
YXRpb25zCj4gK2VuZGlmCj4gKwo+ICtpZmVxICgkKE1BUkNIX0NPUlRFWEE3KSx5KQo+ICskKGV2
YWwgJChjYWxsIHNldF9jY19mbGFncyxhcm12Ny1hLGNvcnRleC1hNyw0LDcpKQo+ICtlbmRpZgo+
ICAgCj4gICAkKGV2YWwgJChjYWxsIGFkZGxpYixsaWJhcm1tYXRoKSkKPiAgIExJQkFSTU1BVEhf
U1JDUy15ICs9ICQoVUtfQkFTRSkvYXJjaC9hcm0vYXJtMzIvZGl2c2kzLlMKPiAKCl9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWls
aW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMu
eGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 03:35:42 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 03:35:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3vga-0004su-Hp; Thu, 05 Apr 2018 03:35:40 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fi5o=g2=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f3vgY-0004sp-GX
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 03:35:38 +0000
X-Inumbo-ID: 5069eb04-3882-11e8-9728-bc764e045a96
Received: from mail-wm0-x241.google.com (unknown [2a00:1450:400c:c09::241])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 5069eb04-3882-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 05:34:59 +0200 (CEST)
Received: by mail-wm0-x241.google.com with SMTP id x4so2661244wmh.5
 for <minios-devel@lists.xenproject.org>; Wed, 04 Apr 2018 20:35:36 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=1xl8ONWWbheOjs5jSbhlCdF8ByrKzXupiNpI6e+M/6c=;
 b=fwMW3z9sSgwigLTh6MNRcUb3st244kA3Nvfca/HxBqW0j4lObFrAPsPmfTkzFLKyq9
 0KnO7rbceA5UTkzbfjPYC1TEaj6p4yldhAXuLvQnIZxGLu13iH05ZTmYDwPz62hB3JAR
 Hs485dRntFGGKOSigXAkQBAY2CG0jJwGmorLWGNIzqofQw+gQLFFp7hhF8gc4L78QTO0
 73fYmDwF6w4byCo8GFJPLWk/l37i5KGlqTgMcLZ/L3clXhLM62LgzI838PYVGwQt5ZsL
 f7nIYH9gCDQfkgyofkCndapOtBHLQiTUO8occaHWQG6LI65dudcSi9DZTBgNEWAeFqHO
 JbhQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=1xl8ONWWbheOjs5jSbhlCdF8ByrKzXupiNpI6e+M/6c=;
 b=mUtg1qwikrVOmT6otD+fc63roUTTy+igPEKhU8IbhG45Y/n9iTqnmD8C9BBGf8SkPT
 uYMkHUgkYTt93hAFgYzYEERFta9T37d7JokD0OmG/+vPeReKjVFFDAbm/+3C3jFFdNLe
 mo4fnAdAPXvbA18zkh0+aDEa9g1oWLGLvGS1zXMMeG6EH94hJ20jPncg5+NEVhTPXCoF
 QTosDY5veQVd1E9/UQHK652PHeVFYOOc7MilaIXqy/MV9L2xWFjRcSzQKxYAu4tDnkeK
 fwStbogYxgthi/nWi0mQRSMZTHBNibv688sstWFnf3J+l00DdTIWM7e7DJEUXRSLUA5v
 +C0Q==
X-Gm-Message-State: ALQs6tAOHdUYnKViHWdujWd9YOWT3PvZ5em1NW64z2aqdgh/v3cAEoWX
 +YejnJhrV+yIIB/VDcy70vPX0aAZbFSAPQW+zyQ=
X-Google-Smtp-Source: AIpwx49fKubTrutv2N+GvvY544cSxkkIGMf+hCBMcMBiHEyml74NF8HKH9Vm62fXfQNhMKVCdgPAfx+xOvPgyUhUex4=
X-Received: by 10.46.153.147 with SMTP id w19mr12884950lji.93.1522899335092;
 Wed, 04 Apr 2018 20:35:35 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Wed, 4 Apr 2018 20:35:34 -0700 (PDT)
In-Reply-To: <c6e33298-fcc9-f69f-aaa8-b0891c337fa6@linaro.org>
References: <CAHP4M8Vv1y--nwrh9uODm_0dJ_MNjaNrtyQv+HOfW_-rbupdQw@mail.gmail.com>
 <c6e33298-fcc9-f69f-aaa8-b0891c337fa6@linaro.org>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Thu, 5 Apr 2018 09:05:34 +0530
Message-ID: <CAHP4M8UYGxtTRQ8iSNiKnwrVRKhx_f0QasGV6RiaKoegFAKY2A@mail.gmail.com>
To: Julien Grall <julien.grall@linaro.org>
Subject: Re: [Minios-devel] Single codebase for para-virtualized guests on
 x86 and ARM?
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgSnVsaWVuLgoKU29ycnkgZm9yIHJlc3RhcnRpbmcgdGhpcyB0aHJlYWQsIGJ1dCBJIHdhcyBq
dXN0IHdvbmRlcmluZyB3aGV0aGVyIFBWCm9uIEFSTSBtaWdodCBub3QgcHJvdmlkZSB0aGUgZm9s
bG93aW5nIGJlbmVmaXRzIDoKCiAgICogTG93IG92ZXJoZWFkcyBhcyBjb21wYXJlZCB0byBIVk0u
CiAgICogQWxzbyBzdXBwb3J0IHN5c3RlbXMvcHJvY2VkdXJlcyB3aXRoIG5vIGhhcmR3YXJlLXZp
cnR1YWxpemF0aW9uIHN1cHBvcnQuCgoKT2YgY291cnNlLCB0aGUgYmVuZWZpdHMgb2YgUFYgbmVl
ZCB0byBiZSByZWFsbHkgaGlnaCwgdG8ganVzdGlmeSB0aGUKZWZmb3J0cyBuZWVkZWQgdG8gbWFr
ZSB0aGUgcmVxdWlyZWQgY29kZS1jaGFuZ2VzIGZvciBQVi1zdXBwb3J0IDpQCgoKT24gVHVlLCBB
cHIgMywgMjAxOCBhdCA0OjIwIFBNLCBKdWxpZW4gR3JhbGwgPGp1bGllbi5ncmFsbEBsaW5hcm8u
b3JnPiB3cm90ZToKPgo+Cj4gT24gMDMvMDQvMTggMTE6MTcsIEFqYXkgR2FyZyB3cm90ZToKPj4K
Pj4gSGkgQWxsLgo+Cj4KPiBIaSwKPgo+PiBTaW5jZSBsYXN0IGZldyBkYXlzLCBJIGhhdmUgYmVl
biBhdHRlbXB0aW5nIHRvIHVuZGVyc3RhbmQgdGhlCj4+IG1pbmlvcy94ZW4vcnVtcHJ1bi91bmlr
cmFmdC94ODYvYXJtIGVjb3N5c3RlbSwgYW5kIChpZiBub3Qgd3JvbmcpIGhhdmUgY29tZQo+PiB0
byB0aGUgY29uY2x1c2lvbiB0aGF0IGEgdW5pa2VybmVsIHJ1biBhcyBhIFBWIGd1ZXN0IG9uIGVp
dGhlciBvZiB4ODYvYXJtCj4+IHdvdWxkIHJ1biBpbiBhbGwgY2FzZXMgKGFuZCBub3QgYmUgZGVw
ZW5kZW50IHVwb24gaGFyZHdhcmUtdmlydHVhbGl6YXRpb24KPj4gc3VwcG9ydCkuCj4+Cj4+IE5v
dywgc2luY2UgUFYgaXMgYSBwdXJlIHNvZnR3YXJlLXNvbHV0aW9uLCBJIHdvbmRlciBpZiBhIGNv
bW1vbiBjb2RlYmFzZQo+PiBpcyBwb3NzaWJsZSBmb3IgeDg2IGFuZCBhcm0/Cj4+IE9yIHRoZSBk
aWZmZXJlbmNlcyBpbiB4ODYgYW5kIGFybSBzdHJ1Y3R1cmVzIHdpbGwgZXZlbnR1YWxseSBsZWFk
IHRvCj4+IChzb21lKSBkaWZmZXJlbmNlcyBpbiBQVi1jb2RlIGZvciB4ODYgYW5kIGFybT8KPgo+
Cj4gQXMgSSBzYWlkIHllc3RlcmRheSBpbiBhbiBhbnN3ZXIgb25lIG9mIHlvdXIgdGhyZWFkLiBU
aGVyZSBhcmUgKGFuZCB3aWxsIGJlKQo+IG5vIHN1cHBvcnQgb2YgUFYgZ3Vlc3QgaW4gWGVuIG9u
IEFybS4KPgo+IFNvIHRoZXJlIGFyZSBubyBwb2ludCB0byBkaXNjdXNzIGFib3V0IGEgc2luZ2xl
IGNvZGViYXNlIGZvciB0aGF0Lgo+Cj4gQ2hlZXJzLAo+Cj4gLS0KPiBKdWxpZW4gR3JhbGwKCgoK
LS0gClJlZ2FyZHMsCkFqYXkKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhl
bnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5m
by9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 07:50:12 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 07:50:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3zes-0006C0-Tm; Thu, 05 Apr 2018 07:50:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=nhqt=g2=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f3zer-0006Bv-Gh
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 07:50:09 +0000
X-Inumbo-ID: 21d78ed6-38a6-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 21d78ed6-38a6-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 07:51:22 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 6EF47103892;
 Thu,  5 Apr 2018 09:50:05 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id CBk3up5W8rTn; Thu,  5 Apr 2018 09:50:05 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 4E9DFFFF42;
 Thu,  5 Apr 2018 09:50:01 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 5 Apr
 2018 09:50:01 +0200
To: Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
 <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
 <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
 <CAHP4M8XO-hSJT0EXkhoTZDv_esZy=dbYLTAqWS7jAkxCTe9VmA@mail.gmail.com>
 <CAHP4M8UL0=FARsbhy7ZO3Pteyq+8FMWCqT7N0ca2akk_8+ckBA@mail.gmail.com>
 <CAHP4M8URiaqes5yf_nAoBeWWjSV9UeTz6gFuni1JsfQBQdoBqw@mail.gmail.com>
 <CAHP4M8UGQ5JaFbHFG_cgFQoP+d3YRR1yvbBjXPHq4bN1kHcoSg@mail.gmail.com>
 <a833ecbd-33bd-3f67-a167-aef790c7051c@neclab.eu>
 <CAHP4M8XrH+Fv0hrYOUS_84ggH+LnNg+EZMjZ=QC9Z+jK=O2MwQ@mail.gmail.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <cc93ba7c-7011-dd12-368f-113d6097544d@neclab.eu>
Date: Thu, 5 Apr 2018 09:50:00 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8XrH+Fv0hrYOUS_84ggH+LnNg+EZMjZ=QC9Z+jK=O2MwQ@mail.gmail.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gMDQuMDQuMjAxOCAxMzo1NywgQWpheSBHYXJnIHdyb3RlOgo+IEhpIFNpbW9uLgo+IAo+IFRo
YW5rcyBmb3IgdGhlIHJlcGx5Lgo+IAo+IE9uIFdlZCwgQXByIDQsIDIwMTggYXQgNDoyMyBQTSwg
U2ltb24gS3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+IHdyb3RlOgo+PiBIZXkgQWph
eSwKPj4KPj4gY2FuIHlvdSBzaG93IG1lIHlvdXIgaGVsbG93b3JsZC5jZmcgKG9yIGlzIGl0IHRo
ZSBvbmUgZnJvbSB0aGUgd2lraSk/Cj4gCj4gWWVwLCBleGFjdGx5IHRoZSBzYW1lLgo+IAo+IAo+
IAo+PiBIb3cgZGlkIHlvdSBpbnN0YWxsIFhlbj8KPiAKPiBWaWEgdmFuaWxsYSBzdWRvICJhcHQt
Z2V0IGluc3RhbGwgeGVuLWh5cGVydmlzb3ItNC42LWFtZDY0Igo+IAo+IAo+IAo+PiBXaGljaCBk
aXN0cm8gZG8geW91IHVzZSBmb3IgeW91ciBEb20wPwo+IAo+IEkgZGlkIG5vdGhpbmcgc3BlY2lh
bC4KPiAKPiBKdXN0IGluc3RhbGxlZCB4ZW4gaW4gYSBVYnVudHUtMTYuMDRfeDg2XzY0IHZpcnR1
YWxib3gtZ3Vlc3Qgb24gYQo+IFVidW50dS0xNi4wNF94ODZfNjQgaG9zdCwgYW5kIHJlYm9vdGVk
ICh0aGUgZ3Vlc3QpLgo+IFVwb24gcmVib290aW5nLCBEb21haW4tMCB3YXMgdmlzaWJsZSAob24g
dGhlIGd1ZXN0KSB3aGVuIGRvaW5nICJzdWRvIHhsIGxpc3QiLgo+IAo+IAo+IAo+PiBEaWQgYWxs
IHJlcXVpcmVkIHNlcnZpY2VzIGZvciBYZW4gZ2V0IGluaXRpYWxpemVkIGFuZCBydW4gaW4geW91
ciBEb20wPwo+IAo+IEFzIHN0YXRlZCwgSSBjYW4gc2VlIERvbWFpbi0wIGFzIG91dHB1dCBvZiAi
c3VkbyB4bCBsaXN0Ii4KPiBBbHNvLCBkb2luZyAic3lzdGVtY3RsIHN0YXR1cyB4ZW4iIHNob3dz
IGl0IGFjdGl2ZS9ydW5uaW5nLgo+IAo+IFBsZWFzZSBsZXQgbWUga25vdyB3aGF0IGV4YWN0bHkg
ZWxzZSBJIG5lZWQgdG8gY2hlY2s7IEkgd2lsbCByZXZlcnQgcHJvbXB0bHkuCj4gCgpDYW4geW91
IGNvbmZpcm0gdGhhdCB5b3UgY2FuIGNyZWF0ZSBhIExpbnV4IFBWIGd1ZXN0IG9uIHlvdXIgc3lz
dGVtPwoKPiAKPiBUaGFua3MgYWdhaW4gZm9yIHlvdXIgdGltZS4KPiAKPiAKPiBUaGFua3MgYW5k
IFJlZ2FyZHMsCj4gQWpheQo+Pgo+PiBUaGFua3MsCj4+Cj4+IFNpbW9uCj4gCj4gCj4gCgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwg
bWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp
c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 07:51:26 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 07:51:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f3zg6-0006Dd-1k; Thu, 05 Apr 2018 07:51:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=05r7=g2=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f3zg4-0006DY-Sz
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 07:51:24 +0000
X-Inumbo-ID: 504ce19c-38a6-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 504ce19c-38a6-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 07:52:39 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 5AE5B1529;
 Thu,  5 Apr 2018 00:51:23 -0700 (PDT)
Received: from [10.37.12.97] (unknown [10.37.12.97])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 46CFE3F24A;
 Thu,  5 Apr 2018 00:51:22 -0700 (PDT)
To: Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8Vv1y--nwrh9uODm_0dJ_MNjaNrtyQv+HOfW_-rbupdQw@mail.gmail.com>
 <c6e33298-fcc9-f69f-aaa8-b0891c337fa6@linaro.org>
 <CAHP4M8UYGxtTRQ8iSNiKnwrVRKhx_f0QasGV6RiaKoegFAKY2A@mail.gmail.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <f1487091-f090-5605-6b5c-0b080453b2a0@arm.com>
Date: Thu, 5 Apr 2018 08:51:19 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8UYGxtTRQ8iSNiKnwrVRKhx_f0QasGV6RiaKoegFAKY2A@mail.gmail.com>
Content-Language: en-US
Subject: Re: [Minios-devel] Single codebase for para-virtualized guests on
 x86 and ARM?
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, Andre Przywara <andre.przywara@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

KCsgU3RlZmFubyBhbmQgQW5kcmUpCgpPbiAwNC8wNS8yMDE4IDA0OjM1IEFNLCBBamF5IEdhcmcg
d3JvdGU6Cj4gSGkgSnVsaWVuLgo+IAo+IFNvcnJ5IGZvciByZXN0YXJ0aW5nIHRoaXMgdGhyZWFk
LCBidXQgSSB3YXMganVzdCB3b25kZXJpbmcgd2hldGhlciBQVgo+IG9uIEFSTSBtaWdodCBub3Qg
cHJvdmlkZSB0aGUgZm9sbG93aW5nIGJlbmVmaXRzIDoKPiAKPiAgICAgKiBMb3cgb3ZlcmhlYWRz
IGFzIGNvbXBhcmVkIHRvIEhWTS4KCkkgZG9uJ3QgYnV5IHRoaXMgYXJndW1lbnQuIFRoZSBvdmVy
aGVhZCBpcyBub3cgcXVpdGUgaGlnaCBiZWNhdXNlIHdpdGggYSAKUFYgc29sdXRpb24gYXMgeW91
IHdvdWxkIG5lZWQgdG8gbWl0aWdhdGUgbWVsdGRvd24uCgpGdXJ0aGVybW9yZSwgdGhpcyByZXF1
aXJlIGEgbG90IG9mIGNoYW5nZXMgaW4geW91ciBndWVzdHMgYW5kIEkgZG9uJ3QgCnNlZSBhbnkg
T1MgY29tbXVuaXR5IGFjY2VwdGluZyBzdWNoIGJ1cmRlbiB3aGVuIHZpcnR1YWxpemF0aW9uIGV4
dGVuc2lvbiAKaXMgZ2V0dGluZyBxdWl0ZSB3aWRlc3ByZWFkIG9uIEFybS4KCj4gICAgICogQWxz
byBzdXBwb3J0IHN5c3RlbXMvcHJvY2VkdXJlcyB3aXRoIG5vIGhhcmR3YXJlLXZpcnR1YWxpemF0
aW9uIHN1cHBvcnQuCgpUaGVyZSB3YXMgYW4gYXR0ZW1wdCB0byBnZXQgUFYgc3VwcG9ydCBmb3Ig
QXJtIGJlZm9yZSB0aGUgdmlydHVhbGl6YXRpb24gCnN1cHBvcnQgd2FzIGFkZGVkIChbMV0pLiBC
dXQgdGhpcyBpcyBkZWFkLgoKRG8geW91IGhhdmUgYW55IHBsYXRmb3JtIGluIG1pbmQgeW91IHdv
dWxkIHdhbnQgdG8gcnVuIFhlbiB3aXRoIG5vIAp2aXJ0dWFsaXphdGlvbiBleHRlbnNpb24/Cgo+
IAo+IAo+IE9mIGNvdXJzZSwgdGhlIGJlbmVmaXRzIG9mIFBWIG5lZWQgdG8gYmUgcmVhbGx5IGhp
Z2gsIHRvIGp1c3RpZnkgdGhlCj4gZWZmb3J0cyBuZWVkZWQgdG8gbWFrZSB0aGUgcmVxdWlyZWQg
Y29kZS1jaGFuZ2VzIGZvciBQVi1zdXBwb3J0IDpQCgpIVyB2aXJ0dWFsaXphdGlvbiBzdXBwb3J0
IHByb3ZpZGVzIGdvb2Qgc2VjdXJpdHkgYW5kIHBlcmZvcm1hbmNlIHdpdGggCmxpbWl0ZWQgY2hh
bmdlcyBpbiB0aGUgZ3Vlc3QuIEV2ZW4sIHg4NiBjb21tdW5pdHkgaGFzIGJlZW4gZGlzY3Vzc2lu
ZyB0byAKZGVwcmVjYXRlIFBWIGFuZCBtb3ZlIHRvd2FyZHMgUFZIICh2ZXJ5IHNpbWlsYXIgdG8g
QXJtIGd1ZXN0KS4KCkNoZWVycywKClsxXSBodHRwczovL3dpa2kueGVucHJvamVjdC5vcmcvd2lr
aS9BcmNoaXZlZC9YZW5fQVJNXyhQVikKCi0tIApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxp
c3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJv
amVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 08:35:41 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 08:35:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f40Mr-00012v-G9; Thu, 05 Apr 2018 08:35:37 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fi5o=g2=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f40Mr-00012q-66
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 08:35:37 +0000
X-Inumbo-ID: 38526ce1-38ac-11e8-9728-bc764e045a96
Received: from mail-wr0-x22d.google.com (unknown [2a00:1450:400c:c0c::22d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 38526ce1-38ac-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 10:34:57 +0200 (CEST)
Received: by mail-wr0-x22d.google.com with SMTP id y55so26989899wry.3
 for <minios-devel@lists.xenproject.org>; Thu, 05 Apr 2018 01:35:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:from:date:message-id:subject:to;
 bh=bu7/bvzApSn4T9xxKzxa5ipAljiT6arAvw1IR3CSuhs=;
 b=XM4Tx3OUO/F0IodWyKLt6RSq/+86s9fIRZbAReBlExBySKk7MVsQ+3PXzKDLJCjMKo
 4VPoiHlhS6AG3a5WppH0GpMUsVjzduC16OORI0fAb8KH4KHyuVBYvIXJLtWIM+rPowqg
 hLozgU5eaM3rD32A1Rlvoxgax8H6BCaZDXxOw/ACsWdtLYWi9qz9mN4vFjRXMtVCKHII
 Qvzaz+0unyc/lU8a2woMG7ORDB3DyRRaoScA7S/xuVmubSbplA9wnvrXQ9ObMFAzib2O
 9QPOtnzkdKY1GE55NQB3o/zt8+A2YSYB62H42l91JAQdIdYBHvu36D0qlDaltoS02zfK
 MqOw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
 bh=bu7/bvzApSn4T9xxKzxa5ipAljiT6arAvw1IR3CSuhs=;
 b=f8gcxL424HCcXEAPBWzmocuXNla0t25aRkx+2JOMQlJyhhMt0o7J0/xKMnAINR32XS
 8J4ZEuujTavu0iwUxPNXab3p3xmkVxbt0qm02zB9tK4ldkCiDfpx1iLt5trLQdInRx/A
 Yf2QNb6VjsVSJEI0326ah3EqmqDGYavwc+N55H4IOvNoDZFukhcvDm1y/Qy+MPhq0ztz
 oKHAkwo4SyMfRqnEiWxAgN7L3Wrb6FeU61BF5wbUgtU/PAqhoZf6ItwoajokYFRTt12k
 8d+WQSiSuMy3BX6FRgGQapDDByorGMnMY04B5vKPESYFx0BB7mmIdXUZg5owy7vzuFIN
 crCA==
X-Gm-Message-State: ALQs6tCxGQUjIdmJbajnYcO1FcsLm6Sz4Xuojzxo2TOqIKPu1FQlbSHK
 f3ldb/NXQIL9y51p+UXthP8Y3uqEuu9UP+/cRIE=
X-Google-Smtp-Source: AIpwx4+NyGvCVNoKn9qCwZna1uKo56mmhb/vlmxjJcUpUM7eAcU1UNneC40TxKx+is1pMTq4/vwbJhdFGaKqysFin6k=
X-Received: by 2002:a19:59d1:: with SMTP id
 n200-v6mr12840598lfb.84.1522917333859; 
 Thu, 05 Apr 2018 01:35:33 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Thu, 5 Apr 2018 01:35:33 -0700 (PDT)
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Thu, 5 Apr 2018 14:05:33 +0530
Message-ID: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgQWxsLgoKSSBoYXZlIGEgZmV3IHF1ZXJpZXMgcmVnYXJkaW5nIHVuaWtyYWZ0IHN1cHBvcnQg
Zm9yIGt2bSBvbiBhcm0uCgphKQpJcyBpdCBzdXBwb3J0ZWQgYXQgYWxsPwoKQ3VycmVudGx5IEkg
dHJpZWQgIm1ha2UgbWVudWNvbmZpZyIgb24gYSBiZWFnbGVib25lLWJsYWNrIHdpdGgKY29ydGV4
LWE4IHByb2Nlc3NvciAod2hpY2ggaGFzIG5vIGhhcmR3YXJlLXZpcnR1YWxpemF0aW9uIHByZXNl
bnQpLgpJIG9ubHkgc2F3IG5hdGl2ZS1hcm0gYW5kIHhlbiAoaW4gIm1ha2UgbWVudWNvbmZpZyIp
LgoKYikKQXNzdW1pbmcgYW5zd2VyIHRvIGEpIGlzIHllcywgd2lsbCB0aGUga3ZtLWJpbmFyeSBy
dW4gb24gYW4gYXJtCndpdGhvdXQgYW55IGFjdHVhbCBoYXJkd2FyZS12aXJ0dWFsaXphdGlvbiAo
d2l0aCBxZW11IHByb2JhYmx5IGRvaW5nCmFsbCB0aGUgcnVudGltZSBpbnN0cnVjdGlvbi1jb252
ZXJzaW9ucyk/CgoKVGhhbmtzIGFuZCBSZWdhcmRzLApBamF5CgpfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1p
bmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qu
b3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 08:38:08 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 08:38:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f40PG-000171-NS; Thu, 05 Apr 2018 08:38:06 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fi5o=g2=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f40PF-00016w-V5
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 08:38:05 +0000
X-Inumbo-ID: 913f7788-38ac-11e8-9728-bc764e045a96
Received: from mail-wr0-x22d.google.com (unknown [2a00:1450:400c:c0c::22d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 913f7788-38ac-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 10:37:26 +0200 (CEST)
Received: by mail-wr0-x22d.google.com with SMTP id c24so26998577wrc.6
 for <minios-devel@lists.xenproject.org>; Thu, 05 Apr 2018 01:38:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=x5xDc5EPc3fDzMJ/tDCryXXSH7wTtQjEJKAADkIrLS0=;
 b=baSHqT1aYrJLyJzbBcLm3xV7kWU+knQWi1UeKhNE7tiQe7JWKrNeoWznI6qj5SIigU
 fTml6OUCD0bt4xhz/Wzfuxjisz/JskFdcXMlWrIOZiH+1KYy1b5u4/8Z8cfKNkHeayZF
 +FcTl+Zh4Y2qhNSWLyKlMIB0YIetWxhRMubg1r5nkIwO1/8dLakAvUlXhRKAOZAwv8l1
 OfSuSHaNCZwXMq27+la7LzG+swJ9kmO5Wg5mmpXGkNzHntxEh0hEX1FBSYqpMBi2GSIl
 EO/tH8FN2Tb7Jh+yZ6aoniETZCAwu6HVLXlMlU8DATT7bDtv3vLZahymAN2x8GBokqMX
 HwGQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=x5xDc5EPc3fDzMJ/tDCryXXSH7wTtQjEJKAADkIrLS0=;
 b=qTzzFUnYsE9EfB9k1wZdYzgQFOqqubQ6gPKVLmAxoV2yBwLQl0TnNgbRKl394wDkCK
 5dpwpIo7TCIt3+OIhSoUrZyFj0ZtCIf0s6XfiKNCUYzLdvnNCDgtYqOIROhy4I4203Sx
 0Q5J+f0cL0JNKeXLoZufrnxptheERpp7ES7yen8kFxeQA+WQMXangfsUG+W0c+zYGi2Y
 AcXqvHmHc5CbDS/We22QNUpN2sV5lrky9H3Ut9LteWyauRhrSItuWG4sP6ijfxqlxhbr
 4lNPG8VyvYLaE4CbB8jPLHgCide002avudvVHE9HkgYZGjaaa+/u3W75s+ZLn1g1TwF7
 vRYg==
X-Gm-Message-State: ALQs6tCtLb5Xuw3QlNRtBPZoVxfTzfvqEW/O+HLfx8RTbWimx8Bxxgo8
 AEvYTzS3qdnwSdG16zFvlkxwB5ZMixf13mZ3a6Y=
X-Google-Smtp-Source: AIpwx4/OuQsBqIxywwnl9FSfqXvficzKqahO11QiXo5ErXFVwqCtqDb9F/9UwDU9O6XqQhbjUAgQ59a+el+A/Ahq/Hc=
X-Received: by 2002:a19:6a16:: with SMTP id
 u22-v6mr10707915lfu.123.1522917483241; 
 Thu, 05 Apr 2018 01:38:03 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Thu, 5 Apr 2018 01:38:02 -0700 (PDT)
In-Reply-To: <f1487091-f090-5605-6b5c-0b080453b2a0@arm.com>
References: <CAHP4M8Vv1y--nwrh9uODm_0dJ_MNjaNrtyQv+HOfW_-rbupdQw@mail.gmail.com>
 <c6e33298-fcc9-f69f-aaa8-b0891c337fa6@linaro.org>
 <CAHP4M8UYGxtTRQ8iSNiKnwrVRKhx_f0QasGV6RiaKoegFAKY2A@mail.gmail.com>
 <f1487091-f090-5605-6b5c-0b080453b2a0@arm.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Thu, 5 Apr 2018 14:08:02 +0530
Message-ID: <CAHP4M8XTvbhoZvwp8Jj0+qvyFtz8x1tvk6TEwXxWRFAYSUyi_g@mail.gmail.com>
To: Julien Grall <julien.grall@arm.com>
Subject: Re: [Minios-devel] Single codebase for para-virtualized guests on
 x86 and ARM?
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, Andre Przywara <andre.przywara@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgSnVsaWVuLgoKVGhhbmtzIGZvciB0aGUgcmVwbHkuCgpPbiBUaHUsIEFwciA1LCAyMDE4IGF0
IDE6MjEgUE0sIEp1bGllbiBHcmFsbCA8anVsaWVuLmdyYWxsQGFybS5jb20+IHdyb3RlOgo+ICgr
IFN0ZWZhbm8gYW5kIEFuZHJlKQo+Cj4gT24gMDQvMDUvMjAxOCAwNDozNSBBTSwgQWpheSBHYXJn
IHdyb3RlOgo+Pgo+PiBIaSBKdWxpZW4uCj4+Cj4+IFNvcnJ5IGZvciByZXN0YXJ0aW5nIHRoaXMg
dGhyZWFkLCBidXQgSSB3YXMganVzdCB3b25kZXJpbmcgd2hldGhlciBQVgo+PiBvbiBBUk0gbWln
aHQgbm90IHByb3ZpZGUgdGhlIGZvbGxvd2luZyBiZW5lZml0cyA6Cj4+Cj4+ICAgICAqIExvdyBv
dmVyaGVhZHMgYXMgY29tcGFyZWQgdG8gSFZNLgo+Cj4KPiBJIGRvbid0IGJ1eSB0aGlzIGFyZ3Vt
ZW50LiBUaGUgb3ZlcmhlYWQgaXMgbm93IHF1aXRlIGhpZ2ggYmVjYXVzZSB3aXRoIGEgUFYKPiBz
b2x1dGlvbiBhcyB5b3Ugd291bGQgbmVlZCB0byBtaXRpZ2F0ZSBtZWx0ZG93bi4KPgo+IEZ1cnRo
ZXJtb3JlLCB0aGlzIHJlcXVpcmUgYSBsb3Qgb2YgY2hhbmdlcyBpbiB5b3VyIGd1ZXN0cyBhbmQg
SSBkb24ndCBzZWUKPiBhbnkgT1MgY29tbXVuaXR5IGFjY2VwdGluZyBzdWNoIGJ1cmRlbiB3aGVu
IHZpcnR1YWxpemF0aW9uIGV4dGVuc2lvbiBpcwo+IGdldHRpbmcgcXVpdGUgd2lkZXNwcmVhZCBv
biBBcm0uCj4KPj4gICAgICogQWxzbyBzdXBwb3J0IHN5c3RlbXMvcHJvY2VkdXJlcyB3aXRoIG5v
IGhhcmR3YXJlLXZpcnR1YWxpemF0aW9uCj4+IHN1cHBvcnQuCj4KPgo+IFRoZXJlIHdhcyBhbiBh
dHRlbXB0IHRvIGdldCBQViBzdXBwb3J0IGZvciBBcm0gYmVmb3JlIHRoZSB2aXJ0dWFsaXphdGlv
bgo+IHN1cHBvcnQgd2FzIGFkZGVkIChbMV0pLiBCdXQgdGhpcyBpcyBkZWFkLgo+Cj4gRG8geW91
IGhhdmUgYW55IHBsYXRmb3JtIGluIG1pbmQgeW91IHdvdWxkIHdhbnQgdG8gcnVuIFhlbiB3aXRo
IG5vCj4gdmlydHVhbGl6YXRpb24gZXh0ZW5zaW9uPwoKSWRlYWxseSwgd2UgYXJlIHRhcmdldHRp
bmcgbG93LWVuZCBhcm0gc3lzdGVtcywgd2hlcmUKaGFyZHdhcmUtdmlydHVhbGl6YXRpb24gaXMg
dGhlIG9uZSB0aGluZyB0aGF0IHdlIG1pZ2h0IGhhdmUgdG8KY29tcHJvbWlzZSBvbi4KQmVhZ2xl
Ym9uZXMgYXJlIGFuIGV4YW1wbGUuCgoKPgo+Pgo+Pgo+PiBPZiBjb3Vyc2UsIHRoZSBiZW5lZml0
cyBvZiBQViBuZWVkIHRvIGJlIHJlYWxseSBoaWdoLCB0byBqdXN0aWZ5IHRoZQo+PiBlZmZvcnRz
IG5lZWRlZCB0byBtYWtlIHRoZSByZXF1aXJlZCBjb2RlLWNoYW5nZXMgZm9yIFBWLXN1cHBvcnQg
OlAKPgo+Cj4gSFcgdmlydHVhbGl6YXRpb24gc3VwcG9ydCBwcm92aWRlcyBnb29kIHNlY3VyaXR5
IGFuZCBwZXJmb3JtYW5jZSB3aXRoCj4gbGltaXRlZCBjaGFuZ2VzIGluIHRoZSBndWVzdC4gRXZl
biwgeDg2IGNvbW11bml0eSBoYXMgYmVlbiBkaXNjdXNzaW5nIHRvCj4gZGVwcmVjYXRlIFBWIGFu
ZCBtb3ZlIHRvd2FyZHMgUFZIICh2ZXJ5IHNpbWlsYXIgdG8gQXJtIGd1ZXN0KS4KPgo+IENoZWVy
cywKPgo+IFsxXSBodHRwczovL3dpa2kueGVucHJvamVjdC5vcmcvd2lraS9BcmNoaXZlZC9YZW5f
QVJNXyhQVikKPgo+IC0tCj4gSnVsaWVuIEdyYWxsCgoKCi0tIApSZWdhcmRzLApBamF5CgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwg
bWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp
c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 08:48:04 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 08:48:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f40Yp-0001lt-F9; Thu, 05 Apr 2018 08:47:59 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fi5o=g2=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f40Yo-0001lo-Lv
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 08:47:58 +0000
X-Inumbo-ID: f28dee32-38ad-11e8-9728-bc764e045a96
Received: from mail-wm0-x235.google.com (unknown [2a00:1450:400c:c09::235])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id f28dee32-38ad-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 10:47:19 +0200 (CEST)
Received: by mail-wm0-x235.google.com with SMTP id w2so1912198wmw.1
 for <minios-devel@lists.xenproject.org>; Thu, 05 Apr 2018 01:47:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=x5xDc5EPc3fDzMJ/tDCryXXSH7wTtQjEJKAADkIrLS0=;
 b=dBcJqntSemPkvPA9qOB4FBSIp4uVrwegxT1xWT/aqpcWlKIzdR4W67IJZ9WTXL2FL2
 PrxX74Jyqi9eXZxrgCxycv6TTNQ9JeeiA1XgPAupN5gadRfyBCguQZ5Jd1xUMayykoA1
 56xUdQd+VrIBep5m4TZlNqkHF0TFL+wBH6plQRAD9XQ/2Y7SF1YIpZCwPGKJUQaD+BRb
 8GgGv37wgcrJzHmJ+hKbaFFAt5RNT/Rgp3ctBW5xcEO8d1Amu+qUcvoeO8oYgUaFc9k9
 cL+LkMmifnGojK2BtexEAbitEF7gFWSj3s+qL5s0dZHft0AfM0fucSTxcx2kqfiuWWin
 ROdg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=x5xDc5EPc3fDzMJ/tDCryXXSH7wTtQjEJKAADkIrLS0=;
 b=UaY2oX6+luZivueF64SnVqa/xyMuLtemIaIC8xpQwScMlgIGpFR6A83ni7WlK+C6D2
 +a+e6oBkfInr9fUlIlQUGN8WRaoati3wexCV3NqdNWyfoTTljuH+J1eAFJbEf0356x74
 Eu/h1110iQubCZH/Y4vQgs693y40qRgp9/UOuQJMqDAk90/C/HefAJkUz+4nj7798yjY
 0Bbijso/Cz+CzcLnbBSfRB537BO0EWMHQ4P/V1ldSag4j2UmtNFlYrg2VPn9xONZKpv1
 Kp/N0RFbD1c757W7onkg9JtJl+DlmH9hBOcKEtTA1KgQzecxVwZ3yqIEf/Dh3/kVb4Gc
 u+dA==
X-Gm-Message-State: ALQs6tCVYieFby0uBRutYC9guIyCajtQT5Ugi/wjvCFoP917OJTi18cH
 FGJk5/XGtG60S5D6ubJqwrr0VGr+PivwfLoL4qQ=
X-Google-Smtp-Source: AIpwx494AJAbumbskWztcuN9klFkQkx13H/h1Ojqim4tuDNms7S/fvBex78fP7qstD5AeWWqgZ6XnGRot6SM5WB/7VA=
X-Received: by 10.46.158.137 with SMTP id f9mr13760116ljk.113.1522918075910;
 Thu, 05 Apr 2018 01:47:55 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Thu, 5 Apr 2018 01:47:55 -0700 (PDT)
In-Reply-To: <f1487091-f090-5605-6b5c-0b080453b2a0@arm.com>
References: <CAHP4M8Vv1y--nwrh9uODm_0dJ_MNjaNrtyQv+HOfW_-rbupdQw@mail.gmail.com>
 <c6e33298-fcc9-f69f-aaa8-b0891c337fa6@linaro.org>
 <CAHP4M8UYGxtTRQ8iSNiKnwrVRKhx_f0QasGV6RiaKoegFAKY2A@mail.gmail.com>
 <f1487091-f090-5605-6b5c-0b080453b2a0@arm.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Thu, 5 Apr 2018 14:17:55 +0530
Message-ID: <CAHP4M8VEqBDgiGvfZQKJRqjW9DMLHntTLp3nFUUwJ30kCWU0Jw@mail.gmail.com>
To: Julien Grall <julien.grall@arm.com>
Subject: Re: [Minios-devel] Single codebase for para-virtualized guests on
 x86 and ARM?
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, Andre Przywara <andre.przywara@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgSnVsaWVuLgoKVGhhbmtzIGZvciB0aGUgcmVwbHkuCgpPbiBUaHUsIEFwciA1LCAyMDE4IGF0
IDE6MjEgUE0sIEp1bGllbiBHcmFsbCA8anVsaWVuLmdyYWxsQGFybS5jb20+IHdyb3RlOgo+ICgr
IFN0ZWZhbm8gYW5kIEFuZHJlKQo+Cj4gT24gMDQvMDUvMjAxOCAwNDozNSBBTSwgQWpheSBHYXJn
IHdyb3RlOgo+Pgo+PiBIaSBKdWxpZW4uCj4+Cj4+IFNvcnJ5IGZvciByZXN0YXJ0aW5nIHRoaXMg
dGhyZWFkLCBidXQgSSB3YXMganVzdCB3b25kZXJpbmcgd2hldGhlciBQVgo+PiBvbiBBUk0gbWln
aHQgbm90IHByb3ZpZGUgdGhlIGZvbGxvd2luZyBiZW5lZml0cyA6Cj4+Cj4+ICAgICAqIExvdyBv
dmVyaGVhZHMgYXMgY29tcGFyZWQgdG8gSFZNLgo+Cj4KPiBJIGRvbid0IGJ1eSB0aGlzIGFyZ3Vt
ZW50LiBUaGUgb3ZlcmhlYWQgaXMgbm93IHF1aXRlIGhpZ2ggYmVjYXVzZSB3aXRoIGEgUFYKPiBz
b2x1dGlvbiBhcyB5b3Ugd291bGQgbmVlZCB0byBtaXRpZ2F0ZSBtZWx0ZG93bi4KPgo+IEZ1cnRo
ZXJtb3JlLCB0aGlzIHJlcXVpcmUgYSBsb3Qgb2YgY2hhbmdlcyBpbiB5b3VyIGd1ZXN0cyBhbmQg
SSBkb24ndCBzZWUKPiBhbnkgT1MgY29tbXVuaXR5IGFjY2VwdGluZyBzdWNoIGJ1cmRlbiB3aGVu
IHZpcnR1YWxpemF0aW9uIGV4dGVuc2lvbiBpcwo+IGdldHRpbmcgcXVpdGUgd2lkZXNwcmVhZCBv
biBBcm0uCj4KPj4gICAgICogQWxzbyBzdXBwb3J0IHN5c3RlbXMvcHJvY2VkdXJlcyB3aXRoIG5v
IGhhcmR3YXJlLXZpcnR1YWxpemF0aW9uCj4+IHN1cHBvcnQuCj4KPgo+IFRoZXJlIHdhcyBhbiBh
dHRlbXB0IHRvIGdldCBQViBzdXBwb3J0IGZvciBBcm0gYmVmb3JlIHRoZSB2aXJ0dWFsaXphdGlv
bgo+IHN1cHBvcnQgd2FzIGFkZGVkIChbMV0pLiBCdXQgdGhpcyBpcyBkZWFkLgo+Cj4gRG8geW91
IGhhdmUgYW55IHBsYXRmb3JtIGluIG1pbmQgeW91IHdvdWxkIHdhbnQgdG8gcnVuIFhlbiB3aXRo
IG5vCj4gdmlydHVhbGl6YXRpb24gZXh0ZW5zaW9uPwoKSWRlYWxseSwgd2UgYXJlIHRhcmdldHRp
bmcgbG93LWVuZCBhcm0gc3lzdGVtcywgd2hlcmUKaGFyZHdhcmUtdmlydHVhbGl6YXRpb24gaXMg
dGhlIG9uZSB0aGluZyB0aGF0IHdlIG1pZ2h0IGhhdmUgdG8KY29tcHJvbWlzZSBvbi4KQmVhZ2xl
Ym9uZXMgYXJlIGFuIGV4YW1wbGUuCgoKPgo+Pgo+Pgo+PiBPZiBjb3Vyc2UsIHRoZSBiZW5lZml0
cyBvZiBQViBuZWVkIHRvIGJlIHJlYWxseSBoaWdoLCB0byBqdXN0aWZ5IHRoZQo+PiBlZmZvcnRz
IG5lZWRlZCB0byBtYWtlIHRoZSByZXF1aXJlZCBjb2RlLWNoYW5nZXMgZm9yIFBWLXN1cHBvcnQg
OlAKPgo+Cj4gSFcgdmlydHVhbGl6YXRpb24gc3VwcG9ydCBwcm92aWRlcyBnb29kIHNlY3VyaXR5
IGFuZCBwZXJmb3JtYW5jZSB3aXRoCj4gbGltaXRlZCBjaGFuZ2VzIGluIHRoZSBndWVzdC4gRXZl
biwgeDg2IGNvbW11bml0eSBoYXMgYmVlbiBkaXNjdXNzaW5nIHRvCj4gZGVwcmVjYXRlIFBWIGFu
ZCBtb3ZlIHRvd2FyZHMgUFZIICh2ZXJ5IHNpbWlsYXIgdG8gQXJtIGd1ZXN0KS4KPgo+IENoZWVy
cywKPgo+IFsxXSBodHRwczovL3dpa2kueGVucHJvamVjdC5vcmcvd2lraS9BcmNoaXZlZC9YZW5f
QVJNXyhQVikKPgo+IC0tCj4gSnVsaWVuIEdyYWxsCgoKCi0tIApSZWdhcmRzLApBamF5CgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwg
bWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp
c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 08:49:14 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 08:49:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f40a1-0001nF-Ja; Thu, 05 Apr 2018 08:49:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=05r7=g2=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f40a0-0001nA-JS
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 08:49:12 +0000
X-Inumbo-ID: 62c46e56-38ae-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 62c46e56-38ae-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 08:50:26 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 38DAD1435;
 Thu,  5 Apr 2018 01:49:10 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 707F13F587;
 Thu,  5 Apr 2018 01:49:09 -0700 (PDT)
To: Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8Vv1y--nwrh9uODm_0dJ_MNjaNrtyQv+HOfW_-rbupdQw@mail.gmail.com>
 <c6e33298-fcc9-f69f-aaa8-b0891c337fa6@linaro.org>
 <CAHP4M8UYGxtTRQ8iSNiKnwrVRKhx_f0QasGV6RiaKoegFAKY2A@mail.gmail.com>
 <f1487091-f090-5605-6b5c-0b080453b2a0@arm.com>
 <CAHP4M8XTvbhoZvwp8Jj0+qvyFtz8x1tvk6TEwXxWRFAYSUyi_g@mail.gmail.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <ba2f115a-abd9-0bb9-775e-c5d5b04ef07f@arm.com>
Date: Thu, 5 Apr 2018 09:49:07 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8XTvbhoZvwp8Jj0+qvyFtz8x1tvk6TEwXxWRFAYSUyi_g@mail.gmail.com>
Content-Language: en-US
Subject: Re: [Minios-devel] Single codebase for para-virtualized guests on
 x86 and ARM?
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, Andre Przywara <andre.przywara@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAwNS8wNC8xOCAwOTozOCwgQWpheSBHYXJnIHdyb3RlOgo+IEhpIEp1bGllbi4KPiAKPiBU
aGFua3MgZm9yIHRoZSByZXBseS4KPiAKPiBPbiBUaHUsIEFwciA1LCAyMDE4IGF0IDE6MjEgUE0s
IEp1bGllbiBHcmFsbCA8anVsaWVuLmdyYWxsQGFybS5jb20+IHdyb3RlOgo+PiAoKyBTdGVmYW5v
IGFuZCBBbmRyZSkKPj4KPj4gT24gMDQvMDUvMjAxOCAwNDozNSBBTSwgQWpheSBHYXJnIHdyb3Rl
Ogo+Pj4KPj4+IEhpIEp1bGllbi4KPj4+Cj4+PiBTb3JyeSBmb3IgcmVzdGFydGluZyB0aGlzIHRo
cmVhZCwgYnV0IEkgd2FzIGp1c3Qgd29uZGVyaW5nIHdoZXRoZXIgUFYKPj4+IG9uIEFSTSBtaWdo
dCBub3QgcHJvdmlkZSB0aGUgZm9sbG93aW5nIGJlbmVmaXRzIDoKPj4+Cj4+PiAgICAgICogTG93
IG92ZXJoZWFkcyBhcyBjb21wYXJlZCB0byBIVk0uCj4+Cj4+Cj4+IEkgZG9uJ3QgYnV5IHRoaXMg
YXJndW1lbnQuIFRoZSBvdmVyaGVhZCBpcyBub3cgcXVpdGUgaGlnaCBiZWNhdXNlIHdpdGggYSBQ
Vgo+PiBzb2x1dGlvbiBhcyB5b3Ugd291bGQgbmVlZCB0byBtaXRpZ2F0ZSBtZWx0ZG93bi4KPj4K
Pj4gRnVydGhlcm1vcmUsIHRoaXMgcmVxdWlyZSBhIGxvdCBvZiBjaGFuZ2VzIGluIHlvdXIgZ3Vl
c3RzIGFuZCBJIGRvbid0IHNlZQo+PiBhbnkgT1MgY29tbXVuaXR5IGFjY2VwdGluZyBzdWNoIGJ1
cmRlbiB3aGVuIHZpcnR1YWxpemF0aW9uIGV4dGVuc2lvbiBpcwo+PiBnZXR0aW5nIHF1aXRlIHdp
ZGVzcHJlYWQgb24gQXJtLgo+Pgo+Pj4gICAgICAqIEFsc28gc3VwcG9ydCBzeXN0ZW1zL3Byb2Nl
ZHVyZXMgd2l0aCBubyBoYXJkd2FyZS12aXJ0dWFsaXphdGlvbgo+Pj4gc3VwcG9ydC4KPj4KPj4K
Pj4gVGhlcmUgd2FzIGFuIGF0dGVtcHQgdG8gZ2V0IFBWIHN1cHBvcnQgZm9yIEFybSBiZWZvcmUg
dGhlIHZpcnR1YWxpemF0aW9uCj4+IHN1cHBvcnQgd2FzIGFkZGVkIChbMV0pLiBCdXQgdGhpcyBp
cyBkZWFkLgo+Pgo+PiBEbyB5b3UgaGF2ZSBhbnkgcGxhdGZvcm0gaW4gbWluZCB5b3Ugd291bGQg
d2FudCB0byBydW4gWGVuIHdpdGggbm8KPj4gdmlydHVhbGl6YXRpb24gZXh0ZW5zaW9uPwo+IAo+
IElkZWFsbHksIHdlIGFyZSB0YXJnZXR0aW5nIGxvdy1lbmQgYXJtIHN5c3RlbXMsIHdoZXJlCj4g
aGFyZHdhcmUtdmlydHVhbGl6YXRpb24gaXMgdGhlIG9uZSB0aGluZyB0aGF0IHdlIG1pZ2h0IGhh
dmUgdG8KPiBjb21wcm9taXNlIG9uLgo+IEJlYWdsZWJvbmVzIGFyZSBhbiBleGFtcGxlLgoKVGhl
eSBhcmUgbG93LWVuZCBwbGF0Zm9ybSB3aXRoIGhhcmR3YXJlLXZpcnR1YWxpemF0aW9uIChlLmcg
cGluZTY0KS4KU28gd2h5IHRoYXQgcGxhdGZvcm0gaW4gcGFydGljdWxhcj8gSXMgaXQgYmVjYXVz
ZSB5b3UgaGF2ZSBleGlzdGluZyAKaGFyZHdhcmU/CgpUbyBiZSBjbGVhciwgSSB0aGluayBjb21w
cm9taXNpbmcgdmlydHVhbGl6YXRpb24gZXh0ZW5zaW9uIGlzIGEgcHJldHR5IApiYWQgaWRlYS4g
VGhlIGJ1cmRlbiBvbiBzb2Z0d2FyZSB3aWxsIHJlYWxseSBiZSBodWdlIGNvbXBhcmUgdG8gdGhl
IApjdXJyZW50IHNvbHV0aW9uIG9uIFhlbiBBcm0uCgpDaGVlcnMsCgo+IAo+IAo+Pgo+Pj4KPj4+
Cj4+PiBPZiBjb3Vyc2UsIHRoZSBiZW5lZml0cyBvZiBQViBuZWVkIHRvIGJlIHJlYWxseSBoaWdo
LCB0byBqdXN0aWZ5IHRoZQo+Pj4gZWZmb3J0cyBuZWVkZWQgdG8gbWFrZSB0aGUgcmVxdWlyZWQg
Y29kZS1jaGFuZ2VzIGZvciBQVi1zdXBwb3J0IDpQCj4+Cj4+Cj4+IEhXIHZpcnR1YWxpemF0aW9u
IHN1cHBvcnQgcHJvdmlkZXMgZ29vZCBzZWN1cml0eSBhbmQgcGVyZm9ybWFuY2Ugd2l0aAo+PiBs
aW1pdGVkIGNoYW5nZXMgaW4gdGhlIGd1ZXN0LiBFdmVuLCB4ODYgY29tbXVuaXR5IGhhcyBiZWVu
IGRpc2N1c3NpbmcgdG8KPj4gZGVwcmVjYXRlIFBWIGFuZCBtb3ZlIHRvd2FyZHMgUFZIICh2ZXJ5
IHNpbWlsYXIgdG8gQXJtIGd1ZXN0KS4KPj4KPj4gQ2hlZXJzLAo+Pgo+PiBbMV0gaHR0cHM6Ly93
aWtpLnhlbnByb2plY3Qub3JnL3dpa2kvQXJjaGl2ZWQvWGVuX0FSTV8oUFYpCj4+Cj4+IC0tCj4+
IEp1bGllbiBHcmFsbAo+IAo+IAo+IAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlz
dApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 08:51:33 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 08:51:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f40cE-0002Kf-Qu; Thu, 05 Apr 2018 08:51:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=nhqt=g2=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f40cD-0002Ka-Vp
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 08:51:30 +0000
X-Inumbo-ID: b42e5b56-38ae-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id b42e5b56-38ae-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 08:52:43 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id CB95E104341;
 Thu,  5 Apr 2018 10:51:26 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 6SscR84hFiy3; Thu,  5 Apr 2018 10:51:26 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id A96671038CF;
 Thu,  5 Apr 2018 10:51:22 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 5 Apr
 2018 10:51:22 +0200
To: Ajay Garg <ajaygargnsit@gmail.com>, <minios-devel@lists.xenproject.org>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
Date: Thu, 5 Apr 2018 10:51:21 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAwNS4wNC4yMDE4IDEwOjM1LCBBamF5IEdhcmcgd3JvdGU6Cj4gSGkgQWxsLgo+IAo+IEkg
aGF2ZSBhIGZldyBxdWVyaWVzIHJlZ2FyZGluZyB1bmlrcmFmdCBzdXBwb3J0IGZvciBrdm0gb24g
YXJtLgo+IAo+IGEpCj4gSXMgaXQgc3VwcG9ydGVkIGF0IGFsbD8KCkl0IGRvZXMgbm90IHdvcmsg
eWV0IGZvciBBUk0gYnV0IHdlIGFyZSB3b3JraW5nIG9uIGl0LgoKPiAKPiBDdXJyZW50bHkgSSB0
cmllZCAibWFrZSBtZW51Y29uZmlnIiBvbiBhIGJlYWdsZWJvbmUtYmxhY2sgd2l0aAo+IGNvcnRl
eC1hOCBwcm9jZXNzb3IgKHdoaWNoIGhhcyBubyBoYXJkd2FyZS12aXJ0dWFsaXphdGlvbiBwcmVz
ZW50KS4KPiBJIG9ubHkgc2F3IG5hdGl2ZS1hcm0gYW5kIHhlbiAoaW4gIm1ha2UgbWVudWNvbmZp
ZyIpLgo+IAo+IGIpCj4gQXNzdW1pbmcgYW5zd2VyIHRvIGEpIGlzIHllcywgd2lsbCB0aGUga3Zt
LWJpbmFyeSBydW4gb24gYW4gYXJtCj4gd2l0aG91dCBhbnkgYWN0dWFsIGhhcmR3YXJlLXZpcnR1
YWxpemF0aW9uICh3aXRoIHFlbXUgcHJvYmFibHkgZG9pbmcKPiBhbGwgdGhlIHJ1bnRpbWUgaW5z
dHJ1Y3Rpb24tY29udmVyc2lvbnMpPwo+IAoKSSBndWVzcyBpdCBjb3VsZCB3b3JrIGJ1dCBpdCB3
b3VsZCBiZSBleHRyZW1lbHkgc2xvdyBzaW5jZSBlaXRoZXIgYWxsIAppbnN0cnVjdGlvbnMgYXJl
IGVtdWxhdGVkIG9yIGhhcmR3YXJlIHZpcnR1YWxpemFpb24gaXMgdXNlZCB3aXRoIHFlbXUuIApN
YXliZSBXZWkgY2FuIGdpdmUgeW91IGEgYmV0dGVyIGFuc3dlciBvbiB0aGlzLgoKPiAKPiBUaGFu
a3MgYW5kIFJlZ2FyZHMsCj4gQWpheQo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fCj4gTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdAo+IE1pbmlvcy1k
ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwo+IGh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcv
bWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWwKPiAKCl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9z
LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcv
bWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 08:58:58 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 08:58:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f40jQ-0002SK-E8; Thu, 05 Apr 2018 08:58:56 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fi5o=g2=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f40jP-0002SD-S5
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 08:58:55 +0000
X-Inumbo-ID: 79f38060-38af-11e8-9728-bc764e045a96
Received: from mail-wr0-x244.google.com (unknown [2a00:1450:400c:c0c::244])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 79f38060-38af-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 10:58:15 +0200 (CEST)
Received: by mail-wr0-x244.google.com with SMTP id n2so23767033wrj.7
 for <minios-devel@lists.xenproject.org>; Thu, 05 Apr 2018 01:58:53 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=9ranoXNDVU0rzz7ToYHM7sgE22VxSeujNSA+DbQve+o=;
 b=snMLBU1S9aLyM5GYsNOvym2jkgfWU4WmdtEW9gusJCLQdfkXb7SapCcg3dhFtdEYPp
 RL/AzJZZFOmVPQHMUd4o+tL7+g17D/Ef7gUZHIj9tL9G1AxzhtcF8aeh4whIsbDvF4UX
 9cgGtwBfWizUG90PW3Lt1A3jxMbmVGBTRKLki+OYMOxHwSyyRavrYyrTBa20aVUAQlqn
 msITN9t1J45YdGh0MGulUPluZAitEcR8acSvXed9lgi6+ZLRsCREJ8i42xkwG8HBnuxt
 EFjFPq696IK3Ct9ghrMb7biaiCBv9OHmWoZBaayQfY/OJvDKfN0Xf4uTfTCcjvqUIuQu
 arIA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=9ranoXNDVU0rzz7ToYHM7sgE22VxSeujNSA+DbQve+o=;
 b=B+h9Aq0suxKI+fTu5MLaOwJSH8ZSRCd1ynvnfAiT0PYQN58RrZ5mSMxXD891oayvSi
 BQD2fyfuDw6Ays5DLzZZMW+3GRVO0bseIsDxE0U6u/OJHhJxYkF/RV9g2vkjNMHBnA04
 6GGjoB0DQQsieumxVj3QPcQ0m3r1f6qto8eLFIBLf9uTSe6n1gZkurGNrDUZdviaXw3k
 62wpBrvWXSNjZwBCm5AqZL3JR+4vbYjps1U3m3RrAhydD4waVTtzwzXVyWme6ITjYH84
 ebuzWcazfPLUYCUC9KuvoelInyGYDdeoemAEk1pSK28eZJCXDd/18P34TUnuDmp+twxQ
 ez/w==
X-Gm-Message-State: ALQs6tD8VzdASW9dtI0+ZAxQzC+4yyQyxoFSSZQoUD1v/r/7ZF117Gun
 jfQzK6X5rpYA8AzplY5Di9kwTzppyjtaFEjfBEc=
X-Google-Smtp-Source: AIpwx48y2FpRx/gzxniZYI0VXN5WWbhb3LE1jxXdqAv0vgm9m9jNi+88qTwU7I2szI08NAmvddusPGiPNddgJVdlWLw=
X-Received: by 2002:a19:59d1:: with SMTP id
 n200-v6mr12888084lfb.84.1522918732578; 
 Thu, 05 Apr 2018 01:58:52 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Thu, 5 Apr 2018 01:58:52 -0700 (PDT)
In-Reply-To: <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Thu, 5 Apr 2018 14:28:52 +0530
Message-ID: <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhhbmtzIFNpbW9uIGZvciB0aGUgcXVpY2sgcmVwbHkuCgpPbiBUaHUsIEFwciA1LCAyMDE4IGF0
IDI6MjEgUE0sIFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PiB3cm90ZToK
Pgo+Cj4gT24gMDUuMDQuMjAxOCAxMDozNSwgQWpheSBHYXJnIHdyb3RlOgo+Pgo+PiBIaSBBbGwu
Cj4+Cj4+IEkgaGF2ZSBhIGZldyBxdWVyaWVzIHJlZ2FyZGluZyB1bmlrcmFmdCBzdXBwb3J0IGZv
ciBrdm0gb24gYXJtLgo+Pgo+PiBhKQo+PiBJcyBpdCBzdXBwb3J0ZWQgYXQgYWxsPwo+Cj4KPiBJ
dCBkb2VzIG5vdCB3b3JrIHlldCBmb3IgQVJNIGJ1dCB3ZSBhcmUgd29ya2luZyBvbiBpdC4KPgoK
T2tpZXMuCkFueSByb3VnaCBlc3RpbWF0ZSB3aGVuIHdlIGNvdWxkIHNlZSBpdCBpbiB0aGUgcmVw
bz8gOlAKCgoKPgo+IEkgZ3Vlc3MgaXQgY291bGQgd29yayBidXQgaXQgd291bGQgYmUgZXh0cmVt
ZWx5IHNsb3cgc2luY2UgZWl0aGVyIGFsbAo+IGluc3RydWN0aW9ucyBhcmUgZW11bGF0ZWQgb3Ig
aGFyZHdhcmUgdmlydHVhbGl6YWlvbiBpcyB1c2VkIHdpdGggcWVtdS4KCkhtbSwgbWFrZSBzZW5z
ZS4gSSBhbSAod2FzKSBqdXN0IGN1cmlvdXMgZnJvbSBhIGxvZ2ljYWwgdmlld3BvaW50LgoKCgoK
PiBNYXliZSBXZWkgY2FuIGdpdmUgeW91IGEgYmV0dGVyIGFuc3dlciBvbiB0aGlzLgoKV291bGQg
YmUgZ3JlYXQgdG8gaGF2ZSBtb3JlIHZpZXdwb2ludHMgOikKCgoKVGhhbmtzIGFuZCBSZWdhcmRz
LApBamF5CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpN
aW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9y
ZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRl
dmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 09:05:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 09:05:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f40q9-0003Cu-Hn; Thu, 05 Apr 2018 09:05:53 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fi5o=g2=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f40q8-0003Cp-57
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 09:05:52 +0000
X-Inumbo-ID: 72487d2c-38b0-11e8-9728-bc764e045a96
Received: from mail-wm0-x22a.google.com (unknown [2a00:1450:400c:c09::22a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 72487d2c-38b0-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 11:05:12 +0200 (CEST)
Received: by mail-wm0-x22a.google.com with SMTP id x4so4788469wmh.5
 for <minios-devel@lists.xenproject.org>; Thu, 05 Apr 2018 02:05:50 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=EuGWyFUqhY6WASG6h9KhgtVczD6Y7HG8rfma3OtkF7o=;
 b=ro45bHDb64f0L95QCU86ifnbXBvT915T4UKHwDG5AvRnf0rq9YymE2fEGQE6PtklzS
 wSRit/B8rmaujp9KsPFTCbfoa4clhul8cw8SEEnD7mqc/+43RfKiXeXVt99mKn4ACPcY
 U8yuNo1CpOGcFxc3PlM51R5xBWLs07EXC45+Y/8L8gqCxlRTJ6qIAeDuCDmSYSWedJww
 iPJ7D992nFmjbr+uWsycnME0OIxOe2rCznW4RrU8RyRK8lTQdhlaHN7QUKoBsj4Qv6wK
 lUU2jJlJpdrI5NXrxyRJ2TxMmKpkjqzUmoISvDLO2yU8ynQzIaSGlGY0fmfbDPwPAQnQ
 oNNg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=EuGWyFUqhY6WASG6h9KhgtVczD6Y7HG8rfma3OtkF7o=;
 b=tFuJ97f+npn2awzkioV59PsWXio+dRUlFHlJGevQSeKrLz5nPcaBP2O3S7PAuLNVKd
 MBEEHgm1GZ5qMUs8QKcr++ovu8nvwm3JDVQ9R6+qzvykfyvoTwbmxXkDA1wyYEJbTUqx
 ACttBJtquEqdaAbR/xzLEhGF4rOUZKM6ZTdI08cN4rLr5pfcJKDdbnkXvkPfRPr10vWA
 y/ahz4+uHATx3q2fm4ZKnxcjf0JR6f7mwCyhDbcXru8tUA4ZiVFUMcdNvVQ9WHg2C5Hf
 1azimV1xgp46EIEQaO8rpxO5ZKLkuCkvdfiIaFMj8KWn0krwUWx7RC6FiMHk7/4wCu39
 yBLw==
X-Gm-Message-State: ALQs6tBR1/KoA890EUYpMbpRAXU5WVs3bdw/Bvwb6c6M/3iwAx1pp7YT
 XE+pYvBE2SeU5MlrW/JCvn9poY6WjPReG1eCvck=
X-Google-Smtp-Source: AIpwx4/Bl4jGn3mp+2y1suzcksMYorAnVglKgYeflEXhn44QR93nX3sHYy4q2yOtnPFg9icKlO8OqVH2rae5oeJjN+U=
X-Received: by 10.46.131.86 with SMTP id l22mr10740806ljh.82.1522919149254;
 Thu, 05 Apr 2018 02:05:49 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Thu, 5 Apr 2018 02:05:48 -0700 (PDT)
In-Reply-To: <cc93ba7c-7011-dd12-368f-113d6097544d@neclab.eu>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
 <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
 <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
 <CAHP4M8XO-hSJT0EXkhoTZDv_esZy=dbYLTAqWS7jAkxCTe9VmA@mail.gmail.com>
 <CAHP4M8UL0=FARsbhy7ZO3Pteyq+8FMWCqT7N0ca2akk_8+ckBA@mail.gmail.com>
 <CAHP4M8URiaqes5yf_nAoBeWWjSV9UeTz6gFuni1JsfQBQdoBqw@mail.gmail.com>
 <CAHP4M8UGQ5JaFbHFG_cgFQoP+d3YRR1yvbBjXPHq4bN1kHcoSg@mail.gmail.com>
 <a833ecbd-33bd-3f67-a167-aef790c7051c@neclab.eu>
 <CAHP4M8XrH+Fv0hrYOUS_84ggH+LnNg+EZMjZ=QC9Z+jK=O2MwQ@mail.gmail.com>
 <cc93ba7c-7011-dd12-368f-113d6097544d@neclab.eu>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Thu, 5 Apr 2018 14:35:48 +0530
Message-ID: <CAHP4M8V=o3N_QWsz8RKV=UkvFe-70HFgk9HWf7PFGbygG1O_vA@mail.gmail.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24uCgo+Cj4gQ2FuIHlvdSBjb25maXJtIHRoYXQgeW91IGNhbiBjcmVhdGUgYSBMaW51
eCBQViBndWVzdCBvbiB5b3VyIHN5c3RlbT8KPgo+CgpJIGhhdmUgYWxyZWFkeSBydW4gbG90cyBv
ZiBydW1wcnVuLWJhc2VkIHVuaWtlcm5lbHMgb24gbXkgKHg4Nl82NCkgc3lzdGVtIC4KVGhlc2Ug
cnVtcHJ1bi1iYXNlZCB1bmlrZXJuZWxzIHVzZSB4ZW5fcHYgbW9kZS4KClRyeWluZyB0byBpbnN0
YWxsIGEgImNvbnZlbnRpb25hbCIgUFYgZ3Vlc3QgdG9vIC4uLgoKCgoKCi0tIApSZWdhcmRzLApB
amF5CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5p
b3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpo
dHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 10:16:19 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 10:16:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f41wI-0000ni-4j; Thu, 05 Apr 2018 10:16:18 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=jj/u=gz=gmail.com=jandryuk@srs-us1.protection.inumbo.net>)
 id 1f3hKL-0004m3-QX
 for minios-devel@lists.xenproject.org; Wed, 04 Apr 2018 12:15:45 +0000
X-Inumbo-ID: cf9b6651-3801-11e8-9728-bc764e045a96
Received: from mail-wr0-x242.google.com (unknown [2a00:1450:400c:c0c::242])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id cf9b6651-3801-11e8-9728-bc764e045a96;
 Wed, 04 Apr 2018 14:15:07 +0200 (CEST)
Received: by mail-wr0-x242.google.com with SMTP id d17so6893774wre.1;
 Wed, 04 Apr 2018 05:15:43 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=sePUnTzA4xc/mjTMpkfbDNzeBdrhzvsv0lZ1OhwAaEg=;
 b=ZzABKGpchDbfcZYPl3i7KC+zYgGPDMQci+hL49jdhzJsr4AAH8KwjIw2Vbt+WNg53p
 TYOc5VqnjMkPyYenlcPDD/EuZc+QtxHbaa+/2ybZSIa1Ccf1vnbHLGYVQUHYnA+1VCod
 dBaqD4dJfwv0ZH06e8DazlMUBz1UwXDz9FZ+hSWvC+BwAhOkMHn/CIfGUctq/IhuFCkw
 MJ6vaV9kWqa7SF8GqH2zlgu3ZhfGWiQucMDvZzYh5B5Lil4IYGDobWkolWB9Skhz2SqS
 JCbTofdnf0Nul8YGnBJwP2jcQks+oR1bySERJYZ01BP7nCLiSq44ark2sS9ZLdvCXbdT
 rraQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=sePUnTzA4xc/mjTMpkfbDNzeBdrhzvsv0lZ1OhwAaEg=;
 b=bdQzy2D6Faen+9Hw3kERthINUptcXrh5L/ZeXAtIWC5/b0XTGzJwppTgm9482Ho8sT
 kgURg3nZtbaCaBA4feTH7leRXNnPolL0cZ+6xrQ9bkKFDStTvHcN7bBsCVbYTzWGpO5V
 in5/1rGpccmzuZJyrYlp37xjR8Cb/B5AftRneMILvSs/ami9+35wZUnyu/nT8NraXozc
 o+KwkkTf5SwqTY7T7x1cLZiYBI8Be0H1nMwWXIwYpTFrZFM2r5PXggtuQsRvrJZs7jNm
 ni7LBto0s27d8VRs44iBBHjeZB1dYfNH51pJKI6cs5lkZG2pc+gEIdBmTxjEwT15V10C
 eHKQ==
X-Gm-Message-State: ALQs6tCglNdEuvRakCyWy5ooRPTwzO5/EVkpSy1H/OvfFnlpWPNzp2tE
 m95+5Te5WRo4EyXZRdJwlN9bVhmEnchpaAoUbsFzjZsR
X-Google-Smtp-Source: AIpwx483N/if/bgNzE9jN+iiSd+6wp4Ye4u0bq8jAHHnAqSbCQkLHGVkEwBUYfZ3pb3zlRJmFUOgg4YlP5p/edT7+Nk=
X-Received: by 2002:a19:a705:: with SMTP id q5-v6mr10660751lfe.2.1522844142381; 
 Wed, 04 Apr 2018 05:15:42 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.46.80.18 with HTTP; Wed, 4 Apr 2018 05:15:41 -0700 (PDT)
In-Reply-To: <572b11f1-79f8-7e29-f340-e701543ea0b6@suse.com>
References: <CAHP4M8WiOD+RhbX2Eqk8z+1g=i0pcQNmJqM6X_hQ_u=K+A3ryw@mail.gmail.com>
 <alpine.LFD.2.21.1804041102390.2498@algedi.dur.ac.uk>
 <572b11f1-79f8-7e29-f340-e701543ea0b6@suse.com>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Wed, 4 Apr 2018 08:15:41 -0400
Message-ID: <CAKf6xpuD6B9LG2P3oSkMRwykmSy_y4M_b4gx1xUSH3rx1Gs9Dw@mail.gmail.com>
To: Juergen Gross <jgross@suse.com>
X-Mailman-Approved-At: Thu, 05 Apr 2018 10:16:17 +0000
Subject: Re: [Minios-devel] [Xen-devel] Xen-4.10 Domain-0 crashes at bootup
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org,
 Ajay Garg <ajaygargnsit@gmail.com>, M A Young <m.a.young@durham.ac.uk>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgNCwgMjAxOCBhdCA2OjI1IEFNLCBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3Vz
ZS5jb20+IHdyb3RlOgo+IE9uIDA0LzA0LzE4IDEyOjA3LCBNIEEgWW91bmcgd3JvdGU6Cj4+IE9u
IFdlZCwgNCBBcHIgMjAxOCwgQWpheSBHYXJnIHdyb3RlOgo+Pgo+Pj4gU2luY2UgSSBmYWlsZWQg
dG8gZ2V0IGEgc2luZ2xlIHJlcGx5IG9uIG15IG9yaWdpbmFsIGlzc3VlIGFzIHBlcgo+Pj4gaHR0
cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9hcmNoaXZlcy9odG1sL21pbmlvcy1kZXZlbC8yMDE4
LTA0L21zZzAwMDA0Lmh0bWwsCj4+PiBzbyBJIGhhZCBubyBvcHRpb24gYnV0IHRvIHRyeSBvbiBh
IG5ld2VyIHhlbiB2ZXJzaW9uLgo+Pj4KPj4+IFNvLCBJIGNyZWF0ZWQgIGEgIG5ldyB2aXJ0dWFs
Ym94LWd1ZXN0LCBhbmQgZm9sbG93ZWQgdGhlIHN0ZXBzIGFzIHBlcgo+Pj4gaHR0cHM6Ly9ibG9n
LndlcmsyMS5kZS9lbi8yMDE4LzAyLzA4L2J1aWxkLXhlbi1oeXBlcnZpc29yLTQxMC1hbmQteGVu
LXRvb2xzLXVidW50dS0xNjA0LXB2aAo+Pj4KPj4+IE5vdywgd2hlbiBzdGFydCB0aGUgZ3Vlc3Qg
d2l0aCBYZW4taHlwZXJ2aXNvciBlbmFibGVkLCBpdCBkb2VzIG5vdCBjb21lIHVwLgo+Pj4gSSB0
b29rIHNlcmlhbC1sb2dzIGF0IGJvb3R1cCB0aW1lLCB0aGV5IGFyZSBhcyBmb2xsb3dzIDoKPj4+
Cj4+PiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo+Pj4gIFhlbiA0LjEwLjEtcHJlCj4+PiAoWEVOKSBY
ZW4gdmVyc2lvbiA0LjEwLjEtcHJlIChhamF5QCkgKGdjYyAoVWJ1bnR1Cj4+PiA1LjQuMC02dWJ1
bnR1MX4xNi4wNC45KSA1LjQuMCAyMDE2MDYwOSkgZGVidWc9biAgV2VkIEFwciAgNCAxMjo1NDo1
OAo+Pj4gSVNUIDIwMTgKPj4+IChYRU4pIExhdGVzdCBDaGFuZ2VTZXQ6IFR1ZSBNYXIgMjAgMTQ6
MjM6MTQgMjAxOCArMDEwMCBnaXQ6MGY5Mjk2OAo+Pj4gKFhFTikgQm9vdGxvYWRlcjogR1JVQiAy
LjAyfmJldGEyLTM2dWJ1bnR1My4xNwo+Pj4gKFhFTikgQ29tbWFuZCBsaW5lOiBwbGFjZWhvbGRl
ciBjb25zb2xlPWNvbTEgY29tMT0xMTUyMDAsOG4xCj4+PiBsb2dsdmw9YWxsIGd1ZXN0X2xvZ2x2
bD1hbGwKPj4+IChYRU4pIFhlbiBpbWFnZSBsb2FkIGJhc2UgYWRkcmVzczogMAo+Pj4gKFhFTikg
VmlkZW8gaW5mb3JtYXRpb246Cj4+PiAoWEVOKSAgVkdBIGlzIHRleHQgbW9kZSA4MHgyNSwgZm9u
dCA4eDE2Cj4+PiAoWEVOKSBEaXNjIGluZm9ybWF0aW9uOgo+Pj4gKFhFTikgIEZvdW5kIDEgTUJS
IHNpZ25hdHVyZXMKPj4+IChYRU4pICBGb3VuZCAxIEVERCBpbmZvcm1hdGlvbiBzdHJ1Y3R1cmVz
Cj4+PiAoWEVOKSBYZW4tZTgyMCBSQU0gbWFwOgo+Pj4gKFhFTikgIDAwMDAwMDAwMDAwMDAwMDAg
LSAwMDAwMDAwMDAwMDlmYzAwICh1c2FibGUpCj4+PiAoWEVOKSAgMDAwMDAwMDAwMDA5ZmMwMCAt
IDAwMDAwMDAwMDAwYTAwMDAgKHJlc2VydmVkKQo+Pj4gKFhFTikgIDAwMDAwMDAwMDAwZjAwMDAg
LSAwMDAwMDAwMDAwMTAwMDAwIChyZXNlcnZlZCkKPj4+IChYRU4pICAwMDAwMDAwMDAwMTAwMDAw
IC0gMDAwMDAwMDBiZmZmMDAwMCAodXNhYmxlKQo+Pj4gKFhFTikgIDAwMDAwMDAwYmZmZjAwMDAg
LSAwMDAwMDAwMGMwMDAwMDAwIChBQ1BJIGRhdGEpCj4+PiAoWEVOKSAgMDAwMDAwMDBmZWMwMDAw
MCAtIDAwMDAwMDAwZmVjMDEwMDAgKHJlc2VydmVkKQo+Pj4gKFhFTikgIDAwMDAwMDAwZmVlMDAw
MDAgLSAwMDAwMDAwMGZlZTAxMDAwIChyZXNlcnZlZCkKPj4+IChYRU4pICAwMDAwMDAwMGZmZmMw
MDAwIC0gMDAwMDAwMDEwMDAwMDAwMCAocmVzZXJ2ZWQpCj4+PiAoWEVOKSBOZXcgWGVuIGltYWdl
IGJhc2UgYWRkcmVzczogMHhiZjgwMDAwMAo+Pj4gKFhFTikgU3lzdGVtIFJBTTogMzA3MU1CICgz
MTQ1Mjc2a0IpCj4+PiAoWEVOKSBBQ1BJOiBSU0RQIDAwMEUwMDAwLCAwMDI0IChyMiBWQk9YICAp
Cj4+PiAoWEVOKSBBQ1BJOiBYU0RUIEJGRkYwMDMwLCAwMDNDIChyMSBWQk9YICAgVkJPWFhTRFQg
ICAgICAgIDEgQVNMICAgICAgICA2MSkKPj4+IChYRU4pIEFDUEk6IEZBQ1AgQkZGRjAwRjAsIDAw
RjQgKHI0IFZCT1ggICBWQk9YRkFDUCAgICAgICAgMSBBU0wgICAgICAgIDYxKQo+Pj4gKFhFTikg
QUNQSTogRFNEVCBCRkZGMDQ3MCwgMjFGRiAocjIgVkJPWCAgIFZCT1hCSU9TICAgICAgICAyIElO
VEwgMjAxNjAxMDgpCj4+PiAoWEVOKSBBQ1BJOiBGQUNTIEJGRkYwMjAwLCAwMDQwCj4+PiAoWEVO
KSBBQ1BJOiBBUElDIEJGRkYwMjQwLCAwMDU0IChyMiBWQk9YICAgVkJPWEFQSUMgICAgICAgIDEg
QVNMICAgICAgICA2MSkKPj4+IChYRU4pIEFDUEk6IFNTRFQgQkZGRjAyQTAsIDAxQ0MgKHIxIFZC
T1ggICBWQk9YQ1BVVCAgICAgICAgMiBJTlRMIDIwMTYwMTA4KQo+Pj4gKFhFTikgTm8gTlVNQSBj
b25maWd1cmF0aW9uIGZvdW5kCj4+PiAoWEVOKSBGYWtpbmcgYSBub2RlIGF0IDAwMDAwMDAwMDAw
MDAwMDAtMDAwMDAwMDBiZmZmMDAwMAo+Pj4gKFhFTikgRG9tYWluIGhlYXAgaW5pdGlhbGlzZWQK
Pj4+IChYRU4pIENQVSBWZW5kb3I6IEludGVsLCBGYW1pbHkgNiAoMHg2KSwgTW9kZWwgMTQyICgw
eDhlKSwgU3RlcHBpbmcgOQo+Pj4gKHJhdyAwMDA4MDZlOSkKPj4+IChYRU4pIGZvdW5kIFNNUCBN
UC10YWJsZSBhdCAwMDA5ZmZmMAo+Pj4gKFhFTikgRE1JIDIuNSBwcmVzZW50Lgo+Pj4gKFhFTikg
VXNpbmcgQVBJQyBkcml2ZXIgZGVmYXVsdAo+Pj4gKFhFTikgQUNQSTogUE0tVGltZXIgSU8gUG9y
dDogMHg0MDA4ICgzMiBiaXRzKQo+Pj4gKFhFTikgQUNQSTogU0xFRVAgSU5GTzogcG0xeF9jbnRb
MTo0MDA0LDE6MF0sIHBtMXhfZXZ0WzE6NDAwMCwxOjBdCj4+PiAoWEVOKSBBQ1BJOiAgICAgICAg
ICAgICB3YWtldXBfdmVjW2JmZmYwMjBjXSwgdmVjX3NpemVbMjBdCj4+PiAoWEVOKSBBQ1BJOiBM
b2NhbCBBUElDIGFkZHJlc3MgMHhmZWUwMDAwMAo+Pj4gKFhFTikgQUNQSTogTEFQSUMgKGFjcGlf
aWRbMHgwMF0gbGFwaWNfaWRbMHgwMF0gZW5hYmxlZCkKPj4+IChYRU4pIEFDUEk6IElPQVBJQyAo
aWRbMHgwMV0gYWRkcmVzc1sweGZlYzAwMDAwXSBnc2lfYmFzZVswXSkKPj4+IChYRU4pIElPQVBJ
Q1swXTogYXBpY19pZCAxLCB2ZXJzaW9uIDMyLCBhZGRyZXNzIDB4ZmVjMDAwMDAsIEdTSSAwLTIz
Cj4+PiAoWEVOKSBBQ1BJOiBJTlRfU1JDX09WUiAoYnVzIDAgYnVzX2lycSAwIGdsb2JhbF9pcnEg
MiBkZmwgZGZsKQo+Pj4gKFhFTikgQUNQSTogSU5UX1NSQ19PVlIgKGJ1cyAwIGJ1c19pcnEgOSBn
bG9iYWxfaXJxIDkgaGlnaCBsZXZlbCkKPj4+IChYRU4pIEFDUEk6IElSUTAgdXNlZCBieSBvdmVy
cmlkZS4KPj4+IChYRU4pIEFDUEk6IElSUTIgdXNlZCBieSBvdmVycmlkZS4KPj4+IChYRU4pIEFD
UEk6IElSUTkgdXNlZCBieSBvdmVycmlkZS4KPj4+IChYRU4pIEVuYWJsaW5nIEFQSUMgbW9kZTog
IEZsYXQuICBVc2luZyAxIEkvTyBBUElDcwo+Pj4gKFhFTikgRVJTVCB0YWJsZSB3YXMgbm90IGZv
dW5kCj4+PiAoWEVOKSBVc2luZyBBQ1BJIChNQURUKSBmb3IgU01QIGNvbmZpZ3VyYXRpb24gaW5m
b3JtYXRpb24KPj4+IChYRU4pIFNNUDogQWxsb3dpbmcgMSBDUFVzICgwIGhvdHBsdWcgQ1BVcykK
Pj4+IChYRU4pIElSUSBsaW1pdHM6IDI0IEdTSSwgMTg0IE1TSS9NU0ktWAo+Pj4gKFhFTikgTm90
IGVuYWJsaW5nIHgyQVBJQzogZGVwZW5kcyBvbiBpb21tdV9zdXBwb3J0c19laW0uCj4+PiAoWEVO
KSB4c3RhdGU6IHNpemU6IDB4NDQwIGFuZCBzdGF0ZXM6IDB4Nwo+Pj4gKFhFTikgQ1BVMDogTm8g
TUNFIGJhbmtzIHByZXNlbnQuIE1hY2hpbmUgY2hlY2sgc3VwcG9ydCBkaXNhYmxlZAo+Pj4gKFhF
TikgU3BlY3VsYXRpdmUgbWl0aWdhdGlvbiBmYWNpbGl0aWVzOgo+Pj4gKFhFTikgICBDb21waWxl
ZC1pbiBzdXBwb3J0OiBJTkRJUkVDVF9USFVOSwo+Pj4gKFhFTikgQlRJIG1pdGlnYXRpb25zOiBU
aHVuayBSRVRQT0xJTkUsIE90aGVyczogUlNCX05BVElWRSBSU0JfVk1FWElUCj4+PiAoWEVOKSBV
c2luZyBzY2hlZHVsZXI6IFNNUCBDcmVkaXQgU2NoZWR1bGVyIChjcmVkaXQpCj4+PiAoWEVOKSBQ
bGF0Zm9ybSB0aW1lciBpcyAzLjU3OU1IeiBBQ1BJIFBNIFRpbWVyCj4+PiAoWEVOKSBEZXRlY3Rl
ZCAyNzEyLjAzNSBNSHogcHJvY2Vzc29yLgo+Pj4gKFhFTikgSW5pdGluZyBtZW1vcnkgc2hhcmlu
Zy4KPj4+IChYRU4pIGFsdCB0YWJsZSBmZmZmODJkMDgwNDIxNzk4IC0+IGZmZmY4MmQwODA0MjMy
NDQKPj4+IChYRU4pIEkvTyB2aXJ0dWFsaXNhdGlvbiBkaXNhYmxlZAo+Pj4gKFhFTikgbnJfc29j
a2V0czogMQo+Pj4gKFhFTikgRU5BQkxJTkcgSU8tQVBJQyBJUlFzCj4+PiAoWEVOKSAgLT4gVXNp
bmcgbmV3IEFDSyBtZXRob2QKPj4+IChYRU4pIC4uVElNRVI6IHZlY3Rvcj0weEYwIGFwaWMxPTAg
cGluMT0yIGFwaWMyPS0xIHBpbjI9LTEKPj4+IChYRU4pIEFsbG9jYXRlZCBjb25zb2xlIHJpbmcg
b2YgMTYgS2lCLgo+Pj4gKFhFTikgQnJvdWdodCB1cCAxIENQVXMKPj4+IChYRU4pIGJ1aWxkLWlk
OiAwNzM0MDUwODA5ZTBjYjlmNTJlNjUzMjJhMGQzOTExZDA4MmUzNDhiCj4+PiAoWEVOKSBDUFVJ
RExFOiBkaXNhYmxlZCBkdWUgdG8gbm8gSFBFVC4gRm9yY2UgZW5hYmxlIHdpdGggJ2NwdWlkbGUn
Lgo+Pj4gKFhFTikgQUNQSSBzbGVlcCBtb2RlczogUzMKPj4+IChYRU4pIFZQTVU6IGRpc2FibGVk
Cj4+PiAoWEVOKSB4ZW5vcHJvZjogSW5pdGlhbGl6YXRpb24gZmFpbGVkLiBJbnRlbCBwcm9jZXNz
b3IgZmFtaWx5IDYgbW9kZWwKPj4+IDE0MiBpcyBub3Qgc3VwcG9ydGVkCj4+PiAoWEVOKSBEb20w
IGhhcyBtYXhpbXVtIDIwOCBQSVJRcwo+Pj4gKFhFTikgTlggKEV4ZWN1dGUgRGlzYWJsZSkgcHJv
dGVjdGlvbiBhY3RpdmUKPj4+IChYRU4pICoqKiBMT0FESU5HIERPTUFJTiAwICoqKgo+Pj4gKFhF
TikgIFhlbiAga2VybmVsOiA2NC1iaXQsIGxzYiwgY29tcGF0MzIKPj4+IChYRU4pICBEb20wIGtl
cm5lbDogNjQtYml0LCBQQUUsIGxzYiwgcGFkZHIgMHgxMDAwMDAwIC0+IDB4Mjk1NzAwMAo+Pj4g
KFhFTikgUEhZU0lDQUwgTUVNT1JZIEFSUkFOR0VNRU5UOgo+Pj4gKFhFTikgIERvbTAgYWxsb2Mu
OiAgIDAwMDAwMDAwYjQwMDAwMDAtPjAwMDAwMDAwYjgwMDAwMDAgKDcxNTMwOSBwYWdlcwo+Pj4g
dG8gYmUgYWxsb2NhdGVkKQo+Pj4gKFhFTikgIEluaXQuIHJhbWRpc2s6IDAwMDAwMDAwYmM5MTUw
MDAtPjAwMDAwMDAwYmY3ZmZlZDkKPj4+IChYRU4pIFZJUlRVQUwgTUVNT1JZIEFSUkFOR0VNRU5U
Ogo+Pj4gKFhFTikgIExvYWRlZCBrZXJuZWw6IGZmZmZmZmZmODEwMDAwMDAtPmZmZmZmZmZmODI5
NTcwMDAKPj4+IChYRU4pICBJbml0LiByYW1kaXNrOiAwMDAwMDAwMDAwMDAwMDAwLT4wMDAwMDAw
MDAwMDAwMDAwCj4+PiAoWEVOKSAgUGh5cy1NYWNoIG1hcDogMDAwMDAwODAwMDAwMDAwMC0+MDAw
MDAwODAwMDVhYzhjMAo+Pj4gKFhFTikgIFN0YXJ0IGluZm86ICAgIGZmZmZmZmZmODI5NTcwMDAt
PmZmZmZmZmZmODI5NTc0YjQKPj4+IChYRU4pICBYZW5zdG9yZSByaW5nOiAwMDAwMDAwMDAwMDAw
MDAwLT4wMDAwMDAwMDAwMDAwMDAwCj4+PiAoWEVOKSAgQ29uc29sZSByaW5nOiAgMDAwMDAwMDAw
MDAwMDAwMC0+MDAwMDAwMDAwMDAwMDAwMAo+Pj4gKFhFTikgIFBhZ2UgdGFibGVzOiAgIGZmZmZm
ZmZmODI5NTgwMDAtPmZmZmZmZmZmODI5NzEwMDAKPj4+IChYRU4pICBCb290IHN0YWNrOiAgICBm
ZmZmZmZmZjgyOTcxMDAwLT5mZmZmZmZmZjgyOTcyMDAwCj4+PiAoWEVOKSAgVE9UQUw6ICAgICAg
ICAgZmZmZmZmZmY4MDAwMDAwMC0+ZmZmZmZmZmY4MmMwMDAwMAo+Pj4gKFhFTikgIEVOVFJZIEFE
RFJFU1M6IGZmZmZmZmZmODI0YTQxODAKPj4+IChYRU4pIERvbTAgaGFzIG1heGltdW0gMSBWQ1BV
cwo+Pj4gKFhFTikgSW5pdGlhbCBsb3cgbWVtb3J5IHZpcnEgdGhyZXNob2xkIHNldCBhdCAweDQw
MDAgcGFnZXMuCj4+PiAoWEVOKSBTY3J1YmJpbmcgRnJlZSBSQU0gb24gMSBub2RlcyB1c2luZyAx
IENQVXMKPj4+IChYRU4pIC4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLmRvbmUuCj4+PiAoWEVOKSBT
dGQuIExvZ2xldmVsOiBBbGwKPj4+IChYRU4pIEd1ZXN0IExvZ2xldmVsOiBBbGwKPj4+IChYRU4p
ICoqKiBTZXJpYWwgaW5wdXQgLT4gRE9NMCAodHlwZSAnQ1RSTC1hJyB0aHJlZSB0aW1lcyB0byBz
d2l0Y2gKPj4+IGlucHV0IHRvIFhlbikKPj4+IChYRU4pIEZyZWVkIDQ2OGtCIGluaXQgbWVtb3J5
Cj4+PiBtYXBwaW5nIGtlcm5lbCBpbnRvIHBoeXNpY2FsIG1lbW9yeQo+Pj4gYWJvdXQgdG8gZ2V0
IHN0YXJ0ZWQuLi4KPj4+IChYRU4pIGQwdjAgVW5oYW5kbGVkIGludmFsaWQgb3Bjb2RlIGZhdWx0
L3RyYXAgWyM2LCBlYz1mZmZmZmZmZl0KPj4+IChYRU4pIGRvbWFpbl9jcmFzaF9zeW5jIGNhbGxl
ZCBmcm9tIGVudHJ5LlM6IGZhdWx0IGF0IGZmZmY4MmQwODAzNTUwMWYKPj4+IHg4Nl82NC9lbnRy
eS5TI2NyZWF0ZV9ib3VuY2VfZnJhbWUrMHgxMzUvMHgxNjYKPj4+IChYRU4pIERvbWFpbiAwICh2
Y3B1IzApIGNyYXNoZWQgb24gY3B1IzA6Cj4+PiAoWEVOKSAtLS0tWyBYZW4tNC4xMC4xLXByZSAg
eDg2XzY0ICBkZWJ1Zz1uICAgTm90IHRhaW50ZWQgXS0tLS0KPj4+IChYRU4pIENQVTogICAgMAo+
Pj4gKFhFTikgUklQOiAgICBlMDMzOls8ZmZmZmZmZmY4MjRiNDljZD5dCj4+PiAoWEVOKSBSRkxB
R1M6IDAwMDAwMDAwMDAwMDAyODYgICBFTTogMSAgIENPTlRFWFQ6IHB2IGd1ZXN0IChkMHYwKQo+
Pj4gKFhFTikgcmF4OiAwMDAwMDAwMDAwMDAwMDI5ICAgcmJ4OiAwMDAwMDAwMDAwMDAwMDBhICAg
cmN4OiBmZmZmZmZmZjgyMjYxMWM4Cj4+PiAoWEVOKSByZHg6IDAwMDAwMDAwMDAwMDAwMDAgICBy
c2k6IDAwMDAwMDAwMDAwMDAwMDAgICByZGk6IDAwMDAwMDAwMDAwMDAwMDAKPj4+IChYRU4pIHJi
cDogZmZmZmZmZmY4MjIwM2UwMCAgIHJzcDogZmZmZmZmZmY4MjIwM2Q2OCAgIHI4OiAgNjU3NjYx
NjU2YzIwNjc2ZQo+Pj4gKFhFTikgcjk6ICAwMDAwMDAwMDAwMDAwMDA3ICAgcjEwOiBmZmZmZmZm
ZjgyMjAzZDg0ICAgcjExOiAwMDAwMDAwMDAwMDAwMDI5Cj4+PiAoWEVOKSByMTI6IDAwMDAwMDAw
MDAwMDAxMDAgICByMTM6IDAwMDAwMDAwMDAwMDAzNDAgICByMTQ6IDAwMDAwMDAwMDAwMDA0NDAK
Pj4+IChYRU4pIHIxNTogZmZmZmZmZmY4MjIwM2RjMCAgIGNyMDogMDAwMDAwMDA4MDA1MDAzMyAg
IGNyNDogMDAwMDAwMDAwMDA0MDZhMAo+Pj4gKFhFTikgY3IzOiAwMDAwMDAwMGI2MjBhMDAwICAg
Y3IyOiAwMDAwMDAwMDAwMDAwMDAwCj4+PiAoWEVOKSBmc2I6IDAwMDAwMDAwMDAwMDAwMDAgICBn
c2I6IGZmZmZmZmZmODI0ODAwMDAgICBnc3M6IDAwMDAwMDAwMDAwMDAwMDAKPj4+IChYRU4pIGRz
OiAwMDAwICAgZXM6IDAwMDAgICBmczogMDAwMCAgIGdzOiAwMDAwICAgc3M6IGUwMmIgICBjczog
ZTAzMwo+Pj4gKFhFTikgR3Vlc3Qgc3RhY2sgdHJhY2UgZnJvbSByc3A9ZmZmZmZmZmY4MjIwM2Q2
ODoKPj4+IChYRU4pICAgIGZmZmZmZmZmODIyNjExYzggMDAwMDAwMDAwMDAwMDAyOSBmZmZmZmZm
ZjgyNGI0OWNkIDAwMDAwMDAxMDAwMGUwMzAKPj4+IChYRU4pICAgIDAwMDAwMDAwMDAwMTAwODYg
ZmZmZmZmZmY4MjIwM2RhMCAwMDAwMDAwMDAwMDBlMDJiIDAwMDAwNDQwMDAwMDAwMDcKPj4+IChY
RU4pICAgIDAwMDAwMDAwMDAwMDAzNDAgMDAwMDAwMDAwMDAwMDAyMCBmZmZmZmZmZjgyMjAzZGYw
IDAwMDAwMjQwMDAwMDAxMDAKPj4+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgYTZmNmEyOTJh
NmY2YTIwMCBmZmZmZmZmZjgyMjAzZTI4IGZmZmZmZmZmODFlMDhkODAKPj4+IChYRU4pICAgIDAw
MDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIGZmZmZmZmZm
ODIyMDNlNjAKPj4+IChYRU4pICAgIGZmZmZmZmZmODI0YjQzNDIgZmZmZmZmZmY4MjIwM2UyOCBm
ZmZmZmZmZjgxMDFmMmE2IGZmZmZmZmZmODIyMDNlMjgKPj4+IChYRU4pICAgIGZmZmZmZmZmODEw
NDA5MDAgZmZmZmZmZmY4MTA0MGFlMiAwMDAwMDgwMDAwMDgwNmU5IDA3ODlkYmY1ZGVmODIyMDMK
Pj4+IChYRU4pICAgIGE2ZjZhMjkyYTZmNmEyMDAgMDAwMDAwMDAwMDAwMDAxOCBmZmZmZmZmZjgy
MjAzZTc4IGZmZmZmZmZmODIyMDNlODgKPj4+IChYRU4pICAgIGZmZmZmZmZmODI0YjU2YjAgZmZm
ZmZmZmY4MjRiNTZiMCAwMDAwMDAwMDAxMDAwMDAwIGZmZmZmZmZmODIyMDNmMDAKPj4+IChYRU4p
ICAgIGZmZmZmZmZmODIyMDNlZjAgZmZmZmZmZmY4MjRiMDdhYSBmZmZmZmZmZjAwMDAwMDEwIGZm
ZmZmZmZmODIyMDNmMDAKPj4+IChYRU4pICAgIGZmZmZmZmZmODIyMDNlYjggYTZmNmEyOTJhNmY2
YTIwMCBmZmZmZmZmZjgyMjAzZTY4IGE2ZjZhMjkyYTZmNmEyMDAKPj4+IChYRU4pICAgIGZmZmZm
ZmZmODIyMDNmNjAgZmZmZmZmZmY4MjIwM2Y1YyAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAw
MDAwMDAKPj4+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgZmZmZmZmZmY4MjIwM2YzMCBmZmZm
ZmZmZjgyNGE0ZDBjIGE2ZjZhMjkyYTZmNmEyMDAKPj4+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAw
MDAgZmZmZmZmZmY4MjIwM2Y2MCBmZmZmZmZmZjgyMjAzZjVjIDAwMDAwMDAwMDAwMDAwMDAKPj4+
IChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgZmZmZmZmZmY4MjIwM2Y0MCBmZmZmZmZmZjgyNGE0
MmQ1IGZmZmZmZmZmODIyMDNmZjgKPj4+IChYRU4pICAgIGZmZmZmZmZmODI0YWQxNDUgMDAwODA2
ZTkwMDAwMDAwMCAwMDAwMDAwMTAwMDAwODAwIDAzMDAwMDAxMDAwMDAwMzIKPj4+IChYRU4pICAg
IDAwMDAwMDAwMDAwMDAwMDUgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAw
MDAwMDAwMDAwMDAKPj4+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAw
MCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAKPj4+IChYRU4pICAgIDAwMDAwMDAw
MDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAw
MDAKPj4+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAw
MDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAKPj4+IChYRU4pIEhhcmR3YXJlIERvbTAgY3Jhc2hl
ZDogcmVib290aW5nIG1hY2hpbmUgaW4gNSBzZWNvbmRzLgo+Pj4gKFhFTikgUmVzZXR0aW5nIHdp
dGggQUNQSSBNRU1PUlkgb3IgSS9PIFJFU0VUX1JFRy4KPj4+ICMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
Cj4+Pgo+Pj4KPj4+IE9uZSB0aGluZyBpcyBmb3Igc3VyZSwgdGhhdCB0aGVyZSBpcyBubyB2aXJ0
dWFsaXphdGlvbi1yZWxhdGVkIGlzc3VlLAo+Pj4gYXMgeGVuLWRvbTAgaXMgc3RhcnRpbmcgaW4g
UFYgbW9kZSBvbmx5Lgo+Pgo+PiBJdCBpcyBhIGtlcm5lbCBwcm9ibGVtIHVuZGVyIHNvbWUgY29t
cGlsZSBjb25kaXRpb25zLiBTZWUgZm9yIGV4YW1wbGUKPj4gaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9hcmNoaXZlcy9odG1sL3hlbi1kZXZlbC8yMDE4LTAyL21zZzAwMDEwLmh0bWwKPj4g
YW5kIHRoZSBwYXRjaCBhdAo+PiBodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL2FyY2hpdmVz
L2h0bWwveGVuLWRldmVsLzIwMTgtMDIvbXNnMDAwNDUuaHRtbAo+Cj4gTm8sIHRob3NlIGFyZSBk
aWZmZXJlbnQuCj4KPiBUaGVyZSBpcyBubyB3YXkgdG8gdGVsbCB3aGF0IGxlZCB0byB0aGUgY3Jh
c2ggd2l0aG91dCBmdXJ0aGVyIGRhdGEKPiAoZG9tMCBrZXJuZWwgdmVyc2lvbiwga2VybmVsIGJv
b3QgcGFyYW1ldGVycywgbWFwcGluZyBvZiBmdW5jdGlvbiBuYW1lcwo+IHRvIGtlcm5lbCBhZGRy
ZXNzZXMgb24gdGhlIGd1ZXN0IHN0YWNrKS4KClllcywgbW9yZSBpbmZvcm1hdGlvbiBpcyBuZWVk
ZWQuICBIb3dldmVyLCByOCBjb250YWlucwo2NTc2NjE2NTZjMjA2NzZlIHdoaWNoIGlzIGFzY2lp
ICdldmFlbCBnbicgLT4gJ25nIGxlYXZlJwoKZ3JlcCAtciAnbmcgbGVhdmUnIGFyY2gveDg2Lwph
cmNoL3g4Ni9rZXJuZWwvZnB1L3hzdGF0ZS5jOiAgICBpZiAoV0FSTl9PTkNFKHgsICJYU0FWRSBj
b25zaXN0ZW5jeQpwcm9ibGVtLCBkdW1waW5nIGxlYXZlcyIpKSB7ICAgIFwKCj4gV2hhdCBjYW4g
YmUgc2FpZCwgaG93ZXZlciwgaXMgdGhhdCBuZXN0ZWQgdmlydHVhbGl6YXRpb24gaXMgb2Z0ZW4g
YQo+IHByb2JsZW0gYW5kIG1pZ2h0IGJlIHRoZSBjYXVzZSBoZXJlLCB0b28uCgpTbyBpdCB2ZXJ5
IHdlbGwgbWF5IGJlIGFuIGlzc3VlIHdpdGggbmVzdGVkIHZpcnR1YWxpemF0aW9uIGFuZCB4c2F2
ZS4KClJlZ2FyZHMsCkphc29uCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54
ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGlu
Zm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 10:16:19 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 10:16:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f41wI-0000nn-5y; Thu, 05 Apr 2018 10:16:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=jg93=g2=arm.com=andre.przywara@srs-us1.protection.inumbo.net>)
 id 1f41ue-0000iK-SN
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 10:14:36 +0000
X-Inumbo-ID: 5080c427-38ba-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 5080c427-38ba-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 10:15:50 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 3E3261435;
 Thu,  5 Apr 2018 03:14:33 -0700 (PDT)
Received: from [192.168.67.35] (usa-sjc-imap-foss1.foss.arm.com [10.72.51.249])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id E26723F25D;
 Thu,  5 Apr 2018 03:14:30 -0700 (PDT)
To: Julien Grall <julien.grall@arm.com>, Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8Vv1y--nwrh9uODm_0dJ_MNjaNrtyQv+HOfW_-rbupdQw@mail.gmail.com>
 <c6e33298-fcc9-f69f-aaa8-b0891c337fa6@linaro.org>
 <CAHP4M8UYGxtTRQ8iSNiKnwrVRKhx_f0QasGV6RiaKoegFAKY2A@mail.gmail.com>
 <f1487091-f090-5605-6b5c-0b080453b2a0@arm.com>
 <CAHP4M8XTvbhoZvwp8Jj0+qvyFtz8x1tvk6TEwXxWRFAYSUyi_g@mail.gmail.com>
 <ba2f115a-abd9-0bb9-775e-c5d5b04ef07f@arm.com>
From: Andre Przywara <andre.przywara@arm.com>
Openpgp: preference=signencrypt
Message-ID: <51caae58-9cbd-bc8d-d51a-e8c0b16be4a1@arm.com>
Date: Thu, 5 Apr 2018 11:14:17 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <ba2f115a-abd9-0bb9-775e-c5d5b04ef07f@arm.com>
Content-Language: en-GB
X-Mailman-Approved-At: Thu, 05 Apr 2018 10:16:17 +0000
Subject: Re: [Minios-devel] Single codebase for para-virtualized guests on
 x86 and ARM?
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAwNS8wNC8xOCAwOTo0OSwgSnVsaWVuIEdyYWxsIHdyb3RlOgo+IAo+IAo+IE9uIDA1
LzA0LzE4IDA5OjM4LCBBamF5IEdhcmcgd3JvdGU6Cj4+IEhpIEp1bGllbi4KPj4KPj4gVGhhbmtz
IGZvciB0aGUgcmVwbHkuCj4+Cj4+IE9uIFRodSwgQXByIDUsIDIwMTggYXQgMToyMSBQTSwgSnVs
aWVuIEdyYWxsIDxqdWxpZW4uZ3JhbGxAYXJtLmNvbT4KPj4gd3JvdGU6Cj4+PiAoKyBTdGVmYW5v
IGFuZCBBbmRyZSkKPj4+Cj4+PiBPbiAwNC8wNS8yMDE4IDA0OjM1IEFNLCBBamF5IEdhcmcgd3Jv
dGU6Cj4+Pj4KPj4+PiBIaSBKdWxpZW4uCj4+Pj4KPj4+PiBTb3JyeSBmb3IgcmVzdGFydGluZyB0
aGlzIHRocmVhZCwgYnV0IEkgd2FzIGp1c3Qgd29uZGVyaW5nIHdoZXRoZXIgUFYKPj4+PiBvbiBB
Uk0gbWlnaHQgbm90IHByb3ZpZGUgdGhlIGZvbGxvd2luZyBiZW5lZml0cyA6Cj4+Pj4KPj4+PiDC
oMKgwqDCoCAqIExvdyBvdmVyaGVhZHMgYXMgY29tcGFyZWQgdG8gSFZNLgo+Pj4KPj4+Cj4+PiBJ
IGRvbid0IGJ1eSB0aGlzIGFyZ3VtZW50LiBUaGUgb3ZlcmhlYWQgaXMgbm93IHF1aXRlIGhpZ2gg
YmVjYXVzZQo+Pj4gd2l0aCBhIFBWCj4+PiBzb2x1dGlvbiBhcyB5b3Ugd291bGQgbmVlZCB0byBt
aXRpZ2F0ZSBtZWx0ZG93bi4KPj4+Cj4+PiBGdXJ0aGVybW9yZSwgdGhpcyByZXF1aXJlIGEgbG90
IG9mIGNoYW5nZXMgaW4geW91ciBndWVzdHMgYW5kIEkgZG9uJ3QKPj4+IHNlZQo+Pj4gYW55IE9T
IGNvbW11bml0eSBhY2NlcHRpbmcgc3VjaCBidXJkZW4gd2hlbiB2aXJ0dWFsaXphdGlvbiBleHRl
bnNpb24gaXMKPj4+IGdldHRpbmcgcXVpdGUgd2lkZXNwcmVhZCBvbiBBcm0uCj4+Pgo+Pj4+IMKg
wqDCoMKgICogQWxzbyBzdXBwb3J0IHN5c3RlbXMvcHJvY2VkdXJlcyB3aXRoIG5vIGhhcmR3YXJl
LXZpcnR1YWxpemF0aW9uCj4+Pj4gc3VwcG9ydC4KPj4+Cj4+Pgo+Pj4gVGhlcmUgd2FzIGFuIGF0
dGVtcHQgdG8gZ2V0IFBWIHN1cHBvcnQgZm9yIEFybSBiZWZvcmUgdGhlIHZpcnR1YWxpemF0aW9u
Cj4+PiBzdXBwb3J0IHdhcyBhZGRlZCAoWzFdKS4gQnV0IHRoaXMgaXMgZGVhZC4KPj4+Cj4+PiBE
byB5b3UgaGF2ZSBhbnkgcGxhdGZvcm0gaW4gbWluZCB5b3Ugd291bGQgd2FudCB0byBydW4gWGVu
IHdpdGggbm8KPj4+IHZpcnR1YWxpemF0aW9uIGV4dGVuc2lvbj8KPj4KPj4gSWRlYWxseSwgd2Ug
YXJlIHRhcmdldHRpbmcgbG93LWVuZCBhcm0gc3lzdGVtcywgd2hlcmUKPj4gaGFyZHdhcmUtdmly
dHVhbGl6YXRpb24gaXMgdGhlIG9uZSB0aGluZyB0aGF0IHdlIG1pZ2h0IGhhdmUgdG8KPj4gY29t
cHJvbWlzZSBvbi4KPj4gQmVhZ2xlYm9uZXMgYXJlIGFuIGV4YW1wbGUuCj4gCj4gVGhleSBhcmUg
bG93LWVuZCBwbGF0Zm9ybSB3aXRoIGhhcmR3YXJlLXZpcnR1YWxpemF0aW9uIChlLmcgcGluZTY0
KS4KPiBTbyB3aHkgdGhhdCBwbGF0Zm9ybSBpbiBwYXJ0aWN1bGFyPyBJcyBpdCBiZWNhdXNlIHlv
dSBoYXZlIGV4aXN0aW5nCj4gaGFyZHdhcmU/CgpBcyBKdWxpZW4gc2FpZCwgdGhlIHF1ZXN0aW9u
IGlzIHdoZXRoZXIgb2xkZXIgcGxhdGZvcm1zIHVzaW5nIGFuCkNvcnRleC1BOCBvciBBOSBhcmUg
cmVhbGx5IHdvcnRoIHRoZSBwb3J0aW5nIGVmZm9ydC4gWWVzLCB0aGUgQmVhZ2xlQm9uZQppcyBu
aWNlLCBidXQgdGhlcmUgYXJlIHRvbnMgb2YgY2hlYXAgQTcgYW5kIEE1MyBiYXNlZCBzeXN0ZW1z
IG91dCB0aGVyZSwKZm9yIGluc3RhbmNlIHRoaXMgT3JhbmdlUGkgWmVybyBQbHVzWzFdIChRdWFk
LUE1MykgZm9yIDE1IFVTLSQuIEE3IGJhc2VkCmJvYXJkcyBnbyBmb3IgYXMgbG93IGFzIDEwJC4K
Cj4gVG8gYmUgY2xlYXIsIEkgdGhpbmsgY29tcHJvbWlzaW5nIHZpcnR1YWxpemF0aW9uIGV4dGVu
c2lvbiBpcyBhIHByZXR0eQo+IGJhZCBpZGVhLiBUaGUgYnVyZGVuIG9uIHNvZnR3YXJlIHdpbGwg
cmVhbGx5IGJlIGh1Z2UgY29tcGFyZSB0byB0aGUKPiBjdXJyZW50IHNvbHV0aW9uIG9uIFhlbiBB
cm0uCgpZZXMsIEkgZnVsbHkgYWdyZWUuIEhhdmluZyBoYXJkd2FyZSAyLWxldmVsIHBhZ2luZyBm
b3IgaW5zdGFuY2UKc2ltcGxpZmllcyBhIGxvdC4KSWYgeW91IGhhdmUgc3VjaCBhbiBvbGRlciBs
b3ctZW5kIHN5c3RlbSwgdGhlbiBhIGh5cGVydmlzb3IgbWlnaHQgbm90IGJlCnRoZSBiZXN0IGNo
b2ljZSBpbiB0aGUgZmlyc3QgcGxhY2UgKHJlZ2FyZGxlc3Mgb2YgdmlydCBleHQgb3Igbm90KS4K
CkNoZWVycywKQW5kcmUuCgpbMV0gaHR0cDovL3d3dy5vcmFuZ2VwaS5vcmcvT3JhbmdlUGlaZXJv
UGx1cwoKPiAKPiBDaGVlcnMsCj4gCj4+Cj4+Cj4+Pgo+Pj4+Cj4+Pj4KPj4+PiBPZiBjb3Vyc2Us
IHRoZSBiZW5lZml0cyBvZiBQViBuZWVkIHRvIGJlIHJlYWxseSBoaWdoLCB0byBqdXN0aWZ5IHRo
ZQo+Pj4+IGVmZm9ydHMgbmVlZGVkIHRvIG1ha2UgdGhlIHJlcXVpcmVkIGNvZGUtY2hhbmdlcyBm
b3IgUFYtc3VwcG9ydCA6UAo+Pj4KPj4+Cj4+PiBIVyB2aXJ0dWFsaXphdGlvbiBzdXBwb3J0IHBy
b3ZpZGVzIGdvb2Qgc2VjdXJpdHkgYW5kIHBlcmZvcm1hbmNlIHdpdGgKPj4+IGxpbWl0ZWQgY2hh
bmdlcyBpbiB0aGUgZ3Vlc3QuIEV2ZW4sIHg4NiBjb21tdW5pdHkgaGFzIGJlZW4gZGlzY3Vzc2lu
ZyB0bwo+Pj4gZGVwcmVjYXRlIFBWIGFuZCBtb3ZlIHRvd2FyZHMgUFZIICh2ZXJ5IHNpbWlsYXIg
dG8gQXJtIGd1ZXN0KS4KPj4+Cj4+PiBDaGVlcnMsCj4+Pgo+Pj4gWzFdIGh0dHBzOi8vd2lraS54
ZW5wcm9qZWN0Lm9yZy93aWtpL0FyY2hpdmVkL1hlbl9BUk1fKFBWKQo+Pj4KPj4+IC0tIAo+Pj4g
SnVsaWVuIEdyYWxsCj4+Cj4+Cj4+Cj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4v
bGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 11:01:58 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 11:01:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f42eS-00054M-N5; Thu, 05 Apr 2018 11:01:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=nhqt=g2=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f42eQ-00054H-KP
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 11:01:54 +0000
X-Inumbo-ID: eb94c469-38c0-11e8-8249-2fda3a446a53
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id eb94c469-38c0-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 11:03:07 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id 25BF1F2009;
 Thu,  5 Apr 2018 13:01:50 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id LYylGjFXdtDd; Thu,  5 Apr 2018 13:01:50 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from METHONE.office.hd (methone.office.hd [192.168.24.54])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id E76A2F2001;
 Thu,  5 Apr 2018 13:01:45 +0200 (CEST)
Received: from n-1075.office.hd (10.7.0.24) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 5 Apr
 2018 13:01:45 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522335189-30742-1-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <a209f9b1-221c-76d2-8a22-7b34795958b1@neclab.eu>
Date: Thu, 5 Apr 2018 13:01:43 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522335189-30742-1-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.7.0.24]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH v2] lib/uksched: Add waiting
 queue
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MjkuMDMuMjAxOCAxNjo1MywgQ29zdGluIEx1cHUgd3JvdGU6Cj4gV2FpdGluZyBxdWV1ZXMgYXJl
IHVzZWQgZm9yIG1hbmFnaW5nIHRocmVhZHMgdGhhdCB3YWl0IGZvciBzb21lCj4gY29uZGl0aW9u
IHRvIGJlY29tZSB0cnVlLiBUaGUgaW1wbGVtZW50YXRpb24gd2FzIHBvcnRlZCBmcm9tIE1pbmkt
T1MuCj4gCj4gU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5y
bz4KPiAtLS0KPiAgIGxpYi91a3NjaGVkL2luY2x1ZGUvdWsvd2FpdC5oICAgICAgIHwgMTM4ICsr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICAgbGliL3Vrc2NoZWQvaW5jbHVk
ZS91ay93YWl0X3R5cGVzLmggfCAgNTEgKysrKysrKysrKysrKwo+ICAgMiBmaWxlcyBjaGFuZ2Vk
LCAxODkgaW5zZXJ0aW9ucygrKQo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi91a3NjaGVkL2lu
Y2x1ZGUvdWsvd2FpdC5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL3Vrc2NoZWQvaW5jbHVk
ZS91ay93YWl0X3R5cGVzLmgKPiAKPiBkaWZmIC0tZ2l0IGEvbGliL3Vrc2NoZWQvaW5jbHVkZS91
ay93YWl0LmggYi9saWIvdWtzY2hlZC9pbmNsdWRlL3VrL3dhaXQuaAo+IG5ldyBmaWxlIG1vZGUg
MTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uN2VjNWEyMAo+IC0tLSAvZGV2L251bGwKPiArKysgYi9s
aWIvdWtzY2hlZC9pbmNsdWRlL3VrL3dhaXQuaAo+IEBAIC0wLDAgKzEsMTM4IEBACj4gKy8qIFNQ
RFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UgKi8KPiArLyoKPiArICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Cj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwo+ICsgKiBhcmUgbWV0Ogo+ICsgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKPiArICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBVVRIT1Ig
QU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECj4gKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+ICsgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRQo+ICsgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxM
IEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCj4gKyAqIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
Cj4gKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTCj4gKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQo+ICsgKiBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVAo+ICsgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCj4gKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKPiArICog
U1VDSCBEQU1BR0UuCj4gKyAqLwo+ICsvKiBQb3J0ZWQgZnJvbSBNaW5pLU9TICovCj4gKwo+ICsj
aWZuZGVmIF9fVUtfU0NIRURfV0FJVF9IX18KPiArI2RlZmluZSBfX1VLX1NDSEVEX1dBSVRfSF9f
Cj4gKwo+ICsjaW5jbHVkZSA8dWsvcGxhdC9sY3B1Lmg+Cj4gKyNpbmNsdWRlIDx1ay9wbGF0L3Rp
bWUuaD4KPiArI2luY2x1ZGUgPHVrL3NjaGVkLmg+Cj4gKyNpbmNsdWRlIDx1ay93YWl0X3R5cGVz
Lmg+Cj4gKwo+ICsKPiArc3RhdGljIGlubGluZQo+ICt2b2lkIHVrX3dhaXRxX2luaXQoc3RydWN0
IHVrX3dhaXRxICp3cSkKPiArewo+ICsJVUtfU1RBSUxRX0lOSVQod3EpOwo+ICt9Cj4gKwo+ICtz
dGF0aWMgaW5saW5lCj4gK3ZvaWQgdWtfd2FpdHFfZW50cnlfaW5pdChzdHJ1Y3QgdWtfd2FpdHFf
ZW50cnkgKmVudHJ5LAo+ICsJCXN0cnVjdCB1a190aHJlYWQgKnRocmVhZCkKPiArewo+ICsJZW50
cnktPnRocmVhZCA9IHRocmVhZDsKPiArCWVudHJ5LT53YWl0aW5nID0gMDsKPiArfQo+ICsKPiAr
c3RhdGljIGlubGluZQo+ICtpbnQgdWtfd2FpdHFfZW1wdHkoc3RydWN0IHVrX3dhaXRxICp3cSkK
PiArewo+ICsJcmV0dXJuIFVLX1NUQUlMUV9FTVBUWSh3cSk7Cj4gK30KPiArCj4gK3N0YXRpYyBp
bmxpbmUKPiArdm9pZCB1a193YWl0cV9hZGQoc3RydWN0IHVrX3dhaXRxICp3cSwKPiArCQlzdHJ1
Y3QgdWtfd2FpdHFfZW50cnkgKmVudHJ5KQo+ICt7Cj4gKwlpZiAoIWVudHJ5LT53YWl0aW5nKSB7
Cj4gKwkJVUtfU1RBSUxRX0lOU0VSVF9IRUFEKHdxLCBlbnRyeSwgdGhyZWFkX2xpc3QpOwo+ICsJ
CWVudHJ5LT53YWl0aW5nID0gMTsKPiArCX0KPiArfQo+ICsKPiArc3RhdGljIGlubGluZQo+ICt2
b2lkIHVrX3dhaXRxX3JlbW92ZShzdHJ1Y3QgdWtfd2FpdHEgKndxLAo+ICsJCXN0cnVjdCB1a193
YWl0cV9lbnRyeSAqZW50cnkpCj4gK3sKPiArCWlmIChlbnRyeS0+d2FpdGluZykgewo+ICsJCVVL
X1NUQUlMUV9SRU1PVkUod3EsIGVudHJ5LCBzdHJ1Y3QgdWtfd2FpdHFfZW50cnksIHRocmVhZF9s
aXN0KTsKPiArCQllbnRyeS0+d2FpdGluZyA9IDA7Cj4gKwl9Cj4gK30KPiArCj4gKyNkZWZpbmUg
dWtfd2FpdHFfYWRkX3dhaXRlcih3cSwgdykgXAo+ICtkbyB7IFwKPiArCXVuc2lnbmVkIGxvbmcg
ZmxhZ3M7IFwKPiArCWZsYWdzID0gdWtwbGF0X2xjcHVfc2F2ZV9pcnFmKCk7IFwKPiArCXVrX3dh
aXRxX2FkZCh3cSwgdyk7IFwKPiArCXVrX3RocmVhZF9ibG9jayh1a190aHJlYWRfY3VycmVudCgp
KTsgXAo+ICsJdWtwbGF0X2xjcHVfcmVzdG9yZV9pcnFmKGZsYWdzKTsgXAo+ICt9IHdoaWxlICgw
KQo+ICsKPiArI2RlZmluZSB1a193YWl0cV9yZW1vdmVfd2FpdGVyKHdxLCB3KSBcCj4gK2RvIHsg
XAo+ICsJdW5zaWduZWQgbG9uZyBmbGFnczsgXAo+ICsJZmxhZ3MgPSB1a3BsYXRfbGNwdV9zYXZl
X2lycWYoKTsgXAo+ICsJdWtfd2FpdHFfcmVtb3ZlKHdxLCB3KTsgXAo+ICsJdWtwbGF0X2xjcHVf
cmVzdG9yZV9pcnFmKGZsYWdzKTsgXAo+ICt9IHdoaWxlICgwKQo+ICsKPiArI2RlZmluZSBfX3dx
X3dhaXRfZXZlbnRfZGVhZGxpbmUod3EsIGNvbmRpdGlvbiwgZGVhZGxpbmUsIGRlYWRsaW5lX2Nv
bmRpdGlvbikgXAo+ICtkbyB7IFwKPiArCXN0cnVjdCB1a190aHJlYWQgKl9fY3VycmVudDsgXAo+
ICsJdW5zaWduZWQgbG9uZyBmbGFnczsgXAo+ICsJREVGSU5FX1dBSVQoX193YWl0KTsgXAo+ICsJ
aWYgKGNvbmRpdGlvbikgXAo+ICsJCWJyZWFrOyBcCj4gKwlmb3IgKDs7KSB7IFwKPiArCQlfX2N1
cnJlbnQgPSB1a190aHJlYWRfY3VycmVudCgpOyBcCj4gKwkJLyogcHJvdGVjdCB0aGUgbGlzdCAq
LyBcCj4gKwkJZmxhZ3MgPSB1a3BsYXRfbGNwdV9zYXZlX2lycWYoKTsgXAo+ICsJCXVrX3dhaXRx
X2FkZCh3cSwgJl9fd2FpdCk7IFwKPiArCQlfX2N1cnJlbnQtPndha2V1cF90aW1lID0gZGVhZGxp
bmU7IFwKPiArCQljbGVhcl9ydW5uYWJsZShfX2N1cnJlbnQpOyBcCj4gKwkJdWtwbGF0X2xjcHVf
cmVzdG9yZV9pcnFmKGZsYWdzKTsgXAo+ICsJCWlmICgoY29uZGl0aW9uKSB8fCAoZGVhZGxpbmVf
Y29uZGl0aW9uKSkgXAo+ICsJCQlicmVhazsgXAo+ICsJCXVrX3NjaGVkX3lpZWxkKCk7IFwKPiAr
CX0gXAo+ICsJZmxhZ3MgPSB1a3BsYXRfbGNwdV9zYXZlX2lycWYoKTsgXAo+ICsJLyogbmVlZCB0
byB3YWtlIHVwICovIFwKPiArCXVrX3RocmVhZF93YWtlKF9fY3VycmVudCk7IFwKPiArCXVrX3dh
aXRxX3JlbW92ZSh3cSwgJl9fd2FpdCk7IFwKPiArCXVrcGxhdF9sY3B1X3Jlc3RvcmVfaXJxZihm
bGFncyk7IFwKPiArfSB3aGlsZSAoMCkKPiArCj4gKyNkZWZpbmUgdWtfd2FpdHFfd2FpdF9ldmVu
dCh3cSwgY29uZGl0aW9uKSBcCj4gKwlfX3dxX3dhaXRfZXZlbnRfZGVhZGxpbmUod3EsIChjb25k
aXRpb24pLCAwLCAwKQo+ICsKPiArI2RlZmluZSB1a193YWl0cV93YWl0X2V2ZW50X2RlYWRsaW5l
KHdxLCBjb25kaXRpb24sIGRlYWRsaW5lKSBcCj4gKwlfX3dxX3dhaXRfZXZlbnRfZGVhZGxpbmUo
d3EsIChjb25kaXRpb24pLCBcCj4gKwkJKGRlYWRsaW5lKSwgXAo+ICsJCShkZWFkbGluZSkgJiYg
dWtwbGF0X21vbm90b25pY19jbG9jaygpID49IChkZWFkbGluZSkpCj4gKwo+ICtzdGF0aWMgaW5s
aW5lCj4gK3ZvaWQgdWtfd2FpdHFfd2FrZV91cChzdHJ1Y3QgdWtfd2FpdHEgKndxKQo+ICt7Cj4g
Kwl1bnNpZ25lZCBsb25nIGZsYWdzOwo+ICsJc3RydWN0IHVrX3dhaXRxX2VudHJ5ICpjdXJyLCAq
dG1wOwo+ICsKPiArCWZsYWdzID0gdWtwbGF0X2xjcHVfc2F2ZV9pcnFmKCk7Cj4gKwlVS19TVEFJ
TFFfRk9SRUFDSF9TQUZFKGN1cnIsIHdxLCB0aHJlYWRfbGlzdCwgdG1wKQo+ICsJCXVrX3RocmVh
ZF93YWtlKGN1cnItPnRocmVhZCk7Cj4gKwl1a3BsYXRfbGNwdV9yZXN0b3JlX2lycWYoZmxhZ3Mp
Owo+ICt9Cj4gKwo+ICsjZW5kaWYgLyogX19VS19TQ0hFRF9XQUlUX0hfXyAqLwo+IGRpZmYgLS1n
aXQgYS9saWIvdWtzY2hlZC9pbmNsdWRlL3VrL3dhaXRfdHlwZXMuaCBiL2xpYi91a3NjaGVkL2lu
Y2x1ZGUvdWsvd2FpdF90eXBlcy5oCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAw
MDAwLi4xZWY1OTU5Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2xpYi91a3NjaGVkL2luY2x1ZGUv
dWsvd2FpdF90eXBlcy5oCj4gQEAgLTAsMCArMSw1MSBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRl
bnRpZmllcjogQlNELTItQ2xhdXNlICovCj4gKy8qCj4gKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+ICsgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKPiArICogYXJlIG1ldDoKPiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+ICsgKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4gKyAq
Cj4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORAo+ICsgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiArICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UKPiArICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRQo+ICsgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAo+ICsgKiBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUwo+ICsgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiArICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKPiArICog
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWQo+ICsgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCj4gKyAqIFNVQ0ggREFNQUdFLgo+
ICsgKi8KPiArLyogUG9ydGVkIGZyb20gTWluaS1PUyAqLwo+ICsKPiArI2lmbmRlZiBfX1VLX1ND
SEVEX1dBSVRfVFlQRVNfSF9fCj4gKyNkZWZpbmUgX19VS19TQ0hFRF9XQUlUX1RZUEVTX0hfXwo+
ICsKPiArI2luY2x1ZGUgPHVrL2xpc3QuaD4KPiArCj4gK3N0cnVjdCB1a193YWl0cV9lbnRyeSB7
Cj4gKwlpbnQgd2FpdGluZzsKPiArCXN0cnVjdCB1a190aHJlYWQgKnRocmVhZDsKPiArCVVLX1NU
QUlMUV9FTlRSWShzdHJ1Y3QgdWtfd2FpdHFfZW50cnkpIHRocmVhZF9saXN0Owo+ICt9Owo+ICsK
PiArLyogVE9ETyAtIGxvY2sgcmVxdWlyZWQ/ICovCj4gK1VLX1NUQUlMUV9IRUFEKHVrX3dhaXRx
LCBzdHJ1Y3QgdWtfd2FpdHFfZW50cnkpOwo+ICsKPiArI2RlZmluZSBfX1dBSVRfUVVFVUVfSU5J
VElBTElaRVIobmFtZSkgVUtfU1RBSUxRX0hFQURfSU5JVElBTElaRVIobmFtZSkKPiArCj4gKyNk
ZWZpbmUgREVGSU5FX1dBSVRfUVVFVUUobmFtZSkgXAo+ICsJc3RydWN0IHVrX3dhaXRxIG5hbWUg
PSBfX1dBSVRfUVVFVUVfSU5JVElBTElaRVIobmFtZSkKPiArCj4gKyNkZWZpbmUgREVGSU5FX1dB
SVQobmFtZSkgXAo+ICtzdHJ1Y3QgdWtfd2FpdHFfZW50cnkgbmFtZSA9IHsgXAo+ICsJLnRocmVh
ZCAgICAgICA9IHVrX3RocmVhZF9jdXJyZW50KCksIFwKPiArCS53YWl0aW5nICAgICAgPSAwLCBc
Cj4gK30KPiArCj4gKyNlbmRpZiAvKiBfX1VLX1NDSEVEX1dBSVRfVFlQRVNfSF9fICovCj4gCgpf
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2
ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczov
L2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 12:12:30 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 12:12:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f43kj-0001iS-R2; Thu, 05 Apr 2018 12:12:29 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=jie/=g2=gmail.com=costin.lup@srs-us1.protection.inumbo.net>)
 id 1f43ki-0001iJ-Aq
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 12:12:28 +0000
X-Inumbo-ID: 83532de8-38ca-11e8-9728-bc764e045a96
Received: from mail-wm0-x243.google.com (unknown [2a00:1450:400c:c09::243])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 83532de8-38ca-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 14:11:48 +0200 (CEST)
Received: by mail-wm0-x243.google.com with SMTP id i3so6397599wmf.3
 for <minios-devel@lists.xen.org>; Thu, 05 Apr 2018 05:12:26 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=subject:to:cc:references:from:message-id:date:user-agent
 :mime-version:in-reply-to:content-language:content-transfer-encoding;
 bh=2xGrqgpoX/138Y6EMOHi5/V8A8/XYR0vGeg99NavS9Q=;
 b=obEYOzqMfvDSMXeeujqMVFjBwLOPgRiTxljyaWGmvTyt+G03xAo8rXEVrmNztofx8M
 cZbQqecJ2M0Vl5aAaiK0MlBzKL4SBYl9UgUW7L4q2Q6IQMuszgRMMrr36ovy8Ew1WCXK
 4EN1SBremM1vwWPRvPfon27wKptEocGdtwQymh1vnS717EwRrc9b/VMvFVbxwMPyhKmU
 hrV2SR1vdTQjngOhMTSGyZ0YqUn1ZINH1SsguS7oUlIhWeVeHupD9XCxpM+9Yxp3DNhB
 3rkED0TXMImd6WWxQOnOl8JRpofKqRJGGUQLzgbEI+9x+nawNf22uN+0X4l0uQJiUZ9c
 hFPg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:subject:to:cc:references:from:message-id:date
 :user-agent:mime-version:in-reply-to:content-language
 :content-transfer-encoding;
 bh=2xGrqgpoX/138Y6EMOHi5/V8A8/XYR0vGeg99NavS9Q=;
 b=IsfPk+i/pPYK99chN+V3ZDFRxyGsbQCLq6j3da1w5MZFcLO/QtqxxliLjgExt0gNEA
 bG8ilrTidYrmFl7opqvb+io5tf5/zIPMaPMhoicO3y/aVU6pgcldlQsRhnhP8g2ROWuc
 ixZbSsIXPur8hL38AHyQAvNi40+VDUo3lW2qgr2wc+adE6fxzVTdqykhmTkU5yn/MHpm
 /sYtq37/MRCJWifYC+8OPEpXViND+2Sq0zS4O2OVZHaF/2UU4sR36GmldfUPmqMh/b18
 19KMSianxj9btMFC4O4G0uRTCQnsvCOriDVrr0wPlngzS5mXLRfodic+V/2gkpkHFsZH
 fuSg==
X-Gm-Message-State: ALQs6tDZ0Sp6f91fc8HOlq6ZrDld07huP6lCWTuVJlkdJidYwbd0ee7W
 onBPhrCSXFg2CRCC5vJVHOw=
X-Google-Smtp-Source: AIpwx49AbrPBkqG37Q/sQMV2WkawlhydAWRR7dEHocR7l4ONXetEy9hfJ+G5ODplqfw2X/yqIM6llQ==
X-Received: by 10.28.106.1 with SMTP id f1mr11776294wmc.59.1522930345005;
 Thu, 05 Apr 2018 05:12:25 -0700 (PDT)
Received: from [172.19.2.145] ([141.85.233.142])
 by smtp.gmail.com with ESMTPSA id m7sm6611690wrh.11.2018.04.05.05.12.24
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 05 Apr 2018 05:12:24 -0700 (PDT)
To: minios-devel@lists.xen.org
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
From: Costin Lupu <costin.lup@gmail.com>
Message-ID: <e365e371-5a64-e33a-f382-666f8e18e2bb@gmail.com>
Date: Thu, 5 Apr 2018 15:12:23 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.4.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
Subject: Re: [Minios-devel] [UNIKRAFT PATCH v2 00/17] Prepare for enabling
 scheduling on KVM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIGN1cnJlbnQgcGF0Y2ggc2VyaWVzIGJyZWFrIHRoZSBidWlsZHMgZm9yIEtWTSBhbmQgbGlu
dXh1IHBsYXRmb3JtcwphbmQgYXJlIHN1cHBvc2VkIHRvIGJlIGFjY2VwdGVkIGJhY2stdG8tYmFj
ayB3aXRoIHRoZSBwYXRjaCBzZXJpZXMKZW5hYmxpbmcgaW50ZXJydXB0cyBmb3IgdGhvc2UgcGxh
dGZvcm1zLgoKVGhhbmtzLApDb3N0aW4KCk9uIDA0LzA0LzIwMTggMDQ6NTMgUE0sIENvc3RpbiBM
dXB1IHdyb3RlOgo+IFRoZSBjdXJyZW50IHBhdGNoIHNlcmllcyBpbmNsdWRlIHJlZmFjdG9yaXph
dGlvbnMgdGhhdCBpbnRlZ3JhdGUgZnVuY3Rpb25hbGl0eQo+IGZvciBib3RoIFhlbiBhbmQgS1ZN
IHBsYXRmb3Jtcy4gV2UgYXJlIGludHJvZHVjaW5nIGNvbW1vbiBDUFUgcmVsYXRlZAo+IGRlZmlu
aXRpb25zLCB0cmFwIGhhbmRsaW5nIGFuZCB0aHJlYWQgc3dpdGNoaW5nIGFic3RyYWN0aXphdGlv
bnMuIFRoZQo+IHNjaGVkdWxpbmcgQVBJIGlzIHJldmlzaXRlZCBmb3IgaW5saW5pbmcgd2l0aCB0
aGUgcGxhdGZvcm0gY2hhbmdlcy4gVGhlIGN1cnJlbnQKPiBjaGFuZ2VzIGFyZSBuZWVkZWQgaW4g
b3JkZXIgdG8gZWZmaWNpZW50bHkgcmV1c2UgdGhlIHNjaGVkdWxpbmcgZnVuY3Rpb25hbGl0eSAK
PiBvbiBLVk0gYXMgd2VsbC4KPiAKPiBDb3N0aW4gTHVwdSAoMTcpOgo+ICAgcGxhdC9jb21tb246
IENvbW1vbiB4ODYgQ1BVIGRlZmluaXRpb25zCj4gICBwbGF0L2NvbW1vbjogQ29tbW9uIHg4NiBz
ZWdtZW50IGRlc2NyaXB0b3JzIGRlZmluaXRpb25zCj4gICBwbGF0L2NvbW1vbjogeDg2IGhhcmR3
YXJlIGNvbnRleHQgZGVmaW5pdGlvbgo+ICAgcGxhdC9jb21tb246IENvbW1vbiB4ODYgQ1BVIGlu
dGVycnVwdCBmbGFnIGhhbmRsaW5nCj4gICBwbGF0L2NvbW1vbjogQ29tbW9uIHg4NiBDUFUgZnVu
Y3Rpb25zCj4gICBwbGF0L2NvbW1vbjogQ29tbW9uIHg4NiB0cmFjaW5nIGZ1bmN0aW9ucwo+ICAg
cGxhdC9jb21tb246IENvbW1vbiB4ODYgdHJhcHMgZGVmaW5pdGlvbnMgYW5kIGZ1bmN0aW9ucwo+
ICAgcGxhdC9jb21tb246IEFkZCB1a3BsYXRfbGNwdV97ZW5hYmxlLGRpc2FibGV9X2lycSBmdW5j
dGlvbnMKPiAgIHBsYXQvY29tbW9uOiBIYWx0aW5nIGZ1bmN0aW9ucwo+ICAgcGxhdC9jb21tb246
IENvbW1vbiB4ODYgdGhyZWFkaW5nIGNvZGUKPiAgIGFyY2gveDg2XzY0OiBBZGQgbm9wKCkgbWFj
cm8KPiAgIGFyY2gveDg2XzY0OiBBZGQgZnVuY3Rpb24gZm9yIHN0YWNrIHBvaW50ZXIgcmV0cmll
dmFsCj4gICBsaWIvdWtzY2hlZDogVXBkYXRlcyBmb3IgaW5saW5pbmcgd2l0aCBwbGF0L2NvbW1v
biBjaGFuZ2VzCj4gICBsaWIvdWtzY2hlZGNvb3A6IFVwZGF0ZXMgZm9yIGlubGluaW5nIHdpdGgg
dWtzY2hlZCBBUEkgY2hhbmdlcwo+ICAgcGxhdC94ZW46IFJlbW92ZSBldmVudHMgZW5hYmxpbmcg
ZnJvbSBwbGF0Zm9ybSBjb2RlCj4gICBwbGF0L3hlbjogQWRkIElSUSBzdWJzeXN0ZW0gaW5pdGlh
bGl6YXRpb24gZnVuY3Rpb24KPiAgIGxpYi91a2Jvb3Q6IFVwZGF0ZXMgZm9yIGlubGluaW5nIHdp
dGggcGxhdGZvcm0gYW5kIHNjaGVkdWxpbmcgY2hhbmdlcwo+IAo+ICBpbmNsdWRlL3VrL2FyY2gv
dGhyZWFkLmggICAgICAgICAgICAgICAgICAgfCAgNTMgLS0tLS0KPiAgaW5jbHVkZS91ay9hcmNo
L3g4Nl82NC9sY3B1LmggICAgICAgICAgICAgIHwgIDQwICstLS0KPiAgaW5jbHVkZS91ay9wbGF0
L2lycS5oICAgICAgICAgICAgICAgICAgICAgIHwgIDU0ICsrKysrCj4gIGluY2x1ZGUvdWsvcGxh
dC9sY3B1LmggICAgICAgICAgICAgICAgICAgICB8ICAyNSArKy0KPiAgaW5jbHVkZS91ay9wbGF0
L3RocmVhZC5oICAgICAgICAgICAgICAgICAgIHwgIDcwICsrKysrLQo+ICBsaWIvdWtib290L2Jv
b3QuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjEgKy0KPiAgbGliL3Vrc2NoZWQvaW5j
bHVkZS91ay9zY2hlZC5oICAgICAgICAgICAgIHwgMTIwICsrKysrKy0tLS0KPiAgbGliL3Vrc2No
ZWQvaW5jbHVkZS91ay90aHJlYWQuaCAgICAgICAgICAgIHwgIDM5ICsrLS0KPiAgbGliL3Vrc2No
ZWQvc2NoZWQuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgMTI0ICsrKysrKysrLS0tCj4gIGxp
Yi91a3NjaGVkL3RocmVhZC5jICAgICAgICAgICAgICAgICAgICAgICB8ICA3NiArKysrKystCj4g
IGxpYi91a3NjaGVkY29vcC9zY2hlZGNvb3AuYyAgICAgICAgICAgICAgICB8ICA0NSArKy0tCj4g
IHBsYXQvY29tbW9uL2luY2x1ZGUvX3RpbWUuaCAgICAgICAgICAgICAgICB8ICA0MiArKysrCj4g
IHBsYXQvY29tbW9uL2luY2x1ZGUvY3B1LmggICAgICAgICAgICAgICAgICB8ICA0NiArKysrCj4g
IHBsYXQvY29tbW9uL2luY2x1ZGUvc3dfY3R4LmggICAgICAgICAgICAgICB8ICA1NiArKysrKwo+
ICBwbGF0L2NvbW1vbi9pbmNsdWRlL3RyYWNlLmggICAgICAgICAgICAgICAgfCAgNDggKysrKwo+
ICBwbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9jcHUuaCAgICAgICAgICAgICAgfCAxMDkgKysrKysr
KysrCj4gIHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L2NwdV9kZWZzLmggICAgICAgICB8ICA3NiAr
KysrKysrCj4gIHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L2Rlc2MuaCAgICAgICAgICAgICB8IDE5
NyArKysrKysrKysrKysrKysrKwo+ICBwbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9pcnEuaCAgICAg
ICAgICAgICAgfCAgODcgKysrKysrKysKPiAgcGxhdC9jb21tb24vaW5jbHVkZS94ODYvcmVncy5o
ICAgICAgICAgICAgIHwgIDk0ICsrKysrKysrCj4gIHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L3Ry
YXBzLmggICAgICAgICAgICB8IDExNSArKysrKysrKysrCj4gIHBsYXQvY29tbW9uL2xjcHUuYyAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICA2MCArKysrKwo+ICBwbGF0L2NvbW1vbi9zd19jdHgu
YyAgICAgICAgICAgICAgICAgICAgICAgfCAgOTcgKysrKysrKysKPiAgcGxhdC9jb21tb24vdGhy
ZWFkLmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDY2ICsrKysrKwo+ICBwbGF0L2NvbW1vbi94
ODYvY3B1X25hdGl2ZS5jICAgICAgICAgICAgICAgfCAgNDkgKysrKysKPiAgcGxhdC9jb21tb24v
eDg2L3RocmVhZF9zdGFydC5TICAgICAgICAgICAgIHwgIDY1ICsrKysrKwo+ICBwbGF0L2NvbW1v
bi94ODYvdHJhY2UuYyAgICAgICAgICAgICAgICAgICAgfCAgOTIgKysrKysrKysKPiAgcGxhdC9j
b21tb24veDg2L3RyYXBzLmMgICAgICAgICAgICAgICAgICAgIHwgMTE2ICsrKysrKysrKysKPiAg
cGxhdC9rdm0vTWFrZWZpbGUudWsgICAgICAgICAgICAgICAgICAgICAgIHwgICA4ICsKPiAgcGxh
dC9rdm0vaW5jbHVkZS9rdm0teDg2L2NwdV94ODZfNjQuaCAgICAgIHwgICA1IC0KPiAgcGxhdC9r
dm0vaW5jbHVkZS9rdm0teDg2L2NwdV94ODZfNjRfZGVmcy5oIHwgIDQ2ICstLS0KPiAgcGxhdC9r
dm0vc2h1dGRvd24uYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCj4gIHBsYXQva3Zt
L3g4Ni9jb25zb2xlLmMgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQo+ICBwbGF0L2t2bS94
ODYvY3B1X3g4Nl82NC5jICAgICAgICAgICAgICAgICAgfCAgMTEgKy0KPiAgcGxhdC9rdm0veDg2
L2VudHJ5NjQuUyAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCj4gIHBsYXQva3ZtL3g4Ni9s
Y3B1LmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNiAtCj4gIHBsYXQveGVuL01ha2VmaWxl
LnVrICAgICAgICAgICAgICAgICAgICAgICB8ICAxNiArLQo+ICBwbGF0L3hlbi9ldmVudHMuYyAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDggKwo+ICBwbGF0L3hlbi9pbmNsdWRlL2NvbW1v
bi9zY2hlZC5oICAgICAgICAgICAgfCAgNTIgLS0tLS0KPiAgcGxhdC94ZW4vaW5jbHVkZS94ZW4t
eDg2L2FyY2hfc2NoZWQuaCAgICAgIHwgIDU1IC0tLS0tCj4gIHBsYXQveGVuL2luY2x1ZGUveGVu
LXg4Ni9jcHUuaCAgICAgICAgICAgICB8IDEwMyAtLS0tLS0tLS0KPiAgcGxhdC94ZW4vaW5jbHVk
ZS94ZW4teDg2L2lycS5oICAgICAgICAgICAgIHwgIDU1ICstLS0tCj4gIHBsYXQveGVuL2luY2x1
ZGUveGVuLXg4Ni9vcy5oICAgICAgICAgICAgICB8ICA0NiArLS0tCj4gIHBsYXQveGVuL2luY2x1
ZGUveGVuLXg4Ni90cmFwcy5oICAgICAgICAgICB8ICAyMyArLQo+ICBwbGF0L3hlbi9sY3B1LmMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjcgKy0tCj4gIHBsYXQveGVuL3NjaGVkLmMg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8IDEwNiAtLS0tLS0tLS0KPiAgcGxhdC94ZW4vdGhy
ZWFkLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDY2IC0tLS0tLQo+ICBwbGF0L3hlbi94
ODYvYXJjaF9ldmVudHMuYyAgICAgICAgICAgICAgICAgfCAgIDIgKy0KPiAgcGxhdC94ZW4veDg2
L2FyY2hfdGhyZWFkLmMgICAgICAgICAgICAgICAgIHwgIDkzIC0tLS0tLS0tCj4gIHBsYXQveGVu
L3g4Ni9hcmNoX3RpbWUuYyAgICAgICAgICAgICAgICAgICB8ICAxNyArLQo+ICBwbGF0L3hlbi94
ODYvY3B1X3B2LmMgICAgICAgICAgICAgICAgICAgICAgfCAgNDcgKysrKwo+ICBwbGF0L3hlbi94
ODYvZW50cnk2NC5TICAgICAgICAgICAgICAgICAgICAgfCAyMzEgKysrKysrKy0tLS0tLS0tLS0t
LQo+ICBwbGF0L3hlbi94ODYvc2V0dXAuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgIDggKy0K
PiAgcGxhdC94ZW4veDg2L3RyYXBzLmMgICAgICAgICAgICAgICAgICAgICAgIHwgMzQyICsrKysr
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gIDU0IGZpbGVzIGNoYW5nZWQsIDIxMzggaW5zZXJ0
aW9ucygrKSwgMTMyMyBkZWxldGlvbnMoLSkKPiAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUv
dWsvYXJjaC90aHJlYWQuaAo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9wbGF0L2ly
cS5oCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9pbmNsdWRlL190aW1lLmgKPiAg
Y3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUvY3B1LmgKPiAgY3JlYXRlIG1v
ZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUvc3dfY3R4LmgKPiAgY3JlYXRlIG1vZGUgMTAw
NjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUvdHJhY2UuaAo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxh
dC9jb21tb24vaW5jbHVkZS94ODYvY3B1LmgKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29t
bW9uL2luY2x1ZGUveDg2L2NwdV9kZWZzLmgKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29t
bW9uL2luY2x1ZGUveDg2L2Rlc2MuaAo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24v
aW5jbHVkZS94ODYvaXJxLmgKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1
ZGUveDg2L3JlZ3MuaAo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS94
ODYvdHJhcHMuaAo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24vbGNwdS5jCj4gIGNy
ZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9zd19jdHguYwo+ICBjcmVhdGUgbW9kZSAxMDA2
NDQgcGxhdC9jb21tb24vdGhyZWFkLmMKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9u
L3g4Ni9jcHVfbmF0aXZlLmMKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL3g4Ni90
aHJlYWRfc3RhcnQuUwo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24veDg2L3RyYWNl
LmMKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL3g4Ni90cmFwcy5jCj4gIGRlbGV0
ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi9pbmNsdWRlL2NvbW1vbi9zY2hlZC5oCj4gIGRlbGV0ZSBt
b2RlIDEwMDY0NCBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvYXJjaF9zY2hlZC5oCj4gIGRlbGV0
ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvY3B1LmgKPiAgZGVsZXRlIG1v
ZGUgMTAwNjQ0IHBsYXQveGVuL3NjaGVkLmMKPiAgZGVsZXRlIG1vZGUgMTAwNjQ0IHBsYXQveGVu
L3RocmVhZC5jCj4gIGRlbGV0ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi94ODYvYXJjaF90aHJlYWQu
Ywo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC94ZW4veDg2L2NwdV9wdi5jCj4gCgpfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFp
bGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3Rz
LnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 12:49:47 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 12:49:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f44Kn-00045j-ES; Thu, 05 Apr 2018 12:49:45 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=iazy=g2=linaro.org=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f44Kl-00045Z-La
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 12:49:43 +0000
X-Inumbo-ID: b7ef5828-38cf-11e8-9728-bc764e045a96
Received: from mail-wm0-x242.google.com (unknown [2a00:1450:400c:c09::242])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id b7ef5828-38cf-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 14:49:03 +0200 (CEST)
Received: by mail-wm0-x242.google.com with SMTP id w2so3007783wmw.1
 for <minios-devel@lists.xenproject.org>; Thu, 05 Apr 2018 05:49:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google;
 h=subject:to:cc:references:from:message-id:date:user-agent
 :mime-version:in-reply-to:content-language:content-transfer-encoding;
 bh=bZ72APvqxWvC220CKyFl6oBuS8UkbJbQ7ATWSGXjv9E=;
 b=P4gIp3CZOJZkjtMp15pgi0AQWm/lj2CtM/N2lO9lM+dlCWDKloFrAbziGhV0AcoB00
 qS95ohhmpbmdtXMdqDPyuEpZGehIeLtJ2UFZ/oydBGvIRUJhUPPYJ3ux1oD0GTgrx2ju
 vf/a/ba+LtDOyyrVsReWn0fFKWMOH1J62Oe1E=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:subject:to:cc:references:from:message-id:date
 :user-agent:mime-version:in-reply-to:content-language
 :content-transfer-encoding;
 bh=bZ72APvqxWvC220CKyFl6oBuS8UkbJbQ7ATWSGXjv9E=;
 b=VNi+AD+ZETeol3/Mow4AmTi5j4KCG7bqEPuXfHITJIn9Zv3qIdT5aIFuw0ARG1+rX5
 FEIxwH/OmoTeCbFTKAjUbLKCyJyi3k2oP0E+jztoNbjjwyqtgHTNqVPpy9tkrNVX4Ty/
 8zHKiN8WDVm7OeCfzQYvMNGi+5VD3vJXsvGJ3rJBRSFwd0lc1LhrmnfzW5jDETNs1PnU
 Mry4M6WYcGHfNUdHCk5p74pbHzmiX5DdUQD3NfuUPaXUmNI5Nl9xlhaiOkKHB6/+EGhO
 gzC8jFaeB8y2qxiF89830JgyKnvXmE78YJqf5QJXXqSf0Z3hMo4g90b/clMr5Lq9jCEi
 FZLA==
X-Gm-Message-State: AElRT7G7yKDthkIOrz+5m0J9wAEuM6FY4Pzqpnnft1ALIqokrD8hrfrE
 1lu9rM37ilSPb3LElma9wtSjY7uIdkE=
X-Google-Smtp-Source: AIpwx49XbjNPyNGo/X6x2ei0fsRlyzEpJZHcsduGF8LA9Tl8czSpMEbaMVuE8MlbM7TxupdN3DwW5Q==
X-Received: by 10.28.125.84 with SMTP id y81mr10384095wmc.66.1522932580641;
 Thu, 05 Apr 2018 05:49:40 -0700 (PDT)
Received: from ?IPv6:::1? ([2001:41d0:1:6c23::1])
 by smtp.gmail.com with ESMTPSA id r19sm11671627wmd.32.2018.04.05.05.49.39
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 05 Apr 2018 05:49:39 -0700 (PDT)
To: Ajay Garg <ajaygargnsit@gmail.com>, Simon Kuenzer <simon.kuenzer@neclab.eu>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
From: Julien Grall <julien.grall@linaro.org>
Message-ID: <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
Date: Thu, 5 Apr 2018 13:49:38 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAwNS8wNC8xOCAwOTo1OCwgQWpheSBHYXJnIHdyb3RlOgo+IE9uIFRodSwgQXByIDUs
IDIwMTggYXQgMjoyMSBQTSwgU2ltb24gS3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+
IHdyb3RlOgo+PiBPbiAwNS4wNC4yMDE4IDEwOjM1LCBBamF5IEdhcmcgd3JvdGU6Cj4+IEkgZ3Vl
c3MgaXQgY291bGQgd29yayBidXQgaXQgd291bGQgYmUgZXh0cmVtZWx5IHNsb3cgc2luY2UgZWl0
aGVyIGFsbAo+PiBpbnN0cnVjdGlvbnMgYXJlIGVtdWxhdGVkIG9yIGhhcmR3YXJlIHZpcnR1YWxp
emFpb24gaXMgdXNlZCB3aXRoIHFlbXUuCj4gCj4gSG1tLCBtYWtlIHNlbnNlLiBJIGFtICh3YXMp
IGp1c3QgY3VyaW91cyBmcm9tIGEgbG9naWNhbCB2aWV3cG9pbnQuCgpLVk0gaXMgYSBtb2R1bGUg
dG8gZW5hYmxlIHRoZSB1c2Ugb2YgdmlydHVhbGl6YXRpb24gZXh0ZW5zaW9uLiBJZiB5b3UgCmRv
bid0IHVzZSB0aGVtLCB0aGVuIHlvdSBiZXR0ZXIganVzdCB1c2UgUUVNVS4gQnV0IGFzIFNpbW9u
IHNhaWQsIHRoaXMgCmlzIGdvaW5nIHRvIGJlIHJlYWxseSBzbG93LgoKPj4gTWF5YmUgV2VpIGNh
biBnaXZlIHlvdSBhIGJldHRlciBhbnN3ZXIgb24gdGhpcy4KPiAKPiBXb3VsZCBiZSBncmVhdCB0
byBoYXZlIG1vcmUgdmlld3BvaW50cyA6KQpZb3Ugc2VlbSB0byBoYXZlIGFza2VkIGZvciBQViBz
dXBwb3J0IGluIDQgZGlmZmVyZW50IHRocmVhZHMgdGhlIHBhc3QgCndlZWsgYW5kIG9uIGRpZmZl
cmVudCBtYWlsaW5nIGxpc3QgKE1pbmktT1MsIEtWTS4uLikuIEJ1dCBJIHN0aWxsIGRvbid0IAp1
bmRlcnN0YW5kIHdoYXQgaXMgeW91ciBlbmQgZ29hbC4gTWF5YmUgeW91IGNvdWxkIHN0YXJ0IGJ5
IGFuc3dlcmluZyB0aGUgCmZvbGxvd2luZyBxdWVzdGlvbnM6CgktIFdoYXQgaXMgeW91ciBlbmQg
Z29hbD8KCS0gV2hhdCBpcyB5b3VyIGRlZmluaXRpb24gb2YgbG93LWVuZCBwbGF0Zm9ybT8gVGhl
cmUgYXJlIHNvbWUgYXQgfjEwJCAKd2l0aCB2aXJ0dWFsaXphdGlvbiBleHRlbnNpb25zLiBTbyB3
aHkgbm90IHRoZW0/CgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0
Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2pl
Y3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 14:35:33 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 14:35:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f45z9-000483-Md; Thu, 05 Apr 2018 14:35:31 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fi5o=g2=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f45z7-00047o-S4
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 14:35:29 +0000
X-Inumbo-ID: 7e148ce2-38de-11e8-9728-bc764e045a96
Received: from mail-wm0-x242.google.com (unknown [2a00:1450:400c:c09::242])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 7e148ce2-38de-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 16:34:49 +0200 (CEST)
Received: by mail-wm0-x242.google.com with SMTP id b127so6354118wmf.5;
 Thu, 05 Apr 2018 07:35:27 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=W8/A8VOESyOhDtcO0Quwfboq3Nqd5bj+EUSVpxa9FyI=;
 b=XMGTPdf0TqWyM1Ocz2sWttuylJsJjgSgCY5SSZvpTbWWKM4z4R9torz2H1BoWPZNs8
 ObSn8rYIemZ2OJORje7z6tjno3bfc0TgycltpaG6GhZM8QOjWFqXQgAh4RgdrIugVvgq
 uCnk+u8qmhbWEFTCwGITpBVMw5OQxZOuF/7RbqCWrdat4SHp6z2JmuAhEtKBO9kKP5Rb
 GyLxl6YZbTAC18bQCwT7PciQMJgk2d3l28wtsaIsfBag8knWIRTYWHc6T/4h/k86sghe
 B3vy/O1wVt7HtAMgtWqLNXgIZUOIT3LsbrfToZ2iGJY8NKUj5K+N4/zBBT9bQ4U4hj9j
 EKNw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=W8/A8VOESyOhDtcO0Quwfboq3Nqd5bj+EUSVpxa9FyI=;
 b=GqF0gIYjLr0l3AsuMgjqLnfIeChG/kB7cHGgXy+y/Rd65eUGHrYhThUFKf7GYIqz6p
 y44CKAzRI+kx/e4lPZajTS0UEzpCcg2UxOcPKIZ3mYfbak53yZygzee/0xqHrnf7lDmB
 ou6/A2Y6+4qzXRYJm92S+xC/JcUWEcgD779RndYkWHt/8QrmgtniYAEMMozUUTKlqS+K
 GKFU0ydqrmZMHIFiX7RUB5lsxCD60oqqsyjqX2NWDLYCXWmp5dn7bz/1km3hA+Z4hvxy
 ZiB2wDcE73Ssx5qlh+BoL6utyZeGwxNAfpYMVvh82Xs7VzgF5UnKGkvG4X2BcLI3cTnq
 gLhQ==
X-Gm-Message-State: ALQs6tDB+tsG5nJIRgiSkuMh18x9DoiI7Ft/eoUh2Ecjjcg61Veg9ZDv
 pLAePI+YyViIYCrswKi+znfm2S1Bu6mk4+jzeu8=
X-Google-Smtp-Source: AIpwx4+qtdq89B7ujkStBGN4GftsaCSEd+/SEejiSBukklqnm/e9dX4B9dYy0oEwnXqKu61HNLeU15R76cRE3PHeiy0=
X-Received: by 10.46.144.153 with SMTP id l25mr14515252ljg.55.1522938926263;
 Thu, 05 Apr 2018 07:35:26 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Thu, 5 Apr 2018 07:35:25 -0700 (PDT)
In-Reply-To: <d4a73b42-0bec-c237-51cd-88851ee0368e@suse.com>
References: <CAHP4M8WiOD+RhbX2Eqk8z+1g=i0pcQNmJqM6X_hQ_u=K+A3ryw@mail.gmail.com>
 <alpine.LFD.2.21.1804041102390.2498@algedi.dur.ac.uk>
 <CAHP4M8WLxg+HaTs+L9SmhmkBiTugSR98YH8mvRx-T2i8A0q9jg@mail.gmail.com>
 <alpine.LFD.2.21.1804041549230.2498@algedi.dur.ac.uk>
 <d4a73b42-0bec-c237-51cd-88851ee0368e@suse.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Thu, 5 Apr 2018 20:05:25 +0530
Message-ID: <CAHP4M8WJEaZtB0cZJGXRg-5g6x7dme8uXC87vWa707D=8u+_7Q@mail.gmail.com>
To: Juergen Gross <jgross@suse.com>
Subject: Re: [Minios-devel] [Xen-devel] Xen-4.10 Domain-0 crashes at bootup
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org,
 M A Young <m.a.young@durham.ac.uk>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgQWxsLgoKQXMgc3VnZ2VzdGVkIGJ5IE1pY2hhZWwuIEkgY29tcGlsZWQgdGhlIGtlcm5lbCBh
cyBwZXIKaHR0cHM6Ly9sa21sLm9yZy9sa21sLzIwMTgvMi8yMy81OSwgY29udGFpbmluZyB0aGUg
cGF0Y2gKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9hcmNoaXZlcy9odG1sL3hlbi1kZXZl
bC8yMDE4LTAyL21zZzAwMDQ1Lmh0bWwuCgpVcG9uIGluc3RhbGxpbmcgdGhpcyBmcmVzaCBrZXJu
ZWwsIHRoZSBtYWNoaW5lIGJvb3RlZCBmaW5lIHdpdGggWGVuCmVuYWJsZWQgKGp1c3QgbmVlZGVk
IGFuIGFkZGl0aW9uYWwgInN1ZG8gYXB0LWdldCBpbnN0YWxsIGxpYnlhamwtZGV2IgphbmQgYW5v
dGhlciByZWJvb3QgdG8gZ2V0IHRoZSBwcm9wZXIgbGlzdGluZyBvZiAiRG9tYWluLTAiLgoKU28s
IGF0IGxlYXN0IGZyb20gbXkgc2lkZSwgdGhpcyB0aHJlYWQgY2FuIGJlIG1hcmtlZCBzb2x2ZWQv
Y2xvc2VkLgoKClRoYW5rcyBhbmQgUmVnYXJkcywKQWpheQoKT24gV2VkLCBBcHIgNCwgMjAxOCBh
dCA4OjQ1IFBNLCBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+IHdyb3RlOgo+IE9uIDA0
LzA0LzE4IDE3OjAwLCBNIEEgWW91bmcgd3JvdGU6Cj4+IE9uIFdlZCwgNCBBcHIgMjAxOCwgQWph
eSBHYXJnIHdyb3RlOgo+Pgo+Pj4gVGhhbmtzIE1pY2hhZWwgZm9yIHRoZSByZXBseS4KPj4+Cj4+
PiBJIHdhbnQgdG8gZ2l2ZSB0aGlzIHBhdGNoIGEgdHJ5LCBhcyB0aGUgc3ltcHRvbXMgbG9vayBp
ZGVudGljYWwuCj4+PiBIb3dldmVyLCBJIHNlZSBubyB4ZW4taGVhZC5TIHdoZW4gSSBjbG9uZSB0
aGUgcmVwbyBmcm9tCj4+PiBnaXQ6Ly94ZW5iaXRzLnhlbi5vcmcveGVuLmdpdAo+Pj4KPj4+IFdo
YXQgYW0gSSBtaXNzaW5nPwo+Pgo+PiBUaGUgcGF0Y2ggaXMgZm9yIHRoZSB4ZW4gY29kZSBpbiB0
aGUga2VybmVsLiBJdCB3YXMgYWNjZXB0ZWQgaW4gdGhlIGtlcm5lbAo+PiB1cHN0cmVhbSAoaW4g
NC4xNS41IGFuZCBwcm9iYWJseSBiYWNrcG9ydGVkIHRvIG90aGVyIG1haW50YWluZWQga2VybmVs
cykKPj4gc28geW91IHByb2JhYmx5IGp1c3QgbmVlZCBhIGtlcm5lbCBsZXNzIHRoYW4gYSBtb250
aCBvbGQsIGJ1dCBhcyBoYXMKPj4gYWxyZWFkeSBiZWVuIHNhaWQsIHRoZSBrZXJuZWwgbWF5IG5v
dCBiZSB0aGUgcHJvYmxlbS4KPgo+IEFuZCB0aGUgc3ltcHRvbXMgYXJlIGNvbXBsZXRlbHkgZGlm
ZmVyZW50ICh3ZWxsLCBhdCBsZWFzdCBmb3IgbWUpLgo+Cj4gQWpheSdzIGNyYXNoIGlzIGR1ZSB0
byBhbiBpbGxlZ2FsIGluc3RydWN0aW9uLCBzbyBwcm9iYWJseSBhIEJVRygpLgo+Cj4gVGhlIHBh
dGNoIGFib3ZlIGZpeGVzIGFuIGVhcmx5IHBhZ2UgZmF1bHQgaW4gdGhlIGtlcm5lbC4KPgo+Cj4g
SnVlcmdlbgoKCgotLSAKUmVnYXJkcywKQWpheQoKX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2
ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWls
bWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 14:49:43 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 14:49:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f46Cs-000597-C1; Thu, 05 Apr 2018 14:49:42 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fi5o=g2=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f46Cr-00058z-2e
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 14:49:41 +0000
X-Inumbo-ID: 79b6cd22-38e0-11e8-9728-bc764e045a96
Received: from mail-wm0-x22a.google.com (unknown [2a00:1450:400c:c09::22a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 79b6cd22-38e0-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 16:49:01 +0200 (CEST)
Received: by mail-wm0-x22a.google.com with SMTP id u189so6454759wmd.1
 for <minios-devel@lists.xenproject.org>; Thu, 05 Apr 2018 07:49:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=MPAyByDtN1EU67yOXHubbmPwISuxCSPCDv6UBI0MCKs=;
 b=VPSCOUZ4cxw+H+M+yOW0yga1G5SIGsWPHhyD1QdxHRm6cW3iwc1KG/QITQencDOAq5
 dEUmNQOAm1uF8psF5SjxNukwnqCiZJ1w3l7F9/ujf+r8NeqSguJb4mimAJBPJL5E0ONY
 R89qu0zBWLI4KC2mOOiZj0SgNffAdAp+LV+lfDylT2bneEA+4H/Qjb3AiTKUw34Pkdg4
 nI8Uogf/qR/V3lRcuUsKA0/aXnEKv/9hffpag0HUt2RhLT/L+xKC1kC5KKMJIlCpA6Su
 p+dduTksldAmjfQkY8LvcE3ifUXb80WYnY5OKCLVDVDpF6q4tC1cS0io8G86nLkTVkiS
 MkVw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=MPAyByDtN1EU67yOXHubbmPwISuxCSPCDv6UBI0MCKs=;
 b=Htee9wMkORmufcZuQ/2XikrdaEjx8SBVOzGHWm5v4RtUeN8Ao1BfhZ3CBPw9OFQRaf
 pVbpIIEr5vNN5uzXNi55EVX3V4AJza3pG+7E7szY6KcuIuzTdkD55zW/CnknG2ILMT+o
 s5AV+7wtleou5BbQ6fXp/vssiLEtchcaX+SZbojP+kiqu9hEN4Fz9ZQyuW7pMZIZ0wJu
 qnaQyybT82t/YEGWUKxlaOCWUgbXyTssgfCBrA0RcmIRlKkIOQ/hCmeh51gvmTtnzGIa
 SBzOoLnsGg9ZOwA4jovrJHz2HdbvlTW7kn735I0RcFNK6T72js88j2rNqwqWmRf926Ar
 4iag==
X-Gm-Message-State: ALQs6tBkkcWXuMIGzgPYK2p7gKt2cCTWmHfZpR98Izz9SsaGAC6zicnF
 c1xdXCPp6UAn4jWeCSR8ryJAyF/vChNlyQ4iX8bryg==
X-Google-Smtp-Source: AIpwx49xWkklu1K4aDza5YMycSG+VY8tP4CP7sP4cCrwz/upVQd33kucadrP1sncQw8s6LzwljBfdhyI8Yqv1VppMLg=
X-Received: by 10.46.41.156 with SMTP id p28mr14219809ljp.32.1522939777924;
 Thu, 05 Apr 2018 07:49:37 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Thu, 5 Apr 2018 07:49:37 -0700 (PDT)
In-Reply-To: <CAHP4M8V=o3N_QWsz8RKV=UkvFe-70HFgk9HWf7PFGbygG1O_vA@mail.gmail.com>
References: <CAHP4M8WnL78i4Lr-KwBeiNX-kg4HRHvjQarGORMnEvbXA+N-pA@mail.gmail.com>
 <CAHP4M8VBsj36oq=WWaEJubBzRq0rOWUvcz66KAQj08LgwBW8Nw@mail.gmail.com>
 <CAHP4M8WbGvpgjpDwxnn=8ygG7N+3Tf7ejHNj-8QipNpgouzTLQ@mail.gmail.com>
 <CAHP4M8U3TPQ3SJSFNiRQwbADLso66vy_Pr7gW6xUq8B7Mjb1PA@mail.gmail.com>
 <CAHP4M8XO-hSJT0EXkhoTZDv_esZy=dbYLTAqWS7jAkxCTe9VmA@mail.gmail.com>
 <CAHP4M8UL0=FARsbhy7ZO3Pteyq+8FMWCqT7N0ca2akk_8+ckBA@mail.gmail.com>
 <CAHP4M8URiaqes5yf_nAoBeWWjSV9UeTz6gFuni1JsfQBQdoBqw@mail.gmail.com>
 <CAHP4M8UGQ5JaFbHFG_cgFQoP+d3YRR1yvbBjXPHq4bN1kHcoSg@mail.gmail.com>
 <a833ecbd-33bd-3f67-a167-aef790c7051c@neclab.eu>
 <CAHP4M8XrH+Fv0hrYOUS_84ggH+LnNg+EZMjZ=QC9Z+jK=O2MwQ@mail.gmail.com>
 <cc93ba7c-7011-dd12-368f-113d6097544d@neclab.eu>
 <CAHP4M8V=o3N_QWsz8RKV=UkvFe-70HFgk9HWf7PFGbygG1O_vA@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Thu, 5 Apr 2018 20:19:37 +0530
Message-ID: <CAHP4M8WysgG3gEMCX4eiEhotZCr=jfa4L4KQy6_d4QLRL9nQyg@mail.gmail.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>
Subject: Re: [Minios-devel] [Unikraft] Unable to run hello-world app on Xen
 on x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SSB1cGdyYWRlZCBYZW4gdG8gNC4xMCAoYWZ0ZXIgaGljY3VwcywgZGV0YWlscyBhdApodHRwczov
L2xpc3RzLnhlbnByb2plY3Qub3JnL2FyY2hpdmVzL2h0bWwveGVuLWRldmVsLzIwMTgtMDQvbXNn
MDAxNTUuaHRtbCkuCk5vdywgdW5pa3JhZnQgaGVsbG93b3JsZCBhcHAgZm9yIHhlbiB3b3JrcyBm
aW5lLgoKU28sIGF0IGxlYXN0IGZyb20gbXkgc2lkZSwgdGhpcyB0aHJlYWQgY2FuIGJlIG1hcmtl
ZCBzb2x2ZWQvY2xvc2VkLgoKClRoYW5rcyBhbmQgUmVnYXJkcywKQWpheQoKX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcg
bGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5w
cm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 15:21:29 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 15:21:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f46hd-0007pV-DT; Thu, 05 Apr 2018 15:21:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f46hc-0007oZ-Hc
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 15:21:28 +0000
X-Inumbo-ID: 3009cb06-38e5-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 3009cb06-38e5-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 15:22:44 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3ATj55CxzlpG/qECvXCy+O+j09IxM/srCxBDY+r6Qd?=
 =?us-ascii?q?2+oQIJqq85mqBkHD//Il1AaPAd2Araocw8Pt8InYEVQa5piAtH1QOLdtbDQizf?=
 =?us-ascii?q?ssogo7HcSeAlf6JvO5JwYzHcBFSUM3tyrjaRsdF8nxfUDdrWOv5jAOBBr/KRB1?=
 =?us-ascii?q?JuPoEYLOksi7ze+/94HdbglSmDaxfa55IQmrownWqsQYm5ZpJLwryhvOrHtIeu?=
 =?us-ascii?q?BWyn1tKFmOgRvy5dq+8YB6/ShItP0v68BPUaPhf6QlVrNYFygpM3o05MLwqxbO?=
 =?us-ascii?q?SxaE62YGXWUXlhpIBBXF7A3/U5zsvCb2qvZx1S+HNsDwULs6Wymt771zRRHoli?=
 =?us-ascii?q?kJKjA3/mLQhMNygqJWuw6tqwBlzoLIeoyZKOZyc6XAdt0aX2pBWcNRWjRfD4O7?=
 =?us-ascii?q?dIsPE+sBPeBFpIf7ulsOtQa+DhSrCezzzT9InWP23aw80+g7FQHGwRQgH88VvX?=
 =?us-ascii?q?vIt9X5Lr8SUf2uw6XS1zXDaOpb1DHg44bLahAsueyAUL1tfcbLykQiFxnJgkuO?=
 =?us-ascii?q?pYHnJT+Y2PwBv3WU4uZ9T+6iiG4qpxtvrjWhyMogkJTFi40Lxl3C6C532pw6Jc?=
 =?us-ascii?q?eiR05+edOkFZxQuDyEOIZuWcMiRn1ouD49yr0bpZ63ZCgKx4ojxx7Yc/GHbY2I?=
 =?us-ascii?q?7QjiVOaVOzt3mGlldKinhxav6kes0Pf8Vs6s3FZLqCpKjMXMu2gQ2xHc98SLUP?=
 =?us-ascii?q?hw80e71TqRyQze6PtILE4smareMZEhw7owlpQJsUTEGy/7gFn5jKiNdkU4++io?=
 =?us-ascii?q?7f7rYrH7pp+EKo95kR3xMr80lsynHOQ3KRICX3Kc+eikzr3s4VX5QKlWjv0xiq?=
 =?us-ascii?q?TZtZHaJcIapq6+GA9Zy5ss5AihDzi41NQVhn0HLFNeeBKblIjlIV7PL+7+Dful?=
 =?us-ascii?q?hFSsijhrzejcPrL9GpXNMmTDkLD5cLZm6k5czQ0zzdZF65JXF7EOPvTzW07vu9?=
 =?us-ascii?q?zCFRI5NRK7zPrjCNpnzYwSQ3yAArLKeJ/V5FqJ4OMoOKyAaZEYvB75KuM5/Lj+?=
 =?us-ascii?q?gHl/nkUSLoez2p5CQ3ejAvVga2GEeWek1twGCnsLuEw6UfT3oFaZFyZObTCoWP?=
 =?us-ascii?q?RvtXkAFIu6ANKbFciWi7ub0XLjEw=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2A+AACCPcZajAPjVY1dGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYUSKItfXo8TGpJVFIFmggWDCQKEDzQYAQIBAQEBAQECARMBAQEmV4I1IoJ?=
 =?us-ascii?q?MAwMnUhA/ElcZhRGtaDOEV4NqgiWJPj+BDIJQhGiGDwKHJYRbU4ptCIFfiSKDM?=
 =?us-ascii?q?oFKinGNP4NnAhw3gVMzGoM1giAOCY4abI0bAQE?=
X-IPAS-Result: =?us-ascii?q?A2A+AACCPcZajAPjVY1dGwEBAQEDAQEBCQEBAYUSKItfXo8?=
 =?us-ascii?q?TGpJVFIFmggWDCQKEDzQYAQIBAQEBAQECARMBAQEmV4I1IoJMAwMnUhA/ElcZh?=
 =?us-ascii?q?RGtaDOEV4NqgiWJPj+BDIJQhGiGDwKHJYRbU4ptCIFfiSKDMoFKinGNP4NnAhw?=
 =?us-ascii?q?3gVMzGoM1giAOCY4abI0bAQE?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495023"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 18:21:23 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 12B721A60198;
 Thu,  5 Apr 2018 18:21:23 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id wtIuTR4LZ0xX; Thu,  5 Apr 2018 18:21:23 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id E988A1A601A0;
 Thu,  5 Apr 2018 18:21:22 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id DF9F81A60198;
 Thu,  5 Apr 2018 18:21:22 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 18:21:16 +0300
Message-Id: <1522941678-21179-2-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 1/3] plat/kvm: cleanup - remove
 setup.h
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KLS0tCiBw
bGF0L2t2bS9pbmNsdWRlL2t2bS9zZXR1cC5oIHwgNDggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0KIHBsYXQva3ZtL3g4Ni9zZXR1cC5jICAgICAgICAgfCAxMCAr
KysrLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1MyBkZWxldGlvbnMo
LSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBwbGF0L2t2bS9pbmNsdWRlL2t2bS9zZXR1cC5oCgpkaWZm
IC0tZ2l0IGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0vc2V0dXAuaCBiL3BsYXQva3ZtL2luY2x1ZGUv
a3ZtL3NldHVwLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ2NjRlZTQuLjAwMDAw
MDAKLS0tIGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0vc2V0dXAuaAorKysgL2Rldi9udWxsCkBAIC0x
LDQ4ICswLDAgQEAKLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8KLS8qCi0gKiBB
dXRob3JzOiBEYW4gV2lsbGlhbXMKLSAqICAgICAgICAgIFJpY2FyZG8gS29sbGVyCi0gKiAgICAg
ICAgICBNYXJ0aW4gTHVjaW5hCi0gKiAgICAgICAgICBXZWkgQ2hlbgotICogICAgICAgICAgRmVs
aXBlIEh1aWNpIDxmZWxpcGUuaHVpY2lAbmVjbGFiLmV1PgotICoKLSAqIENvcHlyaWdodCAoYykg
MjAxNS0yMDE3IElCTQotICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTcgRG9ja2VyLCBJbmMuCi0g
KiBDb3B5cmlnaHQgKGMpIDIwMTcgQVJNIEx0ZC4KLSAqIENvcHlyaWdodCAoYykgMjAxNyBORUMg
RXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbgotICoKLSAqIFBlcm1pc3Npb24gdG8gdXNlLCBj
b3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUKLSAqIGZvciBhbnkg
cHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZAot
ICogdGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5v
dGljZSBhcHBlYXIKLSAqIGluIGFsbCBjb3BpZXMuCi0gKgotICogVEhFIFNPRlRXQVJFIElTIFBS
T1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAotICogV0FSUkFOVElF
UyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAotICog
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRQotICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5E
SVJFQ1QsIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNP
RVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCi0gKiBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hF
VEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCi0gKiBORUdMSUdFTkNFIE9SIE9USEVSIFRP
UlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4KLSAqIENPTk5FQ1RJT04gV0lUSCBU
SEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCi0gKi8KLQotI2luY2x1ZGUg
PGludHR5cGVzLmg+Ci0jaW5jbHVkZSA8dWsvYXNzZXJ0Lmg+Ci0jaW5jbHVkZSA8dWsvZXNzZW50
aWFscy5oPgotCi0vKiBhbGlnbm1lbnQgbWFjcm9zICovCi0jZGVmaW5lIEFMSUdOXzRLIF9fYWxp
Z24oMHgxMDAwKQotI2RlZmluZSBBTElHTl82NF9CSVQgX19hbGlnbigweDgpCi0KLS8qIGNvbnZl
bmllbnQgbWFjcm8gc3RyaW5naWZpY2F0aW9uICovCi0jZGVmaW5lIFNUUl9FWFBBTkQoeSkgI3kK
LSNkZWZpbmUgU1RSKHgpIFNUUl9FWFBBTkQoeCkKLQotI2RlZmluZSBhc3NlcnQoZSkgVUtfQVNT
RVJUKGUpCi0jZGVmaW5lIFBBTklDKHMpIGFzc2VydChlKSAvL2tsdWRnZSEKLQotLyogcGxhdGZv
cm0uYzogcGxhdGZvcm0gaW5jbHVkZXMgKi8KLXZvaWQgcGxhdGZvcm1faW5pdCh2b2lkICphcmcp
OwotY2hhciAqcGxhdGZvcm1fY21kbGluZSh2b2lkKTsKLXVpbnQ2NF90IHBsYXRmb3JtX21lbV9z
aXplKHZvaWQpOwotdm9pZCBwbGF0Zm9ybV9leGl0KHZvaWQpIF9fYXR0cmlidXRlX18oKG5vcmV0
dXJuKSk7CmRpZmYgLS1naXQgYS9wbGF0L2t2bS94ODYvc2V0dXAuYyBiL3BsYXQva3ZtL3g4Ni9z
ZXR1cC5jCmluZGV4IDY4OTVmMjkuLjk2ZDgwZTkgMTAwNjQ0Ci0tLSBhL3BsYXQva3ZtL3g4Ni9z
ZXR1cC5jCisrKyBiL3BsYXQva3ZtL3g4Ni9zZXR1cC5jCkBAIC0yNywxMiArMjcsMTIgQEAKICAq
LwogCiAjaW5jbHVkZSA8c3RyaW5nLmg+Ci0jaW5jbHVkZSA8a3ZtL3NldHVwLmg+CiAjaW5jbHVk
ZSA8a3ZtL2NvbnNvbGUuaD4KICNpbmNsdWRlIDxrdm0teDg2L211bHRpYm9vdC5oPgogI2luY2x1
ZGUgPGt2bS14ODYvbXVsdGlib290X2RlZnMuaD4KICNpbmNsdWRlIDxrdm0teDg2L2NwdV94ODZf
NjQuaD4KICNpbmNsdWRlIDx1ay9hcmNoL2xpbWl0cy5oPgorI2luY2x1ZGUgPHVrL2FyY2gvdHlw
ZXMuaD4KICNpbmNsdWRlIDx1ay9wbGF0L2NvbnNvbGUuaD4KICNpbmNsdWRlIDx1ay9hc3NlcnQu
aD4KICNpbmNsdWRlIDx1ay9lc3NlbnRpYWxzLmg+CkBAIC00Nyw3ICs0Nyw3IEBAIHZvaWQgKl9s
aWJrdm1wbGF0X2hlYXBfc3RhcnQ7CiB2b2lkICpfbGlia3ZtcGxhdF9zdGFja190b3A7CiB2b2lk
ICpfbGlia3ZtcGxhdF9tZW1fZW5kOwogCi1leHRlcm4gdm9pZCBfbGlia3ZtcGxhdF9uZXdzdGFj
ayh1aW50NjRfdCBzdGFja19zdGFydCwgdm9pZCAoKnRyYW1wKSh2b2lkICopLAorZXh0ZXJuIHZv
aWQgX2xpYmt2bXBsYXRfbmV3c3RhY2soX191NjQgc3RhY2tfc3RhcnQsIHZvaWQgKCp0cmFtcCko
dm9pZCAqKSwKIAkJCQl2b2lkICphcmcpOwogCiBzdGF0aWMgaW5saW5lIHZvaWQgX21iX2dldF9j
bWRsaW5lKHN0cnVjdCBtdWx0aWJvb3RfaW5mbyAqbWksIGNoYXIgKmNtZGxpbmUsCkBAIC01Nyw3
ICs1Nyw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBfbWJfZ2V0X2NtZGxpbmUoc3RydWN0IG11bHRp
Ym9vdF9pbmZvICptaSwgY2hhciAqY21kbGluZSwKIAljaGFyICptaV9jbWRsaW5lOwogCiAJaWYg
KG1pLT5mbGFncyAmIE1VTFRJQk9PVF9JTkZPX0NNRExJTkUpIHsKLQkJbWlfY21kbGluZSA9IChj
aGFyICopKHVpbnQ2NF90KW1pLT5jbWRsaW5lOworCQltaV9jbWRsaW5lID0gKGNoYXIgKikoX191
NjQpbWktPmNtZGxpbmU7CiAJCWNtZGxpbmVfbGVuID0gc3RybGVuKG1pX2NtZGxpbmUpOwogCiAJ
CWlmIChjbWRsaW5lX2xlbiA+PSBtYXhsZW4pIHsKQEAgLTg3LDcgKzg3LDcgQEAgc3RhdGljIGlu
bGluZSB2b2lkIF9tYl9pbml0X21lbShzdHJ1Y3QgbXVsdGlib290X2luZm8gKm1pKQogCSAqLwog
CWZvciAob2Zmc2V0ID0gMDsgb2Zmc2V0IDwgbWktPm1tYXBfbGVuZ3RoOwogCSAgICAgb2Zmc2V0
ICs9IG0tPnNpemUgKyBzaXplb2YobS0+c2l6ZSkpIHsKLQkJbSA9ICh2b2lkICopKHVpbnRwdHJf
dCkobWktPm1tYXBfYWRkciArIG9mZnNldCk7CisJCW0gPSAodm9pZCAqKShfX3VwdHIpKG1pLT5t
bWFwX2FkZHIgKyBvZmZzZXQpOwogCQlpZiAobS0+YWRkciA9PSBQTEFURk9STV9NRU1fU1RBUlQK
IAkJICAgICYmIG0tPnR5cGUgPT0gTVVMVElCT09UX01FTU9SWV9BVkFJTEFCTEUpIHsKIAkJCWJy
ZWFrOwpAQCAtMTU0LDYgKzE1NCw2IEBAIHZvaWQgX2xpYmt2bXBsYXRfZW50cnkodm9pZCAqYXJn
KQogCSAqLwogCXVrX3ByaW50ZChETFZMX0lORk8sICJTd2l0Y2ggZnJvbSBib290c3RyYXAgc3Rh
Y2sgdG8gc3RhY2sgQCVwXG4iLAogCQkJCV9saWJrdm1wbGF0X21lbV9lbmQpOwotCV9saWJrdm1w
bGF0X25ld3N0YWNrKCh1aW50NjRfdCkgX2xpYmt2bXBsYXRfbWVtX2VuZCwKKwlfbGlia3ZtcGxh
dF9uZXdzdGFjaygoX191NjQpIF9saWJrdm1wbGF0X21lbV9lbmQsCiAJCQkJX2xpYmt2bXBsYXRf
ZW50cnkyLCAwKTsKIH0KLS0gCjIuMS40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxA
bGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFu
L2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 15:21:29 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 15:21:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f46hc-0007oT-B8; Thu, 05 Apr 2018 15:21:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f46hb-0007oO-Bg
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 15:21:27 +0000
X-Inumbo-ID: 2e2b585b-38e5-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 2e2b585b-38e5-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 15:22:41 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3A29YmPxR6vUn75b5NewHvBmATydpsv+yvbD5Q0YIu?=
 =?us-ascii?q?jvd0So/mwa6yZBaN2/xhgRfzUJnB7Loc0qyK6/umATRIyK3CmUhKSIZLWR4BhJ?=
 =?us-ascii?q?detC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+?=
 =?us-ascii?q?KPjrFY7OlcS30P2594HObwlSizexfb1/IA+qoQnNq8IbnZZsJqEtxxXTv3BGYf?=
 =?us-ascii?q?5WxWRmJVKSmxbz+MK994N9/ipTpvws6ddOXb31cKokQ7NYCi8mM30u683wqRbD?=
 =?us-ascii?q?VwqP6WACXWgQjxFFHhLK7BD+Xpf2ryv6qu9w0zSUMMHqUbw5Xymp4qF2QxHqlS?=
 =?us-ascii?q?gHLSY0/mHJhMJtgqxVoxWvqgdjz4LIeoyZKOBzcr/Bcd4cWGFPXtxRVytEAo6k?=
 =?us-ascii?q?cYYPCPEBPfpZr4n7ulAAqwa+BRGxBOjyzTJHmnj23bYm0+QgFwHKxgggH88WsH?=
 =?us-ascii?q?TJt9j6KLwSXfqtzKnV1jrPdelW2TDk5YXObxsvoumMUKptfcfe1EUjDQDIg1WK?=
 =?us-ascii?q?pYD7IT+Y1P4BvmaD4+Z9Wu+jlnQrpgJxrzS12MshhIfEipgIxl3L6yl0xps+K8?=
 =?us-ascii?q?eiR05he9GkFYNdtySdN4RrXMwvW3pouCMmyr0evp67YTQKxIwnxxHBb/yHdJCF?=
 =?us-ascii?q?4gzmVOmLIDd4gGhpd66khxqo6Uig1/bzWtOu0FZNtiZFk9/MuW4R1xHL98SKRe?=
 =?us-ascii?q?Zx8l2i1DuPzQzf9P9ILEIumafVM5Ihx6Q/lpsXsUTNBC/2n0D2gbeKeUUj4eio?=
 =?us-ascii?q?9+XnYrP8qp+YKo90khz+P78ylcykG+g4KhUOUHOB9eSm073v5Vf5T6lSjv0qjq?=
 =?us-ascii?q?nZt4jXJcEapq6/Ag9V1Z0j5w+iADi4ztQXg30HIUlBeBKGlIjpJ0rOLOr3DPih?=
 =?us-ascii?q?hVSgijBrx+rJPrf5GJXCMmDDkKv9fbZ680Nc0wszzdVY55JSEL0BI+/zVVH3tN?=
 =?us-ascii?q?3ZEBA5KRe5w+D5B9ph0oMRQ3mADrWHP6PP4he04bcqIu+NY5RQtDvjJvwN4//1?=
 =?us-ascii?q?kWR/iVIbO66z0sg5cne9S99hOFmYZzLIn88cWTMBuREiTeqsjECaTBZYfDCqQq?=
 =?us-ascii?q?h6/DZtW9HuNpvKWo342O/J5yy8BJADPm0=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2D0AACCPcZajAPjVY1dHAECBAELAYQkb?=
 =?us-ascii?q?yiMPY8tklWBeiaEaIQRNRcBAgEBAQEBAQIBEwEBASZLDII1IoNLT4YTrhuEV4N?=
 =?us-ascii?q?qgiWJPj+JS4UIAoxTim0IgV+DdIhggWqKUZEmAh4DMoFTMxqDNQmBYgFCi0iCW?=
 =?us-ascii?q?2yNGwEB?=
X-IPAS-Result: =?us-ascii?q?A2D0AACCPcZajAPjVY1dHAECBAELAYQkbyiMPY8tklWBeia?=
 =?us-ascii?q?EaIQRNRcBAgEBAQEBAQIBEwEBASZLDII1IoNLT4YTrhuEV4NqgiWJPj+JS4UIA?=
 =?us-ascii?q?oxTim0IgV+DdIhggWqKUZEmAh4DMoFTMxqDNQmBYgFCi0iCW2yNGwEB?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495022"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 18:21:23 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 0AF021A60198;
 Thu,  5 Apr 2018 18:21:23 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 1oMipAou5aVX; Thu,  5 Apr 2018 18:21:22 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id E05C61A6019B;
 Thu,  5 Apr 2018 18:21:22 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id DB9AE1A60195;
 Thu,  5 Apr 2018 18:21:22 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 18:21:15 +0300
Message-Id: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
Subject: [Minios-devel] [UNIKRAFT PATCH 0/3] Enable scheduling on KVM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIGN1cnJlbnQgcGF0Y2ggc2VyaWVzIGFkZCBpbnRlcnJ1cHRzIGFuZCB0aW1lciBzdXBwb3J0
IG9uIEtWTSwgbmVlZGVkIGZvcgplbmFibGluZyBzY2hlZHVsaW5nIG9uIEtWTS4gCgpDb3N0aW4g
THVwdSAoMyk6CiAgcGxhdC9rdm06IGNsZWFudXAgLSByZW1vdmUgc2V0dXAuaAogIHBsYXQva3Zt
OiBBZGQgS1ZNICh4ODZfNjQpIGludGVycnVwdHMgc3VwcG9ydAogIHBsYXQva3ZtOiBBZGQgS1ZN
ICh4ODZfNjQpIHRpbWVyIHN1cHBvcnQKCiBwbGF0L2t2bS9NYWtlZmlsZS51ayAgICAgICAgICAg
ICAgICAgICAgICAgfCAgMTIgKy0KIHBsYXQva3ZtL2Nsb2NrX3N1YnIuYyAgICAgICAgICAgICAg
ICAgICAgICB8IDIyNiArKysrKysrKysrKysrKysrKysKIHBsYXQva3ZtL2luY2x1ZGUva3ZtLXg4
Ni9jcHVfeDg2XzY0LmggICAgICB8ICA0MiAtLS0tCiBwbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYv
Y3B1X3g4Nl82NF9kZWZzLmggfCAgNDIgLS0tLQogcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L3Ry
YXBzLmggICAgICAgICAgIHwgIDQ1ICsrKysKIHBsYXQva3ZtL2luY2x1ZGUva3ZtL2Nsb2NrX3N1
YnIuaCAgICAgICAgICB8ICA4MyArKysrKysrCiBwbGF0L2t2bS9pbmNsdWRlL2t2bS9pbnRjdHJs
LmggICAgICAgICAgICAgfCAgMzggKysrCiBwbGF0L2t2bS9pbmNsdWRlL2t2bS9pcnEuaCAgICAg
ICAgICAgICAgICAgfCAgNDUgKysrKwogcGxhdC9rdm0vaW5jbHVkZS9rdm0vc2V0dXAuaCAgICAg
ICAgICAgICAgIHwgIDQ4IC0tLS0KIHBsYXQva3ZtL2luY2x1ZGUva3ZtL3RzY2Nsb2NrLmggICAg
ICAgICAgICB8ICA0MiArKysrCiBwbGF0L2t2bS9pcnEuYyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAxMDcgKysrKysrKysrCiBwbGF0L2t2bS9zaHV0ZG93bi5jICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgIDkgKwogcGxhdC9rdm0vdGltZS5jICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwgIDYyICsrKysrCiBwbGF0L2t2bS90c2NjbG9jay5jICAgICAgICAgICAgICAgICAgICAg
ICAgfCAzNTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHBsYXQva3ZtL3g4Ni9jcHVf
dmVjdG9yc194ODZfNjQuUyAgICAgICAgICB8IDE0MiArKysrKysrKysrKysKIHBsYXQva3ZtL3g4
Ni9jcHVfeDg2XzY0LmMgICAgICAgICAgICAgICAgICB8ICA3MSAtLS0tLS0KIHBsYXQva3ZtL3g4
Ni9lbnRyeTY0LlMgICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiBwbGF0L2t2bS94ODYvaW50
Y3RybC5jICAgICAgICAgICAgICAgICAgICAgfCAxMTEgKysrKysrKysrCiBwbGF0L2t2bS94ODYv
bGNwdS5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgMzcgKysrCiBwbGF0L2t2bS94ODYvc2V0
dXAuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgMTYgKy0KIHBsYXQva3ZtL3g4Ni90cmFwcy5j
ICAgICAgICAgICAgICAgICAgICAgICB8IDE4NiArKysrKysrKysrKysrKysKIDIxIGZpbGVzIGNo
YW5nZWQsIDE1MDkgaW5zZXJ0aW9ucygrKSwgMjEyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg
MTAwNjQ0IHBsYXQva3ZtL2Nsb2NrX3N1YnIuYwogZGVsZXRlIG1vZGUgMTAwNjQ0IHBsYXQva3Zt
L2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0LmgKIGRlbGV0ZSBtb2RlIDEwMDY0NCBwbGF0L2t2
bS9pbmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NF9kZWZzLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBw
bGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvdHJhcHMuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQv
a3ZtL2luY2x1ZGUva3ZtL2Nsb2NrX3N1YnIuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQva3Zt
L2luY2x1ZGUva3ZtL2ludGN0cmwuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL2luY2x1
ZGUva3ZtL2lycS5oCiBkZWxldGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0vaW5jbHVkZS9rdm0vc2V0
dXAuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL2luY2x1ZGUva3ZtL3RzY2Nsb2NrLmgK
IGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2t2bS9pcnEuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IHBs
YXQva3ZtL3RpbWUuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL3RzY2Nsb2NrLmMKIGNy
ZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2t2bS94ODYvY3B1X3ZlY3RvcnNfeDg2XzY0LlMKIGRlbGV0
ZSBtb2RlIDEwMDY0NCBwbGF0L2t2bS94ODYvY3B1X3g4Nl82NC5jCiBjcmVhdGUgbW9kZSAxMDA2
NDQgcGxhdC9rdm0veDg2L2ludGN0cmwuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL3g4
Ni90cmFwcy5jCgotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0
cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlz
dGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 15:21:53 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 15:21:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f46i1-0007rd-Fd; Thu, 05 Apr 2018 15:21:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f46i0-0007rT-7w
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 15:21:52 +0000
X-Inumbo-ID: 3d9ce9bd-38e5-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 3d9ce9bd-38e5-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 15:23:07 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3Ahr4hQRM9/Rvy6eafLaAl6mtUPXoX/o7sNwtQ0KIM?=
 =?us-ascii?q?zox0Ivn9rarrMEGX3/hxlliBBdydt6ofzbKO+4nbGkU4qa6bt34DdJEeHzQksu?=
 =?us-ascii?q?4x2zIaPcieFEfgJ+TrZSFpVO5LVVti4m3peRMNQJW2aFLduGC94iAPERvjKwV1?=
 =?us-ascii?q?Ov71GonPhMiryuy+4ZLebxlGiTanfb9+MAi9oBnMuMURnYZsMLs6xAHTontPde?=
 =?us-ascii?q?RWxGdoKkyWkh3h+Mq+/4Nt/jpJtf45+MFOTav1f6IjTbxFFzsmKHw65NfqtRbY?=
 =?us-ascii?q?UwSC4GYXX3gMnRpJBwjF6wz6Xov0vyDnuOdxxDWWMMvrRr0yRD+s7bpkSAXwhS?=
 =?us-ascii?q?kHKTA37W/ZhM93gq1ZrhKsvABzz5LObY2JLvdyYr/RcNUHTmRBRMZRUClBD5ui?=
 =?us-ascii?q?YosIFOoBIedYr4/grFUIsBu+HRSsD/7oxzBUgX/2xrE60+UnEQ3c2AwgAsoOsG?=
 =?us-ascii?q?nPodrpL6ceS/i1zLTTwjnZdfNW3i7w5Y7VeR4vpvGMWKh/ccvXyUQ3Fg7IgU+c?=
 =?us-ascii?q?qZf+MD+NyOsNtXSb7/BgVO+uhGMrsRpxrSOpy8wxiYfJnpoYxk3L+Clk2oo4Jt?=
 =?us-ascii?q?21RFRlbdK6EpZcrS+XO5NrTs4tXm1koiU3x70ctZKlciUHxo4rywPQZvCZdYWD?=
 =?us-ascii?q?/wjtW/yLIThigXJoYLe/hxGv/ke+0uD8Tcy00EpSripCj9nMqmgB1xzN5ciDTf?=
 =?us-ascii?q?tw5lmh2TOV2ADS7uFIO1w7lbHBJ545374/jYAfsV7EHiPumUX2irGZdlk89+S1?=
 =?us-ascii?q?5Onrf6/qq5ycOoNulA3yLKYjltaxDOggNwgBRWmb+eCy1L35+k35Ra1HgeExkq?=
 =?us-ascii?q?nCrJDaJMIbqrS9Aw9IyoYj9g2yACu90NgChXkHMUlKdAidj4juI13OOuz3De+j?=
 =?us-ascii?q?g1Swlzdm3/XGPrznApXMKXjDi67tcqtj5E5C1gUzyctS55ZVCrEaPPLzQVX9td?=
 =?us-ascii?q?PGAR8/KQC0xPznCNpl3IMERW2PGrOZML/VsVKQ/eIvIuyMZIgTuDrnKPgl+uDh?=
 =?us-ascii?q?jXk4mFADZ6mkxp0XZ26kEfRiOUqWemDgjckcETRCgg1rSe3siVqZFDJeeXu2d6?=
 =?us-ascii?q?Y9/S0gTpKrC8HEXI/+rqaG2XKQGYZKZ2YOLk2UDD+8fIKfR/YKLiaPOtJJmSdC?=
 =?us-ascii?q?TaWrDZUmg0L9/DTmwqZqe7KHshYTsojugYB4?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2AvAAC1PsZajAPjVY1UCRoBAQEBAQIBA?=
 =?us-ascii?q?QEBCAEBAQGEI28oi19ejxMaixKHQxSBZiaBX4MJAoQKNBgBAgEBAQEBAQIBEwE?=
 =?us-ascii?q?BASZLDII1IoJMAwMaAQxSED8SVxmFEa1wM4RXg2qCJYZvgk8/gQyCUIRdCxEDA?=
 =?us-ascii?q?Q+FawKHJRaEOgtTim0IgV+DdIUugzKBSiCKUSuNFINnAhw3gVMzGnKCQwmCFw4?=
 =?us-ascii?q?JiXyBQ4JbbIpWAQ4Xgh8BAQ?=
X-IPAS-Result: =?us-ascii?q?A2AvAAC1PsZajAPjVY1UCRoBAQEBAQIBAQEBCAEBAQGEI28?=
 =?us-ascii?q?oi19ejxMaixKHQxSBZiaBX4MJAoQKNBgBAgEBAQEBAQIBEwEBASZLDII1IoJMA?=
 =?us-ascii?q?wMaAQxSED8SVxmFEa1wM4RXg2qCJYZvgk8/gQyCUIRdCxEDAQ+FawKHJRaEOgt?=
 =?us-ascii?q?Tim0IgV+DdIUugzKBSiCKUSuNFINnAhw3gVMzGnKCQwmCFw4JiXyBQ4JbbIpWA?=
 =?us-ascii?q?Q4Xgh8BAQ?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495024"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 18:21:23 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 163911A60198;
 Thu,  5 Apr 2018 18:21:23 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id CcATKzqdGnkA; Thu,  5 Apr 2018 18:21:23 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id EC7D41A60195;
 Thu,  5 Apr 2018 18:21:22 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id E2E411A6019D;
 Thu,  5 Apr 2018 18:21:22 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 18:21:17 +0300
Message-Id: <1522941678-21179-3-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 2/3] plat/kvm: Add KVM (x86_64)
 interrupts support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Q2hhbmdlczoKKiBQSUMgc3VwcG9ydAoqIEtWTSBzcGVjaWZpYyB0cmFwcwoqIHRyYXBzIGFuZCBp
bnRlcnJ1cHQgYXNzZW1ibHkgc3R1YnMKKiBzaGFyZWQgSVJRIGhhbmRsZXJzCgpTaWduZWQtb2Zm
LWJ5OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgotLS0KIHBsYXQva3ZtL01h
a2VmaWxlLnVrICAgICAgICAgICAgICAgICAgICAgICB8ICAgOSArLQogcGxhdC9rdm0vaW5jbHVk
ZS9rdm0teDg2L2NwdV94ODZfNjQuaCAgICAgIHwgIDQyIC0tLS0tLS0KIHBsYXQva3ZtL2luY2x1
ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMuaCB8ICA0MiAtLS0tLS0tCiBwbGF0L2t2bS9pbmNs
dWRlL2t2bS14ODYvdHJhcHMuaCAgICAgICAgICAgfCAgNDUgKysrKysrKwogcGxhdC9rdm0vaW5j
bHVkZS9rdm0vaW50Y3RybC5oICAgICAgICAgICAgIHwgIDM4ICsrKysrKwogcGxhdC9rdm0vaW5j
bHVkZS9rdm0vaXJxLmggICAgICAgICAgICAgICAgIHwgIDQ1ICsrKysrKysKIHBsYXQva3ZtL2ly
cS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA5NyArKysrKysrKysrKysrKysKIHBs
YXQva3ZtL3NodXRkb3duLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgOSArKwogcGxhdC9r
dm0veDg2L2NwdV92ZWN0b3JzX3g4Nl82NC5TICAgICAgICAgIHwgMTQyICsrKysrKysrKysrKysr
KysrKysrKysKIHBsYXQva3ZtL3g4Ni9jcHVfeDg2XzY0LmMgICAgICAgICAgICAgICAgICB8ICA3
MSAtLS0tLS0tLS0tLQogcGxhdC9rdm0veDg2L2VudHJ5NjQuUyAgICAgICAgICAgICAgICAgICAg
IHwgICAxICsKIHBsYXQva3ZtL3g4Ni9pbnRjdHJsLmMgICAgICAgICAgICAgICAgICAgICB8IDEx
MSArKysrKysrKysrKysrKysrKwogcGxhdC9rdm0veDg2L2xjcHUuYyAgICAgICAgICAgICAgICAg
ICAgICAgIHwgIDM3ICsrKysrKwogcGxhdC9rdm0veDg2L3NldHVwLmMgICAgICAgICAgICAgICAg
ICAgICAgIHwgICA2ICstCiBwbGF0L2t2bS94ODYvdHJhcHMuYyAgICAgICAgICAgICAgICAgICAg
ICAgfCAxODYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDE1IGZpbGVzIGNoYW5nZWQs
IDcyMiBpbnNlcnRpb25zKCspLCAxNTkgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQg
cGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L2NwdV94ODZfNjQuaAogZGVsZXRlIG1vZGUgMTAwNjQ0
IHBsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMuaAogY3JlYXRlIG1vZGUg
MTAwNjQ0IHBsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni90cmFwcy5oCiBjcmVhdGUgbW9kZSAxMDA2
NDQgcGxhdC9rdm0vaW5jbHVkZS9rdm0vaW50Y3RybC5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxh
dC9rdm0vaW5jbHVkZS9rdm0vaXJxLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2t2bS9pcnEu
YwogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL3g4Ni9jcHVfdmVjdG9yc194ODZfNjQuUwog
ZGVsZXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL3g4Ni9jcHVfeDg2XzY0LmMKIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBwbGF0L2t2bS94ODYvaW50Y3RybC5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9r
dm0veDg2L3RyYXBzLmMKCmRpZmYgLS1naXQgYS9wbGF0L2t2bS9NYWtlZmlsZS51ayBiL3BsYXQv
a3ZtL01ha2VmaWxlLnVrCmluZGV4IDgyM2U3ODUuLjQ2MjU4ZmYgMTAwNjQ0Ci0tLSBhL3BsYXQv
a3ZtL01ha2VmaWxlLnVrCisrKyBiL3BsYXQva3ZtL01ha2VmaWxlLnVrCkBAIC0xNiwxNyArMTYs
MjIgQEAgTElCS1ZNUExBVF9BU0lOQ0xVREVTLXkgICAgICAgICs9IC1JJChVS19QTEFUX0NPTU1P
Tl9CQVNFKS9pbmNsdWRlCiBMSUJLVk1QTEFUX0NJTkNMVURFUy15ICAgICAgICAgKz0gLUkkKExJ
QktWTVBMQVRfQkFTRSkvaW5jbHVkZQogTElCS1ZNUExBVF9DSU5DTFVERVMteSAgICAgICAgICs9
IC1JJChVS19QTEFUX0NPTU1PTl9CQVNFKS9pbmNsdWRlCiAKK0xJQktWTVBMQVRfU1JDUy0kKEFS
Q0hfWDg2XzY0KSArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL3g4Ni90cmFjZS5jfGNvbW1vbgor
TElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkv
eDg2L3RyYXBzLmN8Y29tbW9uCitMSUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChV
S19QTEFUX0NPTU1PTl9CQVNFKS94ODYvY3B1X25hdGl2ZS5jfGNvbW1vbgogaWZlcSAoJChIQVZF
X1NDSEVEKSx5KQogTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoVUtfUExBVF9D
T01NT05fQkFTRSkveDg2L3RocmVhZF9zdGFydC5TfGNvbW1vbgogTElCS1ZNUExBVF9TUkNTLSQo
QVJDSF9YODZfNjQpICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkvdGhyZWFkLmN8Y29tbW9uCiBM
SUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNFKS9z
d19jdHguY3xjb21tb24KIGVuZGlmCiBMSUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0g
JChMSUJLVk1QTEFUX0JBU0UpL3g4Ni9lbnRyeTY0LlMKLUxJQktWTVBMQVRfU1JDUy0kKEFSQ0hf
WDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2L2NwdV94ODZfNjQuYworTElCS1ZNUExB
VF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoTElCS1ZNUExBVF9CQVNFKS94ODYvdHJhcHMuYwor
TElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoTElCS1ZNUExBVF9CQVNFKS94ODYv
Y3B1X3ZlY3RvcnNfeDg2XzY0LlMKIExJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAk
KExJQktWTVBMQVRfQkFTRSkveDg2L3NldHVwLmMKIExJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2
XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2L2NvbnNvbGUuYwogTElCS1ZNUExBVF9TUkNT
LSQoQVJDSF9YODZfNjQpICs9ICQoTElCS1ZNUExBVF9CQVNFKS94ODYvbGNwdS5jCi1MSUJLVk1Q
TEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3g4Ni90aW1lLmMK
K0xJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2
L2ludGN0cmwuYwogTElCS1ZNUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCS1ZNUExB
VF9CQVNFKS9zaHV0ZG93bi5jCiBMSUJLVk1QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChM
SUJLVk1QTEFUX0JBU0UpL21lbW9yeS5jCitMSUJLVk1QTEFUX1NSQ1MteSAgICAgICAgICAgICAg
Kz0gJChMSUJLVk1QTEFUX0JBU0UpL2lycS5jCiBMSUJLVk1QTEFUX1NSQ1MteSAgICAgICAgICAg
ICAgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNFKS9sY3B1LmN8Y29tbW9uCmRpZmYgLS1naXQgYS9w
bGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NC5oIGIvcGxhdC9rdm0vaW5jbHVkZS9r
dm0teDg2L2NwdV94ODZfNjQuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDI3Yzcw
NS4uMDAwMDAwMAotLS0gYS9wbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NC5oCisr
KyAvZGV2L251bGwKQEAgLTEsNDIgKzAsMCBAQAotLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6
IElTQyAqLwotLyoKLSAqIEF1dGhvcnM6IE1hcnRpbiBMdWNpbmEKLSAqCi0gKiBDb3B5cmlnaHQg
KGMpIDIwMTYtMjAxNyBEb2NrZXIsIEluYy4KLSAqCi0gKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29w
eSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlCi0gKiBmb3IgYW55IHB1
cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQKLSAq
IHRoYXQgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3Rp
Y2UgYXBwZWFyCi0gKiBpbiBhbGwgY29waWVzLgotICoKLSAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9W
SURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwKLSAqIFdBUlJBTlRJRVMg
V0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQKLSAqIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUKLSAqIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElS
RUNULCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VW
RVIgUkVTVUxUSU5HIEZST00gTE9TUwotICogT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRI
RVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULAotICogTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JU
SU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOCi0gKiBDT05ORUNUSU9OIFdJVEggVEhF
IFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgotICovCi0jaW5jbHVkZSA8aW50
dHlwZXMuaD4KLQotLyogYWNjZXNzaW5nIGRldmljZXMgdmlhIHBvcnQgc3BhY2UgKi8KLXN0YXRp
YyBpbmxpbmUgdm9pZCBvdXRiKHVpbnQxNl90IHBvcnQsIHVpbnQ4X3QgdikKLXsKLQlfX2FzbV9f
IF9fdm9sYXRpbGVfXygib3V0YiAlMCwlMSIgOiA6ICJhIih2KSwgImROIihwb3J0KSk7Ci19Ci0K
LXN0YXRpYyBpbmxpbmUgdm9pZCBvdXR3KHVpbnQxNl90IHBvcnQsIHVpbnQxNl90IHYpCi17Ci0J
X19hc21fXyBfX3ZvbGF0aWxlX18oIm91dHcgJTAsJTEiIDogOiAiYSIodiksICJkTiIocG9ydCkp
OwotfQotc3RhdGljIGlubGluZSB1aW50OF90IGluYih1aW50MTZfdCBwb3J0KQotewotCXVpbnQ4
X3QgdjsKLQotCV9fYXNtX18gX192b2xhdGlsZV9fKCJpbmIgJTEsJTAiIDogIj1hIih2KSA6ICJk
TiIocG9ydCkpOwotCXJldHVybiB2OwotfQotCi12b2lkIGNwdV9oYWx0KHZvaWQpIF9fYXR0cmli
dXRlX18oKG5vcmV0dXJuKSk7Ci12b2lkIGNwdV9pbml0KHZvaWQpOwpkaWZmIC0tZ2l0IGEvcGxh
dC9rdm0vaW5jbHVkZS9rdm0teDg2L2NwdV94ODZfNjRfZGVmcy5oIGIvcGxhdC9rdm0vaW5jbHVk
ZS9rdm0teDg2L2NwdV94ODZfNjRfZGVmcy5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA5ODVmOGQzLi4wMDAwMDAwCi0tLSBhL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2
XzY0X2RlZnMuaAorKysgL2Rldi9udWxsCkBAIC0xLDQyICswLDAgQEAKLS8qIFNQRFgtTGljZW5z
ZS1JZGVudGlmaWVyOiBJU0MgKi8KLS8qCi0gKiBBdXRob3JzOiBNYXJ0aW4gTHVjaW5hCi0gKgot
ICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTcgRG9ja2VyLCBJbmMuCi0gKgotICogUGVybWlzc2lv
biB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kL29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZQot
ICogZm9yIGFueSBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQs
IHByb3ZpZGVkCi0gKiB0aGF0IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBl
cm1pc3Npb24gbm90aWNlIGFwcGVhcgotICogaW4gYWxsIGNvcGllcy4KLSAqCi0gKiBUSEUgU09G
VFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMCi0g
KiBXQVJSQU5USUVTIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJ
TVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwg
RElSRUNULCBJTkRJUkVDVCwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFN
QUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MKLSAqIE9GIFVTRSwgREFUQSBPUiBQ
Uk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwKLSAqIE5FR0xJR0VOQ0Ug
T1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTgotICogQ09OTkVD
VElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KLSAqLwot
Ci0jaW5jbHVkZSA8eDg2L2NwdV9kZWZzLmg+Ci0KLS8qCi0gKiBHRFQgbGF5b3V0Ci0gKgotICog
VGhpcyBzaG91bGQgYmUga2VwdCBjb25zaXN0ZW50IHdpdGggdGhlIGxheW91dCB1c2VkIGJ5IHRo
ZSB1a3ZtIHRhcmdldCAoYXMKLSAqIGRlZmluZWQgaW4gdWt2bS91a3ZtX2NwdV94ODZfNjQuaC4K
LSAqLwotI2RlZmluZSBHRFRfREVTQ19OVUxMICAgICAgICAgICAwCi0jZGVmaW5lIEdEVF9ERVND
X0NPREUgICAgICAgICAgIDEKLSNkZWZpbmUgR0RUX0RFU0NfQ09ERTMyICAgICAgICAgMiAvKiBV
c2VkIGJ5IGJvb3QuUyBvbiB2aXJ0aW8gdGFyZ2V0cyAqLwotI2RlZmluZSBHRFRfREVTQ19EQVRB
ICAgICAgICAgICAzCi0jZGVmaW5lIEdEVF9ERVNDX1RTU19MTyAgICAgICAgIDQKLSNkZWZpbmUg
R0RUX0RFU0NfVFNTX0hJICAgICAgICAgNQotI2RlZmluZSBHRFRfREVTQ19UU1MgICAgICAgICAg
ICBHRFRfREVTQ19UU1NfTE8KLQotI2RlZmluZSBHRFRfREVTQ19PRkZTRVQobikgICAgICAoKG4p
ICogMHg4KQotI2RlZmluZSBHRFRfTlVNX0VOVFJJRVMgICAgICAgICA2Ci0KLSNkZWZpbmUgR0RU
X0RFU0NfQ09ERV9WQUwgICAgICAgMHgwMGFmOTkwMDAwMDBmZmZmCi0jZGVmaW5lIEdEVF9ERVND
X0RBVEFfVkFMICAgICAgIDB4MDBjZjkzMDAwMDAwZmZmZgpkaWZmIC0tZ2l0IGEvcGxhdC9rdm0v
aW5jbHVkZS9rdm0teDg2L3RyYXBzLmggYi9wbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvdHJhcHMu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MjEwNjEzCi0tLSAvZGV2L251
bGwKKysrIGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L3RyYXBzLmgKQEAgLTAsMCArMSw0NSBA
QAorLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IElTQyAqLworLyoKKyAqIEF1dGhvcnM6IE1h
cnRpbiBMdWNpbmEKKyAqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAxNyBEb2NrZXIsIEluYy4K
KyAqCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0
ZSB0aGlzIHNvZnR3YXJlCisgKiBmb3IgYW55IHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBp
cyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQKKyAqIHRoYXQgdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyCisgKiBpbiBhbGwgY29waWVz
LgorICoKKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9S
IERJU0NMQUlNUyBBTEwKKyAqIFdBUlJBTlRJRVMgV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FS
RSBJTkNMVURJTkcgQUxMIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIEFVVEhPUiBCRSBMSUFCTEUg
Rk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUgorICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUworICog
T0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNU
LAorICogTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9G
IE9SIElOCisgKiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElT
IFNPRlRXQVJFLgorICovCisKKyNpbmNsdWRlIDx4ODYvdHJhcHMuaD4KKworLyoKKyAqIEdEVCBs
YXlvdXQKKyAqCisgKiBUaGlzIHNob3VsZCBiZSBrZXB0IGNvbnNpc3RlbnQgd2l0aCB0aGUgbGF5
b3V0IHVzZWQgYnkgdGhlIHVrdm0gdGFyZ2V0IChhcworICogZGVmaW5lZCBpbiB1a3ZtL3Vrdm1f
Y3B1X3g4Nl82NC5oLgorICovCisjZGVmaW5lIEdEVF9ERVNDX05VTEwgICAgICAgICAgIDAKKyNk
ZWZpbmUgR0RUX0RFU0NfQ09ERSAgICAgICAgICAgMQorI2RlZmluZSBHRFRfREVTQ19DT0RFMzIg
ICAgICAgICAyIC8qIFVzZWQgYnkgYm9vdC5TIG9uIHZpcnRpbyB0YXJnZXRzICovCisjZGVmaW5l
IEdEVF9ERVNDX0RBVEEgICAgICAgICAgIDMKKyNkZWZpbmUgR0RUX0RFU0NfVFNTX0xPICAgICAg
ICAgNAorI2RlZmluZSBHRFRfREVTQ19UU1NfSEkgICAgICAgICA1CisjZGVmaW5lIEdEVF9ERVND
X1RTUyAgICAgICAgICAgIEdEVF9ERVNDX1RTU19MTworCisjZGVmaW5lIEdEVF9ERVNDX09GRlNF
VChuKSAgICAgICgobikgKiAweDgpCisjZGVmaW5lIEdEVF9OVU1fRU5UUklFUyAgICAgICAgIDYK
KworI2RlZmluZSBHRFRfREVTQ19DT0RFX1ZBTCAgICAgICAweDAwYWY5OTAwMDAwMGZmZmYKKyNk
ZWZpbmUgR0RUX0RFU0NfREFUQV9WQUwgICAgICAgMHgwMGNmOTMwMDAwMDBmZmZmCisKKworI2Rl
ZmluZSBJRFRfTlVNX0VOVFJJRVMgICAgICAgICA0OApkaWZmIC0tZ2l0IGEvcGxhdC9rdm0vaW5j
bHVkZS9rdm0vaW50Y3RybC5oIGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0vaW50Y3RybC5oCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2Y2UzMDcKLS0tIC9kZXYvbnVsbAorKysg
Yi9wbGF0L2t2bS9pbmNsdWRlL2t2bS9pbnRjdHJsLmgKQEAgLTAsMCArMSwzOCBAQAorLyogU1BE
WC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLworLyoKKyAqIEF1dGhvcnM6IENv
c3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+CisgKgorICogQ29weXJpZ2h0IChjKSAy
MDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQg
aG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogICAgdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCisgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqCisgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJ
TiBBTlkgV0FZLgorICovCisKK3ZvaWQgaW50Y3RybF9pbml0KHZvaWQpOwordm9pZCBpbnRjdHJs
X2NsZWFyX2lycSh1bnNpZ25lZCBpbnQgaXJxKTsKK3ZvaWQgaW50Y3RybF9tYXNrX2lycSh1bnNp
Z25lZCBpbnQgaXJxKTsKK3ZvaWQgaW50Y3RybF9hY2tfaXJxKHVuc2lnbmVkIGludCBpcnEpOwpk
aWZmIC0tZ2l0IGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0vaXJxLmggYi9wbGF0L2t2bS9pbmNsdWRl
L2t2bS9pcnEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MDZhY2YyCi0t
LSAvZGV2L251bGwKKysrIGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0vaXJxLmgKQEAgLTAsMCArMSw0
NSBAQAorLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLworLyoKKyAq
IEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+CisgKgorICogQ29w
eXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRo
ZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiAgICBjb250cmlidXRv
cnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bQorICogICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
KyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCisgKiBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
CisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgor
ICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqCisgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBP
UiBNT0RJRklFRCBJTiBBTlkgV0FZLgorICovCisKKyNpZm5kZWYgX19LVk1fSVJRX0hfCisjZGVm
aW5lIF9fS1ZNX0lSUV9IXworCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisKK3R5cGVkZWYgaW50
ICgqaXJxX2hhbmRsZXJfZnVuY190KSh2b2lkICopOworCit2b2lkIGlycV9yZWdpc3Rlcih1bnNp
Z25lZCBsb25nIGlycSwgaXJxX2hhbmRsZXJfZnVuY190IGZ1bmMsIHZvaWQgKmFyZyk7Cit2b2lk
IGlycV9oYW5kbGUodW5zaWduZWQgbG9uZyBpcnEpOworCisjZW5kaWYgLyogX19LVk1fSVJRX0hf
ICovCmRpZmYgLS1naXQgYS9wbGF0L2t2bS9pcnEuYyBiL3BsYXQva3ZtL2lycS5jCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU1ZjhlNjcKLS0tIC9kZXYvbnVsbAorKysgYi9w
bGF0L2t2bS9pcnEuYwpAQCAtMCwwICsxLDk3IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmll
cjogSVNDICovCisvKgorICogQXV0aG9yczogRGFuIFdpbGxpYW1zCisgKiAgICAgICAgICBNYXJ0
aW4gTHVjaW5hCisgKiAgICAgICAgICBSaWNhcmRvIEtvbGxlcgorICogICAgICAgICAgQ29zdGlu
IEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KKyAqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTUt
MjAxNyBJQk0KKyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tlciwgSW5jLgorICogQ29w
eXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbgorICoKKyAq
IFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMg
c29mdHdhcmUKKyAqIGZvciBhbnkgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVi
eSBncmFudGVkLCBwcm92aWRlZAorICogdGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBh
bmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIKKyAqIGluIGFsbCBjb3BpZXMuCisgKgor
ICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xB
SU1TIEFMTAorICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xV
RElORyBBTEwgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5Z
IFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
T1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCisgKiBPRiBVU0Us
IERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCisgKiBO
RUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4K
KyAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdB
UkUuCisgKi8KKy8qIFRha2VuIGZyb20gc29sbzUgaW50ci5jICovCisKKyNpbmNsdWRlIDxzdGRs
aWIuaD4KKyNpbmNsdWRlIDx1ay9hbGxvYy5oPgorI2luY2x1ZGUgPHVrL2xpc3QuaD4KKyNpbmNs
dWRlIDx1ay9wbGF0L2xjcHUuaD4KKyNpbmNsdWRlIDx4ODYvY3B1Lmg+CisjaW5jbHVkZSA8a3Zt
L2lycS5oPgorI2luY2x1ZGUgPGt2bS9pbnRjdHJsLmg+CisjaW5jbHVkZSA8dWsvYXNzZXJ0Lmg+
CisKKworc3RhdGljIHN0cnVjdCB1a19hbGxvYyAqYWxsb2NhdG9yOworCitzdHJ1Y3QgaXJxX2hh
bmRsZXIgeworCWlycV9oYW5kbGVyX2Z1bmNfdCBmdW5jOworCXZvaWQgKmFyZzsKKworCVVLX1NM
SVNUX0VOVFJZKHN0cnVjdCBpcnFfaGFuZGxlcikgZW50cmllczsKK307CisKK1VLX1NMSVNUX0hF
QUQoaXJxX2hhbmRsZXJfaGVhZCwgc3RydWN0IGlycV9oYW5kbGVyKTsKK3N0YXRpYyBzdHJ1Y3Qg
aXJxX2hhbmRsZXJfaGVhZCBpcnFfaGFuZGxlcnNbMTZdOworCit2b2lkIGlycV9yZWdpc3Rlcih1
bnNpZ25lZCBsb25nIGlycSwgaXJxX2hhbmRsZXJfZnVuY190IGZ1bmMsIHZvaWQgKmFyZykKK3sK
KwlzdHJ1Y3QgaXJxX2hhbmRsZXIgKmg7CisJdW5zaWduZWQgbG9uZyBmbGFnczsKKworCVVLX0FT
U0VSVChpcnEgPCAxNik7CisJVUtfQVNTRVJUKGFsbG9jYXRvciAhPSBOVUxMKTsKKworCWggPSB1
a19tYWxsb2MoYWxsb2NhdG9yLCBzaXplb2Yoc3RydWN0IGlycV9oYW5kbGVyKSk7CisJVUtfQVNT
RVJUKGggIT0gTlVMTCk7CisKKwloLT5mdW5jID0gZnVuYzsKKwloLT5hcmcgPSBhcmc7CisKKwlm
bGFncyA9IHVrcGxhdF9sY3B1X3NhdmVfaXJxZigpOworCVVLX1NMSVNUX0lOU0VSVF9IRUFEKCZp
cnFfaGFuZGxlcnNbaXJxXSwgaCwgZW50cmllcyk7CisJdWtwbGF0X2xjcHVfcmVzdG9yZV9pcnFm
KGZsYWdzKTsKKworCWludGN0cmxfY2xlYXJfaXJxKGlycSk7Cit9CisKK3ZvaWQgaXJxX2hhbmRs
ZSh1bnNpZ25lZCBsb25nIGlycSkKK3sKKwlzdHJ1Y3QgaXJxX2hhbmRsZXIgKmg7CisJaW50IGhh
bmRsZWQgPSAwOworCisJVUtfU0xJU1RfRk9SRUFDSChoLCAmaXJxX2hhbmRsZXJzW2lycV0sIGVu
dHJpZXMpIHsKKwkJaWYgKGgtPmZ1bmMoaC0+YXJnKSA9PSAxKSB7CisJCQloYW5kbGVkID0gMTsK
KwkJCWJyZWFrOworCQl9CisJfQorCisJaWYgKCFoYW5kbGVkKQorCQlVS19DUkFTSCgiVW5oYW5k
bGVkIGlycT0lbHVcbiIsIGlycSk7CisJZWxzZQorCQkvKiBPbmx5IEFDSyB0aGUgSVJRIGlmIGhh
bmRsZWQ7IHdlIG9ubHkgbmVlZCB0byBrbm93CisJCSAqIGFib3V0IGFuIHVuaGFuZGxlZCBJUlEg
dGhlIGZpcnN0IHRpbWUgcm91bmQuCisJCSAqLworCQlpbnRjdHJsX2Fja19pcnEoaXJxKTsKK30K
KworaW50IHVrcGxhdF9pcnFfaW5pdChzdHJ1Y3QgdWtfYWxsb2MgKmEpCit7CisJVUtfQVNTRVJU
KGFsbG9jYXRvciA9PSBOVUxMKTsKKwlhbGxvY2F0b3IgPSBhOworCXJldHVybiAwOworfQpkaWZm
IC0tZ2l0IGEvcGxhdC9rdm0vc2h1dGRvd24uYyBiL3BsYXQva3ZtL3NodXRkb3duLmMKaW5kZXgg
NjczZDA2NS4uYTUxM2RmOSAxMDA2NDQKLS0tIGEvcGxhdC9rdm0vc2h1dGRvd24uYworKysgYi9w
bGF0L2t2bS9zaHV0ZG93bi5jCkBAIC0yNiw2ICsyNiw4IEBACiAjaW5jbHVkZSA8dWsvcHJpbnQu
aD4KICNpbmNsdWRlIDx1ay9wbGF0L2Jvb3RzdHJhcC5oPgogCitzdGF0aWMgdm9pZCBjcHVfaGFs
dCh2b2lkKSBfX25vcmV0dXJuOworCiAvKiBUT0RPOiBpbXBsZW1lbnQgQ1BVIHJlc2V0ICovCiB2
b2lkIHVrcGxhdF90ZXJtaW5hdGUoZW51bSB1a3BsYXRfZ3N0YXRlIHJlcXVlc3QgX191bnVzZWQp
CiB7CkBAIC00NSw2ICs0NywxMyBAQCB2b2lkIHVrcGxhdF90ZXJtaW5hdGUoZW51bSB1a3BsYXRf
Z3N0YXRlIHJlcXVlc3QgX191bnVzZWQpCiAJY3B1X2hhbHQoKTsKIH0KIAorc3RhdGljIHZvaWQg
Y3B1X2hhbHQodm9pZCkKK3sKKwlfX2FzbV9fIF9fdm9sYXRpbGVfXygiY2xpOyBobHQiKTsKKwlm
b3IgKDs7KQorCQk7Cit9CisKIGludCB1a3BsYXRfc3VzcGVuZCh2b2lkKQogewogCXJldHVybiAt
RUJVU1k7CmRpZmYgLS1naXQgYS9wbGF0L2t2bS94ODYvY3B1X3ZlY3RvcnNfeDg2XzY0LlMgYi9w
bGF0L2t2bS94ODYvY3B1X3ZlY3RvcnNfeDg2XzY0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uYzMwZjJlZQotLS0gL2Rldi9udWxsCisrKyBiL3BsYXQva3ZtL3g4Ni9jcHVf
dmVjdG9yc194ODZfNjQuUwpAQCAtMCwwICsxLDE0MiBAQAorLyogU1BEWC1MaWNlbnNlLUlkZW50
aWZpZXI6IElTQyAqLworLyoKKyAqIEF1dGhvcnM6IERhbiBXaWxsaWFtcworICogICAgICAgICAg
TWFydGluIEx1Y2luYQorICogICAgICAgICAgQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1
Yi5ybz4KKyAqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNyBJQk0KKyAqIENvcHlyaWdodCAo
YykgMjAxNi0yMDE3IERvY2tlciwgSW5jLgorICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVy
b3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbgorICoKKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5
LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUKKyAqIGZvciBhbnkgcHVy
cG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZAorICog
dGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGlj
ZSBhcHBlYXIKKyAqIGluIGFsbCBjb3BpZXMuCisgKgorICogVEhFIFNPRlRXQVJFIElTIFBST1ZJ
REVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAorICogV0FSUkFOVElFUyBX
SVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAorICogV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRQorICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJF
Q1QsIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZF
UiBSRVNVTFRJTkcgRlJPTSBMT1NTCisgKiBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhF
UiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCisgKiBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJ
T1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4KKyAqIENPTk5FQ1RJT04gV0lUSCBUSEUg
VVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCisgKi8KKy8qIFRha2VuIGZyb20g
c29sbzUgKi8KKworI2luY2x1ZGUgPHg4Ni90cmFwcy5oPgorI2luY2x1ZGUgPHg4Ni9yZWdzLmg+
CisKKyNkZWZpbmUgRU5UUlkoWCkgICAgIC5nbG9iYWwgWCA7IC50eXBlIFgsIEBmdW5jdGlvbiA7
IFg6CisKKy5tYWNybyBQVVNIX0NBTExFUl9TQVZFCisJcHVzaHEgJXJkaQorCXB1c2hxICVyc2kK
KwlwdXNocSAlcmR4CisJcHVzaHEgJXJjeAorCXB1c2hxICVyYXgKKwlwdXNocSAlcjgKKwlwdXNo
cSAlcjkKKwlwdXNocSAlcjEwCisJcHVzaHEgJXIxMQorCXB1c2hxICVyYngKKwlwdXNocSAlcmJw
CisJcHVzaHEgJXIxMgorCXB1c2hxICVyMTMKKwlwdXNocSAlcjE0CisJcHVzaHEgJXIxNQorLmVu
ZG0KKworLm1hY3JvIFBPUF9DQUxMRVJfU0FWRQorCXBvcHEgJXIxNQorCXBvcHEgJXIxNAorCXBv
cHEgJXIxMworCXBvcHEgJXIxMgorCXBvcHEgJXJicAorCXBvcHEgJXJieAorCXBvcHEgJXIxMQor
CXBvcHEgJXIxMAorCXBvcHEgJXI5CisJcG9wcSAlcjgKKwlwb3BxICVyYXgKKwlwb3BxICVyY3gK
Kwlwb3BxICVyZHgKKwlwb3BxICVyc2kKKwlwb3BxICVyZGkKKy5lbmRtCisKKy5tYWNybyBUUkFQ
X0VOVFJZIHRyYXBuYW1lLCBoYXNfZWMKK0VOVFJZKEFTTV9UUkFQX1NZTShcdHJhcG5hbWUpKQor
CWNsZAorCisuaWYgIVxoYXNfZWMKKwlwdXNocSAkMCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBubyBlcnJvciBjb2RlLCBwYXNzIDAgKi8KKy5lbmRpZgorCVBVU0hfQ0FMTEVSX1NBVkUK
KwlzdWJxICRSRUdTX1BBRF9TSVpFLCAlcnNwICAgICAgICAgICAvKiB3ZSBoYXZlIHNvbWUgcGFk
ZGluZyAqLworCisJbW92cSAlcnNwLCAlcmRpCisJbW92cSBPRkZTRVRPRl9SRUdTX09SSUdfUkFY
KCVyc3ApLCAlcnNpCisJY2FsbCBkb19cdHJhcG5hbWUKKworCWFkZHEgJFJFR1NfUEFEX1NJWkUs
ICVyc3AgICAgICAgICAgIC8qIHdlIGhhdmUgc29tZSBwYWRkaW5nICovCisJUE9QX0NBTExFUl9T
QVZFCisJYWRkcSAkOCwgJXJzcCAgICAgICAgICAgICAgICAgICAgICAgLyogZGlzY2FyZCBlcnJv
ciBjb2RlICovCisKKwlpcmV0cQorLmVuZG0KKworLm1hY3JvIElSUV9FTlRSWSBpcnFubworRU5U
UlkoY3B1X2lycV9caXJxbm8pCisJY2xkCisKKwlwdXNocSAkMCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBubyBlcnJvciBjb2RlICovCisJUFVTSF9DQUxMRVJfU0FWRQorCXN1YnEgJFJF
R1NfUEFEX1NJWkUsICVyc3AgICAgICAgICAgIC8qIHdlIGhhdmUgc29tZSBwYWRkaW5nICovCisK
Kwltb3ZxICRcaXJxbm8sICVyZGkKKwljYWxsIGlycV9oYW5kbGUKKworCWFkZHEgJFJFR1NfUEFE
X1NJWkUsICVyc3AgICAgICAgICAgIC8qIHdlIGhhdmUgc29tZSBwYWRkaW5nICovCisJUE9QX0NB
TExFUl9TQVZFCisJYWRkcSAkOCwgJXJzcAorCisJaXJldHEKKy5lbmRtCisKK1RSQVBfRU5UUlkg
ZGl2aWRlX2Vycm9yLCAgICAgMAorVFJBUF9FTlRSWSBkZWJ1ZywgICAgICAgICAgICAwCitUUkFQ
X0VOVFJZIG5taSwgICAgICAgICAgICAgIDAKK1RSQVBfRU5UUlkgaW50MywgICAgICAgICAgICAg
MAorVFJBUF9FTlRSWSBvdmVyZmxvdywgICAgICAgICAwCitUUkFQX0VOVFJZIGJvdW5kcywgICAg
ICAgICAgIDAKK1RSQVBfRU5UUlkgaW52YWxpZF9vcCwgICAgICAgMAorVFJBUF9FTlRSWSBub19k
ZXZpY2UsICAgICAgICAwCitUUkFQX0VOVFJZIGRvdWJsZV9mYXVsdCwgICAgIDEKK1RSQVBfRU5U
UlkgaW52YWxpZF90c3MsICAgICAgMQorVFJBUF9FTlRSWSBub19zZWdtZW50LCAgICAgICAxCitU
UkFQX0VOVFJZIHN0YWNrX2Vycm9yLCAgICAgIDEKK1RSQVBfRU5UUlkgZ3BfZmF1bHQsICAgICAg
ICAgMQorVFJBUF9FTlRSWSBwYWdlX2ZhdWx0LCAgICAgICAxCitUUkFQX0VOVFJZIGNvcHJvY19l
cnJvciwgICAgIDAKK1RSQVBfRU5UUlkgYWxpZ25tZW50X2NoZWNrLCAgMQorVFJBUF9FTlRSWSBt
YWNoaW5lX2NoZWNrLCAgICAwCitUUkFQX0VOVFJZIHNpbWRfZXJyb3IsICAgICAgIDAKK1RSQVBf
RU5UUlkgdmlydF9lcnJvciwgICAgICAgMAorCitJUlFfRU5UUlkgMAorSVJRX0VOVFJZIDEKK0lS
UV9FTlRSWSAyCitJUlFfRU5UUlkgMworSVJRX0VOVFJZIDQKK0lSUV9FTlRSWSA1CitJUlFfRU5U
UlkgNgorSVJRX0VOVFJZIDcKK0lSUV9FTlRSWSA4CitJUlFfRU5UUlkgOQorSVJRX0VOVFJZIDEw
CitJUlFfRU5UUlkgMTEKK0lSUV9FTlRSWSAxMgorSVJRX0VOVFJZIDEzCitJUlFfRU5UUlkgMTQK
K0lSUV9FTlRSWSAxNQpkaWZmIC0tZ2l0IGEvcGxhdC9rdm0veDg2L2NwdV94ODZfNjQuYyBiL3Bs
YXQva3ZtL3g4Ni9jcHVfeDg2XzY0LmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJm
OThiOTUuLjAwMDAwMDAKLS0tIGEvcGxhdC9rdm0veDg2L2NwdV94ODZfNjQuYworKysgL2Rldi9u
dWxsCkBAIC0xLDcxICswLDAgQEAKLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8K
LS8qCi0gKiBBdXRob3JzOiBEYW4gV2lsbGlhbXMKLSAqICAgICAgICAgIE1hcnRpbiBMdWNpbmEK
LSAqICAgICAgICAgIEZlbGlwZSBIdWljaSA8ZmVsaXBlLmh1aWNpQG5lY2xhYi5ldT4KLSAqICAg
ICAgICAgIEZsb3JpYW4gU2NobWlkdCA8Zmxvcmlhbi5zY2htaWR0QG5lY2xhYi5ldT4KLSAqCi0g
KiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNyBJQk0KLSAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3
IERvY2tlciwgSW5jLgotICogQ29weXJpZ2h0IChjKSAyMDE3IE5FQyBFdXJvcGUgTHRkLiwgTkVD
IENvcnBvcmF0aW9uCi0gKgotICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5k
L29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZQotICogZm9yIGFueSBwdXJwb3NlIHdpdGggb3Ig
d2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCi0gKiB0aGF0IHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhcgotICog
aW4gYWxsIGNvcGllcy4KLSAqCi0gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBB
TkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMCi0gKiBXQVJSQU5USUVTIFdJVEggUkVHQVJEIFRP
IFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBBVVRI
T1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IKLSAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBG
Uk9NIExPU1MKLSAqIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElP
TiBPRiBDT05UUkFDVCwKLSAqIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBB
UklTSU5HIE9VVCBPRiBPUiBJTgotICogQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9S
TUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KLSAqLwotCi0jaW5jbHVkZSA8c3RyaW5nLmg+Ci0jaW5j
bHVkZSA8eDg2L2Rlc2MuaD4KLSNpbmNsdWRlIDxrdm0vc2V0dXAuaD4KLSNpbmNsdWRlIDxrdm0t
eDg2L2NwdV94ODZfNjRfZGVmcy5oPgotI2luY2x1ZGUgPGt2bS14ODYvY3B1X3g4Nl82NC5oPgot
Ci1zdGF0aWMgc3RydWN0IHNlZ19kZXNjMzIgY3B1X2dkdDY0W0dEVF9OVU1fRU5UUklFU10gQUxJ
R05fNjRfQklUOwotCi0vKgotICogVGhlIG1vbml0b3IgKHVrdm0pIG9yIGJvb3Rsb2FkZXIgKyBi
b290c3RyYXAgKHZpcnRpbykgc3RhcnRzIHVzIHVwIHdpdGggYQotICogYm9vdHN0cmFwIEdEVCB3
aGljaCBpcyAiaW52aXNpYmxlIiB0byB0aGUgZ3Vlc3QsIGluaXQgYW5kIHN3aXRjaCB0byBvdXIg
b3duCi0gKiBHRFQuCi0gKgotICogVGhpcyBpcyBkb25lIHByaW1hcmlseSBzaW5jZSB3ZSBuZWVk
IHRvIGRvIExUUiBsYXRlciBpbiBhIHByZWRpY3RhYmxlCi0gKiBmYXNoaW9uLgotICovCi1zdGF0
aWMgdm9pZCBnZHRfaW5pdCh2b2lkKQotewotCXZvbGF0aWxlIHN0cnVjdCBkZXNjX3RhYmxlX3B0
cjY0IGdkdHB0cjsKLQotCW1lbXNldChjcHVfZ2R0NjQsIDAsIHNpemVvZihjcHVfZ2R0NjQpKTsK
LQljcHVfZ2R0NjRbR0RUX0RFU0NfQ09ERV0ucmF3ID0gR0RUX0RFU0NfQ09ERV9WQUw7Ci0JY3B1
X2dkdDY0W0dEVF9ERVNDX0RBVEFdLnJhdyA9IEdEVF9ERVNDX0RBVEFfVkFMOwotCi0JZ2R0cHRy
LmxpbWl0ID0gc2l6ZW9mKGNwdV9nZHQ2NCkgLSAxOwotCWdkdHB0ci5iYXNlID0gKF9fdTY0KSAm
Y3B1X2dkdDY0OwotCV9fYXNtX18gX192b2xhdGlsZV9fKCJsZ2R0ICglMCkiIDo6InIiKCZnZHRw
dHIpKTsKLQkvKgotCSAqIFRPRE86IFRlY2huaWNhbGx5IHdlIHNob3VsZCByZWxvYWQgYWxsIHNl
Z21lbnQgcmVnaXN0ZXJzIGhlcmUsIGluCi0JICogcHJhY3RpY2UgdGhpcyBkb2Vzbid0IG1hdHRl
ciBzaW5jZSB0aGUgYm9vdHN0cmFwIEdEVCBtYXRjaGVzIG91cnMsCi0JICogZm9yIG5vdy4KLQkg
Ki8KLX0KLQotdm9pZCBjcHVfaW5pdCh2b2lkKQotewotCWdkdF9pbml0KCk7Ci19Ci0KLXZvaWQg
Y3B1X2hhbHQodm9pZCkKLXsKLQlfX2FzbV9fIF9fdm9sYXRpbGVfXygiY2xpOyBobHQiKTsKLQlm
b3IgKDs7KQotCQk7Ci19CmRpZmYgLS1naXQgYS9wbGF0L2t2bS94ODYvZW50cnk2NC5TIGIvcGxh
dC9rdm0veDg2L2VudHJ5NjQuUwppbmRleCA2NTcwYzQ3Li5mMDM0OTA4IDEwMDY0NAotLS0gYS9w
bGF0L2t2bS94ODYvZW50cnk2NC5TCisrKyBiL3BsYXQva3ZtL3g4Ni9lbnRyeTY0LlMKQEAgLTI4
LDYgKzI4LDcgQEAKICAqLwogCiAjaW5jbHVkZSA8eDg2L2NwdV9kZWZzLmg+CisjaW5jbHVkZSA8
a3ZtLXg4Ni90cmFwcy5oPgogI2luY2x1ZGUgPGt2bS14ODYvbXVsdGlib290X2RlZnMuaD4KIAog
I2RlZmluZSBFTlRSWSh4KSAudGV4dDsgLmdsb2JsIHg7IC50eXBlIHgsJWZ1bmN0aW9uOyB4Ogpk
aWZmIC0tZ2l0IGEvcGxhdC9rdm0veDg2L2ludGN0cmwuYyBiL3BsYXQva3ZtL3g4Ni9pbnRjdHJs
LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGM0MDU1NQotLS0gL2Rldi9u
dWxsCisrKyBiL3BsYXQva3ZtL3g4Ni9pbnRjdHJsLmMKQEAgLTAsMCArMSwxMTEgQEAKKy8qIFNQ
RFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8KKy8qCisgKiBBdXRob3JzOiBEYW4gV2lsbGlh
bXMKKyAqICAgICAgICAgIE1hcnRpbiBMdWNpbmEKKyAqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTUt
MjAxNyBJQk0KKyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tlciwgSW5jLgorICoKKyAq
IFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMg
c29mdHdhcmUKKyAqIGZvciBhbnkgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVi
eSBncmFudGVkLCBwcm92aWRlZAorICogdGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBh
bmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIKKyAqIGluIGFsbCBjb3BpZXMuCisgKgor
ICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xB
SU1TIEFMTAorICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xV
RElORyBBTEwgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5Z
IFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
T1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCisgKiBPRiBVU0Us
IERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCisgKiBO
RUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4K
KyAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdB
UkUuCisgKi8KKy8qIFRha2VuIGZyb20gc29sbzUgcGxhdGZvcm1faW50ci5jICovCisKKyNpbmNs
dWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDx4ODYvY3B1Lmg+CisjaW5jbHVkZSA8a3ZtL2ludGN0
cmwuaD4KKworI2RlZmluZSBQSUMxICAgICAgICAgICAgIDB4MjAgICAgLyogSU8gYmFzZSBhZGRy
ZXNzIGZvciBtYXN0ZXIgUElDICovCisjZGVmaW5lIFBJQzIgICAgICAgICAgICAgMHhBMCAgICAv
KiBJTyBiYXNlIGFkZHJlc3MgZm9yIHNsYXZlIFBJQyAqLworI2RlZmluZSBQSUMxX0NPTU1BTkQg
ICAgIFBJQzEKKyNkZWZpbmUgUElDMV9EQVRBICAgICAgICAoUElDMSArIDEpCisjZGVmaW5lIFBJ
QzJfQ09NTUFORCAgICAgUElDMgorI2RlZmluZSBQSUMyX0RBVEEgICAgICAgIChQSUMyICsgMSkK
KyNkZWZpbmUgSVJRX09OX01BU1RFUihuKSAoKG4pIDwgOCkKKyNkZWZpbmUgSVJRX1BPUlQobikg
ICAgICAoSVJRX09OX01BU1RFUihuKSA/IFBJQzFfREFUQSA6IFBJQzJfREFUQSkKKyNkZWZpbmUg
SVJRX09GRlNFVChuKSAgICAoSVJRX09OX01BU1RFUihuKSA/IChuKSA6ICgobikgLSA4KSkKKwor
I2RlZmluZSBQSUNfRU9JICAgICAgICAgIDB4MjAgLyogRW5kLW9mLWludGVycnVwdCBjb21tYW5k
IGNvZGUgKi8KKyNkZWZpbmUgSUNXMV9JQ1c0ICAgICAgICAweDAxIC8qIElDVzQgKG5vdCkgbmVl
ZGVkICovCisjZGVmaW5lIElDVzFfU0lOR0xFICAgICAgMHgwMiAvKiBTaW5nbGUgKGNhc2NhZGUp
IG1vZGUgKi8KKyNkZWZpbmUgSUNXMV9JTlRFUlZBTCAgICAweDA0IC8qIENhbGwgYWRkcmVzcyBp
bnRlcnZhbCA0ICg4KSAqLworI2RlZmluZSBJQ1cxX0xFVkVMICAgICAgIDB4MDggLyogTGV2ZWwg
dHJpZ2dlcmVkIChlZGdlKSBtb2RlICovCisjZGVmaW5lIElDVzFfSU5JVCAgICAgICAgMHgxMCAv
KiBJbml0aWFsaXphdGlvbiAtIHJlcXVpcmVkISAqLworI2RlZmluZSBJQ1c0XzgwODYgICAgICAg
IDB4MDEgLyogODA4Ni84OCAoTUNTLTgwLzg1KSBtb2RlICovCisjZGVmaW5lIElDVzRfQVVUTyAg
ICAgICAgMHgwMiAvKiBBdXRvIChub3JtYWwpIEVPSSAqLworI2RlZmluZSBJQ1c0X0JVRl9TTEFW
RSAgIDB4MDggLyogQnVmZmVyZWQgbW9kZS9zbGF2ZSAqLworI2RlZmluZSBJQ1c0X0JVRl9NQVNU
RVIgIDB4MEMgLyogQnVmZmVyZWQgbW9kZS9tYXN0ZXIgKi8KKyNkZWZpbmUgSUNXNF9TRk4gICAg
ICAgICAweDEwIC8qIFNwZWNpYWwgZnVsbHkgbmVzdGVkIChub3QpICovCisKKy8qCisgKiBhcmd1
bWVudHM6CisgKiBvZmZzZXQxIC0gdmVjdG9yIG9mZnNldCBmb3IgbWFzdGVyIFBJQyB2ZWN0b3Jz
IG9uIHRoZSBtYXN0ZXIgYmVjb21lCisgKiAgICAgICAgICAgb2Zmc2V0MS4ub2Zmc2V0MSs3Cisg
KiBvZmZzZXQyIC0gc2FtZSBmb3Igc2xhdmUgUElDOiBvZmZzZXQyLi5vZmZzZXQyKzcKKyAqLwor
c3RhdGljIHZvaWQgUElDX3JlbWFwKGludCBvZmZzZXQxLCBpbnQgb2Zmc2V0MikKK3sKKwl1bnNp
Z25lZCBjaGFyIGExLCBhMjsKKworCS8qIHNhdmUgbWFza3MgKi8KKwlhMSA9IGluYihQSUMxX0RB
VEEpOworCWEyID0gaW5iKFBJQzJfREFUQSk7CisKKwkvKiBzdGFydCBpbml0IHNlcSAoY2FzY2Fk
ZSkgKi8KKwlvdXRiKFBJQzFfQ09NTUFORCwgSUNXMV9JTklUICsgSUNXMV9JQ1c0KTsKKwlvdXRi
KFBJQzJfQ09NTUFORCwgSUNXMV9JTklUICsgSUNXMV9JQ1c0KTsKKwkvKiBJQ1cyOiBNYXN0ZXIg
UElDIHZlY3RvciBvZmYgKi8KKwlvdXRiKFBJQzFfREFUQSwgb2Zmc2V0MSk7CisJLyogSUNXMjog
U2xhdmUgUElDIHZlY3RvciBvZmYgKi8KKwlvdXRiKFBJQzJfREFUQSwgb2Zmc2V0Mik7CisJLyog
SUNXMzogdGVsbCBNYXN0ZXIgUElDIHRoZXJlIGlzIGEgc2xhdmUgUElDIGF0IElSUTIgKDAwMDAg
MDEwMCkgKi8KKwlvdXRiKFBJQzFfREFUQSwgNCk7CisJLyogSUNXMzogdGVsbCBTbGF2ZSBQSUMg
aXRzIGNhc2NhZGUgaWRlbnRpdHkgKDAwMDAgMDAxMCkgKi8KKwlvdXRiKFBJQzJfREFUQSwgMik7
CisKKwlvdXRiKFBJQzFfREFUQSwgSUNXNF84MDg2KTsKKwlvdXRiKFBJQzJfREFUQSwgSUNXNF84
MDg2KTsKKworCW91dGIoUElDMV9EQVRBLCBhMSk7IC8qIHJlc3RvcmUgc2F2ZWQgbWFza3MuICov
CisJb3V0YihQSUMyX0RBVEEsIGEyKTsKK30KKwordm9pZCBpbnRjdHJsX2luaXQodm9pZCkKK3sK
KwlQSUNfcmVtYXAoMzIsIDQwKTsKK30KKwordm9pZCBpbnRjdHJsX2Fja19pcnEodW5zaWduZWQg
aW50IGlycSkKK3sKKwlpZiAoIUlSUV9PTl9NQVNURVIoaXJxKSkKKwkJb3V0YihQSUMyX0NPTU1B
TkQsIFBJQ19FT0kpOworCisJb3V0YihQSUMxX0NPTU1BTkQsIFBJQ19FT0kpOworfQorCit2b2lk
IGludGN0cmxfbWFza19pcnEodW5zaWduZWQgaW50IGlycSkKK3sKKwlfX3UxNiBwb3J0OworCisJ
cG9ydCA9IElSUV9QT1JUKGlycSk7CisJb3V0Yihwb3J0LCBpbmIocG9ydCkgfCAoMSA8PCBJUlFf
T0ZGU0VUKGlycSkpKTsKK30KKwordm9pZCBpbnRjdHJsX2NsZWFyX2lycSh1bnNpZ25lZCBpbnQg
aXJxKQoreworCV9fdTE2IHBvcnQ7CisKKwlwb3J0ID0gSVJRX1BPUlQoaXJxKTsKKwlvdXRiKHBv
cnQsIGluYihwb3J0KSAmIH4oMSA8PCBJUlFfT0ZGU0VUKGlycSkpKTsKK30KZGlmZiAtLWdpdCBh
L3BsYXQva3ZtL3g4Ni9sY3B1LmMgYi9wbGF0L2t2bS94ODYvbGNwdS5jCmluZGV4IDk4NWM2NzAu
LjQyZTJmYWEgMTAwNjQ0Ci0tLSBhL3BsYXQva3ZtL3g4Ni9sY3B1LmMKKysrIGIvcGxhdC9rdm0v
eDg2L2xjcHUuYwpAQCAtMSw2ICsxLDcgQEAKIC8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBC
U0QtMy1DbGF1c2UgKi8KIC8qCiAgKiBBdXRob3JzOiBTaW1vbiBLdWVuemVyIDxzaW1vbi5rdWVu
emVyQG5lY2xhYi5ldT4KKyAqICAgICAgICAgIENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5w
dWIucm8+CiAgKgogICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBD
b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCkBAIC0zNCwzICszNSwzOSBAQAog
CiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8dWsvcGxhdC9sY3B1Lmg+CisjaW5jbHVk
ZSA8eDg2L2lycS5oPgorCisKK3ZvaWQgdWtwbGF0X2xjcHVfZW5hYmxlX2lycSh2b2lkKQorewor
CWxvY2FsX2lycV9lbmFibGUoKTsKK30KKwordm9pZCB1a3BsYXRfbGNwdV9kaXNhYmxlX2lycSh2
b2lkKQoreworCWxvY2FsX2lycV9kaXNhYmxlKCk7Cit9CisKK3Vuc2lnbmVkIGxvbmcgdWtwbGF0
X2xjcHVfc2F2ZV9pcnFmKHZvaWQpCit7CisJdW5zaWduZWQgbG9uZyBmbGFnczsKKworCWxvY2Fs
X2lycV9zYXZlKGZsYWdzKTsKKworCXJldHVybiBmbGFnczsKK30KKwordm9pZCB1a3BsYXRfbGNw
dV9yZXN0b3JlX2lycWYodW5zaWduZWQgbG9uZyBmbGFncykKK3sKKwlsb2NhbF9pcnFfcmVzdG9y
ZShmbGFncyk7Cit9CisKK2ludCB1a3BsYXRfbGNwdV9pcnFzX2Rpc2FibGVkKHZvaWQpCit7CisJ
cmV0dXJuIGlycXNfZGlzYWJsZWQoKTsKK30KKwordm9pZCB1a3BsYXRfbGNwdV9pcnFzX2hhbmRs
ZV9wZW5kaW5nKHZvaWQpCit7CisKK30KZGlmZiAtLWdpdCBhL3BsYXQva3ZtL3g4Ni9zZXR1cC5j
IGIvcGxhdC9rdm0veDg2L3NldHVwLmMKaW5kZXggOTZkODBlOS4uZjU2ZDA3ZSAxMDA2NDQKLS0t
IGEvcGxhdC9rdm0veDg2L3NldHVwLmMKKysrIGIvcGxhdC9rdm0veDg2L3NldHVwLmMKQEAgLTI3
LDEwICsyNywxMSBAQAogICovCiAKICNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx4ODYv
dHJhcHMuaD4KICNpbmNsdWRlIDxrdm0vY29uc29sZS5oPgorI2luY2x1ZGUgPGt2bS9pbnRjdHJs
Lmg+CiAjaW5jbHVkZSA8a3ZtLXg4Ni9tdWx0aWJvb3QuaD4KICNpbmNsdWRlIDxrdm0teDg2L211
bHRpYm9vdF9kZWZzLmg+Ci0jaW5jbHVkZSA8a3ZtLXg4Ni9jcHVfeDg2XzY0Lmg+CiAjaW5jbHVk
ZSA8dWsvYXJjaC9saW1pdHMuaD4KICNpbmNsdWRlIDx1ay9hcmNoL3R5cGVzLmg+CiAjaW5jbHVk
ZSA8dWsvcGxhdC9jb25zb2xlLmg+CkBAIC0xMzQsNyArMTM1LDggQEAgdm9pZCBfbGlia3ZtcGxh
dF9lbnRyeSh2b2lkICphcmcpCiAKIAlfbGlia3ZtcGxhdF9pbml0X2NvbnNvbGUoKTsKIAlfaW5p
dF9jcHVmZWF0dXJlcygpOwotCWNwdV9pbml0KCk7CisJdHJhcHNfaW5pdCgpOworCWludGN0cmxf
aW5pdCgpOwogCiAJdWtfcHJpbnRkKERMVkxfSU5GTywgIkVudGVyaW5nIGZyb20gS1ZNICh4ODYp
Li4uXG4iKTsKIAl1a19wcmludGQoRExWTF9JTkZPLCAiICAgICBtdWx0aWJvb3Q6ICVwXG4iLCBt
aSk7CmRpZmYgLS1naXQgYS9wbGF0L2t2bS94ODYvdHJhcHMuYyBiL3BsYXQva3ZtL3g4Ni90cmFw
cy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3ZWY2ZDkKLS0tIC9kZXYv
bnVsbAorKysgYi9wbGF0L2t2bS94ODYvdHJhcHMuYwpAQCAtMCwwICsxLDE4NiBAQAorLyogU1BE
WC1MaWNlbnNlLUlkZW50aWZpZXI6IElTQyAqLworLyoKKyAqIEF1dGhvcnM6IERhbiBXaWxsaWFt
cworICogICAgICAgICAgTWFydGluIEx1Y2luYQorICogICAgICAgICAgRmVsaXBlIEh1aWNpIDxm
ZWxpcGUuaHVpY2lAbmVjbGFiLmV1PgorICogICAgICAgICAgRmxvcmlhbiBTY2htaWR0IDxmbG9y
aWFuLnNjaG1pZHRAbmVjbGFiLmV1PgorICoKKyAqIENvcHlyaWdodCAoYykgMjAxNS0yMDE3IElC
TQorICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTcgRG9ja2VyLCBJbmMuCisgKiBDb3B5cmlnaHQg
KGMpIDIwMTcgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24KKyAqCisgKiBQZXJtaXNz
aW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJl
CisgKiBmb3IgYW55IHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRl
ZCwgcHJvdmlkZWQKKyAqIHRoYXQgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMg
cGVybWlzc2lvbiBub3RpY2UgYXBwZWFyCisgKiBpbiBhbGwgY29waWVzLgorICoKKyAqIFRIRSBT
T0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwK
KyAqIFdBUlJBTlRJRVMgV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxM
IElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFM
LCBESVJFQ1QsIElORElSRUNULCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBE
QU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUworICogT0YgVVNFLCBEQVRBIE9S
IFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULAorICogTkVHTElHRU5D
RSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOCisgKiBDT05O
RUNUSU9OIFdJVEggVEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgorICov
CisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx1ay9hcmNoL2xjcHUuaD4KKyNpbmNs
dWRlIDx4ODYvZGVzYy5oPgorI2luY2x1ZGUgPGt2bS14ODYvdHJhcHMuaD4KKworc3RhdGljIHN0
cnVjdCBzZWdfZGVzYzMyIGNwdV9nZHQ2NFtHRFRfTlVNX0VOVFJJRVNdIF9fYWxpZ242NGI7CisK
Ky8qCisgKiBUaGUgbW9uaXRvciAodWt2bSkgb3IgYm9vdGxvYWRlciArIGJvb3RzdHJhcCAodmly
dGlvKSBzdGFydHMgdXMgdXAgd2l0aCBhCisgKiBib290c3RyYXAgR0RUIHdoaWNoIGlzICJpbnZp
c2libGUiIHRvIHRoZSBndWVzdCwgaW5pdCBhbmQgc3dpdGNoIHRvIG91ciBvd24KKyAqIEdEVC4K
KyAqCisgKiBUaGlzIGlzIGRvbmUgcHJpbWFyaWx5IHNpbmNlIHdlIG5lZWQgdG8gZG8gTFRSIGxh
dGVyIGluIGEgcHJlZGljdGFibGUKKyAqIGZhc2hpb24uCisgKi8KK3N0YXRpYyB2b2lkIGdkdF9p
bml0KHZvaWQpCit7CisJdm9sYXRpbGUgc3RydWN0IGRlc2NfdGFibGVfcHRyNjQgZ2R0cHRyOwor
CisJbWVtc2V0KGNwdV9nZHQ2NCwgMCwgc2l6ZW9mKGNwdV9nZHQ2NCkpOworCWNwdV9nZHQ2NFtH
RFRfREVTQ19DT0RFXS5yYXcgPSBHRFRfREVTQ19DT0RFX1ZBTDsKKwljcHVfZ2R0NjRbR0RUX0RF
U0NfREFUQV0ucmF3ID0gR0RUX0RFU0NfREFUQV9WQUw7CisKKwlnZHRwdHIubGltaXQgPSBzaXpl
b2YoY3B1X2dkdDY0KSAtIDE7CisJZ2R0cHRyLmJhc2UgPSAoX191NjQpICZjcHVfZ2R0NjQ7CisJ
X19hc21fXyBfX3ZvbGF0aWxlX18oImxnZHQgKCUwKSIgOjoiciIoJmdkdHB0cikpOworCS8qCisJ
ICogVE9ETzogVGVjaG5pY2FsbHkgd2Ugc2hvdWxkIHJlbG9hZCBhbGwgc2VnbWVudCByZWdpc3Rl
cnMgaGVyZSwgaW4KKwkgKiBwcmFjdGljZSB0aGlzIGRvZXNuJ3QgbWF0dGVyIHNpbmNlIHRoZSBi
b290c3RyYXAgR0RUIG1hdGNoZXMgb3VycywKKwkgKiBmb3Igbm93LgorCSAqLworfQorCitzdGF0
aWMgc3RydWN0IHRzczY0IGNwdV90c3M7CisKK3N0YXRpYyBjaGFyIGNwdV9pbnRyX3N0YWNrWzQw
OTZdOyAvKiBJU1QxICovCitzdGF0aWMgY2hhciBjcHVfdHJhcF9zdGFja1s0MDk2XTsgLyogSVNU
MiAqLworc3RhdGljIGNoYXIgY3B1X25taV9zdGFja1s0MDk2XTsgIC8qIElTVDMgKi8KKworc3Rh
dGljIHZvaWQgdHNzX2luaXQodm9pZCkKK3sKKwlzdHJ1Y3Qgc2VnX2Rlc2M2NCAqdGQgPSAodm9p
ZCAqKSAmY3B1X2dkdDY0W0dEVF9ERVNDX1RTU19MT107CisKKwljcHVfdHNzLmlzdFswXSA9IChf
X3U2NCkgJmNwdV9pbnRyX3N0YWNrW3NpemVvZihjcHVfaW50cl9zdGFjayldOworCWNwdV90c3Mu
aXN0WzFdID0gKF9fdTY0KSAmY3B1X3RyYXBfc3RhY2tbc2l6ZW9mKGNwdV90cmFwX3N0YWNrKV07
CisJY3B1X3Rzcy5pc3RbMl0gPSAoX191NjQpICZjcHVfbm1pX3N0YWNrW3NpemVvZihjcHVfbm1p
X3N0YWNrKV07CisKKwl0ZC0+bGltaXRfbG8gPSBzaXplb2YoY3B1X3Rzcyk7CisJdGQtPmJhc2Vf
bG8gPSAoX191NjQpICZjcHVfdHNzOworCXRkLT50eXBlID0gMHg5OworCXRkLT56ZXJvID0gMDsK
Kwl0ZC0+ZHBsID0gMDsKKwl0ZC0+cCA9IDE7CisJdGQtPmxpbWl0X2hpID0gMDsKKwl0ZC0+Z3Jh
biA9IDA7CisJdGQtPmJhc2VfaGkgPSAoX191NjQpICZjcHVfdHNzID4+IDI0OworCXRkLT56ZXJv
MSA9IDA7CisKKwliYXJyaWVyKCk7CisJX19hc21fXyBfX3ZvbGF0aWxlX18oCisJCSJsdHIgJTAi
CisJCToKKwkJOiAiciIgKCh1bnNpZ25lZCBzaG9ydCkgKEdEVF9ERVNDX1RTU19MTyAqIDgpKQor
CSk7Cit9CisKKworLyogRGVjbGFyZSB0aGUgdHJhcHMgdXNlZCBvbmx5IGJ5IHRoaXMgcGxhdGZv
cm06ICovCitERUNMQVJFX1RSQVBfRUMobm1pLCAgICAgICAgICAgIk5NSSIpCitERUNMQVJFX1RS
QVBfRUMoZG91YmxlX2ZhdWx0LCAgImRvdWJsZSBmYXVsdCIpCitERUNMQVJFX1RSQVBfRUModmly
dF9lcnJvciwgICAgInZpcnR1YWxpemF0aW9uIGVycm9yIikKKworCitzdGF0aWMgc3RydWN0IHNl
Z19nYXRlX2Rlc2M2NCBjcHVfaWR0W0lEVF9OVU1fRU5UUklFU10gX19hbGlnbjY0YjsKKworc3Rh
dGljIHZvaWQgaWR0X2ZpbGxnYXRlKHVuc2lnbmVkIGludCBudW0sIHZvaWQgKmZ1biwgdW5zaWdu
ZWQgaW50IGlzdCkKK3sKKwlzdHJ1Y3Qgc2VnX2dhdGVfZGVzYzY0ICpkZXNjID0gJmNwdV9pZHRb
bnVtXTsKKworCS8qCisJICogQWxsIGdhdGVzIGFyZSBpbnRlcnJ1cHQgZ2F0ZXMsIGFsbCBoYW5k
bGVycyBydW4gd2l0aCBpbnRlcnJ1cHRzIG9mZi4KKwkgKi8KKwlkZXNjLT5vZmZzZXRfaGkgPSAo
X191NjQpIGZ1biA+PiAxNjsKKwlkZXNjLT5vZmZzZXRfbG8gPSAoX191NjQpIGZ1biAmIDB4ZmZm
ZjsKKwlkZXNjLT5zZWxlY3RvciA9IEdEVF9ERVNDX09GRlNFVChHRFRfREVTQ19DT0RFKTsKKwlk
ZXNjLT5pc3QgPSBpc3Q7CisJZGVzYy0+dHlwZSA9IDE0OyAvKiA9PSAwYjExMTAgKi8KKwlkZXNj
LT5kcGwgPSAwOworCWRlc2MtPnAgPSAxOworfQorCit2b2xhdGlsZSBzdHJ1Y3QgZGVzY190YWJs
ZV9wdHI2NCBpZHRwdHI7CisKK3N0YXRpYyB2b2lkIGlkdF9pbml0KHZvaWQpCit7CisJLyoKKwkg
KiBMb2FkIHRyYXAgdmVjdG9ycy4gQWxsIHRyYXBzIHJ1biBvbiBJU1QyIChjcHVfdHJhcF9zdGFj
ayksIGV4Y2VwdCBmb3IKKwkgKiB0aGUgZXhjZXB0aW9ucy4KKwkgKi8KKyNkZWZpbmUgRklMTF9U
UkFQX0dBVEUobmFtZSwgaXN0KSBleHRlcm4gdm9pZCBjcHVfdHJhcF8jI25hbWUodm9pZCk7IFwK
KwlpZHRfZmlsbGdhdGUoVFJBUF8jI25hbWUsIEFTTV9UUkFQX1NZTShuYW1lKSwgaXN0KQorCUZJ
TExfVFJBUF9HQVRFKGRpdmlkZV9lcnJvciwgICAgMik7CisJRklMTF9UUkFQX0dBVEUoZGVidWcs
ICAgICAgICAgICAyKTsKKwlGSUxMX1RSQVBfR0FURShubWksICAgICAgICAgICAgIDMpOyAvKiAj
Tk1JIHJ1bnMgb24gSVNUMyAoY3B1X25taV9zdGFjaykgKi8KKwlGSUxMX1RSQVBfR0FURShpbnQz
LCAgICAgICAgICAgIDIpOworCUZJTExfVFJBUF9HQVRFKG92ZXJmbG93LCAgICAgICAgMik7CisJ
RklMTF9UUkFQX0dBVEUoYm91bmRzLCAgICAgICAgICAyKTsKKwlGSUxMX1RSQVBfR0FURShpbnZh
bGlkX29wLCAgICAgIDIpOworCUZJTExfVFJBUF9HQVRFKG5vX2RldmljZSwgICAgICAgMik7CisJ
RklMTF9UUkFQX0dBVEUoZG91YmxlX2ZhdWx0LCAgICAzKTsgLyogI0RGIHJ1bnMgb24gSVNUMyAo
Y3B1X25taV9zdGFjaykgKi8KKworCUZJTExfVFJBUF9HQVRFKGludmFsaWRfdHNzLCAgICAgMik7
CisJRklMTF9UUkFQX0dBVEUobm9fc2VnbWVudCwgICAgICAyKTsKKwlGSUxMX1RSQVBfR0FURShz
dGFja19lcnJvciwgICAgIDIpOworCUZJTExfVFJBUF9HQVRFKGdwX2ZhdWx0LCAgICAgICAgMik7
CisJRklMTF9UUkFQX0dBVEUocGFnZV9mYXVsdCwgICAgICAyKTsKKworCUZJTExfVFJBUF9HQVRF
KGNvcHJvY19lcnJvciwgICAgMik7CisJRklMTF9UUkFQX0dBVEUoYWxpZ25tZW50X2NoZWNrLCAy
KTsKKwlGSUxMX1RSQVBfR0FURShtYWNoaW5lX2NoZWNrLCAgIDIpOworCUZJTExfVFJBUF9HQVRF
KHNpbWRfZXJyb3IsICAgICAgMik7CisJRklMTF9UUkFQX0dBVEUodmlydF9lcnJvciwgICAgICAy
KTsKKworCS8qCisJICogTG9hZCBpcnEgdmVjdG9ycy4gQWxsIGlycXMgcnVuIG9uIElTVDEgKGNw
dV9pbnRyX3N0YWNrKS4KKwkgKi8KKyNkZWZpbmUgRklMTF9JUlFfR0FURShudW0sIGlzdCkgZXh0
ZXJuIHZvaWQgY3B1X2lycV8jI251bSh2b2lkKTsgXAorCWlkdF9maWxsZ2F0ZSgzMiArIG51bSwg
Y3B1X2lycV8jI251bSwgaXN0KQorCUZJTExfSVJRX0dBVEUoMCwgMSk7CisJRklMTF9JUlFfR0FU
RSgxLCAxKTsKKwlGSUxMX0lSUV9HQVRFKDIsIDEpOworCUZJTExfSVJRX0dBVEUoMywgMSk7CisJ
RklMTF9JUlFfR0FURSg0LCAxKTsKKwlGSUxMX0lSUV9HQVRFKDUsIDEpOworCUZJTExfSVJRX0dB
VEUoNiwgMSk7CisJRklMTF9JUlFfR0FURSg3LCAxKTsKKwlGSUxMX0lSUV9HQVRFKDgsIDEpOwor
CUZJTExfSVJRX0dBVEUoOSwgMSk7CisJRklMTF9JUlFfR0FURSgxMCwgMSk7CisJRklMTF9JUlFf
R0FURSgxMSwgMSk7CisJRklMTF9JUlFfR0FURSgxMiwgMSk7CisJRklMTF9JUlFfR0FURSgxMywg
MSk7CisJRklMTF9JUlFfR0FURSgxNCwgMSk7CisJRklMTF9JUlFfR0FURSgxNSwgMSk7CisKKwlp
ZHRwdHIubGltaXQgPSBzaXplb2YoY3B1X2lkdCkgLSAxOworCWlkdHB0ci5iYXNlID0gKF9fdTY0
KSAmY3B1X2lkdDsKKwlfX2FzbV9fIF9fdm9sYXRpbGVfXygibGlkdCAoJTApIiA6OiAiciIgKCZp
ZHRwdHIpKTsKK30KKwordm9pZCB0cmFwc19pbml0KHZvaWQpCit7CisJZ2R0X2luaXQoKTsKKwl0
c3NfaW5pdCgpOworCWlkdF9pbml0KCk7Cit9CisKK3ZvaWQgdHJhcHNfZmluaSh2b2lkKQorewor
fQotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9q
ZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWlu
aW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 15:21:55 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 15:21:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f46i3-0007sx-IZ; Thu, 05 Apr 2018 15:21:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f46i2-0007s2-EX
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 15:21:54 +0000
X-Inumbo-ID: 3ef7660b-38e5-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 3ef7660b-38e5-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 15:23:09 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3AYHOd0h1o5Mp4mz54smDT+DRfVm0co7zxezQtwd8Z?=
 =?us-ascii?q?seIWLPad9pjvdHbS+e9qxAeQG9mDsLQc06L/iOPJYSQ4+5GPsXQPItRndiQuro?=
 =?us-ascii?q?EopTEmG9OPEkbhLfTnPGQQFcVGU0J5rTngaRAGUMnxaEfPrXKs8DUcBgvwNRZv?=
 =?us-ascii?q?JuTyB4Xek9m72/q99pHPbQhEniaxba9vJxiqsAvdsdUbj5F/Iagr0BvJpXVIe+?=
 =?us-ascii?q?VSxWx2IF+Yggjx6MSt8pN96ipco/0u+dJOXqX8ZKQ4UKdXDC86PGAv5c3krgfM?=
 =?us-ascii?q?QA2S7XYBSGoWkx5IAw/Y7BHmW5r6ryX3uvZh1CScIMb7S60/Vza/4KdxUBLmiD?=
 =?us-ascii?q?kJOSM3/m/UjcJ/jqxbrQm9qxBj2YPYfJuYOOZicq7bYNgURXBBXsFUVyFZHI68?=
 =?us-ascii?q?aJAPD/YAPeZesoLzoUYOrQOjBQKxA+7g1jhIhmTq3a071eQtCwXG3BE4H9ITq3?=
 =?us-ascii?q?nbsM71OL0KUeCo16bE1y/Db/RP1Dr79YPGcQghrOmRUb9/bMbd00oiGgPfglmO?=
 =?us-ascii?q?t4DoPSmZ2+oVv2SG4OdsSPijhm0npg1rvDSiyMkhhpPUio8a1FzJ8zhyzpwvKt?=
 =?us-ascii?q?2iUkF7ZMapEJ5Xty6HKYR7WtgiQ2R0uCYizb0GpIK7cDAKyJs5wx7fbOSKc5aN?=
 =?us-ascii?q?4h35VeaRJS10i25+eL6lnxay7FOvxvfmVsmzyFpKryxFncfQtn0VyhDe5dWLRu?=
 =?us-ascii?q?F+80qhwzqDyR7f5+NeLU06jabbLoQuwr80lpodq0TDGSr2lV3qg6+RbUUk5umo?=
 =?us-ascii?q?6+L9brXiu5+cL5J0hxriPaQ1gMC/Gfk4PRMUU2iB/uSwzKfj8lHhQLVWkv02lb?=
 =?us-ascii?q?HUsJXbJcQdp665BBRV3p8+5BmhETepztAYkGIDLFJEYxKHk5PpN0vBIf/mC/ez?=
 =?us-ascii?q?mVOskC1kx/reJL3uHo3NLmTfkLfmZbt98E9cyA80zdBZ/Z5UCawBL+z1Wk7wqt?=
 =?us-ascii?q?PYFAQ0MwqqzOn7DNVyzJgRVXiRDa+EY+vutgqN5+QuJPLJaIILtTLVL/k+++Wo?=
 =?us-ascii?q?nXI/31gHcvqHx5wSPVu/BehnJQ29fGLxyoMKFnwWvwx4SPHylXWJSnhLenz0Ra?=
 =?us-ascii?q?VqtWJzM56vEYqWHtPlu7eGxiruRpA=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2A+AAC1PsZajAPjVY1TChsBAQEBAwEBA?=
 =?us-ascii?q?QkBAQGEI28oi19ejxMaklUUgWYmgV+DCQKECjQYAQIBAQEBAQECARMBAQEmSwy?=
 =?us-ascii?q?CNSKCTAMDGg1SED8SVxkbhHatcDOEV4NqgiWGb4JPP4EMglCEaBAEhXsChxwfh?=
 =?us-ascii?q?DoLUz+JbUEIgV+DdIJNgmGDMoEwGiCFeYRYK4Z+hhaDZwIcN4FTMxpygkMJghc?=
 =?us-ascii?q?OCYs/gltsilYqghsBAQ?=
X-IPAS-Result: =?us-ascii?q?A2A+AAC1PsZajAPjVY1TChsBAQEBAwEBAQkBAQGEI28oi19?=
 =?us-ascii?q?ejxMaklUUgWYmgV+DCQKECjQYAQIBAQEBAQECARMBAQEmSwyCNSKCTAMDGg1SE?=
 =?us-ascii?q?D8SVxkbhHatcDOEV4NqgiWGb4JPP4EMglCEaBAEhXsChxwfhDoLUz+JbUEIgV+?=
 =?us-ascii?q?DdIJNgmGDMoEwGiCFeYRYK4Z+hhaDZwIcN4FTMxpygkMJghcOCYs/gltsilYqg?=
 =?us-ascii?q?hsBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495025"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 18:21:23 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 17D231A6019B;
 Thu,  5 Apr 2018 18:21:23 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id k9Fj4mcNp8bR; Thu,  5 Apr 2018 18:21:23 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id EDF881A601A1;
 Thu,  5 Apr 2018 18:21:22 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id E5B281A6019E;
 Thu,  5 Apr 2018 18:21:22 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 18:21:18 +0300
Message-Id: <1522941678-21179-4-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 3/3] plat/kvm: Add KVM (x86_64)
 timer support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2UgYXJlIHVzaW5nIFRTQyBjbG9jayBhcyBtYWluIHRpbWVyIG9uIEtWTS4KClNpZ25lZC1vZmYt
Ynk6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Ci0tLQogcGxhdC9rdm0vTWFr
ZWZpbGUudWsgICAgICAgICAgICAgIHwgICAzICsKIHBsYXQva3ZtL2Nsb2NrX3N1YnIuYyAgICAg
ICAgICAgICB8IDIyNiArKysrKysrKysrKysrKysrKysrKysrKysKIHBsYXQva3ZtL2luY2x1ZGUv
a3ZtL2Nsb2NrX3N1YnIuaCB8ICA4MyArKysrKysrKysKIHBsYXQva3ZtL2luY2x1ZGUva3ZtL3Rz
Y2Nsb2NrLmggICB8ICA0MiArKysrKwogcGxhdC9rdm0vaXJxLmMgICAgICAgICAgICAgICAgICAg
IHwgIDEwICsrCiBwbGF0L2t2bS90aW1lLmMgICAgICAgICAgICAgICAgICAgfCAgNjIgKysrKysr
KwogcGxhdC9rdm0vdHNjY2xvY2suYyAgICAgICAgICAgICAgIHwgMzU2ICsrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrCiA3IGZpbGVzIGNoYW5nZWQsIDc4MiBpbnNlcnRpb25z
KCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0vY2xvY2tfc3Vici5jCiBjcmVhdGUgbW9k
ZSAxMDA2NDQgcGxhdC9rdm0vaW5jbHVkZS9rdm0vY2xvY2tfc3Vici5oCiBjcmVhdGUgbW9kZSAx
MDA2NDQgcGxhdC9rdm0vaW5jbHVkZS9rdm0vdHNjY2xvY2suaAogY3JlYXRlIG1vZGUgMTAwNjQ0
IHBsYXQva3ZtL3RpbWUuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL3RzY2Nsb2NrLmMK
CmRpZmYgLS1naXQgYS9wbGF0L2t2bS9NYWtlZmlsZS51ayBiL3BsYXQva3ZtL01ha2VmaWxlLnVr
CmluZGV4IDQ2MjU4ZmYuLjc2YzQwZjEgMTAwNjQ0Ci0tLSBhL3BsYXQva3ZtL01ha2VmaWxlLnVr
CisrKyBiL3BsYXQva3ZtL01ha2VmaWxlLnVrCkBAIC0zNCw0ICszNCw3IEBAIExJQktWTVBMQVRf
U1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2L2ludGN0cmwuYwog
TElCS1ZNUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCS1ZNUExBVF9CQVNFKS9zaHV0
ZG93bi5jCiBMSUJLVk1QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJLVk1QTEFUX0JB
U0UpL21lbW9yeS5jCiBMSUJLVk1QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJLVk1Q
TEFUX0JBU0UpL2lycS5jCitMSUJLVk1QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJL
Vk1QTEFUX0JBU0UpL3RpbWUuYworTElCS1ZNUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQo
TElCS1ZNUExBVF9CQVNFKS90c2NjbG9jay5jCitMSUJLVk1QTEFUX1NSQ1MteSAgICAgICAgICAg
ICAgKz0gJChMSUJLVk1QTEFUX0JBU0UpL2Nsb2NrX3N1YnIuYwogTElCS1ZNUExBVF9TUkNTLXkg
ICAgICAgICAgICAgICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkvbGNwdS5jfGNvbW1vbgpkaWZm
IC0tZ2l0IGEvcGxhdC9rdm0vY2xvY2tfc3Vici5jIGIvcGxhdC9rdm0vY2xvY2tfc3Vici5jCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkNzM4OGIKLS0tIC9kZXYvbnVsbAor
KysgYi9wbGF0L2t2bS9jbG9ja19zdWJyLmMKQEAgLTAsMCArMSwyMjYgQEAKKy8qIFNQRFgtTGlj
ZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8KKy8qCisgKiBBdXRob3JzOiBNYXJ0aW4gTHVjaW5hCisg
KiAgICAgICAgICBSaWNhcmRvIEtvbGxlcgorICogICAgICAgICAgQ29zdGluIEx1cHUgPGNvc3Rp
bi5sdXB1QGNzLnB1Yi5ybz4KKyAqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNyBJQk0KKyAq
IENvcHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tlciwgSW5jLgorICogQ29weXJpZ2h0IChjKSAy
MDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbgorICoKKyAqIFBlcm1pc3Npb24g
dG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUKKyAq
IGZvciBhbnkgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBw
cm92aWRlZAorICogdGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJt
aXNzaW9uIG5vdGljZSBhcHBlYXIKKyAqIGluIGFsbCBjb3BpZXMuCisgKgorICogVEhFIFNPRlRX
QVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAorICog
V0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1Q
TElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRQorICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJ
UkVDVCwgSU5ESVJFQ1QsIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFH
RVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCisgKiBPRiBVU0UsIERBVEEgT1IgUFJP
RklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCisgKiBORUdMSUdFTkNFIE9S
IE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4KKyAqIENPTk5FQ1RJ
T04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCisgKi8KKy8q
IFRha2VuIGZyb20gc29sbzUgY2xvY2tfc3Vici5jICovCisKKy8qCSROZXRCU0Q6IGNsb2NrX3N1
YnIuYyx2IDEuMjYgMjAxNC8xMi8yMiAxODowOToyMCBjaHJpc3RvcyBFeHAgJAkqLworCisvKi0K
KyAqIENvcHlyaWdodCAoYykgMTk5NiBUaGUgTmV0QlNEIEZvdW5kYXRpb24sIEluYy4KKyAqIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0
d2FyZSBjb250cmlidXRlZCB0byBUaGUgTmV0QlNEIEZvdW5kYXRpb24KKyAqIGJ5IEdvcmRvbiBX
LiBSb3NzCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
TkVUQlNEIEZPVU5EQVRJT04sIElOQy4gQU5EIENPTlRSSUJVVE9SUworICogYGBBUyBJUycnIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVECisgKiBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBGT1VOREFUSU9OIE9SIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICogUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworLyoKKyAqIENvcHlyaWdodCAoYykgMTk4
OCBVbml2ZXJzaXR5IG9mIFV0YWguCisgKiBDb3B5cmlnaHQgKGMpIDE5ODIsIDE5OTAsIDE5OTMK
KyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUg
Y29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKKyAqIHRoZSBTeXN0ZW1zIFByb2dyYW1taW5nIEdy
b3VwIG9mIHRoZSBVbml2ZXJzaXR5IG9mIFV0YWggQ29tcHV0ZXIKKyAqIFNjaWVuY2UgRGVwYXJ0
bWVudC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkg
bm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAq
ICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBg
YEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBB
UkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwor
ICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKgorICogZnJvbTogVXRhaCAk
SGRyOiBjbG9jay5jIDEuMTggOTEvMDEvMjEkCisgKgorICoJQCgjKWNsb2NrLmMJOC4yIChCZXJr
ZWxleSkgMS8xMi85NAorICovCisKKyNpbmNsdWRlIDxrdm0vY2xvY2tfc3Vici5oPgorCisvKiBT
b21lIGhhbmR5IGNvbnN0YW50cy4gKi8KKyNkZWZpbmUgU0VDU19QRVJfTUlOVVRFICAgICAgICAg
NjAKKyNkZWZpbmUgU0VDU19QRVJfSE9VUiAgICAgICAgICAgMzYwMAorI2RlZmluZSBTRUNTX1BF
Ul9EQVkgICAgICAgICAgICA4NjQwMAorI2RlZmluZSBEQVlTX1BFUl9DT01NT05fWUVBUiAgICAz
NjUKKyNkZWZpbmUgREFZU19QRVJfTEVBUF9ZRUFSICAgICAgMzY2CisjZGVmaW5lIFNFQ1NfUEVS
X0NPTU1PTl9ZRUFSICAgIChTRUNTX1BFUl9EQVkgKiBEQVlTX1BFUl9DT01NT05fWUVBUikKKyNk
ZWZpbmUgU0VDU19QRVJfTEVBUF9ZRUFSICAgICAgKFNFQ1NfUEVSX0RBWSAqIERBWVNfUEVSX0xF
QVBfWUVBUikKKworLyogVHJhZGl0aW9uYWwgUE9TSVggYmFzZSB5ZWFyICovCisjZGVmaW5lCVBP
U0lYX0JBU0VfWUVBUgkxOTcwCisKKy8qIFNvbWUgaGFuZHkgZnVuY3Rpb25zICovCitzdGF0aWMg
aW50IGRheXNfaW5fbW9udGgoaW50IG0pCit7CisJc3dpdGNoIChtKSB7CisJY2FzZSAyOgorCQly
ZXR1cm4gMjg7CisJY2FzZSA0OiBjYXNlIDY6IGNhc2UgOTogY2FzZSAxMToKKwkJcmV0dXJuIDMw
OworCWNhc2UgMTogY2FzZSAzOiBjYXNlIDU6IGNhc2UgNzogY2FzZSA4OiBjYXNlIDEwOiBjYXNl
IDEyOgorCQlyZXR1cm4gMzE7CisJZGVmYXVsdDoKKwkJcmV0dXJuIC0xOworCX0KK30KKworLyoK
KyAqIFRoaXMgaW5saW5lIGF2b2lkcyBzb21lIHVubmVjZXNzYXJ5IG1vZHVsbyBvcGVyYXRpb25z
CisgKiBhcyBjb21wYXJlZCB3aXRoIHRoZSB1c3VhbCBtYWNybzoKKyAqICAgKCAoKHllYXIgJSA0
KSA9PSAwICYmCisgKiAgICAgICh5ZWFyICUgMTAwKSAhPSAwKSB8fAorICogICAgICgoeWVhciAl
IDQwMCkgPT0gMCkgKQorICogSXQgaXMgb3RoZXJ3aXNlIGVxdWl2YWxlbnQuCisgKi8KK3N0YXRp
YyBpbnQgaXNfbGVhcF95ZWFyKF9fdTY0IHllYXIpCit7CisJaWYgKCh5ZWFyICYgMykgIT0gMCkK
KwkJcmV0dXJuIDA7CisKKwlpZiAoKHllYXIgJSAxMDApICE9IDApCisJCXJldHVybiAxOworCisJ
cmV0dXJuICh5ZWFyICUgNDAwKSA9PSAwOworfQorCitzdGF0aWMgaW50IGRheXNfcGVyX3llYXIo
X191NjQgeWVhcikKK3sKKwlyZXR1cm4gaXNfbGVhcF95ZWFyKHllYXIpID8gREFZU19QRVJfTEVB
UF9ZRUFSIDogREFZU19QRVJfQ09NTU9OX1lFQVI7Cit9CisKKy8qCisgKiBHZW5lcmljIHJvdXRp
bmVzIHRvIGNvbnZlcnQgYmV0d2VlbiBhIFBPU0lYIGRhdGUKKyAqIChzZWNvbmRzIHNpbmNlIDEv
MS8xOTcwKSBhbmQgeXIvbW8vZGF5L2hyL21pbi9zZWMKKyAqIERlcml2ZWQgZnJvbSBhcmNoL2hw
MzAwL2hwMzAwL2Nsb2NrLmMKKyAqLworCisjZGVmaW5lIEZFQlJVQVJZICAyCisKKy8qIGZvciBl
YXNpZXIgYWxpZ25tZW50OgorICogdGltZSBmcm9tIHRoZSBlcG9jaCB0byAyMDAwICh0aGVyZSB3
ZXJlIDcgbGVhcCB5ZWFycyk6CisgKi8KKyNkZWZpbmUJREFZU1RPMjAwMCAgICAgICAgICgzNjUg
KiAzMCArIDcpCisKKy8qIDQgeWVhciBpbnRlcnZhbHMgaW5jbHVkZSAxIGxlYXAgeWVhciAqLwor
I2RlZmluZQlEQVlTNFlFQVJTICAgICAgICAgKDM2NSAqIDQgKyAxKQorCisvKiAxMDAgeWVhciBp
bnRlcnZhbHMgaW5jbHVkZSAyNCBsZWFwIHllYXJzICovCisjZGVmaW5lCURBWVMxMDBZRUFSUyAg
ICAgICAoMzY1ICogMTAwICsgMjQpCisKKy8qIDQwMCB5ZWFyIGludGVydmFscyBpbmNsdWRlIDk3
IGxlYXAgeWVhcnMgKi8KKyNkZWZpbmUJREFZUzQwMFlFQVJTICAgICAgICgzNjUgKiA0MDAgKyA5
NykKKworX191NjQgY2xvY2tfeW1kaG1zX3RvX3NlY3Moc3RydWN0IGJta19jbG9ja195bWRobXMg
KmR0KQoreworCV9fdTY0IHNlY3MsIGksIHllYXIsIGRheXM7CisKKwl5ZWFyID0gZHQtPmR0X3ll
YXI7CisKKwkvKgorCSAqIENvbXB1dGUgZGF5cyBzaW5jZSBzdGFydCBvZiB0aW1lCisJICogRmly
c3QgZnJvbSB5ZWFycywgdGhlbiBmcm9tIG1vbnRocy4KKwkgKi8KKwlpZiAoeWVhciA8IFBPU0lY
X0JBU0VfWUVBUikKKwkJcmV0dXJuIDA7CisKKwlkYXlzID0gMDsKKwlpZiAoaXNfbGVhcF95ZWFy
KHllYXIpICYmIGR0LT5kdF9tb24gPiBGRUJSVUFSWSkKKwkJZGF5cysrOworCisJaWYgKHllYXIg
PCAyMDAwKSB7CisJCS8qIHNpbXBsZSB3YXkgZm9yIGVhcmx5IHllYXJzICovCisJCWZvciAoaSA9
IFBPU0lYX0JBU0VfWUVBUjsgaSA8IHllYXI7IGkrKykKKwkJCWRheXMgKz0gZGF5c19wZXJfeWVh
cihpKTsKKworCX0gZWxzZSB7CisJCS8qIHllYXJzIGFyZSBwcm9wZXJseSBhbGlnbmVkICovCisJ
CWRheXMgKz0gREFZU1RPMjAwMDsKKwkJeWVhciAtPSAyMDAwOworCisJCWkgPSB5ZWFyIC8gNDAw
OworCQlkYXlzICs9IGkgKiBEQVlTNDAwWUVBUlM7CisJCXllYXIgLT0gaSAqIDQwMDsKKworCQlp
ID0geWVhciAvIDEwMDsKKwkJZGF5cyArPSBpICogREFZUzEwMFlFQVJTOworCQl5ZWFyIC09IGkg
KiAxMDA7CisKKwkJaSA9IHllYXIgLyA0OworCQlkYXlzICs9IGkgKiBEQVlTNFlFQVJTOworCQl5
ZWFyIC09IGkgKiA0OworCisJCWZvciAoaSA9IGR0LT5kdF95ZWFyIC0geWVhcjsgaSA8IGR0LT5k
dF95ZWFyOyBpKyspCisJCQlkYXlzICs9IGRheXNfcGVyX3llYXIoaSk7CisJfQorCisJLyogTW9u
dGhzICovCisJZm9yIChpID0gMTsgaSA8IGR0LT5kdF9tb247IGkrKykKKwkJZGF5cyArPSBkYXlz
X2luX21vbnRoKGkpOworCWRheXMgKz0gKGR0LT5kdF9kYXkgLSAxKTsKKworCS8qIEFkZCBob3Vy
cywgbWludXRlcywgc2Vjb25kcy4gKi8KKwlzZWNzID0gKCgoX191NjQpIGRheXMKKwkJKiAyNCAr
IGR0LT5kdF9ob3VyKQorCQkqIDYwICsgZHQtPmR0X21pbikKKwkJKiA2MCArIGR0LT5kdF9zZWM7
CisKKwlyZXR1cm4gc2VjczsKK30KZGlmZiAtLWdpdCBhL3BsYXQva3ZtL2luY2x1ZGUva3ZtL2Ns
b2NrX3N1YnIuaCBiL3BsYXQva3ZtL2luY2x1ZGUva3ZtL2Nsb2NrX3N1YnIuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NmY4MjliCi0tLSAvZGV2L251bGwKKysrIGIvcGxh
dC9rdm0vaW5jbHVkZS9rdm0vY2xvY2tfc3Vici5oCkBAIC0wLDAgKzEsODMgQEAKKy8qIFNQRFgt
TGljZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8KKy8qCisgKiBBdXRob3JzOiBNYXJ0aW4gTHVjaW5h
CisgKiAgICAgICAgICBSaWNhcmRvIEtvbGxlcgorICogICAgICAgICAgQ29zdGluIEx1cHUgPGNv
c3Rpbi5sdXB1QGNzLnB1Yi5ybz4KKyAqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNyBJQk0K
KyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tlciwgSW5jLgorICogQ29weXJpZ2h0IChj
KSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbgorICoKKyAqIFBlcm1pc3Np
b24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUK
KyAqIGZvciBhbnkgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVk
LCBwcm92aWRlZAorICogdGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBw
ZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIKKyAqIGluIGFsbCBjb3BpZXMuCisgKgorICogVEhFIFNP
RlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAor
ICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwg
SU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElO
IE5PIEVWRU5UIFNIQUxMIFRIRQorICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUws
IERJUkVDVCwgSU5ESVJFQ1QsIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERB
TUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCisgKiBPRiBVU0UsIERBVEEgT1Ig
UFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCisgKiBORUdMSUdFTkNF
IE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4KKyAqIENPTk5F
Q1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCisgKi8K
Ky8qIFRha2VuIGZyb20gc29sbzUgY2xvY2tfc3Vici5oICovCisKKy8qLQorICogQ29weXJpZ2h0
IChjKSAxOTk2IFRoZSBOZXRCU0QgRm91bmRhdGlvbiwgSW5jLgorICogQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1
dGVkIHRvIFRoZSBOZXRCU0QgRm91bmRhdGlvbgorICogYnkgR29yZG9uIFcuIFJvc3MKKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBORVRCU0QgRk9VTkRB
VElPTiwgSU5DLiBBTkQgQ09OVFJJQlVUT1JTCisgKiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQKKyAqIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIEZPVU5EQVRJT04gT1IgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIF9CTUtfQ0xPQ0tfU1VCUl9IXworI2RlZmluZSBf
Qk1LX0NMT0NLX1NVQlJfSF8KKworI2luY2x1ZGUgPHVrL2FyY2gvdHlwZXMuaD4KKworLyoKKyAq
ICJQT1NJWCB0aW1lIiB0by9mcm9tICJZWS9NTS9ERC9oaC9tbS9zcyIKKyAqLworc3RydWN0IGJt
a19jbG9ja195bWRobXMgeworCV9fdTY0IGR0X3llYXI7CisJX191OCBkdF9tb247CisJX191OCBk
dF9kYXk7CisJX191OCBkdF9ob3VyOworCV9fdTggZHRfbWluOworCV9fdTggZHRfc2VjOworfTsK
KworX191NjQgY2xvY2tfeW1kaG1zX3RvX3NlY3Moc3RydWN0IGJta19jbG9ja195bWRobXMgKmR0
KTsKKworLyoKKyAqIEJDRCB0byBiaW5hcnkuCisgKi8KK3N0YXRpYyBpbmxpbmUgdW5zaWduZWQg
aW50IGJjZHRvYmluKHVuc2lnbmVkIGludCBiY2QpCit7CisJcmV0dXJuICgoYmNkID4+IDQpICYg
MHgwZikgKiAxMCArIChiY2QgJiAweDBmKTsKK30KKworI2VuZGlmIC8qIF9CTUtfQ0xPQ0tfU1VC
Ul9IXyAqLwpkaWZmIC0tZ2l0IGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0vdHNjY2xvY2suaCBiL3Bs
YXQva3ZtL2luY2x1ZGUva3ZtL3RzY2Nsb2NrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uMjdkMGUwMgotLS0gL2Rldi9udWxsCisrKyBiL3BsYXQva3ZtL2luY2x1ZGUva3Zt
L3RzY2Nsb2NrLmgKQEAgLTAsMCArMSw0MiBAQAorLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6
IEJTRC0zLUNsYXVzZSAqLworLyoKKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVw
dUBjcy5wdWIucm8+CisgKgorICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4s
IE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAz
LiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMg
b2YgaXRzCisgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJ
UyIKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJ
QlVUT1JTIEJFCisgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqCisgKiBUSElTIEhFQURF
UiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgorICovCisKKyNp
Zm5kZWYgX19LVk1fVFNDQ0xPQ0tfSF9fCisjZGVmaW5lIF9fS1ZNX1RTQ0NMT0NLX0hfXworCitp
bnQgdHNjY2xvY2tfaW5pdCh2b2lkKTsKK19fdTY0IHRzY2Nsb2NrX21vbm90b25pYyh2b2lkKTsK
K19fdTY0IHRzY2Nsb2NrX2Vwb2Nob2Zmc2V0KHZvaWQpOworCisjZW5kaWYgLyogX19LVk1fVFND
Q0xPQ0tfSF9fICovCmRpZmYgLS1naXQgYS9wbGF0L2t2bS9pcnEuYyBiL3BsYXQva3ZtL2lycS5j
CmluZGV4IDU1ZjhlNjcuLmEzYjIxMjEgMTAwNjQ0Ci0tLSBhL3BsYXQva3ZtL2lycS5jCisrKyBi
L3BsYXQva3ZtL2lycS5jCkBAIC02OCwxMiArNjgsMjIgQEAgdm9pZCBpcnFfcmVnaXN0ZXIodW5z
aWduZWQgbG9uZyBpcnEsIGlycV9oYW5kbGVyX2Z1bmNfdCBmdW5jLCB2b2lkICphcmcpCiAJaW50
Y3RybF9jbGVhcl9pcnEoaXJxKTsKIH0KIAorLyoKKyAqIFRPRE8gVGhpcyBpcyBhIHRlbXBvcmFy
eSBzb2x1dGlvbiB1c2VkIHRvIGlkZW50aWZ5IG5vbiBUU0MgY2xvY2sKKyAqIGludGVycnVwdHMg
aW4gb3JkZXIgdG8gc3RvcCB3YWl0aW5nIGZvciBpbnRlcnJ1cHRzIHdpdGggZGVhZGxpbmUuCisg
Ki8KK2V4dGVybiBsb25nIG5vbnRzY19pbnRlcnJ1cHRfYXNzZXJ0OworCiB2b2lkIGlycV9oYW5k
bGUodW5zaWduZWQgbG9uZyBpcnEpCiB7CiAJc3RydWN0IGlycV9oYW5kbGVyICpoOwogCWludCBo
YW5kbGVkID0gMDsKIAogCVVLX1NMSVNUX0ZPUkVBQ0goaCwgJmlycV9oYW5kbGVyc1tpcnFdLCBl
bnRyaWVzKSB7CisJCS8qIFRPRE8gZGVmaW5lIHBsYXRmb3JtIHdpc2UgbWFjcm8gZm9yIHRpbWVy
IElSUSBudW1iZXIgKi8KKwkJaWYgKGlycSAhPSAwKQorCQkJbm9udHNjX2ludGVycnVwdF9hc3Nl
cnQgPSAxOworCiAJCWlmIChoLT5mdW5jKGgtPmFyZykgPT0gMSkgewogCQkJaGFuZGxlZCA9IDE7
CiAJCQlicmVhazsKZGlmZiAtLWdpdCBhL3BsYXQva3ZtL3RpbWUuYyBiL3BsYXQva3ZtL3RpbWUu
YwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMjc2OTk3Ci0tLSAvZGV2L251
bGwKKysrIGIvcGxhdC9rdm0vdGltZS5jCkBAIC0wLDAgKzEsNjIgQEAKKy8qIFNQRFgtTGljZW5z
ZS1JZGVudGlmaWVyOiBJU0MgKi8KKy8qCisgKiBBdXRob3JzOiBEYW4gV2lsbGlhbXMKKyAqICAg
ICAgICAgIE1hcnRpbiBMdWNpbmEKKyAqICAgICAgICAgIFJpY2FyZG8gS29sbGVyCisgKiAgICAg
ICAgICBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgorICoKKyAqIENvcHlyaWdo
dCAoYykgMjAxNS0yMDE3IElCTQorICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTcgRG9ja2VyLCBJ
bmMuCisgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0
aW9uCisgKgorICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kL29yIGRpc3Ry
aWJ1dGUgdGhpcyBzb2Z0d2FyZQorICogZm9yIGFueSBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBm
ZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCisgKiB0aGF0IHRoZSBhYm92ZSBjb3B5cmln
aHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhcgorICogaW4gYWxsIGNv
cGllcy4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFV
VEhPUiBESVNDTEFJTVMgQUxMCisgKiBXQVJSQU5USUVTIFdJVEggUkVHQVJEIFRPIFRISVMgU09G
VFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBBVVRIT1IgQkUgTElB
QkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MK
KyAqIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05U
UkFDVCwKKyAqIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9V
VCBPRiBPUiBJTgorICogQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0Yg
VEhJUyBTT0ZUV0FSRS4KKyAqLworLyogVGFrZW4gZnJvbSBzb2xvNSB0aW1lLmMgKi8KKworI2lu
Y2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHVrL3BsYXQvdGltZS5oPgorI2luY2x1ZGUgPGt2
bS9pcnEuaD4KKyNpbmNsdWRlIDxrdm0vdHNjY2xvY2suaD4KKyNpbmNsdWRlIDx1ay9hc3NlcnQu
aD4KKworCisvKiByZXR1cm4gbnMgc2luY2UgdGltZV9pbml0KCkgKi8KK19fbnNlYyB1a3BsYXRf
bW9ub3RvbmljX2Nsb2NrKHZvaWQpCit7CisJcmV0dXJuIHRzY2Nsb2NrX21vbm90b25pYygpOwor
fQorCisvKiByZXR1cm4gd2FsbCB0aW1lIGluIG5zZWNzICovCitfX25zZWMgdWtwbGF0X2Nsb2Nr
X3dhbGwodm9pZCkKK3sKKwlyZXR1cm4gdHNjY2xvY2tfbW9ub3RvbmljKCkgKyB0c2NjbG9ja19l
cG9jaG9mZnNldCgpOworfQorCitzdGF0aWMgaW50IHRpbWVyX2hhbmRsZXIodm9pZCAqYXJnIF9f
dW51c2VkKQoreworCS8qIFllcywgd2UgaGFuZGxlZCB0aGUgaXJxLiAqLworCXJldHVybiAxOwor
fQorCisvKiBtdXN0IGJlIGNhbGxlZCBiZWZvcmUgaW50ZXJydXB0cyBhcmUgZW5hYmxlZCAqLwor
dm9pZCB1a3BsYXRfdGltZV9pbml0KHZvaWQpCit7CisJaW50IHJjOworCisJaXJxX3JlZ2lzdGVy
KDAsIHRpbWVyX2hhbmRsZXIsIE5VTEwpOworCisJcmMgPSB0c2NjbG9ja19pbml0KCk7CisJVUtf
QVNTRVJUKHJjID09IDApOworfQpkaWZmIC0tZ2l0IGEvcGxhdC9rdm0vdHNjY2xvY2suYyBiL3Bs
YXQva3ZtL3RzY2Nsb2NrLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTE5
OWYxOAotLS0gL2Rldi9udWxsCisrKyBiL3BsYXQva3ZtL3RzY2Nsb2NrLmMKQEAgLTAsMCArMSwz
NTYgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8KKy8qCisgKiBBdXRob3Jz
OiBEYW4gV2lsbGlhbXMKKyAqICAgICAgICAgIE1hcnRpbiBMdWNpbmEKKyAqICAgICAgICAgIFJp
Y2FyZG8gS29sbGVyCisgKiAgICAgICAgICBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHVi
LnJvPgorICoKKyAqIENvcHlyaWdodCAoYykgMjAxNS0yMDE3IElCTQorICogQ29weXJpZ2h0IChj
KSAyMDE2LTIwMTcgRG9ja2VyLCBJbmMuCisgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJv
cGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uCisgKgorICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHks
IG1vZGlmeSwgYW5kL29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZQorICogZm9yIGFueSBwdXJw
b3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCisgKiB0
aGF0IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNl
IGFwcGVhcgorICogaW4gYWxsIGNvcGllcy4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklE
RUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMCisgKiBXQVJSQU5USUVTIFdJ
VEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFCisgKiBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVD
VCwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVS
IFJFU1VMVElORyBGUk9NIExPU1MKKyAqIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVS
IElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwKKyAqIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElP
VVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTgorICogQ09OTkVDVElPTiBXSVRIIFRIRSBV
U0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KKyAqLworLyogVGFrZW4gZnJvbSBz
b2xvNSB0c2NjbG9jay5jICovCisKKy8qLQorICogQ29weXJpZ2h0IChjKSAyMDE0LCAyMDE1IEFu
dHRpIEthbnRlZS4gIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKGMpIDIwMTUg
TWFydGluIEx1Y2luYS4gIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBNb2RpZmllZCBmb3Igc29s
bzUgYnkgUmljYXJkbyBLb2xsZXIgPGtvbGxlcnJAdXMuaWJtLmNvbT4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBB
TlkgRVhQUkVTUworICogT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQor
ICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCisgKiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikK
KyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8dWsvcGxhdC9sY3B1Lmg+Cisj
aW5jbHVkZSA8dWsvcGxhdC90aW1lLmg+CisjaW5jbHVkZSA8eDg2L2NwdS5oPgorI2luY2x1ZGUg
PGt2bS9jbG9ja19zdWJyLmg+CisjaW5jbHVkZSA8dWsvcHJpbnQuaD4KKyNpbmNsdWRlIDx1ay9h
c3NlcnQuaD4KKworI2RlZmluZSBOU0VDX1BFUl9TRUMgICAgICAgICAxMDAwMDAwMDAwVUxMCisK
KyNkZWZpbmUgVElNRVJfQ05UUiAgICAgICAgICAgMHg0MAorI2RlZmluZSBUSU1FUl9NT0RFICAg
ICAgICAgICAweDQzCisjZGVmaW5lIFRJTUVSX1NFTDAgICAgICAgICAgIDB4MDAKKyNkZWZpbmUg
VElNRVJfTEFUQ0ggICAgICAgICAgMHgwMAorI2RlZmluZSBUSU1FUl9SQVRFR0VOICAgICAgICAw
eDA0CisjZGVmaW5lIFRJTUVSX09ORVNIT1QgICAgICAgIDB4MDgKKyNkZWZpbmUgVElNRVJfMTZC
SVQgICAgICAgICAgMHgzMAorI2RlZmluZSBUSU1FUl9IWiAgICAgICAgICAgICAxMTkzMTgyCisK
KyNkZWZpbmUJUlRDX0NPTU1BTkQgICAgICAgICAgMHg3MAorI2RlZmluZQlSVENfREFUQSAgICAg
ICAgICAgICAweDcxCisjZGVmaW5lIFJUQ19OTUlfRElTQUJMRSAgICAgICgxPDw4KQorI2RlZmlu
ZSBSVENfTk1JX0VOQUJMRSAgICAgICAwCisjZGVmaW5lCVJUQ19TRUMgICAgICAgICAgICAgIDB4
MDAKKyNkZWZpbmUJUlRDX01JTiAgICAgICAgICAgICAgMHgwMgorI2RlZmluZQlSVENfSE9VUiAg
ICAgICAgICAgICAweDA0CisjZGVmaW5lCVJUQ19EQVkgICAgICAgICAgICAgIDB4MDcKKyNkZWZp
bmUJUlRDX01PTlRIICAgICAgICAgICAgMHgwOAorI2RlZmluZQlSVENfWUVBUiAgICAgICAgICAg
ICAweDA5CisjZGVmaW5lCVJUQ19TVEFUVVNfQSAgICAgICAgIDB4MGEKKyNkZWZpbmUJUlRDX1VJ
UCAgICAgICAgICAgICAgKDE8PDcpCisKKy8qIFJUQyB3YWxsIHRpbWUgb2Zmc2V0IGF0IG1vbm90
b25pYyB0aW1lIGJhc2UuICovCitzdGF0aWMgX191NjQgcnRjX2Vwb2Nob2Zmc2V0OworCisvKgor
ICogVFNDIGNsb2NrIHNwZWNpZmljLgorICovCisKKy8qIEJhc2UgdGltZSB2YWx1ZXMgYXQgdGhl
IGxhc3QgY2FsbCB0byB0c2NjbG9ja19tb25vdG9uaWMoKS4gKi8KK3N0YXRpYyBfX3U2NCB0aW1l
X2Jhc2U7CitzdGF0aWMgX191NjQgdHNjX2Jhc2U7CisKKy8qIE11bHRpcGxpZXIgZm9yIGNvbnZl
cnRpbmcgVFNDIHRpY2tzIHRvIG5zZWNzLiAoMC4zMikgZml4ZWQgcG9pbnQuICovCitzdGF0aWMg
X191MzIgdHNjX211bHQ7CisKKy8qCisgKiBNdWx0aXBsaWVyIGZvciBjb252ZXJ0aW5nIG5zZWNz
IHRvIFBJVCB0aWNrcy4gKDEuMzIpIGZpeGVkIHBvaW50LgorICoKKyAqIENhbGN1bGF0ZWQgYXM6
CisgKgorICogICAgIGYgPSBOU0VDX1BFUl9TRUMgLyBUSU1FUl9IWiAgICgwLjMxKSBmaXhlZCBw
b2ludC4KKyAqICAgICBwaXRfbXVsdCA9IDEgLyBmICAgICAgICAgICAgICAoMS4zMikgZml4ZWQg
cG9pbnQuCisgKi8KK3N0YXRpYyBjb25zdCBfX3UzMiBwaXRfbXVsdCA9CisJKDFVTEwgPDwgNjMp
IC8gKChOU0VDX1BFUl9TRUMgPDwgMzEpIC8gVElNRVJfSFopOworCisKKy8qCisgKiBSZWFkIHRo
ZSBjdXJyZW50IGk4MjU0IGNoYW5uZWwgMCB0aWNrIGNvdW50LgorICovCitzdGF0aWMgdW5zaWdu
ZWQgaW50IGk4MjU0X2dldHRpY2sodm9pZCkKK3sKKwlfX3UxNiByZHZhbDsKKworCW91dGIoVElN
RVJfTU9ERSwgVElNRVJfU0VMMCB8IFRJTUVSX0xBVENIKTsKKwlyZHZhbCAgPSBpbmIoVElNRVJf
Q05UUik7CisJcmR2YWwgfD0gKGluYihUSU1FUl9DTlRSKSA8PCA4KTsKKwlyZXR1cm4gcmR2YWw7
Cit9CisKKy8qCisgKiBEZWxheSBmb3IgYXBwcm94aW1hdGVseSBuIG1pY3Jvc2Vjb25kcyB1c2lu
ZyB0aGUgaTgyNTQgY2hhbm5lbCAwIGNvdW50ZXIuCisgKiBUaW1lciBtdXN0IGJlIHByb2dyYW1t
ZWQgYXBwcm9wcmlhdGVseSBiZWZvcmUgY2FsbGluZyB0aGlzIGZ1bmN0aW9uLgorICovCitzdGF0
aWMgdm9pZCBpODI1NF9kZWxheSh1bnNpZ25lZCBpbnQgbikKK3sKKwl1bnNpZ25lZCBpbnQgY3Vy
X3RpY2ssIGluaXRpYWxfdGljazsKKwlpbnQgcmVtYWluaW5nOworCWNvbnN0IHVuc2lnbmVkIGxv
bmcgdGltZXJfcnZhbCA9IFRJTUVSX0haIC8gMTAwOworCisJaW5pdGlhbF90aWNrID0gaTgyNTRf
Z2V0dGljaygpOworCisJcmVtYWluaW5nID0gKHVuc2lnbmVkIGxvbmcgbG9uZykgbiAqIFRJTUVS
X0haIC8gMTAwMDAwMDsKKworCXdoaWxlIChyZW1haW5pbmcgPiAxKSB7CisJCWN1cl90aWNrID0g
aTgyNTRfZ2V0dGljaygpOworCQlpZiAoY3VyX3RpY2sgPiBpbml0aWFsX3RpY2spCisJCQlyZW1h
aW5pbmcgLT0gdGltZXJfcnZhbCAtIChjdXJfdGljayAtIGluaXRpYWxfdGljayk7CisJCWVsc2UK
KwkJCXJlbWFpbmluZyAtPSBpbml0aWFsX3RpY2sgLSBjdXJfdGljazsKKwkJaW5pdGlhbF90aWNr
ID0gY3VyX3RpY2s7CisJfQorfQorCisvKgorICogUmVhZCBhIFJUQyByZWdpc3Rlci4gRHVlIHRv
IFBDIHBsYXRmb3JtIGJyYWluZGVhZC1uZXNzIGFsc28gZGlzYWJsZXMgTk1JLgorICovCitzdGF0
aWMgaW5saW5lIF9fdTggcnRjX3JlYWQoX191OCByZWcpCit7CisJb3V0YihSVENfQ09NTUFORCwg
cmVnIHwgUlRDX05NSV9ESVNBQkxFKTsKKwlyZXR1cm4gaW5iKFJUQ19EQVRBKTsKK30KKworLyoK
KyAqIFJldHVybiBjdXJyZW50IFJUQyB0aW1lLiBOb3RlIHRoYXQgZHVlIHRvIHdhaXRpbmcgZm9y
IHRoZSB1cGRhdGUgY3ljbGUgdG8KKyAqIGNvbXBsZXRlLCB0aGlzIGNhbGwgbWF5IHRha2Ugc29t
ZSB0aW1lLgorICovCitzdGF0aWMgX191NjQgcnRjX2dldHRpbWVvZmRheSh2b2lkKQoreworCXN0
cnVjdCBibWtfY2xvY2tfeW1kaG1zIGR0OworCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CisKKwlmbGFn
cyA9IHVrcGxhdF9sY3B1X3NhdmVfaXJxZigpOworCisJLyoKKwkgKiBJZiBSVENfVUlQIGlzIGRv
d24sIHdlIGhhdmUgYXQgbGVhc3QgMjQ0dXMgdG8gb2J0YWluIGEKKwkgKiBjb25zaXN0ZW50IHJl
YWRpbmcgYmVmb3JlIGFuIHVwZGF0ZSBjYW4gb2NjdXIuCisJICovCisJd2hpbGUgKHJ0Y19yZWFk
KFJUQ19TVEFUVVNfQSkgJiBSVENfVUlQKQorCQljb250aW51ZTsKKworCWR0LmR0X3NlYyA9IGJj
ZHRvYmluKHJ0Y19yZWFkKFJUQ19TRUMpKTsKKwlkdC5kdF9taW4gPSBiY2R0b2JpbihydGNfcmVh
ZChSVENfTUlOKSk7CisJZHQuZHRfaG91ciA9IGJjZHRvYmluKHJ0Y19yZWFkKFJUQ19IT1VSKSk7
CisJZHQuZHRfZGF5ID0gYmNkdG9iaW4ocnRjX3JlYWQoUlRDX0RBWSkpOworCWR0LmR0X21vbiA9
IGJjZHRvYmluKHJ0Y19yZWFkKFJUQ19NT05USCkpOworCWR0LmR0X3llYXIgPSBiY2R0b2Jpbihy
dGNfcmVhZChSVENfWUVBUikpICsgMjAwMDsKKworCXVrcGxhdF9sY3B1X3Jlc3RvcmVfaXJxZihm
bGFncyk7CisKKwlyZXR1cm4gdWthcmNoX3RpbWVfc2VjX3RvX25zZWMoY2xvY2tfeW1kaG1zX3Rv
X3NlY3MoJmR0KSk7Cit9CisKKy8qCisgKiBCZXR1cm4gbW9ub3RvbmljIHRpbWUgdXNpbmcgVFND
IGNsb2NrLgorICovCitfX3U2NCB0c2NjbG9ja19tb25vdG9uaWModm9pZCkKK3sKKwlfX3U2NCB0
c2Nfbm93LCB0c2NfZGVsdGE7CisKKwkvKgorCSAqIFVwZGF0ZSB0aW1lX2Jhc2UgKG1vbm90b25p
YyB0aW1lKSBhbmQgdHNjX2Jhc2UgKFRTQyB0aW1lKS4KKwkgKi8KKwl0c2Nfbm93ID0gcmR0c2Mo
KTsKKwl0c2NfZGVsdGEgPSB0c2Nfbm93IC0gdHNjX2Jhc2U7CisJdGltZV9iYXNlICs9IG11bDY0
XzMyKHRzY19kZWx0YSwgdHNjX211bHQpOworCXRzY19iYXNlID0gdHNjX25vdzsKKworCXJldHVy
biB0aW1lX2Jhc2U7Cit9CisKKy8qCisgKiBDYWxpYnJhdGUgVFNDIGFuZCBpbml0aWFsaXNlIFRT
QyBjbG9jay4KKyAqLworaW50IHRzY2Nsb2NrX2luaXQodm9pZCkKK3sKKwlfX3U2NCB0c2NfZnJl
cSwgcnRjX2Jvb3Q7CisKKwkvKiBJbml0aWFsaXNlIGk4MjU0IHRpbWVyIGNoYW5uZWwgMCB0byBt
b2RlIDIgYXQgMTAwIEh6ICovCisJb3V0YihUSU1FUl9NT0RFLCBUSU1FUl9TRUwwIHwgVElNRVJf
UkFURUdFTiB8IFRJTUVSXzE2QklUKTsKKwlvdXRiKFRJTUVSX0NOVFIsIChUSU1FUl9IWiAvIDEw
MCkgJiAweGZmKTsKKwlvdXRiKFRJTUVSX0NOVFIsIChUSU1FUl9IWiAvIDEwMCkgPj4gOCk7CisK
KwkvKgorCSAqIFJlYWQgUlRDICJ0aW1lIGF0IGJvb3QiLiBUaGlzIG11c3QgYmUgZG9uZSBqdXN0
IGJlZm9yZSB0c2NfYmFzZSBpcworCSAqIGluaXRpYWxpc2VkIGluIG9yZGVyIHRvIGdldCBhIGNv
cnJlY3Qgb2Zmc2V0IGJlbG93LgorCSAqLworCXJ0Y19ib290ID0gcnRjX2dldHRpbWVvZmRheSgp
OworCisJLyoKKwkgKiBDYWxjdWxhdGUgVFNDIGZyZXF1ZW5jeSBieSBjYWxpYnJhdGluZyBhZ2Fp
bnN0IGFuIDAuMXMgZGVsYXkKKwkgKiB1c2luZyB0aGUgaTgyNTQgdGltZXIuCisJICovCisJdHNj
X2Jhc2UgPSByZHRzYygpOworCWk4MjU0X2RlbGF5KDEwMDAwMCk7CisJdHNjX2ZyZXEgPSAocmR0
c2MoKSAtIHRzY19iYXNlKSAqIDEwOworCXVrX3ByaW50ZChETFZMX0lORk8sCisJCSJDbG9jayBz
b3VyY2U6IFRTQywgZnJlcXVlbmN5IGVzdGltYXRlIGlzICVsbHUgSHpcbiIsCisJCSh1bnNpZ25l
ZCBsb25nIGxvbmcpIHRzY19mcmVxKTsgLy9UT0RPCisKKwkvKgorCSAqIENhbGN1bGF0ZSBUU0Mg
c2NhbGluZyBtdWx0aXBsaWVyLgorCSAqCisJICogKDAuMzIpIHRzY19tdWx0ID0gTlNFQ19QRVJf
U0VDICgzMi4zMikgLyB0c2NfZnJlcSAoMzIuMCkKKwkgKi8KKwl0c2NfbXVsdCA9IChOU0VDX1BF
Ul9TRUMgPDwgMzIpIC8gdHNjX2ZyZXE7CisKKwkvKgorCSAqIE1vbm90b25pYyB0aW1lIGJlZ2lu
cyBhdCB0c2NfYmFzZSAoZmlyc3QgcmVhZCBvZiBUU0MgYmVmb3JlCisJICogY2FsaWJyYXRpb24p
LgorCSAqLworCXRpbWVfYmFzZSA9IG11bDY0XzMyKHRzY19iYXNlLCB0c2NfbXVsdCk7CisKKwkv
KgorCSAqIENvbXB1dGUgUlRDIGVwb2NoIG9mZnNldCBieSBzdWJ0cmFjdGluZyBtb25vdG9uaWMg
dGltZV9iYXNlIGZyb20gUlRDCisJICogdGltZSBhdCBib290LgorCSAqLworCXJ0Y19lcG9jaG9m
ZnNldCA9IHJ0Y19ib290IC0gdGltZV9iYXNlOworCisJLyoKKwkgKiBJbml0aWFsaXNlIGk4MjU0
IHRpbWVyIGNoYW5uZWwgMCB0byBtb2RlIDQgKG9uZSBzaG90KS4KKwkgKi8KKwlvdXRiKFRJTUVS
X01PREUsIFRJTUVSX1NFTDAgfCBUSU1FUl9PTkVTSE9UIHwgVElNRVJfMTZCSVQpOworCisJcmV0
dXJuIDA7Cit9CisKKy8qCisgKiBSZXR1cm4gZXBvY2ggb2Zmc2V0ICh3YWxsIHRpbWUgb2Zmc2V0
IHRvIG1vbm90b25pYyBjbG9jayBzdGFydCkuCisgKi8KK19fdTY0IHRzY2Nsb2NrX2Vwb2Nob2Zm
c2V0KHZvaWQpCit7CisJcmV0dXJuIHJ0Y19lcG9jaG9mZnNldDsKK30KKworLyoKKyAqIE1pbmlt
dW0gZGVsdGEgdG8gc2xlZXAgdXNpbmcgUElULiBQcm9ncmFtbWluZyBzZWVtcyB0byBoYXZlIGFu
IG92ZXJoZWFkIG9mCisgKiAzLTR1cywgYnV0IHBsYXkgaXQgc2FmZSBoZXJlLgorICovCisjZGVm
aW5lIFBJVF9NSU5fREVMVEEJMTYKKworLyoKKyAqIFJldHVybnMgZWFybHkgaWYgYW55IGludGVy
cnVwdHMgYXJlIHNlcnZpY2VkLCBvciBpZiB0aGUgcmVxdWVzdGVkIGRlbGF5IGlzCisgKiB0b28g
c2hvcnQuIE11c3QgYmUgY2FsbGVkIHdpdGggaW50ZXJydXB0cyBkaXNhYmxlZCwgd2lsbCBlbmFi
bGUgaW50ZXJydXB0cworICogImF0b21pY2FsbHkiIGR1cmluZyBpZGxlIGxvb3AuCisgKi8KK3N0
YXRpYyB2b2lkIHRzY2Nsb2NrX2NwdV9ibG9jayhfX3U2NCB1bnRpbCkKK3sKKwlfX3U2NCBub3cs
IGRlbHRhX25zOworCV9fdTY0IGRlbHRhX3RpY2tzOworCXVuc2lnbmVkIGludCB0aWNrczsKKwor
CVVLX0FTU0VSVCh1a3BsYXRfbGNwdV9pcnFzX2Rpc2FibGVkKCkpOworCisJbm93ID0gdWtwbGF0
X21vbm90b25pY19jbG9jaygpOworCisJLyoKKwkgKiBDb21wdXRlIGRlbHRhIGluIFBJVCB0aWNr
cy4gUmV0dXJuIGlmIGl0IGlzIGxlc3MgdGhhbiBtaW5pbXVtIHNhZmUKKwkgKiBhbW91bnQgb2Yg
dGlja3MuICBFc3NlbnRpYWxseSB0aGlzIHdpbGwgY2F1c2UgdXMgdG8gc3BpbiB1bnRpbAorCSAq
IHRoZSB0aW1lb3V0LgorCSAqLworCWRlbHRhX25zID0gdW50aWwgLSBub3c7CisJZGVsdGFfdGlj
a3MgPSBtdWw2NF8zMihkZWx0YV9ucywgcGl0X211bHQpOworCWlmIChkZWx0YV90aWNrcyA8IFBJ
VF9NSU5fREVMVEEpIHsKKwkJLyoKKwkJICogU2luY2Ugd2UgYXJlICJzcGlubmluZyIsIHF1aWNr
bHkgZW5hYmxlIGludGVycnVwdHMgaW4KKwkJICogdGhlIGhvcGVzIHRoYXQgd2UgbWlnaHQgZ2V0
IG5ldyB3b3JrIGFuZCBjYW4gZG8gc29tZXRoaW5nCisJCSAqIGVsc2UgdGhhbiBzcGluLgorCQkg
Ki8KKwkJdWtwbGF0X2xjcHVfZW5hYmxlX2lycSgpOworCQlub3AoKTsgLyogaW50cyBhcmUgZW5h
YmxlZCAxIGluc3RyIGFmdGVyIHN0aSAqLworCQl1a3BsYXRfbGNwdV9kaXNhYmxlX2lycSgpOwor
CQlyZXR1cm47CisJfQorCisgICAgLyoKKyAgICAgKiBQcm9ncmFtIHRoZSB0aW1lciB0byBpbnRl
cnJ1cHQgdGhlIENQVSBhZnRlciB0aGUgZGVsYXkgaGFzIGV4cGlyZWQuCisgICAgICogTWF4aW11
bSB0aW1lciBkZWxheSBpcyA2NTUzNSB0aWNrcy4KKyAgICAgKi8KKwlpZiAoZGVsdGFfdGlja3Mg
PiA2NTUzNSkKKwkJdGlja3MgPSA2NTUzNTsKKwllbHNlCisJCXRpY2tzID0gZGVsdGFfdGlja3M7
CisKKwkvKgorCSAqIE5vdGUgdGhhdCBhY2NvcmRpbmcgdG8gdGhlIEludGVsIDgyQzU0IGRhdGFz
aGVldCwgcDEyIHRoZQorCSAqIGludGVycnVwdCBpcyBhY3R1YWxseSBkZWxpdmVyZWQgaW4gTiAr
IDEgdGlja3MuCisJICovCisJdGlja3MgLT0gMTsKKwlvdXRiKFRJTUVSX0NOVFIsIHRpY2tzICYg
MHhmZik7CisJb3V0YihUSU1FUl9DTlRSLCB0aWNrcyA+PiA4KTsKKworCS8qCisJICogV2FpdCBm
b3IgYW55IGludGVycnVwdC4gSWYgd2UgZ290IGFuIGludGVycnVwdCB0aGVuCisJICoganVzdCBy
ZXR1cm4gaW50byB0aGUgc2NoZWR1bGVyIHdoaWNoIHdpbGwgY2hlY2sgaWYgdGhlcmUgaXMKKwkg
KiB3b3JrIHRvIGRvIGFuZCBzZW5kIHVzIGJhY2sgaGVyZSBpZiBub3QuCisJICoKKwkgKiBUT0RP
OiBJdCB3b3VsZCBiZSBtb3JlIGVmZmljaWVudCBmb3IgbG9uZ2VyIHNsZWVwcyB0byBiZQorCSAq
IGFibGUgdG8gZGlzdGluZ3Vpc2ggaWYgdGhlIGludGVycnVwdCB3YXMgdGhlIFBJVCBpbnRlcnJ1
cHQKKwkgKiBhbmQgbm8gb3RoZXIsIGJ1dCB0aGlzIHdpbGwgZG8gZm9yIG5vdy4KKwkgKi8KKwl1
a3BsYXRfbGNwdV9oYWx0X2lycSgpOworfQorCitsb25nIG5vbnRzY19pbnRlcnJ1cHRfYXNzZXJ0
OworCit2b2lkIHRpbWVfYmxvY2tfdW50aWwoX19zbnNlYyB1bnRpbCkKK3sKKwl2b2xhdGlsZSBs
b25nICpwbm9udHNjX2ludGVycnVwdF9hc3NlcnQgPSAmbm9udHNjX2ludGVycnVwdF9hc3NlcnQ7
CisKKwl3aGlsZSAoKF9fc25zZWMpIHVrcGxhdF9tb25vdG9uaWNfY2xvY2soKSA8IHVudGlsKSB7
CisJCXRzY2Nsb2NrX2NwdV9ibG9jayh1bnRpbCk7CisKKwkJLyogd2hvIHRyaWdnZXJlZCB0aGUg
aW50ZXJydXB0PyAqLworCQlpZiAoKnBub250c2NfaW50ZXJydXB0X2Fzc2VydCkgeworCQkJLyog
aXQgd2FzIGFub3RoZXIgZGV2aWNlLCBzdG9wIGJsb2NraW5nICovCisJCQlub250c2NfaW50ZXJy
dXB0X2Fzc2VydCA9IDA7CisJCQlicmVhazsKKwkJfQorCQkvKiBpdCB3YXMgdXMgKi8KKwl9Cit9
Ci0tIAoyLjEuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2pl
Y3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5p
b3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 15:25:11 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 15:25:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f46lC-0007wv-T5; Thu, 05 Apr 2018 15:25:10 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fi5o=g2=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f46lB-0007wq-UU
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 15:25:09 +0000
X-Inumbo-ID: 6eb717e0-38e5-11e8-9728-bc764e045a96
Received: from mail-wm0-x229.google.com (unknown [2a00:1450:400c:c09::229])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 6eb717e0-38e5-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 17:24:29 +0200 (CEST)
Received: by mail-wm0-x229.google.com with SMTP id w2so3768857wmw.1
 for <minios-devel@lists.xenproject.org>; Thu, 05 Apr 2018 08:25:08 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=76jLGOGTbxSZzu/cs5pGMtrrhc+F9vWYRmGjlFxrpxI=;
 b=bLNfwjlLPkxNKednXOCG1dAwMEoXniUQrUI67q+UBteVNREoGqdAB5FaJ3LuEVNqFu
 r2MB+po99D7kZ2IhXWpqNxHmkrSAE6FbbHMuluR6f/gwHydVAwxVlHQ2OgEcSrcIgQTY
 EUWu7WtAgnuo7ClwEUXRbN94XF8rixXUlDAj9EBF8Qt7PwJCrXj6+EPzvzTt5gY3u8pG
 nmZ/DTtD8NUjgFcMUwL0EU33midRiP7mmmmhVfAj0zsJ+5YG9DuUxiVZf93QelGSEJ3O
 sCII9t5pzY0b4f3BZxtiea8aVPie2dfFhBP57g1iNeFnZyw1+zhwcg3pMzxbNNGNRedW
 tGog==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=76jLGOGTbxSZzu/cs5pGMtrrhc+F9vWYRmGjlFxrpxI=;
 b=P0cmV8vurfvSsarCsL37CAZvqg//Gco4EnG8W8174nBsJgBfWS2dAVMe1xeIUapX9x
 YUSZpKNrsAoCvgh8KGpfYfmfqtnKwE2UkIoVOBBtgZ3YakNszPAxPutIypRSD9ot824A
 I83pgyBTeiFC+SDqgnSEklr/TpMa5OgNalmDviU3nyK1heD6Ix8L8WR+vyjmEea03fN4
 ls1qH3bPziEY0vbDHtfYTy+HP04RR4wsCVjoGrqcI7L03myX4A63RXaeKkACm8EZ5xx3
 fspgRKlNjyEfRGTz5uuC6vDqvIc3lW0Uq2UZRcoKIUi18K2kEv7QAIymsCuhupduVzWu
 3vyg==
X-Gm-Message-State: ALQs6tD2hLPmtKSsSwfibFSHFY5Z34BstHLm22umEadkG2Zw2LpgZyOJ
 2uFLqsq4S6zsVz5jhnuqa22Dm8a0Jg0pB7ap8zo=
X-Google-Smtp-Source: AIpwx4/dq8x6HosdRM+9sBlLgkV8dj5paz1KGPrVc8N9voXAonXXQTsATZkNhyGXI94pwFiqEcgSt714CQMQWEPpJA0=
X-Received: by 10.46.131.86 with SMTP id l22mr11570771ljh.82.1522941907054;
 Thu, 05 Apr 2018 08:25:07 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Thu, 5 Apr 2018 08:25:06 -0700 (PDT)
In-Reply-To: <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Thu, 5 Apr 2018 20:55:06 +0530
Message-ID: <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
To: Julien Grall <julien.grall@linaro.org>
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, Simon Kuenzer <simon.kuenzer@neclab.eu>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhhbmtzIEp1bGllbiBmb3IgdGhlIGhlbHAgLi4uCgpPbiBUaHUsIEFwciA1LCAyMDE4IGF0IDY6
MTkgUE0sIEp1bGllbiBHcmFsbCA8anVsaWVuLmdyYWxsQGxpbmFyby5vcmc+IHdyb3RlOgo+IEhp
LAo+Pgo+IEtWTSBpcyBhIG1vZHVsZSB0byBlbmFibGUgdGhlIHVzZSBvZiB2aXJ0dWFsaXphdGlv
biBleHRlbnNpb24uIElmIHlvdSBkb24ndAo+IHVzZSB0aGVtLCB0aGVuIHlvdSBiZXR0ZXIganVz
dCB1c2UgUUVNVS4gQnV0IGFzIFNpbW9uIHNhaWQsIHRoaXMgaXMgZ29pbmcgdG8KPiBiZSByZWFs
bHkgc2xvdy4KClllcCwgZXhhY3RseSAuLgoKCj4KPj4KPj4gV291bGQgYmUgZ3JlYXQgdG8gaGF2
ZSBtb3JlIHZpZXdwb2ludHMgOikKPgo+IFlvdSBzZWVtIHRvIGhhdmUgYXNrZWQgZm9yIFBWIHN1
cHBvcnQgaW4gNCBkaWZmZXJlbnQgdGhyZWFkcyB0aGUgcGFzdCB3ZWVrCj4gYW5kIG9uIGRpZmZl
cmVudCBtYWlsaW5nIGxpc3QgKE1pbmktT1MsIEtWTS4uLikuIEJ1dCBJIHN0aWxsIGRvbid0Cj4g
dW5kZXJzdGFuZCB3aGF0IGlzIHlvdXIgZW5kIGdvYWwuIE1heWJlIHlvdSBjb3VsZCBzdGFydCBi
eSBhbnN3ZXJpbmcgdGhlCj4gZm9sbG93aW5nIHF1ZXN0aW9uczoKPiAgICAgICAgIC0gV2hhdCBp
cyB5b3VyIGVuZCBnb2FsPwo+ICAgICAgICAgLSBXaGF0IGlzIHlvdXIgZGVmaW5pdGlvbiBvZiBs
b3ctZW5kIHBsYXRmb3JtPyBUaGVyZSBhcmUgc29tZSBhdAo+IH4xMCQgd2l0aCB2aXJ0dWFsaXph
dGlvbiBleHRlbnNpb25zLiBTbyB3aHkgbm90IHRoZW0/CgpPdXIgZW5kIGdvYWwgaXMKICAgICAg
ICAgICAgIlRvIHJ1biBhIFB5dGhvbiBVbmlrZXJuZWwgYXBwbGljYXRpb24gb24gYW4gQVJNIHBs
YXRmb3JtIi4KCkhlbmNlIHdlIHdlcmUvYXJlIGxvb2tpbmcgYXQgdGhlIGF2YWlsYWJsZSBoYXJk
d2FyZSBhdCBvdXIgZW5kIGFzCnRlc3RpbmcgZW52aXJvbm1lbnQgKEJlYWdsZWJvbmUpLgpUaGUg
aWRlYSBvZiB0aGlzIHN0dWR5IGlzIHRvIHVuZGVyc3RhbmQgYW5kIGNvbXBhcmUgYmV0d2VlbiB1
bmlrZXJuZWxzCmFuZCBjb250YWluZXJzIGluIGFuIGVtYmVkZGVkIHBsYXRmb3JtLgoKU28sIGFj
dHVhbGx5IHdlIHdvdWxkIGJlIGdyYXRlZnVsIHRvIGtub3cgeW91ciBpZGVhcyBvbiB0aGUgYmVz
dAphcHByb2FjaCB0byBzb2x2ZSB0aGUgYWJvdmUgcHJvYmxlbSBzdGF0ZW1lbnQuCgpUaGFua3Mg
YWxyZWFkeSBmb3IgYWxsIHRoZSBoZWxwIHlvdSBoYXZlIHByb3ZpZGVkIHNvIGZhciAuLi4KCgpU
aGFua3MgYW5kIFJlZ2FyZHMsCkFqYXkKCj4KPiBDaGVlcnMsCj4KPiAtLQo+IEp1bGllbiBHcmFs
bAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9z
LWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0
cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 16:00:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 16:00:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f47Jl-0002mu-Ab; Thu, 05 Apr 2018 16:00:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f47Jk-0002mf-46
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 16:00:52 +0000
X-Inumbo-ID: b14ceb1d-38ea-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id b14ceb1d-38ea-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 16:02:08 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3A+7c7hRQjrwncbFcgqkg42CpojNpsv+yvbD5Q0YIu?=
 =?us-ascii?q?jvd0So/mwa6yZBKN2/xhgRfzUJnB7Loc0qyK6/umATRIyK3CmUhKSIZLWR4BhJ?=
 =?us-ascii?q?detC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+?=
 =?us-ascii?q?KPjrFY7OlcS30P2594HObwlSizexfb1/IA+qoQnNq8IbnZZsJqEtxxXTv3BGYf?=
 =?us-ascii?q?5WxWRmJVKSmxbz+MK994N9/ipTpvws6ddOXb31cKokQ7NYCi8mM30u683wqRbD?=
 =?us-ascii?q?VwqP6WACXWgQjxFFHhLK7BD+Xpf2ryv6qu9w0zSUMMHqUbw5Xymp4qF2QxHqlS?=
 =?us-ascii?q?gHLSY0/mHJhMJtgqxVoxWvqB5xw4PPfI2ZKOBzcr/HcN8GWWZMWNtaWSxbAoO7?=
 =?us-ascii?q?aosCF/QMPeFDr4nhplsOqwa1Cw+xBOP31z9Dm3j70rE90+Q6DQHG3QogE8gKsH?=
 =?us-ascii?q?TJtNX1KbwfXvyuzKXS1TXDcuhZ1S3n6IjPax0sp+yHU7FoccfJ1EUiGB7Jgk+T?=
 =?us-ascii?q?pIHlJT+ZyPoBvmqB4+duTe6jlmEqpxxrrjWsxsogkJfFi4wbx1ze6Cl0z5g5KN?=
 =?us-ascii?q?ulQ0Bhe9GkCoFftySCOotzRcMtXn9ntT4hyr0DpZ67ZC8KyIk7xxLHa/yIbYyI?=
 =?us-ascii?q?4hX7WeaPJDd3nnNleLalixmu6kis0PX8VtSv31pQtCpFlcHAtnEL1xPN9siKUu?=
 =?us-ascii?q?Zx80i81TqV1A3e6vtILV4qmafZMZIszKY8lp8JvkTCGi/2ll/2jKiTdkg85ueo?=
 =?us-ascii?q?7P/nYqnnpp+aLYN0jhz+MrwzmsGkHes4KRICX3CG+eunzrHj50r5TK1QjvIqiq?=
 =?us-ascii?q?nZrIzaJcMDq668Ag9V1Icj6xGkDzu/zdsXg2cHI0xBeB+ci4jpOkrOIOzjDful?=
 =?us-ascii?q?jFWjjjFry+rBPr37DZXHNmLDn6v5fbZh905czxI+zcte55JRDbEBJuj/WkzstN?=
 =?us-ascii?q?PGCB84MhK7w/z8BdV7yIwRRWaPDbWCP6/Ir1CI+7FnH+7ZYY4TuTHmbvQo+fPq?=
 =?us-ascii?q?pXs4gkMGO7mk290Qcn/rMO5hJhCyZmHwg9FJNXoSo0JqR+vxlFyEFzpOf2uaVL?=
 =?us-ascii?q?l6/iwxTpihW9SQDruxiaCMiX/oVqZdYXpLXwiB?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBA?=
 =?us-ascii?q?YUSKItfXo8TGpJVFIFmggWDCQKDQzQYAQIBAQEBAQECARMBAQEmV4I1IoJMAwN?=
 =?us-ascii?q?5ED8SVxmFEa41hFeDa4Ilhm+CTz+BDIJQBoRiFIV7Aoc7hDoLU4ptCIFfiSKDM?=
 =?us-ascii?q?oFKinGRJgIcN4FTMxpygkOCLo4jbIpWgkUBAQ?=
X-IPAS-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBAYUSKItfXo8TGpJ?=
 =?us-ascii?q?VFIFmggWDCQKDQzQYAQIBAQEBAQECARMBAQEmV4I1IoJMAwN5ED8SVxmFEa41h?=
 =?us-ascii?q?FeDa4Ilhm+CTz+BDIJQBoRiFIV7Aoc7hDoLU4ptCIFfiSKDMoFKinGRJgIcN4F?=
 =?us-ascii?q?TMxpygkOCLo4jbIpWgkUBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495084"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 19:00:47 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 6ED921A601A1;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id BZC2Pg-4GN91; Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 28CA51A6019D;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 1146D1A601A9;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 19:00:37 +0300
Message-Id: <1522944040-26938-5-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 4/7] lib/nolibc: Add type
 definitions for timer support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIG1pc3NpbmcgdHlwZXMgZm9yIHRpbWVyIHN1cHBvcnQgd2l0aCBub2xpYmMuCgpTaWduZWQt
b2ZmLWJ5OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgotLS0KIGxpYi9ub2xp
YmMvaW5jbHVkZS9zeXMvc2VsZWN0LmggICB8ICA1ICsrKy0KIGxpYi9ub2xpYmMvaW5jbHVkZS9z
eXMvdGltZS5oICAgICB8ICA4ICsrLS0tLS0KIGxpYi9ub2xpYmMvaW5jbHVkZS9zeXMvdGltZXNw
ZWMuaCB8IDUwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogbGliL25v
bGliYy9pbmNsdWRlL3N5cy90eXBlcy5oICAgIHwgIDYgKysrKysKIDQgZmlsZXMgY2hhbmdlZCwg
NjIgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIv
bm9saWJjL2luY2x1ZGUvc3lzL3RpbWVzcGVjLmgKCmRpZmYgLS1naXQgYS9saWIvbm9saWJjL2lu
Y2x1ZGUvc3lzL3NlbGVjdC5oIGIvbGliL25vbGliYy9pbmNsdWRlL3N5cy9zZWxlY3QuaAppbmRl
eCBiNWMzODliLi5jMGIyNTRlIDEwMDY0NAotLS0gYS9saWIvbm9saWJjL2luY2x1ZGUvc3lzL3Nl
bGVjdC5oCisrKyBiL2xpYi9ub2xpYmMvaW5jbHVkZS9zeXMvc2VsZWN0LmgKQEAgLTMyLDEyICsz
MiwxNSBAQAogI2lmbmRlZiBfX1NZU19TRUxFQ1RfSF9fCiAjZGVmaW5lIF9fU1lTX1NFTEVDVF9I
X18KIAotI2luY2x1ZGUgPHN5cy90aW1lLmg+CisjaW5jbHVkZSA8c3lzL3RpbWVzcGVjLmg+CiAK
ICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAorCit0eXBlZGVmIHVu
c2lnbmVkIGxvbmcgc2lnc2V0X3Q7CisKIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBfX2ZkX21hc2s7
CiAKIC8qCmRpZmYgLS1naXQgYS9saWIvbm9saWJjL2luY2x1ZGUvc3lzL3RpbWUuaCBiL2xpYi9u
b2xpYmMvaW5jbHVkZS9zeXMvdGltZS5oCmluZGV4IDNjNDU1ODEuLjFlZWVhMTAgMTAwNjQ0Ci0t
LSBhL2xpYi9ub2xpYmMvaW5jbHVkZS9zeXMvdGltZS5oCisrKyBiL2xpYi9ub2xpYmMvaW5jbHVk
ZS9zeXMvdGltZS5oCkBAIC00MiwxMyArNDIsOSBAQAogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAot
dHlwZWRlZiBsb25nIHRpbWVfdDsKLXR5cGVkZWYgbG9uZyBzdXNlY29uZHNfdDsKKyNpbmNsdWRl
IDxzeXMvdGltZXNwZWMuaD4KIAotc3RydWN0IHRpbWVzcGVjIHsKLQl0aW1lX3QgICAgICB0dl9z
ZWM7Ci0JbG9uZyAgICAgICAgdHZfbnNlYzsKLX07Cit0eXBlZGVmIGxvbmcgc3VzZWNvbmRzX3Q7
CiAKIHN0cnVjdCB0aW1lem9uZTsKIApkaWZmIC0tZ2l0IGEvbGliL25vbGliYy9pbmNsdWRlL3N5
cy90aW1lc3BlYy5oIGIvbGliL25vbGliYy9pbmNsdWRlL3N5cy90aW1lc3BlYy5oCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg5ZjFlZjUKLS0tIC9kZXYvbnVsbAorKysgYi9s
aWIvbm9saWJjL2luY2x1ZGUvc3lzL3RpbWVzcGVjLmgKQEAgLTAsMCArMSw1MCBAQAorLyogU1BE
WC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLworLyoKKyAqIEF1dGhvcnM6IENv
c3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+CisgKgorICogQ29weXJpZ2h0IChjKSAy
MDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQg
aG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogICAgdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCisgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqCisgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJ
TiBBTlkgV0FZLgorICovCisKKyNpZm5kZWYgX19TWVNfVElNRVNQRUNfSF9fCisjZGVmaW5lIF9f
U1lTX1RJTUVTUEVDX0hfXworCit0eXBlZGVmIGxvbmcgdGltZV90OworCitzdHJ1Y3QgdGltZXNw
ZWMgeworCXRpbWVfdCAgICAgIHR2X3NlYzsKKwlsb25nICAgICAgICB0dl9uc2VjOworfTsKKwor
c3RydWN0IGl0aW1lcnNwZWMgeworCXN0cnVjdCB0aW1lc3BlYyAgaXRfaW50ZXJ2YWw7CisJc3Ry
dWN0IHRpbWVzcGVjICBpdF92YWx1ZTsKK307CisKKyNlbmRpZiAvKiBfX1NZU19USU1FU1BFQ19I
X18gKi8KZGlmZiAtLWdpdCBhL2xpYi9ub2xpYmMvaW5jbHVkZS9zeXMvdHlwZXMuaCBiL2xpYi9u
b2xpYmMvaW5jbHVkZS9zeXMvdHlwZXMuaAppbmRleCAxZDYxZGM2Li44MzgzYTljIDEwMDY0NAot
LS0gYS9saWIvbm9saWJjL2luY2x1ZGUvc3lzL3R5cGVzLmgKKysrIGIvbGliL25vbGliYy9pbmNs
dWRlL3N5cy90eXBlcy5oCkBAIC00Nyw2ICs0NywxMiBAQCB0eXBlZGVmIF9fc3ogICBzaXplX3Q7
CiB0eXBlZGVmIF9fc3N6ICBzc2l6ZV90OwogdHlwZWRlZiBfX29mZiAgb2ZmX3Q7CiAKKyNpbmNs
dWRlIDxzeXMvc2VsZWN0Lmg+CisKK3R5cGVkZWYJdW5zaWduZWQgbG9uZyBjbG9ja2lkX3Q7CisK
K3R5cGVkZWYJdW5zaWduZWQgbG9uZyB0aW1lcl90OworCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0K
ICNlbmRpZgotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54
ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGlu
Zm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 16:00:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 16:00:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f47Jm-0002nO-By; Thu, 05 Apr 2018 16:00:54 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f47Jl-0002mo-9n
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 16:00:53 +0000
X-Inumbo-ID: b1b59dee-38ea-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id b1b59dee-38ea-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 16:02:09 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3A8XNCHhdiSRx3xoWajlqroTt5lGMj4u6mDksu8pMi?=
 =?us-ascii?q?zoh2WeGdxcS6Yh7h7PlgxGXEQZ/co6odzbaO6Oa4ASQp2tWoiDg6aptCVhsI24?=
 =?us-ascii?q?09vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFRrhKAF7?=
 =?us-ascii?q?Ovr6GpLIj8Swyuu+54Dfbx9HiTahb75+Ngm6oRnMvcQKnIVuLbo8xAHUqXVSYe?=
 =?us-ascii?q?RWwm1oJVOXnxni48q74YBu/SdNtf8/7sBMSar1cbg2QrxeFzQmLns65Nb3uhnZ?=
 =?us-ascii?q?TAuA/WUTX2MLmRdVGQfF7RX6XpDssivms+d2xSeXMdHqQb0yRD+v6bpgRh31hy?=
 =?us-ascii?q?cdLzM38H/ZhNF+gqxYpxyupRJ/zpXIbI2JLvdyYrnQcc8GSWdHQ81fVzZBAoS5?=
 =?us-ascii?q?b4YXEecBOv1Yr5X8p1sIsBCwAxSsBPvyyjRVgXL5wao60/89EQHH2gwsBdYOsG?=
 =?us-ascii?q?nMrNXoL6odTfu1wLPQzTXedPxawy396I/Rfx0nvPqCXqpwfNLMxUQgCg/JlFad?=
 =?us-ascii?q?pIz/Mz+LyOgAsXKX4uR4We6yhGMrtht9rzuvy8s2lIXEiIwYxkrZ+Sh23oo4I8?=
 =?us-ascii?q?CzRlRhbt6+CpRQsjmXN45xQsw/XW5loD06yrgauZ6jeygK1Ygnywbfa/OZd4iI?=
 =?us-ascii?q?5QruVPiUIThihXJlfKiziAqp8US60u38S9K73ExQripCitXMt3YN2ALP6sWfV/?=
 =?us-ascii?q?dw8Vqt1SyM2g3T8O1IP144mKjBJ5Mv2rIwk4AcsUXHHi/4gkX2i6qWe1049eiv?=
 =?us-ascii?q?8OTnfrTmppmGO49wlwH+Krkul9ejDuQjKAQOR3Wb9v+m2L35+k31WK9KgeEukq?=
 =?us-ascii?q?nFrJDaItwWpqu4Aw9T04Yj7A2/Ay6739sGg3kIMlZFdQmDj4joIFHOPOv4Ae2w?=
 =?us-ascii?q?gluyljdn3ffGPqfuAp/VNHjMjK/hfaph605b0Acz1tFf55dTCrEHOv7zWVLxu8?=
 =?us-ascii?q?LeDh44LQO02f3qCNNj2YwCXWKAGLSWPLnMvl+VtaoTJLyJZYkUvy24J/U76vrG?=
 =?us-ascii?q?iX4ihURbbaSvm5wNZyOWBPNjdm6eembthJ8lDH8X9l41S/f2iVvEVSNLel65RO?=
 =?us-ascii?q?Qk+zt9EoXwXtSLfZyknLHUhHTzJZZRfG0TUl0=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BeAAD4RsZajAPjVY1dHAEBAQQBAQoBA?=
 =?us-ascii?q?YQjbyiLX16PExqSVRSBZiaBX4MJAoNDNBgBAgEBAQEBAQIBEwEBASZLDII1IoJ?=
 =?us-ascii?q?MAwN5ED8SVxmFEa41hFeDa4Ilhm+CTz+BDIJQhGgEEIV7Aoc7hDoLU4ptCIFfg?=
 =?us-ascii?q?3SFLoMygUogilErkHsCHDeBUzMacoJDCYIXDgmLP4JbbIpWgkUBAQ?=
X-IPAS-Result: =?us-ascii?q?A2BeAAD4RsZajAPjVY1dHAEBAQQBAQoBAYQjbyiLX16PExq?=
 =?us-ascii?q?SVRSBZiaBX4MJAoNDNBgBAgEBAQEBAQIBEwEBASZLDII1IoJMAwN5ED8SVxmFE?=
 =?us-ascii?q?a41hFeDa4Ilhm+CTz+BDIJQhGgEEIV7Aoc7hDoLU4ptCIFfg3SFLoMygUogilE?=
 =?us-ascii?q?rkHsCHDeBUzMacoJDCYIXDgmLP4JbbIpWgkUBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495085"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 19:00:48 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id D92F21A601A1;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id BAzVgnlZg5aI; Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 28A531A6019B;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id BA5991A60195;
 Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 19:00:36 +0300
Message-Id: <1522944040-26938-4-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 3/7] plat/linuxu: Add linuxu
 (x86_64) timer support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2UgdXNlIHN5c190aW1lcl8qIHN5c2NhbGxzIGZvciB0aW1lciBzdXBwb3J0IG9uIHBsYXQvbGlu
dXh1LgoKU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4K
LS0tCiBwbGF0L2xpbnV4dS9NYWtlZmlsZS51ayAgICAgICAgICAgICAgICAgICAgIHwgIDEgKwog
cGxhdC9saW51eHUvaW5jbHVkZS9saW51eHUvc3lzY2FsbC14ODZfNjQuaCB8ICA2ICsrKysKIHBs
YXQvbGludXh1L2luY2x1ZGUvbGludXh1L3N5c2NhbGwuaCAgICAgICAgfCAyNyArKysrKysrKysr
KysrKysKIHBsYXQvbGludXh1L2luY2x1ZGUvbGludXh1L3RpbWUuaCAgICAgICAgICAgfCA0NSAr
KysrKysrKysrKysrKysrKysrKysrKysrCiBwbGF0L2xpbnV4dS90aW1lLmMgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgNTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KIDUgZmlsZXMg
Y2hhbmdlZCwgMTMwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEw
MDY0NCBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS90aW1lLmgKCmRpZmYgLS1naXQgYS9wbGF0
L2xpbnV4dS9NYWtlZmlsZS51ayBiL3BsYXQvbGludXh1L01ha2VmaWxlLnVrCmluZGV4IDhmMDdj
YjMuLjA1YjYzNzEgMTAwNjQ0Ci0tLSBhL3BsYXQvbGludXh1L01ha2VmaWxlLnVrCisrKyBiL3Bs
YXQvbGludXh1L01ha2VmaWxlLnVrCkBAIC0xOCw2ICsxOCw3IEBAIExJQkxJTlVYVVBMQVRfU1JD
Uy0kKEFSQ0hfWDg2XzMyKSArPSAkKExJQkxJTlVYVVBMQVRfQkFTRSkveDg2L2VudHJ5MzIuUwog
TElCTElOVVhVUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoTElCTElOVVhVUExBVF9CQVNF
KS94ODYvZW50cnk2NC5TCiBMSUJMSU5VWFVQTEFUX1NSQ1MtJChBUkNIX0FSTV8zMikgKz0gJChM
SUJMSU5VWFVQTEFUX0JBU0UpL2FybS9lbnRyeTMyLlMKIExJQkxJTlVYVVBMQVRfU1JDUy0kKEFS
Q0hfQVJNXzY0KSArPSAkKExJQkxJTlVYVVBMQVRfQkFTRSkvYXJtL2VudHJ5NjQuUworTElCTElO
VVhVUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkvbGNw
dS5jfGNvbW1vbgogTElCTElOVVhVUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCTElO
VVhVUExBVF9CQVNFKS9zZXR1cC5jCiBMSUJMSU5VWFVQTEFUX1NSQ1MteSAgICAgICAgICAgICAg
Kz0gJChMSUJMSU5VWFVQTEFUX0JBU0UpL2NvbnNvbGUuYwogTElCTElOVVhVUExBVF9TUkNTLXkg
ICAgICAgICAgICAgICs9ICQoTElCTElOVVhVUExBVF9CQVNFKS9zaHV0ZG93bi5jCmRpZmYgLS1n
aXQgYS9wbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxsLXg4Nl82NC5oIGIvcGxhdC9s
aW51eHUvaW5jbHVkZS9saW51eHUvc3lzY2FsbC14ODZfNjQuaAppbmRleCA1NjIyOTIxLi5lNThm
MjYwIDEwMDY0NAotLS0gYS9wbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxsLXg4Nl82
NC5oCisrKyBiL3BsYXQvbGludXh1L2luY2x1ZGUvbGludXh1L3N5c2NhbGwteDg2XzY0LmgKQEAg
LTUwLDYgKzUwLDEyIEBACiAjZGVmaW5lIF9fU0NfUlRfU0lHQUNUSU9OIDEzCiAjZGVmaW5lIF9f
U0NfUlRfU0lHUFJPQ01BU0sgMTQKIAorI2RlZmluZSBfX1NDX1RJTUVSX0NSRUFURSAyMjIKKyNk
ZWZpbmUgX19TQ19USU1FUl9TRVRUSU1FIDIyMworI2RlZmluZSBfX1NDX1RJTUVSX0dFVFRJTUUg
MjI0CisjZGVmaW5lIF9fU0NfVElNRVJfR0VUT1ZFUlJVTiAyMjUKKyNkZWZpbmUgX19TQ19USU1F
Ul9ERUxFVEUgMjI2CisKICNkZWZpbmUgX19TQ19QU0VMRUNUNiAyNzAKIAogLyogTk9URTogZnJv
bSBsaW51eC00LjYuMyAoYXJjaC94ODYvZW50cnkvZW50cnlfNjQuUyk6CmRpZmYgLS1naXQgYS9w
bGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxsLmggYi9wbGF0L2xpbnV4dS9pbmNsdWRl
L2xpbnV4dS9zeXNjYWxsLmgKaW5kZXggMmY0MTI1Yi4uODQxMWYzOSAxMDA2NDQKLS0tIGEvcGxh
dC9saW51eHUvaW5jbHVkZS9saW51eHUvc3lzY2FsbC5oCisrKyBiL3BsYXQvbGludXh1L2luY2x1
ZGUvbGludXh1L3N5c2NhbGwuaApAQCAtMTI4LDQgKzEyOCwzMSBAQCBzdGF0aWMgaW5saW5lIGlu
dCBzeXNfcHNlbGVjdDYoaW50IG5mZHMsCiAJCQkgICAgICAobG9uZykgc2lnbWFzayk7CiB9CiAK
K3N0YXRpYyBpbmxpbmUgaW50IHN5c190aW1lcl9jcmVhdGUoY2xvY2tpZF90IHdoaWNoX2Nsb2Nr
LAorCQlzdHJ1Y3QgdWtfc2lnZXZlbnQgKnRpbWVyX2V2ZW50X3NwZWMsIHRpbWVyX3QgKmNyZWF0
ZWRfdGltZXJfaWQpCit7CisJcmV0dXJuIChpbnQpIHN5c2NhbGwzKF9fU0NfVElNRVJfQ1JFQVRF
LAorCQkJICAgICAgKGxvbmcpIHdoaWNoX2Nsb2NrLAorCQkJICAgICAgKGxvbmcpIHRpbWVyX2V2
ZW50X3NwZWMsCisJCQkgICAgICAobG9uZykgY3JlYXRlZF90aW1lcl9pZCk7CisKK30KKworc3Rh
dGljIGlubGluZSBpbnQgc3lzX3RpbWVyX3NldHRpbWUodGltZXJfdCB0aW1lcmlkLCBpbnQgZmxh
Z3MsCisJCWNvbnN0IHN0cnVjdCBpdGltZXJzcGVjICp2YWx1ZSwgc3RydWN0IGl0aW1lcnNwZWMg
Km9sZHZhbHVlKQoreworCXJldHVybiAoaW50KSBzeXNjYWxsNChfX1NDX1RJTUVSX1NFVFRJTUUs
CisJCQkgICAgICAobG9uZykgdGltZXJpZCwKKwkJCSAgICAgIChsb25nKSBmbGFncywKKwkJCSAg
ICAgIChsb25nKSB2YWx1ZSwKKwkJCSAgICAgIChsb25nKSBvbGR2YWx1ZSk7CisKK30KKworc3Rh
dGljIGlubGluZSBpbnQgc3lzX3RpbWVyX2RlbGV0ZSh0aW1lcl90IHRpbWVyaWQpCit7CisJcmV0
dXJuIChpbnQpIHN5c2NhbGwxKF9fU0NfVElNRVJfREVMRVRFLAorCQkJICAgICAgKGxvbmcpIHRp
bWVyaWQpOworfQorCiAjZW5kaWYgLyogX19TWVNDQUxMX0hfXyAqLwpkaWZmIC0tZ2l0IGEvcGxh
dC9saW51eHUvaW5jbHVkZS9saW51eHUvdGltZS5oIGIvcGxhdC9saW51eHUvaW5jbHVkZS9saW51
eHUvdGltZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM2ZjEzNTcKLS0t
IC9kZXYvbnVsbAorKysgYi9wbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS90aW1lLmgKQEAgLTAs
MCArMSw0NSBAQAorLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwor
LyoKKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+CisgKgor
ICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1l
IG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiAgICBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbQorICogICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCisgKiBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqCisgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJB
Q1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgorICovCisjaWZuZGVmIF9fVElNRV9IX18KKyNk
ZWZpbmUgX19USU1FX0hfXworCisjZGVmaW5lIFRJTUVSX0lOVFZBTF9NU0VDICAgIDEwCisjZGVm
aW5lIFRJTUVSX1NJR05VTSAgICAgICAgIFNJR0FMUk0KKworCisvKiBQT1NJWCBkZWZpbml0aW9u
cyAqLworCisjZGVmaW5lIENMT0NLX1JFQUxUSU1FICAgICAgIDAKKworI2VuZGlmIC8qIF9fVElN
RV9IX18gKi8KZGlmZiAtLWdpdCBhL3BsYXQvbGludXh1L3RpbWUuYyBiL3BsYXQvbGludXh1L3Rp
bWUuYwppbmRleCA4YTk1YWI1Li5lMjU2ZWQ0IDEwMDY0NAotLS0gYS9wbGF0L2xpbnV4dS90aW1l
LmMKKysrIGIvcGxhdC9saW51eHUvdGltZS5jCkBAIC0xLDYgKzEsNyBAQAogLyogU1BEWC1MaWNl
bnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwogLyoKICAqIEF1dGhvcnM6IFNpbW9uIEt1
ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgorICogICAgICAgICAgQ29zdGluIEx1cHUg
PGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KICAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBF
dXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAg
LTMyLDEzICszMyw2MiBAQAogICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBFWFRSQUNURUQgT1Ig
TU9ESUZJRUQgSU4gQU5ZIFdBWS4KICAqLwogCisjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVk
ZSA8dWsvcGxhdC90aW1lLmg+CisjaW5jbHVkZSA8bGludXh1L3N5c2NhbGwuaD4KKyNpbmNsdWRl
IDxsaW51eHUvaXJxLmg+CisjaW5jbHVkZSA8bGludXh1L3RpbWUuaD4KKyNpbmNsdWRlIDxsaW51
eHUvYXNzZXJ0Lmg+CiAKKyNkZWZpbmUgVElNRVJfSU5UVkFMX05TRUMgICAgdWthcmNoX3RpbWVf
bXNlY190b19uc2VjKFRJTUVSX0lOVFZBTF9NU0VDKQorCisKK3N0YXRpYyB0aW1lcl90IHRpbWVy
aWQ7CitzdGF0aWMgX19uc2VjIHRpbWU7CisKKworX19uc2VjIHVrcGxhdF9tb25vdG9uaWNfY2xv
Y2sodm9pZCkKK3sKKwlyZXR1cm4gdGltZTsKK30KKworc3RhdGljIGludCB0aW1lcl9oYW5kbGVy
KHZvaWQgKmFyZyBfX3VudXNlZCkKK3sKKwl0aW1lICs9IFRJTUVSX0lOVFZBTF9OU0VDOworCisJ
LyogWWVzLCB3ZSBoYW5kbGVkIHRoZSBpcnEuICovCisJcmV0dXJuIDE7Cit9CisKKworLyogbXVz
dCBiZSBjYWxsZWQgYmVmb3JlIGludGVycnVwdHMgYXJlIGVuYWJsZWQgKi8KIHZvaWQgdWtwbGF0
X3RpbWVfaW5pdCh2b2lkKQogewotCS8qIFRPRE8gKi8KKwlzdHJ1Y3QgdWtfc2lnZXZlbnQgc2ln
ZXY7CisJc3RydWN0IGl0aW1lcnNwZWMgaXRzOworCWludCByYzsKKworCWlycV9yZWdpc3RlcihU
SU1FUl9TSUdOVU0sIHRpbWVyX2hhbmRsZXIsIE5VTEwpOworCisJbWVtc2V0KCZzaWdldiwgMCwg
c2l6ZW9mKHNpZ2V2KSk7CisJc2lnZXYuc2lnZXZfbm90aWZ5ID0gMDsKKwlzaWdldi5zaWdldl9z
aWdubyA9IFRJTUVSX1NJR05VTTsKKwlzaWdldi5zaWdldl92YWx1ZS5zaXZhbF9wdHIgPSAmdGlt
ZXJpZDsKKworCXJjID0gc3lzX3RpbWVyX2NyZWF0ZShDTE9DS19SRUFMVElNRSwgJnNpZ2V2LCAm
dGltZXJpZCk7CisJTElOVVhVX0FTU0VSVChyYywgMCk7CisKKwkvKiBJbml0aWFsIGV4cGlyYXRp
b24gKi8KKwlpdHMuaXRfdmFsdWUudHZfc2VjICA9IFRJTUVSX0lOVFZBTF9OU0VDIC8gdWthcmNo
X3RpbWVfc2VjX3RvX25zZWMoMSk7CisJaXRzLml0X3ZhbHVlLnR2X25zZWMgPSBUSU1FUl9JTlRW
QUxfTlNFQyAlIHVrYXJjaF90aW1lX3NlY190b19uc2VjKDEpOworCS8qIFRpbWVyIGludGVydmFs
ICovCisJaXRzLml0X2ludGVydmFsID0gaXRzLml0X3ZhbHVlOworCisJcmMgPSBzeXNfdGltZXJf
c2V0dGltZSh0aW1lcmlkLCAwLCAmaXRzLCBOVUxMKTsKKwlMSU5VWFVfQVNTRVJUKHJjLCAwKTsK
IH0KIAogdm9pZCB1a3BsYXRfdGltZV9maW5pKHZvaWQpCiB7CisJc3lzX3RpbWVyX2RlbGV0ZSh0
aW1lcmlkKTsKIH0KLS0gCjIuMS40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlz
dHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xp
c3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 16:00:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 16:00:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f47Jl-0002mp-8w; Thu, 05 Apr 2018 16:00:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f47Jj-0002md-VJ
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 16:00:51 +0000
X-Inumbo-ID: afca0b6f-38ea-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id afca0b6f-38ea-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 16:02:06 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3AvNCeRxW7Mnl1cHOxGVOIBcoRn8vV8LGtZVwlr6E/?=
 =?us-ascii?q?grcLSJyIuqrYbBSBt8tkgFKBZ4jH8fUM07OQ7/i7HzRYqb+681k6OKRWUBEEjc?=
 =?us-ascii?q?hE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAAjwOhRo?=
 =?us-ascii?q?LerpBIHSk9631+ev8JHPfglEnjWwba98IRmssQndqtQdjJd/JKo21hbHuGZDdf?=
 =?us-ascii?q?5MxWNvK1KTnhL86dm18ZV+7SleuO8v+tBZX6nicKs2UbJXDDI9M2Ao/8LrrgXM?=
 =?us-ascii?q?TRGO5nQHTGoblAdDDhXf4xH7WpfxtTb6tvZ41SKHM8D6Uaw4VDK/5KptVRTmij?=
 =?us-ascii?q?oINyQh/W/XlMJ+kaxVrhGmqRN9zY7Ze52ZOOZkc6/BZ94WWXZNU8BMXCJBGIO8?=
 =?us-ascii?q?aI4PAvIfMOZftIn9u1oOrR2jDgeqGePv0iJIjWLx0KIm1OQhCh3G3A0mH94UtH?=
 =?us-ascii?q?TUsc31NLoJXO+p16nE1y3Db+5N1jvn8ojIdQksrPeRVrxzacrc0VQjGgzYglmK?=
 =?us-ascii?q?qoHoPymZ2voTv2WZ9eZtW/qjh3Mopg1suDSixcchhpPXio8bxF3I7zh1zYkrKd?=
 =?us-ascii?q?C+VUV1e8SrEIFKuCGfL4Z2R8QiTHx2tysi0b0GvIK7fDANyJQ62x7Tc/yHfJaM?=
 =?us-ascii?q?4hLkTOuRPzJ4i2hkeLK7nRq97VOgxvfkVsmpy1lGtDBFkt7UunAM0Rzc9NSHR+?=
 =?us-ascii?q?Ng8kquxDqDzQPe5+FeLUwqi6bWKYQtz7AompoWq0vDHyv2mEvsjK+Rc0Up4vSn?=
 =?us-ascii?q?6+P8YrX6p5+cMZV4igXjMqQ2h8yyGvg3MhMUU2iD5OSzz6fv/Vf+QLlSlP05jr?=
 =?us-ascii?q?HZsIzGJcQcvqO5Bg5V0oAi6xa4FDeqyckXkmcZLF1bfBKKlIzpO1DVIPDkFvez?=
 =?us-ascii?q?mVutnyltx/zcOb3hGJrNJGDZkLj9ZbZ991JcyA0rwNBE5pJUD7YBIPTpVk/yqd?=
 =?us-ascii?q?zXEBk5Mg2qzOb9E9h90J0RVn6LAqCDK6zeq0GH5v98a9WLMYoUvjf6ML0p6uDj?=
 =?us-ascii?q?iVc9mEQBZu+50J1Rb2q3Tdp8JEDMSn33ntYHWUMXphd2GOftk0GDV3hXem6vd6?=
 =?us-ascii?q?knoCkmAsS8CtGQFciWnLWd0XLjTdVtbWdcBwXUHA=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBA?=
 =?us-ascii?q?YUSKItfXo8TGpJVFIFmggWDCQKDQzQYAQIBAQEBAQECARMBAQEmV4I1IoJMAwN?=
 =?us-ascii?q?5ED8SVxmFEa41hFeDa4Ilhm+CTz+BDIJQhGgUc4UIAoc7hDoLU4ptCIFfiSKDM?=
 =?us-ascii?q?oFKinGRJgIcN4FTMxpygkOCLo4jbIpWgkUBAQ?=
X-IPAS-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBAYUSKItfXo8TGpJ?=
 =?us-ascii?q?VFIFmggWDCQKDQzQYAQIBAQEBAQECARMBAQEmV4I1IoJMAwN5ED8SVxmFEa41h?=
 =?us-ascii?q?FeDa4Ilhm+CTz+BDIJQhGgUc4UIAoc7hDoLU4ptCIFfiSKDMoFKinGRJgIcN4F?=
 =?us-ascii?q?TMxpygkOCLo4jbIpWgkUBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495082"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 19:00:47 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id CCC171A601A1;
 Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id H8DIDRv7tT2v; Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 908011A6019E;
 Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 6611E1A60198;
 Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 19:00:34 +0300
Message-Id: <1522944040-26938-2-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 1/7] plat/linuxu: Add assert.h
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIExpbnV4IGFzc2VydGlvbnMgZm9yIHZlcmlmeWluZyByZXR1cm4gdmFsdWVzIG9mIHN5c2Nh
bGxzLgoKU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4K
LS0tCiBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9hc3NlcnQuaCB8IDU5ICsrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA1OSBpbnNlcnRpb25z
KCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9saW51eHUvaW5jbHVkZS9saW51eHUvYXNzZXJ0
LmgKCmRpZmYgLS1naXQgYS9wbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9hc3NlcnQuaCBiL3Bs
YXQvbGludXh1L2luY2x1ZGUvbGludXh1L2Fzc2VydC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjVmYTUxZTIKLS0tIC9kZXYvbnVsbAorKysgYi9wbGF0L2xpbnV4dS9pbmNs
dWRlL2xpbnV4dS9hc3NlcnQuaApAQCAtMCwwICsxLDU5IEBACisvKiBTUERYLUxpY2Vuc2UtSWRl
bnRpZmllcjogQlNELTMtQ2xhdXNlICovCisvKgorICogQXV0aG9yczogQ29zdGluIEx1cHUgPGNv
c3Rpbi5sdXB1QGNzLnB1Yi5ybz4KKyAqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJv
cGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xkZXIgbm9yIHRo
ZSBuYW1lcyBvZiBpdHMKKyAqICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiAgICB0aGlzIHNvZnR3YXJlIHdp
dGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRP
UlMgIkFTIElTIgorICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAq
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBP
UiBDT05UUklCVVRPUlMgQkUKKyAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUKKyAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICoKKyAqIFRI
SVMgSEVBREVSIE1BWSBOT1QgQkUgRVhUUkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCisg
Ki8KKyNpZm5kZWYgX19BU1NFUlRfSF9fCisjZGVmaW5lIF9fQVNTRVJUX0hfXworCisjaW5jbHVk
ZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8dWsvYXNzZXJ0Lmg+CisKKyNpZiBIQVZFX0xJQkMKKyNk
ZWZpbmUgVUtfQ1JBU0hfRVJST1IocmMpIFwKKwlkbyB7IFwKKwkJaWYgKChyYykgPCAwKSBcCisJ
CQlVS19DUkFTSCgiJXNcbiIsIHN0cmVycm9yKC1yYykpOyBcCisJCWVsc2UgXAorCQkJVUtfQ1JB
U0goIlVuZXhwZWN0ZWQgcmV0dXJuIHZhbHVlOiAlZFxuIiwgKHJjKSk7IFwKKwl9IHdoaWxlICgw
KQorI2Vsc2UKKyNkZWZpbmUgVUtfQ1JBU0hfRVJST1IocmMpIFwKKwlVS19DUkFTSCgiVW5leHBl
Y3RlZCByZXR1cm4gdmFsdWU6ICVkXG4iLCAocmMpKQorI2VuZGlmCisKKyNkZWZpbmUgTElOVVhV
X0FTU0VSVChyYywgZXhwZWN0ZWQpIFwKKwlkbyB7IFwKKwkJaWYgKChyYykgIT0gKGV4cGVjdGVk
KSkgXAorCQkJVUtfQ1JBU0hfRVJST1IocmMpOyBcCisJfSB3aGlsZSAoMCkKKworI2VuZGlmIC8q
IF9fQVNTRVJUX0hfXyAqLwotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZl
bEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxt
YW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 16:00:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 16:00:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f47Jm-0002nT-Db; Thu, 05 Apr 2018 16:00:54 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f47Jl-0002mn-B4
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 16:00:53 +0000
X-Inumbo-ID: 6ab24fd3-38ea-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 6ab24fd3-38ea-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 18:00:11 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3AMibg9RJ1p+OrQxv+s9mcpTZWNBhigK39O0sv0rFi?=
 =?us-ascii?q?tYgeKv7xwZ3uMQTl6Ol3ixeRBMOHs6kC07KempujcFRI2YyGvnEGfc4EfD4+ou?=
 =?us-ascii?q?JSoTYdBtWYA1bwNv/gYn9yNs1DUFh44yPzahANS47xaFLIv3K98yMZFAnhOgpp?=
 =?us-ascii?q?POT1HZPZg9iq2+yo9JDffwtFiCChbb9uMR67sRjfus4KjIV4N60/0AHJonxGe+?=
 =?us-ascii?q?RXwWNnO1eelAvi68mz4ZBu7T1et+ou+MBcX6r6eb84TaFDAzQ9L281/szrugLd?=
 =?us-ascii?q?QgaJ+3ART38ZkhtMAwjC8RH6QpL8uTb0u+ZhxCWXO9D9QLYpUjqg8qhrUgflhi?=
 =?us-ascii?q?cZOTAk/m/Zict+gblHrB69vRFz35TZbJ2JOPd4Y6jTfckaRW1EXstJSSFBBZi8?=
 =?us-ascii?q?b5cOD+oHIO1WqZT9p0MTrRCjAgSjGOTvyiRUhn/32602yeAhERze3Aw9BN8BrG?=
 =?us-ascii?q?/UoM/tNKcPSu+51rPIzTLaYv5QxDzz65DIfwg8rfyDQL58a8ncxEk1Gw/bkFmd?=
 =?us-ascii?q?q5bpMj2N2ugQvGWX8vBsWOGvhmI9tQ18rDaiyt0xhoTGmI4YzE3P+z9jz4YvP9?=
 =?us-ascii?q?K4TVZ2YdujEJRNqS6XL5B2QsY+Q2FwvyY616EGtYa7fCcUzJQnwAbSa+KCc4eS?=
 =?us-ascii?q?4xLjUPydLitjhH5/YLK/mg29/VK6yu37TsW00VBKoTRZktTUq3wA2AHf5tKER/?=
 =?us-ascii?q?Z95EutxyiD2gLJ5uxKOUw0kLDUK58lwr4+jJoTtkHDEzfql0Xxl6+WakQk+u6y?=
 =?us-ascii?q?5+Tjf7XmvoKcOpRohQHlKKgugtG/Dv8iPggUWGiX4f6826H7/U3lXLVKieU7kq?=
 =?us-ascii?q?zYsJDcJMQbobW5DxZI3Yk99RawETOm3c8cnXkGN1JFZAmHg5LmOl7QJvD0F/C/?=
 =?us-ascii?q?g06jkD1z3fDJIqXhAonRLnjEiLrhZrd960tbyAo119xf5I9UBa8HIPPyREDxrs?=
 =?us-ascii?q?fVDhknPAOox+boEs5y2pkAVmKSUeelN/bXsFmJ4flqL+SSaYs9vDfmN+Nj9/Po?=
 =?us-ascii?q?y3gjlgwzZ66siLAQc2y5GLxCPl2EKS7nhcwdEGFMuhcmUcThkxuaTDQVfXHkDP?=
 =?us-ascii?q?F03S0yFI/zVdSLfYuqmrHUhCo=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBA?=
 =?us-ascii?q?YQjbyiLX16PLZJVgXomhGiDRTQYAQIBAQEBAQECARMBAQEmSwyCNSKDS0+GE64?=
 =?us-ascii?q?1hFeDa4IliT4/iUuFCAKMU4ptCIFfg3SIYIFqilGRJgIcN4FTMxqDNQmBYgFCi?=
 =?us-ascii?q?0iCW2yNGwEB?=
X-IPAS-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBAYQjbyiLX16PLZJ?=
 =?us-ascii?q?VgXomhGiDRTQYAQIBAQEBAQECARMBAQEmSwyCNSKDS0+GE641hFeDa4IliT4/i?=
 =?us-ascii?q?UuFCAKMU4ptCIFfg3SIYIFqilGRJgIcN4FTMxqDNQmBYgFCi0iCW2yNGwEB?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495081"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 19:00:47 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id C92BE1A601A0;
 Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id tXisvur6MEkO; Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 8959B1A6019B;
 Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 1DF3D1A60195;
 Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 19:00:33 +0300
Message-Id: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
Subject: [Minios-devel] [UNIKRAFT PATCH 0/7] Enable scheduling on linuxu
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIGN1cnJlbnQgcGF0Y2ggc2VyaWVzIGFkZCBpbnRlcnJ1cHRzIGFuZCB0aW1lciBzdXBwb3J0
IG9uIGxpbnV4dSwgbmVlZGVkIGZvcgplbmFibGluZyBzY2hlZHVsaW5nIG9uIGxpbnV4dS4KCkNv
c3RpbiBMdXB1ICg3KToKICBwbGF0L2xpbnV4dTogQWRkIGFzc2VydC5oCiAgcGxhdC9saW51eHU6
IEFkZCBsaW51eHUgKHg4Nl82NCkgaW50ZXJydXB0cyBzdXBwb3J0CiAgcGxhdC9saW51eHU6IEFk
ZCBsaW51eHUgKHg4Nl82NCkgdGltZXIgc3VwcG9ydAogIGxpYi9ub2xpYmM6IEFkZCB0eXBlIGRl
ZmluaXRpb25zIGZvciB0aW1lciBzdXBwb3J0CiAgcGxhdC9saW51eHU6IEFkZCBsaW51eHUgKEFS
TSkgaW50ZXJydXB0cyBzdXBwb3J0CiAgcGxhdC9saW51eHU6IEFkZCBsaW51eHUgKEFSTSkgdGlt
ZXIgc3VwcG9ydAogIHBsYXQvbGludXh1OiBBZGQgc2NoZWR1bGluZyBzdXBwb3J0IGZvciB4ODZf
NjQKCiBsaWIvbm9saWJjL2luY2x1ZGUvc3lzL3NlbGVjdC5oICAgICAgICAgICAgIHwgICA1ICst
CiBsaWIvbm9saWJjL2luY2x1ZGUvc3lzL3RpbWUuaCAgICAgICAgICAgICAgIHwgICA4ICstCiBs
aWIvbm9saWJjL2luY2x1ZGUvc3lzL3RpbWVzcGVjLmggICAgICAgICAgIHwgIDUwICsrKysrKysr
CiBsaWIvbm9saWJjL2luY2x1ZGUvc3lzL3R5cGVzLmggICAgICAgICAgICAgIHwgICA2ICsKIHBs
YXQvbGludXh1L01ha2VmaWxlLnVrICAgICAgICAgICAgICAgICAgICAgfCAgMTAgKysKIHBsYXQv
bGludXh1L2luY2x1ZGUvbGludXh1L2Fzc2VydC5oICAgICAgICAgfCAgNTkgKysrKysrKysrCiBw
bGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9pcnEuaCAgICAgICAgICAgIHwgIDUwICsrKysrKysr
CiBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zaWduYWwuaCAgICAgICAgIHwgMTUxICsrKysr
KysrKysrKysrKysrKysrKysrCiBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxsLWFy
bV8zMi5oIHwgIDEwICsrCiBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxsLXg4Nl82
NC5oIHwgIDEwICsrCiBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxsLmggICAgICAg
IHwgIDUxICsrKysrKystCiBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS90aW1lLmggICAgICAg
ICAgIHwgIDQ1ICsrKysrKysKIHBsYXQvbGludXh1L2lycS5jICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAxODMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogcGxhdC9saW51eHUvbGNw
dS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA2MyArKysrKysrLS0tCiBwbGF0L2xpbnV4
dS90aW1lLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUyICsrKysrKystCiAxNSBmaWxl
cyBjaGFuZ2VkLCA3MjkgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9k
ZSAxMDA2NDQgbGliL25vbGliYy9pbmNsdWRlL3N5cy90aW1lc3BlYy5oCiBjcmVhdGUgbW9kZSAx
MDA2NDQgcGxhdC9saW51eHUvaW5jbHVkZS9saW51eHUvYXNzZXJ0LmgKIGNyZWF0ZSBtb2RlIDEw
MDY0NCBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9pcnEuaAogY3JlYXRlIG1vZGUgMTAwNjQ0
IHBsYXQvbGludXh1L2luY2x1ZGUvbGludXh1L3NpZ25hbC5oCiBjcmVhdGUgbW9kZSAxMDA2NDQg
cGxhdC9saW51eHUvaW5jbHVkZS9saW51eHUvdGltZS5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgcGxh
dC9saW51eHUvaXJxLmMKCi0tIAoyLjEuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVs
QGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1h
bi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 16:00:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 16:00:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f47Jm-0002na-FF; Thu, 05 Apr 2018 16:00:54 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f47Jl-0002n7-Mk
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 16:00:53 +0000
X-Inumbo-ID: 6cbf8f60-38ea-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 6cbf8f60-38ea-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 18:00:13 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3AxSPPxh0v9+RrW27qsmDT+DRfVm0co7zxezQtwd8Z?=
 =?us-ascii?q?seIWLPad9pjvdHbS+e9qxAeQG9mDsLQc06L/iOPJYSQ4+5GPsXQPItRndiQuro?=
 =?us-ascii?q?EopTEmG9OPEkbhLfTnPGQQFcVGU0J5rTngaRAGUMnxaEfPrXKs8DUcBgvwNRZv?=
 =?us-ascii?q?JuTyB4Xek9m72/q99pHPbQhEniaxba9vJxiqsAvdsdUbj5F/Iagr0BvJpXVIe+?=
 =?us-ascii?q?VSxWx2IF+Yggjx6MSt8pN96ipco/0u+dJOXqX8ZKQ4UKdXDC86PGAv5c3krgfM?=
 =?us-ascii?q?QA2S7XYBSGoWkx5IAw/Y7BHmW5r6ryX3uvZh1CScIMb7S60/Vza/4KdxUBLmiD?=
 =?us-ascii?q?kJOSM3/m/UjcJ/jqxbrQm9qxBj2YPYfJuYOOZicq7bYNgURXBBXsFUVyFZHI68?=
 =?us-ascii?q?aJAPD/YAPeZesoLzoUYOrQOjBQKxA+7g1jhIhmTq3a071eQtCwXG3BE4H9ITq3?=
 =?us-ascii?q?nbsM71OL0KUeCo16bE1y/Db/RP1Dr79YPGcQghrOmRUb9/bMbd00oiGgPfglmO?=
 =?us-ascii?q?t4DoPSmZ2+oVv2SG4OdsSPijhm0npg1rvDSiyMkhhpPUio8a1FzJ8zhyzpwvKt?=
 =?us-ascii?q?2iUkF7ZMapEJ5Xty6HKYR7WtgiQ2R0uCYizb0GpIK7cDAKyJs5wx7fbOSKc5aN?=
 =?us-ascii?q?4h35VeaRJS10i25+eL6lnxay7FOvxvfmVsmzyFpKryxFncfQtn0VyhDe5dWLRu?=
 =?us-ascii?q?F+80qhwzqDyR7f5+NeLU06jabbLoQuwr80lpodq0TDGSr2lV3qg6+RbUUk5umo?=
 =?us-ascii?q?6+L9brXiu5+cL5J0hxriPaQ1gMC/Gfk4PRMUU2iB/uSwzKfj8lHhQLVWkv02lb?=
 =?us-ascii?q?HUsJXbJcQdp665BBRV3p8+5BmhETepztAYkGIDLFJEYxKHk5PpN0vBIf/mC/ez?=
 =?us-ascii?q?mVOskC1kx/reJL3uHo3NLmTfkLfmZbt98E9cyA80zdBZ/Z5UCawBL+z1Wk7wqt?=
 =?us-ascii?q?PYFAQ0MwqqzOn7DNVyzJgRVXiRDa+EY+vutgqN5+QuJPLJaIILtTLVL/k+++Wo?=
 =?us-ascii?q?nXI/31gHcvqHx5wSPVu/BehnJQ29fGLxyoMKFnwWvwx4SPHylXWJSnhLenz0Ra?=
 =?us-ascii?q?VqtWJzM56vEYqWHtPlu7eGxiruRpA=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBA?=
 =?us-ascii?q?YUSKItfXo8tklWBeoUOAoNDNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3kQHSI?=
 =?us-ascii?q?SSQ4ZhRGuNYRXg2uCJYk+P4EMiD+FCAKMU4ptCIFfjFSMO5EmAhw3gVMzGoM1g?=
 =?us-ascii?q?iAOCY4abI0bAQE?=
X-IPAS-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBAYUSKItfXo8tklW?=
 =?us-ascii?q?BeoUOAoNDNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3kQHSISSQ4ZhRGuNYRXg?=
 =?us-ascii?q?2uCJYk+P4EMiD+FCAKMU4ptCIFfjFSMO5EmAhw3gVMzGoM1giAOCY4abI0bAQE?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495086"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 19:00:48 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id EE2DC1A6019E;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id EPUvelj3LA1A; Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id 687621A60195;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 51D951A601A0;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 19:00:38 +0300
Message-Id: <1522944040-26938-6-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 5/7] plat/linuxu: Add linuxu (ARM)
 interrupts support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Q2hhbmdlczoKLSBBUk0gc3lzY2FsbCBudW1iZXJzIGZvciBTSUdBQ1RJT04gYW5kIFNJR1BST0NN
QVNLCi0gQVJNIGFzbSByZXN0b3JlcgoKU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rp
bi5sdXB1QGNzLnB1Yi5ybz4KLS0tCiBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxs
LWFybV8zMi5oIHwgNCArKysrCiBwbGF0L2xpbnV4dS9pcnEuYyAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgNyArKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKykKCmRp
ZmYgLS1naXQgYS9wbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxsLWFybV8zMi5oIGIv
cGxhdC9saW51eHUvaW5jbHVkZS9saW51eHUvc3lzY2FsbC1hcm1fMzIuaAppbmRleCBlMjgyMjRk
Li41YzFhOTE5IDEwMDY0NAotLS0gYS9wbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxs
LWFybV8zMi5oCisrKyBiL3BsYXQvbGludXh1L2luY2x1ZGUvbGludXh1L3N5c2NhbGwtYXJtXzMy
LmgKQEAgLTQ2LDYgKzQ2LDEwIEBACiAjZGVmaW5lIF9fU0NfTVVOTUFQICAgIDkxCiAjZGVmaW5l
IF9fU0NfRVhJVCAgICAgICAxCiAjZGVmaW5lIF9fU0NfSU9DVEwgICAgIDU0CisKKyNkZWZpbmUg
X19TQ19SVF9TSUdBQ1RJT04gNDMKKyNkZWZpbmUgX19TQ19SVF9TSUdQUk9DTUFTSyAxMjYKKwog
I2RlZmluZSBfX1NDX1BTRUxFQ1Q2IDMzNQogCiAvKiBOT1RFOiBmcm9tIGBtYW4gc3lzY2FsbGA6
CmRpZmYgLS1naXQgYS9wbGF0L2xpbnV4dS9pcnEuYyBiL3BsYXQvbGludXh1L2lycS5jCmluZGV4
IDRkYmRkMjAuLjFhOWNkNjcgMTAwNjQ0Ci0tLSBhL3BsYXQvbGludXh1L2lycS5jCisrKyBiL3Bs
YXQvbGludXh1L2lycS5jCkBAIC0xMDYsNyArMTA2LDE0IEBAIHZvaWQgaXJxX3Jlc3RvcmUodW5z
aWduZWQgbG9uZyBmbGFncykKIH0KIAogdm9pZCBfX3Jlc3RvcmVyKCk7CisKKyNpZiBkZWZpbmVk
IF9fWDg2XzY0X18KIGFzbSgiX19yZXN0b3Jlcjptb3YgJDE1LCVyYXhcbnN5c2NhbGwiKTsKKyNl
bGlmIGRlZmluZWQgX19BUk1fMzJfXworYXNtKCJfX3Jlc3RvcmVyOm1vdiByNywgIzB4NzdcbnN3
aSAweDAiKTsKKyNlbHNlCisjZXJyb3IgIlVuc3VwcG9ydGVkIGFyY2hpdGVjdHVyZSIKKyNlbmRp
ZgogCiB2b2lkIGlycV9yZWdpc3RlcihpbnQgaXJxLCBpcnFfaGFuZGxlcl9mdW5jX3QgZnVuYywg
dm9pZCAqYXJnKQogewotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4v
bGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 16:00:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 16:00:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f47Jm-0002nf-Gh; Thu, 05 Apr 2018 16:00:54 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f47Jl-0002nF-UV
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 16:00:53 +0000
X-Inumbo-ID: 6d669a67-38ea-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 6d669a67-38ea-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 18:00:14 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3AAD8imRaGrLH7o3x58LKupO//LSx+4OfEezUN459i?=
 =?us-ascii?q?sYplN5qZr8y8bnLW6fgltlLVR4KTs6sC17KN9fi4EUU7or+5+EgYd5JNUxJXwe?=
 =?us-ascii?q?43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRp?=
 =?us-ascii?q?OOv1BpTSj8Oq3Oyu5pHfeQpFiCazbL9oMBm6sRjau9ULj4dlNqs/0AbCrGFSe+?=
 =?us-ascii?q?RRy2NoJFaTkAj568yt4pNt8Dletuw4+cJYXqr0Y6o3TbpDDDQ7KG81/9HktQPC?=
 =?us-ascii?q?TQSU+HQRVHgdnwdSDAjE6BH6WYrxsjf/u+Fg1iSWIdH6QLYpUjmk8qxlSgLniD?=
 =?us-ascii?q?0fOjA57m/Zl8J+gqFcrh2jqRxy2JLYbJ2POfZiZK7RYc8WSGxcVchRTSxBBYa8?=
 =?us-ascii?q?YpMRAuoGJuZYs4j9p10TphW4GAmsHP7vwSJPi3Dq2q06yPghEQDA3AA6G9IOrW?=
 =?us-ascii?q?zUrMjuOagOSuC51rHIzSjYYP9Mwzf975HFfxY8qv+PRbJ9adfdxEYyGw/fjVid?=
 =?us-ascii?q?qZbpMy2L2ukPqWSW4fJsWf+ghmI6sQ18oTiiyt0yhoTHiI8Z0E3I+CpnzIszON?=
 =?us-ascii?q?a2UlR0YcS+H5tVryyaMox2Td48TGxwoyY6z6EGuYa8fCgX1JQr3x7fZOKDc4iP?=
 =?us-ascii?q?+h/jSuORLi15hHJhYr6wmw2y/VK4yu3hTca4ykxKri1dntnNsHACyQDT59CaRv?=
 =?us-ascii?q?Zy40utwzWC2gDJ5u1aP0w5l7DXJpA5zr41jJUTsEDDHiHsmEXxia+bblkr+u+z?=
 =?us-ascii?q?6+T7Y7XmoIWQN4tpigHmL6QjgdCwAf8iPggWQmiU4v6w1Kfk/UHhWrVFkuU2kr?=
 =?us-ascii?q?XFsJDdPckbo6+5AwlU0oYk8BazFiqp38oGnXYZKFJIYxaHj4nyO1HSO/D0F/i+?=
 =?us-ascii?q?jEqqkDtxwPDGJLLhCI3XLnffiLfhYap960lExQoozNBf4pVUCrcbLPLwR0/+qt?=
 =?us-ascii?q?rYDx4nPAyu2OvnDsty2Z8aWW2VGaCVKr3dsULbrt4oduyNYo4So3PxJuYo49bq?=
 =?us-ascii?q?jGQlghkNcK/v2oEYO16iGfEzCEKCfXvqyvMcCXpC6gE5V/DrjhuGTCZOT32pGb?=
 =?us-ascii?q?oh7HchD9T1Xs/4WomxjenZj2+AFZpMazUeBw=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBA?=
 =?us-ascii?q?YQjbyiLX16PLZJVgXomgV+DCQKDQzQYAQIBAQEBAQECARMBAQEmSwyCNSKCTAM?=
 =?us-ascii?q?DeRA/ElcZhRGuNYRXg2uCJYk+P4lLhQgCjFOKbQiBX4N0iGCBaopRK5B7Ahw3g?=
 =?us-ascii?q?VMzGoM1CYIli0iCW2yNGwEB?=
X-IPAS-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBAYQjbyiLX16PLZJ?=
 =?us-ascii?q?VgXomgV+DCQKDQzQYAQIBAQEBAQECARMBAQEmSwyCNSKCTAMDeRA/ElcZhRGuN?=
 =?us-ascii?q?YRXg2uCJYk+P4lLhQgCjFOKbQiBX4N0iGCBaopRK5B7Ahw3gVMzGoM1CYIli0i?=
 =?us-ascii?q?CW2yNGwEB?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495088"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 19:00:48 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 280041A6019B;
 Thu,  5 Apr 2018 19:00:48 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id IVtfOAaiWkHt; Thu,  5 Apr 2018 19:00:48 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id C0BA21A6019D;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id A5E0E1A601A0;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 19:00:40 +0300
Message-Id: <1522944040-26938-8-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 7/7] plat/linuxu: Add scheduling
 support for x86_64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2UgYXJlIHVzaW5nIHRoZSBzb2Z0d2FyZSBjb250ZXh0IGZvciBzY2hlZHVsaW5nIG9uIHBsYXQv
bGludXh1LgoKU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5y
bz4KLS0tCiBwbGF0L2xpbnV4dS9NYWtlZmlsZS51ayB8IDcgKysrKysrKwogMSBmaWxlIGNoYW5n
ZWQsIDcgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3BsYXQvbGludXh1L01ha2VmaWxlLnVr
IGIvcGxhdC9saW51eHUvTWFrZWZpbGUudWsKaW5kZXggMDViNjM3MS4uZDE3YTBiNiAxMDA2NDQK
LS0tIGEvcGxhdC9saW51eHUvTWFrZWZpbGUudWsKKysrIGIvcGxhdC9saW51eHUvTWFrZWZpbGUu
dWsKQEAgLTExLDYgKzExLDggQEAgJChldmFsICQoY2FsbCBhZGRwbGF0bGliLGxpbnV4dSxsaWJs
aW51eHVwbGF0KSkKICMjCiAjIyBQbGF0Zm9ybSBsaWJyYXJ5IGRlZmluaXRpb25zCiAjIworTElC
TElOVVhVUExBVF9BU0lOQ0xVREVTLXkgICAgICAgICs9IC1JJChMSUJMSU5VWFVQTEFUX0JBU0Up
L2luY2x1ZGUKK0xJQkxJTlVYVVBMQVRfQVNJTkNMVURFUy15ICAgICAgICArPSAtSSQoVUtfUExB
VF9DT01NT05fQkFTRSkvaW5jbHVkZQogTElCTElOVVhVUExBVF9DSU5DTFVERVMteSArPSAtSSQo
TElCTElOVVhVUExBVF9CQVNFKS9pbmNsdWRlCiBMSUJMSU5VWFVQTEFUX0NJTkNMVURFUy15ICs9
IC1JJChVS19QTEFUX0NPTU1PTl9CQVNFKS9pbmNsdWRlCiAKQEAgLTE4LDYgKzIwLDExIEBAIExJ
QkxJTlVYVVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzMyKSArPSAkKExJQkxJTlVYVVBMQVRfQkFTRSkv
eDg2L2VudHJ5MzIuUwogTElCTElOVVhVUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoTElC
TElOVVhVUExBVF9CQVNFKS94ODYvZW50cnk2NC5TCiBMSUJMSU5VWFVQTEFUX1NSQ1MtJChBUkNI
X0FSTV8zMikgKz0gJChMSUJMSU5VWFVQTEFUX0JBU0UpL2FybS9lbnRyeTMyLlMKIExJQkxJTlVY
VVBMQVRfU1JDUy0kKEFSQ0hfQVJNXzY0KSArPSAkKExJQkxJTlVYVVBMQVRfQkFTRSkvYXJtL2Vu
dHJ5NjQuUworaWZlcSAoJChIQVZFX1NDSEVEKSx5KQorTElCTElOVVhVUExBVF9TUkNTLSQoQVJD
SF9YODZfNjQpICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkveDg2L3RocmVhZF9zdGFydC5TfGNv
bW1vbgorTElCTElOVVhVUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoVUtfUExBVF9DT01N
T05fQkFTRSkvdGhyZWFkLmN8Y29tbW9uCitMSUJMSU5VWFVQTEFUX1NSQ1MtJChBUkNIX1g4Nl82
NCkgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNFKS9zd19jdHguY3xjb21tb24KK2VuZGlmCiBMSUJM
SU5VWFVQTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNFKS9s
Y3B1LmN8Y29tbW9uCiBMSUJMSU5VWFVQTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJM
SU5VWFVQTEFUX0JBU0UpL3NldHVwLmMKIExJQkxJTlVYVVBMQVRfU1JDUy15ICAgICAgICAgICAg
ICArPSAkKExJQkxJTlVYVVBMQVRfQkFTRSkvY29uc29sZS5jCi0tIAoyLjEuNAoKCl9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWls
aW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMu
eGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 16:00:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 16:00:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f47Jm-0002nl-IQ; Thu, 05 Apr 2018 16:00:54 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f47Jl-0002nE-UW
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 16:00:53 +0000
X-Inumbo-ID: 6c7e88a2-38ea-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 6c7e88a2-38ea-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 18:00:13 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3Ap8OiYBwU3hNBC3XXCy+O+j09IxM/srCxBDY+r6Qd?=
 =?us-ascii?q?2+oQIJqq85mqBkHD//Il1AaPAd2Araocw8Pt8InYEVQa5piAtH1QOLdtbDQizf?=
 =?us-ascii?q?ssogo7HcSeAlf6JvO5JwYzHcBFSUM3tyrjaRsdF8nxfUDdrWOv5jAOBBr/KRB1?=
 =?us-ascii?q?JuPoEYLOksi7ze+/94HdbglSmDaxfa55IQmrownWqsQYm5ZpJLwryhvOrHtIeu?=
 =?us-ascii?q?BWyn1tKFmOgRvy5dq+8YB6/ShItP0v68BPUaPhf6QlVrNYFygpM3o05MLwqxbO?=
 =?us-ascii?q?SxaE62YGXWUXlhpIBBXF7A3/U5zsvCb2qvZx1S+HNsDwULs6Wymt771zRRHoli?=
 =?us-ascii?q?kJKjA3/mLQhMNygqJWuw6tqwBlzoLIeoyZKOZyc6XAdt0aX2pBWcNRWjRfD4O7?=
 =?us-ascii?q?dIsPE+sBPeBFpIf7ulsOtQa+DhSrCezzzT9InWP23aw80+g7FQHGwRQgH88VvX?=
 =?us-ascii?q?vIt9X5Lr8SUf2uw6XS1zXDaOpb1DHg44bLahAsueyAUL1tfcbLykQiFxnJgkuO?=
 =?us-ascii?q?pYHnJT+Y2PwBv3WU4uZ9T+6iiG4qpxtvrjWhyMogkJTFi40Lxl3C6C532pw6Jc?=
 =?us-ascii?q?eiR05+edOkFZxQuDyEOIZuWcMiRn1ouD49yr0bpZ63ZCgKx4ojxx7Yc/GHbY2I?=
 =?us-ascii?q?7QjiVOaVOzt3mGlldKinhxav6kes0Pf8Vs6s3FZLqCpKjMXMu2gQ2xHc98SLUP?=
 =?us-ascii?q?hw80e71TqRyQze6PtILE4smareMZEhw7owlpQJsUTEGy/7gFn5jKiNdkU4++io?=
 =?us-ascii?q?7f7rYrH7pp+EKo95kR3xMr80lsynHOQ3KRICX3Kc+eikzr3s4VX5QKlWjv0xiq?=
 =?us-ascii?q?TZtZHaJcIapq6+GA9Zy5ss5AihDzi41NQVhn0HLFNeeBKblIjlIV7PL+7+Dful?=
 =?us-ascii?q?hFSsijhrzejcPrL9GpXNMmTDkLD5cLZm6k5czQ0zzdZF65JXF7EOPvTzW07vu9?=
 =?us-ascii?q?zCFRI5NRK7zPrjCNpnzYwSQ3yAArLKeJ/V5FqJ4OMoOKyAaZEYvB75KuM5/Lj+?=
 =?us-ascii?q?gHl/nkUSLoez2p5CQ3ejAvVga2GEeWek1twGCnsLuEw6UfT3oFaZFyZObTCoWP?=
 =?us-ascii?q?RvtXkAFIu6ANKbFciWi7ub0XLjEw=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2A+AAD4RsZajAPjVY1dGwEBAQEDAQEBC?=
 =?us-ascii?q?QEBAYQjbyiLX16PExqSVRSBZiaBX4MJAoNDNBgBAgEBAQEBAQIBEwEBASZLDII?=
 =?us-ascii?q?1IoJMAwMnUhA/ElcZhRGuAjOEV4NrgiWGb4JPP4EMglCEaBSFewKHHh2EOgtTP?=
 =?us-ascii?q?4ouCIFfg3SFLoMygUogilErkHsCHDeBUzMacoJDCYIXDgmLP4JbbIpWgkUBAQ?=
X-IPAS-Result: =?us-ascii?q?A2A+AAD4RsZajAPjVY1dGwEBAQEDAQEBCQEBAYQjbyiLX16?=
 =?us-ascii?q?PExqSVRSBZiaBX4MJAoNDNBgBAgEBAQEBAQIBEwEBASZLDII1IoJMAwMnUhA/E?=
 =?us-ascii?q?lcZhRGuAjOEV4NrgiWGb4JPP4EMglCEaBSFewKHHh2EOgtTP4ouCIFfg3SFLoM?=
 =?us-ascii?q?ygUogilErkHsCHDeBUzMacoJDCYIXDgmLP4JbbIpWgkUBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495083"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 19:00:47 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 3A7841A6019E;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id Xjwn09_JD8rq; Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id BAE531A60198;
 Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 8B43F1A6019D;
 Thu,  5 Apr 2018 19:00:46 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 19:00:35 +0300
Message-Id: <1522944040-26938-3-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 2/7] plat/linuxu: Add linuxu
 (x86_64) interrupts support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2UgdXNlIHNpZ25hbHMgdG8gZW11bGF0ZSB0aGUgYmVoYXZpb3Igb2YgaW50ZXJydXB0cyBvbiBw
bGF0L2xpbnV4dS4KClNpZ25lZC1vZmYtYnk6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5w
dWIucm8+Ci0tLQogcGxhdC9saW51eHUvTWFrZWZpbGUudWsgICAgICAgICAgICAgICAgICAgICB8
ICAgMiArCiBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9pcnEuaCAgICAgICAgICAgIHwgIDUw
ICsrKysrKysrCiBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zaWduYWwuaCAgICAgICAgIHwg
MTUxICsrKysrKysrKysrKysrKysrKysrKysrKwogcGxhdC9saW51eHUvaW5jbHVkZS9saW51eHUv
c3lzY2FsbC14ODZfNjQuaCB8ICAgNCArCiBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNj
YWxsLmggICAgICAgIHwgIDI0ICsrKy0KIHBsYXQvbGludXh1L2lycS5jICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAxNzYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogcGxhdC9saW51
eHUvbGNwdS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA2MyArKysrKysrLS0tCiA3IGZp
bGVzIGNoYW5nZWQsIDQ1NCBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBt
b2RlIDEwMDY0NCBwbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9pcnEuaAogY3JlYXRlIG1vZGUg
MTAwNjQ0IHBsYXQvbGludXh1L2luY2x1ZGUvbGludXh1L3NpZ25hbC5oCiBjcmVhdGUgbW9kZSAx
MDA2NDQgcGxhdC9saW51eHUvaXJxLmMKCmRpZmYgLS1naXQgYS9wbGF0L2xpbnV4dS9NYWtlZmls
ZS51ayBiL3BsYXQvbGludXh1L01ha2VmaWxlLnVrCmluZGV4IDM4ZjkyYWMuLjhmMDdjYjMgMTAw
NjQ0Ci0tLSBhL3BsYXQvbGludXh1L01ha2VmaWxlLnVrCisrKyBiL3BsYXQvbGludXh1L01ha2Vm
aWxlLnVrCkBAIC0xMiw2ICsxMiw3IEBAICQoZXZhbCAkKGNhbGwgYWRkcGxhdGxpYixsaW51eHUs
bGlibGludXh1cGxhdCkpCiAjIyBQbGF0Zm9ybSBsaWJyYXJ5IGRlZmluaXRpb25zCiAjIwogTElC
TElOVVhVUExBVF9DSU5DTFVERVMteSArPSAtSSQoTElCTElOVVhVUExBVF9CQVNFKS9pbmNsdWRl
CitMSUJMSU5VWFVQTEFUX0NJTkNMVURFUy15ICs9IC1JJChVS19QTEFUX0NPTU1PTl9CQVNFKS9p
bmNsdWRlCiAKIExJQkxJTlVYVVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzMyKSArPSAkKExJQkxJTlVY
VVBMQVRfQkFTRSkveDg2L2VudHJ5MzIuUwogTElCTElOVVhVUExBVF9TUkNTLSQoQVJDSF9YODZf
NjQpICs9ICQoTElCTElOVVhVUExBVF9CQVNFKS94ODYvZW50cnk2NC5TCkBAIC0yMiw0ICsyMyw1
IEBAIExJQkxJTlVYVVBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQkxJTlVYVVBMQVRf
QkFTRSkvY29uc29sZS5jCiBMSUJMSU5VWFVQTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChM
SUJMSU5VWFVQTEFUX0JBU0UpL3NodXRkb3duLmMKIExJQkxJTlVYVVBMQVRfU1JDUy15ICAgICAg
ICAgICAgICArPSAkKExJQkxJTlVYVVBMQVRfQkFTRSkvbWVtb3J5LmMKIExJQkxJTlVYVVBMQVRf
U1JDUy15ICAgICAgICAgICAgICArPSAkKExJQkxJTlVYVVBMQVRfQkFTRSkvbGNwdS5jCitMSUJM
SU5VWFVQTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJMSU5VWFVQTEFUX0JBU0UpL2ly
cS5jCiBMSUJMSU5VWFVQTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJMSU5VWFVQTEFU
X0JBU0UpL3RpbWUuYwpkaWZmIC0tZ2l0IGEvcGxhdC9saW51eHUvaW5jbHVkZS9saW51eHUvaXJx
LmggYi9wbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9pcnEuaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5kMWIxYzVlCi0tLSAvZGV2L251bGwKKysrIGIvcGxhdC9saW51eHUv
aW5jbHVkZS9saW51eHUvaXJxLmgKQEAgLTAsMCArMSw1MCBAQAorLyogU1BEWC1MaWNlbnNlLUlk
ZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLworLyoKKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxj
b3N0aW4ubHVwdUBjcy5wdWIucm8+CisgKgorICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVy
b3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0
aGUgbmFtZXMgb2YgaXRzCisgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogICAgdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisg
KiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIg
T1IgQ09OVFJJQlVUT1JTIEJFCisgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqCisgKiBU
SElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgor
ICovCisKKyNpZm5kZWYgX19JUlFfSF9fCisjZGVmaW5lIF9fSVJRX0hfXworCit2b2lkIGlycV9l
bmFibGUodm9pZCk7Cit2b2lkIGlycV9kaXNhYmxlKHZvaWQpOworaW50IGlycV9kaXNhYmxlZCh2
b2lkKTsKKwordW5zaWduZWQgbG9uZyBpcnFfc2F2ZSh2b2lkKTsKK3ZvaWQgaXJxX3Jlc3RvcmUo
dW5zaWduZWQgbG9uZyBmbGFncyk7CisKK3R5cGVkZWYgaW50ICgqaXJxX2hhbmRsZXJfZnVuY190
KSh2b2lkICphcmcpOworCit2b2lkIGlycV9yZWdpc3RlcihpbnQgaXJxLCBpcnFfaGFuZGxlcl9m
dW5jX3QgZnVuYywgdm9pZCAqYXJnKTsKK3ZvaWQgaXJxX2hhbmRsZShpbnQgaXJxKTsKKworI2Vu
ZGlmIC8qIF9fSVJRX0hfXyAqLwpkaWZmIC0tZ2l0IGEvcGxhdC9saW51eHUvaW5jbHVkZS9saW51
eHUvc2lnbmFsLmggYi9wbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zaWduYWwuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNDZjZTRlCi0tLSAvZGV2L251bGwKKysrIGIv
cGxhdC9saW51eHUvaW5jbHVkZS9saW51eHUvc2lnbmFsLmgKQEAgLTAsMCArMSwxNTEgQEAKKy8q
IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UgKi8KKy8qCisgKiBBdXRob3Jz
OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgorICoKKyAqIENvcHlyaWdodCAo
YykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgor
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJp
Z2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cworICogICAgY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqICAg
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQorICogTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICogUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKgorICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJ
RUQgSU4gQU5ZIFdBWS4KKyAqLworI2lmbmRlZiBfX1NJR05BTF9IX18KKyNkZWZpbmUgX19TSUdO
QUxfSF9fCisKKy8qIFNpZ25hbCBudW1iZXJzICovCisjZGVmaW5lIFNJR0FMUk0gICAgICAgMTQK
KworCisvKiBzaWdhY3Rpb24gKi8KKwordHlwZWRlZiB2b2lkICgqdWtfc2lnaGFuZGxlcl90KShp
bnQpOwordHlwZWRlZiB2b2lkICgqdWtfc2lncmVzdG9yZV90KSh2b2lkKTsKKworc3RydWN0IHVr
X3NpZ2FjdGlvbiB7CisJdWtfc2lnaGFuZGxlcl90IHNhX2hhbmRsZXI7CisJaW50IHNhX2ZsYWdz
OworCXVrX3NpZ3Jlc3RvcmVfdCBzYV9yZXN0b3JlcjsKKwlzaWdzZXRfdCBzYV9tYXNrOworfTsK
KworLyogc2lnYWN0aW9uIGZsYWdzICovCisjZGVmaW5lIFNBX1NJR0lORk8gICAgICAweDAwMDAw
MDA0CisjZGVmaW5lIFNBX1JFU1RPUkVSICAgICAweDA0MDAwMDAwCisKKworLyogU2lnbmFsIGVu
YWJsaW5nL2Rpc2FibGluZyBkZWZpbml0aW9ucyAoc2lncHJvY21hc2spICovCisjaWZuZGVmIFNJ
R19CTE9DSworI2RlZmluZSBTSUdfQkxPQ0sgICAgIDAKKyNlbmRpZgorI2lmbmRlZiBTSUdfVU5C
TE9DSworI2RlZmluZSBTSUdfVU5CTE9DSyAgIDEKKyNlbmRpZgorI2lmbmRlZiBTSUdfU0VUTUFT
SworI2RlZmluZSBTSUdfU0VUTUFTSyAgIDIKKyNlbmRpZgorCisvKiBzaWdzZXQgdXRpbHMgKi8K
KyNkZWZpbmUgU0lHU0VUX1dPUkRTX05VTSAgICAoc2l6ZW9mKHNpZ3NldF90KSAvIHNpemVvZih1
bnNpZ25lZCBsb25nIGludCkpCisKKyNkZWZpbmUgc2lnZW1wdHlzZXQoc2V0KSBcCisJKHsgXAor
CQl1bnNpZ25lZCBpbnQgX19jb3VudCA9IDA7IFwKKwkJdW5zaWduZWQgbG9uZyBpbnQgKl9fc2V0
ID0gKHNldCk7IFwKKwkJd2hpbGUgKF9fY291bnQrKyA8IFNJR1NFVF9XT1JEU19OVU0pIFwKKwkJ
CSpfX3NldCsrID0gMDsgXAorCQkwOyBcCisJfSkKKworI2RlZmluZSBzaWdmaWxsc2V0KHNldCkg
XAorCSh7IFwKKwkJdW5zaWduZWQgaW50IF9fY291bnQgPSAwOyBcCisJCXVuc2lnbmVkIGxvbmcg
aW50ICpfX3NldCA9IChzZXQpOyBcCisJCXdoaWxlIChfX2NvdW50KysgPCBTSUdTRVRfV09SRFNf
TlVNKSBcCisJCQkqX19zZXQrKyA9IH4wVUw7IFwKKwkJMDsgXAorCX0pCisKKyNkZWZpbmUgc2ln
aXNlbXB0eXNldChzZXQpIFwKKwkoeyBcCisJCXVuc2lnbmVkIGludCBfX2NvdW50ID0gMDsgXAor
CQljb25zdCB1bnNpZ25lZCBsb25nIGludCAqX19zZXQgPSAoc2V0KTsgXAorCQlpbnQgX19yZXQg
PSBfX3NldFtfX2NvdW50KytdOyBcCisJCXdoaWxlICghX19yZXQgJiYgX19jb3VudCA8IFNJR1NF
VF9XT1JEU19OVU0pIFwKKwkJCV9fcmV0ID0gX19zZXRbX19jb3VudCsrXTsgXAorCQlfX3JldCA9
PSAwOyBcCisJfSkKKworCisjZGVmaW5lIHNpZ193b3JkX2lkeChzaWcpIFwKKwkoKChzaWcpIC0g
MSkgLyAoOCAqIHNpemVvZiAodW5zaWduZWQgbG9uZyBpbnQpKSkKKworI2RlZmluZSBzaWdfd29y
ZF9tYXNrKHNpZykgXAorCSgoKHVuc2lnbmVkIGxvbmcgaW50KSAxKSA8PCAoKChzaWcpIC0gMSkg
JSAoOCAqIHNpemVvZiAodW5zaWduZWQgbG9uZyBpbnQpKSkpCisKKworI2RlZmluZSBzaWdhZGRz
ZXQoc2V0LCBzaWcpIFwKKwkoeyBcCisJCXVuc2lnbmVkIGxvbmcgaW50IF9fd29yZCA9IHNpZ193
b3JkX2lkeChzaWcpOyBcCisJCXVuc2lnbmVkIGxvbmcgaW50IF9fbWFzayA9IHNpZ193b3JkX21h
c2soc2lnKTsgXAorCQl1bnNpZ25lZCBsb25nIGludCAqX19zZXQgPSAoc2V0KTsgXAorCQlfX3Nl
dFtfX3dvcmRdIHw9IF9fbWFzazsgXAorCQkwOyBcCisJfSkKKworI2RlZmluZSBzaWdkZWxzZXQo
c2V0LCBzaWcpIFwKKwkoeyBcCisJCXVuc2lnbmVkIGxvbmcgaW50IF9fd29yZCA9IHNpZ193b3Jk
X2lkeChzaWcpOyBcCisJCXVuc2lnbmVkIGxvbmcgaW50IF9fbWFzayA9IHNpZ193b3JkX21hc2so
c2lnKTsgXAorCQl1bnNpZ25lZCBsb25nIGludCAqX19zZXQgPSAoc2V0KTsgXAorCQlfX3NldFtf
X3dvcmRdICY9IH5fX21hc2s7IFwKKwkJMDsgXAorCX0pCisKKyNkZWZpbmUgc2lnaXNtZW1iZXIo
c2V0LCBzaWcpIFwKKwkoeyBcCisJCXVuc2lnbmVkIGxvbmcgaW50IF9fd29yZCA9IHNpZ193b3Jk
X2lkeChzaWcpOyBcCisJCXVuc2lnbmVkIGxvbmcgaW50IF9fbWFzayA9IHNpZ193b3JkX21hc2so
c2lnKTsgXAorCQl1bnNpZ25lZCBsb25nIGludCAqX19zZXQgPSAoc2V0KTsgXAorCQlfX3NldFtf
X3dvcmRdICYgX19tYXNrID8gMSA6IDA7IFwKKwl9KQorCisKKy8qIFNpZ25hbCBldmVudCBkZWZp
bml0aW9ucyAqLwordHlwZWRlZiB1bmlvbiB1a19zaWd2YWwgeworCWludCBzaXZhbF9pbnQ7CisJ
dm9pZCAqc2l2YWxfcHRyOworfSB1a19zaWd2YWxfdDsKKwordHlwZWRlZiBzdHJ1Y3QgdWtfc2ln
ZXZlbnQgeworCXVrX3NpZ3ZhbF90IHNpZ2V2X3ZhbHVlOworCWludCBzaWdldl9zaWdubzsKKwlp
bnQgc2lnZXZfbm90aWZ5OworCisJLyogV2UgYXJlbid0IGludGVyZXN0ZWQgbm93IGluIHdoYXQg
Zm9sbG93cyBoZXJlICovCisJaW50IHBhZFs2NF07CisKK30gdWtfc2lnZXZlbnRfdDsKKworI2Vu
ZGlmIC8qIF9fU0lHTkFMX0hfXyAqLwpkaWZmIC0tZ2l0IGEvcGxhdC9saW51eHUvaW5jbHVkZS9s
aW51eHUvc3lzY2FsbC14ODZfNjQuaCBiL3BsYXQvbGludXh1L2luY2x1ZGUvbGludXh1L3N5c2Nh
bGwteDg2XzY0LmgKaW5kZXggYzNjNDU1MC4uNTYyMjkyMSAxMDA2NDQKLS0tIGEvcGxhdC9saW51
eHUvaW5jbHVkZS9saW51eHUvc3lzY2FsbC14ODZfNjQuaAorKysgYi9wbGF0L2xpbnV4dS9pbmNs
dWRlL2xpbnV4dS9zeXNjYWxsLXg4Nl82NC5oCkBAIC00Niw2ICs0NiwxMCBAQAogI2RlZmluZSBf
X1NDX01VTk1BUCAxMQogI2RlZmluZSBfX1NDX0lPQ1RMICAxNgogI2RlZmluZSBfX1NDX0VYSVQg
ICA2MAorCisjZGVmaW5lIF9fU0NfUlRfU0lHQUNUSU9OIDEzCisjZGVmaW5lIF9fU0NfUlRfU0lH
UFJPQ01BU0sgMTQKKwogI2RlZmluZSBfX1NDX1BTRUxFQ1Q2IDI3MAogCiAvKiBOT1RFOiBmcm9t
IGxpbnV4LTQuNi4zIChhcmNoL3g4Ni9lbnRyeS9lbnRyeV82NC5TKToKZGlmZiAtLWdpdCBhL3Bs
YXQvbGludXh1L2luY2x1ZGUvbGludXh1L3N5c2NhbGwuaCBiL3BsYXQvbGludXh1L2luY2x1ZGUv
bGludXh1L3N5c2NhbGwuaAppbmRleCAxYjBhM2JjLi4yZjQxMjViIDEwMDY0NAotLS0gYS9wbGF0
L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxsLmgKKysrIGIvcGxhdC9saW51eHUvaW5jbHVk
ZS9saW51eHUvc3lzY2FsbC5oCkBAIC0zNyw4ICszNyw3IEBACiAjZGVmaW5lIF9fU1lTQ0FMTF9I
X18KIAogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy9zZWxlY3QuaD4KLSNp
bmNsdWRlIDxzeXMvdGltZS5oPgorI2luY2x1ZGUgPGxpbnV4dS9zaWduYWwuaD4KIAogI2lmIGRl
ZmluZWQgX19YODZfNjRfXwogI2luY2x1ZGUgPGxpbnV4dS9zeXNjYWxsLXg4Nl82NC5oPgpAQCAt
OTUsNiArOTQsMjcgQEAgc3RhdGljIGlubGluZSB2b2lkICpzeXNfbW1hcCh2b2lkICphZGRyLCBz
aXplX3QgbGVuLCBpbnQgcHJvdCwgaW50IGZsYWdzLAogCXN5c19tbWFwKChhZGRyKSwgKGxlbiks
IChQUk9UX1JFQUQgfCBQUk9UX1dSSVRFKSwgXAogCQkgKE1BUF9TSEFSRUQgfCBNQVBfQU5PTllN
T1VTKSwgLTEsIDApCiAKKworc3RhdGljIGlubGluZSBpbnQgc3lzX3NpZ2FjdGlvbihpbnQgc2ln
bnVtLAorCQljb25zdCBzdHJ1Y3QgdWtfc2lnYWN0aW9uICphY3Rpb24sIHN0cnVjdCB1a19zaWdh
Y3Rpb24gKm9sZGFjdGlvbikKK3sKKwlyZXR1cm4gKGludCkgc3lzY2FsbDQoX19TQ19SVF9TSUdB
Q1RJT04sCisJCQkgICAgICAobG9uZykgc2lnbnVtLAorCQkJICAgICAgKGxvbmcpIGFjdGlvbiwK
KwkJCSAgICAgIChsb25nKSBvbGRhY3Rpb24sCisJCQkgICAgICBzaXplb2Yoc2lnc2V0X3QpKTsK
K30KKworc3RhdGljIGlubGluZSBpbnQgc3lzX3NpZ3Byb2NtYXNrKGludCBob3csCisJCWNvbnN0
IHNpZ3NldF90ICpzZXQsIHNpZ3NldF90ICpvbGRzZXQpCit7CisJcmV0dXJuIChpbnQpIHN5c2Nh
bGw0KF9fU0NfUlRfU0lHUFJPQ01BU0ssCisJCQkgICAgICAobG9uZykgaG93LAorCQkJICAgICAg
KGxvbmcpIHNldCwKKwkJCSAgICAgIChsb25nKSBvbGRzZXQsCisJCQkgICAgICBzaXplb2Yoc2ln
c2V0X3QpKTsKK30KKwogc3RhdGljIGlubGluZSBpbnQgc3lzX3BzZWxlY3Q2KGludCBuZmRzLAog
CQlmZF9zZXQgKnJlYWRmZHMsIGZkX3NldCAqd3JpdGVmZHMsIGZkX3NldCAqZXhjZXB0ZmRzLAog
CQljb25zdCBzdHJ1Y3QgdGltZXNwZWMgKnRpbWVvdXQsIGNvbnN0IHZvaWQgKnNpZ21hc2spCmRp
ZmYgLS1naXQgYS9wbGF0L2xpbnV4dS9pcnEuYyBiL3BsYXQvbGludXh1L2lycS5jCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRkYmRkMjAKLS0tIC9kZXYvbnVsbAorKysgYi9w
bGF0L2xpbnV4dS9pcnEuYwpAQCAtMCwwICsxLDE3NiBAQAorLyogU1BEWC1MaWNlbnNlLUlkZW50
aWZpZXI6IEJTRC0zLUNsYXVzZSAqLworLyoKKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0
aW4ubHVwdUBjcy5wdWIucm8+CisgKgorICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3Bl
IEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBv
ciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogICAgdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JT
ICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1Ig
Q09OVFJJQlVUT1JTIEJFCisgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqCisgKiBUSElT
IEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgorICov
CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8dWsvYWxsb2MuaD4KKyNpbmNsdWRlIDx1
ay9saXN0Lmg+CisjaW5jbHVkZSA8dWsvcGxhdC9sY3B1Lmg+CisjaW5jbHVkZSA8bGludXh1L2ly
cS5oPgorI2luY2x1ZGUgPGxpbnV4dS9zeXNjYWxsLmg+CisjaW5jbHVkZSA8bGludXh1L3NpZ25h
bC5oPgorI2luY2x1ZGUgPGxpbnV4dS9hc3NlcnQuaD4KKworI2RlZmluZSBJUlFTX05VTSAgICAx
NgorCisvKiBJUlEgaGFuZGxlcnMgZGVjbGFyYXRpb25zICovCitzdHJ1Y3QgaXJxX2hhbmRsZXIg
eworCWlycV9oYW5kbGVyX2Z1bmNfdCBmdW5jOworCXZvaWQgKmFyZzsKKworCXN0cnVjdCB1a19z
aWdhY3Rpb24gb2xkYWN0aW9uOworCisJVUtfU0xJU1RfRU5UUlkoc3RydWN0IGlycV9oYW5kbGVy
KSBlbnRyaWVzOworfTsKKworVUtfU0xJU1RfSEVBRChpcnFfaGFuZGxlcl9oZWFkLCBzdHJ1Y3Qg
aXJxX2hhbmRsZXIpOworc3RhdGljIHN0cnVjdCBpcnFfaGFuZGxlcl9oZWFkIGlycV9oYW5kbGVy
c1tJUlFTX05VTV07CisKK3N0YXRpYyBzdHJ1Y3QgdWtfYWxsb2MgKmFsbG9jYXRvcjsKK3N0YXRp
YyBzaWdzZXRfdCBoYW5kbGVkX3NpZ25hbHNfc2V0Oworc3RhdGljIHVuc2lnbmVkIGxvbmcgaXJx
X2VuYWJsZWQgPSAwOworCisKK3ZvaWQgaXJxX2VuYWJsZSh2b2lkKQoreworCWludCByYzsKKwor
CXJjID0gc3lzX3NpZ3Byb2NtYXNrKFNJR19VTkJMT0NLLCAmaGFuZGxlZF9zaWduYWxzX3NldCwg
TlVMTCk7CisJTElOVVhVX0FTU0VSVChyYywgMCk7CisKKwlpcnFfZW5hYmxlZCA9IDE7Cit9CisK
K3ZvaWQgaXJxX2Rpc2FibGUodm9pZCkKK3sKKwlpbnQgcmM7CisKKwlyYyA9IHN5c19zaWdwcm9j
bWFzayhTSUdfQkxPQ0ssICZoYW5kbGVkX3NpZ25hbHNfc2V0LCBOVUxMKTsKKwlMSU5VWFVfQVNT
RVJUKHJjLCAwKTsKKworCWlycV9lbmFibGVkID0gMDsKK30KKworaW50IGlycV9kaXNhYmxlZCh2
b2lkKQoreworCXJldHVybiAoaXJxX2VuYWJsZWQgPT0gMCk7Cit9CisKK3Vuc2lnbmVkIGxvbmcg
aXJxX3NhdmUodm9pZCkKK3sKKwl1bnNpZ25lZCBsb25nIGZsYWdzID0gaXJxX2VuYWJsZWQ7CisK
KwlpZiAoaXJxX2VuYWJsZWQpCisJCWlycV9kaXNhYmxlKCk7CisKKwlyZXR1cm4gZmxhZ3M7Cit9
CisKK3ZvaWQgaXJxX3Jlc3RvcmUodW5zaWduZWQgbG9uZyBmbGFncykKK3sKKwlpZiAoZmxhZ3Mp
IHsKKwkJaWYgKCFpcnFfZW5hYmxlZCkKKwkJCWlycV9lbmFibGUoKTsKKworCX0gZWxzZSBpZiAo
aXJxX2VuYWJsZWQpCisJCWlycV9kaXNhYmxlKCk7Cit9CisKK3ZvaWQgX19yZXN0b3JlcigpOwor
YXNtKCJfX3Jlc3RvcmVyOm1vdiAkMTUsJXJheFxuc3lzY2FsbCIpOworCit2b2lkIGlycV9yZWdp
c3RlcihpbnQgaXJxLCBpcnFfaGFuZGxlcl9mdW5jX3QgZnVuYywgdm9pZCAqYXJnKQoreworCXN0
cnVjdCBpcnFfaGFuZGxlciAqaDsKKwlzdHJ1Y3QgdWtfc2lnYWN0aW9uIGFjdGlvbjsKKwlzaWdz
ZXRfdCBzZXQ7CisJdW5zaWduZWQgbG9uZyBmbGFnczsKKwlpbnQgcmM7CisKKwlVS19BU1NFUlQo
aXJxIDwgSVJRU19OVU0pOworCisJLyogTmV3IGhhbmRsZXIgKi8KKwloID0gdWtfbWFsbG9jKGFs
bG9jYXRvciwgc2l6ZW9mKHN0cnVjdCBpcnFfaGFuZGxlcikpOworCVVLX0FTU0VSVChoICE9IE5V
TEwpOworCWgtPmZ1bmMgPSBmdW5jOworCWgtPmFyZyA9IGFyZzsKKworCS8qIFJlZ2lzdGVyIHNp
Z25hbCBhY3Rpb24gKi8KKwltZW1zZXQoJmFjdGlvbiwgMCwgc2l6ZW9mKGFjdGlvbikpOworCWFj
dGlvbi5zYV9oYW5kbGVyID0gaXJxX2hhbmRsZTsKKwlhY3Rpb24uc2FfZmxhZ3MgPSBTQV9SRVNU
T1JFUjsKKwlhY3Rpb24uc2FfcmVzdG9yZXIgPSBfX3Jlc3RvcmVyOworCisJcmMgPSBzeXNfc2ln
YWN0aW9uKGlycSwgJmFjdGlvbiwgJmgtPm9sZGFjdGlvbik7CisJTElOVVhVX0FTU0VSVChyYywg
MCk7CisKKwlmbGFncyA9IHVrcGxhdF9sY3B1X3NhdmVfaXJxZigpOworCVVLX1NMSVNUX0lOU0VS
VF9IRUFEKCZpcnFfaGFuZGxlcnNbaXJxXSwgaCwgZW50cmllcyk7CisJdWtwbGF0X2xjcHVfcmVz
dG9yZV9pcnFmKGZsYWdzKTsKKworCS8qIFVuYmxvY2sgdGhlIHNpZ25hbCAqLworCXNpZ2VtcHR5
c2V0KCZzZXQpOworCXNpZ2FkZHNldCgmc2V0LCBpcnEpOworCisJcmMgPSBzeXNfc2lncHJvY21h
c2soU0lHX1VOQkxPQ0ssICZzZXQsIE5VTEwpOworCUxJTlVYVV9BU1NFUlQocmMsIDApOworCisJ
LyogQWRkIHRvIG91ciBoYW5kbGVkIHNpZ25hbHMgc2V0ICovCisJc2lnYWRkc2V0KCZoYW5kbGVk
X3NpZ25hbHNfc2V0LCBpcnEpOworfQorCit2b2lkIGlycV9oYW5kbGUoaW50IGlycSkKK3sKKwlz
dHJ1Y3QgaXJxX2hhbmRsZXIgKmg7CisJaW50IGhhbmRsZWQgPSAwOworCisJVUtfU0xJU1RfRk9S
RUFDSChoLCAmaXJxX2hhbmRsZXJzW2lycV0sIGVudHJpZXMpIHsKKwkJaWYgKGgtPmZ1bmMoaC0+
YXJnKSA9PSAxKSB7CisJCQloYW5kbGVkID0gMTsKKwkJCWJyZWFrOworCQl9CisJfQorCisJaWYg
KCFoYW5kbGVkKQorCQlVS19DUkFTSCgiVW5oYW5kbGVkIGlycT0lZFxuIiwgaXJxKTsKK30KKwor
aW50IHVrcGxhdF9pcnFfaW5pdChzdHJ1Y3QgdWtfYWxsb2MgKmEpCit7CisJVUtfQVNTRVJUKGly
cV9lbmFibGVkID09IDApOworCVVLX0FTU0VSVChhbGxvY2F0b3IgPT0gTlVMTCk7CisKKwlhbGxv
Y2F0b3IgPSBhOworCXNpZ2VtcHR5c2V0KCZoYW5kbGVkX3NpZ25hbHNfc2V0KTsKKworCXJldHVy
biAwOworfQpkaWZmIC0tZ2l0IGEvcGxhdC9saW51eHUvbGNwdS5jIGIvcGxhdC9saW51eHUvbGNw
dS5jCmluZGV4IDQyZjU2OTAuLjUyY2UyM2QgMTAwNjQ0Ci0tLSBhL3BsYXQvbGludXh1L2xjcHUu
YworKysgYi9wbGF0L2xpbnV4dS9sY3B1LmMKQEAgLTMzLDExICszMyw0OCBAQAogICovCiAKICNp
bmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDx1ay9wbGF0L2xjcHUuaD4KKyNpbmNsdWRlIDxf
dGltZS5oPgogI2luY2x1ZGUgPGxpbnV4dS9zeXNjYWxsLmg+CisjaW5jbHVkZSA8bGludXh1L2ly
cS5oPgogI2luY2x1ZGUgPHVrL3ByaW50Lmg+Ci0jaW5jbHVkZSA8dWsvcGxhdC9sY3B1Lmg+CiAK
LXZvaWQgdWtwbGF0X2xjcHVfaGFsdCh2b2lkKQorCit2b2lkIHVrcGxhdF9sY3B1X2VuYWJsZV9p
cnEodm9pZCkKK3sKKwlpcnFfZW5hYmxlKCk7Cit9CisKK3ZvaWQgdWtwbGF0X2xjcHVfZGlzYWJs
ZV9pcnEodm9pZCkKK3sKKwlpcnFfZGlzYWJsZSgpOworfQorCit1bnNpZ25lZCBsb25nIHVrcGxh
dF9sY3B1X3NhdmVfaXJxZih2b2lkKQoreworCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CisKKwlmbGFn
cyA9IGlycV9zYXZlKCk7CisKKwlyZXR1cm4gZmxhZ3M7Cit9CisKK3ZvaWQgdWtwbGF0X2xjcHVf
cmVzdG9yZV9pcnFmKHVuc2lnbmVkIGxvbmcgZmxhZ3MpCit7CisJaXJxX3Jlc3RvcmUoZmxhZ3Mp
OworfQorCitpbnQgdWtwbGF0X2xjcHVfaXJxc19kaXNhYmxlZCh2b2lkKQoreworCXJldHVybiBp
cnFfZGlzYWJsZWQoKTsKK30KKwordm9pZCB1a3BsYXRfbGNwdV9pcnFzX2hhbmRsZV9wZW5kaW5n
KHZvaWQpCit7CisKK30KKworc3RhdGljIHZvaWQgZG9fcHNlbGVjdChzdHJ1Y3QgdGltZXNwZWMg
KnRpbWVvdXQpCiB7CiAJaW50IHJldDsKIAlpbnQgbmZkcyA9IDA7CkBAIC00NSwyNCArODIsMjIg
QEAgdm9pZCB1a3BsYXRfbGNwdV9oYWx0KHZvaWQpCiAJZmRfc2V0ICp3cml0ZWZkcyA9IE5VTEw7
CiAJZmRfc2V0ICpleGNlcHRmZHMgPSBOVUxMOwogCi0JcmV0ID0gc3lzX3BzZWxlY3Q2KG5mZHMs
IHJlYWRmZHMsIHdyaXRlZmRzLCBleGNlcHRmZHMsIE5VTEwsIE5VTEwpOworCXJldCA9IHN5c19w
c2VsZWN0NihuZmRzLCByZWFkZmRzLCB3cml0ZWZkcywgZXhjZXB0ZmRzLCB0aW1lb3V0LCBOVUxM
KTsKIAlpZiAocmV0IDwgMCkKIAkJdWtfcHJpbnRkKERMVkxfV0FSTiwgIkZhaWxlZCB0byBoYWx0
IExDUFU6ICVkXG4iLCByZXQpOwogfQogCi12b2lkIHVrcGxhdF9sY3B1X2hhbHRfdG8odW5zaWdu
ZWQgbG9uZyBtaWxsaXMpCit2b2lkIGhhbHQodm9pZCkKK3sKKwlkb19wc2VsZWN0KE5VTEwpOwor
fQorCit2b2lkIHRpbWVfYmxvY2tfdW50aWwoX19zbnNlYyB1bnRpbCkKIHsKLQlpbnQgcmV0Owot
CWludCBuZmRzID0gMDsKLQlmZF9zZXQgKnJlYWRmZHMgPSBOVUxMOwotCWZkX3NldCAqd3JpdGVm
ZHMgPSBOVUxMOwotCWZkX3NldCAqZXhjZXB0ZmRzID0gTlVMTDsKIAlzdHJ1Y3QgdGltZXNwZWMg
dGltZW91dDsKIAotCXRpbWVvdXQudHZfc2VjICA9IG1pbGxpcyAvIDEwMDA7Ci0JdGltZW91dC50
dl9uc2VjID0gbWlsbGlzICUgMTAwMCAqIDEwMDAwMDA7CisJdGltZW91dC50dl9zZWMgID0gdW50
aWwgLyB1a2FyY2hfdGltZV9zZWNfdG9fbnNlYygxKTsKKwl0aW1lb3V0LnR2X25zZWMgPSB1bnRp
bCAlIHVrYXJjaF90aW1lX3NlY190b19uc2VjKDEpOwogCi0JcmV0ID0gc3lzX3BzZWxlY3Q2KG5m
ZHMsIHJlYWRmZHMsIHdyaXRlZmRzLCBleGNlcHRmZHMsICZ0aW1lb3V0LCBOVUxMKTsKLQlpZiAo
cmV0IDwgMCkKLQkJdWtfcHJpbnRkKERMVkxfV0FSTiwgIkZhaWxlZCB0byBoYWx0IExDUFU6ICVk
XG4iLCByZXQpOworCWRvX3BzZWxlY3QoJnRpbWVvdXQpOwogfQotLSAKMi4xLjQKCgpfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFp
bGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3Rz
LnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 16:00:55 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 16:00:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f47Jn-0002pI-MB; Thu, 05 Apr 2018 16:00:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=4ik/=g2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1f47Jm-0002nV-H3
 for minios-devel@lists.xen.org; Thu, 05 Apr 2018 16:00:54 +0000
X-Inumbo-ID: b24ece37-38ea-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id b24ece37-38ea-11e8-8249-2fda3a446a53;
 Thu, 05 Apr 2018 16:02:10 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3A4l4acRycHyZPNLnXCy+O+j09IxM/srCxBDY+r6Qd?=
 =?us-ascii?q?2+oQIJqq85mqBkHD//Il1AaPAd2Araocw8Pt8InYEVQa5piAtH1QOLdtbDQizf?=
 =?us-ascii?q?ssogo7HcSeAlf6JvO5JwYzHcBFSUM3tyrjaRsdF8nxfUDdrWOv5jAOBBr/KRB1?=
 =?us-ascii?q?JuPoEYLOksi7ze+/94HdbglSmDaxfa55IQmrownWqsQYm5ZpJLwryhvOrHtIeu?=
 =?us-ascii?q?BWyn1tKFmOgRvy5dq+8YB6/ShItP0v68BPUaPhf6QlVrNYFygpM3o05MLwqxbO?=
 =?us-ascii?q?SxaE62YGXWUXlhpIBBXF7A3/U5zsvCb2qvZx1S+HNsDwULs6Wymt771zRRHoli?=
 =?us-ascii?q?kJKjA3/mLQhMNygqJWuw6tqwBlzoLIeoyZKOZyc6XAdt0aX2pBWcNRWjRfD4O7?=
 =?us-ascii?q?dIsPE+sBPeBFpIf7ulsOtQa+DhSrCezzzT9InWP23aw80+g7FQHGwRQgH88VvX?=
 =?us-ascii?q?vIt9X5Lr8SUf2uw6XS1zXDaOpb1DHg44bLahAsueyAUL1tfcbLykQiFxnJgkuO?=
 =?us-ascii?q?pYHnJT+Y2PwBv3WU4uZ9T+6iiG4qpxtvrjWhyMogkJTFi40Lxl3C6C532pw6Jc?=
 =?us-ascii?q?eiR05+edOkFZxQuDyEOIZuWcMiRn1ouD49yr0bpZ63ZCgKx4ojxx7Yc/GHbY2I?=
 =?us-ascii?q?7QjiVOaVOzt3mGlldKinhxav6kes0Pf8Vs6s3FZLqCpKjMXMu2gQ2xHc98SLUP?=
 =?us-ascii?q?hw80e71TqRyQze6PtILE4smareMZEhw7owlpQJsUTEGy/7gFn5jKiNdkU4++io?=
 =?us-ascii?q?7f7rYrH7pp+EKo95kR3xMr80lsynHOQ3KRICX3Kc+eikzr3s4VX5QKlWjv0xiq?=
 =?us-ascii?q?TZtZHaJcIapq6+GA9Zy5ss5AihDzi41NQVhn0HLFNeeBKblIjlIV7PL+7+Dful?=
 =?us-ascii?q?hFSsijhrzejcPrL9GpXNMmTDkLD5cLZm6k5czQ0zzdZF65JXF7EOPvTzW07vu9?=
 =?us-ascii?q?zCFRI5NRK7zPrjCNpnzYwSQ3yAArLKeJ/V5FqJ4OMoOKyAaZEYvB75KuM5/Lj+?=
 =?us-ascii?q?gHl/nkUSLoez2p5CQ3ejAvVga2GEeWek1twGCnsLuEw6UfT3oFaZFyZObTCoWP?=
 =?us-ascii?q?RvtXkAFIu6ANKbFciWi7ub0XLjEw=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBA?=
 =?us-ascii?q?YUSKItfXo8tklWBeoUOAoNDNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3kQPxJ?=
 =?us-ascii?q?XGYURrjWEV4NrgiWJPj+BDIg/hQgCjFOKbQiBX4xUjDuRJgIcN4FTMxqDNYIuj?=
 =?us-ascii?q?iNsjRsBAQ?=
X-IPAS-Result: =?us-ascii?q?A2BdAAD4RsZajAPjVY1dHAEBAQQBAQoBAYUSKItfXo8tklW?=
 =?us-ascii?q?BeoUOAoNDNBgBAgEBAQEBAQIBEwEBASZXgjUigkwDA3kQPxJXGYURrjWEV4Nrg?=
 =?us-ascii?q?iWJPj+BDIg/hQgCjFOKbQiBX4xUjDuRJgIcN4FTMxqDNYIujiNsjRsBAQ?=
X-IronPort-AV: E=Sophos;i="5.48,411,1517868000"; 
   d="scan'208";a="2495087"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 05 Apr 2018 19:00:48 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 1A9681A60195;
 Thu,  5 Apr 2018 19:00:48 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 7bDVjfkpQBey; Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id A73DC1A60198;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id 68AD51A6019E;
 Thu,  5 Apr 2018 19:00:47 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Thu,  5 Apr 2018 19:00:39 +0300
Message-Id: <1522944040-26938-7-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
In-Reply-To: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
References: <1522944040-26938-1-git-send-email-costin.lupu@cs.pub.ro>
Subject: [Minios-devel] [UNIKRAFT PATCH 6/7] plat/linuxu: Add linuxu (ARM)
 timer support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIEFSTSBzeXNjYWxsIG51bWJlcnMgZm9yIFRJTUVSXyogc3lzY2FsbHMuCgpTaWduZWQtb2Zm
LWJ5OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgotLS0KIHBsYXQvbGludXh1
L2luY2x1ZGUvbGludXh1L3N5c2NhbGwtYXJtXzMyLmggfCA2ICsrKysrKwogMSBmaWxlIGNoYW5n
ZWQsIDYgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3BsYXQvbGludXh1L2luY2x1ZGUvbGlu
dXh1L3N5c2NhbGwtYXJtXzMyLmggYi9wbGF0L2xpbnV4dS9pbmNsdWRlL2xpbnV4dS9zeXNjYWxs
LWFybV8zMi5oCmluZGV4IDVjMWE5MTkuLjJmMDk4MGEgMTAwNjQ0Ci0tLSBhL3BsYXQvbGludXh1
L2luY2x1ZGUvbGludXh1L3N5c2NhbGwtYXJtXzMyLmgKKysrIGIvcGxhdC9saW51eHUvaW5jbHVk
ZS9saW51eHUvc3lzY2FsbC1hcm1fMzIuaApAQCAtNTAsNiArNTAsMTIgQEAKICNkZWZpbmUgX19T
Q19SVF9TSUdBQ1RJT04gNDMKICNkZWZpbmUgX19TQ19SVF9TSUdQUk9DTUFTSyAxMjYKIAorI2Rl
ZmluZSBfX1NDX1RJTUVSX0NSRUFURSAyNTcKKyNkZWZpbmUgX19TQ19USU1FUl9TRVRUSU1FIDI1
OAorI2RlZmluZSBfX1NDX1RJTUVSX0dFVFRJTUUgMjU5CisjZGVmaW5lIF9fU0NfVElNRVJfR0VU
T1ZFUlJVTiAyNjAKKyNkZWZpbmUgX19TQ19USU1FUl9ERUxFVEUgMjYxCisKICNkZWZpbmUgX19T
Q19QU0VMRUNUNiAzMzUKIAogLyogTk9URTogZnJvbSBgbWFuIHN5c2NhbGxgOgotLSAKMi4xLjQK
CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3Mt
ZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw
czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 05 16:58:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Apr 2018 16:58:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f48Ds-0006QD-CX; Thu, 05 Apr 2018 16:58:52 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=iazy=g2=linaro.org=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f48Dq-0006Q8-87
 for minios-devel@lists.xenproject.org; Thu, 05 Apr 2018 16:58:50 +0000
X-Inumbo-ID: 84763711-38f2-11e8-9728-bc764e045a96
Received: from mail-wr0-x22d.google.com (unknown [2a00:1450:400c:c0c::22d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 84763711-38f2-11e8-9728-bc764e045a96;
 Thu, 05 Apr 2018 18:58:09 +0200 (CEST)
Received: by mail-wr0-x22d.google.com with SMTP id l49so29560844wrl.4
 for <minios-devel@lists.xenproject.org>; Thu, 05 Apr 2018 09:58:48 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google;
 h=subject:to:cc:references:from:message-id:date:user-agent
 :mime-version:in-reply-to:content-language:content-transfer-encoding;
 bh=UbS0tUUAiCDa05Q+U14PW987D4gzj5jLv4kGo2ce+RI=;
 b=RhRAF/Ot/t1jS1/LYDwvpkBQvyE5e5Y3uLp7vW+eW3xwtRMpAbMEWHBGGHUEs9qsWh
 VH4vvdRnfMEbLOR/6S+uPhusHIJePF0PA4HcBdm2XY6249UpBjJgKSW6IyFmDMkSeqjX
 z9YhgsAMczx8zm7ttrYJpMFOTbJOkFJRpZ6FM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:subject:to:cc:references:from:message-id:date
 :user-agent:mime-version:in-reply-to:content-language
 :content-transfer-encoding;
 bh=UbS0tUUAiCDa05Q+U14PW987D4gzj5jLv4kGo2ce+RI=;
 b=NNryhPLUuBUVzhSFre+QZXsCRfiF2v5XOFW8yRH4dO/S923/g2LNQ31feIEAWtNsgg
 Oo+NQBKRyU7LwDY2D/4zBUIONMilEM0Uo/LrvScUzyWGgip2FNI2p2h401T5VziV3UUW
 pMgou+Gt+gRXOvOyu/ceUCJ2IgOEXc4e3EdNDfr/MYJ0iyS6HE2t1N7cxHM/u+IuBa7V
 I1EXfNLNhsG2nucjrLiZzfo1zkjCWMkCCkwICiY6ChZJ8trLUbTrnvldnNeYAanKWTRk
 R+hxYemAlJgJc6QraGdL8z1LKKvhnZMEVi0HzC+dEcB5qp7O6JFec9ZZrtv/dyeGM9uf
 OeTQ==
X-Gm-Message-State: AElRT7Fu3jscvKrwGAwU3jNbYeJoiNA9qo5cY0fD3jJ13q0zBy2O3eKv
 mS8s1zPg7jgzLlizBIMCvHzxqp1nSYo=
X-Google-Smtp-Source: AIpwx48h6mZ4ra0SqN9VK3zDwRdfnzN6zXA0uYCGKBHWco47OoBEFk5o2bD8JXbD6Rq+fBxIfOPPsw==
X-Received: by 10.223.188.19 with SMTP id s19mr15885602wrg.213.1522947526906; 
 Thu, 05 Apr 2018 09:58:46 -0700 (PDT)
Received: from ?IPv6:::1? ([2001:41d0:1:6c23::1])
 by smtp.gmail.com with ESMTPSA id p68sm10184859wmg.7.2018.04.05.09.58.45
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 05 Apr 2018 09:58:45 -0700 (PDT)
To: Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
 <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
From: Julien Grall <julien.grall@linaro.org>
Message-ID: <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
Date: Thu, 5 Apr 2018 17:58:44 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, Simon Kuenzer <simon.kuenzer@neclab.eu>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAwNS8wNC8xOCAxNjoyNSwgQWpheSBHYXJnIHdyb3RlOgo+IFRoYW5rcyBKdWxpZW4g
Zm9yIHRoZSBoZWxwIC4uLgo+IAo+IE9uIFRodSwgQXByIDUsIDIwMTggYXQgNjoxOSBQTSwgSnVs
aWVuIEdyYWxsIDxqdWxpZW4uZ3JhbGxAbGluYXJvLm9yZz4gd3JvdGU6Cj4+IEhpLAo+Pj4KPj4g
S1ZNIGlzIGEgbW9kdWxlIHRvIGVuYWJsZSB0aGUgdXNlIG9mIHZpcnR1YWxpemF0aW9uIGV4dGVu
c2lvbi4gSWYgeW91IGRvbid0Cj4+IHVzZSB0aGVtLCB0aGVuIHlvdSBiZXR0ZXIganVzdCB1c2Ug
UUVNVS4gQnV0IGFzIFNpbW9uIHNhaWQsIHRoaXMgaXMgZ29pbmcgdG8KPj4gYmUgcmVhbGx5IHNs
b3cuCj4gCj4gWWVwLCBleGFjdGx5IC4uCj4gCj4gCj4+Cj4+Pgo+Pj4gV291bGQgYmUgZ3JlYXQg
dG8gaGF2ZSBtb3JlIHZpZXdwb2ludHMgOikKPj4KPj4gWW91IHNlZW0gdG8gaGF2ZSBhc2tlZCBm
b3IgUFYgc3VwcG9ydCBpbiA0IGRpZmZlcmVudCB0aHJlYWRzIHRoZSBwYXN0IHdlZWsKPj4gYW5k
IG9uIGRpZmZlcmVudCBtYWlsaW5nIGxpc3QgKE1pbmktT1MsIEtWTS4uLikuIEJ1dCBJIHN0aWxs
IGRvbid0Cj4+IHVuZGVyc3RhbmQgd2hhdCBpcyB5b3VyIGVuZCBnb2FsLiBNYXliZSB5b3UgY291
bGQgc3RhcnQgYnkgYW5zd2VyaW5nIHRoZQo+PiBmb2xsb3dpbmcgcXVlc3Rpb25zOgo+PiAgICAg
ICAgICAtIFdoYXQgaXMgeW91ciBlbmQgZ29hbD8KPj4gICAgICAgICAgLSBXaGF0IGlzIHlvdXIg
ZGVmaW5pdGlvbiBvZiBsb3ctZW5kIHBsYXRmb3JtPyBUaGVyZSBhcmUgc29tZSBhdAo+PiB+MTAk
IHdpdGggdmlydHVhbGl6YXRpb24gZXh0ZW5zaW9ucy4gU28gd2h5IG5vdCB0aGVtPwo+IAo+IE91
ciBlbmQgZ29hbCBpcwo+ICAgICAgICAgICAgICAiVG8gcnVuIGEgUHl0aG9uIFVuaWtlcm5lbCBh
cHBsaWNhdGlvbiBvbiBhbiBBUk0gcGxhdGZvcm0iLgo+IAo+IEhlbmNlIHdlIHdlcmUvYXJlIGxv
b2tpbmcgYXQgdGhlIGF2YWlsYWJsZSBoYXJkd2FyZSBhdCBvdXIgZW5kIGFzCj4gdGVzdGluZyBl
bnZpcm9ubWVudCAoQmVhZ2xlYm9uZSkuCgpVbmlrZXJuZWxzIGNvdWxkIHBvdGVudGlhbGx5IHJ1
biBvbiBiYXJlbWV0YWwuIEFyZSB5b3UgbG9va2luZyBhdCAKbXVsdGlwbGUgdW5pa2VybmVscyBv
biB0aGUgc2FtZSBwbGF0Zm9ybT8gSWYgaXQgaXMgb25seSBvbmUsIHRoZSAKdmlydHVhbGl6YXRp
b24gaXMgcHJvYmFibHkgbm90IHRoZSByaWdodCBzb2x1dGlvbi4KCj4gVGhlIGlkZWEgb2YgdGhp
cyBzdHVkeSBpcyB0byB1bmRlcnN0YW5kIGFuZCBjb21wYXJlIGJldHdlZW4gdW5pa2VybmVscwo+
IGFuZCBjb250YWluZXJzIGluIGFuIGVtYmVkZGVkIHBsYXRmb3JtLgpXaGF0IGV4YWN0bHkgZG8g
eW91IHdhbnQgdG8gY29tcGFyZT8gSWYgaXQgaXMgcGVyZm9ybWFuY2UsIHRoZW4geW91IHdhbnQg
CnRvIGdldCBhcyBjbG9zZSBhcyB3aGF0IHBlb3BsZSB3b3VsZCBydW4uIEFzc3VtaW5nIHlvdSBw
bGF0Zm9ybSB0byBydW4gCm11bHRpcGxlIHVuaWtlcm5lbHMsIHRoZW4gbGlrZWx5IHlvdSB3YW50
IHRvIGdldCBhIHBsYXRmb3JtIHdpdGggCnZpcnR1YWxpemF0aW9uIGJlY2F1c2UgdGhpcyBpcyB3
aGF0IG1vc3Qgb2YgZW5kIHVzZXIgd2lsbCB1c2UuCgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxs
CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3Mt
ZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw
czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 09 06:38:04 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 09 Apr 2018 06:38:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f5QRG-0002OR-Q9; Mon, 09 Apr 2018 06:38:02 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=sv3z=g6=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f5QRF-0002OK-6d
 for minios-devel@lists.xenproject.org; Mon, 09 Apr 2018 06:38:01 +0000
X-Inumbo-ID: 6fd9248b-3bc0-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [104.47.0.67]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 6fd9248b-3bc0-11e8-9728-bc764e045a96;
 Mon, 09 Apr 2018 08:37:13 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=t2T2ZZPSl/aJ8frs/MKeVuUAdRVBVsf9qB3lGrFtTFI=;
 b=BtbL2KUHjn7awmk1gmHqIh1PcqC98MPXcJSz5Fx9UjpXNniDgAzpSmGKIWdwtbHe/Ewe+Z3bLOTw0WQtLuK/O1lOl8883bxTvVSJGYnYslbhUEOmDnglDkbVuj0N9cHKzUFxUiuUvbcWMybdpG3FjspACBY6Nn4dfvweTaqxJcQ=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0156.eurprd08.prod.outlook.com (10.161.60.155) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.631.10; Mon, 9 Apr 2018 06:37:50 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0653.014; Mon, 9 Apr 2018
 06:37:49 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>,
 "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Thread-Topic: [UNIKRAFT PATCH 0/9] Prepare build scripts to support ARM64
Thread-Index: AQHTvA8+uIrbs6DfWk+hK/jq/tIreKPxPkuAgAbZAkA=
Date: Mon, 9 Apr 2018 06:37:49 +0000
Message-ID: <DB3PR08MB010707EED13713DD95DD43AA9EBF0@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <103fce6f-1663-9e27-0c86-5cf34b892f4d@neclab.eu>
In-Reply-To: <103fce6f-1663-9e27-0c86-5cf34b892f4d@neclab.eu>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0156;
 7:yVBGbfDkluvzoLwR3XgTHXE16vSA2Db9zOrlctmE/xNx3nSC9ZL00nmD+Jmeh+wDl11tvHXags7LRWV7vN1OTl4lRAjAeUmHY10joJdDDeAEU+0NzfGG4Fy2ajP1h7sTEInwnXWar8yIc+v1hrAsWUzrmG+0L+OJZRaRqiX63+gzcpr3a25Gy1ImaCgJukw89TIocbwUGWlgb18DcYYpdtTLAUOkgkE0OmIQ+v/P0ks9laAXrjCMmRTsYrY0CCz6
x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR;
x-ms-office365-filtering-ht: Tenant
X-MS-Office365-Filtering-Correlation-Id: 92bcacd8-9d29-41a3-7aeb-08d59de46a02
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0156; 
x-ms-traffictypediagnostic: DB3PR08MB0156:
nodisclaimer: True
x-microsoft-antispam-prvs: <DB3PR08MB0156FBB6B93743B3A09B1FEF9EBF0@DB3PR08MB0156.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(180628864354917)(58134797142442);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231221)(944501327)(52105095)(3002001)(10201501046)(93006095)(93001095)(6055026)(6041310)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123558120)(20161123560045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0156; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0156; 
x-forefront-prvs: 0637FCE711
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(396003)(39850400004)(39380400002)(346002)(366004)(376002)(13464003)(189003)(199004)(105586002)(3280700002)(5250100002)(8936002)(186003)(6246003)(229853002)(86362001)(55236004)(102836004)(6436002)(66066001)(53546011)(53936002)(9686003)(110136005)(6506007)(3660700001)(486006)(316002)(305945005)(2906002)(7696005)(72206003)(54906003)(55016002)(2501003)(446003)(76176011)(4326008)(59450400001)(106356001)(7736002)(25786009)(3846002)(68736007)(74316002)(99286004)(26005)(33656002)(14454004)(478600001)(81166006)(11346002)(8676002)(476003)(6116002)(2900100001)(5660300001)(97736004)(81156014)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0156;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; MX:1; A:1; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: 185HB5ZhQcIZK9n5IQzigoZl/+zLPNra7uu+0EDMudWCqNhozw9CXWUxlXxlrYLDVyQrDzCOEpNZTolOdiqvpiobqDK5uWiv5idwpvwdaf7lOw+JjaXx0iNO0ajpdpvpq3rzzlLApDuaCb0FXNz1O0UqngzeeszdNKAp4EE/QUecCpTqOuiXT5hxT6X+UPIFkMRA/M0ZwJM8yYnoR1iCNqnW+2H1QOZh/zwYIs92Pmuk59ZUawiyrouKfzkb7/D849GJTXcW0BnCEuqdiMrIc3oJQHgDGnkNrPcPl65of5+2Hxzu8oHO02iVzK4tFYRuHY7me9ii7uLPZ3a0sd1LKI3NHRzSlJnGCxD8wwbYZwk1RQgbJBxLmFAgRAHgAHhMImQw2f7jHNIX7x89Ak9nHz3Sk6pvwY9tLh0ZuV+amVM=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 92bcacd8-9d29-41a3-7aeb-08d59de46a02
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2018 06:37:49.8663 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0156
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 0/9] Prepare build scripts to
 support ARM64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: Shijie Huang <Shijie.Huang@arm.com>, Kaly Xin <Kaly.Xin@arm.com>,
 nd <nd@arm.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24sDQoNClNvcnJ5IGZvciByZXBseWluZyBsYXRlciwgSSBoYWQgcHVibGljIGhvbGlk
YXlzIGxhc3Qgd2Vlay4NCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBT
aW1vbiBLdWVuemVyIDxzaW1vbi5rdWVuemVyQG5lY2xhYi5ldT4NCj4gU2VudDogMjAxOOW5tDTm
nIg15pelIDU6MjQNCj4gVG86IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPjsgbWluaW9zLWRl
dmVsQGxpc3RzLnhlbnByb2plY3Qub3JnDQo+IENjOiBTaGlqaWUgSHVhbmcgPFNoaWppZS5IdWFu
Z0Bhcm0uY29tPjsgS2FseSBYaW4gPEthbHkuWGluQGFybS5jb20+OyBuZA0KPiA8bmRAYXJtLmNv
bT4NCj4gU3ViamVjdDogUmU6IFtVTklLUkFGVCBQQVRDSCAwLzldIFByZXBhcmUgYnVpbGQgc2Ny
aXB0cyB0byBzdXBwb3J0IEFSTTY0DQo+IA0KPiBUaGFua3MgYSBsb3QgZm9yIHRoaXMgcGF0Y2gg
c2VyaWVzIQ0KPiBJIGFkZGVkIG15IGNvbW1lbnRzIGlubGluZSB0byBlYWNoIHBhdGNoIGFuZCBs
b29rIGZvcndhcmQgZm9yIHYyLiA7LSkNCj4gDQo+IEkgaGF2ZSBzb21lIGdlbmVyYWwgbWlub3Ig
bm90ZXM6DQo+IA0KPiBDYW4geW91IGNvbmZpcm0gdGhhdCB5b3VyIGZvcm1hdHRpbmcgb2Ygc291
cmNlIGZpbGVzIGlzIGNvcnJlY3Q/IChlLmcuLA0KPiB1c2UgY2hlY2twYXRjaC5wbCkuIFBhdGNo
IDMgdGhyZXcgYSB3YXJuaW5nIHRoYXQgYW5vdGhlciBibGFuayBsaW5lIHdhcw0KPiBpbnRyb2R1
Y2VkIGF0IEVPRi4NCj4gDQoNCkFib3V0IHRoZSBjb2RlLXN0eWxlLCBJIGFsc28gaGF2ZSBzb21l
IGNvbmNlcm5zLiBXaGlsZSBJIHdhcyBtb2RpZnlpbmcgdGhlDQpjb2RlLCBJIGZvdW5kIHNvbWUg
Y29kZSB3YXMgdXNpbmcgInRhYiIgYW5kIHNvbWUgY29kZSB3YXMgdXNpbmcgInNwYWNlcyIgZm9y
DQppbmRlbnQuIFNvIEkgd2Fzbid0IHN1cmUgd2hpY2ggY29kZS1zdHlsZSB3ZSBzaG91bGQgdXNl
Lg0KDQpJIGp1c3QgY2hlY2tlZCB0aGUgY29kZSBhZ2FpbiwgdGhlICJ0YWIiIGluZGVudCBpcyB1
c2UgYnkgdGhvc2UgZmlsZXMgY29waWVkDQpmcm9tIFhlbi4gSSB1bmRlcnN0YW5kIHdlIHNob3Vs
ZCBrZWVwIHRoZSBvcmlnaW5hbCBjb2RlLXN0eWxlIGZvciB0aG9zZQ0KZmlsZXMuIEV4Y2VwdCBz
dWNoIGtpbmQgb2YgZmlsZXMsIHNob3VsZCB3ZSB1c2UgdGhlIExpbnV4IGNvZGUtc3R5bGUgZm9y
DQpVbmlrcmFmdD8NCg0KPiBQbGVhc2UgZG91YmxlIGNoZWNrIHRoZSBzZWxlY3RvcnMgaW4geW91
ciBzaG9ydCBjb21taXQgbWVzc2FnZXMuIFBhdGNoDQo+IDQsIGZvciBpbnN0YW5jZSwgc2hvdWxk
IHVzZSAnaW5jbHVkZScgaW5zdGVhZCBvZiAnYnVpbGQnLg0KPiANCg0KT2gsIHRoYXQncyByaWdo
dC4gVGhvdWdoIHRoaXMgc2VyaWVzIGlzIGZvciAnYnVpbGQnLCBidXQgcGF0Y2gjNCBtb2RpZmll
ZA0KVGhlICJpbmNsdWRlIi4gSSBzaG91bGQgdXNlIHRoZSAnaW5jbHVkZTonIGFzIHN1YmplY3Qg
cHJlZml4Lg0KDQo+IFNpbmNlIEkgc2F3IGl0IGluIHNldmVyYWwgY29tbWl0IG1lc3NhZ2VzOiBS
ZW1vdmUgdGhlICJoYXZlIHRvInMgaW4geW91cg0KPiBjb21taXQgbWVzc2FnZXMuIFRoZXkgYXJl
IHN0aWxsIGZpbmUgd2l0aG91dCA7LSkuIFRoZSBtZXNzYWdlIG9mIGVhY2gNCj4gcGF0Y2ggc2hv
dWxkIGp1c3QgZGVzY3JpYmUgd2hhdCBpdCBkb2VzIC0gaW5kZXBlbmRlbnQgb2YgYW55DQo+IGNp
cmN1bXN0YW5jZXMgb3Igd2VpZ2h0aW5ncy4NCg0KVGhhbmtzLiBJIHdvdWxkIHJlZmluZSB0aGUg
Y29tbWl0IG1lc3NhZ2VzIHRvIGFkZHJlc3MgdGhpcyBjb21tZW50IDogKQ0KDQo+IA0KPiBUaGFu
a3MsDQo+IA0KPiBTaW1vbg0KPiANCj4gT24gMTUuMDMuMjAxOCAwNDozOSwgV2VpIENoZW4gd3Jv
dGU6DQo+ID4gQ3VycmVudGx5LCBVbmlrcmFmdCBvbmx5IHN1cHBvcnRzIGFybTMyIGFuZCB4ODZf
NjQuIFRoZSBmb2xkZXIgbGF5b3V0DQo+ID4gaXMgbm90IHZlcnkgY29udmVuaWVudCB0byBhZGQg
YXJtNjQgb3IgeDg2XzMyIHN1cHBvcnQgdG8gaXQuIEluIHRoaXMNCj4gPiBjYXNlIHdlIHdpbGwg
bW9kaWZ5IHRoZSBmb2xkZXIgbGF5b3V0IHRvIHN1cHBvcnQgY29tbW9uIGNvZGUgZm9yIHRoZQ0K
PiA+IGFyY2hpdGVjdHVyZXMgb2YgdGhlIHNhbWUgQ1BVIGZhbWlsaWVzLiBXZSBhbHNvIGhhdmUg
dG8gbW9kaWZ5IHRoZQ0KPiA+IGJ1aWxkIHNjcmlwdHMgd2hpY2ggY29ycmVzcG9uZGluZyB0byB0
aGlzIGNoYW5nZSBhdCB0aGUgc2FtZSB0aW1lLg0KPiA+DQo+ID4gV2VpIENoZW4gKDkpOg0KPiA+
ICAgIGJ1aWxkOiBBZGp1c3Qgc2VkIHNjcmlwdCB0byBhdm9pZCB0cmVhdGluZyBhcm02NCBhcyBh
cm0NCj4gPiAgICBidWlsZDogSW50cm9kdWNlIGEgbmV3IHZhcmlhYmxlIFVLX0ZBTUlMWQ0KPiA+
ICAgIGJ1aWxkOiBNb3ZlIGFybTMyIGxpYnJhcmllcyB0byBuZXcgZmFtaWx5L2FyY2hpdGVjdHVy
ZSBmb2xkZXINCj4gPiAgICBidWlsZDogTW92ZSBhcmNoaXRlY3R1cmUgaGVhZGVycyB0byBmYW1p
bHkvYXJjaGl0ZWN0dXJlIGZvbGRlcg0KPiA+ICAgIGJ1aWxkOiBBZGQgYSBtYWtlZmlsZSBydWxl
IHRvIGNoZWNrIHZhbGlkIGdjYyB2ZXJzaW9uDQo+ID4gICAgYnVpbGQ6IEFkZCBhcm02NCBhcmNo
aXRlY3R1cmUgY29uZmlnIHRvIG1lbnVjb25maWcNCj4gPiAgICBidWlsZDogQWRkIGEgbWFjcm8g
dG8gY2hlY2sgYW5kIGFkZCBnY2MgZmxhZ3MgZm9yIHRhcmdldCBDUFUNCj4gPiAgICBidWlsZDog
QWRkIGNvbXBpbGVyIGFuZCBmbGFncyBmb3IgYXJtNjQNCj4gPiAgICBidWlsZDogQ2hlY2sgdGhl
IG1pbmltdW0gR0NDIHZlcnNpb24gZm9yIGFybTMyDQo+ID4NCj4gPiAgIE1ha2VmaWxlICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgMzYgKystDQo+ID4gICBhcmNoL0FyY2gudWsgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgICAyICsNCj4gPiAgIGFyY2gvQ29uZmlnLnVrICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDcgKy0NCj4gPiAgIGFyY2gvYXJtL0NvbXBpbGVyLnVrICAg
ICAgICAgICAgICAgICAgfCAgIDQgKw0KPiA+ICAgYXJjaC9hcm0vQ29uZmlnLnVrICAgICAgICAg
ICAgICAgICAgICB8ICA2NyArKysrKy0NCj4gPiAgIGFyY2gvYXJtL01ha2VmaWxlLnVrICAgICAg
ICAgICAgICAgICAgfCAgODMgKysrKysrLQ0KPiA+ICAgYXJjaC9hcm0vYXJtMzIvZGl2c2kzLlMg
ICAgICAgICAgICAgICB8IDQwNA0KPiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
DQo+ID4gICBhcmNoL2FybS9hcm0zMi9sZGl2bW9kLlMgICAgICAgICAgICAgIHwgIDY4ICsrKysr
Kw0KPiA+ICAgYXJjaC9hcm0vYXJtMzIvbGRpdm1vZF9oZWxwZXIuYyAgICAgICB8ICA2NyArKysr
KysNCj4gPiAgIGFyY2gvYXJtL2FybTMyL3FkaXZyZW0uYyAgICAgICAgICAgICAgfCAzMjQgKysr
KysrKysrKysrKysrKysrKysrKysrKysrDQo+ID4gICBhcmNoL2FybS9kaXZzaTMuUyAgICAgICAg
ICAgICAgICAgICAgIHwgNDA0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0t
DQo+ID4gICBhcmNoL2FybS9sZGl2bW9kLlMgICAgICAgICAgICAgICAgICAgIHwgIDY4IC0tLS0t
LQ0KPiA+ICAgYXJjaC9hcm0vbGRpdm1vZF9oZWxwZXIuYyAgICAgICAgICAgICB8ICA2NyAtLS0t
LS0NCj4gPiAgIGFyY2gvYXJtL3FkaXZyZW0uYyAgICAgICAgICAgICAgICAgICAgfCAzMjQgLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gICBhcmNoL3g4Ni9Db21waWxlci51ayAgICAg
ICAgICAgICAgICAgIHwgICA2ICsNCj4gPiAgIGFyY2gveDg2L0NvbmZpZy51ayAgICAgICAgICAg
ICAgICAgICAgfCAgODkgKysrKysrKysNCj4gPiAgIGFyY2gveDg2L01ha2VmaWxlLnVrICAgICAg
ICAgICAgICAgICAgfCAgMzcgKysrKw0KPiA+ICAgYXJjaC94ODZfNjQvQ29tcGlsZXIudWsgICAg
ICAgICAgICAgICB8ICAgNiAtDQo+ID4gICBhcmNoL3g4Nl82NC9Db25maWcudWsgICAgICAgICAg
ICAgICAgIHwgIDg5IC0tLS0tLS0tDQo+ID4gICBhcmNoL3g4Nl82NC9NYWtlZmlsZS51ayAgICAg
ICAgICAgICAgIHwgIDM3IC0tLS0NCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIvYXRv
bWljLmggICAgfCAgNjQgKysrKysrDQo+ID4gICBpbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2lu
dHNpemVzLmggIHwgIDQ1ICsrKysNCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIvbGNw
dS5oICAgICAgfCAgNTkgKysrKysNCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIvbGlt
aXRzLmggICAgfCAgNDUgKysrKw0KPiA+ICAgaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi90eXBl
cy5oICAgICB8ICAzNSArKysNCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC9hcm0vYXRvbWljLmggICAg
ICAgICAgfCAgNjQgLS0tLS0tDQo+ID4gICBpbmNsdWRlL3VrL2FyY2gvYXJtL2ludHNpemVzLmgg
ICAgICAgIHwgIDQ1IC0tLS0NCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC9hcm0vbGNwdS5oICAgICAg
ICAgICAgfCAgNTkgLS0tLS0NCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC9hcm0vbGltaXRzLmggICAg
ICAgICAgfCAgNDUgLS0tLQ0KPiA+ICAgaW5jbHVkZS91ay9hcmNoL2FybS90eXBlcy5oICAgICAg
ICAgICB8ICAzNSAtLS0NCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC9hdG9taWMuaCAgICAgICAgICAg
ICAgfCAgIDggKy0NCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC9sY3B1LmggICAgICAgICAgICAgICAg
fCAgIDggKy0NCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC9saW1pdHMuaCAgICAgICAgICAgICAgfCAg
MTYgKy0NCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC90eXBlcy5oICAgICAgICAgICAgICAgfCAgMTYg
Ky0NCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2F0b21pYy5oICAgfCAgNDUgKysr
Kw0KPiA+ICAgaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvaW50c2l6ZXMuaCB8ICA0NSArKysr
DQo+ID4gICBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9sY3B1LmggICAgIHwgIDczICsrKysr
Kw0KPiA+ICAgaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGltaXRzLmggICB8ICA0NiArKysr
DQo+ID4gICBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC90eXBlcy5oICAgIHwgIDM4ICsrKysN
Cj4gPiAgIGluY2x1ZGUvdWsvYXJjaC94ODZfNjQvYXRvbWljLmggICAgICAgfCAgNDUgLS0tLQ0K
PiA+ICAgaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9pbnRzaXplcy5oICAgICB8ICA0NSAtLS0tDQo+
ID4gICBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaCAgICAgICAgIHwgIDczIC0tLS0tLQ0K
PiA+ICAgaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9saW1pdHMuaCAgICAgICB8ICA0NiAtLS0tDQo+
ID4gICBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L3R5cGVzLmggICAgICAgIHwgIDM4IC0tLS0NCj4g
PiAgIHN1cHBvcnQvYnVpbGQvTWFrZWZpbGUucnVsZXMgICAgICAgICAgfCAgIDggKw0KPiA+ICAg
NDUgZmlsZXMgY2hhbmdlZCwgMTY5OCBpbnNlcnRpb25zKCspLCAxNTM3IGRlbGV0aW9ucygtKQ0K
PiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FybTMyL2RpdnNpMy5TDQo+ID4gICBj
cmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtMzIvbGRpdm1vZC5TDQo+ID4gICBjcmVhdGUg
bW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtMzIvbGRpdm1vZF9oZWxwZXIuYw0KPiA+ICAgY3JlYXRl
IG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FybTMyL3FkaXZyZW0uYw0KPiA+ICAgZGVsZXRlIG1vZGUg
MTAwNjQ0IGFyY2gvYXJtL2RpdnNpMy5TDQo+ID4gICBkZWxldGUgbW9kZSAxMDA2NDQgYXJjaC9h
cm0vbGRpdm1vZC5TDQo+ID4gICBkZWxldGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vbGRpdm1vZF9o
ZWxwZXIuYw0KPiA+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL3FkaXZyZW0uYw0KPiA+
ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gveDg2L0NvbXBpbGVyLnVrDQo+ID4gICBjcmVhdGUg
bW9kZSAxMDA2NDQgYXJjaC94ODYvQ29uZmlnLnVrDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQg
YXJjaC94ODYvTWFrZWZpbGUudWsNCj4gPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBhcmNoL3g4Nl82
NC9Db21waWxlci51aw0KPiA+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gveDg2XzY0L0NvbmZp
Zy51aw0KPiA+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gveDg2XzY0L01ha2VmaWxlLnVrDQo+
ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9hdG9taWMu
aA0KPiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIvaW50
c2l6ZXMuaA0KPiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJt
MzIvbGNwdS5oDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS9h
cm0zMi9saW1pdHMuaA0KPiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9h
cm0vYXJtMzIvdHlwZXMuaA0KPiA+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJj
aC9hcm0vYXRvbWljLmgNCj4gPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gv
YXJtL2ludHNpemVzLmgNCj4gPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gv
YXJtL2xjcHUuaA0KPiA+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0v
bGltaXRzLmgNCj4gPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gvYXJtL3R5
cGVzLmgNCj4gPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82
NC9hdG9taWMuaA0KPiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODYv
eDg2XzY0L2ludHNpemVzLmgNCj4gPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2Fy
Y2gveDg2L3g4Nl82NC9sY3B1LmgNCj4gPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3Vr
L2FyY2gveDg2L3g4Nl82NC9saW1pdHMuaA0KPiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1
ZGUvdWsvYXJjaC94ODYveDg2XzY0L3R5cGVzLmgNCj4gPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBp
bmNsdWRlL3VrL2FyY2gveDg2XzY0L2F0b21pYy5oDQo+ID4gICBkZWxldGUgbW9kZSAxMDA2NDQg
aW5jbHVkZS91ay9hcmNoL3g4Nl82NC9pbnRzaXplcy5oDQo+ID4gICBkZWxldGUgbW9kZSAxMDA2
NDQgaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9sY3B1LmgNCj4gPiAgIGRlbGV0ZSBtb2RlIDEwMDY0
NCBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xpbWl0cy5oDQo+ID4gICBkZWxldGUgbW9kZSAxMDA2
NDQgaW5jbHVkZS91ay9hcmNoL3g4Nl82NC90eXBlcy5oDQo+ID4NCl9fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QK
TWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVj
dC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 09 07:11:21 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 09 Apr 2018 07:11:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f5QxU-0005Dj-Js; Mon, 09 Apr 2018 07:11:20 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=sv3z=g6=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f5QxT-0005De-O6
 for minios-devel@lists.xenproject.org; Mon, 09 Apr 2018 07:11:19 +0000
X-Inumbo-ID: 1730c177-3bc5-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::60e])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 1730c177-3bc5-11e8-9728-bc764e045a96;
 Mon, 09 Apr 2018 09:10:32 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=2awR55QcA3iIlm0MyHDyZfDguKecKo5w9jn30Z2x6u8=;
 b=ndc9/ClwezOoYwhs/ucw6+4OHUKKKMgBgCE9jz7WhjJHnEXadfrlMZj0mEf0j0nLAyV+s0I+4cZcZPpHkc47J0d2r+B82AhrLLU3lGbx6N2PiqLFjTnBAMUgNfCQYfrY8WXQ0BNN0FcR2C0++Kr2BSolEa0RWNcYTHg/cNRvB58=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0153.eurprd08.prod.outlook.com (10.161.60.152) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.631.10; Mon, 9 Apr 2018 07:11:10 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0653.014; Mon, 9 Apr 2018
 07:11:10 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>,
 "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Thread-Topic: [UNIKRAFT PATCH 2/9] build: Introduce a new variable UK_FAMILY
Thread-Index: AQHTvA9Bb23+yCyV8k+a350zIhfM+qPxPsCAgAbkffA=
Date: Mon, 9 Apr 2018 07:11:09 +0000
Message-ID: <DB3PR08MB01072D9CABDE053029FD21309EBF0@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-3-git-send-email-Wei.Chen@arm.com>
 <b528a08e-47f4-39b1-def0-d1cec13a1a59@neclab.eu>
In-Reply-To: <b528a08e-47f4-39b1-def0-d1cec13a1a59@neclab.eu>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0153;
 7:qrbHmiqxWOKnKJox8zWY8aF7Gh1o1Jz5hfnADYYNIDBJGiVfBGkctx8Qwb1ZSm82CWVNOpShqtlp0MmdZGKBwiGqsdOr+fLsBkIEaf++aAMXa7y69WkHSX1Ey3tgDPkp6cGhsUTDsLPNsOUtE1vsOyl4mxR36ngFajYtW5HYgcm2Ovq508aKA9oVByX+CvPK6Y7HJvJ08XNH/wOjAjdWenImm1gnuH4uY1aQvO3CPSGfvf3CQjpwfpzNoVswdb3r
x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR;
x-ms-office365-filtering-ht: Tenant
X-MS-Office365-Filtering-Correlation-Id: aee188b7-6619-4b4f-2885-08d59de9122f
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0153; 
x-ms-traffictypediagnostic: DB3PR08MB0153:
nodisclaimer: True
x-microsoft-antispam-prvs: <DB3PR08MB015326A88280F4AED4E2B4999EBF0@DB3PR08MB0153.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(180628864354917)(58134797142442);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(93006095)(93001095)(10201501046)(3231221)(944501327)(52105095)(6055026)(6041310)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:DB3PR08MB0153; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0153; 
x-forefront-prvs: 0637FCE711
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(39380400002)(366004)(346002)(39850400004)(396003)(376002)(13464003)(189003)(199004)(6436002)(3280700002)(9686003)(5660300001)(7696005)(59450400001)(3660700001)(6506007)(97736004)(53546011)(53946003)(186003)(53936002)(55236004)(110136005)(229853002)(86362001)(446003)(6116002)(3846002)(54906003)(99286004)(316002)(6246003)(476003)(26005)(11346002)(55016002)(2501003)(2900100001)(105586002)(8936002)(25786009)(7736002)(33656002)(81156014)(76176011)(14454004)(106356001)(4326008)(102836004)(305945005)(8676002)(68736007)(5250100002)(478600001)(74316002)(81166006)(66066001)(72206003)(2906002)(486006)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0153;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; MX:1; A:1; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: 63YbUzpRk7+f7Az4+NsOUwg2vuKd1psREB/fRaF15F1mC4baxpSVBkeTpPp2nlkJREHv+Zc616GYi+3b8kkctLyX51i3xXRCD/0aEQOA3Zr1+4m8o1kHnd5/VU4jp21KvRmLfzUX1c4dwo4C6JMWxRTt8KAEH3S8Icasyrx/QomyT0KfsgWwc4PVN+wYESnm0rQ4jGW5XxJ6hqz34FaK9Xy4kDjtmNFzgAJP3gjA70CLpFF6KAqeoU6jygScCrYTiQrhlNXoEg8PEeeOSxs1QmOb+dVi1zLOuKHqjBgXZFvAjtNBAZbqcdWtPMZxK/nNvq3OrPXlTJL4dmX0skmmmY0pTkuk6VsM6fEV/bCLcmPU+3GlHWI8rtnflx9+a/oP3R48lYP3VDb9s+7r/+ZClf3c6ZEueqDBPktMrCB9y44=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: aee188b7-6619-4b4f-2885-08d59de9122f
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2018 07:11:09.9252 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0153
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 2/9] build: Introduce a new
 variable UK_FAMILY
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: Shijie Huang <Shijie.Huang@arm.com>, Kaly Xin <Kaly.Xin@arm.com>,
 nd <nd@arm.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogU2ltb24g
S3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+DQo+IFNlbnQ6IDIwMTjlubQ05pyINeaX
pSA1OjI1DQo+IFRvOiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT47IG1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBDYzogU2hpamllIEh1YW5nIDxTaGlqaWUuSHVhbmdAYXJt
LmNvbT47IEthbHkgWGluIDxLYWx5LlhpbkBhcm0uY29tPjsgbmQNCj4gPG5kQGFybS5jb20+DQo+
IFN1YmplY3Q6IFJlOiBbVU5JS1JBRlQgUEFUQ0ggMi85XSBidWlsZDogSW50cm9kdWNlIGEgbmV3
IHZhcmlhYmxlIFVLX0ZBTUlMWQ0KPiANCj4gT24gMTUuMDMuMjAxOCAwNDozOSwgV2VpIENoZW4g
d3JvdGU6DQo+ID4gV2Ugd2FudCBtb2RpZnkgdGhlIGZvbGRlcnMgbGF5b3V0IGZvciBtdWx0aS1h
cmNoaXRlY3R1cmVzIGxpa2U6DQo+ID4gdW5pa3JhZnQtLS0tYXJjaC0tLS1hcm0tLS0tYXJtMzIN
Cj4gPiAgICAgICAgICAgICAgICB8ICAgICAgfC0tLS0tYXJtNjQNCj4gPiAgICAgICAgICAgICAg
ICB8DQo+ID4gICAgICAgICAgICAgICAgfC0tLS0teDg2LS0tLXg4Ng0KPiA+ICAgICAgICAgICAg
ICAgICAgICAgICB8LS0tLS14ODZfNjQNCj4gDQo+IEludGVhZCBvZiAnV2Ugd2FudCcsIGp1c3Qg
c2F5IHRoYXQgdGhpcyBwYXRjaCBtb2RpZmllcyB0aGUgZm9sZGVyIGxheW91dA0KPiBvcmdhbml6
ZWQgYnkgQ1BVIGZhbWlsaWVzLiBZb3UgY2FuIGtlZXAgdGhlIGFzY2lpIGFydCBhcyBleGFtcGxl
Lg0KDQpJdCBzb3VuZHMgYmV0dGVyLiBJIHdvdWxkIHVwZGF0ZSBpdCBpbiB2Mi4NCg0KPiANCj4g
Pg0KPiA+IEluIHRoaXMgY2FzZSwgd2UgaW50cm9kdWNlIGEgbmV3IHZhcmlhYmxlIFVLX0ZBTUlM
WSBmb3IgYnVpbGQgc2NpcHRzLg0KPiA+IHdlIHNob3VsZCBub3QgZXhwZWN0IHRoZSB1c2VyIHRv
IHNldCBvciBzZWxlY3QgVUtfRkFNSUxZIGluIGEgbWVudSBvcg0KPiA+IGJ5IHNldHRpbmcgdGhl
IHZhcmlhYmxlIGV4dGVybmFsbHkuIFNvIHdlIHJldHJpZXZlIFVLX0ZBTUlMWSBkaXJlY3RseQ0K
PiA+IGZyb20gVUtfQVJDSC4gQmVjYXVzZSBvZiB0aGlzIHdlIGNhbiBrZWVwIENvbXBpbGVyLnVr
LCBNYWtlZmlsZS51aywNCj4gPiBhbmQgQ29uZmlnLnVrIGRpcmVjdGx5IHVuZGVyIHRoZSBVS19G
QU1JTFkgZGlyZWN0b3J5Lg0KPiANCj4gVGhpcyBpcyBhY3R1YWxseSBhIGdvb2QgdGhpbmcuIEkg
bGlrZSB0aGF0IHdlIGtlZXAgaXQgb3BlbiBob3cgdGhlDQo+IGluZGl2aWR1YWwgYXJjaGl0ZWN0
dXJlcyBvcmdhbml6ZSB0aGVpciBmb2xkZXIgc3RydWN0dXJlcy4gRm9yIHNvbWUgaXQNCj4gbWln
aHQgbWFrZSBzZW5zZSB0byB1c2UgZm9yd2FyZCBkZWNsYXJhdGlvbnMgaW4gQ29tcGlsZXIudWsg
YW5kDQo+IE1ha2VmaWxlLnVrIHRvIGluY2x1ZGUgYSBjb3JyZXNwb25kaW5nIGZpbGUgaW4gYSBz
dWJmb2xkZXI6DQo+IA0KPiBGb3IgaW5zdGFuY2UgYXJtL01ha2VmaWxlLnVrIGluY2x1ZGVzIGFy
bS9hcm0zMi9NYWtlZmlsZS51ayB3aGVuIGFuDQo+IEFSTTMyIGFyY2hpdGVjdHVyZSB3YXMgc2Vs
ZWN0ZWQuDQo+IA0KDQpZZXMsIHRoYXQgbWFrZXMgc2Vuc2UuIFVzaW5nIGZvcndhcmQgZGVjbGFy
YXRpb25zIHdpbGwgcmVkdWNlIHRoZQ0KY29tcGxleGl0eSBvZiBhcm0vTWFrZWZpbGUudWsuIEkg
d2lsbCBtb2RpZnkgdGhlIE1ha2VmaWxlIGFuZCBtZW50aW9uDQphYm92ZSBtZXNzYWdlIGluIHYy
LiAgDQoNCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29t
Pg0KPiA+IC0tLQ0KPiA+ICAgTWFrZWZpbGUgICAgICAgICAgICAgICAgfCAyNSArKysrKysrKyst
LS0tLQ0KPiA+ICAgYXJjaC9Db25maWcudWsgICAgICAgICAgfCAgMiArLQ0KPiA+ICAgYXJjaC94
ODYvQ29tcGlsZXIudWsgICAgfCAgNiArKysrDQo+ID4gICBhcmNoL3g4Ni9Db25maWcudWsgICAg
ICB8IDg5DQo+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysNCj4gPiAgIGFyY2gveDg2L01ha2VmaWxlLnVrICAgIHwgMzcgKysrKysrKysrKysrKysrKysr
KysNCj4gPiAgIGFyY2gveDg2XzY0L0NvbXBpbGVyLnVrIHwgIDYgLS0tLQ0KPiA+ICAgYXJjaC94
ODZfNjQvQ29uZmlnLnVrICAgfCA4OSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0NCj4gLS0tLQ0KPiA+ICAgYXJjaC94ODZfNjQvTWFrZWZpbGUudWsgfCAzNyAt
LS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ICAgOCBmaWxlcyBjaGFuZ2VkLCAxNTAgaW5zZXJ0aW9u
cygrKSwgMTQxIGRlbGV0aW9ucygtKQ0KPiA+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gveDg2
L0NvbXBpbGVyLnVrDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC94ODYvQ29uZmlnLnVr
DQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC94ODYvTWFrZWZpbGUudWsNCj4gPiAgIGRl
bGV0ZSBtb2RlIDEwMDY0NCBhcmNoL3g4Nl82NC9Db21waWxlci51aw0KPiA+ICAgZGVsZXRlIG1v
ZGUgMTAwNjQ0IGFyY2gveDg2XzY0L0NvbmZpZy51aw0KPiA+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0
IGFyY2gveDg2XzY0L01ha2VmaWxlLnVrDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvTWFrZWZpbGUg
Yi9NYWtlZmlsZQ0KPiA+IGluZGV4IGY4Y2I2NjEuLjQ5ZTUwNzAgMTAwNjQ0DQo+ID4gLS0tIGEv
TWFrZWZpbGUNCj4gPiArKysgYi9NYWtlZmlsZQ0KPiA+IEBAIC0yOTcsNyArMjk3LDYgQEAgZXhw
b3J0IEhPU1RBUkNIIDo9ICQoc2hlbGwgTENfQUxMPUMgJChIT1NUQ0NfTk9DQ0FDSEUpIC0NCj4g
diAyPiYxIHwgXA0KPiA+ICAgZXhwb3J0IEhPU1RBUiBIT1NUQVMgSE9TVENDIEhPU1RDQ19WRVJT
SU9OIEhPU1RDWFggSE9TVExEIEhPU1RBUkNIDQo+ID4gICBleHBvcnQgSE9TVENDX05PQ0NBQ0hF
IEhPU1RDWFhfTk9DQ0FDSEUNCj4gPg0KPiA+IC0NCj4gPg0KPiAjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMNCj4gIyMNCj4gPiAgICMgVW5pa3JhZnQgQXJjaGl0ZWN0dXJlDQo+ID4NCj4gIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjDQo+ICMjDQo+ID4gQEAgLTMzNywxNCArMzM2LDI0IEBAIGVuZGlmDQo+ID4g
ICBvdmVycmlkZSBBUkNIIDo9ICQoVUtfQVJDSCkNCj4gPiAgIGV4cG9ydCBVS19BUkNIIEFSQ0gN
Cj4gPg0KPiA+IC0jIFF1aWNrLWNoZWNrIGlmIGFyY2hpdGVjdHVyZSBleGlzdHMNCj4gPiArIyBS
ZXRyaXZlIHRhcmdldCBDUFUgZmFtaWx5IGZyb20gYXJjaGl0ZWN0dXJlDQo+ID4gK2V4cG9ydCBV
S19GQU1JTFkgPz0gJChzaGVsbCBlY2hvICIkKFVLX0FSQ0gpIiB8IFwNCj4gPiArCQkJc2VkIC1l
ICJzLy0uKi8vIiBcDQo+ID4gKwkJCQktZSAncy8vXDEvJyBcDQo+ID4gKwkJCQktZSAncy94ODYu
Ki94ODYvJyBcDQo+ID4gKwkJCQktZSAncy9zcGFyYzY0L3NwYXJjLycgXA0KPiA+ICsJCQkJLWUg
J3MvYXJtLiovYXJtLycgXA0KPiA+ICsJCQkJLWUgJ3MvcG93ZXJwYy4qL3Bvd2VycGMvJyBcDQo+
ID4gKwkJCQktZSAncy9zaC4qL3NoLycgKQ0KPiA+ICsNCj4gPiArIyBRdWljay1jaGVjayBpZiBh
cmNoaXRlY3R1cmUgZmFtaWx5IGV4aXN0cw0KPiA+ICAgaWZlcSAoJChmaWx0ZXIgJChudWxsX3Rh
cmdldHMpIHByaW50LXZhcnMsJChNQUtFQ01ER09BTFMpKSwpDQo+ID4gLWlmZXEgKCQod2lsZGNh
cmQgJChVS19CQVNFKS9hcmNoLyQoQVJDSCkvTWFrZWZpbGUudWspLCkNCj4gPiAtJChlcnJvciBU
YXJnZXQgYXJjaGl0ZWN0dXJlICgkKEFSQ0gpKSBpcyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZCAo
Y291bGQgbm90DQo+IGZpbmQgJChVS19CQVNFKS9hcmNoLyQoQVJDSCkvTWFrZWZpbGUudWspLikN
Cj4gPiAraWZlcSAoJCh3aWxkY2FyZCAkKFVLX0JBU0UpL2FyY2gvJChVS19GQU1JTFkpL01ha2Vm
aWxlLnVrKSwpDQo+ID4gKyQoZXJyb3IgVGFyZ2V0IGZhbWlseSAoJChVS19GQU1JTFkpKSBpcyBj
dXJyZW50bHkgbm90IHN1cHBvcnRlZCAoY291bGQgbm90DQo+IGZpbmQgJChVS19CQVNFKS9hcmNo
LyQoVUtfRkFNSUxZKS9NYWtlZmlsZS51aykuKQ0KPiA+ICAgZW5kaWYNCj4gPg0KPiA+IC1pZmVx
ICgkKHdpbGRjYXJkIGFyY2gvJChBUkNIKS9Db21waWxlci51ayksKQ0KPiA+IC0kKGVycm9yIFRh
cmdldCBhcmNoaXRlY3R1cmUgKCQoQVJDSCkpIGlzIGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkIChj
b3VsZCBub3QNCj4gZmluZCAkKFVLX0JBU0UpL2FyY2gvJChBUkNIKS9Db21waWxlci51aykuKQ0K
PiA+ICtpZmVxICgkKHdpbGRjYXJkICQoVUtfQkFTRSkvYXJjaC8kKFVLX0ZBTUlMWSkvQ29tcGls
ZXIudWspLCkNCj4gPiArJChlcnJvciBUYXJnZXQgZmFtaWx5ICgkKFVLX0ZBTUlMWSkpIGlzIGN1
cnJlbnRseSBub3Qgc3VwcG9ydGVkIChjb3VsZCBub3QNCj4gZmluZCAkKFVLX0JBU0UpL2FyY2gv
JChVS19GQU1JTFkpL0NvbXBpbGVyLnVrKS4pDQo+ID4gICBlbmRpZg0KPiA+ICAgZW5kaWYNCj4g
Pg0KPiA+IEBAIC0zODMsNyArMzkyLDcgQEAgdW5leHBvcnQgTUFDSElORQ0KPiA+ICAgIyBOb3Rl
OiBTb21lIGFyY2hpdGVjdHVyZXMgYXNzaWduIENST1NTX0NPTVBJTEUgaW4gdGhlaXINCj4gYXJj
aC8qL01ha2VmaWxlLnVrDQo+ID4gICBDUk9TU19DT01QSUxFIDo9ICQoQ1JPU1NfQ09NUElMRToi
JSI9JSkNCj4gPg0KPiA+IC1pbmNsdWRlICQoVUtfQkFTRSkvYXJjaC8kKFVLX0FSQ0gpL0NvbXBp
bGVyLnVrDQo+ID4gK2luY2x1ZGUgJChVS19CQVNFKS9hcmNoLyQoVUtfRkFNSUxZKS9Db21waWxl
ci51aw0KPiA+DQo+ID4gICAjIE1ha2UgdmFyaWFibGVzIChDQywgZXRjLi4uKQ0KPiA+ICAgTEQJ
CTo9ICQoQ1JPU1NfQ09NUElMRSlsZA0KPiA+IEBAIC00NDUsNyArNDU0LDcgQEAgZW5kaWYNCj4g
PiAgICQoZm9yZWFjaCBFLCQoRUxJQl9ESVIpLCBcDQo+ID4gICAJJChldmFsICQoY2FsbCBfaW1w
b3J0X2xpYiwkKEUpKSk7IFwNCj4gPiAgICkNCj4gPiAtJChldmFsICQoY2FsbCBfaW1wb3J0X2xp
YiwkKFVLX0JBU0UpL2FyY2gvJChVS19BUkNIKSkpICMgYXJjaGl0ZWN0dXJlDQo+IGxpYnJhcmll
cw0KPiA+ICskKGV2YWwgJChjYWxsIF9pbXBvcnRfbGliLCQoVUtfQkFTRSkvYXJjaC8kKFVLX0ZB
TUlMWSkpKSAjIGFyY2hpdGVjdHVyZQ0KPiBsaWJyYXJpZXMNCj4gPiAgIGluY2x1ZGUgJChVS19C
QVNFKS9wbGF0L01ha2VmaWxlLnVrICMgcGxhdGZvcm0gbGlicmFyaWVzDQo+ID4gICBpbmNsdWRl
ICQoVUtfQkFTRSkvbGliL01ha2VmaWxlLnVrICMgbGlicmFyaWVzDQo+ID4gICBpbmNsdWRlICQo
VUtfQkFTRSkvTWFrZWZpbGUudWsgIyBVbmlrcmFmdCBiYXNlDQo+ID4gZGlmZiAtLWdpdCBhL2Fy
Y2gvQ29uZmlnLnVrIGIvYXJjaC9Db25maWcudWsNCj4gPiBpbmRleCAzNmRmOGQxLi5hMDQwMjg4
IDEwMDY0NA0KPiA+IC0tLSBhL2FyY2gvQ29uZmlnLnVrDQo+ID4gKysrIGIvYXJjaC9Db25maWcu
dWsNCj4gPiBAQCAtMTMsNyArMTMsNyBAQCBjb25maWcgQVJDSF9BUk1fMzINCj4gPiAgIGVuZGNo
b2ljZQ0KPiA+DQo+ID4gICBpZiAoQVJDSF9YODZfNjQpDQo+ID4gLQlzb3VyY2UgImFyY2gveDg2
XzY0L0NvbmZpZy51ayINCj4gPiArCXNvdXJjZSAiYXJjaC94ODYvQ29uZmlnLnVrIg0KPiA+ICAg
ZW5kaWYNCj4gPiAgIGlmIChBUkNIX0FSTV8zMikNCj4gPiAgIAlzb3VyY2UgImFyY2gvYXJtL0Nv
bmZpZy51ayINCj4gPiBkaWZmIC0tZ2l0IGEvYXJjaC94ODYvQ29tcGlsZXIudWsgYi9hcmNoL3g4
Ni9Db21waWxlci51aw0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAw
MC4uYTU0NzBlZA0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9hcmNoL3g4Ni9Db21waWxl
ci51aw0KPiA+IEBAIC0wLDAgKzEsNiBAQA0KPiA+ICsjIHNldCBjcm9zcyBjb21waWxlDQo+ID4g
K2lmZXEgKCQoQ1JPU1NfQ09NUElMRSksKQ0KPiA+ICtpZm5lcSAoJChVS19BUkNIKSwkKEhPU1RB
UkNIKSkNCj4gPiArCUNST1NTX0NPTVBJTEUgOj0geDg2XzY0LWxpbnV4LWdudS0NCj4gPiArZW5k
aWYNCj4gPiArZW5kaWYNCj4gPiBkaWZmIC0tZ2l0IGEvYXJjaC94ODYvQ29uZmlnLnVrIGIvYXJj
aC94ODYvQ29uZmlnLnVrDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAw
MDAwLi5jYTQ5ZWVkDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2FyY2gveDg2L0NvbmZp
Zy51aw0KPiA+IEBAIC0wLDAgKzEsODkgQEANCj4gPiArY2hvaWNlDQo+ID4gKwlwcm9tcHQgIlBy
b2Nlc3NvciBPcHRpbWl6YXRpb24iDQo+ID4gKwlkZWZhdWx0IE1BUkNIX0dFTkVSSUMNCj4gPiAr
CWhlbHANCj4gPiArCQlPcHRpbWl6ZSB0aGUgY29kZSBmb3Igc2VsZWN0ZWQgdGFyZ2V0IHByb2Nl
c3Nvcg0KPiA+ICsJCUdlbmVyaWMgeDg2XzY0IGRvZXMgbm90IGVuYWJsZSBhbnkgYWRkaXRpb25h
bCBDUFUgZmVhdHVyZXMNCj4gPiArCQkoZS5nLiwgU1NFLCAzRE5vdyEpIGFuZCBwcm9kdWNlcyBo
aWdobHkgcHJvdGFibGUgY29kZSBmb3IgeDg2Lg0KPiA+ICsNCj4gPiArY29uZmlnIE1BUkNIX05B
VElWRQ0KPiA+ICsJYm9vbCAiQXV0by1kZXRlY3QgaG9zdCBDUFUiDQo+ID4gKwloZWxwDQo+ID4g
KwkJT3B0aW1pemUgY29tcGlsYXRpb24gdG8gaG9zdCBDUFUNCj4gPiArCQlQbGVhc2Ugbm90ZSB0
aGF0IHRoaXMgb3B0aW9uIHdpbGwgZmFpbCBpbiBjYXNlIG9mIGNyb3NzLQ0KPiBjb21waWxhdGlv
bg0KPiA+ICsNCj4gPiArY29uZmlnIE1BUkNIX0dFTkVSSUMNCj4gPiArCWJvb2wgIkdlbmVyaWMg
NjQtYml0Ig0KPiA+ICsJaGVscA0KPiA+ICsJCUNvbXBpbGUgZm9yIDY0LWJpdCBjb21wYXRpYmxl
IHg4NiBDUFVzDQo+ID4gKw0KPiA+ICtjb25maWcgTUFSQ0hfTk9DT05BDQo+ID4gKwlib29sICJJ
bnRlbCBQZW50aXVtIDQvWGVvbiAoTm9jb25hKSINCj4gPiArCWhlbHANCj4gPiArCQlJbXByb3Zl
ZCB2ZXJzaW9uIG9mIEludGVsIFBlbnRpdW0gNCBDUFUgd2l0aCA2NC1iaXQgZXh0ZW5zaW9ucywN
Cj4gTU1YLCBTU0UsIFNTRTIgYW5kIFNTRTMgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuDQo+ID4g
Kw0KPiA+ICtjb25maWcgTUFSQ0hfQ09SRTINCj4gPiArCWJvb2wgIkludGVsIENvcmUgMi9YZW9u
Ig0KPiA+ICsJaGVscA0KPiA+ICsJCUludGVsIENvcmUgMiBDUFUgd2l0aCA2NC1iaXQgZXh0ZW5z
aW9ucywgTU1YLCBTU0UsIFNTRTIsIFNTRTMgYW5kDQo+IFNTU0UzIGluc3RydWN0aW9uIHNldCBz
dXBwb3J0Lg0KPiA+ICsNCj4gPiArY29uZmlnIE1BUkNIX0NPUkVJNw0KPiA+ICsJYm9vbCAiSW50
ZWwgQ29yZSBpNy9YZW9uIg0KPiA+ICsJaGVscA0KPiA+ICsJCUludGVsIENvcmUgaTcgQ1BVIHdp
dGggNjQtYml0IGV4dGVuc2lvbnMsIE1NWCwgU1NFLCBTU0UyLCBTU0UzLA0KPiBTU1NFMywgU1NF
NC4xIGFuZCBTU0U0LjIgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuDQo+ID4gKw0KPiA+ICtjb25m
aWcgTUFSQ0hfQ09SRUk3QVZYDQo+ID4gKwlib29sICJJbnRlbCBDb3JlIGk3L1hlb24gK0FWWCIN
Cj4gPiArCWhlbHANCj4gPiArCQlJbnRlbCBDb3JlIGk3IENQVSB3aXRoIDY0LWJpdCBleHRlbnNp
b25zLCBNTVgsIFNTRSwgU1NFMiwgU1NFMywNCj4gU1NTRTMsIFNTRTQuMSwgU1NFNC4yLCBBVlgs
IEFFUyBhbmQgUENMTVVMIGluc3RydWN0aW9uIHNldCBzdXBwb3J0Lg0KPiA+ICsNCj4gPiArY29u
ZmlnIE1BUkNIX0NPUkVJN0FWWEkNCj4gPiArCWJvb2wgIkludGVsIENvcmUvWGVvbiArQVZYICtS
RFJORCINCj4gPiArCWhlbHANCj4gPiArCQlJbnRlbCBDb3JlIENQVSB3aXRoIDY0LWJpdCBleHRl
bnNpb25zLCBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NTRTMsDQo+IFNTRTQuMSwgU1NFNC4yLCBB
VlgsIEFFUywgUENMTVVMLCBGU0dTQkFTRSwgUkRSTkQgYW5kIEYxNkMgaW5zdHJ1Y3Rpb24gc2V0
DQo+IHN1cHBvcnQuDQo+ID4gKw0KPiA+ICtjb25maWcgTUFSQ0hfQVRPTQ0KPiA+ICsJYm9vbCAi
SW50ZWwgQXRvbSA2NC1iaXQiDQo+ID4gKwloZWxwDQo+ID4gKwkJSW50ZWwgQXRvbSBDUFUgd2l0
aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIsIFNTRTMgYW5kDQo+IFNTU0UzIGlu
c3RydWN0aW9uIHNldCBzdXBwb3J0Lg0KPiA+ICsNCj4gPiArY29uZmlnIE1BUkNIX0s4DQo+ID4g
Kwlib29sICJBTUQgQXRobG9uNjQvT3B0ZXJvbiINCj4gPiArCWhlbHANCj4gPiArCQlQcm9jZXNz
b3JzIGJhc2VkIG9uIHRoZSBBTUQgSzggY29yZSB3aXRoIHg4Ni02NCBpbnN0cnVjdGlvbiBzZXQN
Cj4gc3VwcG9ydCwgaW5jbHVkaW5nIHRoZSBBTUQgT3B0ZXJvbiwgQXRobG9uIDY0LCBhbmQgQXRo
bG9uIDY0IEZYIHByb2Nlc3NvcnMuDQo+IChUaGlzIHN1cGVyc2V0cyBNTVgsIFNTRSwgU1NFMiwg
M0ROb3chLCBlbmhhbmNlZCAzRE5vdyEgYW5kIDY0LWJpdCBpbnN0cnVjdGlvbg0KPiBzZXQgZXh0
ZW5zaW9ucy4pDQo+ID4gKw0KPiA+ICtjb25maWcgTUFSQ0hfSzhTU0UzDQo+ID4gKwlib29sICJB
TUQgQXRobG9uNjQvT3B0ZXJvbiArU1NFMyINCj4gPiArCWhlbHANCj4gPiArCQlJbXByb3ZlZCB2
ZXJzaW9ucyBvZiBBTUQgSzggY29yZXMgd2l0aCBTU0UzIGluc3RydWN0aW9uIHNldA0KPiBzdXBw
b3J0Lg0KPiA+ICsNCj4gPiArY29uZmlnIE1BUkNIX0FNREZBTTEwDQo+ID4gKwlib29sICJBTUQg
RmFtaWx5IDEwaCBjb3JlcyINCj4gPiArCWhlbHANCj4gPiArCQlDUFVzIGJhc2VkIG9uIEFNRCBG
YW1pbHkgMTBoIGNvcmVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldA0KPiBzdXBwb3J0LiAo
VGhpcyBzdXBlcnNldHMgTU1YLCBTU0UsIFNTRTIsIFNTRTMsIFNTRTRBLCAzRE5vdyEsIGVuaGFu
Y2VkIDNETm93ISwNCj4gQUJNIGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMu
KQ0KPiA+ICsNCj4gPiArY29uZmlnIE1BUkNIX0JUVkVSMQ0KPiA+ICsJYm9vbCAiQU1EIEZhbWls
eSAxNGggY29yZXMiDQo+ID4gKwloZWxwDQo+ID4gKwkJQ1BVcyBiYXNlZCBvbiBBTUQgRmFtaWx5
IDE0aCBjb3JlcyB3aXRoIHg4Ni02NCBpbnN0cnVjdGlvbiBzZXQNCj4gc3VwcG9ydC4gKFRoaXMg
c3VwZXJzZXRzIE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBTU1NFMywgU1NFNEEsIENYMTYsIEFCTSBh
bmQgNjQtDQo+IGJpdCBpbnN0cnVjdGlvbiBzZXQgZXh0ZW5zaW9ucy4pDQo+ID4gKw0KPiA+ICtj
b25maWcgTUFSQ0hfQkRWRVIxDQo+ID4gKwlib29sICJBTUQgRmFtaWx5IDE1aCBjb3JlcyAoYmR2
ZXIxKSINCj4gPiArCWhlbHANCj4gPiArCQlDUFVzIGJhc2VkIG9uIEFNRCBGYW1pbHkgMTVoIGNv
cmVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldA0KPiBzdXBwb3J0LiAoVGhpcyBzdXBlcnNl
dHMgRk1BNCwgQVZYLCBYT1AsIExXUCwgQUVTLCBQQ0xfTVVMLCBDWDE2LCBNTVgsIFNTRSwNCj4g
U1NFMiwgU1NFMywgU1NFNEEsIFNTU0UzLCBTU0U0LjEsIFNTRTQuMiwgQUJNIGFuZCA2NC1iaXQg
aW5zdHJ1Y3Rpb24gc2V0DQo+IGV4dGVuc2lvbnMuKQ0KPiA+ICsNCj4gPiArY29uZmlnIE1BUkNI
X0JEVkVSMg0KPiA+ICsJYm9vbCAiQU1EIEZhbWlseSAxNWggY29yZXMgKGJkdmVyMikiDQo+ID4g
KwloZWxwDQo+ID4gKwkJQU1EIEZhbWlseSAxNWggY29yZSBiYXNlZCBDUFVzIHdpdGggeDg2LTY0
IGluc3RydWN0aW9uIHNldCBzdXBwb3J0Lg0KPiAoVGhpcyBzdXBlcnNldHMgQk1JLCBUQk0sIEYx
NkMsIEZNQSwgQVZYLCBYT1AsIExXUCwgQUVTLCBQQ0xfTVVMLCBDWDE2LCBNTVgsDQo+IFNTRSwg
U1NFMiwgU1NFMywgU1NFNEEsIFNTU0UzLCBTU0U0LjEsIFNTRTQuMiwgQUJNIGFuZCA2NC1iaXQg
aW5zdHJ1Y3Rpb24gc2V0DQo+IGV4dGVuc2lvbnMuKQ0KPiA+ICsNCj4gPiArY29uZmlnIE1BUkNI
X0JEVkVSMw0KPiA+ICsJYm9vbCAiQU1EIEZhbWlseSAxNWggY29yZXMgKGJkdmVyMykiDQo+ID4g
KwloZWxwDQo+ID4gKwkJQU1EIEZhbWlseSAxNWggY29yZSBiYXNlZCBDUFVzIHdpdGggeDg2LTY0
IGluc3RydWN0aW9uIHNldCBzdXBwb3J0Lg0KPiAoVGhpcyBzdXBlcnNldHMgQk1JLCBUQk0sIEYx
NkMsIEZNQSwgQVZYLCBYT1AsIExXUCwgQUVTLCBQQ0xfTVVMLCBDWDE2LCBNTVgsDQo+IFNTRSwg
U1NFMiwgU1NFMywgU1NFNEEsIFNTU0UzLCBTU0U0LjEsIFNTRTQuMiwgQUJNIGFuZCA2NC1iaXQg
aW5zdHJ1Y3Rpb24gc2V0DQo+IGV4dGVuc2lvbnMuDQo+ID4gKw0KPiA+ICtjb25maWcgTUFSQ0hf
QlRWRVIyDQo+ID4gKwlib29sICJBTUQgRmFtaWx5IDE2aCBjb3JlcyINCj4gPiArCWhlbHANCj4g
PiArCQlDUFVzIGJhc2VkIG9uIEFNRCBGYW1pbHkgMTZoIGNvcmVzIHdpdGggeDg2LTY0IGluc3Ry
dWN0aW9uIHNldA0KPiBzdXBwb3J0LiBUaGlzIGluY2x1ZGVzIE1PVkJFLCBGMTZDLCBCTUksIEFW
WCwgUENMX01VTCwgQUVTLCBTU0U0LjIsIFNTRTQuMSwNCj4gQ1gxNiwgQUJNLCBTU0U0QSwgU1NT
RTMsIFNTRTMsIFNTRTIsIFNTRSwgTU1YIGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0DQo+IGV4
dGVuc2lvbnMuDQo+ID4gK2VuZGNob2ljZQ0KPiA+IGRpZmYgLS1naXQgYS9hcmNoL3g4Ni9NYWtl
ZmlsZS51ayBiL2FyY2gveDg2L01ha2VmaWxlLnVrDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQN
Cj4gPiBpbmRleCAwMDAwMDAwLi44YzliZmUzDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBi
L2FyY2gveDg2L01ha2VmaWxlLnVrDQo+ID4gQEAgLTAsMCArMSwzNyBAQA0KPiA+ICtBU0ZMQUdT
ICArPSAtRF9fWDg2XzY0X18NCj4gPiArQVNGTEFHUyAgKz0gLW02NA0KPiA+ICtDRkxBR1MgICAr
PSAtRF9fWDg2XzY0X18NCj4gPiArQ0ZMQUdTICAgKz0gLW02NCAtbW5vLXJlZC16b25lIC1mbm8t
cmVvcmRlci1ibG9ja3MgLWZuby1hc3luY2hyb25vdXMtDQo+IHVud2luZC10YWJsZXMNCj4gPiAr
Q1hYRkxBR1MgKz0gLURfX1g4Nl82NF9fDQo+ID4gK0NYWEZMQUdTICs9IC1tNjQgLW1uby1yZWQt
em9uZSAtZm5vLXJlb3JkZXItYmxvY2tzIC1mbm8tYXN5bmNocm9ub3VzLQ0KPiB1bndpbmQtdGFi
bGVzDQo+ID4gKw0KPiA+ICtDRkxBR1MtJChNQVJDSF9HRU5FUklDKSAgICAgICs9IC1tdHVuZT1n
ZW5lcmljDQo+ID4gK0NYWEZMQUdTLSQoTUFSQ0hfR0VORVJJQykgICAgKz0gLW10dW5lPWdlbmVy
aWMNCj4gPiArQ0ZMQUdTLSQoTUFSQ0hfTk9DT05BKSAgICAgICArPSAtbWFyY2g9bm9jb25hDQo+
ID4gK0NYWEZMQUdTLSQoTUFSQ0hfTk9DT05BKSAgICAgKz0gLW1hcmNoPW5vY29uYQ0KPiA+ICtD
RkxBR1MtJChNQVJDSF9DT1JFMikgICAgICAgICs9IC1tYXJjaD1jb3JlMg0KPiA+ICtDWFhGTEFH
Uy0kKE1BUkNIX0NPUkUyKSAgICAgICs9IC1tYXJjaD1jb3JlMg0KPiA+ICtDRkxBR1MtJChNQVJD
SF9DT1JFSTcpICAgICAgICs9IC1tYXJjaD1jb3JlaTcNCj4gPiArQ1hYRkxBR1MtJChNQVJDSF9D
T1JFSTcpICAgICArPSAtbWFyY2g9Y29yZWk3DQo+ID4gK0NGTEFHUy0kKE1BUkNIX0NPUkVJN0FW
WCkgICAgKz0gLW1hcmNoPWNvcmVpNy1hdngNCj4gPiArQ1hYRkxBR1MtJChNQVJDSF9DT1JFSTdB
VlgpICArPSAtbWFyY2g9Y29yZWk3LWF2eA0KPiA+ICtDRkxBR1MtJChNQVJDSF9DT1JFSTdBVlhJ
KSAgICs9IC1tYXJjaD1jb3JlLWF2eC1pDQo+ID4gK0NYWEZMQUdTLSQoTUFSQ0hfQ09SRUk3QVZY
SSkgKz0gLW1hcmNoPWNvcmUtYXZ4LWkNCj4gPiArQ0ZMQUdTLSQoTUFSQ0hfQVRPTSkgICAgICAg
ICArPSAtbWFyY2g9YXRvbQ0KPiA+ICtDWFhGTEFHUy0kKE1BUkNIX0FUT00pICAgICAgICs9IC1t
YXJjaD1hdG9tDQo+ID4gK0NGTEFHUy0kKE1BUkNIX0s4KSAgICAgICAgICAgKz0gLW1hcmNoPWs4
DQo+ID4gK0NYWEZMQUdTLSQoTUFSQ0hfSzgpICAgICAgICAgKz0gLW1hcmNoPWs4DQo+ID4gK0NG
TEFHUy0kKE1BUkNIX0s4U1NFMykgICAgICAgKz0gLW1hcmNoPWs4LXNzZTMNCj4gPiArQ1hYRkxB
R1MtJChNQVJDSF9LOFNTRTMpICAgICArPSAtbWFyY2g9azgtc3NlMw0KPiA+ICtDRkxBR1MtJChN
QVJDSF9BTURGQU0xMCkgICAgICs9IC1tYXJjaD1hbWRmYW0xMA0KPiA+ICtDWFhGTEFHUy0kKE1B
UkNIX0FNREZBTTEwKSAgICs9IC1tYXJjaD1hbWRmYW0xMA0KPiA+ICtDRkxBR1MtJChNQVJDSF9C
RFZFUjEpICAgICAgICs9IC1tYXJjaD1iZHZlcjENCj4gPiArQ1hYRkxBR1MtJChNQVJDSF9CRFZF
UjEpICAgICArPSAtbWFyY2g9YmR2ZXIxDQo+ID4gK0NGTEFHUy0kKE1BUkNIX0JEVkVSMikgICAg
ICAgKz0gLW1hcmNoPWJkdmVyMg0KPiA+ICtDWFhGTEFHUy0kKE1BUkNIX0JEVkVSMikgICAgICs9
IC1tYXJjaD1iZHZlcjINCj4gPiArQ0ZMQUdTLSQoTUFSQ0hfQkRWRVIzKSAgICAgICArPSAtbWFy
Y2g9YmR2ZXIzDQo+ID4gK0NYWEZMQUdTLSQoTUFSQ0hfQkRWRVIzKSAgICAgKz0gLW1hcmNoPWJk
dmVyMw0KPiA+ICtDRkxBR1MtJChNQVJDSF9CVFZFUjEpICAgICAgICs9IC1tYXJjaD1idHZlcjEN
Cj4gPiArQ1hYRkxBR1MtJChNQVJDSF9CVFZFUjEpICAgICArPSAtbWFyY2g9YnR2ZXIxDQo+ID4g
K0NGTEFHUy0kKE1BUkNIX0JUVkVSMikgICAgICAgKz0gLW1hcmNoPWJ0dmVyMg0KPiA+ICtDWFhG
TEFHUy0kKE1BUkNIX0JUVkVSMikgICAgICs9IC1tYXJjaD1idHZlcjINCj4gPiBkaWZmIC0tZ2l0
IGEvYXJjaC94ODZfNjQvQ29tcGlsZXIudWsgYi9hcmNoL3g4Nl82NC9Db21waWxlci51aw0KPiA+
IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IGE1NDcwZWQuLjAwMDAwMDANCj4g
PiAtLS0gYS9hcmNoL3g4Nl82NC9Db21waWxlci51aw0KPiA+ICsrKyAvZGV2L251bGwNCj4gPiBA
QCAtMSw2ICswLDAgQEANCj4gPiAtIyBzZXQgY3Jvc3MgY29tcGlsZQ0KPiA+IC1pZmVxICgkKENS
T1NTX0NPTVBJTEUpLCkNCj4gPiAtaWZuZXEgKCQoVUtfQVJDSCksJChIT1NUQVJDSCkpDQo+ID4g
LQlDUk9TU19DT01QSUxFIDo9IHg4Nl82NC1saW51eC1nbnUtDQo+ID4gLWVuZGlmDQo+ID4gLWVu
ZGlmDQo+ID4gZGlmZiAtLWdpdCBhL2FyY2gveDg2XzY0L0NvbmZpZy51ayBiL2FyY2gveDg2XzY0
L0NvbmZpZy51aw0KPiA+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IGNhNDll
ZWQuLjAwMDAwMDANCj4gPiAtLS0gYS9hcmNoL3g4Nl82NC9Db25maWcudWsNCj4gPiArKysgL2Rl
di9udWxsDQo+ID4gQEAgLTEsODkgKzAsMCBAQA0KPiA+IC1jaG9pY2UNCj4gPiAtCXByb21wdCAi
UHJvY2Vzc29yIE9wdGltaXphdGlvbiINCj4gPiAtCWRlZmF1bHQgTUFSQ0hfR0VORVJJQw0KPiA+
IC0JaGVscA0KPiA+IC0JCU9wdGltaXplIHRoZSBjb2RlIGZvciBzZWxlY3RlZCB0YXJnZXQgcHJv
Y2Vzc29yDQo+ID4gLQkJR2VuZXJpYyB4ODZfNjQgZG9lcyBub3QgZW5hYmxlIGFueSBhZGRpdGlv
bmFsIENQVSBmZWF0dXJlcw0KPiA+IC0JCShlLmcuLCBTU0UsIDNETm93ISkgYW5kIHByb2R1Y2Vz
IGhpZ2hseSBwcm90YWJsZSBjb2RlIGZvciB4ODYuDQo+ID4gLQ0KPiA+IC1jb25maWcgTUFSQ0hf
TkFUSVZFDQo+ID4gLQlib29sICJBdXRvLWRldGVjdCBob3N0IENQVSINCj4gPiAtCWhlbHANCj4g
PiAtCQlPcHRpbWl6ZSBjb21waWxhdGlvbiB0byBob3N0IENQVQ0KPiA+IC0JCVBsZWFzZSBub3Rl
IHRoYXQgdGhpcyBvcHRpb24gd2lsbCBmYWlsIGluIGNhc2Ugb2YgY3Jvc3MtDQo+IGNvbXBpbGF0
aW9uDQo+ID4gLQ0KPiA+IC1jb25maWcgTUFSQ0hfR0VORVJJQw0KPiA+IC0JYm9vbCAiR2VuZXJp
YyA2NC1iaXQiDQo+ID4gLQloZWxwDQo+ID4gLQkJQ29tcGlsZSBmb3IgNjQtYml0IGNvbXBhdGli
bGUgeDg2IENQVXMNCj4gPiAtDQo+ID4gLWNvbmZpZyBNQVJDSF9OT0NPTkENCj4gPiAtCWJvb2wg
IkludGVsIFBlbnRpdW0gNC9YZW9uIChOb2NvbmEpIg0KPiA+IC0JaGVscA0KPiA+IC0JCUltcHJv
dmVkIHZlcnNpb24gb2YgSW50ZWwgUGVudGl1bSA0IENQVSB3aXRoIDY0LWJpdCBleHRlbnNpb25z
LA0KPiBNTVgsIFNTRSwgU1NFMiBhbmQgU1NFMyBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4NCj4g
PiAtDQo+ID4gLWNvbmZpZyBNQVJDSF9DT1JFMg0KPiA+IC0JYm9vbCAiSW50ZWwgQ29yZSAyL1hl
b24iDQo+ID4gLQloZWxwDQo+ID4gLQkJSW50ZWwgQ29yZSAyIENQVSB3aXRoIDY0LWJpdCBleHRl
bnNpb25zLCBNTVgsIFNTRSwgU1NFMiwgU1NFMyBhbmQNCj4gU1NTRTMgaW5zdHJ1Y3Rpb24gc2V0
IHN1cHBvcnQuDQo+ID4gLQ0KPiA+IC1jb25maWcgTUFSQ0hfQ09SRUk3DQo+ID4gLQlib29sICJJ
bnRlbCBDb3JlIGk3L1hlb24iDQo+ID4gLQloZWxwDQo+ID4gLQkJSW50ZWwgQ29yZSBpNyBDUFUg
d2l0aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIsIFNTRTMsDQo+IFNTU0UzLCBT
U0U0LjEgYW5kIFNTRTQuMiBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4NCj4gPiAtDQo+ID4gLWNv
bmZpZyBNQVJDSF9DT1JFSTdBVlgNCj4gPiAtCWJvb2wgIkludGVsIENvcmUgaTcvWGVvbiArQVZY
Ig0KPiA+IC0JaGVscA0KPiA+IC0JCUludGVsIENvcmUgaTcgQ1BVIHdpdGggNjQtYml0IGV4dGVu
c2lvbnMsIE1NWCwgU1NFLCBTU0UyLCBTU0UzLA0KPiBTU1NFMywgU1NFNC4xLCBTU0U0LjIsIEFW
WCwgQUVTIGFuZCBQQ0xNVUwgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuDQo+ID4gLQ0KPiA+IC1j
b25maWcgTUFSQ0hfQ09SRUk3QVZYSQ0KPiA+IC0JYm9vbCAiSW50ZWwgQ29yZS9YZW9uICtBVlgg
K1JEUk5EIg0KPiA+IC0JaGVscA0KPiA+IC0JCUludGVsIENvcmUgQ1BVIHdpdGggNjQtYml0IGV4
dGVuc2lvbnMsIE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBTU1NFMywNCj4gU1NFNC4xLCBTU0U0LjIs
IEFWWCwgQUVTLCBQQ0xNVUwsIEZTR1NCQVNFLCBSRFJORCBhbmQgRjE2QyBpbnN0cnVjdGlvbiBz
ZXQNCj4gc3VwcG9ydC4NCj4gPiAtDQo+ID4gLWNvbmZpZyBNQVJDSF9BVE9NDQo+ID4gLQlib29s
ICJJbnRlbCBBdG9tIDY0LWJpdCINCj4gPiAtCWhlbHANCj4gPiAtCQlJbnRlbCBBdG9tIENQVSB3
aXRoIDY0LWJpdCBleHRlbnNpb25zLCBNTVgsIFNTRSwgU1NFMiwgU1NFMyBhbmQNCj4gU1NTRTMg
aW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuDQo+ID4gLQ0KPiA+IC1jb25maWcgTUFSQ0hfSzgNCj4g
PiAtCWJvb2wgIkFNRCBBdGhsb242NC9PcHRlcm9uIg0KPiA+IC0JaGVscA0KPiA+IC0JCVByb2Nl
c3NvcnMgYmFzZWQgb24gdGhlIEFNRCBLOCBjb3JlIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNl
dA0KPiBzdXBwb3J0LCBpbmNsdWRpbmcgdGhlIEFNRCBPcHRlcm9uLCBBdGhsb24gNjQsIGFuZCBB
dGhsb24gNjQgRlggcHJvY2Vzc29ycy4NCj4gKFRoaXMgc3VwZXJzZXRzIE1NWCwgU1NFLCBTU0Uy
LCAzRE5vdyEsIGVuaGFuY2VkIDNETm93ISBhbmQgNjQtYml0IGluc3RydWN0aW9uDQo+IHNldCBl
eHRlbnNpb25zLikNCj4gPiAtDQo+ID4gLWNvbmZpZyBNQVJDSF9LOFNTRTMNCj4gPiAtCWJvb2wg
IkFNRCBBdGhsb242NC9PcHRlcm9uICtTU0UzIg0KPiA+IC0JaGVscA0KPiA+IC0JCUltcHJvdmVk
IHZlcnNpb25zIG9mIEFNRCBLOCBjb3JlcyB3aXRoIFNTRTMgaW5zdHJ1Y3Rpb24gc2V0DQo+IHN1
cHBvcnQuDQo+ID4gLQ0KPiA+IC1jb25maWcgTUFSQ0hfQU1ERkFNMTANCj4gPiAtCWJvb2wgIkFN
RCBGYW1pbHkgMTBoIGNvcmVzIg0KPiA+IC0JaGVscA0KPiA+IC0JCUNQVXMgYmFzZWQgb24gQU1E
IEZhbWlseSAxMGggY29yZXMgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rpb24gc2V0DQo+IHN1cHBvcnQu
IChUaGlzIHN1cGVyc2V0cyBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NFNEEsIDNETm93ISwgZW5o
YW5jZWQgM0ROb3chLA0KPiBBQk0gYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQgZXh0ZW5zaW9u
cy4pDQo+ID4gLQ0KPiA+IC1jb25maWcgTUFSQ0hfQlRWRVIxDQo+ID4gLQlib29sICJBTUQgRmFt
aWx5IDE0aCBjb3JlcyINCj4gPiAtCWhlbHANCj4gPiAtCQlDUFVzIGJhc2VkIG9uIEFNRCBGYW1p
bHkgMTRoIGNvcmVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldA0KPiBzdXBwb3J0LiAoVGhp
cyBzdXBlcnNldHMgTU1YLCBTU0UsIFNTRTIsIFNTRTMsIFNTU0UzLCBTU0U0QSwgQ1gxNiwgQUJN
IGFuZCA2NC0NCj4gYml0IGluc3RydWN0aW9uIHNldCBleHRlbnNpb25zLikNCj4gPiAtDQo+ID4g
LWNvbmZpZyBNQVJDSF9CRFZFUjENCj4gPiAtCWJvb2wgIkFNRCBGYW1pbHkgMTVoIGNvcmVzIChi
ZHZlcjEpIg0KPiA+IC0JaGVscA0KPiA+IC0JCUNQVXMgYmFzZWQgb24gQU1EIEZhbWlseSAxNWgg
Y29yZXMgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rpb24gc2V0DQo+IHN1cHBvcnQuIChUaGlzIHN1cGVy
c2V0cyBGTUE0LCBBVlgsIFhPUCwgTFdQLCBBRVMsIFBDTF9NVUwsIENYMTYsIE1NWCwgU1NFLA0K
PiBTU0UyLCBTU0UzLCBTU0U0QSwgU1NTRTMsIFNTRTQuMSwgU1NFNC4yLCBBQk0gYW5kIDY0LWJp
dCBpbnN0cnVjdGlvbiBzZXQNCj4gZXh0ZW5zaW9ucy4pDQo+ID4gLQ0KPiA+IC1jb25maWcgTUFS
Q0hfQkRWRVIyDQo+ID4gLQlib29sICJBTUQgRmFtaWx5IDE1aCBjb3JlcyAoYmR2ZXIyKSINCj4g
PiAtCWhlbHANCj4gPiAtCQlBTUQgRmFtaWx5IDE1aCBjb3JlIGJhc2VkIENQVXMgd2l0aCB4ODYt
NjQgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuDQo+IChUaGlzIHN1cGVyc2V0cyBCTUksIFRCTSwg
RjE2QywgRk1BLCBBVlgsIFhPUCwgTFdQLCBBRVMsIFBDTF9NVUwsIENYMTYsIE1NWCwNCj4gU1NF
LCBTU0UyLCBTU0UzLCBTU0U0QSwgU1NTRTMsIFNTRTQuMSwgU1NFNC4yLCBBQk0gYW5kIDY0LWJp
dCBpbnN0cnVjdGlvbiBzZXQNCj4gZXh0ZW5zaW9ucy4pDQo+ID4gLQ0KPiA+IC1jb25maWcgTUFS
Q0hfQkRWRVIzDQo+ID4gLQlib29sICJBTUQgRmFtaWx5IDE1aCBjb3JlcyAoYmR2ZXIzKSINCj4g
PiAtCWhlbHANCj4gPiAtCQlBTUQgRmFtaWx5IDE1aCBjb3JlIGJhc2VkIENQVXMgd2l0aCB4ODYt
NjQgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuDQo+IChUaGlzIHN1cGVyc2V0cyBCTUksIFRCTSwg
RjE2QywgRk1BLCBBVlgsIFhPUCwgTFdQLCBBRVMsIFBDTF9NVUwsIENYMTYsIE1NWCwNCj4gU1NF
LCBTU0UyLCBTU0UzLCBTU0U0QSwgU1NTRTMsIFNTRTQuMSwgU1NFNC4yLCBBQk0gYW5kIDY0LWJp
dCBpbnN0cnVjdGlvbiBzZXQNCj4gZXh0ZW5zaW9ucy4NCj4gPiAtDQo+ID4gLWNvbmZpZyBNQVJD
SF9CVFZFUjINCj4gPiAtCWJvb2wgIkFNRCBGYW1pbHkgMTZoIGNvcmVzIg0KPiA+IC0JaGVscA0K
PiA+IC0JCUNQVXMgYmFzZWQgb24gQU1EIEZhbWlseSAxNmggY29yZXMgd2l0aCB4ODYtNjQgaW5z
dHJ1Y3Rpb24gc2V0DQo+IHN1cHBvcnQuIFRoaXMgaW5jbHVkZXMgTU9WQkUsIEYxNkMsIEJNSSwg
QVZYLCBQQ0xfTVVMLCBBRVMsIFNTRTQuMiwgU1NFNC4xLA0KPiBDWDE2LCBBQk0sIFNTRTRBLCBT
U1NFMywgU1NFMywgU1NFMiwgU1NFLCBNTVggYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQNCj4g
ZXh0ZW5zaW9ucy4NCj4gPiAtZW5kY2hvaWNlDQo+ID4gZGlmZiAtLWdpdCBhL2FyY2gveDg2XzY0
L01ha2VmaWxlLnVrIGIvYXJjaC94ODZfNjQvTWFrZWZpbGUudWsNCj4gPiBkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQNCj4gPiBpbmRleCA4YzliZmUzLi4wMDAwMDAwDQo+ID4gLS0tIGEvYXJjaC94
ODZfNjQvTWFrZWZpbGUudWsNCj4gPiArKysgL2Rldi9udWxsDQo+ID4gQEAgLTEsMzcgKzAsMCBA
QA0KPiA+IC1BU0ZMQUdTICArPSAtRF9fWDg2XzY0X18NCj4gPiAtQVNGTEFHUyAgKz0gLW02NA0K
PiA+IC1DRkxBR1MgICArPSAtRF9fWDg2XzY0X18NCj4gPiAtQ0ZMQUdTICAgKz0gLW02NCAtbW5v
LXJlZC16b25lIC1mbm8tcmVvcmRlci1ibG9ja3MgLWZuby1hc3luY2hyb25vdXMtDQo+IHVud2lu
ZC10YWJsZXMNCj4gPiAtQ1hYRkxBR1MgKz0gLURfX1g4Nl82NF9fDQo+ID4gLUNYWEZMQUdTICs9
IC1tNjQgLW1uby1yZWQtem9uZSAtZm5vLXJlb3JkZXItYmxvY2tzIC1mbm8tYXN5bmNocm9ub3Vz
LQ0KPiB1bndpbmQtdGFibGVzDQo+ID4gLQ0KPiA+IC1DRkxBR1MtJChNQVJDSF9HRU5FUklDKSAg
ICAgICs9IC1tdHVuZT1nZW5lcmljDQo+ID4gLUNYWEZMQUdTLSQoTUFSQ0hfR0VORVJJQykgICAg
Kz0gLW10dW5lPWdlbmVyaWMNCj4gPiAtQ0ZMQUdTLSQoTUFSQ0hfTk9DT05BKSAgICAgICArPSAt
bWFyY2g9bm9jb25hDQo+ID4gLUNYWEZMQUdTLSQoTUFSQ0hfTk9DT05BKSAgICAgKz0gLW1hcmNo
PW5vY29uYQ0KPiA+IC1DRkxBR1MtJChNQVJDSF9DT1JFMikgICAgICAgICs9IC1tYXJjaD1jb3Jl
Mg0KPiA+IC1DWFhGTEFHUy0kKE1BUkNIX0NPUkUyKSAgICAgICs9IC1tYXJjaD1jb3JlMg0KPiA+
IC1DRkxBR1MtJChNQVJDSF9DT1JFSTcpICAgICAgICs9IC1tYXJjaD1jb3JlaTcNCj4gPiAtQ1hY
RkxBR1MtJChNQVJDSF9DT1JFSTcpICAgICArPSAtbWFyY2g9Y29yZWk3DQo+ID4gLUNGTEFHUy0k
KE1BUkNIX0NPUkVJN0FWWCkgICAgKz0gLW1hcmNoPWNvcmVpNy1hdngNCj4gPiAtQ1hYRkxBR1Mt
JChNQVJDSF9DT1JFSTdBVlgpICArPSAtbWFyY2g9Y29yZWk3LWF2eA0KPiA+IC1DRkxBR1MtJChN
QVJDSF9DT1JFSTdBVlhJKSAgICs9IC1tYXJjaD1jb3JlLWF2eC1pDQo+ID4gLUNYWEZMQUdTLSQo
TUFSQ0hfQ09SRUk3QVZYSSkgKz0gLW1hcmNoPWNvcmUtYXZ4LWkNCj4gPiAtQ0ZMQUdTLSQoTUFS
Q0hfQVRPTSkgICAgICAgICArPSAtbWFyY2g9YXRvbQ0KPiA+IC1DWFhGTEFHUy0kKE1BUkNIX0FU
T00pICAgICAgICs9IC1tYXJjaD1hdG9tDQo+ID4gLUNGTEFHUy0kKE1BUkNIX0s4KSAgICAgICAg
ICAgKz0gLW1hcmNoPWs4DQo+ID4gLUNYWEZMQUdTLSQoTUFSQ0hfSzgpICAgICAgICAgKz0gLW1h
cmNoPWs4DQo+ID4gLUNGTEFHUy0kKE1BUkNIX0s4U1NFMykgICAgICAgKz0gLW1hcmNoPWs4LXNz
ZTMNCj4gPiAtQ1hYRkxBR1MtJChNQVJDSF9LOFNTRTMpICAgICArPSAtbWFyY2g9azgtc3NlMw0K
PiA+IC1DRkxBR1MtJChNQVJDSF9BTURGQU0xMCkgICAgICs9IC1tYXJjaD1hbWRmYW0xMA0KPiA+
IC1DWFhGTEFHUy0kKE1BUkNIX0FNREZBTTEwKSAgICs9IC1tYXJjaD1hbWRmYW0xMA0KPiA+IC1D
RkxBR1MtJChNQVJDSF9CRFZFUjEpICAgICAgICs9IC1tYXJjaD1iZHZlcjENCj4gPiAtQ1hYRkxB
R1MtJChNQVJDSF9CRFZFUjEpICAgICArPSAtbWFyY2g9YmR2ZXIxDQo+ID4gLUNGTEFHUy0kKE1B
UkNIX0JEVkVSMikgICAgICAgKz0gLW1hcmNoPWJkdmVyMg0KPiA+IC1DWFhGTEFHUy0kKE1BUkNI
X0JEVkVSMikgICAgICs9IC1tYXJjaD1iZHZlcjINCj4gPiAtQ0ZMQUdTLSQoTUFSQ0hfQkRWRVIz
KSAgICAgICArPSAtbWFyY2g9YmR2ZXIzDQo+ID4gLUNYWEZMQUdTLSQoTUFSQ0hfQkRWRVIzKSAg
ICAgKz0gLW1hcmNoPWJkdmVyMw0KPiA+IC1DRkxBR1MtJChNQVJDSF9CVFZFUjEpICAgICAgICs9
IC1tYXJjaD1idHZlcjENCj4gPiAtQ1hYRkxBR1MtJChNQVJDSF9CVFZFUjEpICAgICArPSAtbWFy
Y2g9YnR2ZXIxDQo+ID4gLUNGTEFHUy0kKE1BUkNIX0JUVkVSMikgICAgICAgKz0gLW1hcmNoPWJ0
dmVyMg0KPiA+IC1DWFhGTEFHUy0kKE1BUkNIX0JUVkVSMikgICAgICs9IC1tYXJjaD1idHZlcjIN
Cj4gPg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWlu
aW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcK
aHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZl
bA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 09 07:58:45 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 09 Apr 2018 07:58:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f5RhL-0000s7-88; Mon, 09 Apr 2018 07:58:43 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=sv3z=g6=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f5RhJ-0000s2-EO
 for minios-devel@lists.xenproject.org; Mon, 09 Apr 2018 07:58:42 +0000
X-Inumbo-ID: b3a703e6-3bcb-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::628])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id b3a703e6-3bcb-11e8-9728-bc764e045a96;
 Mon, 09 Apr 2018 09:57:51 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=6xFiCAjWyz9ywHbMmnSLMXaRfFxVlSB9uLlygLrXoY0=;
 b=O+8XCZTG+2MiRI0NQ9UapVQQ8TaNa5wBRircfxVv1EwGJKlr5pSBxkpxD9yVaTZpERfnGQt49wHVsjiHaJ52pY48NrU0mF9YgSarUBAB3setDiwhWiYqOZketIk6sBDhIfApidZBBBgIcUfAp88BOMuZaY5z8UBrVtX34aaOsYE=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0252.eurprd08.prod.outlook.com (10.161.61.20) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.653.12; Mon, 9 Apr 2018 07:58:28 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0653.014; Mon, 9 Apr 2018
 07:58:27 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>,
 "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Thread-Topic: [UNIKRAFT PATCH 3/9] build: Move arm32 libraries to new
 family/architecture folder
Thread-Index: AQHTvA9EhZ7pYHZ5bkC/xfXnslGl0KPxP4IAgAby5JA=
Date: Mon, 9 Apr 2018 07:58:27 +0000
Message-ID: <DB3PR08MB0107322D5588530A769FEEB99EBF0@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-4-git-send-email-Wei.Chen@arm.com>
 <8ec9a205-2021-d228-697f-8ba2a7127bcc@neclab.eu>
In-Reply-To: <8ec9a205-2021-d228-697f-8ba2a7127bcc@neclab.eu>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0252;
 7:or9xZvruyPRGMZ9S66vc4bZHr0B/qecj97FHjsyEZfHUGP4l9UR6DmjSHBcuNpIsZsw6uBGYMezBJ0EMn98Fzc2b104a/moV8OnN95Zott5Ule6YrYhyRDTzVzHUHfnCNE+jvQcpDSHsYNnMernEwdmwOuG2t9VfbSHG9myGe6gwym4h0GyTuMMtv5HaCDeYpqqYmNLXqpiPWNIUYKdCuHA6a65j9yr2aH/cDDXniSnvDS+gc2aJHhse2bzCvPlJ
x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR;
x-ms-office365-filtering-ht: Tenant
X-MS-Office365-Filtering-Correlation-Id: f27d115b-b5f4-4dbf-f316-08d59defadb4
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0252; 
x-ms-traffictypediagnostic: DB3PR08MB0252:
nodisclaimer: True
x-microsoft-antispam-prvs: <DB3PR08MB02524C0637592D5A17D5BB919EBF0@DB3PR08MB0252.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(180628864354917)(58134797142442);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93001095)(3231221)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(20161123564045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0252; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0252; 
x-forefront-prvs: 0637FCE711
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(39850400004)(396003)(346002)(376002)(366004)(39380400002)(13464003)(43544003)(189003)(199004)(9686003)(26005)(16200700003)(14454004)(229853002)(2501003)(55016002)(5250100002)(97736004)(3280700002)(186003)(2906002)(33656002)(66066001)(105586002)(478600001)(53946003)(72206003)(8936002)(3660700001)(53546011)(99286004)(6436002)(5660300001)(4326008)(7736002)(7696005)(102836004)(74316002)(25786009)(2900100001)(6506007)(59450400001)(3846002)(6116002)(55236004)(476003)(54906003)(8676002)(11346002)(110136005)(6246003)(446003)(68736007)(316002)(106356001)(305945005)(53936002)(76176011)(86362001)(486006)(81166006)(81156014)(21314002)(217873001)(569006);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0252;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; MX:1; A:1; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: PNZzyDbM6IS4fKRZpTAQOv5davMpiuNp6FISvV5yPrcgglgRYkwHZDaJ4OGAdyWRyFymcF0JunVxgKyDsSYQs38NcLSnLcaVAPsKWMIP6MGS3KUq2D9drbGRLcBgyOeaWdM7WXUVW5fUuPy6mC+jpf8xsSmmfOEO5AEa6V0rYc9YUxd4f8Uh/6Oo/07u1H9LPwPV2VdVLDJvg9CdV4k4IN0lY5GH4MqfbFXgtJeC0kaBdJaUjhSnmkZGvWj7A5Uhgdqhzzzp/Lp7MmTKc4ajeP0MNDwbl9EarWXtn5UR7zyAh0tmkgVndt4/EbY3rhUZLeD5D0ZurGqnaMmU7IuNx6xu6bOegD2gKTH6Sm4ovYY0gTe5ucKmvUWiGE6HDG0pfmVnael76f35UGDV0grT11UL4GhvYfv+5SQRZhol8wM=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f27d115b-b5f4-4dbf-f316-08d59defadb4
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2018 07:58:27.7511 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0252
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 3/9] build: Move arm32 libraries
 to new family/architecture folder
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: Shijie Huang <Shijie.Huang@arm.com>, Kaly Xin <Kaly.Xin@arm.com>,
 nd <nd@arm.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogU2ltb24g
S3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+DQo+IFNlbnQ6IDIwMTjlubQ05pyINeaX
pSA1OjI4DQo+IFRvOiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT47IG1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBDYzogU2hpamllIEh1YW5nIDxTaGlqaWUuSHVhbmdAYXJt
LmNvbT47IEthbHkgWGluIDxLYWx5LlhpbkBhcm0uY29tPjsgbmQNCj4gPG5kQGFybS5jb20+DQo+
IFN1YmplY3Q6IFJlOiBbVU5JS1JBRlQgUEFUQ0ggMy85XSBidWlsZDogTW92ZSBhcm0zMiBsaWJy
YXJpZXMgdG8gbmV3DQo+IGZhbWlseS9hcmNoaXRlY3R1cmUgZm9sZGVyDQo+IA0KPiBPbiAxNS4w
My4yMDE4IDA0OjM5LCBXZWkgQ2hlbiB3cm90ZToNCj4gPiBXZSBoYXZlIHVzZSB0aGUgYXJjaC88
RkFNSUxZPi8gdG8gc3RvcmUgdGhlIGNvbW1vbiBjb2RlcyBhbmQgYnVpbGQNCj4gPiBzY3JpcHRz
IGZvciB0aGUgYXJjaGl0ZWN0dXJlcyBvZiBzYW1lIGZhbWlseS4gVGhlIG9yaWdpbmFsIGNvZGVz
DQo+ID4gdGhhdCBzdG9yZWQgaW4gYXJjaC9hcm0zMiBhcmUgYXJtMzIgY29kZXMuIFNvIHdlIGhh
dmUgbW92ZSB0aGVtIHRvDQo+ID4gdGhlIG5ldyBmb2xkZXIgYXJjaC9hcm0vYXJtMzIuDQo+ID4N
Cj4gPiBTaWduZWQtb2ZmLWJ5OiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT4NCj4gPiAtLS0N
Cj4gPiAgIGFyY2gvYXJtL01ha2VmaWxlLnVrICAgICAgICAgICAgfCAgMTUgKy0NCj4gPiAgIGFy
Y2gvYXJtL2FybTMyL2RpdnNpMy5TICAgICAgICAgfCA0MDQNCj4gKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKw0KPiA+ICAgYXJjaC9hcm0vYXJtMzIvbGRpdm1vZC5TICAg
ICAgICB8ICA2OCArKysrKysrDQo+ID4gICBhcmNoL2FybS9hcm0zMi9sZGl2bW9kX2hlbHBlci5j
IHwgIDY3ICsrKysrKysNCj4gPiAgIGFyY2gvYXJtL2FybTMyL3FkaXZyZW0uYyAgICAgICAgfCAz
MjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gPiAgIGFyY2gvYXJtL2RpdnNp
My5TICAgICAgICAgICAgICAgfCA0MDQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tDQo+IC0tLS0NCj4gPiAgIGFyY2gvYXJtL2xkaXZtb2QuUyAgICAgICAgICAgICAgfCAgNjgg
LS0tLS0tLQ0KPiA+ICAgYXJjaC9hcm0vbGRpdm1vZF9oZWxwZXIuYyAgICAgICB8ICA2NyAtLS0t
LS0tDQo+ID4gICBhcmNoL2FybS9xZGl2cmVtLmMgICAgICAgICAgICAgIHwgMzI0IC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gICA5IGZpbGVzIGNoYW5nZWQsIDg3NCBpbnNl
cnRpb25zKCspLCA4NjcgZGVsZXRpb25zKC0pDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJj
aC9hcm0vYXJtMzIvZGl2c2kzLlMNCj4gPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9h
cm0zMi9sZGl2bW9kLlMNCj4gPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm0zMi9s
ZGl2bW9kX2hlbHBlci5jDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtMzIv
cWRpdnJlbS5jDQo+ID4gICBkZWxldGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vZGl2c2kzLlMNCj4g
PiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9sZGl2bW9kLlMNCj4gPiAgIGRlbGV0ZSBt
b2RlIDEwMDY0NCBhcmNoL2FybS9sZGl2bW9kX2hlbHBlci5jDQo+ID4gICBkZWxldGUgbW9kZSAx
MDA2NDQgYXJjaC9hcm0vcWRpdnJlbS5jDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0v
TWFrZWZpbGUudWsgYi9hcmNoL2FybS9NYWtlZmlsZS51aw0KPiA+IGluZGV4IDI1NjdkYmUuLjc4
MGEwMzUgMTAwNjQ0DQo+ID4gLS0tIGEvYXJjaC9hcm0vTWFrZWZpbGUudWsNCj4gPiArKysgYi9h
cmNoL2FybS9NYWtlZmlsZS51aw0KPiA+IEBAIC0xLDMgKzEsNiBAQA0KPiA+ICsjIFNldHVwIGNv
bXBpbGVyIGZsYWdzIGFuZCBvYmplY3RzIGZvciBhcm0zMg0KPiANCj4gSSB3b3VsZCBjYWxsIGl0
IGxpYnJhcmllcyBpbiB0aGUgY29tbWVudCBpbnN0ZWFkIG9mIG9iamVjdHMuIGxpYmFybW1hdGgN
Cj4gaXMgZXNzZW50aWFsbHkgYSBsaWJyYXJ5IGZvciBBUk0zMi4gV2lsbCB5b3UgbmVlZCBzb21l
dGhpbmcgc2ltaWxhciBmb3INCj4gQUFSQ0g2ND8NCg0KQ3VycmVudCBsaWJhcm1tYXRoIHByb3Zp
ZGVzIHRoZSBpbnRlZ2VyIGFyaXRobWV0aWMgcm91dGluZXMgZm9yIHRob3NlDQpQbGF0Zm9ybXMg
dGhhdCBkb24ndCBwcm92aWRlIGhhcmR3YXJlIGZsb2F0IHN1cHBvcnQuIFRoZSBoYXJkd2FyZSBm
bG9hdA0Kc3VwcG9ydCBvZiBBQXJjaDY0IGlzIG1hbmRhdG9yeS4gRm9yIGhhbGYvc2luZ2xlL2Rv
dWJsZSBwcmVjaW91cw0KZmxvYXQtcG9pbnQsIEFBcmNoNjQgRmxvYXRpbmctcG9pbnQgaW5zdHJ1
Y3Rpb25zIGNhbiBoYW5kbGUgdGhlbSBkaXJlY3RseS4NCkZvciAxMjgtYml0IGZsb2F0IChsb25n
IGRvdWJsZSksIHdlIHNob3VsZCBpbXBsZW1lbnQgc29tZSByb3V0aW5lcyBsaWtlDQpfX2RpdnRm
MyBpbiBsaWJhcm1tYXRoLg0KDQpCdXQgSSB0aGluaywgY3VycmVudGx5LCBBQXJjaDY0IGRvZXNu
J3QgbmVlZCB0aGlzIGxpYmFybW1hdGguDQoNCj4gSWYgeWVzLCBrZWVwIHRoZSBMSUJBUk1NQVRI
X1NSQ1MtJChBUkNIX0FSTV8zMikgZm9ybSBhbmQgZG8gdGhlDQo+IGFkZGxpYiBjYWxsIGZvciBi
b3RoIENQVSBhcmNoaXRlY3R1cmVzLiBJZiBhIGxpYnJhcnkgZG9lcyBub3QgaGF2ZSBhbnkNCj4g
c291cmNlIGZpbGVzIGRlZmluZWQsIHRoZSBidWlsZCBzeXN0ZW0gd2lsbCBhdXRvbWF0aWNhbGx5
IGV4Y2x1ZGUgaXQNCj4gZnJvbSB0aGUgYnVpbGQuDQo+IA0KPiA+ICtpZmVxICgkKFVLX0FSQ0gp
LGFybSkNCj4gPiArDQo+ID4gICBBU0ZMQUdTICArPSAtRF9fQVJNXzMyX18NCj4gPiAgIEFTRkxB
R1MgICs9IC1tYXJtDQo+ID4gICBDRkxBR1MgICArPSAtRF9fQVJNXzMyX18NCj4gPiBAQCAtMTMs
NyArMTYsMTEgQEAgQ0ZMQUdTLSQoTUFSQ0hfQ09SVEVYQTcpICAgKz0gLW1jcHU9Y29ydGV4LWE3
IC0NCj4gbXR1bmU9Y29ydGV4LWE3DQo+ID4gICBDWFhGTEFHUy0kKE1BUkNIX0NPUlRFWEE3KSAr
PSAtbWNwdT1jb3J0ZXgtYTcgLW10dW5lPWNvcnRleC1hDQo+ID4NCj4gPiAgICQoZXZhbCAkKGNh
bGwgYWRkbGliLGxpYmFybW1hdGgpKQ0KPiA+IC1MSUJBUk1NQVRIX1NSQ1MtJChBUkNIX0FSTV8z
MikgKz0gJChVS19CQVNFKS9hcmNoL2FybS9kaXZzaTMuUw0KPiA+IC1MSUJBUk1NQVRIX1NSQ1Mt
JChBUkNIX0FSTV8zMikgKz0gJChVS19CQVNFKS9hcmNoL2FybS9sZGl2bW9kLlMNCj4gPiAtTElC
QVJNTUFUSF9TUkNTLSQoQVJDSF9BUk1fMzIpICs9ICQoVUtfQkFTRSkvYXJjaC9hcm0vbGRpdm1v
ZF9oZWxwZXIuYw0KPiA+IC1MSUJBUk1NQVRIX1NSQ1MtJChBUkNIX0FSTV8zMikgKz0gJChVS19C
QVNFKS9hcmNoL2FybS9xZGl2cmVtLmMNCj4gPiArTElCQVJNTUFUSF9TUkNTLXkgKz0gJChVS19C
QVNFKS9hcmNoL2FybS9hcm0zMi9kaXZzaTMuUw0KPiA+ICtMSUJBUk1NQVRIX1NSQ1MteSArPSAk
KFVLX0JBU0UpL2FyY2gvYXJtL2FybTMyL2xkaXZtb2QuUw0KPiA+ICtMSUJBUk1NQVRIX1NSQ1Mt
eSArPSAkKFVLX0JBU0UpL2FyY2gvYXJtL2FybTMyL2xkaXZtb2RfaGVscGVyLmMNCj4gPiArTElC
QVJNTUFUSF9TUkNTLXkgKz0gJChVS19CQVNFKS9hcmNoL2FybS9hcm0zMi9xZGl2cmVtLmMNCj4g
PiArDQo+ID4gK2Vsc2UNCj4gPiArJChlcnJvciBUYXJnZXQgYXJjaGl0ZWN0dXJlICgkKFVLX0FS
Q0gpKSBpcyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZC4pDQo+ID4gK2VuZGlmDQo+ID4gZGlmZiAt
LWdpdCBhL2FyY2gvYXJtL2FybTMyL2RpdnNpMy5TIGIvYXJjaC9hcm0vYXJtMzIvZGl2c2kzLlMN
Cj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAuLjhiZjVhYzINCj4g
PiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvYXJjaC9hcm0vYXJtMzIvZGl2c2kzLlMNCj4gPiBA
QCAtMCwwICsxLDQwNCBAQA0KPiA+ICsvKgkkTmV0QlNEOiBkaXZzaTMuUyx2IDEuNCAyMDAzLzA0
LzA1IDIzOjI3OjE1IGJqaDIxIEV4cCAkCSovDQo+ID4gKw0KPiA+ICsvKi0NCj4gPiArICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBB
UyBJUycnIEFORA0KPiA+ICsgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUNCj4gPiArICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSDQo+IFBV
UlBPU0UNCj4gPiArICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVU
SE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUNCj4gPiArICogRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SDQo+IENPTlNFUVVFTlRJ
QUwNCj4gPiArICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMNCj4gPiArICogT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pDQo+ID4gKyAq
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwNCj4gU1RSSUNUDQo+ID4gKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWQ0KPiBXQVkNCj4gPiAr
ICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRg0KPiA+ICsgKiBTVUNIIERBTUFHRS4NCj4gPiArICovDQo+ID4gKw0K
PiA+ICsjZGVmaW5lIEVOVFJZX05QKHN5bWJvbCkgXA0KPiA+ICsJLmdsb2JsIHN5bWJvbDsJXA0K
PiA+ICsJc3ltYm9sOg0KPiA+ICsNCj4gPiArI2RlZmluZSBFTkQoc3ltYm9sKQ0KPiA+ICsNCj4g
PiArLyoNCj4gPiArICogc3RhY2sgaXMgYWxpZ25lZCBhcyB0aGVyZSdzIGEgcG9zc2liaWxpdHkg
b2YgYnJhbmNoaW5nIHRvIExfb3ZlcmZsb3cNCj4gPiArICogd2hpY2ggbWFrZXMgYSBDIGNhbGwN
Cj4gPiArICovDQo+ID4gKw0KPiA+ICtFTlRSWV9OUChfX3Vtb2RzaTMpDQo+ID4gKwlzdG1mZAlz
cCEsIHtscn0NCj4gPiArCXN1YglzcCwgc3AsICM0CS8qIGFsaWduIHN0YWNrICovDQo+ID4gKwli
bAkuTF91ZGl2aWRlDQo+ID4gKwlhZGQJc3AsIHNwLCAjNAkvKiB1bmFsaWduIHN0YWNrICovDQo+
ID4gKwltb3YJcjAsIHIxDQo+ID4gKwlsZG1mZAlzcCEsIHtwY30NCj4gPiArRU5EKF9fdW1vZHNp
MykNCj4gPiArDQo+ID4gK0VOVFJZX05QKF9fbW9kc2kzKQ0KPiA+ICsJc3RtZmQJc3AhLCB7bHJ9
DQo+ID4gKwlzdWIJc3AsIHNwLCAjNAkvKiBhbGlnbiBzdGFjayAqLw0KPiA+ICsJYmwJLkxfZGl2
aWRlDQo+ID4gKwlhZGQJc3AsIHNwLCAjNAkvKiB1bmFsaWduIHN0YWNrICovDQo+ID4gKwltb3YJ
cjAsIHIxDQo+ID4gKwlsZG1mZAlzcCEsIHtwY30NCj4gPiArDQo+ID4gKy5MX292ZXJmbG93Og0K
PiA+ICsJLyogWFhYIHNob3VsZCBjYXVzZSBhIGZhdGFsIGVycm9yICovDQo+ID4gKwltdm4JcjAs
ICMwDQo+ID4gKwltb3YJcGMsIGxyDQo+ID4gKw0KPiA+ICtFTkQoX19tb2RzaTMpDQo+ID4gKw0K
PiA+ICsjaWZkZWYgX19BUk1fRUFCSV9fDQo+ID4gK0VOVFJZX05QKF9fYWVhYmlfdWlkaXYpDQo+
ID4gK0VOVFJZX05QKF9fYWVhYmlfdWlkaXZtb2QpDQo+ID4gKyNlbmRpZg0KPiA+ICtFTlRSWV9O
UChfX3VkaXZzaTMpDQo+ID4gKy5MX3VkaXZpZGU6CQkJCS8qIHIwID0gcjAgLyByMTsgcjEgPSBy
MCAlIHIxICovDQo+ID4gKwllb3IgICAgIHIwLCByMSwgcjANCj4gPiArCWVvciAgICAgcjEsIHIw
LCByMQ0KPiA+ICsJZW9yICAgICByMCwgcjEsIHIwDQo+ID4gKwkJCQkJLyogcjAgPSByMSAvIHIw
OyByMSA9IHIxICUgcjAgKi8NCj4gPiArCWNtcAlyMCwgIzENCj4gPiArCWJjYwkuTF9vdmVyZmxv
dw0KPiA+ICsJYmVxCS5MX2RpdmlkZV9sMA0KPiA+ICsJbW92CWlwLCAjMA0KPiA+ICsJbW92cwly
MSwgcjENCj4gPiArCWJwbAkuTF9kaXZpZGVfbDENCj4gPiArCW9ycglpcCwgaXAsICMweDIwMDAw
MDAwCS8qIGlwIGJpdCAweDIwMDAwMDAwID0gLXZlIHIxICovDQo+ID4gKwltb3ZzCXIxLCByMSwg
bHNyICMxDQo+ID4gKwlvcnJjcwlpcCwgaXAsICMweDEwMDAwMDAwCS8qIGlwIGJpdCAweDEwMDAw
MDAwID0gYml0IDAgb2YgcjEgKi8NCj4gPiArCWIJLkxfZGl2aWRlX2wxDQo+ID4gKw0KPiA+ICsu
TF9kaXZpZGVfbDA6CQkJCS8qIHIwID09IDEgKi8NCj4gPiArCW1vdglyMCwgcjENCj4gPiArCW1v
dglyMSwgIzANCj4gPiArCW1vdglwYywgbHINCj4gPiArI2lmZGVmIF9fQVJNX0VBQklfXw0KPiA+
ICtFTkQoX19hZWFiaV91aWRpdikNCj4gPiArRU5EKF9fYWVhYmlfdWlkaXZtb2QpDQo+ID4gKyNl
bmRpZg0KPiA+ICtFTkQoX191ZGl2c2kzKQ0KPiA+ICsNCj4gPiArI2lmZGVmIF9fQVJNX0VBQklf
Xw0KPiA+ICtFTlRSWV9OUChfX2FlYWJpX2lkaXYpDQo+ID4gK0VOVFJZX05QKF9fYWVhYmlfaWRp
dm1vZCkNCj4gPiArI2VuZGlmDQo+ID4gK0VOVFJZX05QKF9fZGl2c2kzKQ0KPiA+ICsuTF9kaXZp
ZGU6CQkJCS8qIHIwID0gcjAgLyByMTsgcjEgPSByMCAlIHIxICovDQo+ID4gKwllb3IgICAgIHIw
LCByMSwgcjANCj4gPiArCWVvciAgICAgcjEsIHIwLCByMQ0KPiA+ICsJZW9yICAgICByMCwgcjEs
IHIwDQo+ID4gKwkJCQkJLyogcjAgPSByMSAvIHIwOyByMSA9IHIxICUgcjAgKi8NCj4gPiArCWNt
cAlyMCwgIzENCj4gPiArCWJjYwkuTF9vdmVyZmxvdw0KPiA+ICsJYmVxCS5MX2RpdmlkZV9sMA0K
PiA+ICsJYW5kcwlpcCwgcjAsICMweDgwMDAwMDAwDQo+ID4gKwlyc2JtaQlyMCwgcjAsICMwDQo+
ID4gKwlhbmRzCXIyLCByMSwgIzB4ODAwMDAwMDANCj4gPiArCWVvcglpcCwgaXAsIHIyDQo+ID4g
Kwlyc2JtaQlyMSwgcjEsICMwDQo+ID4gKwlvcnIJaXAsIHIyLCBpcCwgbHNyICMxCS8qIGlwIGJp
dCAweDQwMDAwMDAwID0gLXZlIGRpdmlzaW9uICovDQo+ID4gKwkJCQkJLyogaXAgYml0IDB4ODAw
MDAwMDAgPSAtdmUgcmVtYWluZGVyICovDQo+ID4gKw0KPiA+ICsuTF9kaXZpZGVfbDE6DQo+ID4g
Kwltb3YJcjIsICMxDQo+ID4gKwltb3YJcjMsICMwDQo+ID4gKw0KPiA+ICsJLyoNCj4gPiArCSAq
IElmIHRoZSBoaWdoZXN0IGJpdCBvZiB0aGUgZGl2aWRlbmQgaXMgc2V0LCB3ZSBoYXZlIHRvIGJl
DQo+ID4gKwkgKiBjYXJlZnVsIHdoZW4gc2hpZnRpbmcgdGhlIGRpdmlzb3IuIFRlc3QgdGhpcy4N
Cj4gPiArCSAqLw0KPiA+ICsJbW92cwlyMSxyMQ0KPiA+ICsJYnBsCS5MX29sZF9jb2RlDQo+ID4g
Kw0KPiA+ICsJLyoNCj4gPiArCSAqIEF0IHRoaXMgcG9pbnQsIHRoZSBoaWdoZXN0IGJpdCBvZiBy
MSBpcyBrbm93biB0byBiZSBzZXQuDQo+ID4gKwkgKiBXZSBhYnVzZSB0aGlzIGJlbG93IGluIHRo
ZSB0c3QgaW5zdHJ1Y3Rpb25zLg0KPiA+ICsJICovDQo+ID4gKwl0c3QJcjEsIHIwIC8qLCBsc2wg
IzAgKi8NCj4gPiArCWJtaQkuTF9kaXZpZGVfYjENCj4gPiArCXRzdAlyMSwgcjAsIGxzbCAjMQ0K
PiA+ICsJYm1pCS5MX2RpdmlkZV9iMg0KPiA+ICsJdHN0CXIxLCByMCwgbHNsICMyDQo+ID4gKwli
bWkJLkxfZGl2aWRlX2IzDQo+ID4gKwl0c3QJcjEsIHIwLCBsc2wgIzMNCj4gPiArCWJtaQkuTF9k
aXZpZGVfYjQNCj4gPiArCXRzdAlyMSwgcjAsIGxzbCAjNA0KPiA+ICsJYm1pCS5MX2RpdmlkZV9i
NQ0KPiA+ICsJdHN0CXIxLCByMCwgbHNsICM1DQo+ID4gKwlibWkJLkxfZGl2aWRlX2I2DQo+ID4g
Kwl0c3QJcjEsIHIwLCBsc2wgIzYNCj4gPiArCWJtaQkuTF9kaXZpZGVfYjcNCj4gPiArCXRzdAly
MSwgcjAsIGxzbCAjNw0KPiA+ICsJYm1pCS5MX2RpdmlkZV9iOA0KPiA+ICsJdHN0CXIxLCByMCwg
bHNsICM4DQo+ID4gKwlibWkJLkxfZGl2aWRlX2I5DQo+ID4gKwl0c3QJcjEsIHIwLCBsc2wgIzkN
Cj4gPiArCWJtaQkuTF9kaXZpZGVfYjEwDQo+ID4gKwl0c3QJcjEsIHIwLCBsc2wgIzEwDQo+ID4g
KwlibWkJLkxfZGl2aWRlX2IxMQ0KPiA+ICsJdHN0CXIxLCByMCwgbHNsICMxMQ0KPiA+ICsJYm1p
CS5MX2RpdmlkZV9iMTINCj4gPiArCXRzdAlyMSwgcjAsIGxzbCAjMTINCj4gPiArCWJtaQkuTF9k
aXZpZGVfYjEzDQo+ID4gKwl0c3QJcjEsIHIwLCBsc2wgIzEzDQo+ID4gKwlibWkJLkxfZGl2aWRl
X2IxNA0KPiA+ICsJdHN0CXIxLCByMCwgbHNsICMxNA0KPiA+ICsJYm1pCS5MX2RpdmlkZV9iMTUN
Cj4gPiArCXRzdAlyMSwgcjAsIGxzbCAjMTUNCj4gPiArCWJtaQkuTF9kaXZpZGVfYjE2DQo+ID4g
Kwl0c3QJcjEsIHIwLCBsc2wgIzE2DQo+ID4gKwlibWkJLkxfZGl2aWRlX2IxNw0KPiA+ICsJdHN0
CXIxLCByMCwgbHNsICMxNw0KPiA+ICsJYm1pCS5MX2RpdmlkZV9iMTgNCj4gPiArCXRzdAlyMSwg
cjAsIGxzbCAjMTgNCj4gPiArCWJtaQkuTF9kaXZpZGVfYjE5DQo+ID4gKwl0c3QJcjEsIHIwLCBs
c2wgIzE5DQo+ID4gKwlibWkJLkxfZGl2aWRlX2IyMA0KPiA+ICsJdHN0CXIxLCByMCwgbHNsICMy
MA0KPiA+ICsJYm1pCS5MX2RpdmlkZV9iMjENCj4gPiArCXRzdAlyMSwgcjAsIGxzbCAjMjENCj4g
PiArCWJtaQkuTF9kaXZpZGVfYjIyDQo+ID4gKwl0c3QJcjEsIHIwLCBsc2wgIzIyDQo+ID4gKwli
bWkJLkxfZGl2aWRlX2IyMw0KPiA+ICsJdHN0CXIxLCByMCwgbHNsICMyMw0KPiA+ICsJYm1pCS5M
X2RpdmlkZV9iMjQNCj4gPiArCXRzdAlyMSwgcjAsIGxzbCAjMjQNCj4gPiArCWJtaQkuTF9kaXZp
ZGVfYjI1DQo+ID4gKwl0c3QJcjEsIHIwLCBsc2wgIzI1DQo+ID4gKwlibWkJLkxfZGl2aWRlX2Iy
Ng0KPiA+ICsJdHN0CXIxLCByMCwgbHNsICMyNg0KPiA+ICsJYm1pCS5MX2RpdmlkZV9iMjcNCj4g
PiArCXRzdAlyMSwgcjAsIGxzbCAjMjcNCj4gPiArCWJtaQkuTF9kaXZpZGVfYjI4DQo+ID4gKwl0
c3QJcjEsIHIwLCBsc2wgIzI4DQo+ID4gKwlibWkJLkxfZGl2aWRlX2IyOQ0KPiA+ICsJdHN0CXIx
LCByMCwgbHNsICMyOQ0KPiA+ICsJYm1pCS5MX2RpdmlkZV9iMzANCj4gPiArCXRzdAlyMSwgcjAs
IGxzbCAjMzANCj4gPiArCWJtaQkuTF9kaXZpZGVfYjMxDQo+ID4gKy8qDQo+ID4gKyAqIGluc3Rl
YWQgb2Y6DQo+ID4gKyAqCXRzdAlyMSwgcjAsIGxzbCAjMzENCj4gPiArICoJYm1pCS5MX2Rpdmlk
ZV9iMzINCj4gPiArICovDQo+ID4gKwliCS5MX2RpdmlkZV9iMzINCj4gPiArDQo+ID4gKy5MX29s
ZF9jb2RlOg0KPiA+ICsJY21wCXIxLCByMA0KPiA+ICsJYmNjCS5MX2RpdmlkZV9iMA0KPiA+ICsJ
Y21wCXIxLCByMCwgbHNsICMxDQo+ID4gKwliY2MJLkxfZGl2aWRlX2IxDQo+ID4gKwljbXAJcjEs
IHIwLCBsc2wgIzINCj4gPiArCWJjYwkuTF9kaXZpZGVfYjINCj4gPiArCWNtcAlyMSwgcjAsIGxz
bCAjMw0KPiA+ICsJYmNjCS5MX2RpdmlkZV9iMw0KPiA+ICsJY21wCXIxLCByMCwgbHNsICM0DQo+
ID4gKwliY2MJLkxfZGl2aWRlX2I0DQo+ID4gKwljbXAJcjEsIHIwLCBsc2wgIzUNCj4gPiArCWJj
YwkuTF9kaXZpZGVfYjUNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjNg0KPiA+ICsJYmNjCS5MX2Rp
dmlkZV9iNg0KPiA+ICsJY21wCXIxLCByMCwgbHNsICM3DQo+ID4gKwliY2MJLkxfZGl2aWRlX2I3
DQo+ID4gKwljbXAJcjEsIHIwLCBsc2wgIzgNCj4gPiArCWJjYwkuTF9kaXZpZGVfYjgNCj4gPiAr
CWNtcAlyMSwgcjAsIGxzbCAjOQ0KPiA+ICsJYmNjCS5MX2RpdmlkZV9iOQ0KPiA+ICsJY21wCXIx
LCByMCwgbHNsICMxMA0KPiA+ICsJYmNjCS5MX2RpdmlkZV9iMTANCj4gPiArCWNtcAlyMSwgcjAs
IGxzbCAjMTENCj4gPiArCWJjYwkuTF9kaXZpZGVfYjExDQo+ID4gKwljbXAJcjEsIHIwLCBsc2wg
IzEyDQo+ID4gKwliY2MJLkxfZGl2aWRlX2IxMg0KPiA+ICsJY21wCXIxLCByMCwgbHNsICMxMw0K
PiA+ICsJYmNjCS5MX2RpdmlkZV9iMTMNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjMTQNCj4gPiAr
CWJjYwkuTF9kaXZpZGVfYjE0DQo+ID4gKwljbXAJcjEsIHIwLCBsc2wgIzE1DQo+ID4gKwliY2MJ
LkxfZGl2aWRlX2IxNQ0KPiA+ICsJY21wCXIxLCByMCwgbHNsICMxNg0KPiA+ICsJYmNjCS5MX2Rp
dmlkZV9iMTYNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjMTcNCj4gPiArCWJjYwkuTF9kaXZpZGVf
YjE3DQo+ID4gKwljbXAJcjEsIHIwLCBsc2wgIzE4DQo+ID4gKwliY2MJLkxfZGl2aWRlX2IxOA0K
PiA+ICsJY21wCXIxLCByMCwgbHNsICMxOQ0KPiA+ICsJYmNjCS5MX2RpdmlkZV9iMTkNCj4gPiAr
CWNtcAlyMSwgcjAsIGxzbCAjMjANCj4gPiArCWJjYwkuTF9kaXZpZGVfYjIwDQo+ID4gKwljbXAJ
cjEsIHIwLCBsc2wgIzIxDQo+ID4gKwliY2MJLkxfZGl2aWRlX2IyMQ0KPiA+ICsJY21wCXIxLCBy
MCwgbHNsICMyMg0KPiA+ICsJYmNjCS5MX2RpdmlkZV9iMjINCj4gPiArCWNtcAlyMSwgcjAsIGxz
bCAjMjMNCj4gPiArCWJjYwkuTF9kaXZpZGVfYjIzDQo+ID4gKwljbXAJcjEsIHIwLCBsc2wgIzI0
DQo+ID4gKwliY2MJLkxfZGl2aWRlX2IyNA0KPiA+ICsJY21wCXIxLCByMCwgbHNsICMyNQ0KPiA+
ICsJYmNjCS5MX2RpdmlkZV9iMjUNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjMjYNCj4gPiArCWJj
YwkuTF9kaXZpZGVfYjI2DQo+ID4gKwljbXAJcjEsIHIwLCBsc2wgIzI3DQo+ID4gKwliY2MJLkxf
ZGl2aWRlX2IyNw0KPiA+ICsJY21wCXIxLCByMCwgbHNsICMyOA0KPiA+ICsJYmNjCS5MX2Rpdmlk
ZV9iMjgNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjMjkNCj4gPiArCWJjYwkuTF9kaXZpZGVfYjI5
DQo+ID4gKwljbXAJcjEsIHIwLCBsc2wgIzMwDQo+ID4gKwliY2MJLkxfZGl2aWRlX2IzMA0KPiA+
ICsuTF9kaXZpZGVfYjMyOg0KPiA+ICsJY21wCXIxLCByMCwgbHNsICMzMQ0KPiA+ICsJc3ViaHMJ
cjEsIHIxLHIwLCBsc2wgIzMxDQo+ID4gKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMzENCj4gPiAr
LkxfZGl2aWRlX2IzMToNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjMzANCj4gPiArCXN1YmhzCXIx
LCByMSxyMCwgbHNsICMzMA0KPiA+ICsJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzMwDQo+ID4gKy5M
X2RpdmlkZV9iMzA6DQo+ID4gKwljbXAJcjEsIHIwLCBsc2wgIzI5DQo+ID4gKwlzdWJocwlyMSwg
cjEscjAsIGxzbCAjMjkNCj4gPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyOQ0KPiA+ICsuTF9k
aXZpZGVfYjI5Og0KPiA+ICsJY21wCXIxLCByMCwgbHNsICMyOA0KPiA+ICsJc3ViaHMJcjEsIHIx
LHIwLCBsc2wgIzI4DQo+ID4gKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMjgNCj4gPiArLkxfZGl2
aWRlX2IyODoNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjMjcNCj4gPiArCXN1YmhzCXIxLCByMSxy
MCwgbHNsICMyNw0KPiA+ICsJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzI3DQo+ID4gKy5MX2Rpdmlk
ZV9iMjc6DQo+ID4gKwljbXAJcjEsIHIwLCBsc2wgIzI2DQo+ID4gKwlzdWJocwlyMSwgcjEscjAs
IGxzbCAjMjYNCj4gPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyNg0KPiA+ICsuTF9kaXZpZGVf
YjI2Og0KPiA+ICsJY21wCXIxLCByMCwgbHNsICMyNQ0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBs
c2wgIzI1DQo+ID4gKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMjUNCj4gPiArLkxfZGl2aWRlX2Iy
NToNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjMjQNCj4gPiArCXN1YmhzCXIxLCByMSxyMCwgbHNs
ICMyNA0KPiA+ICsJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzI0DQo+ID4gKy5MX2RpdmlkZV9iMjQ6
DQo+ID4gKwljbXAJcjEsIHIwLCBsc2wgIzIzDQo+ID4gKwlzdWJocwlyMSwgcjEscjAsIGxzbCAj
MjMNCj4gPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyMw0KPiA+ICsuTF9kaXZpZGVfYjIzOg0K
PiA+ICsJY21wCXIxLCByMCwgbHNsICMyMg0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzIy
DQo+ID4gKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMjINCj4gPiArLkxfZGl2aWRlX2IyMjoNCj4g
PiArCWNtcAlyMSwgcjAsIGxzbCAjMjENCj4gPiArCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyMQ0K
PiA+ICsJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzIxDQo+ID4gKy5MX2RpdmlkZV9iMjE6DQo+ID4g
KwljbXAJcjEsIHIwLCBsc2wgIzIwDQo+ID4gKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMjANCj4g
PiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyMA0KPiA+ICsuTF9kaXZpZGVfYjIwOg0KPiA+ICsJ
Y21wCXIxLCByMCwgbHNsICMxOQ0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzE5DQo+ID4g
KwlhZGRocwlyMywgcjMscjIsIGxzbCAjMTkNCj4gPiArLkxfZGl2aWRlX2IxOToNCj4gPiArCWNt
cAlyMSwgcjAsIGxzbCAjMTgNCj4gPiArCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxOA0KPiA+ICsJ
YWRkaHMJcjMsIHIzLHIyLCBsc2wgIzE4DQo+ID4gKy5MX2RpdmlkZV9iMTg6DQo+ID4gKwljbXAJ
cjEsIHIwLCBsc2wgIzE3DQo+ID4gKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTcNCj4gPiArCWFk
ZGhzCXIzLCByMyxyMiwgbHNsICMxNw0KPiA+ICsuTF9kaXZpZGVfYjE3Og0KPiA+ICsJY21wCXIx
LCByMCwgbHNsICMxNg0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzE2DQo+ID4gKwlhZGRo
cwlyMywgcjMscjIsIGxzbCAjMTYNCj4gPiArLkxfZGl2aWRlX2IxNjoNCj4gPiArCWNtcAlyMSwg
cjAsIGxzbCAjMTUNCj4gPiArCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxNQ0KPiA+ICsJYWRkaHMJ
cjMsIHIzLHIyLCBsc2wgIzE1DQo+ID4gKy5MX2RpdmlkZV9iMTU6DQo+ID4gKwljbXAJcjEsIHIw
LCBsc2wgIzE0DQo+ID4gKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTQNCj4gPiArCWFkZGhzCXIz
LCByMyxyMiwgbHNsICMxNA0KPiA+ICsuTF9kaXZpZGVfYjE0Og0KPiA+ICsJY21wCXIxLCByMCwg
bHNsICMxMw0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzEzDQo+ID4gKwlhZGRocwlyMywg
cjMscjIsIGxzbCAjMTMNCj4gPiArLkxfZGl2aWRlX2IxMzoNCj4gPiArCWNtcAlyMSwgcjAsIGxz
bCAjMTINCj4gPiArCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxMg0KPiA+ICsJYWRkaHMJcjMsIHIz
LHIyLCBsc2wgIzEyDQo+ID4gKy5MX2RpdmlkZV9iMTI6DQo+ID4gKwljbXAJcjEsIHIwLCBsc2wg
IzExDQo+ID4gKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTENCj4gPiArCWFkZGhzCXIzLCByMyxy
MiwgbHNsICMxMQ0KPiA+ICsuTF9kaXZpZGVfYjExOg0KPiA+ICsJY21wCXIxLCByMCwgbHNsICMx
MA0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzEwDQo+ID4gKwlhZGRocwlyMywgcjMscjIs
IGxzbCAjMTANCj4gPiArLkxfZGl2aWRlX2IxMDoNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjOQ0K
PiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzkNCj4gPiArCWFkZGhzCXIzLCByMyxyMiwgbHNs
ICM5DQo+ID4gKy5MX2RpdmlkZV9iOToNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjOA0KPiA+ICsJ
c3ViaHMJcjEsIHIxLHIwLCBsc2wgIzgNCj4gPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICM4DQo+
ID4gKy5MX2RpdmlkZV9iODoNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjNw0KPiA+ICsJc3ViaHMJ
cjEsIHIxLHIwLCBsc2wgIzcNCj4gPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICM3DQo+ID4gKy5M
X2RpdmlkZV9iNzoNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjNg0KPiA+ICsJc3ViaHMJcjEsIHIx
LHIwLCBsc2wgIzYNCj4gPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICM2DQo+ID4gKy5MX2Rpdmlk
ZV9iNjoNCj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjNQ0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBs
c2wgIzUNCj4gPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICM1DQo+ID4gKy5MX2RpdmlkZV9iNToN
Cj4gPiArCWNtcAlyMSwgcjAsIGxzbCAjNA0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzQN
Cj4gPiArCWFkZGhzCXIzLCByMyxyMiwgbHNsICM0DQo+ID4gKy5MX2RpdmlkZV9iNDoNCj4gPiAr
CWNtcAlyMSwgcjAsIGxzbCAjMw0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzMNCj4gPiAr
CWFkZGhzCXIzLCByMyxyMiwgbHNsICMzDQo+ID4gKy5MX2RpdmlkZV9iMzoNCj4gPiArCWNtcAly
MSwgcjAsIGxzbCAjMg0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzINCj4gPiArCWFkZGhz
CXIzLCByMyxyMiwgbHNsICMyDQo+ID4gKy5MX2RpdmlkZV9iMjoNCj4gPiArCWNtcAlyMSwgcjAs
IGxzbCAjMQ0KPiA+ICsJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzENCj4gPiArCWFkZGhzCXIzLCBy
MyxyMiwgbHNsICMxDQo+ID4gKy5MX2RpdmlkZV9iMToNCj4gPiArCWNtcAlyMSwgcjANCj4gPiAr
CXN1YmhzCXIxLCByMSwgcjANCj4gPiArCWFkZGhzCXIzLCByMywgcjINCj4gPiArLkxfZGl2aWRl
X2IwOg0KPiA+ICsNCj4gPiArCXRzdAlpcCwgIzB4MjAwMDAwMDANCj4gPiArCWJuZQkuTF91ZGl2
aWRlX2wxDQo+ID4gKwltb3YJcjAsIHIzDQo+ID4gKwljbXAJaXAsICMwDQo+ID4gKwlyc2JtaQly
MSwgcjEsICMwDQo+ID4gKwltb3ZzCWlwLCBpcCwgbHNsICMxDQo+ID4gKwliaWNtaQlyMCwgcjAs
ICMweDgwMDAwMDAwCS8qIEZpeCBpbmNhc2Ugd2UgZGl2aWRlZCAweDgwMDAwMDAwICovDQo+ID4g
Kwlyc2JtaQlyMCwgcjAsICMwDQo+ID4gKwltb3YJcGMsIGxyDQo+ID4gKw0KPiA+ICsuTF91ZGl2
aWRlX2wxOg0KPiA+ICsJdHN0CWlwLCAjMHgxMDAwMDAwMA0KPiA+ICsJbW92CXIxLCByMSwgbHNs
ICMxDQo+ID4gKwlvcnJuZQlyMSwgcjEsICMxDQo+ID4gKwltb3YJcjMsIHIzLCBsc2wgIzENCj4g
PiArCWNtcAlyMSwgcjANCj4gPiArCXN1YmhzCXIxLCByMSwgcjANCj4gPiArCWFkZGhzCXIzLCBy
MywgcjINCj4gPiArCW1vdglyMCwgcjMNCj4gPiArCW1vdglwYywgbHINCj4gPiArRU5EKF9fYWVh
YmlfaWRpdikNCj4gPiArRU5EKF9fYWVhYmlfaWRpdm1vZCkNCj4gPiArRU5EKF9fZGl2c2kzKQ0K
PiA+ICsNCj4gPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtMzIvbGRpdm1vZC5TIGIvYXJjaC9h
cm0vYXJtMzIvbGRpdm1vZC5TDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAw
MDAwMDAwLi4xODAyMjdjDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2FyY2gvYXJtL2Fy
bTMyL2xkaXZtb2QuUw0KPiA+IEBAIC0wLDAgKzEsNjggQEANCj4gPiArLyogU1BEWC1MaWNlbnNl
LUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLw0KPiA+ICsvKg0KPiA+ICsgKiBDb3B5cmlnaHQg
KEMpIDIwMTIgQW5kcmV3IFR1cm5lcg0KPiA+ICsgKiBBbGwgcmlnaHRzIHJlc2VydmVkLg0KPiA+
ICsgKg0KPiA+ICsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQNCj4gPiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zDQo+ID4gKyAqIGFyZSBt
ZXQ6DQo+ID4gKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0DQo+ID4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4NCj4gPiArICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQNCj4gPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQ0KPiA+ICsgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLg0KPiA+ICsg
Kg0KPiA+ICsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENP
TlRSSUJVVE9SUyBgYEFTIElTJycgQU5EDQo+ID4gKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQ0KPiA+ICsgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVINCj4gUFVSUE9TRQ0KPiA+ICsgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQ0KPiA+ICsgKiBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IN
Cj4gQ09OU0VRVUVOVElBTA0KPiA+ICsgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUw0KPiA+ICsgKiBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikNCj4gPiArICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULA0KPiBTVFJJQ1QNCj4gPiArICogTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
DQo+IFdBWQ0KPiA+ICsgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GDQo+ID4gKyAqIFNVQ0ggREFNQUdFLg0KPiA+
ICsgKg0KPiA+ICsgKi8NCj4gPiArDQo+ID4gKyNkZWZpbmUgRU5UUllfTlAoc3ltYm9sKSBcDQo+
ID4gKwkuZ2xvYmwgc3ltYm9sOwlcDQo+ID4gKwlzeW1ib2w6DQo+ID4gKw0KPiA+ICsjZGVmaW5l
IEVORChzeW1ib2wpDQo+ID4gKw0KPiA+ICsvKg0KPiA+ICsgKiBUaGVzZSBjYWxjdWxhdGU6DQo+
ID4gKyAqIHEgPSBuIC8gbQ0KPiA+ICsgKiBXaXRoIGEgcmVtYWluZXIgci4NCj4gPiArICoNCj4g
PiArICogVGhleSB0YWtlIG4gaW4ge3IwLCByMX0gYW5kIG0gaW4ge3IyLCByM30gdGhlbiBwYXNz
IHRoZW0gaW50byB0aGUNCj4gPiArICogaGVscGVyIGZ1bmN0aW9uLiBUaGUgaGVwbGVyIGZ1bmN0
aW9ucyByZXR1cm4gcSBpbiB7cjAsIHIxfSBhcw0KPiA+ICsgKiByZXF1aXJlZCBieSB0aGUgQVBJ
IHNwZWMgaG93ZXZlciByIGlzIHJldHVybmVkIG9uIHRoZSBzdGFjay4gVGhlDQo+ID4gKyAqIEFC
SSByZXF1aXJlZCB1cyB0byByZXR1cm4gciBpbiB7cjIsIHIzfS4NCj4gPiArICoNCj4gPiArICog
V2UgbmVlZCB0byBhbGxvY2F0ZSA4IGJ5dGVzIG9uIHRoZSBzdGFjayB0byBzdG9yZSByLCB0aGUg
bGluaw0KPiA+ICsgKiByZWdpc3RlciwgYW5kIGEgcG9pbnRlciB0byB0aGUgc3BhY2Ugd2hlcmUg
dGhlIGhlbHBlciBmdW5jdGlvbg0KPiA+ICsgKiB3aWxsIHdyaXRlIHIgdG8uIEFmdGVyIHJldHVy
bmluZyBmcm9tIHRoZSBoZWxwZXIgZnVpbmN0aW9uIHdlIGxvYWQNCj4gPiArICogdGhlIG9sZCBs
aW5rIHJlZ2lzdGVyIGFuZCByIGZyb20gdGhlIHN0YWNrIGFuZCByZXR1cm4uDQo+ID4gKyAqLw0K
PiA+ICtFTlRSWV9OUChfX2FlYWJpX2xkaXZtb2QpDQo+ID4gKwlzdWIJc3AsIHNwLCAjOAkvKiBT
cGFjZSBmb3IgdGhlIHJlbWFpbmRlciAqLw0KPiA+ICsJc3RtZmQJc3AhLCB7c3AsIGxyfQkvKiBT
YXZlIGEgcG9pbnRlciB0byB0aGUgYWJvdmUgc3BhY2UgYW5kIGxyICovDQo+ID4gKwlibAlfX2tl
cm5fbGRpdm1vZA0KPiA+ICsJbGRyCWxyLCBbc3AsICM0XQkvKiBSZXN0b3JlIGxyICovDQo+ID4g
KwlhZGQJc3AsIHNwLCAjOAkvKiBNb3ZlIHNwIHRvIHRoZSByZW1haW5kZXIgdmFsdWUgKi8NCj4g
PiArCWxkbWZkCXNwISwge3IyLCByM30JLyogTG9hZCB0aGUgcmVtYWluZGVyICovDQo+ID4gKwlt
b3YJcGMsIGxyDQo+ID4gK0VORChfX2FlYWJpX2xkaXZtb2QpDQo+ID4gKw0KPiA+ICtFTlRSWV9O
UChfX2FlYWJpX3VsZGl2bW9kKQ0KPiA+ICsJc3ViCXNwLCBzcCwgIzgJLyogU3BhY2UgZm9yIHRo
ZSByZW1haW5kZXIgKi8NCj4gPiArCXN0bWZkCXNwISwge3NwLCBscn0JLyogU2F2ZSBhIHBvaW50
ZXIgdG8gdGhlIGFib3ZlIHNwYWNlIGFuZCBsciAqLw0KPiA+ICsJYmwJX19xZGl2cmVtDQo+ID4g
KwlsZHIJbHIsIFtzcCwgIzRdCS8qIFJlc3RvcmUgbHIgKi8NCj4gPiArCWFkZAlzcCwgc3AsICM4
CS8qIE1vdmUgc3AgdG8gdGhlIHJlbWFpbmRlciB2YWx1ZSAqLw0KPiA+ICsJbGRtZmQJc3AhLCB7
cjIsIHIzfQkvKiBMb2FkIHRoZSByZW1haW5kZXIgKi8NCj4gPiArCW1vdglwYywgbHINCj4gPiAr
RU5EKF9fYWVhYmlfdWxkaXZtb2QpDQo+ID4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTMyL2xk
aXZtb2RfaGVscGVyLmMNCj4gYi9hcmNoL2FybS9hcm0zMi9sZGl2bW9kX2hlbHBlci5jDQo+ID4g
bmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwLi4wOTg1MjNlDQo+ID4gLS0t
IC9kZXYvbnVsbA0KPiA+ICsrKyBiL2FyY2gvYXJtL2FybTMyL2xkaXZtb2RfaGVscGVyLmMNCj4g
PiBAQCAtMCwwICsxLDY3IEBADQo+ID4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0Qt
Mi1DbGF1c2UgKi8NCj4gPiArLyoNCj4gPiArICogQ29weXJpZ2h0IChDKSAyMDEyIEFuZHJldyBU
dXJuZXINCj4gPiArICogQWxsIHJpZ2h0cyByZXNlcnZlZC4NCj4gPiArICoNCj4gPiArICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0DQo+ID4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucw0KPiA+ICsgKiBhcmUgbWV0Og0KPiA+ICsgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodA0KPiA+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuDQo+ID4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0DQo+ID4gKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUNCj4gPiArICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCj4gPiArICoNCj4gPiArICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJ
UycnIEFORA0KPiA+ICsgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUNCj4gPiArICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSDQo+IFBVUlBP
U0UNCj4gPiArICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9S
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUNCj4gPiArICogRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SDQo+IENPTlNFUVVFTlRJQUwN
Cj4gPiArICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMNCj4gPiArICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pDQo+ID4gKyAqIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwNCj4gU1RSSUNUDQo+ID4gKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWQ0KPiBXQVkNCj4gPiArICog
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRg0KPiA+ICsgKiBTVUNIIERBTUFHRS4NCj4gPiArICoNCj4gPiArICovDQo+
ID4gKw0KPiA+ICsjaW5jbHVkZSA8dWsvYXJjaC90eXBlcy5oPg0KPiA+ICsNCj4gPiArX191NjQg
X19xZGl2cmVtKF9fdTY0IHUsIF9fdTY0IHYsIF9fdTY0ICpyZW0pOw0KPiA+ICsNCj4gPiArI2lm
bmRlZiBIQVZFX0xJQkMNCj4gPiArX19zNjQgX19kaXZkaTMoX19zNjQgYSwgX19zNjQgYikNCj4g
PiArew0KPiA+ICsJX191NjQgdWEsIHViLCB1cTsNCj4gPiArCWludCBuZWc7DQo+ID4gKw0KPiA+
ICsJaWYgKGEgPCAwKQ0KPiA+ICsJCXVhID0gLShfX3U2NClhLCBuZWcgPSAxOw0KPiA+ICsJZWxz
ZQ0KPiA+ICsJCXVhID0gYSwgbmVnID0gMDsNCj4gPiArCWlmIChiIDwgMCkNCj4gPiArCQl1YiA9
IC0oX191NjQpYiwgbmVnIF49IDE7DQo+ID4gKwllbHNlDQo+ID4gKwkJdWIgPSBiOw0KPiA+ICsJ
dXEgPSBfX3FkaXZyZW0odWEsIHViLCAoX191NjQgKikwKTsNCj4gPiArCXJldHVybiBuZWcgPyAt
dXEgOiB1cTsNCj4gPiArfQ0KPiA+ICsjZW5kaWYNCj4gPiArDQo+ID4gKy8qDQo+ID4gKyAqIEhl
bHBlciBmb3IgX19hZWFiaV9sZGl2bW9kLg0KPiA+ICsgKiBUT0RPOiBfX2RpdmRpMyBjYWxscyBf
X3FkaXZyZW0uIFdlIHNob3VsZCBkbyB0aGUgc2FtZSBhbmQgdXNlIHRoZQ0KPiA+ICsgKiByZW1h
aW5kZXIgdmFsdWUgcmF0aGVyIHRoYW4gcmUtY2FsY3VsYXRpbmcgaXQuDQo+ID4gKyAqLw0KPiA+
ICtsb25nIGxvbmcgX19rZXJuX2xkaXZtb2QobG9uZyBsb25nLCBsb25nIGxvbmcsIGxvbmcgbG9u
ZyAqKTsNCj4gPiArDQo+ID4gK2xvbmcgbG9uZyBfX2tlcm5fbGRpdm1vZChsb25nIGxvbmcgbiwg
bG9uZyBsb25nIG0sIGxvbmcgbG9uZyAqcmVtKQ0KPiA+ICt7DQo+ID4gKwlsb25nIGxvbmcgcTsN
Cj4gPiArDQo+ID4gKwlxID0gX19kaXZkaTMobiwgbSk7IC8qIHEgPSBuIC8gbSAqLw0KPiA+ICsJ
KnJlbSA9IG4gLSBtICogcTsNCj4gPiArDQo+ID4gKwlyZXR1cm4gcTsNCj4gPiArfQ0KPiA+IGRp
ZmYgLS1naXQgYS9hcmNoL2FybS9hcm0zMi9xZGl2cmVtLmMgYi9hcmNoL2FybS9hcm0zMi9xZGl2
cmVtLmMNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAuLmU3ZDE0
NzENCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvYXJjaC9hcm0vYXJtMzIvcWRpdnJlbS5j
DQo+ID4gQEAgLTAsMCArMSwzMjQgQEANCj4gPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6
IEJTRC0zLUNsYXVzZSAqLw0KPiA+ICsvKi0NCj4gPiArICogQ29weXJpZ2h0IChjKSAxOTkyLCAx
OTkzDQo+ID4gKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEu
ICBBbGwgcmlnaHRzIHJlc2VydmVkLg0KPiA+ICsgKg0KPiA+ICsgKiBUaGlzIHNvZnR3YXJlIHdh
cyBkZXZlbG9wZWQgYnkgdGhlIENvbXB1dGVyIFN5c3RlbXMgRW5naW5lZXJpbmcgZ3JvdXANCj4g
PiArICogYXQgTGF3cmVuY2UgQmVya2VsZXkgTGFib3JhdG9yeSB1bmRlciBEQVJQQSBjb250cmFj
dCBCRyA5MS02NiBhbmQNCj4gPiArICogY29udHJpYnV0ZWQgdG8gQmVya2VsZXkuDQo+ID4gKyAq
DQo+ID4gKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dA0KPiA+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMNCj4gPiArICogYXJlIG1ldDoN
Cj4gPiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLg0KPiA+ICsgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodA0K
PiA+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlDQo+ID4gKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uDQo+ID4gKyAqIDQu
IE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMg
Y29udHJpYnV0b3JzDQo+ID4gKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQ0KPiA+ICsgKiAgICB3aXRob3V0
IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4NCj4gPiArICoNCj4gPiArICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJyBBTkQNCj4gPiArICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFDQo+ID4gKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUg0KPiBQ
VVJQT1NFDQo+ID4gKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJF
R0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQ0KPiA+ICsgKiBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1INCj4gQ09OU0VRVUVO
VElBTA0KPiA+ICsgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUw0KPiA+ICsgKiBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikNCj4gPiAr
ICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULA0KPiBTVFJJQ1QNCj4gPiArICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZDQo+IFdBWQ0KPiA+
ICsgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GDQo+ID4gKyAqIFNVQ0ggREFNQUdFLg0KPiA+ICsgKi8NCj4gPiAr
DQo+ID4gKyNpbmNsdWRlIDx1ay9hcmNoL3R5cGVzLmg+DQo+ID4gKyNpbmNsdWRlIDx1ay9hcmNo
L2xpbWl0cy5oPg0KPiA+ICsNCj4gPiArLyoNCj4gPiArICogTXVsdGlwcmVjaXNpb24gZGl2aWRl
LiAgVGhpcyBhbGdvcml0aG0gaXMgZnJvbSBLbnV0aCB2b2wuIDIgKDJuZCBlZCksDQo+ID4gKyAq
IHNlY3Rpb24gNC4zLjEsIHBwLiAyNTctLTI1OS4NCj4gPiArICovDQo+ID4gKw0KPiA+ICsvKg0K
PiA+ICsgKiBGcm9tDQo+ID4gKyAqCUAoIylxdWFkLmgJOC4xIChCZXJrZWxleSkgNi80LzkzDQo+
ID4gKyAqLw0KPiA+ICsNCj4gPiArI2lmZGVmIF9fQklHX0VORElBTg0KPiA+ICsjZGVmaW5lIF9R
VUFEX0hJR0hXT1JEIDANCj4gPiArI2RlZmluZSBfUVVBRF9MT1dXT1JEIDENCj4gPiArI2Vsc2Ug
LyogX19MSVRUTEVfRU5ESUFOICovDQo+ID4gKyNkZWZpbmUgX1FVQURfSElHSFdPUkQgMQ0KPiA+
ICsjZGVmaW5lIF9RVUFEX0xPV1dPUkQgMA0KPiA+ICsjZW5kaWYNCj4gPiArDQo+ID4gKy8qDQo+
ID4gKyAqIERlZmluZSBoaWdoIGFuZCBsb3cgbG9uZ3dvcmRzLg0KPiA+ICsgKi8NCj4gPiArI2Rl
ZmluZSBRVUFESCAgICAgICAgICAgICAgIF9RVUFEX0hJR0hXT1JEDQo+ID4gKyNkZWZpbmUgUVVB
REwgICAgICAgICAgICAgICBfUVVBRF9MT1dXT1JEDQo+ID4gKw0KPiA+ICsvKg0KPiA+ICsgKiBU
b3RhbCBudW1iZXIgb2YgYml0cyBpbiBhIHF1YWRfdCBhbmQgaW4gdGhlIHBpZWNlcyB0aGF0IG1h
a2UgaXQgdXAuDQo+ID4gKyAqIFRoZXNlIGFyZSB1c2VkIGZvciBzaGlmdGluZywgYW5kIGFsc28g
YmVsb3cgZm9yIGhhbGZ3b3JkIGV4dHJhY3Rpb24NCj4gPiArICogYW5kIGFzc2VtYmx5Lg0KPiA+
ICsgKi8NCj4gPiArI2RlZmluZSBDSEFSX0JJVCAgICAgICAgOCAgICAgICAgICAgICAgIC8qIG51
bWJlciBvZiBiaXRzIGluIGEgY2hhciAqLw0KPiA+ICsjZGVmaW5lIFFVQURfQklUUyAgICAgICAo
c2l6ZW9mKF9fczY0KSAqIENIQVJfQklUKQ0KPiA+ICsjZGVmaW5lIExPTkdfQklUUyAgICAgICAo
c2l6ZW9mKGxvbmcpICogQ0hBUl9CSVQpDQo+ID4gKyNkZWZpbmUgSEFMRl9CSVRTICAgICAgIChz
aXplb2YobG9uZykgKiBDSEFSX0JJVCAvIDIpDQo+ID4gKw0KPiA+ICsjZGVmaW5lIERJR0lUX0JB
U0UgKDEgPDwgSEFMRl9CSVRTKSAvKiBkaWdpdCBiYXNlICovDQo+ID4gKy8qDQo+ID4gKyAqIEV4
dHJhY3QgaGlnaCBhbmQgbG93IHNob3J0d29yZHMgZnJvbSBsb25nd29yZCwgYW5kIG1vdmUgbG93
IHNob3J0d29yZCBvZg0KPiA+ICsgKiBsb25nd29yZCB0byB1cHBlciBoYWxmIG9mIGxvbmcsIGku
ZS4sIHByb2R1Y2UgdGhlIHVwcGVyIGxvbmd3b3JkIG9mDQo+ID4gKyAqICgocXVhZF90KSh4KSA8
PCAobnVtYmVyX29mX2JpdHNfaW5fbG9uZy8yKSkuICAoYHgnIG11c3QgYWN0dWFsbHkgYmUNCj4g
dV9sb25nLikNCj4gPiArICoNCj4gPiArICogVGhlc2UgYXJlIHVzZWQgaW4gdGhlIG11bHRpcGx5
IGNvZGUsIHRvIHNwbGl0IGEgbG9uZ3dvcmQgaW50byB1cHBlcg0KPiA+ICsgKiBhbmQgbG93ZXIg
aGFsdmVzLCBhbmQgdG8gcmVhc3NlbWJsZSBhIHByb2R1Y3QgYXMgYSBxdWFkX3QsIHNoaWZ0ZWQg
bGVmdA0KPiA+ICsgKiAoc2l6ZW9mKGxvbmcpKkNIQVJfQklULzIpLg0KPiA+ICsgKi8NCj4gPiAr
I2RlZmluZSBISEFMRih4KSAgICAgICAgKCh4KSA+PiBIQUxGX0JJVFMpDQo+ID4gKyNkZWZpbmUg
TEhBTEYoeCkgICAgICAgICgoeCkgJiAoKDEgPDwgSEFMRl9CSVRTKSAtIDEpKQ0KPiA+ICsjZGVm
aW5lIExIVVAoeCkgICAgICAgICAoKHgpIDw8IEhBTEZfQklUUykNCj4gPiArDQo+ID4gKyNkZWZp
bmUgQ09NQklORShhLCBiKSAoKCh1bnNpZ25lZCBsb25nKShhKSA8PCBIQUxGX0JJVFMpIHwgKGIp
KQ0KPiA+ICsNCj4gPiArLyoNCj4gPiArICogRGVwZW5kaW5nIG9uIHRoZSBkZXNpcmVkIG9wZXJh
dGlvbiwgd2UgdmlldyBhIGBsb25nIGxvbmcnIChha2EgcXVhZF90KQ0KPiBpbg0KPiA+ICsgKiBv
bmUgb3IgbW9yZSBvZiB0aGUgZm9sbG93aW5nIGZvcm1hdHMuDQo+ID4gKyAqLw0KPiA+ICt1bmlv
biB1dSB7DQo+ID4gKwlfX3M2NCAgICAgICAgICAgcTsgICAgICAgICAgICAgLyogYXMgYSAoc2ln
bmVkKSBxdWFkICovDQo+ID4gKwlfX3M2NCAgICAgICAgICB1cTsgICAgICAgICAgICAgLyogYXMg
YW4gdW5zaWduZWQgcXVhZCAqLw0KPiA+ICsJbG9uZyAgICAgICAgICAgc2xbMl07ICAgICAgICAg
IC8qIGFzIHR3byBzaWduZWQgbG9uZ3MgKi8NCj4gPiArCXVuc2lnbmVkIGxvbmcgIHVsWzJdOyAg
ICAgICAgICAvKiBhcyB0d28gdW5zaWduZWQgbG9uZ3MgKi8NCj4gPiArfTsNCj4gPiArDQo+ID4g
KyNkZWZpbmUJQgkoMSA8PCBIQUxGX0JJVFMpCS8qIGRpZ2l0IGJhc2UgKi8NCj4gPiArDQo+ID4g
Ky8qIHNlbGVjdCBhIHR5cGUgZm9yIGRpZ2l0cyBpbiBiYXNlIEI6IHVzZSB1bnNpZ25lZCBzaG9y
dCBpZiB0aGV5IGZpdCAqLw0KPiA+ICsjaWYgX19VTF9NQVggPT0gMHhmZmZmZmZmZiAmJiBfX1VT
X01BWCA+PSAweGZmZmYNCj4gPiArdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBkaWdpdDsNCj4gPiAr
I2Vsc2UNCj4gPiArdHlwZWRlZiB1bnNpZ25lZCBsb25nIGRpZ2l0Ow0KPiA+ICsjZW5kaWYNCj4g
PiArDQo+ID4gKy8qDQo+ID4gKyAqIFNoaWZ0IHBbMF0uLnBbbGVuXSBsZWZ0IGBzaCcgYml0cywg
aWdub3JpbmcgYW55IGJpdHMgdGhhdA0KPiA+ICsgKiBgZmFsbCBvdXQnIHRoZSBsZWZ0ICh0aGVy
ZSBuZXZlciB3aWxsIGJlIGFueSBzdWNoIGFueXdheSkuDQo+ID4gKyAqIFdlIG1heSBhc3N1bWUg
bGVuID49IDAuICBOT1RFIFRIQVQgVEhJUyBXUklURVMgbGVuKzEgRElHSVRTLg0KPiA+ICsgKi8N
Cj4gPiArc3RhdGljIHZvaWQgX19zaGwocmVnaXN0ZXIgZGlnaXQgKnAsIHJlZ2lzdGVyIGludCBs
ZW4sIHJlZ2lzdGVyIGludCBzaCkNCj4gPiArew0KPiA+ICsJcmVnaXN0ZXIgaW50IGk7DQo+ID4g
Kw0KPiA+ICsJZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKQ0KPiA+ICsJCXBbaV0gPSBMSEFMRihw
W2ldIDw8IHNoKSB8IChwW2kgKyAxXSA+PiAoSEFMRl9CSVRTIC0gc2gpKTsNCj4gPiArCXBbaV0g
PSBMSEFMRihwW2ldIDw8IHNoKTsNCj4gPiArfQ0KPiA+ICsNCj4gPiArLyoNCj4gPiArICogX19x
ZGl2cmVtKHUsIHYsIHJlbSkgcmV0dXJucyB1L3YgYW5kLCBvcHRpb25hbGx5LCBzZXRzICpyZW0g
dG8gdSV2Lg0KPiA+ICsgKg0KPiA+ICsgKiBXZSBkbyB0aGlzIGluIGJhc2UgMi1zdXAtSEFMRl9C
SVRTLCBzbyB0aGF0IGFsbCBpbnRlcm1lZGlhdGUgcHJvZHVjdHMNCj4gPiArICogZml0IHdpdGhp
biB1X2xvbmcuICBBcyBhIGNvbnNlcXVlbmNlLCB0aGUgbWF4aW11bSBsZW5ndGggZGl2aWRlbmQg
YW5kDQo+ID4gKyAqIGRpdmlzb3IgYXJlIDQgYGRpZ2l0cycgaW4gdGhpcyBiYXNlICh0aGV5IGFy
ZSBzaG9ydGVyIGlmIHRoZXkgaGF2ZQ0KPiA+ICsgKiBsZWFkaW5nIHplcm9zKS4NCj4gPiArICov
DQo+ID4gK19fdTY0IF9fcWRpdnJlbShfX3U2NCB1cSwgX191NjQgdnEsIF9fdTY0ICphcnEpDQo+
ID4gK3sNCj4gPiArCXVuaW9uIHV1IHRtcDsNCj4gPiArCWRpZ2l0ICp1LCAqdiwgKnE7DQo+ID4g
KwlyZWdpc3RlciBkaWdpdCB2MSwgdjI7DQo+ID4gKwl1bnNpZ25lZCBsb25nIHFoYXQsIHJoYXQs
IHQ7DQo+ID4gKwlpbnQgbSwgbiwgZCwgaiwgaTsNCj4gPiArCWRpZ2l0IHVzcGFjZVs1XSwgdnNw
YWNlWzVdLCBxc3BhY2VbNV07DQo+ID4gKw0KPiA+ICsJLyoNCj4gPiArCSAqIFRha2UgY2FyZSBv
ZiBzcGVjaWFsIGNhc2VzOiBkaXZpZGUgYnkgemVybywgYW5kIHUgPCB2Lg0KPiA+ICsJICovDQo+
ID4gKwlpZiAodnEgPT0gMCkgew0KPiA+ICsJCS8qIGRpdmlkZSBieSB6ZXJvLiAqLw0KPiA+ICsJ
CXN0YXRpYyB2b2xhdGlsZSBjb25zdCB1bnNpZ25lZCBpbnQgemVybyA9IDA7DQo+ID4gKw0KPiA+
ICsJCXRtcC51bFtRVUFESF0gPSB0bXAudWxbUVVBRExdID0gMSAvIHplcm87DQo+ID4gKwkJaWYg
KGFycSkNCj4gPiArCQkJKmFycSA9IHVxOw0KPiA+ICsJCXJldHVybiB0bXAucTsNCj4gPiArCX0N
Cj4gPiArCWlmICh1cSA8IHZxKSB7DQo+ID4gKwkJaWYgKGFycSkNCj4gPiArCQkJKmFycSA9IHVx
Ow0KPiA+ICsJCXJldHVybiAwOw0KPiA+ICsJfQ0KPiA+ICsJdSA9ICZ1c3BhY2VbMF07DQo+ID4g
Kwl2ID0gJnZzcGFjZVswXTsNCj4gPiArCXEgPSAmcXNwYWNlWzBdOw0KPiA+ICsNCj4gPiArCS8q
DQo+ID4gKwkgKiBCcmVhayBkaXZpZGVuZCBhbmQgZGl2aXNvciBpbnRvIGRpZ2l0cyBpbiBiYXNl
IEIsIHRoZW4NCj4gPiArCSAqIGNvdW50IGxlYWRpbmcgemVyb3MgdG8gZGV0ZXJtaW5lIG0gYW5k
IG4uICBXaGVuIGRvbmUsIHdlDQo+ID4gKwkgKiB3aWxsIGhhdmU6DQo+ID4gKwkgKgl1ID0gKHVb
MV11WzJdLi4udVttK25dKSBzdWIgQg0KPiA+ICsJICoJdiA9ICh2WzFddlsyXS4uLnZbbl0pIHN1
YiBCDQo+ID4gKwkgKgl2WzFdICE9IDANCj4gPiArCSAqCTEgPCBuIDw9IDQgKGlmIG4gPSAxLCB3
ZSB1c2UgYSBkaWZmZXJlbnQgZGl2aXNpb24gYWxnb3JpdGhtKQ0KPiA+ICsJICoJbSA+PSAwIChv
dGhlcndpc2UgdSA8IHYsIHdoaWNoIHdlIGFscmVhZHkgY2hlY2tlZCkNCj4gPiArCSAqCW0gKyBu
ID0gNA0KPiA+ICsJICogYW5kIHRodXMNCj4gPiArCSAqCW0gPSA0IC0gbiA8PSAyDQo+ID4gKwkg
Ki8NCj4gPiArCXRtcC51cSA9IHVxOw0KPiA+ICsJdVswXSA9IDA7DQo+ID4gKwl1WzFdID0gSEhB
TEYodG1wLnVsW1FVQURIXSk7DQo+ID4gKwl1WzJdID0gTEhBTEYodG1wLnVsW1FVQURIXSk7DQo+
ID4gKwl1WzNdID0gSEhBTEYodG1wLnVsW1FVQURMXSk7DQo+ID4gKwl1WzRdID0gTEhBTEYodG1w
LnVsW1FVQURMXSk7DQo+ID4gKwl0bXAudXEgPSB2cTsNCj4gPiArCXZbMV0gPSBISEFMRih0bXAu
dWxbUVVBREhdKTsNCj4gPiArCXZbMl0gPSBMSEFMRih0bXAudWxbUVVBREhdKTsNCj4gPiArCXZb
M10gPSBISEFMRih0bXAudWxbUVVBRExdKTsNCj4gPiArCXZbNF0gPSBMSEFMRih0bXAudWxbUVVB
RExdKTsNCj4gPiArCWZvciAobiA9IDQ7IHZbMV0gPT0gMDsgdisrKSB7DQo+ID4gKwkJaWYgKC0t
biA9PSAxKSB7DQo+ID4gKwkJCXVuc2lnbmVkIGxvbmcgcmJqOyAvKiByKkIrdVtqXSAobm90IHJv
b3QgYm95IGppbSkgKi8NCj4gPiArCQkJZGlnaXQgcTEsIHEyLCBxMywgcTQ7DQo+ID4gKw0KPiA+
ICsJCQkvKg0KPiA+ICsJCQkgKiBDaGFuZ2Ugb2YgcGxhbiwgcGVyIGV4ZXJjaXNlIDE2Lg0KPiA+
ICsJCQkgKglyID0gMDsNCj4gPiArCQkJICoJZm9yIGogPSAxLi40Og0KPiA+ICsJCQkgKgkJcVtq
XSA9IGZsb29yKChyKkIgKyB1W2pdKSAvIHYpLA0KPiA+ICsJCQkgKgkJciA9IChyKkIgKyB1W2pd
KSAlIHY7DQo+ID4gKwkJCSAqIFdlIHVucm9sbCB0aGlzIGNvbXBsZXRlbHkgaGVyZS4NCj4gPiAr
CQkJICovDQo+ID4gKwkJCXQgPSB2WzJdOwkvKiBub256ZXJvLCBieSBkZWZpbml0aW9uICovDQo+
ID4gKwkJCXExID0gdVsxXSAvIHQ7DQo+ID4gKwkJCXJiaiA9IENPTUJJTkUodVsxXSAlIHQsIHVb
Ml0pOw0KPiA+ICsJCQlxMiA9IHJiaiAvIHQ7DQo+ID4gKwkJCXJiaiA9IENPTUJJTkUocmJqICUg
dCwgdVszXSk7DQo+ID4gKwkJCXEzID0gcmJqIC8gdDsNCj4gPiArCQkJcmJqID0gQ09NQklORShy
YmogJSB0LCB1WzRdKTsNCj4gPiArCQkJcTQgPSByYmogLyB0Ow0KPiA+ICsJCQlpZiAoYXJxKQ0K
PiA+ICsJCQkJKmFycSA9IHJiaiAlIHQ7DQo+ID4gKwkJCXRtcC51bFtRVUFESF0gPSBDT01CSU5F
KHExLCBxMik7DQo+ID4gKwkJCXRtcC51bFtRVUFETF0gPSBDT01CSU5FKHEzLCBxNCk7DQo+ID4g
KwkJCXJldHVybiB0bXAucTsNCj4gPiArCQl9DQo+ID4gKwl9DQo+ID4gKw0KPiA+ICsJLyoNCj4g
PiArCSAqIEJ5IGFkanVzdGluZyBxIG9uY2Ugd2UgZGV0ZXJtaW5lIG0sIHdlIGNhbiBndWFyYW50
ZWUgdGhhdA0KPiA+ICsJICogdGhlcmUgaXMgYSBjb21wbGV0ZSBmb3VyLWRpZ2l0IHF1b3RpZW50
IGF0ICZxc3BhY2VbMV0gd2hlbg0KPiA+ICsJICogd2UgZmluYWxseSBzdG9wLg0KPiA+ICsJICov
DQo+ID4gKwlmb3IgKG0gPSA0IC0gbjsgdVsxXSA9PSAwOyB1KyspDQo+ID4gKwkJbS0tOw0KPiA+
ICsJZm9yIChpID0gNCAtIG07IC0taSA+PSAwOykNCj4gPiArCQlxW2ldID0gMDsNCj4gPiArCXEg
Kz0gNCAtIG07DQo+ID4gKw0KPiA+ICsJLyoNCj4gPiArCSAqIEhlcmUgd2UgcnVuIFByb2dyYW0g
RCwgdHJhbnNsYXRlZCBmcm9tIE1JWCB0byBDIGFuZCBhY3F1aXJpbmcNCj4gPiArCSAqIGEgZmV3
IG1pbm9yIGNoYW5nZXMuDQo+ID4gKwkgKg0KPiA+ICsJICogRDE6IGNob29zZSBtdWx0aXBsaWVy
IDEgPDwgZCB0byBlbnN1cmUgdlsxXSA+PSBCLzIuDQo+ID4gKwkgKi8NCj4gPiArCWQgPSAwOw0K
PiA+ICsJZm9yICh0ID0gdlsxXTsgdCA8IEIgLyAyOyB0IDw8PSAxKQ0KPiA+ICsJCWQrKzsNCj4g
PiArCWlmIChkID4gMCkgew0KPiA+ICsJCV9fc2hsKCZ1WzBdLCBtICsgbiwgZCk7CQkvKiB1IDw8
PSBkICovDQo+ID4gKwkJX19zaGwoJnZbMV0sIG4gLSAxLCBkKTsJCS8qIHYgPDw9IGQgKi8NCj4g
PiArCX0NCj4gPiArCS8qDQo+ID4gKwkgKiBEMjogaiA9IDAuDQo+ID4gKwkgKi8NCj4gPiArCWog
PSAwOw0KPiA+ICsJdjEgPSB2WzFdOwkvKiBmb3IgRDMgLS0gbm90ZSB0aGF0IHZbMS4ubl0gYXJl
IGNvbnN0YW50ICovDQo+ID4gKwl2MiA9IHZbMl07CS8qIGZvciBEMyAqLw0KPiA+ICsJZG8gew0K
PiA+ICsJCXJlZ2lzdGVyIGRpZ2l0IHVqMCwgdWoxLCB1ajI7DQo+ID4gKw0KPiA+ICsJCS8qDQo+
ID4gKwkJICogRDM6IENhbGN1bGF0ZSBxaGF0IChcXnEsIGluIFRlWCBub3RhdGlvbikuDQo+ID4g
KwkJICogTGV0IHFoYXQgPSBtaW4oKHVbal0qQiArIHVbaisxXSkvdlsxXSwgQi0xKSwgYW5kDQo+
ID4gKwkJICogbGV0IHJoYXQgPSAodVtqXSpCICsgdVtqKzFdKSBtb2QgdlsxXS4NCj4gPiArCQkg
KiBXaGlsZSByaGF0IDwgQiBhbmQgdlsyXSpxaGF0ID4gcmhhdCpCK3VbaisyXSwNCj4gPiArCQkg
KiBkZWNyZW1lbnQgcWhhdCBhbmQgaW5jcmVhc2UgcmhhdCBjb3JyZXNwb25kaW5nbHkuDQo+ID4g
KwkJICogTm90ZSB0aGF0IGlmIHJoYXQgPj0gQiwgdlsyXSpxaGF0IDwgcmhhdCpCLg0KPiA+ICsJ
CSAqLw0KPiA+ICsJCXVqMCA9IHVbaiArIDBdOwkvKiBmb3IgRDMgb25seSAtLSBub3RlIHRoYXQg
dVtqKy4uLl0gY2hhbmdlICovDQo+ID4gKwkJdWoxID0gdVtqICsgMV07CS8qIGZvciBEMyBvbmx5
ICovDQo+ID4gKwkJdWoyID0gdVtqICsgMl07CS8qIGZvciBEMyBvbmx5ICovDQo+ID4gKwkJaWYg
KHVqMCA9PSB2MSkgew0KPiA+ICsJCQlxaGF0ID0gQjsNCj4gPiArCQkJcmhhdCA9IHVqMTsNCj4g
PiArCQkJZ290byBxaGF0X3Rvb19iaWc7DQo+ID4gKwkJfSBlbHNlIHsNCj4gPiArCQkJdW5zaWdu
ZWQgbG9uZyBubiA9IENPTUJJTkUodWowLCB1ajEpOw0KPiA+ICsNCj4gPiArCQkJcWhhdCA9IG5u
IC8gdjE7DQo+ID4gKwkJCXJoYXQgPSBubiAlIHYxOw0KPiA+ICsJCX0NCj4gPiArCQl3aGlsZSAo
djIgKiBxaGF0ID4gQ09NQklORShyaGF0LCB1ajIpKSB7DQo+ID4gK3FoYXRfdG9vX2JpZzoNCj4g
PiArCQkJcWhhdC0tOw0KPiA+ICsJCQlpZiAoKHJoYXQgKz0gdjEpID49IEIpDQo+ID4gKwkJCQli
cmVhazsNCj4gPiArCQl9DQo+ID4gKwkJLyoNCj4gPiArCQkgKiBENDogTXVsdGlwbHkgYW5kIHN1
YnRyYWN0Lg0KPiA+ICsJCSAqIFRoZSB2YXJpYWJsZSBgdCcgaG9sZHMgYW55IGJvcnJvd3MgYWNy
b3NzIHRoZSBsb29wLg0KPiA+ICsJCSAqIFdlIHNwbGl0IHRoaXMgdXAgc28gdGhhdCB3ZSBkbyBu
b3QgcmVxdWlyZSB2WzBdID0gMCwNCj4gPiArCQkgKiBhbmQgdG8gZWxpbWluYXRlIGEgZmluYWwg
c3BlY2lhbCBjYXNlLg0KPiA+ICsJCSAqLw0KPiA+ICsJCWZvciAodCA9IDAsIGkgPSBuOyBpID4g
MDsgaS0tKSB7DQo+ID4gKwkJCXQgPSB1W2kgKyBqXSAtIHZbaV0gKiBxaGF0IC0gdDsNCj4gPiAr
CQkJdVtpICsgal0gPSBMSEFMRih0KTsNCj4gPiArCQkJdCA9IChCIC0gSEhBTEYodCkpICYgKEIg
LSAxKTsNCj4gPiArCQl9DQo+ID4gKwkJdCA9IHVbal0gLSB0Ow0KPiA+ICsJCXVbal0gPSBMSEFM
Rih0KTsNCj4gPiArCQkvKg0KPiA+ICsJCSAqIEQ1OiB0ZXN0IHJlbWFpbmRlci4NCj4gPiArCQkg
KiBUaGVyZSBpcyBhIGJvcnJvdyBpZiBhbmQgb25seSBpZiBISEFMRih0KSBpcyBub256ZXJvOw0K
PiA+ICsJCSAqIGluIHRoYXQgKHJhcmUpIGNhc2UsIHFoYXQgd2FzIHRvbyBsYXJnZSAoYnkgZXhh
Y3RseSAxKS4NCj4gPiArCQkgKiBGaXggaXQgYnkgYWRkaW5nIHZbMS4ubl0gdG8gdVtqLi5qK25d
Lg0KPiA+ICsJCSAqLw0KPiA+ICsJCWlmIChISEFMRih0KSkgew0KPiA+ICsJCQlxaGF0LS07DQo+
ID4gKwkJCWZvciAodCA9IDAsIGkgPSBuOyBpID4gMDsgaS0tKSB7IC8qIEQ2OiBhZGQgYmFjay4g
Ki8NCj4gPiArCQkJCXQgKz0gdVtpICsgal0gKyB2W2ldOw0KPiA+ICsJCQkJdVtpICsgal0gPSBM
SEFMRih0KTsNCj4gPiArCQkJCXQgPSBISEFMRih0KTsNCj4gPiArCQkJfQ0KPiA+ICsJCQl1W2pd
ID0gTEhBTEYodVtqXSArIHQpOw0KPiA+ICsJCX0NCj4gPiArCQlxW2pdID0gcWhhdDsNCj4gPiAr
CX0gd2hpbGUgKCsraiA8PSBtKTsJCS8qIEQ3OiBsb29wIG9uIGouICovDQo+ID4gKw0KPiA+ICsJ
LyoNCj4gPiArCSAqIElmIGNhbGxlciB3YW50cyB0aGUgcmVtYWluZGVyLCB3ZSBoYXZlIHRvIGNh
bGN1bGF0ZSBpdCBhcw0KPiA+ICsJICogdVttLi5tK25dID4+IGQgKHRoaXMgaXMgYXQgbW9zdCBu
IGRpZ2l0cyBhbmQgdGh1cyBmaXRzIGluDQo+ID4gKwkgKiB1W20rMS4ubStuXSwgYnV0IHdlIG1h
eSBuZWVkIG1vcmUgc291cmNlIGRpZ2l0cykuDQo+ID4gKwkgKi8NCj4gPiArCWlmIChhcnEpIHsN
Cj4gPiArCQlpZiAoZCkgew0KPiA+ICsJCQlmb3IgKGkgPSBtICsgbjsgaSA+IG07IC0taSkNCj4g
PiArCQkJCXVbaV0gPSAodVtpXSA+PiBkKSB8DQo+ID4gKwkJCQkgICAgTEhBTEYodVtpIC0gMV0g
PDwgKEhBTEZfQklUUyAtIGQpKTsNCj4gPiArCQkJdVtpXSA9IDA7DQo+ID4gKwkJfQ0KPiA+ICsJ
CXRtcC51bFtRVUFESF0gPSBDT01CSU5FKHVzcGFjZVsxXSwgdXNwYWNlWzJdKTsNCj4gPiArCQl0
bXAudWxbUVVBRExdID0gQ09NQklORSh1c3BhY2VbM10sIHVzcGFjZVs0XSk7DQo+ID4gKwkJKmFy
cSA9IHRtcC5xOw0KPiA+ICsJfQ0KPiA+ICsNCj4gPiArCXRtcC51bFtRVUFESF0gPSBDT01CSU5F
KHFzcGFjZVsxXSwgcXNwYWNlWzJdKTsNCj4gPiArCXRtcC51bFtRVUFETF0gPSBDT01CSU5FKHFz
cGFjZVszXSwgcXNwYWNlWzRdKTsNCj4gPiArCXJldHVybiB0bXAucTsNCj4gPiArfQ0KPiA+IGRp
ZmYgLS1naXQgYS9hcmNoL2FybS9kaXZzaTMuUyBiL2FyY2gvYXJtL2RpdnNpMy5TDQo+ID4gZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggZmE5MjIzMy4uMDAwMDAwMA0KPiA+IC0t
LSBhL2FyY2gvYXJtL2RpdnNpMy5TDQo+ID4gKysrIC9kZXYvbnVsbA0KPiA+IEBAIC0xLDQwNCAr
MCwwIEBADQo+ID4gLS8qCSROZXRCU0Q6IGRpdnNpMy5TLHYgMS40IDIwMDMvMDQvMDUgMjM6Mjc6
MTUgYmpoMjEgRXhwICQJKi8NCj4gPiAtDQo+ID4gLS8qLQ0KPiA+IC0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
DQo+ID4gLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQ0KPiA+IC0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVINCj4gUFVSUE9TRQ0KPiA+
IC0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRQ0KPiA+IC0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1INCj4gQ09OU0VRVUVOVElBTA0KPiA+IC0g
KiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUw0KPiA+IC0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikNCj4gPiAtICogSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LA0KPiBTVFJJQ1QNCj4gPiAtICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZDQo+IFdBWQ0KPiA+IC0gKiBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GDQo+ID4gLSAqIFNVQ0ggREFNQUdFLg0KPiA+IC0gKi8NCj4gPiAtDQo+ID4gLSNkZWZp
bmUgRU5UUllfTlAoc3ltYm9sKSBcDQo+ID4gLQkuZ2xvYmwgc3ltYm9sOwlcDQo+ID4gLQlzeW1i
b2w6DQo+ID4gLQ0KPiA+IC0jZGVmaW5lIEVORChzeW1ib2wpDQo+ID4gLQ0KPiA+IC0vKg0KPiA+
IC0gKiBzdGFjayBpcyBhbGlnbmVkIGFzIHRoZXJlJ3MgYSBwb3NzaWJpbGl0eSBvZiBicmFuY2hp
bmcgdG8gTF9vdmVyZmxvdw0KPiA+IC0gKiB3aGljaCBtYWtlcyBhIEMgY2FsbA0KPiA+IC0gKi8N
Cj4gPiAtDQo+ID4gLUVOVFJZX05QKF9fdW1vZHNpMykNCj4gPiAtCXN0bWZkCXNwISwge2xyfQ0K
PiA+IC0Jc3ViCXNwLCBzcCwgIzQJLyogYWxpZ24gc3RhY2sgKi8NCj4gPiAtCWJsCS5MX3VkaXZp
ZGUNCj4gPiAtCWFkZAlzcCwgc3AsICM0CS8qIHVuYWxpZ24gc3RhY2sgKi8NCj4gPiAtCW1vdgly
MCwgcjENCj4gPiAtCWxkbWZkCXNwISwge3BjfQ0KPiA+IC1FTkQoX191bW9kc2kzKQ0KPiA+IC0N
Cj4gPiAtRU5UUllfTlAoX19tb2RzaTMpDQo+ID4gLQlzdG1mZAlzcCEsIHtscn0NCj4gPiAtCXN1
YglzcCwgc3AsICM0CS8qIGFsaWduIHN0YWNrICovDQo+ID4gLQlibAkuTF9kaXZpZGUNCj4gPiAt
CWFkZAlzcCwgc3AsICM0CS8qIHVuYWxpZ24gc3RhY2sgKi8NCj4gPiAtCW1vdglyMCwgcjENCj4g
PiAtCWxkbWZkCXNwISwge3BjfQ0KPiA+IC0NCj4gPiAtLkxfb3ZlcmZsb3c6DQo+ID4gLQkvKiBY
WFggc2hvdWxkIGNhdXNlIGEgZmF0YWwgZXJyb3IgKi8NCj4gPiAtCW12bglyMCwgIzANCj4gPiAt
CW1vdglwYywgbHINCj4gPiAtDQo+ID4gLUVORChfX21vZHNpMykNCj4gPiAtDQo+ID4gLSNpZmRl
ZiBfX0FSTV9FQUJJX18NCj4gPiAtRU5UUllfTlAoX19hZWFiaV91aWRpdikNCj4gPiAtRU5UUllf
TlAoX19hZWFiaV91aWRpdm1vZCkNCj4gPiAtI2VuZGlmDQo+ID4gLUVOVFJZX05QKF9fdWRpdnNp
MykNCj4gPiAtLkxfdWRpdmlkZToJCQkJLyogcjAgPSByMCAvIHIxOyByMSA9IHIwICUgcjEgKi8N
Cj4gPiAtCWVvciAgICAgcjAsIHIxLCByMA0KPiA+IC0JZW9yICAgICByMSwgcjAsIHIxDQo+ID4g
LQllb3IgICAgIHIwLCByMSwgcjANCj4gPiAtCQkJCQkvKiByMCA9IHIxIC8gcjA7IHIxID0gcjEg
JSByMCAqLw0KPiA+IC0JY21wCXIwLCAjMQ0KPiA+IC0JYmNjCS5MX292ZXJmbG93DQo+ID4gLQli
ZXEJLkxfZGl2aWRlX2wwDQo+ID4gLQltb3YJaXAsICMwDQo+ID4gLQltb3ZzCXIxLCByMQ0KPiA+
IC0JYnBsCS5MX2RpdmlkZV9sMQ0KPiA+IC0Jb3JyCWlwLCBpcCwgIzB4MjAwMDAwMDAJLyogaXAg
Yml0IDB4MjAwMDAwMDAgPSAtdmUgcjEgKi8NCj4gPiAtCW1vdnMJcjEsIHIxLCBsc3IgIzENCj4g
PiAtCW9ycmNzCWlwLCBpcCwgIzB4MTAwMDAwMDAJLyogaXAgYml0IDB4MTAwMDAwMDAgPSBiaXQg
MCBvZiByMSAqLw0KPiA+IC0JYgkuTF9kaXZpZGVfbDENCj4gPiAtDQo+ID4gLS5MX2RpdmlkZV9s
MDoJCQkJLyogcjAgPT0gMSAqLw0KPiA+IC0JbW92CXIwLCByMQ0KPiA+IC0JbW92CXIxLCAjMA0K
PiA+IC0JbW92CXBjLCBscg0KPiA+IC0jaWZkZWYgX19BUk1fRUFCSV9fDQo+ID4gLUVORChfX2Fl
YWJpX3VpZGl2KQ0KPiA+IC1FTkQoX19hZWFiaV91aWRpdm1vZCkNCj4gPiAtI2VuZGlmDQo+ID4g
LUVORChfX3VkaXZzaTMpDQo+ID4gLQ0KPiA+IC0jaWZkZWYgX19BUk1fRUFCSV9fDQo+ID4gLUVO
VFJZX05QKF9fYWVhYmlfaWRpdikNCj4gPiAtRU5UUllfTlAoX19hZWFiaV9pZGl2bW9kKQ0KPiA+
IC0jZW5kaWYNCj4gPiAtRU5UUllfTlAoX19kaXZzaTMpDQo+ID4gLS5MX2RpdmlkZToJCQkJLyog
cjAgPSByMCAvIHIxOyByMSA9IHIwICUgcjEgKi8NCj4gPiAtCWVvciAgICAgcjAsIHIxLCByMA0K
PiA+IC0JZW9yICAgICByMSwgcjAsIHIxDQo+ID4gLQllb3IgICAgIHIwLCByMSwgcjANCj4gPiAt
CQkJCQkvKiByMCA9IHIxIC8gcjA7IHIxID0gcjEgJSByMCAqLw0KPiA+IC0JY21wCXIwLCAjMQ0K
PiA+IC0JYmNjCS5MX292ZXJmbG93DQo+ID4gLQliZXEJLkxfZGl2aWRlX2wwDQo+ID4gLQlhbmRz
CWlwLCByMCwgIzB4ODAwMDAwMDANCj4gPiAtCXJzYm1pCXIwLCByMCwgIzANCj4gPiAtCWFuZHMJ
cjIsIHIxLCAjMHg4MDAwMDAwMA0KPiA+IC0JZW9yCWlwLCBpcCwgcjINCj4gPiAtCXJzYm1pCXIx
LCByMSwgIzANCj4gPiAtCW9ycglpcCwgcjIsIGlwLCBsc3IgIzEJLyogaXAgYml0IDB4NDAwMDAw
MDAgPSAtdmUgZGl2aXNpb24gKi8NCj4gPiAtCQkJCQkvKiBpcCBiaXQgMHg4MDAwMDAwMCA9IC12
ZSByZW1haW5kZXIgKi8NCj4gPiAtDQo+ID4gLS5MX2RpdmlkZV9sMToNCj4gPiAtCW1vdglyMiwg
IzENCj4gPiAtCW1vdglyMywgIzANCj4gPiAtDQo+ID4gLQkvKg0KPiA+IC0JICogSWYgdGhlIGhp
Z2hlc3QgYml0IG9mIHRoZSBkaXZpZGVuZCBpcyBzZXQsIHdlIGhhdmUgdG8gYmUNCj4gPiAtCSAq
IGNhcmVmdWwgd2hlbiBzaGlmdGluZyB0aGUgZGl2aXNvci4gVGVzdCB0aGlzLg0KPiA+IC0JICov
DQo+ID4gLQltb3ZzCXIxLHIxDQo+ID4gLQlicGwJLkxfb2xkX2NvZGUNCj4gPiAtDQo+ID4gLQkv
Kg0KPiA+IC0JICogQXQgdGhpcyBwb2ludCwgdGhlIGhpZ2hlc3QgYml0IG9mIHIxIGlzIGtub3du
IHRvIGJlIHNldC4NCj4gPiAtCSAqIFdlIGFidXNlIHRoaXMgYmVsb3cgaW4gdGhlIHRzdCBpbnN0
cnVjdGlvbnMuDQo+ID4gLQkgKi8NCj4gPiAtCXRzdAlyMSwgcjAgLyosIGxzbCAjMCAqLw0KPiA+
IC0JYm1pCS5MX2RpdmlkZV9iMQ0KPiA+IC0JdHN0CXIxLCByMCwgbHNsICMxDQo+ID4gLQlibWkJ
LkxfZGl2aWRlX2IyDQo+ID4gLQl0c3QJcjEsIHIwLCBsc2wgIzINCj4gPiAtCWJtaQkuTF9kaXZp
ZGVfYjMNCj4gPiAtCXRzdAlyMSwgcjAsIGxzbCAjMw0KPiA+IC0JYm1pCS5MX2RpdmlkZV9iNA0K
PiA+IC0JdHN0CXIxLCByMCwgbHNsICM0DQo+ID4gLQlibWkJLkxfZGl2aWRlX2I1DQo+ID4gLQl0
c3QJcjEsIHIwLCBsc2wgIzUNCj4gPiAtCWJtaQkuTF9kaXZpZGVfYjYNCj4gPiAtCXRzdAlyMSwg
cjAsIGxzbCAjNg0KPiA+IC0JYm1pCS5MX2RpdmlkZV9iNw0KPiA+IC0JdHN0CXIxLCByMCwgbHNs
ICM3DQo+ID4gLQlibWkJLkxfZGl2aWRlX2I4DQo+ID4gLQl0c3QJcjEsIHIwLCBsc2wgIzgNCj4g
PiAtCWJtaQkuTF9kaXZpZGVfYjkNCj4gPiAtCXRzdAlyMSwgcjAsIGxzbCAjOQ0KPiA+IC0JYm1p
CS5MX2RpdmlkZV9iMTANCj4gPiAtCXRzdAlyMSwgcjAsIGxzbCAjMTANCj4gPiAtCWJtaQkuTF9k
aXZpZGVfYjExDQo+ID4gLQl0c3QJcjEsIHIwLCBsc2wgIzExDQo+ID4gLQlibWkJLkxfZGl2aWRl
X2IxMg0KPiA+IC0JdHN0CXIxLCByMCwgbHNsICMxMg0KPiA+IC0JYm1pCS5MX2RpdmlkZV9iMTMN
Cj4gPiAtCXRzdAlyMSwgcjAsIGxzbCAjMTMNCj4gPiAtCWJtaQkuTF9kaXZpZGVfYjE0DQo+ID4g
LQl0c3QJcjEsIHIwLCBsc2wgIzE0DQo+ID4gLQlibWkJLkxfZGl2aWRlX2IxNQ0KPiA+IC0JdHN0
CXIxLCByMCwgbHNsICMxNQ0KPiA+IC0JYm1pCS5MX2RpdmlkZV9iMTYNCj4gPiAtCXRzdAlyMSwg
cjAsIGxzbCAjMTYNCj4gPiAtCWJtaQkuTF9kaXZpZGVfYjE3DQo+ID4gLQl0c3QJcjEsIHIwLCBs
c2wgIzE3DQo+ID4gLQlibWkJLkxfZGl2aWRlX2IxOA0KPiA+IC0JdHN0CXIxLCByMCwgbHNsICMx
OA0KPiA+IC0JYm1pCS5MX2RpdmlkZV9iMTkNCj4gPiAtCXRzdAlyMSwgcjAsIGxzbCAjMTkNCj4g
PiAtCWJtaQkuTF9kaXZpZGVfYjIwDQo+ID4gLQl0c3QJcjEsIHIwLCBsc2wgIzIwDQo+ID4gLQli
bWkJLkxfZGl2aWRlX2IyMQ0KPiA+IC0JdHN0CXIxLCByMCwgbHNsICMyMQ0KPiA+IC0JYm1pCS5M
X2RpdmlkZV9iMjINCj4gPiAtCXRzdAlyMSwgcjAsIGxzbCAjMjINCj4gPiAtCWJtaQkuTF9kaXZp
ZGVfYjIzDQo+ID4gLQl0c3QJcjEsIHIwLCBsc2wgIzIzDQo+ID4gLQlibWkJLkxfZGl2aWRlX2Iy
NA0KPiA+IC0JdHN0CXIxLCByMCwgbHNsICMyNA0KPiA+IC0JYm1pCS5MX2RpdmlkZV9iMjUNCj4g
PiAtCXRzdAlyMSwgcjAsIGxzbCAjMjUNCj4gPiAtCWJtaQkuTF9kaXZpZGVfYjI2DQo+ID4gLQl0
c3QJcjEsIHIwLCBsc2wgIzI2DQo+ID4gLQlibWkJLkxfZGl2aWRlX2IyNw0KPiA+IC0JdHN0CXIx
LCByMCwgbHNsICMyNw0KPiA+IC0JYm1pCS5MX2RpdmlkZV9iMjgNCj4gPiAtCXRzdAlyMSwgcjAs
IGxzbCAjMjgNCj4gPiAtCWJtaQkuTF9kaXZpZGVfYjI5DQo+ID4gLQl0c3QJcjEsIHIwLCBsc2wg
IzI5DQo+ID4gLQlibWkJLkxfZGl2aWRlX2IzMA0KPiA+IC0JdHN0CXIxLCByMCwgbHNsICMzMA0K
PiA+IC0JYm1pCS5MX2RpdmlkZV9iMzENCj4gPiAtLyoNCj4gPiAtICogaW5zdGVhZCBvZjoNCj4g
PiAtICoJdHN0CXIxLCByMCwgbHNsICMzMQ0KPiA+IC0gKglibWkJLkxfZGl2aWRlX2IzMg0KPiA+
IC0gKi8NCj4gPiAtCWIJLkxfZGl2aWRlX2IzMg0KPiA+IC0NCj4gPiAtLkxfb2xkX2NvZGU6DQo+
ID4gLQljbXAJcjEsIHIwDQo+ID4gLQliY2MJLkxfZGl2aWRlX2IwDQo+ID4gLQljbXAJcjEsIHIw
LCBsc2wgIzENCj4gPiAtCWJjYwkuTF9kaXZpZGVfYjENCj4gPiAtCWNtcAlyMSwgcjAsIGxzbCAj
Mg0KPiA+IC0JYmNjCS5MX2RpdmlkZV9iMg0KPiA+IC0JY21wCXIxLCByMCwgbHNsICMzDQo+ID4g
LQliY2MJLkxfZGl2aWRlX2IzDQo+ID4gLQljbXAJcjEsIHIwLCBsc2wgIzQNCj4gPiAtCWJjYwku
TF9kaXZpZGVfYjQNCj4gPiAtCWNtcAlyMSwgcjAsIGxzbCAjNQ0KPiA+IC0JYmNjCS5MX2Rpdmlk
ZV9iNQ0KPiA+IC0JY21wCXIxLCByMCwgbHNsICM2DQo+ID4gLQliY2MJLkxfZGl2aWRlX2I2DQo+
ID4gLQljbXAJcjEsIHIwLCBsc2wgIzcNCj4gPiAtCWJjYwkuTF9kaXZpZGVfYjcNCj4gPiAtCWNt
cAlyMSwgcjAsIGxzbCAjOA0KPiA+IC0JYmNjCS5MX2RpdmlkZV9iOA0KPiA+IC0JY21wCXIxLCBy
MCwgbHNsICM5DQo+ID4gLQliY2MJLkxfZGl2aWRlX2I5DQo+ID4gLQljbXAJcjEsIHIwLCBsc2wg
IzEwDQo+ID4gLQliY2MJLkxfZGl2aWRlX2IxMA0KPiA+IC0JY21wCXIxLCByMCwgbHNsICMxMQ0K
PiA+IC0JYmNjCS5MX2RpdmlkZV9iMTENCj4gPiAtCWNtcAlyMSwgcjAsIGxzbCAjMTINCj4gPiAt
CWJjYwkuTF9kaXZpZGVfYjEyDQo+ID4gLQljbXAJcjEsIHIwLCBsc2wgIzEzDQo+ID4gLQliY2MJ
LkxfZGl2aWRlX2IxMw0KPiA+IC0JY21wCXIxLCByMCwgbHNsICMxNA0KPiA+IC0JYmNjCS5MX2Rp
dmlkZV9iMTQNCj4gPiAtCWNtcAlyMSwgcjAsIGxzbCAjMTUNCj4gPiAtCWJjYwkuTF9kaXZpZGVf
YjE1DQo+ID4gLQljbXAJcjEsIHIwLCBsc2wgIzE2DQo+ID4gLQliY2MJLkxfZGl2aWRlX2IxNg0K
PiA+IC0JY21wCXIxLCByMCwgbHNsICMxNw0KPiA+IC0JYmNjCS5MX2RpdmlkZV9iMTcNCj4gPiAt
CWNtcAlyMSwgcjAsIGxzbCAjMTgNCj4gPiAtCWJjYwkuTF9kaXZpZGVfYjE4DQo+ID4gLQljbXAJ
cjEsIHIwLCBsc2wgIzE5DQo+ID4gLQliY2MJLkxfZGl2aWRlX2IxOQ0KPiA+IC0JY21wCXIxLCBy
MCwgbHNsICMyMA0KPiA+IC0JYmNjCS5MX2RpdmlkZV9iMjANCj4gPiAtCWNtcAlyMSwgcjAsIGxz
bCAjMjENCj4gPiAtCWJjYwkuTF9kaXZpZGVfYjIxDQo+ID4gLQljbXAJcjEsIHIwLCBsc2wgIzIy
DQo+ID4gLQliY2MJLkxfZGl2aWRlX2IyMg0KPiA+IC0JY21wCXIxLCByMCwgbHNsICMyMw0KPiA+
IC0JYmNjCS5MX2RpdmlkZV9iMjMNCj4gPiAtCWNtcAlyMSwgcjAsIGxzbCAjMjQNCj4gPiAtCWJj
YwkuTF9kaXZpZGVfYjI0DQo+ID4gLQljbXAJcjEsIHIwLCBsc2wgIzI1DQo+ID4gLQliY2MJLkxf
ZGl2aWRlX2IyNQ0KPiA+IC0JY21wCXIxLCByMCwgbHNsICMyNg0KPiA+IC0JYmNjCS5MX2Rpdmlk
ZV9iMjYNCj4gPiAtCWNtcAlyMSwgcjAsIGxzbCAjMjcNCj4gPiAtCWJjYwkuTF9kaXZpZGVfYjI3
DQo+ID4gLQljbXAJcjEsIHIwLCBsc2wgIzI4DQo+ID4gLQliY2MJLkxfZGl2aWRlX2IyOA0KPiA+
IC0JY21wCXIxLCByMCwgbHNsICMyOQ0KPiA+IC0JYmNjCS5MX2RpdmlkZV9iMjkNCj4gPiAtCWNt
cAlyMSwgcjAsIGxzbCAjMzANCj4gPiAtCWJjYwkuTF9kaXZpZGVfYjMwDQo+ID4gLS5MX2Rpdmlk
ZV9iMzI6DQo+ID4gLQljbXAJcjEsIHIwLCBsc2wgIzMxDQo+ID4gLQlzdWJocwlyMSwgcjEscjAs
IGxzbCAjMzENCj4gPiAtCWFkZGhzCXIzLCByMyxyMiwgbHNsICMzMQ0KPiA+IC0uTF9kaXZpZGVf
YjMxOg0KPiA+IC0JY21wCXIxLCByMCwgbHNsICMzMA0KPiA+IC0Jc3ViaHMJcjEsIHIxLHIwLCBs
c2wgIzMwDQo+ID4gLQlhZGRocwlyMywgcjMscjIsIGxzbCAjMzANCj4gPiAtLkxfZGl2aWRlX2Iz
MDoNCj4gPiAtCWNtcAlyMSwgcjAsIGxzbCAjMjkNCj4gPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNs
ICMyOQ0KPiA+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzI5DQo+ID4gLS5MX2RpdmlkZV9iMjk6
DQo+ID4gLQljbXAJcjEsIHIwLCBsc2wgIzI4DQo+ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAj
MjgNCj4gPiAtCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyOA0KPiA+IC0uTF9kaXZpZGVfYjI4Og0K
PiA+IC0JY21wCXIxLCByMCwgbHNsICMyNw0KPiA+IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzI3
DQo+ID4gLQlhZGRocwlyMywgcjMscjIsIGxzbCAjMjcNCj4gPiAtLkxfZGl2aWRlX2IyNzoNCj4g
PiAtCWNtcAlyMSwgcjAsIGxzbCAjMjYNCj4gPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyNg0K
PiA+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzI2DQo+ID4gLS5MX2RpdmlkZV9iMjY6DQo+ID4g
LQljbXAJcjEsIHIwLCBsc2wgIzI1DQo+ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMjUNCj4g
PiAtCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyNQ0KPiA+IC0uTF9kaXZpZGVfYjI1Og0KPiA+IC0J
Y21wCXIxLCByMCwgbHNsICMyNA0KPiA+IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzI0DQo+ID4g
LQlhZGRocwlyMywgcjMscjIsIGxzbCAjMjQNCj4gPiAtLkxfZGl2aWRlX2IyNDoNCj4gPiAtCWNt
cAlyMSwgcjAsIGxzbCAjMjMNCj4gPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyMw0KPiA+IC0J
YWRkaHMJcjMsIHIzLHIyLCBsc2wgIzIzDQo+ID4gLS5MX2RpdmlkZV9iMjM6DQo+ID4gLQljbXAJ
cjEsIHIwLCBsc2wgIzIyDQo+ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMjINCj4gPiAtCWFk
ZGhzCXIzLCByMyxyMiwgbHNsICMyMg0KPiA+IC0uTF9kaXZpZGVfYjIyOg0KPiA+IC0JY21wCXIx
LCByMCwgbHNsICMyMQ0KPiA+IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzIxDQo+ID4gLQlhZGRo
cwlyMywgcjMscjIsIGxzbCAjMjENCj4gPiAtLkxfZGl2aWRlX2IyMToNCj4gPiAtCWNtcAlyMSwg
cjAsIGxzbCAjMjANCj4gPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyMA0KPiA+IC0JYWRkaHMJ
cjMsIHIzLHIyLCBsc2wgIzIwDQo+ID4gLS5MX2RpdmlkZV9iMjA6DQo+ID4gLQljbXAJcjEsIHIw
LCBsc2wgIzE5DQo+ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTkNCj4gPiAtCWFkZGhzCXIz
LCByMyxyMiwgbHNsICMxOQ0KPiA+IC0uTF9kaXZpZGVfYjE5Og0KPiA+IC0JY21wCXIxLCByMCwg
bHNsICMxOA0KPiA+IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzE4DQo+ID4gLQlhZGRocwlyMywg
cjMscjIsIGxzbCAjMTgNCj4gPiAtLkxfZGl2aWRlX2IxODoNCj4gPiAtCWNtcAlyMSwgcjAsIGxz
bCAjMTcNCj4gPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxNw0KPiA+IC0JYWRkaHMJcjMsIHIz
LHIyLCBsc2wgIzE3DQo+ID4gLS5MX2RpdmlkZV9iMTc6DQo+ID4gLQljbXAJcjEsIHIwLCBsc2wg
IzE2DQo+ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTYNCj4gPiAtCWFkZGhzCXIzLCByMyxy
MiwgbHNsICMxNg0KPiA+IC0uTF9kaXZpZGVfYjE2Og0KPiA+IC0JY21wCXIxLCByMCwgbHNsICMx
NQ0KPiA+IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzE1DQo+ID4gLQlhZGRocwlyMywgcjMscjIs
IGxzbCAjMTUNCj4gPiAtLkxfZGl2aWRlX2IxNToNCj4gPiAtCWNtcAlyMSwgcjAsIGxzbCAjMTQN
Cj4gPiAtCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxNA0KPiA+IC0JYWRkaHMJcjMsIHIzLHIyLCBs
c2wgIzE0DQo+ID4gLS5MX2RpdmlkZV9iMTQ6DQo+ID4gLQljbXAJcjEsIHIwLCBsc2wgIzEzDQo+
ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTMNCj4gPiAtCWFkZGhzCXIzLCByMyxyMiwgbHNs
ICMxMw0KPiA+IC0uTF9kaXZpZGVfYjEzOg0KPiA+IC0JY21wCXIxLCByMCwgbHNsICMxMg0KPiA+
IC0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzEyDQo+ID4gLQlhZGRocwlyMywgcjMscjIsIGxzbCAj
MTINCj4gPiAtLkxfZGl2aWRlX2IxMjoNCj4gPiAtCWNtcAlyMSwgcjAsIGxzbCAjMTENCj4gPiAt
CXN1YmhzCXIxLCByMSxyMCwgbHNsICMxMQ0KPiA+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzEx
DQo+ID4gLS5MX2RpdmlkZV9iMTE6DQo+ID4gLQljbXAJcjEsIHIwLCBsc2wgIzEwDQo+ID4gLQlz
dWJocwlyMSwgcjEscjAsIGxzbCAjMTANCj4gPiAtCWFkZGhzCXIzLCByMyxyMiwgbHNsICMxMA0K
PiA+IC0uTF9kaXZpZGVfYjEwOg0KPiA+IC0JY21wCXIxLCByMCwgbHNsICM5DQo+ID4gLQlzdWJo
cwlyMSwgcjEscjAsIGxzbCAjOQ0KPiA+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzkNCj4gPiAt
LkxfZGl2aWRlX2I5Og0KPiA+IC0JY21wCXIxLCByMCwgbHNsICM4DQo+ID4gLQlzdWJocwlyMSwg
cjEscjAsIGxzbCAjOA0KPiA+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzgNCj4gPiAtLkxfZGl2
aWRlX2I4Og0KPiA+IC0JY21wCXIxLCByMCwgbHNsICM3DQo+ID4gLQlzdWJocwlyMSwgcjEscjAs
IGxzbCAjNw0KPiA+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzcNCj4gPiAtLkxfZGl2aWRlX2I3
Og0KPiA+IC0JY21wCXIxLCByMCwgbHNsICM2DQo+ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAj
Ng0KPiA+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzYNCj4gPiAtLkxfZGl2aWRlX2I2Og0KPiA+
IC0JY21wCXIxLCByMCwgbHNsICM1DQo+ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjNQ0KPiA+
IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzUNCj4gPiAtLkxfZGl2aWRlX2I1Og0KPiA+IC0JY21w
CXIxLCByMCwgbHNsICM0DQo+ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjNA0KPiA+IC0JYWRk
aHMJcjMsIHIzLHIyLCBsc2wgIzQNCj4gPiAtLkxfZGl2aWRlX2I0Og0KPiA+IC0JY21wCXIxLCBy
MCwgbHNsICMzDQo+ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMw0KPiA+IC0JYWRkaHMJcjMs
IHIzLHIyLCBsc2wgIzMNCj4gPiAtLkxfZGl2aWRlX2IzOg0KPiA+IC0JY21wCXIxLCByMCwgbHNs
ICMyDQo+ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMg0KPiA+IC0JYWRkaHMJcjMsIHIzLHIy
LCBsc2wgIzINCj4gPiAtLkxfZGl2aWRlX2IyOg0KPiA+IC0JY21wCXIxLCByMCwgbHNsICMxDQo+
ID4gLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMQ0KPiA+IC0JYWRkaHMJcjMsIHIzLHIyLCBsc2wg
IzENCj4gPiAtLkxfZGl2aWRlX2IxOg0KPiA+IC0JY21wCXIxLCByMA0KPiA+IC0Jc3ViaHMJcjEs
IHIxLCByMA0KPiA+IC0JYWRkaHMJcjMsIHIzLCByMg0KPiA+IC0uTF9kaXZpZGVfYjA6DQo+ID4g
LQ0KPiA+IC0JdHN0CWlwLCAjMHgyMDAwMDAwMA0KPiA+IC0JYm5lCS5MX3VkaXZpZGVfbDENCj4g
PiAtCW1vdglyMCwgcjMNCj4gPiAtCWNtcAlpcCwgIzANCj4gPiAtCXJzYm1pCXIxLCByMSwgIzAN
Cj4gPiAtCW1vdnMJaXAsIGlwLCBsc2wgIzENCj4gPiAtCWJpY21pCXIwLCByMCwgIzB4ODAwMDAw
MDAJLyogRml4IGluY2FzZSB3ZSBkaXZpZGVkIDB4ODAwMDAwMDAgKi8NCj4gPiAtCXJzYm1pCXIw
LCByMCwgIzANCj4gPiAtCW1vdglwYywgbHINCj4gPiAtDQo+ID4gLS5MX3VkaXZpZGVfbDE6DQo+
ID4gLQl0c3QJaXAsICMweDEwMDAwMDAwDQo+ID4gLQltb3YJcjEsIHIxLCBsc2wgIzENCj4gPiAt
CW9ycm5lCXIxLCByMSwgIzENCj4gPiAtCW1vdglyMywgcjMsIGxzbCAjMQ0KPiA+IC0JY21wCXIx
LCByMA0KPiA+IC0Jc3ViaHMJcjEsIHIxLCByMA0KPiA+IC0JYWRkaHMJcjMsIHIzLCByMg0KPiA+
IC0JbW92CXIwLCByMw0KPiA+IC0JbW92CXBjLCBscg0KPiA+IC1FTkQoX19hZWFiaV9pZGl2KQ0K
PiA+IC1FTkQoX19hZWFiaV9pZGl2bW9kKQ0KPiA+IC1FTkQoX19kaXZzaTMpDQo+ID4gLQ0KPiA+
IGRpZmYgLS1naXQgYS9hcmNoL2FybS9sZGl2bW9kLlMgYi9hcmNoL2FybS9sZGl2bW9kLlMNCj4g
PiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAzYzMwODNiLi4wMDAwMDAwDQo+
ID4gLS0tIGEvYXJjaC9hcm0vbGRpdm1vZC5TDQo+ID4gKysrIC9kZXYvbnVsbA0KPiA+IEBAIC0x
LDY4ICswLDAgQEANCj4gPiAtLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVz
ZSAqLw0KPiA+IC0vKg0KPiA+IC0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQW5kcmV3IFR1cm5lcg0K
PiA+IC0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLg0KPiA+IC0gKg0KPiA+IC0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQN
Cj4gPiAtICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zDQo+ID4gLSAqIGFyZSBtZXQ6DQo+ID4gLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0DQo+
ID4gLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4NCj4gPiAtICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiAtICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQ0KPiA+IC0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLg0KPiA+IC0gKg0KPiA+IC0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
DQo+ID4gLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQ0KPiA+IC0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVINCj4gUFVSUE9TRQ0KPiA+
IC0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRQ0KPiA+IC0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1INCj4gQ09OU0VRVUVOVElBTA0KPiA+IC0g
KiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUw0KPiA+IC0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikNCj4gPiAtICogSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LA0KPiBTVFJJQ1QNCj4gPiAtICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZDQo+IFdBWQ0KPiA+IC0gKiBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GDQo+ID4gLSAqIFNVQ0ggREFNQUdFLg0KPiA+IC0gKg0KPiA+IC0gKi8NCj4gPiAtDQo+
ID4gLSNkZWZpbmUgRU5UUllfTlAoc3ltYm9sKSBcDQo+ID4gLQkuZ2xvYmwgc3ltYm9sOwlcDQo+
ID4gLQlzeW1ib2w6DQo+ID4gLQ0KPiA+IC0jZGVmaW5lIEVORChzeW1ib2wpDQo+ID4gLQ0KPiA+
IC0vKg0KPiA+IC0gKiBUaGVzZSBjYWxjdWxhdGU6DQo+ID4gLSAqIHEgPSBuIC8gbQ0KPiA+IC0g
KiBXaXRoIGEgcmVtYWluZXIgci4NCj4gPiAtICoNCj4gPiAtICogVGhleSB0YWtlIG4gaW4ge3Iw
LCByMX0gYW5kIG0gaW4ge3IyLCByM30gdGhlbiBwYXNzIHRoZW0gaW50byB0aGUNCj4gPiAtICog
aGVscGVyIGZ1bmN0aW9uLiBUaGUgaGVwbGVyIGZ1bmN0aW9ucyByZXR1cm4gcSBpbiB7cjAsIHIx
fSBhcw0KPiA+IC0gKiByZXF1aXJlZCBieSB0aGUgQVBJIHNwZWMgaG93ZXZlciByIGlzIHJldHVy
bmVkIG9uIHRoZSBzdGFjay4gVGhlDQo+ID4gLSAqIEFCSSByZXF1aXJlZCB1cyB0byByZXR1cm4g
ciBpbiB7cjIsIHIzfS4NCj4gPiAtICoNCj4gPiAtICogV2UgbmVlZCB0byBhbGxvY2F0ZSA4IGJ5
dGVzIG9uIHRoZSBzdGFjayB0byBzdG9yZSByLCB0aGUgbGluaw0KPiA+IC0gKiByZWdpc3Rlciwg
YW5kIGEgcG9pbnRlciB0byB0aGUgc3BhY2Ugd2hlcmUgdGhlIGhlbHBlciBmdW5jdGlvbg0KPiA+
IC0gKiB3aWxsIHdyaXRlIHIgdG8uIEFmdGVyIHJldHVybmluZyBmcm9tIHRoZSBoZWxwZXIgZnVp
bmN0aW9uIHdlIGxvYWQNCj4gPiAtICogdGhlIG9sZCBsaW5rIHJlZ2lzdGVyIGFuZCByIGZyb20g
dGhlIHN0YWNrIGFuZCByZXR1cm4uDQo+ID4gLSAqLw0KPiA+IC1FTlRSWV9OUChfX2FlYWJpX2xk
aXZtb2QpDQo+ID4gLQlzdWIJc3AsIHNwLCAjOAkvKiBTcGFjZSBmb3IgdGhlIHJlbWFpbmRlciAq
Lw0KPiA+IC0Jc3RtZmQJc3AhLCB7c3AsIGxyfQkvKiBTYXZlIGEgcG9pbnRlciB0byB0aGUgYWJv
dmUgc3BhY2UgYW5kIGxyICovDQo+ID4gLQlibAlfX2tlcm5fbGRpdm1vZA0KPiA+IC0JbGRyCWxy
LCBbc3AsICM0XQkvKiBSZXN0b3JlIGxyICovDQo+ID4gLQlhZGQJc3AsIHNwLCAjOAkvKiBNb3Zl
IHNwIHRvIHRoZSByZW1haW5kZXIgdmFsdWUgKi8NCj4gPiAtCWxkbWZkCXNwISwge3IyLCByM30J
LyogTG9hZCB0aGUgcmVtYWluZGVyICovDQo+ID4gLQltb3YJcGMsIGxyDQo+ID4gLUVORChfX2Fl
YWJpX2xkaXZtb2QpDQo+ID4gLQ0KPiA+IC1FTlRSWV9OUChfX2FlYWJpX3VsZGl2bW9kKQ0KPiA+
IC0Jc3ViCXNwLCBzcCwgIzgJLyogU3BhY2UgZm9yIHRoZSByZW1haW5kZXIgKi8NCj4gPiAtCXN0
bWZkCXNwISwge3NwLCBscn0JLyogU2F2ZSBhIHBvaW50ZXIgdG8gdGhlIGFib3ZlIHNwYWNlIGFu
ZCBsciAqLw0KPiA+IC0JYmwJX19xZGl2cmVtDQo+ID4gLQlsZHIJbHIsIFtzcCwgIzRdCS8qIFJl
c3RvcmUgbHIgKi8NCj4gPiAtCWFkZAlzcCwgc3AsICM4CS8qIE1vdmUgc3AgdG8gdGhlIHJlbWFp
bmRlciB2YWx1ZSAqLw0KPiA+IC0JbGRtZmQJc3AhLCB7cjIsIHIzfQkvKiBMb2FkIHRoZSByZW1h
aW5kZXIgKi8NCj4gPiAtCW1vdglwYywgbHINCj4gPiAtRU5EKF9fYWVhYmlfdWxkaXZtb2QpDQo+
ID4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2xkaXZtb2RfaGVscGVyLmMgYi9hcmNoL2FybS9sZGl2
bW9kX2hlbHBlci5jDQo+ID4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDk4
NTIzZS4uMDAwMDAwMA0KPiA+IC0tLSBhL2FyY2gvYXJtL2xkaXZtb2RfaGVscGVyLmMNCj4gPiAr
KysgL2Rldi9udWxsDQo+ID4gQEAgLTEsNjcgKzAsMCBAQA0KPiA+IC0vKiBTUERYLUxpY2Vuc2Ut
SWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovDQo+ID4gLS8qDQo+ID4gLSAqIENvcHlyaWdodCAo
QykgMjAxMiBBbmRyZXcgVHVybmVyDQo+ID4gLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQo+ID4g
LSAqDQo+ID4gLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dA0KPiA+IC0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMNCj4gPiAtICogYXJlIG1l
dDoNCj4gPiAtICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiAtICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLg0KPiA+IC0gKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dA0KPiA+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlDQo+ID4gLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uDQo+ID4gLSAq
DQo+ID4gLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQNCj4gPiAtICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFDQo+ID4gLSAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUg0KPiBQVVJQT1NFDQo+ID4gLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFDQo+ID4gLSAqIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUg0K
PiBDT05TRVFVRU5USUFMDQo+ID4gLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTDQo+ID4gLSAqIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKQ0KPiA+IC0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsDQo+IFNUUklDVA0KPiA+IC0gKiBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkN
Cj4gV0FZDQo+ID4gLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YNCj4gPiAtICogU1VDSCBEQU1BR0UuDQo+ID4g
LSAqDQo+ID4gLSAqLw0KPiA+IC0NCj4gPiAtI2luY2x1ZGUgPHVrL2FyY2gvdHlwZXMuaD4NCj4g
PiAtDQo+ID4gLV9fdTY0IF9fcWRpdnJlbShfX3U2NCB1LCBfX3U2NCB2LCBfX3U2NCAqcmVtKTsN
Cj4gPiAtDQo+ID4gLSNpZm5kZWYgSEFWRV9MSUJDDQo+ID4gLV9fczY0IF9fZGl2ZGkzKF9fczY0
IGEsIF9fczY0IGIpDQo+ID4gLXsNCj4gPiAtCV9fdTY0IHVhLCB1YiwgdXE7DQo+ID4gLQlpbnQg
bmVnOw0KPiA+IC0NCj4gPiAtCWlmIChhIDwgMCkNCj4gPiAtCQl1YSA9IC0oX191NjQpYSwgbmVn
ID0gMTsNCj4gPiAtCWVsc2UNCj4gPiAtCQl1YSA9IGEsIG5lZyA9IDA7DQo+ID4gLQlpZiAoYiA8
IDApDQo+ID4gLQkJdWIgPSAtKF9fdTY0KWIsIG5lZyBePSAxOw0KPiA+IC0JZWxzZQ0KPiA+IC0J
CXViID0gYjsNCj4gPiAtCXVxID0gX19xZGl2cmVtKHVhLCB1YiwgKF9fdTY0ICopMCk7DQo+ID4g
LQlyZXR1cm4gbmVnID8gLXVxIDogdXE7DQo+ID4gLX0NCj4gPiAtI2VuZGlmDQo+ID4gLQ0KPiA+
IC0vKg0KPiA+IC0gKiBIZWxwZXIgZm9yIF9fYWVhYmlfbGRpdm1vZC4NCj4gPiAtICogVE9ETzog
X19kaXZkaTMgY2FsbHMgX19xZGl2cmVtLiBXZSBzaG91bGQgZG8gdGhlIHNhbWUgYW5kIHVzZSB0
aGUNCj4gPiAtICogcmVtYWluZGVyIHZhbHVlIHJhdGhlciB0aGFuIHJlLWNhbGN1bGF0aW5nIGl0
Lg0KPiA+IC0gKi8NCj4gPiAtbG9uZyBsb25nIF9fa2Vybl9sZGl2bW9kKGxvbmcgbG9uZywgbG9u
ZyBsb25nLCBsb25nIGxvbmcgKik7DQo+ID4gLQ0KPiA+IC1sb25nIGxvbmcgX19rZXJuX2xkaXZt
b2QobG9uZyBsb25nIG4sIGxvbmcgbG9uZyBtLCBsb25nIGxvbmcgKnJlbSkNCj4gPiAtew0KPiA+
IC0JbG9uZyBsb25nIHE7DQo+ID4gLQ0KPiA+IC0JcSA9IF9fZGl2ZGkzKG4sIG0pOyAvKiBxID0g
biAvIG0gKi8NCj4gPiAtCSpyZW0gPSBuIC0gbSAqIHE7DQo+ID4gLQ0KPiA+IC0JcmV0dXJuIHE7
DQo+ID4gLX0NCj4gPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vcWRpdnJlbS5jIGIvYXJjaC9hcm0v
cWRpdnJlbS5jDQo+ID4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggZTdkMTQ3
MS4uMDAwMDAwMA0KPiA+IC0tLSBhL2FyY2gvYXJtL3FkaXZyZW0uYw0KPiA+ICsrKyAvZGV2L251
bGwNCj4gPiBAQCAtMSwzMjQgKzAsMCBAQA0KPiA+IC0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmll
cjogQlNELTMtQ2xhdXNlICovDQo+ID4gLS8qLQ0KPiA+IC0gKiBDb3B5cmlnaHQgKGMpIDE5OTIs
IDE5OTMNCj4gPiAtICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5p
YS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQo+ID4gLSAqDQo+ID4gLSAqIFRoaXMgc29mdHdhcmUg
d2FzIGRldmVsb3BlZCBieSB0aGUgQ29tcHV0ZXIgU3lzdGVtcyBFbmdpbmVlcmluZyBncm91cA0K
PiA+IC0gKiBhdCBMYXdyZW5jZSBCZXJrZWxleSBMYWJvcmF0b3J5IHVuZGVyIERBUlBBIGNvbnRy
YWN0IEJHIDkxLTY2IGFuZA0KPiA+IC0gKiBjb250cmlidXRlZCB0byBCZXJrZWxleS4NCj4gPiAt
ICoNCj4gPiAtICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0DQo+ID4gLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucw0KPiA+IC0gKiBhcmUgbWV0
Og0KPiA+IC0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodA0KPiA+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuDQo+ID4gLSAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
DQo+ID4gLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUNCj4gPiAtICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCj4gPiAtICog
NC4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0
cyBjb250cmlidXRvcnMNCj4gPiAtICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlDQo+ID4gLSAqICAgIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLg0KPiA+IC0gKg0KPiA+IC0gKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMg
YGBBUyBJUycnIEFORA0KPiA+IC0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUNCj4gPiAtICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSDQo+
IFBVUlBPU0UNCj4gPiAtICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
UkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFDQo+ID4gLSAqIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUg0KPiBDT05TRVFV
RU5USUFMDQo+ID4gLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTDQo+ID4gLSAqIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQ0KPiA+
IC0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsDQo+IFNUUklDVA0KPiA+IC0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkNCj4gV0FZDQo+
ID4gLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YNCj4gPiAtICogU1VDSCBEQU1BR0UuDQo+ID4gLSAqLw0KPiA+
IC0NCj4gPiAtI2luY2x1ZGUgPHVrL2FyY2gvdHlwZXMuaD4NCj4gPiAtI2luY2x1ZGUgPHVrL2Fy
Y2gvbGltaXRzLmg+DQo+ID4gLQ0KPiA+IC0vKg0KPiA+IC0gKiBNdWx0aXByZWNpc2lvbiBkaXZp
ZGUuICBUaGlzIGFsZ29yaXRobSBpcyBmcm9tIEtudXRoIHZvbC4gMiAoMm5kIGVkKSwNCj4gPiAt
ICogc2VjdGlvbiA0LjMuMSwgcHAuIDI1Ny0tMjU5Lg0KPiA+IC0gKi8NCj4gPiAtDQo+ID4gLS8q
DQo+ID4gLSAqIEZyb20NCj4gPiAtICoJQCgjKXF1YWQuaAk4LjEgKEJlcmtlbGV5KSA2LzQvOTMN
Cj4gPiAtICovDQo+ID4gLQ0KPiA+IC0jaWZkZWYgX19CSUdfRU5ESUFODQo+ID4gLSNkZWZpbmUg
X1FVQURfSElHSFdPUkQgMA0KPiA+IC0jZGVmaW5lIF9RVUFEX0xPV1dPUkQgMQ0KPiA+IC0jZWxz
ZSAvKiBfX0xJVFRMRV9FTkRJQU4gKi8NCj4gPiAtI2RlZmluZSBfUVVBRF9ISUdIV09SRCAxDQo+
ID4gLSNkZWZpbmUgX1FVQURfTE9XV09SRCAwDQo+ID4gLSNlbmRpZg0KPiA+IC0NCj4gPiAtLyoN
Cj4gPiAtICogRGVmaW5lIGhpZ2ggYW5kIGxvdyBsb25nd29yZHMuDQo+ID4gLSAqLw0KPiA+IC0j
ZGVmaW5lIFFVQURIICAgICAgICAgICAgICAgX1FVQURfSElHSFdPUkQNCj4gPiAtI2RlZmluZSBR
VUFETCAgICAgICAgICAgICAgIF9RVUFEX0xPV1dPUkQNCj4gPiAtDQo+ID4gLS8qDQo+ID4gLSAq
IFRvdGFsIG51bWJlciBvZiBiaXRzIGluIGEgcXVhZF90IGFuZCBpbiB0aGUgcGllY2VzIHRoYXQg
bWFrZSBpdCB1cC4NCj4gPiAtICogVGhlc2UgYXJlIHVzZWQgZm9yIHNoaWZ0aW5nLCBhbmQgYWxz
byBiZWxvdyBmb3IgaGFsZndvcmQgZXh0cmFjdGlvbg0KPiA+IC0gKiBhbmQgYXNzZW1ibHkuDQo+
ID4gLSAqLw0KPiA+IC0jZGVmaW5lIENIQVJfQklUICAgICAgICA4ICAgICAgICAgICAgICAgLyog
bnVtYmVyIG9mIGJpdHMgaW4gYSBjaGFyICovDQo+ID4gLSNkZWZpbmUgUVVBRF9CSVRTICAgICAg
IChzaXplb2YoX19zNjQpICogQ0hBUl9CSVQpDQo+ID4gLSNkZWZpbmUgTE9OR19CSVRTICAgICAg
IChzaXplb2YobG9uZykgKiBDSEFSX0JJVCkNCj4gPiAtI2RlZmluZSBIQUxGX0JJVFMgICAgICAg
KHNpemVvZihsb25nKSAqIENIQVJfQklUIC8gMikNCj4gPiAtDQo+ID4gLSNkZWZpbmUgRElHSVRf
QkFTRSAoMSA8PCBIQUxGX0JJVFMpIC8qIGRpZ2l0IGJhc2UgKi8NCj4gPiAtLyoNCj4gPiAtICog
RXh0cmFjdCBoaWdoIGFuZCBsb3cgc2hvcnR3b3JkcyBmcm9tIGxvbmd3b3JkLCBhbmQgbW92ZSBs
b3cgc2hvcnR3b3JkIG9mDQo+ID4gLSAqIGxvbmd3b3JkIHRvIHVwcGVyIGhhbGYgb2YgbG9uZywg
aS5lLiwgcHJvZHVjZSB0aGUgdXBwZXIgbG9uZ3dvcmQgb2YNCj4gPiAtICogKChxdWFkX3QpKHgp
IDw8IChudW1iZXJfb2ZfYml0c19pbl9sb25nLzIpKS4gIChgeCcgbXVzdCBhY3R1YWxseSBiZQ0K
PiB1X2xvbmcuKQ0KPiA+IC0gKg0KPiA+IC0gKiBUaGVzZSBhcmUgdXNlZCBpbiB0aGUgbXVsdGlw
bHkgY29kZSwgdG8gc3BsaXQgYSBsb25nd29yZCBpbnRvIHVwcGVyDQo+ID4gLSAqIGFuZCBsb3dl
ciBoYWx2ZXMsIGFuZCB0byByZWFzc2VtYmxlIGEgcHJvZHVjdCBhcyBhIHF1YWRfdCwgc2hpZnRl
ZCBsZWZ0DQo+ID4gLSAqIChzaXplb2YobG9uZykqQ0hBUl9CSVQvMikuDQo+ID4gLSAqLw0KPiA+
IC0jZGVmaW5lIEhIQUxGKHgpICAgICAgICAoKHgpID4+IEhBTEZfQklUUykNCj4gPiAtI2RlZmlu
ZSBMSEFMRih4KSAgICAgICAgKCh4KSAmICgoMSA8PCBIQUxGX0JJVFMpIC0gMSkpDQo+ID4gLSNk
ZWZpbmUgTEhVUCh4KSAgICAgICAgICgoeCkgPDwgSEFMRl9CSVRTKQ0KPiA+IC0NCj4gPiAtI2Rl
ZmluZSBDT01CSU5FKGEsIGIpICgoKHVuc2lnbmVkIGxvbmcpKGEpIDw8IEhBTEZfQklUUykgfCAo
YikpDQo+ID4gLQ0KPiA+IC0vKg0KPiA+IC0gKiBEZXBlbmRpbmcgb24gdGhlIGRlc2lyZWQgb3Bl
cmF0aW9uLCB3ZSB2aWV3IGEgYGxvbmcgbG9uZycgKGFrYSBxdWFkX3QpDQo+IGluDQo+ID4gLSAq
IG9uZSBvciBtb3JlIG9mIHRoZSBmb2xsb3dpbmcgZm9ybWF0cy4NCj4gPiAtICovDQo+ID4gLXVu
aW9uIHV1IHsNCj4gPiAtCV9fczY0ICAgICAgICAgICBxOyAgICAgICAgICAgICAvKiBhcyBhIChz
aWduZWQpIHF1YWQgKi8NCj4gPiAtCV9fczY0ICAgICAgICAgIHVxOyAgICAgICAgICAgICAvKiBh
cyBhbiB1bnNpZ25lZCBxdWFkICovDQo+ID4gLQlsb25nICAgICAgICAgICBzbFsyXTsgICAgICAg
ICAgLyogYXMgdHdvIHNpZ25lZCBsb25ncyAqLw0KPiA+IC0JdW5zaWduZWQgbG9uZyAgdWxbMl07
ICAgICAgICAgIC8qIGFzIHR3byB1bnNpZ25lZCBsb25ncyAqLw0KPiA+IC19Ow0KPiA+IC0NCj4g
PiAtI2RlZmluZQlCCSgxIDw8IEhBTEZfQklUUykJLyogZGlnaXQgYmFzZSAqLw0KPiA+IC0NCj4g
PiAtLyogc2VsZWN0IGEgdHlwZSBmb3IgZGlnaXRzIGluIGJhc2UgQjogdXNlIHVuc2lnbmVkIHNo
b3J0IGlmIHRoZXkgZml0ICovDQo+ID4gLSNpZiBfX1VMX01BWCA9PSAweGZmZmZmZmZmICYmIF9f
VVNfTUFYID49IDB4ZmZmZg0KPiA+IC10eXBlZGVmIHVuc2lnbmVkIHNob3J0IGRpZ2l0Ow0KPiA+
IC0jZWxzZQ0KPiA+IC10eXBlZGVmIHVuc2lnbmVkIGxvbmcgZGlnaXQ7DQo+ID4gLSNlbmRpZg0K
PiA+IC0NCj4gPiAtLyoNCj4gPiAtICogU2hpZnQgcFswXS4ucFtsZW5dIGxlZnQgYHNoJyBiaXRz
LCBpZ25vcmluZyBhbnkgYml0cyB0aGF0DQo+ID4gLSAqIGBmYWxsIG91dCcgdGhlIGxlZnQgKHRo
ZXJlIG5ldmVyIHdpbGwgYmUgYW55IHN1Y2ggYW55d2F5KS4NCj4gPiAtICogV2UgbWF5IGFzc3Vt
ZSBsZW4gPj0gMC4gIE5PVEUgVEhBVCBUSElTIFdSSVRFUyBsZW4rMSBESUdJVFMuDQo+ID4gLSAq
Lw0KPiA+IC1zdGF0aWMgdm9pZCBfX3NobChyZWdpc3RlciBkaWdpdCAqcCwgcmVnaXN0ZXIgaW50
IGxlbiwgcmVnaXN0ZXIgaW50IHNoKQ0KPiA+IC17DQo+ID4gLQlyZWdpc3RlciBpbnQgaTsNCj4g
PiAtDQo+ID4gLQlmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspDQo+ID4gLQkJcFtpXSA9IExIQUxG
KHBbaV0gPDwgc2gpIHwgKHBbaSArIDFdID4+IChIQUxGX0JJVFMgLSBzaCkpOw0KPiA+IC0JcFtp
XSA9IExIQUxGKHBbaV0gPDwgc2gpOw0KPiA+IC19DQo+ID4gLQ0KPiA+IC0vKg0KPiA+IC0gKiBf
X3FkaXZyZW0odSwgdiwgcmVtKSByZXR1cm5zIHUvdiBhbmQsIG9wdGlvbmFsbHksIHNldHMgKnJl
bSB0byB1JXYuDQo+ID4gLSAqDQo+ID4gLSAqIFdlIGRvIHRoaXMgaW4gYmFzZSAyLXN1cC1IQUxG
X0JJVFMsIHNvIHRoYXQgYWxsIGludGVybWVkaWF0ZSBwcm9kdWN0cw0KPiA+IC0gKiBmaXQgd2l0
aGluIHVfbG9uZy4gIEFzIGEgY29uc2VxdWVuY2UsIHRoZSBtYXhpbXVtIGxlbmd0aCBkaXZpZGVu
ZCBhbmQNCj4gPiAtICogZGl2aXNvciBhcmUgNCBgZGlnaXRzJyBpbiB0aGlzIGJhc2UgKHRoZXkg
YXJlIHNob3J0ZXIgaWYgdGhleSBoYXZlDQo+ID4gLSAqIGxlYWRpbmcgemVyb3MpLg0KPiA+IC0g
Ki8NCj4gPiAtX191NjQgX19xZGl2cmVtKF9fdTY0IHVxLCBfX3U2NCB2cSwgX191NjQgKmFycSkN
Cj4gPiAtew0KPiA+IC0JdW5pb24gdXUgdG1wOw0KPiA+IC0JZGlnaXQgKnUsICp2LCAqcTsNCj4g
PiAtCXJlZ2lzdGVyIGRpZ2l0IHYxLCB2MjsNCj4gPiAtCXVuc2lnbmVkIGxvbmcgcWhhdCwgcmhh
dCwgdDsNCj4gPiAtCWludCBtLCBuLCBkLCBqLCBpOw0KPiA+IC0JZGlnaXQgdXNwYWNlWzVdLCB2
c3BhY2VbNV0sIHFzcGFjZVs1XTsNCj4gPiAtDQo+ID4gLQkvKg0KPiA+IC0JICogVGFrZSBjYXJl
IG9mIHNwZWNpYWwgY2FzZXM6IGRpdmlkZSBieSB6ZXJvLCBhbmQgdSA8IHYuDQo+ID4gLQkgKi8N
Cj4gPiAtCWlmICh2cSA9PSAwKSB7DQo+ID4gLQkJLyogZGl2aWRlIGJ5IHplcm8uICovDQo+ID4g
LQkJc3RhdGljIHZvbGF0aWxlIGNvbnN0IHVuc2lnbmVkIGludCB6ZXJvID0gMDsNCj4gPiAtDQo+
ID4gLQkJdG1wLnVsW1FVQURIXSA9IHRtcC51bFtRVUFETF0gPSAxIC8gemVybzsNCj4gPiAtCQlp
ZiAoYXJxKQ0KPiA+IC0JCQkqYXJxID0gdXE7DQo+ID4gLQkJcmV0dXJuIHRtcC5xOw0KPiA+IC0J
fQ0KPiA+IC0JaWYgKHVxIDwgdnEpIHsNCj4gPiAtCQlpZiAoYXJxKQ0KPiA+IC0JCQkqYXJxID0g
dXE7DQo+ID4gLQkJcmV0dXJuIDA7DQo+ID4gLQl9DQo+ID4gLQl1ID0gJnVzcGFjZVswXTsNCj4g
PiAtCXYgPSAmdnNwYWNlWzBdOw0KPiA+IC0JcSA9ICZxc3BhY2VbMF07DQo+ID4gLQ0KPiA+IC0J
LyoNCj4gPiAtCSAqIEJyZWFrIGRpdmlkZW5kIGFuZCBkaXZpc29yIGludG8gZGlnaXRzIGluIGJh
c2UgQiwgdGhlbg0KPiA+IC0JICogY291bnQgbGVhZGluZyB6ZXJvcyB0byBkZXRlcm1pbmUgbSBh
bmQgbi4gIFdoZW4gZG9uZSwgd2UNCj4gPiAtCSAqIHdpbGwgaGF2ZToNCj4gPiAtCSAqCXUgPSAo
dVsxXXVbMl0uLi51W20rbl0pIHN1YiBCDQo+ID4gLQkgKgl2ID0gKHZbMV12WzJdLi4udltuXSkg
c3ViIEINCj4gPiAtCSAqCXZbMV0gIT0gMA0KPiA+IC0JICoJMSA8IG4gPD0gNCAoaWYgbiA9IDEs
IHdlIHVzZSBhIGRpZmZlcmVudCBkaXZpc2lvbiBhbGdvcml0aG0pDQo+ID4gLQkgKgltID49IDAg
KG90aGVyd2lzZSB1IDwgdiwgd2hpY2ggd2UgYWxyZWFkeSBjaGVja2VkKQ0KPiA+IC0JICoJbSAr
IG4gPSA0DQo+ID4gLQkgKiBhbmQgdGh1cw0KPiA+IC0JICoJbSA9IDQgLSBuIDw9IDINCj4gPiAt
CSAqLw0KPiA+IC0JdG1wLnVxID0gdXE7DQo+ID4gLQl1WzBdID0gMDsNCj4gPiAtCXVbMV0gPSBI
SEFMRih0bXAudWxbUVVBREhdKTsNCj4gPiAtCXVbMl0gPSBMSEFMRih0bXAudWxbUVVBREhdKTsN
Cj4gPiAtCXVbM10gPSBISEFMRih0bXAudWxbUVVBRExdKTsNCj4gPiAtCXVbNF0gPSBMSEFMRih0
bXAudWxbUVVBRExdKTsNCj4gPiAtCXRtcC51cSA9IHZxOw0KPiA+IC0JdlsxXSA9IEhIQUxGKHRt
cC51bFtRVUFESF0pOw0KPiA+IC0JdlsyXSA9IExIQUxGKHRtcC51bFtRVUFESF0pOw0KPiA+IC0J
dlszXSA9IEhIQUxGKHRtcC51bFtRVUFETF0pOw0KPiA+IC0Jdls0XSA9IExIQUxGKHRtcC51bFtR
VUFETF0pOw0KPiA+IC0JZm9yIChuID0gNDsgdlsxXSA9PSAwOyB2KyspIHsNCj4gPiAtCQlpZiAo
LS1uID09IDEpIHsNCj4gPiAtCQkJdW5zaWduZWQgbG9uZyByYmo7IC8qIHIqQit1W2pdIChub3Qg
cm9vdCBib3kgamltKSAqLw0KPiA+IC0JCQlkaWdpdCBxMSwgcTIsIHEzLCBxNDsNCj4gPiAtDQo+
ID4gLQkJCS8qDQo+ID4gLQkJCSAqIENoYW5nZSBvZiBwbGFuLCBwZXIgZXhlcmNpc2UgMTYuDQo+
ID4gLQkJCSAqCXIgPSAwOw0KPiA+IC0JCQkgKglmb3IgaiA9IDEuLjQ6DQo+ID4gLQkJCSAqCQlx
W2pdID0gZmxvb3IoKHIqQiArIHVbal0pIC8gdiksDQo+ID4gLQkJCSAqCQlyID0gKHIqQiArIHVb
al0pICUgdjsNCj4gPiAtCQkJICogV2UgdW5yb2xsIHRoaXMgY29tcGxldGVseSBoZXJlLg0KPiA+
IC0JCQkgKi8NCj4gPiAtCQkJdCA9IHZbMl07CS8qIG5vbnplcm8sIGJ5IGRlZmluaXRpb24gKi8N
Cj4gPiAtCQkJcTEgPSB1WzFdIC8gdDsNCj4gPiAtCQkJcmJqID0gQ09NQklORSh1WzFdICUgdCwg
dVsyXSk7DQo+ID4gLQkJCXEyID0gcmJqIC8gdDsNCj4gPiAtCQkJcmJqID0gQ09NQklORShyYmog
JSB0LCB1WzNdKTsNCj4gPiAtCQkJcTMgPSByYmogLyB0Ow0KPiA+IC0JCQlyYmogPSBDT01CSU5F
KHJiaiAlIHQsIHVbNF0pOw0KPiA+IC0JCQlxNCA9IHJiaiAvIHQ7DQo+ID4gLQkJCWlmIChhcnEp
DQo+ID4gLQkJCQkqYXJxID0gcmJqICUgdDsNCj4gPiAtCQkJdG1wLnVsW1FVQURIXSA9IENPTUJJ
TkUocTEsIHEyKTsNCj4gPiAtCQkJdG1wLnVsW1FVQURMXSA9IENPTUJJTkUocTMsIHE0KTsNCj4g
PiAtCQkJcmV0dXJuIHRtcC5xOw0KPiA+IC0JCX0NCj4gPiAtCX0NCj4gPiAtDQo+ID4gLQkvKg0K
PiA+IC0JICogQnkgYWRqdXN0aW5nIHEgb25jZSB3ZSBkZXRlcm1pbmUgbSwgd2UgY2FuIGd1YXJh
bnRlZSB0aGF0DQo+ID4gLQkgKiB0aGVyZSBpcyBhIGNvbXBsZXRlIGZvdXItZGlnaXQgcXVvdGll
bnQgYXQgJnFzcGFjZVsxXSB3aGVuDQo+ID4gLQkgKiB3ZSBmaW5hbGx5IHN0b3AuDQo+ID4gLQkg
Ki8NCj4gPiAtCWZvciAobSA9IDQgLSBuOyB1WzFdID09IDA7IHUrKykNCj4gPiAtCQltLS07DQo+
ID4gLQlmb3IgKGkgPSA0IC0gbTsgLS1pID49IDA7KQ0KPiA+IC0JCXFbaV0gPSAwOw0KPiA+IC0J
cSArPSA0IC0gbTsNCj4gPiAtDQo+ID4gLQkvKg0KPiA+IC0JICogSGVyZSB3ZSBydW4gUHJvZ3Jh
bSBELCB0cmFuc2xhdGVkIGZyb20gTUlYIHRvIEMgYW5kIGFjcXVpcmluZw0KPiA+IC0JICogYSBm
ZXcgbWlub3IgY2hhbmdlcy4NCj4gPiAtCSAqDQo+ID4gLQkgKiBEMTogY2hvb3NlIG11bHRpcGxp
ZXIgMSA8PCBkIHRvIGVuc3VyZSB2WzFdID49IEIvMi4NCj4gPiAtCSAqLw0KPiA+IC0JZCA9IDA7
DQo+ID4gLQlmb3IgKHQgPSB2WzFdOyB0IDwgQiAvIDI7IHQgPDw9IDEpDQo+ID4gLQkJZCsrOw0K
PiA+IC0JaWYgKGQgPiAwKSB7DQo+ID4gLQkJX19zaGwoJnVbMF0sIG0gKyBuLCBkKTsJCS8qIHUg
PDw9IGQgKi8NCj4gPiAtCQlfX3NobCgmdlsxXSwgbiAtIDEsIGQpOwkJLyogdiA8PD0gZCAqLw0K
PiA+IC0JfQ0KPiA+IC0JLyoNCj4gPiAtCSAqIEQyOiBqID0gMC4NCj4gPiAtCSAqLw0KPiA+IC0J
aiA9IDA7DQo+ID4gLQl2MSA9IHZbMV07CS8qIGZvciBEMyAtLSBub3RlIHRoYXQgdlsxLi5uXSBh
cmUgY29uc3RhbnQgKi8NCj4gPiAtCXYyID0gdlsyXTsJLyogZm9yIEQzICovDQo+ID4gLQlkbyB7
DQo+ID4gLQkJcmVnaXN0ZXIgZGlnaXQgdWowLCB1ajEsIHVqMjsNCj4gPiAtDQo+ID4gLQkJLyoN
Cj4gPiAtCQkgKiBEMzogQ2FsY3VsYXRlIHFoYXQgKFxecSwgaW4gVGVYIG5vdGF0aW9uKS4NCj4g
PiAtCQkgKiBMZXQgcWhhdCA9IG1pbigodVtqXSpCICsgdVtqKzFdKS92WzFdLCBCLTEpLCBhbmQN
Cj4gPiAtCQkgKiBsZXQgcmhhdCA9ICh1W2pdKkIgKyB1W2orMV0pIG1vZCB2WzFdLg0KPiA+IC0J
CSAqIFdoaWxlIHJoYXQgPCBCIGFuZCB2WzJdKnFoYXQgPiByaGF0KkIrdVtqKzJdLA0KPiA+IC0J
CSAqIGRlY3JlbWVudCBxaGF0IGFuZCBpbmNyZWFzZSByaGF0IGNvcnJlc3BvbmRpbmdseS4NCj4g
PiAtCQkgKiBOb3RlIHRoYXQgaWYgcmhhdCA+PSBCLCB2WzJdKnFoYXQgPCByaGF0KkIuDQo+ID4g
LQkJICovDQo+ID4gLQkJdWowID0gdVtqICsgMF07CS8qIGZvciBEMyBvbmx5IC0tIG5vdGUgdGhh
dCB1W2orLi4uXSBjaGFuZ2UgKi8NCj4gPiAtCQl1ajEgPSB1W2ogKyAxXTsJLyogZm9yIEQzIG9u
bHkgKi8NCj4gPiAtCQl1ajIgPSB1W2ogKyAyXTsJLyogZm9yIEQzIG9ubHkgKi8NCj4gPiAtCQlp
ZiAodWowID09IHYxKSB7DQo+ID4gLQkJCXFoYXQgPSBCOw0KPiA+IC0JCQlyaGF0ID0gdWoxOw0K
PiA+IC0JCQlnb3RvIHFoYXRfdG9vX2JpZzsNCj4gPiAtCQl9IGVsc2Ugew0KPiA+IC0JCQl1bnNp
Z25lZCBsb25nIG5uID0gQ09NQklORSh1ajAsIHVqMSk7DQo+ID4gLQ0KPiA+IC0JCQlxaGF0ID0g
bm4gLyB2MTsNCj4gPiAtCQkJcmhhdCA9IG5uICUgdjE7DQo+ID4gLQkJfQ0KPiA+IC0JCXdoaWxl
ICh2MiAqIHFoYXQgPiBDT01CSU5FKHJoYXQsIHVqMikpIHsNCj4gPiAtcWhhdF90b29fYmlnOg0K
PiA+IC0JCQlxaGF0LS07DQo+ID4gLQkJCWlmICgocmhhdCArPSB2MSkgPj0gQikNCj4gPiAtCQkJ
CWJyZWFrOw0KPiA+IC0JCX0NCj4gPiAtCQkvKg0KPiA+IC0JCSAqIEQ0OiBNdWx0aXBseSBhbmQg
c3VidHJhY3QuDQo+ID4gLQkJICogVGhlIHZhcmlhYmxlIGB0JyBob2xkcyBhbnkgYm9ycm93cyBh
Y3Jvc3MgdGhlIGxvb3AuDQo+ID4gLQkJICogV2Ugc3BsaXQgdGhpcyB1cCBzbyB0aGF0IHdlIGRv
IG5vdCByZXF1aXJlIHZbMF0gPSAwLA0KPiA+IC0JCSAqIGFuZCB0byBlbGltaW5hdGUgYSBmaW5h
bCBzcGVjaWFsIGNhc2UuDQo+ID4gLQkJICovDQo+ID4gLQkJZm9yICh0ID0gMCwgaSA9IG47IGkg
PiAwOyBpLS0pIHsNCj4gPiAtCQkJdCA9IHVbaSArIGpdIC0gdltpXSAqIHFoYXQgLSB0Ow0KPiA+
IC0JCQl1W2kgKyBqXSA9IExIQUxGKHQpOw0KPiA+IC0JCQl0ID0gKEIgLSBISEFMRih0KSkgJiAo
QiAtIDEpOw0KPiA+IC0JCX0NCj4gPiAtCQl0ID0gdVtqXSAtIHQ7DQo+ID4gLQkJdVtqXSA9IExI
QUxGKHQpOw0KPiA+IC0JCS8qDQo+ID4gLQkJICogRDU6IHRlc3QgcmVtYWluZGVyLg0KPiA+IC0J
CSAqIFRoZXJlIGlzIGEgYm9ycm93IGlmIGFuZCBvbmx5IGlmIEhIQUxGKHQpIGlzIG5vbnplcm87
DQo+ID4gLQkJICogaW4gdGhhdCAocmFyZSkgY2FzZSwgcWhhdCB3YXMgdG9vIGxhcmdlIChieSBl
eGFjdGx5IDEpLg0KPiA+IC0JCSAqIEZpeCBpdCBieSBhZGRpbmcgdlsxLi5uXSB0byB1W2ouLmor
bl0uDQo+ID4gLQkJICovDQo+ID4gLQkJaWYgKEhIQUxGKHQpKSB7DQo+ID4gLQkJCXFoYXQtLTsN
Cj4gPiAtCQkJZm9yICh0ID0gMCwgaSA9IG47IGkgPiAwOyBpLS0pIHsgLyogRDY6IGFkZCBiYWNr
LiAqLw0KPiA+IC0JCQkJdCArPSB1W2kgKyBqXSArIHZbaV07DQo+ID4gLQkJCQl1W2kgKyBqXSA9
IExIQUxGKHQpOw0KPiA+IC0JCQkJdCA9IEhIQUxGKHQpOw0KPiA+IC0JCQl9DQo+ID4gLQkJCXVb
al0gPSBMSEFMRih1W2pdICsgdCk7DQo+ID4gLQkJfQ0KPiA+IC0JCXFbal0gPSBxaGF0Ow0KPiA+
IC0JfSB3aGlsZSAoKytqIDw9IG0pOwkJLyogRDc6IGxvb3Agb24gai4gKi8NCj4gPiAtDQo+ID4g
LQkvKg0KPiA+IC0JICogSWYgY2FsbGVyIHdhbnRzIHRoZSByZW1haW5kZXIsIHdlIGhhdmUgdG8g
Y2FsY3VsYXRlIGl0IGFzDQo+ID4gLQkgKiB1W20uLm0rbl0gPj4gZCAodGhpcyBpcyBhdCBtb3N0
IG4gZGlnaXRzIGFuZCB0aHVzIGZpdHMgaW4NCj4gPiAtCSAqIHVbbSsxLi5tK25dLCBidXQgd2Ug
bWF5IG5lZWQgbW9yZSBzb3VyY2UgZGlnaXRzKS4NCj4gPiAtCSAqLw0KPiA+IC0JaWYgKGFycSkg
ew0KPiA+IC0JCWlmIChkKSB7DQo+ID4gLQkJCWZvciAoaSA9IG0gKyBuOyBpID4gbTsgLS1pKQ0K
PiA+IC0JCQkJdVtpXSA9ICh1W2ldID4+IGQpIHwNCj4gPiAtCQkJCSAgICBMSEFMRih1W2kgLSAx
XSA8PCAoSEFMRl9CSVRTIC0gZCkpOw0KPiA+IC0JCQl1W2ldID0gMDsNCj4gPiAtCQl9DQo+ID4g
LQkJdG1wLnVsW1FVQURIXSA9IENPTUJJTkUodXNwYWNlWzFdLCB1c3BhY2VbMl0pOw0KPiA+IC0J
CXRtcC51bFtRVUFETF0gPSBDT01CSU5FKHVzcGFjZVszXSwgdXNwYWNlWzRdKTsNCj4gPiAtCQkq
YXJxID0gdG1wLnE7DQo+ID4gLQl9DQo+ID4gLQ0KPiA+IC0JdG1wLnVsW1FVQURIXSA9IENPTUJJ
TkUocXNwYWNlWzFdLCBxc3BhY2VbMl0pOw0KPiA+IC0JdG1wLnVsW1FVQURMXSA9IENPTUJJTkUo
cXNwYWNlWzNdLCBxc3BhY2VbNF0pOw0KPiA+IC0JcmV0dXJuIHRtcC5xOw0KPiA+IC19DQo+ID4N
Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1k
ZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBz
Oi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 09 08:04:38 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 09 Apr 2018 08:04:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f5Rn3-00023O-TV; Mon, 09 Apr 2018 08:04:37 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=sv3z=g6=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f5Rn2-00023F-86
 for minios-devel@lists.xenproject.org; Mon, 09 Apr 2018 08:04:36 +0000
X-Inumbo-ID: 87f70497-3bcc-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::60d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 87f70497-3bcc-11e8-9728-bc764e045a96;
 Mon, 09 Apr 2018 10:03:47 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=ezdmb1AgmAmBe0A1J/RoggxmGPGzWhUMcCpGOgTt6ww=;
 b=XrombsOyfxM4njNqj7pWRxtsgniQ6qrwEWeLilLP7u0VL+ea1oxh08JXM/FmZHVAgAOpWGcoFnUsKBH6RMArjPvAfxlkkMiD6vlrkx7LMHlGA5nmfQ+gqTWzS73WIK65lQqLxaHROGzr5JK7CXb8I8vMlIRXkiBybzhfSviyJiU=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0234.eurprd08.prod.outlook.com (10.161.61.14) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.609.10; Mon, 9 Apr 2018 08:04:24 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0653.014; Mon, 9 Apr 2018
 08:04:24 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>,
 "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Thread-Topic: [UNIKRAFT PATCH 4/9] build: Move architecture headers to
 family/architecture folder
Thread-Index: AQHTvA9DXJL9KT5ijEOf7Z9wYincu6PxP8aAgAb5RGA=
Date: Mon, 9 Apr 2018 08:04:23 +0000
Message-ID: <DB3PR08MB01074DD7BB8D612DAAE156DE9EBF0@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-5-git-send-email-Wei.Chen@arm.com>
 <79513222-053d-7cfb-29e4-2f1441571eb7@neclab.eu>
In-Reply-To: <79513222-053d-7cfb-29e4-2f1441571eb7@neclab.eu>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0234;
 7:YuF/cgcIDy6fV/umoHUibB+LswNc/Z7WVlWhci4zH5aiEfQ2BC2RdN4NbJupM3AX5uI+gkuze9B64lxQEIC/wuUbkHfELUe6zOECdGsERyirqlK4YPUA4UjwJj6MQQ+v3pBY01/6/QHyR2bVX9L12DS1wdsn1uDSW2PVOHUebLRufVLKyX/deGtJZvHFuYCfmoBNvE/9O4AE/J+rvnpMEp8lTjpNEIJ1Wzu/hjlZg0Jv3RkIBKZ9rqTS9EVCPF/W
x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR;
x-ms-office365-filtering-ht: Tenant
X-MS-Office365-Filtering-Correlation-Id: ff3bfe47-4f99-4e84-2472-08d59df081fe
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0234; 
x-ms-traffictypediagnostic: DB3PR08MB0234:
nodisclaimer: True
x-microsoft-antispam-prvs: <DB3PR08MB0234AD84DD7AD37716325F569EBF0@DB3PR08MB0234.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(180628864354917)(58134797142442);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(3231221)(944501327)(52105095)(93006095)(93001095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123558120)(20161123560045)(20161123562045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0234; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0234; 
x-forefront-prvs: 0637FCE711
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(39850400004)(39380400002)(376002)(396003)(366004)(346002)(189003)(199004)(13464003)(102836004)(4326008)(3280700002)(316002)(6506007)(3660700001)(53546011)(59450400001)(7736002)(186003)(3846002)(305945005)(6116002)(106356001)(97736004)(26005)(74316002)(2906002)(53946003)(53936002)(68736007)(99286004)(2501003)(105586002)(16200700003)(478600001)(11346002)(76176011)(72206003)(55236004)(486006)(446003)(66066001)(6246003)(7696005)(2900100001)(110136005)(476003)(54906003)(14454004)(5250100002)(6436002)(55016002)(86362001)(575784001)(229853002)(25786009)(5660300001)(9686003)(8936002)(81156014)(8676002)(81166006)(33656002)(217873001)(559001)(579004)(569006);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0234;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords;
 MX:1; A:1; LANG:en; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: 0f1pfyE+LM9tgqdtM7CeYdH4RouNhNStqW9FAKQGZ3Q8yewSQnGzCkHIz9h4APvJqFcc1o1PEilCUtmA6TbE07odgH2w7oZeSxTG9bAg2mPWDxyxLNFZNTwnT2gzeJla6lQWuzPIv2wmM7i27wX5L1iv3NWx8PmPn4VCQRV7Gb1fZxkItVWNHyVGzqCB5ew+ZrxC5FFjb1aYWFp9KIqxg/Czsw8avJf3w8VoEuC+RA6raXsnZXm+W87TVo7bVnHT2VntwMd0iGwpaxZy0TOxGIR24owBskExR35HAAlYAUDCFAE9JnaENKyGPa/UQUjZMy8NJ3iHSB8FYJ5biUQLPXJljqEGyuL9m/gXx08VunWgWYWlyBEWhesFUc2471tMq/VrLwtm5tsTneJ3vQd4iw2uoDXPba8EjEpXg0KvAHQ=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ff3bfe47-4f99-4e84-2472-08d59df081fe
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2018 08:04:23.9546 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0234
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 4/9] build: Move architecture
 headers to family/architecture folder
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: Shijie Huang <Shijie.Huang@arm.com>, Kaly Xin <Kaly.Xin@arm.com>,
 nd <nd@arm.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogU2ltb24g
S3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+DQo+IFNlbnQ6IDIwMTjlubQ05pyINeaX
pSA1OjI5DQo+IFRvOiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT47IG1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBDYzogU2hpamllIEh1YW5nIDxTaGlqaWUuSHVhbmdAYXJt
LmNvbT47IEthbHkgWGluIDxLYWx5LlhpbkBhcm0uY29tPjsgbmQNCj4gPG5kQGFybS5jb20+DQo+
IFN1YmplY3Q6IFJlOiBbVU5JS1JBRlQgUEFUQ0ggNC85XSBidWlsZDogTW92ZSBhcmNoaXRlY3R1
cmUgaGVhZGVycyB0bw0KPiBmYW1pbHkvYXJjaGl0ZWN0dXJlIGZvbGRlcg0KPiANCj4gSSB3b3Vs
ZCBwcmVmZXIgYSBkZXNjcmlwdGlvbiB0aGF0IHNheXMgdGhhdCB0aGlzIHBhdGNoIHJlZmxlY3Rz
IHRoZSBDUFUNCj4gZmFtaWx5IHNjaGVtZSBhbHNvIHRvIHRoZSBVbmlrcmFmdHMgYmFzZSBpbmNs
dWRlIGZvbGRlci4NCj4gDQoNCk9rLg0KSSB3b3VsZCBjb25zaWRlciB0byBpbXByb3ZlIHRoaXMg
ZGVzY3JpcHRpb24gaW4gdjIuDQoNCj4gT24gMTUuMDMuMjAxOCAwNDozOSwgV2VpIENoZW4gd3Jv
dGU6DQo+ID4gQXMgd2UgaGF2ZSBpbnRyb2R1Y2VkIHRoZSBVS19GQU1JTFkgaW4gcHJldmlvdXMg
cGF0Y2guIFdlIGhhdmUgdG8gcGxhY2UNCj4gPiB0aGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllZCBo
ZWFkZXJzIHRvIGFyY2gvZmFtaWx5LzxhY3R1YWwgYXJjaGl0ZWN0dXJlPjoNCj4gPiB1bmlrcmFm
dC9pbmNsdWRlL3VrL2FyY2gtLS0tYXJtLS0tLWFybTMyDQo+ID4gICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgICAgfC0tLS0tYXJtNjQNCj4gPiAgICAgICAgICAgICAgICAgICAgICAgIHwNCj4g
PiAgICAgICAgICAgICAgICAgICAgICAgIHwtLS0tLXg4Ni0tLS14ODYNCj4gPiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8LS0tLS14ODZfNjQNCj4gPiBBbmQsIGJlY2F1c2Ugb2YgYXJj
aC8qLmggYXJlIHdyYXBwZXJzIG9mIGFjdHVhbCBhcmNoaXRlY3R1cmUgaGVhZGVycywgd2UNCj4g
PiBoYXZlIHRvIG1vZGlmeSB0aGVzZSBoZWFkZXJzIHRvIGluY2x1ZGUgZmlsZXMgZnJvbSBuZXcg
Zm9sZGVyLg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogV2VpIENoZW4gPFdlaS5DaGVuQGFybS5j
b20+DQo+ID4gLS0tDQo+ID4gICBpbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2F0b21pYy5oICAg
IHwgNjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+ID4gICBpbmNsdWRlL3VrL2Fy
Y2gvYXJtL2FybTMyL2ludHNpemVzLmggIHwgNDUgKysrKysrKysrKysrKysrKysrKysrDQo+ID4g
ICBpbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2xjcHUuaCAgICAgIHwgNTkgKysrKysrKysrKysr
KysrKysrKysrKysrKysrKw0KPiA+ICAgaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9saW1pdHMu
aCAgICB8IDQ1ICsrKysrKysrKysrKysrKysrKysrKw0KPiA+ICAgaW5jbHVkZS91ay9hcmNoL2Fy
bS9hcm0zMi90eXBlcy5oICAgICB8IDM1ICsrKysrKysrKysrKysrKysrDQo+ID4gICBpbmNsdWRl
L3VrL2FyY2gvYXJtL2F0b21pYy5oICAgICAgICAgIHwgNjQgLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tDQo+ID4gICBpbmNsdWRlL3VrL2FyY2gvYXJtL2ludHNpemVzLmggICAgICAgIHwg
NDUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gICBpbmNsdWRlL3VrL2FyY2gvYXJtL2xjcHUu
aCAgICAgICAgICAgIHwgNTkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ICAgaW5j
bHVkZS91ay9hcmNoL2FybS9saW1pdHMuaCAgICAgICAgICB8IDQ1IC0tLS0tLS0tLS0tLS0tLS0t
LS0tLQ0KPiA+ICAgaW5jbHVkZS91ay9hcmNoL2FybS90eXBlcy5oICAgICAgICAgICB8IDM1IC0t
LS0tLS0tLS0tLS0tLS0tDQo+ID4gICBpbmNsdWRlL3VrL2FyY2gvYXRvbWljLmggICAgICAgICAg
ICAgIHwgIDggKystLQ0KPiA+ICAgaW5jbHVkZS91ay9hcmNoL2xjcHUuaCAgICAgICAgICAgICAg
ICB8ICA4ICsrLS0NCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC9saW1pdHMuaCAgICAgICAgICAgICAg
fCAxNiArKysrLS0tLQ0KPiA+ICAgaW5jbHVkZS91ay9hcmNoL3R5cGVzLmggICAgICAgICAgICAg
ICB8IDE2ICsrKystLS0tDQo+ID4gICBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9hdG9taWMu
aCAgIHwgNDUgKysrKysrKysrKysrKysrKysrKysrDQo+ID4gICBpbmNsdWRlL3VrL2FyY2gveDg2
L3g4Nl82NC9pbnRzaXplcy5oIHwgNDUgKysrKysrKysrKysrKysrKysrKysrDQo+ID4gICBpbmNs
dWRlL3VrL2FyY2gveDg2L3g4Nl82NC9sY3B1LmggICAgIHwgNzMNCj4gKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysNCj4gPiAgIGluY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2xp
bWl0cy5oICAgfCA0NiArKysrKysrKysrKysrKysrKysrKysrDQo+ID4gICBpbmNsdWRlL3VrL2Fy
Y2gveDg2L3g4Nl82NC90eXBlcy5oICAgIHwgMzggKysrKysrKysrKysrKysrKysrDQo+ID4gICBp
bmNsdWRlL3VrL2FyY2gveDg2XzY0L2F0b21pYy5oICAgICAgIHwgNDUgLS0tLS0tLS0tLS0tLS0t
LS0tLS0tDQo+ID4gICBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2ludHNpemVzLmggICAgIHwgNDUg
LS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gICBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUu
aCAgICAgICAgIHwgNzMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtLS0tDQo+
ID4gICBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xpbWl0cy5oICAgICAgIHwgNDYgLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQ0KPiA+ICAgaW5jbHVkZS91ay9hcmNoL3g4Nl82NC90eXBlcy5oICAgICAg
ICB8IDM4IC0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ICAgMjQgZmlsZXMgY2hhbmdlZCwgNTE5IGlu
c2VydGlvbnMoKyksIDUxOSBkZWxldGlvbnMoLSkNCj4gPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBp
bmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2F0b21pYy5oDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2
NDQgaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9pbnRzaXplcy5oDQo+ID4gICBjcmVhdGUgbW9k
ZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9sY3B1LmgNCj4gPiAgIGNyZWF0ZSBt
b2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2xpbWl0cy5oDQo+ID4gICBjcmVh
dGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi90eXBlcy5oDQo+ID4gICBk
ZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS9hdG9taWMuaA0KPiA+ICAgZGVs
ZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0vaW50c2l6ZXMuaA0KPiA+ICAgZGVs
ZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0vbGNwdS5oDQo+ID4gICBkZWxldGUg
bW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS9saW1pdHMuaA0KPiA+ICAgZGVsZXRlIG1v
ZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0vdHlwZXMuaA0KPiA+ICAgY3JlYXRlIG1vZGUg
MTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2F0b21pYy5oDQo+ID4gICBjcmVhdGUg
bW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvaW50c2l6ZXMuaA0KPiA+ICAg
Y3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2xjcHUuaA0KPiA+
ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2xpbWl0cy5o
DQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvdHlw
ZXMuaA0KPiA+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODZfNjQvYXRv
bWljLmgNCj4gPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2lu
dHNpemVzLmgNCj4gPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2XzY0
L2xjcHUuaA0KPiA+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODZfNjQv
bGltaXRzLmgNCj4gPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2XzY0
L3R5cGVzLmgNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMy
L2F0b21pYy5oDQo+IGIvaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9hdG9taWMuaA0KPiA+IG5l
dyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMC4uOWQ1NGVlYQ0KPiA+IC0tLSAv
ZGV2L251bGwNCj4gPiArKysgYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2F0b21pYy5oDQo+
ID4gQEAgLTAsMCArMSw2NCBAQA0KPiA+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNE
LTItQ2xhdXNlICovDQo+ID4gKy8qDQo+ID4gKyAqIFBvcnQgZnJvbSBNaW5pLU9TOiBpbmNsdWRl
L2FybS9vcy5oDQo+ID4gKyAqLw0KPiA+ICsvKg0KPiA+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMDkg
Q2l0cml4IFN5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCj4gPiArICoNCj4gPiAr
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0DQo+ID4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucw0KPiA+ICsgKiBhcmUgbWV0Og0KPiA+ICsg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodA0KPiA+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuDQo+ID4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0DQo+ID4gKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUNCj4gPiArICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCj4gPiArICoNCj4gPiArICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFT
IElTJycgQU5EDQo+ID4gKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQ0KPiA+ICsgKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVINCj4gUFVS
UE9TRQ0KPiA+ICsgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBP
UiBDT05UUklCVVRPUlMgQkUgTElBQkxFDQo+ID4gKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUg0KPiBDT05TRVFVRU5USUFMDQo+
ID4gKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTDQo+ID4gKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQ0KPiA+ICsgKiBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsDQo+IFNUUklDVA0KPiA+ICsgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkNCj4gV0FZDQo+ID4gKyAqIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YNCj4gPiArICogU1VDSCBEQU1BR0UuDQo+ID4gKyAqLw0KPiA+ICsNCj4gPiAr
I2lmbmRlZiBfX1VLQVJDSF9BVE9NSUNfSF9fDQo+ID4gKyNlcnJvciBEbyBub3QgaW5jbHVkZSB0
aGlzIGhlYWRlciBkaXJlY3RseQ0KPiA+ICsjZW5kaWYNCj4gPiArDQo+ID4gKy8qKg0KPiA+ICsg
KiB1a2FyY2hfZmluZF9sc2JpdCAtIGZpbmQgZmlyc3QgKGxvd2VzdCkgc2V0IGJpdCBpbiB3b3Jk
Lg0KPiA+ICsgKiBAd29yZDogVGhlIHdvcmQgdG8gc2VhcmNoDQo+ID4gKyAqDQo+ID4gKyAqIFVu
ZGVmaW5lZCBpZiBubyBiaXQgZXhpc3RzLCBzbyBjb2RlIHNob3VsZCBjaGVjayBhZ2FpbnN0IDAg
Zmlyc3QuDQo+ID4gKyAqLw0KPiA+ICtzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGxvbmcgdWthcmNo
X2ZpbmRfbHNiaXQodW5zaWduZWQgbG9uZyB3b3JkKQ0KPiA+ICt7DQo+ID4gKwlpbnQgY2x6Ow0K
PiA+ICsNCj4gPiArCS8qIHh4eHh4MTAwMDAgPSB3b3JkDQo+ID4gKwkgKiB4eHh4eDAxMTExID0g
d29yZCAtIDENCj4gPiArCSAqIDAwMDAwMTExMTEgPSB3b3JkIF4gKHdvcmQgLSAxKQ0KPiA+ICsJ
ICogICAgICA0ICAgICA9IDMxIC0gY2x6KHdvcmQgXiAod29yZCAtIDEpKQ0KPiA+ICsJICovDQo+
ID4gKw0KPiA+ICsJX19hc21fXygic3ViIHIwLCAlW3dvcmRdLCAjMVxuIg0KPiA+ICsJCSJlb3Ig
cjAsIHIwLCAlW3dvcmRdXG4iDQo+ID4gKwkJImNseiAlW2Nsel0sIHIwXG4iDQo+ID4gKwkJOg0K
PiA+ICsJCS8qIE91dHB1dHM6ICovDQo+ID4gKwkJW2Nsel0gIj1yIihjbHopDQo+ID4gKwkJOg0K
PiA+ICsJCS8qIElucHV0czogKi8NCj4gPiArCQlbd29yZF0gInIiKHdvcmQpDQo+ID4gKwkJOg0K
PiA+ICsJCS8qIENsb2JiZXJzOiAqLw0KPiA+ICsJCSJyMCIpOw0KPiA+ICsNCj4gPiArCXJldHVy
biAzMSAtIGNsejsNCj4gPiArfQ0KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gvYXJt
L2FybTMyL2ludHNpemVzLmgNCj4gYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2ludHNpemVz
LmgNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAuLjViMzZjNGIN
Cj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9p
bnRzaXplcy5oDQo+ID4gQEAgLTAsMCArMSw0NSBAQA0KPiA+ICsvKiBTUERYLUxpY2Vuc2UtSWRl
bnRpZmllcjogQlNELTMtQ2xhdXNlICovDQo+ID4gKy8qDQo+ID4gKyAqIEF1dGhvcnM6IFNpbW9u
IEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1Pg0KPiA+ICsgKg0KPiA+ICsgKg0KPiA+
ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9u
LiBBbGwgcmlnaHRzDQo+IHJlc2VydmVkLg0KPiA+ICsgKg0KPiA+ICsgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQNCj4g
PiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zDQo+ID4gKyAqIGFyZSBtZXQ6DQo+ID4gKyAqDQo+ID4gKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0DQo+ID4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4NCj4gPiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiArICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQ0KPiA+ICsgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLg0KPiA+ICsgKiAzLiBOZWl0aGVyIHRoZSBu
YW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzDQo+ID4gKyAq
ICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tDQo+ID4gKyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uDQo+ID4gKyAqDQo+ID4gKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMg
IkFTDQo+IElTIg0KPiA+ICsgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywNCj4gVEhFDQo+ID4gKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
Ug0KPiBQVVJQT1NFDQo+ID4gKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMNCj4gQkUNCj4gPiArICogTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUg0KPiA+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRg0KPiA+ICsgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MNCj4gPiAr
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4NCj4gPiArICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkNCj4gPiArICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRg0KPiBUSEUNCj4gPiArICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuDQo+ID4g
KyAqDQo+ID4gKyAqIFRISVMgSEVBREVSIE1BWSBOT1QgQkUgRVhUUkFDVEVEIE9SIE1PRElGSUVE
IElOIEFOWSBXQVkuDQo+ID4gKyAqLw0KPiA+ICsNCj4gPiArI2lmICgoIWRlZmluZWQgX19VS0FS
Q0hfVFlQRVNfSF9fKSAmJiAoIWRlZmluZWQgX19VS0FSQ0hfTElNSVRTX0hfXykpDQo+ID4gKyNl
cnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQ0KPiA+ICsjZW5kaWYNCj4g
PiArDQo+ID4gKyNkZWZpbmUgX19DX0lTXzggICAgIC8qIGNoYXIgKi8NCj4gPiArI2RlZmluZSBf
X1NfSVNfMTYgICAgLyogc2hvcnQgKi8NCj4gPiArI2RlZmluZSBfX0lfSVNfMzIgICAgLyogaW50
ICovDQo+ID4gKyNkZWZpbmUgX19MX0lTXzMyICAgIC8qIGxvbmcgKi8NCj4gPiArI2RlZmluZSBf
X0xMX0lTXzY0ICAgLyogbG9uZyBsb25nICovDQo+ID4gKyNkZWZpbmUgX19QVFJfSVNfMzIgLyog
dm9pZCAqICovDQo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIvbGNw
dS5oDQo+IGIvaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9sY3B1LmgNCj4gPiBuZXcgZmlsZSBt
b2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAuLmNkZWZmYzMNCj4gPiAtLS0gL2Rldi9udWxs
DQo+ID4gKysrIGIvaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi9sY3B1LmgNCj4gPiBAQCAtMCww
ICsxLDU5IEBADQo+ID4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2Ug
Ki8NCj4gPiArLyoNCj4gPiArICogQ29weXJpZ2h0IChjKSAyMDA5LCBDaXRyaXggU3lzdGVtcywg
SW5jLg0KPiA+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENv
cnBvcmF0aW9uLg0KPiA+ICsgKg0KPiA+ICsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQNCj4gPiArICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
DQo+ID4gKyAqIGFyZSBtZXQ6DQo+ID4gKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0DQo+ID4gKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4NCj4g
PiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQ0KPiA+ICsgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLg0KPiA+ICsgKg0KPiA+ICsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFV
VEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQNCj4gPiArICogQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
DQo+ID4gKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUg0KPiBQVVJQT1NFDQo+ID4gKyAqIEFSRSBESVNDTEFJTUVELiAg
SU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUNCj4gPiAr
ICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SDQo+IENPTlNFUVVFTlRJQUwNCj4gPiArICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMNCj4gPiArICog
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pDQo+ID4gKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwNCj4gU1RSSUNUDQo+ID4gKyAqIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWQ0KPiBXQVkNCj4gPiArICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRg0KPiA+ICsgKiBTVUNIIERBTUFH
RS4NCj4gPiArICovDQo+ID4gKw0KPiA+ICsjaWZuZGVmIF9fVUtBUkNIX0xDUFVfSF9fDQo+ID4g
KyNlcnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQ0KPiA+ICsjZW5kaWYN
Cj4gPiArDQo+ID4gK3N0cnVjdCBfX3JlZ3Mgew0KPiA+ICsJdW5zaWduZWQgbG9uZyByMDsNCj4g
PiArCXVuc2lnbmVkIGxvbmcgcjE7DQo+ID4gKwl1bnNpZ25lZCBsb25nIHIyOw0KPiA+ICsJdW5z
aWduZWQgbG9uZyByMzsNCj4gPiArCXVuc2lnbmVkIGxvbmcgcjQ7DQo+ID4gKwl1bnNpZ25lZCBs
b25nIHI1Ow0KPiA+ICsJdW5zaWduZWQgbG9uZyByNjsNCj4gPiArCXVuc2lnbmVkIGxvbmcgcjc7
DQo+ID4gKwl1bnNpZ25lZCBsb25nIHI4Ow0KPiA+ICsJdW5zaWduZWQgbG9uZyByOTsNCj4gPiAr
CXVuc2lnbmVkIGxvbmcgcjEwOw0KPiA+ICsJdW5zaWduZWQgbG9uZyByMTE7DQo+ID4gKwl1bnNp
Z25lZCBsb25nIHIxMjsNCj4gPiArfTsNCj4gPiArDQo+ID4gKy8qIFdlIHByb2JhYmx5IG9ubHkg
bmVlZCAiZG1iIiBoZXJlLCBidXQgd2UnbGwgc3RhcnQgYnkgYmVpbmcgcGFyYW5vaWQuICovDQo+
ID4gKyNpZm5kZWYgbWINCj4gPiArI2RlZmluZSBtYigpIF9fYXNtX18oImRzYiIgOiA6IDogIm1l
bW9yeSIpDQo+ID4gKyNlbmRpZg0KPiA+ICsNCj4gPiArI2lmbmRlZiBybWINCj4gPiArI2RlZmlu
ZSBybWIoKSBfX2FzbV9fKCJkc2IiIDogOiA6ICJtZW1vcnkiKQ0KPiA+ICsjZW5kaWYNCj4gPiAr
DQo+ID4gKyNpZm5kZWYgd21iDQo+ID4gKyNkZWZpbmUgd21iKCkgX19hc21fXygiZHNiIiA6IDog
OiAibWVtb3J5IikNCj4gPiArI2VuZGlmDQo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJj
aC9hcm0vYXJtMzIvbGltaXRzLmgNCj4gYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybTMyL2xpbWl0
cy5oDQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwLi4wODU3NjFj
DQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2luY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIv
bGltaXRzLmgNCj4gPiBAQCAtMCwwICsxLDQ1IEBADQo+ID4gKy8qIFNQRFgtTGljZW5zZS1JZGVu
dGlmaWVyOiBCU0QtMi1DbGF1c2UgKi8NCj4gPiArLyoNCj4gPiArICogQ29weXJpZ2h0IChjKSAy
MDA5LCBDaXRyaXggU3lzdGVtcywgSW5jLg0KPiA+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5F
QyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uLg0KPiA+ICsgKg0KPiA+ICsgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQNCj4gPiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zDQo+ID4gKyAqIGFyZSBtZXQ6DQo+ID4gKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
DQo+ID4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4NCj4gPiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiArICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQ0KPiA+ICsgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLg0KPiA+ICsgKg0KPiA+ICsgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQN
Cj4gPiArICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFDQo+ID4gKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUg0KPiBQVVJQT1NFDQo+ID4g
KyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9SIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUNCj4gPiArICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SDQo+IENPTlNFUVVFTlRJQUwNCj4gPiArICogREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMNCj4gPiArICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pDQo+ID4gKyAqIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwNCj4g
U1RSSUNUDQo+ID4gKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWQ0KPiBXQVkNCj4gPiArICogT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
Rg0KPiA+ICsgKiBTVUNIIERBTUFHRS4NCj4gPiArICovDQo+ID4gKw0KPiA+ICsjaWZuZGVmIF9f
VUtBUkNIX0xJTUlUU19IX18NCj4gPiArI2Vycm9yIERvIG5vdCBpbmNsdWRlIHRoaXMgaGVhZGVy
IGRpcmVjdGx5DQo+ID4gKyNlbmRpZg0KPiA+ICsNCj4gPiArI2RlZmluZSBfX1BBR0VfU0hJRlQJ
CTEyDQo+ID4gKw0KPiA+ICsjaWZkZWYgX19BU1NFTUJMWV9fDQo+ID4gKyNkZWZpbmUgX19QQUdF
X1NJWkUJCSgxIDw8IF9fUEFHRV9TSElGVCkNCj4gPiArI2RlZmluZSBfX1BBR0VfTUFTSwkJKH4o
KF9fUEFHRV9TSVpFKSAtIDEpKQ0KPiA+ICsjZWxzZQ0KPiA+ICsjZGVmaW5lIF9fUEFHRV9TSVpF
CQkoMVVMTCA8PCBfX1BBR0VfU0hJRlQpDQo+ID4gKyNkZWZpbmUgX19QQUdFX01BU0sJCSh+KChf
X1BBR0VfU0laRSkgLSAxKSkNCj4gPiArI2VuZGlmDQo+ID4gKw0KPiA+ICsjZGVmaW5lIF9fU1RB
Q0tfU0laRV9QQUdFX09SREVSCTINCj4gPiArI2RlZmluZSBfX1NUQUNLX1NJWkUJCShfX1BBR0Vf
U0laRSAqICgxIDw8IF9fU1RBQ0tfU0laRV9QQUdFX09SREVSKSkNCj4gPiArDQo+ID4gKyNkZWZp
bmUgX19XT1JEU0laRQkJMzINCj4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNoL2FybS9h
cm0zMi90eXBlcy5oDQo+IGIvaW5jbHVkZS91ay9hcmNoL2FybS9hcm0zMi90eXBlcy5oDQo+ID4g
bmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwLi5lNzQ1YzBjDQo+ID4gLS0t
IC9kZXYvbnVsbA0KPiA+ICsrKyBiL2luY2x1ZGUvdWsvYXJjaC9hcm0vYXJtMzIvdHlwZXMuaA0K
PiA+IEBAIC0wLDAgKzEsMzUgQEANCj4gPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1J
VCAqLw0KPiA+ICsvKg0KPiA+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMDItMjAwMywgSyBBIEZyYXNl
ciAmIFIgTmV1Z2ViYXVlcg0KPiA+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMDUsIEdyemVnb3J6IE1p
bG9zLCBJbnRlbCBSZXNlYXJjaCBDYW1icmlkZ2UNCj4gPiArICoNCj4gPiArICogUGVybWlzc2lv
biBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWlu
aW5nIGENCj4gY29weQ0KPiA+ICsgKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRv
Y3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8NCj4gPiArICogZGVhbCBpbiB0
aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRh
dGlvbg0KPiB0aGUNCj4gPiArICogcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwg
cHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwNCj4gYW5kL29yDQo+ID4gKyAqIHNlbGwg
Y29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhl
IFNvZnR3YXJlDQo+IGlzDQo+ID4gKyAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6DQo+ID4gKyAqDQo+ID4gKyAqIFRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVk
DQo+IGluDQo+ID4gKyAqIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhl
IFNvZnR3YXJlLg0KPiA+ICsgKg0KPiA+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFT
IElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUw0KPiBPUg0KPiA+ICsg
KiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSwNCj4gPiArICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwNCj4gVEhFDQo+ID4gKyAq
IEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERB
TUFHRVMgT1IgT1RIRVINCj4gPiArICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBP
RiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcNCj4gPiArICogRlJPTSwgT1VU
IE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhF
Ug0KPiA+ICsgKiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuDQo+ID4gKyAqLw0KPiA+ICsNCj4g
PiArI2lmbmRlZiBfX1VLQVJDSF9UWVBFU19IX18NCj4gPiArI2Vycm9yIERvIG5vdCBpbmNsdWRl
IHRoaXMgaGVhZGVyIGRpcmVjdGx5DQo+ID4gKyNlbmRpZg0KPiA+ICsNCj4gPiArI2lmbmRlZiBf
X0FTU0VNQkxZX18NCj4gPiArDQo+ID4gK3N0cnVjdCBfX3B0ZSB7IHVuc2lnbmVkIGxvbmcgcHRl
X2xvdywgcHRlX2hpZ2g7IH07DQo+ID4gKyNkZWZpbmUgbnB0ZSh4KSAoeyB1bnNpZ25lZCBsb25n
IGxvbmcgX3ggPSAoeCk7IFwNCj4gPiArCQkgKChwdGVfdCkgeyh1bnNpZ25lZCBsb25nKShfeCks
ICh1bnNpZ25lZCBsb25nKShfeD4+MzIpfSk7IH0pDQo+ID4gKw0KPiA+ICsjZW5kaWYgLyogIV9f
QVNTRU1CTFlfXyAqLw0KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2F0b21p
Yy5oIGIvaW5jbHVkZS91ay9hcmNoL2FybS9hdG9taWMuaA0KPiA+IGRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NA0KPiA+IGluZGV4IDlkNTRlZWEuLjAwMDAwMDANCj4gPiAtLS0gYS9pbmNsdWRlL3Vr
L2FyY2gvYXJtL2F0b21pYy5oDQo+ID4gKysrIC9kZXYvbnVsbA0KPiA+IEBAIC0xLDY0ICswLDAg
QEANCj4gPiAtLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLw0KPiA+
IC0vKg0KPiA+IC0gKiBQb3J0IGZyb20gTWluaS1PUzogaW5jbHVkZS9hcm0vb3MuaA0KPiA+IC0g
Ki8NCj4gPiAtLyoNCj4gPiAtICogQ29weXJpZ2h0IChjKSAyMDA5IENpdHJpeCBTeXN0ZW1zLCBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQo+ID4gLSAqDQo+ID4gLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dA0KPiA+
IC0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMNCj4gPiAtICogYXJlIG1ldDoNCj4gPiAtICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiAt
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLg0KPiA+IC0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodA0KPiA+IC0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlDQo+
ID4gLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uDQo+ID4gLSAqDQo+ID4gLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORA0KPiA+IC0g
KiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUNCj4gPiAtICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSDQo+IFBVUlBPU0UNCj4gPiAtICogQVJF
IERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRQ0KPiA+IC0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1INCj4gQ09OU0VRVUVOVElBTA0KPiA+IC0gKiBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUw0KPiA+IC0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikNCj4gPiAtICogSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULA0KPiBTVFJJQ1QN
Cj4gPiAtICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZDQo+IFdBWQ0KPiA+IC0gKiBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GDQo+ID4g
LSAqIFNVQ0ggREFNQUdFLg0KPiA+IC0gKi8NCj4gPiAtDQo+ID4gLSNpZm5kZWYgX19VS0FSQ0hf
QVRPTUlDX0hfXw0KPiA+IC0jZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0
bHkNCj4gPiAtI2VuZGlmDQo+ID4gLQ0KPiA+IC0vKioNCj4gPiAtICogdWthcmNoX2ZpbmRfbHNi
aXQgLSBmaW5kIGZpcnN0IChsb3dlc3QpIHNldCBiaXQgaW4gd29yZC4NCj4gPiAtICogQHdvcmQ6
IFRoZSB3b3JkIHRvIHNlYXJjaA0KPiA+IC0gKg0KPiA+IC0gKiBVbmRlZmluZWQgaWYgbm8gYml0
IGV4aXN0cywgc28gY29kZSBzaG91bGQgY2hlY2sgYWdhaW5zdCAwIGZpcnN0Lg0KPiA+IC0gKi8N
Cj4gPiAtc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHVrYXJjaF9maW5kX2xzYml0KHVuc2ln
bmVkIGxvbmcgd29yZCkNCj4gPiAtew0KPiA+IC0JaW50IGNsejsNCj4gPiAtDQo+ID4gLQkvKiB4
eHh4eDEwMDAwID0gd29yZA0KPiA+IC0JICogeHh4eHgwMTExMSA9IHdvcmQgLSAxDQo+ID4gLQkg
KiAwMDAwMDExMTExID0gd29yZCBeICh3b3JkIC0gMSkNCj4gPiAtCSAqICAgICAgNCAgICAgPSAz
MSAtIGNseih3b3JkIF4gKHdvcmQgLSAxKSkNCj4gPiAtCSAqLw0KPiA+IC0NCj4gPiAtCV9fYXNt
X18oInN1YiByMCwgJVt3b3JkXSwgIzFcbiINCj4gPiAtCQkiZW9yIHIwLCByMCwgJVt3b3JkXVxu
Ig0KPiA+IC0JCSJjbHogJVtjbHpdLCByMFxuIg0KPiA+IC0JCToNCj4gPiAtCQkvKiBPdXRwdXRz
OiAqLw0KPiA+IC0JCVtjbHpdICI9ciIoY2x6KQ0KPiA+IC0JCToNCj4gPiAtCQkvKiBJbnB1dHM6
ICovDQo+ID4gLQkJW3dvcmRdICJyIih3b3JkKQ0KPiA+IC0JCToNCj4gPiAtCQkvKiBDbG9iYmVy
czogKi8NCj4gPiAtCQkicjAiKTsNCj4gPiAtDQo+ID4gLQlyZXR1cm4gMzEgLSBjbHo7DQo+ID4g
LX0NCj4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNoL2FybS9pbnRzaXplcy5oIGIvaW5j
bHVkZS91ay9hcmNoL2FybS9pbnRzaXplcy5oDQo+ID4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
DQo+ID4gaW5kZXggNWIzNmM0Yi4uMDAwMDAwMA0KPiA+IC0tLSBhL2luY2x1ZGUvdWsvYXJjaC9h
cm0vaW50c2l6ZXMuaA0KPiA+ICsrKyAvZGV2L251bGwNCj4gPiBAQCAtMSw0NSArMCwwIEBADQo+
ID4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UgKi8NCj4gPiAtLyoN
Cj4gPiAtICogQXV0aG9yczogU2ltb24gS3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+
DQo+ID4gLSAqDQo+ID4gLSAqDQo+ID4gLSAqIENvcHlyaWdodCAoYykgMjAxNywgTkVDIEV1cm9w
ZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMNCj4gcmVzZXJ2ZWQuDQo+ID4gLSAq
DQo+ID4gLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dA0KPiA+IC0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMNCj4gPiAtICogYXJlIG1ldDoN
Cj4gPiAtICoNCj4gPiAtICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiAtICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLg0KPiA+IC0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodA0KPiA+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlDQo+ID4gLSAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uDQo+
ID4gLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xkZXIgbm9yIHRo
ZSBuYW1lcyBvZiBpdHMNCj4gPiAtICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20NCj4gPiAtICogICAgdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4NCj4gPiAt
ICoNCj4gPiAtICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMNCj4gSVMiDQo+ID4gLSAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLA0K
PiBUSEUNCj4gPiAtICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSDQo+IFBVUlBPU0UNCj4gPiAtICogQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9S
Uw0KPiBCRQ0KPiA+IC0gKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SDQo+ID4gLSAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GDQo+ID4gLSAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUw0KPiA+IC0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTg0KPiA+IC0gKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQ0KPiA+IC0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GDQo+IFRIRQ0KPiA+IC0gKiBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4NCj4gPiAtICoNCj4gPiAtICogVEhJUyBIRUFERVIgTUFZIE5PVCBC
RSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4NCj4gPiAtICovDQo+ID4gLQ0KPiA+
IC0jaWYgKCghZGVmaW5lZCBfX1VLQVJDSF9UWVBFU19IX18pICYmICghZGVmaW5lZCBfX1VLQVJD
SF9MSU1JVFNfSF9fKSkNCj4gPiAtI2Vycm9yIERvIG5vdCBpbmNsdWRlIHRoaXMgaGVhZGVyIGRp
cmVjdGx5DQo+ID4gLSNlbmRpZg0KPiA+IC0NCj4gPiAtI2RlZmluZSBfX0NfSVNfOCAgICAgLyog
Y2hhciAqLw0KPiA+IC0jZGVmaW5lIF9fU19JU18xNiAgICAvKiBzaG9ydCAqLw0KPiA+IC0jZGVm
aW5lIF9fSV9JU18zMiAgICAvKiBpbnQgKi8NCj4gPiAtI2RlZmluZSBfX0xfSVNfMzIgICAgLyog
bG9uZyAqLw0KPiA+IC0jZGVmaW5lIF9fTExfSVNfNjQgICAvKiBsb25nIGxvbmcgKi8NCj4gPiAt
I2RlZmluZSBfX1BUUl9JU18zMiAvKiB2b2lkICogKi8NCj4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVk
ZS91ay9hcmNoL2FybS9sY3B1LmggYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2xjcHUuaA0KPiA+IGRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IGNkZWZmYzMuLjAwMDAwMDANCj4gPiAt
LS0gYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2xjcHUuaA0KPiA+ICsrKyAvZGV2L251bGwNCj4gPiBA
QCAtMSw1OSArMCwwIEBADQo+ID4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1D
bGF1c2UgKi8NCj4gPiAtLyoNCj4gPiAtICogQ29weXJpZ2h0IChjKSAyMDA5LCBDaXRyaXggU3lz
dGVtcywgSW5jLg0KPiA+IC0gKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBFdXJvcGUgTHRkLiwg
TkVDIENvcnBvcmF0aW9uLg0KPiA+IC0gKg0KPiA+IC0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQNCj4gPiAtICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zDQo+ID4gLSAqIGFyZSBtZXQ6DQo+ID4gLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0DQo+ID4gLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4NCj4gPiAtICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiAtICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQ0KPiA+IC0gKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLg0KPiA+IC0gKg0KPiA+IC0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQNCj4gPiAtICogQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFDQo+ID4gLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUg0KPiBQVVJQT1NFDQo+ID4gLSAqIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUN
Cj4gPiAtICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SDQo+IENPTlNFUVVFTlRJQUwNCj4gPiAtICogREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMNCj4g
PiAtICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pDQo+ID4gLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwNCj4gU1RSSUNUDQo+ID4gLSAq
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWQ0KPiBXQVkNCj4gPiAtICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRg0KPiA+IC0gKiBTVUNI
IERBTUFHRS4NCj4gPiAtICovDQo+ID4gLQ0KPiA+IC0jaWZuZGVmIF9fVUtBUkNIX0xDUFVfSF9f
DQo+ID4gLSNlcnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQ0KPiA+IC0j
ZW5kaWYNCj4gPiAtDQo+ID4gLXN0cnVjdCBfX3JlZ3Mgew0KPiA+IC0JdW5zaWduZWQgbG9uZyBy
MDsNCj4gPiAtCXVuc2lnbmVkIGxvbmcgcjE7DQo+ID4gLQl1bnNpZ25lZCBsb25nIHIyOw0KPiA+
IC0JdW5zaWduZWQgbG9uZyByMzsNCj4gPiAtCXVuc2lnbmVkIGxvbmcgcjQ7DQo+ID4gLQl1bnNp
Z25lZCBsb25nIHI1Ow0KPiA+IC0JdW5zaWduZWQgbG9uZyByNjsNCj4gPiAtCXVuc2lnbmVkIGxv
bmcgcjc7DQo+ID4gLQl1bnNpZ25lZCBsb25nIHI4Ow0KPiA+IC0JdW5zaWduZWQgbG9uZyByOTsN
Cj4gPiAtCXVuc2lnbmVkIGxvbmcgcjEwOw0KPiA+IC0JdW5zaWduZWQgbG9uZyByMTE7DQo+ID4g
LQl1bnNpZ25lZCBsb25nIHIxMjsNCj4gPiAtfTsNCj4gPiAtDQo+ID4gLS8qIFdlIHByb2JhYmx5
IG9ubHkgbmVlZCAiZG1iIiBoZXJlLCBidXQgd2UnbGwgc3RhcnQgYnkgYmVpbmcgcGFyYW5vaWQu
ICovDQo+ID4gLSNpZm5kZWYgbWINCj4gPiAtI2RlZmluZSBtYigpIF9fYXNtX18oImRzYiIgOiA6
IDogIm1lbW9yeSIpDQo+ID4gLSNlbmRpZg0KPiA+IC0NCj4gPiAtI2lmbmRlZiBybWINCj4gPiAt
I2RlZmluZSBybWIoKSBfX2FzbV9fKCJkc2IiIDogOiA6ICJtZW1vcnkiKQ0KPiA+IC0jZW5kaWYN
Cj4gPiAtDQo+ID4gLSNpZm5kZWYgd21iDQo+ID4gLSNkZWZpbmUgd21iKCkgX19hc21fXygiZHNi
IiA6IDogOiAibWVtb3J5IikNCj4gPiAtI2VuZGlmDQo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUv
dWsvYXJjaC9hcm0vbGltaXRzLmggYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2xpbWl0cy5oDQo+ID4g
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDg1NzYxYy4uMDAwMDAwMA0KPiA+
IC0tLSBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vbGltaXRzLmgNCj4gPiArKysgL2Rldi9udWxsDQo+
ID4gQEAgLTEsNDUgKzAsMCBAQA0KPiA+IC0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNE
LTItQ2xhdXNlICovDQo+ID4gLS8qDQo+ID4gLSAqIENvcHlyaWdodCAoYykgMjAwOSwgQ2l0cml4
IFN5c3RlbXMsIEluYy4NCj4gPiAtICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0
ZC4sIE5FQyBDb3Jwb3JhdGlvbi4NCj4gPiAtICoNCj4gPiAtICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0DQo+ID4gLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucw0KPiA+IC0gKiBhcmUgbWV0Og0KPiA+IC0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodA0KPiA+IC0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuDQo+ID4gLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0DQo+ID4gLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUNCj4gPiAt
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4NCj4gPiAtICoNCj4gPiAtICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EDQo+ID4gLSAqIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQ0KPiA+IC0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVINCj4gUFVSUE9TRQ0KPiA+IC0gKiBBUkUgRElT
Q0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElB
QkxFDQo+ID4gLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUg0KPiBDT05TRVFVRU5USUFMDQo+ID4gLSAqIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
DQo+ID4gLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKQ0KPiA+IC0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsDQo+IFNUUklDVA0KPiA+
IC0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkNCj4gV0FZDQo+ID4gLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YNCj4gPiAtICog
U1VDSCBEQU1BR0UuDQo+ID4gLSAqLw0KPiA+IC0NCj4gPiAtI2lmbmRlZiBfX1VLQVJDSF9MSU1J
VFNfSF9fDQo+ID4gLSNlcnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQ0K
PiA+IC0jZW5kaWYNCj4gPiAtDQo+ID4gLSNkZWZpbmUgX19QQUdFX1NISUZUCQkxMg0KPiA+IC0N
Cj4gPiAtI2lmZGVmIF9fQVNTRU1CTFlfXw0KPiA+IC0jZGVmaW5lIF9fUEFHRV9TSVpFCQkoMSA8
PCBfX1BBR0VfU0hJRlQpDQo+ID4gLSNkZWZpbmUgX19QQUdFX01BU0sJCSh+KChfX1BBR0VfU0la
RSkgLSAxKSkNCj4gPiAtI2Vsc2UNCj4gPiAtI2RlZmluZSBfX1BBR0VfU0laRQkJKDFVTEwgPDwg
X19QQUdFX1NISUZUKQ0KPiA+IC0jZGVmaW5lIF9fUEFHRV9NQVNLCQkofigoX19QQUdFX1NJWkUp
IC0gMSkpDQo+ID4gLSNlbmRpZg0KPiA+IC0NCj4gPiAtI2RlZmluZSBfX1NUQUNLX1NJWkVfUEFH
RV9PUkRFUgkyDQo+ID4gLSNkZWZpbmUgX19TVEFDS19TSVpFCQkoX19QQUdFX1NJWkUgKiAoMSA8
PCBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUikpDQo+ID4gLQ0KPiA+IC0jZGVmaW5lIF9fV09SRFNJ
WkUJCTMyDQo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vdHlwZXMuaCBiL2lu
Y2x1ZGUvdWsvYXJjaC9hcm0vdHlwZXMuaA0KPiA+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NA0K
PiA+IGluZGV4IGU3NDVjMGMuLjAwMDAwMDANCj4gPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gvYXJt
L3R5cGVzLmgNCj4gPiArKysgL2Rldi9udWxsDQo+ID4gQEAgLTEsMzUgKzAsMCBAQA0KPiA+IC0v
KiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUICovDQo+ID4gLS8qDQo+ID4gLSAqIENvcHly
aWdodCAoYykgMjAwMi0yMDAzLCBLIEEgRnJhc2VyICYgUiBOZXVnZWJhdWVyDQo+ID4gLSAqIENv
cHlyaWdodCAoYykgMjAwNSwgR3J6ZWdvcnogTWlsb3MsIEludGVsIFJlc2VhcmNoIENhbWJyaWRn
ZQ0KPiA+IC0gKg0KPiA+IC0gKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9m
IGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQ0KPiBjb3B5DQo+ID4gLSAqIG9mIHRo
aXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0
d2FyZSIpLCB0bw0KPiA+IC0gKiBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0
aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uDQo+IHRoZQ0KPiA+IC0gKiByaWdodHMg
dG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNl
bnNlLA0KPiBhbmQvb3INCj4gPiAtICogc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQg
dG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUNCj4gaXMNCj4gPiAtICogZnVy
bmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoNCj4g
PiAtICoNCj4gPiAtICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlz
c2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQNCj4gaW4NCj4gPiAtICogYWxsIGNvcGllcyBv
ciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuDQo+ID4gLSAqDQo+ID4gLSAq
IFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFO
WSBLSU5ELCBFWFBSRVNTDQo+IE9SDQo+ID4gLSAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9U
IExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLA0KPiA+IC0gKiBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBO
TyBFVkVOVCBTSEFMTA0KPiBUSEUNCj4gPiAtICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVS
UyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUg0KPiA+IC0gKiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lT
RSwgQVJJU0lORw0KPiA+IC0gKiBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRI
RSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSDQo+ID4gLSAqIERFQUxJTkdTIElOIFRIRSBT
T0ZUV0FSRS4NCj4gPiAtICovDQo+ID4gLQ0KPiA+IC0jaWZuZGVmIF9fVUtBUkNIX1RZUEVTX0hf
Xw0KPiA+IC0jZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkNCj4gPiAt
I2VuZGlmDQo+ID4gLQ0KPiA+IC0jaWZuZGVmIF9fQVNTRU1CTFlfXw0KPiA+IC0NCj4gPiAtc3Ry
dWN0IF9fcHRlIHsgdW5zaWduZWQgbG9uZyBwdGVfbG93LCBwdGVfaGlnaDsgfTsNCj4gPiAtI2Rl
ZmluZSBucHRlKHgpICh7IHVuc2lnbmVkIGxvbmcgbG9uZyBfeCA9ICh4KTsgXA0KPiA+IC0JCSAo
KHB0ZV90KSB7KHVuc2lnbmVkIGxvbmcpKF94KSwgKHVuc2lnbmVkIGxvbmcpKF94Pj4zMil9KTsg
fSkNCj4gPiAtDQo+ID4gLSNlbmRpZiAvKiAhX19BU1NFTUJMWV9fICovDQo+ID4gZGlmZiAtLWdp
dCBhL2luY2x1ZGUvdWsvYXJjaC9hdG9taWMuaCBiL2luY2x1ZGUvdWsvYXJjaC9hdG9taWMuaA0K
PiA+IGluZGV4IDMzMWJkODEuLjQ4YTRhNzQgMTAwNjQ0DQo+ID4gLS0tIGEvaW5jbHVkZS91ay9h
cmNoL2F0b21pYy5oDQo+ID4gKysrIGIvaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oDQo+ID4gQEAg
LTM3LDE2ICszNywxNiBAQCBleHRlcm4gIkMiIHsNCj4gPiAgICNlbmRpZg0KPiA+DQo+ID4gICAj
aWZkZWYgX19YODZfMzJfXw0KPiA+IC0jaW5jbHVkZSA8dWsvYXJjaC94ODYvYXRvbWljLmg+DQo+
ID4gKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODYvYXRvbWljLmg+DQo+ID4gICAjZW5kaWYNCj4g
PiAgICNpZmRlZiBfX1g4Nl82NF9fDQo+ID4gLSNpbmNsdWRlIDx1ay9hcmNoL3g4Nl82NC9hdG9t
aWMuaD4NCj4gPiArI2luY2x1ZGUgPHVrL2FyY2gveDg2L3g4Nl82NC9hdG9taWMuaD4NCj4gPiAg
ICNlbmRpZg0KPiA+ICAgI2lmZGVmIF9fQVJNXzMyX18NCj4gPiAtI2luY2x1ZGUgPHVrL2FyY2gv
YXJtL2F0b21pYy5oPg0KPiA+ICsjaW5jbHVkZSA8dWsvYXJjaC9hcm0vYXJtMzIvYXRvbWljLmg+
DQo+ID4gICAjZW5kaWYNCj4gPiAgICNpZmRlZiBfX0FSTV82NF9fDQo+ID4gLSNpbmNsdWRlIDx1
ay9hcmNoL2FybTY0L2F0b21pYy5oPg0KPiA+ICsjaW5jbHVkZSA8dWsvYXJjaC9hcm0vYXJtNjQv
YXRvbWljLmg+DQo+ID4gICAjZW5kaWYNCj4gPg0KPiA+ICAgLyoqDQo+ID4gZGlmZiAtLWdpdCBh
L2luY2x1ZGUvdWsvYXJjaC9sY3B1LmggYi9pbmNsdWRlL3VrL2FyY2gvbGNwdS5oDQo+ID4gaW5k
ZXggZWE3ODBmNy4uMDYwNGE5MiAxMDA2NDQNCj4gPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gvbGNw
dS5oDQo+ID4gKysrIGIvaW5jbHVkZS91ay9hcmNoL2xjcHUuaA0KPiA+IEBAIC00MywxNiArNDMs
MTYgQEAgZXh0ZXJuICJDIiB7DQo+ID4gICAjZW5kaWYNCj4gPg0KPiA+ICAgI2lmZGVmIF9fWDg2
XzMyX18NCj4gPiAtI2luY2x1ZGUgPHVrL2FyY2gveDg2L2xjcHUuaD4NCj4gPiArI2luY2x1ZGUg
PHVrL2FyY2gveDg2L3g4Ni9sY3B1Lmg+DQo+ID4gICAjZW5kaWYNCj4gPiAgICNpZmRlZiBfX1g4
Nl82NF9fDQo+ID4gLSNpbmNsdWRlIDx1ay9hcmNoL3g4Nl82NC9sY3B1Lmg+DQo+ID4gKyNpbmNs
dWRlIDx1ay9hcmNoL3g4Ni94ODZfNjQvbGNwdS5oPg0KPiA+ICAgI2VuZGlmDQo+ID4gICAjaWZk
ZWYgX19BUk1fMzJfXw0KPiA+IC0jaW5jbHVkZSA8dWsvYXJjaC9hcm0vbGNwdS5oPg0KPiA+ICsj
aW5jbHVkZSA8dWsvYXJjaC9hcm0vYXJtMzIvbGNwdS5oPg0KPiA+ICAgI2VuZGlmDQo+ID4gICAj
aWZkZWYgX19BUk1fNjRfXw0KPiA+IC0jaW5jbHVkZSA8dWsvYXJjaC9hcm02NC9sY3B1Lmg+DQo+
ID4gKyNpbmNsdWRlIDx1ay9hcmNoL2FybS9hcm02NC9sY3B1Lmg+DQo+ID4gICAjZW5kaWYNCj4g
Pg0KPiA+ICAgI2lmbmRlZiBsaWtlbHkNCj4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNo
L2xpbWl0cy5oIGIvaW5jbHVkZS91ay9hcmNoL2xpbWl0cy5oDQo+ID4gaW5kZXggODE2OTRkOS4u
N2JjZGM5MiAxMDA2NDQNCj4gPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gvbGltaXRzLmgNCj4gPiAr
KysgYi9pbmNsdWRlL3VrL2FyY2gvbGltaXRzLmgNCj4gPiBAQCAtMzcsMzEgKzM3LDMxIEBADQo+
ID4gICAjZGVmaW5lIF9fVUtBUkNIX0xJTUlUU19IX18NCj4gPg0KPiA+ICAgI2lmZGVmIF9fWDg2
XzMyX18NCj4gPiAtI2luY2x1ZGUgPHVrL2FyY2gveDg2L2xpbWl0cy5oPg0KPiA+ICsjaW5jbHVk
ZSA8dWsvYXJjaC94ODYveDg2L2xpbWl0cy5oPg0KPiA+ICAgI2VuZGlmDQo+ID4gICAjaWZkZWYg
X19YODZfNjRfXw0KPiA+IC0jaW5jbHVkZSA8dWsvYXJjaC94ODZfNjQvbGltaXRzLmg+DQo+ID4g
KyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODZfNjQvbGltaXRzLmg+DQo+ID4gICAjZW5kaWYNCj4g
PiAgICNpZmRlZiBfX0FSTV8zMl9fDQo+ID4gLSNpbmNsdWRlIDx1ay9hcmNoL2FybS9saW1pdHMu
aD4NCj4gPiArI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2FybTMyL2xpbWl0cy5oPg0KPiA+ICAgI2Vu
ZGlmDQo+ID4gICAjaWZkZWYgX19BUk1fNjRfXw0KPiA+IC0jaW5jbHVkZSA8dWsvYXJjaC9hcm02
NC9saW1pdHMuaD4NCj4gPiArI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2FybTY0L2xpbWl0cy5oPg0K
PiA+ICAgI2VuZGlmDQo+ID4NCj4gPiAgICNpZm5kZWYgX19BU1NFTUJMWV9fDQo+ID4NCj4gPiAg
ICNpZmRlZiBfX1g4Nl8zMl9fDQo+ID4gLSNpbmNsdWRlIDx1ay9hcmNoL3g4Ni9pbnRzaXplcy5o
Pg0KPiA+ICsjaW5jbHVkZSA8dWsvYXJjaC94ODYveDg2L2ludHNpemVzLmg+DQo+ID4gICAjZW5k
aWYNCj4gPiAgICNpZmRlZiBfX1g4Nl82NF9fDQo+ID4gLSNpbmNsdWRlIDx1ay9hcmNoL3g4Nl82
NC9pbnRzaXplcy5oPg0KPiA+ICsjaW5jbHVkZSA8dWsvYXJjaC94ODYveDg2XzY0L2ludHNpemVz
Lmg+DQo+ID4gICAjZW5kaWYNCj4gPiAgICNpZmRlZiBfX0FSTV8zMl9fDQo+ID4gLSNpbmNsdWRl
IDx1ay9hcmNoL2FybS9pbnRzaXplcy5oPg0KPiA+ICsjaW5jbHVkZSA8dWsvYXJjaC9hcm0vYXJt
MzIvaW50c2l6ZXMuaD4NCj4gPiAgICNlbmRpZg0KPiA+ICAgI2lmZGVmIF9fQVJNXzY0X18NCj4g
PiAtI2luY2x1ZGUgPHVrL2FyY2gvYXJtNjQvaW50c2l6ZXMuaD4NCj4gPiArI2luY2x1ZGUgPHVr
L2FyY2gvYXJtL2FybTY0L2ludHNpemVzLmg+DQo+ID4gICAjZW5kaWYNCj4gPg0KPiA+ICAgI2lm
IChkZWZpbmVkIF9fQ19JU184KQ0KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gvdHlw
ZXMuaCBiL2luY2x1ZGUvdWsvYXJjaC90eXBlcy5oDQo+ID4gaW5kZXggZThkNzcyNi4uZDJjOGZm
OSAxMDA2NDQNCj4gPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gvdHlwZXMuaA0KPiA+ICsrKyBiL2lu
Y2x1ZGUvdWsvYXJjaC90eXBlcy5oDQo+ID4gQEAgLTQxLDIwICs0MSwyMCBAQCBleHRlcm4gIkMi
IHsNCj4gPiAgICNlbmRpZg0KPiA+DQo+ID4gICAjaWZkZWYgX19YODZfMzJfXw0KPiA+IC0jaW5j
bHVkZSA8dWsvYXJjaC94ODYvaW50c2l6ZXMuaD4NCj4gPiAtI2luY2x1ZGUgPHVrL2FyY2gveDg2
L3R5cGVzLmg+DQo+ID4gKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODYvaW50c2l6ZXMuaD4NCj4g
PiArI2luY2x1ZGUgPHVrL2FyY2gveDg2L3g4Ni90eXBlcy5oPg0KPiA+ICAgI2VuZGlmDQo+ID4g
ICAjaWZkZWYgX19YODZfNjRfXw0KPiA+IC0jaW5jbHVkZSA8dWsvYXJjaC94ODZfNjQvaW50c2l6
ZXMuaD4NCj4gPiAtI2luY2x1ZGUgPHVrL2FyY2gveDg2XzY0L3R5cGVzLmg+DQo+ID4gKyNpbmNs
dWRlIDx1ay9hcmNoL3g4Ni94ODZfNjQvaW50c2l6ZXMuaD4NCj4gPiArI2luY2x1ZGUgPHVrL2Fy
Y2gveDg2L3g4Nl82NC90eXBlcy5oPg0KPiA+ICAgI2VuZGlmDQo+ID4gICAjaWZkZWYgX19BUk1f
MzJfXw0KPiA+IC0jaW5jbHVkZSA8dWsvYXJjaC9hcm0vaW50c2l6ZXMuaD4NCj4gPiAtI2luY2x1
ZGUgPHVrL2FyY2gvYXJtL3R5cGVzLmg+DQo+ID4gKyNpbmNsdWRlIDx1ay9hcmNoL2FybS9hcm0z
Mi9pbnRzaXplcy5oPg0KPiA+ICsjaW5jbHVkZSA8dWsvYXJjaC9hcm0vYXJtMzIvdHlwZXMuaD4N
Cj4gPiAgICNlbmRpZg0KPiA+ICAgI2lmZGVmIF9fQVJNXzY0X18NCj4gPiAtI2luY2x1ZGUgPHVr
L2FyY2gvYXJtNjQvaW50c2l6ZXMuaD4NCj4gPiAtI2luY2x1ZGUgPHVrL2FyY2gvYXJtNjQvdHlw
ZXMuaD4NCj4gPiArI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2FybTY0L2ludHNpemVzLmg+DQo+ID4g
KyNpbmNsdWRlIDx1ay9hcmNoL2FybS9hcm02NC90eXBlcy5oPg0KPiA+ICAgI2VuZGlmDQo+ID4N
Cj4gPiAgICNpZm5kZWYgX19BU1NFTUJMWV9fDQo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsv
YXJjaC94ODYveDg2XzY0L2F0b21pYy5oDQo+IGIvaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQv
YXRvbWljLmgNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAuLjk4
NWMzODgNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvaW5jbHVkZS91ay9hcmNoL3g4Ni94
ODZfNjQvYXRvbWljLmgNCj4gPiBAQCAtMCwwICsxLDQ1IEBADQo+ID4gKy8qIFNQRFgtTGljZW5z
ZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UgKi8NCj4gPiArLyoNCj4gPiArICogUG9ydCBmcm9t
IE1pbmktT1M6IGluY2x1ZGUveDg2L29zLmgNCj4gPiArICovDQo+ID4gKy8qDQo+ID4gKyAqIENv
cHlyaWdodCAoYykgMjAwOSBDaXRyaXggU3lzdGVtcywgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
Lg0KPiA+ICsgKg0KPiA+ICsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQNCj4gPiArICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zDQo+ID4gKyAq
IGFyZSBtZXQ6DQo+ID4gKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0DQo+ID4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4NCj4gPiArICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQNCj4gPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQ0KPiA+ICsgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLg0K
PiA+ICsgKg0KPiA+ICsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUiBBTkQg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQNCj4gPiArICogQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFDQo+ID4gKyAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUg0KPiBQVVJQT1NFDQo+ID4gKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUNCj4gPiArICogRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SDQo+
IENPTlNFUVVFTlRJQUwNCj4gPiArICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMNCj4gPiArICogT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pDQo+ID4gKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwNCj4gU1RSSUNUDQo+ID4gKyAqIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWQ0K
PiBXQVkNCj4gPiArICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRg0KPiA+ICsgKiBTVUNIIERBTUFHRS4NCj4gPiAr
ICovDQo+ID4gKyNpZm5kZWYgX19VS0FSQ0hfQVRPTUlDX0hfXw0KPiA+ICsjZXJyb3IgRG8gbm90
IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkNCj4gPiArI2VuZGlmDQo+ID4gKw0KPiA+ICsv
KioNCj4gPiArICogdWthcmNoX2ZpbmRfbHNiaXQgLSBmaW5kIGZpcnN0IChsb3dlc3QpIHNldCBi
aXQgaW4gd29yZC4NCj4gPiArICogQHdvcmQ6IFRoZSB3b3JkIHRvIHNlYXJjaA0KPiA+ICsgKg0K
PiA+ICsgKiBVbmRlZmluZWQgaWYgbm8gYml0IGV4aXN0cywgc28gY29kZSBzaG91bGQgY2hlY2sg
YWdhaW5zdCAwIGZpcnN0Lg0KPiA+ICsgKi8NCj4gPiArc3RhdGljIGlubGluZSB1bnNpZ25lZCBs
b25nIHVrYXJjaF9maW5kX2xzYml0KHVuc2lnbmVkIGxvbmcgd29yZCkNCj4gPiArew0KPiA+ICsJ
X19hc21fXygiYnNmcSAlMSwlMCINCj4gPiArCQk6Ij1yIiAod29yZCkNCj4gPiArCQk6InJtIiAo
d29yZCkpOw0KPiA+ICsJcmV0dXJuIHdvcmQ7DQo+ID4gK30NCj4gPiBkaWZmIC0tZ2l0IGEvaW5j
bHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvaW50c2l6ZXMuaA0KPiBiL2luY2x1ZGUvdWsvYXJjaC94
ODYveDg2XzY0L2ludHNpemVzLmgNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4
IDAwMDAwMDAuLmUzZWY1MTANCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvaW5jbHVkZS91
ay9hcmNoL3g4Ni94ODZfNjQvaW50c2l6ZXMuaA0KPiA+IEBAIC0wLDAgKzEsNDUgQEANCj4gPiAr
LyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLw0KPiA+ICsvKg0KPiA+
ICsgKiBBdXRob3JzOiBTaW1vbiBLdWVuemVyIDxzaW1vbi5rdWVuemVyQG5lY2xhYi5ldT4NCj4g
PiArICoNCj4gPiArICoNCj4gPiArICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0
ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cw0KPiByZXNlcnZlZC4NCj4gPiArICoNCj4g
PiArICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0DQo+ID4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucw0KPiA+ICsgKiBhcmUgbWV0Og0KPiA+
ICsgKg0KPiA+ICsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodA0KPiA+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuDQo+ID4gKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0DQo+ID4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUNCj4gPiArICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCj4gPiAr
ICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5h
bWVzIG9mIGl0cw0KPiA+ICsgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQ0KPiA+ICsgKiAgICB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLg0KPiA+ICsgKg0K
PiA+ICsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTICJBUw0KPiBJUyINCj4gPiArICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sDQo+IFRI
RQ0KPiA+ICsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVINCj4gUFVSUE9TRQ0KPiA+ICsgKiBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTDQo+
IEJFDQo+ID4gKyAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1INCj4gPiArICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YNCj4gPiArICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTDQo+ID4gKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElODQo+ID4gKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpDQo+ID4gKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YNCj4gVEhFDQo+ID4gKyAqIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLg0KPiA+ICsgKg0KPiA+ICsgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVY
VFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLg0KPiA+ICsgKi8NCj4gPiArDQo+ID4gKyNp
ZiAoKCFkZWZpbmVkIF9fVUtBUkNIX1RZUEVTX0hfXykgJiYgKCFkZWZpbmVkIF9fVUtBUkNIX0xJ
TUlUU19IX18pKQ0KPiA+ICsjZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0
bHkNCj4gPiArI2VuZGlmDQo+ID4gKw0KPiA+ICsjZGVmaW5lIF9fQ19JU184ICAgIC8qIGNoYXIg
Ki8NCj4gPiArI2RlZmluZSBfX1NfSVNfMTYgICAvKiBzaG9ydCAqLw0KPiA+ICsjZGVmaW5lIF9f
SV9JU18zMiAgIC8qIGludCAqLw0KPiA+ICsjZGVmaW5lIF9fTF9JU182NCAgIC8qIGxvbmcgKi8N
Cj4gPiArI2RlZmluZSBfX0xMX0lTXzY0ICAvKiBsb25nIGxvbmcgKi8NCj4gPiArI2RlZmluZSBf
X1BUUl9JU182NCAvKiB2b2lkICogKi8NCj4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNo
L3g4Ni94ODZfNjQvbGNwdS5oDQo+IGIvaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGNwdS5o
DQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwLi5jZDY2N2U1DQo+
ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2luY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2xj
cHUuaA0KPiA+IEBAIC0wLDAgKzEsNzMgQEANCj4gPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZp
ZXI6IEJTRC0yLUNsYXVzZSAqLw0KPiA+ICsvKg0KPiA+ICsgKiBBdXRob3JzOiBHcnplZ29yeiBN
aWxvcyA8Z20yODFAY2FtLmFjLnVrPg0KPiA+ICsgKiAgICAgICAgICBTaW1vbiBLdWVuemVyIDxz
aW1vbi5rdWVuemVyQG5lY2xhYi5ldT4NCj4gPiArICoNCj4gPiArICogQ29weXJpZ2h0IChjKSAy
MDA1LCBHcnplZ29yeiBNaWxvcywgSW50ZWwgUmVzZWFyY2ggQ2FtYnJpZGdlDQo+ID4gKyAqIENv
cHlyaWdodCAoYykgMjAxNywgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uDQo+ID4g
KyAqDQo+ID4gKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dA0KPiA+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMNCj4gPiArICogYXJlIG1l
dDoNCj4gPiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLg0KPiA+ICsgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dA0KPiA+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlDQo+ID4gKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uDQo+ID4gKyAq
DQo+ID4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORA0KPiA+ICsgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUNCj4gPiArICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSDQo+IFBVUlBPU0UNCj4gPiArICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQ0KPiA+ICsgKiBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1INCj4gQ09OU0VR
VUVOVElBTA0KPiA+ICsgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUw0KPiA+ICsgKiBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikNCj4g
PiArICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULA0KPiBTVFJJQ1QNCj4gPiArICogTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZDQo+IFdBWQ0K
PiA+ICsgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GDQo+ID4gKyAqIFNVQ0ggREFNQUdFLg0KPiA+ICsgKi8NCj4g
PiArDQo+ID4gKyNpZm5kZWYgX19VS0FSQ0hfTENQVV9IX18NCj4gPiArI2Vycm9yIERvIG5vdCBp
bmNsdWRlIHRoaXMgaGVhZGVyIGRpcmVjdGx5DQo+ID4gKyNlbmRpZg0KPiA+ICsNCj4gPiArc3Ry
dWN0IF9fcmVncyB7DQo+ID4gKwl1bnNpZ25lZCBsb25nIHIxNTsNCj4gPiArCXVuc2lnbmVkIGxv
bmcgcjE0Ow0KPiA+ICsJdW5zaWduZWQgbG9uZyByMTM7DQo+ID4gKwl1bnNpZ25lZCBsb25nIHIx
MjsNCj4gPiArCXVuc2lnbmVkIGxvbmcgcmJwOw0KPiA+ICsJdW5zaWduZWQgbG9uZyByYng7DQo+
ID4gKy8qIGFyZ3VtZW50czogbm9uIGludGVycnVwdHMvbm9uIHRyYWNpbmcgc3lzY2FsbHMgb25s
eSBzYXZlIHVwdG8gaGVyZSovDQo+ID4gKwl1bnNpZ25lZCBsb25nIHIxMTsNCj4gPiArCXVuc2ln
bmVkIGxvbmcgcjEwOw0KPiA+ICsJdW5zaWduZWQgbG9uZyByOTsNCj4gPiArCXVuc2lnbmVkIGxv
bmcgcjg7DQo+ID4gKwl1bnNpZ25lZCBsb25nIHJheDsNCj4gPiArCXVuc2lnbmVkIGxvbmcgcmN4
Ow0KPiA+ICsJdW5zaWduZWQgbG9uZyByZHg7DQo+ID4gKwl1bnNpZ25lZCBsb25nIHJzaTsNCj4g
PiArCXVuc2lnbmVkIGxvbmcgcmRpOw0KPiA+ICsJdW5zaWduZWQgbG9uZyBvcmlnX3JheDsNCj4g
PiArLyogZW5kIG9mIGFyZ3VtZW50cyAqLw0KPiA+ICsvKiBjcHUgZXhjZXB0aW9uIGZyYW1lIG9y
IHVuZGVmaW5lZCAqLw0KPiA+ICsJdW5zaWduZWQgbG9uZyByaXA7DQo+ID4gKwl1bnNpZ25lZCBs
b25nIGNzOw0KPiA+ICsJdW5zaWduZWQgbG9uZyBlZmxhZ3M7DQo+ID4gKwl1bnNpZ25lZCBsb25n
IHJzcDsNCj4gPiArCXVuc2lnbmVkIGxvbmcgc3M7DQo+ID4gKy8qIHRvcCBvZiBzdGFjayBwYWdl
ICovDQo+ID4gK307DQo+ID4gKw0KPiA+ICsjaWZuZGVmIG1iDQo+ID4gKyNkZWZpbmUgbWIoKSAg
ICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoIm1mZW5jZSIgOiA6IDogIm1lbW9yeSIpDQo+ID4gKyNl
bmRpZg0KPiA+ICsNCj4gPiArI2lmbmRlZiBybWINCj4gPiArI2RlZmluZSBybWIoKSAgIF9fYXNt
X18gX192b2xhdGlsZV9fICgibGZlbmNlIiA6IDogOiAibWVtb3J5IikNCj4gPiArI2VuZGlmDQo+
ID4gKw0KPiA+ICsjaWZuZGVmIHdtYg0KPiA+ICsjZGVmaW5lIHdtYigpICAgX19hc21fXyBfX3Zv
bGF0aWxlX18gKCJzZmVuY2UiIDogOiA6ICJtZW1vcnkiKQ0KPiA+ICsjZW5kaWYNCj4gPiBkaWZm
IC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGltaXRzLmgNCj4gYi9pbmNsdWRl
L3VrL2FyY2gveDg2L3g4Nl82NC9saW1pdHMuaA0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+
ID4gaW5kZXggMDAwMDAwMC4uYTk2OWJkMQ0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9p
bmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9saW1pdHMuaA0KPiA+IEBAIC0wLDAgKzEsNDYgQEAN
Cj4gPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLw0KPiA+ICsv
Kg0KPiA+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMDksIENpdHJpeCBTeXN0ZW1zLCBJbmMuDQo+ID4g
KyAqIENvcHlyaWdodCAoYykgMjAxNywgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24u
DQo+ID4gKyAqDQo+ID4gKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dA0KPiA+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMNCj4gPiArICog
YXJlIG1ldDoNCj4gPiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLg0KPiA+ICsgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodA0KPiA+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlDQo+ID4gKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uDQo+
ID4gKyAqDQo+ID4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBD
T05UUklCVVRPUlMgYGBBUyBJUycnIEFORA0KPiA+ICsgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUNCj4gPiArICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSDQo+IFBVUlBPU0UNCj4gPiArICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVO
VCBTSEFMTCBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQ0KPiA+ICsgKiBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1INCj4g
Q09OU0VRVUVOVElBTA0KPiA+ICsgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUw0KPiA+ICsgKiBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikNCj4gPiArICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULA0KPiBTVFJJQ1QNCj4gPiArICogTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZDQo+
IFdBWQ0KPiA+ICsgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GDQo+ID4gKyAqIFNVQ0ggREFNQUdFLg0KPiA+ICsg
Ki8NCj4gPiArDQo+ID4gKyNpZm5kZWYgX19VS0FSQ0hfTElNSVRTX0hfXw0KPiA+ICsjZXJyb3Ig
RG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkNCj4gPiArI2VuZGlmDQo+ID4gKw0K
PiA+ICsjZGVmaW5lIF9fUEFHRV9TSElGVAkJMTINCj4gPiArDQo+ID4gKyNpZmRlZiBfX0FTU0VN
QkxZX18NCj4gPiArI2RlZmluZSBfX1BBR0VfU0laRQkJKDEgPDwgX19QQUdFX1NISUZUKQ0KPiA+
ICsjZGVmaW5lIF9fUEFHRV9NQVNLCQkofigoX19QQUdFX1NJWkUpIC0gMSkpDQo+ID4gKyNlbHNl
DQo+ID4gKyNkZWZpbmUgX19QQUdFX1NJWkUJCSgxVUxMIDw8IF9fUEFHRV9TSElGVCkNCj4gPiAr
I2RlZmluZSBfX1BBR0VfTUFTSwkJKH4oKF9fUEFHRV9TSVpFKSAtIDEpKQ0KPiA+ICsjZW5kaWYN
Cj4gPiArDQo+ID4gKyNkZWZpbmUgX19TVEFDS19TSVpFX1BBR0VfT1JERVIJNA0KPiA+ICsjZGVm
aW5lIF9fU1RBQ0tfU0laRQkJKF9fUEFHRV9TSVpFICogKDEgPDwgX19TVEFDS19TSVpFX1BBR0Vf
T1JERVIpKQ0KPiA+ICsNCj4gPiArI2RlZmluZSBfX1dPUkRTSVpFCQk2NA0KPiA+ICsjZGVmaW5l
IF9fV09SRFNJWkVfQ09NUEFUMzIJMQ0KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gv
eDg2L3g4Nl82NC90eXBlcy5oDQo+IGIvaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvdHlwZXMu
aA0KPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gaW5kZXggMDAwMDAwMC4uNTU0N2IzNw0K
PiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9pbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC90
eXBlcy5oDQo+ID4gQEAgLTAsMCArMSwzOCBAQA0KPiA+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRp
ZmllcjogTUlUICovDQo+ID4gKy8qDQo+ID4gKyAqIENvcHlyaWdodCAoYykgMjAwMi0yMDAzLCBL
IEEgRnJhc2VyICYgUiBOZXVnZWJhdWVyDQo+ID4gKyAqIENvcHlyaWdodCAoYykgMjAwNSwgR3J6
ZWdvcnogTWlsb3MsIEludGVsIFJlc2VhcmNoIENhbWJyaWRnZQ0KPiA+ICsgKg0KPiA+ICsgKiBQ
ZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNv
biBvYnRhaW5pbmcgYQ0KPiBjb3B5DQo+ID4gKyAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29j
aWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0bw0KPiA+ICsgKiBk
ZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91
dCBsaW1pdGF0aW9uDQo+IHRoZQ0KPiA+ICsgKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnks
IG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLA0KPiBhbmQvb3INCj4gPiAr
ICogc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8g
d2hvbSB0aGUgU29mdHdhcmUNCj4gaXMNCj4gPiArICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJq
ZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoNCj4gPiArICoNCj4gPiArICogVGhlIGFi
b3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUg
aW5jbHVkZWQNCj4gaW4NCj4gPiArICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9u
cyBvZiB0aGUgU29mdHdhcmUuDQo+ID4gKyAqDQo+ID4gKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9W
SURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTDQo+IE9S
DQo+ID4gKyAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLA0KPiA+ICsgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTA0KPiBUSEUN
Cj4gPiArICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBD
TEFJTSwgREFNQUdFUyBPUiBPVEhFUg0KPiA+ICsgKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4g
QUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORw0KPiA+ICsgKiBG
Uk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNF
IE9SIE9USEVSDQo+ID4gKyAqIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4NCj4gPiArICovDQo+
ID4gKw0KPiA+ICsjaWZuZGVmIF9fVUtBUkNIX1RZUEVTX0hfXw0KPiA+ICsjZXJyb3IgRG8gbm90
IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkNCj4gPiArI2VuZGlmDQo+ID4gKw0KPiA+ICsj
aWZuZGVmIF9fQVNTRU1CTFlfXw0KPiA+ICsNCj4gPiArc3RydWN0IF9fcHRlIHsgdW5zaWduZWQg
bG9uZyBwdGU7IH07DQo+ID4gKyNkZWZpbmUgbnB0ZSh4KSAoKHN0cnVjdCBfX3B0ZSkgeyAoeCkg
fSkNCj4gPiArDQo+ID4gKyNkZWZpbmUgX1dPUkQgIi5xdWFkIg0KPiA+ICsNCj4gPiArI2Vsc2UN
Cj4gPiArI2RlZmluZSBfV09SRCAucXVhZA0KPiA+ICsjZW5kaWYgLyogIV9fQVNTRU1CTFlfXyAq
Lw0KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2F0b21pYy5oDQo+IGIv
aW5jbHVkZS91ay9hcmNoL3g4Nl82NC9hdG9taWMuaA0KPiA+IGRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NA0KPiA+IGluZGV4IDk4NWMzODguLjAwMDAwMDANCj4gPiAtLS0gYS9pbmNsdWRlL3VrL2Fy
Y2gveDg2XzY0L2F0b21pYy5oDQo+ID4gKysrIC9kZXYvbnVsbA0KPiA+IEBAIC0xLDQ1ICswLDAg
QEANCj4gPiAtLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLw0KPiA+
IC0vKg0KPiA+IC0gKiBQb3J0IGZyb20gTWluaS1PUzogaW5jbHVkZS94ODYvb3MuaA0KPiA+IC0g
Ki8NCj4gPiAtLyoNCj4gPiAtICogQ29weXJpZ2h0IChjKSAyMDA5IENpdHJpeCBTeXN0ZW1zLCBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQo+ID4gLSAqDQo+ID4gLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dA0KPiA+
IC0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMNCj4gPiAtICogYXJlIG1ldDoNCj4gPiAtICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQNCj4gPiAt
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLg0KPiA+IC0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodA0KPiA+IC0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlDQo+
ID4gLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uDQo+ID4gLSAqDQo+ID4gLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORA0KPiA+IC0g
KiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUNCj4gPiAtICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSDQo+IFBVUlBPU0UNCj4gPiAtICogQVJF
IERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRQ0KPiA+IC0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1INCj4gQ09OU0VRVUVOVElBTA0KPiA+IC0gKiBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUw0KPiA+IC0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikNCj4gPiAtICogSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULA0KPiBTVFJJQ1QN
Cj4gPiAtICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZDQo+IFdBWQ0KPiA+IC0gKiBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GDQo+ID4g
LSAqIFNVQ0ggREFNQUdFLg0KPiA+IC0gKi8NCj4gPiAtI2lmbmRlZiBfX1VLQVJDSF9BVE9NSUNf
SF9fDQo+ID4gLSNlcnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQ0KPiA+
IC0jZW5kaWYNCj4gPiAtDQo+ID4gLS8qKg0KPiA+IC0gKiB1a2FyY2hfZmluZF9sc2JpdCAtIGZp
bmQgZmlyc3QgKGxvd2VzdCkgc2V0IGJpdCBpbiB3b3JkLg0KPiA+IC0gKiBAd29yZDogVGhlIHdv
cmQgdG8gc2VhcmNoDQo+ID4gLSAqDQo+ID4gLSAqIFVuZGVmaW5lZCBpZiBubyBiaXQgZXhpc3Rz
LCBzbyBjb2RlIHNob3VsZCBjaGVjayBhZ2FpbnN0IDAgZmlyc3QuDQo+ID4gLSAqLw0KPiA+IC1z
dGF0aWMgaW5saW5lIHVuc2lnbmVkIGxvbmcgdWthcmNoX2ZpbmRfbHNiaXQodW5zaWduZWQgbG9u
ZyB3b3JkKQ0KPiA+IC17DQo+ID4gLQlfX2FzbV9fKCJic2ZxICUxLCUwIg0KPiA+IC0JCToiPXIi
ICh3b3JkKQ0KPiA+IC0JCToicm0iICh3b3JkKSk7DQo+ID4gLQlyZXR1cm4gd29yZDsNCj4gPiAt
fQ0KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2ludHNpemVzLmgNCj4g
Yi9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2ludHNpemVzLmgNCj4gPiBkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQNCj4gPiBpbmRleCBlM2VmNTEwLi4wMDAwMDAwDQo+ID4gLS0tIGEvaW5jbHVkZS91
ay9hcmNoL3g4Nl82NC9pbnRzaXplcy5oDQo+ID4gKysrIC9kZXYvbnVsbA0KPiA+IEBAIC0xLDQ1
ICswLDAgQEANCj4gPiAtLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAq
Lw0KPiA+IC0vKg0KPiA+IC0gKiBBdXRob3JzOiBTaW1vbiBLdWVuemVyIDxzaW1vbi5rdWVuemVy
QG5lY2xhYi5ldT4NCj4gPiAtICoNCj4gPiAtICoNCj4gPiAtICogQ29weXJpZ2h0IChjKSAyMDE3
LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cw0KPiByZXNlcnZl
ZC4NCj4gPiAtICoNCj4gPiAtICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0DQo+ID4gLSAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucw0KPiA+IC0g
KiBhcmUgbWV0Og0KPiA+IC0gKg0KPiA+IC0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodA0KPiA+IC0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuDQo+
ID4gLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0DQo+ID4gLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUNCj4gPiAtICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4NCj4gPiAtICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhv
bGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cw0KPiA+IC0gKiAgICBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQ0KPiA+IC0g
KiAgICB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNz
aW9uLg0KPiA+IC0gKg0KPiA+IC0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUw0KPiBJUyINCj4gPiAtICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sDQo+IFRIRQ0KPiA+IC0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVINCj4gUFVSUE9TRQ0KPiA+IC0gKiBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1Ig
Q09OVFJJQlVUT1JTDQo+IEJFDQo+ID4gLSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1INCj4gPiAtICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YNCj4gPiAtICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTDQo+ID4gLSAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElODQo+ID4g
LSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpDQo+ID4gLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YNCj4gVEhFDQo+ID4gLSAq
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLg0KPiA+IC0gKg0KPiA+IC0gKiBUSElTIEhFQURF
UiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLg0KPiA+IC0gKi8N
Cj4gPiAtDQo+ID4gLSNpZiAoKCFkZWZpbmVkIF9fVUtBUkNIX1RZUEVTX0hfXykgJiYgKCFkZWZp
bmVkIF9fVUtBUkNIX0xJTUlUU19IX18pKQ0KPiA+IC0jZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhp
cyBoZWFkZXIgZGlyZWN0bHkNCj4gPiAtI2VuZGlmDQo+ID4gLQ0KPiA+IC0jZGVmaW5lIF9fQ19J
U184ICAgIC8qIGNoYXIgKi8NCj4gPiAtI2RlZmluZSBfX1NfSVNfMTYgICAvKiBzaG9ydCAqLw0K
PiA+IC0jZGVmaW5lIF9fSV9JU18zMiAgIC8qIGludCAqLw0KPiA+IC0jZGVmaW5lIF9fTF9JU182
NCAgIC8qIGxvbmcgKi8NCj4gPiAtI2RlZmluZSBfX0xMX0lTXzY0ICAvKiBsb25nIGxvbmcgKi8N
Cj4gPiAtI2RlZmluZSBfX1BUUl9JU182NCAvKiB2b2lkICogKi8NCj4gPiBkaWZmIC0tZ2l0IGEv
aW5jbHVkZS91ay9hcmNoL3g4Nl82NC9sY3B1LmggYi9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xj
cHUuaA0KPiA+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IGNkNjY3ZTUuLjAw
MDAwMDANCj4gPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaA0KPiA+ICsrKyAv
ZGV2L251bGwNCj4gPiBAQCAtMSw3MyArMCwwIEBADQo+ID4gLS8qIFNQRFgtTGljZW5zZS1JZGVu
dGlmaWVyOiBCU0QtMi1DbGF1c2UgKi8NCj4gPiAtLyoNCj4gPiAtICogQXV0aG9yczogR3J6ZWdv
cnogTWlsb3MgPGdtMjgxQGNhbS5hYy51az4NCj4gPiAtICogICAgICAgICAgU2ltb24gS3Vlbnpl
ciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+DQo+ID4gLSAqDQo+ID4gLSAqIENvcHlyaWdodCAo
YykgMjAwNSwgR3J6ZWdvcnogTWlsb3MsIEludGVsIFJlc2VhcmNoIENhbWJyaWRnZQ0KPiA+IC0g
KiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uLg0K
PiA+IC0gKg0KPiA+IC0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQNCj4gPiAtICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zDQo+ID4gLSAqIGFy
ZSBtZXQ6DQo+ID4gLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0DQo+ID4gLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4NCj4gPiAtICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQNCj4gPiAtICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQ0KPiA+IC0gKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLg0KPiA+
IC0gKg0KPiA+IC0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUiBBTkQgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQNCj4gPiAtICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFDQo+ID4gLSAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUg0KPiBQVVJQT1NFDQo+ID4gLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUNCj4gPiAtICogRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SDQo+IENP
TlNFUVVFTlRJQUwNCj4gPiAtICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMNCj4gPiAtICogT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
DQo+ID4gLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwNCj4gU1RSSUNUDQo+ID4gLSAqIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWQ0KPiBX
QVkNCj4gPiAtICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRg0KPiA+IC0gKiBTVUNIIERBTUFHRS4NCj4gPiAtICov
DQo+ID4gLQ0KPiA+IC0jaWZuZGVmIF9fVUtBUkNIX0xDUFVfSF9fDQo+ID4gLSNlcnJvciBEbyBu
b3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQ0KPiA+IC0jZW5kaWYNCj4gPiAtDQo+ID4g
LXN0cnVjdCBfX3JlZ3Mgew0KPiA+IC0JdW5zaWduZWQgbG9uZyByMTU7DQo+ID4gLQl1bnNpZ25l
ZCBsb25nIHIxNDsNCj4gPiAtCXVuc2lnbmVkIGxvbmcgcjEzOw0KPiA+IC0JdW5zaWduZWQgbG9u
ZyByMTI7DQo+ID4gLQl1bnNpZ25lZCBsb25nIHJicDsNCj4gPiAtCXVuc2lnbmVkIGxvbmcgcmJ4
Ow0KPiA+IC0vKiBhcmd1bWVudHM6IG5vbiBpbnRlcnJ1cHRzL25vbiB0cmFjaW5nIHN5c2NhbGxz
IG9ubHkgc2F2ZSB1cHRvIGhlcmUqLw0KPiA+IC0JdW5zaWduZWQgbG9uZyByMTE7DQo+ID4gLQl1
bnNpZ25lZCBsb25nIHIxMDsNCj4gPiAtCXVuc2lnbmVkIGxvbmcgcjk7DQo+ID4gLQl1bnNpZ25l
ZCBsb25nIHI4Ow0KPiA+IC0JdW5zaWduZWQgbG9uZyByYXg7DQo+ID4gLQl1bnNpZ25lZCBsb25n
IHJjeDsNCj4gPiAtCXVuc2lnbmVkIGxvbmcgcmR4Ow0KPiA+IC0JdW5zaWduZWQgbG9uZyByc2k7
DQo+ID4gLQl1bnNpZ25lZCBsb25nIHJkaTsNCj4gPiAtCXVuc2lnbmVkIGxvbmcgb3JpZ19yYXg7
DQo+ID4gLS8qIGVuZCBvZiBhcmd1bWVudHMgKi8NCj4gPiAtLyogY3B1IGV4Y2VwdGlvbiBmcmFt
ZSBvciB1bmRlZmluZWQgKi8NCj4gPiAtCXVuc2lnbmVkIGxvbmcgcmlwOw0KPiA+IC0JdW5zaWdu
ZWQgbG9uZyBjczsNCj4gPiAtCXVuc2lnbmVkIGxvbmcgZWZsYWdzOw0KPiA+IC0JdW5zaWduZWQg
bG9uZyByc3A7DQo+ID4gLQl1bnNpZ25lZCBsb25nIHNzOw0KPiA+IC0vKiB0b3Agb2Ygc3RhY2sg
cGFnZSAqLw0KPiA+IC19Ow0KPiA+IC0NCj4gPiAtI2lmbmRlZiBtYg0KPiA+IC0jZGVmaW5lIG1i
KCkgICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCJtZmVuY2UiIDogOiA6ICJtZW1vcnkiKQ0KPiA+
IC0jZW5kaWYNCj4gPiAtDQo+ID4gLSNpZm5kZWYgcm1iDQo+ID4gLSNkZWZpbmUgcm1iKCkgICBf
X2FzbV9fIF9fdm9sYXRpbGVfXyAoImxmZW5jZSIgOiA6IDogIm1lbW9yeSIpDQo+ID4gLSNlbmRp
Zg0KPiA+IC0NCj4gPiAtI2lmbmRlZiB3bWINCj4gPiAtI2RlZmluZSB3bWIoKSAgIF9fYXNtX18g
X192b2xhdGlsZV9fICgic2ZlbmNlIiA6IDogOiAibWVtb3J5IikNCj4gPiAtI2VuZGlmDQo+ID4g
ZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGltaXRzLmgNCj4gYi9pbmNsdWRl
L3VrL2FyY2gveDg2XzY0L2xpbWl0cy5oDQo+ID4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0DQo+
ID4gaW5kZXggYTk2OWJkMS4uMDAwMDAwMA0KPiA+IC0tLSBhL2luY2x1ZGUvdWsvYXJjaC94ODZf
NjQvbGltaXRzLmgNCj4gPiArKysgL2Rldi9udWxsDQo+ID4gQEAgLTEsNDYgKzAsMCBAQA0KPiA+
IC0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovDQo+ID4gLS8qDQo+
ID4gLSAqIENvcHlyaWdodCAoYykgMjAwOSwgQ2l0cml4IFN5c3RlbXMsIEluYy4NCj4gPiAtICog
Q29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4NCj4g
PiAtICoNCj4gPiAtICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0DQo+ID4gLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucw0KPiA+IC0gKiBhcmUg
bWV0Og0KPiA+IC0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodA0KPiA+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuDQo+ID4gLSAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0DQo+ID4gLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUNCj4gPiAtICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCj4gPiAt
ICoNCj4gPiAtICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBVVRIT1IgQU5EIENPTlRS
SUJVVE9SUyBgYEFTIElTJycgQU5EDQo+ID4gLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQ0KPiA+IC0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVINCj4gUFVSUE9TRQ0KPiA+IC0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNI
QUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFDQo+ID4gLSAqIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUg0KPiBDT05T
RVFVRU5USUFMDQo+ID4gLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTDQo+ID4gLSAqIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQ0K
PiA+IC0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsDQo+IFNUUklDVA0KPiA+IC0gKiBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkNCj4gV0FZ
DQo+ID4gLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YNCj4gPiAtICogU1VDSCBEQU1BR0UuDQo+ID4gLSAqLw0K
PiA+IC0NCj4gPiAtI2lmbmRlZiBfX1VLQVJDSF9MSU1JVFNfSF9fDQo+ID4gLSNlcnJvciBEbyBu
b3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQ0KPiA+IC0jZW5kaWYNCj4gPiAtDQo+ID4g
LSNkZWZpbmUgX19QQUdFX1NISUZUCQkxMg0KPiA+IC0NCj4gPiAtI2lmZGVmIF9fQVNTRU1CTFlf
Xw0KPiA+IC0jZGVmaW5lIF9fUEFHRV9TSVpFCQkoMSA8PCBfX1BBR0VfU0hJRlQpDQo+ID4gLSNk
ZWZpbmUgX19QQUdFX01BU0sJCSh+KChfX1BBR0VfU0laRSkgLSAxKSkNCj4gPiAtI2Vsc2UNCj4g
PiAtI2RlZmluZSBfX1BBR0VfU0laRQkJKDFVTEwgPDwgX19QQUdFX1NISUZUKQ0KPiA+IC0jZGVm
aW5lIF9fUEFHRV9NQVNLCQkofigoX19QQUdFX1NJWkUpIC0gMSkpDQo+ID4gLSNlbmRpZg0KPiA+
IC0NCj4gPiAtI2RlZmluZSBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUgk0DQo+ID4gLSNkZWZpbmUg
X19TVEFDS19TSVpFCQkoX19QQUdFX1NJWkUgKiAoMSA8PCBfX1NUQUNLX1NJWkVfUEFHRV9PUkRF
UikpDQo+ID4gLQ0KPiA+IC0jZGVmaW5lIF9fV09SRFNJWkUJCTY0DQo+ID4gLSNkZWZpbmUgX19X
T1JEU0laRV9DT01QQVQzMgkxDQo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODZf
NjQvdHlwZXMuaCBiL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvdHlwZXMuaA0KPiA+IGRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDU1NDdiMzcuLjAwMDAwMDANCj4gPiAtLS0gYS9p
bmNsdWRlL3VrL2FyY2gveDg2XzY0L3R5cGVzLmgNCj4gPiArKysgL2Rldi9udWxsDQo+ID4gQEAg
LTEsMzggKzAsMCBAQA0KPiA+IC0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUICovDQo+
ID4gLS8qDQo+ID4gLSAqIENvcHlyaWdodCAoYykgMjAwMi0yMDAzLCBLIEEgRnJhc2VyICYgUiBO
ZXVnZWJhdWVyDQo+ID4gLSAqIENvcHlyaWdodCAoYykgMjAwNSwgR3J6ZWdvcnogTWlsb3MsIElu
dGVsIFJlc2VhcmNoIENhbWJyaWRnZQ0KPiA+IC0gKg0KPiA+IC0gKiBQZXJtaXNzaW9uIGlzIGhl
cmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQ0K
PiBjb3B5DQo+ID4gLSAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRh
dGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0bw0KPiA+IC0gKiBkZWFsIGluIHRoZSBTb2Z0
d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uDQo+
IHRoZQ0KPiA+IC0gKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNo
LCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLA0KPiBhbmQvb3INCj4gPiAtICogc2VsbCBjb3BpZXMg
b2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdh
cmUNCj4gaXMNCj4gPiAtICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9uczoNCj4gPiAtICoNCj4gPiAtICogVGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQNCj4gaW4N
Cj4gPiAtICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdh
cmUuDQo+ID4gLSAqDQo+ID4gLSAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBX
SVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTDQo+IE9SDQo+ID4gLSAqIElNUExJ
RUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZLA0KPiA+IC0gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQg
Tk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTA0KPiBUSEUNCj4gPiAtICogQVVUSE9S
UyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBP
UiBPVEhFUg0KPiA+IC0gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRS
QUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORw0KPiA+IC0gKiBGUk9NLCBPVVQgT0YgT1Ig
SU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSDQo+ID4g
LSAqIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4NCj4gPiAtICovDQo+ID4gLQ0KPiA+IC0jaWZu
ZGVmIF9fVUtBUkNIX1RZUEVTX0hfXw0KPiA+IC0jZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBo
ZWFkZXIgZGlyZWN0bHkNCj4gPiAtI2VuZGlmDQo+ID4gLQ0KPiA+IC0jaWZuZGVmIF9fQVNTRU1C
TFlfXw0KPiA+IC0NCj4gPiAtc3RydWN0IF9fcHRlIHsgdW5zaWduZWQgbG9uZyBwdGU7IH07DQo+
ID4gLSNkZWZpbmUgbnB0ZSh4KSAoKHN0cnVjdCBfX3B0ZSkgeyAoeCkgfSkNCj4gPiAtDQo+ID4g
LSNkZWZpbmUgX1dPUkQgIi5xdWFkIg0KPiA+IC0NCj4gPiAtI2Vsc2UNCj4gPiAtI2RlZmluZSBf
V09SRCAucXVhZA0KPiA+IC0jZW5kaWYgLyogIV9fQVNTRU1CTFlfXyAqLw0KPiA+DQpfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFp
bGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3Rz
LnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 09 08:08:37 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 09 Apr 2018 08:08:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f5Rqu-00028B-9O; Mon, 09 Apr 2018 08:08:36 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=sv3z=g6=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f5Rqs-000286-NX
 for minios-devel@lists.xenproject.org; Mon, 09 Apr 2018 08:08:34 +0000
X-Inumbo-ID: 1777caa7-3bcd-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::624])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 1777caa7-3bcd-11e8-9728-bc764e045a96;
 Mon, 09 Apr 2018 10:07:48 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=50G6X44TUJfZoTw5VBt+D1jyfXNL7bRshLrnASnRAd0=;
 b=I+wIQufeTidXMkr6xNP0Mdww4SoK4YEZl9TdaR7Jdk1yfytZtzJcwtk5cjInBrClFrq72Z6280REgxSbnosMahKkRXOMdVDIRNDFvAe358H2DeLuqB5lmBKkSmzOqGkgX9h/U+B5rWLf8CjORC+qaMzC0EZUeJ4fKYgw8v7cLWo=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0139.eurprd08.prod.outlook.com (10.161.57.27) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.653.12; Mon, 9 Apr 2018 08:08:27 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0653.014; Mon, 9 Apr 2018
 08:08:27 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>,
 "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Thread-Topic: [UNIKRAFT PATCH 5/9] build: Add a makefile rule to check valid
 gcc version
Thread-Index: AQHTvA9F0fnfMiwCWUqYQf57vri9QqPxRKkAgAb2AkA=
Date: Mon, 9 Apr 2018 08:08:26 +0000
Message-ID: <DB3PR08MB0107A772F03310B07D037A8F9EBF0@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-6-git-send-email-Wei.Chen@arm.com>
 <92c97498-6c6e-5256-e292-6a0e902162c2@neclab.eu>
In-Reply-To: <92c97498-6c6e-5256-e292-6a0e902162c2@neclab.eu>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0139;
 7:wLUib4wcgdbKGMUx8SxHfSmYFA/w0+Ooz/eWhsj/DvO3nRqAkA5yRaJc6aSrBJrzuYZ78ksM6i431MOwEm24PkiBljbRfY4if5PpEvJG8f/KTVQXIvMlYP+qGZfRE+xzAREapGhR1ttI+co7MCJXOJQUfM/LGYYyrnWY4QTwiBECZWOwc5i3XFrAz+JoSQ1PjvxNNrRcOpfzKCJomdw9yyxQFvuhZCGVLQJLQiVJ1HE3SVQ4pbH/Cvaur/2qsTgK
x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR;
x-ms-office365-filtering-ht: Tenant
X-MS-Office365-Filtering-Correlation-Id: 78e8369c-0887-4976-bcae-08d59df112c6
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0139; 
x-ms-traffictypediagnostic: DB3PR08MB0139:
nodisclaimer: True
x-microsoft-antispam-prvs: <DB3PR08MB0139076E89F1722B271697F29EBF0@DB3PR08MB0139.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(180628864354917)(58134797142442);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231221)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123562045)(20161123564045)(20161123560045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0139; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0139; 
x-forefront-prvs: 0637FCE711
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(39380400002)(39850400004)(396003)(366004)(346002)(376002)(13464003)(189003)(199004)(55236004)(53546011)(6506007)(59450400001)(76176011)(2501003)(6436002)(7696005)(5250100002)(33656002)(486006)(99286004)(55016002)(105586002)(6116002)(3846002)(2906002)(9686003)(2900100001)(11346002)(446003)(54906003)(476003)(110136005)(478600001)(74316002)(186003)(316002)(26005)(102836004)(86362001)(68736007)(8676002)(8936002)(81166006)(5660300001)(53936002)(7736002)(14454004)(81156014)(4326008)(106356001)(3280700002)(3660700001)(66066001)(72206003)(305945005)(97736004)(25786009)(229853002)(6246003)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0139;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; MX:1; A:1; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: gJIOdCyuLQn0rs7rLkLjoASFIR2Yx1C827FZjH8oeYpa1QFDRRIPU4lJhCcQ7/eHfnOMdl9rTFIY3xiV/HWW6G1vTdtFy0Ijqnz/GXUro0CWEQiMYiN1bItsedFTmNPXtZ1LjWOWyyN+PDJJT37l73bowuAPpJFd6FpGsZFMkwQlbp62tQioqiX8926f/EiS1LiQqxem59TtNOF7NLktML2kuUXhCky9loN2AUgHbrFnCduj+joHidOll+OP+TWQy0ouvItDqOnK2IVeYSWdAtWNSALyMFx018d6mFuxc3jFtBYE9jXEIKaV2KrUZ+ygQJAePEFDxGyFSKtAOgU6Y48jYmm3NVGAIIgqDy3/C/+KblvnTzQXWdQ+LZgNWsk0TDdphKc+8LIkDQDtqX4XnVQ7f/vAygeTrWAWZb1wb3A=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 78e8369c-0887-4976-bcae-08d59df112c6
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2018 08:08:26.8767 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0139
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 5/9] build: Add a makefile rule
 to check valid gcc version
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: Shijie Huang <Shijie.Huang@arm.com>, Kaly Xin <Kaly.Xin@arm.com>,
 nd <nd@arm.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogU2ltb24g
S3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+DQo+IFNlbnQ6IDIwMTjlubQ05pyINeaX
pSA1OjQ3DQo+IFRvOiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT47IG1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBDYzogU2hpamllIEh1YW5nIDxTaGlqaWUuSHVhbmdAYXJt
LmNvbT47IEthbHkgWGluIDxLYWx5LlhpbkBhcm0uY29tPjsgbmQNCj4gPG5kQGFybS5jb20+DQo+
IFN1YmplY3Q6IFJlOiBbVU5JS1JBRlQgUEFUQ0ggNS85XSBidWlsZDogQWRkIGEgbWFrZWZpbGUg
cnVsZSB0byBjaGVjayB2YWxpZA0KPiBnY2MgdmVyc2lvbg0KPiANCj4gT24gMTUuMDMuMjAxOCAw
NDozOSwgV2VpIENoZW4gd3JvdGU6DQo+ID4gRGlmZmVyZW50IEdDQyB2ZXJzaW9ucyBzdXBwb3J0
IGRpZmZlcmVudCBtYXJjaCwgbWNwdSBhbmQgbXR1bmUgbGlzdC4NCj4gPiBJbiBvcmRlciB0byBh
dm9pZCB1c2VycyB0byBzZWxlY3QgdW5zdXBwb3J0ZWQgb3B0aW1pemF0aW9uIHByb2Nlc3Nvcg0K
PiA+IGZvciB0aGUgR0NDIHRoZXkgdXNlZC4gV2UgYWRkIHRoaXMgY2hlY2tfdmFsaWRfZ2NjX3Zl
cnNpb24gcnVsZSB0bw0KPiA+IGNoZWNrIEdDQyB2ZXJzaW9uIGFuZCBwcm92aWRlIHRoZSBtaW5p
bXVtIHZlcnNpb24gZm9yIHVzZXIgc2VsZWN0ZWQNCj4gPiBwcm9jZXNzb3IuDQo+ID4NCj4gPiBT
aWduZWQtb2ZmLWJ5OiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT4NCj4gPiAtLS0NCj4gPiAg
IE1ha2VmaWxlICAgICAgICAgICAgICAgICAgICAgfCA0ICsrKysNCj4gPiAgIHN1cHBvcnQvYnVp
bGQvTWFrZWZpbGUucnVsZXMgfCA4ICsrKysrKysrDQo+ID4gICAyIGZpbGVzIGNoYW5nZWQsIDEy
IGluc2VydGlvbnMoKykNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9NYWtlZmlsZSBiL01ha2VmaWxl
DQo+ID4gaW5kZXggNDllNTA3MC4uOTk3YTM1OSAxMDA2NDQNCj4gPiAtLS0gYS9NYWtlZmlsZQ0K
PiA+ICsrKyBiL01ha2VmaWxlDQo+ID4gQEAgLTQyNiw2ICs0MjYsMTAgQEAgTElGVE9GRgkJOj0g
bGlmdG9mZiAtZSAtcw0KPiA+ICAgb3ZlcnJpZGUgQVJGTEFHUzo9IHJjcw0KPiA+ICAgQ0NfVkVS
U0lPTgk6PSAkKHNoZWxsICQoQ0MpIC0tdmVyc2lvbiB8IFwNCj4gPiAgIAkJICAgc2VkIC1uIC1y
ICdzL14uKiAoWzAtOV0qKVwuKFswLTldKilcLihbMC05XSopWyBdKi4qL1wxLlwyL3AnKQ0KPiA+
ICsjIFJldHJpZXZlIEdDQyBtYWpvciBhbmQgbWlub3IgbnVtYmVyIGZyb20gQ0NfVkVSU0lPTi4g
VGhleSB3b3VsZCBiZSB1c2VkDQo+ID4gKyMgdG8gc2VsZWN0IGNvcnJlY3Qgb3B0aW1pemF0aW9u
IHBhcmFtZXRlcnMgZm9yIHRhcmdldCBDUFVzLg0KPiA+ICtDQ19WRVJfTUFKT1IgICA6PSAkKHdv
cmQgMSwkKHN1YnN0IC4sICwkKENDX1ZFUlNJT04pKSkNCj4gPiArQ0NfVkVSX01JTk9SICAgOj0g
JCh3b3JkIDIsJChzdWJzdCAuLCAsJChDQ19WRVJTSU9OKSkpDQo+ID4NCj4gPiAgIEFTRkxBR1MJ
CSs9IC1EQ0NfVkVSU0lPTj0kKENDX1ZFUlNJT04pDQo+ID4gICBDRkxBR1MJCSs9IC1EQ0NfVkVS
U0lPTj0kKENDX1ZFUlNJT04pDQo+ID4gZGlmZiAtLWdpdCBhL3N1cHBvcnQvYnVpbGQvTWFrZWZp
bGUucnVsZXMgYi9zdXBwb3J0L2J1aWxkL01ha2VmaWxlLnJ1bGVzDQo+ID4gaW5kZXggZTRhYzI2
NC4uZTUxZjkwMiAxMDA2NDQNCj4gPiAtLS0gYS9zdXBwb3J0L2J1aWxkL01ha2VmaWxlLnJ1bGVz
DQo+ID4gKysrIGIvc3VwcG9ydC9idWlsZC9NYWtlZmlsZS5ydWxlcw0KPiA+IEBAIC0yOSw2ICsy
OSwxNCBAQCBsYyA9ICQoc3Vic3QgQSxhLCQoc3Vic3QgQixiLCQoc3Vic3QgQyxjLCQoc3Vic3QN
Cj4gRCxkLCQoc3Vic3QgRSxlLCQoc3Vic3QgRixmLCQocw0KPiA+ICAgIyB1cHBlciBjYXNlDQo+
ID4gICB1YyA9ICQoc3Vic3QgYSxBLCQoc3Vic3QgYixCLCQoc3Vic3QgYyxDLCQoc3Vic3QgZCxE
LCQoc3Vic3QgZSxFLCQoc3Vic3QNCj4gZixGLCQoc3Vic3QgZyxHLCQoc3Vic3QgaCxILCQoc3Vi
c3QgaSxJLCQoc3Vic3QgaixKLCQoc3Vic3QgayxLLCQoc3Vic3QNCj4gbCxMLCQoc3Vic3QgbSxN
LCQoc3Vic3QgbixOLCQoc3Vic3QgbyxPLCQoc3Vic3QgcCxQLCQoc3Vic3QgcSxRLCQoc3Vic3QN
Cj4gcixSLCQoc3Vic3QgcyxTLCQoc3Vic3QgdCxULCQoc3Vic3QgdSxVLCQoc3Vic3QgdixWLCQo
c3Vic3QgdyxXLCQoc3Vic3QNCj4geCxYLCQoc3Vic3QgeSxZLCQoc3Vic3QgeixaLCQoMSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKQ0KPiA+DQo+ID4gKyMgY2hlY2sgd2hldGhlciB0aGUgR0ND
IG1lZXRzIHRoZSBtaW5pbXVtIHZlcnNpb24gcmVxdWlyZW1lbnQNCj4gPiArIyAkKDEpOiBUaGUg
bWluaW11bSBHQ0MgbWFqb3IgbnVtYmVyDQo+ID4gKyMgJCgyKTogVGhlIG1pbmltdW0gR0NDIG1p
bm9yIG51bWJlcg0KPiA+ICsjICQoMyk6IFRoZSBvcHRpbWl6YXRpb24gdGFyZ2V0IENQVQ0KPiA+
ICtkZWZpbmUgY2hlY2tfdmFsaWRfZ2NjX3ZlcnNpb24gPQ0KPiA+ICskKGlmICQoc2hlbGwgdGVz
dCAkKENDX1ZFUl9NQUpPUikgLWd0ICQoMSkgLW8gJygnICQoQ0NfVkVSX01BSk9SKSAtZXEgJCgx
KQ0KPiAtYSAkKENDX1ZFUl9NSU5PUikgLWdlICQoMikgJyknICYmIGVjaG8geSksLFwNCj4gPiAr
ICAgICAkKGVycm9yIE9wdGltaXphdGlvbiBmb3IgJCgzKSByZXF1aXJlcyBHQ0MgdmVyc2lvbiA+
PSAkKDEpLiQoMikpKQ0KPiA+ICtlbmRlZg0KPiANCj4gSHVtLCBJIHRoaW5rIHRoaXMgY291bGQg
YmUgdXNlZnVsIHRvIGEgbG90IG9mIG90aGVyIHBsYWNlcyBpbiBVbmlrcmFmdC4NCj4gQnV0IGZv
ciB0aGlzIHdlIHNob3VsZCBkbyBhIHNwbGl0LiBPbmUgZGVmaW5pdGlvbiBzaG91bGQganVzdCBk
byB0aGUNCj4gdGVzdCBzbyB0aGF0IHRoZSByZXN1bHQgY291bGQgYmUgdXNlZCBmb3IgaWYgc3Rh
dGVtZW50cy4NCj4gSSB3b3VsZCBjYWxsIHRoaXMgb25lICd0ZXN0X2djY192ZXJzaW9uJy4NCj4g
DQoNClRoYXQncyBhIGdvb2QgaWRlYSEgSSB3b3VsZCBzcGxpdCBpdC4NCg0KPiBZb3VycyBzaG91
bGQgdXNlICd0ZXN0X2djY192ZXJzaW9uJywgYW5kIHVzZSAkKGVycm9yICkgaWYgR0NDIGlzIHRv
bw0KPiBvbGQuIEkgd291bGQgYWxzbyB0aGUgbm90IHRhbGsgYWJvdXQgb3B0aW1pemF0aW9uIGlu
IHRoZSBlcnJvciBtZXNzYWdlLg0KPiBZb3UgY291bGQgdHJlYXQgJCgzKSBhcyBvcHRpb25hbCBh
cmd1bWVudCBvciBldmVuIHJlbW92ZSBpdC4NCj4gDQo+IEhvdyBhYm91dCBzb21ldGhpbmcgbGlr
ZSB0aGlzOg0KPiANCj4gUmVxdWlyZSBHQ0MgdmVyc2lvbiA+PSAkKDEpLiQoMikgKGZvdW5kICQo
Q0NfVkVSX01BSk9SKS4kKENDX1ZFUl9NSU5PUikpDQo+IA0KDQpZZXMsIGl0IHNlZW1zIG11Y2gg
YmV0dGVyIHRoYW4gaXQgd2FzLiBJIHdvdWxkIGRvIGl0IGluIHYyDQoNCj4gPg0KPiA+DQo+ICMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIw0KPiAjIw0KPiA+ICAgIw0KPiA+DQpfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0
Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2pl
Y3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 09 08:30:28 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 09 Apr 2018 08:30:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f5SC3-0004IR-RO; Mon, 09 Apr 2018 08:30:27 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=sv3z=g6=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f5SC2-0004II-8c
 for minios-devel@lists.xenproject.org; Mon, 09 Apr 2018 08:30:26 +0000
X-Inumbo-ID: 740ab084-3bd0-11e8-8249-2fda3a446a53
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [104.47.1.70]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 740ab084-3bd0-11e8-8249-2fda3a446a53;
 Mon, 09 Apr 2018 08:31:52 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=uPg6sB6CG4D8cu3x514FXewzMJjR5uGM9rDA7a3DhJw=;
 b=mpnUNBVgc8wGmorRaTTKiBlYoX/6g26jSTNBPVSfNFM7oC49prKvR79UPB6s99AYMk2b7yhtePZbVKLM0uloOqBGcJoDO1gCn6FhsdUeiedI3VopGwlkoWD4f/PVcb5aZdWnBrKPSzCsk7EAPfU83XF6kGCZEH+4EoLt+i3GBf4=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0124.eurprd08.prod.outlook.com (10.161.56.26) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.631.10; Mon, 9 Apr 2018 08:30:17 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0653.014; Mon, 9 Apr 2018
 08:30:17 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>,
 "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Thread-Topic: [UNIKRAFT PATCH 6/9] build: Add arm64 architecture config to
 menuconfig
Thread-Index: AQHTvA9Ii0LMOv1nuEWeSL/76jvsQaPxRYOAgAb3sKA=
Date: Mon, 9 Apr 2018 08:30:17 +0000
Message-ID: <DB3PR08MB01070E9C289DEF93DE45AB409EBF0@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-7-git-send-email-Wei.Chen@arm.com>
 <e72fdd16-25e4-9a3b-3ec5-a44dd08f49c4@neclab.eu>
In-Reply-To: <e72fdd16-25e4-9a3b-3ec5-a44dd08f49c4@neclab.eu>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0124;
 7:Y4z8xUCy4yAFPNgHA5KEslIuWDTz1QtVpUMJjtKxq12sMfAML31TNkfXEznxRkVsVK21ujfNh19cAVG2NfAAcifUzcV7EeCpCnJ8KvJEEufzhHaxcKYGgByJstg9zojhXa2hEI1tUkbCx4HKMNXU9+0MJZIYClMwqR1QHSuLHPlDGIWNaIRqOj9UTF79A/o1n+/yMuPp7bli12Sj5vzGqWNeU2lAfQ28l7PiSxI4lu+YY+trWjPfIQ3+/csd2r9+
x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR;
x-ms-office365-filtering-ht: Tenant
X-MS-Office365-Filtering-Correlation-Id: a6d36769-a247-4173-baf0-08d59df41fa9
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0124; 
x-ms-traffictypediagnostic: DB3PR08MB0124:
nodisclaimer: True
x-microsoft-antispam-prvs: <DB3PR08MB0124660A2B224AB936E30ABD9EBF0@DB3PR08MB0124.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(180628864354917)(58134797142442);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231221)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123562045)(20161123564045)(20161123560045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0124; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0124; 
x-forefront-prvs: 0637FCE711
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(39850400004)(366004)(346002)(376002)(396003)(39380400002)(199004)(189003)(13464003)(316002)(5660300001)(3846002)(106356001)(105586002)(6246003)(5250100002)(53936002)(2501003)(9686003)(55016002)(6436002)(6116002)(97736004)(53546011)(59450400001)(446003)(54906003)(186003)(7696005)(229853002)(11346002)(68736007)(476003)(26005)(55236004)(110136005)(76176011)(486006)(66066001)(3280700002)(3660700001)(86362001)(8676002)(6506007)(99286004)(102836004)(81166006)(81156014)(478600001)(25786009)(8936002)(4326008)(2900100001)(74316002)(33656002)(305945005)(7736002)(2906002)(14454004)(72206003)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0124;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; A:1; MX:1; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: F7zCOOwducyQFRu5qgTqqT637NM5C/+2dxS9hs+kztdzpo6U1kCMNoBk3XRNjfgRxSQEdYIuYcnZ2nQFZNvlDinw5XwDOqvoS97JdtkJrzq4zDfunpu+henA0UD37+dOzXZzZTT1aWtlJ7rOHiI8xmwO1hyEaJKXV9EFkihpVDg9QfS3y4yM7ieUXwkPHs26MHKZQYc9PvE0g5wWMiVKTzxW04TZGZKCG582RZgsLiXshhp/lnFgupcu0nGUeNF0p+ON+93MKotp/DqrkdHRiwRmDZPVF4wPwGd+K9uAwdAaY553mwOsPTZVUUr8tJk7EcR7DltYKSsYfx6w5JiZydqgB23RM/KnG4E+6sIRM+86kw4QPdN+hNe/FmAiGtakqMZ/+TgHUI1SCiEwAE1vVw+SPpDb+tBPR1XXG+HFQtk=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a6d36769-a247-4173-baf0-08d59df41fa9
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2018 08:30:17.0497 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0124
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 6/9] build: Add arm64
 architecture config to menuconfig
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: Shijie Huang <Shijie.Huang@arm.com>, Kaly Xin <Kaly.Xin@arm.com>,
 nd <nd@arm.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogU2ltb24g
S3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+DQo+IFNlbnQ6IDIwMTjlubQ05pyINeaX
pSA1OjUwDQo+IFRvOiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT47IG1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBDYzogU2hpamllIEh1YW5nIDxTaGlqaWUuSHVhbmdAYXJt
LmNvbT47IEthbHkgWGluIDxLYWx5LlhpbkBhcm0uY29tPjsgbmQNCj4gPG5kQGFybS5jb20+DQo+
IFN1YmplY3Q6IFJlOiBbVU5JS1JBRlQgUEFUQ0ggNi85XSBidWlsZDogQWRkIGFybTY0IGFyY2hp
dGVjdHVyZSBjb25maWcgdG8NCj4gbWVudWNvbmZpZw0KPiANCj4gT24gMTUuMDMuMjAxOCAwNDoz
OSwgV2VpIENoZW4gd3JvdGU6DQo+ID4gQWRkIHRoZSBhcm02NCBlbnRyeSBmb3IgbWVudWNvbmZp
Zy4gQXMgZGlmZmVyZW50IHNpbGljb24gdmVuZG9ycyBtYXkNCj4gPiBoYXZlIGRpZmZlcmVudCA2
NC1iaXQgQVJNdjggU29Dcy4gSWYgd2Ugd2FudCB0byBhZGQgdGhlbSB0byBDb25maWcsDQo+ID4g
aXQgd2lsbCBiZSBhIGxhcmdlIGxpc3QuIFNvIHdlIG9ubHkgcHJvdmlkZSBBUk0ncyBjb3J0ZXgg
QTUzfkE3NSBDUFVzDQo+ID4gZm9yICJQcm9jZXNzb3IgT3B0aW1pemF0aW9uIg0KPiA+DQo+ID4g
SWYgd2UgdXNlIE1BUkNIXyBhcyB0aGUgcHJlZml4IGZvciBBUk02NCBDUFVzIGFzIHg4Niwgd2hl
biB3ZSBzZWxlY3QNCj4gPiAiZ2VuZXJpYyIsIHRoZSBNQVJDSF9HRU5FUklDIHdpbGwgY29uZmxp
Y3Qgd2l0aCB4ODYncyBNQVJDSF9HRU5FUklDLg0KPiA+IFNvLCB3ZSB1c2UgTUFSQ0hfQVJNNjRf
IGZvciBBUk02NCBhcyB0aGUgcHJlZml4Lg0KPiANCj4gSHVtLCB0aGUgc2FtZSBzaG91bGQgaGFw
cGVuIHdpdGggQVJNMzIsIHJpZ2h0Pw0KDQpObywgbHVja2lseSwgdGhlIEFSTTMyIGRvZXNu4oCZ
dCBoYXZlICJnZW5lcmljIiBvcHRpb25zIDsgKQ0KQnV0LCBBUk0zMiBoYXMgbG90cyBvZiB2YXJp
YW50cyBsaWtlOiBhcm0zMnY2LCBhcm0zMnY3LiBTbyBpdCdzIG5vdCBlYXN5DQp0byBnaXZlIGEg
ImdlbmVyaWMiIG9wdGlvbi4gQnV0IGZvciBhcm0zMnY3LCB0aGUgbW9zdCBwb3B1bGFyIGFybTMy
IGFyY2gsDQp3ZSBjYW4gZ2l2ZSBhICJnZW5lcmljLWFybXY3LWEiIG9wdGlvbi4gU28gYSBNQVJD
SF9BUk0zMl9WNyBjYW4gYmUgYWRkZWQNCnRvIEFSTTMyLg0KDQo+IEFuZCB3ZSBzaG91bGQgZXZl
biByZW5hbWUgdGhlIE1BUkNIXyogZm9yIHg4Ni4gQ2FuIHlvdSBhZGQgdGhlc2UgcGF0Y2hlcw0K
PiB0byB5b3VyIHNlcmllcz8NCj4gDQoNCk9rLCBJIHdpbGwgYWRkIGEgcGF0Y2ggdG8gcmVuYW1l
IHRoZSBNQVJDSF8qIGZvciB4ODYuDQoNCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFdlaSBDaGVu
IDxXZWkuQ2hlbkBhcm0uY29tPg0KPiA+IC0tLQ0KPiA+ICAgYXJjaC9BcmNoLnVrICAgICAgIHwg
IDIgKysNCj4gPiAgIGFyY2gvQ29uZmlnLnVrICAgICB8ICA1ICsrKy0NCj4gPiAgIGFyY2gvYXJt
L0NvbmZpZy51ayB8IDY3DQo+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrLQ0KPiA+ICAgMyBmaWxlcyBjaGFuZ2VkLCA3MiBpbnNlcnRpb25zKCsp
LCAyIGRlbGV0aW9ucygtKQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2FyY2gvQXJjaC51ayBiL2Fy
Y2gvQXJjaC51aw0KPiA+IGluZGV4IDY0ZjQxOGMuLmVkY2JkZDQgMTAwNjQ0DQo+ID4gLS0tIGEv
YXJjaC9BcmNoLnVrDQo+ID4gKysrIGIvYXJjaC9BcmNoLnVrDQo+ID4gQEAgLTEsNiArMSw4IEBA
DQo+ID4gICAjIFNlbGVjdHMgYXJjaGl0ZWN0dXJlIGFjY29yZGluZyB0byAuY29uZmlnDQo+ID4g
ICBpZmVxICgkKEFSQ0hfWDg2XzY0KSx5KQ0KPiA+ICAgVUtfQVJDSCA6PSB4ODZfNjQNCj4gPiAr
ZWxzZSBpZmVxICgkKEFSQ0hfQVJNXzY0KSx5KQ0KPiA+ICtVS19BUkNIIDo9IGFybTY0DQo+ID4g
ICBlbHNlIGlmZXEgKCQoQVJDSF9BUk1fMzIpLHkpDQo+ID4gICBVS19BUkNIIDo9IGFybQ0KPiA+
ICAgZW5kaWYNCj4gPiBkaWZmIC0tZ2l0IGEvYXJjaC9Db25maWcudWsgYi9hcmNoL0NvbmZpZy51
aw0KPiA+IGluZGV4IGEwNDAyODguLjkyYWE2YzYgMTAwNjQ0DQo+ID4gLS0tIGEvYXJjaC9Db25m
aWcudWsNCj4gPiArKysgYi9hcmNoL0NvbmZpZy51aw0KPiA+IEBAIC0xLDEyICsxLDE1IEBADQo+
ID4gICBjaG9pY2UNCj4gPiAgIAlwcm9tcHQgIkFyY2hpdGVjdHVyZSINCj4gPiAgIAlkZWZhdWx0
IEFSQ0hfQVJNXzMyIGlmIChVS19BUkNIID0gImFybSIpDQo+ID4gKwlkZWZhdWx0IEFSQ0hfQVJN
XzY0IGlmIChVS19BUkNIID0gImFybTY0IikNCj4gPiAgIAlkZWZhdWx0IEFSQ0hfWDg2XzY0DQo+
ID4gICAJaGVscA0KPiA+ICAgCSAgU2VsZWN0IHRoZSB0YXJnZXQgQ1BVIGFyY2hpdGVjdHVyZS4N
Cj4gPg0KPiA+ICAgY29uZmlnIEFSQ0hfWDg2XzY0DQo+ID4gICAgICAgICAgYm9vbCAieDg2IGNv
bXBhdGlibGUgKDY0IGJpdHMpIg0KPiA+ICtjb25maWcgQVJDSF9BUk1fNjQNCj4gPiArICAgICAg
IGJvb2wgIkFSTXY4IGNvbXBhdGlibGUgKDY0IGJpdHMpIg0KPiA+ICAgY29uZmlnIEFSQ0hfQVJN
XzMyDQo+ID4gICAgICAgICAgYm9vbCAiQVJNdjcgY29tcGF0aWJsZSAoMzIgYml0cykiDQo+ID4N
Cj4gPiBAQCAtMTUsNiArMTgsNiBAQCBlbmRjaG9pY2UNCj4gPiAgIGlmIChBUkNIX1g4Nl82NCkN
Cj4gPiAgIAlzb3VyY2UgImFyY2gveDg2L0NvbmZpZy51ayINCj4gPiAgIGVuZGlmDQo+ID4gLWlm
IChBUkNIX0FSTV8zMikNCj4gPiAraWYgKEFSQ0hfQVJNXzMyIHx8IEFSQ0hfQVJNXzY0KQ0KPiA+
ICAgCXNvdXJjZSAiYXJjaC9hcm0vQ29uZmlnLnVrIg0KPiA+ICAgZW5kaWYNCj4gPiBkaWZmIC0t
Z2l0IGEvYXJjaC9hcm0vQ29uZmlnLnVrIGIvYXJjaC9hcm0vQ29uZmlnLnVrDQo+ID4gaW5kZXgg
NDI2YzExMy4uOTMyY2JkOSAxMDA2NDQNCj4gPiAtLS0gYS9hcmNoL2FybS9Db25maWcudWsNCj4g
PiArKysgYi9hcmNoL2FybS9Db25maWcudWsNCj4gPiBAQCAtMSwxOCArMSw4MyBAQA0KPiA+ICAg
Y2hvaWNlDQo+ID4gICAJcHJvbXB0ICJQcm9jZXNzb3IgT3B0aW1pemF0aW9uIg0KPiA+IC0JZGVm
YXVsdCBNQVJDSF9DT1JURVhBNw0KPiA+ICsJZGVmYXVsdCBNQVJDSF9DT1JURVhBNyBpZiBBUkNI
X0FSTV8zMg0KPiA+ICsJZGVmYXVsdCBNQVJDSF9BUk02NF9HRU5FUklDIGlmIEFSQ0hfQVJNXzY0
DQo+ID4gICAJaGVscA0KPiA+ICAgCQlPcHRpbWl6ZSB0aGUgY29kZSBmb3Igc2VsZWN0ZWQgdGFy
Z2V0IHByb2Nlc3Nvcg0KPiA+DQo+ID4gICBjb25maWcgTUFSQ0hfQ09SVEVYQTcNCj4gPiAgIAli
b29sICJHZW5lcmljIENvcnRleCBBNyINCj4gPiArCWRlcGVuZHMgb24gQVJDSF9BUk1fMzINCj4g
PiAgIAloZWxwDQo+ID4gICAJCUNvbXBpbGUgZm9yIENvcnRleC1BNyBDUFVzLCBubyBoYXJkd2Fy
ZSBGUFUgc3VwcG9ydA0KPiA+DQo+ID4gICBjb25maWcgTUFSQ0hfQTIwTkVPTg0KPiA+ICAgCWJv
b2wgIkNvcnRleCBBNzogQWxsV2lubmVyIEEyMCINCj4gPiArCWRlcGVuZHMgb24gQVJDSF9BUk1f
MzINCj4gPiAgIAloZWxwDQo+ID4gICAJCUNvbXBpbGUgZm9yIEFsbFdpbm5lciBBMjAgKENvcnRl
eC1BNykgQ1BVcw0KPiA+ICAgCQlUaGUgTkVPTiBGUFUgaXMgZW5hYmxlZC4gUGxlYXNlIG5vdGUg
dGhhdCBORU9OIGlzDQo+ID4gICAJCW5vdCBmdWxseSBJRUVFIDc1NCBjb21wbGlhbnQuDQo+ID4g
Kw0KPiA+ICtjb25maWcgTUFSQ0hfQVJNNjRfTkFUSVZFDQo+ID4gKwlib29sICJBdXRvLWRldGVj
dCBob3N0IENQVSINCj4gPiArCWRlcGVuZHMgb24gQVJDSF9BUk1fNjQNCj4gPiArCWhlbHANCj4g
PiArCQlPcHRpbWl6ZSBjb21waWxhdGlvbiB0byBob3N0IENQVS4gUGxlYXNlIG5vdGUgdGhhdCB0
aGlzDQo+ID4gKwkJb3B0aW9uIHdpbGwgZmFpbCBpbiBjYXNlIG9mIGNyb3NzLWNvbXBpbGF0aW9u
DQo+ID4gKw0KPiA+ICtjb25maWcgTUFSQ0hfQVJNNjRfR0VORVJJQw0KPiA+ICsJYm9vbCAiR2Vu
ZXJpYyBBUk12OCBDUFUiDQo+ID4gKwlkZXBlbmRzIG9uIEFSQ0hfQVJNXzY0DQo+ID4gKwloZWxw
DQo+ID4gKwkJQ29tcGlsZSBmb3IgR2VuZXJpYyBBUk12OCBjb21wYXRpYmxlIENQVXMNCj4gPiAr
DQo+ID4gK2NvbmZpZyBNQVJDSF9BUk02NF9DT1JURVhBNTMNCj4gPiArCWJvb2wgIkdlbmVyaWMg
QVJNdjggQ29ydGV4IEE1MyINCj4gPiArCWRlcGVuZHMgb24gQVJDSF9BUk1fNjQNCj4gPiArCWhl
bHANCj4gPiArCQlDb21waWxlIGZvciBBUk12OCBDb3J0ZXgtQTUzIENQVXMuIFN1cHBvcnQgVHJ1
c3Rab25lLCBORU9ODQo+ID4gKwkJYWR2YW5jZWQgU0lNRCwgVkZQdjQsIGhhcmR3YXJlIHZpcnR1
YWxpemF0aW9uLCBkdWFsIGlzc3VlLA0KPiA+ICsJCWluLW9yZGVyIHBpcGVsaW5lDQo+ID4gKw0K
PiA+ICtjb25maWcgTUFSQ0hfQVJNNjRfQ09SVEVYQTU3DQo+ID4gKwlib29sICJHZW5lcmljIEFS
TXY4IENvcnRleCBBNTciDQo+ID4gKwlkZXBlbmRzIG9uIEFSQ0hfQVJNXzY0DQo+ID4gKwloZWxw
DQo+ID4gKwkJQ29tcGlsZSBmb3IgQVJNdjggQ29ydGV4LUE1NyBDUFVzLiBTdXBwb3J0IFRydXN0
Wm9uZSwgTkVPTg0KPiA+ICsJCWFkdmFuY2VkIFNJTUQsIFZGUHY0LCBoYXJkd2FyZSB2aXJ0dWFs
aXphdGlvbiwgMy13YXkNCj4gPiArCQlzdXBlcnNjYWxhciwgZGVlcGx5IG91dC1vZi1vcmRlciBw
aXBlbGluZQ0KPiA+ICsNCj4gPiArY29uZmlnIE1BUkNIX0FSTTY0X0NPUlRFWEE3Mg0KPiA+ICsJ
Ym9vbCAiR2VuZXJpYyBBUk12OCBDb3J0ZXggQTcyIg0KPiA+ICsJZGVwZW5kcyBvbiBBUkNIX0FS
TV82NA0KPiA+ICsJaGVscA0KPiA+ICsJCUNvbXBpbGUgZm9yIEFSTXY4IENvcnRleC1BNzIgQ1BV
cy4gU3VwcG9ydCBUcnVzdFpvbmUsIE5FT04NCj4gPiArCQlhZHZhbmNlZCBTSU1ELCBWRlB2NCwg
aGFyZHdhcmUgdmlydHVhbGl6YXRpb24sIDMtd2F5DQo+ID4gKwkJc3VwZXJzY2FsYXIsIGRlZXBs
eSBvdXQtb2Ytb3JkZXIgcGlwZWxpbmUNCj4gPiArDQo+ID4gK2NvbmZpZyBNQVJDSF9BUk02NF9D
T1JURVhBNzMNCj4gPiArCWJvb2wgIkdlbmVyaWMgQVJNdjggQ29ydGV4IEE3MyINCj4gPiArCWRl
cGVuZHMgb24gQVJDSF9BUk1fNjQNCj4gPiArCWhlbHANCj4gPiArCQlDb21waWxlIGZvciBBUk12
OCBDb3J0ZXgtQTczIENQVXMuIFN1cHBvcnQgVHJ1c3Rab25lLCBORU9ODQo+ID4gKwkJYWR2YW5j
ZWQgU0lNRCwgVkZQdjQsIGhhcmR3YXJlIHZpcnR1YWxpemF0aW9uLCAyLXdheQ0KPiA+ICsJCXN1
cGVyc2NhbGFyLCBkZWVwbHkgb3V0LW9mLW9yZGVyIHBpcGVsaW5lDQo+ID4gKw0KPiA+ICtjb25m
aWcgTUFSQ0hfQVJNNjRfQ09SVEVYQTU1DQo+ID4gKwlib29sICJHZW5lcmljIEFSTXY4LjIgQ29y
dGV4IEE1NSINCj4gPiArCWRlcGVuZHMgb24gQVJDSF9BUk1fNjQNCj4gPiArCWhlbHANCj4gPiAr
CQlDb21waWxlIGZvciBBUk12OC4yIENvcnRleC1BNTUgQ1BVcy4gU3VwcG9ydCBUcnVzdFpvbmUs
IE5FT04NCj4gPiArCQlhZHZhbmNlZCBTSU1ELCBWRlB2NCwgaGFyZHdhcmUgdmlydHVhbGl6YXRp
b24sIHRyaXBsZSBpc3N1ZSwNCj4gPiArCQlpbi1vcmRlciBwaXBlbGluZQ0KPiA+ICsNCj4gPiAr
Y29uZmlnIE1BUkNIX0FSTTY0X0NPUlRFWEE3NQ0KPiA+ICsJYm9vbCAiR2VuZXJpYyBBUk12OC4y
IENvcnRleCBBNzUiDQo+ID4gKwlkZXBlbmRzIG9uIEFSQ0hfQVJNXzY0DQo+ID4gKwloZWxwDQo+
ID4gKwkJQ29tcGlsZSBmb3IgQVJNdjguMiBDb3J0ZXgtQTc1IENQVXMuIFN1cHBvcnQgVHJ1c3Ra
b25lLCBORU9ODQo+ID4gKwkJYWR2YW5jZWQgU0lNRCwgVkZQdjQsIGhhcmR3YXJlIHZpcnR1YWxp
emF0aW9uLCAzLXdheQ0KPiA+ICsJCXN1cGVyc2NhbGFyLCBkZWVwbHkgb3V0LW9mLW9yZGVyIHBp
cGVsaW5lDQo+ID4gKw0KPiA+ICAgZW5kY2hvaWNlDQo+ID4NCl9fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWlu
aW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5v
cmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 09 08:42:59 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 09 Apr 2018 08:42:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f5SO9-0001Hw-Qj; Mon, 09 Apr 2018 08:42:57 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=sv3z=g6=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f5SO8-0001Hr-Kc
 for minios-devel@lists.xenproject.org; Mon, 09 Apr 2018 08:42:56 +0000
X-Inumbo-ID: e3ee98be-3bd1-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::620])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id e3ee98be-3bd1-11e8-9728-bc764e045a96;
 Mon, 09 Apr 2018 10:42:10 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=D8dkxikPXuKvolp/fT2Ee8I9BlNhHPB/sBBXBiGmf0M=;
 b=ezx3ppFykDb3uMD6Rj0O7cBZuacoMYTGhZphIegp2AFm9u1axDAfj35IKrqSG2lmMyGOGX75CDGdm1LQnC6SsCL7+Xf23dqmnzlFeWZMKA1V2wuKymMnEIk7Zbm6xHNyRYG5AB5VQ6U6iEdt5sf0gpDVJ7CD3fE2eVpDevryiRI=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0266.eurprd08.prod.outlook.com (10.161.61.22) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.653.12; Mon, 9 Apr 2018 08:42:46 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0653.014; Mon, 9 Apr 2018
 08:42:46 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>,
 "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Thread-Topic: [UNIKRAFT PATCH 7/9] build: Add a macro to check and add gcc
 flags for target CPU
Thread-Index: AQHTvA9LKJ6hp1+ot0OFBe+1xtrsbKPxResAgAb8EkA=
Date: Mon, 9 Apr 2018 08:42:46 +0000
Message-ID: <DB3PR08MB010745CA17040DBC62F7C0D09EBF0@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-8-git-send-email-Wei.Chen@arm.com>
 <793e5227-ed3e-ca24-6248-135a802300f5@neclab.eu>
In-Reply-To: <793e5227-ed3e-ca24-6248-135a802300f5@neclab.eu>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0266;
 7:MXv8HQjlcmMy+syg9tWNGNjQYnUlluKsWE1J5LmAosTgdK9yEVhi+m3tFAhoE/+pCH205LVlIv8Rg5QeLEaTFqDNbfTuWFppdexeUZqq+2+2XTij6kyOH1sHllKcyMNO1WpLst7gUjD5rtj7dX/PFCSKIrb0mHkViKqzLvuJOq9c2Hx/rOMnXp8WcgkdgBDw46dBBVinomCigu2ikndofE8j0AmFHdgg0YcXdj5GMI30OLNmrtTAwFWHP6dycFvz
x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR;
x-ms-office365-filtering-ht: Tenant
X-MS-Office365-Filtering-Correlation-Id: 2cb29327-64d8-4c72-b5e5-08d59df5de80
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0266; 
x-ms-traffictypediagnostic: DB3PR08MB0266:
nodisclaimer: True
x-microsoft-antispam-prvs: <DB3PR08MB02663F71DFA4031FD4DA2C199EBF0@DB3PR08MB0266.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(180628864354917)(58134797142442);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231221)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123562045)(20161123564045)(20161123560045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0266; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0266; 
x-forefront-prvs: 0637FCE711
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(346002)(366004)(39860400002)(376002)(39380400002)(396003)(13464003)(199004)(189003)(6436002)(8936002)(53936002)(8676002)(99286004)(81156014)(97736004)(6246003)(7696005)(9686003)(81166006)(66066001)(14454004)(229853002)(105586002)(55016002)(476003)(446003)(11346002)(33656002)(5250100002)(2906002)(2501003)(106356001)(486006)(186003)(2900100001)(6506007)(53546011)(3660700001)(3280700002)(55236004)(76176011)(26005)(6116002)(3846002)(102836004)(59450400001)(5660300001)(86362001)(110136005)(25786009)(54906003)(305945005)(74316002)(72206003)(68736007)(7736002)(4326008)(478600001)(316002)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0266;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; A:1; MX:1; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: /MJdLYjYW3n0Nbbq4V9oOjNHkJhNAHMp29nF4HrwmbgVZ6PrpR67bBK/gdISsBfIiCYEo6NiqplZXDBTP7Da13NuBISgNdlvAfa7z9YgoZNxcLmtonGPSiftNAP6qFu6F9QR44gDJUPFiFvl135CreXQ3I4OTL8WttNoVnwBZETkI9ppc3PmHwJsu7c42c+KI6BOFHi82zIYs6ZkCWOn/Zk4kL5pTWAIYF7aJ5EDRfq5tfA2gL6y2uu7naWMotS7+qE4y5wpkUBqDzjmFCSGXNTmZ4lpPnHDbnJr5o4QfucndqD711G8bsqMfBnOoklwOcTL/8sfNTF6qp174kZEpHn0M1+1UNUu2WNc4uqw6Sfgjp/jkCb76dzSsLbPyHSnM6vk/icQcGsNWRtbVCEViXAhdGU2J3wolXMfoRMnBY4=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2cb29327-64d8-4c72-b5e5-08d59df5de80
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2018 08:42:46.7224 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0266
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 7/9] build: Add a macro to check
 and add gcc flags for target CPU
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: Shijie Huang <Shijie.Huang@arm.com>, Kaly Xin <Kaly.Xin@arm.com>,
 nd <nd@arm.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogU2ltb24g
S3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+DQo+IFNlbnQ6IDIwMTjlubQ05pyINeaX
pSA1OjUxDQo+IFRvOiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT47IG1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBDYzogU2hpamllIEh1YW5nIDxTaGlqaWUuSHVhbmdAYXJt
LmNvbT47IEthbHkgWGluIDxLYWx5LlhpbkBhcm0uY29tPjsgbmQNCj4gPG5kQGFybS5jb20+DQo+
IFN1YmplY3Q6IFJlOiBbVU5JS1JBRlQgUEFUQ0ggNy85XSBidWlsZDogQWRkIGEgbWFjcm8gdG8g
Y2hlY2sgYW5kIGFkZCBnY2MNCj4gZmxhZ3MgZm9yIHRhcmdldCBDUFUNCj4gDQo+IA0KPiANCj4g
T24gMTUuMDMuMjAxOCAwNDozOSwgV2VpIENoZW4gd3JvdGU6DQo+ID4gSW4gbGF0ZXIgcGF0Y2hl
cywgd2Ugd2lsbCBhZGQgZ2NjIGZsYWdzIGZvciBuZXcgYWRkZWQgQVJNNjQgQ1BVcy4NCj4gPiBX
ZSBoYXZlIHRvIGNoZWNrIGFuZCBhZGQgZmxhZ3MgZm9yIGVhY2ggdGFyZ2V0IENQVS4gU28gaXQn
cyBiZXR0ZXINCj4gPiB0byBhZGQgYSBtYWNybyB0byByZWR1Y2UgcmVkdW5kYW5jeSBNYWtlZmls
ZSBjb2Rlcy4NCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0u
Y29tPg0KPiA+IC0tLQ0KPiA+ICAgYXJjaC9hcm0vTWFrZWZpbGUudWsgfCAxMiArKysrKysrKysr
KysNCj4gPiAgIDEgZmlsZSBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspDQo+ID4NCj4gPiBkaWZm
IC0tZ2l0IGEvYXJjaC9hcm0vTWFrZWZpbGUudWsgYi9hcmNoL2FybS9NYWtlZmlsZS51aw0KPiA+
IGluZGV4IDc4MGEwMzUuLmU3ZjdiNDkgMTAwNjQ0DQo+ID4gLS0tIGEvYXJjaC9hcm0vTWFrZWZp
bGUudWsNCj4gPiArKysgYi9hcmNoL2FybS9NYWtlZmlsZS51aw0KPiA+IEBAIC0xLDMgKzEsMTUg
QEANCj4gPiArIyBkZWZpbmUgYSBtYWNybyB0byBjaGVjayB0aGUgR0NDIHZlcnNpb24gYW5kIGFk
ZCBvcHRpbWl6YXRpb24gZmxhZ3MNCj4gPiArIyBmb3IgdGFyZ2V0IENQVToNCj4gPiArIyAkKDEp
OiBUaGUgZmxhZyBmb3IgLW1hcmNoDQo+ID4gKyMgJCgyKTogVGhlIGZsYWcgZm9yIC1tY3B1IGFu
ZCAtbXR1bmUNCj4gPiArIyAkKDMpOiBUaGUgbWluaW11bSBHQ0MgbWFqb3IgbnVtYmVyIGZvciB0
YXJnZXQgQ1BVDQo+ID4gKyMgJCg0KTogVGhlIG1pbmltdW0gR0NDIG1pbm9yIG51bWJlciBmb3Ig
dGFyZ2V0IENQVQ0KPiA+ICtkZWZpbmUgc2V0X2NjX2ZsYWdzID0NCj4gPiArJChjYWxsIGNoZWNr
X3ZhbGlkX2djY192ZXJzaW9uLCQoMyksJCg0KSwkKDIpKQ0KPiA+ICtDRkxBR1MteSAgICs9IC1t
YXJjaD0kKDEpIC1tY3B1PSQoMikgLW10dW5lPSQoMikNCj4gPiArQ1hYRkxBR1MteSArPSAtbWFy
Y2g9JCgxKSAtbWNwdT0kKDIpIC1tdHVuZT0kKDIpDQo+ID4gK2VuZGVmDQo+ID4gKw0KPiANCj4g
SW4gb3JkZXIgdG8gYXZvaWQgYW55IGRlZmluaXRpb24gY2xhc2hlcyBpbiB0aGUgZnV0dXJlLCBJ
IHByZWZlciB0byBoYXZlDQo+IHRoaXMgaW4gc3VwcG9ydC9idWlsZC9NYWtlZmlsZS5ydWxlcyAu
IFRoZSBuYW1lICJzZXRfY2NfZmxhZ3MiIGlzIGFsc28NCj4gdG9vIGdlbmVyaWMsIGl0IGNvdWxk
IG1lYW4gc2V0dGluZyBvZiBhbnkgdHlwZSBvZiBjYyBmbGFnLiBDYW4geW91DQo+IGNob29zZSBz
b21ldGhpbmcgdGhhdCBpcyBjbG9zZXI/IEl0IGNoZWNrcyB0aGF0IEdDQyBzdXBwb3J0cyBhIHRh
cmdldA0KPiBjcHUgYW5kIHNldHMgdGhlIEdDQyBwYXJhbWV0ZXJzLg0KPiANCg0KSSB3b3VsZCBy
ZWZpbmUgdGhpcyBkZWZpbml0aW9uIGFuZCBtb3ZlIGl0IHRvIHN1cHBvcnQvYnVpbGQvTWFrZWZp
bGUucnVsZXMuDQpIb3cgZG8geW91IHRoaW5rIGFib3V0IHRoZSBuYW1lICJjaGVja19jY19hbmRf
c2V0X29wdGltaXphdGlvbl9mbGFncyIgPw0KDQo+ID4gICAjIFNldHVwIGNvbXBpbGVyIGZsYWdz
IGFuZCBvYmplY3RzIGZvciBhcm0zMg0KPiA+ICAgaWZlcSAoJChVS19BUkNIKSxhcm0pDQo+ID4N
Cj4gPg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWlu
aW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcK
aHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZl
bA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 09 08:44:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 09 Apr 2018 08:44:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f5SQ2-0001SY-BK; Mon, 09 Apr 2018 08:44:54 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=sv3z=g6=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f5SQ0-0001SO-Pt
 for minios-devel@lists.xenproject.org; Mon, 09 Apr 2018 08:44:52 +0000
X-Inumbo-ID: 2938038c-3bd2-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [104.47.1.84]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 2938038c-3bd2-11e8-9728-bc764e045a96;
 Mon, 09 Apr 2018 10:44:06 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=aNetZdeCrf6oBcexx0D5F7Qai4N/trmPK9YMCD8E7M8=;
 b=kTF6zFNdnyNTb4MA5d/e3yzlfRmtApSTWhIQL4CWl9imuylHRVqFS4k2dnB/tVvSuqqt9r0nGfmqHj3l6sKQ7PZHddJbUxMbE/EAuWgWY7AhTM7Q/+t/QxVzaVP47ee+mX9UhVTcGrTDV+PiXwOCITvLIqBp2VE04V+G0rgt/VE=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0266.eurprd08.prod.outlook.com (10.161.61.22) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.653.12; Mon, 9 Apr 2018 08:44:43 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0653.014; Mon, 9 Apr 2018
 08:44:43 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>,
 "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Thread-Topic: [UNIKRAFT PATCH 8/9] build: Add compiler and flags for arm64
Thread-Index: AQHTvA9NOEtXhx4T0Ua3JgeoLKE6rqPxRtkAgAb+iaA=
Date: Mon, 9 Apr 2018 08:44:43 +0000
Message-ID: <DB3PR08MB0107EB537EAC193FD9D5B32F9EBF0@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <1521085152-77655-1-git-send-email-Wei.Chen@arm.com>
 <1521085152-77655-9-git-send-email-Wei.Chen@arm.com>
 <b1a294b3-87a2-0c99-cb47-1e4cfd8999bd@neclab.eu>
In-Reply-To: <b1a294b3-87a2-0c99-cb47-1e4cfd8999bd@neclab.eu>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0266;
 7:7XFF2UVcOud/BV6TJJ5rBHJuCxqPDBYYr4aCt9nyr8SAafHc26tevX2YFjIeMDOwD2QH3cUcHP1PKr8VO4n8T/JanLc8WwI+ySd4nmwg4sKz9onUeCAVnQxx8qlcB77WfR/iXWG8uUwBchuOfdajSviUQj4iZqsq6DwAzkqS06+Pw1Y+OrFHSZs1YQLPK4A+mVd8bEL44iz01RpzsOhwHEMTnXCgQyUm4+OgZ4m5Kdj2uDsDGUo8/fWtL0511tTO
x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR;
x-ms-office365-filtering-ht: Tenant
X-MS-Office365-Filtering-Correlation-Id: afe693aa-dcee-437b-d1bf-08d59df6244b
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0266; 
x-ms-traffictypediagnostic: DB3PR08MB0266:
nodisclaimer: True
x-microsoft-antispam-prvs: <DB3PR08MB0266498AF4D10C6917A177809EBF0@DB3PR08MB0266.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(180628864354917)(58134797142442);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231221)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123562045)(20161123564045)(20161123560045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0266; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0266; 
x-forefront-prvs: 0637FCE711
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(396003)(39380400002)(366004)(346002)(39860400002)(376002)(13464003)(189003)(199004)(26005)(55236004)(76176011)(106356001)(486006)(2906002)(2501003)(2900100001)(6506007)(53546011)(3660700001)(186003)(3280700002)(74316002)(72206003)(68736007)(316002)(7736002)(4326008)(478600001)(59450400001)(5660300001)(6116002)(3846002)(102836004)(305945005)(25786009)(54906003)(110136005)(86362001)(9686003)(81166006)(7696005)(6246003)(66066001)(8936002)(6436002)(53936002)(99286004)(8676002)(81156014)(97736004)(446003)(11346002)(55016002)(476003)(5250100002)(33656002)(229853002)(105586002)(14454004)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0266;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; MX:1; A:1; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: kSVqYMRAQaJW4B0BLQaA3cXaP9v2KbeOLQp2Hk25WlQ8Fv2CN/u0Fdg6TpjSH7Wu5LkSijCs7pgtnPM5v7uSpoo4Yo6e6pWJHZwzzDefHpf6gNX3BJIf1/J1+bDENcqBIDUOfrjHTz3C2qRYzojlSk/8X7r+kf998fv03ZDeqhPoJtog92r5okrd0vm/mOpI9PMuZThnoCsv9Dz763pnJ4hjf73BgC2QQtiyLeF/ih3MjF8aUwXoDYlLp8mB8OSvvMd/keZnhKKDFs9o5QRNCsx2SEdIUp4g0oF3mgnVmxIz6VzOSMZmUffkq6/hbRFFEocKZkzoqZvknylKBlOodCNp0knQDrLSYxr78eAw7HvB63K6Jsdei1l6PsrS/ttnPaQrHpra6Hd4/G73WX0UmSKPLUDjhhNa9UUMRflZGts=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: afe693aa-dcee-437b-d1bf-08d59df6244b
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2018 08:44:43.8163 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0266
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 8/9] build: Add compiler and
 flags for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: Shijie Huang <Shijie.Huang@arm.com>, Kaly Xin <Kaly.Xin@arm.com>,
 nd <nd@arm.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogU2ltb24g
S3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+DQo+IFNlbnQ6IDIwMTjlubQ05pyINeaX
pSA1OjU0DQo+IFRvOiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT47IG1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBDYzogU2hpamllIEh1YW5nIDxTaGlqaWUuSHVhbmdAYXJt
LmNvbT47IEthbHkgWGluIDxLYWx5LlhpbkBhcm0uY29tPjsgbmQNCj4gPG5kQGFybS5jb20+DQo+
IFN1YmplY3Q6IFJlOiBbVU5JS1JBRlQgUEFUQ0ggOC85XSBidWlsZDogQWRkIGNvbXBpbGVyIGFu
ZCBmbGFncyBmb3IgYXJtNjQNCj4gDQo+IEZpbmUuIEkgd291bGQgcmUtcGhyYXNlIHRoZSBtZXNz
YWdlIGEgYml0IGFuZCBzYXkgd2hpY2ggQ29ydGV4IG1vZGVscw0KPiBhcmUgYWRkZWQuDQo+IA0K
DQpZZXMsIGFkZGluZyBhIGxpc3Qgb2YgbW9kZWxzIGluIHRoZSBtZXNzYWdlIHdvdWxkIGJlIGJl
dHRlci4NCkkgd2lsbCBhZGQgaXQgaW4gdjIuDQoNCj4gT24gMTUuMDMuMjAxOCAwNDozOSwgV2Vp
IENoZW4gd3JvdGU6DQo+ID4gSW4gb3JkZXIgdG8gc3VwcG9ydCBhcm02NCwgd2UgaGF2ZSB0byBh
ZGQgY29ycmVjdCBjb21waWxlcg0KPiA+IGZvciBhcm02NCwgYW5kIGFkZCBwcm9wZXIgb3B0aW1p
emF0aW9uIGZsYWdzIGZvciBzZWxlY3QNCj4gPiBwcm9jZXNzb3IuDQo+ID4NCj4gPiBTaWduZWQt
b2ZmLWJ5OiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT4NCj4gPiAtLS0NCj4gPiAgIGFyY2gv
YXJtL0NvbXBpbGVyLnVrIHwgIDQgKysrKw0KPiA+ICAgYXJjaC9hcm0vTWFrZWZpbGUudWsgfCAz
OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0KPiA+ICAgMiBmaWxlcyBj
aGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0v
Q29tcGlsZXIudWsgYi9hcmNoL2FybS9Db21waWxlci51aw0KPiA+IGluZGV4IGVlMzQ5MTYuLmY2
MjVkN2MgMTAwNjQ0DQo+ID4gLS0tIGEvYXJjaC9hcm0vQ29tcGlsZXIudWsNCj4gPiArKysgYi9h
cmNoL2FybS9Db21waWxlci51aw0KPiA+IEBAIC0xLDYgKzEsMTAgQEANCj4gPiAgICMgc2V0IGNy
b3NzIGNvbXBpbGUNCj4gPiAgIGlmZXEgKCQoQ1JPU1NfQ09NUElMRSksKQ0KPiA+ICAgaWZuZXEg
KCQoVUtfQVJDSCksJChIT1NUQVJDSCkpDQo+ID4gK2lmZXEgKCQoVUtfQVJDSCksYXJtKQ0KPiA+
ICAgCUNST1NTX0NPTVBJTEUgOj0gYXJtLWxpbnV4LWdudWVhYmloZi0NCj4gPiArZWxzZSBpZmVx
ICgkKFVLX0FSQ0gpLGFybTY0KQ0KPiA+ICsJQ1JPU1NfQ09NUElMRSA6PSBhYXJjaDY0LWxpbnV4
LWdudS0NCj4gPiArZW5kaWYNCj4gPiAgIGVuZGlmDQo+ID4gICBlbmRpZg0KPiA+IGRpZmYgLS1n
aXQgYS9hcmNoL2FybS9NYWtlZmlsZS51ayBiL2FyY2gvYXJtL01ha2VmaWxlLnVrDQo+ID4gaW5k
ZXggZTdmN2I0OS4uMDNlODA5ZiAxMDA2NDQNCj4gPiAtLS0gYS9hcmNoL2FybS9NYWtlZmlsZS51
aw0KPiA+ICsrKyBiL2FyY2gvYXJtL01ha2VmaWxlLnVrDQo+ID4gQEAgLTMzLDYgKzMzLDQ0IEBA
IExJQkFSTU1BVEhfU1JDUy15ICs9ICQoVUtfQkFTRSkvYXJjaC9hcm0vYXJtMzIvbGRpdm1vZC5T
DQo+ID4gICBMSUJBUk1NQVRIX1NSQ1MteSArPSAkKFVLX0JBU0UpL2FyY2gvYXJtL2FybTMyL2xk
aXZtb2RfaGVscGVyLmMNCj4gPiAgIExJQkFSTU1BVEhfU1JDUy15ICs9ICQoVUtfQkFTRSkvYXJj
aC9hcm0vYXJtMzIvcWRpdnJlbS5jDQo+ID4NCj4gPiArZWxzZSBpZmVxICgkKFVLX0FSQ0gpLGFy
bTY0KQ0KPiA+ICsNCj4gPiArQVNGTEFHUyAgKz0gLURfX0FSTV82NF9fDQo+ID4gK0NGTEFHUyAg
ICs9IC1EX19BUk1fNjRfXyAtZm1zLWV4dGVuc2lvbnMNCj4gPiArQ1hYRkxBR1MgKz0gLURfX0FS
TV82NF9fIC1mbXMtZXh0ZW5zaW9ucw0KPiA+ICsNCj4gPiAraWZlcSAoJChNQVJDSF9BUk02NF9O
QVRJVkUpLCB5KQ0KPiA+ICskKGV2YWwgJChjYWxsIHNldF9jY19mbGFncyxhcm12OC1hLG5hdGl2
ZSw2LDApKQ0KPiA+ICtlbmRpZg0KPiA+ICsNCj4gPiAraWZlcSAoJChNQVJDSF9BUk02NF9HRU5F
UklDKSwgeSkNCj4gPiArJChldmFsICQoY2FsbCBzZXRfY2NfZmxhZ3MsYXJtdjgtYSxnZW5lcmlj
LDQsOCkpDQo+ID4gK2VuZGlmDQo+ID4gKw0KPiA+ICtpZmVxICgkKE1BUkNIX0FSTTY0X0NPUlRF
WEE1MykseSkNCj4gPiArJChldmFsICQoY2FsbCBzZXRfY2NfZmxhZ3MsYXJtdjgtYSxjb3J0ZXgt
YTUzLDQsOSkpDQo+ID4gK2VuZGlmDQo+ID4gKw0KPiA+ICtpZmVxICgkKE1BUkNIX0FSTTY0X0NP
UlRFWEE1NykseSkNCj4gPiArJChldmFsICQoY2FsbCBzZXRfY2NfZmxhZ3MsYXJtdjgtYSxjb3J0
ZXgtYTU3LDQsOSkpDQo+ID4gK2VuZGlmDQo+ID4gKw0KPiA+ICtpZmVxICgkKE1BUkNIX0FSTTY0
X0NPUlRFWEE3MikseSkNCj4gPiArJChldmFsICQoY2FsbCBzZXRfY2NfZmxhZ3MsYXJtdjgtYSxj
b3J0ZXgtYTcyLDUsMCkpDQo+ID4gK2VuZGlmDQo+ID4gKw0KPiA+ICtpZmVxICgkKE1BUkNIX0FS
TTY0X0NPUlRFWEE3MykseSkNCj4gPiArJChldmFsICQoY2FsbCBzZXRfY2NfZmxhZ3MsYXJtdjgt
YSxjb3J0ZXgtYTczLDcsMCkpDQo+ID4gK2VuZGlmDQo+ID4gKw0KPiA+ICtpZmVxICgkKE1BUkNI
X0FSTTY0X0NPUlRFWEE1NSkseSkNCj4gPiArJChldmFsICQoY2FsbCBzZXRfY2NfZmxhZ3MsYXJt
djguMi1hLGNvcnRleC1hNTUsOCwwKSkNCj4gPiArZW5kaWYNCj4gPiArDQo+ID4gK2lmZXEgKCQo
TUFSQ0hfQVJNNjRfQ09SVEVYQTc1KSx5KQ0KPiA+ICskKGV2YWwgJChjYWxsIHNldF9jY19mbGFn
cyxhcm12OC4yLWEsY29ydGV4LWE3NSw4LDApKQ0KPiA+ICtlbmRpZg0KPiA+ICsNCj4gPiAgIGVs
c2UNCj4gPiAgICQoZXJyb3IgVGFyZ2V0IGFyY2hpdGVjdHVyZSAoJChVS19BUkNIKSkgaXMgY3Vy
cmVudGx5IG5vdCBzdXBwb3J0ZWQuKQ0KPiA+ICAgZW5kaWYNCj4gPg0KX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlz
dApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 09 09:41:44 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 09 Apr 2018 09:41:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f5TJ1-0006nX-99; Mon, 09 Apr 2018 09:41:43 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fhaf=g6=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f5TIz-0006nR-ED
 for minios-devel@lists.xenproject.org; Mon, 09 Apr 2018 09:41:41 +0000
X-Inumbo-ID: 196e29b4-3bda-11e8-9728-bc764e045a96
Received: from mail-wr0-x22c.google.com (unknown [2a00:1450:400c:c0c::22c])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 196e29b4-3bda-11e8-9728-bc764e045a96;
 Mon, 09 Apr 2018 11:40:55 +0200 (CEST)
Received: by mail-wr0-x22c.google.com with SMTP id p53so8794566wrc.10
 for <minios-devel@lists.xenproject.org>; Mon, 09 Apr 2018 02:41:40 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=U3a4oAdOOcupCdo6rLxcYyNPASAS6Zqwb8M1uHf93KI=;
 b=WVJko8LsKL2JKWLkyT0HkZb/HDvx2kI6wNaRUwRoM9tpBhDOjFlhfAFLWBOiAmqDa0
 vpIjMZqFafdOe+dfADQcPyC6EFe9rxWX9ULcian2FXsDfs1S1ce0WhEIuyFTkXp4Y2jD
 mdmMCyER4fAV34BIi14AKq2AOr0Wr3RfL+hlQC8K2RCHA3QaNjS8OBByO3NOF/ghsWCj
 cBJGEydDJcceP6sSJTWIHn5zDLMH11yc+lHdEwjm/R7unUGoE8X7NrUM0x76Z2312Wed
 ykSiM0k3OY3czyO9402fxZdfFUH3H5sfIvAjBxkrqgTHW6971dXvqtWUkP1AVJ/cbXtE
 wZ1Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=U3a4oAdOOcupCdo6rLxcYyNPASAS6Zqwb8M1uHf93KI=;
 b=AayzpMT+3bUn5qgqOj7aHMUsmVkLpEtyP9yhplhNicsz0KmcgAlNpkdG3LPPIjrywq
 8eJbS7T7KKnXnMXSyrFJX+Lf0O1acUpKzyXbFGNARvihtk1e2ybOix5/sGpqsGw5G84Z
 GPnpFziDsqkk8Mi1Xsnj+B1YDiNFQbPRPV4q1PSgJE/ieRN5k1zmh8xLDQHikZVxWAI3
 /neMKJ2eOkvjo+ckuLQXEd8zVnWys2MAWlVFy17EvMiKWe59DkF6BPgcJ8nJHxIIqA3R
 /oBUAJ6k4gF3txiETqMQbCtbiA6ZXaZsQHXR2SmK+jJMayN/WZFcSO3Jp4AiV4sCENBT
 PznA==
X-Gm-Message-State: ALQs6tCEdQqcAzPm+RF1x3dYhU3KwKPX4eIdw0ab+8lDYEg9KWnkTKxo
 3Zz2rRLdjznvFc/dNijxjpAQwzkshffiQtTtmRc=
X-Google-Smtp-Source: AIpwx4/Fxrr895wS2/aFjbn6h2ylio8V5i7Poqj9xYgJxctj1vaNvFlMnqP0OerTR20cieL4p8UMOFO/HK9hoolBQVc=
X-Received: by 2002:a19:59d1:: with SMTP id
 n200-v6mr21243835lfb.84.1523266898980; 
 Mon, 09 Apr 2018 02:41:38 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:1708:0:0:0:0:0 with HTTP;
 Mon, 9 Apr 2018 02:41:38 -0700 (PDT)
In-Reply-To: <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
 <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
 <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Mon, 9 Apr 2018 15:11:38 +0530
Message-ID: <CAHP4M8WxD0KKGzwMBVQpge9k88BL-Zo1_0nsML0bV9_3uLb_zg@mail.gmail.com>
To: Julien Grall <julien.grall@linaro.org>
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org, Simon Kuenzer <simon.kuenzer@neclab.eu>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgSnVsaWVuLAoKVGhhbmtzIGZvciB0aGUgY29udGludWVkIHN1cHBvcnQuCgo+IFVuaWtlcm5l
bHMgY291bGQgcG90ZW50aWFsbHkgcnVuIG9uIGJhcmVtZXRhbC4gQXJlIHlvdSBsb29raW5nIGF0
IG11bHRpcGxlCj4gdW5pa2VybmVscyBvbiB0aGUgc2FtZSBwbGF0Zm9ybT8gSWYgaXQgaXMgb25s
eSBvbmUsIHRoZSB2aXJ0dWFsaXphdGlvbiBpcwo+IHByb2JhYmx5IG5vdCB0aGUgcmlnaHQgc29s
dXRpb24uCj4KPj4gVGhlIGlkZWEgb2YgdGhpcyBzdHVkeSBpcyB0byB1bmRlcnN0YW5kIGFuZCBj
b21wYXJlIGJldHdlZW4gdW5pa2VybmVscwo+PiBhbmQgY29udGFpbmVycyBpbiBhbiBlbWJlZGRl
ZCBwbGF0Zm9ybS4KPgo+IFdoYXQgZXhhY3RseSBkbyB5b3Ugd2FudCB0byBjb21wYXJlPyBJZiBp
dCBpcyBwZXJmb3JtYW5jZSwgdGhlbiB5b3Ugd2FudCB0bwo+IGdldCBhcyBjbG9zZSBhcyB3aGF0
IHBlb3BsZSB3b3VsZCBydW4uIEFzc3VtaW5nIHlvdSBwbGF0Zm9ybSB0byBydW4gbXVsdGlwbGUK
PiB1bmlrZXJuZWxzLCB0aGVuIGxpa2VseSB5b3Ugd2FudCB0byBnZXQgYSBwbGF0Zm9ybSB3aXRo
IHZpcnR1YWxpemF0aW9uCj4gYmVjYXVzZSB0aGlzIGlzIHdoYXQgbW9zdCBvZiBlbmQgdXNlciB3
aWxsIHVzZS4KCgpBcyB5b3UgYXJlIGFscmVhZHkgYXdhcmUgdGhhdCB3ZSBoYXZlIGJlZW4gaW52
ZXN0aWdhdGluZyBxdWl0ZSBhIGJpdApmb3IgZGlmZmVyZW50IG9wdGlvbnMsIGFuZCBnaXZlbiB0
aGUgY3VycmVudCBzdGF0ZSwgd291bGQgYmUgaGFwcHkgaWYKd2UgYXJlIGFibGUgdG8gYWNoaWV2
ZSB0aGUgZm9sbG93aW5nIDoKCmEpClJ1bm5pbmcgb25lIHVuaWtlcm5lbCBvbiBhcm0zMiBpbiBi
YXJlbWV0YWwgbW9kZSwgd2l0aG91dCBhbiB1bmRlcmx5aW5nIE9TLgoKYikKUnVubmluZyBtdWx0
aXBsZSB1bmlrZXJuZWxzIG9uIGFybTY0IHdpdGggeGVuLWh5cGVydmlzb3IuCgoKU28sIGdpdmVu
IHRoZSBjdXJyZW50IHN0YXRlLCBob3cgd291bGQgeW91IHN1Z2dlc3Qgd2UgcHJvY2VlZD8KCgpU
aGFua3MgYW5kIFJlZ2FyZHMsCkFqYXkKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxp
c3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9s
aXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 12 15:38:00 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Apr 2018 15:38:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f6eIQ-0006Yh-2K; Thu, 12 Apr 2018 15:37:58 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ivnt=hb=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1f6eIP-0006Yc-95
 for minios-devel@lists.xenproject.org; Thu, 12 Apr 2018 15:37:57 +0000
X-Inumbo-ID: 58f43086-3e67-11e8-9728-bc764e045a96
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 58f43086-3e67-11e8-9728-bc764e045a96;
 Thu, 12 Apr 2018 17:37:04 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 533E910203C;
 Thu, 12 Apr 2018 17:37:52 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id ZbmCW1m_sR_X; Thu, 12 Apr 2018 17:37:52 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 32ADBFFB08;
 Thu, 12 Apr 2018 17:37:48 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 12 Apr
 2018 17:37:47 +0200
To: Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
 <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
 <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
 <CAHP4M8WxD0KKGzwMBVQpge9k88BL-Zo1_0nsML0bV9_3uLb_zg@mail.gmail.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <b9a24604-91fe-1218-6053-8ba18c32556c@neclab.eu>
Date: Thu, 12 Apr 2018 17:37:47 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8WxD0KKGzwMBVQpge9k88BL-Zo1_0nsML0bV9_3uLb_zg@mail.gmail.com>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAwOS4wNC4yMDE4IDExOjQxLCBBamF5IEdhcmcgd3JvdGU6Cj4gSGkgSnVsaWVuLAo+IAo+
IFRoYW5rcyBmb3IgdGhlIGNvbnRpbnVlZCBzdXBwb3J0Lgo+IAo+PiBVbmlrZXJuZWxzIGNvdWxk
IHBvdGVudGlhbGx5IHJ1biBvbiBiYXJlbWV0YWwuIEFyZSB5b3UgbG9va2luZyBhdCBtdWx0aXBs
ZQo+PiB1bmlrZXJuZWxzIG9uIHRoZSBzYW1lIHBsYXRmb3JtPyBJZiBpdCBpcyBvbmx5IG9uZSwg
dGhlIHZpcnR1YWxpemF0aW9uIGlzCj4+IHByb2JhYmx5IG5vdCB0aGUgcmlnaHQgc29sdXRpb24u
Cj4+Cj4+PiBUaGUgaWRlYSBvZiB0aGlzIHN0dWR5IGlzIHRvIHVuZGVyc3RhbmQgYW5kIGNvbXBh
cmUgYmV0d2VlbiB1bmlrZXJuZWxzCj4+PiBhbmQgY29udGFpbmVycyBpbiBhbiBlbWJlZGRlZCBw
bGF0Zm9ybS4KPj4KPj4gV2hhdCBleGFjdGx5IGRvIHlvdSB3YW50IHRvIGNvbXBhcmU/IElmIGl0
IGlzIHBlcmZvcm1hbmNlLCB0aGVuIHlvdSB3YW50IHRvCj4+IGdldCBhcyBjbG9zZSBhcyB3aGF0
IHBlb3BsZSB3b3VsZCBydW4uIEFzc3VtaW5nIHlvdSBwbGF0Zm9ybSB0byBydW4gbXVsdGlwbGUK
Pj4gdW5pa2VybmVscywgdGhlbiBsaWtlbHkgeW91IHdhbnQgdG8gZ2V0IGEgcGxhdGZvcm0gd2l0
aCB2aXJ0dWFsaXphdGlvbgo+PiBiZWNhdXNlIHRoaXMgaXMgd2hhdCBtb3N0IG9mIGVuZCB1c2Vy
IHdpbGwgdXNlLgo+IAo+IAo+IEFzIHlvdSBhcmUgYWxyZWFkeSBhd2FyZSB0aGF0IHdlIGhhdmUg
YmVlbiBpbnZlc3RpZ2F0aW5nIHF1aXRlIGEgYml0Cj4gZm9yIGRpZmZlcmVudCBvcHRpb25zLCBh
bmQgZ2l2ZW4gdGhlIGN1cnJlbnQgc3RhdGUsIHdvdWxkIGJlIGhhcHB5IGlmCj4gd2UgYXJlIGFi
bGUgdG8gYWNoaWV2ZSB0aGUgZm9sbG93aW5nIDoKPiAKPiBhKQo+IFJ1bm5pbmcgb25lIHVuaWtl
cm5lbCBvbiBhcm0zMiBpbiBiYXJlbWV0YWwgbW9kZSwgd2l0aG91dCBhbiB1bmRlcmx5aW5nIE9T
Lgo+IAo+IGIpCj4gUnVubmluZyBtdWx0aXBsZSB1bmlrZXJuZWxzIG9uIGFybTY0IHdpdGggeGVu
LWh5cGVydmlzb3IuCj4gCj4gCj4gU28sIGdpdmVuIHRoZSBjdXJyZW50IHN0YXRlLCBob3cgd291
bGQgeW91IHN1Z2dlc3Qgd2UgcHJvY2VlZD8KPiAKClJpZ2h0IG5vdywgeW91IGNhbiB0ZXN0IFVu
aWtyYWZ0IHdpdGggWGVuIG9uIGFybTMyLiBCZSBhd2FyZSB0aGF0IHRoZXJlIAppcyBhIG9wZW4g
YnVnIG9uIHRoZSBtZW1vcnkgYWxsb2NhdG9yIGZvciBhcm0gCihzZWU6aHR0cHM6Ly93aWtpLnhl
bnByb2plY3Qub3JnL3dpa2kvQ2F0ZWdvcnk6VW5pa3JhZnRfVXNlcnMpLiBhcm02NCAKd2l0aCBY
ZW4gaXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgYnV0IHdlIHdvcmtpbmcgb24gaXQuIFNhbWUg
Zm9yIEtWTSAKYW5kIGJhcmVtZXRhbC4KCldlIHVzZSBjdWJpZWJvYXJkMi8zIGZvciBhcm0zMiB0
ZXN0cy4gVGhlc2UgYm9hcmRzIGFyZSBldmVuIG9mZmljaWFsbHkgCnN1cHBvcnRlZCBieSBEZWJp
YW4gYW5kIGNhbiBydW4gWGVuLgoKPiAKPiBUaGFua3MgYW5kIFJlZ2FyZHMsCj4gQWpheQo+IAoK
ClRoYW5rcywKClNpbW9uCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5w
cm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8v
bWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Sat Apr 14 03:52:46 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sat, 14 Apr 2018 03:52:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7CF2-0000yS-Mi; Sat, 14 Apr 2018 03:52:44 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=kmdo=hd=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f7CF0-0000yN-RZ
 for minios-devel@lists.xenproject.org; Sat, 14 Apr 2018 03:52:42 +0000
X-Inumbo-ID: 27e75b99-3f97-11e8-9728-bc764e045a96
Received: from mail-lf0-x236.google.com (unknown [2a00:1450:4010:c07::236])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 27e75b99-3f97-11e8-9728-bc764e045a96;
 Sat, 14 Apr 2018 05:51:48 +0200 (CEST)
Received: by mail-lf0-x236.google.com with SMTP id m200-v6so15130101lfm.4
 for <minios-devel@lists.xenproject.org>; Fri, 13 Apr 2018 20:52:40 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:from:date:message-id:subject:to;
 bh=nb9rdGc9xoMHZnExfYZvFVro0QQ/9Isg5N1yNl4PNQI=;
 b=qkAFuOhhpXyzf2uipPWHzx6DJfQ2MD4yAyE+3Y3mqSTBUeTwK5TO6e0fOdGHK4PbFd
 FFKPlcZqC7oSqEd+0vFAtVPBiIdEKSJ7l6b76tnq3csTNskUwI5ulXm4U3huR57zmARc
 +owjW7vauVeyeKsAPKl78uwRAifmiCZ96D3qNUq2gvvy6CV0AVRg8fnpU47e7UxySwjS
 c5pcC5jG7Udx5q8xNg7m/K48UiW3eUd5Fnau2J5zaYvxfZyOH2HFS/BbnS9o0Bvt9lF2
 D7dOFgyxihyKbMTYof8b0VX/TpkHS2Dy85vT3zE5LyAaxq/vtjm+HJkQSX4YSV9TvPfa
 hDQA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
 bh=nb9rdGc9xoMHZnExfYZvFVro0QQ/9Isg5N1yNl4PNQI=;
 b=PqIzs40xKjLJb6O5iBISg1OOEIENf9Kvg3IrsKv+T/7zkse0rdhU+fIactlHQ8aTvb
 aKhazdbHK8A9JeWjME5/63QS4Zrt7jSuHRUAsgGP5FXd9iY6lkJG/8Oq959v/V8TS7g6
 hiuDVOGNO/BPHeTF/Zl4dmIWwuTVFecEO3VxdX3xvzCNCXgH+AM7iLiYbASKVqhGN7J5
 3AIomrkiXjr+n0hvd9B4v1RR4o+w9qYjQowTD0K0KEct1xw9CqePGwSWVerZZyGglG+X
 7Bc7UnAGQPLUMMoaKPAsQ1g3cK4GOQMQM12t0a/iO7s0gaGs+zS4J0JabX3FnUnbe4CX
 9OzA==
X-Gm-Message-State: ALQs6tBKlpzojI6c9zQwYw4mGlMnWtnyKQmnBGFmircm4b8KTSqFjLsv
 ZESaHgbGz5wWc8Qo2iSuNtGtkFPSe4OEy6ac9xtCaQ==
X-Google-Smtp-Source: AIpwx4+Egfp4zBg1RxwsRmeUUDDWOsoJN+RYiHC5N8CYfnMjEmtkLaH/ZAzxKv21x0ru3WDQUcbMp++mes42mxCvNlQ=
X-Received: by 2002:a19:eb5d:: with SMTP id
 j90-v6mr2464063lfh.86.1523677959005; 
 Fri, 13 Apr 2018 20:52:39 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:9889:0:0:0:0:0 with HTTP; Fri, 13 Apr 2018 20:52:38
 -0700 (PDT)
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Sat, 14 Apr 2018 09:22:38 +0530
Message-ID: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: [Minios-devel] [Unikraft] Static Libraries not being linked properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============4759958955059531347=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============4759958955059531347==
Content-Type: multipart/alternative; boundary="0000000000007fac1b0569c6eb5c"

--0000000000007fac1b0569c6eb5c
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi All.

I am trying to integrate coremark-app in unikraft for x86_64.
It requires static linking to librt.a and libpthread.a; however seems  they
are not being picked up.


Following is the Makefile.uk :

####################################################################
$(eval $(call addlib,appcoremark))

APPCOREMARK_SRCS-y              +=3D
$(APPCOREMARK_BASE)/core_main.c                                  \

$(APPCOREMARK_BASE)/core_list_join.c                              \

$(APPCOREMARK_BASE)/core_util.c                                     \

$(APPCOREMARK_BASE)/core_state.c                                  \

$(APPCOREMARK_BASE)/core_matrix.c                                \

\

$(APPCOREMARK_BASE)/linux64/core_portme.c

APPCOREMARK_OBJS-y               +=3D
/usr/lib/x86_64-linux-gnu/librt.a
\

/usr/lib/x86_64-linux-gnu/libpthread.a

APPCOREMARK_CINCLUDES-y
+=3D-I$(APPCOREMARK_BASE)                                                  =
  \

-I$(APPCOREMARK_BASE)/linux64                                        \

-I$(APPCOREMARK_BASE)/../../unikraft/lib/nolibc/include/sys   \
                                                          -I/usr/include
####################################################################


Following is the compilation-run :

####################################################################
aajay@latitude-3480:~/unikraft/apps/coremark$ make
make[1]: Entering directory '/home/ajay/unikraft/unikraft'
  CP      config
  CC      libxenplat: hypervisor.o
  CC      libxenplat: memory.o
  CC      libxenplat: setup.o
  CC      libxenplat: traps.o
  AS      libxenplat: entry64.o
  CC      libxenplat: mm.o
  CC      libxenplat: arch_events.o
  CC      libxenplat: arch_time.o
  CC      libxenplat: lcpu.o
  CC      libxenplat: console.o
  CC      libxenplat: shutdown.o
  CC      libxenplat: events.o
  LD      libxenplat.ld.o
  OBJCOPY libxenplat.o
  CC      appcoremark: core_main.o
/home/ajay/unikraft/apps/coremark/core_main.c: In function =E2=80=98main=E2=
=80=99:
/home/ajay/unikraft/apps/coremark/core_main.c:292:12: warning: format =E2=
=80=98%lu=E2=80=99
expects argument of type =E2=80=98long unsigned int=E2=80=99, but argument =
2 has type
=E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
  ee_printf("CoreMark Size    : %lu\n",(ee_u32)results[0].size);
            ^
/home/ajay/unikraft/apps/coremark/core_main.c:293:12: warning: format =E2=
=80=98%lu=E2=80=99
expects argument of type =E2=80=98long unsigned int=E2=80=99, but argument =
2 has type
=E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
  ee_printf("Total ticks      : %lu\n",(ee_u32)total_time);
            ^
/home/ajay/unikraft/apps/coremark/core_main.c:308:12: warning: format =E2=
=80=98%lu=E2=80=99
expects argument of type =E2=80=98long unsigned int=E2=80=99, but argument =
2 has type
=E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
  ee_printf("Iterations       :
%lu\n",(ee_u32)default_num_contexts*results[0].iterations);
            ^
  CC      appcoremark: core_list_join.o
  CC      appcoremark: core_util.o
  CC      appcoremark: core_state.o
  CC      appcoremark: core_matrix.o
  CC      appcoremark: core_portme.o
In file included from /usr/include/features.h:367:0,
                 from /usr/include/malloc.h:22,
                 from
/home/ajay/unikraft/apps/coremark/linux64/core_portme.c:18:
/usr/include/sys/cdefs.h:285:0: warning: "__nonnull" redefined
 # define __nonnull(params) __attribute__ ((__nonnull__ params))
 ^
In file included from
/home/ajay/unikraft/unikraft/lib/nolibc/include/stdio.h:41:0,
                 from
/home/ajay/unikraft/apps/coremark/linux64/core_portme.c:9:
/home/ajay/unikraft/unikraft/include/uk/essentials.h:59:0: note: this is
the location of the previous definition
 #define __nonnull              __attribute__((nonnull))
 ^
/home/ajay/unikraft/apps/coremark/linux64/core_portme.c: In function
=E2=80=98start_time=E2=80=99:
/home/ajay/unikraft/apps/coremark/linux64/core_portme.c:93:24: warning:
implicit declaration of function =E2=80=98clock_gettime=E2=80=99
[-Wimplicit-function-declaration]
  #define GETMYTIME(_t) clock_gettime(0,_t)
                        ^
/home/ajay/unikraft/apps/coremark/linux64/core_portme.c:116:2: note: in
expansion of macro =E2=80=98GETMYTIME=E2=80=99
  GETMYTIME(&start_time_val );
  ^
/home/ajay/unikraft/apps/coremark/linux64/core_portme.c: In function
=E2=80=98portable_init=E2=80=99:
/home/ajay/unikraft/apps/coremark/linux64/core_portme.c:172:43: warning:
unused parameter =E2=80=98argc=E2=80=99 [-Wunused-parameter]
 void portable_init(core_portable *p, int *argc, char *argv[])
                                           ^
/home/ajay/unikraft/apps/coremark/linux64/core_portme.c:172:55: warning:
unused parameter =E2=80=98argv=E2=80=99 [-Wunused-parameter]
 void portable_init(core_portable *p, int *argc, char *argv[])
                                                       ^
  LD      appcoremark.ld.o
  OBJCOPY appcoremark.o
  CC      libukboot: boot.o
  LD      libukboot.ld.o
  OBJCOPY libukboot.o
  CC      libukdebug: print.o
  CC      libukdebug: hexdump.o
  LD      libukdebug.ld.o
  OBJCOPY libukdebug.o
  CC      libukargparse: argparse.o
  LD      libukargparse.ld.o
  OBJCOPY libukargparse.o
  CC      libnolibc: errno.o
  CC      libnolibc: stdio.o
  CC      libnolibc: ctype.o
  CC      libnolibc: stdlib.o
  CC      libnolibc: string.o
  CC      libnolibc: getopt.o
  CC      libnolibc: malloc.o
  LD      libnolibc.ld.o
  OBJCOPY libnolibc.o
  CC      libukalloc: alloc.o
  LD      libukalloc.ld.o
  OBJCOPY libukalloc.o
  CC      libukallocbbuddy: bbuddy.o
  LD      libukallocbbuddy.ld.o
  OBJCOPY libukallocbbuddy.o
  CC      libfdt: fdt.o
  CC      libfdt: fdt_addresses.o
  CC      libfdt: fdt_empty_tree.o
  CC      libfdt: fdt_overlay.o
  CC      libfdt: fdt_ro.o
  CC      libfdt: fdt_rw.o
  CC      libfdt: fdt_strerror.o
  CC      libfdt: fdt_sw.o
  CC      libfdt: fdt_wip.o
  LD      libfdt.ld.o
  OBJCOPY libfdt.o
  LD      coremark_xen-x86_64.ld.o
  OBJCOPY coremark_xen-x86_64.o
  LD      coremark_xen-x86_64
/home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In function
`iterate':
fdt_wip.c:(.text+0x5719): undefined reference to `sched_yield'
/home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In function
`start_time':
fdt_wip.c:(.text+0x6e2f): undefined reference to `clock_gettime'
/home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In function
`stop_time':
fdt_wip.c:(.text+0x6e4f): undefined reference to `clock_gettime'
/home/ajay/unikraft/unikraft/plat/xen/Linker.uk:22: recipe for target
'/home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64' failed
make[2]: *** [/home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64]
Error 1
Makefile:32: recipe for target '_all' failed
make[1]: *** [_all] Error 2
make[1]: Leaving directory '/home/ajay/unikraft/unikraft'
Makefile:6: recipe for target 'all' failed
make: *** [all] Error 2
ajay@latitude-3480:~/unikraft/apps/coremark$
####################################################################


I tried looking for any examples of linkage of OBJS files, but no example
(for OBJS) is present in any of plat/app folder.

Kindly help me in fixing this.



Thanks and Regards,
Ajay

--0000000000007fac1b0569c6eb5c
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: base64

PGRpdiBkaXI9Imx0ciI+PGRpdj48ZGl2PkhpIEFsbC48YnI+PGJyPkkgYW0gdHJ5aW5nIHRvIGlu
dGVncmF0ZSBjb3JlbWFyay1hcHAgaW4gdW5pa3JhZnQgZm9yIHg4Nl82NC48YnI+PC9kaXY+SXQg
cmVxdWlyZXMgc3RhdGljIGxpbmtpbmcgdG8gbGlicnQuYSBhbmQgbGlicHRocmVhZC5hOyBob3dl
dmVyIHNlZW1zwqAgdGhleSBhcmUgbm90IGJlaW5nIHBpY2tlZCB1cC48YnI+PGJyPjxicj48L2Rp
dj5Gb2xsb3dpbmcgaXMgdGhlIE1ha2VmaWxlLnVrIDo8YnI+PGJyPiMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPGJyPiQo
ZXZhbCAkKGNhbGwgYWRkbGliLGFwcGNvcmVtYXJrKSk8YnI+PGJyPkFQUENPUkVNQVJLX1NSQ1Mt
ecKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICs9ICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9t
YWluLmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqAgXDxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgJChBUFBDT1JFTUFSS19CQVNFKS9jb3JlX2xpc3Rfam9pbi5j
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oCBcPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoCAkKEFQUENPUkVNQVJLX0JBU0UpL2NvcmVfdXRpbC5jwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFw8
YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9zdGF0ZS5jwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFw8YnI+wqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICQoQVBQ
Q09SRU1BUktfQkFTRSkvY29yZV9tYXRyaXguY8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFw8YnI+wqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFw8
YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgICQoQVBQQ09SRU1BUktfQkFTRSkvbGludXg2NC9jb3JlX3BvcnRtZS5jPGJyPjxicj5BUFBD
T1JFTUFSS19PQkpTLXnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICs9IC91c3IvbGliL3g4
Nl82NC1saW51eC1nbnUvbGlicnQuYcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqAgXDxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoCAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2xpYnB0aHJlYWQuYTxicj48YnI+
QVBQQ09SRU1BUktfQ0lOQ0xVREVTLXnCoMKgwqDCoCArPS1JJChBUFBDT1JFTUFSS19CQVNFKcKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAtSSQoQVBQ
Q09SRU1BUktfQkFTRSkvbGludXg2NMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAtSSQoQVBQ
Q09SRU1BUktfQkFTRSkvLi4vLi4vdW5pa3JhZnQvbGliL25vbGliYy9pbmNsdWRlL3N5c8KgwqAg
XDxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqAgLUkvdXNyL2luY2x1ZGU8YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8YnI+PGRpdj48ZGl2Pjxicj48YnI+
Rm9sbG93aW5nIGlzIHRoZSBjb21waWxhdGlvbi1ydW4gOjxicj48YnI+IyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8YnI+
YWFqYXlAbGF0aXR1ZGUtMzQ4MDp+L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmskIG1ha2U8YnI+bWFr
ZVsxXTogRW50ZXJpbmcgZGlyZWN0b3J5ICYjMzk7L2hvbWUvYWpheS91bmlrcmFmdC91bmlrcmFm
dCYjMzk7PGJyPsKgIENQwqDCoMKgwqDCoCBjb25maWc8YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhl
bnBsYXQ6IGh5cGVydmlzb3Iubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogbWVtb3J5
Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IHNldHVwLm88YnI+wqAgQ0PCoMKgwqDC
oMKgIGxpYnhlbnBsYXQ6IHRyYXBzLm88YnI+wqAgQVPCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IGVu
dHJ5NjQubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogbW0ubzxicj7CoCBDQ8KgwqDC
oMKgwqAgbGlieGVucGxhdDogYXJjaF9ldmVudHMubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVu
cGxhdDogYXJjaF90aW1lLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IGxjcHUubzxi
cj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogY29uc29sZS5vPGJyPsKgIENDwqDCoMKgwqDC
oCBsaWJ4ZW5wbGF0OiBzaHV0ZG93bi5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJ4ZW5wbGF0OiBl
dmVudHMubzxicj7CoCBMRMKgwqDCoMKgwqAgbGlieGVucGxhdC5sZC5vPGJyPsKgIE9CSkNPUFkg
bGlieGVucGxhdC5vPGJyPsKgIENDwqDCoMKgwqDCoCBhcHBjb3JlbWFyazogY29yZV9tYWluLm88
YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2NvcmVfbWFpbi5jOiBJbiBmdW5j
dGlvbiDigJhtYWlu4oCZOjxicj4vaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvY29y
ZV9tYWluLmM6MjkyOjEyOiB3YXJuaW5nOiBmb3JtYXQg4oCYJWx14oCZIGV4cGVjdHMgYXJndW1l
bnQgb2YgdHlwZSDigJhsb25nIHVuc2lnbmVkIGludOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFzIHR5
cGUg4oCYdW5zaWduZWQgaW504oCZIFstV2Zvcm1hdD1dPGJyPsKgIGVlX3ByaW50ZigmcXVvdDtD
b3JlTWFyayBTaXplwqDCoMKgIDogJWx1XG4mcXVvdDssKGVlX3UzMilyZXN1bHRzWzBdLnNpemUp
Ozxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF48YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBz
L2NvcmVtYXJrL2NvcmVfbWFpbi5jOjI5MzoxMjogd2FybmluZzogZm9ybWF0IOKAmCVsdeKAmSBl
eHBlY3RzIGFyZ3VtZW50IG9mIHR5cGUg4oCYbG9uZyB1bnNpZ25lZCBpbnTigJksIGJ1dCBhcmd1
bWVudCAyIGhhcyB0eXBlIOKAmHVuc2lnbmVkIGludOKAmSBbLVdmb3JtYXQ9XTxicj7CoCBlZV9w
cmludGYoJnF1b3Q7VG90YWwgdGlja3PCoMKgwqDCoMKgIDogJWx1XG4mcXVvdDssKGVlX3UzMil0
b3RhbF90aW1lKTs8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBePGJyPi9ob21lL2FqYXkvdW5p
a3JhZnQvYXBwcy9jb3JlbWFyay9jb3JlX21haW4uYzozMDg6MTI6IHdhcm5pbmc6IGZvcm1hdCDi
gJglbHXigJkgZXhwZWN0cyBhcmd1bWVudCBvZiB0eXBlIOKAmGxvbmcgdW5zaWduZWQgaW504oCZ
LCBidXQgYXJndW1lbnQgMiBoYXMgdHlwZSDigJh1bnNpZ25lZCBpbnTigJkgWy1XZm9ybWF0PV08
YnI+wqAgZWVfcHJpbnRmKCZxdW90O0l0ZXJhdGlvbnPCoMKgwqDCoMKgwqAgOiAlbHVcbiZxdW90
OywoZWVfdTMyKWRlZmF1bHRfbnVtX2NvbnRleHRzKnJlc3VsdHNbMF0uaXRlcmF0aW9ucyk7PGJy
PsKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXjxicj7CoCBDQ8KgwqDCoMKgwqAgYXBwY29yZW1hcms6
IGNvcmVfbGlzdF9qb2luLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGFwcGNvcmVtYXJrOiBjb3JlX3V0
aWwubzxicj7CoCBDQ8KgwqDCoMKgwqAgYXBwY29yZW1hcms6IGNvcmVfc3RhdGUubzxicj7CoCBD
Q8KgwqDCoMKgwqAgYXBwY29yZW1hcms6IGNvcmVfbWF0cml4Lm88YnI+wqAgQ0PCoMKgwqDCoMKg
IGFwcGNvcmVtYXJrOiBjb3JlX3BvcnRtZS5vPGJyPkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdXNy
L2luY2x1ZGUvZmVhdHVyZXMuaDozNjc6MCw8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqAgZnJvbSAvdXNyL2luY2x1ZGUvbWFsbG9jLmg6MjIsPGJyPsKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgIGZyb20gL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2xp
bnV4NjQvY29yZV9wb3J0bWUuYzoxODo8YnI+L3Vzci9pbmNsdWRlL3N5cy9jZGVmcy5oOjI4NTow
OiB3YXJuaW5nOiAmcXVvdDtfX25vbm51bGwmcXVvdDsgcmVkZWZpbmVkPGJyPsKgIyBkZWZpbmUg
X19ub25udWxsKHBhcmFtcykgX19hdHRyaWJ1dGVfXyAoKF9fbm9ubnVsbF9fIHBhcmFtcykpPGJy
PsKgXjxicj5JbiBmaWxlIGluY2x1ZGVkIGZyb20gL2hvbWUvYWpheS91bmlrcmFmdC91bmlrcmFm
dC9saWIvbm9saWJjL2luY2x1ZGUvc3RkaW8uaDo0MTowLDxicj7CoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoCBmcm9tIC9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9saW51
eDY0L2NvcmVfcG9ydG1lLmM6OTo8YnI+L2hvbWUvYWpheS91bmlrcmFmdC91bmlrcmFmdC9pbmNs
dWRlL3VrL2Vzc2VudGlhbHMuaDo1OTowOiBub3RlOiB0aGlzIGlzIHRoZSBsb2NhdGlvbiBvZiB0
aGUgcHJldmlvdXMgZGVmaW5pdGlvbjxicj7CoCNkZWZpbmUgX19ub25udWxswqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqAgX19hdHRyaWJ1dGVfXygobm9ubnVsbCkpPGJyPsKgXjxicj4vaG9tZS9h
amF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOiBJbiBmdW5j
dGlvbiDigJhzdGFydF90aW1l4oCZOjxicj4vaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1h
cmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOjkzOjI0OiB3YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJh
dGlvbiBvZiBmdW5jdGlvbiDigJhjbG9ja19nZXR0aW1l4oCZIFstV2ltcGxpY2l0LWZ1bmN0aW9u
LWRlY2xhcmF0aW9uXTxicj7CoCAjZGVmaW5lIEdFVE1ZVElNRShfdCkgY2xvY2tfZ2V0dGltZSgw
LF90KTxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF48
YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUu
YzoxMTY6Mjogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmEdFVE1ZVElNReKAmTxicj7C
oCBHRVRNWVRJTUUoJmFtcDtzdGFydF90aW1lX3ZhbCApO8KgwqDCoMKgIMKgPGJyPsKgIF48YnI+
L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzog
SW4gZnVuY3Rpb24g4oCYcG9ydGFibGVfaW5pdOKAmTo8YnI+L2hvbWUvYWpheS91bmlrcmFmdC9h
cHBzL2NvcmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzoxNzI6NDM6IHdhcm5pbmc6IHVudXNl
ZCBwYXJhbWV0ZXIg4oCYYXJnY+KAmSBbLVd1bnVzZWQtcGFyYW1ldGVyXTxicj7CoHZvaWQgcG9y
dGFibGVfaW5pdChjb3JlX3BvcnRhYmxlICpwLCBpbnQgKmFyZ2MsIGNoYXIgKmFyZ3ZbXSk8YnI+
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF48YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBz
L2NvcmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzoxNzI6NTU6IHdhcm5pbmc6IHVudXNlZCBw
YXJhbWV0ZXIg4oCYYXJnduKAmSBbLVd1bnVzZWQtcGFyYW1ldGVyXTxicj7CoHZvaWQgcG9ydGFi
bGVfaW5pdChjb3JlX3BvcnRhYmxlICpwLCBpbnQgKmFyZ2MsIGNoYXIgKmFyZ3ZbXSk8YnI+wqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF48YnI+wqAg
TETCoMKgwqDCoMKgIGFwcGNvcmVtYXJrLmxkLm88YnI+wqAgT0JKQ09QWSBhcHBjb3JlbWFyay5v
PGJyPsKgIENDwqDCoMKgwqDCoCBsaWJ1a2Jvb3Q6IGJvb3Qubzxicj7CoCBMRMKgwqDCoMKgwqAg
bGlidWtib290LmxkLm88YnI+wqAgT0JKQ09QWSBsaWJ1a2Jvb3Qubzxicj7CoCBDQ8KgwqDCoMKg
wqAgbGlidWtkZWJ1ZzogcHJpbnQubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlidWtkZWJ1ZzogaGV4
ZHVtcC5vPGJyPsKgIExEwqDCoMKgwqDCoCBsaWJ1a2RlYnVnLmxkLm88YnI+wqAgT0JKQ09QWSBs
aWJ1a2RlYnVnLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnVrYXJncGFyc2U6IGFyZ3BhcnNlLm88
YnI+wqAgTETCoMKgwqDCoMKgIGxpYnVrYXJncGFyc2UubGQubzxicj7CoCBPQkpDT1BZIGxpYnVr
YXJncGFyc2Uubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlibm9saWJjOiBlcnJuby5vPGJyPsKgIEND
wqDCoMKgwqDCoCBsaWJub2xpYmM6IHN0ZGlvLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYm5vbGli
YzogY3R5cGUubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlibm9saWJjOiBzdGRsaWIubzxicj7CoCBD
Q8KgwqDCoMKgwqAgbGlibm9saWJjOiBzdHJpbmcubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlibm9s
aWJjOiBnZXRvcHQubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlibm9saWJjOiBtYWxsb2Mubzxicj7C
oCBMRMKgwqDCoMKgwqAgbGlibm9saWJjLmxkLm88YnI+wqAgT0JKQ09QWSBsaWJub2xpYmMubzxi
cj7CoCBDQ8KgwqDCoMKgwqAgbGlidWthbGxvYzogYWxsb2Mubzxicj7CoCBMRMKgwqDCoMKgwqAg
bGlidWthbGxvYy5sZC5vPGJyPsKgIE9CSkNPUFkgbGlidWthbGxvYy5vPGJyPsKgIENDwqDCoMKg
wqDCoCBsaWJ1a2FsbG9jYmJ1ZGR5OiBiYnVkZHkubzxicj7CoCBMRMKgwqDCoMKgwqAgbGlidWth
bGxvY2JidWRkeS5sZC5vPGJyPsKgIE9CSkNPUFkgbGlidWthbGxvY2JidWRkeS5vPGJyPsKgIEND
wqDCoMKgwqDCoCBsaWJmZHQ6IGZkdC5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJmZHQ6IGZkdF9h
ZGRyZXNzZXMubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGliZmR0OiBmZHRfZW1wdHlfdHJlZS5vPGJy
PsKgIENDwqDCoMKgwqDCoCBsaWJmZHQ6IGZkdF9vdmVybGF5Lm88YnI+wqAgQ0PCoMKgwqDCoMKg
IGxpYmZkdDogZmR0X3JvLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDogZmR0X3J3Lm88YnI+
wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDogZmR0X3N0cmVycm9yLm88YnI+wqAgQ0PCoMKgwqDCoMKg
IGxpYmZkdDogZmR0X3N3Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDogZmR0X3dpcC5vPGJy
PsKgIExEwqDCoMKgwqDCoCBsaWJmZHQubGQubzxicj7CoCBPQkpDT1BZIGxpYmZkdC5vPGJyPsKg
IExEwqDCoMKgwqDCoCBjb3JlbWFya194ZW4teDg2XzY0LmxkLm88YnI+wqAgT0JKQ09QWSBjb3Jl
bWFya194ZW4teDg2XzY0Lm88YnI+wqAgTETCoMKgwqDCoMKgIGNvcmVtYXJrX3hlbi14ODZfNjQ8
YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2J1aWxkL2NvcmVtYXJrX3hlbi14
ODZfNjQubzogSW4gZnVuY3Rpb24gYGl0ZXJhdGUmIzM5Ozo8YnI+ZmR0X3dpcC5jOigudGV4dCsw
eDU3MTkpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBzY2hlZF95aWVsZCYjMzk7PGJyPi9ob21l
L2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9idWlsZC9jb3JlbWFya194ZW4teDg2XzY0Lm86
IEluIGZ1bmN0aW9uIGBzdGFydF90aW1lJiMzOTs6PGJyPmZkdF93aXAuYzooLnRleHQrMHg2ZTJm
KTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgY2xvY2tfZ2V0dGltZSYjMzk7PGJyPi9ob21lL2Fq
YXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9idWlsZC9jb3JlbWFya194ZW4teDg2XzY0Lm86IElu
IGZ1bmN0aW9uIGBzdG9wX3RpbWUmIzM5Ozo8YnI+ZmR0X3dpcC5jOigudGV4dCsweDZlNGYpOiB1
bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBjbG9ja19nZXR0aW1lJiMzOTs8YnI+L2hvbWUvYWpheS91
bmlrcmFmdC91bmlrcmFmdC9wbGF0L3hlbi9MaW5rZXIudWs6MjI6IHJlY2lwZSBmb3IgdGFyZ2V0
ICYjMzk7L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2J1aWxkL2NvcmVtYXJrX3hl
bi14ODZfNjQmIzM5OyBmYWlsZWQ8YnI+bWFrZVsyXTogKioqIFsvaG9tZS9hamF5L3VuaWtyYWZ0
L2FwcHMvY29yZW1hcmsvYnVpbGQvY29yZW1hcmtfeGVuLXg4Nl82NF0gRXJyb3IgMTxicj5NYWtl
ZmlsZTozMjogcmVjaXBlIGZvciB0YXJnZXQgJiMzOTtfYWxsJiMzOTsgZmFpbGVkPGJyPm1ha2Vb
MV06ICoqKiBbX2FsbF0gRXJyb3IgMjxicj5tYWtlWzFdOiBMZWF2aW5nIGRpcmVjdG9yeSAmIzM5
Oy9ob21lL2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQmIzM5Ozxicj5NYWtlZmlsZTo2OiByZWNpcGUg
Zm9yIHRhcmdldCAmIzM5O2FsbCYjMzk7IGZhaWxlZDxicj5tYWtlOiAqKiogW2FsbF0gRXJyb3Ig
Mjxicj5hamF5QGxhdGl0dWRlLTM0ODA6fi91bmlrcmFmdC9hcHBzL2NvcmVtYXJrJDxicj4jIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIzxicj48YnI+PGJyPjwvZGl2PjxkaXY+SSB0cmllZCBsb29raW5nIGZvciBhbnkgZXhh
bXBsZXMgb2YgbGlua2FnZSBvZiBPQkpTIGZpbGVzLCBidXQgbm8gZXhhbXBsZSAoZm9yIE9CSlMp
IGlzIHByZXNlbnQgaW4gYW55IG9mIHBsYXQvYXBwIGZvbGRlci48YnI+PGJyPjwvZGl2PjxkaXY+
S2luZGx5IGhlbHAgbWUgaW4gZml4aW5nIHRoaXMuPGJyPjxicj48YnI+PGJyPjwvZGl2PjxkaXY+
VGhhbmtzIGFuZCBSZWdhcmRzLDxicj48L2Rpdj48ZGl2PkFqYXk8YnI+PC9kaXY+PC9kaXY+PC9k
aXY+DQo=
--0000000000007fac1b0569c6eb5c--


--===============4759958955059531347==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============4759958955059531347==--


From minios-devel-bounces@lists.xenproject.org Sat Apr 14 12:45:35 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sat, 14 Apr 2018 12:45:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7KYg-0003fI-7y; Sat, 14 Apr 2018 12:45:34 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=kmdo=hd=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f7KYe-0003eW-TO
 for minios-devel@lists.xenproject.org; Sat, 14 Apr 2018 12:45:32 +0000
X-Inumbo-ID: 972ade1b-3fe1-11e8-9728-bc764e045a96
Received: from mail-lf0-x232.google.com (unknown [2a00:1450:4010:c07::232])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 972ade1b-3fe1-11e8-9728-bc764e045a96;
 Sat, 14 Apr 2018 14:44:38 +0200 (CEST)
Received: by mail-lf0-x232.google.com with SMTP id q5-v6so16017332lff.12
 for <minios-devel@lists.xenproject.org>; Sat, 14 Apr 2018 05:45:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to;
 bh=guYJAIgYsWHmh2yxENzOd+vRgUxsy1NYpqw3fKGtzuA=;
 b=D4yIio7WxFAQAsYP24TD8Y6Et29XPrUmJA5seVlghPngZt0sfz8lIYwl43N5c/E4rh
 yf4VjZvqzRaMzIRhQinKzpfDWTgWmbl2IAA0jtXhXey4WgKCaol5iZ5m76+/uqkoaSlE
 B1kOb5zV5K8QEeoay8PYLrFGM6Vv2k/n2GN+oDHYlCJPQQJDtrfTQBvK6yvAAlCJVjW/
 t024eH0Dc2L3mtSnynEiibUZxz8hKemkWJP7mTba7yDEx9QwkVfysjNociSh/YWM2USp
 HjjzTeZA6DMt4fa5CaaIVuXVJqt18q+rtC7+kdoM+mqI07LzJ7I8vCoIGT1zHSxJamVK
 1nfA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=guYJAIgYsWHmh2yxENzOd+vRgUxsy1NYpqw3fKGtzuA=;
 b=hHKqtq8W+01IfiCKYFTgBW5/FDNlFBGwumK+0VgbHEtsgl9VgS8uQb5E8RcWd+kA3z
 bKBQbcgVkpJWDyoTDnmqQU7B4sxva46625Q2nCCXkR+zjXQNVkgewSV5RtEwsPju6IxU
 PrjemlaJKuaStj1TSfHzc3hp337VV+XaO/dfTVJimk3hSvBM/VQ/ICMIx+as5fcamX+V
 NqYx6i52/VEG0xxndFDkozCZTbcoIXcqV0ZmurFUR4ycx9B6E/9LNzs+EprBZJ/9tQGk
 rh48qlB4oguUqfxejIytSIiYcXQ5WCFJEYC5nFVlwNmpkx8xWH7xvpbG8wZggFMJN6q0
 2aMQ==
X-Gm-Message-State: ALQs6tAtEwF9ATV+y0IfN9COH7dtq/vp30tJofRsfLLMclHMUNyIxl/e
 td3jXHUw9mCmmITtk9ZhIbsliULfjA8ITmjpfy25lw==
X-Google-Smtp-Source: AIpwx4+j+9OUlWcoVcRAHQ5bqs+hgzznL8B4b8s4fzWnIFqbHrRaRn/siKLSCzv6ST5L/0pOkfsqLkNDn/Rjc+XQ3ME=
X-Received: by 2002:a19:4847:: with SMTP id
 v68-v6mr10073940lfa.63.1523709929060; 
 Sat, 14 Apr 2018 05:45:29 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:9889:0:0:0:0:0 with HTTP; Sat, 14 Apr 2018 05:45:28
 -0700 (PDT)
In-Reply-To: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Sat, 14 Apr 2018 18:15:28 +0530
Message-ID: <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============4499384471584610034=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============4499384471584610034==
Content-Type: multipart/alternative; boundary="0000000000000ffff30569ce5d93"

--0000000000000ffff30569ce5d93
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Very surprisingly, the missing functions (start_time, end_time) are
actually present in
https://github.com/tonyho/CoreMark/blob/master/core_main.c.
But in the make-output, fdt_wip.c is being listed.


On Sat, Apr 14, 2018 at 9:22 AM, Ajay Garg <ajaygargnsit@gmail.com> wrote:

> Hi All.
>
> I am trying to integrate coremark-app in unikraft for x86_64.
> It requires static linking to librt.a and libpthread.a; however seems
> they are not being picked up.
>
>
> Following is the Makefile.uk :
>
> ####################################################################
> $(eval $(call addlib,appcoremark))
>
> APPCOREMARK_SRCS-y              +=3D $(APPCOREMARK_BASE)/core_main.
> c                                  \
>
> $(APPCOREMARK_BASE)/core_list_join.c                              \
>
> $(APPCOREMARK_BASE)/core_util.c                                     \
>
> $(APPCOREMARK_BASE)/core_state.c                                  \
>
> $(APPCOREMARK_BASE)/core_matrix.c                                \
>
>
> \
>
> $(APPCOREMARK_BASE)/linux64/core_portme.c
>
> APPCOREMARK_OBJS-y               +=3D /usr/lib/x86_64-linux-gnu/
> librt.a                                                \
>
> /usr/lib/x86_64-linux-gnu/libpthread.a
>
> APPCOREMARK_CINCLUDES-y     +=3D-I$(APPCOREMARK_BASE)
>                                              \
>
> -I$(APPCOREMARK_BASE)/linux64                                        \
>
> -I$(APPCOREMARK_BASE)/../../unikraft/lib/nolibc/include/sys   \
>                                                           -I/usr/include
> ####################################################################
>
>
> Following is the compilation-run :
>
> ####################################################################
> aajay@latitude-3480:~/unikraft/apps/coremark$ make
> make[1]: Entering directory '/home/ajay/unikraft/unikraft'
>   CP      config
>   CC      libxenplat: hypervisor.o
>   CC      libxenplat: memory.o
>   CC      libxenplat: setup.o
>   CC      libxenplat: traps.o
>   AS      libxenplat: entry64.o
>   CC      libxenplat: mm.o
>   CC      libxenplat: arch_events.o
>   CC      libxenplat: arch_time.o
>   CC      libxenplat: lcpu.o
>   CC      libxenplat: console.o
>   CC      libxenplat: shutdown.o
>   CC      libxenplat: events.o
>   LD      libxenplat.ld.o
>   OBJCOPY libxenplat.o
>   CC      appcoremark: core_main.o
> /home/ajay/unikraft/apps/coremark/core_main.c: In function =E2=80=98main=
=E2=80=99:
> /home/ajay/unikraft/apps/coremark/core_main.c:292:12: warning: format
> =E2=80=98%lu=E2=80=99 expects argument of type =E2=80=98long unsigned int=
=E2=80=99, but argument 2 has type
> =E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
>   ee_printf("CoreMark Size    : %lu\n",(ee_u32)results[0].size);
>             ^
> /home/ajay/unikraft/apps/coremark/core_main.c:293:12: warning: format
> =E2=80=98%lu=E2=80=99 expects argument of type =E2=80=98long unsigned int=
=E2=80=99, but argument 2 has type
> =E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
>   ee_printf("Total ticks      : %lu\n",(ee_u32)total_time);
>             ^
> /home/ajay/unikraft/apps/coremark/core_main.c:308:12: warning: format
> =E2=80=98%lu=E2=80=99 expects argument of type =E2=80=98long unsigned int=
=E2=80=99, but argument 2 has type
> =E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
>   ee_printf("Iterations       : %lu\n",(ee_u32)default_num_
> contexts*results[0].iterations);
>             ^
>   CC      appcoremark: core_list_join.o
>   CC      appcoremark: core_util.o
>   CC      appcoremark: core_state.o
>   CC      appcoremark: core_matrix.o
>   CC      appcoremark: core_portme.o
> In file included from /usr/include/features.h:367:0,
>                  from /usr/include/malloc.h:22,
>                  from /home/ajay/unikraft/apps/
> coremark/linux64/core_portme.c:18:
> /usr/include/sys/cdefs.h:285:0: warning: "__nonnull" redefined
>  # define __nonnull(params) __attribute__ ((__nonnull__ params))
>  ^
> In file included from /home/ajay/unikraft/unikraft/
> lib/nolibc/include/stdio.h:41:0,
>                  from /home/ajay/unikraft/apps/
> coremark/linux64/core_portme.c:9:
> /home/ajay/unikraft/unikraft/include/uk/essentials.h:59:0: note: this is
> the location of the previous definition
>  #define __nonnull              __attribute__((nonnull))
>  ^
> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c: In function
> =E2=80=98start_time=E2=80=99:
> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:93:24: warning:
> implicit declaration of function =E2=80=98clock_gettime=E2=80=99 [-Wimpli=
cit-function-
> declaration]
>   #define GETMYTIME(_t) clock_gettime(0,_t)
>                         ^
> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:116:2: note: in
> expansion of macro =E2=80=98GETMYTIME=E2=80=99
>   GETMYTIME(&start_time_val );
>   ^
> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c: In function
> =E2=80=98portable_init=E2=80=99:
> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:172:43: warning:
> unused parameter =E2=80=98argc=E2=80=99 [-Wunused-parameter]
>  void portable_init(core_portable *p, int *argc, char *argv[])
>                                            ^
> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:172:55: warning:
> unused parameter =E2=80=98argv=E2=80=99 [-Wunused-parameter]
>  void portable_init(core_portable *p, int *argc, char *argv[])
>                                                        ^
>   LD      appcoremark.ld.o
>   OBJCOPY appcoremark.o
>   CC      libukboot: boot.o
>   LD      libukboot.ld.o
>   OBJCOPY libukboot.o
>   CC      libukdebug: print.o
>   CC      libukdebug: hexdump.o
>   LD      libukdebug.ld.o
>   OBJCOPY libukdebug.o
>   CC      libukargparse: argparse.o
>   LD      libukargparse.ld.o
>   OBJCOPY libukargparse.o
>   CC      libnolibc: errno.o
>   CC      libnolibc: stdio.o
>   CC      libnolibc: ctype.o
>   CC      libnolibc: stdlib.o
>   CC      libnolibc: string.o
>   CC      libnolibc: getopt.o
>   CC      libnolibc: malloc.o
>   LD      libnolibc.ld.o
>   OBJCOPY libnolibc.o
>   CC      libukalloc: alloc.o
>   LD      libukalloc.ld.o
>   OBJCOPY libukalloc.o
>   CC      libukallocbbuddy: bbuddy.o
>   LD      libukallocbbuddy.ld.o
>   OBJCOPY libukallocbbuddy.o
>   CC      libfdt: fdt.o
>   CC      libfdt: fdt_addresses.o
>   CC      libfdt: fdt_empty_tree.o
>   CC      libfdt: fdt_overlay.o
>   CC      libfdt: fdt_ro.o
>   CC      libfdt: fdt_rw.o
>   CC      libfdt: fdt_strerror.o
>   CC      libfdt: fdt_sw.o
>   CC      libfdt: fdt_wip.o
>   LD      libfdt.ld.o
>   OBJCOPY libfdt.o
>   LD      coremark_xen-x86_64.ld.o
>   OBJCOPY coremark_xen-x86_64.o
>   LD      coremark_xen-x86_64
> /home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In
> function `iterate':
> fdt_wip.c:(.text+0x5719): undefined reference to `sched_yield'
> /home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In
> function `start_time':
> fdt_wip.c:(.text+0x6e2f): undefined reference to `clock_gettime'
> /home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In
> function `stop_time':
> fdt_wip.c:(.text+0x6e4f): undefined reference to `clock_gettime'
> /home/ajay/unikraft/unikraft/plat/xen/Linker.uk:22: recipe for target
> '/home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64' failed
> make[2]: *** [/home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64=
]
> Error 1
> Makefile:32: recipe for target '_all' failed
> make[1]: *** [_all] Error 2
> make[1]: Leaving directory '/home/ajay/unikraft/unikraft'
> Makefile:6: recipe for target 'all' failed
> make: *** [all] Error 2
> ajay@latitude-3480:~/unikraft/apps/coremark$
> ####################################################################
>
>
> I tried looking for any examples of linkage of OBJS files, but no example
> (for OBJS) is present in any of plat/app folder.
>
> Kindly help me in fixing this.
>
>
>
> Thanks and Regards,
> Ajay
>



--=20
Regards,
Ajay

--0000000000000ffff30569ce5d93
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: base64

PGRpdiBkaXI9Imx0ciI+PGRpdj48ZGl2PlZlcnkgc3VycHJpc2luZ2x5LCB0aGUgbWlzc2luZyBm
dW5jdGlvbnMgKHN0YXJ0X3RpbWUsIGVuZF90aW1lKSBhcmUgYWN0dWFsbHkgcHJlc2VudCBpbiA8
YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vdG9ueWhvL0NvcmVNYXJrL2Jsb2IvbWFzdGVyL2Nv
cmVfbWFpbi5jIj5odHRwczovL2dpdGh1Yi5jb20vdG9ueWhvL0NvcmVNYXJrL2Jsb2IvbWFzdGVy
L2NvcmVfbWFpbi5jPC9hPi48YnI+PC9kaXY+QnV0IGluIHRoZSBtYWtlLW91dHB1dCwgZmR0X3dp
cC5jIGlzIGJlaW5nIGxpc3RlZC48YnI+PGJyPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWls
X2V4dHJhIj48YnI+PGRpdiBjbGFzcz0iZ21haWxfcXVvdGUiPk9uIFNhdCwgQXByIDE0LCAyMDE4
IGF0IDk6MjIgQU0sIEFqYXkgR2FyZyA8c3BhbiBkaXI9Imx0ciI+Jmx0OzxhIGhyZWY9Im1haWx0
bzphamF5Z2FyZ25zaXRAZ21haWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+YWpheWdhcmduc2l0QGdt
YWlsLmNvbTwvYT4mZ3Q7PC9zcGFuPiB3cm90ZTo8YnI+PGJsb2NrcXVvdGUgY2xhc3M9ImdtYWls
X3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29s
aWQ7cGFkZGluZy1sZWZ0OjFleCI+PGRpdiBkaXI9Imx0ciI+PGRpdj48ZGl2PkhpIEFsbC48YnI+
PGJyPkkgYW0gdHJ5aW5nIHRvIGludGVncmF0ZSBjb3JlbWFyay1hcHAgaW4gdW5pa3JhZnQgZm9y
IHg4Nl82NC48YnI+PC9kaXY+SXQgcmVxdWlyZXMgc3RhdGljIGxpbmtpbmcgdG8gbGlicnQuYSBh
bmQgbGlicHRocmVhZC5hOyBob3dldmVyIHNlZW1zwqAgdGhleSBhcmUgbm90IGJlaW5nIHBpY2tl
ZCB1cC48YnI+PGJyPjxicj48L2Rpdj5Gb2xsb3dpbmcgaXMgdGhlIE1ha2VmaWxlLnVrIDo8YnI+
PGJyPiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIzx3YnI+IyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjPHdicj4jIyMjIyMjIzxicj4kKGV2YWwgJChjYWxsIGFkZGxpYixhcHBjb3Jl
bWFyaykpPGJyPjxicj5BUFBDT1JFTUFSS19TUkNTLXnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8
d2JyPsKgICs9ICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9tYWluLjx3YnI+Y8KgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDC
oMKgIFw8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqAgJChBUFBDT1JFTUFSS19CQVNFKS9jb3JlX2xpc3RfPHdicj5qb2luLmPC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDC
oMKgwqAgXDxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoCAkKEFQUENPUkVNQVJLX0JBU0UpL2NvcmVfdXRpbC48d2JyPmPCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdi
cj7CoMKgwqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV88d2Jy
PnN0YXRlLmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdi
cj7CoMKgwqDCoMKgwqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICQoQVBQQ09SRU1BUktfQkFTRSkvY29y
ZV88d2JyPm1hdHJpeC5jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqA8d2JyPsKgwqDCoMKgwqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgIFw8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgJChBUFBDT1JFTUFSS19CQVNFKS9saW51eDY0Lzx3YnI+Y29y
ZV9wb3J0bWUuYzxicj48YnI+QVBQQ09SRU1BUktfT0JKUy15wqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgPHdicj7CoMKgICs9IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvPHdicj5saWJydC5hwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFw8YnI+wqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAvdXNy
L2xpYi94ODZfNjQtbGludXgtZ251Lzx3YnI+bGlicHRocmVhZC5hPGJyPjxicj5BUFBDT1JFTUFS
S19DSU5DTFVERVMtecKgwqDCoMKgICs9LUkkKEFQUENPUkVNQVJLX0JBU0UpwqDCoMKgwqDCoMKg
wqA8d2JyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIC1J
JChBUFBDT1JFTUFSS19CQVNFKS9saW51eDY0wqA8d2JyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDC
oCBcPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgIC1JJChBUFBDT1JFTUFSS19CQVNFKS8uLi8uLi88d2JyPnVuaWtyYWZ0L2xp
Yi9ub2xpYmMvaW5jbHVkZS88d2JyPnN5c8KgwqAgXDxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAtSS91c3IvaW5jbHVkZTxi
cj4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8d2JyPiMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIzx3YnI+IyMjIyMjIyM8YnI+PGRpdj48ZGl2Pjxicj48YnI+Rm9sbG93aW5nIGlz
IHRoZSBjb21waWxhdGlvbi1ydW4gOjxicj48YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjPHdicj4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8d2JyPiMjIyMjIyMjPGJyPmFh
amF5QGxhdGl0dWRlLTM0ODA6fi88d2JyPnVuaWtyYWZ0L2FwcHMvY29yZW1hcmskIG1ha2U8YnI+
bWFrZVsxXTogRW50ZXJpbmcgZGlyZWN0b3J5ICYjMzk7L2hvbWUvYWpheS91bmlrcmFmdC91bmlr
cmFmdCYjMzk7PGJyPsKgIENQwqDCoMKgwqDCoCBjb25maWc8YnI+wqAgQ0PCoMKgwqDCoMKgIGxp
YnhlbnBsYXQ6IGh5cGVydmlzb3Iubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogbWVt
b3J5Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IHNldHVwLm88YnI+wqAgQ0PCoMKg
wqDCoMKgIGxpYnhlbnBsYXQ6IHRyYXBzLm88YnI+wqAgQVPCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6
IGVudHJ5NjQubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogbW0ubzxicj7CoCBDQ8Kg
wqDCoMKgwqAgbGlieGVucGxhdDogYXJjaF9ldmVudHMubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGli
eGVucGxhdDogYXJjaF90aW1lLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IGxjcHUu
bzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogY29uc29sZS5vPGJyPsKgIENDwqDCoMKg
wqDCoCBsaWJ4ZW5wbGF0OiBzaHV0ZG93bi5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJ4ZW5wbGF0
OiBldmVudHMubzxicj7CoCBMRMKgwqDCoMKgwqAgbGlieGVucGxhdC5sZC5vPGJyPsKgIE9CSkNP
UFkgbGlieGVucGxhdC5vPGJyPsKgIENDwqDCoMKgwqDCoCBhcHBjb3JlbWFyazogY29yZV9tYWlu
Lm88YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzLzx3YnI+Y29yZW1hcmsvY29yZV9tYWluLmM6
IEluIGZ1bmN0aW9uIOKAmG1haW7igJk6PGJyPi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy88d2Jy
PmNvcmVtYXJrL2NvcmVfbWFpbi5jOjI5MjoxMjogd2FybmluZzogZm9ybWF0IOKAmCVsdeKAmSBl
eHBlY3RzIGFyZ3VtZW50IG9mIHR5cGUg4oCYbG9uZyB1bnNpZ25lZCBpbnTigJksIGJ1dCBhcmd1
bWVudCAyIGhhcyB0eXBlIOKAmHVuc2lnbmVkIGludOKAmSBbLVdmb3JtYXQ9XTxicj7CoCBlZV9w
cmludGYoJnF1b3Q7Q29yZU1hcmsgU2l6ZcKgwqDCoCA6ICVsdVxuJnF1b3Q7LChlZV91MzIpcmVz
dWx0c1swXS48d2JyPnNpemUpOzxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF48YnI+L2hvbWUv
YWpheS91bmlrcmFmdC9hcHBzLzx3YnI+Y29yZW1hcmsvY29yZV9tYWluLmM6MjkzOjEyOiB3YXJu
aW5nOiBmb3JtYXQg4oCYJWx14oCZIGV4cGVjdHMgYXJndW1lbnQgb2YgdHlwZSDigJhsb25nIHVu
c2lnbmVkIGludOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFzIHR5cGUg4oCYdW5zaWduZWQgaW504oCZ
IFstV2Zvcm1hdD1dPGJyPsKgIGVlX3ByaW50ZigmcXVvdDtUb3RhbCB0aWNrc8KgwqDCoMKgwqAg
OiAlbHVcbiZxdW90OywoZWVfdTMyKXRvdGFsX3RpbWUpOzxicj7CoMKgwqDCoMKgwqDCoMKgwqDC
oMKgIF48YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzLzx3YnI+Y29yZW1hcmsvY29yZV9tYWlu
LmM6MzA4OjEyOiB3YXJuaW5nOiBmb3JtYXQg4oCYJWx14oCZIGV4cGVjdHMgYXJndW1lbnQgb2Yg
dHlwZSDigJhsb25nIHVuc2lnbmVkIGludOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFzIHR5cGUg4oCY
dW5zaWduZWQgaW504oCZIFstV2Zvcm1hdD1dPGJyPsKgIGVlX3ByaW50ZigmcXVvdDtJdGVyYXRp
b25zwqDCoMKgwqDCoMKgIDogJWx1XG4mcXVvdDssKGVlX3UzMilkZWZhdWx0X251bV88d2JyPmNv
bnRleHRzKnJlc3VsdHNbMF0uPHdicj5pdGVyYXRpb25zKTs8YnI+wqDCoMKgwqDCoMKgwqDCoMKg
wqDCoCBePGJyPsKgIENDwqDCoMKgwqDCoCBhcHBjb3JlbWFyazogY29yZV9saXN0X2pvaW4ubzxi
cj7CoCBDQ8KgwqDCoMKgwqAgYXBwY29yZW1hcms6IGNvcmVfdXRpbC5vPGJyPsKgIENDwqDCoMKg
wqDCoCBhcHBjb3JlbWFyazogY29yZV9zdGF0ZS5vPGJyPsKgIENDwqDCoMKgwqDCoCBhcHBjb3Jl
bWFyazogY29yZV9tYXRyaXgubzxicj7CoCBDQ8KgwqDCoMKgwqAgYXBwY29yZW1hcms6IGNvcmVf
cG9ydG1lLm88YnI+SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC91c3IvaW5jbHVkZS9mZWF0dXJlcy5o
OjM2NzowLDxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmcm9tIC91c3IvaW5j
bHVkZS9tYWxsb2MuaDoyMiw8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZnJv
bSAvaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvPHdicj5jb3JlbWFyay9saW51eDY0L2NvcmVfcG9y
dG1lLjx3YnI+YzoxODo8YnI+L3Vzci9pbmNsdWRlL3N5cy9jZGVmcy5oOjI4NTo8d2JyPjA6IHdh
cm5pbmc6ICZxdW90O19fbm9ubnVsbCZxdW90OyByZWRlZmluZWQ8YnI+wqAjIGRlZmluZSBfX25v
bm51bGwocGFyYW1zKSBfX2F0dHJpYnV0ZV9fICgoX19ub25udWxsX18gcGFyYW1zKSk8YnI+wqBe
PGJyPkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvaG9tZS9hamF5L3VuaWtyYWZ0L3VuaWtyYWZ0Lzx3
YnI+bGliL25vbGliYy9pbmNsdWRlL3N0ZGlvLmg6NDE6PHdicj4wLDxicj7CoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoCBmcm9tIC9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy88d2JyPmNv
cmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuPHdicj5jOjk6PGJyPi9ob21lL2FqYXkvdW5pa3Jh
ZnQvdW5pa3JhZnQvPHdicj5pbmNsdWRlL3VrL2Vzc2VudGlhbHMuaDo1OTowOiBub3RlOiB0aGlz
IGlzIHRoZSBsb2NhdGlvbiBvZiB0aGUgcHJldmlvdXMgZGVmaW5pdGlvbjxicj7CoCNkZWZpbmUg
X19ub25udWxswqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgX19hdHRyaWJ1dGVfXygobm9ubnVs
bCkpPGJyPsKgXjxicj4vaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvPHdicj5jb3JlbWFyay9saW51
eDY0L2NvcmVfcG9ydG1lLjx3YnI+YzogSW4gZnVuY3Rpb24g4oCYc3RhcnRfdGltZeKAmTo8YnI+
L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzLzx3YnI+Y29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRt
ZS48d2JyPmM6OTM6MjQ6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9u
IOKAmGNsb2NrX2dldHRpbWXigJkgWy1XaW1wbGljaXQtZnVuY3Rpb24tPHdicj5kZWNsYXJhdGlv
bl08YnI+wqAgI2RlZmluZSBHRVRNWVRJTUUoX3QpIGNsb2NrX2dldHRpbWUoMCxfdCk8YnI+wqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBePGJyPi9ob21lL2Fq
YXkvdW5pa3JhZnQvYXBwcy88d2JyPmNvcmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuPHdicj5j
OjExNjoyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYR0VUTVlUSU1F4oCZPGJyPsKg
IEdFVE1ZVElNRSgmYW1wO3N0YXJ0X3RpbWVfdmFsICk7wqDCoMKgwqAgwqA8YnI+wqAgXjxicj4v
aG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvPHdicj5jb3JlbWFyay9saW51eDY0L2NvcmVfcG9ydG1l
Ljx3YnI+YzogSW4gZnVuY3Rpb24g4oCYcG9ydGFibGVfaW5pdOKAmTo8YnI+L2hvbWUvYWpheS91
bmlrcmFmdC9hcHBzLzx3YnI+Y29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRtZS48d2JyPmM6MTcy
OjQzOiB3YXJuaW5nOiB1bnVzZWQgcGFyYW1ldGVyIOKAmGFyZ2PigJkgWy1XdW51c2VkLXBhcmFt
ZXRlcl08YnI+wqB2b2lkIHBvcnRhYmxlX2luaXQoY29yZV9wb3J0YWJsZSAqcCwgaW50ICphcmdj
LCBjaGFyICphcmd2W10pPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF48YnI+
L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzLzx3YnI+Y29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRt
ZS48d2JyPmM6MTcyOjU1OiB3YXJuaW5nOiB1bnVzZWQgcGFyYW1ldGVyIOKAmGFyZ3bigJkgWy1X
dW51c2VkLXBhcmFtZXRlcl08YnI+wqB2b2lkIHBvcnRhYmxlX2luaXQoY29yZV9wb3J0YWJsZSAq
cCwgaW50ICphcmdjLCBjaGFyICphcmd2W10pPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF48YnI+wqAgTETCoMKgwqDCoMKgIGFwcGNv
cmVtYXJrLmxkLm88YnI+wqAgT0JKQ09QWSBhcHBjb3JlbWFyay5vPGJyPsKgIENDwqDCoMKgwqDC
oCBsaWJ1a2Jvb3Q6IGJvb3Qubzxicj7CoCBMRMKgwqDCoMKgwqAgbGlidWtib290LmxkLm88YnI+
wqAgT0JKQ09QWSBsaWJ1a2Jvb3Qubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlidWtkZWJ1ZzogcHJp
bnQubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlidWtkZWJ1ZzogaGV4ZHVtcC5vPGJyPsKgIExEwqDC
oMKgwqDCoCBsaWJ1a2RlYnVnLmxkLm88YnI+wqAgT0JKQ09QWSBsaWJ1a2RlYnVnLm88YnI+wqAg
Q0PCoMKgwqDCoMKgIGxpYnVrYXJncGFyc2U6IGFyZ3BhcnNlLm88YnI+wqAgTETCoMKgwqDCoMKg
IGxpYnVrYXJncGFyc2UubGQubzxicj7CoCBPQkpDT1BZIGxpYnVrYXJncGFyc2Uubzxicj7CoCBD
Q8KgwqDCoMKgwqAgbGlibm9saWJjOiBlcnJuby5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJub2xp
YmM6IHN0ZGlvLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYm5vbGliYzogY3R5cGUubzxicj7CoCBD
Q8KgwqDCoMKgwqAgbGlibm9saWJjOiBzdGRsaWIubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlibm9s
aWJjOiBzdHJpbmcubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlibm9saWJjOiBnZXRvcHQubzxicj7C
oCBDQ8KgwqDCoMKgwqAgbGlibm9saWJjOiBtYWxsb2Mubzxicj7CoCBMRMKgwqDCoMKgwqAgbGli
bm9saWJjLmxkLm88YnI+wqAgT0JKQ09QWSBsaWJub2xpYmMubzxicj7CoCBDQ8KgwqDCoMKgwqAg
bGlidWthbGxvYzogYWxsb2Mubzxicj7CoCBMRMKgwqDCoMKgwqAgbGlidWthbGxvYy5sZC5vPGJy
PsKgIE9CSkNPUFkgbGlidWthbGxvYy5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJ1a2FsbG9jYmJ1
ZGR5OiBiYnVkZHkubzxicj7CoCBMRMKgwqDCoMKgwqAgbGlidWthbGxvY2JidWRkeS5sZC5vPGJy
PsKgIE9CSkNPUFkgbGlidWthbGxvY2JidWRkeS5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJmZHQ6
IGZkdC5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJmZHQ6IGZkdF9hZGRyZXNzZXMubzxicj7CoCBD
Q8KgwqDCoMKgwqAgbGliZmR0OiBmZHRfZW1wdHlfdHJlZS5vPGJyPsKgIENDwqDCoMKgwqDCoCBs
aWJmZHQ6IGZkdF9vdmVybGF5Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDogZmR0X3JvLm88
YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDogZmR0X3J3Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxp
YmZkdDogZmR0X3N0cmVycm9yLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDogZmR0X3N3Lm88
YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDogZmR0X3dpcC5vPGJyPsKgIExEwqDCoMKgwqDCoCBs
aWJmZHQubGQubzxicj7CoCBPQkpDT1BZIGxpYmZkdC5vPGJyPsKgIExEwqDCoMKgwqDCoCBjb3Jl
bWFya194ZW4teDg2XzY0LmxkLm88YnI+wqAgT0JKQ09QWSBjb3JlbWFya194ZW4teDg2XzY0Lm88
YnI+wqAgTETCoMKgwqDCoMKgIGNvcmVtYXJrX3hlbi14ODZfNjQ8YnI+L2hvbWUvYWpheS91bmlr
cmFmdC9hcHBzLzx3YnI+Y29yZW1hcmsvYnVpbGQvY29yZW1hcmtfeGVuLTx3YnI+eDg2XzY0Lm86
IEluIGZ1bmN0aW9uIGBpdGVyYXRlJiMzOTs6PGJyPmZkdF93aXAuYzooLnRleHQrMHg1NzE5KTog
dW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgc2NoZWRfeWllbGQmIzM5Ozxicj4vaG9tZS9hamF5L3Vu
aWtyYWZ0L2FwcHMvPHdicj5jb3JlbWFyay9idWlsZC9jb3JlbWFya194ZW4tPHdicj54ODZfNjQu
bzogSW4gZnVuY3Rpb24gYHN0YXJ0X3RpbWUmIzM5Ozo8YnI+ZmR0X3dpcC5jOigudGV4dCsweDZl
MmYpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBjbG9ja19nZXR0aW1lJiMzOTs8YnI+L2hvbWUv
YWpheS91bmlrcmFmdC9hcHBzLzx3YnI+Y29yZW1hcmsvYnVpbGQvY29yZW1hcmtfeGVuLTx3YnI+
eDg2XzY0Lm86IEluIGZ1bmN0aW9uIGBzdG9wX3RpbWUmIzM5Ozo8YnI+ZmR0X3dpcC5jOigudGV4
dCsweDZlNGYpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBjbG9ja19nZXR0aW1lJiMzOTs8YnI+
L2hvbWUvYWpheS91bmlrcmFmdC91bmlrcmFmdC88d2JyPnBsYXQveGVuL0xpbmtlci51azoyMjog
cmVjaXBlIGZvciB0YXJnZXQgJiMzOTsvaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvPHdicj5jb3Jl
bWFyay9idWlsZC9jb3JlbWFya194ZW4tPHdicj54ODZfNjQmIzM5OyBmYWlsZWQ8YnI+bWFrZVsy
XTogKioqIFsvaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvPHdicj5jb3JlbWFyay9idWlsZC9jb3Jl
bWFya194ZW4tPHdicj54ODZfNjRdIEVycm9yIDE8YnI+TWFrZWZpbGU6MzI6IHJlY2lwZSBmb3Ig
dGFyZ2V0ICYjMzk7X2FsbCYjMzk7IGZhaWxlZDxicj5tYWtlWzFdOiAqKiogW19hbGxdIEVycm9y
IDI8YnI+bWFrZVsxXTogTGVhdmluZyBkaXJlY3RvcnkgJiMzOTsvaG9tZS9hamF5L3VuaWtyYWZ0
L3VuaWtyYWZ0JiMzOTs8YnI+TWFrZWZpbGU6NjogcmVjaXBlIGZvciB0YXJnZXQgJiMzOTthbGwm
IzM5OyBmYWlsZWQ8YnI+bWFrZTogKioqIFthbGxdIEVycm9yIDI8YnI+YWpheUBsYXRpdHVkZS0z
NDgwOn4vdW5pa3JhZnQvPHdicj5hcHBzL2NvcmVtYXJrJDxicj4jIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyM8d2JyPiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIzx3YnI+IyMjIyMj
IyM8YnI+PGJyPjxicj48L2Rpdj48ZGl2PkkgdHJpZWQgbG9va2luZyBmb3IgYW55IGV4YW1wbGVz
IG9mIGxpbmthZ2Ugb2YgT0JKUyBmaWxlcywgYnV0IG5vIGV4YW1wbGUgKGZvciBPQkpTKSBpcyBw
cmVzZW50IGluIGFueSBvZiBwbGF0L2FwcCBmb2xkZXIuPGJyPjxicj48L2Rpdj48ZGl2PktpbmRs
eSBoZWxwIG1lIGluIGZpeGluZyB0aGlzLjxicj48YnI+PGJyPjxicj48L2Rpdj48ZGl2PlRoYW5r
cyBhbmQgUmVnYXJkcyw8YnI+PC9kaXY+PGRpdj5BamF5PGJyPjwvZGl2PjwvZGl2PjwvZGl2Pg0K
PC9ibG9ja3F1b3RlPjwvZGl2Pjxicj48YnIgY2xlYXI9ImFsbCI+PGJyPi0tIDxicj48ZGl2IGNs
YXNzPSJnbWFpbF9zaWduYXR1cmUiIGRhdGEtc21hcnRtYWlsPSJnbWFpbF9zaWduYXR1cmUiPlJl
Z2FyZHMsPGJyPkFqYXk8YnI+PC9kaXY+DQo8L2Rpdj4NCg==
--0000000000000ffff30569ce5d93--


--===============4499384471584610034==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============4499384471584610034==--


From minios-devel-bounces@lists.xenproject.org Sun Apr 15 13:35:44 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sun, 15 Apr 2018 13:35:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7hok-0001K4-0m; Sun, 15 Apr 2018 13:35:42 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ab6t=he=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f7hoj-0001Jz-6s
 for minios-devel@lists.xenproject.org; Sun, 15 Apr 2018 13:35:41 +0000
X-Inumbo-ID: c13e0b4f-40b1-11e8-9728-bc764e045a96
Received: from mail-lf0-x22c.google.com (unknown [2a00:1450:4010:c07::22c])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id c13e0b4f-40b1-11e8-9728-bc764e045a96;
 Sun, 15 Apr 2018 15:34:44 +0200 (CEST)
Received: by mail-lf0-x22c.google.com with SMTP id q5-v6so18341886lff.12
 for <minios-devel@lists.xenproject.org>; Sun, 15 Apr 2018 06:35:38 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to;
 bh=90N2h4zwOQvD82+9GAHnspgS6n+oDw8KCMwqUGGMoYg=;
 b=JzIwz2nsYFkE+RP96hhUc+w1roraKRGEBCJiS0xO0ubNYb3mxI9IdZMpSm6tUOULKq
 /dc0Go6qkUAfnXTiTpDIIQZY1tUh9aNrEBzFlFHtQ4N2aZdE6A8UP286mE+9+71GZYLo
 ZR2O0FfHg6sAev67HpMv4P/AKaB2BiuqdlXJyi71SMDYIMoDBefQ14016G4CMvQihPWp
 tjBSm80zl32LuS+WL07j6/gwqiALy/eKx9ibcgON7NVe82eHJmckRNhEHzOve2IlpB1c
 v1RNYjlqyhsXNgjnYB148dMsVhtFO6jbNgfx7Mdn8Og9jw6/1uo65OU+FF3ktel8DUnF
 B3iQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=90N2h4zwOQvD82+9GAHnspgS6n+oDw8KCMwqUGGMoYg=;
 b=GVQMm/m7decXCCgcq6gec0LgJOOfFkOXIAayttBKxPslMUp5KW7BJ8HRiL3o1MAuJU
 +lAr6GVtfudW7+3H/qXdReHn5TVuGnKqNGKXKIC77JNgxHfpW8liw9HSFpUyuY339EAc
 ecdR3Sg9ustPTqX1iDF8QMdu3btx1Vah3hXzK0RB47j2vdhdU6Ta+kNmZF8HQsEu2NgQ
 0B1s9HFvFY1J5knTv6oH6ArBfeGwlwLxdo0UinBmNZ8zPxkwuQywU3zLS9vqS3gwquAB
 BYqLpZfPewkKwGOtA7/UqlP2rcqizOmrodgh8bolaSzf98MV8LOvyApW71IPA+23KBMB
 jWxQ==
X-Gm-Message-State: ALQs6tAGfPqiCECLWezUm8+VOi0euBkNLgE44jMMoHtFNm338/5XinZb
 qIjIra11MqN1Cc8A+xUFbifqmql//5qc65gjfBA=
X-Google-Smtp-Source: AIpwx4/1Zi4COVHxeIgw+7+uscwU4ePARy6nLHaVDCZQAdqFF5XDe/zXM8526CrY8ABFbACZgLqI+eIuI4DhcgGZwdg=
X-Received: by 2002:a19:4847:: with SMTP id
 v68-v6mr11838766lfa.63.1523799336600; 
 Sun, 15 Apr 2018 06:35:36 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:9889:0:0:0:0:0 with HTTP; Sun, 15 Apr 2018 06:35:35
 -0700 (PDT)
In-Reply-To: <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
 <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Sun, 15 Apr 2018 19:05:35 +0530
Message-ID: <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============8285618063786301956=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============8285618063786301956==
Content-Type: multipart/alternative; boundary="0000000000002acabe0569e32ee8"

--0000000000002acabe0569e32ee8
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Ideas please?
Any pointers to any existing example usage of linking static-libraries
would be useful.

On Sat, Apr 14, 2018 at 6:15 PM, Ajay Garg <ajaygargnsit@gmail.com> wrote:

> Very surprisingly, the missing functions (start_time, end_time) are
> actually present in https://github.com/tonyho/CoreMark/blob/master/core_
> main.c.
> But in the make-output, fdt_wip.c is being listed.
>
>
> On Sat, Apr 14, 2018 at 9:22 AM, Ajay Garg <ajaygargnsit@gmail.com> wrote=
:
>
>> Hi All.
>>
>> I am trying to integrate coremark-app in unikraft for x86_64.
>> It requires static linking to librt.a and libpthread.a; however seems
>> they are not being picked up.
>>
>>
>> Following is the Makefile.uk :
>>
>> ####################################################################
>> $(eval $(call addlib,appcoremark))
>>
>> APPCOREMARK_SRCS-y              +=3D $(APPCOREMARK_BASE)/core_main.
>> c                                  \
>>
>> $(APPCOREMARK_BASE)/core_list_join.c                              \
>>
>> $(APPCOREMARK_BASE)/core_util.c                                     \
>>
>> $(APPCOREMARK_BASE)/core_state.c                                  \
>>
>> $(APPCOREMARK_BASE)/core_matrix.c                                \
>>
>>
>> \
>>
>> $(APPCOREMARK_BASE)/linux64/core_portme.c
>>
>> APPCOREMARK_OBJS-y               +=3D /usr/lib/x86_64-linux-gnu/libr
>> t.a                                                \
>>
>> /usr/lib/x86_64-linux-gnu/libpthread.a
>>
>> APPCOREMARK_CINCLUDES-y     +=3D-I$(APPCOREMARK_BASE)
>>                                              \
>>
>> -I$(APPCOREMARK_BASE)/linux64                                        \
>>
>> -I$(APPCOREMARK_BASE)/../../unikraft/lib/nolibc/include/sys   \
>>                                                           -I/usr/include
>> ####################################################################
>>
>>
>> Following is the compilation-run :
>>
>> ####################################################################
>> aajay@latitude-3480:~/unikraft/apps/coremark$ make
>> make[1]: Entering directory '/home/ajay/unikraft/unikraft'
>>   CP      config
>>   CC      libxenplat: hypervisor.o
>>   CC      libxenplat: memory.o
>>   CC      libxenplat: setup.o
>>   CC      libxenplat: traps.o
>>   AS      libxenplat: entry64.o
>>   CC      libxenplat: mm.o
>>   CC      libxenplat: arch_events.o
>>   CC      libxenplat: arch_time.o
>>   CC      libxenplat: lcpu.o
>>   CC      libxenplat: console.o
>>   CC      libxenplat: shutdown.o
>>   CC      libxenplat: events.o
>>   LD      libxenplat.ld.o
>>   OBJCOPY libxenplat.o
>>   CC      appcoremark: core_main.o
>> /home/ajay/unikraft/apps/coremark/core_main.c: In function =E2=80=98main=
=E2=80=99:
>> /home/ajay/unikraft/apps/coremark/core_main.c:292:12: warning: format
>> =E2=80=98%lu=E2=80=99 expects argument of type =E2=80=98long unsigned in=
t=E2=80=99, but argument 2 has type
>> =E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
>>   ee_printf("CoreMark Size    : %lu\n",(ee_u32)results[0].size);
>>             ^
>> /home/ajay/unikraft/apps/coremark/core_main.c:293:12: warning: format
>> =E2=80=98%lu=E2=80=99 expects argument of type =E2=80=98long unsigned in=
t=E2=80=99, but argument 2 has type
>> =E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
>>   ee_printf("Total ticks      : %lu\n",(ee_u32)total_time);
>>             ^
>> /home/ajay/unikraft/apps/coremark/core_main.c:308:12: warning: format
>> =E2=80=98%lu=E2=80=99 expects argument of type =E2=80=98long unsigned in=
t=E2=80=99, but argument 2 has type
>> =E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
>>   ee_printf("Iterations       : %lu\n",(ee_u32)default_num_con
>> texts*results[0].iterations);
>>             ^
>>   CC      appcoremark: core_list_join.o
>>   CC      appcoremark: core_util.o
>>   CC      appcoremark: core_state.o
>>   CC      appcoremark: core_matrix.o
>>   CC      appcoremark: core_portme.o
>> In file included from /usr/include/features.h:367:0,
>>                  from /usr/include/malloc.h:22,
>>                  from /home/ajay/unikraft/apps/corem
>> ark/linux64/core_portme.c:18:
>> /usr/include/sys/cdefs.h:285:0: warning: "__nonnull" redefined
>>  # define __nonnull(params) __attribute__ ((__nonnull__ params))
>>  ^
>> In file included from /home/ajay/unikraft/unikraft/l
>> ib/nolibc/include/stdio.h:41:0,
>>                  from /home/ajay/unikraft/apps/corem
>> ark/linux64/core_portme.c:9:
>> /home/ajay/unikraft/unikraft/include/uk/essentials.h:59:0: note: this is
>> the location of the previous definition
>>  #define __nonnull              __attribute__((nonnull))
>>  ^
>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c: In function
>> =E2=80=98start_time=E2=80=99:
>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:93:24: warning:
>> implicit declaration of function =E2=80=98clock_gettime=E2=80=99
>> [-Wimplicit-function-declaration]
>>   #define GETMYTIME(_t) clock_gettime(0,_t)
>>                         ^
>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:116:2: note: in
>> expansion of macro =E2=80=98GETMYTIME=E2=80=99
>>   GETMYTIME(&start_time_val );
>>   ^
>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c: In function
>> =E2=80=98portable_init=E2=80=99:
>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:172:43: warning:
>> unused parameter =E2=80=98argc=E2=80=99 [-Wunused-parameter]
>>  void portable_init(core_portable *p, int *argc, char *argv[])
>>                                            ^
>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:172:55: warning:
>> unused parameter =E2=80=98argv=E2=80=99 [-Wunused-parameter]
>>  void portable_init(core_portable *p, int *argc, char *argv[])
>>                                                        ^
>>   LD      appcoremark.ld.o
>>   OBJCOPY appcoremark.o
>>   CC      libukboot: boot.o
>>   LD      libukboot.ld.o
>>   OBJCOPY libukboot.o
>>   CC      libukdebug: print.o
>>   CC      libukdebug: hexdump.o
>>   LD      libukdebug.ld.o
>>   OBJCOPY libukdebug.o
>>   CC      libukargparse: argparse.o
>>   LD      libukargparse.ld.o
>>   OBJCOPY libukargparse.o
>>   CC      libnolibc: errno.o
>>   CC      libnolibc: stdio.o
>>   CC      libnolibc: ctype.o
>>   CC      libnolibc: stdlib.o
>>   CC      libnolibc: string.o
>>   CC      libnolibc: getopt.o
>>   CC      libnolibc: malloc.o
>>   LD      libnolibc.ld.o
>>   OBJCOPY libnolibc.o
>>   CC      libukalloc: alloc.o
>>   LD      libukalloc.ld.o
>>   OBJCOPY libukalloc.o
>>   CC      libukallocbbuddy: bbuddy.o
>>   LD      libukallocbbuddy.ld.o
>>   OBJCOPY libukallocbbuddy.o
>>   CC      libfdt: fdt.o
>>   CC      libfdt: fdt_addresses.o
>>   CC      libfdt: fdt_empty_tree.o
>>   CC      libfdt: fdt_overlay.o
>>   CC      libfdt: fdt_ro.o
>>   CC      libfdt: fdt_rw.o
>>   CC      libfdt: fdt_strerror.o
>>   CC      libfdt: fdt_sw.o
>>   CC      libfdt: fdt_wip.o
>>   LD      libfdt.ld.o
>>   OBJCOPY libfdt.o
>>   LD      coremark_xen-x86_64.ld.o
>>   OBJCOPY coremark_xen-x86_64.o
>>   LD      coremark_xen-x86_64
>> /home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In
>> function `iterate':
>> fdt_wip.c:(.text+0x5719): undefined reference to `sched_yield'
>> /home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In
>> function `start_time':
>> fdt_wip.c:(.text+0x6e2f): undefined reference to `clock_gettime'
>> /home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In
>> function `stop_time':
>> fdt_wip.c:(.text+0x6e4f): undefined reference to `clock_gettime'
>> /home/ajay/unikraft/unikraft/plat/xen/Linker.uk:22: recipe for target
>> '/home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64' failed
>> make[2]: *** [/home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_6=
4]
>> Error 1
>> Makefile:32: recipe for target '_all' failed
>> make[1]: *** [_all] Error 2
>> make[1]: Leaving directory '/home/ajay/unikraft/unikraft'
>> Makefile:6: recipe for target 'all' failed
>> make: *** [all] Error 2
>> ajay@latitude-3480:~/unikraft/apps/coremark$
>> ####################################################################
>>
>>
>> I tried looking for any examples of linkage of OBJS files, but no exampl=
e
>> (for OBJS) is present in any of plat/app folder.
>>
>> Kindly help me in fixing this.
>>
>>
>>
>> Thanks and Regards,
>> Ajay
>>
>
>
>
> --
> Regards,
> Ajay
>



--=20
Regards,
Ajay

--0000000000002acabe0569e32ee8
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: base64

PGRpdiBkaXI9Imx0ciI+PGRpdj5JZGVhcyBwbGVhc2U/PGJyPjwvZGl2PkFueSBwb2ludGVycyB0
byBhbnkgZXhpc3RpbmcgZXhhbXBsZSB1c2FnZSBvZiBsaW5raW5nIHN0YXRpYy1saWJyYXJpZXMg
d291bGQgYmUgdXNlZnVsLjxicj48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSI+PGJyPjxk
aXYgY2xhc3M9ImdtYWlsX3F1b3RlIj5PbiBTYXQsIEFwciAxNCwgMjAxOCBhdCA2OjE1IFBNLCBB
amF5IEdhcmcgPHNwYW4gZGlyPSJsdHIiPiZsdDs8YSBocmVmPSJtYWlsdG86YWpheWdhcmduc2l0
QGdtYWlsLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmFqYXlnYXJnbnNpdEBnbWFpbC5jb208L2E+Jmd0
Ozwvc3Bhbj4gd3JvdGU6PGJyPjxibG9ja3F1b3RlIGNsYXNzPSJnbWFpbF9xdW90ZSIgc3R5bGU9
Im1hcmdpbjowIDAgMCAuOGV4O2JvcmRlci1sZWZ0OjFweCAjY2NjIHNvbGlkO3BhZGRpbmctbGVm
dDoxZXgiPjxkaXYgZGlyPSJsdHIiPjxkaXY+PGRpdj5WZXJ5IHN1cnByaXNpbmdseSwgdGhlIG1p
c3NpbmcgZnVuY3Rpb25zIChzdGFydF90aW1lLCBlbmRfdGltZSkgYXJlIGFjdHVhbGx5IHByZXNl
bnQgaW4gPGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL3Rvbnloby9Db3JlTWFyay9ibG9iL21h
c3Rlci9jb3JlX21haW4uYyIgdGFyZ2V0PSJfYmxhbmsiPmh0dHBzOi8vZ2l0aHViLmNvbS90b255
aG8vPHdicj5Db3JlTWFyay9ibG9iL21hc3Rlci9jb3JlXzx3YnI+bWFpbi5jPC9hPi48YnI+PC9k
aXY+QnV0IGluIHRoZSBtYWtlLW91dHB1dCwgZmR0X3dpcC5jIGlzIGJlaW5nIGxpc3RlZC48YnI+
PGJyPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2V4dHJhIj48ZGl2PjxkaXYgY2xhc3M9
Img1Ij48YnI+PGRpdiBjbGFzcz0iZ21haWxfcXVvdGUiPk9uIFNhdCwgQXByIDE0LCAyMDE4IGF0
IDk6MjIgQU0sIEFqYXkgR2FyZyA8c3BhbiBkaXI9Imx0ciI+Jmx0OzxhIGhyZWY9Im1haWx0bzph
amF5Z2FyZ25zaXRAZ21haWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+YWpheWdhcmduc2l0QGdtYWls
LmNvbTwvYT4mZ3Q7PC9zcGFuPiB3cm90ZTo8YnI+PGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1
b3RlIiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7
cGFkZGluZy1sZWZ0OjFleCI+PGRpdiBkaXI9Imx0ciI+PGRpdj48ZGl2PkhpIEFsbC48YnI+PGJy
PkkgYW0gdHJ5aW5nIHRvIGludGVncmF0ZSBjb3JlbWFyay1hcHAgaW4gdW5pa3JhZnQgZm9yIHg4
Nl82NC48YnI+PC9kaXY+SXQgcmVxdWlyZXMgc3RhdGljIGxpbmtpbmcgdG8gbGlicnQuYSBhbmQg
bGlicHRocmVhZC5hOyBob3dldmVyIHNlZW1zwqAgdGhleSBhcmUgbm90IGJlaW5nIHBpY2tlZCB1
cC48YnI+PGJyPjxicj48L2Rpdj5Gb2xsb3dpbmcgaXMgdGhlIE1ha2VmaWxlLnVrIDo8YnI+PGJy
PiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIzx3YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjPHdicj4jIyMjIyMjIzxicj4kKGV2YWwgJChjYWxsIGFkZGxpYixhcHBjb3JlbWFy
aykpPGJyPjxicj5BUFBDT1JFTUFSS19TUkNTLXnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2Jy
PsKgICs9ICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9tYWluLjx3YnI+Y8KgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKg
IFw8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqAgJChBUFBDT1JFTUFSS19CQVNFKS9jb3JlX2xpc3RfPHdicj5qb2luLmPCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKg
wqAgXDxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoCAkKEFQUENPUkVNQVJLX0JBU0UpL2NvcmVfdXRpbC48d2JyPmPCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7C
oMKgwqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9zdGF0ZTx3
YnI+LmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoDx3YnI+wqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9t
YXRyaTx3YnI+eC5jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgPHdicj7CoMKgwqDCoCBcPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3
YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgIFw8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqAgJChBUFBDT1JFTUFSS19CQVNFKS9saW51eDY0L2NvPHdicj5yZV9w
b3J0bWUuYzxicj48YnI+QVBQQ09SRU1BUktfT0JKUy15wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
PHdicj7CoMKgICs9IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvbGlicjx3YnI+dC5hwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFw8YnI+wqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAvdXNyL2xp
Yi94ODZfNjQtbGludXgtZ251L2xpYnA8d2JyPnRocmVhZC5hPGJyPjxicj5BUFBDT1JFTUFSS19D
SU5DTFVERVMtecKgwqDCoMKgICs9LUkkKEFQUENPUkVNQVJLX0JBU0UpwqDCoMKgwqDCoMKgwqA8
d2JyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIC1JJChB
UFBDT1JFTUFSS19CQVNFKS9saW51eDY0wqA8d2JyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoCBc
PGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgIC1JJChBUFBDT1JFTUFSS19CQVNFKS8uLi8uLi91bjx3YnI+aWtyYWZ0L2xpYi9u
b2xpYmMvaW5jbHVkZS9zeXPCoDx3YnI+wqAgXDxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAtSS91c3IvaW5jbHVkZTxicj4j
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8d2JyPiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIzx3YnI+IyMjIyMjIyM8YnI+PGRpdj48ZGl2Pjxicj48YnI+Rm9sbG93aW5nIGlzIHRo
ZSBjb21waWxhdGlvbi1ydW4gOjxicj48YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
PHdicj4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8d2JyPiMjIyMjIyMjPGJyPmFhamF5
QGxhdGl0dWRlLTM0ODA6fi91bmlrcmFmdDx3YnI+L2FwcHMvY29yZW1hcmskIG1ha2U8YnI+bWFr
ZVsxXTogRW50ZXJpbmcgZGlyZWN0b3J5ICYjMzk7L2hvbWUvYWpheS91bmlrcmFmdC91bmlrcmFm
dCYjMzk7PGJyPsKgIENQwqDCoMKgwqDCoCBjb25maWc8YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhl
bnBsYXQ6IGh5cGVydmlzb3Iubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogbWVtb3J5
Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IHNldHVwLm88YnI+wqAgQ0PCoMKgwqDC
oMKgIGxpYnhlbnBsYXQ6IHRyYXBzLm88YnI+wqAgQVPCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IGVu
dHJ5NjQubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogbW0ubzxicj7CoCBDQ8KgwqDC
oMKgwqAgbGlieGVucGxhdDogYXJjaF9ldmVudHMubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVu
cGxhdDogYXJjaF90aW1lLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IGxjcHUubzxi
cj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogY29uc29sZS5vPGJyPsKgIENDwqDCoMKgwqDC
oCBsaWJ4ZW5wbGF0OiBzaHV0ZG93bi5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJ4ZW5wbGF0OiBl
dmVudHMubzxicj7CoCBMRMKgwqDCoMKgwqAgbGlieGVucGxhdC5sZC5vPGJyPsKgIE9CSkNPUFkg
bGlieGVucGxhdC5vPGJyPsKgIENDwqDCoMKgwqDCoCBhcHBjb3JlbWFyazogY29yZV9tYWluLm88
YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtPHdicj5hcmsvY29yZV9tYWluLmM6IElu
IGZ1bmN0aW9uIOKAmG1haW7igJk6PGJyPi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbTx3
YnI+YXJrL2NvcmVfbWFpbi5jOjI5MjoxMjogd2FybmluZzogZm9ybWF0IOKAmCVsdeKAmSBleHBl
Y3RzIGFyZ3VtZW50IG9mIHR5cGUg4oCYbG9uZyB1bnNpZ25lZCBpbnTigJksIGJ1dCBhcmd1bWVu
dCAyIGhhcyB0eXBlIOKAmHVuc2lnbmVkIGludOKAmSBbLVdmb3JtYXQ9XTxicj7CoCBlZV9wcmlu
dGYoJnF1b3Q7Q29yZU1hcmsgU2l6ZcKgwqDCoCA6ICVsdVxuJnF1b3Q7LChlZV91MzIpcmVzdWx0
c1swXS5zaXplPHdicj4pOzxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF48YnI+L2hvbWUvYWph
eS91bmlrcmFmdC9hcHBzL2NvcmVtPHdicj5hcmsvY29yZV9tYWluLmM6MjkzOjEyOiB3YXJuaW5n
OiBmb3JtYXQg4oCYJWx14oCZIGV4cGVjdHMgYXJndW1lbnQgb2YgdHlwZSDigJhsb25nIHVuc2ln
bmVkIGludOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFzIHR5cGUg4oCYdW5zaWduZWQgaW504oCZIFst
V2Zvcm1hdD1dPGJyPsKgIGVlX3ByaW50ZigmcXVvdDtUb3RhbCB0aWNrc8KgwqDCoMKgwqAgOiAl
bHVcbiZxdW90OywoZWVfdTMyKXRvdGFsX3RpbWUpOzxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKg
IF48YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtPHdicj5hcmsvY29yZV9tYWluLmM6
MzA4OjEyOiB3YXJuaW5nOiBmb3JtYXQg4oCYJWx14oCZIGV4cGVjdHMgYXJndW1lbnQgb2YgdHlw
ZSDigJhsb25nIHVuc2lnbmVkIGludOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFzIHR5cGUg4oCYdW5z
aWduZWQgaW504oCZIFstV2Zvcm1hdD1dPGJyPsKgIGVlX3ByaW50ZigmcXVvdDtJdGVyYXRpb25z
wqDCoMKgwqDCoMKgIDogJWx1XG4mcXVvdDssKGVlX3UzMilkZWZhdWx0X251bV9jb248d2JyPnRl
eHRzKnJlc3VsdHNbMF0uaXRlcmF0aW9ucyk7PGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXjxi
cj7CoCBDQ8KgwqDCoMKgwqAgYXBwY29yZW1hcms6IGNvcmVfbGlzdF9qb2luLm88YnI+wqAgQ0PC
oMKgwqDCoMKgIGFwcGNvcmVtYXJrOiBjb3JlX3V0aWwubzxicj7CoCBDQ8KgwqDCoMKgwqAgYXBw
Y29yZW1hcms6IGNvcmVfc3RhdGUubzxicj7CoCBDQ8KgwqDCoMKgwqAgYXBwY29yZW1hcms6IGNv
cmVfbWF0cml4Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGFwcGNvcmVtYXJrOiBjb3JlX3BvcnRtZS5v
PGJyPkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdXNyL2luY2x1ZGUvZmVhdHVyZXMuaDozNjc6MCw8
YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZnJvbSAvdXNyL2luY2x1ZGUvbWFs
bG9jLmg6MjIsPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZyb20gL2hvbWUv
YWpheS91bmlrcmFmdC9hcHBzL2NvcmVtPHdicj5hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOjE4
Ojxicj4vdXNyL2luY2x1ZGUvc3lzL2NkZWZzLmg6Mjg1OjA8d2JyPjogd2FybmluZzogJnF1b3Q7
X19ub25udWxsJnF1b3Q7IHJlZGVmaW5lZDxicj7CoCMgZGVmaW5lIF9fbm9ubnVsbChwYXJhbXMp
IF9fYXR0cmlidXRlX18gKChfX25vbm51bGxfXyBwYXJhbXMpKTxicj7CoF48YnI+SW4gZmlsZSBp
bmNsdWRlZCBmcm9tIC9ob21lL2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQvbDx3YnI+aWIvbm9saWJj
L2luY2x1ZGUvc3RkaW8uaDo0MTowPHdicj4sPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgIGZyb20gL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtPHdicj5hcmsvbGludXg2
NC9jb3JlX3BvcnRtZS5jOjk6PGJyPi9ob21lL2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQvaTx3YnI+
bmNsdWRlL3VrL2Vzc2VudGlhbHMuaDo1OTowOiBub3RlOiB0aGlzIGlzIHRoZSBsb2NhdGlvbiBv
ZiB0aGUgcHJldmlvdXMgZGVmaW5pdGlvbjxicj7CoCNkZWZpbmUgX19ub25udWxswqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqAgX19hdHRyaWJ1dGVfXygobm9ubnVsbCkpPGJyPsKgXjxicj4vaG9t
ZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW08d2JyPmFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6
IEluIGZ1bmN0aW9uIOKAmHN0YXJ0X3RpbWXigJk6PGJyPi9ob21lL2FqYXkvdW5pa3JhZnQvYXBw
cy9jb3JlbTx3YnI+YXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzo5Mzo8d2JyPjI0OiB3YXJuaW5n
OiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhjbG9ja19nZXR0aW1l4oCZIFst
V2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aTx3YnI+b25dPGJyPsKgICNkZWZpbmUgR0VUTVlU
SU1FKF90KSBjbG9ja19nZXR0aW1lKDAsX3QpPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgXjxicj4vaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW08
d2JyPmFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6MTE2Ojx3YnI+Mjogbm90ZTogaW4gZXhwYW5z
aW9uIG9mIG1hY3JvIOKAmEdFVE1ZVElNReKAmTxicj7CoCBHRVRNWVRJTUUoJmFtcDtzdGFydF90
aW1lX3ZhbCApO8KgwqDCoMKgIMKgPGJyPsKgIF48YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBz
L2NvcmVtPHdicj5hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOiBJbiBmdW5jdGlvbiDigJhwb3J0
YWJsZV9pbml04oCZOjxicj4vaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW08d2JyPmFyay9s
aW51eDY0L2NvcmVfcG9ydG1lLmM6MTcyOjx3YnI+NDM6IHdhcm5pbmc6IHVudXNlZCBwYXJhbWV0
ZXIg4oCYYXJnY+KAmSBbLVd1bnVzZWQtcGFyYW1ldGVyXTxicj7CoHZvaWQgcG9ydGFibGVfaW5p
dChjb3JlX3BvcnRhYmxlICpwLCBpbnQgKmFyZ2MsIGNoYXIgKmFyZ3ZbXSk8YnI+wqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7C
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXjxicj4vaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29y
ZW08d2JyPmFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6MTcyOjx3YnI+NTU6IHdhcm5pbmc6IHVu
dXNlZCBwYXJhbWV0ZXIg4oCYYXJnduKAmSBbLVd1bnVzZWQtcGFyYW1ldGVyXTxicj7CoHZvaWQg
cG9ydGFibGVfaW5pdChjb3JlX3BvcnRhYmxlICpwLCBpbnQgKmFyZ2MsIGNoYXIgKmFyZ3ZbXSk8
YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqAgXjxicj7CoCBMRMKgwqDCoMKgwqAgYXBwY29yZW1hcmsubGQubzxicj7CoCBPQkpDT1BZIGFw
cGNvcmVtYXJrLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnVrYm9vdDogYm9vdC5vPGJyPsKgIExE
wqDCoMKgwqDCoCBsaWJ1a2Jvb3QubGQubzxicj7CoCBPQkpDT1BZIGxpYnVrYm9vdC5vPGJyPsKg
IENDwqDCoMKgwqDCoCBsaWJ1a2RlYnVnOiBwcmludC5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJ1
a2RlYnVnOiBoZXhkdW1wLm88YnI+wqAgTETCoMKgwqDCoMKgIGxpYnVrZGVidWcubGQubzxicj7C
oCBPQkpDT1BZIGxpYnVrZGVidWcubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlidWthcmdwYXJzZTog
YXJncGFyc2Uubzxicj7CoCBMRMKgwqDCoMKgwqAgbGlidWthcmdwYXJzZS5sZC5vPGJyPsKgIE9C
SkNPUFkgbGlidWthcmdwYXJzZS5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJub2xpYmM6IGVycm5v
Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYm5vbGliYzogc3RkaW8ubzxicj7CoCBDQ8KgwqDCoMKg
wqAgbGlibm9saWJjOiBjdHlwZS5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJub2xpYmM6IHN0ZGxp
Yi5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJub2xpYmM6IHN0cmluZy5vPGJyPsKgIENDwqDCoMKg
wqDCoCBsaWJub2xpYmM6IGdldG9wdC5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJub2xpYmM6IG1h
bGxvYy5vPGJyPsKgIExEwqDCoMKgwqDCoCBsaWJub2xpYmMubGQubzxicj7CoCBPQkpDT1BZIGxp
Ym5vbGliYy5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJ1a2FsbG9jOiBhbGxvYy5vPGJyPsKgIExE
wqDCoMKgwqDCoCBsaWJ1a2FsbG9jLmxkLm88YnI+wqAgT0JKQ09QWSBsaWJ1a2FsbG9jLm88YnI+
wqAgQ0PCoMKgwqDCoMKgIGxpYnVrYWxsb2NiYnVkZHk6IGJidWRkeS5vPGJyPsKgIExEwqDCoMKg
wqDCoCBsaWJ1a2FsbG9jYmJ1ZGR5LmxkLm88YnI+wqAgT0JKQ09QWSBsaWJ1a2FsbG9jYmJ1ZGR5
Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDogZmR0Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxp
YmZkdDogZmR0X2FkZHJlc3Nlcy5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJmZHQ6IGZkdF9lbXB0
eV90cmVlLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDogZmR0X292ZXJsYXkubzxicj7CoCBD
Q8KgwqDCoMKgwqAgbGliZmR0OiBmZHRfcm8ubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGliZmR0OiBm
ZHRfcncubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGliZmR0OiBmZHRfc3RyZXJyb3Iubzxicj7CoCBD
Q8KgwqDCoMKgwqAgbGliZmR0OiBmZHRfc3cubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGliZmR0OiBm
ZHRfd2lwLm88YnI+wqAgTETCoMKgwqDCoMKgIGxpYmZkdC5sZC5vPGJyPsKgIE9CSkNPUFkgbGli
ZmR0Lm88YnI+wqAgTETCoMKgwqDCoMKgIGNvcmVtYXJrX3hlbi14ODZfNjQubGQubzxicj7CoCBP
QkpDT1BZIGNvcmVtYXJrX3hlbi14ODZfNjQubzxicj7CoCBMRMKgwqDCoMKgwqAgY29yZW1hcmtf
eGVuLXg4Nl82NDxicj4vaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW08d2JyPmFyay9idWls
ZC9jb3JlbWFya194ZW4teDg2XzY0Ljx3YnI+bzogSW4gZnVuY3Rpb24gYGl0ZXJhdGUmIzM5Ozo8
YnI+ZmR0X3dpcC5jOigudGV4dCsweDU3MTkpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBzY2hl
ZF95aWVsZCYjMzk7PGJyPi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbTx3YnI+YXJrL2J1
aWxkL2NvcmVtYXJrX3hlbi14ODZfNjQuPHdicj5vOiBJbiBmdW5jdGlvbiBgc3RhcnRfdGltZSYj
Mzk7Ojxicj5mZHRfd2lwLmM6KC50ZXh0KzB4NmUyZik6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8g
YGNsb2NrX2dldHRpbWUmIzM5Ozxicj4vaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW08d2Jy
PmFyay9idWlsZC9jb3JlbWFya194ZW4teDg2XzY0Ljx3YnI+bzogSW4gZnVuY3Rpb24gYHN0b3Bf
dGltZSYjMzk7Ojxicj5mZHRfd2lwLmM6KC50ZXh0KzB4NmU0Zik6IHVuZGVmaW5lZCByZWZlcmVu
Y2UgdG8gYGNsb2NrX2dldHRpbWUmIzM5Ozxicj4vaG9tZS9hamF5L3VuaWtyYWZ0L3VuaWtyYWZ0
L3A8d2JyPmxhdC94ZW4vTGlua2VyLnVrOjIyOiByZWNpcGUgZm9yIHRhcmdldCAmIzM5Oy9ob21l
L2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlPHdicj5tYXJrL2J1aWxkL2NvcmVtYXJrX3hlbi14ODZf
PHdicj42NCYjMzk7IGZhaWxlZDxicj5tYWtlWzJdOiAqKiogWy9ob21lL2FqYXkvdW5pa3JhZnQv
YXBwcy9jb3JlPHdicj5tYXJrL2J1aWxkL2NvcmVtYXJrX3hlbi14ODZfPHdicj42NF0gRXJyb3Ig
MTxicj5NYWtlZmlsZTozMjogcmVjaXBlIGZvciB0YXJnZXQgJiMzOTtfYWxsJiMzOTsgZmFpbGVk
PGJyPm1ha2VbMV06ICoqKiBbX2FsbF0gRXJyb3IgMjxicj5tYWtlWzFdOiBMZWF2aW5nIGRpcmVj
dG9yeSAmIzM5Oy9ob21lL2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQmIzM5Ozxicj5NYWtlZmlsZTo2
OiByZWNpcGUgZm9yIHRhcmdldCAmIzM5O2FsbCYjMzk7IGZhaWxlZDxicj5tYWtlOiAqKiogW2Fs
bF0gRXJyb3IgMjxicj5hamF5QGxhdGl0dWRlLTM0ODA6fi91bmlrcmFmdC88d2JyPmFwcHMvY29y
ZW1hcmskPGJyPiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIzx3YnI+IyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjPHdicj4jIyMjIyMjIzxicj48YnI+PGJyPjwvZGl2PjxkaXY+SSB0
cmllZCBsb29raW5nIGZvciBhbnkgZXhhbXBsZXMgb2YgbGlua2FnZSBvZiBPQkpTIGZpbGVzLCBi
dXQgbm8gZXhhbXBsZSAoZm9yIE9CSlMpIGlzIHByZXNlbnQgaW4gYW55IG9mIHBsYXQvYXBwIGZv
bGRlci48YnI+PGJyPjwvZGl2PjxkaXY+S2luZGx5IGhlbHAgbWUgaW4gZml4aW5nIHRoaXMuPGJy
Pjxicj48YnI+PGJyPjwvZGl2PjxkaXY+VGhhbmtzIGFuZCBSZWdhcmRzLDxicj48L2Rpdj48ZGl2
PkFqYXk8YnI+PC9kaXY+PC9kaXY+PC9kaXY+DQo8L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPjxiciBj
bGVhcj0iYWxsIj48YnI+PC9kaXY+PC9kaXY+PHNwYW4gY2xhc3M9IkhPRW5aYiI+PGZvbnQgY29s
b3I9IiM4ODg4ODgiPi0tIDxicj48ZGl2IGNsYXNzPSJtXy01MDE1NjYwMDAzNzc5NTkzMDgyZ21h
aWxfc2lnbmF0dXJlIiBkYXRhLXNtYXJ0bWFpbD0iZ21haWxfc2lnbmF0dXJlIj5SZWdhcmRzLDxi
cj5BamF5PGJyPjwvZGl2Pg0KPC9mb250Pjwvc3Bhbj48L2Rpdj4NCjwvYmxvY2txdW90ZT48L2Rp
dj48YnI+PGJyIGNsZWFyPSJhbGwiPjxicj4tLSA8YnI+PGRpdiBjbGFzcz0iZ21haWxfc2lnbmF0
dXJlIiBkYXRhLXNtYXJ0bWFpbD0iZ21haWxfc2lnbmF0dXJlIj5SZWdhcmRzLDxicj5BamF5PGJy
PjwvZGl2Pg0KPC9kaXY+DQo=
--0000000000002acabe0569e32ee8--


--===============8285618063786301956==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============8285618063786301956==--


From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:02 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhE-0002uI-FJ; Mon, 16 Apr 2018 06:33:00 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhC-0002uD-RF
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:32:59 +0000
X-Inumbo-ID: dd8dd66c-413f-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::613])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id dd8dd66c-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:31:59 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=9AGCc7vM2Cwy54R0ViAvRrbKltpYxysQ6lncArnSTKE=;
 b=QBaWyUXik0y2EA2CntpZcELsTUnzgmaWXH1yLK6PZ8503qQ7wRUDHzxmiBs6n+bACzcuN8tYwX/HlvJsc76D5QZfH/Xnv0vUA0/wLlRj5dSbRK6SbrJwUm7IGva/rRYiRTXVYU2+LMjKcG1Z05Ppa+lx8+I2JEFMb4O2e/76SSI=
Received: from VI1PR08CA0211.eurprd08.prod.outlook.com (2603:10a6:802:15::20)
 by AM4PR0801MB1588.eurprd08.prod.outlook.com (2603:10a6:200:3e::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 06:32:47 +0000
Received: from VE1EUR03FT030.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::203) by VI1PR08CA0211.outlook.office365.com
 (2603:10a6:802:15::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:32:47 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT030.mail.protection.outlook.com (10.152.18.66) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:32:46 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:32:36 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:40 +0000
Message-ID: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(376002)(39850400004)(396003)(39380400002)(2980300002)(438002)(199004)(189003)(316002)(966005)(486006)(54906003)(106466001)(356003)(246002)(59450400001)(23676004)(7696005)(36756003)(6346003)(50466002)(5820100001)(39060400002)(104016004)(2351001)(2906002)(47776003)(8676002)(6666003)(6916009)(77096007)(106002)(86362001)(575784001)(186003)(336012)(8936002)(26005)(476003)(126002)(50226002)(8666007)(5660300001)(4326008)(6306002)(72206003)(26826003)(478600001)(2870700001)(426003)(2616005)(305945005);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR0801MB1588; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT030;
 1:wUUEVfIOoafqVkRYFQnbinRX+n++9a1VW2/EkiZCy/Rc8S/8m5Yq4IQFTEcbInZNYrFAaXPugysSGiSvC7ze5BDFeun4LIDy7SBdj5VbynOeUfEV+hFOqdoCQqnOCVCP
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR0801MB1588; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 3:zXIqsgQQX7wi7NdxcgMRF4gsMaZX4OmVXg4jhDZsG8uIp3W75qjZmisx4riI62EproyoxdDMf2fEBgX3LAZPab2vjcoS+keDfJ0ipu4LN3VbHdsgCh0WfEYbfD9/50x8ay9MdjGbu7ey4hBHlQ0O9XIhjD7r+K72GNf8R8k7VjyuXfg5AwZIGSdnVcLUGJlsGy32cI3q4zTDgVEXywarcKCSisH3/4FoeWCXLw2IOMo0eHIEfwOzluV2l6FNk1lWsOxsel5647SR5TMyLyK/VOoT1pY0/QuPEG4frvzRCHAlaUdWy5o6sAYaR+72Z2Gj1S/Ai6SbTJ484uU1aqV/liihikpoYBYAe+WROidjbgo=;
 25:Yp/zfatVNPTK2+shBBvqQ8QfmqTjRgxgwJCJpfAQZhx639hM6hIkiYtixjaUrZlQ5BbMRSNAXulWBL/SmuNFpnxAi+6mHc/FVxODynFbZG1+r7fjahHe/xp4h9+M34+gKirUAyLpM+Ie4glxRXAC7ErZm+T7z9h6E6r8lFhDYDcEi0qI2nA3Cth7+ZAlfK2nkmZEZsFM6+9oXFMPaqeL7QOi3M0FTy22qGXI/EL4VyBjz60ezZ3rJg7+YCfmN1B4HNRRE4CIP0m8FYyeO59fpY5gLS4s1oUM1j3h1795PYOku7UYkfglM5dTzScelsIVA1kA9JPGgwz9MicfYdhMCQ==
X-MS-TrafficTypeDiagnostic: AM4PR0801MB1588:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 31:Si2mEJjhdrTYCH80jjonm61sSLvJhqkf6gQ5Nf3d1c9zS/ziuMdwaPV/wL0n2cj+ZKlVG9xnw8LIJHCx4Bvx2XSF+zoiX0hZM1baBw3ZSA7yWq+JRcs3bgfKic/Xy5oW3UAv65RHRpIkKNidlkCagTpZoC2kU08Uuw8wtBndmC2mZg7Nj0sIUzhyyG4u2kmJ+2I43F0kgJRhSWf4BRTKn7zME/LsgFBzAj/OLll+b8c=;
 20:24g9FUIoYeiXWq3hGpKtb0wvHza0W2wlhEcxVuabDFGCcUH8qO8sRMgClXzmBgigW1xPg9U4iPOuV4H6cxe3HmSH4YWkznthanW+Oz0XUYfXaq+Luf9Zi44YjXsdNzG5KzbSdBLwL7COy3Y69YKredS5Y8ag8UHNuef1ZUDU4QHS5c9ibWTRw33D+H4Z2UOzCBl0gNHYePeGIyLRRwMn1uLcp5PrGyG3SV5EXf8TfTOm7MDAkbHEJOMGKVw6zggg;
 4:atMo3u/WJah2acJSxuuA/kP2g75Ts/m7z259chHHjnrzcDgDWLSfLu2+jQTNNhSUpKSMuAyh5ZZLL7tOTS3IsIb7FiUEiRCQapxqLp6isT713WBPtckBNt4VtlQKI47pfpMiiSxsaz/J3me3aMPeYGAbTGxM95KB9eITAHph/T6FhcsyNhJhweJ+5jz/rkQhxUBCoY6etvwwFcxhN/TJnc0Q28Vmg2vMZYhidlXakAUmorZOPCU2zbwbaauo3IIIJu+2j6IVq74+CL+2W/GU6/IEO/JuprtLPVozUOzGN0MQ6K/XvNsNVrNlDwW57pPezPYjRxfSjJe4fYkkL3+oh/U/7A54r6YcsHGF11Z7WEM=
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR0801MB158854D00099BE9AA0EB546884B00@AM4PR0801MB1588.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(166708455590820)(788757137089);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93004095)(3002001)(10201501046)(3231232)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:AM4PR0801MB1588; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0801MB1588; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTRQUjA4MDFNQjE1ODg7MjM6K20rVlplcFZJRlc5RXduTWNjS0pkbllD?=
 =?utf-8?B?ZlUvUHh3SUtPbzM1cTRpWC9xZVgybzR6Y1EyNE10UHhWcVk5RTBOdDRnNmI0?=
 =?utf-8?B?WlFLVFpzQ3kvNHk1NkN4aWRVcVYrbWw0MXRJbndlR04vK0VaaTFkcnQ4K1FR?=
 =?utf-8?B?aEtDeTNldDE1Y05OelpRSzFRWVMvTHRuZERnRFdqb3RiMCtaVVArakhBazIx?=
 =?utf-8?B?c0RKSC9aVFBXTm1yTDg3QWIvNFZpMFFEczBLbzZUMU93V0p5R3RhNDdqTFFM?=
 =?utf-8?B?VEoxcStDbHlNelRlR3o4a0xKRkVJSDY3bm1xTkFKbnJneHFkQkl5TGk5a1Er?=
 =?utf-8?B?czFiVmhWb1NzelZCbUlURkI5Qy9DTU9oWEQyUW04OWlIVFVBa1pVU1VsQkNQ?=
 =?utf-8?B?Uml1dUdJOGtVMlp4Vmo4VEVSaFBrN2dNZ3g1U2xRRGF1SGtyMjZxM2w3VEtT?=
 =?utf-8?B?S1pQRmVWTldqeXRJYlBWbytUUzhldCtwNFRPN3dBb1B5WEkzMVdUbmNpb2FR?=
 =?utf-8?B?OHY5azdEbld6Q09JZU9WU1NaUzV5eG10em9KemJmdjh0aDlMUWcxQUdWem5x?=
 =?utf-8?B?Y0xIWTJwQWQvNjNkU1MvOVF4T1psdXBIN0toLzA4T3djSjArYmdVSGN4UnJG?=
 =?utf-8?B?aHkvQlJGRStpanVyMjVTbmNZNlRXenQ2L2F3cHdYa1NJNllhOHFGa1JZMk5u?=
 =?utf-8?B?SW5nOGFvZTk1NzcxRVp2MUhnZnh6UFB3TXAzWFJIdUlYY0l3WkpRSmlyS2dD?=
 =?utf-8?B?ZGJkcEw3RTlId1owalZqdFBJZjBCd3hBNVFXS1lhYWdNVlZSTFlSVFUxMk82?=
 =?utf-8?B?eVJxRmIwS25USDhOYTFuNlpLcVF1UjRaWXpGZlN4TmNIRTFybnpxOTNFNTFQ?=
 =?utf-8?B?bXRVMDBBd3lIdzkxVDBGYTFybzhWQnhqd3FDQlhtckEzMmFRTTlKNlZkRStR?=
 =?utf-8?B?Q2c5N3V5RmFpQk5jNjRrbmtCSEpBbitoRzZ2eXJLdnRBY3ZTN1BxWWlkeFl2?=
 =?utf-8?B?ajQvUmVmZWgrNzRtRmZBQkk5eWlybkRUQ1B0RUFuSFljTWE4SWRvNE8vNnlQ?=
 =?utf-8?B?WHRZRUJJeEpHcWtnaVhoQXFXTzM1WG5TaThmRUg5VEVnV043TGdxQ3ZQbENX?=
 =?utf-8?B?aHBkS0NDU1BCbzhMaXFBK3BGVVdsTzArSnR6MXM5NXljUzBTSkx3R3JlUDVl?=
 =?utf-8?B?Y3htL3FndU9mNkg4a25BeFZtVkJhTUR1OWJJdk9MOTZDMkFiUFBrKzBaNk9N?=
 =?utf-8?B?a1FnaGF0QlYzMmF6WURjVnl6OEpvQkd6Q2IwM05PMk1DN2E5SmJtaW90cUZ6?=
 =?utf-8?B?cTZyMVNJbE5jenNVSk1JU2k2SHdpZzNsRDlGRUVwajJkYit6a3VrQzRvQUFp?=
 =?utf-8?B?cWxyUnlEdDlpZ1huVlJ4S0VOODJmTC84d0IwdlY5UHJvZVRyajgyUlhVQVBq?=
 =?utf-8?B?ZDh0cFpNcXlYdlAxK1VVZmtCSURLeXg5SlF5ZUVETTVDbWgvWmk1UjNPTHpP?=
 =?utf-8?B?TTY3ZEpHN1Q5S2NFUDRzelhrVTZ0Uncwb1FiaTFGNFNHMFR5SDJsU3RHZytS?=
 =?utf-8?B?Q2taellnMUxONFFqdlNzMmhsYlI3amVHQ2tBSWVvZDJCS0s0YkR5clhCRWZo?=
 =?utf-8?Q?8=3D?=
X-Microsoft-Antispam-Message-Info: Q6Jo36wImwR3Zz3JWwkB7wM7iX2OcxCb/uPSnKPMuAFgIqvnU9I5KNzSI/ctg748AlNON74Epyjndc7rym3yjcdyp7ImcC1vlxH/Rbh/S0B6pepQwlhg06/4/RIU0DXZDF7vQ5RZOa4kNqL3geKGtGrPxc+XH3ILC1inNcVBOBKLmoEbVDVP7WkFYdDGO2Niz1NkdmZD1zV8irbtR1xoOSTY7EQJXkoyqTG5+J3PBx74VXCzKOtreUwI0nFivppB4k9lKErwp9QrMoXFv2FDf4P8M/sfI7ymEx3UXa4IvwoMPne5EDutI3vbW5ncd/LZoKXdrYkUmjpEeD/KHea43H9TddukZM4csT8BhdfqfSetVBBn1AsTpZz0FfcFg13y6/Ert90XECI/LBkA2Mlb/Xa14ogts0qWbsWINBk++jU=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 6:tHPaJcLs41uNxIs49aUXd7m1THZGsH0Z/RWAh25zR8EHEq7l2t7nDZS5VTqRBsvdWBHqehuGqxCJGDD3ecny4zgBIteuYNsGUtxIdTK/BJnPwsINZ1oHTnJAXixz9cHn8VslDI+xA23taajhQ1VJ0DjBaGewYWh1qLVh/ygT0NrEdMtj+aJr6nJs5vsZ2gJaQr1bApyVToS7xMRq/Vw3f3UqH7x+vcelYwDLW1PzD0jxq0kf8L62k0Qk1KCOdrgDMA3NNTsg4PEyOIhhu7w4YgjlQinRtIyh3ffRLUcpEmFDdyDuMekCHUWt+OChRV2zkc1/PK7MKhwbyTk/XUgmZXELDrQwydRLs+pUCGRoPiPjOtxEloUhLvXL0DTeP78D9Y9J7tewbSlyu8o74ONcu0nqySiyy8iSGCE19NzNA97RsfTS/e1lXkcWUAjAGf+5PZ17ZkGB5Ju24aCixvB6K/xL18LO7dGHW2UXYThMe0QwVsLS2eUmAynAf8tZq7VJ;
 5:pG6OQPPV2LZPXkUnTy3hJS6uhi9AUbfBMax8EEoqb7xJuhQamuq09h0vsHleJqQRJCyTg7M9AoPDRvZv0csLbtgfGhq5o2NXuVfav9DiFcVWkg1wh4Rm2EWPfC3+itLyWp3FDPBnIufqPmXt0rhDNpmx3in6nYz7p3Peoeux6FM=;
 24:40EYkzRaBHE7OzuFT9rtDWtQOBVK7J1O0/nvow13BnHjQjtFUKORvU6VTM5+6prdiO653QG355ZCeVXtgsyV6HG+bBJUgPSppsRe7A0my9c=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 7:ZuycbKMYlWb3bKKZnCeHOx1pxhZU7jd7+fQ8c36+7OAIMaXmULBMPH0LLn6o6HiOfEBQMkUbkAVVTCRgcH0p9MElselPq3oQ0dFQPEnUy86aIRZDcOg98MFrcxwjT5fwkZ/lbMrhKfpNRVTlnDl6XEmWj9XHtil0p+5pkPRiwZcA0HfjbFf2Q49X8Ruy+6afP6fQH/bWMJNIF3qYesMEphKSpgjTCSmXeVl7pcHXExVjkcKyoFLccqLE2nUtrJRz
X-MS-Office365-Filtering-Correlation-Id: 2f82353b-cdf9-438c-048f-08d5a363de5c
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:32:46.7642 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2f82353b-cdf9-438c-048f-08d5a363de5c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0801MB1588
Subject: [Minios-devel] [PATCH v3 00/43] MINI-OS: enable the arm64 support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

IDEpIENvZGUuCiAgIFRoZSB3b3JrIGlzIGJhc2VkIG9uIENoZW4gQmFvemkgYW5kIFZvbG9keW15
cidzIHBhdGNoZXMuCiAgIEkgdGVzdGVkIHRoaXMgcGF0Y2ggc2V0IHdpdGggbXkgU29mdGlyb24g
Ym9hcmQuCiAgIAogICBUaGlzIHBhdGNoIHNldCBpcyBiYXNlZCBvbiB0aGUgbGF0ZXN0IG1pbmkt
b3MgY29kZToKICAgIChnaXQgdHJlZTogZ2l0Oi8veGVuYml0cy54ZW4ub3JnL21pbmktb3MuZ2l0
CiAgICAgVGhlIHRvcCBpcyAiNDhkM2IzMSBTYXZlL1Jlc3RvcmUgU3VwcG9ydDogQWRkIGZpbmlf
c2h1dGRvd24gY2FsbCB0byBhcHAgZXhpdCBmbG93LiIpCgogICBQbGVhc2UgY2hlY2sgdGhlIGNv
ZGUgaW4gdHJlZToKICAgaHR0cHM6Ly9naXRodWIuY29tL3p5emlpL21pbmktb3MgKGJyYW5jaDog
YXJtNjRfdjMpCgogICBBZnRlciB0aGlzIHBhdGNoIHNldDoKICAgICAgICAgIDEuKSBUaGUgc2No
ZWR1bGVyIGZvciBhcm02NCB3b3JrcyBmaW5lLgogICAgICAgICAgMi4pIFRoZSBnaWMvdGltZXIg
Zm9yIGFybTY0IHdvcmtzIGZpbmUuCiAgIAogICBUaGUgbG9nIGZvciB0aGUgbWluaS1vczoKICAg
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAoZDIw
KSAtIE1pbmktT1MgYm9vdGluZyAtCiAgIChkMjApIC0gU2V0dXAgQ1BVIC0KICAgKGQyMCkgLSBT
ZXR1cCBib290aW5nIHBhZ2V0YWJsZSAtCiAgIChkMjApIC0gTU1VIG9uIC0KICAgKGQyMCkgLSBT
ZXR1cCBzdGFjayAtCiAgIChkMjApIC0gSnVtcGluZyB0byBDIGVudHJ5IC0KICAgKGQyMCkgVmly
dHVhbCAtPiBwaHlzaWNhbCBvZmZzZXQgPSAxMDAwMDQwMDAwMDAwIAogICAoZDIwKSBDaGVja2lu
ZyBEVEIgYXQgMHhmZmZmMDAwMDA4MDAwMDAwLi4uCiAgIChkMjApIEZvdW5kIEdJQzogZ2ljZF9i
YXNlID0gMHhmZmZmMDBmZmMwMDAwMDAwLCBnaWNjX2Jhc2UgPSAweGZmZmYwMGZmYzAwMDEwMDAK
ICAgKGQyMCkgTU06IEluaXQKICAgKGQyMCkgICAgIF90ZXh0OiAgICAgICAweGZmZmYwMDAwMDAw
MDAwMDAoVkEpCiAgIChkMjApICAgICBfZXRleHQ6ICAgICAgMHhmZmZmMDAwMDAwMDFjYzAwKFZB
KQogICAoZDIwKSAgICAgX2Vyb2RhdGE6ICAgIDB4ZmZmZjAwMDAwMDAyNDAwMChWQSkKICAgKGQy
MCkgICAgIF9lZGF0YTogICAgICAweGZmZmYwMDAwMDAwMmY0MWMoVkEpCiAgIChkMjApICAgICBz
dGFjayBzdGFydDogMHhmZmZmMDAwMDAwMDJiMDAwKFZBKQogICAoZDIwKSAgICAgX2VuZDogICAg
ICAgIDB4ZmZmZjAwMDAwMDAzODhlOChWQSkKICAgKGQyMCkgRm91bmQgbWVtb3J5IGF0IDB4NDAw
MDAwMDAgKGxlbiAweDIwMDAwMDAwKQogICAoZDIwKSBVc2luZyBwYWdlcyAyNjIyMDYgdG8gMzkz
MjE2IGFzIGZyZWUgc3BhY2UgZm9yIGhlYXAuCiAgIChkMjApIE1NOiBJbml0aWFsaXNlIHBhZ2Ug
YWxsb2NhdG9yIGZvciBmZmZmMDAwMDAwMDNlMDAwKDQwMDNlMDAwKS1mZmZmMDAwMDFmZmZmMDAw
KDVmZmZmMDAwKQogICAoZDIwKSAgICAgQWRkaW5nIG1lbW9yeSByYW5nZSA0MDA0YTAwMC01ZmZm
ZjAwMAogICAoZDIwKSBNTTogZG9uZQogICAoZDIwKSBJbml0aWFsaXNpbmcgdGltZXIgaW50ZXJm
YWNlCiAgIChkMjApIFZpcnR1YWwgQ291bnQgcmVnaXN0ZXIgaXMgNTFCNzZDQSwgZnJlcSA9IDI1
MDAwMDAwMCBIegogICAoZDIwKSBJbml0aWFsaXNpbmcgY29uc29sZSAuLi4gZG9uZS4KICAgKGQy
MCkgRkRUIHN1Z2dlc3RzIGdyYW50IHRhYmxlIGJhc2UgMzgwMDAwMDAKICAgKGQyMCkgZ250dGFi
X3RhYmxlIG1hcHBlZCBhdCAweGZmZmYwMGZmYzAwMDMwMDAuCiAgIChkMjApIEluaXRpYWxpc2lu
ZyBzY2hlZHVsZXIKICAgKGQyMCkgVGhyZWFkICJJZGxlIjogcG9pbnRlcjogMHgweGZmZmYwMDAw
MWZmZmUwNzgsIHN0YWNrOiAweDB4ZmZmZjAwMDAxZmZmODAwMAogICAoZDIwKSBUaHJlYWQgInhl
bnN0b3JlIjogcG9pbnRlcjogMHgweGZmZmYwMDAwMWZmZmUwZDgsIHN0YWNrOiAweDB4ZmZmZjAw
MDAwMDA0YzAwMAogICAoZDIwKSB4ZW5idXMgaW5pdGlhbGlzZWQgb24gaXJxIDEKICAgKGQyMCkg
VGhyZWFkICJzaHV0ZG93biI6IHBvaW50ZXI6IDB4MHhmZmZmMDAwMDFmZmZlMTM4LCBzdGFjazog
MHgweGZmZmYwMDAwMWZmZjAwMDAKICAgKGQyMCkgVGVzdCBtYWluOiBwYXI9MAogICAoZDIwKSBU
aHJlYWQgInhlbmJ1c190ZXN0ZXIiOiBwb2ludGVyOiAweDB4ZmZmZjAwMDAxZmZmZTE5OCwgc3Rh
Y2s6IDB4MHhmZmZmMDAwMDFmZmY0MDAwCiAgIChkMjApIFRocmVhZCAicGVyaW9kaWNfdGhyZWFk
IjogcG9pbnRlcjogMHgweGZmZmYwMDAwMWZmZmUxZjgsIHN0YWNrOiAweDB4ZmZmZjAwMDAxZmZl
MDAwMAogICAoZDIwKSBUaHJlYWQgIm5ldGZyb250IjogcG9pbnRlcjogMHgweGZmZmYwMDAwMWZm
ZmUyNTgsIHN0YWNrOiAweDB4ZmZmZjAwMDAxZmZlNDAwMAogICAoZDIwKSBUaHJlYWQgImJsa2Zy
b250IjogcG9pbnRlcjogMHgweGZmZmYwMDAwMWZmZmUyYjgsIHN0YWNrOiAweDB4ZmZmZjAwMDAx
ZmZlODAwMAogICAoZDIwKSBUaHJlYWQgImZiZnJvbnQiOiBwb2ludGVyOiAweDB4ZmZmZjAwMDAx
ZmZmZTMxOCwgc3RhY2s6IDB4MHhmZmZmMDAwMDFmZmVjMDAwCiAgIChkMjApIFRocmVhZCAia2Jk
ZnJvbnQiOiBwb2ludGVyOiAweDB4ZmZmZjAwMDAxZmZmZTM3OCwgc3RhY2s6IDB4MHhmZmZmMDAw
MDAwMDUwMDAwCiAgIChkMjApIFRocmVhZCAic2h1dGRvd24iOiBwb2ludGVyOiAweDB4ZmZmZjAw
MDAxZmZmZTNkOCwgc3RhY2s6IDB4MHhmZmZmMDAwMDAwMDU0MDAwCiAgIChkMjApIERvaW5nIHhl
bmJ1cyB0ZXN0LgogICAoZDIwKSBQZXJpb2RpYyB0aHJlYWQgc3RhcnRlZC4KICAgICAgPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKIDIuKSBUZXN0cyAg
CiAgIEkgdGVzdGVkIHRoaXMgcGF0Y2ggc2V0IG9uIFNvZnRpcm9uKGFybTY0KSBhbmQgeDg2XzY0
IHBsYXRmb3JtLiAgICAgICAKICAgKFBsZWFzZSB1c2UgIm1ha2UgQ09ORklHX1VTRV9YRU5fQ09O
U09MRT15IiB0byBjb21waWxlIHRoZSBtaW5pb3MuKQogICAKICAgSW4gdGhlIFNvZnRpcm9uLCBJ
IGRpZCB0aGUgQmxvY2sgUmVhZC9Xcml0ZSB0ZXN0cyBieSBlbmFibGluZyBDT05GSUdfQkxLRlJP
TlQuCgogMy4pIENoYW5nZXMgICAKICAgdjIgLS0+IHYzOgogICAgICAgMCkgUmVtb3ZlIGFsbCB0
aGUgYXJtMzIgY29kZS4gVGhlIGZvbGRlciBsaWtlIHRoaXM6CiAgICAgICAgICAgICBhcmNoL2Fy
bS8KICAgICAgICAgICAgIOKUnOKUgOKUgCBhcmNoLm1rCiAgICAgICAgICAgICDilJzilIDilIAg
YXJtNjQKICAgICAgICAgICAgIOKUgsKgwqAg4pSc4pSA4pSAIGFybTY0LlMKICAgICAgICAgICAg
IOKUgsKgwqAg4pSc4pSA4pSAIGFzbS5oCiAgICAgICAgICAgICDilILCoMKgIOKUnOKUgOKUgCBo
eXBlcmNhbGxzNjQuUwogICAgICAgICAgICAg4pSCwqDCoCDilJzilIDilIAgbWluaW9zLWFybTY0
Lmxkcy5TCiAgICAgICAgICAgICDilILCoMKgIOKUlOKUgOKUgCB0cmFwcy5jCiAgICAgICAgICAg
ICDilJzilIDilIAgYmFsbG9vbi5jCiAgICAgICAgICAgICDilJzilIDilIAgZXZlbnRzLmMKICAg
ICAgICAgICAgIOKUnOKUgOKUgCBnaWMuYwogICAgICAgICAgICAg4pSc4pSA4pSAIE1ha2VmaWxl
CiAgICAgICAgICAgICDilJzilIDilIAgbW0uYwogICAgICAgICAgICAg4pSc4pSA4pSAIHBhbmlj
LmMKICAgICAgICAgICAgIOKUnOKUgOKUgCBzY2hlZC5jCiAgICAgICAgICAgICDilJzilIDilIAg
c2V0dXAuYwogICAgICAgICAgICAg4pSU4pSA4pSAIHRpbWUuYwogICAgICAgIAogICAgICAgMSkg
QWRkIHR3byBuZXcgcGF0Y2hlcyBhZnRlciByZWJhc2luZyBvbiB0aGUgbGF0ZXN0IG1pbmktb3MK
ICAgICAgICAgICBtaW5pLW9zOiByZWZhY3RvciB0aGUgc2h1dGRvd24KICAgICAgICAgICBhcm02
NDogYWRkIGR1bW15IGFyY2hfc3VzcGVuZF9nbnR0YWIvYXJjaF9yZXN1bWVfZ250dGFiCgogICAg
ICAgMikgTW92ZSBkc2IvZG1iL21iIHRvIGNvbW1vbiBwbGFjZS4KICAgICAgIDMpIG1lcmdlIHNl
dmVyYWwgcGF0Y2ggKGFib3V0IHRoZSBEVEMpIGludG8gb25lLgogICAgICAgNCkgQWRkIGxpY2Vu
c2UgaW5mb3JtYXRpb24gdG8gbWVtbW92ZS4KCiAgIHYxIC0tPiB2MjoKICAgICAgIDApIG1ha2Ug
dGhlIERUQyBjb2RlIGFzIGEgc3ViZm9sZGVyLCBub3QgYSBzdWJtb2R1bGUuCiAgICAgICAxKSBy
ZWZhY3RvciB0aGUgYXJtMzIgY29kZSwgbW92ZSBpdCB0byBhIHNlcGFyYXRlIGZvbGRlci4KICAg
ICAgICAgIE5vdyB0aGUgZm9sZGVyIGxpa2UgdGhpczoKICAgICAgICAgICAgICBhcmNoL2FybQog
ICAgICAgICAgICAgIOKUnOKUgOKUgCBhcmNoLm1rCiAgICAgICAgICAgICAg4pSc4pSA4pSAIGFy
bTMyCiAgICAgICAgICAgICAg4pSCwqDCoCDilJzilIDilIAgYXJtMzIuUwogICAgICAgICAgICAg
IOKUgsKgwqAg4pSc4pSA4pSAIGh5cGVyY2FsbHMzMi5TCiAgICAgICAgICAgICAg4pSCwqDCoCDi
lJTilIDilIAgbWluaW9zLWFybTMyLmxkcwogICAgICAgICAgICAgIOKUnOKUgOKUgCBhcm02NAog
ICAgICAgICAgICAgIOKUgsKgwqAg4pSc4pSA4pSAIGFybTY0LlMKICAgICAgICAgICAgICDilILC
oMKgIOKUnOKUgOKUgCBhc20uaAogICAgICAgICAgICAgIOKUgsKgwqAg4pSc4pSA4pSAIGh5cGVy
Y2FsbHM2NC5TCiAgICAgICAgICAgICAg4pSCwqDCoCDilJzilIDilIAgbWluaW9zLWFybTY0Lmxk
cy5TCiAgICAgICAgICAgICAg4pSCwqDCoCDilJTilIDilIAgdHJhcHMuYwogICAgICAgICAgICAg
IOKUnOKUgOKUgCBiYWxsb29uLmMKICAgICAgICAgICAgICDilJzilIDilIAgZXZlbnRzLmMKICAg
ICAgICAgICAgICDilJzilIDilIAgZ2ljLmMKICAgICAgICAgICAgICDilJzilIDilIAgTWFrZWZp
bGUKICAgICAgICAgICAgICDilJzilIDilIAgbW0uYwogICAgICAgICAgICAgIOKUnOKUgOKUgCBw
YW5pYy5jCiAgICAgICAgICAgICAg4pSc4pSA4pSAIHNjaGVkLmMKICAgICAgICAgICAgICDilJzi
lIDilIAgc2V0dXAuYwogICAgICAgICAgICAgIOKUlOKUgOKUgCB0aW1lLmMKICAgICAgIDIpIGZp
eCB0aGUgYnVnIGluIHNjaGVkdWxlci4KICAgICAgIDMpIHJld3JpdGUgc29tZSBHUEwgY29kZSwg
YnkgY29weWluZyBhbmQgcmUtd3JpdGluZyB0aGUgRnJlZUJTRCBjb2RlLgogICAgICAgNCkgaW1w
bGVtZW50IHRoZSBtbWFwL211bm1hcChzZWUgdGhlIG1hcF9mcmFtZV9leC91bm1hcF9mcmFtZXMp
LgogICAgICAgNSkgY2hhbmdlIHRoZSBtYXBwaW5nIGZyb20gMzliaXQgdG8gNDhiaXQuCiAgICAg
ICAgICByZXdyaXRlIHNvbWUgYXNzZW1ibHkgY29kZSBmb3IgYm9vdGluZy4gVXNlIHBoeXNpY2Fs
IGFkZHJlc3MKICAgICAgIDcpIGNoYW5nZSBzb21lIGNvZGUgZm9yICJyZW1vdmluZyB0aGUgZTI4
MCBjb2RlIGZyb20gY29tbW9uIHBsYWNlIgogICAgICAgOCkgY2hhbmdlIGNvZGUgaW4gdGhlIHBh
cnNpbmcgR0lDIGluZm9ybWF0aW9uLgogICAgICAgOSkgbW92ZSB0aW1lciBjb2RlIHRvIHNlcGFy
YXRlIGZvbGRlciwgc3VjaCBhcyBhcmNoL2FybS9hcm0zMi90aW1lLmgKICAgICAgIDEwKSBjaGFu
Z2UgdGhlIGxvZ2ljIGluIHRvX3ZpcnQuCiAgICAgICAxMSkgYWRkIG1hcHBpbmcgZm9yIEdOVCB0
YWJsZS4KICAgICAgIDEyKSBjaGFuZ2UgdGhlIHZpcnR1YWwgbWVtb3J5IGxheW91dCB0bzoKICAg
ICAgICAgICAvKgogICAgICAgICAgICAqIFRoZSB2aXJ0dWFsIGFkZHJlc3MgbGF5b3V0IGZvciBh
cm02NCg0OGJpdCk6CiAgICAgICAgICAgICoKICAgICAgICAgICAgKiAgICAgIC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tCiAgICAgICAgICAgICogICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICAgICAgICAgICAg
KiAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICAgICAgICogICAgIF4gICAgICAgICAgICAg
ICAgICAgXiAgICAgICAgICAgICAgICAgICBeICAgICAgICAgICAgICAgICBeICAgICAgICAgICAg
ICAgIF4KICAgICAgICAgICAgKiAgICAgfDwtLSBtZW1vcnkgYXJlYSAtLT58PC0tIGtlcm5lbCBh
cmVhIC0tPnw8LSBkZW1hbmQgYXJlYSAtPnw8LSBoZWFwIGFyZWEgLT4gfAogICAgICAgICAgICAq
ICAgICBeCiAgICAgICAgICAgICogICAgIF4KICAgICAgICAgICAgKiAgICAgfAogICAgICAgICAg
ICAqICgweGZmZmYwMDAwMDAwMDAwMDAsIHdoZW4gVENSLlQwU1ogPT0gMTYpCiAgICAgICAgICAg
ICoKICAgICAgICAgICAgKiBtZW1vcnkgYXJlYSAoMHhmZmZmMDAwMDAwMDAwMDAwIH4gVklSVF9L
RVJORUxfQVJFQSkgICA6IHVzZWQgZm9yIGxpbmVhciBwaHlzaWNhbCBtZW1vcnkgbWFwcGluZwog
ICAgICAgICAgICAqIGtlcm5lbCBhcmVhIChWSVJUX0tFUk5FTF9BUkVBICAgfiBWSVJUX0RFTUFO
RF9BUkVBKSAgIDogdXNlZCBmb3IgbWFwX2ZyYW1lX3ZpcnQKICAgICAgICAgICAgKiBkZW1hbmQg
YXJlYSAoVklSVF9ERU1BTkRfQVJFQSAgIH4gVklSVF9IRUFQX0FSRUEpICAgICA6IHVzZWQgZm9y
IGlvcmVtYXAKICAgICAgICAgICAgKiBoZWFwIGFyZWEgICAoVklSVF9IRUFQX0FSRUEgICAgIH4g
MHhmZmZmZmZmZmZmZmZmZmZmKSA6IHVzZWQgZm9yIGhlYXAKICAgICAgICAgICAgKi8KICAgICAg
ICAgICAKICAgICAgICAgICBUaGUgY29kZSBpcyBwdXQgYXQgMHhmZmZmMDAwMDAwMDAwMDAwLgog
ICAgICAgMTMpIEFkZCBtZW1vcnkgc2l6ZSBsaW1pdHMsIHN1Y2ggYXMgTUlOX01FTV9TSVpFL01B
WF9NRU1fU0laRQogICAgICAgMTQpIG90aGVycwoKICA0LikgVGhlIGNvbW1lbnRzIGZyb20gSnVs
aWVuIHdoaWNoIEkgZGlkIG5vdCBmb2xsb3c6CiAgICAgMCkgVXNlIHAybV9zZXRfZW50cnkgdG8g
c2V0dXAgdGhlIHBhZ2UgdGFibGUuCiAgICAgICAgSSBkaWQgbm90IGhhdmUgZ29vZCB1bmRlcnN0
YW5kaW5nIG9mIHRoZSBwMm1fc2V0X2VudHJ5KCkuCglTbyBJIHVzZSBteSBmYW1pbGlhciB3YXkg
dG8gc2V0dXAgdGhlIHBhZ2UgdGFibGUuCgogICAgIDEpIE1vdmUgZHNiL2RtYi9tYiB0byBjb21t
b24gcGxhY2UuCiAgICAgICAgSSBkaWQgbm90IGRvIHNvLCBiZWNhdXNlIEkgZm91bmQgdGhlIG9s
ZGVyIGFybTMyIGFyY2hzCiAgICAgICAgdXNlICJtY3IiIHRvIGRvIHRoZSBtZW1vcnkgYmFycmll
cnMuCQoJKEkgd2lsbCBhZGQgZXh0cmEgcGF0Y2ggdG8gZml4IHRoaXMuLi4pCgpIdWFuZyBTaGlq
aWUgKDQzKToKICBtaW5pLW9zOiBmaXggdGhlIHdyb25nIHBhcmFtZXRlciBmb3IgbWFwX2ZyZWUo
KSBpbgogICAgaW5pdF9wYWdlX2FsbG9jYXRvcigpCiAgYXJtMzI6IHJlbW92ZSB0aGUgYXJtMzIg
c3BlY2lmaWMgY29kZSBmaWxlCiAgbWluaS1vczogcmVwbGFjZSB0aGUgTDFfUEFHRVRBQkxFX1NI
SUZUIHdpdGggUEFHRV9TSElGVAogIG1pbmktb3M6IHJlbmFtZSB0aGUgTDFfUFJPVCB0byBERUZf
UEFHRV9QUk9UCiAgYXJtOiBjcmVhdGUgYSBuZXcgaGVhZGVyIGZvciB0aGUgcGFnZSBtYWNyb3MK
ICBhcm02NDogYWRkIHRoZSBib290IGNvZGUKICBhcm02NDogY2hhbmdlIHBoeXNpY2FsX2FkZHJl
c3Nfb2Zmc2V0IHRvIHBhZGRyX3QKICBhcm02NDogZml4IHRoZSB3cm9uZyBtYXNrIGZvciB0b192
aXJ0L3RvX3BoeXMKICBhcm02NDogYWRkIHRoZSBfX1BBR0VfU0laRSBtYWNybyBpbiBoZWFkZXIg
ZmlsZQogIGFybTY0OiBhZGQgZXhjZXB0aW9uIHN1cHBvcnQKICBhcm02NDogZHVtcCB0aGUgcmVn
aXN0ZXJzIGZvciBkb19iYWRfbW9kZSgpL2RvX3N5bmMoKQogIGFybTY0OiBhZGQgdGhlIGJhc2lj
IGhlbHBlcnMgZm9yIGFybTY0CiAgYXJtNjQ6IGRlZmluZSB0aGUgcXVhZF90IGZvciBhcm02NAog
IGFybTY0OiB0aW1lLmM6IGZpeCB0aGUgd3JvbmcgZm9ybWF0IGZvciBwcmludGsKICBtaW5pLW9z
OiBkZWZpbmUgVUxPTkdfTUFYL0xPTkdfTUFYIGZvciBhcm02NAogIG1pbmktb3M6IHJlbW92ZSB0
aGUgZTgyMCBmcm9tIGNvbW1vbiBjb2RlCiAgYXJtNjQ6IG1tLmM6IGZpeCB0aGUgY29tcGlsZXIg
ZXJyb3IKICBhcm02NDogcmVmaW5lIHRoZSBhcmNoX2luaXRfbW0KICBhcm02NDogYWRkIHNoYXJl
ZF9pbmZvIHN1cHBvcnQKICBtaW5pLW9zOiBpbXBsZW1lbnQgdGhlIG1lbW1vdmUvbWVtY2hyCiAg
YXJtNjQ6IGRlZmluZSB0aGUgQ0FMTEVFX1NBVkVEX1JFR0lTVEVSUwogIGFybTY0OiBpbXBsZW1l
bnQgdGhlIF9fYXJjaF9zd2l0Y2hfdGhyZWFkcwogIGFybTY0OiBpbXBsZW1lbnQgdGhlIGFybV9z
dGFydF90aHJlYWQKICBhcm02NDogY2hhbmdlIHNwIHRvICJ1bnNpZ25lZCBsb25nIiB0eXBlCiAg
YXJtNjQ6IGZpeCB0aGUgd3Jvbmcgc2l6ZSBvZiB0aGUgcmVnaXN0ZXIKICBhcm02NDogaW1wbGVt
ZW50IHRoZSBydW5faWRsZV90aHJlYWQKICBhcm02NDogYWRkIHRoZSBoeXBlcmNhbGwgc3VwcG9y
dAogIGFybTY0OiBpbml0IHRoZSBtZW1vcnkgc3lzdGVtCiAgYXJtNjQ6IHNldCB0aGUgbWFwcGlu
ZyBmb3IgY29uc29sZSBhbmQgeGVuYnVzCiAgYXJtNjQ6IGFkZCBhIG5ldyBoZWxwZXIgaW9yZW1h
cAogIGFybTY0OiBpbXBsZW1lbnQgdGhlIG1tYXAvbXVubWFwCiAgYXJtNjQ6IGFkZCB0aGUgdmly
dHVhbCBhZGRyZXNzIGxheW91dCBkZXNjcmlwdGlvbgogIGFybTY0OiBwYXJzZSBvdXQgdGhlIGFk
ZHJlc3Mvc2l6ZSBmb3IgZ2ljZC9naWNjCiAgYXJtNjQ6IGdpYzogaW1wbGVtZW50IHRoZSBSRUdf
V1JJVEUzMi9SRUdfUkVBRDMyCiAgYXJtNjQ6IGltcGxlbWVudCB0aGUgdGltZXIgaGVscGVycyBm
b3IgYXJtNjQKICBhcm02NDogYWRkIHRoZSBsaW5rIGZpbGUKICBhcm02NDogYWRkIHRoZSBtYWtl
ZmlsZQogIG1pbmktb3M6IFNldCBUQVJHRVRfQVJDSF9GQU0gZm9yIGFybTY0CiAgbWluaS1vczog
Y3JlYXRlIHRoZSBpbWFnZSBmb3IgYXJtCiAgbWluaS1vczogYWRkIHRoZSBsaWJmZHQgbGlicmFy
eQogIGFybTY0OiBhZGQgbWFwcGluZyBmb3IgR05UIHRhYmxlCiAgYXJtNjQ6IGFkZCBkdW1teSBh
cmNoX3N1c3BlbmRfZ250dGFiL2FyY2hfcmVzdW1lX2dudHRhYgogIG1pbmktb3M6IHJlZmFjdG9y
IHRoZSBzaHV0ZG93bgoKIC5naXRpZ25vcmUgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUg
KwogQ29uZmlnLm1rICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNyArLQogTWFrZWZpbGUg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzNCArLQogYXJjaC9hcm0vTWFrZWZpbGUgICAg
ICAgICAgICAgICAgIHwgICAyOSArCiBhcmNoL2FybS9hcmNoLm1rICAgICAgICAgICAgICAgICAg
fCAgICA3ICsKIGFyY2gvYXJtL2FybTMyLlMgICAgICAgICAgICAgICAgICB8ICAyOTQgLS0tLS0t
CiBhcmNoL2FybS9hcm02NC9hcm02NC5TICAgICAgICAgICAgfCAgNDkxICsrKysrKysrKysKIGFy
Y2gvYXJtL2FybTY0L2FzbS5oICAgICAgICAgICAgICB8ICAgMTggKwogYXJjaC9hcm0vYXJtNjQv
aHlwZXJjYWxsczY0LlMgICAgIHwgICA4MSArKwogYXJjaC9hcm0vYXJtNjQvbWluaW9zLWFybTY0
Lmxkcy5TIHwgICA4MSArKwogYXJjaC9hcm0vYXJtNjQvdHJhcHMuYyAgICAgICAgICAgIHwgICA0
NCArCiBhcmNoL2FybS9naWMuYyAgICAgICAgICAgICAgICAgICAgfCAgIDk5ICstCiBhcmNoL2Fy
bS9oeXBlcmNhbGxzMzIuUyAgICAgICAgICAgfCAgIDY0IC0tCiBhcmNoL2FybS9taW5pb3MtYXJt
MzIubGRzICAgICAgICAgfCAgIDgzIC0tCiBhcmNoL2FybS9tbS5jICAgICAgICAgICAgICAgICAg
ICAgfCAgNDM3ICsrKysrKysrLQogYXJjaC9hcm0vc2NoZWQuYyAgICAgICAgICAgICAgICAgIHwg
ICAxOSArLQogYXJjaC9hcm0vc2V0dXAuYyAgICAgICAgICAgICAgICAgIHwgICAgOSArLQogYXJj
aC9hcm0vdGltZS5jICAgICAgICAgICAgICAgICAgIHwgICAzMSArLQogYXJjaC94ODYvbW0uYyAg
ICAgICAgICAgICAgICAgICAgIHwgICAyMiArLQogaW5jbHVkZS9hcm0vYXJjaF9saW1pdHMuaCAg
ICAgICAgIHwgICAgNCArLQogaW5jbHVkZS9hcm0vYXJjaF9tbS5oICAgICAgICAgICAgIHwgICA1
OCArLQogaW5jbHVkZS9hcm0vYXJtNjQvaW8uaCAgICAgICAgICAgIHwgICAxOCArCiBpbmNsdWRl
L2FybS9hcm02NC9vcy5oICAgICAgICAgICAgfCAgIDUxICsKIGluY2x1ZGUvYXJtL2FybTY0L3Bh
Z2V0YWJsZS5oICAgICB8ICAxMDggKysrCiBpbmNsdWRlL2FybS9hcm02NC90aW1lLmggICAgICAg
ICAgfCAgIDM0ICsKIGluY2x1ZGUvYXJtL2FybTY0L3RyYXBzLmggICAgICAgICB8ICAgMjcgKwog
aW5jbHVkZS9hcm0vb3MuaCAgICAgICAgICAgICAgICAgIHwgICA3NSArLQogaW5jbHVkZS9hcm0v
cGFnZV9kZWYuaCAgICAgICAgICAgIHwgICAgOCArCiBpbmNsdWRlL2FybS90cmFwcy5oICAgICAg
ICAgICAgICAgfCAgIDIxICstCiBpbmNsdWRlL21tLmggICAgICAgICAgICAgICAgICAgICAgfCAg
ICAzICsKIGluY2x1ZGUvcG9zaXgvbGltaXRzLmggICAgICAgICAgICB8ICAgIDIgKy0KIGluY2x1
ZGUvc2h1dGRvd24uaCAgICAgICAgICAgICAgICB8ICAgIDIgKy0KIGluY2x1ZGUvdHlwZXMuaCAg
ICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KIGluY2x1ZGUveDg2L2FyY2hfbW0uaCAgICAgICAg
ICAgICB8ICAgIDIgKwoga2VybmVsLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiAr
LQogbGliL2xpYmZkdC9NYWtlZmlsZS5saWJmZHQgICAgICAgIHwgICAxMSArCiBsaWIvbGliZmR0
L1RPRE8gICAgICAgICAgICAgICAgICAgfCAgICAzICsKIGxpYi9saWJmZHQvZmR0LmMgICAgICAg
ICAgICAgICAgICB8ICAyNTEgKysrKysKIGxpYi9saWJmZHQvZmR0LmggICAgICAgICAgICAgICAg
ICB8ICAxMTEgKysrCiBsaWIvbGliZmR0L2ZkdF9hZGRyZXNzZXMuYyAgICAgICAgfCAgIDk2ICsr
CiBsaWIvbGliZmR0L2ZkdF9lbXB0eV90cmVlLmMgICAgICAgfCAgIDgzICsrCiBsaWIvbGliZmR0
L2ZkdF9vdmVybGF5LmMgICAgICAgICAgfCAgODYxICsrKysrKysrKysrKysrKysrCiBsaWIvbGli
ZmR0L2ZkdF9yby5jICAgICAgICAgICAgICAgfCAgNzAzICsrKysrKysrKysrKysrCiBsaWIvbGli
ZmR0L2ZkdF9ydy5jICAgICAgICAgICAgICAgfCAgNTA1ICsrKysrKysrKysKIGxpYi9saWJmZHQv
ZmR0X3N0cmVycm9yLmMgICAgICAgICB8ICAxMDIgKysKIGxpYi9saWJmZHQvZmR0X3N3LmMgICAg
ICAgICAgICAgICB8ICAzMDAgKysrKysrCiBsaWIvbGliZmR0L2ZkdF93aXAuYyAgICAgICAgICAg
ICAgfCAgMTM5ICsrKwogbGliL2xpYmZkdC9saWJmZHQuaCAgICAgICAgICAgICAgIHwgMTg5OSAr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBsaWIvbGliZmR0L2xpYmZkdF9l
bnYuaCAgICAgICAgICAgfCAgMTQzICsrKwogbGliL2xpYmZkdC9saWJmZHRfaW50ZXJuYWwuaCAg
ICAgIHwgICA5NSArKwogbGliL2xpYmZkdC92ZXJzaW9uLmxkcyAgICAgICAgICAgIHwgICA3MSAr
KwogbGliL21lbW1vdmUuYyAgICAgICAgICAgICAgICAgICAgIHwgICA3NCArKwogbGliL3N0cmlu
Zy5jICAgICAgICAgICAgICAgICAgICAgIHwgICAxMiArCiBtaW5pb3MubWsgICAgICAgICAgICAg
ICAgICAgICAgICAgfCAgICA0ICsKIG1tLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgMTMgKy0KIHNodXRkb3duLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjAgKy0KIDU2
IGZpbGVzIGNoYW5nZWQsIDcxMjQgaW5zZXJ0aW9ucygrKSwgNjQ0IGRlbGV0aW9ucygtKQogY3Jl
YXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL01ha2VmaWxlCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJj
aC9hcm0vYXJjaC5tawogZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FybTMyLlMKIGNyZWF0
ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm02NC9hcm02NC5TCiBjcmVhdGUgbW9kZSAxMDA2NDQg
YXJjaC9hcm0vYXJtNjQvYXNtLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm02NC9o
eXBlcmNhbGxzNjQuUwogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FybTY0L21pbmlvcy1h
cm02NC5sZHMuUwogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FybTY0L3RyYXBzLmMKIGRl
bGV0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9oeXBlcmNhbGxzMzIuUwogZGVsZXRlIG1vZGUgMTAw
NzU1IGFyY2gvYXJtL21pbmlvcy1hcm0zMi5sZHMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRl
L2FybS9hcm02NC9pby5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS9hcm0vYXJtNjQvb3Mu
aAogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvYXJtL2FybTY0L3BhZ2V0YWJsZS5oCiBjcmVh
dGUgbW9kZSAxMDA2NDQgaW5jbHVkZS9hcm0vYXJtNjQvdGltZS5oCiBjcmVhdGUgbW9kZSAxMDA2
NDQgaW5jbHVkZS9hcm0vYXJtNjQvdHJhcHMuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUv
YXJtL3BhZ2VfZGVmLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIvbGliZmR0L01ha2VmaWxlLmxp
YmZkdAogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9saWJmZHQvVE9ETwogY3JlYXRlIG1vZGUgMTAw
NjQ0IGxpYi9saWJmZHQvZmR0LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIvbGliZmR0L2ZkdC5o
CiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYmZkdC9mZHRfYWRkcmVzc2VzLmMKIGNyZWF0ZSBt
b2RlIDEwMDY0NCBsaWIvbGliZmR0L2ZkdF9lbXB0eV90cmVlLmMKIGNyZWF0ZSBtb2RlIDEwMDY0
NCBsaWIvbGliZmR0L2ZkdF9vdmVybGF5LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIvbGliZmR0
L2ZkdF9yby5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYmZkdC9mZHRfcncuYwogY3JlYXRl
IG1vZGUgMTAwNjQ0IGxpYi9saWJmZHQvZmR0X3N0cmVycm9yLmMKIGNyZWF0ZSBtb2RlIDEwMDY0
NCBsaWIvbGliZmR0L2ZkdF9zdy5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYmZkdC9mZHRf
d2lwLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIvbGliZmR0L2xpYmZkdC5oCiBjcmVhdGUgbW9k
ZSAxMDA2NDQgbGliL2xpYmZkdC9saWJmZHRfZW52LmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIv
bGliZmR0L2xpYmZkdF9pbnRlcm5hbC5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYmZkdC92
ZXJzaW9uLmxkcwogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9tZW1tb3ZlLmMKCi0tIAoyLjcuNAoK
Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1k
ZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBz
Oi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:04 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhI-0002uz-IE; Mon, 16 Apr 2018 06:33:04 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhG-0002uh-Gm
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:02 +0000
X-Inumbo-ID: e0c7eab6-413f-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::626])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id e0c7eab6-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:05 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=qInwOTxD74h8YT+EwqZSEmBpVlDZ455qgs3A7Z+fvqc=;
 b=Ospj/mUEgAeBClJhl3lzc/A1PnAU7iyk/lUhw+Ut8rDzamewTsvVeC7XXOzsxVAip+5soA0MB7YtXfWqt7BcB/BMPS2DPkqBvDgzawMIK3pcs6kUJiK5lBvu9Wd0CP6arCuom8wDJZa3ji8rSs6Fs3Y+jpCYyMcOsBSNnn5iD3I=
Received: from VI1PR08CA0211.eurprd08.prod.outlook.com (2603:10a6:802:15::20)
 by DB5PR0801MB1590.eurprd08.prod.outlook.com (2603:10a6:0:3b::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.9; Mon, 16
 Apr 2018 06:32:54 +0000
Received: from VE1EUR03FT030.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by VI1PR08CA0211.outlook.office365.com
 (2603:10a6:802:15::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:32:54 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT030.mail.protection.outlook.com (10.152.18.66) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:32:54 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:32:49 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:43 +0000
Message-ID: <1523860343-16382-4-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(346002)(39850400004)(39380400002)(376002)(2980300002)(438002)(189003)(199004)(8666007)(51416003)(6346003)(39060400002)(11346002)(2906002)(26826003)(426003)(186003)(77096007)(26005)(72206003)(336012)(446003)(5660300001)(478600001)(356003)(305945005)(4326008)(246002)(36756003)(50226002)(8676002)(54906003)(8936002)(16586007)(47776003)(50466002)(6916009)(48376002)(15760500003)(6666003)(7696005)(106002)(316002)(476003)(486006)(2351001)(2616005)(126002)(104016004)(76176011)(575784001)(86362001)(106466001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR0801MB1590; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT030;
 1:jZEyyWF8g3PRSmaokphXW1Ty6ITToe55gcZX4s4pgCw2RH67D2ohpRTXWv/pQyr1dBpFGKkjc3Y9Y0Op4dyAiDBhgVAAgvarQZn+/ZisKOeUyGzJ7zWCA+MNASVRLsSx
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR0801MB1590; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 3:YFNVcSwweu7TWtwYFlGn+828CcTI3lJxT2iIAgeDtK2Gtu72KPvz0gNNSHHaxiGpA+mzaJ+fi8d4aDX1InKIB04arEkRKfd+uFLjemIXJpQDbkyJUp0Ytc5sSqjz3rS6amKHLVzkkRo4/4mbkUmb56L5EhQnJbt6TElQC+s9BznlMosabqgcUNVWTRqHA1bR6BlMN019BlFV8Cu3RWM4RPcBj2B6xA0BdTKfDJk0NNTmKXeYMAsXIOhtQfebeOhJhnuMFK0mfY8t6U4qPNN1geT1f5yaGE8o+ug1DitgYShli+TjurTcI+ocFj4BZ2Qva5yY5Nqs079Hg2uHFddgayXaszZFsDVh3GKLktnSSO4=;
 25:m+VxfHefU3FTMTXHfe7uTVcyCJuqnw4HmSk5nWEeLIx4ftVQpaqglvjtN1o+jT1zvHimJRCfhVxrYko4qzCI+mZBLdbhvH3qn3ODxNjiR1TuKgKihNxQ7ZF7oM26rb+GEwY2/dXIZoREwWLwgxQE1ckbpAMCH1mU6Ccz+ai5mNXOr2H6k4vAgcdHBGhxqsyN3iwZE7w5ZT7Zbz+ZxgUBSqtTMu588UoI0rd1gTCaM+heXqoiOWEnmauiTf2aVEP1+y4N4Pc2Rb2beCDfrdXrh8GAFlcl/U/kpEwO4nVkMztIHQTCoiMB8HFP+DEq3Qr5ZOOsrRIhGxnTdGGYV+rT2Q==
X-MS-TrafficTypeDiagnostic: DB5PR0801MB1590:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 31:eIzg5eO/OFrzZnLCBhPzCPEWERCtVwevP12YAfzPa215WeaMXbGVsglxo4is98LLkPfqGhJpeG1SuTAuw9lHxSI7/nwexiOE7X+4oXvjUeSvkdj9gp5rIjIEq6ZTOo7kBVnAhS9+RdNMNDz3c9fPdCn9jtYiZk3SD7YHfTtio7Lqq0J6G58FJ2SLVk49I5XNtioNP1s4urgSDN9xIlLdjcoDKxKMlQKbtjxvwhCn+H4=;
 20:RQR2gdMTvdOQLdTNsJiRdnJ3uFUPJgU35ZuMxVhBTAi+/W75pXW0rhPgI0npVKjabCAQGWvWpJUJ9E4F9sNVx+3yoyYRSF1c1vQcY+H2VWUdapt8tx+hHx0QAKpxg6i140vIWvFFFqLFjycdZ55K5BEaOlEixQCIcEi2Pwimt69BxRIpNWiVR/E96sQ6asswkazllz6TT234fyHo4u9YoiulPJuj+YXzQXlUVAfd2arT/CwAJpkdwnPVRvzbK68d;
 4:I8rfC5RQnioyl6fGynXAXpdyMYsJqQj9hywSmJzlVlM8hYIbLvfNqIEn4O6ArVULbAXf+NEnkLqeSCiENoEYuHzea2KzuJkRkywa2tb5jrUwixf04Tt4uiom3X2JljvC7X3Jx7uCW1Svc3++EQJ0xtZqsM38GOZuUVF8jzeCP52UMXZCLFVXjFocq5gMRdkq2ptn4U31Mhdp5ugNptC7i/7CFS4cRcQG5L3AP2Z7IsT/TMux6N4lxA+bbkMxlm55ODRbmuKv+bViYT2WhBC4EFGKdRejR58SWR2a5BmebiHg7fxpnpN8L7emje/BYR9YJFCMJ2dNHz8MUrFCOzrchZ3tpH740EV1HU986hnjZdY=
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR0801MB1590217088915A7CA854B74E84B00@DB5PR0801MB1590.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(788757137089);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:DB5PR0801MB1590; BCL:0; PCL:0; RULEID:; SRVR:DB5PR0801MB1590; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR0801MB1590;
 23:/DwW41P1GYws3eji2Bc2wuXfDSaxKvmR0eGB8k5?=
 =?us-ascii?Q?nxyyGvhFiFpKgyoTpHV56sOH1tf/nX/BxcaQWi5Katczm0jzK98mdEla5rLX?=
 =?us-ascii?Q?bDWkdB1+Z5tcACgmrvZRw72tnbWft6N7IphacVRWrsJ51nuMkfnjNZ0+8/M/?=
 =?us-ascii?Q?8nXnBbs5oef5XMqJ+ECGJfE0/8oI5kx4INDTJkbIRgrqNyqV1Lbyqbe97ZSM?=
 =?us-ascii?Q?KurfDahnQ9Adukj+5dNh+r8isV0vQl1d5OTW1Uaer6joA8mdrCTBn7YrzPfA?=
 =?us-ascii?Q?UyDMzJQygsSd5TuOnuhGFbveRqnKsa/Aue5hEWTlpgsiOhVCoLO/E5m/8mr7?=
 =?us-ascii?Q?otp4OBZrWcb3g16tE9mfHhzHZZO8WRbSOhkxgw+vWziCHHBWt7DmEjIhX+qS?=
 =?us-ascii?Q?A8HxQuTzSlFvPAHXUndq2hbCk9KFoGdB9SIDju8kDY3z44CeiIBJPKVUwe2Z?=
 =?us-ascii?Q?s5i/FGypXEcOuEz0J1gkevb0jciQId3mldcW/8Fq3IhkiJIExcEd2426PRKX?=
 =?us-ascii?Q?Wn2de5hg8GkTe93vfoH89MT8f2breC2nJEJfjKAUAyYPadSBXfAxMRtrxYE9?=
 =?us-ascii?Q?GR8aYiYs1R9NkwK4F6mNX17fRO09ZHRH/fXMXMHnAZgJnAAiqHujqhFOP+ei?=
 =?us-ascii?Q?jPu5wzX1sTDYtwjGklQNqmWIJP/V+ZWpz4kxozhtIni+GABItvXrjWlQ08AM?=
 =?us-ascii?Q?3QBTGHKQJfsx84bVdbozHy49uHCEYePS8c9cg8XyRQugHA96acFSWrJiHzyH?=
 =?us-ascii?Q?FBRqBHWZ7cLv57W/ncBawgx7jVGy2sghoBktIvyUXVNTQcvriAKNTFgJREns?=
 =?us-ascii?Q?uJmGJ6yiqcPSvXnkuaIoPXQ5omyEpDTOx0tIsZsAP36T6IeiQJZ8EidfydP5?=
 =?us-ascii?Q?lKfHQhvOHJvxC69eKKybouyllwkOzFxJ+wEQAkvmJZOlN4Rslod1H/rM5rys?=
 =?us-ascii?Q?vo/d0G3mCuiftvcRl/u9x/S7KyWI3ryUoVdUpZwycXkw1COuGaf/CzD2seRT?=
 =?us-ascii?Q?ueIVnH3CWkm9Np5aCZNMuYyx3eF/RsInI9NbDIOI5lJZZVrEI+IneI1kSy2a?=
 =?us-ascii?Q?wH1lzGnSOFtH+ke2qGipn4bxCkctCL5cWcRdnPyES58xkQyeoYYb1u/YcmnP?=
 =?us-ascii?Q?qKcKz85VC4U1KBoqrxy7c1UpXHXXO22p3frZNKG3X6kiu3V2cY6G2UP3KSeJ?=
 =?us-ascii?Q?6rCTrvUr2HaXS+s8Xa4YCiUep+Q2Nbmlfb2kE?=
X-Microsoft-Antispam-Message-Info: ZEUyQUAuq3KjjySv7LrzsqTiqm8W7ZjIEZEkESgWRWQROCWtrFeSZHQjJ0U7ZsEKnHKPO4pHCpAtK7wsFmBF4hVCY6KdbQYAYEdrA7wivefV8Wvhxdu8ins9X4T3R1hKN4cEXc9AdrvKA75GeQl8U4+jhR9Fj+UFt4393uJ6NVGr4j1XDf0A7tWCU2ZXS6+B5c9LpHEkeLv0XVdU96Yj2Ju95gv6TOVXr33sEcMDcTmVM8C+1auLxPdt/PBXIdvRf8tabG9r8EySumqkgkHe0lwBS8ouzbSj5nuaIlgwXK+Zbx0Bo+CXrDfv8Jhz81+n8BDUeGBxRBCcGgjFapoJ6VIc9BU9lq2Aai9vLVZVGpwefpKv3C8bR54nU7Hjbx5nnMwqPGaVzKNipDaBs9cLMLstquR7gYiF9YCT9kPVlZY=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 6:5zPwZlR/gUkQkwsg9I5nXpBwRaT3xmG81JZD7GrJwwijmNsjiqb79XmVUtcwhCIHpYmYbeg+de88OjmJ5EnVF7WjFV8lqcUWzeUxfv9Zk1VONboR3uh1okOllBZAjk67bMhr5gFNSW2kB2gXR8KeYfRUAlASbGC7jTSFDv8ggPBoht9w0/TddInIlfRWbzJG6uW4KeVfTlZclBh0xigk33O87bg+i0rDGdn4w3i37xyKXPHT+Ns4RcNHgn7MAGheJxN6rxk95Dr8dTKPCsJa7vExUnHwO+Ln26SaA4wOm2E0owg38hswZzzwekmsi/YpslffCayB31L4CmO2OOnrqy2G3K6YRUgwa5SUu3AREbZixq/wtzIH/kDygYQrvA8DDu5kvKet0M1RbvOxO644EHWzlHNQeuAsULLptpN8v5qe0jjY3x0X98DYZFlVGN/nN8kCChULOIRy1E1+Es5mfp9pe6T/Fj1wDyvlqYbJas+TmG7Z3hmHXLXWhgbE+bYA;
 5:zm94bZt3K+y18RgVnNEvRSRb36EI456Q8A7UxHLy6jHUDP7kRKdCkYuB6bS07cRJDljOZk95tmUadg5I+tMg76NtMvgGGCjwtZ+mvR1lsjPkzGu0wEeRRS8Nb3LHKMdQ8rD19gX8rrlI7SxmRMpCZTO3w96y/LO7/nzlefll1ns=;
 24:KrfDY74k4pUBRREk1VksllhKcZHWVFCpIqqLcKNr1RxwaQzPgqDZu877/JRGvr/+JDCx/SwIhs/cGAmzGWcjKdrBRyD+sevt5iSTZrCN60M=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 7:M2h+qY13anrmWu4k/OGeYdoEwD5QrV1iV0Zbk+2/1/ZYlnsyzeqICmX2y6pVNgMgMD41QG6ke0NcHRgHYdH7C9AaKhZUDKj3UTphSR84eaB8EFybH/NV2gtqTPGjMfIj4A1sJmcqATRKVeakSmH4xEA2MYfwHWlafptwSGjtGrCQzJiJyDySy1I9piFDpwoNOykuDfu1bW6LrzFiJYRXcnE7oKalrTpve3MGqToU6Au5ykx7Dxz59CsGdUnIqeBq
X-MS-Office365-Filtering-Correlation-Id: 1ab58da5-4f0c-4337-8922-08d5a363e2c8
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:32:54.1863 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1ab58da5-4f0c-4337-8922-08d5a363e2c8
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB1590
Subject: [Minios-devel] [PATCH v3 03/43] mini-os: replace the
 L1_PAGETABLE_SHIFT with PAGE_SHIFT
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIEwxX1BBR0VUQUJMRV9TSElGVCBpcyBhIGNvbmZ1c2luZyBtYWNybyBmb3IgYXJtLgpSZXBs
YWNlIGl0IHdpdGggUEFHRV9TSElGVC4KClJldmlld2VkLWJ5OiBTYW11ZWwgVGhpYmF1bHQgPHNh
bXVlbC50aGliYXVsdEBlbnMtbHlvbi5vcmc+ClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8
c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQogaW5jbHVkZS9hcm0vYXJjaF9tbS5oIHwgMTAgKysr
Ky0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkK
CmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcmNoX21tLmggYi9pbmNsdWRlL2FybS9hcmNoX21t
LmgKaW5kZXggNzlkOWUwNS4uOGFkMGQyYSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9hcm0vYXJjaF9t
bS5oCisrKyBiL2luY2x1ZGUvYXJtL2FyY2hfbW0uaApAQCAtMTIsMTcgKzEyLDE1IEBAIGV4dGVy
biB1aW50MzJfdCBwaHlzaWNhbF9hZGRyZXNzX29mZnNldDsJLyogQWRkIHRoaXMgdG8gYSB2aXJ0
dWFsIGFkZHJlc3MgdG8gZ2V0CiAjZGVmaW5lIFBBR0VfU0laRSAgICAgICAgKDEgPDwgUEFHRV9T
SElGVCkKICNkZWZpbmUgUEFHRV9NQVNLICAgICAgICh+KFBBR0VfU0laRS0xKSkKIAotI2RlZmlu
ZSBMMV9QQUdFVEFCTEVfU0hJRlQgICAgICAxMgotCiAjZGVmaW5lIEwxX1BST1QgICAgICAgICAg
MAogCiAjZGVmaW5lIHRvX3BoeXMoeCkgICAgICAgICAgICAgICAgICgoKHBhZGRyX3QpKHgpK3Bo
eXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KSAmIDB4ZmZmZmZmZmYpCiAjZGVmaW5lIHRvX3ZpcnQoeCkg
ICAgICAgICAgICAgICAgICgodm9pZCAqKSgoKHgpLXBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KSAm
IDB4ZmZmZmZmZmYpKQogCi0jZGVmaW5lIFBGTl9VUCh4KSAgICAodW5zaWduZWQgbG9uZykoKCh4
KSArIFBBR0VfU0laRS0xKSA+PiBMMV9QQUdFVEFCTEVfU0hJRlQpCi0jZGVmaW5lIFBGTl9ET1dO
KHgpICAgICh1bnNpZ25lZCBsb25nKSgoeCkgPj4gTDFfUEFHRVRBQkxFX1NISUZUKQotI2RlZmlu
ZSBQRk5fUEhZUyh4KSAgICAoKHVpbnQ2NF90KSh4KSA8PCBMMV9QQUdFVEFCTEVfU0hJRlQpCi0j
ZGVmaW5lIFBIWVNfUEZOKHgpICAgICh1bnNpZ25lZCBsb25nKSgoeCkgPj4gTDFfUEFHRVRBQkxF
X1NISUZUKQorI2RlZmluZSBQRk5fVVAoeCkgICAgICAgICAgICAgICAgICAodW5zaWduZWQgbG9u
ZykoKCh4KSArIFBBR0VfU0laRS0xKSA+PiBQQUdFX1NISUZUKQorI2RlZmluZSBQRk5fRE9XTih4
KSAgICAgICAgICAgICAgICAodW5zaWduZWQgbG9uZykoKHgpID4+IFBBR0VfU0hJRlQpCisjZGVm
aW5lIFBGTl9QSFlTKHgpICAgICAgICAgICAgICAgICgodWludDY0X3QpKHgpIDw8IFBBR0VfU0hJ
RlQpCisjZGVmaW5lIFBIWVNfUEZOKHgpICAgICAgICAgICAgICAgICh1bnNpZ25lZCBsb25nKSgo
eCkgPj4gUEFHRV9TSElGVCkKIAogI2RlZmluZSB2aXJ0X3RvX3BmbihfdmlydCkgICAgICAgICAo
UEZOX0RPV04odG9fcGh5cyhfdmlydCkpKQogI2RlZmluZSB2aXJ0X3RvX21mbihfdmlydCkgICAg
ICAgICAoUEZOX0RPV04odG9fcGh5cyhfdmlydCkpKQotLSAKMi43LjQKCgpfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBs
aXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnBy
b2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:05 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhJ-0002vK-Jt; Mon, 16 Apr 2018 06:33:05 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhH-0002un-Oq
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:03 +0000
X-Inumbo-ID: e18a3426-413f-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::627])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id e18a3426-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:06 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=6j9CdMiicR64T+NgWNKSicwgh531BjiMSGjQOuVlUNs=;
 b=nB2VaKNAoThnkRoQeowKbEzqAJlKkN/m+TsWxrlhMoAvi9jLmpWBPDpHqZz+c880UWgRPT2kubMssbQ+T+TY/4fjDtv2a4JDTnLJcG6lz+DiAjHxYWlYy4tFfirlFIL6p3yvwTp612zqf/WyJgs5L+OTLHAyHoxe58EH3EgJDog=
Received: from VI1PR08CA0211.eurprd08.prod.outlook.com (2603:10a6:802:15::20)
 by VI1PR0801MB1598.eurprd08.prod.outlook.com (2603:10a6:800:19::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:32:49 +0000
Received: from VE1EUR03FT030.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by VI1PR08CA0211.outlook.office365.com
 (2603:10a6:802:15::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:32:49 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT030.mail.protection.outlook.com (10.152.18.66) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:32:49 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:32:40 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:41 +0000
Message-ID: <1523860343-16382-2-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(396003)(39380400002)(346002)(39850400004)(2980300002)(438002)(199004)(189003)(76176011)(50466002)(59450400001)(486006)(36756003)(39060400002)(336012)(186003)(4326008)(426003)(7696005)(47776003)(2616005)(11346002)(476003)(51416003)(126002)(8666007)(5660300001)(6916009)(106466001)(48376002)(356003)(446003)(305945005)(2351001)(2906002)(106002)(16586007)(316002)(54906003)(478600001)(26826003)(72206003)(8936002)(77096007)(246002)(50226002)(104016004)(8676002)(26005)(86362001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1598; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT030;
 1:QzRnHBo0yClDE8WfKQfFfvaJKicdHY5F1cqZLifqnEEiUrBUURMVFVtxLUBbd31Y1IPv+TwK94lqpj3afyDNl62/eoK7LAZQ+znfl6DIX4s6p0Y7ill8tWPoZLcMnB0O
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0801MB1598; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1598;
 3:8XxHXkg9XIM4OEVGRXz49lJVS5IUdUinvAmObNiTtEX6QIgeH0HoBU/q8kBDrLw0tIQE/+Raxi9/7Zz8OoH0HXrb1lW7V1baaaY3EngC+C3eIYohtowx1Z7kGI04O1ZvOaWFlv6WPXgaRGhFWyecjle+UPnKk2PaA4BDC1V4yGZBjZg5qGBlry1OQEgh89/vel3GE0LhuLSQIdqFiCE6ywsj9eY/A82iJJ27DUIQfC6GeOjLuHSDBp6bRo7lZxhvIwityS0c/ZjlMSolKakPJbNzJGlpgOezhjgdqoLy53ZTOQMuSvyD47qVwdMrPNQ+FlVpnJJHS5o7c5vUyvXRjqFwZZ0D7Ow5yQIhO6tHwZ8=;
 25:5FQcGbfWCm1Cd3DVYGgoryETsZw4h4i1jKu8KJKyUHspVM7Pacz7WIEA+LAeDKcvMbbY/F+JHB8q9MTHEDwiuHjxiK5K5bOlBWQ7JT4u153QOhrRxf9PFUPQ/KUARXuMVMmWbRQkblIsfG0eVOs9pLEt1kaouQoMuuqfKPcH0WAeQNorwHGQCMF6lMR4aKux2UWIs0hFn5b0L3fuCn3qNdE4jvHxDh8f/7wP17mityCM4d/HKeQpgL//f2q5pwFhOfj0WNr2nwGNc3IJUto1fNSvqJSQtBgxCETDxdSS6n+saXpbdfiXUXAa+UqubcXZYh9pJvDHXWK/ezv92D7duA==
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1598:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1598;
 31:87k/X3KoVnA3Mc2SHGoVJSDvvESx+bgDyu7CJK3DBmUbmx78CA8L3jFZInjfHbgSxitlG3AYHk74SdpTYvp4iChXgDQ1MNLEY3LQzx3gvgYpTi6DQRqguE0YS4s/3IvbcboPYjRLNt+0yCiAUF/mhHwEiUgspBaO76owNcOhYTG74/qk6Q7o3lBjZkk6x+C0O4sWPPTPKbh6tR2h1hmiXonrx/I89gCxh/bRHBxmQqU=;
 20:LA2POXwhdV9QQA7QzOuaphIl0dVMBtOIFM9hOwjsMZwouGhHtUWc5+s/9Dj1SA/+YZJ1jyVuXlFWmLe588RQh2r6+jnnmi/oRt5n2qmfxN/TYQQakiHpu4l057d0nkQmPKNbtnuds3y23N4y3DlnBSg9EHsFPK4XZxu2/Nurf5nGcOTYhRp65UpPKUVk5DYDtHGUyeVBNXbFbUBsx9lW5mhAk8V5/L8napHXn3m+7xkC1xb9DLX3OOGQhRydomKc;
 4:bggFolhqQLHhpNr6u5qE/OX7d5Qe15tGGENLNn5FcoyAVrFsVR2hx3hVWNK7wRxzhAxcEqJrswKzOGkZjy4ryQypfwTdXcSFe7X0oxXGzPiXS3WtKJDOQfKgKCcWZmYs+6pQxq9oqN77fpenhXD16Z//t2F5Ryf282qF+jmdTCYiC2KHt4hh3sfQxTaWzpCM78b2wof0iktXCE2ZNgzxgyEb5ArcV7JT5R7yAjwVQmS246gR0NdwJdsehqGl/N9WMijhg1JExADvgrZa87OA4Kzw/iCrsP8RYuUyUWTCGtN9vNwWHaKQKzaORNMMmArh
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0801MB15988247D1E920DE1DEAB28A84B00@VI1PR0801MB1598.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR0801MB1598; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0801MB1598; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1598;
 23:91FDcVlrV5YOTnraDYiMES3+BEXR4ZPrevYDDRC?=
 =?us-ascii?Q?VBf8+1KTCv1+OpP37HBgSArNUrti01WxOqciyDY6YOWgys/KdiFu788rLXO8?=
 =?us-ascii?Q?CF7dcebzaj5i16yj/nO6X8YKYxSgu9AbPqcLkwnqAt3mbmSGk9e2ltt62025?=
 =?us-ascii?Q?A/FRLJY1skUuP8x8Gp9mIDf59IzpEmHWgaXQ5djz8DmipRlC4CE5HPJzEk/M?=
 =?us-ascii?Q?+rlagkh6Ppmfo/lfYp/ZqN7F8ocH5GslWTYxkwavgnO4CShaw7SexhgT3g5R?=
 =?us-ascii?Q?AXjVdryfPTdMlbC5C4B52Iw9G7tR02yzZRZjtrag/iRgn9wbv8bR0wgBMBk1?=
 =?us-ascii?Q?1BPN1sMlrVkzjwpPHtn3GLxed+r7hcqHt+9IziLbGqECNA9rdhTOmVCnnFD2?=
 =?us-ascii?Q?hQYM30dbqd6LplBqJQaURJUliGGP7vJs0UwcAwHlYYgQeP6qNKUPE6scBKu2?=
 =?us-ascii?Q?TL+Gpdqni2mbA6MVljTtRQHqp6nf/clK+CftYlQ3/lo/KHWEG1tySnWktXmb?=
 =?us-ascii?Q?1+ZPU43WueuKBMveKfICy32GrqNMLLxKE8ncENwqHDQfYI+1caer/eSPLnKa?=
 =?us-ascii?Q?jJS7pOQFS4T1Slla0uGeNJVmmM8iQ1/OEK06FnGpcuJOIfqP0AZ0mH3BMAvu?=
 =?us-ascii?Q?p+uADE6t60Qquwp40QdnLIOjL5+XBF2Vu9ZCzOy6succ9QQ27OHN5JGlIDVr?=
 =?us-ascii?Q?26SMX0Iyz9uGW0S/wkxNh6/4hAMG+2efQD3ITHWBurauoTdRL4SoXpjCQt40?=
 =?us-ascii?Q?6t3+sf3LQ24FjS2E27tCoaE5TkytKXqWfBoLBv+veThyIz5kFphK5oPzFwui?=
 =?us-ascii?Q?OWwyWz4CP8mXP372N/tJkjSkdzOWk0idWnBwLeC9nO7f0ELJ6cBhyJNhQtrn?=
 =?us-ascii?Q?aLA6ff4LNJw0VQ6I3faloM0NlbiqoUwBCxofvBMLd6cxUBI1UWtYgzIUMzjS?=
 =?us-ascii?Q?dpSYPTiCbUAEXWGaLVsg9ydoG3WQOKfxon9KVmb+9jBhCG6UMDaCO38U9gfs?=
 =?us-ascii?Q?8W5EQNjRa/N8F9mcBpHDs2rD9r8aktJdE6NvOz3qyI0Gqj8RZt1ujSjkqO1e?=
 =?us-ascii?Q?WbzhXqBA66Mm535AbCyR8D9GuZS7zVj+m4bbBfw+F9H6l5iyy7gfCpz8KEC3?=
 =?us-ascii?Q?aIsD91TsPe+EwykO/E2TphK/EV99+rqbU?=
X-Microsoft-Antispam-Message-Info: adI3Hyxe3Rm++2WcywUiy+7xQ9BAnaXCgsAkAV2ELcU6FtmcKTIojn74qHIdMFPTodpsacFpLRlxpTNx9CAaizln4asZM2KcVikwkFrss5vkgmnSSOkRJsV9wEPZifJqkZfMPxTs1xJ4L9LxO6HbhrxXDfUXA2oSW5zqcykWceZLgV20ez1yWd/DZFn7/6slj92Dd6CcD+S/MHzSbHocaShebi6cN80qIStfZI4gieoULij6WDMXd/Ij6iXzgpf7U7m1At9AGY3lwxQtMI44l0S4uPC/4X0gizVu7gkX5+TJyfb6PSKKkCXLS1YKH4UhKpoBF/IhqsOvX5G/8junyqzBqnFTGtMCh3Yp4GlXCknwDt+VE8+wQAb0T29t262ojfLnKPUrscA3c4Mg/RBnVjgq2arnRe2MxCWrndF3JyI=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1598;
 6:kEQIoG5gUiFIXWCstjeBbrfyPNvIC0XZM19REAUc7e3OVqgy4UhlIl+Q7ciGICXRqNcI+M0f9EYqD58GiQ8xWPGtz0uHBLopYszOornYVs4FS+U9cosI9G1Uy6ANSY1g6WXPJfVSPJS6ARMzR8GeEpz/n2/r8hsi2UhxP0AzWvRE5EOp5P3uBpKNCrF+rWTMv4MDQccNXCuP6XRrRht46qZJlJAQQ3ir+x3/oTGXLVP7aZayqS2+iReS2bOr33WP7oPAf+STUukK9Lt6RqQDiLy1t8+iOjHb/xJBq7uxATXhvZv1nQcTXQ5o0UI55fSCeI/zFGycDhOz3gW1+4XV7BaVwYw+kb1KPDnYRvXCXWV3KRDbb3otYH9Fe96mCKBitTeLYrMNkWulGSZKqZCDdvNMbmeI2CzGDLx54zXKAeNB5b0GqbRzNclfg/Ms1Hwmk5t3hAaRbHtRQABa+GTvQvJM3VCA2YtvG6yHCDfRDEhUxlVjiwZ5K6g6Z964eVCZ;
 5:WS0h0bzT4oiT5TJUiIluKLN7/8FwSYPKp8/SgWsSYpzLf8L3u1hisKo8shI+JZCv1mr2LrKRT3oyFlZC1Vgnlgr+z77lvgsfLoRNDs3TbDc75SvemVSRykSP+FmbBOsCKfKJ644sivtg/QN0MOp/md0hStXeegdhqeWzNWmJDz8=;
 24:8pVKKCH5Y51cxhKXLeu2bjzXAueXl/w+LJ+Bd+mCNCB11kJzogX7oyauAuMPFhYxwVGCXdD9+ag5JrKDYAHsxa/JaIhyWvYIo64hVJEIURw=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1598;
 7:4pQ0VB3YQYJwMjiNDhUIOaRjtY3g6eoRyKukgLzl++FrXJkPkd+rcwWpuJ9ZfOUx+WoicBAQ4OOx0fodqYRQwiTjjYIyrz2TwaHgNnuxLnqTP5IzZddG2umrp1Os8DBgqcM7EFiKCL8Cy0w/eGPS1Z3ij8gWydrOaZficeRGDWnZHQKLpuPN0tW3aFBcPGCDLPyYFZVDWc06mFxdW8/sSKFV/1VujT+UWSAvvrrMfb44pmg5ttUD+l1Duj/DW0lt
X-MS-Office365-Filtering-Correlation-Id: a3cfe3e0-bb6d-4a96-1bc7-08d5a363dff6
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:32:49.4674 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a3cfe3e0-bb6d-4a96-1bc7-08d5a363dff6
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1598
Subject: [Minios-devel] [PATCH v3 01/43] mini-os: fix the wrong parameter
 for map_free() in init_page_allocator()
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIEByX21pbiBoYXMgYmVjb21lIHRvIHZpcnR1YWwgYWRkcmVzcywgc28gaXQgaXMgd3Jvbmcg
dG8gdXNlIFBIWVNfUEZOKCkKZm9yIEByX21pbi4KClRoaXMgcGF0Y2ggdXNlcyB0aGUgdmlydF90
b19wZm4oKSB0byBmaXggaXQuCgpUaGUgYnVnIGlzIGludHJvZHVjZWQgYnk6CiAiMjUyNmU5YmJl
NTIzMjhhNyBtaW5pLW9zOiBnZXQgcGh5c2ljYWwgbWVtb3J5IG1hcCIKClJldmlld2VkLWJ5OiBK
dWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+CkFja2VkLWJ5OiBTYW11ZWwgVGhpYmF1bHQg
PHNhbXVlbC50aGliYXVsdEBlbnMtbHlvbi5vcmc+ClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWpp
ZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQogbW0uYyB8IDIgKy0KIDEgZmlsZSBjaGFuZ2Vk
LCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL21tLmMgYi9tbS5j
CmluZGV4IDkzMmNlZWIuLjQ4ODBiNWUgMTAwNjQ0Ci0tLSBhL21tLmMKKysrIGIvbW0uYwpAQCAt
MTk5LDcgKzE5OSw3IEBAIHN0YXRpYyB2b2lkIGluaXRfcGFnZV9hbGxvY2F0b3IodW5zaWduZWQg
bG9uZyBtaW4sIHVuc2lnbmVkIGxvbmcgbWF4KQogICAgICAgICByYW5nZSA9IHJfbWF4IC0gcl9t
aW47CiAKICAgICAgICAgLyogRnJlZSB1cCB0aGUgbWVtb3J5IHdlJ3ZlIGJlZW4gZ2l2ZW4gdG8g
cGxheSB3aXRoLiAqLwotICAgICAgICBtYXBfZnJlZShQSFlTX1BGTihyX21pbiksIHJhbmdlID4+
IFBBR0VfU0hJRlQpOworICAgICAgICBtYXBfZnJlZSh2aXJ0X3RvX3BmbihyX21pbiksIHJhbmdl
ID4+IFBBR0VfU0hJRlQpOwogCiAgICAgICAgIHdoaWxlICggcmFuZ2UgIT0gMCApCiAgICAgICAg
IHsKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJv
amVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21p
bmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:05 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhJ-0002vP-Lp; Mon, 16 Apr 2018 06:33:05 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhH-0002uo-Rb
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:03 +0000
X-Inumbo-ID: e1c3fb69-413f-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::624])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id e1c3fb69-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:06 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=HvacIc+D2iEZFIV3WiV9rr20RyeUKM3Jt3k6kARcB0w=;
 b=PBeuRaUMBZwnbZKpM34dgWsHefeJEVTvVCkbapfQmrYCWzSLoNPV7RmCQihZmP91rhEEor1xaD1lrNS9lrINMRMV1VhwUqlhptEHywGga3pFlf9z+VmaBZRGU1NIdM3CSpxhWoY6VQ+7OAXq4vughF6GL183SFLf7QSHfIUN0yg=
Received: from VI1PR08CA0211.eurprd08.prod.outlook.com (2603:10a6:802:15::20)
 by DB6PR0802MB2421.eurprd08.prod.outlook.com (2603:10a6:4:9f::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:32:56 +0000
Received: from VE1EUR03FT030.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by VI1PR08CA0211.outlook.office365.com
 (2603:10a6:802:15::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:32:56 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT030.mail.protection.outlook.com (10.152.18.66) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:32:55 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:32:53 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:44 +0000
Message-ID: <1523860343-16382-5-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(376002)(346002)(39850400004)(396003)(2980300002)(438002)(189003)(199004)(4326008)(575784001)(6916009)(486006)(50226002)(186003)(305945005)(426003)(336012)(8676002)(2906002)(446003)(316002)(11346002)(476003)(2616005)(126002)(54906003)(16586007)(86362001)(106466001)(77096007)(26005)(72206003)(2351001)(26826003)(7696005)(5660300001)(51416003)(39060400002)(356003)(76176011)(48376002)(47776003)(106002)(104016004)(50466002)(8936002)(6666003)(246002)(478600001)(8666007)(36756003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2421; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT030;
 1:x7nu8B2Ft9W/5fWZXeoZskKYyVoqzRLG8gV0Wsxifan8BX8BQIrGFxXpG8uYLj74ILa0JOA4rn9DHRfP6ljuwCF/XnDs1svrgHbxgbufahshwDs1ERjBHFVk29FToIR2
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2421; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 3:uzFqqjtBY70IeLrdTk3H6Xbiy6RqVu+YTAtr+yqiPeIIuPANUf5f37V8SIw9zIFnqI3r2FmH85ivnRnMreLOmxQ94iUugKVn3YZDzSjrXEq6FsN2dH3aQfnmm6WMm7BQWLYSwLRJxj7eLtKSEUuNdX/Ys1RsaeWRZhKMEVS3WSwvKvKHYYonHHCKiK94TPcGsk8RidG0v7nyg0kDh+jRbvEqe3RYpyL8zHbEiri/R63hlKSQFgNbyRlkCAi3qUVZlA0xL+i1iyTp4UJUco3hgWOfxOTZKpTZ4Zswt7I/BuYSkNRj7bLNdgewjoKEAbVX7QJ/skUUwTSJrwcAnWDe77PcL0OKHg4xJlmjc2djR8M=;
 25:lkrYsRuCufeu/doOvqDxchMIgal8Xh8hHVeVDY5usuhRc2BQ9+B9+ucFeuGQacfMiKUhjKpqnSd7M6TlcE/W7GCCUx1962800PHpznbQuMKabOVLWB7sI7267XrkdcF+ZnvSjNJl1lx0uigDx80hGRXNXhSSK0j7dlvmS61uT4tHtNeYEMtCCK/aBa0f/0OwnHvrwylbaBE5nVIiNDHED6Ydm0IxOELrj2MA/CqeuNJ0HaBSEG+UufSTZx4NMbaad1gFT9CzTRG8XGZmWCEAFdPskY/hZ75Nn+7xeqiTEUdaM+TgsZxBScHfR78HiQZiUETxj6fAMLbguSQZwTYNww==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2421:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 31:mnOuyXpzFE3OwnfcGcGCtMSehcDxTe5uGaBi2BeZXTtV1dgnGKbiPHOfVGmoQ2qxvbXXrDj9BHDU7FcS3cgl2X8aFMfaXDQMhfQxj23uEN4Ri7Kn8fSmSKtf/MVf1c0EKjPZ9oVpiqGjaaaAQNnwgAq6QNxFtpP1QrmHjZ0mOkYr86Gu+OuWDZWzyaT9Na9m03hCW8fDctuQL6aPxm1hV2hq21qnoqImrtIbJacl788=;
 20:ZWjI0SN9wfmW5oKh7IBR2oQK53yPryCef1SYMytDGzEOXYoJ0sJDeJ9h3Fn9DKs49PE4nwuiAzpo1kcLgsD8h5EH65O3/LrpAs2mecTSHyPIGZQVYSYjRQV7cEgTIbPb1Kzo4QM/WL2aXVlueeMchFhjnk3cq1z7QtjTU86Nc01S0zulHiVcSxmntgcQS5PkRcVyYr3uucmlAZKo+tVjskdd05mUF21R9JLaj98PLEJbZqmVmc1yBsWHPN4O4a8l;
 4:2an9nf8/jjyIDFlmbwhAyscq5L92OfKMBx5R1IJLi07CUu41n0bAP1Si9zpho96bHfbU0ARjOwnlS7vh7MEfaloLLWxew2zB+YxHL1g15xnFVw1xH8AdpvVtYfFH+Lrn8iNHb2EylflU/+Sm8PFEwBbxSMwFDe8W5439r+IQ32c7nVemYzsdz91cTmFsgpW26HNdJfgd73Lq3OvfPeP12RO9ybQtwthBwCHCb6gmANlC5CaX4hoIK01hmE2CaLVodfIs/7HYD+kIBc9PGEyE5Ts0UQmf/7gQmTVpj0WSQ+Lolmva2hWe7LxBVFx0Ejut
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB2421F1C7BB2B3E1707E20C4884B00@DB6PR0802MB2421.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2421; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2421; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0802MB2421;
 23:YS6e6glFk1MrTDxz7zHigWILWt19A+oKZIdjr4X?=
 =?us-ascii?Q?I6prByvD1SQzdeNHjBOK3QlSmjllAMqp3e0lebuX01/oYrLYiZhN9kbz7c5w?=
 =?us-ascii?Q?WPrZU5vjeKVuP0qb3kcubZRoMm2WL34NwQpgCNARTQMNyiSZpV+A7aG4Q3zm?=
 =?us-ascii?Q?AZZF8eMXJJ7c4QEDS+AvH/pBCw7lq4Wjs4HgJ/qY27+tOMZG+qSnMc8u4cIl?=
 =?us-ascii?Q?pEuADKI57drklBffQfcOoo4Ln5o6+3m+DlhWAffRVPldN2YfXTRDSrFH0lfY?=
 =?us-ascii?Q?UcZqi77h7g8JZUUDNsfGzQ4pB23w9duIyMmTT4e72Wtk8NegXqyAabpxfHGu?=
 =?us-ascii?Q?oJ0Fxe27guFSiwBic8OdqygziPETVGDZNiJ4pQfjm2Bt3OhI9/N8MB52Pp9T?=
 =?us-ascii?Q?yUGEp80EtC15H3/ioIESpAdzBmPQuEXDky7miDyYMXABpHUJlP07NZiPaw/k?=
 =?us-ascii?Q?4IvK02K7YXysyD2hMy9i5UdsbhCrz6fFRp209fhcAXrSiceYIi/PGC9aH0lL?=
 =?us-ascii?Q?RWxKzjAPP9RE8K49BDoJFOMmo4xzapkHZIAqP0fCNM9pr/dnIivKipO5vm+U?=
 =?us-ascii?Q?LK10TGw1WqhnA/FgV6nQcR4NsGmsLs91oBfexCJVhgyXq/AMQ1ZWA2quZBNr?=
 =?us-ascii?Q?HCHXaqqp5NNOKRgLU4QzPwx8gW3oAqk4szLoICXdil+cvmd/M5JQDNqt1Xp5?=
 =?us-ascii?Q?Je4nPUyHRVmVBwSG5AAvUkmIes0tbtoLrqsQxsg4CRuHyqj9cPr1XwFG+Mhi?=
 =?us-ascii?Q?dBmYvfpqLUlHj03kgdu0ylORmoe23B+muopeCV0OhKF77VuG9e4vipejlL6f?=
 =?us-ascii?Q?RN5RhnxoDlGx3EK2Ji6TVH3GXFK7O8S6lc/jh96YXkfMh2oPyqlS9GrKX6dC?=
 =?us-ascii?Q?NS3+oruLd/Ay6/8YRx7nuSk/skU1qXQLni3M2V1stFeK2ws6FqtHL0Bcbxta?=
 =?us-ascii?Q?W3nGPz6b654qOM1gOyYI8Gix1npH531srrID5BTCn1ahmdiTqwsDquvIRiH0?=
 =?us-ascii?Q?CTOftm/BoD0XOpBK2mZIWtLXR+HRysQuU1EN7jA/4czgaIfqrNr3z8YVmT9G?=
 =?us-ascii?Q?nUsZqLQM7z/aaMz+uZxQWZBFIxXI27g0Snk0347yfefhHhOdfvQ6mqA1l1/k?=
 =?us-ascii?Q?sVF/nPUSRh6G8+uabYkYJH9yyoy3DrbBHUTNUdniKlRU3Re7YoJS+vA=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: 4BwKuz+c9wUrsv6Nq0yw5X2O8V28RvBaLugnJr0wESnEB2SE8OZuAKldxTr7UrwmEK6fhnRTAizxsvWte3ptx3dYwD8MjiYLHq6uJqimpft6gBEW5t8IgONiocsXJGRFhKWvnUnN8liHUDbd81ckRH8IRZONrj0cBpfdJbxKvBHXEzZCrRQQ5wvHNr8M5e+Ih0RC4GfrOy016NqtUdXMmcLHF7ikn8ggpKaGZ7M1cPZHgPV6zmNH1IpIA83ECkvwSy22OBbieTQLxPBYEA9BQ0SOFEiPG3vAoqTKq0pIKDHpk1e2d3d163gLTbOc01hiSItMwhe3Xjo5SPsQKYsv2UEGKQJheU5frheo//TvbmKY2Nes7jY3sdOFDdiEfwvTJbMFnJDbtcQSsiNrUPVZJqN93TTVLQ7A5J76Q2aN2Ro=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 6:bifBW1q/u6HeqKKiRFe36Td5EN4unOl8kb32z9mp+9yaqmFYWYwnAd2W10gzwhZpEsi4tmBVqpriGqdOp7An6p9ZFMK4vUdICMcCxWT7G2wdfmHUbq0kAMQk/TfeyHFZ+jggpEXL5n+E0CVJITKOfZMHB5XJI6XRhLo1ZXJm4Xxi2bj1GMm3Ia9FGAGoBZB3EipwADQSME9SPPz/nY3u8422tn7ohWE8+6RDS9Fdf7qZUGm7SxdXR4v7zj3tknUT82TLVjUsxLT4gAOSuxlENC1XwIALojK7qZ+eNvwOQ5m4pxF8CuWINDcpxbSAbAvKkrPBkGVIRS0qZlY1zhfL1wzpAvYgFDMrIlQjMSOmz+YGr1cEc41eyzT4MFUIVE7WiwOmeaLDRrLbEAX8CvDXiRKb9eIUDRjX+QJd8PCVMO7sUv1gZ9znVqbSjoRwYIH7Kj9L49Pv/T7fOkvIn+gpdou8oB8Fr6vXFz/XEU1w/seczncQuC7JO6ElsR1rxfoO;
 5:5TKjkukDcPTwu+1AiuKAjy3mOPne/KvovjNZGxRjSbrCZX6CpLUWtmGQE4sKh7+RXI9N+YbiyV0E+TUyPQ+xBE8G6LI9cbnJO1BzGzKfvv+QnoOVDoYAPR4Tb0CTDbRJlOkxEVBSX6E1YlQhdiXmU8IOUFTsDLZvQ/91QWQtHoU=;
 24:VB8vFDDUmyqAs5mKaQPl6mBOOdWkWG8PN0bGPC2FcLejcRt4XYCP8IO9XgF6Rx2b1c+KlA3rO+ouhQ6k8pAZ/4rvg4dmCKRu2Brk9hheMvQ=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 7:pYenUBO9cbG+izHcnWb8nG59qciz8igm8WV6njWEb75SnN8ISJzTJjY+URfWjyd3YUX0/m5m3qN6XZYkmfJ0G5MKg3SGWuNvskuFupZxclFyazQR4cxjQYS/O4Oe1jIGkHY8+UT+MnycdeXx43Sz4um2usDMJ64gwTIF4taC1FJBl4sLtLQ6A+Wf1todSoE8hQhImf4DiDdH1BafWaTu/yKYk/MwOtw5MMde3QlnlvDiZGJSC5EV1KbbCPLVGmMV
X-MS-Office365-Filtering-Correlation-Id: 96bb0724-9fcb-45fb-311a-08d5a363e3b2
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:32:55.7332 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 96bb0724-9fcb-45fb-311a-08d5a363e3b2
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2421
Subject: [Minios-devel] [PATCH v3 04/43] mini-os: rename the L1_PROT to
 DEF_PAGE_PROT
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIEwxX1BST1QgaXMgY29uZnVzaW5nLCBzbyByZW5hbWUgaXQgdG8gREVGX1BBR0VfUFJPVC4K
CkFja2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ClNpZ25lZC1vZmYtYnk6
IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQogaW5jbHVkZS9hcm0vYXJj
aF9tbS5oIHwgMiArLQogaW5jbHVkZS94ODYvYXJjaF9tbS5oIHwgMiArKwogbW0uYyAgICAgICAg
ICAgICAgICAgIHwgMiArLQogMyBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDIgZGVs
ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0vYXJjaF9tbS5oIGIvaW5jbHVkZS9h
cm0vYXJjaF9tbS5oCmluZGV4IDhhZDBkMmEuLjk4Yjg2YWYgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUv
YXJtL2FyY2hfbW0uaAorKysgYi9pbmNsdWRlL2FybS9hcmNoX21tLmgKQEAgLTEyLDcgKzEyLDcg
QEAgZXh0ZXJuIHVpbnQzMl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0OwkvKiBBZGQgdGhpcyB0
byBhIHZpcnR1YWwgYWRkcmVzcyB0byBnZXQKICNkZWZpbmUgUEFHRV9TSVpFICAgICAgICAoMSA8
PCBQQUdFX1NISUZUKQogI2RlZmluZSBQQUdFX01BU0sgICAgICAgKH4oUEFHRV9TSVpFLTEpKQog
Ci0jZGVmaW5lIEwxX1BST1QgICAgICAgICAgMAorI2RlZmluZSBERUZfUEFHRV9QUk9UICAgICAw
CiAKICNkZWZpbmUgdG9fcGh5cyh4KSAgICAgICAgICAgICAgICAgKCgocGFkZHJfdCkoeCkrcGh5
c2ljYWxfYWRkcmVzc19vZmZzZXQpICYgMHhmZmZmZmZmZikKICNkZWZpbmUgdG9fdmlydCh4KSAg
ICAgICAgICAgICAgICAgKCh2b2lkICopKCgoeCktcGh5c2ljYWxfYWRkcmVzc19vZmZzZXQpICYg
MHhmZmZmZmZmZikpCmRpZmYgLS1naXQgYS9pbmNsdWRlL3g4Ni9hcmNoX21tLmggYi9pbmNsdWRl
L3g4Ni9hcmNoX21tLmgKaW5kZXggY2JiZWIyMS4uYzczNTRlMCAxMDA2NDQKLS0tIGEvaW5jbHVk
ZS94ODYvYXJjaF9tbS5oCisrKyBiL2luY2x1ZGUveDg2L2FyY2hfbW0uaApAQCAtMTg0LDYgKzE4
NCw4IEBAIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBwZ2VudHJ5X3Q7CiAjZGVmaW5lIEw0X1BST1Qg
KF9QQUdFX1BSRVNFTlR8X1BBR0VfUld8X1BBR0VfQUNDRVNTRUR8X1BBR0VfRElSVFl8X1BBR0Vf
VVNFUikKICNlbmRpZiAvKiBfX2kzODZfXyB8fCBfX3g4Nl82NF9fICovCiAKKyNkZWZpbmUgREVG
X1BBR0VfUFJPVCBMMV9QUk9UCisKIC8qIGZsYWdzIGZvciBpb3JlbWFwICovCiAjZGVmaW5lIElP
X1BST1QgKEwxX1BST1QpCiAjZGVmaW5lIElPX1BST1RfTk9DQUNIRSAoTDFfUFJPVCB8IF9QQUdF
X1BDRCkKZGlmZiAtLWdpdCBhL21tLmMgYi9tbS5jCmluZGV4IDQ4ODBiNWUuLjBhNmNmNWUgMTAw
NjQ0Ci0tLSBhL21tLmMKKysrIGIvbW0uYwpAQCAtMzUwLDcgKzM1MCw3IEBAIGludCBmcmVlX3Bo
eXNpY2FsX3BhZ2VzKHhlbl9wZm5fdCAqbWZucywgaW50IG4pCiAKIGludCBtYXBfZnJhbWVfcnco
dW5zaWduZWQgbG9uZyBhZGRyLCB1bnNpZ25lZCBsb25nIG1mbikKIHsKLSAgICByZXR1cm4gZG9f
bWFwX2ZyYW1lcyhhZGRyLCAmbWZuLCAxLCAxLCAxLCBET01JRF9TRUxGLCBOVUxMLCBMMV9QUk9U
KTsKKyAgICByZXR1cm4gZG9fbWFwX2ZyYW1lcyhhZGRyLCAmbWZuLCAxLCAxLCAxLCBET01JRF9T
RUxGLCBOVUxMLCBERUZfUEFHRV9QUk9UKTsKIH0KIAogI2lmZGVmIEhBVkVfTElCQwotLSAKMi43
LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5p
b3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpo
dHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:07 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhL-0002wU-P6; Mon, 16 Apr 2018 06:33:07 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhK-0002w7-42
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:06 +0000
X-Inumbo-ID: e2652684-413f-11e8-9728-bc764e045a96
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe09::61b])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id e2652684-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:07 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=VflEV85A/f6fBsJMsfqmDienbC6gvZHK9UWX0e/dw9o=;
 b=huSYE2GymIDkXEEsDupJA2wLaT9YSAg29/IpDiGheX7KPmgG2elBM4x31eiZJDKN//RyJi2j2+cxo2Ig8oRBDg2Kd8kjapQ5ZdNXUuVp1poEgnFER9BSx3zRaR5dTgsO0kjEMYTFHWdsPtycF+MI7TlP0GzhcUYB2l6Kag+iwi0=
Received: from VI1PR08CA0211.eurprd08.prod.outlook.com (2603:10a6:802:15::20)
 by HE1PR0801MB1596.eurprd08.prod.outlook.com (2603:10a6:3:14::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:32:51 +0000
Received: from VE1EUR03FT030.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by VI1PR08CA0211.outlook.office365.com
 (2603:10a6:802:15::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:32:51 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT030.mail.protection.outlook.com (10.152.18.66) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:32:50 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:32:44 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:42 +0000
Message-ID: <1523860343-16382-3-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(39380400002)(376002)(39850400004)(396003)(2980300002)(438002)(199004)(189003)(6916009)(186003)(50466002)(4326008)(104016004)(77096007)(11346002)(476003)(446003)(2616005)(126002)(426003)(336012)(59450400001)(54906003)(106466001)(8936002)(5660300001)(76176011)(316002)(39060400002)(86362001)(2906002)(7696005)(23676004)(356003)(36756003)(2870700001)(50226002)(26826003)(2351001)(72206003)(106002)(8676002)(47776003)(305945005)(26005)(486006)(246002)(8666007)(5820100001)(478600001)(2004002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0801MB1596; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT030;
 1:cITrVpWuBjbeiczfwhIc2/hY9AthAReUM1qG9bi6/AUwtu9wIAASPIhbnQXv1iLkAWJo79KZ3mQ3YWQjArBBxRadqH6PQznPDNbWI2Bk8Tk4rw/YQiL516omNdhntage
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0801MB1596; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1596;
 3:cySRlPFdn9AgEcMRoqw/2NP7R0uB4NdyKjHuHaa1v0odEGBBk+R41tAv8mWKcXCkPvtIVEZ6G7VlsMegXWSS0N2gfJ6Px1BzrBJaxsT+F0hhoTjQ0D+PlqH8Cp0k8FZxzoFgUn+cKpZPiA17cikoXSPkUyFmFdKqWJI3bVLJXrCYaK8nSOIswGHxEhH0bObSK8ITA3OMQ0niVUHpxxgZ7rCF5uLqNgYI0aRn/IwNkjQlLEsSGKErUVCpVrKJUN6ELHPSvnApVmphDGeqgPyf78pCLt4CaX3AbVpRz2EoULnFNLrmSnMgA/+TXzR18piVzXoiB4v89w/TnscT7K+8wM6Pryp9Ky5ba0TZTmqb4II=;
 25:OphmZQCRs6qy0N4+JA/UCqNrJ6+4qN8WhGgIpfTdL7qBlaLdp1Z+eLbkuZM2BDlxUx5GE3G+Ih2+k42WNQj3TCzi2oRUi6TQkwdb27zvOKc4AHJZApn2auyI6wlII9FhUtWfBwe6PKsrRvWj0MiHhE36jgps5SCtr/VTK9LEECeFnGoWyr302ximFZa+pM/aMdwKzOZlapsRyAl9WRvdpdBd+v2zc0mSk/eRo8qr/JPl73sIByj/vbnN5uebFCd+siKtktMIXKiImwg+yBDS5LQt65BRDrc5D3XPFpahbA+FWRisgYor43BEKzRPvOnpaGMm4ex/p+UqZUQrd59wYQ==
X-MS-TrafficTypeDiagnostic: HE1PR0801MB1596:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1596;
 31:9cfuucCdNUVd0u92lf3B8VPibsMcyxWPNZKJNaxGboQd5Nl64jFyLjqXw+civaSJ+pVIMA9IWYxc1YmWmDtTQoY4lkeszBGc5BY+RZkgRIocDo44XBxs1b0VcJT/eFr8YXAHcYLQfIQ8nHfThw51ZdG7GPMXktg6siQFTSgW66EfaiiKgQcXJFelb9FbML6d6EOXb8/kgHJbxJcIf0k/o3b7GHJ5SaYOIWKDsP9p/Xw=;
 20:MMlkkvqfyPylM7aAaiqZy7ioBRZ8JuLCFDYAFMfkbPzDy/yomH29XYvDPwBcHowPdixmgm+NM/3SaHZ09tJO8C9UEuJ32FrrwjIlTXOtKxCm/QD46BEoF+JD53ZyuYvZCHv6LQmpHWtU5KdtaD8QzazhBKpfczRn2cBR9NoyHWrnL9Tnby3zvxuGf6Velv48nm9o/PXWZ0CFC/vadnAdlYhO2jZmVPT6IBeys1iYQB4/Tsb+swA7aXrPe8PxjrqP;
 4:IquV63+6n6Jxxpd+TJFA5YCC2YHx6FUGP6LEo8VKvNwk986mO2cstllBt3AVz78Def0rlmQxlC6NXbY4mL6k236X7Rm5X0a2mTrDS0R9ML5yppnFZTdqCE1l/zCqg1CY9/xS302A7OQx0DsbZImKCNKil4EyYUlJXcTAI2ivNtPD1p7kNPK9geJ6EF4KjLA9m6vqbf5sGsTT7asNB+E8SxQSucSmDH/sPqCldBGpob1Vwd1K6P7VEVKoDn/KH5dqUx8Bxsgr4DGgxcPNl4m2J0XEklWY5GLSVz4j9e426QnL3V3eMsK1h81soUjYtt6ns5S/Z8muAeu9LJ3VTgiMc5Jku8oONqHRYuxUDqjXnpU=
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0801MB15962C98BC3A28AF8E6B5CC084B00@HE1PR0801MB1596.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(70601490899591);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:HE1PR0801MB1596; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0801MB1596; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtIRTFQUjA4MDFNQjE1OTY7MjM6K21ibTVaa0FNc0VraGo0bVpGVnlGbjF0?=
 =?utf-8?B?ODRRYUgrdU5JcmcrMFlRYnYwU05Id2FrWjlPeUlzNlduZnpJbGxvWmEyY0Fl?=
 =?utf-8?B?QTE4c3VDMzBRK1ZwQ3Q1MER3NUNndEZmNDB5cVdRMklOeEd0THpEMTcvaFBM?=
 =?utf-8?B?aFEyWmoxc2puc2QxQ1JyZmI3TmVuc0xvcDhHc2FUZjVkcFJJbXZjUTdzb1Rl?=
 =?utf-8?B?S1hJZHNYUFdUTnJ5eUV2R3E5WERxWkFKa3dRV1Nnc2FJUEhUSzFUNVNGQW1Y?=
 =?utf-8?B?amt1RHhYbEZFTjNsL3ZFd01aR2NSNWNMaVYxeUEzTUdwcUdjOCtiMTV6OEgz?=
 =?utf-8?B?MURrcUlLU2l0c1c5djhQdWtTVUtmbmFTOWN1M0dLUnkzZzRiZGhSWDBpQTJY?=
 =?utf-8?B?cDkvTWdXMVVSeWNORXZoa2ZycmpSeDZZR2xka1QwVHd1UlNTaGtVQ3NJRmlO?=
 =?utf-8?B?WFczUWdUV1oxYmpmazNjSHpMVklJS2ZJV0JKSklJSmFnbXdxYXJYMGtzTEtY?=
 =?utf-8?B?WkpCWWdtZEMvY2wzVlNBM00yR0lITWVsZHNFeUhZWEVLUUxLQjBJYjc3ZndU?=
 =?utf-8?B?bmUvM0FMWEFDQm1lK0pIQWdjeEJva1J3UzVua3FHOHFFNzZOc3F4ZzN5Z1Ri?=
 =?utf-8?B?enpsdFlFZ2h4RjRDK2tsYWxlcGVIbk91NnNxdmFUem5DNkljS1BtZkloOUJu?=
 =?utf-8?B?dDIrVlVqMUpRWkJRMTA3cWpYd3RQTUFPeklpVFU2aUFKNFJoc1dWQjFPMnQy?=
 =?utf-8?B?T2ozcjkxRzlYNFdRS1BGeEUyencwVmpKUVZTSHZtSk5PalJoZ2F4d2V3WDRv?=
 =?utf-8?B?a3Y0NUxtQ3M5ZlcxbjYybFNtUlhVckhldmxiVExmTzNlcmJ1NFZ6MnErOHI0?=
 =?utf-8?B?Z3YrbVVUSzFYMVBhYjF6YWRidC93TEhTRE5ZdmtPTmhaS0RBYlN0bnhWWVhC?=
 =?utf-8?B?ZDJoS3gvZEk1d3ZiblpFejh2QjZ1akl2a21tY2VyQ3l4eEtOUWVXUDhvOTZM?=
 =?utf-8?B?Q1E5bUcvOVpnWnNvZ05GQzRIZlV5Mm1wMlNVQmRZUHpxYmpTaTZVVjRkUGsx?=
 =?utf-8?B?amhTMnZoNFU1RTNtaThwV1pDTEdwSm9uaUN4Y2ZneEdUc2d0V2VWVVRSWnFh?=
 =?utf-8?B?MlR5U3ZaVmZHV2I4VnpTQU15Z1ZOTy8rTk04S2U4T2s4WGZTS25KSDBIUWJJ?=
 =?utf-8?B?djNaZ0NmamlBVlg4QmRDRktEdU9ZdVkvL3RQcnhXZUtuWVBnM2tsQy9uYjhy?=
 =?utf-8?B?V21Qb3d4eHdNdkEwZlBzNkF5V09ERG9MdlhkTzRwc1dSQ2hxZFBKd2QydjZa?=
 =?utf-8?B?T3ZrSUVlK29CQzM4bVkxWEdPVFB0Qzc2WkVGV0hoeUdpNFNVYXpjRWpEeXR1?=
 =?utf-8?B?aUF2dXk0Zy9yMXgyNFlPVStuV3hVT1I2Vzd6TDVTYVVYSm80N1JhZXhrcTVE?=
 =?utf-8?B?citmSjBmKzFGTmdWV2ZGdlFwNXBialZ6RFdKQVFoRVNSQVdiaG9LZFo2WTJ4?=
 =?utf-8?B?YlBwcUVxSjhnRGhhMENuTTIwcTZqZjFsTW9HWU1MYTJIeS9xemo1ZlN2NUJs?=
 =?utf-8?B?V3pIejY5YzRpcVVYZGgxNnYzZWwvRVlXUT09?=
X-Microsoft-Antispam-Message-Info: ECLsOObdenBHK7dUj6a4XRxKmaY9LzvRvs7NfZ4gqRh2k7VEzLNdIv58e5Eo2BzXmzpqQSYMNG6+4lICFdpw2u01l6OMYefm4PWF3KqjufzA5ir85Dzve4/NURP83+xpSKkHH6WWtTehZt6DAoqKdtJD9h8HAHZC368B2SmU7NNt1WTlhax9bL3Ycx0pIT/EsIQf55TQsAc4r5tntw86VAEkmmg2AWMgmGp0G1xuizNe+ytdMfGeLJGK3FenrgNz2o4tTHYMagVHK5MbaiLsBN9BgdX4CUUKS38fFB1L7lOzl/0rssdNyeEDDtqrMBsvlecseDIkXz2ehrAGrV2x+7jB8UOs7uliEaWpYEq0Hlmq0dxmXYTpCLMVGmdGZWQVPmBz8jK2vBkVZgLeXeHKEmqOBaScTKGngKVNeOz5TD0=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1596;
 6:Wcr/elKIPGbz1RXX865rF07YofovOczBSkj47Acy+12caUM77tb+xO7+zv1XKEFQgoDqAS42pyS2Rc2DdwtyH8YfnvlBNqRDKVNfpxBoAZgog4nfs4w9vhhz5p5t8hr8zyn/5x1+tsjCwlFpK0FpbbQwU2I8+Feua3NVM4Hr8ErPvedV7F3igN/q0fpmr77EuRoqvSCPRaK/Jix8yAb1bCy5HReo58umyYW7YU8Y06/D/tyaeCJ/agUbzX2clW+NDXuRgHOSGZH8tYgc+njhS7nFNcpaGJd8G+hjki2Wa6d/j+db6eVTVcFMmmgQbsW1XG1PlFlNAKd462One/1jr7e5y851816VeQHHaXKAah59NCZpKngXMsAfgMATBdADr+QEiblpfGdLo5Xpz6XLfcFFK+To4oHbzjJDL+IiOgFLbNk0wwwCnZnPnKrZIS3Yb0LNjhMRqnpn1l6rAditTX3Sh//kyRc78d6TvO2gJgg0pzaxwN7uap2GK+yhv+rc;
 5:mZ7QvunDG+hUgfDj+I312G9VXL1W1dVqmtA+CGG0cgGeSj5scvdz9haWlqL2m15V+5ae6lyQYPXjI+x6FtvYIxXz5vuv9bEG/EJgeboYHjsjUqfKYbjjqcxz2vH1p3PZbbWbrVWTFSEJNMr4RCF71/ENDmxY3ySmGuci9zX2f28=;
 24:6eGbRfP7II2avJTAWgr0K/iDuZLjVbAPNY+oTEparfNKl53ZODqjj3FG0cDtum7o65uy8C4n1d4SxdyYf8EMObvI1C4HRH74402LfS6USGE=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1596;
 7:+AaYLeNEHyBy9xHSk0uLwZUEYvj9zhoZosizf1tFdgHxT7aQX+NKdFiXzZmc5sBz/4VPTNMev2Z2xaqiOL859CcbufNaY8/Z8WTyMRdeZB2Qwee9p3ZBNFspc+OytmNQUqmyjyh6jF+uStL1ZZ+tbShrPDPUvtglLbwHZg8RQkAUMGxTnbZOtfYCE41ae2J2nao2+IP4Ye95g1DKFHB12NQqCXX/tkowcz2+BZ/hNl0A8D0Vy8OwKGemhfOJ4J/k
X-MS-Office365-Filtering-Correlation-Id: c28832a6-e8c4-462a-d7f1-08d5a363e0d3
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:32:50.9206 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c28832a6-e8c4-462a-d7f1-08d5a363e0d3
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1596
Subject: [Minios-devel] [PATCH v3 02/43] arm32: remove the arm32 specific
 code file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCByZW1vdmVzIHRoZSBhcm0zMiBzcGVjaWZpYyBjb2RlIGZpbGU6CiAgICBhcm0z
Mi5TLCBoeXBlcmNhbGxzMzIuUywgbWluaW9zLWFybTMyLmxkcwoKU2lnbmVkLW9mZi1ieTogSHVh
bmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KLS0tCiBhcmNoL2FybS9hcm0zMi5TICAg
ICAgICAgIHwgMjk0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KIGFyY2gvYXJtL2h5cGVyY2FsbHMzMi5TICAgfCAgNjQgLS0tLS0tLS0tLQogYXJjaC9hcm0v
bWluaW9zLWFybTMyLmxkcyB8ICA4MyAtLS0tLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDQ0
MSBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm0zMi5TCiBkZWxl
dGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vaHlwZXJjYWxsczMyLlMKIGRlbGV0ZSBtb2RlIDEwMDc1
NSBhcmNoL2FybS9taW5pb3MtYXJtMzIubGRzCgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtMzIu
UyBiL2FyY2gvYXJtL2FybTMyLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJjYWNh
MTcuLjAwMDAwMDAKLS0tIGEvYXJjaC9hcm0vYXJtMzIuUworKysgL2Rldi9udWxsCkBAIC0xLDI5
NCArMCwwIEBACi1AIE9mZnNldCBvZiB0aGUga2VybmVsIHdpdGhpbiB0aGUgUkFNLiBUaGlzIGlz
IGEgTGludXgvekltYWdlIGNvbnZlbnRpb24gd2hpY2ggd2UKLUAgcmVseSBvbiBmb3Igbm93Lgot
I2RlZmluZSBaSU1BR0VfS0VSTkVMX09GRlNFVCAweDgwMDAKLQotLnNlY3Rpb24gLnRleHQKLQot
Lmdsb2JsIF9zdGFydAotX3N0YXJ0OgotCUAgekltYWdlIGhlYWRlcgotLnJlcHQgICA4Ci0gICAg
ICAgIG1vdiAgICAgcjAsIHIwCi0uZW5kcgotICAgICAgICBiICAgICAgIHJlc2V0Ci0gICAgICAg
IC53b3JkICAgMHgwMTZmMjgxOCAgICAgIEAgTWFnaWMgbnVtYmVycyB0byBoZWxwIHRoZSBsb2Fk
ZXIKLSAgICAgICAgLndvcmQgICAwCQlAIHpJbWFnZSBzdGFydCBhZGRyZXNzICgwID0gcmVsb2Nh
dGFibGUpCi0gICAgICAgIC53b3JkICAgX2VkYXRhIC0gX3N0YXJ0IEAgekltYWdlIGVuZCBhZGRy
ZXNzIChleGNsdWRlcyBic3Mgc2VjdGlvbikKLQlAIGVuZCBvZiB6SW1hZ2UgaGVhZGVyCi0KLUAg
Q2FsbGVkIGF0IGJvb3QgdGltZS4gU2V0cyB1cCBNTVUsIGV4Y2VwdGlvbiB2ZWN0b3JzIGFuZCBz
dGFjaywgYW5kIHRoZW4gY2FsbHMgQyBhcmNoX2luaXQoKSBmdW5jdGlvbi4KLUAgPT4gcjIgLT4g
RFRCCi1AIDw9IG5ldmVyIHJldHVybnMKLUAgTm90ZTogdGhpcyBib290IGNvZGUgbmVlZHMgdG8g
YmUgd2l0aGluIHRoZSBmaXJzdCAoMU1CIC0gWklNQUdFX0tFUk5FTF9PRkZTRVQpIG9mIF9zdGFy
dC4KLXJlc2V0OgotCUAgUHJvYmxlbTogdGhlIEMgY29kZSB3YW50cyB0byBiZSBhdCBhIGtub3du
IGFkZHJlc3MgKF9zdGFydCksIGJ1dCBYZW4gbWlnaHQKLQlAIGxvYWQgdXMgYW55d2hlcmUuIFdl
IGluaXRpYWxpc2UgdGhlIE1NVSAobWFwcGluZyB2aXJ0dWFsIHRvIHBoeXNpY2FsIEAgYWRkcmVz
c2VzKQotCUAgc28gZXZlcnl0aGluZyBlbmRzIHVwIHdoZXJlIHRoZSBjb2RlIGV4cGVjdHMgaXQg
dG8gYmUuCi0JQAotCUAgV2UgY2FsY3VsYXRlIHRoZSBvZmZldCBiZXR3ZWVuIHdoZXJlIHRoZSBs
aW5rZXIgdGhvdWdodCBfc3RhcnQgd291bGQgYmUgYW5kIHdoZXJlCi0JQCBpdCBhY3R1YWxseSBp
cyBhbmQgaW5pdGlhbGlzZSB0aGUgcGFnZSB0YWJsZXMgdG8gaGF2ZSB0aGF0IG9mZnNldCBmb3Ig
ZXZlcnkgcGFnZS4KLQlACi0JQCBXaGVuIHdlIHR1cm4gb24gdGhlIE1NVSwgd2UncmUgc3RpbGwg
ZXhlY3V0aW5nIGF0IHRoZSBvbGQgYWRkcmVzcy4gV2UgZG9uJ3Qgd2FudAotCUAgdGhlIGNvZGUg
dG8gZGlzYXBwZWFyIGZyb20gdW5kZXIgdXMuIFNvIHdlIGhhdmUgdG8gZG8gdGhlIG1hcHBpbmcg
aW4gc3RhZ2VzOgotCUAKLQlAIDEuIHNldCB1cCBhIG1hcHBpbmcgdG8gb3VyIGN1cnJlbnQgcGFn
ZSBmcm9tIGJvdGggaXRzIGN1cnJlbnQgYW5kIGRlc2lyZWQgYWRkcmVzc2VzCi0JQCAyLiBlbmFi
bGUgdGhlIE1NVQotCUAgMy4ganVtcCB0byB0aGUgbmV3IGFkZHJlc3MKLQlAIDQuIHJlbWFwIGFs
bCB0aGUgb3RoZXIgcGFnZXMgd2l0aCB0aGUgY2FsY3VsYXRlZCBvZmZzZXQKLQotCWFkcglyMSwg
X3N0YXJ0CQlAIHIxID0gcGh5c2ljYWwgYWRkcmVzcyBvZiBfc3RhcnQKLQlsZHIJcjMsID1fc3Rh
cnQJCUAgcjMgPSAoZGVzaXJlZCkgdmlydHVhbCBhZGRyZXNzIG9mIF9zdGFydAotCXN1YiAJcjks
IHIxLCByMwkJQCByOSA9IChwaHlzaWNhbCAtIHZpcnR1YWwpIG9mZnNldAotCi0JbGRyCXI3LCA9
X3BhZ2VfZGlyCQlAIHI3ID0gKGRlc2lyZWQpIHZpcnR1YWwgYWRkciBvZiB0cmFuc2xhdGlvbiB0
YWJsZQotCWFkZAlyMSwgcjcsIHI5CQlAIHIxID0gcGh5c2ljYWwgYWRkciBvZiB0cmFuc2xhdGlv
biB0YWJsZQotCi0JQCBUZWxsIHRoZSBzeXN0ZW0gd2hlcmUgb3VyIHBhZ2UgdGFibGUgaXMgbG9j
YXRlZC4KLQlAIFRoaXMgaXMgdGhlIDE2IEtCIHRvcC1sZXZlbCB0cmFuc2xhdGlvbiB0YWJsZSwg
aW4gd2hpY2gKLQlAIGVhY2ggd29yZCBtYXBzIG9uZSAxTUIgdmlydHVhbCBzZWN0aW9uIHRvIGEg
cGh5c2ljYWwgc2VjdGlvbi4KLQlAIE5vdGU6IFdlIGxlYXZlIFRUQkNSIGFzIDAsIG1lYW5pbmcg
dGhhdCBvbmx5IFRUQlIwIGlzIHVzZWQgYW5kCi0JQCB3ZSB1c2UgdGhlIHNob3J0LWRlc2NyaXB0
b3IgZm9ybWF0ICgzMi1iaXQgcGh5c2ljYWwgYWRkcmVzc2VzKS4KLQlvcnIJcjAsIHIxLCAjMGIw
MDAxMDExCUAgU2hhcmFibGUsIElubmVyL091dGVyIFdyaXRlLUJhY2sgV3JpdGUtQWxsb2NhdGUg
Q2FjaGVhYmxlCi0JbWNyCXAxNSwgMCwgcjAsIGMyLCBjMCwgMAlAIHNldCBUVEJSMAotCi0JQCBT
ZXQgYWNjZXNzIHBlcm1pc3Npb24gZm9yIGRvbWFpbnMuCi0JQCBEb21haW5zIGFyZSBkZXByZWNh
dGVkLCBidXQgd2UgaGF2ZSB0byBjb25maWd1cmUgdGhlbSBhbnl3YXkuCi0JQCBXZSBtYXJrIGV2
ZXJ5IHBhZ2UgYXMgYmVpbmcgZG9tYWluIDAgYW5kIHNldCBkb21haW4gMCB0byAiY2xpZW50IG1v
ZGUiCi0JQCAoY2xpZW50IG1vZGUgPSB1c2UgYWNjZXNzIGZsYWdzIGluIHBhZ2UgdGFibGUpLgot
CW1vdglyMCwgIzEJCQlAIDEgPSBjbGllbnQKLQltY3IJcDE1LCAwLCByMCwgYzMsIGMwLCAwCUAg
REFDUgotCi0JQCBUZW1wbGF0ZSAoZmxhZ3MpIGZvciBhIDEgTUIgcGFnZS10YWJsZSBlbnRyeS4K
LQlAIFRFWFsyOjBdIEMgQiA9IDAwMSAxIDEgKG91dGVyIGFuZCBpbm5lciB3cml0ZS1iYWNrLCB3
cml0ZS1hbGxvY2F0ZSkKLQlsZHIJcjgsID0oMHgyICsgIAkJLyogU2VjdGlvbiBlbnRyeSAqLyBc
Ci0JCSAgICAgIDB4YyArICAJCS8qIEMgQiAqLyBcCi0JCSAgICAgICgzIDw8IDEwKSArIAkvKiBS
ZWFkL3dyaXRlICovIFwKLQkJICAgICAgKDEgPDwgMTIpICsJLyogVEVYICovIFwKLQkJICAgICAg
KDEgPDwgMTYpICsJLyogU2hhcmFibGUgKi8gXAotCQkgICAgICAoMTw8MTkpKQkJLyogTm9uLXNl
Y3VyZSAqLwotCUAgcjggPSB0ZW1wbGF0ZSBwYWdlIHRhYmxlIGVudHJ5Ci0KLQlAIEFkZCBhbiBl
bnRyeSBmb3IgdGhlIGN1cnJlbnQgcGh5c2ljYWwgc2VjdGlvbiwgYXQgdGhlIG9sZCBhbmQgbmV3
Ci0JQCBhZGRyZXNzZXMuIEl0J3MgT0sgaWYgdGhleSdyZSB0aGUgc2FtZS4KLQltb3YJcjAsIHBj
LCBsc3IjMjAKLQltb3YJcjAsIHIwLCBsc2wjMjAJCUAgcjAgPSBwaHlzaWNhbCBhZGRyZXNzIG9m
IHRoaXMgY29kZSdzIHNlY3Rpb24gc3RhcnQKLQlvcnIJcjMsIHIwLCByOAkJQCByMyA9IHRhYmxl
IGVudHJ5IGZvciB0aGlzIHNlY3Rpb24KLQlsZHIJcjQsID1fc3RhcnQJCUAgcjQgPSBkZXNpcmVk
IHZpcnR1YWwgYWRkcmVzcyBvZiB0aGlzIHNlY3Rpb24KLQlzdHIJcjMsIFtyMSwgcjQsIGxzciMx
OF0gCUAgbWFwIGRlc2lyZWQgdmlydHVhbCBzZWN0aW9uIHRvIHRoaXMgY29kZQotCXN0cglyMywg
W3IxLCByMCwgbHNyIzE4XQlAIG1hcCBjdXJyZW50IHNlY3Rpb24gdG8gdGhpcyBjb2RlIHRvbwot
Ci0JQCBJbnZhbGlkYXRlIFRMQgotCWRzYgkJCQlAIENhY2hpbmcgaXMgb2ZmLCBidXQgbXVzdCBz
dGlsbCBwcmV2ZW50IHJlb3JkZXJpbmcKLQltY3IJcDE1LCAwLCByMSwgYzgsIGM3LCAwCUAgVExC
SUFMTAotCi0JQCBFbmFibGUgTU1VIC8gU0NUTFIKLQltcmMJcDE1LCAwLCByMSwgYzEsIGMwLCAw
CUAgU0NUTFIKLQlvcnIJcjEsIHIxLCAjMyA8PCAxMQlAIGVuYWJsZSBpY2FjaGUsIGJyYW5jaCBw
cmVkaWN0aW9uCi0Jb3JyCXIxLCByMSwgIzQgKyAxCQlAIGVuYWJsZSBkY2FjaGUsIE1NVQotCW1j
cglwMTUsIDAsIHIxLCBjMSwgYzAsIDAJQCBTQ1RMUgotCWlzYgotCi0JbGRyCXIxLCA9c3RhZ2Uy
CQlAIFZpcnR1YWwgYWRkcmVzcyBvZiBzdGFnZTIKLQlieAlyMQotCi1AIENhbGxlZCBvbmNlIHRo
ZSBNTVUgaXMgZW5hYmxlZC4gVGhlIGJvb3QgY29kZSBhbmQgdGhlIHBhZ2UgdGFibGUgYXJlIG1h
cHBlZCwKLUAgYnV0IG5vdGhpbmcgZWxzZSBpcyB5ZXQuCi1ACi1AID0+IHIyIC0+IGR0YiAocGh5
c2ljYWwpCi1AICAgIHI3ID0gdmlydHVhbCBhZGRyZXNzIG9mIHBhZ2UgdGFibGUKLUAgICAgcjgg
PSBzZWN0aW9uIGVudHJ5IHRlbXBsYXRlIChmbGFncykKLUAgICAgcjkgPSBkZXNpcmVkIHBoeXNp
Y2FsIC0gdmlydHVhbCBvZmZzZXQKLUAgICAgcGMgLT4gc29tZXdoZXJlIGluIG5ld2x5LW1hcHBl
ZCB2aXJ0dWFsIGNvZGUgc2VjdGlvbgotc3RhZ2UyOgotCUAgSW52YWxpZGF0ZSBUTEIKLQltY3IJ
cDE1LCAwLCByMSwgYzgsIGM3LCAwCUAgVExCSUFMTAotCWlzYgotCi0JQCBUaGUgbmV3IG1hcHBp
bmcgaGFzIG5vdyB0YWtlbiBlZmZlY3Q6Ci0JQCByNyAtPiBwYWdlX2RpcgotCi0JQCBGaWxsIGlu
IHRoZSB3aG9sZSB0b3AtbGV2ZWwgdHJhbnNsYXRpb24gdGFibGUgKGF0IHBhZ2VfZGlyKS4KLQlA
IFBvcHVsYXRlIHRoZSB3aG9sZSBwYWdlZGlyIHdpdGggMU1CIHNlY3Rpb24gZGVzY3JpcHRvcnMu
Ci0KLQltb3YJcjEsIHI3CQkJQCByMSAtPiBmaXJzdCBzZWN0aW9uIGVudHJ5Ci0JYWRkCXIzLCBy
MSwgIzQqNCoxMDI0CUAgbGltaXQgKDQgR0IgYWRkcmVzcyBzcGFjZSwgNCBieXRlIGVudHJpZXMp
Ci0Jb3JyCXIwLCByOCwgcjkJCUAgcjAgPSBlbnRyeSBtYXBwaW5nIHNlY3Rpb24gemVybyB0byBz
dGFydCBvZiBwaHlzaWNhbCBSQU0KLTE6Ci0Jc3RyCXIwLCBbcjFdLCM0CQlAIHdyaXRlIHRoZSBz
ZWN0aW9uIGVudHJ5Ci0JYWRkCXIwLCByMCwgIzEgPDwgMjAgCUAgbmV4dCBwaHlzaWNhbCBwYWdl
ICh3cmFwcykKLQljbXAJcjEsIHIzCi0JYm5lCTFiCi0KLQlAIEludmFsaWRhdGUgVExCCi0JZHNi
Ci0JbWNyCXAxNSwgMCwgcjEsIGM4LCBjNywgMAlAIFRMQklBTEwKLQlpc2IKLQotCUAgU2V0IFZC
QVIgLT4gZXhjZXB0aW9uX3ZlY3Rvcl90YWJsZQotCUAgU0NUTFIuViA9IDAKLQlhZHIJcjAsIGV4
Y2VwdGlvbl92ZWN0b3JfdGFibGUKLQltY3IJcDE1LCAwLCByMCwgYzEyLCBjMCwgMAotCi0JQCBF
bmFibGUgaGFyZHdhcmUgZmxvYXRpbmcgcG9pbnQ6Ci0JQCAxLiBBY2Nlc3MgdG8gQ1AxMCBhbmQg
Q1AxMSBtdXN0IGJlIGVuYWJsZWQgaW4gdGhlIENvcHJvY2Vzc29yIEFjY2VzcwotCUAgICAgQ29u
dHJvbCBSZWdpc3RlciAoQ1AxNS5DQUNSKToKLQltcmMJcDE1LCAwLCByMSwgYzEsIGMwLCAyCQlA
IENBQ1IKLQlvcnIJcjEsIHIxLCAjKDMgPDwgMjApICsgKDMgPDwgMjIpCUAgZnVsbCBhY2Nlc3Mg
Zm9yIENQMTAgJiBDUDExCi0JbWNyCXAxNSwgMCwgcjEsIGMxLCBjMCwgMgotCUAgMi4gVGhlIEVO
IGJpdCBpbiB0aGUgRlBFWEMgcmVnaXN0ZXIgbXVzdCBiZSBzZXQ6Ci0Jdm1ycwlyMCwgRlBFWEMK
LQlvcnIJcjAsIHIwLCAjMTw8MzAJCUAgRU4gKGVuYWJsZSkKLQl2bXNyCUZQRVhDLCByMAotCi0J
QCBJbml0aWFsaXNlIDE2IEtCIHN0YWNrCi0JbGRyCXNwLCA9X2Jvb3Rfc3RhY2tfZW5kCi0KLQlz
dWIJcjAsIHIyLCByOQkJQCByMCAtPiBkZXZpY2UgdHJlZSAodmlydHVhbCBhZGRyZXNzKQotCW1v
dglyMSwgcjkJCQlAIHIxID0gcGh5c2ljYWxfYWRkcmVzc19vZmZzZXQKLQotCWIJYXJjaF9pbml0
Ci0KLS5wdXNoc2VjdGlvbiAuYnNzCi1AIE5vdGU6IGNhbGxpbmcgYXJjaF9pbml0IHplcm9lcyBv
dXQgdGhpcyByZWdpb24uCi0uYWxpZ24gMTIKLS5nbG9ibCBzaGFyZWRfaW5mbwotc2hhcmVkX2lu
Zm86Ci0JLmZpbGwgKDEwMjQpLCA0LCAweDAKLQotLmFsaWduIDMKLS5nbG9ibCBpcnFzdGFjawot
Lmdsb2JsIGlycXN0YWNrX2VuZAotaXJxc3RhY2s6Ci0JLmZpbGwgKDEwMjQpLCA0LCAweDAKLWly
cXN0YWNrX2VuZDoKLQotZmF1bHRfZHVtcDoKLQkuZmlsbCAxOCwgNCwgMHgwCQlAIE9uIGZhdWx0
LCB3ZSBzYXZlIHRoZSByZWdpc3RlcnMgKyBDUFNSICsgaGFuZGxlciBhZGRyZXNzCi0KLS5wb3Bz
ZWN0aW9uCi0KLWZhdWx0OgotCWNwc2lkCWFpZgkJCUAgRGlzYWJsZSBpbnRlcnJ1cHRzCi0KLQls
ZHIJcjEzLCA9ZmF1bHRfZHVtcAotCXN0bWlhCXIxMywge3IwLXIxMn0JCUAgRHVtcCB0aGUgbm9u
LWJhbmtlZCByZWdpc3RlcnMgZGlyZWN0bHkgKHdlbGwsIHVubGVzcyBmcm9tIEZJUSBtb2RlKQot
CXN0cglyMTQsIFtyMTMsICMxNSA8PCAyXQlAIE91ciByMTQgaXMgdGhlIGZhdWx0aW5nIHIxNQot
CW1vdglyMCwgcjEzCi0KLQlAIFNhdmUgdGhlIGNhbGxlcidzIENQU1IgKG91ciBTUFNSKSB0b28u
Ci0JbXJzCXIxLCBTUFNSCi0Jc3RyCXIxLCBbcjEzLCAjMTYgPDwgMl0KLQotCUAgU3dpdGNoIHRv
IHRoZSBtb2RlIHdlIGNhbWUgZnJvbSB0byBnZXQgcjEzIGFuZCByMTQuCi0JQCBJZiBjb21pbmcg
ZnJvbSB1c2VyIG1vZGUsIHVzZSBTeXN0ZW0gbW9kZSBpbnN0ZWFkIHNvIHdlJ3JlIHN0aWxsCi0J
QCBwcml2aWxlZ2VkLgotCWFuZAlyMSwgcjEsICMweDFmCQlAIHIxID0gU1BTUiBtb2RlCi0JY21w
CXIxLCAjMHgxMAkJQCBJZiBmcm9tIFVzZXIgbW9kZQotCW1vdmVxCXIxLCAjMHgxZgkJQCBUaGVu
IHVzZSBTeXN0ZW0gbW9kZSBpbnN0ZWFkCi0KLQltcnMJcjMsIENQU1IJCUAgcjMgPSBvdXIgQ1BT
UgotCWJpYwlyMiwgcjMsICMweDFmCi0Jb3JyCXIyLCByMiwgcjEKLQltc3IJQ1BTUiwgcjIJCUAg
Q2hhbmdlIHRvIG1vZGUgcjEKLQotCUAgU2F2ZSBvbGQgbW9kZSdzIHIxMywgcjE0Ci0Jc3RyCXIx
MywgW3IwLCAjMTMgPDwgMl0KLQlzdHIJcjE0LCBbcjAsICMxNCA8PCAyXQotCi0JbXNyCUNQU1Is
IHIzCQlAIEJhY2sgdG8gZmF1bHQgbW9kZQotCi0JbGRyCXIxLCBbcjAsICMxNyA8PCAyXQotCXN1
YglyMSwgcjEsICMxMgkJQCBGaXggdG8gcG9pbnQgYXQgc3RhcnQgb2YgaGFuZGxlcgotCXN0cgly
MSwgW3IwLCAjMTcgPDwgMl0KLQotCUAgQ2FsbCBDIGNvZGUgdG8gZm9ybWF0IHRoZSByZWdpc3Rl
ciBkdW1wLgotCUAgQ2xvYmJlcnMgdGhlIHN0YWNrLCBidXQgd2UncmUgbm90IGdvaW5nIHRvIHJl
dHVybiBhbnl3YXkuCi0JbGRyCXNwLCA9X2Jvb3Rfc3RhY2tfZW5kCi0JYmwJZHVtcF9yZWdpc3Rl
cnMKLQliCWRvX2V4aXQKLQotQCBXZSB3YW50IHRvIHN0b3JlIGEgdW5pcXVlIHZhbHVlIHRvIGlk
ZW50aWZ5IHRoaXMgaGFuZGxlciwgd2l0aG91dCBjb3JydXB0aW5nCi1AIGFueSBvZiB0aGUgcmVn
aXN0ZXJzLiBTbywgd2Ugc3RvcmUgcjE1ICh3aGljaCB3aWxsIHBvaW50IGp1c3QgYWZ0ZXIgdGhl
IGJyYW5jaCkuCi1AIExhdGVyLCB3ZSBzdWJ0cmFjdCAxMiBzbyB0aGUgdXNlciBnZXRzIHBvaW50
ZWQgYXQgdGhlIHN0YXJ0IG9mIHRoZSBleGNlcHRpb24KLUAgaGFuZGxlci4KLSNkZWZpbmUgRkFV
TFQobmFtZSkJCQlcCi0uZ2xvYmwgZmF1bHRfIyNuYW1lOwkJCVwKLWZhdWx0XyMjbmFtZToJCQkJ
XAotCWxkcglyMTMsID1mYXVsdF9kdW1wOwlcCi0Jc3RyCXIxNSwgW3IxMywgIzE3IDw8IDJdOwlc
Ci0JYglmYXVsdAotCi1GQVVMVChyZXNldCkKLUZBVUxUKHVuZGVmaW5lZF9pbnN0cnVjdGlvbikK
LUZBVUxUKHN2YykKLUZBVUxUKHByZWZldGNoX2NhbGwpCi1GQVVMVChwcmVmZXRjaF9hYm9ydCkK
LUZBVUxUKGRhdGFfYWJvcnQpCi0KLUAgZXhjZXB0aW9uIGJhc2UgYWRkcmVzcwotLmFsaWduIDUK
LS5nbG9ibCBleGNlcHRpb25fdmVjdG9yX3RhYmxlCi1AIE5vdGU6IHJlbWVtYmVyIHRvIGNhbGwg
Q0xSRVggaWYgcmV0dXJuaW5nIGZyb20gYW4gZXhjZXB0aW9uOgotQCAiVGhlIGFyY2hpdGVjdHVy
ZSBlbmFibGVzIHRoZSBsb2NhbCBtb25pdG9yIHRvIHRyZWF0IGFueSBleGNsdXNpdmUgc3RvcmUg
YXMKLUAgIG1hdGNoaW5nIGEgcHJldmlvdXMgTERSRVggYWRkcmVzcy4gRm9yIHRoaXMgcmVhc29u
LCB1c2Ugb2YgdGhlIENMUkVYCi1AICBpbnN0cnVjdGlvbiB0byBjbGVhciBhbiBleGlzdGluZyB0
YWcgaXMgcmVxdWlyZWQgb24gY29udGV4dCBzd2l0Y2hlcy4iCi1AIC0tIEFSTSBDb3J0ZXgtQSBT
ZXJpZXMgUHJvZ3JhbW1lcuKAmXMgR3VpZGUgKFZlcnNpb246IDQuMCkKLWV4Y2VwdGlvbl92ZWN0
b3JfdGFibGU6Ci0JYglmYXVsdF9yZXNldAotCWIJZmF1bHRfdW5kZWZpbmVkX2luc3RydWN0aW9u
Ci0JYglmYXVsdF9zdmMKLQliCWZhdWx0X3ByZWZldGNoX2NhbGwKLQliCWZhdWx0X3ByZWZldGNo
X2Fib3J0Ci0JYglmYXVsdF9kYXRhX2Fib3J0Ci0JYglpcnFfaGFuZGxlciBAIElSUQotCS53b3Jk
IDB4ZTdmMDAwZjAgICAgQCBhYm9ydCBvbiBGSVEKLQotQCBDYWxsIGZhdWx0X3VuZGVmaW5lZF9p
bnN0cnVjdGlvbiBpbiAiVW5kZWZpbmVkIG1vZGUiCi1idWc6Ci0JLndvcmQJMHhlN2YwMDBmMCAg
ICAJQCB1bmQvdWRmIC0gYSAiUGVybWFuZW50bHkgVW5kZWZpbmVkIiBpbnN0cnVjdGlvbgotCi1p
cnFfaGFuZGxlcjoKLQlsZHIJc3AsID1pcnFzdGFja19lbmQKLQlwdXNoCXtyMCAtIHIxMiwgcjE0
fQotCi0JbGRyCXIwLCBJUlFfaGFuZGxlcgotCWNtcAlyMCwgIzAKLQliZXEJYnVnCi0JYmx4CXIw
CQlAIGNhbGwgaGFuZGxlcgotCi0JQCBSZXR1cm4gZnJvbSBJUlEKLQlwb3AJe3IwIC0gcjEyLCBy
MTR9Ci0JY2xyZXgKLQlzdWJzCXBjLCBsciwgIzQKLQotLmdsb2JsIElSUV9oYW5kbGVyCi1JUlFf
aGFuZGxlcjoKLQkubG9uZwkweDAKLQotCi0uZ2xvYmwgX19hcmNoX3N3aXRjaF90aHJlYWRzCi1A
ID0+IHIwID0gJnByZXYtPnNwCi1AICAgIHIxID0gJm5leHQtPnNwCi1AIDw9IHJldHVybnMgdG8g
bmV4dCB0aHJlYWQncyBzYXZlZCByZXR1cm4gYWRkcmVzcwotX19hcmNoX3N3aXRjaF90aHJlYWRz
OgotCXB1c2gJe3I0LXIxMX0JQCBTdG9yZSBjYWxsZWUtc2F2ZWQgcmVnaXN0ZXJzIHRvIG9sZCB0
aHJlYWQncyBzdGFjawotCXN0bWlhCXIwLCB7c3AsIGxyfQlAIFN0b3JlIGN1cnJlbnQgc3AgYW5k
IGlwIHRvIHByZXYncyBzdHJ1Y3QgdGhyZWFkCi0KLQlsZG1pYQlyMSwge3NwLCBscn0JQCBMb2Fk
IG5ldyBzcCwgaXAgZnJvbSBuZXh0J3Mgc3RydWN0IHRocmVhZAotCXBvcAl7cjQtcjExfQlAIExv
YWQgY2FsbGVlLXNhdmVkIHJlZ2lzdGVycyBmcm9tIG5ldyB0aHJlYWQncyBzdGFjawotCi0JYngJ
bHIKLQotQCBUaGlzIGlzIGNhbGxlZCBpZiB5b3UgdHJ5IHRvIGRpdmlkZSBieSB6ZXJvLiBGb3Ig
bm93LCB3ZSBtYWtlIGEgc3VwZXJ2aXNvciBjYWxsLAotQCB3aGljaCB3aWxsIG1ha2UgdXMgaGFs
dC4KLS5nbG9ibCByYWlzZQotcmFpc2U6Ci0Jc3ZjCTAKLQotLmdsb2JsIGFybV9zdGFydF90aHJl
YWQKLWFybV9zdGFydF90aHJlYWQ6Ci0JcG9wCXtyMCwgcjF9Ci0JQCByMCA9IHVzZXIgZGF0YQot
CUAgcjEgLT4gdGhyZWFkJ3MgbWFpbiBmdW5jdGlvbgotCWxkcglsciwgPWV4aXRfdGhyZWFkCi0J
YngJcjEKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2h5cGVyY2FsbHMzMi5TIGIvYXJjaC9hcm0vaHlw
ZXJjYWxsczMyLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFmOGUxNzUuLjAwMDAw
MDAKLS0tIGEvYXJjaC9hcm0vaHlwZXJjYWxsczMyLlMKKysrIC9kZXYvbnVsbApAQCAtMSw2NCAr
MCwwIEBACi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gKiBoeXBlcmNhbGwuUwotICoKLSAqIFhl
biBoeXBlcmNhbGwgd3JhcHBlcnMKLSAqCi0gKiBTdGVmYW5vIFN0YWJlbGxpbmkgPHN0ZWZhbm8u
c3RhYmVsbGluaUBldS5jaXRyaXguY29tPiwgQ2l0cml4LCAyMDEyCi0gKgotICogVGhpcyBwcm9n
cmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgotICog
bW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu
c2UgdmVyc2lvbiAyCi0gKiBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh
dGlvbjsgb3IsIHdoZW4gZGlzdHJpYnV0ZWQKLSAqIHNlcGFyYXRlbHkgZnJvbSB0aGUgTGludXgg
a2VybmVsIG9yIGluY29ycG9yYXRlZCBpbnRvIG90aGVyCi0gKiBzb2Z0d2FyZSBwYWNrYWdlcywg
c3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGxpY2Vuc2U6Ci0gKgotICogUGVybWlzc2lvbiBpcyBo
ZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEg
Y29weQotICogb2YgdGhpcyBzb3VyY2UgZmlsZSAodGhlICJTb2Z0d2FyZSIpLCB0byBkZWFsIGlu
IHRoZSBTb2Z0d2FyZSB3aXRob3V0Ci0gKiByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQg
bGltaXRhdGlvbiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LAotICogbWVyZ2UsIHB1
Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUg
U29mdHdhcmUsCi0gKiBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUg
aXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvCi0gKiB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnM6Ci0gKgotICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlz
c2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KLSAqIGFsbCBjb3BpZXMgb3Igc3Vic3Rh
bnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgotICoKLSAqIFRIRSBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9S
Ci0gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSwKLSAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQVVUSE9SUyBP
UiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBP
VEhFUgotICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9S
VCBPUiBPVEhFUldJU0UsIEFSSVNJTkcKLSAqIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9O
IFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MKLSAqIElOIFRI
RSBTT0ZUV0FSRS4KLSAqLwotCi0jaW5jbHVkZSA8eGVuL3hlbi5oPgotCi0jZGVmaW5lIF9fSFZD
KGltbTE2KSAubG9uZyAoKDB4RTE0MDAwNzAgfCAoKChpbW0xNikgJiAweEZGRjApIDw8IDQpIHwg
KChpbW0xNikgJiAweDAwMEYpKSAmIDB4RkZGRkZGRkYpCi0KLSNkZWZpbmUgWEVOX0lNTSAweEVB
MQotCi0jZGVmaW5lIEhZUEVSQ0FMTF9TSU1QTEUoaHlwZXJjYWxsKQkJXAotLmdsb2JsIEhZUEVS
VklTT1JfIyNoeXBlcmNhbGw7CQkJXAotLmFsaWduIDQsMHg5MDsJCQkJCVwKLUhZUEVSVklTT1Jf
IyNoeXBlcmNhbGw6CQkJCVwKLSAgICAgICAgbW92IHIxMiwgI19fSFlQRVJWSVNPUl8jI2h5cGVy
Y2FsbDsJXAotICAgICAgICBfX0hWQyhYRU5fSU1NKTsJCQkJXAotICAgICAgICBtb3YgcGMsIGxy
OwotCi0jZGVmaW5lIF9oeXBlcmNhbGwwIEhZUEVSQ0FMTF9TSU1QTEUKLSNkZWZpbmUgX2h5cGVy
Y2FsbDEgSFlQRVJDQUxMX1NJTVBMRQotI2RlZmluZSBfaHlwZXJjYWxsMiBIWVBFUkNBTExfU0lN
UExFCi0jZGVmaW5lIF9oeXBlcmNhbGwzIEhZUEVSQ0FMTF9TSU1QTEUKLSNkZWZpbmUgX2h5cGVy
Y2FsbDQgSFlQRVJDQUxMX1NJTVBMRQotCi1faHlwZXJjYWxsMihzY2hlZF9vcCk7Ci1faHlwZXJj
YWxsMihtZW1vcnlfb3ApOwotX2h5cGVyY2FsbDIoZXZlbnRfY2hhbm5lbF9vcCk7Ci1faHlwZXJj
YWxsMih4ZW5fdmVyc2lvbik7Ci1faHlwZXJjYWxsMyhjb25zb2xlX2lvKTsKLV9oeXBlcmNhbGwx
KHBoeXNkZXZfb3ApOwotX2h5cGVyY2FsbDMoZ3JhbnRfdGFibGVfb3ApOwotX2h5cGVyY2FsbDMo
dmNwdV9vcCk7Ci1faHlwZXJjYWxsMShzeXNjdGwpOwotX2h5cGVyY2FsbDEoZG9tY3RsKTsKLV9o
eXBlcmNhbGwyKGh2bV9vcCk7Ci1faHlwZXJjYWxsMSh4c21fb3ApOwpkaWZmIC0tZ2l0IGEvYXJj
aC9hcm0vbWluaW9zLWFybTMyLmxkcyBiL2FyY2gvYXJtL21pbmlvcy1hcm0zMi5sZHMKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDk2MjcxNjIuLjAwMDAwMDAKLS0tIGEvYXJjaC9hcm0v
bWluaW9zLWFybTMyLmxkcworKysgL2Rldi9udWxsCkBAIC0xLDgzICswLDAgQEAKLU9VVFBVVF9B
UkNIKGFybSkKLUVOVFJZKF9zdGFydCkKLVNFQ1RJT05TCi17Ci0gIC8qIE5vdGU6IHdlIGN1cnJl
bnRseSBhc3N1bWUgdGhhdCBYZW4gd2lsbCBsb2FkIHRoZSBrZXJuZWwgaW1hZ2UKLSAgICogYXQg
c3RhcnQtb2YtUkFNICsgMHg4MDAwLiBXZSB1c2UgdGhpcyBpbml0aWFsIDMyIEtCIGZvciB0aGUg
c3RhY2sKLSAgICogYW5kIHRyYW5zbGF0aW9uIHRhYmxlcy4KLSAgICovCi0gIF9ib290X3N0YWNr
IAkgPSAweDQwMDAwMDsJLyogMTYgS0IgYm9vdCBzdGFjayAqLwotICBfYm9vdF9zdGFja19lbmQg
PSAweDQwNDAwMDsKLSAgX3BhZ2VfZGlyICAgICAgPSAweDQwNDAwMDsJLyogMTYgS0IgdHJhbnNs
YXRpb24gdGFibGUgKi8KLSAgLgkJID0gMHg0MDgwMDA7Ci0gIF90ZXh0ID0gLjsJCQkvKiBUZXh0
IGFuZCByZWFkLW9ubHkgZGF0YSAqLwotICAudGV4dCA6IHsKLQkqKC50ZXh0KQotCSooLmdudS53
YXJuaW5nKQotCX0gPSAweDkwOTAKLQotICBfZXRleHQgPSAuOwkJCS8qIEVuZCBvZiB0ZXh0IHNl
Y3Rpb24gKi8KLQotICAucm9kYXRhIDogeyAqKC5yb2RhdGEpICooLnJvZGF0YS4qKSB9Ci0gIC4g
PSBBTElHTig0MDk2KTsKLSAgX2Vyb2RhdGEgPSAuOwotCi0gIC8qIG5ld2xpYiBpbml0aWFsaXph
dGlvbiBmdW5jdGlvbnMgKi8KLSAgLiA9IEFMSUdOKDMyIC8gOCk7Ci0gIFBST1ZJREUgKF9fcHJl
aW5pdF9hcnJheV9zdGFydCA9IC4pOwotICAucHJlaW5pdF9hcnJheSAgICAgOiB7ICooLnByZWlu
aXRfYXJyYXkpIH0KLSAgUFJPVklERSAoX19wcmVpbml0X2FycmF5X2VuZCA9IC4pOwotICBQUk9W
SURFIChfX2luaXRfYXJyYXlfc3RhcnQgPSAuKTsKLSAgLmluaXRfYXJyYXkgICAgIDogeyAqKC5p
bml0X2FycmF5KSB9Ci0gIFBST1ZJREUgKF9faW5pdF9hcnJheV9lbmQgPSAuKTsKLSAgUFJPVklE
RSAoX19maW5pX2FycmF5X3N0YXJ0ID0gLik7Ci0gIC5maW5pX2FycmF5ICAgICA6IHsgKiguZmlu
aV9hcnJheSkgfQotICBQUk9WSURFIChfX2ZpbmlfYXJyYXlfZW5kID0gLik7Ci0KLSAgLmN0b3Jz
IDogewotICAgICAgICBfX0NUT1JfTElTVF9fID0gLjsKLSAgICAgICAgKiguY3RvcnMpCi0JQ09O
U1RSVUNUT1JTCi0gICAgICAgIExPTkcoMCkKLSAgICAgICAgX19DVE9SX0VORF9fID0gLjsKLSAg
ICAgICAgfQotCi0gIC5kdG9ycyA6IHsKLSAgICAgICAgX19EVE9SX0xJU1RfXyA9IC47Ci0gICAg
ICAgICooLmR0b3JzKQotICAgICAgICBMT05HKDApCi0gICAgICAgIF9fRFRPUl9FTkRfXyA9IC47
Ci0gICAgICAgIH0KLQotICAuZGF0YSA6IHsJCQkvKiBEYXRhICovCi0JKiguZGF0YSkKLQl9Ci0K
LSAgLyogTm90ZTogbGlua2VyIHdpbGwgaW5zZXJ0IGFueSBleHRyYSBzZWN0aW9ucyBoZXJlLCBq
dXN0IGJlZm9yZSAuYnNzICovCi0KLSAgLmJzcyA6IHsKLQlfZWRhdGEgPSAuOwkJCS8qIEVuZCBv
ZiBkYXRhIGluY2x1ZGVkIGluIGltYWdlICovCi0JLyogTm90aGluZyBhZnRlciBoZXJlIGlzIGlu
Y2x1ZGVkIGluIHRoZSB6SW1hZ2UncyBzaXplICovCi0KLQlfX2Jzc19zdGFydCA9IC47Ci0JKigu
YnNzKQotICAgICAgICAqKC5hcHAuYnNzKQotCX0KLSAgX2VuZCA9IC4gOwotCi0gIC8qIFNlY3Rp
b25zIHRvIGJlIGRpc2NhcmRlZCAqLwotICAvRElTQ0FSRC8gOiB7Ci0JKigudGV4dC5leGl0KQot
CSooLmRhdGEuZXhpdCkKLQkqKC5leGl0Y2FsbC5leGl0KQotCX0KLQotICAvKiBTdGFicyBkZWJ1
Z2dpbmcgc2VjdGlvbnMuICAqLwotICAuc3RhYiAwIDogeyAqKC5zdGFiKSB9Ci0gIC5zdGFic3Ry
IDAgOiB7ICooLnN0YWJzdHIpIH0KLSAgLnN0YWIuZXhjbCAwIDogeyAqKC5zdGFiLmV4Y2wpIH0K
LSAgLnN0YWIuZXhjbHN0ciAwIDogeyAqKC5zdGFiLmV4Y2xzdHIpIH0KLSAgLnN0YWIuaW5kZXgg
MCA6IHsgKiguc3RhYi5pbmRleCkgfQotICAuc3RhYi5pbmRleHN0ciAwIDogeyAqKC5zdGFiLmlu
ZGV4c3RyKSB9Ci0gIC5jb21tZW50IDAgOiB7ICooLmNvbW1lbnQpIH0KLX0KLS0gCjIuNy40CgoK
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:09 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhN-0002xN-Qt; Mon, 16 Apr 2018 06:33:09 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhM-0002ww-Eb
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:08 +0000
X-Inumbo-ID: e40fd4b4-413f-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::622])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id e40fd4b4-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:10 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=f4MRDpJsCuGXpQ90miAubOfnf4rCCsxFrJWgXVFINsA=;
 b=JEiF9POPRqeVZDz8DXb9zBK8R1DbIQ2yQAH5m7Dg43Pcpn0mDZLu+QpvkhAgw7LxIKepZ3FSMle0tytf04Qm+UO/aRC39RKXI/T6ZryL5BVu6GA5qPhJ/KLwhTgbHqSiwMeJhN9ijmkn42P8lmeA4+lm2rl/P5GjCTBvr5V34ig=
Received: from VI1PR08CA0237.eurprd08.prod.outlook.com (2603:10a6:802:15::46)
 by VI1PR0801MB1600.eurprd08.prod.outlook.com (2603:10a6:800:19::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Mon, 16
 Apr 2018 06:32:59 +0000
Received: from VE1EUR03FT030.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::207) by VI1PR08CA0237.outlook.office365.com
 (2603:10a6:802:15::46) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:32:59 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT030.mail.protection.outlook.com (10.152.18.66) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:32:58 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:32:57 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:45 +0000
Message-ID: <1523860343-16382-6-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(346002)(376002)(39850400004)(396003)(2980300002)(438002)(189003)(199004)(336012)(26826003)(72206003)(39060400002)(47776003)(104016004)(5660300001)(446003)(2616005)(426003)(36756003)(11346002)(246002)(26005)(77096007)(476003)(48376002)(54906003)(16586007)(50226002)(316002)(126002)(486006)(50466002)(6666003)(6916009)(106466001)(186003)(8676002)(8936002)(305945005)(2906002)(86362001)(2351001)(356003)(76176011)(59450400001)(8666007)(478600001)(7696005)(51416003)(106002)(4326008);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1600; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT030;
 1:ooWs00QE5OSJISHgepAPmVFGidpjhcLIWTxjFLFgTeSW/mbs5tpZGY80JmAmv6KpEDaZ+MYngakMVJ/nC+s3o7IgUtDVvTyczhmMSS8XaPV7I5KcWjY0J3osCaCi59LC
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0801MB1600; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 3:TOrcw6GfCeymWU/f5gPGsw4cF/DwFuk6vky7i+gCILLUPW1PrmHdKq6Ol/v841GGT/xo4bLX57gAUaSHzEuBR0ejvbeetD9rrBVXZpXY6A100zVst4UN8uWPF/Le8RGJzJ+aYKwI2irpajkKqTQc9CkUSMIy8IZclCXQzYp3txeXK1GHm3sPTQ/Yd02kM2IEily4MckyRFI4vLlS/NrugwVNFNPb8PxzPJAjphBHGRhUDRtQ6dGU8iWsZ3vRg3j/4ZvRihXfLKFJEz/s9FmNFKf1nvb8Ve4icoxtQr3WmU8c/miSHdUhsrJPDn/KLIPlThcHntXfDfnqO5pYiaWakRQB8sUCu2Ei0STVj8YCRjU=;
 25:VUi5vR3fD9Q+Pu9bKWz9DT1x/kSSyQJVv+rRL11E53oTFZ5Jx7t30O4zeIz6oxv7Au0OVbxJxa4+JUSpVxnItWVp+cEeADqOK1oEHLNnLAo9bjQ9bIh/QS19Ibn5VDbKGtreTNFX5T2916jXPh6FdR6l6odU3o0xGPcmmE3OM2iMR0V0BV90gq6cE/LwIGxcL8ecuqOFrC/kOPaWuyrl7kd+D+TQiOJcdjiyxLNXSygN9T4B9rj3bf1/Qq8PpHGFB7GAok9A2Upf4SnhAHj5UR6ZvTIixTvC/U3kAQ6+rxrGUOgopQPvaZYsiMpidkZqHJg1tR3FW+Qp6iuqB+XZgg==
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1600:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 31:rmN5mailNK0tMwwwjES+JQE/NymEVVn+X8oUTbNtJ/4oyMB1HOXx/XI/mCoEo4mjoJ2MCUDosVCIcBzEsvZGghlCJn3o63RQh2E+v/QnHu8/A9Ya+k7ltTpp1fEZD2vhhZ/4XI7GXcS38FTeszWtD1KMq2dxyBZHeu1Xj5Lb5ANlQJOzRSd8TmkaxpoiAlzC0vXKKE5rU8Ux0dQ4tURsSOPcAU/6MEdw+H/ZsX6oqkg=;
 20:94gYYSguC1FtjTZUwSc/8UscoT5TWUjrdHPPbdRzTDaC/FADrtUexIU4F6rOopXi3lx+h0PZSojodfdk8XhJsApIsCH9JskxDFpDgK2oLHTtCUfCqX4IOrt09PSvmOLYa8MLw7OuGwEVyHPi8AvPD1dYPs7i6DvvnKLNdBAgjqhR9fWrf3+4TQvuLs8NqbTU8yMc5onwXyuUjUNCdrwAOBBoQBQ97nWePTfuXV7OHBxbPmCWFmflfC/4atPIU7FD;
 4:9HdEVNFximhycCLC5viB6o3OqEtThfnGzONj51mL+Q6UvXtTsoVWbYetCzcQzay+5CU740UoB3u0YNamlzN4eK8U68Gmx9KL1yMsdnPrH43ApFlOi8h/NMK5oVkEb7xNhBNVEXEAzWZaOGVc+yrp7Doa7u0SM8ZD0qXiCm9zfdTXgvVfHf+v5XkQzbwptLDiNYe7CSEuaJwbGiEUwzpN8e/mbnjCjKJobngBy7rM5epVNwfeJKUgBMQH/LFNwrrAspq0WB8ahXd83NZct5Q5tN3IuLrWME2x+RUrUUr1UFqFDnqZylzxq/xdjWJFfiz0
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0801MB1600DD6D750CD440C1B934BF84B00@VI1PR0801MB1600.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(3002001)(10201501046)(6055026)(6041310)(20161123558120)(20161123560045)(20161123564045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:VI1PR0801MB1600; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0801MB1600; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1600;
 23:BkTNAQSCH068rzbIjCIQZPsg6y/Tj3jOGYJgQgK?=
 =?us-ascii?Q?XjP7v7HpqSOpf7h/bBcIEYy+irINsGoaLui6ugsxb6XF28chOHoi8uwPYiRZ?=
 =?us-ascii?Q?nywk97biwaRWvnP+n/NFI9I/rNAMnj6DihzZDXo+bApjGjHWvgCqYeUeE+E3?=
 =?us-ascii?Q?bPBad9X+/jpqIA3chh2OYKiTt5ajheCMwQwoXUE+r1IW3z8D4N0CuhB/PMzp?=
 =?us-ascii?Q?IFj1XTzsp+N25xEUBHx0JaNfOty+ANv6Wlf9O0opHgNASUVUzfH+9z4sX9Tz?=
 =?us-ascii?Q?fXYOp7v87h4zsFPjTQsN2MvrbybvSQXFUq83XIAA786WutDlGFDK0V1qFJGC?=
 =?us-ascii?Q?kHDg9j06YwnhPAlLdMpy/404dNQDI5SGi2HUk5VL2DE8NOr1C7+3fadtNpJe?=
 =?us-ascii?Q?b3wBZvG5uh1arIMyJe1aUMx+2lkb43GH58/4yh/Qh53TiN9enVQYEJae7H+5?=
 =?us-ascii?Q?UAM6rpwOsxO8rD7gtwcIiWv8vjPpRQxXkJTEuqY5HkWcbxyPZOiFILHXP+nt?=
 =?us-ascii?Q?GgG9zJZ4AuhkV4txfl8b7v9hDY/NZ2An8GrNZd3mCZRMXfQ6coFlMDeFJV0G?=
 =?us-ascii?Q?HArk0qJe3KIOSwdo+QrIwiEEZMHd4NBMVg1gpP4dVEmc1IIyqwiebmOkjT+R?=
 =?us-ascii?Q?uTf1xEqRj2B921osNrsuKpCTeufexjU8MDcfT9Xl0rAKubqLXPepXk/L6RR8?=
 =?us-ascii?Q?wBOvnfqPdIK6IRYgIAAWqpiehDHZa/HWnhIeiRmSwVPaNws22HHQf3LSi5+u?=
 =?us-ascii?Q?l6wBbI+ZIKuSe/CyQCdDSDP9gR4Oyb2kfbLKQH2QpRPqZi5Qg7wJp0NC13S6?=
 =?us-ascii?Q?8LfpqYd5wKUemgNWuSYqBLZe8GBt3yOIJB8VmY1K3nTBGj2nadojTWRLi2ve?=
 =?us-ascii?Q?ZWERldY/b/4OaijDIHHq69rV0a2JrombXgKA2ADDmAju15sfWXNN7e9iBByz?=
 =?us-ascii?Q?uz8i/v6bTfpBx7dvEBGvF4IPGGucFa/GkJRSqLmz5myl5qHLNYiVb6ubkMgc?=
 =?us-ascii?Q?AMaOcgiBjPxN6qTJvCfltClI26f6QDWvV3ow/ZW6/8vcNkPBkmtVekOW6/cf?=
 =?us-ascii?Q?sgZ1h768JhvZDYVj7fEJBr95vcR49eCRk0F+xxWhLpt47hfvzc1x8BNDxdJK?=
 =?us-ascii?Q?EBqyWy1nn57oEj7vf67X8FzawhVaSR+euKU1uQwdflgBjp+xzniIu/w=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: iOjgQcqRWXl5Ld6ST6HZSS1TcJPdkLf8ZT/IdNzrCb04bi5VwPhx9Rj30MPtaXREnnnA74ViidZMI7MYUMahdRis7sN/rlT1yt/l03mU0bJDdkBnpfTunOGVURpecDKUFj9cfSu/Mu6dolxG6GuVDbA9lU0Nhx4duex9SnPLFwixpbSRR4VKpca4eAdbmQODrOQkZQpW93r/vW7z6JL6IswXBAibKKqaFcSwK/XAywGqC9mHV+19/fb5PD5aV75D8ml8P/CoB03QPm81qDVUprk/0mJDUB08kELALFiDXRRpJgRrrE8rpWRhyw9oT8WDSSpTpG16ugeIsYeT+EPU2mZJZuwdvZ2n0OFnbWHZIedSLF2NNCQsmPengQid2kTorS+dR6tkHK4Ht3Awn++W1CJ9aGnBSYtckNpKtQgXwiI=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 6:bxWWaBJ+Lvkl6LIjyaFX3fU28Pln5nKLYfqietSk58/ZI+CHDKB9lReO0MxMI4ujhoH0PWoBmczvBpeGu+YEi29zkWulzTwRhbraog1nGhFfRKVN/Ub6Ak/XNBqSqS3UpDXmFlpivrq/U/ZjLjdrQ3y7I4BAB69X/RRAgT9Z+MNW5to+mrHMw5jBz08k0wAnr3CV/CAGPNk2okENNjIfb3V0hXwLg8kUXaMhkp57Bbv5pUVeMWafwAOClRrhbdhEc555IceolvSYoMsni79BFuHjq0lS1k8WnwxVdtbCpG3WBquhvWxvf/HfKjOchTUIwsrDaaOC5YL4lGymMCAK/3TxEfQEU3cCEoJHXcMmC7dDpcibmlZRKFy12Hv+IaSU05Mo98HB9pZ1AFuHeQ/l7srEjCINuR4Bu6nziEAAi0sKQTu6j0N0vHPClE9OSOtIp9cAVgXTKlJ/X0rv1q37EQVqOwvXnsaWndYD0ColLQrFb6LqiPU4WXqc/eSYEZD2;
 5:DgDJemUYC0HY2dLjMqWx2ZJDKLgS1m7HMpV34/m1Cjjw7omBWNQ38NCFE2X81XTzTUXNNSyBZK+g3SsGn/qE6DayMmKU3Kf2sGfKG7RqecETVR0dDdHRhXOK0IOIJvNn9rCPiysn8ObXQ4TkvZ+61WtfL9f7G/ssFK73ceYvxJk=;
 24:NTmgbV2wjBj7r7v++V9CVUuMjTpw9E3ULsS01MbbFHxPR3WHXPytsg+4CKRteoVzWqhj2FxkOynb8ObT5qqKR625QrpbPgeb1r71BLFAV+o=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 7:qjtsjIM09sp7ugnER11leOj9da/lAAaALPFC7d2JdNvAEw12ZTXenZ0/7QbH6yIzpM5Sy/1te1CiSSg9k4pIQOVws6U6GKfqLgrEpDtyRM2BNBrmjknp2+TxWdaN04xiKMTVD+skH5D/DqCJ/rOst+dOrgE+3EStcHPUtS08Gk777QHtXSkSO3BxJOebpX7Q0mcsdgAV7Qw+QbTJM0QRY2IDoPkXCDN8JG9TA1tXaB93dSHdwHZ9xUVS8nq2T1yk
X-MS-Office365-Filtering-Correlation-Id: 11f48a85-ff3f-45a8-a839-08d5a363e58c
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:32:58.8427 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 11f48a85-ff3f-45a8-a839-08d5a363e58c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1600
Subject: [Minios-devel] [PATCH v3 05/43] arm: create a new header for the
 page macros
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Q3JlYXRlIGEgbmV3IGhlYWRlciB0byBzdG9yZSB0aGUgcGFnZSBtYWNyb3MuCgpUaGlzIGhlYWRl
ciB3aWxsIGJlIHVzZWQgaW4gdGhlIGFzc2VtYmx5IGNvZGUgYW5kIEMgY29kZS4KClNpZ25lZC1v
ZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQogaW5jbHVkZS9h
cm0vYXJjaF9saW1pdHMuaCB8IDIgKy0KIGluY2x1ZGUvYXJtL2FyY2hfbW0uaCAgICAgfCA0ICst
LS0KIGluY2x1ZGUvYXJtL3BhZ2VfZGVmLmggICAgfCA4ICsrKysrKysrCiAzIGZpbGVzIGNoYW5n
ZWQsIDEwIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQg
aW5jbHVkZS9hcm0vcGFnZV9kZWYuaAoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJtL2FyY2hfbGlt
aXRzLmggYi9pbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oCmluZGV4IGJhZTk5ZTEuLjIzYTQ5MWYg
MTAwNjQ0Ci0tLSBhL2luY2x1ZGUvYXJtL2FyY2hfbGltaXRzLmgKKysrIGIvaW5jbHVkZS9hcm0v
YXJjaF9saW1pdHMuaApAQCAtMSw3ICsxLDcgQEAKICNpZm5kZWYgX19BUkNIX0xJTUlUU19IX18K
ICNkZWZpbmUgX19BUkNIX0xJTUlUU19IX18KIAotI2luY2x1ZGUgPG1tLmg+CisjaW5jbHVkZSA8
cGFnZV9kZWYuaD4KIAogI2RlZmluZSBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUiAgMgogI2RlZmlu
ZSBfX1NUQUNLX1NJWkUgKDQgKiBQQUdFX1NJWkUpCmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9h
cmNoX21tLmggYi9pbmNsdWRlL2FybS9hcmNoX21tLmgKaW5kZXggOThiODZhZi4uYzg5ZDFhYSAx
MDA2NDQKLS0tIGEvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCisrKyBiL2luY2x1ZGUvYXJtL2FyY2hf
bW0uaApAQCAtOCw5ICs4LDcgQEAgZXh0ZXJuIGludCBfYm9vdF9zdGFja1tdOwogZXh0ZXJuIGlu
dCBfYm9vdF9zdGFja19lbmRbXTsKIGV4dGVybiB1aW50MzJfdCBwaHlzaWNhbF9hZGRyZXNzX29m
ZnNldDsJLyogQWRkIHRoaXMgdG8gYSB2aXJ0dWFsIGFkZHJlc3MgdG8gZ2V0IHRoZSBwaHlzaWNh
bCBhZGRyZXNzICh3cmFwcyBhdCA0R0IpICovCiAKLSNkZWZpbmUgUEFHRV9TSElGVCAgICAgICAg
MTIKLSNkZWZpbmUgUEFHRV9TSVpFICAgICAgICAoMSA8PCBQQUdFX1NISUZUKQotI2RlZmluZSBQ
QUdFX01BU0sgICAgICAgKH4oUEFHRV9TSVpFLTEpKQorI2luY2x1ZGUgPHBhZ2VfZGVmLmg+CiAK
ICNkZWZpbmUgREVGX1BBR0VfUFJPVCAgICAgMAogCmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9w
YWdlX2RlZi5oIGIvaW5jbHVkZS9hcm0vcGFnZV9kZWYuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi4zNTQ2ODBjCi0tLSAvZGV2L251bGwKKysrIGIvaW5jbHVkZS9hcm0vcGFn
ZV9kZWYuaApAQCAtMCwwICsxLDggQEAKKyNpZm5kZWYgX0FSTV9QQUdFX0RFRl9IXworI2RlZmlu
ZSBfQVJNX1BBR0VfREVGX0hfCisKKyNkZWZpbmUgUEFHRV9TSElGVCAgICAgICAgMTIKKyNkZWZp
bmUgUEFHRV9TSVpFICAgICAgICAgKDEgPDwgUEFHRV9TSElGVCkKKyNkZWZpbmUgUEFHRV9NQVNL
ICAgICAgICAgKH4oUEFHRV9TSVpFLTEpKQorCisjZW5kaWYKLS0gCjIuNy40CgoKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxp
bmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54
ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:27 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhe-0002zu-UY; Mon, 16 Apr 2018 06:33:26 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhd-0002zl-AL
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:25 +0000
X-Inumbo-ID: eca723ea-413f-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::60a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id eca723ea-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:24 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=MGBHGAgJzghBbhq+eCNCEb6DFIdBm8OhA1UdiJvIuRs=;
 b=FklBxNDUbZIVxqWFHju5a2ffSrGCKwfwLs46gtS0ggE4qtHIV26mO6HfAm23Z5wb2zN+rAiyRqunuHgHuKZCXsCgkU6n4hsBiXQH+kxHOVIciWtGqfFwSPHzBjUfNyymgdqQ0aCCJ0yi742x6XEooNEgC0rGX+3zgg3WWA4wJRc=
Received: from DB5PR08CA0024.eurprd08.prod.outlook.com
 (2a01:111:e400:52c3::34) by VI1PR08MB0991.eurprd08.prod.outlook.com
 (2a01:111:e400:c548::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Mon, 16
 Apr 2018 06:33:11 +0000
Received: from VE1EUR03FT004.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::209) by DB5PR08CA0024.outlook.office365.com
 (2a01:111:e400:52c3::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:09 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT004.mail.protection.outlook.com (10.152.18.106) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:09 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:00 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:46 +0000
Message-ID: <1523860343-16382-7-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(376002)(39380400002)(39850400004)(346002)(2980300002)(438002)(189003)(199004)(126002)(356003)(104016004)(6666003)(486006)(446003)(6916009)(11346002)(47776003)(5660300001)(16586007)(54906003)(50466002)(106002)(76176011)(72206003)(575784001)(86362001)(246002)(51416003)(7696005)(6346003)(336012)(426003)(4326008)(316002)(8666007)(2351001)(8676002)(77096007)(26005)(48376002)(39060400002)(186003)(50226002)(478600001)(476003)(2616005)(26826003)(36756003)(305945005)(106466001)(2906002)(8936002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR08MB0991; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT004;
 1:A+Z0EFjdUmC5iwL65GNIbuTiDJZHWHD/8AXoLohJOM48L0+pju1XnnMqGH2c3eMZUFD+zGf/0vx2CNXzeAOZCMx41yzclscukS872kAxYjxGIaze70vfp+OwR8ILWAyB
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR08MB0991; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0991;
 3:qp7ZcXLn1d/de54sm0bRmlBkk2hfVyYm2Df9HSvPs7luCFMsowXhlA7PC0fS51ztnQqQMpBvFBaq3DjlEwEJ/kmoOIOBX9zfAYDRKB1i9wl+I3XG/TKIZxf1uUg6QHmsjIdbLwhMsA1eWL4J6N+qJbadO0u50aXGB1+L9ySKVwAvB9OKdHK+KeIMKXXDUSVQP2AR47Hye4TCsdKwv4SQnxfVh/GbIIpiM4Oqhniyb015KM0mRYEMhoTD8vMjw2e85W/Urzen7sNciPPUCqzFGnm1FjJhnJijOiHPtxf7vbE4E2LjmnGAYZiMRM4Ex5STLwTtC3WGasSwFJhVgf3gi7hgWhfZKI+RvzldzdqJyQQ=;
 25:uhdIEkdciFoK4GFqqn6GSKIIOH2z2RvK5YN77Rc1CBmjxU6mnErGUKwNMCEfQm9hXFWQhENsobVvLikmQmrmwpGUqPzgs8AJjF5RGc1wm8l4kjbRY/42ZKTkCnttXAMzuflpw2aIh6lRSm/S709m1v8RAY4dKgPvtJoWUPTiUa1wA5IIrlghBNFAqxgEmmWnAq39Pj4YEw2Uo8GwzskVEBieDsxbcSD36QEYQuelAGr6risP6I3OPpL1Zj9afgU4YpoYiXUC8zTB5pQ7bsvUIL3f+EKe/5FCsklQs4wDxYiv3EJfI8q73DDv4dE1qLuTnd6P/kh/xaljRq/jjsDT/A==
X-MS-TrafficTypeDiagnostic: VI1PR08MB0991:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0991;
 31:PcuzVYTRwk+YN+QQ6WJXkjVseij6/OkiK2SxbHRkAzCSPhdkDjE1yly/NwBSzhdNv8+eWkaZS/p/CrbMixEgOyLyeU6GbKQcr2EEPDQ9pmXRwYPIq3OhlUhOk1NeWpPeRv3bCqP/F2IafKH4x2aIo9RTUleHSjPgbcM1ShSgP/gvaStmT3f6fGvtjcQjzUV6AAOJ0UuUMYqAKqelJ66pgre1V9s1fEe5sRCoROcCX3c=;
 20:NoclPggQLyJZHhJ1rPcpf86STnF5RimHy8mSRpC/xSDvMxm4kQ1TfIlBliC1f1FTeGO7z12FuoY+93PzBpp6EeMblEmIyfRSKXCyC0961FhP/zOdHKesslQbyn5bTcoTQJH0TyyO9HGstW6eJcc+hco3OIVuG3zgSxEsJ+fwJTDvFrwYujL0/FAVaZkF9eGsIbwW46plUogCuFDs1o6rUgPBv/P1OesvBtUrvINhH2w/RmBAuSZ4/hzGNQqGXuYN;
 4:SyQuoN6LgG+nO/mTDafX/kUit5vUe6Rg2u9a+Gj5Pi0UnEZMAV6dOw2OOoEbaUafetq3/Yj/udKC/qs2uvpu/WcWqLyOh9HtOqs9WHfomvZSDiPnZWvpRtMNyqpgSYRckug6H9kUMANuEjAO8apMZZwTbdPYHvxH+oaGUQ4bkgsN8ReAOH+LEmGDn7Z/WZDlVjNTrLV5rk1N+bAt4/5zF7VK8NEyxi4+qSda6+c5tUvmE0ad7vYaWyqCVpsFVZSxm8A1PA/DwO9j53uOOlwmkDKs06eHaKaJ0HEnZ2EzWNlMhkV4l/mmX60Z0IfqxtPC
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR08MB0991378C34376ED5B596C02E84B00@VI1PR08MB0991.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93004095)(10201501046)(3002001)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:VI1PR08MB0991; BCL:0; PCL:0; RULEID:; SRVR:VI1PR08MB0991; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR08MB0991;
 23:3ci95A9EujWjZrUuu9jYGiYq8cdjai4ljHZ/zJyCt?=
 =?us-ascii?Q?F2pbBqMTY3V+QpEnF4ZHvcZvQpe80AcWuqoVKh+ccAQqV+Ktj3c2qOAd/veP?=
 =?us-ascii?Q?hrAidrKtlF4keqYnDpiLvgkwyKhoLLmHbC133SbL6b36BV0RGwhA5/YcMMkj?=
 =?us-ascii?Q?SMm/G4QS/MpJvCGgG7r4N/BBZzDLWT75IhaeqSipf0uvAG3DK8rNSEEW5vho?=
 =?us-ascii?Q?AMhfvFePJOSYeU0FIF0P3NZUtIaguXdB4qt6jO4Jg2UEN1UrAb+Lx97Ns9bH?=
 =?us-ascii?Q?diVcH/e7oy3q4qvByqa8Lr2r9Hp+cvi06ABV9nEqkTX8gnmJ1FtvRCJwB307?=
 =?us-ascii?Q?+mxR80zerlIbqP04dB0scS7sR3yII6tMhD00awRIgZuiziX1+es0EIxA0lpJ?=
 =?us-ascii?Q?mt6HOtMHVTtvZt+0m+IUrTp5evFxCQ1kGJKYF/nqNH5gb2f7AnsC3xd2Cyd2?=
 =?us-ascii?Q?r1dmhjOLM0mdC7/Tzxsj7z/qCyPZVpN972RhiAgyV5g++UchWVN5MisJuac7?=
 =?us-ascii?Q?Wh9h3g/p33Zea51LeS/R+r+T9LCjPjzWbpRmtOc1jcODB5Bnn27sr225qGpW?=
 =?us-ascii?Q?oCpVvqO4NSu9LRHKZPXOjTpvv7l3bvogwdbmICyP0kfoyZ9/JPk+R77Gbaqj?=
 =?us-ascii?Q?/i/j/+l9jBCyZEjA+qE8ICgSbD76TyYDuNiJPrel6mFid/rLN3DTzWdIn1ba?=
 =?us-ascii?Q?l0c3hPsFUmz4l9TaoR7z010gE70B4ifzrriBTVEMdDSEgj8uP2nlR2YQdtr0?=
 =?us-ascii?Q?xv9PnF3drktP3VwrsN+AeQiKC3NphFwt/Jjd43vgGrVP/i1NnFOU3hJzi8qN?=
 =?us-ascii?Q?Bddvzf3qJGf69mNrH/GzsppzYTAVsAKUvAIcUAtgXaXR+ybOQN5PWgDz/l95?=
 =?us-ascii?Q?vfui2iZWR1o7ApFGB3xrgxlqoFt1A/tZrhugMeDTkNeta0aRJtF8XNuQLHcU?=
 =?us-ascii?Q?sNYImx0SdkqV/2YmMTltYeF1vi7hfvlAoqfa576fbh/8UdnBush4T/BBOxgc?=
 =?us-ascii?Q?b58MVGjdgXCtiHJJ7U4v9UX9bOyRmXURfjV1BMY+JXnkFvDGIJ5HCcS87xdE?=
 =?us-ascii?Q?0bdlTIwJKPyZ7hHzWdViTmFT0r1lvRK3Wi8thCFy8QB6BxiLSFnDlx55GK2s?=
 =?us-ascii?Q?n+YPjI3hUp81qyMpSaQifEWgiCFghrH7osL4yhGbJoyQHWE+gxKpwmQaPf/z?=
 =?us-ascii?Q?WkXp3dcF5LvHVc=3D?=
X-Microsoft-Antispam-Message-Info: og24T5Iy5h+DCHU/ZCEZJ6D8tUchKErbju9m/7Bg3fr0bunZI8TS87PZEYL/QJ7iGS9BsIewR5sbgXYmcDZ+++OZL82GHv3shs0ARPpAcK8jWaAe54JUSFIKi3CmX3J2aZDSUXaD28v08iC/+4HiWtNnu4vQFueSxhS5IrF5UQen02SyySSSh3q0qYsKGg53BMWig3gb+3qFrkvyMjMabKaXwHc6h7Fo+xz0i0GLbBgEt1MbZcSPMgH++0MBongCXYNsGnRgBKF9mygWiwEwB2THTLt+q3Ge26n7pk9liJ0MG4Z6fd0Hu0eJVFFf68qbtTAy0xQmnqIvoZiiCzk1NGZlOplauuS9gjL3rTYAX19LbTtSPQsURofpbsJ2G8wsXtjlP10MzxS3+slS4/YKRGfHaUQcvkYe8vAGraUEZiY=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0991;
 6:6ltjc02Z84SEOTpw7EtbyVcEF+3vp+f+n7NnzeLz7ZhppQ+yIER97tIneIt8Dt1k3D5Nww+mKrONSRoljzdm4If+m6K4CLDAiHk+aCOevKblX03sna+G/4vpiyJcVZm0gWWYfK2NL0ZOsQD7vRsdJoNt0XJ/tpKLI2FJcoqeuSAfQhENeArF5J4T3DZqqHjrFEq+6COYlVQ0DLNrko8G2JjFVzJHVOS3tgXrK/5z+KHXSml5QoPRhAwkAuAa/dzluGQZZN0/kqKMcW0lYXySWR3pLvRtf18EF3p5T9QpUv28PJ+sYMM79RovMW8MW+WP62ruoUnoT8YIydqIuvHCNfEVkzJdbOMy5sHWLfsGhO+ZxRaSy2HG7J0ri3xRPH/p5VCufM2Wr/YImGUS3u8N/nW15paUjzm7NWRkMg8SzNbvE2L67ImlORpinwZDzJmJvyJ4eKnMgy9eG8xdB3AwUkGSQW1n//lLxMaT65ci6CuXKJsR9g2caoY0JsLia7Tx;
 5:ML/QyCt87XV1ShcoXK3UpzOAvW6bxt7a/EVyTsHtyER29Q1nHs8BIL0hrqqYzurH4A0G1ZnUu38MMGCvomiEfggekQl4aueMqtlwx3xvJl1TyEA0WC+dDOhl9w2XmnVlWCJgh5AKnt3yXjcwU7o3Vnx6hgFb+7vYK/pJyPx52Jg=;
 24:8izaVmkSohyVxXoFqrNkLOPoV8CHd23eEfOVQBum2cn/YirjeqGz1T+3kxBoczPA69hgOPp1O4LSS1Ue+xVF2lM3XRGi4/WhVSz/IqGBzK8=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0991;
 7:jPwe6QOscryKgeEdpsoub+FOZ1AaeuO0Fw0YJiF0QF+69fHR381uCvbjHiyPsXnuDLD4mNvo0OHrlMv9aGpvxxHYl2tBNMbPDe3saBXy1qlS0Fxh09p6DCqTAdJw28E7GkaVZ/9CUAPZxeZOE6P8EMlUiu1gXFKSV6SPYkfwIOZNwqdAX+7tE0s9JmXZVd9gUzDsKv/kt2dbX7HPQsiRl7SUz2bHi1B8khrO67ceHkiNA/P4OqCmDx5030frVcYV
X-MS-Office365-Filtering-Correlation-Id: 865f705f-5d74-4ba0-e8e3-08d5a363ebde
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:09.4481 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 865f705f-5d74-4ba0-e8e3-08d5a363ebde
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB0991
Subject: [Minios-devel] [PATCH v3 06/43] arm64: add the boot code
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBhZGRzIHRoZSBib290IGNvZGUgZm9yIGFybTY0OgogICAgMC4pIGFkZCB0aGUg
aGVhZGVyIHdoaWNoIGNvbnRhaW5zIGFsbCB0aGUgbWFjcm9zIHRvIHNldHVwIHRoZSBwYWdlIHRh
YmxlCiAgICAxLikgaW5pdCB0aGUgTUFJUi9UQ1IgZm9yIDQ4IGJpdCB2aXJ0dWFsIGFkZHJlc3Mu
CiAgICAyLikgc2V0dXAgdGhlIHBhZ2UgdGFibGUgZm9yIHRoZSBjb2RlIHNlY3Rpb24uCiAgICAz
LikgZW5hYmxlIHRoZSBNTVUKClRoaXMgcGF0Y2ggcmVmZXJzIHRvIENoZW4gQmFvemkncyBwYXRj
aDoKICAgICAiSW5pdGlhbCBjb2RlcyBmb3IgYXJtNjQiCgpTaWduZWQtb2ZmLWJ5OiBIdWFuZyBT
aGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgotLS0KIGFyY2gvYXJtL2FybTY0L2FybTY0LlMg
ICAgICAgIHwgMjg2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwog
YXJjaC9hcm0vYXJtNjQvYXNtLmggICAgICAgICAgfCAgMTggKysrCiBpbmNsdWRlL2FybS9hcm02
NC9wYWdldGFibGUuaCB8IDEwOCArKysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDQx
MiBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtNjQvYXJtNjQu
UwogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FybTY0L2FzbS5oCiBjcmVhdGUgbW9kZSAx
MDA2NDQgaW5jbHVkZS9hcm0vYXJtNjQvcGFnZXRhYmxlLmgKCmRpZmYgLS1naXQgYS9hcmNoL2Fy
bS9hcm02NC9hcm02NC5TIGIvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5iNDU0Y2M2Ci0tLSAvZGV2L251bGwKKysrIGIvYXJjaC9hcm0v
YXJtNjQvYXJtNjQuUwpAQCAtMCwwICsxLDI4NiBAQAorI2luY2x1ZGUgImFzbS5oIgorI2luY2x1
ZGUgPGFyY2hfbGltaXRzLmg+CisjaW5jbHVkZSA8YXJtNjQvcGFnZXRhYmxlLmg+CisjaW5jbHVk
ZSA8eGVuL3hlbi5oPgorCisvKiBUaGlzIG1hY3JvIHdpbGwgdXNlIHRoZSB4MC94MS94Mi94MTYg
Ki8KKyNkZWZpbmUgUFJJTlQoX3MpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg
IGFkciAgICAgeDIsIDk3ZjsgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgYWRyICAg
ICB4MSwgOThmOyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBzdWIgICAgIHgxLCB4
MSwgeDI7ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIG1vdiAgICAgeDAsICNDT05TT0xF
SU9fd3JpdGU7ICAgICAgICAgICAgICBcCisgICAgbW92ICAgICB4MTYsICNfX0hZUEVSVklTT1Jf
Y29uc29sZV9pbzsgICAgIFwKKyAgICBodmMgICAgICNYRU5fSFlQRVJDQUxMX1RBRzsgICAgICAg
ICAgICAgICAgXAorICAgIGIgICAgICAgOTlmOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCis5NzogLmFzY2l6IF9zOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKzk4
OiA7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIC5hbGln
biAgMjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCis5OTogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKworICAgIC5kYXRhCisgICAgLmdsb2Js
IF9ib290X3N0YWNrCisgICAgLmdsb2JsIGJvb3RfbDBfcGd0YWJsZQorICAgIC5nbG9ibCBib290
X2wxX3BndGFibGUKKyAgICAuZ2xvYmwgYm9vdF9sMl9wZ3RhYmxlCisgICAgLmdsb2JsIGlkbWFw
X2wwX3BndGFibGUKKyAgICAuZ2xvYmwgaWRtYXBfbDFfcGd0YWJsZQorCisgICAgLmFsaWduIDEy
Citib290X2wwX3BndGFibGU6CisgICAgLmZpbGwgIFBBR0VfU0laRSwxLDAKK2Jvb3RfbDFfcGd0
YWJsZToKKyAgICAuZmlsbCAgUEFHRV9TSVpFLDEsMAorYm9vdF9sMl9wZ3RhYmxlOgorICAgIC5m
aWxsICBQQUdFX1NJWkUsMSwwCitpZG1hcF9sMF9wZ3RhYmxlOgorICAgIC5maWxsICBQQUdFX1NJ
WkUsMSwwCitpZG1hcF9sMV9wZ3RhYmxlOgorICAgIC5maWxsICBQQUdFX1NJWkUsMSwwCisKKyAg
ICAuYWxpZ24gMTIKK19ib290X3N0YWNrOgorICAgIC5maWxsICBfX1NUQUNLX1NJWkUsMSwwCitz
dGFja19lbmQ6CisKKy8qCisgKiBLZXJuZWwgc3RhcnR1cCBlbnRyeSBwb2ludC4KKyAqCisgKiBQ
bGVhc2UgcmVmZXIgdG8gbGludXgga2VybmVsIGZpbGUgRG9jdW1lbnRhdGlvbi9hcm02NC9ib290
aW5nLnR4dAorICogZm9yIHRoZSBoZWFkZXIgZm9ybWF0LgorICovCisgICAgLnRleHQKKworICAg
IGIgICAgICAgX3N0YXJ0ICAgICAgICAgICAgICAgICAgLyogYnJhbmNoIHRvIGtlcm5lbCBzdGFy
dCwgbWFnaWMgKi8KKyAgICAubG9uZyAgIDAgICAgICAgICAgICAgICAgICAgICAgIC8qIHJlc2Vy
dmVkICovCisgICAgLnF1YWQgICAweDAgICAgICAgICAgICAgICAgICAgICAvKiBJbWFnZSBsb2Fk
IG9mZnNldCBmcm9tIHN0YXJ0IG9mIFJBTSAqLworICAgIC5xdWFkICAgX2VuZCAtIF9zdGFydCAg
ICAgICAgICAgLyogRWZmZWN0aXZlIEltYWdlIHNpemUgKi8KKyAgICAucXVhZCAgIDIgICAgICAg
ICAgICAgICAgICAgICAgIC8qIGtlcm5lbCBmbGFnczogTEUsIDRLIHBhZ2Ugc2l6ZSAqLworICAg
IC5xdWFkICAgMCAgICAgICAgICAgICAgICAgICAgICAgLyogcmVzZXJ2ZWQgKi8KKyAgICAucXVh
ZCAgIDAgICAgICAgICAgICAgICAgICAgICAgIC8qIHJlc2VydmVkICovCisgICAgLnF1YWQgICAw
ICAgICAgICAgICAgICAgICAgICAgICAvKiByZXNlcnZlZCAqLworICAgIC5ieXRlICAgMHg0MSAg
ICAgICAgICAgICAgICAgICAgLyogTWFnaWMgbnVtYmVyLCAiQVJNXHg2NCIgKi8KKyAgICAuYnl0
ZSAgIDB4NTIKKyAgICAuYnl0ZSAgIDB4NGQKKyAgICAuYnl0ZSAgIDB4NjQKKyAgICAubG9uZyAg
IDAgICAgICAgICAgICAgICAgICAgICAgIC8qIHJlc2VydmVkICovCisKKy8qCisgKiBQcmltYXJ5
IENQVSBnZW5lcmFsLXB1cnBvc2UgcmVnaXN0ZXIgc2V0dGluZ3MKKyAqIHgwID0gcGh5c2ljYWwg
YWRkcmVzcyBvZiBkZXZpY2UgdHJlZSBibG9iIChkdGIpIGluIHN5c3RlbSBSQU0uCisgKiB4MSA9
IDAgKHJlc2VydmVkIGZvciBmdXR1cmUgdXNlKQorICogeDIgPSAwIChyZXNlcnZlZCBmb3IgZnV0
dXJlIHVzZSkKKyAqIHgzID0gMCAocmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2UpCisgKgorICogVGhl
IHJlZ2lzdGVycyB1c2VkIGJ5IF9zdGFydDoKKyAqIHgyMCAtIEZEVCBwb2ludGVyCisgKiB4MjIg
LSBvZmZzZXQgYmV0d2VlbiBQQSBhbmQgVkEKKyAqLworRU5UUlkoX3N0YXJ0KQorICAgIC8qIFNh
dmUgdGhlIEZEVCBwb2ludGVyICovCisgICAgbW92ICAgICB4MjAsIHgwCisKKyAgICAvKiBDYWxj
dWxhdGUgd2hlcmUgd2UgYXJlICovCisgICAgYmwgICAgICBfY2FsY19vZmZzZXQKKworICAgIFBS
SU5UKCItIE1pbmktT1MgYm9vdGluZyAtXG4iKQorCisgICAgUFJJTlQoIi0gU2V0dXAgQ1BVIC1c
biIpCisgICAgLyogU2V0dXAgQ1BVIGZvciB0dXJuaW5nIG9uIHRoZSBNTVUuICovCisgICAgYmwg
ICAgICBfc2V0dXBfY3B1CisKKyAgICBQUklOVCgiLSBTZXR1cCBib290aW5nIHBhZ2V0YWJsZSAt
XG4iKQorICAgIC8qIFNldHVwIHRoZSBpbml0aWFsIHBhZ2UgdGFibGUuICovCisgICAgYmwgICAg
ICBfc2V0dXBfaW5pdGlhbF9wZ3RhYmxlCisgICAgbW92ICAgICB4MTksIHgwCisKKyAgICAvKiBT
ZXR1cCB0aGUgaWRlbnRpdHkgbWFwcGluZyAqLworICAgIGJsICAgICAgX3NldHVwX2lkbWFwX3Bn
dGFibGUKKworICAgIC8qIExvYWQgVFRCUnggKi8KKyAgICBtc3IgICAgIHR0YnIxX2VsMSwgeDE5
CisgICAgbXNyICAgICB0dGJyMF9lbDEsIHgwCisgICAgaXNiCisKKyAgICAvKiBUdXJuaW5nIG9u
IE1NVSAqLworICAgIHRsYmkgICAgdm1hbGxlMQorICAgIGRzYiAgICAgbnNoCisgICAgaXNiCisg
ICAgbGRyICAgICB4MSwgPShTQ1RMUl9NIHwgU0NUTFJfQyB8IFNDVExSX0kpCisgICAgbXNyICAg
ICBzY3Rscl9lbDEsIHgxCisgICAgaXNiCisKKyAgICBQUklOVCgiLSBNTVUgb24gLVxuIikKKyAg
ICBsZHIgICAgIHgwLCA9bW11X29uCisgICAgYnIgICAgICB4MAorCittbXVfb246CisgICAgLyog
RG8gbm90IHVzZSB0aGUgVFRCUjBfRUwxIGFueSBtb3JlICovCisgICAgbXJzICAgICB4MTksIHRj
cl9lbDEKKyAgICBhZGQgICAgIHgxOSwgeDE5LCBUQ1JfRVBEMAorICAgIG1zciAgICAgdGNyX2Vs
MSwgeDE5CisKKyAgICAvKiBTZXR1cCBzdGFjayAqLworICAgIFBSSU5UKCItIFNldHVwIHN0YWNr
IC1cbiIpCisgICAgbGRyICAgICB4MSwgPXN0YWNrX2VuZAorICAgIG1vdiAgICAgc3AsIHgxCisK
KyAgICBQUklOVCgiLSBKdW1waW5nIHRvIEMgZW50cnkgLVxuIikKKyAgICBtb3YgICAgIHgwLCB4
MjAgICAgICAgICAgICAgICAgICAvKiB4MCA8LSBkZXZpY2UgdHJlZSAocGh5c2ljYWwgYWRkcmVz
cykgKi8KKyAgICBtb3YgICAgIHgxLCB4MjIgICAgICAgICAgICAgICAgICAvKiB4MSA8LSBwaHlz
X29mZnNldCAqLworCisgICAgYiAgICAgIGFyY2hfaW5pdAorRU5EUFJPQyhfc3RhcnQpCisKKy8q
CisgKiBHZXQgdGhlIHBoeXMtb2Zmc2V0LCBhbmQgc2F2ZSBpdCBpbiB4MjIKKyAqLworX2NhbGNf
b2Zmc2V0OgorICAgIGxkciAgICAgeDIyLCA9X3N0YXJ0ICAgICAgICAgICAgIC8qIHgwIDo9IHZh
ZGRyKF9zdGFydCkgICovCisgICAgYWRyICAgICB4MjEsIF9zdGFydCAgICAgICAgICAgICAgLyog
eDIxIDo9IHBhZGRyKF9zdGFydCkgKi8KKyAgICBzdWIgICAgIHgyMiwgeDIxLCB4MjIgICAgICAg
ICAgICAvKiB4MjIgOj0gcGh5cy1vZmZzZXQgKHBhZGRyIC0gdmFkZHIpICovCisgICAgcmV0CisK
Ky8qCisgKiBTZXR1cCB0aGUgbWVtb3J5IHJlZ2lvbiBhdHRyaWJ1dGU7CisgKiBTZXR1cCB0aGUg
VENSLgorICovCitfc2V0dXBfY3B1OgorICAgIC8qCisgICAgICogU2V0dXAgbWVtb3J5IGF0dHJp
YnV0ZSB0eXBlIHRhYmxlcworICAgICAqCisgICAgICogTWVtb3J5IHJlZ2lvbiBhdHRyaWJ1dGVz
IGZvciBMUEFFOgorICAgICAqCisgICAgICogICBuID0gQXR0ckluZHhbMjowXQorICAgICAqICAg
ICAgICAgICAgICAgICAgICAgIG4gICAgICAgTUFJUgorICAgICAqICAgREVWSUNFX25HblJuRSAg
ICAgIDAwMCAgICAgMDAwMDAwMDAgKDB4MDApCisgICAgICogICBERVZJQ0VfbkduUkUgICAgICAg
MDAxICAgICAwMDAwMDEwMCAoMHgwNCkKKyAgICAgKiAgIERFVklDRV9HUkUgICAgICAgICAwMTAg
ICAgIDAwMDAxMTAwICgweDBjKQorICAgICAqICAgTk9STUFMX05DICAgICAgICAgIDAxMSAgICAg
MDEwMDAxMDAgKDB4NDQpCisgICAgICogICBOT1JNQUwgICAgICAgICAgICAgMTAwICAgICAxMTEx
MTExMSAoMHhmZikKKyAgICAgKi8KKyAgICBsZHIgICAgIHgwLCA9KFNFVF9NQUlSKDB4MDAsIE1F
TV9ERVZJQ0VfbkduUm5FKSB8IFwKKyAgICAgICAgICAgICAgICAgIFNFVF9NQUlSKDB4MDQsIE1F
TV9ERVZJQ0VfbkduUkUpICB8IFwKKyAgICAgICAgICAgICAgICAgIFNFVF9NQUlSKDB4MGMsIE1F
TV9ERVZJQ0VfR1JFKSAgICB8IFwKKyAgICAgICAgICAgICAgICAgIFNFVF9NQUlSKDB4NDQsIE1F
TV9OT1JNQUxfTkMpICAgICB8IFwKKyAgICAgICAgICAgICAgICAgIFNFVF9NQUlSKDB4ZmYsIE1F
TV9OT1JNQUwpKQorICAgIG1zciAgICAgbWFpcl9lbDEsIHgwCisKKyAgICAvKgorICAgICAqIFNl
dHVwIHRyYW5zbGF0aW9uIGNvbnRyb2wgcmVnaXN0ZXIgKFRDUikKKyAgICAgKi8KKyAgICBsZHIg
ICAgIHgwLCA9KFRDUl9UeFNaKFZBX0JJVFMpIHwgVENSX0FTSUQxNiB8IFRDUl9URzFfNEsgfCBc
CisgICAgICAgICAgICAgICAgICBUQ1JfSVJHTl9XQldBIHwgVENSX09SR05fV0JXQSB8IFRDUl9T
SEFSRUQgfCBUQ1JfSVBTXzQ4QklUKQorICAgIG1zciAgICAgdGNyX2VsMSwgeDAKKworICAgIHJl
dAorCisvKgorICogU2V0dXAgdGhlIHBhZ2UgdGFibGUgbWFwcGluZyBmb3IgQGFkZHIgYXQgQGxl
dmVsIHdpdGggQHByb3QuCisgKgorICogTm90ZTogeDIyIHN0b3JlcyB0aGUgb2Zmc2V0IGJldHdl
ZW4gdmlydHVhbCBhZGRyZXNzIGFuZCBwaHlzaWNhbCBhZGRyZXNzLgorICovCisubWFjcm8gc2V0
X3BhZ2VfdGFibGUsIGFkZHIsIGxldmVsLCBwcm90CisgICAgLyogRmluZCB0aGUgdGFibGUgaW5k
ZXggaW4gQGxldmVsLCBzYXZlIGl0IGluIHgzICAqLworLmlmIFxsZXZlbCA9PSAwCisgICAgbHNy
ICAgICB4MywgXGFkZHIsICNMMF9TSElGVAorICAgIGFkciAgICAgeDgsIGJvb3RfbDFfcGd0YWJs
ZQorICAgIGFkciAgICAgeDExLCBib290X2wwX3BndGFibGUKKy5lbmRpZgorCisuaWYgXGxldmVs
ID09IDEKKyAgICBsc3IgICAgIHgzLCBcYWRkciwgI0wxX1NISUZUCisgICAgYWRyICAgICB4OCwg
Ym9vdF9sMl9wZ3RhYmxlCisgICAgYWRyICAgICB4MTEsIGJvb3RfbDFfcGd0YWJsZQorLmVuZGlm
CisKKy5pZiBcbGV2ZWwgPT0gMgorICAgIGxzciAgICAgeDMsIFxhZGRyLCAjTDJfU0hJRlQKKyAg
ICBhZHIgICAgIHgxMSwgYm9vdF9sMl9wZ3RhYmxlCisgICAgLyogR2V0IHRoZSBwaHlzaWNhbCBh
ZGRyZXNzLCB0aGUgQGFkZHIgc2hvdWxkIGJlIDJNIGFsaWduZWQuICovCisgICAgYWRkICAgICB4
OCwgXGFkZHIsIHgyMgorLmVuZGlmCisKKyAgICBhbmQgICAgIHgzLCB4MywgI0xuX0FERFJfTUFT
SworCisgICAgLyogQnVpbGQgdGhlIHBhZ2UgdGFibGUgZW50cnkgKi8KKyAgICBsZHIgICAgIHg3
LCA9IFxwcm90CisgICAgbHNyICAgICB4OSwgeDgsICNQQUdFX1NISUZUCisgICAgb3JyICAgICB4
NywgeDcsIHg5LCBsc2wgI1BBR0VfU0hJRlQKKworICAgIC8qIFN0b3JlIGVudHJ5ICovCisgICAg
c3RyICAgICB4NywgW3gxMSwgeDMsIGxzbCAjM10KKy5lbmRtCisKKy8qCisgKiBTZXR1cCB0aGUg
bWFwcGluZyBmb3IgY29kZSBzZWN0aW9uCisgKgorICogPT4gbnVsbAorICogPD0geDAgLT4gZm9y
IFRUQlIxX0VMMQorICovCitfc2V0dXBfaW5pdGlhbF9wZ3RhYmxlOgorICAgIC8qIFN0YXJ0IHRv
IG1hcCB0aGUgY29kZSAqLworICAgIGxkciAgICAgeDAsID1fdGV4dCAgICAgICAgICAgICAgICAg
LyogeDAgOj0gdmFkZHIoX3RleHQpICAgICAgICAgICAgKi8KKyAgICBsZHIgICAgIHgxLCA9X2Vu
ZCAgICAgICAgICAgICAgICAgIC8qIHgxIDo9IHZhZGRyKF9lbmQpICAgICAgICAgICAgICovCisK
KyAgICBzZXRfcGFnZV90YWJsZSB4MCwgMCwgUFRfUFQKKyAgICBzZXRfcGFnZV90YWJsZSB4MCwg
MSwgUFRfUFQKKzE6CisgICAgc2V0X3BhZ2VfdGFibGUgeDAsIDIsIFBUX01FTQorCisgICAgYWRk
ICAgICB4MCwgeDAsIEwyX1NJWkUKKyAgICBjbXAgICAgIHgxLCB4MAorICAgIGIuZ3QgICAgMWIK
KworICAgIGFkciAgICAgeDAsIGJvb3RfbDBfcGd0YWJsZQorICAgIGRzYiAgICAgc3kKKyAgICBy
ZXQKKworLyoKKyAqIFNldHVwIHRoZSBwYWdlIHRhYmxlIG1hcHBpbmcgZm9yIEBhZGRyIGF0IEBs
ZXZlbCB3aXRoIEBwcm90LgorICoKKyAqIE9ubHkgdXNlZCBmb3IgaWRlbnRpdHkgbWFwcGluZy4K
KyAqLworLm1hY3JvIHNldF9pZGVudF9wYWdlX3RhYmxlLCBhZGRyLCBsZXZlbCwgcHJvdAorICAg
IC8qIEZpbmQgdGhlIHRhYmxlIGluZGV4IGluIEBsZXZlbCwgc2F2ZSBpdCBpbiB4MyAgKi8KKy5p
ZiBcbGV2ZWwgPT0gMAorICAgIGxzciAgICAgeDMsIFxhZGRyLCAjTDBfU0hJRlQKKyAgICBhZHIg
ICAgIHg4LCBpZG1hcF9sMV9wZ3RhYmxlCisgICAgYWRyICAgICB4MTEsIGlkbWFwX2wwX3BndGFi
bGUKKy5lbmRpZgorCisuaWYgXGxldmVsID09IDEKKyAgICBsc3IgICAgIHgzLCBcYWRkciwgI0wx
X1NISUZUCisgICAgbW92ICAgICB4OCwgXGFkZHIKKyAgICBhZHIgICAgIHgxMSwgaWRtYXBfbDFf
cGd0YWJsZQorLmVuZGlmCisKKyAgICBhbmQgICAgIHgzLCB4MywgI0xuX0FERFJfTUFTSworCisg
ICAgLyogQnVpbGQgdGhlIHBhZ2UgdGFibGUgZW50cnkgKi8KKyAgICBsZHIgICAgIHg3LCA9IFxw
cm90CisgICAgbHNyICAgICB4OSwgeDgsICNQQUdFX1NISUZUCisgICAgb3JyICAgICB4NywgeDcs
IHg5LCBsc2wgI1BBR0VfU0hJRlQKKworICAgIC8qIFN0b3JlIGVudHJ5ICovCisgICAgc3RyICAg
ICB4NywgW3gxMSwgeDMsIGxzbCAjM10KKy5lbmRtCisKKy8qCisgKiBTZXR1cCB0aGUgcGFnZSB0
YWJsZSBmb3IgVFRCUjBfRUwxOgorICogICBNYXBwaW5nIHRoZSBwYWdlIHRhYmxlIGZvciB0aGUg
Y29kZSBzZWN0aW9uLgorICogICBXZSB1c2UgNDhiaXQgYWRkcmVzcywgYW5kIGp1c3QgdXNlIGxl
dmVsIDAvMQorICogICBmb3IgdGhlIG1hcHBpbmcgKHdlIGRvIG5vdCB1c2UgbGV2ZWwgMiBhbmQg
bGV2ZWwgMykuCisgKgorICogPT4gbm9uZQorICogPD0geDAgOiBzYXZlIHRoZSBwYWdlIHRhYmxl
IHBvaW50ZXIgZm9yIFRUQlIwX0VMMS4KKyAqLworX3NldHVwX2lkbWFwX3BndGFibGU6CisgICAg
LyogQ3JlYXRlIHRoZSBWQSA9IFBBIG1hcCAqLworICAgIGFkciAgICAgeDAsIF90ZXh0CisKKyAg
ICBzZXRfaWRlbnRfcGFnZV90YWJsZSB4MCwgMCwgUFRfUFQKKyAgICBzZXRfaWRlbnRfcGFnZV90
YWJsZSB4MCwgMSwgUFRfTUVNCisKKyAgICBhZHIgICAgIHgwLCBpZG1hcF9sMF9wZ3RhYmxlCisg
ICAgZHNiICAgICBzeQorICAgIHJldApkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtNjQvYXNtLmgg
Yi9hcmNoL2FybS9hcm02NC9hc20uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li4zYTQ5OGM0Ci0tLSAvZGV2L251bGwKKysrIGIvYXJjaC9hcm0vYXJtNjQvYXNtLmgKQEAgLTAs
MCArMSwxOCBAQAorI2lmbmRlZiBfX0FTTV9IX18KKyNkZWZpbmUgX19BU01fSF9fCisKKyNkZWZp
bmUgQUxJR04gICAuYWxpZ24gNAorCisjZGVmaW5lIEVOVFJZKG5hbWUpIFwKKyAgICAuZ2xvYmwg
bmFtZTsgXAorICAgIEFMSUdOOyBcCisgICAgbmFtZToKKworI2RlZmluZSBFTkQobmFtZSkgXAor
ICAgIC5zaXplIG5hbWUsIC4tbmFtZQorCisjZGVmaW5lIEVORFBST0MobmFtZSkgXAorICAgIC50
eXBlIG5hbWUsIEBmdW5jdGlvbjsgXAorICAgIEVORChuYW1lKQorCisjZW5kaWYgLyogX19BU01f
SF9fICovCmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcm02NC9wYWdldGFibGUuaCBiL2luY2x1
ZGUvYXJtL2FybTY0L3BhZ2V0YWJsZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjhlMjM4NGYKLS0tIC9kZXYvbnVsbAorKysgYi9pbmNsdWRlL2FybS9hcm02NC9wYWdldGFi
bGUuaApAQCAtMCwwICsxLDEwOCBAQAorI2lmbmRlZiBfX0FSTTY0X1BBR0VfVEFCTEVfXworCisj
ZGVmaW5lIF9fQVJNNjRfUEFHRV9UQUJMRV9fCisKKy8qIFRDUiBmbGFncyAqLworI2RlZmluZSBU
Q1JfVHhTWih4KSAgICAgICAgICgoKCg2NCkgLSAoeCkpIDw8IDE2KSB8ICgoKDY0KSAtICh4KSkg
PDwgMCkpCisjZGVmaW5lIFRDUl9JUkdOX1dCV0EgICAgICAgKCgoMSkgPDwgOCkgfCAoKDEpIDw8
IDI0KSkKKyNkZWZpbmUgVENSX09SR05fV0JXQSAgICAgICAoKCgxKSA8PCAxMCkgfCAoKDEpIDw8
IDI2KSkKKyNkZWZpbmUgVENSX1NIQVJFRCAgICAgICAgICAoKCgzKSA8PCAxMikgfCAoKDMpIDw8
IDI4KSkKKyNkZWZpbmUgVENSX0FTSUQxNiAgICAgICAgICAoKDEpIDw8IDM2KQorI2RlZmluZSBU
Q1JfSVBTXzQ4QklUICAgICAgICgoNSkgPDwgMzIpCisjZGVmaW5lIFRDUl9URzFfNEsgICAgICAg
ICAgKCgyKSA8PCAzMCkKKyNkZWZpbmUgVENSX0VQRDAgICAgICAgICAgICAoMSA8PCA3KQorCisv
KiBNYXggdmlydHVhbCBhZGRyZXNzICovCisjZGVmaW5lCVZNX01BWF9BRERSRVNTICAgICAgKDB4
ZmZmZmZmZmZmZmZmZmZmZikKKworLyogTnVtYmVyIG9mIHZpcnR1YWwgYWRkcmVzcyBiaXRzICov
CisjZGVmaW5lIFZBX0JJVFMgICAgICAgICAgICAgNDgKKworLyoKKyAqIE1lbW9yeSB0eXBlcyBh
dmFpbGFibGUuCisgKi8KKyNkZWZpbmUgTUVNX0RFVklDRV9uR25SbkUgICAgMAorI2RlZmluZSBN
RU1fREVWSUNFX25HblJFICAgICAxCisjZGVmaW5lIE1FTV9ERVZJQ0VfR1JFICAgICAgIDIKKyNk
ZWZpbmUgTUVNX05PUk1BTF9OQyAgICAgICAgMworI2RlZmluZSBNRU1fTk9STUFMICAgICAgICAg
ICA0CisKKyNkZWZpbmUgU0VUX01BSVIoYXR0ciwgbXQpICAoKGF0dHIpIDw8ICgobXQpICogOCkp
CisKKy8qIFNDVExSX0VMMSAtIFN5c3RlbSBDb250cm9sIFJlZ2lzdGVyICovCisjZGVmaW5lIFND
VExSX00gICAgICAgICAgICAgKDEgPDwgMCkKKyNkZWZpbmUgU0NUTFJfQyAgICAgICAgICAgICAo
MSA8PCAyKQorI2RlZmluZSBTQ1RMUl9JICAgICAgICAgICAgICgxIDw8IDEyKQorCisvKiBMZXZl
bCAwIHRhYmxlLCA1MTJHaUIgcGVyIGVudHJ5ICovCisjZGVmaW5lIEwwX1NISUZUICAgICAgICAg
ICAgMzkKKyNkZWZpbmUgTDBfU0laRSAgICAgICAgICAgICAoMVVMIDw8IEwwX1NISUZUKQorI2Rl
ZmluZSBMMF9JTlZBTCAgICAgICAgICAgIDB4MCAvKiBBbiBpbnZhbGlkIGFkZHJlc3MgKi8KKyNk
ZWZpbmUgTDBfVEFCTEUgICAgICAgICAgICAweDMgLyogQSBuZXh0LWxldmVsIHRhYmxlICovCisK
Ky8qIExldmVsIDEgdGFibGUsIDFHaUIgcGVyIGVudHJ5ICovCisjZGVmaW5lIEwxX1NISUZUICAg
ICAgICAgICAgMzAKKyNkZWZpbmUgTDFfU0laRSAgICAgICAgICAgICAoMSA8PCBMMV9TSElGVCkK
KyNkZWZpbmUgTDFfT0ZGU0VUICAgICAgICAgICAoTDFfU0laRSAtIDEpCisjZGVmaW5lIEwxX0lO
VkFMICAgICAgICAgICAgTDBfSU5WQUwKKyNkZWZpbmUgTDFfQkxPQ0sgICAgICAgICAgICAweDEK
KyNkZWZpbmUgTDFfVEFCTEUgICAgICAgICAgICBMMF9UQUJMRQorI2RlZmluZSBMMV9NQVNLICAg
ICAgICAgICAgICh+KEwxX1NJWkUtMSkpCisKKy8qIExldmVsIDIgdGFibGUsIDJNaUIgcGVyIGVu
dHJ5ICovCisjZGVmaW5lIEwyX1NISUZUICAgICAgICAgICAgMjEKKyNkZWZpbmUgTDJfU0laRSAg
ICAgICAgICAgICAoMSA8PCBMMl9TSElGVCkKKyNkZWZpbmUgTDJfT0ZGU0VUICAgICAgICAgICAo
TDJfU0laRSAtIDEpCisjZGVmaW5lIEwyX0lOVkFMICAgICAgICAgICAgTDBfSU5WQUwKKyNkZWZp
bmUgTDJfQkxPQ0sgICAgICAgICAgICBMMV9CTE9DSworI2RlZmluZSBMMl9UQUJMRSAgICAgICAg
ICAgIEwwX1RBQkxFCisjZGVmaW5lIEwyX01BU0sgICAgICAgICAgICAgKH4oTDJfU0laRS0xKSkK
KworLyogTGV2ZWwgMyB0YWJsZSwgNEtpQiBwZXIgZW50cnkgKi8KKyNkZWZpbmUgTDNfU0hJRlQg
ICAgICAgICAgICAxMgorI2RlZmluZSBMM19TSVpFICAgICAgICAgICAgICgxIDw8IEwzX1NISUZU
KQorI2RlZmluZSBMM19PRkZTRVQgICAgICAgICAgIChMM19TSVpFIC0gMSkKKyNkZWZpbmUgTDNf
SU5WQUwgICAgICAgICAgICAweDAKKyNkZWZpbmUgTDNfUEFHRSAgICAgICAgICAgICAweDMKKyNk
ZWZpbmUgTDNfTUFTSyAgICAgICAgICAgICAofihMM19TSVpFLTEpKQorCisjZGVmaW5lIExuX0VO
VFJJRVMgICAgICAgICAgKDEgPDwgOSkKKyNkZWZpbmUgTG5fQUREUl9NQVNLICAgICAgICAoTG5f
RU5UUklFUyAtIDEpCisKKyNkZWZpbmUgQVRUUl9NQVNLX0wgICAgICAgICAweGZmZgorCisjZGVm
aW5lIGwwX3BndF9pZHgodmEpICAgICAgKCgodmEpID4+IEwwX1NISUZUKSAmIExuX0FERFJfTUFT
SykKKyNkZWZpbmUgbDFfcGd0X2lkeCh2YSkgICAgICAoKCh2YSkgPj4gTDFfU0hJRlQpICYgTG5f
QUREUl9NQVNLKQorI2RlZmluZSBsMl9wZ3RfaWR4KHZhKSAgICAgICgoKHZhKSA+PiBMMl9TSElG
VCkgJiBMbl9BRERSX01BU0spCisjZGVmaW5lIGwzX3BndF9pZHgodmEpICAgICAgKCgodmEpID4+
IEwzX1NISUZUKSAmIExuX0FERFJfTUFTSykKKworLyoKKyAqIExvd2VyIGF0dHJpYnV0ZXMgZmll
bGRzIGluIFN0YWdlIDEgVk1TQXY4LUEgQmxvY2sgYW5kIFBhZ2UgZGVzY3JpcHRvcgorICovCisj
ZGVmaW5lIEFUVFJfbkcgICAgICAgICAgICAoMSA8PCAxMSkKKyNkZWZpbmUgQVRUUl9BRiAgICAg
ICAgICAgICgxIDw8IDEwKQorI2RlZmluZSBBVFRSX1NIKHgpICAgICAgICAgKCh4KSA8PCA4KQor
I2RlZmluZSBBVFRSX1NIX01BU0sgICAgICAgQVRUUl9TSCgzKQorI2RlZmluZSBBVFRSX1NIX05T
ICAgICAgICAgMCAgICAgICAgICAgICAgIC8qIE5vbi1zaGFyZWFibGUgKi8KKyNkZWZpbmUgQVRU
Ul9TSF9PUyAgICAgICAgIDIgICAgICAgICAgICAgICAvKiBPdXRlci1zaGFyZWFibGUgKi8KKyNk
ZWZpbmUgQVRUUl9TSF9JUyAgICAgICAgIDMgICAgICAgICAgICAgICAvKiBJbm5lci1zaGFyZWFi
bGUgKi8KKyNkZWZpbmUgQVRUUl9BUF9SV19CSVQgICAgICgxIDw8IDcpCisjZGVmaW5lIEFUVFJf
QVAoeCkgICAgICAgICAoKHgpIDw8IDYpCisjZGVmaW5lIEFUVFJfQVBfTUFTSyAgICAgICBBVFRS
X0FQKDMpCisjZGVmaW5lIEFUVFJfQVBfUlcgICAgICAgICAoMCA8PCAxKQorI2RlZmluZSBBVFRS
X0FQX1JPICAgICAgICAgKDEgPDwgMSkKKyNkZWZpbmUgQVRUUl9BUF9VU0VSICAgICAgICgxIDw8
IDApCisjZGVmaW5lIEFUVFJfTlMgICAgICAgICAgICAoMSA8PCA1KQorI2RlZmluZSBBVFRSX0lE
WCh4KSAgICAgICAgKCh4KSA8PCAyKQorI2RlZmluZSBBVFRSX0lEWF9NQVNLICAgICAgKDcgPDwg
MikKKworI2RlZmluZSBNRU1fREVGX0FUVFIgICAgICAgKEFUVFJfQUZ8QVRUUl9TSChBVFRSX1NI
X0lTKXxBVFRSX0lEWChNRU1fTk9STUFMKSkKKyNkZWZpbmUgTUVNX05DX0FUVFIgICAgICAgIChB
VFRSX0FGfEFUVFJfU0goQVRUUl9TSF9JUyl8QVRUUl9JRFgoTUVNX05PUk1BTF9OQykpCisjZGVm
aW5lIE1FTV9ERVZfQVRUUiAgICAgICAoQVRUUl9BRnxBVFRSX1NIKEFUVFJfU0hfSVMpfEFUVFJf
SURYKE1FTV9ERVZJQ0VfbkduUm5FKSkKKworI2RlZmluZSBNRU1fUk9fQVRUUiAgICAgICAgKE1F
TV9ERUZfQVRUUnxBVFRSX0FQKEFUVFJfQVBfUk8pKQorCisjZGVmaW5lIFBUX1BUICAgICAgICAg
ICAgICAoTDBfVEFCTEUpCisjZGVmaW5lIFBUX01FTSAgICAgICAgICAgICAoTUVNX0RFRl9BVFRS
IHwgTDFfQkxPQ0spCisKKyNlbmRpZgotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlv
cy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3Jn
L21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:30 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhi-00030X-0I; Mon, 16 Apr 2018 06:33:30 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhg-00030G-MW
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:28 +0000
X-Inumbo-ID: f0a869a7-413f-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::61b])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id f0a869a7-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:31 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=/9ZW1uD5VbM6PlqNyawZ0YH5D1SExqvVDVYkbX7BZvY=;
 b=fk1cqPc2xZTUhkxKkULqMclNXDIm9smAfQNHOHz1jrov6gaQja+QWTjCD9yho0pL5nTVJ4OuUuFh17brbToJClM+25XLe769Gl+43EZuH82ArXdSTe/QTlUiM6vfvH0oGPrAyjYT+8JIPcNZ4QdIHcxQ1N1KecWBc5kjphZA2SE=
Received: from DB5PR08CA0016.eurprd08.prod.outlook.com
 (2a01:111:e400:52c3::26) by AM5PR0802MB2420.eurprd08.prod.outlook.com
 (2603:10a6:203:9f::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.9; Mon, 16 Apr
 2018 06:33:20 +0000
Received: from VE1EUR03FT004.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::208) by DB5PR08CA0016.outlook.office365.com
 (2a01:111:e400:52c3::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:19 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT004.mail.protection.outlook.com (10.152.18.106) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:19 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:04 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:47 +0000
Message-ID: <1523860343-16382-8-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(346002)(396003)(376002)(39850400004)(2980300002)(438002)(199004)(189003)(2351001)(6666003)(26826003)(6916009)(72206003)(106466001)(8936002)(36756003)(8676002)(4326008)(316002)(50226002)(39060400002)(478600001)(5660300001)(76176011)(26005)(77096007)(356003)(50466002)(48376002)(51416003)(7696005)(305945005)(446003)(11346002)(336012)(476003)(2616005)(426003)(486006)(186003)(126002)(104016004)(86362001)(246002)(2906002)(54906003)(47776003)(8666007)(16586007)(106002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0802MB2420; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT004;
 1:mbsuLuQ+/K+O/zFvvL+9W6dnzJzw0k9HZIteO1qypJzKJ1IqQSV0WsIaHhn51O1Ph7ZMsIY/vfRho5dRO+O0KiChBl8tBxRGdTGYRCkK25AkxymRmDuThmy3Xi3TGeBc
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM5PR0802MB2420; 
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 3:yYA87L7LTkvTGLQdXBA6PAvLyHxSeA/ay5E3thCNmu7cxQOJOPv3zLMlvBQvCLh8WOxjHdUSQyw06nXMc3cGoLJnQvSHHTdUnWOD5yIOOn1TY/+PsaNDSNfZIyb4RxAj+rvzMkBXUYHTYJ9xYtWprYJrweCwzGpJiKW8i21ruK8282zuS95N9S/duN64wCKr2oemi7CTwV4fnwKQX6sXCdzzE6kvDSg88IRAK0nmnDZ3wggZrP8l1Jh1OyGgRDkUfQtJN/KhICuh8YhZSbfWU+BROfXjQu8CnhEkYZjI3LS/UPymDq+ucf9qkoRf+/vfb9Cy4f8xhjPoP7hNcz93lyy2wejK32dSBeHezVRj5+k=;
 25:Yx0zM1CEG+d/FQfz9usdhsMTcDj8uyqJnhv5iBDj7zdR6RUgW3s3cIGDW+imUgXPBcMjb7i3JF3qvY26L2wkBzKupMzGDK8mWFcV0jTRHSHuFhwPfmotJTzhquoEsGn5QYQMclZHnryUfX7pNNJ8Sh0r3yvBfQbUADxoud/VkbDS29ZCaGmwky156kwSX1pRaF6q5IE01EsW71cEye7olgUgKzqNTCI5qKSdYHfk7KcLuBVJgcBPO3bcMedKZQSwpcPDk1acedFXwvm9yhmg1GJo6V0oW7fNYr1rWwkshOxGWWUeXqeQbV+FDkvw0FHMspUVzIz1egB5u5vmWIA5jA==
X-MS-TrafficTypeDiagnostic: AM5PR0802MB2420:
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 31:kE8Xt5sl+rFLUSeTKE2a1PMWRUYR+OGVwszELN1my+8duW//iS0qzQ9NQRaH0kvB7h6D/NKnzN7opyRrUNKsJQNLMgifGB0I4GGyBtEgBajKeuAsw08u+5WeWn3zpdcvEzpOTd/D5fkoXH9hYjN0k4LC8eAT1yuNoqM+fbE+XSIeP2ncy3Bhu3x3sRAHwQc5oBpZ44VwOdQCCMxaG0rKack4gOGhSzTUu2XL9sN0mic=;
 20:7Qe9B4OyHeaAOxTr6IzPozUCL4joRMX0gabYnUklGN2pDF17nB1AVBmKgICvonCX78xBMOq3HxJm9Bp+k1dQlZtWcCWtjlxKERu/qjhy1UuekVXfcHRQVNErlkYL1iAycz7fWLEMQ6uhU3eT2mOqZ8+PC9yJmEgZHWH79UCa4j8DNvx5CoQSKG+6fYzfgyyzwUvkgIIUCGN+dqaaEtnwkXuhrF7Ed1NsttfJI2vQEdQ277Yn4aNar6DeU6FfWzRn;
 4:QhKKwm9aU4zYz//GvoaGoMi72VR6nLa4xA2AaAsIV9lOP26oqGUbLQEGp3ZuB2/1PN2V+FvqU5UEpCczaEkYy0Y6NfFkFFPLYSoy2xr/0LDXIu9NPP222jWbYHXYcYWQMZdv32XkteCDiHZDGwpgt1e1rDM4hzvd3qZFwr41PWVl/wzHXmbnuuAaSuItzBHapRKMER84Hqxo6J3garSdeV27+34bGB3MTHpR4J6XcpgmfGD+xKHZc2mVUd6Rh2PgtcY+PhU0EELUxzUTmGulyRg0wBxflx8w2F8R8GUHVAJ/fkFu/lhf4GgmQuqIwmt3
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM5PR0802MB24208A9EDBBCEC8A3F60A4F584B00@AM5PR0802MB2420.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(3002001)(10201501046)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:AM5PR0802MB2420; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0802MB2420; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM5PR0802MB2420;
 23:95hGSKKdPSiPldcbd+NCT1Ly2L6XySmAt/NA3gc?=
 =?us-ascii?Q?AQj452UDi/hs6m6iAK/P9Ohxrj+Tn/7W0Ii0oRjzhBkH9x48i2Q5kQ4UODGT?=
 =?us-ascii?Q?YIMd/ryB1zCRl1DpkLBH61riAeQyUrbtKgBWJJ0N/XFcTFv0r3DmmqdZsF2F?=
 =?us-ascii?Q?U+QjfbWLlTy7WkTMSSodjk3zV7TlrTSgriIOdIFnwmGEIobiTYj9f1d43I5p?=
 =?us-ascii?Q?nWZs9sbvmJIeACtf+cJl1BqWuPalP3dv+0p/TXo/C+4Hl/yKpn74o/Gsm7Wf?=
 =?us-ascii?Q?o1bdbqsnun/iI/FTLEHIY5DsKlM65PcBHhpvYjHJeY2l6bKVrTV6BcxyQtNK?=
 =?us-ascii?Q?ay/ClrPyJmlnklbEt0BQFxABwxymuneLVmge3Wc98xS+8KKFi6Ejj8H0tMqO?=
 =?us-ascii?Q?Sxf/rYddQJ8pImdOwaOEXjwZf8cDiMNIJGuEvVfrYNCbHg8gGctDtDSoadYP?=
 =?us-ascii?Q?9KbwQoEf2vsF+UXyeycHK6Hzp5EjHy1cZCznU6dYgnU8mW1gSlaK1Y5kNHXZ?=
 =?us-ascii?Q?0tXFgpnW/ejPnVcJ/za0UQedh2MQcMnjiR0KXjYJtsVl6+KwTT9Snk8+5oAP?=
 =?us-ascii?Q?XmzRAZvFqG99VLi8LM02AY1REQyw+j9SpMOygcHsj/TuNblQwnJstQbS44Lc?=
 =?us-ascii?Q?rO+sQltdPzYTCqzGlkT6HitrZf9Sp0wws/X2jIVG39gsPbrISFBVMoP2jF+p?=
 =?us-ascii?Q?A/4q+Weo97cC99B6TkovdV9cgBWaJf2p3B9NtTozPmiC0p2z6GDT2+/HnJxL?=
 =?us-ascii?Q?+GnqTsWm/sSpbNCdqbQz5ei4TLr+VnleB0TwmMk0ZrXqHpek/38yyhILjJCZ?=
 =?us-ascii?Q?1pIcCVfeSdy96GLHxwOE8Fn+XtDMGjt0x614LsDkRvBRhF8l5ighxW+72NAg?=
 =?us-ascii?Q?zfcmGXyPveQmDy93PKEpiKAVj9d/Kds9A73BRDcDFmJkt2rxuh1wTS69uvAL?=
 =?us-ascii?Q?7okYLdzGuVea/SGU1Ih/lHLiluwOsJpoVXoNH1UThOc0dQAkH4Xf38Rs8KNT?=
 =?us-ascii?Q?l1X0xvrUSXOKzvVt2Fa9QJmEXdi5dBQS0KweaIHjCEb6LDOPxExaQTVKRzgN?=
 =?us-ascii?Q?tgUhnSusYEZmWerEkjImUXGTgmiPdirkuO9cxELs902l63h5j67+kxtuYbH0?=
 =?us-ascii?Q?Ph1Y2ZGk+wx2LzPLF3GzKMbXG4SQKTgRL?=
X-Microsoft-Antispam-Message-Info: VBxfgTv5fGDSdtFbhEMMZWUXBBqhr4cfVbvQ82vZaORs7fNW0NQgmItD6mlX2UXt1fV/9CS4OQ/tCNS7ZelzMrjqSCGOjkelP0u6DHt7oF67vW/ZaJ+4BfpsnZOqQHST0fKYOe6O4HMC3qgUEYAvCUU4C4FE31M4cKWBxtLtRG0yZ33l3oqhUwOX+mB9yfL83hlCDUfR/XGUxXqdGg2D6Wy5qxqcZ7r3ZT4Xhq3LZGp5bNCoTmDDkmdkg2Eb7BQoIV55SVJpCCL8az4MPZNNpsa84ys8XN5LqeFpEcucoEqbV1fktNaBrAg5Ma6QohXkgAD/25S3OJKOn+9W3b1vGN/S9HAmeDvsa7l5eTw61NtbJXxr0uuyZYyLV1IkG/xNBcGF2yGZnojNkhdme/lPiv/WdP9jEpfx6c0BxnPMLEs=
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 6:kc9SZPFqteINZBUX4jptsZXjWXZxsht6dIVVfg8HqWjHjbUx8fL8Kk5MjE/HUQV4L1GLoj9BwVdAauGjAqgHfYiFU7v68O+q0mlyFDPL57pZktrnQ3aVtjTwVj8h949EAYEUHh++i+8n6KR3iKbrDwqmbPOdjGc8rw0He4XVHLFk2P0a6jIZSZkKwtPNeEQMJaosmPX549XjyVOg+xXARG6d5eaMam5CfuLa+YawAUQcS7jznV3NNs/zNH3EscuZN6N24p+SAfeSlez9YgsofqIAfgTJLE/QVO2USe1ivb0Zq61UDeV7W4Pz75qG8X4yzSs97qy3sUcCH41w+ld+WUB+NZZ5RPhv8QRgoP8M7wpCE7CwtMatmTq9OyHcQL6po53CvvpUunvAecI6FzymUclEUpjEW6Q2eh3AAgy/IGSvsjiBgwgSkbMVbpl67hxEAcBtCzmyXFpd7LqVlF1PnHLDGAg3gypTemvyp0KdVi5yEqo+pTE4fk2AEp2LT36G;
 5:pNk3dVd2FI5xiiuZROiie3Wk4EBAHjwLxB4Ks8RLFErThR/1FYQmb8LBpwSwxHGX/DdPyo6KYgMR35G6UWeAw130X0NrHkfAvkEjpXrfEW+7L4aH94rcJ3ANrPB0pTIYMAlkTlpK+VvsJcG5unNgY8pm/BcgBx93i3byIFmN+tc=;
 24:kGi0vjXzjL1GbIt09oXrKuvHkGE99Cm7ql+OXkYwlrZXa433i1RG6Q1ckQSZdw6tkH/iNIwYYyuPOTVNQl4uYtCpxFWzyEKQeQRgT5y1pJQ=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 7:iOSoHnZzE7HczBJwl4eP2HH0pENKyo/GN9cOcxFe0W6lHZbqy99WNsE1qDsN1sGHRCqlDoTlr15ZcJkayVfxrqt7bLjiKzMOIzZCW7GJWvP+rNHCqcQZwquJgG5Zpj7JPd7gaqqhYzxBnZLbyBzfkOu18CEsptSNIGqHXpbpPtvUTN2KI6zOzNOdQsIw2oLQGqrQZgM0862s1PNy6UApe+aSPCZNFSCIu8X7m1kbfl/WGswTXk0+XCrRQSYi9Lxe
X-MS-Office365-Filtering-Correlation-Id: 634156e7-2540-4ad7-1b79-08d5a363f1c7
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:19.3545 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 634156e7-2540-4ad7-1b79-08d5a363f1c7
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2420
Subject: [Minios-devel] [PATCH v3 07/43] arm64: change
 physical_address_offset to paddr_t
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlICJ1aW50MzJfdCIgaXMgbm90IGVub3VnaCBmb3IgYXJtNjQgY29kZSwKVGhpcyBwYXRjaCBj
aGFuZ2VzIGl0IHRvIHBhZGRyX3QsIGFuZCBhbHNvIGZpeGVzIHRoZSBwcmludCBmb3JtYXQuCgpT
aWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgotLS0KIGFy
Y2gvYXJtL21tLmMgICAgICAgICB8IDIgKy0KIGFyY2gvYXJtL3NldHVwLmMgICAgICB8IDQgKyst
LQogaW5jbHVkZS9hcm0vYXJjaF9tbS5oIHwgNSArKysrLQogMyBmaWxlcyBjaGFuZ2VkLCA3IGlu
c2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbW0uYyBi
L2FyY2gvYXJtL21tLmMKaW5kZXggZjgwNmM5Zi4uM2Q4OGQzYiAxMDA2NDQKLS0tIGEvYXJjaC9h
cm0vbW0uYworKysgYi9hcmNoL2FybS9tbS5jCkBAIC02LDcgKzYsNyBAQAogI2luY2x1ZGUgPGxp
YmZkdC5oPgogI2luY2x1ZGUgPGxpYi5oPgogCi11aW50MzJfdCBwaHlzaWNhbF9hZGRyZXNzX29m
ZnNldDsKK3BhZGRyX3QgcGh5c2ljYWxfYWRkcmVzc19vZmZzZXQ7CiBzdHJ1Y3QgZTgyMGVudHJ5
IGU4MjBfbWFwWzFdID0gewogICAgIHsKICAgICAgICAgLmFkZHIgPSAwLApkaWZmIC0tZ2l0IGEv
YXJjaC9hcm0vc2V0dXAuYyBiL2FyY2gvYXJtL3NldHVwLmMKaW5kZXggYjY1MDIzYy4uMjdiZWE0
YSAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vc2V0dXAuYworKysgYi9hcmNoL2FybS9zZXR1cC5jCkBA
IC0xOSw3ICsxOSw3IEBAIHZvaWQgKmRldmljZV90cmVlOwogLyoKICAqIElOSVRJQUwgQyBFTlRS
WSBQT0lOVC4KICAqLwotdm9pZCBhcmNoX2luaXQodm9pZCAqZHRiX3BvaW50ZXIsIHVpbnQzMl90
IHBoeXNpY2FsX29mZnNldCkKK3ZvaWQgYXJjaF9pbml0KHZvaWQgKmR0Yl9wb2ludGVyLCBwYWRk
cl90IHBoeXNpY2FsX29mZnNldCkKIHsKICAgICBpbnQgcjsKIApAQCAtMjcsNyArMjcsNyBAQCB2
b2lkIGFyY2hfaW5pdCh2b2lkICpkdGJfcG9pbnRlciwgdWludDMyX3QgcGh5c2ljYWxfb2Zmc2V0
KQogCiAgICAgcGh5c2ljYWxfYWRkcmVzc19vZmZzZXQgPSBwaHlzaWNhbF9vZmZzZXQ7CiAKLSAg
ICB4cHJpbnRrKCJWaXJ0dWFsIC0+IHBoeXNpY2FsIG9mZnNldCA9ICV4XG4iLCBwaHlzaWNhbF9h
ZGRyZXNzX29mZnNldCk7CisgICAgeHByaW50aygiVmlydHVhbCAtPiBwaHlzaWNhbCBvZmZzZXQg
PSAlIlBSSXBhZGRyIiBcbiIsIHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KTsKIAogICAgIHhwcmlu
dGsoIkNoZWNraW5nIERUQiBhdCAlcC4uLlxuIiwgZHRiX3BvaW50ZXIpOwogCmRpZmYgLS1naXQg
YS9pbmNsdWRlL2FybS9hcmNoX21tLmggYi9pbmNsdWRlL2FybS9hcmNoX21tLmgKaW5kZXggYzg5
ZDFhYS4uYzY2ODU2YyAxMDA2NDQKLS0tIGEvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCisrKyBiL2lu
Y2x1ZGUvYXJtL2FyY2hfbW0uaApAQCAtMiwxMSArMiwxNCBAQAogI2RlZmluZSBfQVJDSF9NTV9I
XwogCiB0eXBlZGVmIHVpbnQ2NF90IHBhZGRyX3Q7CisjZGVmaW5lIFBSSXBhZGRyICJseCIKIAog
ZXh0ZXJuIGNoYXIgX3RleHQsIF9ldGV4dCwgX2Vyb2RhdGEsIF9lZGF0YSwgX2VuZCwgX19ic3Nf
c3RhcnQ7CiBleHRlcm4gaW50IF9ib290X3N0YWNrW107CiBleHRlcm4gaW50IF9ib290X3N0YWNr
X2VuZFtdOwotZXh0ZXJuIHVpbnQzMl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0OwkvKiBBZGQg
dGhpcyB0byBhIHZpcnR1YWwgYWRkcmVzcyB0byBnZXQgdGhlIHBoeXNpY2FsIGFkZHJlc3MgKHdy
YXBzIGF0IDRHQikgKi8KKworLyogQWRkIHRoaXMgdG8gYSB2aXJ0dWFsIGFkZHJlc3MgdG8gZ2V0
IHRoZSBwaHlzaWNhbCBhZGRyZXNzICovCitleHRlcm4gcGFkZHJfdCBwaHlzaWNhbF9hZGRyZXNz
X29mZnNldDsKIAogI2luY2x1ZGUgPHBhZ2VfZGVmLmg+CiAKLS0gCjIuNy40CgoKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxp
bmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54
ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:31 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhj-000313-2k; Mon, 16 Apr 2018 06:33:31 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhh-00030R-Ss
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:29 +0000
X-Inumbo-ID: f149b4ce-413f-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::600])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id f149b4ce-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:32 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=TE3V5giafU4O8IDSMjIZfICfh0rGVVl3OKvIv4kIOMs=;
 b=bItAtAQvIdY0mtzj7aUgIwC9AMcB2ct6jCSsLEIXzxFrQ28XCtr79LX+NhHtaJv7TA6pOB6CrtQa4KdrRz1LtqVSeQKyjBbGgs+MRL8piW/+mJEflxcaRtDojOeRtpRJzstKDZ+pM3Lk7hJpczlBGIOKAi8MZrtdojaODjOwDIY=
Received: from VI1PR0802CA0030.eurprd08.prod.outlook.com
 (2603:10a6:800:a9::16) by AM5PR0802MB2419.eurprd08.prod.outlook.com
 (2603:10a6:203:9f::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 06:33:22 +0000
Received: from VE1EUR03FT044.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by VI1PR0802CA0030.outlook.office365.com
 (2603:10a6:800:a9::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:22 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT044.mail.protection.outlook.com (10.152.19.106) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:21 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:08 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:48 +0000
Message-ID: <1523860343-16382-9-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(39850400004)(376002)(346002)(39380400002)(2980300002)(438002)(189003)(199004)(50466002)(86362001)(11346002)(476003)(2616005)(305945005)(104016004)(48376002)(356003)(54906003)(106002)(7696005)(26005)(246002)(5660300001)(8676002)(426003)(106466001)(50226002)(336012)(316002)(486006)(126002)(446003)(8936002)(16586007)(77096007)(2906002)(39060400002)(8666007)(4326008)(6666003)(186003)(2351001)(72206003)(6916009)(36756003)(47776003)(76176011)(478600001)(51416003)(26826003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0802MB2419; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT044;
 1:vnBDG1CN2FPTH2JQ63fqN8l76QUnmSYGELCu2MazN3gViW7KX7Tffum0oMwVvVoAUdOmlIl6tdAWWY2mI+Fai9aoWEaHB1e+qgZfpHFG/hDrcNo26y5QsVNAHthsxqUp
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM5PR0802MB2419; 
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2419;
 3:as/dYrSDeGrIt55+mhTzJVNUC5k0o5rG+2gyu/eFF68SOEky+vhPsnzdEEqkWotiGtO2yopo16KERSfZogUIiPHlQdkfNhXQp+A9iSNjnz4DVRnVIzAWobKKFu/4qECTMnfToZLQggnJtfZ8w4l5c8fdkGs9qKwlKZ1eosmcFFPk3EhdSUocBIkzdruNxrIZ/gNxHdjTW2PmsK5xDdcj9bbzBQnBCovaPpF413YNPNu08t0iOo/IyAwgrf0XquL4mjqstHLxSEdual7wYaZpPloUQHvZ34D6Wx8HuYmmZzcQ7jRulXOJczOaVCuG6iUIoeJsjer+d961V0JcgQzSUuX/YKTw0ln3epz3UU565bE=;
 25:Y/G3jGx6fOsHQvSVEFkU4qYiinF0PfFYHySVSlyToDEkQLjigZ3HJoIr/fxwSdhS+H+HjirbDwW3JtQgTO2LdckL40euh+6zlEG5KvG2AAqdp9YmMORc/BnrEd8O0CGcdau9bUX76vYkYNZqQiQrbcNbqHXOIPTS9XTceR4Z7TPhN6PVmQakZj1oz6xHdgv7si12aGVD0vXAo5NAxDl8WUpHSBzuQS6hmYwkLDm0Z1bsj1WcvN09rIFPwFluKiPm3ReMYUJkwjw+YiRi2zMrE0WCk6g7di1+8dp2cMCf8V9/aIXPISDgpTHelEXNxv03qYLI7gjWNLklUA2cQx3U9g==
X-MS-TrafficTypeDiagnostic: AM5PR0802MB2419:
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2419;
 31:E6qKcyYWBDVnvuDOAjrF8htKn9l0x0NClofr9uCdl5pEqLBbZHYW/hSwr1EfOdX0kjA/svZgauj44uEa8MOCMjdb3la0Ko5WkFbtbFBqMzrTsods8AkZJjcLg8r31PlUf333ducRnAO4W0DynfiOHUnyTjMtlkkcqVUXQqWjtJyPLHmmZ/kEnC5Bn5g5GvhAfLC39JDBAlO4Ttz+0FYTNifL5I41/FzXOEP0AHeNR/w=;
 20:IocRKRxw/j213TGuwnPCVObl20iiHgYoax5G1SVAWT20fOACLw4nPgUGsRzakMRjD4XB7cNyZ+uJBoai+4tYmtXJfFAHaV1nPONLZj5O3hBVqB87MGpwA3AscOql3x1c3EIPiyOVrlpynafqfoE8HRZQS4Sb5/n8nuZkutQPGbFcecBZ1rZuQXqYHCZnJvaoWUSv7t3Wu0qKIgBKenfPtSrW8MgdKB/adahB+dn4KygkJ2Ns2pZB9m1itWaKcLix;
 4:K2qREVW4b2GFSM0b+XtcqkSQTTcTkIGTsktN/0B2dIg6NyelgXzbUgYoTEIDtILz+hzNI+TbEFJT3PZozikKaj6Zj3CymR8FyQ4UYQ7/owjZXJSHL6Dk+2WNXjbBRtLF2tV6T+mCUJ4kTtU3pZhPajEWw6DmOTzW1oM3p7UwsgARuX02/r1R9x9G3P45qCDLBGZiZESg7g6KoM4ite1ES7x0BHAeDiWRL2Z/HJwdAsvfplA6B46FuPTKFxv3n9mIr1xzNXDtHGTrkF9ex9RjU/mbTeDBztl4tMnn+1Y3/N86blpFlNn2TiAptnGajBay
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM5PR0802MB2419FDDD1BA29726699064D884B00@AM5PR0802MB2419.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(3002001)(10201501046)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:AM5PR0802MB2419; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0802MB2419; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM5PR0802MB2419;
 23:MgDuSn1f0vnpeT7zxywrePX01e0eGVHFgNoNQw0?=
 =?us-ascii?Q?NKxWRz8bbA7r+BWVwshePR9r26Xxb3ob2gMQZNtvX5s1FIJpcsIS9sFe3Z8J?=
 =?us-ascii?Q?YUbvX/1wXYTZRWjPc5327dgoeYhGysn1dyYvScOlH8Es0ArPVREMatjRrOVp?=
 =?us-ascii?Q?XhsF6v10ipCBPa6uKboyiA6dzvVvNvmT2+/vU+RBqetCOfZpgyFvcs8VSqBn?=
 =?us-ascii?Q?UwQxWBQBIVAy/GwoBMSXJz3f/EjCu0w8CrdL+vz83rrYg13NGYBRwxCv2afs?=
 =?us-ascii?Q?OvjCDi+3jXVRh6KthxoJ6as3eMvirC+JmhRvUGuF7UDqJ9q1hmaoaKkDy9Qn?=
 =?us-ascii?Q?ne2KIQ9EJY98v2iJvTLSQq6LfBVxTj92krzY/+XP/hWWbFUqKUGUmrUjbV9I?=
 =?us-ascii?Q?9ekcYvepTXUd0UebLbWNXgE/Yqw4MYRafbAmsJ7VE42vDpEXwX62Y5a9/gvx?=
 =?us-ascii?Q?RNw3kAxH2e9JM2gQYUZlCQrIGMivhPqXR8VODLKAC1Jkk4EJdMW2Pb/6JUWW?=
 =?us-ascii?Q?h7RAR6aoOcwqmt+5BKirnQpX8656x7Bv48dbBBkpE2R7G7vbBOwUs/OeefQe?=
 =?us-ascii?Q?WfZyooESOCtvOxwrj2SV2Mp/YNO8QQBEJlLL/qcGlE/ITkK6jUjHd8IY7aBZ?=
 =?us-ascii?Q?/Yl4h2eTpwZ8vCVnmU6jYY3YFGOrqN2pp7DuHlY4YiNYNeLa+hrkj/HHkYBl?=
 =?us-ascii?Q?NueuFTY56HYz0XpEw1N67On1fWyI2vfHjEmuJcQ483v9nicBdh3x8ZWwvRRq?=
 =?us-ascii?Q?LfU3GKWqLlPQbNFICgGDsDGG87CiYmtS9IeJ7nVHZDtxHVO5MS/061jqbqPx?=
 =?us-ascii?Q?2OHDDiEUnfcD/zc2gKdhqxSiumeEbPdb0K3xyjh0+4v+cWpy8Q658ERFiB0G?=
 =?us-ascii?Q?Nt7fzua9jBzP45bwogJRwKnKjAfcSvoevNPmCeG3AinAKC+bEwslBNrzC0eh?=
 =?us-ascii?Q?yOle/oNGNCSIal9/+9Ex6cZLO+A1W8W6fDr+DHLs1jnCFRIIhQsc9ueUasNa?=
 =?us-ascii?Q?rPJMJPHvLIVcngiJV+I66ZCi4VifWDNL4xYFIXALhnlCKGsLv5lHk6xfYHy4?=
 =?us-ascii?Q?b3XDSkz9hJWjRDXbIDyHxCHf2/7jgDFDN3fcwztg77m5283f6HXp/ArV7S/I?=
 =?us-ascii?Q?MVA/UtCNO+6vLIqSupxzrmOtxgB1Lglp+?=
X-Microsoft-Antispam-Message-Info: kkyy3C83/8pb/pGhB/Q6lJzcF4Tbc7dvkJ9A2P3y5zTPVA9LRUydcsNdu6K1bsTwHT9LrEERJc+1jBW5V80MPeaY6M9JFSyAvbspMi4qrC5fwdicAlI3Z7qPz+z5qmN+qPuNl5j8cdTPzEHr5Ykhfyj8GieQfKYWKVf7/dLIvjzkuBaIROXS2CAJzjiCa2u6cOJ9vNyk1v5NUuhOEGVvydEVUb/u7SaKTpYNX8idxMrTDv3Z77O2bivzNj4FVtCJwgVy+MFIyRo7Wg/x6cYtnyrNvqEUwkFzy+C91T9vcMGcCcCcWUl1ebFPNHHidFfZGDg0I1Wu+QIh+RJMw0FmsNm6WzIH8VWUVmWJQiA1xDBF6yztRpyUBhaQnNzkO7ELfWWIMq2wby91JSpgjkTpI3MmG3SFvrQwBmkmozNoS1w=
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2419;
 6:9QMPp8tVYtKpjHpkwZEk4ECWtp3GiE/dLBwuSqFCbZeG7rOA9Hwv6ehEuHsB5R+hC+Sn6tssBJMTZ8Pmy7mCcOfDe2aLOq56p61XRaVn5iWGQP/HlyWFgMNOC0aozolXmO++98efzhu5GgBj5TCxmadPGemIpbPp9kndMiZAL1vxkU8R5PbasL/3XXxWygTjGt7c9iYekpb/+SpT2UXtyk+LE8/sJLWuAnPFuzBVHHSVFgKwaNvOtzGNjNIGw6VmIfClUoQ1HOigVIVHtio0nibtJhVSYK3aJFnXpKRFCa6BWaHC3qJu2CuLqwr/NP8ffhyY+nRryQFER1M7BlcACNx8hUbYu2e6QAMWR4g8L7pcE/U3/1kjTHInxWHNM+Ju9VdPlpeLtvSr8FAEyPByu5ed3eInKtB/oLJwhAKgSWHGK8e7qc1QULwOp0OlqsOV1AEmZUx1DMU3UkK/LusnsOippObvKwc8EXBl0bbUKtE8f7jJkrFBRLD5UPYhbPmj;
 5:Xom7nsflall1NGuYsc1sfh3764AOViShbK0YgFjDGSssKrV/9F94/yKvpGjXH54VDXG42AU2lA4L+fDsNHzPbhXLlYhLnuPjckmb+wgLYXNBHGrBOZ7AXGs4iy63IH9p4T9tchdzfCc4wyuaUNNWNypWN33rEWVJNfAE3vUnZzQ=;
 24:c7ZJ0+aYJc6qJE7oKstb2QynvQGWbv2QXwoEG8dWbLZb9TWLKgQdpfzVyEYGXfMQNiKD6ONAF6/AeKTBVCQcAOALQB56MzzUY002EdmvU0g=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2419;
 7:KxN3ALgfcwz4IzuFAwKM+3ZwOv/YGbZ5vrvq5uMope+syKk+ooOgsYgP5bM9CvjVpV4onLlZZvgql8nRJDjwEy5JxqtklrLm+h9XX2fJXOZ4ky93bMvw8KOWoW0v0Ms4H3cmpAEwxnoVD5itFxrbF12ElD3hmmAAsyyS485twlIwBRr3UuX+mVIVgMaR9WSnLyLfJPoRkmtQX9eSkNv/aIQ5uYMfUTUX9D0F8gTcq/l0RXOk7ayyAqJBqzZzu3os
X-MS-Office365-Filtering-Correlation-Id: 6f444c81-052e-4b4e-8f7c-08d5a363f331
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:21.7181 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6f444c81-052e-4b4e-8f7c-08d5a363f331
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2419
Subject: [Minios-devel] [PATCH v3 08/43] arm64: fix the wrong mask for
 to_virt/to_phys
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW4gdGhlIGFybTY0LCB0aGUgbWFzayAweGZmZmZmZmZmIHdpbGwgdHJ1bmNhdGUgdGhlIHZhbHVl
LCBhbmQKdG9fdmlydC90b19waHlzIHdpbGwgZ2V0IHdyb25nIHJlc3VsdHMuCgpUaGlzIHBhdGNo
IGZpeGVzIGl0LgoKU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJt
LmNvbT4KLS0tCiBpbmNsdWRlL2FybS9hcmNoX21tLmggfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2Vk
LCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9h
cm0vYXJjaF9tbS5oIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCmluZGV4IGM2Njg1NmMuLmY3N2Ey
MTAgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAorKysgYi9pbmNsdWRlL2FybS9h
cmNoX21tLmgKQEAgLTE1LDggKzE1LDggQEAgZXh0ZXJuIHBhZGRyX3QgcGh5c2ljYWxfYWRkcmVz
c19vZmZzZXQ7CiAKICNkZWZpbmUgREVGX1BBR0VfUFJPVCAgICAgMAogCi0jZGVmaW5lIHRvX3Bo
eXMoeCkgICAgICAgICAgICAgICAgICgoKHBhZGRyX3QpKHgpK3BoeXNpY2FsX2FkZHJlc3Nfb2Zm
c2V0KSAmIDB4ZmZmZmZmZmYpCi0jZGVmaW5lIHRvX3ZpcnQoeCkgICAgICAgICAgICAgICAgICgo
dm9pZCAqKSgoKHgpLXBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KSAmIDB4ZmZmZmZmZmYpKQorI2Rl
ZmluZSB0b19waHlzKHgpICAgICAgICAgICAgICAgICAoKChwYWRkcl90KSh4KStwaHlzaWNhbF9h
ZGRyZXNzX29mZnNldCkgJiAofjBVTCkpCisjZGVmaW5lIHRvX3ZpcnQoeCkgICAgICAgICAgICAg
ICAgICgodm9pZCAqKSgoKHgpLXBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KSAmICh+MFVMKSkpCiAK
ICNkZWZpbmUgUEZOX1VQKHgpICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGxvbmcpKCgoeCkg
KyBQQUdFX1NJWkUtMSkgPj4gUEFHRV9TSElGVCkKICNkZWZpbmUgUEZOX0RPV04oeCkgICAgICAg
ICAgICAgICAgKHVuc2lnbmVkIGxvbmcpKCh4KSA+PiBQQUdFX1NISUZUKQotLSAKMi43LjQKCgpf
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2
ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczov
L2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:35 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhn-000323-4W; Mon, 16 Apr 2018 06:33:35 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhl-00031e-8B
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:33 +0000
X-Inumbo-ID: f399610d-413f-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::623])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id f399610d-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:36 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=nrH3nL7ocs1oihCa3j3zTf3/TYeFdJ7hF/Jr7+rUUOY=;
 b=isp2n6OnFakaXDD28UDnYwzH5ZGhqsEVrNqUEtW9K7nYdv6ThuNv8kBnChIdSGMa9wXtYebygH9hZcFkWVX5892rh61CiKCQ2YULt6HHvdwcVds8qXoV3f6QlArpC1ZmkGrvpdPupeRIZM2D7Y4TLQhkmbdxmyPEvZ0t3eg55mM=
Received: from VI1PR0802CA0026.eurprd08.prod.outlook.com
 (2603:10a6:800:a9::12) by VI1PR0802MB2432.eurprd08.prod.outlook.com
 (2603:10a6:800:bb::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Mon, 16
 Apr 2018 06:33:25 +0000
Received: from VE1EUR03FT044.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::208) by VI1PR0802CA0026.outlook.office365.com
 (2603:10a6:800:a9::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:25 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT044.mail.protection.outlook.com (10.152.19.106) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:25 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:12 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:49 +0000
Message-ID: <1523860343-16382-10-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(39380400002)(376002)(396003)(39850400004)(2980300002)(438002)(189003)(199004)(246002)(4326008)(8666007)(305945005)(356003)(39060400002)(104016004)(47776003)(478600001)(36756003)(8936002)(2351001)(8676002)(106466001)(50226002)(2906002)(6916009)(6666003)(26826003)(72206003)(476003)(11346002)(2616005)(54906003)(126002)(106002)(316002)(426003)(48376002)(86362001)(446003)(50466002)(77096007)(5660300001)(336012)(486006)(76176011)(7696005)(26005)(186003)(59450400001)(16586007)(51416003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2432; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT044;
 1:fS7LTAWLKqVoAs8gN2HfeVDAV9xhxHOF20eG/HfRBPQLbq+q2/TEwK8QmvFa2m82vXaSxEB+9J5Tvz53ScqzAnycUREc7ZVOh7PnbZYFDe0WjBk4RVj4YXteBrw2/tds
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2432; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 3:uX0+qJ0zNL6dAH4wp/JNJge2ea06wDloSqBf3wJXBNeiNbN9+7j8uWAWQKPOfSFAOHAVR8A1E0s8NzPggUnoMrZ8mJVtGTj3LAp63mFQBlIQIndQmnaIsDIxmJxDd2kJQ/Lfq4Anv4UcX63leEC+HAFTs7ivnhlUUjVNqsoOn/HObH/ma+mXi7Be+QDZVcjmtuNJB/WP0Faaw/pXGiEWMvhAmMImyoFR5hWJQKYHCmahbOcToXuoPXNGMRp7dJhX2PtGbrdgN0dE5uVHKNZJa3U5wpdLGUjVp4z6rCD3nPjfSb3ZVNZiVDAEMEKEN2qG4Yb7G+4nEA+NVxn7NxeW3rUBfCSVWryEtPhIaOhDQpg=;
 25:6bUR01wrzs53H80AqbKaDbGPk2qtddHvWVZwKnN0eKtS93EetW1/5pUFI9kawXjRLDSunVOYf9QAAAUlW+NFenMMFDZI7EUK7CJ0WJ/9DTp1amu8I/BHL5W+dd+6r6Eb+F6W+xgICntnPXxYBBGGdJHjpFP/I+Ha3GWSE0SYt85RxRPzI+wtWmsVQ9xHDVKMsdDbGuWUHIUHwLsbLk6S7jgNc3pHQepv3ha354EmFAkh9Xv07gXts5PbgDmIvEfBU2uWnBawxwvLA22ULsCYUIpp5DfEGbS5ZTWvBRop7i8P8D72SXjDyexOHo+9x11CrO4lDkNqMALEeLFp82iLSw==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2432:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 31:cA3nqfbfxK1bcmJVeEUGwwxAlynxf7Z9qK5Twn6Ph00fxzqj/4Q9zSTAdQenqRBT517o72bx4XQ0u6H/6lrWSvMS0ZbRWvSSX5tUqtGn5SgdsGsFNAYmlNQ3eAlNT/BBBjdixMIkY/OXwaRMM9t+kPevC9d0yWTL8j/NVGgFbS8tOK6GOHJPZLu+SavzyM9wcnBBEBrym5vJL0LovjokqYcZDa63CfXU5AHeI70231c=;
 20:BpUESlkGz/3c/tf0lgalgYOgcMROTZjnQc/edCw8NOy4OpuBz97vSazD5un9tiyqrjI7G5u49ehoW/19lWgLBow5eMRCAxm2RnqV1oBiSihf6ol0CrtAHb2u8BDnqRC7t/C/7jyzLQqi0Ct0LgdkUzCnN8Salu+1uibk8X+ClTcOtEQPsT0pqJPeWDqKMmejrOZnBbVOdSEso/3snO0Cx1yxTTtP79qps+UQ07+6f2aKJPDoAa1Rv9DZG40IFLpN;
 4:Z/GJl3C3tArP9J+tXhugnGYYNCvptmqzoFFVsBPeViAQYSs36+olUOEEHTbC5l2O5b3oWRNmE0K2lyqLDiaRftduI1Zcw1GA/gbUz62g+2yzFH2ilmoU6DYzKEnqosXw0pN9WHURABxqzRE5izQDRH/6zNEoovCvs1xIUPWZ6N8eSdzRgnLQb2kX0ZliooMdSLZJjUpu3cnu2UrYoX9VBFs7nNzU/0HJCMAyT0tQErN/jB8MWpPMcr+bc69wyjd/caah6D3qKsD992y1eFlR9lg/IIjw+s3aFTY/JLFZmN0hsE8L4TSrB7lVvvEsH9dW
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB2432B252D2DEC5962BF22D3884B00@VI1PR0802MB2432.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2432; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2432; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2432;
 23:Nt3Kigb3uenmg11vvOpXASCl+wNJsiE3ou97tSW?=
 =?us-ascii?Q?8w3XpCQaMIdLwZZ8TsiDhvH5pGHw+14EVoTbcpM5WmzHWK/orm2VTf2Q7jmH?=
 =?us-ascii?Q?d1s7PoZJKo3tV9fEihijIxdqlru4mp2vjKp7dQLDYP1d8b7fFB8qkXMwkrVa?=
 =?us-ascii?Q?d69bSsEmYOmLKJ04ntP0VoTjr4VsY/rlzMPE7M50spNdvBA7RG2ocfSRILBk?=
 =?us-ascii?Q?tO7ySvqpBEr0dnYoSfuxPzu9MZ/+oSh8O3iuRYpGFZcsM8L1cwul7VtqLjjn?=
 =?us-ascii?Q?AkVjiDK6cshEdKYoWCAIxUiMMVU2Np4AcS9zm1hDcWL1aTq+a96Iu+DCZ6kW?=
 =?us-ascii?Q?SFPedT65ThUOGz0Sld/sLmch7ewK7dF6dwVw54n8G1qLHWVoikK7lDHSh2rl?=
 =?us-ascii?Q?TzC4VD/64RMCETPeN4VxGKRSPHilk94EmygB8yZ50Tco3oswP3Ts8E81eyRj?=
 =?us-ascii?Q?vvNY3wCks57p6h5F3QzuPZgtaSyGeTyyyiS1YVnt6vK0XhMdNxBnn4OaqZ28?=
 =?us-ascii?Q?zh3DzEEqoLaQo6oahypk7cw4fepCKpKWPdp5uhMrCfXIuV0rCvy4PiscXLGi?=
 =?us-ascii?Q?VjdEVKugwN96ZPomW6u+TlSjSa6atlaVEqgOZSFWnJ/FjmdtTaEGVX7g76Pm?=
 =?us-ascii?Q?T2xa3iCh/v5TSIyWreV1Jvk+2FioZ/HEglpBeidE/Pa9C2XqCYfTaRoLGZHo?=
 =?us-ascii?Q?4WqGugLy0nq44UrmHZ7flONCEwEf1ow6bjyAXrUwzh7GOLMwPcwtIojK8t3k?=
 =?us-ascii?Q?5D5Rrqf07JTPUmZUrnwf73g+C38Edr4WsZCCpPJZhQVVW010mjMciE+te7Wa?=
 =?us-ascii?Q?6h6ig9wupSVm0nw2MKY/ahupiEuj0RXPAaC1fbMZMAqwclOEiDdIvs6ppYeN?=
 =?us-ascii?Q?N5CRCIuCOGfgfDk/TaQlnP9oUkvAFBY+Aa5f+bmGuOsEMbAuxBfbfCIbQRnf?=
 =?us-ascii?Q?jKUogMvAd+Sh7z3YCIvhZNgAam4yP/tn4DPIA7FAGIs5SK53T0s3qydbUZNU?=
 =?us-ascii?Q?TAt1PpvxzODmmfxKcUERqyjO3OuOJMzk/jSt1U7v115IWLLPtXXsWkfDneiE?=
 =?us-ascii?Q?VW6vACYcvbPtXCBR4O83MQyL08YuleampSBDS36qYFWL5thHjs4mlamTUsbt?=
 =?us-ascii?Q?S4ZcVKWOjusMYLu+cJ5Cp3vBPKLT5M7xl9U+hf8mRmgXxHjgWjZCLQg=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: v1Sb191O6PlfGKRalurtQODDENGo3vny4/BRkgqy8PSwVx8i3Tsb5d1480gYb8AeRJaAH+YKO7+Yfsuc8apFx9h/H9UIW3meb2DbOhcsa6rW59HjgbmlrUKFZxILKdIhrSTEkRa7OXD6wofG3QYOA8+AYIOFYYY9sKa6BsTuVPiKhf0DW+eecHc58O4aGuuugys5IZG0U5UbtdF1/SHfiG0qjMJZhQQ8FKJCmMNhvBr421dfZR5lkaslTV7mvCaLxFc1ox6swIY6maC8q6eBxCDj/rATgKKC4Ac49bLOGFX6zdCv8feGtOWQJHTcd4sRZijf6zh5yP+c0bmsp27OZJHyYV2ml3e/H1Lfh1pMvf2xzOohfh3WIhaTaJ6FseeieJWN03ZNwk39D6WXZACN59JmulD1VwuIrtCfI+ZSBcA=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 6:6qgAHx52j2u46jN4NWTrk70n/NeFfm9DZaFcb7mMcF0zj2w2Qvrn6nBZBQoThuTvK1414rvzccJbBs0qdFd03Al2AYA5pWak0kvmaFrJ6P7W3jjRvsJS52VD7Z3gk/vPItS8bfTpMctIcKCED/pV9Ec+k00DRgq0nLXevHJ5LCn2R+z41iPHZ1S4rgbGmvHIAu8smshC13hXIwDah04NrbZeEP4mNnPoMjA+By87oWtuH3hUw7hYJKnS8c3satKsjW4RLA9tIgUX1BmCmMtht3RNhnmtOUvxAgwjEsjYVCExVjF2NrsBPzrp06rcVRwcFdB1hPQCTlc+tiQ5KfboXhfr6/dEcXHGsz/h0O2cjcw3izoYxtkAciq2wOJm07ST0tR32U1goRvkiySWWf7fX8l7QnTiyzURJvtmE/0NOQ52OjlAxYulWezBsdV+BmANScDJwj+eJhym3YEVLaoB84HYeU0GC+WV2WQ8us3/oJ1My7d+PVrzslCcYSBrULdM;
 5:hd0tw/AnoraHyWs+jxppqr+tFtQFP7iC32t14DfWk06+NckGr8YwsCp9hRTv6J81kFph4VdodPORKo2WrNdwgFEes2Z15FSGv91grkmR9soeuBiksDQW+YK793ZkCHpaPP6rIHy2gLXRyVCW7NwNYaZXB1OWbfv8trBBwkkQ5+g=;
 24:rCxTWB936Gqrl6eFduzJ6D6nhdyjnzFZxhQcRLi1jqLnb8vQh4cEi6xlK9THQ4xZA1eUwcnG5w41waDO+VP/nuOmjAPUT8Toykfhx55ZVtE=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 7:ksDNDon/hvZOxFQi8n879l9qLl3FmH8sIripPUgKNsOfL9LDa9L6tEQhYxeGHfUSYG2JYWPbKibXwnt5DF+xQ0M5rnirFXvIaQ3Ael5UUp0oOrIhu8PfNDnHELYzMN9gVzsYZY2JtEgDpC0dU3F+dEUdoDdDqeDdqUa3tu0lNaeoqvSUUZ8uluNhe0En3R81gq9E22cYu7ofbEE6ifhDpC5rv1UgZgAJCMAYSTGS3HEeKga9H8w5fkuFfLaxTqRB
X-MS-Office365-Filtering-Correlation-Id: 943b86e0-7d5d-44ba-52a5-08d5a363f57c
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:25.5792 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 943b86e0-7d5d-44ba-52a5-08d5a363f57c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2432
Subject: [Minios-devel] [PATCH v3 09/43] arm64: add the __PAGE_SIZE macro in
 header file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIF9fUEFHRV9TSVpFIGlzIG5lZWRlZCBieSB0aGUgaW5jbHVkZS9wb3NpeC9saW1pdHMuaC4K
ClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQog
aW5jbHVkZS9hcm0vYXJjaF9saW1pdHMuaCB8IDIgKysKIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy
dGlvbnMoKykKCmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oIGIvaW5jbHVk
ZS9hcm0vYXJjaF9saW1pdHMuaAppbmRleCAyM2E0OTFmLi5kZTA0N2IwIDEwMDY0NAotLS0gYS9p
bmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oCisrKyBiL2luY2x1ZGUvYXJtL2FyY2hfbGltaXRzLmgK
QEAgLTMsNiArMyw4IEBACiAKICNpbmNsdWRlIDxwYWdlX2RlZi5oPgogCisjZGVmaW5lIF9fUEFH
RV9TSVpFICAgICAgICgxVUwgPDwgUEFHRV9TSElGVCkKKwogI2RlZmluZSBfX1NUQUNLX1NJWkVf
UEFHRV9PUkRFUiAgMgogI2RlZmluZSBfX1NUQUNLX1NJWkUgKDQgKiBQQUdFX1NJWkUpCiAKLS0g
CjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K
TWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5v
cmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1k
ZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:40 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhs-00032x-6Q; Mon, 16 Apr 2018 06:33:40 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhr-00032n-1l
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:39 +0000
X-Inumbo-ID: f6241bd3-413f-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::61f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id f6241bd3-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:40 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=AbtTeaCXMYmwzrGHS4bkb1QfdIcDn8rgX1fH1c8mrGY=;
 b=V6UTsSt+ngdry3J6QBegs0my1zwd4n0GfwZLWtjb41HhGRMCfSK7o/rs0I5nZvjqdnG1fTQZdflMgvrZ2AKSF/e/xGAhB4QEL3KNE7wq5TE63DbCoxfkzh6dhY75+Y+cQWgCSY5FshBRa3rr4+G4DVYvktKOHQh1YWR3w3bf+Yg=
Received: from DB7PR08CA0004.eurprd08.prod.outlook.com (2603:10a6:5:16::17) by
 DB6PR0802MB2423.eurprd08.prod.outlook.com (2603:10a6:4:a0::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:33:29 +0000
Received: from VE1EUR03FT044.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::205) by DB7PR08CA0004.outlook.office365.com
 (2603:10a6:5:16::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:29 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT044.mail.protection.outlook.com (10.152.19.106) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:29 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:16 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:50 +0000
Message-ID: <1523860343-16382-11-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39850400004)(39380400002)(396003)(346002)(376002)(2980300002)(438002)(189003)(199004)(426003)(446003)(2616005)(11346002)(51416003)(7696005)(76176011)(47776003)(336012)(54906003)(86362001)(6666003)(478600001)(36756003)(16586007)(6916009)(476003)(26005)(77096007)(186003)(486006)(305945005)(356003)(316002)(126002)(39060400002)(4326008)(72206003)(8676002)(246002)(8936002)(106002)(26826003)(104016004)(48376002)(50466002)(2906002)(50226002)(5660300001)(2351001)(59450400001)(8666007)(106466001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2423; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT044;
 1:tAc+iuxly5awN5V+uRDTxJTetotCGz8IFIxFpZFsjynD1jblTHrw+TD+imry0zY7jbiU1K34+PDX6Mf9gzaKhBlHA+auTNZ4UJt5GdXh9LdwyOzit3grjwbjAmw8blmJ
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2423; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2423;
 3:vYOyRuAdwNvTaleLQQUAeTXHPV+XGOOt52cSx+kc1gLYoFQQzN+sCNyiD/31hZGWlsB4/xKPGXnBaUoA5X0BF3jjtpCPMj2x18txW9xaN1MF14XmUCNRQC0PqG0G2haXf5hquD9+tAbXQC/rtNDKZ3t1lOGCfO3x6+f8Zn1zT/k6y2Aks0ofnkRWBIqBAKpopKXy27W9TV0IyCdOzaFp6bi6ae0Pont+fWKtpmY5C+yuMn7FHMQ5iGyILYIRuZlECxthvMDVzgMsc4ceChwLrsev0L8yMmwtrABtB1Pqf2E1yUoF+B8JB0b1IyVzXKXebIKBuXFQidyk8LTFumLHuljhJGFiRgaCJQ3VVENPzr4=;
 25:fwDBcYD+FuDriW9HP0vXyRFO8Rx3SXhW/en3dkuWQRvrsC3tIRdKSWKbwSD4s4L2rRas8hdYf4mlTNyKjCM1SW3bAcUPmkqUDISXVUJn4t6cYq8PfQ2hwEkm/fP3rxS56XonzOs6brLWuc84gr/ATrFSGYo4R19GTCDdDiq3WxPEWcYp/e44i7m2+Ffg00bMKxZ2tconvpkzSFx9nu0OlesE46B6EyKYOfSEsxxv27P7hUcnkVRrSfKvA65BpJHwKsPO2zfJdE6+WIPc5mPcdeK+mOH5OAG2SPBFblJ+QkwtznQ4Zy9rqLZ2IKM7IQ1capYOgL0lZ/+UltMHKtLwzA==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2423:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2423;
 31:IsrR1Q7R8ZXBJw0MQknPgqzjO8LLz0fPu5MWi9I4FOexc+WvwlDXFizkcKFpK35T2rMX0jH5/yezoSmsIJSi1dDPCRSEtpHIMfcSoFnxJMSBfs1YZ8fqhZMWtisn/SbDuugRkablM0PevkgoUJ4vGPcEc4aYmwf/EeXX0GBkZROU/6LuxkYe33JigPv5YNKHXHpgmJ4/uuxDw6yuj0epBc0vaE0Qzan4XImreKLs4Cc=;
 20:O+LHOJHMPlgdrbKrA1H4qb0MxSRn6+xEMoAgUTBIrQrrfxZK2LybeCFrtBraOTR7+At9tlJhKrMFNP6EKyJTKUlrasjZ++ljlhXnk0+gRlm9ZREJLWf6wBvXuW3IpuVWOacZr9ctu1FBLD2wN73y1ulirEPxXGDEUa0IYvYEI7kGDDNhn4yGQZe1ox7Od0SbJCP0+2krrov0Crll+m+1THUOsVBa1dtzl5FiQmcfe+FPJI/SQPPCdElcs0y74BUi;
 4:5AFQ9SMEfQi4V/vJDqFATRP4RmScliCwZLF7SAZiaZ1ei4wQb7PCyF1ynZ8Jbfn3n73evkgkLuIWWmzeqWoRl8XV/gdRU//Iz+FJMl3QKghW9l84mcovUvKQAhOsyKL4fvZyngNtWWEF23irGSm5x9VcRc6xQe9pjwVulWZ/AaQrgXwDUIxkkRYgCrKha2TmMAVHk9UVKv/roFLcElfTfcJ1THWjRcctOYUHmrjPwYMLoxp6fxgylVW8SvizwkGbRhR9GoWX/kl0v3nvV+WfcIgmtGUA/Blz08tiTYkrLQ8sTUz2ZLyEdEc7yJU5CLyH
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB24239448D971FDFBD60A80A184B00@DB6PR0802MB2423.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2423; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2423; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0802MB2423;
 23:L2hExvHQv/nMYKlxxFMyvqlBtaRH5hP/H+OZrS+?=
 =?us-ascii?Q?bWNbDiO1+F+puS5DLHJ9EP+ivYJC0gXD8MZY08nSt0bqhXSRC+bTIdddjnQF?=
 =?us-ascii?Q?zS8j+MctuaDDmwRSVVSuBO7nkbStE0Re//4CbbJneC3hBvH2BLYKp867Duns?=
 =?us-ascii?Q?iYiEJJGnofhhIwmgyzgJThReiceDSk22HXzOIY8GzWlhqSE5YTRJxfrHqTxg?=
 =?us-ascii?Q?ANM59RX7Mty95/4wM6iJaKhjmL4WVXpBrLa+BHotNDv00pyzLUHmj8I+5Zym?=
 =?us-ascii?Q?kJ5gQnxmCB8iaEKcK5+08+t30CiexwZIxRetPdxhRir9o5Hi/cLiK0cpAQtU?=
 =?us-ascii?Q?RcECCipyrjfTdolV8yRZBgc6DO86CLJ2kTN0k0pGS/cStbNcHieCsIxrGH/c?=
 =?us-ascii?Q?fPWOGd9zbqZM45IN3GnteY0s+RxbUbYyDz/K7XiItG/wFwexHCIghPU7fuOt?=
 =?us-ascii?Q?pYP8DAtpQ5dxWnMn97dX4I3AptnK0NvleyhMyLoHK3oDl8NuymHDChSRAAhG?=
 =?us-ascii?Q?PsXOgxzGfnJr8iyA0wLwzRLugf4GifEAZQRQ+HRAbqyA7jQQ1uq8Yp2fTN+d?=
 =?us-ascii?Q?DeyENBX3NsYamA1qIg3S56wxR5nogrJi8fvIB/FGfmkY31sewLXYIrVieUXR?=
 =?us-ascii?Q?VqepC/A7azhky4VxUXKmKKO+7FfWbl/N2F3EGviEycyU8oK5Tp+3yFXxInJC?=
 =?us-ascii?Q?hSl/nfz5BmwawnwMUkVG7YUmrXn6vWCjPknwQlHAQwz4kqTqSS1bOYZQp6in?=
 =?us-ascii?Q?Wt447IbxZCv4tHrhMOQfWjwrScgLicG/7xXZxn3xnSr8IAr8FwNg73gHpNZA?=
 =?us-ascii?Q?W3gbo+h3wYUI+kyGJqhaqhm/TDAZI3gGHvquVuM9lMy+kEMq+4eyCPqqrQnu?=
 =?us-ascii?Q?aORtoF74HebH9SYlG2B6MRCf08HH7ZNrypZp7hDz4vqWXC3lnHZvTG117KOC?=
 =?us-ascii?Q?Z9MhZNiYRHihYiesuTyDN6L04ozUvdDxcQfC9j/N858n6+SRH2sgjTg5giTc?=
 =?us-ascii?Q?hKUIhOe+MKxG0VOat+W5sWHa0vP0OZ6LxiMzNjuRqwrgljFjb7VFEy2Vh1Zz?=
 =?us-ascii?Q?3vzhhF9FzNMMZ5fRRoP3zPCjiIG4Io0M0IYNm/C2PNQ7v9HMPzokbBBqkB5t?=
 =?us-ascii?Q?zdrzFQv+eXDC/UAzcyZ0YjntFOiL9AtnloGbDkTxSF3MfCl8MzvrK9g=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: qVmMig+vTJucFak5ZY/RkHp/my4WBWQwTeFWSwtQYoW1EtVXhHP37dOF7/uVp+3ZpORe+a+fAh3sSle2MWGsxlGfm5hBtK2vlr/KpPu4tcSG+B6Z8V29SeEE4ax4Q4NOb57ntLprFmgsSKdZB76UNYsQ/t+tYvoHECj9JBLgVBaYfjMG3iUJNiFBAjdgnuPAVkBjWJ+hyq39zKrPSRO1TQ9eKkEzTQE3Q0Jz3guME21g0n1PNZZGjJ//6F5bYacwqsuQAthxhtH2aZF4r+7CUS5Xgd6AWfe1TnmkwHdAWoHQ9ycrYF4U4F58DuI5MWYUsI8OkQzop4Xm4RkXHemhfyOJMX8lQMm5orevyjrd0tf3A1CelVt1m6evd2+Umw7Yse2tQj/yXBUWHeyY0YLjz7tPKC7e78cUnNbJi0OxSEk=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2423;
 6:31DT9k/wXyz4eM30pW31s6Vo5bJNSsul4r8Ob+aM3kEv+ShkOuxhaIkWVEbkSNosBogIrz48r/7gcIJPbtp9VCJDjenkGe8W28POwC1lJ+DoYrpWwUnGVnrIrm40hs0qTTTI7qa1GYYbJBgxvFdXot/wB1+e3QxG3dWVEI/SBn0iSqPDlTzXriSDMkRNgKw3RPJX4qXDcsMbBn1WdFtW9qcatFwttTrnr80ZinnNVot2N7Xo0urx8joF+bEfE784okYqmRMI191slNejcAySB0nCIaGuk+JB1zpwo6rJHML4kniEo9HMddn9KJms0J5mc3x5nEMVHs9fR7GkKx6AxszYcNV39z/sPU2HCuc2PIz7onqMo/hU1r0Ky1DqeVcZZGycWx9bazEIjC+kkMuck0Kba33o5UgTLd+vFgAyr5ZMiv19Fq1PWy+I3PUmFUSDlK3I9zaa71Qf1XNJG35P5SJV2ljHhsBNu2Ii6s32saR739Jdg1N0yF3kRkxuAOBH;
 5:2qIFKHTGsFJ4M1+rCOdMmJu36VbR8N1qS7GVsLppM+yDzpq4JZyC6aH88zK/tUWwezsmbNpXgyOQK4zkM839s+Oo7Ju8YKGle2yYf/Aabh64Ac376T94CMj2cKaoa2MDK3bUgV3Fv7WeKVBD1yhF8W9jWa0kljBNJkoxj6YkiN0=;
 24:vuz0IAs3mU3bAGMlqe4YkAMvVZllrvWt7yEW7pv68SnyKhazUhh/FgsHCMdo9wv9fsz46IYNfsUTW1BYfGh1c1j/oOD7xjWVIwbYVZM70eo=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2423;
 7:vMUm3ZMwlEBxD5tZcfXG6WaOMhNolJfe1RSakOzGwX4LRnnrOneIbeapoP07geZ6tzzOvvU6BGE0+GlDJBgRx9d2BAvgvrEMrRXXL/gTtk7HD8OSw5XQt81BZu5s7JeCqpNt/gcR/xofxpvpfa6JdAxm0xHEBpqGS73QPSt2swhaMG0vmT/0VOOuquXiX2JkkUuE/hpmRQByTDURWQt4np/fQq2sjv2GnyKPrk4TnN23RUIna4QFp35pgJ1wOjMy
X-MS-Office365-Filtering-Correlation-Id: 737d40a9-7395-4dae-3d35-08d5a363f78b
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:29.0167 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 737d40a9-7395-4dae-3d35-08d5a363f78b
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2423
Subject: [Minios-devel] [PATCH v3 10/43] arm64: add exception support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBhZGRzIHRoZSBleGNlcHRpb24gc3VwcG9ydCBmb3IgYXJtNjQ6CiAgICAuMCkg
QWRkIGFybTY0L3RyYXBzLmgsIGFuZCBhZGQgbmV3IHB0X3JlZ3N7fSBmb3IgYXJtNjQuCiAgICAu
MSkgQWRkIHNhdmVfcmVnaXN0ZXJzL3Jlc3RvcmVfcmVnaXN0ZXJzIHdoaWNoIGFyZSBiYXNlZCBv
biBGcmVlQlNEIGNvZGUuCiAgICAuMikgc2V0dXAgdGhlIHZlY3RvciB0YWJsZQogICAgLjMpIHJl
bW92ZSB0aGUgY29kZSBmb3IgYXJtMzIuCgpTaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNo
aWppZS5odWFuZ0Bhcm0uY29tPgotLS0KIGFyY2gvYXJtL2FybTY0L2FybTY0LlMgICAgfCAxNDcg
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogYXJjaC9hcm0v
YXJtNjQvdHJhcHMuYyAgICB8ICAxNiArKysrKwogaW5jbHVkZS9hcm0vYXJtNjQvdHJhcHMuaCB8
ICAyNyArKysrKysrKysKIGluY2x1ZGUvYXJtL3RyYXBzLmggICAgICAgfCAgMjEgKy0tLS0tLQog
NCBmaWxlcyBjaGFuZ2VkLCAxOTEgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCiBjcmVh
dGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtNjQvdHJhcHMuYwogY3JlYXRlIG1vZGUgMTAwNjQ0
IGluY2x1ZGUvYXJtL2FybTY0L3RyYXBzLmgKCmRpZmYgLS1naXQgYS9hcmNoL2FybS9hcm02NC9h
cm02NC5TIGIvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwppbmRleCBiNDU0Y2M2Li45ZWI3ZWEwIDEw
MDY0NAotLS0gYS9hcmNoL2FybS9hcm02NC9hcm02NC5TCisrKyBiL2FyY2gvYXJtL2FybTY0L2Fy
bTY0LlMKQEAgLTEsNiArMSw3IEBACiAjaW5jbHVkZSAiYXNtLmgiCiAjaW5jbHVkZSA8YXJjaF9s
aW1pdHMuaD4KICNpbmNsdWRlIDxhcm02NC9wYWdldGFibGUuaD4KKyNpbmNsdWRlIDxhcm02NC90
cmFwcy5oPgogI2luY2x1ZGUgPHhlbi94ZW4uaD4KIAogLyogVGhpcyBtYWNybyB3aWxsIHVzZSB0
aGUgeDAveDEveDIveDE2ICovCkBAIC0xMDEsNiArMTAyLDExIEBAIEVOVFJZKF9zdGFydCkKICAg
ICBtc3IgICAgIHR0YnIwX2VsMSwgeDAKICAgICBpc2IKIAorICAgIC8qIExvYWQgdGhlIGV4Y2Vw
dGlvbiB2ZWN0b3JzICovCisgICAgbGRyICAgICB4MiwgPXZlY3Rvcl90YWJsZQorICAgIG1zciAg
ICAgdmJhcl9lbDEsIHgyCisgICAgaXNiCisKICAgICAvKiBUdXJuaW5nIG9uIE1NVSAqLwogICAg
IHRsYmkgICAgdm1hbGxlMQogICAgIGRzYiAgICAgbnNoCkBAIC0yODQsMyArMjkwLDE0NCBAQCBf
c2V0dXBfaWRtYXBfcGd0YWJsZToKICAgICBhZHIgICAgIHgwLCBpZG1hcF9sMF9wZ3RhYmxlCiAg
ICAgZHNiICAgICBzeQogICAgIHJldAorCisvKiBUaGUgc2F2ZV9yZWdpc3RlcnMvcmVzdG9yZV9y
ZWdpc3RlcnMgYXJlIGJhc2VkIG9uIHRoZSBjb2RlIGluIEZyZWVCU0QgKi8KKy5tYWNybwlzYXZl
X3JlZ2lzdGVycyBlbAorCW1vdgl4MTgsIHNwCisKKwlzdWIJc3AsIHNwLCAjKFBUX1JFR19TSVpF
KQorCisJc3RwCXgyOCwgeDI5LCBbc3AsICMoUFRfUkVHX1ggKyAyOCAqIDgpXQorCXN0cAl4MjYs
IHgyNywgW3NwLCAjKFBUX1JFR19YICsgMjYgKiA4KV0KKwlzdHAJeDI0LCB4MjUsIFtzcCwgIyhQ
VF9SRUdfWCArIDI0ICogOCldCisJc3RwCXgyMiwgeDIzLCBbc3AsICMoUFRfUkVHX1ggKyAyMiAq
IDgpXQorCXN0cAl4MjAsIHgyMSwgW3NwLCAjKFBUX1JFR19YICsgMjAgKiA4KV0KKwlzdHAJeDE4
LCB4MTksIFtzcCwgIyhQVF9SRUdfWCArIDE4ICogOCldCisJc3RwCXgxNiwgeDE3LCBbc3AsICMo
UFRfUkVHX1ggKyAxNiAqIDgpXQorCXN0cAl4MTQsIHgxNSwgW3NwLCAjKFBUX1JFR19YICsgMTQg
KiA4KV0KKwlzdHAJeDEyLCB4MTMsIFtzcCwgIyhQVF9SRUdfWCArIDEyICogOCldCisJc3RwCXgx
MCwgeDExLCBbc3AsICMoUFRfUkVHX1ggKyAxMCAqIDgpXQorCXN0cAl4OCwgIHg5LCAgW3NwLCAj
KFBUX1JFR19YICsgOCAgKiA4KV0KKwlzdHAJeDYsICB4NywgIFtzcCwgIyhQVF9SRUdfWCArIDYg
ICogOCldCisJc3RwCXg0LCAgeDUsICBbc3AsICMoUFRfUkVHX1ggKyA0ICAqIDgpXQorCXN0cAl4
MiwgIHgzLCAgW3NwLCAjKFBUX1JFR19YICsgMiAgKiA4KV0KKwlzdHAJeDAsICB4MSwgIFtzcCwg
IyhQVF9SRUdfWCArIDAgICogOCldCisKKwltcnMJeDEwLCBlbHJfZWwxCisJbXJzCXgxMSwgc3Bz
cl9lbDEKKwltcnMJeDEyLCBlc3JfZWwxCisuaWYgXGVsID09IDAKKwltcnMJeDE4LCBzcF9lbDAK
Ky5lbmRpZgorCXN0cgl4MTAsIFtzcCwgIyhQVF9SRUdfRUxSKV0KKwlzdHAJdzExLCB3MTIsIFtz
cCwgIyhQVF9SRUdfU1BTUildCisJc3RwCXgxOCwgeDMwLCBbc3AsICMoUFRfUkVHX1NQKV0KKy5l
bmRtCisKKy5tYWNybwlyZXN0b3JlX3JlZ2lzdGVycyBlbAorCWxkcAl4MTgsIHgzMCwgW3NwLCAj
KFBUX1JFR19TUCldCisJbGRwCXgxMCwgeDExLCBbc3AsICMoUFRfUkVHX0VMUildCisuaWYgXGVs
ID09IDAKKwltc3IJc3BfZWwwLCB4MTgKKy5lbmRpZgorCW1zcglzcHNyX2VsMSwgeDExCisJbXNy
CWVscl9lbDEsIHgxMAorCisJbGRwCXgwLCAgeDEsICBbc3AsICMoUFRfUkVHX1ggKyAwICAqIDgp
XQorCWxkcAl4MiwgIHgzLCAgW3NwLCAjKFBUX1JFR19YICsgMiAgKiA4KV0KKwlsZHAJeDQsICB4
NSwgIFtzcCwgIyhQVF9SRUdfWCArIDQgICogOCldCisJbGRwCXg2LCAgeDcsICBbc3AsICMoUFRf
UkVHX1ggKyA2ICAqIDgpXQorCWxkcAl4OCwgIHg5LCAgW3NwLCAjKFBUX1JFR19YICsgOCAgKiA4
KV0KKwlsZHAJeDEwLCB4MTEsIFtzcCwgIyhQVF9SRUdfWCArIDEwICogOCldCisJbGRwCXgxMiwg
eDEzLCBbc3AsICMoUFRfUkVHX1ggKyAxMiAqIDgpXQorCWxkcAl4MTQsIHgxNSwgW3NwLCAjKFBU
X1JFR19YICsgMTQgKiA4KV0KKwlsZHAJeDE2LCB4MTcsIFtzcCwgIyhQVF9SRUdfWCArIDE2ICog
OCldCisJbGRwCXgxOCwgeDE5LCBbc3AsICMoUFRfUkVHX1ggKyAxOCAqIDgpXQorCWxkcAl4MjAs
IHgyMSwgW3NwLCAjKFBUX1JFR19YICsgMjAgKiA4KV0KKwlsZHAJeDIyLCB4MjMsIFtzcCwgIyhQ
VF9SRUdfWCArIDIyICogOCldCisJbGRwCXgyNCwgeDI1LCBbc3AsICMoUFRfUkVHX1ggKyAyNCAq
IDgpXQorCWxkcAl4MjYsIHgyNywgW3NwLCAjKFBUX1JFR19YICsgMjYgKiA4KV0KKwlsZHAJeDI4
LCB4MjksIFtzcCwgIyhQVF9SRUdfWCArIDI4ICogOCldCisKKwltb3YJc3AsIHgxOAorICAgICAg
ICBlcmV0CisuZW5kbQorCisgICAgLmdsb2JsIElSUV9oYW5kbGVyCitJUlFfaGFuZGxlcjoKKyAg
ICAubG9uZyAweDAKKworICAgIC5hbGlnbiA2CitlbDFfc3luYzoKKyAgICBzYXZlX3JlZ2lzdGVy
cyAxCisgICAgbW92ICAgICB4MCwgc3AKKyAgICBtcnMgICAgIHgxLCBlc3JfZWwxOworICAgIG1y
cyAgICAgeDIsIGZhcl9lbDE7CisgICAgYmwgICAgICBkb19zeW5jCisgICAgcmVzdG9yZV9yZWdp
c3RlcnMgMQorCisgICAgLmFsaWduIDYKK2VsMV9pcnE6CisgICAgc2F2ZV9yZWdpc3RlcnMgMQor
ICAgIGxkciAgICAgeDAsIElSUV9oYW5kbGVyCisgICAgYmxyICAgICB4MAorICAgIHJlc3RvcmVf
cmVnaXN0ZXJzIDEKKworLyogQmFkIEFib3J0IG51bWJlcnMgKi8KKyNkZWZpbmUgQkFEX1NZTkMg
ICAgMAorI2RlZmluZSBCQURfSVJRICAgICAxCisjZGVmaW5lIEJBRF9GSVEgICAgIDIKKyNkZWZp
bmUgQkFEX0VSUk9SICAgMworCisjZGVmaW5lIGVsX2ludmFsaWQobmFtZSwgcmVhc29uLCBlbCkg
IFwKKyAgICAuYWxpZ24gNjsgICAgICAgICAgICAgICAgICAgICAgICAgXAorbmFtZSMjX2ludmFs
aWQ6ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgc2F2ZV9yZWdpc3RlcnMgIGVsOyAgICAg
ICAgICAgICAgIFwKKyAgICBtb3YgICAgIHgwLCBzcDsgICAgICAgICAgICAgICAgICAgXAorICAg
IG1vdiAgICAgeDEsICMocmVhc29uKTsgICAgICAgICAgICBcCisgICAgbXJzICAgICB4MiwgZXNy
X2VsMTsgICAgICAgICAgICAgIFwKKyAgICBtcnMgICAgIHgzLCBmYXJfZWwxOyAgICAgICAgICAg
ICAgXAorICAgIGIgICAgICAgZG9fYmFkX21vZGU7ICAgICAgICAgICAgICBcCitFTkRQUk9DKG5h
bWUjI19pbnZhbGlkKTsgICAgICAgICAgICAgIFwKKworZWxfaW52YWxpZChlbDFfc3luYywgQkFE
X1NZTkMsIDEpOworZWxfaW52YWxpZChlbDBfc3luYywgQkFEX1NZTkMsIDApOworZWxfaW52YWxp
ZChlbDFfaXJxLCBCQURfSVJRLCAxKTsKK2VsX2ludmFsaWQoZWwwX2lycSwgQkFEX0lSUSwgMCk7
CitlbF9pbnZhbGlkKGVsMV9maXEsIEJBRF9GSVEsIDEpOworZWxfaW52YWxpZChlbDBfZmlxLCBC
QURfRklRLCAwKTsKK2VsX2ludmFsaWQoZWwxX2Vycm9yLCBCQURfRVJST1IsIDEpOworZWxfaW52
YWxpZChlbDBfZXJyb3IsIEJBRF9FUlJPUiwgMCk7CisKKyAgICAvKiBFeGNlcHRpb24gdmVjdG9y
IGVudHJ5ICovCisgICAgLm1hY3JvIHZlY3Rvcl9lbnRyeSBsYWJlbAorICAgIC5hbGlnbiAgNwor
ICAgIGIgICAgICAgXGxhYmVsCisgICAgLmVuZG0KKworICAgIC5hbGlnbiAgMTEKK0VOVFJZKHZl
Y3Rvcl90YWJsZSkKKyAgICAvKiBDdXJyZW50IEV4Y2VwdGlvbiBsZXZlbCB3aXRoIFNQX0VMMCAq
LworICAgIHZlY3Rvcl9lbnRyeSBlbDFfc3luY19pbnZhbGlkICAgICAgICAgLyogU3luY2hyb25v
dXMgRUwxdCAgICAgICAqLworICAgIHZlY3Rvcl9lbnRyeSBlbDFfaXJxX2ludmFsaWQgICAgICAg
ICAgLyogSVJRIEVMMXQgICAgICAgICAgICAgICAqLworICAgIHZlY3Rvcl9lbnRyeSBlbDFfZmlx
X2ludmFsaWQgICAgICAgICAgLyogRklRIEVMMXQgICAgICAgICAgICAgICAqLworICAgIHZlY3Rv
cl9lbnRyeSBlbDFfZXJyb3JfaW52YWxpZCAgICAgICAgLyogRXJyb3IgRUwxdCAgICAgICAgICAg
ICAqLworCisgICAgLyogQ3VycmVudCBFeGNlcHRpb24gbGV2ZWwgd2l0aCBTUF9FTDEgKi8KKyAg
ICB2ZWN0b3JfZW50cnkgZWwxX3N5bmMgICAgICAgICAgICAgICAgIC8qIFN5bmNocm9ub3VzIEVM
MWggICAgICAgKi8KKyAgICB2ZWN0b3JfZW50cnkgZWwxX2lycSAgICAgICAgICAgICAgICAgIC8q
IElSUSBFTDFoICAgICAgICAgICAgICAgKi8KKyAgICB2ZWN0b3JfZW50cnkgZWwxX2ZpcV9pbnZh
bGlkICAgICAgICAgIC8qIEZJUSBFTDFoICAgICAgICAgICAgICAgKi8KKyAgICB2ZWN0b3JfZW50
cnkgZWwxX2Vycm9yX2ludmFsaWQgICAgICAgIC8qIEVycm9yIEVMMWggICAgICAgICAgICAgKi8K
KworICAgIC8qIExvd2VyIEV4Y2VwdGlvbiBsZXZlbCB1c2luZyBBQXJjaDY0ICovCisgICAgdmVj
dG9yX2VudHJ5IGVsMF9zeW5jX2ludmFsaWQgICAgICAgICAvKiBTeW5jaHJvbm91cyA2NC1iaXQg
RUwwICovCisgICAgdmVjdG9yX2VudHJ5IGVsMF9pcnFfaW52YWxpZCAgICAgICAgICAvKiBJUlEg
NjQtYml0IEVMMCAgICAgICAgICovCisgICAgdmVjdG9yX2VudHJ5IGVsMF9maXFfaW52YWxpZCAg
ICAgICAgICAvKiBGSVEgNjQtYml0IEVMMCAgICAgICAgICovCisgICAgdmVjdG9yX2VudHJ5IGVs
MF9lcnJvcl9pbnZhbGlkICAgICAgICAvKiBFcnJvciA2NC1iaXQgRUwwICAgICAgICovCisKKyAg
ICAvKiBMb3dlciBFeGNlcHRpb24gbGV2ZWwgdXNpbmcgQUFyY2gzMiAqLworICAgIHZlY3Rvcl9l
bnRyeSBlbDBfc3luY19pbnZhbGlkICAgICAgICAgLyogU3luY2hyb25vdXMgMzItYml0IEVMMCAq
LworICAgIHZlY3Rvcl9lbnRyeSBlbDBfaXJxX2ludmFsaWQgICAgICAgICAgLyogSVJRIDMyLWJp
dCBFTDAgICAgICAgICAqLworICAgIHZlY3Rvcl9lbnRyeSBlbDBfZmlxX2ludmFsaWQgICAgICAg
ICAgLyogRklRIDMyLWJpdCBFTDAgICAgICAgICAqLworICAgIHZlY3Rvcl9lbnRyeSBlbDBfZXJy
b3JfaW52YWxpZCAgICAgICAgLyogRXJyb3IgMzItYml0IEVMMCAgICAgICAqLworRU5EKHZlY3Rv
cl90YWJsZSkKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0L3RyYXBzLmMgYi9hcmNoL2FybS9h
cm02NC90cmFwcy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYyZGQyZTYK
LS0tIC9kZXYvbnVsbAorKysgYi9hcmNoL2FybS9hcm02NC90cmFwcy5jCkBAIC0wLDAgKzEsMTYg
QEAKKyNpbmNsdWRlIDxtaW5pLW9zL29zLmg+CisjaW5jbHVkZSA8bWluaS1vcy9hcm02NC90cmFw
cy5oPgorI2luY2x1ZGUgPGNvbnNvbGUuaD4KKwordm9pZCBkb19iYWRfbW9kZShzdHJ1Y3QgcHRf
cmVncyAqcmVncywgaW50IHJlYXNvbiwKKyAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcg
ZXNyLCB1bnNpZ25lZCBsb25nIGZhcikKK3sKKyAgICAvKiBUTyBETyAqLworICAgIGRvX2V4aXQo
KTsKK30KKwordm9pZCBkb19zeW5jKHN0cnVjdCBwdF9yZWdzICpyZWdzLCB1bnNpZ25lZCBsb25n
IGVzciwgdW5zaWduZWQgbG9uZyBmYXIpCit7CisgICAgLyogVE8gRE8gKi8KKyAgICBkb19leGl0
KCk7Cit9CmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcm02NC90cmFwcy5oIGIvaW5jbHVkZS9h
cm0vYXJtNjQvdHJhcHMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NjJm
NGE2Ci0tLSAvZGV2L251bGwKKysrIGIvaW5jbHVkZS9hcm0vYXJtNjQvdHJhcHMuaApAQCAtMCww
ICsxLDI3IEBACisjaWZuZGVmIF9UUkFQU19IXworI2RlZmluZSBfVFJBUFNfSF8KKworI2lmbmRl
ZiBfX0FTU0VNQkxZX18KK3N0cnVjdCBwdF9yZWdzIHsKKyAgICB1aW50NjRfdCBzcDsKKyAgICB1
aW50NjRfdCBwYzsKKyAgICB1aW50NjRfdCBscjsgIC8qIGVsciAqLworICAgIHVpbnQzMl90IHBz
dGF0ZTsKKyAgICB1aW50MzJfdCBlc3I7CisKKyAgICAvKiBGcm9tIHgwIH4geDI5ICovCisgICAg
dWludDY0X3QgeFszMF07Cit9OworCisjZWxzZQorCisjZGVmaW5lIFBUX1JFR19TSVpFICAgKDI3
MikKKworI2RlZmluZSBQVF9SRUdfU1AgICAgICgwKQorI2RlZmluZSBQVF9SRUdfRUxSICAgICgx
NikKKyNkZWZpbmUgUFRfUkVHX1NQU1IgICAoMjQpCisjZGVmaW5lIFBUX1JFR19YICAgICAgKDMy
KQorCisjZW5kaWYKKworI2VuZGlmCmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS90cmFwcy5oIGIv
aW5jbHVkZS9hcm0vdHJhcHMuaAppbmRleCA3MDRkZjIyLi5iMDc2ZjQxIDEwMDY0NAotLS0gYS9p
bmNsdWRlL2FybS90cmFwcy5oCisrKyBiL2luY2x1ZGUvYXJtL3RyYXBzLmgKQEAgLTEsMjAgKzEg
QEAKLSNpZm5kZWYgX1RSQVBTX0hfCi0jZGVmaW5lIF9UUkFQU19IXwotCi1zdHJ1Y3QgcHRfcmVn
cyB7Ci0gICAgdW5zaWduZWQgbG9uZyByMDsKLSAgICB1bnNpZ25lZCBsb25nIHIxOwotICAgIHVu
c2lnbmVkIGxvbmcgcjI7Ci0gICAgdW5zaWduZWQgbG9uZyByMzsKLSAgICB1bnNpZ25lZCBsb25n
IHI0OwotICAgIHVuc2lnbmVkIGxvbmcgcjU7Ci0gICAgdW5zaWduZWQgbG9uZyByNjsKLSAgICB1
bnNpZ25lZCBsb25nIHI3OwotICAgIHVuc2lnbmVkIGxvbmcgcjg7Ci0gICAgdW5zaWduZWQgbG9u
ZyByOTsKLSAgICB1bnNpZ25lZCBsb25nIHIxMDsKLSAgICB1bnNpZ25lZCBsb25nIHIxMTsKLSAg
ICB1bnNpZ25lZCBsb25nIHIxMjsKLX07Ci0KLSNlbmRpZgorI2luY2x1ZGUgPG1pbmktb3MvYXJt
NjQvdHJhcHMuaD4KLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlz
dHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xp
c3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:44 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhw-00033s-9H; Mon, 16 Apr 2018 06:33:44 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhv-00033a-4i
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:43 +0000
X-Inumbo-ID: f8a58cc6-413f-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::602])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id f8a58cc6-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:44 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=9Ku989WxItzzMsObSkk0zwEgai5sdUT/tmFTfIp63mc=;
 b=dVaPgQcq7S96B8vFUO2sxflKjhyuI+KbDerU6R8RfHg1u2NVtVO1mxz8U5IexZyDQRSjbYmsMqTpsDqLz4pXjvknqrjKhS/v1rqsZYkJWxB0RiElK2ydeqpP7PKnw2qk/Jgv1U/4Ssqe49vGovI9nuBhawZkqcv8j5yJTVcraM8=
Received: from DB7PR08CA0004.eurprd08.prod.outlook.com (2603:10a6:5:16::17) by
 VI1PR0801MB1597.eurprd08.prod.outlook.com (2603:10a6:800:19::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.12; Mon, 16
 Apr 2018 06:33:31 +0000
Received: from VE1EUR03FT044.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::205) by DB7PR08CA0004.outlook.office365.com
 (2603:10a6:5:16::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:31 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT044.mail.protection.outlook.com (10.152.19.106) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:31 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:21 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:51 +0000
Message-ID: <1523860343-16382-12-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(396003)(346002)(39380400002)(39850400004)(2980300002)(438002)(199004)(189003)(106002)(47776003)(6666003)(305945005)(2351001)(51416003)(54906003)(7696005)(316002)(76176011)(4326008)(478600001)(86362001)(5660300001)(8666007)(26005)(77096007)(26826003)(356003)(39060400002)(246002)(50226002)(186003)(104016004)(72206003)(48376002)(50466002)(6916009)(8676002)(106466001)(426003)(8936002)(2906002)(336012)(446003)(11346002)(2616005)(476003)(126002)(16586007)(36756003)(486006);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1597; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT044;
 1:/sx5TqUA5JInXHwbxiMBZN4ctz4vzvl5+xQFC0/flw9EFAJg7TVQvxp+wZk9qkPOdxDa6Mk7d/KUnxwXp0TUPBIMpbIrVEDSyANxwmwsDuv7mKKoPYISX41uPOyZQAgK
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0801MB1597; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1597;
 3:4Fb1Q7Cw9/pP/SsX7HSA3HaGqbWjVbvWRmilIKlWAv4x97plHWpGhPO0LRYDpCCrSjp5RFmqHFjSvsjA8d5VmPaf+TrPINrZfFs8tGkrJ+gumFtcaNmtNJX+yyYhxIByU+tLQd17Kf3jJWifq7aTpRv22kX+uoY4xCDEAJ0aekZ/wu2BWfWwhIMzCQ/m8vqKnHkkI/B3PVzTpvml1FDRBEo/wEQXhMjXkMlUg1tPJKiuTZ/JusYenXY8cUOWYQSYhST6M9geb/yzEygRtit4YItJg3LIjcPGn1iqKUH75LpIlQ+aAtDC7RQ/LbJFT5WjhLHeWm22UM/Pxj8IV5PNDpEemUm5cSOlZ/LkjXGU1Mo=;
 25:wh/XDtU858vEC3GP5T6h4A9yCPi6V90jUAUYM1QX/+gwElLzXy5vrydFEgulgAsUQdTAWhCFrzMtXdRurLZ6P7vJG4IVUMmjC6jjFfZqzqc3RI3WL4uT2C06P2/BZv3jjfu/B+wRit4itwYMydqa0FdaH8U0z8kwcN40HTUDolmcOvkVV3LQKnHzRP/AHKEqxnji2R6uDV22KFmg8T9HmG0FIq8oLcHw3u3RuHndJFi+va4SqudCu/Kmkc7vsVHVAffqe9BTvBKdExSRTY2twHeapkKnSZLwmeV5Fhyrck23QVnRv6Dw4w6xM9VzGzZW9hirY+eB+GLB/Nrfia6MOA==
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1597:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1597;
 31:nryszJx4gBzrFBKRV4rhuFTE/Tzbl636RLpWF47KyMiVNbpKucvNJbOfD4jSk+am2tWPoFC92AnHlF0unCaHr8K7aDmygYQRzgdkUBEOK+j0zngp4+oqH6HphgmpXzowX7eWu75KgZKr97vLfVpsBw0mR4Qu/iMjRv04GbdBrvGO3So4r1zAON7OgF7kI5sAvfan4o8CeU0iH5VUDEVu1jyrogUnX1cxSJrBSkUw2zc=;
 20:1dapdZigWiRwy4vRsgVTkztUXfnG1hZlBOPLx5ZFy/hIAXDGfPj3bY2GpFEJgEESaCKUN13JSCvFnx3MrdA2D62Kfx1z6YGTkORMdTVCSKJHR5YDKYpSbFxc2YwKT17TfVaBnj/Soxmn3vvWrNq0F/NKPDBNhSEHZfKW1EaBqi/dDrAEx1sh1wjUGq6xQdas7Rt9oT28A/vN6i6YZNSS7axyiuGFbutRzXdETe1DSpqmNuAE5NQv+IPupvw1vDbp;
 4:8iN+m8J/7AaGUqd5UNx5T0vCQmCrpDRzs0PUePsxVhlX/mi2v3afF6gqxLegOGVRy6Wzbma6HKFwBkybSA0hSVFASkbYPRetu78pNGLdGcnaXHEZtJaM81o0NHg9Kjcjo1a15mdFVD9/vWbNiL3Ty3ddm8hhQWkI3lm9gtrOZcLQh1G+Ih5uzi6QuPmLlMeAkXL01BAkgAnheDy9+U6xUgvzsN4Z7c48l3rtXWVS85MqtO4QDSvLv3STLGlino9I+/l+3twphdtOE3r5J8H8CzngD8WXrGdeQyVZH/W52WZxBvvsMflbIjp5WHE5G9mo
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0801MB15977CFC1F37B015E3FE509F84B00@VI1PR0801MB1597.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR0801MB1597; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0801MB1597; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1597;
 23:BaK/iHRJ3ScHpe3EHutSB6XX1KKJjTdo9Te4iTP?=
 =?us-ascii?Q?OcNSVntS7NJ/0tvMCZnD+csOvsxBdRL3OO+fqaUFprMxsq6X2LCKlmq6i5Wz?=
 =?us-ascii?Q?dx20g0lU5epG9xeX5Hei12/2nl4Tq9PJB55EUNMcnVyJRRrkuJra8fCuxy/C?=
 =?us-ascii?Q?F6qkKswpx7TcU2gt1yeLMhEm2O7suYDKcDqEg1q7Yk7/1hscGl/QPQQy0zue?=
 =?us-ascii?Q?WbKh6bQ7cp3ZcIgEg/vHK6pSW7YaIMoKudhNEkWUe7rFesgZKC09xnnk0IiC?=
 =?us-ascii?Q?nCfEXD15uE0TAhuRT3wTskjBaAIqdeFlI1cfqrDIF/4jKD/AKAryD9rdnNBQ?=
 =?us-ascii?Q?CGRrT96Bl2v8mrGiXPMZ3Vk4Xod0TX8hpNpoqJW94cx4/GMwOYYGpIIQVcM4?=
 =?us-ascii?Q?Cn8QbGMa/IzoR6jXuMd7+/gy5nNz/hqThWatu24w2GIGWeKWruW4qPTlQMXn?=
 =?us-ascii?Q?RFY8UxeJr69x0myBtBSmuZ/A8iCzoTRLvVlqk9G8thfnJgJx9MJ+QJsVy8bq?=
 =?us-ascii?Q?BEOkk0n67fCwHWoDW8ScfdXc4Dk8kdZCo7U6q4ddmhpbZkbGUTxRcdVs7L/e?=
 =?us-ascii?Q?yZCF7X8DAuCjE9QX5WUGg0n6TNCtAbIi8ONfFvBFVZLAdw/KXQFjrTtKJbYF?=
 =?us-ascii?Q?6Bx14kq6c/WRYkVY4skNSkaZnYGSdFYqH7VCa0LCRgw/WEiXsmF4VDqsLwEH?=
 =?us-ascii?Q?WHlNpAg+5rxZLo7O1ATqPnRjFo9DsyKgqKXlsCB95rqwwgZmHTtw72AP2RGR?=
 =?us-ascii?Q?qpXeyMRCTDmbkZ/3O/HDUDffffq7HtkSLDlW688sItvdeJOeaNCgx1yHvMcy?=
 =?us-ascii?Q?kkX+ddqNdXTbkbczx5LUn277tFEAghPDNEhgCAlVVT8ouMVnFEq5PX4e1mUO?=
 =?us-ascii?Q?9WvYoIYAeKptebyIbo4qhOOWfWT3M9ZmirkSnJnQAUKreZ7OTAkdIHmVm5fS?=
 =?us-ascii?Q?5zk3CTz4SyxuzvBxdtx5tleaOizNwNVi7NtsbjR3jfKh/+Gfo/JXtvQ3edYP?=
 =?us-ascii?Q?I2wUb7JGpPxIwQdXVfsTe2TNhSFyDv6RckjCvMGMhKGyc74tWHOz7DPblAsp?=
 =?us-ascii?Q?GpuKMj9PRGmQH8lwww5ANt9d7aY99U4mIqqsXSmCIbXu3IKMmYEB0iMf1wtf?=
 =?us-ascii?Q?R4O8B+LknfVTVZK1qVgQ+/+W54EEy6gQf?=
X-Microsoft-Antispam-Message-Info: FNAZk8iKncZ0P3xlaK7HmLbTx84FJk6TP+UEV0sWF7JXJA8j4CZIBR0QNHexGo4VSWsDcFp/6jEf7PorZ3wZjrQeEc5ibxeW3+bSQt26i4fxmwtDYM2LNorsV2Mi3Be44L7eXrPH/uIS9Mx2IcWWQLSL5KrLA5gXJQG+me8HPnmdTgW0nAemtZ+iEYMKwi8WwtMXcP9i8nTM1TlqReocRqSUwTV3iT0aTo0cqmkDAgcD17KSjBcfpej0OfDd3JhD5EQ2JcVmNRBpOgUUZOVcQ2MZlVnLrLhh7ZHmVghyp/4dI+maq0ZCBCn270Itvw1n4ucX4N1eDmzTsoIVr3B+Qw1+yXOW8MB3cWA4Den5oKy6Dz2yGHuhZz8B9o9gPDGxZHGhUdDUoRlWCaQdwStTVzq9LS536Gcz8kDzG+kvGLc=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1597;
 6:sey/V5qL+FskPhZGQBYyynWeukyQ7xkGoW+Kq2zo7xwX+WUlrLMOfeLTK6RB16Oirtdva4X19YGmMTCMupeI+eAQPpFTUWuBIE+kG5FqzMG0e0sf/q9Yt0rVvO9A4NgWB1mVhtKK2ZddvM7xR0cMog2vWsaiuR6f4j4ug3nyA+4cgsU1as9Psu9GwPSCdGRJFrF3HWqoSzxsP0mRXMyVU1UIlgkxQtEIgTUxhvbW1e7AvJt7UngV1L+FlbVdtw7KMoWbn9vzfT2X8RY98K1Kmrw7GdiCghKceg362p1Rp4Vw0rnF2MWx+xUOndlYmJT0TxD/3w8Lwwn5HEaOtACce4etatC6/yc9yeZnpVrSJdBeUSFQLf83Va8hK2rUhHLjl8EStMEd9MzQWFJ6HXEDUICVGCJ+ATH7QTHf9MVrK6ww3VLBsoVXSOgXOfJLTYTU2RQKLt7a0MIbdy8/Zmloy+k1a8n8MwU/TTwLoADFo5x03BkYijtL33tSlg1bvjsb;
 5:Qmo79p/nshuSfKv5SazS68q58g+9qucrfODy/i/OCK2iVjsftvfK2i34LGmE8k9LY7x3KvEQGI5ddX7yfVBq3PQp9mnOpLEALgwwwroQLVNc7YwGYJuBK/3UQ5Kvl31jC8HMaZxz4KhI5oNJJ2+7yNSNiEqDsdS2u/JF0uEMLkU=;
 24:9DCg/i+PkrWjgmMvfZE6+bMJP4V7NtFOISjT6FB90/hJv8a4u8eg0/gpBFxJxIQ+x7A/IFkFEEjQruhQhY4ZnT+26ta1zsl1cf1UksSYM5s=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1597;
 7:ppG4OeAS9BqbmB2/I+RdSe2IhNa8A/vYbrKSse8M1dpmF/umEvAVkpzoDMgrdB55SS32F700GUGDRwI8CoNRc/TvR3R4zsmAMeObXGwU346wMGf33JjLZH9Q25jsSJnNjo4AtF9LxYFieCv7iCcNZepg/k25WRguPoOzqx6EKsUcwM6n2xtu1RjYAMBko2HgkIK/msG9/LtxSmFNoIYm0BBu1sZsRfxrK/+RBIqvka78CfQ1qWQ6mTm844D6dV8Q
X-MS-Office365-Filtering-Correlation-Id: 2dd83f08-b483-44b6-5662-08d5a363f8e7
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:31.2980 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2dd83f08-b483-44b6-5662-08d5a363f8e7
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1597
Subject: [Minios-devel] [PATCH v3 11/43] arm64: dump the registers for
 do_bad_mode()/do_sync()
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBhZGRzIGEgbmV3IGZ1bmN0aW9uIGR1bXBfcmVncygpIHdoaWNoIGNhbiBkdW1w
IHRoZSByZWdpc3RlcnMKaW5mb3JtYXRpb24uCgpBbmQgdGhlIGRvX2JhZF9tb2RlKCkvZG9fc3lu
YygpIHdpbGwgdXNlIHRoZSBmdW5jdGlvbiB0byBkdW1wIHRoZQpyZWdpc3RlcnMuCgpUaGlzIHBh
dGNoIHJlZmVycyB0byBWb2xvZHlteXIgQmFiY2h1aydzIHBhdGNoOgogICJXSVA6IHRyYXAuYzog
YWRkIHRyYXAgaGFuZGxlcyBmb3IgYXJtNjQiCgpTaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUg
PHNoaWppZS5odWFuZ0Bhcm0uY29tPgotLS0KIGFyY2gvYXJtL2FybTY0L3RyYXBzLmMgfCAzMiAr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogMSBmaWxlIGNoYW5nZWQsIDMwIGluc2Vy
dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtNjQvdHJh
cHMuYyBiL2FyY2gvYXJtL2FybTY0L3RyYXBzLmMKaW5kZXggNjJkZDJlNi4uNjZmODQyZSAxMDA2
NDQKLS0tIGEvYXJjaC9hcm0vYXJtNjQvdHJhcHMuYworKysgYi9hcmNoL2FybS9hcm02NC90cmFw
cy5jCkBAIC0yLDE1ICsyLDQzIEBACiAjaW5jbHVkZSA8bWluaS1vcy9hcm02NC90cmFwcy5oPgog
I2luY2x1ZGUgPGNvbnNvbGUuaD4KIAorc3RhdGljIHZvaWQgZHVtcF9yZWdzKHN0cnVjdCBwdF9y
ZWdzICpyZWdzLAorICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBlc3IsIHVuc2lnbmVk
IGxvbmcgZmFyKQoreworICAgIHByaW50aygiKioqIFN5bmMgZXhjZXB0aW9uIGF0IFBDID0gJWx4
ICoqKiBcbiIsIHJlZ3MtPnBjKTsKKyAgICBwcmludGsoIlRocmVhZCBzdGF0ZTpcbiIpOworICAg
IHByaW50aygiXHRYMCAgPSAweCUwMTZseCBYMSAgPSAweCUwMTZseFxuIiwgcmVncy0+eFswXSwg
cmVncy0+eFsxXSk7CisgICAgcHJpbnRrKCJcdFgyICA9IDB4JTAxNmx4IFgzICA9IDB4JTAxNmx4
XG4iLCByZWdzLT54WzJdLCByZWdzLT54WzNdKTsKKyAgICBwcmludGsoIlx0WDQgID0gMHglMDE2
bHggWDUgID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbNF0sIHJlZ3MtPnhbNV0pOworICAgIHByaW50
aygiXHRYNiAgPSAweCUwMTZseCBYNyAgPSAweCUwMTZseFxuIiwgcmVncy0+eFs2XSwgcmVncy0+
eFs3XSk7CisgICAgcHJpbnRrKCJcdFg4ICA9IDB4JTAxNmx4IFg5ICA9IDB4JTAxNmx4XG4iLCBy
ZWdzLT54WzhdLCByZWdzLT54WzldKTsKKyAgICBwcmludGsoIlx0WDEwID0gMHglMDE2bHggWDEx
ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMTBdLCByZWdzLT54WzExXSk7CisgICAgcHJpbnRrKCJc
dFgxMiA9IDB4JTAxNmx4IFgxMyA9IDB4JTAxNmx4XG4iLCByZWdzLT54WzEyXSwgcmVncy0+eFsx
M10pOworICAgIHByaW50aygiXHRYMTQgPSAweCUwMTZseCBYMTUgPSAweCUwMTZseFxuIiwgcmVn
cy0+eFsxNF0sIHJlZ3MtPnhbMTVdKTsKKyAgICBwcmludGsoIlx0WDE2ID0gMHglMDE2bHggWDE3
ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMTZdLCByZWdzLT54WzE3XSk7CisgICAgcHJpbnRrKCJc
dFgxOCA9IDB4JTAxNmx4IFgxOSA9IDB4JTAxNmx4XG4iLCByZWdzLT54WzE4XSwgcmVncy0+eFsx
OV0pOworICAgIHByaW50aygiXHRYMjAgPSAweCUwMTZseCBYMjEgPSAweCUwMTZseFxuIiwgcmVn
cy0+eFsyMF0sIHJlZ3MtPnhbMjFdKTsKKyAgICBwcmludGsoIlx0WDIyID0gMHglMDE2bHggWDIz
ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMjJdLCByZWdzLT54WzIzXSk7CisgICAgcHJpbnRrKCJc
dFgyNCA9IDB4JTAxNmx4IFgyNSA9IDB4JTAxNmx4XG4iLCByZWdzLT54WzI0XSwgcmVncy0+eFsy
NV0pOworICAgIHByaW50aygiXHRYMjYgPSAweCUwMTZseCBYMjcgPSAweCUwMTZseFxuIiwgcmVn
cy0+eFsyNl0sIHJlZ3MtPnhbMjddKTsKKyAgICBwcmludGsoIlx0WDI4ID0gMHglMDE2bHggWDI5
ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMjhdLCByZWdzLT54WzI5XSk7CisgICAgcHJpbnRrKCJc
dFgzMCAobHIpID0gMHglMDE2bHhcbiIsIHJlZ3MtPmxyKTsKKyAgICBwcmludGsoIlx0c3AgID0g
MHglMDE2bHhcbiIsIHJlZ3MtPnNwKTsKKyAgICBwcmludGsoIlx0cHN0YXRlICA9IDB4JTAxNnhc
biIsIHJlZ3MtPnBzdGF0ZSk7CisgICAgcHJpbnRrKCJcdGVzcl9lbDEgPSAlMDhseFxuIiwgZXNy
KTsKKyAgICBwcmludGsoIlx0ZmFyX2VsMSA9ICUwOGx4XG4iLCBmYXIpOworfQorCiB2b2lkIGRv
X2JhZF9tb2RlKHN0cnVjdCBwdF9yZWdzICpyZWdzLCBpbnQgcmVhc29uLAogICAgICAgICAgICAg
ICAgICAgdW5zaWduZWQgbG9uZyBlc3IsIHVuc2lnbmVkIGxvbmcgZmFyKQogewotICAgIC8qIFRP
IERPICovCisgICAgcHJpbnRrKCIgQmFkIGFib3J0IG51bWJlciA6ICVkXG4iLCByZWFzb24pOwor
ICAgIGR1bXBfcmVncyhyZWdzLCBlc3IsIGZhcik7CiAgICAgZG9fZXhpdCgpOwogfQogCiB2b2lk
IGRvX3N5bmMoc3RydWN0IHB0X3JlZ3MgKnJlZ3MsIHVuc2lnbmVkIGxvbmcgZXNyLCB1bnNpZ25l
ZCBsb25nIGZhcikKIHsKLSAgICAvKiBUTyBETyAqLworICAgIGR1bXBfcmVncyhyZWdzLCBlc3Is
IGZhcik7CiAgICAgZG9fZXhpdCgpOwogfQotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1p
bmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qu
b3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:46 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xhy-00034V-BQ; Mon, 16 Apr 2018 06:33:46 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xhw-000345-GL
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:44 +0000
X-Inumbo-ID: f9a35b78-413f-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::62f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id f9a35b78-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:46 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=gv8UbCg/66DEnOB6wV8oTm4xKpiMAPFB2N8RnrbXJVA=;
 b=htwi/WywZm0aN0Rnhek1fp1z+I0+870Jq/DNKhYeIMWKwgM0iifRpz6dFfnxgHX5upFvQKNcSCOa+CUj1s+0Vl9zjfVDKj05eOSkHBI5PetR4/ofce72Hf3i41j9oVGXj9L0jUHQmuKpOfg0s39oUam59f1xk170Xep+JkXfZmI=
Received: from VI1PR0801CA0006.eurprd08.prod.outlook.com
 (2603:10a6:800:32::16) by AM4PR0801MB1586.eurprd08.prod.outlook.com
 (2603:10a6:200:3e::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 06:33:34 +0000
Received: from VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::207) by VI1PR0801CA0006.outlook.office365.com
 (2603:10a6:800:32::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:34 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT059.mail.protection.outlook.com (10.152.19.60) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:33 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:25 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:52 +0000
Message-ID: <1523860343-16382-13-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(396003)(39850400004)(39380400002)(376002)(2980300002)(438002)(189003)(199004)(106466001)(50226002)(7696005)(2351001)(2906002)(51416003)(16586007)(305945005)(54906003)(6916009)(8676002)(336012)(5660300001)(246002)(59450400001)(6666003)(186003)(106002)(39060400002)(47776003)(76176011)(8936002)(26005)(2616005)(86362001)(476003)(11346002)(126002)(8666007)(77096007)(486006)(446003)(478600001)(36756003)(72206003)(4326008)(26826003)(356003)(48376002)(316002)(50466002)(104016004)(426003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR0801MB1586; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT059;
 1:RovQNFpAdzYnfGE80VWx9I7BJ95kvoEXY2cnDAaPtnf2qAOcPpwkvAJTMsT0lPCngcwrzlEAEALfF4IIZIVRLtt7542MF5LwjUj7vjMV/DY8Ll5B17IckV56NepMfTlQ
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR0801MB1586; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1586;
 3:r7YjO/ndyfg2lwSvdetfh2harj8D5IRcrWtVZ4yA7/BO57c2RuFAWcv3fOeBFVj0/kbeTtlaX6g6IBGn5LhwpgCrO7LQDydObBOrycc1ySZcmpfaVCeZ5Hms0QHDtlOgN16Iya2J+fIRphjeu1DbFq8tLp70KCG3xG9Wgnuvb0tSrzmYuFctoSsfXJAyqMMv4GHoXuPcV7UvV7i+AI4PPZ9Va5Amub/g+J/b1brKCLXG3lssIvRuUB6t2YoBY6JDTkvBTduXiLCDt80aQsL4ala+Dy7aOSCCVdDNSq467EDRsWY+AwndofM+9HOyiEH4/3haY0PodF1XtF+Y9CMdCC4p5qh9I6ndA2ugFjHXuu4=;
 25:7rfgKP31dxZhfOveNF/J4ZUvnRatVA56VvahThSHt8HAyqo6kZgytHrKwGorcygeRlIb5LIUTefFkGKHxVXTs7Pyc3T6mS2f7JuJVVAHXcf8LPy0QP0g/BxY/oWUd5419MRaa5XElGZEW1a4mKd0QyhRg+HcggdhOkRxpSUR/S5g6voQOlY60YT1OvOvUd+S/qjfFV1aeEXtOIySitGcP50VWEx/obLElAAvOQPW9eREqO9Mk+2yhOoKSf6eWvKRcL4rgDU61OAfaEghLz5uWoCEGClhdFmLnm8PS26w3TZ4t3C0ntWZo5yuBZ6JTehz4wLT2ofiw65Gtwj3NUgN9g==
X-MS-TrafficTypeDiagnostic: AM4PR0801MB1586:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1586;
 31:kI/Ojjb4RkEHuSZWlRe/W6Bu3Bv/jQ24neE/NfmLckK4l5VeFVwqBDmJOI5DjsjjwXGv7BwenjnXlP9RG0uZglgDZx2eA8gmIG4r0qYxeORMpvRLFWeqazX8gVjeJx7dSKQ3RAdCwIvDXEQFjoGNBb2kOA456C3W6HxfmM76wh0vyZ7bp1JrUi7ZFlk0AiZb6eBhgEZqwIjQNro5X0w5T0HFly1Nf9r0B4jmRw8J4mk=;
 20:CAuHkLFzwE871zzws9YFb29L3SMyFaR8KvDfUAH9XMiT6kfFYRxjh8xN/0DFhdnpidbReDlq0IEdjjjV0jhNVyqZDtRjfPIwFvOV4NYmLeGFkF4LL3L+n98xIPWLV35XA2Yxxfm+7lxrVYMfGZSefeNxG8lkmEWNRZI/z22b/Y7Xk+MjY5/DG5O1dictMYSMEz9ydVBloufPamzQJMJjZVmyUCI4Hlj1ge2A8qEYXATaDTh1+u/hMC9GAELsrhY4;
 4:SDUGB57UeONJEGPD4XVGU87DBi6ghN1pSSOj+xGcXsSFSGSJUPx84quC2tl4f4iPY16kAwckaEG+TkHBfevbUHawDtcyjDFD0cQbNLTFmyP4Fk9IAnoEs2ea/8zKYNquMrU0fSwG9kf13Sc6JE8DUIpAnFB9Wocabe9StkrVp9fFzQKYycNhDlf9Keg2jN/yag0oxiIYOupoTum4ffomHQiTSPl4sPJQma6lT+llY5no4bIfcIf8ZhkmBjyuQU5+rEzv/sBIzDHggd/pwrkqbXPwnM0q7TJvJ4vN7QFu+Pu1qvVY23Pr+KbQ0vtS8cxn
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR0801MB15865943780064BE76D89C9D84B00@AM4PR0801MB1586.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93004095)(3231232)(944501327)(52105095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:AM4PR0801MB1586; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0801MB1586; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR0801MB1586;
 23:GOQVqaSfH4tc5y2db0DZ0GTOqIvqd9MI3OhS0HW?=
 =?us-ascii?Q?pQuilCghZItsjw28NS5KpQxZuY09QHDf1H065wV8HgyJlD2j8d8GovGWg7Ni?=
 =?us-ascii?Q?VjTsF/aTvottM4sq5pnjQ3llLii3DEwPY8C4oMRnNkxGJnVuWLMQzLeQ3zzY?=
 =?us-ascii?Q?lyWeYkBbnYFNTf83UxssgonZV1x+kaoaBdWFVzcUJcdyRFP12CC5j0FfRMb5?=
 =?us-ascii?Q?V17YLzQuYDS+W0/MCKGCDQNdLnxfvxq6pLp+ebpJLcKOwiWRbFRK16nWurcl?=
 =?us-ascii?Q?nmWASA0NQXy85ehkzVJ7nLMQO6i4ICmBY0WFgGV0f69prf95s8mTufrDPexl?=
 =?us-ascii?Q?7IzgIf33gM1I/uuGzDe4k4Bye7navGqH3mxJ28RO7EHMJUDhI5LSfV7dmTy1?=
 =?us-ascii?Q?XrX0Glhseduygf7IuluIW4dG/sDT42yQPf/1y7po2ktyGCD45nwJHHYzAfA3?=
 =?us-ascii?Q?A0pc9gQxOXPOuqFxa1Gv7g/1KJQ1oBhdG/iVFB4mfywxuObcg+7XQhBjzTZz?=
 =?us-ascii?Q?Gdp+3Ur09t1b+RiUIRVguC8wJOGR54g2/yUYgBJDTR0ggjV2RfSyOwiFCQxz?=
 =?us-ascii?Q?HjKVa3BmQ4UNlWewtq2LiWwwgGiM7oh0fUCRc0oaLmLZ2BHzJLb5NDMNc0c5?=
 =?us-ascii?Q?B5ut7VTBF1qbviwyDCrxzO208hSIhACD8ULv0Bwe4lJ53uiJ4XvBgC7PkhKy?=
 =?us-ascii?Q?OtnPaINd6hp42+v6EJadDbEsr1VV5BpAZR0bKykONt8M8+cwh4lxQlRVqzmJ?=
 =?us-ascii?Q?LA1YYKWgRoMD6tn7TNyOObNc2TTaS5y0utDv+6246P4T1MNVEjUhpIKD0AI6?=
 =?us-ascii?Q?1fOdSSUDVLZrnZKV6wJ3bHgny8qqrOIZKm9AfkdgkQrQpkabwq1ZzTWh0Kxd?=
 =?us-ascii?Q?q3MSkczaU15o7F/7/WNkP7xT8Jt7Hkn1dCClpGs0aFwYFtwvmmqNa2spTbnW?=
 =?us-ascii?Q?eQyBW0iagWZcX+gr/X24Hy6UI/51+/jhzdfjy+ag1Tmpqf31zUv1g14NuFWC?=
 =?us-ascii?Q?snCh+zi51/T7CRNs3m4CA5tOjl3qTBiJo/YdzM8JsehVg4OGdg1nvgDX0xQu?=
 =?us-ascii?Q?rUCDex0nfSFWIsA4tW9y7oV0fZDPkfQMnt/vaSVaLSKnu5SULl5LVqxxZjdL?=
 =?us-ascii?Q?+KUcCUsOJdtwlxt+5u2QMCPb50l2WyeSKjihcCtdr1HqdsUjS+r6FtA=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: 66s+A7o7eG7ieIhgDjSEwpWOI76t7WvcLWSpMVTiijGL930LrshTEtyETqU4E8VTqGIIA9R0/BrO83LESAP9eMP2kUFpqKJMK27/eUORIneXP3z6mn0bS7aVtQ13FLkjlOGJW7XXOgmCFuQiNSUtpit9BsvRK/EJ3LNOWTNkQfMz1i0DD31pebeJa7MpihyH3Izu7WyXuI1OulB4+w/dBcIbD8fUgI4ixnJ5IIql6E0DqQrgtnox1PV5w90uFffnjn20lQTZ2fYhlYmYxqaNps4FH50nk+o+hzACQtkM9TAbHe/0myt4Fg45haQJZgQcJxL8dTAwWh4ROT+f3LS8HWcxppqzTKlBSiVNFl/6g0zlg85O0dfOocI+Fn/fJWermtfEdV0voxsibuRTukrrRtwYzpNK47ecvusOTaBbtok=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1586;
 6:kybCxDZh0NBovfLbwDQL2NQbGKF+RN12+uYoRpawuhkMBV8viVHPMsu9wuWM60ckaKxhB7OnH3kj0tGhrjM0XO9n8zVam4orKF9wWGWJfhp5WbCYPkgZJ53smS+LSc22OPU7NCJEVciwEovCKzZAidPb8ZIyO+MAWR3c8Jexc5uIJVSVNNQ+Qdfra3b3TdWVwqFbuzLkc1FGmSRamRGXc+YMpT61lxqteAyQvVrqxMHoRJpWJJOmXaA5cGIcU2NgAnPRWLqA+RFkrylgbvF1nEFvjOzErAO/ggvYRbKh7oHYszyxwa6QFjuN40x5SnN7QFJyF2ip7siwJa7gsVJiS1q9oNlwnN4jNfnvKd07bwE/Mjch35nznyBYSZ57k5cMtkqYwpLwmNl+6X02gd7WD8yFLAW/LzPtA8s35mlH3nd9uE32onKnGRtyhXc+JQ7el0eGU7uywFpcEKKC9lbmAyTE+8ZMPNzJu7lm3UCzqvellFDKQBtTz3WmRc7KfhzJ;
 5:Bwr9NYF2065fMxrA2JENN1JVr2yWFyyQU5Ewrhi/E5S7UI3qkuukrvN7/f8c7f1Iiz1yB0VxU4LTcx1wt+AhSWC/DwhRqlPBoAds7Dr4x5dvXcormLdxs4+dlKH9kalEjEZUoT825UNhhgKHc+fgS9TOQyqpR3KUPcfhLEZcD2A=;
 24:7t6n8X1magqeyTBr5RuE0W9ZHHOHuwJs8589W7PUDSanDNvKNJPHEhWUmNdmpIs9KCdauR2H/9PkK4GFNjgpHgSqnKuC5ZwTTJuA6nTjERg=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1586;
 7:d5YShzL7siNspX98jqwDgbO+6wjUFClfsm0gZPMNi/8MMR3XhWDmIPypLsl3XUXFqDwrUkKavY26rT8DZ4ydn6A7oJQOe9SJWaJd+57QQCCPgNYckw8ex7PVF+WE2TUQzXDybTdVB3OoMmy6BKzE5IjCRYFXVjdfOGVrqfsWG/gFzas8NPS/G6QaTg0ApEo7R0UXhc7vQc3ampaCw9qq8Ojv055ii21dQubLVFoHFPUwI+Il1nvgE/gPCVjjNwkt
X-MS-Office365-Filtering-Correlation-Id: 3ae83aee-855e-4905-fafb-08d5a363fa78
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:33.9302 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3ae83aee-855e-4905-fafb-08d5a363fa78
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0801MB1586
Subject: [Minios-devel] [PATCH v3 12/43] arm64: add the basic helpers for
 arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBhZGRzIHRoZSBiYXNpYyBoZWxwZXJzIGluIGhlYWRlcnMgZm9yIGFybTY0Ogog
ICAgMS4pIG1iL3JtYi93bWIKICAgIDIuKSBsb2NhbF9pcnFfZGlzYWJsZS9sb2NhbF9pcnFfZW5h
YmxlCiAgICAzLikgbG9jYWxfaXJxX3NhdmUvbG9jYWxfaXJxX3Jlc3RvcmUvbG9jYWxfc2F2ZV9m
bGFncwogICAgNC4pIHNpbXBsaWZ5IHRoZSBfX2ZmcwogICAgNS4pIGFkZCBCVUcoKS4KClRoaXMg
cGF0Y2ggcmVmZXJzIHRvIENoZW4gQmFvemkncyBwYXRjaDoKICAgICAiSW5pdGlhbCBjb2RlcyBm
b3IgYXJtNjQiCkFuZCB0aGlzIHBhdGNoIGFsc28gcmVmZXJzIHRvIEZyZWVCU0QgY29kZToKICAg
ICBzeXMvYXJtNjQvaW5jbHVkZS9hdG9taWMuaAoKU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamll
IDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KLS0tCiBpbmNsdWRlL2FybS9hcm02NC9vcy5oIHwgMjgg
KysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS9hcm0vb3MuaCAgICAgICB8IDc1ICsrKysrKysr
KysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5n
ZWQsIDUyIGluc2VydGlvbnMoKyksIDUxIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0
IGluY2x1ZGUvYXJtL2FybTY0L29zLmgKCmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcm02NC9v
cy5oIGIvaW5jbHVkZS9hcm0vYXJtNjQvb3MuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi4zZDRhYWRhCi0tLSAvZGV2L251bGwKKysrIGIvaW5jbHVkZS9hcm0vYXJtNjQvb3Mu
aApAQCAtMCwwICsxLDI4IEBACisjaWZuZGVmIF9BUk02NF9PU19IXworI2RlZmluZSBfQVJNNjRf
T1NfSF8KKworI2RlZmluZSBCVUcoKSAgICAgICAgICAgX19hc21fXyBfX3ZvbGF0aWxlKCJ3Zmki
IDo6OiAibWVtb3J5IikKKworc3RhdGljIGlubGluZSB2b2lkIGxvY2FsX2lycV9kaXNhYmxlKHZv
aWQpCit7CisgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1zciBkYWlmc2V0LCAjMiI6OjoibWVt
b3J5Iik7Cit9CisKK3N0YXRpYyBpbmxpbmUgdm9pZCBsb2NhbF9pcnFfZW5hYmxlKHZvaWQpCit7
CisgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1zciBkYWlmY2xyLCAjMiI6OjoibWVtb3J5Iik7
Cit9CisKKyNkZWZpbmUgbG9jYWxfaXJxX3NhdmUoeCkgeyBcCisgICAgX19hc21fXyBfX3ZvbGF0
aWxlX18oIm1ycyAlMCwgZGFpZjsgbXNyIGRhaWZzZXQsICMyIjoiPXIiKHgpOjoibWVtb3J5Iik7
IFwKK30KKworI2RlZmluZSBsb2NhbF9pcnFfcmVzdG9yZSh4KSB7IFwKKyAgICBfX2FzbV9fIF9f
dm9sYXRpbGVfXygibXNyIGRhaWYsICUwIjo6InIiKHgpOiJtZW1vcnkiKTsgXAorfQorCisjZGVm
aW5lIGxvY2FsX3NhdmVfZmxhZ3MoeCkgeyBcCisgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1y
cyAlMCwgZGFpZiI6Ij1yIih4KTo6Im1lbW9yeSIpOyBcCit9CisKKyNlbmRpZgpkaWZmIC0tZ2l0
IGEvaW5jbHVkZS9hcm0vb3MuaCBiL2luY2x1ZGUvYXJtL29zLmgKaW5kZXggNmExY2MzNy4uYjEw
NTU3YSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9hcm0vb3MuaAorKysgYi9pbmNsdWRlL2FybS9vcy5o
CkBAIC04LDQxICs4LDQyIEBACiAjaW5jbHVkZSA8bWluaS1vcy9jb21waWxlci5oPgogI2luY2x1
ZGUgPG1pbmktb3Mva2VybmVsLmg+CiAjaW5jbHVkZSA8eGVuL3hlbi5oPgorI2luY2x1ZGUgPGFy
bTY0L29zLmg+CiAKIHZvaWQgYXJjaF9maW5pKHZvaWQpOwogdm9pZCB0aW1lcl9oYW5kbGVyKGV2
dGNobl9wb3J0X3QgcG9ydCwgc3RydWN0IHB0X3JlZ3MgKnJlZ3MsIHZvaWQgKmlnbik7CiAKIGV4
dGVybiB2b2lkICpkZXZpY2VfdHJlZTsKIAotI2RlZmluZSBCVUcoKSB3aGlsZSgxKXthc20gdm9s
YXRpbGUgKCIud29yZCAweGU3ZjAwMGYwXG4iKTt9IC8qIFVuZGVmaW5lZCBpbnN0cnVjdGlvbjsg
d2lsbCBjYWxsIG91ciBmYXVsdCBoYW5kbGVyLiAqLwotCiAjZGVmaW5lIHNtcF9wcm9jZXNzb3Jf
aWQoKSAwCiAKICNkZWZpbmUgYmFycmllcigpIF9fYXNtX18gX192b2xhdGlsZV9fKCIiOiA6IDoi
bWVtb3J5IikKIAogZXh0ZXJuIHNoYXJlZF9pbmZvX3QgKkhZUEVSVklTT1Jfc2hhcmVkX2luZm87
CiAKLS8vIGRpc2FibGUgaW50ZXJydXB0cwotc3RhdGljIGlubGluZSB2b2lkIGxvY2FsX2lycV9k
aXNhYmxlKHZvaWQpIHsKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygiY3BzaWQgaSI6OjoibWVt
b3J5Iik7Ci19Ci0KLS8vIGVuYWJsZSBpbnRlcnJ1cHRzCi1zdGF0aWMgaW5saW5lIHZvaWQgbG9j
YWxfaXJxX2VuYWJsZSh2b2lkKSB7Ci0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18oImNwc2llIGki
Ojo6Im1lbW9yeSIpOwotfQotCi0jZGVmaW5lIGxvY2FsX2lycV9zYXZlKHgpIHsgXAotICAgIF9f
YXNtX18gX192b2xhdGlsZV9fKCJtcnMgJTAsIGNwc3I7Y3BzaWQgaSI6Ij1yIih4KTo6Im1lbW9y
eSIpOyAgICBcCi19Ci0KLSNkZWZpbmUgbG9jYWxfaXJxX3Jlc3RvcmUoeCkgeyAgICBcCi0gICAg
X19hc21fXyBfX3ZvbGF0aWxlX18oIm1zciBjcHNyX2MsICUwIjo6InIiKHgpOiJtZW1vcnkiKTsg
ICAgXAotfQorI2RlZmluZSBpc2IoKSAgICAgICAgICAgX19hc21fXyBfX3ZvbGF0aWxlKCJpc2Ii
IDo6OiAibWVtb3J5IikKKworLyoKKyAqIE9wdGlvbnMgZm9yIERNQiBhbmQgRFNCOgorICoJb3No
bGQJT3V0ZXIgU2hhcmVhYmxlLCBsb2FkCisgKglvc2hzdAlPdXRlciBTaGFyZWFibGUsIHN0b3Jl
CisgKglvc2gJT3V0ZXIgU2hhcmVhYmxlLCBhbGwKKyAqCW5zaGxkCU5vbi1zaGFyZWFibGUsIGxv
YWQKKyAqCW5zaHN0CU5vbi1zaGFyZWFibGUsIHN0b3JlCisgKgluc2gJTm9uLXNoYXJlYWJsZSwg
YWxsCisgKglpc2hsZAlJbm5lciBTaGFyZWFibGUsIGxvYWQKKyAqCWlzaHN0CUlubmVyIFNoYXJl
YWJsZSwgc3RvcmUKKyAqCWlzaAlJbm5lciBTaGFyZWFibGUsIGFsbAorICoJbGQJRnVsbCBzeXN0
ZW0sIGxvYWQKKyAqCXN0CUZ1bGwgc3lzdGVtLCBzdG9yZQorICoJc3kJRnVsbCBzeXN0ZW0sIGFs
bAorICovCisjZGVmaW5lIGRtYihvcHQpICAgICAgICBfX2FzbV9fIF9fdm9sYXRpbGUoImRtYiAi
ICNvcHQgOjo6ICJtZW1vcnkiKQorI2RlZmluZSBkc2Iob3B0KSAgICAgICAgX19hc21fXyBfX3Zv
bGF0aWxlKCJkc2IgIiAjb3B0IDo6OiAibWVtb3J5IikKIAotI2RlZmluZSBsb2NhbF9zYXZlX2Zs
YWdzKHgpICAgIHsgXAotICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJtcnMgJTAsIGNwc3IiOiI9
ciIoeCk6OiJtZW1vcnkiKTsgICAgXAotfQorI2RlZmluZSBtYigpICAgICAgICAgICAgZG1iKHN5
KSAvKiBGdWxsIHN5c3RlbSBtZW1vcnkgYmFycmllciBhbGwgKi8KKyNkZWZpbmUgd21iKCkgICAg
ICAgICAgIGRtYihzdCkgLyogRnVsbCBzeXN0ZW0gbWVtb3J5IGJhcnJpZXIgc3RvcmUgKi8KKyNk
ZWZpbmUgcm1iKCkgICAgICAgICAgIGRtYihsZCkgLyogRnVsbCBzeXN0ZW0gbWVtb3J5IGJhcnJp
ZXIgbG9hZCAqLwogCiBzdGF0aWMgaW5saW5lIGludCBpcnFzX2Rpc2FibGVkKHZvaWQpIHsKICAg
ICBpbnQgeDsKQEAgLTUwLDE0ICs1MSw4IEBAIHN0YXRpYyBpbmxpbmUgaW50IGlycXNfZGlzYWJs
ZWQodm9pZCkgewogICAgIHJldHVybiB4ICYgMHg4MDsKIH0KIAotLyogV2UgcHJvYmFibHkgb25s
eSBuZWVkICJkbWIiIGhlcmUsIGJ1dCB3ZSdsbCBzdGFydCBieSBiZWluZyBwYXJhbm9pZC4gKi8K
LSNkZWZpbmUgbWIoKSBfX2FzbV9fKCJkc2IiOjo6Im1lbW9yeSIpOwotI2RlZmluZSBybWIoKSBf
X2FzbV9fKCJkc2IiOjo6Im1lbW9yeSIpOwotI2RlZmluZSB3bWIoKSBfX2FzbV9fKCJkc2IiOjo6
Im1lbW9yeSIpOwotCiAvKioqKioqKioqKioqKioqKioqKioqKioqKiogYXJtICoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCiAjaWZkZWYgX19JTlNJREVfTUlOSU9TX18KLSNpZiBkZWZp
bmVkIChfX2FybV9fKQogI2RlZmluZSB4Y2hnKHB0cix2KSBfX2F0b21pY19leGNoYW5nZV9uKHB0
ciwgdiwgX19BVE9NSUNfU0VRX0NTVCkKIAogLyoqCkBAIC0xMjksMzEgKzEyNCw5IEBAIHN0YXRp
YyBfX2lubGluZV9fIHZvaWQgY2xlYXJfYml0KGludCBuciwgdm9sYXRpbGUgdW5zaWduZWQgbG9u
ZyAqYWRkcikKICAqLwogc3RhdGljIF9faW5saW5lX18gdW5zaWduZWQgbG9uZyBfX2Zmcyh1bnNp
Z25lZCBsb25nIHdvcmQpCiB7Ci0gICAgaW50IGNsejsKLQotICAgIC8qIHh4eHh4MTAwMDAgPSB3
b3JkCi0gICAgICogeHh4eHgwMTExMSA9IHdvcmQgLSAxCi0gICAgICogMDAwMDAxMTExMSA9IHdv
cmQgXiAod29yZCAtIDEpCi0gICAgICogICAgICA0ICAgICA9IDMxIC0gY2x6KHdvcmQgXiAod29y
ZCAtIDEpKQotICAgICAqLwotCi0gICAgX19hc21fXyAoCi0gICAgICAgICJzdWIgcjAsICVbd29y
ZF0sICMxXG4iCi0gICAgICAgICJlb3IgcjAsIHIwLCAlW3dvcmRdXG4iCi0gICAgICAgICJjbHog
JVtjbHpdLCByMFxuIjoKLSAgICAgICAgLyogT3V0cHV0czogKi8KLSAgICAgICAgW2Nsel0gIj1y
IihjbHopOgotICAgICAgICAvKiBJbnB1dHM6ICovCi0gICAgICAgIFt3b3JkXSAiciIod29yZCk6
Ci0gICAgICAgIC8qIENsb2JiZXJzOiAqLwotICAgICAgICAicjAiKTsKLQotICAgIHJldHVybiAz
MSAtIGNsejsKKyAgICByZXR1cm4gX19idWlsdGluX2N0emwod29yZCk7CiB9CiAKLSNlbHNlIC8q
IGlmZGVmIF9fYXJtX18gKi8KLSNlcnJvciAiVW5zdXBwb3J0ZWQgYXJjaGl0ZWN0dXJlIgotI2Vu
ZGlmCiAjZW5kaWYgLyogaWZkZWYgX19JTlNJREVfTUlOSU9TICovCiAKIC8qKioqKioqKioqKioq
KioqKioqKiogY29tbW9uIGFybTMyIGFuZCBhcm02NCAgKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVu
cHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv
L21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:49 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xi1-00035u-DD; Mon, 16 Apr 2018 06:33:49 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xi0-000354-0K
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:48 +0000
X-Inumbo-ID: fc2f77e5-413f-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::619])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id fc2f77e5-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:51 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=aB4MtPdxuTlf7vXZWZygJk5/lyS2PdNPhVlfw93DZBE=;
 b=gOCJgAcM5aoRrF8BFd7HRh67tKxiYnrB1IO1Z2Dg33uQYX2vIIBEX0DqbdgD5/gswmcniR2GzZbp+1jFvpJnJzcIGSsxwxQXPtCgbl8CjFnis98tLEPknjL3DIxdExf/Dq++/m396q/Vp8LWNsn6BKvHFB/dG71EJymlkZRciu0=
Received: from VI1PR0801CA0037.eurprd08.prod.outlook.com
 (2603:10a6:800:32::47) by DB5PR0801MB1592.eurprd08.prod.outlook.com
 (2603:10a6:0:3b::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:33:38 +0000
Received: from VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by VI1PR0801CA0037.outlook.office365.com
 (2603:10a6:800:32::47) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.11 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:38 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT059.mail.protection.outlook.com (10.152.19.60) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:38 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:31 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:53 +0000
Message-ID: <1523860343-16382-14-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(376002)(346002)(39850400004)(396003)(2980300002)(438002)(189003)(199004)(72206003)(8676002)(26826003)(50226002)(8936002)(106466001)(478600001)(8666007)(305945005)(4326008)(6916009)(6666003)(5660300001)(86362001)(47776003)(2351001)(51416003)(426003)(26005)(104016004)(39060400002)(77096007)(246002)(48376002)(106002)(356003)(54906003)(336012)(50466002)(2906002)(16586007)(476003)(126002)(7696005)(486006)(186003)(446003)(36756003)(316002)(11346002)(59450400001)(76176011)(2616005);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR0801MB1592; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT059;
 1:vvBS/AFR1Oo0gwCPG9qw26cOQcWZmp5EyQbavUwqn3c6iRvZcM1lhOSAZYyvbIip9o5JbTXCOfcTc9NFCSLOWqK0xXxEGXECKcDYWgQ0FgtbkQfHxmoodgWGzjrbjKdO
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR0801MB1592; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1592;
 3:8/18exEBKulCR9zVVNyBVMJrgTDDalfJ01iCZbycsrLGOAHE1C0PNbzCmnZr+uP8XhLaiYid5/3DMTBovCILe4+P2ditcbfmh6+92Ds8yE9D/00WqoUZcxxS/QcTM931oSQ2PDmVEBNeYJXl9LUX96pQZR2s74bW8r52AF8NME0WJoyNOeMw0PqMKfs8SxStjICfofl0GlOggAB8Vf8TYQxto3iyVBZLAG86ITyKhyPYkXBbOin5sAqGemPsHW/Ttkht+c+PzW5LOdbXjFX38eCxiuBKINU90qof3p5c5x19s93TirWNvqh8tcz7vYj2WTGGU8JBJshTizl/EkuMS3xe/tcWNv6br6gZoWovDEw=;
 25:SU2igJtsbu24VApToJsWl+u5qTqwRluVUOgXTIKF4uVHT+DdmKDz+d8ioLCb9kp044jaB003FcJMBan2CNX/39jbgvKMRPvW1Sak1gUXsDGLhgw0ZOKvwb66D8Gt5QHlhmQvvdLPkuqJabuHRyWj3I/iu09Nfjfq0Mz1sYyc20PKjA5DaLySuIjKRAqLwhNSlA+qV1s1QthdfmCSiSGHbUrLoHXKD3uLmliHMYDiLwmvWw63TgjfIX66Bd2/ukhI9plmSbOMndm/ag0Pa7ODsu6ii5BfSkqZeI6lAcwAomHPRveKecV6dUatMp1sZEX8bcJwziEIdS/QYfZs+kmzvQ==
X-MS-TrafficTypeDiagnostic: DB5PR0801MB1592:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1592;
 31:VE9ftlQYnoDpAFP+ZaOUBrTfocHCiKQrh4mIHw373neKKs7PyJkgNgr5HK8GYV0M3oxOxTZC27pHvKJnxK6pCDKt/Nvque+wreRK4vAUuFIRI/We9qE/QwiRWLwV7x2+GL/ZgoGVi4g6r0ncaPN//qRj+0A7ertk39Ur7tXNZj1lznAfA4XlXeKNdTr5S1I3cjOl+Zo9yXAOIW0g2GoKWamNLVN/lAE6HNV2wpS5xFE=;
 20:he9eba+kXN7QChlkcPECcchJr7CcDaKqDnZrB7ON4ZkGq1l4hWLnse4HmFiAnLIa22cLfNUu3nvjNzIZ4XsWOGgS8EKWt7StwfeLqqPjK8XFNmWh+VpcEmEFBWrzWYnM3SjoNpVnWwydQWlmPKVqXxsNRkwjilpFJ4qYSlJLuotdTDapMAbUpDiI6hvcO6B6BP4j7+UprwdZQJkJxHkvA5ejPHCTKjHT80UPrHWvGc8243ot+a4kPGk1ho7LhSYR;
 4:HpHeqZXBcJhU9a/7Wj0O2bJPpKcHGoAVF8JyBJNGtvedJtJ5GUE9M7xhGsYqMc1jdHEY+U25yqaVfNzzm7MUYItuiqzturjuVPU/mPCOUKcGJM0NnEreDrh/90kUHWH45945YSTAP2YSnvJ1zwRZHvVWiZ+qQg3NHAoB6LWuCSRNaRvd+IRi+3jspxHe388vCzW9RsCQwOl9dLvt6YPzj/uf+g+DF5mx0w+aeYcS+Wa44ao7G6KdF1C7lOOBKhDS4eIx1dZvSfooSjHZvFccNw/+4u4GKSiSM/xKqU63nsQX9dADTGvmz0zvu6ix4ryi
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR0801MB15925BCEC1D407A1B92B7F0684B00@DB5PR0801MB1592.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:DB5PR0801MB1592; BCL:0; PCL:0; RULEID:; SRVR:DB5PR0801MB1592; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR0801MB1592;
 23:x9ByUSFUGx/RYjbwowE8CjGAPM1SeBl/0PrQoS6?=
 =?us-ascii?Q?o0Wg/jEbF83aGM+poIcFbZr7d2jRolqGXMptRND9ojptS6HmKzs8amRhFOft?=
 =?us-ascii?Q?0KtTk+wGSsiVQ6mbXrhe1Fdrn+EhTf2AWfDPaSuYfD1x5Rdfxxq6wMAkNQoT?=
 =?us-ascii?Q?figcVmSzbN+eoik4jcxWjCvORJbNZ1+Sh1JK9Zj2mYFwvREzk2+Oy93rAwej?=
 =?us-ascii?Q?65ms0e9i+UakC7GHONnJblxFxGBidOKFYdDYzJGbwUK+0Vm3pfs2LuxAgGcI?=
 =?us-ascii?Q?2VMgwifrpO6HiptoLN7JKaxbPf7mT6xJPemx8JVRtToce34mAE4BQ3/hpSOj?=
 =?us-ascii?Q?Ih030zlkk2+aiPy0zDmyeF89hDapxG0ccJj1TWL9DsEedxpcdyBWjOIMta7N?=
 =?us-ascii?Q?So9XZ30iwOkziLRiEgKANrn7GFdcPpnZjKYtp0pMydRgJCLfqyNDpYWN0IJi?=
 =?us-ascii?Q?g0JH3D6ZUKP6xezISn+tlN3xIwLKOiN39mKIC4+X4JGy3QgP/csFjba4ywRR?=
 =?us-ascii?Q?Il7BKMejIQ2tRFPUUesjdjsA3bJBhAuMqM1u6oEjpwX563/gwzbDGmYm/Bpj?=
 =?us-ascii?Q?aopzcziRKrGlTUTCZk7U3i+2em39FLvtIYfJx7WswpRvIT5IhATxyeOQjQUn?=
 =?us-ascii?Q?kWswpYalBYruxw2BaeQUECE3lMrdEU4A+Adcek+0km5VgqgUpOc+dqQE7wlT?=
 =?us-ascii?Q?Yg1LMrm2Z2O0yW2a/FMaTK9NTNfveN1jijYBhGDbAyjKR2uuy9iN9DzZa3Jp?=
 =?us-ascii?Q?VF/hmui4G2rnWbB++oaeVBcbhNa2trkjbNLxCChKgebkTE5tfkW2kOjU0ba+?=
 =?us-ascii?Q?Bz73Ih8YwHBc6GmLT76ZH4azHPn5ivn2kn4uxQzYy7wk4PQunNpGtbCxMTbV?=
 =?us-ascii?Q?mY8OD/Ni+tTcQ3xQUxYKArta51CHTjBm2moBdHJsuYYxSwbJ6TH/V8fp12WP?=
 =?us-ascii?Q?PM7PoO9+GqF7uRHZYK6rA+JGrr8MtkbXL7R+QfXgUUI3fmU4cceebXutXjm1?=
 =?us-ascii?Q?bbjfBrBD8kv3MMMqRjBi5QJLYEvfUUcz8rlEsp+/ltMQgjaJK5MznM4pDPHA?=
 =?us-ascii?Q?OqAEOEl0KtJFVhGkPKIt0RJ4wlEPvWUOc9A3tikWyT0/2rB4VaHMVbxFndxw?=
 =?us-ascii?Q?P+rv/I7+CriF2pHmtLHUQDZDaS5gMbJHGvaOogg64LmcmONTpCOFppA=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: Nb7zGhTpFiYkQpS0cCkjgRBKwnTYIaK68mQRBWuIpVBHO0Z99ousgy9gkL1Y/Frl6uYfvw3H7+NOc79yL7VVIePKqZoZ0TRGC4d3otNYokzaZZNiYYCh7eblidG9yEckaXRf/v3HrudF1WtFNGc34o6U7m5G0On3PlAnih/vyzBJssb/GOmcVBYIGBMhAl0gn8B3qaqzNRAU/uMY7LzWfZDo1MIsaN7+vvOCaV3LwzwEsWG80V8gqZNa03Rb2ICG4cOEqUL7wvEUXBdjf5Y4abjWjPxoAqsGknw1ywg7e4TWBFD9f/MTwYq8Pg02VEaVO1rZC4R9G7JCWjsHOZCW6li4wr1Ald1ZjsnqnHuMq7QEFJU06gNuHiIxkCX5F5P2M0sQxWiYhxHh8felmF5PwXdBBl9S1m4xDCX95vPSUIE=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1592;
 6:9DAop54c3+X4puInkXrqPglnL/YFrvHZxLKhl/6FGBZyQdzwbWnEXUxK3S73vtsCFcC2yXd5wia70bcqQpeQ6+A9KX/9BdGY6wmyuaUgGzquQ3jNs0qFTupcxFNchQMrj/Uz8JbFCF/8JqvTWz54CL93rmHaa+n0KdidCnNpBJ/wJBIy83J1LY7/Q7FXYriqxyJYIqa1PRxXpKQrj74NrmZVJxa3Hi7U5ZHpX3EMonPlauIeSzFWYIEEjoA7ggVqi7wpl5Q9Q/MCa0ni7N4VeFQkDa+O6QTh5DUzwk0FdlTPCfhO4LoR5bQKdFxMF7sgFbttWkfBuOAkbfinQ7/J0T3JxBp8HcvTc9k78cOrcOVz0c4ifAL8mzpv5jkzOCGgZOv5wqk692CcBGL/h7tMXK+2Hk2g5MEtHj6Sy2iWSfgSHHopk3EbZaT8KvneTtURHfCeIO9gEkijY79ZO8BHVr9fmx2tnLnUuxYeZ1Vklcxrmu06X49Cm+S/sDr1UGGj;
 5:0pG4JKkW3ugPrWdJ0Vj5cCiWj1j9UrYRXeyc4nJbFzWmbEkYZfrwtj58um22VWzTdUG8Vr6ZaPpZEXJFFLoX1HidYly2Qw2OpbJThGz/gxEuRdo+ps0e/6lXJyHUu/kQeKj+BMhLCXSddS/Y5hASd6tPBnHwY3PWs2LnvEEdOi0=;
 24:pq/ZJJAdJaQv2hMhSrZD6/+wkcUsTpMR8hpElyAoasCZpxBxWYNF4YmorNEIEx23BClEZRk2uNMknn4diCVt/n8SXURkCy29ge7U0C3/2Qc=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1592;
 7:tCkbrGwcPL1l2RxDc8TLLso5njO3syPbWQf6qq4/Ih3WV2rOHrMlmbnK6Gqi9/MOP/n7CBt3cs+8JgUvDd284yvXu2BLMMtHZ+ZFjAn1/b+wDbYSGfjGRZH626y3O53CXXF4ERzYAq/3shVmJVgyYi2SUPh6rEK1yk7jO6RwZwhHTSMAvf3neGug2kBHFcsA/cQWc35ifxTH7h7V3Ne08z2djBoUlec+PYONF9A/NMtQA+8k0FUUxz9RmpatQ/di
X-MS-Office365-Filtering-Correlation-Id: 1037e5ca-d16f-41a8-3199-08d5a363fd31
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:38.5086 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1037e5ca-d16f-41a8-3199-08d5a363fd31
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB1592
Subject: [Minios-devel] [PATCH v3 13/43] arm64: define the quad_t for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

RGVmaW5lIHRoZSBxdWFkX3QgZm9yIGFybTY0LgoKUmV2aWV3ZWQtYnk6IFNhbXVlbCBUaGliYXVs
dCA8c2FtdWVsLnRoaWJhdWx0QGVucy1seW9uLm9yZz4KU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hp
amllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KLS0tCiBpbmNsdWRlL3R5cGVzLmggfCAyICstCiAx
IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQg
YS9pbmNsdWRlL3R5cGVzLmggYi9pbmNsdWRlL3R5cGVzLmgKaW5kZXggYmU5ZjFkMy4uNzhhYWQ4
MSAxMDA2NDQKLS0tIGEvaW5jbHVkZS90eXBlcy5oCisrKyBiL2luY2x1ZGUvdHlwZXMuaApAQCAt
MzAsNyArMzAsNyBAQCB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgICAgICAgdV9sb25nOwogI2lmIGRl
ZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX19hcm1fXykKIHR5cGVkZWYgbG9uZyBsb25nICAg
ICAgICAgICBxdWFkX3Q7CiB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgbG9uZyAgdV9xdWFkX3Q7Ci0j
ZWxpZiBkZWZpbmVkKF9feDg2XzY0X18pCisjZWxpZiBkZWZpbmVkKF9feDg2XzY0X18pIHx8IGRl
ZmluZWQoX19hYXJjaDY0X18pCiB0eXBlZGVmIGxvbmcgICAgICAgICAgICAgICAgcXVhZF90Owog
dHlwZWRlZiB1bnNpZ25lZCBsb25nICAgICAgIHVfcXVhZF90OwogI2VuZGlmIC8qIF9faTM4Nl9f
IHx8IF9feDg2XzY0X18gKi8KLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2
ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWls
bWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:50 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xi2-00036Y-Fg; Mon, 16 Apr 2018 06:33:50 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xi1-00035t-Ep
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:49 +0000
X-Inumbo-ID: fd04f01c-413f-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::60f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id fd04f01c-413f-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:52 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=CtqMuB3bTK+c/1o1ApIzAOirDQfWyiAQWs8KhOyP0F4=;
 b=AqfGUL2sTqffAZnALgxLMwYfFKImIFUftvLZNSsvr5+gGydrFdUqJb7KVun7tVLUQNQ8cp4sbFxk75rsOB3xWAJgOwbT9fG1AGylXOTbgHhUGYaTr/c1ta9niSL61v0mUg6VYsWocWdeO9ojmb+yBgn4W4GNpCwXvWteh9prOWI=
Received: from VI1PR0801CA0037.eurprd08.prod.outlook.com
 (2603:10a6:800:32::47) by AM5PR0802MB2418.eurprd08.prod.outlook.com
 (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 06:33:42 +0000
Received: from VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by VI1PR0801CA0037.outlook.office365.com
 (2603:10a6:800:32::47) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.11 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:42 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT059.mail.protection.outlook.com (10.152.19.60) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:41 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:34 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:54 +0000
Message-ID: <1523860343-16382-15-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(39850400004)(396003)(346002)(39380400002)(2980300002)(438002)(189003)(199004)(2616005)(476003)(126002)(36756003)(426003)(23676004)(6666003)(6916009)(7696005)(446003)(11346002)(76176011)(106466001)(8666007)(5660300001)(486006)(77096007)(246002)(316002)(8676002)(186003)(54906003)(478600001)(336012)(104016004)(106002)(305945005)(4326008)(2351001)(356003)(5820100001)(72206003)(26826003)(2906002)(39060400002)(50226002)(26005)(86362001)(59450400001)(2870700001)(47776003)(50466002)(6346003)(8936002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0802MB2418; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT059;
 1:NHRaFdAI39p6fDbRu/dLXdQBdCW5+TpCDOJzPowjyQUy03oabzp5As6Bu7yxtqU/5x/LNi5FUhmIqV2OvXFOfZDEgTJxFaeTVk91aNBnvsPtKnz8UqlTsPCgChyjVPFD
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM5PR0802MB2418; 
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 3:FdTaKDe+LokiGULxE9yh6XwJQ1D2GWRiWkBrKUvhIViHO7qOtJIY5Z3Ok15Y5vKhSArZ7Py0vmMjzcnABI3QrBkNl1O1sPllfs9PE23qGmZhZbdluKOo3uit2sjst98qqyKD8YRt680zHjpqXADZQh8VqELtS2weo1WsSCxTfa2rCf3rC4Jqzz87eZ6+kfZjlZkRT56GCx7T8LsdDVOwuKRnyEmpVKqzJuhOBnNff6aA6+tECo61SrPXxlQE5Z7jjB5vpBaSajSjeAErQaPmJ57R/g1Z2NaRr4UGF3bjJrrna37+ND3YBuWc1vMxE+drQ0xydhZnjGCI15fiBiZIyE4tFTZepb0z7iyMayQWZqg=;
 25:dLzfLI3Sko3JyRpQzGAPdu9nnVybqUC6hK5MstHZbybKUlxZCCkOuBih8F6OJdjKjnEBJgG4+mUB2VOvKYSiDCG99lTeFkNusbHpsUerAqxekwt/RecxNrpxjAhra6yx8wuvimsAf+3HxGuSvely5VA4/ui0xF0caVmZc6Z2RieDgdgeLfMSsD6XhNgjHaCvP76Lys8/sOcOAzbO1cDIYK7z/jzh4eBO8VDXx6tkkhGCg1+CJ4EIZRSyMwQBHIoTmaGQxWJmI4FZSklu1BGDBXs7hWqAT/N9bniTp5o0CVOXt+9cO3ESXpT0Ue1vBPG4UrCXSZ/HSmd2i5CvmD+2cQ==
X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418:
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 31:YCqpzScQNL8B2khKLScmr89hv03YuI6t5WMfk8PVA+nepM/KeRTrEp/9FJ3a9HSctwcAWeFyoU2g6Ap56/bCfjbBvcxTcr9IlkF41SCU9PQSuezI2Qh1v399wfNukx8BNwRhkwe3sCx9exBmzAFrZJ4R/guPesslveNbyqTM0R9d98q+zMB3OCX0YH5xjXIVq9xgz8XevPkORItaZjSleAXJl7ky/KWoSBXMQsDiF4Y=;
 20:fQmyJBWe3+Q3OsPjdynlT3C3qPlntri1hx6Hk2w0IyOdrrmNPc4RZpfyYLWg9Nv4v4wYNhVHGuKZoKHDmXjfTG9jdNpOeV8++AG6Ylw+SpVmXN6b6+7AQWtnuHxHj46/slohVfYxs5FXaae+6cKCyKWKKjk/Fz44g1jdutqAKT9Ij4MaeU50dgy/7TUfgdUj2wImc9Iyk4y/ochE24IgswcKcYx79DNsN7py6rLOZovgdgbC4S7dljhbhKZ/3VNI;
 4:f2HFmCA9fQUKkt2nNyr4Ij0cAqvYfbyq/WPaHmDRSdbluEOS2s9QOqZGtMBlzjAdLIy6hI4C+vO2bzHlrTg2Z/tNVI3mRrH2enkmleED36l8UY4tUKWXjZftSAtvq2P3qRiEGfzk1tJdtDXaMJZE+XI3/5c7eOi36aGXMK5dCpgK1GKr7bWjuaaRtYN6YxvmRWwWuLZGHmDTTrx0lD16tVugY2JBwmpCxHxKQU9Cg1YPM4Rwl7J1kDXGK9c1TxmP4Q9CRe4pQBLbumTIkum9l9+NNz2UFihKK2b/sVz5LSyOIFrx+VNTBk2jqXRn0aG5
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM5PR0802MB24184A98D39830EE635A711884B00@AM5PR0802MB2418.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93004095)(3002001)(3231232)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123564045)(20161123558120)(6072148)(201708071742011);
 SRVR:AM5PR0802MB2418; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0802MB2418; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTVQUjA4MDJNQjI0MTg7MjM6WkRaZmJUazRudXhSdW5mcTRBVFg1QXhr?=
 =?utf-8?B?TXhEYnJlY1VaTjZxWTVHUzh6OHR1QVZ1Y1I5VDIyaTBvMXhVVDJyR3U0Rzc3?=
 =?utf-8?B?ZVFMZlI1K2VTdlI4MkNEQ0RyaTMvQ1ZmNnI5NmRwRjgxT21ZVHUwckhxajF6?=
 =?utf-8?B?cVV5RlZzWEJkV1o5bWp6NHVRbnpLaGRGcjJqN2ZVVy9HdHR6M3dEWnVGYjQ4?=
 =?utf-8?B?S0Y0dysxS1R0MEwrczNmNDZXRkVhZEZvOUNNOUpkTUkxVDdxRHJqYWJXd1Nj?=
 =?utf-8?B?czdTc3lZN0RjY1RIQlhMaStaUjRBYzFhTWFpdTA0MWEyeDEwZmRjY2h5NWVW?=
 =?utf-8?B?dllxaVg4RkZkTC9zUEJuT3B2aTNZM1hNRzZVNjY3MHl5MS9lTVJ5ODJUMzNn?=
 =?utf-8?B?MTI4NVFBbzZJU0QxY1VuUmpkVGNxMEMyYlRQaHVpa0xtVjJQYWxNenZhNVZL?=
 =?utf-8?B?aEhSdCsyVWZGU1RXZmdsRTRLWEt4T1N2S2d5NkFxQW83UDE0azNXVTRlN2ZK?=
 =?utf-8?B?QmRoSldIcXArTnlYRlE5bHllNG0rQnpjMUtuMjA4MGV5NnJ4aTNybFpjMXFK?=
 =?utf-8?B?ZnVZOHhzVVhnaDNwWjFiRXdmSXF4ZHhYeVAranRsdnZpZjFPbk5OOWJpU01v?=
 =?utf-8?B?U3dVdW5kb2tORFhVTlFIcEoraHRnWURSZjF3ZXNZdnMxODByRHVpM3ZHTFlP?=
 =?utf-8?B?azFGNkZBK0N2VlNrOXE4NmdyUnVjZ0V5bXdNaVhiekhZYXd1K1RDVzgvWWFC?=
 =?utf-8?B?SDBGY3RCWXRLa2wwelZweG80TUY2VTA4UU5iQUp3VzFLTFZEbEx5RktnbkEr?=
 =?utf-8?B?SXFyanpLLzRjMXpJazdWL0hmRVdCajBsRUgxN3dpM00yNWIrLzltNW1lVDRu?=
 =?utf-8?B?TlNhT1B6WHRUMmpSOGpWcmV0Q0J0TWJHUmhPbmxiNGgyUXNDd25KSmZ6OXBi?=
 =?utf-8?B?MjVRZGVvU0ROd3h5UDcrYVZNVmx5Wm5iRGdTdFl2MWw2eWtIWnE1NFc0YldL?=
 =?utf-8?B?cmJVdmsvYUtzSUY3V1NoYkE1V0hlOHhSemVhUEozQUNHWmtSWmY4TDFPMUM1?=
 =?utf-8?B?QmFWNFRpYVF2cEJGRGlNeWVoZHRzcGZCTTB4TGVGd3M2dFJodk8wSDJhUzkw?=
 =?utf-8?B?bk1lKzdIVDRSUVJjVGR3czNmckl5eWdxZVdsOTE2Znc2VERpY0VzVDQ5c05a?=
 =?utf-8?B?cEdpVGF6MFgwb2RsUmFFQlRaNWVja3BsaGdEbzdHelZtN3VVOHphTGk0S3Vs?=
 =?utf-8?B?OVBkZEE2V0s4Mm1POTRUK21hUlRZVkNSY1E5Vm14clZkSmRHb2I2RTZGV2RW?=
 =?utf-8?B?bnZib1c0U3cybjd0MlFmQlhhNmVOamZVSDRidEFHYnJvd1p0dGZ1OTlBaytm?=
 =?utf-8?B?d1dHMldETDlXMndyckhMYysreUtBaEhON25UUGpMeklZT3BHMkxuQi96ajF0?=
 =?utf-8?B?N1J0SFhkYWcwT1hCWHBsVEExRCthRTB2N0dtckl2d1o4MGsvQVBtM0hvN05h?=
 =?utf-8?B?WXd0cElYbDJDWGx6bmNNMzEzRXJ2Mm9iL2ZZWGRaT1o3bzRYM3RRZVZSYmcz?=
 =?utf-8?B?Ri9ESU12WFNTNktZalp6NFgzb041b3NMR21lT3d2U1dsL2hhQWRxWWR2algr?=
 =?utf-8?Q?A=3D?=
X-Microsoft-Antispam-Message-Info: 6SApxBoeENTDnOG4P3f7MRivFCqCubNG0sJfmHSnY2jI5ukCLfX38V4eG53pvQYgie/hJcyNswXjTYe01R9m3B/y5cFFs94Dj5DepJq9fyXncBU9EJyByYiLBUXXD7cf5t9MwrJs0sqLfU+4L6CoJ5CMw4gdKJXNmj7jqAqViHfdP5OoYiY8Wka0DnfpMgoMuGCc7gpxAeyhclDP6MpeN788wGHZneadm46xC64AugfkVhuAzdrdDcTy6BjqgZID5Iobvg8wbqS5kLmUS3Xpjf156xYOrGNeBwnG6qpfYBT3OK1wmTlBrSrLKiIGpOHuBgHaAA5RDTH3qd2/oLK/InoBfg3hh9jou+SfqfN1W6nIjMA84kZSvQS14+t6foWVsn+WFAHu7+rrDTWcr4GrsiyCZpiJKLs6zgnekYu4xFU=
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 6:ttYcHZKg3sIyqsscbety4lBrGFPXxBuEdRDYDhBMNxLv03H0ikjH8bFGfyGlh8woPn5EM86behctpbA8+3Hyz5I27Fmy7EdFFi3e2IceET3oFCVfh2tfsFL1QDYQlcN6d5MnsHHvbHVewn0VQ8g9LPd8g1CpbWBHnZ0iDGAAOd1+fMBK84CmzwZwMt5pYjTFvlI5JrwaeuhZxsC7nHn1u8pbmyrt6Y2LlZTKuudfraB2LuIh72RXdPz0l5AFb/ewkReOFo+z6aK18XfRlmwW7kFF+78PA6R92AN8Nr6OP4qqkcpm1ur/XetRJM8WBRC4p62gQQ6Xl5w0ApHluqVqHgHaM12nqx6CkfdPx1R9Kt3baYXBxNkQUivJypBKA24peMD0EiocYo8/WeEM5y0UsMUyb2bfMan+lTq4Fr1uqVZ9KUWse6EVj2pSFzX5FFK3B4tT1zSd8rGoOnAxzyey5DLSjxA3s7vQqvzTiK8RhHvjCCCKCK3QHHF4S6LqRW/e;
 5:WrXZkmFDB/Rc5fp/+ZExQhkNFizuFg0oDFUHcS+jUEaA/Z7jPVI/uusAf/iz3fMe2Goo+aJrZXVcH3+dQF/XdybbUup2/5XJCDGq4P55Lyn938rR0doNEdxFz67+m60ehnqMM0QhXg4H0bRTYGfdNarzsASCUX5Ozj1s1GtQOXg=;
 24:peunh5/2TEMdwWo97V4jVTU5gmWMQzaoaNwSm+5+30yhVOj3gsKVIKfbk5V36/qqDwYeAl81tTGTDGm3J5BscNxbOUfgNzIopt1JjuO+eiQ=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 7:vUBCZy9dl4CgzceTJGQ7CU+8IGVTBH2KxeF+nht2emIJS+uoLQEKhWHBRKT9bfbr7Nc5se69j1a9l5ACYLXLodnQc3ilSL3SIyqUyWjK4gDc3IMSGP12VY42NJl8ZHzx4MpJJnmuV7SKlNkCYm1kohO4FfDg1PXtQSr7NCjjFh3w4Mh4/W0Fc45FApCYzoqkZ/HrL1BtKVUEJhSr0steVFyebzAenYMY3btX+C4m1ojAqChR8nTnm+97Z0NehpZj
X-MS-Office365-Filtering-Correlation-Id: e97fb1bf-c6a6-4f33-86b8-08d5a363ff1c
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:41.7129 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e97fb1bf-c6a6-4f33-86b8-08d5a363ff1c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418
Subject: [Minios-devel] [PATCH v3 14/43] arm64: time.c: fix the wrong format
 for printk
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2Ugd2lsbCBtZWV0IHRoZSBjb21waWxlciBlcnJvciBmb3IgdGhlIGN1cnJlbnQgY29kZToKICAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIHRpbWUu
YzogSW4gZnVuY3Rpb24g4oCYaW5pdF90aW1l4oCZOgogIHRpbWUuYzoxMzE6MTI6IGVycm9yOiBm
b3JtYXQg4oCYJWxseOKAmSBleHBlY3RzIGFyZ3VtZW50IG9mCiAgICAgICAgIHR5cGUg4oCYbG9u
ZyBsb25nIHVuc2lnbmVkIGludOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFzCgkgdHlwZSDigJh1aW50
NjRfdCB7YWthIGxvbmcgdW5zaWduZWQgaW50feKAmSBbLVdlcnJvcj1mb3JtYXQ9XQogICAgICBw
cmludGsoIlZpcnR1YWwgQ291bnQgcmVnaXN0ZXIgaXMgJWxseCwgZnJlcSA9ICVkIEh6XG4iLCBj
bnR2Y3RfYXRfaW5pdCwgY291bnRlcl9mcmVxKTsKICAgICAgICAgICAgICAgICAgIF4KICBjYzE6
IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwogIC0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpUaGlzIHBhdGNoIGZpeGVzIHRoZSBj
b21waWxpbmcgZXJyb3IuCgpTaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFu
Z0Bhcm0uY29tPgotLS0KIGFyY2gvYXJtL3RpbWUuYyB8IDQgKysrLQogMSBmaWxlIGNoYW5nZWQs
IDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL3Rp
bWUuYyBiL2FyY2gvYXJtL3RpbWUuYwppbmRleCBhMDg4OTgxLi44ZDY4Y2YwIDEwMDY0NAotLS0g
YS9hcmNoL2FybS90aW1lLmMKKysrIGIvYXJjaC9hcm0vdGltZS5jCkBAIC01LDYgKzUsNyBAQAog
I2luY2x1ZGUgPG1pbmktb3MvdHlwZXMuaD4KICNpbmNsdWRlIDxtaW5pLW9zL3RpbWUuaD4KICNp
bmNsdWRlIDxtaW5pLW9zL2xpYi5oPgorI2luY2x1ZGUgPGludHR5cGVzLmg+CiAKIC8vI2RlZmlu
ZSBWVElNRVJfREVCVUcKICNpZmRlZiBWVElNRVJfREVCVUcKQEAgLTEyOCw3ICsxMjksOCBAQCB2
b2lkIGluaXRfdGltZSh2b2lkKQogCiAgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1yYyBwMTUs
IDAsICUwLCBjMTQsIGMwLCAwIjoiPXIiKGNvdW50ZXJfZnJlcSkpOwogICAgIGNudHZjdF9hdF9p
bml0ID0gcmVhZF92aXJ0dWFsX2NvdW50KCk7Ci0gICAgcHJpbnRrKCJWaXJ0dWFsIENvdW50IHJl
Z2lzdGVyIGlzICVsbHgsIGZyZXEgPSAlZCBIelxuIiwgY250dmN0X2F0X2luaXQsIGNvdW50ZXJf
ZnJlcSk7CisgICAgcHJpbnRrKCJWaXJ0dWFsIENvdW50IHJlZ2lzdGVyIGlzICUiUFJJWDY0Iiwg
ZnJlcSA9ICVkIEh6XG4iLAorCSAgICBjbnR2Y3RfYXRfaW5pdCwgY291bnRlcl9mcmVxKTsKIH0K
IAogdm9pZCBmaW5pX3RpbWUodm9pZCkKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5p
b3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9y
Zy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:33:58 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:33:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xiA-00038N-Hy; Mon, 16 Apr 2018 06:33:58 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xi8-00038E-Oz
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:33:56 +0000
X-Inumbo-ID: 00f99d24-4140-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::612])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 00f99d24-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:32:59 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=iw0KJx7e0yFCLIVYMst3wL5ZqtGmStqjnWWXLj6d43o=;
 b=VobitWX5ApF6nCt2QoCgomvK2SPTg6bh+6/6fF5uFxCiecVkU1e1zHXAR3akl7PxSS3bOSzYGJRANuz/dC3XtWQi2vj9emQl/gR7iX2hNVswjhoaV5FuaQl4VfZmWjDBYmfsu0CtTqye7p4iR1SGM4TUwnaa8VQfSxOyCiwMcs8=
Received: from VI1PR0801CA0013.eurprd08.prod.outlook.com
 (2603:10a6:800:32::23) by HE1PR0801MB1595.eurprd08.prod.outlook.com
 (2603:10a6:3:14::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Mon, 16
 Apr 2018 06:33:47 +0000
Received: from VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::207) by VI1PR0801CA0013.outlook.office365.com
 (2603:10a6:800:32::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.11 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:46 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT059.mail.protection.outlook.com (10.152.19.60) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:46 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:39 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:55 +0000
Message-ID: <1523860343-16382-16-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(376002)(396003)(39850400004)(346002)(2980300002)(438002)(189003)(199004)(36756003)(246002)(426003)(305945005)(336012)(316002)(26005)(478600001)(2906002)(47776003)(86362001)(72206003)(2351001)(5660300001)(104016004)(26826003)(106002)(106466001)(59450400001)(54906003)(486006)(4326008)(16586007)(186003)(39060400002)(51416003)(8676002)(8666007)(6916009)(48376002)(6666003)(77096007)(7696005)(11346002)(356003)(8936002)(2616005)(76176011)(476003)(126002)(50466002)(50226002)(446003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0801MB1595; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT059;
 1:Ewxk1D9WxIGRMkeSb1FclUGgA068gJHR0RXihQNca10/GfSNq1VANnPWpvM56vJyZMW0eNlt4sjMYMYwzvIAq/OtPQZfOdiuy+7xNAhE+vfEvH1bVEC6JKskgWvyUKY2
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0801MB1595; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 3:FvsaEGbtEh6tmMeSn3jn2nawg7AQB2L0CNWvHp62QPylWtclJ+KtxR5lrR4l6UH79tW2h4oBC7SR27Rb8rSKoA3ohkKVpXEacq+ombvq6aFSP+odoPE0x8Jlbxyq4OljkHs93sd08HKzNiKTVy+OjoihT5O1MRuKhUwpq2g+Ff8JpCr+QagHH9xEFLkWj0uOKyokWjq1e2oSGofXptpdFHOWG5dxN/wUdVk/ZAFK/G3ddu1nvVRGVojA21wthAyKAvNVFvyBsZp9SkIMV6NyypTW9t1g4T+u/JTfohLTVu84kLj1Ub7BhUEI+/y0I9jMDHneepKmXSj3zmDdpxP8nxcUSu80W5cqMYVrLkcE2LA=;
 25:4cC/SfTWOPEMNks/qX6qABV/QlrHG3SQtHVJYmBr51weirycN4kH4O+srSzHd1V3ND+Dw34k5NQamAf2i6nuy04CBWmERpsXXjsj9XUvQek8xUkpkLSVc06a8TDuZ+sbdUfIjnOWtXIZ5YSP/svSlF7KKviEVHl9SRrx3Ly6O58BhI9OV863B3fzStCCA4xDoBnlGPYN3M9QCBmIqgtK+HdGwWKttgezZPV88Bxx+8+EN6H6q8xuc6ZG+KJdER5On+FU/IsbtS0KB1XME54FB4fjnojA0wun418SMQsboJUQfT969/KVT65jYsHBRJ6KEoBhZ1gBBrt0NWwiKMx4FQ==
X-MS-TrafficTypeDiagnostic: HE1PR0801MB1595:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 31:Sq5uSYHu/e64LSpXnPJxzmVgkuFEhlRxfRae4Z3DZ3KX3s/Je5nKa16Cq72pxfanh41LmXBfaLjeO6clF8Ap2RzQq/f510Fcl1Oi0sWjxRZBUgsSSmwfkE28arh+XVp1WLz+07H/qVtqpk9cYnHMd9SB5BfHcAvfBnjwCg1L7wjzYkn6Kboe/UPAuc9cnLzmcRaDC/0QOSjKl4uTXPachUL5J6qZU+yZWz3neDc+sJo=;
 20:cu6N74lsfBavZp9r7foiGWIuD7F7fEXLl9buieo+EWFTWFL3HzznTWVzON3BxzsUcJHCd8bHxpmYOpTrdiiIH6BYwCJG16J/PKvgBCNKj4OMawIcRg3JbmkaIpMkaVCBh8aIeO9mOIPC4jpyzbqoNwImR+A5O13/S3iR07h2GtkXTtd4+BmJET2s6utmyJMkUy3qQWtSDvO+no5EN3IHTUETSLbi1Zt+63mmzTXDM1SP7HVCFRaIMq6/WNQe417m;
 4:zkKzqM2ho6HGfrxlsdiCv/arr8fxrYvP6/1/UShaDLo5IzWAycmed0mtxsWB0CxjudCOKykH1MGQ5/lPCKLsRRcERN15fgFCF1b+ErG0z7Ra4myVsnVK16GCKXLqbGFcsVHMvouYd0cxCij1w4p9eriO8502/Rs9qtD97VvtmQIIGhH/rH09SI7iPAxoLHNhH37B9x8UFyb/bIMYxYgzi0OHf8dzoW3Eweqs5LlCA5vVsKVkokzBaW1YFen5sN8dAZlIgP5Fc0gPxL6/3ZwyphJB3dbHRUkJvju0hKS3IogCfBOVqjujBtNm600ywaCI
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0801MB159538C6DBE4FCAFEBC7C7D584B00@HE1PR0801MB1595.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(3231232)(944501327)(52105095)(93006095)(93004095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:HE1PR0801MB1595; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0801MB1595; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0801MB1595;
 23:EDyp2M80D+yqGEJDuGq5UdDyVqvC/mQ7NPJTEDm?=
 =?us-ascii?Q?mpwqtlqK27WGemz7afsJwKRGpZWFS68J3TLhbt9NSt6LXCNYRFmhE6+rp5zN?=
 =?us-ascii?Q?AN0Qq2anrbQ4mNMJ2ppG+Rd+h9V5kMscJQqYYCKosPHg8kwLi3l5+pWJVySo?=
 =?us-ascii?Q?OkYrOYfS+MwhfcQaVCT2duysOaQTyZ0fckb7g9qM9WwmYiIeExnHhvq+xixy?=
 =?us-ascii?Q?mlEfeKVTgUtfeKzxe/6aKfNP5WH0yYfz5DBlG7O4ScHeo1um6VSyBaW3hTJ9?=
 =?us-ascii?Q?eoyq7Q2Q15vGglM+w1LaArnj0tNrT6mgCnjarHSU1eed2zTUM4JVriTsZqM7?=
 =?us-ascii?Q?nER+SOuLfxKzapWowGuAmPoTq5NJmt3Bfsx0lywYttpyxyjkHYU7Ognd6HTs?=
 =?us-ascii?Q?bDWhrIb7f9Utw6qoLFCq0Be86Xu8BLeaTYG2jSFBgqTd66xrA5rxR+DvQ8ag?=
 =?us-ascii?Q?W8qNj5j0dj03B/weuTKxdNswVMTo4ldvjvBgnYeYT65kyQes+QkfYwrfhNZR?=
 =?us-ascii?Q?D3nAZcSoPh4vN04bVGy758FApSlv/ZduQJ1t1Mjhj41CwQeCLlvUTTd31VWh?=
 =?us-ascii?Q?T4OBb04zscbPcS2oIGPbSDNc4flPK3wlmfr2YzMjjl+Rtw+LX2D0Yj38wJsa?=
 =?us-ascii?Q?J1dfSB6xN3CUD3ACeSKLUVOHduudt8KVbLm9YTGGqiLy0K2h2IAf6/1n76/R?=
 =?us-ascii?Q?Z7HS0Deb5Smx2POVm6m7rqkkDexvYHlcwrLnjtvVzPWY8Ij7V7VSOkI8wo1R?=
 =?us-ascii?Q?AgvtlgxJdKhit4JYSDtT2QjLWHqHzoFQoXU81HGulTS6++WhMShhMZwX1Xuy?=
 =?us-ascii?Q?utes2WWGMhU095K22qanDbctMrDCd7jL3mTEXUxlBD4DbKlziQ+z7MvqlXew?=
 =?us-ascii?Q?0ZPDuGWO2zH9EHSQQj9bqEnLEcxXxsHMqMLeBclIW6ASMy5975QyyOhN0BPe?=
 =?us-ascii?Q?22s/uZTEzo69eNDX/v7qALtJsGdUujh5zKVgjHzBslbhGYMyaMnzlxEbddES?=
 =?us-ascii?Q?lFKepUsbAI5F4S4mhlRlo0wWZ0e9KeKG8bLeZvYpcQGPbHlvIS2rBSxawvu5?=
 =?us-ascii?Q?TRSLB5atC8+T4zI7Gx9I3xSKtiN8QsG4vq4Oms+o7B049sdAt0dmvVh1G2FT?=
 =?us-ascii?Q?GYuJVdvi6xfD0z/O3KW69seytn3nOysxs3UTmO+W8BLCBuSUJV6PhmA=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: NQ+tKRH2v4gSZnP0GhRaYHQwYhHXnJWsr9ixrayh7UMAR/wYsnMrM+upQ/R4KgpSHpsHDp2qRA0OR38KmgAt8iqGEhpRDyCILnakN/8vQ67oYxKFSOaUZgFhcWNjNH/O+AU3YEvH4mBD6XKsIsNMTi7pp17ussaOZzXNGNhTF5BfOZN9HS7kg5lholN6mzA3+VrxQ6ivL4b1WP+6VCbNk2b58udeBss539GANWDF3WpqQzoG8+a5cj1de78Ks9Twig+EobC7hmo5vDcLLCIkA79AV4JT2VO6osuOPJVI7Tdb55MChYjP82UvVtK1VnvCY42ApiBQAzOcfmJNQO4qa63g+hMZFyDrMMIdezaIyKDM5qHd7lC+pQRuOuGiF0raQ0L0zARRUcRX6nF0+nbUkA9Fh5mB8Kf4vrlEetl+f80=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 6:3NJvw7bxkAsVLOI0bCCmGUIC82k4tJ0ufQ24PHcVcDqWLyEdCII19cmTXwziaxWvbTtL6d7eoE7zVrsrbBdFwl0OQ6x2VDEfEwfOxvvB4A0yF/KKP+GXVO6U5jnWtonfxlqXHS2PVI9P/Cvfio8cL2aT3ZulmaPZgbjwzENrTzr/pYj9h4ud5w6V4qyxQk9OODs6HyYxMPsTpTTMJycrn+qPEDy8f5FKRxj7gS+OpVUCLSkAFgQhKfon4C1YWrJIwA1HV871OwpqsRaAF4sNA8KxNzRGQEcID+ntFO3AUFQXhKxbkUp9tH4DRRTKilpiTf4Q9O3VpuJg8D2K93AAucMP1TGSshklfaosAWRRTGdz93t+CDlk+SiNkCD8Cd0h6OD0qJhfg3vaDZD2rQa2QQKhvlNwTn0ZE/s2y+SLBbIJrg4XseXXsi/QunuRdyxBPuTDDZEwrmZUvQ5o9+yOvrCxs4WPmY0TIALn/xD29ccll5Eby1p6fYeD25OhJA/c;
 5:qqHC6s4adTsSlWdMd56p4NV8AuLO+tOwmCYTFaQ3G+8Jhp7Zty7NLqHsfKG2537pvbHpLiujz3lDS5bjENL6Qt3yXfMaVxdHtDN+3yXugpZpON10u7YHiCLZXkIPxlNptMArL3hj5mh1+NiPJ3gAJEkxklJtIoibQvuSMtpKqeM=;
 24:VrVtSI0uNPBMFRaujQ2GZWgrcxwUZxZLF+hcEYvBgNx51npEF3gsl8Vh2fX5HsPOU3ymlpCbFN60cCbzRzmQuueSCwFxwtqPUN/EjYcY1OY=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 7:ur9csadUqHDOqtuTWLEtyXl8+dchOByMlPxQpjm1OHo/SgAiYbUfO6V4S0xDLNG76+tAgy9yLgKR26xfE15TaiGIucB9emjLmz0JOrsFm/R5vs38k8nMW5LRc0DbhZ5b/gQDsDXmg4y2rhhaX1xWVGEvGicrE7pSGc0e/OVmtFnJwfhqIR4jJlWQdAHVxXsbA0bbglB+QgpbjzOItEfDTpqk/qC7lGBLrBvoi3X0wLNUHRRrdQ5mDOEi4EpxE7t4
X-MS-Office365-Filtering-Correlation-Id: 007ee9b5-ba67-4ef1-59e3-08d5a36401f1
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:46.4632 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 007ee9b5-ba67-4ef1-59e3-08d5a36401f1
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1595
Subject: [Minios-devel] [PATCH v3 15/43] mini-os: define ULONG_MAX/LONG_MAX
 for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBkZWZpbmVzIHRoZSBwcm9wZXIgVUxPTkdfTUFYL0xPTkdfTUFYIGZvciBhcm02
NC4KClJldmlld2VkLWJ5OiBTYW11ZWwgVGhpYmF1bHQgPHNhbXVlbC50aGliYXVsdEBlbnMtbHlv
bi5vcmc+ClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+
Ci0tLQogaW5jbHVkZS9wb3NpeC9saW1pdHMuaCB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGlu
c2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvcG9zaXgvbGlt
aXRzLmggYi9pbmNsdWRlL3Bvc2l4L2xpbWl0cy5oCmluZGV4IDVkMmI4NjQuLjY4NTM1OGYgMTAw
NjQ0Ci0tLSBhL2luY2x1ZGUvcG9zaXgvbGltaXRzLmgKKysrIGIvaW5jbHVkZS9wb3NpeC9saW1p
dHMuaApAQCAtMjUsNyArMjUsNyBAQAogI2RlZmluZSBTSFJUX01BWCAgICAgICAgMHg3ZmZmCiAj
ZGVmaW5lIFVTSFJUX01BWCAgICAgICAweGZmZmYKIAotI2lmIGRlZmluZWQoX194ODZfNjRfXykK
KyNpZiBkZWZpbmVkKF9feDg2XzY0X18pIHx8IGRlZmluZWQoX19hYXJjaDY0X18pCiAjIGRlZmlu
ZSBMT05HX01BWCAgICAgICAweDdmZmZmZmZmZmZmZmZmZmZMCiAjIGRlZmluZSBVTE9OR19NQVgg
ICAgICAweGZmZmZmZmZmZmZmZmZmZmZVTAogI2Vsc2UKLS0gCjIuNy40CgoKX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcg
bGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5w
cm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:01 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xiD-00039E-Jf; Mon, 16 Apr 2018 06:34:01 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xiC-000390-Ca
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:00 +0000
X-Inumbo-ID: 02f6ab1a-4140-11e8-9728-bc764e045a96
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe08::60d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 02f6ab1a-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:33:02 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=GOH6CMSKlIRFc9J61b/navYuBPZcyx72/Ous25MPgVI=;
 b=Pr+AJtYnJ6E2rD7lEV2LE5cg8WicYTQaZA+baTEau29TasRUnJ7TpifHUZYgaOBvOhkqZPxVYzfGvn7xNRPkqMtbKDoKjwXkKA4cMVkiBGdudYNwHL49DShDOHxsWO6WPvQlfkXtTtBmgFrBWeTTP+yunEf4J97+2mFeo24jJFw=
Received: from VI1PR0801CA0033.eurprd08.prod.outlook.com
 (2603:10a6:800:32::43) by HE1PR0802MB2427.eurprd08.prod.outlook.com
 (2603:10a6:3:df::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:33:51 +0000
Received: from VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::208) by VI1PR0801CA0033.outlook.office365.com
 (2603:10a6:800:32::43) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:51 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT059.mail.protection.outlook.com (10.152.19.60) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:50 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:43 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:56 +0000
Message-ID: <1523860343-16382-17-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(346002)(39850400004)(396003)(39380400002)(2980300002)(438002)(199004)(189003)(8666007)(4326008)(86362001)(305945005)(575784001)(6346003)(2906002)(5660300001)(106466001)(104016004)(6916009)(6666003)(126002)(486006)(8936002)(476003)(8676002)(50226002)(48376002)(47776003)(336012)(446003)(426003)(11346002)(50466002)(246002)(186003)(77096007)(26005)(2616005)(26826003)(478600001)(72206003)(356003)(2351001)(39060400002)(16586007)(54906003)(36756003)(316002)(7696005)(51416003)(106002)(76176011);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2427; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT059;
 1:tSTGxzPBBwt4KuFoMILxLAtTVRTMpFKPN9Az/Q/HTXp/FIrJH6UfPyHR5lPJHN7gobkxyykQp/tsxZfgBcFIXTZZSrwMhtobd3bjuXf+1re/r8xD3CVAjLRjlcHR5frw
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2427; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 3:eFJ3AdLEgt8gwWFcn4mPbFIefrx86vR5RXCAbHxHKKMO+i3VopZU6uPYl/HbSqgThra2eqgrwr2cw1P1AFnEyRZ6s0o+Z0tQGUXevPvAGUuTvkFLfamPb4gYbot3ZS1hNoJ7HqHkoEMBSz+U9MyxNT2xfRyazLer7r2sbfUhTaAe/slay0vxA6j2kqHCfUm1j2cai/PH2V+CBiPc1nQZWdOjThRfeqew+MfUC4006dgTw6I3LlbpNgTyn+9KgVdhh3+irm7Sq9cV3sAVC1/HIYSflexl3Glx1ZdZ4brrjIw9fldkxrVgrmkt8921bqodjBw7HK9AMPwFkKg3vYuafPZ5gTT6m3mZHtg0zK5+l24=;
 25:4mq6LRc5aYIvY3niwjaaePo/XMuhAPNAXtJEbDImgzWDElSlaozBQFQlB1R7jvZLdTJVWyUmLrLsljKj00f02dmVTEkRYp3UdwFEi1ubPqAjR/hv/Z75X2A6x1rLwi6pwPJiSwJdlSk8ySinRl/DsN2Q2tgdJqUJTRyFrsvocdrE3Q5kF4Q0HiXG/Jx4T6f5wEJSaZeLwaufwtwTW6R02cd505LXcLIxnISkd1xeP+DLoEYA8ALUbahh8k6tJFPbPEOI5X/sJaR2LWX2RNrBN3bOgUMsjFvOWyy1c+HsASETx7XjqsvmaeDZaZ+fjY6HLDXAift6jC8wE9ZB+uivhw==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2427:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 31:ySxNITyJ6OsQB3wCNt/0GLwo8foIvDh1H3UrEIKUIBMrtXgMLNA4wKY1pvR4eY3Q3yJC2jETgkKuMkWkEJ2+Cd83Z+0DWRRCVtozRduJFmM2dCiom1IG/H2uY5zj2TwkRsh4VedbsIXK20W94rmSglBOUPVJXEaDShePmnEjt9mcyB0svB3Q8dTK3bzmz07kMTOOJ4i+k7RCVCkXATs4N+S5AWQ0FQ6XIvNj8EUcsDk=;
 20:e+fHCggGuJ4Iup46MBw+S2ce5APUzkwzmOyHRvNhmyBHPRlXbkO8aSr8qu4LoLMxiWh8I2OrnXdu6pYpG2SFobRmvbWyL7u+uVdZS+vqwRKN8UnC6sa5w38XFjBFm3tzj6kdRploQlFNKyRIg6cVTjhGazeIQ7pToNYLAfHHihzkl5ke0Y6cbIxkYZ5Pv6NWsr7esTlYL01rTazDHJVQgB+5fWdOo7BK3H3NXdjYUinA/ddspeWfPtBQ9E9/wFVu;
 4:/1WIJf6FGYe7XKJ5rBlZN6+9x35UYFSUTOzA0Rx06FdrXlSXzputbMtk3VjBMQ5Y86qOOLLwfi43oBOieGl+XazoKBiBZ2HzkkS6+VT2CvKobYQ7Fdhl1y8PFvM3ElGlocCOWFY58Jp0C6GQfQv00kjkunONqr2AM03UvTTLdIHSAd2cvop2TZr32QX3sDJ/hX+8iMK5yysqiwYlP1dmXGIuX7HjjAdaS5N56HN1O5ECcA0XyUBwIR8Q+AYNOwJujV29lymlFCgwOUR5oWsZKm0YVZDAKcJX+Wy2lBAOmqTqfNcvT4g6WUudZufSuOUT
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB242727B805695BCE1AD8DCDA84B00@HE1PR0802MB2427.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(10201501046)(3231232)(944501327)(52105095)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123562045)(20161123558120)(20161123560045)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2427; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2427;
 23:uXyLswwacZHqlrxF1uURA37N7IHA1N5T92Agoo0?=
 =?us-ascii?Q?CACGq2NFseCAr7dzhldBeUGM9ut4HdrTySAggxqyRnv6XUs2E+z+oPE9E/PT?=
 =?us-ascii?Q?DptRfWSjzDdlrOfa1FCglr5+AGRVvLF3AlDxb96GrAe16pAdVir6VSfRVQJK?=
 =?us-ascii?Q?fbAwNM1aAdF1rRbNQWLPhE7MSAhBb0VWfCnT5SMudPW65YVww4QAJoaaL1fO?=
 =?us-ascii?Q?Kc3fl6cF65S9VbhXBbesxuynN4ixD4lOkimZLlWChwbxEQOREe5bNrLhQo9S?=
 =?us-ascii?Q?em2/ialSZ0X0qvpIkzvhxi3Sh3ZHec3ST53x1P2OJpizYWhFiwRpHX7IIujX?=
 =?us-ascii?Q?COFYMDJKcio+JOLUeMQKr/osFuGzEq6ZWTVkYfbKavwAUUDg95o6YTvnJaTM?=
 =?us-ascii?Q?UUjcWX2UMiZEulMcYDwzv0Z6EB/3x1MIQICA8P2QpLni51xtWJguccHBRZts?=
 =?us-ascii?Q?9WRTKWtgFXMLbVrUWJQ0yFQBkN0OcUUpkA/tOYW1o7Jzn9ZRYzCulWtUyUh4?=
 =?us-ascii?Q?zTS3m3KA1lnpdK7TL8r9+tpF6jwQZ7zlzrP88CLHVwrRigm8ZF/eDFj211x7?=
 =?us-ascii?Q?zEGMRx3conLgAakHrtiObI5UgVt5p18CE0pCBhs3svflyFDZq60En17ReG7f?=
 =?us-ascii?Q?ZL5TjZs9x2qoncL8nYjZca6890vzfQ8Vs/cFd0aH4qr5AO5roLF4toXW8gQA?=
 =?us-ascii?Q?gMCYJZCn4dOaARseHLo5ABWqR67QFZawARkkk1OMSDPLzK7aDQoT/J1SFH6W?=
 =?us-ascii?Q?KhDhc1DYxt5Xq8XKHlSCGKH1H87YGExia3f5oZ5yZwPA8BlELcNv84Ttk/Sa?=
 =?us-ascii?Q?2txOTJLeuqC9mC67Kf6wJGlfqZMhk4EL/oIbDTDeK+OGEydndTzeuDBCyxFT?=
 =?us-ascii?Q?iSc92KWr0YXLRWMSgFmK+2Tmypi+9Cbk8EE+mJ6PEqCslIXFhLjBZzMLeY6J?=
 =?us-ascii?Q?fss6oh7rOAeyrL0yeLAlejkxFULFUjy3SPT0X6WRebhbu/cR7TG+4AI5rcPE?=
 =?us-ascii?Q?iti7XoIQfK1ghDbyfD4UEG9TX4G9fDvszEUG6+uz96dQtp2z/VVXdljr4wPm?=
 =?us-ascii?Q?+yww3jb2i0kZOYYdkdf1sTmvDlcC+GweMsGoI3emQ1u2dsmWm/7bUxlh0lwF?=
 =?us-ascii?Q?M7tMdl2CvcsG3ILy9YfXgBoa05z6lPtLKMfpXBFdW1NaY6bQZ+nEIYKj11F1?=
 =?us-ascii?Q?+AVsbyfXU3ynOZwU=3D?=
X-Microsoft-Antispam-Message-Info: wiacursd9V57b+eWpt+2+eBEr63szArmSSYZxXY72ajSGBo8LcTPFmfNdhTQxzShwK4EBy/gcaE//1ZY04Tm+VB1UmkyK4hbNjYx/RUI4A7h+CuZkKat4gaTrhMEg+94NQiKsgACAX9Rfb4FvwmnPlgF8cgROx1pJeMtHvu1GQ54j4HiPHZsMI0GfaRa0OQQ/DbSlt2tW/kfn/I9bDtv21o05le7UyZFEsIe7qa41OKvVZSlursQS9d/l21MVf+xNiAN3/mC6MVV9PEZm1RBc32nrGCst+Q3YeEaePzj6QMXsUrw0OtOTT4K58r+BUJ1j2hDrW22JJ0apoBirCUOyW/IYzdVeEcNLPkQ6/iNetpuv6a7HU3vIcFAfuW/l9DQZQCZtKRXirgbKcaF1qwYC0/fYziihNJX0AevoT4H7aQ=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 6:XYMNV8IRnft08ePWLWuXx2/VKUtWvp6lufFUh1bvYpC48ykjVZbIBlvFqeVWuwWoTWvJUd5fvl1zR/CSiifedrewUr1KETBRIE/8vAtJABSdSsnXUEFmuXL9UoSrnUbIYlePmWXd1DhPfVLqVcDkj0NsuSg7TvxQwLhLjryrVrl+CJGVkoG+4ZgT/6ptoDc3Pst/2bFNQOTpMLKOreNSmExB4ty8nfp6MiehJqeYo2xYGghbEwxS4Ce4XmfyIirUfEyiP3YXqF9K51AZH3Bv7jW5vdjsvzAjlPSanzEIVSEdO2mIXQX72Q9R5B9jg9wclJzotbK68rBSxSfnoMczeEHPwB/VQ/3mAAZv9dlfOPuGPoEZ7La/aLOHSbPX8/lKlza28dbzOyvVaDybjc9F/RiWPiy3fwyFPIuJIXzHVvD3Y2yuLAVKcXCtfhbuRWxD3l2NlSNkjd8eUYp1KLtqUOrDnTQCnVbSsOIMzwn+kCM=;
 5:1NCu5dbeOPymuEJPOXoA4obeiCHx4jb5K7oWvmgGXpMRuaHrceE6HtvDToSGO8/NOsMhVTMfxyDlht0donhKdEtNz7gc+uIJWBi02cu/OmyWR1OFYzp1CBCx5kz6vJwbk/TZXrBrTj/w1sSWrGBn9UuESdKAPG0BvZmyJb3OZ9c=;
 24:tWo44hOINWTJGARyMQRNjcDteD5lwH++H19ZKx7D5LF7fcMNV3Wi3/s2wTCR1KMlQOdVfJF0H/tP8XDq25vwADit10bjFzX1w+HNPZqNCEs=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 7:S35XsLqv3Ewodt95T1aK1RHfgsncjm7h4EONC1SbSCQtdCSb/Plr2Xdn3eMuADcmzcmXp5bZNXQdy+8IsHVwCXPh4NyBINTnsjPuz/mCNBcbHDwcMH8WCdCSVda4933EkoAhoIAcqH5pQV4IQ8khdpYLvUETKyZOgmnMssbUSztdCvz7q0sjkSlGkBuPK9W0XPHLzI6qVJjL2ozbkV2OXk0sriuDpMLD+nBmg7VDSlNu/+7lbzcyoZK0CiSt2qaP
X-MS-Office365-Filtering-Correlation-Id: 0467146c-d99d-4adb-ccd1-08d5a3640485
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:50.7915 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0467146c-d99d-4adb-ccd1-08d5a3640485
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2427
Subject: [Minios-devel] [PATCH v3 16/43] mini-os: remove the e820 from
 common code
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIGU4MjAgaXMgeDg2IHNwZWNpZmljLiBUaGlzIHBhdGNoIGFkZHMgYSBuZXcKZnVuY3Rpb24g
YXJjaF9jaGVja19tZW1fYmxvY2soKSBhbmQgcmVuYW1lIGU4MjBfZW50cmlzIHRvIG1lbV9ibG9j
a3MuCgpEaWZmZXJlbnQgYXJjaHMgaW1wbGVtZW50cyB0aGUgbWVtX2Jsb2NrcyBhbmQgYXJjaF9j
aGVja19tZW1fYmxvY2suCkJ5IHRoaXMgd2F5LCB3ZSByZW1vdmUgdGhlIGU4MjAgY29kZSBmcm9t
IHRoZSBjb21tb24gY29kZS4KClJldmlld2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3Vz
ZS5jb20+ClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+
Ci0tLQogYXJjaC9hcm0vbW0uYyB8IDE3ICsrKysrKysrKy0tLS0tLS0tCiBhcmNoL3g4Ni9tbS5j
IHwgMjIgKysrKysrKysrKysrKysrKystLS0tLQogaW5jbHVkZS9tbS5oICB8ICAzICsrKwogbW0u
YyAgICAgICAgICB8ICA5ICsrLS0tLS0tLQogNCBmaWxlcyBjaGFuZ2VkLCAzMSBpbnNlcnRpb25z
KCspLCAyMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9hcmNoL2FybS9tbS5jIGIvYXJjaC9h
cm0vbW0uYwppbmRleCAzZDg4ZDNiLi40YzBiMTg2IDEwMDY0NAotLS0gYS9hcmNoL2FybS9tbS5j
CisrKyBiL2FyY2gvYXJtL21tLmMKQEAgLTMsMTggKzMsMTkgQEAKICNpbmNsdWRlIDxhcmNoX21t
Lmg+CiAjaW5jbHVkZSA8bWluaS1vcy9lcnJuby5oPgogI2luY2x1ZGUgPG1pbmktb3MvaHlwZXJ2
aXNvci5oPgorI2luY2x1ZGUgPG1pbmktb3MvcG9zaXgvbGltaXRzLmg+CiAjaW5jbHVkZSA8bGli
ZmR0Lmg+CiAjaW5jbHVkZSA8bGliLmg+CiAKIHBhZGRyX3QgcGh5c2ljYWxfYWRkcmVzc19vZmZz
ZXQ7Ci1zdHJ1Y3QgZTgyMGVudHJ5IGU4MjBfbWFwWzFdID0gewotICAgIHsKLSAgICAgICAgLmFk
ZHIgPSAwLAotICAgICAgICAuc2l6ZSA9IFVMT05HX01BWCAtIDEsCi0gICAgICAgIC50eXBlID0g
RTgyMF9SQU0KLSAgICB9Ci19OwotdW5zaWduZWQgZTgyMF9lbnRyaWVzID0gMTsKK3Vuc2lnbmVk
IG1lbV9ibG9ja3MgPSAxOworCitpbnQgYXJjaF9jaGVja19tZW1fYmxvY2soaW50IGluZGV4LCB1
bnNpZ25lZCBsb25nICpyX21pbiwgdW5zaWduZWQgbG9uZyAqcl9tYXgpCit7CisgICAgKnJfbWlu
ID0gMDsKKyAgICAqcl9tYXggPSBVTE9OR19NQVggLSAxOworICAgIHJldHVybiAwOworfQogCiB1
bnNpZ25lZCBsb25nIGFsbG9jYXRlX29uZGVtYW5kKHVuc2lnbmVkIGxvbmcgbiwgdW5zaWduZWQg
bG9uZyBhbGlnbm1lbnQpCiB7CmRpZmYgLS1naXQgYS9hcmNoL3g4Ni9tbS5jIGIvYXJjaC94ODYv
bW0uYwppbmRleCBlYTU4NDQ0Li5iNWQwZjgwIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9tbS5jCisr
KyBiL2FyY2gveDg2L21tLmMKQEAgLTcxLDcgKzcxLDcgQEAgc3RydWN0IGU4MjBlbnRyeSBlODIw
X21hcFsxXSA9IHsKICAgICAgICAgLnR5cGUgPSBFODIwX1JBTQogICAgIH0KIH07Ci11bnNpZ25l
ZCBlODIwX2VudHJpZXMgPSAxOwordW5zaWduZWQgbWVtX2Jsb2NrcyA9IDE7CiAKIHZvaWQgYXJj
aF9tbV9wcmVpbml0KHZvaWQgKnApCiB7CkBAIC0xMTMsNyArMTEzLDcgQEAgZGVzY19wdHIgaWR0
X3B0ciA9CiB9OwogCiBzdHJ1Y3QgZTgyMGVudHJ5IGU4MjBfbWFwW0U4MjBfTUFYXTsKLXVuc2ln
bmVkIGU4MjBfZW50cmllczsKK3Vuc2lnbmVkIG1lbV9ibG9ja3M7CiAKIHN0YXRpYyBjaGFyICpl
ODIwX3R5cGVzW0U4MjBfVFlQRVNdID0gewogICAgIFtFODIwX1JBTV0gICAgICA9ICJSQU0iLApA
QCAtMTUwLDkgKzE1MCw5IEBAIHZvaWQgYXJjaF9tbV9wcmVpbml0KHZvaWQgKnApCiAgICAgICAg
IHhwcmludGsoImNvdWxkIG5vdCBnZXQgbWVtb3J5IG1hcFxuIik7CiAgICAgICAgIGRvX2V4aXQo
KTsKICAgICB9Ci0gICAgZTgyMF9lbnRyaWVzID0gbWVtbWFwLm5yX2VudHJpZXM7CisgICAgbWVt
X2Jsb2NrcyA9IG1lbW1hcC5ucl9lbnRyaWVzOwogCi0gICAgZm9yICggaSA9IDA7IGkgPCBlODIw
X2VudHJpZXM7IGkrKyApCisgICAgZm9yICggaSA9IDA7IGkgPCBtZW1fYmxvY2tzOyBpKysgKQog
ICAgIHsKICAgICAgICAgaWYgKCBlODIwX21hcFtpXS50eXBlICE9IEU4MjBfUkFNICkKICAgICAg
ICAgICAgIGNvbnRpbnVlOwpAQCAtMTczLDcgKzE3Myw3IEBAIHZvaWQgYXJjaF9wcmludF9tZW1t
YXAodm9pZCkKICAgICBjaGFyIGJ1ZlsxMl07CiAKICAgICBwcmludGsoIk1lbW9yeSBtYXA6XG4i
KTsKLSAgICBmb3IgKCBpID0gMDsgaSA8IGU4MjBfZW50cmllczsgaSsrICkKKyAgICBmb3IgKCBp
ID0gMDsgaSA8IG1lbV9ibG9ja3M7IGkrKyApCiAgICAgewogICAgICAgICBpZiAoIGU4MjBfbWFw
W2ldLnR5cGUgPj0gRTgyMF9UWVBFUyB8fCAhZTgyMF90eXBlc1tlODIwX21hcFtpXS50eXBlXSAp
CiAgICAgICAgIHsKQEAgLTE5MSw2ICsxOTEsMTggQEAgdm9pZCBhcmNoX3ByaW50X21lbW1hcCh2
b2lkKQogfQogI2VuZGlmCiAKK2ludCBhcmNoX2NoZWNrX21lbV9ibG9jayhpbnQgaW5kZXgsIHVu
c2lnbmVkIGxvbmcgKnJfbWluLCB1bnNpZ25lZCBsb25nICpyX21heCkKK3sKKyAgICBpZiAoZTgy
MF9tYXBbaW5kZXhdLnR5cGUgIT0gRTgyMF9SQU0pCisgICAgICAgIHJldHVybiAxOworICAgIGlm
IChlODIwX21hcFtpbmRleF0uYWRkciArIGU4MjBfbWFwW2luZGV4XS5zaXplID49IFVMT05HX01B
WCkKKyAgICAgICAgQlVHKCk7CisKKyAgICAqcl9taW4gPSBlODIwX21hcFtpbmRleF0uYWRkcjsK
KyAgICAqcl9tYXggPSAqcl9taW4gKyBlODIwX21hcFtpbmRleF0uc2l6ZTsKKyAgICByZXR1cm4g
MDsKK30KKwogLyoKICAqIE1ha2UgcHRfcGZuIGEgbmV3ICdsZXZlbCcgcGFnZSB0YWJsZSBmcmFt
ZSBhbmQgaG9vayBpdCBpbnRvIHRoZSBwYWdlCiAgKiB0YWJsZSBhdCBvZmZzZXQgaW4gcHJldmlv
dXMgbGV2ZWwgTUZOIChwcmVmX2xfbWZuKS4gcHRfcGZuIGlzIGEgZ3Vlc3QKZGlmZiAtLWdpdCBh
L2luY2x1ZGUvbW0uaCBiL2luY2x1ZGUvbW0uaAppbmRleCA0ZmMzNjRmLi4wOGU0MzRkIDEwMDY0
NAotLS0gYS9pbmNsdWRlL21tLmgKKysrIGIvaW5jbHVkZS9tbS5oCkBAIC04Nyw0ICs4Nyw3IEBA
IGV4dGVybiB1bnNpZ25lZCBsb25nIGhlYXAsIGJyaywgaGVhcF9tYXBwZWQsIGhlYXBfZW5kOwog
aW50IGZyZWVfcGh5c2ljYWxfcGFnZXMoeGVuX3Bmbl90ICptZm5zLCBpbnQgbik7CiB2b2lkIGZp
bmlfbW0odm9pZCk7CiAKK2V4dGVybiB1bnNpZ25lZCBpbnQgbWVtX2Jsb2NrczsKK2V4dGVybiBp
bnQgYXJjaF9jaGVja19tZW1fYmxvY2soaW50IGluZGV4LCB1bnNpZ25lZCBsb25nICpyX21pbiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyAqcl9tYXgpOwog
I2VuZGlmIC8qIF9NTV9IXyAqLwpkaWZmIC0tZ2l0IGEvbW0uYyBiL21tLmMKaW5kZXggMGE2Y2Y1
ZS4uNWVmZDg0NiAxMDA2NDQKLS0tIGEvbW0uYworKysgYi9tbS5jCkBAIC00Myw3ICs0Myw2IEBA
CiAjaW5jbHVkZSA8bWluaS1vcy90eXBlcy5oPgogI2luY2x1ZGUgPG1pbmktb3MvbGliLmg+CiAj
aW5jbHVkZSA8bWluaS1vcy94bWFsbG9jLmg+Ci0jaW5jbHVkZSA8bWluaS1vcy9lODIwLmg+CiAK
IC8qKioqKioqKioqKioqKioqKioqKioKICAqIEFMTE9DQVRJT04gQklUTUFQCkBAIC0xNzUsMTUg
KzE3NCwxMSBAQCBzdGF0aWMgdm9pZCBpbml0X3BhZ2VfYWxsb2NhdG9yKHVuc2lnbmVkIGxvbmcg
bWluLCB1bnNpZ25lZCBsb25nIG1heCkKICAgICAvKiBBbGwgYWxsb2NhdGVkIGJ5IGRlZmF1bHQu
ICovCiAgICAgbWVtc2V0KG1tX2FsbG9jX2JpdG1hcCwgfjAsIG1tX2FsbG9jX2JpdG1hcF9zaXpl
KTsKIAotICAgIGZvciAoIG0gPSAwOyBtIDwgZTgyMF9lbnRyaWVzOyBtKysgKQorICAgIGZvciAo
IG0gPSAwOyBtIDwgbWVtX2Jsb2NrczsgbSsrICkKICAgICB7Ci0gICAgICAgIGlmICggZTgyMF9t
YXBbbV0udHlwZSAhPSBFODIwX1JBTSApCisgICAgICAgIGlmIChhcmNoX2NoZWNrX21lbV9ibG9j
ayhtLCAmcl9taW4sICZyX21heCkpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgaWYg
KCBlODIwX21hcFttXS5hZGRyICsgZTgyMF9tYXBbbV0uc2l6ZSA+PSBVTE9OR19NQVggKQotICAg
ICAgICAgICAgQlVHKCk7CiAKLSAgICAgICAgcl9taW4gPSBlODIwX21hcFttXS5hZGRyOwotICAg
ICAgICByX21heCA9IHJfbWluICsgZTgyMF9tYXBbbV0uc2l6ZTsKICAgICAgICAgaWYgKCByX21h
eCA8PSBtaW4gfHwgcl9taW4gPj0gbWF4ICkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAg
ICBpZiAoIHJfbWluIDwgbWluICkKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3Mt
ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9t
YWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:06 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xiH-0003AN-NA; Mon, 16 Apr 2018 06:34:05 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xiG-00039x-1m
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:04 +0000
X-Inumbo-ID: 05ae24bc-4140-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [104.47.1.59]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 05ae24bc-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:33:06 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=8sQzgHyaN5g0hLpCNdsUFHRByc2apC0iDh7N7bTmpzs=;
 b=UIRPceGOmIU2ZfK5QPkzvBKk8AkIPmY/c05tsPuDzx1Jnb+nk0NRmHyNq40rocp1aoTKw2ozEXuKYefIO3f7bjO0lPf0bMyNbxSTSCCOc6foTF13rOaYRMkaAm30oyZoFcKBeTAC81+oJmSNPchCpGT6lSZsOHJ1WpfmKHB5/q4=
Received: from VI1PR0801CA0006.eurprd08.prod.outlook.com
 (2603:10a6:800:32::16) by DB5PR08MB0983.eurprd08.prod.outlook.com
 (2603:10a6:0:13::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:33:55 +0000
Received: from VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::207) by VI1PR0801CA0006.outlook.office365.com
 (2603:10a6:800:32::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:54 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT059.mail.protection.outlook.com (10.152.19.60) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:54 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:46 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:57 +0000
Message-ID: <1523860343-16382-18-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39850400004)(39380400002)(346002)(376002)(396003)(2980300002)(438002)(189003)(199004)(72206003)(26826003)(305945005)(2870700001)(446003)(246002)(426003)(486006)(126002)(476003)(2616005)(11346002)(6666003)(5820100001)(5660300001)(76176011)(23676004)(575784001)(86362001)(59450400001)(478600001)(39060400002)(8666007)(4326008)(104016004)(6916009)(50466002)(316002)(106002)(2351001)(186003)(7696005)(36756003)(8676002)(47776003)(54906003)(8936002)(50226002)(2906002)(336012)(26005)(77096007)(106466001)(356003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR08MB0983; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT059;
 1:tfidI+FffeX2Xaqf06R9WK7NEyZUp8m+AAIouTulBQCwCcFFtGS4tOHhP9uEw8TJOZDwKKykn3ymOP0fjRzL93iA2ziVs8VF44bpYLEx/GxP/s5yCq9gGuvHdv6EsqFg
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR08MB0983; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0983;
 3:k8Pe2p3FK47jgoJkfj5GqMgEtqJKa4AuTsuOk8Bgk81qzwKNm2BDSV3vjCA+sXcai/w5D2Uki89na0tEmYD5hs9BCRGrlYU/+6U2COgjfJOSzN2GmAWvR12i1tmk7Vb6OwqI15r5sOOY2w4NeWZ/XFO7AftElp/b7mc22JBty5ewd/4ReEk8e2YiMp0kcDW0NMYaV52k4XBdcNZWJ1PNWV1sNhrELqdKEtpgYagjQ417+z76G6KvHnJqhK1GEd74TGXmqwzO/2ySat8K8oL1rjLQBwFbGpMKekjmwFG4EjxLvolgBZ31OVIiSFGKekrgAd8WgJS7zLPCkkHP2DUcCCw3VRXFu34/RDOQf+CVJ6o=;
 25:7Fk97fDuIyCht2eruTG5rc7hc/LAsCRx8T06LrsMZtUISQ/874j+hCrTfOPORzSFnQ1UEDTowhZYFKCQP83OpJ1O8yw5bSJ6nREI1hxP/fH/pJEpIKXbF4/P+q8daZkuvSZ5wxdc7JlsUsibbC7LDUy4RG1MovcE5uyjHkdE3AmAn4Uq0NpjJjXpgYPsRo4BwJyz60LvGV+M8l7Mb4ltw7TY0U5EsgZR7elc8F+aZh1IqC0P6/nuH97wH8L4ZTB30GTPKWhMoX5BCN1zsm9BJDcMcIIZk14Kq6IRFE7OAicKk1xTKJFmdJOme+7Px4I/f40Rv4OEwxSS6clA04kJfQ==
X-MS-TrafficTypeDiagnostic: DB5PR08MB0983:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0983;
 31:eAqPDnvUQIqDfnOo7d2Zh1Br3kw47+A4u2GQvvusDwh2hA3ybdKPmPUmJk30A80QmKUEjSDi+pEttMBbLxVeP7mB5xitys7VlM/KJwFOG//2hVLcBIurNqhnKSM35/U6qsmbAo66paPmfLjVu0Fc+ZK71clz9fRaPl2ELLmYne6pclFGtVOcaJ+nwyVgkEQ2g2IRH6EOBcE6XZx/avNO6gK2XPUy1YaqCJt62In7G44=;
 20:Sr7u0dXZbkhpxu8DojqFBHlopt1i+sA4Fn9EX3UtrBQ5M5EJSVb8aXXIojTmyVf3ZCL2Xy4LDzxMThScZtt2kXb997vvaASbKYUk/PaqpCAjfTluIdg67t33v0ed85Kq9hZb/Vj4+Inn2MkFruXBm/mvJZBQTKBHeefwkUd6C8/L65WiprDfX7nM2uwbkIFkT/TzTAb1mIXb8F5cdWzCFWFyOxUkDa13/zg+ubUiU4zFg9uJI1bruurs/sng3JBr;
 4:sj+OTRmdedZ0gVNZyaupOWLDuu+TZfeafpthY50MxeQbDlcAhmyRF53fZ8diBuil8owhSs0tQy/DsJBXK6XKesbJFDA+lqo58Z69mbORiD7mmkUUy7jCyoKde3R+DOo8m3aBD+0RD8ZAMQpEUGku6qdJG/bhuvnZnyUcZVm2HxDPsYjblOBoB1dmCO4eKy/AbEWrBHKFhCggHLbkCi9ppOJoTRxs571d9P/XtBiKvrOq21/+csXYCiXiPdYTg7yPR8k0OxxyoYCnyLAFVWliY6uoqBBN0jFJUISKQ/EgfDfhGLDyjO7UbaYg7TVqroxD
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR08MB0983642F19511BDFFA7CBC6A84B00@DB5PR08MB0983.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:DB5PR08MB0983; BCL:0; PCL:0; RULEID:; SRVR:DB5PR08MB0983; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjVQUjA4TUIwOTgzOzIzOkZWS3lGT3VRci9QL1dVYmJQVGx6cS93UXY4?=
 =?utf-8?B?SUdEbldSZGFUY2xxNVB3SmlOUlFXNlJvRzltRi82S1o5VlgzNkRkaHdlSkZH?=
 =?utf-8?B?Q1E5MXF0Q0d5ZDVyUlZxZ0dGKzMreHlOYkl4NUVoSjNaK3crUXhZZERTZ3ZJ?=
 =?utf-8?B?YTdWcGRpd1FvSm1iVFNCeFJXM1pIYUFPMWhrOTZaSUxtMTlha3pNQUdDVW96?=
 =?utf-8?B?YlpQZXN0RG1EWjM0ckI0aGMyNDNrSys0ckdQeXhiTytuN0lLRTNsYmpmOGdr?=
 =?utf-8?B?eEpVWG51blM0YldvemY2b2ZxbTB6KzRWbVViTkE1VlY0c1hCZGV3VW04UDhS?=
 =?utf-8?B?NFhJaDdOZmJUZmtpVmtFSVpjRkVGdTNCQkY5eFRUVmttWGNhMDltV3I2c1Az?=
 =?utf-8?B?TEJkQmtnTUF6cXZCQlMyWEl2Z2Z1aFBWVDNaaWRYL1NDWGhWc29NcTdLbHFT?=
 =?utf-8?B?U3BwRDg1T2d2R3ZwZmlWeWxUckF0Slk5TkFxaFNMdGxhbWI1YTUvVHZaVlEy?=
 =?utf-8?B?VGRWR3lwNGxpbnRaR210b0FCckhSOVdjZVRzR3VUZWtWK21CM3kwNU41SVls?=
 =?utf-8?B?MS9UR0NiL1cxa0JCK0o4NU5nUy9ubXd2SjM1eUNLbXlGU3FPczlCT0xhVVJy?=
 =?utf-8?B?ZlZKOWRjVzlqTHZFMDFqbTdJbHlqTkdLZzdHVlNUejRMaDVkVjU0Y3crN1ZU?=
 =?utf-8?B?YUM1aGJWZDJnaGJKT1BsWTl0emI3enVIWFhiWFpESWdKUGZ1enZERVhxdmtx?=
 =?utf-8?B?UnkxaDdBbld0OWptcDNNNzhkTFVrNjJhSVlCREp6MXFITXlUTG9IWFArNHhh?=
 =?utf-8?B?bWhaNXNKZkdLTFdkcXRGK0RrcDJPTUZPeXNJeUduY0hGN3FoVUxIUXM5V1l6?=
 =?utf-8?B?ZnJjbHBZa3Rqdjk1SDBmTGNvMWoxQ3JadjIrL1c3K3B3SFZCTVJRdkozLytO?=
 =?utf-8?B?NWljM3JjQnZ2MnMxbW80U0FacTdLd0ZqRGdRdWk3U052VnZNRWhWSHp2dGFu?=
 =?utf-8?B?R25HTFpueTdBb25CNXluM29VQXFFTUhZbVkwc08wdjliODVEUlk5M0puQTZW?=
 =?utf-8?B?a0NHMEJzZDdpbTRIc3plSFVkWkZkSU5rUnlaSGthZFMxeFA1WU0vNjFYbnMv?=
 =?utf-8?B?MGhILzRrSkZYdVpKc0p1VGJ4QnpuQ1pXTTQxTnhIb2lRaGpmNTNrVG5UYWdt?=
 =?utf-8?B?NXVUOHN1VllaK3JTaWw5TXlpTTUyS2F5QkFNTEE4eXBKZWsvSW0vTjZDWXho?=
 =?utf-8?B?LzFpcnUvQ0NyeWVaWWxCZkNISThNbW5CdlFETlczbk0vT3BWczlLWGRPblh0?=
 =?utf-8?B?b3c1dXJVV0N5NGtaMXp0U2hpUGJDZjl0NzdBOU9HMFgzcU1LSWJDVkdaMXBk?=
 =?utf-8?B?d0xKTVl4K0x1eE5xcHNZMXJNa1c5eEdOQzY0SlZGRkY2UHIwaGJ6dkVQK1J3?=
 =?utf-8?B?K3JCaXlJb0RsOFdLNUx6UFM4MEJ3WER2ejhuSEgvWVhyRUExS0ZWK245SzVT?=
 =?utf-8?B?a1JPNDhkVWI3NmwyNHhpNzFVSUFQTG9Kb0VNcDRVZkVNSkZ6aWtnL1Y2Y1R5?=
 =?utf-8?Q?2pj/3te6SMcVODjNWXpY19YZ47LM84B3saYdl4XE5R90=3D?=
X-Microsoft-Antispam-Message-Info: 1CvV7mBJ15dv3lCLATI+6DRKZ5c1AW2quf4jGfW7aOQ2GKiHfvOKVgo0T2rhhL6siGLsUkxTKOV2MYtlbbkohPIFWbEQqFjpXnyxbsQ7a6/9NEqDkkqInOui2n8afvPW5cNkZZIy23p6dIreVu39pLYJ2hm7GrNqwmqSdvA1pQRHic4fZDffIvic0pMh2sya7ddFvN6O3g1Fg2jjVDS5EzNVBtznBAxy6R83FPi0fhnnzHr2eJkJ+jFcSOlDfGsWg/04VGWc2HqtzkpK1UYPJAuIBRxvbC8AlbItPvJqao1DMyBBSldJvm+LreltgakPeAQkuvwynxDPR2c+POyhSv70oaJeNWVn3OYDsIJtFKwuU82VpUWsC/4wPHkkYy/LysIGw23wVTXXSddgb58r8Ydk7NEDmKZ0sirXRl5+xcw=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0983;
 6:S7/TUHv1hqv7MrO3e7JPY5irtKVz8+2xmUJMbhI+KkCl7eCJNyVQ4hMSRldFQA9F2wYuW1TRdzMrDlVgtLMEeTQis4PCMaSxFC/AgbuwwnvC+udeoyeYGtH8wQKdJF1cHQ4d9aKICDK/d7hgl3IsfQj7AVAACl0TiBlTvWjnACvVIrrKGImXvFiBAE2bQUwEZrZFawkFp+DTus1T7pEv9WrFttQfXUjEYnAy3bkeX7a4a4BKrNkMAvQp+far0x+I/IKEX/hwX65O6vw/1B/9fqcbJWCKgq2X4JsT0jD8ZSPHm+VqgDUByabh73YUX2R04mOP/n/eChzJo3fMdMDAZcUuqir7W16gfUpMkvsbVrfxJjwYWyhWGPHLFEA7zHlWVk3QtoZGkTS1WXM1/L7KaR86yIS0AjYCxZO3IXjNCJTXrVwJUb0oCtCurRwkR9WtWkLIHVipFUvj/zce03AjhdYI7iHMRMKsk0myhxHR9TcfdDA4iwSJ+xWnRlVojr+r;
 5:x1tzfTWj57f10CU7g5V+FZmIqp0maQ97n1uKp4j/OSmzzRLQ5+qCwrZwE5G2g+A94AGVl9EqkqD4+UT8BV3FvwQZ5Wmhb1msROAdaIgvcr2jj4z5L7Kr6z+Lr8GurPAjNieE2GUCUzx+3vP6riBY2MWJKCLjxrQVifQJ94ZYD8E=;
 24:841X32KppMPyQsLkuLF5A7QUzT5bP0U6ULaBj4i94cnwu/yA8PLCSB3D3KzS8I88vGB/ccwqBDZ3bQHpHjtQRhe/jDSZP2HQeW6TyPkEXwQ=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0983;
 7:60lWOx1fP9LNwtCoE+ko5ZXzs3whEo5ytEurOCDUNCIxfcCCB0AcRI9Hq5puD05Np0bPa9FfnnxCKRw4N09rCJ3C2Xw+Y0fNSzjx3F1yuWf7ATiRUz+JM+2nXf385+ov1JcoxSr6V6MwpnY0fhVmk9MIK8ZOox3iVGSeOqXx/Yktv8Rlxy420h/Mq3Ot+VkbO9Adn1WrYMwlhAK1TnzRAdY6Isc5ja0T9QDBLiK1bWin6BzN0r0biCqzUfdX22bc
X-MS-Office365-Filtering-Correlation-Id: 385594fe-5746-426a-4409-08d5a3640697
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:54.2770 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 385594fe-5746-426a-4409-08d5a3640697
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR08MB0983
Subject: [Minios-devel] [PATCH v3 17/43] arm64: mm.c: fix the compiler error
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIEBfZW5kIGlzICh1bnNpZ25lZCBpbnQpIHR5cGUsIGFuZCB3ZSB3aWxsIG1lZXQgYSBjb21w
aWxvciBlcnJvcjoKCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBt
bS5jOiBJbiBmdW5jdGlvbiDigJhhcmNoX2luaXRfbW3igJk6CiAgbW0uYzo1OToyNDogZXJyb3I6
IGNhc3QgZnJvbSBwb2ludGVyIHRvIGludGVnZXIgb2YgZGlmZmVyZW50IHNpemUgWy1XZXJyb3I9
cG9pbnRlci10by1pbnQtY2FzdF0KICAgICAgIHVuc2lnbmVkIGludCBlbmQgPSAodW5zaWduZWQg
aW50KSAmX2VuZDsKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKVGhp
cyBwYXRjaCBjb252ZXJ0cyB0aGUgdHlwZSB0byB1aW50cHRyX3QsIGFuZCBmaXggdGhlIGVycm9y
LgoKUmV2aWV3ZWQtYnk6IFNhbXVlbCBUaGliYXVsdCA8c2FtdWVsLnRoaWJhdWx0QGVucy1seW9u
Lm9yZz4KU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4K
LS0tCiBhcmNoL2FybS9tbS5jIHwgMyArKy0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMo
KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9hcmNoL2FybS9tbS5jIGIvYXJjaC9hcm0v
bW0uYwppbmRleCA0YzBiMTg2Li5lZjVmM2Y4IDEwMDY0NAotLS0gYS9hcmNoL2FybS9tbS5jCisr
KyBiL2FyY2gvYXJtL21tLmMKQEAgLTI4LDYgKzI4LDcgQEAgdm9pZCBhcmNoX2luaXRfbW0odW5z
aWduZWQgbG9uZyAqc3RhcnRfcGZuX3AsIHVuc2lnbmVkIGxvbmcgKm1heF9wZm5fcCkKICAgICBp
bnQgbWVtb3J5OwogICAgIGludCBwcm9wX2xlbiA9IDA7CiAgICAgY29uc3QgdWludDY0X3QgKnJl
Z3M7CisgICAgdWludHB0cl90IGVuZDsKIAogICAgIHByaW50aygiICAgIF90ZXh0OiAlcChWQSlc
biIsICZfdGV4dCk7CiAgICAgcHJpbnRrKCIgICAgX2V0ZXh0OiAlcChWQSlcbiIsICZfZXRleHQp
OwpAQCAtNTYsNyArNTcsNyBAQCB2b2lkIGFyY2hfaW5pdF9tbSh1bnNpZ25lZCBsb25nICpzdGFy
dF9wZm5fcCwgdW5zaWduZWQgbG9uZyAqbWF4X3Bmbl9wKQogICAgICAgICBCVUcoKTsKICAgICB9
CiAKLSAgICB1bnNpZ25lZCBpbnQgZW5kID0gKHVuc2lnbmVkIGludCkgJl9lbmQ7CisgICAgZW5k
ID0gKHVpbnRwdHJfdCkgJl9lbmQ7CiAgICAgcGFkZHJfdCBtZW1fYmFzZSA9IGZkdDY0X3RvX2Nw
dShyZWdzWzBdKTsKICAgICB1aW50NjRfdCBtZW1fc2l6ZSA9IGZkdDY0X3RvX2NwdShyZWdzWzFd
KTsKICAgICBwcmludGsoIkZvdW5kIG1lbW9yeSBhdCAweCVsbHggKGxlbiAweCVsbHgpXG4iLAot
LSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
XwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0
Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9z
LWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:09 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xiL-0003B7-Ov; Mon, 16 Apr 2018 06:34:09 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xiK-0003Av-Pt
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:08 +0000
X-Inumbo-ID: 086172c5-4140-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::613])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 086172c5-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:33:11 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=8OIc1sZ4WdfHzvdw3JtdPLtaQcgZ46rF4/6A/C/LONg=;
 b=m5hCfRcbFW2sPqmoKG8x0vDXAHMKRsQSWFESdrHCE9+LSwMcd/kOREmSS7jxlQpd8KvZA1s1YPxOYRbxk1r2OWIA5GLYDSi5w7tUNLVl2SWLOZ8J0ZJx3hdAdUCFRMgKd+Pj7nCg68mh3sqtA7+rbkF4dXZbjVtB/hKipCzX8go=
Received: from DB6PR0801CA0066.eurprd08.prod.outlook.com (2603:10a6:4:2b::34)
 by AM4PR0801MB1586.eurprd08.prod.outlook.com (2603:10a6:200:3e::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 06:34:00 +0000
Received: from VE1EUR03FT011.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::205) by DB6PR0801CA0066.outlook.office365.com
 (2603:10a6:4:2b::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:33:59 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT011.mail.protection.outlook.com (10.152.18.134) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:33:59 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:51 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:58 +0000
Message-ID: <1523860343-16382-19-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(396003)(39850400004)(39380400002)(376002)(2980300002)(438002)(189003)(199004)(106466001)(50226002)(7696005)(2351001)(2906002)(51416003)(16586007)(305945005)(54906003)(6916009)(8676002)(336012)(5660300001)(246002)(59450400001)(186003)(106002)(39060400002)(47776003)(76176011)(8936002)(26005)(2616005)(86362001)(476003)(11346002)(126002)(8666007)(77096007)(486006)(446003)(478600001)(36756003)(72206003)(4326008)(26826003)(356003)(48376002)(316002)(50466002)(104016004)(426003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR0801MB1586; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT011;
 1:v/WQgpcvt+o9sW6X2WX0lPcbpvsKyvVyUJr9FOZD+qlVakb/z3Jhy4FT+uLuRfn3F58AMjkTdTAr/zU1jtF9F9T+gLeWeiNbYKlEuoRBtody6GB/IYaUf3QJsRP2fVsA
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR0801MB1586; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1586;
 3:p6378pTeEEOjx0um81zmeD+lk5E4+8q4UaAapL5K9FVIvnFxsJPiiQHx5Gr2D6USB36I84oFJDvkbFwfCjwuz4DmT2iyhFefxTUPPZzTwKSvj4tceSyKr0a7MM3+xcpVEkwcxP4CgRuEH2NbftHwlyoPL7ZGVakuDpFXhEojWlpPIrf1Q4f/2VxIBeAESMPitkYpURGzZ7qIcXKGih9hAc5wVGEe+83nDXyqNoHV2iRKxgyFTf5A6WoVzsczua+hoQvnDFVzNb6kOltoQU5z8ZAIlLDOdCQbNDE7y2RysyZDqcH9gNv6Yb1/hSFZB4UnLWkV4YB6ALL6XGwl/Nj2LdJp3pRZZodZpzTrll2mOo0=;
 25:dZxsSYIgZKfv/IosVCMvdexmEtIlEdL/uKtZ8Ak2tw8hVbyLjsb5BqsbPzfbVGxGKe37nsLpBbqUK3qSfTh7/v51jWiBo8+mbUJAh/xjwns50CCTx1vRODfYwn7olTLRqT4mgU16jvPG1PK4IZh7FN7GMegZuim1xDtJncREIq3ET32SXziNxRxWohkM69i1UZs27m6dkKPcVUdLfM7qRly23SXlX6GIz9nQDAMh2OYbVXTuAqPTCoNzDYqZ7+Bj7ULgTxm66wqf3LMO5kXh90aQgZ1CVJLfPfts0yqCG/vhLfqYP8XcQAt/u/Vs+Xi4etRshpm/syxd1/DgLSl3Jw==
X-MS-TrafficTypeDiagnostic: AM4PR0801MB1586:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1586;
 31:mWKBgOTAyItr6mw+V37scy7ztLfkxlp5PAUZF/iZGjle+7sOe7OOzu2e8EZGWup5A5DVFQonbas2kojMzCefZY694cCu2XtilYFiosMevqAkKIsbqAX3GwhT0tb6mPU1ckqBWoae9E0v790PFaOwr5rkN+8TGXruZ5cY7Uxz9tiEgtpZVg9N6bJHpgmQPv+GVEe8fhveilpnvZodZAS6eHZH+KzM1P8QehHrxQ3z8nQ=;
 20:QmGIrR9xKuRfMY1nuLOnDO1bkVlyTkgUHjWt0vD/M4C4PfqRILNWWYzctLdVrV+7I9IUSXViOYMp2jixMqlgeGKk7qmDOwDD/GXr2cIdfaHgdVgU5i+GW0qObyyZgElkRWk2Kk986svgs6s7eorx/2Yi3K9tSCuix7n5UcnHzB2L4x6Bbmg8ODqMhOjVIYJ4kcc2+IxJz1rZZa/ZsGoOts9Eivx6NUgKttfxuF7q4sDd/AvOKj7IbDQcPhghFCvo;
 4:5sXDRjzBCS/mFn5YRQYaqnjPyH57aQKJlsf/zAvGqnYjC/gxg0Vk1uPK695KLaRSViIv7qGV4X90nI8iEnq4/6bE/WBeRAjReTdKD0KgzTAAJ5RpF5r/yDvKg8eNdE8Tc7LWziobXtZ3zsuPwhK02HKDOkmBR059mZppw1Lrbcz5v7RoV5Um/7aaudgkuyRzKghFhMe61qJTLzBd35IOjB57K8aTvZoG91KBqeBHrIA1Fy0Y3/m+g+L4wNel6SIIUeCgSvwo90VeKzFHtABuzJozeeRTPISidqd8T8SpS+5DIhAjcdj9QfjU1Y+VcwW9
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR0801MB15860BE63E2A04C15BD80AAE84B00@AM4PR0801MB1586.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93004095)(3231232)(944501327)(52105095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:AM4PR0801MB1586; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0801MB1586; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR0801MB1586;
 23:oWmS0FbYXy5vqPCGSLvkJGtrGEFdTk0rEyZom9q?=
 =?us-ascii?Q?mJDr7N5CFrWTU5Vt0JePkqj8H8LG5ojHafgYhsvIl811Iwsn06pQ0Ss4oaKk?=
 =?us-ascii?Q?L/FTBLCkScRalT+2MNUVdwx6cPoNA1cshRZz3RMrWe8dlXpi2X96SRbTTMKJ?=
 =?us-ascii?Q?H0xNXIUa4xcWTnnqeIZQOEmYGYz1oIDOSmb21kCV2oz62g6Hgb2hv0zA6WFh?=
 =?us-ascii?Q?Q7DRXT4qNePbE2yZwwbiNqeT/FfyXadt43pQmAmqGxden/Prlzuf/pyBWEdE?=
 =?us-ascii?Q?Bvz75fl6SwdMFrNfo9tgIoyxFihiynn1CAZSAXT/AwnyMpRwqJAvFRDRLgSY?=
 =?us-ascii?Q?VGIVtWvdNimKdSbsijZg0K0jqPYy+OQjCuPdvTlzlH6YiDhjxzUNJTT/5hK1?=
 =?us-ascii?Q?h+fw8c+18ZrTIUzIZFdmPnSpaNfydckC3w+vk5xd7vrFqYr2x63AjmA3qL81?=
 =?us-ascii?Q?O48tbOU6l0UD0wryfKi4SKJiR1Sbh+Yt1txrvOJuEJPD6isderwZorM9pa3K?=
 =?us-ascii?Q?no6NXf+0HbFiINK1CarBVSBRrg/Kg1SF6fKJg900aaRjL1qrCf563jo0Xygs?=
 =?us-ascii?Q?tpmDjSmIx2GOT4CzzMgQMw5aHh0kw9Z0NR1mReZf1HRinZuNxrXBdAALnMJn?=
 =?us-ascii?Q?cUXmIOEiH9YUIwLgRqR0DJEo/yqnWhxptSq5YR1VrKnqEGdpsjak1pJUaYqT?=
 =?us-ascii?Q?VfZaaf0xlLLDvxVA2ZGDNmUBdVyhXwtVyaIQFHqloZTxcMlvoxugM5zPnsMQ?=
 =?us-ascii?Q?iWyw2csqCZIOCe3Y+LnP5nslLvd8kZ+PB/goaWVmGOZgaB4gt2xOul2Ueujh?=
 =?us-ascii?Q?5+AP8Rqim1rDWg2Bko+1gKTFjmm5IqE580Cx008uSXr+kq26FEu/+QhNWy0M?=
 =?us-ascii?Q?IXOxp5kpRzpOVnHUGu+WY6cg/klVB0WvcGgayRYuA5IrGj6uPClXfuw5SuAG?=
 =?us-ascii?Q?Q5pIfz4qqo8MUiZ1GPsGpzKfC6wKWZk/I659yE2Wm9wSLEU8BDOgJI+LLy8f?=
 =?us-ascii?Q?LdnK1dAA+1ROL8aAsEWA+P+mgMCpohdAbci9OTDK079H4nrsi+rBjAwWaeCQ?=
 =?us-ascii?Q?z/TgEBeNcDGcbjYcxmEjfgMjm9JdnYoBSOgH1z8aaraShrX9GKR45uSoQZHQ?=
 =?us-ascii?Q?YnfPFKMuQXG3wLG+S37lEXqrMerxckPfN?=
X-Microsoft-Antispam-Message-Info: vkdz0yMFY+oxA263Ij3jufaEqy/CtlKhdws+gnOxhyMhpNEdAlnPnEx6CgwLqkk/OE2MlHVxGQ1MuUTDQa0eEQCYxpsip2OPSsEYKgN43Y6s0ZjhMjth4hp7CukOTtuUDtPLcmrOqxE5ucKlq15Ppt2zVIkrKygnr+f1DSAlSKEkIQKBvuCvzTi9ZaNIFMFgaOqBosRBxAtbzbL0iNMAlv3AMVTWs/e6RQumhi7wuGlQdrcarnkL+zahAXUunUbTbRpIXwUTuet0BzFo7Y9G6IMX1Jot9O7HxC1RoqVI3MO9CdDUHo0kB8mufKXJU/t4psjp7JwjCw6kglyqa77v43nksRvZBqhWZpgWUDIlRJSYEggdiogpVzYWA+T9NHc0SLpvCndeyNK77CfUNXAQ/4OTYmC9y6u9zCn99wPU6FQ=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1586;
 6:Br0ClGnMhm3LAn0LPTvCcgQcZbCk3qN2ltjkfPjUX/y159ADmHMGJMzvueqLVQAmpDhtSQZzPfUtB4ZlmT7FRJ0VwC3Cy7hpOJHs5THG8lMErndEkJBDi/xowNPgAPljTiT1jm+J3m/bmnSQ724gRlEez4lfFv3as7pGbjhZVVmPC4pKyngCvntd3gn+w4kkBHyyj1+sWxjxrdeLJYtwJ4tdjjUR+alwq5lZuma5OOz0iNzUN4x4fF3sxbSoE37O0hvJDqyaFXzGsKMOCTOLM/aIVxXw+Y942ZIoVvPI4VZLy8+Cdx/cdNX032mvpFuN6NMwymuh0nJp7g1Hfq22PyljFtvyT9PKMAeZkJBQpyDjbPMwE8+mmTDQHrboZcnmLNOZWZMqlfCsQ5/ViCd+JPCASy7NmV+dRsAugTa4Y8SvgGba8uQAUjhIRGkgBxI5l634pNsaZixvlmkuquQtTdwk9f8SWJ8sBCMwujpARX5t50E4+MHXQzNs/T5mzjVI;
 5:vFJTxqNxcIW2SfUdx+12WLLKUUqQvDQ9+G4Z7P/6ESEPKatnztFJRjZFRqob+jUz1PdGRZrxF4+zSNA5EG/YqDDqPuwBI/rlUOOWTg/zz0bfqMhGGhw/IBTHxojl5A9nBTNkjrv6QUMFv/BB6nnr8X/HhKVreitv4Nw/6pNemq0=;
 24:h7iSbCoATxEFbBiw5ICACZT5iTeovjrRjV8K4VbTcZSfSwX9G5qpF1WxQ2HHgNVZe3jVdLQQwpf68elv++HWJWVSmJsqMEklC3fGR8xqnWI=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1586;
 7:UBEh9H8qx75HzsQTVjHS2DjiopEMGC10P+PsE8bagp+pQYVwNmi3x4ORosTcuXAqxoepX4EsCQrrG5W5dTMkekL3ZxKTHblGXKDCkEoqDJjTzC2TsI42NvMYYvwzfmFButHjBnLEYwXD0lxg2Xq0xwKkXvnFyy3m3ksKsvhsJX/5iOnphEjKClRJGGoQOjwlFYl1fHTQXY/aWzOgJfgWTfSxswB0EeKztUFvm6cIrDtibq4ynN3PnuydLFK02mdh
X-MS-Office365-Filtering-Correlation-Id: f9ac2164-78ca-4ed6-18aa-08d5a36409b6
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:33:59.5122 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f9ac2164-78ca-4ed6-18aa-08d5a36409b6
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0801MB1586
Subject: [Minios-devel] [PATCH v3 18/43] arm64: refine the arch_init_mm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

KDEpIE1vdmUgdGhlIGRlZmluaXRpb25zIHRvIHRoZSBiZWdpbm5pbmcuCigyKSBBbGlnbiB0aGUg
cHJpbnRrcy4KClJldmlld2VkLWJ5OiBTYW11ZWwgVGhpYmF1bHQgPHNhbXVlbC50aGliYXVsdEBl
bnMtbHlvbi5vcmc+ClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFy
bS5jb20+Ci0tLQogYXJjaC9hcm0vbW0uYyB8IDI3ICsrKysrKysrKysrKysrKystLS0tLS0tLS0t
LQogMSBmaWxlIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlm
ZiAtLWdpdCBhL2FyY2gvYXJtL21tLmMgYi9hcmNoL2FybS9tbS5jCmluZGV4IGVmNWYzZjguLmQ5
OGZhZDggMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL21tLmMKKysrIGIvYXJjaC9hcm0vbW0uYwpAQCAt
MjksMTMgKzI5LDE4IEBAIHZvaWQgYXJjaF9pbml0X21tKHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3Bm
bl9wLCB1bnNpZ25lZCBsb25nICptYXhfcGZuX3ApCiAgICAgaW50IHByb3BfbGVuID0gMDsKICAg
ICBjb25zdCB1aW50NjRfdCAqcmVnczsKICAgICB1aW50cHRyX3QgZW5kOwotCi0gICAgcHJpbnRr
KCIgICAgX3RleHQ6ICVwKFZBKVxuIiwgJl90ZXh0KTsKLSAgICBwcmludGsoIiAgICBfZXRleHQ6
ICVwKFZBKVxuIiwgJl9ldGV4dCk7Ci0gICAgcHJpbnRrKCIgICAgX2Vyb2RhdGE6ICVwKFZBKVxu
IiwgJl9lcm9kYXRhKTsKLSAgICBwcmludGsoIiAgICBfZWRhdGE6ICVwKFZBKVxuIiwgJl9lZGF0
YSk7CisgICAgcGFkZHJfdCBtZW1fYmFzZTsKKyAgICB1aW50NjRfdCBtZW1fc2l6ZTsKKyAgICB1
aW50NjRfdCBoZWFwX2xlbjsKKyAgICB1aW50MzJfdCBmZHRfc2l6ZTsKKyAgICB2b2lkICpuZXdf
ZGV2aWNlX3RyZWU7CisKKyAgICBwcmludGsoIiAgICBfdGV4dDogICAgICAgJXAoVkEpXG4iLCAm
X3RleHQpOworICAgIHByaW50aygiICAgIF9ldGV4dDogICAgICAlcChWQSlcbiIsICZfZXRleHQp
OworICAgIHByaW50aygiICAgIF9lcm9kYXRhOiAgICAlcChWQSlcbiIsICZfZXJvZGF0YSk7Cisg
ICAgcHJpbnRrKCIgICAgX2VkYXRhOiAgICAgICVwKFZBKVxuIiwgJl9lZGF0YSk7CiAgICAgcHJp
bnRrKCIgICAgc3RhY2sgc3RhcnQ6ICVwKFZBKVxuIiwgX2Jvb3Rfc3RhY2spOwotICAgIHByaW50
aygiICAgIF9lbmQ6ICVwKFZBKVxuIiwgJl9lbmQpOworICAgIHByaW50aygiICAgIF9lbmQ6ICAg
ICAgICAlcChWQSlcbiIsICZfZW5kKTsKIAogICAgIGlmIChmZHRfbnVtX21lbV9yc3YoZGV2aWNl
X3RyZWUpICE9IDApCiAgICAgICAgIHByaW50aygiV0FSTklORzogcmVzZXJ2ZWQgbWVtb3J5IG5v
dCBzdXBwb3J0ZWQhXG4iKTsKQEAgLTU4LDE0ICs2MywxNCBAQCB2b2lkIGFyY2hfaW5pdF9tbSh1
bnNpZ25lZCBsb25nICpzdGFydF9wZm5fcCwgdW5zaWduZWQgbG9uZyAqbWF4X3Bmbl9wKQogICAg
IH0KIAogICAgIGVuZCA9ICh1aW50cHRyX3QpICZfZW5kOwotICAgIHBhZGRyX3QgbWVtX2Jhc2Ug
PSBmZHQ2NF90b19jcHUocmVnc1swXSk7Ci0gICAgdWludDY0X3QgbWVtX3NpemUgPSBmZHQ2NF90
b19jcHUocmVnc1sxXSk7CisgICAgbWVtX2Jhc2UgPSBmZHQ2NF90b19jcHUocmVnc1swXSk7Cisg
ICAgbWVtX3NpemUgPSBmZHQ2NF90b19jcHUocmVnc1sxXSk7CiAgICAgcHJpbnRrKCJGb3VuZCBt
ZW1vcnkgYXQgMHglbGx4IChsZW4gMHglbGx4KVxuIiwKICAgICAgICAgICAgICh1bnNpZ25lZCBs
b25nIGxvbmcpIG1lbV9iYXNlLCAodW5zaWduZWQgbG9uZyBsb25nKSBtZW1fc2l6ZSk7CiAKICAg
ICBCVUdfT04odG9fdmlydChtZW1fYmFzZSkgPiAodm9pZCAqKSAmX3RleHQpOyAgICAgICAgICAv
KiBPdXIgaW1hZ2UgaXNuJ3QgaW4gb3VyIFJBTSEgKi8KICAgICAqc3RhcnRfcGZuX3AgPSBQRk5f
VVAodG9fcGh5cyhlbmQpKTsKLSAgICB1aW50NjRfdCBoZWFwX2xlbiA9IG1lbV9zaXplIC0gKFBG
Tl9QSFlTKCpzdGFydF9wZm5fcCkgLSBtZW1fYmFzZSk7CisgICAgaGVhcF9sZW4gPSBtZW1fc2l6
ZSAtIChQRk5fUEhZUygqc3RhcnRfcGZuX3ApIC0gbWVtX2Jhc2UpOwogICAgICptYXhfcGZuX3Ag
PSAqc3RhcnRfcGZuX3AgKyBQRk5fRE9XTihoZWFwX2xlbik7CiAKICAgICBwcmludGsoIlVzaW5n
IHBhZ2VzICVsdSB0byAlbHUgYXMgZnJlZSBzcGFjZSBmb3IgaGVhcC5cbiIsICpzdGFydF9wZm5f
cCwgKm1heF9wZm5fcCk7CkBAIC03Myw4ICs3OCw4IEBAIHZvaWQgYXJjaF9pbml0X21tKHVuc2ln
bmVkIGxvbmcgKnN0YXJ0X3Bmbl9wLCB1bnNpZ25lZCBsb25nICptYXhfcGZuX3ApCiAgICAgLyog
VGhlIGRldmljZSB0cmVlIGlzIHByb2JhYmx5IGluIG1lbW9yeSB0aGF0IHdlJ3JlIGFib3V0IHRv
IGhhbmQgb3ZlciB0byB0aGUgcGFnZQogICAgICAqIGFsbG9jYXRvciwgc28gbW92ZSBpdCB0byB0
aGUgZW5kIGFuZCByZXNlcnZlIHRoYXQgc3BhY2UuCiAgICAgICovCi0gICAgdWludDMyX3QgZmR0
X3NpemUgPSBmZHRfdG90YWxzaXplKGRldmljZV90cmVlKTsKLSAgICB2b2lkICpuZXdfZGV2aWNl
X3RyZWUgPSB0b192aXJ0KCgoKm1heF9wZm5fcCA8PCBQQUdFX1NISUZUKSAtIGZkdF9zaXplKSAm
IFBBR0VfTUFTSyk7CisgICAgZmR0X3NpemUgPSBmZHRfdG90YWxzaXplKGRldmljZV90cmVlKTsK
KyAgICBuZXdfZGV2aWNlX3RyZWUgPSB0b192aXJ0KCgoKm1heF9wZm5fcCA8PCBQQUdFX1NISUZU
KSAtIGZkdF9zaXplKSAmIFBBR0VfTUFTSyk7CiAgICAgaWYgKG5ld19kZXZpY2VfdHJlZSAhPSBk
ZXZpY2VfdHJlZSkgewogICAgICAgICBtZW1tb3ZlKG5ld19kZXZpY2VfdHJlZSwgZGV2aWNlX3Ry
ZWUsIGZkdF9zaXplKTsKICAgICB9Ci0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9z
LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcv
bWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:12 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xiO-0003By-QZ; Mon, 16 Apr 2018 06:34:12 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xiN-0003BY-1l
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:11 +0000
X-Inumbo-ID: 09ae4b0f-4140-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::624])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 09ae4b0f-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:33:13 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=MUInij9QAan5DIx8zOFkq6ue7pdnCThrg7NHuT1BePk=;
 b=aoHHvaiWtBnQLM6s1RgB5yYFNAYNLLgq7eiQAUrECMZIg991KUBISqyAujVUTbDCdM5hF+f4oMYowApwWL7G40BZCLBXbR65DcSmS4jJBLQJqizm6mRtPkYEKwEIXvuaWzhVyMH6IZUCJyPd4Mb94B1w7webH2fZvgvNEErasIs=
Received: from DB6PR0801CA0054.eurprd08.prod.outlook.com (2603:10a6:4:2b::22)
 by DB6PR0802MB2423.eurprd08.prod.outlook.com (2603:10a6:4:a0::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:34:02 +0000
Received: from VE1EUR03FT011.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::207) by DB6PR0801CA0054.outlook.office365.com
 (2603:10a6:4:2b::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:02 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT011.mail.protection.outlook.com (10.152.18.134) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:02 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:55 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:31:59 +0000
Message-ID: <1523860343-16382-20-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39850400004)(39380400002)(396003)(346002)(376002)(2980300002)(438002)(189003)(199004)(426003)(446003)(2616005)(11346002)(51416003)(7696005)(76176011)(47776003)(336012)(54906003)(86362001)(478600001)(36756003)(16586007)(6916009)(476003)(26005)(77096007)(186003)(486006)(305945005)(356003)(316002)(126002)(39060400002)(4326008)(72206003)(8676002)(246002)(8936002)(106002)(26826003)(104016004)(48376002)(50466002)(2906002)(50226002)(5660300001)(2351001)(8666007)(106466001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2423; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT011;
 1:Pd3zwnjDyT76U6iMpqqgtI/AigI919E0hX5tPv1LEQPCkNm10VuUuiIVbknNadO6nW5PRjWyXo56ohaX8JMErDDgzoDrbE9qNL4gSi/6IYguqsPUehGz7Ne+6dZpmKA+
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2423; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2423;
 3:6wDXAjJCvEkUDxyeugd+QkqKguSPwZh5EffjkG34S4QOhcrx/iCZ5hfMXiQMtbjUuBkWEONM5VIVp8vfhaCUOC2NzPS5LRnLd856IC/iCJ4lQHaLuqWGhwWJUUD2ppcN+yC/h1B28N8A8Tu9rbX3b4lt097Go9Q8ua6M8wDdqy9DKvsxyCDC9mWD/412wev+Vs2b9Yvt7gW34sSz3P8MZRWWgrgU23KV8bmOX2MLz/P244pBCRoceQ1D5P8x9vFmLue213KoN5dcPShBrCCpMd76NgXaIyZOesVgOMhgDxHgzErY4EJUhfOTAGPLluLiMMepMuGj/PaVRrcQZqtnE8xA9dUWQVvyb+EIxy8fmKk=;
 25:g6lLO7KaJ2tHPTFMS2BmGRJgOdy4nXSo9dzGFOouFEsJmMBJQAdY0/6pYxEt/s3KTgmtEzpRkNYLVt4WZh2809dRsZoifOrbnCBVaKg8tDvA0M4vLBAESkD6XB7cSi9zJyK21XpU8itvTVLRGDbPETvBSw7mIiNn8gg7TAI2fhP+ZluAD6RqdbDGlalVcBXyhsScmpHko/vMH1QnK2d3vGNn8BIml91d2euSPS9SBXludyr4WZN+QNzOQVkUvYcZYK1XwvtdshVTkP27o9227wFjydoY6y0qMlwTSAh87gM521L9/5/iMPP/+4xPIrS+BKWTK3fKYZjPXJPbzscQEw==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2423:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2423;
 31:6kOr3XxlhbRfq5ooYfTlJI7E0L7nS5HkC3M9J2OFNQeM9rF57j/X0jtaod1C3KUVLk/JAJVxEhoftOnkO3qkQbpWK3opwznvDo523+A2k7Y9aMf5fNWoCUQPbUslUNXSstXb/WzXUp0SlkrkAG/qX+1pPs7nK7hSEqiaaqQ5kLm05CrO+Y3qp720uoeo/LVO5MtJAUQN+wTJaCXrM23N89aDf+VcKhJl176EXOvCedQ=;
 20:+/M5LL1w4lXW0HMGgWQYChS0Qtxk0bvV+PVWaq6Cq++yzxLZ1+Zv8niEuMeky21lhjOvmD8bw82PLOF2o7spS1AcSDmLgJ0t+d+CoOxWbhpiWZYGiFE16Fp5gvd4C9Roc8FVbLyIFN908F34e31ymD+9GDZsJ6e+vreC6JwPICgCTt+VqZBzZCfGN9ihEv+q/ymeLK8Ue3UgM6cnd6vb+zWyD33kKvRZ9yylXTjtZyc+h1f844L9kEjPc7bvSsuz;
 4:m0dMZQsFfNKHNuXT5ACglY1n5Gi5xRTxc1wdU9nc/ScgvaDuRFPcNGxanYDCvqcg8ubqTbu2EHoJFT8j4C7Wl24x4WMax3pmzAPhL+w60ZIFnD1tCbG3Oto7gTfifGW1cDK4RmLcG+0R6ZqOqxXgvxusLJvTycPSKvzitcQLxURI5Hqc7JWROxOmBbC6JrSmr5Chb5H2CWqHZiaAtkJRQSMcU541fK9kERMBkCZqil9n0uYFl+pg7VklA4BOsqcpCQWA0JkLIjoy4Fgo6t19xgAK/ABHCe+XEBMGpSv6Rtt7KRYu36vh3mV5Man+3cdJ
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB242374A2CBC0559DC203034A84B00@DB6PR0802MB2423.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2423; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2423; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0802MB2423;
 23:Xo91cX9i+Tb4lkddTPF840MPc+QsFIz8i97c2nb?=
 =?us-ascii?Q?tANoNVRpCPz09a5K/ZO0izjcTZJjys/w37MCF5i1do+aLyuA1aIlg6htsT36?=
 =?us-ascii?Q?FluIvZlMJNKddfp/0uCZZzsMnzzhFdVPNdlO/tWwZY0JnZoGPw0rC/OzZymQ?=
 =?us-ascii?Q?1sZPaZorbH3psh6i97p2Hb0Ixq6dLNdO/3MInd00JUsmw2xuAWxnTm3u/Pji?=
 =?us-ascii?Q?56VY8APtfGmEQCXzuGDEhLD/FJuco1R2qyy2AJ/PShg4dTBQsAUnt9bgWD+X?=
 =?us-ascii?Q?aVlt18Ey6QekjFRiBtCQnFjhdxfa/OW1RcWOPqpgtvUZodDejl3Uk6GZH1tG?=
 =?us-ascii?Q?SmdzfZK3+7sd+0lznBVMlSOslTY2MSNWXcFUh+RdXxA7SomXRDPa3eA9bIF2?=
 =?us-ascii?Q?Ja23FItzwhSZ6HvhDhNFkJiBmf41q/R2OAtUgN00jr/hpr6vpzK0acdIgKDz?=
 =?us-ascii?Q?MeEhgaL6HC33+2IvhU9h0qfF3NACtB4/ccFHM8wPIJ1dCsSTPe2p1UxL+GrS?=
 =?us-ascii?Q?u9WvKpcXUq5cQYeM0ISuwNKHWQG0c97QAXCYT7h96urGo8YCV79MW+6IG6t5?=
 =?us-ascii?Q?qjiTKCDpcEof66epuMbGxwSLz7g5sX6N4a4+qGPAX5+L4pIxqmmxDSku0xQN?=
 =?us-ascii?Q?sFLB9uxwjR8jsuQJCvfErwCNS+jri1ZI9qkZlFgtvSPDqv8SzLA5PabXrynZ?=
 =?us-ascii?Q?CNNAjFPOZuEEeQxNhpkaXgtXg1wXfCPqlalkfUXpqeLRmGCr2EatH+gcqOlC?=
 =?us-ascii?Q?e65I4tKxIPpD8XsLfv2smV9xMIumJEfwhAwqE20EdWcgWHwwqF1LFrqB2ZHV?=
 =?us-ascii?Q?VHaHxbVEpyHWS30W+lT3eOUffcOUmxx2kNTu9ylmNk2EZH1i6C3Dd6XArmuB?=
 =?us-ascii?Q?i9I6+FoMdFR/ZCI68mAAGa17MY4XSJSt4+XkNfy9YA1qi5TntPQCCXt3VWh3?=
 =?us-ascii?Q?i91cK+QUi7L/TnOQHsAwubLIQO1e/PK87HToWgf/uUh5zjOyNrMjrAvfbZNC?=
 =?us-ascii?Q?dpiFAxkkHfcw8+6tv27V/l7SP3WgWzrCtiD0yaIb0J8Vn8BBaIE9bOSEE2Jj?=
 =?us-ascii?Q?90OP5y5BcuHfAuiUYG69x5a9FJWzLNovpcRW3IIfAsLCcns7oZXoEeG3moR2?=
 =?us-ascii?Q?hztH/T1F2imU=3D?=
X-Microsoft-Antispam-Message-Info: Zm3lrVQqr58ajHaibzkdlZ2TqbsQYorVh+d4majD2RGSfd2Pl4tz6B12yyMzKPWM3Z6TsimBlWzd4Tkb3HhcgMKpkUDL1Fv1Qe+RfhJIDXT9z18Dm2zeF2swbtfzCOK/VFLcIHPQ3bwjedmUgz7QTmYoT1lfHz/ANqTeX3aCsw8nyASv26RFJ005cegz+ie51N9gg/2sBNfTtPibvAtom2c9SfWYU1omvkuSmMu7yQCdPJX+oQ8Kh9SUzF4qQvRr/DmF3bBKGZCWrR2TQDw+b29e9Uh9ZvgGDmprd0x41c8Zzb7CfGkaddXohQqzmdg66Aefrqzk9z4pvpuWIGdrEtf8E4R2cYpDMM0zTpjIG5tw1NTGQC7XNmQagHtu7EMkAHhphDu7phbi3YLEZMW2mHGjn6jI56PYdfB3Wwx/JHo=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2423;
 6:F/jMAzkei/diLwY7fjB5x3CxzdhKSNqUDSNQN3K4xc3ngvKnV2TQtkd3VkKrwezN8HBxqh9Eex1MU+Qw05LGJSGHBC+ajRZCEGvkAwGOR7jUGZ5wXaimNqD1ayp1Q3fGSawUcXFSX3/BpLlNy6JBRMLsHCZJXwNb2uus5HnZU9UwE6NXcrVgzaS5Dq2OzhyDXHXrXdvUIEu66mIZfQrKhJw82mvKijd3mYl+h9kKxD5N4X9IJvMkMldthqrSz/cb0ziK7KEd5+SvhVKwaVCYheOJLwkX7sOJEwqQ6Q3gKuBOZ/tKCSFVNrMgQIvbHYhSSYOolmfNpX/Ivvbt+JSfzwvYgQMjWu3xQ7GjKAMBKyG5yqKuzTvJVZSwoTw9N5gCd1oUaYt/1caIHPy8kASaNzsBcSWBW9+AxcbSCZb68QfjMqEdQwPQOrWP8loJBCHZNn8Cpb1nkhBV+mZ/B5QfsMAPANaHYiAX2J9LNmoxUmq3a7GG2RN23JpmuvXOJpE8;
 5:tsYTUMzLYH22BO/jmKCqXjKC+IFXPhsZlH4Tr6w0FQ6DZAy4ZetUBDSSTrZ2wazHS7u/UYKlaDLVNd5pco074XV0b75f4fk8rh4zZbaFVEgDiysOjUweWjYBM2rR7yT0K58Sh27qWWzgm4ay3Q5fcYQbnD9KlOrL0NRgfw2tl6A=;
 24:ndqTtxOIWlVKWLFxGIyxbGCDXPCo+NErGnkOwPFKsIaNR/FFpHP1X4EE/AMKefzI5cgTJZGjP5znTWB2QHFkIAbiRZ9LxqwaKX/bGV7w0Q0=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2423;
 7:bgz2GQ/N6SQUOO1AdTNJnWqe6fluzOc2Jwj8fD6MiIQM0vdNjW68wyfYYPtev8ZUpo+AcwYWvHYwMYnKFLsdyQ+O6oYlMK295PaC1EuJKm/NZTj5vnAEu3O6eCAQ1a9lD3Cz1eSr75i9tn3a16k/ShqV2OSqp2r+p5oKh9WhLruFNk4/8F1H/9phmjmdrIpAfL/fo9dt4Z9zD535LIZdwKaQGv+pgZ8jF7IkCIveX8/aSPBmdlOUUs42PvWdPwfQ
X-MS-Office365-Filtering-Correlation-Id: a66f6cca-e4e1-4282-f7ac-08d5a3640b35
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:02.0123 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a66f6cca-e4e1-4282-f7ac-08d5a3640b35
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2423
Subject: [Minios-devel] [PATCH v3 19/43] arm64: add shared_info support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIHRoZSBzaGFyZWRfaW5mbyBwYWdlLgoKU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxz
aGlqaWUuaHVhbmdAYXJtLmNvbT4KLS0tCiBhcmNoL2FybS9hcm02NC9hcm02NC5TIHwgMyArKysK
IDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9hcmNoL2FybS9h
cm02NC9hcm02NC5TIGIvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwppbmRleCA5ZWI3ZWEwLi5mYTM0
MDZmIDEwMDY0NAotLS0gYS9hcmNoL2FybS9hcm02NC9hcm02NC5TCisrKyBiL2FyY2gvYXJtL2Fy
bTY0L2FybTY0LlMKQEAgLTI1LDYgKzI1LDcgQEAKICAgICAuZ2xvYmwgYm9vdF9sMl9wZ3RhYmxl
CiAgICAgLmdsb2JsIGlkbWFwX2wwX3BndGFibGUKICAgICAuZ2xvYmwgaWRtYXBfbDFfcGd0YWJs
ZQorICAgIC5nbG9ibCBzaGFyZWRfaW5mbwogCiAgICAgLmFsaWduIDEyCiBib290X2wwX3BndGFi
bGU6CkBAIC0zNyw2ICszOCw4IEBAIGlkbWFwX2wwX3BndGFibGU6CiAgICAgLmZpbGwgIFBBR0Vf
U0laRSwxLDAKIGlkbWFwX2wxX3BndGFibGU6CiAgICAgLmZpbGwgIFBBR0VfU0laRSwxLDAKK3No
YXJlZF9pbmZvOgorICAgIC5maWxsICBQQUdFX1NJWkUsMSwwCiAKICAgICAuYWxpZ24gMTIKIF9i
b290X3N0YWNrOgotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0
cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlz
dGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:16 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xiS-0003Cz-T1; Mon, 16 Apr 2018 06:34:16 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xiR-0003Cj-MP
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:15 +0000
X-Inumbo-ID: 0cabf951-4140-11e8-9728-bc764e045a96
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe09::603])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 0cabf951-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:33:18 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=GEhUzNfSdTSWaWNzzVe186YUdKmKCmRipJYPscFMOtM=;
 b=Ilx4+81c/i4IKWzw2Z/GhkShaRDjSUqUfQq0ooHadvv3xhaeMVQ4/aAGaQJXXS8DzuUsKcaDUtBm/y+BIiQqPG2Nr9c+xpb4WOFpuQlW5eOb8LFDQwpU5pPSOsYjWxXsU1eF2oKB6fjV4abdjwkdNFqtY8AozBOtiHaoRHWcC3I=
Received: from DB6PR0801CA0066.eurprd08.prod.outlook.com (2603:10a6:4:2b::34)
 by VI1PR0802MB2429.eurprd08.prod.outlook.com (2603:10a6:800:bb::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.10; Mon, 16
 Apr 2018 06:34:07 +0000
Received: from VE1EUR03FT011.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::205) by DB6PR0801CA0066.outlook.office365.com
 (2603:10a6:4:2b::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:06 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT011.mail.protection.outlook.com (10.152.18.134) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:06 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:33:59 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:00 +0000
Message-ID: <1523860343-16382-21-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(39850400004)(346002)(39380400002)(396003)(2980300002)(438002)(189003)(199004)(106002)(305945005)(5660300001)(246002)(72206003)(86362001)(426003)(47776003)(39060400002)(26826003)(54906003)(16586007)(336012)(36756003)(26005)(126002)(76176011)(77096007)(186003)(478600001)(356003)(104016004)(7696005)(51416003)(2616005)(8936002)(316002)(6916009)(476003)(486006)(446003)(59450400001)(11346002)(50226002)(4326008)(50466002)(48376002)(8666007)(8676002)(6666003)(106466001)(2351001)(2906002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2429; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT011;
 1:LsElNWq/3jYsydt4JXntLg6DlouxgJBQzvGPHDQROpMJlClyjXjJXL9WcUN1wH5jjuWIosizLgjlERUQuR0jUbL9g77PhoefrLD8d3MYG8IuYQ++vjQKdyB7p5r/pag4
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2429; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 3:tXeXvaxGdpjK6YOzqZs1rQjY19qIKSZF6AVOySBxQx2QbfZw4C5C6zIUg6k2MLGVBNyoTcOANVUPaxYiGuSSjT4tZQ17jmGLNNaCkFRwO3Id8cXhdpmGfbPDyC41CGrhWN5Ikhvq4cIGBsMFjD0cONMaM//nOxfAskHkHiKnAHIMYc8QB4rdeVboBqSnQ8ddY3PtSEazlZzBPllYLeoblz6ZztwiujRq9cmdIEK1ZfEvmyidnEIiF2RpGJt7+OUSQa2xTqLCzL32Xi1tu0BYWjqqC4Vd5/VRtB1MErEc/QIdThAGK+Fi0esKIf3wvLCYLOYxvmCO4v2FE7R5s7xkPv+zhgbWyCtRh0xVad7JJWM=;
 25:3JSbNuY7shAZ06LHUsYHpbpaoi+0Zt6QfiNbJaV3XQWj3QftGOKqbDuvYKcsTpJOXkKBGhPx/UUyXxgfVgzVjSLETAAZmIwnjcXBkJJRBEzU7yxGAkAfdE+JoucimqhXOiHT+1LT00Kt6A0YmTBCeNEPPEqwjZWlk9QowcQRjkwArJmk/jqQ6/vX9OQ7temZoAvwDcHOiKlldP6OvSvxYU7lEf0xEf3SCQ8cYlFEnpr2u2f+El39JxCXGDH+Ic0df+ZfVhJnzJ6Qy6KuybH2Zonui/AUT1rd6ez4Auzgz6GsGvrYcQ+OoPm6967a3ZWbaN6G8u8LiP8+MGIfn1W8JA==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2429:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 31:Ti2mDGA0kWfURjHHQiuyeED6PP/e2XFKut+xv7iFkoKt71qB2Q9951s/9/6rd9k4mhYmVvJPVA5sAIaumHllCHR7ZbJCvMIT1UBuXjWvjp7PEugtejBrkZAnEF8t6lryahHZ3vdi11Q2uYJMdm2wd+RfwiQjzNFSB9Y7aA5SYv8ekIIj1vaXcyO6QMFFiepUwT/xsbNqatNho/ZSJEiHPBGK3uozcKzAy+zoasbbtEU=;
 20:ggba46MxNMRnXHSByeUwHdEspuyImAwgXoPAYV+DxsG33Qwq0xgk/nTNQqbIDCwdlmvxCpa44RalRpucWCRIkF3vns2AS8t5jnN62pOx9gDg554XOo7gYS0cpazWb5DrxdAsf0LzM8e8o4VN2o7dVpjs87FosySM/NbKQ0UCccP7hSehg2/kQNSlN5cF2Go/jhfhDNrqUWoqMIZBmP+M4czg81SvQfgwEdWOInmZMuQ/i003qqT7pqGpViBj61ec;
 4:q5aWeqvtIernLQDUfjy5RUTGa2y5UJvVuAh2aqzMkrV0sBcyXge+enpjdYvriwAxCHHnY77QJl17448K0lXCIBnstJIHQ+MRkGYqUYAC87rRBUDQyfUBDYJ1yUik+RpINYDw9x56f/MknXzi8CzbbEUiSPW1QRUBvpnbu9Y3ofdg/VooZedVQn7Hs7iZJGBTsSLTiWlSjLD3aLQRod8LwtgI4dwcnaVD7eylxWtPDK0CDl3Yew60E2hc/Xg9JP2pFDVQizglVxixkYZrHQnyuyDcVQHUJxP1C6GF+uiO5Ih6T47PTjtkmMb2yxuJeDQr
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB2429BACCD026DFDA18C4A0B584B00@VI1PR0802MB2429.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(3231232)(944501327)(52105095)(93006095)(93004095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2429; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2429;
 23:sWRZbkysM9MIKLrD46sPPtSDiIl12n5qOnQtMLj?=
 =?us-ascii?Q?jeAGuc3teg0hYmO/PGlCSgcNS30xOki52TkkctpT1OVrtJ1x+Aoxvsce8EHk?=
 =?us-ascii?Q?UnY8x+h0ZQC2vA1vvdaqj4uAd9AM/TfQwLaXt8quAUpwcFgxpFUJlkk8C4oy?=
 =?us-ascii?Q?90Ty96zc/lInpC7lCCOIMgnYf3ft2JqBjayFwPxsihd+jR+mR72HPK+M/RAU?=
 =?us-ascii?Q?g8kI7dLLbGKHbcpBb8Awb9uIr4TgK0C1Tv9gyQ799JguEkrQsGUulQxv+Bq/?=
 =?us-ascii?Q?fFR8DnGQibjgVs9p8CqiJ1HMtcCNLY6dt5yp1nhEpJ7R9v+E8HSMvztOXhMj?=
 =?us-ascii?Q?+zNTHJJU9CN3ABe/OeBE9gb9VLCDUzh2qVVgx5gffNiUP6jpys5KK+f2mk3h?=
 =?us-ascii?Q?/ctEDN5I1/i/CnmcgY5ZJPOfWSIaVKixA9FbWxc1EB9h9nq8ZTD9/GEKzzUf?=
 =?us-ascii?Q?mcwN55546VwZiB/+lZfiAU5/SfGeeuPS4jKzMn8jdOFLOc5sD2L2q3cDMGn3?=
 =?us-ascii?Q?t6dcWNLZiHbIEUwCvCAkejd1824N7+7oyE+JFnoZ/6oAT+b2yXtRXQ2m0WbI?=
 =?us-ascii?Q?4JMDLDmzsB9zGRoZXxu8P2hbWKRh9KMV3z6EajnYmW0SZ534xgdKb2iy9726?=
 =?us-ascii?Q?idTb29fG+lY2TLbg4cPvNjVJVwQw/Ecay2aF45NGYq2+Voy9ho4Y8XUztGtK?=
 =?us-ascii?Q?M/v6BZcCn8pfsuZb/iLpEamkW/l+yfNL4yguUiyV5ZACN1wF7JpVtL6Suuei?=
 =?us-ascii?Q?fplXSx3/3XjCyjT0eibzUvwCJoyABX6B8wSVNiHaL0r5goiRQ8r4GE7k3spP?=
 =?us-ascii?Q?dVrlfDHXLEuGDZvazbtQAQ4Yo6d1dVlNa2DPoPD4GcsaPxZ0k8jU/fxvFpie?=
 =?us-ascii?Q?tjXFOfpS7BDKVJw/HRqBXOL7am9i7qiVMVSlT47Y3hF/+WJ5mJqLAUC5fvIV?=
 =?us-ascii?Q?bNrKQ2iYm5sX1e7GISzWng5dQCI5xlAEGxgBDpjEJKRfb4KDDsYW4Yz50A+g?=
 =?us-ascii?Q?4RRa6k4t9V30/9NFA+GauZ2StWjDdmHEfFtrtqbcB+dltL0HYD7wulAGjiQR?=
 =?us-ascii?Q?BV6E+rGwO5dkiCf2n1V3K8YIIXv1VAt2pI/k5pbrJFM96PGtTVdCtcW0/j94?=
 =?us-ascii?Q?nc1GhInj8wVWozN8KI/e449Uds0Env3K5MVeyH5UpBD+DZmcMOnvdGg=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: +Z/avdpnWsm4C1qdtyzFP4w8N03Q6dThh3julUHUZKyiiKuSrtiQ6uItDq64FUXJjhba53VbDSi7B2pZNBYUhJvPerjPLAi8aD+Nfc7F3BGF+Ghu6VYtitkRR6cYErgfLMKWJ5UpSrlgVfmaL4eoSaaOVdECTXXJwo1Q3DIxOFvUJ5jfpZ2XU/E+yNJdjT3oQ2DsB9keyBA+zsgtFuFD7oUrCu0gQqhH0pnOFYl9i7T+HxdnWkY+iTtj9KBG/+LocPTv6P3IDJPb5MfNa/JL3cHsVJByxwIuvFPBlIzTifvvZAW1J0ByvHo0CsrA6Ol0z/TqbjLoeYimAJqqUQu80uGBkPkAD6bS2Vql8y9KTI9x/ZLlPfQTD5mDgB8hkh69uZFktt+/sRY8Vag5LKCag+Nwbdy3QSCe7ieDrptaEag=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 6:seb3MQtx6xZnapIivWZ5q7jitk4Eu5RI8q0jBVPk0mEQXmGmdzBCS2ceXBI3Y/lbcRW6N2CAUEGwwl8gW4XqXQGqwVVDYxTlXHCQpWM70rHsIgkvvBjHVWHDgarsayLOjMPzmkkfyeAmkwsoUGxn+OilFFezwgm2OjVvJD165+5pQeGKMlrUsFLAPpkU2yY7BTPsJHnlG21qkAJ9ooBpefZQVDny4aNbLiN+BtKaxuereoKpeZIODyHsMYY9MIBx58kEvLPk4JHYkhmNo8V2oAWFswl2FbvVFjaVd0gLxaTMaA0p5IzvGxpWitw72dPd3FztyOXsfqihOIxAMQzMbEg0VG4Pb1+r8lQc9c6Yk1PsCXc8QxyMp7xVCfP3lXZ+6ngZ/WV+jWTFS+JxrypHs2XL9c6b/CFrmKjUsLqM4vKrm6teE/lIcl6kA9Xsm8n9FTmmWY4nHekYumie90dUVMmh237MjKh3JIFLi/cMyvvkL1ieb+DBEdxh4gbBNJTG;
 5:zZk1wNHR6W6RIyqKzfCzRiI0ak3mRfzncKuyaICuAhhlQyqGRB3+rHZ7K2k9NbVq5ehJLnB1/6dq3QVyaX1m2eCpGC25jJHhB8DO6TUg3ekCwWZEj3IcNBvQZ4KhgGb65a/eN8KJpP0zZX+x9uDe0o4iPfElQRDasshLyoH+nSQ=;
 24:llZMwmQkIS2u3sFnytBXh2a4gcNSfc4Lda3/XUtVATnWPLXazawsm5cSpqEw1dOG94k38daDgvyFhoFjuAe/hP3sTeFluCJUXMp/rlltVbg=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 7:OnZGiH6Cxyp+N+Psf4gDP8z2cUbVbDwlCLBN3V/KGRgjs8luQdMrxmT+Lu038gRcdnyuDn0rge3wobip6ji4bt5Ngfqc5R2ZaBhndHaZtlZrzm3PdnA9uttIMKCJVVea1s8/n0zQVfPvex5IvlUmVOipujZNnIUAyLw7EV5JFbrIxvG4zJGNWsnW29ZQTEbSVcpoSNJQE6WvU6jALFlsEy8tSO9sTIOw+LYfb1PRJKGu49pdvsZp6kYypomMNaON
X-MS-Office365-Filtering-Correlation-Id: 0196d1c3-a46b-41fd-a10b-08d5a3640dca
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:06.3577 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0196d1c3-a46b-41fd-a10b-08d5a3640dca
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2429
Subject: [Minios-devel] [PATCH v3 20/43] mini-os: implement the
 memmove/memchr
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBpcyBzcGxpdCBmcm9tIHRoZSBDaGVuIEJhb3ppJ3Mgb2xkIHBhdGNoOgoKIlRo
aXMgYWN0aXZhdGVzIHRoZSBBUk0gY29kZSBhZGRlZCBpbiB0aGUgcHJldmlvdXMgcGF0Y2hlcy4g
T24KIEFSTSwgTWluaS1PUyB3aWxsIGJvb3QgYW5kIGRpc3BsYXkgc29tZSBvdXRwdXQgb24gdGhl
IGNvbnNvbGUuIFRlc3RlZCB3aXRoOiIKCk5vdGU6IFRoZSBjb2RlIGlzIGNvcGllZCBmcm9tIEZy
ZWVCU0QgY29kZToKICAgICAgZnJlZWJzZC9jb250cmliL2xkbnMvY29tcGF0L21lbW1vdmUuYwoK
U2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KLS0tCiBN
YWtlZmlsZSAgICAgIHwgIDEgKwogbGliL21lbW1vdmUuYyB8IDc0ICsrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBsaWIvc3RyaW5nLmMg
IHwgMTIgKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA4NyBpbnNlcnRpb25zKCspCiBjcmVh
dGUgbW9kZSAxMDA2NDQgbGliL21lbW1vdmUuYwoKZGlmZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFr
ZWZpbGUKaW5kZXggNmEwNWRlNi4uM2FkMjUyMiAxMDA2NDQKLS0tIGEvTWFrZWZpbGUKKysrIGIv
TWFrZWZpbGUKQEAgLTYyLDYgKzYyLDcgQEAgc3JjLXkgKz0gbGliL21hdGguYwogc3JjLXkgKz0g
bGliL3ByaW50Zi5jCiBzcmMteSArPSBsaWIvc3RhY2tfY2hrX2ZhaWwuYwogc3JjLXkgKz0gbGli
L3N0cmluZy5jCitzcmMteSArPSBsaWIvbWVtbW92ZS5jCiBzcmMteSArPSBsaWIvc3lzLmMKIHNy
Yy15ICs9IGxpYi94bWFsbG9jLmMKIHNyYy0kKENPTkZJR19YRU5CVVMpICs9IGxpYi94cy5jCmRp
ZmYgLS1naXQgYS9saWIvbWVtbW92ZS5jIGIvbGliL21lbW1vdmUuYwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5kNWFjMDM2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliL21lbW1v
dmUuYwpAQCAtMCwwICsxLDc0IEBACisvKgorICogICAgIG1lbW1vdmUuYzogbWVtbW92ZSBjb21w
YXQgaW1wbGVtZW50YXRpb24uCisgKgorICogICAgIENvcHlyaWdodCAoYykgMjAwMS0yMDA4LCBO
TG5ldCBMYWJzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFNlZSBDT1BZSU5HIGZvciB0
aGUgbGljZW5zZS4KKyovCisKKy8qCitDb3B5cmlnaHQgKGMpIDIwMDUsMjAwNiwgTkxuZXRMYWJz
CitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0Ogor
CisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgICB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAgICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIE5MbmV0TGFi
cyBub3IgdGhlIG5hbWVzIG9mIGl0cworICAgICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcworICAgICAgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklC
VVRPUlMgIkFTIElTIgorQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKK0FSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRS
SUJVVE9SUyBCRQorTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKK1NVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KK0NPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCitBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8b3MuaD4KKyNpbmNsdWRlIDxtaW5p
LW9zL2xpYi5oPgorCisjaWZuZGVmIEhBVkVfTElCQworCit2b2lkICptZW1tb3ZlKHZvaWQgKmRl
c3QsIGNvbnN0IHZvaWQgKnNyYywgc2l6ZV90IG4pCit7CisgICAgICAgdWludDhfdCogZnJvbSA9
ICh1aW50OF90Kikgc3JjOworICAgICAgIHVpbnQ4X3QqIHRvID0gKHVpbnQ4X3QqKSBkZXN0Owor
CisgICAgICAgaWYgKGZyb20gPT0gdG8gfHwgbiA9PSAwKQorICAgICAgICAgICAgICAgcmV0dXJu
IGRlc3Q7CisgICAgICAgaWYgKHRvID4gZnJvbSAmJiB0by1mcm9tIDwgKGludCluKSB7CisgICAg
ICAgICAgICAgICAvKiB0byBvdmVybGFwcyB3aXRoIGZyb20gKi8KKyAgICAgICAgICAgICAgIC8q
ICA8ZnJvbS4uLi4uLj4gICAgICAgICAqLworICAgICAgICAgICAgICAgLyogICAgICAgICA8dG8u
Li4uLi4uLj4gICovCisgICAgICAgICAgICAgICAvKiBjb3B5IGluIHJldmVyc2UsIHRvIGF2b2lk
IG92ZXJ3cml0aW5nIGZyb20gKi8KKyAgICAgICAgICAgICAgIGludCBpOworICAgICAgICAgICAg
ICAgZm9yKGk9bi0xOyBpPj0wOyBpLS0pCisgICAgICAgICAgICAgICAgICAgICAgIHRvW2ldID0g
ZnJvbVtpXTsKKyAgICAgICAgICAgICAgIHJldHVybiBkZXN0OworICAgICAgIH0KKyAgICAgICBp
ZiAoZnJvbSA+IHRvICAmJiBmcm9tLXRvIDwgKGludCluKSB7CisgICAgICAgICAgICAgICAvKiB0
byBvdmVybGFwcyB3aXRoIGZyb20gKi8KKyAgICAgICAgICAgICAgIC8qICAgICAgICA8ZnJvbS4u
Li4uLj4gICAqLworICAgICAgICAgICAgICAgLyogIDx0by4uLi4uLi4uPiAgICAgICAgICovCisg
ICAgICAgICAgICAgICAvKiBjb3B5IGZvcndhcmRzLCB0byBhdm9pZCBvdmVyd3JpdGluZyBmcm9t
ICovCisgICAgICAgICAgICAgICBzaXplX3QgaTsKKyAgICAgICAgICAgICAgIGZvcihpPTA7IGk8
bjsgaSsrKQorICAgICAgICAgICAgICAgICAgICAgICB0b1tpXSA9IGZyb21baV07CisgICAgICAg
ICAgICAgICByZXR1cm4gZGVzdDsKKyAgICAgICB9CisgICAgICAgbWVtY3B5KGRlc3QsIHNyYywg
bik7CisgICAgICAgcmV0dXJuIGRlc3Q7Cit9CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliL3N0
cmluZy5jIGIvbGliL3N0cmluZy5jCmluZGV4IDhiMjQxNDYuLmM5NmNhNDEgMTAwNjQ0Ci0tLSBh
L2xpYi9zdHJpbmcuYworKysgYi9saWIvc3RyaW5nLmMKQEAgLTIyNSw0ICsyMjUsMTYgQEAgaW50
IGZmcyhpbnQgaSkKICAgIHJldHVybiAwOwogfQogCit2b2lkICptZW1jaHIoY29uc3Qgdm9pZCAq
cywgaW50IGMsIHNpemVfdCBuKQoreworICAgIGlmIChuICE9IDApIHsKKyAgICAgICAgY29uc3Qg
dW5zaWduZWQgY2hhciAqcCA9IHM7CisKKyAgICAgICAgZG8geworICAgICAgICAgICAgaWYgKCpw
KysgPT0gKHVuc2lnbmVkIGNoYXIpYykKKyAgICAgICAgICAgICAgICByZXR1cm4gKCh2b2lkICop
KHVpbnRwdHJfdCkocCAtIDEpKTsKKyAgICAgICAgfSB3aGlsZSAoLS1uICE9IDApOworICAgIH0K
KyAgICByZXR1cm4gKE5VTEwpOworfQogI2VuZGlmCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxp
c3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJv
amVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:29 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xie-0003EL-V1; Mon, 16 Apr 2018 06:34:28 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xid-0003EG-Uk
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:27 +0000
X-Inumbo-ID: 13c7f975-4140-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::60d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 13c7f975-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:33:30 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=UimWa4Ov2qftbiM8VfvSvwZrxm6L0KAsOcRSwiXm7VU=;
 b=a6dgWXsg4lG3UIRQw//LcOQ63MVtn+UoJ/KR2d8MwePLE26U58bTwY6CeYjKLdIJzI7Wve0KAskWvGUr9A8Fp/n5H/JXD6MZ1ntHhpiNsbc+3e0r3YdRoSp8qHvw2t8m0gqEKCh6iUOA+hQtwsVxgyTn6o2J1TzNNfQql1xT51Y=
Received: from AM4PR08CA0014.eurprd08.prod.outlook.com (2603:10a6:200:1a::24)
 by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 06:34:20 +0000
Received: from VE1EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::200) by AM4PR08CA0014.outlook.office365.com
 (2603:10a6:200:1a::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:20 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT048.mail.protection.outlook.com (10.152.19.8) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:20 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:03 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:01 +0000
Message-ID: <1523860343-16382-22-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(979002)(376002)(39850400004)(396003)(346002)(39380400002)(2980300002)(438002)(189003)(199004)(2616005)(48376002)(476003)(126002)(36756003)(426003)(6916009)(7696005)(51416003)(446003)(11346002)(76176011)(106466001)(8666007)(5660300001)(486006)(77096007)(246002)(316002)(8676002)(16586007)(186003)(54906003)(478600001)(336012)(104016004)(106002)(305945005)(4326008)(2351001)(356003)(72206003)(26826003)(2906002)(39060400002)(50226002)(26005)(86362001)(47776003)(50466002)(6346003)(8936002)(969003)(989001)(999001)(1009001)(1019001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0802MB2418; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT048;
 1:cPlrB/yKOdkda2Q6+pW0v8s/cxTlaYZ9sPwUvee6nW9+tb2nlD67lt91UAowCDvsOD4YjihcZf+IHa/oSAXLDAmcs3mn6iX529IJoEBlJX+ofY0k2ZoWrgH1/lKPndFX
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM5PR0802MB2418; 
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 3:W8CRJpU89xg9VgOV+BX6prZPkLSKNYCVil+DVzWwrPfVvOBi9xtx4nsA1qVbwb/DEcklhjxi4aIQKpYQUv9FQpIienleZrc/EgET6C2JadmY3Vo6WO+p+GDCapFCcv+VFIo+uJS8bF0kR41I0d488fkyCg7zkDqLQIca+2vA0JSiNBbg46onFGgVaHyluQpcEXaL1031XU3p4swptCzNaRcLXk80UmqSOKucIojNKIWC7crPB+WpfMRfxB7htx8fOVbi6ylUiPDB5RlizxQ/j9tdmyY90FsgW6a3gmKbXhmCUnNojAcyJdy5L4nq7IBTih6YpLgD83Ipq73v9zwNfuIQfX06gXYEunw01zyFECE=;
 25:W9NvnlcPngrdEfOlW6YyB+GimZA1kjhboNh57/Dj4YLNTixWWZmdLhKGRSPp25N8LQArlWLc7OB91kk5ywET5KvGe2H1R8Wb5bTKNsBVGxdg8oRBmZfisxcGwfBdcW7gOILrjizR7ckk5uhGr2tpjcAVDXjiWW81NpkHRa7A7bgcEvB9IxfFtlJIyae9mkgvqa2G9fQbHUuHiZMk7Grmp62g5eNBRyIRPJuJizmlBdCosfvuN+uARE/U8/not1doY7ew3AEMJ9KDTg3+9RJmyyp3cO+B2l4Ef6V5c0kHmX2VmbvB6df+8LsidfS5q1XGP9R7X9vnbiuQCSUvmzENCg==
X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418:
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 31:ik+mJ5oeCfrloGx/kEH6Ul3YPr8fRP4jiMIRx6BlwfrWiBJxqaFrMu0Z9W4UL1CWN7LQv4bRuJSL3L0ZdQ7PNmfUx/ERbFlIweunz8LI1dY8evATBgQIuw07/JkdkRbrfxrXEOg7zzANc/wgDJ42jUOWtuB4c/M+jE/1NWphwM1zis6YXu2NPZ1XkiwFVryGnMHz9v+adlhTMWsaTnzwcjtFSAGzQqoO36XaUiLT4Bs=;
 20:AsJI6MDSw6FSORx0Dax/QFQWUCkvDqRKQIy0kmUyH7SuJpTzyOAEqPNph1OumVOTydUhhmiNapju/gl+7+ZK9ub7IptGk7H7Mtdo7x4LYba/gJI5bHXRSf50Yhw15xoZ5WgzTp2KQ+IusDxsEpfCaPxC8LgOrKixPxx5j5sUjl2BmPff+3oskznzjJUZFI9GCoL+c6ohMLq0G77JBGCZSpEin/1oAciVXJ5lkjt/+Nta6YwfmGlxeNVRfFTj2ySR;
 4:e4Pd90QDaMAC2sRa6FQtrGVNkpDl8GBoiqi7tjj5hOXVBZMPMU2GImaR023LczoGwk9fSQPxImpG/HLtzm/EwZbf9qA9C0Y8bjU55tHhadPpcYJnJPLDG5NzVkcVy33eE2FDa3m7x55cIzW+6BVgXbDHOZFfk5DBPdM17pYuBUdQKKzEUzWhGDeRWIov05AmWAFIkliObft6l82tBhVPwhSGXGAGmqKVgJQtgAlzqFawGz/WOwl6OPOqnK+HJg6AklVJKyDSJhUPOpOpKQcMcnXEqv6d6xIkt0tUCjKF/l/t9gyCVqx9NGjLXTaDEA7t
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM5PR0802MB241878CCEABD9A19A62812F184B00@AM5PR0802MB2418.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93004095)(3002001)(3231232)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123564045)(20161123558120)(6072148)(201708071742011);
 SRVR:AM5PR0802MB2418; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0802MB2418; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM5PR0802MB2418;
 23:zleBLO4vz91czEiStiJJm+RRU8BscdI1oX+Z3ch?=
 =?us-ascii?Q?tWQUS5/nH1uWvqD9vn6pIdhXZsIUgkoLgcJF95sJZxk/Zy9PaD/45AXgPuLc?=
 =?us-ascii?Q?wEUl1D+Qys6GXTTjxTMKpSfI8ck4Vt+IFf5aO1QTDwUn1iCgHU+hfUMGX2Iz?=
 =?us-ascii?Q?7dkwrU7njdYnx6hNUNh84yla3LKa9Ydzm3a7166Bj8t1VLnKBzWR+O/eKHeX?=
 =?us-ascii?Q?gFqy3BfvOQduCVt4O+eJWuVPl8KUFrksaIAVrwBB6CRZnfXyqIGmNSUbUDDN?=
 =?us-ascii?Q?iD+bT7GBlIwO5G7J4pqcSpff6K0/7UjbNCaIZwosYBZLAJoXofjBHKQDCN6m?=
 =?us-ascii?Q?gUQ6L9Uy56UxlY2EUfYrqRtRLl6rYmZlHvQp596lH8VDC9b0dl/O6sZiw5ta?=
 =?us-ascii?Q?bRAv/ZUK9UjehCXpvuR8FdhSkAbU/jOxU9pID0lRgtXUk1UzRLCzWPopFhnO?=
 =?us-ascii?Q?lNOBjJnIKKCKQ2NAu5qUPmLLuV4GsxBivrSN34vPnr+zfZRbD8goHGMNyhob?=
 =?us-ascii?Q?R1cBC0BFuf1HxQjPvX7FOGkcwlKKqLf2ZHsbNF2irFEcEeG2fMmHNAXL9riB?=
 =?us-ascii?Q?Fuxk/EhMKvBIMCUr540Z+oAc20I9JGqH3uXZ/goM9xUpXKwXE+qkPs0IIPTl?=
 =?us-ascii?Q?tQCTtkcUtndK9aR32NPRnGqhEK0CTpEFPH/Dzo9gUcWDaNhUaC4nWuSRPt70?=
 =?us-ascii?Q?hbiLNcu8Rvf8EtXvt3xns8XtA/r7mogg61ia93DkLi0SsAwApvIrfUXv03du?=
 =?us-ascii?Q?T3M4dZjvM+8aD/icqRNBcv9pBiT1/KbPBSi+fDonk8S1ljDskaziLnfOQkiZ?=
 =?us-ascii?Q?0T60rHpdkyk5KRiu5jx2eiwKH+Iue7Jpd9bXZMzYjSlBppDEcVncaNi2AbIN?=
 =?us-ascii?Q?YH/osDp+95IIt3MFJXZsRG5KgsRjj+IjooNCgCE1eo0hLmi6CEAscrkR7UAJ?=
 =?us-ascii?Q?BGHu7/ZOqWljGkElqE97+yZd3t/8WXjMDDpNwRsCfyEMScMnxU7ajX6iVq4N?=
 =?us-ascii?Q?8UBcSGz/wiGa4drQdUAO6wsgJcEGFhItnf0cdHQEW9zh8q/giJmKlH/cINIQ?=
 =?us-ascii?Q?SjI93qhge7G5LC34Xb6NQGvRlX0W79cC9r3IonCVMBq57x/1Yde9rQEFESQT?=
 =?us-ascii?Q?gbXKDehMTsdFnQIgg8IVeRA3zTT49AZPT6Cv4tnFW+9uKDii6iTFy8F3NZEB?=
 =?us-ascii?Q?Ppnu0ib4ag13htmPnLdIoGByg/4cPqUD14YPJzArXLNkmnpmz2Eg7ANdCjQ?=
 =?us-ascii?Q?=3D=3D?=
X-Microsoft-Antispam-Message-Info: J5DnY0BKTnXDG5H8KfvVGiQwCWsS13KsEQHHARI7ETqc3oOH4NjsEsjNaKoneOHsQbGtfT93sBziJ97kSEs8O9isHhkjQV7v0V6QhUDjhOGADoFNNUgmCGUghHT8j2wR7yaqK4TvqFkcmqNkhC1JFSbX3p5ZQfHCFAVZef6+q7KieTRw3IGmUG6TWhu+UCaj9FC3t6AzQMNn6tAWiTmy6Ss59KvzlnXRjsKzlbRQjI+fXxFmnY7N29RG2l6Sy234X3rCqRJDF7rPsYBMxUMggrnHwn2qhryXxFTlweSdtmZI355QT03714y5KcjwLJpbLc/5sODcfxu5hL05zbNknUcnxlwoq2N7hKcQIThW4qUhDwq8Y7Bblt/Ip9bRPRMyfHG7HE2SDWPykKrOJRdo0FXdIf7LaJraD1IsigSUru4=
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 6:xavLfnELPKxGawruhGxs87cMAKYojEb4ciKjFELccCJ95a1fQ10vpmJ0QLg6ue9FRj5GQVxQhnDgEkl5FetZiI6Ep6VvrJeeFHW3rGNnNJLtUoZDZXFwFJjXuDOutObjl1+Fao+RXwXQkKMRaNnebQBTZV2O7JEcHiYrbnQtox9x9j6L3/MZ+2WlQi/iHz7JexeEjI5M/jRozytcr9P7OvMwPk53Eq3Ase9bbSniRJjAseRM2erjnGOL5gxaFo1TYwu9OMSiFmjtzFrM7NUCZcqenZSmXwW8ugRtAi/TE3BSEYjbWsns1iyy8RXKJ8hsDVal4HRZHQyg9zp5znYXFCo1C4oyCD2VrnJI37f/fDo96OY7UowYf/DpGYIla3TryLWgEdXWuvdKYXzHFEkOFu82pSo608SYXZMihXCVHLZGcPCs/ONrIj6kHEy24N/wpIejVMpSmowxFuO55+RdH4TrTZyb/7Dk4Ds4WHoPYnjlkQ9oeZKM/ppciut5tSJ0;
 5:wWtosxTvmOLLaDTA0yG5Lv1jBQzze6JdsCUxsPjjsjchm+r/uTs738PGhHU0Ajh7a2CrszfvxrZSw0WRar+7pwD7iOoNVaAXE5JDR92tAUMG8ET81NzBPb2yGvIArGXLyIhczLfG11OWrbzwZULb3NX4IaSIXhKBFZTGNvM4Wkw=;
 24:NMvSKfwIplQNbX6Pu8L6JpmwHhXTTqz5g8CNFTd+LLRQqPodlAda2nVfoTv4fC7sshSuvlQiKF8IfjkfGjPEiUwDtSzIsWzcq3sBm2mRgN0=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 7:9gEwTJSRP615OZN8hWsNFcSOrmS7ekOj11VXO8MB2AWd/QsoF5/lIwQSGDvB8CppSnc846XQfBEuU98cg7V1r0Rhx61p8nE9wwTN25LpNgKYL4HH0UAXKPc4Qxer79crOqFaIX0DJatXK6HOeesBg5vXoNTRIrlElol83Xn6/L6Y8o7dwFGV9UAmMAeifRY2GFTwS58pctne1QTHRseqJST0iUnwNwxUg+ycKygrIQrMPhXIwyzGMlToolL1hSWH
X-MS-Office365-Filtering-Correlation-Id: 05b9cbc0-6e9e-43c0-eab3-08d5a3641624
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:20.3555 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 05b9cbc0-6e9e-43c0-eab3-08d5a3641624
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418
Subject: [Minios-devel] [PATCH v3 21/43] arm64: define the
 CALLEE_SAVED_REGISTERS
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW4gdGhlIGFybTY0LCB0aGUgY2FsbGVlLXNhdmVkIHJlZ2lzdGVycyBhcmUgeDE5IH4geDI5LgoK
VGhpcyBwYXRjaCBhbHNvIHJlbW92ZXMgdGhlIG1hY3JvIGZvciBhcm0zMi4KClNpZ25lZC1vZmYt
Ynk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQogYXJjaC9hcm0vc2No
ZWQuYyAgICAgICB8IDQgKy0tLQogaW5jbHVkZS9hcm0vYXJtNjQvb3MuaCB8IDMgKysrCiAyIGZp
bGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg
YS9hcmNoL2FybS9zY2hlZC5jIGIvYXJjaC9hcm0vc2NoZWQuYwppbmRleCA4MDkxNTY2Li5kMWFm
Mzc5IDEwMDY0NAotLS0gYS9hcmNoL2FybS9zY2hlZC5jCisrKyBiL2FyY2gvYXJtL3NjaGVkLmMK
QEAgLTEsMTIgKzEsMTAgQEAKICNpbmNsdWRlIDxtaW5pLW9zL3NjaGVkLmg+CiAjaW5jbHVkZSA8
bWluaS1vcy94bWFsbG9jLmg+CiAjaW5jbHVkZSA8bWluaS1vcy9jb25zb2xlLmg+CisjaW5jbHVk
ZSA8bWluaS1vcy9vcy5oPgogCiB2b2lkIGFybV9zdGFydF90aHJlYWQodm9pZCk7CiAKLS8qIFRo
ZSBBQVBDUyByZXF1aXJlcyB0aGUgY2FsbGVlIChlLmcuIF9fYXJjaF9zd2l0Y2hfdGhyZWFkcykg
dG8gcHJlc2VydmUgcjQtcjExLiAqLwotI2RlZmluZSBDQUxMRUVfU0FWRURfUkVHSVNURVJTIDgK
LQogLyogQXJjaGl0ZWN0dXJlIHNwZWNpZmljIHNldHVwIG9mIHRocmVhZCBjcmVhdGlvbiAqLwog
c3RydWN0IHRocmVhZCogYXJjaF9jcmVhdGVfdGhyZWFkKGNoYXIgKm5hbWUsIHZvaWQgKCpmdW5j
dGlvbikodm9pZCAqKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpk
YXRhKQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0vYXJtNjQvb3MuaCBiL2luY2x1ZGUvYXJtL2Fy
bTY0L29zLmgKaW5kZXggM2Q0YWFkYS4uODliNDAwMiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9hcm0v
YXJtNjQvb3MuaAorKysgYi9pbmNsdWRlL2FybS9hcm02NC9vcy5oCkBAIC0yNSw0ICsyNSw3IEBA
IHN0YXRpYyBpbmxpbmUgdm9pZCBsb2NhbF9pcnFfZW5hYmxlKHZvaWQpCiAgICAgX19hc21fXyBf
X3ZvbGF0aWxlX18oIm1ycyAlMCwgZGFpZiI6Ij1yIih4KTo6Im1lbW9yeSIpOyBcCiB9CiAKKy8q
IFRoZSBDYWxsZWUtc2F2ZWQgcmVnaXN0ZXJzIDogeDE5IH4geDI5ICovCisjZGVmaW5lIENBTExF
RV9TQVZFRF9SRUdJU1RFUlMgMTEKKwogI2VuZGlmCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxp
c3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJv
amVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:33 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xij-0003F2-14; Mon, 16 Apr 2018 06:34:33 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xii-0003En-5u
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:32 +0000
X-Inumbo-ID: 16b15ad6-4140-11e8-9728-bc764e045a96
Received: from EUR02-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe05::61f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 16b15ad6-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:33:35 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=zqVdoDUblXL3SdGzVoGZegK9TgMf/wbVSC9zVdp9tGw=;
 b=GFpifmJDylSw8HuhmCBqheIO6kwBFPPfesIML613YKi6M5FaK3Ab85d+QXS+TWr3t5M+xQasaRd8lhV+n4D7yAinCy3JKAjHd36UWqjOiSXC+JVLZ0aj1T5rCjOFHV54efi/l6xzn84grVNWGQJWR9m09QDwYrPUbtVSiifuvZI=
Received: from AM4PR08CA0009.eurprd08.prod.outlook.com (2603:10a6:200:1a::19)
 by HE1PR0802MB2428.eurprd08.prod.outlook.com (2603:10a6:3:df::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:34:23 +0000
Received: from VE1EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::207) by AM4PR08CA0009.outlook.office365.com
 (2603:10a6:200:1a::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:23 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT048.mail.protection.outlook.com (10.152.19.8) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:22 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:08 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:02 +0000
Message-ID: <1523860343-16382-23-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(39850400004)(39380400002)(376002)(346002)(2980300002)(438002)(189003)(199004)(16586007)(47776003)(446003)(126002)(11346002)(2616005)(51416003)(305945005)(7696005)(54906003)(316002)(8666007)(50466002)(76176011)(426003)(336012)(186003)(72206003)(86362001)(106466001)(104016004)(48376002)(5660300001)(8936002)(50226002)(8676002)(2906002)(356003)(26005)(77096007)(478600001)(476003)(246002)(26826003)(2351001)(106002)(4326008)(36756003)(59450400001)(39060400002)(6666003)(486006)(6916009);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2428; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT048;
 1:IdJeGiuzw+eRiCXEVX5rue6iDMZOLhfFqX8VccUk3DKhWetC8eDxR7T3lzSpvIzYB+VVJ3apckjfG3u5aks+fmCRkqxDlaSJE9kyfaN4gOqaG+oXylDfDSadIQSPfrUi
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2428; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2428;
 3:IDrtqGEXF8aU1MDHfcx+oZRWv++/vbO9X4j4ryWZd+5HnOudkMjo3h0kcQuqXBICfXs5CaxxquXn6HfQ2FkK2Md6uu/xdIy0IrR7LUHiAH2iQdFObiYqHtMqJ8IxebESGgjUyr1QjsQvCy/2CN2uYQlySOwg3lMjrR+ZEwOQcUTqIsFZYTn7JfiEHM6KJn5Kg/WCLEGnoj5nkJA8v6FChSS2B05ujNBn7Q1m8+MVpk8I5g077zxGd+RkxpyrR/t0iuuK0Hihb4zCiKz3MSrOnqY7a+mnk52bc00ZWwQI2TxJ987XOqYIDhxnE5mRkojgaaO3qf3IGK5UPPb1VIAZfWgnZwPA48FLmWD0sS+EZL0=;
 25:7krcl6HRp4epatH5cV+9sVZsFiVPdhRoUFDDAuB3PbI5zpStZdCXQF+3RtUEZr9sa9u9tOZjU9+ZydJSprRneFSAgmPMnmly0htANrYMxfS+i6Y7JQgZ1lk3xkYmOHV7Iz+UPxZys/2r3BPwY1EcQSuqjdHwb+5BVNbJEBCCUH8GinLKcRunQYXTxDXyVI0FIvW4cDSArcTgEXSTen2uSj+UfYp7G/DF9xDt4cwmCGg+5+KIixu2w5qAfVl21dJVcnTHsnH5eHEQHwVk2higBOndDtC0SSonGn9oGIWiHrzkABCW3q9wQRVff9VRVAVsvHhuohaCgyuMLLjhTQw0LQ==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2428:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2428;
 31:9YHoiV0l2Wq7p60nJJe/+a9Y26pnKnE86vIdHyrSsRozH4wXTFhtamFSOAKi48PNmyQACnq+G1py3sgW3KP8ooU4qqTfUD17MEqap8wniU4rlXnlDYUEcDlHIHl+nFeu67JttjBolfdfptk7I7WUIfB2LYOXp+f6ef8A3QesVlUMUSZ9+ZZ+YGtQF9Pr1tnqQ+6z7W4+bh224VYKm5oWWp5KnjdkaVTJqV8kbt7saIM=;
 20:nyuGeg9SYSDwCaHC3tZUPoOB+ZrGUW5HlnLBqVEWbg3DE7PN2yJ7Sw9wKZKm1D7OBvFM7P8pVUMaYjWVjyKHqOa5fo8CzqN/QcT9UrClX2ub/TA9RZqkCGVHxfeu9K04unsnxEdzj28ggcJlnBupLlbom7pDE0iaMuL0y1UGcdn2D0DCrEaHzLY6IFRyfgV2ErXnIlJ+D23Em+UlbpQd4illXy2rtbHLAIMONBJXQJfhNBdxVO/jBXGe3OP4c7p0;
 4:wo4a51OnAOw+bcoY3bAF+1hYZxdg0TDRmaR6rC5v/eSVWX4pP0BfptapNGTV7O2+EHmX8TeEhGkyKI1s0qKcuUZhp4fJzSs+dabzBMmbKenK2OVFZKE3JC7yzOSsh31MdpTX57HaI8tOkncq/P5U3VaGjV9IA8BArdFCnOmT5g/lsxnLks99alTFbxCCcI5QPOpDdUY9xMiwJ8HnFX5y1ouKeXMmdFXuNWG+pQMFH6egPYgRm0eTc93zZ3pM7qFyVBeEfxXvZtajGW4XRLBOPK+YJpfOpc6eS67HPLjnsLKqD908b2p0pV+SFp1Ey6Wx
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB24285B235F9A6224052F167E84B00@HE1PR0802MB2428.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2428; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2428; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2428;
 23:EtUIPGZfkENaS9yA6l5JSoeh1J6IA+7qM2NdnxU?=
 =?us-ascii?Q?I6rULyriLDxWIpcBvwvNTvA3l22n5CXa9L10I10x7xG/Pvd0L9+iASDxCqwc?=
 =?us-ascii?Q?k8sMH43LVEQh2DSe5DdBCZASI7NPuPfGguUM+fwN0egKStoKtXlt2v8VI22j?=
 =?us-ascii?Q?umyDHQEYIY42drtmnNTnDAKTARVyqNRVUrs/X29gWC0lodsTlyYkfipmhYcg?=
 =?us-ascii?Q?y62MPYCuE9kAVt5lfP2Bz+yc2BfUnB4rUGVW1Yrss/Wk8v6i2jr20WaxQNLo?=
 =?us-ascii?Q?6J6Kafg7kLahs5Zg+/NlK5Oqjw9YcoR/gv5nJRhD34rhsI7gBKXgIDS6FYlF?=
 =?us-ascii?Q?n1bMA3ncxsvw3bIVRHt1ytmeNf2gGJZww5VbYslbYCTC+/mNY+LIsJajd3sU?=
 =?us-ascii?Q?ED5ty/ZMcSuYLMTSW7e1V6TzZ6lMYXpfWSvkJyQaKzYF+nbbPQb8emQ/PBxW?=
 =?us-ascii?Q?J97JRiPk0Ay0AslWejjNSj00oiPh1/CwgdBmNL95hCL0xpI6KNtOBsn2XbFx?=
 =?us-ascii?Q?Z9A1FA+FLvsg8UTDAhRc26XCP2zf/W92gQ6sZtBxyy0c/wv23umcMm0rPilt?=
 =?us-ascii?Q?Ppn8InGv62BeA51RCwRayX9Kfym1xv1OsB0cj6joPFPpZSxjw3Jx1tITrnEX?=
 =?us-ascii?Q?BWen92wRpaGB0NSG82oGOpkPelkAV89ztx7DeOgOzsQaHMGw3/u3Z5F6OtDp?=
 =?us-ascii?Q?Xlt8hAkAsyCP5b8Uno9QEI1NTEBBylPIYWETXynxQp64Y/6O1dW33Kdnh6R9?=
 =?us-ascii?Q?zfyi5dj9EGhTXQ51bToh/ylPDtTF2whw+0srpRmFEU1EXO2lSMkQ6Up0Y7SQ?=
 =?us-ascii?Q?+YmJxxu4/5LrRcDompX7aZqcLA5DOmiguX+PDOk814Dbj3zAcMb7q0WChJSp?=
 =?us-ascii?Q?E5km1/mFTIQKfTCbkk1NgumU1Gbvawha9HJLXgSw/l2beX+hhzqZnonnL6Fc?=
 =?us-ascii?Q?K/dAwqqFmoYLcFy4OCwrL/yhqHQshmX/mAXauuv1SzVfM1CIFbcGvPws/hbC?=
 =?us-ascii?Q?uVsJ3OZGl7WS6zbfu2KUFZrHottNhncz5VvArDamDEkWEfmI0Ud5hZoY55+n?=
 =?us-ascii?Q?+hgpZn5lJsLfC4YRc1GFRX5EnFresoGZO6d9BZ21OWmk2N4AbH8H6/m3LkaZ?=
 =?us-ascii?Q?YrU6NdfQdF3d/eM8rmxHTMgWQEUVByKFeTwug2Ce3rw1+SSdenfv5fg=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: /qadH+/Aq7yo6L6zh9ACYgSbjj80Oz5OD4fKILFWSriWpNpx80QPJ9x6xOics9GJFTuEhYfDDvnbPMlpnsXNIuRdq2vCgb8hbqRneiSNftjrD2Zo6FkHTTue7TPUHsf2+SZ6SB+1DXR2FedHZQ2DwhA/izGjeKFUPh1R2DMWcF8SqGtF/VJQqhJ8jjtIXlg1/BvFWxjFKD4GKL5w3rlr/gOeIwo3nB0wRPzYh38J9cZwbiWKW+6lQJ5gzXavNG10NeJx32gC9owjMTMQIIqS24zRI7So2c1JM3HZxXkaEwl9pceFcaqBZWTpGUqs5vGiy9YlTXSVoXFycn/BI+K7B2T+18EgEzXOG1T1wRNeU0uUWElivKTSSl2K0WA8kzms5fNGcdwb4QCBm+6WhjU8UOApzAns23S2VygeHUEa6jw=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2428;
 6:s9dMIREa9ueukuWQEf2mEm6Za3Xccu8l2AXTxYntDZW+RjqbKPvMvXbmXYUrZZe5wfS0GNKvExK2fFXHbDAkHkrVXSpvcAYC03lxZzHl9hHKfeydl7wPn7Q5m+mQd5/pv+Jc0aXXymJatzukhpXGoo8x8+M3BUum1nreRwR8uogU0D3Sx3TCZrqXO+EmSYlxC7H2iGA8jMSWbfGIogbyQHcw/9jmkY3s7Rchhh/06R1VGWm2f3J/W6fzlBRBzGEYvzqrghgcoux3NM/WNmX0BGIbGcoqNqI6JvjVTtOtqicyJjLr+737RUsqGPwOU+QNvTf3hDgEDp2+sl8B3+2JjdJVJ4io/vWsWl6jloUZXJb691VH2c+SI+SgwWS7Nxuqz5b+Ncqh6jvq4kq2fVJkMkZZE/Q57Z6r+IkdJ5eP16xh7+U8CedgcdQ8knb9CgI1Mox1lD/LE2cVTeozCh2Ix+buiv3opSSfKBPozQUtjS+cYQzQrn4qdn0xOL5riOs+;
 5:HOR/ETG0/61nnFPle1AR2EMZ6GN+FD14CaydHEDhOHIQo0M+fR94oc8bQefmaXxuDXtSZvQQsEpOTwp65Z0VwxftnlsodJBNdiJJuFf11346UEE5a8g4v9xqX8Puk+o/nYGcJUUOUPG0c+M7xqQJ48j5dHasiTatbK1AJnHJEfI=;
 24:aTXDm5UBA37aphyfSgjiWOcKRIc+yfrR5SPjLb5L2nGzvJxrfKYJjI4liXw6gyJTn/1rhYH8ixkMf0aPl2uhMFWoKsvO+5PzqnXvhPzEfUE=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2428;
 7:AJuhHlJE6pRareuyav1BKxiQZyXNm/zk0ZrOUqngaU1UdFKEh5AGaVHUbm8brGdNlT3PVZLapz7iX6ZZAH2Bu/nd2q/ZVL2Pmrhxm4Qa3TGOUBL+BSnaTxORyx2RHG3uKlYaKeR6KvDTZSxAZrzFJgNicKoLxCw2YScjRSl7aTnWG+BgBrIZG5wMAHyrgo0cPzL1XZQr3CwU62z7ubVo2rraUDsUv50Ae0Whe3QGpkbrrZIfHcdaXoQHJ97kbJNx
X-MS-Office365-Filtering-Correlation-Id: ad9263a6-e878-4c61-c7e8-08d5a36417a4
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:22.8869 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ad9263a6-e878-4c61-c7e8-08d5a36417a4
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2428
Subject: [Minios-devel] [PATCH v3 22/43] arm64: implement the
 __arch_switch_threads
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIF9fYXJjaF9zd2l0Y2hfdGhyZWFkcyBpcyB1c2VkIGZvciBzd2l0Y2hpbmcgdGhlIHRocmVh
ZHMuClRoaXMgcGF0Y2ggaW1wbGVtZW50cyBpdC4KClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWpp
ZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQogYXJjaC9hcm0vYXJtNjQvYXJtNjQuUyB8IDM4
ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBpbmNsdWRlL2FybS9hcm02
NC9vcy5oIHwgIDQgKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspCgpkaWZm
IC0tZ2l0IGEvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUyBiL2FyY2gvYXJtL2FybTY0L2FybTY0LlMK
aW5kZXggZmEzNDA2Zi4uNWY1NWY5OSAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vYXJtNjQvYXJtNjQu
UworKysgYi9hcmNoL2FybS9hcm02NC9hcm02NC5TCkBAIC0xLDUgKzEsNiBAQAogI2luY2x1ZGUg
ImFzbS5oIgogI2luY2x1ZGUgPGFyY2hfbGltaXRzLmg+CisjaW5jbHVkZSA8YXJtNjQvb3MuaD4K
ICNpbmNsdWRlIDxhcm02NC9wYWdldGFibGUuaD4KICNpbmNsdWRlIDxhcm02NC90cmFwcy5oPgog
I2luY2x1ZGUgPHhlbi94ZW4uaD4KQEAgLTQzNCwzICs0MzUsNDAgQEAgRU5UUlkodmVjdG9yX3Rh
YmxlKQogICAgIHZlY3Rvcl9lbnRyeSBlbDBfZmlxX2ludmFsaWQgICAgICAgICAgLyogRklRIDMy
LWJpdCBFTDAgICAgICAgICAqLwogICAgIHZlY3Rvcl9lbnRyeSBlbDBfZXJyb3JfaW52YWxpZCAg
ICAgICAgLyogRXJyb3IgMzItYml0IEVMMCAgICAgICAqLwogRU5EKHZlY3Rvcl90YWJsZSkKKwor
LyoKKyAqID0+IHgwID0gJnByZXYtPnNwCisgKiAgICB4MSA9ICZuZXh0LT5zcAorICogPD0gc3dp
dGNoIHRvIHRoZSBuZXh0IHRocmVhZAorICovCitFTlRSWShfX2FyY2hfc3dpdGNoX3RocmVhZHMp
CisgICAgLyogU3RvcmUgdGhlIGNhbGxlZS1zYXZlZCByZWdpc3RlcnMgdG8gcHJldidzIHN0cnVj
dCB0aHJlYWQgKi8KKyAgICBtb3YgICB4Miwgc3AKKworICAgIHN1YiAgIHgyLCB4MiwgIyhDQUxM
RUVfU0FWRURfUkVHSVNURVJTICogOCkKKyAgICBzdHAgICB4MTksIHgyMCwgW3gyLCAjMTYgKiAw
XQorICAgIHN0cCAgIHgyMSwgeDIyLCBbeDIsICMxNiAqIDFdCisgICAgc3RwICAgeDIzLCB4MjQs
IFt4MiwgIzE2ICogMl0KKyAgICBzdHAgICB4MjUsIHgyNiwgW3gyLCAjMTYgKiAzXQorICAgIHN0
cCAgIHgyNywgeDI4LCBbeDIsICMxNiAqIDRdCisgICAgc3RyICAgeDI5LCBbeDIsICMxNiAqIDVd
CisKKyAgICAvKiBTdG9yZSBjdXJyZW50IHNwL2lwIHRvIHByZXYncyBzdHJ1Y3QgdGhyZWFkICov
CisgICAgc3RwICAgeDIsIHgzMCwgW3gwXQorCisgICAgLyogTG9hZCB0aGUgc3AvaXAgZnJvbSBu
ZXh0J3Mgc3RydWN0IHRocmVhZCAqLworICAgIGxkcCAgIHgyLCB4MzAsIFt4MV0KKworICAgIC8q
IFJlc3RvcmUgdGhlIGNhbGxlZS1zYXZlZCByZWdpc3RlcnMgKi8KKyAgICBsZHAgICB4MTksIHgy
MCwgW3gyLCAjMTYgKiAwXQorICAgIGxkcCAgIHgyMSwgeDIyLCBbeDIsICMxNiAqIDFdCisgICAg
bGRwICAgeDIzLCB4MjQsIFt4MiwgIzE2ICogMl0KKyAgICBsZHAgICB4MjUsIHgyNiwgW3gyLCAj
MTYgKiAzXQorICAgIGxkcCAgIHgyNywgeDI4LCBbeDIsICMxNiAqIDRdCisgICAgbGRyICAgeDI5
LCBbeDIsICMxNiAqIDVdCisKKyAgICBhZGQgICB4MiwgeDIsICMoQ0FMTEVFX1NBVkVEX1JFR0lT
VEVSUyAqIDgpCisgICAgbW92ICAgc3AsIHgyCisKKyAgICBiciAgICB4MzAKK0VORFBST0MoX19h
cmNoX3N3aXRjaF90aHJlYWRzKQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0vYXJtNjQvb3MuaCBi
L2luY2x1ZGUvYXJtL2FybTY0L29zLmgKaW5kZXggODliNDAwMi4uMmQ1NTAyMyAxMDA2NDQKLS0t
IGEvaW5jbHVkZS9hcm0vYXJtNjQvb3MuaAorKysgYi9pbmNsdWRlL2FybS9hcm02NC9vcy5oCkBA
IC0xLDYgKzEsOCBAQAogI2lmbmRlZiBfQVJNNjRfT1NfSF8KICNkZWZpbmUgX0FSTTY0X09TX0hf
CiAKKyNpZm5kZWYgX19BU1NFTUJMWV9fCisKICNkZWZpbmUgQlVHKCkgICAgICAgICAgIF9fYXNt
X18gX192b2xhdGlsZSgid2ZpIiA6OjogIm1lbW9yeSIpCiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBs
b2NhbF9pcnFfZGlzYWJsZSh2b2lkKQpAQCAtMjUsNiArMjcsOCBAQCBzdGF0aWMgaW5saW5lIHZv
aWQgbG9jYWxfaXJxX2VuYWJsZSh2b2lkKQogICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJtcnMg
JTAsIGRhaWYiOiI9ciIoeCk6OiJtZW1vcnkiKTsgXAogfQogCisjZW5kaWYKKwogLyogVGhlIENh
bGxlZS1zYXZlZCByZWdpc3RlcnMgOiB4MTkgfiB4MjkgKi8KICNkZWZpbmUgQ0FMTEVFX1NBVkVE
X1JFR0lTVEVSUyAxMQogCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVs
QGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1h
bi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:36 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xim-0003Ft-42; Mon, 16 Apr 2018 06:34:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xik-0003FW-Gq
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:34 +0000
X-Inumbo-ID: 7a8fd43f-4140-11e8-8249-2fda3a446a53
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [104.47.2.69]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 7a8fd43f-4140-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 06:36:23 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=G1b1sq2dQHwFLjc9rA/OsWWaUwXuPOpmkrfRTG9mRCs=;
 b=QmP5wHvOSDB//pmVL9cesp+eNZNvOHgX9ysntrwQwvp1lMK8EfhUfbn0p3K/O3HCiHa1zE61ErYIV+8TU0aZwi/d9YBbMzOyMN2pmvasjtZEqlDZQUMlNGNHUGln3dGT4GompH5lZEGxi7n2Lr26FdcKexr4nIB/CeMDVDoF63w=
Received: from AM4PR08CA0009.eurprd08.prod.outlook.com (2603:10a6:200:1a::19)
 by DB5PR08MB0981.eurprd08.prod.outlook.com (2603:10a6:0:13::24) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:34:26 +0000
Received: from VE1EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::207) by AM4PR08CA0009.outlook.office365.com
 (2603:10a6:200:1a::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:26 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT048.mail.protection.outlook.com (10.152.19.8) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:26 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:11 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:03 +0000
Message-ID: <1523860343-16382-24-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(396003)(39850400004)(39380400002)(346002)(2980300002)(438002)(189003)(199004)(106466001)(47776003)(50466002)(48376002)(246002)(478600001)(26826003)(50226002)(8676002)(4326008)(476003)(2616005)(8936002)(11346002)(446003)(126002)(426003)(336012)(486006)(54906003)(106002)(316002)(16586007)(356003)(26005)(51416003)(7696005)(72206003)(76176011)(186003)(77096007)(36756003)(305945005)(6666003)(6916009)(5660300001)(2351001)(104016004)(39060400002)(2906002)(86362001)(8666007);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR08MB0981; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT048;
 1:5WGz3az1WMkotfM9MVjcKB8+2z6x5gdCJYUE5yZ5V/GfEw5dSL7pn8En0PwCN9Tmpd7XmbeqkishmnTjKeQdt0t9fvnRri+Jy8dQwHOjGW6CKeBw2/j2B/i8o1i5fo9e
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR08MB0981; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0981;
 3:rEvE8PY0YsYXIbsyAJt84c5u0+XRcs7odQnP8lUMLIuNZBVU3SKwtU3KP2W1zg1/H7qNjoYI2pDwvIz8aYHeleDy8m/XMtVtEHAP6PsdsmVrCic1fZqSgOSvBe0eoDPAHhUiTc4TvaeDrdITNVbLYTKyvZDSiH70bjMGFj3Nujxlkz/LzkUpbxYgVc/LehF4AQKdgtX3Rh6aYpP8X0/3jVXBUrrZRVQMPMzgAX/hUT4s/79ub4YCW/VF+dt0M3Zm1MxQ1KeNHyI6yEnwTfbGhXGNzGWTfqodSc8qgkdB77a2MLCIXIeTJ9/il7qfbRu2xlT+dr5K+PjCB/N5rRSxZ/VDeF3M8Yh0aac36lxpRq4=;
 25:wsrv1zNtmiXIoElL40aNDcRC26LPS2mEmp4HGUdAbycZCgRVT8F9rTDhmjvtLjvfFHMju0JSvSy5cN/bV0dFOiKKclvQCmghUkVW0Nk1nK50Ad2QeEjFUcXClOEWtBB3Cw4XdaKOnmLshWbpd+8L1vHGC2AqIoZqTZKYyQDn7T3E8K7SsbWZ/JOLfLZVg5+DF4di+u9D1H9MSWwILM6LEKXrtHg7/cpwlTlhJo+DhJOEC8PlAF9WKvbr6NaHWMrdBmUH6Fj0DNEo5ElAXiCDb44CoxkIlMSXbFMLsStH50W741faKkYvn3+LCdcPuBo94uYGnK6qEekZeWc+3N+9Iw==
X-MS-TrafficTypeDiagnostic: DB5PR08MB0981:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0981;
 31:0KFg6hEc3K6UaqUdVcFUBOnOCa3CQ1Y0Bh5O/imrrvElCuY0TsmkswYK7Z8EPZVTN0QFoPfGzCqTCSEk3GYb4P76uRMlX8ksrcE3jffgAUI+inlVb+QpxQZVBm8OOybEBhEhMtADgA6Huo69CH1uEDc9IplVZP2iwz3CHyRztZXvlmCMKRIrCUGJLJ0l0a5/uavK8laCrjTToOuGLg7OuQHqT+N8EM/21YeCzm70nSA=;
 20:KmOZOWNf3jSGV1NCrHDZKRTrEbUPZbZN4SezJmSpb+LodQKxMeJtovJyKeuxVprHehhhkOoI2hmQZrh24K9Y5LdTzyqRjn4puRjnw9GdFFeUMOvp1NVxRdboHO22tzCB/O8ccvgPBvLvjNQToNVE1SIZvJcjzarYyATBsY/3Rf+O5g91u6bNgTH9ZWiCS6FGLkOJdChT9zPPYsDdu6d+AwoKucGfddz7Iu3nkQl5XAsIwrKiYgMwxlGrWmTKcuHB;
 4:GRk3YRlKphdPvaZi3RkxmGF+dDvhM5LTcYMIdu2eQi1FGp/R01oB5vrERLllKUDQwzZJsB97B757TZIAy39lwDdfxu11OCOez24uBS78ul5r7+hUM2D8w/1D6VBHeX3QBd9MRTX1r8fpVR6GW81mfBFT5nG/RJlBGIp9TQuuf5GfxHhRaOXhqoI6SUp+/AdewD2H6+syFqhdYyW2G6BgfRm6LjqnPxLYiM/ah+DvOyEbPZ9+e+LB7gMFdPBJFenYEEnc8f1Mf9ThhRu2snHmRX09VJUwJd3ctgGHqlNPsOry68f5uBfoj0cAqbY4BOoI
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR08MB09816B1F6DFF1C47A3597B8984B00@DB5PR08MB0981.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:DB5PR08MB0981; BCL:0; PCL:0; RULEID:; SRVR:DB5PR08MB0981; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR08MB0981;
 23:8z3dZ4fq6fQ0xaVajJlOuDIhwHC+JRKIt91pEy+2w?=
 =?us-ascii?Q?K++u1zUvMKZGluiibQS8O55zUukL5PCUKsFFpDneLIOQdFOuJVZdJ0VSgtIJ?=
 =?us-ascii?Q?Ucy1NRiiMnAruJCoqg5EN312N/SVK2SaxQW92shWytJMAPZIQT0YUMg5EUxi?=
 =?us-ascii?Q?2NpW184G/rXC9s90cxEut0X+H9cCgkwY1EQI97J3UHTd1Pbt6Sl5e2optUa5?=
 =?us-ascii?Q?ZiPL6xVB1katEVV6lxpjYx+T4TtJCZsBT4LmT9Cm68nOzaMiKENrzKlSJJ8B?=
 =?us-ascii?Q?iTONcQXCyIPv5PksIvXBKgtB2J7BxLrSEAsUMT2wMIvjnVYMc3vwiQKrY3on?=
 =?us-ascii?Q?gEf7TDeu7bV6Brc2Mp31rkm9rUg3id/fer6pJwNm0+XbgBx2AyTt10uLXYri?=
 =?us-ascii?Q?ga/k15sUWV+jyNsFMg7pKckMGsDqJtGj+xVWOMi6UtbF0D3rFlPvq3tjmvLL?=
 =?us-ascii?Q?LNaAQoEJCGbkLOjJeCERCNAaLJjOVLDvhYZyQ78EtHc9pzcXiobQXmBfnu9t?=
 =?us-ascii?Q?jZC357N4h3TxOP1df46mr0Tw5q2iYNQh5scJ59otsUbNSSqdY+0tUc+axguM?=
 =?us-ascii?Q?/DP7yvVGYuA5VHtZ7JMSWHZBeKuMGZuFSC8z0+gS71eM7uaHJ9AQnxImg/2G?=
 =?us-ascii?Q?PSIJBmvXzaBr3JPTbh8GKwIvIGMqXlb8w/QDLzPMFMMusKNf1v8wPh8dCVza?=
 =?us-ascii?Q?PRK1Lw4G7PiUF2R7UWXHQoOkAieCwHzhJqLdBAAOFleFjyHPGCr/4FKLWMjk?=
 =?us-ascii?Q?IfSJmsIN3UDww8zdquOFyK3lPBsJ4sVJLfnI1XXlcKKxsWZS0zJrZ1uJbZkq?=
 =?us-ascii?Q?+ONQzLuOaK6AV8aOERhUCEMKl2gY+Ehnx7bi7UZKiPlV/rMybP3QpRq4wJwh?=
 =?us-ascii?Q?5F3hKvbiQ0aQkL9bLOSY4bG07ETD5yTJ6p+UmBimQKTUxqSte61b/Rgf1GLC?=
 =?us-ascii?Q?OfB8Dw71LZdktq/79KLi5Hj7SR6l1YkYpt8mxKIy66Lib6NL0bHpkOzfYfge?=
 =?us-ascii?Q?yK6nLnEIMIMJOjLKAbCwSuWuQ3xvFY82OCzeb4UviKtBkT1euXD8a6wX9h3O?=
 =?us-ascii?Q?aGHXa92kZT3i2u9h3YD1tcSnk+sChYBM/kf7w0lfZ5In+kw6n0tlOkvUpo9t?=
 =?us-ascii?Q?9n3lCvbQSi75d7OMBimledHWU5DHnvI?=
X-Microsoft-Antispam-Message-Info: xTfcyS7lxx+FdBTQ7gtp5vjSgX6hDjC26F8nThP++jRTBw0S0QO9sV5yrrv8xckidnpEGamm5KK3L34bL5BC6erTeK7MBvk5Y7KjWuUs3ZC1L8JI5twi67uUYtD5AVjVl4JQxjuGxyDlBqKvrWUJcNP3WOXIqqTlzdqz9qHOosWuCtDXq4kMsyOhloPCSe2fCEN7i2ITuexBq8rrUOs4oe+siFpw4z1nQro/hb4aHVU/tSQ8tgMNI/YD2LlcrvNLz7LlHIqQz7iGenI+Mtvosi1+t1WCBFUTwGMyeivskW5/wAkPzqReIrZpJruUHCBkKWhOU5xU2izLvkaxDMGaLObh+dGtjPnMBsNTci/nw3gNY8OjXW2LNYKn5zGLHM/UVjq4y/anSltK6l05SJZ4BTcQ2DAv3/9ruZ7gMJtNP+E=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0981;
 6:eTE2g74EkWhQOtS6VfaIEEi3nvBTmJlSsNIFF8pG0sJdsqTclUdi0utJmgyLHeW54jRXABxieuDkFpErfu4PUZvFkmMH8HtRbAyW0iGFF3CXQLlcAFkRilsfXISZSo5tjr7DswS2NS7LIB+smgTogyQ8HiGBz8yFMyAjpDqZ2BkSJa9MHzgegZKaKeRekJ9PZkKSra902zH+2bSm+gdjhwXUuNQC1crL1Eno2/wvgexaClKbl3DcPZLUcl7qZX5ww55+DFZF4vQou3lY3uGNjjBZOkfsOZEErRWhmdg62MF0IPb6OFfDF10s06qYgS8OzDRvuVQJ2U0+ulrht+tkSg20mnQaOcKHuf+ztp1Le5rPI3oDFEYXG8i0WUDYGlsDWkwM+nWCaYEAhMuWfJV9GXH5RDafmq3Q1NHwj4KCeF0C6r+4VlCx0j7VctAR6TLpVs0i+csZhMwoiVS9Phql9aOXKMKxa+3lvwC4IA8xeUtn3BsdXPDsD/7GfYpZzrVK;
 5:ibbNUFgkifymImx8YYZ1Kjimjx7ekdfRhjdYyukYq0Uk7FqU0NAMdcgNhWxvYFOsXOhN7p+A7NYHOpPLswbhzvG4Y/3aH2NSqC9P40BpR64whJo+eujJo6aQugDG74aTbUvqhFHlOox7aIaH6BniwIsN/+9uZ8Yhr7WANZ84g2g=;
 24:N92mvLrLSVn8D/Be04HV7iiI2j4yFvmEMgP5jY14W9Htv6BuRf2C8+wDG/kK91P2IY5FHo9VdKCjM5r4/zZ//SNkVjjYh/rf0xvTbbJCjiE=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0981;
 7:Lum24yovLWQOjxXLpNeIzg0O999CflPPEQc9KKEuDjRP3gxiiCJeSEQd0Od3Q9ZYCuScmhntIEteKx2Scoks3+ClLK9+UH3YS61hRVMK25psqcaYAD0NlcKaunSxMA1YCP29mFb+eRnDQA0M9710eKZSpzFsWYjF1EZmsOjwFP8DdOmlBxBlfYs4ujbggHsMG6/DWyOlH1suFxnj2D/gPK99h1MighIElJHmhJn5yyg0X3KxJoM9iHLsZcW5PZna
X-MS-Office365-Filtering-Correlation-Id: 36ee7652-ab32-4c2c-8d52-08d5a364198d
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:26.0901 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 36ee7652-ab32-4c2c-8d52-08d5a364198d
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR08MB0981
Subject: [Minios-devel] [PATCH v3 23/43] arm64: implement the
 arm_start_thread
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBpbXBsZW1lbnRzIHRoZSBhcm1fc3RhcnRfdGhyZWFkIHdoaWNoIGlzIGNhbGxl
ZAp3aGVuIGEgdGhyZWFkIGlzIGV4ZWN1dGVkIGF0IHRoZSBmaXJzdCB0aW1lLgoKU2lnbmVkLW9m
Zi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KLS0tCiBhcmNoL2FybS9h
cm02NC9hcm02NC5TIHwgMTQgKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAxNCBpbnNl
cnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUyBiL2FyY2gvYXJt
L2FybTY0L2FybTY0LlMKaW5kZXggNWY1NWY5OS4uOTNmZmM4OSAxMDA2NDQKLS0tIGEvYXJjaC9h
cm0vYXJtNjQvYXJtNjQuUworKysgYi9hcmNoL2FybS9hcm02NC9hcm02NC5TCkBAIC00NzIsMyAr
NDcyLDE3IEBAIEVOVFJZKF9fYXJjaF9zd2l0Y2hfdGhyZWFkcykKIAogICAgIGJyICAgIHgzMAog
RU5EUFJPQyhfX2FyY2hfc3dpdGNoX3RocmVhZHMpCisKKy8qCisgKiA9PiBzcCA9IHRocmVhZC0+
c3AKKyAqIDw9IHgwIC0+IHVzZXIgZGF0YQorICogICAgeDEgLT4gdGhyZWFkJ3MgbWFpbiBmdW5j
dGlvbgorICoKKyAqICBHZXQgdGhlIHgwL3gxLCBhbmQgc2V0IHRoZSBscih4MzApIHdpdGggZXhp
dF90aHJlYWQuCisgKi8KK0VOVFJZKGFybV9zdGFydF90aHJlYWQpCisgICAgbW92ICB4Miwgc3AK
KyAgICBsZHAgIHgwLCB4MSwgW3gyXQorICAgIGxkciAgeDMwLCA9ZXhpdF90aHJlYWQKKyAgICBi
ciAgeDEKK0VORFBST0MoYXJtX3N0YXJ0X3RocmVhZCkKLS0gCjIuNy40CgoKX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcg
bGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5w
cm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:37 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xin-0003GI-5w; Mon, 16 Apr 2018 06:34:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xil-0003Ff-Lu
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:35 +0000
X-Inumbo-ID: 7c10bff1-4140-11e8-8249-2fda3a446a53
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [40.107.0.46]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 7c10bff1-4140-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 06:36:25 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=GGoecuFysodRKwHDheLMVgldw9GCdfmsfUYxBxVSL60=;
 b=Uez8F5lFTGiM+1mj28OMXXmJB5P6lDqA1UWeYKGXWN2gTisuV8l+/kzxAFK2TrUfi4obnFtgzzAGRB4a0VDTgDfyLOg//kBrQKNFAewp3VaOpEJZzQo04qMR3IcSBJ9+dhtilrD/NR2M9qp7cHhTwqUFmvzokQDYHk89UC7D6Ig=
Received: from AM4PR08CA0001.eurprd08.prod.outlook.com (2603:10a6:200:1a::11)
 by AM4PR08MB0980.eurprd08.prod.outlook.com (2603:10a6:200:28::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.9; Mon, 16 Apr
 2018 06:34:28 +0000
Received: from VE1EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::209) by AM4PR08CA0001.outlook.office365.com
 (2603:10a6:200:1a::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:28 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT048.mail.protection.outlook.com (10.152.19.8) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:28 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:15 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:04 +0000
Message-ID: <1523860343-16382-25-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39850400004)(376002)(396003)(346002)(39380400002)(2980300002)(438002)(189003)(199004)(2351001)(478600001)(50466002)(5660300001)(8676002)(356003)(7696005)(36756003)(51416003)(50226002)(8936002)(47776003)(48376002)(6916009)(6666003)(59450400001)(76176011)(26005)(2616005)(106466001)(486006)(336012)(246002)(426003)(476003)(86362001)(126002)(104016004)(446003)(305945005)(11346002)(8666007)(77096007)(186003)(72206003)(16586007)(54906003)(4326008)(106002)(316002)(2906002)(26826003)(39060400002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR08MB0980; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT048;
 1:/vpPuteV0Eptk2qs6hm+JmO5bIub972wWMtlAZvK3Y1Xu8v5U8iPn+fCPa3VeQsDpxdv32GrsBLdA+Kb4e019wd0dZlaB0UlIcX+GtEW8NhG7s4WAF+KbxZg+DPCKw2p
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR08MB0980; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0980;
 3:4/BDz03pMnlA5eo1r78t18QH08D2mGyqAisn/Y59fll0XCD89JE/wtF2slJHRDSY13SQDg1iX8l7xMXRtcWphyjPMya6BWIMcP3HqOCv96RJDUXF7+fD3MRsMjRWNOu0/fWNPIRu9atVMoFlaW9wDSRcEPkttHVQIbD0k6fLvYGOCS1ltnSTMOSyXt6cH+nbI1oGELAStkatpWw5hPuD1pE1k4YVJHlQTmkxGl/FCaKrfgGOPXXzgtsjc6jfScEZ4X6isZyATRV3rHe++OGPZiwHM5UlYDOcXXtwQadRfGHvpSXOITHITK/dNtqMS6LpaU/PV08CUU91ZStJE0v7sy4lO65xxx7/wVFL6tyzBDs=;
 25:IY2a0ueOuDb7IBxCjshRdKXdpj3UubT6kQ/XFlK3/JZarx3gu7d4I0uyGl8Ob6aFC4LLN+FaXtk4MFwvV/LGYtHryDvghQp7MCHyHO4t3PmqPXA5pdD8j92yG7K55ClREitC6YKrXl8EEwMNVA7waE9jX2ANP0aPIpLOOxjXQ4j7LBjVBSaYy1Bayb/P1t9iGT1ZE8g2O8bChj/o4VNKmZ14p42JIjctXSTyfOpf0k00TykCSFnNrSfJuAO7cKHYv56ztC4Uic9Y4dp8T23PSWuQCrvJu0ZlcOZpQcg1h1GP/GGdpD6rgG29K3/XFp0ebul5oDat1B+n5rPshYE2hw==
X-MS-TrafficTypeDiagnostic: AM4PR08MB0980:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0980;
 31:e1csqF5L2jKTTe6Cj64DZXgGef/odnd2Y3tB4vErZD7Gb+iZ2uZav97QPlq7uueQA3BUWNeB91BXDu/D4uRBDwkfTUrsLpQWBkdUyz5KI9grttiV3+RVo/sNG+ka3JwBOAJUbldzST2DGVUPmU63BknJPUO4TLlcVJF+h71oCLvrMXOqQNJFHeQ/DyyVKS67Pm9KUMWAX+4JJAaUnWQTVKIsR2bZPxcXkoQE+XkgXrI=;
 20:1Zok46X+AbFD9AG4RzKy5VSLr5ppNh4jhtmWYWirFnZtCShOaS3Ppube7AGEcj6bhJMj8fQ2o3lDBDz+Qf9PyW6iztMrX6jY+kJHLjHgkkRYLhJFNVGl/rBldmjOgFqpYmU30MuECkwYy25gLwhrBwhu0fby8v9GGqYPxSeLAE5DnpQ8TKSzvI+jRLlLh+K7DDHil/Ib6IOnfXb/2lxD2CPdu/8jlsXnfL5wVQ3gLPIY6HDNwXtA6BDbn8bBABZP;
 4:DmudXQKLmWfp9gL1FO/sTezeoH9+dwltvZP9Rf/lR4eXvwmAlM6U1juOrfXFPQ3XKzhuNQ7Jqlhtw1bOKB+q9USiM5HdjpPt9QKF1bBEGQCd6udDYFgL3inq17B60q4kMHw96dmddRW9QERFkLQGRRCPH6PcJRQiUcjkxsltrp3wJJ3ooeBleT5sGuDDePkeIrSpKKt+HDFo5mtvqTwgoUFMzpSg016OaJhNU7wMt84JpjDX5N1q7M9a6TW1Fsr20hJ04nNdok0f+wjXrrklU7U+v827s4xDy9A5B5WfogAkhtOkX7U1D/k4W0Nkk06X
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR08MB0980B443F3471275E9768BF484B00@AM4PR08MB0980.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(93006095)(93004095)(3231232)(944501327)(52105095)(10201501046)(6055026)(6041310)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123562045)(6072148)(201708071742011);
 SRVR:AM4PR08MB0980; BCL:0; PCL:0; RULEID:; SRVR:AM4PR08MB0980; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR08MB0980;
 23:l4SYewy4OIrhzUI8dLoXFCtu0MzJMlhPFIhCdaogs?=
 =?us-ascii?Q?wbJn+vHPiPLKjEdXNamzDSI7VUdZs+ES0u9jLQ5Yt+Z5kwxn/YJhOZ3I8rvW?=
 =?us-ascii?Q?pRKkKod+n+Iyo7L8spyGj08PoRUqtd3nfALc/yQu/kgvRatrcuYgBXEau4Cj?=
 =?us-ascii?Q?FcL4uSBQV5e0W0q7WUVy8w4Lm4AnyizqcALwTNholLT1iBQ8/m+Qofydtky/?=
 =?us-ascii?Q?A0fWlIhI00v5qiGbnb2x3RPX0lj9yZur3f4F0tvqHuXqNqFO/umK8TAtjeLT?=
 =?us-ascii?Q?E8UX7inEZRooGtvwIcqsx6e85NY09lzSNZg6XX8UMvdOIj0mFt/DNMdHiLZA?=
 =?us-ascii?Q?gVGFaS13NRSZIUeAJYbJXhok/4GKeYx+pPSaNG8fqhFH1DO2yc8zO7G3y/fd?=
 =?us-ascii?Q?6IoDmsI68QWF9SVfTlVjkdLp27gvBwSeICBAWOXLelLhNYVXXcE1yae62vM8?=
 =?us-ascii?Q?Mnp5rjx4hzxvXwHPyqIK7xT/VOzhbI5swVkN7BxrjiiZ2/N+2RExXqYEvwnI?=
 =?us-ascii?Q?obbbYHF/OGAeZku1mt6cZ7ObbvDZ1qh5zrNyFKhFePeHxTrwZFlyd8LmyqS6?=
 =?us-ascii?Q?Y7Jv1CvaiGpKPn++PiS0zmOU4NJNjeTA75H34+Dq4I4ux+VtZ35b2j6MRjVQ?=
 =?us-ascii?Q?p1yhyvqmAzXz578np4MgJBvK7Y/SubeBLX/06N4+iT45xl6AVCWSyA8WUZAM?=
 =?us-ascii?Q?A4XFh6+xdPPZEVeV2+vCEBamNXnhJy+RzyHyOtIoMgepQMERLYd2uv/7H2lH?=
 =?us-ascii?Q?aCtlAvc56L99UdBc9h6R1kDT/OdaFiCVePYor8yKfXgSTmR/NeF1VvveKNhQ?=
 =?us-ascii?Q?GKL/uJifHefcCBRMCBKXXI7Dzq52iTpXcswpbWBZ9h0OY05YURyq9eHBW6ig?=
 =?us-ascii?Q?4SS7ZTJU38Avp3Ct9u9/A1OpdDVIhuvsYwGOfNIn+Uvr9N+WO/P0MWCvRj3s?=
 =?us-ascii?Q?8Xc9yzsYTtQMMISxs12Jh63gYp75GA1ZwtoRhNZpSGyjmZLBB9kagmp3MabV?=
 =?us-ascii?Q?yYtBxzYNslbPAieEOmH1iw20l1ywBVQ1r9Vjv4R0ExdBO1UKvhcJKpc0B8rS?=
 =?us-ascii?Q?tE3cUvCsfS7K9Wg03v7jLCRrGLxiav7LjfgmK4jc2vkgC2Reg5GFFgKFS9C9?=
 =?us-ascii?Q?xKXZd+N+QfKFK0ASBuIcAQBj3EYoBpk00RNA2w3X4Z8dZ+KTHoq9g=3D=3D?=
X-Microsoft-Antispam-Message-Info: wxaF9fyxibl1OxPbrvR825sy+nWJ/TD9VZNFC20mYqJ8HexrauixWX9cRm07EyE4v3bO6BYM7bDL21nCPNeTK3jnvBYPwdwbQEqZdvdNWWYxEGXrai19W1OpqbDiLq/3CY9W3C/X04OkbZwvtHOGQJNiVmmOnGQslpez2ifvjS9l1hZQU8n5jBvULcWFDtWg/71rOtpWthX5EyV13hSaDpW8FeRGuqt8oAtRkXf5MrMUwqFPdxwfFI4/oP1MsuChqBBBEd7Gs7GgS7BBcfg2Mdc/mpBS3f+pxk1WDyFLE+TueMCPzAPv3lL292yBdeYUCMpqdKOqy+1nMl3d2RhsfuH/W3Iaw6dYEH6x4cdbhrCYdVSEjWz9rWX/sJRc+3F6jMebq4PrUADCrFPdeiii/RVbtcsqWXRi0U1KUyN+4WA=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0980;
 6:81yyHthpRyfF5xa/M4TABeNC4KumL1p0PTR3oaGtGkHW/U0bvsq05L3OF2hXyj0Vs+Lobosqco/QeHaiMly3YFDHQ1Ne2oEPr1urmnIHXc3ws2lDJyom+KC3ZOLNZdNaiTwL1qjgFzsvo5H4qlKuclKCsrDyf9i7tjZttyUMbDcVGHK1tSAt9hr0bA8uGliQ47PJfZnbEohiy7hPs5/PYGa4tWRbq3yCNvpy+P9Co3cHLO1kbE56DO4i4dVXv+LX78ujDayWkQAgTLE4ewtQifZq0h+gx8pEy3+2ebMSlYnSEXTEuy7jfibwj/CMRYx91YKRI2FOcw/kS2LiKA/yDxHkeByQ2mPjq//26HCwL3RTFj3SPufCvpkhW6y9Sfc7hZstguokT6HFsNY3mbNxh2+3tgEL2YOHfxxYoSC0hgQ+PAz8ii1zaKJ5TefQqI+X9NzrvuNfdZqnJxNuh1TwAMvEqKmFv35StTLOTAPz3Ze9/iU5lTo1eSrrT06o7dG0;
 5:ScjbRUZ0fMvmT6SiBztUfiabDJ0i2hN7CvlLt6OHFnw2c4710j1oDWocLh7T7tHZqVGG3CFzJtzO3jXIJin1wGArwS5hbfWXA4XzLjqIOmxPx5GgLVsQ6x8oSwyR7vbRRbBSxCskOPBN/PXjkm+8/raOqpXwtXMyB3B0KzBMMVU=;
 24:cMBByp9P9IAdwVcnI1TYn7N1y6oWZR0ZMDOuMYxK9UR9tbn6uGOG68pT5IH8a7UMzyfIf40ks4/cO7Yd2+7+QvVjVs7bdRSmGVVGiDkd0vk=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0980;
 7:NR58ia4pkfzznv+O9UL4xO0GqbGPHUhSZWX3NvBDCACAruAOHcjlDizn1p45d4AsjwX497+SSqJYkQ0Hf2DhV9IacwjVN1U56ty9WtlJFT9LRk4G+7druc1qQVWXznn2DCTIdq4v6tY3z7GN63fDy6we2Y0PH7CBvAms4p6wLx/AsKauEnJYHsFFyTdXdbfBcTZvAJUm85VGdZfveMRYaCxCYYxkZlLutwOYdXWdfTdNs6L6MPv7UaX5iG3Mee6m
X-MS-Office365-Filtering-Correlation-Id: 2b4a57a2-7e4e-4110-f9f0-08d5a3641ae4
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:28.3407 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2b4a57a2-7e4e-4110-f9f0-08d5a3641ae4
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR08MB0980
Subject: [Minios-devel] [PATCH v3 24/43] arm64: change sp to "unsigned long"
 type
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlICJpbnQiIHR5cGUgaXMgd3JvbmcgZm9yIHRoZSBhcm02NCBwbGF0Zm9ybS4KVGhpcyBwYXRj
aCBjaGFuZ2VzIHRoZSAic3AiIHRvICJ1bnNpZ25lZCBsb25nIiB0eXBlLgoKUmV2aWV3ZWQtYnk6
IFNhbXVlbCBUaGliYXVsdCA8c2FtdWVsLnRoaWJhdWx0QGVucy1seW9uLm9yZz4KU2lnbmVkLW9m
Zi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KLS0tCiBhcmNoL2FybS9z
Y2hlZC5jIHwgNyArKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRl
bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL3NjaGVkLmMgYi9hcmNoL2FybS9zY2hl
ZC5jCmluZGV4IGQxYWYzNzkuLjM5NGIwMDAgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL3NjaGVkLmMK
KysrIGIvYXJjaC9hcm0vc2NoZWQuYwpAQCAtMTAsNiArMTAsNyBAQCBzdHJ1Y3QgdGhyZWFkKiBh
cmNoX2NyZWF0ZV90aHJlYWQoY2hhciAqbmFtZSwgdm9pZCAoKmZ1bmN0aW9uKSh2b2lkICopLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpCiB7CiAgICAgc3Ry
dWN0IHRocmVhZCAqdGhyZWFkOworICAgIHVuc2lnbmVkIGxvbmcgKnNwOwogCiAgICAgdGhyZWFk
ID0geG1hbGxvYyhzdHJ1Y3QgdGhyZWFkKTsKICAgICAvKiBXZSBjYW4ndCB1c2UgbGF6eSBhbGxv
Y2F0aW9uIGhlcmUgc2luY2UgdGhlIHRyYXAgaGFuZGxlciBydW5zIG9uIHRoZSBzdGFjayAqLwpA
QCAtMjIsOSArMjMsOSBAQCBzdHJ1Y3QgdGhyZWFkKiBhcmNoX2NyZWF0ZV90aHJlYWQoY2hhciAq
bmFtZSwgdm9pZCAoKmZ1bmN0aW9uKSh2b2lkICopLAogICAgICooKHVuc2lnbmVkIGxvbmcgKil0
aHJlYWQtPnN0YWNrKSA9ICh1bnNpZ25lZCBsb25nKXRocmVhZDsKIAogICAgIC8qIFB1c2ggdGhl
IGRldGFpbHMgdG8gcGFzcyB0byBhcm1fc3RhcnRfdGhyZWFkIG9udG8gdGhlIHN0YWNrLiAqLwot
ICAgIGludCAqc3AgPSAoaW50ICopICh0aHJlYWQtPnN0YWNrICsgU1RBQ0tfU0laRSk7Ci0gICAg
KigtLXNwKSA9IChpbnQpIGZ1bmN0aW9uOwotICAgICooLS1zcCkgPSAoaW50KSBkYXRhOworICAg
IHNwID0gKHVuc2lnbmVkIGxvbmcgKikgKHRocmVhZC0+c3RhY2sgKyBTVEFDS19TSVpFKTsKKyAg
ICAqKC0tc3ApID0gKHVuc2lnbmVkIGxvbmcpIGZ1bmN0aW9uOworICAgICooLS1zcCkgPSAodW5z
aWduZWQgbG9uZykgZGF0YTsKIAogICAgIC8qIFdlIGxlYXZlIHJvb20gZm9yIHRoZSA4IGNhbGxl
ZS1zYXZlZCByZWdpc3RlcnMgd2hpY2ggd2Ugd2lsbAogICAgICAqIHRyeSB0byByZXN0b3JlIG9u
IHRocmVhZCBzd2l0Y2gsIGV2ZW4gdGhvdWdoIHRoZXkncmUgbm90IG5lZWRlZAotLSAKMi43LjQK
CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3Mt
ZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw
czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:40 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xiq-0003HG-8m; Mon, 16 Apr 2018 06:34:40 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xio-0003Gr-Ve
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:39 +0000
X-Inumbo-ID: 1a8d3769-4140-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::631])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 1a8d3769-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:33:41 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=K1qB2ETgMkByMdVhwWmOwanlAZAzdp737+le35WsSmI=;
 b=CzO7I1Xq/ST263UCHL4TPNyYIkOGnO+TIKRXtMxNmo8cjKBZDMKOclju8Awur+Fzzki++nfZbs9w9kOdWkJ8Z9jy3phTSboBWRwnUf4d69GXGmXDk32E0vmgToVsBHIQ2Yo/uJSDSICIIGNRuWJoDVaoKSlQ4bo4ZAxLQjIFPto=
Received: from AM4PR08CA0002.eurprd08.prod.outlook.com (2603:10a6:200:1a::12)
 by DB6PR0802MB2424.eurprd08.prod.outlook.com (2603:10a6:4:a0::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:34:31 +0000
Received: from VE1EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::200) by AM4PR08CA0002.outlook.office365.com
 (2603:10a6:200:1a::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:31 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT048.mail.protection.outlook.com (10.152.19.8) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:31 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:20 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:05 +0000
Message-ID: <1523860343-16382-26-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(346002)(39850400004)(396003)(39380400002)(2980300002)(438002)(199004)(189003)(5660300001)(6666003)(6916009)(51416003)(106002)(76176011)(305945005)(4326008)(186003)(36756003)(50466002)(48376002)(7696005)(54906003)(77096007)(2351001)(26005)(316002)(16586007)(486006)(106466001)(59450400001)(336012)(104016004)(476003)(2616005)(11346002)(47776003)(446003)(126002)(426003)(8936002)(50226002)(478600001)(8676002)(39060400002)(26826003)(2906002)(72206003)(246002)(86362001)(356003)(8666007);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2424; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT048;
 1:aw/eTwKTPuD4Vqy7C/v8LMM9fPfbquDd7ONQPi9WFLitBzoLrqztp2Pf4+pMDwmVVanq9RxbDEE28I7W4DitwcJT3vlxPQ/mJU8MW7EQ+xkeNfjz6Wd7/LJxbkI+Orv7
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2424; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 3:SK2yATDJ3JE8Ut1PF3dAkqJ0ayhsEy+vRLNJngdSsvzPrCldhFskZI5BYPQz13QkLqw/bEiG4Sbo09PjsxSw2XfHz+UYwagiif2IHZxPP0WcuvIYeeEwgNaaztQH34+vgZwyuWqqqk6J/5lurnWodttk8uW1gb91d+gvHlufof459gLmvR0NvihKY8YduH8ksmSOhCil/BcuBxDZ+291nG1DOVt5pekn9zQ3Dd6OylZr9J83SSRfESnWLM+BQ22/WLt9JOmlUhQlPiOqBaSvGlEpYJLaUuRLNFeyH6LIz42f9Nde9wQ+5zTro/aHZBXUAjP9YxP8JeaFTNpZcg4JW8vsnI0pr22n5MPNxuXAbws=;
 25:u9NSwajtVvcqr5UiwKZNqxTPuIXt0wVuKhH358jSL7ODf8DKKqSOo+Qt7SCRecIujwWO2w8qm9VnNsme573+kozk1qu6Gn/FGrQaKu3JHZP09g13bnFdSzLkwSQkA4pepn3nJQC18KQcUdH3fylw6TjL/8B12RoSdtGxMAoBkWAYXVX5vKkqUN7osPVb0S7Yu5l1MKh23kqxHNDTgUIQVJKvRSiHfMFJsCw1EjtaG3kM6zwwWAELw1HGosqHmAKOwjmTogrm2l+ifjV72O3V5kB0SEqtKQVt0/eQcyADKggtQxtFKRGkDzQzpvAWTv3a86u1i69EXa7QfWEwlLw/OA==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2424:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 31:yANVuKPvp+gYcCCws2Pl//wJBqIYdrudaWwi5A7S38r2QW1Z/qXjoBOeD/VM8kKow1KvQu5KJsYHN5jqSbe5UnZnncn+k8Su+3vmZyJhGDIM1ti8i86BSgVbmbF/Hnh16P87hubY8zqTeXzvbt6Mo9v3TkAWnsaeRIKk6FcOUY0orx+5BsENWwoITczIc0C3ZZW4kwUZ/8cvaUQi4G6+0RjU5x0Zv5ohnX22h4XlMYc=;
 20:4UVlNxeju8kdHNzMPdEprsAZo6c8v/z/ehzhySrb3XI9qEcqXnrQZijEzXOVpAlowc8XL/cKjAwMi+ZoEb0pY6lCLKGPX6NiJEeGAH7wTNfAyWkH39qXHQRU0hbCMF9R+ubG+a/Cj0tx8CNqgHMNwOdiNLasjCOesIdq+SQl4+M+OA2x0hlexNUJxV4QEZ/fbICvP5yG7JGlP6myBQVZIxdojlV19bKZndVBpSCXUuZVSMKx/ehuZPmLVNOcwu0R;
 4:zzIcHGrjYC9MZmYsEFjk75w5RdMLLF+1mAxp0ZoSWu4f+wSXbJnaMJGNkPIKB2WSjL4FTZ56VjE6L5QWl5z7EXH3KmxiNIhuNEQcZ0uAFs2cAhFv06f/+K99SXyqKyrXejRNEKdliOsbVbKduZhSD4jZB+ItEtA7O6GogPhzEm1B1EdvLaICQayXQ97lE4qRjYPfudltxjMV6rB3dnaUBAfeaLpM6SOu05rmmrkKaXjgS/7kW9DKnH8q0u85mGAVXqemDMH2c3F7dhvelMV7GVbaosj0huz3P/ld57SRn/4SuHis86uBo+Je5SOToD3IDc4Q6Dat0vfq0ODl+bgEP/cdG/I6OEmSmoiP/mFsO68=
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB2424C458D596B12DE3C37F1E84B00@DB6PR0802MB2424.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(788757137089);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(3002001)(10201501046)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2424; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2424; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0802MB2424;
 23:QGNbmaNjjKoBkBpnHzR4ESb7XEa+Co4V0P4HSNR?=
 =?us-ascii?Q?IzS+4jaqL37V5I+l3oHO86/cHX7vBRbIwJu+nNDjVvBE85os+gN07Fg/NiKg?=
 =?us-ascii?Q?9LYKOUrT9eVuJTK4/acq55mbZySkFvJk0SC8ntZV2Gy82FkzVxjZoS18Vp5O?=
 =?us-ascii?Q?Frm0LtQc10yDRfuwPUrkUsuDUFrOdA+oIXnE+4J3lRy/VidxHaQnMBzuKv63?=
 =?us-ascii?Q?2EtIm/BejRDRo3Rsml/QgA+nQ/xonZBIAPF+iGyO6alJoLp5IyBIU/4GVWp5?=
 =?us-ascii?Q?sHRYAtQelBm0HuWA8efc3FzLa18MGKKFMVoSBX/cHiv6CatiLJ3+ORr8eyoV?=
 =?us-ascii?Q?++5B+FM6slp9xTcZU2gC6HtFp3Onu2s6yOAUb54AZqMuuMT8AGAkRv4o2KJR?=
 =?us-ascii?Q?ZlXSc31+CwcTcKWNaRiMm/TCjSNpgMCjYwwqcXwOi8UTDiQhiXvBggoEuTsJ?=
 =?us-ascii?Q?+3guyys7EIFQiDRwXls9LlA+/8RymAAWOVfa3BINE6bBiQ38/bdZNpLnAWWS?=
 =?us-ascii?Q?O2gAR0ZHBMZdrJJajmtzoTT+Owyxq4a8DGntl2VZRfZ3nXG1PNzDZspRlvBU?=
 =?us-ascii?Q?Qg2mIWqIw+xa1MOTRhLyM0pq1irUve8I2DS9CKQ1PDMOBdEcSs2qBXvygo+e?=
 =?us-ascii?Q?GhEaVmEoDUjKmjskoYS6jeCUsbjbR+ngXRYwa038AXRBkGM9RnoR/absjZLh?=
 =?us-ascii?Q?dmoIfcJmDLRpExdElG26Ikp5F8B8sT/HHl/dWjDluGiaDiw3SUdxk3hdwyPx?=
 =?us-ascii?Q?45HOIp2PEkAzSBd8pLm9902iLsDn8XLSIfurpHR6BydgqdokKwqUoMEW3YGE?=
 =?us-ascii?Q?ySDteQuiz2D3FlRenBAQciR836RmNds+Jam4fRUvbFErw8J6D7jF7JUBVA1N?=
 =?us-ascii?Q?xMJiiOiN99/9QsxO+sh5MAY4w95+eD2UF7eubKVOLN7U16Nv/G8lFftA6giY?=
 =?us-ascii?Q?v9b/hnLQH0LH0+1lrCeKGDNA40qjtv2MlTn8lZCn2pMGYUN8x1wUJ3TMpB4o?=
 =?us-ascii?Q?pCyNFHTpXFUsw912iDclpFzBPJmVXE2CsnM3RMccnPLEA3qkN8Eahv7c/R62?=
 =?us-ascii?Q?icFSEr624Bp03zs8PMoNzimOMe4RGIlPX6utyqy1RTL11aSJYy/P8CuZDdrM?=
 =?us-ascii?Q?iX0lwh7hhtSiTGJH5T4S4hUHHaZInj9440jahiCvxM7sD389XvsybeQ=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: HJCG6T88SQhPm86+pkVS4r8UDr8V1m6zvyBmmCF85Po2TfKUd6LxZQrs0CH9x9Mir/t+SlsZ+3nD3vo55dNhib4EqOuIF76+lZ2PTVxjqXT82f1QjuJCqTCflmRCBTC0tTM95xa4XR6dQ0UvqH2K/0WBGDR3Sy6E7e5e+YUbu2z49B5GtWGFl0i07+9xNCagXWX6893hvcYZBaY1it/irnlv2JHXdZYgbKiI+HL9oZYPZkfVR4nM7ieT2KzAIju+02O0isRnUEYRuWsmRj0c7hXVSKsZx3kloDH35HouDxzB1efjiyAeoZTLs8PaSffPLfUC7chzJ4dRUZEqOhIZYYOxs+vCEFlu5XgPoiHEATRMEPcItgoXqsENJE/V2CWz5fgCikWvLqdrlWJ4wG5IMiIbuX3f8kYW9nr6RzbCWKc=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 6:FtAv0BpwPFzCUlW+vIujuqMowXTkegCI8lvssC8soYbpQ/4Z+Pm8G4Jstd+3OCdpuM9gMnpEyxHoHzOfOeSgaUr3Q0hIWt8vcSB3VGc9XDwVLoNUgyiLPah7/ykHQgOzSQaO6mCCCaX010gHiLhvlStXhKjk58FymPhPr85MbPu2ICmnEw2XiJ1Qp3gucJUPaXmMoGMemqii7NRmrJSK7uq7LCS4x88DBfa1K4o6VomVSkmG8xHL7R81KlXYLZQj86b4O/tdiUNzZ6RXNXncU6Zde09qBBH7MpLcC0YOKUvJV8ZKb8y1B/k8FDIOxIxezTEyHFSHN9OujPnUO+cWTUAOdDDTSXxCM9Fo5iI2A+TPh4szrJxoLoup9aN3Jp6+GUr+gSwV0HAvZIHlfehzvtn7q6QGztsB5Z+3TKUKWT4ilzhLn7tpLROL8/JZXsVxiy9QggW3LGJxrTNi0iwq7DipDssCfVgJBG4dcbkmJM350MQSnD0bHF295d10aKi7;
 5:epS/fODE0jai3Lq0PAnxLb3NlrHZEa0LCbHF1JGIqA5CzzvdjUDDxFO9VWprrcw+hi4cbJaGFi1DbJ8wYDWxxoVJeVREHZIzY0V4W40yL0/hmGg8mFKhzrkUQHuRXJ44mSbj5qn/Ch4JqLMB4Vg4Tjw5b8YaCsj651MbsBuiemM=;
 24:84OHtdksFOk7HgjI/xs8uveVErTE33E71BIHGvU3L4a48W3XgEZZlCBUdguQr0tSWFF+ADTRKzXTWblTQc/hwQGn+25WBSYpoLm35MLx0m0=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 7:88JIIFi4EMsNI4csTomU0r8WWWNQI9n1b/lubch3HVLhXd5qM9hi6JjgbMk+A4g5ceWoxwBqVaBx+RDb12n55DnoQOrmx3mVnG23tQB+4dz3XBQj6+mMY3iHuf7ez5J97AJDO1q1NTR/VW74mLljJSXtD+IXK50YC3C++X+lOCT+++x9zIyM72J5DXxcl0WhZ0qPYTIro74Mte1C7MR3zd0LwijhnAZZUC9A6IF65U7ZnmLP0LiIgjx91o8XALj1
X-MS-Office365-Filtering-Correlation-Id: 2eb491f2-ae31-4914-7261-08d5a3641ca0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:31.2158 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2eb491f2-ae31-4914-7261-08d5a3641ca0
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2424
Subject: [Minios-devel] [PATCH v3 25/43] arm64: fix the wrong size of the
 register
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIGNhbGxlZS1zYXZlZCByZWdpc3RlcnMgYXJlIDY0Yml0IGluIGFybTY0LCBub3QgMzIgYml0
LgpTbyB0aGlzIHBhdGNoIHVzZXMgInNpemVvZih1bnNpZ25lZCBsb25nKSIgdG8gcmVwbGFjZSB0
aGUgaGFyZGNvZGUuCgpUaGlzIHBhdGNoIGFsc28gZml4ZXMgdGhlIHdyb25nIGNvbW1pdCBmb3Ig
YXJjaF9jcmVhdGVfdGhyZWFkLgoKUmV2aWV3ZWQtYnk6IFNhbXVlbCBUaGliYXVsdCA8c2FtdWVs
LnRoaWJhdWx0QGVucy1seW9uLm9yZz4KU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlq
aWUuaHVhbmdAYXJtLmNvbT4KLS0tCiBhcmNoL2FybS9zY2hlZC5jIHwgNCArKy0tCiAxIGZpbGUg
Y2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Fy
Y2gvYXJtL3NjaGVkLmMgYi9hcmNoL2FybS9zY2hlZC5jCmluZGV4IDM5NGIwMDAuLmEyMDk1MTMg
MTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL3NjaGVkLmMKKysrIGIvYXJjaC9hcm0vc2NoZWQuYwpAQCAt
MjcsMTAgKzI3LDEwIEBAIHN0cnVjdCB0aHJlYWQqIGFyY2hfY3JlYXRlX3RocmVhZChjaGFyICpu
YW1lLCB2b2lkICgqZnVuY3Rpb24pKHZvaWQgKiksCiAgICAgKigtLXNwKSA9ICh1bnNpZ25lZCBs
b25nKSBmdW5jdGlvbjsKICAgICAqKC0tc3ApID0gKHVuc2lnbmVkIGxvbmcpIGRhdGE7CiAKLSAg
ICAvKiBXZSBsZWF2ZSByb29tIGZvciB0aGUgOCBjYWxsZWUtc2F2ZWQgcmVnaXN0ZXJzIHdoaWNo
IHdlIHdpbGwKKyAgICAvKiBXZSBsZWF2ZSByb29tIGZvciB0aGUgY2FsbGVlLXNhdmVkIHJlZ2lz
dGVycyB3aGljaCB3ZSB3aWxsCiAgICAgICogdHJ5IHRvIHJlc3RvcmUgb24gdGhyZWFkIHN3aXRj
aCwgZXZlbiB0aG91Z2ggdGhleSdyZSBub3QgbmVlZGVkCiAgICAgICogZm9yIHRoZSBpbml0aWFs
IHN3aXRjaC4gKi8KLSAgICB0aHJlYWQtPnNwID0gKHVuc2lnbmVkIGxvbmcpIHNwIC0gNCAqIENB
TExFRV9TQVZFRF9SRUdJU1RFUlM7CisgICAgdGhyZWFkLT5zcCA9ICh1bnNpZ25lZCBsb25nKSBz
cCAtIHNpemVvZih1bnNpZ25lZCBsb25nKSAqIENBTExFRV9TQVZFRF9SRUdJU1RFUlM7CiAKICAg
ICB0aHJlYWQtPmlwID0gKHVuc2lnbmVkIGxvbmcpIGFybV9zdGFydF90aHJlYWQ7CiAKLS0gCjIu
Ny40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWlu
aW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcK
aHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZl
bA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:45 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xiv-0003IR-BS; Mon, 16 Apr 2018 06:34:45 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xit-0003IF-UO
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:43 +0000
X-Inumbo-ID: 1d0f803b-4140-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::600])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 1d0f803b-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:33:46 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=xxQSJIjswDgr/kNbfofHN5uXOiVkBvnhc/xgZ5RwdFU=;
 b=PTN64oDFiISUw4h+B+BcOjYn2jKjJxvTNmJsK6XCsi7FfbVNHrZzE86EsDaePRLZi15TNt15gGETpvb1IDTc/kygU7Me4IYRRA00zG08tuc3dQ5Cz695Z7kANJKvBbUjqvbBkZIGBy93BGHeZ91fKJau2u1s9vSlpNP+YEKMMdk=
Received: from AM4PR08CA0004.eurprd08.prod.outlook.com (2603:10a6:200:1a::14)
 by VI1PR0802MB2432.eurprd08.prod.outlook.com (2603:10a6:800:bb::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Mon, 16
 Apr 2018 06:34:35 +0000
Received: from VE1EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::200) by AM4PR08CA0004.outlook.office365.com
 (2603:10a6:200:1a::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:35 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT048.mail.protection.outlook.com (10.152.19.8) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:34 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:25 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:06 +0000
Message-ID: <1523860343-16382-27-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(39380400002)(376002)(396003)(39850400004)(2980300002)(438002)(189003)(199004)(246002)(4326008)(8666007)(305945005)(356003)(39060400002)(104016004)(47776003)(478600001)(36756003)(8936002)(2351001)(8676002)(106466001)(50226002)(2906002)(6916009)(6666003)(26826003)(72206003)(476003)(11346002)(2616005)(54906003)(126002)(106002)(316002)(426003)(48376002)(86362001)(446003)(50466002)(77096007)(5660300001)(336012)(486006)(76176011)(7696005)(26005)(186003)(16586007)(51416003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2432; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT048;
 1:6UParvcdJybu3xzoiSbR2gCmEenwUxPzMdROGomdMzb/T1ND584hsw4YEwaLilIe+ZfKADGlGRXQFFV3hQc9GGx5Dot8UKrbgvKheCTgAiTlyYEnJC6qZAzZz8lhwaCu
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2432; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 3:0sTUXyaLn0+0Is5QjlxzsHjKZzMkky5KZEM7vvnuzGCLSLTcL339wUcSiE5uT5LVd46NJX4vpTCrDIz2rDS1yAzGZTyLm3spG6lXq++9GzVMATaF7k2v/BAUTsnoE7KDvmW3GxZYAgXLzYjkDml2yukEJtKcf9nQ1pURnJOb92rt3fYLEWV5mm3It9ZtLQT7udHWCGtuYR7nf5P/JXT4l1rHKhaN3wCCS32liDnkUzBaUnf4j3lfw/jyl9i4wtHWkfwkGbvK9+yb4fsQvk3EAlh6CZ1I2y3u4tV/kw3mle52FCJmZd/iWdNgdzs5vEov9C0IHp+hgTPMbi6xLlC0NAc1At8BjLln7oyZzCzWeuU=;
 25:MeQC4ZYYWqWxC62X+QaWWSzcSJaNCMGjrRImdg76paKbLFToAmNvwqF4MF+7jSE22tODwx3mcZPOb/yOcYon5OgD0fHff2RDBMUCem/Jqyye3Sh8M4k0awILVsyWMLoSuR1k/NI1MUzn/pN2AJxSQh71mvPNkQr0csX5tcpKRsf3igFzEgfQqsnoU1HZjbQNc1IaXUiRaPEQ8eHiBKp7SkTMq8yBNje3p/sXwl00l0/yF0VEqjdGdSLKVB5tLD5qASgZ1PuIDBZtloRGgpuhPCp+jMZZKHP6SHbCLty+TArXNO2VhqkOAEqULIqhe/g8IEsUHBW9GtR6NoLw3jHzGg==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2432:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 31:GEiz1LAyYgaP0aD65B6Cjvi8ymxUoyd6YqWlFeuWkgWBIBQ0D2JxjZ+GNlYgeY3fUqxvGIXa/HFMzAHeNRRaeNvaQkvgqD7zi/m+XzaKQkzWO83AOXAvh0SGqt7t8ZiY8itRa/DMMNbzmfigvgR1Q8+G7fQe8TRyAMaBFxOjRwcvOnfnoXKmu59nLVKh3sEsB5IFTOhswZIyNoDM641geFU6cgWebtwzHp+tv0yWt2M=;
 20:yccNMon+G6X0Wy6K0oIchvNpxRSPcfLhGhSzlVctBTuiV94halsxnreezaKTjXWQUdi750LthJn/hnCCPf1dwCbJXFRFdF53ALCieDOdbOmzThtwA8zUEYml4h2Qk7zqMcRVSHi+N32GRe4a7H5dSfrf1bP7rIdsA9dd65aWd92szsqpjxrN6kgi4dPgdQZy9FZOho18IWg/gRv6O985C263YrQGtMsXwzQUKXpunujh6ZYttvXyYzgxAPAn4bO5;
 4:kxz+HdeCJt6sOHdpmVakgN9CnvKSoW5i+KtXUZh5R6qxZB1NVi2lXSmGrgRnyEYYsuuXECJgyVASdAsMKujwV7jcj9vXb+U2/GTsjnQV7QsHxZrRw49kE8bwr3qt/UCPs7n7HsUc83YGd3dgzDvQx7gQ+nBC9pxLbLmgHRc3uBkvPwN7O897t6tzEYYn7V8A8NLT2ScJEyav/a/R0CcOXCLBJKSQ8UXXWVrF/L/z09fe8hETLqvEamTiG+z+sk51m91Jp8VmlIjvXgb+tICrHcvFLgnKka81ZoQSTj/AK39KwIJ1iz4Oo/gtpkfDkDFm
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB24322AD058D71E6C0592A3B884B00@VI1PR0802MB2432.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2432; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2432; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2432;
 23:ImmK5WZytuZGV+kvAww4FM1NXQuyVn58s4DymsN?=
 =?us-ascii?Q?M7Tg5JyBEafuFJ3Z5On7qQ68mgX7QssGD01oz5ZG5eoREBCC6HmA5e0WDBd7?=
 =?us-ascii?Q?DO/ljkWWy0JGSjW59QjsFmArE7RcxdOUnPhH/fWNqmi0jnW+ULde0XBacYBo?=
 =?us-ascii?Q?kloELtwvRvKYvpg8ArPcR3H7BctwG/lrdsUKZCge/CoxWbQFvqQk05B2MnD/?=
 =?us-ascii?Q?8ZQvq27ZApSZtEk9Ptkysjix2EwOBJsiDAsexm2q0TiHsIfu5l1z2kf6wReM?=
 =?us-ascii?Q?c5YCPmoLk83aewU2/oR07UzOh+pM6EGKgMvsVQYd1LXhqJie/5z1WwUJRBCE?=
 =?us-ascii?Q?rMJTGcgFI/0tdXEdPK8/La5LCQTb/uZpGK/NdFVKjkYhqhoIOWcdBb691Im8?=
 =?us-ascii?Q?BLzfieX2SmmHmId2qiNOcugOgtKSgqfUXP0Ojzu+R5V1NsiBrIfZi4VRUw10?=
 =?us-ascii?Q?/8VKf8EjVxk6cf4wRO0k1/Wkzm9giTAZWeEUWIiRYlmPop7JN4ktTaGodDZl?=
 =?us-ascii?Q?2ij2kuo9CSBQ3IXcAp15+mlfedk3edD7qCq/MYXqAEhZzixHvKUvt5VT4zKi?=
 =?us-ascii?Q?0ak97SlPXTR8e+byQNjeNh7hQJbIBXI4CBwteLwfXgDfZ44KlRBDmmsmMo84?=
 =?us-ascii?Q?dmzpOCZtAOUWELWRBmKEAbX4roqIWts8+FqBaCXQIEqr9P1wcTe0c7AmkzNX?=
 =?us-ascii?Q?HtoEYu07QLr5qYwd4D5pT9QW7mRXiMMOGVuGjxBz7NVAr3eYzQNwRN4YWrXx?=
 =?us-ascii?Q?bTFF71x1eySkaqD3s1gTgjF9xR0XtRhMXaWFpAkCAi5uMpVy/mj62K0YSakv?=
 =?us-ascii?Q?z7c0rYYPJPe7XpzXbORKDCpJKrkEbrRncM+AP3O+JsQiheSj9sgyUzt9R9m0?=
 =?us-ascii?Q?o9X1PfNNplAbSn+xbqrFHmgSNThbxd3dFvveMeWkeAvEmE+yBbQgzg/aBXZ9?=
 =?us-ascii?Q?2IrUb6RnaChSLOZ6PbjuILpReDVZxMDtuEwJ4CEDo8uzhdLXR9NsInRpEDZF?=
 =?us-ascii?Q?y8sdHE7CKmgwIy5EA4Efo0rzrTufmmgqWgzVhlMCTAatZo2lDkBBcakKYPo0?=
 =?us-ascii?Q?yWyvvLOGlky+bkd/p7uiTvJuy2Ui6DZQ/bC+AjqPBQ1AO30xvWgry8lRWCeb?=
 =?us-ascii?Q?R5dJUd8lN9VqqowhNimpgqwzRtL37M8Vi?=
X-Microsoft-Antispam-Message-Info: l9bMm76FeBOGh4VHnPMBTuBxNaPTOe9S6OfQUHdhH2gjzK+oOurmD8BsgP1RGGcCUAtvtlHS9qFu/dRKhIzU7sOZmnV2cU3zVWbDu0tXOsSTXamEFpJQnN7B+fCKzpcvRNUgqwIdALOS5cB4PW/WU+b20B7gMpbJ8WyILVeov60haH430qbNFYc4uiTan6XyUm8llWic5vHzapvkgnrkyz9hF/VVnjkIQ9ICzbKEopiZNtOJD/yQSRZBT4VMyzgiVWacHq/HiJWMpldlNdGysg4rT+OROLpYiW75PBPcJXtj9Hs0yEOLaGeox+WtUeA127XF7ea8KAKecFz81Ky/NFJ2LRKlNqsFMsqK2rMiEoc6+VhqV5eQ3ociuzgSQ7pLnfaDGv7V0pBunIRDwUQPgALsH50L/wk9fOA7R1ldhi0=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 6:pSS6X0McE13WgzO94Tj3ICTs/Wxcy9ShMzGZprnPvVoTc1hEiwB8Ul0oBKQB5whMo791XO3NjfziOYtFZJcEqg4xcD2yvxU0Q2HIcGXZmbzUiCaJ2yj+zF2GYDpbNOzorv8o4Oy5PKS2QuzPEdXXkNp0IB3L3aEGTiK2EaZ2cJgyB1plRBYKdLqRhU5VNmhb+eSxYBekYwsY4JelkJnDCzhyiiOU1+c4JysnR8FqKJw/ewAHe6c1hrZxR0l/Ts/y3DE1S8zOPSCA7bjVV8dbXSXe0Fo3umL3A54coLsdpQ9Xpb546Z4/uMtmRg/3eMOaG10dbBCZvBMsnX6uRF+6hbycN1ZIe3KNDsMm37jmtAea/qoZmcgLlYkV3z0ejb5Cyf85oi7QV2J2pNNsCLz4UCAurkVqYJGkFeh3VPdzMKgPJwQIR+WusotaI+ORQOQIpBzm1DH+DxZ99dtWI6kBr4TsFevLZB8d/o6TqJ2yrGgUU0DHJKqvQLuiiHeKCOR3;
 5:okzWb6OUkqZ7hBkUOSa3R1MAd5fecJjjeT0I50qL3hPHSziguVKAqc/UqfcS4vsjkJZEhpNvakBzh4IZLvaM4KYTT4cTjLOvwPnh3ODWhmJ7tfSE35NdEcIQwMMjjvktd6c7W1+O0KQsDD5DHGkR3dVWtiKczL9pUefd0VX1z5c=;
 24:AkRk/8xqp5/Qdyprotzz7L18N1kIDdg5DYm7HK+2USKaNHJ/LhKOehM/Hbjd5xPTqk4+HNRhMy2JzaglHlaLPWauV3OMpvtUcdYfZw3Tn9g=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 7:X3GqTl+4qsdsOsmHXM4rgeFYopFhyuFTafxwxAjjvSX3ftK3/LFtHddUQ6yMWe5+8E+jGO2cIOl4qcwrVPt+SrmBoIYM9JVSmZ8ajRte2qiy2m7V8VhAuzn4tofCSIdOWCf1OdtbwVnuQMWosNZYxkxxVWBBDeP669577OiEz+itOvqa8sIcLtm1oh6zE3jEMhHqCvSxshbb2BJWBJ25yO94ZxHrRYT3jIIPOyFfb8xfBsRfYBsjYiAy5DdcT+VM
X-MS-Office365-Filtering-Correlation-Id: 53062f9e-09bb-4a95-97a8-08d5a3641ec9
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:34.2315 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 53062f9e-09bb-4a95-97a8-08d5a3641ec9
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2432
Subject: [Minios-devel] [PATCH v3 26/43] arm64: implement the run_idle_thread
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIHBhdGNoIGltcGxlbWVudHMgdGhlIHJ1bl9pZGxlX3RocmVhZCgpIGZvciB0aGUgaWRsZSB0
aHJlYWQuCgpTaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29t
PgotLS0KIGFyY2gvYXJtL3NjaGVkLmMgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy
dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vc2NoZWQuYyBi
L2FyY2gvYXJtL3NjaGVkLmMKaW5kZXggYTIwOTUxMy4uZTYzZGRkNCAxMDA2NDQKLS0tIGEvYXJj
aC9hcm0vc2NoZWQuYworKysgYi9hcmNoL2FybS9zY2hlZC5jCkBAIC0zOSw4ICszOSw4IEBAIHN0
cnVjdCB0aHJlYWQqIGFyY2hfY3JlYXRlX3RocmVhZChjaGFyICpuYW1lLCB2b2lkICgqZnVuY3Rp
b24pKHZvaWQgKiksCiAKIHZvaWQgcnVuX2lkbGVfdGhyZWFkKHZvaWQpCiB7Ci0gICAgX19hc21f
XyBfX3ZvbGF0aWxlX18gKCJtb3Ygc3AsICUwOyBieCAlMSI6OgotICAgICAgICAgICAgInIiKGlk
bGVfdGhyZWFkLT5zcCArIDQgKiBDQUxMRUVfU0FWRURfUkVHSVNURVJTKSwKKyAgICBfX2FzbV9f
IF9fdm9sYXRpbGVfXyAoIm1vdiBzcCwgJTA7IGJyICUxIjo6CisgICAgICAgICAgICAiciIoaWRs
ZV90aHJlYWQtPnNwICsgc2l6ZW9mKHVuc2lnbmVkIGxvbmcpICogQ0FMTEVFX1NBVkVEX1JFR0lT
VEVSUyksCiAgICAgICAgICAgICAiciIoaWRsZV90aHJlYWQtPmlwKSk7CiAgICAgLyogTmV2ZXIg
YXJyaXZlIGhlcmUhICovCiB9Ci0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRl
dmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFp
bG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:34:56 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:34:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xj6-0003KT-Dg; Mon, 16 Apr 2018 06:34:56 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xj5-0003KO-I7
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:34:55 +0000
X-Inumbo-ID: 23ff4c53-4140-11e8-9728-bc764e045a96
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe09::62d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 23ff4c53-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:33:57 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=Y7sY8Jd4glWCwLxHyY1SUh2N1RzG894x6iv99Z/v76E=;
 b=DfWNbIPg7Uc7xX53hOKjOM/TTv5YWDbL/BauCL8BWTvpNsS6iY/u6h6Bi2N0OOr78UjlXjF3L4+llzaJGWBCcvMIsTs0BbIj1RVuW8Xt2Wb35TWudOz8U9zzNlQ6yDwg5GlEFl5rXMVaLSb+Jfsa2NmIozBwdHAod13VblscbGI=
Received: from HE1PR0802CA0004.eurprd08.prod.outlook.com (2603:10a6:3:bd::14)
 by HE1PR0802MB2426.eurprd08.prod.outlook.com (2603:10a6:3:df::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:34:46 +0000
Received: from VE1EUR03FT056.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::206) by HE1PR0802CA0004.outlook.office365.com
 (2603:10a6:3:bd::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:46 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT056.mail.protection.outlook.com (10.152.19.28) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:45 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:29 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:07 +0000
Message-ID: <1523860343-16382-28-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(39850400004)(346002)(396003)(376002)(2980300002)(438002)(199004)(189003)(486006)(72206003)(51416003)(2351001)(26005)(86362001)(476003)(39060400002)(2616005)(446003)(11346002)(5660300001)(2906002)(50226002)(26826003)(126002)(8936002)(47776003)(106466001)(426003)(246002)(336012)(4326008)(478600001)(6916009)(6666003)(36756003)(305945005)(104016004)(8676002)(356003)(316002)(8666007)(59450400001)(7696005)(186003)(77096007)(50466002)(16586007)(54906003)(48376002)(106002)(76176011)(2004002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2426; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT056;
 1:pnMeYyyNNQKxdAOlf5XraJrsUnE0TzwAuLUdClz68WqDirS/8Qun9jnAB9g6TdJekS+gYqIhlJT04tXX51Es3XeDsC8RbNKNdetVRtmKGPYYT2Lfpf3yA/igDSl1sHqN
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2426; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 3:Qevb/7QR4sMxcNDq3fjju+/kbEPAk4hv+Ffk5/AD2n9cbU9ImfqfQmWATaT8/V+xiashTNCsCuc5F//7/HiALfPPh+Gt630vWiJLbCr9CitqFplb8vLo76o6Ca7JKzkeJ4Jhzn+yrgSnsm1fYn3p5cBYgJkCuNoJqJ9lzNnqnRNHiyo0PXM64BTqILWzcUJIBHlaJ9fguHGRy/aoaVHBFE8RYVzREVSKIcO8akgqw2WTeYKS6LM3zohHP+O+524kIFDUFHqFtN72ktPoREohgCD6xwnf1hJnTA6Z93yTFp+rI5v5Wl95Ui40lPe2yUa/l/mhjG4k9RPlBH9IYO6dEk3L/exiOErDvXmRkKOpDoc=;
 25:sXxyqvS7yzxQorilrOyrkO7jVTiQaFrcZmbUCbkRWdRnMuhvIIdP4wk4BvOrNKUdxb+w8QdrJWS2pD9naBaU8Sx8mbPtCjmQdD756qgqX1QXKSD4XwuOywwPQMl1rYrOTLTTKtuC/mVVXuQrJsiJ0/1nAk0pcvypFFLC7nfeD86TULLDC16r5yo1tB9/qrwn9RGZxzK3pWqCwJS+RbCGUnKP4Burp5H0qafATgca7LOK6Z+fr/NpGIsWbKJnlaL1rr65WEH05hUNRSkYhCHMZFyx+y7uT2fYLHUGvR/z73i1dp0QR7YW6eeXFpWlXCMuWxtalGELw0HGybh+wONpMw==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2426:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 31:6N1jKJZGaOApWvDLCRhj3jtRB8rew+lgAiQJYbupl5ZsflqOzlhGtxG1VthDEehZe1GplTXJM2QRPdk498on+D32cTIPDY9AD6/IMNLEjCEtWcUmocyubuFGg0ABMeb3IMG/YWjp5YWiJYtuouHyVNrcEyS93ihtEeY1lf1WSHUX14S9h+zNGVNk9ePr9IifedY0jPclvjwPPezdEXDIeMLw5yp14IyAZmRsiKwgZ60=;
 20:0Xe1gCvZhE60DbR8+DYWG2WflXSZzPZlxnn6IWQ4KEG/35KyPurFhpfcDGLb5am53HSUAn4spSYHbBBdBfRkRz0PkhDm94ZwM1WOqAd0y4WGcd/OXXYWyeY1Qin1W8hJdoWGDuO72F0TOp5+mESJ7ZNLtffPUetB1vSgZC2qjv/7OCA4mbUFFzJ9k0SHIetFLJBuhbD5kGZhUEcM4Pm/tdjcYV3jks90QPwnD8s+ovd0FHv5uqbhyrJyV27hujxR;
 4:OkHj9tpH7GSt6rWjGk9y2X1CQ/mqpnUp6w8UjASgbpZkoqtcWKJRSKsTzbSjfAsuhoahqR/BGSGiU+5pf22NHTPaH71rrCJtxlDJObl8BlwLcgrjrLIvLUJN8bB942zAjlhNS/TsF+Fga9K/Ib/6md6jrIZMuUoc3tTogdVIz68qStCLFHvtCuCLY6ZK/9Pi65fFJxsMdB85FhcvWUBRGeVtmOCbhQzpGykFhc+bQaxoKiFHZbuy4G5H9AmRfKgSFYhOlSYuedO1zxL+M/DptBw1Kt/NUmonUIGXMfjLpK1eZK2v6PNzVbejn6O9cBgUPdaoFiGokuL7hCdR0RL5ADARhXBSYGyjhJCfulzCVmg=
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB2426B20A074A2742D31CFD3284B00@HE1PR0802MB2426.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(70601490899591);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(10201501046)(3002001)(93006095)(93004095)(6055026)(6041310)(20161123558120)(20161123562045)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2426; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2426; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2426;
 23:4dNOvZ/D2QUUottTUCAnS79PmWUBWJqsF1WuJ2K?=
 =?us-ascii?Q?PTLu3Zve1SpT4W44YJsWFODoV9w8hVTIHkEIUXdNOfTM98PuNPelJC5CEy0E?=
 =?us-ascii?Q?tkgK/7/zzpYBqxaCs0A+G+9FqjgcVQ3E1iqDYlOsB2U/yRj/cDRzQi8RQOSB?=
 =?us-ascii?Q?Dpq3lo/N6RxXy8PbvBVILHHo59A1LG7/xVDBBSMOCkwbGE/Ua80FdpHr08ek?=
 =?us-ascii?Q?FrMiTb4dE7zXtz+I8ka+8SGtlEr/9jNdpQtDcY8hP2zUoxBUL3el9/6appTG?=
 =?us-ascii?Q?ZDunh48yOXqB9UpMIx+yPC1ZJc5eebhKyEY4X/UaimFhlJV6/jfTVPMPnPa7?=
 =?us-ascii?Q?lUzOIBzH4z11bqIFQCvzuGQYHhpc381cZ3upquU7faa6NWqiPMoC3kxuwf/M?=
 =?us-ascii?Q?lhuEcpcmw8z7Xhx7OXI3CPk8oebl/iKREUmDKCBsILUZsD650EKp8BbJckZv?=
 =?us-ascii?Q?00PRyk9d/h9WmlRVp0ZKpdn7bqTyf6nWn+i8u02E3lJbsidAuCWckBp9e6m9?=
 =?us-ascii?Q?SBpwmEeA02ul1FXL+F9+3rB4PMpb9lT9jFwMC1z4sxn5eQK0MifB2PEWqqfL?=
 =?us-ascii?Q?Em3pdmK2oh+WsEhgefksltScr/J/Q4N2PMqjWB7BSMdmNyFDSwX52sIQfUs9?=
 =?us-ascii?Q?MW+DZlIdsu1pYjqilAqZyhM3HZR2DsW1Jqt/XLFeRUNbuLxMEaNwZVXmIBuh?=
 =?us-ascii?Q?lDgW+k3/9ZvfMU2FHxGe6nbxCoh+uJWJ5rObhQCIc1v+nBLrqEn8NBy09n63?=
 =?us-ascii?Q?ZxZGM814Src8mRAqv1Fjdjd34z3ZEP6TNtEXzxdnZQCJ7vmP64+gh9x9fGdg?=
 =?us-ascii?Q?v5UG39zEQQtqQi9BHt0EtXt/na9oA5x/b0buGuwXFDy6zWRMEOTO2nJrJHzu?=
 =?us-ascii?Q?HsXGCQyGT6NL8m0R2MqbzSsPSwtSttIODYfZ74gOJQdqNA7/Ui1zzj6IOmb0?=
 =?us-ascii?Q?pR3C0J6NEXxPmp2VSFAsEm6MS5Prn+XnB6DL6dfHwakRDcXI8ADMlpTC6Y2R?=
 =?us-ascii?Q?fu75BemVdiTHHwX2GHuAK5lAYRyYSc/BsRqoEIifcgvaLG+k/A8U0YNjEWDh?=
 =?us-ascii?Q?EVHIu7Zn2RR+/FCLlNE/1gPy64V+PXXZT0GxR4DbYc/3rKJgsL5hk6s6J1wG?=
 =?us-ascii?Q?sGye5tblkNXuRw0s2SWW0w6RhGDXHJI6V8EeWZDC8ZVPP11QcXR6nVdSaMDP?=
 =?us-ascii?Q?S17vwt9tgaG2Gvxo=3D?=
X-Microsoft-Antispam-Message-Info: mUuIQsws0mNe/mTzTN8viObcXLbPUg02PG704dzKCJFP8vkAD7cMRNwnHapaAjymoCNTFvOfobjMbagspbY4YKyPIpOToN8DORd3W+7hEx9IXYpfJFkvL6rISiYaN3CJxZU9fA4X6NnE0esFweV6n/o5Jy3akVA6Vnv1C4ok0rNuTYm6wIMEMT1Azh/1qxalfKk+jJ9fqhjF3OQqjcdvAR8x2MrGjZWBneK5ps1h/+GfqJ+qZjO1eyGvGzN7cVG41WMJdJf0mabP1L7j+YDuLPyKY7/XEoeKgQlk/xHBU5dHwApxCv8+VeiBpAyCcRNrpkS8Q7eLeH8mXyYR9ruMnnSPJgMbycc9h7HF4TdZjEHYg31DaKDqH6TmkRKQWTkL5L2YJ4fEbNV+FU6OlLSvGTIjfyvVuvx3mP5S8jpGlXQ=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 6:gg5dnAdwZi97IfpZEomXDGWBTvoYgQ8VG4ECD3t6aJwu8TsueCbtRl7aKLnact9xABMP7LsIiK9KGzPbwF3kFPFEmAr7WZDSOKZC/mBTwr65Amk8eMyMRz4ctlZu2/wivc1/s3D7cDTz0QBqVp+LeCTR6Xl3UVU3V3aRxn0O7C0wi1HU/lSqmfEpX2Y6kLQOqcifjIS+31wyj+YuoDmYJOJRSddRpGakUZhjT2RWmgF82V9H4Kp5FHaeJyJjhAmOx5v2V/wG8SbxkruUhjtTqmlPeW0x2+xAzKN64ZsR5MUH/oazZSeK391r1QvfJ28bFIEpgpupJsIqvCrRxIrKpoL/28e1jRJlPyogpixNyFRX8SGAY3GymcKLrsMyldL9cD6RWIPu9eC1TiayyJKeELofO32Px0mYkUdJufXE1J6MoZR6rhF0Hy4AfDMq+Aqqy2ObzYe1ZUc5akon7kckD8p8NfQmXvBx5o02MgUunKrhy4oiakvekcem1Km95EMI;
 5:wmRraZ9DVPpMw9yCMY4toea3I5yO/sMZDBPpQz+Lf+/Zs46s6ZWkrI4GFAsdIYUgqVvvJ/sofqnAxbQgQtmeNCPpxGUKgmt9vmPm/t3EVVNpXmlms4L49H0f3Y9wr1G+QZYfsmeFHcr79OkpXWW+URV3LDIPPN7xiDwFeHWLrQQ=;
 24:VLxYL4s9aPhD9gUIElXluSk3Fkqn+jQDTTPUyTOk6/0FX9eWJ5iZfDUcbV2wyWWrwyu433OmF69Vs5qJSMp4D8OJaH8VzVl4WjODUrbtz3s=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 7:9cZWQsiEBR4mkmrjwtjqloNvKdVNWPHa9resajbsVlSfTmsuAwNj9BqNzmFUMniXK/dmYpeerROBGkVMVXbUuDh3+nFgiDQF63GDZVviPkrNwLe/dtepLAjyDU5U2ZKdZfKT6zuCDo3+Fzu4RppSG+YoEuIEKWOptaTMTOl5ASBi0MYAL3unCxsESl18jQRIjmUUNyzybBt+cyXDQNSHOIeOgEacnWLDHM7/u5fyleEYpTNTA3vhkKEECZozwq4D
X-MS-Office365-Filtering-Correlation-Id: 97f63c3c-b8db-4691-531e-08d5a364253f
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:45.7101 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 97f63c3c-b8db-4691-531e-08d5a364253f
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2426
Subject: [Minios-devel] [PATCH v3 27/43] arm64: add the hypercall support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIHRoZSBoeXBlcmNhbGwgc3VwcG9ydCBmb3IgYXJtNjQuCgpUaGlzIGZpbGUgaXMgaW1wb3J0
ZWQgZnJvbSB0aGUgdGhlIGxpbnV4IGtlcm5lbC4KKEkgYWxzbyBkaWQgc29tZSBjaGFuZ2VzLCBz
dWNoIGFzIHRoZSBpbmNsdWRpbmcgaGVhZGVycy4pCgpTaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlq
aWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgotLS0KIGFyY2gvYXJtL2FybTY0L2h5cGVyY2FsbHM2
NC5TIHwgODEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMSBm
aWxlIGNoYW5nZWQsIDgxIGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2Fy
bS9hcm02NC9oeXBlcmNhbGxzNjQuUwoKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0L2h5cGVy
Y2FsbHM2NC5TIGIvYXJjaC9hcm0vYXJtNjQvaHlwZXJjYWxsczY0LlMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYzZkZDJmMwotLS0gL2Rldi9udWxsCisrKyBiL2FyY2gvYXJt
L2FybTY0L2h5cGVyY2FsbHM2NC5TCkBAIC0wLDAgKzEsODEgQEAKKy8qKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioKKyAqIGh5cGVyY2FsbC5TCisgKgorICogWGVuIGh5cGVyY2FsbCB3cmFwcGVycworICoK
KyAqIFN0ZWZhbm8gU3RhYmVsbGluaSA8c3RlZmFuby5zdGFiZWxsaW5pQGV1LmNpdHJpeC5jb20+
LCBDaXRyaXgsIDIwMTIKKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91
IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1z
IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIKKyAqIGFzIHB1Ymxp
c2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBvciwgd2hlbiBkaXN0cmlidXRl
ZAorICogc2VwYXJhdGVseSBmcm9tIHRoZSBMaW51eCBrZXJuZWwgb3IgaW5jb3Jwb3JhdGVkIGlu
dG8gb3RoZXIKKyAqIHNvZnR3YXJlIHBhY2thZ2VzLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcg
bGljZW5zZToKKyAqCisgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNo
YXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5CisgKiBvZiB0aGlzIHNvdXJjZSBm
aWxlICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQKKyAq
IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMgdG8g
dXNlLCBjb3B5LCBtb2RpZnksCisgKiBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGlj
ZW5zZSwgYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwKKyAqIGFuZCB0byBwZXJt
aXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1
YmplY3QgdG8KKyAqIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKKyAqCisgKiBUaGUgYWJvdmUg
Y29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNs
dWRlZCBpbgorICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29m
dHdhcmUuCisgKgorICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQg
V0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKKyAqIElNUExJRUQsIElOQ0xVRElORyBC
VVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAorICog
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFCisgKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJ
QUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCisgKiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORwor
ICogRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhF
IFVTRSBPUiBPVEhFUiBERUFMSU5HUworICogSU4gVEhFIFNPRlRXQVJFLgorICovCisKKy8qCisg
KiBUaGUgWGVuIGh5cGVyY2FsbCBjYWxsaW5nIGNvbnZlbnRpb24gaXMgdmVyeSBzaW1pbGFyIHRv
IHRoZSBwcm9jZWR1cmUKKyAqIGNhbGwgc3RhbmRhcmQgZm9yIHRoZSBBUk0gNjQtYml0IGFyY2hp
dGVjdHVyZTogdGhlIGZpcnN0IHBhcmFtZXRlciBpcworICogcGFzc2VkIGluIHgwLCB0aGUgc2Vj
b25kIGluIHgxLCB0aGUgdGhpcmQgaW4geDIsIHRoZSBmb3VydGggaW4geDMgYW5kCisgKiB0aGUg
ZmlmdGggaW4geDQuCisgKgorICogVGhlIGh5cGVyY2FsbCBudW1iZXIgaXMgcGFzc2VkIGluIHgx
Ni4KKyAqCisgKiBUaGUgcmV0dXJuIHZhbHVlIGlzIGluIHgwLgorICoKKyAqIFRoZSBodmMgSVNT
IGlzIHJlcXVpcmVkIHRvIGJlIDB4RUExLCB0aGF0IGlzIHRoZSBYZW4gc3BlY2lmaWMgQVJNCisg
KiBoeXBlcmNhbGwgdGFnLgorICoKKyAqIFBhcmFtZXRlciBzdHJ1Y3RzIHBhc3NlZCB0byBoeXBl
cmNhbGxzIGFyZSBsYWlkIG91dCBhY2NvcmRpbmcgdG8KKyAqIHRoZSBBUk0gNjQtYml0IEVBQkkg
c3RhbmRhcmQuCisgKi8KKworI2luY2x1ZGUgImFzbS5oIgorI2luY2x1ZGUgPHhlbi94ZW4uaD4K
KworI2RlZmluZSBIWVBFUkNBTExfU0lNUExFKGh5cGVyY2FsbCkJCVwKK0VOVFJZKEhZUEVSVklT
T1JfIyNoeXBlcmNhbGwpCQkJXAorCW1vdiB4MTYsICNfX0hZUEVSVklTT1JfIyNoeXBlcmNhbGw7
CVwKKyAgICAgICAgaHZjICNYRU5fSFlQRVJDQUxMX1RBRzsJCQlcCisJcmV0OwkJCQkJXAorRU5E
UFJPQyhIWVBFUlZJU09SXyMjaHlwZXJjYWxsKQorCisjZGVmaW5lIEhZUEVSQ0FMTDAgSFlQRVJD
QUxMX1NJTVBMRQorI2RlZmluZSBIWVBFUkNBTEwxIEhZUEVSQ0FMTF9TSU1QTEUKKyNkZWZpbmUg
SFlQRVJDQUxMMiBIWVBFUkNBTExfU0lNUExFCisjZGVmaW5lIEhZUEVSQ0FMTDMgSFlQRVJDQUxM
X1NJTVBMRQorI2RlZmluZSBIWVBFUkNBTEw0IEhZUEVSQ0FMTF9TSU1QTEUKKyNkZWZpbmUgSFlQ
RVJDQUxMNSBIWVBFUkNBTExfU0lNUExFCisKKyAgICAgICAgICAgICAgICAudGV4dAorCitIWVBF
UkNBTEwyKHhlbl92ZXJzaW9uKTsKK0hZUEVSQ0FMTDMoY29uc29sZV9pbyk7CitIWVBFUkNBTEwz
KGdyYW50X3RhYmxlX29wKTsKK0hZUEVSQ0FMTDIoc2NoZWRfb3ApOworSFlQRVJDQUxMMihldmVu
dF9jaGFubmVsX29wKTsKK0hZUEVSQ0FMTDIoaHZtX29wKTsKK0hZUEVSQ0FMTDIobWVtb3J5X29w
KTsKK0hZUEVSQ0FMTDIocGh5c2Rldl9vcCk7CitIWVBFUkNBTEwzKHZjcHVfb3ApOworSFlQRVJD
QUxMMSh0bWVtX29wKTsKK0hZUEVSQ0FMTDIobXVsdGljYWxsKTsKK0hZUEVSQ0FMTDIodm1fYXNz
aXN0KTsKK0hZUEVSQ0FMTDIoeHNtX29wKTsKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApN
aW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0
Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:09 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjI-0003MM-Fu; Mon, 16 Apr 2018 06:35:08 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjH-0003MG-Dl
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:07 +0000
X-Inumbo-ID: 2b1bbc12-4140-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::62c])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 2b1bbc12-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:09 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=iHsVUEdzr2vSakMb7lKx/N684pPuiGLGrKNDBNWCUTU=;
 b=aXC7ntLODEUj4zdSaLzi90KJFI4yU0ecBH/GMc3KK3pz6rhW4o26rQZjzK22KtNKGrVHtGRkqjvwsLTcCjYRdGHHHGF8Af9qQZod6uiSWzMbgYiJMxEltF1ygc3CUbmfDBLFRLetZ5NU+88Ws/wfVX3+y6pChLimlNohcXO9Dos=
Received: from HE1PR0802CA0020.eurprd08.prod.outlook.com (2603:10a6:3:bd::30)
 by AM5PR0802MB2420.eurprd08.prod.outlook.com (2603:10a6:203:9f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.9; Mon, 16 Apr
 2018 06:34:59 +0000
Received: from VE1EUR03FT056.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by HE1PR0802CA0020.outlook.office365.com
 (2603:10a6:3:bd::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:58 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT056.mail.protection.outlook.com (10.152.19.28) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:58 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:38 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:09 +0000
Message-ID: <1523860343-16382-30-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(346002)(396003)(376002)(39850400004)(2980300002)(438002)(199004)(189003)(2351001)(6666003)(26826003)(6916009)(72206003)(106466001)(8936002)(36756003)(8676002)(4326008)(316002)(50226002)(39060400002)(59450400001)(478600001)(5660300001)(76176011)(26005)(77096007)(356003)(50466002)(48376002)(51416003)(7696005)(305945005)(446003)(11346002)(336012)(476003)(2616005)(426003)(486006)(186003)(126002)(104016004)(86362001)(246002)(2906002)(54906003)(47776003)(8666007)(16586007)(106002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0802MB2420; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT056;
 1:48Hb+pmdUqhZmo6HpbEUIi7hGzl/uqSRCRXvAAtX3gHdAw4tF+h6cLGSLN/UO7MYoxPUCo8AG37zQcPeEdWipaE85xOsGJ9vDsIf44SxvvnpEypg+ye23N7ix75hZQnD
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM5PR0802MB2420; 
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 3:eecbt6N40e1N5lD98UGvoD/3H90ePfLsxjrkkP6vlXP97aw9aO35M8Agw1rjyARYkNUhQqi7qL28tMzlnM0CfZVf+SkzdYXWzqH5KbwCt7aaW5lU6z0vi3S+onOcBDbuxV4JNi57pYcHnBKlcUEkoXQgOjdUijICF9gJv3tOHpF5BKECHRiYZuu4B00zcNcEuluHHNDdsnBiW1SCIVTFyiFGJTjTyAFdpPVc96qiYFodDQXvayM/JXQ1dGBFTghZ+OekqsH7FvOA+VrIXsOi8ne3SYPHywtNO3Fy08bv7ORMnpPq2CY+5lpQ3X2sfr6KtHdEGoIrEbNMsIIIjGNYWkHTU8SBNeDAofUvSusQcbQ=;
 25:TitSUwWK/6YIZ69gEFIPTuFfCDPCs3JMb8IHAwrHr1Ze789NUwNh1Zxjt4xd4UXGwSvdnYYsdkb7v17L/qQwuAKNBhCWPM335AqzaWSrUT9VauuqAF/kcQBbwKLlNgM/jEV1fD752kiaR10UI5B27uxxXT6eBAlFxu6xWVyKvI+7a2Jv7LUYf1NQcqjiK8LB5FZdDa61seoSDjjlz/7GhC7wdIMGJLrmyRMPDh9f96HZpMcuUXDcv6fQhIMII2QCZ0cy2oo4VT9sEv9aoHFoBuOlYUuD1uH/Z6bgBIq4s19o2Ufb8ENkd6QJFzuGyaf1Tmbmh+rSSvvPhHtiHSLN8g==
X-MS-TrafficTypeDiagnostic: AM5PR0802MB2420:
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 31:iqiuXoKKnujPdHvdiY4p4Jg9fDOth0UyaXaIxZXuP7sro7OOw235pg8DZun3rle6ZKsGk2r2Q3hs1on1Mr5dOZdJTM6djv7zGfWAZVagen628cJDECNW1Od5XDxhO+rhZwMFg/PYZqqdtMH151XrH5ZqQV1efg3MT8gWrbEW9DXUI5tQfTh142Re+3Z/oJ1fUA+dJDgBo6FsZvL03wQ14/feosTOcD7fkmE3893713I=;
 20:gyvr+VUGdneQHhWI4l6eXiE7TFyN4nv+gUxrU0iI8tUUwUNmh8dbA8dYVv+TZiO6+Y5TJFFYEN+Jvb2Mlf0blThD7ON72aA18K58TDkwkwTleUdXRhWDgGnmsx3S6vAHKfQu+TCrmcJ0JGFu65NEiVp5lJcZOw+nVshYD59e1yXn68HFM3JLogz3WzBag2VIEiQaDOmKvpiFXI6c6D4w4mfdADxAvYxpLbw1DU74w9Il+CPG+O1092kAiplK/l3C;
 4:eAQ8m3jUgGWI+pnY2GPP8TryIVVbhU/kezy9Nlthf8RNxqXgnyZWj/HfMRv2kIZFqAPNF4WeOwKZqA5uQWN3bjKXpFOz4vUrhdErDB/U+8715lx9LkdB7yKYosj8dYbubzXD3DVdJceGgYPNoSARKGk5gZdkJxHL+/Fs3XbOKIMAq1qHDDL2YvvyITTanZwExJYdGOtSnHSDzZDaH0FH16/fiVa7gBHcz2G7rB3Y6WD7Q/1LeaHK+AORyhVD9H6ufjUJ7vL7/edjfOTvf/0mpf1iaaM1kRP/r4LAhzykNkDHv3rTMbpn+K7seM+B71X3
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM5PR0802MB2420B29FEDBF6FD1D7AAEE9184B00@AM5PR0802MB2420.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(3002001)(10201501046)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:AM5PR0802MB2420; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0802MB2420; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM5PR0802MB2420;
 23:N4+aLhxwCJA+HNXd17LP7Q2zuX5zs1ry2OjbD1Q?=
 =?us-ascii?Q?hD726PaKCT05IWkxn6+fuHjXptXnTL0VT8BmxMHn/ZZzcw1CkJ+jAnt0pRcX?=
 =?us-ascii?Q?VvwWVBQ/v3yngHbROeMWpCOZz2Dv01ODo6eeZOR1lr/XJxoQo9+jwnapCuMB?=
 =?us-ascii?Q?W2DsJPxX0I7FHm9iXjGUhH+jVNyS3d/eTFE8GJ4dtacO388A43gPtQVDryib?=
 =?us-ascii?Q?qoJPyIQjipzoMR4X8IPwgmA2H6SCKgDSXIkDSdmqDr3IdAq0fzpPZl3ZwXvJ?=
 =?us-ascii?Q?ZQaDGlF0EJf0noyH+hAPg/yqu2dymBbc0enzCKELrT9jX9PoVcdioiExMwEU?=
 =?us-ascii?Q?ZhTt8aiRM+wp60KTAz8Dc7uIspLAyEEr/6w8I2ruFyfpG/bEKeZEBI9H9RX8?=
 =?us-ascii?Q?sB9V91u2iasgw9zopj75PcOCQSDVsW0N8zEO3O2I3QKHxfnuuWrwWRpFzWiS?=
 =?us-ascii?Q?+tG8V1sS88YyGS35HH4H4QhaPzu8Cri0EpLrMTALJuFvtSz3487NjbA7q81y?=
 =?us-ascii?Q?r5Q0pDC/C7zy8z8BKrEyAakkrvuwvoEL4/+0Rs8IY9StYAGgYfh8rV1vuRJJ?=
 =?us-ascii?Q?i7/wEeCyFItYEe7z2tkCnJirdsg7VkEdTYpdFY8OrR0lLs6e0tncBhCoNTi9?=
 =?us-ascii?Q?Uopknp0Uuo6+OiMeabJNetjTkvUWY6ofAbhMdqxY6agCHTYc/3qGmdeWJdY1?=
 =?us-ascii?Q?GnJDMnl7U1z9LUZmdPWBTzfRemOxbkpR2pKG3Em2U8bw3ujMvzIFIORTVXFN?=
 =?us-ascii?Q?ezqW7Ho84Llx4+EcE76VcoLn5T8GAyJWLiLJl5+ryQB+sutCBTl1FasC3AqQ?=
 =?us-ascii?Q?LuUXOoi392r+leYPkbEnQtYo7hsdJQIHIDb7Plk4YIfM8cKa3GgjLK5P+Dup?=
 =?us-ascii?Q?pNc3OxgQgqENQmjw0oAwb0P9sd14AWcWV9ahIu++PYq17du6Je+FwOIaRN3Y?=
 =?us-ascii?Q?Gd9FW/xr585WVuMWqZV/2nam9uQFlx2eE5urLxqnq4CWEoEXgjPxJsfEElfV?=
 =?us-ascii?Q?2xps2lpEfSdiZCu27TMnit2VVsH0dpM6mxp0jPIm+fV6coAFW4SD/IOHpwo+?=
 =?us-ascii?Q?vGmk+9luJpZlyJCY4ucWL6Nhng5oE3nAaiAvHknQ1/phcoj/iH9rhmHVVS7Q?=
 =?us-ascii?Q?oVfJWkPSgOqnE70SxZRFaa2jwnX8beIo2eMv1ma3iL7ZYvyhNiz1uwA=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: zYtbQFqaNPn8xzFV0lmdUb40PHITpM7qLRigxc8DaF8Vc8VyMGxNu0ghURXTPeSOb2J5lNqi1XpRE28wzgfpI62MgDEyaa4W4Vugh+7uoo6Rdvagm+EBiJnNXzX20dcQJERlGpGbPNX7dfZdKhI6pAU/ovSs9cIHt5FmtZqx2Wc2MUF2DB4nGZfA6Oc2wmDip5Onhc9PkDCDTvjRRgin3lI0mxUN+y1Fy5angfqdSnlXu2o0GzkPw4aZaSwIG/8RW87HwT4svJzeYmJ09NlVm+p9Iaw3y5fSewZPV/WUXWN5ymitawIVbeGAlUWVpCHinUGPgVwaBfXngrzMX6eAgX/9Zq3ZL/JOuhSeMyTac7XbVVuKlF3zc3es1Ai91q+lcWBWSQY2KL04+I0ev1XK/kXGa8zEuj+Epyz2o8YWdW4=
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 6:UmzVsd/T83HnfzMEpA3u5qGiB9wWZEM4kDFBSsvTbCZCDM2EP6K8oxrgWCTWRJsgDnIIY1x/0HEjb6hcuykVsJkEMDBBCKe30dlYO6HbqvvZuMHUWaaJaaE05WI5kn50Ty9ytpYWRm6B1mVQeQK+DkvVlprn8Q33QGfwO4FZ82PpN5T3+kFtWpmX6UVM5pHICmC5iqRz7jUgrJH0zhPC+q1WgvHI9ZGKaHFaVa7lN1VRxViHKvXMDsW6R1YZfczYVPdvVFDswW7dp3ejs07E7dfwexzeZnkJ5+oRZUzu+EeoI97WtI3WxLKGjzvuv/i8r1pN0ynFNbRT3wJsnOM51N7BmCxLe5Yg1aaY6SIStzGn9qdq1IfJulJV1bYtdGUYu4xjeS/t84HG28whZY9ugR9gljZlii+VUurm5++R8wu2QgA6BssGGxG78SGZrKE2zFWsWrh2tOr2axuYdGbyLzbW82SNZXLJMV8LaWwSdotsMNDMNbin9btD7TY6j+A3;
 5:+LLhKpuh5oQLiCibJ0LhXDShST/cjJJQyrUjZWVnyOvMEKv2/odQoN3dA6CfAhLUJEXiDAyIkBgHlcYMcxcilo+RlKINMsAZc2mKLzyXWQvW+Tlqx+UkDhTEQTz7mI+CXd56L3A6QUhgAYzh58PN+PUWjwXLmHFDHP5FSLBa4VM=;
 24:ya8oCy8XJQ1az/hrGesk1zqRfgKX39A/lXV3iLJlBSOh7xo6DCf6EA5gkFqaTt3gfHJ7RdEbttEh9UPiUeMplGt8dViOYW92gqHtJhOr2BI=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 7:6sqmmZnOd/jz76/nA4RsFxLncANAeCXWrAFt5QvqwNx/P9vBLS+5cWgsA8OPOFNzkgaqjSHRwnQ6TlZ+STkCF3Mr4e//5JJ9htcDOuBk8HTG6z0+L4o0Wt6i2va6qPNfXy4FXviNCa9Kq3hgnyJ1k+TBzVlId35BABfeqCMAXzlYsHSp73aVTGhi19SwVduKVI9kKzMz1QtP0CTSIc6prA6VU0Y18iqB78yD9PlWyBMliU9I+2IPmi2EZ2uFfwBB
X-MS-Office365-Filtering-Correlation-Id: 484456d5-0c40-4550-05af-08d5a3642cbd
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:58.2623 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 484456d5-0c40-4550-05af-08d5a3642cbd
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2420
Subject: [Minios-devel] [PATCH v3 29/43] arm64: set the mapping for console
 and xenbus
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBzZXRzIHRoZSBtYXBwaW5nIGZvciBjb25zb2xlIGFuZCB4ZW5idXMuCkp1c3Qg
Zm9sbG93aW5nIHdoYXQgeDg2IGRvZXM6CgogICAxLikgQWRkIFZJUlRfS0VSTkVMX0FSRUEvVklS
VF9ERU1BTkRfQVJFQSB0byBsaW1pdAogICAgICAgdGhlIG1lbW9yeSByYW5nZXMgZm9yIGFsbG9j
X3ZpcnRfa2VybmVsKCkuCgogICAyLikgQ2hhbmdlIG1hcF9mcmFtZV92aXJ0KCkgdG8gc2V0dXAg
dGhlIHBhZ2UgdGFibGUgZm9yCiAgICAgICBjb25zb2xlIGFuZCB4ZW5idXMuCgpTaWduZWQtb2Zm
LWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgotLS0KIGFyY2gvYXJtL21t
LmMgICAgICAgICB8IDQ0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0t
LS0tCiBpbmNsdWRlL2FybS9hcmNoX21tLmggfCAgMiArKwogMiBmaWxlcyBjaGFuZ2VkLCA0MSBp
bnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21tLmMg
Yi9hcmNoL2FybS9tbS5jCmluZGV4IGVkNTkxNTkuLmU4M2FjNzAgMTAwNjQ0Ci0tLSBhL2FyY2gv
YXJtL21tLmMKKysrIGIvYXJjaC9hcm0vbW0uYwpAQCAtMjMzLDEyICsyMzMsMTUgQEAgdm9pZCBp
bml0X3BhZ2V0YWJsZSh1bnNpZ25lZCBsb25nICpzdGFydF9wZm4sIHVuc2lnbmVkIGxvbmcgYmFz
ZSwKICAgICBpbml0X3BhZ2V0YWJsZV9vayA9IDE7CiB9CiAKK3N0YXRpYyB1bnNpZ25lZCBsb25n
IHZpcnRfa2VybmVsX2FyZWFfZW5kOwogdm9pZCBhcmNoX21tX3ByZWluaXQodm9pZCAqZHRiX3Bv
aW50ZXIpCiB7CiAgICAgcGFkZHJfdCAqKmR0Yl9wID0gZHRiX3BvaW50ZXI7CiAgICAgcGFkZHJf
dCAqZHRiID0gKmR0Yl9wOwogICAgIHVpbnRwdHJfdCBlbmQgPSAodWludHB0cl90KSAmX2VuZDsK
IAorICAgIHZpcnRfa2VybmVsX2FyZWFfZW5kID0gVklSVF9LRVJORUxfQVJFQTsKKwogICAgIGR0
YiA9IHRvX3ZpcnQoKChwYWRkcl90KWR0YikpOwogICAgIGZpcnN0X2ZyZWVfcGZuID0gUEZOX1VQ
KHRvX3BoeXMoZW5kKSk7CiAgICAgbWluX21lbV9wZm4gPSBQRk5fVVAodG9fcGh5cyhfdGV4dCkg
KyBNSU5fTUVNX1NJWkUpOwpAQCAtMjU0LDYgKzI1Nyw0MiBAQCB2b2lkIGFyY2hfbW1fcHJlaW5p
dCh2b2lkICpkdGJfcG9pbnRlcikKICAgICAqZHRiX3AgPSBkdGI7CiB9CiAKK3N0YXRpYyB1bnNp
Z25lZCBsb25nIGFsbG9jX3ZpcnRfa2VybmVsKHVuc2lnbmVkIG5fcGFnZXMpCit7CisgICAgdW5z
aWduZWQgbG9uZyBhZGRyOworCisgICAgYWRkciA9IHZpcnRfa2VybmVsX2FyZWFfZW5kOworICAg
IHZpcnRfa2VybmVsX2FyZWFfZW5kICs9IFBBR0VfU0laRSAqIG5fcGFnZXM7CisgICAgQVNTRVJU
KHZpcnRfa2VybmVsX2FyZWFfZW5kIDw9IFZJUlRfREVNQU5EX0FSRUEpOworCisgICAgcmV0dXJu
IGFkZHI7Cit9CisKK3N0YXRpYyBwYWRkcl90IGFsbG9jX25ld19wYWdlKHZvaWQpCit7CisgICAg
dW5zaWduZWQgbG9uZyBwYWdlOworCisgICAgcGFnZSA9IGFsbG9jX3BhZ2UoKTsKKyAgICBpZiAo
IXBhZ2UpCisgICAgICAgIEJVRygpOworICAgIG1lbXNldCgodm9pZCAqKXBhZ2UsIDAsIFBBR0Vf
U0laRSk7CisgICAgZHNiKGlzaHN0KTsKKyAgICByZXR1cm4gdG9fcGh5cyhwYWdlKTsKK30KKwor
dW5zaWduZWQgbG9uZyBtYXBfZnJhbWVfdmlydCh1bnNpZ25lZCBsb25nIG1mbikKK3sKKyAgICB1
bnNpZ25lZCBsb25nIGFkZHI7CisgICAgaW50IHJldDsKKworICAgIGFkZHIgPSBhbGxvY192aXJ0
X2tlcm5lbCgxKTsKKyAgICByZXQgPSBidWlsZF9wYWdldGFibGUoYWRkciwgbWZuLCAxLCBNRU1f
REVGX0FUVFIsCisgICAgICAgICAgICAgICAgICAgIGluaXRfcGFnZXRhYmxlX29rPyBhbGxvY19u
ZXdfcGFnZTogZWFybHlfYWxsb2NfcGFnZSwgMyk7CisgICAgQVNTRVJUKHJldCA9PSAwKTsKKwor
ICAgIHJldHVybiBhZGRyOworfQorCiB2b2lkIGFyY2hfaW5pdF9tbSh1bnNpZ25lZCBsb25nICpz
dGFydF9wZm5fcCwgdW5zaWduZWQgbG9uZyAqbWF4X3Bmbl9wKQogewogICAgIGludCBtZW1vcnk7
CkBAIC0zOTQsOCArNDMzLDMgQEAgZ3JhbnRfZW50cnlfdjFfdCAqYXJjaF9pbml0X2dudHRhYihp
bnQgbnJfZ3JhbnRfZnJhbWVzKQogCiAgICAgcmV0dXJuIHRvX3ZpcnQoZ250dGFiX3RhYmxlKTsK
IH0KLQotdW5zaWduZWQgbG9uZyBtYXBfZnJhbWVfdmlydCh1bnNpZ25lZCBsb25nIG1mbikKLXsK
LSAgICByZXR1cm4gbWZuX3RvX3ZpcnQobWZuKTsKLX0KZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJt
L2FyY2hfbW0uaCBiL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAppbmRleCBkYjZlNzgxLi40ZjNmZDhm
IDEwMDY0NAotLS0gYS9pbmNsdWRlL2FybS9hcmNoX21tLmgKKysrIGIvaW5jbHVkZS9hcm0vYXJj
aF9tbS5oCkBAIC01LDYgKzUsOCBAQCB0eXBlZGVmIHVpbnQ2NF90IHBhZGRyX3Q7CiAjZGVmaW5l
IFBSSXBhZGRyICJseCIKICNkZWZpbmUgTUlOX01FTV9TSVpFICAgICAgICAgICAgKDB4NDAwMDAw
KQogI2RlZmluZSBNQVhfTUVNX1NJWkUgICAgICAgICAgICAoMVVMIDw8IDM5KQorI2RlZmluZSBW
SVJUX0tFUk5FTF9BUkVBICAgICAgICAoKHVuc2lnbmVkIGxvbmcpdG9fdmlydChNQVhfTUVNX1NJ
WkUpKQorI2RlZmluZSBWSVJUX0RFTUFORF9BUkVBICAgICAgICAoVklSVF9LRVJORUxfQVJFQSAr
IE1BWF9NRU1fU0laRSkKIAogdHlwZWRlZiB1aW50NjRfdCBscGFlX3Q7CiAKLS0gCjIuNy40CgoK
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:12 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjM-0003N8-Ix; Mon, 16 Apr 2018 06:35:12 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjL-0003Ms-NB
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:11 +0000
X-Inumbo-ID: 2d8d3d71-4140-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::60b])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 2d8d3d71-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:13 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=/PZH5ZtXWJ8R0rxuotjEJxZ0PObKQa0nytfYhAqk3Bs=;
 b=QJR1M9Ba1WXW/P7mxUQG6JRkns+L+pqV4IIDplUUGMk/x4SdKLwMvgYae1td8jPS3m2/Pwcj5DTIRhlR6w1cr6X8gwTHF10Ci0QDkyjxlTJeCnF18EH1Tvet9S/Y0tiq/B7yFnOZWkHIDpp0PyCNSQzoUaAGx4qqq2Ln/eb6huY=
Received: from HE1PR08CA0061.eurprd08.prod.outlook.com (2603:10a6:7:2a::32) by
 AM4PR0801MB1585.eurprd08.prod.outlook.com (2603:10a6:200:3e::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 06:35:02 +0000
Received: from VE1EUR03FT052.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::204) by HE1PR08CA0061.outlook.office365.com
 (2603:10a6:7:2a::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:34:56 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT052.mail.protection.outlook.com (10.152.19.173) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:34:56 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:33 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:08 +0000
Message-ID: <1523860343-16382-29-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(39380400002)(346002)(396003)(39850400004)(2980300002)(438002)(189003)(199004)(356003)(26826003)(72206003)(478600001)(8676002)(5660300001)(305945005)(4326008)(50226002)(8936002)(246002)(104016004)(47776003)(39060400002)(6916009)(6666003)(36756003)(48376002)(50466002)(8666007)(86362001)(26005)(16586007)(316002)(476003)(126002)(7696005)(2906002)(2616005)(2351001)(76176011)(11346002)(486006)(51416003)(106466001)(336012)(446003)(426003)(186003)(106002)(77096007)(54906003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR0801MB1585; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT052;
 1:4fj6LtTPXeErKTREMAcof9xQ0cI++E00lfZHLVZREiikq6wcN42slqMz9/TKaMH/hutr+wSXCVEaees6bBusPGewrhh+L0Ar3HN8pQgjogvMskcLuJXvezBBj7aduc04
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR0801MB1585; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1585;
 3:u4dCObB/z7J8qbOimBDilS4ZPovYch+KPM3EgT6ASHAGRwCn57kkvpEld2EpswpD0ZgRn8MVM4lVQ7LZzkWHqEeCwboidHYketiFxpD1o922OkVmnnmLJuYePOrhVS2Qy76bBHOJ1liSNFx0ALTzYtBqv52QDIOVef4za4obONSXClAGMDFbAiAms8UEeANW4Ki0IgrkBzntsCFQvIq6aTWA7HYxNDNa9wmnczMCWnIIvEnkAI/dThqMu06TPS8bED6u15GidFh8RUJqBJdqOacd3VX+ek7Iik3RyOzNhXKekOnwiRJjlMQZ3rgA1xRQXWx9jbxtPgIjYVHjIaEEVvYBeMPgdn2qY80oJyxu1DI=;
 25:GUtdqzxjdWQQFX9oKSZAYhXZFPuipV7mzi9MiS88PAOzt0Bh7N+/xfxWzxVIVvDS27BAPmEtzxCFMdCsmb8Ygi9uzIpwHJLBH4tUQ9YFjw1nhh1pKk0KE4RS/dKfnS6BWGMp1Eoi+lLIVxyD4dRrMrkuPNIEBtG7mFHDwD6rNW+0S4h5mAHaQk8ff7gwoKdzJ6Yi3pUKmgoetw9PP4eZibATYWv4xu34nsKGkJ4B5kWTNSDVGIAdk/Aha4JlOIthNsGVlk6P7OtO0nb9DuC6Ygw/CgveUe9EYBgurvYiSz4JbbTUlIXa/A4vVwK7G3TsdQi51O69XZ2eAmkXFqgswQ==
X-MS-TrafficTypeDiagnostic: AM4PR0801MB1585:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1585;
 31:J0FTk5yCOJLaSQJlC4agkAD44NeBklK9GQqLUMxGyRVnRf01+onf5GIr9Y6r/Ht4UMhgxG7xLAo9UPevlEqh1D+RZN1VQfjfiD14PKWzvRPVRtyPfUBymfUG+k2uU/mgtLiUGmyhA2OwWTpxitqqDJnn23Qa6HDFwLKiS8JjtRaLpJUWvuulwKFfP3iWtfFtsEM9TWh/EwqsDraHGhCD4QB9YrvTevhfEc7vNjLTHL4=;
 20:mU011oNpLSB+HClZXPpaK5vOgcMF8+q63h4wFMzSj/kFriLoEwwybTtPa6/Ihy8Vd7ezyHTHlDsXEYDEQjlIKOsHI1d2jspcj1skX+x96rd+9rVu3YP5gPZM/InuzJ6dE0bSFwOaLIRcH1kltuRYru9kVSqu02HWZRL3QzlspKPFN2muMotmm2cDnw1tyOtIio+6XRvQ2dgYC9qTix1dBA7nA3W+YNuK49zywjTQFOVQh+o7HXiBd4xc9nRjnoNg;
 4:D4bX+OTbDF1drVKAnEmcKBbqeGPM7fm/VsA8TSfA3YvYCQfyAnOOxqw3KoqO746H9Vf89dPhc/z21NMnqnI+UeCwK7mOIdMhBlNarBbuFQ8+uq96CJ2u4E9suS8cIW2EuwKy98sssOfTM8SFM6KxOojh446OvbxTSR+xfUWrBen2yRWbPu5uvFqX0xwIB/wenVJLmR793EZK5IH3iCNl8bT8CXfkQw7c3Z8zf02eJp1kmSo4kJBNaoxlykAtu+hChYaNcn7CZiK8gIzTmcBJ4gBs3/Y5IoCBDMecercSe37D6cs3p6hQur6t+pWKNXWE
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR0801MB15850D900502341C7A6E9A1384B00@AM4PR0801MB1585.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(3002001)(10201501046)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:AM4PR0801MB1585; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0801MB1585; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR0801MB1585;
 23:iB2tj+ZbV7ih8DEId1ihGVb5Cj1T9zkc4CKNNHF?=
 =?us-ascii?Q?1i90d1JITfnOvHYUtx5tFN3rsMfk1mIL9rKMJs2YVJF7uUbWIhxpRoqD6qJ6?=
 =?us-ascii?Q?FjnaBvzI2fj0aRr6Cv7kyUAwDuMRLELgTieBSekAa2AenuDvUhbizKORJnEq?=
 =?us-ascii?Q?4kG0rsL6lE3ySFyDSLjSXRrbX+Orn5opM/sK16szTm32SiabeQevTV84xHha?=
 =?us-ascii?Q?SO2byMvxZ1YzFtkhefrNhKX7kKC/8u+HEZKQeyXnSP1B8gF206/fFqea0Caf?=
 =?us-ascii?Q?teKXMx2Ms884DoYEBT6WkuMZgSBWmoHlSnER3qtOmaSqmS10vN3TNXePdhjP?=
 =?us-ascii?Q?KzPkytYILBUI4+i9ihlKlBy8waBzkJCUjvx5py2V67liKcqguNXzIe1vh8mW?=
 =?us-ascii?Q?DlDsQgAC2b94FHNwM+J48DAcfER/VvL5D2L1IetwO6nqQGT8yBGD8TdNGM0B?=
 =?us-ascii?Q?OAN9MWi/igjevt4/1hJg8nCTHFwYvfDeXjfW8ytMgBiy+xsv19HZoXAsqXfk?=
 =?us-ascii?Q?MDCPoLp54dtnpwmAVe7xTZeafi/9rFj48sQuXVfNc592xaxFkJv9HZ/QG00W?=
 =?us-ascii?Q?a0hRWaMCMoQWQj/b8SOu2U5+yfkCFUCcB+n8xYYTnD+Qko/miF5XpB86kPkA?=
 =?us-ascii?Q?hpdgHDJrUZAf4Pl1g2G0Q0butphgYWuA7Mw2kP6p3f9F51BWAaAR/yAUW7i8?=
 =?us-ascii?Q?uzUtHVAnzQh9oTYrOdW3BD7lsRVn2DQ4ggTK0j7PDaXJgYjjVc0elpVUAiHY?=
 =?us-ascii?Q?gWUT3d69I++dyjkkYIOQd0foAr7gETGZ/2nBm1cxIibVH6KzvPPHTOPgwv2M?=
 =?us-ascii?Q?8lnOScnpgaQPiRuLQ2/wFlSwiRcWA79okoTwZF+vB5U8F2nL1OJrSC2FwcLi?=
 =?us-ascii?Q?n2Y1kwN62lXG3/pt0cTN5OwHphhKB6UBEJfiNBH4J8SNVfi5Y0nBPkYI7CQp?=
 =?us-ascii?Q?pyMdZAf76pnh1Vr5FHIK6eh+iSuDZGGFpoFDUWr2vY99r8vj7oPvUHbjyuzN?=
 =?us-ascii?Q?C9K4BapTUkWzPNZqiR2LvBWILOM3qgT/EBEi4dK96FsupAt9AQq98yezIwIw?=
 =?us-ascii?Q?ZLWnmmHjLYkNqAz6G2TbwIuF/sMGEw7jPec98I+CBYL4aJ9xtl7fDviJCYxB?=
 =?us-ascii?Q?G+cuPU/qVvL46yXn/dVxuYVsSrNu+hLvn?=
X-Microsoft-Antispam-Message-Info: +bw7KtgKEIcF7Q8EaXDyOCBdmHs7vZnBnS1fjXvNGjp351ejsHfeREWCOTbePc8/1AxYxFLXlODa57ocYvVdx8zJyRZxzKbnj2MzZqw+pKNml+IMECpiqaNGFJaHB9G1sICTibSvjLkAe9sy1Iyl3yp11ojr0HpGMLjYqZkF7OUEyETuMrk9TakXw1/zGeKmx2hk4B0gLOzZTxmtXljbs/lmms5+1B5v+djXPIufkZJzlrvfhVOk0Fu50KS30N3qTjRT3K5G2k4T8RMcoO065LIypYA6YWgam2bhdXU2x5fgOyj1meZas+8MMDvJipP6oep9TM7NcjZ75zMUHAt7SZWWByPC7O4B/8dK7kRZ9zR/be/vSo8BSok7sf1UEEAzrKxG9975PxGfHKUoddtnRwd8eiNBTVl4u7XslLtTkWI=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1585;
 6:ZGCq2F2dq/iLLucE+PjAuLgK8RDZJ6ssv/Rg7TTQrokQwh6Ou/+LxgbXnFLlhiapnIND0Qs67a/nWTwlWDGVfv0hcyPlxVIO2lMJviUaQiOSWFDUIcfDznp/ajcjAnmqWsnfLravV9AbM5fEBv8Gdh8VKOm0uvgViAv9rj9MwjkPk9WAZ6vQPZ3mwXKOi8I+t248BB7XZnoe1U8dSSJplEMedaHAMhAOqOhRaluco/FOz5eaNh0uiqbWmF+1vE70PSxPTnE+sQ5t7V5LzJPuo8uCnY+W/n2DgfsMrHCqo/JaP56x6EVMMRgNZ8ouTT70vV1X2Yd/2w87xRly0ZYsrZN9OedY3EYZ7Cgbe1bczXIWjOepWegVLRWVqtd4+3STvTS5n5Lt1xFEru+glTpwheCRciipLhuhIfxBgUViybWNkewXMMhkt6efLJXF01VikkRs57m0LM18lU0tKK+eR3tfWQcp0rMJU8t1Mwr8zBLjc8AW8YhXl13vABVEsvZz;
 5:rrn2NfNY+LlVIdcAaAnbvb7w8DLSIZXcwwV+bAX9MXQzdxrR2YQKtMKdr/NtwLYb4U/3ZrFn9Ia1pdl33q3oNPgtrq+80P8usJ60sXxKq6vpiwcVPitHctbRpKLEPy1PQeAbHqqjgqPg7D3Y+YWvs0g0JMH6Xs8joAql6dEplOI=;
 24:AFuVm2wvXj7iw6YzXv4nmgknl72sMNh/NWRMtB8jdDNjhnAxunAuz4BU6Je5QbzwZ5bCIAWmCN3pOwfbyTV9ghIQeW4T0ox+rNH88FcX+gU=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1585;
 7:8fTBaxRfmNRs4Taab1h59/G89T2BUzta1j0v6qsGgZ3HyE9hoFifjGvAac2WSI+vxlfYUzLHnAtX8qtjJI/vMzZfAAtUn6fIvIOJkY9NknraEul4dfSBS5rZIR/SZtKUp3DSPBGF0er0Paf6onmMDpoIwqe9AhgoCGuuEcoTdIG4rn5CEuxXKMTqieeF+0gctkgHBE/MK+vYGxEuMtQdmy+EXxCcMYzOUWZGobnSHOdYGTvbOM4o7S7Jn8ySULvQ
X-MS-Office365-Filtering-Correlation-Id: 193f2513-2668-46a3-ec21-08d5a3642b86
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:34:56.2300 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 193f2513-2668-46a3-ec21-08d5a3642b86
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0801MB1585
Subject: [Minios-devel] [PATCH v3 28/43] arm64: init the memory system
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBkbyBmb2xsb3dpbmdzIHRvIGluaXRpYWxpemUgdGhlIG1lbW9yeSBzeXN0ZW06
CiAgICAwLikgTWFwIGV4dHJhIDJNIGZvciB0aGUgZmlyc3RfZnJlZV9wZm4uCgogICAgMS4pIGFk
ZCBhcmNoX21tX3ByZWluaXQoKSB0byBzZXR1cCB0aGUgcGFnZSB0YWJsZSBmb3IgRGV2aWNlIFRy
ZWUuCgogICAgMi4pIGFkZCBmdW5jdGlvbnMgdG8gc2V0dXAgdGhlIHBhZ2UgdGFibGUsIHN1Y2gg
YXMKICAgICAgICBlYXJseV9hbGxvY19wYWdlKCkvYnVpbGRfcGFnZXRhYmxlKCkvYnVpbGRfcHVk
L2J1aWxkX3BtZC4KCiAgICAzLikgSnVzdCBhcyB0aGUgeDg2IGRvZXMsIGxpbWl0cyB0aGUgbWF4
IG1lbW9yeSBzaXplIHRvIE1BWF9NRU1fU0laRSwKICAgICAgICB0aGUgbWluIG1lbW9yeSBzaXpl
IHRvIE1JTl9NRU1fU0laRSwKCiAgICA0LikgYW5kIHNldHVwIHRoZSBwYWdlIGFsbG9jYXRvciBp
biBhcmNoX2luaXRfbW0oKS4KICAgICAgICBUaGUgaW5pdF9wYWdldGFibGUoKSB3aWxsIGZpbmQg
dGhlIGJlc3QgYmxvY2sgbWFwcGluZyBsZXZlbCB0byBzZXR1cAoJdGhlIHBhZ2UgdGFibGUuCgpT
aWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgotLS0KIGFy
Y2gvYXJtL2FybTY0L2FybTY0LlMgfCAgIDMgKwogYXJjaC9hcm0vbW0uYyAgICAgICAgICB8IDIz
OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBhcmNo
L2FybS9zZXR1cC5jICAgICAgIHwgICAzICsKIGluY2x1ZGUvYXJtL2FyY2hfbW0uaCAgfCAgIDUg
KysKIDQgZmlsZXMgY2hhbmdlZCwgMjQ5IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9hcmNo
L2FybS9hcm02NC9hcm02NC5TIGIvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwppbmRleCA5M2ZmYzg5
Li40ZTljMDQyIDEwMDY0NAotLS0gYS9hcmNoL2FybS9hcm02NC9hcm02NC5TCisrKyBiL2FyY2gv
YXJtL2FybTY0L2FybTY0LlMKQEAgLTIzMiw2ICsyMzIsOSBAQCBfc2V0dXBfaW5pdGlhbF9wZ3Rh
YmxlOgogICAgIGxkciAgICAgeDAsID1fdGV4dCAgICAgICAgICAgICAgICAgLyogeDAgOj0gdmFk
ZHIoX3RleHQpICAgICAgICAgICAgKi8KICAgICBsZHIgICAgIHgxLCA9X2VuZCAgICAgICAgICAg
ICAgICAgIC8qIHgxIDo9IHZhZGRyKF9lbmQpICAgICAgICAgICAgICovCiAKKyAgICAvKiBNYXAg
ZXh0cmEgMk0gZm9yIGZpcnN0X2ZyZWVfcGZuICovCisgICAgYWRkICAgICB4MSwgeDEsIEwyX1NJ
WkUKKwogICAgIHNldF9wYWdlX3RhYmxlIHgwLCAwLCBQVF9QVAogICAgIHNldF9wYWdlX3RhYmxl
IHgwLCAxLCBQVF9QVAogMToKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21tLmMgYi9hcmNoL2FybS9t
bS5jCmluZGV4IGQ5OGZhZDguLmVkNTkxNTkgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL21tLmMKKysr
IGIvYXJjaC9hcm0vbW0uYwpAQCAtNiw2ICs2LDcgQEAKICNpbmNsdWRlIDxtaW5pLW9zL3Bvc2l4
L2xpbWl0cy5oPgogI2luY2x1ZGUgPGxpYmZkdC5oPgogI2luY2x1ZGUgPGxpYi5oPgorI2luY2x1
ZGUgPGFybTY0L3BhZ2V0YWJsZS5oPgogCiBwYWRkcl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0
OwogdW5zaWduZWQgbWVtX2Jsb2NrcyA9IDE7CkBAIC0yMyw2ICsyNCwyMzYgQEAgdW5zaWduZWQg
bG9uZyBhbGxvY2F0ZV9vbmRlbWFuZCh1bnNpZ25lZCBsb25nIG4sIHVuc2lnbmVkIGxvbmcgYWxp
Z25tZW50KQogICAgIEJVRygpOwogfQogCitleHRlcm4gbHBhZV90IGJvb3RfbDBfcGd0YWJsZVs1
MTJdOworCitzdGF0aWMgaW5saW5lIHZvaWQgc2V0X3BndF9lbnRyeShscGFlX3QgKnB0ciwgbHBh
ZV90IHZhbCkKK3sKKyAgICAqcHRyID0gdmFsOworICAgIGRzYihpc2hzdCk7CisgICAgaXNiKCk7
Cit9CisKK3N0YXRpYyB2b2lkIGJ1aWxkX3B0ZShscGFlX3QgKnBtZCwgdW5zaWduZWQgbG9uZyB2
YWRkciwgdW5zaWduZWQgbG9uZyB2ZW5kLAorICAgICAgICAgICAgICAgICAgICAgIHBhZGRyX3Qg
cGh5cywgdWludDY0X3QgbWVtX3R5cGUpCit7CisgICAgbHBhZV90ICpwdGU7CisKKyAgICBwdGUg
PSAobHBhZV90ICopdG9fdmlydCgoKnBtZCkgJiB+QVRUUl9NQVNLX0wpICsgbDNfcGd0X2lkeCh2
YWRkcik7CisgICAgZG8geworICAgICAgICBzZXRfcGd0X2VudHJ5KHB0ZSwgKHBoeXMgJiBMM19N
QVNLKSB8IG1lbV90eXBlIHwgTDNfUEFHRSk7CisKKyAgICAgICAgdmFkZHIgKz0gTDNfU0laRTsK
KyAgICAgICAgcGh5cyArPSBMM19TSVpFOworICAgICAgICBwdGUrKzsKKyAgICB9IHdoaWxlICh2
YWRkciA8IHZlbmQpOworfQorCitzdGF0aWMgaW50IGJ1aWxkX3BtZChscGFlX3QgKnB1ZCwgdW5z
aWduZWQgbG9uZyB2YWRkciwgdW5zaWduZWQgbG9uZyB2ZW5kLAorICAgICAgICAgICAgICAgICAg
ICAgIHBhZGRyX3QgcGh5cywgdWludDY0X3QgbWVtX3R5cGUsCisgICAgICAgICAgICAgICAgICAg
ICAgcGFkZHJfdCAoKm5ld19wYWdlKSh2b2lkKSwgaW50IGxldmVsKQoreworICAgIGxwYWVfdCAq
cG1kOworICAgIHVuc2lnbmVkIGxvbmcgbmV4dDsKKworICAgIHBtZCA9IChscGFlX3QgKil0b192
aXJ0KCgqcHVkKSAmIH5BVFRSX01BU0tfTCkgKyBsMl9wZ3RfaWR4KHZhZGRyKTsKKyAgICBkbyB7
CisgICAgICAgIGlmIChsZXZlbCA9PSAyKSB7CisgICAgICAgICAgICAgc2V0X3BndF9lbnRyeShw
bWQsIChwaHlzICYgTDJfTUFTSykgfCBtZW1fdHlwZSB8IEwyX0JMT0NLKTsKKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgICBuZXh0ID0gdmFkZHIgKyBMMl9TSVpFOworICAgICAgICAgICAg
IGlmIChuZXh0ID4gdmVuZCkKKyAgICAgICAgICAgICAgICAgbmV4dCA9IHZlbmQ7CisKKyAgICAg
ICAgICAgICBpZiAoKCpwbWQpID09IEwyX0lOVkFMKSB7CisgICAgICAgICAgICAgICAgIHBhZGRy
X3QgbmV3cGFnZSA9IG5ld19wYWdlKCk7CisgICAgICAgICAgICAgICAgIGlmICghbmV3cGFnZSkK
KyAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLUVOT01FTTsKKyAgICAgICAgICAgICAg
ICAgc2V0X3BndF9lbnRyeShwbWQsIG5ld3BhZ2UgfCBQVF9QVCk7CisgICAgICAgICAgICAgfQor
CisgICAgICAgICAgICAgYnVpbGRfcHRlKHBtZCwgdmFkZHIsIG5leHQsIHBoeXMsIG1lbV90eXBl
KTsKKyAgICAgICAgfQorCisgICAgICAgIHZhZGRyICs9IEwyX1NJWkU7CisgICAgICAgIHBoeXMg
Kz0gTDJfU0laRTsKKyAgICAgICAgcG1kKys7CisgICAgfSB3aGlsZSAodmFkZHIgPCB2ZW5kKTsK
KworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IGJ1aWxkX3B1ZChscGFlX3QgKnBnZCwg
dW5zaWduZWQgbG9uZyB2YWRkciwgdW5zaWduZWQgbG9uZyB2ZW5kLAorICAgICAgICAgICAgICAg
ICAgICAgIHBhZGRyX3QgcGh5cywgdWludDY0X3QgbWVtX3R5cGUsCisgICAgICAgICAgICAgICAg
ICAgICAgcGFkZHJfdCAoKm5ld19wYWdlKSh2b2lkKSwgaW50IGxldmVsKQoreworICAgIGxwYWVf
dCAqcHVkOworICAgIHVuc2lnbmVkIGxvbmcgbmV4dDsKKyAgICBpbnQgcmV0OworCisgICAgcHVk
ID0gKGxwYWVfdCAqKXRvX3ZpcnQoKCpwZ2QpICYgfkFUVFJfTUFTS19MKSArIGwxX3BndF9pZHgo
dmFkZHIpOworICAgIGRvIHsKKyAgICAgICAgaWYgKGxldmVsID09IDEpIHsKKyAgICAgICAgICAg
ICBzZXRfcGd0X2VudHJ5KHB1ZCwgKHBoeXMgJiBMMV9NQVNLKSB8IG1lbV90eXBlIHwgTDFfQkxP
Q0spOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgIG5leHQgPSB2YWRkciArIEwxX1NJ
WkU7CisgICAgICAgICAgICAgaWYgKG5leHQgPiB2ZW5kKQorICAgICAgICAgICAgICAgICBuZXh0
ID0gdmVuZDsKKworICAgICAgICAgICAgIGlmICgoKnB1ZCkgPT0gTDFfSU5WQUwpIHsKKyAgICAg
ICAgICAgICAgICAgcGFkZHJfdCBuZXdwYWdlID0gbmV3X3BhZ2UoKTsKKyAgICAgICAgICAgICAg
ICAgaWYgKCFuZXdwYWdlKQorICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07Cisg
ICAgICAgICAgICAgICAgIHNldF9wZ3RfZW50cnkocHVkLCBuZXdwYWdlIHwgUFRfUFQpOworICAg
ICAgICAgICAgIH0KKworICAgICAgICAgICAgIHJldCA9IGJ1aWxkX3BtZChwdWQsIHZhZGRyLCBu
ZXh0LCBwaHlzLCBtZW1fdHlwZSwgbmV3X3BhZ2UsIGxldmVsKTsKKyAgICAgICAgICAgICBpZiAo
cmV0KQorICAgICAgICAgICAgICAgICByZXR1cm4gcmV0OworICAgICAgICB9CisKKyAgICAgICAg
dmFkZHIgKz0gTDFfU0laRTsKKyAgICAgICAgcGh5cyArPSBMMV9TSVpFOworICAgICAgICBwdWQr
KzsKKyAgICB9IHdoaWxlICh2YWRkciA8IHZlbmQpOworCisgICAgcmV0dXJuIDA7Cit9CisKK3N0
YXRpYyBpbnQgYnVpbGRfcGFnZXRhYmxlKHVuc2lnbmVkIGxvbmcgdmFkZHIsIHVuc2lnbmVkIGxv
bmcgc3RhcnRfcGZuLAorICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtYXhfcGZu
LCB1aW50NjRfdCBtZW1fdHlwZSwKKyAgICAgICAgICAgICAgICAgICAgIHBhZGRyX3QgKCpuZXdf
cGFnZSkodm9pZCksIGludCBsZXZlbCkKK3sKKyAgICBwYWRkcl90IHBfc3RhcnQ7CisgICAgdW5z
aWduZWQgbG9uZyB2X2VuZCwgbmV4dDsKKyAgICBscGFlX3QgKnBnZDsKKyAgICBpbnQgcmV0Owor
CisgICAgdl9lbmQgPSB2YWRkciArIG1heF9wZm4gKiBQQUdFX1NJWkU7CisgICAgcF9zdGFydCA9
IFBGTl9QSFlTKHN0YXJ0X3Bmbik7CisKKyAgICBwZ2QgPSAmYm9vdF9sMF9wZ3RhYmxlW2wwX3Bn
dF9pZHgodmFkZHIpXTsKKworICAgIGRvIHsKKyAgICAgICAgbmV4dCA9ICh2YWRkciArIEwwX1NJ
WkUpOworICAgICAgICBpZiAobmV4dCA+IHZfZW5kKQorICAgICAgICAgICAgbmV4dCA9IHZfZW5k
OworCisgICAgICAgIGlmICgoKnBnZCkgPT0gTDBfSU5WQUwpIHsKKyAgICAgICAgICAgIHBhZGRy
X3QgbmV3cGFnZSA9IG5ld19wYWdlKCk7CisgICAgICAgICAgICBpZiAoIW5ld3BhZ2UpCisgICAg
ICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07CisgICAgICAgICAgICBzZXRfcGd0X2VudHJ5KHBn
ZCwgbmV3cGFnZSB8IFBUX1BUKTsKKyAgICAgICAgfQorCisgICAgICAgIHJldCA9IGJ1aWxkX3B1
ZChwZ2QsIHZhZGRyLCBuZXh0LCBwX3N0YXJ0LCBtZW1fdHlwZSwgbmV3X3BhZ2UsIGxldmVsKTsK
KyAgICAgICAgaWYgKHJldCkKKyAgICAgICAgICAgIHJldHVybiByZXQ7CisKKyAgICAgICAgcF9z
dGFydCArPSBuZXh0IC0gdmFkZHI7CisgICAgICAgIHZhZGRyID0gbmV4dDsKKyAgICAgICAgcGdk
Kys7CisgICAgfSB3aGlsZSAodmFkZHIgIT0gdl9lbmQpOworCisgICAgcmV0dXJuIDA7Cit9CisK
Ky8qCisgKiBCZWZvcmUgdGhlIHBhZ2UgYWxsb2NhdG9yIGlzIHJlYWR5LCB3ZSB1c2UgZmlyc3Rf
ZnJlZV9wZm4gdG8gcmVjb3JkCisgKiB0aGUgZmlyc3QgZnJlZSBwYWdlLiBUaGUgZmlyc3RfZnJl
ZV9wZm4gd2lsbCBiZSBpbmNyZWFzZWQgYnkKKyAqIGVhcmx5X2FsbG9jX3BhZ2UoKS4KKyAqLwor
c3RhdGljIHVuc2lnbmVkIGxvbmcgZmlyc3RfZnJlZV9wZm47CisKKy8qIFRoZSBwZm4gZm9yIE1J
Tl9NRU1fU0laRSAqLworc3RhdGljIHVuc2lnbmVkIGxvbmcgbWluX21lbV9wZm47CisKK3N0YXRp
YyBwYWRkcl90IGVhcmx5X2FsbG9jX3BhZ2Uodm9pZCkKK3sKKyAgICBwYWRkcl90IG5ld19wYWdl
OworCisgICAgbWVtc2V0KHBmbl90b192aXJ0KGZpcnN0X2ZyZWVfcGZuKSwgMCwgUEFHRV9TSVpF
KTsKKyAgICBkc2IoaXNoc3QpOworCisgICAgbmV3X3BhZ2UgPSBQRk5fUEhZUyhmaXJzdF9mcmVl
X3Bmbik7CisgICAgZmlyc3RfZnJlZV9wZm4rKzsKKyAgICBBU1NFUlQoZmlyc3RfZnJlZV9wZm4g
PCBtaW5fbWVtX3Bmbik7CisgICAgcmV0dXJuIG5ld19wYWdlOworfQorCitzdGF0aWMgaW50IGlu
aXRfcGFnZXRhYmxlX29rOworLyoKKyAqIFRoaXMgZnVuY3Rpb24gd2lsbCBzZXR1cCB0aGUgcGFn
ZSB0YWJsZSBmb3IgdGhlIG1lbW9yeSBzeXN0ZW0uCisgKi8KK3ZvaWQgaW5pdF9wYWdldGFibGUo
dW5zaWduZWQgbG9uZyAqc3RhcnRfcGZuLCB1bnNpZ25lZCBsb25nIGJhc2UsCisgICAgICAgICAg
ICAgICAgICAgIHVuc2lnbmVkIGxvbmcgc2l6ZSkKK3sKKyAgICB1bnNpZ25lZCBsb25nIHZhZGRy
ID0gKHVuc2lnbmVkIGxvbmcpdG9fdmlydChiYXNlKTsKKyAgICBwYWRkcl90IHBoeXMgPSBiYXNl
OworICAgIHBhZGRyX3Qgc3ogPSBMMV9TSVpFOworICAgIGxwYWVfdCAqcGdkOworICAgIGxwYWVf
dCAqcHVkOworICAgIGludCBsZXZlbDsKKworICAgIGRvIHsKKyAgICAgICAgLyoKKyAgICAgICAg
ICogV2UgY2Fubm90IHNldCBibG9jayBtYXBwaW5nIGZvciBQR0QobGV2ZWwgMCksCisgICAgICAg
ICAqIGJ1dCB3ZSBjYW4gc2V0IGJsb2NrIG1hcHBpbmcgZm9yIFBVRChsZXZlbCAxKSBhbmQgUE1E
KGxldmVsIDIpLgorICAgICAgICAgKiBHZXQgdGhlIHByb3BlciBsZXZlbCBmb3IgYnVpbGRfcGFn
ZXRhYmxlKCkuCisgICAgICAgICAqLworICAgICAgICBpZiAoc2l6ZSA+PSBMMV9TSVpFKSB7Cisg
ICAgICAgICAgICBwZ2QgPSAmYm9vdF9sMF9wZ3RhYmxlW2wwX3BndF9pZHgodmFkZHIpXTsKKyAg
ICAgICAgICAgIGlmICgoKnBnZCkgPT0gTDBfSU5WQUwpIHsKKyAgICAgICAgICAgICAgICAgbGV2
ZWwgPSAxOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgcHVkID0gKGxw
YWVfdCAqKXRvX3ZpcnQoKCpwZ2QpICYgfkFUVFJfTUFTS19MKSArIGwxX3BndF9pZHgodmFkZHIp
OworICAgICAgICAgICAgICAgICBpZiAoKCpwdWQpID09IEwxX0lOVkFMKQorICAgICAgICAgICAg
ICAgICAgICAgbGV2ZWwgPSAxOworICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAg
ICAgICAgICBsZXZlbCA9IDI7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICAgc3ogPSBzaXplICYgTDJfTUFTSzsKKyAgICAgICAgICAgICBsZXZlbCA9IDI7Cisg
ICAgICAgIH0KKworICAgICAgICBidWlsZF9wYWdldGFibGUodmFkZHIsIFBIWVNfUEZOKHBoeXMp
LCBQRk5fVVAoc3opLAorICAgICAgICAgICAgICAgICAgICAgICAgTUVNX0RFRl9BVFRSLCBlYXJs
eV9hbGxvY19wYWdlLCBsZXZlbCk7CisKKyAgICAgICAgdmFkZHIgKz0gc3o7CisgICAgICAgIHBo
eXMgICs9IHN6OworICAgICAgICBzaXplIC09IHN6OworICAgIH0gd2hpbGUgKHNpemUgPiBMMl9T
SVpFKTsKKworICAgIC8qIFVzZSB0aGUgcGFnZSBtYXBwaW5nIChsZXZlbCAzKSBmb3IgdGhlIGxl
ZnQgKi8KKyAgICBpZiAoc2l6ZSkKKyAgICAgICAgYnVpbGRfcGFnZXRhYmxlKHZhZGRyLCBQSFlT
X1BGTihwaHlzKSwgUEZOX1VQKHNpemUpLAorICAgICAgICAgICAgICAgICAgICAgICAgTUVNX0RF
Rl9BVFRSLCBlYXJseV9hbGxvY19wYWdlLCAzKTsKKworICAgICpzdGFydF9wZm4gPSBmaXJzdF9m
cmVlX3BmbjsKKyAgICBpbml0X3BhZ2V0YWJsZV9vayA9IDE7Cit9CisKK3ZvaWQgYXJjaF9tbV9w
cmVpbml0KHZvaWQgKmR0Yl9wb2ludGVyKQoreworICAgIHBhZGRyX3QgKipkdGJfcCA9IGR0Yl9w
b2ludGVyOworICAgIHBhZGRyX3QgKmR0YiA9ICpkdGJfcDsKKyAgICB1aW50cHRyX3QgZW5kID0g
KHVpbnRwdHJfdCkgJl9lbmQ7CisKKyAgICBkdGIgPSB0b192aXJ0KCgocGFkZHJfdClkdGIpKTsK
KyAgICBmaXJzdF9mcmVlX3BmbiA9IFBGTl9VUCh0b19waHlzKGVuZCkpOworICAgIG1pbl9tZW1f
cGZuID0gUEZOX1VQKHRvX3BoeXMoX3RleHQpICsgTUlOX01FTV9TSVpFKTsKKworICAgIC8qCisg
ICAgICogU2V0dXAgdGhlIG1hcHBpbmcgZm9yIERldmljZSBUcmVlLCBvbmx5IG1hcCAyTShMMl9T
SVpFKSBzaXplLgorICAgICAqCisgICAgICogTm90ZTogVGhlIGVhcmx5X2FsbG9jX3BhZ2UoKSB3
aWxsIGluY3JlYXNlIEBmaXJzdF9mcmVlX3Bmbi4KKyAgICAgKi8KKyAgICBidWlsZF9wYWdldGFi
bGUoKHVuc2lnbmVkIGxvbmcpZHRiLCB2aXJ0X3RvX3BmbigodW5zaWduZWQgbG9uZylkdGIpLAor
ICAgICAgICAgICAgICAgICAgICBQSFlTX1BGTihMMl9TSVpFKSwgTUVNX0RFRl9BVFRSLCBlYXJs
eV9hbGxvY19wYWdlLCAyKTsKKworICAgICpkdGJfcCA9IGR0YjsKK30KKwogdm9pZCBhcmNoX2lu
aXRfbW0odW5zaWduZWQgbG9uZyAqc3RhcnRfcGZuX3AsIHVuc2lnbmVkIGxvbmcgKm1heF9wZm5f
cCkKIHsKICAgICBpbnQgbWVtb3J5OwpAQCAtNjUsNiArMjk2LDExIEBAIHZvaWQgYXJjaF9pbml0
X21tKHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3Bmbl9wLCB1bnNpZ25lZCBsb25nICptYXhfcGZuX3Ap
CiAgICAgZW5kID0gKHVpbnRwdHJfdCkgJl9lbmQ7CiAgICAgbWVtX2Jhc2UgPSBmZHQ2NF90b19j
cHUocmVnc1swXSk7CiAgICAgbWVtX3NpemUgPSBmZHQ2NF90b19jcHUocmVnc1sxXSk7CisKKyAg
ICBCVUdfT04obWVtX3NpemUgPCBNSU5fTUVNX1NJWkUpOworICAgIGlmIChtZW1fc2l6ZSA+IE1B
WF9NRU1fU0laRSkKKyAgICAgICAgbWVtX3NpemUgPSBNQVhfTUVNX1NJWkU7CisKICAgICBwcmlu
dGsoIkZvdW5kIG1lbW9yeSBhdCAweCVsbHggKGxlbiAweCVsbHgpXG4iLAogICAgICAgICAgICAg
KHVuc2lnbmVkIGxvbmcgbG9uZykgbWVtX2Jhc2UsICh1bnNpZ25lZCBsb25nIGxvbmcpIG1lbV9z
aXplKTsKIApAQCAtNzMsNiArMzA5LDggQEAgdm9pZCBhcmNoX2luaXRfbW0odW5zaWduZWQgbG9u
ZyAqc3RhcnRfcGZuX3AsIHVuc2lnbmVkIGxvbmcgKm1heF9wZm5fcCkKICAgICBoZWFwX2xlbiA9
IG1lbV9zaXplIC0gKFBGTl9QSFlTKCpzdGFydF9wZm5fcCkgLSBtZW1fYmFzZSk7CiAgICAgKm1h
eF9wZm5fcCA9ICpzdGFydF9wZm5fcCArIFBGTl9ET1dOKGhlYXBfbGVuKTsKIAorICAgIGluaXRf
cGFnZXRhYmxlKHN0YXJ0X3Bmbl9wLCBtZW1fYmFzZSwgbWVtX3NpemUpOworCiAgICAgcHJpbnRr
KCJVc2luZyBwYWdlcyAlbHUgdG8gJWx1IGFzIGZyZWUgc3BhY2UgZm9yIGhlYXAuXG4iLCAqc3Rh
cnRfcGZuX3AsICptYXhfcGZuX3ApOwogCiAgICAgLyogVGhlIGRldmljZSB0cmVlIGlzIHByb2Jh
Ymx5IGluIG1lbW9yeSB0aGF0IHdlJ3JlIGFib3V0IHRvIGhhbmQgb3ZlciB0byB0aGUgcGFnZQpk
aWZmIC0tZ2l0IGEvYXJjaC9hcm0vc2V0dXAuYyBiL2FyY2gvYXJtL3NldHVwLmMKaW5kZXggMjdi
ZWE0YS4uYWI4MmVkYSAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vc2V0dXAuYworKysgYi9hcmNoL2Fy
bS9zZXR1cC5jCkBAIC0yOSw2ICsyOSw5IEBAIHZvaWQgYXJjaF9pbml0KHZvaWQgKmR0Yl9wb2lu
dGVyLCBwYWRkcl90IHBoeXNpY2FsX29mZnNldCkKIAogICAgIHhwcmludGsoIlZpcnR1YWwgLT4g
cGh5c2ljYWwgb2Zmc2V0ID0gJSJQUklwYWRkciIgXG4iLCBwaHlzaWNhbF9hZGRyZXNzX29mZnNl
dCk7CiAKKyAgICAvKiBEbyB0aGUgcHJlcGFyYXRpb25zICovCisgICAgYXJjaF9tbV9wcmVpbml0
KCZkdGJfcG9pbnRlcik7CisKICAgICB4cHJpbnRrKCJDaGVja2luZyBEVEIgYXQgJXAuLi5cbiIs
IGR0Yl9wb2ludGVyKTsKIAogICAgIGlmICgociA9IGZkdF9jaGVja19oZWFkZXIoZHRiX3BvaW50
ZXIpKSkgewpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0vYXJjaF9tbS5oIGIvaW5jbHVkZS9hcm0v
YXJjaF9tbS5oCmluZGV4IGY3N2EyMTAuLmRiNmU3ODEgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvYXJt
L2FyY2hfbW0uaAorKysgYi9pbmNsdWRlL2FybS9hcmNoX21tLmgKQEAgLTMsNiArMywxMCBAQAog
CiB0eXBlZGVmIHVpbnQ2NF90IHBhZGRyX3Q7CiAjZGVmaW5lIFBSSXBhZGRyICJseCIKKyNkZWZp
bmUgTUlOX01FTV9TSVpFICAgICAgICAgICAgKDB4NDAwMDAwKQorI2RlZmluZSBNQVhfTUVNX1NJ
WkUgICAgICAgICAgICAoMVVMIDw8IDM5KQorCit0eXBlZGVmIHVpbnQ2NF90IGxwYWVfdDsKIAog
ZXh0ZXJuIGNoYXIgX3RleHQsIF9ldGV4dCwgX2Vyb2RhdGEsIF9lZGF0YSwgX2VuZCwgX19ic3Nf
c3RhcnQ7CiBleHRlcm4gaW50IF9ib290X3N0YWNrW107CkBAIC0zMCw2ICszNCw3IEBAIGV4dGVy
biBwYWRkcl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0OwogCiAjZGVmaW5lIHZpcnR1YWxfdG9f
bWZuKF92aXJ0KQkgICB2aXJ0X3RvX21mbihfdmlydCkKIAordm9pZCBhcmNoX21tX3ByZWluaXQo
dm9pZCAqZHRiX3BvaW50ZXIpOwogLy8gRklYTUUKICNkZWZpbmUgbWFwX2ZyYW1lcyhmLCBuKSAo
TlVMTCkKIAotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54
ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGlu
Zm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:12 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjM-0003NE-Kw; Mon, 16 Apr 2018 06:35:12 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjL-0003Mt-Ox
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:11 +0000
X-Inumbo-ID: 2dec23a3-4140-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::607])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 2dec23a3-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:14 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=iD3UEqc8+MopZnsfJhIboZdDHx4I6hdTwm/HI5M6nyc=;
 b=VTVmvPyCUPxcjsumdyL9r2lK/b/w25b7bAqzGGKC2e7F05Gi6SDHkCv8fh7jQR0nOCapS0/rRN4MLXGiAkPJM1QGYwq8rRbhkdGBXlKBj6zGYuaPApr4DMXpMIberwuGaz32fD3qHlXvfTYxIS6xXZgdNb/CyEJcqbYcsl6l76U=
Received: from HE1PR0802CA0005.eurprd08.prod.outlook.com (2603:10a6:3:bd::15)
 by HE1PR0801MB1595.eurprd08.prod.outlook.com (2603:10a6:3:14::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Mon, 16
 Apr 2018 06:35:02 +0000
Received: from VE1EUR03FT056.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::207) by HE1PR0802CA0005.outlook.office365.com
 (2603:10a6:3:bd::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:02 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT056.mail.protection.outlook.com (10.152.19.28) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:02 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:42 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:10 +0000
Message-ID: <1523860343-16382-31-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(376002)(396003)(39850400004)(346002)(2980300002)(438002)(189003)(199004)(36756003)(246002)(426003)(305945005)(336012)(316002)(26005)(478600001)(2906002)(47776003)(86362001)(72206003)(2351001)(5660300001)(104016004)(26826003)(106002)(106466001)(54906003)(486006)(4326008)(16586007)(186003)(39060400002)(51416003)(8676002)(8666007)(6916009)(48376002)(6666003)(77096007)(7696005)(11346002)(356003)(8936002)(2616005)(76176011)(476003)(126002)(50466002)(50226002)(446003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0801MB1595; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT056;
 1:+lki2RMLPtPfJDaT42CF8Dj99+nVPkQMpybpABzZ/WoqymYx+0otkj5GvN7V/wDAPHdPW4ev1Zuio+p+QDXDk2FL1GJUnyrFi8zsCV2exy61cRrB55nwBwQ0uu2M6Fzr
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0801MB1595; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 3:IM1bTd7+nFvhy7HRxJyILYLonM71jexsR0OYbk/tHzYgJRjK4v8h9UYrtnJ4nj7Jhm7MFjRT/4rxa51c7QZbM3N1XmYKc8r41+XGthuKw85ZX2LRwa7Wnj8BHCytnH/GgAxVsPKWAczCSV9mm7fuVmJnMGuBRSl2ciHq4PV0Djik67bGThVzBG+ZMHyPslEPmiIobC9yKfEIyTg5dae2NVz07FeESi4sCeKt4yHwGXTPPO39lcZIlQ4tEYo7zvEVrTG3X4Yhm5JI+daYiRC/AH6L1/vU6PTSSY2CPTT78GT4RshUnYJ5WG4X/epy97sSKtxM1lLfWnkC1z6xrz37F1Ybnc0/h2osly4YleIKleQ=;
 25:hdcuA4QNfbZE55NPDlxZFT9craVyJ0RWwI11LCXpcKgZ+zIkLCSh7XCQE3QpPCMQoVNcrImjV4yYskkGrgZjHM1GbRM0IKOR4gFPI6LpstTjtnU41JaCq4AP6DejAZWRVeMcesmCgAIzbc2C4+aYllSYq78huQPUj4Zal8fyeIvNl5gG9SlnhacBLVBSvN9jwfY9kICy+qgXJvDxS1gEWqwKEWtVnZgTGGSv5nVhJqEonjb2amwavYbXs9lYzK6vB+0w26nV7WMOO9GE9p2zAPwYRbOJDrZfVIMlNKgkB8dzNeYYmaSi1nuvKWUT+QZ0XquwxHqc4sBn1mPnlHd90w==
X-MS-TrafficTypeDiagnostic: HE1PR0801MB1595:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 31:Zzy2FCktPwQs3kZQCi6UHCgLTZrFggWTztgQl+3fK+rvrKawtkQwnmyUN2AQOuXM8Cq0iCXDpXq6zN8NI42PcHmfc8wABed6YqyBmNjgWOPKrtaNpqxGIVwhMETTeq1bQzZjLkong9S5ZA+H2fbYHoFuPN9QAE7UD+a85p9QGN7MLC1yjpBdLQ5EP//6wYhaXRYnhH/oQ2B6IZ6m10Ph8ClJxhMrA7Y6S3/oXsHn1pk=;
 20:UbC+HPTfpXx+Qutjw1FXYh7vDAdmhzD3M3ELE1L3kgWc+E7udTJfKxMGvmxnrfRkFMa0IhxBqWPQeTO6C62u92E2Nz22odm+V8Bx/7e8p49TAo1d/HCg3SSLqvbsn5vFUelMfBF8F6YOI1brfRLYzU3SG3ceB12zU8IrojPCchQp2GnILWrHdcspPA4TUkeBkri/W3xzQh979EI/p4ZKGb59gv2XTn2MshxuKpqs2nrBHQSyZoA5MLJup+92MDf/;
 4:+1zIHPTp8fUhIiRlr38/urSfdK+HqFhJ9uh9xpMjCh8cMihFtPHeFBW1bBS0QAWNySOC+Vl2306ceNnLzRK4cuHCYSU+6WleS1Xr4U5zSHEQ47rC5uOEefNAk1Ju6Enav0z3pHLeFd3JwGFjUBjUTQ0a/D/nW3NITH/MJEYDREfri9PSWq2TE8ETyqodlbaCq0MRiE8GzVNZ6K13DLHbQvgt3flH0BgjksKgLmF3Sew82jfTN3HMoi4/RR3uscUkS55UExbxyCPZHVgzlOzwfHrJS+TVgN/X6XqlBb4milrEeCdcBm2hX8rJCUYfQz4u
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0801MB1595123F02EBF789A8F5922384B00@HE1PR0801MB1595.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(3231232)(944501327)(52105095)(93006095)(93004095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:HE1PR0801MB1595; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0801MB1595; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0801MB1595;
 23:PWWt4BrIuXKAqcAeT7pq3pVQYdjcVW/19WXipoN?=
 =?us-ascii?Q?0ZT7y7D6HNQSXeNrdEGqtCD1gmoaOpxQGu38TGKoa4C1akPo2jg/6qLGa7si?=
 =?us-ascii?Q?RGsjDi9RC45iR5ZyiSHJNq201ksoydbB4j4qyVTvlgKXU0CzUoRwbzoR3Pps?=
 =?us-ascii?Q?zSV9XhTZoVgu89XrqeV0XwjX4XJ6WlNPW0tgdLG194iXR/XDvBufeWbusl7g?=
 =?us-ascii?Q?Zw0t+1ASDGbDqLbouXbLr6r7YAmO0xjqxlcDI2p2u2lqb3QMl0Xh/Pk1ZkN0?=
 =?us-ascii?Q?u+BLGMaJxY7K8kpx5/CZJJl3vBT6RFKHqhrAr77LYWiFQuZKBaIK0UD3kpWF?=
 =?us-ascii?Q?IrDFWuCa1Fh7BsaiGYxnObsgxv8DKmjWOMKxHbSMvKCho2X5RyfzzTx1g23s?=
 =?us-ascii?Q?P6gDb/q+yX2KGiqqkxEJjn/DRj5LeVAUQ/nxnbI0M3TCrsBZ8pKANSDOWiq3?=
 =?us-ascii?Q?l5exeBxdERYdcii6JjDeyId+mUF21IhPeNCiHfL78RVEO7kCvGt2//LsjghM?=
 =?us-ascii?Q?BlAX0S19SaQ72ex/+/3uLr8AH79G/HNGVKGGfV/rjwAk3Vl7uyunMYUNQrDK?=
 =?us-ascii?Q?O9DcVQZi3GQDyh/h3Ok6MJZR/IAPGt7iIEldLccnKbklVgfqhgrITNfniDG3?=
 =?us-ascii?Q?iuVxqO90gTxU7S3evUgdOyIukiZU/XKoveyTPgjYpirxJlbqzvAIH7JELPrW?=
 =?us-ascii?Q?koD/RS3EQMy+1pXtFluVG/g3XSq/9S6inOdy14R5rlNKg+l/xJfW0g26qsju?=
 =?us-ascii?Q?Y9VNkzh539WBvoGO2VFzt0sutDSzwxi/y3irECFcacCdGz0rAjMlBt3LzWOd?=
 =?us-ascii?Q?BObDHER5SFYwkKH3Tq+2tICumpQ1s7OOPtyVoODi6jYQ3hjqABNvLNaPYOKg?=
 =?us-ascii?Q?7Oq6SXetiO7tpOifL+yUMsXAaalDail4ymAvHW9tMZn23lZf3VcLQWGR4Fpf?=
 =?us-ascii?Q?pZxB9s6mC07KEECGf6HV1J89ogc3W9lSao1ZAvIomDWprKsnhAT+oV8TnEOc?=
 =?us-ascii?Q?+oxXC/rWzoVOVBC7GQRLSkcAotRMEQXFl/hUD6rz9qzFLAm+8O4xcFKFoAf1?=
 =?us-ascii?Q?MiACRsI8xdyDJPkJqQAPjxRtJ/JXhgYe22WBtx+nhkDBbMHyjn6Wg2+J5X5K?=
 =?us-ascii?Q?eKZv376EAhv7BIpKC8xLeekrHbdoGuphT?=
X-Microsoft-Antispam-Message-Info: ZVQw8DN8uJD9yhfXb6m+0InOFSiD1wupVeFFVjVTsmmyriNmoyNKjJG62qngWPOT3qoFtXpGUQQR43MhXR7ESN0oMudcEAdh2FAd2eJT8CD/LG+V2XxbZSXNvjyGoCWnAO8zRhjHhSvFqT9jtv96oaYETtmaqX2mL4CHwOGDusnUwkg+R3mpeSetUpnZcAC2i7hbolnuvfF5yS1r2VY0Xhw02aWOURN2ZGM4+QxOOoBnplAr3/empzz1HtSc1JIbptUVguKZpb/zqrTc0g7LyVBb9AXWls/yFFWoReNrStKIO3hNzgAfvgerLH/DLjJKYtXlXUtMNMf/rbLdxaNT8UfDsEXT3C4oE+/4dnaAFWMu5C1AMWpR60eatuVOgumq5IlSRJQt0HTXKsP5F/chB4qtVg44Yi8rQW/Rvx0WzeQ=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 6:qLfLPT3g5cRZXRXTJ1BKTaQqqKZlWM0t0cgbDemNz/P5v/w3JbKRhED+MieXrppOl0BfuenLQjnCKmFwFekdqBf8hUR0RuBpecdBb6mi94kGh9MYkNrcSVEY5cUfeYIQ4J3YISRPCKgtnHVTBKGobqiI92/3SD75bGmZR2CcwGAZCidRO2tS9m41CwcLVd1ElvVzG8AukG+32JdKsGWQQylcaiq1NrAovcvM/ExQtn/8wVAXZ3UGWe+l0/HOaeMQ3NLSKrpd2uouII7qolkpOpvSroH8QXr9Vz+dfKVoZtXC0FFR69EMeRUV9Amqa34Ru1Sxf71gNTNkKggnpb26CJhOSJQihxYUDAac6cCcAsykgcF/4USzk2waO6eXyEYJS5JUBp2g1vOeoIVPbLK7JFPe2b0UPHTH4Wi3uRYdoILmpBg4NoHQYBqgBp1QIZVEk+M7jt5hiizZlDy7oZXQY6kT77CYFDvGsyzZ8OjA6YQ9stYlt8J1/ivowWjMr1Vw;
 5:n73OkLvSXnKW2j8c5pBgszHJutREpUr1/eRatTeKCHXMWpl5co6fraB4ywXiVu9UDKKMmdxBQgKxWnf8EXuqIoTxP8cTEXfpibWRWfOCVHROE2rnYcSE+zxVmJ+197fHjOmlDNpVDKwsxisxoOILx3IMSsx1npjAEN3NXLT3Z64=;
 24:EVcFK6jpZQPo9MAsigbTXZUAWY8x7grACPzgV2KBpsCvy5UjVIit6N5pZ/CiiFdqmZFJm2pFdTcJUfyZBOOYYiMLOtP5n0Mwe15zNrQpqJM=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 7:icUFo0SfDuBuxUKH9IKHJetnPx4ErmesXgfm5g/tH5esQ6tqrQXMDNsPQLqYeoksRaXuDOtBcfhTzvG7RUdtIRAQAefM4pzR+M+nKh/fvfs2FydlQtsxLqdD+LPkhBKl/ETZWgsb0sg8AdzRDhtPjtWqbFis63TxkHbsmvE6S6D+PSmiJlgGutddlSBFd2rVL2qHpvPHMrpd91RfBP+WKsFu2sYFexXSFX6LRczEARXvz9Q1esDFB2txB0kz91J7
X-MS-Office365-Filtering-Correlation-Id: 28567e51-1c1d-41d7-5de0-08d5a3642f03
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:02.0787 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 28567e51-1c1d-41d7-5de0-08d5a3642f03
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1595
Subject: [Minios-devel] [PATCH v3 30/43] arm64: add a new helper ioremap
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBhZGRzIGEgbmV3IGhlbHBlciA6IGlvcmVtYXAuCgpUaGlzIGhlbHBlciBpcyB1
c2VkIGJ5IHRoZSBHSUMgbWFwcGluZy4KVGhlIHJldHVybiBhZGRyZXNzIGlzIGdvdCBmcm9tIHRo
ZSBkZW1hbmQgYXJlYS4KClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5n
QGFybS5jb20+Ci0tLQogYXJjaC9hcm0vZ2ljLmMgICAgICAgIHwgIDYgKysrKy0tCiBhcmNoL2Fy
bS9tbS5jICAgICAgICAgfCAzOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0t
LQogaW5jbHVkZS9hcm0vYXJjaF9tbS5oIHwgIDIgKysKIDMgZmlsZXMgY2hhbmdlZCwgMzggaW5z
ZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9hcmNoL2FybS9naWMuYyBi
L2FyY2gvYXJtL2dpYy5jCmluZGV4IDE4NTUyOTMuLjFlMzdjZGMgMTAwNjQ0Ci0tLSBhL2FyY2gv
YXJtL2dpYy5jCisrKyBiL2FyY2gvYXJtL2dpYy5jCkBAIC0yMDcsOCArMjA3LDEwIEBAIHZvaWQg
Z2ljX2luaXQodm9pZCkgewogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAg
fQogCi0gICAgICAgICAgICBnaWMuZ2ljZF9iYXNlID0gdG9fdmlydCgobG9uZykgZmR0NjRfdG9f
Y3B1KHJlZ1swXSkpOwotICAgICAgICAgICAgZ2ljLmdpY2NfYmFzZSA9IHRvX3ZpcnQoKGxvbmcp
IGZkdDY0X3RvX2NwdShyZWdbMl0pKTsKKyAgICAgICAgICAgIGdpYy5naWNkX2Jhc2UgPSBpb3Jl
bWFwKCh1bnNpZ25lZCBsb25nKSBmZHQ2NF90b19jcHUocmVnWzBdKSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBsb25nKSBmZHQ2NF90b19jcHUocmVnWzFd
KSk7CisgICAgICAgICAgICBnaWMuZ2ljY19iYXNlID0gaW9yZW1hcCgodW5zaWduZWQgbG9uZykg
ZmR0NjRfdG9fY3B1KHJlZ1syXSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAodW5zaWduZWQgbG9uZykgZmR0NjRfdG9fY3B1KHJlZ1szXSkpOwogICAgICAgICAgICAgcHJp
bnRrKCJGb3VuZCBHSUM6IGdpY2RfYmFzZSA9ICVwLCBnaWNjX2Jhc2UgPSAlcFxuIiwgZ2ljLmdp
Y2RfYmFzZSwgZ2ljLmdpY2NfYmFzZSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQpk
aWZmIC0tZ2l0IGEvYXJjaC9hcm0vbW0uYyBiL2FyY2gvYXJtL21tLmMKaW5kZXggZTgzYWM3MC4u
YjFjMTkyYSAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vbW0uYworKysgYi9hcmNoL2FybS9tbS5jCkBA
IC0xOCwxMiArMTgsNiBAQCBpbnQgYXJjaF9jaGVja19tZW1fYmxvY2soaW50IGluZGV4LCB1bnNp
Z25lZCBsb25nICpyX21pbiwgdW5zaWduZWQgbG9uZyAqcl9tYXgpCiAgICAgcmV0dXJuIDA7CiB9
CiAKLXVuc2lnbmVkIGxvbmcgYWxsb2NhdGVfb25kZW1hbmQodW5zaWduZWQgbG9uZyBuLCB1bnNp
Z25lZCBsb25nIGFsaWdubWVudCkKLXsKLSAgICAvLyBGSVhNRQotICAgIEJVRygpOwotfQotCiBl
eHRlcm4gbHBhZV90IGJvb3RfbDBfcGd0YWJsZVs1MTJdOwogCiBzdGF0aWMgaW5saW5lIHZvaWQg
c2V0X3BndF9lbnRyeShscGFlX3QgKnB0ciwgbHBhZV90IHZhbCkKQEAgLTIzNCw2ICsyMjgsNyBA
QCB2b2lkIGluaXRfcGFnZXRhYmxlKHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3BmbiwgdW5zaWduZWQg
bG9uZyBiYXNlLAogfQogCiBzdGF0aWMgdW5zaWduZWQgbG9uZyB2aXJ0X2tlcm5lbF9hcmVhX2Vu
ZDsKK3N0YXRpYyB1bnNpZ25lZCBsb25nIHZpcnRfZGVtYW5kX2FyZWFfZW5kOwogdm9pZCBhcmNo
X21tX3ByZWluaXQodm9pZCAqZHRiX3BvaW50ZXIpCiB7CiAgICAgcGFkZHJfdCAqKmR0Yl9wID0g
ZHRiX3BvaW50ZXI7CkBAIC0yNDEsNiArMjM2LDcgQEAgdm9pZCBhcmNoX21tX3ByZWluaXQodm9p
ZCAqZHRiX3BvaW50ZXIpCiAgICAgdWludHB0cl90IGVuZCA9ICh1aW50cHRyX3QpICZfZW5kOwog
CiAgICAgdmlydF9rZXJuZWxfYXJlYV9lbmQgPSBWSVJUX0tFUk5FTF9BUkVBOworICAgIHZpcnRf
ZGVtYW5kX2FyZWFfZW5kID0gVklSVF9ERU1BTkRfQVJFQTsKIAogICAgIGR0YiA9IHRvX3ZpcnQo
KChwYWRkcl90KWR0YikpOwogICAgIGZpcnN0X2ZyZWVfcGZuID0gUEZOX1VQKHRvX3BoeXMoZW5k
KSk7CkBAIC0yOTMsNiArMjg5LDM2IEBAIHVuc2lnbmVkIGxvbmcgbWFwX2ZyYW1lX3ZpcnQodW5z
aWduZWQgbG9uZyBtZm4pCiAgICAgcmV0dXJuIGFkZHI7CiB9CiAKK3Vuc2lnbmVkIGxvbmcgYWxs
b2NhdGVfb25kZW1hbmQodW5zaWduZWQgbG9uZyBuLCB1bnNpZ25lZCBsb25nIGFsaWdubWVudCkK
K3sKKyAgICB1bnNpZ25lZCBsb25nIGFkZHI7CisKKyAgICBhZGRyID0gdmlydF9kZW1hbmRfYXJl
YV9lbmQ7CisKKyAgICAvKiBKdXN0IGZvciBzaW1wbGUsIG1ha2UgaXQgcGFnZSBhbGlnbmVkLiAq
LworICAgIHZpcnRfZGVtYW5kX2FyZWFfZW5kICs9IChuICsgUEFHRV9TSVpFIC0gMSkgJiBQQUdF
X01BU0s7CisKKyAgICBBU1NFUlQodmlydF9kZW1hbmRfYXJlYV9lbmQgPD0gVklSVF9IRUFQX0FS
RUEpOworCisgICAgcmV0dXJuIGFkZHI7Cit9CisKK3ZvaWQgKmlvcmVtYXAocGFkZHJfdCBwYWRk
ciwgdW5zaWduZWQgbG9uZyBzaXplKQoreworICAgIHVuc2lnbmVkIGxvbmcgYWRkcjsKKyAgICBp
bnQgcmV0OworCisgICAgYWRkciA9IGFsbG9jYXRlX29uZGVtYW5kKHNpemUsIDEpOworICAgIGlm
ICghYWRkcikKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXQgPSBidWlsZF9wYWdldGFi
bGUoYWRkciwgUEhZU19QRk4ocGFkZHIpLCBQRk5fVVAoc2l6ZSksIE1FTV9ERVZfQVRUUiwKKyAg
ICAgICAgICAgICAgICAgIGluaXRfcGFnZXRhYmxlX29rPyBhbGxvY19uZXdfcGFnZTogZWFybHlf
YWxsb2NfcGFnZSwgMyk7CisgICAgaWYgKHJldCA8IDApCisgICAgICAgIHJldHVybiBOVUxMOwor
ICAgIHJldHVybiAodm9pZCopYWRkcjsKK30KKwogdm9pZCBhcmNoX2luaXRfbW0odW5zaWduZWQg
bG9uZyAqc3RhcnRfcGZuX3AsIHVuc2lnbmVkIGxvbmcgKm1heF9wZm5fcCkKIHsKICAgICBpbnQg
bWVtb3J5OwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0vYXJjaF9tbS5oIGIvaW5jbHVkZS9hcm0v
YXJjaF9tbS5oCmluZGV4IDRmM2ZkOGYuLmFkMTIyZTcgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvYXJt
L2FyY2hfbW0uaAorKysgYi9pbmNsdWRlL2FybS9hcmNoX21tLmgKQEAgLTcsNiArNyw3IEBAIHR5
cGVkZWYgdWludDY0X3QgcGFkZHJfdDsKICNkZWZpbmUgTUFYX01FTV9TSVpFICAgICAgICAgICAg
KDFVTCA8PCAzOSkKICNkZWZpbmUgVklSVF9LRVJORUxfQVJFQSAgICAgICAgKCh1bnNpZ25lZCBs
b25nKXRvX3ZpcnQoTUFYX01FTV9TSVpFKSkKICNkZWZpbmUgVklSVF9ERU1BTkRfQVJFQSAgICAg
ICAgKFZJUlRfS0VSTkVMX0FSRUEgKyBNQVhfTUVNX1NJWkUpCisjZGVmaW5lIFZJUlRfSEVBUF9B
UkVBICAgICAgICAgIChWSVJUX0RFTUFORF9BUkVBICsgTUFYX01FTV9TSVpFKQogCiB0eXBlZGVm
IHVpbnQ2NF90IGxwYWVfdDsKIApAQCAtNDAsNCArNDEsNSBAQCB2b2lkIGFyY2hfbW1fcHJlaW5p
dCh2b2lkICpkdGJfcG9pbnRlcik7CiAvLyBGSVhNRQogI2RlZmluZSBtYXBfZnJhbWVzKGYsIG4p
IChOVUxMKQogCit2b2lkICppb3JlbWFwKHBhZGRyX3QgYWRkciwgdW5zaWduZWQgbG9uZyBzaXpl
KTsKICNlbmRpZgotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0
cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlz
dGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:14 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjO-0003OF-Ne; Mon, 16 Apr 2018 06:35:14 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjN-0003Nm-1G
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:13 +0000
X-Inumbo-ID: 2eac619a-4140-11e8-9728-bc764e045a96
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe07::603])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 2eac619a-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:15 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=3ib3RZunqS5DfK95VhkIl9bAQDqB4pNl2wnmy26HCHA=;
 b=lPf9tUz8nZiXrCJ65H1efq9mxMScUpAljw6lMq7OWCtLf28Hl2qgdxYvduHU5dfLPtl99r9WS11G9WLFx1W3NrLbHh1eqetxRHIm/9F5ehHdgTM/YhJzgnLi7aFlwZ9xdz2OOSSPvV4dfpCa+wiuxl/zkwzRy7PYBq7CahtKr+0=
Received: from HE1PR08CA0065.eurprd08.prod.outlook.com (2603:10a6:7:2a::36) by
 HE1PR08MB0987.eurprd08.prod.outlook.com (2a01:111:e400:c523::27) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:35:04 +0000
Received: from VE1EUR03FT052.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::208) by HE1PR08CA0065.outlook.office365.com
 (2603:10a6:7:2a::36) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:04 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT052.mail.protection.outlook.com (10.152.19.173) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:04 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:46 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:11 +0000
Message-ID: <1523860343-16382-32-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(396003)(39380400002)(346002)(39850400004)(2980300002)(438002)(189003)(199004)(246002)(186003)(50466002)(356003)(8676002)(26826003)(478600001)(446003)(2616005)(11346002)(486006)(72206003)(48376002)(126002)(476003)(4326008)(50226002)(7696005)(76176011)(51416003)(39060400002)(8936002)(77096007)(26005)(8666007)(104016004)(86362001)(106002)(54906003)(336012)(36756003)(47776003)(426003)(5660300001)(316002)(2351001)(6916009)(305945005)(106466001)(2906002)(16586007)(6666003)(473944003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR08MB0987; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT052;
 1:xLjuxSv2T+lg6iLeO0XfeRM1I47n0c6vHojO+yasZwuaGXS+chkTLEXk3eA05X0VU3+5fV60RkpsCd2WXscrjTFjLaVHg6aqgrZu9V8fq4rLK+nSvQCCWSnMb/m/8mP8
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR08MB0987; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB0987;
 3:Go/x0dmMoX6mpuakEYW3gJEyddOsT0dxCBvcvZMLNzPCDcCOIXrZ2T7FuuFhQy2fDIKFbwtjU9Z/acf/1NOKvsgjrshws4Ccv1y+Ji2zGOXBP0dXjhWkOjpjgfjqEit02tIyPRyxEbmxB0e8Yg/IP7nHmzuq9HlZb+iMR71sMqloyjf/8yoJp6cVWIiUOlWKHkglwbH80AYytfuUhKDdX07Pcx9g8OexVoaz9lLQ0Jz5Jf1AsA+oAoOnTeSZVUvEeM3XcPnnOY7kCdJf9RG8ja73F+NsxLShN/Y7OMfJ3hLSCyNQABDxJ51+hcqMc5ZGzMsx0u/57L0PvKjlCAaO1l9Lg88ETOZTCZt2x7RLlfE=;
 25:fVHY/riLim0sB5DCM+0f7Aicvy6E/ZDJXHg0Zsl5IFN/rYdnrF3xdKYDU/0T+wz/6X59LtgmH0rOg7HPg0P3CapH5H1kCEpAamcw8hBZYjeWIGIvw2Qyk/nbK6vsGoJP2dvvdb7Lur79vhkfEylhaVB0fWHKsid/891qzSDgWB60+rLhbTxv8lw9msQOJy2WPJMOkdH3cCj1b5qFC/E/CrrmCfaB0cWulikCeZ3NxMqonu/HLUj2wXmxUywc0mTxsFvKrbKNg+ayT1VjsyONH9lcK3h6MH99P/iUxACnA/MJHqeSMnXcHj4z6SUuqCTWb5MfU4O9u0V9scepSd+R1w==
X-MS-TrafficTypeDiagnostic: HE1PR08MB0987:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB0987;
 31:9Z5mGKzxopqLnWG9/sMTYe/LAEub0FipyXg/jexZ5K1imT75YCbmSvirnHtZrwkaVUo9tfsJIWrPXMNmWk35wCVhPqnxAmdpyjPE7W0hN87YM0Kt2Co8/hlVEVGDkKKaIAmBt0orlIfkEoyW+5OfXf+2/fF7g1p77JApKtxo40by4V9qMqUeyyZ+6UxlSAvkaAWE/BS5mtadQtZT+6n/u0Xrc4Cgyne91/xiJybsbEA=;
 20:fRumz+4uoC0uCqK0+VMyFdPd6fN2vDhKFGkTUqSK3QPIWyqNNbIs8pM4YSqmWIdrqHa7xyazcuM7NTvxPnJPDunvoUccv7+zT2L+mA9YXs9CA5SrTj32KQQq6xUzzkT38OdCas8EbUFvSF2Vt1gKhRIyZraGC/CLTWT9CAXUMthaXhIj110P5aD6WYGYaDFSg1RglotlGlLMY4ZgwTOUKgoRRKJ8fb+T0mX8bwbuBpDCyy+K0AgMcE1WAIfo4yq1;
 4:xVv7DA75WyY0bBAsxwC3nYgweVXuuZC6kNh3WiP8WCV4+t9A9DPU2L8VjAxoGwigsimww6kHAiVwIhZtUflBvxL/gBa350jV5/p4nZRpkzvm28KZdwfawwTQqN/0snOFCeQUwhWRq3O7D7n1FxrIFnysjxH529Xr5hTnyuqY+LX3JwfUucok526tGkDXUPrf/H3BX4Fnza64nfOXvkjlXOLpSmdo7HURjQgr2s5KXCcCmjUwotCl/ZKYHlhkvJ2uy7qEhJaDVleIpmB9KfF27QqkpeNTCy6E+tWCURMDdkK6VJl7nYrkiPsrBuJHVIcZ
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR08MB0987B19E8F3BF0466D4F56EE84B00@HE1PR08MB0987.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93004095)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:HE1PR08MB0987; BCL:0; PCL:0; RULEID:; SRVR:HE1PR08MB0987; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR08MB0987;
 23:fr6pcz01o22Ms8mY+FJ3XBz3YSe/KBAWnVIb/KGWh?=
 =?us-ascii?Q?ZigxpbzhrF2F0G/bSDIWlwHBeXkW+tDNsbJqnM2uHhLJc521dGIAUwnyL8uz?=
 =?us-ascii?Q?zcrHKQAor2a3I/OdD3lc+d9nD6W4SoOrinM1RmQmpulFqLYLTxCNtxXbI4lV?=
 =?us-ascii?Q?bsmPIOBDBChg7i/uqUnN8FyzM9dNS9TGI0/wuvAJvuuHFaEuk75nGqFEaFi8?=
 =?us-ascii?Q?zhBOtHui48t3DZ1YOO/hLgdWB1l/E6UwZNTnzVxgOkR54WOE06tJ+/Bjx/hy?=
 =?us-ascii?Q?GVgEchCa39Iyj8GHt7CMwT5rQp8sMm5TSEdhz7FPoYRE3SSD7AFITmwNjdNn?=
 =?us-ascii?Q?+OJI9kEQhR/ygHG/byAsdmcXyTZwLrKW70wUtSNU8iXgiB3NhIN3JjLBxXHU?=
 =?us-ascii?Q?kxw1uVIFPH2d5vuO+UslSkdWqrD8n0NCD5e0I7cmLxnirQ2N2KQK6UKdItvr?=
 =?us-ascii?Q?jr4IgI505NJx0kwV8aYzqMOOvQa0nj+TrpsDbtDwllnVRXuKzRHH1w/8AkZM?=
 =?us-ascii?Q?lywJQCl+HK5qJtV/6OUXi2AZt0H10bZDAKM8J8PjtCa1ARbD+oD88TQW2M9K?=
 =?us-ascii?Q?aACuCHF0QXKFPjYDPf9p1PlehraqHd+cnJXKOs6aNW7rmmXD3OKDHQhkNSDw?=
 =?us-ascii?Q?uYKmQ/qs3r+JHWHfg8ZCFV+3vtsuQHNVoV70tiomrN04j/R5+n1bOLLT+UmT?=
 =?us-ascii?Q?hbg9ZSzaE9+yEQj5hNlzzh0BTpp4TcMkCSFd3tzAYZhEuYI0mBNn5oNSsS7e?=
 =?us-ascii?Q?TMzv76h8Q0YUEZX5vg4nIgI7UTUMt/E72Hr3EyTHoEwrbzXVt33lVwsLbEvj?=
 =?us-ascii?Q?1KdlnslxI4w5XMXM3fs7VeKcL5t8d/zOrDUPpewxNpxWCtkfnHwlr6zs+GBq?=
 =?us-ascii?Q?JDu93ORF79tAZsFNdwX6br6sc5y/aSoY/6QIu84/f/k2Y0SrBmgAUWOThBan?=
 =?us-ascii?Q?65wCd7np8mzk7L4MhYS2jPbPVay52B1l7mrlo9DKh2hIZN5ysWDL2J5Idjid?=
 =?us-ascii?Q?r6DEY9TkcmwKAKoH5ELxcANl73LfSI3gUgg1F43mzrC5qoe+4hU2FeS3WQt+?=
 =?us-ascii?Q?vHRgCwYsFUxY4rLOfXbpzpSHaIi/fEvS6fRqXV75NnaeW7/ZaNVllO54JNbY?=
 =?us-ascii?Q?8gwGCjAdQKljho04NXWSwXJAjyu+U+lKYIIaN7qwTbPACncUyLfhg=3D=3D?=
X-Microsoft-Antispam-Message-Info: qTNSvIfKFZewUWTagjTSwq/RJDuMGAO7ZirjB58ZO08IU2Pruhh3fpvERsyigPxmHbZynHORZ9ZOZubvox5T4A+wvuVLyJmnfPGCPKNe9THqLUnNtx0s+F84c4q7PXEwAxSGaNzWqvPWq7KP2SW1dhEpGAtjngV5n4cNfSg50wFVcAm/tDhDP0suIgssqfdbZarEk5S1ddhb/kb8yIyEh3uq0O3T6IKyCfSpTVdypuwZT/vLX61MSoCKinX6YdS8B09ZkK2TVpc2P53Zhvej+Vw4HhUDgGW8j1Vl6CkI1f2JCWPwAEE/F4Co743iEe1qYP92q53hCnRppcZyBfwwbuazTVMjp/l/mWTm2d9kSTnoj19w+89lvavKC0z7BM8ZXyr946MZu5nqPu/0/sfxoPEylkR6h9dhhJM7DqcFick=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB0987;
 6:3ZazaapTPPidddu0A5EG4zAfBPmTTey7F1BwE92NYC2kOfuuWvSjp6NGlywe2KQWfmF5AZFB6FxgF6n7HSNK9etQoMFr4AzeXgN5346eF9INhe8dVGDLX1r2218c8laBVRtjInr8/ps4ywm562Ye73NRRwAzAgOmWUrEa/+HEXFVUJSKqZ4Qkm+M8zIqZG1rB5jMDJLNATHQz2mdZhkrKIWvb+ifK1Zx1eScXXjo41w4qUtTt88UhoMX7Bt9Hh1XAAOR1NCJtUpUKW/hhRvcawYDzlyjWeKxrSuNZnm3unmeEDowvYM4IUydLct2TYN9WFZMvv50L9WnODx3cJLtJyvWf2D7iFU/iIGfs95v8V/arHJoFRt0wqNq8TblJjtm3u+l8pRto/HxUbG88IULcAYQ2pbm08A/t9NHwFKNEnDWd/Dc7LFpfEw3Jd09AS/v4tnuJCBUfvBqHNu2S5salS9t4cdRPFWmLLFb9Az2V+p5IlhDiMKaiZ6p9El5c6xW;
 5:+k/xTHVr0cJglj/gRtC4p4KwrpnesvYkLoNw3l6a602ZANCR3ceQTnGiEasEWeLha5iqYqn4A1O8pm/qGBmuK9kkZ7WRDIAZizyVeGt4ARNVVbJi98X/MPvIdhdWceFtLkK5dNOqUcicOslAfdf9Gdqi8skyvDPbEkx0v9s1iqI=;
 24:3kbnSy3GUmQSaJJNXUJ4pFqiDqf5fRdNnQDt8U59UWW6P21DujBhi3claMgbCVnGEJh8rchXfBN4S/u8CmJVSuRCpkZecbcYVovvS0kdr/g=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB0987;
 7:MYK9otVzjkwjra3kab4Q09Z8pEAd8PJ9XO0rSdc9mpZ0sEy1wkD3iBM6weE+Opac710uFLj0E+J9aL7HsEPmszwwhD5YHbB9EhPmuzNtq0OH5w4hhmGjLVBqayiYeKJCqFon1BSUqh0qREc3iY/jpbkmDBPDn+egPFTCy+Xns3qg29BLiDtdyA/v1flEGjn9SowiIFg3AxMNIBAMbIBncZzK2gusDZkhIDBldMcLK/t2IwMJtzGW6ar4dkk4+Gr+
X-MS-Office365-Filtering-Correlation-Id: db9b7af7-07ad-4ba3-0b77-08d5a364302f
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:04.0583 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: db9b7af7-07ad-4ba3-0b77-08d5a364302f
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR08MB0987
Subject: [Minios-devel] [PATCH v3 31/43] arm64: implement the mmap/munmap
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBpbXBsZW1lbnRzIHRoZSBtbWFwL211bm1hcCBieSBhZGRpbmc6CiAgIG1hcF9m
cmFtZXNfZXgoKS91bm1hcF9mcmFtZXMvbWFwX3plcm8KCmZsdXNoX3RsYl9wYWdlKCkgaXMgdXNl
ZCB0byBpbnZhbGlkYXRlIGEgcGFnZS4KClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hp
amllLmh1YW5nQGFybS5jb20+Ci0tLQogYXJjaC9hcm0vbW0uYyAgICAgICAgICB8IDcwICsrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBpbmNsdWRlL2Fy
bS9hcmNoX21tLmggIHwgIDQgKysrCiBpbmNsdWRlL2FybS9hcm02NC9vcy5oIHwgMTYgKysrKysr
KysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDkwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9h
cmNoL2FybS9tbS5jIGIvYXJjaC9hcm0vbW0uYwppbmRleCBiMWMxOTJhLi5lYjU5MDRmIDEwMDY0
NAotLS0gYS9hcmNoL2FybS9tbS5jCisrKyBiL2FyY2gvYXJtL21tLmMKQEAgLTMxOSw2ICszMTks
NzYgQEAgdm9pZCAqaW9yZW1hcChwYWRkcl90IHBhZGRyLCB1bnNpZ25lZCBsb25nIHNpemUpCiAg
ICAgcmV0dXJuICh2b2lkKilhZGRyOwogfQogCit2b2lkICptYXBfZnJhbWVzX2V4KGNvbnN0IHVu
c2lnbmVkIGxvbmcgKmYsIHVuc2lnbmVkIGxvbmcgbiwgdW5zaWduZWQgbG9uZyBzdHJpZGUsCisg
ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgaW5jcmVtZW50LCB1bnNpZ25lZCBsb25n
IGFsaWdubWVudCwgZG9taWRfdCBpZCwKKyAgICAgICAgICAgICAgICAgICAgaW50ICplcnIsIHVu
c2lnbmVkIGxvbmcgcHJvdF9vcmlnaW4pCit7CisgICAgdW5zaWduZWQgbG9uZyBhZGRyLCB2YTsK
KyAgICB1bnNpZ25lZCBsb25nIGRvbmUgPSAwOworICAgIHVuc2lnbmVkIGxvbmcgbWZuOworICAg
IHVuc2lnbmVkIGxvbmcgcHJvdCA9IE1FTV9ERUZfQVRUUjsKKyAgICBpbnQgcmV0OworCisgICAg
aWYgKCFmKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGFkZHIgPSBhbGxvY2F0ZV9vbmRl
bWFuZChuLCBhbGlnbm1lbnQpOworICAgIGlmICghYWRkcikKKyAgICAgICAgcmV0dXJuIE5VTEw7
CisKKyAgICB2YSA9IGFkZHI7CisgICAgaWYgKHByb3Rfb3JpZ2luID09IE1FTV9ST19BVFRSKQor
ICAgICAgICBwcm90ID0gcHJvdF9vcmlnaW47CisKKyAgICB3aGlsZSAoZG9uZSA8IG4pIHsKKyAg
ICAgICAgbWZuID0gZltkb25lICogc3RyaWRlXSArIGRvbmUgKiBpbmNyZW1lbnQ7CisgICAgICAg
IHJldCA9IGJ1aWxkX3BhZ2V0YWJsZSh2YSwgbWZuLCAxLCBwcm90LCBhbGxvY19uZXdfcGFnZSwg
Myk7CisgICAgICAgIGlmIChyZXQpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAg
ZG9uZSsrOworICAgICAgICB2YSArPSBQQUdFX1NJWkU7CisgICAgfQorCisgICAgcmV0dXJuICh2
b2lkICopYWRkcjsKK30KKworc3RhdGljIGxwYWVfdCAqZ2V0X3B0ZXAodW5zaWduZWQgbG9uZyB2
YWRkcikKK3sKKyAgICBscGFlX3QgKnBnZCwgKnB1ZCwgKnBtZCwgKnB0ZTsKKworICAgIHBnZCA9
ICZib290X2wwX3BndGFibGVbbDBfcGd0X2lkeCh2YWRkcildOworICAgIEFTU0VSVCgoKnBnZCkg
IT0gTDBfSU5WQUwpOworCisgICAgcHVkID0gKGxwYWVfdCAqKXRvX3ZpcnQoKCpwZ2QpICYgfkFU
VFJfTUFTS19MKSArIGwxX3BndF9pZHgodmFkZHIpOworICAgIEFTU0VSVCgoKnB1ZCkgIT0gTDBf
SU5WQUwpOworCisgICAgcG1kID0gKGxwYWVfdCAqKXRvX3ZpcnQoKCpwdWQpICYgfkFUVFJfTUFT
S19MKSArIGwyX3BndF9pZHgodmFkZHIpOworICAgIEFTU0VSVCgoKnBtZCkgIT0gTDBfSU5WQUwp
OworCisgICAgcHRlID0gKGxwYWVfdCAqKXRvX3ZpcnQoKCpwbWQpICYgfkFUVFJfTUFTS19MKSAr
IGwzX3BndF9pZHgodmFkZHIpOworICAgIEFTU0VSVCgoKnB0ZSkgIT0gTDBfSU5WQUwpOworCisg
ICAgcmV0dXJuIHB0ZTsKK30KKworaW50IHVubWFwX2ZyYW1lcyh1bnNpZ25lZCBsb25nIHZhLCB1
bnNpZ25lZCBsb25nIG51bV9mcmFtZXMpCit7CisgICAgbHBhZV90ICpwdGU7CisKKyAgICBBU1NF
UlQoISgodW5zaWduZWQgbG9uZyl2YSAmIH5QQUdFX01BU0spKTsKKworICAgIHdoaWxlIChudW1f
ZnJhbWVzKSB7CisgICAgICAgIHB0ZSA9IGdldF9wdGVwKHZhKTsKKwkqcHRlID0gKGxwYWVfdCkw
OworCisgICAgICAgIGZsdXNoX3RsYl9wYWdlKHZhKTsKKworICAgICAgICB2YSArPSBQQUdFX1NJ
WkU7CisgICAgICAgIG51bV9mcmFtZXMtLTsKKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKIHZv
aWQgYXJjaF9pbml0X21tKHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3Bmbl9wLCB1bnNpZ25lZCBsb25n
ICptYXhfcGZuX3ApCiB7CiAgICAgaW50IG1lbW9yeTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJt
L2FyY2hfbW0uaCBiL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAppbmRleCBhZDEyMmU3Li4wOWExOWMw
IDEwMDY0NAotLS0gYS9pbmNsdWRlL2FybS9hcmNoX21tLmgKKysrIGIvaW5jbHVkZS9hcm0vYXJj
aF9tbS5oCkBAIC00Miw0ICs0Miw4IEBAIHZvaWQgYXJjaF9tbV9wcmVpbml0KHZvaWQgKmR0Yl9w
b2ludGVyKTsKICNkZWZpbmUgbWFwX2ZyYW1lcyhmLCBuKSAoTlVMTCkKIAogdm9pZCAqaW9yZW1h
cChwYWRkcl90IGFkZHIsIHVuc2lnbmVkIGxvbmcgc2l6ZSk7CisKK2V4dGVybiB1bnNpZ25lZCBs
b25nIG1mbl96ZXJvOworI2RlZmluZSBtYXBfemVybyhuLCBhKSBtYXBfZnJhbWVzX2V4KCZtZm5f
emVybywgbiwgMCwgMCwgYSwgRE9NSURfU0VMRiwgTlVMTCwgTUVNX1JPX0FUVFIpCisKICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0vYXJtNjQvb3MuaCBiL2luY2x1ZGUvYXJtL2FybTY0
L29zLmgKaW5kZXggMmQ1NTAyMy4uNGU3NzdiZiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9hcm0vYXJt
NjQvb3MuaAorKysgYi9pbmNsdWRlL2FybS9hcm02NC9vcy5oCkBAIC0yNyw2ICsyNywyMiBAQCBz
dGF0aWMgaW5saW5lIHZvaWQgbG9jYWxfaXJxX2VuYWJsZSh2b2lkKQogICAgIF9fYXNtX18gX192
b2xhdGlsZV9fKCJtcnMgJTAsIGRhaWYiOiI9ciIoeCk6OiJtZW1vcnkiKTsgXAogfQogCisvKiBG
bHVzaCBhIHBhZ2UgaW4gaW5uZXJzaGFyZWFibGUgZG9tYW4gKi8KK3N0YXRpYyBpbmxpbmUgdm9p
ZCBmbHVzaF90bGJfcGFnZSh1bnNpZ25lZCBsb25nIHZhKQoreworICAgIHVuc2lnbmVkIGxvbmcg
eHQ7CisKKyAgICAvKiB4dFs0MzowXSB0byBzYXZlIFZBWzU1OjEyXSAqLworICAgIHh0ID0gdmEg
Pj4gMTI7CisKKyAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygKKyAgICAgICAgImRzYiBzeTsiCisg
ICAgICAgICJ0bGJpIHZhbGUxaXMsICUwOyIKKyAgICAgICAgImRzYiBzeTsiCisgICAgICAgICJp
c2I7IgorICAgICAgICA6OiJyIih4dCk6ICJtZW1vcnkiKTsKK30KKwogI2VuZGlmCiAKIC8qIFRo
ZSBDYWxsZWUtc2F2ZWQgcmVnaXN0ZXJzIDogeDE5IH4geDI5ICovCi0tIAoyLjcuNAoKCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBt
YWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlz
dHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:15 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjP-0003Ot-PH; Mon, 16 Apr 2018 06:35:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjO-0003OW-WB
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:15 +0000
X-Inumbo-ID: 93985eb9-4140-11e8-8249-2fda3a446a53
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [104.47.2.69]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 93985eb9-4140-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 06:37:04 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=Pl7csHyO2S6lAI2aA57fItbkiq3CeM5yPJ7bJYyU5ZI=;
 b=sFCKlPnG/KrxtZ1dfhfKe1kxaHV58wRUCJLC97Qf0L7jlZyNbKnBrwYeK9NGegLJPDRWe1Vvj8PxLfBXX91qVv6pUt7MgR/DaB9+gKCHoZFM8FU6axYNfU3OzScb8A9RZyQSJF57YhQNmmJi6uv0QK+RTKcnw0PxG+zZJdurV20=
Received: from HE1PR08CA0061.eurprd08.prod.outlook.com (2603:10a6:7:2a::32) by
 AM4PR08MB0979.eurprd08.prod.outlook.com (2603:10a6:200:27::25) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.675.9; Mon, 16 Apr 2018 06:35:08 +0000
Received: from VE1EUR03FT052.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::204) by HE1PR08CA0061.outlook.office365.com
 (2603:10a6:7:2a::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:07 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT052.mail.protection.outlook.com (10.152.19.173) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:07 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:54 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:13 +0000
Message-ID: <1523860343-16382-34-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(39380400002)(39850400004)(346002)(396003)(2980300002)(438002)(199004)(189003)(446003)(26826003)(126002)(47776003)(476003)(4326008)(106466001)(106002)(6916009)(486006)(8666007)(6666003)(5660300001)(305945005)(76176011)(11346002)(8676002)(2351001)(77096007)(48376002)(2616005)(26005)(336012)(50466002)(186003)(54906003)(16586007)(316002)(86362001)(246002)(426003)(2906002)(39060400002)(104016004)(478600001)(50226002)(8936002)(356003)(36756003)(72206003)(7696005)(51416003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR08MB0979; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT052;
 1:UyUF+kxF5+ah9/pDUj394NVp2XcQaXMtwva1VPjh3lC8qSj/QGXWuBk7WuL+zO3PsJy4dHtBpmO2EO/f+D7Bj2ccUBEE79PwR1zpW0skUdjb2CqUwsRKzYwEFFQnixXL
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR08MB0979; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0979;
 3:Wh8cKnQ0K4ZtINcmtxT2q2+h2cLMj5V9nEZ5CTF3fp8TgoVMEt9zGRNgWrln541kB8I52jMLJkRqONVOVQvPTMz/fUGay+f/zdgtSAkCe8unFmTfHQ9djoDzEtC9trOla1QB8FcI6E5COcKGpoKqA9s/bI8xzLlKhcGTOe9omZ48+BAu4bZ2MRvBd1kxHD52Q+UdT+7kKANo2eS1XewTRGb5sJsDh+ki+mJuSMD555viCb/GxMbA75zYMQIGLZ/b+EpGtjIME9e//MJLxlZYTW/45hM0Lifjd1jXtslUuNYZJ7PILVsZCyoDdVGA5ZFR/vupjCIMXNOCw94NX/BrcnilsgcX9nlK0YPWLu4Yu30=;
 25:akgSFaz3ghBLKBf37Cr67BZQfBwvtcQ7kMP25qu9uwIMrcURvPZyi8PY+6kHwFVWQd3K3XBAKLAgzWL6PZaDGST2Z+RaKAik+6OfyRjNJ6eReGNMWMUAJraavVHOjwnHIX+wdW/AushawhW0jPFH3hQlkBjQBV2MXtDRo5f7PGSFyubFCJeasWwes0tTRMcbI/RdY4rEAa/uM6Osu0Z4V95leRE+LLDLZwgNX/GO/gXcxq6bVOFFkl1oX5q1H5huw7jK7J93hDFDxrhoJ7bWhjOpCI6c6GX683pCaGik7zmSTRgk27yODotPz/m1BIU3x22A12sBu7o2IPI/FR0BTg==
X-MS-TrafficTypeDiagnostic: AM4PR08MB0979:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0979;
 31:qlrVn8vvjbPiAFNasOTlpz85Rg7SbxLNmVllzVGuFnX1L+aVuwehrIB0nTRg3YjX+pTIQeg7IAsW/TKhrr2NLP9b/L4g2tEXq4ZDKMb2dKZmSyis6hMVW37bWWT/E/QKJQ9miFXYuxLPrSjRK/wZMjouo4FF0Md1wmAsqgv6E4B4qZ5VtduxpvPKDz12MZl23D9FcmKcSxsRFc5rNJz07EtLQG30Cgb8QFjoiNNMhy0=;
 20:UYjfg9XC3wcYUCay3MbBQAgAnJ9HEnN5DbftMxs1Jy5TmzOkDigw+CAnK2UuiFHSfswIt2s59He4oeATWlWqnaLPpdGiM8G/jmOMt4MkWs3l1NYfrHxGQA7JUG6EEA+OtqWNfyPJZ+AbgCp0ZbNp8bdZBfKS7jTYEpHAlWUzjRHZf1YVgx7iB+KSbofoWHG/oWAIsCq5CDirb7hKYgmofieuD+F9gzs+9TzmwlPT+kR/rLUqmdItZm/zU9ZAp4Hf;
 4:R2nqKXThpK2P5v7D66msB9aQb7rMJEJrEYkfh32CmouNBoIDU8I7WvtRHERAS12NSMAS4dfUTv1+g6JLQgIbceDUgC1gcTY/Ce6o+iAzv1edKlC07mnvna8kD3KEj1SpLtkWvAZDmwjjpIzPe7wro1kcK6L21OcZKHll4tym40XyOZvKimc6qmz6EGP0O2QGUDyFrAYdUEhBRmMOamUo9JxSXaviPd/Fgx4j6powkjohqaieB+IxPJmQctKqqXJfuyhEe4OK+KkPmitonoFbee8lSV+oKA3MA3GiOArsNZOmUhhxiKvhv6M5U2Au8FG1
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR08MB09790A6267E8859D8A8DE30784B00@AM4PR08MB0979.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:AM4PR08MB0979; BCL:0; PCL:0; RULEID:; SRVR:AM4PR08MB0979; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR08MB0979;
 23:EkinkW+o8ZOCfglKdQXY2HuO67jBBe76L8M7XO91Y?=
 =?us-ascii?Q?RrnD2KUu0SxjbEU/+7j4sskwEWPGBSi4iLh4GlXMJ6Bwj/9Y70pFo2xVnmPS?=
 =?us-ascii?Q?7Q5bSo9X6eNVndtzp7EKV2tgqy5NfBlIe/K4DTkXKZJlkhXA1KVZQxqwEyqq?=
 =?us-ascii?Q?Id4VGBuxy5Ywf1StO4CC4E4+11Yy5GzO2wUb7AWG73t0vGzofzi5uoIGbb1N?=
 =?us-ascii?Q?Rdm8EEQtbAir6nys0NbMNcgoZMs+JDSVY78EW/Z7Obch5B80CgDiFRdbIoEZ?=
 =?us-ascii?Q?e9gt5CqhxUvkqZzu8jb8Rcl8IHVmMQlvbmFSfY2VArcTZebQO57Kh/CTXwLR?=
 =?us-ascii?Q?VXua4Yq0jkpUJw41Zle2hgIt/xWFUgQftVnHHYnb0MyPkfhsRbZ8m13AYHio?=
 =?us-ascii?Q?nhzkApP2QVYa0ZOsjovsq2k59PiOQ8GFWvTbprVRNZl5E6Pw4q+pk9lwM9Nj?=
 =?us-ascii?Q?eQIBT5WpDzDak27G2DNW5O92etBqkJMATwsiav3mq7+Yqx3zCd8WhBqLI2GQ?=
 =?us-ascii?Q?NQx66sNXu8W/cxJqn3EMGD2xPiksMXBSbaQu8O0YvqCQLSPWwlwM+/1qsjBy?=
 =?us-ascii?Q?QS5P4QZDw/D86mlaAJ4s49QE2npPyVtI43uAiE9CtJr/pE7pZwrWVWgHe0wF?=
 =?us-ascii?Q?r83LKjCeGYkkwljIDStW9iJ1Otky+hcM/gWAmYE3bgrqZIlDfYsTgrvdNNH1?=
 =?us-ascii?Q?U65U7AoYWz1z/tSJE9/MzkWzQg8yb3bh+DREEkgcnWTrQ6dlE9BA55EgnFny?=
 =?us-ascii?Q?9TPaaMGwToJ8nFAnsmjhjRcqAj2t6INwu1PN3J5M2m0ON3hMxoSGstRjqD7F?=
 =?us-ascii?Q?di5bzNaUqJ/+vBtS/Q+NcvBex7FvARivgb+lu71cSYZvAfGL/5Wz6ht3l2hG?=
 =?us-ascii?Q?xhzeDnGJ07Hh4kdDJzW0tEK3yT5AuKsF3Ms4+3OO0LnE16BgJFV6fIunb0dW?=
 =?us-ascii?Q?wPc4LjSBqCmYWkoadOdHvLRjfY9Nu5LtqKCNwkCBjWi57lVKOAn6Bwc9POvu?=
 =?us-ascii?Q?MU0t5QE/ue/uN3kN5vxPh4ngFUy3pbrJYKa6zqZt69SbQrm/MwLjNTMO1kmy?=
 =?us-ascii?Q?icH4o+o824/ePFfZimeMKUOf9ybwYYXju/BVI+NQwLz8477c/099iHBI2S5h?=
 =?us-ascii?Q?P/xpSqyXeWAJxZHrtZgfH64u10p7VlP?=
X-Microsoft-Antispam-Message-Info: Lw0uckeyJV87oEJFBgEmfAeLhFTJfIbVLWF87L5qqvTlSS1HTGlI+XvHOywSUShaT4vrJkihv6MXu+tfZopskrfbTaJr6bHuI6ScdDD/pCGfVzebeTb9Ndt4qgyNFud4Ghu0tvzCl3I9bV17khRogihv/As6f5eQzqZu0wFXW1d58RrMLqhiuMIZvlzHCo68OQo+2pZDHFMCB8ASmcDE7ld2s8WUU6tfyIdUYkVUDvUG4VYLSCNiRnEeGkC3xfj41BHjVfOx1CrR8GEoqYsYwmTBOWdyvilFuJmtYnSXW1PVQSzcdrPMJNipXkfSL86WU9r54swoXSgvrEkEU6boxbH6KZV6dC78lR6vqWumk5OA6IM+AXn3bJzcwgnENTMOiOZXALluw8CVnOT3+QxrmyFVwa8IGrVBwzYsz2cQGXc=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0979;
 6:Lu7+AiCOOqaSsqAWbAoNSSEkau7+bmM36WqLMS2DJKA3GMrPsi24Vk2KjCtWRp3Q70gg56sxQ6gHTVTRaSfpu1T/wCxgcjukh6ltFxsPYxW2fNeV3dRtrOFaBnCfaZ3fZ/mOI4qknmv+qvCueyPQlGiFIogj4+EDy8iMW+IBji44b0jDwbEqyO2Ch4Em4WIZ+WG5OHZd2xtscpUODhDZC9sJbRUm1KjVUY/5S4xt1bbrJVCcX0oVp8dWFzp2+gzQkhadG9Fc7wRXh0bWS3Fh0m6Ww73GEfdSAI7f1ux5a7s50yxT0n0a4Hsrj5rH2/xNvIGEwr+1vFxojMi0OQZurpUkxg19ANhVVnLXHcfmppQHwC1BKU9cCqaps711DqT1+Xy2BUY6SQCTC/xl/xMhRf5q2mV2GRJ5FZB4w5dMX+cv3G6ygZHRfwVt8Jl539VAzu8T3uwywPTIWAnVbPBFuN6UuVQFdLYQevlamX2vh2xvsZ1MeehEgBH/t7rtuT2k;
 5:IFCYpDbWRqrVvAIIxd7SjDrmKatFufKfv1/imUOKTkc7Ivk+ORcw3W96xpAYOH+MYJdJcQfat4IGWwRbfjdjIqCmEAl1TSrFiLQGMD6kAOjiJKYzBI3C1FnUZ9Q/84nNSdhEWNhHhZNJM8X4c/DLVZew0B0GR4s9EYsowKSh7NM=;
 24:81nCOg5gngpDt3tP78Gn/LkfgPIiKGlPdQzabKnvoKsAWF/NxXggh9JBYIKSaGrCq/8hCuMiUZ3M9dtTjQ7LLkBZlGk4n9F2k+qAEdHqGzA=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0979;
 7:+qUkAUsHBBbMmrsdqaQOiojizrm/i67ltHBhQ79xRuGHmmJH9Se0rbalYpU1z5wd/F+S0x0UjjJs0bltc7aaVkPBk0WYXv7NTBbmU3bG0bFfKc3Kdx/fa+B94PUEhald2DZNLoF2+iQr84MKL1jdKZprF73kEdmR5B2c3BGDj7Yujd8wMJ6vnZfhdi+3RELCbLraBA/NkByAFui+ITFt4BsekEBxbONduPbTaSMuczAbytECOA+oNE8tP68aVTYO
X-MS-Office365-Filtering-Correlation-Id: 6b3b9362-2ecc-48d6-8133-08d5a3643228
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:07.3709 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6b3b9362-2ecc-48d6-8133-08d5a3643228
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR08MB0979
Subject: [Minios-devel] [PATCH v3 33/43] arm64: parse out the address/size
 for gicd/gicc
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBwYXJzZXMgb3V0IHRoZSBhZGRyZXNzL3NpemUgZm9yIGdpY2QvZ2ljYy4KClNp
Z25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQogYXJj
aC9hcm0vZ2ljLmMgfCA4NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKystLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNzEgaW5zZXJ0aW9ucygrKSwgMTUg
ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vZ2ljLmMgYi9hcmNoL2FybS9naWMu
YwppbmRleCAxZTM3Y2RjLi42ODdmMjQyIDEwMDY0NAotLS0gYS9hcmNoL2FybS9naWMuYworKysg
Yi9hcmNoL2FybS9naWMuYwpAQCAtMTc3LDYgKzE3Nyw3MiBAQCBzdGF0aWMgdm9pZCBnaWNfaGFu
ZGxlcih2b2lkKSB7CiAgICAgZ2ljX2VvaXIoJmdpYywgaXJxKTsKIH0KIAorLyoKKyAqIFBhcnNl
IHRoZSAicmVnIiBwcm9wZXJ0eS4KKyAqCisgKiBOb3RlOiAqcmVncCB3aWxsIGluY3JlYXNlLgor
ICovCitzdGF0aWMgdWludDY0X3QgcGFyc2VfcmVnKGNvbnN0IHVpbnQzMl90ICoqcmVncCwgdWlu
dDMyX3QgY2VsbCkKK3sKKyAgICB1aW50MzJfdCBpOworICAgIHVpbnQzMl90IGJ1ZlsyXTsKKyAg
ICB1aW50NjRfdCAqYnVmNjQgPSAodWludDY0X3QgKilidWY7CisgICAgdWludDMyX3QgKnJlZyA9
ICh1aW50MzJfdCAqKSgqcmVncCk7CisKKyAgICBpZiAoY2VsbCA+IDIpCisgICAgICAgIEJVRygp
OworCisgICAgZm9yIChpID0gMDsgaSA8IGNlbGw7IGkrKykKKyAgICB7CisgICAgICAgIGJ1Zltp
XSA9IHJlZ1tpXTsKKyAgICB9CisgICAgKnJlZ3AgPSByZWcgKyBjZWxsOworICAgIHJldHVybiBm
ZHQ2NF90b19jcHUoYnVmNjRbMF0pOworfQorCisvKgorICogUGFyc2Ugb3V0IHRoZSBhZGRyZXNz
L3NpemUgZm9yIGdpY2QvZ2ljYy4KKyAqCisgKiBSZXR1cm4gMCBvbiBzdWNjZXNzOyByZXR1cm4g
MSBvbiBlcnJvci4KKyAqLworc3RhdGljIGludCBnaWNfcGFyc2UoaW50IG5vZGUsIHVpbnQ2NF90
ICpnaWNkX2FkZHIsIHVpbnQ2NF90ICpnaWNkX3NpemUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdWludDY0X3QgKmdpY2NfYWRkciwgdWludDY0X3QgKmdpY2Nfc2l6ZSkKK3sKKyAg
ICB1aW50MzJfdCBhZGRyX2NlbGxzID0gMiwgc2l6ZV9jZWxscyA9IDE7IC8qIFRoZSBkZWZhdWx0
LCByZWZlciB0byBTcGVjLiAqLworICAgIGNvbnN0IHVpbnQzMl90ICpyZWczMjsKKyAgICBpbnQg
cG5vZGU7CisKKyAgICBwbm9kZSA9IGZkdF9wYXJlbnRfb2Zmc2V0KGRldmljZV90cmVlLCBub2Rl
KTsKKyAgICBpZiAocG5vZGUgPCAwKQorICAgICAgICAgcmV0dXJuIDE7CisKKyAgICByZWczMiA9
IGZkdF9nZXRwcm9wKGRldmljZV90cmVlLCBwbm9kZSwgIiNhZGRyZXNzLWNlbGxzIiwgTlVMTCk7
CisgICAgaWYgKHJlZzMyKQorICAgICAgICAgYWRkcl9jZWxscyA9IGZkdDMyX3RvX2NwdShyZWcz
MlswXSk7CisKKyAgICByZWczMiA9IGZkdF9nZXRwcm9wKGRldmljZV90cmVlLCBwbm9kZSwgIiNz
aXplLWNlbGxzIiwgTlVMTCk7CisgICAgaWYgKHJlZzMyKQorICAgICAgICAgc2l6ZV9jZWxscyA9
IGZkdDMyX3RvX2NwdShyZWczMlswXSk7CisKKyAgICBpZiAoYWRkcl9jZWxscyA+IDIgfHwgc2l6
ZV9jZWxscyA+IDIpCisgICAgeworICAgICAgICAgcHJpbnRrKCJVbnN1cHBvcnRlZCAjYWRkcmVz
cy1jZWxsczogJWQsICNzaXplLWNlbGxzOiAlZFxuIiwKKyAgICAgICAgICAgICAgICBhZGRyX2Nl
bGxzLCBzaXplX2NlbGxzKTsKKwkgcmV0dXJuIDE7CisgICAgfQorCisgICAgcmVnMzIgPSBmZHRf
Z2V0cHJvcChkZXZpY2VfdHJlZSwgbm9kZSwgInJlZyIsIE5VTEwpOworICAgIGlmIChyZWczMikK
KyAgICB7CisgICAgICAgICAqZ2ljZF9hZGRyID0gcGFyc2VfcmVnKCZyZWczMiwgYWRkcl9jZWxs
cyk7CisgICAgICAgICAqZ2ljZF9zaXplID0gcGFyc2VfcmVnKCZyZWczMiwgc2l6ZV9jZWxscyk7
CisgICAgICAgICAqZ2ljY19hZGRyID0gcGFyc2VfcmVnKCZyZWczMiwgYWRkcl9jZWxscyk7Cisg
ICAgICAgICAqZ2ljY19zaXplID0gcGFyc2VfcmVnKCZyZWczMiwgc2l6ZV9jZWxscyk7CisgICAg
fQorCisgICAgcmV0dXJuIDA7Cit9CisKIHZvaWQgZ2ljX2luaXQodm9pZCkgewogICAgIGdpYy5n
aWNkX2Jhc2UgPSBOVUxMOwogICAgIGludCBub2RlID0gMDsKQEAgLTE4OCw3ICsyNTQsNyBAQCB2
b2lkIGdpY19pbml0KHZvaWQpIHsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGlmIChm
ZHRfZ2V0cHJvcChkZXZpY2VfdHJlZSwgbm9kZSwgImludGVycnVwdC1jb250cm9sbGVyIiwgTlVM
TCkpIHsKLSAgICAgICAgICAgIGludCBsZW4gPSAwOworICAgICAgICAgICAgdWludDY0X3QgZ2lj
ZF9hZGRyLCBnaWNkX3NpemUsIGdpY2NfYWRkciwgZ2ljY19zaXplOwogCiAgICAgICAgICAgICBp
ZiAoZmR0X25vZGVfY2hlY2tfY29tcGF0aWJsZShkZXZpY2VfdHJlZSwgbm9kZSwgImFybSxjb3J0
ZXgtYTE1LWdpYyIpICYmCiAgICAgICAgICAgICAgICAgZmR0X25vZGVfY2hlY2tfY29tcGF0aWJs
ZShkZXZpY2VfdHJlZSwgbm9kZSwgImFybSxjb3J0ZXgtYTctZ2ljIikpIHsKQEAgLTE5NiwyMSAr
MjYyLDExIEBAIHZvaWQgZ2ljX2luaXQodm9pZCkgewogICAgICAgICAgICAgICAgIGNvbnRpbnVl
OwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBjb25zdCB1aW50NjRfdCAqcmVnID0gZmR0
X2dldHByb3AoZGV2aWNlX3RyZWUsIG5vZGUsICJyZWciLCAmbGVuKTsKLQotICAgICAgICAgICAg
LyogV2UgaGF2ZSB0d28gcmVnaXN0ZXJzIChHSUNDIGFuZCBHSUNEKSwgZWFjaCBvZiB3aGljaCBj
b250YWlucwotICAgICAgICAgICAgICogdHdvIHBhcnRzIChhbiBhZGRyZXNzIGFuZCBhIHNpemUp
LCBlYWNoIG9mIHdoaWNoIGlzIGEgNjQtYml0Ci0gICAgICAgICAgICAgKiB2YWx1ZSAoOCBieXRl
cyksIHNvIHdlIGV4cGVjdCBhIGxlbmd0aCBvZiAyICogMiAqIDggPSAzMi4KLSAgICAgICAgICAg
ICAqIElmIGFueSBleHRyYSB2YWx1ZXMgYXJlIHBhc3NlZCBpbiBmdXR1cmUsIHdlIGlnbm9yZSB0
aGVtLiAqLwotICAgICAgICAgICAgaWYgKHJlZyA9PSBOVUxMIHx8IGxlbiA8IDMyKSB7Ci0gICAg
ICAgICAgICAgICAgcHJpbnRrKCJCYWQgJ3JlZycgcHJvcGVydHk6ICVwICVkXG4iLCByZWcsIGxl
bik7Ci0gICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICB9CisgICAgICAgICAg
ICBpZiAoZ2ljX3BhcnNlKG5vZGUsICZnaWNkX2FkZHIsICZnaWNkX3NpemUsICZnaWNjX2FkZHIs
ICZnaWNjX3NpemUpKQorCQkgICAgY29udGludWU7CiAKLSAgICAgICAgICAgIGdpYy5naWNkX2Jh
c2UgPSBpb3JlbWFwKCh1bnNpZ25lZCBsb25nKSBmZHQ2NF90b19jcHUocmVnWzBdKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBsb25nKSBmZHQ2NF90b19j
cHUocmVnWzFdKSk7Ci0gICAgICAgICAgICBnaWMuZ2ljY19iYXNlID0gaW9yZW1hcCgodW5zaWdu
ZWQgbG9uZykgZmR0NjRfdG9fY3B1KHJlZ1syXSksCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAodW5zaWduZWQgbG9uZykgZmR0NjRfdG9fY3B1KHJlZ1szXSkpOworICAgICAg
ICAgICAgZ2ljLmdpY2RfYmFzZSA9IGlvcmVtYXAoZ2ljZF9hZGRyLCBnaWNkX3NpemUpOworICAg
ICAgICAgICAgZ2ljLmdpY2NfYmFzZSA9IGlvcmVtYXAoZ2ljY19hZGRyLCBnaWNjX3NpemUpOwog
ICAgICAgICAgICAgcHJpbnRrKCJGb3VuZCBHSUM6IGdpY2RfYmFzZSA9ICVwLCBnaWNjX2Jhc2Ug
PSAlcFxuIiwgZ2ljLmdpY2RfYmFzZSwgZ2ljLmdpY2NfYmFzZSk7CiAgICAgICAgICAgICBicmVh
azsKICAgICAgICAgfQotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4v
bGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:16 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjQ-0003PX-Qx; Mon, 16 Apr 2018 06:35:16 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjQ-0003PG-5D
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:16 +0000
X-Inumbo-ID: 936682b5-4140-11e8-8249-2fda3a446a53
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [104.47.0.53]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 936682b5-4140-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 06:37:04 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=ds9QiVNxc1nTxm3gY32nfI+vjhlGL/v3U9baTPUqWX0=;
 b=Nl8Ct7L56N83c6CXKvXAt7YlWkcwZ97ZxqWaTEvHrUYxBJVLAizevQIT7fS9Z8kf6n6EDs8GJaHxwTISdB0EHGoFIcaFtwPQ0/m43SmiXLq1xU74LW/H7NVS//6PK3JXmJvHAzY0X+rdPYC+7nJ4YzXiwIVmzxjIBMdvVuQ2Eyo=
Received: from HE1PR0802CA0004.eurprd08.prod.outlook.com (2603:10a6:3:bd::14)
 by AM4PR0801MB1588.eurprd08.prod.outlook.com (2603:10a6:200:3e::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 06:35:06 +0000
Received: from VE1EUR03FT056.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::206) by HE1PR0802CA0004.outlook.office365.com
 (2603:10a6:3:bd::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:06 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT056.mail.protection.outlook.com (10.152.19.28) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:05 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:50 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:12 +0000
Message-ID: <1523860343-16382-33-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(376002)(39850400004)(396003)(39380400002)(2980300002)(438002)(199004)(189003)(316002)(486006)(16586007)(54906003)(106466001)(356003)(246002)(76176011)(48376002)(7696005)(51416003)(36756003)(6346003)(50466002)(39060400002)(104016004)(2351001)(2906002)(47776003)(8676002)(6666003)(6916009)(77096007)(106002)(86362001)(575784001)(186003)(336012)(8936002)(26005)(476003)(126002)(50226002)(8666007)(446003)(11346002)(5660300001)(4326008)(72206003)(26826003)(478600001)(426003)(2616005)(305945005);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR0801MB1588; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT056;
 1:7P/tc5kRaCXwfuxRrMYLjHW67k9W/uVxWxja3/WMdZvHwNckO7oZAqQgRW/z9lVAc67J4gs650RjDpyYZZAOjyQVfhMH3Infbvcph1Kd+d/+JBu6XHWEMPfkkbkhwf07
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR0801MB1588; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 3:EpaA2kDK3RqTb24sFsh2nLp3muXVpBQJP+qI2cpgzeSIItSgBQOK7IH8SP4nLS2bEj6BjqS6ge4INc8EResdP19aYe4ldku5uu6VmfMoSif+m146oTHnod3ozjsql4vNv7rDaku9ftBE2e1Q15GZMiNwPugypJKS7PXQEHd9XzK6aDdjMsxARmxjI8gdHFBwF4zrkgGUNYOGhlLXGZLjZKNxTWPtv7ra57A/0s4kIkAlIxl4crYOeiDDs+NhAUOFl2FgK5utM2GleY4Jd3GLRjsn5yAcEoNbfU+lMj+5L2xlzoi6A9TezVpxLEoUB5wG15F6RJxsHjyxbHjqVlqBIHrmTfxKi5BVzMjVXmuiw4c=;
 25:LP6cgvJJBv+WpXZHHIM3MQ0pYcodmgXlsCMFCTieYnS86dcnFuxjeGaL36DArLCJ6nl9koaF9FCOSqhDUm0DWOwf9q/2YvuRSp6PRnEIgYX95QLFt0+UG+czJCtDiuGqpV8TYPFkMSj1ZFdeuDTP4Oq10QL8vxSoHS4EqdoemmmL3PLISPADmm2XnMQOjMJmScWs0tpqaNk06CuIuwUIbNlRkLccZ8hJ/4eHDomCXl6Dy58QDKx45kdjvhBg6mJ1s925be9nnZVqU0Bm7zRGXyZc80ysdLCZrBzMVk5xd9KB0jPaz8baw6M6o/07/5bYZHZFkLWq3n9TJ/GBJU543Q==
X-MS-TrafficTypeDiagnostic: AM4PR0801MB1588:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 31:W1sgdxXlcuxjeqyIP6tyE9oju6jv4fjotJePrOtpnCOVfDBTkWGU8N+XtqUCRZFVcfPt1PaOC6ARfTRiccjVFK1+ppLWOISdRPDLyIBwTEnzkZ3lqs4Vne6fAg9DLi083SXs8t5C/NIGtB0+TDJIReg6Qy7JALoP3RpyijgGWxMZ6TGeLmFSeQwlXMPJW5TcDl9dzyOV4LGiSShSZ6kIVpxiiaplEW+CLGufp9DDsgo=;
 20:ji/7/DghSKaEmci0D46Th5GoXLqS+zcbOGRFiCzWypnrmeqMnJwmM4a7YYrYZM6PFiuTpVPBXHiZrZL3o6Ps1piJ2JePWN5FckmjUEUR2pW2gp9p6WKBJK1r7XiI0eNVYcXn11rDG+D+LzuRq36DSZSKQtlNYPPPrTmbkyHoVczLMFyStXaH43GvW0rx/eG/GD34j+d59hzVkHh237J1dVWtfg2OUyF/jF8QqoEdooPO/doSUvLyPLxyl6k72IN+;
 4:BD7bA3RKA3pLA8gJTgeQpveV7GE2EnvC0hpTeQquAdwPDlFnbdaTjvO0a+r/OMThJNQXOpi//Uu5e1Xzwkne0l0MpPj7fcNmHAfPIWKDKYIxjBsOVA+DvRQFLM83BDBhGY/CycaZwVOV68/gtCmUjMitN/EsLVzIpmp3xjIlRh4izM2NqdFjJYydeEZK6iYCPxqfkjeuCkLP1e+AIAcfVv7EgU/qpdkJlhFME9ZX87cVD+ZPbv/zmB5ya0IX9byPbUSTEG+H7nroElJPIgj11Ib45dNBYxvVfMGEyCGkKaDZCIqfrn+iDpYI1fFHm64H
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR0801MB15887C4B643A01613B4FB1E884B00@AM4PR0801MB1588.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93004095)(3002001)(10201501046)(3231232)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:AM4PR0801MB1588; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0801MB1588; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR0801MB1588;
 23:1FlAy1mSYLNfZWt0Nv1b3f571RgsYpQnzP62qAD?=
 =?us-ascii?Q?D37+YYVqYji/qahroH6xgFnYPa54EvGHik7E8T1VwAua3oY8MZwor6g54nU9?=
 =?us-ascii?Q?RtYqL/vmBuGtm2FAlSKON8H8/OfrliFk7AdIMlUJ+WJ1NUE65Bj9+0zsyAi+?=
 =?us-ascii?Q?jIF5/dU4HMddRM0vzOp79EhsTTP3fuOEPdWaAZBIP1JMIxpr+jzX/Fa5s3Y5?=
 =?us-ascii?Q?nYcqvi9AxayOOz8rGkL178NkbZ5fq8nOaeD/LsbvXw5E3Tg9DEYSKU0NVONN?=
 =?us-ascii?Q?UFI2uxKg1gZB8hIzEVIB4ytpUsL9SPrwyGQ41+XPrkIjNu/Hhss5HJanCpQx?=
 =?us-ascii?Q?Phovqws8m3rT0os252cuMUWUM29yNR9QDMY8Ac8hue3NAenYqkUb8pD6orwV?=
 =?us-ascii?Q?UiJNzYZYqOB93AJY5jFVTZXWe+jDXKBCKo1H6qzrJW3fWm0HtBZFJ/kYUc5Q?=
 =?us-ascii?Q?TEvQYBCgmrzKAw7ayk+BaxEt95IVhyrFPC4Gf9ogmT1djNqlAN3zhjnEYOmO?=
 =?us-ascii?Q?S4B2PJffh1VKdcth08Vy61obT3D0fRwKI4wrrSPBxgQVW6AXHHeom5Rq66l5?=
 =?us-ascii?Q?z1PjOVTnpNSg7guh86AVTfsyODhJ+aF4M+XTOPrIq63BTAgie5g8A7ZaEPZ8?=
 =?us-ascii?Q?2QujNT2YN49SuDPl6HuIvKDZTumLlcensmUpZuB152CNrfwCs1XKLX04gpkf?=
 =?us-ascii?Q?tzx27CvilcryUcPcxGi8nxQJVourbfwrGFl0lGQrpa4ytTIMV8gi0v4KpO1Y?=
 =?us-ascii?Q?P44LNPhO50N1jwZefIZ2lNpyEEHf6QYk+QcuA/hezqPXY4yzNZhE9tyT7/dC?=
 =?us-ascii?Q?dutj5oNz9KepLAGhkIdTv1D4/GmRKNT8ezhsOburW5/FC2aOeDPoxgdUuMit?=
 =?us-ascii?Q?8vm3Ven8fdXdCJ3o6KQnXy20VzdDaw7gcaOF0tNj+0vXv9M43ot1Id43SN3r?=
 =?us-ascii?Q?eOT0kHbK8/rT2ZU1iSpxdb/q4MFxXBfXwWKQN0DDa4ZPKtq261qRM12B0GZL?=
 =?us-ascii?Q?vfWwDL66Q4r0x0HVZORZ4L5edic9p9C16MySRNExSz6QvV90oG3qt0j1hsSi?=
 =?us-ascii?Q?OuZdIvkO1wJMVdl33dVldNoj2BB6G5ZCEjjp0bJj5K2RjV+1D0XW2Zc1ChOM?=
 =?us-ascii?Q?CZey3J45GWrKnAWH0jiIbrG6KeLrOhT+ouH9aKSXQdTsR0TQkxWSUVJPiVoH?=
 =?us-ascii?Q?cstc1FV/3AScKgd0=3D?=
X-Microsoft-Antispam-Message-Info: Xxa5K6p7kwE6/otMCVzueGuflkZ6MTvcKvUfm0NJIy2K3kdysfgK+CHJGwGR/Z9EenS4FaWP34f/drTh9U7t5NBxSLd1TfePS2InJgoZcPXqb1MNg7RwxCheRpRf1PgB4LCZZx0ldLoRK8Y5PNbs9VxK+bMPtWPOCOVQOIiYjWFd7wQtfC7Oz89tvlb2vrqDbgZX7+KBqpNRL4tfsExHNb5SzpKEVSuDIdu7FwtJBY3/k/gjUwhUJupc9ub6OQnD64FDEiLSdCwNWqSe9lKh+ZkgCF62n0lKeCEf/Dc+up2ZXr9zG6CT5GxBoEo7aVukX7IgGanjtnkNwnhW6LwJBzO7CwJ7RDiocQD8yUFnElobMDY7BSRWJzjAc9ZeRpzH1B210MAUQcA1fZVU4E7l2FehJx2AD8GYHurfzlE5HHM=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 6:OOuw6SdkUYKFCYaCWPf5LHNPHhQMXrOpHtx/x6aRLphfC1hmZNje1H6oKPKLjS07URX/le6p3keSoAkaeBTpa8r3epXBMnaIc+jWcL1rsdr/DU6DffhYA+pFOT+ZgRRV3k08kbaHL3cLYvzXK7SfBHelIVtQwVwEEhPIKLMrWg/7m/yBdnoNTZJ2Dyl4BRIXhnfk72UMZLmVwpr7S+hWqJdnIWbCBqA4Ms0sFCtJmSdow7KxfoIvgp84FRbDtgMmg6T9lCp33+P6dbG6DLexp82aWNmb1Wbdqry1F9/0jQ+Qw3kMbRPB55rI/PdC8rfqjviszquQbi7iA1nG/lN3tz6nOZNg3cvr+/S5MCgJ4I9vqZj4GvNHVfEswCO4XO6ddqCeImCF3vNnlkRxTRQxPP6uJcLpa7tkWLnKbPlVMt58CTKppjrrOLDjyTzR3Ki9RZhlzvZEgx2Rju+qvhH1f6nrzVCWBt9SQ+fwpTWTNvuj9V0jIn7AeXwjpg8p5dnE;
 5:UzXAcmZxU/hzONTiDCwi85dS8Qbr7HaPlvv+Ux1z38ByOXLoiwRkp2AZenwF/XCtS+5RixFD0LXylx94cQgfKzyo9L1q+b0bnY8eZ8hc27UXH+eDFoeZQl2j7TQ1dG8ZVExGBBbTYSWazMVyBLHSTYuZR1gi4+xpW2YocjaatA8=;
 24:JJ1B6b1owrfACUBAcAUmNeggTxJT141dRjhlOMJA3sjadiB8jR31M76Hq+GtAS3WW/tQUrAf+8zF7/xtXZf92roR0ucP9VbL9w2TNmel2yY=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 7:9739OVRbzLsYbdm+D/CRw4QYtaF+9I78802p7Ar20pgcNfp9Od+2qxua17ng4xCE+XAqSB03IJztOSUgVKt+ph7qh+AKlSeebxVFPCbdQTBpZytB9lgNrg0yrSjbmjTgoK9ec7YyB4gPAVxo+oyLZNF5WkQSJDdmhH5tIrKbGuPjWQNcH25D+qQetp2/Wit6wSbX2npDu6oW1mXnmOYYzYYCgxxv4q6ZkuOrPOEjL4RUnIQWpJ4VI9Sbcx5rpsz8
X-MS-Office365-Filtering-Correlation-Id: 2abcc50c-81f2-43b7-5b45-08d5a3643125
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:05.6569 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2abcc50c-81f2-43b7-5b45-08d5a3643125
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0801MB1588
Subject: [Minios-devel] [PATCH v3 32/43] arm64: add the virtual address
 layout description
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBkZXNjcmliZXMgdGhlIHZpcnR1YWwgYWRkcmVzcyBsYXlvdXQgZm9yIDQ4Yml0
IGFybTY0OgogIG1lbW9yeSBhcmVhICgweGZmZmYwMDAwMDAwMDAwMDAgfiBWSVJUX0tFUk5FTF9B
UkVBKSAgIDogdXNlZCBmb3IgbGluZWFyIHBoeXNpY2FsIG1lbW9yeSBtYXBwaW5nCiAga2VybmVs
IGFyZWEgKFZJUlRfS0VSTkVMX0FSRUEgICB+IFZJUlRfREVNQU5EX0FSRUEpICAgOiB1c2VkIGZv
ciBtYXBfZnJhbWVfdmlydAogIGRlbWFuZCBhcmVhIChWSVJUX0RFTUFORF9BUkVBICAgfiBWSVJU
X0hFQVBfQVJFQSkgICAgIDogdXNlZCBmb3IgaW9yZW1hcAogIGhlYXAgYXJlYSAgIChWSVJUX0hF
QVBfQVJFQSAgICAgfiAweGZmZmZmZmZmZmZmZmZmZmYpIDogdXNlZCBmb3IgaGVhcAoKU2lnbmVk
LW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KLS0tCiBpbmNsdWRl
L2FybS9hcmNoX21tLmggfCAxOSArKysrKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwg
MTkgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJtL2FyY2hfbW0uaCBiL2lu
Y2x1ZGUvYXJtL2FyY2hfbW0uaAppbmRleCAwOWExOWMwLi4xNTAyNTlhIDEwMDY0NAotLS0gYS9p
bmNsdWRlL2FybS9hcmNoX21tLmgKKysrIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCkBAIC05LDYg
KzksMjUgQEAgdHlwZWRlZiB1aW50NjRfdCBwYWRkcl90OwogI2RlZmluZSBWSVJUX0RFTUFORF9B
UkVBICAgICAgICAoVklSVF9LRVJORUxfQVJFQSArIE1BWF9NRU1fU0laRSkKICNkZWZpbmUgVklS
VF9IRUFQX0FSRUEgICAgICAgICAgKFZJUlRfREVNQU5EX0FSRUEgKyBNQVhfTUVNX1NJWkUpCiAK
Ky8qCisgKiBUaGUgdmlydHVhbCBhZGRyZXNzIGxheW91dCBmb3IgYXJtNjQoNDhiaXQpOgorICoK
KyAqICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqICAgICB8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisg
KiAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKiAgICAgXiAgICAgICAgICAgICAgICAgICBeICAg
ICAgICAgICAgICAgICAgIF4gICAgICAgICAgICAgICAgIF4gICAgICAgICAgICAgICAgXgorICog
ICAgIHw8LS0gbWVtb3J5IGFyZWEgLS0+fDwtLSBrZXJuZWwgYXJlYSAtLT58PC0gZGVtYW5kIGFy
ZWEgLT58PC0gaGVhcCBhcmVhIC0+IHwKKyAqICAgICBeCisgKiAgICAgXgorICogICAgIHwKKyAq
ICgweGZmZmYwMDAwMDAwMDAwMDAsIHdoZW4gVENSLlQwU1ogPT0gMTYpCisgKgorICogbWVtb3J5
IGFyZWEgKDB4ZmZmZjAwMDAwMDAwMDAwMCB+IFZJUlRfS0VSTkVMX0FSRUEpICAgOiB1c2VkIGZv
ciBsaW5lYXIgcGh5c2ljYWwgbWVtb3J5IG1hcHBpbmcKKyAqIGtlcm5lbCBhcmVhIChWSVJUX0tF
Uk5FTF9BUkVBICAgfiBWSVJUX0RFTUFORF9BUkVBKSAgIDogdXNlZCBmb3IgbWFwX2ZyYW1lX3Zp
cnQKKyAqIGRlbWFuZCBhcmVhIChWSVJUX0RFTUFORF9BUkVBICAgfiBWSVJUX0hFQVBfQVJFQSkg
ICAgIDogdXNlZCBmb3IgaW9yZW1hcAorICogaGVhcCBhcmVhICAgKFZJUlRfSEVBUF9BUkVBICAg
ICB+IDB4ZmZmZmZmZmZmZmZmZmZmZikgOiB1c2VkIGZvciBoZWFwCisgKi8KKwogdHlwZWRlZiB1
aW50NjRfdCBscGFlX3Q7CiAKIGV4dGVybiBjaGFyIF90ZXh0LCBfZXRleHQsIF9lcm9kYXRhLCBf
ZWRhdGEsIF9lbmQsIF9fYnNzX3N0YXJ0OwotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1p
bmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qu
b3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:17 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjR-0003QF-Ts; Mon, 16 Apr 2018 06:35:17 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjQ-0003PP-KF
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:16 +0000
X-Inumbo-ID: 310b3f50-4140-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::624])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 310b3f50-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:19 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=KYTYlIcX1qBkAN+tzmxL+IncKHuiYAv5abx1ftU8ClE=;
 b=RZi0YMtTG+d39fh6q5f/tkJi45zwTrsBOOgEYRvJHp0IbFIyyHlMP1efQ6f/DeNQ1Sxex+A3hlToXeES+4cXszqNIATp1HYvwYgxMge0WT+H2GMq9rWOguHO5HwEKKEK8D+2jF+UXET4yeaJNwvbsRlgP4LmBlrCsZuWQzDvkrg=
Received: from HE1PR08CA0074.eurprd08.prod.outlook.com (2603:10a6:7:2a::45) by
 AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 06:35:09 +0000
Received: from VE1EUR03FT052.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::204) by HE1PR08CA0074.outlook.office365.com
 (2603:10a6:7:2a::45) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:09 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT052.mail.protection.outlook.com (10.152.19.173) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:08 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:34:58 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:14 +0000
Message-ID: <1523860343-16382-35-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(346002)(396003)(39850400004)(376002)(2980300002)(438002)(199004)(189003)(4326008)(305945005)(2351001)(356003)(478600001)(336012)(104016004)(106002)(26005)(86362001)(50466002)(6346003)(8936002)(47776003)(72206003)(26826003)(2906002)(39060400002)(50226002)(11346002)(7696005)(51416003)(446003)(106466001)(76176011)(6916009)(476003)(126002)(2616005)(48376002)(6666003)(36756003)(426003)(8676002)(246002)(316002)(54906003)(16586007)(186003)(5660300001)(8666007)(77096007)(486006);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0802MB2418; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT052;
 1:NYzOKEsvEU5nBrnC7QSSfXQWe0ZlFEMP8BbCR7TTKZ2ZQTjUPY4bDluPDNP9KzLje9l5DawazOyc2nnGoQLt0GpHETCsggzUtPXCftxTj1PV/fl4M7hbmkR2x4bEbdbE
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM5PR0802MB2418; 
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 3:5Q47pRDpA54Pfv+tvxlQT1QppMYLybfRAdUbCLSGqV1gLb063CHnw1o/FyWYGGMlMzr8ADPhD7EjY9Oa+FEpphqDAyz3A8G3p0AiF8I5Q87maTTbliFyUEnwKjSZ0B6MRA+dEzsN803458QnWn1URU1UTv50Djxv/kG2AyCk0CqRViWLvGXU9JlXEIG0tqnIBgJVh6BC/0c5xJv+21HwcP3GRWqeyRJQhY27RxL9eRIA1OFflJ808IiydFGgizzDPvrGtbPk9fCMCLTi2mxSpB05EjoMK8r9dfs4G0UIv5kUc5b7JEkbmR+BWLFWtETGLs4+C9DUYTogb4BY6CoydoC/0K3xhmKBqKgY7IZOerU=;
 25:UNMUKbsDXzivAnUAFRZHKmWPYaZA5TiOyNsY/y+W052Q384m5P6tfyb8pwezfgK/hhKLRQzKyv2f60CabsYVkQlXLtIkyWITJlhg0g6QU8qHZ+VrG2OoRJb6nqEelBDcFV+zVHTkpxVd3EeccbXX7w1SiTzTlbjOWhuHJV8tsRG4VuUWB4ZTAqsvMvwb9qmu1o3TBnTR3BmN27ut1S4a1MutAqvnOukRZzalstAxdtqtU/Pv2vZ7clyY2BlN922UQjw/HWvpQVa4/zgDahilFEhD2MUtxHk/w0cW9Z2IJlLs82/AGn3zFKvZepq/1WKLlTUTYr8AeoRJV5ug+GPjhQ==
X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418:
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 31:+8qHojZTd+gEiDz31L79adz6zG5Sz+Xt2aIlf3XL27uzL3NhiDcdw9PnFczSnR8Qu6xA8pwJGAfY2B3bclzMSuOwBWX3tEri1jeDvYB4UsJkg9MDpUUw2cRt7FLLpLb5Qhg+ehP/XiH2knhRCAtqo3X/M9ddgXleQoq1wtJ1oVxeKxARP7WH9p0qvMocG5JV3RRvRRlCPSa2Cf7yUYcnCy1Ahbor6EyyTGxfm/+JgqE=;
 20:3rIvFKcJi7zw3abMMAbTnSDL+x/B315r2NXNdVBfr6b50Rqt4HUzV3P4TdbUC7r0PrL/IhytoHKE+M69PqdQAVSXSZTEANw5fuf+IGDy7vBP7v+3qCBQLStKGRSMhGKh+b908Rj/2r+IbBczKBMDj/zmz9Kx04YNcM4vG8dx0dAGCbnLKp1JUP2MdinvXlLQef1ViGmsPmMBgWJw1Jqk3m9aoLWSo4PWKzaeJq48i1J3B5kamw3Akw2rAxuPUSfi;
 4:QMfgDG204JOyaPvU7f5uAXAQWi6wd6LbFLYjIty20NJVLEFs2Ql2qC12a43Mhk4EE2Kx1UBAU3sj6mXxmRvqKJH8LekPGXd/bPJ/BUsqJdSBHERdjYNjz7sOjGcy/OR5bp37oAWuYTAVemfuusvyOjiEcLG9H3M8I7Z7zO2G9QOpngCJ98LgVddbEKBZd8vC1Txdg/8NFUuPw/Hx/L9m755Sia3WoJ9DiehFwF/HUl+FqLd6YCJYxC7+Gx1NfiprGqFC04hEUkH7JxPLfjJQ+lHFvRlp/Nn8eNz6Mi1ogpEcPSqqhBm01Zsju+ForqwJ
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM5PR0802MB24182D31E73DA42A8AC694DC84B00@AM5PR0802MB2418.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93004095)(3002001)(3231232)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123564045)(20161123558120)(6072148)(201708071742011);
 SRVR:AM5PR0802MB2418; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0802MB2418; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM5PR0802MB2418;
 23:8+dEC/d7bmDimGsTsJkIBZhdt6xfEjC7gC3sGV5?=
 =?us-ascii?Q?UFuXV1xM6no/wgn77gK+6Ax3kblB0+QtggVs7DLpwPqTBwLIuOUdIPpyiPRX?=
 =?us-ascii?Q?BQJWnfYPZylY3nFfpHpqDmsdq0buwTCmiG3j6JFk0EJ/UxXtlwH04D4LZN3a?=
 =?us-ascii?Q?USG6s9C77eJjXSsSU6pteovv/dPaEKpAJHSbuyVf4T6xfheU7Cuxo2FolflZ?=
 =?us-ascii?Q?1ODliX4VmDLWSJuxRJw5wZO4IrP+yUBhn1iUPaasW0YUSba4Ki2amrK8BJJV?=
 =?us-ascii?Q?hUtaGrN4ybxv20Ck5vcKygWz4/Nk0V2lLNIon3oHxbCgBHnpPJ/HUUiuyShu?=
 =?us-ascii?Q?Yb0WikjJHEWO6K8SIe2CGy/IgDeBpvQyPM0NlaTLRHxCE9GnZ9azUh/KWWRd?=
 =?us-ascii?Q?sFaALRlx3W9q07qyZ5jK8BV07apSUUzVr8VRZfZ3BH5n2hSdE4aAKFZ34r7m?=
 =?us-ascii?Q?Wv51xOFjQqyc9uHub8BCiQ6K5lgKFXOBduhAvG9tA59PgfSJCv1E87Ce0xv2?=
 =?us-ascii?Q?hdVsYaO6r3+SAPEuiVStD5DIgPQAiBQakiMg+hzO6hpD3pYgHTIEVyP63eKk?=
 =?us-ascii?Q?TdOCwEGTJStWcLJJp5sucxI54g3rwpo450qx+UEdi4hDi2U0rMD3zw+erIgR?=
 =?us-ascii?Q?8qiyPDL+EC/6D7QXjK0LtnjbEZse3HbFTlRWBFO350mPjN7xU+kAiazY7jMr?=
 =?us-ascii?Q?I+0nvjeYI+zs7euki/JUF8NHH8fqdKJdEeri1n1vpQjlCepoynYUm0qBtwSQ?=
 =?us-ascii?Q?QwcJipVXf6ur0/zPdsm6Arbgnw3Hl0YgsSqnS4fnyHTbQ21tmgfT8GkFEqsk?=
 =?us-ascii?Q?gA3HaPmnzulEIBTu0iaJTxHXikeqfpb9tX+jhUeKJalt2N1zwfqbERU6z23i?=
 =?us-ascii?Q?/xasltMP+MmV3ffbRQDm+uvVrE0vqCl8LPAL1PE9jVUzNM0fO8yHbBMuKaL0?=
 =?us-ascii?Q?RgvH/NGxLlsYncGbN0JIEB4wdtgW8G3viurzyxiYm4Nyj/Vsv2qTvbmvJwyJ?=
 =?us-ascii?Q?y5Ko+1GQh2E2+Q5jz+muyJw3LnErihC3zZTwSWRkcPdtrOk/JkH/AifOrmJJ?=
 =?us-ascii?Q?58gvcwKj/o0F4rigaEue34SW+YTrx+6MIufesomx22pXUOwQsozZR6CaAQ/5?=
 =?us-ascii?Q?yEgxeiAXL6p5eotS82iJYPkGK6RcXyM2y?=
X-Microsoft-Antispam-Message-Info: 2lo5Joo1PzTb4Mw6Ov9J3inoYiSRsPxCj7odpNing101T4Z8JbcdzY4M/j7UZf8tTZsgznls1/8s3p+/3VAQ1Qeqk0Sn++fkmECx84MK5xiqHHPiNyBDh1RoHg5zUt0lZVe/A0a2G09/Q3zhj3NcAQ0uMjI/Km2SUMrY1c8HdoXSnshnIw4OUIFLoz9qCbHAIyMQRvfG8A6q2rHAh9+qxV1FGy+RHlNm4pSdv38tl7TR1l7QgKbIYzJlkpSod7hTDbha/iQzzOFdliAUdfFE+C9VBQTTurIhfCc63c8wt8Ecyraw3JLKjM0ZVWENWqlBoMmbrd4RdmZZ1tKkmzbp4hviw9inPrX2IxWQ4gnsqeK1XMIU/d4m/OQk5dL5Rmq6H6i40dlU5fs5oKiRV4zmXosTS/uivtEGkpJjZiF3kBo=
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 6:L1oyssbxX5mNl/Xy7HMn79yD8XicsfSVaGjnd2oimFeQUfTgnD0nFhBo51Xf45UeNNip9EfC7U8FTbyLvgEksSYGdpQbiJsZz4uu+NlDS0BZShsYcgcVjCLeG8jnOwjB7Dd9LtykCfG7ouC16u9oGCvlNlyE596ef1+WLPsVptjZQflOk12HIfp9BAjsR+FqEPKRCb1ZTHrUCBr8riA8HuIPo9VjIrpo+pMZDWmgCfIpvIeTSMaKqwe5go+Jj5P/A6ym9wxxJ1e9d/ZmTYe7wH67CaRjHJmnqoW/m0RXVACwLo2BUTogMAu4pUY1n5Yt3TQ/bDBm+Kq2IhK3C9AuFwdH1pRqPOa9ZhGtk0iJnFTD8ZAcd2NAH0/ifCtfdm5hYVAw0VkkoMAfF0049xECw4qEk0F6b3IfTuGIdCxR7pH3DIeCTWwblbS56U6vEWGAaHvXkM+BhUfIqTnh5ODsKMp1pjtcQSKZkvuvAJsJz5PWQVKkVCZ/f5ctCxjekXlS;
 5:3T3FSQIABqPryDe1YJhwut+HA0E3sByXepeaNYUQOt12LD3m6c4Tkds8V8TErZMryWE33+T3a6Iai5hgi2lnrYokB3gLjSuZs+EhUjdmdEPbnBgYBYpl6d+b47tOT5UVm2rZ9BIHILkLPFURp0ptpag+GJJpSeRGTGszx2m4nD8=;
 24:Kt5eAMvv1K0oICxoTxFvnM5h50xyjJnA/F8qzWnokSM00LPDRrrn5stNFcwepmZrnmlNmK2hbbsqm/tlzPXShmvn37oMmBImO8dFB7KaBxM=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2418;
 7:UDnI+DRLlT4fg5X5KZlBsyCQGhpEWfiQ2yw69IjRLRxHWcbPMVnQQKgqMq6eCagLID16F2KVe94VjFRZSaCCQMQS101/qhigI3uG2pzIRKCUAOAChbCuNAdVB7WDPBQDPNif6epJgP49xMaIfnTfYlEf/qMGzBpaRS79p4S9SZPSRgUIghutbn3BIfzvPTOTI6cfkF7b/L8jbfXdmUirogsLNJ/TOc2kMtNlWqZu8PvmAwtg4yWgaFeWc/I6IuGv
X-MS-Office365-Filtering-Correlation-Id: 650307a1-c18e-499a-3e89-08d5a36432e7
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:08.6053 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 650307a1-c18e-499a-3e89-08d5a36432e7
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418
Subject: [Minios-devel] [PATCH v3 34/43] arm64: gic: implement the
 REG_WRITE32/REG_READ32
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW1wbGVtZW50IHRoZSBSRUdfV1JJVEUzMi9SRUdfUkVBRDMyIGZvciBhcm02NCwgYW5kIGFkZAph
IG5ldyBoZWFkZXIgaW8uaCBmb3IgdGhlbS4KClRoaXMgcGF0Y2ggYWxzbyByZW1vdmVzIHRoZSBS
RUdfV1JJVEUzMi9SRUdfUkVBRDMyIGZvciBhcm0zMi4KClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNo
aWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQogYXJjaC9hcm0vZ2ljLmMgICAgICAgICB8
IDE1ICstLS0tLS0tLS0tLS0tLQogaW5jbHVkZS9hcm0vYXJtNjQvaW8uaCB8IDE4ICsrKysrKysr
KysrKysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlv
bnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2FybS9hcm02NC9pby5oCgpkaWZmIC0t
Z2l0IGEvYXJjaC9hcm0vZ2ljLmMgYi9hcmNoL2FybS9naWMuYwppbmRleCA2ODdmMjQyLi44YmUx
Mjg1IDEwMDY0NAotLS0gYS9hcmNoL2FybS9naWMuYworKysgYi9hcmNoL2FybS9naWMuYwpAQCAt
NCw2ICs0LDcgQEAKICNpbmNsdWRlIDxtaW5pLW9zL2h5cGVydmlzb3IuaD4KICNpbmNsdWRlIDxt
aW5pLW9zL2NvbnNvbGUuaD4KICNpbmNsdWRlIDxsaWJmZHQuaD4KKyNpbmNsdWRlIDxtaW5pLW9z
L2FybTY0L2lvLmg+CiAKIC8vI2RlZmluZSBWR0lDX0RFQlVHCiAjaWZkZWYgVkdJQ19ERUJVRwpA
QCAtNDEsMjAgKzQyLDYgQEAgc3RhdGljIHN0cnVjdCBnaWMgZ2ljOwogCiAjZGVmaW5lIFJFRyhh
ZGRyKSAoKHVpbnQzMl90ICopKGFkZHIpKQogCi1zdGF0aWMgaW5saW5lIHVpbnQzMl90IFJFR19S
RUFEMzIodm9sYXRpbGUgdWludDMyX3QgKmFkZHIpCi17Ci0gICAgdWludDMyX3QgdmFsdWU7Ci0g
ICAgX19hc21fXyBfX3ZvbGF0aWxlX18oImxkciAlMCwgWyUxXSI6Ij0mciIodmFsdWUpOiJyIihh
ZGRyKSk7Ci0gICAgcm1iKCk7Ci0gICAgcmV0dXJuIHZhbHVlOwotfQotCi1zdGF0aWMgaW5saW5l
IHZvaWQgUkVHX1dSSVRFMzIodm9sYXRpbGUgdWludDMyX3QgKmFkZHIsIHVuc2lnbmVkIGludCB2
YWx1ZSkKLXsKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygic3RyICUwLCBbJTFdIjo6InIiKHZh
bHVlKSwgInIiKGFkZHIpKTsKLSAgICB3bWIoKTsKLX0KLQogc3RhdGljIHZvaWQgZ2ljX3NldF9w
cmlvcml0eShzdHJ1Y3QgZ2ljICpnaWMsIGludCBpcnFfbnVtYmVyLCB1bnNpZ25lZCBjaGFyIHBy
aW9yaXR5KQogewogICAgIHVpbnQzMl90IHZhbHVlOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0v
YXJtNjQvaW8uaCBiL2luY2x1ZGUvYXJtL2FybTY0L2lvLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uZjRjMDg3YwotLS0gL2Rldi9udWxsCisrKyBiL2luY2x1ZGUvYXJtL2Fy
bTY0L2lvLmgKQEAgLTAsMCArMSwxOCBAQAorI2lmbmRlZiBfX0FSTTY0X0lPX0hfXworI2RlZmlu
ZSBfX0FSTTY0X0lPX0hfXworCitzdGF0aWMgaW5saW5lIHVpbnQzMl90IFJFR19SRUFEMzIodm9s
YXRpbGUgdWludDMyX3QgKmFkZHIpCit7CisgICAgdWludDMyX3QgdmFsdWU7CisKKyAgICBfX2Fz
bV9fIF9fdm9sYXRpbGVfXygibGRyICV3MCwgWyUxXSI6Ij0mciIodmFsdWUpOiJyIihhZGRyKSk7
CisgICAgcm1iKCk7CisgICAgcmV0dXJuIHZhbHVlOworfQorCitzdGF0aWMgaW5saW5lIHZvaWQg
UkVHX1dSSVRFMzIodm9sYXRpbGUgdWludDMyX3QgKmFkZHIsIHVuc2lnbmVkIGludCB2YWx1ZSkK
K3sKKyAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygic3RyICV3MCwgWyUxXSI6OiJyIiAodmFsdWUp
LCAiciIoYWRkcikpOworICAgIHdtYigpOworfQorI2VuZGlmCi0tIAoyLjcuNAoKCl9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWls
aW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMu
eGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:40 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjo-0003Sp-05; Mon, 16 Apr 2018 06:35:40 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjm-0003Sf-I0
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:38 +0000
X-Inumbo-ID: 3da7cc4a-4140-11e8-9728-bc764e045a96
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe09::628])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 3da7cc4a-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:40 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=crglNcQafFQEWBKSY79ebMIYGlN8fYhqj6E6ObBb16o=;
 b=gMz3Uczaq3pRnupOFfDskNN7h4lBl6nIag3AE+5MLPhRl2P20ijqfLL4aQahzqUGAdh1zraOC4tvc/0ArWCcpNcgYiawfn3/wVPVW6a9cWC8Kuo7rwki72X294xGjuoAZ/bDZKAOqHQuN5Lo+bTB0XmXwVJi++54ijXeWk8nb8s=
Received: from HE1PR08CA0063.eurprd08.prod.outlook.com (2603:10a6:7:2a::34) by
 HE1PR0801MB1596.eurprd08.prod.outlook.com (2603:10a6:3:14::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:35:29 +0000
Received: from VE1EUR03FT052.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by HE1PR08CA0063.outlook.office365.com
 (2603:10a6:7:2a::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:28 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT052.mail.protection.outlook.com (10.152.19.173) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:28 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:35:02 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:15 +0000
Message-ID: <1523860343-16382-36-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(39380400002)(376002)(39850400004)(396003)(2980300002)(438002)(199004)(189003)(6666003)(6916009)(186003)(50466002)(4326008)(104016004)(77096007)(11346002)(476003)(446003)(2616005)(48376002)(126002)(426003)(336012)(16586007)(54906003)(106466001)(8936002)(5660300001)(76176011)(316002)(39060400002)(86362001)(2906002)(7696005)(356003)(36756003)(50226002)(26826003)(51416003)(2351001)(72206003)(106002)(8676002)(47776003)(305945005)(26005)(486006)(246002)(8666007)(478600001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0801MB1596; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT052;
 1:/05SObznCR1KqWjXKV20bkO0LLZ84MQEJrV9gz8PQRQkdshPWxPE5nCsiQ8024QstoV1w0nVAOYrbMvNAA42oHBGectB8myQPqY+9IOJcGQKFaCrFVQXIh0pz20gTH3v
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0801MB1596; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1596;
 3:aUPcUt2xCxviZY5SfG8QWtv9SKpuHhQA5D1uvwVME1XNPTTFIbVRYCXFkbjtrwExn+3uck/7TOXiqz3wg8KY7drUAT4YnTPyfcode/ij5bYKD/3bV+vSX1MU2sD2HH3XBEPG6LyKp+BtTN8k/SZmOOMaB+MAab+zgoHuvHBYeF+REub1wGAbf8f3zfsepV3V8KeH16Li582B9Ip1r4pV5xy1LirJtN3gsFJetXsG4IpkH218NAwXXK83K8s8rnV3kg/OF5C8XO8hX+7b1HbSUxukQgN4EwF//qXCQdfJ65k1pGjvsEJ3foIiV3CU1zgpwUI5AGLCkLe7q2PsiyGShx07SarpqKe/MT9VYpsMI3w=;
 25:grYVgQJULae33KzMoU/mczw1udwsdGd2kcIerkqFj7/UT+bm2gh6ELbj3czkU0h0JO181g1mZ/HSvIV53i5ktQYr04vT4HnfFPaq2gGeJer2n6NXzh3VOy88qqp+biKP0WDzjCZhilwzPdiFygCemC2zg4CF+uWop49HJMlg2I/oPqESMlqAWsx4EkDJKnxgPAPsQappCOjN9nZEEq1DgB7pipA3UZ6xfGiTjDT7PuyYv/r9FePYpnnvyTNLYbRu4ABpp1RfeJJdceqa01YRqhDgmCpGpIS2IXwch2/GU++tVobiV+G+zP8nBtCi4+jLyPE3qxDZRC+3mvVk6BL9Lw==
X-MS-TrafficTypeDiagnostic: HE1PR0801MB1596:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1596;
 31:S+il3X02k0Vbo2cZugEUmqxeIY144iMQcV5bwh/XQhfNkVTJK9Z2Hmoc9+Zf6acvxXAHu6K4RzcTHOuHh+cb8m+QHCjAKYNXleu2B4ErVILYX6m7CSoC/8Uxdd60oJgzO/MzTrNS3ON7vhK3OvUEXPPl2jjBsiICxXNMMtkJ+Gj3M/NBxYH81JFis3urHJlIfMRCGJ1k48ymMMc2n3rIonloI+8s6BuEMyAMf4yH9cs=;
 20:aWwbogTKiFCMNe/wb6ntrc16kDDhRV2fnet13X2z8X5mdOJIey+CHB4yjcFhNvEnt4DouiI+bG0BzcVPAyl6UpgLqbpCT7xgSfe5qMUeaclnA7WsP+PwiHEwPerTjC2zL/atwxfpWKJ9OuU/bwuxnQiIOLNDsrTlxi+7gUnEFYLXr6jITt+H5IVX16ZUkItbyy7KEuMpkqomo4b27QowNS/mFW6iVqggFUYNq3kIrSjYsao7XdWmAU+wdNyijalZ;
 4:+s5+k6iPWsdR5snccCa31CXQhAL+psqHHe71ghElMis1Uc16euk1pJjS5chTMP41nDU1q9bdghdnjrNuPP6f+dEZeYkiSh5lMjgzdUqIRIo45mqhIsPvkPPT07i/F8dnuvptoV9i8sa/7+cHRqiWcoKflbwCIhxBKgGnZLTZ0Ge9kOufsfGQsQbIfLAJiWPuARVkS51vMX38EDwQb9AhUxHCaCRM+y5CtbNOaIjwD6DOw/eVwbJGkMoAcHpLXI3rNAuvs9OAUi8am/rOFtrlTmlUkwROWWzjQP9MtzB+BWr0KUXbLlwXtkyS+Zo9QSUg
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0801MB1596DF0BAB236753F894F49384B00@HE1PR0801MB1596.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:HE1PR0801MB1596; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0801MB1596; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0801MB1596;
 23:sg8mCFdUV+sjK12Cx8y6/Fk0xswAxGzCqjDAMJd?=
 =?us-ascii?Q?g+Eue9l+kUpZKF+vi5H78Rxjx4StpNGOg0QQk6eOBQvXN3szIghUiicW/wC6?=
 =?us-ascii?Q?j0WfyjY0ttDw0G0MlMvV5618bBqSL0N7NFtDxHt5sr1UrLPL7uPRQhxi+ycE?=
 =?us-ascii?Q?3JvdotLlMWsSN7ij1z57fepTXkTWYg86SE6VyxZ8sKmQO7xZbmVwHm4qsNIc?=
 =?us-ascii?Q?J4hHxSXHB7gYpVB1J42Wip9pv7gVsOyzVoqOoWqrnoyqc6GiZ7dEJgkhEKme?=
 =?us-ascii?Q?yAf97DOLZ63Cmu8FZiFmhPwocTgWdBjOb/CIwn8UHA/IUcRKKCl8gDulyYaN?=
 =?us-ascii?Q?6n8wUDndtsLNlyhVD5X6j9btQ352pFTiPbQJ7Kze1RWZXfJhsjUua4xm8EHQ?=
 =?us-ascii?Q?8yuVOCuh11/altWK+rcHugmw81I8eUwpUll965G1atvBeeldkUJXr+1SNj4s?=
 =?us-ascii?Q?mRzpFHwMoBvBSzDJVXG46ZlHkSOFLD8kBO3Nw4Zn5SlTlD3RxDk8KrYNYXQ9?=
 =?us-ascii?Q?YEBc2oqbINOBrLlsVQQAxT6XRe4ASrKb/jAL0IVnbBa876q94x6AYfWADl96?=
 =?us-ascii?Q?XXLfBsFy3/zJgDiJ7WD5EtFJa/0wzNSPUWoNc9njA5rjEzciyf0x5o4NIfuv?=
 =?us-ascii?Q?EyYJ+9YhFsMD47DPz//3ULFsIEU/vu4WaavGYPg28sODkheQtuPNfszPCL+K?=
 =?us-ascii?Q?BsT0r/JGRbDVrtQtsckZsRBpmPF3iMkXKwgpjC4wVArd1Q5ghUckcZ2GZb0k?=
 =?us-ascii?Q?3R3/LkbvNy7fsPRrUtnO8NkX+ivX2e52DN4Y5CAViNC/gXcbm/y0fUwlkjY4?=
 =?us-ascii?Q?YLuNlCLuCRXPnPhglmVhJSdA66mAxkUsP/iXom+8RJpCeTIYlCuF7u3BggGt?=
 =?us-ascii?Q?W7xhhK4hRuaZLLzdxuHD4M+YQuQI1bP7Bi3pKVwBYUpFrTM22oAKT7jStXlh?=
 =?us-ascii?Q?5a4MFN4fc90IQjNi/S9SuyGuSgWT4sjsCqHwIisUb0X8QWodrbkBMrb20kuV?=
 =?us-ascii?Q?piJOwLW+6rppKrZhCwog8okdJeXIZqPRHg3X4VK6RHlpTA8OSUt2IbJt8yIT?=
 =?us-ascii?Q?1uiCmmiKB8lLeSFBVI/W34Izl7o9X3XL4vk+Z2n5ZtJul5ZnWMbG435drMmc?=
 =?us-ascii?Q?OsZPe94xdwPlRTM24Qtu87sUNP6iNqSR+?=
X-Microsoft-Antispam-Message-Info: l9VxFGyKC4N/5+74joFtzRPJFUeGyZPkV7VZESd2F64ECkFRqF6q+tH8bxxwzq6/S4ucFqYTZQqrqk7RN9k7nRvaAkJjAFKOHrnhYRZHCFQI0ZrBZzU+wZXPvnsaJKjcWfRd4n781Pf0J4/ghX/pnENTFPFjj8Fns/GrKd74Tx3Z778PhS7vIRNR2iEbuYsAl+DlAmF8anYEGHlFAxs4raO9S1IguJFsVa+xSrn3plYf30Ku5EKwJeNpybp2MyefD5+RxQgH+JER07Eb/h09RJ8SHdhBNFE6+XbOrKXRVUCZ2y2t8BHu565wExo27+yVZNEgrRyxJfxY4EmcHFWRKs0M7oFlVR7Y3wPoiCFLT7DwFQRKRagIOROfkvNaNyJvpCdv7md3/p1FAXjFvNQcFbLuBvSwg2M12BbJ81+PRak=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1596;
 6:s8P9KqMBOe31p+clJiRtjlebAGRLcugiIhUQ84FdHTywHHjGVzEF5181M5ZxIB0rfsNOAyiQblr/7aUNX9xnViQtdRBozzYE0ZO4By8N2t2pF+7gwjM9egt+9FJLvs/EqdtcQt1kU1iswhxnGQkbm1SkH0GC+ppBhG7rzP4HNmstHJFhDfh1t9OIR1UO6EycTpk330WT+GvSHRlauodPZuDyUinajNHKIY4fPjh7atzjckmsh6MhX7Q1W+zVPYhLa4xIr9zK7k8sQP2xnRp0X85ifqCt1TgjGWhhAtFh76RcqrkqwJCT94guVIF2vYnY/Z9+4EUNZ4bijMuk23Ugf6+yxhvnJIriP9r9z0TYHO4lJpdwOrB3yCJds6OJIdx1HVG9c8PT+ohQsWrMvfhDuFxVFssgj0CPuWZjrTN2OXdWZD5AD8mGr5iznSSk9VIJg25HSiLKmaPS/WIGvytEpy64JEnkK7wyHxkqV7TEK4p65TfT6GBF5wXYuCKT0Hyt;
 5:+lFJTThoGKapy4WwnMgqqjwjHwWY8YYo1fKSqBOIaA9G+LlZZRklcHU8nwPLNDa5Gt8/dHwY5WrJzoiTab/fgqoZX62GAf83CcUgfqSyReGuQXXue/p2NxILiDbw2iiSth3qt7ZahwfUx0U6lBsIVCWrWeTclAe9f35s3ASDz/I=;
 24:HMmgscuHGMZBvC0QEk4xoxQyBYZOqFpnjmJunU2yqwEhcGF4YTyZrfnHDCmBkbHCxhI6EZ4W38lbaJ70GsczEAVsYOM4HnYdLXZyP22WuHM=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1596;
 7:tds+8PYX99oX403pieJoGCCB0Knj62bCtQ8BehDx23yMri6Hrv4JjNcowl1wJuJ9i887kK/uNQIxFP/e7ZWkZXqKwaXxwCuNMIagGCP0PjH4JyPspspbKKFlSLvfLExV0YFa2+SnA9L8zVQzQ4oAX+kCUB2yTLCKnzMk9rw/YLKnjPR2FImmF5/DEuyyP5O00T/aM9I4J20xwBo7ISUb0E6Uys8chD6+Ufm0Lm2RVV0lNyIMSFToapJ7sO4ViAYX
X-MS-Office365-Filtering-Correlation-Id: 8be79b37-ce51-424b-3c32-08d5a3643ebb
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:28.4495 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8be79b37-ce51-424b-3c32-08d5a3643ebb
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1596
Subject: [Minios-devel] [PATCH v3 35/43] arm64: implement the timer helpers
 for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW1wbGVtZW50IHRoZSB0aW1lciBoZWxwZXJzOgogICByZWFkX3ZpcnR1YWxfY291bnQvd3JpdGVf
dGltZXJfY3RsL3NldF92dGltZXJfY29tcGFyZSgpL3JlYWRfZnJlcXVlbmN5KCkuCgpUaGlzIHBh
dGNoIGFsc28gcmVtb3ZlcyB0aGUgYXJtMzIgdGltZXIgY29kZS4KClNpZ25lZC1vZmYtYnk6IEh1
YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQogYXJjaC9hcm0vdGltZS5jICAg
ICAgICAgIHwgMjcgKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBpbmNsdWRlL2FybS9hcm02
NC90aW1lLmggfCAzNCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAyIGZpbGVz
IGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg
MTAwNjQ0IGluY2x1ZGUvYXJtL2FybTY0L3RpbWUuaAoKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL3Rp
bWUuYyBiL2FyY2gvYXJtL3RpbWUuYwppbmRleCA4ZDY4Y2YwLi40YzM1NWNjIDEwMDY0NAotLS0g
YS9hcmNoL2FybS90aW1lLmMKKysrIGIvYXJjaC9hcm0vdGltZS5jCkBAIC02LDYgKzYsNyBAQAog
I2luY2x1ZGUgPG1pbmktb3MvdGltZS5oPgogI2luY2x1ZGUgPG1pbmktb3MvbGliLmg+CiAjaW5j
bHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxtaW5pLW9zL2FybTY0L3RpbWUuaD4KIAogLy8j
ZGVmaW5lIFZUSU1FUl9ERUJVRwogI2lmZGVmIFZUSU1FUl9ERUJVRwpAQCAtNTcsMTMgKzU4LDYg
QEAgc3RhdGljIGlubGluZSB1aW50NjRfdCBuc190b190aWNrcyhzX3RpbWVfdCBucykKICAqLwog
c3RhdGljIHN0cnVjdCB0aW1lc3BlYyBzaGFkb3dfdHM7CiAKLXN0YXRpYyBpbmxpbmUgdWludDY0
X3QgcmVhZF92aXJ0dWFsX2NvdW50KHZvaWQpCi17Ci0gICAgdWludDMyX3QgY19sbywgY19oaTsK
LSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXJyYyBwMTUsIDEsICUwLCAlMSwgYzE0IjoiPXIi
KGNfbG8pLCAiPXIiKGNfaGkpKTsKLSAgICByZXR1cm4gKCgodWludDY0X3QpIGNfaGkpIDw8IDMy
KSArIGNfbG87Ci19Ci0KIC8qIG1vbm90b25pY19jbG9jaygpOiByZXR1cm5zICMgb2YgbmFub3Nl
Y29uZHMgcGFzc2VkIHNpbmNlIHRpbWVfaW5pdCgpCiAgKiAgICAgICAgTm90ZTogVGhpcyBmdW5j
dGlvbiBpcyByZXF1aXJlZCB0byByZXR1cm4gYWNjdXJhdGUKICAqICAgICAgICB0aW1lIGV2ZW4g
aW4gdGhlIGFic2VuY2Ugb2YgbXVsdGlwbGUgdGltZXIgdGlja3MuCkBAIC04NSwyMyArNzksNiBA
QCBpbnQgZ2V0dGltZW9mZGF5KHN0cnVjdCB0aW1ldmFsICp0diwgdm9pZCAqdHopCiAgICAgcmV0
dXJuIDA7CiB9CiAKLS8qIFNldCB0aGUgdGltZXIgYW5kIG1hc2suICovCi12b2lkIHdyaXRlX3Rp
bWVyX2N0bCh1aW50MzJfdCB2YWx1ZSkgewotICAgIF9fYXNtX18gX192b2xhdGlsZV9fKAotICAg
ICAgICAgICAgIm1jciBwMTUsIDAsICUwLCBjMTQsIGMzLCAxXG4iCi0gICAgICAgICAgICAiaXNi
Ijo6InIiKHZhbHVlKSk7Ci19Ci0KLXZvaWQgc2V0X3Z0aW1lcl9jb21wYXJlKHVpbnQ2NF90IHZh
bHVlKSB7Ci0gICAgREVCVUcoIk5ldyBDb21wYXJlVmFsdWUgOiAlbGx4XG4iLCB2YWx1ZSk7Ci0K
LSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibWNyciBwMTUsIDMsICUwLCAlSDAsIGMxNCIKLSAg
ICAgICAgICAgIDo6InIiKHZhbHVlKSk7Ci0KLSAgICAvKiBFbmFibGUgdGltZXIgYW5kIHVubWFz
ayB0aGUgb3V0cHV0IHNpZ25hbCAqLwotICAgIHdyaXRlX3RpbWVyX2N0bCgxKTsKLX0KLQogdm9p
ZCB1bnNldF92dGltZXJfY29tcGFyZSh2b2lkKSB7CiAgICAgLyogRGlzYWJsZSB0aW1lciBhbmQg
bWFzayB0aGUgb3V0cHV0IHNpZ25hbCAqLwogICAgIHdyaXRlX3RpbWVyX2N0bCgyKTsKQEAgLTEy
Nyw3ICsxMDQsNyBAQCB2b2lkIGluaXRfdGltZSh2b2lkKQogewogICAgIHByaW50aygiSW5pdGlh
bGlzaW5nIHRpbWVyIGludGVyZmFjZVxuIik7CiAKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygi
bXJjIHAxNSwgMCwgJTAsIGMxNCwgYzAsIDAiOiI9ciIoY291bnRlcl9mcmVxKSk7CisgICAgY291
bnRlcl9mcmVxID0gcmVhZF9mcmVxdWVuY3koKTsKICAgICBjbnR2Y3RfYXRfaW5pdCA9IHJlYWRf
dmlydHVhbF9jb3VudCgpOwogICAgIHByaW50aygiVmlydHVhbCBDb3VudCByZWdpc3RlciBpcyAl
IlBSSVg2NCIsIGZyZXEgPSAlZCBIelxuIiwKIAkgICAgY250dmN0X2F0X2luaXQsIGNvdW50ZXJf
ZnJlcSk7CmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcm02NC90aW1lLmggYi9pbmNsdWRlL2Fy
bS9hcm02NC90aW1lLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2IzMDlh
ZgotLS0gL2Rldi9udWxsCisrKyBiL2luY2x1ZGUvYXJtL2FybTY0L3RpbWUuaApAQCAtMCwwICsx
LDM0IEBACisjaWZuZGVmIF9fQVJNNjRfVElNRV9ICisjZGVmaW5lIF9fQVJNNjRfVElNRV9ICisK
K3N0YXRpYyBpbmxpbmUgdWludDY0X3QgcmVhZF92aXJ0dWFsX2NvdW50KHZvaWQpCit7CisgICAg
dWludDY0X3QgYzsKKworICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJtcnMgJTAsIGNudHZjdF9l
bDAiOiI9ciIoYykpOworICAgIHJldHVybiBjOworfQorCisvKiBTZXQgdGhlIHRpbWVyIGFuZCBt
YXNrLiAqLworc3RhdGljIGlubGluZSB2b2lkIHdyaXRlX3RpbWVyX2N0bCh1aW50MzJfdCB2YWx1
ZSkKK3sKKyAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXNyIGNudHZfY3RsX2VsMCwgJTAiIDo6
ICJyIiAodmFsdWUpKTsKK30KKworc3RhdGljIGlubGluZSB2b2lkIHNldF92dGltZXJfY29tcGFy
ZSh1aW50NjRfdCB2YWx1ZSkKK3sKKyAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXNyIGNudHZf
Y3ZhbF9lbDAsICUwIiA6IDogInIiICh2YWx1ZSkpOworCisgICAgLyogRW5hYmxlIHRpbWVyIGFu
ZCB1bm1hc2sgdGhlIG91dHB1dCBzaWduYWwgKi8KKyAgICB3cml0ZV90aW1lcl9jdGwoMSk7Cit9
CisKK3N0YXRpYyBpbmxpbmUgdWludDMyX3QgcmVhZF9mcmVxdWVuY3kodm9pZCkKK3sKKyAgICB1
aW50MzJfdCBjb3VudGVyX2ZyZXE7CisKKyAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXJzICUw
LCBjbnRmcnFfZWwwIjoiPXIiKGNvdW50ZXJfZnJlcSkpOworICAgIHJldHVybiBjb3VudGVyX2Zy
ZXE7Cit9CisKKyNlbmRpZgotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZl
bEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxt
YW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:41 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjp-0003TF-1r; Mon, 16 Apr 2018 06:35:41 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjo-0003So-2U
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:40 +0000
X-Inumbo-ID: 3e6024e2-4140-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::62d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 3e6024e2-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:42 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=JtRTtYzVY0dRAyODXOWw6ANniyVxVe+9FDkO1Du3jmQ=;
 b=BkpOMyndr2PtRMsxFmGDtr7ibP4FF2VzbgG3hU/y6XCtSAl2/jujtm37DbFpSQu0aA2T4mp2sqJ8M7xYNLnj4mpe3aTCv2VaR9OqN+LGkzZ2UxRP1O1ECnP3W8uouD95V7LH9efeJZH2mfLU3RcN7f9k9s4hc2wdspBPtUv+ldg=
Received: from HE1PR08CA0069.eurprd08.prod.outlook.com (2603:10a6:7:2a::40) by
 HE1PR0801MB1593.eurprd08.prod.outlook.com (2603:10a6:3:14::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Mon, 16
 Apr 2018 06:35:30 +0000
Received: from VE1EUR03FT042.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::200) by HE1PR08CA0069.outlook.office365.com
 (2603:10a6:7:2a::40) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:30 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT042.mail.protection.outlook.com (10.152.19.62) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:30 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:35:06 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:16 +0000
Message-ID: <1523860343-16382-37-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(39850400004)(376002)(346002)(39380400002)(2980300002)(438002)(199004)(189003)(4326008)(77096007)(26005)(476003)(486006)(186003)(336012)(2616005)(426003)(11346002)(446003)(104016004)(47776003)(126002)(16586007)(54906003)(2906002)(316002)(36756003)(305945005)(6666003)(39060400002)(106002)(5660300001)(8936002)(6916009)(51416003)(7696005)(2351001)(72206003)(76176011)(8676002)(86362001)(50466002)(59450400001)(26826003)(356003)(246002)(478600001)(48376002)(8666007)(50226002)(106466001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0801MB1593; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT042;
 1:eXRZ2kt9YsUTWyNMDJTTwXhzZ730tQvjJQu6tcapfOZeWQDGk+6aCtBKBRJ/YuABVKO3vVCxwEZO9+LwjmJgrvFwijLrpRwFLKMJ4rDgATl0H8BULggINvtVYMFx7Bp9
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0801MB1593; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1593;
 3:XiELeMuaB8M3YE/1PAaxEneZiAxFOgGlckPsOAtk1qC5iLtePFXIDforYEsIk9wvcBYT7cv3/SUBnSw4BZlboYZGH10D2oU5Coxv40X0/FX6rhpX3ykBiwdCU7dRlE8H8B5wMM+v8b/e51Br4optQxNlIvZdvFpu/yWbokz+88dafEx/yfpRUMTcyqoGJxY4FUHdX8/cKDJ3e0RHnUnpNxCEvRFWvTA5/7QWdK8AxZTpBbKpGJ2E+CDeZTcmViV8biqbihoRsqzzFhTNlcgZxfqcmpxPlqIhQ7dfjtkuCwsRRwKZwnIIB9TbJOHd/oisa6aOEWUjPqidm8rCPCUoYI79ndHlhCwr6PRQPx2MzfU=;
 25:y39WEe1PqdFd8ZtOx4n0Meu+MXTBRfVpvsDk52hX8SV4Vq7nMt4Gm5vNIH0PpWjhOjXnh2doggmtrNBD2sIRsHH3wKNzi1VqIJkmPU5mLpv7KnQRXrbXbbL4WKz01Chb/rVooWrslk5wkJ3mjPwcvlg3ftudsNETMDCt4e3tBue4pnp9dSkdF+8YD2/OrjRRRTn07csM875UUlnPHfxOUDKI9YJU0TyQfAXm9MMVPBpt+6dvGWXKE/1QvbxnPejwmpyQEMV4B3tIr45JDkjEKE899tVeR1FbL8f1lLtfO6TBqvkoPI9Ay5H66jdf3++ZO5lp6ICnnMM4o1i3uY8Ibg==
X-MS-TrafficTypeDiagnostic: HE1PR0801MB1593:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1593;
 31:GOIDR54znHn4Uyb0L/4zacLS9rUzmp6nI52+zJ/pFXuirENjMAuRO/hgG2HW4dmQyPcxUADXdLS5h/NsgOHP8AgCi9TCIMkwsLKfxVNu+Ku8W0MsWhjAoKAFy1ARyY6Bc7q4KJ2mf3DrLknnuILHn2DQLx9V/y2nOzlFzO3FoNGW4APgmqyyi267KtFHaFHhFr/eac5TG8iggx1Y0TlhM1ge58k27RGhUTY/4PnrsZk=;
 20:egkzDoDqr+EEWO9TTpRY0ZWbat2tSTuJZHpaM4FbeW+naMedL/VaT0DdXmCRQycdEWnWlgs5xxwnlMJGkDAkg6jur6GVSj/uZ31U3cOJtP3o8JjL6wGf2h63y6kBck2H4juHzgM3GUkefRrY67CD5htppYtYs9HirdPIg+xtJN6o6x62gGR4OWetDDcjRM6lRpHte928x2FMt1KJs5Hz0wBUxIm9aywTU29B3yPaJmlPEPzQofPOL+GcfCRi+R5+;
 4:/Y++mEqC3YSzzFauJHY2IsLx8dclYiqWIcekjZHUzUnRju/LkNlBpMutELf2KyW9dLeJWOWVX6mCkEW7ODdHKzyNfYA/ZLl1QI5JYevoD9XO3XpOY5dVtWqCdXpigmiX4bmFtN5geFoyu8MbQp9P/Vvxej/1i14nYyJFtYGFXLYFHfXK2vX7vC0ylV30r5rK98bptjZCAMcBqrQ4l5rs/VC+NnEyPXp3F82t5v7PytPWHUe8aND5TK15qxH+nEGt3EW0Hhle4rh3e9igfZh8vQZ7tGxml/tJtt/J8zJ1CG1Q30ziKn526iKmuINmDKps
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0801MB1593440B831849746127475684B00@HE1PR0801MB1593.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(3231232)(944501327)(52105095)(93006095)(93004095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:HE1PR0801MB1593; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0801MB1593; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0801MB1593;
 23:bdet4ATqXwrfWpi2/hP9ef8sfMvw+mO2SvT0Km7?=
 =?us-ascii?Q?aaKWc03s4NY6rAIv9kxbjHT2Br0af4+gvxP2bN/7Txxb6FZHW8uwfupv2FVq?=
 =?us-ascii?Q?kSltdfRe7/QstpEOvosp7WeW3dVmYrR+92FvsEnvSYDzaQ4zWL6z91h+WwE8?=
 =?us-ascii?Q?3TXkP+2vd+YqPv6rRbOqpLaNMYAEGXyCF5n3H0gAIRMqo9FlnMG7co7+GpIZ?=
 =?us-ascii?Q?Hjx+uDhXcwWXu9PRTbfxYC9poXkQ9lPoed4FO6uzuGXVOu3ISkUb4qz39Huy?=
 =?us-ascii?Q?UfyPkdq8hZVwfeWSo6WquKic6av3y0y1ckm4hiqEoeBsUfwVMKMs9JghyKJ6?=
 =?us-ascii?Q?4KSnLRwa+KRQ9Ainzt/ncaOo69nX5Mohzrvb6aXGrWpTDCSPDeqgLo+3Ijfp?=
 =?us-ascii?Q?ibYni8mb50A13DUGg/HN8aidoU+snvR6UtfOaSYx94Sl/TAluOnePABpiEOK?=
 =?us-ascii?Q?u99ryrClNtTbFOIh5GrbN8EGMZ5TK4MYex3byTaQNQC+zWdFYGhDMCoLnV+T?=
 =?us-ascii?Q?G8Lua19Q1baY0Dy2dWJoOOltaHovW4NGHBook6hrOs4O3MwGpDIhfIyIh2Da?=
 =?us-ascii?Q?XBkvSvWN4xUsFEg71uJnTYgKh9wrmgGa0OzWMnUSNQw1dcSmGTHYe5rJMV+W?=
 =?us-ascii?Q?qptekuXe73HJKNj5+tP/41tdn7ol5E6Fg7jPaXlIl/2pQq34gHKVgKk/xnAU?=
 =?us-ascii?Q?GOx0FsER06pMTFs4anlYxKQrpjGnDRaxRR5CRWCG5FfAqn+6BTDmUr3nFMMY?=
 =?us-ascii?Q?rtK4m+BC0Er8RJJyuytn6lQljaW2kTBl15nbrIH1lvNQRQSFleFt1n7HMHMp?=
 =?us-ascii?Q?nAEWo4BSwsvJlb5GeSDTY+DdjmNIZq5TVY0hglNgC/2E9v/vcwezfR4u7F8G?=
 =?us-ascii?Q?ewzuWlJMr08Yx7iBHs54h84sXESSB9Ay/f+Hx2Y4kYVJhMKqyljlUxym1LuO?=
 =?us-ascii?Q?vOo/MB2RFHr1klVsXUEvBZu1oH14/6QfcTlzTpqlVoFwD9ekpZk1XMIffzdl?=
 =?us-ascii?Q?zbe4UkPgBxDs+G8SskwqeLChpHHcPsKqN9jWcJdEwrEDnc61RQK6Qb1zKJFs?=
 =?us-ascii?Q?P3/XqelmKCQcTSpsmCLXeY4G7JwTzXIzLy+WU54sMATGMCAWoKb23/MEdYg4?=
 =?us-ascii?Q?i85X1WAG+Eb7JyWj++eCwF8WMJG+hZa9s9Zoi/20zidof/73uzGDiFQ=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: 0hDEXJxW9g0JLidiOdWC/Vqxc2pr1dNoXDs5z2wYeR+4CGxY4vojJ5RsHn7YC4HuRWAVDN0AE9qQIUanHOS9xSKg9vtmiFixZw133pKOOFd+W98AqMF3AeCtgGYgi2AKaz0lyiCogaOjbpY+8HrbKIYtfU5LtAiF/LP9Pzexk85tmePLqGe/vY3CnkDlFl+t8yZ91fTJNpCZOskneox86ylFHoSvleRfsyv647lR6aCeh2o5ttvqsvld31fUWE8+k3KQmDSvwKbinWeNDSkPwTVzFWW0YtWDhtvFatTuk61u3ncPI2wUjdAVUW9E7P10lwd2qMRlrQTF6c/eaAAg6CRePX4T3RAtm1L4X/Nxx2W8e6PuPXOupUT8Gig/IU0F7ug+ovocCUsrLLh2xn0hqXXPIvD3ZK2pyxQfs6I2VqM=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1593;
 6:UES4CotGEhHKd4lBCUzH6bgJofe7Pjsxzr/K1J3Dw57qvG/YC9Nhk/1zDto3HbnHwZguvxXX/QmPE+fiMg2G/hzbZH+gSS+2rIT951pSuNYiP8QY15xSglR5uHgfTzfcTKsbpAUn+pjQwFSKfeRkqVoSrUeGXSNfC1YCWZUAW8uEysOo2/E20yfRZhjJGw/qSceA+GKmELtSRtGAEmALGkPLjPH8rJQFkypc/aKxuq6VuVUNCJtF5lfs9/sVe+pfTQXn7v9vswsBYnHGCXuaiP0N5pQj+OoMXf9/6v+aNZZsLfs+VSXHYZo98s1BVS0S6Sj6FO2es2pJXmimogWX40A+20ACn2shpojG76J/TeRfK0SxZWr9wnMvCY7dlo/9wc1sB9EjrkRW+zFUdUwRjJkFZCuPTTTpZRoR9k3S5DXSj5+t+9CLgvnCfww9yIA6NlcmASbzPOPW9gRgp6gN+48c1WWpyrbCK4JlpOOGWgjNquKEer6OBFhozqAL5bmy;
 5:fXpWySARYGgk3PptXwiW3Ort6AUZi5c/DlQpT8wNJdvpUdF02/WBfuYfwpCCDLkCUwGAXkla9qY2W62m0z+6YPi3S88OrtMiPWCM6Yp3ZR1juYANGdtEDhSfRECCsHDom6eZ+VswlwsKhrqmvEA8mhlBDas8gLuYovlb3vLVfgM=;
 24:JMDJmsFhx5NjQzF5VLkTfKDGcJnbZ475mi33J0gDutgXcEmIvRUE+aVvEv6vlLUhXtuLHtUg6sG5bAkqR3Djie9uUK2vH+tkMlHCt9jVB/Y=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1593;
 7:CFBN3noXcEjKPRqJDPDf2t13ZYAaSdqKShWfC+UGqb7YuSUIDfONBNmG9ujJ1euyo0Oqt0okC5HwUHvZ+aKLlMy0sPbVqDVoEplwwn/N8CEePnJ56Dd9iL9IOYhJxXkX4vbYd/gcILpFuaAL6RH0eOHFtFEv2F9CYQI/l3Nd2CYjsR0hAhzDYaIlw9R6QMK/qqVkgQNo0rA7vt3OnKdRzKLHXGgWMvBndxjfqIJSFOCoeuXCXUQsCUiz/Z8xtJwy
X-MS-Office365-Filtering-Correlation-Id: 7e63357b-3691-4ee7-5395-08d5a3643fbe
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:30.1475 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7e63357b-3691-4ee7-5395-08d5a3643fbe
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1593
Subject: [Minios-devel] [PATCH v3 36/43] arm64: add the link file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBhZGRzIHRoZSBsaW5rIGZpbGUgZm9yIGFybTY0LgoKVGhpcyBwYXRjaCBpcyBi
YXNlZCBvbiBDaGVuIEJhb3ppJ3MgcGF0Y2g6CiAgICJhcm02NDogQWRkIHRoZSBzdXBwb3J0IGZv
ciBhcm02NCIKClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5j
b20+Ci0tLQogTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTQgKysrKysrLQog
YXJjaC9hcm0vYXJtNjQvbWluaW9zLWFybTY0Lmxkcy5TIHwgODEgKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDkzIGluc2VydGlvbnMoKyks
IDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtNjQvbWluaW9z
LWFybTY0Lmxkcy5TCgpkaWZmIC0tZ2l0IGEvTWFrZWZpbGUgYi9NYWtlZmlsZQppbmRleCAzYWQy
NTIyLi4xZTU2ODZhIDEwMDY0NAotLS0gYS9NYWtlZmlsZQorKysgYi9NYWtlZmlsZQpAQCAtMjQs
NyArMjQsNyBAQCBpbmNsdWRlIG1pbmlvcy5tawogTERMSUJTIDo9IAogQVBQX0xETElCUyA6PSAK
IExEQVJDSExJQiA6PSAtTCQoT0JKX0RJUikvJChUQVJHRVRfQVJDSF9ESVIpIC1sJChBUkNIX0xJ
Ql9OQU1FKQotTERGTEFHU19GSU5BTCA6PSAtVCAkKE9CSl9ESVIpLyQoVEFSR0VUX0FSQ0hfRElS
KS9taW5pb3MtJChNSU5JT1NfVEFSR0VUX0FSQ0gpLmxkcyAkKEFSQ0hfTERGTEFHU19GSU5BTCkK
K0xERkxBR1NfRklOQUwgOj0gLVQgJChBUkNIX0xERkxBR1NfRklOQUwpCiAKICMgUHJlZml4IGZv
ciBnbG9iYWwgQVBJIG5hbWVzLiBBbGwgb3RoZXIgc3ltYm9scyBhcmUgbG9jYWxpc2VkIGJlZm9y
ZQogIyBsaW5raW5nIHdpdGggRVhUUkFfT0JKUy4KQEAgLTE2MSwxMSArMTYxLDIxIEBAIGlmbmVx
ICgkKEFQUF9PQkpTKSwpCiBBUFBfTz0kKE9CSl9ESVIpLyQoVEFSR0VUKV9hcHAubyAKIGVuZGlm
CiAKK2lmZXEgKCQoTUlOSU9TX1RBUkdFVF9BUkNIKSxhcm02NCkKK0xJTktfRklMRT0kKE9CSl9E
SVIpLyQoVEFSR0VUX0FSQ0hfRElSKS9hcm02NC9taW5pb3MtJChNSU5JT1NfVEFSR0VUX0FSQ0gp
LmxkcworZWxzZQorTElOS19GSUxFPSQoT0JKX0RJUikvJChUQVJHRVRfQVJDSF9ESVIpL21pbmlv
cy0kKE1JTklPU19UQVJHRVRfQVJDSCkubGRzCitlbmRpZgorTERGTEFHU19GSU5BTCArPSAkKExJ
TktfRklMRSkKKwogIyBTcGVjaWFsIHJ1bGUgZm9yIHg4NiBmb3Igbm93CiAkKE9CSl9ESVIpL2Fy
Y2gveDg2L21pbmlvcy14ODYlLmxkczogIGFyY2gveDg2L21pbmlvcy14ODYubGRzLlMKIAkkKENQ
UCkgJChBU0ZMQUdTKSAtUCAkPCAtbyAkQAogCi0kKE9CSl9ESVIpLyQoVEFSR0VUKTogJChPQkpT
KSAkKEFQUF9PKSBhcmNoX2xpYiAkKE9CSl9ESVIpLyQoVEFSR0VUX0FSQ0hfRElSKS9taW5pb3Mt
JChNSU5JT1NfVEFSR0VUX0FSQ0gpLmxkcworJChPQkpfRElSKS9hcmNoL2FybS9hcm02NC9taW5p
b3MtJChNSU5JT1NfVEFSR0VUX0FSQ0gpLmxkczogIGFyY2gvYXJtL2FybTY0L21pbmlvcy0kKE1J
TklPU19UQVJHRVRfQVJDSCkubGRzLlMKKwkkKENQUCkgJChBU0ZMQUdTKSAtSSAkKE9CSl9ESVIp
L2luY2x1ZGUvYXJtLyAtUCAkPCAtbyAkQAorCiskKE9CSl9ESVIpLyQoVEFSR0VUKTogJChPQkpT
KSAkKEFQUF9PKSBhcmNoX2xpYiAkKExJTktfRklMRSkKIAkkKExEKSAtciAkKExERkxBR1MpICQo
SEVBRF9PQkopICQoQVBQX08pICQoT0JKUykgJChMREFSQ0hMSUIpICQoTERMSUJTKSAtbyAkQC5v
CiAJJChPQkpDT1BZKSAtdyAtRyAkKEdMT0JBTF9QUkVGSVgpKiAtRyBfc3RhcnQgJEAubyAkQC5v
CiAJJChMRCkgJChMREZMQUdTKSAkKExERkxBR1NfRklOQUwpICRALm8gJChFWFRSQV9PQkpTKSAt
byAkQApkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtNjQvbWluaW9zLWFybTY0Lmxkcy5TIGIvYXJj
aC9hcm0vYXJtNjQvbWluaW9zLWFybTY0Lmxkcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLmJjYjRjYjUKLS0tIC9kZXYvbnVsbAorKysgYi9hcmNoL2FybS9hcm02NC9taW5p
b3MtYXJtNjQubGRzLlMKQEAgLTAsMCArMSw4MSBAQAorI2luY2x1ZGUgPHBhZ2VfZGVmLmg+Cisj
aW5jbHVkZSA8YXJtNjQvcGFnZXRhYmxlLmg+CisKK09VVFBVVF9GT1JNQVQoImVsZjY0LWxpdHRs
ZWFhcmNoNjQiKQorT1VUUFVUX0FSQ0goYWFyY2g2NCkKK0VOVFJZKF9zdGFydCkKK1NFQ1RJT05T
Cit7CisgIC8qCisgICAqIFBsZWFzZSBzZWUgc2VjdGlvbiBENC4yLjYsIHRoZSBmb2xsb3dpbmcg
c3RhcnQgYWRkcmVzcyBpcyBlcXVhbCB0bworICAgKiAgICAgICAgICAyIF4gNjQgLSAyIF4gKDY0
IC0gVDFTWikKKyAgICovCisgIC4gPSAoMSA8PCBWQV9CSVRTKSAqICgoMSA8PCAoNjQgLSBWQV9C
SVRTKSkgLSAxKTsKKyAgX3RleHQgPSAuOwkJCS8qIFRleHQgYW5kIHJlYWQtb25seSBkYXRhICov
CisgIC50ZXh0IDogeworCSooLnRleHQpCisJKiguZ251Lndhcm5pbmcpCisgIH0KKworICBfZXRl
eHQgPSAuOwkJCS8qIEVuZCBvZiB0ZXh0IHNlY3Rpb24gKi8KKworICAucm9kYXRhIDogeyAqKC5y
b2RhdGEpICooLnJvZGF0YS4qKSB9CisgIC4gPSBBTElHTihQQUdFX1NJWkUpOworICBfZXJvZGF0
YSA9IC47CisKKyAgLyogbmV3bGliIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9ucyAqLworICAuID0g
QUxJR04oOCk7CisgIFBST1ZJREUgKF9fcHJlaW5pdF9hcnJheV9zdGFydCA9IC4pOworICAucHJl
aW5pdF9hcnJheSAgICAgOiB7ICooLnByZWluaXRfYXJyYXkpIH0KKyAgUFJPVklERSAoX19wcmVp
bml0X2FycmF5X2VuZCA9IC4pOworICBQUk9WSURFIChfX2luaXRfYXJyYXlfc3RhcnQgPSAuKTsK
KyAgLmluaXRfYXJyYXkgICAgIDogeyAqKC5pbml0X2FycmF5KSB9CisgIFBST1ZJREUgKF9faW5p
dF9hcnJheV9lbmQgPSAuKTsKKyAgUFJPVklERSAoX19maW5pX2FycmF5X3N0YXJ0ID0gLik7Cisg
IC5maW5pX2FycmF5ICAgICA6IHsgKiguZmluaV9hcnJheSkgfQorICBQUk9WSURFIChfX2Zpbmlf
YXJyYXlfZW5kID0gLik7CisKKyAgLmN0b3JzIDogeworICAgICAgICBfX0NUT1JfTElTVF9fID0g
LjsKKyAgICAgICAgKiguY3RvcnMpCisJQ09OU1RSVUNUT1JTCisgICAgICAgIFFVQUQoMCkKKyAg
ICAgICAgX19DVE9SX0VORF9fID0gLjsKKyAgfQorCisgIC5kdG9ycyA6IHsKKyAgICAgICAgX19E
VE9SX0xJU1RfXyA9IC47CisgICAgICAgICooLmR0b3JzKQorICAgICAgICBRVUFEKDApCisgICAg
ICAgIF9fRFRPUl9FTkRfXyA9IC47CisgIH0KKworICAuZGF0YSA6IHsJCQkvKiBEYXRhICovCisJ
KiguZGF0YSkKKyAgfQorCisgIF9lZGF0YSA9IC47CQkJLyogRW5kIG9mIGRhdGEgc2VjdGlvbiAq
LworCisgIF9fYnNzX3N0YXJ0ID0gLjsJCS8qIEJTUyAqLworICAuYnNzIDogeworCSooLmJzcykK
KyAgICAgICAgKiguYXBwLmJzcykKKyAgfQorICBfZW5kID0gLiA7CisKKyAgLyogU2VjdGlvbnMg
dG8gYmUgZGlzY2FyZGVkICovCisgIC9ESVNDQVJELyA6IHsKKwkqKC50ZXh0LmV4aXQpCisJKigu
ZGF0YS5leGl0KQorCSooLmV4aXRjYWxsLmV4aXQpCisgIH0KKworICAvKiBTdGFicyBkZWJ1Z2dp
bmcgc2VjdGlvbnMuICAqLworICAuc3RhYiAwIDogeyAqKC5zdGFiKSB9CisgIC5zdGFic3RyIDAg
OiB7ICooLnN0YWJzdHIpIH0KKyAgLnN0YWIuZXhjbCAwIDogeyAqKC5zdGFiLmV4Y2wpIH0KKyAg
LnN0YWIuZXhjbHN0ciAwIDogeyAqKC5zdGFiLmV4Y2xzdHIpIH0KKyAgLnN0YWIuaW5kZXggMCA6
IHsgKiguc3RhYi5pbmRleCkgfQorICAuc3RhYi5pbmRleHN0ciAwIDogeyAqKC5zdGFiLmluZGV4
c3RyKSB9CisgIC5jb21tZW50IDAgOiB7ICooLmNvbW1lbnQpIH0KK30KLS0gCjIuNy40CgoKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVs
IG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s
aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:43 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjr-0003Tx-4o; Mon, 16 Apr 2018 06:35:43 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjp-0003Th-WA
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:42 +0000
X-Inumbo-ID: 4055b975-4140-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::60b])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 4055b975-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:45 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=ySWOR9fiDKV+iku6JSjG5m4pKk8MOB6jNWKwoGVkV5Q=;
 b=rgz/jx473VNwVcXOuw4tCLAb+t5xqmwLBywz1m1Gp7cfhTqJovbfSOZDz2hVfotJH+U+xE9AI0bTN97U+n4vNpLVx2S7whJOgrY5LZZoPWUgt2lJgaHbmUjZpeX2S/VVASn3i+cCLCBKx1S6l5FKSiqwn1g1TbLzdfPHS4PRF0k=
Received: from HE1PR08CA0065.eurprd08.prod.outlook.com (2603:10a6:7:2a::36) by
 HE1PR0802MB2425.eurprd08.prod.outlook.com (2603:10a6:3:dd::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:35:33 +0000
Received: from VE1EUR03FT042.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::208) by HE1PR08CA0065.outlook.office365.com
 (2603:10a6:7:2a::36) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:33 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT042.mail.protection.outlook.com (10.152.19.62) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:32 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:35:10 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:17 +0000
Message-ID: <1523860343-16382-38-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(396003)(346002)(376002)(39850400004)(2980300002)(438002)(189003)(199004)(356003)(336012)(2616005)(446003)(305945005)(11346002)(426003)(26826003)(36756003)(72206003)(478600001)(5660300001)(7696005)(2906002)(51416003)(50226002)(246002)(186003)(86362001)(486006)(476003)(126002)(77096007)(26005)(6916009)(76176011)(8936002)(2351001)(47776003)(8676002)(104016004)(106002)(16586007)(316002)(54906003)(4326008)(39060400002)(8666007)(106466001)(48376002)(50466002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2425; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT042;
 1:ez/60Dpmqi8FmQniaTva4hgd0bDgqtl2rns6KMcp3mIOEBzE4XoFf3ZlLt/o/o/XeOI0G4UP1XQO1icwcGJlBgCoinC4nexbEOSSnDjQgpMqW9BYNih8C+RSXODhDTLo
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2425; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 3:nSJrkMFtUPst8BzGdA32wUYft67riwc5orfTm4cuxFegt8uwdjBdch9PnPb8A4XPXHEL/qdvSyDChgtCPqfI217wp9SMhMmDAtolzvGRROOEHAv4I0zYvf0XlFkb9iVWE958Ss84YdhF2VnRFAVc8gZKYxVFEFWxlTC0+m+gT7RSRPTStXzHp/rB1RDejYrJgOxAaQoFf/EokBxqk0jVLNmRF2cUCmmImGU+m9u6K3Np6S/O1Y0ue1G4rrjI37fGG1Jrvr1dNTxfA9mUjytv1LhhZvdFWPddp6lRxcRDRqzhgnYYCQIryjgc55FvJ7ck4nNhaz4Gsts6KfupKDzsT3MBarXg26IN9Zgqfn76JFU=;
 25:+AQoxZ8eAVXMHQBD7Sc54/0ayohJzfXNIcng01LAXBaQMQ+9ieDuaOOZsWRGGUAnSJoBnkn8bLiyMdDnVuKZruO4tqBRA0UFQXMYbEMHW4F8RDFUhOyIBDEqruIZZ4aAI8iJYjKf8dfaNoLMAQfU1NeKznF926px19lFu/0Sla1ehkKeTtQACh8xlVV2vP9/V3XvA76SwmmkVg683tcXxH1N6wAf58ubhgXt0zbQDcWiJdA8RfSGblzFWV0fxDe0JtIaeqFmCcM1GvFNmCPHell0Eh9icVcEaC+9t48MyJMo5PbjIguNnXcFD0z2gHM9GmpBmo3vbifcFw5jbWqlFg==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2425:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 31:B1kHe26TaScu6KdyeLUIfcDBB4Qzd1m2C9UdQb7xDbxQhIhlEof2gCro+6p9ibzLw3s00OfIaWahsnHE0ej3l4fRVY/Ne/4Yus77a6crGP8Tlb5BaGe2yW/r5da9JYgs+qqcCnLEIZCzK3lMe/v5zgqgYLP0xicoHgQDYtoZJN5FFbCVAKTVP8qzfqhg179XvL0N1kyZFsLZkMpXJ21os9ng26icuyaYu/qV9oebCGs=;
 20:vQVLVV2S1nNHJTQthDmb1bIoCWphKDLWcd65pJTj7naiEir2gPC5yh1j0Wc5lmXi97eY5S4dBHt1PkeOeqQ9vJN6yhbqtWFEfSiK0qsFN64ahvrMvbZAR2+gt+QX+zuQGF32+19adi1qRWNoUZ8JKMc1zuPcHVyguPUi7xvQcC6+sFVgMYmEzofJymusdyIJm9W3oAviIBayP4giz1I0mcBlG09M+lwkfRBA7P8HGQcyrDzHLFu7DDwVSmGI9wpL;
 4:nlaTD/MuizjHF1PPgP6/ftSnuaXHrw4/LNCowEtU8GawgD3KpLkzlcaeFieZX7NLb65xkN+YAU9O9mPJPAwYd8w5nBnyzOYoS94TOYi3ADWDlrq5ZgE1AAAT0EfLj7mWeJwExC3lvyRdDmqiHgfOmSstUsTWZ65Q2R9pNZ6WprV1cOPbajzmE4CJfi6SSOApTZjLY6DvJQnjIWJdPKLJmLZqi+VV48PCilE93kpWtRkonGWEe5v/HSMfB9QWe2zcDz0AYrBazt56aTBqT+BIMSXwXw7yyz3P1UQGQ98p48/84DGD9UFUENYMk1wz/Ojm
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB24258648D9442BDE214FA4ED84B00@HE1PR0802MB2425.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(93006095)(93004095)(10201501046)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2425; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2425; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2425;
 23:gBviIzCTYu9/oEQssLGVmU3OPmfkFmrFlxNDNJc?=
 =?us-ascii?Q?+CDXj1vgCc2CKBt9dofwZDrN/m+vjd+8gAYl8N2XK7K7fzAK68vOC/EgLolW?=
 =?us-ascii?Q?fNL7iWJ5F3AnADED6cy7H/4AKUaLkW+Dvq6MMQWt9EYJ71wAdl7f2Nrt7ErY?=
 =?us-ascii?Q?NJoteTDvvqDvnjKASEfGxDjkI+MfwFrWF2hbT6Xx2ei2x1KkAy6cPJdHnP9k?=
 =?us-ascii?Q?GBOzw3uecw0DAzSWR1X6HUPRrnyPyV3GxIYoijMBxzzZL5aeJWRYqfF9pycf?=
 =?us-ascii?Q?Msc+NaB6mHUG1/2GwhVwZznXZexV7UAYvYMIgZN/+V047T2C1S9no8QyQyp+?=
 =?us-ascii?Q?oLOmTKInL5XMx8gMfsxH5N0I8TZwO/nAflNZvOz6uVNdERBvljDcdKKKU+UF?=
 =?us-ascii?Q?4DgjWNobSbBu3W7QimR8HJBAiJxCKN0tyP7h4uUAfbzBUWa0IBroqEczz81y?=
 =?us-ascii?Q?vAG2PUIiPvoOGGKZH7w16X/vKfd0nTYzIAaNIVysLxbiQeYA04Od3wDM6eBC?=
 =?us-ascii?Q?RsWuOFSa56aqsUEZSqZF5ImXFVZWOIX5R1OKWo+BDyf2RKqPXU9nPvBtEozw?=
 =?us-ascii?Q?a6rP/RrhSGIUdHqSSoPQfbscewTpcpoJjP0uNTR21v3SYWea1gBqz3xsNP+M?=
 =?us-ascii?Q?GMWzJv4blBj77FfOaoJUiCM0uRXoS21LDBtsKIEOu/GhnWfwQRAcaGgnYIRb?=
 =?us-ascii?Q?zuumWi1zYi84V/2LsUHhLPODjarpgRbwgqkAGulgr3eNG/6723lmkgkcNpN0?=
 =?us-ascii?Q?2BGfzJjJv9TR4fOYKYSSS+/UMm7XFXjqCevruggt6EhXEDxm3xXfCcwC9oWp?=
 =?us-ascii?Q?VwNxKYZntQy1hgOwU1gAi3CFsuSqXxmg0eaGwAGqZAPSabh4nkQ4jxg/vp8D?=
 =?us-ascii?Q?OTzm3qglNh8lgXOidGCI77VhU6azGlS2hL8c1WDjlLtx6kAJKB9jHpm7lN/w?=
 =?us-ascii?Q?hV/YyL7FjbES2VafnhG6h83lXJ67bjfzawJ7JAOJTo2gG/1//UALLX0dCgxu?=
 =?us-ascii?Q?tDlgB1sEyRK/LHtCg5uSljQpFAbF05syaUX9TLTktc8Ihl4LVqzI0AAgSVYe?=
 =?us-ascii?Q?TWlmAuTOR72y7RLXbyu+KPAN6A3UnxzTAKHOedt5qpTjW80tTABAd2rnQd00?=
 =?us-ascii?Q?0tmDrWRPHnIE=3D?=
X-Microsoft-Antispam-Message-Info: hJBegYor/v9POvAooyOyuElL/8T9Q1dmV9mvYMVCdcLza5xPVwObQE1JcOgLX4H/WEPBuVZdXZM3Haorbp90CJXyPRaa1DCJYTvp1pQ9l20dgeEVzNXozEwUJa+xd/7Z8z5Kf/NDEyZ1UJod/OqzhT8x5ekBHbv3nf+Gta/fo9v88oGjkUKedeOEXhA+wvXcnHenQj0nBd462YVxLNJJMK8IHNOqOXovYboxlO0E2/ASVMELX+Jk2id+pG8Qx5WnwjeTOgZMsHmudfga46cv5WXjlclmdRk0ln1mUWQ3amShBnF7uHpMSeK0IEJ+Uvurn+Xm/eQIooamH6NwfpAhIp7q860MbmJZCoWo9ChXLlSVM02eTV0Y9oCFU6l7bQTNmey1IVxErZEQ6ApLpW0V/CbV+c4fCJ5sPPg2qVUK6EI=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 6:4NPUzl8YFu0lvs6mRiuettMCT+6e4fd3U0xl4nRWqkfgQq51T4m1IdAQu+2aZN+zWueLmEAIZId3kNqGsSLFZqJvrs9l6pWu7IbYglIMoZVCvicqKrs2S2rAVcXmIIeSTFAdnvSmTDfzNHt9mL9Gd8DDMcdX6KUgNiWgI7YVvaWyrIWlmHw+uIE/zIVLmRk51Z/XC21jqyOuZSeJrMp7DS7QjtaNFjwoCYRbuVnNGVWTIhAeAtsc4lx8YTpU7xgETrQ7sYdp1CeVKYpZ76zUjzVZISf0mjFTSWUWiCjieK4Xh9zy47hpTH5/I5xM2ke9xSlWFVQ6Y67vVU+ZK/NQwue7dCxc5Y3LLixERZ4JtMoJdIktG5pWMmra+ppSlRK/yoSKJ/m0fF0Jc9a8UxvkE9OGf8qIATgAXPVqYibngDRdw0OGI3dQaek0MGjAbt8rGfMKzgkJ6tl01H96WbykT36RblxzgSXRcrYDyGwOHwGp3RDiCma8l2TPfdKc/lRQ;
 5:22vOm3UQVH8HiVQ5uI9K8HxzADy4OwOs7B7GJrphi8Q90dPFkR5Q9iIR2jPbV+H9yShGGMvBELU2IwuXQVVFiEm7jylDwB7D77JFOpAKR9kBVTqbb4EOm7HE5DB2aTUgnGxUE8ULtndyFmTlzpRffp1G7daJhC9sjiAOe1VZBYE=;
 24:dj33SzqfdmNmFv9QhRZpopVWnRbW8vLFGpOkuWjQLy+8L36sQic0FlzB7E8VaWh76eeWmcbj58tFkDNu/UyJC6KyEl1d1H23Uv5SOalIvTo=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 7:mNSAbJHSqRLi0lYY9MNYMHrXXI5nj1KQTRIE+Y4hiXyWncu9KGD/Qt8v0BVFRPNll9LTmNV8UOc8xW48VH2D6u5QO32NqN5IEujuJasZ/mEsOc9L3sPZte9xQZZRl4KWbziQhXW0xzIFS2T/HBYD7CY0SX653/WsUXWii4MK0sIrTmAIl3lrFg8HXHtLWEuxV09015L880xdTHCn2EjOTE6YjHBWQwYjMf7HmX5NsHp2XX//hp0Xah/xwRr7yJ3l
X-MS-Office365-Filtering-Correlation-Id: 625015b2-25ce-4f60-7ef6-08d5a364414c
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:32.7570 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 625015b2-25ce-4f60-7ef6-08d5a364414c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2425
Subject: [Minios-devel] [PATCH v3 37/43] arm64: add the makefile
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIHRoZSBtYWtlZmlsZSBmb3IgYXJtNjQgY29kZS4KClRoaXMgcGF0Y2ggcmVmZXJzIHRvIENo
ZW4gQmFvemkncyBwYXRjaDoKICAgICAiSW5pdGlhbCBjb2RlcyBmb3IgYXJtNjQiCgpTaWduZWQt
b2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgotLS0KIGFyY2gvYXJt
L01ha2VmaWxlIHwgMjkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGFyY2gvYXJtL2Fy
Y2gubWsgIHwgIDcgKysrKysrKwogbWluaW9zLm1rICAgICAgICAgfCAgNCArKysrCiAzIGZpbGVz
IGNoYW5nZWQsIDQwIGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9N
YWtlZmlsZQogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FyY2gubWsKCmRpZmYgLS1naXQg
YS9hcmNoL2FybS9NYWtlZmlsZSBiL2FyY2gvYXJtL01ha2VmaWxlCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmM0NjEzOGEKLS0tIC9kZXYvbnVsbAorKysgYi9hcmNoL2FybS9N
YWtlZmlsZQpAQCAtMCwwICsxLDI5IEBACisjCisjIEFSTSBhcmNoaXRlY3R1cmUgc3BlY2lmaWMg
bWFrZWZpbGVzLgorIworVE9QTEVWRUxfRElSID0gJChDVVJESVIpLy4uLy4uCitPQkpfRElSPSQo
Q1VSRElSKQorCitpbmNsdWRlIC4uLy4uL0NvbmZpZy5taworaW5jbHVkZSAuLi8uLi9taW5pb3Mu
bWsKKworc3JjLXkgKz0gc2V0dXAuYyBtbS5jIHNjaGVkLmMgZ2ljLmMgZXZlbnRzLmMgdGltZS5j
CitzcmMtJChDT05GSUdfQkFMTE9PTikgKz0gYmFsbG9vbi5jCisKK0FSQ0hfT0JKUyA6PSAkKHBh
dHN1YnN0ICUuYywkKE9CSl9ESVIpLyUubywkKHNyYy15KSkKKworaWZlcSAoJChNSU5JT1NfVEFS
R0VUX0FSQ0gpLGFybTY0KQorQVJDSF9PQkpTICs9ICQoT0JKX0RJUikvYXJtNjQvaHlwZXJjYWxs
czY0Lm8KK0FSQ0hfT0JKUyArPSAkKE9CSl9ESVIpL2FybTY0L3RyYXBzLm8KK0hFQURfQVJDSF9P
QkogPSBhcm02NC9hcm02NC5vCitlbmRpZgorCithbGw6ICQoT0JKX0RJUikvJChBUkNIX0xJQikK
KworIyAkKEhFQURfQVJDSF9PQkopIGlzIG9ubHkgYnVpbHQgaGVyZSwgbmVlZGVkIG9uIGxpbmtp
bmcKKyMgaW4gLi4vLi4vTWFrZWZpbGUuCiskKE9CSl9ESVIpLyQoQVJDSF9MSUIpOiAkKEFSQ0hf
T0JKUykgJChPQkpfRElSKS8kKEhFQURfQVJDSF9PQkopCisJJChBUikgcnYgJChPQkpfRElSKS8k
KEFSQ0hfTElCKSAkKEFSQ0hfT0JKUykKKworY2xlYW46CisJcm0gLWYgJChPQkpfRElSKS8kKEFS
Q0hfTElCKSAkKEFSQ0hfT0JKUykgJChPQkpfRElSKS8kKEhFQURfQVJDSF9PQkopCmRpZmYgLS1n
aXQgYS9hcmNoL2FybS9hcmNoLm1rIGIvYXJjaC9hcm0vYXJjaC5tawpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5hN2QwMGE2Ci0tLSAvZGV2L251bGwKKysrIGIvYXJjaC9hcm0v
YXJjaC5tawpAQCAtMCwwICsxLDcgQEAKK2lmZXEgKCQoTUlOSU9TX1RBUkdFVF9BUkNIKSxhcm02
NCkKK0FSQ0hfQ0ZMQUdTICA6PSAtbWdlbmVyYWwtcmVncy1vbmx5IC1mbm8tUElFCitBUkNIX0xE
RkxBR1MgOj0KK0FSQ0hfQVNGTEFHUyA6PQorRVhUUkFfSU5DICs9ICQoVEFSR0VUX0FSQ0hfRkFN
KS8kKE1JTklPU19UQVJHRVRfQVJDSCkKK0VYVFJBX1NSQyArPSBhcmNoLyQoRVhUUkFfSU5DKQor
ZW5kaWYKZGlmZiAtLWdpdCBhL21pbmlvcy5tayBiL21pbmlvcy5tawppbmRleCBlZjRkMmY5Li45
MTEyZTE0IDEwMDY0NAotLS0gYS9taW5pb3MubWsKKysrIGIvbWluaW9zLm1rCkBAIC02MSw3ICs2
MSwxMSBAQCBBUkNIX0xJQiA6PSBsaWIkKEFSQ0hfTElCX05BTUUpLmEKICMgVGhpcyBvYmplY3Qg
Y29udGFpbnMgdGhlIGVudHJ5cG9pbnQgZm9yIHN0YXJ0dXAgZnJvbSBYZW4uCiAjICQoSEVBRF9B
UkNIX09CSikgaGFzIHRvIGJlIGJ1aWx0IGluIHRoZSBhcmNoaXRlY3R1cmUgc3BlY2lmaWMgZGly
ZWN0b3J5LgogSEVBRF9BUkNIX09CSiA6PSAkKE1JTklPU19UQVJHRVRfQVJDSCkubworaWZlcSAo
JChNSU5JT1NfVEFSR0VUX0FSQ0gpLGFybTY0KQorSEVBRF9PQkogOj0gJChPQkpfRElSKS8kKFRB
UkdFVF9BUkNIX0RJUikvYXJtNjQvJChIRUFEX0FSQ0hfT0JKKQorZWxzZQogSEVBRF9PQkogOj0g
JChPQkpfRElSKS8kKFRBUkdFVF9BUkNIX0RJUikvJChIRUFEX0FSQ0hfT0JKKQorZW5kaWYKIAog
CiAkKE9CSl9ESVIpLyUubzogJS5jICQoSERSUykgTWFrZWZpbGUgJChFWFRSQV9ERVBTKQotLSAK
Mi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpN
aW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9y
ZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRl
dmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:44 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjs-0003UU-6M; Mon, 16 Apr 2018 06:35:44 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xjr-0003Tw-6e
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:43 +0000
X-Inumbo-ID: 40e85283-4140-11e8-9728-bc764e045a96
Received: from EUR02-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe05::61f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 40e85283-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:46 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=AcdN+C9hgyDRZaIwfLb+wilnWYCxJgPwsPtshlstkjQ=;
 b=hy4OvgEQ7mdbfvDE7dOcb5lnHHAo69QGePIIAIbPEe09+3BPMgsetLoS2NZad3f1Eip1ai2Wzh4QR5EKVl+2/S9QvHlIyiHyL/+Kaljun9lXgCoNBCK0+V8YPcHrYdDa2clxbL7/clG4vYoNFysMK7jZlBrb/IRxeoMGsmllhRA=
Received: from HE1PR08CA0054.eurprd08.prod.outlook.com (2603:10a6:7:2a::25) by
 HE1PR0802MB2427.eurprd08.prod.outlook.com (2603:10a6:3:df::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:35:34 +0000
Received: from VE1EUR03FT042.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::203) by HE1PR08CA0054.outlook.office365.com
 (2603:10a6:7:2a::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.11 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:34 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT042.mail.protection.outlook.com (10.152.19.62) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:33 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:35:14 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:18 +0000
Message-ID: <1523860343-16382-39-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(396003)(346002)(376002)(39850400004)(2980300002)(438002)(199004)(189003)(186003)(77096007)(26005)(50466002)(2616005)(246002)(26826003)(336012)(478600001)(426003)(446003)(11346002)(72206003)(51416003)(7696005)(316002)(106002)(76176011)(36756003)(356003)(39060400002)(2351001)(16586007)(54906003)(6346003)(86362001)(305945005)(5660300001)(2906002)(4326008)(8666007)(8936002)(486006)(476003)(126002)(8676002)(47776003)(50226002)(48376002)(106466001)(104016004)(6916009);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2427; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT042;
 1:eHW0dd/8Q4ED0rLm6+8jqxmfTEcE/33CP24rxzBEhV1iv+7iRxWyg6EZZxzfMdLPV2CBCCvmdgVHeNyWblb0Cj0DK48wHlSFKEP7VKD+8W1dywE6ocE4GETomkrome6K
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2427; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 3:lC4jDZraExeqssBUo21ENZNoQ58NzB6HTQyIRgVgU2rKmH7YmarAv9BevPRZAzxzlHIvQM3ng5mdzUjNunVmb/twum+w4ub9wxBp8c0X7at9Bg9iIBGTrp4vQpe15gV4emgINs11WwQ4QG604pjMkFCJun88fk6177sd4GIg9qddVOELGzU5ZT1gBmFYx39xuV71IWuEezQTMEKZziKUkdwj+LV6cBrnkosn3/BwD0ZmDnzvMpmWaNzF71M5HBB2VlPD9Dq30W9CfH06C9tA7ZkAjSWs9Z5KzEGnIbB5dc7F6hTgVa/dVkIfIYOW6Zj2DeChwqywttEtinuiTSAn/roCzWrQARVWNdR3PEpfTMQ=;
 25:wC2DIU0AXLCGpRQGee9ceRXO9BCXT4JlzNu/dH/opXW2IHrb5XS7h3qiAxoNPxiaWaCugeSHH1c4xqKq8SCiyrdf4Zz/wHWoaPDdLRJEVsLamqQOtDlUMMy+nzxNwLtNM54udSq1PkjiV29z3uirOm2NqzyG7myxoRTIIUS+teIj+lFH8VXVD6lyulCV/666/KmxuJexdk51ft35byIx+DYl//qMklv7KDTAZwVgGNsWRgQurGhI3QjuPjO2O8ALwzb2K+yqS33Z0uvjVEFGCFI9FDC75ki0EwA1F4IW/aRkmoHUNQpTO+TRdm2gAEDC6yxbfUFiBEH4ZtWKX250HA==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2427:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 31:eWE6MRQ9/c+GKmg3r22eE+hrK4OMwVNQWFlWWi6TEp9LKCcr2sH1EL7cQObF2SrGjKmacHT7GOckFCuWCt5VzV/Z3LjagIbytwmIq8Ieey1sSABZowe7lplMS0gbYcbNknggVrbqtmb+pFLYrMIdkWt5nMU1Vo6raE3ILMBc4/COSGbjkoGghNfw1UQ0CnY5GA6iJVSEmIFfhic8q0XFGx+VwLUqGdQY3fHHQUqX1wo=;
 20:YVUHAz6Cdc7SfvSDArKwobvH3N+MF9qKltPQMRIv3oe52q2uQ+ciQaop944S4POgC96m9jUaMyf5QvkoH4kZ9kyTSgvogz21NUai5TatEUivNKfPL5OLTzpdoXZjGDa4/GFEaGHJqH/fOGDvxr0gMV3yCE9b/Ox7qj8KB8w/ZZvqXPGpEdn95BMGN1JPBZ3/UZZPQ7J3isrCW67lLq5kne0DBXfXprJ7aGPMAyK4vyIkG+cu8gnnhwLHWiGl6ud6;
 4:4xrLdmTBP8dLd+3K+ODapTeuMgTNWm27Qy8ZNFOMV+U78+mnM6f4KFnk2XY1vifbjYoHIfsaKhhNrgFfE4BUWFiLA1SFEof/gsBtNZKVxl7IsnAyhsJtp1AIo82RRhinFnpsFDPRas689LXpt0MiPUfB/cXm/jgR0gOcG6II8K7peiZ9e7iHySccprHggXMsXga4MIcDVqsWD6KRHZvMsk4WUiJTh9VxEziRYOrkqHzLYABayBjm+vtY95zIG7LjgCZmFbjESz67BRi28BdSMkVPnu8MLOvdpJhCKVbmBZimFRRVjQ7TJlTo1Me9M2wT
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB2427B82680B16646B4B3E35384B00@HE1PR0802MB2427.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(10201501046)(3231232)(944501327)(52105095)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123562045)(20161123558120)(20161123560045)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2427; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2427;
 23:pEcYrCZrECUkI4VioyubOIl2MUWdEWC54XDOlRh?=
 =?us-ascii?Q?qKwWyD4nSYtMYDMF9MyNU1GazMgVoN4qGqKz3XagJ868g4V08HmtXsgqH5o9?=
 =?us-ascii?Q?p4/I4YejKQDbUq98Z//g4xx9BYFzhmJa1G92lR36BpgHh8QOS4mf3ZPGTex0?=
 =?us-ascii?Q?Y0vO0l4Ai/jnU05uKnijGh8oyFiJA0dwf+VzfPnKEjBWIzmhNOfaPLVLPNE/?=
 =?us-ascii?Q?SvVrUtBbDk3urL2wWn4DBZ1xlYXqPMAnQuVCwNK4BDxZg06NjyytZF8fJFjL?=
 =?us-ascii?Q?M3oP08GZWRS0dkAHyYwTDwj54hn56UyvLkH1N7X9xPYIoPDq4QhYhgRsTy3u?=
 =?us-ascii?Q?Nenq0zOewIHDFkXduLccSCKTuXEvq35R77qReONVXwAvcUGGnjVsT/jH5B8+?=
 =?us-ascii?Q?1fOMQLhv6k7w9bxKNScZSNXDQ2o4X8LxoKWErRx7h6EzDGTjhDySiWpwg2wH?=
 =?us-ascii?Q?nuxId2okdt+bM0+D1LMZqoRKE2GX8vy6ukGYq4uSTIYjyfIcAN17dEQE3Dxb?=
 =?us-ascii?Q?MpY2mgww6OMRjmezaR9E+DrhAtFojs5gDqaid0uz9y6E8nNVS+OcfTa9xXDr?=
 =?us-ascii?Q?vv7rdqTi73GesRqJdbfZ0kxqvWm67WFwRjKMeyUxZhVqHz9QveO3e8rgJ95R?=
 =?us-ascii?Q?R47Ar0u8KLbienDPgsD03NZyXIq8ZJwXXwLHFBEFFDdQ4MCKElRCm5QYdkoh?=
 =?us-ascii?Q?AnqEXEBKQeVqO61rfZx3CMnIoE5ZZqsBDj1hwq+Xy53NMbnXpmzt9mNnlbr/?=
 =?us-ascii?Q?lWvLbdPv+HePaBIVJ+ogJ13MAvC/bkinuLIkBFz0XNZJTERJfOHUTdk9qQh0?=
 =?us-ascii?Q?zEBhBdHHpjujYUX3Xvzg76qthlhGdNCn1gjEMa+AqI2LA+SpLdYQ1rZos9Lf?=
 =?us-ascii?Q?nS6ztbz9+qlpRdCBTlYUuyf/BT/A91K8VwJvwYv01h5eO4YHTq300DwHi71j?=
 =?us-ascii?Q?jJuRzJDV2nvOqi1NihGnpaknCdlsjH+iIJ6hfQs9f+0T22QjMaDOuCW0fkBb?=
 =?us-ascii?Q?1GMnwH3QXWM/Efkx1yQXCsLk2Vj78JbJHJkOjlqxoOmnMbFN5/BS0Ln8N3e5?=
 =?us-ascii?Q?z6nNz7ZA3BeWmzcvubLdvikYlzzd55d8gIzvXPxQ3Ct/YUUddyrrTD92KatC?=
 =?us-ascii?Q?3EAvZt7gU9stX1A5AK2GPsrLykbKVwuJH?=
X-Microsoft-Antispam-Message-Info: bEAGeeCSVPM/pM4yyQfCFuP/VTOSBSB2nR746iQAQboqFHwTtLTAMhXG2W+AobafppvgylaiCO9h+7LuJiJG5FJlwjSRxnjGDhlKo0ReofqX3DOF0xupewMG9ebdVJeUe8Xt7XXsC4lixHP9oJAKuFw3te8/h1JXyhHpq/sNp3bp6LdZw0wwWWsSrjtE1pm0jz8pvXiJGlihYMCG4qpS3iuxMPJP0Reo8gseSdrwfKU9WtnTec8eTcmbUgS+ueuWBQdA0yibJksMUYs6Bm2gJiQXKaUXaEmQUG3b0aBLvFYncfgh6MMNTN7q4HPly/FLtGeypXa40aKcgXCffP+Q+b1oA4NBtqgcNF4pTnWhsubKJ/e/JCbyxe+glwAXLvZ91VZs6cKDOeyn62jJmzNp7H1SJhWCptBF1IaVeGRjW0o=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 6:/7U2jmXr+EwyuEbUKDD6CMGNM5MGqGVO2L0+VwesqeCFNMS9jCWtkoQbFiS275l60qnSPa7zLqnztIUED9OzuUjfiJ8NeooQAhZkjOF8llH1fGU1Ip0HWVFk0a5hm6wCS/pt3tUFk5hkpnQctIFSVPQhnohOcxoDetZGhKYdcLFJphKEqqlIqxmtiC/1aN88nG1O2Jg0enT5AYmfaFhaPhKwwQBRrf1uGcPGbCmSYnQ1gnXrXRpIXbNIEnPFMGmdG4oPXcG/LaNUi69OqvNkBaxMUTFrOH6XeHAwHHFmbTlMlpS0tXBtct0X8CAxWK22smNLf1G2yPDluyhwpscsYk5b0Df6vD66qrj2iCoqnTbeLPdF4KLsvcf7grUtmsE3rLX+ZWOImQHJ5o4qBTBDt7tzeoAACME3YSj1XtNwKsxUAg21TtcHOe43b2DdkgPrWY8THGMiCCl8ft0LqG3u1oGP19VZb2IOawbKe0qn23TxyRUIZVFrDyoK6b8D87yz;
 5:RA75GNReippxEM7vo1ywx3RGxHWQ9MEKcCnwoRsQL9FQXB3EoqBZWGgXhOaYw1mSPYhbbw2NhH29EC4gIvuGDtYzFmv74P7hf9YRtw06C7LSVMAb+h0uI0foerqjQBIoAztrtZ3VvZQYbeJxsMPoqiIvnkUHglhpGqMwT+Vz/f0=;
 24:CG+YArNnt83GeeyFMZzRvyzEIZ6SOzzFWNLIyVuv+cN7DNc96T4bvim0UtxYYHBihv/u8z96PZB8u6KPnFooPzLGtsmVFjcUHZmL+s5i1wM=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 7:2lu+R2QRyDy4QYen94RZMebrhMIg9V1KXdxJ09Ef816sAVDZBX6ip1yCAz+uzMoyzHXvJKqEZSgh+YBNTR78CwqMzMfvVygjDF2JtDbqfVOs+LFxufvUcqYrvycCNtPJYB5ES+g3+Lmvk/tecDtgHDGjLQM4FWlDFiENdc2HlRBNGcBFsv4bM0EtBFmqM/4W3Nc52u5hknKG9vceTEznQale/Hc9GXh0FHCX+k/xqxc4evGYuu6UEalwagPwspTq
X-MS-Office365-Filtering-Correlation-Id: 2998e699-5b85-4e92-7c4d-08d5a36441f3
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:33.8670 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2998e699-5b85-4e92-7c4d-08d5a36441f3
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2427
Subject: [Minios-devel] [PATCH v3 38/43] mini-os: Set TARGET_ARCH_FAM for
 arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U2V0IFRBUkdFVF9BUkNIX0ZBTSBmb3IgYXJtNjQgY29kZS4KClJldmlld2VkLWJ5OiBKdWVyZ2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hp
amllLmh1YW5nQGFybS5jb20+Ci0tLQogQ29uZmlnLm1rIHwgNyArKysrKy0tCiAxIGZpbGUgY2hh
bmdlZCwgNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL0NvbmZp
Zy5tayBiL0NvbmZpZy5tawppbmRleCBmNmEyYWZhLi42MzYwNWU3IDEwMDY0NAotLS0gYS9Db25m
aWcubWsKKysrIGIvQ29uZmlnLm1rCkBAIC01NSwxMCArNTUsMTMgQEAgWEVOX0lOVEVSRkFDRV9W
RVJTSU9OID89IDB4MDAwMzAyMDUKIGV4cG9ydCBYRU5fSU5URVJGQUNFX1ZFUlNJT04KIAogIyBU
cnkgdG8gZmluZCBvdXQgdGhlIGFyY2hpdGVjdHVyZSBmYW1pbHkgVEFSR0VUX0FSQ0hfRkFNLgot
IyBGaXJzdCBjaGVjayB3aGV0aGVyIHg4Nl8uLi4gaXMgY29udGFpbmVkIChmb3IgeDg2XzMyLCB4
ODZfMzJ5LCB4ODZfNjQpLgotIyBJZiBub3QgeDg2IHRoZW4gdXNlICQoTUlOSU9TX1RBUkdFVF9B
UkNIKQorIyBGaXJzdCBjaGVjayB3aGV0aGVyIHg4Nl8uLi4gaXMgY29udGFpbmVkIChmb3IgeDg2
XzMyLCB4ODZfMzJ5LCB4ODZfNjQpLAorIyB0aGVuIGNoZWNrIHdoZXRoZXIgYXJtIGlzIGNvbnRh
aW5lZCAoZm9yIGFybTY0LCBhcm0zMiksCisjIElmIG5vdCB4ODYvYXJtIHRoZW4gdXNlICQoTUlO
SU9TX1RBUkdFVF9BUkNIKQogaWZlcSAoJChmaW5kc3RyaW5nIHg4Nl8sJChNSU5JT1NfVEFSR0VU
X0FSQ0gpKSx4ODZfKQogVEFSR0VUX0FSQ0hfRkFNID0geDg2CitlbHNlIGlmZXEgKCQoZmluZHN0
cmluZyBhcm0sJChNSU5JT1NfVEFSR0VUX0FSQ0gpKSxhcm0pCitUQVJHRVRfQVJDSF9GQU0gPSBh
cm0KIGVsc2UKIFRBUkdFVF9BUkNIX0ZBTSA9ICQoTUlOSU9TX1RBUkdFVF9BUkNIKQogZW5kaWYK
LS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVj
dC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlv
cy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:35:47 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:35:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xjv-0003VP-7y; Mon, 16 Apr 2018 06:35:47 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xju-0003VA-Df
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:35:46 +0000
X-Inumbo-ID: 42c572a4-4140-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::61a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 42c572a4-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:49 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=AzMfMVmlUJijvXHO3r6o9LGvLoG4kndA9IxPLaKRybE=;
 b=p8rWr7zgw9Xu8rT0owTxODS5xUuUPSLsR/RjKKy3+hFQJSl7rN3KuzsiEbTP7k0S566gOHQT55niHzx+k45CcXuPRmVlarjArHID0+66tUOJ+qIRvfAyb0Y0JbseFzt1jQfCo97vh0kvF4edEQwcdqY2I8/oBPv8HforgdKeyok=
Received: from HE1PR08CA0061.eurprd08.prod.outlook.com (2603:10a6:7:2a::32) by
 VI1PR0802MB2430.eurprd08.prod.outlook.com (2603:10a6:800:bb::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Mon, 16
 Apr 2018 06:35:37 +0000
Received: from VE1EUR03FT042.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::200) by HE1PR08CA0061.outlook.office365.com
 (2603:10a6:7:2a::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:36 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT042.mail.protection.outlook.com (10.152.19.62) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:36 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:35:18 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:19 +0000
Message-ID: <1523860343-16382-40-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(396003)(376002)(39380400002)(39850400004)(2980300002)(438002)(199004)(189003)(8936002)(5660300001)(11346002)(446003)(16586007)(106466001)(26826003)(47776003)(426003)(316002)(72206003)(478600001)(476003)(6916009)(126002)(50226002)(2616005)(486006)(104016004)(246002)(77096007)(4326008)(86362001)(26005)(8666007)(186003)(50466002)(48376002)(51416003)(7696005)(106002)(2351001)(76176011)(54906003)(8676002)(39060400002)(336012)(356003)(305945005)(36756003)(2906002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2430; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT042;
 1:7oXKbpXFtabLwCRBhxU34irq+65Te+lv+KwURh2A7KxVbxgUxIZTn7Bs1F7WQ7vpG/ATmV6QcxcwNFIEUC1o7zqYaa1OsM4n9TRCBQx0Slg/jgIFQxdN9kkdc0KlqyP6
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2430; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2430;
 3:LJt959mDRQfxS1w+lxfI6TgVxvAMccpcQozJY57YeKPMYvruiYQ/+Xtt4PbJDwG4VzNJYBvzLqaSgYqF/q3egTl15QNmAY1iD0IU/rc0K1DibjWUe9eC2zizkc5Vbi0e5VVO119+bIAM+mVnYAicf7ohvcsUFmjGH/UxrYMwNarUW3D9ByCt9Lw3k7HXS+5i3JVnOnWqrfLEaj6VE4sKvbn7WLFd1MFElKbpCvHjtaVe0u84+pFr1YdHQsp99vXXWRhfoyYsJ67ItaPb7ioocjAlWVUFGJfnX5QZ4qJrfCbNUJ+9hysHCWriLUxPGYSN5eZtwx+K3CZ5bto2AfIsYfuV7/pyJ/nnzRH3GygCTU8=;
 25:skpdYgSxXFxB2qfASbBRbZKRzoWvRtI9+C67a0iuu/UvwomVI3mL1ASEoHyuztFLDqAAA19ynQxYV4IHV2R8P/IGASrfJaOE33Rs7UfzH64AVb0/sQn+TNFODaHYqws+TKvpETp6OSiNpjz/cIeGqiFtoae7He+LHXR0ws5+qh9oZFDyKKTiczJj6NuNMDsbuYn6Y+CrBbr9+Ymbs/HILMmMQzfEcjY6/yULe1uGG+54Go0CxDXyjI0qadlxZsH00D4ngUAoJ6QIhS8SDmgf7yCnHGS5P8EyJAaHxHV8waB4O8u24GsxGaQUjhOTL7hzdrHp6FhRVzhR2Mwm/c74Og==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2430:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2430;
 31:nbdy9NkuJOwREPl05VAE5QKSGNI/g0i4c/YHobT7yb7MaLYOMAdM2ePNIEtBZxMdMeFMXThhBHs9AGneiRdtfsdN6sOKpjYlzMLrasAF4zt0QSRdTz2DSk0twkvD0A/E9gFvShJ+s7ETZWavJomd+wMMnhTCu0tOug8V5oq6F96UH3UDovIj7s6OIDKaY/oCc0F+sxeRKpp9IPrlBmFqWvZDwoFgNDQY4KxyGbDUn28=;
 20:oSAougim6MlI+5/jlCHV8TwmDKl5VWTvQJKnsl2dk1BM2uPmoFerEWKwZWMZCe0Z57oaAzue4unvfF346m1jrQ+prOnOFn77rTy0IM9MrUhGtnoC1blM0LYiqIKGO/yoQcC75ph+OXMe1BrS83I7P/njE6ZBHh7STglqoUlGxm6CiU5NHm+oG/lTrJpUJggTFKePhS3zj3Nxbe7gcxt/KOHOfOJ64Pi2rH78ZNmyW33FduoP+oChn9YjDlx/dnAl;
 4:h8s73F0d2X/i93cqhcH9LkCQU1oo7NWSn2oKV+Qn1LptXyajYezsXV3V0XNUKU+FJxsWPbkGafK4HnlldDjCfuYYylHZ6HitQllhcT1XwBTZ/o4Af3eA/Qm9/5PQeNGxD+2NOwUBmKuh9Mt+B3CFAhgXovES76+tKmcGwN7wZMI/4wMcJGtVxgcl73KdP+3cBGi2cUBcKhiHXQLCnc47MJAag5tZyxQUH5IbX+jddSnGBO6S5qvrgwJt+LwycLXpNfIFWmkiYtm1wUOBOcEEqLdBQO/CHvSBNUFK0GiREp22TG2k8OshK9uk8cMBz7gh
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB243043F7444904C536FC219E84B00@VI1PR0802MB2430.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(3231232)(944501327)(52105095)(93006095)(93004095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2430; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2430; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2430;
 23:0sIlF/oL3uIo3rHBTsMqFXPE4/U5pTRVSDuHZ1c?=
 =?us-ascii?Q?O3r+ML1gt2mnL3vbwuZJaqKtyy6nULFeHlp/lxaonnPPEPXzvSgf5tqPpGlO?=
 =?us-ascii?Q?yJbs07NtCoFaynS9cSfAlbDDI9rJq8m2ZEV+mYGoy1g3KXDJNNPeMlRwRyVf?=
 =?us-ascii?Q?hTWcACkgzDr7Xnb4YKf7UulOkt3t64CGGHi6I9wsrSOevv4t9HACyHz+908W?=
 =?us-ascii?Q?5HUMYZrUL3QbeDZ+iWpGP860/1e4HI2616LiR5sScKn/Knl4DAel8cOvoOvj?=
 =?us-ascii?Q?cPONjeA5vK3Y3PVtmM3lmKwTU4lnLbWfp3B1RFJiKjWkdcbF5uQX6ZB/qhE1?=
 =?us-ascii?Q?GmlJhoN30w1g3yd1MjELTHYgbufdqgBVLGV1UHzTw4Mvke2ifUma9qfTU/Pl?=
 =?us-ascii?Q?M6mqcm+45aL5PBTKdbxQQoQCY/ziee0fQNGcAq+jKtnE3mPG0q+O19Mh6V1L?=
 =?us-ascii?Q?ARyeNs5BaD/de8/BIGMgXmD6SD7/JyZ6WFy5pmorUFqaKKc80BmSHMUeddMc?=
 =?us-ascii?Q?HG6Ay77+J+TqzmRA4YxfIf68ul+RPa/oTm70DX3m4UXHTzdjc0XCjcJDeV/O?=
 =?us-ascii?Q?qqJ91jzxqMv73cWbKMYeWdvPgdECoq+msvb3R/wMGPlHF1hxFH8FtQ3Kbnzq?=
 =?us-ascii?Q?ShFPHK9IL52TpGu/mra/ghFIHomeejTp5BHdaTHx16oGIXnJ57nB7htQwjAH?=
 =?us-ascii?Q?SD3N0FxR2SuAlJb5csTlLSogsg3+9+0mVOOenF2dU5eTGY364gvgKu0Iu8YM?=
 =?us-ascii?Q?CdC7rvrvopRHNQVKY8Eoi9a+HRxNRWhdfi92PIMzT96t2Wok03QQ3jzmNuDK?=
 =?us-ascii?Q?iny9xsFBn4oO6MyGW/A6NcdaSRN+uGvo0ltfzUOdQoNARZuvRWoXEIT86YpU?=
 =?us-ascii?Q?xgTaZkbTSFa8LnmgkdAuuBuoa/1S2Z8thLzjnsjeb0AJf0KgX9NyHgfOembf?=
 =?us-ascii?Q?vqcPAvfhoVdF6yEUGx8XrtX9ZJ9W4mkWFrjc1TeN/EMZ64kF6vVFowt2VqOL?=
 =?us-ascii?Q?RFX2tDcRpprlryA1opWVWavSR+5L339Zr3ooVnBE6zo1VlM74cvjKk5F/O8x?=
 =?us-ascii?Q?sps8HkjZuV8/N5FQrvxW52hLEx4LzZWbZSHUOovheUTT9Yjeg8Wna2djUaB4?=
 =?us-ascii?Q?RrbUqXlXwr5I=3D?=
X-Microsoft-Antispam-Message-Info: RsQIkH/elD5xmOgazShid5H9qoR2x7SXd9RiMI9ZaCMKre8mbMj209vqLUBaDGI4weRzJ2/RrRQhHEQSiMA7997q3TZmbJx1xlFx4VsqcSJlQrO3tgpll+2did0109W4qvKiYkeoYmFNpl/FPZ+gfqbjmKqNRW6noDgf6VGsOOhIciOaJ+oKoWalIpnKklX0N/nWJwQZeJqAth41DecN+EWi8bmwQ+kCL7cy21dim6FV4OHOe8R+74Xbj2sRMKRLQAsq3gSSSmOkrRua7eBK44eCrcl2G2N9z3eL+hTtmomVO+9iGDqsBBIstpbtoeHr9LJPvDZP4rk2nuQhp9clneWLEBf/J03Cn5qhakP5O1wO81TKOJPC0Tjr1z3ewuXcAR2JX3k4dfRiaAKzcJp/qsON2xHqxbW0yP5F1tKlle8=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2430;
 6:DmYEwpTJtTpSy3eyB/HgUwyEvxvYzJkPBP9mJACCHPEU0ySjI5FWjVBWM3sGDGhgSTo9iN+cS+t15k2G9d9lOrMafm/A99q1Bf1XgTD1jaRrvRAoanEh5fty2IJyv+Qwp+LF6Q0UYoFDYDMwrYBXt5y6rO5ch5AwQEbVVBMFLdoFcwAF47Ib59ZzybryD8sNMxSSTyLUX+fSZ2BqWI9zT2uu/1Vbc4sAD2PT+4bCinIDn7lZFLjCUbmrSaGArvNqX0xLkUCWIRlC7FP/MK2gejQK+u3yn88xqWzNN/71PT1c+gKk9vHhu+YNK06K/lPgYIc7R4cK4OPZdeXmsp6Eboq9ZqqAhTuSoZNiHnf/1dCEwgWTiTJyH7nSyFVmzFE9iTDh5bbaI0b2L7BKIHA+LKPWf3k43L4jqtCPrZauCPvkk6RyXRs0TkI9QwqqGXpTlVbRZyRgKPH6yXp9LMUKzowQPT5FBgFuUw7eHNB/sPJ6QtJ7H9/KzU0FoHsScq+X;
 5:jWqTYDHQ1/p3Joro9kvIRHlcs3tSpQVTDZIfGRNLAOXHTze0yx3kabQMFTMRdE6sDyJJifDiC/2E7pJqSsJ2iujMH8ZZpiEWpjhcZamVTTJvjPcut28AANFvzVpf9MFKv/QTiFYfbHCg3+ueDxvRIU2dbufelPk5tLmJU8ElZNw=;
 24:WdS5MmWtyrRumriZVkiFFaXx5VVyFZ4fE/AtAcpujBuL7248FEf9lDgJwn8ybEfWtZw1PE/KvFplcXdH8upnGntlG77p3bSWJ8GCWJScVyQ=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2430;
 7:UtLqJbxqrapQLVtu4S7eW1sTEg//vIPYOXtuDoBTxCbMShlwB2U6dU9hHDgotiH/B3mMRUvyrisy6IIPjpUs5Yt1lUXaQ6UkxPVrWB8yZYq9AfG1WsDfV1JIOTcwZjkIbqdPfUaa+bJB0m/aOGHNzFneVPB0/sGIGEPQLHD4W7cFXRyCfupr2/Z+7X3tnqNGLxU3SHhNlpBu3BAXQoYX2rXw8TNv3Ei0cRnuQF1z8IN5+a/+E5hJ7RmlMx12wEjr
X-MS-Office365-Filtering-Correlation-Id: 110d054d-f393-4fb2-0b6d-08d5a364436a
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:36.3217 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 110d054d-f393-4fb2-0b6d-08d5a364436a
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2430
Subject: [Minios-devel] [PATCH v3 39/43] mini-os: create the image for arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KLS0tCiBN
YWtlZmlsZSB8IDQgKysrKwogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKQoKZGlmZiAt
LWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKaW5kZXggMWU1Njg2YS4uYTUwNTU2MyAxMDA2NDQK
LS0tIGEvTWFrZWZpbGUKKysrIGIvTWFrZWZpbGUKQEAgLTE3OSw3ICsxNzksMTEgQEAgJChPQkpf
RElSKS8kKFRBUkdFVCk6ICQoT0JKUykgJChBUFBfTykgYXJjaF9saWIgJChMSU5LX0ZJTEUpCiAJ
JChMRCkgLXIgJChMREZMQUdTKSAkKEhFQURfT0JKKSAkKEFQUF9PKSAkKE9CSlMpICQoTERBUkNI
TElCKSAkKExETElCUykgLW8gJEAubwogCSQoT0JKQ09QWSkgLXcgLUcgJChHTE9CQUxfUFJFRklY
KSogLUcgX3N0YXJ0ICRALm8gJEAubwogCSQoTEQpICQoTERGTEFHUykgJChMREZMQUdTX0ZJTkFM
KSAkQC5vICQoRVhUUkFfT0JKUykgLW8gJEAKK2lmZXEgKCQoVEFSR0VUX0FSQ0hfRkFNKSxhcm0p
CisJJChPQkpDT1BZKSAtTyBiaW5hcnkgJEAgJEAuaW1nCitlbHNlCiAJZ3ppcCAtbiAtZiAtOSAt
YyAkQCA+JEAuZ3oKK2VuZGlmCiAKIC5QSE9OWTogY29uZmlnCiBDT05GSUdfRklMRSA/PSAkKENV
UkRJUikvbWluaW9zLWNvbmZpZy5tawotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlv
cy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3Jn
L21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:36:02 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:36:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xkA-0003Xr-B1; Mon, 16 Apr 2018 06:36:02 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xk9-0003Xc-Bt
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:36:01 +0000
X-Inumbo-ID: 4a061414-4140-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::612])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 4a061414-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:35:01 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=MhCQwsp0tKx2EBZKXfagOJdSM56Vj/JPISemxtwRczk=;
 b=qV7ohzl0pnU1YuIwxVWrHYG0Y+izWTt25SPeAIsoeKybENDsoTABOfdS6TryyI03PJYLZgo2Qcw8biHn4BuoLJvlMcHdPg1Jp74iw+qLJ6ClKZsfUgl2WcCR5RqpgCR+rCwSGK9zkeQ01+B9D6pkhUcLEnzZ/sbDpDqJULS6sZc=
Received: from DB6PR0801CA0065.eurprd08.prod.outlook.com (2603:10a6:4:2b::33)
 by HE1PR0802MB2426.eurprd08.prod.outlook.com (2603:10a6:3:df::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:35:49 +0000
Received: from VE1EUR03FT031.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::205) by DB6PR0801CA0065.outlook.office365.com
 (2603:10a6:4:2b::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:49 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT031.mail.protection.outlook.com (10.152.18.69) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:49 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:35:29 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:21 +0000
Message-ID: <1523860343-16382-42-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(396003)(39380400002)(346002)(39850400004)(2980300002)(438002)(189003)(199004)(305945005)(36756003)(8676002)(104016004)(6916009)(6666003)(54906003)(50466002)(16586007)(76176011)(48376002)(106002)(316002)(8666007)(356003)(7696005)(186003)(77096007)(39060400002)(86362001)(476003)(2351001)(26005)(446003)(11346002)(2616005)(51416003)(486006)(72206003)(26826003)(8936002)(126002)(478600001)(106466001)(426003)(47776003)(336012)(4326008)(246002)(2906002)(5660300001)(50226002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2426; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT031;
 1:TmHTADTuNDDTM79cMPnSwZeFyombGeSxH6H7/sAbUwAwkNhaOn7XRXzfrn9wslub8rMf4N87ZEqi5DT/qnnep5JC+k2j4o7VnJxc4AO1H+0gQBhmMkaro4R6r9PkYuvg
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2426; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 3:iraLh+VokHcUH/e6eVITCyxNLUpvOJsLC8JnQAsWAJDPACzYu1/ufFVqvv3leIvm5U+uSr70pNxB5RDpwWfOU0KZPnZL/UMHUfoQbfdoLsxBZA2SJFPHAQAZ5xCOSssPfKlzyhR0z0MFEuo/TAD4cRH0crQa7WGjlzVo0fWPIly5dLe4Srz03uzcNPCgPOWQT3CPMhw8agMTQjafHbq3jHq4ooDmA2N5Rgf+hioC5zPmMnmijLKBaeQa8IL/vhHAsjo46UhjSop7l6i9GabywTvQ8dmmwXwMz3iv3sJHRlfmLt1hzDL+/4A/A3MXpZv95cM2a1dffNsqF/caVGJOKvX7EvgUXv2W27Wk33QVjLc=;
 25:Ydbf1qLtYvJ4GXTU4cBvKc3gLMhQ8ZZipEq4FTU+Wc+JP/+VwGCdnmQ8MRKR5quRY3SJ5lzycfX/Du3f4D0KaI0TWS0E1viNqI1O1nZHVeApFJmoWRifMzRKDnxaQhuHH+3oZNZR4NXeDxbjtEi3guQjn9bZO+a3XLaOHORTLM6kzlPbNuYcREo6i8o3AD1NG0jwufq6h5LQY/tIyl33n79vfNPD0473Y/vwRJk7x6dzyB0gVFP/ab1GbjLNiE3WfrmyQGelUqB2WucV9MuwJ8K/WpkUVlRRotaM4t8O84VLjmV0f32FsG4+4SdUU++2VDsTHrVd2tLK4e/Xr+0B4w==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2426:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 31:+bzuoEjbmRC1FWpl2jCYSUTJl3SwBko8uGDRhqYGOIdfZC2iGvCxXoqTwywEMoP+TYd56eizFQXhElfcfceD5SWpXNDFehzgjaoWGSA83FRLnksy0Dp71hSf3w/cHGVDTihhjzCuy4kdw+njMbXS+OTEVYDAdKv0tfxNjMcBEPPbHCyaHZEgdpF+HTZcySq3AWjb/J/VS53mswsXBRHHRJoSn5LVGGU/6cylX9R10eY=;
 20:JyDwqgaRzigBNBLxvkj8392WRVN6ldnCvf4wvxaG1UvVJEMBzYwit0jlboi3E85nuDiPUHp43OCYb7XhxA+De7MnIVnnFgbVl68r43uFSV0Q1BhIQ9PiFOVNMntjhv8EDjk7O3eG10vkHKXKkiI5Taacu9VAsg8sKzNBOCb5HKWMO5+ZT6RGsL6yMIn6Xzygq3eji8ybadc9uih7E4RvUFvPEpf5ob4wjKIBu/67Wu7ibp5mUpwY2WitbgZGpQtE;
 4:bsJ41YxWvHSR9HK281SxYpYjcOcxBXVYF1lZvLxJx0roou62q7XphfpOvb0i2OFZSkS7M3yPO4K5BW220xIvLBr7efXPq2O3qzCqOHfMcW69X4b2SImzPwP83QFJTnOy8gmdRKRFDhP2mT8XKYyTxZP7Rs2vtWYmLKaDuEpSN4TKc+pY4shqkOemItoe0Ob9f8yZSUXsbQRtMRAO+Nq7raF1hwBSUs0V77X1BdvEJ7L4UL0w60pH39CD/dEvr39mDL6TqmFbWZg3VkYiEHQbG2zO9OGC28+xF2ylNOTA5l+cU44M8/VqbPKyuiwalhtJ
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB24263BC73BD3FFD9D548E92284B00@HE1PR0802MB2426.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(10201501046)(3002001)(93006095)(93004095)(6055026)(6041310)(20161123558120)(20161123562045)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2426; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2426; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2426;
 23:0KYTtjAcGiZG/K7Skiq9M2JRupPhJ2bDl+9L2Sj?=
 =?us-ascii?Q?c1jF8xYbrRqSaIgEXc9A7RdsBfvs9wouOT9GHufNuRWOqRPDwQrJW72PpUSk?=
 =?us-ascii?Q?ZPKzs8I+ANUrugXHodRx5EvUzwOvH0Fgrjet4ta/jurRTorxTld2RXniddBF?=
 =?us-ascii?Q?+Mxd+HCTTEMkL9Dfg5IZaOMo9s195nMOXLQo/YpUPaMbVw0RLO2UPHTDWr65?=
 =?us-ascii?Q?tPXry5TXaBZkiEeV87+Sy7gcWzJ9KRy9UIwVMF5Gl7tRbrQwsOdxCcy80cIp?=
 =?us-ascii?Q?epkW47QKXDbbsWyHrzSzJGQ5oImNdgJzKTXnzLRz+XXfbnLCKvaJxhTitw+5?=
 =?us-ascii?Q?KbuTdx5es9EFCDkfIacvyQVJRZf4xdZzoiZKuitInmwrKFCzo8qof+kl05JJ?=
 =?us-ascii?Q?WC49pNFfWFNqUcSjCT1afiIuaSI7d66CC5aSKiMoYciPuXDUc8Im5mRG5G84?=
 =?us-ascii?Q?bqlbVJ0YPMlKtgRlBG22JqfYCrb8n8TiepD4QOL8ahN0INMy+JamsbMBgt1z?=
 =?us-ascii?Q?jDRovlFFCojMu3fPkUKG/25tjMEh0C+MNIDUctAjJ7AV6r2YzcIh1BB04pf/?=
 =?us-ascii?Q?BczhzeYSNn+eJkVLJaUeNFp5UVMPXr2y6c02P5bTPF49EqZsd9MYFFVCKtJe?=
 =?us-ascii?Q?MNGNjnjWfNe5rWH9YqWto/qhVmkH7rWW6Lj/uGqZjPVyMwqOkazQIZNZ2RQ8?=
 =?us-ascii?Q?V4QOMXidS/ZXSo6N016pVm0eBK+GWAntzK1V8OjHVPNRhNQI6zdWx35D03j/?=
 =?us-ascii?Q?HDRrf6IO+Xlrvlc9acCM45n0lhDGbZEggpzHLtMNsbsw5Od+V9MBK/CAdC8M?=
 =?us-ascii?Q?r3xhcAZGmd/q8QAygF8qE8Ya37qsTCmlIfNS13BiwzcbdQgkjBLlXIldxG/8?=
 =?us-ascii?Q?+cvlc9qXDBfIPEnh9hIz1t9/G1jgH2tJUnQ5hdrEmeRmQnvkdSf9oM3BsM3L?=
 =?us-ascii?Q?VdmC3sIJCP0hXXW9VE2Dct+3DYKX3GUSryHsmUoh/fu0g1Yh4sEmuDOupei3?=
 =?us-ascii?Q?5X0s9+83pOVHgMoS//+q2e4N3sxJM7EpJru2oDl1tZGd68YZD0ZASH8TZJvJ?=
 =?us-ascii?Q?EeJDHgD6RA0pXCcIweurucKrIMw2doCFXzQpN75B4OIObxJpapmHqSJS3v0i?=
 =?us-ascii?Q?nDvVnfK6q31WI9GYLdySNCNpgHvgKsI99?=
X-Microsoft-Antispam-Message-Info: a8XKc8sJsLw9DMGQcsd6X5qCj1sppdfRWTFS2ekIBL/FXdjf4ontamRnYWJ6Ke2R/WW6otYXJuTjj8RYNmwbWscTSTB2PnJ2hdfsl/szoww+Sa0puz9zN4QRChpFE3ZXAAyXTBM9a7TYWRW9heihXXMhTibuW2wNZgxUbBQKFwvN9zQCfOmYff7yyPj+BgllfqjD0CnmC/kiqp8kvgd25B5ytIokzDWuDD3ncZVUiMgUPSYPNFpIfKIVCTGmAhq2eumKcb0VUvsDlMXBodjUyUbcOwf3f/U6GX41RdwrmZt8dJIkZKO08knhIr+NS/2+0B300ZGVcZ8WEAy2w3g8VjvtybdTbF+UwXBYvCb8AzjyjVWtcM+8vzv2OmsWHRdkf+xKi6RKeCIrUZWeJkCT4JM4qUur80LYJPvbuFziV+s=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 6:ZKYfa9kcGwocOEV6t+oLeLptSh39j+k24GU1a4MBKSc7u4Qs1qVaBc7SH7mcIgCzPifB+HDTenNyYgOFDh5BVVn33G4zYNOI3zQ+5dtWuJloW2sbAUsBwWkZtd9BtnZs8BvbczXwGLsS9yKdiqOctRcoW3AScJMXyS+wDt1RJcHA/OC6fiQ7B33KLnTYZ7WPrhnky1osGEt8V5anM9XNLtYvQkM/LkG1Te6qn4jHgUpEHAIYutS/biR3GE2VW0KdmuV9RxeipO9AShu2a6A15Ne1YuQizaV1LQPla0kf6vLEC9eV5gkTfjl8QxYJdp+1YjyuWyp/Us9/r6I1LjCKnLVdJTI+xjN/EJ+FNkrkv5Jn1msgBqYT+Io6Qy5Q1MmhgKcsLdRHrPUsx3tX/Z/v37JfTRGvCl2kyd4KBaPzAGey/Ur/BCUAS7nOsRDc92Rq6v0mbVUDXPAWf5JCzWYi65CywO38Y4zJi8qHu0x8E4pXRA4qBaLxlhbJCKytDJYx;
 5:XN6qDFkKSMIvfg8JxuYHR3bzjnSjcZGhOKFSXQehuEga99zn9ZefQKBapz77Dj7RVwRnR/vRm41dNJX2DOk7CaiC5JWchfQybgM9ZvEGxZSlJa0eIeGDSdadJ04lb7TIKmVNdmrUZVB4vRy7Kp5sCTUAFNYa60SYvPjPyqCIUSg=;
 24:zkTKI6lJeXFiiV2jU7h6NTevW6VIyrsrbg5RSaq6CgBCMvBAYi5Za5KM6uVz+FmaEUF8dxBwEhQVW8TFf305lZXKKjS5YpXswcu7e+0OdzY=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 7:5XMn+KOVf/tn4rWB/rZyMQGQAY/Uaw4YbcxUnycJ7Ta6dkBbaLvI2UCJVrpIDND4BfIPF/sZhxGvu7cu84i6x0YnSNi5TdLPjiK5gT4mcPI0/V8zdJUjOcKl5Vni6qq/x0gDVbMFQt1CRA19IEPftZQtNzO5NdCk8pMQaSb+/AwD6nfdt5qqkXEtD/j9tweKPaCZHh+y4BWyum/oaas19o46RDSMhNkK0vBly3mIdWnKRXAxDQTQKZkR9rzApPgT
X-MS-Office365-Filtering-Correlation-Id: 356a0898-5fc8-43b6-5143-08d5a3644b11
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:49.1463 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 356a0898-5fc8-43b6-5143-08d5a3644b11
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2426
Subject: [Minios-devel] [PATCH v3 41/43] arm64: add mapping for GNT table
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW1wbGVtZW50IHRoZSBtYXBfZnJhbWVzKCksIGFuZCB1c2UgaXQgZm9yIHRoZSBHTlQgdGFibGUg
bWFwcGluZy4KClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5j
b20+Ci0tLQogYXJjaC9hcm0vbW0uYyAgICAgICAgIHwgNyArKysrKystCiBpbmNsdWRlL2FybS9h
cmNoX21tLmggfCAzICstLQogMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVs
ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbW0uYyBiL2FyY2gvYXJtL21tLmMKaW5k
ZXggZWI1OTA0Zi4uZmI5NTgzYiAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vbW0uYworKysgYi9hcmNo
L2FybS9tbS5jCkBAIC0zNTIsNiArMzUyLDExIEBAIHZvaWQgKm1hcF9mcmFtZXNfZXgoY29uc3Qg
dW5zaWduZWQgbG9uZyAqZiwgdW5zaWduZWQgbG9uZyBuLCB1bnNpZ25lZCBsb25nIHN0cmlkCiAg
ICAgcmV0dXJuICh2b2lkICopYWRkcjsKIH0KIAordm9pZCAqbWFwX2ZyYW1lcyh1bnNpZ25lZCBs
b25nICpmcmFtZXMsIHVuc2lnbmVkIGxvbmcgcGZuX251bSkKK3sKKyAgICByZXR1cm4gbWFwX2Zy
YW1lc19leChmcmFtZXMsIHBmbl9udW0sIDEsIDAsIDEsIERPTUlEX1NFTEYsIE5VTEwsIE1FTV9E
RUZfQVRUUik7Cit9CisKIHN0YXRpYyBscGFlX3QgKmdldF9wdGVwKHVuc2lnbmVkIGxvbmcgdmFk
ZHIpCiB7CiAgICAgbHBhZV90ICpwZ2QsICpwdWQsICpwbWQsICpwdGU7CkBAIC01MjcsNSArNTMy
LDUgQEAgZ3JhbnRfZW50cnlfdjFfdCAqYXJjaF9pbml0X2dudHRhYihpbnQgbnJfZ3JhbnRfZnJh
bWVzKQogICAgICAgICBCVUcoKTsKICAgICB9CiAKLSAgICByZXR1cm4gdG9fdmlydChnbnR0YWJf
dGFibGUpOworICAgIHJldHVybiBtYXBfZnJhbWVzKGZyYW1lcywgbnJfZ3JhbnRfZnJhbWVzKTsK
IH0KZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJtL2FyY2hfbW0uaCBiL2luY2x1ZGUvYXJtL2FyY2hf
bW0uaAppbmRleCAxNTAyNTlhLi40MTNiMTY3IDEwMDY0NAotLS0gYS9pbmNsdWRlL2FybS9hcmNo
X21tLmgKKysrIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCkBAIC01Nyw4ICs1Nyw3IEBAIGV4dGVy
biBwYWRkcl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0OwogI2RlZmluZSB2aXJ0dWFsX3RvX21m
bihfdmlydCkJICAgdmlydF90b19tZm4oX3ZpcnQpCiAKIHZvaWQgYXJjaF9tbV9wcmVpbml0KHZv
aWQgKmR0Yl9wb2ludGVyKTsKLS8vIEZJWE1FCi0jZGVmaW5lIG1hcF9mcmFtZXMoZiwgbikgKE5V
TEwpCit2b2lkICptYXBfZnJhbWVzKHVuc2lnbmVkIGxvbmcgKmZyYW1lcywgdW5zaWduZWQgbG9u
ZyBwZm5fbnVtKTsKIAogdm9pZCAqaW9yZW1hcChwYWRkcl90IGFkZHIsIHVuc2lnbmVkIGxvbmcg
c2l6ZSk7CiAKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMu
eGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3Rp
bmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:36:02 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:36:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xkA-0003Xw-Cy; Mon, 16 Apr 2018 06:36:02 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xk9-0003Xd-E7
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:36:01 +0000
X-Inumbo-ID: 4b62114c-4140-11e8-9728-bc764e045a96
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe09::60f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 4b62114c-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:35:03 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=8RroBkIU/AZeJy43i8ZLF7Q4Lzh2R0AycAalnh6k76Y=;
 b=Y3qncMrsTN5T1KLWP3D8CvDp69TAK5hDIkbm5e7LzsbkDjThxQ+OJhWyVBXUQ/RWOvth2VgIl09zhToCrZ58EA/rgeYvZ1g0Ar4iARmylKrhmgzMu95zFPpXeFdIqeaML8BF+BmYD8a4pbHQVdEVEWWAhlUWUNqAfYROYxEkP50=
Received: from DB6PR0801CA0065.eurprd08.prod.outlook.com (2603:10a6:4:2b::33)
 by DB5PR0801MB1589.eurprd08.prod.outlook.com (2603:10a6:0:3b::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.9; Mon, 16
 Apr 2018 06:35:52 +0000
Received: from VE1EUR03FT031.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::205) by DB6PR0801CA0065.outlook.office365.com
 (2603:10a6:4:2b::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:52 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT031.mail.protection.outlook.com (10.152.18.69) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:52 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:35:33 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:22 +0000
Message-ID: <1523860343-16382-43-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(396003)(376002)(39850400004)(346002)(2980300002)(438002)(199004)(189003)(39060400002)(476003)(5660300001)(8936002)(8676002)(2351001)(246002)(478600001)(72206003)(50226002)(26826003)(4326008)(47776003)(6916009)(104016004)(50466002)(106466001)(48376002)(8666007)(305945005)(6666003)(2906002)(76176011)(7696005)(51416003)(486006)(126002)(446003)(106002)(356003)(426003)(316002)(336012)(186003)(36756003)(86362001)(54906003)(16586007)(77096007)(26005)(11346002)(2616005)(59450400001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR0801MB1589; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT031;
 1:Xwb0b6c9Zomf4Z0gqt7aiWVupvceWdNQ80YH8NdVZmMiy/L41Y+M4ODfiiMUjHzdM5bI81c4JbO3gQr2vGsBJPReUmgMsLqiArGA9KlrkMJGoTHgnfgOVa2pa/yJ7zKk
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR0801MB1589; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 3:CunCxJeu7K53oBoFSiXTiFsPvY/y2m2HbCx845UW+w0NJ4oTngshJJWj6PF9tgnXAs0eg/tLLqvnNPfHxdP7bBe0I33DV8E0ANohTKE8mlhWjUXqYh5ArZlb0IQRiyExtR846UMXlW6/at7c9OTrg6Uh7F3B+xKRqYsgeLG9uRdiRLP2yuUSwONfM9pD7zMEcCHCQ9ALU7Z+FjZLXculg9VIy/t1PCF5hSbaYNAoBV3UnBL/nv5LVTgVPSZaFJW0XztviCoYz4dbfZDGuC6yLjgxD9H1khAFKixwlavxP9m+TwoeGE2RKjQVV+5U2YscdwjIxZD/JVV9FRGaLV3Mj3cinkW5VPtBN1mD/Cwl5cY=;
 25:JttTAGl9eggOqKO1B/KNbo+cgg6sIgoDKIR+qv5x0WJzo3sAnaVVOpty8veZHS7nAJPuDI1KrLJBlxuRI7WsIpB47TPgzpg1/lPWpjL8J7bFwtlB20GZAiEsgivZGcOGcSUJvjCwlaFz8Wc0j9V1xrNsJmxlIy00W2/W8Q2qbH28fQPSSrQtNTYchDC7mVigK21M4axyzlY7J8xjDTs7mpLXJFLrxTMIsNjHqwnKWRxqj9aa6XIDFf+/NzdxeATCCJR1vqe/ei7p/YrNPDzcLYMAwkNSvi7+Y2A0c2Ul5Clfw3DHVORPP0Cur8r3qiY8O3rLa2+T2K2q1fKaEPECFA==
X-MS-TrafficTypeDiagnostic: DB5PR0801MB1589:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 31:BPP7yGE1EUn81bofIQl4e0S8BiQteDI1fQecgve5kE34bKFWP95W+Q/ThhQVooYyLxneZ9ApTtSLCwyVE70FJ0c6NDYTW7IL92tJze23Dbbv20XDO0MieRuPjHwB9MTCq+78hzSLx+xWU+5aF7NE1aY215tQCZKOB64bGvNWrm+eaKqd9ftnnJUaTYhIw+N1zcXKIf+wnQFCvqdUh98JsfVDCQj4YNAEIEryNI3mwDA=;
 20:4iWpiJzB7LIYo5F7iuf6yCWx5xaPjnB4D63U7QfM3FW7rnvrhjbWwvFUojYz/Rl9/z8ONiOlFZ4reoxBw3zd1EFxIEwBmuJuPXpbvDPCCHXEYzsPCn6kJ/VzVZMbN+6ApRUwV2anYawtAmL3u/Fxw29k1+aEGp12c0ExN9xylSOfdabN4qC36P6XhcvIGvKO7d6KIcO1yZwRBVhMIna30+tRBoZ7sl6QMXbc9OwntWMlSoQxprAbEkU4TrZO7Gg7;
 4:h9vwYzWucr8zxfyVhkgrX36s1Uh9uBqmDameiiG2K6W4Ltt21rXCZcm+caRMzc1+4aQ5ycvviuYTZXVu7+GO677RVhEmrcOMRUDc7e2QMxA85XVwVuyY8PnJjZNWelIkr8GqBpKKikC3VE8X8db7QnPr2prRWjLm3sSpmhpF/1XzWt0izbDPsG7LSxplCUGOIH+cWKgPEk/6FK1XcX/b3YKO1dAtE1CrmxsVoLi1mB3T+xgNZGult6Kge5Sibgb7uIT3pcLETUC62FLh4UQfantHLkwwYR4zy9RS7BPDHfjTphyfpAd6NVHU7MQIFc71
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR0801MB1589CA5E9430325C8D72A93B84B00@DB5PR0801MB1589.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93004095)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:DB5PR0801MB1589; BCL:0; PCL:0; RULEID:; SRVR:DB5PR0801MB1589; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR0801MB1589;
 23:AGbF8vh9U7WSQjHTBAlMXaM4e3NUqM5PgqxTOpO?=
 =?us-ascii?Q?VcRYwLiQnGIIoPy+T3IUwtDXj2o1c2tX9sgGYmoI5SJHfnGvHWqKgyry8wez?=
 =?us-ascii?Q?3VQMAPj5qsr5uVVVXrmDaWe/J7g9JjAd93q0+pCtEXJUfETa3nhSX+0IgoPR?=
 =?us-ascii?Q?5CUzaguXz8AqGCc+wqZ8gSW808yaYm+8w6KnPddtXxVnRiN3Kf+rJZUYqci/?=
 =?us-ascii?Q?m0BtUv1fayLOzq7ALycbL4Cy54TyiuJtRyr1aaiviicE988XSJZuAB+YnL5D?=
 =?us-ascii?Q?yhCcrkli57WcUp3w2YTTBdAVGZukK8qU6l8r325DgXTNt7I9mdr+3G+at1cr?=
 =?us-ascii?Q?g8iX6xJIQpSskKGj4Yt38ex3KYmufjzhm4wfBS5FCEuCml9Xjx5ai9tWT6ft?=
 =?us-ascii?Q?kiqUXRHdFS9vd27Yrb2T+umTwSGapDCTSiNlUhdEmiF7yeCCvGU6AppdOX8p?=
 =?us-ascii?Q?4epkQI87UPe6gjyeeMBcDKg0bE2q9vK63ec37gyvziuiLgkouEjy2XBWUBTH?=
 =?us-ascii?Q?AnP/WujuEtBYCtS+0fbFZCRHPKLd1ZHWP1P4+H98vetk6Pzvebq2BnjMLKg5?=
 =?us-ascii?Q?fiVMsafQU8PXmoymNMn7IUK35n6DiRfZc0Ja4ALs3mxoZXqJl6SmQv091sSw?=
 =?us-ascii?Q?xwL1fSSjE1UDyRs+yGQO2prs7cU5k06VCJ8wz/F8L3ThPTJfZKg4Z1PmIRdJ?=
 =?us-ascii?Q?Tb56f8JhPiSbQd+NfMjsMY+KpzFkqmbI4ATDfs+GsWvF5xjdQ/32iS2k0fik?=
 =?us-ascii?Q?nE0hY7e53EU/Edg7s1onnDON66p4OFja8cXAbO+/oQB+jabIsL463uYJ8CRU?=
 =?us-ascii?Q?L+3NcZwJEU1jBrOBMKjKllLQ4peYf0cTgFxsNXxwp8BumgktrBz8RRn5R3hB?=
 =?us-ascii?Q?Ys2j8254duV9+ITd0oDIyIQWSuY+sfhSQFAYmovDQAD8IQWzRr1JM5Dty1c7?=
 =?us-ascii?Q?S3ap9LkCINB8mTz6DG3jQU328Ad2YBlOto1CuXw/zjIEF+O8FXsZKS6o18b9?=
 =?us-ascii?Q?txe76DJXDDRM0pY5W70DqZpZTLyBwmWkUIxZ2wlbM59QAKGxqXIfb3HfDSRt?=
 =?us-ascii?Q?LroW46h48Zw2ucP6mSBx0+7rJ2Jrk97G8eab3wjKX0ITxK7vGkRz9DWSjayC?=
 =?us-ascii?Q?4IGiqMYedRi7xSvXrmDbFkCu7wIfo3tCwYAztPr2rzL31DLSS8w9iJw=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: tc8S1o4R7VCL01yHmkOa7+OkTC9ua6IT1gfinJf5s0W6holELC0MvlKp/pFFe3tmjroMEqsBpANp+p8XTOLOr8Au9TY5z9Of5Ks08VQ/qS/MD8VpAnFC8iYZQa2Q+IIOwg8dSU0L7IlMnvbQhxjAZg1p051ldbHXvtrebk500pC/160pgBbzUZhh/iPVuD/jKoOSuOkh3FNdZjT29JkPebjQUZT1cysCFFUXDXMEUro2cO80NomzpRDdyNw46a8+wJ0SJPvQfV4isF/N8ZyU3lJr2E836/IWWW8Gc02MhMzJ3HqeKxfEEoWYxt3zGFPXdbypcjM1YK/ONN5Zhka4REsaK9+MId929hNYo2n42DNcjBHSPhs6XrRo8887bCDx+pxyzNwbpf6Vu8XGCz9PJBH+l6Eaw/3JZfBQYeIYos8=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 6:zAX2w8TkZFF9r1zOk8P5kRMUF8KA+jXmHuuV+WPrXIQbXpJfV2E5DSxL632XuJUW74ePZMvmfXJh5JL8cb2J4y1nVxoiCM+zpzNOOpjV//5SyMFEnmy47sLv+it6+kT5jzjRV7JdBDNGpD/b7kd/xCh9kjF6To1g5rD+/R0VUWV+ewslzNr/KVuepdCoqrCPV8edB7TKnLP/ozwHPJQb0fYJJYf8yBRQzh8ubeA7qc9mGYs3qM261Z+Hs2C6vaDC6PtQZzsx9t0TbCrjHJtEn/zkG4jrglo4TDPIaCSAD9ZFeRBOrUCdFcWdnEQPjtlYAx8wyAj7vH31jnqFzOxc9ikaHJAu4u/OI32KyWRq84KLccAwnf4/Xp9cfAqO9YVaDkA0xCYhdPfm4AjntDX7pgUbta8dhvTy1IG3HwfZOoKFLpv6RCP57w++LRK6hyulzuubhb6uao01ENMtNd8TNcH6HucvFIqLuek2IdtsLWRbdKj7nD1vecxdv/aZ6Fzu;
 5:qakzsxRXKAtDORxpE+ytjMx2GY41GGw6vhLCBupJvAKrqjsaNHVyPvtfkjhlTAmfyew9N0FVbr0HmNr1gQOfZBN/cZnv9lU54NGZkJ3i7ddDSAxfG61VNNqi1Aq+A0W0xAGiZL7aJdUVW1b4VJUcLCRPMZra3ZvlK6DayUxrPW8=;
 24:lmK5CGlTQW7XnexDhrqiS1qy2ESMZWG1WMYB8y3P7wNzqgqkfGG3mk1uJ04Ys7eE/bFqmcgCELKzMpTbqIe7N1Uo35tviej5+LUdn5oxEcY=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 7:sevewDBMseQiD/m3LedF0bnwYwhOURuJJBoVtff4XuIhim8KWh4ZO84uHoStTxYMBptGK228bvQilbNaCCqeGDdIzI89UFVJPWGd4o4zLLtpfIg2D2nzBmvAiJLYoeEywRGuRn4S0nGmIuPvvEaqvSPST12bsOEhm4WwuUXvs9tizue4C8owKiKfSAd5Kg91NwZd7eHmgePARGKTQd1lVGwQUqFqac4d3YUYpwZO+xUZCG1AWdmzRVypb1ephjTY
X-MS-Office365-Filtering-Correlation-Id: 5c2fd187-2542-496b-3f0a-08d5a3644cd4
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:52.1172 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5c2fd187-2542-496b-3f0a-08d5a3644cd4
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB1589
Subject: [Minios-devel] [PATCH v3 42/43] arm64: add dummy
 arch_suspend_gnttab/arch_resume_gnttab
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIGR1bW15IGFyY2hfc3VzcGVuZF9nbnR0YWIvYXJjaF9yZXN1bWVfZ250dGFiIGZvciBhcm02
NC4KClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0t
LQogYXJjaC9hcm0vbW0uYyB8IDcgKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9u
cygrKQoKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21tLmMgYi9hcmNoL2FybS9tbS5jCmluZGV4IGZi
OTU4M2IuLjkyYWM1OTkgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL21tLmMKKysrIGIvYXJjaC9hcm0v
bW0uYwpAQCAtNTM0LDMgKzUzNCwxMCBAQCBncmFudF9lbnRyeV92MV90ICphcmNoX2luaXRfZ250
dGFiKGludCBucl9ncmFudF9mcmFtZXMpCiAKICAgICByZXR1cm4gbWFwX2ZyYW1lcyhmcmFtZXMs
IG5yX2dyYW50X2ZyYW1lcyk7CiB9CisKK3ZvaWQgYXJjaF9zdXNwZW5kX2dudHRhYihncmFudF9l
bnRyeV92MV90ICpnbnR0YWJfdGFibGUsIGludCBucl9ncmFudF9mcmFtZXMpCit7Cit9Cit2b2lk
IGFyY2hfcmVzdW1lX2dudHRhYihncmFudF9lbnRyeV92MV90ICpnbnR0YWJfdGFibGUsIGludCBu
cl9ncmFudF9mcmFtZXMpCit7Cit9Ci0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9z
LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcv
bWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:36:02 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:36:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xkA-0003Y5-F4; Mon, 16 Apr 2018 06:36:02 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xk9-0003Xm-LO
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:36:01 +0000
X-Inumbo-ID: af6f68ff-4140-11e8-8249-2fda3a446a53
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [40.107.4.69]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id af6f68ff-4140-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 06:37:51 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=aFJpayhqh2tz+8DQa9rMXoKScsfzI55+u8Ex9Xs8f4I=;
 b=iFvRvsV06xMLL0gtTXhplxnQ0kaGlDkk88/GzAlsjkepdlmYBS2yyUSRsKA34y/6oNWyAW/xcHoVyNNlyiylpTQdn5Ncm+6hMoPjkVWWL1fUpb3YVivpL9CbsDCxnsvy33yZZZvqMOzVN3LWQxoxFL0j7lwrHfPoagU0AQEMJj0=
Received: from HE1PR08CA0060.eurprd08.prod.outlook.com (2603:10a6:7:2a::31) by
 DB6PR0802MB2421.eurprd08.prod.outlook.com (2603:10a6:4:9f::22) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:35:55 +0000
Received: from VE1EUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::206) by HE1PR08CA0060.outlook.office365.com
 (2603:10a6:7:2a::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:54 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT025.mail.protection.outlook.com (10.152.18.74) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:54 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:35:37 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:23 +0000
Message-ID: <1523860343-16382-44-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(376002)(346002)(39850400004)(396003)(2980300002)(438002)(189003)(199004)(4326008)(6916009)(486006)(50226002)(186003)(305945005)(426003)(336012)(8676002)(2906002)(446003)(316002)(11346002)(476003)(2616005)(126002)(54906003)(16586007)(86362001)(106466001)(77096007)(59450400001)(26005)(72206003)(2351001)(26826003)(7696005)(5660300001)(51416003)(39060400002)(356003)(76176011)(48376002)(47776003)(106002)(104016004)(50466002)(8936002)(6666003)(246002)(478600001)(8666007)(36756003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2421; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT025;
 1:U/DnRzR8+RtWAQMlY7KPTD3IOke9/WCdczBwmCSmGi8aJfnVMcgwHmHzBeBfqHaoj+Nn2uT0gQfXu0zYaPIc42cK8xLzHAmIQLLuTQqpA5mXnwcWW6T5ZO078wn6kkVx
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2421; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 3:VZCFBTE4GcmpdqffVmt3Dl0X2U0fLs+3Jeiwn/uavLjVUV3dy62KzSPMpJjtlo5bqHcrie1HRH6C39URibYv3S8UW1/VQYI1fGbOCGdj/z+5wm2tFdkvj5UGxYxJN2v6Hhouj0MEoUH5UWe3QYYwQgLc5qyExUkLKgzMkmU7svhXxRVsO0yKdgt540s7TY3frJeD6gobGSIfAj2EhU5FrI43O0q8siJYrvqbiUbGrYrqzrFHA8N7fhasAHHox7elpX8s66//D6Bb6QEmtEjX2LZ+m2VRt8T6tZV3+MOmRtxkJcdGSEJ35cHRidu1SRvzhcHoslzlKNbO/WPgLLOzFbLLQgnk0CVM1Mci1NWF4/E=;
 25:EGeFOZrA5fyqQPmr8idTzjsLjCXb226dVgU4l/JvF8HagGvZJJ4fO7FeSqTD94B9R5ylMlOWZx4WDuq27OWvzF1JkEpNMr1Wwo2WPYGxHsmbXup8+fJM3Vxa0YLbYiUWndNPksfI0r92YuvUfqZTQbBvmngsdsjqDbevgJ7JYsm3Zb/ShV8v/3lvsCTkL4Hlthxi9bcGVTKUfrDappe8mf9Xt2wIMSVHp8a0uVSX47R/zNX9lbooydXpX1RlqCAFCU1xaX5/2d0RX8Q3UEogi1acnOXu2fg7QriDvA/gFSsiaAOsPAb+rNGMQ66ZvLsfLiO5ysLcGg4r97NdrL4ArQ==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2421:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 31:LViXzEhmLNHIDf8ENI4OWFjJWNS/nIhpZucPGZIq2Klp1YytMPYgGTlbkuw6pSvb15rKYD9+yxb2dpOVVH5mnHD+9cLT7PxyP3x8fggzu55GYt5bKk27L5iM/jqrB9Rd8uI0zEHB/EIThVZap+Hb9lVDkmlccJAG1EyUrpcnxnnKqP+WtwpnST2YdqNXNMuC6Lkaz2UTqzwgsinjuWti1+ELyz406aWnJ5lfPzYhPUU=;
 20:BTBQjgMNC6QKFW039kOhnadIvp+I+62pbaAzJm4y8xpb8XrYBtVg2IOAoSqb0YyCvQzvImGwChan3aGUsuLO1Y+kB2dck1sGyEaeKMkPGO3ZDtnYbRRp+aG4LsClG1fYAGdxrU7lKnt1+LVxzqXcmfqEMyUd4nodYY1FdLwrhuGzCNKBPHqjvlLDV7/SUIsYqCoR31AaFF7kj8CY+q2ZKGH6JOkMzf+ALtg0dyyONa/56xxLYCZPkXGs97B4lp70;
 4:iypGdmM0LDNLFHLqEvAtMpS7SjAHsh5M30BAbrlQ54/yQUhuHWZ8E15GWvvzKl2HhGJ6zJ4sqVzkQSj8lZP2CnjRrr4Bpi4k9Nv4V0ZKN3GihyAB8ovGKPFyBeEXWb4uLueEV76Y5A5XozMzh0rl1qYlMM9wjDzRtD1/Hy3qL8gDHGxKRdmeded3kekB5Vi5lJoe9NVY6eA+Zzir1DKb/PdCXF4YsXhu55qi/rp0OHlJ0UwBNeDl1BP4snYhDcYuDn3gqIfhRAUCWc/OHagQuQ0RqEW3HmDmeREnfddj9F51GPZd0ubfAqeEDVxndJD3
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB2421C46F7A80DD6988319EDD84B00@DB6PR0802MB2421.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2421; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2421; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0802MB2421;
 23:1WSEdyID8xkxpObhlgg7zyk6p5DECuovP2OzaX3?=
 =?us-ascii?Q?79jxgc1WwWNGPJNJyw31pi6t2zanma+Eb3z8OFFu2krMvxMU7UxJYsPFKaco?=
 =?us-ascii?Q?Gpi7GIxd7KQnLJfxaOvSlJ6AcC4UGVyMRw/rVpX5lYmWz+l2MR7uQ+cLAk4U?=
 =?us-ascii?Q?/nptHPPwH0MGEuuNh6E7HdURtsgyEqZtiJkIL8Cs4X3S2SgQ06NTy3kUOCtW?=
 =?us-ascii?Q?C+F6+Cc4AfBBUoJX6V7tGPM+lpNTR3349wh6vZCCQyahdsm4zG35qEr6aJmc?=
 =?us-ascii?Q?FWZSOHBHL2YQ5bcPdU6PJICeSXLsXDYXsyfEiKH8x7sthCqWBFp7ur8DAER6?=
 =?us-ascii?Q?APRsO36BxyB5OWQzhDKF5SSQ5wam4ktXOURSOBC5mOlUtoKco5CSIjWrDuIx?=
 =?us-ascii?Q?HArBMjXaTAa32jZlxKdK36WQFuQ0uYtJHFVy1ZovZIHLEbqi0T0pTm7GgJti?=
 =?us-ascii?Q?kGe7swUHpDCSwS2GBUg9PDr/wAyPv6LpmBmA4i65yUNvufeIUo2gryUZNQP7?=
 =?us-ascii?Q?D5RbDiYA6CPp0J1EMqAn5h1WOC4Neso/bUZGwsr+o/gkgP0HWILxZoNKy9n0?=
 =?us-ascii?Q?dYV6B+OZIQa7sWl6aEyzb5Ah7ABFZ4N3KKrBjCK8vyyR5N6fi9564dxdGR5A?=
 =?us-ascii?Q?5mbZqV0Yu1n99JMrrnSJuWQUN1HfkkJNpsJwflAr8fgt3JpjAuJmhu2qtpjM?=
 =?us-ascii?Q?/NdzjtzViwmdXxCrnvzMHlWXVLYilz/BBIXOsinXAam0RGPa6kHWmNgYR+Po?=
 =?us-ascii?Q?Y9NN3h/bNTIvEqgpfmq33CV0huOOyFk9re78NaFXfooRi7c+8wKAvnzQa/RS?=
 =?us-ascii?Q?6+C/h50jopb+ioPVCJvlpr1M47X50ZbE//cDECn/2T12xIz5DqBlqoCUY5ij?=
 =?us-ascii?Q?CmtsW1b+1/1nxylk05oeEFSJ6FaukjUVasYi1K1Zp2hiSMXhSLRmYbFXg7J5?=
 =?us-ascii?Q?EMgFfZy3K+yczASnCGlxoAvYmIZLNuRMoPvcTg3zvwKTch9smzUCKBsrTw1Q?=
 =?us-ascii?Q?mudkJIv6KWHWImJfOXVkPNKSbHdpfNdr3nLzfGQqm6627w+9IYK/6GRPMeOp?=
 =?us-ascii?Q?ehgOuY8j24GPIsNPCD4amrwIxY+oChEqLZ3FW6Xm1B+szAld3YNIhf5tNrMW?=
 =?us-ascii?Q?P2ECIWL+hGyoNjCI75fPh9Zeijwz1vGZ5t3p+M1Sm1lctFKE8xYbPnA=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Antispam-Message-Info: SfpOxtiFskNgBV1YjfjnnvFjd6qZEkQt/gmz4C/wMMc+869qbFg6d4rEHy8bWdQ83fiM9ScNB4yQtCicbtArNMtJOHoW3MiOdrF2l093AHA6XYlEoPKKjgHQpLfr+PxeinjPh9GDHpV6hsoKAldyX15nGp8fsepY6d6uVOp7Ws9XJrF5NftItUPgMFo1QtALNVhx0LO//hykz6vtbtw6TUT1ZXya53cSo+4MbvF1Ry/RoDekDSY5Kp+dLr4sLnqVUYHUyvJkZiOctCtXR0Ek3s42Q502N8nYeYZrvpVV4sjHxQGSitLpnbirbTezQGXYAhQx1A5l1NvA543g4NyZ7yA2o5t7ELriJTcGeZna5nxb54EvcGS1Qbf15d0dCQW+QfqlFwJFDClBfuPLl4Y2/beUt+kh4oHdcRnqikAb+qs=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 6:VJRb6y7I5rfv0qLAnpjxpSKMHj8QbCegq3ob9OV0kNxU1aW5VNRaq0wR/34eISGI4LiYKWqxaR7xpZWGfP7tgJVhbVq7ruZ6WcCvyZkQzyXt+GcHOnzByv8bnzPgMI1HnA3zKcYLuXnurvQfo1TFTKGvznqueAJ0J8l3/IpCFH8zMgAxiO/4YgocCHWffWGyjp/UDES+KK4TUOXGHdIXGkLoHQ5oao1uBYFA8stIoK63wgSxsigvs8z/T+han+kfEWuJ8f0xhD8vSuRhe1k1CTUOGydwT4TdNlSKtCUWl5t3VZ/dXT/NMVNUze0nONCtq0Nx4sFgm3hNFHy5ic16V1HHWiTy8sk5Ny2eLHIx5q2clubzLC3xjIf8LaKVnMkBbladrq2XTeEsJ1vK5qtWnPl+4z3aw9AIN6JCqvUILnvvu9L7Vd3QGPQNY4gGFjUW2nB/wyRQeaxHABT/LRu/UIJWHJ8+Gm8Di4HggKtXPFrqz7dVLDyMqBQi8F0Oy02A;
 5:NZYmt4kKu3F8uaQcLUe9CGeTZ+Qc9RI9JI6rvgPwH+fPclxGE4YJbUmjbC9NdxoQfKANXKCqv7JjSjyq6b0rXRItSWUIwjKgxiOXkcMktf9ZzA7s4Wnoq/Mxf897cK4uzTYDE231QwbLwwEzy3ai/MMRf0tDLA7kuN/diMDm1dw=;
 24:qUpglb09pmB4saDysUTSG9mMwfI9cYxSuqhXd90aNDRhKUtZ3IE4F0V6QrriXpA86i4W9X73wpTS/rb4/+cB1uULdJZUW4Bx+tvFKsAAja0=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 7:4Pw+2CETpBdWCTAtwp3RL3GaoVHFwUF0LbI4cxFg9e9ce9LcZdZNnLmQDWmUc5+3SQshdMPSd68dFP6R6e0t1gKujKzNOO6Tvc0lAmmRVkcxC82UGdIisCmkNYBwA41a/z9BqDDWv1COg5dAQZdTCMqOGQM9+S2D5h1Nn5mWWG8nXGOCXCfauhYOdJhPUr7vPWbZFiYfODaTB71HjK8hSL5eLPSa2ALb6NX2pBzwHttm/LPhWpGbQV6XTG+w84Al
X-MS-Office365-Filtering-Correlation-Id: 790df2c1-ed46-47b4-15d6-08d5a3644e42
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:54.4991 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 790df2c1-ed46-47b4-15d6-08d5a3644e42
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2421
Subject: [Minios-devel] [PATCH v3 43/43] mini-os: refactor the shutdown
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIHN0YXJ0X2luZm9fdCBpcyBvbmx5IGRlZmluZWQgd2hlbiBYRU5fSEFWRV9QVl9HVUVTVF9F
TlRSWSBpcwppcyB0cnVlLgoKQnV0IHRoZSBhcm0gZG9lcyBub3Qgc3VwcG9ydCBYRU5fSEFWRV9Q
Vl9HVUVTVF9FTlRSWS4KSXQgYnJpbmdzIGNvbXBpbGVyIGVycm9ycyB3aGVuIGNvbXBpbGluZyB0
aGUgbWluaW9zIGZvciBhcm02NC4KClRoaXMgcGF0Y2ggZG9lcyBzb21lIHJlZmFjdG9yIHRvIHRo
ZSBzaHV0ZG93biBjb2RlOgogIDEuKSBjaGFuZ2UgdGhlIHBhcmFtZXRlciB0byAidm9pZCAqIiBm
b3IgaW5pdF9zaHV0ZG93bigpCiAgMi4pIFVzZSBYRU5fSEFWRV9QVl9HVUVTVF9FTlRSWSBtYWNy
byB0byBndWFyZCB0aGUKICAgICAga2VybmVsX3N1c3BlbmQoKS9zdGFydF9pbmZvX3B0ci4KClNp
Z25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Ci0tLQogYXJj
aC9hcm0vc2V0dXAuYyAgIHwgIDIgKy0KIGluY2x1ZGUvc2h1dGRvd24uaCB8ICAyICstCiBrZXJu
ZWwuYyAgICAgICAgICAgfCAgMiArLQogc2h1dGRvd24uYyAgICAgICAgIHwgMjAgKysrKysrKysr
KysrKysrKy0tLS0KIDQgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlv
bnMoLSkKCmRpZmYgLS1naXQgYS9hcmNoL2FybS9zZXR1cC5jIGIvYXJjaC9hcm0vc2V0dXAuYwpp
bmRleCBhYjgyZWRhLi44ZTQ4ZjczIDEwMDY0NAotLS0gYS9hcmNoL2FybS9zZXR1cC5jCisrKyBi
L2FyY2gvYXJtL3NldHVwLmMKQEAgLTQ4LDcgKzQ4LDcgQEAgdm9pZCBhcmNoX2luaXQodm9pZCAq
ZHRiX3BvaW50ZXIsIHBhZGRyX3QgcGh5c2ljYWxfb2Zmc2V0KQogCiAgICAgZ2ljX2luaXQoKTsK
IAotICAgIHN0YXJ0X2tlcm5lbCgpOworICAgIHN0YXJ0X2tlcm5lbChOVUxMKTsKIH0KIAogdm9p
ZApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9zaHV0ZG93bi5oIGIvaW5jbHVkZS9zaHV0ZG93bi5oCmlu
ZGV4IDg4OTkzY2IuLjgxNmU2NmQgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvc2h1dGRvd24uaAorKysg
Yi9pbmNsdWRlL3NodXRkb3duLmgKQEAgLTMsNyArMyw3IEBACiAKICNpbmNsdWRlIDxtaW5pLW9z
L2h5cGVydmlzb3IuaD4KIAotdm9pZCBpbml0X3NodXRkb3duKHN0YXJ0X2luZm9fdCAqc2kpOwor
dm9pZCBpbml0X3NodXRkb3duKHZvaWQgKnNpKTsKIHZvaWQgZmluaV9zaHV0ZG93bih2b2lkKTsK
IHZvaWQga2VybmVsX3N1c3BlbmQodm9pZCk7CiAKZGlmZiAtLWdpdCBhL2tlcm5lbC5jIGIva2Vy
bmVsLmMKaW5kZXggMzAxMjczZC4uYWI2Y2E4MiAxMDA2NDQKLS0tIGEva2VybmVsLmMKKysrIGIv
a2VybmVsLmMKQEAgLTEwNyw3ICsxMDcsNyBAQCB2b2lkIHN0YXJ0X2tlcm5lbCh2b2lkKiBwYXIp
CiAKICNpZmRlZiBDT05GSUdfWEVOQlVTCiAgICAgLyogSW5pdCBzaHV0ZG93biB0aHJlYWQgKi8K
LSAgICBpbml0X3NodXRkb3duKChzdGFydF9pbmZvX3QgKilwYXIpOworICAgIGluaXRfc2h1dGRv
d24ocGFyKTsKICNlbmRpZgogCiAgICAgLyogQ2FsbCAocG9zc2libHkgb3ZlcnJpZGRlbikgYXBw
X21haW4oKSAqLwpkaWZmIC0tZ2l0IGEvc2h1dGRvd24uYyBiL3NodXRkb3duLmMKaW5kZXggYzdj
OTJjYi4uODFkODlmZCAxMDA2NDQKLS0tIGEvc2h1dGRvd24uYworKysgYi9zaHV0ZG93bi5jCkBA
IC00Niw3ICs0Niw2IEBACiAjaW5jbHVkZSA8bWluaS1vcy94bWFsbG9jLmg+CiAKIAotc3RhdGlj
IHN0YXJ0X2luZm9fdCAqc3RhcnRfaW5mb19wdHI7CiAKICNpZmRlZiBDT05GSUdfWEVOQlVTCiBz
dGF0aWMgY29uc3QgY2hhciAqcGF0aCA9ICJjb250cm9sL3NodXRkb3duIjsKQEAgLTExMSw5ICsx
MTAsMTUgQEAgc3RhdGljIHZvaWQgc2h1dGRvd25fdGhyZWFkKHZvaWQgKnApCiAgICAgfQogfQog
Ci12b2lkIGluaXRfc2h1dGRvd24oc3RhcnRfaW5mb190ICpzaSkKKyNpZmRlZiBYRU5fSEFWRV9Q
Vl9HVUVTVF9FTlRSWQorc3RhdGljIHN0YXJ0X2luZm9fdCAqc3RhcnRfaW5mb19wdHI7CisjZW5k
aWYKKwordm9pZCBpbml0X3NodXRkb3duKHZvaWQgKnNpKQogewotICAgIHN0YXJ0X2luZm9fcHRy
ID0gc2k7CisjaWZkZWYgWEVOX0hBVkVfUFZfR1VFU1RfRU5UUlkKKyAgICBzdGFydF9pbmZvX3B0
ciA9IChzdGFydF9pbmZvX3QgKilzaTsKKyNlbmRpZgogCiAgICAgZW5kX3NodXRkb3duX3RocmVh
ZCA9IDA7CiAgICAgY3JlYXRlX3RocmVhZCgic2h1dGRvd24iLCBzaHV0ZG93bl90aHJlYWQsIE5V
TEwpOwpAQCAtMTMxLDggKzEzNiw4IEBAIHZvaWQgZmluaV9zaHV0ZG93bih2b2lkKQogICAgICAg
ICBkb19leGl0KCk7CiAgICAgfQogfQotI2VuZGlmCiAKKyNpZmRlZiBYRU5fSEFWRV9QVl9HVUVT
VF9FTlRSWQogdm9pZCBrZXJuZWxfc3VzcGVuZCh2b2lkKQogewogICAgIGludCByYzsKQEAgLTE1
NywzICsxNjIsMTAgQEAgdm9pZCBrZXJuZWxfc3VzcGVuZCh2b2lkKQogICAgICAgICBwcmludGso
Ik1pbmlPUyByZXN1bWVkIGZyb20gc3VzcGVuZCFcbiIpOwogICAgIH0KIH0KKyNlbHNlCit2b2lk
IGtlcm5lbF9zdXNwZW5kKHZvaWQpCit7Cit9CisjZW5kaWYKKworI2VuZGlmCi0tIAoyLjcuNAoK
Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1k
ZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBz
Oi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 06:36:06 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 06:36:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f7xkE-0003Zt-IQ; Mon, 16 Apr 2018 06:36:06 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=g19d=hf=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f7xkC-0003Z8-Mx
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 06:36:05 +0000
X-Inumbo-ID: 46d4154d-4140-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::610])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 46d4154d-4140-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 08:34:56 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=B1CHIcNzaUap+Yq5i/1Ew/fNU5Tar2z3CjNBDaxzwyI=;
 b=r3JYqbd777klN53BRK7gi7NOS9v/ctvKp6dCU6FY5GWNpKPRa1TjIaNHP+O8ZlwUU1td8PW6c8r65gxuzKTEtKpr1AcmyZ7uSISL5nk0nBKZbs3lRHQIrIa20M5PldfSLkau7rSzIfj4inFBAfl4oXF7Bgn8YlvEIm6WXwQ5NQU=
Received: from DB6PR0801CA0049.eurprd08.prod.outlook.com (2603:10a6:4:2b::17)
 by DB6PR0802MB2424.eurprd08.prod.outlook.com (2603:10a6:4:a0::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 06:35:43 +0000
Received: from VE1EUR03FT031.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by DB6PR0801CA0049.outlook.office365.com
 (2603:10a6:4:2b::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 06:35:43 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT031.mail.protection.outlook.com (10.152.18.69) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 06:35:43 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 16 Apr 2018
 07:35:23 +0100
From: Huang Shijie <shijie.huang@arm.com>
To: <wei.liu2@citrix.com>
Date: Mon, 16 Apr 2018 06:32:20 +0000
Message-ID: <1523860343-16382-41-git-send-email-shijie.huang@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(346002)(39850400004)(396003)(39380400002)(2980300002)(438002)(199004)(189003)(5660300001)(6916009)(51416003)(106002)(76176011)(305945005)(4326008)(186003)(36756003)(50466002)(48376002)(7696005)(54906003)(77096007)(2351001)(26005)(316002)(16586007)(486006)(106466001)(59450400001)(336012)(104016004)(476003)(2616005)(11346002)(47776003)(446003)(126002)(426003)(8936002)(50226002)(478600001)(8676002)(39060400002)(26826003)(2906002)(16200700003)(53946003)(72206003)(246002)(86362001)(356003)(8666007)(2004002)(579004)(569006);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2424; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT031;
 1:jFpQMkPlwBoG7JqLZQNY/HKeqSOH0ToYZzGFLynp891EFmT/TRr6KKN7NpEiacOJei9AaiIwfWa097TUQ75tZpEE4NhEdnwMlil+ObuhNg0WSRCI2axUVgYWXcwa2AIz
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2424; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 3:zRvcMj6IVjErJudZv5fDa/XXAm1DAoLAXqjoU7nqkrAi+FdyBvJlxiWcXIwxQb+JTbyGaN6h0Fc6YVxKsdyXmazmaUTSx4nt1Rl+OSDeab7KPUAC+rg5KWQO29EU5R8PbjvlImS1ItvjRIza4EjNcPRBfbQpCroS2cVgyi/TsQ3sxqwwoWrqNR8/2xEdAreMbKLECo+LeHQTKGkPcQueLxUh0IglOBKGVhq9bN7cao/rSbCkFCFfM611Vtgi5v6UQlK4qmLPO9lNvDaSycRYYcS/Ax6oMCXgfWqP3eUiig7iqb2l3t4hnchuHhPZ9fdBgHKgNm9xo3x/pR1zPKJtdz+/FKLt0K+XPQ9mfkaQyA4=;
 25:AJwow3/LzP017qOnSCaaXw6v/a3S5UVlVydr5dwzujwoLtuCsLRubv2ODHEwUFswQcegR0ESHZ72ODwWgS3yZt2fgAKPIynBU18sb8NfIOfiE5HSUy4O4GtrCuprP5gV7lqeK1v1Ybh9eVoOCLVXXJ/HM5prsfaiJG8vwn7NAILlcoj2RPVlHxaCTg1XVmXqbgHB+XNTuvwI+kD1J5fZuJEyO6H7jF5DeRWvw2kcdlFE4rt4o+m237btMrf6FRAFsSg1DzHQeTfTkoByXXaRK63nkaGvH+NXdRwfcG8YC1zDGtHDxsUXrHjnG5w9ROmxnwve72oLQHVztDMJzieyPg==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2424:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 31:SbSD297hPiRlxW2MZanF9PeU9quFHFC9oXkf2NjuBy6J0YwxFxwa5GMfL/nH3GIgqL/Eo7qvzaV4f1EzGebLXd4VuASm/1YVCA9RzMsBln3T1hQ96cM1EZxK3y0dQ8fbqYC9zosHgPvd1j5glP29TwV1Q0RilJsWf3agIJDgopoDPHGBVuLxKYJzi4AFpsAqgnXTmd0ujE2nwBHEwlf2ESQtNIePvpgOwwOO1DRiTS8=;
 20:TPAe4Q83exMmmLLzxoNX3N8/Py4G6vZTULFZbinSEydiC2NQNc+OWEnxibZH5rMZM4d/LyOLvc/oPYULc3qzriVAG2al+prrARdBgPivsxDECBf7IZvfbeGEpCmyIXkWBEB4aQFcyVzdBQpxtipWltfarSyKR/0BNDkd7zFUi9npxR4xKl5BNzaOZtyd2MpdjQIy9pnpLhbudi2RZ3HSDErkJgeoSqpbL0QEtheKDdpdPsm7ktfC/sEWCgURBxFu;
 4:Knvz8T/Jb8/bnm3MPifUFoJNApC9rFKltyoN+PXGTQfP+UndqGFzKV/dlZ51an2MA36sbZruAYXr+XpaWddPqB94wZ1vVMjloK2tqU+oIdNvOHstxhPeNaRMfh6kEevrkQKgB9fvWByXPwOy81KWWuLf9UBrEcTw0keQ5hfGwT4qvtM/UtJ2t/WYnyDZjvv7RbyFakUsTIohrNMZliWOo3yBigIJsISEntzehHkYOIvDeKmAG0JcGfABPn+xx1MyW8xGDV8foIUuE8bDpT2bVYpV5u1bGfuoU7NrhrIrvXKj/vf66qiyW5m+MXaM1UHBbCFXQQaSQCQEoPeSl47gQusfJBB0J1j9BSwA44B+6jwA1NGeQ1+/0JxiYplG/h6MD8klx6O6y81xEQNie0v0QBs46tlC0ru8TtKN0umsNqc=
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB24248475BA939AA38967CD2E84B00@DB6PR0802MB2424.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(131327999870524)(788757137089)(84791874153150); 
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(3002001)(10201501046)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2424; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2424; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0802MB2424;
 23:YX4yLXocSgrtm2o9ymZfq1I6Ev4lCLKMqjnHEKP?=
 =?us-ascii?Q?bqfyPTBm5jKHXFXbJX9G5KFISF5rj1NaUjfTunf6tECQ63VD8kZIYQlZXPJ2?=
 =?us-ascii?Q?U9uNNCl72iDwjy6M6DW71iZvU9IGf1rET/o4J+S8oEDJSOCSrja9t5u2Mqej?=
 =?us-ascii?Q?SFpoEkeH2TZYRWFbozTNPAsOWCzprLaR9rhqo2YdbySIynVe0xPrUs7cD/D1?=
 =?us-ascii?Q?vsONg4IVsSFg7ORSB5n449CjT+1jnHqfDDZ5yVa4BiCj8CTWkzTnNc8m/eaa?=
 =?us-ascii?Q?abanp1fJbK/ObB2IJSdBRfzlxhRA62Ytdf565uykmd2DWMJcd11+NfaYrgk4?=
 =?us-ascii?Q?RhzpHtNcrQ99auLxTFoc7c0yCRRejUeHf6r8yulraCSohSonvGAwWyAQmzD3?=
 =?us-ascii?Q?F+1E2t+/SfICcGa2mUv0VywlMrZV2x3/voKWOA6e7bmlwa/xmxI/GBU/+u/4?=
 =?us-ascii?Q?+G1tLf6EmmL1uebhgiFpcwMX+aIGK0N2F1Hjk2EaKwBWJ+jzVoRxSowIJZ3O?=
 =?us-ascii?Q?KkFGaLrgRJktQJY8lpmKjtQIYDQGIMjg4qApO4EWSzC67WG4OPuw3AACfUcA?=
 =?us-ascii?Q?zghxEL7FQCgq/qkfzzNCONddgSRxpj98bOT1VewTmZkCEzFH5y3SXdsClhos?=
 =?us-ascii?Q?0B7llmkwRa2jiHri+HMn9BSxJS2jknItK+nXkhV2NI/yGrM8qhV+qZ/r5/Kc?=
 =?us-ascii?Q?eh1JxtdsX9iZ7duZMbKh1vbmn2Fh3HDfWHHIvnpahdqZS/I1yWeYN1Z4+lro?=
 =?us-ascii?Q?rNSPAxREedloYAkBwCBJqHKyLR7CMvOqj4ttQ0KLgcJqNS5NH8FFkp/TDSkS?=
 =?us-ascii?Q?xinbaPyiod9iC44yf4dLfnfVk5HTsJh3y/hGQ56x9MV/xfxGe+aFoevDJBCC?=
 =?us-ascii?Q?XWSVyAofUxtyGPne4yn0+UxRmeJDAXGI62CqdzXIUMn3oPE9qKxYn9cdcTjh?=
 =?us-ascii?Q?Rt46iFwklraYApIMV/17m0dSUUXFDCbIf+CxDVX3Tv5J9RQSLeD7z4WyDscc?=
 =?us-ascii?Q?LLetXy1e6AvPfN/dY5pKsYrNE8bse1Nk9qVkY68nqlQouK/lwt+RpMZUiy2B?=
 =?us-ascii?Q?8qRM5+mg9OHMhWF9zk4BvEDhgbRTjwYFIVNJvJ7nD05jMd4L5l9UjfYVeXv8?=
 =?us-ascii?Q?YucpMGGtdWD1xG26ekzdzGyN7ZkSVkl35LBGZOlk4ls2VVFPFJ3nR83ttSnS?=
 =?us-ascii?Q?ZPbJBpc7iS0zWmWWGMHnISvR8nRDax/XtR/Rd+wYGRVLKZRVh6lJclvDsbsQ?=
 =?us-ascii?Q?OC5d8Z7EGFxZl/1NirjM=3D?=
X-Microsoft-Antispam-Message-Info: 94RwIaPflE5BAgjl4nbgCSciRSM7eDuQORKRJWCCB1+IGHJJBPDdiGcAG5NwhGJKc8RZOVz/IVfzLRBz+gpyyeXHrKGUMwG0Y4N84QNIb++hSrDxKSo3h88sHbhyYYYjWC92kSfc+vCZ+xC0TPunTo/nkyDPohtLnYwhfcy9KJngsvsaVjLjPtogMXrucV0kCpzbmi+HbVpZx0Ct2lIl3Zl1mptYBlQTgcxPM12gxTxJ6ctQ1StzcmEE06Yzqplaele9ZSlLluOsmtTFhpuqUzyr8fEzXDj4uY7WTJg94DfOy8td0ZznLijLqRrsigoMrdp2xHqHoNE6xZugDWx89Z7GP5D0MMl0Lr0vq0dakH9hG2f2nGQRHgYiVj82d2EnXahRrkl6U0u6NRkTvRqsd3OI5/i5NIww04sf2WeKIW0=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 6:EFUmBl9I5YIYqYa0hCDuJpCCTHiUaj4zHeWGjeHFg0BhFxF6PpsSPBwTnTVO6JqcxkuqX+nBu+eIhcLFd/qyEKGp8UyMd/C0qCkWPMBk9eRn/hEdRNEauvuBD1RLsheAfCfRevlt2fR1NgwBU1dgJbdxWJlOs5kovmbVFCW9R+PIwZMcBolfgxLqXdYSymiWFZ3/y4ISwM59p7YKwLVV1YzmCm+M/nGuYelXhuDTGOHsWxlV/CW/OBsxItJg9jl7avICKNJdvYw2GUW/JdrfYg+N1AMGd4KnfAUPkZUUvsKsZNryR86KABunoS5Be4tch/aZvUAsgrBMVPS+enGpP/dhzjmyLKu2OJf6EiUnobjhJfR4ZVXgppnQJwbRP0SO72CsKVYXpH4MVbh3uzcq3OhySEICFOzvurj2WnJK2u8JNYBOClXELBbDhP3S4bgWPwwo9/DgY9gx9wpKZkk6nN4Fr0SZ8lsMS+ODJGxLx3dNtoaVBD7zYRa9AxBBixS2;
 5:vmFWjwU/2CDzIW7E+1eeegGMBm+SZQyZRSW0TgY7dDEWiTwTroQZEIvqe6aLaTTZ/I/vs0e/JPBpUmB/n8XDcLcL+ZNqNLoM6+dh6+smZ3xGV0Z9qzcRrouhwwIQbSlrUgYNB3caBgiOBIVJxfzssmLQ8J8MtlG783756h4FYKk=;
 24:m8YhVZHGwZVu1GwEO+bhq2KhIZ6J8geke8o9//1VTJU6DDqrfpUhHGLSdRz37Wd83ywlTLPlTWy8jiW0bbKQP7GcOngkfwitKbcNScwuPXQ=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 7:WZvnGXr4d39xxi0NJjTyjd9Z2Gkl6hzuVHYoimoBmuQeeBuFq60HNjX2507WgYpQLMraB0vTPNoGCHHvQSDEod0z2hBdF817hZCQ7QjbBDplRbSJzdP6elU3PRC9sQwEcQ9CJ6pI/tvBIlBA1jpesDGuFByUQN5ZS4ybOYU2L1FMLhZUB7+s36j7xxgBv5SWYBYzzL/EwcVBGxVh4MAgwCM66eIkGV8TK4siBYTBK1kIwHNZxFhF32lpTalkBMnR
X-MS-Office365-Filtering-Correlation-Id: cd0790e7-de61-4c60-c14f-08d5a364479c
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 06:35:43.3649 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: cd0790e7-de61-4c60-c14f-08d5a364479c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2424
Subject: [Minios-devel] [PATCH v3 40/43] mini-os: add the libfdt library
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 julien.grall@arm.com, shijie.huang@arm.com, samuel.thibault@ens-lyon.org,
 baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIHRoZSBsaWJmZHQgbGliZmR0IHdoaWNoIGlzIEJTRCBsaWNlbmNlLCBpdCB3aWxsIHVzZWQg
YnkKdGhlIGFybSBjb2RlIGZvciB0aGUgRmxhdCBEZXZpY2UgVHJlZSBtYW5pcHVsYXRpb24uCgpU
aGlzIGxpYmZkdCBpcyBjb3BpZWQgZnJvbToKICAgICAgIGdpdDovL2dpdC5rZXJuZWwub3JnL3B1
Yi9zY20vdXRpbHMvZHRjL2R0Yy5naXQKClRoaXMgcGF0Y2ggYWxzbyBjaGFuZ2VzIG1ha2VmaWxl
LCBtYWtlcyBpdCB0byBjb21waWxlIHRoZQpsaWJmZHQgbGlicmFyeSBmb3IgYXJtNjQgY29kZS4K
CkFsc28gdXBkYXRlIHRoZSAuZ2l0aWdub3JlLCBkbyBub3Qgc2hvdyBzb21lIGZpbGVzIGZvciBh
cm02NC4KClNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+
Ci0tLQogLmdpdGlnbm9yZSAgICAgICAgICAgICAgICAgICB8ICAgIDUgKwogTWFrZWZpbGUgICAg
ICAgICAgICAgICAgICAgICB8ICAgMTUgKwogbGliL2xpYmZkdC9NYWtlZmlsZS5saWJmZHQgICB8
ICAgMTEgKwogbGliL2xpYmZkdC9UT0RPICAgICAgICAgICAgICB8ICAgIDMgKwogbGliL2xpYmZk
dC9mZHQuYyAgICAgICAgICAgICB8ICAyNTEgKysrKysrCiBsaWIvbGliZmR0L2ZkdC5oICAgICAg
ICAgICAgIHwgIDExMSArKysKIGxpYi9saWJmZHQvZmR0X2FkZHJlc3Nlcy5jICAgfCAgIDk2ICsr
KwogbGliL2xpYmZkdC9mZHRfZW1wdHlfdHJlZS5jICB8ICAgODMgKysKIGxpYi9saWJmZHQvZmR0
X292ZXJsYXkuYyAgICAgfCAgODYxICsrKysrKysrKysrKysrKysrKysKIGxpYi9saWJmZHQvZmR0
X3JvLmMgICAgICAgICAgfCAgNzAzICsrKysrKysrKysrKysrKysKIGxpYi9saWJmZHQvZmR0X3J3
LmMgICAgICAgICAgfCAgNTA1ICsrKysrKysrKysrCiBsaWIvbGliZmR0L2ZkdF9zdHJlcnJvci5j
ICAgIHwgIDEwMiArKysKIGxpYi9saWJmZHQvZmR0X3N3LmMgICAgICAgICAgfCAgMzAwICsrKysr
KysKIGxpYi9saWJmZHQvZmR0X3dpcC5jICAgICAgICAgfCAgMTM5ICsrKysKIGxpYi9saWJmZHQv
bGliZmR0LmggICAgICAgICAgfCAxODk5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKwogbGliL2xpYmZkdC9saWJmZHRfZW52LmggICAgICB8ICAxNDMgKysrKwogbGli
L2xpYmZkdC9saWJmZHRfaW50ZXJuYWwuaCB8ICAgOTUgKysrCiBsaWIvbGliZmR0L3ZlcnNpb24u
bGRzICAgICAgIHwgICA3MSArKwogMTggZmlsZXMgY2hhbmdlZCwgNTM5MyBpbnNlcnRpb25zKCsp
CiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYmZkdC9NYWtlZmlsZS5saWJmZHQKIGNyZWF0ZSBt
b2RlIDEwMDY0NCBsaWIvbGliZmR0L1RPRE8KIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIvbGliZmR0
L2ZkdC5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYmZkdC9mZHQuaAogY3JlYXRlIG1vZGUg
MTAwNjQ0IGxpYi9saWJmZHQvZmR0X2FkZHJlc3Nlcy5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGli
L2xpYmZkdC9mZHRfZW1wdHlfdHJlZS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYmZkdC9m
ZHRfb3ZlcmxheS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYmZkdC9mZHRfcm8uYwogY3Jl
YXRlIG1vZGUgMTAwNjQ0IGxpYi9saWJmZHQvZmR0X3J3LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBs
aWIvbGliZmR0L2ZkdF9zdHJlcnJvci5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYmZkdC9m
ZHRfc3cuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9saWJmZHQvZmR0X3dpcC5jCiBjcmVhdGUg
bW9kZSAxMDA2NDQgbGliL2xpYmZkdC9saWJmZHQuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9s
aWJmZHQvbGliZmR0X2Vudi5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL2xpYmZkdC9saWJmZHRf
aW50ZXJuYWwuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9saWJmZHQvdmVyc2lvbi5sZHMKCmRp
ZmYgLS1naXQgYS8uZ2l0aWdub3JlIGIvLmdpdGlnbm9yZQppbmRleCBkNTdjMmJkLi42YzljNTAx
IDEwMDY0NAotLS0gYS8uZ2l0aWdub3JlCisrKyBiLy5naXRpZ25vcmUKQEAgLTE0LDMgKzE0LDgg
QEAgaW5jbHVkZS9saXN0LmgKIG1pbmktb3MKIG1pbmktb3MuZ3oKIG1pbmlvcy1jb25maWcubWsK
K2luY2x1ZGUvZmR0LmgKK2luY2x1ZGUvbGliZmR0LmgKK2luY2x1ZGUvbGliZmR0X2Vudi5oCitt
aW5pLW9zLmltZworYXJjaC9hcm0vYXJtNjQvbWluaW9zLWFybTY0LmxkcwpkaWZmIC0tZ2l0IGEv
TWFrZWZpbGUgYi9NYWtlZmlsZQppbmRleCBhNTA1NTYzLi5jMjMxMjQ3IDEwMDY0NAotLS0gYS9N
YWtlZmlsZQorKysgYi9NYWtlZmlsZQpAQCAtMTIsNiArMTIsMTMgQEAgaW5jbHVkZSBDb25maWcu
bWsKICMgU3ltbGlua3MgYW5kIGhlYWRlcnMgdGhhdCBtdXN0IGJlIGNyZWF0ZWQgYmVmb3JlIGJ1
aWxkaW5nIHRoZSBDIGZpbGVzCiBHRU5FUkFURURfSEVBREVSUyA6PSBpbmNsdWRlL2xpc3QuaCAk
KEFSQ0hfTElOS1MpIGluY2x1ZGUvbWluaS1vcyBpbmNsdWRlLyQoVEFSR0VUX0FSQ0hfRkFNKS9t
aW5pLW9zCiAKK2lmZXEgKCQoVEFSR0VUX0FSQ0hfRkFNKSxhcm0pCitHRU5FUkFURURfSEVBREVS
UyArPSBpbmNsdWRlL2ZkdC5oIGluY2x1ZGUvbGliZmR0LmggaW5jbHVkZS9saWJmZHRfZW52LmgK
KworaW5jbHVkZS8lLmg6ICQoVE9QTEVWRUxfRElSKS9saWIvbGliZmR0LyUuaAorCWxuIC1zICRe
ICRACitlbmRpZgorCiBFWFRSQV9ERVBTICs9ICQoR0VORVJBVEVEX0hFQURFUlMpCiAKICMgSW5j
bHVkZSBjb21tb24gbWluaS1vcyBtYWtlcnVsZXMuCkBAIC0zNiw2ICs0MywxNCBAQCBUQVJHRVQg
Oj0gbWluaS1vcwogIyBTdWJkaXJlY3RvcmllcyBjb21tb24gdG8gbWluaS1vcwogU1VCRElSUyA6
PSBsaWIgeGVuYnVzIGNvbnNvbGUKIAoraWZlcSAoJChUQVJHRVRfQVJDSF9GQU0pLGFybSkKK1NV
QkRJUlMgKz0gbGliL2xpYmZkdAorIyBEZXZpY2UgdHJlZSBzdXBwb3J0CitGRFRfU1JDIDo9IGxp
Yi9saWJmZHQvZmR0LmMgbGliL2xpYmZkdC9mZHRfcm8uYyBsaWIvbGliZmR0L2ZkdF9zdHJlcnJv
ci5jCisKK3NyYy15ICs9ICR7RkRUX1NSQ30KK2VuZGlmCisKIHNyYy0kKENPTkZJR19CTEtGUk9O
VCkgKz0gYmxrZnJvbnQuYwogc3JjLSQoQ09ORklHX1RQTUZST05UKSArPSB0cG1mcm9udC5jCiBz
cmMtJChDT05GSUdfVFBNX1RJUykgKz0gdHBtX3Rpcy5jCmRpZmYgLS1naXQgYS9saWIvbGliZmR0
L01ha2VmaWxlLmxpYmZkdCBiL2xpYi9saWJmZHQvTWFrZWZpbGUubGliZmR0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5OGIzZjMKLS0tIC9kZXYvbnVsbAorKysgYi9saWIv
bGliZmR0L01ha2VmaWxlLmxpYmZkdApAQCAtMCwwICsxLDExIEBACisjIE1ha2VmaWxlLmxpYmZk
dAorIworIyBUaGlzIGlzIG5vdCBhIGNvbXBsZXRlIE1ha2VmaWxlIG9mIGl0c2VsZi4gIEluc3Rl
YWQsIGl0IGlzIGRlc2lnbmVkIHRvCisjIGJlIGVhc2lseSBlbWJlZGRhYmxlIGludG8gb3RoZXIg
c3lzdGVtcyBvZiBNYWtlZmlsZXMuCisjCitMSUJGRFRfc29uYW1lID0gbGliZmR0LiQoU0hBUkVE
TElCX0VYVCkuMQorTElCRkRUX0lOQ0xVREVTID0gZmR0LmggbGliZmR0LmggbGliZmR0X2Vudi5o
CitMSUJGRFRfVkVSU0lPTiA9IHZlcnNpb24ubGRzCitMSUJGRFRfU1JDUyA9IGZkdC5jIGZkdF9y
by5jIGZkdF93aXAuYyBmZHRfc3cuYyBmZHRfcncuYyBmZHRfc3RyZXJyb3IuYyBmZHRfZW1wdHlf
dHJlZS5jIFwKKwlmZHRfYWRkcmVzc2VzLmMgZmR0X292ZXJsYXkuYworTElCRkRUX09CSlMgPSAk
KExJQkZEVF9TUkNTOiUuYz0lLm8pCmRpZmYgLS1naXQgYS9saWIvbGliZmR0L1RPRE8gYi9saWIv
bGliZmR0L1RPRE8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjg4NDM3ZQot
LS0gL2Rldi9udWxsCisrKyBiL2xpYi9saWJmZHQvVE9ETwpAQCAtMCwwICsxLDMgQEAKKy0gVHJl
ZSB0cmF2ZXJzYWwgZnVuY3Rpb25zCistIEdyYWZ0IGZ1bmN0aW9uCistIENvbXBsZXRlIGxpYmZk
dC5oIGRvY3VtZW50aW5nIGNvbW1lbnRzCmRpZmYgLS1naXQgYS9saWIvbGliZmR0L2ZkdC5jIGIv
bGliL2xpYmZkdC9mZHQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZDEz
MjM2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliL2xpYmZkdC9mZHQuYwpAQCAtMCwwICsxLDI1MSBA
QAorLyoKKyAqIGxpYmZkdCAtIEZsYXQgRGV2aWNlIFRyZWUgbWFuaXB1bGF0aW9uCisgKiBDb3B5
cmlnaHQgKEMpIDIwMDYgRGF2aWQgR2lic29uLCBJQk0gQ29ycG9yYXRpb24uCisgKgorICogbGli
ZmR0IGlzIGR1YWwgbGljZW5zZWQ6IHlvdSBjYW4gdXNlIGl0IGVpdGhlciB1bmRlciB0aGUgdGVy
bXMgb2YKKyAqIHRoZSBHUEwsIG9yIHRoZSBCU0QgbGljZW5zZSwgYXQgeW91ciBvcHRpb24uCisg
KgorICogIGEpIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJp
YnV0ZSBpdCBhbmQvb3IKKyAqICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH
TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcworICogICAgIHB1Ymxpc2hlZCBieSB0aGUgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZQorICogICAgIExp
Y2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogICAg
IFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg
dXNlZnVsLAorICogICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRo
ZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiAgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogICAgIEdOVSBHZW5lcmFsIFB1
YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogICAgIFlvdSBzaG91bGQgaGF2
ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYworICogICAgIExpY2Vu
c2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUKKyAq
ICAgICBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdCwgRmlmdGggRmxv
b3IsIEJvc3RvbiwKKyAqICAgICBNQSAwMjExMC0xMzAxIFVTQQorICoKKyAqIEFsdGVybmF0aXZl
bHksCisgKgorICogIGIpIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3IKKyAqICAgICB3aXRob3V0IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcKKyAqICAgICBjb25kaXRpb25zIGFyZSBt
ZXQ6CisgKgorICogICAgIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUKKyAqICAgICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZworICogICAgICAgIGRpc2NsYWltZXIuCisgKiAg
ICAgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQorICogICAgICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCisgKiAgICAgICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgKiAgICAgICAgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqICAgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBBTkQKKyAqICAgICBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLAorICogICAgIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiAgICAgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqICAg
ICBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisg
KiAgICAgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCisgKiAgICAgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUCisgKiAgICAgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiAgICAgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqICAgICBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqICAg
ICBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IKKyAqICAgICBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLAorICogICAgIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKyNpbmNsdWRlICJsaWJmZHRfZW52LmgiCisKKyNp
bmNsdWRlIDxmZHQuaD4KKyNpbmNsdWRlIDxsaWJmZHQuaD4KKworI2luY2x1ZGUgImxpYmZkdF9p
bnRlcm5hbC5oIgorCitpbnQgZmR0X2NoZWNrX2hlYWRlcihjb25zdCB2b2lkICpmZHQpCit7CisJ
aWYgKGZkdF9tYWdpYyhmZHQpID09IEZEVF9NQUdJQykgeworCQkvKiBDb21wbGV0ZSB0cmVlICov
CisJCWlmIChmZHRfdmVyc2lvbihmZHQpIDwgRkRUX0ZJUlNUX1NVUFBPUlRFRF9WRVJTSU9OKQor
CQkJcmV0dXJuIC1GRFRfRVJSX0JBRFZFUlNJT047CisJCWlmIChmZHRfbGFzdF9jb21wX3ZlcnNp
b24oZmR0KSA+IEZEVF9MQVNUX1NVUFBPUlRFRF9WRVJTSU9OKQorCQkJcmV0dXJuIC1GRFRfRVJS
X0JBRFZFUlNJT047CisJfSBlbHNlIGlmIChmZHRfbWFnaWMoZmR0KSA9PSBGRFRfU1dfTUFHSUMp
IHsKKwkJLyogVW5maW5pc2hlZCBzZXF1ZW50aWFsLXdyaXRlIGJsb2IgKi8KKwkJaWYgKGZkdF9z
aXplX2R0X3N0cnVjdChmZHQpID09IDApCisJCQlyZXR1cm4gLUZEVF9FUlJfQkFEU1RBVEU7CisJ
fSBlbHNlIHsKKwkJcmV0dXJuIC1GRFRfRVJSX0JBRE1BR0lDOworCX0KKworCXJldHVybiAwOwor
fQorCitjb25zdCB2b2lkICpmZHRfb2Zmc2V0X3B0cihjb25zdCB2b2lkICpmZHQsIGludCBvZmZz
ZXQsIHVuc2lnbmVkIGludCBsZW4pCit7CisJdW5zaWduZWQgYWJzb2Zmc2V0ID0gb2Zmc2V0ICsg
ZmR0X29mZl9kdF9zdHJ1Y3QoZmR0KTsKKworCWlmICgoYWJzb2Zmc2V0IDwgb2Zmc2V0KQorCSAg
ICB8fCAoKGFic29mZnNldCArIGxlbikgPCBhYnNvZmZzZXQpCisJICAgIHx8IChhYnNvZmZzZXQg
KyBsZW4pID4gZmR0X3RvdGFsc2l6ZShmZHQpKQorCQlyZXR1cm4gTlVMTDsKKworCWlmIChmZHRf
dmVyc2lvbihmZHQpID49IDB4MTEpCisJCWlmICgoKG9mZnNldCArIGxlbikgPCBvZmZzZXQpCisJ
CSAgICB8fCAoKG9mZnNldCArIGxlbikgPiBmZHRfc2l6ZV9kdF9zdHJ1Y3QoZmR0KSkpCisJCQly
ZXR1cm4gTlVMTDsKKworCXJldHVybiBmZHRfb2Zmc2V0X3B0cl8oZmR0LCBvZmZzZXQpOworfQor
Cit1aW50MzJfdCBmZHRfbmV4dF90YWcoY29uc3Qgdm9pZCAqZmR0LCBpbnQgc3RhcnRvZmZzZXQs
IGludCAqbmV4dG9mZnNldCkKK3sKKwljb25zdCBmZHQzMl90ICp0YWdwLCAqbGVucDsKKwl1aW50
MzJfdCB0YWc7CisJaW50IG9mZnNldCA9IHN0YXJ0b2Zmc2V0OworCWNvbnN0IGNoYXIgKnA7CisK
KwkqbmV4dG9mZnNldCA9IC1GRFRfRVJSX1RSVU5DQVRFRDsKKwl0YWdwID0gZmR0X29mZnNldF9w
dHIoZmR0LCBvZmZzZXQsIEZEVF9UQUdTSVpFKTsKKwlpZiAoIXRhZ3ApCisJCXJldHVybiBGRFRf
RU5EOyAvKiBwcmVtYXR1cmUgZW5kICovCisJdGFnID0gZmR0MzJfdG9fY3B1KCp0YWdwKTsKKwlv
ZmZzZXQgKz0gRkRUX1RBR1NJWkU7CisKKwkqbmV4dG9mZnNldCA9IC1GRFRfRVJSX0JBRFNUUlVD
VFVSRTsKKwlzd2l0Y2ggKHRhZykgeworCWNhc2UgRkRUX0JFR0lOX05PREU6CisJCS8qIHNraXAg
bmFtZSAqLworCQlkbyB7CisJCQlwID0gZmR0X29mZnNldF9wdHIoZmR0LCBvZmZzZXQrKywgMSk7
CisJCX0gd2hpbGUgKHAgJiYgKCpwICE9ICdcMCcpKTsKKwkJaWYgKCFwKQorCQkJcmV0dXJuIEZE
VF9FTkQ7IC8qIHByZW1hdHVyZSBlbmQgKi8KKwkJYnJlYWs7CisKKwljYXNlIEZEVF9QUk9QOgor
CQlsZW5wID0gZmR0X29mZnNldF9wdHIoZmR0LCBvZmZzZXQsIHNpemVvZigqbGVucCkpOworCQlp
ZiAoIWxlbnApCisJCQlyZXR1cm4gRkRUX0VORDsgLyogcHJlbWF0dXJlIGVuZCAqLworCQkvKiBz
a2lwLW5hbWUgb2Zmc2V0LCBsZW5ndGggYW5kIHZhbHVlICovCisJCW9mZnNldCArPSBzaXplb2Yo
c3RydWN0IGZkdF9wcm9wZXJ0eSkgLSBGRFRfVEFHU0laRQorCQkJKyBmZHQzMl90b19jcHUoKmxl
bnApOworCQlicmVhazsKKworCWNhc2UgRkRUX0VORDoKKwljYXNlIEZEVF9FTkRfTk9ERToKKwlj
YXNlIEZEVF9OT1A6CisJCWJyZWFrOworCisJZGVmYXVsdDoKKwkJcmV0dXJuIEZEVF9FTkQ7CisJ
fQorCisJaWYgKCFmZHRfb2Zmc2V0X3B0cihmZHQsIHN0YXJ0b2Zmc2V0LCBvZmZzZXQgLSBzdGFy
dG9mZnNldCkpCisJCXJldHVybiBGRFRfRU5EOyAvKiBwcmVtYXR1cmUgZW5kICovCisKKwkqbmV4
dG9mZnNldCA9IEZEVF9UQUdBTElHTihvZmZzZXQpOworCXJldHVybiB0YWc7Cit9CisKK2ludCBm
ZHRfY2hlY2tfbm9kZV9vZmZzZXRfKGNvbnN0IHZvaWQgKmZkdCwgaW50IG9mZnNldCkKK3sKKwlp
ZiAoKG9mZnNldCA8IDApIHx8IChvZmZzZXQgJSBGRFRfVEFHU0laRSkKKwkgICAgfHwgKGZkdF9u
ZXh0X3RhZyhmZHQsIG9mZnNldCwgJm9mZnNldCkgIT0gRkRUX0JFR0lOX05PREUpKQorCQlyZXR1
cm4gLUZEVF9FUlJfQkFET0ZGU0VUOworCisJcmV0dXJuIG9mZnNldDsKK30KKworaW50IGZkdF9j
aGVja19wcm9wX29mZnNldF8oY29uc3Qgdm9pZCAqZmR0LCBpbnQgb2Zmc2V0KQoreworCWlmICgo
b2Zmc2V0IDwgMCkgfHwgKG9mZnNldCAlIEZEVF9UQUdTSVpFKQorCSAgICB8fCAoZmR0X25leHRf
dGFnKGZkdCwgb2Zmc2V0LCAmb2Zmc2V0KSAhPSBGRFRfUFJPUCkpCisJCXJldHVybiAtRkRUX0VS
Ul9CQURPRkZTRVQ7CisKKwlyZXR1cm4gb2Zmc2V0OworfQorCitpbnQgZmR0X25leHRfbm9kZShj
b25zdCB2b2lkICpmZHQsIGludCBvZmZzZXQsIGludCAqZGVwdGgpCit7CisJaW50IG5leHRvZmZz
ZXQgPSAwOworCXVpbnQzMl90IHRhZzsKKworCWlmIChvZmZzZXQgPj0gMCkKKwkJaWYgKChuZXh0
b2Zmc2V0ID0gZmR0X2NoZWNrX25vZGVfb2Zmc2V0XyhmZHQsIG9mZnNldCkpIDwgMCkKKwkJCXJl
dHVybiBuZXh0b2Zmc2V0OworCisJZG8geworCQlvZmZzZXQgPSBuZXh0b2Zmc2V0OworCQl0YWcg
PSBmZHRfbmV4dF90YWcoZmR0LCBvZmZzZXQsICZuZXh0b2Zmc2V0KTsKKworCQlzd2l0Y2ggKHRh
ZykgeworCQljYXNlIEZEVF9QUk9QOgorCQljYXNlIEZEVF9OT1A6CisJCQlicmVhazsKKworCQlj
YXNlIEZEVF9CRUdJTl9OT0RFOgorCQkJaWYgKGRlcHRoKQorCQkJCSgqZGVwdGgpKys7CisJCQli
cmVhazsKKworCQljYXNlIEZEVF9FTkRfTk9ERToKKwkJCWlmIChkZXB0aCAmJiAoKC0tKCpkZXB0
aCkpIDwgMCkpCisJCQkJcmV0dXJuIG5leHRvZmZzZXQ7CisJCQlicmVhazsKKworCQljYXNlIEZE
VF9FTkQ6CisJCQlpZiAoKG5leHRvZmZzZXQgPj0gMCkKKwkJCSAgICB8fCAoKG5leHRvZmZzZXQg
PT0gLUZEVF9FUlJfVFJVTkNBVEVEKSAmJiAhZGVwdGgpKQorCQkJCXJldHVybiAtRkRUX0VSUl9O
T1RGT1VORDsKKwkJCWVsc2UKKwkJCQlyZXR1cm4gbmV4dG9mZnNldDsKKwkJfQorCX0gd2hpbGUg
KHRhZyAhPSBGRFRfQkVHSU5fTk9ERSk7CisKKwlyZXR1cm4gb2Zmc2V0OworfQorCitpbnQgZmR0
X2ZpcnN0X3N1Ym5vZGUoY29uc3Qgdm9pZCAqZmR0LCBpbnQgb2Zmc2V0KQoreworCWludCBkZXB0
aCA9IDA7CisKKwlvZmZzZXQgPSBmZHRfbmV4dF9ub2RlKGZkdCwgb2Zmc2V0LCAmZGVwdGgpOwor
CWlmIChvZmZzZXQgPCAwIHx8IGRlcHRoICE9IDEpCisJCXJldHVybiAtRkRUX0VSUl9OT1RGT1VO
RDsKKworCXJldHVybiBvZmZzZXQ7Cit9CisKK2ludCBmZHRfbmV4dF9zdWJub2RlKGNvbnN0IHZv
aWQgKmZkdCwgaW50IG9mZnNldCkKK3sKKwlpbnQgZGVwdGggPSAxOworCisJLyoKKwkgKiBXaXRo
IHJlc3BlY3QgdG8gdGhlIHBhcmVudCwgdGhlIGRlcHRoIG9mIHRoZSBuZXh0IHN1Ym5vZGUgd2ls
bCBiZQorCSAqIHRoZSBzYW1lIGFzIHRoZSBsYXN0LgorCSAqLworCWRvIHsKKwkJb2Zmc2V0ID0g
ZmR0X25leHRfbm9kZShmZHQsIG9mZnNldCwgJmRlcHRoKTsKKwkJaWYgKG9mZnNldCA8IDAgfHwg
ZGVwdGggPCAxKQorCQkJcmV0dXJuIC1GRFRfRVJSX05PVEZPVU5EOworCX0gd2hpbGUgKGRlcHRo
ID4gMSk7CisKKwlyZXR1cm4gb2Zmc2V0OworfQorCitjb25zdCBjaGFyICpmZHRfZmluZF9zdHJp
bmdfKGNvbnN0IGNoYXIgKnN0cnRhYiwgaW50IHRhYnNpemUsIGNvbnN0IGNoYXIgKnMpCit7CisJ
aW50IGxlbiA9IHN0cmxlbihzKSArIDE7CisJY29uc3QgY2hhciAqbGFzdCA9IHN0cnRhYiArIHRh
YnNpemUgLSBsZW47CisJY29uc3QgY2hhciAqcDsKKworCWZvciAocCA9IHN0cnRhYjsgcCA8PSBs
YXN0OyBwKyspCisJCWlmIChtZW1jbXAocCwgcywgbGVuKSA9PSAwKQorCQkJcmV0dXJuIHA7CisJ
cmV0dXJuIE5VTEw7Cit9CisKK2ludCBmZHRfbW92ZShjb25zdCB2b2lkICpmZHQsIHZvaWQgKmJ1
ZiwgaW50IGJ1ZnNpemUpCit7CisJRkRUX0NIRUNLX0hFQURFUihmZHQpOworCisJaWYgKGZkdF90
b3RhbHNpemUoZmR0KSA+IGJ1ZnNpemUpCisJCXJldHVybiAtRkRUX0VSUl9OT1NQQUNFOworCisJ
bWVtbW92ZShidWYsIGZkdCwgZmR0X3RvdGFsc2l6ZShmZHQpKTsKKwlyZXR1cm4gMDsKK30KZGlm
ZiAtLWdpdCBhL2xpYi9saWJmZHQvZmR0LmggYi9saWIvbGliZmR0L2ZkdC5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc0OTYxZjkKLS0tIC9kZXYvbnVsbAorKysgYi9saWIv
bGliZmR0L2ZkdC5oCkBAIC0wLDAgKzEsMTExIEBACisjaWZuZGVmIEZEVF9ICisjZGVmaW5lIEZE
VF9ICisvKgorICogbGliZmR0IC0gRmxhdCBEZXZpY2UgVHJlZSBtYW5pcHVsYXRpb24KKyAqIENv
cHlyaWdodCAoQykgMjAwNiBEYXZpZCBHaWJzb24sIElCTSBDb3Jwb3JhdGlvbi4KKyAqIENvcHly
aWdodCAyMDEyIEtpbSBQaGlsbGlwcywgRnJlZXNjYWxlIFNlbWljb25kdWN0b3IuCisgKgorICog
bGliZmR0IGlzIGR1YWwgbGljZW5zZWQ6IHlvdSBjYW4gdXNlIGl0IGVpdGhlciB1bmRlciB0aGUg
dGVybXMgb2YKKyAqIHRoZSBHUEwsIG9yIHRoZSBCU0QgbGljZW5zZSwgYXQgeW91ciBvcHRpb24u
CisgKgorICogIGEpIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz
dHJpYnV0ZSBpdCBhbmQvb3IKKyAqICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRo
ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcworICogICAgIHB1Ymxpc2hlZCBieSB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZQorICogICAg
IExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICog
ICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg
YmUgdXNlZnVsLAorICogICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu
IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiAgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogICAgIEdOVSBHZW5lcmFs
IFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogICAgIFlvdSBzaG91bGQg
aGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYworICogICAgIExp
Y2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUK
KyAqICAgICBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdCwgRmlmdGgg
Rmxvb3IsIEJvc3RvbiwKKyAqICAgICBNQSAwMjExMC0xMzAxIFVTQQorICoKKyAqIEFsdGVybmF0
aXZlbHksCisgKgorICogIGIpIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3IKKyAqICAgICB3aXRob3V0IG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcKKyAqICAgICBjb25kaXRpb25zIGFy
ZSBtZXQ6CisgKgorICogICAgIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUKKyAqICAgICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZworICogICAgICAgIGRpc2NsYWltZXIuCisg
KiAgICAgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQorICogICAgICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCisgKiAgICAgICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgKiAgICAgICAgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqICAgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQKKyAqICAgICBDT05UUklCVVRPUlMgIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLAorICogICAgIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiAgICAgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAq
ICAgICBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9S
CisgKiAgICAgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsCisgKiAgICAgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUCisgKiAgICAgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiAgICAgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqICAgICBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAq
ICAgICBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IKKyAqICAgICBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLAorICogICAgIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfX0FTU0VNQkxZX18KKwor
c3RydWN0IGZkdF9oZWFkZXIgeworCWZkdDMyX3QgbWFnaWM7CQkJIC8qIG1hZ2ljIHdvcmQgRkRU
X01BR0lDICovCisJZmR0MzJfdCB0b3RhbHNpemU7CQkgLyogdG90YWwgc2l6ZSBvZiBEVCBibG9j
ayAqLworCWZkdDMyX3Qgb2ZmX2R0X3N0cnVjdDsJCSAvKiBvZmZzZXQgdG8gc3RydWN0dXJlICov
CisJZmR0MzJfdCBvZmZfZHRfc3RyaW5nczsJCSAvKiBvZmZzZXQgdG8gc3RyaW5ncyAqLworCWZk
dDMyX3Qgb2ZmX21lbV9yc3ZtYXA7CQkgLyogb2Zmc2V0IHRvIG1lbW9yeSByZXNlcnZlIG1hcCAq
LworCWZkdDMyX3QgdmVyc2lvbjsJCSAvKiBmb3JtYXQgdmVyc2lvbiAqLworCWZkdDMyX3QgbGFz
dF9jb21wX3ZlcnNpb247CSAvKiBsYXN0IGNvbXBhdGlibGUgdmVyc2lvbiAqLworCisJLyogdmVy
c2lvbiAyIGZpZWxkcyBiZWxvdyAqLworCWZkdDMyX3QgYm9vdF9jcHVpZF9waHlzOwkgLyogV2hp
Y2ggcGh5c2ljYWwgQ1BVIGlkIHdlJ3JlCisJCQkJCSAgICBib290aW5nIG9uICovCisJLyogdmVy
c2lvbiAzIGZpZWxkcyBiZWxvdyAqLworCWZkdDMyX3Qgc2l6ZV9kdF9zdHJpbmdzOwkgLyogc2l6
ZSBvZiB0aGUgc3RyaW5ncyBibG9jayAqLworCisJLyogdmVyc2lvbiAxNyBmaWVsZHMgYmVsb3cg
Ki8KKwlmZHQzMl90IHNpemVfZHRfc3RydWN0OwkJIC8qIHNpemUgb2YgdGhlIHN0cnVjdHVyZSBi
bG9jayAqLworfTsKKworc3RydWN0IGZkdF9yZXNlcnZlX2VudHJ5IHsKKwlmZHQ2NF90IGFkZHJl
c3M7CisJZmR0NjRfdCBzaXplOworfTsKKworc3RydWN0IGZkdF9ub2RlX2hlYWRlciB7CisJZmR0
MzJfdCB0YWc7CisJY2hhciBuYW1lWzBdOworfTsKKworc3RydWN0IGZkdF9wcm9wZXJ0eSB7CisJ
ZmR0MzJfdCB0YWc7CisJZmR0MzJfdCBsZW47CisJZmR0MzJfdCBuYW1lb2ZmOworCWNoYXIgZGF0
YVswXTsKK307CisKKyNlbmRpZiAvKiAhX19BU1NFTUJMWSAqLworCisjZGVmaW5lIEZEVF9NQUdJ
QwkweGQwMGRmZWVkCS8qIDQ6IHZlcnNpb24sIDQ6IHRvdGFsIHNpemUgKi8KKyNkZWZpbmUgRkRU
X1RBR1NJWkUJc2l6ZW9mKGZkdDMyX3QpCisKKyNkZWZpbmUgRkRUX0JFR0lOX05PREUJMHgxCQkv
KiBTdGFydCBub2RlOiBmdWxsIG5hbWUgKi8KKyNkZWZpbmUgRkRUX0VORF9OT0RFCTB4MgkJLyog
RW5kIG5vZGUgKi8KKyNkZWZpbmUgRkRUX1BST1AJMHgzCQkvKiBQcm9wZXJ0eTogbmFtZSBvZmYs
CisJCQkJCSAgIHNpemUsIGNvbnRlbnQgKi8KKyNkZWZpbmUgRkRUX05PUAkJMHg0CQkvKiBub3Ag
Ki8KKyNkZWZpbmUgRkRUX0VORAkJMHg5CisKKyNkZWZpbmUgRkRUX1YxX1NJWkUJKDcqc2l6ZW9m
KGZkdDMyX3QpKQorI2RlZmluZSBGRFRfVjJfU0laRQkoRkRUX1YxX1NJWkUgKyBzaXplb2YoZmR0
MzJfdCkpCisjZGVmaW5lIEZEVF9WM19TSVpFCShGRFRfVjJfU0laRSArIHNpemVvZihmZHQzMl90
KSkKKyNkZWZpbmUgRkRUX1YxNl9TSVpFCUZEVF9WM19TSVpFCisjZGVmaW5lIEZEVF9WMTdfU0la
RQkoRkRUX1YxNl9TSVpFICsgc2l6ZW9mKGZkdDMyX3QpKQorCisjZW5kaWYgLyogRkRUX0ggKi8K
ZGlmZiAtLWdpdCBhL2xpYi9saWJmZHQvZmR0X2FkZHJlc3Nlcy5jIGIvbGliL2xpYmZkdC9mZHRf
YWRkcmVzc2VzLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWZmNGRiYwot
LS0gL2Rldi9udWxsCisrKyBiL2xpYi9saWJmZHQvZmR0X2FkZHJlc3Nlcy5jCkBAIC0wLDAgKzEs
OTYgQEAKKy8qCisgKiBsaWJmZHQgLSBGbGF0IERldmljZSBUcmVlIG1hbmlwdWxhdGlvbgorICog
Q29weXJpZ2h0IChDKSAyMDE0IERhdmlkIEdpYnNvbiA8ZGF2aWRAZ2lic29uLmRyb3BiZWFyLmlk
LmF1PgorICoKKyAqIGxpYmZkdCBpcyBkdWFsIGxpY2Vuc2VkOiB5b3UgY2FuIHVzZSBpdCBlaXRo
ZXIgdW5kZXIgdGhlIHRlcm1zIG9mCisgKiB0aGUgR1BMLCBvciB0aGUgQlNEIGxpY2Vuc2UsIGF0
IHlvdXIgb3B0aW9uLgorICoKKyAqICBhKSBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsg
eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiAgICAgbW9kaWZ5IGl0IHVuZGVyIHRo
ZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMKKyAqICAgICBwdWJs
aXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBv
ZiB0aGUKKyAqICAgICBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz
aW9uLgorICoKKyAqICAgICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg
dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7
IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogICAgIE1FUkNIQU5UQUJJ
TElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqICAg
ICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICAg
ICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs
aWMKKyAqICAgICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRl
IHRvIHRoZSBGcmVlCisgKiAgICAgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmts
aW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24sCisgKiAgICAgTUEgMDIxMTAtMTMwMSBVU0EKKyAq
CisgKiBBbHRlcm5hdGl2ZWx5LAorICoKKyAqICBiKSBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yCisgKiAgICAgd2l0aG91dCBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nCisgKiAgICAg
Y29uZGl0aW9ucyBhcmUgbWV0OgorICoKKyAqICAgICAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCisgKiAgICAgICAgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgICAgICBk
aXNjbGFpbWVyLgorICogICAgIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqICAgICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZworICogICAgICAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworICogICAgICAgIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiAgICAgVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5ECisgKiAgICAgQ09OVFJJQlVU
T1JTICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywKKyAqICAg
ICBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RgorICogICAgIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiAgICAgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVCBPV05FUiBPUgorICogICAgIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogICAgIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAorICogICAgIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogICAg
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
CisgKiAgICAgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiAgICAgQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SCisgKiAgICAgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwKKyAqICAgICBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisjaW5jbHVkZSAibGli
ZmR0X2Vudi5oIgorCisjaW5jbHVkZSA8ZmR0Lmg+CisjaW5jbHVkZSA8bGliZmR0Lmg+CisKKyNp
bmNsdWRlICJsaWJmZHRfaW50ZXJuYWwuaCIKKworaW50IGZkdF9hZGRyZXNzX2NlbGxzKGNvbnN0
IHZvaWQgKmZkdCwgaW50IG5vZGVvZmZzZXQpCit7CisJY29uc3QgZmR0MzJfdCAqYWM7CisJaW50
IHZhbDsKKwlpbnQgbGVuOworCisJYWMgPSBmZHRfZ2V0cHJvcChmZHQsIG5vZGVvZmZzZXQsICIj
YWRkcmVzcy1jZWxscyIsICZsZW4pOworCWlmICghYWMpCisJCXJldHVybiAyOworCisJaWYgKGxl
biAhPSBzaXplb2YoKmFjKSkKKwkJcmV0dXJuIC1GRFRfRVJSX0JBRE5DRUxMUzsKKworCXZhbCA9
IGZkdDMyX3RvX2NwdSgqYWMpOworCWlmICgodmFsIDw9IDApIHx8ICh2YWwgPiBGRFRfTUFYX05D
RUxMUykpCisJCXJldHVybiAtRkRUX0VSUl9CQUROQ0VMTFM7CisKKwlyZXR1cm4gdmFsOworfQor
CitpbnQgZmR0X3NpemVfY2VsbHMoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCkKK3sK
Kwljb25zdCBmZHQzMl90ICpzYzsKKwlpbnQgdmFsOworCWludCBsZW47CisKKwlzYyA9IGZkdF9n
ZXRwcm9wKGZkdCwgbm9kZW9mZnNldCwgIiNzaXplLWNlbGxzIiwgJmxlbik7CisJaWYgKCFzYykK
KwkJcmV0dXJuIDI7CisKKwlpZiAobGVuICE9IHNpemVvZigqc2MpKQorCQlyZXR1cm4gLUZEVF9F
UlJfQkFETkNFTExTOworCisJdmFsID0gZmR0MzJfdG9fY3B1KCpzYyk7CisJaWYgKCh2YWwgPCAw
KSB8fCAodmFsID4gRkRUX01BWF9OQ0VMTFMpKQorCQlyZXR1cm4gLUZEVF9FUlJfQkFETkNFTExT
OworCisJcmV0dXJuIHZhbDsKK30KZGlmZiAtLWdpdCBhL2xpYi9saWJmZHQvZmR0X2VtcHR5X3Ry
ZWUuYyBiL2xpYi9saWJmZHQvZmR0X2VtcHR5X3RyZWUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi5mMmFlOWI3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliL2xpYmZkdC9mZHRf
ZW1wdHlfdHJlZS5jCkBAIC0wLDAgKzEsODMgQEAKKy8qCisgKiBsaWJmZHQgLSBGbGF0IERldmlj
ZSBUcmVlIG1hbmlwdWxhdGlvbgorICogQ29weXJpZ2h0IChDKSAyMDEyIERhdmlkIEdpYnNvbiwg
SUJNIENvcnBvcmF0aW9uLgorICoKKyAqIGxpYmZkdCBpcyBkdWFsIGxpY2Vuc2VkOiB5b3UgY2Fu
IHVzZSBpdCBlaXRoZXIgdW5kZXIgdGhlIHRlcm1zIG9mCisgKiB0aGUgR1BMLCBvciB0aGUgQlNE
IGxpY2Vuc2UsIGF0IHlvdXIgb3B0aW9uLgorICoKKyAqICBhKSBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiAgICAgbW9kaWZ5
IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMK
KyAqICAgICBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVy
IHZlcnNpb24gMiBvZiB0aGUKKyAqICAgICBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFu
eSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICAgICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQg
aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICAgICBidXQgV0lUSE9VVCBB
TlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogICAg
IE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNl
ZSB0aGUKKyAqICAgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxz
LgorICoKKyAqICAgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUg
R2VuZXJhbCBQdWJsaWMKKyAqICAgICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBp
ZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlCisgKiAgICAgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5j
LiwgNTEgRnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24sCisgKiAgICAgTUEgMDIxMTAt
MTMwMSBVU0EKKyAqCisgKiBBbHRlcm5hdGl2ZWx5LAorICoKKyAqICBiKSBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yCisgKiAgICAgd2l0
aG91dCBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nCisgKiAgICAgY29uZGl0aW9ucyBhcmUgbWV0OgorICoKKyAqICAgICAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCisgKiAgICAgICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
KyAqICAgICAgICBkaXNjbGFpbWVyLgorICogICAgIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqICAgICAgICBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZworICogICAgICAg
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwor
ICogICAgICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiAgICAgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5ECisgKiAg
ICAgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywKKyAqICAgICBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRgorICogICAgIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiAgICAgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogICAgIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogICAgIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAorICogICAg
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOworICogICAgIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pCisgKiAgICAgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiAgICAgQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgKiAgICAgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwKKyAqICAgICBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisj
aW5jbHVkZSAibGliZmR0X2Vudi5oIgorCisjaW5jbHVkZSA8ZmR0Lmg+CisjaW5jbHVkZSA8bGli
ZmR0Lmg+CisKKyNpbmNsdWRlICJsaWJmZHRfaW50ZXJuYWwuaCIKKworaW50IGZkdF9jcmVhdGVf
ZW1wdHlfdHJlZSh2b2lkICpidWYsIGludCBidWZzaXplKQoreworCWludCBlcnI7CisKKwllcnIg
PSBmZHRfY3JlYXRlKGJ1ZiwgYnVmc2l6ZSk7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsKKwor
CWVyciA9IGZkdF9maW5pc2hfcmVzZXJ2ZW1hcChidWYpOworCWlmIChlcnIpCisJCXJldHVybiBl
cnI7CisKKwllcnIgPSBmZHRfYmVnaW5fbm9kZShidWYsICIiKTsKKwlpZiAoZXJyKQorCQlyZXR1
cm4gZXJyOworCisJZXJyID0gIGZkdF9lbmRfbm9kZShidWYpOworCWlmIChlcnIpCisJCXJldHVy
biBlcnI7CisKKwllcnIgPSBmZHRfZmluaXNoKGJ1Zik7CisJaWYgKGVycikKKwkJcmV0dXJuIGVy
cjsKKworCXJldHVybiBmZHRfb3Blbl9pbnRvKGJ1ZiwgYnVmLCBidWZzaXplKTsKK30KZGlmZiAt
LWdpdCBhL2xpYi9saWJmZHQvZmR0X292ZXJsYXkuYyBiL2xpYi9saWJmZHQvZmR0X292ZXJsYXku
YwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZDgxMjQxCi0tLSAvZGV2L251
bGwKKysrIGIvbGliL2xpYmZkdC9mZHRfb3ZlcmxheS5jCkBAIC0wLDAgKzEsODYxIEBACisjaW5j
bHVkZSAibGliZmR0X2Vudi5oIgorCisjaW5jbHVkZSA8ZmR0Lmg+CisjaW5jbHVkZSA8bGliZmR0
Lmg+CisKKyNpbmNsdWRlICJsaWJmZHRfaW50ZXJuYWwuaCIKKworLyoqCisgKiBvdmVybGF5X2dl
dF90YXJnZXRfcGhhbmRsZSAtIHJldHJpZXZlcyB0aGUgdGFyZ2V0IHBoYW5kbGUgb2YgYSBmcmFn
bWVudAorICogQGZkdG86IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIG92ZXJsYXkgYmxvYgor
ICogQGZyYWdtZW50OiBub2RlIG9mZnNldCBvZiB0aGUgZnJhZ21lbnQgaW4gdGhlIG92ZXJsYXkK
KyAqCisgKiBvdmVybGF5X2dldF90YXJnZXRfcGhhbmRsZSgpIHJldHJpZXZlcyB0aGUgdGFyZ2V0
IHBoYW5kbGUgb2YgYW4KKyAqIG92ZXJsYXkgZnJhZ21lbnQgd2hlbiB0aGF0IGZyYWdtZW50IHVz
ZXMgYSBwaGFuZGxlICh0YXJnZXQKKyAqIHByb3BlcnR5KSBpbnN0ZWFkIG9mIGEgcGF0aCAodGFy
Z2V0LXBhdGggcHJvcGVydHkpLgorICoKKyAqIHJldHVybnM6CisgKiAgICAgIHRoZSBwaGFuZGxl
IHBvaW50ZWQgYnkgdGhlIHRhcmdldCBwcm9wZXJ0eQorICogICAgICAwLCBpZiB0aGUgcGhhbmRs
ZSB3YXMgbm90IGZvdW5kCisgKgktMSwgaWYgdGhlIHBoYW5kbGUgd2FzIG1hbGZvcm1lZAorICov
CitzdGF0aWMgdWludDMyX3Qgb3ZlcmxheV9nZXRfdGFyZ2V0X3BoYW5kbGUoY29uc3Qgdm9pZCAq
ZmR0bywgaW50IGZyYWdtZW50KQoreworCWNvbnN0IGZkdDMyX3QgKnZhbDsKKwlpbnQgbGVuOwor
CisJdmFsID0gZmR0X2dldHByb3AoZmR0bywgZnJhZ21lbnQsICJ0YXJnZXQiLCAmbGVuKTsKKwlp
ZiAoIXZhbCkKKwkJcmV0dXJuIDA7CisKKwlpZiAoKGxlbiAhPSBzaXplb2YoKnZhbCkpIHx8IChm
ZHQzMl90b19jcHUoKnZhbCkgPT0gKHVpbnQzMl90KS0xKSkKKwkJcmV0dXJuICh1aW50MzJfdCkt
MTsKKworCXJldHVybiBmZHQzMl90b19jcHUoKnZhbCk7Cit9CisKKy8qKgorICogb3ZlcmxheV9n
ZXRfdGFyZ2V0IC0gcmV0cmlldmVzIHRoZSBvZmZzZXQgb2YgYSBmcmFnbWVudCdzIHRhcmdldAor
ICogQGZkdDogQmFzZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAZmR0bzogRGV2aWNlIHRyZWUgb3Zl
cmxheSBibG9iCisgKiBAZnJhZ21lbnQ6IG5vZGUgb2Zmc2V0IG9mIHRoZSBmcmFnbWVudCBpbiB0
aGUgb3ZlcmxheQorICogQHBhdGhwOiBwb2ludGVyIHdoaWNoIHJlY2VpdmVzIHRoZSBwYXRoIG9m
IHRoZSB0YXJnZXQgKG9yIE5VTEwpCisgKgorICogb3ZlcmxheV9nZXRfdGFyZ2V0KCkgcmV0cmll
dmVzIHRoZSB0YXJnZXQgb2Zmc2V0IGluIHRoZSBiYXNlCisgKiBkZXZpY2UgdHJlZSBvZiBhIGZy
YWdtZW50LCBubyBtYXR0ZXIgaG93IHRoZSBhY3R1YWwgdGFyZ2V0dGluZyBpcworICogZG9uZSAo
dGhyb3VnaCBhIHBoYW5kbGUgb3IgYSBwYXRoKQorICoKKyAqIHJldHVybnM6CisgKiAgICAgIHRo
ZSB0YXJnZXR0ZWQgbm9kZSBvZmZzZXQgaW4gdGhlIGJhc2UgZGV2aWNlIHRyZWUKKyAqICAgICAg
TmVnYXRpdmUgZXJyb3IgY29kZSBvbiBlcnJvcgorICovCitzdGF0aWMgaW50IG92ZXJsYXlfZ2V0
X3RhcmdldChjb25zdCB2b2lkICpmZHQsIGNvbnN0IHZvaWQgKmZkdG8sCisJCQkgICAgICBpbnQg
ZnJhZ21lbnQsIGNoYXIgY29uc3QgKipwYXRocCkKK3sKKwl1aW50MzJfdCBwaGFuZGxlOworCWNv
bnN0IGNoYXIgKnBhdGggPSBOVUxMOworCWludCBwYXRoX2xlbiA9IDAsIHJldDsKKworCS8qIFRy
eSBmaXJzdCB0byBkbyBhIHBoYW5kbGUgYmFzZWQgbG9va3VwICovCisJcGhhbmRsZSA9IG92ZXJs
YXlfZ2V0X3RhcmdldF9waGFuZGxlKGZkdG8sIGZyYWdtZW50KTsKKwlpZiAocGhhbmRsZSA9PSAo
dWludDMyX3QpLTEpCisJCXJldHVybiAtRkRUX0VSUl9CQURQSEFORExFOworCisJLyogbm8gcGhh
bmRsZSwgdHJ5IHBhdGggKi8KKwlpZiAoIXBoYW5kbGUpIHsKKwkJLyogQW5kIHRoZW4gYSBwYXRo
IGJhc2VkIGxvb2t1cCAqLworCQlwYXRoID0gZmR0X2dldHByb3AoZmR0bywgZnJhZ21lbnQsICJ0
YXJnZXQtcGF0aCIsICZwYXRoX2xlbik7CisJCWlmIChwYXRoKQorCQkJcmV0ID0gZmR0X3BhdGhf
b2Zmc2V0KGZkdCwgcGF0aCk7CisJCWVsc2UKKwkJCXJldCA9IHBhdGhfbGVuOworCX0gZWxzZQor
CQlyZXQgPSBmZHRfbm9kZV9vZmZzZXRfYnlfcGhhbmRsZShmZHQsIHBoYW5kbGUpOworCisJLyoK
KwkqIElmIHdlIGhhdmVuJ3QgZm91bmQgZWl0aGVyIGEgdGFyZ2V0IG9yIGEKKwkqIHRhcmdldC1w
YXRoIHByb3BlcnR5IGluIGEgbm9kZSB0aGF0IGNvbnRhaW5zIGEKKwkqIF9fb3ZlcmxheV9fIHN1
Ym5vZGUgKHdlIHdvdWxkbid0IGJlIGNhbGxlZAorCSogb3RoZXJ3aXNlKSwgY29uc2lkZXIgaXQg
YSBpbXByb3Blcmx5IHdyaXR0ZW4KKwkqIG92ZXJsYXkKKwkqLworCWlmIChyZXQgPCAwICYmIHBh
dGhfbGVuID09IC1GRFRfRVJSX05PVEZPVU5EKQorCQlyZXQgPSAtRkRUX0VSUl9CQURPVkVSTEFZ
OworCisJLyogcmV0dXJuIG9uIGVycm9yICovCisJaWYgKHJldCA8IDApCisJCXJldHVybiByZXQ7
CisKKwkvKiByZXR1cm4gcG9pbnRlciB0byBwYXRoIChpZiBhdmFpbGFibGUpICovCisJaWYgKHBh
dGhwKQorCQkqcGF0aHAgPSBwYXRoID8gcGF0aCA6IE5VTEw7CisKKwlyZXR1cm4gcmV0OworfQor
CisvKioKKyAqIG92ZXJsYXlfcGhhbmRsZV9hZGRfb2Zmc2V0IC0gSW5jcmVhc2VzIGEgcGhhbmRs
ZSBieSBhbiBvZmZzZXQKKyAqIEBmZHQ6IEJhc2UgZGV2aWNlIHRyZWUgYmxvYgorICogQG5vZGU6
IERldmljZSB0cmVlIG92ZXJsYXkgYmxvYgorICogQG5hbWU6IE5hbWUgb2YgdGhlIHByb3BlcnR5
IHRvIG1vZGlmeSAocGhhbmRsZSBvciBsaW51eCxwaGFuZGxlKQorICogQGRlbHRhOiBvZmZzZXQg
dG8gYXBwbHkKKyAqCisgKiBvdmVybGF5X3BoYW5kbGVfYWRkX29mZnNldCgpIGluY3JlbWVudHMg
YSBub2RlIHBoYW5kbGUgYnkgYSBnaXZlbgorICogb2Zmc2V0LgorICoKKyAqIHJldHVybnM6Cisg
KiAgICAgIDAgb24gc3VjY2Vzcy4KKyAqICAgICAgTmVnYXRpdmUgZXJyb3IgY29kZSBvbiBlcnJv
cgorICovCitzdGF0aWMgaW50IG92ZXJsYXlfcGhhbmRsZV9hZGRfb2Zmc2V0KHZvaWQgKmZkdCwg
aW50IG5vZGUsCisJCQkJICAgICAgY29uc3QgY2hhciAqbmFtZSwgdWludDMyX3QgZGVsdGEpCit7
CisJY29uc3QgZmR0MzJfdCAqdmFsOworCXVpbnQzMl90IGFkal92YWw7CisJaW50IGxlbjsKKwor
CXZhbCA9IGZkdF9nZXRwcm9wKGZkdCwgbm9kZSwgbmFtZSwgJmxlbik7CisJaWYgKCF2YWwpCisJ
CXJldHVybiBsZW47CisKKwlpZiAobGVuICE9IHNpemVvZigqdmFsKSkKKwkJcmV0dXJuIC1GRFRf
RVJSX0JBRFBIQU5ETEU7CisKKwlhZGpfdmFsID0gZmR0MzJfdG9fY3B1KCp2YWwpOworCWlmICgo
YWRqX3ZhbCArIGRlbHRhKSA8IGFkal92YWwpCisJCXJldHVybiAtRkRUX0VSUl9OT1BIQU5ETEVT
OworCisJYWRqX3ZhbCArPSBkZWx0YTsKKwlpZiAoYWRqX3ZhbCA9PSAodWludDMyX3QpLTEpCisJ
CXJldHVybiAtRkRUX0VSUl9OT1BIQU5ETEVTOworCisJcmV0dXJuIGZkdF9zZXRwcm9wX2lucGxh
Y2VfdTMyKGZkdCwgbm9kZSwgbmFtZSwgYWRqX3ZhbCk7Cit9CisKKy8qKgorICogb3ZlcmxheV9h
ZGp1c3Rfbm9kZV9waGFuZGxlcyAtIE9mZnNldHMgdGhlIHBoYW5kbGVzIG9mIGEgbm9kZQorICog
QGZkdG86IERldmljZSB0cmVlIG92ZXJsYXkgYmxvYgorICogQG5vZGU6IE9mZnNldCBvZiB0aGUg
bm9kZSB3ZSB3YW50IHRvIGFkanVzdAorICogQGRlbHRhOiBPZmZzZXQgdG8gc2hpZnQgdGhlIHBo
YW5kbGVzIG9mCisgKgorICogb3ZlcmxheV9hZGp1c3Rfbm9kZV9waGFuZGxlcygpIGFkZHMgYSBj
b25zdGFudCB0byBhbGwgdGhlIHBoYW5kbGVzCisgKiBvZiBhIGdpdmVuIG5vZGUuIFRoaXMgaXMg
bWFpbmx5IHVzZSBhcyBwYXJ0IG9mIHRoZSBvdmVybGF5CisgKiBhcHBsaWNhdGlvbiBwcm9jZXNz
LCB3aGVuIHdlIHdhbnQgdG8gdXBkYXRlIGFsbCB0aGUgb3ZlcmxheQorICogcGhhbmRsZXMgdG8g
bm90IGNvbmZsaWN0IHdpdGggdGhlIG92ZXJsYXlzIG9mIHRoZSBiYXNlIGRldmljZSB0cmVlLgor
ICoKKyAqIHJldHVybnM6CisgKiAgICAgIDAgb24gc3VjY2VzcworICogICAgICBOZWdhdGl2ZSBl
cnJvciBjb2RlIG9uIGZhaWx1cmUKKyAqLworc3RhdGljIGludCBvdmVybGF5X2FkanVzdF9ub2Rl
X3BoYW5kbGVzKHZvaWQgKmZkdG8sIGludCBub2RlLAorCQkJCQl1aW50MzJfdCBkZWx0YSkKK3sK
KwlpbnQgY2hpbGQ7CisJaW50IHJldDsKKworCXJldCA9IG92ZXJsYXlfcGhhbmRsZV9hZGRfb2Zm
c2V0KGZkdG8sIG5vZGUsICJwaGFuZGxlIiwgZGVsdGEpOworCWlmIChyZXQgJiYgcmV0ICE9IC1G
RFRfRVJSX05PVEZPVU5EKQorCQlyZXR1cm4gcmV0OworCisJcmV0ID0gb3ZlcmxheV9waGFuZGxl
X2FkZF9vZmZzZXQoZmR0bywgbm9kZSwgImxpbnV4LHBoYW5kbGUiLCBkZWx0YSk7CisJaWYgKHJl
dCAmJiByZXQgIT0gLUZEVF9FUlJfTk9URk9VTkQpCisJCXJldHVybiByZXQ7CisKKwlmZHRfZm9y
X2VhY2hfc3Vibm9kZShjaGlsZCwgZmR0bywgbm9kZSkgeworCQlyZXQgPSBvdmVybGF5X2FkanVz
dF9ub2RlX3BoYW5kbGVzKGZkdG8sIGNoaWxkLCBkZWx0YSk7CisJCWlmIChyZXQpCisJCQlyZXR1
cm4gcmV0OworCX0KKworCXJldHVybiAwOworfQorCisvKioKKyAqIG92ZXJsYXlfYWRqdXN0X2xv
Y2FsX3BoYW5kbGVzIC0gQWRqdXN0IHRoZSBwaGFuZGxlcyBvZiBhIHdob2xlIG92ZXJsYXkKKyAq
IEBmZHRvOiBEZXZpY2UgdHJlZSBvdmVybGF5IGJsb2IKKyAqIEBkZWx0YTogT2Zmc2V0IHRvIHNo
aWZ0IHRoZSBwaGFuZGxlcyBvZgorICoKKyAqIG92ZXJsYXlfYWRqdXN0X2xvY2FsX3BoYW5kbGVz
KCkgYWRkcyBhIGNvbnN0YW50IHRvIGFsbCB0aGUKKyAqIHBoYW5kbGVzIG9mIGFuIG92ZXJsYXku
IFRoaXMgaXMgbWFpbmx5IHVzZSBhcyBwYXJ0IG9mIHRoZSBvdmVybGF5CisgKiBhcHBsaWNhdGlv
biBwcm9jZXNzLCB3aGVuIHdlIHdhbnQgdG8gdXBkYXRlIGFsbCB0aGUgb3ZlcmxheQorICogcGhh
bmRsZXMgdG8gbm90IGNvbmZsaWN0IHdpdGggdGhlIG92ZXJsYXlzIG9mIHRoZSBiYXNlIGRldmlj
ZSB0cmVlLgorICoKKyAqIHJldHVybnM6CisgKiAgICAgIDAgb24gc3VjY2VzcworICogICAgICBO
ZWdhdGl2ZSBlcnJvciBjb2RlIG9uIGZhaWx1cmUKKyAqLworc3RhdGljIGludCBvdmVybGF5X2Fk
anVzdF9sb2NhbF9waGFuZGxlcyh2b2lkICpmZHRvLCB1aW50MzJfdCBkZWx0YSkKK3sKKwkvKgor
CSAqIFN0YXJ0IGFkanVzdGluZyB0aGUgcGhhbmRsZXMgZnJvbSB0aGUgb3ZlcmxheSByb290CisJ
ICovCisJcmV0dXJuIG92ZXJsYXlfYWRqdXN0X25vZGVfcGhhbmRsZXMoZmR0bywgMCwgZGVsdGEp
OworfQorCisvKioKKyAqIG92ZXJsYXlfdXBkYXRlX2xvY2FsX25vZGVfcmVmZXJlbmNlcyAtIEFk
anVzdCB0aGUgb3ZlcmxheSByZWZlcmVuY2VzCisgKiBAZmR0bzogRGV2aWNlIHRyZWUgb3Zlcmxh
eSBibG9iCisgKiBAdHJlZV9ub2RlOiBOb2RlIG9mZnNldCBvZiB0aGUgbm9kZSB0byBvcGVyYXRl
IG9uCisgKiBAZml4dXBfbm9kZTogTm9kZSBvZmZzZXQgb2YgdGhlIG1hdGNoaW5nIGxvY2FsIGZp
eHVwcyBub2RlCisgKiBAZGVsdGE6IE9mZnNldCB0byBzaGlmdCB0aGUgcGhhbmRsZXMgb2YKKyAq
CisgKiBvdmVybGF5X3VwZGF0ZV9sb2NhbF9ub2Rlc19yZWZlcmVuY2VzKCkgdXBkYXRlIHRoZSBw
aGFuZGxlcworICogcG9pbnRpbmcgdG8gYSBub2RlIHdpdGhpbiB0aGUgZGV2aWNlIHRyZWUgb3Zl
cmxheSBieSBhZGRpbmcgYQorICogY29uc3RhbnQgZGVsdGEuCisgKgorICogVGhpcyBpcyBtYWlu
bHkgdXNlZCBhcyBwYXJ0IG9mIGEgZGV2aWNlIHRyZWUgYXBwbGljYXRpb24gcHJvY2VzcywKKyAq
IHdoZXJlIHlvdSB3YW50IHRoZSBkZXZpY2UgdHJlZSBvdmVybGF5cyBwaGFuZGxlcyB0byBub3Qg
Y29uZmxpY3QKKyAqIHdpdGggdGhlIG9uZXMgZnJvbSB0aGUgYmFzZSBkZXZpY2UgdHJlZSBiZWZv
cmUgbWVyZ2luZyB0aGVtLgorICoKKyAqIHJldHVybnM6CisgKiAgICAgIDAgb24gc3VjY2Vzcwor
ICogICAgICBOZWdhdGl2ZSBlcnJvciBjb2RlIG9uIGZhaWx1cmUKKyAqLworc3RhdGljIGludCBv
dmVybGF5X3VwZGF0ZV9sb2NhbF9ub2RlX3JlZmVyZW5jZXModm9pZCAqZmR0bywKKwkJCQkJCWlu
dCB0cmVlX25vZGUsCisJCQkJCQlpbnQgZml4dXBfbm9kZSwKKwkJCQkJCXVpbnQzMl90IGRlbHRh
KQoreworCWludCBmaXh1cF9wcm9wOworCWludCBmaXh1cF9jaGlsZDsKKwlpbnQgcmV0OworCisJ
ZmR0X2Zvcl9lYWNoX3Byb3BlcnR5X29mZnNldChmaXh1cF9wcm9wLCBmZHRvLCBmaXh1cF9ub2Rl
KSB7CisJCWNvbnN0IGZkdDMyX3QgKmZpeHVwX3ZhbDsKKwkJY29uc3QgY2hhciAqdHJlZV92YWw7
CisJCWNvbnN0IGNoYXIgKm5hbWU7CisJCWludCBmaXh1cF9sZW47CisJCWludCB0cmVlX2xlbjsK
KwkJaW50IGk7CisKKwkJZml4dXBfdmFsID0gZmR0X2dldHByb3BfYnlfb2Zmc2V0KGZkdG8sIGZp
eHVwX3Byb3AsCisJCQkJCQkgICZuYW1lLCAmZml4dXBfbGVuKTsKKwkJaWYgKCFmaXh1cF92YWwp
CisJCQlyZXR1cm4gZml4dXBfbGVuOworCisJCWlmIChmaXh1cF9sZW4gJSBzaXplb2YodWludDMy
X3QpKQorCQkJcmV0dXJuIC1GRFRfRVJSX0JBRE9WRVJMQVk7CisKKwkJdHJlZV92YWwgPSBmZHRf
Z2V0cHJvcChmZHRvLCB0cmVlX25vZGUsIG5hbWUsICZ0cmVlX2xlbik7CisJCWlmICghdHJlZV92
YWwpIHsKKwkJCWlmICh0cmVlX2xlbiA9PSAtRkRUX0VSUl9OT1RGT1VORCkKKwkJCQlyZXR1cm4g
LUZEVF9FUlJfQkFET1ZFUkxBWTsKKworCQkJcmV0dXJuIHRyZWVfbGVuOworCQl9CisKKwkJZm9y
IChpID0gMDsgaSA8IChmaXh1cF9sZW4gLyBzaXplb2YodWludDMyX3QpKTsgaSsrKSB7CisJCQlm
ZHQzMl90IGFkal92YWw7CisJCQl1aW50MzJfdCBwb2Zmc2V0OworCisJCQlwb2Zmc2V0ID0gZmR0
MzJfdG9fY3B1KGZpeHVwX3ZhbFtpXSk7CisKKwkJCS8qCisJCQkgKiBwaGFuZGxlcyB0byBmaXh1
cCBjYW4gYmUgdW5hbGlnbmVkLgorCQkJICoKKwkJCSAqIFVzZSBhIG1lbWNweSBmb3IgdGhlIGFy
Y2hpdGVjdHVyZXMgdGhhdCBkbworCQkJICogbm90IHN1cHBvcnQgdW5hbGlnbmVkIGFjY2Vzc2Vz
LgorCQkJICovCisJCQltZW1jcHkoJmFkal92YWwsIHRyZWVfdmFsICsgcG9mZnNldCwgc2l6ZW9m
KGFkal92YWwpKTsKKworCQkJYWRqX3ZhbCA9IGNwdV90b19mZHQzMihmZHQzMl90b19jcHUoYWRq
X3ZhbCkgKyBkZWx0YSk7CisKKwkJCXJldCA9IGZkdF9zZXRwcm9wX2lucGxhY2VfbmFtZWxlbl9w
YXJ0aWFsKGZkdG8sCisJCQkJCQkJCSAgdHJlZV9ub2RlLAorCQkJCQkJCQkgIG5hbWUsCisJCQkJ
CQkJCSAgc3RybGVuKG5hbWUpLAorCQkJCQkJCQkgIHBvZmZzZXQsCisJCQkJCQkJCSAgJmFkal92
YWwsCisJCQkJCQkJCSAgc2l6ZW9mKGFkal92YWwpKTsKKwkJCWlmIChyZXQgPT0gLUZEVF9FUlJf
Tk9TUEFDRSkKKwkJCQlyZXR1cm4gLUZEVF9FUlJfQkFET1ZFUkxBWTsKKworCQkJaWYgKHJldCkK
KwkJCQlyZXR1cm4gcmV0OworCQl9CisJfQorCisJZmR0X2Zvcl9lYWNoX3N1Ym5vZGUoZml4dXBf
Y2hpbGQsIGZkdG8sIGZpeHVwX25vZGUpIHsKKwkJY29uc3QgY2hhciAqZml4dXBfY2hpbGRfbmFt
ZSA9IGZkdF9nZXRfbmFtZShmZHRvLCBmaXh1cF9jaGlsZCwKKwkJCQkJCQkgICAgTlVMTCk7CisJ
CWludCB0cmVlX2NoaWxkOworCisJCXRyZWVfY2hpbGQgPSBmZHRfc3Vibm9kZV9vZmZzZXQoZmR0
bywgdHJlZV9ub2RlLAorCQkJCQkJZml4dXBfY2hpbGRfbmFtZSk7CisJCWlmICh0cmVlX2NoaWxk
ID09IC1GRFRfRVJSX05PVEZPVU5EKQorCQkJcmV0dXJuIC1GRFRfRVJSX0JBRE9WRVJMQVk7CisJ
CWlmICh0cmVlX2NoaWxkIDwgMCkKKwkJCXJldHVybiB0cmVlX2NoaWxkOworCisJCXJldCA9IG92
ZXJsYXlfdXBkYXRlX2xvY2FsX25vZGVfcmVmZXJlbmNlcyhmZHRvLAorCQkJCQkJCSAgIHRyZWVf
Y2hpbGQsCisJCQkJCQkJICAgZml4dXBfY2hpbGQsCisJCQkJCQkJICAgZGVsdGEpOworCQlpZiAo
cmV0KQorCQkJcmV0dXJuIHJldDsKKwl9CisKKwlyZXR1cm4gMDsKK30KKworLyoqCisgKiBvdmVy
bGF5X3VwZGF0ZV9sb2NhbF9yZWZlcmVuY2VzIC0gQWRqdXN0IHRoZSBvdmVybGF5IHJlZmVyZW5j
ZXMKKyAqIEBmZHRvOiBEZXZpY2UgdHJlZSBvdmVybGF5IGJsb2IKKyAqIEBkZWx0YTogT2Zmc2V0
IHRvIHNoaWZ0IHRoZSBwaGFuZGxlcyBvZgorICoKKyAqIG92ZXJsYXlfdXBkYXRlX2xvY2FsX3Jl
ZmVyZW5jZXMoKSB1cGRhdGUgYWxsIHRoZSBwaGFuZGxlcyBwb2ludGluZworICogdG8gYSBub2Rl
IHdpdGhpbiB0aGUgZGV2aWNlIHRyZWUgb3ZlcmxheSBieSBhZGRpbmcgYSBjb25zdGFudAorICog
ZGVsdGEgdG8gbm90IGNvbmZsaWN0IHdpdGggdGhlIGJhc2Ugb3ZlcmxheS4KKyAqCisgKiBUaGlz
IGlzIG1haW5seSB1c2VkIGFzIHBhcnQgb2YgYSBkZXZpY2UgdHJlZSBhcHBsaWNhdGlvbiBwcm9j
ZXNzLAorICogd2hlcmUgeW91IHdhbnQgdGhlIGRldmljZSB0cmVlIG92ZXJsYXlzIHBoYW5kbGVz
IHRvIG5vdCBjb25mbGljdAorICogd2l0aCB0aGUgb25lcyBmcm9tIHRoZSBiYXNlIGRldmljZSB0
cmVlIGJlZm9yZSBtZXJnaW5nIHRoZW0uCisgKgorICogcmV0dXJuczoKKyAqICAgICAgMCBvbiBz
dWNjZXNzCisgKiAgICAgIE5lZ2F0aXZlIGVycm9yIGNvZGUgb24gZmFpbHVyZQorICovCitzdGF0
aWMgaW50IG92ZXJsYXlfdXBkYXRlX2xvY2FsX3JlZmVyZW5jZXModm9pZCAqZmR0bywgdWludDMy
X3QgZGVsdGEpCit7CisJaW50IGZpeHVwczsKKworCWZpeHVwcyA9IGZkdF9wYXRoX29mZnNldChm
ZHRvLCAiL19fbG9jYWxfZml4dXBzX18iKTsKKwlpZiAoZml4dXBzIDwgMCkgeworCQkvKiBUaGVy
ZSdzIG5vIGxvY2FsIHBoYW5kbGVzIHRvIGFkanVzdCwgYmFpbCBvdXQgKi8KKwkJaWYgKGZpeHVw
cyA9PSAtRkRUX0VSUl9OT1RGT1VORCkKKwkJCXJldHVybiAwOworCisJCXJldHVybiBmaXh1cHM7
CisJfQorCisJLyoKKwkgKiBVcGRhdGUgb3VyIGxvY2FsIHJlZmVyZW5jZXMgZnJvbSB0aGUgcm9v
dCBvZiB0aGUgdHJlZQorCSAqLworCXJldHVybiBvdmVybGF5X3VwZGF0ZV9sb2NhbF9ub2RlX3Jl
ZmVyZW5jZXMoZmR0bywgMCwgZml4dXBzLAorCQkJCQkJICAgIGRlbHRhKTsKK30KKworLyoqCisg
KiBvdmVybGF5X2ZpeHVwX29uZV9waGFuZGxlIC0gU2V0IGFuIG92ZXJsYXkgcGhhbmRsZSB0byB0
aGUgYmFzZSBvbmUKKyAqIEBmZHQ6IEJhc2UgRGV2aWNlIFRyZWUgYmxvYgorICogQGZkdG86IERl
dmljZSB0cmVlIG92ZXJsYXkgYmxvYgorICogQHN5bWJvbHNfb2ZmOiBOb2RlIG9mZnNldCBvZiB0
aGUgc3ltYm9scyBub2RlIGluIHRoZSBiYXNlIGRldmljZSB0cmVlCisgKiBAcGF0aDogUGF0aCB0
byBhIG5vZGUgaG9sZGluZyBhIHBoYW5kbGUgaW4gdGhlIG92ZXJsYXkKKyAqIEBwYXRoX2xlbjog
bnVtYmVyIG9mIHBhdGggY2hhcmFjdGVycyB0byBjb25zaWRlcgorICogQG5hbWU6IE5hbWUgb2Yg
dGhlIHByb3BlcnR5IGhvbGRpbmcgdGhlIHBoYW5kbGUgcmVmZXJlbmNlIGluIHRoZSBvdmVybGF5
CisgKiBAbmFtZV9sZW46IG51bWJlciBvZiBuYW1lIGNoYXJhY3RlcnMgdG8gY29uc2lkZXIKKyAq
IEBwb2Zmc2V0OiBPZmZzZXQgd2l0aGluIHRoZSBvdmVybGF5IHByb3BlcnR5IHdoZXJlIHRoZSBw
aGFuZGxlIGlzIHN0b3JlZAorICogQGxhYmVsOiBMYWJlbCBvZiB0aGUgbm9kZSByZWZlcmVuY2Vk
IGJ5IHRoZSBwaGFuZGxlCisgKgorICogb3ZlcmxheV9maXh1cF9vbmVfcGhhbmRsZSgpIHJlc29s
dmVzIGFuIG92ZXJsYXkgcGhhbmRsZSBwb2ludGluZyB0bworICogYSBub2RlIGluIHRoZSBiYXNl
IGRldmljZSB0cmVlLgorICoKKyAqIFRoaXMgaXMgcGFydCBvZiB0aGUgZGV2aWNlIHRyZWUgb3Zl
cmxheSBhcHBsaWNhdGlvbiBwcm9jZXNzLCB3aGVuCisgKiB5b3Ugd2FudCBhbGwgdGhlIHBoYW5k
bGVzIGluIHRoZSBvdmVybGF5IHRvIHBvaW50IHRvIHRoZSBhY3R1YWwKKyAqIGJhc2UgZHQgbm9k
ZXMuCisgKgorICogcmV0dXJuczoKKyAqICAgICAgMCBvbiBzdWNjZXNzCisgKiAgICAgIE5lZ2F0
aXZlIGVycm9yIGNvZGUgb24gZmFpbHVyZQorICovCitzdGF0aWMgaW50IG92ZXJsYXlfZml4dXBf
b25lX3BoYW5kbGUodm9pZCAqZmR0LCB2b2lkICpmZHRvLAorCQkJCSAgICAgaW50IHN5bWJvbHNf
b2ZmLAorCQkJCSAgICAgY29uc3QgY2hhciAqcGF0aCwgdWludDMyX3QgcGF0aF9sZW4sCisJCQkJ
ICAgICBjb25zdCBjaGFyICpuYW1lLCB1aW50MzJfdCBuYW1lX2xlbiwKKwkJCQkgICAgIGludCBw
b2Zmc2V0LCBjb25zdCBjaGFyICpsYWJlbCkKK3sKKwljb25zdCBjaGFyICpzeW1ib2xfcGF0aDsK
Kwl1aW50MzJfdCBwaGFuZGxlOworCWZkdDMyX3QgcGhhbmRsZV9wcm9wOworCWludCBzeW1ib2xf
b2ZmLCBmaXh1cF9vZmY7CisJaW50IHByb3BfbGVuOworCisJaWYgKHN5bWJvbHNfb2ZmIDwgMCkK
KwkJcmV0dXJuIHN5bWJvbHNfb2ZmOworCisJc3ltYm9sX3BhdGggPSBmZHRfZ2V0cHJvcChmZHQs
IHN5bWJvbHNfb2ZmLCBsYWJlbCwKKwkJCQkgICZwcm9wX2xlbik7CisJaWYgKCFzeW1ib2xfcGF0
aCkKKwkJcmV0dXJuIHByb3BfbGVuOworCisJc3ltYm9sX29mZiA9IGZkdF9wYXRoX29mZnNldChm
ZHQsIHN5bWJvbF9wYXRoKTsKKwlpZiAoc3ltYm9sX29mZiA8IDApCisJCXJldHVybiBzeW1ib2xf
b2ZmOworCisJcGhhbmRsZSA9IGZkdF9nZXRfcGhhbmRsZShmZHQsIHN5bWJvbF9vZmYpOworCWlm
ICghcGhhbmRsZSkKKwkJcmV0dXJuIC1GRFRfRVJSX05PVEZPVU5EOworCisJZml4dXBfb2ZmID0g
ZmR0X3BhdGhfb2Zmc2V0X25hbWVsZW4oZmR0bywgcGF0aCwgcGF0aF9sZW4pOworCWlmIChmaXh1
cF9vZmYgPT0gLUZEVF9FUlJfTk9URk9VTkQpCisJCXJldHVybiAtRkRUX0VSUl9CQURPVkVSTEFZ
OworCWlmIChmaXh1cF9vZmYgPCAwKQorCQlyZXR1cm4gZml4dXBfb2ZmOworCisJcGhhbmRsZV9w
cm9wID0gY3B1X3RvX2ZkdDMyKHBoYW5kbGUpOworCXJldHVybiBmZHRfc2V0cHJvcF9pbnBsYWNl
X25hbWVsZW5fcGFydGlhbChmZHRvLCBmaXh1cF9vZmYsCisJCQkJCQkgICBuYW1lLCBuYW1lX2xl
biwgcG9mZnNldCwKKwkJCQkJCSAgICZwaGFuZGxlX3Byb3AsCisJCQkJCQkgICBzaXplb2YocGhh
bmRsZV9wcm9wKSk7Cit9OworCisvKioKKyAqIG92ZXJsYXlfZml4dXBfcGhhbmRsZSAtIFNldCBh
biBvdmVybGF5IHBoYW5kbGUgdG8gdGhlIGJhc2Ugb25lCisgKiBAZmR0OiBCYXNlIERldmljZSBU
cmVlIGJsb2IKKyAqIEBmZHRvOiBEZXZpY2UgdHJlZSBvdmVybGF5IGJsb2IKKyAqIEBzeW1ib2xz
X29mZjogTm9kZSBvZmZzZXQgb2YgdGhlIHN5bWJvbHMgbm9kZSBpbiB0aGUgYmFzZSBkZXZpY2Ug
dHJlZQorICogQHByb3BlcnR5OiBQcm9wZXJ0eSBvZmZzZXQgaW4gdGhlIG92ZXJsYXkgaG9sZGlu
ZyB0aGUgbGlzdCBvZiBmaXh1cHMKKyAqCisgKiBvdmVybGF5X2ZpeHVwX3BoYW5kbGUoKSByZXNv
bHZlcyBhbGwgdGhlIG92ZXJsYXkgcGhhbmRsZXMgcG9pbnRlZAorICogdG8gaW4gYSBfX2ZpeHVw
c19fIHByb3BlcnR5LCBhbmQgdXBkYXRlcyB0aGVtIHRvIG1hdGNoIHRoZSBwaGFuZGxlcworICog
aW4gdXNlIGluIHRoZSBiYXNlIGRldmljZSB0cmVlLgorICoKKyAqIFRoaXMgaXMgcGFydCBvZiB0
aGUgZGV2aWNlIHRyZWUgb3ZlcmxheSBhcHBsaWNhdGlvbiBwcm9jZXNzLCB3aGVuCisgKiB5b3Ug
d2FudCBhbGwgdGhlIHBoYW5kbGVzIGluIHRoZSBvdmVybGF5IHRvIHBvaW50IHRvIHRoZSBhY3R1
YWwKKyAqIGJhc2UgZHQgbm9kZXMuCisgKgorICogcmV0dXJuczoKKyAqICAgICAgMCBvbiBzdWNj
ZXNzCisgKiAgICAgIE5lZ2F0aXZlIGVycm9yIGNvZGUgb24gZmFpbHVyZQorICovCitzdGF0aWMg
aW50IG92ZXJsYXlfZml4dXBfcGhhbmRsZSh2b2lkICpmZHQsIHZvaWQgKmZkdG8sIGludCBzeW1i
b2xzX29mZiwKKwkJCQkgaW50IHByb3BlcnR5KQoreworCWNvbnN0IGNoYXIgKnZhbHVlOworCWNv
bnN0IGNoYXIgKmxhYmVsOworCWludCBsZW47CisKKwl2YWx1ZSA9IGZkdF9nZXRwcm9wX2J5X29m
ZnNldChmZHRvLCBwcm9wZXJ0eSwKKwkJCQkgICAgICAmbGFiZWwsICZsZW4pOworCWlmICghdmFs
dWUpIHsKKwkJaWYgKGxlbiA9PSAtRkRUX0VSUl9OT1RGT1VORCkKKwkJCXJldHVybiAtRkRUX0VS
Ul9JTlRFUk5BTDsKKworCQlyZXR1cm4gbGVuOworCX0KKworCWRvIHsKKwkJY29uc3QgY2hhciAq
cGF0aCwgKm5hbWUsICpmaXh1cF9lbmQ7CisJCWNvbnN0IGNoYXIgKmZpeHVwX3N0ciA9IHZhbHVl
OworCQl1aW50MzJfdCBwYXRoX2xlbiwgbmFtZV9sZW47CisJCXVpbnQzMl90IGZpeHVwX2xlbjsK
KwkJY2hhciAqc2VwLCAqZW5kcHRyOworCQlpbnQgcG9mZnNldCwgcmV0OworCisJCWZpeHVwX2Vu
ZCA9IG1lbWNocih2YWx1ZSwgJ1wwJywgbGVuKTsKKwkJaWYgKCFmaXh1cF9lbmQpCisJCQlyZXR1
cm4gLUZEVF9FUlJfQkFET1ZFUkxBWTsKKwkJZml4dXBfbGVuID0gZml4dXBfZW5kIC0gZml4dXBf
c3RyOworCisJCWxlbiAtPSBmaXh1cF9sZW4gKyAxOworCQl2YWx1ZSArPSBmaXh1cF9sZW4gKyAx
OworCisJCXBhdGggPSBmaXh1cF9zdHI7CisJCXNlcCA9IG1lbWNocihmaXh1cF9zdHIsICc6Jywg
Zml4dXBfbGVuKTsKKwkJaWYgKCFzZXAgfHwgKnNlcCAhPSAnOicpCisJCQlyZXR1cm4gLUZEVF9F
UlJfQkFET1ZFUkxBWTsKKworCQlwYXRoX2xlbiA9IHNlcCAtIHBhdGg7CisJCWlmIChwYXRoX2xl
biA9PSAoZml4dXBfbGVuIC0gMSkpCisJCQlyZXR1cm4gLUZEVF9FUlJfQkFET1ZFUkxBWTsKKwor
CQlmaXh1cF9sZW4gLT0gcGF0aF9sZW4gKyAxOworCQluYW1lID0gc2VwICsgMTsKKwkJc2VwID0g
bWVtY2hyKG5hbWUsICc6JywgZml4dXBfbGVuKTsKKwkJaWYgKCFzZXAgfHwgKnNlcCAhPSAnOicp
CisJCQlyZXR1cm4gLUZEVF9FUlJfQkFET1ZFUkxBWTsKKworCQluYW1lX2xlbiA9IHNlcCAtIG5h
bWU7CisJCWlmICghbmFtZV9sZW4pCisJCQlyZXR1cm4gLUZEVF9FUlJfQkFET1ZFUkxBWTsKKwor
CQlwb2Zmc2V0ID0gc3RydG91bChzZXAgKyAxLCAmZW5kcHRyLCAxMCk7CisJCWlmICgoKmVuZHB0
ciAhPSAnXDAnKSB8fCAoZW5kcHRyIDw9IChzZXAgKyAxKSkpCisJCQlyZXR1cm4gLUZEVF9FUlJf
QkFET1ZFUkxBWTsKKworCQlyZXQgPSBvdmVybGF5X2ZpeHVwX29uZV9waGFuZGxlKGZkdCwgZmR0
bywgc3ltYm9sc19vZmYsCisJCQkJCQlwYXRoLCBwYXRoX2xlbiwgbmFtZSwgbmFtZV9sZW4sCisJ
CQkJCQlwb2Zmc2V0LCBsYWJlbCk7CisJCWlmIChyZXQpCisJCQlyZXR1cm4gcmV0OworCX0gd2hp
bGUgKGxlbiA+IDApOworCisJcmV0dXJuIDA7Cit9CisKKy8qKgorICogb3ZlcmxheV9maXh1cF9w
aGFuZGxlcyAtIFJlc29sdmUgdGhlIG92ZXJsYXkgcGhhbmRsZXMgdG8gdGhlIGJhc2UKKyAqICAg
ICAgICAgICAgICAgICAgICAgICAgICBkZXZpY2UgdHJlZQorICogQGZkdDogQmFzZSBEZXZpY2Ug
VHJlZSBibG9iCisgKiBAZmR0bzogRGV2aWNlIHRyZWUgb3ZlcmxheSBibG9iCisgKgorICogb3Zl
cmxheV9maXh1cF9waGFuZGxlcygpIHJlc29sdmVzIGFsbCB0aGUgb3ZlcmxheSBwaGFuZGxlcyBw
b2ludGluZworICogdG8gbm9kZXMgaW4gdGhlIGJhc2UgZGV2aWNlIHRyZWUuCisgKgorICogVGhp
cyBpcyBvbmUgb2YgdGhlIHN0ZXBzIG9mIHRoZSBkZXZpY2UgdHJlZSBvdmVybGF5IGFwcGxpY2F0
aW9uCisgKiBwcm9jZXNzLCB3aGVuIHlvdSB3YW50IGFsbCB0aGUgcGhhbmRsZXMgaW4gdGhlIG92
ZXJsYXkgdG8gcG9pbnQgdG8KKyAqIHRoZSBhY3R1YWwgYmFzZSBkdCBub2Rlcy4KKyAqCisgKiBy
ZXR1cm5zOgorICogICAgICAwIG9uIHN1Y2Nlc3MKKyAqICAgICAgTmVnYXRpdmUgZXJyb3IgY29k
ZSBvbiBmYWlsdXJlCisgKi8KK3N0YXRpYyBpbnQgb3ZlcmxheV9maXh1cF9waGFuZGxlcyh2b2lk
ICpmZHQsIHZvaWQgKmZkdG8pCit7CisJaW50IGZpeHVwc19vZmYsIHN5bWJvbHNfb2ZmOworCWlu
dCBwcm9wZXJ0eTsKKworCS8qIFdlIGNhbiBoYXZlIG92ZXJsYXlzIHdpdGhvdXQgYW55IGZpeHVw
cyAqLworCWZpeHVwc19vZmYgPSBmZHRfcGF0aF9vZmZzZXQoZmR0bywgIi9fX2ZpeHVwc19fIik7
CisJaWYgKGZpeHVwc19vZmYgPT0gLUZEVF9FUlJfTk9URk9VTkQpCisJCXJldHVybiAwOyAvKiBu
b3RoaW5nIHRvIGRvICovCisJaWYgKGZpeHVwc19vZmYgPCAwKQorCQlyZXR1cm4gZml4dXBzX29m
ZjsKKworCS8qIEFuZCBiYXNlIERUcyB3aXRob3V0IHN5bWJvbHMgKi8KKwlzeW1ib2xzX29mZiA9
IGZkdF9wYXRoX29mZnNldChmZHQsICIvX19zeW1ib2xzX18iKTsKKwlpZiAoKHN5bWJvbHNfb2Zm
IDwgMCAmJiAoc3ltYm9sc19vZmYgIT0gLUZEVF9FUlJfTk9URk9VTkQpKSkKKwkJcmV0dXJuIHN5
bWJvbHNfb2ZmOworCisJZmR0X2Zvcl9lYWNoX3Byb3BlcnR5X29mZnNldChwcm9wZXJ0eSwgZmR0
bywgZml4dXBzX29mZikgeworCQlpbnQgcmV0OworCisJCXJldCA9IG92ZXJsYXlfZml4dXBfcGhh
bmRsZShmZHQsIGZkdG8sIHN5bWJvbHNfb2ZmLCBwcm9wZXJ0eSk7CisJCWlmIChyZXQpCisJCQly
ZXR1cm4gcmV0OworCX0KKworCXJldHVybiAwOworfQorCisvKioKKyAqIG92ZXJsYXlfYXBwbHlf
bm9kZSAtIE1lcmdlcyBhIG5vZGUgaW50byB0aGUgYmFzZSBkZXZpY2UgdHJlZQorICogQGZkdDog
QmFzZSBEZXZpY2UgVHJlZSBibG9iCisgKiBAdGFyZ2V0OiBOb2RlIG9mZnNldCBpbiB0aGUgYmFz
ZSBkZXZpY2UgdHJlZSB0byBhcHBseSB0aGUgZnJhZ21lbnQgdG8KKyAqIEBmZHRvOiBEZXZpY2Ug
dHJlZSBvdmVybGF5IGJsb2IKKyAqIEBub2RlOiBOb2RlIG9mZnNldCBpbiB0aGUgb3ZlcmxheSBo
b2xkaW5nIHRoZSBjaGFuZ2VzIHRvIG1lcmdlCisgKgorICogb3ZlcmxheV9hcHBseV9ub2RlKCkg
bWVyZ2VzIGEgbm9kZSBpbnRvIGEgdGFyZ2V0IGJhc2UgZGV2aWNlIHRyZWUKKyAqIG5vZGUgcG9p
bnRlZC4KKyAqCisgKiBUaGlzIGlzIHBhcnQgb2YgdGhlIGZpbmFsIHN0ZXAgaW4gdGhlIGRldmlj
ZSB0cmVlIG92ZXJsYXkKKyAqIGFwcGxpY2F0aW9uIHByb2Nlc3MsIHdoZW4gYWxsIHRoZSBwaGFu
ZGxlcyBoYXZlIGJlZW4gYWRqdXN0ZWQgYW5kCisgKiByZXNvbHZlZCBhbmQgeW91IGp1c3QgaGF2
ZSB0byBtZXJnZSBvdmVybGF5IGludG8gdGhlIGJhc2UgZGV2aWNlCisgKiB0cmVlLgorICoKKyAq
IHJldHVybnM6CisgKiAgICAgIDAgb24gc3VjY2VzcworICogICAgICBOZWdhdGl2ZSBlcnJvciBj
b2RlIG9uIGZhaWx1cmUKKyAqLworc3RhdGljIGludCBvdmVybGF5X2FwcGx5X25vZGUodm9pZCAq
ZmR0LCBpbnQgdGFyZ2V0LAorCQkJICAgICAgdm9pZCAqZmR0bywgaW50IG5vZGUpCit7CisJaW50
IHByb3BlcnR5OworCWludCBzdWJub2RlOworCisJZmR0X2Zvcl9lYWNoX3Byb3BlcnR5X29mZnNl
dChwcm9wZXJ0eSwgZmR0bywgbm9kZSkgeworCQljb25zdCBjaGFyICpuYW1lOworCQljb25zdCB2
b2lkICpwcm9wOworCQlpbnQgcHJvcF9sZW47CisJCWludCByZXQ7CisKKwkJcHJvcCA9IGZkdF9n
ZXRwcm9wX2J5X29mZnNldChmZHRvLCBwcm9wZXJ0eSwgJm5hbWUsCisJCQkJCSAgICAgJnByb3Bf
bGVuKTsKKwkJaWYgKHByb3BfbGVuID09IC1GRFRfRVJSX05PVEZPVU5EKQorCQkJcmV0dXJuIC1G
RFRfRVJSX0lOVEVSTkFMOworCQlpZiAocHJvcF9sZW4gPCAwKQorCQkJcmV0dXJuIHByb3BfbGVu
OworCisJCXJldCA9IGZkdF9zZXRwcm9wKGZkdCwgdGFyZ2V0LCBuYW1lLCBwcm9wLCBwcm9wX2xl
bik7CisJCWlmIChyZXQpCisJCQlyZXR1cm4gcmV0OworCX0KKworCWZkdF9mb3JfZWFjaF9zdWJu
b2RlKHN1Ym5vZGUsIGZkdG8sIG5vZGUpIHsKKwkJY29uc3QgY2hhciAqbmFtZSA9IGZkdF9nZXRf
bmFtZShmZHRvLCBzdWJub2RlLCBOVUxMKTsKKwkJaW50IG5ub2RlOworCQlpbnQgcmV0OworCisJ
CW5ub2RlID0gZmR0X2FkZF9zdWJub2RlKGZkdCwgdGFyZ2V0LCBuYW1lKTsKKwkJaWYgKG5ub2Rl
ID09IC1GRFRfRVJSX0VYSVNUUykgeworCQkJbm5vZGUgPSBmZHRfc3Vibm9kZV9vZmZzZXQoZmR0
LCB0YXJnZXQsIG5hbWUpOworCQkJaWYgKG5ub2RlID09IC1GRFRfRVJSX05PVEZPVU5EKQorCQkJ
CXJldHVybiAtRkRUX0VSUl9JTlRFUk5BTDsKKwkJfQorCisJCWlmIChubm9kZSA8IDApCisJCQly
ZXR1cm4gbm5vZGU7CisKKwkJcmV0ID0gb3ZlcmxheV9hcHBseV9ub2RlKGZkdCwgbm5vZGUsIGZk
dG8sIHN1Ym5vZGUpOworCQlpZiAocmV0KQorCQkJcmV0dXJuIHJldDsKKwl9CisKKwlyZXR1cm4g
MDsKK30KKworLyoqCisgKiBvdmVybGF5X21lcmdlIC0gTWVyZ2UgYW4gb3ZlcmxheSBpbnRvIGl0
cyBiYXNlIGRldmljZSB0cmVlCisgKiBAZmR0OiBCYXNlIERldmljZSBUcmVlIGJsb2IKKyAqIEBm
ZHRvOiBEZXZpY2UgdHJlZSBvdmVybGF5IGJsb2IKKyAqCisgKiBvdmVybGF5X21lcmdlKCkgbWVy
Z2VzIGFuIG92ZXJsYXkgaW50byBpdHMgYmFzZSBkZXZpY2UgdHJlZS4KKyAqCisgKiBUaGlzIGlz
IHRoZSBuZXh0IHRvIGxhc3Qgc3RlcCBpbiB0aGUgZGV2aWNlIHRyZWUgb3ZlcmxheSBhcHBsaWNh
dGlvbgorICogcHJvY2Vzcywgd2hlbiBhbGwgdGhlIHBoYW5kbGVzIGhhdmUgYmVlbiBhZGp1c3Rl
ZCBhbmQgcmVzb2x2ZWQgYW5kCisgKiB5b3UganVzdCBoYXZlIHRvIG1lcmdlIG92ZXJsYXkgaW50
byB0aGUgYmFzZSBkZXZpY2UgdHJlZS4KKyAqCisgKiByZXR1cm5zOgorICogICAgICAwIG9uIHN1
Y2Nlc3MKKyAqICAgICAgTmVnYXRpdmUgZXJyb3IgY29kZSBvbiBmYWlsdXJlCisgKi8KK3N0YXRp
YyBpbnQgb3ZlcmxheV9tZXJnZSh2b2lkICpmZHQsIHZvaWQgKmZkdG8pCit7CisJaW50IGZyYWdt
ZW50OworCisJZmR0X2Zvcl9lYWNoX3N1Ym5vZGUoZnJhZ21lbnQsIGZkdG8sIDApIHsKKwkJaW50
IG92ZXJsYXk7CisJCWludCB0YXJnZXQ7CisJCWludCByZXQ7CisKKwkJLyoKKwkJICogRWFjaCBm
cmFnbWVudHMgd2lsbCBoYXZlIGFuIF9fb3ZlcmxheV9fIG5vZGUuIElmCisJCSAqIHRoZXkgZG9u
J3QsIGl0J3Mgbm90IHN1cHBvc2VkIHRvIGJlIG1lcmdlZAorCQkgKi8KKwkJb3ZlcmxheSA9IGZk
dF9zdWJub2RlX29mZnNldChmZHRvLCBmcmFnbWVudCwgIl9fb3ZlcmxheV9fIik7CisJCWlmIChv
dmVybGF5ID09IC1GRFRfRVJSX05PVEZPVU5EKQorCQkJY29udGludWU7CisKKwkJaWYgKG92ZXJs
YXkgPCAwKQorCQkJcmV0dXJuIG92ZXJsYXk7CisKKwkJdGFyZ2V0ID0gb3ZlcmxheV9nZXRfdGFy
Z2V0KGZkdCwgZmR0bywgZnJhZ21lbnQsIE5VTEwpOworCQlpZiAodGFyZ2V0IDwgMCkKKwkJCXJl
dHVybiB0YXJnZXQ7CisKKwkJcmV0ID0gb3ZlcmxheV9hcHBseV9ub2RlKGZkdCwgdGFyZ2V0LCBm
ZHRvLCBvdmVybGF5KTsKKwkJaWYgKHJldCkKKwkJCXJldHVybiByZXQ7CisJfQorCisJcmV0dXJu
IDA7Cit9CisKK3N0YXRpYyBpbnQgZ2V0X3BhdGhfbGVuKGNvbnN0IHZvaWQgKmZkdCwgaW50IG5v
ZGVvZmZzZXQpCit7CisJaW50IGxlbiA9IDAsIG5hbWVsZW47CisJY29uc3QgY2hhciAqbmFtZTsK
KworCUZEVF9DSEVDS19IRUFERVIoZmR0KTsKKworCWZvciAoOzspIHsKKwkJbmFtZSA9IGZkdF9n
ZXRfbmFtZShmZHQsIG5vZGVvZmZzZXQsICZuYW1lbGVuKTsKKwkJaWYgKCFuYW1lKQorCQkJcmV0
dXJuIG5hbWVsZW47CisKKwkJLyogcm9vdD8gd2UncmUgZG9uZSAqLworCQlpZiAobmFtZWxlbiA9
PSAwKQorCQkJYnJlYWs7CisKKwkJbm9kZW9mZnNldCA9IGZkdF9wYXJlbnRfb2Zmc2V0KGZkdCwg
bm9kZW9mZnNldCk7CisJCWlmIChub2Rlb2Zmc2V0IDwgMCkKKwkJCXJldHVybiBub2Rlb2Zmc2V0
OworCQlsZW4gKz0gbmFtZWxlbiArIDE7CisJfQorCisJLyogaW4gY2FzZSBvZiByb290IHByZXRl
bmQgaXQncyAiLyIgKi8KKwlpZiAobGVuID09IDApCisJCWxlbisrOworCXJldHVybiBsZW47Cit9
CisKKy8qKgorICogb3ZlcmxheV9zeW1ib2xfdXBkYXRlIC0gVXBkYXRlIHRoZSBzeW1ib2xzIG9m
IGJhc2UgdHJlZSBhZnRlciBhIG1lcmdlCisgKiBAZmR0OiBCYXNlIERldmljZSBUcmVlIGJsb2IK
KyAqIEBmZHRvOiBEZXZpY2UgdHJlZSBvdmVybGF5IGJsb2IKKyAqCisgKiBvdmVybGF5X3N5bWJv
bF91cGRhdGUoKSB1cGRhdGVzIHRoZSBzeW1ib2xzIG9mIHRoZSBiYXNlIHRyZWUgd2l0aCB0aGUK
KyAqIHN5bWJvbHMgb2YgdGhlIGFwcGxpZWQgb3ZlcmxheQorICoKKyAqIFRoaXMgaXMgdGhlIGxh
c3Qgc3RlcCBpbiB0aGUgZGV2aWNlIHRyZWUgb3ZlcmxheSBhcHBsaWNhdGlvbgorICogcHJvY2Vz
cywgYWxsb3dpbmcgdGhlIHJlZmVyZW5jZSBvZiBvdmVybGF5IHN5bWJvbHMgYnkgc3Vic2VxdWVu
dAorICogb3ZlcmxheSBvcGVyYXRpb25zLgorICoKKyAqIHJldHVybnM6CisgKiAgICAgIDAgb24g
c3VjY2VzcworICogICAgICBOZWdhdGl2ZSBlcnJvciBjb2RlIG9uIGZhaWx1cmUKKyAqLworc3Rh
dGljIGludCBvdmVybGF5X3N5bWJvbF91cGRhdGUodm9pZCAqZmR0LCB2b2lkICpmZHRvKQorewor
CWludCByb290X3N5bSwgb3Zfc3ltLCBwcm9wLCBwYXRoX2xlbiwgZnJhZ21lbnQsIHRhcmdldDsK
KwlpbnQgbGVuLCBmcmFnX25hbWVfbGVuLCByZXQsIHJlbF9wYXRoX2xlbjsKKwljb25zdCBjaGFy
ICpzLCAqZTsKKwljb25zdCBjaGFyICpwYXRoOworCWNvbnN0IGNoYXIgKm5hbWU7CisJY29uc3Qg
Y2hhciAqZnJhZ19uYW1lOworCWNvbnN0IGNoYXIgKnJlbF9wYXRoOworCWNvbnN0IGNoYXIgKnRh
cmdldF9wYXRoOworCWNoYXIgKmJ1ZjsKKwl2b2lkICpwOworCisJb3Zfc3ltID0gZmR0X3N1Ym5v
ZGVfb2Zmc2V0KGZkdG8sIDAsICJfX3N5bWJvbHNfXyIpOworCisJLyogaWYgbm8gb3ZlcmxheSBz
eW1ib2xzIGV4aXN0IG5vIHByb2JsZW0gKi8KKwlpZiAob3Zfc3ltIDwgMCkKKwkJcmV0dXJuIDA7
CisKKwlyb290X3N5bSA9IGZkdF9zdWJub2RlX29mZnNldChmZHQsIDAsICJfX3N5bWJvbHNfXyIp
OworCisJLyogaXQgbm8gcm9vdCBzeW1ib2xzIGV4aXN0IHdlIHNob3VsZCBjcmVhdGUgdGhlbSAq
LworCWlmIChyb290X3N5bSA9PSAtRkRUX0VSUl9OT1RGT1VORCkKKwkJcm9vdF9zeW0gPSBmZHRf
YWRkX3N1Ym5vZGUoZmR0LCAwLCAiX19zeW1ib2xzX18iKTsKKworCS8qIGFueSBlcnJvciBpcyBm
YXRhbCBub3cgKi8KKwlpZiAocm9vdF9zeW0gPCAwKQorCQlyZXR1cm4gcm9vdF9zeW07CisKKwkv
KiBpdGVyYXRlIG92ZXIgZWFjaCBvdmVybGF5IHN5bWJvbCAqLworCWZkdF9mb3JfZWFjaF9wcm9w
ZXJ0eV9vZmZzZXQocHJvcCwgZmR0bywgb3Zfc3ltKSB7CisJCXBhdGggPSBmZHRfZ2V0cHJvcF9i
eV9vZmZzZXQoZmR0bywgcHJvcCwgJm5hbWUsICZwYXRoX2xlbik7CisJCWlmICghcGF0aCkKKwkJ
CXJldHVybiBwYXRoX2xlbjsKKworCQkvKiB2ZXJpZnkgaXQncyBhIHN0cmluZyBwcm9wZXJ0eSAo
dGVybWluYXRlZCBieSBhIHNpbmdsZSBcMCkgKi8KKwkJaWYgKHBhdGhfbGVuIDwgMSB8fCBtZW1j
aHIocGF0aCwgJ1wwJywgcGF0aF9sZW4pICE9ICZwYXRoW3BhdGhfbGVuIC0gMV0pCisJCQlyZXR1
cm4gLUZEVF9FUlJfQkFEVkFMVUU7CisKKwkJLyoga2VlcCBlbmQgbWFya2VyIHRvIGF2b2lkIHN0
cmxlbigpICovCisJCWUgPSBwYXRoICsgcGF0aF9sZW47CisKKwkJLyogZm9ybWF0OiAvPGZyYWdt
ZW50LW5hbWU+L19fb3ZlcmxheV9fLzxyZWxhdGl2ZS1zdWJub2RlLXBhdGg+ICovCisKKwkJaWYg
KCpwYXRoICE9ICcvJykKKwkJCXJldHVybiAtRkRUX0VSUl9CQURWQUxVRTsKKworCQkvKiBnZXQg
ZnJhZ21lbnQgbmFtZSBmaXJzdCAqLworCQlzID0gc3RyY2hyKHBhdGggKyAxLCAnLycpOworCQlp
ZiAoIXMpCisJCQlyZXR1cm4gLUZEVF9FUlJfQkFET1ZFUkxBWTsKKworCQlmcmFnX25hbWUgPSBw
YXRoICsgMTsKKwkJZnJhZ19uYW1lX2xlbiA9IHMgLSBwYXRoIC0gMTsKKworCQkvKiB2ZXJpZnkg
Zm9ybWF0OyBzYWZlIHNpbmNlICJzIiBsaWVzIGluIFwwIHRlcm1pbmF0ZWQgcHJvcCAqLworCQls
ZW4gPSBzaXplb2YoIi9fX292ZXJsYXlfXy8iKSAtIDE7CisJCWlmICgoZSAtIHMpIDwgbGVuIHx8
IG1lbWNtcChzLCAiL19fb3ZlcmxheV9fLyIsIGxlbikpCisJCQlyZXR1cm4gLUZEVF9FUlJfQkFE
T1ZFUkxBWTsKKworCQlyZWxfcGF0aCA9IHMgKyBsZW47CisJCXJlbF9wYXRoX2xlbiA9IGUgLSBy
ZWxfcGF0aDsKKworCQkvKiBmaW5kIHRoZSBmcmFnbWVudCBpbmRleCBpbiB3aGljaCB0aGUgc3lt
Ym9sIGxpZXMgKi8KKwkJcmV0ID0gZmR0X3N1Ym5vZGVfb2Zmc2V0X25hbWVsZW4oZmR0bywgMCwg
ZnJhZ19uYW1lLAorCQkJCQkgICAgICAgZnJhZ19uYW1lX2xlbik7CisJCS8qIG5vdCBmb3VuZD8g
Ki8KKwkJaWYgKHJldCA8IDApCisJCQlyZXR1cm4gLUZEVF9FUlJfQkFET1ZFUkxBWTsKKwkJZnJh
Z21lbnQgPSByZXQ7CisKKwkJLyogYW4gX19vdmVybGF5X18gc3Vibm9kZSBtdXN0IGV4aXN0ICov
CisJCXJldCA9IGZkdF9zdWJub2RlX29mZnNldChmZHRvLCBmcmFnbWVudCwgIl9fb3ZlcmxheV9f
Iik7CisJCWlmIChyZXQgPCAwKQorCQkJcmV0dXJuIC1GRFRfRVJSX0JBRE9WRVJMQVk7CisKKwkJ
LyogZ2V0IHRoZSB0YXJnZXQgb2YgdGhlIGZyYWdtZW50ICovCisJCXJldCA9IG92ZXJsYXlfZ2V0
X3RhcmdldChmZHQsIGZkdG8sIGZyYWdtZW50LCAmdGFyZ2V0X3BhdGgpOworCQlpZiAocmV0IDwg
MCkKKwkJCXJldHVybiByZXQ7CisJCXRhcmdldCA9IHJldDsKKworCQkvKiBpZiB3ZSBoYXZlIGEg
dGFyZ2V0IHBhdGggdXNlICovCisJCWlmICghdGFyZ2V0X3BhdGgpIHsKKwkJCXJldCA9IGdldF9w
YXRoX2xlbihmZHQsIHRhcmdldCk7CisJCQlpZiAocmV0IDwgMCkKKwkJCQlyZXR1cm4gcmV0Owor
CQkJbGVuID0gcmV0OworCQl9IGVsc2UgeworCQkJbGVuID0gc3RybGVuKHRhcmdldF9wYXRoKTsK
KwkJfQorCisJCXJldCA9IGZkdF9zZXRwcm9wX3BsYWNlaG9sZGVyKGZkdCwgcm9vdF9zeW0sIG5h
bWUsCisJCQkJbGVuICsgKGxlbiA+IDEpICsgcmVsX3BhdGhfbGVuICsgMSwgJnApOworCQlpZiAo
cmV0IDwgMCkKKwkJCXJldHVybiByZXQ7CisKKwkJaWYgKCF0YXJnZXRfcGF0aCkgeworCQkJLyog
YWdhaW4gaW4gY2FzZSBzZXRwcm9wX3BsYWNlaG9sZGVyIGNoYW5nZWQgaXQgKi8KKwkJCXJldCA9
IG92ZXJsYXlfZ2V0X3RhcmdldChmZHQsIGZkdG8sIGZyYWdtZW50LCAmdGFyZ2V0X3BhdGgpOwor
CQkJaWYgKHJldCA8IDApCisJCQkJcmV0dXJuIHJldDsKKwkJCXRhcmdldCA9IHJldDsKKwkJfQor
CisJCWJ1ZiA9IHA7CisJCWlmIChsZW4gPiAxKSB7IC8qIHRhcmdldCBpcyBub3Qgcm9vdCAqLwor
CQkJaWYgKCF0YXJnZXRfcGF0aCkgeworCQkJCXJldCA9IGZkdF9nZXRfcGF0aChmZHQsIHRhcmdl
dCwgYnVmLCBsZW4gKyAxKTsKKwkJCQlpZiAocmV0IDwgMCkKKwkJCQkJcmV0dXJuIHJldDsKKwkJ
CX0gZWxzZQorCQkJCW1lbWNweShidWYsIHRhcmdldF9wYXRoLCBsZW4gKyAxKTsKKworCQl9IGVs
c2UKKwkJCWxlbi0tOworCisJCWJ1ZltsZW5dID0gJy8nOworCQltZW1jcHkoYnVmICsgbGVuICsg
MSwgcmVsX3BhdGgsIHJlbF9wYXRoX2xlbik7CisJCWJ1ZltsZW4gKyAxICsgcmVsX3BhdGhfbGVu
XSA9ICdcMCc7CisJfQorCisJcmV0dXJuIDA7Cit9CisKK2ludCBmZHRfb3ZlcmxheV9hcHBseSh2
b2lkICpmZHQsIHZvaWQgKmZkdG8pCit7CisJdWludDMyX3QgZGVsdGEgPSBmZHRfZ2V0X21heF9w
aGFuZGxlKGZkdCk7CisJaW50IHJldDsKKworCUZEVF9DSEVDS19IRUFERVIoZmR0KTsKKwlGRFRf
Q0hFQ0tfSEVBREVSKGZkdG8pOworCisJcmV0ID0gb3ZlcmxheV9hZGp1c3RfbG9jYWxfcGhhbmRs
ZXMoZmR0bywgZGVsdGEpOworCWlmIChyZXQpCisJCWdvdG8gZXJyOworCisJcmV0ID0gb3Zlcmxh
eV91cGRhdGVfbG9jYWxfcmVmZXJlbmNlcyhmZHRvLCBkZWx0YSk7CisJaWYgKHJldCkKKwkJZ290
byBlcnI7CisKKwlyZXQgPSBvdmVybGF5X2ZpeHVwX3BoYW5kbGVzKGZkdCwgZmR0byk7CisJaWYg
KHJldCkKKwkJZ290byBlcnI7CisKKwlyZXQgPSBvdmVybGF5X21lcmdlKGZkdCwgZmR0byk7CisJ
aWYgKHJldCkKKwkJZ290byBlcnI7CisKKwlyZXQgPSBvdmVybGF5X3N5bWJvbF91cGRhdGUoZmR0
LCBmZHRvKTsKKwlpZiAocmV0KQorCQlnb3RvIGVycjsKKworCS8qCisJICogVGhlIG92ZXJsYXkg
aGFzIGJlZW4gZGFtYWdlZCwgZXJhc2UgaXRzIG1hZ2ljLgorCSAqLworCWZkdF9zZXRfbWFnaWMo
ZmR0bywgfjApOworCisJcmV0dXJuIDA7CisKK2VycjoKKwkvKgorCSAqIFRoZSBvdmVybGF5IG1p
Z2h0IGhhdmUgYmVlbiBkYW1hZ2VkLCBlcmFzZSBpdHMgbWFnaWMuCisJICovCisJZmR0X3NldF9t
YWdpYyhmZHRvLCB+MCk7CisKKwkvKgorCSAqIFRoZSBiYXNlIGRldmljZSB0cmVlIG1pZ2h0IGhh
dmUgYmVlbiBkYW1hZ2VkLCBlcmFzZSBpdHMKKwkgKiBtYWdpYy4KKwkgKi8KKwlmZHRfc2V0X21h
Z2ljKGZkdCwgfjApOworCisJcmV0dXJuIHJldDsKK30KZGlmZiAtLWdpdCBhL2xpYi9saWJmZHQv
ZmR0X3JvLmMgYi9saWIvbGliZmR0L2ZkdF9yby5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLmNlMTc4MTQKLS0tIC9kZXYvbnVsbAorKysgYi9saWIvbGliZmR0L2ZkdF9yby5j
CkBAIC0wLDAgKzEsNzAzIEBACisvKgorICogbGliZmR0IC0gRmxhdCBEZXZpY2UgVHJlZSBtYW5p
cHVsYXRpb24KKyAqIENvcHlyaWdodCAoQykgMjAwNiBEYXZpZCBHaWJzb24sIElCTSBDb3Jwb3Jh
dGlvbi4KKyAqCisgKiBsaWJmZHQgaXMgZHVhbCBsaWNlbnNlZDogeW91IGNhbiB1c2UgaXQgZWl0
aGVyIHVuZGVyIHRoZSB0ZXJtcyBvZgorICogdGhlIEdQTCwgb3IgdGhlIEJTRCBsaWNlbnNlLCBh
dCB5b3VyIG9wdGlvbi4KKyAqCisgKiAgYSkgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7
IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogICAgIG1vZGlmeSBpdCB1bmRlciB0
aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzCisgKiAgICAgcHVi
bGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIg
b2YgdGhlCisgKiAgICAgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy
c2lvbi4KKyAqCisgKiAgICAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl
IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiAgICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ
OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqICAgICBNRVJDSEFOVEFC
SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiAg
ICAgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiAg
ICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVi
bGljCisgKiAgICAgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0
ZSB0byB0aGUgRnJlZQorICogICAgIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5r
bGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLAorICogICAgIE1BIDAyMTEwLTEzMDEgVVNBCisg
KgorICogQWx0ZXJuYXRpdmVseSwKKyAqCisgKiAgYikgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvcgorICogICAgIHdpdGhvdXQgbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZworICogICAg
IGNvbmRpdGlvbnMgYXJlIG1ldDoKKyAqCisgKiAgICAgMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQorICogICAgICAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCisgKiAgICAgICAg
ZGlzY2xhaW1lci4KKyAqICAgICAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiAgICAgICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgICAgICBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyAqICAgICAgICBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogICAgIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORAorICogICAgIENPTlRSSUJV
VE9SUyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsCisgKiAg
ICAgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YKKyAqICAgICBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRQorICogICAgIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQgT1dORVIgT1IKKyAqICAgICBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqICAgICBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQKKyAqICAgICBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqICAg
ICBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KQorICogICAgIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogICAgIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUgorICogICAgIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsCisgKiAgICAgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworI2luY2x1ZGUgImxp
YmZkdF9lbnYuaCIKKworI2luY2x1ZGUgPGZkdC5oPgorI2luY2x1ZGUgPGxpYmZkdC5oPgorCisj
aW5jbHVkZSAibGliZmR0X2ludGVybmFsLmgiCisKK3N0YXRpYyBpbnQgZmR0X25vZGVuYW1lX2Vx
Xyhjb25zdCB2b2lkICpmZHQsIGludCBvZmZzZXQsCisJCQkgICAgY29uc3QgY2hhciAqcywgaW50
IGxlbikKK3sKKwljb25zdCBjaGFyICpwID0gZmR0X29mZnNldF9wdHIoZmR0LCBvZmZzZXQgKyBG
RFRfVEFHU0laRSwgbGVuKzEpOworCisJaWYgKCFwKQorCQkvKiBzaG9ydCBtYXRjaCAqLworCQly
ZXR1cm4gMDsKKworCWlmIChtZW1jbXAocCwgcywgbGVuKSAhPSAwKQorCQlyZXR1cm4gMDsKKwor
CWlmIChwW2xlbl0gPT0gJ1wwJykKKwkJcmV0dXJuIDE7CisJZWxzZSBpZiAoIW1lbWNocihzLCAn
QCcsIGxlbikgJiYgKHBbbGVuXSA9PSAnQCcpKQorCQlyZXR1cm4gMTsKKwllbHNlCisJCXJldHVy
biAwOworfQorCitjb25zdCBjaGFyICpmZHRfc3RyaW5nKGNvbnN0IHZvaWQgKmZkdCwgaW50IHN0
cm9mZnNldCkKK3sKKwlyZXR1cm4gKGNvbnN0IGNoYXIgKilmZHQgKyBmZHRfb2ZmX2R0X3N0cmlu
Z3MoZmR0KSArIHN0cm9mZnNldDsKK30KKworc3RhdGljIGludCBmZHRfc3RyaW5nX2VxXyhjb25z
dCB2b2lkICpmZHQsIGludCBzdHJvZmZzZXQsCisJCQkgIGNvbnN0IGNoYXIgKnMsIGludCBsZW4p
Cit7CisJY29uc3QgY2hhciAqcCA9IGZkdF9zdHJpbmcoZmR0LCBzdHJvZmZzZXQpOworCisJcmV0
dXJuIChzdHJsZW4ocCkgPT0gbGVuKSAmJiAobWVtY21wKHAsIHMsIGxlbikgPT0gMCk7Cit9CisK
K3VpbnQzMl90IGZkdF9nZXRfbWF4X3BoYW5kbGUoY29uc3Qgdm9pZCAqZmR0KQoreworCXVpbnQz
Ml90IG1heF9waGFuZGxlID0gMDsKKwlpbnQgb2Zmc2V0OworCisJZm9yIChvZmZzZXQgPSBmZHRf
bmV4dF9ub2RlKGZkdCwgLTEsIE5VTEwpOzsKKwkgICAgIG9mZnNldCA9IGZkdF9uZXh0X25vZGUo
ZmR0LCBvZmZzZXQsIE5VTEwpKSB7CisJCXVpbnQzMl90IHBoYW5kbGU7CisKKwkJaWYgKG9mZnNl
dCA9PSAtRkRUX0VSUl9OT1RGT1VORCkKKwkJCXJldHVybiBtYXhfcGhhbmRsZTsKKworCQlpZiAo
b2Zmc2V0IDwgMCkKKwkJCXJldHVybiAodWludDMyX3QpLTE7CisKKwkJcGhhbmRsZSA9IGZkdF9n
ZXRfcGhhbmRsZShmZHQsIG9mZnNldCk7CisJCWlmIChwaGFuZGxlID09ICh1aW50MzJfdCktMSkK
KwkJCWNvbnRpbnVlOworCisJCWlmIChwaGFuZGxlID4gbWF4X3BoYW5kbGUpCisJCQltYXhfcGhh
bmRsZSA9IHBoYW5kbGU7CisJfQorCisJcmV0dXJuIDA7Cit9CisKK2ludCBmZHRfZ2V0X21lbV9y
c3YoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbiwgdWludDY0X3QgKmFkZHJlc3MsIHVpbnQ2NF90ICpz
aXplKQoreworCUZEVF9DSEVDS19IRUFERVIoZmR0KTsKKwkqYWRkcmVzcyA9IGZkdDY0X3RvX2Nw
dShmZHRfbWVtX3Jzdl8oZmR0LCBuKS0+YWRkcmVzcyk7CisJKnNpemUgPSBmZHQ2NF90b19jcHUo
ZmR0X21lbV9yc3ZfKGZkdCwgbiktPnNpemUpOworCXJldHVybiAwOworfQorCitpbnQgZmR0X251
bV9tZW1fcnN2KGNvbnN0IHZvaWQgKmZkdCkKK3sKKwlpbnQgaSA9IDA7CisKKwl3aGlsZSAoZmR0
NjRfdG9fY3B1KGZkdF9tZW1fcnN2XyhmZHQsIGkpLT5zaXplKSAhPSAwKQorCQlpKys7CisJcmV0
dXJuIGk7Cit9CisKK3N0YXRpYyBpbnQgbmV4dHByb3BfKGNvbnN0IHZvaWQgKmZkdCwgaW50IG9m
ZnNldCkKK3sKKwl1aW50MzJfdCB0YWc7CisJaW50IG5leHRvZmZzZXQ7CisKKwlkbyB7CisJCXRh
ZyA9IGZkdF9uZXh0X3RhZyhmZHQsIG9mZnNldCwgJm5leHRvZmZzZXQpOworCisJCXN3aXRjaCAo
dGFnKSB7CisJCWNhc2UgRkRUX0VORDoKKwkJCWlmIChuZXh0b2Zmc2V0ID49IDApCisJCQkJcmV0
dXJuIC1GRFRfRVJSX0JBRFNUUlVDVFVSRTsKKwkJCWVsc2UKKwkJCQlyZXR1cm4gbmV4dG9mZnNl
dDsKKworCQljYXNlIEZEVF9QUk9QOgorCQkJcmV0dXJuIG9mZnNldDsKKwkJfQorCQlvZmZzZXQg
PSBuZXh0b2Zmc2V0OworCX0gd2hpbGUgKHRhZyA9PSBGRFRfTk9QKTsKKworCXJldHVybiAtRkRU
X0VSUl9OT1RGT1VORDsKK30KKworaW50IGZkdF9zdWJub2RlX29mZnNldF9uYW1lbGVuKGNvbnN0
IHZvaWQgKmZkdCwgaW50IG9mZnNldCwKKwkJCSAgICAgICBjb25zdCBjaGFyICpuYW1lLCBpbnQg
bmFtZWxlbikKK3sKKwlpbnQgZGVwdGg7CisKKwlGRFRfQ0hFQ0tfSEVBREVSKGZkdCk7CisKKwlm
b3IgKGRlcHRoID0gMDsKKwkgICAgIChvZmZzZXQgPj0gMCkgJiYgKGRlcHRoID49IDApOworCSAg
ICAgb2Zmc2V0ID0gZmR0X25leHRfbm9kZShmZHQsIG9mZnNldCwgJmRlcHRoKSkKKwkJaWYgKChk
ZXB0aCA9PSAxKQorCQkgICAgJiYgZmR0X25vZGVuYW1lX2VxXyhmZHQsIG9mZnNldCwgbmFtZSwg
bmFtZWxlbikpCisJCQlyZXR1cm4gb2Zmc2V0OworCisJaWYgKGRlcHRoIDwgMCkKKwkJcmV0dXJu
IC1GRFRfRVJSX05PVEZPVU5EOworCXJldHVybiBvZmZzZXQ7IC8qIGVycm9yICovCit9CisKK2lu
dCBmZHRfc3Vibm9kZV9vZmZzZXQoY29uc3Qgdm9pZCAqZmR0LCBpbnQgcGFyZW50b2Zmc2V0LAor
CQkgICAgICAgY29uc3QgY2hhciAqbmFtZSkKK3sKKwlyZXR1cm4gZmR0X3N1Ym5vZGVfb2Zmc2V0
X25hbWVsZW4oZmR0LCBwYXJlbnRvZmZzZXQsIG5hbWUsIHN0cmxlbihuYW1lKSk7Cit9CisKK2lu
dCBmZHRfcGF0aF9vZmZzZXRfbmFtZWxlbihjb25zdCB2b2lkICpmZHQsIGNvbnN0IGNoYXIgKnBh
dGgsIGludCBuYW1lbGVuKQoreworCWNvbnN0IGNoYXIgKmVuZCA9IHBhdGggKyBuYW1lbGVuOwor
CWNvbnN0IGNoYXIgKnAgPSBwYXRoOworCWludCBvZmZzZXQgPSAwOworCisJRkRUX0NIRUNLX0hF
QURFUihmZHQpOworCisJLyogc2VlIGlmIHdlIGhhdmUgYW4gYWxpYXMgKi8KKwlpZiAoKnBhdGgg
IT0gJy8nKSB7CisJCWNvbnN0IGNoYXIgKnEgPSBtZW1jaHIocGF0aCwgJy8nLCBlbmQgLSBwKTsK
KworCQlpZiAoIXEpCisJCQlxID0gZW5kOworCisJCXAgPSBmZHRfZ2V0X2FsaWFzX25hbWVsZW4o
ZmR0LCBwLCBxIC0gcCk7CisJCWlmICghcCkKKwkJCXJldHVybiAtRkRUX0VSUl9CQURQQVRIOwor
CQlvZmZzZXQgPSBmZHRfcGF0aF9vZmZzZXQoZmR0LCBwKTsKKworCQlwID0gcTsKKwl9CisKKwl3
aGlsZSAocCA8IGVuZCkgeworCQljb25zdCBjaGFyICpxOworCisJCXdoaWxlICgqcCA9PSAnLycp
IHsKKwkJCXArKzsKKwkJCWlmIChwID09IGVuZCkKKwkJCQlyZXR1cm4gb2Zmc2V0OworCQl9CisJ
CXEgPSBtZW1jaHIocCwgJy8nLCBlbmQgLSBwKTsKKwkJaWYgKCEgcSkKKwkJCXEgPSBlbmQ7CisK
KwkJb2Zmc2V0ID0gZmR0X3N1Ym5vZGVfb2Zmc2V0X25hbWVsZW4oZmR0LCBvZmZzZXQsIHAsIHEt
cCk7CisJCWlmIChvZmZzZXQgPCAwKQorCQkJcmV0dXJuIG9mZnNldDsKKworCQlwID0gcTsKKwl9
CisKKwlyZXR1cm4gb2Zmc2V0OworfQorCitpbnQgZmR0X3BhdGhfb2Zmc2V0KGNvbnN0IHZvaWQg
KmZkdCwgY29uc3QgY2hhciAqcGF0aCkKK3sKKwlyZXR1cm4gZmR0X3BhdGhfb2Zmc2V0X25hbWVs
ZW4oZmR0LCBwYXRoLCBzdHJsZW4ocGF0aCkpOworfQorCitjb25zdCBjaGFyICpmZHRfZ2V0X25h
bWUoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwgaW50ICpsZW4pCit7CisJY29uc3Qg
c3RydWN0IGZkdF9ub2RlX2hlYWRlciAqbmggPSBmZHRfb2Zmc2V0X3B0cl8oZmR0LCBub2Rlb2Zm
c2V0KTsKKwlpbnQgZXJyOworCisJaWYgKCgoZXJyID0gZmR0X2NoZWNrX2hlYWRlcihmZHQpKSAh
PSAwKQorCSAgICB8fCAoKGVyciA9IGZkdF9jaGVja19ub2RlX29mZnNldF8oZmR0LCBub2Rlb2Zm
c2V0KSkgPCAwKSkKKwkJCWdvdG8gZmFpbDsKKworCWlmIChsZW4pCisJCSpsZW4gPSBzdHJsZW4o
bmgtPm5hbWUpOworCisJcmV0dXJuIG5oLT5uYW1lOworCisgZmFpbDoKKwlpZiAobGVuKQorCQkq
bGVuID0gZXJyOworCXJldHVybiBOVUxMOworfQorCitpbnQgZmR0X2ZpcnN0X3Byb3BlcnR5X29m
ZnNldChjb25zdCB2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0KQoreworCWludCBvZmZzZXQ7CisK
KwlpZiAoKG9mZnNldCA9IGZkdF9jaGVja19ub2RlX29mZnNldF8oZmR0LCBub2Rlb2Zmc2V0KSkg
PCAwKQorCQlyZXR1cm4gb2Zmc2V0OworCisJcmV0dXJuIG5leHRwcm9wXyhmZHQsIG9mZnNldCk7
Cit9CisKK2ludCBmZHRfbmV4dF9wcm9wZXJ0eV9vZmZzZXQoY29uc3Qgdm9pZCAqZmR0LCBpbnQg
b2Zmc2V0KQoreworCWlmICgob2Zmc2V0ID0gZmR0X2NoZWNrX3Byb3Bfb2Zmc2V0XyhmZHQsIG9m
ZnNldCkpIDwgMCkKKwkJcmV0dXJuIG9mZnNldDsKKworCXJldHVybiBuZXh0cHJvcF8oZmR0LCBv
ZmZzZXQpOworfQorCitjb25zdCBzdHJ1Y3QgZmR0X3Byb3BlcnR5ICpmZHRfZ2V0X3Byb3BlcnR5
X2J5X29mZnNldChjb25zdCB2b2lkICpmZHQsCisJCQkJCQkgICAgICBpbnQgb2Zmc2V0LAorCQkJ
CQkJICAgICAgaW50ICpsZW5wKQoreworCWludCBlcnI7CisJY29uc3Qgc3RydWN0IGZkdF9wcm9w
ZXJ0eSAqcHJvcDsKKworCWlmICgoZXJyID0gZmR0X2NoZWNrX3Byb3Bfb2Zmc2V0XyhmZHQsIG9m
ZnNldCkpIDwgMCkgeworCQlpZiAobGVucCkKKwkJCSpsZW5wID0gZXJyOworCQlyZXR1cm4gTlVM
TDsKKwl9CisKKwlwcm9wID0gZmR0X29mZnNldF9wdHJfKGZkdCwgb2Zmc2V0KTsKKworCWlmIChs
ZW5wKQorCQkqbGVucCA9IGZkdDMyX3RvX2NwdShwcm9wLT5sZW4pOworCisJcmV0dXJuIHByb3A7
Cit9CisKK2NvbnN0IHN0cnVjdCBmZHRfcHJvcGVydHkgKmZkdF9nZXRfcHJvcGVydHlfbmFtZWxl
bihjb25zdCB2b2lkICpmZHQsCisJCQkJCQkgICAgaW50IG9mZnNldCwKKwkJCQkJCSAgICBjb25z
dCBjaGFyICpuYW1lLAorCQkJCQkJICAgIGludCBuYW1lbGVuLCBpbnQgKmxlbnApCit7CisJZm9y
IChvZmZzZXQgPSBmZHRfZmlyc3RfcHJvcGVydHlfb2Zmc2V0KGZkdCwgb2Zmc2V0KTsKKwkgICAg
IChvZmZzZXQgPj0gMCk7CisJICAgICAob2Zmc2V0ID0gZmR0X25leHRfcHJvcGVydHlfb2Zmc2V0
KGZkdCwgb2Zmc2V0KSkpIHsKKwkJY29uc3Qgc3RydWN0IGZkdF9wcm9wZXJ0eSAqcHJvcDsKKwor
CQlpZiAoIShwcm9wID0gZmR0X2dldF9wcm9wZXJ0eV9ieV9vZmZzZXQoZmR0LCBvZmZzZXQsIGxl
bnApKSkgeworCQkJb2Zmc2V0ID0gLUZEVF9FUlJfSU5URVJOQUw7CisJCQlicmVhazsKKwkJfQor
CQlpZiAoZmR0X3N0cmluZ19lcV8oZmR0LCBmZHQzMl90b19jcHUocHJvcC0+bmFtZW9mZiksCisJ
CQkJICAgbmFtZSwgbmFtZWxlbikpCisJCQlyZXR1cm4gcHJvcDsKKwl9CisKKwlpZiAobGVucCkK
KwkJKmxlbnAgPSBvZmZzZXQ7CisJcmV0dXJuIE5VTEw7Cit9CisKK2NvbnN0IHN0cnVjdCBmZHRf
cHJvcGVydHkgKmZkdF9nZXRfcHJvcGVydHkoY29uc3Qgdm9pZCAqZmR0LAorCQkJCQkgICAgaW50
IG5vZGVvZmZzZXQsCisJCQkJCSAgICBjb25zdCBjaGFyICpuYW1lLCBpbnQgKmxlbnApCit7CisJ
cmV0dXJuIGZkdF9nZXRfcHJvcGVydHlfbmFtZWxlbihmZHQsIG5vZGVvZmZzZXQsIG5hbWUsCisJ
CQkJCXN0cmxlbihuYW1lKSwgbGVucCk7Cit9CisKK2NvbnN0IHZvaWQgKmZkdF9nZXRwcm9wX25h
bWVsZW4oY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwKKwkJCQljb25zdCBjaGFyICpu
YW1lLCBpbnQgbmFtZWxlbiwgaW50ICpsZW5wKQoreworCWNvbnN0IHN0cnVjdCBmZHRfcHJvcGVy
dHkgKnByb3A7CisKKwlwcm9wID0gZmR0X2dldF9wcm9wZXJ0eV9uYW1lbGVuKGZkdCwgbm9kZW9m
ZnNldCwgbmFtZSwgbmFtZWxlbiwgbGVucCk7CisJaWYgKCFwcm9wKQorCQlyZXR1cm4gTlVMTDsK
KworCXJldHVybiBwcm9wLT5kYXRhOworfQorCitjb25zdCB2b2lkICpmZHRfZ2V0cHJvcF9ieV9v
ZmZzZXQoY29uc3Qgdm9pZCAqZmR0LCBpbnQgb2Zmc2V0LAorCQkJCSAgY29uc3QgY2hhciAqKm5h
bWVwLCBpbnQgKmxlbnApCit7CisJY29uc3Qgc3RydWN0IGZkdF9wcm9wZXJ0eSAqcHJvcDsKKwor
CXByb3AgPSBmZHRfZ2V0X3Byb3BlcnR5X2J5X29mZnNldChmZHQsIG9mZnNldCwgbGVucCk7CisJ
aWYgKCFwcm9wKQorCQlyZXR1cm4gTlVMTDsKKwlpZiAobmFtZXApCisJCSpuYW1lcCA9IGZkdF9z
dHJpbmcoZmR0LCBmZHQzMl90b19jcHUocHJvcC0+bmFtZW9mZikpOworCXJldHVybiBwcm9wLT5k
YXRhOworfQorCitjb25zdCB2b2lkICpmZHRfZ2V0cHJvcChjb25zdCB2b2lkICpmZHQsIGludCBu
b2Rlb2Zmc2V0LAorCQkJY29uc3QgY2hhciAqbmFtZSwgaW50ICpsZW5wKQoreworCXJldHVybiBm
ZHRfZ2V0cHJvcF9uYW1lbGVuKGZkdCwgbm9kZW9mZnNldCwgbmFtZSwgc3RybGVuKG5hbWUpLCBs
ZW5wKTsKK30KKwordWludDMyX3QgZmR0X2dldF9waGFuZGxlKGNvbnN0IHZvaWQgKmZkdCwgaW50
IG5vZGVvZmZzZXQpCit7CisJY29uc3QgZmR0MzJfdCAqcGhwOworCWludCBsZW47CisKKwkvKiBG
SVhNRTogVGhpcyBpcyBhIGJpdCBzdWItb3B0aW1hbCwgc2luY2Ugd2UgcG90ZW50aWFsbHkgc2Nh
bgorCSAqIG92ZXIgYWxsIHRoZSBwcm9wZXJ0aWVzIHR3aWNlLiAqLworCXBocCA9IGZkdF9nZXRw
cm9wKGZkdCwgbm9kZW9mZnNldCwgInBoYW5kbGUiLCAmbGVuKTsKKwlpZiAoIXBocCB8fCAobGVu
ICE9IHNpemVvZigqcGhwKSkpIHsKKwkJcGhwID0gZmR0X2dldHByb3AoZmR0LCBub2Rlb2Zmc2V0
LCAibGludXgscGhhbmRsZSIsICZsZW4pOworCQlpZiAoIXBocCB8fCAobGVuICE9IHNpemVvZigq
cGhwKSkpCisJCQlyZXR1cm4gMDsKKwl9CisKKwlyZXR1cm4gZmR0MzJfdG9fY3B1KCpwaHApOwor
fQorCitjb25zdCBjaGFyICpmZHRfZ2V0X2FsaWFzX25hbWVsZW4oY29uc3Qgdm9pZCAqZmR0LAor
CQkJCSAgY29uc3QgY2hhciAqbmFtZSwgaW50IG5hbWVsZW4pCit7CisJaW50IGFsaWFzb2Zmc2V0
OworCisJYWxpYXNvZmZzZXQgPSBmZHRfcGF0aF9vZmZzZXQoZmR0LCAiL2FsaWFzZXMiKTsKKwlp
ZiAoYWxpYXNvZmZzZXQgPCAwKQorCQlyZXR1cm4gTlVMTDsKKworCXJldHVybiBmZHRfZ2V0cHJv
cF9uYW1lbGVuKGZkdCwgYWxpYXNvZmZzZXQsIG5hbWUsIG5hbWVsZW4sIE5VTEwpOworfQorCitj
b25zdCBjaGFyICpmZHRfZ2V0X2FsaWFzKGNvbnN0IHZvaWQgKmZkdCwgY29uc3QgY2hhciAqbmFt
ZSkKK3sKKwlyZXR1cm4gZmR0X2dldF9hbGlhc19uYW1lbGVuKGZkdCwgbmFtZSwgc3RybGVuKG5h
bWUpKTsKK30KKworaW50IGZkdF9nZXRfcGF0aChjb25zdCB2b2lkICpmZHQsIGludCBub2Rlb2Zm
c2V0LCBjaGFyICpidWYsIGludCBidWZsZW4pCit7CisJaW50IHBkZXB0aCA9IDAsIHAgPSAwOwor
CWludCBvZmZzZXQsIGRlcHRoLCBuYW1lbGVuOworCWNvbnN0IGNoYXIgKm5hbWU7CisKKwlGRFRf
Q0hFQ0tfSEVBREVSKGZkdCk7CisKKwlpZiAoYnVmbGVuIDwgMikKKwkJcmV0dXJuIC1GRFRfRVJS
X05PU1BBQ0U7CisKKwlmb3IgKG9mZnNldCA9IDAsIGRlcHRoID0gMDsKKwkgICAgIChvZmZzZXQg
Pj0gMCkgJiYgKG9mZnNldCA8PSBub2Rlb2Zmc2V0KTsKKwkgICAgIG9mZnNldCA9IGZkdF9uZXh0
X25vZGUoZmR0LCBvZmZzZXQsICZkZXB0aCkpIHsKKwkJd2hpbGUgKHBkZXB0aCA+IGRlcHRoKSB7
CisJCQlkbyB7CisJCQkJcC0tOworCQkJfSB3aGlsZSAoYnVmW3AtMV0gIT0gJy8nKTsKKwkJCXBk
ZXB0aC0tOworCQl9CisKKwkJaWYgKHBkZXB0aCA+PSBkZXB0aCkgeworCQkJbmFtZSA9IGZkdF9n
ZXRfbmFtZShmZHQsIG9mZnNldCwgJm5hbWVsZW4pOworCQkJaWYgKCFuYW1lKQorCQkJCXJldHVy
biBuYW1lbGVuOworCQkJaWYgKChwICsgbmFtZWxlbiArIDEpIDw9IGJ1ZmxlbikgeworCQkJCW1l
bWNweShidWYgKyBwLCBuYW1lLCBuYW1lbGVuKTsKKwkJCQlwICs9IG5hbWVsZW47CisJCQkJYnVm
W3ArK10gPSAnLyc7CisJCQkJcGRlcHRoKys7CisJCQl9CisJCX0KKworCQlpZiAob2Zmc2V0ID09
IG5vZGVvZmZzZXQpIHsKKwkJCWlmIChwZGVwdGggPCAoZGVwdGggKyAxKSkKKwkJCQlyZXR1cm4g
LUZEVF9FUlJfTk9TUEFDRTsKKworCQkJaWYgKHAgPiAxKSAvKiBzcGVjaWFsIGNhc2Ugc28gdGhh
dCByb290IHBhdGggaXMgIi8iLCBub3QgIiIgKi8KKwkJCQlwLS07CisJCQlidWZbcF0gPSAnXDAn
OworCQkJcmV0dXJuIDA7CisJCX0KKwl9CisKKwlpZiAoKG9mZnNldCA9PSAtRkRUX0VSUl9OT1RG
T1VORCkgfHwgKG9mZnNldCA+PSAwKSkKKwkJcmV0dXJuIC1GRFRfRVJSX0JBRE9GRlNFVDsKKwll
bHNlIGlmIChvZmZzZXQgPT0gLUZEVF9FUlJfQkFET0ZGU0VUKQorCQlyZXR1cm4gLUZEVF9FUlJf
QkFEU1RSVUNUVVJFOworCisJcmV0dXJuIG9mZnNldDsgLyogZXJyb3IgZnJvbSBmZHRfbmV4dF9u
b2RlKCkgKi8KK30KKworaW50IGZkdF9zdXBlcm5vZGVfYXRkZXB0aF9vZmZzZXQoY29uc3Qgdm9p
ZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwKKwkJCQkgaW50IHN1cGVybm9kZWRlcHRoLCBpbnQgKm5v
ZGVkZXB0aCkKK3sKKwlpbnQgb2Zmc2V0LCBkZXB0aDsKKwlpbnQgc3VwZXJub2Rlb2Zmc2V0ID0g
LUZEVF9FUlJfSU5URVJOQUw7CisKKwlGRFRfQ0hFQ0tfSEVBREVSKGZkdCk7CisKKwlpZiAoc3Vw
ZXJub2RlZGVwdGggPCAwKQorCQlyZXR1cm4gLUZEVF9FUlJfTk9URk9VTkQ7CisKKwlmb3IgKG9m
ZnNldCA9IDAsIGRlcHRoID0gMDsKKwkgICAgIChvZmZzZXQgPj0gMCkgJiYgKG9mZnNldCA8PSBu
b2Rlb2Zmc2V0KTsKKwkgICAgIG9mZnNldCA9IGZkdF9uZXh0X25vZGUoZmR0LCBvZmZzZXQsICZk
ZXB0aCkpIHsKKwkJaWYgKGRlcHRoID09IHN1cGVybm9kZWRlcHRoKQorCQkJc3VwZXJub2Rlb2Zm
c2V0ID0gb2Zmc2V0OworCisJCWlmIChvZmZzZXQgPT0gbm9kZW9mZnNldCkgeworCQkJaWYgKG5v
ZGVkZXB0aCkKKwkJCQkqbm9kZWRlcHRoID0gZGVwdGg7CisKKwkJCWlmIChzdXBlcm5vZGVkZXB0
aCA+IGRlcHRoKQorCQkJCXJldHVybiAtRkRUX0VSUl9OT1RGT1VORDsKKwkJCWVsc2UKKwkJCQly
ZXR1cm4gc3VwZXJub2Rlb2Zmc2V0OworCQl9CisJfQorCisJaWYgKChvZmZzZXQgPT0gLUZEVF9F
UlJfTk9URk9VTkQpIHx8IChvZmZzZXQgPj0gMCkpCisJCXJldHVybiAtRkRUX0VSUl9CQURPRkZT
RVQ7CisJZWxzZSBpZiAob2Zmc2V0ID09IC1GRFRfRVJSX0JBRE9GRlNFVCkKKwkJcmV0dXJuIC1G
RFRfRVJSX0JBRFNUUlVDVFVSRTsKKworCXJldHVybiBvZmZzZXQ7IC8qIGVycm9yIGZyb20gZmR0
X25leHRfbm9kZSgpICovCit9CisKK2ludCBmZHRfbm9kZV9kZXB0aChjb25zdCB2b2lkICpmZHQs
IGludCBub2Rlb2Zmc2V0KQoreworCWludCBub2RlZGVwdGg7CisJaW50IGVycjsKKworCWVyciA9
IGZkdF9zdXBlcm5vZGVfYXRkZXB0aF9vZmZzZXQoZmR0LCBub2Rlb2Zmc2V0LCAwLCAmbm9kZWRl
cHRoKTsKKwlpZiAoZXJyKQorCQlyZXR1cm4gKGVyciA8IDApID8gZXJyIDogLUZEVF9FUlJfSU5U
RVJOQUw7CisJcmV0dXJuIG5vZGVkZXB0aDsKK30KKworaW50IGZkdF9wYXJlbnRfb2Zmc2V0KGNv
bnN0IHZvaWQgKmZkdCwgaW50IG5vZGVvZmZzZXQpCit7CisJaW50IG5vZGVkZXB0aCA9IGZkdF9u
b2RlX2RlcHRoKGZkdCwgbm9kZW9mZnNldCk7CisKKwlpZiAobm9kZWRlcHRoIDwgMCkKKwkJcmV0
dXJuIG5vZGVkZXB0aDsKKwlyZXR1cm4gZmR0X3N1cGVybm9kZV9hdGRlcHRoX29mZnNldChmZHQs
IG5vZGVvZmZzZXQsCisJCQkJCSAgICBub2RlZGVwdGggLSAxLCBOVUxMKTsKK30KKworaW50IGZk
dF9ub2RlX29mZnNldF9ieV9wcm9wX3ZhbHVlKGNvbnN0IHZvaWQgKmZkdCwgaW50IHN0YXJ0b2Zm
c2V0LAorCQkJCSAgY29uc3QgY2hhciAqcHJvcG5hbWUsCisJCQkJICBjb25zdCB2b2lkICpwcm9w
dmFsLCBpbnQgcHJvcGxlbikKK3sKKwlpbnQgb2Zmc2V0OworCWNvbnN0IHZvaWQgKnZhbDsKKwlp
bnQgbGVuOworCisJRkRUX0NIRUNLX0hFQURFUihmZHQpOworCisJLyogRklYTUU6IFRoZSBhbGdv
cml0aG0gaGVyZSBpcyBwcmV0dHkgaG9ycmlibGU6IHdlIHNjYW4gZWFjaAorCSAqIHByb3BlcnR5
IG9mIGEgbm9kZSBpbiBmZHRfZ2V0cHJvcCgpLCB0aGVuIGlmIHRoYXQgZGlkbid0CisJICogZmlu
ZCB3aGF0IHdlIHdhbnQsIHdlIHNjYW4gb3ZlciB0aGVtIGFnYWluIG1ha2luZyBvdXIgd2F5CisJ
ICogdG8gdGhlIG5leHQgbm9kZS4gIFN0aWxsIGl0J3MgdGhlIGVhc2llc3QgdG8gaW1wbGVtZW50
CisJICogYXBwcm9hY2g7IHBlcmZvcm1hbmNlIGNhbiBjb21lIGxhdGVyLiAqLworCWZvciAob2Zm
c2V0ID0gZmR0X25leHRfbm9kZShmZHQsIHN0YXJ0b2Zmc2V0LCBOVUxMKTsKKwkgICAgIG9mZnNl
dCA+PSAwOworCSAgICAgb2Zmc2V0ID0gZmR0X25leHRfbm9kZShmZHQsIG9mZnNldCwgTlVMTCkp
IHsKKwkJdmFsID0gZmR0X2dldHByb3AoZmR0LCBvZmZzZXQsIHByb3BuYW1lLCAmbGVuKTsKKwkJ
aWYgKHZhbCAmJiAobGVuID09IHByb3BsZW4pCisJCSAgICAmJiAobWVtY21wKHZhbCwgcHJvcHZh
bCwgbGVuKSA9PSAwKSkKKwkJCXJldHVybiBvZmZzZXQ7CisJfQorCisJcmV0dXJuIG9mZnNldDsg
LyogZXJyb3IgZnJvbSBmZHRfbmV4dF9ub2RlKCkgKi8KK30KKworaW50IGZkdF9ub2RlX29mZnNl
dF9ieV9waGFuZGxlKGNvbnN0IHZvaWQgKmZkdCwgdWludDMyX3QgcGhhbmRsZSkKK3sKKwlpbnQg
b2Zmc2V0OworCisJaWYgKChwaGFuZGxlID09IDApIHx8IChwaGFuZGxlID09IC0xKSkKKwkJcmV0
dXJuIC1GRFRfRVJSX0JBRFBIQU5ETEU7CisKKwlGRFRfQ0hFQ0tfSEVBREVSKGZkdCk7CisKKwkv
KiBGSVhNRTogVGhlIGFsZ29yaXRobSBoZXJlIGlzIHByZXR0eSBob3JyaWJsZTogd2UKKwkgKiBw
b3RlbnRpYWxseSBzY2FuIGVhY2ggcHJvcGVydHkgb2YgYSBub2RlIGluCisJICogZmR0X2dldF9w
aGFuZGxlKCksIHRoZW4gaWYgdGhhdCBkaWRuJ3QgZmluZCB3aGF0CisJICogd2Ugd2FudCwgd2Ug
c2NhbiBvdmVyIHRoZW0gYWdhaW4gbWFraW5nIG91ciB3YXkgdG8gdGhlIG5leHQKKwkgKiBub2Rl
LiAgU3RpbGwgaXQncyB0aGUgZWFzaWVzdCB0byBpbXBsZW1lbnQgYXBwcm9hY2g7CisJICogcGVy
Zm9ybWFuY2UgY2FuIGNvbWUgbGF0ZXIuICovCisJZm9yIChvZmZzZXQgPSBmZHRfbmV4dF9ub2Rl
KGZkdCwgLTEsIE5VTEwpOworCSAgICAgb2Zmc2V0ID49IDA7CisJICAgICBvZmZzZXQgPSBmZHRf
bmV4dF9ub2RlKGZkdCwgb2Zmc2V0LCBOVUxMKSkgeworCQlpZiAoZmR0X2dldF9waGFuZGxlKGZk
dCwgb2Zmc2V0KSA9PSBwaGFuZGxlKQorCQkJcmV0dXJuIG9mZnNldDsKKwl9CisKKwlyZXR1cm4g
b2Zmc2V0OyAvKiBlcnJvciBmcm9tIGZkdF9uZXh0X25vZGUoKSAqLworfQorCitpbnQgZmR0X3N0
cmluZ2xpc3RfY29udGFpbnMoY29uc3QgY2hhciAqc3RybGlzdCwgaW50IGxpc3RsZW4sIGNvbnN0
IGNoYXIgKnN0cikKK3sKKwlpbnQgbGVuID0gc3RybGVuKHN0cik7CisJY29uc3QgY2hhciAqcDsK
KworCXdoaWxlIChsaXN0bGVuID49IGxlbikgeworCQlpZiAobWVtY21wKHN0ciwgc3RybGlzdCwg
bGVuKzEpID09IDApCisJCQlyZXR1cm4gMTsKKwkJcCA9IG1lbWNocihzdHJsaXN0LCAnXDAnLCBs
aXN0bGVuKTsKKwkJaWYgKCFwKQorCQkJcmV0dXJuIDA7IC8qIG1hbGZvcm1lZCBzdHJsaXN0Li4g
Ki8KKwkJbGlzdGxlbiAtPSAocC1zdHJsaXN0KSArIDE7CisJCXN0cmxpc3QgPSBwICsgMTsKKwl9
CisJcmV0dXJuIDA7Cit9CisKK2ludCBmZHRfc3RyaW5nbGlzdF9jb3VudChjb25zdCB2b2lkICpm
ZHQsIGludCBub2Rlb2Zmc2V0LCBjb25zdCBjaGFyICpwcm9wZXJ0eSkKK3sKKwljb25zdCBjaGFy
ICpsaXN0LCAqZW5kOworCWludCBsZW5ndGgsIGNvdW50ID0gMDsKKworCWxpc3QgPSBmZHRfZ2V0
cHJvcChmZHQsIG5vZGVvZmZzZXQsIHByb3BlcnR5LCAmbGVuZ3RoKTsKKwlpZiAoIWxpc3QpCisJ
CXJldHVybiBsZW5ndGg7CisKKwllbmQgPSBsaXN0ICsgbGVuZ3RoOworCisJd2hpbGUgKGxpc3Qg
PCBlbmQpIHsKKwkJbGVuZ3RoID0gc3RybmxlbihsaXN0LCBlbmQgLSBsaXN0KSArIDE7CisKKwkJ
LyogQWJvcnQgaWYgdGhlIGxhc3Qgc3RyaW5nIGlzbid0IHByb3Blcmx5IE5VTC10ZXJtaW5hdGVk
LiAqLworCQlpZiAobGlzdCArIGxlbmd0aCA+IGVuZCkKKwkJCXJldHVybiAtRkRUX0VSUl9CQURW
QUxVRTsKKworCQlsaXN0ICs9IGxlbmd0aDsKKwkJY291bnQrKzsKKwl9CisKKwlyZXR1cm4gY291
bnQ7Cit9CisKK2ludCBmZHRfc3RyaW5nbGlzdF9zZWFyY2goY29uc3Qgdm9pZCAqZmR0LCBpbnQg
bm9kZW9mZnNldCwgY29uc3QgY2hhciAqcHJvcGVydHksCisJCQkgIGNvbnN0IGNoYXIgKnN0cmlu
ZykKK3sKKwlpbnQgbGVuZ3RoLCBsZW4sIGlkeCA9IDA7CisJY29uc3QgY2hhciAqbGlzdCwgKmVu
ZDsKKworCWxpc3QgPSBmZHRfZ2V0cHJvcChmZHQsIG5vZGVvZmZzZXQsIHByb3BlcnR5LCAmbGVu
Z3RoKTsKKwlpZiAoIWxpc3QpCisJCXJldHVybiBsZW5ndGg7CisKKwlsZW4gPSBzdHJsZW4oc3Ry
aW5nKSArIDE7CisJZW5kID0gbGlzdCArIGxlbmd0aDsKKworCXdoaWxlIChsaXN0IDwgZW5kKSB7
CisJCWxlbmd0aCA9IHN0cm5sZW4obGlzdCwgZW5kIC0gbGlzdCkgKyAxOworCisJCS8qIEFib3J0
IGlmIHRoZSBsYXN0IHN0cmluZyBpc24ndCBwcm9wZXJseSBOVUwtdGVybWluYXRlZC4gKi8KKwkJ
aWYgKGxpc3QgKyBsZW5ndGggPiBlbmQpCisJCQlyZXR1cm4gLUZEVF9FUlJfQkFEVkFMVUU7CisK
KwkJaWYgKGxlbmd0aCA9PSBsZW4gJiYgbWVtY21wKGxpc3QsIHN0cmluZywgbGVuZ3RoKSA9PSAw
KQorCQkJcmV0dXJuIGlkeDsKKworCQlsaXN0ICs9IGxlbmd0aDsKKwkJaWR4Kys7CisJfQorCisJ
cmV0dXJuIC1GRFRfRVJSX05PVEZPVU5EOworfQorCitjb25zdCBjaGFyICpmZHRfc3RyaW5nbGlz
dF9nZXQoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwKKwkJCSAgICAgICBjb25zdCBj
aGFyICpwcm9wZXJ0eSwgaW50IGlkeCwKKwkJCSAgICAgICBpbnQgKmxlbnApCit7CisJY29uc3Qg
Y2hhciAqbGlzdCwgKmVuZDsKKwlpbnQgbGVuZ3RoOworCisJbGlzdCA9IGZkdF9nZXRwcm9wKGZk
dCwgbm9kZW9mZnNldCwgcHJvcGVydHksICZsZW5ndGgpOworCWlmICghbGlzdCkgeworCQlpZiAo
bGVucCkKKwkJCSpsZW5wID0gbGVuZ3RoOworCisJCXJldHVybiBOVUxMOworCX0KKworCWVuZCA9
IGxpc3QgKyBsZW5ndGg7CisKKwl3aGlsZSAobGlzdCA8IGVuZCkgeworCQlsZW5ndGggPSBzdHJu
bGVuKGxpc3QsIGVuZCAtIGxpc3QpICsgMTsKKworCQkvKiBBYm9ydCBpZiB0aGUgbGFzdCBzdHJp
bmcgaXNuJ3QgcHJvcGVybHkgTlVMLXRlcm1pbmF0ZWQuICovCisJCWlmIChsaXN0ICsgbGVuZ3Ro
ID4gZW5kKSB7CisJCQlpZiAobGVucCkKKwkJCQkqbGVucCA9IC1GRFRfRVJSX0JBRFZBTFVFOwor
CisJCQlyZXR1cm4gTlVMTDsKKwkJfQorCisJCWlmIChpZHggPT0gMCkgeworCQkJaWYgKGxlbnAp
CisJCQkJKmxlbnAgPSBsZW5ndGggLSAxOworCisJCQlyZXR1cm4gbGlzdDsKKwkJfQorCisJCWxp
c3QgKz0gbGVuZ3RoOworCQlpZHgtLTsKKwl9CisKKwlpZiAobGVucCkKKwkJKmxlbnAgPSAtRkRU
X0VSUl9OT1RGT1VORDsKKworCXJldHVybiBOVUxMOworfQorCitpbnQgZmR0X25vZGVfY2hlY2tf
Y29tcGF0aWJsZShjb25zdCB2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0LAorCQkJICAgICAgY29u
c3QgY2hhciAqY29tcGF0aWJsZSkKK3sKKwljb25zdCB2b2lkICpwcm9wOworCWludCBsZW47CisK
Kwlwcm9wID0gZmR0X2dldHByb3AoZmR0LCBub2Rlb2Zmc2V0LCAiY29tcGF0aWJsZSIsICZsZW4p
OworCWlmICghcHJvcCkKKwkJcmV0dXJuIGxlbjsKKworCXJldHVybiAhZmR0X3N0cmluZ2xpc3Rf
Y29udGFpbnMocHJvcCwgbGVuLCBjb21wYXRpYmxlKTsKK30KKworaW50IGZkdF9ub2RlX29mZnNl
dF9ieV9jb21wYXRpYmxlKGNvbnN0IHZvaWQgKmZkdCwgaW50IHN0YXJ0b2Zmc2V0LAorCQkJCSAg
Y29uc3QgY2hhciAqY29tcGF0aWJsZSkKK3sKKwlpbnQgb2Zmc2V0LCBlcnI7CisKKwlGRFRfQ0hF
Q0tfSEVBREVSKGZkdCk7CisKKwkvKiBGSVhNRTogVGhlIGFsZ29yaXRobSBoZXJlIGlzIHByZXR0
eSBob3JyaWJsZTogd2Ugc2NhbiBlYWNoCisJICogcHJvcGVydHkgb2YgYSBub2RlIGluIGZkdF9u
b2RlX2NoZWNrX2NvbXBhdGlibGUoKSwgdGhlbiBpZgorCSAqIHRoYXQgZGlkbid0IGZpbmQgd2hh
dCB3ZSB3YW50LCB3ZSBzY2FuIG92ZXIgdGhlbSBhZ2FpbgorCSAqIG1ha2luZyBvdXIgd2F5IHRv
IHRoZSBuZXh0IG5vZGUuICBTdGlsbCBpdCdzIHRoZSBlYXNpZXN0IHRvCisJICogaW1wbGVtZW50
IGFwcHJvYWNoOyBwZXJmb3JtYW5jZSBjYW4gY29tZSBsYXRlci4gKi8KKwlmb3IgKG9mZnNldCA9
IGZkdF9uZXh0X25vZGUoZmR0LCBzdGFydG9mZnNldCwgTlVMTCk7CisJICAgICBvZmZzZXQgPj0g
MDsKKwkgICAgIG9mZnNldCA9IGZkdF9uZXh0X25vZGUoZmR0LCBvZmZzZXQsIE5VTEwpKSB7CisJ
CWVyciA9IGZkdF9ub2RlX2NoZWNrX2NvbXBhdGlibGUoZmR0LCBvZmZzZXQsIGNvbXBhdGlibGUp
OworCQlpZiAoKGVyciA8IDApICYmIChlcnIgIT0gLUZEVF9FUlJfTk9URk9VTkQpKQorCQkJcmV0
dXJuIGVycjsKKwkJZWxzZSBpZiAoZXJyID09IDApCisJCQlyZXR1cm4gb2Zmc2V0OworCX0KKwor
CXJldHVybiBvZmZzZXQ7IC8qIGVycm9yIGZyb20gZmR0X25leHRfbm9kZSgpICovCit9CmRpZmYg
LS1naXQgYS9saWIvbGliZmR0L2ZkdF9ydy5jIGIvbGliL2xpYmZkdC9mZHRfcncuYwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YjgyOTA1Ci0tLSAvZGV2L251bGwKKysrIGIv
bGliL2xpYmZkdC9mZHRfcncuYwpAQCAtMCwwICsxLDUwNSBAQAorLyoKKyAqIGxpYmZkdCAtIEZs
YXQgRGV2aWNlIFRyZWUgbWFuaXB1bGF0aW9uCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYgRGF2aWQg
R2lic29uLCBJQk0gQ29ycG9yYXRpb24uCisgKgorICogbGliZmR0IGlzIGR1YWwgbGljZW5zZWQ6
IHlvdSBjYW4gdXNlIGl0IGVpdGhlciB1bmRlciB0aGUgdGVybXMgb2YKKyAqIHRoZSBHUEwsIG9y
IHRoZSBCU0QgbGljZW5zZSwgYXQgeW91ciBvcHRpb24uCisgKgorICogIGEpIFRoaXMgbGlicmFy
eSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqICAg
ICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj
ZW5zZSBhcworICogICAgIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u
OyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZQorICogICAgIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9w
dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0
cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogICAgIGJ1dCBX
SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m
CisgKiAgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFLiAgU2VlIHRoZQorICogICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl
IGRldGFpbHMuCisgKgorICogICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2Yg
dGhlIEdOVSBHZW5lcmFsIFB1YmxpYworICogICAgIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxp
YnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUKKyAqICAgICBTb2Z0d2FyZSBGb3VuZGF0
aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdCwgRmlmdGggRmxvb3IsIEJvc3RvbiwKKyAqICAgICBN
QSAwMjExMC0xMzAxIFVTQQorICoKKyAqIEFsdGVybmF0aXZlbHksCisgKgorICogIGIpIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3IKKyAq
ICAgICB3aXRob3V0IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcKKyAqICAgICBjb25kaXRpb25zIGFyZSBtZXQ6CisgKgorICogICAgIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUKKyAqICAg
ICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZworICogICAgICAgIGRpc2NsYWltZXIuCisgKiAgICAgMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogICAgICAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCisg
KiAgICAgICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCisgKiAgICAgICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
ICAgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQKKyAqICAgICBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLAorICogICAgIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiAgICAgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqICAgICBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiAgICAgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiAgICAgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
CisgKiAgICAgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7CisgKiAgICAgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikKKyAqICAgICBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqICAgICBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyAqICAgICBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLAor
ICogICAgIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKyNpbmNsdWRlICJsaWJmZHRfZW52LmgiCisKKyNpbmNsdWRlIDxmZHQuaD4KKyNpbmNs
dWRlIDxsaWJmZHQuaD4KKworI2luY2x1ZGUgImxpYmZkdF9pbnRlcm5hbC5oIgorCitzdGF0aWMg
aW50IGZkdF9ibG9ja3NfbWlzb3JkZXJlZF8oY29uc3Qgdm9pZCAqZmR0LAorCQkJCSAgaW50IG1l
bV9yc3Zfc2l6ZSwgaW50IHN0cnVjdF9zaXplKQoreworCXJldHVybiAoZmR0X29mZl9tZW1fcnN2
bWFwKGZkdCkgPCBGRFRfQUxJR04oc2l6ZW9mKHN0cnVjdCBmZHRfaGVhZGVyKSwgOCkpCisJCXx8
IChmZHRfb2ZmX2R0X3N0cnVjdChmZHQpIDwKKwkJICAgIChmZHRfb2ZmX21lbV9yc3ZtYXAoZmR0
KSArIG1lbV9yc3Zfc2l6ZSkpCisJCXx8IChmZHRfb2ZmX2R0X3N0cmluZ3MoZmR0KSA8CisJCSAg
ICAoZmR0X29mZl9kdF9zdHJ1Y3QoZmR0KSArIHN0cnVjdF9zaXplKSkKKwkJfHwgKGZkdF90b3Rh
bHNpemUoZmR0KSA8CisJCSAgICAoZmR0X29mZl9kdF9zdHJpbmdzKGZkdCkgKyBmZHRfc2l6ZV9k
dF9zdHJpbmdzKGZkdCkpKTsKK30KKworc3RhdGljIGludCBmZHRfcndfY2hlY2tfaGVhZGVyXyh2
b2lkICpmZHQpCit7CisJRkRUX0NIRUNLX0hFQURFUihmZHQpOworCisJaWYgKGZkdF92ZXJzaW9u
KGZkdCkgPCAxNykKKwkJcmV0dXJuIC1GRFRfRVJSX0JBRFZFUlNJT047CisJaWYgKGZkdF9ibG9j
a3NfbWlzb3JkZXJlZF8oZmR0LCBzaXplb2Yoc3RydWN0IGZkdF9yZXNlcnZlX2VudHJ5KSwKKwkJ
CQkgICBmZHRfc2l6ZV9kdF9zdHJ1Y3QoZmR0KSkpCisJCXJldHVybiAtRkRUX0VSUl9CQURMQVlP
VVQ7CisJaWYgKGZkdF92ZXJzaW9uKGZkdCkgPiAxNykKKwkJZmR0X3NldF92ZXJzaW9uKGZkdCwg
MTcpOworCisJcmV0dXJuIDA7Cit9CisKKyNkZWZpbmUgRkRUX1JXX0NIRUNLX0hFQURFUihmZHQp
IFwKKwl7IFwKKwkJaW50IGVycl87IFwKKwkJaWYgKChlcnJfID0gZmR0X3J3X2NoZWNrX2hlYWRl
cl8oZmR0KSkgIT0gMCkgXAorCQkJcmV0dXJuIGVycl87IFwKKwl9CisKK3N0YXRpYyBpbmxpbmUg
aW50IGZkdF9kYXRhX3NpemVfKHZvaWQgKmZkdCkKK3sKKwlyZXR1cm4gZmR0X29mZl9kdF9zdHJp
bmdzKGZkdCkgKyBmZHRfc2l6ZV9kdF9zdHJpbmdzKGZkdCk7Cit9CisKK3N0YXRpYyBpbnQgZmR0
X3NwbGljZV8odm9pZCAqZmR0LCB2b2lkICpzcGxpY2Vwb2ludCwgaW50IG9sZGxlbiwgaW50IG5l
d2xlbikKK3sKKwljaGFyICpwID0gc3BsaWNlcG9pbnQ7CisJY2hhciAqZW5kID0gKGNoYXIgKilm
ZHQgKyBmZHRfZGF0YV9zaXplXyhmZHQpOworCisJaWYgKCgocCArIG9sZGxlbikgPCBwKSB8fCAo
KHAgKyBvbGRsZW4pID4gZW5kKSkKKwkJcmV0dXJuIC1GRFRfRVJSX0JBRE9GRlNFVDsKKwlpZiAo
KHAgPCAoY2hhciAqKWZkdCkgfHwgKChlbmQgLSBvbGRsZW4gKyBuZXdsZW4pIDwgKGNoYXIgKilm
ZHQpKQorCQlyZXR1cm4gLUZEVF9FUlJfQkFET0ZGU0VUOworCWlmICgoZW5kIC0gb2xkbGVuICsg
bmV3bGVuKSA+ICgoY2hhciAqKWZkdCArIGZkdF90b3RhbHNpemUoZmR0KSkpCisJCXJldHVybiAt
RkRUX0VSUl9OT1NQQUNFOworCW1lbW1vdmUocCArIG5ld2xlbiwgcCArIG9sZGxlbiwgZW5kIC0g
cCAtIG9sZGxlbik7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZmR0X3NwbGljZV9tZW1f
cnN2Xyh2b2lkICpmZHQsIHN0cnVjdCBmZHRfcmVzZXJ2ZV9lbnRyeSAqcCwKKwkJCSAgICAgICBp
bnQgb2xkbiwgaW50IG5ld24pCit7CisJaW50IGRlbHRhID0gKG5ld24gLSBvbGRuKSAqIHNpemVv
ZigqcCk7CisJaW50IGVycjsKKwllcnIgPSBmZHRfc3BsaWNlXyhmZHQsIHAsIG9sZG4gKiBzaXpl
b2YoKnApLCBuZXduICogc2l6ZW9mKCpwKSk7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsKKwlm
ZHRfc2V0X29mZl9kdF9zdHJ1Y3QoZmR0LCBmZHRfb2ZmX2R0X3N0cnVjdChmZHQpICsgZGVsdGEp
OworCWZkdF9zZXRfb2ZmX2R0X3N0cmluZ3MoZmR0LCBmZHRfb2ZmX2R0X3N0cmluZ3MoZmR0KSAr
IGRlbHRhKTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBmZHRfc3BsaWNlX3N0cnVjdF8o
dm9pZCAqZmR0LCB2b2lkICpwLAorCQkJICAgICAgaW50IG9sZGxlbiwgaW50IG5ld2xlbikKK3sK
KwlpbnQgZGVsdGEgPSBuZXdsZW4gLSBvbGRsZW47CisJaW50IGVycjsKKworCWlmICgoZXJyID0g
ZmR0X3NwbGljZV8oZmR0LCBwLCBvbGRsZW4sIG5ld2xlbikpKQorCQlyZXR1cm4gZXJyOworCisJ
ZmR0X3NldF9zaXplX2R0X3N0cnVjdChmZHQsIGZkdF9zaXplX2R0X3N0cnVjdChmZHQpICsgZGVs
dGEpOworCWZkdF9zZXRfb2ZmX2R0X3N0cmluZ3MoZmR0LCBmZHRfb2ZmX2R0X3N0cmluZ3MoZmR0
KSArIGRlbHRhKTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBmZHRfc3BsaWNlX3N0cmlu
Z18odm9pZCAqZmR0LCBpbnQgbmV3bGVuKQoreworCXZvaWQgKnAgPSAoY2hhciAqKWZkdAorCQkr
IGZkdF9vZmZfZHRfc3RyaW5ncyhmZHQpICsgZmR0X3NpemVfZHRfc3RyaW5ncyhmZHQpOworCWlu
dCBlcnI7CisKKwlpZiAoKGVyciA9IGZkdF9zcGxpY2VfKGZkdCwgcCwgMCwgbmV3bGVuKSkpCisJ
CXJldHVybiBlcnI7CisKKwlmZHRfc2V0X3NpemVfZHRfc3RyaW5ncyhmZHQsIGZkdF9zaXplX2R0
X3N0cmluZ3MoZmR0KSArIG5ld2xlbik7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgZmR0
X2ZpbmRfYWRkX3N0cmluZ18odm9pZCAqZmR0LCBjb25zdCBjaGFyICpzKQoreworCWNoYXIgKnN0
cnRhYiA9IChjaGFyICopZmR0ICsgZmR0X29mZl9kdF9zdHJpbmdzKGZkdCk7CisJY29uc3QgY2hh
ciAqcDsKKwljaGFyICpuZXc7CisJaW50IGxlbiA9IHN0cmxlbihzKSArIDE7CisJaW50IGVycjsK
KworCXAgPSBmZHRfZmluZF9zdHJpbmdfKHN0cnRhYiwgZmR0X3NpemVfZHRfc3RyaW5ncyhmZHQp
LCBzKTsKKwlpZiAocCkKKwkJLyogZm91bmQgaXQgKi8KKwkJcmV0dXJuIChwIC0gc3RydGFiKTsK
KworCW5ldyA9IHN0cnRhYiArIGZkdF9zaXplX2R0X3N0cmluZ3MoZmR0KTsKKwllcnIgPSBmZHRf
c3BsaWNlX3N0cmluZ18oZmR0LCBsZW4pOworCWlmIChlcnIpCisJCXJldHVybiBlcnI7CisKKwlt
ZW1jcHkobmV3LCBzLCBsZW4pOworCXJldHVybiAobmV3IC0gc3RydGFiKTsKK30KKworaW50IGZk
dF9hZGRfbWVtX3Jzdih2b2lkICpmZHQsIHVpbnQ2NF90IGFkZHJlc3MsIHVpbnQ2NF90IHNpemUp
Cit7CisJc3RydWN0IGZkdF9yZXNlcnZlX2VudHJ5ICpyZTsKKwlpbnQgZXJyOworCisJRkRUX1JX
X0NIRUNLX0hFQURFUihmZHQpOworCisJcmUgPSBmZHRfbWVtX3Jzdl93XyhmZHQsIGZkdF9udW1f
bWVtX3JzdihmZHQpKTsKKwllcnIgPSBmZHRfc3BsaWNlX21lbV9yc3ZfKGZkdCwgcmUsIDAsIDEp
OworCWlmIChlcnIpCisJCXJldHVybiBlcnI7CisKKwlyZS0+YWRkcmVzcyA9IGNwdV90b19mZHQ2
NChhZGRyZXNzKTsKKwlyZS0+c2l6ZSA9IGNwdV90b19mZHQ2NChzaXplKTsKKwlyZXR1cm4gMDsK
K30KKworaW50IGZkdF9kZWxfbWVtX3Jzdih2b2lkICpmZHQsIGludCBuKQoreworCXN0cnVjdCBm
ZHRfcmVzZXJ2ZV9lbnRyeSAqcmUgPSBmZHRfbWVtX3Jzdl93XyhmZHQsIG4pOworCisJRkRUX1JX
X0NIRUNLX0hFQURFUihmZHQpOworCisJaWYgKG4gPj0gZmR0X251bV9tZW1fcnN2KGZkdCkpCisJ
CXJldHVybiAtRkRUX0VSUl9OT1RGT1VORDsKKworCXJldHVybiBmZHRfc3BsaWNlX21lbV9yc3Zf
KGZkdCwgcmUsIDEsIDApOworfQorCitzdGF0aWMgaW50IGZkdF9yZXNpemVfcHJvcGVydHlfKHZv
aWQgKmZkdCwgaW50IG5vZGVvZmZzZXQsIGNvbnN0IGNoYXIgKm5hbWUsCisJCQkJaW50IGxlbiwg
c3RydWN0IGZkdF9wcm9wZXJ0eSAqKnByb3ApCit7CisJaW50IG9sZGxlbjsKKwlpbnQgZXJyOwor
CisJKnByb3AgPSBmZHRfZ2V0X3Byb3BlcnR5X3coZmR0LCBub2Rlb2Zmc2V0LCBuYW1lLCAmb2xk
bGVuKTsKKwlpZiAoISpwcm9wKQorCQlyZXR1cm4gb2xkbGVuOworCisJaWYgKChlcnIgPSBmZHRf
c3BsaWNlX3N0cnVjdF8oZmR0LCAoKnByb3ApLT5kYXRhLCBGRFRfVEFHQUxJR04ob2xkbGVuKSwK
KwkJCQkgICAgICBGRFRfVEFHQUxJR04obGVuKSkpKQorCQlyZXR1cm4gZXJyOworCisJKCpwcm9w
KS0+bGVuID0gY3B1X3RvX2ZkdDMyKGxlbik7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQg
ZmR0X2FkZF9wcm9wZXJ0eV8odm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwgY29uc3QgY2hhciAq
bmFtZSwKKwkJCSAgICAgaW50IGxlbiwgc3RydWN0IGZkdF9wcm9wZXJ0eSAqKnByb3ApCit7CisJ
aW50IHByb3BsZW47CisJaW50IG5leHRvZmZzZXQ7CisJaW50IG5hbWVzdHJvZmY7CisJaW50IGVy
cjsKKworCWlmICgobmV4dG9mZnNldCA9IGZkdF9jaGVja19ub2RlX29mZnNldF8oZmR0LCBub2Rl
b2Zmc2V0KSkgPCAwKQorCQlyZXR1cm4gbmV4dG9mZnNldDsKKworCW5hbWVzdHJvZmYgPSBmZHRf
ZmluZF9hZGRfc3RyaW5nXyhmZHQsIG5hbWUpOworCWlmIChuYW1lc3Ryb2ZmIDwgMCkKKwkJcmV0
dXJuIG5hbWVzdHJvZmY7CisKKwkqcHJvcCA9IGZkdF9vZmZzZXRfcHRyX3dfKGZkdCwgbmV4dG9m
ZnNldCk7CisJcHJvcGxlbiA9IHNpemVvZigqKnByb3ApICsgRkRUX1RBR0FMSUdOKGxlbik7CisK
KwllcnIgPSBmZHRfc3BsaWNlX3N0cnVjdF8oZmR0LCAqcHJvcCwgMCwgcHJvcGxlbik7CisJaWYg
KGVycikKKwkJcmV0dXJuIGVycjsKKworCSgqcHJvcCktPnRhZyA9IGNwdV90b19mZHQzMihGRFRf
UFJPUCk7CisJKCpwcm9wKS0+bmFtZW9mZiA9IGNwdV90b19mZHQzMihuYW1lc3Ryb2ZmKTsKKwko
KnByb3ApLT5sZW4gPSBjcHVfdG9fZmR0MzIobGVuKTsKKwlyZXR1cm4gMDsKK30KKworaW50IGZk
dF9zZXRfbmFtZSh2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0LCBjb25zdCBjaGFyICpuYW1lKQor
eworCWNoYXIgKm5hbWVwOworCWludCBvbGRsZW4sIG5ld2xlbjsKKwlpbnQgZXJyOworCisJRkRU
X1JXX0NIRUNLX0hFQURFUihmZHQpOworCisJbmFtZXAgPSAoY2hhciAqKSh1aW50cHRyX3QpZmR0
X2dldF9uYW1lKGZkdCwgbm9kZW9mZnNldCwgJm9sZGxlbik7CisJaWYgKCFuYW1lcCkKKwkJcmV0
dXJuIG9sZGxlbjsKKworCW5ld2xlbiA9IHN0cmxlbihuYW1lKTsKKworCWVyciA9IGZkdF9zcGxp
Y2Vfc3RydWN0XyhmZHQsIG5hbWVwLCBGRFRfVEFHQUxJR04ob2xkbGVuKzEpLAorCQkJCSBGRFRf
VEFHQUxJR04obmV3bGVuKzEpKTsKKwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOworCisJbWVtY3B5
KG5hbWVwLCBuYW1lLCBuZXdsZW4rMSk7CisJcmV0dXJuIDA7Cit9CisKK2ludCBmZHRfc2V0cHJv
cF9wbGFjZWhvbGRlcih2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0LCBjb25zdCBjaGFyICpuYW1l
LAorCQkJICAgIGludCBsZW4sIHZvaWQgKipwcm9wX2RhdGEpCit7CisJc3RydWN0IGZkdF9wcm9w
ZXJ0eSAqcHJvcDsKKwlpbnQgZXJyOworCisJRkRUX1JXX0NIRUNLX0hFQURFUihmZHQpOworCisJ
ZXJyID0gZmR0X3Jlc2l6ZV9wcm9wZXJ0eV8oZmR0LCBub2Rlb2Zmc2V0LCBuYW1lLCBsZW4sICZw
cm9wKTsKKwlpZiAoZXJyID09IC1GRFRfRVJSX05PVEZPVU5EKQorCQllcnIgPSBmZHRfYWRkX3By
b3BlcnR5XyhmZHQsIG5vZGVvZmZzZXQsIG5hbWUsIGxlbiwgJnByb3ApOworCWlmIChlcnIpCisJ
CXJldHVybiBlcnI7CisKKwkqcHJvcF9kYXRhID0gcHJvcC0+ZGF0YTsKKwlyZXR1cm4gMDsKK30K
KworaW50IGZkdF9zZXRwcm9wKHZvaWQgKmZkdCwgaW50IG5vZGVvZmZzZXQsIGNvbnN0IGNoYXIg
Km5hbWUsCisJCWNvbnN0IHZvaWQgKnZhbCwgaW50IGxlbikKK3sKKwl2b2lkICpwcm9wX2RhdGE7
CisJaW50IGVycjsKKworCWVyciA9IGZkdF9zZXRwcm9wX3BsYWNlaG9sZGVyKGZkdCwgbm9kZW9m
ZnNldCwgbmFtZSwgbGVuLCAmcHJvcF9kYXRhKTsKKwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOwor
CisJaWYgKGxlbikKKwkJbWVtY3B5KHByb3BfZGF0YSwgdmFsLCBsZW4pOworCXJldHVybiAwOwor
fQorCitpbnQgZmR0X2FwcGVuZHByb3Aodm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwgY29uc3Qg
Y2hhciAqbmFtZSwKKwkJICAgY29uc3Qgdm9pZCAqdmFsLCBpbnQgbGVuKQoreworCXN0cnVjdCBm
ZHRfcHJvcGVydHkgKnByb3A7CisJaW50IGVyciwgb2xkbGVuLCBuZXdsZW47CisKKwlGRFRfUldf
Q0hFQ0tfSEVBREVSKGZkdCk7CisKKwlwcm9wID0gZmR0X2dldF9wcm9wZXJ0eV93KGZkdCwgbm9k
ZW9mZnNldCwgbmFtZSwgJm9sZGxlbik7CisJaWYgKHByb3ApIHsKKwkJbmV3bGVuID0gbGVuICsg
b2xkbGVuOworCQllcnIgPSBmZHRfc3BsaWNlX3N0cnVjdF8oZmR0LCBwcm9wLT5kYXRhLAorCQkJ
CQkgRkRUX1RBR0FMSUdOKG9sZGxlbiksCisJCQkJCSBGRFRfVEFHQUxJR04obmV3bGVuKSk7CisJ
CWlmIChlcnIpCisJCQlyZXR1cm4gZXJyOworCQlwcm9wLT5sZW4gPSBjcHVfdG9fZmR0MzIobmV3
bGVuKTsKKwkJbWVtY3B5KHByb3AtPmRhdGEgKyBvbGRsZW4sIHZhbCwgbGVuKTsKKwl9IGVsc2Ug
eworCQllcnIgPSBmZHRfYWRkX3Byb3BlcnR5XyhmZHQsIG5vZGVvZmZzZXQsIG5hbWUsIGxlbiwg
JnByb3ApOworCQlpZiAoZXJyKQorCQkJcmV0dXJuIGVycjsKKwkJbWVtY3B5KHByb3AtPmRhdGEs
IHZhbCwgbGVuKTsKKwl9CisJcmV0dXJuIDA7Cit9CisKK2ludCBmZHRfZGVscHJvcCh2b2lkICpm
ZHQsIGludCBub2Rlb2Zmc2V0LCBjb25zdCBjaGFyICpuYW1lKQoreworCXN0cnVjdCBmZHRfcHJv
cGVydHkgKnByb3A7CisJaW50IGxlbiwgcHJvcGxlbjsKKworCUZEVF9SV19DSEVDS19IRUFERVIo
ZmR0KTsKKworCXByb3AgPSBmZHRfZ2V0X3Byb3BlcnR5X3coZmR0LCBub2Rlb2Zmc2V0LCBuYW1l
LCAmbGVuKTsKKwlpZiAoIXByb3ApCisJCXJldHVybiBsZW47CisKKwlwcm9wbGVuID0gc2l6ZW9m
KCpwcm9wKSArIEZEVF9UQUdBTElHTihsZW4pOworCXJldHVybiBmZHRfc3BsaWNlX3N0cnVjdF8o
ZmR0LCBwcm9wLCBwcm9wbGVuLCAwKTsKK30KKworaW50IGZkdF9hZGRfc3Vibm9kZV9uYW1lbGVu
KHZvaWQgKmZkdCwgaW50IHBhcmVudG9mZnNldCwKKwkJCSAgICBjb25zdCBjaGFyICpuYW1lLCBp
bnQgbmFtZWxlbikKK3sKKwlzdHJ1Y3QgZmR0X25vZGVfaGVhZGVyICpuaDsKKwlpbnQgb2Zmc2V0
LCBuZXh0b2Zmc2V0OworCWludCBub2RlbGVuOworCWludCBlcnI7CisJdWludDMyX3QgdGFnOwor
CWZkdDMyX3QgKmVuZHRhZzsKKworCUZEVF9SV19DSEVDS19IRUFERVIoZmR0KTsKKworCW9mZnNl
dCA9IGZkdF9zdWJub2RlX29mZnNldF9uYW1lbGVuKGZkdCwgcGFyZW50b2Zmc2V0LCBuYW1lLCBu
YW1lbGVuKTsKKwlpZiAob2Zmc2V0ID49IDApCisJCXJldHVybiAtRkRUX0VSUl9FWElTVFM7CisJ
ZWxzZSBpZiAob2Zmc2V0ICE9IC1GRFRfRVJSX05PVEZPVU5EKQorCQlyZXR1cm4gb2Zmc2V0Owor
CisJLyogVHJ5IHRvIHBsYWNlIHRoZSBuZXcgbm9kZSBhZnRlciB0aGUgcGFyZW50J3MgcHJvcGVy
dGllcyAqLworCWZkdF9uZXh0X3RhZyhmZHQsIHBhcmVudG9mZnNldCwgJm5leHRvZmZzZXQpOyAv
KiBza2lwIHRoZSBCRUdJTl9OT0RFICovCisJZG8geworCQlvZmZzZXQgPSBuZXh0b2Zmc2V0Owor
CQl0YWcgPSBmZHRfbmV4dF90YWcoZmR0LCBvZmZzZXQsICZuZXh0b2Zmc2V0KTsKKwl9IHdoaWxl
ICgodGFnID09IEZEVF9QUk9QKSB8fCAodGFnID09IEZEVF9OT1ApKTsKKworCW5oID0gZmR0X29m
ZnNldF9wdHJfd18oZmR0LCBvZmZzZXQpOworCW5vZGVsZW4gPSBzaXplb2YoKm5oKSArIEZEVF9U
QUdBTElHTihuYW1lbGVuKzEpICsgRkRUX1RBR1NJWkU7CisKKwllcnIgPSBmZHRfc3BsaWNlX3N0
cnVjdF8oZmR0LCBuaCwgMCwgbm9kZWxlbik7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsKKwor
CW5oLT50YWcgPSBjcHVfdG9fZmR0MzIoRkRUX0JFR0lOX05PREUpOworCW1lbXNldChuaC0+bmFt
ZSwgMCwgRkRUX1RBR0FMSUdOKG5hbWVsZW4rMSkpOworCW1lbWNweShuaC0+bmFtZSwgbmFtZSwg
bmFtZWxlbik7CisJZW5kdGFnID0gKGZkdDMyX3QgKikoKGNoYXIgKiluaCArIG5vZGVsZW4gLSBG
RFRfVEFHU0laRSk7CisJKmVuZHRhZyA9IGNwdV90b19mZHQzMihGRFRfRU5EX05PREUpOworCisJ
cmV0dXJuIG9mZnNldDsKK30KKworaW50IGZkdF9hZGRfc3Vibm9kZSh2b2lkICpmZHQsIGludCBw
YXJlbnRvZmZzZXQsIGNvbnN0IGNoYXIgKm5hbWUpCit7CisJcmV0dXJuIGZkdF9hZGRfc3Vibm9k
ZV9uYW1lbGVuKGZkdCwgcGFyZW50b2Zmc2V0LCBuYW1lLCBzdHJsZW4obmFtZSkpOworfQorCitp
bnQgZmR0X2RlbF9ub2RlKHZvaWQgKmZkdCwgaW50IG5vZGVvZmZzZXQpCit7CisJaW50IGVuZG9m
ZnNldDsKKworCUZEVF9SV19DSEVDS19IRUFERVIoZmR0KTsKKworCWVuZG9mZnNldCA9IGZkdF9u
b2RlX2VuZF9vZmZzZXRfKGZkdCwgbm9kZW9mZnNldCk7CisJaWYgKGVuZG9mZnNldCA8IDApCisJ
CXJldHVybiBlbmRvZmZzZXQ7CisKKwlyZXR1cm4gZmR0X3NwbGljZV9zdHJ1Y3RfKGZkdCwgZmR0
X29mZnNldF9wdHJfd18oZmR0LCBub2Rlb2Zmc2V0KSwKKwkJCQkgIGVuZG9mZnNldCAtIG5vZGVv
ZmZzZXQsIDApOworfQorCitzdGF0aWMgdm9pZCBmZHRfcGFja2Jsb2Nrc18oY29uc3QgY2hhciAq
b2xkLCBjaGFyICpuZXcsCisJCQkgICAgaW50IG1lbV9yc3Zfc2l6ZSwgaW50IHN0cnVjdF9zaXpl
KQoreworCWludCBtZW1fcnN2X29mZiwgc3RydWN0X29mZiwgc3RyaW5nc19vZmY7CisKKwltZW1f
cnN2X29mZiA9IEZEVF9BTElHTihzaXplb2Yoc3RydWN0IGZkdF9oZWFkZXIpLCA4KTsKKwlzdHJ1
Y3Rfb2ZmID0gbWVtX3Jzdl9vZmYgKyBtZW1fcnN2X3NpemU7CisJc3RyaW5nc19vZmYgPSBzdHJ1
Y3Rfb2ZmICsgc3RydWN0X3NpemU7CisKKwltZW1tb3ZlKG5ldyArIG1lbV9yc3Zfb2ZmLCBvbGQg
KyBmZHRfb2ZmX21lbV9yc3ZtYXAob2xkKSwgbWVtX3Jzdl9zaXplKTsKKwlmZHRfc2V0X29mZl9t
ZW1fcnN2bWFwKG5ldywgbWVtX3Jzdl9vZmYpOworCisJbWVtbW92ZShuZXcgKyBzdHJ1Y3Rfb2Zm
LCBvbGQgKyBmZHRfb2ZmX2R0X3N0cnVjdChvbGQpLCBzdHJ1Y3Rfc2l6ZSk7CisJZmR0X3NldF9v
ZmZfZHRfc3RydWN0KG5ldywgc3RydWN0X29mZik7CisJZmR0X3NldF9zaXplX2R0X3N0cnVjdChu
ZXcsIHN0cnVjdF9zaXplKTsKKworCW1lbW1vdmUobmV3ICsgc3RyaW5nc19vZmYsIG9sZCArIGZk
dF9vZmZfZHRfc3RyaW5ncyhvbGQpLAorCQlmZHRfc2l6ZV9kdF9zdHJpbmdzKG9sZCkpOworCWZk
dF9zZXRfb2ZmX2R0X3N0cmluZ3MobmV3LCBzdHJpbmdzX29mZik7CisJZmR0X3NldF9zaXplX2R0
X3N0cmluZ3MobmV3LCBmZHRfc2l6ZV9kdF9zdHJpbmdzKG9sZCkpOworfQorCitpbnQgZmR0X29w
ZW5faW50byhjb25zdCB2b2lkICpmZHQsIHZvaWQgKmJ1ZiwgaW50IGJ1ZnNpemUpCit7CisJaW50
IGVycjsKKwlpbnQgbWVtX3Jzdl9zaXplLCBzdHJ1Y3Rfc2l6ZTsKKwlpbnQgbmV3c2l6ZTsKKwlj
b25zdCBjaGFyICpmZHRzdGFydCA9IGZkdDsKKwljb25zdCBjaGFyICpmZHRlbmQgPSBmZHRzdGFy
dCArIGZkdF90b3RhbHNpemUoZmR0KTsKKwljaGFyICp0bXA7CisKKwlGRFRfQ0hFQ0tfSEVBREVS
KGZkdCk7CisKKwltZW1fcnN2X3NpemUgPSAoZmR0X251bV9tZW1fcnN2KGZkdCkrMSkKKwkJKiBz
aXplb2Yoc3RydWN0IGZkdF9yZXNlcnZlX2VudHJ5KTsKKworCWlmIChmZHRfdmVyc2lvbihmZHQp
ID49IDE3KSB7CisJCXN0cnVjdF9zaXplID0gZmR0X3NpemVfZHRfc3RydWN0KGZkdCk7CisJfSBl
bHNlIHsKKwkJc3RydWN0X3NpemUgPSAwOworCQl3aGlsZSAoZmR0X25leHRfdGFnKGZkdCwgc3Ry
dWN0X3NpemUsICZzdHJ1Y3Rfc2l6ZSkgIT0gRkRUX0VORCkKKwkJCTsKKwkJaWYgKHN0cnVjdF9z
aXplIDwgMCkKKwkJCXJldHVybiBzdHJ1Y3Rfc2l6ZTsKKwl9CisKKwlpZiAoIWZkdF9ibG9ja3Nf
bWlzb3JkZXJlZF8oZmR0LCBtZW1fcnN2X3NpemUsIHN0cnVjdF9zaXplKSkgeworCQkvKiBubyBm
dXJ0aGVyIHdvcmsgbmVjZXNzYXJ5ICovCisJCWVyciA9IGZkdF9tb3ZlKGZkdCwgYnVmLCBidWZz
aXplKTsKKwkJaWYgKGVycikKKwkJCXJldHVybiBlcnI7CisJCWZkdF9zZXRfdmVyc2lvbihidWYs
IDE3KTsKKwkJZmR0X3NldF9zaXplX2R0X3N0cnVjdChidWYsIHN0cnVjdF9zaXplKTsKKwkJZmR0
X3NldF90b3RhbHNpemUoYnVmLCBidWZzaXplKTsKKwkJcmV0dXJuIDA7CisJfQorCisJLyogTmVl
ZCB0byByZW9yZGVyICovCisJbmV3c2l6ZSA9IEZEVF9BTElHTihzaXplb2Yoc3RydWN0IGZkdF9o
ZWFkZXIpLCA4KSArIG1lbV9yc3Zfc2l6ZQorCQkrIHN0cnVjdF9zaXplICsgZmR0X3NpemVfZHRf
c3RyaW5ncyhmZHQpOworCisJaWYgKGJ1ZnNpemUgPCBuZXdzaXplKQorCQlyZXR1cm4gLUZEVF9F
UlJfTk9TUEFDRTsKKworCS8qIEZpcnN0IGF0dGVtcHQgdG8gYnVpbGQgY29udmVydGVkIHRyZWUg
YXQgYmVnaW5uaW5nIG9mIGJ1ZmZlciAqLworCXRtcCA9IGJ1ZjsKKwkvKiBCdXQgaWYgdGhhdCBv
dmVybGFwcyB3aXRoIHRoZSBvbGQgdHJlZS4uLiAqLworCWlmICgoKHRtcCArIG5ld3NpemUpID4g
ZmR0c3RhcnQpICYmICh0bXAgPCBmZHRlbmQpKSB7CisJCS8qIFRyeSByaWdodCBhZnRlciB0aGUg
b2xkIHRyZWUgaW5zdGVhZCAqLworCQl0bXAgPSAoY2hhciAqKSh1aW50cHRyX3QpZmR0ZW5kOwor
CQlpZiAoKHRtcCArIG5ld3NpemUpID4gKChjaGFyICopYnVmICsgYnVmc2l6ZSkpCisJCQlyZXR1
cm4gLUZEVF9FUlJfTk9TUEFDRTsKKwl9CisKKwlmZHRfcGFja2Jsb2Nrc18oZmR0LCB0bXAsIG1l
bV9yc3Zfc2l6ZSwgc3RydWN0X3NpemUpOworCW1lbW1vdmUoYnVmLCB0bXAsIG5ld3NpemUpOwor
CisJZmR0X3NldF9tYWdpYyhidWYsIEZEVF9NQUdJQyk7CisJZmR0X3NldF90b3RhbHNpemUoYnVm
LCBidWZzaXplKTsKKwlmZHRfc2V0X3ZlcnNpb24oYnVmLCAxNyk7CisJZmR0X3NldF9sYXN0X2Nv
bXBfdmVyc2lvbihidWYsIDE2KTsKKwlmZHRfc2V0X2Jvb3RfY3B1aWRfcGh5cyhidWYsIGZkdF9i
b290X2NwdWlkX3BoeXMoZmR0KSk7CisKKwlyZXR1cm4gMDsKK30KKworaW50IGZkdF9wYWNrKHZv
aWQgKmZkdCkKK3sKKwlpbnQgbWVtX3Jzdl9zaXplOworCisJRkRUX1JXX0NIRUNLX0hFQURFUihm
ZHQpOworCisJbWVtX3Jzdl9zaXplID0gKGZkdF9udW1fbWVtX3JzdihmZHQpKzEpCisJCSogc2l6
ZW9mKHN0cnVjdCBmZHRfcmVzZXJ2ZV9lbnRyeSk7CisJZmR0X3BhY2tibG9ja3NfKGZkdCwgZmR0
LCBtZW1fcnN2X3NpemUsIGZkdF9zaXplX2R0X3N0cnVjdChmZHQpKTsKKwlmZHRfc2V0X3RvdGFs
c2l6ZShmZHQsIGZkdF9kYXRhX3NpemVfKGZkdCkpOworCisJcmV0dXJuIDA7Cit9CmRpZmYgLS1n
aXQgYS9saWIvbGliZmR0L2ZkdF9zdHJlcnJvci5jIGIvbGliL2xpYmZkdC9mZHRfc3RyZXJyb3Iu
YwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45Njc3YTE4Ci0tLSAvZGV2L251
bGwKKysrIGIvbGliL2xpYmZkdC9mZHRfc3RyZXJyb3IuYwpAQCAtMCwwICsxLDEwMiBAQAorLyoK
KyAqIGxpYmZkdCAtIEZsYXQgRGV2aWNlIFRyZWUgbWFuaXB1bGF0aW9uCisgKiBDb3B5cmlnaHQg
KEMpIDIwMDYgRGF2aWQgR2lic29uLCBJQk0gQ29ycG9yYXRpb24uCisgKgorICogbGliZmR0IGlz
IGR1YWwgbGljZW5zZWQ6IHlvdSBjYW4gdXNlIGl0IGVpdGhlciB1bmRlciB0aGUgdGVybXMgb2YK
KyAqIHRoZSBHUEwsIG9yIHRoZSBCU0QgbGljZW5zZSwgYXQgeW91ciBvcHRpb24uCisgKgorICog
IGEpIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp
dCBhbmQvb3IKKyAqICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZSBhcworICogICAgIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0
d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZQorICogICAgIExpY2Vuc2Us
IG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogICAgIFRoaXMg
bGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVs
LAorICogICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBs
aWVkIHdhcnJhbnR5IG9mCisgKiAgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBM
aWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogICAgIFlvdSBzaG91bGQgaGF2ZSByZWNl
aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYworICogICAgIExpY2Vuc2UgYWxv
bmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUKKyAqICAgICBT
b2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdCwgRmlmdGggRmxvb3IsIEJv
c3RvbiwKKyAqICAgICBNQSAwMjExMC0xMzAxIFVTQQorICoKKyAqIEFsdGVybmF0aXZlbHksCisg
KgorICogIGIpIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3IKKyAqICAgICB3aXRob3V0IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcKKyAqICAgICBjb25kaXRpb25zIGFyZSBtZXQ6Cisg
KgorICogICAgIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUKKyAqICAgICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZworICogICAgICAgIGRpc2NsYWltZXIuCisgKiAgICAgMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQor
ICogICAgICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCisgKiAgICAgICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgKiAgICAgICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqICAgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQKKyAqICAgICBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLAorICogICAgIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiAgICAgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqICAgICBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiAgICAg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsCisgKiAgICAgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUCisgKiAgICAgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiAgICAgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqICAgICBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqICAgICBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IK
KyAqICAgICBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLAorICogICAgIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKyNpbmNsdWRlICJsaWJmZHRfZW52LmgiCisKKyNpbmNsdWRl
IDxmZHQuaD4KKyNpbmNsdWRlIDxsaWJmZHQuaD4KKworI2luY2x1ZGUgImxpYmZkdF9pbnRlcm5h
bC5oIgorCitzdHJ1Y3QgZmR0X2VycnRhYmVudCB7CisJY29uc3QgY2hhciAqc3RyOworfTsKKwor
I2RlZmluZSBGRFRfRVJSVEFCRU5UKHZhbCkgXAorCVsodmFsKV0gPSB7IC5zdHIgPSAjdmFsLCB9
CisKK3N0YXRpYyBzdHJ1Y3QgZmR0X2VycnRhYmVudCBmZHRfZXJydGFibGVbXSA9IHsKKwlGRFRf
RVJSVEFCRU5UKEZEVF9FUlJfTk9URk9VTkQpLAorCUZEVF9FUlJUQUJFTlQoRkRUX0VSUl9FWElT
VFMpLAorCUZEVF9FUlJUQUJFTlQoRkRUX0VSUl9OT1NQQUNFKSwKKworCUZEVF9FUlJUQUJFTlQo
RkRUX0VSUl9CQURPRkZTRVQpLAorCUZEVF9FUlJUQUJFTlQoRkRUX0VSUl9CQURQQVRIKSwKKwlG
RFRfRVJSVEFCRU5UKEZEVF9FUlJfQkFEUEhBTkRMRSksCisJRkRUX0VSUlRBQkVOVChGRFRfRVJS
X0JBRFNUQVRFKSwKKworCUZEVF9FUlJUQUJFTlQoRkRUX0VSUl9UUlVOQ0FURUQpLAorCUZEVF9F
UlJUQUJFTlQoRkRUX0VSUl9CQURNQUdJQyksCisJRkRUX0VSUlRBQkVOVChGRFRfRVJSX0JBRFZF
UlNJT04pLAorCUZEVF9FUlJUQUJFTlQoRkRUX0VSUl9CQURTVFJVQ1RVUkUpLAorCUZEVF9FUlJU
QUJFTlQoRkRUX0VSUl9CQURMQVlPVVQpLAorCUZEVF9FUlJUQUJFTlQoRkRUX0VSUl9JTlRFUk5B
TCksCisJRkRUX0VSUlRBQkVOVChGRFRfRVJSX0JBRE5DRUxMUyksCisJRkRUX0VSUlRBQkVOVChG
RFRfRVJSX0JBRFZBTFVFKSwKKwlGRFRfRVJSVEFCRU5UKEZEVF9FUlJfQkFET1ZFUkxBWSksCisJ
RkRUX0VSUlRBQkVOVChGRFRfRVJSX05PUEhBTkRMRVMpLAorfTsKKyNkZWZpbmUgRkRUX0VSUlRB
QlNJWkUJKHNpemVvZihmZHRfZXJydGFibGUpIC8gc2l6ZW9mKGZkdF9lcnJ0YWJsZVswXSkpCisK
K2NvbnN0IGNoYXIgKmZkdF9zdHJlcnJvcihpbnQgZXJydmFsKQoreworCWlmIChlcnJ2YWwgPiAw
KQorCQlyZXR1cm4gIjx2YWxpZCBvZmZzZXQvbGVuZ3RoPiI7CisJZWxzZSBpZiAoZXJydmFsID09
IDApCisJCXJldHVybiAiPG5vIGVycm9yPiI7CisJZWxzZSBpZiAoZXJydmFsID4gLUZEVF9FUlJU
QUJTSVpFKSB7CisJCWNvbnN0IGNoYXIgKnMgPSBmZHRfZXJydGFibGVbLWVycnZhbF0uc3RyOwor
CisJCWlmIChzKQorCQkJcmV0dXJuIHM7CisJfQorCisJcmV0dXJuICI8dW5rbm93biBlcnJvcj4i
OworfQpkaWZmIC0tZ2l0IGEvbGliL2xpYmZkdC9mZHRfc3cuYyBiL2xpYi9saWJmZHQvZmR0X3N3
LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmQzM2NjMgotLS0gL2Rldi9u
dWxsCisrKyBiL2xpYi9saWJmZHQvZmR0X3N3LmMKQEAgLTAsMCArMSwzMDAgQEAKKy8qCisgKiBs
aWJmZHQgLSBGbGF0IERldmljZSBUcmVlIG1hbmlwdWxhdGlvbgorICogQ29weXJpZ2h0IChDKSAy
MDA2IERhdmlkIEdpYnNvbiwgSUJNIENvcnBvcmF0aW9uLgorICoKKyAqIGxpYmZkdCBpcyBkdWFs
IGxpY2Vuc2VkOiB5b3UgY2FuIHVzZSBpdCBlaXRoZXIgdW5kZXIgdGhlIHRlcm1zIG9mCisgKiB0
aGUgR1BMLCBvciB0aGUgQlNEIGxpY2Vuc2UsIGF0IHlvdXIgb3B0aW9uLgorICoKKyAqICBhKSBU
aGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k
L29yCisgKiAgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwg
UHVibGljIExpY2Vuc2UgYXMKKyAqICAgICBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUg
Rm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUKKyAqICAgICBMaWNlbnNlLCBvciAo
YXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICAgICBUaGlzIGxpYnJh
cnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq
ICAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3
YXJyYW50eSBvZgorICogICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqICAgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5z
ZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICAgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQg
YSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKKyAqICAgICBMaWNlbnNlIGFsb25nIHdp
dGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlCisgKiAgICAgU29mdHdh
cmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24s
CisgKiAgICAgTUEgMDIxMTAtMTMwMSBVU0EKKyAqCisgKiBBbHRlcm5hdGl2ZWx5LAorICoKKyAq
ICBiKSBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yCisgKiAgICAgd2l0aG91dCBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nCisgKiAgICAgY29uZGl0aW9ucyBhcmUgbWV0OgorICoKKyAq
ICAgICAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlCisgKiAgICAgICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgICAgICBkaXNjbGFpbWVyLgorICogICAgIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqICAg
ICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZworICogICAgICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscworICogICAgICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiAgICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5ECisgKiAgICAgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywKKyAqICAgICBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRgorICogICAgIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiAgICAgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogICAgIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAor
ICogICAgIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVAorICogICAgIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogICAgIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiAgICAgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiAgICAgQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgKiAg
ICAgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwKKyAqICAgICBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisjaW5jbHVkZSAibGliZmR0X2Vudi5oIgorCisjaW5jbHVkZSA8ZmR0
Lmg+CisjaW5jbHVkZSA8bGliZmR0Lmg+CisKKyNpbmNsdWRlICJsaWJmZHRfaW50ZXJuYWwuaCIK
Kworc3RhdGljIGludCBmZHRfc3dfY2hlY2tfaGVhZGVyXyh2b2lkICpmZHQpCit7CisJaWYgKGZk
dF9tYWdpYyhmZHQpICE9IEZEVF9TV19NQUdJQykKKwkJcmV0dXJuIC1GRFRfRVJSX0JBRE1BR0lD
OworCS8qIEZJWE1FOiBzaG91bGQgY2hlY2sgbW9yZSBkZXRhaWxzIGFib3V0IHRoZSBoZWFkZXIg
c3RhdGUgKi8KKwlyZXR1cm4gMDsKK30KKworI2RlZmluZSBGRFRfU1dfQ0hFQ0tfSEVBREVSKGZk
dCkgXAorCXsgXAorCQlpbnQgZXJyOyBcCisJCWlmICgoZXJyID0gZmR0X3N3X2NoZWNrX2hlYWRl
cl8oZmR0KSkgIT0gMCkgXAorCQkJcmV0dXJuIGVycjsgXAorCX0KKworc3RhdGljIHZvaWQgKmZk
dF9ncmFiX3NwYWNlXyh2b2lkICpmZHQsIHNpemVfdCBsZW4pCit7CisJaW50IG9mZnNldCA9IGZk
dF9zaXplX2R0X3N0cnVjdChmZHQpOworCWludCBzcGFjZWxlZnQ7CisKKwlzcGFjZWxlZnQgPSBm
ZHRfdG90YWxzaXplKGZkdCkgLSBmZHRfb2ZmX2R0X3N0cnVjdChmZHQpCisJCS0gZmR0X3NpemVf
ZHRfc3RyaW5ncyhmZHQpOworCisJaWYgKChvZmZzZXQgKyBsZW4gPCBvZmZzZXQpIHx8IChvZmZz
ZXQgKyBsZW4gPiBzcGFjZWxlZnQpKQorCQlyZXR1cm4gTlVMTDsKKworCWZkdF9zZXRfc2l6ZV9k
dF9zdHJ1Y3QoZmR0LCBvZmZzZXQgKyBsZW4pOworCXJldHVybiBmZHRfb2Zmc2V0X3B0cl93Xyhm
ZHQsIG9mZnNldCk7Cit9CisKK2ludCBmZHRfY3JlYXRlKHZvaWQgKmJ1ZiwgaW50IGJ1ZnNpemUp
Cit7CisJdm9pZCAqZmR0ID0gYnVmOworCisJaWYgKGJ1ZnNpemUgPCBzaXplb2Yoc3RydWN0IGZk
dF9oZWFkZXIpKQorCQlyZXR1cm4gLUZEVF9FUlJfTk9TUEFDRTsKKworCW1lbXNldChidWYsIDAs
IGJ1ZnNpemUpOworCisJZmR0X3NldF9tYWdpYyhmZHQsIEZEVF9TV19NQUdJQyk7CisJZmR0X3Nl
dF92ZXJzaW9uKGZkdCwgRkRUX0xBU1RfU1VQUE9SVEVEX1ZFUlNJT04pOworCWZkdF9zZXRfbGFz
dF9jb21wX3ZlcnNpb24oZmR0LCBGRFRfRklSU1RfU1VQUE9SVEVEX1ZFUlNJT04pOworCWZkdF9z
ZXRfdG90YWxzaXplKGZkdCwgIGJ1ZnNpemUpOworCisJZmR0X3NldF9vZmZfbWVtX3Jzdm1hcChm
ZHQsIEZEVF9BTElHTihzaXplb2Yoc3RydWN0IGZkdF9oZWFkZXIpLAorCQkJCQkgICAgICBzaXpl
b2Yoc3RydWN0IGZkdF9yZXNlcnZlX2VudHJ5KSkpOworCWZkdF9zZXRfb2ZmX2R0X3N0cnVjdChm
ZHQsIGZkdF9vZmZfbWVtX3Jzdm1hcChmZHQpKTsKKwlmZHRfc2V0X29mZl9kdF9zdHJpbmdzKGZk
dCwgYnVmc2l6ZSk7CisKKwlyZXR1cm4gMDsKK30KKworaW50IGZkdF9yZXNpemUodm9pZCAqZmR0
LCB2b2lkICpidWYsIGludCBidWZzaXplKQoreworCXNpemVfdCBoZWFkc2l6ZSwgdGFpbHNpemU7
CisJY2hhciAqb2xkdGFpbCwgKm5ld3RhaWw7CisKKwlGRFRfU1dfQ0hFQ0tfSEVBREVSKGZkdCk7
CisKKwloZWFkc2l6ZSA9IGZkdF9vZmZfZHRfc3RydWN0KGZkdCk7CisJdGFpbHNpemUgPSBmZHRf
c2l6ZV9kdF9zdHJpbmdzKGZkdCk7CisKKwlpZiAoKGhlYWRzaXplICsgdGFpbHNpemUpID4gYnVm
c2l6ZSkKKwkJcmV0dXJuIC1GRFRfRVJSX05PU1BBQ0U7CisKKwlvbGR0YWlsID0gKGNoYXIgKilm
ZHQgKyBmZHRfdG90YWxzaXplKGZkdCkgLSB0YWlsc2l6ZTsKKwluZXd0YWlsID0gKGNoYXIgKili
dWYgKyBidWZzaXplIC0gdGFpbHNpemU7CisKKwkvKiBUd28gY2FzZXMgdG8gYXZvaWQgY2xvYmJl
cmluZyBkYXRhIGlmIHRoZSBvbGQgYW5kIG5ldworCSAqIGJ1ZmZlcnMgcGFydGlhbGx5IG92ZXJs
YXAgKi8KKwlpZiAoYnVmIDw9IGZkdCkgeworCQltZW1tb3ZlKGJ1ZiwgZmR0LCBoZWFkc2l6ZSk7
CisJCW1lbW1vdmUobmV3dGFpbCwgb2xkdGFpbCwgdGFpbHNpemUpOworCX0gZWxzZSB7CisJCW1l
bW1vdmUobmV3dGFpbCwgb2xkdGFpbCwgdGFpbHNpemUpOworCQltZW1tb3ZlKGJ1ZiwgZmR0LCBo
ZWFkc2l6ZSk7CisJfQorCisJZmR0X3NldF9vZmZfZHRfc3RyaW5ncyhidWYsIGJ1ZnNpemUpOwor
CWZkdF9zZXRfdG90YWxzaXplKGJ1ZiwgYnVmc2l6ZSk7CisKKwlyZXR1cm4gMDsKK30KKworaW50
IGZkdF9hZGRfcmVzZXJ2ZW1hcF9lbnRyeSh2b2lkICpmZHQsIHVpbnQ2NF90IGFkZHIsIHVpbnQ2
NF90IHNpemUpCit7CisJc3RydWN0IGZkdF9yZXNlcnZlX2VudHJ5ICpyZTsKKwlpbnQgb2Zmc2V0
OworCisJRkRUX1NXX0NIRUNLX0hFQURFUihmZHQpOworCisJaWYgKGZkdF9zaXplX2R0X3N0cnVj
dChmZHQpKQorCQlyZXR1cm4gLUZEVF9FUlJfQkFEU1RBVEU7CisKKwlvZmZzZXQgPSBmZHRfb2Zm
X2R0X3N0cnVjdChmZHQpOworCWlmICgob2Zmc2V0ICsgc2l6ZW9mKCpyZSkpID4gZmR0X3RvdGFs
c2l6ZShmZHQpKQorCQlyZXR1cm4gLUZEVF9FUlJfTk9TUEFDRTsKKworCXJlID0gKHN0cnVjdCBm
ZHRfcmVzZXJ2ZV9lbnRyeSAqKSgoY2hhciAqKWZkdCArIG9mZnNldCk7CisJcmUtPmFkZHJlc3Mg
PSBjcHVfdG9fZmR0NjQoYWRkcik7CisJcmUtPnNpemUgPSBjcHVfdG9fZmR0NjQoc2l6ZSk7CisK
KwlmZHRfc2V0X29mZl9kdF9zdHJ1Y3QoZmR0LCBvZmZzZXQgKyBzaXplb2YoKnJlKSk7CisKKwly
ZXR1cm4gMDsKK30KKworaW50IGZkdF9maW5pc2hfcmVzZXJ2ZW1hcCh2b2lkICpmZHQpCit7CisJ
cmV0dXJuIGZkdF9hZGRfcmVzZXJ2ZW1hcF9lbnRyeShmZHQsIDAsIDApOworfQorCitpbnQgZmR0
X2JlZ2luX25vZGUodm9pZCAqZmR0LCBjb25zdCBjaGFyICpuYW1lKQoreworCXN0cnVjdCBmZHRf
bm9kZV9oZWFkZXIgKm5oOworCWludCBuYW1lbGVuID0gc3RybGVuKG5hbWUpICsgMTsKKworCUZE
VF9TV19DSEVDS19IRUFERVIoZmR0KTsKKworCW5oID0gZmR0X2dyYWJfc3BhY2VfKGZkdCwgc2l6
ZW9mKCpuaCkgKyBGRFRfVEFHQUxJR04obmFtZWxlbikpOworCWlmICghIG5oKQorCQlyZXR1cm4g
LUZEVF9FUlJfTk9TUEFDRTsKKworCW5oLT50YWcgPSBjcHVfdG9fZmR0MzIoRkRUX0JFR0lOX05P
REUpOworCW1lbWNweShuaC0+bmFtZSwgbmFtZSwgbmFtZWxlbik7CisJcmV0dXJuIDA7Cit9CisK
K2ludCBmZHRfZW5kX25vZGUodm9pZCAqZmR0KQoreworCWZkdDMyX3QgKmVuOworCisJRkRUX1NX
X0NIRUNLX0hFQURFUihmZHQpOworCisJZW4gPSBmZHRfZ3JhYl9zcGFjZV8oZmR0LCBGRFRfVEFH
U0laRSk7CisJaWYgKCEgZW4pCisJCXJldHVybiAtRkRUX0VSUl9OT1NQQUNFOworCisJKmVuID0g
Y3B1X3RvX2ZkdDMyKEZEVF9FTkRfTk9ERSk7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQg
ZmR0X2ZpbmRfYWRkX3N0cmluZ18odm9pZCAqZmR0LCBjb25zdCBjaGFyICpzKQoreworCWNoYXIg
KnN0cnRhYiA9IChjaGFyICopZmR0ICsgZmR0X3RvdGFsc2l6ZShmZHQpOworCWNvbnN0IGNoYXIg
KnA7CisJaW50IHN0cnRhYnNpemUgPSBmZHRfc2l6ZV9kdF9zdHJpbmdzKGZkdCk7CisJaW50IGxl
biA9IHN0cmxlbihzKSArIDE7CisJaW50IHN0cnVjdF90b3AsIG9mZnNldDsKKworCXAgPSBmZHRf
ZmluZF9zdHJpbmdfKHN0cnRhYiAtIHN0cnRhYnNpemUsIHN0cnRhYnNpemUsIHMpOworCWlmIChw
KQorCQlyZXR1cm4gcCAtIHN0cnRhYjsKKworCS8qIEFkZCBpdCAqLworCW9mZnNldCA9IC1zdHJ0
YWJzaXplIC0gbGVuOworCXN0cnVjdF90b3AgPSBmZHRfb2ZmX2R0X3N0cnVjdChmZHQpICsgZmR0
X3NpemVfZHRfc3RydWN0KGZkdCk7CisJaWYgKGZkdF90b3RhbHNpemUoZmR0KSArIG9mZnNldCA8
IHN0cnVjdF90b3ApCisJCXJldHVybiAwOyAvKiBubyBtb3JlIHJvb20gOiggKi8KKworCW1lbWNw
eShzdHJ0YWIgKyBvZmZzZXQsIHMsIGxlbik7CisJZmR0X3NldF9zaXplX2R0X3N0cmluZ3MoZmR0
LCBzdHJ0YWJzaXplICsgbGVuKTsKKwlyZXR1cm4gb2Zmc2V0OworfQorCitpbnQgZmR0X3Byb3Bl
cnR5X3BsYWNlaG9sZGVyKHZvaWQgKmZkdCwgY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbiwgdm9p
ZCAqKnZhbHApCit7CisJc3RydWN0IGZkdF9wcm9wZXJ0eSAqcHJvcDsKKwlpbnQgbmFtZW9mZjsK
KworCUZEVF9TV19DSEVDS19IRUFERVIoZmR0KTsKKworCW5hbWVvZmYgPSBmZHRfZmluZF9hZGRf
c3RyaW5nXyhmZHQsIG5hbWUpOworCWlmIChuYW1lb2ZmID09IDApCisJCXJldHVybiAtRkRUX0VS
Ul9OT1NQQUNFOworCisJcHJvcCA9IGZkdF9ncmFiX3NwYWNlXyhmZHQsIHNpemVvZigqcHJvcCkg
KyBGRFRfVEFHQUxJR04obGVuKSk7CisJaWYgKCEgcHJvcCkKKwkJcmV0dXJuIC1GRFRfRVJSX05P
U1BBQ0U7CisKKwlwcm9wLT50YWcgPSBjcHVfdG9fZmR0MzIoRkRUX1BST1ApOworCXByb3AtPm5h
bWVvZmYgPSBjcHVfdG9fZmR0MzIobmFtZW9mZik7CisJcHJvcC0+bGVuID0gY3B1X3RvX2ZkdDMy
KGxlbik7CisJKnZhbHAgPSBwcm9wLT5kYXRhOworCXJldHVybiAwOworfQorCitpbnQgZmR0X3By
b3BlcnR5KHZvaWQgKmZkdCwgY29uc3QgY2hhciAqbmFtZSwgY29uc3Qgdm9pZCAqdmFsLCBpbnQg
bGVuKQoreworCXZvaWQgKnB0cjsKKwlpbnQgcmV0OworCisJcmV0ID0gZmR0X3Byb3BlcnR5X3Bs
YWNlaG9sZGVyKGZkdCwgbmFtZSwgbGVuLCAmcHRyKTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0
OworCW1lbWNweShwdHIsIHZhbCwgbGVuKTsKKwlyZXR1cm4gMDsKK30KKworaW50IGZkdF9maW5p
c2godm9pZCAqZmR0KQoreworCWNoYXIgKnAgPSAoY2hhciAqKWZkdDsKKwlmZHQzMl90ICplbmQ7
CisJaW50IG9sZHN0cm9mZnNldCwgbmV3c3Ryb2Zmc2V0OworCXVpbnQzMl90IHRhZzsKKwlpbnQg
b2Zmc2V0LCBuZXh0b2Zmc2V0OworCisJRkRUX1NXX0NIRUNLX0hFQURFUihmZHQpOworCisJLyog
QWRkIHRlcm1pbmF0b3IgKi8KKwllbmQgPSBmZHRfZ3JhYl9zcGFjZV8oZmR0LCBzaXplb2YoKmVu
ZCkpOworCWlmICghIGVuZCkKKwkJcmV0dXJuIC1GRFRfRVJSX05PU1BBQ0U7CisJKmVuZCA9IGNw
dV90b19mZHQzMihGRFRfRU5EKTsKKworCS8qIFJlbG9jYXRlIHRoZSBzdHJpbmcgdGFibGUgKi8K
KwlvbGRzdHJvZmZzZXQgPSBmZHRfdG90YWxzaXplKGZkdCkgLSBmZHRfc2l6ZV9kdF9zdHJpbmdz
KGZkdCk7CisJbmV3c3Ryb2Zmc2V0ID0gZmR0X29mZl9kdF9zdHJ1Y3QoZmR0KSArIGZkdF9zaXpl
X2R0X3N0cnVjdChmZHQpOworCW1lbW1vdmUocCArIG5ld3N0cm9mZnNldCwgcCArIG9sZHN0cm9m
ZnNldCwgZmR0X3NpemVfZHRfc3RyaW5ncyhmZHQpKTsKKwlmZHRfc2V0X29mZl9kdF9zdHJpbmdz
KGZkdCwgbmV3c3Ryb2Zmc2V0KTsKKworCS8qIFdhbGsgdGhlIHN0cnVjdHVyZSwgY29ycmVjdGlu
ZyBzdHJpbmcgb2Zmc2V0cyAqLworCW9mZnNldCA9IDA7CisJd2hpbGUgKCh0YWcgPSBmZHRfbmV4
dF90YWcoZmR0LCBvZmZzZXQsICZuZXh0b2Zmc2V0KSkgIT0gRkRUX0VORCkgeworCQlpZiAodGFn
ID09IEZEVF9QUk9QKSB7CisJCQlzdHJ1Y3QgZmR0X3Byb3BlcnR5ICpwcm9wID0KKwkJCQlmZHRf
b2Zmc2V0X3B0cl93XyhmZHQsIG9mZnNldCk7CisJCQlpbnQgbmFtZW9mZjsKKworCQkJbmFtZW9m
ZiA9IGZkdDMyX3RvX2NwdShwcm9wLT5uYW1lb2ZmKTsKKwkJCW5hbWVvZmYgKz0gZmR0X3NpemVf
ZHRfc3RyaW5ncyhmZHQpOworCQkJcHJvcC0+bmFtZW9mZiA9IGNwdV90b19mZHQzMihuYW1lb2Zm
KTsKKwkJfQorCQlvZmZzZXQgPSBuZXh0b2Zmc2V0OworCX0KKwlpZiAobmV4dG9mZnNldCA8IDAp
CisJCXJldHVybiBuZXh0b2Zmc2V0OworCisJLyogRmluYWxseSwgYWRqdXN0IHRoZSBoZWFkZXIg
Ki8KKwlmZHRfc2V0X3RvdGFsc2l6ZShmZHQsIG5ld3N0cm9mZnNldCArIGZkdF9zaXplX2R0X3N0
cmluZ3MoZmR0KSk7CisJZmR0X3NldF9tYWdpYyhmZHQsIEZEVF9NQUdJQyk7CisJcmV0dXJuIDA7
Cit9CmRpZmYgLS1naXQgYS9saWIvbGliZmR0L2ZkdF93aXAuYyBiL2xpYi9saWJmZHQvZmR0X3dp
cC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUzNGMxY2IKLS0tIC9kZXYv
bnVsbAorKysgYi9saWIvbGliZmR0L2ZkdF93aXAuYwpAQCAtMCwwICsxLDEzOSBAQAorLyoKKyAq
IGxpYmZkdCAtIEZsYXQgRGV2aWNlIFRyZWUgbWFuaXB1bGF0aW9uCisgKiBDb3B5cmlnaHQgKEMp
IDIwMDYgRGF2aWQgR2lic29uLCBJQk0gQ29ycG9yYXRpb24uCisgKgorICogbGliZmR0IGlzIGR1
YWwgbGljZW5zZWQ6IHlvdSBjYW4gdXNlIGl0IGVpdGhlciB1bmRlciB0aGUgdGVybXMgb2YKKyAq
IHRoZSBHUEwsIG9yIHRoZSBCU0QgbGljZW5zZSwgYXQgeW91ciBvcHRpb24uCisgKgorICogIGEp
IFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBh
bmQvb3IKKyAqICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJh
bCBQdWJsaWMgTGljZW5zZSBhcworICogICAgIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2Fy
ZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZQorICogICAgIExpY2Vuc2UsIG9y
IChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogICAgIFRoaXMgbGli
cmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor
ICogICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk
IHdhcnJhbnR5IG9mCisgKiAgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl
bnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZl
ZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYworICogICAgIExpY2Vuc2UgYWxvbmcg
d2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUKKyAqICAgICBTb2Z0
d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdCwgRmlmdGggRmxvb3IsIEJvc3Rv
biwKKyAqICAgICBNQSAwMjExMC0xMzAxIFVTQQorICoKKyAqIEFsdGVybmF0aXZlbHksCisgKgor
ICogIGIpIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3IKKyAqICAgICB3aXRob3V0IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcKKyAqICAgICBjb25kaXRpb25zIGFyZSBtZXQ6CisgKgor
ICogICAgIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUKKyAqICAgICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZworICogICAgICAgIGRpc2NsYWltZXIuCisgKiAgICAgMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICog
ICAgICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCisgKiAgICAgICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCisgKiAgICAgICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqICAgICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQKKyAqICAgICBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLAorICogICAgIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiAgICAgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqICAgICBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiAgICAgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiAgICAgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUCisgKiAgICAgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiAgICAgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqICAgICBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqICAgICBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyAq
ICAgICBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLAorICogICAgIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKyNpbmNsdWRlICJsaWJmZHRfZW52LmgiCisKKyNpbmNsdWRlIDxm
ZHQuaD4KKyNpbmNsdWRlIDxsaWJmZHQuaD4KKworI2luY2x1ZGUgImxpYmZkdF9pbnRlcm5hbC5o
IgorCitpbnQgZmR0X3NldHByb3BfaW5wbGFjZV9uYW1lbGVuX3BhcnRpYWwodm9pZCAqZmR0LCBp
bnQgbm9kZW9mZnNldCwKKwkJCQkJY29uc3QgY2hhciAqbmFtZSwgaW50IG5hbWVsZW4sCisJCQkJ
CXVpbnQzMl90IGlkeCwgY29uc3Qgdm9pZCAqdmFsLAorCQkJCQlpbnQgbGVuKQoreworCXZvaWQg
KnByb3B2YWw7CisJaW50IHByb3BsZW47CisKKwlwcm9wdmFsID0gZmR0X2dldHByb3BfbmFtZWxl
bl93KGZkdCwgbm9kZW9mZnNldCwgbmFtZSwgbmFtZWxlbiwKKwkJCQkJJnByb3BsZW4pOworCWlm
ICghcHJvcHZhbCkKKwkJcmV0dXJuIHByb3BsZW47CisKKwlpZiAocHJvcGxlbiA8IChsZW4gKyBp
ZHgpKQorCQlyZXR1cm4gLUZEVF9FUlJfTk9TUEFDRTsKKworCW1lbWNweSgoY2hhciAqKXByb3B2
YWwgKyBpZHgsIHZhbCwgbGVuKTsKKwlyZXR1cm4gMDsKK30KKworaW50IGZkdF9zZXRwcm9wX2lu
cGxhY2Uodm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwgY29uc3QgY2hhciAqbmFtZSwKKwkJCWNv
bnN0IHZvaWQgKnZhbCwgaW50IGxlbikKK3sKKwljb25zdCB2b2lkICpwcm9wdmFsOworCWludCBw
cm9wbGVuOworCisJcHJvcHZhbCA9IGZkdF9nZXRwcm9wKGZkdCwgbm9kZW9mZnNldCwgbmFtZSwg
JnByb3BsZW4pOworCWlmICghcHJvcHZhbCkKKwkJcmV0dXJuIHByb3BsZW47CisKKwlpZiAocHJv
cGxlbiAhPSBsZW4pCisJCXJldHVybiAtRkRUX0VSUl9OT1NQQUNFOworCisJcmV0dXJuIGZkdF9z
ZXRwcm9wX2lucGxhY2VfbmFtZWxlbl9wYXJ0aWFsKGZkdCwgbm9kZW9mZnNldCwgbmFtZSwKKwkJ
CQkJCSAgIHN0cmxlbihuYW1lKSwgMCwKKwkJCQkJCSAgIHZhbCwgbGVuKTsKK30KKworc3RhdGlj
IHZvaWQgZmR0X25vcF9yZWdpb25fKHZvaWQgKnN0YXJ0LCBpbnQgbGVuKQoreworCWZkdDMyX3Qg
KnA7CisKKwlmb3IgKHAgPSBzdGFydDsgKGNoYXIgKilwIDwgKChjaGFyICopc3RhcnQgKyBsZW4p
OyBwKyspCisJCSpwID0gY3B1X3RvX2ZkdDMyKEZEVF9OT1ApOworfQorCitpbnQgZmR0X25vcF9w
cm9wZXJ0eSh2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0LCBjb25zdCBjaGFyICpuYW1lKQorewor
CXN0cnVjdCBmZHRfcHJvcGVydHkgKnByb3A7CisJaW50IGxlbjsKKworCXByb3AgPSBmZHRfZ2V0
X3Byb3BlcnR5X3coZmR0LCBub2Rlb2Zmc2V0LCBuYW1lLCAmbGVuKTsKKwlpZiAoIXByb3ApCisJ
CXJldHVybiBsZW47CisKKwlmZHRfbm9wX3JlZ2lvbl8ocHJvcCwgbGVuICsgc2l6ZW9mKCpwcm9w
KSk7CisKKwlyZXR1cm4gMDsKK30KKworaW50IGZkdF9ub2RlX2VuZF9vZmZzZXRfKHZvaWQgKmZk
dCwgaW50IG9mZnNldCkKK3sKKwlpbnQgZGVwdGggPSAwOworCisJd2hpbGUgKChvZmZzZXQgPj0g
MCkgJiYgKGRlcHRoID49IDApKQorCQlvZmZzZXQgPSBmZHRfbmV4dF9ub2RlKGZkdCwgb2Zmc2V0
LCAmZGVwdGgpOworCisJcmV0dXJuIG9mZnNldDsKK30KKworaW50IGZkdF9ub3Bfbm9kZSh2b2lk
ICpmZHQsIGludCBub2Rlb2Zmc2V0KQoreworCWludCBlbmRvZmZzZXQ7CisKKwllbmRvZmZzZXQg
PSBmZHRfbm9kZV9lbmRfb2Zmc2V0XyhmZHQsIG5vZGVvZmZzZXQpOworCWlmIChlbmRvZmZzZXQg
PCAwKQorCQlyZXR1cm4gZW5kb2Zmc2V0OworCisJZmR0X25vcF9yZWdpb25fKGZkdF9vZmZzZXRf
cHRyX3coZmR0LCBub2Rlb2Zmc2V0LCAwKSwKKwkJCWVuZG9mZnNldCAtIG5vZGVvZmZzZXQpOwor
CXJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvbGliL2xpYmZkdC9saWJmZHQuaCBiL2xpYi9saWJm
ZHQvbGliZmR0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmFhODgyYwot
LS0gL2Rldi9udWxsCisrKyBiL2xpYi9saWJmZHQvbGliZmR0LmgKQEAgLTAsMCArMSwxODk5IEBA
CisjaWZuZGVmIExJQkZEVF9ICisjZGVmaW5lIExJQkZEVF9ICisvKgorICogbGliZmR0IC0gRmxh
dCBEZXZpY2UgVHJlZSBtYW5pcHVsYXRpb24KKyAqIENvcHlyaWdodCAoQykgMjAwNiBEYXZpZCBH
aWJzb24sIElCTSBDb3Jwb3JhdGlvbi4KKyAqCisgKiBsaWJmZHQgaXMgZHVhbCBsaWNlbnNlZDog
eW91IGNhbiB1c2UgaXQgZWl0aGVyIHVuZGVyIHRoZSB0ZXJtcyBvZgorICogdGhlIEdQTCwgb3Ig
dGhlIEJTRCBsaWNlbnNlLCBhdCB5b3VyIG9wdGlvbi4KKyAqCisgKiAgYSkgVGhpcyBsaWJyYXJ5
IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogICAg
IG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl
bnNlIGFzCisgKiAgICAgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247
IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlCisgKiAgICAgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0
aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiAgICAgVGhpcyBsaWJyYXJ5IGlzIGRpc3Ry
aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiAgICAgYnV0IFdJ
VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK
KyAqICAgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UuICBTZWUgdGhlCisgKiAgICAgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUg
ZGV0YWlscy4KKyAqCisgKiAgICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0
aGUgR05VIEdlbmVyYWwgUHVibGljCisgKiAgICAgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGli
cmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZQorICogICAgIFNvZnR3YXJlIEZvdW5kYXRp
b24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLAorICogICAgIE1B
IDAyMTEwLTEzMDEgVVNBCisgKgorICogQWx0ZXJuYXRpdmVseSwKKyAqCisgKiAgYikgUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvcgorICog
ICAgIHdpdGhvdXQgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZworICogICAgIGNvbmRpdGlvbnMgYXJlIG1ldDoKKyAqCisgKiAgICAgMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZQorICogICAg
ICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nCisgKiAgICAgICAgZGlzY2xhaW1lci4KKyAqICAgICAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiAgICAgICAgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAq
ICAgICAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMKKyAqICAgICAgICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
ICAgIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RAorICogICAgIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsCisgKiAgICAgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YKKyAqICAgICBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogICAgIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IKKyAqICAgICBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqICAgICBTUEVD
SUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQK
KyAqICAgICBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyAqICAgICBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKQorICogICAgIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogICAgIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorICogICAgIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsCisg
KiAgICAgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaW5jbHVkZSA8bGliZmR0X2Vudi5oPgorI2luY2x1ZGUgPGZkdC5oPgorCisjZGVm
aW5lIEZEVF9GSVJTVF9TVVBQT1JURURfVkVSU0lPTgkweDEwCisjZGVmaW5lIEZEVF9MQVNUX1NV
UFBPUlRFRF9WRVJTSU9OCTB4MTEKKworLyogRXJyb3IgY29kZXM6IGluZm9ybWF0aXZlIGVycm9y
IGNvZGVzICovCisjZGVmaW5lIEZEVF9FUlJfTk9URk9VTkQJMQorCS8qIEZEVF9FUlJfTk9URk9V
TkQ6IFRoZSByZXF1ZXN0ZWQgbm9kZSBvciBwcm9wZXJ0eSBkb2VzIG5vdCBleGlzdCAqLworI2Rl
ZmluZSBGRFRfRVJSX0VYSVNUUwkJMgorCS8qIEZEVF9FUlJfRVhJU1RTOiBBdHRlbXB0ZWQgdG8g
Y3JlYXRlIGEgbm9kZSBvciBwcm9wZXJ0eSB3aGljaAorCSAqIGFscmVhZHkgZXhpc3RzICovCisj
ZGVmaW5lIEZEVF9FUlJfTk9TUEFDRQkJMworCS8qIEZEVF9FUlJfTk9TUEFDRTogT3BlcmF0aW9u
IG5lZWRlZCB0byBleHBhbmQgdGhlIGRldmljZQorCSAqIHRyZWUsIGJ1dCBpdHMgYnVmZmVyIGRp
ZCBub3QgaGF2ZSBzdWZmaWNpZW50IHNwYWNlIHRvCisJICogY29udGFpbiB0aGUgZXhwYW5kZWQg
dHJlZS4gVXNlIGZkdF9vcGVuX2ludG8oKSB0byBtb3ZlIHRoZQorCSAqIGRldmljZSB0cmVlIHRv
IGEgYnVmZmVyIHdpdGggbW9yZSBzcGFjZS4gKi8KKworLyogRXJyb3IgY29kZXM6IGNvZGVzIGZv
ciBiYWQgcGFyYW1ldGVycyAqLworI2RlZmluZSBGRFRfRVJSX0JBRE9GRlNFVAk0CisJLyogRkRU
X0VSUl9CQURPRkZTRVQ6IEZ1bmN0aW9uIHdhcyBwYXNzZWQgYSBzdHJ1Y3R1cmUgYmxvY2sKKwkg
KiBvZmZzZXQgd2hpY2ggaXMgb3V0LW9mLWJvdW5kcywgb3Igd2hpY2ggcG9pbnRzIHRvIGFuCisJ
ICogdW5zdWl0YWJsZSBwYXJ0IG9mIHRoZSBzdHJ1Y3R1cmUgZm9yIHRoZSBvcGVyYXRpb24uICov
CisjZGVmaW5lIEZEVF9FUlJfQkFEUEFUSAkJNQorCS8qIEZEVF9FUlJfQkFEUEFUSDogRnVuY3Rp
b24gd2FzIHBhc3NlZCBhIGJhZGx5IGZvcm1hdHRlZCBwYXRoCisJICogKGUuZy4gbWlzc2luZyBh
IGxlYWRpbmcgLyBmb3IgYSBmdW5jdGlvbiB3aGljaCByZXF1aXJlcyBhbgorCSAqIGFic29sdXRl
IHBhdGgpICovCisjZGVmaW5lIEZEVF9FUlJfQkFEUEhBTkRMRQk2CisJLyogRkRUX0VSUl9CQURQ
SEFORExFOiBGdW5jdGlvbiB3YXMgcGFzc2VkIGFuIGludmFsaWQgcGhhbmRsZS4KKwkgKiBUaGlz
IGNhbiBiZSBjYXVzZWQgZWl0aGVyIGJ5IGFuIGludmFsaWQgcGhhbmRsZSBwcm9wZXJ0eQorCSAq
IGxlbmd0aCwgb3IgdGhlIHBoYW5kbGUgdmFsdWUgd2FzIGVpdGhlciAwIG9yIC0xLCB3aGljaCBh
cmUKKwkgKiBub3QgcGVybWl0dGVkLiAqLworI2RlZmluZSBGRFRfRVJSX0JBRFNUQVRFCTcKKwkv
KiBGRFRfRVJSX0JBRFNUQVRFOiBGdW5jdGlvbiB3YXMgcGFzc2VkIGFuIGluY29tcGxldGUgZGV2
aWNlCisJICogdHJlZSBjcmVhdGVkIGJ5IHRoZSBzZXF1ZW50aWFsLXdyaXRlIGZ1bmN0aW9ucywg
d2hpY2ggaXMKKwkgKiBub3Qgc3VmZmljaWVudGx5IGNvbXBsZXRlIGZvciB0aGUgcmVxdWVzdGVk
IG9wZXJhdGlvbi4gKi8KKworLyogRXJyb3IgY29kZXM6IGNvZGVzIGZvciBiYWQgZGV2aWNlIHRy
ZWUgYmxvYnMgKi8KKyNkZWZpbmUgRkRUX0VSUl9UUlVOQ0FURUQJOAorCS8qIEZEVF9FUlJfVFJV
TkNBVEVEOiBTdHJ1Y3R1cmUgYmxvY2sgb2YgdGhlIGdpdmVuIGRldmljZSB0cmVlCisJICogZW5k
cyB3aXRob3V0IGFuIEZEVF9FTkQgdGFnLiAqLworI2RlZmluZSBGRFRfRVJSX0JBRE1BR0lDCTkK
KwkvKiBGRFRfRVJSX0JBRE1BR0lDOiBHaXZlbiAiZGV2aWNlIHRyZWUiIGFwcGVhcnMgbm90IHRv
IGJlIGEKKwkgKiBkZXZpY2UgdHJlZSBhdCBhbGwgLSBpdCBpcyBtaXNzaW5nIHRoZSBmbGF0dGVu
ZWQgZGV2aWNlCisJICogdHJlZSBtYWdpYyBudW1iZXIuICovCisjZGVmaW5lIEZEVF9FUlJfQkFE
VkVSU0lPTgkxMAorCS8qIEZEVF9FUlJfQkFEVkVSU0lPTjogR2l2ZW4gZGV2aWNlIHRyZWUgaGFz
IGEgdmVyc2lvbiB3aGljaAorCSAqIGNhbid0IGJlIGhhbmRsZWQgYnkgdGhlIHJlcXVlc3RlZCBv
cGVyYXRpb24uICBGb3IKKwkgKiByZWFkLXdyaXRlIGZ1bmN0aW9ucywgdGhpcyBtYXkgbWVhbiB0
aGF0IGZkdF9vcGVuX2ludG8oKSBpcworCSAqIHJlcXVpcmVkIHRvIGNvbnZlcnQgdGhlIHRyZWUg
dG8gdGhlIGV4cGVjdGVkIHZlcnNpb24uICovCisjZGVmaW5lIEZEVF9FUlJfQkFEU1RSVUNUVVJF
CTExCisJLyogRkRUX0VSUl9CQURTVFJVQ1RVUkU6IEdpdmVuIGRldmljZSB0cmVlIGhhcyBhIGNv
cnJ1cHQKKwkgKiBzdHJ1Y3R1cmUgYmxvY2sgb3Igb3RoZXIgc2VyaW91cyBlcnJvciAoZS5nLiBt
aXNuZXN0ZWQKKwkgKiBub2Rlcywgb3Igc3Vibm9kZXMgcHJlY2VkaW5nIHByb3BlcnRpZXMpLiAq
LworI2RlZmluZSBGRFRfRVJSX0JBRExBWU9VVAkxMgorCS8qIEZEVF9FUlJfQkFETEFZT1VUOiBG
b3IgcmVhZC13cml0ZSBmdW5jdGlvbnMsIHRoZSBnaXZlbgorCSAqIGRldmljZSB0cmVlIGhhcyBp
dCdzIHN1Yi1ibG9ja3MgaW4gYW4gb3JkZXIgdGhhdCB0aGUKKwkgKiBmdW5jdGlvbiBjYW4ndCBo
YW5kbGUgKG1lbW9yeSByZXNlcnZlIG1hcCwgdGhlbiBzdHJ1Y3R1cmUsCisJICogdGhlbiBzdHJp
bmdzKS4gIFVzZSBmZHRfb3Blbl9pbnRvKCkgdG8gcmVvcmdhbml6ZSB0aGUgdHJlZQorCSAqIGlu
dG8gYSBmb3JtIHN1aXRhYmxlIGZvciB0aGUgcmVhZC13cml0ZSBvcGVyYXRpb25zLiAqLworCisv
KiAiQ2FuJ3QgaGFwcGVuIiBlcnJvciBpbmRpY2F0aW5nIGEgYnVnIGluIGxpYmZkdCAqLworI2Rl
ZmluZSBGRFRfRVJSX0lOVEVSTkFMCTEzCisJLyogRkRUX0VSUl9JTlRFUk5BTDogbGliZmR0IGhh
cyBmYWlsZWQgYW4gaW50ZXJuYWwgYXNzZXJ0aW9uLgorCSAqIFNob3VsZCBuZXZlciBiZSByZXR1
cm5lZCwgaWYgaXQgaXMsIGl0IGluZGljYXRlcyBhIGJ1ZyBpbgorCSAqIGxpYmZkdCBpdHNlbGYu
ICovCisKKy8qIEVycm9ycyBpbiBkZXZpY2UgdHJlZSBjb250ZW50ICovCisjZGVmaW5lIEZEVF9F
UlJfQkFETkNFTExTCTE0CisJLyogRkRUX0VSUl9CQUROQ0VMTFM6IERldmljZSB0cmVlIGhhcyBh
ICNhZGRyZXNzLWNlbGxzLCAjc2l6ZS1jZWxscworCSAqIG9yIHNpbWlsYXIgcHJvcGVydHkgd2l0
aCBhIGJhZCBmb3JtYXQgb3IgdmFsdWUgKi8KKworI2RlZmluZSBGRFRfRVJSX0JBRFZBTFVFCTE1
CisJLyogRkRUX0VSUl9CQURWQUxVRTogRGV2aWNlIHRyZWUgaGFzIGEgcHJvcGVydHkgd2l0aCBh
biB1bmV4cGVjdGVkCisJICogdmFsdWUuIEZvciBleGFtcGxlOiBhIHByb3BlcnR5IGV4cGVjdGVk
IHRvIGNvbnRhaW4gYSBzdHJpbmcgbGlzdAorCSAqIGlzIG5vdCBOVUwtdGVybWluYXRlZCB3aXRo
aW4gdGhlIGxlbmd0aCBvZiBpdHMgdmFsdWUuICovCisKKyNkZWZpbmUgRkRUX0VSUl9CQURPVkVS
TEFZCTE2CisJLyogRkRUX0VSUl9CQURPVkVSTEFZOiBUaGUgZGV2aWNlIHRyZWUgb3ZlcmxheSwg
d2hpbGUKKwkgKiBjb3JyZWN0bHkgc3RydWN0dXJlZCwgY2Fubm90IGJlIGFwcGxpZWQgZHVlIHRv
IHNvbWUKKwkgKiB1bmV4cGVjdGVkIG9yIG1pc3NpbmcgdmFsdWUsIHByb3BlcnR5IG9yIG5vZGUu
ICovCisKKyNkZWZpbmUgRkRUX0VSUl9OT1BIQU5ETEVTCTE3CisJLyogRkRUX0VSUl9OT1BIQU5E
TEVTOiBUaGUgZGV2aWNlIHRyZWUgZG9lc24ndCBoYXZlIGFueQorCSAqIHBoYW5kbGUgYXZhaWxh
YmxlIGFueW1vcmUgd2l0aG91dCBjYXVzaW5nIGFuIG92ZXJmbG93ICovCisKKyNkZWZpbmUgRkRU
X0VSUl9NQVgJCTE3CisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogTG93LWxldmVsIGZ1bmN0aW9ucyAo
eW91IHByb2JhYmx5IGRvbid0IG5lZWQgdGhlc2UpICAgICAgICAgICAgICAgICovCisvKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKi8KKworI2lmbmRlZiBTV0lHIC8qIFRoaXMgZnVuY3Rpb24gaXMgbm90IHVzZWZ1bCBp
biBQeXRob24gKi8KK2NvbnN0IHZvaWQgKmZkdF9vZmZzZXRfcHRyKGNvbnN0IHZvaWQgKmZkdCwg
aW50IG9mZnNldCwgdW5zaWduZWQgaW50IGNoZWNrbGVuKTsKKyNlbmRpZgorc3RhdGljIGlubGlu
ZSB2b2lkICpmZHRfb2Zmc2V0X3B0cl93KHZvaWQgKmZkdCwgaW50IG9mZnNldCwgaW50IGNoZWNr
bGVuKQoreworCXJldHVybiAodm9pZCAqKSh1aW50cHRyX3QpZmR0X29mZnNldF9wdHIoZmR0LCBv
ZmZzZXQsIGNoZWNrbGVuKTsKK30KKwordWludDMyX3QgZmR0X25leHRfdGFnKGNvbnN0IHZvaWQg
KmZkdCwgaW50IG9mZnNldCwgaW50ICpuZXh0b2Zmc2V0KTsKKworLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisv
KiBUcmF2ZXJzYWwgZnVuY3Rpb25zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitpbnQgZmR0X25leHRfbm9kZShjb25z
dCB2b2lkICpmZHQsIGludCBvZmZzZXQsIGludCAqZGVwdGgpOworCisvKioKKyAqIGZkdF9maXJz
dF9zdWJub2RlKCkgLSBnZXQgb2Zmc2V0IG9mIGZpcnN0IGRpcmVjdCBzdWJub2RlCisgKgorICog
QGZkdDoJRkRUIGJsb2IKKyAqIEBvZmZzZXQ6CU9mZnNldCBvZiBub2RlIHRvIGNoZWNrCisgKiBA
cmV0dXJuIG9mZnNldCBvZiBmaXJzdCBzdWJub2RlLCBvciAtRkRUX0VSUl9OT1RGT1VORCBpZiB0
aGVyZSBpcyBub25lCisgKi8KK2ludCBmZHRfZmlyc3Rfc3Vibm9kZShjb25zdCB2b2lkICpmZHQs
IGludCBvZmZzZXQpOworCisvKioKKyAqIGZkdF9uZXh0X3N1Ym5vZGUoKSAtIGdldCBvZmZzZXQg
b2YgbmV4dCBkaXJlY3Qgc3Vibm9kZQorICoKKyAqIEFmdGVyIGZpcnN0IGNhbGxpbmcgZmR0X2Zp
cnN0X3N1Ym5vZGUoKSwgY2FsbCB0aGlzIGZ1bmN0aW9uIHJlcGVhdGVkbHkgdG8KKyAqIGdldCBk
aXJlY3Qgc3Vibm9kZXMgb2YgYSBwYXJlbnQgbm9kZS4KKyAqCisgKiBAZmR0OglGRFQgYmxvYgor
ICogQG9mZnNldDoJT2Zmc2V0IG9mIHByZXZpb3VzIHN1Ym5vZGUKKyAqIEByZXR1cm4gb2Zmc2V0
IG9mIG5leHQgc3Vibm9kZSwgb3IgLUZEVF9FUlJfTk9URk9VTkQgaWYgdGhlcmUgYXJlIG5vIG1v
cmUKKyAqIHN1Ym5vZGVzCisgKi8KK2ludCBmZHRfbmV4dF9zdWJub2RlKGNvbnN0IHZvaWQgKmZk
dCwgaW50IG9mZnNldCk7CisKKy8qKgorICogZmR0X2Zvcl9lYWNoX3N1Ym5vZGUgLSBpdGVyYXRl
IG92ZXIgYWxsIHN1Ym5vZGVzIG9mIGEgcGFyZW50CisgKgorICogQG5vZGU6CWNoaWxkIG5vZGUg
KGludCwgbHZhbHVlKQorICogQGZkdDoJRkRUIGJsb2IgKGNvbnN0IHZvaWQgKikKKyAqIEBwYXJl
bnQ6CXBhcmVudCBub2RlIChpbnQpCisgKgorICogVGhpcyBpcyBhY3R1YWxseSBhIHdyYXBwZXIg
YXJvdW5kIGEgZm9yIGxvb3AgYW5kIHdvdWxkIGJlIHVzZWQgbGlrZSBzbzoKKyAqCisgKglmZHRf
Zm9yX2VhY2hfc3Vibm9kZShub2RlLCBmZHQsIHBhcmVudCkgeworICoJCVVzZSBub2RlCisgKgkJ
Li4uCisgKgl9CisgKgorICoJaWYgKChub2RlIDwgMCkgJiYgKG5vZGUgIT0gLUZEVF9FUlJfTk9U
X0ZPVU5EKSkgeworICoJCUVycm9yIGhhbmRsaW5nCisgKgl9CisgKgorICogTm90ZSB0aGF0IHRo
aXMgaXMgaW1wbGVtZW50ZWQgYXMgYSBtYWNybyBhbmQgQG5vZGUgaXMgdXNlZCBhcworICogaXRl
cmF0b3IgaW4gdGhlIGxvb3AuIFRoZSBwYXJlbnQgdmFyaWFibGUgYmUgY29uc3RhbnQgb3IgZXZl
biBhCisgKiBsaXRlcmFsLgorICoKKyAqLworI2RlZmluZSBmZHRfZm9yX2VhY2hfc3Vibm9kZShu
b2RlLCBmZHQsIHBhcmVudCkJCVwKKwlmb3IgKG5vZGUgPSBmZHRfZmlyc3Rfc3Vibm9kZShmZHQs
IHBhcmVudCk7CVwKKwkgICAgIG5vZGUgPj0gMDsJCQkJCVwKKwkgICAgIG5vZGUgPSBmZHRfbmV4
dF9zdWJub2RlKGZkdCwgbm9kZSkpCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogR2VuZXJhbCBmdW5j
dGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKi8KKyNkZWZpbmUgZmR0X2dldF9oZWFkZXIoZmR0LCBmaWVsZCkgXAor
CShmZHQzMl90b19jcHUoKChjb25zdCBzdHJ1Y3QgZmR0X2hlYWRlciAqKShmZHQpKS0+ZmllbGQp
KQorI2RlZmluZSBmZHRfbWFnaWMoZmR0KQkJCShmZHRfZ2V0X2hlYWRlcihmZHQsIG1hZ2ljKSkK
KyNkZWZpbmUgZmR0X3RvdGFsc2l6ZShmZHQpCQkoZmR0X2dldF9oZWFkZXIoZmR0LCB0b3RhbHNp
emUpKQorI2RlZmluZSBmZHRfb2ZmX2R0X3N0cnVjdChmZHQpCQkoZmR0X2dldF9oZWFkZXIoZmR0
LCBvZmZfZHRfc3RydWN0KSkKKyNkZWZpbmUgZmR0X29mZl9kdF9zdHJpbmdzKGZkdCkJCShmZHRf
Z2V0X2hlYWRlcihmZHQsIG9mZl9kdF9zdHJpbmdzKSkKKyNkZWZpbmUgZmR0X29mZl9tZW1fcnN2
bWFwKGZkdCkJCShmZHRfZ2V0X2hlYWRlcihmZHQsIG9mZl9tZW1fcnN2bWFwKSkKKyNkZWZpbmUg
ZmR0X3ZlcnNpb24oZmR0KQkJKGZkdF9nZXRfaGVhZGVyKGZkdCwgdmVyc2lvbikpCisjZGVmaW5l
IGZkdF9sYXN0X2NvbXBfdmVyc2lvbihmZHQpCShmZHRfZ2V0X2hlYWRlcihmZHQsIGxhc3RfY29t
cF92ZXJzaW9uKSkKKyNkZWZpbmUgZmR0X2Jvb3RfY3B1aWRfcGh5cyhmZHQpCShmZHRfZ2V0X2hl
YWRlcihmZHQsIGJvb3RfY3B1aWRfcGh5cykpCisjZGVmaW5lIGZkdF9zaXplX2R0X3N0cmluZ3Mo
ZmR0KQkoZmR0X2dldF9oZWFkZXIoZmR0LCBzaXplX2R0X3N0cmluZ3MpKQorI2RlZmluZSBmZHRf
c2l6ZV9kdF9zdHJ1Y3QoZmR0KQkJKGZkdF9nZXRfaGVhZGVyKGZkdCwgc2l6ZV9kdF9zdHJ1Y3Qp
KQorCisjZGVmaW5lIGZkdF9zZXRfaGRyXyhuYW1lKSBcCisJc3RhdGljIGlubGluZSB2b2lkIGZk
dF9zZXRfIyNuYW1lKHZvaWQgKmZkdCwgdWludDMyX3QgdmFsKSBcCisJeyBcCisJCXN0cnVjdCBm
ZHRfaGVhZGVyICpmZHRoID0gKHN0cnVjdCBmZHRfaGVhZGVyICopZmR0OyBcCisJCWZkdGgtPm5h
bWUgPSBjcHVfdG9fZmR0MzIodmFsKTsgXAorCX0KK2ZkdF9zZXRfaGRyXyhtYWdpYyk7CitmZHRf
c2V0X2hkcl8odG90YWxzaXplKTsKK2ZkdF9zZXRfaGRyXyhvZmZfZHRfc3RydWN0KTsKK2ZkdF9z
ZXRfaGRyXyhvZmZfZHRfc3RyaW5ncyk7CitmZHRfc2V0X2hkcl8ob2ZmX21lbV9yc3ZtYXApOwor
ZmR0X3NldF9oZHJfKHZlcnNpb24pOworZmR0X3NldF9oZHJfKGxhc3RfY29tcF92ZXJzaW9uKTsK
K2ZkdF9zZXRfaGRyXyhib290X2NwdWlkX3BoeXMpOworZmR0X3NldF9oZHJfKHNpemVfZHRfc3Ry
aW5ncyk7CitmZHRfc2V0X2hkcl8oc2l6ZV9kdF9zdHJ1Y3QpOworI3VuZGVmIGZkdF9zZXRfaGRy
XworCisvKioKKyAqIGZkdF9jaGVja19oZWFkZXIgLSBzYW5pdHkgY2hlY2sgYSBkZXZpY2UgdHJl
ZSBvciBwb3NzaWJsZSBkZXZpY2UgdHJlZQorICogQGZkdDogcG9pbnRlciB0byBkYXRhIHdoaWNo
IG1pZ2h0IGJlIGEgZmxhdHRlbmVkIGRldmljZSB0cmVlCisgKgorICogZmR0X2NoZWNrX2hlYWRl
cigpIGNoZWNrcyB0aGF0IHRoZSBnaXZlbiBidWZmZXIgY29udGFpbnMgd2hhdAorICogYXBwZWFy
cyB0byBiZSBhIGZsYXR0ZW5lZCBkZXZpY2UgdHJlZSB3aXRoIHNhbmUgaW5mb3JtYXRpb24gaW4g
aXRzCisgKiBoZWFkZXIuCisgKgorICogcmV0dXJuczoKKyAqICAgICAwLCBpZiB0aGUgYnVmZmVy
IGFwcGVhcnMgdG8gY29udGFpbiBhIHZhbGlkIGRldmljZSB0cmVlCisgKiAgICAgLUZEVF9FUlJf
QkFETUFHSUMsCisgKiAgICAgLUZEVF9FUlJfQkFEVkVSU0lPTiwKKyAqICAgICAtRkRUX0VSUl9C
QURTVEFURSwgc3RhbmRhcmQgbWVhbmluZ3MsIGFzIGFib3ZlCisgKi8KK2ludCBmZHRfY2hlY2tf
aGVhZGVyKGNvbnN0IHZvaWQgKmZkdCk7CisKKy8qKgorICogZmR0X21vdmUgLSBtb3ZlIGEgZGV2
aWNlIHRyZWUgYXJvdW5kIGluIG1lbW9yeQorICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNl
IHRyZWUgdG8gbW92ZQorICogQGJ1ZjogcG9pbnRlciB0byBtZW1vcnkgd2hlcmUgdGhlIGRldmlj
ZSBpcyB0byBiZSBtb3ZlZAorICogQGJ1ZnNpemU6IHNpemUgb2YgdGhlIG1lbW9yeSBzcGFjZSBh
dCBidWYKKyAqCisgKiBmZHRfbW92ZSgpIHJlbG9jYXRlcywgaWYgcG9zc2libGUsIHRoZSBkZXZp
Y2UgdHJlZSBibG9iIGxvY2F0ZWQgYXQKKyAqIGZkdCB0byB0aGUgYnVmZmVyIGF0IGJ1ZiBvZiBz
aXplIGJ1ZnNpemUuICBUaGUgYnVmZmVyIG1heSBvdmVybGFwCisgKiB3aXRoIHRoZSBleGlzdGlu
ZyBkZXZpY2UgdHJlZSBibG9iIGF0IGZkdC4gIFRoZXJlZm9yZSwKKyAqICAgICBmZHRfbW92ZShm
ZHQsIGZkdCwgZmR0X3RvdGFsc2l6ZShmZHQpKQorICogc2hvdWxkIGFsd2F5cyBzdWNjZWVkLgor
ICoKKyAqIHJldHVybnM6CisgKiAgICAgMCwgb24gc3VjY2VzcworICogICAgIC1GRFRfRVJSX05P
U1BBQ0UsIGJ1ZnNpemUgaXMgaW5zdWZmaWNpZW50IHRvIGNvbnRhaW4gdGhlIGRldmljZSB0cmVl
CisgKiAgICAgLUZEVF9FUlJfQkFETUFHSUMsCisgKiAgICAgLUZEVF9FUlJfQkFEVkVSU0lPTiwK
KyAqICAgICAtRkRUX0VSUl9CQURTVEFURSwgc3RhbmRhcmQgbWVhbmluZ3MKKyAqLworaW50IGZk
dF9tb3ZlKGNvbnN0IHZvaWQgKmZkdCwgdm9pZCAqYnVmLCBpbnQgYnVmc2l6ZSk7CisKKy8qKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLworLyogUmVhZC1vbmx5IGZ1bmN0aW9ucyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyoqCisgKiBm
ZHRfc3RyaW5nIC0gcmV0cmlldmUgYSBzdHJpbmcgZnJvbSB0aGUgc3RyaW5ncyBibG9jayBvZiBh
IGRldmljZSB0cmVlCisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisg
KiBAc3Ryb2Zmc2V0OiBvZmZzZXQgb2YgdGhlIHN0cmluZyB3aXRoaW4gdGhlIHN0cmluZ3MgYmxv
Y2sgKG5hdGl2ZSBlbmRpYW4pCisgKgorICogZmR0X3N0cmluZygpIHJldHJpZXZlcyBhIHBvaW50
ZXIgdG8gYSBzaW5nbGUgc3RyaW5nIGZyb20gdGhlCisgKiBzdHJpbmdzIGJsb2NrIG9mIHRoZSBk
ZXZpY2UgdHJlZSBibG9iIGF0IGZkdC4KKyAqCisgKiByZXR1cm5zOgorICogICAgIGEgcG9pbnRl
ciB0byB0aGUgc3RyaW5nLCBvbiBzdWNjZXNzCisgKiAgICAgTlVMTCwgaWYgc3Ryb2Zmc2V0IGlz
IG91dCBvZiBib3VuZHMKKyAqLworY29uc3QgY2hhciAqZmR0X3N0cmluZyhjb25zdCB2b2lkICpm
ZHQsIGludCBzdHJvZmZzZXQpOworCisvKioKKyAqIGZkdF9nZXRfbWF4X3BoYW5kbGUgLSByZXRy
aWV2ZXMgdGhlIGhpZ2hlc3QgcGhhbmRsZSBpbiBhIHRyZWUKKyAqIEBmZHQ6IHBvaW50ZXIgdG8g
dGhlIGRldmljZSB0cmVlIGJsb2IKKyAqCisgKiBmZHRfZ2V0X21heF9waGFuZGxlIHJldHJpZXZl
cyB0aGUgaGlnaGVzdCBwaGFuZGxlIGluIHRoZSBnaXZlbgorICogZGV2aWNlIHRyZWUuIFRoaXMg
d2lsbCBpZ25vcmUgYmFkbHkgZm9ybWF0dGVkIHBoYW5kbGVzLCBvciBwaGFuZGxlcworICogd2l0
aCBhIHZhbHVlIG9mIDAgb3IgLTEuCisgKgorICogcmV0dXJuczoKKyAqICAgICAgdGhlIGhpZ2hl
c3QgcGhhbmRsZSBvbiBzdWNjZXNzCisgKiAgICAgIDAsIGlmIG5vIHBoYW5kbGUgd2FzIGZvdW5k
IGluIHRoZSBkZXZpY2UgdHJlZQorICogICAgICAtMSwgaWYgYW4gZXJyb3Igb2NjdXJyZWQKKyAq
LwordWludDMyX3QgZmR0X2dldF9tYXhfcGhhbmRsZShjb25zdCB2b2lkICpmZHQpOworCisvKioK
KyAqIGZkdF9udW1fbWVtX3JzdiAtIHJldHJpZXZlIHRoZSBudW1iZXIgb2YgbWVtb3J5IHJlc2Vy
dmUgbWFwIGVudHJpZXMKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IK
KyAqCisgKiBSZXR1cm5zIHRoZSBudW1iZXIgb2YgZW50cmllcyBpbiB0aGUgZGV2aWNlIHRyZWUg
YmxvYidzIG1lbW9yeQorICogcmVzZXJ2YXRpb24gbWFwLiAgVGhpcyBkb2VzIG5vdCBpbmNsdWRl
IHRoZSB0ZXJtaW5hdGluZyAwLDAgZW50cnkKKyAqIG9yIGFueSBvdGhlciAoMCwwKSBlbnRyaWVz
IHJlc2VydmVkIGZvciBleHBhbnNpb24uCisgKgorICogcmV0dXJuczoKKyAqICAgICB0aGUgbnVt
YmVyIG9mIGVudHJpZXMKKyAqLworaW50IGZkdF9udW1fbWVtX3Jzdihjb25zdCB2b2lkICpmZHQp
OworCisvKioKKyAqIGZkdF9nZXRfbWVtX3JzdiAtIHJldHJpZXZlIG9uZSBtZW1vcnkgcmVzZXJ2
ZSBtYXAgZW50cnkKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IKKyAq
IEBhZGRyZXNzLCBAc2l6ZTogcG9pbnRlcnMgdG8gNjQtYml0IHZhcmlhYmxlcworICoKKyAqIE9u
IHN1Y2Nlc3MsICphZGRyZXNzIGFuZCAqc2l6ZSB3aWxsIGNvbnRhaW4gdGhlIGFkZHJlc3MgYW5k
IHNpemUgb2YKKyAqIHRoZSBuLXRoIHJlc2VydmUgbWFwIGVudHJ5IGZyb20gdGhlIGRldmljZSB0
cmVlIGJsb2IsIGluCisgKiBuYXRpdmUtZW5kaWFuIGZvcm1hdC4KKyAqCisgKiByZXR1cm5zOgor
ICogICAgIDAsIG9uIHN1Y2Nlc3MKKyAqICAgICAtRkRUX0VSUl9CQURNQUdJQywKKyAqICAgICAt
RkRUX0VSUl9CQURWRVJTSU9OLAorICogICAgIC1GRFRfRVJSX0JBRFNUQVRFLCBzdGFuZGFyZCBt
ZWFuaW5ncworICovCitpbnQgZmR0X2dldF9tZW1fcnN2KGNvbnN0IHZvaWQgKmZkdCwgaW50IG4s
IHVpbnQ2NF90ICphZGRyZXNzLCB1aW50NjRfdCAqc2l6ZSk7CisKKy8qKgorICogZmR0X3N1Ym5v
ZGVfb2Zmc2V0X25hbWVsZW4gLSBmaW5kIGEgc3Vibm9kZSBiYXNlZCBvbiBzdWJzdHJpbmcKKyAq
IEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IKKyAqIEBwYXJlbnRvZmZzZXQ6
IHN0cnVjdHVyZSBibG9jayBvZmZzZXQgb2YgYSBub2RlCisgKiBAbmFtZTogbmFtZSBvZiB0aGUg
c3Vibm9kZSB0byBsb2NhdGUKKyAqIEBuYW1lbGVuOiBudW1iZXIgb2YgY2hhcmFjdGVycyBvZiBu
YW1lIHRvIGNvbnNpZGVyCisgKgorICogSWRlbnRpY2FsIHRvIGZkdF9zdWJub2RlX29mZnNldCgp
LCBidXQgb25seSBleGFtaW5lIHRoZSBmaXJzdAorICogbmFtZWxlbiBjaGFyYWN0ZXJzIG9mIG5h
bWUgZm9yIG1hdGNoaW5nIHRoZSBzdWJub2RlIG5hbWUuICBUaGlzIGlzCisgKiB1c2VmdWwgZm9y
IGZpbmRpbmcgc3Vibm9kZXMgYmFzZWQgb24gYSBwb3J0aW9uIG9mIGEgbGFyZ2VyIHN0cmluZywK
KyAqIHN1Y2ggYXMgYSBmdWxsIHBhdGguCisgKi8KKyNpZm5kZWYgU1dJRyAvKiBOb3QgYXZhaWxh
YmxlIGluIFB5dGhvbiAqLworaW50IGZkdF9zdWJub2RlX29mZnNldF9uYW1lbGVuKGNvbnN0IHZv
aWQgKmZkdCwgaW50IHBhcmVudG9mZnNldCwKKwkJCSAgICAgICBjb25zdCBjaGFyICpuYW1lLCBp
bnQgbmFtZWxlbik7CisjZW5kaWYKKy8qKgorICogZmR0X3N1Ym5vZGVfb2Zmc2V0IC0gZmluZCBh
IHN1Ym5vZGUgb2YgYSBnaXZlbiBub2RlCisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2Ug
dHJlZSBibG9iCisgKiBAcGFyZW50b2Zmc2V0OiBzdHJ1Y3R1cmUgYmxvY2sgb2Zmc2V0IG9mIGEg
bm9kZQorICogQG5hbWU6IG5hbWUgb2YgdGhlIHN1Ym5vZGUgdG8gbG9jYXRlCisgKgorICogZmR0
X3N1Ym5vZGVfb2Zmc2V0KCkgZmluZHMgYSBzdWJub2RlIG9mIHRoZSBub2RlIGF0IHN0cnVjdHVy
ZSBibG9jaworICogb2Zmc2V0IHBhcmVudG9mZnNldCB3aXRoIHRoZSBnaXZlbiBuYW1lLiAgbmFt
ZSBtYXkgaW5jbHVkZSBhIHVuaXQKKyAqIGFkZHJlc3MsIGluIHdoaWNoIGNhc2UgZmR0X3N1Ym5v
ZGVfb2Zmc2V0KCkgd2lsbCBmaW5kIHRoZSBzdWJub2RlCisgKiB3aXRoIHRoYXQgdW5pdCBhZGRy
ZXNzLCBvciB0aGUgdW5pdCBhZGRyZXNzIG1heSBiZSBvbWl0dGVkLCBpbgorICogd2hpY2ggY2Fz
ZSBmZHRfc3Vibm9kZV9vZmZzZXQoKSB3aWxsIGZpbmQgYW4gYXJiaXRyYXJ5IHN1Ym5vZGUKKyAq
IHdob3NlIG5hbWUgZXhjbHVkaW5nIHVuaXQgYWRkcmVzcyBtYXRjaGVzIHRoZSBnaXZlbiBuYW1l
LgorICoKKyAqIHJldHVybnM6CisgKglzdHJ1Y3R1cmUgYmxvY2sgb2Zmc2V0IG9mIHRoZSByZXF1
ZXN0ZWQgc3Vibm9kZSAoPj0wKSwgb24gc3VjY2VzcworICoJLUZEVF9FUlJfTk9URk9VTkQsIGlm
IHRoZSByZXF1ZXN0ZWQgc3Vibm9kZSBkb2VzIG5vdCBleGlzdAorICoJLUZEVF9FUlJfQkFET0ZG
U0VULCBpZiBwYXJlbnRvZmZzZXQgZGlkIG5vdCBwb2ludCB0byBhbiBGRFRfQkVHSU5fTk9ERQor
ICoJCXRhZworICoJLUZEVF9FUlJfQkFETUFHSUMsCisgKgktRkRUX0VSUl9CQURWRVJTSU9OLAor
ICoJLUZEVF9FUlJfQkFEU1RBVEUsCisgKgktRkRUX0VSUl9CQURTVFJVQ1RVUkUsCisgKgktRkRU
X0VSUl9UUlVOQ0FURUQsIHN0YW5kYXJkIG1lYW5pbmdzLgorICovCitpbnQgZmR0X3N1Ym5vZGVf
b2Zmc2V0KGNvbnN0IHZvaWQgKmZkdCwgaW50IHBhcmVudG9mZnNldCwgY29uc3QgY2hhciAqbmFt
ZSk7CisKKy8qKgorICogZmR0X3BhdGhfb2Zmc2V0X25hbWVsZW4gLSBmaW5kIGEgdHJlZSBub2Rl
IGJ5IGl0cyBmdWxsIHBhdGgKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJs
b2IKKyAqIEBwYXRoOiBmdWxsIHBhdGggb2YgdGhlIG5vZGUgdG8gbG9jYXRlCisgKiBAbmFtZWxl
bjogbnVtYmVyIG9mIGNoYXJhY3RlcnMgb2YgcGF0aCB0byBjb25zaWRlcgorICoKKyAqIElkZW50
aWNhbCB0byBmZHRfcGF0aF9vZmZzZXQoKSwgYnV0IG9ubHkgY29uc2lkZXIgdGhlIGZpcnN0IG5h
bWVsZW4KKyAqIGNoYXJhY3RlcnMgb2YgcGF0aCBhcyB0aGUgcGF0aCBuYW1lLgorICovCisjaWZu
ZGVmIFNXSUcgLyogTm90IGF2YWlsYWJsZSBpbiBQeXRob24gKi8KK2ludCBmZHRfcGF0aF9vZmZz
ZXRfbmFtZWxlbihjb25zdCB2b2lkICpmZHQsIGNvbnN0IGNoYXIgKnBhdGgsIGludCBuYW1lbGVu
KTsKKyNlbmRpZgorCisvKioKKyAqIGZkdF9wYXRoX29mZnNldCAtIGZpbmQgYSB0cmVlIG5vZGUg
YnkgaXRzIGZ1bGwgcGF0aAorICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNlIHRyZWUgYmxv
YgorICogQHBhdGg6IGZ1bGwgcGF0aCBvZiB0aGUgbm9kZSB0byBsb2NhdGUKKyAqCisgKiBmZHRf
cGF0aF9vZmZzZXQoKSBmaW5kcyBhIG5vZGUgb2YgYSBnaXZlbiBwYXRoIGluIHRoZSBkZXZpY2Ug
dHJlZS4KKyAqIEVhY2ggcGF0aCBjb21wb25lbnQgbWF5IG9taXQgdGhlIHVuaXQgYWRkcmVzcyBw
b3J0aW9uLCBidXQgdGhlCisgKiByZXN1bHRzIG9mIHRoaXMgYXJlIHVuZGVmaW5lZCBpZiBhbnkg
c3VjaCBwYXRoIGNvbXBvbmVudCBpcworICogYW1iaWd1b3VzICh0aGF0IGlzIGlmIHRoZXJlIGFy
ZSBtdWx0aXBsZSBub2RlcyBhdCB0aGUgcmVsZXZhbnQKKyAqIGxldmVsIG1hdGNoaW5nIHRoZSBn
aXZlbiBjb21wb25lbnQsIGRpZmZlcmVudGlhdGVkIG9ubHkgYnkgdW5pdAorICogYWRkcmVzcyku
CisgKgorICogcmV0dXJuczoKKyAqCXN0cnVjdHVyZSBibG9jayBvZmZzZXQgb2YgdGhlIG5vZGUg
d2l0aCB0aGUgcmVxdWVzdGVkIHBhdGggKD49MCksIG9uCisgKgkJc3VjY2VzcworICoJLUZEVF9F
UlJfQkFEUEFUSCwgZ2l2ZW4gcGF0aCBkb2VzIG5vdCBiZWdpbiB3aXRoICcvJyBvciBpcyBpbnZh
bGlkCisgKgktRkRUX0VSUl9OT1RGT1VORCwgaWYgdGhlIHJlcXVlc3RlZCBub2RlIGRvZXMgbm90
IGV4aXN0CisgKiAgICAgIC1GRFRfRVJSX0JBRE1BR0lDLAorICoJLUZEVF9FUlJfQkFEVkVSU0lP
TiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJLUZEVF9FUlJfQkFEU1RSVUNUVVJFLAorICoJ
LUZEVF9FUlJfVFJVTkNBVEVELCBzdGFuZGFyZCBtZWFuaW5ncy4KKyAqLworaW50IGZkdF9wYXRo
X29mZnNldChjb25zdCB2b2lkICpmZHQsIGNvbnN0IGNoYXIgKnBhdGgpOworCisvKioKKyAqIGZk
dF9nZXRfbmFtZSAtIHJldHJpZXZlIHRoZSBuYW1lIG9mIGEgZ2l2ZW4gbm9kZQorICogQGZkdDog
cG9pbnRlciB0byB0aGUgZGV2aWNlIHRyZWUgYmxvYgorICogQG5vZGVvZmZzZXQ6IHN0cnVjdHVy
ZSBibG9jayBvZmZzZXQgb2YgdGhlIHN0YXJ0aW5nIG5vZGUKKyAqIEBsZW5wOiBwb2ludGVyIHRv
IGFuIGludGVnZXIgdmFyaWFibGUgKHdpbGwgYmUgb3ZlcndyaXR0ZW4pIG9yIE5VTEwKKyAqCisg
KiBmZHRfZ2V0X25hbWUoKSByZXRyaWV2ZXMgdGhlIG5hbWUgKGluY2x1ZGluZyB1bml0IGFkZHJl
c3MpIG9mIHRoZQorICogZGV2aWNlIHRyZWUgbm9kZSBhdCBzdHJ1Y3R1cmUgYmxvY2sgb2Zmc2V0
IG5vZGVvZmZzZXQuICBJZiBsZW5wIGlzCisgKiBub24tTlVMTCwgdGhlIGxlbmd0aCBvZiB0aGlz
IG5hbWUgaXMgYWxzbyByZXR1cm5lZCwgaW4gdGhlIGludGVnZXIKKyAqIHBvaW50ZWQgdG8gYnkg
bGVucC4KKyAqCisgKiByZXR1cm5zOgorICoJcG9pbnRlciB0byB0aGUgbm9kZSdzIG5hbWUsIG9u
IHN1Y2Nlc3MKKyAqCQlJZiBsZW5wIGlzIG5vbi1OVUxMLCAqbGVucCBjb250YWlucyB0aGUgbGVu
Z3RoIG9mIHRoYXQgbmFtZQorICoJCQkoPj0wKQorICoJTlVMTCwgb24gZXJyb3IKKyAqCQlpZiBs
ZW5wIGlzIG5vbi1OVUxMICpsZW5wIGNvbnRhaW5zIGFuIGVycm9yIGNvZGUgKDwwKToKKyAqCQkt
RkRUX0VSUl9CQURPRkZTRVQsIG5vZGVvZmZzZXQgZGlkIG5vdCBwb2ludCB0byBGRFRfQkVHSU5f
Tk9ERQorICoJCQl0YWcKKyAqCQktRkRUX0VSUl9CQURNQUdJQywKKyAqCQktRkRUX0VSUl9CQURW
RVJTSU9OLAorICoJCS1GRFRfRVJSX0JBRFNUQVRFLCBzdGFuZGFyZCBtZWFuaW5ncworICovCitj
b25zdCBjaGFyICpmZHRfZ2V0X25hbWUoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwg
aW50ICpsZW5wKTsKKworLyoqCisgKiBmZHRfZmlyc3RfcHJvcGVydHlfb2Zmc2V0IC0gZmluZCB0
aGUgb2Zmc2V0IG9mIGEgbm9kZSdzIGZpcnN0IHByb3BlcnR5CisgKiBAZmR0OiBwb2ludGVyIHRv
IHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogc3RydWN0dXJlIGJsb2NrIG9m
ZnNldCBvZiBhIG5vZGUKKyAqCisgKiBmZHRfZmlyc3RfcHJvcGVydHlfb2Zmc2V0KCkgZmluZHMg
dGhlIGZpcnN0IHByb3BlcnR5IG9mIHRoZSBub2RlIGF0CisgKiB0aGUgZ2l2ZW4gc3RydWN0dXJl
IGJsb2NrIG9mZnNldC4KKyAqCisgKiByZXR1cm5zOgorICoJc3RydWN0dXJlIGJsb2NrIG9mZnNl
dCBvZiB0aGUgcHJvcGVydHkgKD49MCksIG9uIHN1Y2Nlc3MKKyAqCS1GRFRfRVJSX05PVEZPVU5E
LCBpZiB0aGUgcmVxdWVzdGVkIG5vZGUgaGFzIG5vIHByb3BlcnRpZXMKKyAqCS1GRFRfRVJSX0JB
RE9GRlNFVCwgaWYgbm9kZW9mZnNldCBkaWQgbm90IHBvaW50IHRvIGFuIEZEVF9CRUdJTl9OT0RF
IHRhZworICogICAgICAtRkRUX0VSUl9CQURNQUdJQywKKyAqCS1GRFRfRVJSX0JBRFZFUlNJT04s
CisgKgktRkRUX0VSUl9CQURTVEFURSwKKyAqCS1GRFRfRVJSX0JBRFNUUlVDVFVSRSwKKyAqCS1G
RFRfRVJSX1RSVU5DQVRFRCwgc3RhbmRhcmQgbWVhbmluZ3MuCisgKi8KK2ludCBmZHRfZmlyc3Rf
cHJvcGVydHlfb2Zmc2V0KGNvbnN0IHZvaWQgKmZkdCwgaW50IG5vZGVvZmZzZXQpOworCisvKioK
KyAqIGZkdF9uZXh0X3Byb3BlcnR5X29mZnNldCAtIHN0ZXAgdGhyb3VnaCBhIG5vZGUncyBwcm9w
ZXJ0aWVzCisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAb2Zm
c2V0OiBzdHJ1Y3R1cmUgYmxvY2sgb2Zmc2V0IG9mIGEgcHJvcGVydHkKKyAqCisgKiBmZHRfbmV4
dF9wcm9wZXJ0eV9vZmZzZXQoKSBmaW5kcyB0aGUgcHJvcGVydHkgaW1tZWRpYXRlbHkgYWZ0ZXIg
dGhlCisgKiBvbmUgYXQgdGhlIGdpdmVuIHN0cnVjdHVyZSBibG9jayBvZmZzZXQuICBUaGlzIHdp
bGwgYmUgYSBwcm9wZXJ0eQorICogb2YgdGhlIHNhbWUgbm9kZSBhcyB0aGUgZ2l2ZW4gcHJvcGVy
dHkuCisgKgorICogcmV0dXJuczoKKyAqCXN0cnVjdHVyZSBibG9jayBvZmZzZXQgb2YgdGhlIG5l
eHQgcHJvcGVydHkgKD49MCksIG9uIHN1Y2Nlc3MKKyAqCS1GRFRfRVJSX05PVEZPVU5ELCBpZiB0
aGUgZ2l2ZW4gcHJvcGVydHkgaXMgdGhlIGxhc3QgaW4gaXRzIG5vZGUKKyAqCS1GRFRfRVJSX0JB
RE9GRlNFVCwgaWYgbm9kZW9mZnNldCBkaWQgbm90IHBvaW50IHRvIGFuIEZEVF9QUk9QIHRhZwor
ICogICAgICAtRkRUX0VSUl9CQURNQUdJQywKKyAqCS1GRFRfRVJSX0JBRFZFUlNJT04sCisgKgkt
RkRUX0VSUl9CQURTVEFURSwKKyAqCS1GRFRfRVJSX0JBRFNUUlVDVFVSRSwKKyAqCS1GRFRfRVJS
X1RSVU5DQVRFRCwgc3RhbmRhcmQgbWVhbmluZ3MuCisgKi8KK2ludCBmZHRfbmV4dF9wcm9wZXJ0
eV9vZmZzZXQoY29uc3Qgdm9pZCAqZmR0LCBpbnQgb2Zmc2V0KTsKKworLyoqCisgKiBmZHRfZm9y
X2VhY2hfcHJvcGVydHlfb2Zmc2V0IC0gaXRlcmF0ZSBvdmVyIGFsbCBwcm9wZXJ0aWVzIG9mIGEg
bm9kZQorICoKKyAqIEBwcm9wZXJ0eV9vZmZzZXQ6CXByb3BlcnR5IG9mZnNldCAoaW50LCBsdmFs
dWUpCisgKiBAZmR0OgkJRkRUIGJsb2IgKGNvbnN0IHZvaWQgKikKKyAqIEBub2RlOgkJbm9kZSBv
ZmZzZXQgKGludCkKKyAqCisgKiBUaGlzIGlzIGFjdHVhbGx5IGEgd3JhcHBlciBhcm91bmQgYSBm
b3IgbG9vcCBhbmQgd291bGQgYmUgdXNlZCBsaWtlIHNvOgorICoKKyAqCWZkdF9mb3JfZWFjaF9w
cm9wZXJ0eV9vZmZzZXQocHJvcGVydHksIGZkdCwgbm9kZSkgeworICoJCVVzZSBwcm9wZXJ0eQor
ICoJCS4uLgorICoJfQorICoKKyAqCWlmICgocHJvcGVydHkgPCAwKSAmJiAocHJvcGVydHkgIT0g
LUZEVF9FUlJfTk9UX0ZPVU5EKSkgeworICoJCUVycm9yIGhhbmRsaW5nCisgKgl9CisgKgorICog
Tm90ZSB0aGF0IHRoaXMgaXMgaW1wbGVtZW50ZWQgYXMgYSBtYWNybyBhbmQgcHJvcGVydHkgaXMg
dXNlZCBhcworICogaXRlcmF0b3IgaW4gdGhlIGxvb3AuIFRoZSBub2RlIHZhcmlhYmxlIGNhbiBi
ZSBjb25zdGFudCBvciBldmVuIGEKKyAqIGxpdGVyYWwuCisgKi8KKyNkZWZpbmUgZmR0X2Zvcl9l
YWNoX3Byb3BlcnR5X29mZnNldChwcm9wZXJ0eSwgZmR0LCBub2RlKQlcCisJZm9yIChwcm9wZXJ0
eSA9IGZkdF9maXJzdF9wcm9wZXJ0eV9vZmZzZXQoZmR0LCBub2RlKTsJXAorCSAgICAgcHJvcGVy
dHkgPj0gMDsJCQkJCVwKKwkgICAgIHByb3BlcnR5ID0gZmR0X25leHRfcHJvcGVydHlfb2Zmc2V0
KGZkdCwgcHJvcGVydHkpKQorCisvKioKKyAqIGZkdF9nZXRfcHJvcGVydHlfYnlfb2Zmc2V0IC0g
cmV0cmlldmUgdGhlIHByb3BlcnR5IGF0IGEgZ2l2ZW4gb2Zmc2V0CisgKiBAZmR0OiBwb2ludGVy
IHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAb2Zmc2V0OiBvZmZzZXQgb2YgdGhlIHByb3Bl
cnR5IHRvIHJldHJpZXZlCisgKiBAbGVucDogcG9pbnRlciB0byBhbiBpbnRlZ2VyIHZhcmlhYmxl
ICh3aWxsIGJlIG92ZXJ3cml0dGVuKSBvciBOVUxMCisgKgorICogZmR0X2dldF9wcm9wZXJ0eV9i
eV9vZmZzZXQoKSByZXRyaWV2ZXMgYSBwb2ludGVyIHRvIHRoZQorICogZmR0X3Byb3BlcnR5IHN0
cnVjdHVyZSB3aXRoaW4gdGhlIGRldmljZSB0cmVlIGJsb2IgYXQgdGhlIGdpdmVuCisgKiBvZmZz
ZXQuICBJZiBsZW5wIGlzIG5vbi1OVUxMLCB0aGUgbGVuZ3RoIG9mIHRoZSBwcm9wZXJ0eSB2YWx1
ZSBpcworICogYWxzbyByZXR1cm5lZCwgaW4gdGhlIGludGVnZXIgcG9pbnRlZCB0byBieSBsZW5w
LgorICoKKyAqIHJldHVybnM6CisgKglwb2ludGVyIHRvIHRoZSBzdHJ1Y3R1cmUgcmVwcmVzZW50
aW5nIHRoZSBwcm9wZXJ0eQorICoJCWlmIGxlbnAgaXMgbm9uLU5VTEwsICpsZW5wIGNvbnRhaW5z
IHRoZSBsZW5ndGggb2YgdGhlIHByb3BlcnR5CisgKgkJdmFsdWUgKD49MCkKKyAqCU5VTEwsIG9u
IGVycm9yCisgKgkJaWYgbGVucCBpcyBub24tTlVMTCwgKmxlbnAgY29udGFpbnMgYW4gZXJyb3Ig
Y29kZSAoPDApOgorICoJCS1GRFRfRVJSX0JBRE9GRlNFVCwgbm9kZW9mZnNldCBkaWQgbm90IHBv
aW50IHRvIEZEVF9QUk9QIHRhZworICoJCS1GRFRfRVJSX0JBRE1BR0lDLAorICoJCS1GRFRfRVJS
X0JBRFZFUlNJT04sCisgKgkJLUZEVF9FUlJfQkFEU1RBVEUsCisgKgkJLUZEVF9FUlJfQkFEU1RS
VUNUVVJFLAorICoJCS1GRFRfRVJSX1RSVU5DQVRFRCwgc3RhbmRhcmQgbWVhbmluZ3MKKyAqLwor
Y29uc3Qgc3RydWN0IGZkdF9wcm9wZXJ0eSAqZmR0X2dldF9wcm9wZXJ0eV9ieV9vZmZzZXQoY29u
c3Qgdm9pZCAqZmR0LAorCQkJCQkJICAgICAgaW50IG9mZnNldCwKKwkJCQkJCSAgICAgIGludCAq
bGVucCk7CisKKy8qKgorICogZmR0X2dldF9wcm9wZXJ0eV9uYW1lbGVuIC0gZmluZCBhIHByb3Bl
cnR5IGJhc2VkIG9uIHN1YnN0cmluZworICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNlIHRy
ZWUgYmxvYgorICogQG5vZGVvZmZzZXQ6IG9mZnNldCBvZiB0aGUgbm9kZSB3aG9zZSBwcm9wZXJ0
eSB0byBmaW5kCisgKiBAbmFtZTogbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gZmluZAorICogQG5h
bWVsZW46IG51bWJlciBvZiBjaGFyYWN0ZXJzIG9mIG5hbWUgdG8gY29uc2lkZXIKKyAqIEBsZW5w
OiBwb2ludGVyIHRvIGFuIGludGVnZXIgdmFyaWFibGUgKHdpbGwgYmUgb3ZlcndyaXR0ZW4pIG9y
IE5VTEwKKyAqCisgKiBJZGVudGljYWwgdG8gZmR0X2dldF9wcm9wZXJ0eSgpLCBidXQgb25seSBl
eGFtaW5lIHRoZSBmaXJzdCBuYW1lbGVuCisgKiBjaGFyYWN0ZXJzIG9mIG5hbWUgZm9yIG1hdGNo
aW5nIHRoZSBwcm9wZXJ0eSBuYW1lLgorICovCisjaWZuZGVmIFNXSUcgLyogTm90IGF2YWlsYWJs
ZSBpbiBQeXRob24gKi8KK2NvbnN0IHN0cnVjdCBmZHRfcHJvcGVydHkgKmZkdF9nZXRfcHJvcGVy
dHlfbmFtZWxlbihjb25zdCB2b2lkICpmZHQsCisJCQkJCQkgICAgaW50IG5vZGVvZmZzZXQsCisJ
CQkJCQkgICAgY29uc3QgY2hhciAqbmFtZSwKKwkJCQkJCSAgICBpbnQgbmFtZWxlbiwgaW50ICps
ZW5wKTsKKyNlbmRpZgorCisvKioKKyAqIGZkdF9nZXRfcHJvcGVydHkgLSBmaW5kIGEgZ2l2ZW4g
cHJvcGVydHkgaW4gYSBnaXZlbiBub2RlCisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2Ug
dHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogb2Zmc2V0IG9mIHRoZSBub2RlIHdob3NlIHByb3Bl
cnR5IHRvIGZpbmQKKyAqIEBuYW1lOiBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byBmaW5kCisgKiBA
bGVucDogcG9pbnRlciB0byBhbiBpbnRlZ2VyIHZhcmlhYmxlICh3aWxsIGJlIG92ZXJ3cml0dGVu
KSBvciBOVUxMCisgKgorICogZmR0X2dldF9wcm9wZXJ0eSgpIHJldHJpZXZlcyBhIHBvaW50ZXIg
dG8gdGhlIGZkdF9wcm9wZXJ0eQorICogc3RydWN0dXJlIHdpdGhpbiB0aGUgZGV2aWNlIHRyZWUg
YmxvYiBjb3JyZXNwb25kaW5nIHRvIHRoZSBwcm9wZXJ0eQorICogbmFtZWQgJ25hbWUnIG9mIHRo
ZSBub2RlIGF0IG9mZnNldCBub2Rlb2Zmc2V0LiAgSWYgbGVucCBpcworICogbm9uLU5VTEwsIHRo
ZSBsZW5ndGggb2YgdGhlIHByb3BlcnR5IHZhbHVlIGlzIGFsc28gcmV0dXJuZWQsIGluIHRoZQor
ICogaW50ZWdlciBwb2ludGVkIHRvIGJ5IGxlbnAuCisgKgorICogcmV0dXJuczoKKyAqCXBvaW50
ZXIgdG8gdGhlIHN0cnVjdHVyZSByZXByZXNlbnRpbmcgdGhlIHByb3BlcnR5CisgKgkJaWYgbGVu
cCBpcyBub24tTlVMTCwgKmxlbnAgY29udGFpbnMgdGhlIGxlbmd0aCBvZiB0aGUgcHJvcGVydHkK
KyAqCQl2YWx1ZSAoPj0wKQorICoJTlVMTCwgb24gZXJyb3IKKyAqCQlpZiBsZW5wIGlzIG5vbi1O
VUxMLCAqbGVucCBjb250YWlucyBhbiBlcnJvciBjb2RlICg8MCk6CisgKgkJLUZEVF9FUlJfTk9U
Rk9VTkQsIG5vZGUgZG9lcyBub3QgaGF2ZSBuYW1lZCBwcm9wZXJ0eQorICoJCS1GRFRfRVJSX0JB
RE9GRlNFVCwgbm9kZW9mZnNldCBkaWQgbm90IHBvaW50IHRvIEZEVF9CRUdJTl9OT0RFCisgKgkJ
CXRhZworICoJCS1GRFRfRVJSX0JBRE1BR0lDLAorICoJCS1GRFRfRVJSX0JBRFZFUlNJT04sCisg
KgkJLUZEVF9FUlJfQkFEU1RBVEUsCisgKgkJLUZEVF9FUlJfQkFEU1RSVUNUVVJFLAorICoJCS1G
RFRfRVJSX1RSVU5DQVRFRCwgc3RhbmRhcmQgbWVhbmluZ3MKKyAqLworY29uc3Qgc3RydWN0IGZk
dF9wcm9wZXJ0eSAqZmR0X2dldF9wcm9wZXJ0eShjb25zdCB2b2lkICpmZHQsIGludCBub2Rlb2Zm
c2V0LAorCQkJCQkgICAgY29uc3QgY2hhciAqbmFtZSwgaW50ICpsZW5wKTsKK3N0YXRpYyBpbmxp
bmUgc3RydWN0IGZkdF9wcm9wZXJ0eSAqZmR0X2dldF9wcm9wZXJ0eV93KHZvaWQgKmZkdCwgaW50
IG5vZGVvZmZzZXQsCisJCQkJCQkgICAgICBjb25zdCBjaGFyICpuYW1lLAorCQkJCQkJICAgICAg
aW50ICpsZW5wKQoreworCXJldHVybiAoc3RydWN0IGZkdF9wcm9wZXJ0eSAqKSh1aW50cHRyX3Qp
CisJCWZkdF9nZXRfcHJvcGVydHkoZmR0LCBub2Rlb2Zmc2V0LCBuYW1lLCBsZW5wKTsKK30KKwor
LyoqCisgKiBmZHRfZ2V0cHJvcF9ieV9vZmZzZXQgLSByZXRyaWV2ZSB0aGUgdmFsdWUgb2YgYSBw
cm9wZXJ0eSBhdCBhIGdpdmVuIG9mZnNldAorICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNl
IHRyZWUgYmxvYgorICogQGZmc2V0OiBvZmZzZXQgb2YgdGhlIHByb3BlcnR5IHRvIHJlYWQKKyAq
IEBuYW1lcDogcG9pbnRlciB0byBhIHN0cmluZyB2YXJpYWJsZSAod2lsbCBiZSBvdmVyd3JpdHRl
bikgb3IgTlVMTAorICogQGxlbnA6IHBvaW50ZXIgdG8gYW4gaW50ZWdlciB2YXJpYWJsZSAod2ls
bCBiZSBvdmVyd3JpdHRlbikgb3IgTlVMTAorICoKKyAqIGZkdF9nZXRwcm9wX2J5X29mZnNldCgp
IHJldHJpZXZlcyBhIHBvaW50ZXIgdG8gdGhlIHZhbHVlIG9mIHRoZQorICogcHJvcGVydHkgYXQg
c3RydWN0dXJlIGJsb2NrIG9mZnNldCAnb2Zmc2V0JyAodGhpcyB3aWxsIGJlIGEgcG9pbnRlcgor
ICogdG8gd2l0aGluIHRoZSBkZXZpY2UgYmxvYiBpdHNlbGYsIG5vdCBhIGNvcHkgb2YgdGhlIHZh
bHVlKS4gIElmCisgKiBsZW5wIGlzIG5vbi1OVUxMLCB0aGUgbGVuZ3RoIG9mIHRoZSBwcm9wZXJ0
eSB2YWx1ZSBpcyBhbHNvCisgKiByZXR1cm5lZCwgaW4gdGhlIGludGVnZXIgcG9pbnRlZCB0byBi
eSBsZW5wLiAgSWYgbmFtZXAgaXMgbm9uLU5VTEwsCisgKiB0aGUgcHJvcGVydHkncyBuYW1uZSB3
aWxsIGFsc28gYmUgcmV0dXJuZWQgaW4gdGhlIGNoYXIgKiBwb2ludGVkIHRvCisgKiBieSBuYW1l
cCAodGhpcyB3aWxsIGJlIGEgcG9pbnRlciB0byB3aXRoaW4gdGhlIGRldmljZSB0cmVlJ3Mgc3Ry
aW5nCisgKiBibG9jaywgbm90IGEgbmV3IGNvcHkgb2YgdGhlIG5hbWUpLgorICoKKyAqIHJldHVy
bnM6CisgKglwb2ludGVyIHRvIHRoZSBwcm9wZXJ0eSdzIHZhbHVlCisgKgkJaWYgbGVucCBpcyBu
b24tTlVMTCwgKmxlbnAgY29udGFpbnMgdGhlIGxlbmd0aCBvZiB0aGUgcHJvcGVydHkKKyAqCQl2
YWx1ZSAoPj0wKQorICoJCWlmIG5hbWVwIGlzIG5vbi1OVUxMICpuYW1lcCBjb250aWFpbnMgYSBw
b2ludGVyIHRvIHRoZSBwcm9wZXJ0eQorICoJCW5hbWUuCisgKglOVUxMLCBvbiBlcnJvcgorICoJ
CWlmIGxlbnAgaXMgbm9uLU5VTEwsICpsZW5wIGNvbnRhaW5zIGFuIGVycm9yIGNvZGUgKDwwKToK
KyAqCQktRkRUX0VSUl9CQURPRkZTRVQsIG5vZGVvZmZzZXQgZGlkIG5vdCBwb2ludCB0byBGRFRf
UFJPUCB0YWcKKyAqCQktRkRUX0VSUl9CQURNQUdJQywKKyAqCQktRkRUX0VSUl9CQURWRVJTSU9O
LAorICoJCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJCS1GRFRfRVJSX0JBRFNUUlVDVFVSRSwKKyAq
CQktRkRUX0VSUl9UUlVOQ0FURUQsIHN0YW5kYXJkIG1lYW5pbmdzCisgKi8KKyNpZm5kZWYgU1dJ
RyAvKiBUaGlzIGZ1bmN0aW9uIGlzIG5vdCB1c2VmdWwgaW4gUHl0aG9uICovCitjb25zdCB2b2lk
ICpmZHRfZ2V0cHJvcF9ieV9vZmZzZXQoY29uc3Qgdm9pZCAqZmR0LCBpbnQgb2Zmc2V0LAorCQkJ
CSAgY29uc3QgY2hhciAqKm5hbWVwLCBpbnQgKmxlbnApOworI2VuZGlmCisKKy8qKgorICogZmR0
X2dldHByb3BfbmFtZWxlbiAtIGdldCBwcm9wZXJ0eSB2YWx1ZSBiYXNlZCBvbiBzdWJzdHJpbmcK
KyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IKKyAqIEBub2Rlb2Zmc2V0
OiBvZmZzZXQgb2YgdGhlIG5vZGUgd2hvc2UgcHJvcGVydHkgdG8gZmluZAorICogQG5hbWU6IG5h
bWUgb2YgdGhlIHByb3BlcnR5IHRvIGZpbmQKKyAqIEBuYW1lbGVuOiBudW1iZXIgb2YgY2hhcmFj
dGVycyBvZiBuYW1lIHRvIGNvbnNpZGVyCisgKiBAbGVucDogcG9pbnRlciB0byBhbiBpbnRlZ2Vy
IHZhcmlhYmxlICh3aWxsIGJlIG92ZXJ3cml0dGVuKSBvciBOVUxMCisgKgorICogSWRlbnRpY2Fs
IHRvIGZkdF9nZXRwcm9wKCksIGJ1dCBvbmx5IGV4YW1pbmUgdGhlIGZpcnN0IG5hbWVsZW4KKyAq
IGNoYXJhY3RlcnMgb2YgbmFtZSBmb3IgbWF0Y2hpbmcgdGhlIHByb3BlcnR5IG5hbWUuCisgKi8K
KyNpZm5kZWYgU1dJRyAvKiBOb3QgYXZhaWxhYmxlIGluIFB5dGhvbiAqLworY29uc3Qgdm9pZCAq
ZmR0X2dldHByb3BfbmFtZWxlbihjb25zdCB2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0LAorCQkJ
CWNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuLCBpbnQgKmxlbnApOworc3RhdGljIGlubGlu
ZSB2b2lkICpmZHRfZ2V0cHJvcF9uYW1lbGVuX3codm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwK
KwkJCQkJICBjb25zdCBjaGFyICpuYW1lLCBpbnQgbmFtZWxlbiwKKwkJCQkJICBpbnQgKmxlbnAp
Cit7CisJcmV0dXJuICh2b2lkICopKHVpbnRwdHJfdClmZHRfZ2V0cHJvcF9uYW1lbGVuKGZkdCwg
bm9kZW9mZnNldCwgbmFtZSwKKwkJCQkJCSAgICAgIG5hbWVsZW4sIGxlbnApOworfQorI2VuZGlm
CisKKy8qKgorICogZmR0X2dldHByb3AgLSByZXRyaWV2ZSB0aGUgdmFsdWUgb2YgYSBnaXZlbiBw
cm9wZXJ0eQorICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNlIHRyZWUgYmxvYgorICogQG5v
ZGVvZmZzZXQ6IG9mZnNldCBvZiB0aGUgbm9kZSB3aG9zZSBwcm9wZXJ0eSB0byBmaW5kCisgKiBA
bmFtZTogbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gZmluZAorICogQGxlbnA6IHBvaW50ZXIgdG8g
YW4gaW50ZWdlciB2YXJpYWJsZSAod2lsbCBiZSBvdmVyd3JpdHRlbikgb3IgTlVMTAorICoKKyAq
IGZkdF9nZXRwcm9wKCkgcmV0cmlldmVzIGEgcG9pbnRlciB0byB0aGUgdmFsdWUgb2YgdGhlIHBy
b3BlcnR5CisgKiBuYW1lZCAnbmFtZScgb2YgdGhlIG5vZGUgYXQgb2Zmc2V0IG5vZGVvZmZzZXQg
KHRoaXMgd2lsbCBiZSBhCisgKiBwb2ludGVyIHRvIHdpdGhpbiB0aGUgZGV2aWNlIGJsb2IgaXRz
ZWxmLCBub3QgYSBjb3B5IG9mIHRoZSB2YWx1ZSkuCisgKiBJZiBsZW5wIGlzIG5vbi1OVUxMLCB0
aGUgbGVuZ3RoIG9mIHRoZSBwcm9wZXJ0eSB2YWx1ZSBpcyBhbHNvCisgKiByZXR1cm5lZCwgaW4g
dGhlIGludGVnZXIgcG9pbnRlZCB0byBieSBsZW5wLgorICoKKyAqIHJldHVybnM6CisgKglwb2lu
dGVyIHRvIHRoZSBwcm9wZXJ0eSdzIHZhbHVlCisgKgkJaWYgbGVucCBpcyBub24tTlVMTCwgKmxl
bnAgY29udGFpbnMgdGhlIGxlbmd0aCBvZiB0aGUgcHJvcGVydHkKKyAqCQl2YWx1ZSAoPj0wKQor
ICoJTlVMTCwgb24gZXJyb3IKKyAqCQlpZiBsZW5wIGlzIG5vbi1OVUxMLCAqbGVucCBjb250YWlu
cyBhbiBlcnJvciBjb2RlICg8MCk6CisgKgkJLUZEVF9FUlJfTk9URk9VTkQsIG5vZGUgZG9lcyBu
b3QgaGF2ZSBuYW1lZCBwcm9wZXJ0eQorICoJCS1GRFRfRVJSX0JBRE9GRlNFVCwgbm9kZW9mZnNl
dCBkaWQgbm90IHBvaW50IHRvIEZEVF9CRUdJTl9OT0RFCisgKgkJCXRhZworICoJCS1GRFRfRVJS
X0JBRE1BR0lDLAorICoJCS1GRFRfRVJSX0JBRFZFUlNJT04sCisgKgkJLUZEVF9FUlJfQkFEU1RB
VEUsCisgKgkJLUZEVF9FUlJfQkFEU1RSVUNUVVJFLAorICoJCS1GRFRfRVJSX1RSVU5DQVRFRCwg
c3RhbmRhcmQgbWVhbmluZ3MKKyAqLworY29uc3Qgdm9pZCAqZmR0X2dldHByb3AoY29uc3Qgdm9p
ZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwKKwkJCWNvbnN0IGNoYXIgKm5hbWUsIGludCAqbGVucCk7
CitzdGF0aWMgaW5saW5lIHZvaWQgKmZkdF9nZXRwcm9wX3codm9pZCAqZmR0LCBpbnQgbm9kZW9m
ZnNldCwKKwkJCQkgIGNvbnN0IGNoYXIgKm5hbWUsIGludCAqbGVucCkKK3sKKwlyZXR1cm4gKHZv
aWQgKikodWludHB0cl90KWZkdF9nZXRwcm9wKGZkdCwgbm9kZW9mZnNldCwgbmFtZSwgbGVucCk7
Cit9CisKKy8qKgorICogZmR0X2dldF9waGFuZGxlIC0gcmV0cmlldmUgdGhlIHBoYW5kbGUgb2Yg
YSBnaXZlbiBub2RlCisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisg
KiBAbm9kZW9mZnNldDogc3RydWN0dXJlIGJsb2NrIG9mZnNldCBvZiB0aGUgbm9kZQorICoKKyAq
IGZkdF9nZXRfcGhhbmRsZSgpIHJldHJpZXZlcyB0aGUgcGhhbmRsZSBvZiB0aGUgZGV2aWNlIHRy
ZWUgbm9kZSBhdAorICogc3RydWN0dXJlIGJsb2NrIG9mZnNldCBub2Rlb2Zmc2V0LgorICoKKyAq
IHJldHVybnM6CisgKgl0aGUgcGhhbmRsZSBvZiB0aGUgbm9kZSBhdCBub2Rlb2Zmc2V0LCBvbiBz
dWNjZXNzICghPSAwLCAhPSAtMSkKKyAqCTAsIGlmIHRoZSBub2RlIGhhcyBubyBwaGFuZGxlLCBv
ciBhbm90aGVyIGVycm9yIG9jY3VycworICovCit1aW50MzJfdCBmZHRfZ2V0X3BoYW5kbGUoY29u
c3Qgdm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCk7CisKKy8qKgorICogZmR0X2dldF9hbGlhc19u
YW1lbGVuIC0gZ2V0IGFsaWFzIGJhc2VkIG9uIHN1YnN0cmluZworICogQGZkdDogcG9pbnRlciB0
byB0aGUgZGV2aWNlIHRyZWUgYmxvYgorICogQG5hbWU6IG5hbWUgb2YgdGhlIGFsaWFzIHRoIGxv
b2sgdXAKKyAqIEBuYW1lbGVuOiBudW1iZXIgb2YgY2hhcmFjdGVycyBvZiBuYW1lIHRvIGNvbnNp
ZGVyCisgKgorICogSWRlbnRpY2FsIHRvIGZkdF9nZXRfYWxpYXMoKSwgYnV0IG9ubHkgZXhhbWlu
ZSB0aGUgZmlyc3QgbmFtZWxlbgorICogY2hhcmFjdGVycyBvZiBuYW1lIGZvciBtYXRjaGluZyB0
aGUgYWxpYXMgbmFtZS4KKyAqLworI2lmbmRlZiBTV0lHIC8qIE5vdCBhdmFpbGFibGUgaW4gUHl0
aG9uICovCitjb25zdCBjaGFyICpmZHRfZ2V0X2FsaWFzX25hbWVsZW4oY29uc3Qgdm9pZCAqZmR0
LAorCQkJCSAgY29uc3QgY2hhciAqbmFtZSwgaW50IG5hbWVsZW4pOworI2VuZGlmCisKKy8qKgor
ICogZmR0X2dldF9hbGlhcyAtIHJldHJpZXZlIHRoZSBwYXRoIHJlZmVyZW5jZWQgYnkgYSBnaXZl
biBhbGlhcworICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNlIHRyZWUgYmxvYgorICogQG5h
bWU6IG5hbWUgb2YgdGhlIGFsaWFzIHRoIGxvb2sgdXAKKyAqCisgKiBmZHRfZ2V0X2FsaWFzKCkg
cmV0cmlldmVzIHRoZSB2YWx1ZSBvZiBhIGdpdmVuIGFsaWFzLiAgVGhhdCBpcywgdGhlCisgKiB2
YWx1ZSBvZiB0aGUgcHJvcGVydHkgbmFtZWQgJ25hbWUnIGluIHRoZSBub2RlIC9hbGlhc2VzLgor
ICoKKyAqIHJldHVybnM6CisgKglhIHBvaW50ZXIgdG8gdGhlIGV4cGFuc2lvbiBvZiB0aGUgYWxp
YXMgbmFtZWQgJ25hbWUnLCBpZiBpdCBleGlzdHMKKyAqCU5VTEwsIGlmIHRoZSBnaXZlbiBhbGlh
cyBvciB0aGUgL2FsaWFzZXMgbm9kZSBkb2VzIG5vdCBleGlzdAorICovCitjb25zdCBjaGFyICpm
ZHRfZ2V0X2FsaWFzKGNvbnN0IHZvaWQgKmZkdCwgY29uc3QgY2hhciAqbmFtZSk7CisKKy8qKgor
ICogZmR0X2dldF9wYXRoIC0gZGV0ZXJtaW5lIHRoZSBmdWxsIHBhdGggb2YgYSBub2RlCisgKiBA
ZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogb2Zm
c2V0IG9mIHRoZSBub2RlIHdob3NlIHBhdGggdG8gZmluZAorICogQGJ1ZjogY2hhcmFjdGVyIGJ1
ZmZlciB0byBjb250YWluIHRoZSByZXR1cm5lZCBwYXRoICh3aWxsIGJlIG92ZXJ3cml0dGVuKQor
ICogQGJ1Zmxlbjogc2l6ZSBvZiB0aGUgY2hhcmFjdGVyIGJ1ZmZlciBhdCBidWYKKyAqCisgKiBm
ZHRfZ2V0X3BhdGgoKSBjb21wdXRlcyB0aGUgZnVsbCBwYXRoIG9mIHRoZSBub2RlIGF0IG9mZnNl
dAorICogbm9kZW9mZnNldCwgYW5kIHJlY29yZHMgdGhhdCBwYXRoIGluIHRoZSBidWZmZXIgYXQg
YnVmLgorICoKKyAqIE5PVEU6IFRoaXMgZnVuY3Rpb24gaXMgZXhwZW5zaXZlLCBhcyBpdCBtdXN0
IHNjYW4gdGhlIGRldmljZSB0cmVlCisgKiBzdHJ1Y3R1cmUgZnJvbSB0aGUgc3RhcnQgdG8gbm9k
ZW9mZnNldC4KKyAqCisgKiByZXR1cm5zOgorICoJMCwgb24gc3VjY2VzcworICoJCWJ1ZiBjb250
YWlucyB0aGUgYWJzb2x1dGUgcGF0aCBvZiB0aGUgbm9kZSBhdAorICoJCW5vZGVvZmZzZXQsIGFz
IGEgTlVMLXRlcm1pbmF0ZWQgc3RyaW5nLgorICoJLUZEVF9FUlJfQkFET0ZGU0VULCBub2Rlb2Zm
c2V0IGRvZXMgbm90IHJlZmVyIHRvIGEgQkVHSU5fTk9ERSB0YWcKKyAqCS1GRFRfRVJSX05PU1BB
Q0UsIHRoZSBwYXRoIG9mIHRoZSBnaXZlbiBub2RlIGlzIGxvbmdlciB0aGFuIChidWZzaXplLTEp
CisgKgkJY2hhcmFjdGVycyBhbmQgd2lsbCBub3QgZml0IGluIHRoZSBnaXZlbiBidWZmZXIuCisg
KgktRkRUX0VSUl9CQURNQUdJQywKKyAqCS1GRFRfRVJSX0JBRFZFUlNJT04sCisgKgktRkRUX0VS
Ul9CQURTVEFURSwKKyAqCS1GRFRfRVJSX0JBRFNUUlVDVFVSRSwgc3RhbmRhcmQgbWVhbmluZ3MK
KyAqLworaW50IGZkdF9nZXRfcGF0aChjb25zdCB2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0LCBj
aGFyICpidWYsIGludCBidWZsZW4pOworCisvKioKKyAqIGZkdF9zdXBlcm5vZGVfYXRkZXB0aF9v
ZmZzZXQgLSBmaW5kIGEgc3BlY2lmaWMgYW5jZXN0b3Igb2YgYSBub2RlCisgKiBAZmR0OiBwb2lu
dGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogb2Zmc2V0IG9mIHRo
ZSBub2RlIHdob3NlIHBhcmVudCB0byBmaW5kCisgKiBAc3VwZXJub2RlZGVwdGg6IGRlcHRoIG9m
IHRoZSBhbmNlc3RvciB0byBmaW5kCisgKiBAbm9kZWRlcHRoOiBwb2ludGVyIHRvIGFuIGludGVn
ZXIgdmFyaWFibGUgKHdpbGwgYmUgb3ZlcndyaXR0ZW4pIG9yIE5VTEwKKyAqCisgKiBmZHRfc3Vw
ZXJub2RlX2F0ZGVwdGhfb2Zmc2V0KCkgZmluZHMgYW4gYW5jZXN0b3Igb2YgdGhlIGdpdmVuIG5v
ZGUKKyAqIGF0IGEgc3BlY2lmaWMgZGVwdGggZnJvbSB0aGUgcm9vdCAod2hlcmUgdGhlIHJvb3Qg
aXRzZWxmIGhhcyBkZXB0aAorICogMCwgaXRzIGltbWVkaWF0ZSBzdWJub2RlcyBkZXB0aCAxIGFu
ZCBzbyBmb3J0aCkuICBTbworICoJZmR0X3N1cGVybm9kZV9hdGRlcHRoX29mZnNldChmZHQsIG5v
ZGVvZmZzZXQsIDAsIE5VTEwpOworICogd2lsbCBhbHdheXMgcmV0dXJuIDAsIHRoZSBvZmZzZXQg
b2YgdGhlIHJvb3Qgbm9kZS4gIElmIHRoZSBub2RlIGF0CisgKiBub2Rlb2Zmc2V0IGhhcyBkZXB0
aCBELCB0aGVuOgorICoJZmR0X3N1cGVybm9kZV9hdGRlcHRoX29mZnNldChmZHQsIG5vZGVvZmZz
ZXQsIEQsIE5VTEwpOworICogd2lsbCByZXR1cm4gbm9kZW9mZnNldCBpdHNlbGYuCisgKgorICog
Tk9URTogVGhpcyBmdW5jdGlvbiBpcyBleHBlbnNpdmUsIGFzIGl0IG11c3Qgc2NhbiB0aGUgZGV2
aWNlIHRyZWUKKyAqIHN0cnVjdHVyZSBmcm9tIHRoZSBzdGFydCB0byBub2Rlb2Zmc2V0LgorICoK
KyAqIHJldHVybnM6CisgKglzdHJ1Y3R1cmUgYmxvY2sgb2Zmc2V0IG9mIHRoZSBub2RlIGF0IG5v
ZGUgb2Zmc2V0J3MgYW5jZXN0b3IKKyAqCQlvZiBkZXB0aCBzdXBlcm5vZGVkZXB0aCAoPj0wKSwg
b24gc3VjY2VzcworICoJLUZEVF9FUlJfQkFET0ZGU0VULCBub2Rlb2Zmc2V0IGRvZXMgbm90IHJl
ZmVyIHRvIGEgQkVHSU5fTk9ERSB0YWcKKyAqCS1GRFRfRVJSX05PVEZPVU5ELCBzdXBlcm5vZGVk
ZXB0aCB3YXMgZ3JlYXRlciB0aGFuIHRoZSBkZXB0aCBvZgorICoJCW5vZGVvZmZzZXQKKyAqCS1G
RFRfRVJSX0JBRE1BR0lDLAorICoJLUZEVF9FUlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRfRVJSX0JB
RFNUQVRFLAorICoJLUZEVF9FUlJfQkFEU1RSVUNUVVJFLCBzdGFuZGFyZCBtZWFuaW5ncworICov
CitpbnQgZmR0X3N1cGVybm9kZV9hdGRlcHRoX29mZnNldChjb25zdCB2b2lkICpmZHQsIGludCBu
b2Rlb2Zmc2V0LAorCQkJCSBpbnQgc3VwZXJub2RlZGVwdGgsIGludCAqbm9kZWRlcHRoKTsKKwor
LyoqCisgKiBmZHRfbm9kZV9kZXB0aCAtIGZpbmQgdGhlIGRlcHRoIG9mIGEgZ2l2ZW4gbm9kZQor
ICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNlIHRyZWUgYmxvYgorICogQG5vZGVvZmZzZXQ6
IG9mZnNldCBvZiB0aGUgbm9kZSB3aG9zZSBwYXJlbnQgdG8gZmluZAorICoKKyAqIGZkdF9ub2Rl
X2RlcHRoKCkgZmluZHMgdGhlIGRlcHRoIG9mIGEgZ2l2ZW4gbm9kZS4gIFRoZSByb290IG5vZGUK
KyAqIGhhcyBkZXB0aCAwLCBpdHMgaW1tZWRpYXRlIHN1Ym5vZGVzIGRlcHRoIDEgYW5kIHNvIGZv
cnRoLgorICoKKyAqIE5PVEU6IFRoaXMgZnVuY3Rpb24gaXMgZXhwZW5zaXZlLCBhcyBpdCBtdXN0
IHNjYW4gdGhlIGRldmljZSB0cmVlCisgKiBzdHJ1Y3R1cmUgZnJvbSB0aGUgc3RhcnQgdG8gbm9k
ZW9mZnNldC4KKyAqCisgKiByZXR1cm5zOgorICoJZGVwdGggb2YgdGhlIG5vZGUgYXQgbm9kZW9m
ZnNldCAoPj0wKSwgb24gc3VjY2VzcworICoJLUZEVF9FUlJfQkFET0ZGU0VULCBub2Rlb2Zmc2V0
IGRvZXMgbm90IHJlZmVyIHRvIGEgQkVHSU5fTk9ERSB0YWcKKyAqCS1GRFRfRVJSX0JBRE1BR0lD
LAorICoJLUZEVF9FUlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJLUZE
VF9FUlJfQkFEU1RSVUNUVVJFLCBzdGFuZGFyZCBtZWFuaW5ncworICovCitpbnQgZmR0X25vZGVf
ZGVwdGgoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCk7CisKKy8qKgorICogZmR0X3Bh
cmVudF9vZmZzZXQgLSBmaW5kIHRoZSBwYXJlbnQgb2YgYSBnaXZlbiBub2RlCisgKiBAZmR0OiBw
b2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogb2Zmc2V0IG9m
IHRoZSBub2RlIHdob3NlIHBhcmVudCB0byBmaW5kCisgKgorICogZmR0X3BhcmVudF9vZmZzZXQo
KSBsb2NhdGVzIHRoZSBwYXJlbnQgbm9kZSBvZiBhIGdpdmVuIG5vZGUgKHRoYXQKKyAqIGlzLCBp
dCBmaW5kcyB0aGUgb2Zmc2V0IG9mIHRoZSBub2RlIHdoaWNoIGNvbnRhaW5zIHRoZSBub2RlIGF0
CisgKiBub2Rlb2Zmc2V0IGFzIGEgc3Vibm9kZSkuCisgKgorICogTk9URTogVGhpcyBmdW5jdGlv
biBpcyBleHBlbnNpdmUsIGFzIGl0IG11c3Qgc2NhbiB0aGUgZGV2aWNlIHRyZWUKKyAqIHN0cnVj
dHVyZSBmcm9tIHRoZSBzdGFydCB0byBub2Rlb2Zmc2V0LCAqdHdpY2UqLgorICoKKyAqIHJldHVy
bnM6CisgKglzdHJ1Y3R1cmUgYmxvY2sgb2Zmc2V0IG9mIHRoZSBwYXJlbnQgb2YgdGhlIG5vZGUg
YXQgbm9kZW9mZnNldAorICoJCSg+PTApLCBvbiBzdWNjZXNzCisgKgktRkRUX0VSUl9CQURPRkZT
RVQsIG5vZGVvZmZzZXQgZG9lcyBub3QgcmVmZXIgdG8gYSBCRUdJTl9OT0RFIHRhZworICoJLUZE
VF9FUlJfQkFETUFHSUMsCisgKgktRkRUX0VSUl9CQURWRVJTSU9OLAorICoJLUZEVF9FUlJfQkFE
U1RBVEUsCisgKgktRkRUX0VSUl9CQURTVFJVQ1RVUkUsIHN0YW5kYXJkIG1lYW5pbmdzCisgKi8K
K2ludCBmZHRfcGFyZW50X29mZnNldChjb25zdCB2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0KTsK
KworLyoqCisgKiBmZHRfbm9kZV9vZmZzZXRfYnlfcHJvcF92YWx1ZSAtIGZpbmQgbm9kZXMgd2l0
aCBhIGdpdmVuIHByb3BlcnR5IHZhbHVlCisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2Ug
dHJlZSBibG9iCisgKiBAc3RhcnRvZmZzZXQ6IG9ubHkgZmluZCBub2RlcyBhZnRlciB0aGlzIG9m
ZnNldAorICogQHByb3BuYW1lOiBwcm9wZXJ0eSBuYW1lIHRvIGNoZWNrCisgKiBAcHJvcHZhbDog
cHJvcGVydHkgdmFsdWUgdG8gc2VhcmNoIGZvcgorICogQHByb3BsZW46IGxlbmd0aCBvZiB0aGUg
dmFsdWUgaW4gcHJvcHZhbAorICoKKyAqIGZkdF9ub2RlX29mZnNldF9ieV9wcm9wX3ZhbHVlKCkg
cmV0dXJucyB0aGUgb2Zmc2V0IG9mIHRoZSBmaXJzdAorICogbm9kZSBhZnRlciBzdGFydG9mZnNl
dCwgd2hpY2ggaGFzIGEgcHJvcGVydHkgbmFtZWQgcHJvcG5hbWUgd2hvc2UKKyAqIHZhbHVlIGlz
IG9mIGxlbmd0aCBwcm9wbGVuIGFuZCBoYXMgdmFsdWUgZXF1YWwgdG8gcHJvcHZhbDsgb3IgaWYK
KyAqIHN0YXJ0b2Zmc2V0IGlzIC0xLCB0aGUgdmVyeSBmaXJzdCBzdWNoIG5vZGUgaW4gdGhlIHRy
ZWUuCisgKgorICogVG8gaXRlcmF0ZSB0aHJvdWdoIGFsbCBub2RlcyBtYXRjaGluZyB0aGUgY3Jp
dGVyaW9uLCB0aGUgZm9sbG93aW5nCisgKiBpZGlvbSBjYW4gYmUgdXNlZDoKKyAqCW9mZnNldCA9
IGZkdF9ub2RlX29mZnNldF9ieV9wcm9wX3ZhbHVlKGZkdCwgLTEsIHByb3BuYW1lLAorICoJCQkJ
CSAgICAgICBwcm9wdmFsLCBwcm9wbGVuKTsKKyAqCXdoaWxlIChvZmZzZXQgIT0gLUZEVF9FUlJf
Tk9URk9VTkQpIHsKKyAqCQkvLyBvdGhlciBjb2RlIGhlcmUKKyAqCQlvZmZzZXQgPSBmZHRfbm9k
ZV9vZmZzZXRfYnlfcHJvcF92YWx1ZShmZHQsIG9mZnNldCwgcHJvcG5hbWUsCisgKgkJCQkJCSAg
ICAgICBwcm9wdmFsLCBwcm9wbGVuKTsKKyAqCX0KKyAqCisgKiBOb3RlIHRoZSAtMSBpbiB0aGUg
Zmlyc3QgY2FsbCB0byB0aGUgZnVuY3Rpb24sIGlmIDAgaXMgdXNlZCBoZXJlCisgKiBpbnN0ZWFk
LCB0aGUgZnVuY3Rpb24gd2lsbCBuZXZlciBsb2NhdGUgdGhlIHJvb3Qgbm9kZSwgZXZlbiBpZiBp
dAorICogbWF0Y2hlcyB0aGUgY3JpdGVyaW9uLgorICoKKyAqIHJldHVybnM6CisgKglzdHJ1Y3R1
cmUgYmxvY2sgb2Zmc2V0IG9mIHRoZSBsb2NhdGVkIG5vZGUgKD49IDAsID5zdGFydG9mZnNldCks
CisgKgkJIG9uIHN1Y2Nlc3MKKyAqCS1GRFRfRVJSX05PVEZPVU5ELCBubyBub2RlIG1hdGNoaW5n
IHRoZSBjcml0ZXJpb24gZXhpc3RzIGluIHRoZQorICoJCXRyZWUgYWZ0ZXIgc3RhcnRvZmZzZXQK
KyAqCS1GRFRfRVJSX0JBRE9GRlNFVCwgbm9kZW9mZnNldCBkb2VzIG5vdCByZWZlciB0byBhIEJF
R0lOX05PREUgdGFnCisgKgktRkRUX0VSUl9CQURNQUdJQywKKyAqCS1GRFRfRVJSX0JBRFZFUlNJ
T04sCisgKgktRkRUX0VSUl9CQURTVEFURSwKKyAqCS1GRFRfRVJSX0JBRFNUUlVDVFVSRSwgc3Rh
bmRhcmQgbWVhbmluZ3MKKyAqLworaW50IGZkdF9ub2RlX29mZnNldF9ieV9wcm9wX3ZhbHVlKGNv
bnN0IHZvaWQgKmZkdCwgaW50IHN0YXJ0b2Zmc2V0LAorCQkJCSAgY29uc3QgY2hhciAqcHJvcG5h
bWUsCisJCQkJICBjb25zdCB2b2lkICpwcm9wdmFsLCBpbnQgcHJvcGxlbik7CisKKy8qKgorICog
ZmR0X25vZGVfb2Zmc2V0X2J5X3BoYW5kbGUgLSBmaW5kIHRoZSBub2RlIHdpdGggYSBnaXZlbiBw
aGFuZGxlCisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAcGhh
bmRsZTogcGhhbmRsZSB2YWx1ZQorICoKKyAqIGZkdF9ub2RlX29mZnNldF9ieV9waGFuZGxlKCkg
cmV0dXJucyB0aGUgb2Zmc2V0IG9mIHRoZSBub2RlCisgKiB3aGljaCBoYXMgdGhlIGdpdmVuIHBo
YW5kbGUgdmFsdWUuICBJZiB0aGVyZSBpcyBtb3JlIHRoYW4gb25lIG5vZGUKKyAqIGluIHRoZSB0
cmVlIHdpdGggdGhlIGdpdmVuIHBoYW5kbGUgKGFuIGludmFsaWQgdHJlZSksIHJlc3VsdHMgYXJl
CisgKiB1bmRlZmluZWQuCisgKgorICogcmV0dXJuczoKKyAqCXN0cnVjdHVyZSBibG9jayBvZmZz
ZXQgb2YgdGhlIGxvY2F0ZWQgbm9kZSAoPj0gMCksIG9uIHN1Y2Nlc3MKKyAqCS1GRFRfRVJSX05P
VEZPVU5ELCBubyBub2RlIHdpdGggdGhhdCBwaGFuZGxlIGV4aXN0cworICoJLUZEVF9FUlJfQkFE
UEhBTkRMRSwgZ2l2ZW4gcGhhbmRsZSB2YWx1ZSB3YXMgaW52YWxpZCAoMCBvciAtMSkKKyAqCS1G
RFRfRVJSX0JBRE1BR0lDLAorICoJLUZEVF9FUlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRfRVJSX0JB
RFNUQVRFLAorICoJLUZEVF9FUlJfQkFEU1RSVUNUVVJFLCBzdGFuZGFyZCBtZWFuaW5ncworICov
CitpbnQgZmR0X25vZGVfb2Zmc2V0X2J5X3BoYW5kbGUoY29uc3Qgdm9pZCAqZmR0LCB1aW50MzJf
dCBwaGFuZGxlKTsKKworLyoqCisgKiBmZHRfbm9kZV9jaGVja19jb21wYXRpYmxlOiBjaGVjayBh
IG5vZGUncyBjb21wYXRpYmxlIHByb3BlcnR5CisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZp
Y2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogb2Zmc2V0IG9mIGEgdHJlZSBub2RlCisgKiBA
Y29tcGF0aWJsZTogc3RyaW5nIHRvIG1hdGNoIGFnYWluc3QKKyAqCisgKgorICogZmR0X25vZGVf
Y2hlY2tfY29tcGF0aWJsZSgpIHJldHVybnMgMCBpZiB0aGUgZ2l2ZW4gbm9kZSBjb250YWlucyBh
CisgKiAnY29tcGF0aWJsZScgcHJvcGVydHkgd2l0aCB0aGUgZ2l2ZW4gc3RyaW5nIGFzIG9uZSBv
ZiBpdHMgZWxlbWVudHMsCisgKiBpdCByZXR1cm5zIG5vbi16ZXJvIG90aGVyd2lzZSwgb3Igb24g
ZXJyb3IuCisgKgorICogcmV0dXJuczoKKyAqCTAsIGlmIHRoZSBub2RlIGhhcyBhICdjb21wYXRp
YmxlJyBwcm9wZXJ0eSBsaXN0aW5nIHRoZSBnaXZlbiBzdHJpbmcKKyAqCTEsIGlmIHRoZSBub2Rl
IGhhcyBhICdjb21wYXRpYmxlJyBwcm9wZXJ0eSwgYnV0IGl0IGRvZXMgbm90IGxpc3QKKyAqCQl0
aGUgZ2l2ZW4gc3RyaW5nCisgKgktRkRUX0VSUl9OT1RGT1VORCwgaWYgdGhlIGdpdmVuIG5vZGUg
aGFzIG5vICdjb21wYXRpYmxlJyBwcm9wZXJ0eQorICoJLUZEVF9FUlJfQkFET0ZGU0VULCBpZiBu
b2Rlb2Zmc2V0IGRvZXMgbm90IHJlZmVyIHRvIGEgQkVHSU5fTk9ERSB0YWcKKyAqCS1GRFRfRVJS
X0JBRE1BR0lDLAorICoJLUZEVF9FUlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRF
LAorICoJLUZEVF9FUlJfQkFEU1RSVUNUVVJFLCBzdGFuZGFyZCBtZWFuaW5ncworICovCitpbnQg
ZmR0X25vZGVfY2hlY2tfY29tcGF0aWJsZShjb25zdCB2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0
LAorCQkJICAgICAgY29uc3QgY2hhciAqY29tcGF0aWJsZSk7CisKKy8qKgorICogZmR0X25vZGVf
b2Zmc2V0X2J5X2NvbXBhdGlibGUgLSBmaW5kIG5vZGVzIHdpdGggYSBnaXZlbiAnY29tcGF0aWJs
ZScgdmFsdWUKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IKKyAqIEBz
dGFydG9mZnNldDogb25seSBmaW5kIG5vZGVzIGFmdGVyIHRoaXMgb2Zmc2V0CisgKiBAY29tcGF0
aWJsZTogJ2NvbXBhdGlibGUnIHN0cmluZyB0byBtYXRjaCBhZ2FpbnN0CisgKgorICogZmR0X25v
ZGVfb2Zmc2V0X2J5X2NvbXBhdGlibGUoKSByZXR1cm5zIHRoZSBvZmZzZXQgb2YgdGhlIGZpcnN0
CisgKiBub2RlIGFmdGVyIHN0YXJ0b2Zmc2V0LCB3aGljaCBoYXMgYSAnY29tcGF0aWJsZScgcHJv
cGVydHkgd2hpY2gKKyAqIGxpc3RzIHRoZSBnaXZlbiBjb21wYXRpYmxlIHN0cmluZzsgb3IgaWYg
c3RhcnRvZmZzZXQgaXMgLTEsIHRoZQorICogdmVyeSBmaXJzdCBzdWNoIG5vZGUgaW4gdGhlIHRy
ZWUuCisgKgorICogVG8gaXRlcmF0ZSB0aHJvdWdoIGFsbCBub2RlcyBtYXRjaGluZyB0aGUgY3Jp
dGVyaW9uLCB0aGUgZm9sbG93aW5nCisgKiBpZGlvbSBjYW4gYmUgdXNlZDoKKyAqCW9mZnNldCA9
IGZkdF9ub2RlX29mZnNldF9ieV9jb21wYXRpYmxlKGZkdCwgLTEsIGNvbXBhdGlibGUpOworICoJ
d2hpbGUgKG9mZnNldCAhPSAtRkRUX0VSUl9OT1RGT1VORCkgeworICoJCS8vIG90aGVyIGNvZGUg
aGVyZQorICoJCW9mZnNldCA9IGZkdF9ub2RlX29mZnNldF9ieV9jb21wYXRpYmxlKGZkdCwgb2Zm
c2V0LCBjb21wYXRpYmxlKTsKKyAqCX0KKyAqCisgKiBOb3RlIHRoZSAtMSBpbiB0aGUgZmlyc3Qg
Y2FsbCB0byB0aGUgZnVuY3Rpb24sIGlmIDAgaXMgdXNlZCBoZXJlCisgKiBpbnN0ZWFkLCB0aGUg
ZnVuY3Rpb24gd2lsbCBuZXZlciBsb2NhdGUgdGhlIHJvb3Qgbm9kZSwgZXZlbiBpZiBpdAorICog
bWF0Y2hlcyB0aGUgY3JpdGVyaW9uLgorICoKKyAqIHJldHVybnM6CisgKglzdHJ1Y3R1cmUgYmxv
Y2sgb2Zmc2V0IG9mIHRoZSBsb2NhdGVkIG5vZGUgKD49IDAsID5zdGFydG9mZnNldCksCisgKgkJ
IG9uIHN1Y2Nlc3MKKyAqCS1GRFRfRVJSX05PVEZPVU5ELCBubyBub2RlIG1hdGNoaW5nIHRoZSBj
cml0ZXJpb24gZXhpc3RzIGluIHRoZQorICoJCXRyZWUgYWZ0ZXIgc3RhcnRvZmZzZXQKKyAqCS1G
RFRfRVJSX0JBRE9GRlNFVCwgbm9kZW9mZnNldCBkb2VzIG5vdCByZWZlciB0byBhIEJFR0lOX05P
REUgdGFnCisgKgktRkRUX0VSUl9CQURNQUdJQywKKyAqCS1GRFRfRVJSX0JBRFZFUlNJT04sCisg
KgktRkRUX0VSUl9CQURTVEFURSwKKyAqCS1GRFRfRVJSX0JBRFNUUlVDVFVSRSwgc3RhbmRhcmQg
bWVhbmluZ3MKKyAqLworaW50IGZkdF9ub2RlX29mZnNldF9ieV9jb21wYXRpYmxlKGNvbnN0IHZv
aWQgKmZkdCwgaW50IHN0YXJ0b2Zmc2V0LAorCQkJCSAgY29uc3QgY2hhciAqY29tcGF0aWJsZSk7
CisKKy8qKgorICogZmR0X3N0cmluZ2xpc3RfY29udGFpbnMgLSBjaGVjayBhIHN0cmluZyBsaXN0
IHByb3BlcnR5IGZvciBhIHN0cmluZworICogQHN0cmxpc3Q6IFByb3BlcnR5IGNvbnRhaW5pbmcg
YSBsaXN0IG9mIHN0cmluZ3MgdG8gY2hlY2sKKyAqIEBsaXN0bGVuOiBMZW5ndGggb2YgcHJvcGVy
dHkKKyAqIEBzdHI6IFN0cmluZyB0byBzZWFyY2ggZm9yCisgKgorICogVGhpcyBpcyBhIHV0aWxp
dHkgZnVuY3Rpb24gcHJvdmlkZWQgZm9yIGNvbnZlbmllbmNlLiBUaGUgbGlzdCBjb250YWlucwor
ICogb25lIG9yIG1vcmUgc3RyaW5ncywgZWFjaCB0ZXJtaW5hdGVkIGJ5IFwwLCBhcyBpcyBmb3Vu
ZCBpbiBhIGRldmljZSB0cmVlCisgKiAiY29tcGF0aWJsZSIgcHJvcGVydHkuCisgKgorICogQHJl
dHVybjogMSBpZiB0aGUgc3RyaW5nIGlzIGZvdW5kIGluIHRoZSBsaXN0LCAwIG5vdCBmb3VuZCwg
b3IgaW52YWxpZCBsaXN0CisgKi8KK2ludCBmZHRfc3RyaW5nbGlzdF9jb250YWlucyhjb25zdCBj
aGFyICpzdHJsaXN0LCBpbnQgbGlzdGxlbiwgY29uc3QgY2hhciAqc3RyKTsKKworLyoqCisgKiBm
ZHRfc3RyaW5nbGlzdF9jb3VudCAtIGNvdW50IHRoZSBudW1iZXIgb2Ygc3RyaW5ncyBpbiBhIHN0
cmluZyBsaXN0CisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBA
bm9kZW9mZnNldDogb2Zmc2V0IG9mIGEgdHJlZSBub2RlCisgKiBAcHJvcGVydHk6IG5hbWUgb2Yg
dGhlIHByb3BlcnR5IGNvbnRhaW5pbmcgdGhlIHN0cmluZyBsaXN0CisgKiBAcmV0dXJuOgorICog
ICB0aGUgbnVtYmVyIG9mIHN0cmluZ3MgaW4gdGhlIGdpdmVuIHByb3BlcnR5CisgKiAgIC1GRFRf
RVJSX0JBRFZBTFVFIGlmIHRoZSBwcm9wZXJ0eSB2YWx1ZSBpcyBub3QgTlVMLXRlcm1pbmF0ZWQK
KyAqICAgLUZEVF9FUlJfTk9URk9VTkQgaWYgdGhlIHByb3BlcnR5IGRvZXMgbm90IGV4aXN0Cisg
Ki8KK2ludCBmZHRfc3RyaW5nbGlzdF9jb3VudChjb25zdCB2b2lkICpmZHQsIGludCBub2Rlb2Zm
c2V0LCBjb25zdCBjaGFyICpwcm9wZXJ0eSk7CisKKy8qKgorICogZmR0X3N0cmluZ2xpc3Rfc2Vh
cmNoIC0gZmluZCBhIHN0cmluZyBpbiBhIHN0cmluZyBsaXN0IGFuZCByZXR1cm4gaXRzIGluZGV4
CisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNl
dDogb2Zmc2V0IG9mIGEgdHJlZSBub2RlCisgKiBAcHJvcGVydHk6IG5hbWUgb2YgdGhlIHByb3Bl
cnR5IGNvbnRhaW5pbmcgdGhlIHN0cmluZyBsaXN0CisgKiBAc3RyaW5nOiBzdHJpbmcgdG8gbG9v
ayB1cCBpbiB0aGUgc3RyaW5nIGxpc3QKKyAqCisgKiBOb3RlIHRoYXQgaXQgaXMgcG9zc2libGUg
Zm9yIHRoaXMgZnVuY3Rpb24gdG8gc3VjY2VlZCBvbiBwcm9wZXJ0eSB2YWx1ZXMKKyAqIHRoYXQg
YXJlIG5vdCBOVUwtdGVybWluYXRlZC4gVGhhdCdzIGJlY2F1c2UgdGhlIGZ1bmN0aW9uIHdpbGwg
c3RvcCBhZnRlcgorICogZmluZGluZyB0aGUgZmlyc3Qgb2NjdXJyZW5jZSBvZiBAc3RyaW5nLiBU
aGlzIGNhbiBmb3IgZXhhbXBsZSBoYXBwZW4gd2l0aAorICogc21hbGwtdmFsdWVkIGNlbGwgcHJv
cGVydGllcywgc3VjaCBhcyAjYWRkcmVzcy1jZWxscywgd2hlbiBzZWFyY2hpbmcgZm9yCisgKiB0
aGUgZW1wdHkgc3RyaW5nLgorICoKKyAqIEByZXR1cm46CisgKiAgIHRoZSBpbmRleCBvZiB0aGUg
c3RyaW5nIGluIHRoZSBsaXN0IG9mIHN0cmluZ3MKKyAqICAgLUZEVF9FUlJfQkFEVkFMVUUgaWYg
dGhlIHByb3BlcnR5IHZhbHVlIGlzIG5vdCBOVUwtdGVybWluYXRlZAorICogICAtRkRUX0VSUl9O
T1RGT1VORCBpZiB0aGUgcHJvcGVydHkgZG9lcyBub3QgZXhpc3Qgb3IgZG9lcyBub3QgY29udGFp
bgorICogICAgICAgICAgICAgICAgICAgICB0aGUgZ2l2ZW4gc3RyaW5nCisgKi8KK2ludCBmZHRf
c3RyaW5nbGlzdF9zZWFyY2goY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwgY29uc3Qg
Y2hhciAqcHJvcGVydHksCisJCQkgIGNvbnN0IGNoYXIgKnN0cmluZyk7CisKKy8qKgorICogZmR0
X3N0cmluZ2xpc3RfZ2V0KCkgLSBvYnRhaW4gdGhlIHN0cmluZyBhdCBhIGdpdmVuIGluZGV4IGlu
IGEgc3RyaW5nIGxpc3QKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IK
KyAqIEBub2Rlb2Zmc2V0OiBvZmZzZXQgb2YgYSB0cmVlIG5vZGUKKyAqIEBwcm9wZXJ0eTogbmFt
ZSBvZiB0aGUgcHJvcGVydHkgY29udGFpbmluZyB0aGUgc3RyaW5nIGxpc3QKKyAqIEBpbmRleDog
aW5kZXggb2YgdGhlIHN0cmluZyB0byByZXR1cm4KKyAqIEBsZW5wOiByZXR1cm4gbG9jYXRpb24g
Zm9yIHRoZSBzdHJpbmcgbGVuZ3RoIG9yIGFuIGVycm9yIGNvZGUgb24gZmFpbHVyZQorICoKKyAq
IE5vdGUgdGhhdCB0aGlzIHdpbGwgc3VjY2Vzc2Z1bGx5IGV4dHJhY3Qgc3RyaW5ncyBmcm9tIHBy
b3BlcnRpZXMgd2l0aAorICogbm9uLU5VTC10ZXJtaW5hdGVkIHZhbHVlcy4gRm9yIGV4YW1wbGUg
b24gc21hbGwtdmFsdWVkIGNlbGwgcHJvcGVydGllcworICogdGhpcyBmdW5jdGlvbiB3aWxsIHJl
dHVybiB0aGUgZW1wdHkgc3RyaW5nLgorICoKKyAqIElmIG5vbi1OVUxMLCB0aGUgbGVuZ3RoIG9m
IHRoZSBzdHJpbmcgKG9uIHN1Y2Nlc3MpIG9yIGEgbmVnYXRpdmUgZXJyb3ItY29kZQorICogKG9u
IGZhaWx1cmUpIHdpbGwgYmUgc3RvcmVkIGluIHRoZSBpbnRlZ2VyIHBvaW50ZXIgdG8gYnkgbGVu
cC4KKyAqCisgKiBAcmV0dXJuOgorICogICBBIHBvaW50ZXIgdG8gdGhlIHN0cmluZyBhdCB0aGUg
Z2l2ZW4gaW5kZXggaW4gdGhlIHN0cmluZyBsaXN0IG9yIE5VTEwgb24KKyAqICAgZmFpbHVyZS4g
T24gc3VjY2VzcyB0aGUgbGVuZ3RoIG9mIHRoZSBzdHJpbmcgd2lsbCBiZSBzdG9yZWQgaW4gdGhl
IG1lbW9yeQorICogICBsb2NhdGlvbiBwb2ludGVkIHRvIGJ5IHRoZSBsZW5wIHBhcmFtZXRlciwg
aWYgbm9uLU5VTEwuIE9uIGZhaWx1cmUgb25lIG9mCisgKiAgIHRoZSBmb2xsb3dpbmcgbmVnYXRp
dmUgZXJyb3IgY29kZXMgd2lsbCBiZSByZXR1cm5lZCBpbiB0aGUgbGVucCBwYXJhbWV0ZXIKKyAq
ICAgKGlmIG5vbi1OVUxMKToKKyAqICAgICAtRkRUX0VSUl9CQURWQUxVRSBpZiB0aGUgcHJvcGVy
dHkgdmFsdWUgaXMgbm90IE5VTC10ZXJtaW5hdGVkCisgKiAgICAgLUZEVF9FUlJfTk9URk9VTkQg
aWYgdGhlIHByb3BlcnR5IGRvZXMgbm90IGV4aXN0CisgKi8KK2NvbnN0IGNoYXIgKmZkdF9zdHJp
bmdsaXN0X2dldChjb25zdCB2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0LAorCQkJICAgICAgIGNv
bnN0IGNoYXIgKnByb3BlcnR5LCBpbnQgaW5kZXgsCisJCQkgICAgICAgaW50ICpsZW5wKTsKKwor
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCisvKiBSZWFkLW9ubHkgZnVuY3Rpb25zIChhZGRyZXNzaW5nIHJlbGF0
ZWQpICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisvKioK
KyAqIEZEVF9NQVhfTkNFTExTIC0gbWF4aW11bSB2YWx1ZSBmb3IgI2FkZHJlc3MtY2VsbHMgYW5k
ICNzaXplLWNlbGxzCisgKgorICogVGhpcyBpcyB0aGUgbWF4aW11bSB2YWx1ZSBmb3IgI2FkZHJl
c3MtY2VsbHMsICNzaXplLWNlbGxzIGFuZAorICogc2ltaWxhciBwcm9wZXJ0aWVzIHRoYXQgd2ls
bCBiZSBwcm9jZXNzZWQgYnkgbGliZmR0LiAgSUVFMTI3NQorICogcmVxdWlyZXMgdGhhdCBPRiBp
bXBsZW1lbnRhdGlvbnMgaGFuZGxlIHZhbHVlcyB1cCB0byA0LgorICogSW1wbGVtZW50YXRpb25z
IG1heSBzdXBwb3J0IGxhcmdlciB2YWx1ZXMsIGJ1dCBpbiBwcmFjdGljZSBoaWdoZXIKKyAqIHZh
bHVlcyBhcmVuJ3QgdXNlZC4KKyAqLworI2RlZmluZSBGRFRfTUFYX05DRUxMUwkJNAorCisvKioK
KyAqIGZkdF9hZGRyZXNzX2NlbGxzIC0gcmV0cmlldmUgYWRkcmVzcyBzaXplIGZvciBhIGJ1cyBy
ZXByZXNlbnRlZCBpbiB0aGUgdHJlZQorICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNlIHRy
ZWUgYmxvYgorICogQG5vZGVvZmZzZXQ6IG9mZnNldCBvZiB0aGUgbm9kZSB0byBmaW5kIHRoZSBh
ZGRyZXNzIHNpemUgZm9yCisgKgorICogV2hlbiB0aGUgbm9kZSBoYXMgYSB2YWxpZCAjYWRkcmVz
cy1jZWxscyBwcm9wZXJ0eSwgcmV0dXJucyBpdHMgdmFsdWUuCisgKgorICogcmV0dXJuczoKKyAq
CTAgPD0gbiA8IEZEVF9NQVhfTkNFTExTLCBvbiBzdWNjZXNzCisgKiAgICAgIDIsIGlmIHRoZSBu
b2RlIGhhcyBubyAjYWRkcmVzcy1jZWxscyBwcm9wZXJ0eQorICogICAgICAtRkRUX0VSUl9CQURO
Q0VMTFMsIGlmIHRoZSBub2RlIGhhcyBhIGJhZGx5IGZvcm1hdHRlZCBvciBpbnZhbGlkCisgKgkJ
I2FkZHJlc3MtY2VsbHMgcHJvcGVydHkKKyAqCS1GRFRfRVJSX0JBRE1BR0lDLAorICoJLUZEVF9F
UlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJLUZEVF9FUlJfQkFEU1RS
VUNUVVJFLAorICoJLUZEVF9FUlJfVFJVTkNBVEVELCBzdGFuZGFyZCBtZWFuaW5ncworICovCitp
bnQgZmR0X2FkZHJlc3NfY2VsbHMoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCk7CisK
Ky8qKgorICogZmR0X3NpemVfY2VsbHMgLSByZXRyaWV2ZSBhZGRyZXNzIHJhbmdlIHNpemUgZm9y
IGEgYnVzIHJlcHJlc2VudGVkIGluIHRoZQorICogICAgICAgICAgICAgICAgICB0cmVlCisgKiBA
ZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogb2Zm
c2V0IG9mIHRoZSBub2RlIHRvIGZpbmQgdGhlIGFkZHJlc3MgcmFuZ2Ugc2l6ZSBmb3IKKyAqCisg
KiBXaGVuIHRoZSBub2RlIGhhcyBhIHZhbGlkICNzaXplLWNlbGxzIHByb3BlcnR5LCByZXR1cm5z
IGl0cyB2YWx1ZS4KKyAqCisgKiByZXR1cm5zOgorICoJMCA8PSBuIDwgRkRUX01BWF9OQ0VMTFMs
IG9uIHN1Y2Nlc3MKKyAqICAgICAgMiwgaWYgdGhlIG5vZGUgaGFzIG5vICNhZGRyZXNzLWNlbGxz
IHByb3BlcnR5CisgKiAgICAgIC1GRFRfRVJSX0JBRE5DRUxMUywgaWYgdGhlIG5vZGUgaGFzIGEg
YmFkbHkgZm9ybWF0dGVkIG9yIGludmFsaWQKKyAqCQkjc2l6ZS1jZWxscyBwcm9wZXJ0eQorICoJ
LUZEVF9FUlJfQkFETUFHSUMsCisgKgktRkRUX0VSUl9CQURWRVJTSU9OLAorICoJLUZEVF9FUlJf
QkFEU1RBVEUsCisgKgktRkRUX0VSUl9CQURTVFJVQ1RVUkUsCisgKgktRkRUX0VSUl9UUlVOQ0FU
RUQsIHN0YW5kYXJkIG1lYW5pbmdzCisgKi8KK2ludCBmZHRfc2l6ZV9jZWxscyhjb25zdCB2b2lk
ICpmZHQsIGludCBub2Rlb2Zmc2V0KTsKKworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qIFdyaXRlLWlu
LXBsYWNlIGZ1bmN0aW9ucyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCisKKy8qKgorICogZmR0X3NldHByb3BfaW5wbGFjZV9uYW1l
bGVuX3BhcnRpYWwgLSBjaGFuZ2UgYSBwcm9wZXJ0eSdzIHZhbHVlLAorICogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBidXQgbm90IGl0cyBzaXplCisgKiBAZmR0OiBwb2lu
dGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogb2Zmc2V0IG9mIHRo
ZSBub2RlIHdob3NlIHByb3BlcnR5IHRvIGNoYW5nZQorICogQG5hbWU6IG5hbWUgb2YgdGhlIHBy
b3BlcnR5IHRvIGNoYW5nZQorICogQG5hbWVsZW46IG51bWJlciBvZiBjaGFyYWN0ZXJzIG9mIG5h
bWUgdG8gY29uc2lkZXIKKyAqIEBpZHg6IGluZGV4IG9mIHRoZSBwcm9wZXJ0eSB0byBjaGFuZ2Ug
aW4gdGhlIGFycmF5CisgKiBAdmFsOiBwb2ludGVyIHRvIGRhdGEgdG8gcmVwbGFjZSB0aGUgcHJv
cGVydHkgdmFsdWUgd2l0aAorICogQGxlbjogbGVuZ3RoIG9mIHRoZSBwcm9wZXJ0eSB2YWx1ZQor
ICoKKyAqIElkZW50aWNhbCB0byBmZHRfc2V0cHJvcF9pbnBsYWNlKCksIGJ1dCBtb2RpZmllcyB0
aGUgZ2l2ZW4gcHJvcGVydHkKKyAqIHN0YXJ0aW5nIGZyb20gdGhlIGdpdmVuIGluZGV4LCBhbmQg
dXNpbmcgb25seSB0aGUgZmlyc3QgY2hhcmFjdGVycworICogb2YgdGhlIG5hbWUuIEl0IGlzIHVz
ZWZ1bCB3aGVuIHlvdSB3YW50IHRvIG1hbmlwdWxhdGUgb25seSBvbmUgdmFsdWUgb2YKKyAqIGFu
IGFycmF5IGFuZCB5b3UgaGF2ZSBhIHN0cmluZyB0aGF0IGRvZXNuJ3QgZW5kIHdpdGggXDAuCisg
Ki8KKyNpZm5kZWYgU1dJRyAvKiBOb3QgYXZhaWxhYmxlIGluIFB5dGhvbiAqLworaW50IGZkdF9z
ZXRwcm9wX2lucGxhY2VfbmFtZWxlbl9wYXJ0aWFsKHZvaWQgKmZkdCwgaW50IG5vZGVvZmZzZXQs
CisJCQkJCWNvbnN0IGNoYXIgKm5hbWUsIGludCBuYW1lbGVuLAorCQkJCQl1aW50MzJfdCBpZHgs
IGNvbnN0IHZvaWQgKnZhbCwKKwkJCQkJaW50IGxlbik7CisjZW5kaWYKKworLyoqCisgKiBmZHRf
c2V0cHJvcF9pbnBsYWNlIC0gY2hhbmdlIGEgcHJvcGVydHkncyB2YWx1ZSwgYnV0IG5vdCBpdHMg
c2l6ZQorICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNlIHRyZWUgYmxvYgorICogQG5vZGVv
ZmZzZXQ6IG9mZnNldCBvZiB0aGUgbm9kZSB3aG9zZSBwcm9wZXJ0eSB0byBjaGFuZ2UKKyAqIEBu
YW1lOiBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byBjaGFuZ2UKKyAqIEB2YWw6IHBvaW50ZXIgdG8g
ZGF0YSB0byByZXBsYWNlIHRoZSBwcm9wZXJ0eSB2YWx1ZSB3aXRoCisgKiBAbGVuOiBsZW5ndGgg
b2YgdGhlIHByb3BlcnR5IHZhbHVlCisgKgorICogZmR0X3NldHByb3BfaW5wbGFjZSgpIHJlcGxh
Y2VzIHRoZSB2YWx1ZSBvZiBhIGdpdmVuIHByb3BlcnR5IHdpdGgKKyAqIHRoZSBkYXRhIGluIHZh
bCwgb2YgbGVuZ3RoIGxlbi4gIFRoaXMgZnVuY3Rpb24gY2Fubm90IGNoYW5nZSB0aGUKKyAqIHNp
emUgb2YgYSBwcm9wZXJ0eSwgYW5kIHNvIHdpbGwgb25seSB3b3JrIGlmIGxlbiBpcyBlcXVhbCB0
byB0aGUKKyAqIGN1cnJlbnQgbGVuZ3RoIG9mIHRoZSBwcm9wZXJ0eS4KKyAqCisgKiBUaGlzIGZ1
bmN0aW9uIHdpbGwgYWx0ZXIgb25seSB0aGUgYnl0ZXMgaW4gdGhlIGJsb2Igd2hpY2ggY29udGFp
bgorICogdGhlIGdpdmVuIHByb3BlcnR5IHZhbHVlLCBhbmQgd2lsbCBub3QgYWx0ZXIgb3IgbW92
ZSBhbnkgb3RoZXIgcGFydAorICogb2YgdGhlIHRyZWUuCisgKgorICogcmV0dXJuczoKKyAqCTAs
IG9uIHN1Y2Nlc3MKKyAqCS1GRFRfRVJSX05PU1BBQ0UsIGlmIGxlbiBpcyBub3QgZXF1YWwgdG8g
dGhlIHByb3BlcnR5J3MgY3VycmVudCBsZW5ndGgKKyAqCS1GRFRfRVJSX05PVEZPVU5ELCBub2Rl
IGRvZXMgbm90IGhhdmUgdGhlIG5hbWVkIHByb3BlcnR5CisgKgktRkRUX0VSUl9CQURPRkZTRVQs
IG5vZGVvZmZzZXQgZGlkIG5vdCBwb2ludCB0byBGRFRfQkVHSU5fTk9ERSB0YWcKKyAqCS1GRFRf
RVJSX0JBRE1BR0lDLAorICoJLUZEVF9FUlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRfRVJSX0JBRFNU
QVRFLAorICoJLUZEVF9FUlJfQkFEU1RSVUNUVVJFLAorICoJLUZEVF9FUlJfVFJVTkNBVEVELCBz
dGFuZGFyZCBtZWFuaW5ncworICovCisjaWZuZGVmIFNXSUcgLyogTm90IGF2YWlsYWJsZSBpbiBQ
eXRob24gKi8KK2ludCBmZHRfc2V0cHJvcF9pbnBsYWNlKHZvaWQgKmZkdCwgaW50IG5vZGVvZmZz
ZXQsIGNvbnN0IGNoYXIgKm5hbWUsCisJCQljb25zdCB2b2lkICp2YWwsIGludCBsZW4pOworI2Vu
ZGlmCisKKy8qKgorICogZmR0X3NldHByb3BfaW5wbGFjZV91MzIgLSBjaGFuZ2UgdGhlIHZhbHVl
IG9mIGEgMzItYml0IGludGVnZXIgcHJvcGVydHkKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRl
dmljZSB0cmVlIGJsb2IKKyAqIEBub2Rlb2Zmc2V0OiBvZmZzZXQgb2YgdGhlIG5vZGUgd2hvc2Ug
cHJvcGVydHkgdG8gY2hhbmdlCisgKiBAbmFtZTogbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gY2hh
bmdlCisgKiBAdmFsOiAzMi1iaXQgaW50ZWdlciB2YWx1ZSB0byByZXBsYWNlIHRoZSBwcm9wZXJ0
eSB3aXRoCisgKgorICogZmR0X3NldHByb3BfaW5wbGFjZV91MzIoKSByZXBsYWNlcyB0aGUgdmFs
dWUgb2YgYSBnaXZlbiBwcm9wZXJ0eQorICogd2l0aCB0aGUgMzItYml0IGludGVnZXIgdmFsdWUg
aW4gdmFsLCBjb252ZXJ0aW5nIHZhbCB0byBiaWctZW5kaWFuCisgKiBpZiBuZWNlc3NhcnkuICBU
aGlzIGZ1bmN0aW9uIGNhbm5vdCBjaGFuZ2UgdGhlIHNpemUgb2YgYSBwcm9wZXJ0eSwKKyAqIGFu
ZCBzbyB3aWxsIG9ubHkgd29yayBpZiB0aGUgcHJvcGVydHkgYWxyZWFkeSBleGlzdHMgYW5kIGhh
cyBsZW5ndGgKKyAqIDQuCisgKgorICogVGhpcyBmdW5jdGlvbiB3aWxsIGFsdGVyIG9ubHkgdGhl
IGJ5dGVzIGluIHRoZSBibG9iIHdoaWNoIGNvbnRhaW4KKyAqIHRoZSBnaXZlbiBwcm9wZXJ0eSB2
YWx1ZSwgYW5kIHdpbGwgbm90IGFsdGVyIG9yIG1vdmUgYW55IG90aGVyIHBhcnQKKyAqIG9mIHRo
ZSB0cmVlLgorICoKKyAqIHJldHVybnM6CisgKgkwLCBvbiBzdWNjZXNzCisgKgktRkRUX0VSUl9O
T1NQQUNFLCBpZiB0aGUgcHJvcGVydHkncyBsZW5ndGggaXMgbm90IGVxdWFsIHRvIDQKKyAqCS1G
RFRfRVJSX05PVEZPVU5ELCBub2RlIGRvZXMgbm90IGhhdmUgdGhlIG5hbWVkIHByb3BlcnR5Cisg
KgktRkRUX0VSUl9CQURPRkZTRVQsIG5vZGVvZmZzZXQgZGlkIG5vdCBwb2ludCB0byBGRFRfQkVH
SU5fTk9ERSB0YWcKKyAqCS1GRFRfRVJSX0JBRE1BR0lDLAorICoJLUZEVF9FUlJfQkFEVkVSU0lP
TiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJLUZEVF9FUlJfQkFEU1RSVUNUVVJFLAorICoJ
LUZEVF9FUlJfVFJVTkNBVEVELCBzdGFuZGFyZCBtZWFuaW5ncworICovCitzdGF0aWMgaW5saW5l
IGludCBmZHRfc2V0cHJvcF9pbnBsYWNlX3UzMih2b2lkICpmZHQsIGludCBub2Rlb2Zmc2V0LAor
CQkJCQkgIGNvbnN0IGNoYXIgKm5hbWUsIHVpbnQzMl90IHZhbCkKK3sKKwlmZHQzMl90IHRtcCA9
IGNwdV90b19mZHQzMih2YWwpOworCXJldHVybiBmZHRfc2V0cHJvcF9pbnBsYWNlKGZkdCwgbm9k
ZW9mZnNldCwgbmFtZSwgJnRtcCwgc2l6ZW9mKHRtcCkpOworfQorCisvKioKKyAqIGZkdF9zZXRw
cm9wX2lucGxhY2VfdTY0IC0gY2hhbmdlIHRoZSB2YWx1ZSBvZiBhIDY0LWJpdCBpbnRlZ2VyIHBy
b3BlcnR5CisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9k
ZW9mZnNldDogb2Zmc2V0IG9mIHRoZSBub2RlIHdob3NlIHByb3BlcnR5IHRvIGNoYW5nZQorICog
QG5hbWU6IG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGNoYW5nZQorICogQHZhbDogNjQtYml0IGlu
dGVnZXIgdmFsdWUgdG8gcmVwbGFjZSB0aGUgcHJvcGVydHkgd2l0aAorICoKKyAqIGZkdF9zZXRw
cm9wX2lucGxhY2VfdTY0KCkgcmVwbGFjZXMgdGhlIHZhbHVlIG9mIGEgZ2l2ZW4gcHJvcGVydHkK
KyAqIHdpdGggdGhlIDY0LWJpdCBpbnRlZ2VyIHZhbHVlIGluIHZhbCwgY29udmVydGluZyB2YWwg
dG8gYmlnLWVuZGlhbgorICogaWYgbmVjZXNzYXJ5LiAgVGhpcyBmdW5jdGlvbiBjYW5ub3QgY2hh
bmdlIHRoZSBzaXplIG9mIGEgcHJvcGVydHksCisgKiBhbmQgc28gd2lsbCBvbmx5IHdvcmsgaWYg
dGhlIHByb3BlcnR5IGFscmVhZHkgZXhpc3RzIGFuZCBoYXMgbGVuZ3RoCisgKiA4LgorICoKKyAq
IFRoaXMgZnVuY3Rpb24gd2lsbCBhbHRlciBvbmx5IHRoZSBieXRlcyBpbiB0aGUgYmxvYiB3aGlj
aCBjb250YWluCisgKiB0aGUgZ2l2ZW4gcHJvcGVydHkgdmFsdWUsIGFuZCB3aWxsIG5vdCBhbHRl
ciBvciBtb3ZlIGFueSBvdGhlciBwYXJ0CisgKiBvZiB0aGUgdHJlZS4KKyAqCisgKiByZXR1cm5z
OgorICoJMCwgb24gc3VjY2VzcworICoJLUZEVF9FUlJfTk9TUEFDRSwgaWYgdGhlIHByb3BlcnR5
J3MgbGVuZ3RoIGlzIG5vdCBlcXVhbCB0byA4CisgKgktRkRUX0VSUl9OT1RGT1VORCwgbm9kZSBk
b2VzIG5vdCBoYXZlIHRoZSBuYW1lZCBwcm9wZXJ0eQorICoJLUZEVF9FUlJfQkFET0ZGU0VULCBu
b2Rlb2Zmc2V0IGRpZCBub3QgcG9pbnQgdG8gRkRUX0JFR0lOX05PREUgdGFnCisgKgktRkRUX0VS
Ul9CQURNQUdJQywKKyAqCS1GRFRfRVJSX0JBRFZFUlNJT04sCisgKgktRkRUX0VSUl9CQURTVEFU
RSwKKyAqCS1GRFRfRVJSX0JBRFNUUlVDVFVSRSwKKyAqCS1GRFRfRVJSX1RSVU5DQVRFRCwgc3Rh
bmRhcmQgbWVhbmluZ3MKKyAqLworc3RhdGljIGlubGluZSBpbnQgZmR0X3NldHByb3BfaW5wbGFj
ZV91NjQodm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwKKwkJCQkJICBjb25zdCBjaGFyICpuYW1l
LCB1aW50NjRfdCB2YWwpCit7CisJZmR0NjRfdCB0bXAgPSBjcHVfdG9fZmR0NjQodmFsKTsKKwly
ZXR1cm4gZmR0X3NldHByb3BfaW5wbGFjZShmZHQsIG5vZGVvZmZzZXQsIG5hbWUsICZ0bXAsIHNp
emVvZih0bXApKTsKK30KKworLyoqCisgKiBmZHRfc2V0cHJvcF9pbnBsYWNlX2NlbGwgLSBjaGFu
Z2UgdGhlIHZhbHVlIG9mIGEgc2luZ2xlLWNlbGwgcHJvcGVydHkKKyAqCisgKiBUaGlzIGlzIGFu
IGFsdGVybmF0aXZlIG5hbWUgZm9yIGZkdF9zZXRwcm9wX2lucGxhY2VfdTMyKCkKKyAqLworc3Rh
dGljIGlubGluZSBpbnQgZmR0X3NldHByb3BfaW5wbGFjZV9jZWxsKHZvaWQgKmZkdCwgaW50IG5v
ZGVvZmZzZXQsCisJCQkJCSAgIGNvbnN0IGNoYXIgKm5hbWUsIHVpbnQzMl90IHZhbCkKK3sKKwly
ZXR1cm4gZmR0X3NldHByb3BfaW5wbGFjZV91MzIoZmR0LCBub2Rlb2Zmc2V0LCBuYW1lLCB2YWwp
OworfQorCisvKioKKyAqIGZkdF9ub3BfcHJvcGVydHkgLSByZXBsYWNlIGEgcHJvcGVydHkgd2l0
aCBub3AgdGFncworICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNlIHRyZWUgYmxvYgorICog
QG5vZGVvZmZzZXQ6IG9mZnNldCBvZiB0aGUgbm9kZSB3aG9zZSBwcm9wZXJ0eSB0byBub3AKKyAq
IEBuYW1lOiBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byBub3AKKyAqCisgKiBmZHRfbm9wX3Byb3Bl
cnR5KCkgd2lsbCByZXBsYWNlIGEgZ2l2ZW4gcHJvcGVydHkncyByZXByZXNlbnRhdGlvbgorICog
aW4gdGhlIGJsb2Igd2l0aCBGRFRfTk9QIHRhZ3MsIGVmZmVjdGl2ZWx5IHJlbW92aW5nIGl0IGZy
b20gdGhlCisgKiB0cmVlLgorICoKKyAqIFRoaXMgZnVuY3Rpb24gd2lsbCBhbHRlciBvbmx5IHRo
ZSBieXRlcyBpbiB0aGUgYmxvYiB3aGljaCBjb250YWluCisgKiB0aGUgcHJvcGVydHksIGFuZCB3
aWxsIG5vdCBhbHRlciBvciBtb3ZlIGFueSBvdGhlciBwYXJ0IG9mIHRoZQorICogdHJlZS4KKyAq
CisgKiByZXR1cm5zOgorICoJMCwgb24gc3VjY2VzcworICoJLUZEVF9FUlJfTk9URk9VTkQsIG5v
ZGUgZG9lcyBub3QgaGF2ZSB0aGUgbmFtZWQgcHJvcGVydHkKKyAqCS1GRFRfRVJSX0JBRE9GRlNF
VCwgbm9kZW9mZnNldCBkaWQgbm90IHBvaW50IHRvIEZEVF9CRUdJTl9OT0RFIHRhZworICoJLUZE
VF9FUlJfQkFETUFHSUMsCisgKgktRkRUX0VSUl9CQURWRVJTSU9OLAorICoJLUZEVF9FUlJfQkFE
U1RBVEUsCisgKgktRkRUX0VSUl9CQURTVFJVQ1RVUkUsCisgKgktRkRUX0VSUl9UUlVOQ0FURUQs
IHN0YW5kYXJkIG1lYW5pbmdzCisgKi8KK2ludCBmZHRfbm9wX3Byb3BlcnR5KHZvaWQgKmZkdCwg
aW50IG5vZGVvZmZzZXQsIGNvbnN0IGNoYXIgKm5hbWUpOworCisvKioKKyAqIGZkdF9ub3Bfbm9k
ZSAtIHJlcGxhY2UgYSBub2RlIChzdWJ0cmVlKSB3aXRoIG5vcCB0YWdzCisgKiBAZmR0OiBwb2lu
dGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogb2Zmc2V0IG9mIHRo
ZSBub2RlIHRvIG5vcAorICoKKyAqIGZkdF9ub3Bfbm9kZSgpIHdpbGwgcmVwbGFjZSBhIGdpdmVu
IG5vZGUncyByZXByZXNlbnRhdGlvbiBpbiB0aGUKKyAqIGJsb2IsIGluY2x1ZGluZyBhbGwgaXRz
IHN1Ym5vZGVzLCBpZiBhbnksIHdpdGggRkRUX05PUCB0YWdzLAorICogZWZmZWN0aXZlbHkgcmVt
b3ZpbmcgaXQgZnJvbSB0aGUgdHJlZS4KKyAqCisgKiBUaGlzIGZ1bmN0aW9uIHdpbGwgYWx0ZXIg
b25seSB0aGUgYnl0ZXMgaW4gdGhlIGJsb2Igd2hpY2ggY29udGFpbgorICogdGhlIG5vZGUgYW5k
IGl0cyBwcm9wZXJ0aWVzIGFuZCBzdWJub2RlcywgYW5kIHdpbGwgbm90IGFsdGVyIG9yCisgKiBt
b3ZlIGFueSBvdGhlciBwYXJ0IG9mIHRoZSB0cmVlLgorICoKKyAqIHJldHVybnM6CisgKgkwLCBv
biBzdWNjZXNzCisgKgktRkRUX0VSUl9CQURPRkZTRVQsIG5vZGVvZmZzZXQgZGlkIG5vdCBwb2lu
dCB0byBGRFRfQkVHSU5fTk9ERSB0YWcKKyAqCS1GRFRfRVJSX0JBRE1BR0lDLAorICoJLUZEVF9F
UlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJLUZEVF9FUlJfQkFEU1RS
VUNUVVJFLAorICoJLUZEVF9FUlJfVFJVTkNBVEVELCBzdGFuZGFyZCBtZWFuaW5ncworICovCitp
bnQgZmR0X25vcF9ub2RlKHZvaWQgKmZkdCwgaW50IG5vZGVvZmZzZXQpOworCisvKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKi8KKy8qIFNlcXVlbnRpYWwgd3JpdGUgZnVuY3Rpb25zICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKK2ludCBmZHRfY3JlYXRl
KHZvaWQgKmJ1ZiwgaW50IGJ1ZnNpemUpOworaW50IGZkdF9yZXNpemUodm9pZCAqZmR0LCB2b2lk
ICpidWYsIGludCBidWZzaXplKTsKK2ludCBmZHRfYWRkX3Jlc2VydmVtYXBfZW50cnkodm9pZCAq
ZmR0LCB1aW50NjRfdCBhZGRyLCB1aW50NjRfdCBzaXplKTsKK2ludCBmZHRfZmluaXNoX3Jlc2Vy
dmVtYXAodm9pZCAqZmR0KTsKK2ludCBmZHRfYmVnaW5fbm9kZSh2b2lkICpmZHQsIGNvbnN0IGNo
YXIgKm5hbWUpOworaW50IGZkdF9wcm9wZXJ0eSh2b2lkICpmZHQsIGNvbnN0IGNoYXIgKm5hbWUs
IGNvbnN0IHZvaWQgKnZhbCwgaW50IGxlbik7CitzdGF0aWMgaW5saW5lIGludCBmZHRfcHJvcGVy
dHlfdTMyKHZvaWQgKmZkdCwgY29uc3QgY2hhciAqbmFtZSwgdWludDMyX3QgdmFsKQoreworCWZk
dDMyX3QgdG1wID0gY3B1X3RvX2ZkdDMyKHZhbCk7CisJcmV0dXJuIGZkdF9wcm9wZXJ0eShmZHQs
IG5hbWUsICZ0bXAsIHNpemVvZih0bXApKTsKK30KK3N0YXRpYyBpbmxpbmUgaW50IGZkdF9wcm9w
ZXJ0eV91NjQodm9pZCAqZmR0LCBjb25zdCBjaGFyICpuYW1lLCB1aW50NjRfdCB2YWwpCit7CisJ
ZmR0NjRfdCB0bXAgPSBjcHVfdG9fZmR0NjQodmFsKTsKKwlyZXR1cm4gZmR0X3Byb3BlcnR5KGZk
dCwgbmFtZSwgJnRtcCwgc2l6ZW9mKHRtcCkpOworfQorc3RhdGljIGlubGluZSBpbnQgZmR0X3By
b3BlcnR5X2NlbGwodm9pZCAqZmR0LCBjb25zdCBjaGFyICpuYW1lLCB1aW50MzJfdCB2YWwpCit7
CisJcmV0dXJuIGZkdF9wcm9wZXJ0eV91MzIoZmR0LCBuYW1lLCB2YWwpOworfQorCisvKioKKyAq
IGZkdF9wcm9wZXJ0eV9wbGFjZWhvbGRlciAtIGFkZCBhIG5ldyBwcm9wZXJ0eSBhbmQgcmV0dXJu
IGEgcHRyIHRvIGl0cyB2YWx1ZQorICoKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0
cmVlIGJsb2IKKyAqIEBuYW1lOiBuYW1lIG9mIHByb3BlcnR5IHRvIGFkZAorICogQGxlbjogbGVu
Z3RoIG9mIHByb3BlcnR5IHZhbHVlIGluIGJ5dGVzCisgKiBAdmFscDogcmV0dXJucyBhIHBvaW50
ZXIgdG8gd2hlcmUgd2hlcmUgdGhlIHZhbHVlIHNob3VsZCBiZSBwbGFjZWQKKyAqCisgKiByZXR1
cm5zOgorICoJMCwgb24gc3VjY2VzcworICoJLUZEVF9FUlJfQkFETUFHSUMsCisgKgktRkRUX0VS
Ul9OT1NQQUNFLCBzdGFuZGFyZCBtZWFuaW5ncworICovCitpbnQgZmR0X3Byb3BlcnR5X3BsYWNl
aG9sZGVyKHZvaWQgKmZkdCwgY29uc3QgY2hhciAqbmFtZSwgaW50IGxlbiwgdm9pZCAqKnZhbHAp
OworCisjZGVmaW5lIGZkdF9wcm9wZXJ0eV9zdHJpbmcoZmR0LCBuYW1lLCBzdHIpIFwKKwlmZHRf
cHJvcGVydHkoZmR0LCBuYW1lLCBzdHIsIHN0cmxlbihzdHIpKzEpCitpbnQgZmR0X2VuZF9ub2Rl
KHZvaWQgKmZkdCk7CitpbnQgZmR0X2ZpbmlzaCh2b2lkICpmZHQpOworCisvKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ki8KKy8qIFJlYWQtd3JpdGUgZnVuY3Rpb25zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKK2ludCBmZHRfY3JlYXRlX2Vt
cHR5X3RyZWUodm9pZCAqYnVmLCBpbnQgYnVmc2l6ZSk7CitpbnQgZmR0X29wZW5faW50byhjb25z
dCB2b2lkICpmZHQsIHZvaWQgKmJ1ZiwgaW50IGJ1ZnNpemUpOworaW50IGZkdF9wYWNrKHZvaWQg
KmZkdCk7CisKKy8qKgorICogZmR0X2FkZF9tZW1fcnN2IC0gYWRkIG9uZSBtZW1vcnkgcmVzZXJ2
ZSBtYXAgZW50cnkKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IKKyAq
IEBhZGRyZXNzLCBAc2l6ZTogNjQtYml0IHZhbHVlcyAobmF0aXZlIGVuZGlhbikKKyAqCisgKiBB
ZGRzIGEgcmVzZXJ2ZSBtYXAgZW50cnkgdG8gdGhlIGdpdmVuIGJsb2IgcmVzZXJ2aW5nIGEgcmVn
aW9uIGF0CisgKiBhZGRyZXNzIGFkZHJlc3Mgb2YgbGVuZ3RoIHNpemUuCisgKgorICogVGhpcyBm
dW5jdGlvbiB3aWxsIGluc2VydCBkYXRhIGludG8gdGhlIHJlc2VydmUgbWFwIGFuZCB3aWxsCisg
KiB0aGVyZWZvcmUgY2hhbmdlIHRoZSBpbmRleGVzIG9mIHNvbWUgZW50cmllcyBpbiB0aGUgdGFi
bGUuCisgKgorICogcmV0dXJuczoKKyAqCTAsIG9uIHN1Y2Nlc3MKKyAqCS1GRFRfRVJSX05PU1BB
Q0UsIHRoZXJlIGlzIGluc3VmZmljaWVudCBmcmVlIHNwYWNlIGluIHRoZSBibG9iIHRvCisgKgkJ
Y29udGFpbiB0aGUgbmV3IHJlc2VydmF0aW9uIGVudHJ5CisgKgktRkRUX0VSUl9CQURNQUdJQywK
KyAqCS1GRFRfRVJSX0JBRFZFUlNJT04sCisgKgktRkRUX0VSUl9CQURTVEFURSwKKyAqCS1GRFRf
RVJSX0JBRFNUUlVDVFVSRSwKKyAqCS1GRFRfRVJSX0JBRExBWU9VVCwKKyAqCS1GRFRfRVJSX1RS
VU5DQVRFRCwgc3RhbmRhcmQgbWVhbmluZ3MKKyAqLworaW50IGZkdF9hZGRfbWVtX3Jzdih2b2lk
ICpmZHQsIHVpbnQ2NF90IGFkZHJlc3MsIHVpbnQ2NF90IHNpemUpOworCisvKioKKyAqIGZkdF9k
ZWxfbWVtX3JzdiAtIHJlbW92ZSBhIG1lbW9yeSByZXNlcnZlIG1hcCBlbnRyeQorICogQGZkdDog
cG9pbnRlciB0byB0aGUgZGV2aWNlIHRyZWUgYmxvYgorICogQG46IGVudHJ5IHRvIHJlbW92ZQor
ICoKKyAqIGZkdF9kZWxfbWVtX3JzdigpIHJlbW92ZXMgdGhlIG4tdGggbWVtb3J5IHJlc2VydmUg
bWFwIGVudHJ5IGZyb20KKyAqIHRoZSBibG9iLgorICoKKyAqIFRoaXMgZnVuY3Rpb24gd2lsbCBk
ZWxldGUgZGF0YSBmcm9tIHRoZSByZXNlcnZhdGlvbiB0YWJsZSBhbmQgd2lsbAorICogdGhlcmVm
b3JlIGNoYW5nZSB0aGUgaW5kZXhlcyBvZiBzb21lIGVudHJpZXMgaW4gdGhlIHRhYmxlLgorICoK
KyAqIHJldHVybnM6CisgKgkwLCBvbiBzdWNjZXNzCisgKgktRkRUX0VSUl9OT1RGT1VORCwgdGhl
cmUgaXMgbm8gZW50cnkgb2YgdGhlIGdpdmVuIGluZGV4IChpLmUuIHRoZXJlCisgKgkJYXJlIGxl
c3MgdGhhbiBuKzEgcmVzZXJ2ZSBtYXAgZW50cmllcykKKyAqCS1GRFRfRVJSX0JBRE1BR0lDLAor
ICoJLUZEVF9FUlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJLUZEVF9F
UlJfQkFEU1RSVUNUVVJFLAorICoJLUZEVF9FUlJfQkFETEFZT1VULAorICoJLUZEVF9FUlJfVFJV
TkNBVEVELCBzdGFuZGFyZCBtZWFuaW5ncworICovCitpbnQgZmR0X2RlbF9tZW1fcnN2KHZvaWQg
KmZkdCwgaW50IG4pOworCisvKioKKyAqIGZkdF9zZXRfbmFtZSAtIGNoYW5nZSB0aGUgbmFtZSBv
ZiBhIGdpdmVuIG5vZGUKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IK
KyAqIEBub2Rlb2Zmc2V0OiBzdHJ1Y3R1cmUgYmxvY2sgb2Zmc2V0IG9mIGEgbm9kZQorICogQG5h
bWU6IG5hbWUgdG8gZ2l2ZSB0aGUgbm9kZQorICoKKyAqIGZkdF9zZXRfbmFtZSgpIHJlcGxhY2Vz
IHRoZSBuYW1lIChpbmNsdWRpbmcgdW5pdCBhZGRyZXNzLCBpZiBhbnkpCisgKiBvZiB0aGUgZ2l2
ZW4gbm9kZSB3aXRoIHRoZSBnaXZlbiBzdHJpbmcuICBOT1RFOiB0aGlzIGZ1bmN0aW9uIGNhbid0
CisgKiBlZmZpY2llbnRseSBjaGVjayBpZiB0aGUgbmV3IG5hbWUgaXMgdW5pcXVlIGFtb25nc3Qg
dGhlIGdpdmVuCisgKiBub2RlJ3Mgc2libGluZ3M7IHJlc3VsdHMgYXJlIHVuZGVmaW5lZCBpZiB0
aGlzIGZ1bmN0aW9uIGlzIGludm9rZWQKKyAqIHdpdGggYSBuYW1lIGVxdWFsIHRvIG9uZSBvZiB0
aGUgZ2l2ZW4gbm9kZSdzIHNpYmxpbmdzLgorICoKKyAqIFRoaXMgZnVuY3Rpb24gbWF5IGluc2Vy
dCBvciBkZWxldGUgZGF0YSBmcm9tIHRoZSBibG9iLCBhbmQgd2lsbAorICogdGhlcmVmb3JlIGNo
YW5nZSB0aGUgb2Zmc2V0cyBvZiBzb21lIGV4aXN0aW5nIG5vZGVzLgorICoKKyAqIHJldHVybnM6
CisgKgkwLCBvbiBzdWNjZXNzCisgKgktRkRUX0VSUl9OT1NQQUNFLCB0aGVyZSBpcyBpbnN1ZmZp
Y2llbnQgZnJlZSBzcGFjZSBpbiB0aGUgYmxvYgorICoJCXRvIGNvbnRhaW4gdGhlIG5ldyBuYW1l
CisgKgktRkRUX0VSUl9CQURPRkZTRVQsIG5vZGVvZmZzZXQgZGlkIG5vdCBwb2ludCB0byBGRFRf
QkVHSU5fTk9ERSB0YWcKKyAqCS1GRFRfRVJSX0JBRE1BR0lDLAorICoJLUZEVF9FUlJfQkFEVkVS
U0lPTiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLCBzdGFuZGFyZCBtZWFuaW5ncworICovCitpbnQg
ZmR0X3NldF9uYW1lKHZvaWQgKmZkdCwgaW50IG5vZGVvZmZzZXQsIGNvbnN0IGNoYXIgKm5hbWUp
OworCisvKioKKyAqIGZkdF9zZXRwcm9wIC0gY3JlYXRlIG9yIGNoYW5nZSBhIHByb3BlcnR5Cisg
KiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDog
b2Zmc2V0IG9mIHRoZSBub2RlIHdob3NlIHByb3BlcnR5IHRvIGNoYW5nZQorICogQG5hbWU6IG5h
bWUgb2YgdGhlIHByb3BlcnR5IHRvIGNoYW5nZQorICogQHZhbDogcG9pbnRlciB0byBkYXRhIHRv
IHNldCB0aGUgcHJvcGVydHkgdmFsdWUgdG8KKyAqIEBsZW46IGxlbmd0aCBvZiB0aGUgcHJvcGVy
dHkgdmFsdWUKKyAqCisgKiBmZHRfc2V0cHJvcCgpIHNldHMgdGhlIHZhbHVlIG9mIHRoZSBuYW1l
ZCBwcm9wZXJ0eSBpbiB0aGUgZ2l2ZW4KKyAqIG5vZGUgdG8gdGhlIGdpdmVuIHZhbHVlIGFuZCBs
ZW5ndGgsIGNyZWF0aW5nIHRoZSBwcm9wZXJ0eSBpZiBpdAorICogZG9lcyBub3QgYWxyZWFkeSBl
eGlzdC4KKyAqCisgKiBUaGlzIGZ1bmN0aW9uIG1heSBpbnNlcnQgb3IgZGVsZXRlIGRhdGEgZnJv
bSB0aGUgYmxvYiwgYW5kIHdpbGwKKyAqIHRoZXJlZm9yZSBjaGFuZ2UgdGhlIG9mZnNldHMgb2Yg
c29tZSBleGlzdGluZyBub2Rlcy4KKyAqCisgKiByZXR1cm5zOgorICoJMCwgb24gc3VjY2Vzcwor
ICoJLUZEVF9FUlJfTk9TUEFDRSwgdGhlcmUgaXMgaW5zdWZmaWNpZW50IGZyZWUgc3BhY2UgaW4g
dGhlIGJsb2IgdG8KKyAqCQljb250YWluIHRoZSBuZXcgcHJvcGVydHkgdmFsdWUKKyAqCS1GRFRf
RVJSX0JBRE9GRlNFVCwgbm9kZW9mZnNldCBkaWQgbm90IHBvaW50IHRvIEZEVF9CRUdJTl9OT0RF
IHRhZworICoJLUZEVF9FUlJfQkFETEFZT1VULAorICoJLUZEVF9FUlJfQkFETUFHSUMsCisgKgkt
RkRUX0VSUl9CQURWRVJTSU9OLAorICoJLUZEVF9FUlJfQkFEU1RBVEUsCisgKgktRkRUX0VSUl9C
QURTVFJVQ1RVUkUsCisgKgktRkRUX0VSUl9CQURMQVlPVVQsCisgKgktRkRUX0VSUl9UUlVOQ0FU
RUQsIHN0YW5kYXJkIG1lYW5pbmdzCisgKi8KK2ludCBmZHRfc2V0cHJvcCh2b2lkICpmZHQsIGlu
dCBub2Rlb2Zmc2V0LCBjb25zdCBjaGFyICpuYW1lLAorCQljb25zdCB2b2lkICp2YWwsIGludCBs
ZW4pOworCisvKioKKyAqIGZkdF9zZXRwcm9wX3BsYWNlaG9sZGVyIC0gYWxsb2NhdGUgc3BhY2Ug
Zm9yIGEgcHJvcGVydHkKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IK
KyAqIEBub2Rlb2Zmc2V0OiBvZmZzZXQgb2YgdGhlIG5vZGUgd2hvc2UgcHJvcGVydHkgdG8gY2hh
bmdlCisgKiBAbmFtZTogbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gY2hhbmdlCisgKiBAbGVuOiBs
ZW5ndGggb2YgdGhlIHByb3BlcnR5IHZhbHVlCisgKiBAcHJvcF9kYXRhOiByZXR1cm4gcG9pbnRl
ciB0byBwcm9wZXJ0eSBkYXRhCisgKgorICogZmR0X3NldHByb3BfcGxhY2Vob2xlcigpIGFsbG9j
YXRlcyB0aGUgbmFtZWQgcHJvcGVydHkgaW4gdGhlIGdpdmVuIG5vZGUuCisgKiBJZiB0aGUgcHJv
cGVydHkgZXhpc3RzIGl0IGlzIHJlc2l6ZWQuIEluIGVpdGhlciBjYXNlIGEgcG9pbnRlciB0byB0
aGUKKyAqIHByb3BlcnR5IGRhdGEgaXMgcmV0dXJuZWQuCisgKgorICogVGhpcyBmdW5jdGlvbiBt
YXkgaW5zZXJ0IG9yIGRlbGV0ZSBkYXRhIGZyb20gdGhlIGJsb2IsIGFuZCB3aWxsCisgKiB0aGVy
ZWZvcmUgY2hhbmdlIHRoZSBvZmZzZXRzIG9mIHNvbWUgZXhpc3Rpbmcgbm9kZXMuCisgKgorICog
cmV0dXJuczoKKyAqCTAsIG9uIHN1Y2Nlc3MKKyAqCS1GRFRfRVJSX05PU1BBQ0UsIHRoZXJlIGlz
IGluc3VmZmljaWVudCBmcmVlIHNwYWNlIGluIHRoZSBibG9iIHRvCisgKgkJY29udGFpbiB0aGUg
bmV3IHByb3BlcnR5IHZhbHVlCisgKgktRkRUX0VSUl9CQURPRkZTRVQsIG5vZGVvZmZzZXQgZGlk
IG5vdCBwb2ludCB0byBGRFRfQkVHSU5fTk9ERSB0YWcKKyAqCS1GRFRfRVJSX0JBRExBWU9VVCwK
KyAqCS1GRFRfRVJSX0JBRE1BR0lDLAorICoJLUZEVF9FUlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRf
RVJSX0JBRFNUQVRFLAorICoJLUZEVF9FUlJfQkFEU1RSVUNUVVJFLAorICoJLUZEVF9FUlJfQkFE
TEFZT1VULAorICoJLUZEVF9FUlJfVFJVTkNBVEVELCBzdGFuZGFyZCBtZWFuaW5ncworICovCitp
bnQgZmR0X3NldHByb3BfcGxhY2Vob2xkZXIodm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNldCwgY29u
c3QgY2hhciAqbmFtZSwKKwkJCSAgICBpbnQgbGVuLCB2b2lkICoqcHJvcF9kYXRhKTsKKworLyoq
CisgKiBmZHRfc2V0cHJvcF91MzIgLSBzZXQgYSBwcm9wZXJ0eSB0byBhIDMyLWJpdCBpbnRlZ2Vy
CisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNl
dDogb2Zmc2V0IG9mIHRoZSBub2RlIHdob3NlIHByb3BlcnR5IHRvIGNoYW5nZQorICogQG5hbWU6
IG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGNoYW5nZQorICogQHZhbDogMzItYml0IGludGVnZXIg
dmFsdWUgZm9yIHRoZSBwcm9wZXJ0eSAobmF0aXZlIGVuZGlhbikKKyAqCisgKiBmZHRfc2V0cHJv
cF91MzIoKSBzZXRzIHRoZSB2YWx1ZSBvZiB0aGUgbmFtZWQgcHJvcGVydHkgaW4gdGhlIGdpdmVu
CisgKiBub2RlIHRvIHRoZSBnaXZlbiAzMi1iaXQgaW50ZWdlciB2YWx1ZSAoY29udmVydGluZyB0
byBiaWctZW5kaWFuIGlmCisgKiBuZWNlc3NhcnkpLCBvciBjcmVhdGVzIGEgbmV3IHByb3BlcnR5
IHdpdGggdGhhdCB2YWx1ZSBpZiBpdCBkb2VzCisgKiBub3QgYWxyZWFkeSBleGlzdC4KKyAqCisg
KiBUaGlzIGZ1bmN0aW9uIG1heSBpbnNlcnQgb3IgZGVsZXRlIGRhdGEgZnJvbSB0aGUgYmxvYiwg
YW5kIHdpbGwKKyAqIHRoZXJlZm9yZSBjaGFuZ2UgdGhlIG9mZnNldHMgb2Ygc29tZSBleGlzdGlu
ZyBub2Rlcy4KKyAqCisgKiByZXR1cm5zOgorICoJMCwgb24gc3VjY2VzcworICoJLUZEVF9FUlJf
Tk9TUEFDRSwgdGhlcmUgaXMgaW5zdWZmaWNpZW50IGZyZWUgc3BhY2UgaW4gdGhlIGJsb2IgdG8K
KyAqCQljb250YWluIHRoZSBuZXcgcHJvcGVydHkgdmFsdWUKKyAqCS1GRFRfRVJSX0JBRE9GRlNF
VCwgbm9kZW9mZnNldCBkaWQgbm90IHBvaW50IHRvIEZEVF9CRUdJTl9OT0RFIHRhZworICoJLUZE
VF9FUlJfQkFETEFZT1VULAorICoJLUZEVF9FUlJfQkFETUFHSUMsCisgKgktRkRUX0VSUl9CQURW
RVJTSU9OLAorICoJLUZEVF9FUlJfQkFEU1RBVEUsCisgKgktRkRUX0VSUl9CQURTVFJVQ1RVUkUs
CisgKgktRkRUX0VSUl9CQURMQVlPVVQsCisgKgktRkRUX0VSUl9UUlVOQ0FURUQsIHN0YW5kYXJk
IG1lYW5pbmdzCisgKi8KK3N0YXRpYyBpbmxpbmUgaW50IGZkdF9zZXRwcm9wX3UzMih2b2lkICpm
ZHQsIGludCBub2Rlb2Zmc2V0LCBjb25zdCBjaGFyICpuYW1lLAorCQkJCSAgdWludDMyX3QgdmFs
KQoreworCWZkdDMyX3QgdG1wID0gY3B1X3RvX2ZkdDMyKHZhbCk7CisJcmV0dXJuIGZkdF9zZXRw
cm9wKGZkdCwgbm9kZW9mZnNldCwgbmFtZSwgJnRtcCwgc2l6ZW9mKHRtcCkpOworfQorCisvKioK
KyAqIGZkdF9zZXRwcm9wX3U2NCAtIHNldCBhIHByb3BlcnR5IHRvIGEgNjQtYml0IGludGVnZXIK
KyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IKKyAqIEBub2Rlb2Zmc2V0
OiBvZmZzZXQgb2YgdGhlIG5vZGUgd2hvc2UgcHJvcGVydHkgdG8gY2hhbmdlCisgKiBAbmFtZTog
bmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gY2hhbmdlCisgKiBAdmFsOiA2NC1iaXQgaW50ZWdlciB2
YWx1ZSBmb3IgdGhlIHByb3BlcnR5IChuYXRpdmUgZW5kaWFuKQorICoKKyAqIGZkdF9zZXRwcm9w
X3U2NCgpIHNldHMgdGhlIHZhbHVlIG9mIHRoZSBuYW1lZCBwcm9wZXJ0eSBpbiB0aGUgZ2l2ZW4K
KyAqIG5vZGUgdG8gdGhlIGdpdmVuIDY0LWJpdCBpbnRlZ2VyIHZhbHVlIChjb252ZXJ0aW5nIHRv
IGJpZy1lbmRpYW4gaWYKKyAqIG5lY2Vzc2FyeSksIG9yIGNyZWF0ZXMgYSBuZXcgcHJvcGVydHkg
d2l0aCB0aGF0IHZhbHVlIGlmIGl0IGRvZXMKKyAqIG5vdCBhbHJlYWR5IGV4aXN0LgorICoKKyAq
IFRoaXMgZnVuY3Rpb24gbWF5IGluc2VydCBvciBkZWxldGUgZGF0YSBmcm9tIHRoZSBibG9iLCBh
bmQgd2lsbAorICogdGhlcmVmb3JlIGNoYW5nZSB0aGUgb2Zmc2V0cyBvZiBzb21lIGV4aXN0aW5n
IG5vZGVzLgorICoKKyAqIHJldHVybnM6CisgKgkwLCBvbiBzdWNjZXNzCisgKgktRkRUX0VSUl9O
T1NQQUNFLCB0aGVyZSBpcyBpbnN1ZmZpY2llbnQgZnJlZSBzcGFjZSBpbiB0aGUgYmxvYiB0bwor
ICoJCWNvbnRhaW4gdGhlIG5ldyBwcm9wZXJ0eSB2YWx1ZQorICoJLUZEVF9FUlJfQkFET0ZGU0VU
LCBub2Rlb2Zmc2V0IGRpZCBub3QgcG9pbnQgdG8gRkRUX0JFR0lOX05PREUgdGFnCisgKgktRkRU
X0VSUl9CQURMQVlPVVQsCisgKgktRkRUX0VSUl9CQURNQUdJQywKKyAqCS1GRFRfRVJSX0JBRFZF
UlNJT04sCisgKgktRkRUX0VSUl9CQURTVEFURSwKKyAqCS1GRFRfRVJSX0JBRFNUUlVDVFVSRSwK
KyAqCS1GRFRfRVJSX0JBRExBWU9VVCwKKyAqCS1GRFRfRVJSX1RSVU5DQVRFRCwgc3RhbmRhcmQg
bWVhbmluZ3MKKyAqLworc3RhdGljIGlubGluZSBpbnQgZmR0X3NldHByb3BfdTY0KHZvaWQgKmZk
dCwgaW50IG5vZGVvZmZzZXQsIGNvbnN0IGNoYXIgKm5hbWUsCisJCQkJICB1aW50NjRfdCB2YWwp
Cit7CisJZmR0NjRfdCB0bXAgPSBjcHVfdG9fZmR0NjQodmFsKTsKKwlyZXR1cm4gZmR0X3NldHBy
b3AoZmR0LCBub2Rlb2Zmc2V0LCBuYW1lLCAmdG1wLCBzaXplb2YodG1wKSk7Cit9CisKKy8qKgor
ICogZmR0X3NldHByb3BfY2VsbCAtIHNldCBhIHByb3BlcnR5IHRvIGEgc2luZ2xlIGNlbGwgdmFs
dWUKKyAqCisgKiBUaGlzIGlzIGFuIGFsdGVybmF0aXZlIG5hbWUgZm9yIGZkdF9zZXRwcm9wX3Uz
MigpCisgKi8KK3N0YXRpYyBpbmxpbmUgaW50IGZkdF9zZXRwcm9wX2NlbGwodm9pZCAqZmR0LCBp
bnQgbm9kZW9mZnNldCwgY29uc3QgY2hhciAqbmFtZSwKKwkJCQkgICB1aW50MzJfdCB2YWwpCit7
CisJcmV0dXJuIGZkdF9zZXRwcm9wX3UzMihmZHQsIG5vZGVvZmZzZXQsIG5hbWUsIHZhbCk7Cit9
CisKKy8qKgorICogZmR0X3NldHByb3Bfc3RyaW5nIC0gc2V0IGEgcHJvcGVydHkgdG8gYSBzdHJp
bmcgdmFsdWUKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IKKyAqIEBu
b2Rlb2Zmc2V0OiBvZmZzZXQgb2YgdGhlIG5vZGUgd2hvc2UgcHJvcGVydHkgdG8gY2hhbmdlCisg
KiBAbmFtZTogbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gY2hhbmdlCisgKiBAc3RyOiBzdHJpbmcg
dmFsdWUgZm9yIHRoZSBwcm9wZXJ0eQorICoKKyAqIGZkdF9zZXRwcm9wX3N0cmluZygpIHNldHMg
dGhlIHZhbHVlIG9mIHRoZSBuYW1lZCBwcm9wZXJ0eSBpbiB0aGUKKyAqIGdpdmVuIG5vZGUgdG8g
dGhlIGdpdmVuIHN0cmluZyB2YWx1ZSAodXNpbmcgdGhlIGxlbmd0aCBvZiB0aGUKKyAqIHN0cmlu
ZyB0byBkZXRlcm1pbmUgdGhlIG5ldyBsZW5ndGggb2YgdGhlIHByb3BlcnR5KSwgb3IgY3JlYXRl
cyBhCisgKiBuZXcgcHJvcGVydHkgd2l0aCB0aGF0IHZhbHVlIGlmIGl0IGRvZXMgbm90IGFscmVh
ZHkgZXhpc3QuCisgKgorICogVGhpcyBmdW5jdGlvbiBtYXkgaW5zZXJ0IG9yIGRlbGV0ZSBkYXRh
IGZyb20gdGhlIGJsb2IsIGFuZCB3aWxsCisgKiB0aGVyZWZvcmUgY2hhbmdlIHRoZSBvZmZzZXRz
IG9mIHNvbWUgZXhpc3Rpbmcgbm9kZXMuCisgKgorICogcmV0dXJuczoKKyAqCTAsIG9uIHN1Y2Nl
c3MKKyAqCS1GRFRfRVJSX05PU1BBQ0UsIHRoZXJlIGlzIGluc3VmZmljaWVudCBmcmVlIHNwYWNl
IGluIHRoZSBibG9iIHRvCisgKgkJY29udGFpbiB0aGUgbmV3IHByb3BlcnR5IHZhbHVlCisgKgkt
RkRUX0VSUl9CQURPRkZTRVQsIG5vZGVvZmZzZXQgZGlkIG5vdCBwb2ludCB0byBGRFRfQkVHSU5f
Tk9ERSB0YWcKKyAqCS1GRFRfRVJSX0JBRExBWU9VVCwKKyAqCS1GRFRfRVJSX0JBRE1BR0lDLAor
ICoJLUZEVF9FUlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJLUZEVF9F
UlJfQkFEU1RSVUNUVVJFLAorICoJLUZEVF9FUlJfQkFETEFZT1VULAorICoJLUZEVF9FUlJfVFJV
TkNBVEVELCBzdGFuZGFyZCBtZWFuaW5ncworICovCisjZGVmaW5lIGZkdF9zZXRwcm9wX3N0cmlu
ZyhmZHQsIG5vZGVvZmZzZXQsIG5hbWUsIHN0cikgXAorCWZkdF9zZXRwcm9wKChmZHQpLCAobm9k
ZW9mZnNldCksIChuYW1lKSwgKHN0ciksIHN0cmxlbihzdHIpKzEpCisKKworLyoqCisgKiBmZHRf
c2V0cHJvcF9lbXB0eSAtIHNldCBhIHByb3BlcnR5IHRvIGFuIGVtcHR5IHZhbHVlCisgKiBAZmR0
OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogb2Zmc2V0
IG9mIHRoZSBub2RlIHdob3NlIHByb3BlcnR5IHRvIGNoYW5nZQorICogQG5hbWU6IG5hbWUgb2Yg
dGhlIHByb3BlcnR5IHRvIGNoYW5nZQorICoKKyAqIGZkdF9zZXRwcm9wX2VtcHR5KCkgc2V0cyB0
aGUgdmFsdWUgb2YgdGhlIG5hbWVkIHByb3BlcnR5IGluIHRoZQorICogZ2l2ZW4gbm9kZSB0byBh
biBlbXB0eSAoemVybyBsZW5ndGgpIHZhbHVlLCBvciBjcmVhdGVzIGEgbmV3IGVtcHR5CisgKiBw
cm9wZXJ0eSBpZiBpdCBkb2VzIG5vdCBhbHJlYWR5IGV4aXN0LgorICoKKyAqIFRoaXMgZnVuY3Rp
b24gbWF5IGluc2VydCBvciBkZWxldGUgZGF0YSBmcm9tIHRoZSBibG9iLCBhbmQgd2lsbAorICog
dGhlcmVmb3JlIGNoYW5nZSB0aGUgb2Zmc2V0cyBvZiBzb21lIGV4aXN0aW5nIG5vZGVzLgorICoK
KyAqIHJldHVybnM6CisgKgkwLCBvbiBzdWNjZXNzCisgKgktRkRUX0VSUl9OT1NQQUNFLCB0aGVy
ZSBpcyBpbnN1ZmZpY2llbnQgZnJlZSBzcGFjZSBpbiB0aGUgYmxvYiB0bworICoJCWNvbnRhaW4g
dGhlIG5ldyBwcm9wZXJ0eSB2YWx1ZQorICoJLUZEVF9FUlJfQkFET0ZGU0VULCBub2Rlb2Zmc2V0
IGRpZCBub3QgcG9pbnQgdG8gRkRUX0JFR0lOX05PREUgdGFnCisgKgktRkRUX0VSUl9CQURMQVlP
VVQsCisgKgktRkRUX0VSUl9CQURNQUdJQywKKyAqCS1GRFRfRVJSX0JBRFZFUlNJT04sCisgKgkt
RkRUX0VSUl9CQURTVEFURSwKKyAqCS1GRFRfRVJSX0JBRFNUUlVDVFVSRSwKKyAqCS1GRFRfRVJS
X0JBRExBWU9VVCwKKyAqCS1GRFRfRVJSX1RSVU5DQVRFRCwgc3RhbmRhcmQgbWVhbmluZ3MKKyAq
LworI2RlZmluZSBmZHRfc2V0cHJvcF9lbXB0eShmZHQsIG5vZGVvZmZzZXQsIG5hbWUpIFwKKwlm
ZHRfc2V0cHJvcCgoZmR0KSwgKG5vZGVvZmZzZXQpLCAobmFtZSksIE5VTEwsIDApCisKKy8qKgor
ICogZmR0X2FwcGVuZHByb3AgLSBhcHBlbmQgdG8gb3IgY3JlYXRlIGEgcHJvcGVydHkKKyAqIEBm
ZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IKKyAqIEBub2Rlb2Zmc2V0OiBvZmZz
ZXQgb2YgdGhlIG5vZGUgd2hvc2UgcHJvcGVydHkgdG8gY2hhbmdlCisgKiBAbmFtZTogbmFtZSBv
ZiB0aGUgcHJvcGVydHkgdG8gYXBwZW5kIHRvCisgKiBAdmFsOiBwb2ludGVyIHRvIGRhdGEgdG8g
YXBwZW5kIHRvIHRoZSBwcm9wZXJ0eSB2YWx1ZQorICogQGxlbjogbGVuZ3RoIG9mIHRoZSBkYXRh
IHRvIGFwcGVuZCB0byB0aGUgcHJvcGVydHkgdmFsdWUKKyAqCisgKiBmZHRfYXBwZW5kcHJvcCgp
IGFwcGVuZHMgdGhlIHZhbHVlIHRvIHRoZSBuYW1lZCBwcm9wZXJ0eSBpbiB0aGUKKyAqIGdpdmVu
IG5vZGUsIGNyZWF0aW5nIHRoZSBwcm9wZXJ0eSBpZiBpdCBkb2VzIG5vdCBhbHJlYWR5IGV4aXN0
LgorICoKKyAqIFRoaXMgZnVuY3Rpb24gbWF5IGluc2VydCBkYXRhIGludG8gdGhlIGJsb2IsIGFu
ZCB3aWxsIHRoZXJlZm9yZQorICogY2hhbmdlIHRoZSBvZmZzZXRzIG9mIHNvbWUgZXhpc3Rpbmcg
bm9kZXMuCisgKgorICogcmV0dXJuczoKKyAqCTAsIG9uIHN1Y2Nlc3MKKyAqCS1GRFRfRVJSX05P
U1BBQ0UsIHRoZXJlIGlzIGluc3VmZmljaWVudCBmcmVlIHNwYWNlIGluIHRoZSBibG9iIHRvCisg
KgkJY29udGFpbiB0aGUgbmV3IHByb3BlcnR5IHZhbHVlCisgKgktRkRUX0VSUl9CQURPRkZTRVQs
IG5vZGVvZmZzZXQgZGlkIG5vdCBwb2ludCB0byBGRFRfQkVHSU5fTk9ERSB0YWcKKyAqCS1GRFRf
RVJSX0JBRExBWU9VVCwKKyAqCS1GRFRfRVJSX0JBRE1BR0lDLAorICoJLUZEVF9FUlJfQkFEVkVS
U0lPTiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJLUZEVF9FUlJfQkFEU1RSVUNUVVJFLAor
ICoJLUZEVF9FUlJfQkFETEFZT1VULAorICoJLUZEVF9FUlJfVFJVTkNBVEVELCBzdGFuZGFyZCBt
ZWFuaW5ncworICovCitpbnQgZmR0X2FwcGVuZHByb3Aodm9pZCAqZmR0LCBpbnQgbm9kZW9mZnNl
dCwgY29uc3QgY2hhciAqbmFtZSwKKwkJICAgY29uc3Qgdm9pZCAqdmFsLCBpbnQgbGVuKTsKKwor
LyoqCisgKiBmZHRfYXBwZW5kcHJvcF91MzIgLSBhcHBlbmQgYSAzMi1iaXQgaW50ZWdlciB2YWx1
ZSB0byBhIHByb3BlcnR5CisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2UgdHJlZSBibG9i
CisgKiBAbm9kZW9mZnNldDogb2Zmc2V0IG9mIHRoZSBub2RlIHdob3NlIHByb3BlcnR5IHRvIGNo
YW5nZQorICogQG5hbWU6IG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGNoYW5nZQorICogQHZhbDog
MzItYml0IGludGVnZXIgdmFsdWUgdG8gYXBwZW5kIHRvIHRoZSBwcm9wZXJ0eSAobmF0aXZlIGVu
ZGlhbikKKyAqCisgKiBmZHRfYXBwZW5kcHJvcF91MzIoKSBhcHBlbmRzIHRoZSBnaXZlbiAzMi1i
aXQgaW50ZWdlciB2YWx1ZQorICogKGNvbnZlcnRpbmcgdG8gYmlnLWVuZGlhbiBpZiBuZWNlc3Nh
cnkpIHRvIHRoZSB2YWx1ZSBvZiB0aGUgbmFtZWQKKyAqIHByb3BlcnR5IGluIHRoZSBnaXZlbiBu
b2RlLCBvciBjcmVhdGVzIGEgbmV3IHByb3BlcnR5IHdpdGggdGhhdAorICogdmFsdWUgaWYgaXQg
ZG9lcyBub3QgYWxyZWFkeSBleGlzdC4KKyAqCisgKiBUaGlzIGZ1bmN0aW9uIG1heSBpbnNlcnQg
ZGF0YSBpbnRvIHRoZSBibG9iLCBhbmQgd2lsbCB0aGVyZWZvcmUKKyAqIGNoYW5nZSB0aGUgb2Zm
c2V0cyBvZiBzb21lIGV4aXN0aW5nIG5vZGVzLgorICoKKyAqIHJldHVybnM6CisgKgkwLCBvbiBz
dWNjZXNzCisgKgktRkRUX0VSUl9OT1NQQUNFLCB0aGVyZSBpcyBpbnN1ZmZpY2llbnQgZnJlZSBz
cGFjZSBpbiB0aGUgYmxvYiB0bworICoJCWNvbnRhaW4gdGhlIG5ldyBwcm9wZXJ0eSB2YWx1ZQor
ICoJLUZEVF9FUlJfQkFET0ZGU0VULCBub2Rlb2Zmc2V0IGRpZCBub3QgcG9pbnQgdG8gRkRUX0JF
R0lOX05PREUgdGFnCisgKgktRkRUX0VSUl9CQURMQVlPVVQsCisgKgktRkRUX0VSUl9CQURNQUdJ
QywKKyAqCS1GRFRfRVJSX0JBRFZFUlNJT04sCisgKgktRkRUX0VSUl9CQURTVEFURSwKKyAqCS1G
RFRfRVJSX0JBRFNUUlVDVFVSRSwKKyAqCS1GRFRfRVJSX0JBRExBWU9VVCwKKyAqCS1GRFRfRVJS
X1RSVU5DQVRFRCwgc3RhbmRhcmQgbWVhbmluZ3MKKyAqLworc3RhdGljIGlubGluZSBpbnQgZmR0
X2FwcGVuZHByb3BfdTMyKHZvaWQgKmZkdCwgaW50IG5vZGVvZmZzZXQsCisJCQkJICAgICBjb25z
dCBjaGFyICpuYW1lLCB1aW50MzJfdCB2YWwpCit7CisJZmR0MzJfdCB0bXAgPSBjcHVfdG9fZmR0
MzIodmFsKTsKKwlyZXR1cm4gZmR0X2FwcGVuZHByb3AoZmR0LCBub2Rlb2Zmc2V0LCBuYW1lLCAm
dG1wLCBzaXplb2YodG1wKSk7Cit9CisKKy8qKgorICogZmR0X2FwcGVuZHByb3BfdTY0IC0gYXBw
ZW5kIGEgNjQtYml0IGludGVnZXIgdmFsdWUgdG8gYSBwcm9wZXJ0eQorICogQGZkdDogcG9pbnRl
ciB0byB0aGUgZGV2aWNlIHRyZWUgYmxvYgorICogQG5vZGVvZmZzZXQ6IG9mZnNldCBvZiB0aGUg
bm9kZSB3aG9zZSBwcm9wZXJ0eSB0byBjaGFuZ2UKKyAqIEBuYW1lOiBuYW1lIG9mIHRoZSBwcm9w
ZXJ0eSB0byBjaGFuZ2UKKyAqIEB2YWw6IDY0LWJpdCBpbnRlZ2VyIHZhbHVlIHRvIGFwcGVuZCB0
byB0aGUgcHJvcGVydHkgKG5hdGl2ZSBlbmRpYW4pCisgKgorICogZmR0X2FwcGVuZHByb3BfdTY0
KCkgYXBwZW5kcyB0aGUgZ2l2ZW4gNjQtYml0IGludGVnZXIgdmFsdWUKKyAqIChjb252ZXJ0aW5n
IHRvIGJpZy1lbmRpYW4gaWYgbmVjZXNzYXJ5KSB0byB0aGUgdmFsdWUgb2YgdGhlIG5hbWVkCisg
KiBwcm9wZXJ0eSBpbiB0aGUgZ2l2ZW4gbm9kZSwgb3IgY3JlYXRlcyBhIG5ldyBwcm9wZXJ0eSB3
aXRoIHRoYXQKKyAqIHZhbHVlIGlmIGl0IGRvZXMgbm90IGFscmVhZHkgZXhpc3QuCisgKgorICog
VGhpcyBmdW5jdGlvbiBtYXkgaW5zZXJ0IGRhdGEgaW50byB0aGUgYmxvYiwgYW5kIHdpbGwgdGhl
cmVmb3JlCisgKiBjaGFuZ2UgdGhlIG9mZnNldHMgb2Ygc29tZSBleGlzdGluZyBub2Rlcy4KKyAq
CisgKiByZXR1cm5zOgorICoJMCwgb24gc3VjY2VzcworICoJLUZEVF9FUlJfTk9TUEFDRSwgdGhl
cmUgaXMgaW5zdWZmaWNpZW50IGZyZWUgc3BhY2UgaW4gdGhlIGJsb2IgdG8KKyAqCQljb250YWlu
IHRoZSBuZXcgcHJvcGVydHkgdmFsdWUKKyAqCS1GRFRfRVJSX0JBRE9GRlNFVCwgbm9kZW9mZnNl
dCBkaWQgbm90IHBvaW50IHRvIEZEVF9CRUdJTl9OT0RFIHRhZworICoJLUZEVF9FUlJfQkFETEFZ
T1VULAorICoJLUZEVF9FUlJfQkFETUFHSUMsCisgKgktRkRUX0VSUl9CQURWRVJTSU9OLAorICoJ
LUZEVF9FUlJfQkFEU1RBVEUsCisgKgktRkRUX0VSUl9CQURTVFJVQ1RVUkUsCisgKgktRkRUX0VS
Ul9CQURMQVlPVVQsCisgKgktRkRUX0VSUl9UUlVOQ0FURUQsIHN0YW5kYXJkIG1lYW5pbmdzCisg
Ki8KK3N0YXRpYyBpbmxpbmUgaW50IGZkdF9hcHBlbmRwcm9wX3U2NCh2b2lkICpmZHQsIGludCBu
b2Rlb2Zmc2V0LAorCQkJCSAgICAgY29uc3QgY2hhciAqbmFtZSwgdWludDY0X3QgdmFsKQorewor
CWZkdDY0X3QgdG1wID0gY3B1X3RvX2ZkdDY0KHZhbCk7CisJcmV0dXJuIGZkdF9hcHBlbmRwcm9w
KGZkdCwgbm9kZW9mZnNldCwgbmFtZSwgJnRtcCwgc2l6ZW9mKHRtcCkpOworfQorCisvKioKKyAq
IGZkdF9hcHBlbmRwcm9wX2NlbGwgLSBhcHBlbmQgYSBzaW5nbGUgY2VsbCB2YWx1ZSB0byBhIHBy
b3BlcnR5CisgKgorICogVGhpcyBpcyBhbiBhbHRlcm5hdGl2ZSBuYW1lIGZvciBmZHRfYXBwZW5k
cHJvcF91MzIoKQorICovCitzdGF0aWMgaW5saW5lIGludCBmZHRfYXBwZW5kcHJvcF9jZWxsKHZv
aWQgKmZkdCwgaW50IG5vZGVvZmZzZXQsCisJCQkJICAgICAgY29uc3QgY2hhciAqbmFtZSwgdWlu
dDMyX3QgdmFsKQoreworCXJldHVybiBmZHRfYXBwZW5kcHJvcF91MzIoZmR0LCBub2Rlb2Zmc2V0
LCBuYW1lLCB2YWwpOworfQorCisvKioKKyAqIGZkdF9hcHBlbmRwcm9wX3N0cmluZyAtIGFwcGVu
ZCBhIHN0cmluZyB0byBhIHByb3BlcnR5CisgKiBAZmR0OiBwb2ludGVyIHRvIHRoZSBkZXZpY2Ug
dHJlZSBibG9iCisgKiBAbm9kZW9mZnNldDogb2Zmc2V0IG9mIHRoZSBub2RlIHdob3NlIHByb3Bl
cnR5IHRvIGNoYW5nZQorICogQG5hbWU6IG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGNoYW5nZQor
ICogQHN0cjogc3RyaW5nIHZhbHVlIHRvIGFwcGVuZCB0byB0aGUgcHJvcGVydHkKKyAqCisgKiBm
ZHRfYXBwZW5kcHJvcF9zdHJpbmcoKSBhcHBlbmRzIHRoZSBnaXZlbiBzdHJpbmcgdG8gdGhlIHZh
bHVlIG9mCisgKiB0aGUgbmFtZWQgcHJvcGVydHkgaW4gdGhlIGdpdmVuIG5vZGUsIG9yIGNyZWF0
ZXMgYSBuZXcgcHJvcGVydHkKKyAqIHdpdGggdGhhdCB2YWx1ZSBpZiBpdCBkb2VzIG5vdCBhbHJl
YWR5IGV4aXN0LgorICoKKyAqIFRoaXMgZnVuY3Rpb24gbWF5IGluc2VydCBkYXRhIGludG8gdGhl
IGJsb2IsIGFuZCB3aWxsIHRoZXJlZm9yZQorICogY2hhbmdlIHRoZSBvZmZzZXRzIG9mIHNvbWUg
ZXhpc3Rpbmcgbm9kZXMuCisgKgorICogcmV0dXJuczoKKyAqCTAsIG9uIHN1Y2Nlc3MKKyAqCS1G
RFRfRVJSX05PU1BBQ0UsIHRoZXJlIGlzIGluc3VmZmljaWVudCBmcmVlIHNwYWNlIGluIHRoZSBi
bG9iIHRvCisgKgkJY29udGFpbiB0aGUgbmV3IHByb3BlcnR5IHZhbHVlCisgKgktRkRUX0VSUl9C
QURPRkZTRVQsIG5vZGVvZmZzZXQgZGlkIG5vdCBwb2ludCB0byBGRFRfQkVHSU5fTk9ERSB0YWcK
KyAqCS1GRFRfRVJSX0JBRExBWU9VVCwKKyAqCS1GRFRfRVJSX0JBRE1BR0lDLAorICoJLUZEVF9F
UlJfQkFEVkVSU0lPTiwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJLUZEVF9FUlJfQkFEU1RS
VUNUVVJFLAorICoJLUZEVF9FUlJfQkFETEFZT1VULAorICoJLUZEVF9FUlJfVFJVTkNBVEVELCBz
dGFuZGFyZCBtZWFuaW5ncworICovCisjZGVmaW5lIGZkdF9hcHBlbmRwcm9wX3N0cmluZyhmZHQs
IG5vZGVvZmZzZXQsIG5hbWUsIHN0cikgXAorCWZkdF9hcHBlbmRwcm9wKChmZHQpLCAobm9kZW9m
ZnNldCksIChuYW1lKSwgKHN0ciksIHN0cmxlbihzdHIpKzEpCisKKy8qKgorICogZmR0X2RlbHBy
b3AgLSBkZWxldGUgYSBwcm9wZXJ0eQorICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNlIHRy
ZWUgYmxvYgorICogQG5vZGVvZmZzZXQ6IG9mZnNldCBvZiB0aGUgbm9kZSB3aG9zZSBwcm9wZXJ0
eSB0byBub3AKKyAqIEBuYW1lOiBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byBub3AKKyAqCisgKiBm
ZHRfZGVsX3Byb3BlcnR5KCkgd2lsbCBkZWxldGUgdGhlIGdpdmVuIHByb3BlcnR5LgorICoKKyAq
IFRoaXMgZnVuY3Rpb24gd2lsbCBkZWxldGUgZGF0YSBmcm9tIHRoZSBibG9iLCBhbmQgd2lsbCB0
aGVyZWZvcmUKKyAqIGNoYW5nZSB0aGUgb2Zmc2V0cyBvZiBzb21lIGV4aXN0aW5nIG5vZGVzLgor
ICoKKyAqIHJldHVybnM6CisgKgkwLCBvbiBzdWNjZXNzCisgKgktRkRUX0VSUl9OT1RGT1VORCwg
bm9kZSBkb2VzIG5vdCBoYXZlIHRoZSBuYW1lZCBwcm9wZXJ0eQorICoJLUZEVF9FUlJfQkFET0ZG
U0VULCBub2Rlb2Zmc2V0IGRpZCBub3QgcG9pbnQgdG8gRkRUX0JFR0lOX05PREUgdGFnCisgKgkt
RkRUX0VSUl9CQURMQVlPVVQsCisgKgktRkRUX0VSUl9CQURNQUdJQywKKyAqCS1GRFRfRVJSX0JB
RFZFUlNJT04sCisgKgktRkRUX0VSUl9CQURTVEFURSwKKyAqCS1GRFRfRVJSX0JBRFNUUlVDVFVS
RSwKKyAqCS1GRFRfRVJSX1RSVU5DQVRFRCwgc3RhbmRhcmQgbWVhbmluZ3MKKyAqLworaW50IGZk
dF9kZWxwcm9wKHZvaWQgKmZkdCwgaW50IG5vZGVvZmZzZXQsIGNvbnN0IGNoYXIgKm5hbWUpOwor
CisvKioKKyAqIGZkdF9hZGRfc3Vibm9kZV9uYW1lbGVuIC0gY3JlYXRlcyBhIG5ldyBub2RlIGJh
c2VkIG9uIHN1YnN0cmluZworICogQGZkdDogcG9pbnRlciB0byB0aGUgZGV2aWNlIHRyZWUgYmxv
YgorICogQHBhcmVudG9mZnNldDogc3RydWN0dXJlIGJsb2NrIG9mZnNldCBvZiBhIG5vZGUKKyAq
IEBuYW1lOiBuYW1lIG9mIHRoZSBzdWJub2RlIHRvIGxvY2F0ZQorICogQG5hbWVsZW46IG51bWJl
ciBvZiBjaGFyYWN0ZXJzIG9mIG5hbWUgdG8gY29uc2lkZXIKKyAqCisgKiBJZGVudGljYWwgdG8g
ZmR0X2FkZF9zdWJub2RlKCksIGJ1dCB1c2Ugb25seSB0aGUgZmlyc3QgbmFtZWxlbgorICogY2hh
cmFjdGVycyBvZiBuYW1lIGFzIHRoZSBuYW1lIG9mIHRoZSBuZXcgbm9kZS4gIFRoaXMgaXMgdXNl
ZnVsIGZvcgorICogY3JlYXRpbmcgc3Vibm9kZXMgYmFzZWQgb24gYSBwb3J0aW9uIG9mIGEgbGFy
Z2VyIHN0cmluZywgc3VjaCBhcyBhCisgKiBmdWxsIHBhdGguCisgKi8KKyNpZm5kZWYgU1dJRyAv
KiBOb3QgYXZhaWxhYmxlIGluIFB5dGhvbiAqLworaW50IGZkdF9hZGRfc3Vibm9kZV9uYW1lbGVu
KHZvaWQgKmZkdCwgaW50IHBhcmVudG9mZnNldCwKKwkJCSAgICBjb25zdCBjaGFyICpuYW1lLCBp
bnQgbmFtZWxlbik7CisjZW5kaWYKKworLyoqCisgKiBmZHRfYWRkX3N1Ym5vZGUgLSBjcmVhdGVz
IGEgbmV3IG5vZGUKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IKKyAq
IEBwYXJlbnRvZmZzZXQ6IHN0cnVjdHVyZSBibG9jayBvZmZzZXQgb2YgYSBub2RlCisgKiBAbmFt
ZTogbmFtZSBvZiB0aGUgc3Vibm9kZSB0byBsb2NhdGUKKyAqCisgKiBmZHRfYWRkX3N1Ym5vZGUo
KSBjcmVhdGVzIGEgbmV3IG5vZGUgYXMgYSBzdWJub2RlIG9mIHRoZSBub2RlIGF0CisgKiBzdHJ1
Y3R1cmUgYmxvY2sgb2Zmc2V0IHBhcmVudG9mZnNldCwgd2l0aCB0aGUgZ2l2ZW4gbmFtZSAod2hp
Y2gKKyAqIHNob3VsZCBpbmNsdWRlIHRoZSB1bml0IGFkZHJlc3MsIGlmIGFueSkuCisgKgorICog
VGhpcyBmdW5jdGlvbiB3aWxsIGluc2VydCBkYXRhIGludG8gdGhlIGJsb2IsIGFuZCB3aWxsIHRo
ZXJlZm9yZQorICogY2hhbmdlIHRoZSBvZmZzZXRzIG9mIHNvbWUgZXhpc3Rpbmcgbm9kZXMuCisK
KyAqIHJldHVybnM6CisgKglzdHJ1Y3R1cmUgYmxvY2sgb2Zmc2V0IG9mIHRoZSBjcmVhdGVkIG5v
ZGVlcXVlc3RlZCBzdWJub2RlICg+PTApLCBvbgorICoJCXN1Y2Nlc3MKKyAqCS1GRFRfRVJSX05P
VEZPVU5ELCBpZiB0aGUgcmVxdWVzdGVkIHN1Ym5vZGUgZG9lcyBub3QgZXhpc3QKKyAqCS1GRFRf
RVJSX0JBRE9GRlNFVCwgaWYgcGFyZW50b2Zmc2V0IGRpZCBub3QgcG9pbnQgdG8gYW4gRkRUX0JF
R0lOX05PREUKKyAqCQl0YWcKKyAqCS1GRFRfRVJSX0VYSVNUUywgaWYgdGhlIG5vZGUgYXQgcGFy
ZW50b2Zmc2V0IGFscmVhZHkgaGFzIGEgc3Vibm9kZSBvZgorICoJCXRoZSBnaXZlbiBuYW1lCisg
KgktRkRUX0VSUl9OT1NQQUNFLCBpZiB0aGVyZSBpcyBpbnN1ZmZpY2llbnQgZnJlZSBzcGFjZSBp
biB0aGUKKyAqCQlibG9iIHRvIGNvbnRhaW4gdGhlIG5ldyBub2RlCisgKgktRkRUX0VSUl9OT1NQ
QUNFCisgKgktRkRUX0VSUl9CQURMQVlPVVQKKyAqICAgICAgLUZEVF9FUlJfQkFETUFHSUMsCisg
KgktRkRUX0VSUl9CQURWRVJTSU9OLAorICoJLUZEVF9FUlJfQkFEU1RBVEUsCisgKgktRkRUX0VS
Ul9CQURTVFJVQ1RVUkUsCisgKgktRkRUX0VSUl9UUlVOQ0FURUQsIHN0YW5kYXJkIG1lYW5pbmdz
LgorICovCitpbnQgZmR0X2FkZF9zdWJub2RlKHZvaWQgKmZkdCwgaW50IHBhcmVudG9mZnNldCwg
Y29uc3QgY2hhciAqbmFtZSk7CisKKy8qKgorICogZmR0X2RlbF9ub2RlIC0gZGVsZXRlIGEgbm9k
ZSAoc3VidHJlZSkKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIGJsb2IKKyAq
IEBub2Rlb2Zmc2V0OiBvZmZzZXQgb2YgdGhlIG5vZGUgdG8gbm9wCisgKgorICogZmR0X2RlbF9u
b2RlKCkgd2lsbCByZW1vdmUgdGhlIGdpdmVuIG5vZGUsIGluY2x1ZGluZyBhbGwgaXRzCisgKiBz
dWJub2RlcyBpZiBhbnksIGZyb20gdGhlIGJsb2IuCisgKgorICogVGhpcyBmdW5jdGlvbiB3aWxs
IGRlbGV0ZSBkYXRhIGZyb20gdGhlIGJsb2IsIGFuZCB3aWxsIHRoZXJlZm9yZQorICogY2hhbmdl
IHRoZSBvZmZzZXRzIG9mIHNvbWUgZXhpc3Rpbmcgbm9kZXMuCisgKgorICogcmV0dXJuczoKKyAq
CTAsIG9uIHN1Y2Nlc3MKKyAqCS1GRFRfRVJSX0JBRE9GRlNFVCwgbm9kZW9mZnNldCBkaWQgbm90
IHBvaW50IHRvIEZEVF9CRUdJTl9OT0RFIHRhZworICoJLUZEVF9FUlJfQkFETEFZT1VULAorICoJ
LUZEVF9FUlJfQkFETUFHSUMsCisgKgktRkRUX0VSUl9CQURWRVJTSU9OLAorICoJLUZEVF9FUlJf
QkFEU1RBVEUsCisgKgktRkRUX0VSUl9CQURTVFJVQ1RVUkUsCisgKgktRkRUX0VSUl9UUlVOQ0FU
RUQsIHN0YW5kYXJkIG1lYW5pbmdzCisgKi8KK2ludCBmZHRfZGVsX25vZGUodm9pZCAqZmR0LCBp
bnQgbm9kZW9mZnNldCk7CisKKy8qKgorICogZmR0X292ZXJsYXlfYXBwbHkgLSBBcHBsaWVzIGEg
RFQgb3ZlcmxheSBvbiBhIGJhc2UgRFQKKyAqIEBmZHQ6IHBvaW50ZXIgdG8gdGhlIGJhc2UgZGV2
aWNlIHRyZWUgYmxvYgorICogQGZkdG86IHBvaW50ZXIgdG8gdGhlIGRldmljZSB0cmVlIG92ZXJs
YXkgYmxvYgorICoKKyAqIGZkdF9vdmVybGF5X2FwcGx5KCkgd2lsbCBhcHBseSB0aGUgZ2l2ZW4g
ZGV2aWNlIHRyZWUgb3ZlcmxheSBvbiB0aGUKKyAqIGdpdmVuIGJhc2UgZGV2aWNlIHRyZWUuCisg
KgorICogRXhwZWN0IHRoZSBiYXNlIGRldmljZSB0cmVlIHRvIGJlIG1vZGlmaWVkLCBldmVuIGlm
IHRoZSBmdW5jdGlvbgorICogcmV0dXJucyBhbiBlcnJvci4KKyAqCisgKiByZXR1cm5zOgorICoJ
MCwgb24gc3VjY2VzcworICoJLUZEVF9FUlJfTk9TUEFDRSwgdGhlcmUncyBub3QgZW5vdWdoIHNw
YWNlIGluIHRoZSBiYXNlIGRldmljZSB0cmVlCisgKgktRkRUX0VSUl9OT1RGT1VORCwgdGhlIG92
ZXJsYXkgcG9pbnRzIHRvIHNvbWUgaW5leGlzdGFudCBub2RlcyBvcgorICoJCXByb3BlcnRpZXMg
aW4gdGhlIGJhc2UgRFQKKyAqCS1GRFRfRVJSX0JBRFBIQU5ETEUsCisgKgktRkRUX0VSUl9CQURP
VkVSTEFZLAorICoJLUZEVF9FUlJfTk9QSEFORExFUywKKyAqCS1GRFRfRVJSX0lOVEVSTkFMLAor
ICoJLUZEVF9FUlJfQkFETEFZT1VULAorICoJLUZEVF9FUlJfQkFETUFHSUMsCisgKgktRkRUX0VS
Ul9CQURPRkZTRVQsCisgKgktRkRUX0VSUl9CQURQQVRILAorICoJLUZEVF9FUlJfQkFEVkVSU0lP
TiwKKyAqCS1GRFRfRVJSX0JBRFNUUlVDVFVSRSwKKyAqCS1GRFRfRVJSX0JBRFNUQVRFLAorICoJ
LUZEVF9FUlJfVFJVTkNBVEVELCBzdGFuZGFyZCBtZWFuaW5ncworICovCitpbnQgZmR0X292ZXJs
YXlfYXBwbHkodm9pZCAqZmR0LCB2b2lkICpmZHRvKTsKKworLyoqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiBE
ZWJ1Z2dpbmcgLyBpbmZvcm1hdGlvbmFsIGZ1bmN0aW9ucyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitjb25zdCBjaGFyICpmZHRfc3RyZXJyb3Io
aW50IGVycnZhbCk7CisKKyNlbmRpZiAvKiBMSUJGRFRfSCAqLwpkaWZmIC0tZ2l0IGEvbGliL2xp
YmZkdC9saWJmZHRfZW52LmggYi9saWIvbGliZmR0L2xpYmZkdF9lbnYuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNzhkMDFmCi0tLSAvZGV2L251bGwKKysrIGIvbGliL2xp
YmZkdC9saWJmZHRfZW52LmgKQEAgLTAsMCArMSwxNDMgQEAKKyNpZm5kZWYgTElCRkRUX0VOVl9I
CisjZGVmaW5lIExJQkZEVF9FTlZfSAorLyoKKyAqIGxpYmZkdCAtIEZsYXQgRGV2aWNlIFRyZWUg
bWFuaXB1bGF0aW9uCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYgRGF2aWQgR2lic29uLCBJQk0gQ29y
cG9yYXRpb24uCisgKiBDb3B5cmlnaHQgMjAxMiBLaW0gUGhpbGxpcHMsIEZyZWVzY2FsZSBTZW1p
Y29uZHVjdG9yLgorICoKKyAqIGxpYmZkdCBpcyBkdWFsIGxpY2Vuc2VkOiB5b3UgY2FuIHVzZSBp
dCBlaXRoZXIgdW5kZXIgdGhlIHRlcm1zIG9mCisgKiB0aGUgR1BMLCBvciB0aGUgQlNEIGxpY2Vu
c2UsIGF0IHlvdXIgb3B0aW9uLgorICoKKyAqICBhKSBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0
d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiAgICAgbW9kaWZ5IGl0IHVu
ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMKKyAqICAg
ICBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNp
b24gMiBvZiB0aGUKKyAqICAgICBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRl
ciB2ZXJzaW9uLgorICoKKyAqICAgICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhl
IGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICAgICBidXQgV0lUSE9VVCBBTlkgV0FS
UkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogICAgIE1FUkNI
QU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUK
KyAqICAgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoK
KyAqICAgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJh
bCBQdWJsaWMKKyAqICAgICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3Qs
IHdyaXRlIHRvIHRoZSBGcmVlCisgKiAgICAgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEg
RnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24sCisgKiAgICAgTUEgMDIxMTAtMTMwMSBV
U0EKKyAqCisgKiBBbHRlcm5hdGl2ZWx5LAorICoKKyAqICBiKSBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yCisgKiAgICAgd2l0aG91dCBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nCisg
KiAgICAgY29uZGl0aW9ucyBhcmUgbWV0OgorICoKKyAqICAgICAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCisgKiAgICAgICAgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAg
ICAgICBkaXNjbGFpbWVyLgorICogICAgIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqICAgICAgICBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZworICogICAgICAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworICogICAg
ICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiAgICAgVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5ECisgKiAgICAgQ09O
VFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywK
KyAqICAgICBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRgorICogICAgIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UgQVJFCisgKiAgICAgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVCBPV05FUiBPUgorICogICAgIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogICAgIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAorICogICAgIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwor
ICogICAgIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pCisgKiAgICAgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiAgICAgQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgKiAgICAgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwKKyAqICAgICBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNs
dWRlIDxzdGRkZWYuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKworI2lmZGVmIEhBVkVfTElCQwor
I2luY2x1ZGUgPHN0ZGxpYi5oPgorI2VuZGlmCisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKworI2lm
ZGVmIF9fQ0hFQ0tFUl9fCisjZGVmaW5lIEZEVF9GT1JDRSBfX2F0dHJpYnV0ZV9fKChmb3JjZSkp
CisjZGVmaW5lIEZEVF9CSVRXSVNFIF9fYXR0cmlidXRlX18oKGJpdHdpc2UpKQorI2Vsc2UKKyNk
ZWZpbmUgRkRUX0ZPUkNFCisjZGVmaW5lIEZEVF9CSVRXSVNFCisjZW5kaWYKKwordHlwZWRlZiB1
aW50MTZfdCBGRFRfQklUV0lTRSBmZHQxNl90OwordHlwZWRlZiB1aW50MzJfdCBGRFRfQklUV0lT
RSBmZHQzMl90OwordHlwZWRlZiB1aW50NjRfdCBGRFRfQklUV0lTRSBmZHQ2NF90OworCisjZGVm
aW5lIEVYVFJBQ1RfQllURSh4LCBuKQkoKHVuc2lnbmVkIGxvbmcgbG9uZykoKHVpbnQ4X3QgKikm
eClbbl0pCisjZGVmaW5lIENQVV9UT19GRFQxNih4KSAoKEVYVFJBQ1RfQllURSh4LCAwKSA8PCA4
KSB8IEVYVFJBQ1RfQllURSh4LCAxKSkKKyNkZWZpbmUgQ1BVX1RPX0ZEVDMyKHgpICgoRVhUUkFD
VF9CWVRFKHgsIDApIDw8IDI0KSB8IChFWFRSQUNUX0JZVEUoeCwgMSkgPDwgMTYpIHwgXAorCQkJ
IChFWFRSQUNUX0JZVEUoeCwgMikgPDwgOCkgfCBFWFRSQUNUX0JZVEUoeCwgMykpCisjZGVmaW5l
IENQVV9UT19GRFQ2NCh4KSAoKEVYVFJBQ1RfQllURSh4LCAwKSA8PCA1NikgfCAoRVhUUkFDVF9C
WVRFKHgsIDEpIDw8IDQ4KSB8IFwKKwkJCSAoRVhUUkFDVF9CWVRFKHgsIDIpIDw8IDQwKSB8IChF
WFRSQUNUX0JZVEUoeCwgMykgPDwgMzIpIHwgXAorCQkJIChFWFRSQUNUX0JZVEUoeCwgNCkgPDwg
MjQpIHwgKEVYVFJBQ1RfQllURSh4LCA1KSA8PCAxNikgfCBcCisJCQkgKEVYVFJBQ1RfQllURSh4
LCA2KSA8PCA4KSB8IEVYVFJBQ1RfQllURSh4LCA3KSkKKworc3RhdGljIGlubGluZSB1aW50MTZf
dCBmZHQxNl90b19jcHUoZmR0MTZfdCB4KQoreworCXJldHVybiAoRkRUX0ZPUkNFIHVpbnQxNl90
KUNQVV9UT19GRFQxNih4KTsKK30KK3N0YXRpYyBpbmxpbmUgZmR0MTZfdCBjcHVfdG9fZmR0MTYo
dWludDE2X3QgeCkKK3sKKwlyZXR1cm4gKEZEVF9GT1JDRSBmZHQxNl90KUNQVV9UT19GRFQxNih4
KTsKK30KKworc3RhdGljIGlubGluZSB1aW50MzJfdCBmZHQzMl90b19jcHUoZmR0MzJfdCB4KQor
eworCXJldHVybiAoRkRUX0ZPUkNFIHVpbnQzMl90KUNQVV9UT19GRFQzMih4KTsKK30KK3N0YXRp
YyBpbmxpbmUgZmR0MzJfdCBjcHVfdG9fZmR0MzIodWludDMyX3QgeCkKK3sKKwlyZXR1cm4gKEZE
VF9GT1JDRSBmZHQzMl90KUNQVV9UT19GRFQzMih4KTsKK30KKworc3RhdGljIGlubGluZSB1aW50
NjRfdCBmZHQ2NF90b19jcHUoZmR0NjRfdCB4KQoreworCXJldHVybiAoRkRUX0ZPUkNFIHVpbnQ2
NF90KUNQVV9UT19GRFQ2NCh4KTsKK30KK3N0YXRpYyBpbmxpbmUgZmR0NjRfdCBjcHVfdG9fZmR0
NjQodWludDY0X3QgeCkKK3sKKwlyZXR1cm4gKEZEVF9GT1JDRSBmZHQ2NF90KUNQVV9UT19GRFQ2
NCh4KTsKK30KKyN1bmRlZiBDUFVfVE9fRkRUNjQKKyN1bmRlZiBDUFVfVE9fRkRUMzIKKyN1bmRl
ZiBDUFVfVE9fRkRUMTYKKyN1bmRlZiBFWFRSQUNUX0JZVEUKKworI2lmZGVmIF9fQVBQTEVfXwor
I2luY2x1ZGUgPEF2YWlsYWJpbGl0eU1hY3Jvcy5oPgorCisvKiBzdHJubGVuKCkgaXMgbm90IGF2
YWlsYWJsZSBvbiBNYWMgT1MgPCAxMC43ICovCisjIGlmICFkZWZpbmVkKE1BQ19PU19YX1ZFUlNJ
T05fMTBfNykgfHwgKE1BQ19PU19YX1ZFUlNJT05fTUFYX0FMTE9XRUQgPCBcCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1BQ19PU19YX1ZFUlNJT05fMTBfNykKKwor
I2RlZmluZSBzdHJubGVuIGZkdF9zdHJubGVuCisKKy8qCisgKiBmZHRfc3RybmxlbjogcmV0dXJu
cyB0aGUgbGVuZ3RoIG9mIGEgc3RyaW5nIG9yIG1heF9jb3VudCAtIHdoaWNoIGV2ZXIgaXMKKyAq
IHNtYWxsZXN0LgorICogSW5wdXQgMSBzdHJpbmc6IHRoZSBzdHJpbmcgd2hvc2Ugc2l6ZSBpcyB0
byBiZSBkZXRlcm1pbmVkCisgKiBJbnB1dCAyIG1heF9jb3VudDogdGhlIG1heGltdW0gdmFsdWUg
cmV0dXJuZWQgYnkgdGhpcyBmdW5jdGlvbgorICogT3V0cHV0OiBsZW5ndGggb2YgdGhlIHN0cmlu
ZyBvciBtYXhfY291bnQgKHRoZSBzbWFsbGVzdCBvZiB0aGUgdHdvKQorICovCitzdGF0aWMgaW5s
aW5lIHNpemVfdCBmZHRfc3Rybmxlbihjb25zdCBjaGFyICpzdHJpbmcsIHNpemVfdCBtYXhfY291
bnQpCit7CisgICAgY29uc3QgY2hhciAqcCA9IG1lbWNocihzdHJpbmcsIDAsIG1heF9jb3VudCk7
CisgICAgcmV0dXJuIHAgPyBwIC0gc3RyaW5nIDogbWF4X2NvdW50OworfQorCisjZW5kaWYgLyog
IWRlZmluZWQoTUFDX09TX1hfVkVSU0lPTl8xMF83KSB8fCAoTUFDX09TX1hfVkVSU0lPTl9NQVhf
QUxMT1dFRCA8CisgICAgICAgICAgTUFDX09TX1hfVkVSU0lPTl8xMF83KSAqLworCisjZW5kaWYg
LyogX19BUFBMRV9fICovCisKKyNlbmRpZiAvKiBMSUJGRFRfRU5WX0ggKi8KZGlmZiAtLWdpdCBh
L2xpYi9saWJmZHQvbGliZmR0X2ludGVybmFsLmggYi9saWIvbGliZmR0L2xpYmZkdF9pbnRlcm5h
bC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc2ODFlMTkKLS0tIC9kZXYv
bnVsbAorKysgYi9saWIvbGliZmR0L2xpYmZkdF9pbnRlcm5hbC5oCkBAIC0wLDAgKzEsOTUgQEAK
KyNpZm5kZWYgTElCRkRUX0lOVEVSTkFMX0gKKyNkZWZpbmUgTElCRkRUX0lOVEVSTkFMX0gKKy8q
CisgKiBsaWJmZHQgLSBGbGF0IERldmljZSBUcmVlIG1hbmlwdWxhdGlvbgorICogQ29weXJpZ2h0
IChDKSAyMDA2IERhdmlkIEdpYnNvbiwgSUJNIENvcnBvcmF0aW9uLgorICoKKyAqIGxpYmZkdCBp
cyBkdWFsIGxpY2Vuc2VkOiB5b3UgY2FuIHVzZSBpdCBlaXRoZXIgdW5kZXIgdGhlIHRlcm1zIG9m
CisgKiB0aGUgR1BMLCBvciB0aGUgQlNEIGxpY2Vuc2UsIGF0IHlvdXIgb3B0aW9uLgorICoKKyAq
ICBhKSBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUg
aXQgYW5kL29yCisgKiAgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdl
bmVyYWwgUHVibGljIExpY2Vuc2UgYXMKKyAqICAgICBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29m
dHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUKKyAqICAgICBMaWNlbnNl
LCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICAgICBUaGlz
IGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1
bCwKKyAqICAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w
bGllZCB3YXJyYW50eSBvZgorICogICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqICAgICBHTlUgR2VuZXJhbCBQdWJsaWMg
TGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICAgICBZb3Ugc2hvdWxkIGhhdmUgcmVj
ZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKKyAqICAgICBMaWNlbnNlIGFs
b25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlCisgKiAgICAg
U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBC
b3N0b24sCisgKiAgICAgTUEgMDIxMTAtMTMwMSBVU0EKKyAqCisgKiBBbHRlcm5hdGl2ZWx5LAor
ICoKKyAqICBiKSBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yCisgKiAgICAgd2l0aG91dCBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nCisgKiAgICAgY29uZGl0aW9ucyBhcmUgbWV0Ogor
ICoKKyAqICAgICAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlCisgKiAgICAgICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgICAgICBkaXNjbGFpbWVyLgorICogICAgIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
KyAqICAgICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZworICogICAgICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscworICogICAgICAgIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiAgICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5ECisgKiAgICAgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywKKyAqICAgICBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRgorICogICAgIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiAgICAgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogICAg
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLAorICogICAgIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVAorICogICAgIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogICAgIExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiAgICAgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiAgICAgQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
CisgKiAgICAgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwKKyAqICAgICBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisjaW5jbHVkZSA8ZmR0Lmg+CisKKyNkZWZpbmUgRkRUX0FM
SUdOKHgsIGEpCQkoKCh4KSArIChhKSAtIDEpICYgfigoYSkgLSAxKSkKKyNkZWZpbmUgRkRUX1RB
R0FMSUdOKHgpCQkoRkRUX0FMSUdOKCh4KSwgRkRUX1RBR1NJWkUpKQorCisjZGVmaW5lIEZEVF9D
SEVDS19IRUFERVIoZmR0KSBcCisJeyBcCisJCWludCBlcnJfOyBcCisJCWlmICgoZXJyXyA9IGZk
dF9jaGVja19oZWFkZXIoZmR0KSkgIT0gMCkgXAorCQkJcmV0dXJuIGVycl87IFwKKwl9CisKK2lu
dCBmZHRfY2hlY2tfbm9kZV9vZmZzZXRfKGNvbnN0IHZvaWQgKmZkdCwgaW50IG9mZnNldCk7Citp
bnQgZmR0X2NoZWNrX3Byb3Bfb2Zmc2V0Xyhjb25zdCB2b2lkICpmZHQsIGludCBvZmZzZXQpOwor
Y29uc3QgY2hhciAqZmR0X2ZpbmRfc3RyaW5nXyhjb25zdCBjaGFyICpzdHJ0YWIsIGludCB0YWJz
aXplLCBjb25zdCBjaGFyICpzKTsKK2ludCBmZHRfbm9kZV9lbmRfb2Zmc2V0Xyh2b2lkICpmZHQs
IGludCBub2Rlb2Zmc2V0KTsKKworc3RhdGljIGlubGluZSBjb25zdCB2b2lkICpmZHRfb2Zmc2V0
X3B0cl8oY29uc3Qgdm9pZCAqZmR0LCBpbnQgb2Zmc2V0KQoreworCXJldHVybiAoY29uc3QgY2hh
ciAqKWZkdCArIGZkdF9vZmZfZHRfc3RydWN0KGZkdCkgKyBvZmZzZXQ7Cit9CisKK3N0YXRpYyBp
bmxpbmUgdm9pZCAqZmR0X29mZnNldF9wdHJfd18odm9pZCAqZmR0LCBpbnQgb2Zmc2V0KQorewor
CXJldHVybiAodm9pZCAqKSh1aW50cHRyX3QpZmR0X29mZnNldF9wdHJfKGZkdCwgb2Zmc2V0KTsK
K30KKworc3RhdGljIGlubGluZSBjb25zdCBzdHJ1Y3QgZmR0X3Jlc2VydmVfZW50cnkgKmZkdF9t
ZW1fcnN2Xyhjb25zdCB2b2lkICpmZHQsIGludCBuKQoreworCWNvbnN0IHN0cnVjdCBmZHRfcmVz
ZXJ2ZV9lbnRyeSAqcnN2X3RhYmxlID0KKwkJKGNvbnN0IHN0cnVjdCBmZHRfcmVzZXJ2ZV9lbnRy
eSAqKQorCQkoKGNvbnN0IGNoYXIgKilmZHQgKyBmZHRfb2ZmX21lbV9yc3ZtYXAoZmR0KSk7CisK
KwlyZXR1cm4gcnN2X3RhYmxlICsgbjsKK30KK3N0YXRpYyBpbmxpbmUgc3RydWN0IGZkdF9yZXNl
cnZlX2VudHJ5ICpmZHRfbWVtX3Jzdl93Xyh2b2lkICpmZHQsIGludCBuKQoreworCXJldHVybiAo
dm9pZCAqKSh1aW50cHRyX3QpZmR0X21lbV9yc3ZfKGZkdCwgbik7Cit9CisKKyNkZWZpbmUgRkRU
X1NXX01BR0lDCQkofkZEVF9NQUdJQykKKworI2VuZGlmIC8qIExJQkZEVF9JTlRFUk5BTF9IICov
CmRpZmYgLS1naXQgYS9saWIvbGliZmR0L3ZlcnNpb24ubGRzIGIvbGliL2xpYmZkdC92ZXJzaW9u
LmxkcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOGZiNjlmCi0tLSAvZGV2
L251bGwKKysrIGIvbGliL2xpYmZkdC92ZXJzaW9uLmxkcwpAQCAtMCwwICsxLDcxIEBACitMSUJG
RFRfMS4yIHsKKwlnbG9iYWw6CisJCWZkdF9uZXh0X25vZGU7CisJCWZkdF9jaGVja19oZWFkZXI7
CisJCWZkdF9tb3ZlOworCQlmZHRfc3RyaW5nOworCQlmZHRfbnVtX21lbV9yc3Y7CisJCWZkdF9n
ZXRfbWVtX3JzdjsKKwkJZmR0X3N1Ym5vZGVfb2Zmc2V0X25hbWVsZW47CisJCWZkdF9zdWJub2Rl
X29mZnNldDsKKwkJZmR0X3BhdGhfb2Zmc2V0X25hbWVsZW47CisJCWZkdF9wYXRoX29mZnNldDsK
KwkJZmR0X2dldF9uYW1lOworCQlmZHRfZ2V0X3Byb3BlcnR5X25hbWVsZW47CisJCWZkdF9nZXRf
cHJvcGVydHk7CisJCWZkdF9nZXRwcm9wX25hbWVsZW47CisJCWZkdF9nZXRwcm9wOworCQlmZHRf
Z2V0X3BoYW5kbGU7CisJCWZkdF9nZXRfYWxpYXNfbmFtZWxlbjsKKwkJZmR0X2dldF9hbGlhczsK
KwkJZmR0X2dldF9wYXRoOworCQlmZHRfc3VwZXJub2RlX2F0ZGVwdGhfb2Zmc2V0OworCQlmZHRf
bm9kZV9kZXB0aDsKKwkJZmR0X3BhcmVudF9vZmZzZXQ7CisJCWZkdF9ub2RlX29mZnNldF9ieV9w
cm9wX3ZhbHVlOworCQlmZHRfbm9kZV9vZmZzZXRfYnlfcGhhbmRsZTsKKwkJZmR0X25vZGVfY2hl
Y2tfY29tcGF0aWJsZTsKKwkJZmR0X25vZGVfb2Zmc2V0X2J5X2NvbXBhdGlibGU7CisJCWZkdF9z
ZXRwcm9wX2lucGxhY2U7CisJCWZkdF9ub3BfcHJvcGVydHk7CisJCWZkdF9ub3Bfbm9kZTsKKwkJ
ZmR0X2NyZWF0ZTsKKwkJZmR0X2FkZF9yZXNlcnZlbWFwX2VudHJ5OworCQlmZHRfZmluaXNoX3Jl
c2VydmVtYXA7CisJCWZkdF9iZWdpbl9ub2RlOworCQlmZHRfcHJvcGVydHk7CisJCWZkdF9lbmRf
bm9kZTsKKwkJZmR0X2ZpbmlzaDsKKwkJZmR0X29wZW5faW50bzsKKwkJZmR0X3BhY2s7CisJCWZk
dF9hZGRfbWVtX3JzdjsKKwkJZmR0X2RlbF9tZW1fcnN2OworCQlmZHRfc2V0X25hbWU7CisJCWZk
dF9zZXRwcm9wOworCQlmZHRfZGVscHJvcDsKKwkJZmR0X2FkZF9zdWJub2RlX25hbWVsZW47CisJ
CWZkdF9hZGRfc3Vibm9kZTsKKwkJZmR0X2RlbF9ub2RlOworCQlmZHRfc3RyZXJyb3I7CisJCWZk
dF9vZmZzZXRfcHRyOworCQlmZHRfbmV4dF90YWc7CisJCWZkdF9hcHBlbmRwcm9wOworCQlmZHRf
Y3JlYXRlX2VtcHR5X3RyZWU7CisJCWZkdF9maXJzdF9wcm9wZXJ0eV9vZmZzZXQ7CisJCWZkdF9n
ZXRfcHJvcGVydHlfYnlfb2Zmc2V0OworCQlmZHRfZ2V0cHJvcF9ieV9vZmZzZXQ7CisJCWZkdF9u
ZXh0X3Byb3BlcnR5X29mZnNldDsKKwkJZmR0X2ZpcnN0X3N1Ym5vZGU7CisJCWZkdF9uZXh0X3N1
Ym5vZGU7CisJCWZkdF9hZGRyZXNzX2NlbGxzOworCQlmZHRfc2l6ZV9jZWxsczsKKwkJZmR0X3N0
cmluZ2xpc3RfY29udGFpbnM7CisJCWZkdF9zdHJpbmdsaXN0X2NvdW50OworCQlmZHRfc3RyaW5n
bGlzdF9zZWFyY2g7CisJCWZkdF9zdHJpbmdsaXN0X2dldDsKKwkJZmR0X3Jlc2l6ZTsKKwkJZmR0
X292ZXJsYXlfYXBwbHk7CisKKwlsb2NhbDoKKwkJKjsKK307Ci0tIAoyLjcuNAoKCl9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWls
aW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMu
eGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:17 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807T-0006Bl-Nm; Mon, 16 Apr 2018 09:08:15 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807R-0006BW-IY
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:13 +0000
X-Inumbo-ID: 8e74c0e3-4155-11e8-9728-bc764e045a96
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [40.107.0.59]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 8e74c0e3-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:15 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=N6RfRf8IZmYz1HzAto+8wY7+Udr9rGvyIQ+HYs0m2DE=;
 b=bjHVy4xIrhzu5yqCsXd+JOnixRcWX6fkkOSJNBjkxz3mTNRd0lKftOrwChwG/9msXqP3FUiSMyUmdpx2KbaAmqVS8Vd7oqj6Re/ow9bYGV5SBZ/edaIBfqHm9ELj/OJpmh5x9s1b9XEPoFHYSojwhywvKoOaIkDMq+DWohWMeSk=
Received: from DB5PR08CA0005.eurprd08.prod.outlook.com
 (2a01:111:e400:52c3::15) by AM4PR0801MB1587.eurprd08.prod.outlook.com
 (2603:10a6:200:3e::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 09:08:05 +0000
Received: from AM5EUR03FT019.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::203) by DB5PR08CA0005.outlook.office365.com
 (2a01:111:e400:52c3::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:05 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT019.mail.protection.outlook.com (10.152.16.104) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:04 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:07:51 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:34 +0800
Message-ID: <1523869666-30659-2-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(396003)(346002)(39860400002)(376002)(2980300002)(438002)(199004)(189003)(48376002)(126002)(446003)(476003)(50466002)(2616005)(47776003)(11346002)(336012)(426003)(8676002)(77096007)(186003)(486006)(59450400001)(106466001)(49486002)(51416003)(54906003)(316002)(36756003)(5660300001)(106002)(76176011)(110136005)(86362001)(16586007)(305945005)(6666003)(4326008)(104016004)(50226002)(2906002)(356003)(26826003)(8936002)(478600001)(246002)(72206003)(26005)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR0801MB1587; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT019;
 1:0RApWQy7geP6iFZBxCm7x3Ak/1zmSW1sii0x32HqIoOeIBNs7mN6WfFa/xW/zBzQoAbxxIlL90MOAqU4GE+fBrebylJ3bSCljPdlYc6s95UcqGaX1voc7kOqUU7pLCfK
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR0801MB1587; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1587;
 3:qgcK+zNoSVoSNbkB/aQtH/VUSiD8IYoaHwvRhDm+32oTks/CPHYB848TLiYBk0cvC9KxgBqfIacMv/Lb0tU39ucLvZL+wpe2PqQcVEX1uGIeqVdXvbKmsb6Gjieh1k2qgm7xnpQstzPyizjkw9EhT5fM3ISfKAQJOULofB9pW04zRoc/KjJK/LenR5s/B2ZxfBC8xDpMhh+8ip4EamcejvPXueOb5rd34UNlj/XuyZd9M+CJ11mAUjFv6NSjQozk/y0krgqpbdOM5mcQ5R+BmQDjYqJW1ZYkeGpei7dUFmUDAEkLghKkqP/xiKP/KS45RNEcOGUTHvatca3be1SfAO71OhvxwL1CVVIK55m67PE=;
 25:NlEKMDBt5isVvflV7Li3cSJ9c3GthtxFOefUEsaBD+/GPwCtHpTx5h/WAsXIusc5HaTLaZ8YkG6Mq5WTuvasp+Fq59+9yrJfwYv+GLSUZdwX7mbwl2VtkyzSNa6npGAcPK5MEYfsatP8/u1pMT/S5U6RBMuY40x3AHe5IC9vU78kLRahbFHsEvky69dU74tE9ZEmhdLEl7WlsIYeAjkRmxo8f/L37QrLKTYi+uZGjd48PCq2Zgl81GgzykioXnJP1cKviSSZTIXp0bW+JQpRmJbXYrqS7xdqTSXjYKBjlixMWD57NPlwr9AsnEk0U6shxhAN0KOgm2rD5GxDJFa0mQ==
X-MS-TrafficTypeDiagnostic: AM4PR0801MB1587:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1587;
 31:meCTHkF0j1ORy/f2ku6GAFrZhiuiLVd2i6q8y91aGjKt8RcHqDrEINGC6xGsapGakCh+klNRTGFSUvOpuEMz6/kvyFQt4UMwgaR24kjAiU0TDUzVGnDwVP1TtZFSmclu6JYqKCkDKAuTchwsWsP4OL+NFJhWlmJ/D8QRjA+kewP1vUlrEAWvMuteSBM7hh2JW4wf1zcMEQ9v/EZla8eBN/fr7FGAnkpvic3YRbHehhk=;
 20:FAmCSEyiLOd5MJe2kWW32VfymWHJjvktJ9iHfAFYHLJ5ZZ57sA1PzGnciYQxAvZNfyFaReuOWRTKcOs2Y2GAWKSsQxHrdftcBLmj2h0KqoOPxpsJ+L177v+T+/BtCP8+e7VA2/kqB5DwNsFvgqZxCkPZccGOdKFxgcVfvHrkLcZ/hYLn0l+7yAx56YbrC4TQLplBzHVrHWkjzbECqIgI5J6B4iB/6S837/NpqkH0avFcGUXgtLr7rWcrOiXcgXEM;
 4:kPKUOtvF2Ixx4HOFjG4iK2QTvHkSGP/NwKD5AV+am29BGkQOYYg0rS64NUq/JJ4A/A+GvwKCita6j6pIP/waGLUR8YlnSg/pVKQ7F9yZOynednYtGamM8jZD3PMOrwkHqjZMovmyM4su7u7tHOenCMiLUixT6RS7kiE4fuVwRZagoyqMMWn9Fp0rXzhV8LoSyD4aEC3AXiq9moALgNMdoSiQ3idg+1zz09YJgDCFC40jSwBzCyOJXBAC0xEwTQhVc4yQ/qr68Pdr+DufLTXLBI7iRn99A1l5azMR737EiFgYHj6BrHehsSFuPRTyAsSo
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR0801MB1587930FAFB2EDC991D9AA5E9EB00@AM4PR0801MB1587.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231232)(944501327)(52105095)(10201501046)(3002001)(93006095)(93004095)(6055026)(6041310)(20161123558120)(20161123562045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:AM4PR0801MB1587; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0801MB1587; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR0801MB1587;
 23:BsoD192BWkDZdbAMD7DZOf3ueBNhlYhUcRloZqc?=
 =?us-ascii?Q?3/fljcOJIKD0MzRgF55B6tGRhLUC+4+i3G+ugvuRBlOUYBkcWMIpnsLfFgQa?=
 =?us-ascii?Q?beOxpcffDB5koarIlO3a0q6cqttFBePFcXDOI1IZAWjFx8lB35mK1cYp2w9b?=
 =?us-ascii?Q?HhhfT4Pi8bmPAXbDX3KW4HH0HPa/1Isyz7G1VJ1ul6rZjuLNuSgzeUf+ItOM?=
 =?us-ascii?Q?tdesoQozvSWcL10EzRKGNbEzIuGB9hq/WjtqMoZh5KBrmjtpLL4gWx2Tav+p?=
 =?us-ascii?Q?1L5FpjPiB6GOQZsfxMmTXbKejKL2IznOJO63tm44/6rlbN33ncO6jYiLVU70?=
 =?us-ascii?Q?AebG1VoIH/lf4BCSiO2nKfMae/4owViqCv9ZT3+Gjniuz1mRTzatCECynRP5?=
 =?us-ascii?Q?8QNy6TTT8LDeySppECmcR5goG9JUBkWM6eVNZcXY53HE/JVIGzu+mOwtYQVB?=
 =?us-ascii?Q?7g0L3JyGpQf3RFg/lDqQdCmnSv9aOEW6h/gXfWpefdAJ60at+bwZimB27OUN?=
 =?us-ascii?Q?/YRI/GUCVKRyYz9TbTJXa66RvBzg74gUoMhzhFKSlzuImVWLG0XwB5O4SsVU?=
 =?us-ascii?Q?fIxZMECKXbWGmq2Bb4bYeANt7RbqVM+UVmBlUjtHegzew6se7BykhBXMM/dW?=
 =?us-ascii?Q?dSLjn8KkEiTPk+AbWVBh/QExPasrDOJtf/M4N9eSY/lGjygzT5XPk9CK0uiq?=
 =?us-ascii?Q?h1TgEQzH1p+Ft23cC+seVt05mcqx5uGWncxMnkTOmWlgNTPk9SHsjgWbE4D6?=
 =?us-ascii?Q?w4huNskBSHx6TomdeeBNPhTbMyizXlRhVSJXOFIDrTX6vy01JwLjUjbVvJbn?=
 =?us-ascii?Q?iIZpu5k8osZwz+xBw5/fcsF97h8KrlQhrtoy9hcEgB52ERm0fZeHeP+BB3c4?=
 =?us-ascii?Q?ydBlkwmt0kkuJRL1hE2AyYiYKWYxuKDZUfjSNq0ghFGzzG4vQn0OqoGLGcSI?=
 =?us-ascii?Q?bdXMXiaNW9jIcW+64gKuMvPiLaN0hOJ7AkwNplSVaZkPtvhsHz2r+p82aJMp?=
 =?us-ascii?Q?wjsg4wu+sOCJ8BX5ATK85kz+ILZHhq3/WsY+qsuaS8btnkEMHHskk0cU1yMo?=
 =?us-ascii?Q?mrneit8oVJWGOL8G7yAnagvXibSRgaYNCEAJ/Z87JA+rx4bSovhfjFQUqTmt?=
 =?us-ascii?Q?ZmsdRaUHjm/M=3D?=
X-Microsoft-Antispam-Message-Info: n4OduOViOlYcQBaHKA/y5MtVxMmjKpsFGhZkGcQrvcRUW/7As83FurV3qxxT9bMNFFsoxeniUh+b2I3gQF7LLoKlR3F221ie7TzhYNPAAF2psKH1h5opSmGLDR/WNQ+AM3XBegGdh7L/yZML3tXIUha2PCyBuYQ2G81OOMFQPV3upe9xivOXUfosMgmoduAvUMSg6/yFFmNwsBGuQC76Oz40ej7sK9JlMBVBYWDkj4P6FKTfK/MYp8btpyldGLdQzoLR/vsJNb3PV1biQ+OUehErB02T8wfXKERHd4DccMEPAQ77r3fo8f2t8/JacqgAvdlqXajSazI8YXPr79vRmQFHCpvWHAyIh/6Dute4mTTDJWWNgy7HRuAY2Zh3q7q7G5F/aiDDR3mcD5+npN7WIRSKrWMa+q06E9KGcor/xJM=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1587;
 6:4EGiuoGReFs+OtO4knN5LQZ3bNAPYtoT1DymGChhywxKC7Xcxk5Q+Z4JlUAN+YIC7narSIBJ2VFQIHqNVUDnXUtnh6G0GqfzkzMWVl9M+gQl0ShmBCBGY1CNgbvbaP/H8TVNTZHSTHM3Yj6rtfTLrIFDwrxrYWwg6p4bGxFl9c4kmcdnZp6Uwbbx9w+3zxO4EWrP1q2bUypnUg8jtF3Rj3N9m03CiWyERfvjPDw/60Xbw0DPLI/NHKZmhqzmklHkDSrJ0DIACbR/IUfiJMsQ99LR8dgKIJwytxmx2ubkGKYmsBp4U4Bbipa/xnOPUXzfya6eRdAfL5nWGJalQgU3ToL2jKA0VgqddWw0XnCnRcN7b8ztjEgTxRcUhgIRFq2WJnYRMDU0ppFpYv1LQJbab6ar781I9qOxxzViX34m1VbgXkNiqqCqWYcgPt3lsMsriB9KPFYihtd7UxZIOzUEFX33jlWN6x8YwjL+fMRu7l366SQvV9IfK6TQtn15zanv;
 5:gbP+rpUeSLCmJdHwC3oRXuf2FKtI0fMS3EF0orwdQUZEZEscP37NOTPlHrzhnr2P4GPtjG8QRZc7tx/px380yah6VUnbssYfYL6gR1GV2Z5hYxUFlfDna625Ksgr4LwXnJRBnCjvLdXSh4Vbka9QMC+b6qXEyD8J8+pipzF4gt4=;
 24:gfzRRuzfczDJo2+nBihJVgrEHTqHHG5wcr0iYBcMXTcBf5en4m5Q5fzWS1Xzz1HHPdbsfkkBIH6wQl1ChxsXz4AYdnay7QUAKor9mZNqWBs=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1587;
 7:n+Ql1UnR5JWPSvE2RyQWqfrhFcN6Pn8lFltaTYQ0Dh2BwbOa6FeYDOTAVPxi+8YythCQZqasxyacWPXD1AVMOlkPOQEZVzIyiWfT7zhqq9MiH2sF3y9iMCtNCE30jXP25uH5ipUaw02sRS/zljGNc/h2q+tkw1V4KyF3LzMCGzr22XSuIDG+WdV955cGFy7Kobs5g1/UCml3qGXul0T6cxcN5B9PMjyqQHHPnASdqtsSsSZVuCNvpXLpmmlRBC+N
X-MS-Office365-Filtering-Correlation-Id: f714ebb2-2d92-42bc-57b9-08d5a37990a3
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:04.7662 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f714ebb2-2d92-42bc-57b9-08d5a37990a3
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0801MB1587
Subject: [Minios-devel] [UNIKRAFT PATCH 01/13] build: Adjust sed script to
 avoid treating arm64 as arm
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2UgYXJlIHVzaW5nIHRoZSBzZWQgc2NyaXB0cyB0byBwYXJzZSB0YXJnZXQgYXJjaGl0ZWN0dXJl
IGZyb20KY29tcGlsZXIncyBvdXRwdXQuIEJ1dCBmb3IgYXJtNjQsIHRoZSBIT1NUQVJDSCBhbmQg
VUtfQVJDSCB3b3VsZApiZSBmb3JtYXR0ZWQgdG8gYXJtIGJ5IG1pc3Rha2UuIFRoYXQgaXMgYmVj
YXVzZSBvZiB0aGUgb3JkZXIgb2YKc2VkJ3Mgc2NyaXB0czoKLWUgJ3MvYXJtNjQuKi9hcm02NC8n
IC1lICdzL2FhcmNoNjQuKi9hcm02NC8nIFwKLWUgJ3MvYXJtLiovYXJtLycKVGhlIGZpcnN0IGxp
bmUncyBvdXRwdXQgImFybTY0IiB3aWxsIGJlIGZvcm1hdHRlZCB0byAiYXJtIiBieSB0aGUKc2Vj
b25kIGxpbmUuIFNvIHdlIGhhdmUgdG8gZ2l2ZSBzb21lIHJlc2VydmUgY2hhcmFjdGVycyBpbiBz
ZWNvbmQKbGluZSB0byBwcmV2ZW50IHRyYW5zZmVyICJhcm02NCIgdG8gImFybSIKClNpZ25lZC1v
ZmYtYnk6IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPgotLS0KIE1ha2VmaWxlIHwgNyArKyst
LS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlm
ZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKaW5kZXggYjE3N2JmZi4uODAxYjgyZiAxMDA2
NDQKLS0tIGEvTWFrZWZpbGUKKysrIGIvTWFrZWZpbGUKQEAgLTI4OCwxMyArMjg4LDEyIEBAIGV4
cG9ydCBIT1NUQVJDSCA6PSAkKHNoZWxsIExDX0FMTD1DICQoSE9TVENDX05PQ0NBQ0hFKSAtdiAy
PiYxIHwgXAogCQkgICAgICAgLWUgJ3MvaS44Ni94ODYvJyBcCiAJCSAgICAgICAtZSAncy9zdW40
dS9zcGFyYzY0LycgXAogCQkgICAgICAgLWUgJ3MvYXJtNjQuKi9hcm02NC8nIC1lICdzL2FhcmNo
NjQuKi9hcm02NC8nIFwKLQkJICAgICAgIC1lICdzL2FybS4qL2FybS8nIFwKKwkJICAgICAgIC1l
ICcvYXJtNjQvISBzL2FybS4qL2FybS8nIFwKIAkJICAgICAgIC1lICdzL3NhMTEwL2FybS8nIFwK
IAkJICAgICAgIC1lICdzL3BwYzY0L3Bvd2VycGM2NC8nIFwKIAkJICAgICAgIC1lICdzL3BwYy9w
b3dlcnBjLycgXAogCQkgICAgICAgLWUgJ3MvbWFjcHBjL3Bvd2VycGMvJyBcCiAJCSAgICAgICAt
ZSAncy9zaC4qL3NoLycgKQotCiBleHBvcnQgSE9TVEFSIEhPU1RBUyBIT1NUQ0MgSE9TVENDX1ZF
UlNJT04gSE9TVENYWCBIT1NUTEQgSE9TVEFSQ0gKIGV4cG9ydCBIT1NUQ0NfTk9DQ0FDSEUgSE9T
VENYWF9OT0NDQUNIRQogCkBAIC0zMTMsNyArMzEyLDcgQEAgZXhwb3J0IFVLX0FSQ0gJPz0gJChz
aGVsbCBlY2hvICIkKGNhbGwgcXN0cmlwLCQoQVJDSCkpIiB8IFwKIAkJICAgICAgIC1lICdzL2ku
ODYveDg2LycgXAogCQkgICAgICAgLWUgJ3Mvc3VuNHUvc3BhcmM2NC8nIFwKIAkJICAgICAgIC1l
ICdzL2FybTY0LiovYXJtNjQvJyAtZSAncy9hYXJjaDY0LiovYXJtNjQvJyBcCi0JCSAgICAgICAt
ZSAncy9hcm0uKi9hcm0vJyBcCisJCSAgICAgICAtZSAnL2FybTY0LyEgcy9hcm0uKi9hcm0vJyBc
CiAJCSAgICAgICAtZSAncy9zYTExMC9hcm0vJyBcCiAJCSAgICAgICAtZSAncy9wcGM2NC9wb3dl
cnBjNjQvJyBcCiAJCSAgICAgICAtZSAncy9wcGMvcG93ZXJwYy8nIFwKQEAgLTMyNyw3ICszMjYs
NyBAQCBleHBvcnQgVUtfQVJDSAk/PSAkKHNoZWxsIGVjaG8gIiQoSE9TVEFSQ0gpIiB8IFwKIAkJ
ICAgICAgIC1lICdzL2kuODYveDg2LycgXAogCQkgICAgICAgLWUgJ3Mvc3VuNHUvc3BhcmM2NC8n
IFwKIAkJICAgICAgIC1lICdzL2FybTY0LiovYXJtNjQvJyAtZSAncy9hYXJjaDY0LiovYXJtNjQv
JyBcCi0JCSAgICAgICAtZSAncy9hcm0uKi9hcm0vJyBcCisJCSAgICAgICAtZSAnL2FybTY0LyEg
cy9hcm0uKi9hcm0vJyBcCiAJCSAgICAgICAtZSAncy9zYTExMC9hcm0vJyBcCiAJCSAgICAgICAt
ZSAncy9wcGM2NC9wb3dlcnBjNjQvJyBcCiAJCSAgICAgICAtZSAncy9wcGMvcG93ZXJwYy8nIFwK
LS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVj
dC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlv
cy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:17 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807T-0006Bg-Lt; Mon, 16 Apr 2018 09:08:15 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807R-0006BV-HI
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:13 +0000
X-Inumbo-ID: 8dfa8a8a-4155-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::623])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 8dfa8a8a-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:15 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=S2RgvQx+3CwgH/1U4Fg9AFF5tBBQTwaEE6LvtcRIn5s=;
 b=T1D6Sadvz9Ud3bStQ0h3HQ2ZExWAvsWggK04GPv8kRx22c7rangIgpdYBYkNO8GPpj+CPu7pEb5OcquLsAxVSCy7EV8NSCtjoiZz8hgyK+ml0IFa0wTAvbo4+e9n9bGl9ftSqwRz3lELtFIGVLxpk60OCyJCJ9QK2h35d44+wUo=
Received: from DB6PR0802CA0047.eurprd08.prod.outlook.com (2603:10a6:4:a3::33)
 by HE1PR0801MB1595.eurprd08.prod.outlook.com (2603:10a6:3:14::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Mon, 16
 Apr 2018 09:08:03 +0000
Received: from AM5EUR03FT024.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::204) by DB6PR0802CA0047.outlook.office365.com
 (2603:10a6:4:a3::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:03 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT024.mail.protection.outlook.com (10.152.16.175) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:03 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:07:49 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:33 +0800
Message-ID: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(39860400002)(396003)(346002)(376002)(2980300002)(438002)(189003)(199004)(36756003)(246002)(426003)(305945005)(336012)(316002)(26005)(478600001)(2906002)(47776003)(86362001)(72206003)(5660300001)(104016004)(106002)(26826003)(110136005)(106466001)(59450400001)(54906003)(486006)(4326008)(16586007)(186003)(8676002)(51416003)(48376002)(6666003)(77096007)(8936002)(49486002)(2616005)(356003)(126002)(50466002)(476003)(50226002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0801MB1595; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT024;
 1:6rkIVLMXEJoxcHUO/U8zI06inIwGfjClELAUtEiTxmfAqomZMEQJBPP7I/s+1iFfv2q+KAm6kV1Wh9NhDFyPS0/Zhivn738906QdfHbZK+eM0K/aXwCXqhRUbdWkUYiv
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0801MB1595; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 3:j241j1uPy7C0Gd+SG/C6MAPpZA4/EbV4WVtJADhhYXFmEV9NT0UHNj72J+j1tR3HqOZbLgvxxs6+WfSgVxz2t4BOkj+7yTntrKgvvp8dGcP5U4Gt3fCgXSQbbv87SKju3ASd6MyRod7e3mL2EAfPRgyz+z2ZM1vjd9MSm0TXDXPrwz86Mf6eFXRmpfOwM0g8IRLuJzIjexBKWtJf3WQEKS2Z3mGa4b/oPqDZLnPFzDCegAOtj/P4wS18mRVSi+eytlfLuGVuTVI7ztvZMpDyFQFWMomvIBImA2yluhNbSCObdPyYWlUfP0JiA6tc803Rd+uNrwbLDQad8FKTS2oj4D9PnWX4p45g53gcSCotOr0=;
 25:cQTroxF4cwPVKCfTTZJoaASe7AsDrDTlu/uE2i9aZsP2mpp9JvS32qNEF7MsBLWrZJ51SJey+GBkp/+6A04G8487NKFXxFWDKBMpOJFUeGKl1B/i7AVsIqE1P9IkURIsldFEGcPOm4i3v7MUZtmZnjFoN/g2UxdDVUMFtCI+ZJk2G0MrBJMo5FUqiUDBPPvRjNw29nQjCVszHqWJr3rXs2NRluI43g+U2gUUZB42dOE6rA7APLV+/jPNv2r9lSRaUrM2O0PnSHKoV0dq49xR2Dp+r7dBpY0T18MMX2JlTPUZy8BG+hGV+Zp++71tsmsryFNv9UHLJLrHZR4sNRQwKg==
X-MS-TrafficTypeDiagnostic: HE1PR0801MB1595:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 31:jkBprlrHajgckjy4b+NLFvtDT6Lp26oTgpIxvNK4FJM9olNAavF2x+KvSWsY64e/TAHWJu+iKGHTze0aKi9mjcJPa+uHBpC8kf7TnP+haIUH8lRyV9B6e0aSH9Z2j4LeDWC4m61UbBX8tTgVaofS97MjIExgdj78j3w1+afRSCzR8noFYjhULrdkI0qLlHZdjZ0r9ndPmKLcqdgM6LYNa2V+q2rDlbdbfGXg33KLEeQ=;
 20:Lr7CyzzzCStX0B/GeApDGYKjvCrvHALFPENb9z3xWqUxcY+1Dx8/nUTfnKRl3IYC0bPPVZHbJMClxpjgC5w/Zgv1ZqsFpV/5Z5G4fkWisS2jQgqq/ZT8fkqMre1zTWc6jLWKGx/iPbvfpOavK9dR7hae53/JHREnEt7kPBShveR6JR/t+Y6df3lkHI2L3m+7JoH0po8omEmPJVLFFHCxAxsQjVqkuRykh/x+53T/O9wnHqDkOlSM8hY/oF6jzGfd;
 4:nxsvIDEtpWcVFKrXGO1Sex4ychKfzSrdku/wyajOrNNC6V+irY4v+e6LbQSk4X2GL58brUjaF0YkDN7MFdutBhT6k2CUhkZoMoWpXBZEY216clyMTEvbu0bnJKifzWIG5k4SS7e+/lv/BwxCHF2n91oGo+7kxgAXAJuQw4VcQeRukHTTBUf4H/xYeEOM14fJQI1Y/JFplYRCCFTsjmP74hzJ3zosxQ3AjqyJepS2XoCb0tcgwmYqJNWEbclIcWVNjvOsqrNqEsg2j1CAav7CNQ==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0801MB159514D6A2D9B5A534114E6A9EB00@HE1PR0801MB1595.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501327)(52105095)(3002001)(10201501046)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:HE1PR0801MB1595; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0801MB1595; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0801MB1595;
 23:m6G6iSLNUQjutfpo5ZSwOuiv5qzCVV1Cx1VTLOp?=
 =?us-ascii?Q?F7ndyDeuD/g734SiyqokjPVt81k9ARXYroOpYk5mJaNMB1Cwo9ESLSbGo6y9?=
 =?us-ascii?Q?9/02+0IV1ceJq3gOOUS6ngAmKAEbcswOWvDLDJ6Ixi/kgceoFsmVwrbhK75U?=
 =?us-ascii?Q?56J57G/hoQtmAE9zz8Qa3GU8+C7LpC9RDKGiM2mLaKaZFp/h4YUNQvcsOsGv?=
 =?us-ascii?Q?YwegWoce7gb5Aio3aLgICLdbj6/Y3odgCLcE9LsLY7+mBRmn9N5HW6AXSwUV?=
 =?us-ascii?Q?Qy74bIjhjTx9X4GVGnPvwiIciUnJWsJjXJZENtzoIxT9TA+9LYsu3Uj5hFlr?=
 =?us-ascii?Q?96WjA9p9XG073+QATtfZfq/rFVMlwl0JCh21hsKzXSM6PQTctm9Rbw7agJvs?=
 =?us-ascii?Q?27N40hjuSB2oLbqyY+7QBROB7ZqMQaNEHrM5gvG7Ykv4DaFny1efG4g+bQXU?=
 =?us-ascii?Q?Ghxo3if6h4TwYXDHB9z/tDzI70SLLCeVLk2ZXR3YY1nas/Uw9pzzwm06c01y?=
 =?us-ascii?Q?839ztGAsTk9Nji179lT1DdzSFtmxUvNKQ+UNJIjrn2+9Y2LULlek5SNU9fjD?=
 =?us-ascii?Q?mIvrGZ88irusLdsSpcp5tv4zDKu3ICQpiCnR8Gt5AhHCryeGbO1HW4QqzNIr?=
 =?us-ascii?Q?liZrhH/tukimcAhn+4P2o6MIqi2c4aO7HJAgLeDOhDL27WmxE2VU+ACxqtDD?=
 =?us-ascii?Q?L3f2BWQFJQ6OkbmhGfm6smtmExQAmKH3+ALwxAEawha8v5rF7CQB1gDfKzKx?=
 =?us-ascii?Q?6KuVQRDJpnCae+K/ANUaOR/MuFUHrw5ROw/m+f0ssocHH94BEtOT4V9lwATc?=
 =?us-ascii?Q?AT0iKMcW2we8i0Vz7mK/wvscX5gWr2OlvFLsXnuoigA/SWvB12F1qiDijpN6?=
 =?us-ascii?Q?V+KYyglV0lxhCOdYFxyB965RK7zGpWcSl/f+5nQUvp7LdFC9Q0ftVyKlnTeL?=
 =?us-ascii?Q?3xoNKw5xWJcB5fY9nC5yQHT1blnA1CnhFjHsP7pnjF0l3jxfOPPdXLhSjpi9?=
 =?us-ascii?Q?n5umyc60FSaNXFaRRyFZZ6vQCn9VEGtHgx70rop+3TxMSVQ=3D=3D?=
X-Microsoft-Antispam-Message-Info: HTr345KxoOM6jWH6UjAc3RjrLK9HcVt1Ytw5F3GfU4HCCY7f9WG2hvrChadDCrWsW1bnDr0Au3NfMj5mpjyI5RL4uZX6fNabmeF0B+0sfo5ycy3ho5a9YsBGGXPXO6G+KBz/HO66avdusHwvL3wtEW8UyRl142NaCtzOlg1KeDY4e+LMWXcyjEqXj0nBAn8TYYRLCznC7ZikgW2iV3tQJr28NKleF6J+T71BXqNr04651qfPvwW349clOuSFMou6dwZLS7aO1Y3bnZtrt3jiGtxhxY+WgZxBDIMIewtXAlUG/qH8KoO4if2GfJ4lp0vDxW/XfYODd1TQZ+u096snBGIGK+7PjSYP/PeGzDu2Poowtv6jcwDnN5Nd3ID5XVte21dxgQyPChHlb7OGAuD2vXKLLpHcZalaP7wCZJLUXZI=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 6:nsibV5p0CpON2YXeT2ylU+kwmC1ceD21/YgFr5cWgMj+3+qMclAdwRRHN6NItyQLeigCkoo4NrDN1JdSzXoyoHZdWqow6G3SQ/ux5C+qatNFCUrjM9TeTCMftOq4vSdFUQUUAkm7GTgLhIWbpJl7W7Vo0hW4ZKrJFvfISvIAY9bHnjWWVlBfjWswbZi3YbFplkp8GxbTu0+4d1SJoTeUXiBCV7Y8RfYBMOcZl+5BG/GDhMfNT8/dEFbiO7L20I5zO5eDBZ1y6tjBZgHgloiDOmoJsUpIZNlet+sAV/63CpJ4nuoFbuvZCtqPjJRwFSTyuttjkj31+JUcHyJaS5GLR1oyKHnVbvhsFswxgxIw+B+BVNfT4H1Y6nIGubP3AJX2O9KnNncOUrBPYAALLwmWiemg29VOV3G6lSbJyjNk5I8n6OY8/oZzNusg+rjAJYSxpwrU05dlJJ5TICED5GXWFDPZTG5pkZY1Yu3AUblIdlSFHar/vYmC3OdjhJ2nYHYA;
 5:9uNrmQaKIb11YiAzG43Ma6wpDfuZBEQkljHc9jWTG6vplQVyQMh6s0EtcYVPJwc9UQxKmqDHq+7vN7ASxWq9iA+PeuRW4xiaW8ByD/FwgPlJNSosHG2xOCc1/nIkq+8fIrUhqMah1QRfMCXHd5nrRsd5JRwepB04IG3oJKKxGNU=;
 24:+M3TDjq0GTEY9ujwyIsAAOfj3CQh96cph4bgLUEBgsalS2T2jJFTUyplPBVpwHElkZ2YBrHuozKp+Ds1Iz6QSvtF6PGEOaQzY2Jtmo9H1I8=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1595;
 7:qgAzHGoFEx8jp4ihuwyNrG+k5VqI7n43pGFa4IIT/b+ZQccvVPmyG0S3qnbcKe40WUzFHoQBkyL2UqxJbBOdA8T/B1fXkM2Zv5JnESR4d1wXJfq67skCVUth0HFawNWXJj9XLfAg7hxeS+zgwHIggVzCzkMqdl31ShgJC5bfjovPrV06E4zxwH1htHHvVGPB+Dng9RUqG++stkN/GrSUxoM9kQgDJlmzDtmxjXg0rMT2NmyG9XkZ9dD9YooSZpkt
X-MS-Office365-Filtering-Correlation-Id: f1818865-7000-4b6b-c22e-08d5a3798f6d
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:03.0810 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f1818865-7000-4b6b-c22e-08d5a3798f6d
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1595
Subject: [Minios-devel] [UNIKRAFT PATCHv2 00/13] Prepare build scripts to
 support ARM64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Q3VycmVudGx5LCBVbmlrcmFmdCBvbmx5IHN1cHBvcnRzIGFybTMyIGFuZCB4ODZfNjQuIFRoZSBm
b2xkZXIgbGF5b3V0CmlzIG5vdCB2ZXJ5IGNvbnZlbmllbnQgdG8gYWRkIGFybTY0IG9yIHg4Nl8z
MiBzdXBwb3J0IHRvIGl0LiBJbiB0aGlzCmNhc2Ugd2Ugd2lsbCBtb2RpZnkgdGhlIGZvbGRlciBs
YXlvdXQgdG8gc3VwcG9ydCBjb21tb24gY29kZSBmb3IgdGhlCmFyY2hpdGVjdHVyZXMgb2YgdGhl
IHNhbWUgQ1BVIGZhbWlsaWVzLiBXZSBhbHNvIHdvdWxkIG1vZGlmeSB0aGUgYnVpbGQKc2NyaXB0
cyB3aGljaCBjb3JyZXNwb25kaW5nIHRvIHRoaXMgY2hhbmdlIGF0IHRoZSBzYW1lIHRpbWUuCgot
LS0KdjEgLT4gdjI6CiAxLiBVc2VjaGVja3BhdGNoIHRvIGNoZWNrIHRoZSBjb2RlLXN0eWxlLgog
Mi4gUmVtb3ZlIGEgYmxhbmsgRU9GIHdhcm5pbmcgb2YgcGF0Y2gjMy4KIDMuIFNlbGVjdCBjbG9z
ZXIgc3ViamVjdCBwcmVmaXggZm9yIGVhY2ggcGF0Y2guCiA0LiBGaXggdHlwb3MgaW4gc2VydmFs
IHBhdGNoZXMnIGNvbW1pdCBtZXNzYWdlcy4KIDUuIFVwZGF0ZSBzZXJ2YWwgcGF0Y2hlcyBkZXNj
cmlwdGlvbnMuCiA2LiBBZGRyZXNzIEZsb3JpYW4ncyBjb21tZW50IGluIHBhdGNoIzEuCiA3LiBT
aW1wbGlmeSB0aGUgcGF0Y2gjMi4gT25seSBpbnRyb2R1Y2VzIFVLX0ZBTUlMWS4KIDguIE1vdmUg
cmVvcmdhbml6YXRpb24gd29yayBmcm9tIHBhdGNoIzIgdG8gcGF0Y2gjMy4KIDkuIEFkZCBhIGNv
bW1vbiBHQ0MgdmVyc2lvbiB0ZXN0IGZ1bmN0aW9uIGluIE1ha2VmaWxlLnJ1bGVzCjEwLiBBZGQg
YSBjb21tb24gR0NDIHZlcnNpb24gd2FybmluZyBmdW5jdGlvbiBpbiBNYWtlZmlsZS5ydWxlcwox
MS4gQWRkIGEgZnVuY3Rpb24gdG8gY2hlY2sgY29uZGl0aW9uIGFuZCBzZXQgR0NDIGZsYWdzCjEy
LiBQbGFjZSBpbmRpdmlkdWFsIGFyY2gncyBDb25maWcvTWFrZWZpbGUvQ29tcGlsZXIgZmlsZXMg
dG8KICAgIGl0cyBzdWJmb2xkZXIuCjEzLiBSZW5hbWUgTUFSQ0hfKiBvZiB4ODZfNjQgdG8gTUFS
Q0hfWDg2XzY0XyogdG8gYXZvaWQgY29uZmxpY3QKMTQuIFJlbmFtZSBNQVJDSF8qIG9mIGFybTMy
IHRvIE1BUkNIX0FSTTMyXyogdG8gYXZvaWQgY29uZmxpY3QKMTUuIFVzZSBjb21tb24gZnVuY3Rp
b24gdG8gY2hlY2sgYW5kIHNldCBwcm9jZXNzb3Igb3B0aW1pemF0aW9uCiAgICBHQ0MgZmxhZ3Mg
Zm9yIGFybTMyL2FybTY0CjE2LiBBZGQgbW9yZSBhcm0zMiBDUFUgbW9kZWxzIHRvIHByb2Nlc3Nv
ciBvcHRpbWl6YXRpb24gbGlzdAoxNy4gVXNlIGdlbmVyaWMtYXJtdjctYSBhcyBhcm0zMidzIGRl
ZmF1bHQgcHJvY2Vzc29yCgpXZWkgQ2hlbiAoMTMpOgogIGJ1aWxkOiBBZGp1c3Qgc2VkIHNjcmlw
dCB0byBhdm9pZCB0cmVhdGluZyBhcm02NCBhcyBhcm0KICBidWlsZDogSW50cm9kdWNlIGEgbmV3
IHZhcmlhYmxlIFVLX0ZBTUlMWQogIGFyY2g6IFJlb3JnYW5pemUgYXJjaCBmb2xkZXIgdG8gcmVm
bGVjdCB0aGUgQ1BVIGZhbWlseSBzY2hlbWEKICBpbmNsdWRlOiBSZW9yZ2FuaXplIGJhc2UgaW5j
bHVkZSBmb2xkZXIgdG8gcmVmbGVjdCBDUFUgZmFtaWx5IHNjaGVtYQogIGJ1aWxkOiBBZGQgYSBt
YWtlZmlsZSBmdW5jdGlvbiB0byBjaGVjayBHQ0MgdmVyc2lvbgogIGJ1aWxkOiBBZGQgYSBtYWtl
ZmlsZSBmdW5jdGlvbiB0byB3YXJuIHVzZXIgd2hlbiBHQ0MgaXMgdG9vIG9sZAogIGJ1aWxkOiBB
ZGQgYSBtYWtlZmlsZSBmdW5jdGlvbiB0byBjaGVjayBhbmQgc2V0IGZsYWdzIGZvciB2YWxpZCBn
Y2MKICBhcmNoOiBBZGQgYXJtNjQgYXJjaGl0ZWN0dXJlIGNvbmZpZyB0byBtZW51Y29uZmlnCiAg
YXJjaC94ODY6IFJlbmFtZSBNQVJDSF8qIG9mIHg4Nl82NCB0byBNQVJDSF9YODZfNjRfKgogIGFy
Y2gvYXJtOiBSZW5hbWUgTUFSQ0hfKiBvZiBhcm0zMiB0byBNQVJDSF9BUk0zMl8qCiAgYXJjaC9h
cm02NDogQWRkIHByb2Nlc3NvciBvcHRpbWl6YXRpb24gR0NDIGZsYWdzIGZvciBhcm02NAogIGFy
Y2gvYXJtOiBDaGVjayBnY2MgdmVyc2lvbiBhbmQgc2V0IHByb2Nlc3NvciBmbGFncyBmb3IgYXJt
MzIKICBhcmNoL2FybTogQWRkIG1vcmUgQ1BVIG1vZGVscyB0byBwcm9jZXNzb3Igb3B0aW1pemF0
aW9uIGxpc3QKCiBDb25maWcudWsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICst
CiBNYWtlZmlsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDM0ICsrLQogYXJjaC9B
cmNoLnVrICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBhcmNoL0NvbmZpZy51ayAg
ICAgICAgICAgICAgICAgICAgICAgIHwgIDEwICstCiBhcmNoL2FybS9Db21waWxlci51ayAgICAg
ICAgICAgICAgICAgIHwgICA3ICstCiBhcmNoL2FybS9Db25maWcudWsgICAgICAgICAgICAgICAg
ICAgIHwgIDE4IC0tCiBhcmNoL2FybS9NYWtlZmlsZS51ayAgICAgICAgICAgICAgICAgIHwgIDIz
ICstCiBhcmNoL2FybS9hcm0vQ29tcGlsZXIudWsgICAgICAgICAgICAgIHwgICA2ICsKIGFyY2gv
YXJtL2FybS9Db25maWcudWsgICAgICAgICAgICAgICAgfCAgNzEgKysrKysrCiBhcmNoL2FybS9h
cm0vTWFrZWZpbGUudWsgICAgICAgICAgICAgIHwgIDQ4ICsrKysKIGFyY2gvYXJtL2FybS9kaXZz
aTMuUyAgICAgICAgICAgICAgICAgfCA0MDMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrCiBhcmNoL2FybS9hcm0vbGRpdm1vZC5TICAgICAgICAgICAgICAgIHwgIDY4ICsrKysrKwog
YXJjaC9hcm0vYXJtL2xkaXZtb2RfaGVscGVyLmMgICAgICAgICB8ICA2NyArKysrKysKIGFyY2gv
YXJtL2FybS9xZGl2cmVtLmMgICAgICAgICAgICAgICAgfCAzMjQgKysrKysrKysrKysrKysrKysr
KysrKysrKysrCiBhcmNoL2FybS9hcm02NC9Db21waWxlci51ayAgICAgICAgICAgIHwgICA2ICsK
IGFyY2gvYXJtL2FybTY0L0NvbmZpZy51ayAgICAgICAgICAgICAgfCAgNjAgKysrKysKIGFyY2gv
YXJtL2FybTY0L01ha2VmaWxlLnVrICAgICAgICAgICAgfCAgMjcgKysrCiBhcmNoL2FybS9kaXZz
aTMuUyAgICAgICAgICAgICAgICAgICAgIHwgNDA0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0KIGFyY2gvYXJtL2xkaXZtb2QuUyAgICAgICAgICAgICAgICAgICAgfCAgNjggLS0t
LS0tCiBhcmNoL2FybS9sZGl2bW9kX2hlbHBlci5jICAgICAgICAgICAgIHwgIDY3IC0tLS0tLQog
YXJjaC9hcm0vcWRpdnJlbS5jICAgICAgICAgICAgICAgICAgICB8IDMyNCAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0KIGFyY2gveDg2L0NvbXBpbGVyLnVrICAgICAgICAgICAgICAgICAgfCAg
IDQgKwogYXJjaC94ODYvTWFrZWZpbGUudWsgICAgICAgICAgICAgICAgICB8ICAgNCArCiBhcmNo
L3g4Ni94ODZfNjQvQ29tcGlsZXIudWsgICAgICAgICAgIHwgICA2ICsKIGFyY2gveDg2L3g4Nl82
NC9Db25maWcudWsgICAgICAgICAgICAgfCAgODkgKysrKysrKysKIGFyY2gveDg2L3g4Nl82NC9N
YWtlZmlsZS51ayAgICAgICAgICAgfCAgMzcgKysrKwogYXJjaC94ODZfNjQvQ29tcGlsZXIudWsg
ICAgICAgICAgICAgICB8ICAgNiAtCiBhcmNoL3g4Nl82NC9Db25maWcudWsgICAgICAgICAgICAg
ICAgIHwgIDg5IC0tLS0tLS0tCiBhcmNoL3g4Nl82NC9NYWtlZmlsZS51ayAgICAgICAgICAgICAg
IHwgIDM3IC0tLS0KIGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtL2F0b21pYy5oICAgICAgfCAgNjQg
KysrKysrCiBpbmNsdWRlL3VrL2FyY2gvYXJtL2FybS9pbnRzaXplcy5oICAgIHwgIDQ1ICsrKysK
IGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtL2xjcHUuaCAgICAgICAgfCAgNTkgKysrKysKIGluY2x1
ZGUvdWsvYXJjaC9hcm0vYXJtL2xpbWl0cy5oICAgICAgfCAgNDUgKysrKwogaW5jbHVkZS91ay9h
cmNoL2FybS9hcm0vdHlwZXMuaCAgICAgICB8ICAzNSArKysKIGluY2x1ZGUvdWsvYXJjaC9hcm0v
YXRvbWljLmggICAgICAgICAgfCAgNjQgLS0tLS0tCiBpbmNsdWRlL3VrL2FyY2gvYXJtL2ludHNp
emVzLmggICAgICAgIHwgIDQ1IC0tLS0KIGluY2x1ZGUvdWsvYXJjaC9hcm0vbGNwdS5oICAgICAg
ICAgICAgfCAgNTkgLS0tLS0KIGluY2x1ZGUvdWsvYXJjaC9hcm0vbGltaXRzLmggICAgICAgICAg
fCAgNDUgLS0tLQogaW5jbHVkZS91ay9hcmNoL2FybS90eXBlcy5oICAgICAgICAgICB8ICAzNSAt
LS0KIGluY2x1ZGUvdWsvYXJjaC9hdG9taWMuaCAgICAgICAgICAgICAgfCAgIDggKy0KIGluY2x1
ZGUvdWsvYXJjaC9sY3B1LmggICAgICAgICAgICAgICAgfCAgIDggKy0KIGluY2x1ZGUvdWsvYXJj
aC9saW1pdHMuaCAgICAgICAgICAgICAgfCAgMTYgKy0KIGluY2x1ZGUvdWsvYXJjaC90eXBlcy5o
ICAgICAgICAgICAgICAgfCAgMTYgKy0KIGluY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2F0b21p
Yy5oICAgfCAgNDUgKysrKwogaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvaW50c2l6ZXMuaCB8
ICA0NSArKysrCiBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9sY3B1LmggICAgIHwgIDczICsr
KysrKwogaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGltaXRzLmggICB8ICA0NiArKysrCiBp
bmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC90eXBlcy5oICAgIHwgIDM4ICsrKysKIGluY2x1ZGUv
dWsvYXJjaC94ODZfNjQvYXRvbWljLmggICAgICAgfCAgNDUgLS0tLQogaW5jbHVkZS91ay9hcmNo
L3g4Nl82NC9pbnRzaXplcy5oICAgICB8ICA0NSAtLS0tCiBpbmNsdWRlL3VrL2FyY2gveDg2XzY0
L2xjcHUuaCAgICAgICAgIHwgIDczIC0tLS0tLQogaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9saW1p
dHMuaCAgICAgICB8ICA0NiAtLS0tCiBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L3R5cGVzLmggICAg
ICAgIHwgIDM4IC0tLS0KIHN1cHBvcnQvYnVpbGQvTWFrZWZpbGUucnVsZXMgICAgICAgICAgfCAg
MjEgKysKIDU0IGZpbGVzIGNoYW5nZWQsIDE4MDAgaW5zZXJ0aW9ucygrKSwgMTU3MCBkZWxldGlv
bnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9Db25maWcudWsKIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBhcmNoL2FybS9hcm0vQ29tcGlsZXIudWsKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNo
L2FybS9hcm0vQ29uZmlnLnVrCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtL01ha2Vm
aWxlLnVrCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtL2RpdnNpMy5TCiBjcmVhdGUg
bW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtL2xkaXZtb2QuUwogY3JlYXRlIG1vZGUgMTAwNjQ0IGFy
Y2gvYXJtL2FybS9sZGl2bW9kX2hlbHBlci5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0v
YXJtL3FkaXZyZW0uYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FybTY0L0NvbXBpbGVy
LnVrCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtNjQvQ29uZmlnLnVrCiBjcmVhdGUg
bW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtNjQvTWFrZWZpbGUudWsKIGRlbGV0ZSBtb2RlIDEwMDY0
NCBhcmNoL2FybS9kaXZzaTMuUwogZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2xkaXZtb2Qu
UwogZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2xkaXZtb2RfaGVscGVyLmMKIGRlbGV0ZSBt
b2RlIDEwMDY0NCBhcmNoL2FybS9xZGl2cmVtLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL3g4
Ni9Db21waWxlci51awogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gveDg2L01ha2VmaWxlLnVrCiBj
cmVhdGUgbW9kZSAxMDA2NDQgYXJjaC94ODYveDg2XzY0L0NvbXBpbGVyLnVrCiBjcmVhdGUgbW9k
ZSAxMDA2NDQgYXJjaC94ODYveDg2XzY0L0NvbmZpZy51awogY3JlYXRlIG1vZGUgMTAwNjQ0IGFy
Y2gveDg2L3g4Nl82NC9NYWtlZmlsZS51awogZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gveDg2XzY0
L0NvbXBpbGVyLnVrCiBkZWxldGUgbW9kZSAxMDA2NDQgYXJjaC94ODZfNjQvQ29uZmlnLnVrCiBk
ZWxldGUgbW9kZSAxMDA2NDQgYXJjaC94ODZfNjQvTWFrZWZpbGUudWsKIGNyZWF0ZSBtb2RlIDEw
MDY0NCBpbmNsdWRlL3VrL2FyY2gvYXJtL2FybS9hdG9taWMuaAogY3JlYXRlIG1vZGUgMTAwNjQ0
IGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtL2ludHNpemVzLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBp
bmNsdWRlL3VrL2FyY2gvYXJtL2FybS9sY3B1LmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRl
L3VrL2FyY2gvYXJtL2FybS9saW1pdHMuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsv
YXJjaC9hcm0vYXJtL3R5cGVzLmgKIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gv
YXJtL2F0b21pYy5oCiBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS9pbnRz
aXplcy5oCiBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS9sY3B1LmgKIGRl
bGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gvYXJtL2xpbWl0cy5oCiBkZWxldGUgbW9k
ZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS90eXBlcy5oCiBjcmVhdGUgbW9kZSAxMDA2NDQg
aW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvYXRvbWljLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBp
bmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9pbnRzaXplcy5oCiBjcmVhdGUgbW9kZSAxMDA2NDQg
aW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGNwdS5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgaW5j
bHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGltaXRzLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNs
dWRlL3VrL2FyY2gveDg2L3g4Nl82NC90eXBlcy5oCiBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVk
ZS91ay9hcmNoL3g4Nl82NC9hdG9taWMuaAogZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsv
YXJjaC94ODZfNjQvaW50c2l6ZXMuaAogZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJj
aC94ODZfNjQvbGNwdS5oCiBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL3g4Nl82
NC9saW1pdHMuaAogZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODZfNjQvdHlw
ZXMuaAoKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVu
cHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv
L21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:17 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807V-0006CT-Qh; Mon, 16 Apr 2018 09:08:17 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807T-0006Bo-SH
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:15 +0000
X-Inumbo-ID: 8feca874-4155-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::61f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 8feca874-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:18 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=gFztYLhNL5/3Y8jrqCmnfpwKcv+oozsR4YdnhkcLeaY=;
 b=GOA7NcPmzZPhn9p3JgaP9RLUonpBZ8rFpYn+yioHSNP91l9jPJmqSBDbPkFYpjt5dknIidVrbWTIW/8H+V4X95/j8qB6f1DUl3KfLkQwX/MxgZOi4y1QGdAFu1Ja1LG23B5BnpYKrWSK3tQNITjY23RdNkwPEUCVhrxY+EavQzI=
Received: from DB6PR0802CA0042.eurprd08.prod.outlook.com (2603:10a6:4:a3::28)
 by DB6PR0802MB2421.eurprd08.prod.outlook.com (2603:10a6:4:9f::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 09:08:07 +0000
Received: from AM5EUR03FT024.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::208) by DB6PR0802CA0042.outlook.office365.com
 (2603:10a6:4:a3::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:07 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT024.mail.protection.outlook.com (10.152.16.175) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:06 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:07:54 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:35 +0800
Message-ID: <1523869666-30659-3-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(376002)(39380400002)(346002)(39860400002)(2980300002)(438002)(199004)(189003)(106002)(104016004)(47776003)(50466002)(8936002)(5660300001)(51416003)(26826003)(76176011)(356003)(48376002)(36756003)(6666003)(478600001)(246002)(2906002)(476003)(2616005)(126002)(446003)(316002)(11346002)(186003)(305945005)(486006)(4326008)(50226002)(336012)(8676002)(426003)(106466001)(86362001)(16586007)(49486002)(72206003)(26005)(77096007)(54906003)(110136005)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2421; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT024;
 1:tqhmuPt/zVoNtJW7medVnJVtVbmPG9G84S9+StRUMP5N1mvVaXLTkU92czvXXDd48lIQdwV1/4RmN6d9HmiNhxF0qIUeDDZNY3Enm8YZ2tMGpwr16+6G9q7EpKkL2V/Z
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2421; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 3:UqgNdCXAJcV5QXz/pRwgTNAnkElqh2ERPb4AkqIV0gAGs1F1peQHtZm8HpHjCH89D/T9o3u+J1FkzrwQgK9H+TH3mQP6tIv9mW/5O0NBRsuv0ODf/boQ2stWQ9kCNn7bRtv+MDrUgdBp33Emi2ZvtV+y3z0CY7bnMLdDBK72nXc9RJyULEAS4q54D9/neye9H20LcXLS7sH5qqOIaA+wji+yd7TCP13ZRiITI365Iqj/j3cvSGQIrAWV/qH+amoed7ljEkaOvV5WLyV63srdn/QWaVIteVzM9HMQtg0bB2N06xFnYNkTDcx0MmVMFWVAXaTGWuQFYIifTFhLwGUZORzGs6gW7/xL9opGD7bHmis=;
 25:VtyHKA1VXRkSjwK1ssf+N3h+LwTV3L3zTbgmid9KDYeSvQ4mhDvPnHBEal2upzkkjr9ch34djWChZCUwaz63ds0r7OI7+VbplZwUJQVeVBbABy7pXyZYBdAiV4dJYFx5HmgZPGiHzb3SNPbIngYt2g4pRq5VrXAPSxkUS8aEM9FBLK6dQd2LMk+DvSATQThA/vcqWmxOJY4JCB/GtZhY3MJykTv4EqRnHhe1wK0rldg7DR18KGSJRidna/7mIthKPh8ililCQvnOdtbKXmRfc0EuhpW+hSOJuYIVG41+Xzf/+obqgMoxblUz9cOi71c6HJiziSyBgmqLc6dT0Qlidw==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2421:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 31:RAuFNi8nrbBuNH+UEKQfOBnYFQAR9Ms+8jn5xYRRByV2V1WGcv8XHlFPvjF/sdnDpXnQGVcpbOYYotJv7HRxac2o/s+3+wf/O9WdIKuW7A//Uh3DKGsmqsPz6elwWRC/hNFZ+Jb4yA3nMdH10UVnWU93bpU4BJDQdONFHBPNMl08cAbqn+IJ72LhKguQikXi5VRc+VPqR0CTHyskg82pwEie8BbYCsuhrcOAPp+3lxo=;
 20:DQAuDWvUrTlimnW2JY/+XNdNsaGN4ZU40Pj1fC1Ih3DYqkkuBqYtk5IJRFT6ESIscprZTVSIvxtqwhj4fLVJRef4RFAClHwk4zSmIoVQPjBmNTro6/LcRu4oMUqlqW/IACdO7PN/kkL/fNuJDt2cL4WZrzMsmIG2l9P1rfb6IT9ZycAuhzRs5zRnpdM4nP3FbTpGMMrXm9kWvba79a0BpTAntd8Y/ip1APkZUrWBTq9Fjwbz/8kFtQeDGrzctht9;
 4:R3SrYCwh7VMJrrcq93pVGQYJJ0MPdEs5wiuwXa0199shjcnPdzT3JnC55sCPFuUz+k1Hqr9/fWLJXK9rtk49Tx+4ytOtiKZPkL/Qj5B5BIr9H3YpFKNw1+crbuvzNcV7BJN5wYC5kvpUAUr8eb9BJR9s8JenqyQQ2WQ7vc4qSxPOuJdio4n7qb1NBROEASc1WhP/tjQgpOSIHmf+r7x69wzMKtJAgpwqSvNBvDMZRDBYp9ALetfwYX2IwEHfc3dco3nnuVHh9tWs9oNw5rGJ12O9HsrLfFnP2adl3Mcmrjd1ra/gskck9o650uDtou+y
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB2421E962C44BC41A81D0E8429EB00@DB6PR0802MB2421.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93004095)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2421; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2421; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0802MB2421;
 23:dLg21inEwQzSgvY6m2AcwgirkxRs5G8igy4WddQ?=
 =?us-ascii?Q?gyEFXnQgkKykjnlbP/bgAUk6aBRygMhg9UMQqCoFwbCg1RU993W8RyhQWCdk?=
 =?us-ascii?Q?VqOnAbQEEApRl1jSRj5dDTA8xy/oxKpsSHM2S8y75u3958ZKkPY7TiHPe1Ca?=
 =?us-ascii?Q?iKStdUqy2Qd08+Qklj5uknG7F/Cjc8XJC7ZMUCjJJ1OFsUv7AFxv7vEWpYhy?=
 =?us-ascii?Q?dih85IF4OBQhFBl5fZ+uTNb2REzmxOLPPm9xIfxMhtusZH+2/cpvFMyEPJFr?=
 =?us-ascii?Q?ZCY3gSJxR/5M/YYPPikkVgtpUVvK/KaznwNxR3lTeDeppRa4Pfs8SHhOc8oi?=
 =?us-ascii?Q?zuitNUL7IYhxTdkjdCUB97tU4i+2cOYQqNR1Tjs6xbV1ImPXUmDnfkCUXiZL?=
 =?us-ascii?Q?AduBADMuwmpTqIiNa9H8x7rUc6A8AHaMwNI9GC32XXXnIrOsxxliPK5tPUqH?=
 =?us-ascii?Q?y/AJam02Ddn5Rev/fOb0NmEWKbxziTxN0MOXilPJuACe6ekjKoidoEto7bLA?=
 =?us-ascii?Q?/LmT/K8rcA4gqI+KkLLPkjRRTAwwtEmebMORtwOcePC8bOrVhtkkMAsNEgAZ?=
 =?us-ascii?Q?U7WeThW5qRHdsnMMnv1/t7GVLoVD0tSp9iOZYDOIlU1di1B2QC/CmgWt2R6b?=
 =?us-ascii?Q?32vPzH2Mmj9GAd2H8Zzol30HC1E5yfHVCBCfxXSAVY8s1UcL0nR1j4bfT6at?=
 =?us-ascii?Q?6uWLbU3cO2TmcoQA7DNDSvmm+plXrw+kwI9P/K+6VDgk9KiximfOG9pL+hX7?=
 =?us-ascii?Q?4XrmG1D6Gr3ENmov/FK07bYvKgxbUVN1PfJDtTwyIgRBewr8dNvKxUcVEPBb?=
 =?us-ascii?Q?YVTzTT6fN0QX/cAzVH0DpZU1a7/Mbvx8zEU/o6gJVgb5AQUzGa5Ek+rzx6bp?=
 =?us-ascii?Q?n9e1jx73m5zJAgeFzDB1A7QuPLQFE2AvM2aE1P0Yc/0RDtiaQmLczvNp36nf?=
 =?us-ascii?Q?RJDAixANRLvI1VgACnsZPjWwGrltf8WPqHkxOW0onMWDMrxnwjzZOt8t+ZAf?=
 =?us-ascii?Q?wJQEQ/pu6i20JwofBJc3VuLgGhqH0V3apxOL1gkv0vHLYviZ/VL9gE7e6CnN?=
 =?us-ascii?Q?97vUdkq4rxm+N7iY4N6B7+PCulCHS2/+RuzUXuAFD5dMlwQZ58w=3D=3D?=
X-Microsoft-Antispam-Message-Info: 6U/vxP3f8gMzag4dgbIYlXozD7q/qPhb3hzpSh/dRLphmHUBTCHQf3fl8hxkD7oZeLBIdbYr/VlpVkVibQqiMEJ6SAteIbC1x/OP4jQCtZ69mwpfIgCSIUNe9BMMGq+cDt01HHbaMn8gqZxqlmTi19AkkBbxnx/BIf1jG89lT8Ug3KdHy/VZD24ejZEmHhMxflM8iTetbKKzwu8fbEvwkgkMWZTCt1MQPEy7gfrUOu8HCGhFmZBpxNhLvuzxNaJ2VzWrAqrClP5Leo1D3KOetWdr1jM/S8nh6IB0UkhK/kxudAnupLsmkAP/auwtONX/PGIAvRx4GWtvD2yczvHsfHoKUESb4UnrigMarIrRliooHYyKLTWczEMZzGtFxIQiBetPWp0JP23UOYRupAbi63l7VVsXZq8/mzEqgHaV4Q4=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 6:VbcMLwlQZ64SSTYduEVFOKSrdE/MYEFIHlToO8OlUuVgMZJBb3nhMKCInKNEhV7GhG4IO11rW4X/pk6aTTDKvnSBDQnplGw+qQIxxe0reWuU0e0GS3FgGPnGEO+9WPYF9cTs9vgl59exIDWvmL/+rLN+5NKgvxbcYJwZyStivyulUXn1avP7CERThhB2fewuPYfeevsAInbE+ldFiS/VcKzCASjwwL9J5AB9c8l4WHpWbgJp/3e70Ma0dIa4lmWtxcwY7nasMrXi0Mf6BpLmSxjBHmeQJcjoPeSRInCu4h4YoAaMYqzBKsqKf0vUhlyvfRt3McwzBXUryHYDrJ/Blk7lzA9nG59BCrdoJDULVfXfhnb1McdNycN4dELeU/DhTFcRUqsaHSPYPc0LV/rnGaw3vTTE0x+U79u6C5PgoU2O/hyzrxJp8v3tpT9RpFKVT9v2Wz1i701Us0VbBflVllsTGQPRlyx/8nNIXay40eImcQ1rlZMzbej6jj9AZhwi;
 5:CZY/nCP4r3GABZgLDO0/vHnR5c2r4fJRA0SdXkP9X1AsT2G0bYsmBxy6IesFAV6m5Sz/f1KlJQcHVMoyJ4VqHFO0psZNxLjClu+sB94ifGcQV0VkRPWLb7Rzbxxy8w7CpSrxvqRPqo0rlacOTkDkXKRakz03b30u+ndVT6+Uvdo=;
 24:FuSUx+JyN0H0ftT4YMMEed+0gm+35WCoAZkwLrFko8Sn8UK7GEjKM0VgD2X09RNeSBXSGkXlQFLjcjSk9/sGgRzIZez7/XQO/3SzWPDjuJA=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 7:J8H1eZ73sXEMaPHNyWBbKWVjTvxqrw9MYhIjh55UcQovotOdZ7tvyPuEWRbnQ7vLaEePwKdBRZ3gMttFwQs1j4hluwr7b/G+Yhx1w5UlNHcUa5YWdTCuCXYK8/bFUjQpJzlPnGqwX3nP/5NMwrUCjQ65dAQ/PVhrRkbLUZwgp6cFeGsBnLB+/eceGWHxRkCufH0UYcWT6yWqKtuI3EAv9A1Mtr4QVSBwL98eO9wfo4lGvIaqKFMNKu7OjHV+dfb0
X-MS-Office365-Filtering-Correlation-Id: 93b3a4cf-da90-4741-0e5e-08d5a379919e
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:06.9718 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 93b3a4cf-da90-4741-0e5e-08d5a379919e
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2421
Subject: [Minios-devel] [UNIKRAFT PATCH 02/13] build: Introduce a new
 variable UK_FAMILY
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhpcyBwYXRjaCBzZXJpZXMgbW9kaWZpZXMgdGhlIGZvbGRlciBsYXlvdXQgb3JnYW5pemVkIGJ5
IENQVQpmYW1pbGllcyBsaWtlOgp1bmlrcmFmdC0tLS1hcmNoLS0tLWFybS0tLS1hcm0KICAgICAg
ICAgICAgICB8ICAgICAgfC0tLS0tYXJtNjQKICAgICAgICAgICAgICB8CiAgICAgICAgICAgICAg
fC0tLS0teDg2LS0tLXg4NgogICAgICAgICAgICAgICAgICAgICB8LS0tLS14ODZfNjQKCkluIHRo
aXMgY2FzZSwgd2UgaW50cm9kdWNlIGEgbmV3IHZhcmlhYmxlIFVLX0ZBTUlMWSBmb3IgYnVpbGQg
c2NpcHRzLgp3ZSBzaG91bGQgbm90IGV4cGVjdCB0aGUgdXNlciB0byBzZXQgb3Igc2VsZWN0IFVL
X0ZBTUlMWSBpbiBhIG1lbnUgb3IKYnkgc2V0dGluZyB0aGUgdmFyaWFibGUgZXh0ZXJuYWxseS4g
U28gd2UgcmV0cmlldmUgVUtfRkFNSUxZIGRpcmVjdGx5CmZyb20gVUtfQVJDSC4gQmVjYXVzZSBv
ZiB0aGlzIHdlIGNhbiBrZWVwIENvbXBpbGVyLnVrLCBNYWtlZmlsZS51aywKYW5kIENvbmZpZy51
ayBkaXJlY3RseSB1bmRlciB0aGUgVUtfRkFNSUxZIGRpcmVjdG9yeS4KClNpZ25lZC1vZmYtYnk6
IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPgotLS0KIE1ha2VmaWxlIHwgMTAgKysrKysrKysr
KwogMSBmaWxlIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9NYWtlZmls
ZSBiL01ha2VmaWxlCmluZGV4IDgwMWI4MmYuLjYzNDk1Y2EgMTAwNjQ0Ci0tLSBhL01ha2VmaWxl
CisrKyBiL01ha2VmaWxlCkBAIC0zMzcsNiArMzM3LDE2IEBAIGVuZGlmCiBvdmVycmlkZSBBUkNI
IDo9ICQoVUtfQVJDSCkKIGV4cG9ydCBVS19BUkNIIEFSQ0gKIAorIyBSZXRyaXZlIHRhcmdldCBD
UFUgZmFtaWx5IGZyb20gYXJjaGl0ZWN0dXJlCitleHBvcnQgVUtfRkFNSUxZID89ICQoc2hlbGwg
ZWNobyAiJChVS19BUkNIKSIgfCBcCisJCSAgIHNlZCAtZSAicy8tLiovLyIgXAorCQkgICAgICAg
LWUgJ3MvL1wxLycgXAorCQkgICAgICAgLWUgJ3MveDg2LioveDg2LycgXAorCQkgICAgICAgLWUg
J3Mvc3BhcmM2NC9zcGFyYy8nIFwKKwkJICAgICAgIC1lICdzL2FybS4qL2FybS8nIFwKKwkJICAg
ICAgIC1lICdzL3Bvd2VycGMuKi9wb3dlcnBjLycgXAorCQkgICAgICAgLWUgJ3Mvc2guKi9zaC8n
ICkKKwogIyBRdWljay1jaGVjayBpZiBhcmNoaXRlY3R1cmUgZXhpc3RzCiBpZmVxICgkKGZpbHRl
ciAkKG51bGxfdGFyZ2V0cykgcHJpbnQtdmFycywkKE1BS0VDTURHT0FMUykpLCkKIGlmZXEgKCQo
d2lsZGNhcmQgJChVS19CQVNFKS9hcmNoLyQoQVJDSCkvTWFrZWZpbGUudWspLCkKLS0gCjIuNy40
CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9z
LWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0
cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:22 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807a-0006Dg-St; Mon, 16 Apr 2018 09:08:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807Z-0006DJ-35
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:21 +0000
X-Inumbo-ID: f4c3d855-4155-11e8-8249-2fda3a446a53
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [104.47.1.82]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id f4c3d855-4155-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 09:10:07 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=J5igSPJ79bTUnQWrgwW3wVNt85Hnw9YsP84TQuftLao=;
 b=HhWyswGQ1bEmZ6Ne5Na7z4wry/l4J04Ux0+EafQZOYZy8DFIsdWVxUJ8U1h4vRwG8hwJiPjy33DgKb4wjeRQXn3hFAAVGJ5NlyS13/DT6LvxGh8wKMykYPrvj3Bomxgx5/nNSeqi30b0wb+32+/7YqqhRZUv+F1sncjz2ISnDSY=
Received: from DB5PR08CA0016.eurprd08.prod.outlook.com
 (2a01:111:e400:52c3::26) by DB5PR0801MB1590.eurprd08.prod.outlook.com
 (2603:10a6:0:3b::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.9; Mon, 16
 Apr 2018 09:08:08 +0000
Received: from AM5EUR03FT019.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::202) by DB5PR08CA0016.outlook.office365.com
 (2a01:111:e400:52c3::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:08 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT019.mail.protection.outlook.com (10.152.16.104) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:08 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:07:57 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:36 +0800
Message-ID: <1523869666-30659-4-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(346002)(376002)(39380400002)(39860400002)(2980300002)(438002)(189003)(199004)(43544003)(51416003)(53946003)(6346003)(11346002)(2906002)(26826003)(186003)(426003)(26005)(336012)(77096007)(72206003)(5660300001)(446003)(16200700003)(356003)(305945005)(478600001)(4326008)(246002)(48376002)(36756003)(50226002)(8676002)(54906003)(110136005)(8936002)(16586007)(49486002)(50466002)(47776003)(106002)(6666003)(316002)(59450400001)(476003)(486006)(2616005)(126002)(104016004)(76176011)(86362001)(106466001)(21314002)(217873001)(559001)(569006);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR0801MB1590; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT019;
 1:DZB02NJHKNeQSDCrmDuOWI8WR1TL4I4nSGMDyxtd0Vz0LNQIznNltrwRnY1qi3YRW6L2pnwbKRVTDPhP30kLFF7sECOcSt7iHQwOzfcxWCMj/BfL/bki+TkSSPrvZi85
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR0801MB1590; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 3:MbHAdMFFWBp45nSBOiOzXngkYO3ZzebtoGP50EiciuthzwdI9qNhmYdtU6WgN6vQcrbG7p+VTqIsC+Qyw7Dr/iEIOZlOs4ZyibpFpnYpm40digBsXGcYDRT8KEIG56tkz6CG8ipCi48NQuu3MB3pD7TaHLjKhdjK6Fcy3Oqonn+/59X9n15XDKwKf95RLkaCiOnZ2MnRoPNoCfvzjTSGvDmf7w/8ijrGDQozLsYK75Oyv9HAMcfX99G2Zf6O635LTm/anX9y1UeYHlZOZmJ0vQZtKTFlohiXHTevMvid3eBErJwaNBpDVFl4KVhaRQ24UPF6WcbVK//l1rbp8ikwnR8hSHGnB1hXVIz1DPc3aeo=;
 25:lCWfZzCi1jo6SxMc88uu+4Z7/CJh+dKNkkw44zCsH1SD2Et9KCL+k2qQx3z3gWr5Rkzzw6GGnIn6XcAZjspmO0FkqCu3jpdd/e1QvWEfvbiKz8iK/W6LPxGzqhdTjoTqvaRyKzL9Azwo04aQr3zotFSCsrl5k52FOWcOn1pdsy7dmB7jNQ3Ei1MGjMacl2IUsbSUJ9VXFfkoKK2A1JqX9oOl8ihkuvUSAp4Rw3S2nE3SVFj4KvP5cGGh3t0rgQnanLmHQBvzb+yn94UiWyY+33mhCloDh2+2yQdvslt6NW2tuZOXE1VDqut8DSoILLrzVoz4IhAAt0wsRf/tjKA6PQ==
X-MS-TrafficTypeDiagnostic: DB5PR0801MB1590:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 31:6Qg+ASOF4GPve+CGFVFDca+RDxCmUeBc6nZGjdoBuThNxQzWv9IquxiWnuRNl2WKjjGPLB8qCOtun1DFQrgfQNgF5n5fmgIaW3p1cp5nWvL3NUcffnJa9ORzpkxi4bRBOz2gTqP8Hpj4UrGPDBtSCxdA7nUg03o29wN5rhej6EpmSgct93d18/i/TJyAqD7xZ3iDFpWKurYIu0dI9IEuOS8tEQ9Xy4+Vno/wU+4tibc=;
 20:hwhGpA9Oi6Z2+hm7lMB/Jm7ygasKdzxAL+OQLN36Xgv4x68mzQNN/U4+SryWoQiIeOWE7K3QwSOZdMkxRd9bi2rxJW6CmbzFyU3HgsROg6qn9dupW1zAmKNy3rLodmp7RQkXWZHqsq3R+E4Hy09nzsGbqM53DM3gqFk18q6Z2FDSkkAAJ428N/rAmLz5KY8dgvJyD3Ow3Kh926RGXxVpWHaPDig8tMMXhCKyR7dWYXgB4+EJaWf3gDQn5hjbiTYx;
 4:7+IgW7fNwSJhs65qAG6gI0dghGM3Z0lDgeRI2EQwjwHXqxtBp+cu+Chr0bNeyft5tyQid6Vf0ViSmdnyF/5FwAKEAJOZGfGU83gIy98R/W2DhK+vRNGFstdhNEzrjj5dojM1gKq0zaiE4rW1cg3+nHfwv6AwsPCa8dUulgihkzQXJ1+ezJlsapHttdV7YSzmmlKYYb5lCZ0yxkUiFZwhnj2SmGmmrKPiGMwLepSzti+z8Que7ypHGlPDwJ6R3KAL2pqCnHH35/cUvmnA6+2/m8h0Nm154RFRwKDy1e8Ye08/EXUHkPqv5hjM+lnhx44c
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR0801MB15909E7CA80BEA519706C8AB9EB00@DB5PR0801MB1590.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93004095)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:DB5PR0801MB1590; BCL:0; PCL:0; RULEID:; SRVR:DB5PR0801MB1590; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR0801MB1590;
 23:PqdilP+7JlkOpLKuVyn41GYeluh1/DItMScXlHN?=
 =?us-ascii?Q?6KXVcLZl/Rv6teSbVcwBLFk8yqiUr3+tbEbIhKJX69wQmhQvR1K8Xovs2Vm6?=
 =?us-ascii?Q?pmCUvo/HxfJb/wRC44hv/gXwT43wmUU9n+2gT6ko5qD8TcmB+akcfco2TH4Q?=
 =?us-ascii?Q?+dlyT8/h8sAO9H+P+7/PKhOGwztcVa0QMw896U9wlEpAzEVG5/5JteF2L5gy?=
 =?us-ascii?Q?u0/Pw+UGILe81EBA/QIfxDVVMopUMKs8Wt7EjMEuQHMdYyeTpNH4s0f/LPYB?=
 =?us-ascii?Q?Uy2E2YDtKaNJv/cVsfXAGb1E+EJyS0m47nwX0qkDCv+nqoBhSn+kiKXkp0YE?=
 =?us-ascii?Q?Mx8HS7Bqk4d/IxZHNwVyCm/ISm2v5g+6RwYXzPJLcZkchym/fbHB5Tg+V1eJ?=
 =?us-ascii?Q?1vW2gsIv5AZpZpuMPGkVgsS54WRS1nd+lDSAVmqVC3KH+h3sW91LeM4ciLOP?=
 =?us-ascii?Q?J8ZQiAf1fj2muQ7VPfAz10oLNocly0foGwZwNaFSxY/M5swXoUVdEwnsXTJ3?=
 =?us-ascii?Q?MVXRbT2pO1Jre/mvrXQzEtntnr1QrYtdJZ7saTtMqb5O4i86IgKsbNZh1F+H?=
 =?us-ascii?Q?K0rRjAyCXUh0I+HdlUqeom56ZHdSi3bL8aGvlt5d+EjF8adjVPLEHK2xjePc?=
 =?us-ascii?Q?bokeEov7RXcyto2Oc9yjX/dyoAyQan+L7dhfy6NC5J9bhoNfnMLRhWcf0Ua2?=
 =?us-ascii?Q?J7lE+w7TtYW1sPLby5VtevF6lDkkp+eJT4SXQ4tG0PuDkXZiyXifkGeJepR0?=
 =?us-ascii?Q?IVSeEqIrKQCsGfM4Fx8z/AetUSc91tX+BC+oYETi5MvrkVY+kSbDYpa26y2Z?=
 =?us-ascii?Q?HHs2aaG3UUKRnKLwaHZRDV07Jlt0RyeeFzgbfQYRLHfNKGY5lEvtXvVwrWBw?=
 =?us-ascii?Q?XUpO4jkAF//YnHZyyQXSPAs/FaLu6qfEt+oaSnCIq/b1wlUXaddZuzfZV3cx?=
 =?us-ascii?Q?ksB7Mt67MPwyZfbNru9IXgEvFXZsPVInKYk8lQbCiGzRPgRgGPMPI5x2S+Mx?=
 =?us-ascii?Q?680DNBBltUtzFwf409dDgKggx0s/UgRXuLqGIoQe1JDGCqZ0Brfp888NKM8E?=
 =?us-ascii?Q?EqZwEsYvahxqmJUF2IkjhNRkkdd/8S9WBPIqv3G7t0CsljTIQRe6Me36C57m?=
 =?us-ascii?Q?MVi1tB3SWWFxfOloOEW75Fm7vFTrgV6tjVe7IgPqT1OuB777jYxqMaQz5hbj?=
 =?us-ascii?Q?ZzldKIQoNQuy8BSMPJN7eS1l6mDZ8eP2xJiN8uOHhB8sm17W4jyKO0QMB+ns?=
 =?us-ascii?Q?XOE5FlavT/IpmeBHoWO4sAosdjqR0mRC3a116CIS8?=
X-Microsoft-Antispam-Message-Info: cKv80gr7Xa38F/DRUuM8ZNG3JX9NvLTWVBjB9ihNb5kbi0juUnNwNnrxNPHjvfn4rLtCNtckf3km110lPAs7l8oWOVGSMaCmgInOiA5G87n6Z30HcIjjcyKqciqLsS1+AXPL7/H1JIM0SFpdMPWRIZQh3Yu5/FhyGzqx1nXa7MRijElByFLbP11tkMlSGu5qFNBAN/eSJ1QWFDJdei5x+sfGyxzSud5xMjaB2lPF838AcEB7TLp8GxmxpWJVHoumP+EexHxDwtj9Z3Pmdg0bVJ8EzREfpRf/HaVAbvwErS80ssy7WoGZJXDp3+Co4FnefSOp2f7Y+c8xPTqFJ/NBcxcpllzdXhqoK7TKCsJqxysBFdj7CiWLEjuBBZLGHldhmQdY9RxXIqIR4PnDlgihjfKDwSSI1Y/4SEKprjeclL8=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 6:Um1DxnAwU3VIeMQl1G7jVzW6I9PvofAf/+f+Ivw27GXiJaL1yybFh4e249Z+4jp5Ra9JWTBflc2UOulsZAV6uqXvRo+uxUXE1RfN7G3afG+jKZnw98tI11WZROnrFQlN21vbNiJ8DuvBv4JQGDB4I6b90smVkmnnCnYSqCYeT6GeQPqnlEh3XpFIWZWTZhCxCdb05tmBlfCf1HMlBNKXpGvvhdp+iSBg5c5bCbSuRVIpgkUnA4boIGhBWqyouMP+FQyMisufDCM+XoJewd5WS6H/1pKnIPx7Z2IBimKk7Zl+gnlltpYmPeOrLm0DU4GrR2J5jgKXWt5BByzpkHBBsamlSlwP+EjWa86usg+wNKqqQ1D9dMygVlQG6sYyvLnXJ59QvSVGXLue0AABJe9zMr1paImX2UnTh5INetAT6HNtlmaZSrW8hXH7hRoF3Xks2OBe7EzwR7yMfawAXOoVu3UMgvokv4kLfwWQCGZ4n1nJQiJj/VcTENd8SS1gbdfY;
 5:mwciM4Fi0jnXwbVKd3DL+cVuiuqG5+lBsz3khSFIIeoaUl4BcgMSTe6T+wzuC+bOdB5tdvF0kG4b13m7nbWrZZCg1FsiVCRg5+jP7QQYgBYvfBNSPkHAnzQZDdHZR4kYZ6gUYrs/RGwVAL29V039uw7zJoclLlMe5LqILv5oDxo=;
 24:tMSZbNyD7zJABvf9v3SBC8+v++Dfiv3ScyOUs/CKqgHt3aolbLAb9BlEvLa3xu+umT2TcWi/rCikN3HVcPFUHRA9hzG9ljzU/dvJ/msmRpo=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 7:+huSabTv57tuMUxD+ymvCkA1zUbwgRQkmj2/HYkpiBozWEHdVTMmVw3vEmwhdkq9oroJszDukhgTbhBd4ENw+yd5C4SanSeJZRnZ5whVwgT9+60AZZhFw11dDzYEEaC3A3vhJFb9g/o3HNpbX9J9oqppOaH3qmOuBnVkaD5LSGMS+u9991GvR+2QTHbthj+Hx+1d7Tj8UMNVaDWEHZSzwbGHH2QpkJgGDX2qaX2HBsKV4ydNQIPVOV4A1dnufDqu
X-MS-Office365-Filtering-Correlation-Id: 2830613e-38c9-4657-6850-08d5a3799285
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:08.4879 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2830613e-38c9-4657-6850-08d5a3799285
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB1590
Subject: [Minios-devel] [UNIKRAFT PATCH 03/13] arch: Reorganize arch folder
 to reflect the CPU family schema
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QXMgd2UgaGF2ZSBpbnRyb2R1Y2VkIFVLX0ZBTUlMWSBmb3IgYnVpbGQgc2NpcHRzLiBJbiBvcmRl
ciB0bwpyZWZsZWN0IHRoZSBDUFUgZmFtaWx5IHNjaGVtYSwgd2UgbW9kaWZ5IHRoZSAiYXJjaC9V
S19BUkNIIgp0byAiYXJjaC9VS19GQU1JTFkvVUtfQVJDSCIuCgpUaGUgImFyY2gvVUtfRkFNSUxZ
IiBjYW4gYmUgdXNlZCB0byBzdG9yZSB0aGUgY29tbW9uIGNvZGVzIGFuZCBidWlsZApzY3JpcHRz
IGZvciB0aGUgYXJjaGl0ZWN0dXJlcyBvZiBzYW1lIGZhbWlseS4KCkZvciBpbmRpdmlkdWFsIGFy
Y2hpdGVjdHVyZXMsIGl0IG1pZ2h0IG1ha2Ugc2Vuc2UgdG8gdXNlIGZvcndhcmQKZGVjbGFyYXRp
b25zIGluIENvbXBpbGVyLnVrIGFuZCBNYWtlZmlsZS51ayB0byBpbmNsdWRlIGEgY29ycmVzcG9u
ZGluZwpmaWxlIGluIGEgc3ViZm9sZGVyLiBGb3IgaW5zdGFuY2UgYXJtL01ha2VmaWxlLnVrIGlu
Y2x1ZGVzCmFybS9hcm0vTWFrZWZpbGUudWsgd2hlbiBhbiBBUk0zMiBhcmNoaXRlY3R1cmUgd2Fz
IHNlbGVjdGVkLgoKU2lnbmVkLW9mZi1ieTogV2VpIENoZW4gPFdlaS5DaGVuQGFybS5jb20+Ci0t
LQogTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgfCAgMTMgKy0KIGFyY2gvQ29uZmlnLnVr
ICAgICAgICAgICAgICAgIHwgICA0ICstCiBhcmNoL2FybS9Db21waWxlci51ayAgICAgICAgICB8
ICAgNyArLQogYXJjaC9hcm0vQ29uZmlnLnVrICAgICAgICAgICAgfCAgMTggLS0KIGFyY2gvYXJt
L01ha2VmaWxlLnVrICAgICAgICAgIHwgIDIzICstLQogYXJjaC9hcm0vYXJtL0NvbXBpbGVyLnVr
ICAgICAgfCAgIDYgKwogYXJjaC9hcm0vYXJtL0NvbmZpZy51ayAgICAgICAgfCAgMTggKysKIGFy
Y2gvYXJtL2FybS9NYWtlZmlsZS51ayAgICAgIHwgIDE5ICsrCiBhcmNoL2FybS9hcm0vZGl2c2kz
LlMgICAgICAgICB8IDQwMyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KwogYXJjaC9hcm0vYXJtL2xkaXZtb2QuUyAgICAgICAgfCAgNjggKysrKysrKwogYXJjaC9hcm0v
YXJtL2xkaXZtb2RfaGVscGVyLmMgfCAgNjcgKysrKysrKwogYXJjaC9hcm0vYXJtL3FkaXZyZW0u
YyAgICAgICAgfCAzMjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBhcmNoL2Fy
bS9kaXZzaTMuUyAgICAgICAgICAgICB8IDQwNCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0KIGFyY2gvYXJtL2xkaXZtb2QuUyAgICAgICAgICAgIHwgIDY4IC0tLS0t
LS0KIGFyY2gvYXJtL2xkaXZtb2RfaGVscGVyLmMgICAgIHwgIDY3IC0tLS0tLS0KIGFyY2gvYXJt
L3FkaXZyZW0uYyAgICAgICAgICAgIHwgMzI0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQogYXJjaC94ODYvQ29tcGlsZXIudWsgICAgICAgICAgfCAgIDQgKwogYXJjaC94ODYvTWFr
ZWZpbGUudWsgICAgICAgICAgfCAgIDQgKwogYXJjaC94ODYveDg2XzY0L0NvbXBpbGVyLnVrICAg
fCAgIDYgKwogYXJjaC94ODYveDg2XzY0L0NvbmZpZy51ayAgICAgfCAgODkgKysrKysrKysrKwog
YXJjaC94ODYveDg2XzY0L01ha2VmaWxlLnVrICAgfCAgMzcgKysrKwogYXJjaC94ODZfNjQvQ29t
cGlsZXIudWsgICAgICAgfCAgIDYgLQogYXJjaC94ODZfNjQvQ29uZmlnLnVrICAgICAgICAgfCAg
ODkgLS0tLS0tLS0tLQogYXJjaC94ODZfNjQvTWFrZWZpbGUudWsgICAgICAgfCAgMzcgLS0tLQog
MjQgZmlsZXMgY2hhbmdlZCwgMTA1OSBpbnNlcnRpb25zKCspLCAxMDQ2IGRlbGV0aW9ucygtKQog
ZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL0NvbmZpZy51awogY3JlYXRlIG1vZGUgMTAwNjQ0
IGFyY2gvYXJtL2FybS9Db21waWxlci51awogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2Fy
bS9Db25maWcudWsKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm0vTWFrZWZpbGUudWsK
IGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm0vZGl2c2kzLlMKIGNyZWF0ZSBtb2RlIDEw
MDY0NCBhcmNoL2FybS9hcm0vbGRpdm1vZC5TCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0v
YXJtL2xkaXZtb2RfaGVscGVyLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm0vcWRp
dnJlbS5jCiBkZWxldGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vZGl2c2kzLlMKIGRlbGV0ZSBtb2Rl
IDEwMDY0NCBhcmNoL2FybS9sZGl2bW9kLlMKIGRlbGV0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9s
ZGl2bW9kX2hlbHBlci5jCiBkZWxldGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vcWRpdnJlbS5jCiBj
cmVhdGUgbW9kZSAxMDA2NDQgYXJjaC94ODYvQ29tcGlsZXIudWsKIGNyZWF0ZSBtb2RlIDEwMDY0
NCBhcmNoL3g4Ni9NYWtlZmlsZS51awogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gveDg2L3g4Nl82
NC9Db21waWxlci51awogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gveDg2L3g4Nl82NC9Db25maWcu
dWsKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL3g4Ni94ODZfNjQvTWFrZWZpbGUudWsKIGRlbGV0
ZSBtb2RlIDEwMDY0NCBhcmNoL3g4Nl82NC9Db21waWxlci51awogZGVsZXRlIG1vZGUgMTAwNjQ0
IGFyY2gveDg2XzY0L0NvbmZpZy51awogZGVsZXRlIG1vZGUgMTAwNjQ0IGFyY2gveDg2XzY0L01h
a2VmaWxlLnVrCgpkaWZmIC0tZ2l0IGEvTWFrZWZpbGUgYi9NYWtlZmlsZQppbmRleCA2MzQ5NWNh
Li5jYTliNTY2IDEwMDY0NAotLS0gYS9NYWtlZmlsZQorKysgYi9NYWtlZmlsZQpAQCAtMjk3LDcg
KzI5Nyw2IEBAIGV4cG9ydCBIT1NUQVJDSCA6PSAkKHNoZWxsIExDX0FMTD1DICQoSE9TVENDX05P
Q0NBQ0hFKSAtdiAyPiYxIHwgXAogZXhwb3J0IEhPU1RBUiBIT1NUQVMgSE9TVENDIEhPU1RDQ19W
RVJTSU9OIEhPU1RDWFggSE9TVExEIEhPU1RBUkNICiBleHBvcnQgSE9TVENDX05PQ0NBQ0hFIEhP
U1RDWFhfTk9DQ0FDSEUKIAotCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogIyBVbmlrcmFmdCBB
cmNoaXRlY3R1cmUKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCkBAIC0zNDksMTIgKzM0OCwxMiBA
QCBleHBvcnQgVUtfRkFNSUxZID89ICQoc2hlbGwgZWNobyAiJChVS19BUkNIKSIgfCBcCiAKICMg
UXVpY2stY2hlY2sgaWYgYXJjaGl0ZWN0dXJlIGV4aXN0cwogaWZlcSAoJChmaWx0ZXIgJChudWxs
X3RhcmdldHMpIHByaW50LXZhcnMsJChNQUtFQ01ER09BTFMpKSwpCi1pZmVxICgkKHdpbGRjYXJk
ICQoVUtfQkFTRSkvYXJjaC8kKEFSQ0gpL01ha2VmaWxlLnVrKSwpCi0kKGVycm9yIFRhcmdldCBh
cmNoaXRlY3R1cmUgKCQoQVJDSCkpIGlzIGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkIChjb3VsZCBu
b3QgZmluZCAkKFVLX0JBU0UpL2FyY2gvJChBUkNIKS9NYWtlZmlsZS51aykuKQoraWZlcSAoJCh3
aWxkY2FyZCAkKFVLX0JBU0UpL2FyY2gvJChVS19GQU1JTFkpLyQoQVJDSCkvTWFrZWZpbGUudWsp
LCkKKyQoZXJyb3IgVGFyZ2V0IGFyY2hpdGVjdHVyZSAoJChBUkNIKSkgaXMgY3VycmVudGx5IG5v
dCBzdXBwb3J0ZWQgKGNvdWxkIG5vdCBmaW5kICQoVUtfQkFTRSkvYXJjaC8kKFVLX0ZBTUlMWSkv
JChBUkNIKS9NYWtlZmlsZS51aykuKQogZW5kaWYKIAotaWZlcSAoJCh3aWxkY2FyZCBhcmNoLyQo
QVJDSCkvQ29tcGlsZXIudWspLCkKLSQoZXJyb3IgVGFyZ2V0IGFyY2hpdGVjdHVyZSAoJChBUkNI
KSkgaXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgKGNvdWxkIG5vdCBmaW5kICQoVUtfQkFTRSkv
YXJjaC8kKEFSQ0gpL0NvbXBpbGVyLnVrKS4pCitpZmVxICgkKHdpbGRjYXJkICQoVUtfQkFTRSkv
YXJjaC8kKFVLX0ZBTUlMWSkvJChBUkNIKS9Db21waWxlci51ayksKQorJChlcnJvciBUYXJnZXQg
YXJjaGl0ZWN0dXJlICgkKEFSQ0gpKSBpcyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZCAoY291bGQg
bm90IGZpbmQgJChVS19CQVNFKS9hcmNoLyQoVUtfRkFNSUxZKS8kKEFSQ0gpL0NvbXBpbGVyLnVr
KS4pCiBlbmRpZgogZW5kaWYKIApAQCAtMzkzLDcgKzM5Miw3IEBAIHVuZXhwb3J0IE1BQ0hJTkUK
ICMgTm90ZTogU29tZSBhcmNoaXRlY3R1cmVzIGFzc2lnbiBDUk9TU19DT01QSUxFIGluIHRoZWly
IGFyY2gvKi9NYWtlZmlsZS51awogQ1JPU1NfQ09NUElMRSA6PSAkKENST1NTX0NPTVBJTEU6IiUi
PSUpCiAKLWluY2x1ZGUgJChVS19CQVNFKS9hcmNoLyQoVUtfQVJDSCkvQ29tcGlsZXIudWsKK2lu
Y2x1ZGUgJChVS19CQVNFKS9hcmNoLyQoVUtfRkFNSUxZKS9Db21waWxlci51awogCiAjIE1ha2Ug
dmFyaWFibGVzIChDQywgZXRjLi4uKQogTEQJCTo9ICQoQ1JPU1NfQ09NUElMRSlsZApAQCAtNDU1
LDcgKzQ1NCw3IEBAIGVuZGlmCiAkKGZvcmVhY2ggRSwkKEVMSUJfRElSKSwgXAogCSQoZXZhbCAk
KGNhbGwgX2ltcG9ydF9saWIsJChFKSkpOyBcCiApCi0kKGV2YWwgJChjYWxsIF9pbXBvcnRfbGli
LCQoVUtfQkFTRSkvYXJjaC8kKFVLX0FSQ0gpKSkgIyBhcmNoaXRlY3R1cmUgbGlicmFyaWVzCisk
KGV2YWwgJChjYWxsIF9pbXBvcnRfbGliLCQoVUtfQkFTRSkvYXJjaC8kKFVLX0ZBTUlMWSkpKSAj
IGFyY2hpdGVjdHVyZSBsaWJyYXJpZXMKIGluY2x1ZGUgJChVS19CQVNFKS9wbGF0L01ha2VmaWxl
LnVrICMgcGxhdGZvcm0gbGlicmFyaWVzCiBpbmNsdWRlICQoVUtfQkFTRSkvbGliL01ha2VmaWxl
LnVrICMgbGlicmFyaWVzCiBpbmNsdWRlICQoVUtfQkFTRSkvTWFrZWZpbGUudWsgIyBVbmlrcmFm
dCBiYXNlCmRpZmYgLS1naXQgYS9hcmNoL0NvbmZpZy51ayBiL2FyY2gvQ29uZmlnLnVrCmluZGV4
IDM2ZGY4ZDEuLjkyMzYyNzMgMTAwNjQ0Ci0tLSBhL2FyY2gvQ29uZmlnLnVrCisrKyBiL2FyY2gv
Q29uZmlnLnVrCkBAIC0xMyw4ICsxMyw4IEBAIGNvbmZpZyBBUkNIX0FSTV8zMgogZW5kY2hvaWNl
CiAKIGlmIChBUkNIX1g4Nl82NCkKLQlzb3VyY2UgImFyY2gveDg2XzY0L0NvbmZpZy51ayIKKwlz
b3VyY2UgImFyY2gveDg2L3g4Nl82NC9Db25maWcudWsiCiBlbmRpZgogaWYgKEFSQ0hfQVJNXzMy
KQotCXNvdXJjZSAiYXJjaC9hcm0vQ29uZmlnLnVrIgorCXNvdXJjZSAiYXJjaC9hcm0vYXJtL0Nv
bmZpZy51ayIKIGVuZGlmCmRpZmYgLS1naXQgYS9hcmNoL2FybS9Db21waWxlci51ayBiL2FyY2gv
YXJtL0NvbXBpbGVyLnVrCmluZGV4IGVlMzQ5MTYuLjAyZThhMDIgMTAwNjQ0Ci0tLSBhL2FyY2gv
YXJtL0NvbXBpbGVyLnVrCisrKyBiL2FyY2gvYXJtL0NvbXBpbGVyLnVrCkBAIC0xLDYgKzEsMyBA
QAotIyBzZXQgY3Jvc3MgY29tcGlsZQotaWZlcSAoJChDUk9TU19DT01QSUxFKSwpCi1pZm5lcSAo
JChVS19BUkNIKSwkKEhPU1RBUkNIKSkKLQlDUk9TU19DT01QSUxFIDo9IGFybS1saW51eC1nbnVl
YWJpaGYtCi1lbmRpZgoraWZlcSAoJChVS19BUkNIKSxhcm0pCisJaW5jbHVkZSAkKFVLX0JBU0Up
L2FyY2gvYXJtL2FybS9Db21waWxlci51awogZW5kaWYKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL0Nv
bmZpZy51ayBiL2FyY2gvYXJtL0NvbmZpZy51awpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggNDI2YzExMy4uMDAwMDAwMAotLS0gYS9hcmNoL2FybS9Db25maWcudWsKKysrIC9kZXYvbnVs
bApAQCAtMSwxOCArMCwwIEBACi1jaG9pY2UKLQlwcm9tcHQgIlByb2Nlc3NvciBPcHRpbWl6YXRp
b24iCi0JZGVmYXVsdCBNQVJDSF9DT1JURVhBNwotCWhlbHAKLQkJT3B0aW1pemUgdGhlIGNvZGUg
Zm9yIHNlbGVjdGVkIHRhcmdldCBwcm9jZXNzb3IKLQotY29uZmlnIE1BUkNIX0NPUlRFWEE3Ci0J
Ym9vbCAiR2VuZXJpYyBDb3J0ZXggQTciCi0JaGVscAotCQlDb21waWxlIGZvciBDb3J0ZXgtQTcg
Q1BVcywgbm8gaGFyZHdhcmUgRlBVIHN1cHBvcnQKLQotY29uZmlnIE1BUkNIX0EyME5FT04KLQli
b29sICJDb3J0ZXggQTc6IEFsbFdpbm5lciBBMjAiCi0JaGVscAotCQlDb21waWxlIGZvciBBbGxX
aW5uZXIgQTIwIChDb3J0ZXgtQTcpIENQVXMKLQkJVGhlIE5FT04gRlBVIGlzIGVuYWJsZWQuIFBs
ZWFzZSBub3RlIHRoYXQgTkVPTiBpcwotCQlub3QgZnVsbHkgSUVFRSA3NTQgY29tcGxpYW50Lgot
ZW5kY2hvaWNlCmRpZmYgLS1naXQgYS9hcmNoL2FybS9NYWtlZmlsZS51ayBiL2FyY2gvYXJtL01h
a2VmaWxlLnVrCmluZGV4IDI1NjdkYmUuLjNhYjRkZjkgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtL01h
a2VmaWxlLnVrCisrKyBiL2FyY2gvYXJtL01ha2VmaWxlLnVrCkBAIC0xLDE5ICsxLDQgQEAKLUFT
RkxBR1MgICs9IC1EX19BUk1fMzJfXwotQVNGTEFHUyAgKz0gLW1hcm0KLUNGTEFHUyAgICs9IC1E
X19BUk1fMzJfXwotQ0ZMQUdTICAgKz0gLW1hcm0gLWZtcy1leHRlbnNpb25zCi1DWFhGTEFHUyAr
PSAtRF9fQVJNXzMyX18KLUNYWEZMQUdTICs9IC1tYXJtIC1mbXMtZXh0ZW5zaW9ucwotCi0jLW1h
cmNoPWFybXY3LWEKLQotQ0ZMQUdTLSQoTUFSQ0hfQTIwTkVPTikgICAgKz0gLW1jcHU9Y29ydGV4
LWE3IC1tdHVuZT1jb3J0ZXgtYTcgLW1mcHU9dmZwdjQtZDE2IC1tZnB1PW5lb24tdmZwdjQgLWZ1
bnNhZmUtbWF0aC1vcHRpbWl6YXRpb25zCi1DWFhGTEFHUy0kKE1BUkNIX0EyME5FT04pICArPSAt
bWNwdT1jb3J0ZXgtYTcgLW10dW5lPWNvcnRleC1hNyAtbWZwdT12ZnB2NC1kMTYgLW1mcHU9bmVv
bi12ZnB2NCAtZnVuc2FmZS1tYXRoLW9wdGltaXphdGlvbnMKLUNGTEFHUy0kKE1BUkNIX0NPUlRF
WEE3KSAgICs9IC1tY3B1PWNvcnRleC1hNyAtbXR1bmU9Y29ydGV4LWE3Ci1DWFhGTEFHUy0kKE1B
UkNIX0NPUlRFWEE3KSArPSAtbWNwdT1jb3J0ZXgtYTcgLW10dW5lPWNvcnRleC1hCi0KLSQoZXZh
bCAkKGNhbGwgYWRkbGliLGxpYmFybW1hdGgpKQotTElCQVJNTUFUSF9TUkNTLSQoQVJDSF9BUk1f
MzIpICs9ICQoVUtfQkFTRSkvYXJjaC9hcm0vZGl2c2kzLlMKLUxJQkFSTU1BVEhfU1JDUy0kKEFS
Q0hfQVJNXzMyKSArPSAkKFVLX0JBU0UpL2FyY2gvYXJtL2xkaXZtb2QuUwotTElCQVJNTUFUSF9T
UkNTLSQoQVJDSF9BUk1fMzIpICs9ICQoVUtfQkFTRSkvYXJjaC9hcm0vbGRpdm1vZF9oZWxwZXIu
YwotTElCQVJNTUFUSF9TUkNTLSQoQVJDSF9BUk1fMzIpICs9ICQoVUtfQkFTRSkvYXJjaC9hcm0v
cWRpdnJlbS5jCisjIEluY2x1ZGUgY29ycmVzcG9uZGluZyBNYWtlZmlsZXMgZm9yIHNwZWNpZmll
ZCBhcmNoaXRlY2h0dXJlcworaWZlcSAoJChVS19BUkNIKSxhcm0pCisJaW5jbHVkZSAkKFVLX0JB
U0UpL2FyY2gvYXJtL2FybS9NYWtlZmlsZS51aworZW5kaWYKZGlmZiAtLWdpdCBhL2FyY2gvYXJt
L2FybS9Db21waWxlci51ayBiL2FyY2gvYXJtL2FybS9Db21waWxlci51awpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZTM0OTE2Ci0tLSAvZGV2L251bGwKKysrIGIvYXJjaC9h
cm0vYXJtL0NvbXBpbGVyLnVrCkBAIC0wLDAgKzEsNiBAQAorIyBzZXQgY3Jvc3MgY29tcGlsZQor
aWZlcSAoJChDUk9TU19DT01QSUxFKSwpCitpZm5lcSAoJChVS19BUkNIKSwkKEhPU1RBUkNIKSkK
KwlDUk9TU19DT01QSUxFIDo9IGFybS1saW51eC1nbnVlYWJpaGYtCitlbmRpZgorZW5kaWYKZGlm
ZiAtLWdpdCBhL2FyY2gvYXJtL2FybS9Db25maWcudWsgYi9hcmNoL2FybS9hcm0vQ29uZmlnLnVr
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQyNmMxMTMKLS0tIC9kZXYvbnVs
bAorKysgYi9hcmNoL2FybS9hcm0vQ29uZmlnLnVrCkBAIC0wLDAgKzEsMTggQEAKK2Nob2ljZQor
CXByb21wdCAiUHJvY2Vzc29yIE9wdGltaXphdGlvbiIKKwlkZWZhdWx0IE1BUkNIX0NPUlRFWEE3
CisJaGVscAorCQlPcHRpbWl6ZSB0aGUgY29kZSBmb3Igc2VsZWN0ZWQgdGFyZ2V0IHByb2Nlc3Nv
cgorCitjb25maWcgTUFSQ0hfQ09SVEVYQTcKKwlib29sICJHZW5lcmljIENvcnRleCBBNyIKKwlo
ZWxwCisJCUNvbXBpbGUgZm9yIENvcnRleC1BNyBDUFVzLCBubyBoYXJkd2FyZSBGUFUgc3VwcG9y
dAorCitjb25maWcgTUFSQ0hfQTIwTkVPTgorCWJvb2wgIkNvcnRleCBBNzogQWxsV2lubmVyIEEy
MCIKKwloZWxwCisJCUNvbXBpbGUgZm9yIEFsbFdpbm5lciBBMjAgKENvcnRleC1BNykgQ1BVcwor
CQlUaGUgTkVPTiBGUFUgaXMgZW5hYmxlZC4gUGxlYXNlIG5vdGUgdGhhdCBORU9OIGlzCisJCW5v
dCBmdWxseSBJRUVFIDc1NCBjb21wbGlhbnQuCitlbmRjaG9pY2UKZGlmZiAtLWdpdCBhL2FyY2gv
YXJtL2FybS9NYWtlZmlsZS51ayBiL2FyY2gvYXJtL2FybS9NYWtlZmlsZS51awpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNjE0NDI1Ci0tLSAvZGV2L251bGwKKysrIGIvYXJj
aC9hcm0vYXJtL01ha2VmaWxlLnVrCkBAIC0wLDAgKzEsMTkgQEAKK0FTRkxBR1MgICs9IC1EX19B
Uk1fMzJfXworQVNGTEFHUyAgKz0gLW1hcm0KK0NGTEFHUyAgICs9IC1EX19BUk1fMzJfXworQ0ZM
QUdTICAgKz0gLW1hcm0gLWZtcy1leHRlbnNpb25zCitDWFhGTEFHUyArPSAtRF9fQVJNXzMyX18K
K0NYWEZMQUdTICs9IC1tYXJtIC1mbXMtZXh0ZW5zaW9ucworCisjLW1hcmNoPWFybXY3LWEKKwor
Q0ZMQUdTLSQoTUFSQ0hfQTIwTkVPTikgICAgKz0gLW1jcHU9Y29ydGV4LWE3IC1tdHVuZT1jb3J0
ZXgtYTcgLW1mcHU9dmZwdjQtZDE2IC1tZnB1PW5lb24tdmZwdjQgLWZ1bnNhZmUtbWF0aC1vcHRp
bWl6YXRpb25zCitDWFhGTEFHUy0kKE1BUkNIX0EyME5FT04pICArPSAtbWNwdT1jb3J0ZXgtYTcg
LW10dW5lPWNvcnRleC1hNyAtbWZwdT12ZnB2NC1kMTYgLW1mcHU9bmVvbi12ZnB2NCAtZnVuc2Fm
ZS1tYXRoLW9wdGltaXphdGlvbnMKK0NGTEFHUy0kKE1BUkNIX0NPUlRFWEE3KSAgICs9IC1tY3B1
PWNvcnRleC1hNyAtbXR1bmU9Y29ydGV4LWE3CitDWFhGTEFHUy0kKE1BUkNIX0NPUlRFWEE3KSAr
PSAtbWNwdT1jb3J0ZXgtYTcgLW10dW5lPWNvcnRleC1hCisKKyQoZXZhbCAkKGNhbGwgYWRkbGli
LGxpYmFybW1hdGgpKQorTElCQVJNTUFUSF9TUkNTLSQoQVJDSF9BUk1fMzIpICs9ICQoVUtfQkFT
RSkvYXJjaC9hcm0vYXJtL2RpdnNpMy5TCitMSUJBUk1NQVRIX1NSQ1MtJChBUkNIX0FSTV8zMikg
Kz0gJChVS19CQVNFKS9hcmNoL2FybS9hcm0vbGRpdm1vZC5TCitMSUJBUk1NQVRIX1NSQ1MtJChB
UkNIX0FSTV8zMikgKz0gJChVS19CQVNFKS9hcmNoL2FybS9hcm0vbGRpdm1vZF9oZWxwZXIuYwor
TElCQVJNTUFUSF9TUkNTLSQoQVJDSF9BUk1fMzIpICs9ICQoVUtfQkFTRSkvYXJjaC9hcm0vYXJt
L3FkaXZyZW0uYwpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtL2RpdnNpMy5TIGIvYXJjaC9hcm0v
YXJtL2RpdnNpMy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIzZWRiZjcK
LS0tIC9kZXYvbnVsbAorKysgYi9hcmNoL2FybS9hcm0vZGl2c2kzLlMKQEAgLTAsMCArMSw0MDMg
QEAKKy8qCSROZXRCU0Q6IGRpdnNpMy5TLHYgMS40IDIwMDMvMDQvMDUgMjM6Mjc6MTUgYmpoMjEg
RXhwICQJKi8KKworLyotCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRI
T1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRI
RSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwK
KyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
CisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4K
KyAqLworCisjZGVmaW5lIEVOVFJZX05QKHN5bWJvbCkgXAorCS5nbG9ibCBzeW1ib2w7CVwKKwlz
eW1ib2w6CisKKyNkZWZpbmUgRU5EKHN5bWJvbCkKKworLyoKKyAqIHN0YWNrIGlzIGFsaWduZWQg
YXMgdGhlcmUncyBhIHBvc3NpYmlsaXR5IG9mIGJyYW5jaGluZyB0byBMX292ZXJmbG93CisgKiB3
aGljaCBtYWtlcyBhIEMgY2FsbAorICovCisKK0VOVFJZX05QKF9fdW1vZHNpMykKKwlzdG1mZAlz
cCEsIHtscn0KKwlzdWIJc3AsIHNwLCAjNAkvKiBhbGlnbiBzdGFjayAqLworCWJsCS5MX3VkaXZp
ZGUKKwlhZGQJc3AsIHNwLCAjNAkvKiB1bmFsaWduIHN0YWNrICovCisJbW92CXIwLCByMQorCWxk
bWZkCXNwISwge3BjfQorRU5EKF9fdW1vZHNpMykKKworRU5UUllfTlAoX19tb2RzaTMpCisJc3Rt
ZmQJc3AhLCB7bHJ9CisJc3ViCXNwLCBzcCwgIzQJLyogYWxpZ24gc3RhY2sgKi8KKwlibAkuTF9k
aXZpZGUKKwlhZGQJc3AsIHNwLCAjNAkvKiB1bmFsaWduIHN0YWNrICovCisJbW92CXIwLCByMQor
CWxkbWZkCXNwISwge3BjfQorCisuTF9vdmVyZmxvdzoKKwkvKiBYWFggc2hvdWxkIGNhdXNlIGEg
ZmF0YWwgZXJyb3IgKi8KKwltdm4JcjAsICMwCisJbW92CXBjLCBscgorCitFTkQoX19tb2RzaTMp
CisKKyNpZmRlZiBfX0FSTV9FQUJJX18KK0VOVFJZX05QKF9fYWVhYmlfdWlkaXYpCitFTlRSWV9O
UChfX2FlYWJpX3VpZGl2bW9kKQorI2VuZGlmCitFTlRSWV9OUChfX3VkaXZzaTMpCisuTF91ZGl2
aWRlOgkJCQkvKiByMCA9IHIwIC8gcjE7IHIxID0gcjAgJSByMSAqLworCWVvciAgICAgcjAsIHIx
LCByMAorCWVvciAgICAgcjEsIHIwLCByMQorCWVvciAgICAgcjAsIHIxLCByMAorCQkJCQkvKiBy
MCA9IHIxIC8gcjA7IHIxID0gcjEgJSByMCAqLworCWNtcAlyMCwgIzEKKwliY2MJLkxfb3ZlcmZs
b3cKKwliZXEJLkxfZGl2aWRlX2wwCisJbW92CWlwLCAjMAorCW1vdnMJcjEsIHIxCisJYnBsCS5M
X2RpdmlkZV9sMQorCW9ycglpcCwgaXAsICMweDIwMDAwMDAwCS8qIGlwIGJpdCAweDIwMDAwMDAw
ID0gLXZlIHIxICovCisJbW92cwlyMSwgcjEsIGxzciAjMQorCW9ycmNzCWlwLCBpcCwgIzB4MTAw
MDAwMDAJLyogaXAgYml0IDB4MTAwMDAwMDAgPSBiaXQgMCBvZiByMSAqLworCWIJLkxfZGl2aWRl
X2wxCisKKy5MX2RpdmlkZV9sMDoJCQkJLyogcjAgPT0gMSAqLworCW1vdglyMCwgcjEKKwltb3YJ
cjEsICMwCisJbW92CXBjLCBscgorI2lmZGVmIF9fQVJNX0VBQklfXworRU5EKF9fYWVhYmlfdWlk
aXYpCitFTkQoX19hZWFiaV91aWRpdm1vZCkKKyNlbmRpZgorRU5EKF9fdWRpdnNpMykKKworI2lm
ZGVmIF9fQVJNX0VBQklfXworRU5UUllfTlAoX19hZWFiaV9pZGl2KQorRU5UUllfTlAoX19hZWFi
aV9pZGl2bW9kKQorI2VuZGlmCitFTlRSWV9OUChfX2RpdnNpMykKKy5MX2RpdmlkZToJCQkJLyog
cjAgPSByMCAvIHIxOyByMSA9IHIwICUgcjEgKi8KKwllb3IgICAgIHIwLCByMSwgcjAKKwllb3Ig
ICAgIHIxLCByMCwgcjEKKwllb3IgICAgIHIwLCByMSwgcjAKKwkJCQkJLyogcjAgPSByMSAvIHIw
OyByMSA9IHIxICUgcjAgKi8KKwljbXAJcjAsICMxCisJYmNjCS5MX292ZXJmbG93CisJYmVxCS5M
X2RpdmlkZV9sMAorCWFuZHMJaXAsIHIwLCAjMHg4MDAwMDAwMAorCXJzYm1pCXIwLCByMCwgIzAK
KwlhbmRzCXIyLCByMSwgIzB4ODAwMDAwMDAKKwllb3IJaXAsIGlwLCByMgorCXJzYm1pCXIxLCBy
MSwgIzAKKwlvcnIJaXAsIHIyLCBpcCwgbHNyICMxCS8qIGlwIGJpdCAweDQwMDAwMDAwID0gLXZl
IGRpdmlzaW9uICovCisJCQkJCS8qIGlwIGJpdCAweDgwMDAwMDAwID0gLXZlIHJlbWFpbmRlciAq
LworCisuTF9kaXZpZGVfbDE6CisJbW92CXIyLCAjMQorCW1vdglyMywgIzAKKworCS8qCisJICog
SWYgdGhlIGhpZ2hlc3QgYml0IG9mIHRoZSBkaXZpZGVuZCBpcyBzZXQsIHdlIGhhdmUgdG8gYmUK
KwkgKiBjYXJlZnVsIHdoZW4gc2hpZnRpbmcgdGhlIGRpdmlzb3IuIFRlc3QgdGhpcy4KKwkgKi8K
Kwltb3ZzCXIxLHIxCisJYnBsCS5MX29sZF9jb2RlCisKKwkvKgorCSAqIEF0IHRoaXMgcG9pbnQs
IHRoZSBoaWdoZXN0IGJpdCBvZiByMSBpcyBrbm93biB0byBiZSBzZXQuCisJICogV2UgYWJ1c2Ug
dGhpcyBiZWxvdyBpbiB0aGUgdHN0IGluc3RydWN0aW9ucy4KKwkgKi8KKwl0c3QJcjEsIHIwIC8q
LCBsc2wgIzAgKi8KKwlibWkJLkxfZGl2aWRlX2IxCisJdHN0CXIxLCByMCwgbHNsICMxCisJYm1p
CS5MX2RpdmlkZV9iMgorCXRzdAlyMSwgcjAsIGxzbCAjMgorCWJtaQkuTF9kaXZpZGVfYjMKKwl0
c3QJcjEsIHIwLCBsc2wgIzMKKwlibWkJLkxfZGl2aWRlX2I0CisJdHN0CXIxLCByMCwgbHNsICM0
CisJYm1pCS5MX2RpdmlkZV9iNQorCXRzdAlyMSwgcjAsIGxzbCAjNQorCWJtaQkuTF9kaXZpZGVf
YjYKKwl0c3QJcjEsIHIwLCBsc2wgIzYKKwlibWkJLkxfZGl2aWRlX2I3CisJdHN0CXIxLCByMCwg
bHNsICM3CisJYm1pCS5MX2RpdmlkZV9iOAorCXRzdAlyMSwgcjAsIGxzbCAjOAorCWJtaQkuTF9k
aXZpZGVfYjkKKwl0c3QJcjEsIHIwLCBsc2wgIzkKKwlibWkJLkxfZGl2aWRlX2IxMAorCXRzdAly
MSwgcjAsIGxzbCAjMTAKKwlibWkJLkxfZGl2aWRlX2IxMQorCXRzdAlyMSwgcjAsIGxzbCAjMTEK
KwlibWkJLkxfZGl2aWRlX2IxMgorCXRzdAlyMSwgcjAsIGxzbCAjMTIKKwlibWkJLkxfZGl2aWRl
X2IxMworCXRzdAlyMSwgcjAsIGxzbCAjMTMKKwlibWkJLkxfZGl2aWRlX2IxNAorCXRzdAlyMSwg
cjAsIGxzbCAjMTQKKwlibWkJLkxfZGl2aWRlX2IxNQorCXRzdAlyMSwgcjAsIGxzbCAjMTUKKwli
bWkJLkxfZGl2aWRlX2IxNgorCXRzdAlyMSwgcjAsIGxzbCAjMTYKKwlibWkJLkxfZGl2aWRlX2Ix
NworCXRzdAlyMSwgcjAsIGxzbCAjMTcKKwlibWkJLkxfZGl2aWRlX2IxOAorCXRzdAlyMSwgcjAs
IGxzbCAjMTgKKwlibWkJLkxfZGl2aWRlX2IxOQorCXRzdAlyMSwgcjAsIGxzbCAjMTkKKwlibWkJ
LkxfZGl2aWRlX2IyMAorCXRzdAlyMSwgcjAsIGxzbCAjMjAKKwlibWkJLkxfZGl2aWRlX2IyMQor
CXRzdAlyMSwgcjAsIGxzbCAjMjEKKwlibWkJLkxfZGl2aWRlX2IyMgorCXRzdAlyMSwgcjAsIGxz
bCAjMjIKKwlibWkJLkxfZGl2aWRlX2IyMworCXRzdAlyMSwgcjAsIGxzbCAjMjMKKwlibWkJLkxf
ZGl2aWRlX2IyNAorCXRzdAlyMSwgcjAsIGxzbCAjMjQKKwlibWkJLkxfZGl2aWRlX2IyNQorCXRz
dAlyMSwgcjAsIGxzbCAjMjUKKwlibWkJLkxfZGl2aWRlX2IyNgorCXRzdAlyMSwgcjAsIGxzbCAj
MjYKKwlibWkJLkxfZGl2aWRlX2IyNworCXRzdAlyMSwgcjAsIGxzbCAjMjcKKwlibWkJLkxfZGl2
aWRlX2IyOAorCXRzdAlyMSwgcjAsIGxzbCAjMjgKKwlibWkJLkxfZGl2aWRlX2IyOQorCXRzdAly
MSwgcjAsIGxzbCAjMjkKKwlibWkJLkxfZGl2aWRlX2IzMAorCXRzdAlyMSwgcjAsIGxzbCAjMzAK
KwlibWkJLkxfZGl2aWRlX2IzMQorLyoKKyAqIGluc3RlYWQgb2Y6CisgKgl0c3QJcjEsIHIwLCBs
c2wgIzMxCisgKglibWkJLkxfZGl2aWRlX2IzMgorICovCisJYgkuTF9kaXZpZGVfYjMyCisKKy5M
X29sZF9jb2RlOgorCWNtcAlyMSwgcjAKKwliY2MJLkxfZGl2aWRlX2IwCisJY21wCXIxLCByMCwg
bHNsICMxCisJYmNjCS5MX2RpdmlkZV9iMQorCWNtcAlyMSwgcjAsIGxzbCAjMgorCWJjYwkuTF9k
aXZpZGVfYjIKKwljbXAJcjEsIHIwLCBsc2wgIzMKKwliY2MJLkxfZGl2aWRlX2IzCisJY21wCXIx
LCByMCwgbHNsICM0CisJYmNjCS5MX2RpdmlkZV9iNAorCWNtcAlyMSwgcjAsIGxzbCAjNQorCWJj
YwkuTF9kaXZpZGVfYjUKKwljbXAJcjEsIHIwLCBsc2wgIzYKKwliY2MJLkxfZGl2aWRlX2I2CisJ
Y21wCXIxLCByMCwgbHNsICM3CisJYmNjCS5MX2RpdmlkZV9iNworCWNtcAlyMSwgcjAsIGxzbCAj
OAorCWJjYwkuTF9kaXZpZGVfYjgKKwljbXAJcjEsIHIwLCBsc2wgIzkKKwliY2MJLkxfZGl2aWRl
X2I5CisJY21wCXIxLCByMCwgbHNsICMxMAorCWJjYwkuTF9kaXZpZGVfYjEwCisJY21wCXIxLCBy
MCwgbHNsICMxMQorCWJjYwkuTF9kaXZpZGVfYjExCisJY21wCXIxLCByMCwgbHNsICMxMgorCWJj
YwkuTF9kaXZpZGVfYjEyCisJY21wCXIxLCByMCwgbHNsICMxMworCWJjYwkuTF9kaXZpZGVfYjEz
CisJY21wCXIxLCByMCwgbHNsICMxNAorCWJjYwkuTF9kaXZpZGVfYjE0CisJY21wCXIxLCByMCwg
bHNsICMxNQorCWJjYwkuTF9kaXZpZGVfYjE1CisJY21wCXIxLCByMCwgbHNsICMxNgorCWJjYwku
TF9kaXZpZGVfYjE2CisJY21wCXIxLCByMCwgbHNsICMxNworCWJjYwkuTF9kaXZpZGVfYjE3CisJ
Y21wCXIxLCByMCwgbHNsICMxOAorCWJjYwkuTF9kaXZpZGVfYjE4CisJY21wCXIxLCByMCwgbHNs
ICMxOQorCWJjYwkuTF9kaXZpZGVfYjE5CisJY21wCXIxLCByMCwgbHNsICMyMAorCWJjYwkuTF9k
aXZpZGVfYjIwCisJY21wCXIxLCByMCwgbHNsICMyMQorCWJjYwkuTF9kaXZpZGVfYjIxCisJY21w
CXIxLCByMCwgbHNsICMyMgorCWJjYwkuTF9kaXZpZGVfYjIyCisJY21wCXIxLCByMCwgbHNsICMy
MworCWJjYwkuTF9kaXZpZGVfYjIzCisJY21wCXIxLCByMCwgbHNsICMyNAorCWJjYwkuTF9kaXZp
ZGVfYjI0CisJY21wCXIxLCByMCwgbHNsICMyNQorCWJjYwkuTF9kaXZpZGVfYjI1CisJY21wCXIx
LCByMCwgbHNsICMyNgorCWJjYwkuTF9kaXZpZGVfYjI2CisJY21wCXIxLCByMCwgbHNsICMyNwor
CWJjYwkuTF9kaXZpZGVfYjI3CisJY21wCXIxLCByMCwgbHNsICMyOAorCWJjYwkuTF9kaXZpZGVf
YjI4CisJY21wCXIxLCByMCwgbHNsICMyOQorCWJjYwkuTF9kaXZpZGVfYjI5CisJY21wCXIxLCBy
MCwgbHNsICMzMAorCWJjYwkuTF9kaXZpZGVfYjMwCisuTF9kaXZpZGVfYjMyOgorCWNtcAlyMSwg
cjAsIGxzbCAjMzEKKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMzEKKwlhZGRocwlyMywgcjMscjIs
IGxzbCAjMzEKKy5MX2RpdmlkZV9iMzE6CisJY21wCXIxLCByMCwgbHNsICMzMAorCXN1YmhzCXIx
LCByMSxyMCwgbHNsICMzMAorCWFkZGhzCXIzLCByMyxyMiwgbHNsICMzMAorLkxfZGl2aWRlX2Iz
MDoKKwljbXAJcjEsIHIwLCBsc2wgIzI5CisJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzI5CisJYWRk
aHMJcjMsIHIzLHIyLCBsc2wgIzI5CisuTF9kaXZpZGVfYjI5OgorCWNtcAlyMSwgcjAsIGxzbCAj
MjgKKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMjgKKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMjgK
Ky5MX2RpdmlkZV9iMjg6CisJY21wCXIxLCByMCwgbHNsICMyNworCXN1YmhzCXIxLCByMSxyMCwg
bHNsICMyNworCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyNworLkxfZGl2aWRlX2IyNzoKKwljbXAJ
cjEsIHIwLCBsc2wgIzI2CisJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzI2CisJYWRkaHMJcjMsIHIz
LHIyLCBsc2wgIzI2CisuTF9kaXZpZGVfYjI2OgorCWNtcAlyMSwgcjAsIGxzbCAjMjUKKwlzdWJo
cwlyMSwgcjEscjAsIGxzbCAjMjUKKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMjUKKy5MX2Rpdmlk
ZV9iMjU6CisJY21wCXIxLCByMCwgbHNsICMyNAorCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyNAor
CWFkZGhzCXIzLCByMyxyMiwgbHNsICMyNAorLkxfZGl2aWRlX2IyNDoKKwljbXAJcjEsIHIwLCBs
c2wgIzIzCisJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzIzCisJYWRkaHMJcjMsIHIzLHIyLCBsc2wg
IzIzCisuTF9kaXZpZGVfYjIzOgorCWNtcAlyMSwgcjAsIGxzbCAjMjIKKwlzdWJocwlyMSwgcjEs
cjAsIGxzbCAjMjIKKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMjIKKy5MX2RpdmlkZV9iMjI6CisJ
Y21wCXIxLCByMCwgbHNsICMyMQorCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyMQorCWFkZGhzCXIz
LCByMyxyMiwgbHNsICMyMQorLkxfZGl2aWRlX2IyMToKKwljbXAJcjEsIHIwLCBsc2wgIzIwCisJ
c3ViaHMJcjEsIHIxLHIwLCBsc2wgIzIwCisJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzIwCisuTF9k
aXZpZGVfYjIwOgorCWNtcAlyMSwgcjAsIGxzbCAjMTkKKwlzdWJocwlyMSwgcjEscjAsIGxzbCAj
MTkKKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMTkKKy5MX2RpdmlkZV9iMTk6CisJY21wCXIxLCBy
MCwgbHNsICMxOAorCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxOAorCWFkZGhzCXIzLCByMyxyMiwg
bHNsICMxOAorLkxfZGl2aWRlX2IxODoKKwljbXAJcjEsIHIwLCBsc2wgIzE3CisJc3ViaHMJcjEs
IHIxLHIwLCBsc2wgIzE3CisJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzE3CisuTF9kaXZpZGVfYjE3
OgorCWNtcAlyMSwgcjAsIGxzbCAjMTYKKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTYKKwlhZGRo
cwlyMywgcjMscjIsIGxzbCAjMTYKKy5MX2RpdmlkZV9iMTY6CisJY21wCXIxLCByMCwgbHNsICMx
NQorCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxNQorCWFkZGhzCXIzLCByMyxyMiwgbHNsICMxNQor
LkxfZGl2aWRlX2IxNToKKwljbXAJcjEsIHIwLCBsc2wgIzE0CisJc3ViaHMJcjEsIHIxLHIwLCBs
c2wgIzE0CisJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzE0CisuTF9kaXZpZGVfYjE0OgorCWNtcAly
MSwgcjAsIGxzbCAjMTMKKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTMKKwlhZGRocwlyMywgcjMs
cjIsIGxzbCAjMTMKKy5MX2RpdmlkZV9iMTM6CisJY21wCXIxLCByMCwgbHNsICMxMgorCXN1Ymhz
CXIxLCByMSxyMCwgbHNsICMxMgorCWFkZGhzCXIzLCByMyxyMiwgbHNsICMxMgorLkxfZGl2aWRl
X2IxMjoKKwljbXAJcjEsIHIwLCBsc2wgIzExCisJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzExCisJ
YWRkaHMJcjMsIHIzLHIyLCBsc2wgIzExCisuTF9kaXZpZGVfYjExOgorCWNtcAlyMSwgcjAsIGxz
bCAjMTAKKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTAKKwlhZGRocwlyMywgcjMscjIsIGxzbCAj
MTAKKy5MX2RpdmlkZV9iMTA6CisJY21wCXIxLCByMCwgbHNsICM5CisJc3ViaHMJcjEsIHIxLHIw
LCBsc2wgIzkKKwlhZGRocwlyMywgcjMscjIsIGxzbCAjOQorLkxfZGl2aWRlX2I5OgorCWNtcAly
MSwgcjAsIGxzbCAjOAorCXN1YmhzCXIxLCByMSxyMCwgbHNsICM4CisJYWRkaHMJcjMsIHIzLHIy
LCBsc2wgIzgKKy5MX2RpdmlkZV9iODoKKwljbXAJcjEsIHIwLCBsc2wgIzcKKwlzdWJocwlyMSwg
cjEscjAsIGxzbCAjNworCWFkZGhzCXIzLCByMyxyMiwgbHNsICM3CisuTF9kaXZpZGVfYjc6CisJ
Y21wCXIxLCByMCwgbHNsICM2CisJc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzYKKwlhZGRocwlyMywg
cjMscjIsIGxzbCAjNgorLkxfZGl2aWRlX2I2OgorCWNtcAlyMSwgcjAsIGxzbCAjNQorCXN1Ymhz
CXIxLCByMSxyMCwgbHNsICM1CisJYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzUKKy5MX2RpdmlkZV9i
NToKKwljbXAJcjEsIHIwLCBsc2wgIzQKKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjNAorCWFkZGhz
CXIzLCByMyxyMiwgbHNsICM0CisuTF9kaXZpZGVfYjQ6CisJY21wCXIxLCByMCwgbHNsICMzCisJ
c3ViaHMJcjEsIHIxLHIwLCBsc2wgIzMKKwlhZGRocwlyMywgcjMscjIsIGxzbCAjMworLkxfZGl2
aWRlX2IzOgorCWNtcAlyMSwgcjAsIGxzbCAjMgorCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyCisJ
YWRkaHMJcjMsIHIzLHIyLCBsc2wgIzIKKy5MX2RpdmlkZV9iMjoKKwljbXAJcjEsIHIwLCBsc2wg
IzEKKwlzdWJocwlyMSwgcjEscjAsIGxzbCAjMQorCWFkZGhzCXIzLCByMyxyMiwgbHNsICMxCisu
TF9kaXZpZGVfYjE6CisJY21wCXIxLCByMAorCXN1YmhzCXIxLCByMSwgcjAKKwlhZGRocwlyMywg
cjMsIHIyCisuTF9kaXZpZGVfYjA6CisKKwl0c3QJaXAsICMweDIwMDAwMDAwCisJYm5lCS5MX3Vk
aXZpZGVfbDEKKwltb3YJcjAsIHIzCisJY21wCWlwLCAjMAorCXJzYm1pCXIxLCByMSwgIzAKKwlt
b3ZzCWlwLCBpcCwgbHNsICMxCisJYmljbWkJcjAsIHIwLCAjMHg4MDAwMDAwMAkvKiBGaXggaW5j
YXNlIHdlIGRpdmlkZWQgMHg4MDAwMDAwMCAqLworCXJzYm1pCXIwLCByMCwgIzAKKwltb3YJcGMs
IGxyCisKKy5MX3VkaXZpZGVfbDE6CisJdHN0CWlwLCAjMHgxMDAwMDAwMAorCW1vdglyMSwgcjEs
IGxzbCAjMQorCW9ycm5lCXIxLCByMSwgIzEKKwltb3YJcjMsIHIzLCBsc2wgIzEKKwljbXAJcjEs
IHIwCisJc3ViaHMJcjEsIHIxLCByMAorCWFkZGhzCXIzLCByMywgcjIKKwltb3YJcjAsIHIzCisJ
bW92CXBjLCBscgorRU5EKF9fYWVhYmlfaWRpdikKK0VORChfX2FlYWJpX2lkaXZtb2QpCitFTkQo
X19kaXZzaTMpCmRpZmYgLS1naXQgYS9hcmNoL2FybS9hcm0vbGRpdm1vZC5TIGIvYXJjaC9hcm0v
YXJtL2xkaXZtb2QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xODAyMjdj
Ci0tLSAvZGV2L251bGwKKysrIGIvYXJjaC9hcm0vYXJtL2xkaXZtb2QuUwpAQCAtMCwwICsxLDY4
IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovCisvKgorICog
Q29weXJpZ2h0IChDKSAyMDEyIEFuZHJldyBUdXJuZXIKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9S
IEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
QVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisg
KiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAor
ICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisg
KgorICovCisKKyNkZWZpbmUgRU5UUllfTlAoc3ltYm9sKSBcCisJLmdsb2JsIHN5bWJvbDsJXAor
CXN5bWJvbDoKKworI2RlZmluZSBFTkQoc3ltYm9sKQorCisvKgorICogVGhlc2UgY2FsY3VsYXRl
OgorICogcSA9IG4gLyBtCisgKiBXaXRoIGEgcmVtYWluZXIgci4KKyAqCisgKiBUaGV5IHRha2Ug
biBpbiB7cjAsIHIxfSBhbmQgbSBpbiB7cjIsIHIzfSB0aGVuIHBhc3MgdGhlbSBpbnRvIHRoZQor
ICogaGVscGVyIGZ1bmN0aW9uLiBUaGUgaGVwbGVyIGZ1bmN0aW9ucyByZXR1cm4gcSBpbiB7cjAs
IHIxfSBhcworICogcmVxdWlyZWQgYnkgdGhlIEFQSSBzcGVjIGhvd2V2ZXIgciBpcyByZXR1cm5l
ZCBvbiB0aGUgc3RhY2suIFRoZQorICogQUJJIHJlcXVpcmVkIHVzIHRvIHJldHVybiByIGluIHty
MiwgcjN9LgorICoKKyAqIFdlIG5lZWQgdG8gYWxsb2NhdGUgOCBieXRlcyBvbiB0aGUgc3RhY2sg
dG8gc3RvcmUgciwgdGhlIGxpbmsKKyAqIHJlZ2lzdGVyLCBhbmQgYSBwb2ludGVyIHRvIHRoZSBz
cGFjZSB3aGVyZSB0aGUgaGVscGVyIGZ1bmN0aW9uCisgKiB3aWxsIHdyaXRlIHIgdG8uIEFmdGVy
IHJldHVybmluZyBmcm9tIHRoZSBoZWxwZXIgZnVpbmN0aW9uIHdlIGxvYWQKKyAqIHRoZSBvbGQg
bGluayByZWdpc3RlciBhbmQgciBmcm9tIHRoZSBzdGFjayBhbmQgcmV0dXJuLgorICovCitFTlRS
WV9OUChfX2FlYWJpX2xkaXZtb2QpCisJc3ViCXNwLCBzcCwgIzgJLyogU3BhY2UgZm9yIHRoZSBy
ZW1haW5kZXIgKi8KKwlzdG1mZAlzcCEsIHtzcCwgbHJ9CS8qIFNhdmUgYSBwb2ludGVyIHRvIHRo
ZSBhYm92ZSBzcGFjZSBhbmQgbHIgKi8KKwlibAlfX2tlcm5fbGRpdm1vZAorCWxkcglsciwgW3Nw
LCAjNF0JLyogUmVzdG9yZSBsciAqLworCWFkZAlzcCwgc3AsICM4CS8qIE1vdmUgc3AgdG8gdGhl
IHJlbWFpbmRlciB2YWx1ZSAqLworCWxkbWZkCXNwISwge3IyLCByM30JLyogTG9hZCB0aGUgcmVt
YWluZGVyICovCisJbW92CXBjLCBscgorRU5EKF9fYWVhYmlfbGRpdm1vZCkKKworRU5UUllfTlAo
X19hZWFiaV91bGRpdm1vZCkKKwlzdWIJc3AsIHNwLCAjOAkvKiBTcGFjZSBmb3IgdGhlIHJlbWFp
bmRlciAqLworCXN0bWZkCXNwISwge3NwLCBscn0JLyogU2F2ZSBhIHBvaW50ZXIgdG8gdGhlIGFi
b3ZlIHNwYWNlIGFuZCBsciAqLworCWJsCV9fcWRpdnJlbQorCWxkcglsciwgW3NwLCAjNF0JLyog
UmVzdG9yZSBsciAqLworCWFkZAlzcCwgc3AsICM4CS8qIE1vdmUgc3AgdG8gdGhlIHJlbWFpbmRl
ciB2YWx1ZSAqLworCWxkbWZkCXNwISwge3IyLCByM30JLyogTG9hZCB0aGUgcmVtYWluZGVyICov
CisJbW92CXBjLCBscgorRU5EKF9fYWVhYmlfdWxkaXZtb2QpCmRpZmYgLS1naXQgYS9hcmNoL2Fy
bS9hcm0vbGRpdm1vZF9oZWxwZXIuYyBiL2FyY2gvYXJtL2FybS9sZGl2bW9kX2hlbHBlci5jCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5ODUyM2UKLS0tIC9kZXYvbnVsbAor
KysgYi9hcmNoL2FybS9hcm0vbGRpdm1vZF9oZWxwZXIuYwpAQCAtMCwwICsxLDY3IEBACisvKiBT
UERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovCisvKgorICogQ29weXJpZ2h0
IChDKSAyMDEyIEFuZHJldyBUdXJuZXIKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKgorICovCisK
KyNpbmNsdWRlIDx1ay9hcmNoL3R5cGVzLmg+CisKK19fdTY0IF9fcWRpdnJlbShfX3U2NCB1LCBf
X3U2NCB2LCBfX3U2NCAqcmVtKTsKKworI2lmbmRlZiBIQVZFX0xJQkMKK19fczY0IF9fZGl2ZGkz
KF9fczY0IGEsIF9fczY0IGIpCit7CisJX191NjQgdWEsIHViLCB1cTsKKwlpbnQgbmVnOworCisJ
aWYgKGEgPCAwKQorCQl1YSA9IC0oX191NjQpYSwgbmVnID0gMTsKKwllbHNlCisJCXVhID0gYSwg
bmVnID0gMDsKKwlpZiAoYiA8IDApCisJCXViID0gLShfX3U2NCliLCBuZWcgXj0gMTsKKwllbHNl
CisJCXViID0gYjsKKwl1cSA9IF9fcWRpdnJlbSh1YSwgdWIsIChfX3U2NCAqKTApOworCXJldHVy
biBuZWcgPyAtdXEgOiB1cTsKK30KKyNlbmRpZgorCisvKgorICogSGVscGVyIGZvciBfX2FlYWJp
X2xkaXZtb2QuCisgKiBUT0RPOiBfX2RpdmRpMyBjYWxscyBfX3FkaXZyZW0uIFdlIHNob3VsZCBk
byB0aGUgc2FtZSBhbmQgdXNlIHRoZQorICogcmVtYWluZGVyIHZhbHVlIHJhdGhlciB0aGFuIHJl
LWNhbGN1bGF0aW5nIGl0LgorICovCitsb25nIGxvbmcgX19rZXJuX2xkaXZtb2QobG9uZyBsb25n
LCBsb25nIGxvbmcsIGxvbmcgbG9uZyAqKTsKKworbG9uZyBsb25nIF9fa2Vybl9sZGl2bW9kKGxv
bmcgbG9uZyBuLCBsb25nIGxvbmcgbSwgbG9uZyBsb25nICpyZW0pCit7CisJbG9uZyBsb25nIHE7
CisKKwlxID0gX19kaXZkaTMobiwgbSk7IC8qIHEgPSBuIC8gbSAqLworCSpyZW0gPSBuIC0gbSAq
IHE7CisKKwlyZXR1cm4gcTsKK30KZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybS9xZGl2cmVtLmMg
Yi9hcmNoL2FybS9hcm0vcWRpdnJlbS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLmU3ZDE0NzEKLS0tIC9kZXYvbnVsbAorKysgYi9hcmNoL2FybS9hcm0vcWRpdnJlbS5jCkBA
IC0wLDAgKzEsMzI0IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNl
ICovCisvKi0KKyAqIENvcHlyaWdodCAoYykgMTk5MiwgMTk5MworICoJVGhlIFJlZ2VudHMgb2Yg
dGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogVGhpcyBzb2Z0d2FyZSB3YXMgZGV2ZWxvcGVkIGJ5IHRoZSBDb21wdXRlciBTeXN0ZW1zIEVu
Z2luZWVyaW5nIGdyb3VwCisgKiBhdCBMYXdyZW5jZSBCZXJrZWxleSBMYWJvcmF0b3J5IHVuZGVy
IERBUlBBIGNvbnRyYWN0IEJHIDkxLTY2IGFuZAorICogY29udHJpYnV0ZWQgdG8gQmVya2VsZXku
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKiA0LiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0
aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJ
UycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJ
U0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAq
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDx1ay9hcmNo
L3R5cGVzLmg+CisjaW5jbHVkZSA8dWsvYXJjaC9saW1pdHMuaD4KKworLyoKKyAqIE11bHRpcHJl
Y2lzaW9uIGRpdmlkZS4gIFRoaXMgYWxnb3JpdGhtIGlzIGZyb20gS251dGggdm9sLiAyICgybmQg
ZWQpLAorICogc2VjdGlvbiA0LjMuMSwgcHAuIDI1Ny0tMjU5LgorICovCisKKy8qCisgKiBGcm9t
CisgKglAKCMpcXVhZC5oCTguMSAoQmVya2VsZXkpIDYvNC85MworICovCisKKyNpZmRlZiBfX0JJ
R19FTkRJQU4KKyNkZWZpbmUgX1FVQURfSElHSFdPUkQgMAorI2RlZmluZSBfUVVBRF9MT1dXT1JE
IDEKKyNlbHNlIC8qIF9fTElUVExFX0VORElBTiAqLworI2RlZmluZSBfUVVBRF9ISUdIV09SRCAx
CisjZGVmaW5lIF9RVUFEX0xPV1dPUkQgMAorI2VuZGlmCisKKy8qCisgKiBEZWZpbmUgaGlnaCBh
bmQgbG93IGxvbmd3b3Jkcy4KKyAqLworI2RlZmluZSBRVUFESCAgICAgICAgICAgICAgIF9RVUFE
X0hJR0hXT1JECisjZGVmaW5lIFFVQURMICAgICAgICAgICAgICAgX1FVQURfTE9XV09SRAorCisv
KgorICogVG90YWwgbnVtYmVyIG9mIGJpdHMgaW4gYSBxdWFkX3QgYW5kIGluIHRoZSBwaWVjZXMg
dGhhdCBtYWtlIGl0IHVwLgorICogVGhlc2UgYXJlIHVzZWQgZm9yIHNoaWZ0aW5nLCBhbmQgYWxz
byBiZWxvdyBmb3IgaGFsZndvcmQgZXh0cmFjdGlvbgorICogYW5kIGFzc2VtYmx5LgorICovCisj
ZGVmaW5lIENIQVJfQklUICAgICAgICA4ICAgICAgICAgICAgICAgLyogbnVtYmVyIG9mIGJpdHMg
aW4gYSBjaGFyICovCisjZGVmaW5lIFFVQURfQklUUyAgICAgICAoc2l6ZW9mKF9fczY0KSAqIENI
QVJfQklUKQorI2RlZmluZSBMT05HX0JJVFMgICAgICAgKHNpemVvZihsb25nKSAqIENIQVJfQklU
KQorI2RlZmluZSBIQUxGX0JJVFMgICAgICAgKHNpemVvZihsb25nKSAqIENIQVJfQklUIC8gMikK
KworI2RlZmluZSBESUdJVF9CQVNFICgxIDw8IEhBTEZfQklUUykgLyogZGlnaXQgYmFzZSAqLwor
LyoKKyAqIEV4dHJhY3QgaGlnaCBhbmQgbG93IHNob3J0d29yZHMgZnJvbSBsb25nd29yZCwgYW5k
IG1vdmUgbG93IHNob3J0d29yZCBvZgorICogbG9uZ3dvcmQgdG8gdXBwZXIgaGFsZiBvZiBsb25n
LCBpLmUuLCBwcm9kdWNlIHRoZSB1cHBlciBsb25nd29yZCBvZgorICogKChxdWFkX3QpKHgpIDw8
IChudW1iZXJfb2ZfYml0c19pbl9sb25nLzIpKS4gIChgeCcgbXVzdCBhY3R1YWxseSBiZSB1X2xv
bmcuKQorICoKKyAqIFRoZXNlIGFyZSB1c2VkIGluIHRoZSBtdWx0aXBseSBjb2RlLCB0byBzcGxp
dCBhIGxvbmd3b3JkIGludG8gdXBwZXIKKyAqIGFuZCBsb3dlciBoYWx2ZXMsIGFuZCB0byByZWFz
c2VtYmxlIGEgcHJvZHVjdCBhcyBhIHF1YWRfdCwgc2hpZnRlZCBsZWZ0CisgKiAoc2l6ZW9mKGxv
bmcpKkNIQVJfQklULzIpLgorICovCisjZGVmaW5lIEhIQUxGKHgpICAgICAgICAoKHgpID4+IEhB
TEZfQklUUykKKyNkZWZpbmUgTEhBTEYoeCkgICAgICAgICgoeCkgJiAoKDEgPDwgSEFMRl9CSVRT
KSAtIDEpKQorI2RlZmluZSBMSFVQKHgpICAgICAgICAgKCh4KSA8PCBIQUxGX0JJVFMpCisKKyNk
ZWZpbmUgQ09NQklORShhLCBiKSAoKCh1bnNpZ25lZCBsb25nKShhKSA8PCBIQUxGX0JJVFMpIHwg
KGIpKQorCisvKgorICogRGVwZW5kaW5nIG9uIHRoZSBkZXNpcmVkIG9wZXJhdGlvbiwgd2Ugdmll
dyBhIGBsb25nIGxvbmcnIChha2EgcXVhZF90KSBpbgorICogb25lIG9yIG1vcmUgb2YgdGhlIGZv
bGxvd2luZyBmb3JtYXRzLgorICovCit1bmlvbiB1dSB7CisJX19zNjQgICAgICAgICAgIHE7ICAg
ICAgICAgICAgIC8qIGFzIGEgKHNpZ25lZCkgcXVhZCAqLworCV9fczY0ICAgICAgICAgIHVxOyAg
ICAgICAgICAgICAvKiBhcyBhbiB1bnNpZ25lZCBxdWFkICovCisJbG9uZyAgICAgICAgICAgc2xb
Ml07ICAgICAgICAgIC8qIGFzIHR3byBzaWduZWQgbG9uZ3MgKi8KKwl1bnNpZ25lZCBsb25nICB1
bFsyXTsgICAgICAgICAgLyogYXMgdHdvIHVuc2lnbmVkIGxvbmdzICovCit9OworCisjZGVmaW5l
CUIJKDEgPDwgSEFMRl9CSVRTKQkvKiBkaWdpdCBiYXNlICovCisKKy8qIHNlbGVjdCBhIHR5cGUg
Zm9yIGRpZ2l0cyBpbiBiYXNlIEI6IHVzZSB1bnNpZ25lZCBzaG9ydCBpZiB0aGV5IGZpdCAqLwor
I2lmIF9fVUxfTUFYID09IDB4ZmZmZmZmZmYgJiYgX19VU19NQVggPj0gMHhmZmZmCit0eXBlZGVm
IHVuc2lnbmVkIHNob3J0IGRpZ2l0OworI2Vsc2UKK3R5cGVkZWYgdW5zaWduZWQgbG9uZyBkaWdp
dDsKKyNlbmRpZgorCisvKgorICogU2hpZnQgcFswXS4ucFtsZW5dIGxlZnQgYHNoJyBiaXRzLCBp
Z25vcmluZyBhbnkgYml0cyB0aGF0CisgKiBgZmFsbCBvdXQnIHRoZSBsZWZ0ICh0aGVyZSBuZXZl
ciB3aWxsIGJlIGFueSBzdWNoIGFueXdheSkuCisgKiBXZSBtYXkgYXNzdW1lIGxlbiA+PSAwLiAg
Tk9URSBUSEFUIFRISVMgV1JJVEVTIGxlbisxIERJR0lUUy4KKyAqLworc3RhdGljIHZvaWQgX19z
aGwocmVnaXN0ZXIgZGlnaXQgKnAsIHJlZ2lzdGVyIGludCBsZW4sIHJlZ2lzdGVyIGludCBzaCkK
K3sKKwlyZWdpc3RlciBpbnQgaTsKKworCWZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykKKwkJcFtp
XSA9IExIQUxGKHBbaV0gPDwgc2gpIHwgKHBbaSArIDFdID4+IChIQUxGX0JJVFMgLSBzaCkpOwor
CXBbaV0gPSBMSEFMRihwW2ldIDw8IHNoKTsKK30KKworLyoKKyAqIF9fcWRpdnJlbSh1LCB2LCBy
ZW0pIHJldHVybnMgdS92IGFuZCwgb3B0aW9uYWxseSwgc2V0cyAqcmVtIHRvIHUldi4KKyAqCisg
KiBXZSBkbyB0aGlzIGluIGJhc2UgMi1zdXAtSEFMRl9CSVRTLCBzbyB0aGF0IGFsbCBpbnRlcm1l
ZGlhdGUgcHJvZHVjdHMKKyAqIGZpdCB3aXRoaW4gdV9sb25nLiAgQXMgYSBjb25zZXF1ZW5jZSwg
dGhlIG1heGltdW0gbGVuZ3RoIGRpdmlkZW5kIGFuZAorICogZGl2aXNvciBhcmUgNCBgZGlnaXRz
JyBpbiB0aGlzIGJhc2UgKHRoZXkgYXJlIHNob3J0ZXIgaWYgdGhleSBoYXZlCisgKiBsZWFkaW5n
IHplcm9zKS4KKyAqLworX191NjQgX19xZGl2cmVtKF9fdTY0IHVxLCBfX3U2NCB2cSwgX191NjQg
KmFycSkKK3sKKwl1bmlvbiB1dSB0bXA7CisJZGlnaXQgKnUsICp2LCAqcTsKKwlyZWdpc3RlciBk
aWdpdCB2MSwgdjI7CisJdW5zaWduZWQgbG9uZyBxaGF0LCByaGF0LCB0OworCWludCBtLCBuLCBk
LCBqLCBpOworCWRpZ2l0IHVzcGFjZVs1XSwgdnNwYWNlWzVdLCBxc3BhY2VbNV07CisKKwkvKgor
CSAqIFRha2UgY2FyZSBvZiBzcGVjaWFsIGNhc2VzOiBkaXZpZGUgYnkgemVybywgYW5kIHUgPCB2
LgorCSAqLworCWlmICh2cSA9PSAwKSB7CisJCS8qIGRpdmlkZSBieSB6ZXJvLiAqLworCQlzdGF0
aWMgdm9sYXRpbGUgY29uc3QgdW5zaWduZWQgaW50IHplcm8gPSAwOworCisJCXRtcC51bFtRVUFE
SF0gPSB0bXAudWxbUVVBRExdID0gMSAvIHplcm87CisJCWlmIChhcnEpCisJCQkqYXJxID0gdXE7
CisJCXJldHVybiB0bXAucTsKKwl9CisJaWYgKHVxIDwgdnEpIHsKKwkJaWYgKGFycSkKKwkJCSph
cnEgPSB1cTsKKwkJcmV0dXJuIDA7CisJfQorCXUgPSAmdXNwYWNlWzBdOworCXYgPSAmdnNwYWNl
WzBdOworCXEgPSAmcXNwYWNlWzBdOworCisJLyoKKwkgKiBCcmVhayBkaXZpZGVuZCBhbmQgZGl2
aXNvciBpbnRvIGRpZ2l0cyBpbiBiYXNlIEIsIHRoZW4KKwkgKiBjb3VudCBsZWFkaW5nIHplcm9z
IHRvIGRldGVybWluZSBtIGFuZCBuLiAgV2hlbiBkb25lLCB3ZQorCSAqIHdpbGwgaGF2ZToKKwkg
Kgl1ID0gKHVbMV11WzJdLi4udVttK25dKSBzdWIgQgorCSAqCXYgPSAodlsxXXZbMl0uLi52W25d
KSBzdWIgQgorCSAqCXZbMV0gIT0gMAorCSAqCTEgPCBuIDw9IDQgKGlmIG4gPSAxLCB3ZSB1c2Ug
YSBkaWZmZXJlbnQgZGl2aXNpb24gYWxnb3JpdGhtKQorCSAqCW0gPj0gMCAob3RoZXJ3aXNlIHUg
PCB2LCB3aGljaCB3ZSBhbHJlYWR5IGNoZWNrZWQpCisJICoJbSArIG4gPSA0CisJICogYW5kIHRo
dXMKKwkgKgltID0gNCAtIG4gPD0gMgorCSAqLworCXRtcC51cSA9IHVxOworCXVbMF0gPSAwOwor
CXVbMV0gPSBISEFMRih0bXAudWxbUVVBREhdKTsKKwl1WzJdID0gTEhBTEYodG1wLnVsW1FVQURI
XSk7CisJdVszXSA9IEhIQUxGKHRtcC51bFtRVUFETF0pOworCXVbNF0gPSBMSEFMRih0bXAudWxb
UVVBRExdKTsKKwl0bXAudXEgPSB2cTsKKwl2WzFdID0gSEhBTEYodG1wLnVsW1FVQURIXSk7CisJ
dlsyXSA9IExIQUxGKHRtcC51bFtRVUFESF0pOworCXZbM10gPSBISEFMRih0bXAudWxbUVVBRExd
KTsKKwl2WzRdID0gTEhBTEYodG1wLnVsW1FVQURMXSk7CisJZm9yIChuID0gNDsgdlsxXSA9PSAw
OyB2KyspIHsKKwkJaWYgKC0tbiA9PSAxKSB7CisJCQl1bnNpZ25lZCBsb25nIHJiajsgLyogcipC
K3Vbal0gKG5vdCByb290IGJveSBqaW0pICovCisJCQlkaWdpdCBxMSwgcTIsIHEzLCBxNDsKKwor
CQkJLyoKKwkJCSAqIENoYW5nZSBvZiBwbGFuLCBwZXIgZXhlcmNpc2UgMTYuCisJCQkgKglyID0g
MDsKKwkJCSAqCWZvciBqID0gMS4uNDoKKwkJCSAqCQlxW2pdID0gZmxvb3IoKHIqQiArIHVbal0p
IC8gdiksCisJCQkgKgkJciA9IChyKkIgKyB1W2pdKSAlIHY7CisJCQkgKiBXZSB1bnJvbGwgdGhp
cyBjb21wbGV0ZWx5IGhlcmUuCisJCQkgKi8KKwkJCXQgPSB2WzJdOwkvKiBub256ZXJvLCBieSBk
ZWZpbml0aW9uICovCisJCQlxMSA9IHVbMV0gLyB0OworCQkJcmJqID0gQ09NQklORSh1WzFdICUg
dCwgdVsyXSk7CisJCQlxMiA9IHJiaiAvIHQ7CisJCQlyYmogPSBDT01CSU5FKHJiaiAlIHQsIHVb
M10pOworCQkJcTMgPSByYmogLyB0OworCQkJcmJqID0gQ09NQklORShyYmogJSB0LCB1WzRdKTsK
KwkJCXE0ID0gcmJqIC8gdDsKKwkJCWlmIChhcnEpCisJCQkJKmFycSA9IHJiaiAlIHQ7CisJCQl0
bXAudWxbUVVBREhdID0gQ09NQklORShxMSwgcTIpOworCQkJdG1wLnVsW1FVQURMXSA9IENPTUJJ
TkUocTMsIHE0KTsKKwkJCXJldHVybiB0bXAucTsKKwkJfQorCX0KKworCS8qCisJICogQnkgYWRq
dXN0aW5nIHEgb25jZSB3ZSBkZXRlcm1pbmUgbSwgd2UgY2FuIGd1YXJhbnRlZSB0aGF0CisJICog
dGhlcmUgaXMgYSBjb21wbGV0ZSBmb3VyLWRpZ2l0IHF1b3RpZW50IGF0ICZxc3BhY2VbMV0gd2hl
bgorCSAqIHdlIGZpbmFsbHkgc3RvcC4KKwkgKi8KKwlmb3IgKG0gPSA0IC0gbjsgdVsxXSA9PSAw
OyB1KyspCisJCW0tLTsKKwlmb3IgKGkgPSA0IC0gbTsgLS1pID49IDA7KQorCQlxW2ldID0gMDsK
KwlxICs9IDQgLSBtOworCisJLyoKKwkgKiBIZXJlIHdlIHJ1biBQcm9ncmFtIEQsIHRyYW5zbGF0
ZWQgZnJvbSBNSVggdG8gQyBhbmQgYWNxdWlyaW5nCisJICogYSBmZXcgbWlub3IgY2hhbmdlcy4K
KwkgKgorCSAqIEQxOiBjaG9vc2UgbXVsdGlwbGllciAxIDw8IGQgdG8gZW5zdXJlIHZbMV0gPj0g
Qi8yLgorCSAqLworCWQgPSAwOworCWZvciAodCA9IHZbMV07IHQgPCBCIC8gMjsgdCA8PD0gMSkK
KwkJZCsrOworCWlmIChkID4gMCkgeworCQlfX3NobCgmdVswXSwgbSArIG4sIGQpOwkJLyogdSA8
PD0gZCAqLworCQlfX3NobCgmdlsxXSwgbiAtIDEsIGQpOwkJLyogdiA8PD0gZCAqLworCX0KKwkv
KgorCSAqIEQyOiBqID0gMC4KKwkgKi8KKwlqID0gMDsKKwl2MSA9IHZbMV07CS8qIGZvciBEMyAt
LSBub3RlIHRoYXQgdlsxLi5uXSBhcmUgY29uc3RhbnQgKi8KKwl2MiA9IHZbMl07CS8qIGZvciBE
MyAqLworCWRvIHsKKwkJcmVnaXN0ZXIgZGlnaXQgdWowLCB1ajEsIHVqMjsKKworCQkvKgorCQkg
KiBEMzogQ2FsY3VsYXRlIHFoYXQgKFxecSwgaW4gVGVYIG5vdGF0aW9uKS4KKwkJICogTGV0IHFo
YXQgPSBtaW4oKHVbal0qQiArIHVbaisxXSkvdlsxXSwgQi0xKSwgYW5kCisJCSAqIGxldCByaGF0
ID0gKHVbal0qQiArIHVbaisxXSkgbW9kIHZbMV0uCisJCSAqIFdoaWxlIHJoYXQgPCBCIGFuZCB2
WzJdKnFoYXQgPiByaGF0KkIrdVtqKzJdLAorCQkgKiBkZWNyZW1lbnQgcWhhdCBhbmQgaW5jcmVh
c2UgcmhhdCBjb3JyZXNwb25kaW5nbHkuCisJCSAqIE5vdGUgdGhhdCBpZiByaGF0ID49IEIsIHZb
Ml0qcWhhdCA8IHJoYXQqQi4KKwkJICovCisJCXVqMCA9IHVbaiArIDBdOwkvKiBmb3IgRDMgb25s
eSAtLSBub3RlIHRoYXQgdVtqKy4uLl0gY2hhbmdlICovCisJCXVqMSA9IHVbaiArIDFdOwkvKiBm
b3IgRDMgb25seSAqLworCQl1ajIgPSB1W2ogKyAyXTsJLyogZm9yIEQzIG9ubHkgKi8KKwkJaWYg
KHVqMCA9PSB2MSkgeworCQkJcWhhdCA9IEI7CisJCQlyaGF0ID0gdWoxOworCQkJZ290byBxaGF0
X3Rvb19iaWc7CisJCX0gZWxzZSB7CisJCQl1bnNpZ25lZCBsb25nIG5uID0gQ09NQklORSh1ajAs
IHVqMSk7CisKKwkJCXFoYXQgPSBubiAvIHYxOworCQkJcmhhdCA9IG5uICUgdjE7CisJCX0KKwkJ
d2hpbGUgKHYyICogcWhhdCA+IENPTUJJTkUocmhhdCwgdWoyKSkgeworcWhhdF90b29fYmlnOgor
CQkJcWhhdC0tOworCQkJaWYgKChyaGF0ICs9IHYxKSA+PSBCKQorCQkJCWJyZWFrOworCQl9CisJ
CS8qCisJCSAqIEQ0OiBNdWx0aXBseSBhbmQgc3VidHJhY3QuCisJCSAqIFRoZSB2YXJpYWJsZSBg
dCcgaG9sZHMgYW55IGJvcnJvd3MgYWNyb3NzIHRoZSBsb29wLgorCQkgKiBXZSBzcGxpdCB0aGlz
IHVwIHNvIHRoYXQgd2UgZG8gbm90IHJlcXVpcmUgdlswXSA9IDAsCisJCSAqIGFuZCB0byBlbGlt
aW5hdGUgYSBmaW5hbCBzcGVjaWFsIGNhc2UuCisJCSAqLworCQlmb3IgKHQgPSAwLCBpID0gbjsg
aSA+IDA7IGktLSkgeworCQkJdCA9IHVbaSArIGpdIC0gdltpXSAqIHFoYXQgLSB0OworCQkJdVtp
ICsgal0gPSBMSEFMRih0KTsKKwkJCXQgPSAoQiAtIEhIQUxGKHQpKSAmIChCIC0gMSk7CisJCX0K
KwkJdCA9IHVbal0gLSB0OworCQl1W2pdID0gTEhBTEYodCk7CisJCS8qCisJCSAqIEQ1OiB0ZXN0
IHJlbWFpbmRlci4KKwkJICogVGhlcmUgaXMgYSBib3Jyb3cgaWYgYW5kIG9ubHkgaWYgSEhBTEYo
dCkgaXMgbm9uemVybzsKKwkJICogaW4gdGhhdCAocmFyZSkgY2FzZSwgcWhhdCB3YXMgdG9vIGxh
cmdlIChieSBleGFjdGx5IDEpLgorCQkgKiBGaXggaXQgYnkgYWRkaW5nIHZbMS4ubl0gdG8gdVtq
Li5qK25dLgorCQkgKi8KKwkJaWYgKEhIQUxGKHQpKSB7CisJCQlxaGF0LS07CisJCQlmb3IgKHQg
PSAwLCBpID0gbjsgaSA+IDA7IGktLSkgeyAvKiBENjogYWRkIGJhY2suICovCisJCQkJdCArPSB1
W2kgKyBqXSArIHZbaV07CisJCQkJdVtpICsgal0gPSBMSEFMRih0KTsKKwkJCQl0ID0gSEhBTEYo
dCk7CisJCQl9CisJCQl1W2pdID0gTEhBTEYodVtqXSArIHQpOworCQl9CisJCXFbal0gPSBxaGF0
OworCX0gd2hpbGUgKCsraiA8PSBtKTsJCS8qIEQ3OiBsb29wIG9uIGouICovCisKKwkvKgorCSAq
IElmIGNhbGxlciB3YW50cyB0aGUgcmVtYWluZGVyLCB3ZSBoYXZlIHRvIGNhbGN1bGF0ZSBpdCBh
cworCSAqIHVbbS4ubStuXSA+PiBkICh0aGlzIGlzIGF0IG1vc3QgbiBkaWdpdHMgYW5kIHRodXMg
Zml0cyBpbgorCSAqIHVbbSsxLi5tK25dLCBidXQgd2UgbWF5IG5lZWQgbW9yZSBzb3VyY2UgZGln
aXRzKS4KKwkgKi8KKwlpZiAoYXJxKSB7CisJCWlmIChkKSB7CisJCQlmb3IgKGkgPSBtICsgbjsg
aSA+IG07IC0taSkKKwkJCQl1W2ldID0gKHVbaV0gPj4gZCkgfAorCQkJCSAgICBMSEFMRih1W2kg
LSAxXSA8PCAoSEFMRl9CSVRTIC0gZCkpOworCQkJdVtpXSA9IDA7CisJCX0KKwkJdG1wLnVsW1FV
QURIXSA9IENPTUJJTkUodXNwYWNlWzFdLCB1c3BhY2VbMl0pOworCQl0bXAudWxbUVVBRExdID0g
Q09NQklORSh1c3BhY2VbM10sIHVzcGFjZVs0XSk7CisJCSphcnEgPSB0bXAucTsKKwl9CisKKwl0
bXAudWxbUVVBREhdID0gQ09NQklORShxc3BhY2VbMV0sIHFzcGFjZVsyXSk7CisJdG1wLnVsW1FV
QURMXSA9IENPTUJJTkUocXNwYWNlWzNdLCBxc3BhY2VbNF0pOworCXJldHVybiB0bXAucTsKK30K
ZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2RpdnNpMy5TIGIvYXJjaC9hcm0vZGl2c2kzLlMKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZhOTIyMzMuLjAwMDAwMDAKLS0tIGEvYXJjaC9hcm0v
ZGl2c2kzLlMKKysrIC9kZXYvbnVsbApAQCAtMSw0MDQgKzAsMCBAQAotLyoJJE5ldEJTRDogZGl2
c2kzLlMsdiAxLjQgMjAwMy8wNC8wNSAyMzoyNzoxNSBiamgyMSBFeHAgJAkqLwotCi0vKi0KLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAq
IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklC
VVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMK
LSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNkZWZpbmUgRU5U
UllfTlAoc3ltYm9sKSBcCi0JLmdsb2JsIHN5bWJvbDsJXAotCXN5bWJvbDoKLQotI2RlZmluZSBF
TkQoc3ltYm9sKQotCi0vKiAKLSAqIHN0YWNrIGlzIGFsaWduZWQgYXMgdGhlcmUncyBhIHBvc3Np
YmlsaXR5IG9mIGJyYW5jaGluZyB0byBMX292ZXJmbG93Ci0gKiB3aGljaCBtYWtlcyBhIEMgY2Fs
bAotICovCi0KLUVOVFJZX05QKF9fdW1vZHNpMykKLQlzdG1mZAlzcCEsIHtscn0KLQlzdWIJc3As
IHNwLCAjNAkvKiBhbGlnbiBzdGFjayAqLwotCWJsCS5MX3VkaXZpZGUKLQlhZGQJc3AsIHNwLCAj
NAkvKiB1bmFsaWduIHN0YWNrICovCi0JbW92CXIwLCByMQotCWxkbWZkCXNwISwge3BjfQotRU5E
KF9fdW1vZHNpMykKLQotRU5UUllfTlAoX19tb2RzaTMpCi0Jc3RtZmQJc3AhLCB7bHJ9Ci0Jc3Vi
CXNwLCBzcCwgIzQJLyogYWxpZ24gc3RhY2sgKi8KLQlibAkuTF9kaXZpZGUKLQlhZGQJc3AsIHNw
LCAjNAkvKiB1bmFsaWduIHN0YWNrICovCi0JbW92CXIwLCByMQotCWxkbWZkCXNwISwge3BjfQot
Ci0uTF9vdmVyZmxvdzoKLQkvKiBYWFggc2hvdWxkIGNhdXNlIGEgZmF0YWwgZXJyb3IgKi8KLQlt
dm4JcjAsICMwCi0JbW92CXBjLCBscgotCi1FTkQoX19tb2RzaTMpCi0KLSNpZmRlZiBfX0FSTV9F
QUJJX18KLUVOVFJZX05QKF9fYWVhYmlfdWlkaXYpCi1FTlRSWV9OUChfX2FlYWJpX3VpZGl2bW9k
KQotI2VuZGlmCi1FTlRSWV9OUChfX3VkaXZzaTMpCi0uTF91ZGl2aWRlOgkJCQkvKiByMCA9IHIw
IC8gcjE7IHIxID0gcjAgJSByMSAqLwotCWVvciAgICAgcjAsIHIxLCByMCAKLQllb3IgICAgIHIx
LCByMCwgcjEgCi0JZW9yICAgICByMCwgcjEsIHIwIAotCQkJCQkvKiByMCA9IHIxIC8gcjA7IHIx
ID0gcjEgJSByMCAqLwotCWNtcAlyMCwgIzEKLQliY2MJLkxfb3ZlcmZsb3cKLQliZXEJLkxfZGl2
aWRlX2wwCi0JbW92CWlwLCAjMAotCW1vdnMJcjEsIHIxCi0JYnBsCS5MX2RpdmlkZV9sMQotCW9y
cglpcCwgaXAsICMweDIwMDAwMDAwCS8qIGlwIGJpdCAweDIwMDAwMDAwID0gLXZlIHIxICovCi0J
bW92cwlyMSwgcjEsIGxzciAjMQotCW9ycmNzCWlwLCBpcCwgIzB4MTAwMDAwMDAJLyogaXAgYml0
IDB4MTAwMDAwMDAgPSBiaXQgMCBvZiByMSAqLwotCWIJLkxfZGl2aWRlX2wxCi0KLS5MX2Rpdmlk
ZV9sMDoJCQkJLyogcjAgPT0gMSAqLwotCW1vdglyMCwgcjEKLQltb3YJcjEsICMwCi0JbW92CXBj
LCBscgotI2lmZGVmIF9fQVJNX0VBQklfXwotRU5EKF9fYWVhYmlfdWlkaXYpCi1FTkQoX19hZWFi
aV91aWRpdm1vZCkKLSNlbmRpZgotRU5EKF9fdWRpdnNpMykKLQotI2lmZGVmIF9fQVJNX0VBQklf
XwotRU5UUllfTlAoX19hZWFiaV9pZGl2KQotRU5UUllfTlAoX19hZWFiaV9pZGl2bW9kKQotI2Vu
ZGlmCi1FTlRSWV9OUChfX2RpdnNpMykKLS5MX2RpdmlkZToJCQkJLyogcjAgPSByMCAvIHIxOyBy
MSA9IHIwICUgcjEgKi8KLQllb3IgICAgIHIwLCByMSwgcjAgCi0JZW9yICAgICByMSwgcjAsIHIx
IAotCWVvciAgICAgcjAsIHIxLCByMCAKLQkJCQkJLyogcjAgPSByMSAvIHIwOyByMSA9IHIxICUg
cjAgKi8KLQljbXAJcjAsICMxCi0JYmNjCS5MX292ZXJmbG93Ci0JYmVxCS5MX2RpdmlkZV9sMAot
CWFuZHMJaXAsIHIwLCAjMHg4MDAwMDAwMAotCXJzYm1pCXIwLCByMCwgIzAKLQlhbmRzCXIyLCBy
MSwgIzB4ODAwMDAwMDAKLQllb3IJaXAsIGlwLCByMgotCXJzYm1pCXIxLCByMSwgIzAKLQlvcnIJ
aXAsIHIyLCBpcCwgbHNyICMxCS8qIGlwIGJpdCAweDQwMDAwMDAwID0gLXZlIGRpdmlzaW9uICov
Ci0JCQkJCS8qIGlwIGJpdCAweDgwMDAwMDAwID0gLXZlIHJlbWFpbmRlciAqLwotCi0uTF9kaXZp
ZGVfbDE6Ci0JbW92CXIyLCAjMQotCW1vdglyMywgIzAKLQotCS8qCi0JICogSWYgdGhlIGhpZ2hl
c3QgYml0IG9mIHRoZSBkaXZpZGVuZCBpcyBzZXQsIHdlIGhhdmUgdG8gYmUKLQkgKiBjYXJlZnVs
IHdoZW4gc2hpZnRpbmcgdGhlIGRpdmlzb3IuIFRlc3QgdGhpcy4gCi0JICovCi0JbW92cwlyMSxy
MQotCWJwbAkuTF9vbGRfY29kZQotCi0JLyoKLQkgKiBBdCB0aGlzIHBvaW50LCB0aGUgaGlnaGVz
dCBiaXQgb2YgcjEgaXMga25vd24gdG8gYmUgc2V0LgotCSAqIFdlIGFidXNlIHRoaXMgYmVsb3cg
aW4gdGhlIHRzdCBpbnN0cnVjdGlvbnMuCi0JICovCi0JdHN0CXIxLCByMCAvKiwgbHNsICMwICov
Ci0JYm1pCS5MX2RpdmlkZV9iMQotCXRzdAlyMSwgcjAsIGxzbCAjMQotCWJtaQkuTF9kaXZpZGVf
YjIKLQl0c3QJcjEsIHIwLCBsc2wgIzIKLQlibWkJLkxfZGl2aWRlX2IzCi0JdHN0CXIxLCByMCwg
bHNsICMzCi0JYm1pCS5MX2RpdmlkZV9iNAotCXRzdAlyMSwgcjAsIGxzbCAjNAotCWJtaQkuTF9k
aXZpZGVfYjUKLQl0c3QJcjEsIHIwLCBsc2wgIzUKLQlibWkJLkxfZGl2aWRlX2I2Ci0JdHN0CXIx
LCByMCwgbHNsICM2Ci0JYm1pCS5MX2RpdmlkZV9iNwotCXRzdAlyMSwgcjAsIGxzbCAjNwotCWJt
aQkuTF9kaXZpZGVfYjgKLQl0c3QJcjEsIHIwLCBsc2wgIzgKLQlibWkJLkxfZGl2aWRlX2I5Ci0J
dHN0CXIxLCByMCwgbHNsICM5Ci0JYm1pCS5MX2RpdmlkZV9iMTAKLQl0c3QJcjEsIHIwLCBsc2wg
IzEwCi0JYm1pCS5MX2RpdmlkZV9iMTEKLQl0c3QJcjEsIHIwLCBsc2wgIzExCi0JYm1pCS5MX2Rp
dmlkZV9iMTIKLQl0c3QJcjEsIHIwLCBsc2wgIzEyCi0JYm1pCS5MX2RpdmlkZV9iMTMKLQl0c3QJ
cjEsIHIwLCBsc2wgIzEzCi0JYm1pCS5MX2RpdmlkZV9iMTQKLQl0c3QJcjEsIHIwLCBsc2wgIzE0
Ci0JYm1pCS5MX2RpdmlkZV9iMTUKLQl0c3QJcjEsIHIwLCBsc2wgIzE1Ci0JYm1pCS5MX2Rpdmlk
ZV9iMTYKLQl0c3QJcjEsIHIwLCBsc2wgIzE2Ci0JYm1pCS5MX2RpdmlkZV9iMTcKLQl0c3QJcjEs
IHIwLCBsc2wgIzE3Ci0JYm1pCS5MX2RpdmlkZV9iMTgKLQl0c3QJcjEsIHIwLCBsc2wgIzE4Ci0J
Ym1pCS5MX2RpdmlkZV9iMTkKLQl0c3QJcjEsIHIwLCBsc2wgIzE5Ci0JYm1pCS5MX2RpdmlkZV9i
MjAKLQl0c3QJcjEsIHIwLCBsc2wgIzIwCi0JYm1pCS5MX2RpdmlkZV9iMjEKLQl0c3QJcjEsIHIw
LCBsc2wgIzIxCi0JYm1pCS5MX2RpdmlkZV9iMjIKLQl0c3QJcjEsIHIwLCBsc2wgIzIyCi0JYm1p
CS5MX2RpdmlkZV9iMjMKLQl0c3QJcjEsIHIwLCBsc2wgIzIzCi0JYm1pCS5MX2RpdmlkZV9iMjQK
LQl0c3QJcjEsIHIwLCBsc2wgIzI0Ci0JYm1pCS5MX2RpdmlkZV9iMjUKLQl0c3QJcjEsIHIwLCBs
c2wgIzI1Ci0JYm1pCS5MX2RpdmlkZV9iMjYKLQl0c3QJcjEsIHIwLCBsc2wgIzI2Ci0JYm1pCS5M
X2RpdmlkZV9iMjcKLQl0c3QJcjEsIHIwLCBsc2wgIzI3Ci0JYm1pCS5MX2RpdmlkZV9iMjgKLQl0
c3QJcjEsIHIwLCBsc2wgIzI4Ci0JYm1pCS5MX2RpdmlkZV9iMjkKLQl0c3QJcjEsIHIwLCBsc2wg
IzI5Ci0JYm1pCS5MX2RpdmlkZV9iMzAKLQl0c3QJcjEsIHIwLCBsc2wgIzMwCi0JYm1pCS5MX2Rp
dmlkZV9iMzEKLS8qCi0gKiBpbnN0ZWFkIG9mOgotICoJdHN0CXIxLCByMCwgbHNsICMzMQotICoJ
Ym1pCS5MX2RpdmlkZV9iMzIKLSAqLwotCWIJLkxfZGl2aWRlX2IzMgotCi0uTF9vbGRfY29kZToK
LQljbXAJcjEsIHIwCi0JYmNjCS5MX2RpdmlkZV9iMAotCWNtcAlyMSwgcjAsIGxzbCAjMQotCWJj
YwkuTF9kaXZpZGVfYjEKLQljbXAJcjEsIHIwLCBsc2wgIzIKLQliY2MJLkxfZGl2aWRlX2IyCi0J
Y21wCXIxLCByMCwgbHNsICMzCi0JYmNjCS5MX2RpdmlkZV9iMwotCWNtcAlyMSwgcjAsIGxzbCAj
NAotCWJjYwkuTF9kaXZpZGVfYjQKLQljbXAJcjEsIHIwLCBsc2wgIzUKLQliY2MJLkxfZGl2aWRl
X2I1Ci0JY21wCXIxLCByMCwgbHNsICM2Ci0JYmNjCS5MX2RpdmlkZV9iNgotCWNtcAlyMSwgcjAs
IGxzbCAjNwotCWJjYwkuTF9kaXZpZGVfYjcKLQljbXAJcjEsIHIwLCBsc2wgIzgKLQliY2MJLkxf
ZGl2aWRlX2I4Ci0JY21wCXIxLCByMCwgbHNsICM5Ci0JYmNjCS5MX2RpdmlkZV9iOQotCWNtcAly
MSwgcjAsIGxzbCAjMTAKLQliY2MJLkxfZGl2aWRlX2IxMAotCWNtcAlyMSwgcjAsIGxzbCAjMTEK
LQliY2MJLkxfZGl2aWRlX2IxMQotCWNtcAlyMSwgcjAsIGxzbCAjMTIKLQliY2MJLkxfZGl2aWRl
X2IxMgotCWNtcAlyMSwgcjAsIGxzbCAjMTMKLQliY2MJLkxfZGl2aWRlX2IxMwotCWNtcAlyMSwg
cjAsIGxzbCAjMTQKLQliY2MJLkxfZGl2aWRlX2IxNAotCWNtcAlyMSwgcjAsIGxzbCAjMTUKLQli
Y2MJLkxfZGl2aWRlX2IxNQotCWNtcAlyMSwgcjAsIGxzbCAjMTYKLQliY2MJLkxfZGl2aWRlX2Ix
NgotCWNtcAlyMSwgcjAsIGxzbCAjMTcKLQliY2MJLkxfZGl2aWRlX2IxNwotCWNtcAlyMSwgcjAs
IGxzbCAjMTgKLQliY2MJLkxfZGl2aWRlX2IxOAotCWNtcAlyMSwgcjAsIGxzbCAjMTkKLQliY2MJ
LkxfZGl2aWRlX2IxOQotCWNtcAlyMSwgcjAsIGxzbCAjMjAKLQliY2MJLkxfZGl2aWRlX2IyMAot
CWNtcAlyMSwgcjAsIGxzbCAjMjEKLQliY2MJLkxfZGl2aWRlX2IyMQotCWNtcAlyMSwgcjAsIGxz
bCAjMjIKLQliY2MJLkxfZGl2aWRlX2IyMgotCWNtcAlyMSwgcjAsIGxzbCAjMjMKLQliY2MJLkxf
ZGl2aWRlX2IyMwotCWNtcAlyMSwgcjAsIGxzbCAjMjQKLQliY2MJLkxfZGl2aWRlX2IyNAotCWNt
cAlyMSwgcjAsIGxzbCAjMjUKLQliY2MJLkxfZGl2aWRlX2IyNQotCWNtcAlyMSwgcjAsIGxzbCAj
MjYKLQliY2MJLkxfZGl2aWRlX2IyNgotCWNtcAlyMSwgcjAsIGxzbCAjMjcKLQliY2MJLkxfZGl2
aWRlX2IyNwotCWNtcAlyMSwgcjAsIGxzbCAjMjgKLQliY2MJLkxfZGl2aWRlX2IyOAotCWNtcAly
MSwgcjAsIGxzbCAjMjkKLQliY2MJLkxfZGl2aWRlX2IyOQotCWNtcAlyMSwgcjAsIGxzbCAjMzAK
LQliY2MJLkxfZGl2aWRlX2IzMAotLkxfZGl2aWRlX2IzMjoKLQljbXAJcjEsIHIwLCBsc2wgIzMx
Ci0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzMxCi0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzMxCi0u
TF9kaXZpZGVfYjMxOgotCWNtcAlyMSwgcjAsIGxzbCAjMzAKLQlzdWJocwlyMSwgcjEscjAsIGxz
bCAjMzAKLQlhZGRocwlyMywgcjMscjIsIGxzbCAjMzAKLS5MX2RpdmlkZV9iMzA6Ci0JY21wCXIx
LCByMCwgbHNsICMyOQotCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyOQotCWFkZGhzCXIzLCByMyxy
MiwgbHNsICMyOQotLkxfZGl2aWRlX2IyOToKLQljbXAJcjEsIHIwLCBsc2wgIzI4Ci0Jc3ViaHMJ
cjEsIHIxLHIwLCBsc2wgIzI4Ci0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzI4Ci0uTF9kaXZpZGVf
YjI4OgotCWNtcAlyMSwgcjAsIGxzbCAjMjcKLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMjcKLQlh
ZGRocwlyMywgcjMscjIsIGxzbCAjMjcKLS5MX2RpdmlkZV9iMjc6Ci0JY21wCXIxLCByMCwgbHNs
ICMyNgotCXN1YmhzCXIxLCByMSxyMCwgbHNsICMyNgotCWFkZGhzCXIzLCByMyxyMiwgbHNsICMy
NgotLkxfZGl2aWRlX2IyNjoKLQljbXAJcjEsIHIwLCBsc2wgIzI1Ci0Jc3ViaHMJcjEsIHIxLHIw
LCBsc2wgIzI1Ci0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzI1Ci0uTF9kaXZpZGVfYjI1OgotCWNt
cAlyMSwgcjAsIGxzbCAjMjQKLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMjQKLQlhZGRocwlyMywg
cjMscjIsIGxzbCAjMjQKLS5MX2RpdmlkZV9iMjQ6Ci0JY21wCXIxLCByMCwgbHNsICMyMwotCXN1
YmhzCXIxLCByMSxyMCwgbHNsICMyMwotCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyMwotLkxfZGl2
aWRlX2IyMzoKLQljbXAJcjEsIHIwLCBsc2wgIzIyCi0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzIy
Ci0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzIyCi0uTF9kaXZpZGVfYjIyOgotCWNtcAlyMSwgcjAs
IGxzbCAjMjEKLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMjEKLQlhZGRocwlyMywgcjMscjIsIGxz
bCAjMjEKLS5MX2RpdmlkZV9iMjE6Ci0JY21wCXIxLCByMCwgbHNsICMyMAotCXN1YmhzCXIxLCBy
MSxyMCwgbHNsICMyMAotCWFkZGhzCXIzLCByMyxyMiwgbHNsICMyMAotLkxfZGl2aWRlX2IyMDoK
LQljbXAJcjEsIHIwLCBsc2wgIzE5Ci0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzE5Ci0JYWRkaHMJ
cjMsIHIzLHIyLCBsc2wgIzE5Ci0uTF9kaXZpZGVfYjE5OgotCWNtcAlyMSwgcjAsIGxzbCAjMTgK
LQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMTgKLQlhZGRocwlyMywgcjMscjIsIGxzbCAjMTgKLS5M
X2RpdmlkZV9iMTg6Ci0JY21wCXIxLCByMCwgbHNsICMxNwotCXN1YmhzCXIxLCByMSxyMCwgbHNs
ICMxNwotCWFkZGhzCXIzLCByMyxyMiwgbHNsICMxNwotLkxfZGl2aWRlX2IxNzoKLQljbXAJcjEs
IHIwLCBsc2wgIzE2Ci0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzE2Ci0JYWRkaHMJcjMsIHIzLHIy
LCBsc2wgIzE2Ci0uTF9kaXZpZGVfYjE2OgotCWNtcAlyMSwgcjAsIGxzbCAjMTUKLQlzdWJocwly
MSwgcjEscjAsIGxzbCAjMTUKLQlhZGRocwlyMywgcjMscjIsIGxzbCAjMTUKLS5MX2RpdmlkZV9i
MTU6Ci0JY21wCXIxLCByMCwgbHNsICMxNAotCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxNAotCWFk
ZGhzCXIzLCByMyxyMiwgbHNsICMxNAotLkxfZGl2aWRlX2IxNDoKLQljbXAJcjEsIHIwLCBsc2wg
IzEzCi0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzEzCi0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzEz
Ci0uTF9kaXZpZGVfYjEzOgotCWNtcAlyMSwgcjAsIGxzbCAjMTIKLQlzdWJocwlyMSwgcjEscjAs
IGxzbCAjMTIKLQlhZGRocwlyMywgcjMscjIsIGxzbCAjMTIKLS5MX2RpdmlkZV9iMTI6Ci0JY21w
CXIxLCByMCwgbHNsICMxMQotCXN1YmhzCXIxLCByMSxyMCwgbHNsICMxMQotCWFkZGhzCXIzLCBy
MyxyMiwgbHNsICMxMQotLkxfZGl2aWRlX2IxMToKLQljbXAJcjEsIHIwLCBsc2wgIzEwCi0Jc3Vi
aHMJcjEsIHIxLHIwLCBsc2wgIzEwCi0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzEwCi0uTF9kaXZp
ZGVfYjEwOgotCWNtcAlyMSwgcjAsIGxzbCAjOQotCXN1YmhzCXIxLCByMSxyMCwgbHNsICM5Ci0J
YWRkaHMJcjMsIHIzLHIyLCBsc2wgIzkKLS5MX2RpdmlkZV9iOToKLQljbXAJcjEsIHIwLCBsc2wg
IzgKLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjOAotCWFkZGhzCXIzLCByMyxyMiwgbHNsICM4Ci0u
TF9kaXZpZGVfYjg6Ci0JY21wCXIxLCByMCwgbHNsICM3Ci0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wg
IzcKLQlhZGRocwlyMywgcjMscjIsIGxzbCAjNwotLkxfZGl2aWRlX2I3OgotCWNtcAlyMSwgcjAs
IGxzbCAjNgotCXN1YmhzCXIxLCByMSxyMCwgbHNsICM2Ci0JYWRkaHMJcjMsIHIzLHIyLCBsc2wg
IzYKLS5MX2RpdmlkZV9iNjoKLQljbXAJcjEsIHIwLCBsc2wgIzUKLQlzdWJocwlyMSwgcjEscjAs
IGxzbCAjNQotCWFkZGhzCXIzLCByMyxyMiwgbHNsICM1Ci0uTF9kaXZpZGVfYjU6Ci0JY21wCXIx
LCByMCwgbHNsICM0Ci0Jc3ViaHMJcjEsIHIxLHIwLCBsc2wgIzQKLQlhZGRocwlyMywgcjMscjIs
IGxzbCAjNAotLkxfZGl2aWRlX2I0OgotCWNtcAlyMSwgcjAsIGxzbCAjMwotCXN1YmhzCXIxLCBy
MSxyMCwgbHNsICMzCi0JYWRkaHMJcjMsIHIzLHIyLCBsc2wgIzMKLS5MX2RpdmlkZV9iMzoKLQlj
bXAJcjEsIHIwLCBsc2wgIzIKLQlzdWJocwlyMSwgcjEscjAsIGxzbCAjMgotCWFkZGhzCXIzLCBy
MyxyMiwgbHNsICMyCi0uTF9kaXZpZGVfYjI6Ci0JY21wCXIxLCByMCwgbHNsICMxCi0Jc3ViaHMJ
cjEsIHIxLHIwLCBsc2wgIzEKLQlhZGRocwlyMywgcjMscjIsIGxzbCAjMQotLkxfZGl2aWRlX2Ix
OgotCWNtcAlyMSwgcjAKLQlzdWJocwlyMSwgcjEsIHIwCi0JYWRkaHMJcjMsIHIzLCByMgotLkxf
ZGl2aWRlX2IwOgotCi0JdHN0CWlwLCAjMHgyMDAwMDAwMAotCWJuZQkuTF91ZGl2aWRlX2wxCi0J
bW92CXIwLCByMwotCWNtcAlpcCwgIzAKLQlyc2JtaQlyMSwgcjEsICMwCi0JbW92cwlpcCwgaXAs
IGxzbCAjMQotCWJpY21pCXIwLCByMCwgIzB4ODAwMDAwMDAJLyogRml4IGluY2FzZSB3ZSBkaXZp
ZGVkIDB4ODAwMDAwMDAgKi8KLQlyc2JtaQlyMCwgcjAsICMwCi0JbW92CXBjLCBscgotCi0uTF91
ZGl2aWRlX2wxOgotCXRzdAlpcCwgIzB4MTAwMDAwMDAKLQltb3YJcjEsIHIxLCBsc2wgIzEKLQlv
cnJuZQlyMSwgcjEsICMxCi0JbW92CXIzLCByMywgbHNsICMxCi0JY21wCXIxLCByMAotCXN1Ymhz
CXIxLCByMSwgcjAKLQlhZGRocwlyMywgcjMsIHIyCi0JbW92CXIwLCByMwotCW1vdglwYywgbHIK
LUVORChfX2FlYWJpX2lkaXYpCi1FTkQoX19hZWFiaV9pZGl2bW9kKQotRU5EKF9fZGl2c2kzKQot
CmRpZmYgLS1naXQgYS9hcmNoL2FybS9sZGl2bW9kLlMgYi9hcmNoL2FybS9sZGl2bW9kLlMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNjMzA4M2IuLjAwMDAwMDAKLS0tIGEvYXJjaC9h
cm0vbGRpdm1vZC5TCisrKyAvZGV2L251bGwKQEAgLTEsNjggKzAsMCBAQAotLyogU1BEWC1MaWNl
bnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLwotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
MiBBbmRyZXcgVHVybmVyCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAq
IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklC
VVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMK
LSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqLwotCi0jZGVmaW5l
IEVOVFJZX05QKHN5bWJvbCkgXAotCS5nbG9ibCBzeW1ib2w7CVwKLQlzeW1ib2w6Ci0KLSNkZWZp
bmUgRU5EKHN5bWJvbCkKLQotLyoKLSAqIFRoZXNlIGNhbGN1bGF0ZToKLSAqIHEgPSBuIC8gbSAK
LSAqIFdpdGggYSByZW1haW5lciByLgotICoKLSAqIFRoZXkgdGFrZSBuIGluIHtyMCwgcjF9IGFu
ZCBtIGluIHtyMiwgcjN9IHRoZW4gcGFzcyB0aGVtIGludG8gdGhlCi0gKiBoZWxwZXIgZnVuY3Rp
b24uIFRoZSBoZXBsZXIgZnVuY3Rpb25zIHJldHVybiBxIGluIHtyMCwgcjF9IGFzCi0gKiByZXF1
aXJlZCBieSB0aGUgQVBJIHNwZWMgaG93ZXZlciByIGlzIHJldHVybmVkIG9uIHRoZSBzdGFjay4g
VGhlCi0gKiBBQkkgcmVxdWlyZWQgdXMgdG8gcmV0dXJuIHIgaW4ge3IyLCByM30uCi0gKgotICog
V2UgbmVlZCB0byBhbGxvY2F0ZSA4IGJ5dGVzIG9uIHRoZSBzdGFjayB0byBzdG9yZSByLCB0aGUg
bGluawotICogcmVnaXN0ZXIsIGFuZCBhIHBvaW50ZXIgdG8gdGhlIHNwYWNlIHdoZXJlIHRoZSBo
ZWxwZXIgZnVuY3Rpb24KLSAqIHdpbGwgd3JpdGUgciB0by4gQWZ0ZXIgcmV0dXJuaW5nIGZyb20g
dGhlIGhlbHBlciBmdWluY3Rpb24gd2UgbG9hZAotICogdGhlIG9sZCBsaW5rIHJlZ2lzdGVyIGFu
ZCByIGZyb20gdGhlIHN0YWNrIGFuZCByZXR1cm4uCi0gKi8KLUVOVFJZX05QKF9fYWVhYmlfbGRp
dm1vZCkKLQlzdWIJc3AsIHNwLCAjOAkvKiBTcGFjZSBmb3IgdGhlIHJlbWFpbmRlciAqLwotCXN0
bWZkCXNwISwge3NwLCBscn0JLyogU2F2ZSBhIHBvaW50ZXIgdG8gdGhlIGFib3ZlIHNwYWNlIGFu
ZCBsciAqLwotCWJsCV9fa2Vybl9sZGl2bW9kCi0JbGRyCWxyLCBbc3AsICM0XQkvKiBSZXN0b3Jl
IGxyICovCi0JYWRkCXNwLCBzcCwgIzgJLyogTW92ZSBzcCB0byB0aGUgcmVtYWluZGVyIHZhbHVl
ICovCi0JbGRtZmQJc3AhLCB7cjIsIHIzfQkvKiBMb2FkIHRoZSByZW1haW5kZXIgKi8KLQltb3YJ
cGMsIGxyCi1FTkQoX19hZWFiaV9sZGl2bW9kKQotCi1FTlRSWV9OUChfX2FlYWJpX3VsZGl2bW9k
KQotCXN1YglzcCwgc3AsICM4CS8qIFNwYWNlIGZvciB0aGUgcmVtYWluZGVyICovCi0Jc3RtZmQJ
c3AhLCB7c3AsIGxyfQkvKiBTYXZlIGEgcG9pbnRlciB0byB0aGUgYWJvdmUgc3BhY2UgYW5kIGxy
ICovCi0JYmwJX19xZGl2cmVtCi0JbGRyCWxyLCBbc3AsICM0XQkvKiBSZXN0b3JlIGxyICovCi0J
YWRkCXNwLCBzcCwgIzgJLyogTW92ZSBzcCB0byB0aGUgcmVtYWluZGVyIHZhbHVlICovCi0JbGRt
ZmQJc3AhLCB7cjIsIHIzfQkvKiBMb2FkIHRoZSByZW1haW5kZXIgKi8KLQltb3YJcGMsIGxyCi1F
TkQoX19hZWFiaV91bGRpdm1vZCkKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2xkaXZtb2RfaGVscGVy
LmMgYi9hcmNoL2FybS9sZGl2bW9kX2hlbHBlci5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwOTg1MjNlLi4wMDAwMDAwCi0tLSBhL2FyY2gvYXJtL2xkaXZtb2RfaGVscGVyLmMKKysr
IC9kZXYvbnVsbApAQCAtMSw2NyArMCwwIEBACi0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog
QlNELTItQ2xhdXNlICovCi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFuZHJldyBUdXJuZXIK
LSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAot
ICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUK
LSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
Ci0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICovCi0KLSNpbmNsdWRlIDx1ay9hcmNoL3R5cGVz
Lmg+Ci0KLV9fdTY0IF9fcWRpdnJlbShfX3U2NCB1LCBfX3U2NCB2LCBfX3U2NCAqcmVtKTsKLQot
I2lmbmRlZiBIQVZFX0xJQkMKLV9fczY0IF9fZGl2ZGkzKF9fczY0IGEsIF9fczY0IGIpCi17Ci0J
X191NjQgdWEsIHViLCB1cTsKLQlpbnQgbmVnOwotCi0JaWYgKGEgPCAwKQotCQl1YSA9IC0oX191
NjQpYSwgbmVnID0gMTsKLQllbHNlCi0JCXVhID0gYSwgbmVnID0gMDsKLQlpZiAoYiA8IDApCi0J
CXViID0gLShfX3U2NCliLCBuZWcgXj0gMTsKLQllbHNlCi0JCXViID0gYjsKLQl1cSA9IF9fcWRp
dnJlbSh1YSwgdWIsIChfX3U2NCAqKTApOwotCXJldHVybiBuZWcgPyAtdXEgOiB1cTsKLX0KLSNl
bmRpZgotCi0vKgotICogSGVscGVyIGZvciBfX2FlYWJpX2xkaXZtb2QuCi0gKiBUT0RPOiBfX2Rp
dmRpMyBjYWxscyBfX3FkaXZyZW0uIFdlIHNob3VsZCBkbyB0aGUgc2FtZSBhbmQgdXNlIHRoZQot
ICogcmVtYWluZGVyIHZhbHVlIHJhdGhlciB0aGFuIHJlLWNhbGN1bGF0aW5nIGl0LgotICovCi1s
b25nIGxvbmcgX19rZXJuX2xkaXZtb2QobG9uZyBsb25nLCBsb25nIGxvbmcsIGxvbmcgbG9uZyAq
KTsKLQotbG9uZyBsb25nIF9fa2Vybl9sZGl2bW9kKGxvbmcgbG9uZyBuLCBsb25nIGxvbmcgbSwg
bG9uZyBsb25nICpyZW0pCi17Ci0JbG9uZyBsb25nIHE7Ci0KLQlxID0gX19kaXZkaTMobiwgbSk7
IC8qIHEgPSBuIC8gbSAqLwotCSpyZW0gPSBuIC0gbSAqIHE7Ci0KLQlyZXR1cm4gcTsKLX0KZGlm
ZiAtLWdpdCBhL2FyY2gvYXJtL3FkaXZyZW0uYyBiL2FyY2gvYXJtL3FkaXZyZW0uYwpkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTdkMTQ3MS4uMDAwMDAwMAotLS0gYS9hcmNoL2FybS9x
ZGl2cmVtLmMKKysrIC9kZXYvbnVsbApAQCAtMSwzMjQgKzAsMCBAQAotLyogU1BEWC1MaWNlbnNl
LUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwotLyotCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTIs
IDE5OTMKLSAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgc29mdHdhcmUgd2FzIGRldmVsb3BlZCBi
eSB0aGUgQ29tcHV0ZXIgU3lzdGVtcyBFbmdpbmVlcmluZyBncm91cAotICogYXQgTGF3cmVuY2Ug
QmVya2VsZXkgTGFib3JhdG9yeSB1bmRlciBEQVJQQSBjb250cmFjdCBCRyA5MS02NiBhbmQKLSAq
IGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Ci0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogNC4gTmVpdGhlciB0aGUgbmFt
ZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAq
ICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBl
cm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5U
UyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwK
LSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
Ci0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4K
LSAqLwotCi0jaW5jbHVkZSA8dWsvYXJjaC90eXBlcy5oPgotI2luY2x1ZGUgPHVrL2FyY2gvbGlt
aXRzLmg+Ci0KLS8qCi0gKiBNdWx0aXByZWNpc2lvbiBkaXZpZGUuICBUaGlzIGFsZ29yaXRobSBp
cyBmcm9tIEtudXRoIHZvbC4gMiAoMm5kIGVkKSwKLSAqIHNlY3Rpb24gNC4zLjEsIHBwLiAyNTct
LTI1OS4KLSAqLwotCi0vKgotICogRnJvbQotICoJQCgjKXF1YWQuaAk4LjEgKEJlcmtlbGV5KSA2
LzQvOTMKLSAqLwotCi0jaWZkZWYgX19CSUdfRU5ESUFOCi0jZGVmaW5lIF9RVUFEX0hJR0hXT1JE
IDAKLSNkZWZpbmUgX1FVQURfTE9XV09SRCAxCi0jZWxzZSAvKiBfX0xJVFRMRV9FTkRJQU4gKi8K
LSNkZWZpbmUgX1FVQURfSElHSFdPUkQgMQotI2RlZmluZSBfUVVBRF9MT1dXT1JEIDAKLSNlbmRp
ZgotCi0vKgotICogRGVmaW5lIGhpZ2ggYW5kIGxvdyBsb25nd29yZHMuCi0gKi8KLSNkZWZpbmUg
UVVBREggICAgICAgICAgICAgICBfUVVBRF9ISUdIV09SRAotI2RlZmluZSBRVUFETCAgICAgICAg
ICAgICAgIF9RVUFEX0xPV1dPUkQKLQotLyoKLSAqIFRvdGFsIG51bWJlciBvZiBiaXRzIGluIGEg
cXVhZF90IGFuZCBpbiB0aGUgcGllY2VzIHRoYXQgbWFrZSBpdCB1cC4KLSAqIFRoZXNlIGFyZSB1
c2VkIGZvciBzaGlmdGluZywgYW5kIGFsc28gYmVsb3cgZm9yIGhhbGZ3b3JkIGV4dHJhY3Rpb24K
LSAqIGFuZCBhc3NlbWJseS4KLSAqLwotI2RlZmluZSBDSEFSX0JJVCAgICAgICAgOCAgICAgICAg
ICAgICAgIC8qIG51bWJlciBvZiBiaXRzIGluIGEgY2hhciAqLwotI2RlZmluZSBRVUFEX0JJVFMg
ICAgICAgKHNpemVvZihfX3M2NCkgKiBDSEFSX0JJVCkKLSNkZWZpbmUgTE9OR19CSVRTICAgICAg
IChzaXplb2YobG9uZykgKiBDSEFSX0JJVCkKLSNkZWZpbmUgSEFMRl9CSVRTICAgICAgIChzaXpl
b2YobG9uZykgKiBDSEFSX0JJVCAvIDIpCi0KLSNkZWZpbmUgRElHSVRfQkFTRSAoMSA8PCBIQUxG
X0JJVFMpIC8qIGRpZ2l0IGJhc2UgKi8KLS8qCi0gKiBFeHRyYWN0IGhpZ2ggYW5kIGxvdyBzaG9y
dHdvcmRzIGZyb20gbG9uZ3dvcmQsIGFuZCBtb3ZlIGxvdyBzaG9ydHdvcmQgb2YKLSAqIGxvbmd3
b3JkIHRvIHVwcGVyIGhhbGYgb2YgbG9uZywgaS5lLiwgcHJvZHVjZSB0aGUgdXBwZXIgbG9uZ3dv
cmQgb2YKLSAqICgocXVhZF90KSh4KSA8PCAobnVtYmVyX29mX2JpdHNfaW5fbG9uZy8yKSkuICAo
YHgnIG11c3QgYWN0dWFsbHkgYmUgdV9sb25nLikKLSAqCi0gKiBUaGVzZSBhcmUgdXNlZCBpbiB0
aGUgbXVsdGlwbHkgY29kZSwgdG8gc3BsaXQgYSBsb25nd29yZCBpbnRvIHVwcGVyCi0gKiBhbmQg
bG93ZXIgaGFsdmVzLCBhbmQgdG8gcmVhc3NlbWJsZSBhIHByb2R1Y3QgYXMgYSBxdWFkX3QsIHNo
aWZ0ZWQgbGVmdAotICogKHNpemVvZihsb25nKSpDSEFSX0JJVC8yKS4KLSAqLwotI2RlZmluZSBI
SEFMRih4KSAgICAgICAgKCh4KSA+PiBIQUxGX0JJVFMpCi0jZGVmaW5lIExIQUxGKHgpICAgICAg
ICAoKHgpICYgKCgxIDw8IEhBTEZfQklUUykgLSAxKSkKLSNkZWZpbmUgTEhVUCh4KSAgICAgICAg
ICgoeCkgPDwgSEFMRl9CSVRTKQotCi0jZGVmaW5lIENPTUJJTkUoYSwgYikgKCgodW5zaWduZWQg
bG9uZykoYSkgPDwgSEFMRl9CSVRTKSB8IChiKSkKLQotLyoKLSAqIERlcGVuZGluZyBvbiB0aGUg
ZGVzaXJlZCBvcGVyYXRpb24sIHdlIHZpZXcgYSBgbG9uZyBsb25nJyAoYWthIHF1YWRfdCkgaW4K
LSAqIG9uZSBvciBtb3JlIG9mIHRoZSBmb2xsb3dpbmcgZm9ybWF0cy4KLSAqLwotdW5pb24gdXUg
ewotCV9fczY0ICAgICAgICAgICBxOyAgICAgICAgICAgICAvKiBhcyBhIChzaWduZWQpIHF1YWQg
Ki8KLQlfX3M2NCAgICAgICAgICB1cTsgICAgICAgICAgICAgLyogYXMgYW4gdW5zaWduZWQgcXVh
ZCAqLwotCWxvbmcgICAgICAgICAgIHNsWzJdOyAgICAgICAgICAvKiBhcyB0d28gc2lnbmVkIGxv
bmdzICovCi0JdW5zaWduZWQgbG9uZyAgdWxbMl07ICAgICAgICAgIC8qIGFzIHR3byB1bnNpZ25l
ZCBsb25ncyAqLwotfTsKLQotI2RlZmluZQlCCSgxIDw8IEhBTEZfQklUUykJLyogZGlnaXQgYmFz
ZSAqLwotCi0vKiBzZWxlY3QgYSB0eXBlIGZvciBkaWdpdHMgaW4gYmFzZSBCOiB1c2UgdW5zaWdu
ZWQgc2hvcnQgaWYgdGhleSBmaXQgKi8KLSNpZiBfX1VMX01BWCA9PSAweGZmZmZmZmZmICYmIF9f
VVNfTUFYID49IDB4ZmZmZgotdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBkaWdpdDsKLSNlbHNlCi10
eXBlZGVmIHVuc2lnbmVkIGxvbmcgZGlnaXQ7Ci0jZW5kaWYKLQotLyoKLSAqIFNoaWZ0IHBbMF0u
LnBbbGVuXSBsZWZ0IGBzaCcgYml0cywgaWdub3JpbmcgYW55IGJpdHMgdGhhdAotICogYGZhbGwg
b3V0JyB0aGUgbGVmdCAodGhlcmUgbmV2ZXIgd2lsbCBiZSBhbnkgc3VjaCBhbnl3YXkpLgotICog
V2UgbWF5IGFzc3VtZSBsZW4gPj0gMC4gIE5PVEUgVEhBVCBUSElTIFdSSVRFUyBsZW4rMSBESUdJ
VFMuCi0gKi8KLXN0YXRpYyB2b2lkIF9fc2hsKHJlZ2lzdGVyIGRpZ2l0ICpwLCByZWdpc3RlciBp
bnQgbGVuLCByZWdpc3RlciBpbnQgc2gpCi17Ci0JcmVnaXN0ZXIgaW50IGk7Ci0KLQlmb3IgKGkg
PSAwOyBpIDwgbGVuOyBpKyspCi0JCXBbaV0gPSBMSEFMRihwW2ldIDw8IHNoKSB8IChwW2kgKyAx
XSA+PiAoSEFMRl9CSVRTIC0gc2gpKTsKLQlwW2ldID0gTEhBTEYocFtpXSA8PCBzaCk7Ci19Ci0K
LS8qCi0gKiBfX3FkaXZyZW0odSwgdiwgcmVtKSByZXR1cm5zIHUvdiBhbmQsIG9wdGlvbmFsbHks
IHNldHMgKnJlbSB0byB1JXYuCi0gKgotICogV2UgZG8gdGhpcyBpbiBiYXNlIDItc3VwLUhBTEZf
QklUUywgc28gdGhhdCBhbGwgaW50ZXJtZWRpYXRlIHByb2R1Y3RzCi0gKiBmaXQgd2l0aGluIHVf
bG9uZy4gIEFzIGEgY29uc2VxdWVuY2UsIHRoZSBtYXhpbXVtIGxlbmd0aCBkaXZpZGVuZCBhbmQK
LSAqIGRpdmlzb3IgYXJlIDQgYGRpZ2l0cycgaW4gdGhpcyBiYXNlICh0aGV5IGFyZSBzaG9ydGVy
IGlmIHRoZXkgaGF2ZQotICogbGVhZGluZyB6ZXJvcykuCi0gKi8KLV9fdTY0IF9fcWRpdnJlbShf
X3U2NCB1cSwgX191NjQgdnEsIF9fdTY0ICphcnEpCi17Ci0JdW5pb24gdXUgdG1wOwotCWRpZ2l0
ICp1LCAqdiwgKnE7Ci0JcmVnaXN0ZXIgZGlnaXQgdjEsIHYyOwotCXVuc2lnbmVkIGxvbmcgcWhh
dCwgcmhhdCwgdDsKLQlpbnQgbSwgbiwgZCwgaiwgaTsKLQlkaWdpdCB1c3BhY2VbNV0sIHZzcGFj
ZVs1XSwgcXNwYWNlWzVdOwotCi0JLyoKLQkgKiBUYWtlIGNhcmUgb2Ygc3BlY2lhbCBjYXNlczog
ZGl2aWRlIGJ5IHplcm8sIGFuZCB1IDwgdi4KLQkgKi8KLQlpZiAodnEgPT0gMCkgewotCQkvKiBk
aXZpZGUgYnkgemVyby4gKi8KLQkJc3RhdGljIHZvbGF0aWxlIGNvbnN0IHVuc2lnbmVkIGludCB6
ZXJvID0gMDsKLQotCQl0bXAudWxbUVVBREhdID0gdG1wLnVsW1FVQURMXSA9IDEgLyB6ZXJvOwot
CQlpZiAoYXJxKQotCQkJKmFycSA9IHVxOwotCQlyZXR1cm4gdG1wLnE7Ci0JfQotCWlmICh1cSA8
IHZxKSB7Ci0JCWlmIChhcnEpCi0JCQkqYXJxID0gdXE7Ci0JCXJldHVybiAwOwotCX0KLQl1ID0g
JnVzcGFjZVswXTsKLQl2ID0gJnZzcGFjZVswXTsKLQlxID0gJnFzcGFjZVswXTsKLQotCS8qCi0J
ICogQnJlYWsgZGl2aWRlbmQgYW5kIGRpdmlzb3IgaW50byBkaWdpdHMgaW4gYmFzZSBCLCB0aGVu
Ci0JICogY291bnQgbGVhZGluZyB6ZXJvcyB0byBkZXRlcm1pbmUgbSBhbmQgbi4gIFdoZW4gZG9u
ZSwgd2UKLQkgKiB3aWxsIGhhdmU6Ci0JICoJdSA9ICh1WzFddVsyXS4uLnVbbStuXSkgc3ViIEIK
LQkgKgl2ID0gKHZbMV12WzJdLi4udltuXSkgc3ViIEIKLQkgKgl2WzFdICE9IDAKLQkgKgkxIDwg
biA8PSA0IChpZiBuID0gMSwgd2UgdXNlIGEgZGlmZmVyZW50IGRpdmlzaW9uIGFsZ29yaXRobSkK
LQkgKgltID49IDAgKG90aGVyd2lzZSB1IDwgdiwgd2hpY2ggd2UgYWxyZWFkeSBjaGVja2VkKQot
CSAqCW0gKyBuID0gNAotCSAqIGFuZCB0aHVzCi0JICoJbSA9IDQgLSBuIDw9IDIKLQkgKi8KLQl0
bXAudXEgPSB1cTsKLQl1WzBdID0gMDsKLQl1WzFdID0gSEhBTEYodG1wLnVsW1FVQURIXSk7Ci0J
dVsyXSA9IExIQUxGKHRtcC51bFtRVUFESF0pOwotCXVbM10gPSBISEFMRih0bXAudWxbUVVBRExd
KTsKLQl1WzRdID0gTEhBTEYodG1wLnVsW1FVQURMXSk7Ci0JdG1wLnVxID0gdnE7Ci0JdlsxXSA9
IEhIQUxGKHRtcC51bFtRVUFESF0pOwotCXZbMl0gPSBMSEFMRih0bXAudWxbUVVBREhdKTsKLQl2
WzNdID0gSEhBTEYodG1wLnVsW1FVQURMXSk7Ci0Jdls0XSA9IExIQUxGKHRtcC51bFtRVUFETF0p
OwotCWZvciAobiA9IDQ7IHZbMV0gPT0gMDsgdisrKSB7Ci0JCWlmICgtLW4gPT0gMSkgewotCQkJ
dW5zaWduZWQgbG9uZyByYmo7IC8qIHIqQit1W2pdIChub3Qgcm9vdCBib3kgamltKSAqLwotCQkJ
ZGlnaXQgcTEsIHEyLCBxMywgcTQ7Ci0KLQkJCS8qCi0JCQkgKiBDaGFuZ2Ugb2YgcGxhbiwgcGVy
IGV4ZXJjaXNlIDE2LgotCQkJICoJciA9IDA7Ci0JCQkgKglmb3IgaiA9IDEuLjQ6Ci0JCQkgKgkJ
cVtqXSA9IGZsb29yKChyKkIgKyB1W2pdKSAvIHYpLAotCQkJICoJCXIgPSAocipCICsgdVtqXSkg
JSB2OwotCQkJICogV2UgdW5yb2xsIHRoaXMgY29tcGxldGVseSBoZXJlLgotCQkJICovCi0JCQl0
ID0gdlsyXTsJLyogbm9uemVybywgYnkgZGVmaW5pdGlvbiAqLwotCQkJcTEgPSB1WzFdIC8gdDsK
LQkJCXJiaiA9IENPTUJJTkUodVsxXSAlIHQsIHVbMl0pOwotCQkJcTIgPSByYmogLyB0OwotCQkJ
cmJqID0gQ09NQklORShyYmogJSB0LCB1WzNdKTsKLQkJCXEzID0gcmJqIC8gdDsKLQkJCXJiaiA9
IENPTUJJTkUocmJqICUgdCwgdVs0XSk7Ci0JCQlxNCA9IHJiaiAvIHQ7Ci0JCQlpZiAoYXJxKQot
CQkJCSphcnEgPSByYmogJSB0OwotCQkJdG1wLnVsW1FVQURIXSA9IENPTUJJTkUocTEsIHEyKTsK
LQkJCXRtcC51bFtRVUFETF0gPSBDT01CSU5FKHEzLCBxNCk7Ci0JCQlyZXR1cm4gdG1wLnE7Ci0J
CX0KLQl9Ci0KLQkvKgotCSAqIEJ5IGFkanVzdGluZyBxIG9uY2Ugd2UgZGV0ZXJtaW5lIG0sIHdl
IGNhbiBndWFyYW50ZWUgdGhhdAotCSAqIHRoZXJlIGlzIGEgY29tcGxldGUgZm91ci1kaWdpdCBx
dW90aWVudCBhdCAmcXNwYWNlWzFdIHdoZW4KLQkgKiB3ZSBmaW5hbGx5IHN0b3AuCi0JICovCi0J
Zm9yIChtID0gNCAtIG47IHVbMV0gPT0gMDsgdSsrKQotCQltLS07Ci0JZm9yIChpID0gNCAtIG07
IC0taSA+PSAwOykKLQkJcVtpXSA9IDA7Ci0JcSArPSA0IC0gbTsKLQotCS8qCi0JICogSGVyZSB3
ZSBydW4gUHJvZ3JhbSBELCB0cmFuc2xhdGVkIGZyb20gTUlYIHRvIEMgYW5kIGFjcXVpcmluZwot
CSAqIGEgZmV3IG1pbm9yIGNoYW5nZXMuCi0JICoKLQkgKiBEMTogY2hvb3NlIG11bHRpcGxpZXIg
MSA8PCBkIHRvIGVuc3VyZSB2WzFdID49IEIvMi4KLQkgKi8KLQlkID0gMDsKLQlmb3IgKHQgPSB2
WzFdOyB0IDwgQiAvIDI7IHQgPDw9IDEpCi0JCWQrKzsKLQlpZiAoZCA+IDApIHsKLQkJX19zaGwo
JnVbMF0sIG0gKyBuLCBkKTsJCS8qIHUgPDw9IGQgKi8KLQkJX19zaGwoJnZbMV0sIG4gLSAxLCBk
KTsJCS8qIHYgPDw9IGQgKi8KLQl9Ci0JLyoKLQkgKiBEMjogaiA9IDAuCi0JICovCi0JaiA9IDA7
Ci0JdjEgPSB2WzFdOwkvKiBmb3IgRDMgLS0gbm90ZSB0aGF0IHZbMS4ubl0gYXJlIGNvbnN0YW50
ICovCi0JdjIgPSB2WzJdOwkvKiBmb3IgRDMgKi8KLQlkbyB7Ci0JCXJlZ2lzdGVyIGRpZ2l0IHVq
MCwgdWoxLCB1ajI7Ci0KLQkJLyoKLQkJICogRDM6IENhbGN1bGF0ZSBxaGF0IChcXnEsIGluIFRl
WCBub3RhdGlvbikuCi0JCSAqIExldCBxaGF0ID0gbWluKCh1W2pdKkIgKyB1W2orMV0pL3ZbMV0s
IEItMSksIGFuZAotCQkgKiBsZXQgcmhhdCA9ICh1W2pdKkIgKyB1W2orMV0pIG1vZCB2WzFdLgot
CQkgKiBXaGlsZSByaGF0IDwgQiBhbmQgdlsyXSpxaGF0ID4gcmhhdCpCK3VbaisyXSwKLQkJICog
ZGVjcmVtZW50IHFoYXQgYW5kIGluY3JlYXNlIHJoYXQgY29ycmVzcG9uZGluZ2x5LgotCQkgKiBO
b3RlIHRoYXQgaWYgcmhhdCA+PSBCLCB2WzJdKnFoYXQgPCByaGF0KkIuCi0JCSAqLwotCQl1ajAg
PSB1W2ogKyAwXTsJLyogZm9yIEQzIG9ubHkgLS0gbm90ZSB0aGF0IHVbaisuLi5dIGNoYW5nZSAq
LwotCQl1ajEgPSB1W2ogKyAxXTsJLyogZm9yIEQzIG9ubHkgKi8KLQkJdWoyID0gdVtqICsgMl07
CS8qIGZvciBEMyBvbmx5ICovCi0JCWlmICh1ajAgPT0gdjEpIHsKLQkJCXFoYXQgPSBCOwotCQkJ
cmhhdCA9IHVqMTsKLQkJCWdvdG8gcWhhdF90b29fYmlnOwotCQl9IGVsc2UgewotCQkJdW5zaWdu
ZWQgbG9uZyBubiA9IENPTUJJTkUodWowLCB1ajEpOwotCi0JCQlxaGF0ID0gbm4gLyB2MTsKLQkJ
CXJoYXQgPSBubiAlIHYxOwotCQl9Ci0JCXdoaWxlICh2MiAqIHFoYXQgPiBDT01CSU5FKHJoYXQs
IHVqMikpIHsKLXFoYXRfdG9vX2JpZzoKLQkJCXFoYXQtLTsKLQkJCWlmICgocmhhdCArPSB2MSkg
Pj0gQikKLQkJCQlicmVhazsKLQkJfQotCQkvKgotCQkgKiBENDogTXVsdGlwbHkgYW5kIHN1YnRy
YWN0LgotCQkgKiBUaGUgdmFyaWFibGUgYHQnIGhvbGRzIGFueSBib3Jyb3dzIGFjcm9zcyB0aGUg
bG9vcC4KLQkJICogV2Ugc3BsaXQgdGhpcyB1cCBzbyB0aGF0IHdlIGRvIG5vdCByZXF1aXJlIHZb
MF0gPSAwLAotCQkgKiBhbmQgdG8gZWxpbWluYXRlIGEgZmluYWwgc3BlY2lhbCBjYXNlLgotCQkg
Ki8KLQkJZm9yICh0ID0gMCwgaSA9IG47IGkgPiAwOyBpLS0pIHsKLQkJCXQgPSB1W2kgKyBqXSAt
IHZbaV0gKiBxaGF0IC0gdDsKLQkJCXVbaSArIGpdID0gTEhBTEYodCk7Ci0JCQl0ID0gKEIgLSBI
SEFMRih0KSkgJiAoQiAtIDEpOwotCQl9Ci0JCXQgPSB1W2pdIC0gdDsKLQkJdVtqXSA9IExIQUxG
KHQpOwotCQkvKgotCQkgKiBENTogdGVzdCByZW1haW5kZXIuCi0JCSAqIFRoZXJlIGlzIGEgYm9y
cm93IGlmIGFuZCBvbmx5IGlmIEhIQUxGKHQpIGlzIG5vbnplcm87Ci0JCSAqIGluIHRoYXQgKHJh
cmUpIGNhc2UsIHFoYXQgd2FzIHRvbyBsYXJnZSAoYnkgZXhhY3RseSAxKS4KLQkJICogRml4IGl0
IGJ5IGFkZGluZyB2WzEuLm5dIHRvIHVbai4uaituXS4KLQkJICovCi0JCWlmIChISEFMRih0KSkg
ewotCQkJcWhhdC0tOwotCQkJZm9yICh0ID0gMCwgaSA9IG47IGkgPiAwOyBpLS0pIHsgLyogRDY6
IGFkZCBiYWNrLiAqLwotCQkJCXQgKz0gdVtpICsgal0gKyB2W2ldOwotCQkJCXVbaSArIGpdID0g
TEhBTEYodCk7Ci0JCQkJdCA9IEhIQUxGKHQpOwotCQkJfQotCQkJdVtqXSA9IExIQUxGKHVbal0g
KyB0KTsKLQkJfQotCQlxW2pdID0gcWhhdDsKLQl9IHdoaWxlICgrK2ogPD0gbSk7CQkvKiBENzog
bG9vcCBvbiBqLiAqLwotCi0JLyoKLQkgKiBJZiBjYWxsZXIgd2FudHMgdGhlIHJlbWFpbmRlciwg
d2UgaGF2ZSB0byBjYWxjdWxhdGUgaXQgYXMKLQkgKiB1W20uLm0rbl0gPj4gZCAodGhpcyBpcyBh
dCBtb3N0IG4gZGlnaXRzIGFuZCB0aHVzIGZpdHMgaW4KLQkgKiB1W20rMS4ubStuXSwgYnV0IHdl
IG1heSBuZWVkIG1vcmUgc291cmNlIGRpZ2l0cykuCi0JICovCi0JaWYgKGFycSkgewotCQlpZiAo
ZCkgewotCQkJZm9yIChpID0gbSArIG47IGkgPiBtOyAtLWkpCi0JCQkJdVtpXSA9ICh1W2ldID4+
IGQpIHwKLQkJCQkgICAgTEhBTEYodVtpIC0gMV0gPDwgKEhBTEZfQklUUyAtIGQpKTsKLQkJCXVb
aV0gPSAwOwotCQl9Ci0JCXRtcC51bFtRVUFESF0gPSBDT01CSU5FKHVzcGFjZVsxXSwgdXNwYWNl
WzJdKTsKLQkJdG1wLnVsW1FVQURMXSA9IENPTUJJTkUodXNwYWNlWzNdLCB1c3BhY2VbNF0pOwot
CQkqYXJxID0gdG1wLnE7Ci0JfQotCi0JdG1wLnVsW1FVQURIXSA9IENPTUJJTkUocXNwYWNlWzFd
LCBxc3BhY2VbMl0pOwotCXRtcC51bFtRVUFETF0gPSBDT01CSU5FKHFzcGFjZVszXSwgcXNwYWNl
WzRdKTsKLQlyZXR1cm4gdG1wLnE7Ci19CmRpZmYgLS1naXQgYS9hcmNoL3g4Ni9Db21waWxlci51
ayBiL2FyY2gveDg2L0NvbXBpbGVyLnVrCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLmVlZTAwMGQKLS0tIC9kZXYvbnVsbAorKysgYi9hcmNoL3g4Ni9Db21waWxlci51awpAQCAt
MCwwICsxLDQgQEAKKyMgSW5jbHVkZSBmb3J3YXJkIGRlY2xhcmF0aW9ucyBieSBjb3JyZXNwb25k
aW5nIGFyY2hpdGVjdXRlcworaWZlcSAoJChBUkNIX1g4Nl82NCkseSkKKwlpbmNsdWRlICQoVUtf
QkFTRSkvYXJjaC94ODYveDg2XzY0L0NvbXBpbGVyLnVrCitlbmRpZgpkaWZmIC0tZ2l0IGEvYXJj
aC94ODYvTWFrZWZpbGUudWsgYi9hcmNoL3g4Ni9NYWtlZmlsZS51awpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi4xNjhlMWI1Ci0tLSAvZGV2L251bGwKKysrIGIvYXJjaC94ODYv
TWFrZWZpbGUudWsKQEAgLTAsMCArMSw0IEBACisjIEluY2x1ZGUgZm9yd2FyZCBkZWNsYXJhdGlv
bnMgYnkgY29ycmVzcG9uZGluZyBhcmNoaXRlY3V0ZXMKK2lmZXEgKCQoQVJDSF9YODZfNjQpLHkp
CisJaW5jbHVkZSAkKFVLX0JBU0UpL2FyY2gveDg2L3g4Nl82NC9NYWtlZmlsZS51aworZW5kaWYK
ZGlmZiAtLWdpdCBhL2FyY2gveDg2L3g4Nl82NC9Db21waWxlci51ayBiL2FyY2gveDg2L3g4Nl82
NC9Db21waWxlci51awpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNTQ3MGVk
Ci0tLSAvZGV2L251bGwKKysrIGIvYXJjaC94ODYveDg2XzY0L0NvbXBpbGVyLnVrCkBAIC0wLDAg
KzEsNiBAQAorIyBzZXQgY3Jvc3MgY29tcGlsZQoraWZlcSAoJChDUk9TU19DT01QSUxFKSwpCitp
Zm5lcSAoJChVS19BUkNIKSwkKEhPU1RBUkNIKSkKKwlDUk9TU19DT01QSUxFIDo9IHg4Nl82NC1s
aW51eC1nbnUtCitlbmRpZgorZW5kaWYKZGlmZiAtLWdpdCBhL2FyY2gveDg2L3g4Nl82NC9Db25m
aWcudWsgYi9hcmNoL3g4Ni94ODZfNjQvQ29uZmlnLnVrCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmNhNDllZWQKLS0tIC9kZXYvbnVsbAorKysgYi9hcmNoL3g4Ni94ODZfNjQv
Q29uZmlnLnVrCkBAIC0wLDAgKzEsODkgQEAKK2Nob2ljZQorCXByb21wdCAiUHJvY2Vzc29yIE9w
dGltaXphdGlvbiIKKwlkZWZhdWx0IE1BUkNIX0dFTkVSSUMKKwloZWxwCisJCU9wdGltaXplIHRo
ZSBjb2RlIGZvciBzZWxlY3RlZCB0YXJnZXQgcHJvY2Vzc29yCisJCUdlbmVyaWMgeDg2XzY0IGRv
ZXMgbm90IGVuYWJsZSBhbnkgYWRkaXRpb25hbCBDUFUgZmVhdHVyZXMKKwkJKGUuZy4sIFNTRSwg
M0ROb3chKSBhbmQgcHJvZHVjZXMgaGlnaGx5IHByb3RhYmxlIGNvZGUgZm9yIHg4Ni4KKworY29u
ZmlnIE1BUkNIX05BVElWRQorCWJvb2wgIkF1dG8tZGV0ZWN0IGhvc3QgQ1BVIgorCWhlbHAKKwkJ
T3B0aW1pemUgY29tcGlsYXRpb24gdG8gaG9zdCBDUFUKKwkJUGxlYXNlIG5vdGUgdGhhdCB0aGlz
IG9wdGlvbiB3aWxsIGZhaWwgaW4gY2FzZSBvZiBjcm9zcy1jb21waWxhdGlvbgorCitjb25maWcg
TUFSQ0hfR0VORVJJQworCWJvb2wgIkdlbmVyaWMgNjQtYml0IgorCWhlbHAKKwkJQ29tcGlsZSBm
b3IgNjQtYml0IGNvbXBhdGlibGUgeDg2IENQVXMKKworY29uZmlnIE1BUkNIX05PQ09OQQorCWJv
b2wgIkludGVsIFBlbnRpdW0gNC9YZW9uIChOb2NvbmEpIgorCWhlbHAKKwkJSW1wcm92ZWQgdmVy
c2lvbiBvZiBJbnRlbCBQZW50aXVtIDQgQ1BVIHdpdGggNjQtYml0IGV4dGVuc2lvbnMsIE1NWCwg
U1NFLCBTU0UyIGFuZCBTU0UzIGluc3RydWN0aW9uIHNldCBzdXBwb3J0LgorCitjb25maWcgTUFS
Q0hfQ09SRTIKKwlib29sICJJbnRlbCBDb3JlIDIvWGVvbiIKKwloZWxwCisJCUludGVsIENvcmUg
MiBDUFUgd2l0aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIsIFNTRTMgYW5kIFNT
U0UzIGluc3RydWN0aW9uIHNldCBzdXBwb3J0LgorCitjb25maWcgTUFSQ0hfQ09SRUk3CisJYm9v
bCAiSW50ZWwgQ29yZSBpNy9YZW9uIgorCWhlbHAKKwkJSW50ZWwgQ29yZSBpNyBDUFUgd2l0aCA2
NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIsIFNTRTMsIFNTU0UzLCBTU0U0LjEgYW5k
IFNTRTQuMiBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4KKworY29uZmlnIE1BUkNIX0NPUkVJN0FW
WAorCWJvb2wgIkludGVsIENvcmUgaTcvWGVvbiArQVZYIgorCWhlbHAKKwkJSW50ZWwgQ29yZSBp
NyBDUFUgd2l0aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIsIFNTRTMsIFNTU0Uz
LCBTU0U0LjEsIFNTRTQuMiwgQVZYLCBBRVMgYW5kIFBDTE1VTCBpbnN0cnVjdGlvbiBzZXQgc3Vw
cG9ydC4KKworY29uZmlnIE1BUkNIX0NPUkVJN0FWWEkKKwlib29sICJJbnRlbCBDb3JlL1hlb24g
K0FWWCArUkRSTkQiCisJaGVscAorCQlJbnRlbCBDb3JlIENQVSB3aXRoIDY0LWJpdCBleHRlbnNp
b25zLCBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NTRTMsIFNTRTQuMSwgU1NFNC4yLCBBVlgsIEFF
UywgUENMTVVMLCBGU0dTQkFTRSwgUkRSTkQgYW5kIEYxNkMgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBv
cnQuCisKK2NvbmZpZyBNQVJDSF9BVE9NCisJYm9vbCAiSW50ZWwgQXRvbSA2NC1iaXQiCisJaGVs
cAorCQlJbnRlbCBBdG9tIENQVSB3aXRoIDY0LWJpdCBleHRlbnNpb25zLCBNTVgsIFNTRSwgU1NF
MiwgU1NFMyBhbmQgU1NTRTMgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuCisKK2NvbmZpZyBNQVJD
SF9LOAorCWJvb2wgIkFNRCBBdGhsb242NC9PcHRlcm9uIgorCWhlbHAKKwkJUHJvY2Vzc29ycyBi
YXNlZCBvbiB0aGUgQU1EIEs4IGNvcmUgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBv
cnQsIGluY2x1ZGluZyB0aGUgQU1EIE9wdGVyb24sIEF0aGxvbiA2NCwgYW5kIEF0aGxvbiA2NCBG
WCBwcm9jZXNzb3JzLiAoVGhpcyBzdXBlcnNldHMgTU1YLCBTU0UsIFNTRTIsIDNETm93ISwgZW5o
YW5jZWQgM0ROb3chIGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuKQorCitj
b25maWcgTUFSQ0hfSzhTU0UzCisJYm9vbCAiQU1EIEF0aGxvbjY0L09wdGVyb24gK1NTRTMiCisJ
aGVscAorCQlJbXByb3ZlZCB2ZXJzaW9ucyBvZiBBTUQgSzggY29yZXMgd2l0aCBTU0UzIGluc3Ry
dWN0aW9uIHNldCBzdXBwb3J0LgorCitjb25maWcgTUFSQ0hfQU1ERkFNMTAKKwlib29sICJBTUQg
RmFtaWx5IDEwaCBjb3JlcyIKKwloZWxwCisJCUNQVXMgYmFzZWQgb24gQU1EIEZhbWlseSAxMGgg
Y29yZXMgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuIChUaGlzIHN1cGVyc2V0
cyBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NFNEEsIDNETm93ISwgZW5oYW5jZWQgM0ROb3chLCBB
Qk0gYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQgZXh0ZW5zaW9ucy4pCisKK2NvbmZpZyBNQVJD
SF9CVFZFUjEKKwlib29sICJBTUQgRmFtaWx5IDE0aCBjb3JlcyIKKwloZWxwCisJCUNQVXMgYmFz
ZWQgb24gQU1EIEZhbWlseSAxNGggY29yZXMgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rpb24gc2V0IHN1
cHBvcnQuIChUaGlzIHN1cGVyc2V0cyBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NTRTMsIFNTRTRB
LCBDWDE2LCBBQk0gYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQgZXh0ZW5zaW9ucy4pCisKK2Nv
bmZpZyBNQVJDSF9CRFZFUjEKKwlib29sICJBTUQgRmFtaWx5IDE1aCBjb3JlcyAoYmR2ZXIxKSIK
KwloZWxwCisJCUNQVXMgYmFzZWQgb24gQU1EIEZhbWlseSAxNWggY29yZXMgd2l0aCB4ODYtNjQg
aW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuIChUaGlzIHN1cGVyc2V0cyBGTUE0LCBBVlgsIFhPUCwg
TFdQLCBBRVMsIFBDTF9NVUwsIENYMTYsIE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBTU0U0QSwgU1NT
RTMsIFNTRTQuMSwgU1NFNC4yLCBBQk0gYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQgZXh0ZW5z
aW9ucy4pCisKK2NvbmZpZyBNQVJDSF9CRFZFUjIKKwlib29sICJBTUQgRmFtaWx5IDE1aCBjb3Jl
cyAoYmR2ZXIyKSIKKwloZWxwCisJCUFNRCBGYW1pbHkgMTVoIGNvcmUgYmFzZWQgQ1BVcyB3aXRo
IHg4Ni02NCBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4gKFRoaXMgc3VwZXJzZXRzIEJNSSwgVEJN
LCBGMTZDLCBGTUEsIEFWWCwgWE9QLCBMV1AsIEFFUywgUENMX01VTCwgQ1gxNiwgTU1YLCBTU0Us
IFNTRTIsIFNTRTMsIFNTRTRBLCBTU1NFMywgU1NFNC4xLCBTU0U0LjIsIEFCTSBhbmQgNjQtYml0
IGluc3RydWN0aW9uIHNldCBleHRlbnNpb25zLikKKworY29uZmlnIE1BUkNIX0JEVkVSMworCWJv
b2wgIkFNRCBGYW1pbHkgMTVoIGNvcmVzIChiZHZlcjMpIgorCWhlbHAKKwkJQU1EIEZhbWlseSAx
NWggY29yZSBiYXNlZCBDUFVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldCBzdXBwb3J0LiAo
VGhpcyBzdXBlcnNldHMgQk1JLCBUQk0sIEYxNkMsIEZNQSwgQVZYLCBYT1AsIExXUCwgQUVTLCBQ
Q0xfTVVMLCBDWDE2LCBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NFNEEsIFNTU0UzLCBTU0U0LjEs
IFNTRTQuMiwgQUJNIGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuCisKK2Nv
bmZpZyBNQVJDSF9CVFZFUjIKKwlib29sICJBTUQgRmFtaWx5IDE2aCBjb3JlcyIKKwloZWxwCisJ
CUNQVXMgYmFzZWQgb24gQU1EIEZhbWlseSAxNmggY29yZXMgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rp
b24gc2V0IHN1cHBvcnQuIFRoaXMgaW5jbHVkZXMgTU9WQkUsIEYxNkMsIEJNSSwgQVZYLCBQQ0xf
TVVMLCBBRVMsIFNTRTQuMiwgU1NFNC4xLCBDWDE2LCBBQk0sIFNTRTRBLCBTU1NFMywgU1NFMywg
U1NFMiwgU1NFLCBNTVggYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQgZXh0ZW5zaW9ucy4KK2Vu
ZGNob2ljZQpkaWZmIC0tZ2l0IGEvYXJjaC94ODYveDg2XzY0L01ha2VmaWxlLnVrIGIvYXJjaC94
ODYveDg2XzY0L01ha2VmaWxlLnVrCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LjhjOWJmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9hcmNoL3g4Ni94ODZfNjQvTWFrZWZpbGUudWsK
QEAgLTAsMCArMSwzNyBAQAorQVNGTEFHUyAgKz0gLURfX1g4Nl82NF9fCitBU0ZMQUdTICArPSAt
bTY0CitDRkxBR1MgICArPSAtRF9fWDg2XzY0X18KK0NGTEFHUyAgICs9IC1tNjQgLW1uby1yZWQt
em9uZSAtZm5vLXJlb3JkZXItYmxvY2tzIC1mbm8tYXN5bmNocm9ub3VzLXVud2luZC10YWJsZXMK
K0NYWEZMQUdTICs9IC1EX19YODZfNjRfXworQ1hYRkxBR1MgKz0gLW02NCAtbW5vLXJlZC16b25l
IC1mbm8tcmVvcmRlci1ibG9ja3MgLWZuby1hc3luY2hyb25vdXMtdW53aW5kLXRhYmxlcworCitD
RkxBR1MtJChNQVJDSF9HRU5FUklDKSAgICAgICs9IC1tdHVuZT1nZW5lcmljCitDWFhGTEFHUy0k
KE1BUkNIX0dFTkVSSUMpICAgICs9IC1tdHVuZT1nZW5lcmljCitDRkxBR1MtJChNQVJDSF9OT0NP
TkEpICAgICAgICs9IC1tYXJjaD1ub2NvbmEKK0NYWEZMQUdTLSQoTUFSQ0hfTk9DT05BKSAgICAg
Kz0gLW1hcmNoPW5vY29uYQorQ0ZMQUdTLSQoTUFSQ0hfQ09SRTIpICAgICAgICArPSAtbWFyY2g9
Y29yZTIKK0NYWEZMQUdTLSQoTUFSQ0hfQ09SRTIpICAgICAgKz0gLW1hcmNoPWNvcmUyCitDRkxB
R1MtJChNQVJDSF9DT1JFSTcpICAgICAgICs9IC1tYXJjaD1jb3JlaTcKK0NYWEZMQUdTLSQoTUFS
Q0hfQ09SRUk3KSAgICAgKz0gLW1hcmNoPWNvcmVpNworQ0ZMQUdTLSQoTUFSQ0hfQ09SRUk3QVZY
KSAgICArPSAtbWFyY2g9Y29yZWk3LWF2eAorQ1hYRkxBR1MtJChNQVJDSF9DT1JFSTdBVlgpICAr
PSAtbWFyY2g9Y29yZWk3LWF2eAorQ0ZMQUdTLSQoTUFSQ0hfQ09SRUk3QVZYSSkgICArPSAtbWFy
Y2g9Y29yZS1hdngtaQorQ1hYRkxBR1MtJChNQVJDSF9DT1JFSTdBVlhJKSArPSAtbWFyY2g9Y29y
ZS1hdngtaQorQ0ZMQUdTLSQoTUFSQ0hfQVRPTSkgICAgICAgICArPSAtbWFyY2g9YXRvbQorQ1hY
RkxBR1MtJChNQVJDSF9BVE9NKSAgICAgICArPSAtbWFyY2g9YXRvbQorQ0ZMQUdTLSQoTUFSQ0hf
SzgpICAgICAgICAgICArPSAtbWFyY2g9azgKK0NYWEZMQUdTLSQoTUFSQ0hfSzgpICAgICAgICAg
Kz0gLW1hcmNoPWs4CitDRkxBR1MtJChNQVJDSF9LOFNTRTMpICAgICAgICs9IC1tYXJjaD1rOC1z
c2UzCitDWFhGTEFHUy0kKE1BUkNIX0s4U1NFMykgICAgICs9IC1tYXJjaD1rOC1zc2UzCitDRkxB
R1MtJChNQVJDSF9BTURGQU0xMCkgICAgICs9IC1tYXJjaD1hbWRmYW0xMAorQ1hYRkxBR1MtJChN
QVJDSF9BTURGQU0xMCkgICArPSAtbWFyY2g9YW1kZmFtMTAKK0NGTEFHUy0kKE1BUkNIX0JEVkVS
MSkgICAgICAgKz0gLW1hcmNoPWJkdmVyMQorQ1hYRkxBR1MtJChNQVJDSF9CRFZFUjEpICAgICAr
PSAtbWFyY2g9YmR2ZXIxCitDRkxBR1MtJChNQVJDSF9CRFZFUjIpICAgICAgICs9IC1tYXJjaD1i
ZHZlcjIKK0NYWEZMQUdTLSQoTUFSQ0hfQkRWRVIyKSAgICAgKz0gLW1hcmNoPWJkdmVyMgorQ0ZM
QUdTLSQoTUFSQ0hfQkRWRVIzKSAgICAgICArPSAtbWFyY2g9YmR2ZXIzCitDWFhGTEFHUy0kKE1B
UkNIX0JEVkVSMykgICAgICs9IC1tYXJjaD1iZHZlcjMKK0NGTEFHUy0kKE1BUkNIX0JUVkVSMSkg
ICAgICAgKz0gLW1hcmNoPWJ0dmVyMQorQ1hYRkxBR1MtJChNQVJDSF9CVFZFUjEpICAgICArPSAt
bWFyY2g9YnR2ZXIxCitDRkxBR1MtJChNQVJDSF9CVFZFUjIpICAgICAgICs9IC1tYXJjaD1idHZl
cjIKK0NYWEZMQUdTLSQoTUFSQ0hfQlRWRVIyKSAgICAgKz0gLW1hcmNoPWJ0dmVyMgpkaWZmIC0t
Z2l0IGEvYXJjaC94ODZfNjQvQ29tcGlsZXIudWsgYi9hcmNoL3g4Nl82NC9Db21waWxlci51awpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTU0NzBlZC4uMDAwMDAwMAotLS0gYS9hcmNo
L3g4Nl82NC9Db21waWxlci51aworKysgL2Rldi9udWxsCkBAIC0xLDYgKzAsMCBAQAotIyBzZXQg
Y3Jvc3MgY29tcGlsZQotaWZlcSAoJChDUk9TU19DT01QSUxFKSwpCi1pZm5lcSAoJChVS19BUkNI
KSwkKEhPU1RBUkNIKSkKLQlDUk9TU19DT01QSUxFIDo9IHg4Nl82NC1saW51eC1nbnUtCi1lbmRp
ZgotZW5kaWYKZGlmZiAtLWdpdCBhL2FyY2gveDg2XzY0L0NvbmZpZy51ayBiL2FyY2gveDg2XzY0
L0NvbmZpZy51awpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2E0OWVlZC4uMDAwMDAw
MAotLS0gYS9hcmNoL3g4Nl82NC9Db25maWcudWsKKysrIC9kZXYvbnVsbApAQCAtMSw4OSArMCww
IEBACi1jaG9pY2UKLQlwcm9tcHQgIlByb2Nlc3NvciBPcHRpbWl6YXRpb24iCi0JZGVmYXVsdCBN
QVJDSF9HRU5FUklDCi0JaGVscAotCQlPcHRpbWl6ZSB0aGUgY29kZSBmb3Igc2VsZWN0ZWQgdGFy
Z2V0IHByb2Nlc3NvcgotCQlHZW5lcmljIHg4Nl82NCBkb2VzIG5vdCBlbmFibGUgYW55IGFkZGl0
aW9uYWwgQ1BVIGZlYXR1cmVzCi0JCShlLmcuLCBTU0UsIDNETm93ISkgYW5kIHByb2R1Y2VzIGhp
Z2hseSBwcm90YWJsZSBjb2RlIGZvciB4ODYuCi0KLWNvbmZpZyBNQVJDSF9OQVRJVkUKLQlib29s
ICJBdXRvLWRldGVjdCBob3N0IENQVSIKLQloZWxwCi0JCU9wdGltaXplIGNvbXBpbGF0aW9uIHRv
IGhvc3QgQ1BVCi0JCVBsZWFzZSBub3RlIHRoYXQgdGhpcyBvcHRpb24gd2lsbCBmYWlsIGluIGNh
c2Ugb2YgY3Jvc3MtY29tcGlsYXRpb24KLQotY29uZmlnIE1BUkNIX0dFTkVSSUMKLQlib29sICJH
ZW5lcmljIDY0LWJpdCIKLQloZWxwCi0JCUNvbXBpbGUgZm9yIDY0LWJpdCBjb21wYXRpYmxlIHg4
NiBDUFVzCi0KLWNvbmZpZyBNQVJDSF9OT0NPTkEKLQlib29sICJJbnRlbCBQZW50aXVtIDQvWGVv
biAoTm9jb25hKSIKLQloZWxwCi0JCUltcHJvdmVkIHZlcnNpb24gb2YgSW50ZWwgUGVudGl1bSA0
IENQVSB3aXRoIDY0LWJpdCBleHRlbnNpb25zLCBNTVgsIFNTRSwgU1NFMiBhbmQgU1NFMyBpbnN0
cnVjdGlvbiBzZXQgc3VwcG9ydC4KLQotY29uZmlnIE1BUkNIX0NPUkUyCi0JYm9vbCAiSW50ZWwg
Q29yZSAyL1hlb24iCi0JaGVscAotCQlJbnRlbCBDb3JlIDIgQ1BVIHdpdGggNjQtYml0IGV4dGVu
c2lvbnMsIE1NWCwgU1NFLCBTU0UyLCBTU0UzIGFuZCBTU1NFMyBpbnN0cnVjdGlvbiBzZXQgc3Vw
cG9ydC4KLQotY29uZmlnIE1BUkNIX0NPUkVJNwotCWJvb2wgIkludGVsIENvcmUgaTcvWGVvbiIK
LQloZWxwCi0JCUludGVsIENvcmUgaTcgQ1BVIHdpdGggNjQtYml0IGV4dGVuc2lvbnMsIE1NWCwg
U1NFLCBTU0UyLCBTU0UzLCBTU1NFMywgU1NFNC4xIGFuZCBTU0U0LjIgaW5zdHJ1Y3Rpb24gc2V0
IHN1cHBvcnQuCi0KLWNvbmZpZyBNQVJDSF9DT1JFSTdBVlgKLQlib29sICJJbnRlbCBDb3JlIGk3
L1hlb24gK0FWWCIKLQloZWxwCi0JCUludGVsIENvcmUgaTcgQ1BVIHdpdGggNjQtYml0IGV4dGVu
c2lvbnMsIE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBTU1NFMywgU1NFNC4xLCBTU0U0LjIsIEFWWCwg
QUVTIGFuZCBQQ0xNVUwgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuCi0KLWNvbmZpZyBNQVJDSF9D
T1JFSTdBVlhJCi0JYm9vbCAiSW50ZWwgQ29yZS9YZW9uICtBVlggK1JEUk5EIgotCWhlbHAKLQkJ
SW50ZWwgQ29yZSBDUFUgd2l0aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIsIFNT
RTMsIFNTU0UzLCBTU0U0LjEsIFNTRTQuMiwgQVZYLCBBRVMsIFBDTE1VTCwgRlNHU0JBU0UsIFJE
Uk5EIGFuZCBGMTZDIGluc3RydWN0aW9uIHNldCBzdXBwb3J0LgotCi1jb25maWcgTUFSQ0hfQVRP
TQotCWJvb2wgIkludGVsIEF0b20gNjQtYml0IgotCWhlbHAKLQkJSW50ZWwgQXRvbSBDUFUgd2l0
aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIsIFNTRTMgYW5kIFNTU0UzIGluc3Ry
dWN0aW9uIHNldCBzdXBwb3J0LgotCi1jb25maWcgTUFSQ0hfSzgKLQlib29sICJBTUQgQXRobG9u
NjQvT3B0ZXJvbiIKLQloZWxwCi0JCVByb2Nlc3NvcnMgYmFzZWQgb24gdGhlIEFNRCBLOCBjb3Jl
IHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldCBzdXBwb3J0LCBpbmNsdWRpbmcgdGhlIEFNRCBP
cHRlcm9uLCBBdGhsb24gNjQsIGFuZCBBdGhsb24gNjQgRlggcHJvY2Vzc29ycy4gKFRoaXMgc3Vw
ZXJzZXRzIE1NWCwgU1NFLCBTU0UyLCAzRE5vdyEsIGVuaGFuY2VkIDNETm93ISBhbmQgNjQtYml0
IGluc3RydWN0aW9uIHNldCBleHRlbnNpb25zLikKLQotY29uZmlnIE1BUkNIX0s4U1NFMwotCWJv
b2wgIkFNRCBBdGhsb242NC9PcHRlcm9uICtTU0UzIgotCWhlbHAKLQkJSW1wcm92ZWQgdmVyc2lv
bnMgb2YgQU1EIEs4IGNvcmVzIHdpdGggU1NFMyBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4KLQot
Y29uZmlnIE1BUkNIX0FNREZBTTEwCi0JYm9vbCAiQU1EIEZhbWlseSAxMGggY29yZXMiCi0JaGVs
cAotCQlDUFVzIGJhc2VkIG9uIEFNRCBGYW1pbHkgMTBoIGNvcmVzIHdpdGggeDg2LTY0IGluc3Ry
dWN0aW9uIHNldCBzdXBwb3J0LiAoVGhpcyBzdXBlcnNldHMgTU1YLCBTU0UsIFNTRTIsIFNTRTMs
IFNTRTRBLCAzRE5vdyEsIGVuaGFuY2VkIDNETm93ISwgQUJNIGFuZCA2NC1iaXQgaW5zdHJ1Y3Rp
b24gc2V0IGV4dGVuc2lvbnMuKQotCi1jb25maWcgTUFSQ0hfQlRWRVIxCi0JYm9vbCAiQU1EIEZh
bWlseSAxNGggY29yZXMiCi0JaGVscAotCQlDUFVzIGJhc2VkIG9uIEFNRCBGYW1pbHkgMTRoIGNv
cmVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldCBzdXBwb3J0LiAoVGhpcyBzdXBlcnNldHMg
TU1YLCBTU0UsIFNTRTIsIFNTRTMsIFNTU0UzLCBTU0U0QSwgQ1gxNiwgQUJNIGFuZCA2NC1iaXQg
aW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuKQotCi1jb25maWcgTUFSQ0hfQkRWRVIxCi0JYm9v
bCAiQU1EIEZhbWlseSAxNWggY29yZXMgKGJkdmVyMSkiCi0JaGVscAotCQlDUFVzIGJhc2VkIG9u
IEFNRCBGYW1pbHkgMTVoIGNvcmVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldCBzdXBwb3J0
LiAoVGhpcyBzdXBlcnNldHMgRk1BNCwgQVZYLCBYT1AsIExXUCwgQUVTLCBQQ0xfTVVMLCBDWDE2
LCBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NFNEEsIFNTU0UzLCBTU0U0LjEsIFNTRTQuMiwgQUJN
IGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuKQotCi1jb25maWcgTUFSQ0hf
QkRWRVIyCi0JYm9vbCAiQU1EIEZhbWlseSAxNWggY29yZXMgKGJkdmVyMikiCi0JaGVscAotCQlB
TUQgRmFtaWx5IDE1aCBjb3JlIGJhc2VkIENQVXMgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rpb24gc2V0
IHN1cHBvcnQuIChUaGlzIHN1cGVyc2V0cyBCTUksIFRCTSwgRjE2QywgRk1BLCBBVlgsIFhPUCwg
TFdQLCBBRVMsIFBDTF9NVUwsIENYMTYsIE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBTU0U0QSwgU1NT
RTMsIFNTRTQuMSwgU1NFNC4yLCBBQk0gYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQgZXh0ZW5z
aW9ucy4pCi0KLWNvbmZpZyBNQVJDSF9CRFZFUjMKLQlib29sICJBTUQgRmFtaWx5IDE1aCBjb3Jl
cyAoYmR2ZXIzKSIKLQloZWxwCi0JCUFNRCBGYW1pbHkgMTVoIGNvcmUgYmFzZWQgQ1BVcyB3aXRo
IHg4Ni02NCBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4gKFRoaXMgc3VwZXJzZXRzIEJNSSwgVEJN
LCBGMTZDLCBGTUEsIEFWWCwgWE9QLCBMV1AsIEFFUywgUENMX01VTCwgQ1gxNiwgTU1YLCBTU0Us
IFNTRTIsIFNTRTMsIFNTRTRBLCBTU1NFMywgU1NFNC4xLCBTU0U0LjIsIEFCTSBhbmQgNjQtYml0
IGluc3RydWN0aW9uIHNldCBleHRlbnNpb25zLgotCi1jb25maWcgTUFSQ0hfQlRWRVIyCi0JYm9v
bCAiQU1EIEZhbWlseSAxNmggY29yZXMiCi0JaGVscAotCQlDUFVzIGJhc2VkIG9uIEFNRCBGYW1p
bHkgMTZoIGNvcmVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldCBzdXBwb3J0LiBUaGlzIGlu
Y2x1ZGVzIE1PVkJFLCBGMTZDLCBCTUksIEFWWCwgUENMX01VTCwgQUVTLCBTU0U0LjIsIFNTRTQu
MSwgQ1gxNiwgQUJNLCBTU0U0QSwgU1NTRTMsIFNTRTMsIFNTRTIsIFNTRSwgTU1YIGFuZCA2NC1i
aXQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuCi1lbmRjaG9pY2UKZGlmZiAtLWdpdCBhL2Fy
Y2gveDg2XzY0L01ha2VmaWxlLnVrIGIvYXJjaC94ODZfNjQvTWFrZWZpbGUudWsKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhjOWJmZTMuLjAwMDAwMDAKLS0tIGEvYXJjaC94ODZfNjQv
TWFrZWZpbGUudWsKKysrIC9kZXYvbnVsbApAQCAtMSwzNyArMCwwIEBACi1BU0ZMQUdTICArPSAt
RF9fWDg2XzY0X18KLUFTRkxBR1MgICs9IC1tNjQKLUNGTEFHUyAgICs9IC1EX19YODZfNjRfXwot
Q0ZMQUdTICAgKz0gLW02NCAtbW5vLXJlZC16b25lIC1mbm8tcmVvcmRlci1ibG9ja3MgLWZuby1h
c3luY2hyb25vdXMtdW53aW5kLXRhYmxlcwotQ1hYRkxBR1MgKz0gLURfX1g4Nl82NF9fCi1DWFhG
TEFHUyArPSAtbTY0IC1tbm8tcmVkLXpvbmUgLWZuby1yZW9yZGVyLWJsb2NrcyAtZm5vLWFzeW5j
aHJvbm91cy11bndpbmQtdGFibGVzCi0KLUNGTEFHUy0kKE1BUkNIX0dFTkVSSUMpICAgICAgKz0g
LW10dW5lPWdlbmVyaWMKLUNYWEZMQUdTLSQoTUFSQ0hfR0VORVJJQykgICAgKz0gLW10dW5lPWdl
bmVyaWMKLUNGTEFHUy0kKE1BUkNIX05PQ09OQSkgICAgICAgKz0gLW1hcmNoPW5vY29uYQotQ1hY
RkxBR1MtJChNQVJDSF9OT0NPTkEpICAgICArPSAtbWFyY2g9bm9jb25hCi1DRkxBR1MtJChNQVJD
SF9DT1JFMikgICAgICAgICs9IC1tYXJjaD1jb3JlMgotQ1hYRkxBR1MtJChNQVJDSF9DT1JFMikg
ICAgICArPSAtbWFyY2g9Y29yZTIKLUNGTEFHUy0kKE1BUkNIX0NPUkVJNykgICAgICAgKz0gLW1h
cmNoPWNvcmVpNwotQ1hYRkxBR1MtJChNQVJDSF9DT1JFSTcpICAgICArPSAtbWFyY2g9Y29yZWk3
Ci1DRkxBR1MtJChNQVJDSF9DT1JFSTdBVlgpICAgICs9IC1tYXJjaD1jb3JlaTctYXZ4Ci1DWFhG
TEFHUy0kKE1BUkNIX0NPUkVJN0FWWCkgICs9IC1tYXJjaD1jb3JlaTctYXZ4Ci1DRkxBR1MtJChN
QVJDSF9DT1JFSTdBVlhJKSAgICs9IC1tYXJjaD1jb3JlLWF2eC1pCi1DWFhGTEFHUy0kKE1BUkNI
X0NPUkVJN0FWWEkpICs9IC1tYXJjaD1jb3JlLWF2eC1pCi1DRkxBR1MtJChNQVJDSF9BVE9NKSAg
ICAgICAgICs9IC1tYXJjaD1hdG9tCi1DWFhGTEFHUy0kKE1BUkNIX0FUT00pICAgICAgICs9IC1t
YXJjaD1hdG9tCi1DRkxBR1MtJChNQVJDSF9LOCkgICAgICAgICAgICs9IC1tYXJjaD1rOAotQ1hY
RkxBR1MtJChNQVJDSF9LOCkgICAgICAgICArPSAtbWFyY2g9azgKLUNGTEFHUy0kKE1BUkNIX0s4
U1NFMykgICAgICAgKz0gLW1hcmNoPWs4LXNzZTMKLUNYWEZMQUdTLSQoTUFSQ0hfSzhTU0UzKSAg
ICAgKz0gLW1hcmNoPWs4LXNzZTMKLUNGTEFHUy0kKE1BUkNIX0FNREZBTTEwKSAgICAgKz0gLW1h
cmNoPWFtZGZhbTEwCi1DWFhGTEFHUy0kKE1BUkNIX0FNREZBTTEwKSAgICs9IC1tYXJjaD1hbWRm
YW0xMAotQ0ZMQUdTLSQoTUFSQ0hfQkRWRVIxKSAgICAgICArPSAtbWFyY2g9YmR2ZXIxCi1DWFhG
TEFHUy0kKE1BUkNIX0JEVkVSMSkgICAgICs9IC1tYXJjaD1iZHZlcjEKLUNGTEFHUy0kKE1BUkNI
X0JEVkVSMikgICAgICAgKz0gLW1hcmNoPWJkdmVyMgotQ1hYRkxBR1MtJChNQVJDSF9CRFZFUjIp
ICAgICArPSAtbWFyY2g9YmR2ZXIyCi1DRkxBR1MtJChNQVJDSF9CRFZFUjMpICAgICAgICs9IC1t
YXJjaD1iZHZlcjMKLUNYWEZMQUdTLSQoTUFSQ0hfQkRWRVIzKSAgICAgKz0gLW1hcmNoPWJkdmVy
MwotQ0ZMQUdTLSQoTUFSQ0hfQlRWRVIxKSAgICAgICArPSAtbWFyY2g9YnR2ZXIxCi1DWFhGTEFH
Uy0kKE1BUkNIX0JUVkVSMSkgICAgICs9IC1tYXJjaD1idHZlcjEKLUNGTEFHUy0kKE1BUkNIX0JU
VkVSMikgICAgICAgKz0gLW1hcmNoPWJ0dmVyMgotQ1hYRkxBR1MtJChNQVJDSF9CVFZFUjIpICAg
ICArPSAtbWFyY2g9YnR2ZXIyCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRl
dmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFp
bG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:25 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807d-0006EV-1l; Mon, 16 Apr 2018 09:08:25 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807b-0006E8-B6
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:23 +0000
X-Inumbo-ID: 929ff661-4155-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::609])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 929ff661-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:22 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=vmqrn1BiptrgcIHqCM8sfhngJSUKsnrTZpYhp4Ts7UA=;
 b=D65sYkBP/3MyQVTaH7QbYK0OoLpxropdGzpZwylnP8lmNkA6PLLMQb+M5zXgfdpWwYY8shcFX6jC5X4nniMTphafwHJuNvQ6QD59lX4TQ9HqThflh3us4TO7+AjvRgOpng1/UoiCzmht9Q/gKbWgnZoixrD1BzX6Bb/ONw8qTJU=
Received: from DB6PR0802CA0027.eurprd08.prod.outlook.com (2603:10a6:4:a3::13)
 by AM5PR0802MB2420.eurprd08.prod.outlook.com (2603:10a6:203:9f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.9; Mon, 16 Apr
 2018 09:08:11 +0000
Received: from AM5EUR03FT024.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::201) by DB6PR0802CA0027.outlook.office365.com
 (2603:10a6:4:a3::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:11 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT024.mail.protection.outlook.com (10.152.16.175) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:10 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:07:59 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:37 +0800
Message-ID: <1523869666-30659-5-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(39860400002)(346002)(39380400002)(396003)(2980300002)(438002)(199004)(189003)(110136005)(6666003)(26826003)(8936002)(72206003)(106466001)(36756003)(8676002)(4326008)(316002)(50226002)(59450400001)(478600001)(5660300001)(76176011)(54906003)(26005)(77096007)(356003)(53946003)(50466002)(51416003)(48376002)(305945005)(446003)(336012)(11346002)(476003)(2616005)(426003)(486006)(186003)(126002)(104016004)(246002)(86362001)(2906002)(575784001)(47776003)(49486002)(16586007)(106002)(217873001)(559001)(579004);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0802MB2420; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT024;
 1:mHKjO2GdEbJ1ldqSLvPgSlg58mvM7jIwQqcHx/9JY1fo22O+1IlSICwQxrTBj0rKNLdcBhhRIx2Ytg+N4Ikdu4/qw2Rj+gkgNSwYLWbpn0N9L4o3O6lBXmTLtbstvn9s
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM5PR0802MB2420; 
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 3:etFcaUFh5zRtsNzgkmVqcIbcnc8ZrELM8IWcWLwkDQ1o1llNlj+KhLMnDGbspWwu4hboBqkR9p34BSdub05Ekb6qGt+o+lNbez8moKw6VVdLbNtaJbxye+MUpedvhSm6UjD+vpRHPh0KIry/iSZr3bzM6rVbfnSQCd9G4m6EmX7IMjwc4rFmJOerPHd2S7UVyyez8ZXVtq9eZEnrf+tLS4Ln0lj1GtWfmjdiV9W9DNom+gsV4erz5EfWcH6DA+G85IEsm5s0DhR2cPK3SOCvwcvTnAGiLjPXG0lDWmzML49SZXF0SmVrdvE28zV/uqyW/REx+uNFBpD/O/sRlfnOr1ifoZwAEHbQAwv0yYCnwNU=;
 25:zjWMz6QTjGmE0mlF8ACzoqWF/RE2IMizCbQobUkazG2TLIPt1wF/0T1mC5Z/mj0vp7gBjxNanghcAmFSwTyeLGc1jELiajLYrFNmqHHcPvIhR9V3IZ/9kvLtvw6sodGiAL7XAqEfOr9nRxeP04kl+eBJ3/9hB13SCmtfj9DiPRisOitPCMn1RUZHNxpvRixNDy2Wh3eCXxprQjmLj4C0XtQ/CdU516cuUgl6AZ1UXhjfiyhRv27ZWf7I/1B+43Vbz97+DR0TDYfmdZHDitGJUwYRtXHx76PkcMiwz9nsx/jaUpMvlYNem9fbDLz55/rTyhGg8Ntq5pgZyiU6yGBZIw==
X-MS-TrafficTypeDiagnostic: AM5PR0802MB2420:
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 31:DOTgqE9qo4xXvbe6rsKwd3dg65Mn2Sgv0NgpyKjrZc9PhxV5MEA2FDAdm32nZ02N8G1BRxVL6VdkZZljgl+rR9Qh87dcIJbUNXLiwF1GzebfB1QdD3I/XOOFiVUCB1Mjr/FUrO7Ua5IjtLBVf3rzXQR55ZEC1cO6xF+RHNtCEQPNcRfjY5GGdirdz8yQdXwZrgVP1FThQAs8jAE2fYNZjLb+mmuTQoLq7nGaNRp9bvM=;
 20:5CmKou17yUpEJbikIwpsS1YfcvFE2SCwluohs5wGszLqrtXgu7dyKGmEhCgpf/Di765znF5nnn2Wlq8tt+srqEMRq7jjp7ln+O8n8ZaDsftuqrARXPvAbPbjZHCSNt/x4sZVVbWevYTo25c6CDHzWwPrljZGs75E1+Il0/x3VngeryHZPc2073YLZVr2sRlnfGcqAZVVSE8DIwEj1Z6dA3hTHIWa+Fv62hcEvo/hK7O6k8RMHSHnWTKZ9xbeyJ2u;
 4:OsN0eW9LewzrsVSQsvrrjyTmpv9HW9asjn8oVUU51b7Gt4L07+Pp3qnKBUIyneUo3kHBbWPQEoauRhAWxlLI7f5c9UPryTUAEL+IfByzSV3r0ZqWPvuOVkkd17edAOcjUovI+H4sLvhrxFiO1Giryq/qtyGQFRhO8avRxD6gmNb1lXNc0GKcMyHkt2kfhh63lpDyndehhZpKy8ozZPN0uc1qE81Pb5YzD51AzKAIo0NoS9sb0DOHDZXJi/uXa3Os3rIDqb0A54pGqSUFs8fYQV2pOEfsQ/TzMwanYUjzf1Es7LMPElSqVXB6p2GotF/M
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM5PR0802MB2420DADCC9F0687EC48C6B1B9EB00@AM5PR0802MB2420.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(3231232)(944501327)(52105095)(93006095)(93004095)(6055026)(6041310)(20161123562045)(20161123560045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:AM5PR0802MB2420; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0802MB2420; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM5PR0802MB2420;
 23:gVIOz7yfMgfRngvpIzJhej2j6kZEs4YWGbaIDTj?=
 =?us-ascii?Q?oTmbImLc+MlxtDS8CBdxAuJXwsC+FL15ocNZwd6ddb+6Ma/gqrtDaXWkrfA8?=
 =?us-ascii?Q?wyKLzEQVXXnXfVsUTv6s9GhqGlZMDCDaeV8JoVsOw9DUPP5NHDbF2oUKmXuR?=
 =?us-ascii?Q?EPeao33T224W48UunS8JBasKJWbmr0H5dCw0JnoLgY3Wkykd9rfuYdr37+0n?=
 =?us-ascii?Q?+4pgvSV2YRS5an/aC7TZISbL0qZyr7juS+EXr7SXtWH3/4cBbWt+coFA1uX/?=
 =?us-ascii?Q?JQLrhUh/4QOvTwPUbTMrFWaAYOvHmWSZL65auUihJRX5cb0P9beZn9alDH+0?=
 =?us-ascii?Q?s6usmOFlk1+EmYUA3BIRAiVZFkYaxng17NcA9uwkbpDExzbwY6gA6OCErdcz?=
 =?us-ascii?Q?L+KsBNtIY9QbzLmZKnaNPlSSCLvzCtKq2Zw7bQfV+F8MVhcMvYQsz4kune08?=
 =?us-ascii?Q?DuJgR7CGyciF+AC13XDmZkFgfVKJuM5RC/l9uYGj+Eh0Z8X2GVjaD/KcnETG?=
 =?us-ascii?Q?rzhEZ32YRwmq/KVnutvG61guX7u6RMdrf0Br36rfUWWrNY86v0MNmigjX14i?=
 =?us-ascii?Q?4RIe/AUVemWhkVyLiwMZwZwJ1eaQyf8rxQ9G2heCR6IuW8Y32fQMAFPtETLL?=
 =?us-ascii?Q?PWUABdkA36wNpibilmayvA9g4dRudIOnKObswvQ039XmPhHhjaJAW/FNGPT5?=
 =?us-ascii?Q?b+IYPD/gp/rnoqbqnhH9Nqbhtap1hOq1QL0SIsYctOnW786CKWqr3+QSWAOY?=
 =?us-ascii?Q?2FVcO5x4SfvT/5t3Mg8nrh++jszXeDbpIvxRDhyx6yJJi0kQxA6M5+GPTD3q?=
 =?us-ascii?Q?FTBNodRlm8cpLst3LMXR/FJcgZCdFByvGFBMkk7//5Xck3tel9DbcA+XNy4l?=
 =?us-ascii?Q?kAYJQfboP/BNixRc9hs4TDE0WgpaAQWbGSSEmY24egFMDAJA+5v21DOLcrd6?=
 =?us-ascii?Q?7nFEbIKZmW8TzMb6tgJ/yacBrc2Jynis3/VMA8IGCUDhsEG5h1OAABbaPSf+?=
 =?us-ascii?Q?lPcUGq9PqN6kWFGX92bz+Tc1JK61GfxdjLJQZf6i3g7pd+h9BYlZuZck674B?=
 =?us-ascii?Q?8DWCF4A7vVGWKDw8dPZmsm8y58dkQ6oeUhXr7Xux2ucFVR9dhAE/Q8u5SyVJ?=
 =?us-ascii?Q?vKKNFoKjcF92nZpl6FjCh67EPXivtG9RZ485pTs054lfZ0D7Gi4/zXspwHyJ?=
 =?us-ascii?Q?pZPBvKpykxa7NTLGbbiZeFeHAqeS0pR/WlO5d?=
X-Microsoft-Antispam-Message-Info: IHAuldY9YiYpayG7Kl+7dd7sc+dxdQTYPypLIxmGk3WcRtQV9bjjN9xtlvgnmUNxTvJJzi7wxEuQfJMtXr7qZkjGYnclYk1EO0TJf7z9+WztT7tOSgnmHnu2yI+2BlsYkwaHGLykxJNIPOI+W1ZtSq1+Y8RbePwZL2YQl3mW8zhvMR+3br47zzk/uXqa9greziaHTDHN7ReKM5jVkx0ZOKn5aMRayTwGI8W5y6e8/D14OuIfEIMd7WI4YCmlxpY8G9KzWXLPepgW9yuhcEluXqIKWHfmhJdmmuv/lPOo8PRTC87ZTN/Pz+daup7F/aDCl6GjotP6c8g9ieK9Vzqm+bdSgMg9e73KtvtaMVZW1I3gW3L141mZNXHyHOgYKrql356PzH+mlNt983SdBq7eRNz8VxaYTKcvvegL75c39UQ=
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 6:BSsjLMtvn69R2xbZK0HiZve0ks/Z0/I6/KMWNY63fhKiQeUhjwOR38d/yeXnaY02JWCT3DmK2N3NlrRpqSnkTGAuxgfnx2n9aHIDPG3idWMQmxcM1X9nsH8V/UCQP+zwIMykluc7znfLJ1NJA1hpMwDJBRsTAVmeiX6iL12M1oJMpQK5J36R5FveeXcp49qe7Ffj/UNFkuOUB4bDg8bYudTxtZODzkK1hxEDfO024P6j/ohQEeLamPQ264cnkkf2aQwI/oUGqbCd2g3qwoPLPYnHEk9O37R1gcfbBrM7ruAy0MN6BRD6Plb3ifJ+efkIFFfWsJvLRF9IyXp1h0gzctlDOYY+Oa/Lw2Z+qlgKkjh/WDs3fg5w0lREEsEsZ2cTAjyYnc9A16R3w+U9sowaucKBAdhR6JS0C6iyghMBunM5Faks3dzktXA1JBmiVMn9UXLXBB7LVl1zaxOEyVWhrRWo1PtMnXGJ9RvdqdMYn0OxCv4LtgYeuidFc2bWNOnF;
 5:TXGDvOfkXebEB4BI99OecB7O3lU3sP+KZgecmTDIXD+6IzSOarjLWnx0Ah1jRdR9bniYbZCC/p3Kf+iEIRBBpRQgXn9nQghVg69OPU2TjPJGZQyYpqGyw9nEKeOWfn39aILqe0HOigXHtf8lzVnbVmPl/pD5tvN1uX0WsHNPHIY=;
 24:z8Yo8i00IvDL2cbGDn+EZJUdwIbNe5nC0cmni3lJb8yMum3tbqxUv80OiM0xMlDKDV2wEI1nNpkQ+gXyS9XGyCjQMe6+JMoFMwhAQrmIO20=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 7:DOsbjUNUYGc6aFs9qlixPf0rYXwUwc1RUkjGEIkBKwtp1YB5icr2mtRWMV6mneS2pWihHODFl+vygyMWsETTtDvuIgvAP3qUa1pIAy+YstTHKotEUvPpK/ZoiMETXHCBl+zOkaMjdnAxWJZEHlmkdV7QxEcFpGdNGoEZwhhD/pWCHQTmxxsCHWUHcEpMAa+PMasYvdDul6E3n3SO1Da99bqPzp+r/smzBOpKU8uSobhKr0eb9yMNq8r+A7gbR/VV
X-MS-Office365-Filtering-Correlation-Id: 4c231ff6-b3ae-4670-467b-08d5a37993da
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:10.7375 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4c231ff6-b3ae-4670-467b-08d5a37993da
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2420
Subject: [Minios-devel] [UNIKRAFT PATCH 04/13] include: Reorganize base
 include folder to reflect CPU family schema
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2UgbW9kaWZ5IHRoZSBVbmlrcmFmdCdzIGJhc2UgaW5jbHVkZSBmb2xkZXIgdG8gcmVmbGVjdCB0
aGUgQ1BVCmZhbWlseSBzY2hlbWEgaW4gdGhpcyBwYXRjaC4gVW5pa3JhZnQgaGFzIHRoZSBmb3Jl
c2lnaCB0byB3cmFwCmRpZmZlcmVudCBhcmNoaXRlY3R1cmVzJyBoZWFkZXJzIHRvIGFyY2gvKi5o
LiBTbywgYWZ0ZXIgZm9sZGVyCnJlb3JnYW5pemF0aW9uLCB3ZSBqdXN0IHVwZGF0ZSB0aGUgaW5j
bHVkZSBwYXRocyBpbiBhcmNoLyouaCBpcwplbm91Z2guCgpTaWduZWQtb2ZmLWJ5OiBXZWkgQ2hl
biA8V2VpLkNoZW5AYXJtLmNvbT4KLS0tCiBpbmNsdWRlL3VrL2FyY2gvYXJtL2FybS9hdG9taWMu
aCAgICAgIHwgNjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBpbmNsdWRlL3VrL2Fy
Y2gvYXJtL2FybS9pbnRzaXplcy5oICAgIHwgNDUgKysrKysrKysrKysrKysrKysrKysrCiBpbmNs
dWRlL3VrL2FyY2gvYXJtL2FybS9sY3B1LmggICAgICAgIHwgNTkgKysrKysrKysrKysrKysrKysr
KysrKysrKysrKwogaW5jbHVkZS91ay9hcmNoL2FybS9hcm0vbGltaXRzLmggICAgICB8IDQ1ICsr
KysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS91ay9hcmNoL2FybS9hcm0vdHlwZXMuaCAgICAg
ICB8IDM1ICsrKysrKysrKysrKysrKysrCiBpbmNsdWRlL3VrL2FyY2gvYXJtL2F0b21pYy5oICAg
ICAgICAgIHwgNjQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBpbmNsdWRlL3VrL2Fy
Y2gvYXJtL2ludHNpemVzLmggICAgICAgIHwgNDUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBpbmNs
dWRlL3VrL2FyY2gvYXJtL2xjcHUuaCAgICAgICAgICAgIHwgNTkgLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQogaW5jbHVkZS91ay9hcmNoL2FybS9saW1pdHMuaCAgICAgICAgICB8IDQ1IC0t
LS0tLS0tLS0tLS0tLS0tLS0tLQogaW5jbHVkZS91ay9hcmNoL2FybS90eXBlcy5oICAgICAgICAg
ICB8IDM1IC0tLS0tLS0tLS0tLS0tLS0tCiBpbmNsdWRlL3VrL2FyY2gvYXRvbWljLmggICAgICAg
ICAgICAgIHwgIDggKystLQogaW5jbHVkZS91ay9hcmNoL2xjcHUuaCAgICAgICAgICAgICAgICB8
ICA4ICsrLS0KIGluY2x1ZGUvdWsvYXJjaC9saW1pdHMuaCAgICAgICAgICAgICAgfCAxNiArKysr
LS0tLQogaW5jbHVkZS91ay9hcmNoL3R5cGVzLmggICAgICAgICAgICAgICB8IDE2ICsrKystLS0t
CiBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9hdG9taWMuaCAgIHwgNDUgKysrKysrKysrKysr
KysrKysrKysrCiBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9pbnRzaXplcy5oIHwgNDUgKysr
KysrKysrKysrKysrKysrKysrCiBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9sY3B1LmggICAg
IHwgNzMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGluY2x1ZGUvdWsvYXJj
aC94ODYveDg2XzY0L2xpbWl0cy5oICAgfCA0NiArKysrKysrKysrKysrKysrKysrKysrCiBpbmNs
dWRlL3VrL2FyY2gveDg2L3g4Nl82NC90eXBlcy5oICAgIHwgMzggKysrKysrKysrKysrKysrKysr
CiBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2F0b21pYy5oICAgICAgIHwgNDUgLS0tLS0tLS0tLS0t
LS0tLS0tLS0tCiBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2ludHNpemVzLmggICAgIHwgNDUgLS0t
LS0tLS0tLS0tLS0tLS0tLS0tCiBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaCAgICAgICAg
IHwgNzMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGluY2x1ZGUvdWsvYXJj
aC94ODZfNjQvbGltaXRzLmggICAgICAgfCA0NiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBpbmNs
dWRlL3VrL2FyY2gveDg2XzY0L3R5cGVzLmggICAgICAgIHwgMzggLS0tLS0tLS0tLS0tLS0tLS0t
CiAyNCBmaWxlcyBjaGFuZ2VkLCA1MTkgaW5zZXJ0aW9ucygrKSwgNTE5IGRlbGV0aW9ucygtKQog
Y3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtL2F0b21pYy5oCiBjcmVh
dGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9hcmNoL2FybS9hcm0vaW50c2l6ZXMuaAogY3JlYXRl
IG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtL2xjcHUuaAogY3JlYXRlIG1vZGUg
MTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0vYXJtL2xpbWl0cy5oCiBjcmVhdGUgbW9kZSAxMDA2
NDQgaW5jbHVkZS91ay9hcmNoL2FybS9hcm0vdHlwZXMuaAogZGVsZXRlIG1vZGUgMTAwNjQ0IGlu
Y2x1ZGUvdWsvYXJjaC9hcm0vYXRvbWljLmgKIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3Vr
L2FyY2gvYXJtL2ludHNpemVzLmgKIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gv
YXJtL2xjcHUuaAogZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC9hcm0vbGltaXRz
LmgKIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gvYXJtL3R5cGVzLmgKIGNyZWF0
ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9hdG9taWMuaAogY3JlYXRl
IG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2ludHNpemVzLmgKIGNyZWF0
ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9sY3B1LmgKIGNyZWF0ZSBt
b2RlIDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9saW1pdHMuaAogY3JlYXRlIG1v
ZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L3R5cGVzLmgKIGRlbGV0ZSBtb2Rl
IDEwMDY0NCBpbmNsdWRlL3VrL2FyY2gveDg2XzY0L2F0b21pYy5oCiBkZWxldGUgbW9kZSAxMDA2
NDQgaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9pbnRzaXplcy5oCiBkZWxldGUgbW9kZSAxMDA2NDQg
aW5jbHVkZS91ay9hcmNoL3g4Nl82NC9sY3B1LmgKIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRl
L3VrL2FyY2gveDg2XzY0L2xpbWl0cy5oCiBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91ay9h
cmNoL3g4Nl82NC90eXBlcy5oCgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNoL2FybS9hcm0v
YXRvbWljLmggYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybS9hdG9taWMuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZDU0ZWVhCi0tLSAvZGV2L251bGwKKysrIGIvaW5jbHVk
ZS91ay9hcmNoL2FybS9hcm0vYXRvbWljLmgKQEAgLTAsMCArMSw2NCBAQAorLyogU1BEWC1MaWNl
bnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLworLyoKKyAqIFBvcnQgZnJvbSBNaW5pLU9T
OiBpbmNsdWRlL2FybS9vcy5oCisgKi8KKy8qCisgKiBDb3B5cmlnaHQgKGMpIDIwMDkgQ2l0cml4
IFN5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVND
TEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfX1VLQVJDSF9BVE9NSUNf
SF9fCisjZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKKyNlbmRpZgor
CisvKioKKyAqIHVrYXJjaF9maW5kX2xzYml0IC0gZmluZCBmaXJzdCAobG93ZXN0KSBzZXQgYml0
IGluIHdvcmQuCisgKiBAd29yZDogVGhlIHdvcmQgdG8gc2VhcmNoCisgKgorICogVW5kZWZpbmVk
IGlmIG5vIGJpdCBleGlzdHMsIHNvIGNvZGUgc2hvdWxkIGNoZWNrIGFnYWluc3QgMCBmaXJzdC4K
KyAqLworc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHVrYXJjaF9maW5kX2xzYml0KHVuc2ln
bmVkIGxvbmcgd29yZCkKK3sKKwlpbnQgY2x6OworCisJLyogeHh4eHgxMDAwMCA9IHdvcmQKKwkg
KiB4eHh4eDAxMTExID0gd29yZCAtIDEKKwkgKiAwMDAwMDExMTExID0gd29yZCBeICh3b3JkIC0g
MSkKKwkgKiAgICAgIDQgICAgID0gMzEgLSBjbHood29yZCBeICh3b3JkIC0gMSkpCisJICovCisK
KwlfX2FzbV9fKCJzdWIgcjAsICVbd29yZF0sICMxXG4iCisJCSJlb3IgcjAsIHIwLCAlW3dvcmRd
XG4iCisJCSJjbHogJVtjbHpdLCByMFxuIgorCQk6CisJCS8qIE91dHB1dHM6ICovCisJCVtjbHpd
ICI9ciIoY2x6KQorCQk6CisJCS8qIElucHV0czogKi8KKwkJW3dvcmRdICJyIih3b3JkKQorCQk6
CisJCS8qIENsb2JiZXJzOiAqLworCQkicjAiKTsKKworCXJldHVybiAzMSAtIGNsejsKK30KZGlm
ZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vYXJtL2ludHNpemVzLmggYi9pbmNsdWRlL3Vr
L2FyY2gvYXJtL2FybS9pbnRzaXplcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjViMzZjNGIKLS0tIC9kZXYvbnVsbAorKysgYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybS9p
bnRzaXplcy5oCkBAIC0wLDAgKzEsNDUgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBC
U0QtMy1DbGF1c2UgKi8KKy8qCisgKiBBdXRob3JzOiBTaW1vbiBLdWVuemVyIDxzaW1vbi5rdWVu
emVyQG5lY2xhYi5ldT4KKyAqCisgKgorICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3Bl
IEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBv
ciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogICAgdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JT
ICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1Ig
Q09OVFJJQlVUT1JTIEJFCisgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqCisgKiBUSElT
IEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgorICov
CisKKyNpZiAoKCFkZWZpbmVkIF9fVUtBUkNIX1RZUEVTX0hfXykgJiYgKCFkZWZpbmVkIF9fVUtB
UkNIX0xJTUlUU19IX18pKQorI2Vycm9yIERvIG5vdCBpbmNsdWRlIHRoaXMgaGVhZGVyIGRpcmVj
dGx5CisjZW5kaWYKKworI2RlZmluZSBfX0NfSVNfOCAgICAgLyogY2hhciAqLworI2RlZmluZSBf
X1NfSVNfMTYgICAgLyogc2hvcnQgKi8KKyNkZWZpbmUgX19JX0lTXzMyICAgIC8qIGludCAqLwor
I2RlZmluZSBfX0xfSVNfMzIgICAgLyogbG9uZyAqLworI2RlZmluZSBfX0xMX0lTXzY0ICAgLyog
bG9uZyBsb25nICovCisjZGVmaW5lIF9fUFRSX0lTXzMyIC8qIHZvaWQgKiAqLwpkaWZmIC0tZ2l0
IGEvaW5jbHVkZS91ay9hcmNoL2FybS9hcm0vbGNwdS5oIGIvaW5jbHVkZS91ay9hcmNoL2FybS9h
cm0vbGNwdS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNkZWZmYzMKLS0t
IC9kZXYvbnVsbAorKysgYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybS9sY3B1LmgKQEAgLTAsMCAr
MSw1OSBAQAorLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLworLyoK
KyAqIENvcHlyaWdodCAoYykgMjAwOSwgQ2l0cml4IFN5c3RlbXMsIEluYy4KKyAqIENvcHlyaWdo
dCAoYykgMjAxNywgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9S
UyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisg
KiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRP
UlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAq
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkK
KyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX19VS0FS
Q0hfTENQVV9IX18KKyNlcnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQor
I2VuZGlmCisKK3N0cnVjdCBfX3JlZ3MgeworCXVuc2lnbmVkIGxvbmcgcjA7CisJdW5zaWduZWQg
bG9uZyByMTsKKwl1bnNpZ25lZCBsb25nIHIyOworCXVuc2lnbmVkIGxvbmcgcjM7CisJdW5zaWdu
ZWQgbG9uZyByNDsKKwl1bnNpZ25lZCBsb25nIHI1OworCXVuc2lnbmVkIGxvbmcgcjY7CisJdW5z
aWduZWQgbG9uZyByNzsKKwl1bnNpZ25lZCBsb25nIHI4OworCXVuc2lnbmVkIGxvbmcgcjk7CisJ
dW5zaWduZWQgbG9uZyByMTA7CisJdW5zaWduZWQgbG9uZyByMTE7CisJdW5zaWduZWQgbG9uZyBy
MTI7Cit9OworCisvKiBXZSBwcm9iYWJseSBvbmx5IG5lZWQgImRtYiIgaGVyZSwgYnV0IHdlJ2xs
IHN0YXJ0IGJ5IGJlaW5nIHBhcmFub2lkLiAqLworI2lmbmRlZiBtYgorI2RlZmluZSBtYigpIF9f
YXNtX18oImRzYiIgOiA6IDogIm1lbW9yeSIpCisjZW5kaWYKKworI2lmbmRlZiBybWIKKyNkZWZp
bmUgcm1iKCkgX19hc21fXygiZHNiIiA6IDogOiAibWVtb3J5IikKKyNlbmRpZgorCisjaWZuZGVm
IHdtYgorI2RlZmluZSB3bWIoKSBfX2FzbV9fKCJkc2IiIDogOiA6ICJtZW1vcnkiKQorI2VuZGlm
CmRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybS9saW1pdHMuaCBiL2luY2x1ZGUv
dWsvYXJjaC9hcm0vYXJtL2xpbWl0cy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjA4NTc2MWMKLS0tIC9kZXYvbnVsbAorKysgYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybS9s
aW1pdHMuaApAQCAtMCwwICsxLDQ1IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNE
LTItQ2xhdXNlICovCisvKgorICogQ29weXJpZ2h0IChjKSAyMDA5LCBDaXRyaXggU3lzdGVtcywg
SW5jLgorICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3Jh
dGlvbi4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhP
UiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVU
SE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICog
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8K
KworI2lmbmRlZiBfX1VLQVJDSF9MSU1JVFNfSF9fCisjZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhp
cyBoZWFkZXIgZGlyZWN0bHkKKyNlbmRpZgorCisjZGVmaW5lIF9fUEFHRV9TSElGVAkJMTIKKwor
I2lmZGVmIF9fQVNTRU1CTFlfXworI2RlZmluZSBfX1BBR0VfU0laRQkJKDEgPDwgX19QQUdFX1NI
SUZUKQorI2RlZmluZSBfX1BBR0VfTUFTSwkJKH4oKF9fUEFHRV9TSVpFKSAtIDEpKQorI2Vsc2UK
KyNkZWZpbmUgX19QQUdFX1NJWkUJCSgxVUxMIDw8IF9fUEFHRV9TSElGVCkKKyNkZWZpbmUgX19Q
QUdFX01BU0sJCSh+KChfX1BBR0VfU0laRSkgLSAxKSkKKyNlbmRpZgorCisjZGVmaW5lIF9fU1RB
Q0tfU0laRV9QQUdFX09SREVSCTIKKyNkZWZpbmUgX19TVEFDS19TSVpFCQkoX19QQUdFX1NJWkUg
KiAoMSA8PCBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUikpCisKKyNkZWZpbmUgX19XT1JEU0laRQkJ
MzIKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vYXJtL3R5cGVzLmggYi9pbmNsdWRl
L3VrL2FyY2gvYXJtL2FybS90eXBlcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLmU3NDVjMGMKLS0tIC9kZXYvbnVsbAorKysgYi9pbmNsdWRlL3VrL2FyY2gvYXJtL2FybS90
eXBlcy5oCkBAIC0wLDAgKzEsMzUgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVQg
Ki8KKy8qCisgKiBDb3B5cmlnaHQgKGMpIDIwMDItMjAwMywgSyBBIEZyYXNlciAmIFIgTmV1Z2Vi
YXVlcgorICogQ29weXJpZ2h0IChjKSAyMDA1LCBHcnplZ29yeiBNaWxvcywgSW50ZWwgUmVzZWFy
Y2ggQ2FtYnJpZGdlCisgKgorICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBv
ZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weQorICogb2YgdGhpcyBzb2Z0
d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiks
IHRvCisgKiBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRp
bmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZQorICogcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5
LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yCisgKiBzZWxs
IGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRo
ZSBTb2Z0d2FyZSBpcworICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9uczoKKyAqCisgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQg
dGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbgorICogYWxsIGNvcGll
cyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCisgKgorICogVEhFIFNP
RlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQs
IEVYUFJFU1MgT1IKKyAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhF
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAorICogRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisg
KiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBE
QU1BR0VTIE9SIE9USEVSCisgKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENP
TlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORworICogRlJPTSwgT1VUIE9GIE9SIElO
IENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUgorICogREVB
TElOR1MgSU4gVEhFIFNPRlRXQVJFLgorICovCisKKyNpZm5kZWYgX19VS0FSQ0hfVFlQRVNfSF9f
CisjZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKKyNlbmRpZgorCisj
aWZuZGVmIF9fQVNTRU1CTFlfXworCitzdHJ1Y3QgX19wdGUgeyB1bnNpZ25lZCBsb25nIHB0ZV9s
b3csIHB0ZV9oaWdoOyB9OworI2RlZmluZSBucHRlKHgpICh7IHVuc2lnbmVkIGxvbmcgbG9uZyBf
eCA9ICh4KTsgXAorCQkgKChwdGVfdCkgeyh1bnNpZ25lZCBsb25nKShfeCksICh1bnNpZ25lZCBs
b25nKShfeD4+MzIpfSk7IH0pCisKKyNlbmRpZiAvKiAhX19BU1NFTUJMWV9fICovCmRpZmYgLS1n
aXQgYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2F0b21pYy5oIGIvaW5jbHVkZS91ay9hcmNoL2FybS9h
dG9taWMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWQ1NGVlYS4uMDAwMDAwMAot
LS0gYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2F0b21pYy5oCisrKyAvZGV2L251bGwKQEAgLTEsNjQg
KzAsMCBAQAotLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZSAqLwotLyoK
LSAqIFBvcnQgZnJvbSBNaW5pLU9TOiBpbmNsdWRlL2FybS9vcy5oCi0gKi8KLS8qCi0gKiBDb3B5
cmlnaHQgKGMpIDIwMDkgQ2l0cml4IFN5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUiBBTkQg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9SIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lm
bmRlZiBfX1VLQVJDSF9BVE9NSUNfSF9fCi0jZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFk
ZXIgZGlyZWN0bHkKLSNlbmRpZgotCi0vKioKLSAqIHVrYXJjaF9maW5kX2xzYml0IC0gZmluZCBm
aXJzdCAobG93ZXN0KSBzZXQgYml0IGluIHdvcmQuCi0gKiBAd29yZDogVGhlIHdvcmQgdG8gc2Vh
cmNoCi0gKgotICogVW5kZWZpbmVkIGlmIG5vIGJpdCBleGlzdHMsIHNvIGNvZGUgc2hvdWxkIGNo
ZWNrIGFnYWluc3QgMCBmaXJzdC4KLSAqLwotc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHVr
YXJjaF9maW5kX2xzYml0KHVuc2lnbmVkIGxvbmcgd29yZCkKLXsKLQlpbnQgY2x6OwotCi0JLyog
eHh4eHgxMDAwMCA9IHdvcmQKLQkgKiB4eHh4eDAxMTExID0gd29yZCAtIDEKLQkgKiAwMDAwMDEx
MTExID0gd29yZCBeICh3b3JkIC0gMSkKLQkgKiAgICAgIDQgICAgID0gMzEgLSBjbHood29yZCBe
ICh3b3JkIC0gMSkpCi0JICovCi0KLQlfX2FzbV9fKCJzdWIgcjAsICVbd29yZF0sICMxXG4iCi0J
CSJlb3IgcjAsIHIwLCAlW3dvcmRdXG4iCi0JCSJjbHogJVtjbHpdLCByMFxuIgotCQk6Ci0JCS8q
IE91dHB1dHM6ICovCi0JCVtjbHpdICI9ciIoY2x6KQotCQk6Ci0JCS8qIElucHV0czogKi8KLQkJ
W3dvcmRdICJyIih3b3JkKQotCQk6Ci0JCS8qIENsb2JiZXJzOiAqLwotCQkicjAiKTsKLQotCXJl
dHVybiAzMSAtIGNsejsKLX0KZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vaW50c2l6
ZXMuaCBiL2luY2x1ZGUvdWsvYXJjaC9hcm0vaW50c2l6ZXMuaApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggNWIzNmM0Yi4uMDAwMDAwMAotLS0gYS9pbmNsdWRlL3VrL2FyY2gvYXJtL2lu
dHNpemVzLmgKKysrIC9kZXYvbnVsbApAQCAtMSw0NSArMCwwIEBACi0vKiBTUERYLUxpY2Vuc2Ut
SWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICovCi0vKgotICogQXV0aG9yczogU2ltb24gS3Vlbnpl
ciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+Ci0gKgotICoKLSAqIENvcHlyaWdodCAoYykgMjAx
NywgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhv
bGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KLSAqICAgIHRoaXMg
c29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5E
IENPTlRSSUJVVE9SUyAiQVMgSVMiCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQotICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
Ci0gKgotICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4g
QU5ZIFdBWS4KLSAqLwotCi0jaWYgKCghZGVmaW5lZCBfX1VLQVJDSF9UWVBFU19IX18pICYmICgh
ZGVmaW5lZCBfX1VLQVJDSF9MSU1JVFNfSF9fKSkKLSNlcnJvciBEbyBub3QgaW5jbHVkZSB0aGlz
IGhlYWRlciBkaXJlY3RseQotI2VuZGlmCi0KLSNkZWZpbmUgX19DX0lTXzggICAgIC8qIGNoYXIg
Ki8KLSNkZWZpbmUgX19TX0lTXzE2ICAgIC8qIHNob3J0ICovCi0jZGVmaW5lIF9fSV9JU18zMiAg
ICAvKiBpbnQgKi8KLSNkZWZpbmUgX19MX0lTXzMyICAgIC8qIGxvbmcgKi8KLSNkZWZpbmUgX19M
TF9JU182NCAgIC8qIGxvbmcgbG9uZyAqLwotI2RlZmluZSBfX1BUUl9JU18zMiAvKiB2b2lkICog
Ki8KZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vbGNwdS5oIGIvaW5jbHVkZS91ay9h
cmNoL2FybS9sY3B1LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNkZWZmYzMuLjAw
MDAwMDAKLS0tIGEvaW5jbHVkZS91ay9hcmNoL2FybS9sY3B1LmgKKysrIC9kZXYvbnVsbApAQCAt
MSw1OSArMCwwIEBACi0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlICov
Ci0vKgotICogQ29weXJpZ2h0IChjKSAyMDA5LCBDaXRyaXggU3lzdGVtcywgSW5jLgotICogQ29w
eXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4KLSAqCi0g
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUiBBTkQgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9SIE9SIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBf
X1VLQVJDSF9MQ1BVX0hfXwotI2Vycm9yIERvIG5vdCBpbmNsdWRlIHRoaXMgaGVhZGVyIGRpcmVj
dGx5Ci0jZW5kaWYKLQotc3RydWN0IF9fcmVncyB7Ci0JdW5zaWduZWQgbG9uZyByMDsKLQl1bnNp
Z25lZCBsb25nIHIxOwotCXVuc2lnbmVkIGxvbmcgcjI7Ci0JdW5zaWduZWQgbG9uZyByMzsKLQl1
bnNpZ25lZCBsb25nIHI0OwotCXVuc2lnbmVkIGxvbmcgcjU7Ci0JdW5zaWduZWQgbG9uZyByNjsK
LQl1bnNpZ25lZCBsb25nIHI3OwotCXVuc2lnbmVkIGxvbmcgcjg7Ci0JdW5zaWduZWQgbG9uZyBy
OTsKLQl1bnNpZ25lZCBsb25nIHIxMDsKLQl1bnNpZ25lZCBsb25nIHIxMTsKLQl1bnNpZ25lZCBs
b25nIHIxMjsKLX07Ci0KLS8qIFdlIHByb2JhYmx5IG9ubHkgbmVlZCAiZG1iIiBoZXJlLCBidXQg
d2UnbGwgc3RhcnQgYnkgYmVpbmcgcGFyYW5vaWQuICovCi0jaWZuZGVmIG1iCi0jZGVmaW5lIG1i
KCkgX19hc21fXygiZHNiIiA6IDogOiAibWVtb3J5IikKLSNlbmRpZgotCi0jaWZuZGVmIHJtYgot
I2RlZmluZSBybWIoKSBfX2FzbV9fKCJkc2IiIDogOiA6ICJtZW1vcnkiKQotI2VuZGlmCi0KLSNp
Zm5kZWYgd21iCi0jZGVmaW5lIHdtYigpIF9fYXNtX18oImRzYiIgOiA6IDogIm1lbW9yeSIpCi0j
ZW5kaWYKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vbGltaXRzLmggYi9pbmNsdWRl
L3VrL2FyY2gvYXJtL2xpbWl0cy5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwODU3
NjFjLi4wMDAwMDAwCi0tLSBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vbGltaXRzLmgKKysrIC9kZXYv
bnVsbApAQCAtMSw0NSArMCwwIEBACi0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTIt
Q2xhdXNlICovCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDA5LCBDaXRyaXggU3lzdGVtcywgSW5j
LgotICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlv
bi4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUiBB
TkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9S
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQot
I2lmbmRlZiBfX1VLQVJDSF9MSU1JVFNfSF9fCi0jZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBo
ZWFkZXIgZGlyZWN0bHkKLSNlbmRpZgotCi0jZGVmaW5lIF9fUEFHRV9TSElGVAkJMTIKLQotI2lm
ZGVmIF9fQVNTRU1CTFlfXwotI2RlZmluZSBfX1BBR0VfU0laRQkJKDEgPDwgX19QQUdFX1NISUZU
KQotI2RlZmluZSBfX1BBR0VfTUFTSwkJKH4oKF9fUEFHRV9TSVpFKSAtIDEpKQotI2Vsc2UKLSNk
ZWZpbmUgX19QQUdFX1NJWkUJCSgxVUxMIDw8IF9fUEFHRV9TSElGVCkKLSNkZWZpbmUgX19QQUdF
X01BU0sJCSh+KChfX1BBR0VfU0laRSkgLSAxKSkKLSNlbmRpZgotCi0jZGVmaW5lIF9fU1RBQ0tf
U0laRV9QQUdFX09SREVSCTIKLSNkZWZpbmUgX19TVEFDS19TSVpFCQkoX19QQUdFX1NJWkUgKiAo
MSA8PCBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUikpCi0KLSNkZWZpbmUgX19XT1JEU0laRQkJMzIK
ZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC9hcm0vdHlwZXMuaCBiL2luY2x1ZGUvdWsvYXJj
aC9hcm0vdHlwZXMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTc0NWMwYy4uMDAw
MDAwMAotLS0gYS9pbmNsdWRlL3VrL2FyY2gvYXJtL3R5cGVzLmgKKysrIC9kZXYvbnVsbApAQCAt
MSwzNSArMCwwIEBACi0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUICovCi0vKgotICog
Q29weXJpZ2h0IChjKSAyMDAyLTIwMDMsIEsgQSBGcmFzZXIgJiBSIE5ldWdlYmF1ZXIKLSAqIENv
cHlyaWdodCAoYykgMjAwNSwgR3J6ZWdvcnogTWlsb3MsIEludGVsIFJlc2VhcmNoIENhbWJyaWRn
ZQotICoKLSAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0
byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKLSAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFz
c29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0bwotICogZGVh
bCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQg
bGltaXRhdGlvbiB0aGUKLSAqIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1
Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vcgotICogc2VsbCBjb3BpZXMgb2Yg
dGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUg
aXMKLSAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnM6Ci0gKgotICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlz
c2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KLSAqIGFsbCBjb3BpZXMgb3Igc3Vic3Rh
bnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgotICoKLSAqIFRIRSBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9S
Ci0gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSwKLSAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQVVUSE9SUyBP
UiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBP
VEhFUgotICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9S
VCBPUiBPVEhFUldJU0UsIEFSSVNJTkcKLSAqIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9O
IFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIKLSAqIERFQUxJTkdTIElOIFRI
RSBTT0ZUV0FSRS4KLSAqLwotCi0jaWZuZGVmIF9fVUtBUkNIX1RZUEVTX0hfXwotI2Vycm9yIERv
IG5vdCBpbmNsdWRlIHRoaXMgaGVhZGVyIGRpcmVjdGx5Ci0jZW5kaWYKLQotI2lmbmRlZiBfX0FT
U0VNQkxZX18KLQotc3RydWN0IF9fcHRlIHsgdW5zaWduZWQgbG9uZyBwdGVfbG93LCBwdGVfaGln
aDsgfTsKLSNkZWZpbmUgbnB0ZSh4KSAoeyB1bnNpZ25lZCBsb25nIGxvbmcgX3ggPSAoeCk7IFwK
LQkJICgocHRlX3QpIHsodW5zaWduZWQgbG9uZykoX3gpLCAodW5zaWduZWQgbG9uZykoX3g+PjMy
KX0pOyB9KQotCi0jZW5kaWYgLyogIV9fQVNTRU1CTFlfXyAqLwpkaWZmIC0tZ2l0IGEvaW5jbHVk
ZS91ay9hcmNoL2F0b21pYy5oIGIvaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oCmluZGV4IDMzMWJk
ODEuLmU3ZjQ2YmIgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvdWsvYXJjaC9hdG9taWMuaAorKysgYi9p
bmNsdWRlL3VrL2FyY2gvYXRvbWljLmgKQEAgLTM3LDE2ICszNywxNiBAQCBleHRlcm4gIkMiIHsK
ICNlbmRpZgogCiAjaWZkZWYgX19YODZfMzJfXwotI2luY2x1ZGUgPHVrL2FyY2gveDg2L2F0b21p
Yy5oPgorI2luY2x1ZGUgPHVrL2FyY2gveDg2L3g4Ni9hdG9taWMuaD4KICNlbmRpZgogI2lmZGVm
IF9fWDg2XzY0X18KLSNpbmNsdWRlIDx1ay9hcmNoL3g4Nl82NC9hdG9taWMuaD4KKyNpbmNsdWRl
IDx1ay9hcmNoL3g4Ni94ODZfNjQvYXRvbWljLmg+CiAjZW5kaWYKICNpZmRlZiBfX0FSTV8zMl9f
Ci0jaW5jbHVkZSA8dWsvYXJjaC9hcm0vYXRvbWljLmg+CisjaW5jbHVkZSA8dWsvYXJjaC9hcm0v
YXJtL2F0b21pYy5oPgogI2VuZGlmCiAjaWZkZWYgX19BUk1fNjRfXwotI2luY2x1ZGUgPHVrL2Fy
Y2gvYXJtNjQvYXRvbWljLmg+CisjaW5jbHVkZSA8dWsvYXJjaC9hcm0vYXJtNjQvYXRvbWljLmg+
CiAjZW5kaWYKIAogLyoqCmRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gvbGNwdS5oIGIvaW5j
bHVkZS91ay9hcmNoL2xjcHUuaAppbmRleCBlYTc4MGY3Li5hOWUxMGQyIDEwMDY0NAotLS0gYS9p
bmNsdWRlL3VrL2FyY2gvbGNwdS5oCisrKyBiL2luY2x1ZGUvdWsvYXJjaC9sY3B1LmgKQEAgLTQz
LDE2ICs0MywxNiBAQCBleHRlcm4gIkMiIHsKICNlbmRpZgogCiAjaWZkZWYgX19YODZfMzJfXwot
I2luY2x1ZGUgPHVrL2FyY2gveDg2L2xjcHUuaD4KKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODYv
bGNwdS5oPgogI2VuZGlmCiAjaWZkZWYgX19YODZfNjRfXwotI2luY2x1ZGUgPHVrL2FyY2gveDg2
XzY0L2xjcHUuaD4KKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODZfNjQvbGNwdS5oPgogI2VuZGlm
CiAjaWZkZWYgX19BUk1fMzJfXwotI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2xjcHUuaD4KKyNpbmNs
dWRlIDx1ay9hcmNoL2FybS9hcm0vbGNwdS5oPgogI2VuZGlmCiAjaWZkZWYgX19BUk1fNjRfXwot
I2luY2x1ZGUgPHVrL2FyY2gvYXJtNjQvbGNwdS5oPgorI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2Fy
bTY0L2xjcHUuaD4KICNlbmRpZgogCiAjaWZuZGVmIGxpa2VseQpkaWZmIC0tZ2l0IGEvaW5jbHVk
ZS91ay9hcmNoL2xpbWl0cy5oIGIvaW5jbHVkZS91ay9hcmNoL2xpbWl0cy5oCmluZGV4IDgxNjk0
ZDkuLmEwNjgzYWQgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvdWsvYXJjaC9saW1pdHMuaAorKysgYi9p
bmNsdWRlL3VrL2FyY2gvbGltaXRzLmgKQEAgLTM3LDMxICszNywzMSBAQAogI2RlZmluZSBfX1VL
QVJDSF9MSU1JVFNfSF9fCiAKICNpZmRlZiBfX1g4Nl8zMl9fCi0jaW5jbHVkZSA8dWsvYXJjaC94
ODYvbGltaXRzLmg+CisjaW5jbHVkZSA8dWsvYXJjaC94ODYveDg2L2xpbWl0cy5oPgogI2VuZGlm
CiAjaWZkZWYgX19YODZfNjRfXwotI2luY2x1ZGUgPHVrL2FyY2gveDg2XzY0L2xpbWl0cy5oPgor
I2luY2x1ZGUgPHVrL2FyY2gveDg2L3g4Nl82NC9saW1pdHMuaD4KICNlbmRpZgogI2lmZGVmIF9f
QVJNXzMyX18KLSNpbmNsdWRlIDx1ay9hcmNoL2FybS9saW1pdHMuaD4KKyNpbmNsdWRlIDx1ay9h
cmNoL2FybS9hcm0vbGltaXRzLmg+CiAjZW5kaWYKICNpZmRlZiBfX0FSTV82NF9fCi0jaW5jbHVk
ZSA8dWsvYXJjaC9hcm02NC9saW1pdHMuaD4KKyNpbmNsdWRlIDx1ay9hcmNoL2FybS9hcm02NC9s
aW1pdHMuaD4KICNlbmRpZgogCiAjaWZuZGVmIF9fQVNTRU1CTFlfXwogCiAjaWZkZWYgX19YODZf
MzJfXwotI2luY2x1ZGUgPHVrL2FyY2gveDg2L2ludHNpemVzLmg+CisjaW5jbHVkZSA8dWsvYXJj
aC94ODYveDg2L2ludHNpemVzLmg+CiAjZW5kaWYKICNpZmRlZiBfX1g4Nl82NF9fCi0jaW5jbHVk
ZSA8dWsvYXJjaC94ODZfNjQvaW50c2l6ZXMuaD4KKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODZf
NjQvaW50c2l6ZXMuaD4KICNlbmRpZgogI2lmZGVmIF9fQVJNXzMyX18KLSNpbmNsdWRlIDx1ay9h
cmNoL2FybS9pbnRzaXplcy5oPgorI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2FybS9pbnRzaXplcy5o
PgogI2VuZGlmCiAjaWZkZWYgX19BUk1fNjRfXwotI2luY2x1ZGUgPHVrL2FyY2gvYXJtNjQvaW50
c2l6ZXMuaD4KKyNpbmNsdWRlIDx1ay9hcmNoL2FybS9hcm02NC9pbnRzaXplcy5oPgogI2VuZGlm
CiAKICNpZiAoZGVmaW5lZCBfX0NfSVNfOCkKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC90
eXBlcy5oIGIvaW5jbHVkZS91ay9hcmNoL3R5cGVzLmgKaW5kZXggZThkNzcyNi4uZGQwNzgwMyAx
MDA2NDQKLS0tIGEvaW5jbHVkZS91ay9hcmNoL3R5cGVzLmgKKysrIGIvaW5jbHVkZS91ay9hcmNo
L3R5cGVzLmgKQEAgLTQxLDIwICs0MSwyMCBAQCBleHRlcm4gIkMiIHsKICNlbmRpZgogCiAjaWZk
ZWYgX19YODZfMzJfXwotI2luY2x1ZGUgPHVrL2FyY2gveDg2L2ludHNpemVzLmg+Ci0jaW5jbHVk
ZSA8dWsvYXJjaC94ODYvdHlwZXMuaD4KKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODYvaW50c2l6
ZXMuaD4KKyNpbmNsdWRlIDx1ay9hcmNoL3g4Ni94ODYvdHlwZXMuaD4KICNlbmRpZgogI2lmZGVm
IF9fWDg2XzY0X18KLSNpbmNsdWRlIDx1ay9hcmNoL3g4Nl82NC9pbnRzaXplcy5oPgotI2luY2x1
ZGUgPHVrL2FyY2gveDg2XzY0L3R5cGVzLmg+CisjaW5jbHVkZSA8dWsvYXJjaC94ODYveDg2XzY0
L2ludHNpemVzLmg+CisjaW5jbHVkZSA8dWsvYXJjaC94ODYveDg2XzY0L3R5cGVzLmg+CiAjZW5k
aWYKICNpZmRlZiBfX0FSTV8zMl9fCi0jaW5jbHVkZSA8dWsvYXJjaC9hcm0vaW50c2l6ZXMuaD4K
LSNpbmNsdWRlIDx1ay9hcmNoL2FybS90eXBlcy5oPgorI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2Fy
bS9pbnRzaXplcy5oPgorI2luY2x1ZGUgPHVrL2FyY2gvYXJtL2FybS90eXBlcy5oPgogI2VuZGlm
CiAjaWZkZWYgX19BUk1fNjRfXwotI2luY2x1ZGUgPHVrL2FyY2gvYXJtNjQvaW50c2l6ZXMuaD4K
LSNpbmNsdWRlIDx1ay9hcmNoL2FybTY0L3R5cGVzLmg+CisjaW5jbHVkZSA8dWsvYXJjaC9hcm0v
YXJtNjQvaW50c2l6ZXMuaD4KKyNpbmNsdWRlIDx1ay9hcmNoL2FybS9hcm02NC90eXBlcy5oPgog
I2VuZGlmCiAKICNpZm5kZWYgX19BU1NFTUJMWV9fCmRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2Fy
Y2gveDg2L3g4Nl82NC9hdG9taWMuaCBiL2luY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2F0b21p
Yy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk4NWMzODgKLS0tIC9kZXYv
bnVsbAorKysgYi9pbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9hdG9taWMuaApAQCAtMCwwICsx
LDQ1IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovCisvKgor
ICogUG9ydCBmcm9tIE1pbmktT1M6IGluY2x1ZGUveDg2L29zLmgKKyAqLworLyoKKyAqIENvcHly
aWdodCAoYykgMjAwOSBDaXRyaXggU3lzdGVtcywgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBD
T05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1Ig
Q09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworI2lmbmRl
ZiBfX1VLQVJDSF9BVE9NSUNfSF9fCisjZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIg
ZGlyZWN0bHkKKyNlbmRpZgorCisvKioKKyAqIHVrYXJjaF9maW5kX2xzYml0IC0gZmluZCBmaXJz
dCAobG93ZXN0KSBzZXQgYml0IGluIHdvcmQuCisgKiBAd29yZDogVGhlIHdvcmQgdG8gc2VhcmNo
CisgKgorICogVW5kZWZpbmVkIGlmIG5vIGJpdCBleGlzdHMsIHNvIGNvZGUgc2hvdWxkIGNoZWNr
IGFnYWluc3QgMCBmaXJzdC4KKyAqLworc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHVrYXJj
aF9maW5kX2xzYml0KHVuc2lnbmVkIGxvbmcgd29yZCkKK3sKKwlfX2FzbV9fKCJic2ZxICUxLCUw
IgorCQk6Ij1yIiAod29yZCkKKwkJOiJybSIgKHdvcmQpKTsKKwlyZXR1cm4gd29yZDsKK30KZGlm
ZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2ludHNpemVzLmggYi9pbmNsdWRl
L3VrL2FyY2gveDg2L3g4Nl82NC9pbnRzaXplcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLmUzZWY1MTAKLS0tIC9kZXYvbnVsbAorKysgYi9pbmNsdWRlL3VrL2FyY2gveDg2
L3g4Nl82NC9pbnRzaXplcy5oCkBAIC0wLDAgKzEsNDUgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVu
dGlmaWVyOiBCU0QtMy1DbGF1c2UgKi8KKy8qCisgKiBBdXRob3JzOiBTaW1vbiBLdWVuemVyIDxz
aW1vbi5rdWVuemVyQG5lY2xhYi5ldT4KKyAqCisgKgorICogQ29weXJpZ2h0IChjKSAyMDE3LCBO
RUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVy
IG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogICAgdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09O
VFJJQlVUT1JTICJBUyBJUyIKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBI
T0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCisgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
CisgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkg
V0FZLgorICovCisKKyNpZiAoKCFkZWZpbmVkIF9fVUtBUkNIX1RZUEVTX0hfXykgJiYgKCFkZWZp
bmVkIF9fVUtBUkNIX0xJTUlUU19IX18pKQorI2Vycm9yIERvIG5vdCBpbmNsdWRlIHRoaXMgaGVh
ZGVyIGRpcmVjdGx5CisjZW5kaWYKKworI2RlZmluZSBfX0NfSVNfOCAgICAvKiBjaGFyICovCisj
ZGVmaW5lIF9fU19JU18xNiAgIC8qIHNob3J0ICovCisjZGVmaW5lIF9fSV9JU18zMiAgIC8qIGlu
dCAqLworI2RlZmluZSBfX0xfSVNfNjQgICAvKiBsb25nICovCisjZGVmaW5lIF9fTExfSVNfNjQg
IC8qIGxvbmcgbG9uZyAqLworI2RlZmluZSBfX1BUUl9JU182NCAvKiB2b2lkICogKi8KZGlmZiAt
LWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2xjcHUuaCBiL2luY2x1ZGUvdWsvYXJj
aC94ODYveDg2XzY0L2xjcHUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5j
ZDY2N2U1Ci0tLSAvZGV2L251bGwKKysrIGIvaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvbGNw
dS5oCkBAIC0wLDAgKzEsNzMgQEAKKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1D
bGF1c2UgKi8KKy8qCisgKiBBdXRob3JzOiBHcnplZ29yeiBNaWxvcyA8Z20yODFAY2FtLmFjLnVr
PgorICogICAgICAgICAgU2ltb24gS3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+Cisg
KgorICogQ29weXJpZ2h0IChjKSAyMDA1LCBHcnplZ29yeiBNaWxvcywgSW50ZWwgUmVzZWFyY2gg
Q2FtYnJpZGdlCisgKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENv
cnBvcmF0aW9uLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwK
KyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
CisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4K
KyAqLworCisjaWZuZGVmIF9fVUtBUkNIX0xDUFVfSF9fCisjZXJyb3IgRG8gbm90IGluY2x1ZGUg
dGhpcyBoZWFkZXIgZGlyZWN0bHkKKyNlbmRpZgorCitzdHJ1Y3QgX19yZWdzIHsKKwl1bnNpZ25l
ZCBsb25nIHIxNTsKKwl1bnNpZ25lZCBsb25nIHIxNDsKKwl1bnNpZ25lZCBsb25nIHIxMzsKKwl1
bnNpZ25lZCBsb25nIHIxMjsKKwl1bnNpZ25lZCBsb25nIHJicDsKKwl1bnNpZ25lZCBsb25nIHJi
eDsKKy8qIGFyZ3VtZW50czogbm9uIGludGVycnVwdHMvbm9uIHRyYWNpbmcgc3lzY2FsbHMgb25s
eSBzYXZlIHVwdG8gaGVyZSovCisJdW5zaWduZWQgbG9uZyByMTE7CisJdW5zaWduZWQgbG9uZyBy
MTA7CisJdW5zaWduZWQgbG9uZyByOTsKKwl1bnNpZ25lZCBsb25nIHI4OworCXVuc2lnbmVkIGxv
bmcgcmF4OworCXVuc2lnbmVkIGxvbmcgcmN4OworCXVuc2lnbmVkIGxvbmcgcmR4OworCXVuc2ln
bmVkIGxvbmcgcnNpOworCXVuc2lnbmVkIGxvbmcgcmRpOworCXVuc2lnbmVkIGxvbmcgb3JpZ19y
YXg7CisvKiBlbmQgb2YgYXJndW1lbnRzICovCisvKiBjcHUgZXhjZXB0aW9uIGZyYW1lIG9yIHVu
ZGVmaW5lZCAqLworCXVuc2lnbmVkIGxvbmcgcmlwOworCXVuc2lnbmVkIGxvbmcgY3M7CisJdW5z
aWduZWQgbG9uZyBlZmxhZ3M7CisJdW5zaWduZWQgbG9uZyByc3A7CisJdW5zaWduZWQgbG9uZyBz
czsKKy8qIHRvcCBvZiBzdGFjayBwYWdlICovCit9OworCisjaWZuZGVmIG1iCisjZGVmaW5lIG1i
KCkgICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCJtZmVuY2UiIDogOiA6ICJtZW1vcnkiKQorI2Vu
ZGlmCisKKyNpZm5kZWYgcm1iCisjZGVmaW5lIHJtYigpICAgX19hc21fXyBfX3ZvbGF0aWxlX18g
KCJsZmVuY2UiIDogOiA6ICJtZW1vcnkiKQorI2VuZGlmCisKKyNpZm5kZWYgd21iCisjZGVmaW5l
IHdtYigpICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCJzZmVuY2UiIDogOiA6ICJtZW1vcnkiKQor
I2VuZGlmCmRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC9saW1pdHMuaCBi
L2luY2x1ZGUvdWsvYXJjaC94ODYveDg2XzY0L2xpbWl0cy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmE5NjliZDEKLS0tIC9kZXYvbnVsbAorKysgYi9pbmNsdWRlL3VrL2Fy
Y2gveDg2L3g4Nl82NC9saW1pdHMuaApAQCAtMCwwICsxLDQ2IEBACisvKiBTUERYLUxpY2Vuc2Ut
SWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovCisvKgorICogQ29weXJpZ2h0IChjKSAyMDA5LCBD
aXRyaXggU3lzdGVtcywgSW5jLgorICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3BlIEx0
ZC4sIE5FQyBDb3Jwb3JhdGlvbi4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8g
RVZFTlQgU0hBTEwgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VD
SCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfX1VLQVJDSF9MSU1JVFNfSF9fCisjZXJyb3IgRG8g
bm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKKyNlbmRpZgorCisjZGVmaW5lIF9fUEFH
RV9TSElGVAkJMTIKKworI2lmZGVmIF9fQVNTRU1CTFlfXworI2RlZmluZSBfX1BBR0VfU0laRQkJ
KDEgPDwgX19QQUdFX1NISUZUKQorI2RlZmluZSBfX1BBR0VfTUFTSwkJKH4oKF9fUEFHRV9TSVpF
KSAtIDEpKQorI2Vsc2UKKyNkZWZpbmUgX19QQUdFX1NJWkUJCSgxVUxMIDw8IF9fUEFHRV9TSElG
VCkKKyNkZWZpbmUgX19QQUdFX01BU0sJCSh+KChfX1BBR0VfU0laRSkgLSAxKSkKKyNlbmRpZgor
CisjZGVmaW5lIF9fU1RBQ0tfU0laRV9QQUdFX09SREVSCTQKKyNkZWZpbmUgX19TVEFDS19TSVpF
CQkoX19QQUdFX1NJWkUgKiAoMSA8PCBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUikpCisKKyNkZWZp
bmUgX19XT1JEU0laRQkJNjQKKyNkZWZpbmUgX19XT1JEU0laRV9DT01QQVQzMgkxCmRpZmYgLS1n
aXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2L3g4Nl82NC90eXBlcy5oIGIvaW5jbHVkZS91ay9hcmNo
L3g4Ni94ODZfNjQvdHlwZXMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41
NTQ3YjM3Ci0tLSAvZGV2L251bGwKKysrIGIvaW5jbHVkZS91ay9hcmNoL3g4Ni94ODZfNjQvdHlw
ZXMuaApAQCAtMCwwICsxLDM4IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUICov
CisvKgorICogQ29weXJpZ2h0IChjKSAyMDAyLTIwMDMsIEsgQSBGcmFzZXIgJiBSIE5ldWdlYmF1
ZXIKKyAqIENvcHlyaWdodCAoYykgMjAwNSwgR3J6ZWdvcnogTWlsb3MsIEludGVsIFJlc2VhcmNo
IENhbWJyaWRnZQorICoKKyAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2Yg
Y2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKKyAqIG9mIHRoaXMgc29mdHdh
cmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0
bworICogZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5n
IHdpdGhvdXQgbGltaXRhdGlvbiB0aGUKKyAqIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwg
bWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vcgorICogc2VsbCBj
b3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUg
U29mdHdhcmUgaXMKKyAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnM6CisgKgorICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRo
aXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KKyAqIGFsbCBjb3BpZXMg
b3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgorICoKKyAqIFRIRSBTT0ZU
V0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBF
WFBSRVNTIE9SCisgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKKyAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICog
QVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFN
QUdFUyBPUiBPVEhFUgorICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05U
UkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcKKyAqIEZST00sIE9VVCBPRiBPUiBJTiBD
T05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIKKyAqIERFQUxJ
TkdTIElOIFRIRSBTT0ZUV0FSRS4KKyAqLworCisjaWZuZGVmIF9fVUtBUkNIX1RZUEVTX0hfXwor
I2Vycm9yIERvIG5vdCBpbmNsdWRlIHRoaXMgaGVhZGVyIGRpcmVjdGx5CisjZW5kaWYKKworI2lm
bmRlZiBfX0FTU0VNQkxZX18KKworc3RydWN0IF9fcHRlIHsgdW5zaWduZWQgbG9uZyBwdGU7IH07
CisjZGVmaW5lIG5wdGUoeCkgKChzdHJ1Y3QgX19wdGUpIHsgKHgpIH0pCisKKyNkZWZpbmUgX1dP
UkQgIi5xdWFkIgorCisjZWxzZQorI2RlZmluZSBfV09SRCAucXVhZAorI2VuZGlmIC8qICFfX0FT
U0VNQkxZX18gKi8KZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvYXRvbWljLmgg
Yi9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2F0b21pYy5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA5ODVjMzg4Li4wMDAwMDAwCi0tLSBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvYXRv
bWljLmgKKysrIC9kZXYvbnVsbApAQCAtMSw0NSArMCwwIEBACi0vKiBTUERYLUxpY2Vuc2UtSWRl
bnRpZmllcjogQlNELTItQ2xhdXNlICovCi0vKgotICogUG9ydCBmcm9tIE1pbmktT1M6IGluY2x1
ZGUveDg2L29zLmgKLSAqLwotLyoKLSAqIENvcHlyaWdodCAoYykgMjAwOSBDaXRyaXggU3lzdGVt
cywgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAot
ICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICog
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAq
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
Ci0gKiBTVUNIIERBTUFHRS4KLSAqLwotI2lmbmRlZiBfX1VLQVJDSF9BVE9NSUNfSF9fCi0jZXJy
b3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKLSNlbmRpZgotCi0vKioKLSAq
IHVrYXJjaF9maW5kX2xzYml0IC0gZmluZCBmaXJzdCAobG93ZXN0KSBzZXQgYml0IGluIHdvcmQu
Ci0gKiBAd29yZDogVGhlIHdvcmQgdG8gc2VhcmNoCi0gKgotICogVW5kZWZpbmVkIGlmIG5vIGJp
dCBleGlzdHMsIHNvIGNvZGUgc2hvdWxkIGNoZWNrIGFnYWluc3QgMCBmaXJzdC4KLSAqLwotc3Rh
dGljIGlubGluZSB1bnNpZ25lZCBsb25nIHVrYXJjaF9maW5kX2xzYml0KHVuc2lnbmVkIGxvbmcg
d29yZCkKLXsKLQlfX2FzbV9fKCJic2ZxICUxLCUwIgotCQk6Ij1yIiAod29yZCkKLQkJOiJybSIg
KHdvcmQpKTsKLQlyZXR1cm4gd29yZDsKLX0KZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94
ODZfNjQvaW50c2l6ZXMuaCBiL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvaW50c2l6ZXMuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTNlZjUxMC4uMDAwMDAwMAotLS0gYS9pbmNsdWRl
L3VrL2FyY2gveDg2XzY0L2ludHNpemVzLmgKKysrIC9kZXYvbnVsbApAQCAtMSw0NSArMCwwIEBA
Ci0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICovCi0vKgotICogQXV0
aG9yczogU2ltb24gS3VlbnplciA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+Ci0gKgotICoKLSAq
IENvcHlyaWdodCAoYykgMjAxNywgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBv
ZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogICAgY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20KLSAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
IHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCi0gKiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQotICogTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQotICogUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCi0gKgotICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBFWFRSQUNU
RUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KLSAqLwotCi0jaWYgKCghZGVmaW5lZCBfX1VLQVJD
SF9UWVBFU19IX18pICYmICghZGVmaW5lZCBfX1VLQVJDSF9MSU1JVFNfSF9fKSkKLSNlcnJvciBE
byBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQotI2VuZGlmCi0KLSNkZWZpbmUgX19D
X0lTXzggICAgLyogY2hhciAqLwotI2RlZmluZSBfX1NfSVNfMTYgICAvKiBzaG9ydCAqLwotI2Rl
ZmluZSBfX0lfSVNfMzIgICAvKiBpbnQgKi8KLSNkZWZpbmUgX19MX0lTXzY0ICAgLyogbG9uZyAq
LwotI2RlZmluZSBfX0xMX0lTXzY0ICAvKiBsb25nIGxvbmcgKi8KLSNkZWZpbmUgX19QVFJfSVNf
NjQgLyogdm9pZCAqICovCmRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUu
aCBiL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBjZDY2N2U1Li4wMDAwMDAwCi0tLSBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGNw
dS5oCisrKyAvZGV2L251bGwKQEAgLTEsNzMgKzAsMCBAQAotLyogU1BEWC1MaWNlbnNlLUlkZW50
aWZpZXI6IEJTRC0yLUNsYXVzZSAqLwotLyoKLSAqIEF1dGhvcnM6IEdyemVnb3J6IE1pbG9zIDxn
bTI4MUBjYW0uYWMudWs+Ci0gKiAgICAgICAgICBTaW1vbiBLdWVuemVyIDxzaW1vbi5rdWVuemVy
QG5lY2xhYi5ldT4KLSAqCi0gKiBDb3B5cmlnaHQgKGMpIDIwMDUsIEdyemVnb3J6IE1pbG9zLCBJ
bnRlbCBSZXNlYXJjaCBDYW1icmlkZ2UKLSAqIENvcHlyaWdodCAoYykgMjAxNywgTkVDIEV1cm9w
ZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAq
IFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgX19VS0FSQ0hfTENQVV9IX18KLSNlcnJvciBE
byBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQotI2VuZGlmCi0KLXN0cnVjdCBfX3Jl
Z3MgewotCXVuc2lnbmVkIGxvbmcgcjE1OwotCXVuc2lnbmVkIGxvbmcgcjE0OwotCXVuc2lnbmVk
IGxvbmcgcjEzOwotCXVuc2lnbmVkIGxvbmcgcjEyOwotCXVuc2lnbmVkIGxvbmcgcmJwOwotCXVu
c2lnbmVkIGxvbmcgcmJ4OwotLyogYXJndW1lbnRzOiBub24gaW50ZXJydXB0cy9ub24gdHJhY2lu
ZyBzeXNjYWxscyBvbmx5IHNhdmUgdXB0byBoZXJlKi8KLQl1bnNpZ25lZCBsb25nIHIxMTsKLQl1
bnNpZ25lZCBsb25nIHIxMDsKLQl1bnNpZ25lZCBsb25nIHI5OwotCXVuc2lnbmVkIGxvbmcgcjg7
Ci0JdW5zaWduZWQgbG9uZyByYXg7Ci0JdW5zaWduZWQgbG9uZyByY3g7Ci0JdW5zaWduZWQgbG9u
ZyByZHg7Ci0JdW5zaWduZWQgbG9uZyByc2k7Ci0JdW5zaWduZWQgbG9uZyByZGk7Ci0JdW5zaWdu
ZWQgbG9uZyBvcmlnX3JheDsKLS8qIGVuZCBvZiBhcmd1bWVudHMgKi8KLS8qIGNwdSBleGNlcHRp
b24gZnJhbWUgb3IgdW5kZWZpbmVkICovCi0JdW5zaWduZWQgbG9uZyByaXA7Ci0JdW5zaWduZWQg
bG9uZyBjczsKLQl1bnNpZ25lZCBsb25nIGVmbGFnczsKLQl1bnNpZ25lZCBsb25nIHJzcDsKLQl1
bnNpZ25lZCBsb25nIHNzOwotLyogdG9wIG9mIHN0YWNrIHBhZ2UgKi8KLX07Ci0KLSNpZm5kZWYg
bWIKLSNkZWZpbmUgbWIoKSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoIm1mZW5jZSIgOiA6IDog
Im1lbW9yeSIpCi0jZW5kaWYKLQotI2lmbmRlZiBybWIKLSNkZWZpbmUgcm1iKCkgICBfX2FzbV9f
IF9fdm9sYXRpbGVfXyAoImxmZW5jZSIgOiA6IDogIm1lbW9yeSIpCi0jZW5kaWYKLQotI2lmbmRl
ZiB3bWIKLSNkZWZpbmUgd21iKCkgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoInNmZW5jZSIgOiA6
IDogIm1lbW9yeSIpCi0jZW5kaWYKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQv
bGltaXRzLmggYi9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xpbWl0cy5oCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBhOTY5YmQxLi4wMDAwMDAwCi0tLSBhL2luY2x1ZGUvdWsvYXJjaC94
ODZfNjQvbGltaXRzLmgKKysrIC9kZXYvbnVsbApAQCAtMSw0NiArMCwwIEBACi0vKiBTUERYLUxp
Y2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovCi0vKgotICogQ29weXJpZ2h0IChjKSAy
MDA5LCBDaXRyaXggU3lzdGVtcywgSW5jLgotICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVy
b3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAq
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAg
SU4gTk8gRVZFTlQgU0hBTEwgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgot
ICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBfX1VLQVJDSF9MSU1JVFNfSF9fCi0jZXJy
b3IgRG8gbm90IGluY2x1ZGUgdGhpcyBoZWFkZXIgZGlyZWN0bHkKLSNlbmRpZgotCi0jZGVmaW5l
IF9fUEFHRV9TSElGVAkJMTIKLQotI2lmZGVmIF9fQVNTRU1CTFlfXwotI2RlZmluZSBfX1BBR0Vf
U0laRQkJKDEgPDwgX19QQUdFX1NISUZUKQotI2RlZmluZSBfX1BBR0VfTUFTSwkJKH4oKF9fUEFH
RV9TSVpFKSAtIDEpKQotI2Vsc2UKLSNkZWZpbmUgX19QQUdFX1NJWkUJCSgxVUxMIDw8IF9fUEFH
RV9TSElGVCkKLSNkZWZpbmUgX19QQUdFX01BU0sJCSh+KChfX1BBR0VfU0laRSkgLSAxKSkKLSNl
bmRpZgotCi0jZGVmaW5lIF9fU1RBQ0tfU0laRV9QQUdFX09SREVSCTQKLSNkZWZpbmUgX19TVEFD
S19TSVpFCQkoX19QQUdFX1NJWkUgKiAoMSA8PCBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUikpCi0K
LSNkZWZpbmUgX19XT1JEU0laRQkJNjQKLSNkZWZpbmUgX19XT1JEU0laRV9DT01QQVQzMgkxCmRp
ZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L3R5cGVzLmggYi9pbmNsdWRlL3VrL2Fy
Y2gveDg2XzY0L3R5cGVzLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU1NDdiMzcu
LjAwMDAwMDAKLS0tIGEvaW5jbHVkZS91ay9hcmNoL3g4Nl82NC90eXBlcy5oCisrKyAvZGV2L251
bGwKQEAgLTEsMzggKzAsMCBAQAotLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVCAqLwot
LyoKLSAqIENvcHlyaWdodCAoYykgMjAwMi0yMDAzLCBLIEEgRnJhc2VyICYgUiBOZXVnZWJhdWVy
Ci0gKiBDb3B5cmlnaHQgKGMpIDIwMDUsIEdyemVnb3J6IE1pbG9zLCBJbnRlbCBSZXNlYXJjaCBD
YW1icmlkZ2UKLSAqCi0gKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNo
YXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Ci0gKiBvZiB0aGlzIHNvZnR3YXJl
IGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8K
LSAqIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3
aXRob3V0IGxpbWl0YXRpb24gdGhlCi0gKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1l
cmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKLSAqIHNlbGwgY29w
aWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNv
ZnR3YXJlIGlzCi0gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zOgotICoKLSAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlz
IHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCi0gKiBhbGwgY29waWVzIG9y
IHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KLSAqCi0gKiBUSEUgU09GVFdB
UkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQ
UkVTUyBPUgotICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCi0gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIEFV
VEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFH
RVMgT1IgT1RIRVIKLSAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJB
Q1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HCi0gKiBGUk9NLCBPVVQgT0YgT1IgSU4gQ09O
TkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSCi0gKiBERUFMSU5H
UyBJTiBUSEUgU09GVFdBUkUuCi0gKi8KLQotI2lmbmRlZiBfX1VLQVJDSF9UWVBFU19IX18KLSNl
cnJvciBEbyBub3QgaW5jbHVkZSB0aGlzIGhlYWRlciBkaXJlY3RseQotI2VuZGlmCi0KLSNpZm5k
ZWYgX19BU1NFTUJMWV9fCi0KLXN0cnVjdCBfX3B0ZSB7IHVuc2lnbmVkIGxvbmcgcHRlOyB9Owot
I2RlZmluZSBucHRlKHgpICgoc3RydWN0IF9fcHRlKSB7ICh4KSB9KQotCi0jZGVmaW5lIF9XT1JE
ICIucXVhZCIKLQotI2Vsc2UKLSNkZWZpbmUgX1dPUkQgLnF1YWQKLSNlbmRpZiAvKiAhX19BU1NF
TUJMWV9fICovCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3Rz
LnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0
aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:29 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807h-0006Fb-5K; Mon, 16 Apr 2018 09:08:29 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807f-0006FG-Oq
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:27 +0000
X-Inumbo-ID: 96bccc6d-4155-11e8-9728-bc764e045a96
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe07::601])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 96bccc6d-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:29 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=mw2+6o442NAqlNtta0qcj4djSFn86PHaDOwOJTTlsFk=;
 b=YezeW0hcMToyQqRVrI2xRtTLgWIqkNx75NbpJ1NoHxuh/76qBgkAKW8OKbxj/T1MhazC0WbRz4k/oV5GUTKaea3DyjJxUeLMjq9CxX4tq8rjL6mKkl97x+oTMCQ//CpEiJTTyX1FNyoSHLCdZQ+L5uEM0n+RBHbSfXLBahw5/UY=
Received: from VI1PR0801CA0083.eurprd08.prod.outlook.com
 (2603:10a6:800:7d::27) by AM4PR0801MB1587.eurprd08.prod.outlook.com
 (2603:10a6:200:3e::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 09:08:19 +0000
Received: from AM5EUR03FT034.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::200) by VI1PR0801CA0083.outlook.office365.com
 (2603:10a6:800:7d::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.14 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:19 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT034.mail.protection.outlook.com (10.152.16.81) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:19 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:08:02 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:38 +0800
Message-ID: <1523869666-30659-6-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(396003)(346002)(39860400002)(376002)(2980300002)(438002)(199004)(189003)(48376002)(126002)(446003)(476003)(50466002)(2616005)(47776003)(11346002)(336012)(426003)(8676002)(77096007)(186003)(486006)(106466001)(49486002)(51416003)(54906003)(316002)(36756003)(5660300001)(106002)(76176011)(110136005)(86362001)(16586007)(305945005)(6666003)(4326008)(104016004)(50226002)(2906002)(356003)(26826003)(8936002)(478600001)(246002)(72206003)(26005)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR0801MB1587; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT034;
 1:u9tWxFzqcHER9wF2qFysQmhPGF1WrGK+YM7jHpVM8KuRWvSsAPM31ljmaE75L5vPYtxxrK+hAqJ0Wc0QT9MnmkCF6YCbG2QSxoW2V5ijkvMW+kDA6mYMMkLlg9Esa2EO
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR0801MB1587; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1587;
 3:uq/r9U5NdcDjjtMYve7zuHYIiQ1J3wy+B/9y2JehGmFijaOy+UnoLMur7GmitaJyLjEDu67z14Hn4xj36YGp1Ewnj2/XlDT/Od6BuFAO4RGVSismhFa5tpKBz5kKPrifKOW7LYf0OxE6uuO3ZW1TJcNN2iDh3hc29iRo9GvQNeIxwWq7pG3VciRKsdULbUNY069/F4SBIJ6TXeyxu2xkUnPTz5cIU6L7GVdDBnepTEsjPDgj7tSpVj1Uwsn/tQXCYnZjwHKTK3zHcxKycCZIYr0+XfYwN2PaYuzgwDHHte8wRJmH6F4hY/MFxu4ISD4hwzASp2DhZwfiWdSBWiaqt9Row71/nTDPMfiTUQXerfA=;
 25:n/0ie2TuA3ZdyYp4Ocsa/ky7wRWL01OMiblnapIIyEfDcPw0a98l9haqQSZm2yDQxGE1UIORuk5P+pKXLFAzrAyZhe5Qr9eq/jQ+CYaD1Lc/4z9eJsyDcFbrOQZSFKhqChWD5dDdsHZnuPTl12CjCMAMvi/lpfDDIxskYD1TLN5Tf7Zz66SobDPJrPT3M9QKr01ZQlFlerlt0y4spVws8U6x4wMvR4kWA1mH6FrC5/xVT1EGDa7frB+l1ug5bwjGBPx8jaYscsvKFWJwt/uVlEjvB8A4QuL+Px1drqNLNFICjsBLZXJiZo1KzBcfjPl4m/q5pxQj0Capwm4Xpf6w/g==
X-MS-TrafficTypeDiagnostic: AM4PR0801MB1587:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1587;
 31:v/95109ZF7cGuuIQ1W01j287tOAP8UwLu7EWPFQxOeuZRPVGfYIRZWJtIB1rX3inD126M86xiVRQL8T1x8nADSHBc3kWsgOkbKbZqieaCmZ1BvFvCQ9KHFuIBxaOTRmMI3YyDRWEpy/4qHWRGlJGdF3dw5xTmbxq7YmxHuTAXZlvW3f4Ug42wVQJbHHOIkz073Lzh9h13vgTho1uVRdGW3tZDIy8a9nDVWhdOe4N0hQ=;
 20:RTjmcqCqxCDpBk1vECGjQ00pn3/ST4pDQVs9zEU6bzjx22cipi0e7NvMdXqB6xPubYYaXykXpofK0RywGJ4UOzu+J4nSD82186UbSI366tdlFQYvLH+RJ0bgtQLrHf9dkfEb/zWQz8fEudWEbcMQVcN3sC1I1BIuz2awUPGC8ebQYWIF0Cx9Px6/Hw1icTZrcjUUOFzN1lIUrj+Pshz/UOz01x4D7wo4OC6dk8ElG25vhr1Qg895zXq9Aymu0yCX;
 4:YR9AHW5G0Xbm+hSj10uN2VMtLfssTxAkVmQ1TPllM4ymDX55tGd9Tli96rqxbKGq5WmS03ZjlUUuICD3DLwBqpwW3CKc6xUvas2SVtPTOBokhfiednLnx2GldlJ24V77drP5uKxx3U6tuelit6iKRWKWJZzmG1re++WBy1JY4PwgdFqfis5RUCB4kwCXTsMYF/pcgl4cCF09J8kPTW0kmFWs5KAfaKLsYdew8vm/RsshbKZisP9IDvE7k1YccsVTMS3YeTPD3rrxwCoTWYUWkfeYf3lu3b4uAfiMTF5b0rxvhbso5/VOOWw9lrhIZYAJ
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR0801MB1587233CE74E8756D013430D9EB00@AM4PR0801MB1587.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231232)(944501327)(52105095)(10201501046)(3002001)(93006095)(93004095)(6055026)(6041310)(20161123558120)(20161123562045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:AM4PR0801MB1587; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0801MB1587; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR0801MB1587;
 23:QhaCDOxlMUqPkfV7SpU1lICynWizNsyEUlxeLWf?=
 =?us-ascii?Q?BDZw73xdf1YbilUod0PIAM2TmikXsZpl07KRckjljejzOr5ulcFxDXIhqE4s?=
 =?us-ascii?Q?Vt2mKeFI+qtibb3Y3t0mP/sAb4OwIBasP7gammFQ8e/QiIAJF0OFXZYFapIF?=
 =?us-ascii?Q?AfR9d7818JFLxkIOF9YI45WRFxzTQiK21g/QxX2a4DmTnE0t2h4hIavclvnT?=
 =?us-ascii?Q?m65PLHmUa7SrPvIMqkWUQx1lVMbdO/kMMlGy6uhXDd293vv1+wAqVBnrZTxj?=
 =?us-ascii?Q?99L+M1tV7EVOrV7RY8musHkiZwEwwwiugv651MoeAUKnIrSiHXH9Kxh43NEf?=
 =?us-ascii?Q?lek7up+U8HTzXLghrPxuOFqedTb/zJMrLfXe21QneaYNqUfYb7d95dOclxyj?=
 =?us-ascii?Q?RsSuxrsFKefqDEZ9ONkfGvVM2SHJ08hPZx5oI94LbrZqRXfZr+YiDZMZerB/?=
 =?us-ascii?Q?NYp0BxICWIgzG5t7txnXvywttCFHIq2mwdnsEmtI6o37XOASyshT/0af/HXK?=
 =?us-ascii?Q?007WMUV8odzEcWR9x28Bc8ysKimKCtO03qRmd/UytHmRlMLp5C9kcrYkge+o?=
 =?us-ascii?Q?VpF09Vqfb+j6fLNrvUIkHO6Xh6TloXqe8EzRkldgzF1vTM9w2bK0Ec14MDdD?=
 =?us-ascii?Q?94LdmOKXpUJ9FtQ+aQhZ659urxfnAqvIpsphQRujYDCX7J2w8bmTZcQdQYR3?=
 =?us-ascii?Q?+xZlSfsnKDqPTTwx0UuobNPpX0Jlbt6JzMiRbazs7vRdh8CCB3jsueUfDplx?=
 =?us-ascii?Q?55rPnsbnXysGrnhJ1d6t71mO7QjaX0Lc84MEkFIWfLMTqJ4w/yde0jWaMV/c?=
 =?us-ascii?Q?vuPgp2lD6XmSfqef/FXYTOhFd0RbnyR1Ooz55O2DbtTLWvi/m5F06ylSQwZ7?=
 =?us-ascii?Q?Wvo87EbkOmyY5EDputehdK/DSii7+4HMzjeU7gkkgp9BZquzwA1ZiJ4wKLgb?=
 =?us-ascii?Q?JXbfQ2z06FWN3orShkrFJe77f5WWihsExDQkCeJa1P4GEK6lF4U7vuP5Pzzl?=
 =?us-ascii?Q?LLbrMnYWFWhlegwBrrQw70zXRrHT/9PAlgt3zvEgYCFAkau9aUhJQ8VThe/s?=
 =?us-ascii?Q?Bp5KYwku5UORMZv+TW2ENo9xJa329CYvF3PtIy65vJXC5m4RXcw=3D=3D?=
X-Microsoft-Antispam-Message-Info: GEwPkBAp6Bat+giTAbuEvecEodoPC5oM+JBp7sM7KXzchYjDsCsB4OdN/JfD7qCqijIVuadUDxjKTqIw1hWZ4y7wfPw+GKy4LUx7SFx6n+U6LNP0HWMXkcdZV9ZczuiisQ5oj2oYc7O5Vs2zCDhpdf+OnGwh/mtN1b8ypTJ/QHYbNn1SjRiPhla0vDbNynNaUX5T9Ys+q/0gOEUy+jzaKHndOcfwy9cvumtxaA/Hku44JhkDsmGjxZCK/aaMm4OwqMv2OIdl1GEuDmIMrTZ+ENcYC4CRnSJyMYZK2GJeIQ6kx9v8tk1CHGkNekyGzEaCwzXVQAslMfnUTUd8/qzWDWoDtmcBNSLGaJng59Gq2mu975rgXyGt9lgo/IAnNSiMW3qjbDUVv8ZdtMnPGls1yhPDe4yR7sfnGnhOgbpI5kw=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1587;
 6:+oP83bhfDubTeYAH3dqnyMPh4tAG0yFe0MqeUcSuVJs11mCCVGiRTMAiHtdwso+Ljgz87fv4o0lslIWMoUCvJKtVw6zOgglh6H+cXyd5dW4t7PxoXZbdYEe9Vc6XQgQH/eoCVpMGGruSUm3mkN0z4GHZ8mTcFul3FSWbojezL8gsUOElTqSApp67GVpL1Vb34nu9I+blqozRB9MmWHl98RucZoNbSki4Rau1KuqT61KCX8fFXn0HCud9uJEeoLREzztkqcH/3zQ7O4Ffpr6UOL7uhF/kamOfn5/kSEqPKoU4CGRekEGqlmQzsvVMmEHAenzTc3yyEuycgCjdVAsj5jcip7h+kBEIkyBFCStls8/jlccQ5sKg+YoEH65rScVJ1WeydTqHJOSSYKxIEBpTyXEX9GbuYsIcvx80iPMO5j10+jVe1rH/neDq3VSE2+7xfjVGSu4O1eaesREsvBHPSe8wicGufCGNYEtJ88rA9XsYhDWANAyWOwc2vvxQCDlG;
 5:uKGMFm3RXkSf9YohuzGg1J53+t+dHHMwuubIj527vqNIiPr7KoW6E+6JH/VppzA22z+IuI5bVgpRNQWRCOVawww7ytY4LZtD3ljVx5Z62VIg8v30w5lGas+f2L8/z4Lye1JbbSzaB+rSx67AGSOvg9mt6TK3BfnEVy8wuKVZRGw=;
 24:z/tt7KhXb7xM2F6JpFwRSgQEYrFHp1HXJbwmSfl23BkEkCil7U7f/QeTihUk/mSqUV58g+mIdJEM87XhP80nxgEnaU76nljETIUlgAqQqqc=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1587;
 7:U11qntUXFGVVlbhYMFDqXMpoH6KCq0PXpo55gzqrduxYQI66l4o+ppgvYMjSeMzhaQ357SuPYjQe1wTD9cyigdsOIzLTegqu/Pwsk0biJHX41FmtafZVak/DXn1+4INPNPo89Upk4OPfuvVIzjlChzoajYCq+CPuyosOf5bx+3ipRZwmg8OkpFf6uRTS+DuN7RuuFSK483wSOo180tKJnt/X8kMBLwnZqCmW2qIhXmipCd4YyrLSup0YsuKBzSYZ
X-MS-Office365-Filtering-Correlation-Id: 418ecc79-43d8-465e-d635-08d5a37998d2
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:19.0617 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 418ecc79-43d8-465e-d635-08d5a37998d2
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0801MB1587
Subject: [Minios-devel] [UNIKRAFT PATCH 05/13] build: Add a makefile
 function to check GCC version
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SW4gdGhpcyBwYXRjaCwgd2UgYWRkIGEgdGVzdF9nY2NfdmVyc2lvbiBmdW5jdGlvbiB0byB0ZXN0
IEdDQwp2ZXJzaW9uIGFuZCByZXR1cm4gYSByZXN1bHQuIEluIHRoaXMgY2FzZSwgdGhpcyBmdW5j
dGlvbiBjYW4KYmUgdXNlZCBub3Qgb25seSBmb3IgcHJvY2Vzc29yIGZsYWdzIGNoZWNrLCBidXQg
YWxzbyBjYW4gYmUKdXNlZCBpbiBvdGhlciBwbGFjZXMgb2YgVW5pa3JhZnQuCgpTaWduZWQtb2Zm
LWJ5OiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT4KLS0tCiBNYWtlZmlsZSAgICAgICAgICAg
ICAgICAgICAgIHwgNCArKysrCiBzdXBwb3J0L2J1aWxkL01ha2VmaWxlLnJ1bGVzIHwgNSArKysr
KwogMiBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9NYWtlZmls
ZSBiL01ha2VmaWxlCmluZGV4IGNhOWI1NjYuLjc3NjU5YmQgMTAwNjQ0Ci0tLSBhL01ha2VmaWxl
CisrKyBiL01ha2VmaWxlCkBAIC00MjYsNiArNDI2LDEwIEBAIExJRlRPRkYJCTo9IGxpZnRvZmYg
LWUgLXMKIG92ZXJyaWRlIEFSRkxBR1M6PSByY3MKIENDX1ZFUlNJT04JOj0gJChzaGVsbCAkKEND
KSAtLXZlcnNpb24gfCBcCiAJCSAgIHNlZCAtbiAtciAncy9eLiogKFswLTldKilcLihbMC05XSop
XC4oWzAtOV0qKVsgXSouKi9cMS5cMi9wJykKKyMgUmV0cmlldmUgR0NDIG1ham9yIGFuZCBtaW5v
ciBudW1iZXIgZnJvbSBDQ19WRVJTSU9OLiBUaGV5IHdvdWxkIGJlIHVzZWQKKyMgdG8gc2VsZWN0
IGNvcnJlY3Qgb3B0aW1pemF0aW9uIHBhcmFtZXRlcnMgZm9yIHRhcmdldCBDUFVzLgorQ0NfVkVS
X01BSk9SICAgOj0gJCh3b3JkIDEsJChzdWJzdCAuLCAsJChDQ19WRVJTSU9OKSkpCitDQ19WRVJf
TUlOT1IgICA6PSAkKHdvcmQgMiwkKHN1YnN0IC4sICwkKENDX1ZFUlNJT04pKSkKIAogQVNGTEFH
UwkJKz0gLURDQ19WRVJTSU9OPSQoQ0NfVkVSU0lPTikKIENGTEFHUwkJKz0gLURDQ19WRVJTSU9O
PSQoQ0NfVkVSU0lPTikKZGlmZiAtLWdpdCBhL3N1cHBvcnQvYnVpbGQvTWFrZWZpbGUucnVsZXMg
Yi9zdXBwb3J0L2J1aWxkL01ha2VmaWxlLnJ1bGVzCmluZGV4IGZlYjE0NTUuLmNjOWI1MjIgMTAw
NjQ0Ci0tLSBhL3N1cHBvcnQvYnVpbGQvTWFrZWZpbGUucnVsZXMKKysrIGIvc3VwcG9ydC9idWls
ZC9NYWtlZmlsZS5ydWxlcwpAQCAtMjksNiArMjksMTEgQEAgbGMgPSAkKHN1YnN0IEEsYSwkKHN1
YnN0IEIsYiwkKHN1YnN0IEMsYywkKHN1YnN0IEQsZCwkKHN1YnN0IEUsZSwkKHN1YnN0IEYsZiwk
KHMKICMgdXBwZXIgY2FzZQogdWMgPSAkKHN1YnN0IGEsQSwkKHN1YnN0IGIsQiwkKHN1YnN0IGMs
QywkKHN1YnN0IGQsRCwkKHN1YnN0IGUsRSwkKHN1YnN0IGYsRiwkKHN1YnN0IGcsRywkKHN1YnN0
IGgsSCwkKHN1YnN0IGksSSwkKHN1YnN0IGosSiwkKHN1YnN0IGssSywkKHN1YnN0IGwsTCwkKHN1
YnN0IG0sTSwkKHN1YnN0IG4sTiwkKHN1YnN0IG8sTywkKHN1YnN0IHAsUCwkKHN1YnN0IHEsUSwk
KHN1YnN0IHIsUiwkKHN1YnN0IHMsUywkKHN1YnN0IHQsVCwkKHN1YnN0IHUsVSwkKHN1YnN0IHYs
ViwkKHN1YnN0IHcsVywkKHN1YnN0IHgsWCwkKHN1YnN0IHksWSwkKHN1YnN0IHosWiwkKDEpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkKIAorIyB0ZXN0IHdoZXRoZXIgR0NDIHZlcnNpb24gbWVl
dHMgdGhlIG1pbmltdW0gcmVxdWlyZW1lbnQKKyMgdGVzdF9nY2NfdmVyc2lvbiAkZ2NjX21ham9y
LCRnY2NfbWlub3IKK2RlZmluZSB0ZXN0X2djY192ZXJzaW9uID0KKyQoc2hlbGwgZWNobyAnaWYo
JChDQ19WRVJfTUFKT1IpLiQoQ0NfVkVSX01JTk9SKT49JCgxKS4kKDIpKSBwcmludCAieSInfCBi
YykKK2VuZGVmCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjCi0tIAoyLjcuNAoKCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBt
YWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlz
dHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:33 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807l-0006Gt-7S; Mon, 16 Apr 2018 09:08:33 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807j-0006GM-Jh
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:31 +0000
X-Inumbo-ID: 989cf766-4155-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [104.47.2.81]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 989cf766-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:32 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=LWGCB9QRTwPAQaz7vOJKEedK+1IjQgYZf7Du6qLr0SI=;
 b=DlUWycMwFHLUqlv9l3SGzJS6dPccFBlJkHfGdyekmaMtK52kuL31offubSTNmeVwY5hSSgnPcNBN/oXM+wL6hFaArV5j2sOhLQLM2UiSjzEalnrY33MHQCk+zgy3ZYfVJ7PN1vrEwuMrCATPHP65izORLltgDhnA3sZ1Bm9Bgis=
Received: from DB6PR0801CA0001.eurprd08.prod.outlook.com (2603:10a6:4:2::11)
 by VI1PR0801MB1599.eurprd08.prod.outlook.com (2603:10a6:800:19::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 09:08:21 +0000
Received: from AM5EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::208) by DB6PR0801CA0001.outlook.office365.com
 (2603:10a6:4:2::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:21 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT016.mail.protection.outlook.com (10.152.16.142) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:21 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:08:04 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:39 +0800
Message-ID: <1523869666-30659-7-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(346002)(376002)(39860400002)(39380400002)(2980300002)(438002)(199004)(189003)(446003)(11346002)(8936002)(476003)(126002)(54906003)(72206003)(110136005)(2616005)(6666003)(486006)(356003)(478600001)(104016004)(426003)(186003)(47776003)(305945005)(8676002)(336012)(76176011)(48376002)(246002)(36756003)(86362001)(26005)(26826003)(77096007)(2906002)(106002)(16586007)(51416003)(5660300001)(49486002)(50226002)(50466002)(316002)(106466001)(4326008)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1599; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT016;
 1:nIoioh/WRp6H/1ewq+wpPAY4Qay3XaV0vh7TkF6EpO0v8rMEImQZtly+weU1x12Wrwkr6cj3quBpbts83Te0YXilV6aTn7FFzUAQB4AO0wmBdcRc9O2K2IU/gOlpT7NC
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0801MB1599; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 3:odtKpRBRJAeFo2yN/VAdMptcWseESo6Acsz4bkQzzj3dIooXlHGDdiVHiMfLWW11QLX/+Kp/Rq4Fr+H7GdOY/j+wVmthK4+lPSG4IpnzfJBC72GPe0DSqf5mA780lV4zH4JMlzkiyGQjAHUwSRucTzbGcoe+DveeB3J9pCrvWDHKBFM5RrgHHLVsYbHYNcnIoYNGrV/JgHbJgZr1eob/zyII7nT5L6nsRyvcedEVxsD59NMU+QSjYtmFRDL88ny0mA4Pvpptpe3Y87At0gYcUM34QrMmMwyK9NUrGd4Jbw3BlXmEc5wTYcro8oab7b6a3uNQAx2txeMuW4dA9pqIzME1AYZ6aUAms2M9gDgAKtQ=;
 25:GvDTQR6FnJC4GX1MI9Qx1e52e7PelmchiYeuEDQsFU7g5q5/SFkMsbvRcPoYa12j7pG3epjSKByn8wEgjb9e+KvyJvPyv90r2FqmlKrnwdK0Knrax/8DHBpQEJU76CJL9LY/5y7qpHtGd6F2ctA300C8zEUTR1og0H1rap3PPe3mnKYy9BqLL++U9/XVrHVAHbdJ84Ni3O8PuGbUmKtDHhbjweJ9CbOQDUl3EhwslO6nanzsFiYbAsqX4jITwyaWqGa1nX50UgZc94fFT8QaQ+6+xIbrkk4p0wluhVWbmIml0uIUrwOMJPZ66Gl+XMWrQTRX9lir0RwdUYKoj7FcYA==
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1599:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 31:cQ6ar4in+ukr0kAiaGS2FAEgrS92TptH3NAs2GKvbRRz2RlVi/l2B3L3+S0sgjqiEVC3O5QwkNtqv/rWlvgiJ6nxPREi8F/3y0q9EMr1skGbvRVB/R2bMT9rJeFrSoT7eenwPv5bxoTq1kko16tXlRjbTR22VTRLFK60g8cQNHnDijZwnsIvCCCdLUeYIu1/ZyuiFlYREOvvsnFMxguCBBt6o9v/skC+Sdm+0C35IXo=;
 20:x7ah50nduWU/ZelgyLTQwTDTiVmBYs+6d1pAkPhtgFjs/hJXzcizdAP/0jkuZHpf3wmpPHpzi1wKAO7wfk1BEkcGb5w0UU6sZTTHXhlBCTAhEYoASPOrvBqhCiCgyx3YTAwAaqqn3mtlxBcUnDlkRH+q4K9EW/SruMpWoSDliQ1i457mtFXsj5SFmq7gp/h6X9XeNw2Ow7EDIxpv/QG+ELBMIHprYazXy0lnUQo5lo9SGwljcqccmldfIrefZjQW;
 4:qUoA/OZgG0rKbR1Wi05oNcdKsG0IoBQHB9KpFtFXYr1znnC5MUK1UFmsPKoAq+iULILQsvGPKKkYaAoRH8gx9NY0D+ZC51mJk9O4uPhE9SlYUZANJIvnfra8xHCxMxs606SWo995qLkgVxtx5KmlxRmUhiYP5hvKWqpZNSJTPf8YWB9cs35jkBbs/pwo4mnDHOKIijnoYD2rwX4Rk+TveHkmzuUNPkUv2bOMP8oJj57B1DDrbjO3NmNSqTUXgmOzrdbrgC5kUGl+cXiw5rnFVDMC9K/7hbFF7DIp9xkDdhIv3As1dIENs5HANEHJA0C9
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0801MB15999AC1136328DFE6B774219EB00@VI1PR0801MB1599.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(3231232)(944501327)(52105095)(3002001)(93006095)(93004095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123558120)(20161123564045)(6072148)(201708071742011);
 SRVR:VI1PR0801MB1599; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0801MB1599; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1599;
 23:S7dObBSKZAyp5rKcZH6KaXzL44BFk7jS+E+FF8E?=
 =?us-ascii?Q?i2DsfnTJyBwi3oP0/zHPvf7a5pGkL/GFYmY0tQbZ1CYWpsXfcSSR3LEEGp0a?=
 =?us-ascii?Q?Wv88xJSGpyqsFNDyQzxeTn5CtpXUgzkXk19uAIhKPCAm+co8Vgy8mpKoCKgL?=
 =?us-ascii?Q?gFzZTj8yobTb1I5vsZD3IuBQ77LsQnC3Di9OWNHJ6Jt4MWRCCiNTw+RvI9oX?=
 =?us-ascii?Q?/Z05N7zfzzrN5i0sgHYdB2EgG8cUWr8Eo9tXGekCx2TdN0cTqV3foUb4b2dJ?=
 =?us-ascii?Q?kn2d1Lp5gri/FiXAYQ0yIXLHiPPToxOedHFBGhHFKgH01fhBrwtBlLoLwIuH?=
 =?us-ascii?Q?9v19Ok7GhbSZTo9ZwBzjlyvTIpxXQmvxUmlpJqS0U63oK+Zgs2hPjb71psdL?=
 =?us-ascii?Q?qxjRSjbFTRJbM+lnNzUxlRchKQnphAO9ptUVfmMCUK+VNZYSME3YTKK6pUYi?=
 =?us-ascii?Q?YzAmDJatL3oP3i3PAAotOaG9KANeV1VYPxWys26u7SnG38sIYgQQkfAbVIGE?=
 =?us-ascii?Q?GjKhEYkLzeIUtY+j0BwPXrV+tu5CuDW5w6R3nxyhsTYkrQRxyFtHt2iCcX9f?=
 =?us-ascii?Q?WWbgSv5LhCGWpaLxfjeULRWhA4rpir6kZtqk6lq2eOIakvD4Thg/aE0o3lg0?=
 =?us-ascii?Q?p8gWkfkWXMHaQEj6KYYo8XSJwTgigS76L/A0bY6jXw57jCYWG1NC1dixuQBW?=
 =?us-ascii?Q?FuO4cYLFQFktAfTlX73hzOTnGVbpQUN+nK7N/0xhKJ3lcNYN17zc1HrlNExj?=
 =?us-ascii?Q?ADINse7Q+LJHJjrd9PBeJJajrN8/5p6DLTVJSgfqrO2aa4dgCO5pmMJevZfp?=
 =?us-ascii?Q?kXnIbOab34B9vAzTu/aJRp9VDrVYme3RExxhgyzZkpljDeo/dvOLzr21MeiZ?=
 =?us-ascii?Q?xLIK0uyyinNoK9NXSzFjkYsXnwt2Nj5kwFpv0ZYf3vplx60A+AJCGkpuyixg?=
 =?us-ascii?Q?nIU9c7rlhfL9RJmEfmv9qSvL6fS/HtB9eBb50h+Lw2IeoGEAWC2iP5CROQrP?=
 =?us-ascii?Q?RfGGYJWaiWRy/z12XFKR0K1rPBoev46J8jK7hVQQs+AgCQaz/3AMs6ocQ0/j?=
 =?us-ascii?Q?43YX61hTtWltSowTVFagbyxAhXiMSolw7MfUgqiN7Spb4RjNVpw=3D=3D?=
X-Microsoft-Antispam-Message-Info: wkATMSp0fq06qhluKRqboX47D0SbyYGVv4Fz1jbm2Hw6LxuKCiRypZxDByb4D1wzuWMcJT+PgXLjc0QxkrySflLjubnLCRWRNUd2VLP3SGQAtMQ6FgNyjW0/seoBk1PR/Cl3DU82IywEETa1jw57B+FuW+OPQCoegOSu21FbtHhJJWxgyuXToL7q2vX5U5/kv7jKFvN+d2aaKt+K5tiajtFUcb354oTq8QMF17w5Fv2Jv3nfYnAiPrKZtqwsRvfHr9OM5gE0X2IluBCNEh3GE6rXu7dW6Te6qWrn7t2WoFrpngfEXFKMWKmvBYt5QLEoVsdU9KtiHFHHKhuvOtl8VDaap+w7PXm+dKl5ZwAOqS7hermDRV6KddU6Dp49RDj2nmsCo0gkP24mmC7cLt2tVxHgr2Adjp3mOGdckHDkR9c=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 6:44f8raJE8ItEcojtL/fqc8ESHVU7oeSbnKwlQikXzP4RhXYOsTB6Jz2ZmAKKyZ8Z5nOYls7QxptKwDBvaZyhMl6cVvNLGSUYMmzGnS97fANvwT4JLTM40p1jybyoizvlCbxwqOkfEkIqdkQ4YQG3EyvxWT3FuwjD/B8GbufJBzrHDNmg3ARzBuevyfD79/Woi4/k+I/VVjp614mPc9NXoC/ONsC2ZYZnSIi60uIMQbg8LKPi1Fsu36hr6fTGc4WCY2S3b6LUZgsJ9Wb7DbkZW1ydEbKgkkNMPU9lpxq2rWcR80a5SbaXaQhYxztXCoeV34NQ7LZvedY10z6zAEfvbYXLC8GJS0jceOVOAwXYEigdTi9OmwAAkPdIpqq7WrZEB8cuPZaxJF4dMiwywmdVGhVfX3VlXVHgQdLfXkIketM9m0SPRHSVflEfxlO7DYao8M/DpFSCfNJh7OLnv4CE6ESuCi74pKUdE9xh8UHJJEW4gxmNvoEBoyKt4LSQD43V;
 5:VZ8RmOsPJM4RLVawZeedhhvwjXB/Aimb+f6SiHqVfymb2PZeRrcQLluAOTp9Ga6gtWXTzquOdsPIaqSJxg2N2Hyr2/w6BKBKrnhh8lHZZO+PX8/TQ+leH+/kSB5BNKTsmmHePH3gxjT3O5U3fgmhG//mgqeCDQXqSKPNyHUQhg8=;
 24:T794KbksKcup6WEeKPts8OOyWDwOhHDANJOvPLNtsLIpFkJpEXzIRwx0ktyNcxMcrjaTimyYHRfQNIBbS1VMHNvonosKBCZPC00UoMTSpLU=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 7:OwXcbB6QoER1EekvS7kOjsb2CsjBjeC8qDE4/mBlsYHUdYMJ6goEMagCC6yBCkD/MiTkOgjOvajoRtOely1hntgfMzj5DM/7o9JDnW6feCfejBvAQNCdxUzaWuBa6Po1qbq1twdlfLUOhpfDA8YgK2cpdmBjzAePNuWX1mvccvrk42b3Q1d+CTZFzhizvvSDYkJQIFYKb8rEAFhlzQGfqZW5sYS6m4V/DqsDGkVGYTpHABW2OhFAQgeLrwLa9DhU
X-MS-Office365-Filtering-Correlation-Id: 35f7a351-d5d3-4676-1af8-08d5a3799a1d
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:21.2262 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 35f7a351-d5d3-4676-1af8-08d5a3799a1d
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1599
Subject: [Minios-devel] [UNIKRAFT PATCH 06/13] build: Add a makefile
 function to warn user when GCC is too old
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U29tZSBHQ0MgZmxhZ3MsIGxpa2UgcHJvY2Vzc29yIGZsYWdzIGhhdmUgbWluaW11bSBHQ0MgdmVy
c2lvbgpyZXF1aXJlbWVudC4gQWRkIHRoaXMgbWFrZWZpbGUgZnVuY3Rpb24gdG8gc3RvcCBidWls
ZCBhbmQgcHJpbnQKYSBlcnJvciBtZXNzYWdlIHRvIG5vdGlmeSB1c2VyIHRoYXQgdGhlaXIgR0ND
IGlzIHRvbyBvbGQuCgpTaWduZWQtb2ZmLWJ5OiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT4K
LS0tCiBzdXBwb3J0L2J1aWxkL01ha2VmaWxlLnJ1bGVzIHwgNyArKysrKysrCiAxIGZpbGUgY2hh
bmdlZCwgNyBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvc3VwcG9ydC9idWlsZC9NYWtlZmls
ZS5ydWxlcyBiL3N1cHBvcnQvYnVpbGQvTWFrZWZpbGUucnVsZXMKaW5kZXggY2M5YjUyMi4uMmFj
NzI5YSAxMDA2NDQKLS0tIGEvc3VwcG9ydC9idWlsZC9NYWtlZmlsZS5ydWxlcworKysgYi9zdXBw
b3J0L2J1aWxkL01ha2VmaWxlLnJ1bGVzCkBAIC0zNSw2ICszNSwxMyBAQCBkZWZpbmUgdGVzdF9n
Y2NfdmVyc2lvbiA9CiAkKHNoZWxsIGVjaG8gJ2lmKCQoQ0NfVkVSX01BSk9SKS4kKENDX1ZFUl9N
SU5PUik+PSQoMSkuJCgyKSkgcHJpbnQgInkiJ3wgYmMpCiBlbmRlZgogCisjIHByaW50IGVycm9y
IHdoZW4gR0NDIHZlcnNpb24gZG9lc24ndCBtZWV0IHRoZSBtaW5pbXVtIHJlcXVpcmVtZW50Cisj
IGNoZWNrX3ZhbGlkX2djY192ZXJzaW9uICRnY2NfbWFqb3IsJGdjY19taW5vci4KK2RlZmluZSBj
aGVja192YWxpZF9nY2NfdmVyc2lvbiA9CiskKGlmICQoY2FsbCB0ZXN0X2djY192ZXJzaW9uLCQo
MSksJCgyKSksLFwKKyAgICAgJChlcnJvciBSZXF1aXJlIEdDQyB2ZXJzaW9uID49ICQoMSkuJCgy
KSBmb3VuZCAkKENDX1ZFUl9NQUpPUikuJChDQ19WRVJfTUlOT1IpKSkKK2VuZGVmCisKICMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjCiAjCiAjIFBhdGhzIGFuZCBGaWxlbmFtZXMKLS0gCjIuNy40CgoK
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:33 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807l-0006Gz-9Z; Mon, 16 Apr 2018 09:08:33 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807j-0006GK-Kw
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:31 +0000
X-Inumbo-ID: 992982db-4155-11e8-9728-bc764e045a96
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe08::605])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 992982db-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:33 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=E/B46KjmFRzaleh5wOqt76+TxJ+9CRzFnqRrVlN84+k=;
 b=TnetUBapI6Ye52bZIygcE8JES7K7Uebbosg2Bww6V6zv7MQYUr603i63dv9b+JrPJ4iHkp+QDt9CthHtjaz/nNTmq6UbGxIcBCuMfztnIbo6xFsJEkV4WqTvAaXG9kcHnMYjdtgMThqB5mzNqdBpRNhM0jJEnY36+8Z47QGygNA=
Received: from DB6PR0801CA0019.eurprd08.prod.outlook.com (2603:10a6:4:2::29)
 by DB5PR08MB0984.eurprd08.prod.outlook.com (2603:10a6:0:13::27) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 09:08:23 +0000
Received: from AM5EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::202) by DB6PR0801CA0019.outlook.office365.com
 (2603:10a6:4:2::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:23 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT016.mail.protection.outlook.com (10.152.16.142) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:23 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:08:07 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:40 +0800
Message-ID: <1523869666-30659-8-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(39380400002)(39860400002)(396003)(376002)(2980300002)(438002)(199004)(189003)(426003)(47776003)(336012)(36756003)(11346002)(2906002)(126002)(446003)(2616005)(476003)(16586007)(110136005)(54906003)(26005)(106466001)(186003)(77096007)(6666003)(50466002)(8676002)(316002)(104016004)(26826003)(72206003)(5660300001)(106002)(246002)(8936002)(478600001)(356003)(76176011)(59450400001)(49486002)(486006)(51416003)(48376002)(86362001)(305945005)(50226002)(4326008)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR08MB0984; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT016;
 1:gWLXMbBmhXrGaUZASupDwMstu+IIVTxPPT9e0V69OnanrePpj2EgxPp2EYDqprzCLUu/pdXwqAFFXT76eM/4NxI6c2xCXQBpXS6V363LxbzSZAXSazm20uFrsbFbDnbo
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR08MB0984; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0984;
 3:jaD+2pdWerH8cH14gi0B+o2xdM7YmKUGGzlGXlIA27sY/I2crwik72keKP5fxB+eTceg3VB+vovG0uQcC45q2ujsvkNxCmu1W47zTX0GPU/V3i2CRFdqaiWvNZLWI/0h8U+cfwH/PbWCTgUdtOetC989h78PWt3pyI1X5nDx+MSTV2a5rd8E/DYo78uoaG7w6TAEDh2GHQinYqCDgy2L8dRJ+eHFDseXt6YGJwfWcDX7fqD/krrig6Hh1+M3NoKCaivSq/s3u4eCTvEGap4TphNowbtD7p/t8IYbjfTND2xaT2QoV58/0zSLGvP3ExWs20xDa/r7AUOhfJ42/Zj4Uh66IB9uZlNbRdXkOujoj2M=;
 25:X9tnZxLfcF1hiuvqCeMgd9yMrwRX1pmIEbxrPunM7jWVTcLAeAt2o+ZaN5falRnsthuF3Y98jRJlJKJZRHuf5ZRIPYNbQKLxzi3mtfR3QRPFqR6Eaz+Z1+eXXuNVX/c8YZ54WDym/64KO0mdvzHo35J/Re5GP8fZBuhYqDIuuu3oFhxE04HOJIjf9mS2pb9dORbcDXAB5UNfytnyFcC3de+ML/E/qRvc0KpDZIrRhckNnaKf35kpJ2eGYCuwglRI6S2UOybRaIsnar1Q2zc+pvFP7qewTTaBmbG4GPRsGTDiiY7CS9/ymqF1x2QpakREO9UNlrPXsjR5sIpdfNFc5w==
X-MS-TrafficTypeDiagnostic: DB5PR08MB0984:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0984;
 31:iunLhpP0KSu2oS6gYBywYTqi3muq509eBixx4PbZmXbYuTHoJySuQB7UNw6SbTjVHjGDoNYgpAFCZnC0MQCfz1pz5BiDf8IfhPdkIN802+SI6kCvX+ltS1HvVQW/MyQewXzjKbABdpPCYK5ZRyxJgiLfDPCO6ZhHfxMA3yTgyAnHus2bBN6BeK/fDahY+rXUCFeb1ZIybR/Tkduj+K70v0eaGgXp49NyaR11ZGjDe30=;
 20:YrFof+3hs5yCXWwQoaFDBa4ssQpsgq1hXFiUtRfPnmG78XIn4Lq5RSrgoN1quGE2pgC+N6lXWQTy/bSrVx2HHNCBYb4Eq3981S0VcUTS2ZgVLEI5jFXwqFOmX90tURPpFZpHyYWW5YG3eeESQwpq95xxu0/O9I+1h3Y05mZkB9gBpt6pt4EPJkilmLBgu6vpQxhKRGCvMA27f0DTiyrseeLbJnRZz+1bhOUi/kyQ/xZx56zXmmLbUVyIsWF3rls4;
 4:U6IaSqBpetioyGnZLYifZYYYXW+jhRUBg2cMtRq9MEVivGf4QMyejxaOAJhEs+RqaLHH5SC43Cd16aBSeDfeFseBSNFN6bilYx7HMUwdYLvhLS9L9Ljbr2wjHEGnllsn/YyODKqtUCPWE11xDfzk0clDO0JJBlEQp32o/T5zPWOVZyBezOmLKVsgXwexpuOWKsRQbmiPMaNZF4cY74WO76fUEa7V5gEcl0Kbr2f5L4OOx10mr9EwyGKlWswpVFeThPxusgmypitRllswDUIG4dLNEjsCqT7aBVKe3iYZ01/0DPZwr7LFHSTbKtlWJwvR
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR08MB0984B60C6B0CB2FC8390EBCE9EB00@DB5PR08MB0984.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93004095)(3231232)(944501327)(52105095)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123564045)(20161123558120)(6072148)(201708071742011);
 SRVR:DB5PR08MB0984; BCL:0; PCL:0; RULEID:; SRVR:DB5PR08MB0984; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR08MB0984;
 23:GP3nx9Aiz1sQGrNSBcZTAaTRUYeIUyZcAW45nPw3n?=
 =?us-ascii?Q?dL/fUzWH0njAEcfo4s+rKaX0UMUL71ur0u+i7TJ+VL3s+Jm2/H6rY74BsGPa?=
 =?us-ascii?Q?/SB+KNpCTTwhrF8c3Wrk/iAzNsfDbal51KWGq4elwE9nVyu/QHnC2Ybz7/7u?=
 =?us-ascii?Q?DGxGOXnWH3X3QlM20F+t7Y5p20THrb9El9dHP50SuGctr5mLhRbAEMvD4+KZ?=
 =?us-ascii?Q?ATGd23rsqQWvtS/bQiJNwgZ5QBBV15ldweHh9q9RcmHlITKCPISqi7ARsg+h?=
 =?us-ascii?Q?Mvfc2Bls5RySUPzM+g4lv1uNP2wcFpAgrQvlTQWqgcrzhrXM7Q7QEjKpwWex?=
 =?us-ascii?Q?oUeBWnWn4r6Odtg26ZREVeDz+f7160yEvYI7QJ9CR85SNFye7zUCdVZ3A+CA?=
 =?us-ascii?Q?KGMIUND83JvpDD21R4L+pVtN6TA1q5Gmjs/LILXyIJUSNFYP1iCcschmkX5L?=
 =?us-ascii?Q?EZ9hZYaHNiQ6Pi2tCSt1mWUj/2jg9fmjz1c9MW0SJezhi07X0EnLwqtQokdc?=
 =?us-ascii?Q?B6jH4V8qvPr1oGfFT1fx4hpyTuxe+YyEdbXUL3DwWWDz/Gcsp46r/xp6HDxz?=
 =?us-ascii?Q?AMKzv0fm9vtuTXCwjdXwHwzyx7J3WjBJDSRuALjqrQ1z+tdAUYBRJxS2ITLc?=
 =?us-ascii?Q?SExTaASY1HhbAZzMjfJ8uw5mcPmkLpYtWcJuA6xnRwzMWpi4OJUw48ui4b/1?=
 =?us-ascii?Q?5GchU9Oh+spUX0zg25iIyPameYRXGR9V8mt4YHiq0y4mzUglTp3P95PCXIjX?=
 =?us-ascii?Q?1eZ5/i/rxWkD61SqN9KeFXVnWxKT597hWwgl58myBultgOqVEsF9ICrN9e6Z?=
 =?us-ascii?Q?BryIxBigUHLftxbaqWF1NOs8Xq0C3rrbEWGJAlHYzCi9WUtiqsEVvsX8Vvne?=
 =?us-ascii?Q?u+8drejpkjorRUyd5OrcZ7rCpsctIlKfTIHBfm/nTCvsDMxm4qRUC96EM57z?=
 =?us-ascii?Q?FFLmzeeYCbpl0Rs1BhCIQ0BtgpK9rMJmYgiox22pbCnoDt1+iG5eETAJcEAC?=
 =?us-ascii?Q?BdqgKXgBZc6aVIZd8EeExgqDlYqwiSeZZ2Kl7Zq0D1JL0W6iixWAUrQ+BFEL?=
 =?us-ascii?Q?YLhf8epoRNRtglWeE/x9Du+R6TrZGlAT6rxVXAFX4bF4Y1JtGu/kcsmudP4T?=
 =?us-ascii?Q?iL9Pr0mAJo=3D?=
X-Microsoft-Antispam-Message-Info: Y+aFTLPld5LWkVSvv9f7Pq/rd/mP5OApdZ7a2oSS6aJZ9THGl2wunkJxc82AxbvzQB6BUhxVZqMOyng6K9aBdJke6R7reW9B0CSIsVoNMImQNh7QLRlJEhdMKyJ3z/+jStaG+RSDJOhde8OdV2bFrDEePVdwFyIeYK55ig4qyP8fFNcJpkAerhztDi1Ods7ukEveQOJfG8lneuUdZt+seh2Vnf0H+EOWktcaIdrPV9iAk+Aicqb3r9dxAFcDJPJNSzzMovFQa7G4rMgjN8MxtuaLdT6MzwqwgHzbe8PlNVsv27oMjBMWQVngt/KccmE71xQ1aNpPmIaW1ja4i9nZ6PM4TYSSKEM1qCjJMWxXd+qccqIMKHxCUD942MT03gAO2LwazP4UV7y5VG7F5ixJ/3RWuBgVsJ6goYedrZzrZVE=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0984;
 6:sggDyYZjGaO/fr4wbC6xg3O1LKK6+WWWGOHb0F5EcrbY0xsnwcIg//GhsuUqoPydxjUiRCnmXEgQCxrHxg+BB5zqst3YHfxJgU7kjAdawPW7Wrw7jvZhxEyXGPWVXLRMjejjKdVGtYbm53D8IrG8G1kE2xGXESPQz+plaBLapqACJYUjqDx0QsTaFiKpCfq8Wumk0/HdjzfdKT5zRwq1V4cH/PjY1DFwZk/wQ+Gb0Shen+nOizZ8ysB0mWEdBvuRcQGqsfVftwnhbo5GckDHL55IeUVwQQ6QIYzAOMnlM/zvLaQOStkQx0oHAA/H0WwDUdPvWqBENzsjPq1vMcGLF0m+KTItFKQUBTWz+OG38xlCQVwT2afCB3Ak4AEseaCHRj2BoKeK9wzMkDMDNc2cOGi4o8sAF8xOyQp/aloFYePRCTtXn69eCw5A2+scYew0ZuIxq8+FY8ZnCClVje8/5ppXoru7JNIzntdvWQ+zhr5rAwQJDFri7htVIhe4/jRI;
 5:eCG6X4sJATU7+sGMxv5CcLojC36bEBli/c0T2lWHfufBl8tF4IY8qnAThi17nL7Q7trqFjm2epDmJFmrrPCMWuTZ0bmxWYLJFqFNGc4lG7BWh1ciYNARZcAB7I+Fq1jsrVoP+A8sxuvA959oS+pmy5oU5umYXVxEQosxXCzKGz4=;
 24:TM8b4HfaH+VG4YPkZ56rpB47ccdZl12DpbxAzdqo7GH7mzPdX/xlOiTvPTeYSxHOr9yLVNxuRt7QRIpTp7mKgP1Sjl4aEV+X/vFZPCjMu84=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR08MB0984;
 7:9Uc7REqmOMPP/v8M00oTl4dKlJBAHYPjNlexXBUNsAFyq2vcFn9sNiij1Ne5lha6hsQRnFSkWhhvSyeHdL3UrwxAbEcB+t+IqJrZQUdsiWl42z6JdkJCuHOWAe7UBB9/Tneb/g4XXPmEkbGNOREQXSB6PAuQ+kbIJgp7/GREHE5u29A3+qGrUZV5ZyzGy/2bAdPXi/OPXd0gk/jVSQrkLYEz5ItWNO9MnUsSC+cW+gc5qB1VGwzkOwTcU36yZC6s
X-MS-Office365-Filtering-Correlation-Id: 164e71f2-16d4-4da5-00b3-08d5a3799b69
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:23.4013 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 164e71f2-16d4-4da5-00b3-08d5a3799b69
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR08MB0984
Subject: [Minios-devel] [UNIKRAFT PATCH 07/13] build: Add a makefile
 function to check and set flags for valid gcc
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U29tZSB0aW1lcywgd2Ugd2lsbCBhZGQgc3BlY2lhbCBmbGFncyB0byBHQ0MgdG8gZG8gb3B0aW1p
emF0aW9uLiBGb3IKaW5zdGFuY2UsIHdlIGNhbiB1c2UgdGhpcyBmdW5jdGlvbiB0byBjaGVjayB2
YWxpZCBHQ0MgYW5kIHNldCBmbGFncwp0byBkbyBwcm9jZXNzb3JzIG9wdGltaXphdGlvbi4gSW4g
b3JkZXIgdG8gYXZvaWQgYW55IGRlZmluaXRpb24KY2xhc2hlcywgd2UgZGVmaW5lIHRoaXMgZnVu
Y3Rpb24gaW4gc3VwcG9ydC9idWlsZC9NYWtlZmlsZS5ydWxlcy4KClNpZ25lZC1vZmYtYnk6IFdl
aSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPgotLS0KIHN1cHBvcnQvYnVpbGQvTWFrZWZpbGUucnVs
ZXMgfCA5ICsrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKQoKZGlmZiAt
LWdpdCBhL3N1cHBvcnQvYnVpbGQvTWFrZWZpbGUucnVsZXMgYi9zdXBwb3J0L2J1aWxkL01ha2Vm
aWxlLnJ1bGVzCmluZGV4IDJhYzcyOWEuLmJhNmYxNGQgMTAwNjQ0Ci0tLSBhL3N1cHBvcnQvYnVp
bGQvTWFrZWZpbGUucnVsZXMKKysrIGIvc3VwcG9ydC9idWlsZC9NYWtlZmlsZS5ydWxlcwpAQCAt
NDIsNiArNDIsMTUgQEAgJChpZiAkKGNhbGwgdGVzdF9nY2NfdmVyc2lvbiwkKDEpLCQoMikpLCxc
CiAgICAgICQoZXJyb3IgUmVxdWlyZSBHQ0MgdmVyc2lvbiA+PSAkKDEpLiQoMikgZm91bmQgJChD
Q19WRVJfTUFKT1IpLiQoQ0NfVkVSX01JTk9SKSkpCiBlbmRlZgogCisjIHNldF9mbGFnc19mb3Jf
dmFsaWRfZ2NjICRtYXJjaCwkZ2NjX21ham9yLCRnY2NfbWlub3IsJGZsYWdzCitkZWZpbmUgc2V0
X2ZsYWdzX2Zvcl92YWxpZF9nY2MgPQoraWZlcSAoJCgxKSx5KQorJChpZiAkKDEpLCQoY2FsbCBj
aGVja192YWxpZF9nY2NfdmVyc2lvbiwkKDIpLCQoMykpLCkKK0NGTEFHUy0kKDEpICAgKz0gJCg0
KQorQ1hYRkxBR1MtJCgxKSArPSAkKDQpCitlbmRpZgorZW5kZWYKKwogIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMKICMKICMgUGF0aHMgYW5kIEZpbGVuYW1lcwotLSAKMi43LjQKCgpfX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGlu
ZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhl
bnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:36 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807o-0006IG-D5; Mon, 16 Apr 2018 09:08:36 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807m-0006Hp-Og
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:34 +0000
X-Inumbo-ID: 9adfbb24-4155-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::60d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 9adfbb24-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:36 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=Bwi2xXS7BnDfcjYgxnNRH9ZETUch7JLTXdVQxtoDhAE=;
 b=RFnEC4dNyqW8f0CwATCHD3RT5iwRK6dDlzMct4cipWrmQvBUJf97N5baBHropJVcQZ3Bp6pnconry/r00dn770oA6Vl8IZ9p5rIxsu6nKYqO/vYrKhD6mi7DPpXJ9xC1Ci188h1w3u9obhTyJE+A9Zm2uCsOHjbrtJOAre1fMOg=
Received: from DB6PR0801CA0005.eurprd08.prod.outlook.com (2603:10a6:4:2::15)
 by DB6PR0802MB2421.eurprd08.prod.outlook.com (2603:10a6:4:9f::22) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 09:08:25 +0000
Received: from AM5EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::201) by DB6PR0801CA0005.outlook.office365.com
 (2603:10a6:4:2::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.9 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:25 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT016.mail.protection.outlook.com (10.152.16.142) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:25 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:08:09 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:41 +0800
Message-ID: <1523869666-30659-9-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(376002)(39380400002)(346002)(39860400002)(2980300002)(438002)(199004)(189003)(106002)(104016004)(47776003)(50466002)(8936002)(5660300001)(51416003)(26826003)(76176011)(356003)(48376002)(36756003)(6666003)(478600001)(246002)(2906002)(476003)(2616005)(126002)(446003)(316002)(11346002)(186003)(305945005)(486006)(4326008)(50226002)(336012)(8676002)(426003)(106466001)(86362001)(16586007)(49486002)(72206003)(26005)(77096007)(59450400001)(54906003)(110136005)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2421; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT016;
 1:TTc5A0fntA+q4lcWYsGF25g/71TOIdqERJcsiZXcjajc0JJc0PsgSgpYfPcaapvv7DoEaL4OXa0puObkpdWWxQueEYp8SaMThc7C7I4a3EzHKZdQ4eVfSUZzqCrbsnth
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2421; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 3:nPjH6bbaTPhd6/gPecD8iu3GGkc0IuvNLqHeY7EHOroF4tJKQPW/Oi9bUuo0LAc+uMavP6r6X6pLlfe2Ue27tKQd/Hq3woUl86Bf9t9VSyF1DZlL3aA4vKIyMycRua8YAFjOLQlS85i0j0EMerL0Tz7YFjQ7J0rzP2hgeZrk/CO9+ClUowPaCZNXLruQNdUTiKePpATjNG/iRt65Lg0dFms93itUCjnMqBwc9TNuss5uXHCwtf0MVzHJRl3erw1vZFAh0F2lsKgQFcjpy3yWjNESU+GHqQzKWf1HM5/v95HKmnj8Yhf/wsrtW0FylEK+8m0u2JkhzhmWTobdMMNwsASj9iM7wZufRsEi6kxkaYo=;
 25:RQxpW5ZvGYI98soAtGT1jC3vZvLZMET/5lvmyX8cOwT/5FXSCUxijihM7e0cLxF9AKDA5TYAZHMAjpgtjrsEgRWuBCysuDhXMOYn7UbVliVnOeL3woWegkmTnjdtR0ztBeUv1GkxHeCLecsbi2oqqo4ROXm7OhSutVPk6JdSlZIU7qQ5o+Hs66CDyD/t1Adn4FtPoQhAZa3h1HHso9XajpiECSYOVKA+WHeokEptxU2xoQVdG4bvM6PkMnn9dqzkPBX+Ue9WpwwlpovrEx76ciWCSxcuYhSYtUAzq8rJtfkTyneBZLJNCxKhj5cR/tHVFJkuSHxfX56ifgpSpHyqVw==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2421:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 31:Uia8TjyNeZLUXy/tVjJvSgX+xahDpyTi27JDQXm7xa9JuPigX1wOKnk7FyhrEUk5pd64yHaUv9W//4zJEjPV9wDRN7JFB68Bm6sTyxYKGf9F/mhaU9fJyG4vwsOPRzYQmCitrAJUy+cq6RyhZuYb7aYU5Epu0cVe7pE066CKmVJ237fQgKTWmMTC8S+ELKm8mar+rqxlOlzrFfZ4RF2sH/PeB056qtFbzzBtilNiyHQ=;
 20:UM5FwpP6MUDMamDv/pe4Ull+l36tmdQDzAyXTI22s5WliH5Otsk7xQ4TanFQgrZk2tH2G/ZEdbNsYyIQvFhxh269Go6Nh0JZXnree1QFATDh6Squrue9qzkCezdxMR94q0HgDu1djwfrarX5gW0oEutUm6/SXqqdDkCubjZ8ZKAN0wdyqLstNp6rnhnulbTkb9opND/cEZfugrix8IwwBzgY8KPanOKbs57kj9b7LJvPLoQ3xxyChYRYnXpkMImk;
 4:3dprYd/RQavxjByMrlfhvxU5LZ2Gb/QE5vuqbkDCJhCyTsc4j1D9doH/UiXhesCqHMsJPxt8CpUxTV3NX/z5HYw82orLllU+FOq0jmKusLE/DvVLVql/SgiDz46EDL4Cld7lLD6BLL0CMmI3ASqJPhSH6xKsKtAWhcoC83K6x4lWWcGPboGU+34pcRUyJ6FImr6VpIsg1V2FRIFex7JEZZ1QvHONRz/zajTkJDuOTMQVNK+45UJGj10SBge+s8zgvfikkHRyuX6OZZbSBG7SseGj3W1lZrHGEhF3LIZUy9gvp1zgOKqgRs/Cto7DJt6v
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB2421799096C81FB422F744449EB00@DB6PR0802MB2421.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93004095)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2421; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2421; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0802MB2421;
 23:VPgyxXIM7o3oFTHqYkUM2MqVSxlSg6MH3JowbTK?=
 =?us-ascii?Q?xEoN7418VYpoKBO4JSLgJVdRQo/Qc9aP5YZv52S+unTKUkGNTKWMgS8U2D+S?=
 =?us-ascii?Q?rEI32AwRuWiIKVNFBptCltarmU6T6mHg2zqjJtjmz/saAPhe3rHefhSUrh3h?=
 =?us-ascii?Q?81JwlwaZVTjNlH6TdJwLYbg3T8MrCTXUgm7S+4/byJUqvAJMo+1ASb7B66Jl?=
 =?us-ascii?Q?buXW2p1vQYqtH4T6mJjL9S3aL0sTUUvpF/JhNOfZxitS6fFEkGnCczzV3LNe?=
 =?us-ascii?Q?qqomcbh6F4i912LQMKHiykOGcr5UOTokVS9lTCOr5pBUhbeVP5mpNMNc6A8O?=
 =?us-ascii?Q?o/NZB8mJ4oBmMFPOOh3IfzfXLHNneqyXqPOLrGMPhO0yaDoVIBOSU7B5KPJ+?=
 =?us-ascii?Q?GBc3DVkm2RnumILBn1vEbHIevtmKJXFsez9vutVw/5x31zvQM+oaCeXHUtB4?=
 =?us-ascii?Q?30z9WKeomET5YGLnVREb00/fq6jiVUcsQ76PeYBA86xzFhXhmhkTQtGqN3Za?=
 =?us-ascii?Q?6P4u/yjHSbibYdcn1ZuFB1jYX6vrgngsJ1fpx06HP4LW+bWDhzLeY1GyGmpK?=
 =?us-ascii?Q?IPSTVFdvdCakrgj9xqWFODrA6piAS6boLp3U681j5/9alfiCjRhmoe22cghj?=
 =?us-ascii?Q?680tvKnDyKshbBN0fhniMF/QZQa9ISttq3vpOqqeGpRnTMCLH2IzR2+2JIxM?=
 =?us-ascii?Q?NPO7E245rg41UqDVANhNhXWlQuUHEE5DqZCBJYMIEUk0s7r8qAmZF66IFsWE?=
 =?us-ascii?Q?dnzI4YXSSfyxzVsy+aFBBDbUiBF+VGy/kgMY+VxiOTInTOIrd/wzyVqLmLq3?=
 =?us-ascii?Q?EomVyLrCWOSyrTqwWJJSNxAHbZimjcC9cZO7f/4k4l9JNEgV/dYzatzxjRQ0?=
 =?us-ascii?Q?bWLyf7Ki8JXQFFRonyKCI/11RY4idpSqVw6xuex9Xj0Qr+Rhh3QNFhvrCTWu?=
 =?us-ascii?Q?zltR+FMQK4hqpf7h+EgvxDP7Oic2ZxsUWqxt5qsxnOyi2abUbqwlNxGND8MT?=
 =?us-ascii?Q?WmBipdbBNEM3fgL2K5hrG/BTon8ecouZIwIvOlJtuYngP9smd6JCC6dCsABB?=
 =?us-ascii?Q?5hbV9hQGvBj/0lNtIvaVWldozVKiC7XRv7k5FoC9YfvMeu9Qpc116c1BKZdN?=
 =?us-ascii?Q?MzijB89i3s8k=3D?=
X-Microsoft-Antispam-Message-Info: I6pjsA51ysLQ6TeIDYfG2XAl+YXCbCqka+EG6j4jWVcA3NP/TqdEl875FEmfmO4cJ49txrcXiLyWxSrjkSCJUy0BCi2hX1Ycgf5nz86yOcdP/nsKdkDYsTwQiL34sXyAONY5UODBpbzpTy0wvSRlRsgpgRSMqKSC7ibThjtwsBqa6b0vwEtdEG2lSzm50yCPB79w9W7JX1lgPlMCqHMRj9zhZmWOjryeJ1HWlEWm027kqkbkoiBuCYOxTrlaQwAwJOojiEgolRTWE5vLObzCndAcIThX6KwycjAnXlXirDK57Ny2eu2syZUJWPfdhbCXgM06E8K1P9K7MiHBmGbQz8fr5f7CCjNUI8etz7sqDVB5wgDZ0HrwaQjwX0ns1Okvbpc/cuFCeRmoDmP52VwRj31GQgZU0ZxATAM8u/s57uw=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 6:XnBEsf4Z3ouqjRH22tVyOzH5XkALKbSl0da8L1eubO51eEnXlADmEzwfFZKKbfFpRu+cFqIl676T4v0URCdMcbglNznGXyQE9QuSMnTYmMhKchNr6qxzaFzXCumJ5Bc1CJRnLwy4I/4EMbgYlN0hULrvKyeZts/MImfbWtaxtdVz2MoJVmIePuHx8K0tvP3nw++w0lmXhRZD7ab/GOyIecRjWk11Tq9S4VS+Pq2dryb6VEHMY1Ju+MJphH1ldCI0OlGSrHdFFD4XIsC5Li3jLn8Kmt2qfvF98bZ/1z+ZzZkndIHIgdkaLGj1LX+g7V7hmDrb7c/ZtIH8/OxA7EIhSfkDkdsEIwZNQY8GyBJA6YgLOJFnyB71Dc9TzWP927SddBRnY6V6IkBQOd3++jRaj216TpBZ3CDn7UrG0wUDJYdsxAlUsIyYN30vhkMiz1jg23bJRSLz4MjZ36RwzY0SVxtOe9/+eXbgrgwoxGFUfMeq5/iiwrVZ7LQN03fn5dlo;
 5:EvQN33g3GmDfzWXhAY5omdSbYy8nHlBAR1HTaBChauBc0mgOAzmP8mYbiogzMZoVrD4L/5swtAA8wooiEKP4r9ci9PXubEHF0s06oGNwA+DFX0rPFixTH0tuae49y42ib7EHSYhsrOguembearenK+pSL+KAJF0dJAC4QRI6HUo=;
 24:Ll0Nkkv+65HmZYzukzklrQuP9PZ+E6CbIqxzDU8qKi22bmQa9hYhTRBAm5nAWltsk5F9L97FaCfyxOJEy0Y8c6VIocPR0E+FG893uem1TJ8=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 7:r5BQsboSvjKPpkU7SA95w8Wy0LR0pT1Slay7N/QIuDqEfJ79AZH6JNv3Ijj7AoXuc8E6c2Tif1TErOj9wXFbpVHFdD1vEwGIlNkv2Nex2ujBbINPurZTV9dzGgwBDKXNnnE2GbzLbDLmds0MVPwV0Oj/A2VyJ3tdxN8wC6Cmw3mssznUFpesmo2I2qtQmXTQzWaAzbCoaZvZeC0eJs+vc07H57KCveEHjY4iH3ID+Dfu5y9mCdLsdehJXEkkMGQ2
X-MS-Office365-Filtering-Correlation-Id: 5e048b74-bd89-4ff0-e144-08d5a3799c8b
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:25.3232 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5e048b74-bd89-4ff0-e144-08d5a3799c8b
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2421
Subject: [Minios-devel] [UNIKRAFT PATCH 08/13] arch: Add arm64 architecture
 config to menuconfig
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIHRoZSBhcm02NCBlbnRyeSBmb3IgbWVudWNvbmZpZy4gQXMgZGlmZmVyZW50IHNpbGljb24g
dmVuZG9ycyBtYXkKaGF2ZSBkaWZmZXJlbnQgNjQtYml0IEFSTXY4IFNvQ3MuIElmIHdlIHdhbnQg
dG8gYWRkIHRoZW0gdG8gQ29uZmlnLAppdCB3aWxsIGJlIGEgbGFyZ2UgbGlzdC4gU28gd2Ugb25s
eSBwcm92aWRlIEFSTSdzIGNvcnRleCBBNTN+QTc1IENQVXMKZm9yICJQcm9jZXNzb3IgT3B0aW1p
emF0aW9uIgoKSWYgd2UgdXNlIE1BUkNIXyBhcyB0aGUgcHJlZml4IGZvciBBUk02NCBDUFVzIGFz
IHg4Niwgd2hlbiB3ZSBzZWxlY3QKImdlbmVyaWMiLCB0aGUgTUFSQ0hfR0VORVJJQyB3aWxsIGNv
bmZsaWN0IHdpdGggeDg2J3MgTUFSQ0hfR0VORVJJQy4KU28sIHdlIHVzZSBNQVJDSF9BUk02NF8g
Zm9yIEFSTTY0IGFzIHRoZSBwcmVmaXguCgpDdXJyZW50IHN1cHBvcnRlZCBhcm02NCBDUFUgbW9k
ZWxzOgpuYXRpdmUsIGdlbmVyaWMsIGNvcnRleC1hNTMsIGNvcnRleC1hNTcsIGNvcnRleC1hNzIs
IGNvcnRleC1hNzMsCmNvcnRleC1hNTUgYW5kIGNvcnRleC1hNzUuCgpTaWduZWQtb2ZmLWJ5OiBX
ZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT4KLS0tCiBDb25maWcudWsgICAgICAgICAgICAgICAg
fCAgMiArLQogYXJjaC9BcmNoLnVrICAgICAgICAgICAgIHwgIDIgKysKIGFyY2gvQ29uZmlnLnVr
ICAgICAgICAgICB8ICA2ICsrKysrCiBhcmNoL2FybS9hcm02NC9Db25maWcudWsgfCA2MCArKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDQgZmlsZXMgY2hh
bmdlZCwgNjkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0
IGFyY2gvYXJtL2FybTY0L0NvbmZpZy51awoKZGlmZiAtLWdpdCBhL0NvbmZpZy51ayBiL0NvbmZp
Zy51awppbmRleCBlZWE5NjFlLi5hMWNlZDMzIDEwMDY0NAotLS0gYS9Db25maWcudWsKKysrIGIv
Q29uZmlnLnVrCkBAIC02NSw3ICs2NSw3IEBAIGNvbmZpZyBPUFRJTUlaRV9TSVpFCiBlbmRjaG9p
Y2UKIAogY29tbWVudCAiSGludDogU3BlY2lmeSBhIENQVSB0eXBlIHRvIGdldCBtb3N0IGJlbmVm
aXRzIGZyb20gcGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9uIgotCWRlcGVuZHMgb24gT1BUSU1JWkVf
UEVSRiAmJiBNQVJDSF9HRU5FUklDCisJZGVwZW5kcyBvbiBPUFRJTUlaRV9QRVJGICYmIChNQVJD
SF9HRU5FUklDIHx8IE1BUkNIX0FSTTY0X0dFTkVSSUMpCiAKIGNvbmZpZyBPUFRJTUlaRV9ERUFE
RUxJTQogCWJvb2wgIkRyb3AgdW51c2VkIGZ1bmN0aW9ucyBhbmQgZGF0YSIKZGlmZiAtLWdpdCBh
L2FyY2gvQXJjaC51ayBiL2FyY2gvQXJjaC51awppbmRleCA2NGY0MThjLi5lZGNiZGQ0IDEwMDY0
NAotLS0gYS9hcmNoL0FyY2gudWsKKysrIGIvYXJjaC9BcmNoLnVrCkBAIC0xLDYgKzEsOCBAQAog
IyBTZWxlY3RzIGFyY2hpdGVjdHVyZSBhY2NvcmRpbmcgdG8gLmNvbmZpZwogaWZlcSAoJChBUkNI
X1g4Nl82NCkseSkKIFVLX0FSQ0ggOj0geDg2XzY0CitlbHNlIGlmZXEgKCQoQVJDSF9BUk1fNjQp
LHkpCitVS19BUkNIIDo9IGFybTY0CiBlbHNlIGlmZXEgKCQoQVJDSF9BUk1fMzIpLHkpCiBVS19B
UkNIIDo9IGFybQogZW5kaWYKZGlmZiAtLWdpdCBhL2FyY2gvQ29uZmlnLnVrIGIvYXJjaC9Db25m
aWcudWsKaW5kZXggOTIzNjI3My4uZjA4Mjc0ZCAxMDA2NDQKLS0tIGEvYXJjaC9Db25maWcudWsK
KysrIGIvYXJjaC9Db25maWcudWsKQEAgLTEsMTIgKzEsMTUgQEAKIGNob2ljZQogCXByb21wdCAi
QXJjaGl0ZWN0dXJlIgogCWRlZmF1bHQgQVJDSF9BUk1fMzIgaWYgKFVLX0FSQ0ggPSAiYXJtIikK
KwlkZWZhdWx0IEFSQ0hfQVJNXzY0IGlmIChVS19BUkNIID0gImFybTY0IikKIAlkZWZhdWx0IEFS
Q0hfWDg2XzY0CiAJaGVscAogCSAgU2VsZWN0IHRoZSB0YXJnZXQgQ1BVIGFyY2hpdGVjdHVyZS4K
IAogY29uZmlnIEFSQ0hfWDg2XzY0CiAgICAgICAgYm9vbCAieDg2IGNvbXBhdGlibGUgKDY0IGJp
dHMpIgorY29uZmlnIEFSQ0hfQVJNXzY0CisgICAgICAgYm9vbCAiQVJNdjggY29tcGF0aWJsZSAo
NjQgYml0cykiCiBjb25maWcgQVJDSF9BUk1fMzIKICAgICAgICBib29sICJBUk12NyBjb21wYXRp
YmxlICgzMiBiaXRzKSIKIApAQCAtMTgsMyArMjEsNiBAQCBlbmRpZgogaWYgKEFSQ0hfQVJNXzMy
KQogCXNvdXJjZSAiYXJjaC9hcm0vYXJtL0NvbmZpZy51ayIKIGVuZGlmCitpZiAoQVJDSF9BUk1f
NjQpCisJc291cmNlICJhcmNoL2FybS9hcm02NC9Db25maWcudWsiCitlbmRpZgpkaWZmIC0tZ2l0
IGEvYXJjaC9hcm0vYXJtNjQvQ29uZmlnLnVrIGIvYXJjaC9hcm0vYXJtNjQvQ29uZmlnLnVrCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYzNGVjNTAKLS0tIC9kZXYvbnVsbAor
KysgYi9hcmNoL2FybS9hcm02NC9Db25maWcudWsKQEAgLTAsMCArMSw2MCBAQAorY2hvaWNlCisJ
cHJvbXB0ICJQcm9jZXNzb3IgT3B0aW1pemF0aW9uIgorCWRlZmF1bHQgTUFSQ0hfQVJNNjRfR0VO
RVJJQworCWhlbHAKKwkJT3B0aW1pemUgdGhlIGNvZGUgZm9yIHNlbGVjdGVkIHRhcmdldCBwcm9j
ZXNzb3IKKworY29uZmlnIE1BUkNIX0FSTTY0X05BVElWRQorCWJvb2wgIkF1dG8tZGV0ZWN0IGhv
c3QgQ1BVIgorCWhlbHAKKwkJT3B0aW1pemUgY29tcGlsYXRpb24gdG8gaG9zdCBDUFUuIFBsZWFz
ZSBub3RlIHRoYXQgdGhpcworCQlvcHRpb24gd2lsbCBmYWlsIGluIGNhc2Ugb2YgY3Jvc3MtY29t
cGlsYXRpb24KKworY29uZmlnIE1BUkNIX0FSTTY0X0dFTkVSSUMKKwlib29sICJHZW5lcmljIEFS
TXY4IENQVSIKKwloZWxwCisJCUNvbXBpbGUgZm9yIEdlbmVyaWMgQVJNdjggY29tcGF0aWJsZSBD
UFVzCisKK2NvbmZpZyBNQVJDSF9BUk02NF9DT1JURVhBNTMKKwlib29sICJHZW5lcmljIEFSTXY4
IENvcnRleCBBNTMiCisJaGVscAorCQlDb21waWxlIGZvciBBUk12OCBDb3J0ZXgtQTUzIENQVXMu
IFN1cHBvcnQgVHJ1c3Rab25lLCBORU9OCisJCWFkdmFuY2VkIFNJTUQsIFZGUHY0LCBoYXJkd2Fy
ZSB2aXJ0dWFsaXphdGlvbiwgZHVhbCBpc3N1ZSwKKwkJaW4tb3JkZXIgcGlwZWxpbmUKKworY29u
ZmlnIE1BUkNIX0FSTTY0X0NPUlRFWEE1NworCWJvb2wgIkdlbmVyaWMgQVJNdjggQ29ydGV4IEE1
NyIKKwloZWxwCisJCUNvbXBpbGUgZm9yIEFSTXY4IENvcnRleC1BNTcgQ1BVcy4gU3VwcG9ydCBU
cnVzdFpvbmUsIE5FT04KKwkJYWR2YW5jZWQgU0lNRCwgVkZQdjQsIGhhcmR3YXJlIHZpcnR1YWxp
emF0aW9uLCAzLXdheQorCQlzdXBlcnNjYWxhciwgZGVlcGx5IG91dC1vZi1vcmRlciBwaXBlbGlu
ZQorCitjb25maWcgTUFSQ0hfQVJNNjRfQ09SVEVYQTcyCisJYm9vbCAiR2VuZXJpYyBBUk12OCBD
b3J0ZXggQTcyIgorCWhlbHAKKwkJQ29tcGlsZSBmb3IgQVJNdjggQ29ydGV4LUE3MiBDUFVzLiBT
dXBwb3J0IFRydXN0Wm9uZSwgTkVPTgorCQlhZHZhbmNlZCBTSU1ELCBWRlB2NCwgaGFyZHdhcmUg
dmlydHVhbGl6YXRpb24sIDMtd2F5CisJCXN1cGVyc2NhbGFyLCBkZWVwbHkgb3V0LW9mLW9yZGVy
IHBpcGVsaW5lCisKK2NvbmZpZyBNQVJDSF9BUk02NF9DT1JURVhBNzMKKwlib29sICJHZW5lcmlj
IEFSTXY4IENvcnRleCBBNzMiCisJaGVscAorCQlDb21waWxlIGZvciBBUk12OCBDb3J0ZXgtQTcz
IENQVXMuIFN1cHBvcnQgVHJ1c3Rab25lLCBORU9OCisJCWFkdmFuY2VkIFNJTUQsIFZGUHY0LCBo
YXJkd2FyZSB2aXJ0dWFsaXphdGlvbiwgMi13YXkKKwkJc3VwZXJzY2FsYXIsIGRlZXBseSBvdXQt
b2Ytb3JkZXIgcGlwZWxpbmUKKworY29uZmlnIE1BUkNIX0FSTTY0X0NPUlRFWEE1NQorCWJvb2wg
IkdlbmVyaWMgQVJNdjguMiBDb3J0ZXggQTU1IgorCWhlbHAKKwkJQ29tcGlsZSBmb3IgQVJNdjgu
MiBDb3J0ZXgtQTU1IENQVXMuIFN1cHBvcnQgVHJ1c3Rab25lLCBORU9OCisJCWFkdmFuY2VkIFNJ
TUQsIFZGUHY0LCBoYXJkd2FyZSB2aXJ0dWFsaXphdGlvbiwgdHJpcGxlIGlzc3VlLAorCQlpbi1v
cmRlciBwaXBlbGluZQorCitjb25maWcgTUFSQ0hfQVJNNjRfQ09SVEVYQTc1CisJYm9vbCAiR2Vu
ZXJpYyBBUk12OC4yIENvcnRleCBBNzUiCisJaGVscAorCQlDb21waWxlIGZvciBBUk12OC4yIENv
cnRleC1BNzUgQ1BVcy4gU3VwcG9ydCBUcnVzdFpvbmUsIE5FT04KKwkJYWR2YW5jZWQgU0lNRCwg
VkZQdjQsIGhhcmR3YXJlIHZpcnR1YWxpemF0aW9uLCAzLXdheQorCQlzdXBlcnNjYWxhciwgZGVl
cGx5IG91dC1vZi1vcmRlciBwaXBlbGluZQorCitlbmRjaG9pY2UKLS0gCjIuNy40CgoKX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1h
aWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0
cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:38 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807q-0006J8-Et; Mon, 16 Apr 2018 09:08:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807o-0006Ib-OX
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:36 +0000
X-Inumbo-ID: ffec9c81-4155-11e8-8249-2fda3a446a53
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [104.47.1.58]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id ffec9c81-4155-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 09:10:26 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=tsvn+aHTVEStFJlWvCVQYSzoKm0vk/QbUojcegC195I=;
 b=QfmtOc89FZghh8XkscM4iZDsgYniX7x6ngxf2PL1PWR0ylFWPth9Gx4xUS0Mfvh1kSoq3XKaGKKTAz1J5ABrdEYnXYlLK27BQc5oClgtuZUBRx+2Mg2DyOYsdXSI/gEulKMtMZVomnWjhiB7kkM2sxVYFqhNbXu3vz9Q4vjopPA=
Received: from VI1PR0801CA0068.eurprd08.prod.outlook.com
 (2603:10a6:800:7d::12) by DB5PR0801MB1590.eurprd08.prod.outlook.com
 (2603:10a6:0:3b::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.9; Mon, 16
 Apr 2018 09:08:28 +0000
Received: from AM5EUR03FT034.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::209) by VI1PR0801CA0068.outlook.office365.com
 (2603:10a6:800:7d::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:28 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT034.mail.protection.outlook.com (10.152.16.81) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:28 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:08:15 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:43 +0800
Message-ID: <1523869666-30659-11-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(346002)(376002)(39380400002)(39860400002)(2980300002)(438002)(189003)(199004)(51416003)(6346003)(11346002)(2906002)(26826003)(186003)(426003)(26005)(336012)(77096007)(72206003)(5660300001)(446003)(356003)(305945005)(478600001)(4326008)(246002)(48376002)(36756003)(50226002)(8676002)(54906003)(110136005)(8936002)(16586007)(49486002)(50466002)(47776003)(106002)(6666003)(316002)(476003)(486006)(2616005)(126002)(104016004)(76176011)(86362001)(106466001)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR0801MB1590; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT034;
 1:UpIsvvSAGj/tKmGTlGey8baF6W6R1rQZpX+3xy6Xq62RqiJ/VUi4exqE5F4mPACPL6FQhpjiG+FViT8fV9AEFqaY264KfJkQA+40EwWn4mlCXxj6ZSbUOyjLHKth/PBj
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR0801MB1590; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 3:TEoQsnhj0cj+S9nEY5pMJygycugRJ4KEozT4OT1MF5UqmuGw8kB79oCZ5sOg5QLV+feNuMGL5qDxAQFdP0G7METzPxKD7yZtYicc7Ngi1jE9mSjsVqLTsjDmg8WLvOftqGgBA9wDc+vHhF8A0rEtwNW9qbGDPgXwYqCtsl9B0CGGN5yNcZ8pa6RMHOru/kkeaDYOfnIAM1WcndLm3MjPB5id9GfG5cIsIxrDgYLMv/ir53l36EA21wRwKitx8502+hDZaa9pSjkzgR0N9gCi3kNGVQVy5Mkb69AIjBflfhOUF4Y7YiIZbdNGIwCsbulsrznwJAV+vcDIK5q+oe0mXIiawupxbssPGhLrvUqckvA=;
 25:DNb+IvXGlt+wZ82xmYtFL4jjDsxFl7F6h9VxrHhPychyPuFFgFgV+KEix4cH5Kh7Wx03Gwl+BgjSfCXkrDXD/kmwpik8Znkv58o4stj4jRcILQsJHDZH/ah0ZcTt0cmkVLR86sbk6vJjB1dswl8lPluQ5CF1m9JjyqDv1687ObV8bGLPbMZKu67DDOs/sJGE0hJPie9J6cmQlygT0mUEP4SzpC+XqABC1yP0FW1vPC7vvZNDQWougJTxI5HPT1BE8pelWZBrOoYOc3FDvfsMvAGpZQaEEDXYJgdVPHcdRNK38wqfDL7BDAzVTXXFXOYMfbx0DQBItOz4hto6UxbRRA==
X-MS-TrafficTypeDiagnostic: DB5PR0801MB1590:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 31:9ZPTVheweksd7Y6J9B9N9mfrCvov4GdsOhX+PrbTWX7h1j7irLNp2k7e6GZnbaN9Ub5Yvx1M4xKHuHkYg6SOpx5reytiwU9NT0ZoGRql95Ghpq2LUt1jd4P/OotMomBreeItjomTM8sKXT2UoHxVy+14ImLKLmM7WSUyYP3pr2Z69Zr19LoyWc29mhHb/4OehBbDeLwlHC+ak3CHtzEfnLdsgIMYMzEhl8ZQcXjsiqQ=;
 20:eJB7m0PWHD9Dc9+JNSf0GX9Dt1bbtLDBQf/wtKdWDzkoMktcMs/GjIT8PEVgHNhj5x9uBYYU0gj1mTBpqhqAOpAc9h3DUKMIW5zU3WFVfj8lwxLl9ttluQOedRduuSvfPPE33itFnpRLe2OC6C4XiYqHhZeEQhTvIE4nCqZmQx1pd/0Dd9I872xZWycx8KXu1wbiTZ5RgQ8flcXX4JdeEXhXc/RS6eN0myOqAQDSaWDkmKxnb3/djt/FrQQPMELl;
 4:8IusCK7c0Q6VPoR7dcOLiCC5TsKhisDjHlUiM+5TK3Ud08tOdBOLoX3Lg2oBUdOnDQS7evaqhlNicR8XU5FrxETPxOPzDIxTE7JaTyWOj240xcBriIIGTCo7G8SvJMJ5tUyetycDIgK1InAGJVg3+FnlNpVT0+f6rv9rScQc5hkuL7pH95TX8GjElo0dnDvcBlJCH/sLs0Mja0e7FXxF69Ed4uuiTAZ03mlOJAJDNq4StE996dWXXL3OkU5PmvwVxF7PvQGBDwxBTlVppBNQAUI65Exj3GrF3Wt34CRid6LPcznmI58fW670naw/NjUx
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR0801MB159084392D209967CEE7467A9EB00@DB5PR0801MB1590.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93004095)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:DB5PR0801MB1590; BCL:0; PCL:0; RULEID:; SRVR:DB5PR0801MB1590; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR0801MB1590;
 23:LNCvx2JTElJfxHS190SoirpcNvYApvpqWItcLWt?=
 =?us-ascii?Q?5KC/40GY1Dsf/rQDIFhPn8xAIUz0O9w3LXaiZp0a6KkSSn1xw5zddZHi9KPy?=
 =?us-ascii?Q?D02rnKVyuSFdjCCLH4oeVE+1qFE+1alIHOXaVs7+4fp+V/dMHFa2vjvIGc3m?=
 =?us-ascii?Q?64cARHVmZ524bH5qtYX0b75TaAAYcc0zzoz3HcbIUQNOTASD+Q/xOUMbcNrw?=
 =?us-ascii?Q?pxpkEQjbE/BrZDlxOd0vyqKAX2ducBe24sWJmbwtwWDQpBYwo9zCuz+fAKsa?=
 =?us-ascii?Q?sEJCAQfVWfm0Q1z6kL42HPg1JSiWc/6J7tIUv95u+2u7TZeGgOMYPEMHkO1C?=
 =?us-ascii?Q?nker1pKayR+zqIQR9a3ei68Vu2U+erwZS2dTIhfSbpZ/rVXYFYm9adBZzzUd?=
 =?us-ascii?Q?ErmxX2iwDvTR2GLqMJvFsNZMfDd4yoEry2H5rCHheAdkY5IVOxdloHbUyBwN?=
 =?us-ascii?Q?ufhx4plt8gCEaMSAkk3Ju9+u3kkRRe8GvfZNEsxSoegxaAJKa6iMugD3SYwu?=
 =?us-ascii?Q?i+BnDt66Cqr3pLEPz90E/B1Y7blaYOgudNR43W88RCaTJyh0AYsEbuvtuNeM?=
 =?us-ascii?Q?sk3q84zAWrEzlTqvgXqx3BCdIcOdbD2N/g+8i4MklevJ44zs+ngUbkrgz8ww?=
 =?us-ascii?Q?SUMZGNnQEv7CvhoB/FNpmyqb2wjy+ezLu+lL55Fi4VXyzlvUFARjUVc/5KR1?=
 =?us-ascii?Q?aSnC8nQNGepwxi8xcZXRG+YPWeWS2nyLNwsjr3xQ/Byl4n/rV2f5+YD6T+SN?=
 =?us-ascii?Q?u6JB/ijwq9iCK7otYSlThyL46kyy47qbHjMLLI0T/Sig/PKPfEp6AipZVj76?=
 =?us-ascii?Q?nw3aACSavCq+XJTdEQbnkqlLaPL7zNUToxYyh3KFt3pCBFXZVtJqn8TdNFI2?=
 =?us-ascii?Q?8xKlqLaw1ntQcS3arU6sjfDtaaduxzYjmZx58RPm40fJAZHxHS9uAhWKKVLj?=
 =?us-ascii?Q?VKjK3u2OzFomT8IgiNdznjdMKt141O3S5r/04CyW1BYSX0B9KmC8S6X3CM4B?=
 =?us-ascii?Q?ZIaLnMyfCwd1Yf5Yq+xV96EAoXr9SBNsb+bFs3yYODI7rNlwGeaCCW4yvf3u?=
 =?us-ascii?Q?ex5SsN4hH/S2iNSvBg3UUcdcC5B5IY12L3MaXbwxopmYSsMXf9iNaVdYgJjD?=
 =?us-ascii?Q?E6CBeRkx0e/4=3D?=
X-Microsoft-Antispam-Message-Info: 48UiM0+jJLvNycmSS9wkHjr714tXNbaFIynlXy66FXu6lJGYANbvbdJpaoxyBLgv1VVPCzJ6R71YVssfYtNz/yyHgK4WJ/lXE2rBchMFossyi0Sif95qpx/lS2yTfu8/8eT5szH9U+8o8Tke9E9iKtzEj2DysXABSHYMqT2tWtgGsb/7y3odT201Yc9Nojv1dscIhVxbf5zdEAn9xSj25XTzuYHcW6d9Fjt+pve7WxOepWvOuEV76chqO2t3VVu07kFdF2mPgdkdu75r/eK72mFASvRvRUBqT2VuRirj2ricvQRteRHq91jncMtpRNq7O9y7Uj8f/8JW7lZEpKNP6dtPde5ekQcWDRv+oHrb/45CyNs7dnkEHfBBGW3fBijGX+TQfauOhZVKe0PC4ThfBff2v43CodxXinhizZuH3oc=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 6:l0/7QajZorjkPI80WQyimkrBmnanms0jfliEddFtK41U/A4VEG/1PUrk+E2D6Nvg6isUQMhjRbmLmPlAvB2zdrKlf3anSa7HkzyRgAKQUpC2H0JyAbp5qavLPsA0SezDvJ8kE0ggKwfoad63q2rqzuGyVu9RmO8/XjtiTNPYx4O+TDTMBQhknZhGtck5+qVefD/KLUW6ssd/JLDYN+1dbya5147o5KAmwL4CFwgdH5VnB4LMHbtTwzCxxc49S9dO12DXL2L25R/JSTgGeIuVE6uniVImkVw/71zZJ9/ioAp7k4qsevoYp4X3/w+rO7Rv8FcURFcJau+xkchwZhFDVRGpLzAGXEz0ypivi9xbffTVh41Ecv6nZmh0g4bA2Ddc21hFcNAnhRKPupoYAYT+iKmXZUcpO/zZNinFoHUaCYwG8w7gr8KD98YPuju1yEiLtDXX9prviqr0WrmlcJiSY11R/szBikayQAMppTYBqqdXIYdBxHqMn9Qx+9H5B0mR;
 5:qeDanou4EOZ3HloMlAw0ou27RbHd82SjP33jCEuEIjtm7kxe0Xhxu6hoi9itiLA1glbST1eifvV0Eybrh1Wsj5rGMNhVj2GBplNZzxHLxS0dSjp8t5PCeV/+By4Blisfychgg4RlITa//xC5YZ1d8ThWXSwelJ3P9pzZB6Goj+4=;
 24:LIy4cJXJcU2j78j4XQR2698fvea4lqSidq3SOIdPRj3Tzh0hfOlWig3awP3VWN6dSKKllxRNarN1AJIjJv29aLn1Qfw5bVyvacptgvBCuKg=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 7:+f/S2KMP6GX7hI9JA22u0KFb8vt0nxKZZBjoEGrSggf/GKCyzx2dSdcmdwOQR/pT01Q2vWCEuHwjcIXtmgQBJQHPNdu2H9QW83oPnKgvc+thIVAihQdj8ltLBE+vXnpxcWsfIZCokaskFN3yc2rtxPp+0cZP7IVq2JWmTJog0He868+bu5+UgG6khgT2aOTZSfaecnVC7Wnd0xFEs5ODvBmMsgV8Do6jUjnJ5z2SV85RdzAe8QPx1NIZVUNc8ZCk
X-MS-Office365-Filtering-Correlation-Id: 72cd3d3e-09b1-4c21-4ae5-08d5a3799e35
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:28.0799 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 72cd3d3e-09b1-4c21-4ae5-08d5a3799e35
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB1590
Subject: [Minios-devel] [UNIKRAFT PATCH 10/13] arch/arm: Rename MARCH_* of
 arm32 to MARCH_ARM32_*
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIGFyY2hpdGVjdHVyZSBuYW1lIHRvIHRoZSBwcm9jZXNzb3IgbWFjcm9zLiBUaGlzIHdpbGwg
YXZvaWQgdGhlCm5hbWUgY29uZmxpY3Qgb2YgZGlmZmVyZW50IGFyY2hpdGVjdHVyZXMuIEZvciBp
bnN0YW5jZSwgYm90aCBhcm0zMgphbmQgYXJtNjQgaGF2ZSAiZ2VuZXJpYyIgb3B0aW9uIGZvciBz
ZWxlY3QgcHJvY2Vzc29ycy4gSWYgd2UgZG9uJ3QKYWRkIGFyY2hpdGVjdHVyZSBuYW1lIHRvIHRo
ZSBtYWNyb3MuIEJvdGggb2YgdGhlc2UgImdlbmVyaWMiIG9wdGlvbgp3aWxsIGdlbmVyYXRlIGEg
bWFjcm86IE1BUkNIX0dFTkVSSUMuIEluIHRoaXMgY2FzZSwgdGhlIGJ1aWxkIHNjcmlwdHMKY2Fu
J3QgZGlzdGluZ3Vpc2ggYmV0d2VlbiBhcm0zMi9nZW5lcmljIGFuZCBhcm0zMi9nZW5lcmljCgpT
aWduZWQtb2ZmLWJ5OiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT4KLS0tCiBhcmNoL2FybS9h
cm0vQ29uZmlnLnVrICAgfCA2ICsrKy0tLQogYXJjaC9hcm0vYXJtL01ha2VmaWxlLnVrIHwgOCAr
KysrLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0p
CgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtL0NvbmZpZy51ayBiL2FyY2gvYXJtL2FybS9Db25m
aWcudWsKaW5kZXggNDI2YzExMy4uOGI0ZGVhYiAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vYXJtL0Nv
bmZpZy51aworKysgYi9hcmNoL2FybS9hcm0vQ29uZmlnLnVrCkBAIC0xLDE1ICsxLDE1IEBACiBj
aG9pY2UKIAlwcm9tcHQgIlByb2Nlc3NvciBPcHRpbWl6YXRpb24iCi0JZGVmYXVsdCBNQVJDSF9D
T1JURVhBNworCWRlZmF1bHQgTUFSQ0hfQVJNMzJfQ09SVEVYQTcKIAloZWxwCiAJCU9wdGltaXpl
IHRoZSBjb2RlIGZvciBzZWxlY3RlZCB0YXJnZXQgcHJvY2Vzc29yCiAKLWNvbmZpZyBNQVJDSF9D
T1JURVhBNworY29uZmlnIE1BUkNIX0FSTTMyX0NPUlRFWEE3CiAJYm9vbCAiR2VuZXJpYyBDb3J0
ZXggQTciCiAJaGVscAogCQlDb21waWxlIGZvciBDb3J0ZXgtQTcgQ1BVcywgbm8gaGFyZHdhcmUg
RlBVIHN1cHBvcnQKIAotY29uZmlnIE1BUkNIX0EyME5FT04KK2NvbmZpZyBNQVJDSF9BUk0zMl9B
MjBORU9OCiAJYm9vbCAiQ29ydGV4IEE3OiBBbGxXaW5uZXIgQTIwIgogCWhlbHAKIAkJQ29tcGls
ZSBmb3IgQWxsV2lubmVyIEEyMCAoQ29ydGV4LUE3KSBDUFVzCmRpZmYgLS1naXQgYS9hcmNoL2Fy
bS9hcm0vTWFrZWZpbGUudWsgYi9hcmNoL2FybS9hcm0vTWFrZWZpbGUudWsKaW5kZXggMjYxNDQy
NS4uYTgxMDI1NyAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vYXJtL01ha2VmaWxlLnVrCisrKyBiL2Fy
Y2gvYXJtL2FybS9NYWtlZmlsZS51awpAQCAtNywxMCArNywxMCBAQCBDWFhGTEFHUyArPSAtbWFy
bSAtZm1zLWV4dGVuc2lvbnMKIAogIy1tYXJjaD1hcm12Ny1hCiAKLUNGTEFHUy0kKE1BUkNIX0Ey
ME5FT04pICAgICs9IC1tY3B1PWNvcnRleC1hNyAtbXR1bmU9Y29ydGV4LWE3IC1tZnB1PXZmcHY0
LWQxNiAtbWZwdT1uZW9uLXZmcHY0IC1mdW5zYWZlLW1hdGgtb3B0aW1pemF0aW9ucwotQ1hYRkxB
R1MtJChNQVJDSF9BMjBORU9OKSAgKz0gLW1jcHU9Y29ydGV4LWE3IC1tdHVuZT1jb3J0ZXgtYTcg
LW1mcHU9dmZwdjQtZDE2IC1tZnB1PW5lb24tdmZwdjQgLWZ1bnNhZmUtbWF0aC1vcHRpbWl6YXRp
b25zCi1DRkxBR1MtJChNQVJDSF9DT1JURVhBNykgICArPSAtbWNwdT1jb3J0ZXgtYTcgLW10dW5l
PWNvcnRleC1hNwotQ1hYRkxBR1MtJChNQVJDSF9DT1JURVhBNykgKz0gLW1jcHU9Y29ydGV4LWE3
IC1tdHVuZT1jb3J0ZXgtYQorQ0ZMQUdTLSQoTUFSQ0hfQVJNMzJfQTIwTkVPTikgICAgKz0gLW1j
cHU9Y29ydGV4LWE3IC1tdHVuZT1jb3J0ZXgtYTcgLW1mcHU9dmZwdjQtZDE2IC1tZnB1PW5lb24t
dmZwdjQgLWZ1bnNhZmUtbWF0aC1vcHRpbWl6YXRpb25zCitDWFhGTEFHUy0kKE1BUkNIX0FSTTMy
X0EyME5FT04pICArPSAtbWNwdT1jb3J0ZXgtYTcgLW10dW5lPWNvcnRleC1hNyAtbWZwdT12ZnB2
NC1kMTYgLW1mcHU9bmVvbi12ZnB2NCAtZnVuc2FmZS1tYXRoLW9wdGltaXphdGlvbnMKK0NGTEFH
Uy0kKE1BUkNIX0FSTTMyX0NPUlRFWEE3KSAgICs9IC1tY3B1PWNvcnRleC1hNyAtbXR1bmU9Y29y
dGV4LWE3CitDWFhGTEFHUy0kKE1BUkNIX0FSTTMyX0NPUlRFWEE3KSArPSAtbWNwdT1jb3J0ZXgt
YTcgLW10dW5lPWNvcnRleC1hCiAKICQoZXZhbCAkKGNhbGwgYWRkbGliLGxpYmFybW1hdGgpKQog
TElCQVJNTUFUSF9TUkNTLSQoQVJDSF9BUk1fMzIpICs9ICQoVUtfQkFTRSkvYXJjaC9hcm0vYXJt
L2RpdnNpMy5TCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3Rz
LnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0
aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:38 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807q-0006JD-H6; Mon, 16 Apr 2018 09:08:38 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807p-0006Ii-0H
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:37 +0000
X-Inumbo-ID: 9c568347-4155-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::619])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 9c568347-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:39 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=2L4lxHK4dwWeDBGyCq2aGVWJbuuBCzojMX+Q3Bz9hvU=;
 b=RPhu6p0ubESQb1zv+l/EJQXeRkY7DjuKV8nJTeo/aNgnCQUDtU14c06Yl8OT/3h1MKGpM4wK9qiW7yN0w7dQfSRB/mOrJj/YrxzzI3vq+39Ct0ou815ZzJ7EBFWYp7NKOuhsfxPI2fXcUH3RslClKMXAueDuEJaWYM3BJPkyvZ4=
Received: from DB6PR0801CA0012.eurprd08.prod.outlook.com (2603:10a6:4:2::22)
 by HE1PR0802MB2425.eurprd08.prod.outlook.com (2603:10a6:3:dd::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 09:08:27 +0000
Received: from AM5EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::205) by DB6PR0801CA0012.outlook.office365.com
 (2603:10a6:4:2::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:27 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT016.mail.protection.outlook.com (10.152.16.142) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:27 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:08:12 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:42 +0800
Message-ID: <1523869666-30659-10-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(39860400002)(39380400002)(376002)(396003)(2980300002)(438002)(199004)(189003)(336012)(426003)(356003)(2616005)(49486002)(446003)(305945005)(11346002)(26826003)(36756003)(72206003)(478600001)(5660300001)(59450400001)(2906002)(51416003)(50226002)(186003)(246002)(86362001)(486006)(476003)(126002)(77096007)(26005)(76176011)(8936002)(6666003)(47776003)(8676002)(106002)(104016004)(54906003)(110136005)(316002)(16586007)(4326008)(106466001)(48376002)(50466002)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2425; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT016;
 1:Bd/HAp+nVRMqv8PDpMxp//7aX63eiwGznx8D17rHZwHfSzBC4x9a/lGdt/eSmvhBan+e9rL2wD07rwJEx1wFwZpvuhnbIYq+6L3KflX80gmIl1lHccuqVzoRq8dLZpXh
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2425; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 3:7s814P6ZUpFzun+VBGu4opdW+LYluwJ37e4sMeb6AMnqw0TNOYFXSOF4QAwRNE9a/9wsXQ9iL3wHpQu7kLlGk7kOIH1UidDOiTNVu0sKQhcGCr1C5bJmaFHo1GgvuR0y1a17iswnONkha1kftO/0FB30sGSS5ymCMG5D7b+k9y2MQluxeu6HoQSWSp4Yn/yVRkOAq01LHWj1rAYyAb6LR6moQzwf8/IpIPKvDDiausUe9vOJbn2X6CSRDZ3knUsG3vCKRScFXi+YU5nd7B3MQ+5841ODu4LnptIkUdJJaz/7CQ0ZvwzPtbBJoAJzlWX/388MKRBrdkjbWzzSpTbeVD6dUSlMG8hzsR14Z7Ku8LM=;
 25:14CMobzqWz7zAPzpmqp3QjYCOok77KQ3IJV5JKc9i+02O+ASwAPCKBnJS5l10x8VR6oBAEyTKOEOpVo5IwFLRmAe0fKpnOMngtSXF1kT32xF3Tle9iwl3jJytB2FWL7k6x4wya3VJZtAQmaKbIhO4xnkeoeERvJE0ZltAxJnK1RuwEBu6oyAQ9fw2cuP7bpu/ebA3Olrc8Gnu2Gf17ZxroTVODfMxR4yg4gK+zx6u3il/Z0HLqfnzG2wNFsNV8WNxtOqKSliSybGK0RNh/ztLATMh1vNxsFIgZHbLUBKg34BAektJqL+gD2ULVUSeahVrLKkpEcw4NMifvY3k4q0Wg==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2425:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 31:xqT1WRszaieuPeTukLCevdZhBx5r25omQr7SWEa/IqRS7C3U9mDjNh6rlatG24vchOooxqIrLwSWPi/e0K1pPkBIBQ1q5+7J9iWFn3sXahMvRoOU2/YOmFMIwAjIGnysxKS5yctW+Y84lEzZk0fcgOzR/JMA9WG4vFnX/NHi7WA4StnfmKu0EQC0xE0q/P2US5sSEGU/MLHiyAlvb+66M6fQE0NHxYVBOqZG1nD68LY=;
 20:KTz6ylFHHQ1AHGFpaaT3lv0TTTElISYGPbZDLRMeTsW/xi3yk/dE8mGbtSsWLQQ8gvh1/3g8Lx4UCtW3F+kzH+nP01R/8tI6CPSHCkIOlJ3+c1XnmMMlzFtVog3oLy6HYTuqXiZeVJPcSxV3f96zJeH5m+A7cNzkED0Atnd7X1xCcYOSi9ZpxxLGDMU62OEGGbJi48Hp/DveJiXFVPP8nyhHE741+a7zgUeFUd6ICXC62OkzAuxBfKPwhRFK14io;
 4:wuQQNhQhes/rOg17AjBGIszFPcZVkn/ydsjyXLqpm7aN71pGsR8SLeNiF/EjtSCuMlZE8OURTF+Etk6zCQ3pOgG8yNVGkAatOnjh3Y90S3+OjIVLrn6LPwBwyQNi4qo+/ODqPItKwNGZIDnuYrcLBLn2FjAPyX6i0Hf9hW/axe4FUOi3Iep505TogYT8Pe+BPDWptQ72mWtDGg9EPjJFtMeUCWHsSOen9L0PzeLoEfPbq+vUkZF1DrK4VlbZ8NLkqOUGwxe1deNZyag7xVikqzi3PQ7VWCkKCh/hSXEjNJ57pbCb69f4xuetTsRhdbWC
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB24257F9216B1C4EA17FB1EDA9EB00@HE1PR0802MB2425.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3231232)(944501327)(52105095)(93006095)(93004095)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2425; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2425; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2425;
 23:MuZ/vzFogAs8T1nc+QE+N/H7e2DPMQhoBniRYNn?=
 =?us-ascii?Q?5SYYEpf4+SLby5HG+RCNKp+XSj34ryX36LN5hxhDE0laOrwFsGkijn6sfpeQ?=
 =?us-ascii?Q?gxFbKWOnnL3P0lQdT88ulSHEZcNHJ9RyHyM04TKdYGRgfw25Rh3ldO5JbReA?=
 =?us-ascii?Q?Zhh2p9trcUccW8niiR4oyb+E8KAsMciA59pUPG4tHyHuNZQOEdh3D6FsdCOi?=
 =?us-ascii?Q?F859MIjQveHe51M/tgA04NVgXx7qMvLvtuIvZsQgLiEgmXma3ouD4ArG0wpr?=
 =?us-ascii?Q?AcQrEYKmU6DNb/Od9bWR/La2TRxrIYpW+/g53mv2Fp86uHkW65Lf1GlXYe+5?=
 =?us-ascii?Q?Wysq8Eqwss1L/aAePLfsjU1pAo0Q3839vtmuTA5V8OUmhizvVv1/Phx0zMKd?=
 =?us-ascii?Q?EFAOzz5fJ4Gtp3lQx0VXtxb4CqxTo2q42nzcEzULLu42BLS59nd39OJi3yt/?=
 =?us-ascii?Q?1JLsFBWPBhQ6Bp3rO5y1W5bJ0XsZWqh2WIpR3lglzgfAtb4dmrfP9z6EQPPv?=
 =?us-ascii?Q?THTOV6t3bY5kTneTSMXzwkEGqwNUoD8DROfttoKm1Nxlwey7nNf6ET06H8qz?=
 =?us-ascii?Q?DhHtEuCGuIfXuWqC1oztxCJbXtyexM+zgSx0CJDlcYsCmw9WhLW0pLbjQmfw?=
 =?us-ascii?Q?2nM225c2XFwnS2W1iSiqhsSoqZ/dcR2HcmTRNQDeeEFu0MhdLL6ECtDT1d06?=
 =?us-ascii?Q?jA3Apsnejj1EXRSdL6lTOeZaCPJd9WjJ2d3gSW528ewezaoSIJTPsK2JIBr0?=
 =?us-ascii?Q?yToi4Hwtz1nydpBYBmSKhpKuB2SXnFrIsijkSDiBTLD4g2TVQCMIbgJrLUzj?=
 =?us-ascii?Q?VqSRdnRN2Gy7DDZDzTJs/fGjWnxzw5Aw3KCBT2S2A8XQoDMQhaYaMqXzb4x7?=
 =?us-ascii?Q?d6Sug6D/+FtS3OxUajtpIBQu74IdsnygKTuv8PPKkwW+BUWJguVxgXyEZc9t?=
 =?us-ascii?Q?LoScTwiGgB0dHgqWCeDODESKQFmd8wPr9FB/jZyv/L0jyUF3SwExLNjnS2s/?=
 =?us-ascii?Q?77sFiLXHSQlcOCe9dYMA69YvIlWkI8x3tA1UKy2DD4J8liclW/+f6VN0m7It?=
 =?us-ascii?Q?uoa8i0dMO6bCELjzcvQffrg2bzrtCv/MlcZxxFFo2Hp67ykEhoLzYuOPU3FG?=
 =?us-ascii?Q?5m63AxBIjpjU=3D?=
X-Microsoft-Antispam-Message-Info: +lf6ZLlHdG6YQlU7f+j2gkLv9aoKFtcp33/5hOyoPF3nJmuBv6VQloXbkIYCGbkMy0V4zKzFBHX0srGlODQW4/dz77viXIk3l57svVdnRbRvrQMDLzvN1cMB+iwh0fDB3NhL6TZvLNu01GbQld9Yz6TAwUjT8QXJPndNiN/UL39bTzOhf49N5nefcXzdWZVoyNstJKGyPYhDpmjnH2bXTXiTLeDq51ScA2+VsI1EsTY/63hPTE5zFq8x83uQEtnUPwj27IEU+elRYu+PsFxl1dbYnOQ4rj0PyWUCO7ouNtJ0TxcNlIMBCPqRv6B1cz5kJG27nyjWv1gOXoPWQC0PjROnddpU/uPjCNVWBqE5vJXCUJqT1XgsEh/7rUG+ilOm0+xamS/SyDOLGWKXQ1h8F/mA+nM83RVl0Y836ulxlpc=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 6:NJ40LpWQD3tOG4H9owN3NtgWQVpQ5MvwjWaOu7ZUzRGmL59jzLCGT+uk01E7fNBTv+RWQz2RAckOs7PuUoa7ETvX6Td7f7rnLw4F/zhrsQkakuywYMy4U6aPMnidAyTXiaFVCUncW/OTm+eGLfGlulKJ9pqSUF8QvIFw47VYiYZ40IjwQSB1OPuNyZd0et7ZGN+QK16WTs/hKtY53fH2slA+hQynSQXYGEXa+ebxAU5EygzLSHhYjbyae1zFU64gOwR5PqSlG0dYexSQecrIV6ZFAFFbuCZGNVpSwnGwsm5+duafFafD3rT7H/BhuIpH0w0nELx7I/sSXtAX9U72D0O/wZ1zecs5BQ03EibQ9Ul1Av0o375Sj48beESw4xQqrEpqZulrmzHssO4Q4apMPA7qjAASj6gP0wgPuMa9mS4l7Txdmm++e0P7bREGt9iajmprnVqLGGUwvp45s/8MTMXiqlCz6uQO+a8JvQniV8X8SZX09Fuhpypk2yha68DK;
 5:/6HlUWsMHKO2qJWQDlquoRSpqA7S6cQsJpu+17XJ38bjB+PodB2cR5bDVqp0KtKZ6lrIetbrmln2rYNQj9ndU7iVvz9j5ofe3OO2BAvsHnsG8MdMwc3smU1eOBQ1YwBQGAewFsKbsvVRLskauK7YjLutTStlwlh6abG96raDrek=;
 24:4puNb3RqJHPIIrFKth9PKABY2PqzQVWQNIo/kMxoZ5kCsIGSNPzf8OWtKIePs4ZqMijl15J2TuTVRswYMlSch2O4/A+CWDXjy/e4MtmV/Zk=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 7:7kk41AVrzRcaI4oZm5QD5yJXqQOfPSoxYb2D/U6uxHBj4DOV0L9gQlo6qJ9ERT5z22ravZWz3CAG7lIG3uqeQrGPr5aFfLwupno8OA0YNmYImkunOtIPm/5PUVoMbXm7B7CmS16nPaPlXYPklJ2RaZJsyh0nxEPVYVA99wyfzQnG/m7Jqp/Sr4eMFJWF1gOdhgA34cJhTPUTv02+OSUVPFGKlDfMWU33jVUFOuheY2Fg3UNKy3PUdlSVgwOGfRPb
X-MS-Office365-Filtering-Correlation-Id: e642a351-9638-4a10-cadf-08d5a3799d8f
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:27.0266 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e642a351-9638-4a10-cadf-08d5a3799d8f
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2425
Subject: [Minios-devel] [UNIKRAFT PATCH 09/13] arch/x86: Rename MARCH_* of
 x86_64 to MARCH_X86_64_*
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

QWRkIGFyY2hpdGVjdHVyZSBuYW1lIHRvIHRoZSBwcm9jZXNzb3IgbWFjcm9zLiBUaGlzIHdpbGwg
YXZvaWQgdGhlCm5hbWUgY29uZmxpY3Qgb2YgZGlmZmVyZW50IGFyY2hpdGVjdHVyZXMuIEZvciBp
bnN0YW5jZSwgYm90aCBhcm02NAphbmQgeDg2XzY0IGhhdmUgImdlbmVyaWMiIG9wdGlvbiBmb3Ig
c2VsZWN0IHByb2Nlc3NvcnMuIElmIHdlIGRvbid0CmFkZCBhcmNoaXRlY3R1cmUgbmFtZSB0byB0
aGUgbWFjcm9zLiBCb3RoIG9mIHRoZXNlICJnZW5lcmljIiBvcHRpb24Kd2lsbCBnZW5lcmF0ZSBh
IG1hY3JvOiBNQVJDSF9HRU5FUklDLiBJbiB0aGlzIGNhc2UsIHRoZSBidWlsZCBzY3JpcHRzCmNh
bid0IGRpc3Rpbmd1aXNoIGJldHdlZW4gYXJtNjQvZ2VuZXJpYyBhbmQgeDg2XzY0L2dlbmVyaWMK
ClNpZ25lZC1vZmYtYnk6IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPgotLS0KIENvbmZpZy51
ayAgICAgICAgICAgICAgICAgICB8ICAyICstCiBhcmNoL3g4Ni94ODZfNjQvQ29uZmlnLnVrICAg
fCAzNCArKysrKysrKysrKystLS0tLS0tLS0tLS0tCiBhcmNoL3g4Ni94ODZfNjQvTWFrZWZpbGUu
dWsgfCA2MCArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDMg
ZmlsZXMgY2hhbmdlZCwgNDggaW5zZXJ0aW9ucygrKSwgNDggZGVsZXRpb25zKC0pCgpkaWZmIC0t
Z2l0IGEvQ29uZmlnLnVrIGIvQ29uZmlnLnVrCmluZGV4IGExY2VkMzMuLjVhMTdmMTYgMTAwNjQ0
Ci0tLSBhL0NvbmZpZy51aworKysgYi9Db25maWcudWsKQEAgLTY1LDcgKzY1LDcgQEAgY29uZmln
IE9QVElNSVpFX1NJWkUKIGVuZGNob2ljZQogCiBjb21tZW50ICJIaW50OiBTcGVjaWZ5IGEgQ1BV
IHR5cGUgdG8gZ2V0IG1vc3QgYmVuZWZpdHMgZnJvbSBwZXJmb3JtYW5jZSBvcHRpbWl6YXRpb24i
Ci0JZGVwZW5kcyBvbiBPUFRJTUlaRV9QRVJGICYmIChNQVJDSF9HRU5FUklDIHx8IE1BUkNIX0FS
TTY0X0dFTkVSSUMpCisJZGVwZW5kcyBvbiBPUFRJTUlaRV9QRVJGICYmIChNQVJDSF9YODZfNjRf
R0VORVJJQyB8fCBNQVJDSF9BUk02NF9HRU5FUklDKQogCiBjb25maWcgT1BUSU1JWkVfREVBREVM
SU0KIAlib29sICJEcm9wIHVudXNlZCBmdW5jdGlvbnMgYW5kIGRhdGEiCmRpZmYgLS1naXQgYS9h
cmNoL3g4Ni94ODZfNjQvQ29uZmlnLnVrIGIvYXJjaC94ODYveDg2XzY0L0NvbmZpZy51awppbmRl
eCBjYTQ5ZWVkLi5iMTg1NjZiIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni94ODZfNjQvQ29uZmlnLnVr
CisrKyBiL2FyY2gveDg2L3g4Nl82NC9Db25maWcudWsKQEAgLTEsODggKzEsODggQEAKIGNob2lj
ZQogCXByb21wdCAiUHJvY2Vzc29yIE9wdGltaXphdGlvbiIKLQlkZWZhdWx0IE1BUkNIX0dFTkVS
SUMKKwlkZWZhdWx0IE1BUkNIX1g4Nl82NF9HRU5FUklDCiAJaGVscAogCQlPcHRpbWl6ZSB0aGUg
Y29kZSBmb3Igc2VsZWN0ZWQgdGFyZ2V0IHByb2Nlc3NvcgogCQlHZW5lcmljIHg4Nl82NCBkb2Vz
IG5vdCBlbmFibGUgYW55IGFkZGl0aW9uYWwgQ1BVIGZlYXR1cmVzCiAJCShlLmcuLCBTU0UsIDNE
Tm93ISkgYW5kIHByb2R1Y2VzIGhpZ2hseSBwcm90YWJsZSBjb2RlIGZvciB4ODYuCiAKLWNvbmZp
ZyBNQVJDSF9OQVRJVkUKK2NvbmZpZyBNQVJDSF9YODZfNjRfTkFUSVZFCiAJYm9vbCAiQXV0by1k
ZXRlY3QgaG9zdCBDUFUiCiAJaGVscAogCQlPcHRpbWl6ZSBjb21waWxhdGlvbiB0byBob3N0IENQ
VQogCQlQbGVhc2Ugbm90ZSB0aGF0IHRoaXMgb3B0aW9uIHdpbGwgZmFpbCBpbiBjYXNlIG9mIGNy
b3NzLWNvbXBpbGF0aW9uCiAKLWNvbmZpZyBNQVJDSF9HRU5FUklDCitjb25maWcgTUFSQ0hfWDg2
XzY0X0dFTkVSSUMKIAlib29sICJHZW5lcmljIDY0LWJpdCIKIAloZWxwCiAJCUNvbXBpbGUgZm9y
IDY0LWJpdCBjb21wYXRpYmxlIHg4NiBDUFVzCiAKLWNvbmZpZyBNQVJDSF9OT0NPTkEKK2NvbmZp
ZyBNQVJDSF9YODZfNjRfTk9DT05BCiAJYm9vbCAiSW50ZWwgUGVudGl1bSA0L1hlb24gKE5vY29u
YSkiCiAJaGVscAogCQlJbXByb3ZlZCB2ZXJzaW9uIG9mIEludGVsIFBlbnRpdW0gNCBDUFUgd2l0
aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIgYW5kIFNTRTMgaW5zdHJ1Y3Rpb24g
c2V0IHN1cHBvcnQuCiAKLWNvbmZpZyBNQVJDSF9DT1JFMgorY29uZmlnIE1BUkNIX1g4Nl82NF9D
T1JFMgogCWJvb2wgIkludGVsIENvcmUgMi9YZW9uIgogCWhlbHAKIAkJSW50ZWwgQ29yZSAyIENQ
VSB3aXRoIDY0LWJpdCBleHRlbnNpb25zLCBNTVgsIFNTRSwgU1NFMiwgU1NFMyBhbmQgU1NTRTMg
aW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuCiAKLWNvbmZpZyBNQVJDSF9DT1JFSTcKK2NvbmZpZyBN
QVJDSF9YODZfNjRfQ09SRUk3CiAJYm9vbCAiSW50ZWwgQ29yZSBpNy9YZW9uIgogCWhlbHAKIAkJ
SW50ZWwgQ29yZSBpNyBDUFUgd2l0aCA2NC1iaXQgZXh0ZW5zaW9ucywgTU1YLCBTU0UsIFNTRTIs
IFNTRTMsIFNTU0UzLCBTU0U0LjEgYW5kIFNTRTQuMiBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4K
IAotY29uZmlnIE1BUkNIX0NPUkVJN0FWWAorY29uZmlnIE1BUkNIX1g4Nl82NF9DT1JFSTdBVlgK
IAlib29sICJJbnRlbCBDb3JlIGk3L1hlb24gK0FWWCIKIAloZWxwCiAJCUludGVsIENvcmUgaTcg
Q1BVIHdpdGggNjQtYml0IGV4dGVuc2lvbnMsIE1NWCwgU1NFLCBTU0UyLCBTU0UzLCBTU1NFMywg
U1NFNC4xLCBTU0U0LjIsIEFWWCwgQUVTIGFuZCBQQ0xNVUwgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBv
cnQuCiAKLWNvbmZpZyBNQVJDSF9DT1JFSTdBVlhJCitjb25maWcgTUFSQ0hfWDg2XzY0X0NPUkVJ
N0FWWEkKIAlib29sICJJbnRlbCBDb3JlL1hlb24gK0FWWCArUkRSTkQiCiAJaGVscAogCQlJbnRl
bCBDb3JlIENQVSB3aXRoIDY0LWJpdCBleHRlbnNpb25zLCBNTVgsIFNTRSwgU1NFMiwgU1NFMywg
U1NTRTMsIFNTRTQuMSwgU1NFNC4yLCBBVlgsIEFFUywgUENMTVVMLCBGU0dTQkFTRSwgUkRSTkQg
YW5kIEYxNkMgaW5zdHJ1Y3Rpb24gc2V0IHN1cHBvcnQuCiAKLWNvbmZpZyBNQVJDSF9BVE9NCitj
b25maWcgTUFSQ0hfWDg2XzY0X0FUT00KIAlib29sICJJbnRlbCBBdG9tIDY0LWJpdCIKIAloZWxw
CiAJCUludGVsIEF0b20gQ1BVIHdpdGggNjQtYml0IGV4dGVuc2lvbnMsIE1NWCwgU1NFLCBTU0Uy
LCBTU0UzIGFuZCBTU1NFMyBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4KIAotY29uZmlnIE1BUkNI
X0s4Citjb25maWcgTUFSQ0hfWDg2XzY0X0s4CiAJYm9vbCAiQU1EIEF0aGxvbjY0L09wdGVyb24i
CiAJaGVscAogCQlQcm9jZXNzb3JzIGJhc2VkIG9uIHRoZSBBTUQgSzggY29yZSB3aXRoIHg4Ni02
NCBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydCwgaW5jbHVkaW5nIHRoZSBBTUQgT3B0ZXJvbiwgQXRo
bG9uIDY0LCBhbmQgQXRobG9uIDY0IEZYIHByb2Nlc3NvcnMuIChUaGlzIHN1cGVyc2V0cyBNTVgs
IFNTRSwgU1NFMiwgM0ROb3chLCBlbmhhbmNlZCAzRE5vdyEgYW5kIDY0LWJpdCBpbnN0cnVjdGlv
biBzZXQgZXh0ZW5zaW9ucy4pCiAKLWNvbmZpZyBNQVJDSF9LOFNTRTMKK2NvbmZpZyBNQVJDSF9Y
ODZfNjRfSzhTU0UzCiAJYm9vbCAiQU1EIEF0aGxvbjY0L09wdGVyb24gK1NTRTMiCiAJaGVscAog
CQlJbXByb3ZlZCB2ZXJzaW9ucyBvZiBBTUQgSzggY29yZXMgd2l0aCBTU0UzIGluc3RydWN0aW9u
IHNldCBzdXBwb3J0LgogCi1jb25maWcgTUFSQ0hfQU1ERkFNMTAKK2NvbmZpZyBNQVJDSF9YODZf
NjRfQU1ERkFNMTAKIAlib29sICJBTUQgRmFtaWx5IDEwaCBjb3JlcyIKIAloZWxwCiAJCUNQVXMg
YmFzZWQgb24gQU1EIEZhbWlseSAxMGggY29yZXMgd2l0aCB4ODYtNjQgaW5zdHJ1Y3Rpb24gc2V0
IHN1cHBvcnQuIChUaGlzIHN1cGVyc2V0cyBNTVgsIFNTRSwgU1NFMiwgU1NFMywgU1NFNEEsIDNE
Tm93ISwgZW5oYW5jZWQgM0ROb3chLCBBQk0gYW5kIDY0LWJpdCBpbnN0cnVjdGlvbiBzZXQgZXh0
ZW5zaW9ucy4pCiAKLWNvbmZpZyBNQVJDSF9CVFZFUjEKK2NvbmZpZyBNQVJDSF9YODZfNjRfQlRW
RVIxCiAJYm9vbCAiQU1EIEZhbWlseSAxNGggY29yZXMiCiAJaGVscAogCQlDUFVzIGJhc2VkIG9u
IEFNRCBGYW1pbHkgMTRoIGNvcmVzIHdpdGggeDg2LTY0IGluc3RydWN0aW9uIHNldCBzdXBwb3J0
LiAoVGhpcyBzdXBlcnNldHMgTU1YLCBTU0UsIFNTRTIsIFNTRTMsIFNTU0UzLCBTU0U0QSwgQ1gx
NiwgQUJNIGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0IGV4dGVuc2lvbnMuKQogCi1jb25maWcg
TUFSQ0hfQkRWRVIxCitjb25maWcgTUFSQ0hfWDg2XzY0X0JEVkVSMQogCWJvb2wgIkFNRCBGYW1p
bHkgMTVoIGNvcmVzIChiZHZlcjEpIgogCWhlbHAKIAkJQ1BVcyBiYXNlZCBvbiBBTUQgRmFtaWx5
IDE1aCBjb3JlcyB3aXRoIHg4Ni02NCBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4gKFRoaXMgc3Vw
ZXJzZXRzIEZNQTQsIEFWWCwgWE9QLCBMV1AsIEFFUywgUENMX01VTCwgQ1gxNiwgTU1YLCBTU0Us
IFNTRTIsIFNTRTMsIFNTRTRBLCBTU1NFMywgU1NFNC4xLCBTU0U0LjIsIEFCTSBhbmQgNjQtYml0
IGluc3RydWN0aW9uIHNldCBleHRlbnNpb25zLikKIAotY29uZmlnIE1BUkNIX0JEVkVSMgorY29u
ZmlnIE1BUkNIX1g4Nl82NF9CRFZFUjIKIAlib29sICJBTUQgRmFtaWx5IDE1aCBjb3JlcyAoYmR2
ZXIyKSIKIAloZWxwCiAJCUFNRCBGYW1pbHkgMTVoIGNvcmUgYmFzZWQgQ1BVcyB3aXRoIHg4Ni02
NCBpbnN0cnVjdGlvbiBzZXQgc3VwcG9ydC4gKFRoaXMgc3VwZXJzZXRzIEJNSSwgVEJNLCBGMTZD
LCBGTUEsIEFWWCwgWE9QLCBMV1AsIEFFUywgUENMX01VTCwgQ1gxNiwgTU1YLCBTU0UsIFNTRTIs
IFNTRTMsIFNTRTRBLCBTU1NFMywgU1NFNC4xLCBTU0U0LjIsIEFCTSBhbmQgNjQtYml0IGluc3Ry
dWN0aW9uIHNldCBleHRlbnNpb25zLikKIAotY29uZmlnIE1BUkNIX0JEVkVSMworY29uZmlnIE1B
UkNIX1g4Nl82NF9CRFZFUjMKIAlib29sICJBTUQgRmFtaWx5IDE1aCBjb3JlcyAoYmR2ZXIzKSIK
IAloZWxwCiAJCUFNRCBGYW1pbHkgMTVoIGNvcmUgYmFzZWQgQ1BVcyB3aXRoIHg4Ni02NCBpbnN0
cnVjdGlvbiBzZXQgc3VwcG9ydC4gKFRoaXMgc3VwZXJzZXRzIEJNSSwgVEJNLCBGMTZDLCBGTUEs
IEFWWCwgWE9QLCBMV1AsIEFFUywgUENMX01VTCwgQ1gxNiwgTU1YLCBTU0UsIFNTRTIsIFNTRTMs
IFNTRTRBLCBTU1NFMywgU1NFNC4xLCBTU0U0LjIsIEFCTSBhbmQgNjQtYml0IGluc3RydWN0aW9u
IHNldCBleHRlbnNpb25zLgogCi1jb25maWcgTUFSQ0hfQlRWRVIyCitjb25maWcgTUFSQ0hfWDg2
XzY0X0JUVkVSMgogCWJvb2wgIkFNRCBGYW1pbHkgMTZoIGNvcmVzIgogCWhlbHAKIAkJQ1BVcyBi
YXNlZCBvbiBBTUQgRmFtaWx5IDE2aCBjb3JlcyB3aXRoIHg4Ni02NCBpbnN0cnVjdGlvbiBzZXQg
c3VwcG9ydC4gVGhpcyBpbmNsdWRlcyBNT1ZCRSwgRjE2QywgQk1JLCBBVlgsIFBDTF9NVUwsIEFF
UywgU1NFNC4yLCBTU0U0LjEsIENYMTYsIEFCTSwgU1NFNEEsIFNTU0UzLCBTU0UzLCBTU0UyLCBT
U0UsIE1NWCBhbmQgNjQtYml0IGluc3RydWN0aW9uIHNldCBleHRlbnNpb25zLgpkaWZmIC0tZ2l0
IGEvYXJjaC94ODYveDg2XzY0L01ha2VmaWxlLnVrIGIvYXJjaC94ODYveDg2XzY0L01ha2VmaWxl
LnVrCmluZGV4IDhjOWJmZTMuLjEyMmNiNzQgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L3g4Nl82NC9N
YWtlZmlsZS51aworKysgYi9hcmNoL3g4Ni94ODZfNjQvTWFrZWZpbGUudWsKQEAgLTUsMzMgKzUs
MzMgQEAgQ0ZMQUdTICAgKz0gLW02NCAtbW5vLXJlZC16b25lIC1mbm8tcmVvcmRlci1ibG9ja3Mg
LWZuby1hc3luY2hyb25vdXMtdW53aW5kLXRhYmwKIENYWEZMQUdTICs9IC1EX19YODZfNjRfXwog
Q1hYRkxBR1MgKz0gLW02NCAtbW5vLXJlZC16b25lIC1mbm8tcmVvcmRlci1ibG9ja3MgLWZuby1h
c3luY2hyb25vdXMtdW53aW5kLXRhYmxlcwogCi1DRkxBR1MtJChNQVJDSF9HRU5FUklDKSAgICAg
ICs9IC1tdHVuZT1nZW5lcmljCi1DWFhGTEFHUy0kKE1BUkNIX0dFTkVSSUMpICAgICs9IC1tdHVu
ZT1nZW5lcmljCi1DRkxBR1MtJChNQVJDSF9OT0NPTkEpICAgICAgICs9IC1tYXJjaD1ub2NvbmEK
LUNYWEZMQUdTLSQoTUFSQ0hfTk9DT05BKSAgICAgKz0gLW1hcmNoPW5vY29uYQotQ0ZMQUdTLSQo
TUFSQ0hfQ09SRTIpICAgICAgICArPSAtbWFyY2g9Y29yZTIKLUNYWEZMQUdTLSQoTUFSQ0hfQ09S
RTIpICAgICAgKz0gLW1hcmNoPWNvcmUyCi1DRkxBR1MtJChNQVJDSF9DT1JFSTcpICAgICAgICs9
IC1tYXJjaD1jb3JlaTcKLUNYWEZMQUdTLSQoTUFSQ0hfQ09SRUk3KSAgICAgKz0gLW1hcmNoPWNv
cmVpNwotQ0ZMQUdTLSQoTUFSQ0hfQ09SRUk3QVZYKSAgICArPSAtbWFyY2g9Y29yZWk3LWF2eAot
Q1hYRkxBR1MtJChNQVJDSF9DT1JFSTdBVlgpICArPSAtbWFyY2g9Y29yZWk3LWF2eAotQ0ZMQUdT
LSQoTUFSQ0hfQ09SRUk3QVZYSSkgICArPSAtbWFyY2g9Y29yZS1hdngtaQotQ1hYRkxBR1MtJChN
QVJDSF9DT1JFSTdBVlhJKSArPSAtbWFyY2g9Y29yZS1hdngtaQotQ0ZMQUdTLSQoTUFSQ0hfQVRP
TSkgICAgICAgICArPSAtbWFyY2g9YXRvbQotQ1hYRkxBR1MtJChNQVJDSF9BVE9NKSAgICAgICAr
PSAtbWFyY2g9YXRvbQotQ0ZMQUdTLSQoTUFSQ0hfSzgpICAgICAgICAgICArPSAtbWFyY2g9azgK
LUNYWEZMQUdTLSQoTUFSQ0hfSzgpICAgICAgICAgKz0gLW1hcmNoPWs4Ci1DRkxBR1MtJChNQVJD
SF9LOFNTRTMpICAgICAgICs9IC1tYXJjaD1rOC1zc2UzCi1DWFhGTEFHUy0kKE1BUkNIX0s4U1NF
MykgICAgICs9IC1tYXJjaD1rOC1zc2UzCi1DRkxBR1MtJChNQVJDSF9BTURGQU0xMCkgICAgICs9
IC1tYXJjaD1hbWRmYW0xMAotQ1hYRkxBR1MtJChNQVJDSF9BTURGQU0xMCkgICArPSAtbWFyY2g9
YW1kZmFtMTAKLUNGTEFHUy0kKE1BUkNIX0JEVkVSMSkgICAgICAgKz0gLW1hcmNoPWJkdmVyMQot
Q1hYRkxBR1MtJChNQVJDSF9CRFZFUjEpICAgICArPSAtbWFyY2g9YmR2ZXIxCi1DRkxBR1MtJChN
QVJDSF9CRFZFUjIpICAgICAgICs9IC1tYXJjaD1iZHZlcjIKLUNYWEZMQUdTLSQoTUFSQ0hfQkRW
RVIyKSAgICAgKz0gLW1hcmNoPWJkdmVyMgotQ0ZMQUdTLSQoTUFSQ0hfQkRWRVIzKSAgICAgICAr
PSAtbWFyY2g9YmR2ZXIzCi1DWFhGTEFHUy0kKE1BUkNIX0JEVkVSMykgICAgICs9IC1tYXJjaD1i
ZHZlcjMKLUNGTEFHUy0kKE1BUkNIX0JUVkVSMSkgICAgICAgKz0gLW1hcmNoPWJ0dmVyMQotQ1hY
RkxBR1MtJChNQVJDSF9CVFZFUjEpICAgICArPSAtbWFyY2g9YnR2ZXIxCi1DRkxBR1MtJChNQVJD
SF9CVFZFUjIpICAgICAgICs9IC1tYXJjaD1idHZlcjIKLUNYWEZMQUdTLSQoTUFSQ0hfQlRWRVIy
KSAgICAgKz0gLW1hcmNoPWJ0dmVyMgorQ0ZMQUdTLSQoTUFSQ0hfWDg2XzY0X0dFTkVSSUMpICAg
ICAgKz0gLW10dW5lPWdlbmVyaWMKK0NYWEZMQUdTLSQoTUFSQ0hfWDg2XzY0X0dFTkVSSUMpICAg
ICs9IC1tdHVuZT1nZW5lcmljCitDRkxBR1MtJChNQVJDSF9YODZfNjRfTk9DT05BKSAgICAgICAr
PSAtbWFyY2g9bm9jb25hCitDWFhGTEFHUy0kKE1BUkNIX1g4Nl82NF9OT0NPTkEpICAgICArPSAt
bWFyY2g9bm9jb25hCitDRkxBR1MtJChNQVJDSF9YODZfNjRfQ09SRTIpICAgICAgICArPSAtbWFy
Y2g9Y29yZTIKK0NYWEZMQUdTLSQoTUFSQ0hfWDg2XzY0X0NPUkUyKSAgICAgICs9IC1tYXJjaD1j
b3JlMgorQ0ZMQUdTLSQoTUFSQ0hfWDg2XzY0X0NPUkVJNykgICAgICAgKz0gLW1hcmNoPWNvcmVp
NworQ1hYRkxBR1MtJChNQVJDSF9YODZfNjRfQ09SRUk3KSAgICAgKz0gLW1hcmNoPWNvcmVpNwor
Q0ZMQUdTLSQoTUFSQ0hfWDg2XzY0X0NPUkVJN0FWWCkgICAgKz0gLW1hcmNoPWNvcmVpNy1hdngK
K0NYWEZMQUdTLSQoTUFSQ0hfWDg2XzY0X0NPUkVJN0FWWCkgICs9IC1tYXJjaD1jb3JlaTctYXZ4
CitDRkxBR1MtJChNQVJDSF9YODZfNjRfQ09SRUk3QVZYSSkgICArPSAtbWFyY2g9Y29yZS1hdngt
aQorQ1hYRkxBR1MtJChNQVJDSF9YODZfNjRfQ09SRUk3QVZYSSkgKz0gLW1hcmNoPWNvcmUtYXZ4
LWkKK0NGTEFHUy0kKE1BUkNIX1g4Nl82NF9BVE9NKSAgICAgICAgICs9IC1tYXJjaD1hdG9tCitD
WFhGTEFHUy0kKE1BUkNIX1g4Nl82NF9BVE9NKSAgICAgICArPSAtbWFyY2g9YXRvbQorQ0ZMQUdT
LSQoTUFSQ0hfWDg2XzY0X0s4KSAgICAgICAgICAgKz0gLW1hcmNoPWs4CitDWFhGTEFHUy0kKE1B
UkNIX1g4Nl82NF9LOCkgICAgICAgICArPSAtbWFyY2g9azgKK0NGTEFHUy0kKE1BUkNIX1g4Nl82
NF9LOFNTRTMpICAgICAgICs9IC1tYXJjaD1rOC1zc2UzCitDWFhGTEFHUy0kKE1BUkNIX1g4Nl82
NF9LOFNTRTMpICAgICArPSAtbWFyY2g9azgtc3NlMworQ0ZMQUdTLSQoTUFSQ0hfWDg2XzY0X0FN
REZBTTEwKSAgICAgKz0gLW1hcmNoPWFtZGZhbTEwCitDWFhGTEFHUy0kKE1BUkNIX1g4Nl82NF9B
TURGQU0xMCkgICArPSAtbWFyY2g9YW1kZmFtMTAKK0NGTEFHUy0kKE1BUkNIX1g4Nl82NF9CRFZF
UjEpICAgICAgICs9IC1tYXJjaD1iZHZlcjEKK0NYWEZMQUdTLSQoTUFSQ0hfWDg2XzY0X0JEVkVS
MSkgICAgICs9IC1tYXJjaD1iZHZlcjEKK0NGTEFHUy0kKE1BUkNIX1g4Nl82NF9CRFZFUjIpICAg
ICAgICs9IC1tYXJjaD1iZHZlcjIKK0NYWEZMQUdTLSQoTUFSQ0hfWDg2XzY0X0JEVkVSMikgICAg
ICs9IC1tYXJjaD1iZHZlcjIKK0NGTEFHUy0kKE1BUkNIX1g4Nl82NF9CRFZFUjMpICAgICAgICs9
IC1tYXJjaD1iZHZlcjMKK0NYWEZMQUdTLSQoTUFSQ0hfWDg2XzY0X0JEVkVSMykgICAgICs9IC1t
YXJjaD1iZHZlcjMKK0NGTEFHUy0kKE1BUkNIX1g4Nl82NF9CVFZFUjEpICAgICAgICs9IC1tYXJj
aD1idHZlcjEKK0NYWEZMQUdTLSQoTUFSQ0hfWDg2XzY0X0JUVkVSMSkgICAgICs9IC1tYXJjaD1i
dHZlcjEKK0NGTEFHUy0kKE1BUkNIX1g4Nl82NF9CVFZFUjIpICAgICAgICs9IC1tYXJjaD1idHZl
cjIKK0NYWEZMQUdTLSQoTUFSQ0hfWDg2XzY0X0JUVkVSMikgICAgICs9IC1tYXJjaD1idHZlcjIK
LS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVj
dC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlv
cy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:38 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807q-0006JQ-J3; Mon, 16 Apr 2018 09:08:38 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807p-0006Ip-6u
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:37 +0000
X-Inumbo-ID: 9ceb8267-4155-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::60b])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 9ceb8267-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:40 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=AHPFUyPnlJMZJn+SFS4lkKRUR8CW14YNSQEsr2bMeSE=;
 b=QbIkNdU2jT1yl9wU7I675W15+/699jAZMu2sqXHxJW41SF3/SdbI+VUAtkZYQuvNPe/hAM/YU9IN5uCO+upSRZ2mRFHJXWneAnc5rB7+vm2U8JgbbsPotAeUQLDZWzt9fAyW1jRDuDmmWdj/hrMT/XanHFVHv+DEjExGPsyRofA=
Received: from VI1PR0801CA0083.eurprd08.prod.outlook.com
 (2603:10a6:800:7d::27) by HE1PR0802MB2426.eurprd08.prod.outlook.com
 (2603:10a6:3:df::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Mon, 16
 Apr 2018 09:08:29 +0000
Received: from AM5EUR03FT034.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::200) by VI1PR0801CA0083.outlook.office365.com
 (2603:10a6:800:7d::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.14 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:29 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT034.mail.protection.outlook.com (10.152.16.81) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:29 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:08:17 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:44 +0800
Message-ID: <1523869666-30659-12-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(39860400002)(39380400002)(346002)(376002)(2980300002)(438002)(189003)(199004)(305945005)(36756003)(8676002)(104016004)(6666003)(54906003)(110136005)(50466002)(16586007)(76176011)(77096007)(48376002)(106002)(316002)(356003)(186003)(86362001)(476003)(26005)(446003)(11346002)(2616005)(49486002)(51416003)(72206003)(486006)(126002)(26826003)(8936002)(478600001)(426003)(47776003)(106466001)(336012)(4326008)(246002)(2906002)(5660300001)(50226002)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2426; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT034;
 1:v2uPEgFYfP5dphj9fIQuoX/9HSHCYMrr5pPQASC8ptg+GNhkqdNyTZCoI4mLCCjlgi8s95w1E1T/DWqjrfh0RNjXUQUCj7SMLJegSFr0X5qCOXCazLyytqLjRiNOPSp6
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2426; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 3:4i4dEUhvEdAmKSXTqZyN49NwdKjoQcSSm+Q38uYh68zONjb+6rYR2OjuhElKL2XDsTv9kbfsYzCkar7GLXZSWQyvalPYmoSs4hpR/Y11eg+ZYehAx8q2119n6eJ2QW5gcdQvyIZgqWvRwT7AKVNdo5iNKanIzU88TDJr+iUi4l1xFsf6hyuB9QrmcAX00QMV4r2F/jgXAyOSLIiBItVoJCzfLHvn3kFxndWf6/aw+JZbYB7+ym7VV7HwKgJSJyc3ctddQYz3cH9WNk5DobF93xV/iAwN/YQukmSBUvgAbUaeuezUJxsjIV6M05IjfyoD+fBDBBrjlZ2xRHPYTqE+F0MvUorZzbvT1C3vpFe9GH0=;
 25:lU5PRepk0729Y3vTWgc0ZL7dPYibyhqw6UcWJKKk3U1NF+LQMUo+0ecTY/1Bb5Uu5HV9MSphTnQDCyVXNCI6BACiOmZYkweTfez0mxAAzes7tM6T7tpXcOvV5+vocsUa6s28ixbccU16Jou/3UeBOhZ4SL2mgez717LfElTCIR1s4rUm5nVAj3w5o/g1Wvr9NS980m3j/n0/64k4KSMJCwQSIQ82OrdlIHFlt1xu3GfoJc50juzkyB+efzMqg7KtQz/GnPW3gTKiaoABjkkmGnT00j5ndS7ejKFMtqDbNEV/vMXFLPRj3CVe65h2bX71ao4xs+zNT/DgLqq5eHES0w==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2426:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 31:7uL5S2Q87bq4GdZMnGMPD0RiwTZ6fBOi+c7IBp+z+33x4sVRDmbUaqBm/sNgmf+PB69vMmVbKeC5PspJiuFLuqGlZIW+JxJ2ClthfsXsK7SBD2+YJYWOPyDPryu9oD4tW24TceFCd6UPFxDN7rFRtZtil/ZaGqpZQVN2xtbA3PXoKJ+PfeIeISdoWGlcC6hdes7N1qYNkcDpDeYrcxRmFSkPzJ6h4cMt4kp1A/Ouqds=;
 20:A8OSsRaYILbO+ioifbcQNgih8oboD2nElHS2BSpjWptIMlpOAcFIRX5/6VLPlB/Ep8J+4AXbj64plR70KAjQx+wSbAxIZmPfQaDzrKGy2deawq2/HanDR42sgM177AcKzEo376Or83p2Mw5Pdlp4ViEufV/fbS6N7HaTxChIBGUonCgVCA2CNRQrNboiJfj4sR8OhVY9adGwgA/iriDwA6ZKala77TuzCRYcinpNw1XuJ+bVaTlkmsvhvEw90BNd;
 4:QNfbRKhF+k54mdIP0gQuqOqOeEBBp9sAkV5OPhiwYlqUyeVA2mwivhEUfAArbbO2Gwacc+/iZQBMQoKgzg2brogE5Nfnv/Y7API5v9jtEV9DmyhSa+lHJZsmhF8nGXMc+dif83cMW8F1F9eETRXm9TpEInEl0DaMg6lCvlZKCTLwZqBw+I+4V4ld5M1OVV6+CSmePT8uOCIFVElJafrBxHrZFtKUhHn+RmUhQRQpQuk0NuwFqUwrAYWSXMGalbsohHh25QtsjvCrktxOd8zxPRjLfMyXEDYzTGke0u1t5GAAkPS5D4pjARRUUti8H1Y0
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB24266F9B32A5EA876B44B2CB9EB00@HE1PR0802MB2426.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3002001)(10201501046)(3231232)(944501327)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2426; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2426; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2426;
 23:fdZlohF4BMVvOSibX4W6Ux9KWYp2X9CLeouYVkH?=
 =?us-ascii?Q?WWGA0XVbyRNt32ii78oBzCGDLNXWHD6iOg2a/E7TQT3rDkIW6k3vgce7jDP3?=
 =?us-ascii?Q?EVC3HGLAtmX12LVosLQ8XOSICb4deeN7gUSwSVTYxYeUHemK81xciRfrKev9?=
 =?us-ascii?Q?ohnM1JAqBGaQbiuKAPsF501bX4tCKldc8945BSaxSquncZA93TQaNLu0o8xt?=
 =?us-ascii?Q?Y8JBYt+7eOGB2RSxRSikSqpXRezBi1KcP8vLZZzD3u6ZeUun4ccA6it3VT63?=
 =?us-ascii?Q?BAEaqyEHXWHyGdqJt46wu1qtbLsz6xs3iJikWrBPLNGPw8A2aMMSL0NWH5TT?=
 =?us-ascii?Q?+0gOBwjfDqOgFtny8qWQ0eLjGF8I6cSEDw9HwYSxMGpGp6+4jRGtHQyMdui3?=
 =?us-ascii?Q?i+7Hd6QCUUgXq8reTAjIE7gmnOHWn/2EI2WThtBLkrU8YbxEId+b+3D2eQRj?=
 =?us-ascii?Q?4f0QQ4I86Rimf/b44EU6A52OQm6YzIJe1RkMQyYoPZ+2xuKQA2rwxWjRQchW?=
 =?us-ascii?Q?1LLGRS4oqFio+KEbVAyL7wTIALakqoNOlm0RUDa2Pw+1FUsBzAnZD1cvQc5z?=
 =?us-ascii?Q?0IvTot52VJiAB0kyOh/SjnfX46P8Y7zf1/WPqTenl5Xd2Ki8eCJPsVdpnIM4?=
 =?us-ascii?Q?JEJDaXoDLSceMQlASy0k3Xye+C6IewPkvWKVODJihlhtJRIXbzPPxHt/pngO?=
 =?us-ascii?Q?WO266qRUF+r60rsscquRtP+xXaxkyiY86ILWyiPHV0tRg3KQONZzXweIou6x?=
 =?us-ascii?Q?s9y7kxe0LnrzVsFkuTrx3171mgnaetg/OXJFfcLJzr1BGpyaY+5Xfh1PZiT/?=
 =?us-ascii?Q?O+ojfRPAZEd3BLhwzJ8XA821RnTEqX4flk7uuaiUR5JYn3PExMdNzX1hhdEw?=
 =?us-ascii?Q?3mDmCt2jZlGUuxmk0rua9/bu7mVlF2O6u94h50ZnodHaPFa1FbS45ITfpb4o?=
 =?us-ascii?Q?LPBTE83Yw5CzUiuMRByEM7grY29yNooZXgY3/5cZK2BXWyeZEZ4MyofYC9o/?=
 =?us-ascii?Q?An41Cnbe6F8rIlFLT26oVU+C3AADwrgp3ay6T3o3ecBEDIrld88LApfJ7VgX?=
 =?us-ascii?Q?/wljHRNU394kWA61O9v8+fDqvjAmLGZ7IcU4y1TB6i+fMVb9w/A=3D=3D?=
X-Microsoft-Antispam-Message-Info: KLpEkNlpXYbttO48YHr0ipwokE/f06akeSkjlF7fn3Y3Qi6KCKAH3IWsTyX2EzFeb645uTbTp5ujb5TCDvi8SUfot6z2pbPM2WRwqiH2K3/IsPUUMR2+c/7wIq3bY/HcQ9vCGyzO+nrdAT4KtMTjHhSUcQ0S+pQdieWvURBwfdFp9dx9WQnjFd/mbcrXqx1oQsyDnl21edRM3L6AfQMm6Xn9pkRrz7q4rKStEvogyZP1bmxa8jtsj2yYAK8S0lnmIgDKOeCiv1EKnCoyln/LTwFd7YXaWx4Fphx6rSZBmTTwe8WW692M+zXah5aLW2NYPg4rj+QbyrHpPwMy/o03kG8mdX1mmI5kDJmatpPrVPTYy6Spkida/ctfFgV4d78XH0aWb0gSHmySTUeJNYxk5DG638vhM1vlGYMbIEX4a6U=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 6:TXCXARbj03kXT19OSAh6gZC68BWci8If3wE9CEcwl96lnGanM4dxp1N/s1DS5JOigtxBttmiFm+AIbrhSYEGf3stT3XximRTVlqgi33IJvXLmKNvFyNpnIobQBIeNdPDoiJexUtizIgHv1tCiUXM5CI3TBbhibZEM+MeKtcANvBtUvpT/IlKLDt5mkZaGLLedwkIvhmBMu9+2bYGyWOTR1ON+OJw7nMLTMHdHSuuJ9504yDvc0YBHw7240R+7Sl+Z4l/2FK4IbWUa9Af6vNzazEJMKqUKjQt0urn73dXBEqB9X9pU62X9t/x6RKatAt0D/o2+4ubF0rvToMWj0ZMts4AIYalDuB7fiV07ibp6FcMsspjY2YKj2YULX5IXUfer7NpJoAWcXfxt1CXbq7rC0CSHMowkudSVuIrMwGIe/lpzCC8PvCxTVGi0MaVsl5VqKoiqfx3WNSBAXQrdgzbp8QO1Dd39Cwn9Jg0vCiveAe3Vwce1QGRA+jRQhA+s5dI;
 5:Eok1TkdB9skp6OwjzBKCZ2YcWbPHr+oocIV2M5atJ+ZIDDjfg87Xb3/a51bbQsR852spA6YRjgc20e4TGCCdtJR9r9pjmF8iEeAsWTz3jgDaihBeWx/CVqEUQ8JfrLhctbkxiyWOM0lkjOrnDiyTaaPQV2Nb7s74C2kPBJf1B9U=;
 24:kASOd64auPf0AjmBI+Nh6c5jgLlD/3nGT/15pOXPlEkn7EkELYRGwRoFp41lCGvHBEFUF6wvQhE/X696G447clHvhVk3N0ZMuv6mTTtrevk=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2426;
 7:5Ma1g9t2cZWntNlIp7ABb3TYx7yLTzrp9dEcQvZIisB7k6zopODzrNRwCd4gDQLRR4YgGv5/W4tErscM4yPS3QILck+48aci/30Oa9j8UYbvkWfL0o4QBnU5PMm1WCVnHzEzNxiUgJAdf7q8mb2qKc7wvW40zb0mz26RMRpZDUkoMqkWP4r+heNJgXcNYSNGkjxuYk4OIiE7/DcEnauorE5m9veYf/F5mMo9ZkxCpll2g6ykHmjNLjIyVHwKI9jx
X-MS-Office365-Filtering-Correlation-Id: a3ceded3-d450-45ea-e25d-08d5a3799ecd
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:29.0956 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a3ceded3-d450-45ea-e25d-08d5a3799ecd
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2426
Subject: [Minios-devel] [UNIKRAFT PATCH 11/13] arch/arm64: Add processor
 optimization GCC flags for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2UgYWRkZWQgc2VydmFsIGFybTY0IENQVSBtb2RlbHMgaW4gc3VwcG9ydCBsaXN0LiBJbiB0aGlz
IHBhdGNoLAp3ZSBjaGVjayB0aGUgR0NDIHZlcnNpb24gYW5kIGFkZCBvcHRpbWl6YXRpb24gR0ND
IGZsYWdzIGZvcgpzZWxlY3RlZCBwcm9jZXNzb3IuCgpDdXJyZW50IHN1cHBvcnRlZCBhcm02NCBD
UFUgbW9kZWxzOgpuYXRpdmUsIGdlbmVyaWMsIGNvcnRleC1hNTMsIGNvcnRleC1hNTcsIGNvcnRl
eC1hNzIsIGNvcnRleC1hNzMsCmNvcnRleC1hNTUgYW5kIGNvcnRleC1hNzUuCgpTaWduZWQtb2Zm
LWJ5OiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbT4KLS0tCiBhcmNoL2FybS9hcm02NC9Db21w
aWxlci51ayB8ICA2ICsrKysrKwogYXJjaC9hcm0vYXJtNjQvTWFrZWZpbGUudWsgfCAyNyArKysr
KysrKysrKysrKysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygr
KQogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FybTY0L0NvbXBpbGVyLnVrCiBjcmVhdGUg
bW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJtNjQvTWFrZWZpbGUudWsKCmRpZmYgLS1naXQgYS9hcmNo
L2FybS9hcm02NC9Db21waWxlci51ayBiL2FyY2gvYXJtL2FybTY0L0NvbXBpbGVyLnVrCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg1NGQxNTMKLS0tIC9kZXYvbnVsbAorKysg
Yi9hcmNoL2FybS9hcm02NC9Db21waWxlci51awpAQCAtMCwwICsxLDYgQEAKKyMgc2V0IGNyb3Nz
IGNvbXBpbGUKK2lmZXEgKCQoQ1JPU1NfQ09NUElMRSksKQoraWZuZXEgKCQoVUtfQVJDSCksJChI
T1NUQVJDSCkpCisJQ1JPU1NfQ09NUElMRSA6PSBhYXJjaDY0LWxpbnV4LWdudS0KK2VuZGlmCitl
bmRpZgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtNjQvTWFrZWZpbGUudWsgYi9hcmNoL2FybS9h
cm02NC9NYWtlZmlsZS51awpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NGFk
YTVmCi0tLSAvZGV2L251bGwKKysrIGIvYXJjaC9hcm0vYXJtNjQvTWFrZWZpbGUudWsKQEAgLTAs
MCArMSwyNyBAQAorQVNGTEFHUyAgKz0gLURfX0FSTV82NF9fCitDRkxBR1MgICArPSAtRF9fQVJN
XzY0X18gLWZtcy1leHRlbnNpb25zCitDWFhGTEFHUyArPSAtRF9fQVJNXzY0X18gLWZtcy1leHRl
bnNpb25zCisKKyMgR0NDIHN1cHBvcnQgLW1jcHU9bmF0aXZlIGZvciBhcm02NCBmcm9tIDYuMAor
JChldmFsICQoY2FsbCBzZXRfZmxhZ3NfZm9yX3ZhbGlkX2djYywkKE1BUkNIX0FSTTY0X05BVElW
RSksNiwwLC1tY3B1PW5hdGl2ZSkpCisKKyMgR0NDIHN1cHBvcnQgLW1jcHU9Z2VuZXJpYyBmb3Ig
YXJtNjQgZnJvbSA0LjgKKyQoZXZhbCAkKGNhbGwgc2V0X2ZsYWdzX2Zvcl92YWxpZF9nY2MsJChN
QVJDSF9BUk02NF9HRU5FUklDKSw0LDgsLW1hcmNoPWFybXY4LWEgLW1jcHU9Z2VuZXJpYyAtbXR1
bmU9Z2VuZXJpYykpCisKKyMgR0NDIHN1cHBvcnQgLW1jcHU9Y29ydGV4LWE1MyBmb3IgYXJtNjQg
ZnJvbSA0LjkKKyQoZXZhbCAkKGNhbGwgc2V0X2ZsYWdzX2Zvcl92YWxpZF9nY2MsJChNQVJDSF9B
Uk02NF9DT1JURVhBNTMpLDQsOSwtbWFyY2g9YXJtdjgtYSAtbWNwdT1jb3J0ZXgtYTUzIC1tdHVu
ZT1jb3J0ZXgtYTUzKSkKKworIyBHQ0Mgc3VwcG9ydCAtbWNwdT1jb3J0ZXgtYTU3IGZvciBhcm02
NCBmcm9tIDQuOQorJChldmFsICQoY2FsbCBzZXRfZmxhZ3NfZm9yX3ZhbGlkX2djYywkKE1BUkNI
X0FSTTY0X0NPUlRFWEE1NyksNCw5LC1tYXJjaD1hcm12OC1hIC1tY3B1PWNvcnRleC1hNTcgLW10
dW5lPWNvcnRleC1hNTcpKQorCisjIEdDQyBzdXBwb3J0IC1tY3B1PWNvcnRleC1hNzIgZm9yIGFy
bTY0IGZyb20gNS4wCiskKGV2YWwgJChjYWxsIHNldF9mbGFnc19mb3JfdmFsaWRfZ2NjLCQoTUFS
Q0hfQVJNNjRfQ09SVEVYQTcyKSw1LDAsLW1hcmNoPWFybXY4LWEgLW1jcHU9Y29ydGV4LWE3MiAt
bXR1bmU9Y29ydGV4LWE3MikpCisKKyMgR0NDIHN1cHBvcnQgLW1jcHU9Y29ydGV4LWE3MyBmb3Ig
YXJtNjQgZnJvbSA3LjAKKyQoZXZhbCAkKGNhbGwgc2V0X2ZsYWdzX2Zvcl92YWxpZF9nY2MsJChN
QVJDSF9BUk02NF9DT1JURVhBNzMpLDcsMCwtbWFyY2g9YXJtdjgtYSAtbWNwdT1jb3J0ZXgtYTcz
IC1tdHVuZT1jb3J0ZXgtYTczKSkKKworIyBHQ0Mgc3VwcG9ydCAtbWNwdT1jb3J0ZXgtYTU1IGZv
ciBhcm02NCBmcm9tIDguMAorJChldmFsICQoY2FsbCBzZXRfZmxhZ3NfZm9yX3ZhbGlkX2djYywk
KE1BUkNIX0FSTTY0X0NPUlRFWEE1NSksOCwwLC1tYXJjaD1hcm12OC4yLWEgLW1jcHU9Y29ydGV4
LWE1NSAtbXR1bmU9Y29ydGV4LWE1NSkpCisKKyMgR0NDIHN1cHBvcnQgLW1jcHU9Y29ydGV4LWE3
NSBmb3IgYXJtNjQgZnJvbSA4LjAKKyQoZXZhbCAkKGNhbGwgc2V0X2ZsYWdzX2Zvcl92YWxpZF9n
Y2MsJChNQVJDSF9BUk02NF9DT1JURVhBNzUpLDgsMCwtbWFyY2g9YXJtdjguMi1hIC1tY3B1PWNv
cnRleC1hNzUgLW10dW5lPWNvcnRleC1hNzUpKQotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0
Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2pl
Y3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:44 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807w-0006Lx-N0; Mon, 16 Apr 2018 09:08:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807u-0006LS-UV
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:42 +0000
X-Inumbo-ID: 03a6c832-4156-11e8-8249-2fda3a446a53
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [104.47.0.74]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 03a6c832-4156-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 09:10:32 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=QFI18VEyD4lm/VWxBAXO7w4fu0SiGPgz2TKlxgyyuno=;
 b=Gv1/j3x8gW5vEYS40ayAhR8mN3auGgtD87BjvIm7B6ySOwS4DKVEkYntkMVBgZ1suk6yToNMPxdj2/hXwyiKTYDeT0NYi5eIbbOLHAxf5LHdpqpc9aTME7HLkD8Scmpl/s+1onoHJQfRYwEJjU2mJbJE42B50tB1ySvgrbk51J8=
Received: from HE1PR08CA0046.eurprd08.prod.outlook.com (2603:10a6:7:2a::17) by
 AM4PR0801MB1588.eurprd08.prod.outlook.com (2603:10a6:200:3e::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.10; Mon, 16 Apr
 2018 09:08:34 +0000
Received: from AM5EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::202) by HE1PR08CA0046.outlook.office365.com
 (2603:10a6:7:2a::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.10 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:33 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT016.mail.protection.outlook.com (10.152.16.142) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:30 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:08:20 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:45 +0800
Message-ID: <1523869666-30659-13-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(376002)(39860400002)(396003)(39380400002)(2980300002)(438002)(199004)(189003)(316002)(486006)(16586007)(54906003)(110136005)(106466001)(49486002)(356003)(246002)(76176011)(48376002)(51416003)(36756003)(6346003)(50466002)(104016004)(2906002)(47776003)(6666003)(8676002)(77096007)(106002)(86362001)(336012)(186003)(8936002)(476003)(26005)(126002)(50226002)(446003)(11346002)(5660300001)(4326008)(26826003)(478600001)(426003)(2616005)(72206003)(305945005)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR0801MB1588; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT016;
 1:RUjjnP9a7yzbzT3S8tWpkWVV3o0h6EJXMS7aRkPpyECxKmDhIcyKlOQXjHgWs9xOATG9owZFOrEoAzOqAai2KGbsoGD9izOgHmn8pjXGu8kaTs6YpBtXEJJyjGKwS6jZ
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR0801MB1588; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 3:QAV6XpOWvFZ7TJ1FFdAHc7PSdflzg7TwrX7wM6ZYWjLSyV5nrqWHytj1py0xehs6sjkilOykvqNCIQXsGoxg01z6T4q5y8pVQnnKOJKRDGlzUIgUUQccU0ThJrakEXuYvnCjHy9qFJhD7Y9vomf+zOQ8xt4JYelQrIGbGoQZ1o8BWRjWrF7rFPJw8VdiX1+wlSNYqDpeoMwXRFIWn+DNzsOMK1pa6Tyx/CT0/YMGqXniS1R6XL1dZ+I2D0AgZ9+X6dVqfpRz/hn0h2e1G1f6nfrn3FvhdMthbeDcTrqlE4OhRKS2tl+HRQXsQRf0PrV8JX8M4gQt3jD8cpQsOXFKGYbMsKve+QGUo9uZYCZwFDw=;
 25:7tQ2JlDmmnXVVsarOVdHpjLyMvnZasOL8H1m1JYS7TUmSzL8hhQCrnQoJWHueS7HCzORw2mBT8+t0OIieJiqN4x1F2SZKQ8CHQx5drNOCS5c8QnTOX/dx5rI0INzPakExVH/phUxDWyOPV5+jdcvfB4lG297dLc7wOxk6+OUo2YRD1DZnWwVRNdKmhiZ+xaT2LrA6JzisN+r5r6BcJQhRRsVxvsJylM71ItKlQFFz54XS+PJE+ucjrblwvIO8HVsoiO8phmoPL8m1/8UuLshn7avU1QHl1UpmGXdwvK2l0AE4KLyaUR9IpJOmQ6WE4D1vTVQDFlVNn9z14ikweALNA==
X-MS-TrafficTypeDiagnostic: AM4PR0801MB1588:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 31:/Y3i//GQ8caHXAghgWd1lwcm7lT8dMfUgeQNn/u/22Eyx6wpGH/ERiz9nd42ORC6REQudIV6ODqCPaRfN2kmbOyTLTjFlG1cyp4dzyNuCJadyAVgIzyfKTL5RhDJnPpg1fpsh/mElLL8rJ+9QUuriR1xk0e24krWHrA+NyeJPcvnL6JMh6+KHikJ2RxpMylOx5Kys+K4RkCHeeN17TDajiBKMuJeZr2jrD7bFgjuJLY=;
 20:iV+96rIYsIEQ9OAWRq5BaDXM3osviaoBwSkgeiN7448Q4OPu5dYffdb6r/F6gGVM+uDumf94uPZBNE7U9gXke/Cm8ly0IwZmHEhNEcdRAexWVMWT8/lDo6Jic0JKTqVOBdml9A++ugMMRdm9izDbWS97TxVy7Duf9q5tZSyI/rOXZ/rm9qMx/AzWh/wt58W1AYdY5KEInUJZTisVkzPbQZfIfeoO0ujj0dhcxjowVqenZ86McLAFiLIxpVTpjcql;
 4:Ki6dsY4U5pi57EmgY2HRAJKYq+SYJL3yjmDh0068naGeuuMbrpMR1bm8jrtBANYZKfoeAXcfc+03T2VvynCq/Hp8eYCtSuvzuFAR7dPRcKat73f/ZxA7llqphetwbkQUbHCbE8nYCkIYpHUTjAgOXak5QyvqU+i1z9KR6o3HQnAzs+vPdP40FMTMTrdrg/s51BZgqEHbUuiMvzEofpGWg7mMTESQCTOvIQ083YEkcT8mqDxuf3dYmek1V2M80O9ysc/f+tT6w5/P2HzMk13lfU2BEfb/avZNontpHdI8lBy789QRgHiX9rvIQBYr/8DH
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR0801MB158832CF23FB9DD4493643929EB00@AM4PR0801MB1588.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231232)(944501327)(52105095)(10201501046)(3002001)(93006095)(93004095)(6055026)(6041310)(20161123558120)(20161123562045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:AM4PR0801MB1588; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0801MB1588; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR0801MB1588;
 23:slD7FcjgexAHkiaeYudvGnwtWq/G8I2ADYs/4Vf?=
 =?us-ascii?Q?58V4zRuvjGRVikAYb7x+g8GXDN8ddzFjc2HWCNxqN4+3mr4B8mjAAulTYvfM?=
 =?us-ascii?Q?vWO5GoqYAv4s/DzXGNvAOgvjbFAuCTzeRTVgrFoaPY4RBLAfH7GixKiBg5d/?=
 =?us-ascii?Q?xlvZkdarsRZbMvXTWvmmYmT3HcbLsPRGsnqdMPITo8xWHBfSSqZ7IIHNQoJa?=
 =?us-ascii?Q?aUS6wZJToVmNegyb0lADeEZrrhnbjZOkjPDWmh08MiRGfen/BVvtBG+zSAaN?=
 =?us-ascii?Q?o/3Vw4DlqOF966kMF2c8Xu5ztG9jcgbNWOzvwLNHb82mipfgytC7JKZhA1X3?=
 =?us-ascii?Q?53iU9okdvuch/z3ovs8R1nw83FPgygsKNbC/a9e5g+zw6wEe/5Bzn8t6x8kg?=
 =?us-ascii?Q?HxsAHSpDfTvdTp8WvLKNMuwPxLo5mNVzY7wgZ+jakSEp/rqg3SReK1YpNSAO?=
 =?us-ascii?Q?0XLIJthym+zkUbKCQLxr8q4mlVAEEergn6sNzz0aaQeEmk8r6T5S2Jt1LDO6?=
 =?us-ascii?Q?/eYyj9yugSA4J1VQgmp7Vbkz4muoBrim3edq+kQz8YzqpWy6m1TiqSPZCTO2?=
 =?us-ascii?Q?8nCZMtKy8aA1HYHNs2j7wC0KTCP5tKuSPs2yWnAktruc3LbHmeD8X+VyFcv0?=
 =?us-ascii?Q?uELOvm2Ht1ToyqFq683mf3y5KC8njcWcQWy4YtdQrD4Yr9/43FqmB0UFtSiu?=
 =?us-ascii?Q?PICO+WZAu1Ue+fUrLiQsbTV4dBxWMRMKDhX5cBs4DB8o9owqV7WsqPaS2II2?=
 =?us-ascii?Q?Mwhg1LhNy6omAm3pbqpN0aYF/QKQcNhNWvHIiZtxRvFdfhwbx2GBN+8TFH4R?=
 =?us-ascii?Q?r3LxmTZymUpiM2IuqPxt6NJjRZ7jL/7VAMS4sSmKCK5PjpGRWTMOIZ9QtnAd?=
 =?us-ascii?Q?LPSqSRaFKs8zEbLv14+lKYiyN1qbJk0i7qmPNuNCPgUVPVvw+RUEOESQVwp2?=
 =?us-ascii?Q?k92qBNFOUlnhuERks4NMmjCvXRf6lFsqzr/lE5xA9IlTS9xkxKbRFmbjlSp3?=
 =?us-ascii?Q?KG0JTXf9OV2thLylsQoYAAj6785657N3wk91LCSznv1OJ3OWU0iIBNVC+GS5?=
 =?us-ascii?Q?fRoA+Pjs/RryUg8pLt49MGo0zdz4wklIo8h3s8oJkWCvtz/id4X1HfxYB6r7?=
 =?us-ascii?Q?uOryO7uFA+dQ=3D?=
X-Microsoft-Antispam-Message-Info: ZAMxp03IswEpoTL03h0V+QMOQthdhgFeyAernenGjBHG/rP20D7TG/3DV6/Hg93jt58sTjnyv0pYhW377ZhtsPe7xyKCwKEnHb3XhVmbsN6DzG42+VTpwyvHlDEhcyjEO0xQCtz9lO4GKb6ZN3aiJ30rljiba/le1DtHp/G3W0Njh5R3eUlTNJ4mCKCMhts4mAu1a0AGrtWDlOIsqoCxeFD3df9D/g0N5+PCRVrj9lrBFEkc2czuaAzmH+ArJqigWHzSq1RO1CSCSnKTnwWCZxxQSv+CfOoFDURMyiSDK5DPP/pli01xOs7LYwH+ZgiFtoMDgVNvd5HHTxS7FXybQBzMN/xhoQtLj8LsVsICyy8jxgFIn1DtM1iYRgiXUzUaGFn8y7L0Ou/UfBwaqE0429+CD49JnlDZmNHFmxDfPUU=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 6:pEFnnBMD5lOdqnrN1k3VsQxpl5z7CMiNNscPfLGQsR6cnKNDf3xt9WIUe9u+nFjUQdZzmvx8cfDRXLm32xHBQS9toPUbCwgO92rgC1vURUBMp9LmjqcGrPQcBT8AnqY9swjraj5w31dd2ZeVEXSnNwiI4pijmKIVKeCyBL8Iw5oQcPImNaefMB/AWfWR4SJZxEioSDk7xmDZoeQc/7iiY8oDkLTKei4IhovVfjktVB2BKlI0rN+gkXJqBkwUV2FOr2X8Q4Y7avwbw+8l10anhVIFF8In1jYf0TeG/oDjMNgx90Jm4heJnmSQN0LMbrocCQnAomotKhxp09HSS6vrxkSxjR0TQuZEpBvvBChILbXI6BQYD83AkBvZPvMp/o9Byqxg1CI0oLjdjkkpYansQCF5+7pkhNHNZ1EBWQeo4qbkBg1mMOqOWMWaafZfDSl7MsYPEvc/GtNq8rmZeoCYdT05mdgUr1twkfJHFOwbdd3oBRPX1DcSr5rtNqyRWP3K;
 5:1QwnpoICbjk1ZUICQzu5JDpsCxUg1t0RvqaT42i6lLs17oop8/UGdsGMRnhmtRZGbHphN8TPHS0Knp8pT+8ym6PJhK7lLaRoI+AzfscoLkoQH0Cc3AylEnQENURypyWcO52XWkEZXcyLDfu8FhywjEEOZrTPJxYhwPn83rSgOC0=;
 24:kiRs+C4l+uAavnNCI6KTHN9JCxbLaBJUr5ORxlzpTPQIsIL9OpmZGzaglIhyKjN+kiES8kLIO1eXPok0VbxRmvVMthqggQwDliciUnDUqi0=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 7:0DUKUM37uD6TQm+3/MGPm29qCLaLo1WdRhSxOoitIof7dnJFXK3wb5PAxB0iwRehfrQYEJ8L4ElDjtbh5+lupiHjTSrrQo8yDw65vtn1ngq6HEcewGPtZWlSGFOnjzzPpWZhr8VbfYZqJgTh3AsIt8o2cXldSacaoznyog8CFDhI4/8AKT3KkiAp/CRX2BVOjJ+qRTHgXPujPwUseVgtv3SGeqXI2ld6lxL9lyh6/uVrb78x3JHK3G6DRCNEsMlK
X-MS-Office365-Filtering-Correlation-Id: f662ca28-fb15-498d-1931-08d5a3799f82
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:30.2766 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f662ca28-fb15-498d-1931-08d5a3799f82
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0801MB1588
Subject: [Minios-devel] [UNIKRAFT PATCH 12/13] arch/arm: Check gcc version
 and set processor flags for arm32
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U2ltaWxhciB0byBBUk02NCwgdGhlIG9wdGltaXphdGlvbiBwcm9jZXNzb3IgZmxhZ3MgaGF2ZSB0
aGUgbWluaW11bQpnY2MgdmVyc2lvbiByZXF1aXJlbWVudC4gU28gd2Ugc3RpbGwgbmVlZCB0byBj
aGVjayB0aGUgR0NDIHZlcnNpb24KZm9yIGFybTMyLiBBcyB3ZSBoYXZlIGFscmVhZHkgZGVmaW5l
ZCBhIG1ha2VmaWxlIGZ1bmN0aW9uIHRvIGRvIHN1Y2gKdGFzaywgc28gd2UgY2FuIHVzZSB0aGlz
IGZ1bmN0aW9uIGZvciBhcm0zMiB0b28uCgpTaWduZWQtb2ZmLWJ5OiBXZWkgQ2hlbiA8V2VpLkNo
ZW5AYXJtLmNvbT4KLS0tCiBhcmNoL2FybS9hcm0vTWFrZWZpbGUudWsgfCA5ICsrKystLS0tLQog
MSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1n
aXQgYS9hcmNoL2FybS9hcm0vTWFrZWZpbGUudWsgYi9hcmNoL2FybS9hcm0vTWFrZWZpbGUudWsK
aW5kZXggYTgxMDI1Ny4uZjI0OTNhNiAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vYXJtL01ha2VmaWxl
LnVrCisrKyBiL2FyY2gvYXJtL2FybS9NYWtlZmlsZS51awpAQCAtNSwxMiArNSwxMSBAQCBDRkxB
R1MgICArPSAtbWFybSAtZm1zLWV4dGVuc2lvbnMKIENYWEZMQUdTICs9IC1EX19BUk1fMzJfXwog
Q1hYRkxBR1MgKz0gLW1hcm0gLWZtcy1leHRlbnNpb25zCiAKLSMtbWFyY2g9YXJtdjctYQorIyBT
ZXQgR0NDIGZsYWdzIGZvciBNQVJDSF9BUk0zMl9BMjBORU9OLiBHQ0Mgc3VwcG9ydHMgLW1jcHU9
Y29ydGV4LWE3IGZyb20gNC43CiskKGV2YWwgJChjYWxsIHNldF9mbGFnc19mb3JfdmFsaWRfZ2Nj
LCQoTUFSQ0hfQVJNMzJfQTIwTkVPTiksNCw3LC1tY3B1PWNvcnRleC1hNyAtbXR1bmU9Y29ydGV4
LWE3IC1tZnB1PXZmcHY0LWQxNiAtbWZwdT1uZW9uLXZmcHY0IC1mdW5zYWZlLW1hdGgtb3B0aW1p
emF0aW9ucykpCiAKLUNGTEFHUy0kKE1BUkNIX0FSTTMyX0EyME5FT04pICAgICs9IC1tY3B1PWNv
cnRleC1hNyAtbXR1bmU9Y29ydGV4LWE3IC1tZnB1PXZmcHY0LWQxNiAtbWZwdT1uZW9uLXZmcHY0
IC1mdW5zYWZlLW1hdGgtb3B0aW1pemF0aW9ucwotQ1hYRkxBR1MtJChNQVJDSF9BUk0zMl9BMjBO
RU9OKSAgKz0gLW1jcHU9Y29ydGV4LWE3IC1tdHVuZT1jb3J0ZXgtYTcgLW1mcHU9dmZwdjQtZDE2
IC1tZnB1PW5lb24tdmZwdjQgLWZ1bnNhZmUtbWF0aC1vcHRpbWl6YXRpb25zCi1DRkxBR1MtJChN
QVJDSF9BUk0zMl9DT1JURVhBNykgICArPSAtbWNwdT1jb3J0ZXgtYTcgLW10dW5lPWNvcnRleC1h
NwotQ1hYRkxBR1MtJChNQVJDSF9BUk0zMl9DT1JURVhBNykgKz0gLW1jcHU9Y29ydGV4LWE3IC1t
dHVuZT1jb3J0ZXgtYQorIyBTZXQgR0NDIGZsYWdzIGZvciBNQVJDSF9BUk0zMl9DT1JURVhBNy4g
R0NDIHN1cHBvcnRzIC1tY3B1PWNvcnRleC1hNyBmcm9tIDQuNworJChldmFsICQoY2FsbCBzZXRf
ZmxhZ3NfZm9yX3ZhbGlkX2djYywkKE1BUkNIX0FSTTMyX0NPUlRFWEE3KSw0LDcsLW1jcHU9Y29y
dGV4LWE3IC1tdHVuZT1jb3J0ZXgtYTcpKQogCiAkKGV2YWwgJChjYWxsIGFkZGxpYixsaWJhcm1t
YXRoKSkKIExJQkFSTU1BVEhfU1JDUy0kKEFSQ0hfQVJNXzMyKSArPSAkKFVLX0JBU0UpL2FyY2gv
YXJtL2FybS9kaXZzaTMuUwotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZl
bEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxt
YW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 09:08:45 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 09:08:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f807x-0006MT-Or; Mon, 16 Apr 2018 09:08:45 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=dfqu=hf=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f807w-0006Lk-H5
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 09:08:44 +0000
X-Inumbo-ID: a02b7177-4155-11e8-9728-bc764e045a96
Received: from EUR02-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe05::627])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id a02b7177-4155-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 11:07:45 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=HhWxErfgtm0hH2DZq7VKi/7eLp43cl8nCqU5y/q7l2I=;
 b=WVJTE04EqMb0qTi5ApkdOInHvSFFjtZ+wqssDA7edG3KHGFiBiA3sJol3Y00goaOSq8LFBiNx3HMLn2vkwB8LvyPdGyJQwYeUcvrzlzfMDYgqktX2z3l0P4bc4FLiqxYaQ/6ktKceNhWGZPecSOj8IHt/xzUsVK+dTn2oVLox3Y=
Received: from VI1PR0801CA0074.eurprd08.prod.outlook.com
 (2603:10a6:800:7d::18) by DB5PR0801MB1589.eurprd08.prod.outlook.com
 (2603:10a6:0:3b::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.9; Mon, 16
 Apr 2018 09:08:33 +0000
Received: from AM5EUR03FT034.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::204) by VI1PR0801CA0074.outlook.office365.com
 (2603:10a6:800:7d::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.675.14 via Frontend
 Transport; Mon, 16 Apr 2018 09:08:32 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; neclab.eu; dkim=none (message not signed)
 header.d=none; neclab.eu; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT034.mail.protection.outlook.com (10.152.16.81) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Mon, 16 Apr 2018 09:08:32 +0000
Received: from localhost.localdomain (10.1.2.79) by mail.arm.com (10.1.106.66)
 with Microsoft SMTP Server id 14.3.294.0;
 Mon, 16 Apr 2018 10:08:22 +0100
From: Wei Chen <Wei.Chen@arm.com>
To: <minios-devel@lists.xenproject.org>, <simon.kuenzer@neclab.eu>
Date: Mon, 16 Apr 2018 17:07:46 +0800
Message-ID: <1523869666-30659-14-git-send-email-Wei.Chen@arm.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
References: <1523869666-30659-1-git-send-email-Wei.Chen@arm.com>
MIME-Version: 1.0
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39860400002)(376002)(39380400002)(346002)(396003)(2980300002)(438002)(199004)(189003)(126002)(476003)(5660300001)(8936002)(8676002)(246002)(26826003)(478600001)(72206003)(50226002)(4326008)(47776003)(104016004)(106466001)(50466002)(48376002)(305945005)(2906002)(6666003)(76176011)(51416003)(49486002)(486006)(106002)(110136005)(446003)(426003)(316002)(336012)(36756003)(86362001)(186003)(54906003)(16586007)(26005)(356003)(77096007)(11346002)(2616005)(59450400001)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR0801MB1589; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT034;
 1:n0q4fc3aCwFR/0A6FDRqfE+1GsMNIgrs2+Ky8BjUObJdxAPjKT4VycFoHJODedbx+f5tVOtN32lk2v/ByyDEIWXzyKYtwFl/2xzALtiU2lg3JQMgCfNrw7nZeASU9ZL5
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR0801MB1589; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 3:LRq7RGkLLzmGF9UDsNd5SVQEUXVTZunKIiEl57uO1oVcGgCJrSFrMKTDu/dYNRiPlGEBmR3fVTikKmoGpzs9s464zk5PfG8KmnxvzOfGf4lxz1Gq8ap4/LiXiWGwwwlLeQBd4/UbdIYVJjrOaWElYrw4vvNus7YEqAUoL7OaHSMqCLMB8aTn5kxkUqgVvzRarnAZ0ymZ49YSPKAIn7w4elEoOZnPJVsB1TrSiRCKJhVxHzsLXo/EHAjICXJAZjbkT0St17Wqe3E+2AhG1bTzWd+3hltYXj6+5Zefdpiv0pOFJrKj4nJPZEgrilv4jWZ4BBYdQfxyzxWJ+TG5AEGnfdN1CMMzt0+pc7RavVSPvj8=;
 25:PrzgLGgu00cp5q3FgiKJUPM/jMZC29m/tD4tTq4Vz1HUem3meMrkeQdKQn0zKQXuZ41yXBoHUtQUCu3TmVzXtpMdlMDHX5TSkMmv+PR4S+tG8eeu/7U8LQm8BUo6DZ95Avcdaig6hBNyScg4bOl6g6Sra82/QmOk0sIJoLMwQ10kIqU00sf98pwaquk32RQHBUHdtJhpNV4uuUBSPgNLk6NzWlx7buteprlGv/vWsokRHN/YJK4VoBcXVfUBQvEfLVJjkjqqN5MTFhWzhsSe+zxrX7oPKqTkpVEU3gAJy4nfaIDLZrKpqt0XxWl26nYFERs8HtKvfHF0Ublq7Xz68w==
X-MS-TrafficTypeDiagnostic: DB5PR0801MB1589:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 31:9hO79j2JJBYo2mI9mQf83IJguVG87Fs4XZ1jAed/JvvDsCrCiwFcGqLZLWksiGr9RGpxmwFRL7ScRcPM1inCVRjFWhB9TCTBWlFDhf7Re+nb2slyr/zQrztE847EwqQVbK8aRd04jIWRUSNj1l6RKkmfzKbAmWTjXkvWk66RF2S1cRUAaRIazFwJWJHobJk1Lp+4cUwid00F3+zD/g5rMb5/9mQcoUJGry1WqlNsUZA=;
 20:pDmHdIWh6CTgqJimBSeCjHzcpCwAg6eo1IzXF0nNKLjDnfHFkLBMWFB2nBQAR59Ed1lnYDmcPWcgvwqzukUN4E+ncVx8vdAXiFtSxryr09RI6/+6ieSifJukEy97CKA/jNGMut4Ym3V7r5SLwuCYJsckrwoToHuHQR8GI6HIr+Y+X19ootx1dSVkeeSVxZ8CzhujgORgZefb58mZdm1A3xl+XSlNFkuy22dosVpvRn7tqkiDtcIvi99CfMeyjpWW;
 4:17AI1HqwTlqn8lGMGK0ZvVMx7LA3uDP421slp3EO5BvaE420a5fy+gME7qOn1f7ZIjRJsAxIqlRV0fANSLxDtaTFu0d4QKJwI5e2Z9aHCzZT+Cp7O8s7FuxYzJeweCCEoXo1P18Chb/tzz61fi1pqRi/gqvxTq3ZqyvadZY0aCRwqRutqf22hCNhwQxbcNe4DvSJRx6F4C9raO1bQNt0rvQKkQ2KrRIc4zmxkvMqay1+7PyFGT0Rwk3pw7TAecCI8u/Gf/Nj1UDzZuw7gFWUCkY7/0+wl3oAqMLr9ekS+5F+fuivb66qfGatn/83OfGG
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR0801MB1589AC4203B17B4B267D94689EB00@DB5PR0801MB1589.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:DB5PR0801MB1589; BCL:0; PCL:0; RULEID:; SRVR:DB5PR0801MB1589; 
X-Forefront-PRVS: 0644578634
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR0801MB1589;
 23:GMnZ9/oL0DftV87ObLF1x9O1RIsW0X+ecosPPk0?=
 =?us-ascii?Q?N4SgVpMfMa/ecO7RYQDAHRxUPSNDV3iV96S2K9a9hGfkak+IizjxZwBWUrwW?=
 =?us-ascii?Q?Z47YDZ85rftePAXNLBSMZGSsc1gutcRvfotmDQhHboIRbnYUAhgDoEsQxfar?=
 =?us-ascii?Q?xNuvq5FD3yzCn8PuEwxjWcH1m5fUP1SEtOXR5aIWgwxnec41Y4qCA1njugh+?=
 =?us-ascii?Q?Z8bI1VzQ0pX7td9dnqJ/xCP8a3l5m9nqSXI7vykdghH9LN/uoggxsI8GUaUu?=
 =?us-ascii?Q?AIQDEyeWiDSQjZZXkw45pjwlvm/ZEc613+wMX5iiyr0cb96B+ChL03JPCxhV?=
 =?us-ascii?Q?ykF/LmrX6ZAQFT7jvhUtB/d5lLdrG6ft7gmBqYKg6W8RZDUZqkwhm46927RM?=
 =?us-ascii?Q?Q2GVQFxLrcgW++WhS1IXV6cJBiEgAI85oAwBwqd0Z+p6kZlnImn3QIhwdHir?=
 =?us-ascii?Q?RgTYmO5w2oD1Y7NYMSFJO3bJ60HSnNfGfFMcJbYILU3SaNfsut2Ew14Jc5zU?=
 =?us-ascii?Q?23odrGyUvLPasrEUvuCrJEQIbrmdY6ZR7vL1QrA4IOFTpXP1af63Qjx1aZHy?=
 =?us-ascii?Q?8n9YjM0ScsxsAaj/l3iL6tgPjJA333eM0He3meHIlZieQOTjj9aovB9Uq6Jj?=
 =?us-ascii?Q?HChYVFXjEUd6JCN3LiKgIdBjD5GcXmZLrywdxgJGXqVLyJtejFIQUsgWN5Il?=
 =?us-ascii?Q?a8cNagMLgT4uHMI8Rni5U2LDtt6VKagUrqQbh7ctSgUjQMPSTDAPPnpclc1B?=
 =?us-ascii?Q?a+sPZIZuSn41Ouc53F376/DZfPN69thiAzxJ+V6ugcZcxa/jmejR2lEO42SF?=
 =?us-ascii?Q?o5EFcqs8LFRW0NPMMao2nIWly+OuNflYOqyaPa+Xp+T8qkym/kFcZVlhDMDb?=
 =?us-ascii?Q?gCRAKM6cIMchQGDTYOTLIovFSmEgFlb4KmERWy6+NxfuusqosRN/52O9lQJ/?=
 =?us-ascii?Q?TjjI/XF3Y3RkYBl2kfqADsHcfXyS4hgIjKvC7sYTx2x3UyKnNcSdpHiXSmdv?=
 =?us-ascii?Q?oGqgvT/uAGsAg5V7fBlLMUZQjt/DD/osDveZ131MhOqnt++oq18c9nmAA4jA?=
 =?us-ascii?Q?q19x925xAI1DQCwkNbdGkfuPkANNzIK6OFDFjlAn33xTY4cWcHdv3qM/g1W5?=
 =?us-ascii?Q?uw+sO04mRonM=3D?=
X-Microsoft-Antispam-Message-Info: DfxFtbPm7vVa75vW5MQrcdkvfk+eYAqaITvKQqHvJXu0e8uZf7uLo7KzkjUdYcEB8C9VvGBaBZiei3IblejftWCwh/X6LFeBgZCC+Q1rNJRyWRlcvfgStARwiviagdQFtkCrdn1UhEzUxVZa0syNa4ECbecpPrHFc8WayYtaUTatnM24wF5MABM+Ou+FlcVGgUeC6bX4dFUsizNkoo7eIi7Dx8VYgKhAmQ/aXc5qYBjd+Y9lANSwI9EGxlTiC2WuwwJqF7BE6kgQ/qRkFOv7ic+pnPC/wKeUts8pbmw6TP6Jy0NPt6axG/B+vQ7IbDXkzybNq3JyPvptnY+RC2sIY1JVshhcM11oUzCrwoG3L8yhYV2WFCBakRq4Fyraab4uMKWpNrmpP+xG9qC+ngjnjq3jtY/0+yMGLf6rVNQior8=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 6:xZ56q3U4qlx3LNFVg6t5NNbDN7HuXF2lx3QRGghM7Gi48ZmopBO7A0+8B6VozDa44IcOlaEDYSDpiFe+X8rOHQoKa213rj61v+BtYeDqrmHUTECBJXwhCHmQu7Qfw7AFNGcGK4YcBEhW/QA9d7RXS67UcBE8ddOBp+bBDcD3EnZo5c4Ck5Cmrv+QmhMZ/tMalgfNfYoie1wkDlo3ac6KSl7mFewzKPOvkXjCchrE7BRFNl6U2SE65FkLWw5KuIOsCVEMVKbIwKRObGcpRJGaxE/z7meZfNdSlzBBSXgueXU5/GpDOSyGVZjSkKqzHpwHgAMTMtRUvZ8j/eC5EymRid7yh143T9nSKYx28TpMGzdRWmDdOSEVG0+QpLFQb4IQSvtIf1HSYeh3WIc72hAqXkm8rgaJySu4ahNQ6tmdA/TeDZ7RZnEky1DIIa4B5JsKB2dpVnXsQnyV6kF9u6UY23ESkrAynal43TYeZdwJnFLl7ExbXziLl3Pf/UTTmhSQ;
 5:oqxe0KpBWZt7OrMOBmuL6d29UWI9HNKkS6+NVwdfv2nJO6CG2F3i6OThP9xgANBBLNJfA/7WRbSqU1XOLB1TFqPa7glheVx9xEjiyJXccCd2Jl00Pdqk2Lz8Fh2GBOzkmNcLfNv+mtBJakBr8yKgKrxZwiH4B5MCr5smlBHQ65E=;
 24:IvU02JnxjKqR9qvbsdDKpVPl8wCQetuA2cbCXeSmsnaAD9WiDFv+/IZvqjFluK840wb2m6LvCp/JGce7E9GwEfkydFZd2GCZ47OUMv+bBhE=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 7:exk8rM5Yqb6ze1uQD420FoFADJjmve+FWy7cAieJw8FMBCMiKfEIzpQQj2sKG9nSZZ0xlk50oMrniH4F1Qp3gV/qQXnauNM9gxEElzFi/3qxS4+BzshgWlFukr0X/I9Xi7wqcg9VfjNzZD4RL+XumLmqylrUEMNQasT+emybMKjeabFHh6fsoydWRZENKQRAR/nz6y/EnFBD1w5IppTPHMgJuz1KzeVm9c9zy+BZfMhFzKOiAV8ddCXaDbqxR8mf
X-MS-Office365-Filtering-Correlation-Id: 3ddc5fa2-0140-4d90-56cd-08d5a379a0e6
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2018 09:08:32.6269 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3ddc5fa2-0140-4d90-56cd-08d5a379a0e6
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB1589
Subject: [Minios-devel] [UNIKRAFT PATCH 13/13] arch/arm: Add more CPU models
 to processor optimization list
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: shijie.huang@arm.com, Kaly.Xin@arm.com, nd@arm.com, wei.chen@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Q3VycmVudCBwcm9jZXNzb3Igb3B0aW1pemF0aW9uIGxpc3Qgb25seSBzdXBwb3J0IGdlbmVyaWMg
Y29ydGV4LWE3CmFuZCBvbmUgQWxsd2luIGNvcnRleC1hNyBTb0MuIEluIHRoaXMgcGF0Y2gsIHdl
IGFkZCBhbGwgYXJtdjcKY29ydGV4LWEgc2VyaWVzIGFuZCB0d28gYXJtdjggMzItYml0IENQVSB0
byBzdXBwb3J0IGxpc3QuCgpBcyBhcm02NCBhbmQgeDg2XzY0LCB3ZSBhbHNvIGFkZCBhdXRvLWRl
dGVjdCBob3N0IENQVSBvcHRpb24gZm9yIGFybTMyLApldmVuIGl0J3Mgbm90IGxpa2VseSB0byBi
ZSB1c2VkIG9uIGFybTMyIHBsYXRmb3Jtcy4KCk5ldyBzdXBwb3J0ZWQgYXJtdjcgY29ydGV4LWEg
Q1BVIG1vZGVsczoKYXJtdjctYSxuYXRpdmUKYXJtdjctYSxnZW5lcmljLWFybXY3LWEKYXJtdjct
YSxjb3J0ZXgtYTgKYXJtdjctYSxjb3J0ZXgtYTkKYXJtdjctYSxjb3J0ZXgtYTUKYXJtdjctYSxj
b3J0ZXgtYTE1CmFybXY3LWEsY29ydGV4LWE3CmFybXY3LWEsY29ydGV4LWExMgphcm12Ny1hLGNv
cnRleC1hMTcKYXJtdjgtYSxjb3J0ZXgtYTMyKGZ1bGwgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3
aXRoIEFybXY3KQphcm12OC1hLGNvcnRleC1hMzUoZnVsbCBiYWNrd2FyZCBjb21wYXRpYmlsaXR5
IHdpdGggQXJtdjcpCgpUaGUgZ2VuZXJpYy1hcm12Ny1hIHdvdWxkIGJlIG91ciBkZWZhdWx0IG9w
dGlvbiBvZiBhcm12NyBwcm9jZXNzb3IuCgpTaWduZWQtb2ZmLWJ5OiBXZWkgQ2hlbiA8V2VpLkNo
ZW5AYXJtLmNvbT4KLS0tCiBhcmNoL2FybS9hcm0vQ29uZmlnLnVrICAgfCA1NyArKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KIGFyY2gvYXJtL2FybS9NYWtl
ZmlsZS51ayB8IDM0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tCiAyIGZpbGVzIGNoYW5n
ZWQsIDg3IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvYXJjaC9h
cm0vYXJtL0NvbmZpZy51ayBiL2FyY2gvYXJtL2FybS9Db25maWcudWsKaW5kZXggOGI0ZGVhYi4u
ZDQ0Y2M1OSAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vYXJtL0NvbmZpZy51aworKysgYi9hcmNoL2Fy
bS9hcm0vQ29uZmlnLnVrCkBAIC0xLDEzICsxLDY2IEBACiBjaG9pY2UKIAlwcm9tcHQgIlByb2Nl
c3NvciBPcHRpbWl6YXRpb24iCi0JZGVmYXVsdCBNQVJDSF9BUk0zMl9DT1JURVhBNworCWRlZmF1
bHQgTUFSQ0hfQVJNMzJfR0VORVJJQ1Y3CiAJaGVscAogCQlPcHRpbWl6ZSB0aGUgY29kZSBmb3Ig
c2VsZWN0ZWQgdGFyZ2V0IHByb2Nlc3NvcgogCitjb25maWcgTUFSQ0hfQVJNMzJfTkFUSVZFCisJ
Ym9vbCAiQXV0by1kZXRlY3QgaG9zdCBDUFUiCisJaGVscAorCQlPcHRpbWl6ZSBjb21waWxhdGlv
biB0byBob3N0IENQVS4gUGxlYXNlIG5vdGUgdGhhdCB0aGlzCisJCW9wdGlvbiB3aWxsIGZhaWwg
aW4gY2FzZSBvZiBjcm9zcy1jb21waWxhdGlvbgorCitjb25maWcgTUFSQ0hfQVJNMzJfR0VORVJJ
Q1Y3CisJYm9vbCAiR2VuZXJpYyBBUk12NyAzMi1iaXQgQ1BVIgorCWhlbHAKKwkJQ29tcGlsZSBm
b3IgR2VuZXJpYyBBUk12NyBjb21wYXRpYmxlIENQVXMKKworY29uZmlnIE1BUkNIX0FSTTMyX0NP
UlRFWEE1CisJYm9vbCAiR2VuZXJpYyBDb3J0ZXggQTUiCisJaGVscAorCQlDb21waWxlIGZvciBD
b3J0ZXgtQTUgQ1BVcywgbm8gaGFyZHdhcmUgRlBVIHN1cHBvcnQuCisKIGNvbmZpZyBNQVJDSF9B
Uk0zMl9DT1JURVhBNwogCWJvb2wgIkdlbmVyaWMgQ29ydGV4IEE3IgogCWhlbHAKLQkJQ29tcGls
ZSBmb3IgQ29ydGV4LUE3IENQVXMsIG5vIGhhcmR3YXJlIEZQVSBzdXBwb3J0CisJCUNvbXBpbGUg
Zm9yIENvcnRleC1BNyBDUFVzLCBubyBoYXJkd2FyZSBGUFUgc3VwcG9ydC4KKworY29uZmlnIE1B
UkNIX0FSTTMyX0NPUlRFWEE4CisJYm9vbCAiR2VuZXJpYyBDb3J0ZXggQTgiCisJaGVscAorCQlD
b21waWxlIGZvciBDb3J0ZXgtQTggQ1BVcywgbm8gaGFyZHdhcmUgRlBVIHN1cHBvcnQuCisKK2Nv
bmZpZyBNQVJDSF9BUk0zMl9DT1JURVhBOQorCWJvb2wgIkdlbmVyaWMgQ29ydGV4IEE5IgorCWhl
bHAKKwkJQ29tcGlsZSBmb3IgQ29ydGV4LUE5IENQVXMsIG5vIGhhcmR3YXJlIEZQVSBzdXBwb3J0
LgorCitjb25maWcgTUFSQ0hfQVJNMzJfQ09SVEVYQTEyCisJYm9vbCAiR2VuZXJpYyBDb3J0ZXgg
QTEyIgorCWhlbHAKKwkJQ29tcGlsZSBmb3IgQ29ydGV4LUExMiBDUFVzLCBubyBoYXJkd2FyZSBG
UFUgc3VwcG9ydC4KKworCitjb25maWcgTUFSQ0hfQVJNMzJfQ09SVEVYQTE1CisJYm9vbCAiR2Vu
ZXJpYyBDb3J0ZXggQTE1IgorCWhlbHAKKwkJQ29tcGlsZSBmb3IgQ29ydGV4LUExNUNQVXMsIG5v
IGhhcmR3YXJlIEZQVSBzdXBwb3J0LgorCisKK2NvbmZpZyBNQVJDSF9BUk0zMl9DT1JURVhBMTcK
Kwlib29sICJHZW5lcmljIENvcnRleCBBMTciCisJaGVscAorCQlDb21waWxlIGZvciBDb3J0ZXgt
QTE3IENQVXMsIG5vIGhhcmR3YXJlIEZQVSBzdXBwb3J0LgorCitjb25maWcgTUFSQ0hfQVJNMzJf
Q09SVEVYQTMyCisJYm9vbCAiR2VuZXJpYyBhcm12OCAzMi1iaXQgQ29ydGV4IEEzMiIKKwloZWxw
CisJCUNvbXBpbGUgZm9yIDMyLWJpdCBhcm12OCBDb3J0ZXgtQTMyIENQVXMsIGhhcmR3YXJlIEZQ
VSBzdXBwb3J0LgorCitjb25maWcgTUFSQ0hfQVJNMzJfQ09SVEVYQTM1CisJYm9vbCAiR2VuZXJp
YyBhcm12OCAzMi1iaXQgQ29ydGV4IEEzNSIKKwloZWxwCisJCUNvbXBpbGUgZm9yIDMyLWJpdCBh
cm12OCBDb3J0ZXgtQTM1IENQVXMsIGhhcmR3YXJlIEZQVSBzdXBwb3J0LgogCiBjb25maWcgTUFS
Q0hfQVJNMzJfQTIwTkVPTgogCWJvb2wgIkNvcnRleCBBNzogQWxsV2lubmVyIEEyMCIKZGlmZiAt
LWdpdCBhL2FyY2gvYXJtL2FybS9NYWtlZmlsZS51ayBiL2FyY2gvYXJtL2FybS9NYWtlZmlsZS51
awppbmRleCBmMjQ5M2E2Li5lMDlhZWRkIDEwMDY0NAotLS0gYS9hcmNoL2FybS9hcm0vTWFrZWZp
bGUudWsKKysrIGIvYXJjaC9hcm0vYXJtL01ha2VmaWxlLnVrCkBAIC01LDEyICs1LDQyIEBAIENG
TEFHUyAgICs9IC1tYXJtIC1mbXMtZXh0ZW5zaW9ucwogQ1hYRkxBR1MgKz0gLURfX0FSTV8zMl9f
CiBDWFhGTEFHUyArPSAtbWFybSAtZm1zLWV4dGVuc2lvbnMKIAotIyBTZXQgR0NDIGZsYWdzIGZv
ciBNQVJDSF9BUk0zMl9BMjBORU9OLiBHQ0Mgc3VwcG9ydHMgLW1jcHU9Y29ydGV4LWE3IGZyb20g
NC43Ci0kKGV2YWwgJChjYWxsIHNldF9mbGFnc19mb3JfdmFsaWRfZ2NjLCQoTUFSQ0hfQVJNMzJf
QTIwTkVPTiksNCw3LC1tY3B1PWNvcnRleC1hNyAtbXR1bmU9Y29ydGV4LWE3IC1tZnB1PXZmcHY0
LWQxNiAtbWZwdT1uZW9uLXZmcHY0IC1mdW5zYWZlLW1hdGgtb3B0aW1pemF0aW9ucykpCisjIFNl
dCBHQ0MgZmxhZ3MgZm9yIE1BUkNIX0FSTTMyX05BVElWRS4gR0NDIHN1cHBvcnRzIC1tY3B1PW5h
dGl2ZSBmcm9tIDQuNworJChldmFsICQoY2FsbCBzZXRfZmxhZ3NfZm9yX3ZhbGlkX2djYywkKE1B
UkNIX0FSTTMyX05BVElWRSksNCw3LC1tY3B1PW5hdGl2ZSAtbXR1bmU9bmF0aXZlKSkKKworIyBT
ZXQgR0NDIGZsYWdzIGZvciBNQVJDSF9BUk0zMl9HRU5FUklDVjcuIEdDQyBzdXBwb3J0cyAtbXR1
bmU9Z2VuZXJpYy1hcm12Ny1hIGZyb20gNC43CiskKGV2YWwgJChjYWxsIHNldF9mbGFnc19mb3Jf
dmFsaWRfZ2NjLCQoTUFSQ0hfQVJNMzJfR0VORVJJQ1Y3KSw0LDcsLW1hcmNoPWFybXY3LWEgLW10
dW5lPWdlbmVyaWMtYXJtdjctYSkpCisKKyMgU2V0IEdDQyBmbGFncyBmb3IgTUFSQ0hfQVJNMzJf
Q09SVEVYQTUuIEdDQyBzdXBwb3J0cyAtbWNwdT1jb3J0ZXgtYTUgZnJvbSA0LjUKKyQoZXZhbCAk
KGNhbGwgc2V0X2ZsYWdzX2Zvcl92YWxpZF9nY2MsJChNQVJDSF9BUk0zMl9DT1JURVhBNSksNCw1
LC1tY3B1PWNvcnRleC1hNSAtbXR1bmU9Y29ydGV4LWE1KSkKIAogIyBTZXQgR0NDIGZsYWdzIGZv
ciBNQVJDSF9BUk0zMl9DT1JURVhBNy4gR0NDIHN1cHBvcnRzIC1tY3B1PWNvcnRleC1hNyBmcm9t
IDQuNwogJChldmFsICQoY2FsbCBzZXRfZmxhZ3NfZm9yX3ZhbGlkX2djYywkKE1BUkNIX0FSTTMy
X0NPUlRFWEE3KSw0LDcsLW1jcHU9Y29ydGV4LWE3IC1tdHVuZT1jb3J0ZXgtYTcpKQogCisjIFNl
dCBHQ0MgZmxhZ3MgZm9yIE1BUkNIX0FSTTMyX0NPUlRFWEE4LiBHQ0Mgc3VwcG9ydHMgLW1jcHU9
Y29ydGV4LWE4IGZyb20gNC4zCiskKGV2YWwgJChjYWxsIHNldF9mbGFnc19mb3JfdmFsaWRfZ2Nj
LCQoTUFSQ0hfQVJNMzJfQ09SVEVYQTgpLDQsMywtbWNwdT1jb3J0ZXgtYTggLW10dW5lPWNvcnRl
eC1hOCkpCisKKyMgU2V0IEdDQyBmbGFncyBmb3IgTUFSQ0hfQVJNMzJfQ09SVEVYQTkuIEdDQyBz
dXBwb3J0cyAtbWNwdT1jb3J0ZXgtYTkgZnJvbSA0LjQKKyQoZXZhbCAkKGNhbGwgc2V0X2ZsYWdz
X2Zvcl92YWxpZF9nY2MsJChNQVJDSF9BUk0zMl9DT1JURVhBOSksNCw0LC1tY3B1PWNvcnRleC1h
OSAtbXR1bmU9Y29ydGV4LWE5KSkKKworIyBTZXQgR0NDIGZsYWdzIGZvciBNQVJDSF9BUk0zMl9D
T1JURVhBMTIuIEdDQyBzdXBwb3J0cyAtbWNwdT1jb3J0ZXgtYTEyIGZyb20gNC45CiskKGV2YWwg
JChjYWxsIHNldF9mbGFnc19mb3JfdmFsaWRfZ2NjLCQoTUFSQ0hfQVJNMzJfQ09SVEVYQTEyKSw0
LDksLW1jcHU9Y29ydGV4LWExMiAtbXR1bmU9Y29ydGV4LWExMikpCisKKyMgU2V0IEdDQyBmbGFn
cyBmb3IgTUFSQ0hfQVJNMzJfQ09SVEVYQTE1LiBHQ0Mgc3VwcG9ydHMgLW1jcHU9Y29ydGV4LWEx
NSBmcm9tIDQuNgorJChldmFsICQoY2FsbCBzZXRfZmxhZ3NfZm9yX3ZhbGlkX2djYywkKE1BUkNI
X0FSTTMyX0NPUlRFWEExNSksNCw2LC1tY3B1PWNvcnRleC1hMTUgLW10dW5lPWNvcnRleC1hMTUp
KQorCisjIFNldCBHQ0MgZmxhZ3MgZm9yIE1BUkNIX0FSTTMyX0NPUlRFWEExNy4gR0NDIHN1cHBv
cnRzIC1tY3B1PWNvcnRleC1hMTcgZnJvbSA2LjEKKyQoZXZhbCAkKGNhbGwgc2V0X2ZsYWdzX2Zv
cl92YWxpZF9nY2MsJChNQVJDSF9BUk0zMl9DT1JURVhBMTcpLDYsMSwtbWNwdT1jb3J0ZXgtYTE3
IC1tdHVuZT1jb3J0ZXgtYTE3KSkKKworIyBTZXQgR0NDIGZsYWdzIGZvciBNQVJDSF9BUk0zMl9B
MjBORU9OLiBHQ0Mgc3VwcG9ydHMgLW1jcHU9Y29ydGV4LWE3IGZyb20gNC43CiskKGV2YWwgJChj
YWxsIHNldF9mbGFnc19mb3JfdmFsaWRfZ2NjLCQoTUFSQ0hfQVJNMzJfQTIwTkVPTiksNCw3LC1t
Y3B1PWNvcnRleC1hNyAtbXR1bmU9Y29ydGV4LWE3IC1tZnB1PXZmcHY0LWQxNiAtbWZwdT1uZW9u
LXZmcHY0IC1mdW5zYWZlLW1hdGgtb3B0aW1pemF0aW9ucykpCisKKyMgU2V0IEdDQyBmbGFncyBm
b3IgTUFSQ0hfQVJNMzJfQ09SVEVYQTMyLiBHQ0Mgc3VwcG9ydHMgLW1jcHU9Y29ydGV4LWEzMiBm
cm9tIDYuMQorJChldmFsICQoY2FsbCBzZXRfZmxhZ3NfZm9yX3ZhbGlkX2djYywkKE1BUkNIX0FS
TTMyX0NPUlRFWEEzMiksNiwxLC1tY3B1PWNvcnRleC1hMzIgLW10dW5lPWNvcnRleC1hMzIpKQor
CisjIFNldCBHQ0MgZmxhZ3MgZm9yIE1BUkNIX0FSTTMyX0NPUlRFWEEzNS4gR0NDIHN1cHBvcnRz
IC1tY3B1PWNvcnRleC1hMzUgZnJvbSA2LjEKKyQoZXZhbCAkKGNhbGwgc2V0X2ZsYWdzX2Zvcl92
YWxpZF9nY2MsJChNQVJDSF9BUk0zMl9DT1JURVhBMzUpLDYsMSwtbWNwdT1jb3J0ZXgtYTM1IC1t
dHVuZT1jb3J0ZXgtYTM1KSkKKwogJChldmFsICQoY2FsbCBhZGRsaWIsbGliYXJtbWF0aCkpCiBM
SUJBUk1NQVRIX1NSQ1MtJChBUkNIX0FSTV8zMikgKz0gJChVS19CQVNFKS9hcmNoL2FybS9hcm0v
ZGl2c2kzLlMKIExJQkFSTU1BVEhfU1JDUy0kKEFSQ0hfQVJNXzMyKSArPSAkKFVLX0JBU0UpL2Fy
Y2gvYXJtL2FybS9sZGl2bW9kLlMKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3Mt
ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9t
YWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 15:38:29 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 15:38:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f86D5-0005OZ-RZ; Mon, 16 Apr 2018 15:38:27 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=wiv1=hf=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f86D3-0005OS-PO
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 15:38:25 +0000
X-Inumbo-ID: 759ed729-418c-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 759ed729-418c-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 15:40:16 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 718BA1529;
 Mon, 16 Apr 2018 08:38:23 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A188B3F59D;
 Mon, 16 Apr 2018 08:38:21 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-3-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <2d8fcc0a-9d2e-4814-bcbb-d4b55b65838f@arm.com>
Date: Mon, 16 Apr 2018 16:38:20 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-3-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 02/43] arm32: remove the arm32
 specific code file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMTYvMDQvMTggMDc6MzEsIEh1YW5nIFNoaWppZSB3cm90ZToKPiBUaGlz
IHBhdGNoIHJlbW92ZXMgdGhlIGFybTMyIHNwZWNpZmljIGNvZGUgZmlsZToKPiAgICAgIGFybTMy
LlMsIGh5cGVyY2FsbHMzMi5TLCBtaW5pb3MtYXJtMzIubGRzCgpIb3cgYWJvdXQgdGhlIHJlc3Qg
b2YgdGhlIGNvZGU/IEkgc2VlIHF1aXRlIGEgZmV3IHBhdGNoIHdpdGggInJlbW92ZSAKYXJtMzIg
Y29kZSIgaW4gdGhlIGNvbW1pdCBtZXNzYWdlLgoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoK
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 15:44:22 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 15:44:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f86In-00062w-BW; Mon, 16 Apr 2018 15:44:21 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=wiv1=hf=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f86Il-00062p-Gy
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 15:44:19 +0000
X-Inumbo-ID: e450394d-418c-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id e450394d-418c-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 17:43:21 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id B447C1596;
 Mon, 16 Apr 2018 08:44:17 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id DEC633F59D;
 Mon, 16 Apr 2018 08:44:15 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-6-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <bde31a83-4612-797e-a3d5-7a1090b069a1@arm.com>
Date: Mon, 16 Apr 2018 16:44:14 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-6-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 05/43] arm: create a new header for
 the page macros
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxNi8wNC8xOCAwNzozMSwgSHVhbmcgU2hpamllIHdyb3RlOgo+IENyZWF0ZSBhIG5l
dyBoZWFkZXIgdG8gc3RvcmUgdGhlIHBhZ2UgbWFjcm9zLgo+IAo+IFRoaXMgaGVhZGVyIHdpbGwg
YmUgdXNlZCBpbiB0aGUgYXNzZW1ibHkgY29kZSBhbmQgQyBjb2RlLgo+IAo+IFNpZ25lZC1vZmYt
Ynk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Cj4gLS0tCj4gICBpbmNsdWRl
L2FybS9hcmNoX2xpbWl0cy5oIHwgMiArLQo+ICAgaW5jbHVkZS9hcm0vYXJjaF9tbS5oICAgICB8
IDQgKy0tLQo+ICAgaW5jbHVkZS9hcm0vcGFnZV9kZWYuaCAgICB8IDggKysrKysrKysKPiAgIDMg
ZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKPiAgIGNyZWF0
ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2FybS9wYWdlX2RlZi5oCj4gCj4gZGlmZiAtLWdpdCBhL2lu
Y2x1ZGUvYXJtL2FyY2hfbGltaXRzLmggYi9pbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oCj4gaW5k
ZXggYmFlOTllMS4uMjNhNDkxZiAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2FybS9hcmNoX2xpbWl0
cy5oCj4gKysrIGIvaW5jbHVkZS9hcm0vYXJjaF9saW1pdHMuaAo+IEBAIC0xLDcgKzEsNyBAQAo+
ICAgI2lmbmRlZiBfX0FSQ0hfTElNSVRTX0hfXwo+ICAgI2RlZmluZSBfX0FSQ0hfTElNSVRTX0hf
Xwo+ICAgCj4gLSNpbmNsdWRlIDxtbS5oPgo+ICsjaW5jbHVkZSA8cGFnZV9kZWYuaD4KPiAgIAo+
ICAgI2RlZmluZSBfX1NUQUNLX1NJWkVfUEFHRV9PUkRFUiAgMgo+ICAgI2RlZmluZSBfX1NUQUNL
X1NJWkUgKDQgKiBQQUdFX1NJWkUpCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJtL2FyY2hfbW0u
aCBiL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAo+IGluZGV4IDk4Yjg2YWYuLmM4OWQxYWEgMTAwNjQ0
Cj4gLS0tIGEvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4gKysrIGIvaW5jbHVkZS9hcm0vYXJjaF9t
bS5oCj4gQEAgLTgsOSArOCw3IEBAIGV4dGVybiBpbnQgX2Jvb3Rfc3RhY2tbXTsKPiAgIGV4dGVy
biBpbnQgX2Jvb3Rfc3RhY2tfZW5kW107Cj4gICBleHRlcm4gdWludDMyX3QgcGh5c2ljYWxfYWRk
cmVzc19vZmZzZXQ7CS8qIEFkZCB0aGlzIHRvIGEgdmlydHVhbCBhZGRyZXNzIHRvIGdldCB0aGUg
cGh5c2ljYWwgYWRkcmVzcyAod3JhcHMgYXQgNEdCKSAqLwo+ICAgCj4gLSNkZWZpbmUgUEFHRV9T
SElGVCAgICAgICAgMTIKPiAtI2RlZmluZSBQQUdFX1NJWkUgICAgICAgICgxIDw8IFBBR0VfU0hJ
RlQpCj4gLSNkZWZpbmUgUEFHRV9NQVNLICAgICAgICh+KFBBR0VfU0laRS0xKSkKPiArI2luY2x1
ZGUgPHBhZ2VfZGVmLmg+Cj4gICAKPiAgICNkZWZpbmUgREVGX1BBR0VfUFJPVCAgICAgMAo+ICAg
Cj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJtL3BhZ2VfZGVmLmggYi9pbmNsdWRlL2FybS9wYWdl
X2RlZi5oCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi4zNTQ2ODBjCj4g
LS0tIC9kZXYvbnVsbAo+ICsrKyBiL2luY2x1ZGUvYXJtL3BhZ2VfZGVmLmgKPiBAQCAtMCwwICsx
LDggQEAKPiArI2lmbmRlZiBfQVJNX1BBR0VfREVGX0hfCj4gKyNkZWZpbmUgX0FSTV9QQUdFX0RF
Rl9IXwo+ICsKPiArI2RlZmluZSBQQUdFX1NISUZUICAgICAgICAxMgo+ICsjZGVmaW5lIFBBR0Vf
U0laRSAgICAgICAgICgxIDw8IFBBR0VfU0hJRlQpCgpTaG91bGQgdGhlcmUgYmUgYW55IFVMIHNv
bWV3aGVyZSBoZXJlPyBPdGhlcndpc2UgdGhlIGNvbnZlcnNpb24gbWlnaHQgYmUgCndyb25nIGJl
bG93LgoKPiArI2RlZmluZSBQQUdFX01BU0sgICAgICAgICAofihQQUdFX1NJWkUtMSkpCj4gKwo+
ICsjZW5kaWYKPiAKCkNoZWVycywKCi0tIApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QK
TWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVj
dC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 16:44:31 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 16:44:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f87Ez-0002sG-3v; Mon, 16 Apr 2018 16:44:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=wiv1=hf=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f87Ey-0002sB-AY
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 16:44:28 +0000
X-Inumbo-ID: aee17ce9-4195-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id aee17ce9-4195-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 16:46:17 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 03A1F1529;
 Mon, 16 Apr 2018 09:44:25 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id F31D53F25D;
 Mon, 16 Apr 2018 09:44:22 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-7-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <12f7828f-882b-0b56-7b95-96808c055f91@arm.com>
Date: Mon, 16 Apr 2018 17:44:21 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-7-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 06/43] arm64: add the boot code
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpKdXN0IENDaW5nIE1hcmsuIEkgd2lsbCByZXZpZXcgc2VwYXJhdGVseS4KCk1hcmssIGNh
biB5b3UgZ2l2ZSBhIGxvb2sgYXQgdGhlIGJvb3QgY29kZT8KCkNoZWVycywKCk9uIDE2LzA0LzE4
IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gVGhpcyBwYXRjaCBhZGRzIHRoZSBib290IGNv
ZGUgZm9yIGFybTY0Ogo+ICAgICAgMC4pIGFkZCB0aGUgaGVhZGVyIHdoaWNoIGNvbnRhaW5zIGFs
bCB0aGUgbWFjcm9zIHRvIHNldHVwIHRoZSBwYWdlIHRhYmxlCj4gICAgICAxLikgaW5pdCB0aGUg
TUFJUi9UQ1IgZm9yIDQ4IGJpdCB2aXJ0dWFsIGFkZHJlc3MuCj4gICAgICAyLikgc2V0dXAgdGhl
IHBhZ2UgdGFibGUgZm9yIHRoZSBjb2RlIHNlY3Rpb24uCj4gICAgICAzLikgZW5hYmxlIHRoZSBN
TVUKPiAKPiBUaGlzIHBhdGNoIHJlZmVycyB0byBDaGVuIEJhb3ppJ3MgcGF0Y2g6Cj4gICAgICAg
IkluaXRpYWwgY29kZXMgZm9yIGFybTY0Igo+IAo+IFNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWpp
ZSA8c2hpamllLmh1YW5nQGFybS5jb20+Cj4gLS0tCj4gICBhcmNoL2FybS9hcm02NC9hcm02NC5T
ICAgICAgICB8IDI4NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysK
PiAgIGFyY2gvYXJtL2FybTY0L2FzbS5oICAgICAgICAgIHwgIDE4ICsrKwo+ICAgaW5jbHVkZS9h
cm0vYXJtNjQvcGFnZXRhYmxlLmggfCAxMDggKysrKysrKysrKysrKysrKwo+ICAgMyBmaWxlcyBj
aGFuZ2VkLCA0MTIgaW5zZXJ0aW9ucygrKQo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJt
L2FybTY0L2FybTY0LlMKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm02NC9hc20u
aAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvYXJtL2FybTY0L3BhZ2V0YWJsZS5oCj4g
Cj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0L2FybTY0LlMgYi9hcmNoL2FybS9hcm02NC9h
cm02NC5TCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi5iNDU0Y2M2Cj4g
LS0tIC9kZXYvbnVsbAo+ICsrKyBiL2FyY2gvYXJtL2FybTY0L2FybTY0LlMKPiBAQCAtMCwwICsx
LDI4NiBAQAo+ICsjaW5jbHVkZSAiYXNtLmgiCj4gKyNpbmNsdWRlIDxhcmNoX2xpbWl0cy5oPgo+
ICsjaW5jbHVkZSA8YXJtNjQvcGFnZXRhYmxlLmg+Cj4gKyNpbmNsdWRlIDx4ZW4veGVuLmg+Cj4g
Kwo+ICsvKiBUaGlzIG1hY3JvIHdpbGwgdXNlIHRoZSB4MC94MS94Mi94MTYgKi8KPiArI2RlZmlu
ZSBQUklOVChfcykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4gKyAgICBhZHIgICAg
IHgyLCA5N2Y7ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+ICsgICAgYWRyICAgICB4MSwg
OThmOyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiArICAgIHN1YiAgICAgeDEsIHgxLCB4
MjsgICAgICAgICAgICAgICAgICAgICAgICBcCj4gKyAgICBtb3YgICAgIHgwLCAjQ09OU09MRUlP
X3dyaXRlOyAgICAgICAgICAgICAgXAo+ICsgICAgbW92ICAgICB4MTYsICNfX0hZUEVSVklTT1Jf
Y29uc29sZV9pbzsgICAgIFwKPiArICAgIGh2YyAgICAgI1hFTl9IWVBFUkNBTExfVEFHOyAgICAg
ICAgICAgICAgICBcCj4gKyAgICBiICAgICAgIDk5ZjsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAo+ICs5NzogLmFzY2l6IF9zOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKPiArOTg6IDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4g
KyAgICAuYWxpZ24gIDI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+ICs5OTog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiArCj4gKyAgICAu
ZGF0YQo+ICsgICAgLmdsb2JsIF9ib290X3N0YWNrCj4gKyAgICAuZ2xvYmwgYm9vdF9sMF9wZ3Rh
YmxlCj4gKyAgICAuZ2xvYmwgYm9vdF9sMV9wZ3RhYmxlCj4gKyAgICAuZ2xvYmwgYm9vdF9sMl9w
Z3RhYmxlCj4gKyAgICAuZ2xvYmwgaWRtYXBfbDBfcGd0YWJsZQo+ICsgICAgLmdsb2JsIGlkbWFw
X2wxX3BndGFibGUKPiArCj4gKyAgICAuYWxpZ24gMTIKPiArYm9vdF9sMF9wZ3RhYmxlOgo+ICsg
ICAgLmZpbGwgIFBBR0VfU0laRSwxLDAKPiArYm9vdF9sMV9wZ3RhYmxlOgo+ICsgICAgLmZpbGwg
IFBBR0VfU0laRSwxLDAKPiArYm9vdF9sMl9wZ3RhYmxlOgo+ICsgICAgLmZpbGwgIFBBR0VfU0la
RSwxLDAKPiAraWRtYXBfbDBfcGd0YWJsZToKPiArICAgIC5maWxsICBQQUdFX1NJWkUsMSwwCj4g
K2lkbWFwX2wxX3BndGFibGU6Cj4gKyAgICAuZmlsbCAgUEFHRV9TSVpFLDEsMAo+ICsKPiArICAg
IC5hbGlnbiAxMgo+ICtfYm9vdF9zdGFjazoKPiArICAgIC5maWxsICBfX1NUQUNLX1NJWkUsMSww
Cj4gK3N0YWNrX2VuZDoKPiArCj4gKy8qCj4gKyAqIEtlcm5lbCBzdGFydHVwIGVudHJ5IHBvaW50
Lgo+ICsgKgo+ICsgKiBQbGVhc2UgcmVmZXIgdG8gbGludXgga2VybmVsIGZpbGUgRG9jdW1lbnRh
dGlvbi9hcm02NC9ib290aW5nLnR4dAo+ICsgKiBmb3IgdGhlIGhlYWRlciBmb3JtYXQuCj4gKyAq
Lwo+ICsgICAgLnRleHQKPiArCj4gKyAgICBiICAgICAgIF9zdGFydCAgICAgICAgICAgICAgICAg
IC8qIGJyYW5jaCB0byBrZXJuZWwgc3RhcnQsIG1hZ2ljICovCj4gKyAgICAubG9uZyAgIDAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIHJlc2VydmVkICovCj4gKyAgICAucXVhZCAgIDB4MCAgICAg
ICAgICAgICAgICAgICAgIC8qIEltYWdlIGxvYWQgb2Zmc2V0IGZyb20gc3RhcnQgb2YgUkFNICov
Cj4gKyAgICAucXVhZCAgIF9lbmQgLSBfc3RhcnQgICAgICAgICAgIC8qIEVmZmVjdGl2ZSBJbWFn
ZSBzaXplICovCj4gKyAgICAucXVhZCAgIDIgICAgICAgICAgICAgICAgICAgICAgIC8qIGtlcm5l
bCBmbGFnczogTEUsIDRLIHBhZ2Ugc2l6ZSAqLwo+ICsgICAgLnF1YWQgICAwICAgICAgICAgICAg
ICAgICAgICAgICAvKiByZXNlcnZlZCAqLwo+ICsgICAgLnF1YWQgICAwICAgICAgICAgICAgICAg
ICAgICAgICAvKiByZXNlcnZlZCAqLwo+ICsgICAgLnF1YWQgICAwICAgICAgICAgICAgICAgICAg
ICAgICAvKiByZXNlcnZlZCAqLwo+ICsgICAgLmJ5dGUgICAweDQxICAgICAgICAgICAgICAgICAg
ICAvKiBNYWdpYyBudW1iZXIsICJBUk1ceDY0IiAqLwo+ICsgICAgLmJ5dGUgICAweDUyCj4gKyAg
ICAuYnl0ZSAgIDB4NGQKPiArICAgIC5ieXRlICAgMHg2NAo+ICsgICAgLmxvbmcgICAwICAgICAg
ICAgICAgICAgICAgICAgICAvKiByZXNlcnZlZCAqLwo+ICsKPiArLyoKPiArICogUHJpbWFyeSBD
UFUgZ2VuZXJhbC1wdXJwb3NlIHJlZ2lzdGVyIHNldHRpbmdzCj4gKyAqIHgwID0gcGh5c2ljYWwg
YWRkcmVzcyBvZiBkZXZpY2UgdHJlZSBibG9iIChkdGIpIGluIHN5c3RlbSBSQU0uCj4gKyAqIHgx
ID0gMCAocmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2UpCj4gKyAqIHgyID0gMCAocmVzZXJ2ZWQgZm9y
IGZ1dHVyZSB1c2UpCj4gKyAqIHgzID0gMCAocmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2UpCj4gKyAq
Cj4gKyAqIFRoZSByZWdpc3RlcnMgdXNlZCBieSBfc3RhcnQ6Cj4gKyAqIHgyMCAtIEZEVCBwb2lu
dGVyCj4gKyAqIHgyMiAtIG9mZnNldCBiZXR3ZWVuIFBBIGFuZCBWQQo+ICsgKi8KPiArRU5UUlko
X3N0YXJ0KQo+ICsgICAgLyogU2F2ZSB0aGUgRkRUIHBvaW50ZXIgKi8KPiArICAgIG1vdiAgICAg
eDIwLCB4MAo+ICsKPiArICAgIC8qIENhbGN1bGF0ZSB3aGVyZSB3ZSBhcmUgKi8KPiArICAgIGJs
ICAgICAgX2NhbGNfb2Zmc2V0Cj4gKwo+ICsgICAgUFJJTlQoIi0gTWluaS1PUyBib290aW5nIC1c
biIpCj4gKwo+ICsgICAgUFJJTlQoIi0gU2V0dXAgQ1BVIC1cbiIpCj4gKyAgICAvKiBTZXR1cCBD
UFUgZm9yIHR1cm5pbmcgb24gdGhlIE1NVS4gKi8KPiArICAgIGJsICAgICAgX3NldHVwX2NwdQo+
ICsKPiArICAgIFBSSU5UKCItIFNldHVwIGJvb3RpbmcgcGFnZXRhYmxlIC1cbiIpCj4gKyAgICAv
KiBTZXR1cCB0aGUgaW5pdGlhbCBwYWdlIHRhYmxlLiAqLwo+ICsgICAgYmwgICAgICBfc2V0dXBf
aW5pdGlhbF9wZ3RhYmxlCj4gKyAgICBtb3YgICAgIHgxOSwgeDAKPiArCj4gKyAgICAvKiBTZXR1
cCB0aGUgaWRlbnRpdHkgbWFwcGluZyAqLwo+ICsgICAgYmwgICAgICBfc2V0dXBfaWRtYXBfcGd0
YWJsZQo+ICsKPiArICAgIC8qIExvYWQgVFRCUnggKi8KPiArICAgIG1zciAgICAgdHRicjFfZWwx
LCB4MTkKPiArICAgIG1zciAgICAgdHRicjBfZWwxLCB4MAo+ICsgICAgaXNiCj4gKwo+ICsgICAg
LyogVHVybmluZyBvbiBNTVUgKi8KPiArICAgIHRsYmkgICAgdm1hbGxlMQo+ICsgICAgZHNiICAg
ICBuc2gKPiArICAgIGlzYgo+ICsgICAgbGRyICAgICB4MSwgPShTQ1RMUl9NIHwgU0NUTFJfQyB8
IFNDVExSX0kpCj4gKyAgICBtc3IgICAgIHNjdGxyX2VsMSwgeDEKPiArICAgIGlzYgo+ICsKPiAr
ICAgIFBSSU5UKCItIE1NVSBvbiAtXG4iKQo+ICsgICAgbGRyICAgICB4MCwgPW1tdV9vbgo+ICsg
ICAgYnIgICAgICB4MAo+ICsKPiArbW11X29uOgo+ICsgICAgLyogRG8gbm90IHVzZSB0aGUgVFRC
UjBfRUwxIGFueSBtb3JlICovCj4gKyAgICBtcnMgICAgIHgxOSwgdGNyX2VsMQo+ICsgICAgYWRk
ICAgICB4MTksIHgxOSwgVENSX0VQRDAKPiArICAgIG1zciAgICAgdGNyX2VsMSwgeDE5Cj4gKwo+
ICsgICAgLyogU2V0dXAgc3RhY2sgKi8KPiArICAgIFBSSU5UKCItIFNldHVwIHN0YWNrIC1cbiIp
Cj4gKyAgICBsZHIgICAgIHgxLCA9c3RhY2tfZW5kCj4gKyAgICBtb3YgICAgIHNwLCB4MQo+ICsK
PiArICAgIFBSSU5UKCItIEp1bXBpbmcgdG8gQyBlbnRyeSAtXG4iKQo+ICsgICAgbW92ICAgICB4
MCwgeDIwICAgICAgICAgICAgICAgICAgLyogeDAgPC0gZGV2aWNlIHRyZWUgKHBoeXNpY2FsIGFk
ZHJlc3MpICovCj4gKyAgICBtb3YgICAgIHgxLCB4MjIgICAgICAgICAgICAgICAgICAvKiB4MSA8
LSBwaHlzX29mZnNldCAqLwo+ICsKPiArICAgIGIgICAgICBhcmNoX2luaXQKPiArRU5EUFJPQyhf
c3RhcnQpCj4gKwo+ICsvKgo+ICsgKiBHZXQgdGhlIHBoeXMtb2Zmc2V0LCBhbmQgc2F2ZSBpdCBp
biB4MjIKPiArICovCj4gK19jYWxjX29mZnNldDoKPiArICAgIGxkciAgICAgeDIyLCA9X3N0YXJ0
ICAgICAgICAgICAgIC8qIHgwIDo9IHZhZGRyKF9zdGFydCkgICovCj4gKyAgICBhZHIgICAgIHgy
MSwgX3N0YXJ0ICAgICAgICAgICAgICAvKiB4MjEgOj0gcGFkZHIoX3N0YXJ0KSAqLwo+ICsgICAg
c3ViICAgICB4MjIsIHgyMSwgeDIyICAgICAgICAgICAgLyogeDIyIDo9IHBoeXMtb2Zmc2V0IChw
YWRkciAtIHZhZGRyKSAqLwo+ICsgICAgcmV0Cj4gKwo+ICsvKgo+ICsgKiBTZXR1cCB0aGUgbWVt
b3J5IHJlZ2lvbiBhdHRyaWJ1dGU7Cj4gKyAqIFNldHVwIHRoZSBUQ1IuCj4gKyAqLwo+ICtfc2V0
dXBfY3B1Ogo+ICsgICAgLyoKPiArICAgICAqIFNldHVwIG1lbW9yeSBhdHRyaWJ1dGUgdHlwZSB0
YWJsZXMKPiArICAgICAqCj4gKyAgICAgKiBNZW1vcnkgcmVnaW9uIGF0dHJpYnV0ZXMgZm9yIExQ
QUU6Cj4gKyAgICAgKgo+ICsgICAgICogICBuID0gQXR0ckluZHhbMjowXQo+ICsgICAgICogICAg
ICAgICAgICAgICAgICAgICAgbiAgICAgICBNQUlSCj4gKyAgICAgKiAgIERFVklDRV9uR25SbkUg
ICAgICAwMDAgICAgIDAwMDAwMDAwICgweDAwKQo+ICsgICAgICogICBERVZJQ0VfbkduUkUgICAg
ICAgMDAxICAgICAwMDAwMDEwMCAoMHgwNCkKPiArICAgICAqICAgREVWSUNFX0dSRSAgICAgICAg
IDAxMCAgICAgMDAwMDExMDAgKDB4MGMpCj4gKyAgICAgKiAgIE5PUk1BTF9OQyAgICAgICAgICAw
MTEgICAgIDAxMDAwMTAwICgweDQ0KQo+ICsgICAgICogICBOT1JNQUwgICAgICAgICAgICAgMTAw
ICAgICAxMTExMTExMSAoMHhmZikKPiArICAgICAqLwo+ICsgICAgbGRyICAgICB4MCwgPShTRVRf
TUFJUigweDAwLCBNRU1fREVWSUNFX25HblJuRSkgfCBcCj4gKyAgICAgICAgICAgICAgICAgIFNF
VF9NQUlSKDB4MDQsIE1FTV9ERVZJQ0VfbkduUkUpICB8IFwKPiArICAgICAgICAgICAgICAgICAg
U0VUX01BSVIoMHgwYywgTUVNX0RFVklDRV9HUkUpICAgIHwgXAo+ICsgICAgICAgICAgICAgICAg
ICBTRVRfTUFJUigweDQ0LCBNRU1fTk9STUFMX05DKSAgICAgfCBcCj4gKyAgICAgICAgICAgICAg
ICAgIFNFVF9NQUlSKDB4ZmYsIE1FTV9OT1JNQUwpKQo+ICsgICAgbXNyICAgICBtYWlyX2VsMSwg
eDAKPiArCj4gKyAgICAvKgo+ICsgICAgICogU2V0dXAgdHJhbnNsYXRpb24gY29udHJvbCByZWdp
c3RlciAoVENSKQo+ICsgICAgICovCj4gKyAgICBsZHIgICAgIHgwLCA9KFRDUl9UeFNaKFZBX0JJ
VFMpIHwgVENSX0FTSUQxNiB8IFRDUl9URzFfNEsgfCBcCj4gKyAgICAgICAgICAgICAgICAgIFRD
Ul9JUkdOX1dCV0EgfCBUQ1JfT1JHTl9XQldBIHwgVENSX1NIQVJFRCB8IFRDUl9JUFNfNDhCSVQp
Cj4gKyAgICBtc3IgICAgIHRjcl9lbDEsIHgwCj4gKwo+ICsgICAgcmV0Cj4gKwo+ICsvKgo+ICsg
KiBTZXR1cCB0aGUgcGFnZSB0YWJsZSBtYXBwaW5nIGZvciBAYWRkciBhdCBAbGV2ZWwgd2l0aCBA
cHJvdC4KPiArICoKPiArICogTm90ZTogeDIyIHN0b3JlcyB0aGUgb2Zmc2V0IGJldHdlZW4gdmly
dHVhbCBhZGRyZXNzIGFuZCBwaHlzaWNhbCBhZGRyZXNzLgo+ICsgKi8KPiArLm1hY3JvIHNldF9w
YWdlX3RhYmxlLCBhZGRyLCBsZXZlbCwgcHJvdAo+ICsgICAgLyogRmluZCB0aGUgdGFibGUgaW5k
ZXggaW4gQGxldmVsLCBzYXZlIGl0IGluIHgzICAqLwo+ICsuaWYgXGxldmVsID09IDAKPiArICAg
IGxzciAgICAgeDMsIFxhZGRyLCAjTDBfU0hJRlQKPiArICAgIGFkciAgICAgeDgsIGJvb3RfbDFf
cGd0YWJsZQo+ICsgICAgYWRyICAgICB4MTEsIGJvb3RfbDBfcGd0YWJsZQo+ICsuZW5kaWYKPiAr
Cj4gKy5pZiBcbGV2ZWwgPT0gMQo+ICsgICAgbHNyICAgICB4MywgXGFkZHIsICNMMV9TSElGVAo+
ICsgICAgYWRyICAgICB4OCwgYm9vdF9sMl9wZ3RhYmxlCj4gKyAgICBhZHIgICAgIHgxMSwgYm9v
dF9sMV9wZ3RhYmxlCj4gKy5lbmRpZgo+ICsKPiArLmlmIFxsZXZlbCA9PSAyCj4gKyAgICBsc3Ig
ICAgIHgzLCBcYWRkciwgI0wyX1NISUZUCj4gKyAgICBhZHIgICAgIHgxMSwgYm9vdF9sMl9wZ3Rh
YmxlCj4gKyAgICAvKiBHZXQgdGhlIHBoeXNpY2FsIGFkZHJlc3MsIHRoZSBAYWRkciBzaG91bGQg
YmUgMk0gYWxpZ25lZC4gKi8KPiArICAgIGFkZCAgICAgeDgsIFxhZGRyLCB4MjIKPiArLmVuZGlm
Cj4gKwo+ICsgICAgYW5kICAgICB4MywgeDMsICNMbl9BRERSX01BU0sKPiArCj4gKyAgICAvKiBC
dWlsZCB0aGUgcGFnZSB0YWJsZSBlbnRyeSAqLwo+ICsgICAgbGRyICAgICB4NywgPSBccHJvdAo+
ICsgICAgbHNyICAgICB4OSwgeDgsICNQQUdFX1NISUZUCj4gKyAgICBvcnIgICAgIHg3LCB4Nywg
eDksIGxzbCAjUEFHRV9TSElGVAo+ICsKPiArICAgIC8qIFN0b3JlIGVudHJ5ICovCj4gKyAgICBz
dHIgICAgIHg3LCBbeDExLCB4MywgbHNsICMzXQo+ICsuZW5kbQo+ICsKPiArLyoKPiArICogU2V0
dXAgdGhlIG1hcHBpbmcgZm9yIGNvZGUgc2VjdGlvbgo+ICsgKgo+ICsgKiA9PiBudWxsCj4gKyAq
IDw9IHgwIC0+IGZvciBUVEJSMV9FTDEKPiArICovCj4gK19zZXR1cF9pbml0aWFsX3BndGFibGU6
Cj4gKyAgICAvKiBTdGFydCB0byBtYXAgdGhlIGNvZGUgKi8KPiArICAgIGxkciAgICAgeDAsID1f
dGV4dCAgICAgICAgICAgICAgICAgLyogeDAgOj0gdmFkZHIoX3RleHQpICAgICAgICAgICAgKi8K
PiArICAgIGxkciAgICAgeDEsID1fZW5kICAgICAgICAgICAgICAgICAgLyogeDEgOj0gdmFkZHIo
X2VuZCkgICAgICAgICAgICAgKi8KPiArCj4gKyAgICBzZXRfcGFnZV90YWJsZSB4MCwgMCwgUFRf
UFQKPiArICAgIHNldF9wYWdlX3RhYmxlIHgwLCAxLCBQVF9QVAo+ICsxOgo+ICsgICAgc2V0X3Bh
Z2VfdGFibGUgeDAsIDIsIFBUX01FTQo+ICsKPiArICAgIGFkZCAgICAgeDAsIHgwLCBMMl9TSVpF
Cj4gKyAgICBjbXAgICAgIHgxLCB4MAo+ICsgICAgYi5ndCAgICAxYgo+ICsKPiArICAgIGFkciAg
ICAgeDAsIGJvb3RfbDBfcGd0YWJsZQo+ICsgICAgZHNiICAgICBzeQo+ICsgICAgcmV0Cj4gKwo+
ICsvKgo+ICsgKiBTZXR1cCB0aGUgcGFnZSB0YWJsZSBtYXBwaW5nIGZvciBAYWRkciBhdCBAbGV2
ZWwgd2l0aCBAcHJvdC4KPiArICoKPiArICogT25seSB1c2VkIGZvciBpZGVudGl0eSBtYXBwaW5n
Lgo+ICsgKi8KPiArLm1hY3JvIHNldF9pZGVudF9wYWdlX3RhYmxlLCBhZGRyLCBsZXZlbCwgcHJv
dAo+ICsgICAgLyogRmluZCB0aGUgdGFibGUgaW5kZXggaW4gQGxldmVsLCBzYXZlIGl0IGluIHgz
ICAqLwo+ICsuaWYgXGxldmVsID09IDAKPiArICAgIGxzciAgICAgeDMsIFxhZGRyLCAjTDBfU0hJ
RlQKPiArICAgIGFkciAgICAgeDgsIGlkbWFwX2wxX3BndGFibGUKPiArICAgIGFkciAgICAgeDEx
LCBpZG1hcF9sMF9wZ3RhYmxlCj4gKy5lbmRpZgo+ICsKPiArLmlmIFxsZXZlbCA9PSAxCj4gKyAg
ICBsc3IgICAgIHgzLCBcYWRkciwgI0wxX1NISUZUCj4gKyAgICBtb3YgICAgIHg4LCBcYWRkcgo+
ICsgICAgYWRyICAgICB4MTEsIGlkbWFwX2wxX3BndGFibGUKPiArLmVuZGlmCj4gKwo+ICsgICAg
YW5kICAgICB4MywgeDMsICNMbl9BRERSX01BU0sKPiArCj4gKyAgICAvKiBCdWlsZCB0aGUgcGFn
ZSB0YWJsZSBlbnRyeSAqLwo+ICsgICAgbGRyICAgICB4NywgPSBccHJvdAo+ICsgICAgbHNyICAg
ICB4OSwgeDgsICNQQUdFX1NISUZUCj4gKyAgICBvcnIgICAgIHg3LCB4NywgeDksIGxzbCAjUEFH
RV9TSElGVAo+ICsKPiArICAgIC8qIFN0b3JlIGVudHJ5ICovCj4gKyAgICBzdHIgICAgIHg3LCBb
eDExLCB4MywgbHNsICMzXQo+ICsuZW5kbQo+ICsKPiArLyoKPiArICogU2V0dXAgdGhlIHBhZ2Ug
dGFibGUgZm9yIFRUQlIwX0VMMToKPiArICogICBNYXBwaW5nIHRoZSBwYWdlIHRhYmxlIGZvciB0
aGUgY29kZSBzZWN0aW9uLgo+ICsgKiAgIFdlIHVzZSA0OGJpdCBhZGRyZXNzLCBhbmQganVzdCB1
c2UgbGV2ZWwgMC8xCj4gKyAqICAgZm9yIHRoZSBtYXBwaW5nICh3ZSBkbyBub3QgdXNlIGxldmVs
IDIgYW5kIGxldmVsIDMpLgo+ICsgKgo+ICsgKiA9PiBub25lCj4gKyAqIDw9IHgwIDogc2F2ZSB0
aGUgcGFnZSB0YWJsZSBwb2ludGVyIGZvciBUVEJSMF9FTDEuCj4gKyAqLwo+ICtfc2V0dXBfaWRt
YXBfcGd0YWJsZToKPiArICAgIC8qIENyZWF0ZSB0aGUgVkEgPSBQQSBtYXAgKi8KPiArICAgIGFk
ciAgICAgeDAsIF90ZXh0Cj4gKwo+ICsgICAgc2V0X2lkZW50X3BhZ2VfdGFibGUgeDAsIDAsIFBU
X1BUCj4gKyAgICBzZXRfaWRlbnRfcGFnZV90YWJsZSB4MCwgMSwgUFRfTUVNCj4gKwo+ICsgICAg
YWRyICAgICB4MCwgaWRtYXBfbDBfcGd0YWJsZQo+ICsgICAgZHNiICAgICBzeQo+ICsgICAgcmV0
Cj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0L2FzbS5oIGIvYXJjaC9hcm0vYXJtNjQvYXNt
LmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLjNhNDk4YzQKPiAtLS0g
L2Rldi9udWxsCj4gKysrIGIvYXJjaC9hcm0vYXJtNjQvYXNtLmgKPiBAQCAtMCwwICsxLDE4IEBA
Cj4gKyNpZm5kZWYgX19BU01fSF9fCj4gKyNkZWZpbmUgX19BU01fSF9fCj4gKwo+ICsjZGVmaW5l
IEFMSUdOICAgLmFsaWduIDQKPiArCj4gKyNkZWZpbmUgRU5UUlkobmFtZSkgXAo+ICsgICAgLmds
b2JsIG5hbWU7IFwKPiArICAgIEFMSUdOOyBcCj4gKyAgICBuYW1lOgo+ICsKPiArI2RlZmluZSBF
TkQobmFtZSkgXAo+ICsgICAgLnNpemUgbmFtZSwgLi1uYW1lCj4gKwo+ICsjZGVmaW5lIEVORFBS
T0MobmFtZSkgXAo+ICsgICAgLnR5cGUgbmFtZSwgQGZ1bmN0aW9uOyBcCj4gKyAgICBFTkQobmFt
ZSkKPiArCj4gKyNlbmRpZiAvKiBfX0FTTV9IX18gKi8KPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9h
cm0vYXJtNjQvcGFnZXRhYmxlLmggYi9pbmNsdWRlL2FybS9hcm02NC9wYWdldGFibGUuaAo+IG5l
dyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uOGUyMzg0Zgo+IC0tLSAvZGV2L251
bGwKPiArKysgYi9pbmNsdWRlL2FybS9hcm02NC9wYWdldGFibGUuaAo+IEBAIC0wLDAgKzEsMTA4
IEBACj4gKyNpZm5kZWYgX19BUk02NF9QQUdFX1RBQkxFX18KPiArCj4gKyNkZWZpbmUgX19BUk02
NF9QQUdFX1RBQkxFX18KPiArCj4gKy8qIFRDUiBmbGFncyAqLwo+ICsjZGVmaW5lIFRDUl9UeFNa
KHgpICAgICAgICAgKCgoKDY0KSAtICh4KSkgPDwgMTYpIHwgKCgoNjQpIC0gKHgpKSA8PCAwKSkK
PiArI2RlZmluZSBUQ1JfSVJHTl9XQldBICAgICAgICgoKDEpIDw8IDgpIHwgKCgxKSA8PCAyNCkp
Cj4gKyNkZWZpbmUgVENSX09SR05fV0JXQSAgICAgICAoKCgxKSA8PCAxMCkgfCAoKDEpIDw8IDI2
KSkKPiArI2RlZmluZSBUQ1JfU0hBUkVEICAgICAgICAgICgoKDMpIDw8IDEyKSB8ICgoMykgPDwg
MjgpKQo+ICsjZGVmaW5lIFRDUl9BU0lEMTYgICAgICAgICAgKCgxKSA8PCAzNikKPiArI2RlZmlu
ZSBUQ1JfSVBTXzQ4QklUICAgICAgICgoNSkgPDwgMzIpCj4gKyNkZWZpbmUgVENSX1RHMV80SyAg
ICAgICAgICAoKDIpIDw8IDMwKQo+ICsjZGVmaW5lIFRDUl9FUEQwICAgICAgICAgICAgKDEgPDwg
NykKPiArCj4gKy8qIE1heCB2aXJ0dWFsIGFkZHJlc3MgKi8KPiArI2RlZmluZQlWTV9NQVhfQURE
UkVTUyAgICAgICgweGZmZmZmZmZmZmZmZmZmZmYpCj4gKwo+ICsvKiBOdW1iZXIgb2YgdmlydHVh
bCBhZGRyZXNzIGJpdHMgKi8KPiArI2RlZmluZSBWQV9CSVRTICAgICAgICAgICAgIDQ4Cj4gKwo+
ICsvKgo+ICsgKiBNZW1vcnkgdHlwZXMgYXZhaWxhYmxlLgo+ICsgKi8KPiArI2RlZmluZSBNRU1f
REVWSUNFX25HblJuRSAgICAwCj4gKyNkZWZpbmUgTUVNX0RFVklDRV9uR25SRSAgICAgMQo+ICsj
ZGVmaW5lIE1FTV9ERVZJQ0VfR1JFICAgICAgIDIKPiArI2RlZmluZSBNRU1fTk9STUFMX05DICAg
ICAgICAzCj4gKyNkZWZpbmUgTUVNX05PUk1BTCAgICAgICAgICAgNAo+ICsKPiArI2RlZmluZSBT
RVRfTUFJUihhdHRyLCBtdCkgICgoYXR0cikgPDwgKChtdCkgKiA4KSkKPiArCj4gKy8qIFNDVExS
X0VMMSAtIFN5c3RlbSBDb250cm9sIFJlZ2lzdGVyICovCj4gKyNkZWZpbmUgU0NUTFJfTSAgICAg
ICAgICAgICAoMSA8PCAwKQo+ICsjZGVmaW5lIFNDVExSX0MgICAgICAgICAgICAgKDEgPDwgMikK
PiArI2RlZmluZSBTQ1RMUl9JICAgICAgICAgICAgICgxIDw8IDEyKQo+ICsKPiArLyogTGV2ZWwg
MCB0YWJsZSwgNTEyR2lCIHBlciBlbnRyeSAqLwo+ICsjZGVmaW5lIEwwX1NISUZUICAgICAgICAg
ICAgMzkKPiArI2RlZmluZSBMMF9TSVpFICAgICAgICAgICAgICgxVUwgPDwgTDBfU0hJRlQpCj4g
KyNkZWZpbmUgTDBfSU5WQUwgICAgICAgICAgICAweDAgLyogQW4gaW52YWxpZCBhZGRyZXNzICov
Cj4gKyNkZWZpbmUgTDBfVEFCTEUgICAgICAgICAgICAweDMgLyogQSBuZXh0LWxldmVsIHRhYmxl
ICovCj4gKwo+ICsvKiBMZXZlbCAxIHRhYmxlLCAxR2lCIHBlciBlbnRyeSAqLwo+ICsjZGVmaW5l
IEwxX1NISUZUICAgICAgICAgICAgMzAKPiArI2RlZmluZSBMMV9TSVpFICAgICAgICAgICAgICgx
IDw8IEwxX1NISUZUKQo+ICsjZGVmaW5lIEwxX09GRlNFVCAgICAgICAgICAgKEwxX1NJWkUgLSAx
KQo+ICsjZGVmaW5lIEwxX0lOVkFMICAgICAgICAgICAgTDBfSU5WQUwKPiArI2RlZmluZSBMMV9C
TE9DSyAgICAgICAgICAgIDB4MQo+ICsjZGVmaW5lIEwxX1RBQkxFICAgICAgICAgICAgTDBfVEFC
TEUKPiArI2RlZmluZSBMMV9NQVNLICAgICAgICAgICAgICh+KEwxX1NJWkUtMSkpCj4gKwo+ICsv
KiBMZXZlbCAyIHRhYmxlLCAyTWlCIHBlciBlbnRyeSAqLwo+ICsjZGVmaW5lIEwyX1NISUZUICAg
ICAgICAgICAgMjEKPiArI2RlZmluZSBMMl9TSVpFICAgICAgICAgICAgICgxIDw8IEwyX1NISUZU
KQo+ICsjZGVmaW5lIEwyX09GRlNFVCAgICAgICAgICAgKEwyX1NJWkUgLSAxKQo+ICsjZGVmaW5l
IEwyX0lOVkFMICAgICAgICAgICAgTDBfSU5WQUwKPiArI2RlZmluZSBMMl9CTE9DSyAgICAgICAg
ICAgIEwxX0JMT0NLCj4gKyNkZWZpbmUgTDJfVEFCTEUgICAgICAgICAgICBMMF9UQUJMRQo+ICsj
ZGVmaW5lIEwyX01BU0sgICAgICAgICAgICAgKH4oTDJfU0laRS0xKSkKPiArCj4gKy8qIExldmVs
IDMgdGFibGUsIDRLaUIgcGVyIGVudHJ5ICovCj4gKyNkZWZpbmUgTDNfU0hJRlQgICAgICAgICAg
ICAxMgo+ICsjZGVmaW5lIEwzX1NJWkUgICAgICAgICAgICAgKDEgPDwgTDNfU0hJRlQpCj4gKyNk
ZWZpbmUgTDNfT0ZGU0VUICAgICAgICAgICAoTDNfU0laRSAtIDEpCj4gKyNkZWZpbmUgTDNfSU5W
QUwgICAgICAgICAgICAweDAKPiArI2RlZmluZSBMM19QQUdFICAgICAgICAgICAgIDB4Mwo+ICsj
ZGVmaW5lIEwzX01BU0sgICAgICAgICAgICAgKH4oTDNfU0laRS0xKSkKPiArCj4gKyNkZWZpbmUg
TG5fRU5UUklFUyAgICAgICAgICAoMSA8PCA5KQo+ICsjZGVmaW5lIExuX0FERFJfTUFTSyAgICAg
ICAgKExuX0VOVFJJRVMgLSAxKQo+ICsKPiArI2RlZmluZSBBVFRSX01BU0tfTCAgICAgICAgIDB4
ZmZmCj4gKwo+ICsjZGVmaW5lIGwwX3BndF9pZHgodmEpICAgICAgKCgodmEpID4+IEwwX1NISUZU
KSAmIExuX0FERFJfTUFTSykKPiArI2RlZmluZSBsMV9wZ3RfaWR4KHZhKSAgICAgICgoKHZhKSA+
PiBMMV9TSElGVCkgJiBMbl9BRERSX01BU0spCj4gKyNkZWZpbmUgbDJfcGd0X2lkeCh2YSkgICAg
ICAoKCh2YSkgPj4gTDJfU0hJRlQpICYgTG5fQUREUl9NQVNLKQo+ICsjZGVmaW5lIGwzX3BndF9p
ZHgodmEpICAgICAgKCgodmEpID4+IEwzX1NISUZUKSAmIExuX0FERFJfTUFTSykKPiArCj4gKy8q
Cj4gKyAqIExvd2VyIGF0dHJpYnV0ZXMgZmllbGRzIGluIFN0YWdlIDEgVk1TQXY4LUEgQmxvY2sg
YW5kIFBhZ2UgZGVzY3JpcHRvcgo+ICsgKi8KPiArI2RlZmluZSBBVFRSX25HICAgICAgICAgICAg
KDEgPDwgMTEpCj4gKyNkZWZpbmUgQVRUUl9BRiAgICAgICAgICAgICgxIDw8IDEwKQo+ICsjZGVm
aW5lIEFUVFJfU0goeCkgICAgICAgICAoKHgpIDw8IDgpCj4gKyNkZWZpbmUgQVRUUl9TSF9NQVNL
ICAgICAgIEFUVFJfU0goMykKPiArI2RlZmluZSBBVFRSX1NIX05TICAgICAgICAgMCAgICAgICAg
ICAgICAgIC8qIE5vbi1zaGFyZWFibGUgKi8KPiArI2RlZmluZSBBVFRSX1NIX09TICAgICAgICAg
MiAgICAgICAgICAgICAgIC8qIE91dGVyLXNoYXJlYWJsZSAqLwo+ICsjZGVmaW5lIEFUVFJfU0hf
SVMgICAgICAgICAzICAgICAgICAgICAgICAgLyogSW5uZXItc2hhcmVhYmxlICovCj4gKyNkZWZp
bmUgQVRUUl9BUF9SV19CSVQgICAgICgxIDw8IDcpCj4gKyNkZWZpbmUgQVRUUl9BUCh4KSAgICAg
ICAgICgoeCkgPDwgNikKPiArI2RlZmluZSBBVFRSX0FQX01BU0sgICAgICAgQVRUUl9BUCgzKQo+
ICsjZGVmaW5lIEFUVFJfQVBfUlcgICAgICAgICAoMCA8PCAxKQo+ICsjZGVmaW5lIEFUVFJfQVBf
Uk8gICAgICAgICAoMSA8PCAxKQo+ICsjZGVmaW5lIEFUVFJfQVBfVVNFUiAgICAgICAoMSA8PCAw
KQo+ICsjZGVmaW5lIEFUVFJfTlMgICAgICAgICAgICAoMSA8PCA1KQo+ICsjZGVmaW5lIEFUVFJf
SURYKHgpICAgICAgICAoKHgpIDw8IDIpCj4gKyNkZWZpbmUgQVRUUl9JRFhfTUFTSyAgICAgICg3
IDw8IDIpCj4gKwo+ICsjZGVmaW5lIE1FTV9ERUZfQVRUUiAgICAgICAoQVRUUl9BRnxBVFRSX1NI
KEFUVFJfU0hfSVMpfEFUVFJfSURYKE1FTV9OT1JNQUwpKQo+ICsjZGVmaW5lIE1FTV9OQ19BVFRS
ICAgICAgICAoQVRUUl9BRnxBVFRSX1NIKEFUVFJfU0hfSVMpfEFUVFJfSURYKE1FTV9OT1JNQUxf
TkMpKQo+ICsjZGVmaW5lIE1FTV9ERVZfQVRUUiAgICAgICAoQVRUUl9BRnxBVFRSX1NIKEFUVFJf
U0hfSVMpfEFUVFJfSURYKE1FTV9ERVZJQ0VfbkduUm5FKSkKPiArCj4gKyNkZWZpbmUgTUVNX1JP
X0FUVFIgICAgICAgIChNRU1fREVGX0FUVFJ8QVRUUl9BUChBVFRSX0FQX1JPKSkKPiArCj4gKyNk
ZWZpbmUgUFRfUFQgICAgICAgICAgICAgIChMMF9UQUJMRSkKPiArI2RlZmluZSBQVF9NRU0gICAg
ICAgICAgICAgKE1FTV9ERUZfQVRUUiB8IEwxX0JMT0NLKQo+ICsKPiArI2VuZGlmCj4gCgotLSAK
SnVsaWVuIEdyYWxsCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9q
ZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWlu
aW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 17:13:39 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 17:13:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f87hB-0005KZ-P3; Mon, 16 Apr 2018 17:13:37 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=wiv1=hf=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f87hA-0005KU-Mc
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 17:13:36 +0000
X-Inumbo-ID: 5d5d982c-4199-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 5d5d982c-4199-11e8-9728-bc764e045a96;
 Mon, 16 Apr 2018 19:12:38 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D7B891529;
 Mon, 16 Apr 2018 10:13:34 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id E3E323F25D;
 Mon, 16 Apr 2018 10:13:32 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-7-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <e371eb19-9166-086b-938d-68acb481fea4@arm.com>
Date: Mon, 16 Apr 2018 18:13:31 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-7-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 06/43] arm64: add the boot code
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxNi8wNC8xOCAwNzozMSwgSHVhbmcgU2hpamllIHdyb3RlOgo+IFRoaXMgcGF0Y2gg
YWRkcyB0aGUgYm9vdCBjb2RlIGZvciBhcm02NDoKPiAgICAgIDAuKSBhZGQgdGhlIGhlYWRlciB3
aGljaCBjb250YWlucyBhbGwgdGhlIG1hY3JvcyB0byBzZXR1cCB0aGUgcGFnZSB0YWJsZQo+ICAg
ICAgMS4pIGluaXQgdGhlIE1BSVIvVENSIGZvciA0OCBiaXQgdmlydHVhbCBhZGRyZXNzLgo+ICAg
ICAgMi4pIHNldHVwIHRoZSBwYWdlIHRhYmxlIGZvciB0aGUgY29kZSBzZWN0aW9uLgo+ICAgICAg
My4pIGVuYWJsZSB0aGUgTU1VCj4gCj4gVGhpcyBwYXRjaCByZWZlcnMgdG8gQ2hlbiBCYW96aSdz
IHBhdGNoOgo+ICAgICAgICJJbml0aWFsIGNvZGVzIGZvciBhcm02NCIKPiAKPiBTaWduZWQtb2Zm
LWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+IC0tLQo+ICAgYXJjaC9h
cm0vYXJtNjQvYXJtNjQuUyAgICAgICAgfCAyODYgKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrCj4gICBhcmNoL2FybS9hcm02NC9hc20uaCAgICAgICAgICB8ICAxOCAr
KysKPiAgIGluY2x1ZGUvYXJtL2FybTY0L3BhZ2V0YWJsZS5oIHwgMTA4ICsrKysrKysrKysrKysr
KysKPiAgIDMgZmlsZXMgY2hhbmdlZCwgNDEyIGluc2VydGlvbnMoKykKPiAgIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBhcmNoL2FybS9hcm02NC9hcm02NC5TCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJj
aC9hcm0vYXJtNjQvYXNtLmgKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2FybS9hcm02
NC9wYWdldGFibGUuaAo+IAo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9hcm02NC9hcm02NC5TIGIv
YXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAw
MDAwMC4uYjQ1NGNjNgo+IC0tLSAvZGV2L251bGwKPiArKysgYi9hcmNoL2FybS9hcm02NC9hcm02
NC5TCj4gQEAgLTAsMCArMSwyODYgQEAKPiArI2luY2x1ZGUgImFzbS5oIgo+ICsjaW5jbHVkZSA8
YXJjaF9saW1pdHMuaD4KPiArI2luY2x1ZGUgPGFybTY0L3BhZ2V0YWJsZS5oPgo+ICsjaW5jbHVk
ZSA8eGVuL3hlbi5oPgo+ICsKPiArLyogVGhpcyBtYWNybyB3aWxsIHVzZSB0aGUgeDAveDEveDIv
eDE2ICovCj4gKyNkZWZpbmUgUFJJTlQoX3MpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAo+ICsgICAgYWRyICAgICB4MiwgOTdmOyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiAr
ICAgIGFkciAgICAgeDEsIDk4ZjsgICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4gKyAgICBz
dWIgICAgIHgxLCB4MSwgeDI7ICAgICAgICAgICAgICAgICAgICAgICAgXAo+ICsgICAgbW92ICAg
ICB4MCwgI0NPTlNPTEVJT193cml0ZTsgICAgICAgICAgICAgIFwKPiArICAgIG1vdiAgICAgeDE2
LCAjX19IWVBFUlZJU09SX2NvbnNvbGVfaW87ICAgICBcCj4gKyAgICBodmMgICAgICNYRU5fSFlQ
RVJDQUxMX1RBRzsgICAgICAgICAgICAgICAgXAo+ICsgICAgYiAgICAgICA5OWY7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKCkkgc2VlIHlvdSB1c2UgdGhlIFBSSU5UKC4uLikgYmVm
b3JlIGVuYWJsaW5nIHRoZSBNTVUuIFBlciAKaW5jbHVkZS94ZW4vYXJjaC1hcm0uaDoKCiJBbGwg
bWVtb3J5IHdoaWNoIGlzIHNoYXJlZCB3aXRoIG90aGVyIGVudGl0aWVzIGluIHRoZSBzeXN0ZW0K
KGluY2x1ZGluZyB0aGUgaHlwZXJ2aXNvciBhbmQgb3RoZXIgZ3Vlc3RzKSBtdXN0IHJlc2lkZSBp
biBtZW1vcnkKd2hpY2ggaXMgbWFwcGVkIGFzIE5vcm1hbCBJbm5lciBXcml0ZS1CYWNrIE91dGVy
IFdyaXRlLUJhY2sgSW5uZXItU2hhcmVhYmxlLgpUaGlzIGFwcGxpZXMgdG86CiAgLSBoeXBlcmNh
bGwgYXJndW1lbnRzIHBhc3NlZCB2aWEgYSBwb2ludGVyIHRvIGd1ZXN0IG1lbW9yeS4KICAtIG1l
bW9yeSBzaGFyZWQgdmlhIHRoZSBncmFudCB0YWJsZSBtZWNoYW5pc20gKGluY2x1ZGluZyBQViBJ
L08KICAgIHJpbmdzIGV0YykuCiAgLSBtZW1vcnkgc2hhcmVkIHdpdGggdGhlIGh5cGVydmlzb3Ig
KHN0cnVjdCBzaGFyZWRfaW5mbywgc3RydWN0CiAgICB2Y3B1X2luZm8sIHRoZSBncmFudCB0YWJs
ZSwgZXRjKS4iCgpUaGlzIG1lYW5zIHRoYXQgeW91ciBQUklOVCBtYXkgbm90IGFsd2F5cyBhcHBl
YXIgYW5kIHByb3Zva2luZyBvdGhlciAKZnVubnkgcHJvYmxlbSBhcyB0aGUgY2FjaGUgbWF5IGhh
dmUgYW4gaW5jb25zaXN0ZW50IHN0YXRlLiBTbyBJIHRoaW5rIAp5b3Ugd2FudCB0byBhdm9pZCB1
c2luZyB0aG9zZSBwcmludCBiZWZvcmUgTU1VIGlzIGVuYWJsZWQuCgo+ICs5NzogLmFzY2l6IF9z
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKCkRvbid0IHlvdSB3YW50IHRvIHB1
dCB0aGUgc3RyaW5nIGludG8gdGhlIHRleHQgc2VjdGlvbj8KCj4gKzk4OiA7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+ICsgICAgLmFsaWduICAyOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiArOTk6ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCj4gKwo+ICsgICAgLmRhdGEKPiArICAgIC5nbG9ibCBfYm9v
dF9zdGFjawo+ICsgICAgLmdsb2JsIGJvb3RfbDBfcGd0YWJsZQo+ICsgICAgLmdsb2JsIGJvb3Rf
bDFfcGd0YWJsZQo+ICsgICAgLmdsb2JsIGJvb3RfbDJfcGd0YWJsZQo+ICsgICAgLmdsb2JsIGlk
bWFwX2wwX3BndGFibGUKPiArICAgIC5nbG9ibCBpZG1hcF9sMV9wZ3RhYmxlCgpQbGVhc2UgcHV0
IHRoZSAuZ2xvYmwgbGFiZWwgYmVmb3JlIGVhY2ggZGVjbGFyYXRpb24uIEJ1dCBJIGFtIG5vdCBz
dXJlIAp3aHkgeW91IG5lZWQgdG8gZXhwb3J0IG1vc3Qgb2YgdGhlbS4KCj4gKwo+ICsgICAgLmFs
aWduIDEyCj4gK2Jvb3RfbDBfcGd0YWJsZToKPiArICAgIC5maWxsICBQQUdFX1NJWkUsMSwwCj4g
K2Jvb3RfbDFfcGd0YWJsZToKPiArICAgIC5maWxsICBQQUdFX1NJWkUsMSwwCj4gK2Jvb3RfbDJf
cGd0YWJsZToKPiArICAgIC5maWxsICBQQUdFX1NJWkUsMSwwCj4gK2lkbWFwX2wwX3BndGFibGU6
Cj4gKyAgICAuZmlsbCAgUEFHRV9TSVpFLDEsMAo+ICtpZG1hcF9sMV9wZ3RhYmxlOgo+ICsgICAg
LmZpbGwgIFBBR0VfU0laRSwxLDAKPiArCj4gKyAgICAuYWxpZ24gMTIKPiArX2Jvb3Rfc3RhY2s6
Cj4gKyAgICAuZmlsbCAgX19TVEFDS19TSVpFLDEsMAoKQ2FuIHdlIHBsZWFzZSB1c2UgU1RBQ0tf
U0laRSBhbmQgbm90IF9fU1RBQ0tfU0laRS4KCj4gK3N0YWNrX2VuZDoKPiArCj4gKy8qCj4gKyAq
IEtlcm5lbCBzdGFydHVwIGVudHJ5IHBvaW50Lgo+ICsgKgo+ICsgKiBQbGVhc2UgcmVmZXIgdG8g
bGludXgga2VybmVsIGZpbGUgRG9jdW1lbnRhdGlvbi9hcm02NC9ib290aW5nLnR4dAo+ICsgKiBm
b3IgdGhlIGhlYWRlciBmb3JtYXQuCj4gKyAqLwo+ICsgICAgLnRleHQKPiArCj4gKyAgICBiICAg
ICAgIF9zdGFydCAgICAgICAgICAgICAgICAgIC8qIGJyYW5jaCB0byBrZXJuZWwgc3RhcnQsIG1h
Z2ljICovCj4gKyAgICAubG9uZyAgIDAgICAgICAgICAgICAgICAgICAgICAgIC8qIHJlc2VydmVk
ICovCj4gKyAgICAucXVhZCAgIDB4MCAgICAgICAgICAgICAgICAgICAgIC8qIEltYWdlIGxvYWQg
b2Zmc2V0IGZyb20gc3RhcnQgb2YgUkFNICovCj4gKyAgICAucXVhZCAgIF9lbmQgLSBfc3RhcnQg
ICAgICAgICAgIC8qIEVmZmVjdGl2ZSBJbWFnZSBzaXplICovCj4gKyAgICAucXVhZCAgIDIgICAg
ICAgICAgICAgICAgICAgICAgIC8qIGtlcm5lbCBmbGFnczogTEUsIDRLIHBhZ2Ugc2l6ZSAqLwoK
QWdhaW4sIGRvIHdlIHJlYWxseSBjYXJlIHRvIGhhdmUgdGhlIGtlcm5lbCBwbGFjZWQgYXMgY2xv
c2UgYXMgcG9zc2libGUgCnRvIHRoZSBiYXNlIGFkZHJlc3Mgb2YgdGhlIERSQU0/CgpGb3IgcmVt
aW5kZXIsIHRoZSBkb2N1bWVudGF0aW9uIG9mIHRoYXQgZmxhZyBpczoKCkJpdCAzOiAgICAgICAg
S2VybmVsIHBoeXNpY2FsIHBsYWNlbWVudAogICAgICAgICAgICAgICAgICAgICAgICAgMCAtIDJN
QiBhbGlnbmVkIGJhc2Ugc2hvdWxkIGJlIGFzIGNsb3NlIGFzIApwb3NzaWJsZSB0byB0aGUgYmFz
ZSBvZiBEUkFNLCBzaW5jZSBtZW1vcnkgYmVsb3cgaXQgaXMgbm90IGFjY2Vzc2libGUgCnZpYSB0
aGUgbGluZWFyIG1hcHBpbmcKICAgICAgICAgICAgICAgICAgICAgICAgIDEgLSAyTUIgYWxpZ25l
ZCBiYXNlIG1heSBiZSBhbnl3aGVyZSBpbiAKcGh5c2ljYWwgbWVtb3J5CgpIb3cgZG9lcyBtaW5p
LU9TIG9uIEFybTY0IGRlYWwgd2l0aCBtZW1vcnkgYmVsb3cgdGhlIGxvYWRlZCBhZGRyZXNzIG9m
IAp0aGUga2VybmVsPwoKPiArICAgIC5xdWFkICAgMCAgICAgICAgICAgICAgICAgICAgICAgLyog
cmVzZXJ2ZWQgKi8KPiArICAgIC5xdWFkICAgMCAgICAgICAgICAgICAgICAgICAgICAgLyogcmVz
ZXJ2ZWQgKi8KPiArICAgIC5xdWFkICAgMCAgICAgICAgICAgICAgICAgICAgICAgLyogcmVzZXJ2
ZWQgKi8KPiArICAgIC5ieXRlICAgMHg0MSAgICAgICAgICAgICAgICAgICAgLyogTWFnaWMgbnVt
YmVyLCAiQVJNXHg2NCIgKi8KPiArICAgIC5ieXRlICAgMHg1Mgo+ICsgICAgLmJ5dGUgICAweDRk
Cj4gKyAgICAuYnl0ZSAgIDB4NjQKPiArICAgIC5sb25nICAgMCAgICAgICAgICAgICAgICAgICAg
ICAgLyogcmVzZXJ2ZWQgKi8KPiArCj4gKy8qCj4gKyAqIFByaW1hcnkgQ1BVIGdlbmVyYWwtcHVy
cG9zZSByZWdpc3RlciBzZXR0aW5ncwoKVGhpcyBpcyBmYWlybHkgdW5jbGVhciB0byBtZSB3aGF0
IHlvdSBtZWFuIGJ5IHByaW1hcnkuIERpZCB5b3UgbWVhbiwgCiJJbml0aWFsIHN0YXRlIG9mIHRo
ZSBHUFIgd2hlbiBfc3RhcnQgaXMgY2FsbGVkPyIKCj4gKyAqIHgwID0gcGh5c2ljYWwgYWRkcmVz
cyBvZiBkZXZpY2UgdHJlZSBibG9iIChkdGIpIGluIHN5c3RlbSBSQU0uCj4gKyAqIHgxID0gMCAo
cmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2UpCj4gKyAqIHgyID0gMCAocmVzZXJ2ZWQgZm9yIGZ1dHVy
ZSB1c2UpCj4gKyAqIHgzID0gMCAocmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2UpCj4gKyAqCj4gKyAq
IFRoZSByZWdpc3RlcnMgdXNlZCBieSBfc3RhcnQ6Cj4gKyAqIHgyMCAtIEZEVCBwb2ludGVyCj4g
KyAqIHgyMiAtIG9mZnNldCBiZXR3ZWVuIFBBIGFuZCBWQQo+ICsgKi8KPiArRU5UUlkoX3N0YXJ0
KQo+ICsgICAgLyogU2F2ZSB0aGUgRkRUIHBvaW50ZXIgKi8KPiArICAgIG1vdiAgICAgeDIwLCB4
MAo+ICsKPiArICAgIC8qIENhbGN1bGF0ZSB3aGVyZSB3ZSBhcmUgKi8KPiArICAgIGJsICAgICAg
X2NhbGNfb2Zmc2V0Cj4gKwo+ICsgICAgUFJJTlQoIi0gTWluaS1PUyBib290aW5nIC1cbiIpCj4g
Kwo+ICsgICAgUFJJTlQoIi0gU2V0dXAgQ1BVIC1cbiIpCj4gKyAgICAvKiBTZXR1cCBDUFUgZm9y
IHR1cm5pbmcgb24gdGhlIE1NVS4gKi8KPiArICAgIGJsICAgICAgX3NldHVwX2NwdQo+ICsKPiAr
ICAgIFBSSU5UKCItIFNldHVwIGJvb3RpbmcgcGFnZXRhYmxlIC1cbiIpCgpJIGFtIHByZXR0eSBz
dXJlIHlvdSBuZWVkIHRvIGNsZWFuIHRoZSBjYWNoZSBmb3IgdGhlIHBhZ2UtdGFibGUgcmVnaW9u
IApoZXJlIHRvIGF2b2lkIHBvdGVudGlhbCBkaXJ0eSBsaW5lcyBiZWluZyBldmljdGVkIGFuZCAu
Li4KCj4gKyAgICAvKiBTZXR1cCB0aGUgaW5pdGlhbCBwYWdlIHRhYmxlLiAqLwo+ICsgICAgYmwg
ICAgICBfc2V0dXBfaW5pdGlhbF9wZ3RhYmxlCj4gKyAgICBtb3YgICAgIHgxOSwgeDAKPiArCj4g
KyAgICAvKiBTZXR1cCB0aGUgaWRlbnRpdHkgbWFwcGluZyAqLwo+ICsgICAgYmwgICAgICBfc2V0
dXBfaWRtYXBfcGd0YWJsZQoKQWxzbyBoZXJlIGJlY2F1c2UgeW91IHBvcHVsYXRlZCB0aGUgcGFn
ZS10YWJsZXMgd2l0aCBub24tY2FjaGVhYmxlIAphY2Nlc3NlcyAoTU1VIGRpc2FibGVkKSwgc28g
eW91IHdhbnQgdG8gcmVtb3ZlIHNwZWN1bGF0aXZlbHkgbG9hZGVkIApjYWNoZSBsaW5lcy4KCj4g
Kwo+ICsgICAgLyogTG9hZCBUVEJSeCAqLwo+ICsgICAgbXNyICAgICB0dGJyMV9lbDEsIHgxOQo+
ICsgICAgbXNyICAgICB0dGJyMF9lbDEsIHgwCj4gKyAgICBpc2IKPiArCj4gKyAgICAvKiBUdXJu
aW5nIG9uIE1NVSAqLwo+ICsgICAgdGxiaSAgICB2bWFsbGUxCgpDYW4geW91IHBsZWFzZSBkb2N1
bWVudCB3aHkgdGhlIFRMQiBoZXJlLiBJbiB0aGF0IGNhc2UgaXQgcmVtb3ZlIHN0YWxsIApUTEIg
ZW50cmllcy4KCj4gKyAgICBkc2IgICAgIG5zaAo+ICsgICAgaXNiCgpUaGUgaXNiIGhlcmUgaXMg
bm90IG5lY2Vzc2FyeS4gWW91IGNhbiByZWx5IG9uIHRoZSBvbmUgYWZ0ZXIgdGhlIE1NVSBpcyAK
ZW5hYmxlZCBiZWxvdy4KCj4gKyAgICBsZHIgICAgIHgxLCA9KFNDVExSX00gfCBTQ1RMUl9DIHwg
U0NUTFJfSSkKCklmIHlvdSBmdWxseSBvdmVyd3JpdGUgU0NUTFJfRUwxIHZhbHVlLCB0aGVuIHlv
dSBuZWVkIHRvIG1ha2Ugc3VyZSBhbGwgClJFUzEgYXJlIHNldCB0byAxIGluIEFSTXY4LjAuIE90
aGVyd2lzZSwgeW91IGFyZSBnb2luZyB0byBoYXZlIHNvbWUgCnN1cnByaXNlIHdoZW4gdGhvc2Ug
Yml0cyBhcmUgZGVmaW5lZCBkaWZmZXJlbnRseSAoc3VjaCBhcyBtb3ZpbmcgdG8gCkFSTXY4LjIp
LgoKPiArICAgIG1zciAgICAgc2N0bHJfZWwxLCB4MQo+ICsgICAgaXNiCj4gKwo+ICsgICAgUFJJ
TlQoIi0gTU1VIG9uIC1cbiIpCj4gKyAgICBsZHIgICAgIHgwLCA9bW11X29uCj4gKyAgICBiciAg
ICAgIHgwCj4gKwo+ICttbXVfb246Cj4gKyAgICAvKiBEbyBub3QgdXNlIHRoZSBUVEJSMF9FTDEg
YW55IG1vcmUgKi8KPiArICAgIG1ycyAgICAgeDE5LCB0Y3JfZWwxCj4gKyAgICBhZGQgICAgIHgx
OSwgeDE5LCBUQ1JfRVBEMAo+ICsgICAgbXNyICAgICB0Y3JfZWwxLCB4MTkKCllvdSBwcm9iYWJs
eSB3YW50IHRvIGZsdXNoIHRoZSBUTEIgaGVyZS4gU28geW91IGRvbid0IGVuZCB1cCB0byB1c2Ug
CnN0YWxsIGRhdGEuCgo+ICsKPiArICAgIC8qIFNldHVwIHN0YWNrICovCj4gKyAgICBQUklOVCgi
LSBTZXR1cCBzdGFjayAtXG4iKQo+ICsgICAgbGRyICAgICB4MSwgPXN0YWNrX2VuZAo+ICsgICAg
bW92ICAgICBzcCwgeDEKPiArCj4gKyAgICBQUklOVCgiLSBKdW1waW5nIHRvIEMgZW50cnkgLVxu
IikKPiArICAgIG1vdiAgICAgeDAsIHgyMCAgICAgICAgICAgICAgICAgIC8qIHgwIDwtIGRldmlj
ZSB0cmVlIChwaHlzaWNhbCBhZGRyZXNzKSAqLwo+ICsgICAgbW92ICAgICB4MSwgeDIyICAgICAg
ICAgICAgICAgICAgLyogeDEgPC0gcGh5c19vZmZzZXQgKi8KPiArCj4gKyAgICBiICAgICAgYXJj
aF9pbml0Cj4gK0VORFBST0MoX3N0YXJ0KQo+ICsKPiArLyoKPiArICogR2V0IHRoZSBwaHlzLW9m
ZnNldCwgYW5kIHNhdmUgaXQgaW4geDIyCj4gKyAqLwo+ICtfY2FsY19vZmZzZXQ6Cj4gKyAgICBs
ZHIgICAgIHgyMiwgPV9zdGFydCAgICAgICAgICAgICAvKiB4MCA6PSB2YWRkcihfc3RhcnQpICAq
Lwo+ICsgICAgYWRyICAgICB4MjEsIF9zdGFydCAgICAgICAgICAgICAgLyogeDIxIDo9IHBhZGRy
KF9zdGFydCkgKi8KPiArICAgIHN1YiAgICAgeDIyLCB4MjEsIHgyMiAgICAgICAgICAgIC8qIHgy
MiA6PSBwaHlzLW9mZnNldCAocGFkZHIgLSB2YWRkcikgKi8KPiArICAgIHJldAo+ICsKPiArLyoK
PiArICogU2V0dXAgdGhlIG1lbW9yeSByZWdpb24gYXR0cmlidXRlOwo+ICsgKiBTZXR1cCB0aGUg
VENSLgo+ICsgKi8KPiArX3NldHVwX2NwdToKPiArICAgIC8qCj4gKyAgICAgKiBTZXR1cCBtZW1v
cnkgYXR0cmlidXRlIHR5cGUgdGFibGVzCj4gKyAgICAgKgo+ICsgICAgICogTWVtb3J5IHJlZ2lv
biBhdHRyaWJ1dGVzIGZvciBMUEFFOgo+ICsgICAgICoKPiArICAgICAqICAgbiA9IEF0dHJJbmR4
WzI6MF0KPiArICAgICAqICAgICAgICAgICAgICAgICAgICAgIG4gICAgICAgTUFJUgo+ICsgICAg
ICogICBERVZJQ0VfbkduUm5FICAgICAgMDAwICAgICAwMDAwMDAwMCAoMHgwMCkKPiArICAgICAq
ICAgREVWSUNFX25HblJFICAgICAgIDAwMSAgICAgMDAwMDAxMDAgKDB4MDQpCj4gKyAgICAgKiAg
IERFVklDRV9HUkUgICAgICAgICAwMTAgICAgIDAwMDAxMTAwICgweDBjKQo+ICsgICAgICogICBO
T1JNQUxfTkMgICAgICAgICAgMDExICAgICAwMTAwMDEwMCAoMHg0NCkKPiArICAgICAqICAgTk9S
TUFMICAgICAgICAgICAgIDEwMCAgICAgMTExMTExMTEgKDB4ZmYpCj4gKyAgICAgKi8KPiArICAg
IGxkciAgICAgeDAsID0oU0VUX01BSVIoMHgwMCwgTUVNX0RFVklDRV9uR25SbkUpIHwgXAo+ICsg
ICAgICAgICAgICAgICAgICBTRVRfTUFJUigweDA0LCBNRU1fREVWSUNFX25HblJFKSAgfCBcCj4g
KyAgICAgICAgICAgICAgICAgIFNFVF9NQUlSKDB4MGMsIE1FTV9ERVZJQ0VfR1JFKSAgICB8IFwK
PiArICAgICAgICAgICAgICAgICAgU0VUX01BSVIoMHg0NCwgTUVNX05PUk1BTF9OQykgICAgIHwg
XAo+ICsgICAgICAgICAgICAgICAgICBTRVRfTUFJUigweGZmLCBNRU1fTk9STUFMKSkKPiArICAg
IG1zciAgICAgbWFpcl9lbDEsIHgwCj4gKwo+ICsgICAgLyoKPiArICAgICAqIFNldHVwIHRyYW5z
bGF0aW9uIGNvbnRyb2wgcmVnaXN0ZXIgKFRDUikKPiArICAgICAqLwo+ICsgICAgbGRyICAgICB4
MCwgPShUQ1JfVHhTWihWQV9CSVRTKSB8IFRDUl9BU0lEMTYgfCBUQ1JfVEcxXzRLIHwgXAo+ICsg
ICAgICAgICAgICAgICAgICBUQ1JfSVJHTl9XQldBIHwgVENSX09SR05fV0JXQSB8IFRDUl9TSEFS
RUQgfCBUQ1JfSVBTXzQ4QklUKQo+ICsgICAgbXNyICAgICB0Y3JfZWwxLCB4MAo+ICsKPiArICAg
IHJldAo+ICsKPiArLyoKPiArICogU2V0dXAgdGhlIHBhZ2UgdGFibGUgbWFwcGluZyBmb3IgQGFk
ZHIgYXQgQGxldmVsIHdpdGggQHByb3QuCj4gKyAqCj4gKyAqIE5vdGU6IHgyMiBzdG9yZXMgdGhl
IG9mZnNldCBiZXR3ZWVuIHZpcnR1YWwgYWRkcmVzcyBhbmQgcGh5c2ljYWwgYWRkcmVzcy4KPiAr
ICovCj4gKy5tYWNybyBzZXRfcGFnZV90YWJsZSwgYWRkciwgbGV2ZWwsIHByb3QKPiArICAgIC8q
IEZpbmQgdGhlIHRhYmxlIGluZGV4IGluIEBsZXZlbCwgc2F2ZSBpdCBpbiB4MyAgKi8KPiArLmlm
IFxsZXZlbCA9PSAwCj4gKyAgICBsc3IgICAgIHgzLCBcYWRkciwgI0wwX1NISUZUCj4gKyAgICBh
ZHIgICAgIHg4LCBib290X2wxX3BndGFibGUKPiArICAgIGFkciAgICAgeDExLCBib290X2wwX3Bn
dGFibGUKPiArLmVuZGlmCj4gKwo+ICsuaWYgXGxldmVsID09IDEKPiArICAgIGxzciAgICAgeDMs
IFxhZGRyLCAjTDFfU0hJRlQKPiArICAgIGFkciAgICAgeDgsIGJvb3RfbDJfcGd0YWJsZQo+ICsg
ICAgYWRyICAgICB4MTEsIGJvb3RfbDFfcGd0YWJsZQo+ICsuZW5kaWYKPiArCj4gKy5pZiBcbGV2
ZWwgPT0gMgo+ICsgICAgbHNyICAgICB4MywgXGFkZHIsICNMMl9TSElGVAo+ICsgICAgYWRyICAg
ICB4MTEsIGJvb3RfbDJfcGd0YWJsZQo+ICsgICAgLyogR2V0IHRoZSBwaHlzaWNhbCBhZGRyZXNz
LCB0aGUgQGFkZHIgc2hvdWxkIGJlIDJNIGFsaWduZWQuICovCj4gKyAgICBhZGQgICAgIHg4LCBc
YWRkciwgeDIyCj4gKy5lbmRpZgo+ICsKPiArICAgIGFuZCAgICAgeDMsIHgzLCAjTG5fQUREUl9N
QVNLCj4gKwo+ICsgICAgLyogQnVpbGQgdGhlIHBhZ2UgdGFibGUgZW50cnkgKi8KPiArICAgIGxk
ciAgICAgeDcsID0gXHByb3QKPiArICAgIGxzciAgICAgeDksIHg4LCAjUEFHRV9TSElGVAo+ICsg
ICAgb3JyICAgICB4NywgeDcsIHg5LCBsc2wgI1BBR0VfU0hJRlQKPiArCj4gKyAgICAvKiBTdG9y
ZSBlbnRyeSAqLwo+ICsgICAgc3RyICAgICB4NywgW3gxMSwgeDMsIGxzbCAjM10KPiArLmVuZG0K
PiArCj4gKy8qCj4gKyAqIFNldHVwIHRoZSBtYXBwaW5nIGZvciBjb2RlIHNlY3Rpb24KPiArICoK
PiArICogPT4gbnVsbAo+ICsgKiA8PSB4MCAtPiBmb3IgVFRCUjFfRUwxCj4gKyAqLwo+ICtfc2V0
dXBfaW5pdGlhbF9wZ3RhYmxlOgo+ICsgICAgLyogU3RhcnQgdG8gbWFwIHRoZSBjb2RlICovCj4g
KyAgICBsZHIgICAgIHgwLCA9X3RleHQgICAgICAgICAgICAgICAgIC8qIHgwIDo9IHZhZGRyKF90
ZXh0KSAgICAgICAgICAgICovCj4gKyAgICBsZHIgICAgIHgxLCA9X2VuZCAgICAgICAgICAgICAg
ICAgIC8qIHgxIDo9IHZhZGRyKF9lbmQpICAgICAgICAgICAgICovCj4gKwo+ICsgICAgc2V0X3Bh
Z2VfdGFibGUgeDAsIDAsIFBUX1BUCj4gKyAgICBzZXRfcGFnZV90YWJsZSB4MCwgMSwgUFRfUFQK
PiArMToKPiArICAgIHNldF9wYWdlX3RhYmxlIHgwLCAyLCBQVF9NRU0KPiArCj4gKyAgICBhZGQg
ICAgIHgwLCB4MCwgTDJfU0laRQo+ICsgICAgY21wICAgICB4MSwgeDAKPiArICAgIGIuZ3QgICAg
MWIKPiArCj4gKyAgICBhZHIgICAgIHgwLCBib290X2wwX3BndGFibGUKPiArICAgIGRzYiAgICAg
c3kKPiArICAgIHJldAo+ICsKPiArLyoKPiArICogU2V0dXAgdGhlIHBhZ2UgdGFibGUgbWFwcGlu
ZyBmb3IgQGFkZHIgYXQgQGxldmVsIHdpdGggQHByb3QuCj4gKyAqCj4gKyAqIE9ubHkgdXNlZCBm
b3IgaWRlbnRpdHkgbWFwcGluZy4KPiArICovCj4gKy5tYWNybyBzZXRfaWRlbnRfcGFnZV90YWJs
ZSwgYWRkciwgbGV2ZWwsIHByb3QKPiArICAgIC8qIEZpbmQgdGhlIHRhYmxlIGluZGV4IGluIEBs
ZXZlbCwgc2F2ZSBpdCBpbiB4MyAgKi8KPiArLmlmIFxsZXZlbCA9PSAwCj4gKyAgICBsc3IgICAg
IHgzLCBcYWRkciwgI0wwX1NISUZUCj4gKyAgICBhZHIgICAgIHg4LCBpZG1hcF9sMV9wZ3RhYmxl
Cj4gKyAgICBhZHIgICAgIHgxMSwgaWRtYXBfbDBfcGd0YWJsZQo+ICsuZW5kaWYKPiArCj4gKy5p
ZiBcbGV2ZWwgPT0gMQo+ICsgICAgbHNyICAgICB4MywgXGFkZHIsICNMMV9TSElGVAo+ICsgICAg
bW92ICAgICB4OCwgXGFkZHIKPiArICAgIGFkciAgICAgeDExLCBpZG1hcF9sMV9wZ3RhYmxlCj4g
Ky5lbmRpZgo+ICsKPiArICAgIGFuZCAgICAgeDMsIHgzLCAjTG5fQUREUl9NQVNLCj4gKwo+ICsg
ICAgLyogQnVpbGQgdGhlIHBhZ2UgdGFibGUgZW50cnkgKi8KPiArICAgIGxkciAgICAgeDcsID0g
XHByb3QKPiArICAgIGxzciAgICAgeDksIHg4LCAjUEFHRV9TSElGVAo+ICsgICAgb3JyICAgICB4
NywgeDcsIHg5LCBsc2wgI1BBR0VfU0hJRlQKPiArCj4gKyAgICAvKiBTdG9yZSBlbnRyeSAqLwo+
ICsgICAgc3RyICAgICB4NywgW3gxMSwgeDMsIGxzbCAjM10KPiArLmVuZG0KPiArCj4gKy8qCj4g
KyAqIFNldHVwIHRoZSBwYWdlIHRhYmxlIGZvciBUVEJSMF9FTDE6Cj4gKyAqICAgTWFwcGluZyB0
aGUgcGFnZSB0YWJsZSBmb3IgdGhlIGNvZGUgc2VjdGlvbi4KPiArICogICBXZSB1c2UgNDhiaXQg
YWRkcmVzcywgYW5kIGp1c3QgdXNlIGxldmVsIDAvMQo+ICsgKiAgIGZvciB0aGUgbWFwcGluZyAo
d2UgZG8gbm90IHVzZSBsZXZlbCAyIGFuZCBsZXZlbCAzKS4KPiArICoKPiArICogPT4gbm9uZQo+
ICsgKiA8PSB4MCA6IHNhdmUgdGhlIHBhZ2UgdGFibGUgcG9pbnRlciBmb3IgVFRCUjBfRUwxLgo+
ICsgKi8KPiArX3NldHVwX2lkbWFwX3BndGFibGU6Cj4gKyAgICAvKiBDcmVhdGUgdGhlIFZBID0g
UEEgbWFwICovCj4gKyAgICBhZHIgICAgIHgwLCBfdGV4dAo+ICsKPiArICAgIHNldF9pZGVudF9w
YWdlX3RhYmxlIHgwLCAwLCBQVF9QVAo+ICsgICAgc2V0X2lkZW50X3BhZ2VfdGFibGUgeDAsIDEs
IFBUX01FTQo+ICsKPiArICAgIGFkciAgICAgeDAsIGlkbWFwX2wwX3BndGFibGUKPiArICAgIGRz
YiAgICAgc3kKPiArICAgIHJldAo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9hcm02NC9hc20uaCBi
L2FyY2gvYXJtL2FybTY0L2FzbS5oCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAw
MDAwLi4zYTQ5OGM0Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2FyY2gvYXJtL2FybTY0L2FzbS5o
CgpBZ2Fpbiwgbm90aGluZyBpbiB0aGlzIGhlYWRlciBsb29rIGFybTY0IHNwZWNpZmljLgoKPiBA
QCAtMCwwICsxLDE4IEBACj4gKyNpZm5kZWYgX19BU01fSF9fCj4gKyNkZWZpbmUgX19BU01fSF9f
Cj4gKwo+ICsjZGVmaW5lIEFMSUdOICAgLmFsaWduIDQKPiArCj4gKyNkZWZpbmUgRU5UUlkobmFt
ZSkgXAo+ICsgICAgLmdsb2JsIG5hbWU7IFwKPiArICAgIEFMSUdOOyBcCj4gKyAgICBuYW1lOgo+
ICsKPiArI2RlZmluZSBFTkQobmFtZSkgXAo+ICsgICAgLnNpemUgbmFtZSwgLi1uYW1lCj4gKwo+
ICsjZGVmaW5lIEVORFBST0MobmFtZSkgXAo+ICsgICAgLnR5cGUgbmFtZSwgQGZ1bmN0aW9uOyBc
Cj4gKyAgICBFTkQobmFtZSkKPiArCj4gKyNlbmRpZiAvKiBfX0FTTV9IX18gKi8KPiBkaWZmIC0t
Z2l0IGEvaW5jbHVkZS9hcm0vYXJtNjQvcGFnZXRhYmxlLmggYi9pbmNsdWRlL2FybS9hcm02NC9w
YWdldGFibGUuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uOGUyMzg0
Zgo+IC0tLSAvZGV2L251bGwKPiArKysgYi9pbmNsdWRlL2FybS9hcm02NC9wYWdldGFibGUuaAo+
IEBAIC0wLDAgKzEsMTA4IEBACj4gKyNpZm5kZWYgX19BUk02NF9QQUdFX1RBQkxFX18KPiArCj4g
KyNkZWZpbmUgX19BUk02NF9QQUdFX1RBQkxFX18KPiArCj4gKy8qIFRDUiBmbGFncyAqLwo+ICsj
ZGVmaW5lIFRDUl9UeFNaKHgpICAgICAgICAgKCgoKDY0KSAtICh4KSkgPDwgMTYpIHwgKCgoNjQp
IC0gKHgpKSA8PCAwKSkKPiArI2RlZmluZSBUQ1JfSVJHTl9XQldBICAgICAgICgoKDEpIDw8IDgp
IHwgKCgxKSA8PCAyNCkpCj4gKyNkZWZpbmUgVENSX09SR05fV0JXQSAgICAgICAoKCgxKSA8PCAx
MCkgfCAoKDEpIDw8IDI2KSkKPiArI2RlZmluZSBUQ1JfU0hBUkVEICAgICAgICAgICgoKDMpIDw8
IDEyKSB8ICgoMykgPDwgMjgpKQo+ICsjZGVmaW5lIFRDUl9BU0lEMTYgICAgICAgICAgKCgxKSA8
PCAzNikKPiArI2RlZmluZSBUQ1JfSVBTXzQ4QklUICAgICAgICgoNSkgPDwgMzIpCj4gKyNkZWZp
bmUgVENSX1RHMV80SyAgICAgICAgICAoKDIpIDw8IDMwKQoKVGhvc2UgZmxhZ3MgYXJlIG9ubHkg
Z29pbmcgdG8gd29yayB3ZWxsIGluIGFzc2VtYmx5LiBJbiBDLCB5b3Ugd2lsbCBoYXZlIAp0cnVu
Y2F0aW9uIHByb2JsZW0gYXMgdGhlIHNoaWZ0IGlzIGJhc2VkIG9uIGludGVnZXIgKGFrYSAzMi1i
aXQpLgoKQWxzbyBjYW4geW91IHJlbW92ZSBwYXJlbnRoZXNlIGFyb3VuZCBhbGwgcGxhaW4gdmFs
dWVzLiBJLmUgcy8oMikvMi8uIApUaGlzIHdpbGwgbWFrZSB0aGUgY29kZSBtb3JlIHJlYWRhYmxl
LgoKPiArI2RlZmluZSBUQ1JfRVBEMCAgICAgICAgICAgICgxIDw8IDcpCj4gKwo+ICsvKiBNYXgg
dmlydHVhbCBhZGRyZXNzICovCj4gKyNkZWZpbmUJVk1fTUFYX0FERFJFU1MgICAgICAoMHhmZmZm
ZmZmZmZmZmZmZmZmKQo+ICsKPiArLyogTnVtYmVyIG9mIHZpcnR1YWwgYWRkcmVzcyBiaXRzICov
Cj4gKyNkZWZpbmUgVkFfQklUUyAgICAgICAgICAgICA0OAo+ICsKPiArLyoKPiArICogTWVtb3J5
IHR5cGVzIGF2YWlsYWJsZS4KPiArICovCj4gKyNkZWZpbmUgTUVNX0RFVklDRV9uR25SbkUgICAg
MAo+ICsjZGVmaW5lIE1FTV9ERVZJQ0VfbkduUkUgICAgIDEKPiArI2RlZmluZSBNRU1fREVWSUNF
X0dSRSAgICAgICAyCj4gKyNkZWZpbmUgTUVNX05PUk1BTF9OQyAgICAgICAgMwo+ICsjZGVmaW5l
IE1FTV9OT1JNQUwgICAgICAgICAgIDQKPiArCj4gKyNkZWZpbmUgU0VUX01BSVIoYXR0ciwgbXQp
ICAoKGF0dHIpIDw8ICgobXQpICogOCkpCj4gKwo+ICsvKiBTQ1RMUl9FTDEgLSBTeXN0ZW0gQ29u
dHJvbCBSZWdpc3RlciAqLwo+ICsjZGVmaW5lIFNDVExSX00gICAgICAgICAgICAgKDEgPDwgMCkK
PiArI2RlZmluZSBTQ1RMUl9DICAgICAgICAgICAgICgxIDw8IDIpCj4gKyNkZWZpbmUgU0NUTFJf
SSAgICAgICAgICAgICAoMSA8PCAxMikKPiArCj4gKy8qIExldmVsIDAgdGFibGUsIDUxMkdpQiBw
ZXIgZW50cnkgKi8KPiArI2RlZmluZSBMMF9TSElGVCAgICAgICAgICAgIDM5Cj4gKyNkZWZpbmUg
TDBfU0laRSAgICAgICAgICAgICAoMVVMIDw8IEwwX1NISUZUKQo+ICsjZGVmaW5lIEwwX0lOVkFM
ICAgICAgICAgICAgMHgwIC8qIEFuIGludmFsaWQgYWRkcmVzcyAqLwo+ICsjZGVmaW5lIEwwX1RB
QkxFICAgICAgICAgICAgMHgzIC8qIEEgbmV4dC1sZXZlbCB0YWJsZSAqLwo+ICsKPiArLyogTGV2
ZWwgMSB0YWJsZSwgMUdpQiBwZXIgZW50cnkgKi8KPiArI2RlZmluZSBMMV9TSElGVCAgICAgICAg
ICAgIDMwCj4gKyNkZWZpbmUgTDFfU0laRSAgICAgICAgICAgICAoMSA8PCBMMV9TSElGVCkKClBs
ZWFzZSB0cnkgdG8gYmUgY29uc2lzdGVudCB0byB1c2UgMVVMIGV2ZXJ5d2hlcmUgZm9yICpfU0la
RS4KCj4gKyNkZWZpbmUgTDFfT0ZGU0VUICAgICAgICAgICAoTDFfU0laRSAtIDEpCj4gKyNkZWZp
bmUgTDFfSU5WQUwgICAgICAgICAgICBMMF9JTlZBTAo+ICsjZGVmaW5lIEwxX0JMT0NLICAgICAg
ICAgICAgMHgxCj4gKyNkZWZpbmUgTDFfVEFCTEUgICAgICAgICAgICBMMF9UQUJMRQo+ICsjZGVm
aW5lIEwxX01BU0sgICAgICAgICAgICAgKH4oTDFfU0laRS0xKSkKPiArCj4gKy8qIExldmVsIDIg
dGFibGUsIDJNaUIgcGVyIGVudHJ5ICovCj4gKyNkZWZpbmUgTDJfU0hJRlQgICAgICAgICAgICAy
MQo+ICsjZGVmaW5lIEwyX1NJWkUgICAgICAgICAgICAgKDEgPDwgTDJfU0hJRlQpCj4gKyNkZWZp
bmUgTDJfT0ZGU0VUICAgICAgICAgICAoTDJfU0laRSAtIDEpCj4gKyNkZWZpbmUgTDJfSU5WQUwg
ICAgICAgICAgICBMMF9JTlZBTAo+ICsjZGVmaW5lIEwyX0JMT0NLICAgICAgICAgICAgTDFfQkxP
Q0sKPiArI2RlZmluZSBMMl9UQUJMRSAgICAgICAgICAgIEwwX1RBQkxFCj4gKyNkZWZpbmUgTDJf
TUFTSyAgICAgICAgICAgICAofihMMl9TSVpFLTEpKQo+ICsKPiArLyogTGV2ZWwgMyB0YWJsZSwg
NEtpQiBwZXIgZW50cnkgKi8KPiArI2RlZmluZSBMM19TSElGVCAgICAgICAgICAgIDEyCj4gKyNk
ZWZpbmUgTDNfU0laRSAgICAgICAgICAgICAoMSA8PCBMM19TSElGVCkKPiArI2RlZmluZSBMM19P
RkZTRVQgICAgICAgICAgIChMM19TSVpFIC0gMSkKPiArI2RlZmluZSBMM19JTlZBTCAgICAgICAg
ICAgIDB4MAo+ICsjZGVmaW5lIEwzX1BBR0UgICAgICAgICAgICAgMHgzCj4gKyNkZWZpbmUgTDNf
TUFTSyAgICAgICAgICAgICAofihMM19TSVpFLTEpKQo+ICsKPiArI2RlZmluZSBMbl9FTlRSSUVT
ICAgICAgICAgICgxIDw8IDkpCj4gKyNkZWZpbmUgTG5fQUREUl9NQVNLICAgICAgICAoTG5fRU5U
UklFUyAtIDEpCj4gKwo+ICsjZGVmaW5lIEFUVFJfTUFTS19MICAgICAgICAgMHhmZmYKPiArCj4g
KyNkZWZpbmUgbDBfcGd0X2lkeCh2YSkgICAgICAoKCh2YSkgPj4gTDBfU0hJRlQpICYgTG5fQURE
Ul9NQVNLKQo+ICsjZGVmaW5lIGwxX3BndF9pZHgodmEpICAgICAgKCgodmEpID4+IEwxX1NISUZU
KSAmIExuX0FERFJfTUFTSykKPiArI2RlZmluZSBsMl9wZ3RfaWR4KHZhKSAgICAgICgoKHZhKSA+
PiBMMl9TSElGVCkgJiBMbl9BRERSX01BU0spCj4gKyNkZWZpbmUgbDNfcGd0X2lkeCh2YSkgICAg
ICAoKCh2YSkgPj4gTDNfU0hJRlQpICYgTG5fQUREUl9NQVNLKQo+ICsKPiArLyoKPiArICogTG93
ZXIgYXR0cmlidXRlcyBmaWVsZHMgaW4gU3RhZ2UgMSBWTVNBdjgtQSBCbG9jayBhbmQgUGFnZSBk
ZXNjcmlwdG9yCj4gKyAqLwo+ICsjZGVmaW5lIEFUVFJfbkcgICAgICAgICAgICAoMSA8PCAxMSkK
PiArI2RlZmluZSBBVFRSX0FGICAgICAgICAgICAgKDEgPDwgMTApCj4gKyNkZWZpbmUgQVRUUl9T
SCh4KSAgICAgICAgICgoeCkgPDwgOCkKPiArI2RlZmluZSBBVFRSX1NIX01BU0sgICAgICAgQVRU
Ul9TSCgzKQo+ICsjZGVmaW5lIEFUVFJfU0hfTlMgICAgICAgICAwICAgICAgICAgICAgICAgLyog
Tm9uLXNoYXJlYWJsZSAqLwo+ICsjZGVmaW5lIEFUVFJfU0hfT1MgICAgICAgICAyICAgICAgICAg
ICAgICAgLyogT3V0ZXItc2hhcmVhYmxlICovCj4gKyNkZWZpbmUgQVRUUl9TSF9JUyAgICAgICAg
IDMgICAgICAgICAgICAgICAvKiBJbm5lci1zaGFyZWFibGUgKi8KPiArI2RlZmluZSBBVFRSX0FQ
X1JXX0JJVCAgICAgKDEgPDwgNykKPiArI2RlZmluZSBBVFRSX0FQKHgpICAgICAgICAgKCh4KSA8
PCA2KQo+ICsjZGVmaW5lIEFUVFJfQVBfTUFTSyAgICAgICBBVFRSX0FQKDMpCj4gKyNkZWZpbmUg
QVRUUl9BUF9SVyAgICAgICAgICgwIDw8IDEpCj4gKyNkZWZpbmUgQVRUUl9BUF9STyAgICAgICAg
ICgxIDw8IDEpCj4gKyNkZWZpbmUgQVRUUl9BUF9VU0VSICAgICAgICgxIDw8IDApCj4gKyNkZWZp
bmUgQVRUUl9OUyAgICAgICAgICAgICgxIDw8IDUpCj4gKyNkZWZpbmUgQVRUUl9JRFgoeCkgICAg
ICAgICgoeCkgPDwgMikKPiArI2RlZmluZSBBVFRSX0lEWF9NQVNLICAgICAgKDcgPDwgMikKPiAr
Cj4gKyNkZWZpbmUgTUVNX0RFRl9BVFRSICAgICAgIChBVFRSX0FGfEFUVFJfU0goQVRUUl9TSF9J
Uyl8QVRUUl9JRFgoTUVNX05PUk1BTCkpCj4gKyNkZWZpbmUgTUVNX05DX0FUVFIgICAgICAgIChB
VFRSX0FGfEFUVFJfU0goQVRUUl9TSF9JUyl8QVRUUl9JRFgoTUVNX05PUk1BTF9OQykpCj4gKyNk
ZWZpbmUgTUVNX0RFVl9BVFRSICAgICAgIChBVFRSX0FGfEFUVFJfU0goQVRUUl9TSF9JUyl8QVRU
Ul9JRFgoTUVNX0RFVklDRV9uR25SbkUpKQo+ICsKPiArI2RlZmluZSBNRU1fUk9fQVRUUiAgICAg
ICAgKE1FTV9ERUZfQVRUUnxBVFRSX0FQKEFUVFJfQVBfUk8pKQo+ICsKPiArI2RlZmluZSBQVF9Q
VCAgICAgICAgICAgICAgKEwwX1RBQkxFKQo+ICsjZGVmaW5lIFBUX01FTSAgICAgICAgICAgICAo
TUVNX0RFRl9BVFRSIHwgTDFfQkxPQ0spCgpUaGUgbmFtaW5nIGZvciB0aG9zZSAyIG1hY3JvcyBk
b24ndCBtYWtlIHNlbnNlIGJhc2VkIG9uIHRoZSB2YWx1ZS4gRm9yIAppbnN0YW5jZSwgUFRfUFQg
Z2l2ZXMgdGhlIGltcHJlc3Npb24gdG8gYmUgYXR0cmlidXRlIGZvciB0YWJsZSBhbmQgZG9lcyAK
bm90IG5lY2Vzc2FyaWx5IG5lZWQgdG8gYmUgbGV2ZWwtMC4KCkJ1dCBJIGp1c3Qgbm90aWNlIHRo
YXQgeW91IGRlZmluZSBMMV9UQUJMRSBhcyBMMF9UQUJMRS4gVGhpcyBpcyBzbyAKY29uZnVzaW5n
LCB5b3UgcHJvYmFibHkgd2FudCB0byBkbyBzb21lIHJlbmFtaW5nIHNvbWUgd2hlcmUuIFNhbWUg
Zm9yIApMMV9CTE9DSy4KCkNoZWVycywKCi0tIApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxp
c3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJv
amVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 16 17:51:35 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 16 Apr 2018 17:51:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f88Hu-0000p3-Bc; Mon, 16 Apr 2018 17:51:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=wiv1=hf=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f88Ht-0000oy-6P
 for minios-devel@lists.xenproject.org; Mon, 16 Apr 2018 17:51:33 +0000
X-Inumbo-ID: 0ec223c7-419f-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 0ec223c7-419f-11e8-8249-2fda3a446a53;
 Mon, 16 Apr 2018 17:53:23 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 0BCC11529;
 Mon, 16 Apr 2018 10:51:31 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 16E413F25D;
 Mon, 16 Apr 2018 10:51:28 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-27-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <37a0fcde-f208-3eb4-d57c-02acd34f861d@arm.com>
Date: Mon, 16 Apr 2018 18:51:27 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-27-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 26/43] arm64: implement the
 run_idle_thread
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxNi8wNC8xOCAwNzozMiwgSHVhbmcgU2hpamllIHdyb3RlOgo+IFRoZSBwYXRjaCBp
bXBsZW1lbnRzIHRoZSBydW5faWRsZV90aHJlYWQoKSBmb3IgdGhlIGlkbGUgdGhyZWFkCgpUaGlz
IHBhdGNoIGlzIGEgcmVhbGx5IGdvb2QgZXhhbXBsZSBhYm91dCB3aHkgSSBrZWVwIHN1Z2dlc3Rp
bmcgdG8gc2NyYXAgCmFyY2gvYXJtIGFuZCB3cml0ZSBmcm9tIHN0YXJ0LgoKVGhlIGNvbW1pdCBt
ZXNzYWdlIGRvZXMgbm90IG1hdGNoIHRoZSBwYXRjaC4gWW91IGZpeCB0aGUgY29kZSB3aXRob3V0
IApleHBsYWluaW5nIHdoeS4gV2h5IGRvIHlvdSBuZWVkIHRvIGZpeCB0aGUgY29kZT8KCkkgYW0g
bm90IGdvaW5nIHRvIGZpZ2h0IGFnYWluc3Qgc2NyYXBwaW5nIHRoZSBjb2RlLCBJIGhhZCBlbm91
Z2ggd2l0aCAKdGhhdC4gSG93ZXZlciwgeW91IHNob3VsZCBhdCBsZWFzdCB0cnkgdG8gbWFrZSB0
aGF0IHNlcmllcyBlYXNpZXIgdG8gCnJldmlldy4gVGhpcyBsaWtlbHkgbWVhbnMgcmV3b3JkaW5n
IG1vc3Qgb2YgeW91ciBjb21taXQgbWVzc2FnZSB0byBtYWtlIApjbGVhciB0aGUgcmF0aW9uYWxl
IG9mIHRoZSBjaGFuZ2UuCgo+IAo+IFNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamll
Lmh1YW5nQGFybS5jb20+Cj4gLS0tCj4gICBhcmNoL2FybS9zY2hlZC5jIHwgNCArKy0tCj4gICAx
IGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYg
LS1naXQgYS9hcmNoL2FybS9zY2hlZC5jIGIvYXJjaC9hcm0vc2NoZWQuYwo+IGluZGV4IGEyMDk1
MTMuLmU2M2RkZDQgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9hcm0vc2NoZWQuYwo+ICsrKyBiL2FyY2gv
YXJtL3NjaGVkLmMKPiBAQCAtMzksOCArMzksOCBAQCBzdHJ1Y3QgdGhyZWFkKiBhcmNoX2NyZWF0
ZV90aHJlYWQoY2hhciAqbmFtZSwgdm9pZCAoKmZ1bmN0aW9uKSh2b2lkICopLAo+ICAgCj4gICB2
b2lkIHJ1bl9pZGxlX3RocmVhZCh2b2lkKQo+ICAgewo+IC0gICAgX19hc21fXyBfX3ZvbGF0aWxl
X18gKCJtb3Ygc3AsICUwOyBieCAlMSI6Ogo+IC0gICAgICAgICAgICAiciIoaWRsZV90aHJlYWQt
PnNwICsgNCAqIENBTExFRV9TQVZFRF9SRUdJU1RFUlMpLAo+ICsgICAgX19hc21fXyBfX3ZvbGF0
aWxlX18gKCJtb3Ygc3AsICUwOyBiciAlMSI6Ogo+ICsgICAgICAgICAgICAiciIoaWRsZV90aHJl
YWQtPnNwICsgc2l6ZW9mKHVuc2lnbmVkIGxvbmcpICogQ0FMTEVFX1NBVkVEX1JFR0lTVEVSUyks
Cj4gICAgICAgICAgICAgICAiciIoaWRsZV90aHJlYWQtPmlwKSk7CgpJIHdhcyBleHBlY3Rpbmcg
dG8gc2VlIG5vIGFzc2VtYmx5IGNvZGUgaW4gdGhlIGNvbW1vbiBkaXJlY3Rvcnkgd2l0aCB0aGUg
Cm5ldyBzcGxpdC4KCj4gICAgICAgLyogTmV2ZXIgYXJyaXZlIGhlcmUhICovCj4gICB9Cj4gCgpD
aGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4v
bGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Tue Apr 17 10:00:43 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 17 Apr 2018 10:00:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8NPk-0006g5-JO; Tue, 17 Apr 2018 10:00:40 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=wi1s=hg=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f8NPj-0006fY-0d
 for minios-devel@lists.xenproject.org; Tue, 17 Apr 2018 10:00:39 +0000
X-Inumbo-ID: 0a150a78-4226-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::622])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 0a150a78-4226-11e8-9728-bc764e045a96;
 Tue, 17 Apr 2018 11:59:39 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=DHeXcJKT2JAJP7h589wFwFr8PSoEl3W7G38XbhfVsqQ=;
 b=gS5zVjSHln/s1eUM+hl1gMzbf/0v4MstkMbbToJEXWSErknLS1iT4Ec/qGVjpi9nGlyir/rK01UFPFYnD5NFfkSuj7HQMpFUzA2GznoeYAptLlauCaV+WyIFHMnq0a5zpzYY4KocSME88fMK/FpndWHYzv3n+oIvKrocB73/Y9g=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0169.eurprd08.prod.outlook.com (10.161.60.156) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.675.14; Tue, 17 Apr 2018 10:00:24 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0675.014; Tue, 17 Apr
 2018 10:00:24 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: "Simon Kuenzer (simon.kuenzer@neclab.eu)" <simon.kuenzer@neclab.eu>
Thread-Topic: Missing ukplat_monotonic_clock for KVM platform
Thread-Index: AdPWMb/yNJ6+Fm2uRCO6ZyGzwR5Icg==
Date: Tue, 17 Apr 2018 10:00:24 +0000
Message-ID: <DB3PR08MB01078D2E7096E174E3CB84D09EB70@DB3PR08MB0107.eurprd08.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0169;
 7:Zth5oYpi6zjwOB9BXdp/lCh4N/Y8tAwXmc+i38XTTn7U/We+5GVE7EzrIz3JyPIIf/klblh1ey6Q9eG0o6gxA5Nxzii6maF2nfiEYoXb610bltg7O2y3Jw4w127VfAlwqg/50S/X7D7+5UBNROtXPPgyARIlvHsCNJDMN7VotwZjg3qNtsF9HW+7ElK1HKE1SLzNL48yiua3AAE8s4XgSuKVZRnW52jDS3787c3e7ZcghmdeeRvj4uE3gqt1bEjz
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0169; 
x-ms-traffictypediagnostic: DB3PR08MB0169:
x-microsoft-antispam-prvs: <DB3PR08MB0169FA0231490738177372539EB70@DB3PR08MB0169.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:;
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(3002001)(3231232)(944501327)(52105095)(93006095)(93001095)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:DB3PR08MB0169; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0169; 
x-forefront-prvs: 0645BEB7AA
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(396003)(346002)(376002)(39860400002)(39380400002)(366004)(199004)(189003)(40434004)(5660300001)(68736007)(53936002)(478600001)(14454004)(7736002)(9686003)(25786009)(99286004)(6436002)(7696005)(6916009)(5890100001)(102836004)(8936002)(97736004)(55016002)(8676002)(86362001)(81156014)(5250100002)(81166006)(316002)(74316002)(3660700001)(26005)(2906002)(105586002)(3846002)(106356001)(6116002)(33656002)(305945005)(72206003)(486006)(55236004)(66066001)(476003)(59450400001)(4326008)(186003)(2900100001)(6506007)(3280700002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0169;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; A:1; MX:1; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: 61415Z9puq5EIhR9wwPgUaKzw0DCfuvjIvtKSMKDTwigfcu5QEScGMGo3vuCNBd9EOQx8gh5s5kwnU5opcjjRTCqLvc4gffw25MXBxDWd4MMbF/gddYcz8FtiwNe/zJnzbNGfyX+AEzTgfiz9/VhxeB+Na+nmkdXV9rB+TrOAPSHdjGtjSnOxBTm1TQxiaMS
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-MS-Office365-Filtering-Correlation-Id: faee1117-b3c9-4529-07c5-08d5a44a09fe
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: faee1117-b3c9-4529-07c5-08d5a44a09fe
X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Apr 2018 10:00:24.3877 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0169
Subject: [Minios-devel] Missing ukplat_monotonic_clock for KVM platform
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2ltb24sCgpXaGlsZSBJIGFtIHRlc3RpbmcgQVJNNjQgS1ZNIHBhdGNoZXMuIEkgZm91bmQg
dGhlIHVrcGxhdF9tb25vdG9uaWNfY2xvY2sgd2FzCm1pc3NpbmcgZm9yIEtWTSBwbGF0Zm9ybXMg
KHg4Nl82NCBhbmQgQVJNKS4gSSBoYXZlIGltcGxlbWVudGVkIHRoaXMgZnVuY3Rpb24KZm9yIEFS
TTY0IEtWTSwgYW5kIHRoZSB0aW1lc3RhbXAgY2FuIHByaW50IHByb3Blcmx5IGZvciBkZWJ1ZyBt
ZXNzYWdlcyBub3cuCkJ1dCBvbiB4ODZfNjQgS1ZNLCB3ZSBzdGlsbCBnZXQgZm9sbG93aW5nIGVy
cm9yLgoKL2hvbWUvd2VpYy9XSVAvdW5pa3JhZnQvdW5pa3JhZnQvYnVpbGQvbGlidWtkZWJ1Zy5v
OiBJbiBmdW5jdGlvbiBgX3ByaW50ZF90aW1lc3RhbXAnOgovaG9tZS93ZWljL1dJUC91bmlrcmFm
dC91bmlrcmFmdC9saWIvdWtkZWJ1Zy9wcmludC5jOjg4OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRv
IGB1a3BsYXRfbW9ub3RvbmljX2Nsb2NrJwogIExEICAgICAgdW5pa3JhZnRfa3ZtLXg4Nl82NAov
aG9tZS93ZWljL1dJUC91bmlrcmFmdC91bmlrcmFmdC9wbGF0L2xpbnV4dS9MaW5rZXIudWs6OTog
cmVjaXBlIGZvciB0YXJnZXQgJy9ob21lL3dlaWMvV0lQL3VuaWtyYWZ0L3VuaWtyYWZ0L2J1aWxk
L3VuaWtyYWZ0X2xpbnV4dS14ODZfNjQnIGZhaWxlZAptYWtlWzFdOiAqKiogWy9ob21lL3dlaWMv
V0lQL3VuaWtyYWZ0L3VuaWtyYWZ0L2J1aWxkL3VuaWtyYWZ0X2xpbnV4dS14ODZfNjRdIEVycm9y
IDEKbWFrZVsxXTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KL2hvbWUvd2Vp
Yy9XSVAvdW5pa3JhZnQvdW5pa3JhZnQvYnVpbGQvdW5pa3JhZnRfa3ZtLXg4Nl82NC5vOiBJbiBm
dW5jdGlvbiBgX3ByaW50ZF90aW1lc3RhbXAnOgovaG9tZS93ZWljL1dJUC91bmlrcmFmdC91bmlr
cmFmdC9saWIvdWtkZWJ1Zy9wcmludC5jOjg4OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGB1a3Bs
YXRfbW9ub3RvbmljX2Nsb2NrJwovaG9tZS93ZWljL1dJUC91bmlrcmFmdC91bmlrcmFmdC9wbGF0
L2t2bS9MaW5rZXIudWs6MTc6IHJlY2lwZSBmb3IgdGFyZ2V0ICcvaG9tZS93ZWljL1dJUC91bmlr
cmFmdC91bmlrcmFmdC9idWlsZC91bmlrcmFmdF9rdm0teDg2XzY0JyBmYWlsZWQKbWFrZVsxXTog
KioqIFsvaG9tZS93ZWljL1dJUC91bmlrcmFmdC91bmlrcmFmdC9idWlsZC91bmlrcmFmdF9rdm0t
eDg2XzY0XSBFcnJvciAxCiAgT0JKQ09QWSB1bmlrcmFmdF94ZW4teDg2XzY0LmRiZwogIFNUUklQ
ICAgdW5pa3JhZnRfeGVuLXg4Nl82NAogIEdaICAgICAgdW5pa3JhZnRfeGVuLXg4Nl82NC5negpN
YWtlZmlsZTozMjogcmVjaXBlIGZvciB0YXJnZXQgJ19hbGwnIGZhaWxlZAptYWtlOiAqKiogW19h
bGxdIEVycm9yIDIKCgpTaG91bGQgd2UgcG9ydCB0c2NjbG9jayBkcml2ZXIgZnJvbSBzb2xvNSB0
byBmaXggdGhpcyBpc3N1ZT8KClJlZ2FyZHMsCldlaSBDaGVuCklNUE9SVEFOVCBOT1RJQ0U6IFRo
ZSBjb250ZW50cyBvZiB0aGlzIGVtYWlsIGFuZCBhbnkgYXR0YWNobWVudHMgYXJlIGNvbmZpZGVu
dGlhbCBhbmQgbWF5IGFsc28gYmUgcHJpdmlsZWdlZC4gSWYgeW91IGFyZSBub3QgdGhlIGludGVu
ZGVkIHJlY2lwaWVudCwgcGxlYXNlIG5vdGlmeSB0aGUgc2VuZGVyIGltbWVkaWF0ZWx5IGFuZCBk
byBub3QgZGlzY2xvc2UgdGhlIGNvbnRlbnRzIHRvIGFueSBvdGhlciBwZXJzb24sIHVzZSBpdCBm
b3IgYW55IHB1cnBvc2UsIG9yIHN0b3JlIG9yIGNvcHkgdGhlIGluZm9ybWF0aW9uIGluIGFueSBt
ZWRpdW0uIFRoYW5rIHlvdS4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhl
bnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5m
by9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Tue Apr 17 10:05:07 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 17 Apr 2018 10:05:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8NU2-0006l3-VI; Tue, 17 Apr 2018 10:05:06 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=25mv=hg=gmail.com=costin.lup@srs-us1.protection.inumbo.net>)
 id 1f8NU2-0006ky-2S
 for minios-devel@lists.xenproject.org; Tue, 17 Apr 2018 10:05:06 +0000
X-Inumbo-ID: aa00eeb7-4226-11e8-9728-bc764e045a96
Received: from mail-wr0-x229.google.com (unknown [2a00:1450:400c:c0c::229])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id aa00eeb7-4226-11e8-9728-bc764e045a96;
 Tue, 17 Apr 2018 12:04:07 +0200 (CEST)
Received: by mail-wr0-x229.google.com with SMTP id d1so33806394wrj.13
 for <minios-devel@lists.xenproject.org>; Tue, 17 Apr 2018 03:05:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=subject:to:cc:references:from:message-id:date:user-agent
 :mime-version:in-reply-to:content-language:content-transfer-encoding;
 bh=gSokPRa60JQ6MoOy4LgrZu1ZZAXWs+O8dMmRvBLnBc4=;
 b=FgvEYzsXNL2CuFvmTfa/otTjMihe2NymGs4Vi/YqWqAYe2neHxkHbWxpJkxaEZlsg0
 ErN1SDkklF8QE6eJqC/8s+9edk2ycCzC/AXKSXBjXhlfJgJMr+RfNjx7DtiDA6P4j/1k
 cUFn36/Vi+WPudm7pcD2Woyf62ys2VcUPNekCZEVHKtMH7w0kLABeNF25BpTq+IzAZjw
 khLHjjEuO5m79ZTTmXWRrSSKEBNIQhH/SzeLw/czNA9Bw1Cci+OAh6f5QzSVACHTvZ1O
 v8ZyOkwxgdm9Rb+NrgQpV5lVGIpzSWVySauLDaVahUBR6Z7n59I800dnXL/CYDue8M73
 kHtA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:subject:to:cc:references:from:message-id:date
 :user-agent:mime-version:in-reply-to:content-language
 :content-transfer-encoding;
 bh=gSokPRa60JQ6MoOy4LgrZu1ZZAXWs+O8dMmRvBLnBc4=;
 b=R74D6VWJWJQ0oTbXCJP+lS1xlVh6l5u9FSiR/KrAv2+cPx+zpvY93w30fqB9hESulP
 9wcvPoNmqPKBG6IzI5dvQ6f14G145IPCTOTcF7SrIUi0oBq9OU0M9KOdnGslQxBfnbQ1
 BF+RE1QEtyjaBrY6t7FDZUwQkR5quEdhEMSgrZOalQHnhNW3oHORWU587KOTlPHvMScV
 hrFiGc/Pf4mhDkJ7VNdkJIyF6FyJcvSukjbDyLoYakkq50x7I69kkpuaRdcbDG8rqIsA
 nbreB91ZSnXhMki8AoRCW1M/Ene64DJ1ZEgvwjIolz7xwGA4tjz7qJmAMFE4CYrLPoQ6
 Vw+Q==
X-Gm-Message-State: ALQs6tCtXv//97GxqPg5/Hg8c183e0k/LD1G3vyVTnRnvRDbKMQejCwk
 59pXnNNeFmmqv+p6UaADhLdM0L7W
X-Google-Smtp-Source: AIpwx48OHsO7OhqEP2fufFVpD7ERxvbexPDNlgoSHBQpUUV+PkptiBXgEfJ0AO+ZTTFAT/KvBwRslw==
X-Received: by 10.28.40.212 with SMTP id o203mr529637wmo.92.1523959503377;
 Tue, 17 Apr 2018 03:05:03 -0700 (PDT)
Received: from [172.19.2.145] ([141.85.233.142])
 by smtp.gmail.com with ESMTPSA id n143sm12613360wmd.29.2018.04.17.03.05.02
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 17 Apr 2018 03:05:02 -0700 (PDT)
To: Wei Chen <Wei.Chen@arm.com>,
 "Simon Kuenzer (simon.kuenzer@neclab.eu)" <simon.kuenzer@neclab.eu>
References: <DB3PR08MB01078D2E7096E174E3CB84D09EB70@DB3PR08MB0107.eurprd08.prod.outlook.com>
From: Costin Lupu <costin.lup@gmail.com>
Message-ID: <f4f0fadc-a40b-9113-3d28-7107a4ad6adc@gmail.com>
Date: Tue, 17 Apr 2018 13:05:01 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.4.0
MIME-Version: 1.0
In-Reply-To: <DB3PR08MB01078D2E7096E174E3CB84D09EB70@DB3PR08MB0107.eurprd08.prod.outlook.com>
Content-Language: en-US
Subject: Re: [Minios-devel] Missing ukplat_monotonic_clock for KVM platform
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

Ck9uIDA0LzE3LzIwMTggMDE6MDAgUE0sIFdlaSBDaGVuIHdyb3RlOgo+IEhpIFNpbW9uLAo+IAo+
IFdoaWxlIEkgYW0gdGVzdGluZyBBUk02NCBLVk0gcGF0Y2hlcy4gSSBmb3VuZCB0aGUgdWtwbGF0
X21vbm90b25pY19jbG9jayB3YXMKPiBtaXNzaW5nIGZvciBLVk0gcGxhdGZvcm1zICh4ODZfNjQg
YW5kIEFSTSkuIEkgaGF2ZSBpbXBsZW1lbnRlZCB0aGlzIGZ1bmN0aW9uCj4gZm9yIEFSTTY0IEtW
TSwgYW5kIHRoZSB0aW1lc3RhbXAgY2FuIHByaW50IHByb3Blcmx5IGZvciBkZWJ1ZyBtZXNzYWdl
cyBub3cuCj4gQnV0IG9uIHg4Nl82NCBLVk0sIHdlIHN0aWxsIGdldCBmb2xsb3dpbmcgZXJyb3Iu
Cj4gCj4gL2hvbWUvd2VpYy9XSVAvdW5pa3JhZnQvdW5pa3JhZnQvYnVpbGQvbGlidWtkZWJ1Zy5v
OiBJbiBmdW5jdGlvbiBgX3ByaW50ZF90aW1lc3RhbXAnOgo+IC9ob21lL3dlaWMvV0lQL3VuaWty
YWZ0L3VuaWtyYWZ0L2xpYi91a2RlYnVnL3ByaW50LmM6ODg6IHVuZGVmaW5lZCByZWZlcmVuY2Ug
dG8gYHVrcGxhdF9tb25vdG9uaWNfY2xvY2snCj4gICBMRCAgICAgIHVuaWtyYWZ0X2t2bS14ODZf
NjQKPiAvaG9tZS93ZWljL1dJUC91bmlrcmFmdC91bmlrcmFmdC9wbGF0L2xpbnV4dS9MaW5rZXIu
dWs6OTogcmVjaXBlIGZvciB0YXJnZXQgJy9ob21lL3dlaWMvV0lQL3VuaWtyYWZ0L3VuaWtyYWZ0
L2J1aWxkL3VuaWtyYWZ0X2xpbnV4dS14ODZfNjQnIGZhaWxlZAo+IG1ha2VbMV06ICoqKiBbL2hv
bWUvd2VpYy9XSVAvdW5pa3JhZnQvdW5pa3JhZnQvYnVpbGQvdW5pa3JhZnRfbGludXh1LXg4Nl82
NF0gRXJyb3IgMQo+IG1ha2VbMV06ICoqKiBXYWl0aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMuLi4u
Cj4gL2hvbWUvd2VpYy9XSVAvdW5pa3JhZnQvdW5pa3JhZnQvYnVpbGQvdW5pa3JhZnRfa3ZtLXg4
Nl82NC5vOiBJbiBmdW5jdGlvbiBgX3ByaW50ZF90aW1lc3RhbXAnOgo+IC9ob21lL3dlaWMvV0lQ
L3VuaWtyYWZ0L3VuaWtyYWZ0L2xpYi91a2RlYnVnL3ByaW50LmM6ODg6IHVuZGVmaW5lZCByZWZl
cmVuY2UgdG8gYHVrcGxhdF9tb25vdG9uaWNfY2xvY2snCj4gL2hvbWUvd2VpYy9XSVAvdW5pa3Jh
ZnQvdW5pa3JhZnQvcGxhdC9rdm0vTGlua2VyLnVrOjE3OiByZWNpcGUgZm9yIHRhcmdldCAnL2hv
bWUvd2VpYy9XSVAvdW5pa3JhZnQvdW5pa3JhZnQvYnVpbGQvdW5pa3JhZnRfa3ZtLXg4Nl82NCcg
ZmFpbGVkCj4gbWFrZVsxXTogKioqIFsvaG9tZS93ZWljL1dJUC91bmlrcmFmdC91bmlrcmFmdC9i
dWlsZC91bmlrcmFmdF9rdm0teDg2XzY0XSBFcnJvciAxCj4gICBPQkpDT1BZIHVuaWtyYWZ0X3hl
bi14ODZfNjQuZGJnCj4gICBTVFJJUCAgIHVuaWtyYWZ0X3hlbi14ODZfNjQKPiAgIEdaICAgICAg
dW5pa3JhZnRfeGVuLXg4Nl82NC5nego+IE1ha2VmaWxlOjMyOiByZWNpcGUgZm9yIHRhcmdldCAn
X2FsbCcgZmFpbGVkCj4gbWFrZTogKioqIFtfYWxsXSBFcnJvciAyCj4gCj4gCj4gU2hvdWxkIHdl
IHBvcnQgdHNjY2xvY2sgZHJpdmVyIGZyb20gc29sbzUgdG8gZml4IHRoaXMgaXNzdWU/CgpIaSBX
ZWkhIFRoZXJlIGFscmVhZHkgaXMgYSBwZW5kaW5nIHBhdGNoIHNlcmllcyAoRW5hYmxlIHNjaGVk
dWxpbmcgb24KS1ZNKSBjb250YWluaW5nIHRoZSB0c2NjbG9jayBkcml2ZXIgaW1wbGVtZW50YXRp
b24gKHBhdGNoICdwbGF0L2t2bTogQWRkCktWTSAoeDg2XzY0KSB0aW1lciBzdXBwb3J0JykuCgpD
aGVlcnMsCkNvc3RpbgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJv
amVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21p
bmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 01:14:17 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 01:14:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8bfq-0005f2-Qq; Wed, 18 Apr 2018 01:14:14 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ikyy=hh=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f8bfo-0005ex-OP
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 01:14:12 +0000
X-Inumbo-ID: a90ad176-42a5-11e8-9728-bc764e045a96
Received: from mail-lf0-x234.google.com (unknown [2a00:1450:4010:c07::234])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id a90ad176-42a5-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 03:13:11 +0200 (CEST)
Received: by mail-lf0-x234.google.com with SMTP id p142-v6so131458lfd.6
 for <minios-devel@lists.xenproject.org>; Tue, 17 Apr 2018 18:14:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to;
 bh=mnqEWlN6Dh4lOmck5++REMpyo+J4UdlpInLCfNAS06Y=;
 b=nmZ5vmun8QGcIMdOun4H8Dtg62sWDZ2nSze5znAd9RVGr22DSAIboToqG0fFVSThs6
 1w9owRVeammcB1VW18XT0mQLHxrKOJqWguH0w1jcf9MMB3++WWsaayZQjibAHetrHdeo
 8WWXr5mixzskBjhvW+9wOLpprb0YCO8ro50OmAO3OwzGeifPPrY9ba4gUGPiqj8dg8mQ
 KYrF929NWkrMDNguQGg8q+GxpRjMXwwFLUUNPVB5I17XDP30gRfvZ/rihWUa2C08aRCN
 eCIATHXbT/0UqZJFNL5Nq9plIDCb+YF5txGOAbvM32kkZSq0twV1upz+RDRj7g+sULN2
 4q0A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=mnqEWlN6Dh4lOmck5++REMpyo+J4UdlpInLCfNAS06Y=;
 b=uhEshnYmct4+WBCcw3gQ3TevGj442lHywU9NDG5dNCqyjhsyqf8QccAHcztLjMsw99
 rU3cu0w5kVLh0p+l8uakzSzZEQjJy41oJi1Xf4N4uWscgzNrP2kFwMEBNurXxoLqEobf
 Wv+OacWb2XkQpCZvm5vnMcDQlkDFl8Y8APITIWA9pK1YdLjHktVk7KYP30Gs2Oiq+xKA
 OHSGICKU4uF71ivskLBlTysNpLMWa1DD4cCzvqXGz26hQk/qCgbBbaub4rEHVM5OqxMy
 wbYibEK5sqdmLagrirXAAmolvJe69kUDkwb2AHxPrgsI9fWA0i5hPQRgQmUYJTY4NMLI
 9uXQ==
X-Gm-Message-State: ALQs6tBiVmcstnUA64XujLCfjwO5hE5ZQ8Mcpfhrrzbty/ZYWGtU0Uta
 gILFSAUQgQl7BU31srZ1tCA/FP/koFdzDirMAic=
X-Google-Smtp-Source: AIpwx481Tw3ECHpZ3L85iVIpXsu1HO9NKtTfra5u/ylWX0sxF0UipYWKt0yI+s8gilAW7gnmq0HD1hO2+kmtsiHNCyc=
X-Received: by 2002:a19:4847:: with SMTP id v68-v6mr21310lfa.63.1524014048257; 
 Tue, 17 Apr 2018 18:14:08 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:d899:0:0:0:0:0 with HTTP; Tue, 17 Apr 2018 18:14:07
 -0700 (PDT)
In-Reply-To: <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
 <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
 <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Wed, 18 Apr 2018 06:44:07 +0530
Message-ID: <CAHP4M8VSHMD5wK1bytCyGThnPyhbDxk0RKJw2DmJToFF+j3p1A@mail.gmail.com>
To: minios-devel@lists.xenproject.org
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============6039302479487847486=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============6039302479487847486==
Content-Type: multipart/alternative; boundary="000000000000faab49056a152bce"

--000000000000faab49056a152bce
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Earnest request for some help, please ..

On Sun, Apr 15, 2018 at 7:05 PM, Ajay Garg <ajaygargnsit@gmail.com> wrote:

> Ideas please?
> Any pointers to any existing example usage of linking static-libraries
> would be useful.
>
> On Sat, Apr 14, 2018 at 6:15 PM, Ajay Garg <ajaygargnsit@gmail.com> wrote=
:
>
>> Very surprisingly, the missing functions (start_time, end_time) are
>> actually present in https://github.com/tonyho/Core
>> Mark/blob/master/core_main.c.
>> But in the make-output, fdt_wip.c is being listed.
>>
>>
>> On Sat, Apr 14, 2018 at 9:22 AM, Ajay Garg <ajaygargnsit@gmail.com>
>> wrote:
>>
>>> Hi All.
>>>
>>> I am trying to integrate coremark-app in unikraft for x86_64.
>>> It requires static linking to librt.a and libpthread.a; however seems
>>> they are not being picked up.
>>>
>>>
>>> Following is the Makefile.uk :
>>>
>>> ####################################################################
>>> $(eval $(call addlib,appcoremark))
>>>
>>> APPCOREMARK_SRCS-y              +=3D $(APPCOREMARK_BASE)/core_main.
>>> c                                  \
>>>
>>> $(APPCOREMARK_BASE)/core_list_join.c                              \
>>>
>>> $(APPCOREMARK_BASE)/core_util.c                                     \
>>>
>>> $(APPCOREMARK_BASE)/core_state.c                                  \
>>>
>>> $(APPCOREMARK_BASE)/core_matrix.c                                \
>>>
>>>
>>> \
>>>
>>> $(APPCOREMARK_BASE)/linux64/core_portme.c
>>>
>>> APPCOREMARK_OBJS-y               +=3D /usr/lib/x86_64-linux-gnu/libr
>>> t.a                                                \
>>>
>>> /usr/lib/x86_64-linux-gnu/libpthread.a
>>>
>>> APPCOREMARK_CINCLUDES-y     +=3D-I$(APPCOREMARK_BASE)
>>>                                              \
>>>
>>> -I$(APPCOREMARK_BASE)/linux64                                        \
>>>
>>> -I$(APPCOREMARK_BASE)/../../unikraft/lib/nolibc/include/sys   \
>>>                                                           -I/usr/includ=
e
>>> ####################################################################
>>>
>>>
>>> Following is the compilation-run :
>>>
>>> ####################################################################
>>> aajay@latitude-3480:~/unikraft/apps/coremark$ make
>>> make[1]: Entering directory '/home/ajay/unikraft/unikraft'
>>>   CP      config
>>>   CC      libxenplat: hypervisor.o
>>>   CC      libxenplat: memory.o
>>>   CC      libxenplat: setup.o
>>>   CC      libxenplat: traps.o
>>>   AS      libxenplat: entry64.o
>>>   CC      libxenplat: mm.o
>>>   CC      libxenplat: arch_events.o
>>>   CC      libxenplat: arch_time.o
>>>   CC      libxenplat: lcpu.o
>>>   CC      libxenplat: console.o
>>>   CC      libxenplat: shutdown.o
>>>   CC      libxenplat: events.o
>>>   LD      libxenplat.ld.o
>>>   OBJCOPY libxenplat.o
>>>   CC      appcoremark: core_main.o
>>> /home/ajay/unikraft/apps/coremark/core_main.c: In function =E2=80=98mai=
n=E2=80=99:
>>> /home/ajay/unikraft/apps/coremark/core_main.c:292:12: warning: format
>>> =E2=80=98%lu=E2=80=99 expects argument of type =E2=80=98long unsigned i=
nt=E2=80=99, but argument 2 has type
>>> =E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
>>>   ee_printf("CoreMark Size    : %lu\n",(ee_u32)results[0].size);
>>>             ^
>>> /home/ajay/unikraft/apps/coremark/core_main.c:293:12: warning: format
>>> =E2=80=98%lu=E2=80=99 expects argument of type =E2=80=98long unsigned i=
nt=E2=80=99, but argument 2 has type
>>> =E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
>>>   ee_printf("Total ticks      : %lu\n",(ee_u32)total_time);
>>>             ^
>>> /home/ajay/unikraft/apps/coremark/core_main.c:308:12: warning: format
>>> =E2=80=98%lu=E2=80=99 expects argument of type =E2=80=98long unsigned i=
nt=E2=80=99, but argument 2 has type
>>> =E2=80=98unsigned int=E2=80=99 [-Wformat=3D]
>>>   ee_printf("Iterations       : %lu\n",(ee_u32)default_num_con
>>> texts*results[0].iterations);
>>>             ^
>>>   CC      appcoremark: core_list_join.o
>>>   CC      appcoremark: core_util.o
>>>   CC      appcoremark: core_state.o
>>>   CC      appcoremark: core_matrix.o
>>>   CC      appcoremark: core_portme.o
>>> In file included from /usr/include/features.h:367:0,
>>>                  from /usr/include/malloc.h:22,
>>>                  from /home/ajay/unikraft/apps/corem
>>> ark/linux64/core_portme.c:18:
>>> /usr/include/sys/cdefs.h:285:0: warning: "__nonnull" redefined
>>>  # define __nonnull(params) __attribute__ ((__nonnull__ params))
>>>  ^
>>> In file included from /home/ajay/unikraft/unikraft/l
>>> ib/nolibc/include/stdio.h:41:0,
>>>                  from /home/ajay/unikraft/apps/corem
>>> ark/linux64/core_portme.c:9:
>>> /home/ajay/unikraft/unikraft/include/uk/essentials.h:59:0: note: this
>>> is the location of the previous definition
>>>  #define __nonnull              __attribute__((nonnull))
>>>  ^
>>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c: In function
>>> =E2=80=98start_time=E2=80=99:
>>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:93:24: warning:
>>> implicit declaration of function =E2=80=98clock_gettime=E2=80=99
>>> [-Wimplicit-function-declaration]
>>>   #define GETMYTIME(_t) clock_gettime(0,_t)
>>>                         ^
>>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:116:2: note: in
>>> expansion of macro =E2=80=98GETMYTIME=E2=80=99
>>>   GETMYTIME(&start_time_val );
>>>   ^
>>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c: In function
>>> =E2=80=98portable_init=E2=80=99:
>>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:172:43:
>>> warning: unused parameter =E2=80=98argc=E2=80=99 [-Wunused-parameter]
>>>  void portable_init(core_portable *p, int *argc, char *argv[])
>>>                                            ^
>>> /home/ajay/unikraft/apps/coremark/linux64/core_portme.c:172:55:
>>> warning: unused parameter =E2=80=98argv=E2=80=99 [-Wunused-parameter]
>>>  void portable_init(core_portable *p, int *argc, char *argv[])
>>>                                                        ^
>>>   LD      appcoremark.ld.o
>>>   OBJCOPY appcoremark.o
>>>   CC      libukboot: boot.o
>>>   LD      libukboot.ld.o
>>>   OBJCOPY libukboot.o
>>>   CC      libukdebug: print.o
>>>   CC      libukdebug: hexdump.o
>>>   LD      libukdebug.ld.o
>>>   OBJCOPY libukdebug.o
>>>   CC      libukargparse: argparse.o
>>>   LD      libukargparse.ld.o
>>>   OBJCOPY libukargparse.o
>>>   CC      libnolibc: errno.o
>>>   CC      libnolibc: stdio.o
>>>   CC      libnolibc: ctype.o
>>>   CC      libnolibc: stdlib.o
>>>   CC      libnolibc: string.o
>>>   CC      libnolibc: getopt.o
>>>   CC      libnolibc: malloc.o
>>>   LD      libnolibc.ld.o
>>>   OBJCOPY libnolibc.o
>>>   CC      libukalloc: alloc.o
>>>   LD      libukalloc.ld.o
>>>   OBJCOPY libukalloc.o
>>>   CC      libukallocbbuddy: bbuddy.o
>>>   LD      libukallocbbuddy.ld.o
>>>   OBJCOPY libukallocbbuddy.o
>>>   CC      libfdt: fdt.o
>>>   CC      libfdt: fdt_addresses.o
>>>   CC      libfdt: fdt_empty_tree.o
>>>   CC      libfdt: fdt_overlay.o
>>>   CC      libfdt: fdt_ro.o
>>>   CC      libfdt: fdt_rw.o
>>>   CC      libfdt: fdt_strerror.o
>>>   CC      libfdt: fdt_sw.o
>>>   CC      libfdt: fdt_wip.o
>>>   LD      libfdt.ld.o
>>>   OBJCOPY libfdt.o
>>>   LD      coremark_xen-x86_64.ld.o
>>>   OBJCOPY coremark_xen-x86_64.o
>>>   LD      coremark_xen-x86_64
>>> /home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In
>>> function `iterate':
>>> fdt_wip.c:(.text+0x5719): undefined reference to `sched_yield'
>>> /home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In
>>> function `start_time':
>>> fdt_wip.c:(.text+0x6e2f): undefined reference to `clock_gettime'
>>> /home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64.o: In
>>> function `stop_time':
>>> fdt_wip.c:(.text+0x6e4f): undefined reference to `clock_gettime'
>>> /home/ajay/unikraft/unikraft/plat/xen/Linker.uk:22: recipe for target
>>> '/home/ajay/unikraft/apps/coremark/build/coremark_xen-x86_64' failed
>>> make[2]: *** [/home/ajay/unikraft/apps/core
>>> mark/build/coremark_xen-x86_64] Error 1
>>> Makefile:32: recipe for target '_all' failed
>>> make[1]: *** [_all] Error 2
>>> make[1]: Leaving directory '/home/ajay/unikraft/unikraft'
>>> Makefile:6: recipe for target 'all' failed
>>> make: *** [all] Error 2
>>> ajay@latitude-3480:~/unikraft/apps/coremark$
>>> ####################################################################
>>>
>>>
>>> I tried looking for any examples of linkage of OBJS files, but no
>>> example (for OBJS) is present in any of plat/app folder.
>>>
>>> Kindly help me in fixing this.
>>>
>>>
>>>
>>> Thanks and Regards,
>>> Ajay
>>>
>>
>>
>>
>> --
>> Regards,
>> Ajay
>>
>
>
>
> --
> Regards,
> Ajay
>



--=20
Regards,
Ajay

--000000000000faab49056a152bce
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: base64

PGRpdiBkaXI9Imx0ciI+RWFybmVzdCByZXF1ZXN0IGZvciBzb21lIGhlbHAsIHBsZWFzZSAuLjxi
cj48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSI+PGJyPjxkaXYgY2xhc3M9ImdtYWlsX3F1
b3RlIj5PbiBTdW4sIEFwciAxNSwgMjAxOCBhdCA3OjA1IFBNLCBBamF5IEdhcmcgPHNwYW4gZGly
PSJsdHIiPiZsdDs8YSBocmVmPSJtYWlsdG86YWpheWdhcmduc2l0QGdtYWlsLmNvbSIgdGFyZ2V0
PSJfYmxhbmsiPmFqYXlnYXJnbnNpdEBnbWFpbC5jb208L2E+Jmd0Ozwvc3Bhbj4gd3JvdGU6PGJy
PjxibG9ja3F1b3RlIGNsYXNzPSJnbWFpbF9xdW90ZSIgc3R5bGU9Im1hcmdpbjowIDAgMCAuOGV4
O2JvcmRlci1sZWZ0OjFweCAjY2NjIHNvbGlkO3BhZGRpbmctbGVmdDoxZXgiPjxkaXYgZGlyPSJs
dHIiPjxkaXY+SWRlYXMgcGxlYXNlPzxicj48L2Rpdj5BbnkgcG9pbnRlcnMgdG8gYW55IGV4aXN0
aW5nIGV4YW1wbGUgdXNhZ2Ugb2YgbGlua2luZyBzdGF0aWMtbGlicmFyaWVzIHdvdWxkIGJlIHVz
ZWZ1bC48YnI+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZXh0cmEiPjxkaXY+PGRpdiBjbGFzcz0i
aDUiPjxicj48ZGl2IGNsYXNzPSJnbWFpbF9xdW90ZSI+T24gU2F0LCBBcHIgMTQsIDIwMTggYXQg
NjoxNSBQTSwgQWpheSBHYXJnIDxzcGFuIGRpcj0ibHRyIj4mbHQ7PGEgaHJlZj0ibWFpbHRvOmFq
YXlnYXJnbnNpdEBnbWFpbC5jb20iIHRhcmdldD0iX2JsYW5rIj5hamF5Z2FyZ25zaXRAZ21haWwu
Y29tPC9hPiZndDs8L3NwYW4+IHdyb3RlOjxicj48YmxvY2txdW90ZSBjbGFzcz0iZ21haWxfcXVv
dGUiIHN0eWxlPSJtYXJnaW46MCAwIDAgLjhleDtib3JkZXItbGVmdDoxcHggI2NjYyBzb2xpZDtw
YWRkaW5nLWxlZnQ6MWV4Ij48ZGl2IGRpcj0ibHRyIj48ZGl2PjxkaXY+VmVyeSBzdXJwcmlzaW5n
bHksIHRoZSBtaXNzaW5nIGZ1bmN0aW9ucyAoc3RhcnRfdGltZSwgZW5kX3RpbWUpIGFyZSBhY3R1
YWxseSBwcmVzZW50IGluIDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS90b255aG8vQ29yZU1h
cmsvYmxvYi9tYXN0ZXIvY29yZV9tYWluLmMiIHRhcmdldD0iX2JsYW5rIj5odHRwczovL2dpdGh1
Yi5jb20vdG9ueWhvL0NvcmU8d2JyPk1hcmsvYmxvYi9tYXN0ZXIvY29yZV9tYWluLmM8L2E+Ljxi
cj48L2Rpdj5CdXQgaW4gdGhlIG1ha2Utb3V0cHV0LCBmZHRfd2lwLmMgaXMgYmVpbmcgbGlzdGVk
Ljxicj48YnI+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZXh0cmEiPjxkaXY+PGRpdiBj
bGFzcz0ibV8tMTQyMzc3ODc3MjM4NTczMTMyMmg1Ij48YnI+PGRpdiBjbGFzcz0iZ21haWxfcXVv
dGUiPk9uIFNhdCwgQXByIDE0LCAyMDE4IGF0IDk6MjIgQU0sIEFqYXkgR2FyZyA8c3BhbiBkaXI9
Imx0ciI+Jmx0OzxhIGhyZWY9Im1haWx0bzphamF5Z2FyZ25zaXRAZ21haWwuY29tIiB0YXJnZXQ9
Il9ibGFuayI+YWpheWdhcmduc2l0QGdtYWlsLmNvbTwvYT4mZ3Q7PC9zcGFuPiB3cm90ZTo8YnI+
PGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7
Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleCI+PGRpdiBkaXI9Imx0
ciI+PGRpdj48ZGl2PkhpIEFsbC48YnI+PGJyPkkgYW0gdHJ5aW5nIHRvIGludGVncmF0ZSBjb3Jl
bWFyay1hcHAgaW4gdW5pa3JhZnQgZm9yIHg4Nl82NC48YnI+PC9kaXY+SXQgcmVxdWlyZXMgc3Rh
dGljIGxpbmtpbmcgdG8gbGlicnQuYSBhbmQgbGlicHRocmVhZC5hOyBob3dldmVyIHNlZW1zwqAg
dGhleSBhcmUgbm90IGJlaW5nIHBpY2tlZCB1cC48YnI+PGJyPjxicj48L2Rpdj5Gb2xsb3dpbmcg
aXMgdGhlIE1ha2VmaWxlLnVrIDo8YnI+PGJyPiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
Izx3YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPHdicj4jIyMjIyMjIzxicj4kKGV2
YWwgJChjYWxsIGFkZGxpYixhcHBjb3JlbWFyaykpPGJyPjxicj5BUFBDT1JFTUFSS19TUkNTLXnC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKgICs9ICQoQVBQQ09SRU1BUktfQkFTRSkvY29y
ZV9tYWluLjx3YnI+Y8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKgIFw8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgJChBUFBDT1JFTUFSS19CQVNF
KS9jb3JlX2xpc3RfPHdicj5qb2luLmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKgwqAgXDxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAkKEFQUENPUkVNQVJLX0JB
U0UpL2NvcmVfdXRpbC48d2JyPmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICQoQVBQ
Q09SRU1BUktfQkFTRSkvY29yZV9zdGF0ZTx3YnI+LmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoCBcPGJyPsKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3
YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
ICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9tYXRyaTx3YnI+eC5jwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoCBcPGJyPsKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFw8YnI+wqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgJChBUFBDT1JFTUFS
S19CQVNFKS9saW51eDY0L2NvPHdicj5yZV9wb3J0bWUuYzxicj48YnI+QVBQQ09SRU1BUktfT0JK
Uy15wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgICs9IC91c3IvbGliL3g4Nl82NC1s
aW51eC1nbnUvbGlicjx3YnI+dC5hwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgIFw8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoCAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2xpYnA8d2JyPnRo
cmVhZC5hPGJyPjxicj5BUFBDT1JFTUFSS19DSU5DTFVERVMtecKgwqDCoMKgICs9LUkkKEFQUENP
UkVNQVJLX0JBU0UpwqDCoMKgwqDCoMKgwqA8d2JyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgIC1JJChBUFBDT1JFTUFSS19CQVNFKS9saW51eDY0wqA8d2Jy
PsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoCBcPGJyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoDx3YnI+wqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIC1JJChBUFBDT1JFTUFSS19CQVNF
KS8uLi8uLi91bjx3YnI+aWtyYWZ0L2xpYi9ub2xpYmMvaW5jbHVkZS9zeXPCoDx3YnI+wqAgXDxi
cj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqA8d2JyPsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoCAtSS91c3IvaW5jbHVkZTxicj4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8
d2JyPiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIzx3YnI+IyMjIyMjIyM8YnI+PGRpdj48
ZGl2Pjxicj48YnI+Rm9sbG93aW5nIGlzIHRoZSBjb21waWxhdGlvbi1ydW4gOjxicj48YnI+IyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPHdicj4jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyM8d2JyPiMjIyMjIyMjPGJyPmFhamF5QGxhdGl0dWRlLTM0ODA6fi91bmlrcmFmdDx3YnI+
L2FwcHMvY29yZW1hcmskIG1ha2U8YnI+bWFrZVsxXTogRW50ZXJpbmcgZGlyZWN0b3J5ICYjMzk7
L2hvbWUvYWpheS91bmlrcmFmdC91bmlrcmFmdCYjMzk7PGJyPsKgIENQwqDCoMKgwqDCoCBjb25m
aWc8YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IGh5cGVydmlzb3Iubzxicj7CoCBDQ8Kg
wqDCoMKgwqAgbGlieGVucGxhdDogbWVtb3J5Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhlbnBs
YXQ6IHNldHVwLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IHRyYXBzLm88YnI+wqAg
QVPCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IGVudHJ5NjQubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGli
eGVucGxhdDogbW0ubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogYXJjaF9ldmVudHMu
bzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogYXJjaF90aW1lLm88YnI+wqAgQ0PCoMKg
wqDCoMKgIGxpYnhlbnBsYXQ6IGxjcHUubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDog
Y29uc29sZS5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJ4ZW5wbGF0OiBzaHV0ZG93bi5vPGJyPsKg
IENDwqDCoMKgwqDCoCBsaWJ4ZW5wbGF0OiBldmVudHMubzxicj7CoCBMRMKgwqDCoMKgwqAgbGli
eGVucGxhdC5sZC5vPGJyPsKgIE9CSkNPUFkgbGlieGVucGxhdC5vPGJyPsKgIENDwqDCoMKgwqDC
oCBhcHBjb3JlbWFyazogY29yZV9tYWluLm88YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2Nv
cmVtPHdicj5hcmsvY29yZV9tYWluLmM6IEluIGZ1bmN0aW9uIOKAmG1haW7igJk6PGJyPi9ob21l
L2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbTx3YnI+YXJrL2NvcmVfbWFpbi5jOjI5MjoxMjogd2Fy
bmluZzogZm9ybWF0IOKAmCVsdeKAmSBleHBlY3RzIGFyZ3VtZW50IG9mIHR5cGUg4oCYbG9uZyB1
bnNpZ25lZCBpbnTigJksIGJ1dCBhcmd1bWVudCAyIGhhcyB0eXBlIOKAmHVuc2lnbmVkIGludOKA
mSBbLVdmb3JtYXQ9XTxicj7CoCBlZV9wcmludGYoJnF1b3Q7Q29yZU1hcmsgU2l6ZcKgwqDCoCA6
ICVsdVxuJnF1b3Q7LChlZV91MzIpcmVzdWx0c1swXS5zaXplPHdicj4pOzxicj7CoMKgwqDCoMKg
wqDCoMKgwqDCoMKgIF48YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtPHdicj5hcmsv
Y29yZV9tYWluLmM6MjkzOjEyOiB3YXJuaW5nOiBmb3JtYXQg4oCYJWx14oCZIGV4cGVjdHMgYXJn
dW1lbnQgb2YgdHlwZSDigJhsb25nIHVuc2lnbmVkIGludOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFz
IHR5cGUg4oCYdW5zaWduZWQgaW504oCZIFstV2Zvcm1hdD1dPGJyPsKgIGVlX3ByaW50ZigmcXVv
dDtUb3RhbCB0aWNrc8KgwqDCoMKgwqAgOiAlbHVcbiZxdW90OywoZWVfdTMyKXRvdGFsX3RpbWUp
Ozxicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF48YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBz
L2NvcmVtPHdicj5hcmsvY29yZV9tYWluLmM6MzA4OjEyOiB3YXJuaW5nOiBmb3JtYXQg4oCYJWx1
4oCZIGV4cGVjdHMgYXJndW1lbnQgb2YgdHlwZSDigJhsb25nIHVuc2lnbmVkIGludOKAmSwgYnV0
IGFyZ3VtZW50IDIgaGFzIHR5cGUg4oCYdW5zaWduZWQgaW504oCZIFstV2Zvcm1hdD1dPGJyPsKg
IGVlX3ByaW50ZigmcXVvdDtJdGVyYXRpb25zwqDCoMKgwqDCoMKgIDogJWx1XG4mcXVvdDssKGVl
X3UzMilkZWZhdWx0X251bV9jb248d2JyPnRleHRzKnJlc3VsdHNbMF0uaXRlcmF0aW9ucyk7PGJy
PsKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXjxicj7CoCBDQ8KgwqDCoMKgwqAgYXBwY29yZW1hcms6
IGNvcmVfbGlzdF9qb2luLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGFwcGNvcmVtYXJrOiBjb3JlX3V0
aWwubzxicj7CoCBDQ8KgwqDCoMKgwqAgYXBwY29yZW1hcms6IGNvcmVfc3RhdGUubzxicj7CoCBD
Q8KgwqDCoMKgwqAgYXBwY29yZW1hcms6IGNvcmVfbWF0cml4Lm88YnI+wqAgQ0PCoMKgwqDCoMKg
IGFwcGNvcmVtYXJrOiBjb3JlX3BvcnRtZS5vPGJyPkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdXNy
L2luY2x1ZGUvZmVhdHVyZXMuaDozNjc6MCw8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqAgZnJvbSAvdXNyL2luY2x1ZGUvbWFsbG9jLmg6MjIsPGJyPsKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgIGZyb20gL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtPHdicj5h
cmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOjE4Ojxicj4vdXNyL2luY2x1ZGUvc3lzL2NkZWZzLmg6
Mjg1OjA8d2JyPjogd2FybmluZzogJnF1b3Q7X19ub25udWxsJnF1b3Q7IHJlZGVmaW5lZDxicj7C
oCMgZGVmaW5lIF9fbm9ubnVsbChwYXJhbXMpIF9fYXR0cmlidXRlX18gKChfX25vbm51bGxfXyBw
YXJhbXMpKTxicj7CoF48YnI+SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC9ob21lL2FqYXkvdW5pa3Jh
ZnQvdW5pa3JhZnQvbDx3YnI+aWIvbm9saWJjL2luY2x1ZGUvc3RkaW8uaDo0MTowPHdicj4sPGJy
PsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZyb20gL2hvbWUvYWpheS91bmlrcmFm
dC9hcHBzL2NvcmVtPHdicj5hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOjk6PGJyPi9ob21lL2Fq
YXkvdW5pa3JhZnQvdW5pa3JhZnQvaTx3YnI+bmNsdWRlL3VrL2Vzc2VudGlhbHMuaDo1OTowOiBu
b3RlOiB0aGlzIGlzIHRoZSBsb2NhdGlvbiBvZiB0aGUgcHJldmlvdXMgZGVmaW5pdGlvbjxicj7C
oCNkZWZpbmUgX19ub25udWxswqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgX19hdHRyaWJ1dGVf
Xygobm9ubnVsbCkpPGJyPsKgXjxicj4vaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW08d2Jy
PmFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6IEluIGZ1bmN0aW9uIOKAmHN0YXJ0X3RpbWXigJk6
PGJyPi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbTx3YnI+YXJrL2xpbnV4NjQvY29yZV9w
b3J0bWUuYzo5MzoyPHdicj40OiB3YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5j
dGlvbiDigJhjbG9ja19nZXR0aW1l4oCZIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aTx3
YnI+b25dPGJyPsKgICNkZWZpbmUgR0VUTVlUSU1FKF90KSBjbG9ja19nZXR0aW1lKDAsX3QpPGJy
PsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXjxicj4vaG9t
ZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW08d2JyPmFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6
MTE2Ojx3YnI+Mjogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmEdFVE1ZVElNReKAmTxi
cj7CoCBHRVRNWVRJTUUoJmFtcDtzdGFydF90aW1lX3ZhbCApO8KgwqDCoMKgIMKgPGJyPsKgIF48
YnI+L2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtPHdicj5hcmsvbGludXg2NC9jb3JlX3Bv
cnRtZS5jOiBJbiBmdW5jdGlvbiDigJhwb3J0YWJsZV9pbml04oCZOjxicj4vaG9tZS9hamF5L3Vu
aWtyYWZ0L2FwcHMvY29yZW08d2JyPmFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6MTcyOjx3YnI+
NDM6IHdhcm5pbmc6IHVudXNlZCBwYXJhbWV0ZXIg4oCYYXJnY+KAmSBbLVd1bnVzZWQtcGFyYW1l
dGVyXTxicj7CoHZvaWQgcG9ydGFibGVfaW5pdChjb3JlX3BvcnRhYmxlICpwLCBpbnQgKmFyZ2Ms
IGNoYXIgKmFyZ3ZbXSk8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXjxicj4v
aG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW08d2JyPmFyay9saW51eDY0L2NvcmVfcG9ydG1l
LmM6MTcyOjx3YnI+NTU6IHdhcm5pbmc6IHVudXNlZCBwYXJhbWV0ZXIg4oCYYXJnduKAmSBbLVd1
bnVzZWQtcGFyYW1ldGVyXTxicj7CoHZvaWQgcG9ydGFibGVfaW5pdChjb3JlX3BvcnRhYmxlICpw
LCBpbnQgKmFyZ2MsIGNoYXIgKmFyZ3ZbXSk8YnI+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgPHdicj7CoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXjxicj7CoCBMRMKgwqDCoMKgwqAgYXBwY29y
ZW1hcmsubGQubzxicj7CoCBPQkpDT1BZIGFwcGNvcmVtYXJrLm88YnI+wqAgQ0PCoMKgwqDCoMKg
IGxpYnVrYm9vdDogYm9vdC5vPGJyPsKgIExEwqDCoMKgwqDCoCBsaWJ1a2Jvb3QubGQubzxicj7C
oCBPQkpDT1BZIGxpYnVrYm9vdC5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJ1a2RlYnVnOiBwcmlu
dC5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJ1a2RlYnVnOiBoZXhkdW1wLm88YnI+wqAgTETCoMKg
wqDCoMKgIGxpYnVrZGVidWcubGQubzxicj7CoCBPQkpDT1BZIGxpYnVrZGVidWcubzxicj7CoCBD
Q8KgwqDCoMKgwqAgbGlidWthcmdwYXJzZTogYXJncGFyc2Uubzxicj7CoCBMRMKgwqDCoMKgwqAg
bGlidWthcmdwYXJzZS5sZC5vPGJyPsKgIE9CSkNPUFkgbGlidWthcmdwYXJzZS5vPGJyPsKgIEND
wqDCoMKgwqDCoCBsaWJub2xpYmM6IGVycm5vLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYm5vbGli
Yzogc3RkaW8ubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGlibm9saWJjOiBjdHlwZS5vPGJyPsKgIEND
wqDCoMKgwqDCoCBsaWJub2xpYmM6IHN0ZGxpYi5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJub2xp
YmM6IHN0cmluZy5vPGJyPsKgIENDwqDCoMKgwqDCoCBsaWJub2xpYmM6IGdldG9wdC5vPGJyPsKg
IENDwqDCoMKgwqDCoCBsaWJub2xpYmM6IG1hbGxvYy5vPGJyPsKgIExEwqDCoMKgwqDCoCBsaWJu
b2xpYmMubGQubzxicj7CoCBPQkpDT1BZIGxpYm5vbGliYy5vPGJyPsKgIENDwqDCoMKgwqDCoCBs
aWJ1a2FsbG9jOiBhbGxvYy5vPGJyPsKgIExEwqDCoMKgwqDCoCBsaWJ1a2FsbG9jLmxkLm88YnI+
wqAgT0JKQ09QWSBsaWJ1a2FsbG9jLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYnVrYWxsb2NiYnVk
ZHk6IGJidWRkeS5vPGJyPsKgIExEwqDCoMKgwqDCoCBsaWJ1a2FsbG9jYmJ1ZGR5LmxkLm88YnI+
wqAgT0JKQ09QWSBsaWJ1a2FsbG9jYmJ1ZGR5Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDog
ZmR0Lm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxpYmZkdDogZmR0X2FkZHJlc3Nlcy5vPGJyPsKgIEND
wqDCoMKgwqDCoCBsaWJmZHQ6IGZkdF9lbXB0eV90cmVlLm88YnI+wqAgQ0PCoMKgwqDCoMKgIGxp
YmZkdDogZmR0X292ZXJsYXkubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGliZmR0OiBmZHRfcm8ubzxi
cj7CoCBDQ8KgwqDCoMKgwqAgbGliZmR0OiBmZHRfcncubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGli
ZmR0OiBmZHRfc3RyZXJyb3Iubzxicj7CoCBDQ8KgwqDCoMKgwqAgbGliZmR0OiBmZHRfc3cubzxi
cj7CoCBDQ8KgwqDCoMKgwqAgbGliZmR0OiBmZHRfd2lwLm88YnI+wqAgTETCoMKgwqDCoMKgIGxp
YmZkdC5sZC5vPGJyPsKgIE9CSkNPUFkgbGliZmR0Lm88YnI+wqAgTETCoMKgwqDCoMKgIGNvcmVt
YXJrX3hlbi14ODZfNjQubGQubzxicj7CoCBPQkpDT1BZIGNvcmVtYXJrX3hlbi14ODZfNjQubzxi
cj7CoCBMRMKgwqDCoMKgwqAgY29yZW1hcmtfeGVuLXg4Nl82NDxicj4vaG9tZS9hamF5L3VuaWty
YWZ0L2FwcHMvY29yZW08d2JyPmFyay9idWlsZC9jb3JlbWFya194ZW4teDg2XzY0Ljx3YnI+bzog
SW4gZnVuY3Rpb24gYGl0ZXJhdGUmIzM5Ozo8YnI+ZmR0X3dpcC5jOigudGV4dCsweDU3MTkpOiB1
bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBzY2hlZF95aWVsZCYjMzk7PGJyPi9ob21lL2FqYXkvdW5p
a3JhZnQvYXBwcy9jb3JlbTx3YnI+YXJrL2J1aWxkL2NvcmVtYXJrX3hlbi14ODZfNjQuPHdicj5v
OiBJbiBmdW5jdGlvbiBgc3RhcnRfdGltZSYjMzk7Ojxicj5mZHRfd2lwLmM6KC50ZXh0KzB4NmUy
Zik6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGNsb2NrX2dldHRpbWUmIzM5Ozxicj4vaG9tZS9h
amF5L3VuaWtyYWZ0L2FwcHMvY29yZW08d2JyPmFyay9idWlsZC9jb3JlbWFya194ZW4teDg2XzY0
Ljx3YnI+bzogSW4gZnVuY3Rpb24gYHN0b3BfdGltZSYjMzk7Ojxicj5mZHRfd2lwLmM6KC50ZXh0
KzB4NmU0Zik6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGNsb2NrX2dldHRpbWUmIzM5Ozxicj4v
aG9tZS9hamF5L3VuaWtyYWZ0L3VuaWtyYWZ0L3A8d2JyPmxhdC94ZW4vTGlua2VyLnVrOjIyOiBy
ZWNpcGUgZm9yIHRhcmdldCAmIzM5Oy9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlPHdicj5t
YXJrL2J1aWxkL2NvcmVtYXJrX3hlbi14ODZfNjQ8d2JyPiYjMzk7IGZhaWxlZDxicj5tYWtlWzJd
OiAqKiogWy9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlPHdicj5tYXJrL2J1aWxkL2NvcmVt
YXJrX3hlbi14ODZfNjQ8d2JyPl0gRXJyb3IgMTxicj5NYWtlZmlsZTozMjogcmVjaXBlIGZvciB0
YXJnZXQgJiMzOTtfYWxsJiMzOTsgZmFpbGVkPGJyPm1ha2VbMV06ICoqKiBbX2FsbF0gRXJyb3Ig
Mjxicj5tYWtlWzFdOiBMZWF2aW5nIGRpcmVjdG9yeSAmIzM5Oy9ob21lL2FqYXkvdW5pa3JhZnQv
dW5pa3JhZnQmIzM5Ozxicj5NYWtlZmlsZTo2OiByZWNpcGUgZm9yIHRhcmdldCAmIzM5O2FsbCYj
Mzk7IGZhaWxlZDxicj5tYWtlOiAqKiogW2FsbF0gRXJyb3IgMjxicj5hamF5QGxhdGl0dWRlLTM0
ODA6fi91bmlrcmFmdC88d2JyPmFwcHMvY29yZW1hcmskPGJyPiMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIzx3YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPHdicj4jIyMjIyMj
Izxicj48YnI+PGJyPjwvZGl2PjxkaXY+SSB0cmllZCBsb29raW5nIGZvciBhbnkgZXhhbXBsZXMg
b2YgbGlua2FnZSBvZiBPQkpTIGZpbGVzLCBidXQgbm8gZXhhbXBsZSAoZm9yIE9CSlMpIGlzIHBy
ZXNlbnQgaW4gYW55IG9mIHBsYXQvYXBwIGZvbGRlci48YnI+PGJyPjwvZGl2PjxkaXY+S2luZGx5
IGhlbHAgbWUgaW4gZml4aW5nIHRoaXMuPGJyPjxicj48YnI+PGJyPjwvZGl2PjxkaXY+VGhhbmtz
IGFuZCBSZWdhcmRzLDxicj48L2Rpdj48ZGl2PkFqYXk8YnI+PC9kaXY+PC9kaXY+PC9kaXY+DQo8
L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPjxiciBjbGVhcj0iYWxsIj48YnI+PC9kaXY+PC9kaXY+PHNw
YW4gY2xhc3M9Im1fLTE0MjM3Nzg3NzIzODU3MzEzMjJIT0VuWmIiPjxmb250IGNvbG9yPSIjODg4
ODg4Ij4tLSA8YnI+PGRpdiBjbGFzcz0ibV8tMTQyMzc3ODc3MjM4NTczMTMyMm1fLTUwMTU2NjAw
MDM3Nzk1OTMwODJnbWFpbF9zaWduYXR1cmUiIGRhdGEtc21hcnRtYWlsPSJnbWFpbF9zaWduYXR1
cmUiPlJlZ2FyZHMsPGJyPkFqYXk8YnI+PC9kaXY+DQo8L2ZvbnQ+PC9zcGFuPjwvZGl2Pg0KPC9i
bG9ja3F1b3RlPjwvZGl2Pjxicj48YnIgY2xlYXI9ImFsbCI+PGJyPjwvZGl2PjwvZGl2PjxzcGFu
IGNsYXNzPSJIT0VuWmIiPjxmb250IGNvbG9yPSIjODg4ODg4Ij4tLSA8YnI+PGRpdiBjbGFzcz0i
bV8tMTQyMzc3ODc3MjM4NTczMTMyMmdtYWlsX3NpZ25hdHVyZSIgZGF0YS1zbWFydG1haWw9Imdt
YWlsX3NpZ25hdHVyZSI+UmVnYXJkcyw8YnI+QWpheTxicj48L2Rpdj4NCjwvZm9udD48L3NwYW4+
PC9kaXY+DQo8L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPjxiciBjbGVhcj0iYWxsIj48YnI+LS0gPGJy
PjxkaXYgY2xhc3M9ImdtYWlsX3NpZ25hdHVyZSIgZGF0YS1zbWFydG1haWw9ImdtYWlsX3NpZ25h
dHVyZSI+UmVnYXJkcyw8YnI+QWpheTxicj48L2Rpdj4NCjwvZGl2Pg0K
--000000000000faab49056a152bce--


--===============6039302479487847486==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============6039302479487847486==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 18 01:55:52 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 01:55:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8cK6-0008Et-R3; Wed, 18 Apr 2018 01:55:50 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=maay=hh=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f8cK5-0008Em-B4
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 01:55:49 +0000
X-Inumbo-ID: 7931e07b-42ab-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::60f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 7931e07b-42ab-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 03:54:48 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=LtFaFP/CYo8ZF1bwzUHFl5Yiz265esaOKxB85Zm4jAM=;
 b=OwnnfvBzRy5wjI1djn3i2K/61K1ax3/fRZbmPHcu3S4gGKxdHEp3REu2eRnY7m+3Fonvz6kYoX/tkFXS/dAM5+GuTX8r9iOcTG1ZIKDXMCNvkzJgjIxiJMvoiXnl4BJ91ZV8IFkYL36XRtD953/Hrl06T4KDhsUf3AEvd5XCl4s=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0025.eurprd08.prod.outlook.com (10.161.57.15) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.696.12; Wed, 18 Apr 2018 01:55:38 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0675.014; Wed, 18 Apr
 2018 01:55:37 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Costin Lupu <costin.lup@gmail.com>, "Simon Kuenzer
 (simon.kuenzer@neclab.eu)" <simon.kuenzer@neclab.eu>
Thread-Topic: [Minios-devel] Missing ukplat_monotonic_clock for KVM platform
Thread-Index: AdPWMb/yNJ6+Fm2uRCO6ZyGzwR5IcgAAcxmAACEdvEA=
Date: Wed, 18 Apr 2018 01:55:37 +0000
Message-ID: <DB3PR08MB010746B2B8E7FD0D62D4205D9EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <DB3PR08MB01078D2E7096E174E3CB84D09EB70@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <f4f0fadc-a40b-9113-3d28-7107a4ad6adc@gmail.com>
In-Reply-To: <f4f0fadc-a40b-9113-3d28-7107a4ad6adc@gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: gmail.com; dkim=none (message not signed)
 header.d=none;gmail.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0025;
 7:3P4fmvD2sTxWidfdazRhg/njtuQjpi1C2vpycqNqdD6XNZhQWgaiyKkmBQ+pfy63TK/vzcgPxmTGTKr62gYzBwE0JE/4OYT9STN1Wu/v21GL3sNZcEh+khSyTxemkh5RCkIHp9pZAZdc+m2EckasEnRgydWfUcGJOb7P1R144HRM9cezqcQnMiXaTRgA2q15dxvhBYFRbsQo0mB36BiYS/Zq7wfxVd0kzA/RtCFAu7cQp1Hy88/pGM1IB33p2CYz
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(48565401081)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0025; 
x-ms-traffictypediagnostic: DB3PR08MB0025:
x-microsoft-antispam-prvs: <DB3PR08MB0025FBDE9D5892D239D9E02B9EB60@DB3PR08MB0025.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(180628864354917)(85827821059158)(58134797142442); 
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(3002001)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123562045)(20161123560045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0025; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0025; 
x-forefront-prvs: 06469BCC91
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(376002)(39380400002)(39860400002)(346002)(366004)(396003)(40434004)(13464003)(14454004)(476003)(59450400001)(6436002)(7736002)(6246003)(99286004)(446003)(11346002)(478600001)(5890100001)(110136005)(33656002)(4326008)(186003)(72206003)(5250100002)(8936002)(316002)(74316002)(305945005)(229853002)(5660300001)(2906002)(8676002)(39060400002)(81166006)(66066001)(3280700002)(3846002)(55016002)(3660700001)(6506007)(2900100001)(25786009)(26005)(9686003)(7696005)(55236004)(76176011)(102836004)(6116002)(86362001)(53546011)(53936002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0025;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 MLV:ovrnspm; PTR:InfoNoRecords; 
x-microsoft-antispam-message-info: yDAQ5iY+/McHVZW5R61EYN6Dc0plV8Zc3tAvmLBLsjF3B9sI6VmzHsodlt6/tyTP8NNKTaFHgcp6slenMuG64L1DrEFb2KQ9T1232/H1kfyVtjF8hypRvnHr/ROkiaBr/Vmpmpgv7L/x8X0dfofzwWRSYUg7pw2ZL0qZwuCvdQK4BGLjhQUvIzc7H1NcC8cb
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-MS-Office365-Filtering-Correlation-Id: 4f65cc9f-c4d2-4934-f7fd-08d5a4cf7b5b
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4f65cc9f-c4d2-4934-f7fd-08d5a4cf7b5b
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Apr 2018 01:55:37.6353 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0025
Subject: Re: [Minios-devel] Missing ukplat_monotonic_clock for KVM platform
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgQ29zdGluLA0KDQpUaGFua3MsIEkgd2lsbCBwaWNrIHRoYXQgcGF0Y2ggOiApDQoNCj4gLS0t
LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXBA
Z21haWwuY29tPg0KPiBTZW50OiAyMDE45bm0NOaciDE35pelIDE4OjA1DQo+IFRvOiBXZWkgQ2hl
biA8V2VpLkNoZW5AYXJtLmNvbT47IFNpbW9uIEt1ZW56ZXIgKHNpbW9uLmt1ZW56ZXJAbmVjbGFi
LmV1KQ0KPiA8c2ltb24ua3VlbnplckBuZWNsYWIuZXU+DQo+IENjOiBtaW5pb3MtZGV2ZWxAbGlz
dHMueGVucHJvamVjdC5vcmcNCj4gU3ViamVjdDogUmU6IFtNaW5pb3MtZGV2ZWxdIE1pc3Npbmcg
dWtwbGF0X21vbm90b25pY19jbG9jayBmb3IgS1ZNIHBsYXRmb3JtDQo+DQo+DQo+IE9uIDA0LzE3
LzIwMTggMDE6MDAgUE0sIFdlaSBDaGVuIHdyb3RlOg0KPiA+IEhpIFNpbW9uLA0KPiA+DQo+ID4g
V2hpbGUgSSBhbSB0ZXN0aW5nIEFSTTY0IEtWTSBwYXRjaGVzLiBJIGZvdW5kIHRoZSB1a3BsYXRf
bW9ub3RvbmljX2Nsb2NrIHdhcw0KPiA+IG1pc3NpbmcgZm9yIEtWTSBwbGF0Zm9ybXMgKHg4Nl82
NCBhbmQgQVJNKS4gSSBoYXZlIGltcGxlbWVudGVkIHRoaXMgZnVuY3Rpb24NCj4gPiBmb3IgQVJN
NjQgS1ZNLCBhbmQgdGhlIHRpbWVzdGFtcCBjYW4gcHJpbnQgcHJvcGVybHkgZm9yIGRlYnVnIG1l
c3NhZ2VzIG5vdy4NCj4gPiBCdXQgb24geDg2XzY0IEtWTSwgd2Ugc3RpbGwgZ2V0IGZvbGxvd2lu
ZyBlcnJvci4NCj4gPg0KPiA+IC9ob21lL3dlaWMvV0lQL3VuaWtyYWZ0L3VuaWtyYWZ0L2J1aWxk
L2xpYnVrZGVidWcubzogSW4gZnVuY3Rpb24NCj4gYF9wcmludGRfdGltZXN0YW1wJzoNCj4gPiAv
aG9tZS93ZWljL1dJUC91bmlrcmFmdC91bmlrcmFmdC9saWIvdWtkZWJ1Zy9wcmludC5jOjg4OiB1
bmRlZmluZWQgcmVmZXJlbmNlDQo+IHRvIGB1a3BsYXRfbW9ub3RvbmljX2Nsb2NrJw0KPiA+ICAg
TEQgICAgICB1bmlrcmFmdF9rdm0teDg2XzY0DQo+ID4gL2hvbWUvd2VpYy9XSVAvdW5pa3JhZnQv
dW5pa3JhZnQvcGxhdC9saW51eHUvTGlua2VyLnVrOjk6IHJlY2lwZSBmb3IgdGFyZ2V0DQo+ICcv
aG9tZS93ZWljL1dJUC91bmlrcmFmdC91bmlrcmFmdC9idWlsZC91bmlrcmFmdF9saW51eHUteDg2
XzY0JyBmYWlsZWQNCj4gPiBtYWtlWzFdOiAqKiogWy9ob21lL3dlaWMvV0lQL3VuaWtyYWZ0L3Vu
aWtyYWZ0L2J1aWxkL3VuaWtyYWZ0X2xpbnV4dS14ODZfNjRdDQo+IEVycm9yIDENCj4gPiBtYWtl
WzFdOiAqKiogV2FpdGluZyBmb3IgdW5maW5pc2hlZCBqb2JzLi4uLg0KPiA+IC9ob21lL3dlaWMv
V0lQL3VuaWtyYWZ0L3VuaWtyYWZ0L2J1aWxkL3VuaWtyYWZ0X2t2bS14ODZfNjQubzogSW4gZnVu
Y3Rpb24NCj4gYF9wcmludGRfdGltZXN0YW1wJzoNCj4gPiAvaG9tZS93ZWljL1dJUC91bmlrcmFm
dC91bmlrcmFmdC9saWIvdWtkZWJ1Zy9wcmludC5jOjg4OiB1bmRlZmluZWQgcmVmZXJlbmNlDQo+
IHRvIGB1a3BsYXRfbW9ub3RvbmljX2Nsb2NrJw0KPiA+IC9ob21lL3dlaWMvV0lQL3VuaWtyYWZ0
L3VuaWtyYWZ0L3BsYXQva3ZtL0xpbmtlci51azoxNzogcmVjaXBlIGZvciB0YXJnZXQNCj4gJy9o
b21lL3dlaWMvV0lQL3VuaWtyYWZ0L3VuaWtyYWZ0L2J1aWxkL3VuaWtyYWZ0X2t2bS14ODZfNjQn
IGZhaWxlZA0KPiA+IG1ha2VbMV06ICoqKiBbL2hvbWUvd2VpYy9XSVAvdW5pa3JhZnQvdW5pa3Jh
ZnQvYnVpbGQvdW5pa3JhZnRfa3ZtLXg4Nl82NF0NCj4gRXJyb3IgMQ0KPiA+ICAgT0JKQ09QWSB1
bmlrcmFmdF94ZW4teDg2XzY0LmRiZw0KPiA+ICAgU1RSSVAgICB1bmlrcmFmdF94ZW4teDg2XzY0
DQo+ID4gICBHWiAgICAgIHVuaWtyYWZ0X3hlbi14ODZfNjQuZ3oNCj4gPiBNYWtlZmlsZTozMjog
cmVjaXBlIGZvciB0YXJnZXQgJ19hbGwnIGZhaWxlZA0KPiA+IG1ha2U6ICoqKiBbX2FsbF0gRXJy
b3IgMg0KPiA+DQo+ID4NCj4gPiBTaG91bGQgd2UgcG9ydCB0c2NjbG9jayBkcml2ZXIgZnJvbSBz
b2xvNSB0byBmaXggdGhpcyBpc3N1ZT8NCj4NCj4gSGkgV2VpISBUaGVyZSBhbHJlYWR5IGlzIGEg
cGVuZGluZyBwYXRjaCBzZXJpZXMgKEVuYWJsZSBzY2hlZHVsaW5nIG9uDQo+IEtWTSkgY29udGFp
bmluZyB0aGUgdHNjY2xvY2sgZHJpdmVyIGltcGxlbWVudGF0aW9uIChwYXRjaCAncGxhdC9rdm06
IEFkZA0KPiBLVk0gKHg4Nl82NCkgdGltZXIgc3VwcG9ydCcpLg0KPg0KPiBDaGVlcnMsDQo+IENv
c3Rpbg0KSU1QT1JUQU5UIE5PVElDRTogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZW1haWwgYW5kIGFu
eSBhdHRhY2htZW50cyBhcmUgY29uZmlkZW50aWFsIGFuZCBtYXkgYWxzbyBiZSBwcml2aWxlZ2Vk
LiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50LCBwbGVhc2Ugbm90aWZ5IHRo
ZSBzZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRvIG5vdCBkaXNjbG9zZSB0aGUgY29udGVudHMgdG8g
YW55IG90aGVyIHBlcnNvbiwgdXNlIGl0IGZvciBhbnkgcHVycG9zZSwgb3Igc3RvcmUgb3IgY29w
eSB0aGUgaW5mb3JtYXRpb24gaW4gYW55IG1lZGl1bS4gVGhhbmsgeW91Lg0KX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcg
bGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5w
cm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 02:00:08 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 02:00:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8cOF-0000aw-7I; Wed, 18 Apr 2018 02:00:07 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=maay=hh=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f8cOD-0000M1-Uj
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 02:00:06 +0000
X-Inumbo-ID: 11e8cac9-42ac-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [104.47.1.54]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 11e8cac9-42ac-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 03:59:04 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=iKE0jtL7ncy1iegQw22xu3rOGmq40OL4dSWO7e1FW8c=;
 b=D4YWiAb6dlvQ7qeMV1mhsP4VZMvwIbt+cqvgamF3MF0grgNKxU+2DMJyRDOt1/UcJdHZBN14hmpZ8eJWkADKCD/TCw0TRsoDBlh6LQl/raQe2sYvaE9vyseKybhiWNE6sZcVgdNVWIo9Qxu+cGukOneFcJpi74K/jt8r/bxPuLo=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0025.eurprd08.prod.outlook.com (10.161.57.15) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.696.12; Wed, 18 Apr 2018 01:59:54 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0675.014; Wed, 18 Apr
 2018 01:59:53 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Ajay Garg <ajaygargnsit@gmail.com>, "minios-devel@lists.xenproject.org"
 <minios-devel@lists.xenproject.org>
Thread-Topic: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
Thread-Index: AQHT06QTkh7b+gLJn0aR3f9tdvMCnKQANaYAgAGgVYCAA+fVgIAAC/rA
Date: Wed, 18 Apr 2018 01:59:53 +0000
Message-ID: <DB3PR08MB010767D001F98AB4539BECF29EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
 <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
 <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
 <CAHP4M8VSHMD5wK1bytCyGThnPyhbDxk0RKJw2DmJToFF+j3p1A@mail.gmail.com>
In-Reply-To: <CAHP4M8VSHMD5wK1bytCyGThnPyhbDxk0RKJw2DmJToFF+j3p1A@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: gmail.com; dkim=none (message not signed)
 header.d=none;gmail.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0025;
 7:c5a+ZKKQxRxPOIcxqFG8+VvVvPLKpUwzYs56k2FDhq35w6EE4Ns7TnCR1kSVZe8lf5iMd9JL48GelTvl2o3iAZCgppyAWqSUFJ4I9xkd45irb1WkFEEMyCu3M47D4Kbnt/zBMd9U80zk4miJiJH84xRcAwSt9eOzSH/bQLJ8cz2Qv1mKPQ79b5Ry5cwGTMVf60fvUwy32ZPLCb8PlHhBpG5NPgEDaQ/fYUL/Rnz3PeV8RkpkLMnFzYaEwoEpQ9xn
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(48565401081)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0025; 
x-ms-traffictypediagnostic: DB3PR08MB0025:
x-microsoft-antispam-prvs: <DB3PR08MB00252D7B3B4631EF054E9E9F9EB60@DB3PR08MB0025.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(28532068793085)(166708455590820)(85827821059158)(58134797142442)(21748063052155);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(3002001)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123562045)(20161123560045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0025; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0025; 
x-forefront-prvs: 06469BCC91
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(376002)(39380400002)(39860400002)(346002)(366004)(396003)(53754006)(40434004)(14454004)(476003)(59450400001)(6436002)(7736002)(6246003)(99286004)(446003)(11346002)(478600001)(2501003)(5890100001)(110136005)(33656002)(186003)(72206003)(5250100002)(8936002)(316002)(74316002)(229853002)(5660300001)(2906002)(966005)(8676002)(39060400002)(81166006)(9326002)(66066001)(3280700002)(3846002)(55016002)(3660700001)(6506007)(606006)(2900100001)(25786009)(54896002)(26005)(9686003)(236005)(7696005)(55236004)(76176011)(93886005)(16200700003)(6306002)(53946003)(102836004)(6116002)(86362001)(790700001)(53546011)(53936002)(559001)(569006);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0025;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 MLV:ovrnspm; PTR:InfoNoRecords; 
x-microsoft-antispam-message-info: dXX3AuV3ybBtCqdwmz77MZmKrwHxnEp7o1F5EHDbV75poomMr7uC7oc50EpRVymFce/GnEHbE3PiBVLOQhn6xBIryUU+9KGwM2FXFK0uMHtfoUqmNbXvk0vP+LRIDkC5vRj5GA7QNV08lW0k/j5XzPyov3TPbGRU6QxiEOcxRLNchRFhHg9u80kfVevi6Nv2
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-MS-Office365-Filtering-Correlation-Id: 46658066-7844-415f-52fb-08d5a4d0140f
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 46658066-7844-415f-52fb-08d5a4d0140f
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Apr 2018 01:59:53.8400 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0025
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============4517898455952638609=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============4517898455952638609==
Content-Language: en-US
Content-Type: multipart/alternative;
	boundary="_000_DB3PR08MB010767D001F98AB4539BECF29EB60DB3PR08MB0107eurp_"

--_000_DB3PR08MB010767D001F98AB4539BECF29EB60DB3PR08MB0107eurp_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGkgQWpheSwNCg0KSXQgc2VlbXMgeW91IGhhdmUgdG8gd2FpdCB1bnRpbCBDb3N0aW7igJlzIHNj
aGVkdWxlIGxpYiB0byBiZSBtZXJnZWQuDQpbVU5JS1JBRlQgUEFUQ0ggMTMvMTddIGxpYi91a3Nj
aGVkOiBVcGRhdGVzIGZvciBpbmxpbmluZyB3aXRoIHBsYXQvY29tbW9uIGNoYW5nZXMNCg0KT3Ig
eW91IGNhbiBwaWNrIGhpcyBwYXRjaCBzZXJpZXMgdG8geW91ciBsb2NhbCByZXBvc2l0b3J5IGZv
ciB0ZXN0aW5nIGluIGFkdmFuY2UuDQoNClJlZ2FyZHMsDQpXZWkgQ2hlbg0KDQoNCkZyb206IE1p
bmlvcy1kZXZlbCA8bWluaW9zLWRldmVsLWJvdW5jZXNAbGlzdHMueGVucHJvamVjdC5vcmc+IE9u
IEJlaGFsZiBPZiBBamF5IEdhcmcNClNlbnQ6IDIwMTjlubQ05pyIMTjml6UgOToxNA0KVG86IG1p
bmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZw0KU3ViamVjdDogUmU6IFtNaW5pb3MtZGV2
ZWxdIFtVbmlrcmFmdF0gU3RhdGljIExpYnJhcmllcyBub3QgYmVpbmcgbGlua2VkIHByb3Blcmx5
DQoNCkVhcm5lc3QgcmVxdWVzdCBmb3Igc29tZSBoZWxwLCBwbGVhc2UgLi4NCg0KT24gU3VuLCBB
cHIgMTUsIDIwMTggYXQgNzowNSBQTSwgQWpheSBHYXJnIDxhamF5Z2FyZ25zaXRAZ21haWwuY29t
PG1haWx0bzphamF5Z2FyZ25zaXRAZ21haWwuY29tPj4gd3JvdGU6DQpJZGVhcyBwbGVhc2U/DQpB
bnkgcG9pbnRlcnMgdG8gYW55IGV4aXN0aW5nIGV4YW1wbGUgdXNhZ2Ugb2YgbGlua2luZyBzdGF0
aWMtbGlicmFyaWVzIHdvdWxkIGJlIHVzZWZ1bC4NCg0KT24gU2F0LCBBcHIgMTQsIDIwMTggYXQg
NjoxNSBQTSwgQWpheSBHYXJnIDxhamF5Z2FyZ25zaXRAZ21haWwuY29tPG1haWx0bzphamF5Z2Fy
Z25zaXRAZ21haWwuY29tPj4gd3JvdGU6DQpWZXJ5IHN1cnByaXNpbmdseSwgdGhlIG1pc3Npbmcg
ZnVuY3Rpb25zIChzdGFydF90aW1lLCBlbmRfdGltZSkgYXJlIGFjdHVhbGx5IHByZXNlbnQgaW4g
aHR0cHM6Ly9naXRodWIuY29tL3Rvbnloby9Db3JlTWFyay9ibG9iL21hc3Rlci9jb3JlX21haW4u
Yy4NCkJ1dCBpbiB0aGUgbWFrZS1vdXRwdXQsIGZkdF93aXAuYyBpcyBiZWluZyBsaXN0ZWQuDQoN
Ck9uIFNhdCwgQXByIDE0LCAyMDE4IGF0IDk6MjIgQU0sIEFqYXkgR2FyZyA8YWpheWdhcmduc2l0
QGdtYWlsLmNvbTxtYWlsdG86YWpheWdhcmduc2l0QGdtYWlsLmNvbT4+IHdyb3RlOg0KSGkgQWxs
Lg0KDQpJIGFtIHRyeWluZyB0byBpbnRlZ3JhdGUgY29yZW1hcmstYXBwIGluIHVuaWtyYWZ0IGZv
ciB4ODZfNjQuDQpJdCByZXF1aXJlcyBzdGF0aWMgbGlua2luZyB0byBsaWJydC5hIGFuZCBsaWJw
dGhyZWFkLmE7IGhvd2V2ZXIgc2VlbXMgIHRoZXkgYXJlIG5vdCBiZWluZyBwaWNrZWQgdXAuDQoN
CkZvbGxvd2luZyBpcyB0aGUgTWFrZWZpbGUudWsgOg0KDQojIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KJChldmFsICQo
Y2FsbCBhZGRsaWIsYXBwY29yZW1hcmspKQ0KDQpBUFBDT1JFTUFSS19TUkNTLXkgICAgICAgICAg
ICAgICs9ICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9tYWluLmMgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9saXN0X2pvaW4uYyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKEFQUENPUkVNQVJLX0JBU0UpL2NvcmVf
dXRpbC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKEFQUENPUkVN
QVJLX0JBU0UpL2NvcmVfc3RhdGUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJChBUFBDT1JFTUFSS19CQVNFKS9jb3JlX21hdHJpeC5jICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQo
QVBQQ09SRU1BUktfQkFTRSkvbGludXg2NC9jb3JlX3BvcnRtZS5jDQoNCkFQUENPUkVNQVJLX09C
SlMteSAgICAgICAgICAgICAgICs9IC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvbGlicnQuYSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL3Vzci9s
aWIveDg2XzY0LWxpbnV4LWdudS9saWJwdGhyZWFkLmENCg0KQVBQQ09SRU1BUktfQ0lOQ0xVREVT
LXkgICAgICs9LUkkKEFQUENPUkVNQVJLX0JBU0UpICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtSSQoQVBQQ09SRU1BUktfQkFTRSkvbGludXg2
NCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLUkkKEFQUENPUkVN
QVJLX0JBU0UpLy4uLy4uL3VuaWtyYWZ0L2xpYi9ub2xpYmMvaW5jbHVkZS9zeXMgICBcDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLUkv
dXNyL2luY2x1ZGUNCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQoNCg0KRm9sbG93aW5nIGlzIHRoZSBjb21waWxhdGlv
bi1ydW4gOg0KDQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KYWFqYXlAbGF0aXR1ZGUtMzQ4MDp+L3VuaWtyYWZ0L2Fw
cHMvY29yZW1hcmskIG1ha2UNCm1ha2VbMV06IEVudGVyaW5nIGRpcmVjdG9yeSAnL2hvbWUvYWph
eS91bmlrcmFmdC91bmlrcmFmdCcNCiAgQ1AgICAgICBjb25maWcNCiAgQ0MgICAgICBsaWJ4ZW5w
bGF0OiBoeXBlcnZpc29yLm8NCiAgQ0MgICAgICBsaWJ4ZW5wbGF0OiBtZW1vcnkubw0KICBDQyAg
ICAgIGxpYnhlbnBsYXQ6IHNldHVwLm8NCiAgQ0MgICAgICBsaWJ4ZW5wbGF0OiB0cmFwcy5vDQog
IEFTICAgICAgbGlieGVucGxhdDogZW50cnk2NC5vDQogIENDICAgICAgbGlieGVucGxhdDogbW0u
bw0KICBDQyAgICAgIGxpYnhlbnBsYXQ6IGFyY2hfZXZlbnRzLm8NCiAgQ0MgICAgICBsaWJ4ZW5w
bGF0OiBhcmNoX3RpbWUubw0KICBDQyAgICAgIGxpYnhlbnBsYXQ6IGxjcHUubw0KICBDQyAgICAg
IGxpYnhlbnBsYXQ6IGNvbnNvbGUubw0KICBDQyAgICAgIGxpYnhlbnBsYXQ6IHNodXRkb3duLm8N
CiAgQ0MgICAgICBsaWJ4ZW5wbGF0OiBldmVudHMubw0KICBMRCAgICAgIGxpYnhlbnBsYXQubGQu
bw0KICBPQkpDT1BZIGxpYnhlbnBsYXQubw0KICBDQyAgICAgIGFwcGNvcmVtYXJrOiBjb3JlX21h
aW4ubw0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2NvcmVfbWFpbi5jOiBJbiBm
dW5jdGlvbiDigJhtYWlu4oCZOg0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2Nv
cmVfbWFpbi5jOjI5MjoxMjogd2FybmluZzogZm9ybWF0IOKAmCVsdeKAmSBleHBlY3RzIGFyZ3Vt
ZW50IG9mIHR5cGUg4oCYbG9uZyB1bnNpZ25lZCBpbnTigJksIGJ1dCBhcmd1bWVudCAyIGhhcyB0
eXBlIOKAmHVuc2lnbmVkIGludOKAmSBbLVdmb3JtYXQ9XQ0KICBlZV9wcmludGYoIkNvcmVNYXJr
IFNpemUgICAgOiAlbHVcbiIsKGVlX3UzMilyZXN1bHRzWzBdLnNpemUpOw0KICAgICAgICAgICAg
Xg0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2NvcmVfbWFpbi5jOjI5MzoxMjog
d2FybmluZzogZm9ybWF0IOKAmCVsdeKAmSBleHBlY3RzIGFyZ3VtZW50IG9mIHR5cGUg4oCYbG9u
ZyB1bnNpZ25lZCBpbnTigJksIGJ1dCBhcmd1bWVudCAyIGhhcyB0eXBlIOKAmHVuc2lnbmVkIGlu
dOKAmSBbLVdmb3JtYXQ9XQ0KICBlZV9wcmludGYoIlRvdGFsIHRpY2tzICAgICAgOiAlbHVcbiIs
KGVlX3UzMil0b3RhbF90aW1lKTsNCiAgICAgICAgICAgIF4NCi9ob21lL2FqYXkvdW5pa3JhZnQv
YXBwcy9jb3JlbWFyay9jb3JlX21haW4uYzozMDg6MTI6IHdhcm5pbmc6IGZvcm1hdCDigJglbHXi
gJkgZXhwZWN0cyBhcmd1bWVudCBvZiB0eXBlIOKAmGxvbmcgdW5zaWduZWQgaW504oCZLCBidXQg
YXJndW1lbnQgMiBoYXMgdHlwZSDigJh1bnNpZ25lZCBpbnTigJkgWy1XZm9ybWF0PV0NCiAgZWVf
cHJpbnRmKCJJdGVyYXRpb25zICAgICAgIDogJWx1XG4iLChlZV91MzIpZGVmYXVsdF9udW1fY29u
dGV4dHMqcmVzdWx0c1swXS5pdGVyYXRpb25zKTsNCiAgICAgICAgICAgIF4NCiAgQ0MgICAgICBh
cHBjb3JlbWFyazogY29yZV9saXN0X2pvaW4ubw0KICBDQyAgICAgIGFwcGNvcmVtYXJrOiBjb3Jl
X3V0aWwubw0KICBDQyAgICAgIGFwcGNvcmVtYXJrOiBjb3JlX3N0YXRlLm8NCiAgQ0MgICAgICBh
cHBjb3JlbWFyazogY29yZV9tYXRyaXgubw0KICBDQyAgICAgIGFwcGNvcmVtYXJrOiBjb3JlX3Bv
cnRtZS5vDQpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Vzci9pbmNsdWRlL2ZlYXR1cmVzLmg6MzY3
OjAsDQogICAgICAgICAgICAgICAgIGZyb20gL3Vzci9pbmNsdWRlL21hbGxvYy5oOjIyLA0KICAg
ICAgICAgICAgICAgICBmcm9tIC9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9saW51
eDY0L2NvcmVfcG9ydG1lLmM6MTg6DQovdXNyL2luY2x1ZGUvc3lzL2NkZWZzLmg6Mjg1OjA6IHdh
cm5pbmc6ICJfX25vbm51bGwiIHJlZGVmaW5lZA0KICMgZGVmaW5lIF9fbm9ubnVsbChwYXJhbXMp
IF9fYXR0cmlidXRlX18gKChfX25vbm51bGxfXyBwYXJhbXMpKQ0KIF4NCkluIGZpbGUgaW5jbHVk
ZWQgZnJvbSAvaG9tZS9hamF5L3VuaWtyYWZ0L3VuaWtyYWZ0L2xpYi9ub2xpYmMvaW5jbHVkZS9z
dGRpby5oOjQxOjAsDQogICAgICAgICAgICAgICAgIGZyb20gL2hvbWUvYWpheS91bmlrcmFmdC9h
cHBzL2NvcmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzo5Og0KL2hvbWUvYWpheS91bmlrcmFm
dC91bmlrcmFmdC9pbmNsdWRlL3VrL2Vzc2VudGlhbHMuaDo1OTowOiBub3RlOiB0aGlzIGlzIHRo
ZSBsb2NhdGlvbiBvZiB0aGUgcHJldmlvdXMgZGVmaW5pdGlvbg0KICNkZWZpbmUgX19ub25udWxs
ICAgICAgICAgICAgICBfX2F0dHJpYnV0ZV9fKChub25udWxsKSkNCiBeDQovaG9tZS9hamF5L3Vu
aWtyYWZ0L2FwcHMvY29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOiBJbiBmdW5jdGlvbiDi
gJhzdGFydF90aW1l4oCZOg0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2xpbnV4
NjQvY29yZV9wb3J0bWUuYzo5MzoyNDogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2Yg
ZnVuY3Rpb24g4oCYY2xvY2tfZ2V0dGltZeKAmSBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJh
dGlvbl0NCiAgI2RlZmluZSBHRVRNWVRJTUUoX3QpIGNsb2NrX2dldHRpbWUoMCxfdCkNCiAgICAg
ICAgICAgICAgICAgICAgICAgIF4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9s
aW51eDY0L2NvcmVfcG9ydG1lLmM6MTE2OjI6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDi
gJhHRVRNWVRJTUXigJkNCiAgR0VUTVlUSU1FKCZzdGFydF90aW1lX3ZhbCApOw0KICBeDQovaG9t
ZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOiBJbiBm
dW5jdGlvbiDigJhwb3J0YWJsZV9pbml04oCZOg0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2Nv
cmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzoxNzI6NDM6IHdhcm5pbmc6IHVudXNlZCBwYXJh
bWV0ZXIg4oCYYXJnY+KAmSBbLVd1bnVzZWQtcGFyYW1ldGVyXQ0KIHZvaWQgcG9ydGFibGVfaW5p
dChjb3JlX3BvcnRhYmxlICpwLCBpbnQgKmFyZ2MsIGNoYXIgKmFyZ3ZbXSkNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeDQovaG9tZS9hamF5L3VuaWtyYWZ0L2Fw
cHMvY29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOjE3Mjo1NTogd2FybmluZzogdW51c2Vk
IHBhcmFtZXRlciDigJhhcmd24oCZIFstV3VudXNlZC1wYXJhbWV0ZXJdDQogdm9pZCBwb3J0YWJs
ZV9pbml0KGNvcmVfcG9ydGFibGUgKnAsIGludCAqYXJnYywgY2hhciAqYXJndltdKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4NCiAgTEQg
ICAgICBhcHBjb3JlbWFyay5sZC5vDQogIE9CSkNPUFkgYXBwY29yZW1hcmsubw0KICBDQyAgICAg
IGxpYnVrYm9vdDogYm9vdC5vDQogIExEICAgICAgbGlidWtib290LmxkLm8NCiAgT0JKQ09QWSBs
aWJ1a2Jvb3Qubw0KICBDQyAgICAgIGxpYnVrZGVidWc6IHByaW50Lm8NCiAgQ0MgICAgICBsaWJ1
a2RlYnVnOiBoZXhkdW1wLm8NCiAgTEQgICAgICBsaWJ1a2RlYnVnLmxkLm8NCiAgT0JKQ09QWSBs
aWJ1a2RlYnVnLm8NCiAgQ0MgICAgICBsaWJ1a2FyZ3BhcnNlOiBhcmdwYXJzZS5vDQogIExEICAg
ICAgbGlidWthcmdwYXJzZS5sZC5vDQogIE9CSkNPUFkgbGlidWthcmdwYXJzZS5vDQogIENDICAg
ICAgbGlibm9saWJjOiBlcnJuby5vDQogIENDICAgICAgbGlibm9saWJjOiBzdGRpby5vDQogIEND
ICAgICAgbGlibm9saWJjOiBjdHlwZS5vDQogIENDICAgICAgbGlibm9saWJjOiBzdGRsaWIubw0K
ICBDQyAgICAgIGxpYm5vbGliYzogc3RyaW5nLm8NCiAgQ0MgICAgICBsaWJub2xpYmM6IGdldG9w
dC5vDQogIENDICAgICAgbGlibm9saWJjOiBtYWxsb2Mubw0KICBMRCAgICAgIGxpYm5vbGliYy5s
ZC5vDQogIE9CSkNPUFkgbGlibm9saWJjLm8NCiAgQ0MgICAgICBsaWJ1a2FsbG9jOiBhbGxvYy5v
DQogIExEICAgICAgbGlidWthbGxvYy5sZC5vDQogIE9CSkNPUFkgbGlidWthbGxvYy5vDQogIEND
ICAgICAgbGlidWthbGxvY2JidWRkeTogYmJ1ZGR5Lm8NCiAgTEQgICAgICBsaWJ1a2FsbG9jYmJ1
ZGR5LmxkLm8NCiAgT0JKQ09QWSBsaWJ1a2FsbG9jYmJ1ZGR5Lm8NCiAgQ0MgICAgICBsaWJmZHQ6
IGZkdC5vDQogIENDICAgICAgbGliZmR0OiBmZHRfYWRkcmVzc2VzLm8NCiAgQ0MgICAgICBsaWJm
ZHQ6IGZkdF9lbXB0eV90cmVlLm8NCiAgQ0MgICAgICBsaWJmZHQ6IGZkdF9vdmVybGF5Lm8NCiAg
Q0MgICAgICBsaWJmZHQ6IGZkdF9yby5vDQogIENDICAgICAgbGliZmR0OiBmZHRfcncubw0KICBD
QyAgICAgIGxpYmZkdDogZmR0X3N0cmVycm9yLm8NCiAgQ0MgICAgICBsaWJmZHQ6IGZkdF9zdy5v
DQogIENDICAgICAgbGliZmR0OiBmZHRfd2lwLm8NCiAgTEQgICAgICBsaWJmZHQubGQubw0KICBP
QkpDT1BZIGxpYmZkdC5vDQogIExEICAgICAgY29yZW1hcmtfeGVuLXg4Nl82NC5sZC5vDQogIE9C
SkNPUFkgY29yZW1hcmtfeGVuLXg4Nl82NC5vDQogIExEICAgICAgY29yZW1hcmtfeGVuLXg4Nl82
NA0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2J1aWxkL2NvcmVtYXJrX3hlbi14
ODZfNjQubzogSW4gZnVuY3Rpb24gYGl0ZXJhdGUnOg0KZmR0X3dpcC5jOigudGV4dCsweDU3MTkp
OiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBzY2hlZF95aWVsZCcNCi9ob21lL2FqYXkvdW5pa3Jh
ZnQvYXBwcy9jb3JlbWFyay9idWlsZC9jb3JlbWFya194ZW4teDg2XzY0Lm86IEluIGZ1bmN0aW9u
IGBzdGFydF90aW1lJzoNCmZkdF93aXAuYzooLnRleHQrMHg2ZTJmKTogdW5kZWZpbmVkIHJlZmVy
ZW5jZSB0byBgY2xvY2tfZ2V0dGltZScNCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFy
ay9idWlsZC9jb3JlbWFya194ZW4teDg2XzY0Lm86IEluIGZ1bmN0aW9uIGBzdG9wX3RpbWUnOg0K
ZmR0X3dpcC5jOigudGV4dCsweDZlNGYpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBjbG9ja19n
ZXR0aW1lJw0KL2hvbWUvYWpheS91bmlrcmFmdC91bmlrcmFmdC9wbGF0L3hlbi9MaW5rZXIudWs6
MjI6IHJlY2lwZSBmb3IgdGFyZ2V0ICcvaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsv
YnVpbGQvY29yZW1hcmtfeGVuLXg4Nl82NCcgZmFpbGVkDQptYWtlWzJdOiAqKiogWy9ob21lL2Fq
YXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9idWlsZC9jb3JlbWFya194ZW4teDg2XzY0XSBFcnJv
ciAxDQpNYWtlZmlsZTozMjogcmVjaXBlIGZvciB0YXJnZXQgJ19hbGwnIGZhaWxlZA0KbWFrZVsx
XTogKioqIFtfYWxsXSBFcnJvciAyDQptYWtlWzFdOiBMZWF2aW5nIGRpcmVjdG9yeSAnL2hvbWUv
YWpheS91bmlrcmFmdC91bmlrcmFmdCcNCk1ha2VmaWxlOjY6IHJlY2lwZSBmb3IgdGFyZ2V0ICdh
bGwnIGZhaWxlZA0KbWFrZTogKioqIFthbGxdIEVycm9yIDINCmFqYXlAbGF0aXR1ZGUtMzQ4MDp+
L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmskDQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KDQpJIHRyaWVkIGxvb2tpbmcg
Zm9yIGFueSBleGFtcGxlcyBvZiBsaW5rYWdlIG9mIE9CSlMgZmlsZXMsIGJ1dCBubyBleGFtcGxl
IChmb3IgT0JKUykgaXMgcHJlc2VudCBpbiBhbnkgb2YgcGxhdC9hcHAgZm9sZGVyLg0KS2luZGx5
IGhlbHAgbWUgaW4gZml4aW5nIHRoaXMuDQoNCg0KVGhhbmtzIGFuZCBSZWdhcmRzLA0KQWpheQ0K
DQoNCi0tDQpSZWdhcmRzLA0KQWpheQ0KDQoNCi0tDQpSZWdhcmRzLA0KQWpheQ0KDQoNCg0KLS0N
ClJlZ2FyZHMsDQpBamF5DQpJTVBPUlRBTlQgTk9USUNFOiBUaGUgY29udGVudHMgb2YgdGhpcyBl
bWFpbCBhbmQgYW55IGF0dGFjaG1lbnRzIGFyZSBjb25maWRlbnRpYWwgYW5kIG1heSBhbHNvIGJl
IHByaXZpbGVnZWQuIElmIHlvdSBhcmUgbm90IHRoZSBpbnRlbmRlZCByZWNpcGllbnQsIHBsZWFz
ZSBub3RpZnkgdGhlIHNlbmRlciBpbW1lZGlhdGVseSBhbmQgZG8gbm90IGRpc2Nsb3NlIHRoZSBj
b250ZW50cyB0byBhbnkgb3RoZXIgcGVyc29uLCB1c2UgaXQgZm9yIGFueSBwdXJwb3NlLCBvciBz
dG9yZSBvciBjb3B5IHRoZSBpbmZvcm1hdGlvbiBpbiBhbnkgbWVkaXVtLiBUaGFuayB5b3UuDQo=

--_000_DB3PR08MB010767D001F98AB4539BECF29EB60DB3PR08MB0107eurp_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IlByb2dJZCIg
Y29udGVudD0iV29yZC5Eb2N1bWVudCI+DQo8bWV0YSBuYW1lPSJHZW5lcmF0b3IiIGNvbnRlbnQ9
Ik1pY3Jvc29mdCBXb3JkIDE1Ij4NCjxtZXRhIG5hbWU9Ik9yaWdpbmF0b3IiIGNvbnRlbnQ9Ik1p
Y3Jvc29mdCBXb3JkIDE1Ij4NCjxsaW5rIHJlbD0iRmlsZS1MaXN0IiBocmVmPSJjaWQ6ZmlsZWxp
c3QueG1sQDAxRDNENkZCLkZEQkVDNjcwIj48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOk9m
ZmljZURvY3VtZW50U2V0dGluZ3M+DQo8bzpBbGxvd1BORy8+DQo8L286T2ZmaWNlRG9jdW1lbnRT
ZXR0aW5ncz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPHc6
V29yZERvY3VtZW50Pg0KPHc6U3BlbGxpbmdTdGF0ZT5DbGVhbjwvdzpTcGVsbGluZ1N0YXRlPg0K
PHc6RG9jdW1lbnRLaW5kPkRvY3VtZW50RW1haWw8L3c6RG9jdW1lbnRLaW5kPg0KPHc6VHJhY2tN
b3Zlcy8+DQo8dzpUcmFja0Zvcm1hdHRpbmcvPg0KPHc6RW52ZWxvcGVWaXMvPg0KPHc6VmFsaWRh
dGVBZ2FpbnN0U2NoZW1hcy8+DQo8dzpTYXZlSWZYTUxJbnZhbGlkPmZhbHNlPC93OlNhdmVJZlhN
TEludmFsaWQ+DQo8dzpJZ25vcmVNaXhlZENvbnRlbnQ+ZmFsc2U8L3c6SWdub3JlTWl4ZWRDb250
ZW50Pg0KPHc6QWx3YXlzU2hvd1BsYWNlaG9sZGVyVGV4dD5mYWxzZTwvdzpBbHdheXNTaG93UGxh
Y2Vob2xkZXJUZXh0Pg0KPHc6RG9Ob3RQcm9tb3RlUUYvPg0KPHc6TGlkVGhlbWVPdGhlcj5FTi1V
UzwvdzpMaWRUaGVtZU90aGVyPg0KPHc6TGlkVGhlbWVBc2lhbj5aSC1DTjwvdzpMaWRUaGVtZUFz
aWFuPg0KPHc6TGlkVGhlbWVDb21wbGV4U2NyaXB0PlgtTk9ORTwvdzpMaWRUaGVtZUNvbXBsZXhT
Y3JpcHQ+DQo8dzpDb21wYXRpYmlsaXR5Pg0KPHc6RG9Ob3RFeHBhbmRTaGlmdFJldHVybi8+DQo8
dzpCcmVha1dyYXBwZWRUYWJsZXMvPg0KPHc6U3BsaXRQZ0JyZWFrQW5kUGFyYU1hcmsvPg0KPHc6
RW5hYmxlT3BlblR5cGVLZXJuaW5nLz4NCjx3OlVzZUZFTGF5b3V0Lz4NCjwvdzpDb21wYXRpYmls
aXR5Pg0KPHc6QnJvd3NlckxldmVsPk1pY3Jvc29mdEludGVybmV0RXhwbG9yZXI0PC93OkJyb3dz
ZXJMZXZlbD4NCjxtOm1hdGhQcj4NCjxtOm1hdGhGb250IG06dmFsPSJDYW1icmlhIE1hdGgiLz4N
CjxtOmJya0JpbiBtOnZhbD0iYmVmb3JlIi8+DQo8bTpicmtCaW5TdWIgbTp2YWw9IiYjNDU7LSIv
Pg0KPG06c21hbGxGcmFjIG06dmFsPSJvZmYiLz4NCjxtOmRpc3BEZWYvPg0KPG06bE1hcmdpbiBt
OnZhbD0iMCIvPg0KPG06ck1hcmdpbiBtOnZhbD0iMCIvPg0KPG06ZGVmSmMgbTp2YWw9ImNlbnRl
ckdyb3VwIi8+DQo8bTp3cmFwSW5kZW50IG06dmFsPSIxNDQwIi8+DQo8bTppbnRMaW0gbTp2YWw9
InN1YlN1cCIvPg0KPG06bmFyeUxpbSBtOnZhbD0idW5kT3ZyIi8+DQo8L206bWF0aFByPjwvdzpX
b3JkRG9jdW1lbnQ+DQo8L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4N
Cjx3OkxhdGVudFN0eWxlcyBEZWZMb2NrZWRTdGF0ZT0iZmFsc2UiIERlZlVuaGlkZVdoZW5Vc2Vk
PSJmYWxzZSIgRGVmU2VtaUhpZGRlbj0iZmFsc2UiIERlZlFGb3JtYXQ9ImZhbHNlIiBEZWZQcmlv
cml0eT0iOTkiIExhdGVudFN0eWxlQ291bnQ9IjM3NSI+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjAiIFFGb3JtYXQ9InRydWUiIE5hbWU9Ik5vcm1hbCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBRRm9ybWF0PSJ0cnVlIiBO
YW1lPSJoZWFkaW5nIDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIFFGb3JtYXQ9InRy
dWUiIE5hbWU9ImhlYWRpbmcgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1h
dD0idHJ1ZSIgTmFtZT0iaGVhZGluZyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBR
Rm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA2Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDciLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgOCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA5Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iaW5k
ZXggMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCAzIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9ImluZGV4IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVu
PSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iaW5kZXggNSIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0
cnVlIiBOYW1lPSJpbmRleCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IDciLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iaW5kZXggOCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCA5
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idG9jIDEiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2MgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9InRvYyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0i
dG9jIDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2MgNSIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgU2VtaUhpZGRlbj0idHJ1
ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9InRvYyA2Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0idG9jIDciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBO
YW1lPSJ0b2MgOCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIz
OSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9InRvYyA5Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9Ik5vcm1hbCBJbmRlbnQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFt
ZT0iZm9vdG5vdGUgdGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlI
aWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJhbm5vdGF0aW9uIHRleHQi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhp
ZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iaGVhZGVyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImZv
b3RlciIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCBoZWFkaW5nIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM1IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhp
ZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iY2FwdGlvbiIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJ0YWJsZSBvZiBmaWd1cmVzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImVu
dmVsb3BlIGFkZHJlc3MiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iZW52ZWxvcGUgcmV0dXJuIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9ImZvb3Rub3RlIHJlZmVyZW5jZSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJhbm5vdGF0aW9uIHJlZmVyZW5jZSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJsaW5l
IG51bWJlciIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRy
dWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJwYWdlIG51bWJlciIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0
cnVlIiBOYW1lPSJlbmRub3RlIHJlZmVyZW5jZSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJlbmRu
b3RlIHRleHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idGFibGUgb2YgYXV0aG9yaXRpZXMiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0ibWFjcm8iLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idG9hIGhl
YWRpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJMaXN0IEJ1bGxldCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IE51bWJlciIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5V
c2VkPSJ0cnVlIiBOYW1lPSJMaXN0IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCAzIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0
IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBCdWxsZXQgMiIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJMaXN0IEJ1bGxldCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgQnVsbGV0
IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBCdWxsZXQgNSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJMaXN0IE51bWJlciAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgTnVtYmVy
IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBOdW1iZXIgNCIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJMaXN0IE51bWJlciA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
UHJpb3JpdHk9IjEwIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJUaXRsZSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJDbG9zaW5nIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlNpZ25hdHVyZSIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIxIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iRGVmYXVsdCBQYXJhZ3JhcGggRm9udCIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRleHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iQm9k
eSBUZXh0IEluZGVudCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IENvbnRpbnVlIi8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hl
blVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgQ29udGludWUgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJMaXN0IENvbnRpbnVlIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBDb250aW51ZSA0
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgQ29udGludWUgNSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJNZXNzYWdlIEhlYWRlciIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSIxMSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iU3VidGl0bGUiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iU2FsdXRhdGlvbiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJEYXRlIi8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hl
blVzZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4dCBGaXJzdCBJbmRlbnQiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0iQm9keSBUZXh0IEZpcnN0IEluZGVudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9
Ik5vdGUgSGVhZGluZyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRleHQgMiIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5V
c2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRleHQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5
IFRleHQgSW5kZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iQm9keSBUZXh0IEluZGVudCAz
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkJsb2NrIFRleHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFt
ZT0iSHlwZXJsaW5rIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRl
bj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkZvbGxvd2VkSHlwZXJsaW5rIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjIyIiBRRm9ybWF0PSJ0
cnVlIiBOYW1lPSJTdHJvbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iMjAiIFFGb3JtYXQ9InRydWUiIE5hbWU9IkVtcGhhc2lzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUi
IE5hbWU9IkRvY3VtZW50IE1hcCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJQbGFpbiBUZXh0Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9IkUtbWFpbCBTaWduYXR1cmUiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iSFRNTCBUb3Agb2YgRm9ybSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIEJvdHRv
bSBvZiBGb3JtIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ik5vcm1hbCAoV2ViKSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJIVE1MIEFjcm9ueW0iLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBB
ZGRyZXNzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1
ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkhUTUwgQ2l0ZSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJIVE1MIENvZGUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBEZWZpbml0aW9u
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkhUTUwgS2V5Ym9hcmQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iSFRNTCBQcmVmb3JtYXR0ZWQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBTYW1w
bGUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBUeXBld3JpdGVyIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9IkhUTUwgVmFyaWFibGUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTm9ybWFsIFRh
YmxlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIg
VW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImFubm90YXRpb24gc3ViamVjdCIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJObyBMaXN0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ik91dGxpbmUgTGlz
dCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIg
VW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ik91dGxpbmUgTGlzdCAyIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9Ik91dGxpbmUgTGlzdCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIFNp
bXBsZSAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1
ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIFNpbXBsZSAyIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9IlRhYmxlIFNpbXBsZSAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxl
IENsYXNzaWMgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBDbGFzc2ljIDIiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ2xhc3NpYyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9
IlRhYmxlIENsYXNzaWMgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlI
aWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBDb2xvcmZ1bCAx
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENvbG9yZnVsIDIiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0iVGFibGUgQ29sb3JmdWwgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBD
b2x1bW5zIDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ29sdW1ucyAyIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IlRhYmxlIENvbHVtbnMgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJU
YWJsZSBDb2x1bW5zIDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ29sdW1ucyA1Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIEdyaWQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJUYWJsZSBHcmlkIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCAzIi8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hl
blVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIEdyaWQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJU
YWJsZSBHcmlkIDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVu
PSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCA2Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IlRhYmxlIEdyaWQgNyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJs
ZSBHcmlkIDgiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgTGlzdCAxIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9IlRhYmxlIExpc3QgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBM
aXN0IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgTGlzdCA0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9IlRhYmxlIExpc3QgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0
IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgTGlzdCA3Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUi
IE5hbWU9IlRhYmxlIExpc3QgOCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSAzRCBlZmZl
Y3RzIDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgM0QgZWZmZWN0cyAyIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IlRhYmxlIDNEIGVmZmVjdHMgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJUYWJsZSBDb250ZW1wb3JhcnkiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBT
ZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgRWxlZ2Fu
dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBQcm9mZXNzaW9uYWwiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgU3VidGxlIDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUg
U3VidGxlIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgV2ViIDEiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgV2ViIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgV2Vi
IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iQmFsbG9vbiBUZXh0Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBOYW1lPSJUYWJsZSBHcmlkIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IlRhYmxlIFRoZW1lIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgTmFtZT0iUGxhY2Vob2xkZXIgVGV4dCIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIxIiBRRm9ybWF0PSJ0cnVlIiBOYW1l
PSJObyBTcGFjaW5nIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjYwIiBOYW1lPSJMaWdodCBTaGFkaW5nIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjYxIiBOYW1lPSJMaWdodCBMaXN0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBOYW1lPSJMaWdodCBHcmlkIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAx
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY0IiBOYW1lPSJN
ZWRpdW0gU2hhZGluZyAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjY1IiBOYW1lPSJNZWRpdW0gTGlzdCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjY2IiBOYW1lPSJNZWRpdW0gTGlzdCAyIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBOYW1lPSJNZWRpdW0gR3JpZCAxIi8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBOYW1lPSJNZWRpdW0g
R3JpZCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBO
YW1lPSJNZWRpdW0gR3JpZCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjcwIiBOYW1lPSJEYXJrIExpc3QiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNzEiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmciLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIE5hbWU9IkNvbG9yZnVsIExpc3QiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIE5hbWU9IkNvbG9y
ZnVsIEdyaWQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAi
IE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNjEiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDEiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdyaWQg
QWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMi
IE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDEi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIE5hbWU9Ik1l
ZGl1bSBMaXN0IDEgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBT
ZW1pSGlkZGVuPSJ0cnVlIiBOYW1lPSJSZXZpc2lvbiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSIzNCIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iTGlzdCBQYXJhZ3Jh
cGgiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjkiIFFGb3Jt
YXQ9InRydWUiIE5hbWU9IlF1b3RlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
UHJpb3JpdHk9IjMwIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJJbnRlbnNlIFF1b3RlIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBOYW1lPSJNZWRpdW0gTGlz
dCAyIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjY3IiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCAxIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBOYW1lPSJNZWRp
dW0gR3JpZCAzIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjcwIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50
IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIE5hbWU9
IkNvbG9yZnVsIExpc3QgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iNzMiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDEiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIE5hbWU9IkxpZ2h0IFNoYWRpbmcg
QWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEi
IE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIE5hbWU9Ik1lZGl1bSBTaGFkaW5n
IDEgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjQiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIE5hbWU9Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDIi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIE5hbWU9Ik1l
ZGl1bSBMaXN0IDIgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iNjciIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNj
ZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIE5h
bWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgMiIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgTmFtZT0iQ29sb3JmdWwgU2hhZGlu
ZyBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3
MiIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgTmFtZT0iTGlnaHQg
U2hhZGluZyBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI2MSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBBY2NlbnQgMyIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgTmFtZT0iTWVkaXVt
IFNoYWRpbmcgMSBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI2NCIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgMyIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVkaXVtIExpc3QgMSBB
Y2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIg
TmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI2NyIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgMyIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgTmFtZT0iTWVkaXVtIEdy
aWQgMiBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI2OSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCAzIi8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBOYW1lPSJDb2xvcmZ1
bCBTaGFkaW5nIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjcyIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2Vu
dCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYwIiBOYW1l
PSJMaWdodCBTaGFkaW5nIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjYxIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBOYW1lPSJMaWdodCBHcmlkIEFjY2Vu
dCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBOYW1l
PSJNZWRpdW0gU2hhZGluZyAxIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjY0IiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFjY2VudCA0Ii8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBOYW1lPSJNZWRpdW0g
TGlzdCAxIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjY2IiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCA0
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBOYW1lPSJN
ZWRpdW0gR3JpZCAyIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
UHJpb3JpdHk9IjY5IiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50
IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIE5hbWU9
IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNzIiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDQiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIE5hbWU9IkNvbG9yZnVsIEdy
aWQgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjAiIE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdy
aWQgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjMiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50
IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIE5hbWU9
Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iNjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDUiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIE5hbWU9Ik1lZGl1bSBHcmlkIDEg
QWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgi
IE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNjkiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIE5hbWU9IkRhcmsgTGlz
dCBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3
MSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgTmFtZT0iQ29s
b3JmdWwgR3JpZCBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI2MCIgTmFtZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQg
NiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgTmFtZT0i
TGlnaHQgR3JpZCBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI2MyIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgNiIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgTmFtZT0iTWVkaXVtIFNoYWRpbmcg
MiBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2
NSIgTmFtZT0iTWVkaXVtIExpc3QgMSBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgNiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgTmFtZT0iTWVkaXVt
IEdyaWQgMSBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI2OCIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQg
NiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgTmFtZT0i
RGFyayBMaXN0IEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjcxIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFj
Y2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBO
YW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjE5IiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJTdWJ0bGUgRW1waGFzaXMi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjEiIFFGb3JtYXQ9
InRydWUiIE5hbWU9IkludGVuc2UgRW1waGFzaXMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iMzEiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlN1YnRsZSBSZWZlcmVu
Y2UiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzIiIFFGb3Jt
YXQ9InRydWUiIE5hbWU9IkludGVuc2UgUmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjMzIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJCb29rIFRpdGxl
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM3IiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iQmlibGlvZ3JhcGh5Ii8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iVE9DIEhlYWRp
bmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDEiIE5hbWU9
IlBsYWluIFRhYmxlIDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNDIiIE5hbWU9IlBsYWluIFRhYmxlIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNDMiIE5hbWU9IlBsYWluIFRhYmxlIDMiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDQiIE5hbWU9IlBsYWluIFRhYmxlIDQiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDUiIE5hbWU9IlBsYWluIFRh
YmxlIDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDAiIE5h
bWU9IkdyaWQgVGFibGUgTGlnaHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iNDYiIE5hbWU9IkdyaWQgVGFibGUgMSBMaWdodCIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlkIFRhYmxl
IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9
IkdyaWQgVGFibGUgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9IkdyaWQgVGFibGUgNiBDb2xvcmZ1bCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJs
ZSA3IENvbG9yZnVsIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjQ2IiBOYW1lPSJHcmlkIFRhYmxlIDEgTGlnaHQgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDciIE5hbWU9IkdyaWQgVGFibGUgMiBBY2NlbnQg
MSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0i
R3JpZCBUYWJsZSAzIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
UHJpb3JpdHk9IjQ5IiBOYW1lPSJHcmlkIFRhYmxlIDQgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9IkdyaWQgVGFibGUgNSBEYXJr
IEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUx
IiBOYW1lPSJHcmlkIFRhYmxlIDYgQ29sb3JmdWwgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9IkdyaWQgVGFibGUgNyBDb2xvcmZ1
bCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0
NiIgTmFtZT0iR3JpZCBUYWJsZSAxIExpZ2h0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIgQWNjZW50IDIi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikdy
aWQgVGFibGUgMyBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI0OSIgTmFtZT0iR3JpZCBUYWJsZSA0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUwIiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayBB
Y2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIg
TmFtZT0iR3JpZCBUYWJsZSA2IENvbG9yZnVsIEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcgQ29sb3JmdWwg
QWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYi
IE5hbWU9IkdyaWQgVGFibGUgMSBMaWdodCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIEFjY2VudCAzIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlk
IFRhYmxlIDMgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNDkiIE5hbWU9IkdyaWQgVGFibGUgNCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsgQWNj
ZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5h
bWU9IkdyaWQgVGFibGUgNiBDb2xvcmZ1bCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJsZSA3IENvbG9yZnVsIEFj
Y2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBO
YW1lPSJHcmlkIFRhYmxlIDEgTGlnaHQgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDciIE5hbWU9IkdyaWQgVGFibGUgMiBBY2NlbnQgNCIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iR3JpZCBU
YWJsZSAzIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjQ5IiBOYW1lPSJHcmlkIFRhYmxlIDQgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9IkdyaWQgVGFibGUgNSBEYXJrIEFjY2Vu
dCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1l
PSJHcmlkIFRhYmxlIDYgQ29sb3JmdWwgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9IkdyaWQgVGFibGUgNyBDb2xvcmZ1bCBBY2Nl
bnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFt
ZT0iR3JpZCBUYWJsZSAxIExpZ2h0IEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIgQWNjZW50IDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFi
bGUgMyBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI0OSIgTmFtZT0iR3JpZCBUYWJsZSA0IEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUwIiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayBBY2NlbnQg
NSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0i
R3JpZCBUYWJsZSA2IENvbG9yZnVsIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50
IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9
IkdyaWQgVGFibGUgMSBMaWdodCBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIEFjY2VudCA2Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlkIFRhYmxl
IDMgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NDkiIE5hbWU9IkdyaWQgVGFibGUgNCBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsgQWNjZW50IDYi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikdy
aWQgVGFibGUgNiBDb2xvcmZ1bCBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCA2
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJM
aXN0IFRhYmxlIDEgTGlnaHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNDciIE5hbWU9Ikxpc3QgVGFibGUgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0IFRhYmxlIDQiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9Ikxpc3QgVGFi
bGUgNSBEYXJrIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUx
IiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29sb3JmdWwiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iTGlzdCBUYWJs
ZSAxIExpZ2h0IEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjQ3IiBOYW1lPSJMaXN0IFRhYmxlIDIgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikxpc3QgVGFibGUgMyBBY2NlbnQg
MSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0i
TGlzdCBUYWJsZSA0IEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
UHJpb3JpdHk9IjUwIiBOYW1lPSJMaXN0IFRhYmxlIDUgRGFyayBBY2NlbnQgMSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iTGlzdCBUYWJsZSA2
IENvbG9yZnVsIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjUyIiBOYW1lPSJMaXN0IFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDEiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3QgVGFibGUg
MSBMaWdodCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI0NyIgTmFtZT0iTGlzdCBUYWJsZSAyIEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMgQWNjZW50IDIi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxp
c3QgVGFibGUgNCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI1MCIgTmFtZT0iTGlzdCBUYWJsZSA1IERhcmsgQWNjZW50IDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikxpc3QgVGFibGUgNiBD
b2xvcmZ1bCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI1MiIgTmFtZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCAyIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJMaXN0IFRhYmxlIDEg
TGlnaHQgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNDciIE5hbWU9Ikxpc3QgVGFibGUgMiBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIEFjY2VudCAzIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0
IFRhYmxlIDQgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNTAiIE5hbWU9Ikxpc3QgVGFibGUgNSBEYXJrIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29s
b3JmdWwgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNTIiIE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgMyIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iTGlzdCBUYWJsZSAxIExp
Z2h0IEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjQ3IiBOYW1lPSJMaXN0IFRhYmxlIDIgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikxpc3QgVGFibGUgMyBBY2NlbnQgNCIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iTGlzdCBU
YWJsZSA0IEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjUwIiBOYW1lPSJMaXN0IFRhYmxlIDUgRGFyayBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iTGlzdCBUYWJsZSA2IENvbG9y
ZnVsIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjUyIiBOYW1lPSJMaXN0IFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3QgVGFibGUgMSBMaWdo
dCBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0
NyIgTmFtZT0iTGlzdCBUYWJsZSAyIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMgQWNjZW50IDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFi
bGUgNCBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI1MCIgTmFtZT0iTGlzdCBUYWJsZSA1IERhcmsgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1
bCBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1
MiIgTmFtZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJMaXN0IFRhYmxlIDEgTGlnaHQg
QWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDci
IE5hbWU9Ikxpc3QgVGFibGUgMiBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIEFjY2VudCA2Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0IFRhYmxl
IDQgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NTAiIE5hbWU9Ikxpc3QgVGFibGUgNSBEYXJrIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29sb3JmdWwg
QWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIi
IE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBO
YW1lPSJNZW50aW9uIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRl
bj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlNtYXJ0IEh5cGVybGluayIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIYXNodGFnIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlVucmVz
b2x2ZWQgTWVudGlvbiIvPg0KPC93OkxhdGVudFN0eWxlcz4NCjwveG1sPjwhW2VuZGlmXS0tPjxz
dHlsZT48IS0tDQovKiBGb250IERlZmluaXRpb25zICovDQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFt
aWx5OiJDYW1icmlhIE1hdGgiOw0KCXBhbm9zZS0xOjIgNCA1IDMgNSA0IDYgMyAyIDQ7DQoJbXNv
LWZvbnQtY2hhcnNldDowOw0KCW1zby1nZW5lcmljLWZvbnQtZmFtaWx5OnJvbWFuOw0KCW1zby1m
b250LXBpdGNoOnZhcmlhYmxlOw0KCW1zby1mb250LXNpZ25hdHVyZTotNTM2ODcwMTQ1IDExMDcz
MDU3MjcgMCAwIDQxNSAwO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6RGVuZ1hpYW47DQoJ
cGFub3NlLTE6MiAxIDYgMCAzIDEgMSAxIDEgMTsNCgltc28tZm9udC1hbHQ6562J57q/Ow0KCW1z
by1mb250LWNoYXJzZXQ6MTM0Ow0KCW1zby1nZW5lcmljLWZvbnQtZmFtaWx5OmF1dG87DQoJbXNv
LWZvbnQtcGl0Y2g6dmFyaWFibGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi0xNjEwNjEyMDMzIDk1
MzEyMjA0MiAyMiAwIDI2MjE1OSAwO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q2FsaWJy
aTsNCglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAzIDIgNDsNCgltc28tZm9udC1jaGFyc2V0OjA7
DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7DQoJbXNvLWZvbnQtcGl0Y2g6dmFyaWFi
bGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi01MzY4NTk5MDUgLTEwNzM3MzI0ODUgOSAwIDUxMSAw
O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q29uc29sYXM7DQoJcGFub3NlLTE6MiAxMSA2
IDkgMiAyIDQgMyAyIDQ7DQoJbXNvLWZvbnQtY2hhcnNldDowOw0KCW1zby1nZW5lcmljLWZvbnQt
ZmFtaWx5Om1vZGVybjsNCgltc28tZm9udC1waXRjaDpmaXhlZDsNCgltc28tZm9udC1zaWduYXR1
cmU6LTUzNjg2OTEyMSA2NDc2NyAxIDAgNDE1IDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWls
eTrlvq7ova/pm4Xpu5E7DQoJcGFub3NlLTE6MiAxMSA1IDMgMiAyIDQgMiAyIDQ7DQoJbXNvLWZv
bnQtY2hhcnNldDoxMzQ7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7DQoJbXNvLWZv
bnQtcGl0Y2g6dmFyaWFibGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi0yMTQ3NDgzMDAxIDY4NDY3
MDAzMiAyMiAwIDI2MjE3NSAwO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IlxA562J57q/
IjsNCglwYW5vc2UtMToyIDEgNiAwIDMgMSAxIDEgMSAxOw0KCW1zby1mb250LWFsdDoiXEBEZW5n
WGlhbiI7DQoJbXNvLWZvbnQtY2hhcnNldDoxMzQ7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6
YXV0bzsNCgltc28tZm9udC1waXRjaDphdXRvOw0KCW1zby1mb250LXNpZ25hdHVyZTowIDAgMCAw
IDAgMDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OiJcQOW+rui9r+mbhem7kSI7DQoJbXNv
LWZvbnQtY2hhcnNldDoxMzQ7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7DQoJbXNv
LWZvbnQtcGl0Y2g6dmFyaWFibGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi0yMTQ3NDgzMDAxIDY4
NDY3MDAzMiAyMiAwIDI2MjE3NSAwO30NCi8qIFN0eWxlIERlZmluaXRpb25zICovDQpwLk1zb05v
cm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21zby1zdHlsZS11bmhpZGU6bm87
DQoJbXNvLXN0eWxlLXFmb3JtYXQ6eWVzOw0KCW1zby1zdHlsZS1wYXJlbnQ6IiI7DQoJbWFyZ2lu
OjBjbTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJbXNvLXBhZ2luYXRpb246d2lkb3ctb3Jw
aGFuOw0KCWZvbnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2Vy
aWY7DQoJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6RGVuZ1hpYW47fQ0KYTpsaW5rLCBzcGFuLk1z
b0h5cGVybGluaw0KCXttc28tc3R5bGUtbm9zaG93OnllczsNCgltc28tc3R5bGUtcHJpb3JpdHk6
OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOw0KCXRleHQtdW5k
ZXJsaW5lOnNpbmdsZTt9DQphOnZpc2l0ZWQsIHNwYW4uTXNvSHlwZXJsaW5rRm9sbG93ZWQNCgl7
bXNvLXN0eWxlLW5vc2hvdzp5ZXM7DQoJbXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9yOnB1
cnBsZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOw0KCXRleHQtdW5kZXJsaW5lOnNpbmds
ZTt9DQpwLm1zb25vcm1hbDAsIGxpLm1zb25vcm1hbDAsIGRpdi5tc29ub3JtYWwwDQoJe21zby1z
dHlsZS1uYW1lOm1zb25vcm1hbDsNCgltc28tc3R5bGUtdW5oaWRlOm5vOw0KCW1zby1tYXJnaW4t
dG9wLWFsdDphdXRvOw0KCW1hcmdpbi1yaWdodDowY207DQoJbXNvLW1hcmdpbi1ib3R0b20tYWx0
OmF1dG87DQoJbWFyZ2luLWxlZnQ6MGNtOw0KCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsN
Cglmb250LXNpemU6MTEuMHB0Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0K
CW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OkRlbmdYaWFuO30NCnNwYW4ubS0xNDIzNzc4NzcyMzg1
NzMxMzIyaG9lbnpiDQoJe21zby1zdHlsZS1uYW1lOm1fLTE0MjM3Nzg3NzIzODU3MzEzMjJob2Vu
emI7DQoJbXNvLXN0eWxlLXVuaGlkZTpubzt9DQpzcGFuLmhvZW56Yg0KCXttc28tc3R5bGUtbmFt
ZTpob2VuemI7DQoJbXNvLXN0eWxlLXVuaGlkZTpubzt9DQpzcGFuLkVtYWlsU3R5bGUyMA0KCXtt
c28tc3R5bGUtdHlwZTpwZXJzb25hbC1yZXBseTsNCgltc28tc3R5bGUtbm9zaG93OnllczsNCglt
c28tc3R5bGUtdW5oaWRlOm5vOw0KCW1zby1hbnNpLWZvbnQtc2l6ZToxMS4wcHQ7DQoJbXNvLWJp
ZGktZm9udC1zaXplOjExLjBwdDsNCglmb250LWZhbWlseTpDb25zb2xhczsNCgltc28tYXNjaWkt
Zm9udC1mYW1pbHk6Q29uc29sYXM7DQoJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF
6buROw0KCW1zby1oYW5zaS1mb250LWZhbWlseTpDb25zb2xhczsNCgltc28tYmlkaS1mb250LWZh
bWlseToiVGltZXMgTmV3IFJvbWFuIjsNCgljb2xvcjp3aW5kb3d0ZXh0O30NCnNwYW4uU3BlbGxF
DQoJe21zby1zdHlsZS1uYW1lOiIiOw0KCW1zby1zcGwtZTp5ZXM7fQ0KLk1zb0NocERlZmF1bHQN
Cgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7DQoJbXNvLWRlZmF1bHQtcHJvcHM6eWVzOw0K
CWZvbnQtc2l6ZToxMC4wcHQ7DQoJbXNvLWFuc2ktZm9udC1zaXplOjEwLjBwdDsNCgltc28tYmlk
aS1mb250LXNpemU6MTAuMHB0Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0K
CW1zby1hc2NpaS1mb250LWZhbWlseTpDYWxpYnJpOw0KCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5
OkRlbmdYaWFuOw0KCW1zby1oYW5zaS1mb250LWZhbWlseTpDYWxpYnJpOw0KCW1zby1iaWRpLWZv
bnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30NCkBwYWdlIFdvcmRTZWN0aW9uMQ0KCXtzaXpl
OjYxMi4wcHQgNzkyLjBwdDsNCgltYXJnaW46NzIuMHB0IDkwLjBwdCA3Mi4wcHQgOTAuMHB0Ow0K
CW1zby1oZWFkZXItbWFyZ2luOjM2LjBwdDsNCgltc28tZm9vdGVyLW1hcmdpbjozNi4wcHQ7DQoJ
bXNvLXBhcGVyLXNvdXJjZTowO30NCmRpdi5Xb3JkU2VjdGlvbjENCgl7cGFnZTpXb3JkU2VjdGlv
bjE7fQ0KLS0+PC9zdHlsZT48IS0tW2lmIGd0ZSBtc28gMTBdPjxzdHlsZT4vKiBTdHlsZSBEZWZp
bml0aW9ucyAqLw0KdGFibGUuTXNvTm9ybWFsVGFibGUNCgl7bXNvLXN0eWxlLW5hbWU6IlRhYmxl
IE5vcm1hbCI7DQoJbXNvLXRzdHlsZS1yb3diYW5kLXNpemU6MDsNCgltc28tdHN0eWxlLWNvbGJh
bmQtc2l6ZTowOw0KCW1zby1zdHlsZS1ub3Nob3c6eWVzOw0KCW1zby1zdHlsZS1wcmlvcml0eTo5
OTsNCgltc28tc3R5bGUtcGFyZW50OiIiOw0KCW1zby1wYWRkaW5nLWFsdDowY20gNS40cHQgMGNt
IDUuNHB0Ow0KCW1zby1wYXJhLW1hcmdpbjowY207DQoJbXNvLXBhcmEtbWFyZ2luLWJvdHRvbTou
MDAwMXB0Ow0KCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsNCglmb250LXNpemU6MTAuMHB0
Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0KCW1zby1hc2NpaS1mb250LWZh
bWlseTpDYWxpYnJpOw0KCW1zby1oYW5zaS1mb250LWZhbWlseTpDYWxpYnJpOw0KCW1zby1iaWRp
LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30NCjwvc3R5bGU+PCFbZW5kaWZdLS0+PCEt
LVtpZiBndGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWRlZmF1bHRzIHY6ZXh0PSJlZGl0IiBzcGlk
bWF4PSIxMDI2IiAvPg0KPC94bWw+PCFbZW5kaWZdLS0+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+
DQo8bzpzaGFwZWxheW91dCB2OmV4dD0iZWRpdCI+DQo8bzppZG1hcCB2OmV4dD0iZWRpdCIgZGF0
YT0iMSIgLz4NCjwvbzpzaGFwZWxheW91dD48L3htbD48IVtlbmRpZl0tLT4NCjwvaGVhZD4NCjxi
b2R5IGxhbmc9IkVOLVVTIiBsaW5rPSJibHVlIiB2bGluaz0icHVycGxlIiBzdHlsZT0idGFiLWlu
dGVydmFsOjM2LjBwdCI+DQo8ZGl2IGNsYXNzPSJXb3JkU2VjdGlvbjEiPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZv
bnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBO
ZXcgUm9tYW4mcXVvdDsiPkhpIEFqYXksPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0
LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1l
cyBOZXcgUm9tYW4mcXVvdDsiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhczttc28tZmFyZWFz
dC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7bXNvLWJpZGktZm9udC1mYW1pbHk6JnF1b3Q7VGlt
ZXMgTmV3IFJvbWFuJnF1b3Q7Ij5JdCBzZWVtcyB5b3UgaGF2ZSB0byB3YWl0IHVudGlsIENvc3Rp
buKAmXMgc2NoZWR1bGUgbGliIHRvIGJlIG1lcmdlZC48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNv
LWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZx
dW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+W1VOSUtSQUZUIFBBVENIIDEzLzE3XSBsaWIvPHNw
YW4gY2xhc3M9IlNwZWxsRSI+dWtzY2hlZDwvc3Bhbj46IFVwZGF0ZXMgZm9yDQo8c3BhbiBjbGFz
cz0iU3BlbGxFIj5pbmxpbmluZzwvc3Bhbj4gd2l0aCBwbGF0L2NvbW1vbiBjaGFuZ2VzPG86cD48
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt
ZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28t
YmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPjxvOnA+Jm5ic3A7
PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250
LWZhbWlseTpDb25zb2xhczttc28tZmFyZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7bXNv
LWJpZGktZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij5PciB5b3UgY2Fu
IHBpY2sgaGlzIHBhdGNoIHNlcmllcyB0byB5b3VyIGxvY2FsIHJlcG9zaXRvcnkgZm9yIHRlc3Rp
bmcgaW4gYWR2YW5jZS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1p
bHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21h
biZxdW90OyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFt
aWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9t
YW4mcXVvdDsiPlJlZ2FyZHMsPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQt
ZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcg
Um9tYW4mcXVvdDsiPldlaSBDaGVuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZv
bnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBO
ZXcgUm9tYW4mcXVvdDsiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhczttc28tZmFyZWFzdC1m
b250LWZhbWlseTrlvq7ova/pm4Xpu5E7bXNvLWJpZGktZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMg
TmV3IFJvbWFuJnF1b3Q7Ij48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8ZGl2IHN0eWxl
PSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xpZCBibHVlIDEuNXB0O3BhZGRpbmc6MGNtIDBj
bSAwY20gNC4wcHQiPg0KPGRpdj4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6
c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBjbSAwY20gMGNtIj4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPjxiPjxzcGFuIHN0eWxlPSJtc28tZmFyZWFzdC1mb250LWZhbWlseTomcXVv
dDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPkZyb206PC9zcGFuPjwvYj48c3BhbiBzdHlsZT0ibXNv
LWZhcmVhc3QtZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij4gTWluaW9z
LWRldmVsICZsdDttaW5pb3MtZGV2ZWwtYm91bmNlc0BsaXN0cy54ZW5wcm9qZWN0Lm9yZyZndDsN
CjxiPk9uIEJlaGFsZiBPZiA8L2I+QWpheSBHYXJnPGJyPg0KPGI+U2VudDo8L2I+IDIwMTg8L3Nw
YW4+PHNwYW4gbGFuZz0iWkgtQ04iIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDvlvq7ova/pm4Xp
u5EmcXVvdDssc2Fucy1zZXJpZjttc28tYmlkaS1mb250LWZhbWlseTrlvq7ova/pm4Xpu5EiPuW5
tDwvc3Bhbj48c3BhbiBzdHlsZT0ibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMg
TmV3IFJvbWFuJnF1b3Q7Ij40PC9zcGFuPjxzcGFuIGxhbmc9IlpILUNOIiBzdHlsZT0iZm9udC1m
YW1pbHk6JnF1b3Q75b6u6L2v6ZuF6buRJnF1b3Q7LHNhbnMtc2VyaWY7bXNvLWJpZGktZm9udC1m
YW1pbHk65b6u6L2v6ZuF6buRIj7mnIg8L3NwYW4+PHNwYW4gc3R5bGU9Im1zby1mYXJlYXN0LWZv
bnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+MTg8L3NwYW4+PHNwYW4gbGFu
Zz0iWkgtQ04iIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDvlvq7ova/pm4Xpu5EmcXVvdDssc2Fu
cy1zZXJpZjttc28tYmlkaS1mb250LWZhbWlseTrlvq7ova/pm4Xpu5EiPuaXpTwvc3Bhbj48c3Bh
biBzdHlsZT0ibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1
b3Q7Ij4NCiA5OjE0PGJyPg0KPGI+VG86PC9iPiBtaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVj
dC5vcmc8YnI+DQo8Yj5TdWJqZWN0OjwvYj4gUmU6IFtNaW5pb3MtZGV2ZWxdIFtVbmlrcmFmdF0g
U3RhdGljIExpYnJhcmllcyBub3QgYmVpbmcgbGlua2VkIHByb3Blcmx5PG86cD48L286cD48L3Nw
YW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7
PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkVhcm5lc3QgcmVxdWVzdCBm
b3Igc29tZSBoZWxwLCBwbGVhc2UgLi48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPk9uIFN1biwgQXByIDE1LCAyMDE4IGF0IDc6MDUgUE0sIEFqYXkgR2FyZyAm
bHQ7PGEgaHJlZj0ibWFpbHRvOmFqYXlnYXJnbnNpdEBnbWFpbC5jb20iIHRhcmdldD0iX2JsYW5r
Ij5hamF5Z2FyZ25zaXRAZ21haWwuY29tPC9hPiZndDsgd3JvdGU6PG86cD48L286cD48L3A+DQo8
YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgI0NDQ0NDQyAx
LjBwdDttc28tYm9yZGVyLWxlZnQtYWx0OnNvbGlkICNDQ0NDQ0MgLjc1cHQ7cGFkZGluZzowY20g
MGNtIDBjbSA2LjBwdDttYXJnaW4tbGVmdDo0LjhwdDttYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1y
aWdodDowY207bWFyZ2luLWJvdHRvbTo1LjBwdCI+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPklkZWFzIHBsZWFzZT88bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+QW55IHBvaW50ZXJzIHRvIGFueSBleGlzdGluZyBleGFtcGxlIHVzYWdlIG9m
IGxpbmtpbmcgc3RhdGljLWxpYnJhcmllcyB3b3VsZCBiZSB1c2VmdWwuPG86cD48L286cD48L3A+
DQo8L2Rpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+
Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPk9uIFNhdCwgQXBy
IDE0LCAyMDE4IGF0IDY6MTUgUE0sIEFqYXkgR2FyZyAmbHQ7PGEgaHJlZj0ibWFpbHRvOmFqYXln
YXJnbnNpdEBnbWFpbC5jb20iIHRhcmdldD0iX2JsYW5rIj5hamF5Z2FyZ25zaXRAZ21haWwuY29t
PC9hPiZndDsgd3JvdGU6PG86cD48L286cD48L3A+DQo8YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVy
Om5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgI0NDQ0NDQyAxLjBwdDttc28tYm9yZGVyLWxlZnQtYWx0
OnNvbGlkICNDQ0NDQ0MgLjc1cHQ7cGFkZGluZzowY20gMGNtIDBjbSA2LjBwdDttYXJnaW4tbGVm
dDo0LjhwdDttYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbTo1
LjBwdCI+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5WZXJ5IHN1
cnByaXNpbmdseSwgdGhlIG1pc3NpbmcgZnVuY3Rpb25zIChzdGFydF90aW1lLCBlbmRfdGltZSkg
YXJlIGFjdHVhbGx5IHByZXNlbnQgaW4NCjxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS90b255
aG8vQ29yZU1hcmsvYmxvYi9tYXN0ZXIvY29yZV9tYWluLmMiIHRhcmdldD0iX2JsYW5rIj4NCmh0
dHBzOi8vZ2l0aHViLmNvbS90b255aG8vQ29yZU1hcmsvYmxvYi9tYXN0ZXIvY29yZV9tYWluLmM8
L2E+LjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i
bWFyZ2luLWJvdHRvbToxMi4wcHQiPkJ1dCBpbiB0aGUgbWFrZS1vdXRwdXQsIGZkdF93aXAuYyBp
cyBiZWluZyBsaXN0ZWQuPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPGRpdj4NCjxk
aXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+T24gU2F0LCBBcHIgMTQsIDIwMTggYXQgOToyMiBB
TSwgQWpheSBHYXJnICZsdDs8YSBocmVmPSJtYWlsdG86YWpheWdhcmduc2l0QGdtYWlsLmNvbSIg
dGFyZ2V0PSJfYmxhbmsiPmFqYXlnYXJnbnNpdEBnbWFpbC5jb208L2E+Jmd0OyB3cm90ZTo8bzpw
PjwvbzpwPjwvcD4NCjxibG9ja3F1b3RlIHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpz
b2xpZCAjQ0NDQ0NDIDEuMHB0O21zby1ib3JkZXItbGVmdC1hbHQ6c29saWQgI0NDQ0NDQyAuNzVw
dDtwYWRkaW5nOjBjbSAwY20gMGNtIDYuMHB0O21hcmdpbi1sZWZ0OjQuOHB0O21hcmdpbi10b3A6
NS4wcHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOjUuMHB0Ij4NCjxkaXY+DQo8ZGl2
Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkhpIEFsbC48YnI+DQo8YnI+DQpJIGFtIHRy
eWluZyB0byBpbnRlZ3JhdGUgY29yZW1hcmstYXBwIGluIHVuaWtyYWZ0IGZvciB4ODZfNjQuPG86
cD48L286cD48L3A+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4t
Ym90dG9tOjEyLjBwdCI+SXQgcmVxdWlyZXMgc3RhdGljIGxpbmtpbmcgdG8gbGlicnQuYSBhbmQg
bGlicHRocmVhZC5hOyBob3dldmVyIHNlZW1zJm5ic3A7IHRoZXkgYXJlIG5vdCBiZWluZyBwaWNr
ZWQgdXAuPGJyIHN0eWxlPSJtc28tc3BlY2lhbC1jaGFyYWN0ZXI6bGluZS1icmVhayI+DQo8IVtp
ZiAhc3VwcG9ydExpbmVCcmVha05ld0xpbmVdPjxiciBzdHlsZT0ibXNvLXNwZWNpYWwtY2hhcmFj
dGVyOmxpbmUtYnJlYWsiPg0KPCFbZW5kaWZdPjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj5Gb2xsb3dpbmcgaXMgdGhlIE1ha2VmaWxlLnVrIDo8YnI+DQo8YnI+
DQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIzxicj4NCiQoZXZhbCAkKGNhbGwgYWRkbGliLGFwcGNvcmVtYXJrKSk8YnI+
DQo8YnI+DQpBUFBDT1JFTUFSS19TUkNTLXkmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJiM0Mzs9ICQo
QVBQQ09SRU1BUktfQkFTRSkvY29yZV9tYWluLmMmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
XDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyAkKEFQUENPUkVNQVJLX0JBU0UpL2NvcmVfbGlzdF9qb2luLmMmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgXDxicj4NCiZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAk
KEFQUENPUkVNQVJLX0JBU0UpL2NvcmVfdXRpbC5jJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7IFw8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJChBUFBDT1JFTUFSS19CQVNFKS9jb3JlX3N0YXRl
LmMmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgXDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAkKEFQUENPUkVNQVJLX0JBU0Up
L2NvcmVfbWF0cml4LmMmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgXDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBcPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICQoQVBQQ09SRU1BUktfQkFTRSkvbGlu
dXg2NC9jb3JlX3BvcnRtZS5jPGJyPg0KPGJyPg0KQVBQQ09SRU1BUktfT0JKUy15Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7ICYjNDM7PSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2xpYnJ0
LmEmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
XDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2xpYnB0aHJlYWQuYTxicj4N
Cjxicj4NCkFQUENPUkVNQVJLX0NJTkNMVURFUy15Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICYj
NDM7PS1JJChBUFBDT1JFTUFSS19CQVNFKSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBcPGJyPg0KJm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IC1J
JChBUFBDT1JFTUFSS19CQVNFKS9saW51eDY0Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFw8YnI+DQombmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgLUkkKEFQUENPUkVNQVJL
X0JBU0UpLy4uLy4uL3VuaWtyYWZ0L2xpYi9ub2xpYmMvaW5jbHVkZS9zeXMmbmJzcDsmbmJzcDsg
XDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyAtSS91c3IvaW5jbHVkZTxicj4NCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPG86cD48L286cD48L3A+DQo8
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEy
LjBwdCI+PGJyPg0KPGJyPg0KRm9sbG93aW5nIGlzIHRoZSBjb21waWxhdGlvbi1ydW4gOjxicj4N
Cjxicj4NCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjPGJyPg0KYWFqYXlAbGF0aXR1ZGUtMzQ4MDp+L3VuaWtyYWZ0L2Fw
cHMvY29yZW1hcmskIG1ha2U8YnI+DQptYWtlWzFdOiBFbnRlcmluZyBkaXJlY3RvcnkgJy9ob21l
L2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQnPGJyPg0KJm5ic3A7IENQJm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IGNvbmZpZzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyBsaWJ4ZW5wbGF0OiBoeXBlcnZpc29yLm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlieGVucGxhdDogbWVtb3J5Lm88YnI+DQombmJzcDsgQ0Mm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlieGVucGxhdDogc2V0dXAubzxicj4NCiZu
YnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJ4ZW5wbGF0OiB0cmFwcy5v
PGJyPg0KJm5ic3A7IEFTJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYnhlbnBsYXQ6
IGVudHJ5NjQubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBs
aWJ4ZW5wbGF0OiBtbS5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7IGxpYnhlbnBsYXQ6IGFyY2hfZXZlbnRzLm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsgbGlieGVucGxhdDogYXJjaF90aW1lLm88YnI+DQombmJzcDsgQ0Mm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlieGVucGxhdDogbGNwdS5vPGJyPg0KJm5i
c3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYnhlbnBsYXQ6IGNvbnNvbGUu
bzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJ4ZW5wbGF0
OiBzaHV0ZG93bi5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
IGxpYnhlbnBsYXQ6IGV2ZW50cy5vPGJyPg0KJm5ic3A7IExEJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7IGxpYnhlbnBsYXQubGQubzxicj4NCiZuYnNwOyBPQkpDT1BZIGxpYnhlbnBsYXQu
bzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBhcHBjb3JlbWFy
azogY29yZV9tYWluLm88YnI+DQovaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvY29y
ZV9tYWluLmM6IEluIGZ1bmN0aW9uIOKAmG1haW7igJk6PGJyPg0KL2hvbWUvYWpheS91bmlrcmFm
dC9hcHBzL2NvcmVtYXJrL2NvcmVfbWFpbi5jOjI5MjoxMjogd2FybmluZzogZm9ybWF0IOKAmCVs
deKAmSBleHBlY3RzIGFyZ3VtZW50IG9mIHR5cGUg4oCYbG9uZyB1bnNpZ25lZCBpbnTigJksIGJ1
dCBhcmd1bWVudCAyIGhhcyB0eXBlIOKAmHVuc2lnbmVkIGludOKAmSBbLVdmb3JtYXQ9XTxicj4N
CiZuYnNwOyBlZV9wcmludGYoJnF1b3Q7Q29yZU1hcmsgU2l6ZSZuYnNwOyZuYnNwOyZuYnNwOyA6
ICVsdVxuJnF1b3Q7LChlZV91MzIpcmVzdWx0c1swXS5zaXplKTs8YnI+DQombmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgXjxi
cj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9jb3JlX21haW4uYzoyOTM6MTI6
IHdhcm5pbmc6IGZvcm1hdCDigJglbHXigJkgZXhwZWN0cyBhcmd1bWVudCBvZiB0eXBlIOKAmGxv
bmcgdW5zaWduZWQgaW504oCZLCBidXQgYXJndW1lbnQgMiBoYXMgdHlwZSDigJh1bnNpZ25lZCBp
bnTigJkgWy1XZm9ybWF0PV08YnI+DQombmJzcDsgZWVfcHJpbnRmKCZxdW90O1RvdGFsIHRpY2tz
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IDogJWx1XG4mcXVvdDssKGVlX3UzMil0b3Rh
bF90aW1lKTs8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgXjxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9j
b3JlbWFyay9jb3JlX21haW4uYzozMDg6MTI6IHdhcm5pbmc6IGZvcm1hdCDigJglbHXigJkgZXhw
ZWN0cyBhcmd1bWVudCBvZiB0eXBlIOKAmGxvbmcgdW5zaWduZWQgaW504oCZLCBidXQgYXJndW1l
bnQgMiBoYXMgdHlwZSDigJh1bnNpZ25lZCBpbnTigJkgWy1XZm9ybWF0PV08YnI+DQombmJzcDsg
ZWVfcHJpbnRmKCZxdW90O0l0ZXJhdGlvbnMmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsgOiAlbHVcbiZxdW90OywoZWVfdTMyKWRlZmF1bHRfbnVtX2NvbnRleHRzKnJlc3VsdHNb
MF0uaXRlcmF0aW9ucyk7PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF48YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgYXBwY29yZW1hcms6IGNvcmVfbGlzdF9qb2luLm88YnI+DQom
bmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgYXBwY29yZW1hcms6IGNvcmVf
dXRpbC5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGFwcGNv
cmVtYXJrOiBjb3JlX3N0YXRlLm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsgYXBwY29yZW1hcms6IGNvcmVfbWF0cml4Lm88YnI+DQombmJzcDsgQ0MmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgYXBwY29yZW1hcms6IGNvcmVfcG9ydG1lLm88YnI+DQpJ
biBmaWxlIGluY2x1ZGVkIGZyb20gL3Vzci9pbmNsdWRlL2ZlYXR1cmVzLmg6MzY3OjAsPGJyPg0K
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGZyb20gL3Vzci9pbmNsdWRl
L21hbGxvYy5oOjIyLDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyBmcm9tIC9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9saW51eDY0L2NvcmVfcG9y
dG1lLmM6MTg6PGJyPg0KL3Vzci9pbmNsdWRlL3N5cy9jZGVmcy5oOjI4NTowOiB3YXJuaW5nOiAm
cXVvdDtfX25vbm51bGwmcXVvdDsgcmVkZWZpbmVkPGJyPg0KJm5ic3A7IyBkZWZpbmUgX19ub25u
dWxsKHBhcmFtcykgX19hdHRyaWJ1dGVfXyAoKF9fbm9ubnVsbF9fIHBhcmFtcykpPGJyPg0KJm5i
c3A7Xjxicj4NCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvaG9tZS9hamF5L3VuaWtyYWZ0L3VuaWty
YWZ0L2xpYi9ub2xpYmMvaW5jbHVkZS9zdGRpby5oOjQxOjAsPGJyPg0KJm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGZyb20gL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2Nv
cmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzo5Ojxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQv
dW5pa3JhZnQvaW5jbHVkZS91ay9lc3NlbnRpYWxzLmg6NTk6MDogbm90ZTogdGhpcyBpcyB0aGUg
bG9jYXRpb24gb2YgdGhlIHByZXZpb3VzIGRlZmluaXRpb248YnI+DQombmJzcDsjZGVmaW5lIF9f
bm9ubnVsbCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX2F0dHJpYnV0ZV9fKChub25udWxsKSk8YnI+
DQombmJzcDtePGJyPg0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2xpbnV4NjQv
Y29yZV9wb3J0bWUuYzogSW4gZnVuY3Rpb24g4oCYc3RhcnRfdGltZeKAmTo8YnI+DQovaG9tZS9h
amF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOjkzOjI0OiB3
YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhjbG9ja19nZXR0aW1l
4oCZIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXTxicj4NCiZuYnNwOyAjZGVmaW5l
IEdFVE1ZVElNRShfdCkgY2xvY2tfZ2V0dGltZSgwLF90KTxicj4NCiZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyBePGJyPg0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2xpbnV4NjQv
Y29yZV9wb3J0bWUuYzoxMTY6Mjogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmEdFVE1Z
VElNReKAmTxicj4NCiZuYnNwOyBHRVRNWVRJTUUoJmFtcDtzdGFydF90aW1lX3ZhbCApOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDs8YnI+DQombmJzcDsgXjxicj4NCi9ob21lL2FqYXkv
dW5pa3JhZnQvYXBwcy9jb3JlbWFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6IEluIGZ1bmN0aW9u
IOKAmHBvcnRhYmxlX2luaXTigJk6PGJyPg0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVt
YXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzoxNzI6NDM6IHdhcm5pbmc6IHVudXNlZCBwYXJhbWV0
ZXIg4oCYYXJnY+KAmSBbLVd1bnVzZWQtcGFyYW1ldGVyXTxicj4NCiZuYnNwO3ZvaWQgcG9ydGFi
bGVfaW5pdChjb3JlX3BvcnRhYmxlICpwLCBpbnQgKmFyZ2MsIGNoYXIgKmFyZ3ZbXSk8YnI+DQom
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgXjxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9j
b3JlbWFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6MTcyOjU1OiB3YXJuaW5nOiB1bnVzZWQgcGFy
YW1ldGVyIOKAmGFyZ3bigJkgWy1XdW51c2VkLXBhcmFtZXRlcl08YnI+DQombmJzcDt2b2lkIHBv
cnRhYmxlX2luaXQoY29yZV9wb3J0YWJsZSAqcCwgaW50ICphcmdjLCBjaGFyICphcmd2W10pPGJy
Pg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF48YnI+DQombmJzcDsg
TEQmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgYXBwY29yZW1hcmsubGQubzxicj4NCiZu
YnNwOyBPQkpDT1BZIGFwcGNvcmVtYXJrLm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsgbGlidWtib290OiBib290Lm88YnI+DQombmJzcDsgTEQmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlidWtib290LmxkLm88YnI+DQombmJzcDsgT0JKQ09QWSBs
aWJ1a2Jvb3Qubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBs
aWJ1a2RlYnVnOiBwcmludC5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7IGxpYnVrZGVidWc6IGhleGR1bXAubzxicj4NCiZuYnNwOyBMRCZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyBsaWJ1a2RlYnVnLmxkLm88YnI+DQombmJzcDsgT0JKQ09QWSBsaWJ1
a2RlYnVnLm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGli
dWthcmdwYXJzZTogYXJncGFyc2Uubzxicj4NCiZuYnNwOyBMRCZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyBsaWJ1a2FyZ3BhcnNlLmxkLm88YnI+DQombmJzcDsgT0JKQ09QWSBsaWJ1a2Fy
Z3BhcnNlLm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGli
bm9saWJjOiBlcnJuby5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7IGxpYm5vbGliYzogc3RkaW8ubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyBsaWJub2xpYmM6IGN0eXBlLm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsgbGlibm9saWJjOiBzdGRsaWIubzxicj4NCiZuYnNwOyBDQyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJub2xpYmM6IHN0cmluZy5vPGJyPg0KJm5ic3A7
IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYm5vbGliYzogZ2V0b3B0Lm88YnI+
DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlibm9saWJjOiBtYWxs
b2Mubzxicj4NCiZuYnNwOyBMRCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJub2xp
YmMubGQubzxicj4NCiZuYnNwOyBPQkpDT1BZIGxpYm5vbGliYy5vPGJyPg0KJm5ic3A7IENDJm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYnVrYWxsb2M6IGFsbG9jLm88YnI+DQombmJz
cDsgTEQmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlidWthbGxvYy5sZC5vPGJyPg0K
Jm5ic3A7IE9CSkNPUFkgbGlidWthbGxvYy5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7IGxpYnVrYWxsb2NiYnVkZHk6IGJidWRkeS5vPGJyPg0KJm5ic3A7IExE
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYnVrYWxsb2NiYnVkZHkubGQubzxicj4N
CiZuYnNwOyBPQkpDT1BZIGxpYnVrYWxsb2NiYnVkZHkubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJmZHQ6IGZkdC5vPGJyPg0KJm5ic3A7IENDJm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYmZkdDogZmR0X2FkZHJlc3Nlcy5vPGJyPg0KJm5i
c3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYmZkdDogZmR0X2VtcHR5X3Ry
ZWUubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJmZHQ6
IGZkdF9vdmVybGF5Lm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsgbGliZmR0OiBmZHRfcm8ubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyBsaWJmZHQ6IGZkdF9ydy5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IGxpYmZkdDogZmR0X3N0cmVycm9yLm88YnI+DQombmJzcDsgQ0MmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGliZmR0OiBmZHRfc3cubzxicj4NCiZuYnNwOyBDQyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJmZHQ6IGZkdF93aXAubzxicj4NCiZuYnNw
OyBMRCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJmZHQubGQubzxicj4NCiZuYnNw
OyBPQkpDT1BZIGxpYmZkdC5vPGJyPg0KJm5ic3A7IExEJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7IGNvcmVtYXJrX3hlbi14ODZfNjQubGQubzxicj4NCiZuYnNwOyBPQkpDT1BZIGNvcmVt
YXJrX3hlbi14ODZfNjQubzxicj4NCiZuYnNwOyBMRCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyBjb3JlbWFya194ZW4teDg2XzY0PGJyPg0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2Nv
cmVtYXJrL2J1aWxkL2NvcmVtYXJrX3hlbi14ODZfNjQubzogSW4gZnVuY3Rpb24gYGl0ZXJhdGUn
Ojxicj4NCmZkdF93aXAuYzooLnRleHQmIzQzOzB4NTcxOSk6IHVuZGVmaW5lZCByZWZlcmVuY2Ug
dG8gYHNjaGVkX3lpZWxkJzxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9i
dWlsZC9jb3JlbWFya194ZW4teDg2XzY0Lm86IEluIGZ1bmN0aW9uIGBzdGFydF90aW1lJzo8YnI+
DQpmZHRfd2lwLmM6KC50ZXh0JiM0MzsweDZlMmYpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBj
bG9ja19nZXR0aW1lJzxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9idWls
ZC9jb3JlbWFya194ZW4teDg2XzY0Lm86IEluIGZ1bmN0aW9uIGBzdG9wX3RpbWUnOjxicj4NCmZk
dF93aXAuYzooLnRleHQmIzQzOzB4NmU0Zik6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGNsb2Nr
X2dldHRpbWUnPGJyPg0KL2hvbWUvYWpheS91bmlrcmFmdC91bmlrcmFmdC9wbGF0L3hlbi9MaW5r
ZXIudWs6MjI6IHJlY2lwZSBmb3IgdGFyZ2V0ICcvaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29y
ZW1hcmsvYnVpbGQvY29yZW1hcmtfeGVuLXg4Nl82NCcgZmFpbGVkPGJyPg0KbWFrZVsyXTogKioq
IFsvaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvYnVpbGQvY29yZW1hcmtfeGVuLXg4
Nl82NF0gRXJyb3IgMTxicj4NCk1ha2VmaWxlOjMyOiByZWNpcGUgZm9yIHRhcmdldCAnX2FsbCcg
ZmFpbGVkPGJyPg0KbWFrZVsxXTogKioqIFtfYWxsXSBFcnJvciAyPGJyPg0KbWFrZVsxXTogTGVh
dmluZyBkaXJlY3RvcnkgJy9ob21lL2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQnPGJyPg0KTWFrZWZp
bGU6NjogcmVjaXBlIGZvciB0YXJnZXQgJ2FsbCcgZmFpbGVkPGJyPg0KbWFrZTogKioqIFthbGxd
IEVycm9yIDI8YnI+DQphamF5QGxhdGl0dWRlLTM0ODA6fi91bmlrcmFmdC9hcHBzL2NvcmVtYXJr
JDxicj4NCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjPGJyIHN0eWxlPSJtc28tc3BlY2lhbC1jaGFyYWN0ZXI6bGluZS1i
cmVhayI+DQo8IVtpZiAhc3VwcG9ydExpbmVCcmVha05ld0xpbmVdPjxiciBzdHlsZT0ibXNvLXNw
ZWNpYWwtY2hhcmFjdGVyOmxpbmUtYnJlYWsiPg0KPCFbZW5kaWZdPjxvOnA+PC9vOnA+PC9wPg0K
PC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206
MTIuMHB0Ij5JIHRyaWVkIGxvb2tpbmcgZm9yIGFueSBleGFtcGxlcyBvZiBsaW5rYWdlIG9mIE9C
SlMgZmlsZXMsIGJ1dCBubyBleGFtcGxlIChmb3IgT0JKUykgaXMgcHJlc2VudCBpbiBhbnkgb2Yg
cGxhdC9hcHAgZm9sZGVyLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIuMHB0Ij5LaW5kbHkgaGVscCBtZSBp
biBmaXhpbmcgdGhpcy48YnI+DQo8YnIgc3R5bGU9Im1zby1zcGVjaWFsLWNoYXJhY3RlcjpsaW5l
LWJyZWFrIj4NCjwhW2lmICFzdXBwb3J0TGluZUJyZWFrTmV3TGluZV0+PGJyIHN0eWxlPSJtc28t
c3BlY2lhbC1jaGFyYWN0ZXI6bGluZS1icmVhayI+DQo8IVtlbmRpZl0+PG86cD48L286cD48L3A+
DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5UaGFua3MgYW5kIFJlZ2FyZHMs
PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5BamF5
PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Jsb2NrcXVvdGU+DQo8
L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxicj4NCjxiciBjbGVhcj0iYWxsIiBzdHlsZT0i
bXNvLXNwZWNpYWwtY2hhcmFjdGVyOmxpbmUtYnJlYWsiPg0KPG86cD48L286cD48L3A+DQo8L2Rp
dj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gY2xhc3M9Im0tMTQyMzc3ODc3
MjM4NTczMTMyMmhvZW56YiI+PHNwYW4gc3R5bGU9ImNvbG9yOiM4ODg4ODgiPi0tDQo8bzpwPjwv
bzpwPjwvc3Bhbj48L3NwYW4+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IHN0eWxlPSJjb2xvcjojODg4ODg4Ij5SZWdhcmRzLDxicj4NCkFqYXk8L3NwYW4+PG86cD48L286
cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0KPC9kaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48YnI+DQo8YnIgY2xlYXI9ImFsbCIgc3R5bGU9Im1zby1zcGVjaWFsLWNoYXJh
Y3RlcjpsaW5lLWJyZWFrIj4NCjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIGNsYXNzPSJob2VuemIiPjxzcGFuIHN0eWxlPSJjb2xvcjoj
ODg4ODg4Ij4tLSA8bzpwPjwvbzpwPjwvc3Bhbj48L3NwYW4+PC9wPg0KPGRpdj4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJjb2xvcjojODg4ODg4Ij5SZWdhcmRzLDxicj4NCkFq
YXk8L3NwYW4+PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0K
PC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48YnI+DQo8YnIgY2xlYXI9ImFsbCI+DQo8YnI+
DQotLSA8bzpwPjwvbzpwPjwvcD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5SZWdhcmRz
LDxicj4NCkFqYXk8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2
Pg0KSU1QT1JUQU5UIE5PVElDRTogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZW1haWwgYW5kIGFueSBh
dHRhY2htZW50cyBhcmUgY29uZmlkZW50aWFsIGFuZCBtYXkgYWxzbyBiZSBwcml2aWxlZ2VkLiBJ
ZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50LCBwbGVhc2Ugbm90aWZ5IHRoZSBz
ZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRvIG5vdCBkaXNjbG9zZSB0aGUgY29udGVudHMgdG8gYW55
IG90aGVyIHBlcnNvbiwgdXNlIGl0IGZvciBhbnkgcHVycG9zZSwNCiBvciBzdG9yZSBvciBjb3B5
IHRoZSBpbmZvcm1hdGlvbiBpbiBhbnkgbWVkaXVtLiBUaGFuayB5b3UuDQo8L2JvZHk+DQo8L2h0
bWw+DQo=

--_000_DB3PR08MB010767D001F98AB4539BECF29EB60DB3PR08MB0107eurp_--


--===============4517898455952638609==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============4517898455952638609==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 18 02:18:32 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 02:18:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8cg2-0001Wd-MM; Wed, 18 Apr 2018 02:18:30 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=maay=hh=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f8cg0-0001WW-Kt
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 02:18:28 +0000
X-Inumbo-ID: a2df80ad-42ae-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::62b])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id a2df80ad-42ae-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 04:17:26 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=PdKB0jkxDQDvvQAmXqgO8RomJSmuiZkBuTaM0VOqLo8=;
 b=XhvJ+57xBTmq/c3lbhSK/V31rz7iLdxYDxIahjnJANmpyCYD6iDJq8SDrQNc8PBGrXh7piQ1I1U0jOzrxFeWt01868ArfarA6Xr7OqXNIqG2j08cMIh7Wq+Dk1LhAW/yAf2XXM5+Y4O5yRhVZj4pwwpwSusCeh/f6rI2I9sIVVQ=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0234.eurprd08.prod.outlook.com (10.161.61.14) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.675.10; Wed, 18 Apr 2018 02:18:14 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0675.014; Wed, 18 Apr
 2018 02:18:12 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Ajay Garg <ajaygargnsit@gmail.com>, "minios-devel@lists.xenproject.org"
 <minios-devel@lists.xenproject.org>
Thread-Topic: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
Thread-Index: AQHT06QTkh7b+gLJn0aR3f9tdvMCnKQANaYAgAGgVYCAA+fVgIAAC/rAgAACKrA=
Date: Wed, 18 Apr 2018 02:18:12 +0000
Message-ID: <DB3PR08MB010710D1E5A6E8A9C2EE49499EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
 <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
 <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
 <CAHP4M8VSHMD5wK1bytCyGThnPyhbDxk0RKJw2DmJToFF+j3p1A@mail.gmail.com>
 <DB3PR08MB010767D001F98AB4539BECF29EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
In-Reply-To: <DB3PR08MB010767D001F98AB4539BECF29EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0234;
 7:poxi8rlpqjy8ZEiPk7t2JDA7mjwCVeZ7hzFt3sw/wSguPX3entUu6TsPShFEhl4TdwydsCJp+qxVMigmaxvzZXQq4ctuo9t7UaEuC2EyLV581VGRrY0eyvWQIHXYsMl8aNvKQpet8S3ZZQnjRGdNNF0jHVQpyyTsxsmudRw6BxVgBgNuA6JVnqw/l1ZeCeWpioOUSPIO1rH1z7yypPax9ck+wySvVvozYsrXleCXPsGdySsJL5CNWnYsf1/SaZW7
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(48565401081)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0234; 
x-ms-traffictypediagnostic: DB3PR08MB0234:
x-microsoft-antispam-prvs: <DB3PR08MB02343085FB26501CF76458F89EB60@DB3PR08MB0234.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(28532068793085)(166708455590820)(85827821059158)(58134797142442)(21748063052155);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(93006095)(93001095)(3231232)(944501327)(52105095)(3002001)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:DB3PR08MB0234; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0234; 
x-forefront-prvs: 06469BCC91
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(376002)(39860400002)(396003)(366004)(39380400002)(346002)(53754006)(40434004)(3280700002)(53546011)(3660700001)(3846002)(81166006)(790700001)(5890100001)(8676002)(6116002)(966005)(478600001)(99286004)(76176011)(5660300001)(72206003)(6506007)(476003)(102836004)(25786009)(7696005)(86362001)(8936002)(606006)(14454004)(2940100002)(55236004)(59450400001)(316002)(6246003)(39060400002)(9686003)(33656002)(110136005)(55016002)(54896002)(6306002)(53936002)(6436002)(16200700003)(93886005)(26005)(2906002)(66066001)(2900100001)(53946003)(2501003)(186003)(5250100002)(74316002)(229853002)(236005)(446003)(7736002)(11346002)(569006);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0234;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 MLV:ovrnspm; PTR:InfoNoRecords; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: r/X0b4uU2gAlgT9y8is0Amk5wGLVfBXLjS6dfdaRnZQtn3jEyc846D727cHKlxqrzxdMKqrPDehKRxdVOnNN5TtVSsP/HrubBHXhXYCSwxMamCCDz/ID6LVa7B/jp3YrrKHFeyfz7lpKcbtcAT+aj5eGO9nPd0dflIXhdms+GDTzqLgRj61Ortg//GO12i2+
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-MS-Office365-Filtering-Correlation-Id: 675ad9cf-8a23-47ea-82a0-08d5a4d2a2fd
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 675ad9cf-8a23-47ea-82a0-08d5a4d2a2fd
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Apr 2018 02:18:12.6310 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0234
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============7085061954752517313=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============7085061954752517313==
Content-Language: en-US
Content-Type: multipart/alternative;
	boundary="_000_DB3PR08MB010710D1E5A6E8A9C2EE49499EB60DB3PR08MB0107eurp_"

--_000_DB3PR08MB010710D1E5A6E8A9C2EE49499EB60DB3PR08MB0107eurp_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

QnV0IHRoZSBjbG9ja19nZXR0aW1lIGhhc27igJl0IGJlZW4gaW1wbGVtZW50ZWQgaW4gbm9saWJj
IG9yIGxpYnRpbWUuDQpJZiB5b3VyIGFwcGxpY2F0aW9uIGp1c3QgdXNlcyB0aGlzIGZ1bmN0aW9u
IHRvIHByaW50IHRpbWVzdGFtcGUsIHlvdQ0KY2FuIGltcGxlbWVudCBhIGR1bW15IGZ1bmN0aW9u
IGluIHlvdXIgY29kZSBpbiB0aGlzIHRpbWUgdG8gcGFzcyB0aGUNCmxpbmtpbmcuDQoNCkZyb206
IFdlaSBDaGVuDQpTZW50OiAyMDE45bm0NOaciDE45pelIDEwOjAwDQpUbzogJ0FqYXkgR2FyZycg
PGFqYXlnYXJnbnNpdEBnbWFpbC5jb20+OyBtaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5v
cmcNClN1YmplY3Q6IFJFOiBbTWluaW9zLWRldmVsXSBbVW5pa3JhZnRdIFN0YXRpYyBMaWJyYXJp
ZXMgbm90IGJlaW5nIGxpbmtlZCBwcm9wZXJseQ0KDQpIaSBBamF5LA0KDQpJdCBzZWVtcyB5b3Ug
aGF2ZSB0byB3YWl0IHVudGlsIENvc3RpbuKAmXMgc2NoZWR1bGUgbGliIHRvIGJlIG1lcmdlZC4N
CltVTklLUkFGVCBQQVRDSCAxMy8xN10gbGliL3Vrc2NoZWQ6IFVwZGF0ZXMgZm9yIGlubGluaW5n
IHdpdGggcGxhdC9jb21tb24gY2hhbmdlcw0KDQpPciB5b3UgY2FuIHBpY2sgaGlzIHBhdGNoIHNl
cmllcyB0byB5b3VyIGxvY2FsIHJlcG9zaXRvcnkgZm9yIHRlc3RpbmcgaW4gYWR2YW5jZS4NCg0K
UmVnYXJkcywNCldlaSBDaGVuDQoNCg0KRnJvbTogTWluaW9zLWRldmVsIDxtaW5pb3MtZGV2ZWwt
Ym91bmNlc0BsaXN0cy54ZW5wcm9qZWN0Lm9yZzxtYWlsdG86bWluaW9zLWRldmVsLWJvdW5jZXNA
bGlzdHMueGVucHJvamVjdC5vcmc+PiBPbiBCZWhhbGYgT2YgQWpheSBHYXJnDQpTZW50OiAyMDE4
5bm0NOaciDE45pelIDk6MTQNClRvOiBtaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmc8
bWFpbHRvOm1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZz4NClN1YmplY3Q6IFJlOiBb
TWluaW9zLWRldmVsXSBbVW5pa3JhZnRdIFN0YXRpYyBMaWJyYXJpZXMgbm90IGJlaW5nIGxpbmtl
ZCBwcm9wZXJseQ0KDQpFYXJuZXN0IHJlcXVlc3QgZm9yIHNvbWUgaGVscCwgcGxlYXNlIC4uDQoN
Ck9uIFN1biwgQXByIDE1LCAyMDE4IGF0IDc6MDUgUE0sIEFqYXkgR2FyZyA8YWpheWdhcmduc2l0
QGdtYWlsLmNvbTxtYWlsdG86YWpheWdhcmduc2l0QGdtYWlsLmNvbT4+IHdyb3RlOg0KSWRlYXMg
cGxlYXNlPw0KQW55IHBvaW50ZXJzIHRvIGFueSBleGlzdGluZyBleGFtcGxlIHVzYWdlIG9mIGxp
bmtpbmcgc3RhdGljLWxpYnJhcmllcyB3b3VsZCBiZSB1c2VmdWwuDQoNCk9uIFNhdCwgQXByIDE0
LCAyMDE4IGF0IDY6MTUgUE0sIEFqYXkgR2FyZyA8YWpheWdhcmduc2l0QGdtYWlsLmNvbTxtYWls
dG86YWpheWdhcmduc2l0QGdtYWlsLmNvbT4+IHdyb3RlOg0KVmVyeSBzdXJwcmlzaW5nbHksIHRo
ZSBtaXNzaW5nIGZ1bmN0aW9ucyAoc3RhcnRfdGltZSwgZW5kX3RpbWUpIGFyZSBhY3R1YWxseSBw
cmVzZW50IGluIGh0dHBzOi8vZ2l0aHViLmNvbS90b255aG8vQ29yZU1hcmsvYmxvYi9tYXN0ZXIv
Y29yZV9tYWluLmMuDQpCdXQgaW4gdGhlIG1ha2Utb3V0cHV0LCBmZHRfd2lwLmMgaXMgYmVpbmcg
bGlzdGVkLg0KDQpPbiBTYXQsIEFwciAxNCwgMjAxOCBhdCA5OjIyIEFNLCBBamF5IEdhcmcgPGFq
YXlnYXJnbnNpdEBnbWFpbC5jb208bWFpbHRvOmFqYXlnYXJnbnNpdEBnbWFpbC5jb20+PiB3cm90
ZToNCkhpIEFsbC4NCg0KSSBhbSB0cnlpbmcgdG8gaW50ZWdyYXRlIGNvcmVtYXJrLWFwcCBpbiB1
bmlrcmFmdCBmb3IgeDg2XzY0Lg0KSXQgcmVxdWlyZXMgc3RhdGljIGxpbmtpbmcgdG8gbGlicnQu
YSBhbmQgbGlicHRocmVhZC5hOyBob3dldmVyIHNlZW1zICB0aGV5IGFyZSBub3QgYmVpbmcgcGlj
a2VkIHVwLg0KDQpGb2xsb3dpbmcgaXMgdGhlIE1ha2VmaWxlLnVrIDoNCg0KIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMN
CiQoZXZhbCAkKGNhbGwgYWRkbGliLGFwcGNvcmVtYXJrKSkNCg0KQVBQQ09SRU1BUktfU1JDUy15
ICAgICAgICAgICAgICArPSAkKEFQUENPUkVNQVJLX0JBU0UpL2NvcmVfbWFpbi5jICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKEFQUENPUkVNQVJLX0JBU0UpL2NvcmVfbGlz
dF9qb2luLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJChBUFBDT1JFTUFSS19C
QVNFKS9jb3JlX3V0aWwuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JChBUFBDT1JFTUFSS19CQVNFKS9jb3JlX3N0YXRlLmMgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9tYXRyaXguYyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAkKEFQUENPUkVNQVJLX0JBU0UpL2xpbnV4NjQvY29yZV9wb3J0bWUuYw0KDQpBUFBD
T1JFTUFSS19PQkpTLXkgICAgICAgICAgICAgICArPSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251
L2xpYnJ0LmEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvbGlicHRocmVhZC5hDQoNCkFQUENPUkVNQVJL
X0NJTkNMVURFUy15ICAgICArPS1JJChBUFBDT1JFTUFSS19CQVNFKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLUkkKEFQUENPUkVNQVJLX0JB
U0UpL2xpbnV4NjQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1J
JChBUFBDT1JFTUFSS19CQVNFKS8uLi8uLi91bmlrcmFmdC9saWIvbm9saWJjL2luY2x1ZGUvc3lz
ICAgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC1JL3Vzci9pbmNsdWRlDQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KDQoNCkZvbGxvd2luZyBpcyB0aGUg
Y29tcGlsYXRpb24tcnVuIDoNCg0KIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCmFhamF5QGxhdGl0dWRlLTM0ODA6fi91
bmlrcmFmdC9hcHBzL2NvcmVtYXJrJCBtYWtlDQptYWtlWzFdOiBFbnRlcmluZyBkaXJlY3Rvcnkg
Jy9ob21lL2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQnDQogIENQICAgICAgY29uZmlnDQogIENDICAg
ICAgbGlieGVucGxhdDogaHlwZXJ2aXNvci5vDQogIENDICAgICAgbGlieGVucGxhdDogbWVtb3J5
Lm8NCiAgQ0MgICAgICBsaWJ4ZW5wbGF0OiBzZXR1cC5vDQogIENDICAgICAgbGlieGVucGxhdDog
dHJhcHMubw0KICBBUyAgICAgIGxpYnhlbnBsYXQ6IGVudHJ5NjQubw0KICBDQyAgICAgIGxpYnhl
bnBsYXQ6IG1tLm8NCiAgQ0MgICAgICBsaWJ4ZW5wbGF0OiBhcmNoX2V2ZW50cy5vDQogIENDICAg
ICAgbGlieGVucGxhdDogYXJjaF90aW1lLm8NCiAgQ0MgICAgICBsaWJ4ZW5wbGF0OiBsY3B1Lm8N
CiAgQ0MgICAgICBsaWJ4ZW5wbGF0OiBjb25zb2xlLm8NCiAgQ0MgICAgICBsaWJ4ZW5wbGF0OiBz
aHV0ZG93bi5vDQogIENDICAgICAgbGlieGVucGxhdDogZXZlbnRzLm8NCiAgTEQgICAgICBsaWJ4
ZW5wbGF0LmxkLm8NCiAgT0JKQ09QWSBsaWJ4ZW5wbGF0Lm8NCiAgQ0MgICAgICBhcHBjb3JlbWFy
azogY29yZV9tYWluLm8NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9jb3JlX21h
aW4uYzogSW4gZnVuY3Rpb24g4oCYbWFpbuKAmToNCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9j
b3JlbWFyay9jb3JlX21haW4uYzoyOTI6MTI6IHdhcm5pbmc6IGZvcm1hdCDigJglbHXigJkgZXhw
ZWN0cyBhcmd1bWVudCBvZiB0eXBlIOKAmGxvbmcgdW5zaWduZWQgaW504oCZLCBidXQgYXJndW1l
bnQgMiBoYXMgdHlwZSDigJh1bnNpZ25lZCBpbnTigJkgWy1XZm9ybWF0PV0NCiAgZWVfcHJpbnRm
KCJDb3JlTWFyayBTaXplICAgIDogJWx1XG4iLChlZV91MzIpcmVzdWx0c1swXS5zaXplKTsNCiAg
ICAgICAgICAgIF4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9jb3JlX21haW4u
YzoyOTM6MTI6IHdhcm5pbmc6IGZvcm1hdCDigJglbHXigJkgZXhwZWN0cyBhcmd1bWVudCBvZiB0
eXBlIOKAmGxvbmcgdW5zaWduZWQgaW504oCZLCBidXQgYXJndW1lbnQgMiBoYXMgdHlwZSDigJh1
bnNpZ25lZCBpbnTigJkgWy1XZm9ybWF0PV0NCiAgZWVfcHJpbnRmKCJUb3RhbCB0aWNrcyAgICAg
IDogJWx1XG4iLChlZV91MzIpdG90YWxfdGltZSk7DQogICAgICAgICAgICBeDQovaG9tZS9hamF5
L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvY29yZV9tYWluLmM6MzA4OjEyOiB3YXJuaW5nOiBmb3Jt
YXQg4oCYJWx14oCZIGV4cGVjdHMgYXJndW1lbnQgb2YgdHlwZSDigJhsb25nIHVuc2lnbmVkIGlu
dOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFzIHR5cGUg4oCYdW5zaWduZWQgaW504oCZIFstV2Zvcm1h
dD1dDQogIGVlX3ByaW50ZigiSXRlcmF0aW9ucyAgICAgICA6ICVsdVxuIiwoZWVfdTMyKWRlZmF1
bHRfbnVtX2NvbnRleHRzKnJlc3VsdHNbMF0uaXRlcmF0aW9ucyk7DQogICAgICAgICAgICBeDQog
IENDICAgICAgYXBwY29yZW1hcms6IGNvcmVfbGlzdF9qb2luLm8NCiAgQ0MgICAgICBhcHBjb3Jl
bWFyazogY29yZV91dGlsLm8NCiAgQ0MgICAgICBhcHBjb3JlbWFyazogY29yZV9zdGF0ZS5vDQog
IENDICAgICAgYXBwY29yZW1hcms6IGNvcmVfbWF0cml4Lm8NCiAgQ0MgICAgICBhcHBjb3JlbWFy
azogY29yZV9wb3J0bWUubw0KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC91c3IvaW5jbHVkZS9mZWF0
dXJlcy5oOjM2NzowLA0KICAgICAgICAgICAgICAgICBmcm9tIC91c3IvaW5jbHVkZS9tYWxsb2Mu
aDoyMiwNCiAgICAgICAgICAgICAgICAgZnJvbSAvaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29y
ZW1hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOjE4Og0KL3Vzci9pbmNsdWRlL3N5cy9jZGVmcy5o
OjI4NTowOiB3YXJuaW5nOiAiX19ub25udWxsIiByZWRlZmluZWQNCiAjIGRlZmluZSBfX25vbm51
bGwocGFyYW1zKSBfX2F0dHJpYnV0ZV9fICgoX19ub25udWxsX18gcGFyYW1zKSkNCiBeDQpJbiBm
aWxlIGluY2x1ZGVkIGZyb20gL2hvbWUvYWpheS91bmlrcmFmdC91bmlrcmFmdC9saWIvbm9saWJj
L2luY2x1ZGUvc3RkaW8uaDo0MTowLA0KICAgICAgICAgICAgICAgICBmcm9tIC9ob21lL2FqYXkv
dW5pa3JhZnQvYXBwcy9jb3JlbWFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6OToNCi9ob21lL2Fq
YXkvdW5pa3JhZnQvdW5pa3JhZnQvaW5jbHVkZS91ay9lc3NlbnRpYWxzLmg6NTk6MDogbm90ZTog
dGhpcyBpcyB0aGUgbG9jYXRpb24gb2YgdGhlIHByZXZpb3VzIGRlZmluaXRpb24NCiAjZGVmaW5l
IF9fbm9ubnVsbCAgICAgICAgICAgICAgX19hdHRyaWJ1dGVfXygobm9ubnVsbCkpDQogXg0KL2hv
bWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzogSW4g
ZnVuY3Rpb24g4oCYc3RhcnRfdGltZeKAmToNCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3Jl
bWFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6OTM6MjQ6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xh
cmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGNsb2NrX2dldHRpbWXigJkgWy1XaW1wbGljaXQtZnVuY3Rp
b24tZGVjbGFyYXRpb25dDQogICNkZWZpbmUgR0VUTVlUSU1FKF90KSBjbG9ja19nZXR0aW1lKDAs
X3QpDQogICAgICAgICAgICAgICAgICAgICAgICBeDQovaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMv
Y29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOjExNjoyOiBub3RlOiBpbiBleHBhbnNpb24g
b2YgbWFjcm8g4oCYR0VUTVlUSU1F4oCZDQogIEdFVE1ZVElNRSgmc3RhcnRfdGltZV92YWwgKTsN
CiAgXg0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0
bWUuYzogSW4gZnVuY3Rpb24g4oCYcG9ydGFibGVfaW5pdOKAmToNCi9ob21lL2FqYXkvdW5pa3Jh
ZnQvYXBwcy9jb3JlbWFyay9saW51eDY0L2NvcmVfcG9ydG1lLmM6MTcyOjQzOiB3YXJuaW5nOiB1
bnVzZWQgcGFyYW1ldGVyIOKAmGFyZ2PigJkgWy1XdW51c2VkLXBhcmFtZXRlcl0NCiB2b2lkIHBv
cnRhYmxlX2luaXQoY29yZV9wb3J0YWJsZSAqcCwgaW50ICphcmdjLCBjaGFyICphcmd2W10pDQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXg0KL2hvbWUvYWpheS91
bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzoxNzI6NTU6IHdhcm5p
bmc6IHVudXNlZCBwYXJhbWV0ZXIg4oCYYXJnduKAmSBbLVd1bnVzZWQtcGFyYW1ldGVyXQ0KIHZv
aWQgcG9ydGFibGVfaW5pdChjb3JlX3BvcnRhYmxlICpwLCBpbnQgKmFyZ2MsIGNoYXIgKmFyZ3Zb
XSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBeDQogIExEICAgICAgYXBwY29yZW1hcmsubGQubw0KICBPQkpDT1BZIGFwcGNvcmVtYXJrLm8N
CiAgQ0MgICAgICBsaWJ1a2Jvb3Q6IGJvb3Qubw0KICBMRCAgICAgIGxpYnVrYm9vdC5sZC5vDQog
IE9CSkNPUFkgbGlidWtib290Lm8NCiAgQ0MgICAgICBsaWJ1a2RlYnVnOiBwcmludC5vDQogIEND
ICAgICAgbGlidWtkZWJ1ZzogaGV4ZHVtcC5vDQogIExEICAgICAgbGlidWtkZWJ1Zy5sZC5vDQog
IE9CSkNPUFkgbGlidWtkZWJ1Zy5vDQogIENDICAgICAgbGlidWthcmdwYXJzZTogYXJncGFyc2Uu
bw0KICBMRCAgICAgIGxpYnVrYXJncGFyc2UubGQubw0KICBPQkpDT1BZIGxpYnVrYXJncGFyc2Uu
bw0KICBDQyAgICAgIGxpYm5vbGliYzogZXJybm8ubw0KICBDQyAgICAgIGxpYm5vbGliYzogc3Rk
aW8ubw0KICBDQyAgICAgIGxpYm5vbGliYzogY3R5cGUubw0KICBDQyAgICAgIGxpYm5vbGliYzog
c3RkbGliLm8NCiAgQ0MgICAgICBsaWJub2xpYmM6IHN0cmluZy5vDQogIENDICAgICAgbGlibm9s
aWJjOiBnZXRvcHQubw0KICBDQyAgICAgIGxpYm5vbGliYzogbWFsbG9jLm8NCiAgTEQgICAgICBs
aWJub2xpYmMubGQubw0KICBPQkpDT1BZIGxpYm5vbGliYy5vDQogIENDICAgICAgbGlidWthbGxv
YzogYWxsb2Mubw0KICBMRCAgICAgIGxpYnVrYWxsb2MubGQubw0KICBPQkpDT1BZIGxpYnVrYWxs
b2Mubw0KICBDQyAgICAgIGxpYnVrYWxsb2NiYnVkZHk6IGJidWRkeS5vDQogIExEICAgICAgbGli
dWthbGxvY2JidWRkeS5sZC5vDQogIE9CSkNPUFkgbGlidWthbGxvY2JidWRkeS5vDQogIENDICAg
ICAgbGliZmR0OiBmZHQubw0KICBDQyAgICAgIGxpYmZkdDogZmR0X2FkZHJlc3Nlcy5vDQogIEND
ICAgICAgbGliZmR0OiBmZHRfZW1wdHlfdHJlZS5vDQogIENDICAgICAgbGliZmR0OiBmZHRfb3Zl
cmxheS5vDQogIENDICAgICAgbGliZmR0OiBmZHRfcm8ubw0KICBDQyAgICAgIGxpYmZkdDogZmR0
X3J3Lm8NCiAgQ0MgICAgICBsaWJmZHQ6IGZkdF9zdHJlcnJvci5vDQogIENDICAgICAgbGliZmR0
OiBmZHRfc3cubw0KICBDQyAgICAgIGxpYmZkdDogZmR0X3dpcC5vDQogIExEICAgICAgbGliZmR0
LmxkLm8NCiAgT0JKQ09QWSBsaWJmZHQubw0KICBMRCAgICAgIGNvcmVtYXJrX3hlbi14ODZfNjQu
bGQubw0KICBPQkpDT1BZIGNvcmVtYXJrX3hlbi14ODZfNjQubw0KICBMRCAgICAgIGNvcmVtYXJr
X3hlbi14ODZfNjQNCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9idWlsZC9jb3Jl
bWFya194ZW4teDg2XzY0Lm86IEluIGZ1bmN0aW9uIGBpdGVyYXRlJzoNCmZkdF93aXAuYzooLnRl
eHQrMHg1NzE5KTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgc2NoZWRfeWllbGQnDQovaG9tZS9h
amF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvYnVpbGQvY29yZW1hcmtfeGVuLXg4Nl82NC5vOiBJ
biBmdW5jdGlvbiBgc3RhcnRfdGltZSc6DQpmZHRfd2lwLmM6KC50ZXh0KzB4NmUyZik6IHVuZGVm
aW5lZCByZWZlcmVuY2UgdG8gYGNsb2NrX2dldHRpbWUnDQovaG9tZS9hamF5L3VuaWtyYWZ0L2Fw
cHMvY29yZW1hcmsvYnVpbGQvY29yZW1hcmtfeGVuLXg4Nl82NC5vOiBJbiBmdW5jdGlvbiBgc3Rv
cF90aW1lJzoNCmZkdF93aXAuYzooLnRleHQrMHg2ZTRmKTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0
byBgY2xvY2tfZ2V0dGltZScNCi9ob21lL2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQvcGxhdC94ZW4v
TGlua2VyLnVrOjIyOiByZWNpcGUgZm9yIHRhcmdldCAnL2hvbWUvYWpheS91bmlrcmFmdC9hcHBz
L2NvcmVtYXJrL2J1aWxkL2NvcmVtYXJrX3hlbi14ODZfNjQnIGZhaWxlZA0KbWFrZVsyXTogKioq
IFsvaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvYnVpbGQvY29yZW1hcmtfeGVuLXg4
Nl82NF0gRXJyb3IgMQ0KTWFrZWZpbGU6MzI6IHJlY2lwZSBmb3IgdGFyZ2V0ICdfYWxsJyBmYWls
ZWQNCm1ha2VbMV06ICoqKiBbX2FsbF0gRXJyb3IgMg0KbWFrZVsxXTogTGVhdmluZyBkaXJlY3Rv
cnkgJy9ob21lL2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQnDQpNYWtlZmlsZTo2OiByZWNpcGUgZm9y
IHRhcmdldCAnYWxsJyBmYWlsZWQNCm1ha2U6ICoqKiBbYWxsXSBFcnJvciAyDQphamF5QGxhdGl0
dWRlLTM0ODA6fi91bmlrcmFmdC9hcHBzL2NvcmVtYXJrJA0KIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCg0KSSB0cmll
ZCBsb29raW5nIGZvciBhbnkgZXhhbXBsZXMgb2YgbGlua2FnZSBvZiBPQkpTIGZpbGVzLCBidXQg
bm8gZXhhbXBsZSAoZm9yIE9CSlMpIGlzIHByZXNlbnQgaW4gYW55IG9mIHBsYXQvYXBwIGZvbGRl
ci4NCktpbmRseSBoZWxwIG1lIGluIGZpeGluZyB0aGlzLg0KDQoNClRoYW5rcyBhbmQgUmVnYXJk
cywNCkFqYXkNCg0KDQotLQ0KUmVnYXJkcywNCkFqYXkNCg0KDQotLQ0KUmVnYXJkcywNCkFqYXkN
Cg0KDQoNCi0tDQpSZWdhcmRzLA0KQWpheQ0KSU1QT1JUQU5UIE5PVElDRTogVGhlIGNvbnRlbnRz
IG9mIHRoaXMgZW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBhcmUgY29uZmlkZW50aWFsIGFuZCBt
YXkgYWxzbyBiZSBwcml2aWxlZ2VkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBp
ZW50LCBwbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRvIG5vdCBkaXNj
bG9zZSB0aGUgY29udGVudHMgdG8gYW55IG90aGVyIHBlcnNvbiwgdXNlIGl0IGZvciBhbnkgcHVy
cG9zZSwgb3Igc3RvcmUgb3IgY29weSB0aGUgaW5mb3JtYXRpb24gaW4gYW55IG1lZGl1bS4gVGhh
bmsgeW91Lg0K

--_000_DB3PR08MB010710D1E5A6E8A9C2EE49499EB60DB3PR08MB0107eurp_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IlByb2dJZCIg
Y29udGVudD0iV29yZC5Eb2N1bWVudCI+DQo8bWV0YSBuYW1lPSJHZW5lcmF0b3IiIGNvbnRlbnQ9
Ik1pY3Jvc29mdCBXb3JkIDE1Ij4NCjxtZXRhIG5hbWU9Ik9yaWdpbmF0b3IiIGNvbnRlbnQ9Ik1p
Y3Jvc29mdCBXb3JkIDE1Ij4NCjxsaW5rIHJlbD0iRmlsZS1MaXN0IiBocmVmPSJjaWQ6ZmlsZWxp
c3QueG1sQDAxRDNENkZFLjhDRDFCRkYwIj48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOk9m
ZmljZURvY3VtZW50U2V0dGluZ3M+DQo8bzpBbGxvd1BORy8+DQo8L286T2ZmaWNlRG9jdW1lbnRT
ZXR0aW5ncz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPHc6
V29yZERvY3VtZW50Pg0KPHc6U3BlbGxpbmdTdGF0ZT5DbGVhbjwvdzpTcGVsbGluZ1N0YXRlPg0K
PHc6RG9jdW1lbnRLaW5kPkRvY3VtZW50RW1haWw8L3c6RG9jdW1lbnRLaW5kPg0KPHc6VHJhY2tN
b3Zlcy8+DQo8dzpUcmFja0Zvcm1hdHRpbmcvPg0KPHc6RW52ZWxvcGVWaXMvPg0KPHc6VmFsaWRh
dGVBZ2FpbnN0U2NoZW1hcy8+DQo8dzpTYXZlSWZYTUxJbnZhbGlkPmZhbHNlPC93OlNhdmVJZlhN
TEludmFsaWQ+DQo8dzpJZ25vcmVNaXhlZENvbnRlbnQ+ZmFsc2U8L3c6SWdub3JlTWl4ZWRDb250
ZW50Pg0KPHc6QWx3YXlzU2hvd1BsYWNlaG9sZGVyVGV4dD5mYWxzZTwvdzpBbHdheXNTaG93UGxh
Y2Vob2xkZXJUZXh0Pg0KPHc6RG9Ob3RQcm9tb3RlUUYvPg0KPHc6TGlkVGhlbWVPdGhlcj5FTi1V
UzwvdzpMaWRUaGVtZU90aGVyPg0KPHc6TGlkVGhlbWVBc2lhbj5aSC1DTjwvdzpMaWRUaGVtZUFz
aWFuPg0KPHc6TGlkVGhlbWVDb21wbGV4U2NyaXB0PlgtTk9ORTwvdzpMaWRUaGVtZUNvbXBsZXhT
Y3JpcHQ+DQo8dzpDb21wYXRpYmlsaXR5Pg0KPHc6RG9Ob3RFeHBhbmRTaGlmdFJldHVybi8+DQo8
dzpCcmVha1dyYXBwZWRUYWJsZXMvPg0KPHc6U3BsaXRQZ0JyZWFrQW5kUGFyYU1hcmsvPg0KPHc6
RW5hYmxlT3BlblR5cGVLZXJuaW5nLz4NCjx3OlVzZUZFTGF5b3V0Lz4NCjwvdzpDb21wYXRpYmls
aXR5Pg0KPHc6QnJvd3NlckxldmVsPk1pY3Jvc29mdEludGVybmV0RXhwbG9yZXI0PC93OkJyb3dz
ZXJMZXZlbD4NCjxtOm1hdGhQcj4NCjxtOm1hdGhGb250IG06dmFsPSJDYW1icmlhIE1hdGgiLz4N
CjxtOmJya0JpbiBtOnZhbD0iYmVmb3JlIi8+DQo8bTpicmtCaW5TdWIgbTp2YWw9IiYjNDU7LSIv
Pg0KPG06c21hbGxGcmFjIG06dmFsPSJvZmYiLz4NCjxtOmRpc3BEZWYvPg0KPG06bE1hcmdpbiBt
OnZhbD0iMCIvPg0KPG06ck1hcmdpbiBtOnZhbD0iMCIvPg0KPG06ZGVmSmMgbTp2YWw9ImNlbnRl
ckdyb3VwIi8+DQo8bTp3cmFwSW5kZW50IG06dmFsPSIxNDQwIi8+DQo8bTppbnRMaW0gbTp2YWw9
InN1YlN1cCIvPg0KPG06bmFyeUxpbSBtOnZhbD0idW5kT3ZyIi8+DQo8L206bWF0aFByPjwvdzpX
b3JkRG9jdW1lbnQ+DQo8L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4N
Cjx3OkxhdGVudFN0eWxlcyBEZWZMb2NrZWRTdGF0ZT0iZmFsc2UiIERlZlVuaGlkZVdoZW5Vc2Vk
PSJmYWxzZSIgRGVmU2VtaUhpZGRlbj0iZmFsc2UiIERlZlFGb3JtYXQ9ImZhbHNlIiBEZWZQcmlv
cml0eT0iOTkiIExhdGVudFN0eWxlQ291bnQ9IjM3NSI+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjAiIFFGb3JtYXQ9InRydWUiIE5hbWU9Ik5vcm1hbCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBRRm9ybWF0PSJ0cnVlIiBO
YW1lPSJoZWFkaW5nIDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIFFGb3JtYXQ9InRy
dWUiIE5hbWU9ImhlYWRpbmcgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1h
dD0idHJ1ZSIgTmFtZT0iaGVhZGluZyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBR
Rm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA2Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDciLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgOCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA5Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iaW5k
ZXggMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCAzIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9ImluZGV4IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVu
PSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iaW5kZXggNSIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0
cnVlIiBOYW1lPSJpbmRleCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IDciLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iaW5kZXggOCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCA5
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idG9jIDEiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2MgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9InRvYyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0i
dG9jIDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2MgNSIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgU2VtaUhpZGRlbj0idHJ1
ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9InRvYyA2Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0idG9jIDciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBO
YW1lPSJ0b2MgOCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIz
OSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9InRvYyA5Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9Ik5vcm1hbCBJbmRlbnQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFt
ZT0iZm9vdG5vdGUgdGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlI
aWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJhbm5vdGF0aW9uIHRleHQi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhp
ZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iaGVhZGVyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImZv
b3RlciIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCBoZWFkaW5nIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM1IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhp
ZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iY2FwdGlvbiIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJ0YWJsZSBvZiBmaWd1cmVzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImVu
dmVsb3BlIGFkZHJlc3MiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iZW52ZWxvcGUgcmV0dXJuIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9ImZvb3Rub3RlIHJlZmVyZW5jZSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJhbm5vdGF0aW9uIHJlZmVyZW5jZSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJsaW5l
IG51bWJlciIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRy
dWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJwYWdlIG51bWJlciIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0
cnVlIiBOYW1lPSJlbmRub3RlIHJlZmVyZW5jZSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJlbmRu
b3RlIHRleHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idGFibGUgb2YgYXV0aG9yaXRpZXMiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0ibWFjcm8iLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idG9hIGhl
YWRpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJMaXN0IEJ1bGxldCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IE51bWJlciIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5V
c2VkPSJ0cnVlIiBOYW1lPSJMaXN0IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCAzIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0
IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBCdWxsZXQgMiIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJMaXN0IEJ1bGxldCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgQnVsbGV0
IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBCdWxsZXQgNSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJMaXN0IE51bWJlciAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgTnVtYmVy
IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBOdW1iZXIgNCIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJMaXN0IE51bWJlciA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
UHJpb3JpdHk9IjEwIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJUaXRsZSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJDbG9zaW5nIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlNpZ25hdHVyZSIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIxIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iRGVmYXVsdCBQYXJhZ3JhcGggRm9udCIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRleHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iQm9k
eSBUZXh0IEluZGVudCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IENvbnRpbnVlIi8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hl
blVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgQ29udGludWUgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJMaXN0IENvbnRpbnVlIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBDb250aW51ZSA0
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgQ29udGludWUgNSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJNZXNzYWdlIEhlYWRlciIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSIxMSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iU3VidGl0bGUiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iU2FsdXRhdGlvbiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJEYXRlIi8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hl
blVzZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4dCBGaXJzdCBJbmRlbnQiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0iQm9keSBUZXh0IEZpcnN0IEluZGVudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9
Ik5vdGUgSGVhZGluZyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRleHQgMiIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5V
c2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRleHQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5
IFRleHQgSW5kZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iQm9keSBUZXh0IEluZGVudCAz
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkJsb2NrIFRleHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFt
ZT0iSHlwZXJsaW5rIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRl
bj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkZvbGxvd2VkSHlwZXJsaW5rIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjIyIiBRRm9ybWF0PSJ0
cnVlIiBOYW1lPSJTdHJvbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iMjAiIFFGb3JtYXQ9InRydWUiIE5hbWU9IkVtcGhhc2lzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUi
IE5hbWU9IkRvY3VtZW50IE1hcCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJQbGFpbiBUZXh0Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9IkUtbWFpbCBTaWduYXR1cmUiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iSFRNTCBUb3Agb2YgRm9ybSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIEJvdHRv
bSBvZiBGb3JtIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ik5vcm1hbCAoV2ViKSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJIVE1MIEFjcm9ueW0iLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBB
ZGRyZXNzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1
ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkhUTUwgQ2l0ZSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJIVE1MIENvZGUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBEZWZpbml0aW9u
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkhUTUwgS2V5Ym9hcmQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iSFRNTCBQcmVmb3JtYXR0ZWQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBTYW1w
bGUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBUeXBld3JpdGVyIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9IkhUTUwgVmFyaWFibGUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTm9ybWFsIFRh
YmxlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIg
VW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImFubm90YXRpb24gc3ViamVjdCIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJObyBMaXN0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ik91dGxpbmUgTGlz
dCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIg
VW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ik91dGxpbmUgTGlzdCAyIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9Ik91dGxpbmUgTGlzdCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIFNp
bXBsZSAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1
ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIFNpbXBsZSAyIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9IlRhYmxlIFNpbXBsZSAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxl
IENsYXNzaWMgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBDbGFzc2ljIDIiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ2xhc3NpYyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9
IlRhYmxlIENsYXNzaWMgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlI
aWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBDb2xvcmZ1bCAx
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENvbG9yZnVsIDIiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0iVGFibGUgQ29sb3JmdWwgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBD
b2x1bW5zIDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ29sdW1ucyAyIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IlRhYmxlIENvbHVtbnMgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJU
YWJsZSBDb2x1bW5zIDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ29sdW1ucyA1Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIEdyaWQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJUYWJsZSBHcmlkIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCAzIi8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hl
blVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIEdyaWQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJU
YWJsZSBHcmlkIDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVu
PSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCA2Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IlRhYmxlIEdyaWQgNyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJs
ZSBHcmlkIDgiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgTGlzdCAxIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9IlRhYmxlIExpc3QgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBM
aXN0IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgTGlzdCA0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9IlRhYmxlIExpc3QgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0
IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgTGlzdCA3Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUi
IE5hbWU9IlRhYmxlIExpc3QgOCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSAzRCBlZmZl
Y3RzIDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgM0QgZWZmZWN0cyAyIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IlRhYmxlIDNEIGVmZmVjdHMgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJUYWJsZSBDb250ZW1wb3JhcnkiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBT
ZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgRWxlZ2Fu
dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBQcm9mZXNzaW9uYWwiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgU3VidGxlIDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUg
U3VidGxlIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgV2ViIDEiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgV2ViIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgV2Vi
IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iQmFsbG9vbiBUZXh0Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBOYW1lPSJUYWJsZSBHcmlkIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IlRhYmxlIFRoZW1lIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgTmFtZT0iUGxhY2Vob2xkZXIgVGV4dCIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIxIiBRRm9ybWF0PSJ0cnVlIiBOYW1l
PSJObyBTcGFjaW5nIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjYwIiBOYW1lPSJMaWdodCBTaGFkaW5nIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjYxIiBOYW1lPSJMaWdodCBMaXN0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBOYW1lPSJMaWdodCBHcmlkIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAx
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY0IiBOYW1lPSJN
ZWRpdW0gU2hhZGluZyAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjY1IiBOYW1lPSJNZWRpdW0gTGlzdCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjY2IiBOYW1lPSJNZWRpdW0gTGlzdCAyIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBOYW1lPSJNZWRpdW0gR3JpZCAxIi8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBOYW1lPSJNZWRpdW0g
R3JpZCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBO
YW1lPSJNZWRpdW0gR3JpZCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjcwIiBOYW1lPSJEYXJrIExpc3QiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNzEiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmciLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIE5hbWU9IkNvbG9yZnVsIExpc3QiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIE5hbWU9IkNvbG9y
ZnVsIEdyaWQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAi
IE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNjEiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDEiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdyaWQg
QWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMi
IE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDEi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIE5hbWU9Ik1l
ZGl1bSBMaXN0IDEgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBT
ZW1pSGlkZGVuPSJ0cnVlIiBOYW1lPSJSZXZpc2lvbiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSIzNCIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iTGlzdCBQYXJhZ3Jh
cGgiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjkiIFFGb3Jt
YXQ9InRydWUiIE5hbWU9IlF1b3RlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
UHJpb3JpdHk9IjMwIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJJbnRlbnNlIFF1b3RlIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBOYW1lPSJNZWRpdW0gTGlz
dCAyIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjY3IiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCAxIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBOYW1lPSJNZWRp
dW0gR3JpZCAzIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjcwIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50
IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIE5hbWU9
IkNvbG9yZnVsIExpc3QgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iNzMiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDEiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIE5hbWU9IkxpZ2h0IFNoYWRpbmcg
QWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEi
IE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIE5hbWU9Ik1lZGl1bSBTaGFkaW5n
IDEgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjQiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIE5hbWU9Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDIi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIE5hbWU9Ik1l
ZGl1bSBMaXN0IDIgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iNjciIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNj
ZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIE5h
bWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgMiIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgTmFtZT0iQ29sb3JmdWwgU2hhZGlu
ZyBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3
MiIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgTmFtZT0iTGlnaHQg
U2hhZGluZyBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI2MSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBBY2NlbnQgMyIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgTmFtZT0iTWVkaXVt
IFNoYWRpbmcgMSBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI2NCIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgMyIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVkaXVtIExpc3QgMSBB
Y2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIg
TmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI2NyIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgMyIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgTmFtZT0iTWVkaXVtIEdy
aWQgMiBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI2OSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCAzIi8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBOYW1lPSJDb2xvcmZ1
bCBTaGFkaW5nIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjcyIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2Vu
dCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYwIiBOYW1l
PSJMaWdodCBTaGFkaW5nIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjYxIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBOYW1lPSJMaWdodCBHcmlkIEFjY2Vu
dCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBOYW1l
PSJNZWRpdW0gU2hhZGluZyAxIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjY0IiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFjY2VudCA0Ii8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBOYW1lPSJNZWRpdW0g
TGlzdCAxIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjY2IiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCA0
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBOYW1lPSJN
ZWRpdW0gR3JpZCAyIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
UHJpb3JpdHk9IjY5IiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50
IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIE5hbWU9
IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNzIiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDQiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIE5hbWU9IkNvbG9yZnVsIEdy
aWQgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjAiIE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdy
aWQgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjMiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50
IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIE5hbWU9
Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iNjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDUiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIE5hbWU9Ik1lZGl1bSBHcmlkIDEg
QWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgi
IE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNjkiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIE5hbWU9IkRhcmsgTGlz
dCBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3
MSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgTmFtZT0iQ29s
b3JmdWwgR3JpZCBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI2MCIgTmFtZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQg
NiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgTmFtZT0i
TGlnaHQgR3JpZCBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI2MyIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgNiIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgTmFtZT0iTWVkaXVtIFNoYWRpbmcg
MiBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2
NSIgTmFtZT0iTWVkaXVtIExpc3QgMSBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgNiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgTmFtZT0iTWVkaXVt
IEdyaWQgMSBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI2OCIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQg
NiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgTmFtZT0i
RGFyayBMaXN0IEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjcxIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFj
Y2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBO
YW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjE5IiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJTdWJ0bGUgRW1waGFzaXMi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjEiIFFGb3JtYXQ9
InRydWUiIE5hbWU9IkludGVuc2UgRW1waGFzaXMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iMzEiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlN1YnRsZSBSZWZlcmVu
Y2UiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzIiIFFGb3Jt
YXQ9InRydWUiIE5hbWU9IkludGVuc2UgUmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjMzIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJCb29rIFRpdGxl
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM3IiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iQmlibGlvZ3JhcGh5Ii8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iVE9DIEhlYWRp
bmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDEiIE5hbWU9
IlBsYWluIFRhYmxlIDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNDIiIE5hbWU9IlBsYWluIFRhYmxlIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNDMiIE5hbWU9IlBsYWluIFRhYmxlIDMiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDQiIE5hbWU9IlBsYWluIFRhYmxlIDQiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDUiIE5hbWU9IlBsYWluIFRh
YmxlIDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDAiIE5h
bWU9IkdyaWQgVGFibGUgTGlnaHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iNDYiIE5hbWU9IkdyaWQgVGFibGUgMSBMaWdodCIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlkIFRhYmxl
IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9
IkdyaWQgVGFibGUgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9IkdyaWQgVGFibGUgNiBDb2xvcmZ1bCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJs
ZSA3IENvbG9yZnVsIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjQ2IiBOYW1lPSJHcmlkIFRhYmxlIDEgTGlnaHQgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDciIE5hbWU9IkdyaWQgVGFibGUgMiBBY2NlbnQg
MSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0i
R3JpZCBUYWJsZSAzIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
UHJpb3JpdHk9IjQ5IiBOYW1lPSJHcmlkIFRhYmxlIDQgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9IkdyaWQgVGFibGUgNSBEYXJr
IEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUx
IiBOYW1lPSJHcmlkIFRhYmxlIDYgQ29sb3JmdWwgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9IkdyaWQgVGFibGUgNyBDb2xvcmZ1
bCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0
NiIgTmFtZT0iR3JpZCBUYWJsZSAxIExpZ2h0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIgQWNjZW50IDIi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikdy
aWQgVGFibGUgMyBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI0OSIgTmFtZT0iR3JpZCBUYWJsZSA0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUwIiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayBB
Y2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIg
TmFtZT0iR3JpZCBUYWJsZSA2IENvbG9yZnVsIEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcgQ29sb3JmdWwg
QWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYi
IE5hbWU9IkdyaWQgVGFibGUgMSBMaWdodCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIEFjY2VudCAzIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlk
IFRhYmxlIDMgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNDkiIE5hbWU9IkdyaWQgVGFibGUgNCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsgQWNj
ZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5h
bWU9IkdyaWQgVGFibGUgNiBDb2xvcmZ1bCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJsZSA3IENvbG9yZnVsIEFj
Y2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBO
YW1lPSJHcmlkIFRhYmxlIDEgTGlnaHQgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDciIE5hbWU9IkdyaWQgVGFibGUgMiBBY2NlbnQgNCIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iR3JpZCBU
YWJsZSAzIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjQ5IiBOYW1lPSJHcmlkIFRhYmxlIDQgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9IkdyaWQgVGFibGUgNSBEYXJrIEFjY2Vu
dCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1l
PSJHcmlkIFRhYmxlIDYgQ29sb3JmdWwgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9IkdyaWQgVGFibGUgNyBDb2xvcmZ1bCBBY2Nl
bnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFt
ZT0iR3JpZCBUYWJsZSAxIExpZ2h0IEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIgQWNjZW50IDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFi
bGUgMyBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI0OSIgTmFtZT0iR3JpZCBUYWJsZSA0IEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUwIiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayBBY2NlbnQg
NSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0i
R3JpZCBUYWJsZSA2IENvbG9yZnVsIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50
IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9
IkdyaWQgVGFibGUgMSBMaWdodCBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIEFjY2VudCA2Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlkIFRhYmxl
IDMgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NDkiIE5hbWU9IkdyaWQgVGFibGUgNCBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsgQWNjZW50IDYi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikdy
aWQgVGFibGUgNiBDb2xvcmZ1bCBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCA2
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJM
aXN0IFRhYmxlIDEgTGlnaHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNDciIE5hbWU9Ikxpc3QgVGFibGUgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0IFRhYmxlIDQiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9Ikxpc3QgVGFi
bGUgNSBEYXJrIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUx
IiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29sb3JmdWwiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iTGlzdCBUYWJs
ZSAxIExpZ2h0IEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjQ3IiBOYW1lPSJMaXN0IFRhYmxlIDIgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikxpc3QgVGFibGUgMyBBY2NlbnQg
MSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0i
TGlzdCBUYWJsZSA0IEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
UHJpb3JpdHk9IjUwIiBOYW1lPSJMaXN0IFRhYmxlIDUgRGFyayBBY2NlbnQgMSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iTGlzdCBUYWJsZSA2
IENvbG9yZnVsIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjUyIiBOYW1lPSJMaXN0IFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDEiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3QgVGFibGUg
MSBMaWdodCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI0NyIgTmFtZT0iTGlzdCBUYWJsZSAyIEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMgQWNjZW50IDIi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxp
c3QgVGFibGUgNCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI1MCIgTmFtZT0iTGlzdCBUYWJsZSA1IERhcmsgQWNjZW50IDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikxpc3QgVGFibGUgNiBD
b2xvcmZ1bCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI1MiIgTmFtZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCAyIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJMaXN0IFRhYmxlIDEg
TGlnaHQgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNDciIE5hbWU9Ikxpc3QgVGFibGUgMiBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIEFjY2VudCAzIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0
IFRhYmxlIDQgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNTAiIE5hbWU9Ikxpc3QgVGFibGUgNSBEYXJrIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29s
b3JmdWwgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNTIiIE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgMyIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iTGlzdCBUYWJsZSAxIExp
Z2h0IEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjQ3IiBOYW1lPSJMaXN0IFRhYmxlIDIgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikxpc3QgVGFibGUgMyBBY2NlbnQgNCIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iTGlzdCBU
YWJsZSA0IEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjUwIiBOYW1lPSJMaXN0IFRhYmxlIDUgRGFyayBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iTGlzdCBUYWJsZSA2IENvbG9y
ZnVsIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjUyIiBOYW1lPSJMaXN0IFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3QgVGFibGUgMSBMaWdo
dCBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0
NyIgTmFtZT0iTGlzdCBUYWJsZSAyIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMgQWNjZW50IDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFi
bGUgNCBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI1MCIgTmFtZT0iTGlzdCBUYWJsZSA1IERhcmsgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1
bCBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1
MiIgTmFtZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJMaXN0IFRhYmxlIDEgTGlnaHQg
QWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDci
IE5hbWU9Ikxpc3QgVGFibGUgMiBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIEFjY2VudCA2Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0IFRhYmxl
IDQgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NTAiIE5hbWU9Ikxpc3QgVGFibGUgNSBEYXJrIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29sb3JmdWwg
QWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIi
IE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBO
YW1lPSJNZW50aW9uIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRl
bj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlNtYXJ0IEh5cGVybGluayIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIYXNodGFnIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlVucmVz
b2x2ZWQgTWVudGlvbiIvPg0KPC93OkxhdGVudFN0eWxlcz4NCjwveG1sPjwhW2VuZGlmXS0tPjxz
dHlsZT48IS0tDQovKiBGb250IERlZmluaXRpb25zICovDQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFt
aWx5OiJDYW1icmlhIE1hdGgiOw0KCXBhbm9zZS0xOjIgNCA1IDMgNSA0IDYgMyAyIDQ7DQoJbXNv
LWZvbnQtY2hhcnNldDowOw0KCW1zby1nZW5lcmljLWZvbnQtZmFtaWx5OnJvbWFuOw0KCW1zby1m
b250LXBpdGNoOnZhcmlhYmxlOw0KCW1zby1mb250LXNpZ25hdHVyZTotNTM2ODcwMTQ1IDExMDcz
MDU3MjcgMCAwIDQxNSAwO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6RGVuZ1hpYW47DQoJ
cGFub3NlLTE6MiAxIDYgMCAzIDEgMSAxIDEgMTsNCgltc28tZm9udC1hbHQ6562J57q/Ow0KCW1z
by1mb250LWNoYXJzZXQ6MTM0Ow0KCW1zby1nZW5lcmljLWZvbnQtZmFtaWx5OmF1dG87DQoJbXNv
LWZvbnQtcGl0Y2g6dmFyaWFibGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi0xNjEwNjEyMDMzIDk1
MzEyMjA0MiAyMiAwIDI2MjE1OSAwO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q2FsaWJy
aTsNCglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAzIDIgNDsNCgltc28tZm9udC1jaGFyc2V0OjA7
DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7DQoJbXNvLWZvbnQtcGl0Y2g6dmFyaWFi
bGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi01MzY4NTk5MDUgLTEwNzM3MzI0ODUgOSAwIDUxMSAw
O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q29uc29sYXM7DQoJcGFub3NlLTE6MiAxMSA2
IDkgMiAyIDQgMyAyIDQ7DQoJbXNvLWZvbnQtY2hhcnNldDowOw0KCW1zby1nZW5lcmljLWZvbnQt
ZmFtaWx5Om1vZGVybjsNCgltc28tZm9udC1waXRjaDpmaXhlZDsNCgltc28tZm9udC1zaWduYXR1
cmU6LTUzNjg2OTEyMSA2NDc2NyAxIDAgNDE1IDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWls
eTrlvq7ova/pm4Xpu5E7DQoJcGFub3NlLTE6MiAxMSA1IDMgMiAyIDQgMiAyIDQ7DQoJbXNvLWZv
bnQtY2hhcnNldDoxMzQ7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7DQoJbXNvLWZv
bnQtcGl0Y2g6dmFyaWFibGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi0yMTQ3NDgzMDAxIDY4NDY3
MDAzMiAyMiAwIDI2MjE3NSAwO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IlxA562J57q/
IjsNCglwYW5vc2UtMToyIDEgNiAwIDMgMSAxIDEgMSAxOw0KCW1zby1mb250LWFsdDoiXEBEZW5n
WGlhbiI7DQoJbXNvLWZvbnQtY2hhcnNldDoxMzQ7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6
YXV0bzsNCgltc28tZm9udC1waXRjaDphdXRvOw0KCW1zby1mb250LXNpZ25hdHVyZTowIDAgMCAw
IDAgMDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OiJcQOW+rui9r+mbhem7kSI7DQoJbXNv
LWZvbnQtY2hhcnNldDoxMzQ7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7DQoJbXNv
LWZvbnQtcGl0Y2g6dmFyaWFibGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi0yMTQ3NDgzMDAxIDY4
NDY3MDAzMiAyMiAwIDI2MjE3NSAwO30NCi8qIFN0eWxlIERlZmluaXRpb25zICovDQpwLk1zb05v
cm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21zby1zdHlsZS11bmhpZGU6bm87
DQoJbXNvLXN0eWxlLXFmb3JtYXQ6eWVzOw0KCW1zby1zdHlsZS1wYXJlbnQ6IiI7DQoJbWFyZ2lu
OjBjbTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJbXNvLXBhZ2luYXRpb246d2lkb3ctb3Jw
aGFuOw0KCWZvbnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2Vy
aWY7DQoJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6RGVuZ1hpYW47fQ0KYTpsaW5rLCBzcGFuLk1z
b0h5cGVybGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0
LWRlY29yYXRpb246dW5kZXJsaW5lOw0KCXRleHQtdW5kZXJsaW5lOnNpbmdsZTt9DQphOnZpc2l0
ZWQsIHNwYW4uTXNvSHlwZXJsaW5rRm9sbG93ZWQNCgl7bXNvLXN0eWxlLW5vc2hvdzp5ZXM7DQoJ
bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9yOnB1cnBsZTsNCgl0ZXh0LWRlY29yYXRpb246
dW5kZXJsaW5lOw0KCXRleHQtdW5kZXJsaW5lOnNpbmdsZTt9DQpwLm1zb25vcm1hbDAsIGxpLm1z
b25vcm1hbDAsIGRpdi5tc29ub3JtYWwwDQoJe21zby1zdHlsZS1uYW1lOm1zb25vcm1hbDsNCglt
c28tc3R5bGUtdW5oaWRlOm5vOw0KCW1zby1tYXJnaW4tdG9wLWFsdDphdXRvOw0KCW1hcmdpbi1y
aWdodDowY207DQoJbXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG87DQoJbWFyZ2luLWxlZnQ6MGNt
Ow0KCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsNCglmb250LXNpemU6MTEuMHB0Ow0KCWZv
bnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0KCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5
OkRlbmdYaWFuO30NCnNwYW4ubS0xNDIzNzc4NzcyMzg1NzMxMzIyaG9lbnpiDQoJe21zby1zdHls
ZS1uYW1lOm1fLTE0MjM3Nzg3NzIzODU3MzEzMjJob2VuemI7DQoJbXNvLXN0eWxlLXVuaGlkZTpu
bzt9DQpzcGFuLmhvZW56Yg0KCXttc28tc3R5bGUtbmFtZTpob2VuemI7DQoJbXNvLXN0eWxlLXVu
aGlkZTpubzt9DQpzcGFuLkVtYWlsU3R5bGUyMA0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbDsN
Cgltc28tc3R5bGUtbm9zaG93OnllczsNCgltc28tc3R5bGUtdW5oaWRlOm5vOw0KCW1zby1hbnNp
LWZvbnQtc2l6ZToxMS4wcHQ7DQoJbXNvLWJpZGktZm9udC1zaXplOjExLjBwdDsNCglmb250LWZh
bWlseTpDb25zb2xhczsNCgltc28tYXNjaWktZm9udC1mYW1pbHk6Q29uc29sYXM7DQoJbXNvLWZh
cmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buROw0KCW1zby1oYW5zaS1mb250LWZhbWlseTpD
b25zb2xhczsNCgltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsNCgljb2xv
cjp3aW5kb3d0ZXh0O30NCnNwYW4uRW1haWxTdHlsZTIyDQoJe21zby1zdHlsZS10eXBlOnBlcnNv
bmFsLXJlcGx5Ow0KCW1zby1zdHlsZS1ub3Nob3c6eWVzOw0KCW1zby1zdHlsZS11bmhpZGU6bm87
DQoJbXNvLWFuc2ktZm9udC1zaXplOjExLjBwdDsNCgltc28tYmlkaS1mb250LXNpemU6MTEuMHB0
Ow0KCWZvbnQtZmFtaWx5OkNvbnNvbGFzOw0KCW1zby1hc2NpaS1mb250LWZhbWlseTpDb25zb2xh
czsNCgltc28tZmFyZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7DQoJbXNvLWhhbnNpLWZv
bnQtZmFtaWx5OkNvbnNvbGFzOw0KCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9t
YW4iOw0KCWNvbG9yOndpbmRvd3RleHQ7fQ0Kc3Bhbi5TcGVsbEUNCgl7bXNvLXN0eWxlLW5hbWU6
IiI7DQoJbXNvLXNwbC1lOnllczt9DQouTXNvQ2hwRGVmYXVsdA0KCXttc28tc3R5bGUtdHlwZTpl
eHBvcnQtb25seTsNCgltc28tZGVmYXVsdC1wcm9wczp5ZXM7DQoJZm9udC1zaXplOjEwLjBwdDsN
Cgltc28tYW5zaS1mb250LXNpemU6MTAuMHB0Ow0KCW1zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7
DQoJbXNvLWFzY2lpLWZvbnQtZmFtaWx5OkNhbGlicmk7DQoJbXNvLWZhcmVhc3QtZm9udC1mYW1p
bHk6RGVuZ1hpYW47DQoJbXNvLWhhbnNpLWZvbnQtZmFtaWx5OkNhbGlicmk7fQ0KQHBhZ2UgV29y
ZFNlY3Rpb24xDQoJe3NpemU6NjEyLjBwdCA3OTIuMHB0Ow0KCW1hcmdpbjo3Mi4wcHQgOTAuMHB0
IDcyLjBwdCA5MC4wcHQ7DQoJbXNvLWhlYWRlci1tYXJnaW46MzYuMHB0Ow0KCW1zby1mb290ZXIt
bWFyZ2luOjM2LjBwdDsNCgltc28tcGFwZXItc291cmNlOjA7fQ0KZGl2LldvcmRTZWN0aW9uMQ0K
CXtwYWdlOldvcmRTZWN0aW9uMTt9DQotLT48L3N0eWxlPjwhLS1baWYgZ3RlIG1zbyAxMF0+PHN0
eWxlPi8qIFN0eWxlIERlZmluaXRpb25zICovDQp0YWJsZS5Nc29Ob3JtYWxUYWJsZQ0KCXttc28t
c3R5bGUtbmFtZToiVGFibGUgTm9ybWFsIjsNCgltc28tdHN0eWxlLXJvd2JhbmQtc2l6ZTowOw0K
CW1zby10c3R5bGUtY29sYmFuZC1zaXplOjA7DQoJbXNvLXN0eWxlLW5vc2hvdzp5ZXM7DQoJbXNv
LXN0eWxlLXByaW9yaXR5Ojk5Ow0KCW1zby1zdHlsZS1wYXJlbnQ6IiI7DQoJbXNvLXBhZGRpbmct
YWx0OjBjbSA1LjRwdCAwY20gNS40cHQ7DQoJbXNvLXBhcmEtbWFyZ2luOjBjbTsNCgltc28tcGFy
YS1tYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOw0K
CWZvbnQtc2l6ZToxMC4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7DQoJ
bXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7fQ0KPC9zdHlsZT48IVtlbmRp
Zl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9ImVk
aXQiIHNwaWRtYXg9IjEwMjYiIC8+DQo8L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28g
OV0+PHhtbD4NCjxvOnNoYXBlbGF5b3V0IHY6ZXh0PSJlZGl0Ij4NCjxvOmlkbWFwIHY6ZXh0PSJl
ZGl0IiBkYXRhPSIxIiAvPg0KPC9vOnNoYXBlbGF5b3V0PjwveG1sPjwhW2VuZGlmXS0tPg0KPC9o
ZWFkPg0KPGJvZHkgbGFuZz0iRU4tVVMiIGxpbms9ImJsdWUiIHZsaW5rPSJwdXJwbGUiIHN0eWxl
PSJ0YWItaW50ZXJ2YWw6MzYuMHB0Ij4NCjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZh
cmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90
O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+QnV0IHRoZQ0KPHNwYW4gY2xhc3M9IlNwZWxsRSI+Y2xv
Y2tfZ2V0dGltZTwvc3Bhbj4gaGFzbuKAmXQgYmVlbiBpbXBsZW1lbnRlZCBpbiA8c3BhbiBjbGFz
cz0iU3BlbGxFIj4NCm5vbGliYzwvc3Bhbj4gb3IgPHNwYW4gY2xhc3M9IlNwZWxsRSI+bGlidGlt
ZTwvc3Bhbj4uPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+
rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVv
dDsiPklmIHlvdXIgYXBwbGljYXRpb24ganVzdCB1c2VzIHRoaXMgZnVuY3Rpb24gdG8gcHJpbnQN
CjxzcGFuIGNsYXNzPSJTcGVsbEUiPnRpbWVzdGFtcGU8L3NwYW4+LCB5b3U8bzpwPjwvbzpwPjwv
c3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6
Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZv
bnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+Y2FuIGltcGxlbWVudCBhIGR1
bW15IGZ1bmN0aW9uIGluIHlvdXIgY29kZSBpbiB0aGlzIHRpbWUgdG8gcGFzcyB0aGU8bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1m
YW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1i
aWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+bGlua2luZy48bzpw
PjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9u
dC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21z
by1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+PG86cD4mbmJz
cDs8L286cD48L3NwYW4+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6
c29saWQgYmx1ZSAxLjVwdDtwYWRkaW5nOjBjbSAwY20gMGNtIDQuMHB0Ij4NCjxkaXY+DQo8ZGl2
IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItdG9wOnNvbGlkICNFMUUxRTEgMS4wcHQ7cGFkZGlu
ZzozLjBwdCAwY20gMGNtIDBjbSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48Yj48c3BhbiBzdHls
ZT0ibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij5G
cm9tOjwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9Im1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiZxdW90
O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+IFdlaSBDaGVuDQo8YnI+DQo8Yj5TZW50OjwvYj4gMjAx
ODwvc3Bhbj48c3BhbiBsYW5nPSJaSC1DTiIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O+W+rui9
r+mbhem7kSZxdW90OyxzYW5zLXNlcmlmO21zby1iaWRpLWZvbnQtZmFtaWx5OuW+rui9r+mbhem7
kSI+5bm0PC9zcGFuPjxzcGFuIHN0eWxlPSJtc28tZmFyZWFzdC1mb250LWZhbWlseTomcXVvdDtU
aW1lcyBOZXcgUm9tYW4mcXVvdDsiPjQ8L3NwYW4+PHNwYW4gbGFuZz0iWkgtQ04iIHN0eWxlPSJm
b250LWZhbWlseTomcXVvdDvlvq7ova/pm4Xpu5EmcXVvdDssc2Fucy1zZXJpZjttc28tYmlkaS1m
b250LWZhbWlseTrlvq7ova/pm4Xpu5EiPuaciDwvc3Bhbj48c3BhbiBzdHlsZT0ibXNvLWZhcmVh
c3QtZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij4xODwvc3Bhbj48c3Bh
biBsYW5nPSJaSC1DTiIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O+W+rui9r+mbhem7kSZxdW90
OyxzYW5zLXNlcmlmO21zby1iaWRpLWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kSI+5pelPC9zcGFu
PjxzcGFuIHN0eWxlPSJtc28tZmFyZWFzdC1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9t
YW4mcXVvdDsiPg0KIDEwOjAwPGJyPg0KPGI+VG86PC9iPiAnQWpheSBHYXJnJyAmbHQ7YWpheWdh
cmduc2l0QGdtYWlsLmNvbSZndDs7IG1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZzxi
cj4NCjxiPlN1YmplY3Q6PC9iPiBSRTogW01pbmlvcy1kZXZlbF0gW1VuaWtyYWZ0XSBTdGF0aWMg
TGlicmFyaWVzIG5vdCBiZWluZyBsaW5rZWQgcHJvcGVybHk8bzpwPjwvbzpwPjwvc3Bhbj48L3A+
DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29s
YXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFt
aWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+SGkgQWpheSw8bzpwPjwvbzpwPjwvc3Bh
bj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29u
c29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQt
ZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+PG86cD4mbmJzcDs8L286cD48L3Nw
YW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNv
bnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250
LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPkl0IHNlZW1zIHlvdSBoYXZlIHRv
IHdhaXQgdW50aWwgQ29zdGlu4oCZcyBzY2hlZHVsZSBsaWIgdG8gYmUgbWVyZ2VkLjxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZh
bWlseTpDb25zb2xhczttc28tZmFyZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7bXNvLWJp
ZGktZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij5bVU5JS1JBRlQgUEFU
Q0ggMTMvMTddIGxpYi91a3NjaGVkOiBVcGRhdGVzIGZvciBpbmxpbmluZyB3aXRoIHBsYXQvY29t
bW9uIGNoYW5nZXM8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6
5b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZx
dW90OyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5
OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4m
cXVvdDsiPk9yIHlvdSBjYW4gcGljayBoaXMgcGF0Y2ggc2VyaWVzIHRvIHlvdXIgbG9jYWwgcmVw
b3NpdG9yeSBmb3IgdGVzdGluZyBpbiBhZHZhbmNlLjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhczttc28t
ZmFyZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7bXNvLWJpZGktZm9udC1mYW1pbHk6JnF1
b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNv
LWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZx
dW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+UmVnYXJkcyw8bzpwPjwvbzpwPjwvc3Bhbj48L3A+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7
bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5
OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+V2VpIENoZW48bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29s
YXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFt
aWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNv
bGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZh
bWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFu
PjwvcD4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci1sZWZ0OnNvbGlkIGJsdWUgMS41
cHQ7cGFkZGluZzowY20gMGNtIDBjbSA0LjBwdCI+DQo8ZGl2Pg0KPGRpdiBzdHlsZT0iYm9yZGVy
Om5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjRTFFMUUxIDEuMHB0O3BhZGRpbmc6My4wcHQgMGNtIDBj
bSAwY20iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1vdXRsaW5lLWxldmVsOjEi
PjxiPjxzcGFuIHN0eWxlPSJtc28tZmFyZWFzdC1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcg
Um9tYW4mcXVvdDsiPkZyb206PC9zcGFuPjwvYj48c3BhbiBzdHlsZT0ibXNvLWZhcmVhc3QtZm9u
dC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij4gTWluaW9zLWRldmVsICZsdDs8
YSBocmVmPSJtYWlsdG86bWluaW9zLWRldmVsLWJvdW5jZXNAbGlzdHMueGVucHJvamVjdC5vcmci
Pm1pbmlvcy1kZXZlbC1ib3VuY2VzQGxpc3RzLnhlbnByb2plY3Qub3JnPC9hPiZndDsNCjxiPk9u
IEJlaGFsZiBPZiA8L2I+QWpheSBHYXJnPGJyPg0KPGI+U2VudDo8L2I+IDIwMTg8L3NwYW4+PHNw
YW4gbGFuZz0iWkgtQ04iIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDvlvq7ova/pm4Xpu5EmcXVv
dDssc2Fucy1zZXJpZjttc28tYmlkaS1mb250LWZhbWlseTrlvq7ova/pm4Xpu5EiPuW5tDwvc3Bh
bj48c3BhbiBzdHlsZT0ibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJv
bWFuJnF1b3Q7Ij40PC9zcGFuPjxzcGFuIGxhbmc9IlpILUNOIiBzdHlsZT0iZm9udC1mYW1pbHk6
JnF1b3Q75b6u6L2v6ZuF6buRJnF1b3Q7LHNhbnMtc2VyaWY7bXNvLWJpZGktZm9udC1mYW1pbHk6
5b6u6L2v6ZuF6buRIj7mnIg8L3NwYW4+PHNwYW4gc3R5bGU9Im1zby1mYXJlYXN0LWZvbnQtZmFt
aWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+MTg8L3NwYW4+PHNwYW4gbGFuZz0iWkgt
Q04iIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDvlvq7ova/pm4Xpu5EmcXVvdDssc2Fucy1zZXJp
Zjttc28tYmlkaS1mb250LWZhbWlseTrlvq7ova/pm4Xpu5EiPuaXpTwvc3Bhbj48c3BhbiBzdHls
ZT0ibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij4N
CiA5OjE0PGJyPg0KPGI+VG86PC9iPiA8YSBocmVmPSJtYWlsdG86bWluaW9zLWRldmVsQGxpc3Rz
LnhlbnByb2plY3Qub3JnIj5taW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmc8L2E+PGJy
Pg0KPGI+U3ViamVjdDo8L2I+IFJlOiBbTWluaW9zLWRldmVsXSBbVW5pa3JhZnRdIFN0YXRpYyBM
aWJyYXJpZXMgbm90IGJlaW5nIGxpbmtlZCBwcm9wZXJseTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwv
cD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5FYXJuZXN0IHJlcXVlc3QgZm9yIHNvbWUg
aGVscCwgcGxlYXNlIC4uPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj5PbiBTdW4sIEFwciAxNSwgMjAxOCBhdCA3OjA1IFBNLCBBamF5IEdhcmcgJmx0OzxhIGhy
ZWY9Im1haWx0bzphamF5Z2FyZ25zaXRAZ21haWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+YWpheWdh
cmduc2l0QGdtYWlsLmNvbTwvYT4mZ3Q7IHdyb3RlOjxvOnA+PC9vOnA+PC9wPg0KPGJsb2NrcXVv
dGUgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci1sZWZ0OnNvbGlkICNDQ0NDQ0MgMS4wcHQ7bXNv
LWJvcmRlci1sZWZ0LWFsdDpzb2xpZCAjQ0NDQ0NDIC43NXB0O3BhZGRpbmc6MGNtIDBjbSAwY20g
Ni4wcHQ7bWFyZ2luLWxlZnQ6NC44cHQ7bWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tcmlnaHQ6MGNt
O21hcmdpbi1ib3R0b206NS4wcHQiPg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij5JZGVhcyBwbGVhc2U/PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPkFueSBwb2ludGVycyB0byBhbnkgZXhpc3RpbmcgZXhhbXBsZSB1c2FnZSBvZiBsaW5raW5n
IHN0YXRpYy1saWJyYXJpZXMgd291bGQgYmUgdXNlZnVsLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+
DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwv
bzpwPjwvcD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5PbiBTYXQsIEFwciAxNCwgMjAx
OCBhdCA2OjE1IFBNLCBBamF5IEdhcmcgJmx0OzxhIGhyZWY9Im1haWx0bzphamF5Z2FyZ25zaXRA
Z21haWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+YWpheWdhcmduc2l0QGdtYWlsLmNvbTwvYT4mZ3Q7
IHdyb3RlOjxvOnA+PC9vOnA+PC9wPg0KPGJsb2NrcXVvdGUgc3R5bGU9ImJvcmRlcjpub25lO2Jv
cmRlci1sZWZ0OnNvbGlkICNDQ0NDQ0MgMS4wcHQ7bXNvLWJvcmRlci1sZWZ0LWFsdDpzb2xpZCAj
Q0NDQ0NDIC43NXB0O3BhZGRpbmc6MGNtIDBjbSAwY20gNi4wcHQ7bWFyZ2luLWxlZnQ6NC44cHQ7
bWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206NS4wcHQiPg0K
PGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+VmVyeSBzdXJwcmlzaW5n
bHksIHRoZSBtaXNzaW5nIGZ1bmN0aW9ucyAoc3RhcnRfdGltZSwgZW5kX3RpbWUpIGFyZSBhY3R1
YWxseSBwcmVzZW50IGluDQo8YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vdG9ueWhvL0NvcmVN
YXJrL2Jsb2IvbWFzdGVyL2NvcmVfbWFpbi5jIiB0YXJnZXQ9Il9ibGFuayI+DQpodHRwczovL2dp
dGh1Yi5jb20vdG9ueWhvL0NvcmVNYXJrL2Jsb2IvbWFzdGVyL2NvcmVfbWFpbi5jPC9hPi48bzpw
PjwvbzpwPjwvcD4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1i
b3R0b206MTIuMHB0Ij5CdXQgaW4gdGhlIG1ha2Utb3V0cHV0LCBmZHRfd2lwLmMgaXMgYmVpbmcg
bGlzdGVkLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRp
dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPk9uIFNhdCwgQXByIDE0LCAyMDE4IGF0IDk6MjIgQU0sIEFqYXkg
R2FyZyAmbHQ7PGEgaHJlZj0ibWFpbHRvOmFqYXlnYXJnbnNpdEBnbWFpbC5jb20iIHRhcmdldD0i
X2JsYW5rIj5hamF5Z2FyZ25zaXRAZ21haWwuY29tPC9hPiZndDsgd3JvdGU6PG86cD48L286cD48
L3A+DQo8YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgI0ND
Q0NDQyAxLjBwdDttc28tYm9yZGVyLWxlZnQtYWx0OnNvbGlkICNDQ0NDQ0MgLjc1cHQ7cGFkZGlu
ZzowY20gMGNtIDBjbSA2LjBwdDttYXJnaW4tbGVmdDo0LjhwdDttYXJnaW4tdG9wOjUuMHB0O21h
cmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbTo1LjBwdCI+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5IaSBBbGwuPGJyPg0KPGJyPg0KSSBhbSB0cnlpbmcgdG8g
aW50ZWdyYXRlIGNvcmVtYXJrLWFwcCBpbiB1bmlrcmFmdCBmb3IgeDg2XzY0LjxvOnA+PC9vOnA+
PC9wPg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbTox
Mi4wcHQiPkl0IHJlcXVpcmVzIHN0YXRpYyBsaW5raW5nIHRvIGxpYnJ0LmEgYW5kIGxpYnB0aHJl
YWQuYTsgaG93ZXZlciBzZWVtcyZuYnNwOyB0aGV5IGFyZSBub3QgYmVpbmcgcGlja2VkIHVwLjxi
ciBzdHlsZT0ibXNvLXNwZWNpYWwtY2hhcmFjdGVyOmxpbmUtYnJlYWsiPg0KPCFbaWYgIXN1cHBv
cnRMaW5lQnJlYWtOZXdMaW5lXT48YnIgc3R5bGU9Im1zby1zcGVjaWFsLWNoYXJhY3RlcjpsaW5l
LWJyZWFrIj4NCjwhW2VuZGlmXT48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+Rm9sbG93aW5nIGlzIHRoZSBNYWtlZmlsZS51ayA6PGJyPg0KPGJyPg0KIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyM8YnI+DQokKGV2YWwgJChjYWxsIGFkZGxpYixhcHBjb3JlbWFyaykpPGJyPg0KPGJyPg0K
QVBQQ09SRU1BUktfU1JDUy15Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICYjNDM7PSAkKEFQUENPUkVN
QVJLX0JBU0UpL2NvcmVfbWFpbi5jJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFw8YnI+DQom
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
JChBUFBDT1JFTUFSS19CQVNFKS9jb3JlX2xpc3Rfam9pbi5jJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFw8YnI+DQombmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJChBUFBDT1JF
TUFSS19CQVNFKS9jb3JlX3V0aWwuYyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyBcPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7ICQoQVBQQ09SRU1BUktfQkFTRSkvY29yZV9zdGF0ZS5jJm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFw8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJChBUFBDT1JFTUFSS19CQVNFKS9jb3JlX21h
dHJpeC5jJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFw8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsgXDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAkKEFQUENPUkVNQVJLX0JBU0UpL2xpbnV4NjQvY29y
ZV9wb3J0bWUuYzxicj4NCjxicj4NCkFQUENPUkVNQVJLX09CSlMteSZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyAmIzQzOz0gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9saWJydC5hJm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFw8YnI+DQom
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsgL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9saWJwdGhyZWFkLmE8YnI+DQo8YnI+DQpB
UFBDT1JFTUFSS19DSU5DTFVERVMteSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmIzQzOz0tSSQo
QVBQQ09SRU1BUktfQkFTRSkmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgXDxicj4NCiZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAtSSQoQVBQQ09S
RU1BUktfQkFTRSkvbGludXg2NCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBcPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IC1JJChBUFBDT1JFTUFSS19CQVNFKS8u
Li8uLi91bmlrcmFmdC9saWIvbm9saWJjL2luY2x1ZGUvc3lzJm5ic3A7Jm5ic3A7IFw8YnI+DQom
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
LUkvdXNyL2luY2x1ZGU8YnI+DQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIzxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxk
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQiPjxi
cj4NCjxicj4NCkZvbGxvd2luZyBpcyB0aGUgY29tcGlsYXRpb24tcnVuIDo8YnI+DQo8YnI+DQoj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIzxicj4NCmFhamF5QGxhdGl0dWRlLTM0ODA6fi91bmlrcmFmdC9hcHBzL2NvcmVt
YXJrJCBtYWtlPGJyPg0KbWFrZVsxXTogRW50ZXJpbmcgZGlyZWN0b3J5ICcvaG9tZS9hamF5L3Vu
aWtyYWZ0L3VuaWtyYWZ0Jzxicj4NCiZuYnNwOyBDUCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyBjb25maWc8YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
bGlieGVucGxhdDogaHlwZXJ2aXNvci5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IGxpYnhlbnBsYXQ6IG1lbW9yeS5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYnhlbnBsYXQ6IHNldHVwLm88YnI+DQombmJzcDsgQ0Mm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlieGVucGxhdDogdHJhcHMubzxicj4NCiZu
YnNwOyBBUyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJ4ZW5wbGF0OiBlbnRyeTY0
Lm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlieGVucGxh
dDogbW0ubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJ4
ZW5wbGF0OiBhcmNoX2V2ZW50cy5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7IGxpYnhlbnBsYXQ6IGFyY2hfdGltZS5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYnhlbnBsYXQ6IGxjcHUubzxicj4NCiZuYnNwOyBDQyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJ4ZW5wbGF0OiBjb25zb2xlLm88YnI+DQom
bmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlieGVucGxhdDogc2h1dGRv
d24ubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJ4ZW5w
bGF0OiBldmVudHMubzxicj4NCiZuYnNwOyBMRCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyBsaWJ4ZW5wbGF0LmxkLm88YnI+DQombmJzcDsgT0JKQ09QWSBsaWJ4ZW5wbGF0Lm88YnI+DQom
bmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgYXBwY29yZW1hcms6IGNvcmVf
bWFpbi5vPGJyPg0KL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2NvcmVfbWFpbi5j
OiBJbiBmdW5jdGlvbiDigJhtYWlu4oCZOjxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9j
b3JlbWFyay9jb3JlX21haW4uYzoyOTI6MTI6IHdhcm5pbmc6IGZvcm1hdCDigJglbHXigJkgZXhw
ZWN0cyBhcmd1bWVudCBvZiB0eXBlIOKAmGxvbmcgdW5zaWduZWQgaW504oCZLCBidXQgYXJndW1l
bnQgMiBoYXMgdHlwZSDigJh1bnNpZ25lZCBpbnTigJkgWy1XZm9ybWF0PV08YnI+DQombmJzcDsg
ZWVfcHJpbnRmKCZxdW90O0NvcmVNYXJrIFNpemUmbmJzcDsmbmJzcDsmbmJzcDsgOiAlbHVcbiZx
dW90OywoZWVfdTMyKXJlc3VsdHNbMF0uc2l6ZSk7PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IF48YnI+DQovaG9t
ZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvY29yZV9tYWluLmM6MjkzOjEyOiB3YXJuaW5n
OiBmb3JtYXQg4oCYJWx14oCZIGV4cGVjdHMgYXJndW1lbnQgb2YgdHlwZSDigJhsb25nIHVuc2ln
bmVkIGludOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFzIHR5cGUg4oCYdW5zaWduZWQgaW504oCZIFst
V2Zvcm1hdD1dPGJyPg0KJm5ic3A7IGVlX3ByaW50ZigmcXVvdDtUb3RhbCB0aWNrcyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA6ICVsdVxuJnF1b3Q7LChlZV91MzIpdG90YWxfdGltZSk7
PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7IF48YnI+DQovaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsv
Y29yZV9tYWluLmM6MzA4OjEyOiB3YXJuaW5nOiBmb3JtYXQg4oCYJWx14oCZIGV4cGVjdHMgYXJn
dW1lbnQgb2YgdHlwZSDigJhsb25nIHVuc2lnbmVkIGludOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFz
IHR5cGUg4oCYdW5zaWduZWQgaW504oCZIFstV2Zvcm1hdD1dPGJyPg0KJm5ic3A7IGVlX3ByaW50
ZigmcXVvdDtJdGVyYXRpb25zJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IDog
JWx1XG4mcXVvdDssKGVlX3UzMilkZWZhdWx0X251bV9jb250ZXh0cypyZXN1bHRzWzBdLml0ZXJh
dGlvbnMpOzxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBePGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IGFwcGNvcmVtYXJrOiBjb3JlX2xpc3Rfam9pbi5vPGJyPg0KJm5ic3A7IEND
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGFwcGNvcmVtYXJrOiBjb3JlX3V0aWwubzxi
cj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBhcHBjb3JlbWFyazog
Y29yZV9zdGF0ZS5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
IGFwcGNvcmVtYXJrOiBjb3JlX21hdHJpeC5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7IGFwcGNvcmVtYXJrOiBjb3JlX3BvcnRtZS5vPGJyPg0KSW4gZmlsZSBp
bmNsdWRlZCBmcm9tIC91c3IvaW5jbHVkZS9mZWF0dXJlcy5oOjM2NzowLDxicj4NCiZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBmcm9tIC91c3IvaW5jbHVkZS9tYWxsb2Mu
aDoyMiw8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZnJvbSAv
aG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOjE4
Ojxicj4NCi91c3IvaW5jbHVkZS9zeXMvY2RlZnMuaDoyODU6MDogd2FybmluZzogJnF1b3Q7X19u
b25udWxsJnF1b3Q7IHJlZGVmaW5lZDxicj4NCiZuYnNwOyMgZGVmaW5lIF9fbm9ubnVsbChwYXJh
bXMpIF9fYXR0cmlidXRlX18gKChfX25vbm51bGxfXyBwYXJhbXMpKTxicj4NCiZuYnNwO148YnI+
DQpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL2hvbWUvYWpheS91bmlrcmFmdC91bmlrcmFmdC9saWIv
bm9saWJjL2luY2x1ZGUvc3RkaW8uaDo0MTowLDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyBmcm9tIC9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9s
aW51eDY0L2NvcmVfcG9ydG1lLmM6OTo8YnI+DQovaG9tZS9hamF5L3VuaWtyYWZ0L3VuaWtyYWZ0
L2luY2x1ZGUvdWsvZXNzZW50aWFscy5oOjU5OjA6IG5vdGU6IHRoaXMgaXMgdGhlIGxvY2F0aW9u
IG9mIHRoZSBwcmV2aW91cyBkZWZpbml0aW9uPGJyPg0KJm5ic3A7I2RlZmluZSBfX25vbm51bGwm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgX19hdHRyaWJ1dGVfXygobm9ubnVsbCkpPGJyPg0KJm5ic3A7
Xjxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9saW51eDY0L2NvcmVfcG9y
dG1lLmM6IEluIGZ1bmN0aW9uIOKAmHN0YXJ0X3RpbWXigJk6PGJyPg0KL2hvbWUvYWpheS91bmlr
cmFmdC9hcHBzL2NvcmVtYXJrL2xpbnV4NjQvY29yZV9wb3J0bWUuYzo5MzoyNDogd2FybmluZzog
aW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYY2xvY2tfZ2V0dGltZeKAmSBbLVdp
bXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl08YnI+DQombmJzcDsgI2RlZmluZSBHRVRNWVRJ
TUUoX3QpIGNsb2NrX2dldHRpbWUoMCxfdCk8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
Xjxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9saW51eDY0L2NvcmVfcG9y
dG1lLmM6MTE2OjI6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhHRVRNWVRJTUXigJk8
YnI+DQombmJzcDsgR0VUTVlUSU1FKCZhbXA7c3RhcnRfdGltZV92YWwgKTsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsgJm5ic3A7PGJyPg0KJm5ic3A7IF48YnI+DQovaG9tZS9hamF5L3VuaWtyYWZ0
L2FwcHMvY29yZW1hcmsvbGludXg2NC9jb3JlX3BvcnRtZS5jOiBJbiBmdW5jdGlvbiDigJhwb3J0
YWJsZV9pbml04oCZOjxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9saW51
eDY0L2NvcmVfcG9ydG1lLmM6MTcyOjQzOiB3YXJuaW5nOiB1bnVzZWQgcGFyYW1ldGVyIOKAmGFy
Z2PigJkgWy1XdW51c2VkLXBhcmFtZXRlcl08YnI+DQombmJzcDt2b2lkIHBvcnRhYmxlX2luaXQo
Y29yZV9wb3J0YWJsZSAqcCwgaW50ICphcmdjLCBjaGFyICphcmd2W10pPGJyPg0KJm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7IF48YnI+DQovaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsv
bGludXg2NC9jb3JlX3BvcnRtZS5jOjE3Mjo1NTogd2FybmluZzogdW51c2VkIHBhcmFtZXRlciDi
gJhhcmd24oCZIFstV3VudXNlZC1wYXJhbWV0ZXJdPGJyPg0KJm5ic3A7dm9pZCBwb3J0YWJsZV9p
bml0KGNvcmVfcG9ydGFibGUgKnAsIGludCAqYXJnYywgY2hhciAqYXJndltdKTxicj4NCiZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBePGJyPg0KJm5ic3A7IExEJm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGFwcGNvcmVtYXJrLmxkLm88YnI+DQombmJzcDsgT0JK
Q09QWSBhcHBjb3JlbWFyay5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7IGxpYnVrYm9vdDogYm9vdC5vPGJyPg0KJm5ic3A7IExEJm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IGxpYnVrYm9vdC5sZC5vPGJyPg0KJm5ic3A7IE9CSkNPUFkgbGlidWtib290
Lm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlidWtkZWJ1
ZzogcHJpbnQubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBs
aWJ1a2RlYnVnOiBoZXhkdW1wLm88YnI+DQombmJzcDsgTEQmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsgbGlidWtkZWJ1Zy5sZC5vPGJyPg0KJm5ic3A7IE9CSkNPUFkgbGlidWtkZWJ1Zy5v
PGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYnVrYXJncGFy
c2U6IGFyZ3BhcnNlLm88YnI+DQombmJzcDsgTEQmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsgbGlidWthcmdwYXJzZS5sZC5vPGJyPg0KJm5ic3A7IE9CSkNPUFkgbGlidWthcmdwYXJzZS5v
PGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYm5vbGliYzog
ZXJybm8ubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJu
b2xpYmM6IHN0ZGlvLm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsgbGlibm9saWJjOiBjdHlwZS5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7IGxpYm5vbGliYzogc3RkbGliLm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsgbGlibm9saWJjOiBzdHJpbmcubzxicj4NCiZuYnNwOyBDQyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJub2xpYmM6IGdldG9wdC5vPGJyPg0KJm5ic3A7
IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYm5vbGliYzogbWFsbG9jLm88YnI+
DQombmJzcDsgTEQmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGlibm9saWJjLmxkLm88
YnI+DQombmJzcDsgT0JKQ09QWSBsaWJub2xpYmMubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJ1a2FsbG9jOiBhbGxvYy5vPGJyPg0KJm5ic3A7IExEJm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYnVrYWxsb2MubGQubzxicj4NCiZuYnNwOyBP
QkpDT1BZIGxpYnVrYWxsb2Mubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyBsaWJ1a2FsbG9jYmJ1ZGR5OiBiYnVkZHkubzxicj4NCiZuYnNwOyBMRCZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJ1a2FsbG9jYmJ1ZGR5LmxkLm88YnI+DQombmJzcDsg
T0JKQ09QWSBsaWJ1a2FsbG9jYmJ1ZGR5Lm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsgbGliZmR0OiBmZHQubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyBsaWJmZHQ6IGZkdF9hZGRyZXNzZXMubzxicj4NCiZuYnNwOyBDQyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBsaWJmZHQ6IGZkdF9lbXB0eV90cmVlLm88YnI+
DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGliZmR0OiBmZHRfb3Zl
cmxheS5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxpYmZk
dDogZmR0X3JvLm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
bGliZmR0OiBmZHRfcncubzxicj4NCiZuYnNwOyBDQyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyBsaWJmZHQ6IGZkdF9zdHJlcnJvci5vPGJyPg0KJm5ic3A7IENDJm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7IGxpYmZkdDogZmR0X3N3Lm88YnI+DQombmJzcDsgQ0MmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgbGliZmR0OiBmZHRfd2lwLm88YnI+DQombmJzcDsgTEQmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbGliZmR0LmxkLm88YnI+DQombmJzcDsgT0JKQ09Q
WSBsaWJmZHQubzxicj4NCiZuYnNwOyBMRCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBj
b3JlbWFya194ZW4teDg2XzY0LmxkLm88YnI+DQombmJzcDsgT0JKQ09QWSBjb3JlbWFya194ZW4t
eDg2XzY0Lm88YnI+DQombmJzcDsgTEQmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgY29y
ZW1hcmtfeGVuLXg4Nl82NDxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvYXBwcy9jb3JlbWFyay9i
dWlsZC9jb3JlbWFya194ZW4teDg2XzY0Lm86IEluIGZ1bmN0aW9uIGBpdGVyYXRlJzo8YnI+DQpm
ZHRfd2lwLmM6KC50ZXh0JiM0MzsweDU3MTkpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBzY2hl
ZF95aWVsZCc8YnI+DQovaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvYnVpbGQvY29y
ZW1hcmtfeGVuLXg4Nl82NC5vOiBJbiBmdW5jdGlvbiBgc3RhcnRfdGltZSc6PGJyPg0KZmR0X3dp
cC5jOigudGV4dCYjNDM7MHg2ZTJmKTogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgY2xvY2tfZ2V0
dGltZSc8YnI+DQovaG9tZS9hamF5L3VuaWtyYWZ0L2FwcHMvY29yZW1hcmsvYnVpbGQvY29yZW1h
cmtfeGVuLXg4Nl82NC5vOiBJbiBmdW5jdGlvbiBgc3RvcF90aW1lJzo8YnI+DQpmZHRfd2lwLmM6
KC50ZXh0JiM0MzsweDZlNGYpOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBjbG9ja19nZXR0aW1l
Jzxicj4NCi9ob21lL2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQvcGxhdC94ZW4vTGlua2VyLnVrOjIy
OiByZWNpcGUgZm9yIHRhcmdldCAnL2hvbWUvYWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2J1
aWxkL2NvcmVtYXJrX3hlbi14ODZfNjQnIGZhaWxlZDxicj4NCm1ha2VbMl06ICoqKiBbL2hvbWUv
YWpheS91bmlrcmFmdC9hcHBzL2NvcmVtYXJrL2J1aWxkL2NvcmVtYXJrX3hlbi14ODZfNjRdIEVy
cm9yIDE8YnI+DQpNYWtlZmlsZTozMjogcmVjaXBlIGZvciB0YXJnZXQgJ19hbGwnIGZhaWxlZDxi
cj4NCm1ha2VbMV06ICoqKiBbX2FsbF0gRXJyb3IgMjxicj4NCm1ha2VbMV06IExlYXZpbmcgZGly
ZWN0b3J5ICcvaG9tZS9hamF5L3VuaWtyYWZ0L3VuaWtyYWZ0Jzxicj4NCk1ha2VmaWxlOjY6IHJl
Y2lwZSBmb3IgdGFyZ2V0ICdhbGwnIGZhaWxlZDxicj4NCm1ha2U6ICoqKiBbYWxsXSBFcnJvciAy
PGJyPg0KYWpheUBsYXRpdHVkZS0zNDgwOn4vdW5pa3JhZnQvYXBwcy9jb3JlbWFyayQ8YnI+DQoj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIzxiciBzdHlsZT0ibXNvLXNwZWNpYWwtY2hhcmFjdGVyOmxpbmUtYnJlYWsiPg0K
PCFbaWYgIXN1cHBvcnRMaW5lQnJlYWtOZXdMaW5lXT48YnIgc3R5bGU9Im1zby1zcGVjaWFsLWNo
YXJhY3RlcjpsaW5lLWJyZWFrIj4NCjwhW2VuZGlmXT48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+
SSB0cmllZCBsb29raW5nIGZvciBhbnkgZXhhbXBsZXMgb2YgbGlua2FnZSBvZiBPQkpTIGZpbGVz
LCBidXQgbm8gZXhhbXBsZSAoZm9yIE9CSlMpIGlzIHByZXNlbnQgaW4gYW55IG9mIHBsYXQvYXBw
IGZvbGRlci48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+S2luZGx5IGhlbHAgbWUgaW4gZml4aW5n
IHRoaXMuPGJyPg0KPGJyIHN0eWxlPSJtc28tc3BlY2lhbC1jaGFyYWN0ZXI6bGluZS1icmVhayI+
DQo8IVtpZiAhc3VwcG9ydExpbmVCcmVha05ld0xpbmVdPjxiciBzdHlsZT0ibXNvLXNwZWNpYWwt
Y2hhcmFjdGVyOmxpbmUtYnJlYWsiPg0KPCFbZW5kaWZdPjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+
DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+VGhhbmtzIGFuZCBSZWdhcmRzLDxvOnA+PC9v
OnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+QWpheTxvOnA+PC9v
OnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0KPC9kaXY+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48YnI+DQo8YnIgY2xlYXI9ImFsbCIgc3R5bGU9Im1zby1zcGVj
aWFsLWNoYXJhY3RlcjpsaW5lLWJyZWFrIj4NCjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rp
dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGNsYXNzPSJtLTE0MjM3Nzg3NzIzODU3MzEz
MjJob2VuemIiPjxzcGFuIHN0eWxlPSJjb2xvcjojODg4ODg4Ij4tLQ0KPG86cD48L286cD48L3Nw
YW4+PC9zcGFuPjwvcD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0i
Y29sb3I6Izg4ODg4OCI+UmVnYXJkcyw8YnI+DQpBamF5PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0K
PC9kaXY+DQo8L2Rpdj4NCjwvYmxvY2txdW90ZT4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PGJyPg0KPGJyIGNsZWFyPSJhbGwiIHN0eWxlPSJtc28tc3BlY2lhbC1jaGFyYWN0ZXI6bGlu
ZS1icmVhayI+DQo8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBjbGFzcz0iaG9lbnpiIj48c3BhbiBzdHlsZT0iY29sb3I6Izg4ODg4OCI+
LS0gPG86cD48L286cD48L3NwYW4+PC9zcGFuPjwvcD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48c3BhbiBzdHlsZT0iY29sb3I6Izg4ODg4OCI+UmVnYXJkcyw8YnI+DQpBamF5PC9zcGFu
PjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwvYmxvY2txdW90ZT4NCjwvZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PGJyPg0KPGJyIGNsZWFyPSJhbGwiPg0KPGJyPg0KLS0gPG86
cD48L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+UmVnYXJkcyw8YnI+DQpB
amF5PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2
Pg0KSU1QT1JUQU5UIE5PVElDRTogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZW1haWwgYW5kIGFueSBh
dHRhY2htZW50cyBhcmUgY29uZmlkZW50aWFsIGFuZCBtYXkgYWxzbyBiZSBwcml2aWxlZ2VkLiBJ
ZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50LCBwbGVhc2Ugbm90aWZ5IHRoZSBz
ZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRvIG5vdCBkaXNjbG9zZSB0aGUgY29udGVudHMgdG8gYW55
IG90aGVyIHBlcnNvbiwgdXNlIGl0IGZvciBhbnkgcHVycG9zZSwNCiBvciBzdG9yZSBvciBjb3B5
IHRoZSBpbmZvcm1hdGlvbiBpbiBhbnkgbWVkaXVtLiBUaGFuayB5b3UuDQo8L2JvZHk+DQo8L2h0
bWw+DQo=

--_000_DB3PR08MB010710D1E5A6E8A9C2EE49499EB60DB3PR08MB0107eurp_--


--===============7085061954752517313==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============7085061954752517313==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 18 03:16:56 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 03:16:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8daY-0005Md-Ud; Wed, 18 Apr 2018 03:16:54 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ikyy=hh=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f8daY-0005MY-7L
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 03:16:54 +0000
X-Inumbo-ID: ccfb830f-42b6-11e8-9728-bc764e045a96
Received: from mail-lf0-x22d.google.com (unknown [2a00:1450:4010:c07::22d])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id ccfb830f-42b6-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 05:15:53 +0200 (CEST)
Received: by mail-lf0-x22d.google.com with SMTP id x130-v6so408186lff.9
 for <minios-devel@lists.xenproject.org>; Tue, 17 Apr 2018 20:16:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=9OAOQHeDdsUHEw6tt4yJ6hwvAmDQQgbWVkDBMynDm9k=;
 b=rTfcz60j2ZtgrKVp1958+HsR7TFNtRDdTzKtCwaZXkCYWCee5wjr8GuXId9ZVEjxB7
 DlVswjyW2nfACBgxpuWxkiSeaIJd1RoH3imekBaanrBnlz92j0Qr3RvrkXVOGq5H2UVA
 qv4YPJ7IJPM8MXrKousenRLpV6t7wl/8mTk7A8XKktyFikDVgknxLM7f+AmvG/UT4m43
 bcSso0yy7N347gX6bEW3FmArN+K/3xBQxAcVW5mR6UMi2PMned/EVsj/yv8f53lCFcAq
 lXL1sjxXiGOeVZnm//lGjDsIjA2dbcSC3KD5yUpcYPesVY+2uAeW0dxXfcVWpx1tuGnf
 HMYQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=9OAOQHeDdsUHEw6tt4yJ6hwvAmDQQgbWVkDBMynDm9k=;
 b=k7n8l/qUhr85XtdoBdC/gmTpVHZF3XIcTIiu7czp5vvrtsu/B/ViBft7bu1ipJAn56
 nQd2/cIpc+9H+eg0w/wlIFe3c0oZ9+ZlnVwA7Q+C98DJIgUqp1X05EvqBEP6pWUDYsbg
 TqeMlG1rHkgS0/9gST8m2Gm/muBMTVTj3UtTlJdrDuY2SylyO9gIclfA6bx0vg3eVMkD
 qnPL/G8bYtflSzt5gAhvG+/3vxJYZPyC9SHYLA5V4zyWgKGqSyVr9tFOTZPr/i3Zk85a
 +w//pcK/SLxvRHS6cZRDz2qQRTjQjdlLjsHMJw7L1L7YL6CDd824eeDfbA/E3+gEZw7n
 IlJA==
X-Gm-Message-State: ALQs6tANtH5uwVXNSx9A2E4+rpkC7e84SvSKDPqcZxwqYzqJY+FeizRv
 ejrmpBrbwqtoD6PY0UEXqvPuGWtM6QoDcetUb1SFSw==
X-Google-Smtp-Source: AIpwx49cGuiG4hgEcMJPZ5W78rhpl1Nuwlz6QiFsEWNGD602BEbHDaqdrqiOvtXexqFC/C00j73YQ3rIHlss4b2NfnM=
X-Received: by 2002:a19:4847:: with SMTP id v68-v6mr179068lfa.63.1524021410685; 
 Tue, 17 Apr 2018 20:16:50 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:d899:0:0:0:0:0 with HTTP; Tue, 17 Apr 2018 20:16:50
 -0700 (PDT)
In-Reply-To: <DB3PR08MB010710D1E5A6E8A9C2EE49499EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
 <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
 <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
 <CAHP4M8VSHMD5wK1bytCyGThnPyhbDxk0RKJw2DmJToFF+j3p1A@mail.gmail.com>
 <DB3PR08MB010767D001F98AB4539BECF29EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <DB3PR08MB010710D1E5A6E8A9C2EE49499EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Wed, 18 Apr 2018 08:46:50 +0530
Message-ID: <CAHP4M8V17pwNUkma_n5AzNyiTqD1uSwQFEFBx40Sf4hZjPdWzw@mail.gmail.com>
To: Wei Chen <Wei.Chen@arm.com>
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Content-Type: multipart/mixed; boundary="===============1625889950299749203=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============1625889950299749203==
Content-Type: multipart/alternative; boundary="000000000000d06895056a16e233"

--000000000000d06895056a16e233
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi Wei.

Thanks for the help.

Actually, my original query is how to link pre-compiled (static) libraries
in unikraft?


I tried as per the documentation at
http://xenbits.xen.org/gitweb/?p=3Dunikraft/unikraft.git;a=3Dblob;f=3Ddoc/g=
uides/developers-app.rst;h=3D45d9bd5b2bb10b3d04135d66b5162a59d54dc2b6;hb=3D=
HEAD#l163

but the libraries do not resolve linking problems.


Or am I understanding it incorrectly? Can pre-compiled static libraries be
integrated/linked at all in unikraft?



On Wed, Apr 18, 2018 at 7:48 AM, Wei Chen <Wei.Chen@arm.com> wrote:

> But the clock_gettime hasn=E2=80=99t been implemented in nolibc or libtim=
e.
>
> If your application just uses this function to print timestampe, you
>
> can implement a dummy function in your code in this time to pass the
>
> linking.
>
>
>
>


--=20
Regards,
Ajay

--000000000000d06895056a16e233
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div><div><div>Hi Wei.<br><br></div>Thanks for t=
he help.<br><br></div>Actually, my original query is how to link pre-compil=
ed (static) libraries in unikraft?<br><br><br></div>I tried as per the docu=
mentation at <br><a href=3D"http://xenbits.xen.org/gitweb/?p=3Dunikraft/uni=
kraft.git;a=3Dblob;f=3Ddoc/guides/developers-app.rst;h=3D45d9bd5b2bb10b3d04=
135d66b5162a59d54dc2b6;hb=3DHEAD#l163">http://xenbits.xen.org/gitweb/?p=3Du=
nikraft/unikraft.git;a=3Dblob;f=3Ddoc/guides/developers-app.rst;h=3D45d9bd5=
b2bb10b3d04135d66b5162a59d54dc2b6;hb=3DHEAD#l163</a> <br><br></div>but the =
libraries do not resolve linking problems.<br><br><br></div>Or am I underst=
anding it incorrectly? Can pre-compiled static libraries be integrated/link=
ed at all in unikraft?<br><div><div><div><div><div><br><br><div><div><div><=
div class=3D"gmail_extra"><br><div class=3D"gmail_quote">On Wed, Apr 18, 20=
18 at 7:48 AM, Wei Chen <span dir=3D"ltr">&lt;<a href=3D"mailto:Wei.Chen@ar=
m.com" target=3D"_blank">Wei.Chen@arm.com</a>&gt;</span> wrote:<br><blockqu=
ote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px=
 solid rgb(204,204,204);padding-left:1ex">







<div lang=3D"EN-US">
<div class=3D"gmail-m_301765866655964138WordSection1">
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">But the
<span class=3D"gmail-m_301765866655964138SpellE">clock_gettime</span> hasn=
=E2=80=99t been implemented in <span class=3D"gmail-m_301765866655964138Spe=
llE">
nolibc</span> or <span class=3D"gmail-m_301765866655964138SpellE">libtime</=
span>.<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">If your applica=
tion just uses this function to print
<span class=3D"gmail-m_301765866655964138SpellE">timestampe</span>, you<u><=
/u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">can implement a=
 dummy function in your code in this time to pass the<u></u><u></u></span><=
/p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">linking.<u></u>=
<u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p></div><br></div>

</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature">Regards,<br>Ajay<br></div>
</div></div></div></div></div></div></div></div></div></div>

--000000000000d06895056a16e233--


--===============1625889950299749203==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============1625889950299749203==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 18 03:32:14 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 03:32:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8dpN-0006Zj-3F; Wed, 18 Apr 2018 03:32:13 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=maay=hh=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f8dpM-0006Ze-Bx
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 03:32:12 +0000
X-Inumbo-ID: f009a7a2-42b8-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::607])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id f009a7a2-42b8-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 05:31:10 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=awIqfN1YAE3ZiJeaCm9yOgV/kJS8SbpiWVCySMDxUP8=;
 b=arNemNYNa+pp7kDZ80nFID+S6iuzNH3eHxmezCyRtmfPLh443fvNmAEIbiUaHzXEpEOUwc1UpfDdbEcX51TKmf+oEIw2pL2zmoxdxowYNx26HFyXPmNU+7ocRQri1kQFTHC2S36iF1hqUFm8sB3KDHGRsRtW1I3FzUJywbsVxc4=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0043.eurprd08.prod.outlook.com (10.161.57.21) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.675.14; Wed, 18 Apr 2018 03:32:00 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0675.014; Wed, 18 Apr
 2018 03:31:59 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Ajay Garg <ajaygargnsit@gmail.com>
Thread-Topic: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
Thread-Index: AQHT06QTkh7b+gLJn0aR3f9tdvMCnKQANaYAgAGgVYCAA+fVgIAAC/rAgAACKrCAABQlAIAAAVgw
Date: Wed, 18 Apr 2018 03:31:59 +0000
Message-ID: <DB3PR08MB010772BBCBCC07EF035C65149EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
 <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
 <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
 <CAHP4M8VSHMD5wK1bytCyGThnPyhbDxk0RKJw2DmJToFF+j3p1A@mail.gmail.com>
 <DB3PR08MB010767D001F98AB4539BECF29EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <DB3PR08MB010710D1E5A6E8A9C2EE49499EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <CAHP4M8V17pwNUkma_n5AzNyiTqD1uSwQFEFBx40Sf4hZjPdWzw@mail.gmail.com>
In-Reply-To: <CAHP4M8V17pwNUkma_n5AzNyiTqD1uSwQFEFBx40Sf4hZjPdWzw@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0043;
 7:yqwWR/I3YH2Kddl/wpMQN6tPJSbPerQaYHoQada/rnlWheRFZgrhkm8VSsTE1Xgb2yD31pfFZnSB2DzEWSP7r4fF4zSfSiU2o+QSnT80F8Xntu7EgDGxbxszVrTPtMKPTyOVgeq0H16EWoGaEzezjfBkks0UiN1phgU08r37cnO1Gs3WENSOfAT4YIzaRS3kaL57bIu44qW2oSzIh4g1xttyuzGb/SsuzT8YKd231xD1KmQHdo9pJKlkTe0jrGEj
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0043; 
x-ms-traffictypediagnostic: DB3PR08MB0043:
x-microsoft-antispam-prvs: <DB3PR08MB004383B61515A377B5EBB0069EB60@DB3PR08MB0043.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(28532068793085)(180628864354917)(85827821059158)(58134797142442)(21748063052155);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(3002001)(3231232)(944501327)(52105095)(10201501046)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0043; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0043; 
x-forefront-prvs: 06469BCC91
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(346002)(366004)(39860400002)(376002)(396003)(39380400002)(40434004)(51914003)(478600001)(33656002)(55016002)(3660700001)(2906002)(3280700002)(186003)(966005)(25786009)(26005)(14454004)(5660300001)(9326002)(229853002)(72206003)(446003)(7736002)(8936002)(4326008)(8676002)(5250100002)(39060400002)(74316002)(5890100001)(66066001)(81166006)(55236004)(76176011)(86362001)(53946003)(1411001)(93886005)(6436002)(2900100001)(6916009)(476003)(53936002)(102836004)(9686003)(6116002)(316002)(99286004)(6246003)(54896002)(59450400001)(236005)(790700001)(6506007)(11346002)(7696005)(3846002)(53546011)(606006)(6306002)(579004);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0043;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 MLV:ovrnspm; PTR:InfoNoRecords; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: sf9rgLhjhfNznjIkZwwR7bt2cmhW0s1W5vj0JYLC4WZeZS7i0a8LKu5YkCEKmQ8A0VuVSfZ7qL02jQ24fPTsCDzl/O1zJZYxW94mlGku9sZFtzAolkc0bwmJI2sLTDNuL5M1UCgHBQmKl0aUvWDVBDabbp5c/1ICKLtbbR25zs+rECiVyLTlqrpRrfugr4uM
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-MS-Office365-Filtering-Correlation-Id: bbc675e4-8356-458d-fad2-08d5a4dcf1b0
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bbc675e4-8356-458d-fad2-08d5a4dcf1b0
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Apr 2018 03:31:59.6836 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0043
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Content-Type: multipart/mixed; boundary="===============4679541838953928427=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============4679541838953928427==
Content-Language: en-US
Content-Type: multipart/alternative;
	boundary="_000_DB3PR08MB010772BBCBCC07EF035C65149EB60DB3PR08MB0107eurp_"

--_000_DB3PR08MB010772BBCBCC07EF035C65149EB60DB3PR08MB0107eurp_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGkgQWpheSwNCg0KSSB0aGluayB3ZSBoYXZlIHRvIGNsYXNzaWZ5IHRoZSBzdGF0aWMtcHJlLWNv
bXBpbGVkIGxpYnJhcmllcy4NCkZvciBpbnN0YW5jZSwgaWYgdGhlIHN0YXRpYy1wcmUtY29tcGls
ZWQgbGlicmFyeSBpcyBhIG1hdGggbGlicmFyeS4NCkl0IGp1c3QgZG9lcyBzb21lIE1hdGhlbWF0
aWNhbCBDb21wdXRpbmcgYW5kIGRvZXNu4oCZdCBkZXBlbmQgb24NCk90aGVyIGxpYnJhcmllcy4g
SSB0aGluayB0aGlzIG1hdGggbGlicmFyeSBjYW4gYmUgbGluayB0bw0KVW5pa3JhZnQuIEFub3Ro
ZXIgaW5zdGFuY2UsIGlmIHRoZSBzdGF0aWMtcHJlLWNvbXBpbGVkIGxpYnJhcnkNCmRlcGVuZHMg
b24gb3RoZXIgbGlicmFyaWVzLiBZb3UgaGF2ZSB0byBndWFyYW50ZWUgdGhlIGRlcGVuZGVudA0K
bGlicmFyaWVzIGFyZSBpbiB0aGUgVW5pa3JhZnQgbGlicmFyeSBwb29sLg0KDQpJbiB5b3VyIGNh
c2UsIHRoZSAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2xpYnJ0LmEgYW5kIC91c3IvbGliL3g4
Nl82NC1saW51eC1nbnUvbGlicHRocmVhZC5hDQp3b3VsZCBsaW5rIHRvIGxpYmMuYSB0byBzb2x2
ZSB0aGVpciBsaW5rIGRlcGVuZGVuY2llcy4gQnV0IHRoZSBub2xpYmMNCkluIFVuaWtyYWZ0IGlz
IGp1c3QgYSBzdWJzZXQgb2YgbGliYy5hDQoNClJlZ2FyZHMsDQpXZWkgQ2hlbg0KDQpGcm9tOiBB
amF5IEdhcmcgPGFqYXlnYXJnbnNpdEBnbWFpbC5jb20+DQpTZW50OiAyMDE45bm0NOaciDE45pel
IDExOjE3DQpUbzogV2VpIENoZW4gPFdlaS5DaGVuQGFybS5jb20+DQpDYzogbWluaW9zLWRldmVs
QGxpc3RzLnhlbnByb2plY3Qub3JnDQpTdWJqZWN0OiBSZTogW01pbmlvcy1kZXZlbF0gW1VuaWty
YWZ0XSBTdGF0aWMgTGlicmFyaWVzIG5vdCBiZWluZyBsaW5rZWQgcHJvcGVybHkNCg0KSGkgV2Vp
Lg0KVGhhbmtzIGZvciB0aGUgaGVscC4NCkFjdHVhbGx5LCBteSBvcmlnaW5hbCBxdWVyeSBpcyBo
b3cgdG8gbGluayBwcmUtY29tcGlsZWQgKHN0YXRpYykgbGlicmFyaWVzIGluIHVuaWtyYWZ0Pw0K
DQpJIHRyaWVkIGFzIHBlciB0aGUgZG9jdW1lbnRhdGlvbiBhdA0KaHR0cDovL3hlbmJpdHMueGVu
Lm9yZy9naXR3ZWIvP3A9dW5pa3JhZnQvdW5pa3JhZnQuZ2l0O2E9YmxvYjtmPWRvYy9ndWlkZXMv
ZGV2ZWxvcGVycy1hcHAucnN0O2g9NDVkOWJkNWIyYmIxMGIzZDA0MTM1ZDY2YjUxNjJhNTlkNTRk
YzJiNjtoYj1IRUFEI2wxNjMNCmJ1dCB0aGUgbGlicmFyaWVzIGRvIG5vdCByZXNvbHZlIGxpbmtp
bmcgcHJvYmxlbXMuDQoNCk9yIGFtIEkgdW5kZXJzdGFuZGluZyBpdCBpbmNvcnJlY3RseT8gQ2Fu
IHByZS1jb21waWxlZCBzdGF0aWMgbGlicmFyaWVzIGJlIGludGVncmF0ZWQvbGlua2VkIGF0IGFs
bCBpbiB1bmlrcmFmdD8NCg0KDQpPbiBXZWQsIEFwciAxOCwgMjAxOCBhdCA3OjQ4IEFNLCBXZWkg
Q2hlbiA8V2VpLkNoZW5AYXJtLmNvbTxtYWlsdG86V2VpLkNoZW5AYXJtLmNvbT4+IHdyb3RlOg0K
QnV0IHRoZSBjbG9ja19nZXR0aW1lIGhhc27igJl0IGJlZW4gaW1wbGVtZW50ZWQgaW4gbm9saWJj
IG9yIGxpYnRpbWUuDQpJZiB5b3VyIGFwcGxpY2F0aW9uIGp1c3QgdXNlcyB0aGlzIGZ1bmN0aW9u
IHRvIHByaW50IHRpbWVzdGFtcGUsIHlvdQ0KY2FuIGltcGxlbWVudCBhIGR1bW15IGZ1bmN0aW9u
IGluIHlvdXIgY29kZSBpbiB0aGlzIHRpbWUgdG8gcGFzcyB0aGUNCmxpbmtpbmcuDQoNCg0KDQoN
Cg0KLS0NClJlZ2FyZHMsDQpBamF5DQpJTVBPUlRBTlQgTk9USUNFOiBUaGUgY29udGVudHMgb2Yg
dGhpcyBlbWFpbCBhbmQgYW55IGF0dGFjaG1lbnRzIGFyZSBjb25maWRlbnRpYWwgYW5kIG1heSBh
bHNvIGJlIHByaXZpbGVnZWQuIElmIHlvdSBhcmUgbm90IHRoZSBpbnRlbmRlZCByZWNpcGllbnQs
IHBsZWFzZSBub3RpZnkgdGhlIHNlbmRlciBpbW1lZGlhdGVseSBhbmQgZG8gbm90IGRpc2Nsb3Nl
IHRoZSBjb250ZW50cyB0byBhbnkgb3RoZXIgcGVyc29uLCB1c2UgaXQgZm9yIGFueSBwdXJwb3Nl
LCBvciBzdG9yZSBvciBjb3B5IHRoZSBpbmZvcm1hdGlvbiBpbiBhbnkgbWVkaXVtLiBUaGFuayB5
b3UuDQo=

--_000_DB3PR08MB010772BBCBCC07EF035C65149EB60DB3PR08MB0107eurp_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IlByb2dJZCIg
Y29udGVudD0iV29yZC5Eb2N1bWVudCI+DQo8bWV0YSBuYW1lPSJHZW5lcmF0b3IiIGNvbnRlbnQ9
Ik1pY3Jvc29mdCBXb3JkIDE1Ij4NCjxtZXRhIG5hbWU9Ik9yaWdpbmF0b3IiIGNvbnRlbnQ9Ik1p
Y3Jvc29mdCBXb3JkIDE1Ij4NCjxsaW5rIHJlbD0iRmlsZS1MaXN0IiBocmVmPSJjaWQ6ZmlsZWxp
c3QueG1sQDAxRDNENzA4LkRCNzIyRjAwIj48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOk9m
ZmljZURvY3VtZW50U2V0dGluZ3M+DQo8bzpBbGxvd1BORy8+DQo8L286T2ZmaWNlRG9jdW1lbnRT
ZXR0aW5ncz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPHc6
V29yZERvY3VtZW50Pg0KPHc6U3BlbGxpbmdTdGF0ZT5DbGVhbjwvdzpTcGVsbGluZ1N0YXRlPg0K
PHc6RG9jdW1lbnRLaW5kPkRvY3VtZW50RW1haWw8L3c6RG9jdW1lbnRLaW5kPg0KPHc6VHJhY2tN
b3Zlcy8+DQo8dzpUcmFja0Zvcm1hdHRpbmcvPg0KPHc6RW52ZWxvcGVWaXMvPg0KPHc6VmFsaWRh
dGVBZ2FpbnN0U2NoZW1hcy8+DQo8dzpTYXZlSWZYTUxJbnZhbGlkPmZhbHNlPC93OlNhdmVJZlhN
TEludmFsaWQ+DQo8dzpJZ25vcmVNaXhlZENvbnRlbnQ+ZmFsc2U8L3c6SWdub3JlTWl4ZWRDb250
ZW50Pg0KPHc6QWx3YXlzU2hvd1BsYWNlaG9sZGVyVGV4dD5mYWxzZTwvdzpBbHdheXNTaG93UGxh
Y2Vob2xkZXJUZXh0Pg0KPHc6RG9Ob3RQcm9tb3RlUUYvPg0KPHc6TGlkVGhlbWVPdGhlcj5FTi1V
UzwvdzpMaWRUaGVtZU90aGVyPg0KPHc6TGlkVGhlbWVBc2lhbj5aSC1DTjwvdzpMaWRUaGVtZUFz
aWFuPg0KPHc6TGlkVGhlbWVDb21wbGV4U2NyaXB0PlgtTk9ORTwvdzpMaWRUaGVtZUNvbXBsZXhT
Y3JpcHQ+DQo8dzpDb21wYXRpYmlsaXR5Pg0KPHc6RG9Ob3RFeHBhbmRTaGlmdFJldHVybi8+DQo8
dzpCcmVha1dyYXBwZWRUYWJsZXMvPg0KPHc6U3BsaXRQZ0JyZWFrQW5kUGFyYU1hcmsvPg0KPHc6
RW5hYmxlT3BlblR5cGVLZXJuaW5nLz4NCjx3OlVzZUZFTGF5b3V0Lz4NCjwvdzpDb21wYXRpYmls
aXR5Pg0KPG06bWF0aFByPg0KPG06bWF0aEZvbnQgbTp2YWw9IkNhbWJyaWEgTWF0aCIvPg0KPG06
YnJrQmluIG06dmFsPSJiZWZvcmUiLz4NCjxtOmJya0JpblN1YiBtOnZhbD0iJiM0NTstIi8+DQo8
bTpzbWFsbEZyYWMgbTp2YWw9Im9mZiIvPg0KPG06ZGlzcERlZi8+DQo8bTpsTWFyZ2luIG06dmFs
PSIwIi8+DQo8bTpyTWFyZ2luIG06dmFsPSIwIi8+DQo8bTpkZWZKYyBtOnZhbD0iY2VudGVyR3Jv
dXAiLz4NCjxtOndyYXBJbmRlbnQgbTp2YWw9IjE0NDAiLz4NCjxtOmludExpbSBtOnZhbD0ic3Vi
U3VwIi8+DQo8bTpuYXJ5TGltIG06dmFsPSJ1bmRPdnIiLz4NCjwvbTptYXRoUHI+PC93OldvcmRE
b2N1bWVudD4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPHc6
TGF0ZW50U3R5bGVzIERlZkxvY2tlZFN0YXRlPSJmYWxzZSIgRGVmVW5oaWRlV2hlblVzZWQ9ImZh
bHNlIiBEZWZTZW1pSGlkZGVuPSJmYWxzZSIgRGVmUUZvcm1hdD0iZmFsc2UiIERlZlByaW9yaXR5
PSI5OSIgTGF0ZW50U3R5bGVDb3VudD0iMzc1Ij4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iMCIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iTm9ybWFsIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFFGb3JtYXQ9InRydWUiIE5hbWU9
ImhlYWRpbmcgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIg
TmFtZT0iaGVhZGluZyAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0
cnVlIiBOYW1lPSJoZWFkaW5nIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIFFGb3Jt
YXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
UUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0
cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgNyIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA4Ii8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDkiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iaW5kZXggMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCAy
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0i
aW5kZXggNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRy
dWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCA1Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUi
IE5hbWU9ImluZGV4IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iaW5kZXggNyIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJpbmRleCA4Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IDkiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2MgMSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9InRvYyAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0idG9jIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iMzkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2Mg
NCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9InRvYyA1Ii8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idG9jIDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJ0b2MgNyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSIzOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9
InRvYyA4Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBT
ZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idG9jIDkiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iTm9ybWFsIEluZGVudCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJm
b290bm90ZSB0ZXh0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRl
bj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImFubm90YXRpb24gdGV4dCIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBOYW1lPSJoZWFkZXIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iZm9vdGVy
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IGhlYWRpbmciLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzUiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJjYXB0aW9uIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9InRhYmxlIG9mIGZpZ3VyZXMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iZW52ZWxv
cGUgYWRkcmVzcyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJlbnZlbG9wZSByZXR1cm4iLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iZm9vdG5vdGUgcmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9ImFubm90YXRpb24gcmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImxpbmUgbnVt
YmVyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIg
VW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9InBhZ2UgbnVtYmVyIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUi
IE5hbWU9ImVuZG5vdGUgcmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImVuZG5vdGUg
dGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0YWJsZSBvZiBhdXRob3JpdGllcyIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5V
c2VkPSJ0cnVlIiBOYW1lPSJtYWNybyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2EgaGVhZGlu
ZyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxp
c3QgQnVsbGV0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgTnVtYmVyIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9Ikxpc3QgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IDMiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IEJ1bGxldCAyIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ikxpc3QgQnVsbGV0IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBCdWxsZXQgNCIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IEJ1bGxldCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ikxpc3QgTnVtYmVyIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBOdW1iZXIgMyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IE51bWJlciA0Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ikxpc3QgTnVtYmVyIDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iMTAiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlRpdGxlIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9IkNsb3NpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVu
PSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iU2lnbmF0dXJlIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjEiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJEZWZhdWx0IFBhcmFncmFwaCBGb250Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRl
eHQgSW5kZW50Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgQ29udGludWUiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgTmFtZT0iTGlzdCBDb250aW51ZSAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxp
c3QgQ29udGludWUgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IENvbnRpbnVlIDQiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBDb250aW51ZSA1Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ik1lc3NhZ2UgSGVhZGVyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjExIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJTdWJ0aXRsZSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJTYWx1dGF0aW9uIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkRhdGUiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgTmFtZT0iQm9keSBUZXh0IEZpcnN0IEluZGVudCIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBO
YW1lPSJCb2R5IFRleHQgRmlyc3QgSW5kZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTm90
ZSBIZWFkaW5nIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4dCAyIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9IkJvZHkgVGV4dCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4
dCBJbmRlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRleHQgSW5kZW50IDMiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iQmxvY2sgVGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJI
eXBlcmxpbmsiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iRm9sbG93ZWRIeXBlcmxpbmsiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjIiIFFGb3JtYXQ9InRydWUi
IE5hbWU9IlN0cm9uZyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSIyMCIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iRW1waGFzaXMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFt
ZT0iRG9jdW1lbnQgTWFwIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlBsYWluIFRleHQiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iRS1tYWlsIFNpZ25hdHVyZSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJIVE1MIFRvcCBvZiBGb3JtIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkhUTUwgQm90dG9tIG9m
IEZvcm0iLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTm9ybWFsIChXZWIpIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9IkhUTUwgQWNyb255bSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIEFkZHJl
c3MiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBDaXRlIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9IkhUTUwgQ29kZSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIERlZmluaXRpb24iLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBLZXlib2FyZCIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJIVE1MIFByZWZvcm1hdHRlZCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIFNhbXBsZSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIFR5cGV3cml0ZXIiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iSFRNTCBWYXJpYWJsZSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJOb3JtYWwgVGFibGUi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhp
ZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iYW5ub3RhdGlvbiBzdWJqZWN0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9Ik5vIExpc3QiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iT3V0bGluZSBMaXN0IDEi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhp
ZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iT3V0bGluZSBMaXN0IDIiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iT3V0bGluZSBMaXN0IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBT
ZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgU2ltcGxl
IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgU2ltcGxlIDIiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0iVGFibGUgU2ltcGxlIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ2xh
c3NpYyAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1
ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENsYXNzaWMgMiIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJUYWJsZSBDbGFzc2ljIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFi
bGUgQ2xhc3NpYyA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRl
bj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENvbG9yZnVsIDEiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ29sb3JmdWwgMiIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBO
YW1lPSJUYWJsZSBDb2xvcmZ1bCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENvbHVt
bnMgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBDb2x1bW5zIDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgQ29sdW1ucyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxl
IENvbHVtbnMgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBDb2x1bW5zIDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRh
YmxlIEdyaWQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBHcmlkIDMiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxl
IEdyaWQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRy
dWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBHcmlkIDYiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCA3Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIEdy
aWQgOCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0IDEiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0iVGFibGUgTGlzdCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIExpc3Qg
MyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0IDQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iVGFibGUgTGlzdCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIExpc3QgNiIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0IDciLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFt
ZT0iVGFibGUgTGlzdCA4Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIDNEIGVmZmVjdHMg
MSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSAzRCBlZmZlY3RzIDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgM0QgZWZmZWN0cyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRh
YmxlIENvbnRlbXBvcmFyeSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlI
aWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBFbGVnYW50Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIFByb2Zlc3Npb25hbCIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJUYWJsZSBTdWJ0bGUgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBTdWJ0
bGUgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBXZWIgMSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJUYWJsZSBXZWIgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBXZWIgMyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCYWxsb29uIFRleHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9IlRhYmxlIEdyaWQiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgVGhlbWUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBOYW1lPSJQbGFjZWhvbGRlciBUZXh0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjEiIFFGb3JtYXQ9InRydWUiIE5hbWU9Ik5v
IFNwYWNpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAi
IE5hbWU9IkxpZ2h0IFNoYWRpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iNjEiIE5hbWU9IkxpZ2h0IExpc3QiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdyaWQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIE5hbWU9Ik1lZGl1
bSBTaGFkaW5nIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjUiIE5hbWU9Ik1lZGl1bSBMaXN0IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iNjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIE5hbWU9Ik1lZGl1bSBHcmlkIDEiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1bSBHcmlk
IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIE5hbWU9
Ik1lZGl1bSBHcmlkIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI3MSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgTmFtZT0iQ29sb3JmdWwgTGlzdCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwg
R3JpZCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgTmFt
ZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI2MSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgMSIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBBY2Nl
bnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgTmFt
ZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI2NCIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgMSIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVkaXVt
IExpc3QgMSBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlI
aWRkZW49InRydWUiIE5hbWU9IlJldmlzaW9uIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjM0IiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJMaXN0IFBhcmFncmFwaCIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIyOSIgUUZvcm1hdD0i
dHJ1ZSIgTmFtZT0iUXVvdGUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iMzAiIFFGb3JtYXQ9InRydWUiIE5hbWU9IkludGVuc2UgUXVvdGUiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIg
QWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjci
IE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDEiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIE5hbWU9Ik1lZGl1bSBH
cmlkIDMgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgMSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgTmFtZT0iQ29s
b3JmdWwgTGlzdCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgTmFtZT0iTGlnaHQgU2hhZGluZyBBY2Nl
bnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgTmFt
ZT0iTGlnaHQgTGlzdCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBB
Y2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIg
TmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVkaXVtIExpc3QgMSBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgTmFtZT0iTWVkaXVt
IExpc3QgMiBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI2NyIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQg
MiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgTmFtZT0i
TWVkaXVtIEdyaWQgMyBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI3MCIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFj
Y2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBO
YW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjczIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCAyIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYwIiBOYW1lPSJMaWdodCBTaGFk
aW5nIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjYxIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBOYW1lPSJMaWdodCBHcmlkIEFjY2VudCAzIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBOYW1lPSJNZWRpdW0gU2hh
ZGluZyAxIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjY0IiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBOYW1lPSJNZWRpdW0gTGlzdCAxIEFjY2Vu
dCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBOYW1l
PSJNZWRpdW0gTGlzdCAyIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjY3IiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCAzIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBOYW1lPSJNZWRpdW0gR3JpZCAy
IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5
IiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDMiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIE5hbWU9IkNvbG9yZnVsIFNo
YWRpbmcgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzIiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDMi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIE5hbWU9Ikxp
Z2h0IFNoYWRpbmcgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iNjEiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDQi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIE5hbWU9Ik1l
ZGl1bSBTaGFkaW5nIDEgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iNjQiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDQiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIE5hbWU9Ik1lZGl1bSBMaXN0
IDEgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDQiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1
bSBHcmlkIDIgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNjkiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgNCIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgTmFtZT0iQ29s
b3JmdWwgU2hhZGluZyBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI3MiIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgNCIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwgR3JpZCBB
Y2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIg
TmFtZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI2MSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBB
Y2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIg
TmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVk
aXVtIExpc3QgMSBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI2NiIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2Nl
bnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgTmFt
ZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI2OSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgTmFtZT0iRGFyayBMaXN0IEFj
Y2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBO
YW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCA1Ii8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBOYW1lPSJDb2xvcmZ1
bCBHcmlkIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjYwIiBOYW1lPSJMaWdodCBTaGFkaW5nIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYxIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCA2Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBOYW1lPSJMaWdo
dCBHcmlkIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjYzIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAxIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY0IiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFj
Y2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBO
YW1lPSJNZWRpdW0gTGlzdCAxIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjY2IiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCA2Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBOYW1lPSJNZWRpdW0gR3Jp
ZCAxIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjY4IiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCA2Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBOYW1lPSJEYXJr
IExpc3QgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzEiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50
IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIE5hbWU9
IkNvbG9yZnVsIEdyaWQgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iMTkiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlN1YnRsZSBFbXBoYXNpcyIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIyMSIgUUZvcm1hdD0idHJ1
ZSIgTmFtZT0iSW50ZW5zZSBFbXBoYXNpcyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSIzMSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iU3VidGxlIFJlZmVyZW5jZSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzMiIgUUZvcm1hdD0i
dHJ1ZSIgTmFtZT0iSW50ZW5zZSBSZWZlcmVuY2UiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iMzMiIFFGb3JtYXQ9InRydWUiIE5hbWU9IkJvb2sgVGl0bGUiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzciIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCaWJsaW9ncmFwaHkiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJUT0MgSGVhZGluZyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0MSIgTmFtZT0iUGxh
aW4gVGFibGUgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0
MiIgTmFtZT0iUGxhaW4gVGFibGUgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI0MyIgTmFtZT0iUGxhaW4gVGFibGUgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NCIgTmFtZT0iUGxhaW4gVGFibGUgNCIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NSIgTmFtZT0iUGxhaW4gVGFibGUg
NSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0MCIgTmFtZT0i
R3JpZCBUYWJsZSBMaWdodCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI0NiIgTmFtZT0iR3JpZCBUYWJsZSAxIExpZ2h0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFibGUgMyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iR3Jp
ZCBUYWJsZSA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUw
IiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iR3JpZCBUYWJsZSA2IENvbG9yZnVsIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcg
Q29sb3JmdWwiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYi
IE5hbWU9IkdyaWQgVGFibGUgMSBMaWdodCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIEFjY2VudCAxIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlk
IFRhYmxlIDMgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNDkiIE5hbWU9IkdyaWQgVGFibGUgNCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsgQWNj
ZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5h
bWU9IkdyaWQgVGFibGUgNiBDb2xvcmZ1bCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJsZSA3IENvbG9yZnVsIEFj
Y2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBO
YW1lPSJHcmlkIFRhYmxlIDEgTGlnaHQgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDciIE5hbWU9IkdyaWQgVGFibGUgMiBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iR3JpZCBU
YWJsZSAzIEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjQ5IiBOYW1lPSJHcmlkIFRhYmxlIDQgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9IkdyaWQgVGFibGUgNSBEYXJrIEFjY2Vu
dCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1l
PSJHcmlkIFRhYmxlIDYgQ29sb3JmdWwgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9IkdyaWQgVGFibGUgNyBDb2xvcmZ1bCBBY2Nl
bnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFt
ZT0iR3JpZCBUYWJsZSAxIExpZ2h0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIgQWNjZW50IDMiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFi
bGUgMyBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI0OSIgTmFtZT0iR3JpZCBUYWJsZSA0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUwIiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayBBY2NlbnQg
MyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0i
R3JpZCBUYWJsZSA2IENvbG9yZnVsIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50
IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9
IkdyaWQgVGFibGUgMSBMaWdodCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIEFjY2VudCA0Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlkIFRhYmxl
IDMgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NDkiIE5hbWU9IkdyaWQgVGFibGUgNCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsgQWNjZW50IDQi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikdy
aWQgVGFibGUgNiBDb2xvcmZ1bCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCA0
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJH
cmlkIFRhYmxlIDEgTGlnaHQgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNDciIE5hbWU9IkdyaWQgVGFibGUgMiBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iR3JpZCBUYWJsZSAz
IEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5
IiBOYW1lPSJHcmlkIFRhYmxlIDQgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9IkdyaWQgVGFibGUgNSBEYXJrIEFjY2VudCA1Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJHcmlk
IFRhYmxlIDYgQ29sb3JmdWwgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9IkdyaWQgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iR3Jp
ZCBUYWJsZSAxIExpZ2h0IEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIgQWNjZW50IDYiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFibGUgMyBB
Y2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIg
TmFtZT0iR3JpZCBUYWJsZSA0IEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjUwIiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayBBY2NlbnQgNiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iR3JpZCBU
YWJsZSA2IENvbG9yZnVsIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDYiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3Qg
VGFibGUgMSBMaWdodCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI0NyIgTmFtZT0iTGlzdCBUYWJsZSAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFibGUgNCIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iTGlzdCBUYWJsZSA1
IERhcmsiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5h
bWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1bCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJMaXN0IFRhYmxlIDEg
TGlnaHQgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNDciIE5hbWU9Ikxpc3QgVGFibGUgMiBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIEFjY2VudCAxIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0
IFRhYmxlIDQgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNTAiIE5hbWU9Ikxpc3QgVGFibGUgNSBEYXJrIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29s
b3JmdWwgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNTIiIE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgMSIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iTGlzdCBUYWJsZSAxIExp
Z2h0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjQ3IiBOYW1lPSJMaXN0IFRhYmxlIDIgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikxpc3QgVGFibGUgMyBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iTGlzdCBU
YWJsZSA0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjUwIiBOYW1lPSJMaXN0IFRhYmxlIDUgRGFyayBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iTGlzdCBUYWJsZSA2IENvbG9y
ZnVsIEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjUyIiBOYW1lPSJMaXN0IFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3QgVGFibGUgMSBMaWdo
dCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0
NyIgTmFtZT0iTGlzdCBUYWJsZSAyIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMgQWNjZW50IDMiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFi
bGUgNCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI1MCIgTmFtZT0iTGlzdCBUYWJsZSA1IERhcmsgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1
bCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1
MiIgTmFtZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJMaXN0IFRhYmxlIDEgTGlnaHQg
QWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDci
IE5hbWU9Ikxpc3QgVGFibGUgMiBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIEFjY2VudCA0Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0IFRhYmxl
IDQgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NTAiIE5hbWU9Ikxpc3QgVGFibGUgNSBEYXJrIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29sb3JmdWwg
QWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIi
IE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iTGlzdCBUYWJsZSAxIExpZ2h0IEFj
Y2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBO
YW1lPSJMaXN0IFRhYmxlIDIgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikxpc3QgVGFibGUgMyBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iTGlzdCBUYWJsZSA0
IEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUw
IiBOYW1lPSJMaXN0IFRhYmxlIDUgRGFyayBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iTGlzdCBUYWJsZSA2IENvbG9yZnVsIEFj
Y2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBO
YW1lPSJMaXN0IFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3QgVGFibGUgMSBMaWdodCBBY2Nl
bnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFt
ZT0iTGlzdCBUYWJsZSAyIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMgQWNjZW50IDYiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFibGUgNCBB
Y2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIg
TmFtZT0iTGlzdCBUYWJsZSA1IERhcmsgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1bCBBY2Nl
bnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFt
ZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9
Ik1lbnRpb24iLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iU21hcnQgSHlwZXJsaW5rIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9Ikhhc2h0YWciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVW5yZXNvbHZl
ZCBNZW50aW9uIi8+DQo8L3c6TGF0ZW50U3R5bGVzPg0KPC94bWw+PCFbZW5kaWZdLS0+PHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDsNCgltc28tZm9u
dC1jaGFyc2V0OjA7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6cm9tYW47DQoJbXNvLWZvbnQt
cGl0Y2g6dmFyaWFibGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi01MzY4NzAxNDUgMTEwNzMwNTcy
NyAwIDAgNDE1IDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpEZW5nWGlhbjsNCglwYW5v
c2UtMToyIDEgNiAwIDMgMSAxIDEgMSAxOw0KCW1zby1mb250LWFsdDrnrYnnur87DQoJbXNvLWZv
bnQtY2hhcnNldDoxMzQ7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6YXV0bzsNCgltc28tZm9u
dC1waXRjaDp2YXJpYWJsZTsNCgltc28tZm9udC1zaWduYXR1cmU6LTE2MTA2MTIwMzMgOTUzMTIy
MDQyIDIyIDAgMjYyMTU5IDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpDYWxpYnJpOw0K
CXBhbm9zZS0xOjIgMTUgNSAyIDIgMiA0IDMgMiA0Ow0KCW1zby1mb250LWNoYXJzZXQ6MDsNCglt
c28tZ2VuZXJpYy1mb250LWZhbWlseTpzd2lzczsNCgltc28tZm9udC1waXRjaDp2YXJpYWJsZTsN
Cgltc28tZm9udC1zaWduYXR1cmU6LTUzNjg1OTkwNSAtMTA3MzczMjQ4NSA5IDAgNTExIDA7fQ0K
QGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpDb25zb2xhczsNCglwYW5vc2UtMToyIDExIDYgOSAy
IDIgNCAzIDIgNDsNCgltc28tZm9udC1jaGFyc2V0OjA7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1p
bHk6bW9kZXJuOw0KCW1zby1mb250LXBpdGNoOmZpeGVkOw0KCW1zby1mb250LXNpZ25hdHVyZTot
NTM2ODY5MTIxIDY0NzY3IDEgMCA0MTUgMDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OuW+
rui9r+mbhem7kTsNCglwYW5vc2UtMToyIDExIDUgMyAyIDIgNCAyIDIgNDsNCgltc28tZm9udC1j
aGFyc2V0OjEzNDsNCgltc28tZ2VuZXJpYy1mb250LWZhbWlseTpzd2lzczsNCgltc28tZm9udC1w
aXRjaDp2YXJpYWJsZTsNCgltc28tZm9udC1zaWduYXR1cmU6LTIxNDc0ODMwMDEgNjg0NjcwMDMy
IDIyIDAgMjYyMTc1IDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseToiXEDnrYnnur8iOw0K
CXBhbm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAxIDE7DQoJbXNvLWZvbnQtYWx0OiJcQERlbmdYaWFu
IjsNCgltc28tZm9udC1jaGFyc2V0OjEzNDsNCgltc28tZ2VuZXJpYy1mb250LWZhbWlseTphdXRv
Ow0KCW1zby1mb250LXBpdGNoOmF1dG87DQoJbXNvLWZvbnQtc2lnbmF0dXJlOjAgMCAwIDAgMCAw
O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IlxA5b6u6L2v6ZuF6buRIjsNCgltc28tZm9u
dC1jaGFyc2V0OjEzNDsNCgltc28tZ2VuZXJpYy1mb250LWZhbWlseTpzd2lzczsNCgltc28tZm9u
dC1waXRjaDp2YXJpYWJsZTsNCgltc28tZm9udC1zaWduYXR1cmU6LTIxNDc0ODMwMDEgNjg0Njcw
MDMyIDIyIDAgMjYyMTc1IDA7fQ0KLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8NCnAuTXNvTm9ybWFs
LCBsaS5Nc29Ob3JtYWwsIGRpdi5Nc29Ob3JtYWwNCgl7bXNvLXN0eWxlLXVuaGlkZTpubzsNCglt
c28tc3R5bGUtcWZvcm1hdDp5ZXM7DQoJbXNvLXN0eWxlLXBhcmVudDoiIjsNCgltYXJnaW46MGNt
Ow0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsNCgltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47
DQoJZm9udC1zaXplOjExLjBwdDsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsc2Fucy1zZXJpZjsN
Cgltc28tZmFyZWFzdC1mb250LWZhbWlseTpEZW5nWGlhbjt9DQphOmxpbmssIHNwYW4uTXNvSHlw
ZXJsaW5rDQoJe21zby1zdHlsZS1ub3Nob3c6eWVzOw0KCW1zby1zdHlsZS1wcmlvcml0eTo5OTsN
Cgljb2xvcjpibHVlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7DQoJdGV4dC11bmRlcmxp
bmU6c2luZ2xlO30NCmE6dmlzaXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0KCXttc28t
c3R5bGUtbm9zaG93OnllczsNCgltc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6cHVycGxl
Ow0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7DQoJdGV4dC11bmRlcmxpbmU6c2luZ2xlO30N
CnAubXNvbm9ybWFsMCwgbGkubXNvbm9ybWFsMCwgZGl2Lm1zb25vcm1hbDANCgl7bXNvLXN0eWxl
LW5hbWU6bXNvbm9ybWFsOw0KCW1zby1zdHlsZS11bmhpZGU6bm87DQoJbXNvLW1hcmdpbi10b3At
YWx0OmF1dG87DQoJbWFyZ2luLXJpZ2h0OjBjbTsNCgltc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0
bzsNCgltYXJnaW4tbGVmdDowY207DQoJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOw0KCWZv
bnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7DQoJbXNv
LWZhcmVhc3QtZm9udC1mYW1pbHk6RGVuZ1hpYW47fQ0Kc3Bhbi5nbWFpbC1tMzAxNzY1ODY2NjU1
OTY0MTM4c3BlbGxlDQoJe21zby1zdHlsZS1uYW1lOmdtYWlsLW1fMzAxNzY1ODY2NjU1OTY0MTM4
c3BlbGxlOw0KCW1zby1zdHlsZS11bmhpZGU6bm87fQ0Kc3Bhbi5FbWFpbFN0eWxlMTkNCgl7bXNv
LXN0eWxlLXR5cGU6cGVyc29uYWw7DQoJbXNvLXN0eWxlLW5vc2hvdzp5ZXM7DQoJbXNvLXN0eWxl
LXVuaGlkZTpubzsNCgltc28tYW5zaS1mb250LXNpemU6MTEuMHB0Ow0KCW1zby1iaWRpLWZvbnQt
c2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6Q29uc29sYXM7DQoJbXNvLWFzY2lpLWZvbnQtZmFt
aWx5OkNvbnNvbGFzOw0KCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTsNCglt
c28taGFuc2ktZm9udC1mYW1pbHk6Q29uc29sYXM7DQoJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRp
bWVzIE5ldyBSb21hbiI7DQoJY29sb3I6d2luZG93dGV4dDt9DQpzcGFuLkVtYWlsU3R5bGUyMA0K
CXttc28tc3R5bGUtdHlwZTpwZXJzb25hbC1jb21wb3NlOw0KCW1zby1zdHlsZS1ub3Nob3c6eWVz
Ow0KCW1zby1zdHlsZS11bmhpZGU6bm87DQoJbXNvLWFuc2ktZm9udC1zaXplOjExLjBwdDsNCglt
c28tYmlkaS1mb250LXNpemU6MTEuMHB0Ow0KCWZvbnQtZmFtaWx5OkNvbnNvbGFzOw0KCW1zby1h
c2NpaS1mb250LWZhbWlseTpDb25zb2xhczsNCgltc28tZmFyZWFzdC1mb250LWZhbWlseTrlvq7o
va/pm4Xpu5E7DQoJbXNvLWhhbnNpLWZvbnQtZmFtaWx5OkNvbnNvbGFzOw0KCW1zby1iaWRpLWZv
bnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOw0KCWNvbG9yOndpbmRvd3RleHQ7fQ0Kc3Bhbi5T
cGVsbEUNCgl7bXNvLXN0eWxlLW5hbWU6IiI7DQoJbXNvLXNwbC1lOnllczt9DQouTXNvQ2hwRGVm
YXVsdA0KCXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsNCgltc28tZGVmYXVsdC1wcm9wczp5
ZXM7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7DQoJbXNvLWFzY2lpLWZvbnQt
ZmFtaWx5OkNhbGlicmk7DQoJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6RGVuZ1hpYW47DQoJbXNv
LWhhbnNpLWZvbnQtZmFtaWx5OkNhbGlicmk7DQoJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVz
IE5ldyBSb21hbiI7fQ0KQHBhZ2UgV29yZFNlY3Rpb24xDQoJe3NpemU6NjEyLjBwdCA3OTIuMHB0
Ow0KCW1hcmdpbjo3Mi4wcHQgOTAuMHB0IDcyLjBwdCA5MC4wcHQ7DQoJbXNvLWhlYWRlci1tYXJn
aW46MzYuMHB0Ow0KCW1zby1mb290ZXItbWFyZ2luOjM2LjBwdDsNCgltc28tcGFwZXItc291cmNl
OjA7fQ0KZGl2LldvcmRTZWN0aW9uMQ0KCXtwYWdlOldvcmRTZWN0aW9uMTt9DQotLT48L3N0eWxl
PjwhLS1baWYgZ3RlIG1zbyAxMF0+PHN0eWxlPi8qIFN0eWxlIERlZmluaXRpb25zICovDQp0YWJs
ZS5Nc29Ob3JtYWxUYWJsZQ0KCXttc28tc3R5bGUtbmFtZToiVGFibGUgTm9ybWFsIjsNCgltc28t
dHN0eWxlLXJvd2JhbmQtc2l6ZTowOw0KCW1zby10c3R5bGUtY29sYmFuZC1zaXplOjA7DQoJbXNv
LXN0eWxlLW5vc2hvdzp5ZXM7DQoJbXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCW1zby1zdHlsZS1w
YXJlbnQ6IiI7DQoJbXNvLXBhZGRpbmctYWx0OjBjbSA1LjRwdCAwY20gNS40cHQ7DQoJbXNvLXBh
cmEtbWFyZ2luOjBjbTsNCgltc28tcGFyYS1tYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJbXNvLXBh
Z2luYXRpb246d2lkb3ctb3JwaGFuOw0KCWZvbnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6
IkNhbGlicmkiLHNhbnMtc2VyaWY7DQoJbXNvLWFzY2lpLWZvbnQtZmFtaWx5OkNhbGlicmk7DQoJ
bXNvLWhhbnNpLWZvbnQtZmFtaWx5OkNhbGlicmk7DQoJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRp
bWVzIE5ldyBSb21hbiI7fQ0KPC9zdHlsZT48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+
PHhtbD4NCjxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9ImVkaXQiIHNwaWRtYXg9IjEwMjYiIC8+DQo8
L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOnNoYXBlbGF5b3V0
IHY6ZXh0PSJlZGl0Ij4NCjxvOmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIxIiAvPg0KPC9vOnNo
YXBlbGF5b3V0PjwveG1sPjwhW2VuZGlmXS0tPg0KPC9oZWFkPg0KPGJvZHkgbGFuZz0iRU4tVVMi
IGxpbms9ImJsdWUiIHZsaW5rPSJwdXJwbGUiIHN0eWxlPSJ0YWItaW50ZXJ2YWw6MzYuMHB0Ij4N
CjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBz
dHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v
6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+
SGkgQWpheSw8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3Bh
biBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u
6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90
OyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+
rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVv
dDsiPkkgdGhpbmsgd2UgaGF2ZSB0byBjbGFzc2lmeSB0aGUgc3RhdGljLXByZS1jb21waWxlZCBs
aWJyYXJpZXMuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+
rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVv
dDsiPkZvciBpbnN0YW5jZSwgaWYgdGhlIHN0YXRpYy1wcmUtY29tcGlsZWQgbGlicmFyeSBpcyBh
IG1hdGggbGlicmFyeS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1p
bHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21h
biZxdW90OyI+SXQganVzdCBkb2VzIHNvbWUgTWF0aGVtYXRpY2FsIENvbXB1dGluZyBhbmQgZG9l
c27igJl0IGRlcGVuZCBvbjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhczttc28tZmFyZWFzdC1mb250LWZh
bWlseTrlvq7ova/pm4Xpu5E7bXNvLWJpZGktZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJv
bWFuJnF1b3Q7Ij5PdGhlciBsaWJyYXJpZXMuIEkgdGhpbmsgdGhpcyBtYXRoIGxpYnJhcnkgY2Fu
IGJlIGxpbmsgdG88bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6
5b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZx
dW90OyI+VW5pa3JhZnQuIEFub3RoZXIgaW5zdGFuY2UsIGlmIHRoZSBzdGF0aWMtcHJlLWNvbXBp
bGVkIGxpYnJhcnk8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6
5b6u6L2v6ZuF6buRO21zby1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZx
dW90OyI+ZGVwZW5kcyBvbiBvdGhlciBsaWJyYXJpZXMuIFlvdSBoYXZlIHRvIGd1YXJhbnRlZSB0
aGUgZGVwZW5kZW50PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5
OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4m
cXVvdDsiPmxpYnJhcmllcyBhcmUgaW4gdGhlIFVuaWtyYWZ0IGxpYnJhcnkgcG9vbC48bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1m
YW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1i
aWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+PG86cD4mbmJzcDs8
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt
ZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28t
YmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPkluIHlvdXIgY2Fz
ZSwgdGhlDQo8L3NwYW4+LzxzcGFuIGNsYXNzPSJTcGVsbEUiPnVzcjwvc3Bhbj4vbGliL3g4Nl82
NC1saW51eC1nbnUvPHNwYW4gY2xhc3M9IlNwZWxsRSI+bGlicnQuYTwvc3Bhbj4gYW5kIC88c3Bh
biBjbGFzcz0iU3BlbGxFIj51c3I8L3NwYW4+L2xpYi94ODZfNjQtbGludXgtZ251LzxzcGFuIGNs
YXNzPSJTcGVsbEUiPmxpYnB0aHJlYWQuYTwvc3Bhbj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6
Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21zby1iaWRpLWZv
bnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+PG86cD48L286cD48L3NwYW4+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNv
bGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZh
bWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPndvdWxkIGxpbmsgdG8NCjxzcGFuIGNs
YXNzPSJTcGVsbEUiPmxpYmMuYTwvc3Bhbj4gdG8gc29sdmUgdGhlaXIgbGluayBkZXBlbmRlbmNp
ZXMuIEJ1dCB0aGUgPHNwYW4gY2xhc3M9IlNwZWxsRSI+DQpub2xpYmM8L3NwYW4+PG86cD48L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFt
aWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlk
aS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPkluIFVuaWtyYWZ0IGlz
IGp1c3QgYSBzdWJzZXQgb2YNCjxzcGFuIGNsYXNzPSJTcGVsbEUiPmxpYmMuYTwvc3Bhbj48bzpw
PjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9u
dC1mYW1pbHk6Q29uc29sYXM7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRO21z
by1iaWRpLWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+PG86cD4mbmJz
cDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZv
bnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTtt
c28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPlJlZ2FyZHMs
PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9
ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7
kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPldlaSBD
aGVuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5
bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OuW+rui9r+mb
hem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPjxv
OnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRl
ci1sZWZ0OnNvbGlkIGJsdWUgMS41cHQ7cGFkZGluZzowY20gMGNtIDBjbSA0LjBwdCI+DQo8ZGl2
Pg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjRTFFMUUxIDEuMHB0
O3BhZGRpbmc6My4wcHQgMGNtIDBjbSAwY20iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNw
YW4gc3R5bGU9Im1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZx
dW90OyI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxlPSJtc28tZmFyZWFzdC1mb250LWZhbWls
eTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPiBBamF5IEdhcmcgJmx0O2FqYXlnYXJnbnNp
dEBnbWFpbC5jb20mZ3Q7DQo8YnI+DQo8Yj5TZW50OjwvYj4gMjAxODwvc3Bhbj48c3BhbiBsYW5n
PSJaSC1DTiIgc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O+W+rui9r+mbhem7kSZxdW90OyxzYW5z
LXNlcmlmO21zby1iaWRpLWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kSI+5bm0PC9zcGFuPjxzcGFu
IHN0eWxlPSJtc28tZmFyZWFzdC1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVv
dDsiPjQ8L3NwYW4+PHNwYW4gbGFuZz0iWkgtQ04iIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDvl
vq7ova/pm4Xpu5EmcXVvdDssc2Fucy1zZXJpZjttc28tYmlkaS1mb250LWZhbWlseTrlvq7ova/p
m4Xpu5EiPuaciDwvc3Bhbj48c3BhbiBzdHlsZT0ibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6JnF1
b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij4xODwvc3Bhbj48c3BhbiBsYW5nPSJaSC1DTiIgc3R5
bGU9ImZvbnQtZmFtaWx5OiZxdW90O+W+rui9r+mbhem7kSZxdW90OyxzYW5zLXNlcmlmO21zby1i
aWRpLWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kSI+5pelPC9zcGFuPjxzcGFuIHN0eWxlPSJtc28t
ZmFyZWFzdC1mb250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPg0KIDExOjE3
PGJyPg0KPGI+VG86PC9iPiBXZWkgQ2hlbiAmbHQ7V2VpLkNoZW5AYXJtLmNvbSZndDs8YnI+DQo8
Yj5DYzo8L2I+IG1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZzxicj4NCjxiPlN1Ympl
Y3Q6PC9iPiBSZTogW01pbmlvcy1kZXZlbF0gW1VuaWtyYWZ0XSBTdGF0aWMgTGlicmFyaWVzIG5v
dCBiZWluZyBsaW5rZWQgcHJvcGVybHk8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwv
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2Pg0K
PGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBz
dHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQiPkhpIFdlaS48bzpwPjwvbzpwPjwvcD4NCjwvZGl2
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIuMHB0Ij5UaGFu
a3MgZm9yIHRoZSBoZWxwLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQiPkFjdHVhbGx5LCBteSBvcmlnaW5hbCBx
dWVyeSBpcyBob3cgdG8gbGluayBwcmUtY29tcGlsZWQgKHN0YXRpYykgbGlicmFyaWVzIGluIHVu
aWtyYWZ0PzxiciBzdHlsZT0ibXNvLXNwZWNpYWwtY2hhcmFjdGVyOmxpbmUtYnJlYWsiPg0KPCFb
aWYgIXN1cHBvcnRMaW5lQnJlYWtOZXdMaW5lXT48YnIgc3R5bGU9Im1zby1zcGVjaWFsLWNoYXJh
Y3RlcjpsaW5lLWJyZWFrIj4NCjwhW2VuZGlmXT48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIuMHB0Ij5JIHRyaWVkIGFz
IHBlciB0aGUgZG9jdW1lbnRhdGlvbiBhdA0KPGJyPg0KPGEgaHJlZj0iaHR0cDovL3hlbmJpdHMu
eGVuLm9yZy9naXR3ZWIvP3A9dW5pa3JhZnQvdW5pa3JhZnQuZ2l0O2E9YmxvYjtmPWRvYy9ndWlk
ZXMvZGV2ZWxvcGVycy1hcHAucnN0O2g9NDVkOWJkNWIyYmIxMGIzZDA0MTM1ZDY2YjUxNjJhNTlk
NTRkYzJiNjtoYj1IRUFEI2wxNjMiPmh0dHA6Ly94ZW5iaXRzLnhlbi5vcmcvZ2l0d2ViLz9wPXVu
aWtyYWZ0L3VuaWtyYWZ0LmdpdDthPWJsb2I7Zj1kb2MvZ3VpZGVzL2RldmVsb3BlcnMtYXBwLnJz
dDtoPTQ1ZDliZDViMmJiMTBiM2QwNDEzNWQ2NmI1MTYyYTU5ZDU0ZGMyYjY7aGI9SEVBRCNsMTYz
PC9hPg0KPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl
PSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+YnV0IHRoZSBsaWJyYXJpZXMgZG8gbm90IHJlc29sdmUg
bGlua2luZyBwcm9ibGVtcy48YnIgc3R5bGU9Im1zby1zcGVjaWFsLWNoYXJhY3RlcjpsaW5lLWJy
ZWFrIj4NCjwhW2lmICFzdXBwb3J0TGluZUJyZWFrTmV3TGluZV0+PGJyIHN0eWxlPSJtc28tc3Bl
Y2lhbC1jaGFyYWN0ZXI6bGluZS1icmVhayI+DQo8IVtlbmRpZl0+PG86cD48L286cD48L3A+DQo8
L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPk9yIGFtIEkgdW5kZXJzdGFuZGluZyBpdCBpbmNv
cnJlY3RseT8gQ2FuIHByZS1jb21waWxlZCBzdGF0aWMgbGlicmFyaWVzIGJlIGludGVncmF0ZWQv
bGlua2VkIGF0IGFsbCBpbiB1bmlrcmFmdD88bzpwPjwvbzpwPjwvcD4NCjxkaXY+DQo8ZGl2Pg0K
PGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1i
b3R0b206MTIuMHB0Ij48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4N
CjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5PbiBXZWQsIEFwciAxOCwgMjAxOCBhdCA3OjQ4IEFNLCBX
ZWkgQ2hlbiAmbHQ7PGEgaHJlZj0ibWFpbHRvOldlaS5DaGVuQGFybS5jb20iIHRhcmdldD0iX2Js
YW5rIj5XZWkuQ2hlbkBhcm0uY29tPC9hPiZndDsgd3JvdGU6PG86cD48L286cD48L3A+DQo8Ymxv
Y2txdW90ZSBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgI0NDQ0NDQyAxLjBw
dDttc28tYm9yZGVyLWxlZnQtYWx0OnNvbGlkICNDQ0NDQ0MgLjc1cHQ7cGFkZGluZzowY20gMGNt
IDBjbSA2LjBwdDttYXJnaW4tbGVmdDo0LjhwdDttYXJnaW4tcmlnaHQ6MGNtIj4NCjxkaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRv
O21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29u
c29sYXMiPkJ1dCB0aGUNCjxzcGFuIGNsYXNzPSJnbWFpbC1tMzAxNzY1ODY2NjU1OTY0MTM4c3Bl
bGxlIj5jbG9ja19nZXR0aW1lPC9zcGFuPiBoYXNu4oCZdCBiZWVuIGltcGxlbWVudGVkIGluDQo8
c3BhbiBjbGFzcz0iZ21haWwtbTMwMTc2NTg2NjY1NTk2NDEzOHNwZWxsZSI+bm9saWJjPC9zcGFu
PiBvciA8c3BhbiBjbGFzcz0iZ21haWwtbTMwMTc2NTg2NjY1NTk2NDEzOHNwZWxsZSI+DQpsaWJ0
aW1lPC9zcGFuPi48L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBz
dHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8i
PjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhcyI+SWYgeW91ciBhcHBsaWNhdGlvbiBq
dXN0IHVzZXMgdGhpcyBmdW5jdGlvbiB0byBwcmludA0KPHNwYW4gY2xhc3M9ImdtYWlsLW0zMDE3
NjU4NjY2NTU5NjQxMzhzcGVsbGUiPnRpbWVzdGFtcGU8L3NwYW4+LCB5b3U8L3NwYW4+PG86cD48
L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0
OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIHN0eWxlPSJmb250LWZhbWls
eTpDb25zb2xhcyI+Y2FuIGltcGxlbWVudCBhIGR1bW15IGZ1bmN0aW9uIGluIHlvdXIgY29kZSBp
biB0aGlzIHRpbWUgdG8gcGFzcyB0aGU8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0
b20tYWx0OmF1dG8iPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhcyI+bGlua2luZy48
L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1h
cmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIHN0eWxl
PSJmb250LWZhbWlseTpDb25zb2xhcyI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPC9k
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjwvZGl2Pg0K
PC9ibG9ja3F1b3RlPg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48YnI+DQo8YnIgY2xl
YXI9ImFsbCI+DQo8YnI+DQotLSA8bzpwPjwvbzpwPjwvcD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj5SZWdhcmRzLDxicj4NCkFqYXk8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+
DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4N
CjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KSU1QT1JUQU5UIE5PVElDRTogVGhlIGNv
bnRlbnRzIG9mIHRoaXMgZW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBhcmUgY29uZmlkZW50aWFs
IGFuZCBtYXkgYWxzbyBiZSBwcml2aWxlZ2VkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQg
cmVjaXBpZW50LCBwbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRvIG5v
dCBkaXNjbG9zZSB0aGUgY29udGVudHMgdG8gYW55IG90aGVyIHBlcnNvbiwgdXNlIGl0IGZvciBh
bnkgcHVycG9zZSwNCiBvciBzdG9yZSBvciBjb3B5IHRoZSBpbmZvcm1hdGlvbiBpbiBhbnkgbWVk
aXVtLiBUaGFuayB5b3UuDQo8L2JvZHk+DQo8L2h0bWw+DQo=

--_000_DB3PR08MB010772BBCBCC07EF035C65149EB60DB3PR08MB0107eurp_--


--===============4679541838953928427==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============4679541838953928427==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 18 03:45:11 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 03:45:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8e1u-0007Gm-1X; Wed, 18 Apr 2018 03:45:10 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ikyy=hh=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f8e1s-0007Gh-JA
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 03:45:08 +0000
X-Inumbo-ID: bf0b7121-42ba-11e8-9728-bc764e045a96
Received: from mail-lf0-x232.google.com (unknown [2a00:1450:4010:c07::232])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id bf0b7121-42ba-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 05:44:08 +0200 (CEST)
Received: by mail-lf0-x232.google.com with SMTP id m202-v6so469854lfe.8
 for <minios-devel@lists.xenproject.org>; Tue, 17 Apr 2018 20:45:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=ZbxtyqRQmEfzkJ57eK1GPSYOxQfFxJ3JR2mV0rhAPKk=;
 b=shvNWLCLWNVZEd9/2fbmm2MAZowmmBX3rYoGnCSTstpVzjVEu1CjgTTUnk9nUBzooO
 YDRGR/Fyce959S9SsleQ1j+0Y1OTo6E9dLQepFSU9qFt7NS8FEvWXOVESHwxXoskoMXo
 4+VziQ5LX41IfjDbEWhuxcAWUG6Uor4TQn60iSxuhUjUAPYFNzA16jWshkDcgDEtJlIF
 Eva9UASFMKnC0AbnSAyP7siVTi6PhrudaInblVSIJFsmRqTQ9Ubg8xCl8smfq2CVx6m6
 ZE3iRflEgzv5rgO5N0fPYPSwQWOD1rAyXqHNQn+IScL2bGq+8X5sDA2N/YJNpdjoKP/Z
 ESVw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=ZbxtyqRQmEfzkJ57eK1GPSYOxQfFxJ3JR2mV0rhAPKk=;
 b=dr670/YXOrMXphf/v74EUBn+V0tGvMVvVR1iew5m4ZCvPtWveZBpR87SnFMIuigaGV
 LHatYjKAu5k+t0CBQEWLSm0ZFvdVjzDaRu7D1cd7GB8am7i1bI393ojLl95ZkJoI7oiS
 uJbWRietEDW2Q6kGYqZB6ljNtrFIKUAAk+/HnXslrW8S1iI52l/q86Hu6Vtw9ylL3PXM
 HWWYioH/jcuioUxVCg7iRdARm+xGW7lAhLtOvtlWM3wCKdF8OdyNZKCRnGgqS0+2n8Ep
 N0hqmBWjWt9BdbNa6ewb+A6VUghkJi0SSxNzU6aKr62hh87W6NqOksJUIeYIDntjFNKv
 9nGQ==
X-Gm-Message-State: ALQs6tBsBxJWpHByq5m4Urk3ZcGTqH7hJ4qdaaeD9ESRDa3eF8j4fa4K
 cjlJ40agoywadOPz93WN734C6PLJUmGHO2T5Jr+wEg==
X-Google-Smtp-Source: AIpwx4/u7/CaL0UH3FJhgAFAgL6lxcVsUZ37JzE1UMJzQY2+tvvi4S+urV2svScmYznwEzBl/XICJC7Q+UDscH43CzY=
X-Received: by 10.46.144.153 with SMTP id l25mr228447ljg.55.1524023105180;
 Tue, 17 Apr 2018 20:45:05 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:d899:0:0:0:0:0 with HTTP; Tue, 17 Apr 2018 20:45:04
 -0700 (PDT)
In-Reply-To: <DB3PR08MB010772BBCBCC07EF035C65149EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
 <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
 <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
 <CAHP4M8VSHMD5wK1bytCyGThnPyhbDxk0RKJw2DmJToFF+j3p1A@mail.gmail.com>
 <DB3PR08MB010767D001F98AB4539BECF29EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <DB3PR08MB010710D1E5A6E8A9C2EE49499EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <CAHP4M8V17pwNUkma_n5AzNyiTqD1uSwQFEFBx40Sf4hZjPdWzw@mail.gmail.com>
 <DB3PR08MB010772BBCBCC07EF035C65149EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Wed, 18 Apr 2018 09:15:04 +0530
Message-ID: <CAHP4M8W03Ci4ZhcuPuDnDDzypty_5up_iQgu_8VbM8PqueNKRQ@mail.gmail.com>
To: Wei Chen <Wei.Chen@arm.com>
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Content-Type: multipart/mixed; boundary="===============6186907169955280510=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============6186907169955280510==
Content-Type: multipart/alternative; boundary="089e082767ccd057b8056a1747d0"

--089e082767ccd057b8056a1747d0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Ok Wei, got it ...

So, I added "/usr/lib/x86_64-linux-gnu/libc.a" also in
"APPCOREMARK_OBJS-y", but the linking errors still persist.
I now assume that pre-compiled static libc.a CANNOT be added into unikraft,
right?

On Wed, Apr 18, 2018 at 9:01 AM, Wei Chen <Wei.Chen@arm.com> wrote:

> Hi Ajay,
>
>
>
> I think we have to classify the static-pre-compiled libraries.
>
> For instance, if the static-pre-compiled library is a math library.
>
> It just does some Mathematical Computing and doesn=E2=80=99t depend on
>
> Other libraries. I think this math library can be link to
>
> Unikraft. Another instance, if the static-pre-compiled library
>
> depends on other libraries. You have to guarantee the dependent
>
> libraries are in the Unikraft library pool.
>
>
>
> In your case, the /usr/lib/x86_64-linux-gnu/librt.a and /usr
> /lib/x86_64-linux-gnu/libpthread.a
>
> would link to libc.a to solve their link dependencies. But the nolibc
>
> In Unikraft is just a subset of libc.a
>
>
>
> Regards,
>
> Wei Chen
>
>
>
> *From:* Ajay Garg <ajaygargnsit@gmail.com>
> *Sent:* 2018=E5=B9=B44=E6=9C=8818=E6=97=A5 11:17
> *To:* Wei Chen <Wei.Chen@arm.com>
> *Cc:* minios-devel@lists.xenproject.org
> *Subject:* Re: [Minios-devel] [Unikraft] Static Libraries not being
> linked properly
>
>
>
> Hi Wei.
>
> Thanks for the help.
>
> Actually, my original query is how to link pre-compiled (static) librarie=
s
> in unikraft?
>
> I tried as per the documentation at
> http://xenbits.xen.org/gitweb/?p=3Dunikraft/unikraft.git;a=3D
> blob;f=3Ddoc/guides/developers-app.rst;h=3D45d9bd5b2bb10b3d04135d66b5162a
> 59d54dc2b6;hb=3DHEAD#l163
>
> but the libraries do not resolve linking problems.
>
> Or am I understanding it incorrectly? Can pre-compiled static libraries b=
e
> integrated/linked at all in unikraft?
>
>
>
>
>
> On Wed, Apr 18, 2018 at 7:48 AM, Wei Chen <Wei.Chen@arm.com> wrote:
>
> But the clock_gettime hasn=E2=80=99t been implemented in nolibc or libtim=
e.
>
> If your application just uses this function to print timestampe, you
>
> can implement a dummy function in your code in this time to pass the
>
> linking.
>
>
>
>
>
>
>
>
> --
>
> Regards,
> Ajay
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy th=
e
> information in any medium. Thank you.
>



--=20
Regards,
Ajay

--089e082767ccd057b8056a1747d0
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div>Ok Wei, got it ...<br><br>So, I added &quot;/usr=
/lib/x86_64-linux-gnu/libc.a&quot; also in &quot;APPCOREMARK_OBJS-y&quot;, =
but the linking errors still persist.<br></div></div>I now assume that pre-=
compiled static libc.a CANNOT be added into unikraft, right?<br></div><div =
class=3D"gmail_extra"><br><div class=3D"gmail_quote">On Wed, Apr 18, 2018 a=
t 9:01 AM, Wei Chen <span dir=3D"ltr">&lt;<a href=3D"mailto:Wei.Chen@arm.co=
m" target=3D"_blank">Wei.Chen@arm.com</a>&gt;</span> wrote:<br><blockquote =
class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid=
;padding-left:1ex">







<div link=3D"blue" vlink=3D"purple" lang=3D"EN-US">
<div class=3D"m_652529124985756059WordSection1">
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Hi Ajay,<u></u>=
<u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">I think we have=
 to classify the static-pre-compiled libraries.<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">For instance, i=
f the static-pre-compiled library is a math library.<u></u><u></u></span></=
p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">It just does so=
me Mathematical Computing and doesn=E2=80=99t depend on<u></u><u></u></span=
></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Other libraries=
. I think this math library can be link to<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Unikraft. Anoth=
er instance, if the static-pre-compiled library<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">depends on othe=
r libraries. You have to guarantee the dependent<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">libraries are i=
n the Unikraft library pool.<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">In your case, t=
he
</span>/<span class=3D"m_652529124985756059SpellE">usr</span>/lib/x86_64-li=
nux-gnu/<span class=3D"m_652529124985756059SpellE">libr<wbr>t.a</span> and =
/<span class=3D"m_652529124985756059SpellE">usr</span>/lib/x86_64-linux-gnu=
/<span class=3D"m_652529124985756059SpellE">libp<wbr>thread.a</span><span s=
tyle=3D"font-family:Consolas"><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">would link to
<span class=3D"m_652529124985756059SpellE">libc.a</span> to solve their lin=
k dependencies. But the <span class=3D"m_652529124985756059SpellE">
nolibc</span><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">In Unikraft is =
just a subset of
<span class=3D"m_652529124985756059SpellE">libc.a</span><u></u><u></u></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Regards,<u></u>=
<u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Wei Chen<u></u>=
<u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p>
<div style=3D"border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm =
4.0pt">
<div>
<div style=3D"border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b><span>From:</span></b><span> Ajay Garg &lt;<a hre=
f=3D"mailto:ajaygargnsit@gmail.com" target=3D"_blank">ajaygargnsit@gmail.co=
m</a>&gt;
<br>
<b>Sent:</b> 2018</span><span style=3D"font-family:&quot;\005fae\008f6f\009=
6c5\009ed1&quot;,sans-serif" lang=3D"ZH-CN">=E5=B9=B4</span><span>4</span><=
span style=3D"font-family:&quot;\005fae\008f6f\0096c5\009ed1&quot;,sans-ser=
if" lang=3D"ZH-CN">=E6=9C=88</span><span>18</span><span style=3D"font-famil=
y:&quot;\005fae\008f6f\0096c5\009ed1&quot;,sans-serif" lang=3D"ZH-CN">=E6=
=97=A5</span><span>
 11:17<br>
<b>To:</b> Wei Chen &lt;<a href=3D"mailto:Wei.Chen@arm.com" target=3D"_blan=
k">Wei.Chen@arm.com</a>&gt;<br>
<b>Cc:</b> <a href=3D"mailto:minios-devel@lists.xenproject.org" target=3D"_=
blank">minios-devel@lists.xenproject.<wbr>org</a><span class=3D""><br>
<b>Subject:</b> Re: [Minios-devel] [Unikraft] Static Libraries not being li=
nked properly<u></u><u></u></span></span></p>
</div>
</div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<div>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">Hi Wei.<u></u><u></u>=
</p>
</div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">Thanks for the help.<=
u></u><u></u></p>
</div><div><div class=3D"h5">
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">Actually, my original=
 query is how to link pre-compiled (static) libraries in unikraft?<br>
<u></u><br>
<u></u><u></u><u></u></p>
</div></div></div><div><div class=3D"h5">
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">I tried as per the do=
cumentation at
<br>
<a href=3D"http://xenbits.xen.org/gitweb/?p=3Dunikraft/unikraft.git;a=3Dblo=
b;f=3Ddoc/guides/developers-app.rst;h=3D45d9bd5b2bb10b3d04135d66b5162a59d54=
dc2b6;hb=3DHEAD#l163" target=3D"_blank">http://xenbits.xen.org/gitweb/<wbr>=
?p=3Dunikraft/unikraft.git;a=3D<wbr>blob;f=3Ddoc/guides/developers-<wbr>app=
.rst;h=3D<wbr>45d9bd5b2bb10b3d04135d66b5162a<wbr>59d54dc2b6;hb=3DHEAD#l163<=
/a>
<u></u><u></u></p>
</div></div></div><div><div class=3D"h5">
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">but the libraries do =
not resolve linking problems.<br>
<u></u><br>
<u></u><u></u><u></u></p>
</div></div></div><div><div class=3D"h5">
<p class=3D"MsoNormal">Or am I understanding it incorrectly? Can pre-compil=
ed static libraries be integrated/linked at all in unikraft?<u></u><u></u><=
/p>
<div>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt"><u></u>=C2=A0<u></u><=
/p>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal">On Wed, Apr 18, 2018 at 7:48 AM, Wei Chen &lt;<a hre=
f=3D"mailto:Wei.Chen@arm.com" target=3D"_blank">Wei.Chen@arm.com</a>&gt; wr=
ote:<u></u><u></u></p>
<blockquote style=3D"border:none;border-left:solid #cccccc 1.0pt;padding:0c=
m 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">But the
<span class=3D"m_652529124985756059gmail-m301765866655964138spelle">clock_g=
ettime</span> hasn=E2=80=99t been implemented in
<span class=3D"m_652529124985756059gmail-m301765866655964138spelle">nolibc<=
/span> or <span class=3D"m_652529124985756059gmail-m301765866655964138spell=
e">
libtime</span>.</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">If your applica=
tion just uses this function to print
<span class=3D"m_652529124985756059gmail-m301765866655964138spelle">timesta=
mpe</span>, you</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">can implement a=
 dummy function in your code in this time to pass the</span><u></u><u></u><=
/p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">linking.</span>=
<u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">=C2=A0</span><u=
></u><u></u></p>
</div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
</blockquote>
</div>
<p class=3D"MsoNormal"><br>
<br clear=3D"all">
<br>
-- <u></u><u></u></p>
<div>
<p class=3D"MsoNormal">Regards,<br>
Ajay<u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div></div></div>
</div>
</div>
IMPORTANT NOTICE: The contents of this email and any attachments are confid=
ential and may also be privileged. If you are not the intended recipient, p=
lease notify the sender immediately and do not disclose the contents to any=
 other person, use it for any purpose,
 or store or copy the information in any medium. Thank you.
</div>

</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature" data-smartmail=3D"gmail_signature">Regards,<br>Ajay<br></div>
</div>

--089e082767ccd057b8056a1747d0--


--===============6186907169955280510==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============6186907169955280510==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 18 04:29:41 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 04:29:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8eix-0001Xc-8p; Wed, 18 Apr 2018 04:29:39 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=maay=hh=arm.com=wei.chen@srs-us1.protection.inumbo.net>)
 id 1f8eiv-0001XX-Qi
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 04:29:37 +0000
X-Inumbo-ID: f6093c64-42c0-11e8-9728-bc764e045a96
Received: from EUR02-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe06::60e])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id f6093c64-42c0-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 06:28:36 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=vf0EodITmTvJ8hLX2eFVuwYNszLBJuoqD+oSuUCXvUU=;
 b=gTv2qGANQg7hme6jzfiP2BwEYW/vnwZx2dqLEfGrYF8rovk/+k5KZqXH0dcjfEx84PUz+yb2xxq7I8ju7rW8IWk+Hx4zADUXSTNuREioiC8BiWcQ1hdXHyhDd8zZ/HlqpyYHBPfCH7W3TpV+x5oQEcTNwA/EbXRQ0IYbA50s/Io=
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com (10.161.56.21) by
 DB3PR08MB0026.eurprd08.prod.outlook.com (10.161.57.16) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.675.11; Wed, 18 Apr 2018 04:29:26 +0000
Received: from DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6]) by DB3PR08MB0107.eurprd08.prod.outlook.com
 ([fe80::3d94:2cd2:6811:f2e6%18]) with mapi id 15.20.0675.014; Wed, 18 Apr
 2018 04:29:25 +0000
From: Wei Chen <Wei.Chen@arm.com>
To: Ajay Garg <ajaygargnsit@gmail.com>
Thread-Topic: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
Thread-Index: AQHT06QTkh7b+gLJn0aR3f9tdvMCnKQANaYAgAGgVYCAA+fVgIAAC/rAgAACKrCAABQlAIAAAVgwgAAGjACAAAth4A==
Date: Wed, 18 Apr 2018 04:29:25 +0000
Message-ID: <DB3PR08MB01070E552363DEAC8D43548D9EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
 <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
 <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
 <CAHP4M8VSHMD5wK1bytCyGThnPyhbDxk0RKJw2DmJToFF+j3p1A@mail.gmail.com>
 <DB3PR08MB010767D001F98AB4539BECF29EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <DB3PR08MB010710D1E5A6E8A9C2EE49499EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <CAHP4M8V17pwNUkma_n5AzNyiTqD1uSwQFEFBx40Sf4hZjPdWzw@mail.gmail.com>
 <DB3PR08MB010772BBCBCC07EF035C65149EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <CAHP4M8W03Ci4ZhcuPuDnDDzypty_5up_iQgu_8VbM8PqueNKRQ@mail.gmail.com>
In-Reply-To: <CAHP4M8W03Ci4ZhcuPuDnDDzypty_5up_iQgu_8VbM8PqueNKRQ@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is )
 smtp.mailfrom=Wei.Chen@arm.com; 
x-originating-ip: [113.29.88.7]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DB3PR08MB0026;
 7:c+XKIhOTqHm4PnGNPtiNbFZAfIF8PU3PU8LsJQMMcBFUW73/WnlUic2+JlQpVas0iUif7/BPejDBKfEIeq9GLxnu2QMRH2Yp6pwaVo5ANzJbS2KU3/+FXSi1dsZQmdkMPv2+YxLuI1Xo99d4VU6lz96mOUmMpjRjC/WYVXZXcOCs7Ccet/fqFo3v+v5VK9llEutxqbotT3o8UC459xgNa4MzghIdrKmXZ2A+mjj/8jEjPfqtlAqt9k76HxxPaZh6
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(48565401081)(2017052603328)(7153060)(7193020);
 SRVR:DB3PR08MB0026; 
x-ms-traffictypediagnostic: DB3PR08MB0026:
x-microsoft-antispam-prvs: <DB3PR08MB0026ECED5B0C881B9B60430C9EB60@DB3PR08MB0026.eurprd08.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(28532068793085)(180628864354917)(85827821059158)(58134797142442)(21748063052155);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231232)(944501327)(52105095)(10201501046)(3002001)(6055026)(6041310)(20161123558120)(20161123562045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:DB3PR08MB0026; BCL:0; PCL:0; RULEID:; SRVR:DB3PR08MB0026; 
x-forefront-prvs: 06469BCC91
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(366004)(39860400002)(376002)(39380400002)(396003)(346002)(51914003)(40434004)(53936002)(59450400001)(6436002)(476003)(966005)(11346002)(2906002)(55016002)(6246003)(53546011)(54896002)(6506007)(3280700002)(446003)(6306002)(102836004)(55236004)(9686003)(5660300001)(236005)(76176011)(8676002)(39060400002)(66066001)(7696005)(53946003)(14454004)(8936002)(3660700001)(81166006)(7736002)(606006)(1411001)(5890100001)(86362001)(5250100002)(2900100001)(316002)(99286004)(4326008)(93886005)(186003)(25786009)(26005)(790700001)(6116002)(72206003)(3846002)(478600001)(33656002)(6916009)(229853002)(74316002)(559001)(579004);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR08MB0026;
 H:DB3PR08MB0107.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en;
 MLV:ovrnspm; PTR:InfoNoRecords; 
received-spf: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
x-microsoft-antispam-message-info: F6kGOleBTSOPm2wilV++QhXYkw5QtQg6Iw5/0PqfW7laI4WcO15hubP7/K+kyjLluzvrIwUZ+xzkuQWwWwK+4uDKw03GqHpNnAxZ8pJyVGumRoLvHGIKpdMr5UM3IAwOeeeQHPvs01gXIj4ODGnHi1i4wHvQ4walLM4l+9bd4XwpxCaHaOQ2Qy8B4OOiHhy4
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
MIME-Version: 1.0
X-MS-Office365-Filtering-Correlation-Id: 903cfd94-3fe8-470c-7a57-08d5a4e4f76a
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 903cfd94-3fe8-470c-7a57-08d5a4e4f76a
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Apr 2018 04:29:25.1992 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB0026
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Content-Type: multipart/mixed; boundary="===============7463671204805206048=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============7463671204805206048==
Content-Language: en-US
Content-Type: multipart/alternative;
	boundary="_000_DB3PR08MB01070E552363DEAC8D43548D9EB60DB3PR08MB0107eurp_"

--_000_DB3PR08MB01070E552363DEAC8D43548D9EB60DB3PR08MB0107eurp_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SSB0aGluayBjdXJyZW50bHkgdGhlIGFuc3dlciBpcyDigJhZRVPigJkuIFdlIGNvdWxkIG5vdCBs
aW5rIGxpYmMuYQ0KZGlyZWN0bHkgaW4gVW5pa3JhZnQuIExpYmMuYSByZXF1aXJlcyBzb21lIGRl
cGVuZGVuY2llcyB0aGF0DQp1bmlrcmFmdCBkb2VzbuKAmXQgcHJvdmlkZS4NCg0KRnJvbTogQWph
eSBHYXJnIDxhamF5Z2FyZ25zaXRAZ21haWwuY29tPg0KU2VudDogMjAxOOW5tDTmnIgxOOaXpSAx
MTo0NQ0KVG86IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPg0KQ2M6IG1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZw0KU3ViamVjdDogUmU6IFtNaW5pb3MtZGV2ZWxdIFtVbmlrcmFm
dF0gU3RhdGljIExpYnJhcmllcyBub3QgYmVpbmcgbGlua2VkIHByb3Blcmx5DQoNCk9rIFdlaSwg
Z290IGl0IC4uLg0KDQpTbywgSSBhZGRlZCAiL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9saWJj
LmEiIGFsc28gaW4gIkFQUENPUkVNQVJLX09CSlMteSIsIGJ1dCB0aGUgbGlua2luZyBlcnJvcnMg
c3RpbGwgcGVyc2lzdC4NCkkgbm93IGFzc3VtZSB0aGF0IHByZS1jb21waWxlZCBzdGF0aWMgbGli
Yy5hIENBTk5PVCBiZSBhZGRlZCBpbnRvIHVuaWtyYWZ0LCByaWdodD8NCg0KT24gV2VkLCBBcHIg
MTgsIDIwMTggYXQgOTowMSBBTSwgV2VpIENoZW4gPFdlaS5DaGVuQGFybS5jb208bWFpbHRvOldl
aS5DaGVuQGFybS5jb20+PiB3cm90ZToNCkhpIEFqYXksDQoNCkkgdGhpbmsgd2UgaGF2ZSB0byBj
bGFzc2lmeSB0aGUgc3RhdGljLXByZS1jb21waWxlZCBsaWJyYXJpZXMuDQpGb3IgaW5zdGFuY2Us
IGlmIHRoZSBzdGF0aWMtcHJlLWNvbXBpbGVkIGxpYnJhcnkgaXMgYSBtYXRoIGxpYnJhcnkuDQpJ
dCBqdXN0IGRvZXMgc29tZSBNYXRoZW1hdGljYWwgQ29tcHV0aW5nIGFuZCBkb2VzbuKAmXQgZGVw
ZW5kIG9uDQpPdGhlciBsaWJyYXJpZXMuIEkgdGhpbmsgdGhpcyBtYXRoIGxpYnJhcnkgY2FuIGJl
IGxpbmsgdG8NClVuaWtyYWZ0LiBBbm90aGVyIGluc3RhbmNlLCBpZiB0aGUgc3RhdGljLXByZS1j
b21waWxlZCBsaWJyYXJ5DQpkZXBlbmRzIG9uIG90aGVyIGxpYnJhcmllcy4gWW91IGhhdmUgdG8g
Z3VhcmFudGVlIHRoZSBkZXBlbmRlbnQNCmxpYnJhcmllcyBhcmUgaW4gdGhlIFVuaWtyYWZ0IGxp
YnJhcnkgcG9vbC4NCg0KSW4geW91ciBjYXNlLCB0aGUgL3Vzci9saWIveDg2XzY0LWxpbnV4LWdu
dS9saWJydC5hIGFuZCAvdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2xpYnB0aHJlYWQuYQ0Kd291
bGQgbGluayB0byBsaWJjLmEgdG8gc29sdmUgdGhlaXIgbGluayBkZXBlbmRlbmNpZXMuIEJ1dCB0
aGUgbm9saWJjDQpJbiBVbmlrcmFmdCBpcyBqdXN0IGEgc3Vic2V0IG9mIGxpYmMuYQ0KDQpSZWdh
cmRzLA0KV2VpIENoZW4NCg0KRnJvbTogQWpheSBHYXJnIDxhamF5Z2FyZ25zaXRAZ21haWwuY29t
PG1haWx0bzphamF5Z2FyZ25zaXRAZ21haWwuY29tPj4NClNlbnQ6IDIwMTjlubQ05pyIMTjml6Ug
MTE6MTcNClRvOiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbTxtYWlsdG86V2VpLkNoZW5AYXJt
LmNvbT4+DQpDYzogbWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnPG1haWx0bzptaW5p
b3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmc+DQpTdWJqZWN0OiBSZTogW01pbmlvcy1kZXZl
bF0gW1VuaWtyYWZ0XSBTdGF0aWMgTGlicmFyaWVzIG5vdCBiZWluZyBsaW5rZWQgcHJvcGVybHkN
Cg0KSGkgV2VpLg0KVGhhbmtzIGZvciB0aGUgaGVscC4NCkFjdHVhbGx5LCBteSBvcmlnaW5hbCBx
dWVyeSBpcyBob3cgdG8gbGluayBwcmUtY29tcGlsZWQgKHN0YXRpYykgbGlicmFyaWVzIGluIHVu
aWtyYWZ0Pw0KSSB0cmllZCBhcyBwZXIgdGhlIGRvY3VtZW50YXRpb24gYXQNCmh0dHA6Ly94ZW5i
aXRzLnhlbi5vcmcvZ2l0d2ViLz9wPXVuaWtyYWZ0L3VuaWtyYWZ0LmdpdDthPWJsb2I7Zj1kb2Mv
Z3VpZGVzL2RldmVsb3BlcnMtYXBwLnJzdDtoPTQ1ZDliZDViMmJiMTBiM2QwNDEzNWQ2NmI1MTYy
YTU5ZDU0ZGMyYjY7aGI9SEVBRCNsMTYzDQpidXQgdGhlIGxpYnJhcmllcyBkbyBub3QgcmVzb2x2
ZSBsaW5raW5nIHByb2JsZW1zLg0KT3IgYW0gSSB1bmRlcnN0YW5kaW5nIGl0IGluY29ycmVjdGx5
PyBDYW4gcHJlLWNvbXBpbGVkIHN0YXRpYyBsaWJyYXJpZXMgYmUgaW50ZWdyYXRlZC9saW5rZWQg
YXQgYWxsIGluIHVuaWtyYWZ0Pw0KDQoNCk9uIFdlZCwgQXByIDE4LCAyMDE4IGF0IDc6NDggQU0s
IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPG1haWx0bzpXZWkuQ2hlbkBhcm0uY29tPj4gd3Jv
dGU6DQpCdXQgdGhlIGNsb2NrX2dldHRpbWUgaGFzbuKAmXQgYmVlbiBpbXBsZW1lbnRlZCBpbiBu
b2xpYmMgb3IgbGlidGltZS4NCklmIHlvdXIgYXBwbGljYXRpb24ganVzdCB1c2VzIHRoaXMgZnVu
Y3Rpb24gdG8gcHJpbnQgdGltZXN0YW1wZSwgeW91DQpjYW4gaW1wbGVtZW50IGEgZHVtbXkgZnVu
Y3Rpb24gaW4geW91ciBjb2RlIGluIHRoaXMgdGltZSB0byBwYXNzIHRoZQ0KbGlua2luZy4NCg0K
DQoNCg0KDQotLQ0KUmVnYXJkcywNCkFqYXkNCklNUE9SVEFOVCBOT1RJQ0U6IFRoZSBjb250ZW50
cyBvZiB0aGlzIGVtYWlsIGFuZCBhbnkgYXR0YWNobWVudHMgYXJlIGNvbmZpZGVudGlhbCBhbmQg
bWF5IGFsc28gYmUgcHJpdmlsZWdlZC4gSWYgeW91IGFyZSBub3QgdGhlIGludGVuZGVkIHJlY2lw
aWVudCwgcGxlYXNlIG5vdGlmeSB0aGUgc2VuZGVyIGltbWVkaWF0ZWx5IGFuZCBkbyBub3QgZGlz
Y2xvc2UgdGhlIGNvbnRlbnRzIHRvIGFueSBvdGhlciBwZXJzb24sIHVzZSBpdCBmb3IgYW55IHB1
cnBvc2UsIG9yIHN0b3JlIG9yIGNvcHkgdGhlIGluZm9ybWF0aW9uIGluIGFueSBtZWRpdW0uIFRo
YW5rIHlvdS4NCg0KDQoNCi0tDQpSZWdhcmRzLA0KQWpheQ0KSU1QT1JUQU5UIE5PVElDRTogVGhl
IGNvbnRlbnRzIG9mIHRoaXMgZW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBhcmUgY29uZmlkZW50
aWFsIGFuZCBtYXkgYWxzbyBiZSBwcml2aWxlZ2VkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5k
ZWQgcmVjaXBpZW50LCBwbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRv
IG5vdCBkaXNjbG9zZSB0aGUgY29udGVudHMgdG8gYW55IG90aGVyIHBlcnNvbiwgdXNlIGl0IGZv
ciBhbnkgcHVycG9zZSwgb3Igc3RvcmUgb3IgY29weSB0aGUgaW5mb3JtYXRpb24gaW4gYW55IG1l
ZGl1bS4gVGhhbmsgeW91Lg0K

--_000_DB3PR08MB01070E552363DEAC8D43548D9EB60DB3PR08MB0107eurp_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IlByb2dJZCIg
Y29udGVudD0iV29yZC5Eb2N1bWVudCI+DQo8bWV0YSBuYW1lPSJHZW5lcmF0b3IiIGNvbnRlbnQ9
Ik1pY3Jvc29mdCBXb3JkIDE1Ij4NCjxtZXRhIG5hbWU9Ik9yaWdpbmF0b3IiIGNvbnRlbnQ9Ik1p
Y3Jvc29mdCBXb3JkIDE1Ij4NCjxsaW5rIHJlbD0iRmlsZS1MaXN0IiBocmVmPSJjaWQ6ZmlsZWxp
c3QueG1sQDAxRDNENzEwLkUxNTE1QTEwIj48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOk9m
ZmljZURvY3VtZW50U2V0dGluZ3M+DQo8bzpBbGxvd1BORy8+DQo8L286T2ZmaWNlRG9jdW1lbnRT
ZXR0aW5ncz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPHc6
V29yZERvY3VtZW50Pg0KPHc6U3BlbGxpbmdTdGF0ZT5DbGVhbjwvdzpTcGVsbGluZ1N0YXRlPg0K
PHc6RG9jdW1lbnRLaW5kPkRvY3VtZW50RW1haWw8L3c6RG9jdW1lbnRLaW5kPg0KPHc6VHJhY2tN
b3Zlcy8+DQo8dzpUcmFja0Zvcm1hdHRpbmcvPg0KPHc6RW52ZWxvcGVWaXMvPg0KPHc6VmFsaWRh
dGVBZ2FpbnN0U2NoZW1hcy8+DQo8dzpTYXZlSWZYTUxJbnZhbGlkPmZhbHNlPC93OlNhdmVJZlhN
TEludmFsaWQ+DQo8dzpJZ25vcmVNaXhlZENvbnRlbnQ+ZmFsc2U8L3c6SWdub3JlTWl4ZWRDb250
ZW50Pg0KPHc6QWx3YXlzU2hvd1BsYWNlaG9sZGVyVGV4dD5mYWxzZTwvdzpBbHdheXNTaG93UGxh
Y2Vob2xkZXJUZXh0Pg0KPHc6RG9Ob3RQcm9tb3RlUUYvPg0KPHc6TGlkVGhlbWVPdGhlcj5FTi1V
UzwvdzpMaWRUaGVtZU90aGVyPg0KPHc6TGlkVGhlbWVBc2lhbj5aSC1DTjwvdzpMaWRUaGVtZUFz
aWFuPg0KPHc6TGlkVGhlbWVDb21wbGV4U2NyaXB0PlgtTk9ORTwvdzpMaWRUaGVtZUNvbXBsZXhT
Y3JpcHQ+DQo8dzpDb21wYXRpYmlsaXR5Pg0KPHc6RG9Ob3RFeHBhbmRTaGlmdFJldHVybi8+DQo8
dzpCcmVha1dyYXBwZWRUYWJsZXMvPg0KPHc6U3BsaXRQZ0JyZWFrQW5kUGFyYU1hcmsvPg0KPHc6
RW5hYmxlT3BlblR5cGVLZXJuaW5nLz4NCjx3OlVzZUZFTGF5b3V0Lz4NCjwvdzpDb21wYXRpYmls
aXR5Pg0KPG06bWF0aFByPg0KPG06bWF0aEZvbnQgbTp2YWw9IkNhbWJyaWEgTWF0aCIvPg0KPG06
YnJrQmluIG06dmFsPSJiZWZvcmUiLz4NCjxtOmJya0JpblN1YiBtOnZhbD0iJiM0NTstIi8+DQo8
bTpzbWFsbEZyYWMgbTp2YWw9Im9mZiIvPg0KPG06ZGlzcERlZi8+DQo8bTpsTWFyZ2luIG06dmFs
PSIwIi8+DQo8bTpyTWFyZ2luIG06dmFsPSIwIi8+DQo8bTpkZWZKYyBtOnZhbD0iY2VudGVyR3Jv
dXAiLz4NCjxtOndyYXBJbmRlbnQgbTp2YWw9IjE0NDAiLz4NCjxtOmludExpbSBtOnZhbD0ic3Vi
U3VwIi8+DQo8bTpuYXJ5TGltIG06dmFsPSJ1bmRPdnIiLz4NCjwvbTptYXRoUHI+PC93OldvcmRE
b2N1bWVudD4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPHc6
TGF0ZW50U3R5bGVzIERlZkxvY2tlZFN0YXRlPSJmYWxzZSIgRGVmVW5oaWRlV2hlblVzZWQ9ImZh
bHNlIiBEZWZTZW1pSGlkZGVuPSJmYWxzZSIgRGVmUUZvcm1hdD0iZmFsc2UiIERlZlByaW9yaXR5
PSI5OSIgTGF0ZW50U3R5bGVDb3VudD0iMzc1Ij4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iMCIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iTm9ybWFsIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFFGb3JtYXQ9InRydWUiIE5hbWU9
ImhlYWRpbmcgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIg
TmFtZT0iaGVhZGluZyAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0
cnVlIiBOYW1lPSJoZWFkaW5nIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIFFGb3Jt
YXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
UUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0
cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgNyIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA4Ii8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDkiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iaW5kZXggMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCAy
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0i
aW5kZXggNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRy
dWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJpbmRleCA1Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUi
IE5hbWU9ImluZGV4IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlk
ZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iaW5kZXggNyIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJpbmRleCA4Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IDkiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2MgMSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9InRvYyAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0idG9jIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iMzkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2Mg
NCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9InRvYyA1Ii8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idG9jIDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJ0b2MgNyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSIzOSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9
InRvYyA4Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBT
ZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0idG9jIDkiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iTm9ybWFsIEluZGVudCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJm
b290bm90ZSB0ZXh0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRl
bj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImFubm90YXRpb24gdGV4dCIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBOYW1lPSJoZWFkZXIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iZm9vdGVy
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5o
aWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImluZGV4IGhlYWRpbmciLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzUiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdo
ZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJjYXB0aW9uIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9InRhYmxlIG9mIGZpZ3VyZXMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iZW52ZWxv
cGUgYWRkcmVzcyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJlbnZlbG9wZSByZXR1cm4iLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iZm9vdG5vdGUgcmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9ImFubm90YXRpb24gcmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImxpbmUgbnVt
YmVyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIg
VW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9InBhZ2UgbnVtYmVyIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUi
IE5hbWU9ImVuZG5vdGUgcmVmZXJlbmNlIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9ImVuZG5vdGUg
dGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0YWJsZSBvZiBhdXRob3JpdGllcyIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5V
c2VkPSJ0cnVlIiBOYW1lPSJtYWNybyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJ0b2EgaGVhZGlu
ZyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxp
c3QgQnVsbGV0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgTnVtYmVyIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9Ikxpc3QgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IDMiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IEJ1bGxldCAyIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ikxpc3QgQnVsbGV0IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBCdWxsZXQgNCIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IEJ1bGxldCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ikxpc3QgTnVtYmVyIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBOdW1iZXIgMyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IE51bWJlciA0Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ikxpc3QgTnVtYmVyIDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iMTAiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlRpdGxlIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9IkNsb3NpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVu
PSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iU2lnbmF0dXJlIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjEiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJEZWZhdWx0IFBhcmFncmFwaCBGb250Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRl
eHQgSW5kZW50Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxpc3QgQ29udGludWUiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgTmFtZT0iTGlzdCBDb250aW51ZSAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9Ikxp
c3QgQ29udGludWUgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJMaXN0IENvbnRpbnVlIDQiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iTGlzdCBDb250aW51ZSA1Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9Ik1lc3NhZ2UgSGVhZGVyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJp
b3JpdHk9IjExIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJTdWJ0aXRsZSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJTYWx1dGF0aW9uIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkRhdGUiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgTmFtZT0iQm9keSBUZXh0IEZpcnN0IEluZGVudCIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBO
YW1lPSJCb2R5IFRleHQgRmlyc3QgSW5kZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTm90
ZSBIZWFkaW5nIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0i
dHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4dCAyIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9
InRydWUiIE5hbWU9IkJvZHkgVGV4dCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkJvZHkgVGV4
dCBJbmRlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCb2R5IFRleHQgSW5kZW50IDMiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iQmxvY2sgVGV4dCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJI
eXBlcmxpbmsiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iRm9sbG93ZWRIeXBlcmxpbmsiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjIiIFFGb3JtYXQ9InRydWUi
IE5hbWU9IlN0cm9uZyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSIyMCIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iRW1waGFzaXMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFt
ZT0iRG9jdW1lbnQgTWFwIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlBsYWluIFRleHQiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iRS1tYWlsIFNpZ25hdHVyZSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJIVE1MIFRvcCBvZiBGb3JtIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IkhUTUwgQm90dG9tIG9m
IEZvcm0iLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVl
IiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iTm9ybWFsIChXZWIpIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9IkhUTUwgQWNyb255bSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIEFkZHJl
c3MiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBDaXRlIi8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5h
bWU9IkhUTUwgQ29kZSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRk
ZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIERlZmluaXRpb24iLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iSFRNTCBLZXlib2FyZCIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1l
PSJIVE1MIFByZWZvcm1hdHRlZCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIFNhbXBsZSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJIVE1MIFR5cGV3cml0ZXIiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iSFRNTCBWYXJpYWJsZSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJOb3JtYWwgVGFibGUi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhp
ZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iYW5ub3RhdGlvbiBzdWJqZWN0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRy
dWUiIE5hbWU9Ik5vIExpc3QiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1p
SGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iT3V0bGluZSBMaXN0IDEi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhp
ZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iT3V0bGluZSBMaXN0IDIiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iT3V0bGluZSBMaXN0IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBT
ZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgU2ltcGxl
IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBV
bmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgU2ltcGxlIDIiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0iVGFibGUgU2ltcGxlIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ2xh
c3NpYyAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1
ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENsYXNzaWMgMiIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2Vk
PSJ0cnVlIiBOYW1lPSJUYWJsZSBDbGFzc2ljIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFi
bGUgQ2xhc3NpYyA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRl
bj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENvbG9yZnVsIDEiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVX
aGVuVXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgQ29sb3JmdWwgMiIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBO
YW1lPSJUYWJsZSBDb2xvcmZ1bCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIENvbHVt
bnMgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBDb2x1bW5zIDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgQ29sdW1ucyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxl
IENvbHVtbnMgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBDb2x1bW5zIDUiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVu
VXNlZD0idHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRh
YmxlIEdyaWQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBHcmlkIDMiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNl
ZD0idHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxl
IEdyaWQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRy
dWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBHcmlkIDYiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgR3JpZCA3Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIEdy
aWQgOCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0IDEiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1
ZSIgTmFtZT0iVGFibGUgTGlzdCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIg
U2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIExpc3Qg
MyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0IDQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIg
TmFtZT0iVGFibGUgTGlzdCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2Vt
aUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIExpc3QgNiIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBMaXN0IDciLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFt
ZT0iVGFibGUgTGlzdCA4Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhp
ZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIDNEIGVmZmVjdHMg
MSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVu
aGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSAzRCBlZmZlY3RzIDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgM0QgZWZmZWN0cyAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9IlRh
YmxlIENvbnRlbXBvcmFyeSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlI
aWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBFbGVnYW50Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRl
V2hlblVzZWQ9InRydWUiIE5hbWU9IlRhYmxlIFByb2Zlc3Npb25hbCIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJUYWJsZSBTdWJ0bGUgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBTdWJ0
bGUgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBXZWIgMSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVl
IiBOYW1lPSJUYWJsZSBXZWIgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNl
bWlIaWRkZW49InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJUYWJsZSBXZWIgMyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlIaWRkZW49InRydWUiIFVuaGlk
ZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCYWxsb29uIFRleHQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9IlRhYmxlIEdyaWQiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0i
dHJ1ZSIgTmFtZT0iVGFibGUgVGhlbWUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBOYW1lPSJQbGFjZWhvbGRlciBUZXh0Ii8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjEiIFFGb3JtYXQ9InRydWUiIE5hbWU9Ik5v
IFNwYWNpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAi
IE5hbWU9IkxpZ2h0IFNoYWRpbmciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iNjEiIE5hbWU9IkxpZ2h0IExpc3QiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdyaWQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIE5hbWU9Ik1lZGl1
bSBTaGFkaW5nIDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjUiIE5hbWU9Ik1lZGl1bSBMaXN0IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iNjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIE5hbWU9Ik1lZGl1bSBHcmlkIDEiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1bSBHcmlk
IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIE5hbWU9
Ik1lZGl1bSBHcmlkIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI3MSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgTmFtZT0iQ29sb3JmdWwgTGlzdCIvPg0KPHc6
THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwg
R3JpZCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgTmFt
ZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI2MSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgMSIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBBY2Nl
bnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgTmFt
ZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI2NCIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgMSIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVkaXVt
IExpc3QgMSBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFNlbWlI
aWRkZW49InRydWUiIE5hbWU9IlJldmlzaW9uIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjM0IiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJMaXN0IFBhcmFncmFwaCIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIyOSIgUUZvcm1hdD0i
dHJ1ZSIgTmFtZT0iUXVvdGUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iMzAiIFFGb3JtYXQ9InRydWUiIE5hbWU9IkludGVuc2UgUXVvdGUiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIg
QWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjci
IE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDEiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIE5hbWU9Ik1lZGl1bSBH
cmlkIDMgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgMSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgTmFtZT0iQ29s
b3JmdWwgTGlzdCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgTmFtZT0iTGlnaHQgU2hhZGluZyBBY2Nl
bnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgTmFt
ZT0iTGlnaHQgTGlzdCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBB
Y2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIg
TmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVkaXVtIExpc3QgMSBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgTmFtZT0iTWVkaXVt
IExpc3QgMiBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI2NyIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQg
MiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgTmFtZT0i
TWVkaXVtIEdyaWQgMyBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI3MCIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFj
Y2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBO
YW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjczIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCAyIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYwIiBOYW1lPSJMaWdodCBTaGFk
aW5nIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjYxIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBOYW1lPSJMaWdodCBHcmlkIEFjY2VudCAzIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBOYW1lPSJNZWRpdW0gU2hh
ZGluZyAxIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjY0IiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBOYW1lPSJNZWRpdW0gTGlzdCAxIEFjY2Vu
dCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBOYW1l
PSJNZWRpdW0gTGlzdCAyIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjY3IiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCAzIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBOYW1lPSJNZWRpdW0gR3JpZCAy
IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5
IiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDMiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIE5hbWU9IkNvbG9yZnVsIFNo
YWRpbmcgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzIiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDMi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIE5hbWU9Ikxp
Z2h0IFNoYWRpbmcgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQ
cmlvcml0eT0iNjEiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDQi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIE5hbWU9Ik1l
ZGl1bSBTaGFkaW5nIDEgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iNjQiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDQiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIE5hbWU9Ik1lZGl1bSBMaXN0
IDEgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NjYiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDQiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIE5hbWU9Ik1lZGl1
bSBHcmlkIDIgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNjkiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgNCIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgTmFtZT0iQ29s
b3JmdWwgU2hhZGluZyBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI3MiIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgNCIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgTmFtZT0iQ29sb3JmdWwgR3JpZCBB
Y2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIg
TmFtZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI2MSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgTmFtZT0iTGlnaHQgR3JpZCBB
Y2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIg
TmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgTmFtZT0iTWVk
aXVtIExpc3QgMSBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFBy
aW9yaXR5PSI2NiIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2Nl
bnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgTmFt
ZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI2OSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgTmFtZT0iRGFyayBMaXN0IEFj
Y2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBO
YW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCA1Ii8+DQo8
dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBOYW1lPSJDb2xvcmZ1
bCBHcmlkIEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjYwIiBOYW1lPSJMaWdodCBTaGFkaW5nIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYxIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCA2Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBOYW1lPSJMaWdo
dCBHcmlkIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjYzIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAxIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY0IiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFj
Y2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBO
YW1lPSJNZWRpdW0gTGlzdCAxIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjY2IiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCA2Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBOYW1lPSJNZWRpdW0gR3Jp
ZCAxIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjY4IiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCA2Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBOYW1lPSJEYXJr
IExpc3QgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNzEiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50
IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIE5hbWU9
IkNvbG9yZnVsIEdyaWQgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBQcmlvcml0eT0iMTkiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlN1YnRsZSBFbXBoYXNpcyIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIyMSIgUUZvcm1hdD0idHJ1
ZSIgTmFtZT0iSW50ZW5zZSBFbXBoYXNpcyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSIzMSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iU3VidGxlIFJlZmVyZW5jZSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzMiIgUUZvcm1hdD0i
dHJ1ZSIgTmFtZT0iSW50ZW5zZSBSZWZlcmVuY2UiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iMzMiIFFGb3JtYXQ9InRydWUiIE5hbWU9IkJvb2sgVGl0bGUiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzciIFNlbWlIaWRkZW49
InRydWUiIFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBOYW1lPSJCaWJsaW9ncmFwaHkiLz4NCjx3Okxz
ZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIFNlbWlIaWRkZW49InRydWUi
IFVuaGlkZVdoZW5Vc2VkPSJ0cnVlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJUT0MgSGVhZGluZyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0MSIgTmFtZT0iUGxh
aW4gVGFibGUgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0
MiIgTmFtZT0iUGxhaW4gVGFibGUgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2Ui
IFByaW9yaXR5PSI0MyIgTmFtZT0iUGxhaW4gVGFibGUgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NCIgTmFtZT0iUGxhaW4gVGFibGUgNCIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NSIgTmFtZT0iUGxhaW4gVGFibGUg
NSIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0MCIgTmFtZT0i
R3JpZCBUYWJsZSBMaWdodCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9y
aXR5PSI0NiIgTmFtZT0iR3JpZCBUYWJsZSAxIExpZ2h0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFibGUgMyIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iR3Jp
ZCBUYWJsZSA0Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUw
IiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iR3JpZCBUYWJsZSA2IENvbG9yZnVsIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcg
Q29sb3JmdWwiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYi
IE5hbWU9IkdyaWQgVGFibGUgMSBMaWdodCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIEFjY2VudCAxIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlk
IFRhYmxlIDMgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNDkiIE5hbWU9IkdyaWQgVGFibGUgNCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsgQWNj
ZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5h
bWU9IkdyaWQgVGFibGUgNiBDb2xvcmZ1bCBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJsZSA3IENvbG9yZnVsIEFj
Y2VudCAxIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBO
YW1lPSJHcmlkIFRhYmxlIDEgTGlnaHQgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDciIE5hbWU9IkdyaWQgVGFibGUgMiBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iR3JpZCBU
YWJsZSAzIEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjQ5IiBOYW1lPSJHcmlkIFRhYmxlIDQgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9IkdyaWQgVGFibGUgNSBEYXJrIEFjY2Vu
dCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1l
PSJHcmlkIFRhYmxlIDYgQ29sb3JmdWwgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9IkdyaWQgVGFibGUgNyBDb2xvcmZ1bCBBY2Nl
bnQgMiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFt
ZT0iR3JpZCBUYWJsZSAxIExpZ2h0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIgQWNjZW50IDMiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFi
bGUgMyBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI0OSIgTmFtZT0iR3JpZCBUYWJsZSA0IEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUwIiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayBBY2NlbnQg
MyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0i
R3JpZCBUYWJsZSA2IENvbG9yZnVsIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50
IDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9
IkdyaWQgVGFibGUgMSBMaWdodCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFtZT0iR3JpZCBUYWJsZSAyIEFjY2VudCA0Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJHcmlkIFRhYmxl
IDMgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NDkiIE5hbWU9IkdyaWQgVGFibGUgNCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tl
ZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iR3JpZCBUYWJsZSA1IERhcmsgQWNjZW50IDQi
Lz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikdy
aWQgVGFibGUgNiBDb2xvcmZ1bCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iR3JpZCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCA0
Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJH
cmlkIFRhYmxlIDEgTGlnaHQgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNDciIE5hbWU9IkdyaWQgVGFibGUgMiBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iR3JpZCBUYWJsZSAz
IEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5
IiBOYW1lPSJHcmlkIFRhYmxlIDQgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9
ImZhbHNlIiBQcmlvcml0eT0iNTAiIE5hbWU9IkdyaWQgVGFibGUgNSBEYXJrIEFjY2VudCA1Ii8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJHcmlk
IFRhYmxlIDYgQ29sb3JmdWwgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNTIiIE5hbWU9IkdyaWQgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgNSIv
Pg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iR3Jp
ZCBUYWJsZSAxIExpZ2h0IEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjQ3IiBOYW1lPSJHcmlkIFRhYmxlIDIgQWNjZW50IDYiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9IkdyaWQgVGFibGUgMyBB
Y2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIg
TmFtZT0iR3JpZCBUYWJsZSA0IEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJm
YWxzZSIgUHJpb3JpdHk9IjUwIiBOYW1lPSJHcmlkIFRhYmxlIDUgRGFyayBBY2NlbnQgNiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iR3JpZCBU
YWJsZSA2IENvbG9yZnVsIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjUyIiBOYW1lPSJHcmlkIFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDYiLz4N
Cjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3Qg
VGFibGUgMSBMaWdodCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI0NyIgTmFtZT0iTGlzdCBUYWJsZSAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFibGUgNCIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIgTmFtZT0iTGlzdCBUYWJsZSA1
IERhcmsiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5h
bWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1bCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFs
c2UiIFByaW9yaXR5PSI1MiIgTmFtZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIi8+DQo8dzpMc2RF
eGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJMaXN0IFRhYmxlIDEg
TGlnaHQgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNDciIE5hbWU9Ikxpc3QgVGFibGUgMiBBY2NlbnQgMSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIEFjY2VudCAxIi8+
DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0
IFRhYmxlIDQgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlv
cml0eT0iNTAiIE5hbWU9Ikxpc3QgVGFibGUgNSBEYXJrIEFjY2VudCAxIi8+DQo8dzpMc2RFeGNl
cHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29s
b3JmdWwgQWNjZW50IDEiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0
eT0iNTIiIE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgMSIvPg0KPHc6THNkRXhj
ZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iTGlzdCBUYWJsZSAxIExp
Z2h0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjQ3IiBOYW1lPSJMaXN0IFRhYmxlIDIgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikxpc3QgVGFibGUgMyBBY2NlbnQgMiIvPg0K
PHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iTGlzdCBU
YWJsZSA0IEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3Jp
dHk9IjUwIiBOYW1lPSJMaXN0IFRhYmxlIDUgRGFyayBBY2NlbnQgMiIvPg0KPHc6THNkRXhjZXB0
aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iTGlzdCBUYWJsZSA2IENvbG9y
ZnVsIEFjY2VudCAyIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9
IjUyIiBOYW1lPSJMaXN0IFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDIiLz4NCjx3OkxzZEV4Y2Vw
dGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3QgVGFibGUgMSBMaWdo
dCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0
NyIgTmFtZT0iTGlzdCBUYWJsZSAyIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2Vk
PSJmYWxzZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMgQWNjZW50IDMiLz4NCjx3
OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFi
bGUgNCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5
PSI1MCIgTmFtZT0iTGlzdCBUYWJsZSA1IERhcmsgQWNjZW50IDMiLz4NCjx3OkxzZEV4Y2VwdGlv
biBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1
bCBBY2NlbnQgMyIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1
MiIgTmFtZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCAzIi8+DQo8dzpMc2RFeGNlcHRp
b24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ2IiBOYW1lPSJMaXN0IFRhYmxlIDEgTGlnaHQg
QWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDci
IE5hbWU9Ikxpc3QgVGFibGUgMiBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0i
ZmFsc2UiIFByaW9yaXR5PSI0OCIgTmFtZT0iTGlzdCBUYWJsZSAzIEFjY2VudCA0Ii8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ5IiBOYW1lPSJMaXN0IFRhYmxl
IDQgQWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0i
NTAiIE5hbWU9Ikxpc3QgVGFibGUgNSBEYXJrIEFjY2VudCA0Ii8+DQo8dzpMc2RFeGNlcHRpb24g
TG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUxIiBOYW1lPSJMaXN0IFRhYmxlIDYgQ29sb3JmdWwg
QWNjZW50IDQiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTIi
IE5hbWU9Ikxpc3QgVGFibGUgNyBDb2xvcmZ1bCBBY2NlbnQgNCIvPg0KPHc6THNkRXhjZXB0aW9u
IExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NiIgTmFtZT0iTGlzdCBUYWJsZSAxIExpZ2h0IEFj
Y2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjQ3IiBO
YW1lPSJMaXN0IFRhYmxlIDIgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZh
bHNlIiBQcmlvcml0eT0iNDgiIE5hbWU9Ikxpc3QgVGFibGUgMyBBY2NlbnQgNSIvPg0KPHc6THNk
RXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0OSIgTmFtZT0iTGlzdCBUYWJsZSA0
IEFjY2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUw
IiBOYW1lPSJMaXN0IFRhYmxlIDUgRGFyayBBY2NlbnQgNSIvPg0KPHc6THNkRXhjZXB0aW9uIExv
Y2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MSIgTmFtZT0iTGlzdCBUYWJsZSA2IENvbG9yZnVsIEFj
Y2VudCA1Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjUyIiBO
YW1lPSJMaXN0IFRhYmxlIDcgQ29sb3JmdWwgQWNjZW50IDUiLz4NCjx3OkxzZEV4Y2VwdGlvbiBM
b2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDYiIE5hbWU9Ikxpc3QgVGFibGUgMSBMaWdodCBBY2Nl
bnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI0NyIgTmFt
ZT0iTGlzdCBUYWJsZSAyIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxz
ZSIgUHJpb3JpdHk9IjQ4IiBOYW1lPSJMaXN0IFRhYmxlIDMgQWNjZW50IDYiLz4NCjx3OkxzZEV4
Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNDkiIE5hbWU9Ikxpc3QgVGFibGUgNCBB
Y2NlbnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MCIg
TmFtZT0iTGlzdCBUYWJsZSA1IERhcmsgQWNjZW50IDYiLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2Nr
ZWQ9ImZhbHNlIiBQcmlvcml0eT0iNTEiIE5hbWU9Ikxpc3QgVGFibGUgNiBDb2xvcmZ1bCBBY2Nl
bnQgNiIvPg0KPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1MiIgTmFt
ZT0iTGlzdCBUYWJsZSA3IENvbG9yZnVsIEFjY2VudCA2Ii8+DQo8dzpMc2RFeGNlcHRpb24gTG9j
a2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVzZWQ9InRydWUiIE5hbWU9
Ik1lbnRpb24iLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBTZW1pSGlkZGVuPSJ0
cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iU21hcnQgSHlwZXJsaW5rIi8+DQo8dzpM
c2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgU2VtaUhpZGRlbj0idHJ1ZSIgVW5oaWRlV2hlblVz
ZWQ9InRydWUiIE5hbWU9Ikhhc2h0YWciLz4NCjx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNl
IiBTZW1pSGlkZGVuPSJ0cnVlIiBVbmhpZGVXaGVuVXNlZD0idHJ1ZSIgTmFtZT0iVW5yZXNvbHZl
ZCBNZW50aW9uIi8+DQo8L3c6TGF0ZW50U3R5bGVzPg0KPC94bWw+PCFbZW5kaWZdLS0+PHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDsNCgltc28tZm9u
dC1jaGFyc2V0OjA7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6cm9tYW47DQoJbXNvLWZvbnQt
cGl0Y2g6dmFyaWFibGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOi01MzY4NzAxNDUgMTEwNzMwNTcy
NyAwIDAgNDE1IDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpEZW5nWGlhbjsNCglwYW5v
c2UtMToyIDEgNiAwIDMgMSAxIDEgMSAxOw0KCW1zby1mb250LWFsdDrnrYnnur87DQoJbXNvLWZv
bnQtY2hhcnNldDoxMzQ7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6YXV0bzsNCgltc28tZm9u
dC1waXRjaDp2YXJpYWJsZTsNCgltc28tZm9udC1zaWduYXR1cmU6LTE2MTA2MTIwMzMgOTUzMTIy
MDQyIDIyIDAgMjYyMTU5IDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpDYWxpYnJpOw0K
CXBhbm9zZS0xOjIgMTUgNSAyIDIgMiA0IDMgMiA0Ow0KCW1zby1mb250LWNoYXJzZXQ6MDsNCglt
c28tZ2VuZXJpYy1mb250LWZhbWlseTpzd2lzczsNCgltc28tZm9udC1waXRjaDp2YXJpYWJsZTsN
Cgltc28tZm9udC1zaWduYXR1cmU6LTUzNjg1OTkwNSAtMTA3MzczMjQ4NSA5IDAgNTExIDA7fQ0K
QGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpDb25zb2xhczsNCglwYW5vc2UtMToyIDExIDYgOSAy
IDIgNCAzIDIgNDsNCgltc28tZm9udC1jaGFyc2V0OjA7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1p
bHk6bW9kZXJuOw0KCW1zby1mb250LXBpdGNoOmZpeGVkOw0KCW1zby1mb250LXNpZ25hdHVyZTot
NTM2ODY5MTIxIDY0NzY3IDEgMCA0MTUgMDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OuW+
rui9r+mbhem7kTsNCglwYW5vc2UtMToyIDExIDUgMyAyIDIgNCAyIDIgNDsNCgltc28tZm9udC1j
aGFyc2V0OjEzNDsNCgltc28tZ2VuZXJpYy1mb250LWZhbWlseTpzd2lzczsNCgltc28tZm9udC1w
aXRjaDp2YXJpYWJsZTsNCgltc28tZm9udC1zaWduYXR1cmU6LTIxNDc0ODMwMDEgNjg0NjcwMDMy
IDIyIDAgMjYyMTc1IDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseToiXEDnrYnnur8iOw0K
CXBhbm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAxIDE7DQoJbXNvLWZvbnQtYWx0OiJcQERlbmdYaWFu
IjsNCgltc28tZm9udC1jaGFyc2V0OjEzNDsNCgltc28tZ2VuZXJpYy1mb250LWZhbWlseTphdXRv
Ow0KCW1zby1mb250LXBpdGNoOmF1dG87DQoJbXNvLWZvbnQtc2lnbmF0dXJlOjAgMCAwIDAgMCAw
O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IlxA5b6u6L2v6ZuF6buRIjsNCgltc28tZm9u
dC1jaGFyc2V0OjEzNDsNCgltc28tZ2VuZXJpYy1mb250LWZhbWlseTpzd2lzczsNCgltc28tZm9u
dC1waXRjaDp2YXJpYWJsZTsNCgltc28tZm9udC1zaWduYXR1cmU6LTIxNDc0ODMwMDEgNjg0Njcw
MDMyIDIyIDAgMjYyMTc1IDA7fQ0KLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8NCnAuTXNvTm9ybWFs
LCBsaS5Nc29Ob3JtYWwsIGRpdi5Nc29Ob3JtYWwNCgl7bXNvLXN0eWxlLXVuaGlkZTpubzsNCglt
c28tc3R5bGUtcWZvcm1hdDp5ZXM7DQoJbXNvLXN0eWxlLXBhcmVudDoiIjsNCgltYXJnaW46MGNt
Ow0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsNCgltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47
DQoJZm9udC1zaXplOjExLjBwdDsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsc2Fucy1zZXJpZjsN
Cgltc28tZmFyZWFzdC1mb250LWZhbWlseTpEZW5nWGlhbjt9DQphOmxpbmssIHNwYW4uTXNvSHlw
ZXJsaW5rDQoJe21zby1zdHlsZS1ub3Nob3c6eWVzOw0KCW1zby1zdHlsZS1wcmlvcml0eTo5OTsN
Cgljb2xvcjpibHVlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7DQoJdGV4dC11bmRlcmxp
bmU6c2luZ2xlO30NCmE6dmlzaXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0KCXttc28t
c3R5bGUtbm9zaG93OnllczsNCgltc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6cHVycGxl
Ow0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7DQoJdGV4dC11bmRlcmxpbmU6c2luZ2xlO30N
CnAubXNvbm9ybWFsMCwgbGkubXNvbm9ybWFsMCwgZGl2Lm1zb25vcm1hbDANCgl7bXNvLXN0eWxl
LW5hbWU6bXNvbm9ybWFsOw0KCW1zby1zdHlsZS11bmhpZGU6bm87DQoJbXNvLW1hcmdpbi10b3At
YWx0OmF1dG87DQoJbWFyZ2luLXJpZ2h0OjBjbTsNCgltc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0
bzsNCgltYXJnaW4tbGVmdDowY207DQoJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOw0KCWZv
bnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7DQoJbXNv
LWZhcmVhc3QtZm9udC1mYW1pbHk6RGVuZ1hpYW47fQ0Kc3Bhbi5tNjUyNTI5MTI0OTg1NzU2MDU5
c3BlbGxlDQoJe21zby1zdHlsZS1uYW1lOm1fNjUyNTI5MTI0OTg1NzU2MDU5c3BlbGxlOw0KCW1z
by1zdHlsZS11bmhpZGU6bm87fQ0Kc3Bhbi5tNjUyNTI5MTI0OTg1NzU2MDU5Z21haWwtbTMwMTc2
NTg2NjY1NTk2NDEzOHNwZWxsZQ0KCXttc28tc3R5bGUtbmFtZTptXzY1MjUyOTEyNDk4NTc1NjA1
OWdtYWlsLW0zMDE3NjU4NjY2NTU5NjQxMzhzcGVsbGU7DQoJbXNvLXN0eWxlLXVuaGlkZTpubzt9
DQpzcGFuLkVtYWlsU3R5bGUyMA0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbC1yZXBseTsNCglt
c28tc3R5bGUtbm9zaG93OnllczsNCgltc28tc3R5bGUtdW5oaWRlOm5vOw0KCW1zby1hbnNpLWZv
bnQtc2l6ZToxMS4wcHQ7DQoJbXNvLWJpZGktZm9udC1zaXplOjExLjBwdDsNCglmb250LWZhbWls
eTpDb25zb2xhczsNCgltc28tYXNjaWktZm9udC1mYW1pbHk6Q29uc29sYXM7DQoJbXNvLWZhcmVh
c3QtZm9udC1mYW1pbHk65b6u6L2v6ZuF6buROw0KCW1zby1oYW5zaS1mb250LWZhbWlseTpDb25z
b2xhczsNCgltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsNCgljb2xvcjp3
aW5kb3d0ZXh0O30NCnNwYW4uU3BlbGxFDQoJe21zby1zdHlsZS1uYW1lOiIiOw0KCW1zby1zcGwt
ZTp5ZXM7fQ0KLk1zb0NocERlZmF1bHQNCgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7DQoJ
bXNvLWRlZmF1bHQtcHJvcHM6eWVzOw0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlm
Ow0KCW1zby1hc2NpaS1mb250LWZhbWlseTpDYWxpYnJpOw0KCW1zby1mYXJlYXN0LWZvbnQtZmFt
aWx5OkRlbmdYaWFuOw0KCW1zby1oYW5zaS1mb250LWZhbWlseTpDYWxpYnJpOw0KCW1zby1iaWRp
LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30NCkBwYWdlIFdvcmRTZWN0aW9uMQ0KCXtz
aXplOjYxMi4wcHQgNzkyLjBwdDsNCgltYXJnaW46NzIuMHB0IDkwLjBwdCA3Mi4wcHQgOTAuMHB0
Ow0KCW1zby1oZWFkZXItbWFyZ2luOjM2LjBwdDsNCgltc28tZm9vdGVyLW1hcmdpbjozNi4wcHQ7
DQoJbXNvLXBhcGVyLXNvdXJjZTowO30NCmRpdi5Xb3JkU2VjdGlvbjENCgl7cGFnZTpXb3JkU2Vj
dGlvbjE7fQ0KLS0+PC9zdHlsZT48IS0tW2lmIGd0ZSBtc28gMTBdPjxzdHlsZT4vKiBTdHlsZSBE
ZWZpbml0aW9ucyAqLw0KdGFibGUuTXNvTm9ybWFsVGFibGUNCgl7bXNvLXN0eWxlLW5hbWU6IlRh
YmxlIE5vcm1hbCI7DQoJbXNvLXRzdHlsZS1yb3diYW5kLXNpemU6MDsNCgltc28tdHN0eWxlLWNv
bGJhbmQtc2l6ZTowOw0KCW1zby1zdHlsZS1ub3Nob3c6eWVzOw0KCW1zby1zdHlsZS1wcmlvcml0
eTo5OTsNCgltc28tc3R5bGUtcGFyZW50OiIiOw0KCW1zby1wYWRkaW5nLWFsdDowY20gNS40cHQg
MGNtIDUuNHB0Ow0KCW1zby1wYXJhLW1hcmdpbjowY207DQoJbXNvLXBhcmEtbWFyZ2luLWJvdHRv
bTouMDAwMXB0Ow0KCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsNCglmb250LXNpemU6MTEu
MHB0Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0KCW1zby1hc2NpaS1mb250
LWZhbWlseTpDYWxpYnJpOw0KCW1zby1oYW5zaS1mb250LWZhbWlseTpDYWxpYnJpOw0KCW1zby1i
aWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30NCjwvc3R5bGU+PCFbZW5kaWZdLS0+
PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWRlZmF1bHRzIHY6ZXh0PSJlZGl0IiBz
cGlkbWF4PSIxMDI2IiAvPg0KPC94bWw+PCFbZW5kaWZdLS0+PCEtLVtpZiBndGUgbXNvIDldPjx4
bWw+DQo8bzpzaGFwZWxheW91dCB2OmV4dD0iZWRpdCI+DQo8bzppZG1hcCB2OmV4dD0iZWRpdCIg
ZGF0YT0iMSIgLz4NCjwvbzpzaGFwZWxheW91dD48L3htbD48IVtlbmRpZl0tLT4NCjwvaGVhZD4N
Cjxib2R5IGxhbmc9IkVOLVVTIiBsaW5rPSJibHVlIiB2bGluaz0icHVycGxlIiBzdHlsZT0idGFi
LWludGVydmFsOjM2LjBwdCI+DQo8ZGl2IGNsYXNzPSJXb3JkU2VjdGlvbjEiPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0
LWZvbnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1l
cyBOZXcgUm9tYW4mcXVvdDsiPkkgdGhpbmsgY3VycmVudGx5IHRoZSBhbnN3ZXIgaXMg4oCYWUVT
4oCZLiBXZSBjb3VsZCBub3QgbGluaw0KPHNwYW4gY2xhc3M9IlNwZWxsRSI+bGliYy5hPC9zcGFu
PjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxl
PSJmb250LWZhbWlseTpDb25zb2xhczttc28tZmFyZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xp
u5E7bXNvLWJpZGktZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij5kaXJl
Y3RseSBpbiBVbmlrcmFmdC4NCjxzcGFuIGNsYXNzPSJTcGVsbEUiPkxpYmMuYTwvc3Bhbj4gcmVx
dWlyZXMgc29tZSBkZXBlbmRlbmNpZXMgdGhhdDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIGNsYXNzPSJTcGVsbEUiPjxzcGFuIHN0eWxlPSJmb250LWZh
bWlseTpDb25zb2xhczttc28tZmFyZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7bXNvLWJp
ZGktZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij51bmlrcmFmdDwvc3Bh
bj48L3NwYW4+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzO21zby1mYXJlYXN0LWZv
bnQtZmFtaWx5OuW+rui9r+mbhem7kTttc28tYmlkaS1mb250LWZhbWlseTomcXVvdDtUaW1lcyBO
ZXcgUm9tYW4mcXVvdDsiPg0KIGRvZXNu4oCZdCBwcm92aWRlLjxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xh
czttc28tZmFyZWFzdC1mb250LWZhbWlseTrlvq7ova/pm4Xpu5E7bXNvLWJpZGktZm9udC1mYW1p
bHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48
L3A+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xpZCBibHVlIDEuNXB0
O3BhZGRpbmc6MGNtIDBjbSAwY20gNC4wcHQiPg0KPGRpdj4NCjxkaXYgc3R5bGU9ImJvcmRlcjpu
b25lO2JvcmRlci10b3A6c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBjbSAwY20g
MGNtIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiPjxzcGFuIHN0eWxlPSJtc28tZmFyZWFzdC1m
b250LWZhbWlseTomcXVvdDtUaW1lcyBOZXcgUm9tYW4mcXVvdDsiPkZyb206PC9zcGFuPjwvYj48
c3BhbiBzdHlsZT0ibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFu
JnF1b3Q7Ij4gQWpheSBHYXJnICZsdDthamF5Z2FyZ25zaXRAZ21haWwuY29tJmd0Ow0KPGJyPg0K
PGI+U2VudDo8L2I+IDIwMTg8L3NwYW4+PHNwYW4gbGFuZz0iWkgtQ04iIHN0eWxlPSJmb250LWZh
bWlseTomcXVvdDvlvq7ova/pm4Xpu5EmcXVvdDssc2Fucy1zZXJpZjttc28tYmlkaS1mb250LWZh
bWlseTrlvq7ova/pm4Xpu5EiPuW5tDwvc3Bhbj48c3BhbiBzdHlsZT0ibXNvLWZhcmVhc3QtZm9u
dC1mYW1pbHk6JnF1b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij40PC9zcGFuPjxzcGFuIGxhbmc9
IlpILUNOIiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q75b6u6L2v6ZuF6buRJnF1b3Q7LHNhbnMt
c2VyaWY7bXNvLWJpZGktZm9udC1mYW1pbHk65b6u6L2v6ZuF6buRIj7mnIg8L3NwYW4+PHNwYW4g
c3R5bGU9Im1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90
OyI+MTg8L3NwYW4+PHNwYW4gbGFuZz0iWkgtQ04iIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDvl
vq7ova/pm4Xpu5EmcXVvdDssc2Fucy1zZXJpZjttc28tYmlkaS1mb250LWZhbWlseTrlvq7ova/p
m4Xpu5EiPuaXpTwvc3Bhbj48c3BhbiBzdHlsZT0ibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6JnF1
b3Q7VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij4NCiAxMTo0NTxicj4NCjxiPlRvOjwvYj4gV2VpIENo
ZW4gJmx0O1dlaS5DaGVuQGFybS5jb20mZ3Q7PGJyPg0KPGI+Q2M6PC9iPiBtaW5pb3MtZGV2ZWxA
bGlzdHMueGVucHJvamVjdC5vcmc8YnI+DQo8Yj5TdWJqZWN0OjwvYj4gUmU6IFtNaW5pb3MtZGV2
ZWxdIFtVbmlrcmFmdF0gU3RhdGljIExpYnJhcmllcyBub3QgYmVpbmcgbGlua2VkIHByb3Blcmx5
PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+T2sgV2VpLCBnb3QgaXQgLi4uPGJyPg0KPGJyPg0KU28sIEkgYWRkZWQgJnF1
b3Q7L3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9saWJjLmEmcXVvdDsgYWxzbyBpbiAmcXVvdDtB
UFBDT1JFTUFSS19PQkpTLXkmcXVvdDssIGJ1dCB0aGUgbGlua2luZyBlcnJvcnMgc3RpbGwgcGVy
c2lzdC48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij5JIG5vdyBhc3N1bWUgdGhhdCBwcmUtY29tcGlsZWQgc3RhdGljIGxpYmMuYSBDQU5OT1QgYmUg
YWRkZWQgaW50byB1bmlrcmFmdCwgcmlnaHQ/PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxkaXY+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj5PbiBXZWQsIEFwciAxOCwgMjAxOCBhdCA5OjAxIEFNLCBXZWkgQ2hl
biAmbHQ7PGEgaHJlZj0ibWFpbHRvOldlaS5DaGVuQGFybS5jb20iIHRhcmdldD0iX2JsYW5rIj5X
ZWkuQ2hlbkBhcm0uY29tPC9hPiZndDsgd3JvdGU6PG86cD48L286cD48L3A+DQo8YmxvY2txdW90
ZSBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgI0NDQ0NDQyAxLjBwdDttc28t
Ym9yZGVyLWxlZnQtYWx0OnNvbGlkICNDQ0NDQ0MgLjc1cHQ7cGFkZGluZzowY20gMGNtIDBjbSA2
LjBwdDttYXJnaW4tbGVmdDo0LjhwdDttYXJnaW4tcmlnaHQ6MGNtIj4NCjxkaXY+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1t
YXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXMi
PkhpIEFqYXksPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5
bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48
c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXMiPiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpw
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNv
bnNvbGFzIj5JIHRoaW5rIHdlIGhhdmUgdG8gY2xhc3NpZnkgdGhlIHN0YXRpYy1wcmUtY29tcGls
ZWQgbGlicmFyaWVzLjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
IHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0
byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzIj5Gb3IgaW5zdGFuY2UsIGlmIHRo
ZSBzdGF0aWMtcHJlLWNvbXBpbGVkIGxpYnJhcnkgaXMgYSBtYXRoIGxpYnJhcnkuPC9zcGFuPjxv
OnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9w
LWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBzdHlsZT0iZm9udC1m
YW1pbHk6Q29uc29sYXMiPkl0IGp1c3QgZG9lcyBzb21lIE1hdGhlbWF0aWNhbCBDb21wdXRpbmcg
YW5kIGRvZXNu4oCZdCBkZXBlbmQgb248L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0
b20tYWx0OmF1dG8iPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhcyI+T3RoZXIgbGli
cmFyaWVzLiBJIHRoaW5rIHRoaXMgbWF0aCBsaWJyYXJ5IGNhbiBiZSBsaW5rIHRvPC9zcGFuPjxv
OnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9w
LWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBzdHlsZT0iZm9udC1m
YW1pbHk6Q29uc29sYXMiPlVuaWtyYWZ0LiBBbm90aGVyIGluc3RhbmNlLCBpZiB0aGUgc3RhdGlj
LXByZS1jb21waWxlZCBsaWJyYXJ5PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9t
LWFsdDphdXRvIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXMiPmRlcGVuZHMgb24g
b3RoZXIgbGlicmFyaWVzLiBZb3UgaGF2ZSB0byBndWFyYW50ZWUgdGhlIGRlcGVuZGVudDwvc3Bh
bj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2lu
LXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZv
bnQtZmFtaWx5OkNvbnNvbGFzIj5saWJyYXJpZXMgYXJlIGluIHRoZSBVbmlrcmFmdCBsaWJyYXJ5
IHBvb2wuPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3Bh
biBzdHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXMiPiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwv
cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bztt
c28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNv
bGFzIj5JbiB5b3VyIGNhc2UsIHRoZQ0KPC9zcGFuPi88c3BhbiBjbGFzcz0ibTY1MjUyOTEyNDk4
NTc1NjA1OXNwZWxsZSI+dXNyPC9zcGFuPi9saWIveDg2XzY0LWxpbnV4LWdudS88c3BhbiBjbGFz
cz0ibTY1MjUyOTEyNDk4NTc1NjA1OXNwZWxsZSI+bGlicnQuYTwvc3Bhbj4gYW5kIC88c3BhbiBj
bGFzcz0ibTY1MjUyOTEyNDk4NTc1NjA1OXNwZWxsZSI+dXNyPC9zcGFuPi9saWIveDg2XzY0LWxp
bnV4LWdudS88c3BhbiBjbGFzcz0ibTY1MjUyOTEyNDk4NTc1NjA1OXNwZWxsZSI+bGlicHRocmVh
ZC5hPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1z
by1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBz
dHlsZT0iZm9udC1mYW1pbHk6Q29uc29sYXMiPndvdWxkIGxpbmsgdG8NCjxzcGFuIGNsYXNzPSJt
NjUyNTI5MTI0OTg1NzU2MDU5c3BlbGxlIj5saWJjLmE8L3NwYW4+IHRvIHNvbHZlIHRoZWlyIGxp
bmsgZGVwZW5kZW5jaWVzLiBCdXQgdGhlDQo8c3BhbiBjbGFzcz0ibTY1MjUyOTEyNDk4NTc1NjA1
OXNwZWxsZSI+bm9saWJjPC9zcGFuPjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRv
bS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzIj5JbiBVbmlrcmFm
dCBpcyBqdXN0IGEgc3Vic2V0IG9mDQo8c3BhbiBjbGFzcz0ibTY1MjUyOTEyNDk4NTc1NjA1OXNw
ZWxsZSI+bGliYy5hPC9zcGFuPjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1h
bHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzIj4mbmJzcDs8L3NwYW4+
PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIHN0eWxlPSJmb250
LWZhbWlseTpDb25zb2xhcyI+UmVnYXJkcyw8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1i
b3R0b20tYWx0OmF1dG8iPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhcyI+V2VpIENo
ZW48L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNv
LW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPjxzcGFuIHN0
eWxlPSJmb250LWZhbWlseTpDb25zb2xhcyI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0K
PGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgYmx1ZSAxLjVwdDtwYWRk
aW5nOjBjbSAwY20gMGNtIDQuMHB0Ij4NCjxkaXY+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTti
b3JkZXItdG9wOnNvbGlkICNFMUUxRTEgMS4wcHQ7cGFkZGluZzozLjBwdCAwY20gMGNtIDBjbSI+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNv
LW1hcmdpbi1ib3R0b20tYWx0OmF1dG87bXNvLW91dGxpbmUtbGV2ZWw6MSI+DQo8Yj5Gcm9tOjwv
Yj4gQWpheSBHYXJnICZsdDs8YSBocmVmPSJtYWlsdG86YWpheWdhcmduc2l0QGdtYWlsLmNvbSIg
dGFyZ2V0PSJfYmxhbmsiPmFqYXlnYXJnbnNpdEBnbWFpbC5jb208L2E+Jmd0Ow0KPGJyPg0KPGI+
U2VudDo8L2I+IDIwMTg8c3BhbiBsYW5nPSJaSC1DTiIgc3R5bGU9ImZvbnQtZmFtaWx5OkRlbmdY
aWFuO21zby1hc2NpaS1mb250LWZhbWlseTpBcmlhbDttc28tZmFyZWFzdC1mb250LWZhbWlseTpE
ZW5nWGlhbjttc28taGFuc2ktZm9udC1mYW1pbHk6QXJpYWw7bXNvLWJpZGktZm9udC1mYW1pbHk6
QXJpYWwiPuW5tDwvc3Bhbj40PHNwYW4gbGFuZz0iWkgtQ04iIHN0eWxlPSJmb250LWZhbWlseTpE
ZW5nWGlhbjttc28tYXNjaWktZm9udC1mYW1pbHk6QXJpYWw7bXNvLWZhcmVhc3QtZm9udC1mYW1p
bHk6RGVuZ1hpYW47bXNvLWhhbnNpLWZvbnQtZmFtaWx5OkFyaWFsO21zby1iaWRpLWZvbnQtZmFt
aWx5OkFyaWFsIj7mnIg8L3NwYW4+MTg8c3BhbiBsYW5nPSJaSC1DTiIgc3R5bGU9ImZvbnQtZmFt
aWx5OkRlbmdYaWFuO21zby1hc2NpaS1mb250LWZhbWlseTpBcmlhbDttc28tZmFyZWFzdC1mb250
LWZhbWlseTpEZW5nWGlhbjttc28taGFuc2ktZm9udC1mYW1pbHk6QXJpYWw7bXNvLWJpZGktZm9u
dC1mYW1pbHk6QXJpYWwiPuaXpTwvc3Bhbj4NCiAxMToxNzxicj4NCjxiPlRvOjwvYj4gV2VpIENo
ZW4gJmx0OzxhIGhyZWY9Im1haWx0bzpXZWkuQ2hlbkBhcm0uY29tIiB0YXJnZXQ9Il9ibGFuayI+
V2VpLkNoZW5AYXJtLmNvbTwvYT4mZ3Q7PGJyPg0KPGI+Q2M6PC9iPiA8YSBocmVmPSJtYWlsdG86
bWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnIiB0YXJnZXQ9Il9ibGFuayI+bWluaW9z
LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnPC9hPjxicj4NCjxiPlN1YmplY3Q6PC9iPiBSZTog
W01pbmlvcy1kZXZlbF0gW1VuaWtyYWZ0XSBTdGF0aWMgTGlicmFyaWVzIG5vdCBiZWluZyBsaW5r
ZWQgcHJvcGVybHk8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20t
YWx0OmF1dG8iPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRp
dj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4t
dG9wLWFsdDphdXRvO21hcmdpbi1ib3R0b206MTIuMHB0Ij5IaSBXZWkuPG86cD48L286cD48L3A+
DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6
YXV0bzttYXJnaW4tYm90dG9tOjEyLjBwdCI+VGhhbmtzIGZvciB0aGUgaGVscC48bzpwPjwvbzpw
PjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i
bXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bWFyZ2luLWJvdHRvbToxMi4wcHQiPkFjdHVhbGx5LCBt
eSBvcmlnaW5hbCBxdWVyeSBpcyBob3cgdG8gbGluayBwcmUtY29tcGlsZWQgKHN0YXRpYykgbGli
cmFyaWVzIGluIHVuaWtyYWZ0PzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2
Pg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10
b3AtYWx0OmF1dG87bWFyZ2luLWJvdHRvbToxMi4wcHQiPkkgdHJpZWQgYXMgcGVyIHRoZSBkb2N1
bWVudGF0aW9uIGF0DQo8YnI+DQo8YSBocmVmPSJodHRwOi8veGVuYml0cy54ZW4ub3JnL2dpdHdl
Yi8/cD11bmlrcmFmdC91bmlrcmFmdC5naXQ7YT1ibG9iO2Y9ZG9jL2d1aWRlcy9kZXZlbG9wZXJz
LWFwcC5yc3Q7aD00NWQ5YmQ1YjJiYjEwYjNkMDQxMzVkNjZiNTE2MmE1OWQ1NGRjMmI2O2hiPUhF
QUQjbDE2MyIgdGFyZ2V0PSJfYmxhbmsiPmh0dHA6Ly94ZW5iaXRzLnhlbi5vcmcvZ2l0d2ViLz9w
PXVuaWtyYWZ0L3VuaWtyYWZ0LmdpdDthPWJsb2I7Zj1kb2MvZ3VpZGVzL2RldmVsb3BlcnMtYXBw
LnJzdDtoPTQ1ZDliZDViMmJiMTBiM2QwNDEzNWQ2NmI1MTYyYTU5ZDU0ZGMyYjY7aGI9SEVBRCNs
MTYzPC9hPg0KPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8ZGl2Pg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttYXJnaW4tYm90dG9tOjEyLjBwdCI+YnV0IHRoZSBsaWJyYXJpZXMgZG8gbm90IHJlc29sdmUg
bGlua2luZyBwcm9ibGVtcy48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4N
CjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9w
LWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj5PciBhbSBJIHVuZGVyc3RhbmRp
bmcgaXQgaW5jb3JyZWN0bHk/IENhbiBwcmUtY29tcGlsZWQgc3RhdGljIGxpYnJhcmllcyBiZSBp
bnRlZ3JhdGVkL2xpbmtlZCBhdCBhbGwgaW4gdW5pa3JhZnQ/PG86cD48L286cD48L3A+DQo8ZGl2
Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl
PSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttYXJnaW4tYm90dG9tOjEyLjBwdCI+Jm5ic3A7PG86
cD48L286cD48L3A+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFs
dDphdXRvIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPk9uIFdlZCwgQXByIDE4LCAyMDE4IGF0IDc6NDggQU0sIFdlaSBDaGVuICZsdDs8YSBocmVm
PSJtYWlsdG86V2VpLkNoZW5AYXJtLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPldlaS5DaGVuQGFybS5j
b208L2E+Jmd0OyB3cm90ZTo8bzpwPjwvbzpwPjwvcD4NCjxibG9ja3F1b3RlIHN0eWxlPSJib3Jk
ZXI6bm9uZTtib3JkZXItbGVmdDpzb2xpZCAjQ0NDQ0NDIDEuMHB0O3BhZGRpbmc6MGNtIDBjbSAw
Y20gNi4wcHQ7bWFyZ2luLWxlZnQ6NC44cHQ7bWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tcmlnaHQ6
MGNtO21hcmdpbi1ib3R0b206NS4wcHQiPg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0
OmF1dG8iPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDb25zb2xhcyI+QnV0IHRoZQ0KPHNwYW4g
Y2xhc3M9Im02NTI1MjkxMjQ5ODU3NTYwNTlnbWFpbC1tMzAxNzY1ODY2NjU1OTY0MTM4c3BlbGxl
Ij5jbG9ja19nZXR0aW1lPC9zcGFuPiBoYXNu4oCZdCBiZWVuIGltcGxlbWVudGVkIGluDQo8c3Bh
biBjbGFzcz0ibTY1MjUyOTEyNDk4NTc1NjA1OWdtYWlsLW0zMDE3NjU4NjY2NTU5NjQxMzhzcGVs
bGUiPm5vbGliYzwvc3Bhbj4gb3INCjxzcGFuIGNsYXNzPSJtNjUyNTI5MTI0OTg1NzU2MDU5Z21h
aWwtbTMwMTc2NTg2NjY1NTk2NDEzOHNwZWxsZSI+bGlidGltZTwvc3Bhbj4uPC9zcGFuPjxvOnA+
PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFs
dDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBzdHlsZT0iZm9udC1mYW1p
bHk6Q29uc29sYXMiPklmIHlvdXIgYXBwbGljYXRpb24ganVzdCB1c2VzIHRoaXMgZnVuY3Rpb24g
dG8gcHJpbnQNCjxzcGFuIGNsYXNzPSJtNjUyNTI5MTI0OTg1NzU2MDU5Z21haWwtbTMwMTc2NTg2
NjY1NTk2NDEzOHNwZWxsZSI+dGltZXN0YW1wZTwvc3Bhbj4sIHlvdTwvc3Bhbj48bzpwPjwvbzpw
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0
bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNv
bnNvbGFzIj5jYW4gaW1wbGVtZW50IGEgZHVtbXkgZnVuY3Rpb24gaW4geW91ciBjb2RlIGluIHRo
aXMgdGltZSB0byBwYXNzIHRoZTwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1h
bHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNvbnNvbGFzIj5saW5raW5nLjwvc3Bh
bj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2lu
LXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImZv
bnQtZmFtaWx5OkNvbnNvbGFzIj4mbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8L2Rpdj4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28t
bWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwv
YmxvY2txdW90ZT4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJn
aW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48YnI+DQo8YnIgY2xl
YXI9ImFsbCI+DQo8YnI+DQotLSA8bzpwPjwvbzpwPjwvcD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20t
YWx0OmF1dG8iPlJlZ2FyZHMsPGJyPg0KQWpheTxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rp
dj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2
Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+SU1QT1JUQU5UIE5PVElDRTogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZW1h
aWwgYW5kIGFueSBhdHRhY2htZW50cyBhcmUgY29uZmlkZW50aWFsIGFuZCBtYXkgYWxzbyBiZSBw
cml2aWxlZ2VkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50LCBwbGVhc2Ug
bm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRvIG5vdCBkaXNjbG9zZSB0aGUgY29u
dGVudHMgdG8gYW55IG90aGVyIHBlcnNvbiwNCiB1c2UgaXQgZm9yIGFueSBwdXJwb3NlLCBvciBz
dG9yZSBvciBjb3B5IHRoZSBpbmZvcm1hdGlvbiBpbiBhbnkgbWVkaXVtLiBUaGFuayB5b3UuDQo8
bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0KPC9kaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48YnI+DQo8YnIgY2xlYXI9ImFsbCI+DQo8YnI+DQotLSA8bzpwPjwvbzpwPjwv
cD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5SZWdhcmRzLDxicj4NCkFqYXk8bzpwPjwv
bzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KSU1QT1JUQU5UIE5PVElD
RTogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBhcmUgY29u
ZmlkZW50aWFsIGFuZCBtYXkgYWxzbyBiZSBwcml2aWxlZ2VkLiBJZiB5b3UgYXJlIG5vdCB0aGUg
aW50ZW5kZWQgcmVjaXBpZW50LCBwbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkg
YW5kIGRvIG5vdCBkaXNjbG9zZSB0aGUgY29udGVudHMgdG8gYW55IG90aGVyIHBlcnNvbiwgdXNl
IGl0IGZvciBhbnkgcHVycG9zZSwNCiBvciBzdG9yZSBvciBjb3B5IHRoZSBpbmZvcm1hdGlvbiBp
biBhbnkgbWVkaXVtLiBUaGFuayB5b3UuDQo8L2JvZHk+DQo8L2h0bWw+DQo=

--_000_DB3PR08MB01070E552363DEAC8D43548D9EB60DB3PR08MB0107eurp_--


--===============7463671204805206048==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============7463671204805206048==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 18 04:34:39 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 04:34:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8enm-0002Ev-NG; Wed, 18 Apr 2018 04:34:38 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ikyy=hh=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1f8enk-0002Eq-U7
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 04:34:37 +0000
X-Inumbo-ID: a831b16c-42c1-11e8-9728-bc764e045a96
Received: from mail-lf0-x232.google.com (unknown [2a00:1450:4010:c07::232])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id a831b16c-42c1-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 06:33:36 +0200 (CEST)
Received: by mail-lf0-x232.google.com with SMTP id b23-v6so593562lfg.4
 for <minios-devel@lists.xenproject.org>; Tue, 17 Apr 2018 21:34:34 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=4GZQCj3AP3DM29oEFMfrrROSk5GmuxJMuPBaL3rrHWE=;
 b=iknrptqyXGjl6VId0xQNmyimsbzqYKSeAyWMMhXqAHyrCJ27roQ1LmjTPe+ioh0ca4
 ZL/iBbviLIYQQ4Ljd/E3Am8nxWkoWcvDey5+9tUlJKg7ZuZGWIxNRIoEwivn8plBJ4vL
 XsVzT80wazqR1PhLFdAtUbrYR5QYsetgNwrFOvNX70KLJXZ/qQya2DfcUl9N3UumPyCo
 T+E+K+3TjDEFFt+EYE0U1dKE6dp8MiR4RBoriHLwdnsSQEjj2dqcOiHACNdom7XQJii/
 WEwDl58X8Qx6HprfwbXGD8u939o8/KuvqlpPMQId7Ku2Q8f2eewNau786TRoqwFf9C8B
 4VSw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=4GZQCj3AP3DM29oEFMfrrROSk5GmuxJMuPBaL3rrHWE=;
 b=k3dWHTVlyn61MQjJ4eQYdrkB+4TEF+hg3njFbioc5OlkIPtkImbeKMA8Q39eKLhelX
 U0Voq9eHf2tGH4zKXzE6Ssy5f04VHMq0g6hm9aHmFXrqUHL0l4Zx9MVUEnOiEd/Xgpo5
 VQ7yGK4+hSB1flCAEy3m6YNNLyxRIRJvWj69Hv0zNO1Yo4gtix0BB3XSGRX0AmfDRrOW
 9dBjdeyDMMo3kc6g18JEN83csGHamOdA8nzh+i2paDmjZxtHUDWsDbZxZmv9EE9Cj9gg
 w7n/0oEApaI/LKvC66gXr8UfVDk5lZVWA5t8PCeUsZcIxtIvEaP0aTY9uoXwuSgMgZWx
 KNOA==
X-Gm-Message-State: ALQs6tCesG6we2gDbA6HgRvBGi8XaKw1dD4dmfvxgW+JFhCOWYh7xPCG
 bPYR8FygrrjR2OcBWR+tGA7GXJwDOmApXc0GS+8=
X-Google-Smtp-Source: AIpwx4/U0ppUkZdOAoxyBRGp+hOiSWSkiwfkZZLB69+An3+mSAfvfCgNPeQx2LxRzzlkzFVglJnCaZ0YcvvLdaeRzd8=
X-Received: by 10.46.9.65 with SMTP id 62mr278491ljj.33.1524026073359; Tue, 17
 Apr 2018 21:34:33 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:d899:0:0:0:0:0 with HTTP; Tue, 17 Apr 2018 21:34:32
 -0700 (PDT)
In-Reply-To: <DB3PR08MB01070E552363DEAC8D43548D9EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
 <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
 <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
 <CAHP4M8VSHMD5wK1bytCyGThnPyhbDxk0RKJw2DmJToFF+j3p1A@mail.gmail.com>
 <DB3PR08MB010767D001F98AB4539BECF29EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <DB3PR08MB010710D1E5A6E8A9C2EE49499EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <CAHP4M8V17pwNUkma_n5AzNyiTqD1uSwQFEFBx40Sf4hZjPdWzw@mail.gmail.com>
 <DB3PR08MB010772BBCBCC07EF035C65149EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <CAHP4M8W03Ci4ZhcuPuDnDDzypty_5up_iQgu_8VbM8PqueNKRQ@mail.gmail.com>
 <DB3PR08MB01070E552363DEAC8D43548D9EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Wed, 18 Apr 2018 10:04:32 +0530
Message-ID: <CAHP4M8U4ZfR8WxZX=Hhd9pOX8Y6ZhGVPdPQ1gQdK+1jdzBtnAg@mail.gmail.com>
To: Wei Chen <Wei.Chen@arm.com>
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Content-Type: multipart/mixed; boundary="===============8282302124909874894=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============8282302124909874894==
Content-Type: multipart/alternative; boundary="001a114b0b08bb2c43056a17f81d"

--001a114b0b08bb2c43056a17f81d
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Ok, thanks Wei for the clarification ..

On Wed, Apr 18, 2018 at 9:59 AM, Wei Chen <Wei.Chen@arm.com> wrote:

> I think currently the answer is =E2=80=98YES=E2=80=99. We could not link =
libc.a
>
> directly in Unikraft. Libc.a requires some dependencies that
>
> unikraft doesn=E2=80=99t provide.
>
>
>
> *From:* Ajay Garg <ajaygargnsit@gmail.com>
> *Sent:* 2018=E5=B9=B44=E6=9C=8818=E6=97=A5 11:45
>
> *To:* Wei Chen <Wei.Chen@arm.com>
> *Cc:* minios-devel@lists.xenproject.org
> *Subject:* Re: [Minios-devel] [Unikraft] Static Libraries not being
> linked properly
>
>
>
> Ok Wei, got it ...
>
> So, I added "/usr/lib/x86_64-linux-gnu/libc.a" also in
> "APPCOREMARK_OBJS-y", but the linking errors still persist.
>
> I now assume that pre-compiled static libc.a CANNOT be added into
> unikraft, right?
>
>
>
> On Wed, Apr 18, 2018 at 9:01 AM, Wei Chen <Wei.Chen@arm.com> wrote:
>
> Hi Ajay,
>
>
>
> I think we have to classify the static-pre-compiled libraries.
>
> For instance, if the static-pre-compiled library is a math library.
>
> It just does some Mathematical Computing and doesn=E2=80=99t depend on
>
> Other libraries. I think this math library can be link to
>
> Unikraft. Another instance, if the static-pre-compiled library
>
> depends on other libraries. You have to guarantee the dependent
>
> libraries are in the Unikraft library pool.
>
>
>
> In your case, the /usr/lib/x86_64-linux-gnu/librt.a and /usr
> /lib/x86_64-linux-gnu/libpthread.a
>
> would link to libc.a to solve their link dependencies. But the nolibc
>
> In Unikraft is just a subset of libc.a
>
>
>
> Regards,
>
> Wei Chen
>
>
>
> *From:* Ajay Garg <ajaygargnsit@gmail.com>
> *Sent:* 2018=E5=B9=B44=E6=9C=8818=E6=97=A5 11:17
> *To:* Wei Chen <Wei.Chen@arm.com>
> *Cc:* minios-devel@lists.xenproject.org
> *Subject:* Re: [Minios-devel] [Unikraft] Static Libraries not being
> linked properly
>
>
>
> Hi Wei.
>
> Thanks for the help.
>
> Actually, my original query is how to link pre-compiled (static) librarie=
s
> in unikraft?
>
> I tried as per the documentation at
> http://xenbits.xen.org/gitweb/?p=3Dunikraft/unikraft.git;a=3D
> blob;f=3Ddoc/guides/developers-app.rst;h=3D45d9bd5b2bb10b3d04135d66b5162a
> 59d54dc2b6;hb=3DHEAD#l163
>
> but the libraries do not resolve linking problems.
>
> Or am I understanding it incorrectly? Can pre-compiled static libraries b=
e
> integrated/linked at all in unikraft?
>
>
>
>
>
> On Wed, Apr 18, 2018 at 7:48 AM, Wei Chen <Wei.Chen@arm.com> wrote:
>
> But the clock_gettime hasn=E2=80=99t been implemented in nolibc or libtim=
e.
>
> If your application just uses this function to print timestampe, you
>
> can implement a dummy function in your code in this time to pass the
>
> linking.
>
>
>
>
>
>
>
>
> --
>
> Regards,
> Ajay
>
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy th=
e
> information in any medium. Thank you.
>
>
>
>
> --
>
> Regards,
> Ajay
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy th=
e
> information in any medium. Thank you.
>



--=20
Regards,
Ajay

--001a114b0b08bb2c43056a17f81d
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Ok, thanks Wei for the clarification ..<br></div><div clas=
s=3D"gmail_extra"><br><div class=3D"gmail_quote">On Wed, Apr 18, 2018 at 9:=
59 AM, Wei Chen <span dir=3D"ltr">&lt;<a href=3D"mailto:Wei.Chen@arm.com" t=
arget=3D"_blank">Wei.Chen@arm.com</a>&gt;</span> wrote:<br><blockquote clas=
s=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;pad=
ding-left:1ex">







<div link=3D"blue" vlink=3D"purple" lang=3D"EN-US">
<div class=3D"m_-2484819899938714087WordSection1">
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">I think current=
ly the answer is =E2=80=98YES=E2=80=99. We could not link
<span class=3D"m_-2484819899938714087SpellE">libc.a</span><u></u><u></u></s=
pan></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">directly in Uni=
kraft.
<span class=3D"m_-2484819899938714087SpellE">Libc.a</span> requires some de=
pendencies that<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span class=3D"m_-2484819899938714087SpellE"><span s=
tyle=3D"font-family:Consolas">unikraft</span></span><span style=3D"font-fam=
ily:Consolas">
 doesn=E2=80=99t provide.<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas"><u></u>=C2=A0<u=
></u></span></p>
<div style=3D"border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm =
4.0pt">
<div>
<div style=3D"border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal"><b><span>From:</span></b><span> Ajay Garg &lt;<a hre=
f=3D"mailto:ajaygargnsit@gmail.com" target=3D"_blank">ajaygargnsit@gmail.co=
m</a>&gt;
<br>
<b>Sent:</b> 2018</span><span style=3D"font-family:&quot;\005fae\008f6f\009=
6c5\009ed1&quot;,sans-serif" lang=3D"ZH-CN">=E5=B9=B4</span><span>4</span><=
span style=3D"font-family:&quot;\005fae\008f6f\0096c5\009ed1&quot;,sans-ser=
if" lang=3D"ZH-CN">=E6=9C=88</span><span>18</span><span style=3D"font-famil=
y:&quot;\005fae\008f6f\0096c5\009ed1&quot;,sans-serif" lang=3D"ZH-CN">=E6=
=97=A5</span><span>
 11:45</span></p><div><div class=3D"h5"><br>
<b>To:</b> Wei Chen &lt;<a href=3D"mailto:Wei.Chen@arm.com" target=3D"_blan=
k">Wei.Chen@arm.com</a>&gt;<br>
<b>Cc:</b> <a href=3D"mailto:minios-devel@lists.xenproject.org" target=3D"_=
blank">minios-devel@lists.xenproject.<wbr>org</a><br>
<b>Subject:</b> Re: [Minios-devel] [Unikraft] Static Libraries not being li=
nked properly<u></u><u></u></div></div><p></p>
</div>
</div><div><div class=3D"h5">
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<div>
<div>
<p class=3D"MsoNormal">Ok Wei, got it ...<br>
<br>
So, I added &quot;/usr/lib/x86_64-linux-gnu/<wbr>libc.a&quot; also in &quot=
;APPCOREMARK_OBJS-y&quot;, but the linking errors still persist.<u></u><u><=
/u></p>
</div>
</div>
<p class=3D"MsoNormal">I now assume that pre-compiled static libc.a CANNOT =
be added into unikraft, right?<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal">On Wed, Apr 18, 2018 at 9:01 AM, Wei Chen &lt;<a hre=
f=3D"mailto:Wei.Chen@arm.com" target=3D"_blank">Wei.Chen@arm.com</a>&gt; wr=
ote:<u></u><u></u></p>
<blockquote style=3D"border:none;border-left:solid #cccccc 1.0pt;padding:0c=
m 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Hi Ajay,</span>=
<u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">=C2=A0</span><u=
></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">I think we have=
 to classify the static-pre-compiled libraries.</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">For instance, i=
f the static-pre-compiled library is a math library.</span><u></u><u></u></=
p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">It just does so=
me Mathematical Computing and doesn=E2=80=99t depend on</span><u></u><u></u=
></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Other libraries=
. I think this math library can be link to</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Unikraft. Anoth=
er instance, if the static-pre-compiled library</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">depends on othe=
r libraries. You have to guarantee the dependent</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">libraries are i=
n the Unikraft library pool.</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">=C2=A0</span><u=
></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">In your case, t=
he
</span>/<span class=3D"m_-2484819899938714087m652529124985756059spelle">usr=
</span>/lib/x86_64-linux-gnu/<span class=3D"m_-2484819899938714087m65252912=
4985756059spelle">libr<wbr>t.a</span> and /<span class=3D"m_-24848198999387=
14087m652529124985756059spelle">usr</span>/lib/x86_64-linux-gnu/<span class=
=3D"m_-2484819899938714087m652529124985756059spelle">libp<wbr>thread.a</spa=
n><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">would link to
<span class=3D"m_-2484819899938714087m652529124985756059spelle">libc.a</spa=
n> to solve their link dependencies. But the
<span class=3D"m_-2484819899938714087m652529124985756059spelle">nolibc</spa=
n></span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">In Unikraft is =
just a subset of
<span class=3D"m_-2484819899938714087m652529124985756059spelle">libc.a</spa=
n></span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">=C2=A0</span><u=
></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Regards,</span>=
<u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">Wei Chen</span>=
<u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">=C2=A0</span><u=
></u><u></u></p>
<div style=3D"border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm =
4.0pt">
<div>
<div style=3D"border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal">
<b>From:</b> Ajay Garg &lt;<a href=3D"mailto:ajaygargnsit@gmail.com" target=
=3D"_blank">ajaygargnsit@gmail.com</a>&gt;
<br>
<b>Sent:</b> 2018<span style=3D"font-family:DengXian" lang=3D"ZH-CN">=E5=B9=
=B4</span>4<span style=3D"font-family:DengXian" lang=3D"ZH-CN">=E6=9C=88</s=
pan>18<span style=3D"font-family:DengXian" lang=3D"ZH-CN">=E6=97=A5</span>
 11:17<br>
<b>To:</b> Wei Chen &lt;<a href=3D"mailto:Wei.Chen@arm.com" target=3D"_blan=
k">Wei.Chen@arm.com</a>&gt;<br>
<b>Cc:</b> <a href=3D"mailto:minios-devel@lists.xenproject.org" target=3D"_=
blank">minios-devel@lists.xenproject.<wbr>org</a><br>
<b>Subject:</b> Re: [Minios-devel] [Unikraft] Static Libraries not being li=
nked properly<u></u><u></u></p>
</div>
</div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
<div>
<div>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">Hi Wei.<u></u><u></u>=
</p>
</div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">Thanks for the help.<=
u></u><u></u></p>
</div>
<div>
<div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">Actually, my original=
 query is how to link pre-compiled (static) libraries in unikraft?<u></u><u=
></u></p>
</div>
</div>
</div>
<div>
<div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">I tried as per the do=
cumentation at
<br>
<a href=3D"http://xenbits.xen.org/gitweb/?p=3Dunikraft/unikraft.git;a=3Dblo=
b;f=3Ddoc/guides/developers-app.rst;h=3D45d9bd5b2bb10b3d04135d66b5162a59d54=
dc2b6;hb=3DHEAD#l163" target=3D"_blank">http://xenbits.xen.org/gitweb/<wbr>=
?p=3Dunikraft/unikraft.git;a=3D<wbr>blob;f=3Ddoc/guides/developers-<wbr>app=
.rst;h=3D<wbr>45d9bd5b2bb10b3d04135d66b5162a<wbr>59d54dc2b6;hb=3DHEAD#l163<=
/a>
<u></u><u></u></p>
</div>
</div>
</div>
<div>
<div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">but the libraries do =
not resolve linking problems.<u></u><u></u></p>
</div>
</div>
</div>
<div>
<div>
<p class=3D"MsoNormal">Or am I understanding it incorrectly? Can pre-compil=
ed static libraries be integrated/linked at all in unikraft?<u></u><u></u><=
/p>
<div>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">=C2=A0<u></u><u></u><=
/p>
<div>
<div>
<div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
<div>
<p class=3D"MsoNormal">On Wed, Apr 18, 2018 at 7:48 AM, Wei Chen &lt;<a hre=
f=3D"mailto:Wei.Chen@arm.com" target=3D"_blank">Wei.Chen@arm.com</a>&gt; wr=
ote:<u></u><u></u></p>
<blockquote style=3D"border:none;border-left:solid #cccccc 1.0pt;padding:0c=
m 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-=
bottom:5.0pt">
<div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">But the
<span class=3D"m_-2484819899938714087m652529124985756059gmail-m301765866655=
964138spelle">clock_gettime</span> hasn=E2=80=99t been implemented in
<span class=3D"m_-2484819899938714087m652529124985756059gmail-m301765866655=
964138spelle">nolibc</span> or
<span class=3D"m_-2484819899938714087m652529124985756059gmail-m301765866655=
964138spelle">libtime</span>.</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">If your applica=
tion just uses this function to print
<span class=3D"m_-2484819899938714087m652529124985756059gmail-m301765866655=
964138spelle">timestampe</span>, you</span><u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">can implement a=
 dummy function in your code in this time to pass the</span><u></u><u></u><=
/p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">linking.</span>=
<u></u><u></u></p>
<p class=3D"MsoNormal"><span style=3D"font-family:Consolas">=C2=A0</span><u=
></u><u></u></p>
</div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
</blockquote>
</div>
<p class=3D"MsoNormal"><br>
<br clear=3D"all">
<br>
-- <u></u><u></u></p>
<div>
<p class=3D"MsoNormal">Regards,<br>
Ajay<u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p class=3D"MsoNormal">IMPORTANT NOTICE: The contents of this email and any=
 attachments are confidential and may also be privileged. If you are not th=
e intended recipient, please notify the sender immediately and do not discl=
ose the contents to any other person,
 use it for any purpose, or store or copy the information in any medium. Th=
ank you.
<u></u><u></u></p>
</div>
</blockquote>
</div>
<p class=3D"MsoNormal"><br>
<br clear=3D"all">
<br>
-- <u></u><u></u></p>
<div>
<p class=3D"MsoNormal">Regards,<br>
Ajay<u></u><u></u></p>
</div>
</div>
</div></div></div>
</div><div><div class=3D"h5">
IMPORTANT NOTICE: The contents of this email and any attachments are confid=
ential and may also be privileged. If you are not the intended recipient, p=
lease notify the sender immediately and do not disclose the contents to any=
 other person, use it for any purpose,
 or store or copy the information in any medium. Thank you.
</div></div></div>

</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature" data-smartmail=3D"gmail_signature">Regards,<br>Ajay<br></div>
</div>

--001a114b0b08bb2c43056a17f81d--


--===============8282302124909874894==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============8282302124909874894==--


From minios-devel-bounces@lists.xenproject.org Wed Apr 18 09:31:21 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 09:31:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8jQt-0000Mq-DO; Wed, 18 Apr 2018 09:31:19 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=8hzp=hh=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f8jQs-0000Ml-9M
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 09:31:18 +0000
X-Inumbo-ID: 1a87dbf9-42eb-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::604])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 1a87dbf9-42eb-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 11:30:17 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=y99X4saUlIg6oG27/n9QgWqkZIwIgXcOyxTefMBpeU0=;
 b=hdu3VTalWxiEbVzsHwPS1oXHPC7XKc62FlSJr64+q9D4MY0tObhzni+g18nAGtwNNsrfGO+Li70BfUQBeHMYs95+oh6KB93X+oz6Mm+G1lb44rWjuvN6W6Pg56hHHDufmUZsBhmGmmDehkFIL97jSzoxw7TgBb/R8La+s+e7JD0=
Received: from VI1PR08CA0207.eurprd08.prod.outlook.com (2603:10a6:802:15::16)
 by HE1PR0801MB1593.eurprd08.prod.outlook.com (2603:10a6:3:14::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Wed, 18
 Apr 2018 09:31:09 +0000
Received: from AM5EUR03FT028.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::206) by VI1PR08CA0207.outlook.office365.com
 (2603:10a6:802:15::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Wed, 18 Apr 2018 09:31:08 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT028.mail.protection.outlook.com (10.152.16.118) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Wed, 18 Apr 2018 09:31:08 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Wed, 18 Apr 2018
 10:30:39 +0100
Date: Wed, 18 Apr 2018 09:30:36 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180418093035.GA20072@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-3-git-send-email-shijie.huang@arm.com>
 <2d8fcc0a-9d2e-4814-bcbb-d4b55b65838f@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <2d8fcc0a-9d2e-4814-bcbb-d4b55b65838f@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(396003)(39860400002)(39380400002)(376002)(2980300002)(438002)(199004)(189003)(356003)(106002)(46406003)(97756001)(476003)(8676002)(58126008)(16586007)(11346002)(426003)(8936002)(4326008)(54906003)(104016004)(486006)(446003)(23726003)(72206003)(1076002)(126002)(478600001)(316002)(47776003)(53546011)(26005)(336012)(229853002)(6666003)(106466001)(39060400002)(6862004)(86362001)(6246003)(5660300001)(6636002)(305945005)(77096007)(8666007)(76176011)(186003)(55016002)(50466002)(7696005)(2906002)(33656002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0801MB1593; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; A:1; MX:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT028;
 1:+6OVAKVHSC5NXjSV12BWkLZKqqp2zzjM1U33TWqvCYN21vLjbNHf6mfzlxnglXDgEyDOolvPRdZL0tBbzaxzmz5y+P1MhGj4Dc/EDM2BfM850jb6rLAKrrcWdvQfE3Gj
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0801MB1593; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1593;
 3:jsa8MIb9wck+8gWJwyTpykIXt+TOv2rfE7uq4uxguGLGF7G7TeT1U5EFRU/FmnX0fG8imkVB4gUYOZ9hP/Go7WFhyBH+LJ+2I4uoIS/EcxYOiz+2RX8scq2wB3ZQkZPjLNbX13f1ZsqZa6gwuNztpl7DDs6fFCy+OdixX8yuwi2qOfoJnlaaqgK35yVB8nOk0wZgpP5D+9xXMBigpsMp0q5S29L+OL53wyp91cgvbMdD1GOhrO1kV1HBxJgvkjieH7kxesFqmgCKzU0qllCH9UIIP6Av+1OZ/KD1SxkQPrNyzBCmvbRzye2NdCRDOPy5xUqYdQwyr0Fb3QcMS55uoj0HGxHBXa53+2C+796OouM=;
 25:azsHFpShuLFutDbp1iWJPdvPgndWwMp3vRLDB50uM41/dNZmsTDIqg56M8cMHspAABCMbrUo0OVjTINf83WSNL9tBIk3OjHMckRzgbIqRu6Hungen8ZqxSQ6W2IU0Az5pSMUNt8vDWVxHCnbQN+Io90G3xdsHyABfcfF9so5G5SAlybLIcy3yp4J9FjDHnhOD9JlAONxaI8vUL7irBFG9zmB+2ML9MzlRJ+Am/G13lh6KV3SiluftNP0+5WLZfDGyOrzATEyD8KQJeyXhiyrxsmxkOk4Mjd3FxcQkJwi9SsHftrd6TnUqQ5KCDC2bMY06tVaAxTyJlXtwx9JZpeNBg==
X-MS-TrafficTypeDiagnostic: HE1PR0801MB1593:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1593;
 31:qxLK9ZSB+fZuIT/ql7QgNjoapnMX92HwmLEmlhAiShL+JA9jTmjsloSSOlMXaeukbGn98UXZ53DNRfYB7z1D61/wjo1kWnwj4IKi8vJ95EyPRzz9MmpYgiL8A3TORMaBpGbX2tnzDGBiT5UQ7mw3FSSE/55jvgK6sWwNSf5v0QTTBDWO/LCh4tFEmJRzmo6M0ydLyQzqJA8QDJPkExYCjJLN1FdF7zCg3A8iiePoZPc=;
 20:/Nre7rg8c4ygF9e005noMO1SkTAAYJggMRvkhbJwFtk9abquAYPUx2ixlqVp1qgFTo/XD8jpMojEcKtHB2AEVZZIhi/WIT695wqqaM8c8FrGjhEElKWt88l5QD7Wi4t6YDeocjvIfYrDhvubO2/fUpgmuIzE8bE3v6NtNn0YzsLep8JIKLQsvkx1vxdPK5SZfN4a57OtXvr1+ixTysuVAjaSTgWLjb/oDW42BOIrziZOvguPWHoUJEADV+fFm74E;
 4:EWr6TO8jOtgtbnbVTj72OM2kwRsbCJ7HQqdJTGKx2KExNSuvV7GkOb5pOnZnxJqjfaFDjT6oC2hIGAGM035e3DEgeLWVHxybvQxdWW/9MHPQZtGB/Y544z8Jboli6gfcVVhgLJgmUCKPkE+CP3DpM99T+8odOfT+ORaF0+CV3JLzhJLeH3yRShBrr0g9Rsuu1aCZJ889RlHdZrcY14C/kmj8PDOXBgzWtTBL/l+SjDQoiHS8umjRkEoIeNaW0gEQUk3VTI6IYFAEyef3nLmehA==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0801MB159346B127DA2E00236B1FBE84B60@HE1PR0801MB1593.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(3002001)(10201501046)(93006095)(93004095)(6055026)(6041310)(20161123564045)(20161123560045)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:HE1PR0801MB1593; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0801MB1593; 
X-Forefront-PRVS: 06469BCC91
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0801MB1593;
 23:djODeRrf6N7N25TpIk8qFQbaXQCbcymoyIu/5EF?=
 =?us-ascii?Q?C59YcVEcFeZnCmAjPvFyaGYvhqYc/IZCsQFf7CXTmZYPCUvLebFQ8+oWh/r2?=
 =?us-ascii?Q?PP7Y7UejIjgIutBxdUHdMCUjsJe7awP8/dF3gZ63bysgJmktiZvKgGy7CT4D?=
 =?us-ascii?Q?8PJVpOt/tfneTYaXyY8r13h0/09F1nJ5N1o6E3tUFajZ3TcciaoRr7M/79x6?=
 =?us-ascii?Q?GXEGvdYjKIMxnybZJM6HDb9JomkQbGv2JeEtmf6pCLbu8sWQen9qWcoOekoM?=
 =?us-ascii?Q?MRhkmuVt9tsVN4agXqhy88DWSNciIbrV7Nje9X0TJq7QG7V0E+SSbnkr2AL7?=
 =?us-ascii?Q?pBkYIlokPyYMSgm097GR8leadvn0lrepfYZPuuDOkGkLVehBKfyPWnsooEaH?=
 =?us-ascii?Q?ZWt2TC3e1JKdP8RAKH1gfsfCpKcVEur1AqL9qYnOC/xhJrIUKxtUkEZRzTa8?=
 =?us-ascii?Q?6UOH0bk8+2oAicBRWZeLaQiNWdN9FTbEbtsYUiGwwEqWcYoIjsZYgsAXgzP4?=
 =?us-ascii?Q?HlxBcfpWWQYyzu2lqFkPrmcTRtF133XdCGfHyAwb0cQJfQ6NvXzSZndV614K?=
 =?us-ascii?Q?HgfgvZq5EvWq3h3vZiPQ578Tt1iZE8MB8QpePgy2315iwJuyPNIXOYazCDwR?=
 =?us-ascii?Q?jY/4+a5yxBkbCZFtiqUDGvEkJqjbU+2Lc+/HYLSPardkMGH9WZH5ANCLC7QJ?=
 =?us-ascii?Q?WDq9nFwzSoc1nvKE/1qXiFgiQL/6xinXCfR7iHLckZhlm9jIm1SyF4JFXM93?=
 =?us-ascii?Q?do3JOt23zNusUZEVuISFeCIes/1HxhZDCoeSZ5g0ukKzdQv0bO1WNFuOdDcD?=
 =?us-ascii?Q?IhioSxCR5T9PQ86JdvO7AwRyjlFAuej9I4+v0vodZSA4z6iWQwd46jpe4VvP?=
 =?us-ascii?Q?fivilIDAw9KPJe7Wthyj6hc/ARHsa2ok7jgMzQQfHZ17D+DtKvArvx0eiOVn?=
 =?us-ascii?Q?s19nMw36fIoOUDg6s7S2XSgF6fbVBHISLlrrVkzWewlGI1Q+KcSWxXfq8d3X?=
 =?us-ascii?Q?cdW4wCuS4F17/56HBVE/L0TieHkFDSvNd/04v34j14d4+/P+GJCaW3JbcUl6?=
 =?us-ascii?Q?92Mdyr4pkykOHOSGHDfsDP/rswIrV0tFr3ojH4BGdur0CvqU2SPLFtZ/II6k?=
 =?us-ascii?Q?0sgKaL4UUtqfDpsn/f4EdOecTfW8JDdRYS6T7M+NH7wcjtYD9A8j+gR4Xtql?=
 =?us-ascii?Q?9VAQMUd5KopckmahsQ8AVZ68u154nmX/zzaKbta4mlP1oQO8TqgNvZEd87g?=
 =?us-ascii?Q?=3D=3D?=
X-Microsoft-Antispam-Message-Info: t0RMxfplrBZZ+fUHiBlSbuUCo47YQlkK/TsErhA1xjIZRvmmcuqOACTN5MjBNRjoqNOMsJu7kWFSIalE9bsoyGfQAAQChDtixxUc2heE6GUSs1Fba9ScB3GzfC/CqJDv2pzCmZ95g3xQu1gBtmEf0wts7xg1cARa7iOePVUZhwdMwWbD3oinUizdjarZhmYsHYnsKkT89xBC/MF0dzWzGRSF2D8pHypsjQducib3GA8hq5rv1K/ci9Soza5rDlvv1OBsd7QH/HIF37/QYmG/B7P3tLnoEc7BleglbqSCPLah7ZS4/P9BZn9d+qoglVy7j0UKW6UQO9uxaq2c31daZErou2Ay2LJHpbGhZ0QfF9eaoOLaEyv0szj2VBNnHkDEMQUbqoH83hGgRgTkDPLu4O1/LhAcI8jLGKt36WBuWHg=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1593;
 6:K+UrHpO5wl4I+WGtBWJschGbNtnPe+5YqnSjFNAYRSFTOZiXp6/II1nRQnkBeLo6HzZ/kLkRqpS/GyTgKud77E0faO/88fA13Gix0TcgImgm1mxqRG85pfSyzl0+sIiFGOjsAJ3VNvQar3YOytUoY7I0T0YdwGqDAGJGIkhoA4wMch3zBqR3FXLShJCs+jiJwpEyZs9iJu/FIfoDNJ4MXEpkjsPg9yvZmN6D75BHBpKlNO1yoyWrYTaTuRJGLPWxcx/OCf+wGnDEPWAtE+RXi1mtSpOdMOkYLfD3lh2AzxQEkcSRX2B3sDdsoDEzGm5Ih8MNpNrKa3Si4X8xUoirFFo8x4xHul5fvN9LgP2TyRWA5/f88+7lpZUWExQmMoSHgJ2MlTCaVrPbzzPHjOD7RVQu10v9L1F8JZA6BiCCRIioDbm3mKRvX+nxZfd17Qv7/jEgru8dRorp5JKTyRDXp2OWZQI4czMJDJkn+Xf3ltOd1r95Ivx1ofxGe5oT79jI;
 5:wQp19YzwHSaa+aB6jxsnakkHM8NSpkw+4bSFgCegZ+Gxwr6cLTt8eCTUOYidfAubStmbyCSO39xsC4gD9h9i1v8l2R+fxsILlR78vQq3k2f78x9PjeOhFslduSayIWcFVt9XhPpcnSrC7JqozRLf3YISCH6VBzd3yeQ02+Zs/L4=;
 24:s83Sdqt4pcwzcH/dQDvcqCSPg0lxK4Jw5/kSVATJfr2sDukkIIjQu29x2xohkOy0ydyODH33H9kwN1D40Qe50WyziSSlBbvmHdz03xmq1Uk=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1593;
 7:BU62XSYRp5Cott1ta+3pxY64VWqtDDwc0J/9eg4Yiqx2d3rdiPg5ULWYVs+PNolY8jL2Y3j4/NFHl5uak/t9lY5Z4X+MU+dV3Rq86VcRX//ue4HXW2P4yX+r0ctLLwNn4OB0Kde8KGY47MjlG+eBfW8d9bvYcWQTjJQ8vtJmHcM1zpougldDtY8njSNBfs2/oArx9vkNPGtzcZ5BWlJECwSUYi6B+eNeawzsZZGtbe9+a7J1ZLiKMa+qPwKbAlJX
X-MS-Office365-Filtering-Correlation-Id: f65a0cf5-b172-49c8-21b0-08d5a50f1dc2
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 09:31:08.2960 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f65a0cf5-b172-49c8-21b0-08d5a50f1dc2
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1593
Subject: Re: [Minios-devel] [PATCH v3 02/43] arm32: remove the arm32
 specific code file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gTW9uLCBBcHIgMTYsIDIwMTggYXQgMDQ6Mzg6MjBQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgpIaSBKdWxpZW4sCj4gSGkgU2hpamllLAo+IAo+IE9uIDE2LzA0LzE4IDA3OjMxLCBIdWFu
ZyBTaGlqaWUgd3JvdGU6Cj4gPlRoaXMgcGF0Y2ggcmVtb3ZlcyB0aGUgYXJtMzIgc3BlY2lmaWMg
Y29kZSBmaWxlOgo+ID4gICAgIGFybTMyLlMsIGh5cGVyY2FsbHMzMi5TLCBtaW5pb3MtYXJtMzIu
bGRzCj4gCj4gSG93IGFib3V0IHRoZSByZXN0IG9mIHRoZSBjb2RlPyBJIHNlZSBxdWl0ZSBhIGZl
dyBwYXRjaCB3aXRoICJyZW1vdmUgYXJtMzIKPiBjb2RlIiBpbiB0aGUgY29tbWl0IG1lc3NhZ2Uu
ClRoaXMgcGF0Y2gganVzdCByZW1vdmVzIHRoZSBzcGVjaWZpYyBmaWxlcyBmb3IgYXJtMzIuCkFz
IHlvdSBrbm93IHRoYXQgdGhlcmUgYXJlIG90aGVyIHBsYWNlcyB3aGljaCBoYXZlIGFybTMyIGNv
ZGUsIHN1Y2ggYXMgZ2ljL3RpbWVyLgoKSSBwcmVmZXIgdG8gcmVtb3ZlIHRoZSBhcm0zMiBjb2Rl
IHdoaWxlIGFkZGluZyB0aGUgYXJtNjQgY29ycmVzcG9uZCBjb2RlCmluIHRoZSBnaWMvdGltZXIg
ZmlsZS4gIEl0IGlzIG1vcmUgY2xlYXIgdG8gbWUuCgpUaGFua3MKSHVhbmcgU2hpamllCgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwg
bWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp
c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 09:35:18 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 09:35:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8jUk-0000WO-HQ; Wed, 18 Apr 2018 09:35:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=8hzp=hh=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f8jUi-0000W3-IY
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 09:35:16 +0000
X-Inumbo-ID: 12568511-42ec-11e8-8249-2fda3a446a53
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [104.47.1.67]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 12568511-42ec-11e8-8249-2fda3a446a53;
 Wed, 18 Apr 2018 09:37:12 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=ImD3JHuPE+a9yOxp6iuTSDTg/uQB2i7yarYJVlbo8PI=;
 b=ND4tpvPeN+oiTKeOYVabE1TWJmcIatTUMGAV9AcLG5m9xFkN7v2D8ppKhwupOKbJ6yivbNRiIEOK5X/aOMF28UKx4dtxGL1+O0bHxtJqPV1wrVxpidmLyUWz0Vwq7/xaIzuHKzMwqKS56Qxs+LZTX12M6Ma1JkxKSq1mLtcr0Gs=
Received: from DB7PR08CA0007.eurprd08.prod.outlook.com (2603:10a6:5:16::20) by
 VI1PR0802MB2429.eurprd08.prod.outlook.com (2603:10a6:800:bb::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.10; Wed, 18
 Apr 2018 09:35:08 +0000
Received: from AM5EUR03FT024.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::209) by DB7PR08CA0007.outlook.office365.com
 (2603:10a6:5:16::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Wed, 18 Apr 2018 09:35:08 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT024.mail.protection.outlook.com (10.152.16.175) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Wed, 18 Apr 2018 09:35:07 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Wed, 18 Apr 2018
 10:34:55 +0100
Date: Wed, 18 Apr 2018 09:34:53 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180418093452.GB20072@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-6-git-send-email-shijie.huang@arm.com>
 <bde31a83-4612-797e-a3d5-7a1090b069a1@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <bde31a83-4612-797e-a3d5-7a1090b069a1@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(396003)(376002)(39380400002)(39860400002)(2980300002)(438002)(199004)(189003)(316002)(8936002)(446003)(476003)(104016004)(229853002)(59450400001)(4326008)(11346002)(486006)(356003)(77096007)(186003)(53546011)(126002)(76176011)(478600001)(8666007)(33656002)(2906002)(50466002)(6246003)(7696005)(8676002)(106466001)(46406003)(6862004)(1076002)(426003)(23726003)(5660300001)(47776003)(86362001)(72206003)(55016002)(305945005)(16586007)(54906003)(39060400002)(106002)(336012)(58126008)(6636002)(97756001)(26005)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2429; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; A:1; MX:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT024;
 1:T9G8gepJtcRDd4whY8OyCL8en0u2bDO0B1qmE/6jEgsiA90stleLUobOhC0oSnKE7Ct3QXT2/Dv/4+dnpx0ekhVzQ+i8SsrlpPJptuiQtsOe63Ijm5cROMdYqS4lPXmB
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2429; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 3:skMXhei/YlSF7KG0YTiE+bL4AvViA+H/HVBLF44iHZwxnDcNcYHZfQbCziw88QoalBXUx3F2ReCZuWq6wdK4EuW7sHkpzssqudQkLF+LcCZd8Bcy6uFYSZokzwUJeL+N3SDALUhZNvQmH6lcuHpqfYbdl2qKxk60vwtfmSiQkVxSoxA+dyqCEBvXxjm3OopA2UnAy6PJCS0GzNkAgpF3n71K7PLbaaGzIA5Wi9AB3nvN2caC3DYqOwoicjb2fMoXND9uAyqEGBrKtAb0iCoIlKGLxLThsJbrV7DzemcS1EZ84FzEeynkOH/m0j5Ov0WDpGk99emIQb2xMNnMC95uJQ4DgBCzmXpQ6IdA6xhABXM=;
 25:E86Th5FUYm4HrEgMnL07xYvs0bBIqHUDdny7GrQP8kGhqNnLXDt87pcPJ6cL+Qw0zYhmmMHqxiLi7oAwuhMCm643+E/BMdTwqN2ryubtOfVWldyUmclb8AJVRrYz3PXTJYlghjNzbgpd7wYIlYnfqs6P5pWBa9nxxsiPw2ZcJw5MGoipgbQH/V4ew/0DjGkRQaA99KnI02wvAOBT+pBX4IU0M0Ihcae3PEXDxtFWGXLGJ/4cmlnyEr6ohzSmHk2WU+zpGEzklm+Q1y7AVZgnE+T5SN2j9uLtWmRvt4XoIq1iiwWrz3IJvckmeTqoyWPu1CPNWphUDXhyS3uXXFYnfQ==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2429:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 31:BQ2jdsa9ADrbVGZ78S9LLCAv43iZFBjqKacopF1OawBvSa661XdIBom+hB1QJJuLHmNk6gLlN2ZDBn0qXtEnZmDYyxZWGTJIt9wc5m/uFgpWZ9HkZJ5dFMeMbijFDOoTYRKIJvl2rOzNk0QAHZ/9idHM03K3V+0yS4IVTW7b20/GfB7WabO5QJXdzeQGyC/uwrBRvJh/vy7Xb3uzzCRBvZ12AjHNn1A8hEfXgoLmSrk=;
 20:oAHpv8FPkkcpCaYl0+/O+5svqg/ti9lGsV1xGbYMW1jyxk98QaJhYNZEPcESDouYk1+bJS+TSjxuu7ToFS8UJj0cGvza2YtlBzcyPdrAHlaGBOjqbhB1bBUauLfu9rBnGI2nvH1bssCOO2wuenhTIHQl1zXmwOwF7TbQXWMioShyWdpOgBg8jyP4IeWHJXxZ8HwDa/e2UhAZZNQa+99VmfVaPd1cGASN7hmJWA94W56CU4f7L05x1IAsSn3ko+ih;
 4:gChlq2Yt/iNIIER90aobfpjmkBcHns9x7Qm4OYxTHdJ9+1HI+JF4ZZXPn5xTasKOpzUTkZOQrL0WrE1D0I2K6pFQMT7NRjGYK/MCeQ4d6+jTVDznGZH/0KsJliIapHInkvpYR0Z9ISlnS2apObuvYjBvPkJ4JplkCQvN5/IJomuOIV4Bca6rluR6H0ueFlvbFut2oPOKj8FpBCRLFjteRVicwAR2Ndc/I/eaFODh+DoxZSOaSzEbjsvZRjJdvz10TVaOtW3osOiv/OTbQluio0SpN0BxcVzS2ReShPZKF7PxTjY/yDira+CjL79KjGtC
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB2429CA29B0FE60AEE48EA7B184B60@VI1PR0802MB2429.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231232)(944501368)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2429; 
X-Forefront-PRVS: 06469BCC91
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2429;
 23:q/ObmGymelIUIOjzOn0YpRgZWBOL2QkXNSsyT1+?=
 =?us-ascii?Q?KWQ1uCpwIj2Nly8gtN4CHRLDKjkzUzumJtuLW0a4LWXpgUrrnmKxYIP6UYfw?=
 =?us-ascii?Q?qKkxk2ACcU01FRLOJXBtKNkSWxdfipL/w63WZtR5ORMt7Kjf200USpqoTIrB?=
 =?us-ascii?Q?ezfX902QkuofhX71lRgxWs5gB1/B6g/F/mrw8bcYj5et3x0allGCkbzlAlCM?=
 =?us-ascii?Q?uo/HGhiaMlUXkjce1xB83ttzfPrfoMLNkJFUzSnzfAkqjIyysiknQXwXlrlv?=
 =?us-ascii?Q?ep9/MaPcemStEVHxl5r40Wrq1EVAJx1Me8aQLo+pSqKScoVEs7Nl/jDm4GQQ?=
 =?us-ascii?Q?H7eB4SLb6pNdTJIATATZ8TAEmJA9P7bkdrbDdoJKHguWerN0eiZC6bCt/9p2?=
 =?us-ascii?Q?16zhfPhecAT60e1eFV1lk9nVvcOTOcigLTkfRsEml9sKmcCle7j/Hp+8nZMF?=
 =?us-ascii?Q?KiHfP+yrjwpv6JohGUmE8GqpGCg9qh5VIC0Ds1iP2Bs0YLm3eXdxY2vk3efM?=
 =?us-ascii?Q?4/Kw2rUv4cBRPnhiwaWVexbBoRhKkg9Z0zgwjWJ3Utb+bynuBgCd1y+BdXVA?=
 =?us-ascii?Q?GUJGok7QdAYgV2zhapWz9sd0AW8LF0Gon2tQM/hAEvckvi3h8aGUwWyYt6TT?=
 =?us-ascii?Q?vBHs88HaEyZMFwtr5tdTQAztTGv9iHmo7ukm47IGHSigiUSYY+vR0mDH8Hic?=
 =?us-ascii?Q?SQ+A+cIZnJtmeNJeE0HRxLb0h9mo37DrGvWxyvjAz29qazYsD8d61alXFNSw?=
 =?us-ascii?Q?t1ciNPAP1HYlMHUPJvTxCm6LiClPrrUxRP/uiQ0QE9BkCxZlZ/aU0pJOsEfc?=
 =?us-ascii?Q?ikqMKE6F5/0LrZiCQKmk5eXa4YUgI+uSueyPcpvop+wFS5YLZAR7ko2/YPQa?=
 =?us-ascii?Q?U0fSChRlciU33TKnvt9d4soI3nnaOmDft10KLRRtMMsvHR5DQqxDH0fZ2M7+?=
 =?us-ascii?Q?dmHpDJRgD699lewIOGVNFf8oQUtSfAGcN2jPpQNi1shrzrsRY+rQSgzkjjLo?=
 =?us-ascii?Q?NMdngwEHbA2WuMwYk1OWpKGCiVkCYuqm+Avqp/xboBpTHW6/Y+71UNpGJEAX?=
 =?us-ascii?Q?Avs/4q/rlwex/MPIOsBf1EnvYcZkZQlVqk+J7M+Wk2uyhRY2vcwdFO2u5CxW?=
 =?us-ascii?Q?uHEV0EIVpnoq1DTztjGZaBRwUg4oKyVVisJaxj/CyixRqiFXlXyg1HF7K20y?=
 =?us-ascii?Q?ZvUjP1p75JRH9tp4iPFKeGHZ7Ut5eB1ujL1O43d5vMzu5mwaoLupNHPBsBA?=
 =?us-ascii?Q?=3D=3D?=
X-Microsoft-Antispam-Message-Info: 2L0yI4X+GPZ7YlD0gO1E3eQziMHoSy2yPxV35A/Odfibyr4WTMTojtsAhjqcpDet6ejOHbheo+hXLqz2/5+LCXcnKlnfvICtPQN5PnjB1PFGxOYARFV4c3lLtLI3vjEAlbu21ZAo8dSe9wC4B0PVXBMIxHlfBQKnNlpVM81HVG41RPvabyOZ9/u6FnQq9rpULz5hJaSAWobwei845vACPHu/75/NkCPPewbHqyr8AgjEgeS2HJBBCYax8lywm1Fc/YktJihUkiYb7th12qEkhczA+ul6rP92FA6SGkwb6M7bJan8NF0tc3C4PEB6xvI3QsgwuEaDbrPOE/sgsENVWwG9llKniIUeUY4rkRwy56cdp+WTYT4Lz0JQqHYBJbhlHhG7mMAHbL9bOrYV2uzHrU4btSikLImQIe5JCGM9AMI=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 6:y7FNdwn4UGxHP9HyR3jWUm5kHB/piTHLuHeoYfySAJOi9zzKUFBnC0XQ8YebiLPj+Jld2xmtG8r4T0P8+IpsJ18yENi/MTzj7oSyVUcwaCfz1Vpn/Yz1WwLewCtkjA9WUNc/Hl2rdGk8Yk4q6vKbfjkU4iTFkwjL7i/J+GUo/uURdR3inss8blvplzIDpM22FX2VBr4SfCxXFRxlPomwLOFynr41Gg71mpfATkYZkC1wUGm+JAotb2PK8Z1nsND9GGtNmm3l/GDYZqdajmMmbu9tOqOgx3mdX22MnJjBG+HGyLhdTB0MxaIFAW/JgiRWZcuTNuDNc3bGXugfW3pittQsbU8lFWVPDOp/7wxzsm3CJeFci5Irf0z5VAssCoGdR+vV/RDyjIDUnrRrX4pmCg7JF6VSFy52g+wPqMgHYDIe8vosbgNJerNcPW0olUwJd6HlvphTxVLmf8YfWumsM1Vkk69KFsj83tkWzEQcFhRtHGFKArQmzuNWw+wZX1a8;
 5:DkvZzOliRDSxmELyk9Hi2B5AZhwnSQ9fXny91a4blVkTtQ5TKEW8gXNMnR09dBq1qTXKqScR8ulidfBT/cpACdHjwN0SbO6MjiK6r2EAOKubIXFzoqE6lmoov4kWDqFzElhVP3t9p3klrb3gQyqUkS3/HQBZOKzj+AAYhxy8RHk=;
 24:SI7/+1WcDiioOmeCPM6EKTOMScfn+FkjnI0YlBFE+7eIRUeN1NDdLBWL5IVUfczNrb/POgcFaDIVNocEmj0ubNwzHp9DTJkjRi1Litg5oDg=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 7:bZbQZwkYJFt1rUjR8yzMV8YW/2AficBksZfx9HbR0UtsLfTwwrlssJhYI8RNKCB77ou/CDoHtOAiJPx6we2necBCBFxiqC5LzIGCtichHIYyJBbJqcj7yWNLJBZUB0z0eisM73WtYYiwq9deZwXJCv8aQvfbKUKJJJoyf2Phy8eoMwIG6JXVHHXY09643bx/E0sw6w1m78aXIvW+cSbr9ddMkBNg/keihWDEaCL6khxEcGQqgYOONVq4xd1iEIXf
X-MS-Office365-Filtering-Correlation-Id: 3058a08d-644a-435d-7da2-08d5a50fac8a
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 09:35:07.8299 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3058a08d-644a-435d-7da2-08d5a50fac8a
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2429
Subject: Re: [Minios-devel] [PATCH v3 05/43] arm: create a new header for
 the page macros
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gTW9uLCBBcHIgMTYsIDIwMTggYXQgMDQ6NDQ6MTRQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE9uIDE2LzA0LzE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4g
PkNyZWF0ZSBhIG5ldyBoZWFkZXIgdG8gc3RvcmUgdGhlIHBhZ2UgbWFjcm9zLgo+ID4KPiA+VGhp
cyBoZWFkZXIgd2lsbCBiZSB1c2VkIGluIHRoZSBhc3NlbWJseSBjb2RlIGFuZCBDIGNvZGUuCj4g
Pgo+ID5TaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+
ID4tLS0KPiA+ICBpbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oIHwgMiArLQo+ID4gIGluY2x1ZGUv
YXJtL2FyY2hfbW0uaCAgICAgfCA0ICstLS0KPiA+ICBpbmNsdWRlL2FybS9wYWdlX2RlZi5oICAg
IHwgOCArKysrKysrKwo+ID4gIDMgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgNCBk
ZWxldGlvbnMoLSkKPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS9hcm0vcGFnZV9kZWYu
aAo+ID4KPiA+ZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJtL2FyY2hfbGltaXRzLmggYi9pbmNsdWRl
L2FybS9hcmNoX2xpbWl0cy5oCj4gPmluZGV4IGJhZTk5ZTEuLjIzYTQ5MWYgMTAwNjQ0Cj4gPi0t
LSBhL2luY2x1ZGUvYXJtL2FyY2hfbGltaXRzLmgKPiA+KysrIGIvaW5jbHVkZS9hcm0vYXJjaF9s
aW1pdHMuaAo+ID5AQCAtMSw3ICsxLDcgQEAKPiA+ICAjaWZuZGVmIF9fQVJDSF9MSU1JVFNfSF9f
Cj4gPiAgI2RlZmluZSBfX0FSQ0hfTElNSVRTX0hfXwo+ID4tI2luY2x1ZGUgPG1tLmg+Cj4gPisj
aW5jbHVkZSA8cGFnZV9kZWYuaD4KPiA+ICAjZGVmaW5lIF9fU1RBQ0tfU0laRV9QQUdFX09SREVS
ICAyCj4gPiAgI2RlZmluZSBfX1NUQUNLX1NJWkUgKDQgKiBQQUdFX1NJWkUpCj4gPmRpZmYgLS1n
aXQgYS9pbmNsdWRlL2FybS9hcmNoX21tLmggYi9pbmNsdWRlL2FybS9hcmNoX21tLmgKPiA+aW5k
ZXggOThiODZhZi4uYzg5ZDFhYSAxMDA2NDQKPiA+LS0tIGEvaW5jbHVkZS9hcm0vYXJjaF9tbS5o
Cj4gPisrKyBiL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAo+ID5AQCAtOCw5ICs4LDcgQEAgZXh0ZXJu
IGludCBfYm9vdF9zdGFja1tdOwo+ID4gIGV4dGVybiBpbnQgX2Jvb3Rfc3RhY2tfZW5kW107Cj4g
PiAgZXh0ZXJuIHVpbnQzMl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0OwkvKiBBZGQgdGhpcyB0
byBhIHZpcnR1YWwgYWRkcmVzcyB0byBnZXQgdGhlIHBoeXNpY2FsIGFkZHJlc3MgKHdyYXBzIGF0
IDRHQikgKi8KPiA+LSNkZWZpbmUgUEFHRV9TSElGVCAgICAgICAgMTIKPiA+LSNkZWZpbmUgUEFH
RV9TSVpFICAgICAgICAoMSA8PCBQQUdFX1NISUZUKQo+ID4tI2RlZmluZSBQQUdFX01BU0sgICAg
ICAgKH4oUEFHRV9TSVpFLTEpKQo+ID4rI2luY2x1ZGUgPHBhZ2VfZGVmLmg+Cj4gPiAgI2RlZmlu
ZSBERUZfUEFHRV9QUk9UICAgICAwCj4gPmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9wYWdlX2Rl
Zi5oIGIvaW5jbHVkZS9hcm0vcGFnZV9kZWYuaAo+ID5uZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID5p
bmRleCAwMDAwMDAwLi4zNTQ2ODBjCj4gPi0tLSAvZGV2L251bGwKPiA+KysrIGIvaW5jbHVkZS9h
cm0vcGFnZV9kZWYuaAo+ID5AQCAtMCwwICsxLDggQEAKPiA+KyNpZm5kZWYgX0FSTV9QQUdFX0RF
Rl9IXwo+ID4rI2RlZmluZSBfQVJNX1BBR0VfREVGX0hfCj4gPisKPiA+KyNkZWZpbmUgUEFHRV9T
SElGVCAgICAgICAgMTIKPiA+KyNkZWZpbmUgUEFHRV9TSVpFICAgICAgICAgKDEgPDwgUEFHRV9T
SElGVCkKPiAKPiBTaG91bGQgdGhlcmUgYmUgYW55IFVMIHNvbWV3aGVyZSBoZXJlPyBPdGhlcndp
c2UgdGhlIGNvbnZlcnNpb24gbWlnaHQgYmUKPiB3cm9uZyBiZWxvdy4KVGhhbmtzIGEgbG90LiBJ
IHdpbGwgYWRkIHRoZSBVTCBpbiB0aGUgbmV4dCB2ZXJzaW9uLgoKVGhhbmtzCkh1YW5nIFNoaWpp
ZQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9z
LWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0
cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 09:38:22 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 09:38:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8jXh-0000rK-Sk; Wed, 18 Apr 2018 09:38:21 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8jXg-0000qU-A9
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 09:38:20 +0000
X-Inumbo-ID: 800d467b-42ec-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 800d467b-42ec-11e8-8249-2fda3a446a53;
 Wed, 18 Apr 2018 09:40:16 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8DEF61435;
 Wed, 18 Apr 2018 02:38:18 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C0DF33F487;
 Wed, 18 Apr 2018 02:38:16 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-3-git-send-email-shijie.huang@arm.com>
 <2d8fcc0a-9d2e-4814-bcbb-d4b55b65838f@arm.com>
 <20180418093035.GA20072@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <aa3aaa48-7727-1a01-67b6-d7b65cb545c9@arm.com>
Date: Wed, 18 Apr 2018 10:38:15 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180418093035.GA20072@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 02/43] arm32: remove the arm32
 specific code file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxOC8wNC8xOCAxMDozMCwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIE1vbiwgQXBy
IDE2LCAyMDE4IGF0IDA0OjM4OjIwUE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPiBIaSBK
dWxpZW4sCj4+IEhpIFNoaWppZSwKPj4KPj4gT24gMTYvMDQvMTggMDc6MzEsIEh1YW5nIFNoaWpp
ZSB3cm90ZToKPj4+IFRoaXMgcGF0Y2ggcmVtb3ZlcyB0aGUgYXJtMzIgc3BlY2lmaWMgY29kZSBm
aWxlOgo+Pj4gICAgICBhcm0zMi5TLCBoeXBlcmNhbGxzMzIuUywgbWluaW9zLWFybTMyLmxkcwo+
Pgo+PiBIb3cgYWJvdXQgdGhlIHJlc3Qgb2YgdGhlIGNvZGU/IEkgc2VlIHF1aXRlIGEgZmV3IHBh
dGNoIHdpdGggInJlbW92ZSBhcm0zMgo+PiBjb2RlIiBpbiB0aGUgY29tbWl0IG1lc3NhZ2UuCj4g
VGhpcyBwYXRjaCBqdXN0IHJlbW92ZXMgdGhlIHNwZWNpZmljIGZpbGVzIGZvciBhcm0zMi4KPiBB
cyB5b3Uga25vdyB0aGF0IHRoZXJlIGFyZSBvdGhlciBwbGFjZXMgd2hpY2ggaGF2ZSBhcm0zMiBj
b2RlLCBzdWNoIGFzIGdpYy90aW1lci4KPiAKPiBJIHByZWZlciB0byByZW1vdmUgdGhlIGFybTMy
IGNvZGUgd2hpbGUgYWRkaW5nIHRoZSBhcm02NCBjb3JyZXNwb25kIGNvZGUKPiBpbiB0aGUgZ2lj
L3RpbWVyIGZpbGUuICBJdCBpcyBtb3JlIGNsZWFyIHRvIG1lLgoKUGF0Y2ggc2hvdWxkIGlkZWFs
bHkgZG8gb25lIGxvZ2ljYWwgdGhpbmdzIHRvIGhlbHAgdGhlIHJldmlld2VyIAp1bmRlcnN0YW5k
aW5nIHRoZSBwYXRjaCB3aXRoIG1pbmltYWwgZWZmb3J0LiBSZW1vdmluZyBhcm0zMiBjb2RlIGlu
IApwYXRjaCBjYWxsZWQgImltcGxlbWVudCBhcm02NCIgZG9lcyBub3QgbWFrZSBzZW5zZS4gUGx1
cyBub3doZXJlIGluIHRoYXQgCnNlcmllcyB5b3UgZXhwbGFpbiB0aGF0IGRlY2lzaW9uIHdoaWNo
IGlzIG5vdCB3aGF0IHdlIGFncmVlZCBvbi4KCkl0IHdvdWxkIGhhdmUgYmVlbiBzbyBtdWNoIGVh
c2llciBmb3IgZXZlcnlvbmUgdG8gcmVtb3ZlIGFyY2gvYXJtIGFuZCAKd3JpdGUgaXQgZnJvbSBz
Y3JhdGNoLiBBbnl3YXksIGl0IGlzIHlvdXIgY2hvaWNlIHRvIHNwbGl0IHRoZSBzZXJpZXMgCmxp
a2UgdGhhdCBidXQgaWYgeW91IHdhbnQgcGVvcGxlIHRvIHJldmlldyBpdCB0aGVuIHlvdSBzaG91
bGQgaGVscCB0aGVtIAp0byB1bmRlcnN0YW5kIHdoYXQgeW91IGFyZSBkb2luZy4gVGhpcyBtZWFu
cyBiZXR0ZXIgY29tbWl0IG1lc3NhZ2VzIGFuZCAKY292ZXIgbGV0dGVyLgoKSSBhbSBnb2luZyB0
byByZXZpZXcgdGhlIHJlc3Qgb2YgdGhlIHNlcmllcywgYnV0IGl0IGdvaW5nIHRvIHRha2UgbWUg
CnNvbWV0aW1lcy4uLgoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlz
dApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 09:39:13 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 09:39:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8jYW-0000wm-W6; Wed, 18 Apr 2018 09:39:12 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=8hzp=hh=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f8jYV-0000wd-FE
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 09:39:11 +0000
X-Inumbo-ID: 34d07b05-42ec-11e8-9728-bc764e045a96
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe07::607])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 34d07b05-42ec-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 11:38:10 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=0+p4bXaUtF9Sj4p1Ap38i6GYIbtEXLaXIyZmoxxWD2Y=;
 b=XwE5WqaAa7qWBp3iAUkHFPoP6J55t1m97BKff5GLjptFYQoXv1vnwRN4swFY1CsNwI0TS+fCDYX3n88e8JvzDon0+7MWKGkWO032d/UKsb56ppwfeITfS8utsQmGJgECP1I9ZeZIXephp9IJSXO0LOSOGa2zUdM3pOaj/QGYYiI=
Received: from VI1PR08CA0187.eurprd08.prod.outlook.com (2603:10a6:800:d2::17)
 by VI1PR0802MB2429.eurprd08.prod.outlook.com (2603:10a6:800:bb::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.10; Wed, 18
 Apr 2018 09:39:03 +0000
Received: from AM5EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::207) by VI1PR08CA0187.outlook.office365.com
 (2603:10a6:800:d2::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Wed, 18 Apr 2018 09:39:03 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT048.mail.protection.outlook.com (10.152.17.177) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Wed, 18 Apr 2018 09:39:02 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Wed, 18 Apr 2018
 10:38:49 +0100
Date: Wed, 18 Apr 2018 09:38:46 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180418093845.GC20072@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-27-git-send-email-shijie.huang@arm.com>
 <37a0fcde-f208-3eb4-d57c-02acd34f861d@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <37a0fcde-f208-3eb4-d57c-02acd34f861d@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39860400002)(39380400002)(376002)(346002)(396003)(2980300002)(438002)(189003)(199004)(5660300001)(72206003)(86362001)(47776003)(46406003)(6862004)(23726003)(1076002)(426003)(55016002)(106002)(336012)(39060400002)(26005)(58126008)(97756001)(6636002)(305945005)(54906003)(16586007)(53546011)(126002)(77096007)(186003)(76176011)(478600001)(8936002)(316002)(4326008)(11346002)(486006)(356003)(446003)(476003)(104016004)(229853002)(6666003)(6246003)(7696005)(50466002)(106466001)(8676002)(8666007)(33656002)(2906002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2429; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT048;
 1:g3KHK8gf155Qn1eMoJj4Pa/uO8k9FVia4mPLvga5+0nAuVCwlXp7CVcSo/RQO271pOpyC9rPJpgCf6q+cNchXHQZqrdF70pE+Xs07SPO3ZkH8I+RP3y2atBLZBCx0jjL
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2429; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 3:8C5qJydG43dweAFq4bQtB9aNWAXjHVsDkAMPNvmBU7YyRelILLsoo1P0AnQYTVUrlj05RUMBiWYjmIN1VS2kFoijPiG5jN6GD7x3xv7Py7gbumEPvLzPEuae4irMkDDlDgaY8odFaG5gUGYGUOMVlXkLpvn2U+SjlRm+uxU/YnETx2WCqO3loKiLiZodR+ZfQrwXxOO+MxDAAT0myyKPUhVf4mwSKn2iLUUfzsKu7MPQLKdPZKBk3tfiVj7c3/NJ2a3KU4UMmapUkfjAaJ7DlQuiVG/Fm4KE7Hfkc3NphYzN7dbqXRufXFvGN6yFTTGbiWfURO3sKRuT9wt6djz+cYwLOJiydv4flSO43GFs5Kw=;
 25:MolYw7mMc9wc/0oaJuFsp+9XGZfiIYeZ+zvlVm2Fbr67u7yWjqKOk96wd3mh3ONYqRA7wqRGFOuF3BN1Mlw+TG0mWVvlbc2IVnjUt21D7gMR9Sg7kSZ7flT0vAjRjDGfCqkU3VcFHn0M+Q0+Ff/vw8BLLkgbgz28JEPzdiVw8J+oTP9JXw3A3MkrmjPIbl8rdTbH71+gnO9pTvLCPnMfhZCLmrbC3hb6wn79gBHuUMe0uELXsbFO77L0m+JGSMbzbVaBIOYeL34nDGr10CbyKMppz8W1e7po6n0ZaZ7KbKI7UDlyJc3LUIXtF3rIY7ikdUIUuJZgH84hUqI2vXYCEA==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2429:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 31:5AuX0AjdzhWUxjzjWcbn8FeNLWaE9l0za5ACTF+XMCKH9IOO3LqNlW5ZdnRQ9kuGcldQpM69/pV7CzmP44JOJ86baMlfVFFNkHIv3lTmPScvbvA7lvB6JfbdJrTqtPcm9hqk7yn0jtwt8YpvxqNlxaLl7BN0k555sRDccyRhE5LLV6W7RT75s9FURqNF7rdmvUWh+a619HYi6RnohXWukK7K+DTl7JD2K4EUeJUduvw=;
 20:b84caUZXCH6KhOw3L5jHdYsXk4e6AUsYgC27e7QVRVGCHEorFP1yecCqR1tl4J1E9GYvyZgEaSPvQr1GSSxZmtw5/g5BWJtbyvBfKhBX94TjrcXhrZ/Qaz+rvVD8EcLBqSWkGVsQ0YeU55LRIT0oN/XcDibtHsf3FmRui8VCZO3sqlEg4YYYlhBQb+gq5r42clF3ao5UvJn4hdhMdDpeCgaLexmf6ZdTHIvuVp+sGqZCisWSxFDF55F9FH3BEfvn;
 4:qM5Hxe7NkDHESCbIr0GVvlB6mR4/TzJQbIFcMCdyw2yHgw9EcpmvMfiR4NU6SwvyNWDCVzEeLbbfTwYe71YsEyAgmqXYp/DCyCOE4DcTY8WiMLqra80CS/lJYxmosAyH66ONN543TRDnGYT4PN8JEadWrn5LhyPv5MTYSlNf7aBruNfox/hvke+B+Yv/uyPF0b8euAzM4hLIqPQoBc8sA0rfO5qk0YzYFKA2V+tcaKw7nNkVsvpri/5oiCGVU2SXpJFihc4pGdm6Ua6vUmebzrgeeezS5WPRQ7RO7+JlAG/Wt40Vj5/mK5KK+WTb+KYK
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB24290E9467A8028FBC3387F184B60@VI1PR0802MB2429.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231232)(944501368)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2429; 
X-Forefront-PRVS: 06469BCC91
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2429;
 23:bj54GC1S/c8tL9KTcqP2R94xoniysXwD9nfWHC6?=
 =?us-ascii?Q?W7SA8ilqZuge8+Wi69KZWGt4Q3ZA8jZ7njiv9oFUHAjzjaZ/P7/kOcexXnh4?=
 =?us-ascii?Q?exJOtCETLvRGbJVTPinXkPl0o1FLIdvOATh+o0XnfRR/PJourUjFrPQdCTo4?=
 =?us-ascii?Q?q8Ms/jCsnS7Y9kCp1+uqqpRI+LKos3Juhp/V52XujkvX9V5mWi+yrF83KMa/?=
 =?us-ascii?Q?lI1wJy0H/3nOzgYBTyGvr9bHqmXHlEhZ/I8+zOBWc8TZzClWqlOodR5f4/NI?=
 =?us-ascii?Q?Ra3jpXwk9urB0WbTUWiuVkaKMREFTwVExlPSZjQSGcbgLUus8WM3Bx7iRPIn?=
 =?us-ascii?Q?6g5gcKWjZuh7w3raDze/dh/vZ8nuQlfdULqFMWYWWJnu7q11ColmyaW3mPqd?=
 =?us-ascii?Q?+fQeCcGCgaAgzaOSDIiAxiW/2kgBrLnhoMkIWADUXc6p60MxtH7y1h5711AK?=
 =?us-ascii?Q?iiD3Dzs14P5IwEC8/F90GPUvENXTlknRfeMrX14drt46CBog2m/7q28krTTR?=
 =?us-ascii?Q?uM2cMqqvGaPD4FkdRPyYdtkyCakGQ06edF1v+5U7lCFAdayrJip36Gl+itKW?=
 =?us-ascii?Q?uBTXB9z7WFjCZeeGQxBNZ7q+n+amv8NCp6RqPDl+as4fyr6vMdo/xQ0V4bvK?=
 =?us-ascii?Q?P3U6wQfXX3yWwtRgfOtvpO87zf+crLHbXxe66IxS//BAcWwYLBBba3LF+FMQ?=
 =?us-ascii?Q?YYG069bQpuWEGiWo3fXy56hGaUSXBNvgqYXy9H8QK8F+KKUcnFhjjbsAodOe?=
 =?us-ascii?Q?6zIy8ueePo6L86w7w++SYCDt7zeIVsMXrpJoCLuSk4YKc0zdrIyBBvFl3xOo?=
 =?us-ascii?Q?psUfTZo9wQ3UJgfrh/8/lYmf7n2U1w+2nhzFWfUjAJ9y5DEWIFwab6nm5e7G?=
 =?us-ascii?Q?u2FBmKxDGOt3rYlLMKopIDoU3degU941Bl89SZ3NmRSn7lsThtXeYBMzmNRz?=
 =?us-ascii?Q?T33unxz/BaZudUuMvXs0vv4G7Ma98Kxw/yJ/N9n7QwBDUxKfGmI7uamrPd4y?=
 =?us-ascii?Q?iO51gHJHMMsilB0UrChRW2Jf0Bx/9RZpq5nqZadxqfPzXGI7UJxXS7E3Ef5B?=
 =?us-ascii?Q?q4ONolw2NbtewpyzVBofah1IFu07sNgCBidGKbu2KJAt0wSAJP/qGD+4lZ4y?=
 =?us-ascii?Q?xaqDKXqh4DGYCWNYGFxaj26FxH3EYu5QHej8F1vZQGd2hFQpu2oBsnFatRSY?=
 =?us-ascii?Q?g5ei+Oj6EiLfXebvAneb79fjX1sl0finaGUeMhP4PzY1RXWFQJcZVOz7k+g?=
 =?us-ascii?Q?=3D=3D?=
X-Microsoft-Antispam-Message-Info: LXxiNJv4yCFZQPustjAvMEeDugRAh2jrtpJM5D96bR0vYqYVFIsP7hQXLtidl9f/22eTovd0a10VVz2qqZulcH9rJau5fR5L5UZ7doHZMS4BJS6Obl0uWYHGsGiE8I1Jsz6lO3+RAcduzwBFobwV6Jx8MA3cd5BfEwUB57f8wtPmXfqUmRNV6LCQioNI6dieGGQYMmboYJI0RMIah0oFr6XowgP5DG+vm5J5wT1Nac87bys8gtmugid5dmTE+IK2pE9t+3XG0sbtoLGSViKYdlVgqCNKYUTOneafpdHy4UR4GJJ9IO1aRXVDcmepp9WQUCSHIwY7XZjJeRsp0c3x4kcxQmG34M2vrTJ3mgATE38kS8oL9Jm26xMoCQbRfgdmWIzbIU8//At8xOW8ao6UGdP8WactuTglN0iVYR+ACQU=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 6:8WooE3hffT+6JzpR/peeTLXj+A6ZDFSsjViKcyp9Cl86kHNK7VXqrQBprgyBX7toP5Kl4FZjAT7zkX+LDG0pHJQm+xt/3vz2ldxeDqolysp2XOiUHfYjrtZmdU+NdxDjm+eWBBgq1pv+NBzWoLf4vHqqmbGmJylWU3jarzKcay9xdyaLPfZxMOHTBizyWklrc0FXxTkFkntRCjTC4w4J8ptDsB+XIQFnaldABZKni/NmrOoeHl7+Ff/d9TjVjmDLM9hFvi+nfwvNUTGjWfOmDezD2w53CChaBxhFaBJdbns+Po8EWvvm9WrOL57WW6cX7ewjm3C1Z2+P+qHb1vTA+OUGL+5gOmUH4N7hsSdOPrFil1+H2dWtWBhGD0G+wOtuwYqjxR2QSJqnZ8xvJdFqgFyLGEmLoFsuUVnQYxqkPVCZ8QLdVblQF+2JH/SeNEfgMYWOk8p2iSHaN474iWMwx0zlZR4fsckqJfB/AZT7ROwPJGTH7mtkkRLksv3hgdBM;
 5:mYOsuO6bGxIhe6Ye0M3SPmuomyb8MLoQW9Yt99Dq1Awr6wDxRn32wpLFcyO5VwAEWmatK+jlj3xMo5o87RcMcKaLdoj2NdUPvlQjAI7E62e6VEKUmoeN1CI2gRSqS2stSwBCu/9rT60RWqziTtr1xmQ4/sETWKQNNswrAjBk6Fc=;
 24:b0sLkf+01ASiVtQ5zmtjWZpJHVCP15x5MwDkyY0XWLoeS6w+O+HeZvi6nl680nxsA0U56FUsZCgy8dc3eRBxh7P5KFmyor6loi3aLql3vnw=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 7:jWY47Kc6El8YO0W5DgI4C8Pyv7X+YkwsjOaGPc6c8mdzvGj6fICDACQKcU4tKELe6Rfs2frZ8N8gL6e3ok6Ifx1kLDpjWRrvLAjGpALTig7fI04x9STEB4QPHtVQseyaj9emHVDe/MDztUXzbSNxmLpZv/gLg/ly5ax6evH3z4C3y3ZkhnhxdyuaFRAJhhpHlhVhx3N8GMmAVMOtQsYbbGyIzEIiXCx5AnXjRbuiePnQBv8NjIq7PDulcDsVaJyn
X-MS-Office365-Filtering-Correlation-Id: b19c4ef9-a36e-47db-32bd-08d5a5103892
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 09:39:02.7301 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b19c4ef9-a36e-47db-32bd-08d5a5103892
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2429
Subject: Re: [Minios-devel] [PATCH v3 26/43] arm64: implement the
 run_idle_thread
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gTW9uLCBBcHIgMTYsIDIwMTggYXQgMDY6NTE6MjdQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE9uIDE2LzA0LzE4IDA3OjMyLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4g
PlRoZSBwYXRjaCBpbXBsZW1lbnRzIHRoZSBydW5faWRsZV90aHJlYWQoKSBmb3IgdGhlIGlkbGUg
dGhyZWFkCj4gCj4gVGhpcyBwYXRjaCBpcyBhIHJlYWxseSBnb29kIGV4YW1wbGUgYWJvdXQgd2h5
IEkga2VlcCBzdWdnZXN0aW5nIHRvIHNjcmFwCj4gYXJjaC9hcm0gYW5kIHdyaXRlIGZyb20gc3Rh
cnQuCj4gCj4gVGhlIGNvbW1pdCBtZXNzYWdlIGRvZXMgbm90IG1hdGNoIHRoZSBwYXRjaC4gWW91
IGZpeCB0aGUgY29kZSB3aXRob3V0Cj4gZXhwbGFpbmluZyB3aHkuIFdoeSBkbyB5b3UgbmVlZCB0
byBmaXggdGhlIGNvZGU/Cj4gCj4gSSBhbSBub3QgZ29pbmcgdG8gZmlnaHQgYWdhaW5zdCBzY3Jh
cHBpbmcgdGhlIGNvZGUsIEkgaGFkIGVub3VnaCB3aXRoIHRoYXQuCj4gSG93ZXZlciwgeW91IHNo
b3VsZCBhdCBsZWFzdCB0cnkgdG8gbWFrZSB0aGF0IHNlcmllcyBlYXNpZXIgdG8gcmV2aWV3LiBU
aGlzCj4gbGlrZWx5IG1lYW5zIHJld29yZGluZyBtb3N0IG9mIHlvdXIgY29tbWl0IG1lc3NhZ2Ug
dG8gbWFrZSBjbGVhciB0aGUKPiByYXRpb25hbGUgb2YgdGhlIGNoYW5nZS4KTXkgZmF1bHQsIEkg
d2lsbCBhZGQgbW9yZSBjb21taXQgbWVzc2FnZSB0byB0aGlzIHBhdGNoLgoKPiAKPiA+Cj4gPlNp
Z25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Cj4gPi0tLQo+
ID4gIGFyY2gvYXJtL3NjaGVkLmMgfCA0ICsrLS0KPiA+ICAxIGZpbGUgY2hhbmdlZCwgMiBpbnNl
cnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+ID4KPiA+ZGlmZiAtLWdpdCBhL2FyY2gvYXJtL3Nj
aGVkLmMgYi9hcmNoL2FybS9zY2hlZC5jCj4gPmluZGV4IGEyMDk1MTMuLmU2M2RkZDQgMTAwNjQ0
Cj4gPi0tLSBhL2FyY2gvYXJtL3NjaGVkLmMKPiA+KysrIGIvYXJjaC9hcm0vc2NoZWQuYwo+ID5A
QCAtMzksOCArMzksOCBAQCBzdHJ1Y3QgdGhyZWFkKiBhcmNoX2NyZWF0ZV90aHJlYWQoY2hhciAq
bmFtZSwgdm9pZCAoKmZ1bmN0aW9uKSh2b2lkICopLAo+ID4gIHZvaWQgcnVuX2lkbGVfdGhyZWFk
KHZvaWQpCj4gPiAgewo+ID4tICAgIF9fYXNtX18gX192b2xhdGlsZV9fICgibW92IHNwLCAlMDsg
YnggJTEiOjoKPiA+LSAgICAgICAgICAgICJyIihpZGxlX3RocmVhZC0+c3AgKyA0ICogQ0FMTEVF
X1NBVkVEX1JFR0lTVEVSUyksCj4gPisgICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCJtb3Ygc3As
ICUwOyBiciAlMSI6Ogo+ID4rICAgICAgICAgICAgInIiKGlkbGVfdGhyZWFkLT5zcCArIHNpemVv
Zih1bnNpZ25lZCBsb25nKSAqIENBTExFRV9TQVZFRF9SRUdJU1RFUlMpLAo+ID4gICAgICAgICAg
ICAgICJyIihpZGxlX3RocmVhZC0+aXApKTsKPiAKPiBJIHdhcyBleHBlY3RpbmcgdG8gc2VlIG5v
IGFzc2VtYmx5IGNvZGUgaW4gdGhlIGNvbW1vbiBkaXJlY3Rvcnkgd2l0aCB0aGUgbmV3Cj4gc3Bs
aXQuCm9rYXkuCiBJIHdpbGwgbW92ZSBpdCB0byBhcm02NCBmb2xkZXIuCgogVGhhbmtzCiBIdWFu
ZyBTaGlqaWUKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
Ck1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qu
b3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3Mt
ZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 09:39:46 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 09:39:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8jZ4-000115-2c; Wed, 18 Apr 2018 09:39:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8jZ3-00010t-2V
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 09:39:45 +0000
X-Inumbo-ID: b3093880-42ec-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id b3093880-42ec-11e8-8249-2fda3a446a53;
 Wed, 18 Apr 2018 09:41:41 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 44CBD1435;
 Wed, 18 Apr 2018 02:39:44 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 771253F487;
 Wed, 18 Apr 2018 02:39:42 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-27-git-send-email-shijie.huang@arm.com>
 <37a0fcde-f208-3eb4-d57c-02acd34f861d@arm.com>
 <20180418093845.GC20072@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <fcac047d-916e-baf3-2c4c-4b8229e7f0d4@arm.com>
Date: Wed, 18 Apr 2018 10:39:41 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180418093845.GC20072@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 26/43] arm64: implement the
 run_idle_thread
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAxOC8wNC8xOCAxMDozOCwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIE1vbiwgQXByIDE2
LCAyMDE4IGF0IDA2OjUxOjI3UE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4gSGksCj4+
Cj4+IE9uIDE2LzA0LzE4IDA3OjMyLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4+PiBUaGUgcGF0Y2gg
aW1wbGVtZW50cyB0aGUgcnVuX2lkbGVfdGhyZWFkKCkgZm9yIHRoZSBpZGxlIHRocmVhZAo+Pgo+
PiBUaGlzIHBhdGNoIGlzIGEgcmVhbGx5IGdvb2QgZXhhbXBsZSBhYm91dCB3aHkgSSBrZWVwIHN1
Z2dlc3RpbmcgdG8gc2NyYXAKPj4gYXJjaC9hcm0gYW5kIHdyaXRlIGZyb20gc3RhcnQuCj4+Cj4+
IFRoZSBjb21taXQgbWVzc2FnZSBkb2VzIG5vdCBtYXRjaCB0aGUgcGF0Y2guIFlvdSBmaXggdGhl
IGNvZGUgd2l0aG91dAo+PiBleHBsYWluaW5nIHdoeS4gV2h5IGRvIHlvdSBuZWVkIHRvIGZpeCB0
aGUgY29kZT8KPj4KPj4gSSBhbSBub3QgZ29pbmcgdG8gZmlnaHQgYWdhaW5zdCBzY3JhcHBpbmcg
dGhlIGNvZGUsIEkgaGFkIGVub3VnaCB3aXRoIHRoYXQuCj4+IEhvd2V2ZXIsIHlvdSBzaG91bGQg
YXQgbGVhc3QgdHJ5IHRvIG1ha2UgdGhhdCBzZXJpZXMgZWFzaWVyIHRvIHJldmlldy4gVGhpcwo+
PiBsaWtlbHkgbWVhbnMgcmV3b3JkaW5nIG1vc3Qgb2YgeW91ciBjb21taXQgbWVzc2FnZSB0byBt
YWtlIGNsZWFyIHRoZQo+PiByYXRpb25hbGUgb2YgdGhlIGNoYW5nZS4KPiBNeSBmYXVsdCwgSSB3
aWxsIGFkZCBtb3JlIGNvbW1pdCBtZXNzYWdlIHRvIHRoaXMgcGF0Y2guCgpBbmQgYW55IG90aGVy
IGNvbW1pdCBtZXNzYWdlIGRvaW5nIHRoZSBzYW1lIHBsZWFzZSA6KS4KCkNoZWVycywKCj4gCj4+
Cj4+Pgo+Pj4gU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNv
bT4KPj4+IC0tLQo+Pj4gICBhcmNoL2FybS9zY2hlZC5jIHwgNCArKy0tCj4+PiAgIDEgZmlsZSBj
aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4+Pgo+Pj4gZGlmZiAtLWdp
dCBhL2FyY2gvYXJtL3NjaGVkLmMgYi9hcmNoL2FybS9zY2hlZC5jCj4+PiBpbmRleCBhMjA5NTEz
Li5lNjNkZGQ0IDEwMDY0NAo+Pj4gLS0tIGEvYXJjaC9hcm0vc2NoZWQuYwo+Pj4gKysrIGIvYXJj
aC9hcm0vc2NoZWQuYwo+Pj4gQEAgLTM5LDggKzM5LDggQEAgc3RydWN0IHRocmVhZCogYXJjaF9j
cmVhdGVfdGhyZWFkKGNoYXIgKm5hbWUsIHZvaWQgKCpmdW5jdGlvbikodm9pZCAqKSwKPj4+ICAg
dm9pZCBydW5faWRsZV90aHJlYWQodm9pZCkKPj4+ICAgewo+Pj4gLSAgICBfX2FzbV9fIF9fdm9s
YXRpbGVfXyAoIm1vdiBzcCwgJTA7IGJ4ICUxIjo6Cj4+PiAtICAgICAgICAgICAgInIiKGlkbGVf
dGhyZWFkLT5zcCArIDQgKiBDQUxMRUVfU0FWRURfUkVHSVNURVJTKSwKPj4+ICsgICAgX19hc21f
XyBfX3ZvbGF0aWxlX18gKCJtb3Ygc3AsICUwOyBiciAlMSI6Ogo+Pj4gKyAgICAgICAgICAgICJy
IihpZGxlX3RocmVhZC0+c3AgKyBzaXplb2YodW5zaWduZWQgbG9uZykgKiBDQUxMRUVfU0FWRURf
UkVHSVNURVJTKSwKPj4+ICAgICAgICAgICAgICAgInIiKGlkbGVfdGhyZWFkLT5pcCkpOwo+Pgo+
PiBJIHdhcyBleHBlY3RpbmcgdG8gc2VlIG5vIGFzc2VtYmx5IGNvZGUgaW4gdGhlIGNvbW1vbiBk
aXJlY3Rvcnkgd2l0aCB0aGUgbmV3Cj4+IHNwbGl0Lgo+IG9rYXkuCj4gICBJIHdpbGwgbW92ZSBp
dCB0byBhcm02NCBmb2xkZXIuCj4gCj4gICBUaGFua3MKPiAgIEh1YW5nIFNoaWppZQo+IAoKLS0g
Ckp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJv
amVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21p
bmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 09:41:53 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 09:41:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8jb6-0001gl-QJ; Wed, 18 Apr 2018 09:41:52 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=8hzp=hh=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f8jb6-0001gf-2U
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 09:41:52 +0000
X-Inumbo-ID: 9461cf4f-42ec-11e8-9728-bc764e045a96
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe08::607])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 9461cf4f-42ec-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 11:40:50 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=1ojNyYiY48GJVWSBoXi9UPDZsZ+do34zmwLN7iPryHk=;
 b=jYX7rW7gmkYQkdn2Imzi0KVTO586pcDb6ugAxBTzODzt6qSHOCbrGh39D8BG1nTNW36oKQT7fA6r8XVnfnXVvazzwp8UBU02aIU9L4n+zfFTqPBnDNn2xeZpvyHsWSW+5h2MPNuAs/ZlH2a9SrOm6jH7xXHfq1yy88WN//dAzyw=
Received: from DB5PR08CA0044.eurprd08.prod.outlook.com
 (2a01:111:e400:c576::12) by VI1PR0802MB2432.eurprd08.prod.outlook.com
 (2603:10a6:800:bb::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Wed, 18
 Apr 2018 09:41:43 +0000
Received: from AM5EUR03FT013.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::202) by DB5PR08CA0044.outlook.office365.com
 (2a01:111:e400:c576::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Wed, 18 Apr 2018 09:41:43 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT013.mail.protection.outlook.com (10.152.16.140) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Wed, 18 Apr 2018 09:41:43 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Wed, 18 Apr 2018
 10:41:30 +0100
Date: Wed, 18 Apr 2018 09:41:27 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180418094126.GD20072@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-3-git-send-email-shijie.huang@arm.com>
 <2d8fcc0a-9d2e-4814-bcbb-d4b55b65838f@arm.com>
 <20180418093035.GA20072@ubuntu.shanghai.arm.com>
 <aa3aaa48-7727-1a01-67b6-d7b65cb545c9@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <aa3aaa48-7727-1a01-67b6-d7b65cb545c9@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39860400002)(376002)(396003)(346002)(39380400002)(2980300002)(438002)(189003)(199004)(4326008)(16586007)(104016004)(6666003)(5660300001)(6862004)(23726003)(6636002)(1076002)(305945005)(6246003)(229853002)(33656002)(58126008)(55016002)(356003)(8666007)(53546011)(39060400002)(47776003)(476003)(54906003)(76176011)(7696005)(316002)(86362001)(186003)(11346002)(126002)(446003)(426003)(72206003)(2906002)(478600001)(106002)(486006)(336012)(93886005)(77096007)(26005)(46406003)(97756001)(8936002)(8676002)(50466002)(106466001)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2432; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT013;
 1:pDSmGxmsUptT9qw6HZ4AcvNM3/R97EdoEcR/M3Vv+RH7THcIbnh1HYoiV2R1+nyKns3zjxoCSedE4fNqoowkgQEvkBw3PobVfzRq0H4pwr+AZAqyBDoSJCiUYeoo7QFC
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2432; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 3:9ibxyaiiezsZwGwQsMiQttwI5lPuGid+koLP7NpFekZZatbsW3KB+UYcDKLFc14A6XG/ECAicmonzZD0IxGQ1Xq30DOrseS0RiFni1Mvm8EqLOnElUz/d7/o4PHiqz4CNClj486OSazMXRKoLUQyAe0nAar6z/95A4epegpqKx7inUbGalQ/9TaQ9qnzbMs2xM7/Kdk9jIbCuQZkTRLVEOvp5hvnZB4P/tgQ14Ga9aFME+deivJOBd37wlQyxrq6+BXcNKjzSfQk0wbHZaDldpgWqlSYmH07eMA8XOFxFHS+9A/J68lwHWwb+xGMwSvQiH+qg44M4Wmq4JQjqoilDVmvakSVbU6SpzTlQGjo7+c=;
 25:6KD+kFb7k+lFXSqUHlLkHRDqfrsYceA+wGOE8ppKyTBuqD43JTdlg7Dkt+tUeHgS4gtA1DXb5DcG1zABQmdYgNuuegmImdDvgikq2WWXqc2Y+QPvqNHeFTDDqrkgApF4lhmYe8jG5I6CHwHAvvJd+DhfWTHqZEhkIXkg3Pyyn6+y9fxQUut6UF4lLU2zgzK2eRUL4KdCbEeiQU7u1BQPUOms6ihJ+PUdw7XiC1EptaNS8xu5xWHVwknrdwFahvuuIkbSyu337+VmCPiUafZBvOB5LRCUqbRAv0zETStOn1fSoQnlVBSm7JQ/DPlQgl0i8cZD/D297AQKgu2EnLzckA==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2432:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 31:yhCBHhARb5dVM9zuyEg18slazPm7sWZaC9OJLBKQSznV2UhYsUNh/CQiOjOx+RpyNOaxes+cHYaXlL8KMJfHBW0W8vQ07LelIsA8zIY6n3hrERPkqja4weWjJk2fRgRy+FLJO8Jtb5InpL37N3MYbKnCsBsBHpqiTkhxJF2x07bwhT7Ts4Iok/dBL/tW55VBbn08DWqNworywej+A/Rzelt6jbHkemwMdp7m/Plh0nc=;
 20:lW23oZhb20eF3mOo2ZLXzOkDWsKMuvevI5hQAs41X79YYoFX1RF1mxstseVLqm9Xid3Aj6hCV2r7cD1pdieSh2FY1W+42x7kHe6qAfDuj1xySfldh0NtKvnDwBdAeqO41f4Leiso0hzNEc+bW0nIwgGTMBRhIFJVabzvDvCW0Vf6HyQ9C5wKjYpoFdcMN8r45zbieE3Xr58K+KyxYxj/+zqYALK/TTyHbWORUbCFJ4NgMA64kGOfX0gceAWPx2L6;
 4:qsvmdEL/F/H72J694HJ+Mp7beEvBjBV2KODJnUq9fgTlED76pU4P/141rywaxg36LOC+kVEJGDczx7l0RpC6dozIh6pKREE7fgOnkDBIZKqlz/UkTW6Qb/yxCN+zUh44zMSs2h4pxqIgx3sV+r1zb1Huk67ThhxvQfokKIWFu54iB1Qgo0OP1q7mwvdPFzy/8df4hYCzWT+UAb/OIiroieQnc6PP0jztbKJtMOgc/j8CdHDRjy6PJnARlvYHyEskbbgvbidZqRRX9vVYtynmfA==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB243202841C7B5324CDFF930784B60@VI1PR0802MB2432.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(10201501046)(93006095)(93004095)(3002001)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2432; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2432; 
X-Forefront-PRVS: 06469BCC91
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2432;
 23:5jbqnLoNYljqUDyEqxjLGwitgaLFOkJCHGekuzJ?=
 =?us-ascii?Q?mTm2Hk4eoVhkr6q2WthsGFwEA3haxVfEZfmmsEskvF23uAju0qA1d4Bj4m7w?=
 =?us-ascii?Q?HFdUCXTcwqqGAWreTjo4R12L9Y7OSzElA9LfUJtJwnKyAgoh4yBTzPwntYra?=
 =?us-ascii?Q?1sCBK3d2NfedgsruURdlUyQbYsELRKlOvMdZJi7HEx4sEGxEg/DHOlP1cp9g?=
 =?us-ascii?Q?w2AlVYNUoZuxZ3zmqkgkvi1RVqjIw06G4Q9SL35Zd0vilIcSm6GxoTt9Ok+i?=
 =?us-ascii?Q?Q62b7cV3hQXGvBnxA0myCWnI+N10WhOZAgkJhhJaKfvDqPx+oCxBsdk2t3D0?=
 =?us-ascii?Q?KhQIa8C+gV6zerxRx1ntj8soH2oaTMYIZP/tbLpJOeaPi5byhfuMnA52WBOU?=
 =?us-ascii?Q?z8sVqTQicWLbvDM48HI/TNvjAY5gc+8SvINHJJF8zobNA3W5UPen7ySEKtBd?=
 =?us-ascii?Q?ztiNklH9o3YoIDahBZfm3FeOHXkLDJ3thsGs+5A7GxisRNasw6slPl+zkvfE?=
 =?us-ascii?Q?Qdt/gGwwPbaDmvJfx1ugKsBd/KwlP4JRGv15a3ogg7FQmYt/092BclfkvJrm?=
 =?us-ascii?Q?0inFNSA6xHf3lTdM8g3Uc3YnWdnwDGpRB+AMXzapy2cDmNbDb1u/C6uUtw75?=
 =?us-ascii?Q?pC+9m7ahSQRhE2i/0Fjka4k6x0E4U6RxgR2KXSfo5d8vcGSpFrvqgF8A084O?=
 =?us-ascii?Q?zX8YPIaet7na6iQ2nfw92sAYtmYAHGpGZ93xgGQOKjz0kaA0+pSmQ4Q4Kt9e?=
 =?us-ascii?Q?18uXxYWqmMd2XarEHhaEZ5V+U/L/X0vYXF3DF07e2NHOOPiGw7136vgRNL1+?=
 =?us-ascii?Q?iqPgbE2vwn112RTR3mkLz8QnRJrKGS/AlSeNaM6JDmKZLN9ECGjm2JuYqiQV?=
 =?us-ascii?Q?1/sDh7gy3BgXVwi0YRAIRTQqYDuCNtu0V1+FyDQP094OdJEtHmdm/OVy2Qo3?=
 =?us-ascii?Q?ZYgO4ujJRBsG1ldP2SkKyyI5JgB2DrCadPhz/yMp+Qifojkbg2OxAZBDjEch?=
 =?us-ascii?Q?U9GhMGYpSBZHgtXvDBOtOdvwm9u97xBV15xDZNUFrElH3GRZZsc2TegnF6r+?=
 =?us-ascii?Q?VqomrbV3nSGk0VRMFk8nFmFmX4jUB6ew9/5ogG4DIH9fS/bG1KKeHF8pch5u?=
 =?us-ascii?Q?vUgf+Q3QOf56GJ2fO9yCgWfqUcqH++1mjDjtiEyxJrOFA8wtJqtLWIdWJ9ar?=
 =?us-ascii?Q?Xf6zlmSO4MvT7saZAKxP6MUQ2mjoABTTu9SLmR286vJ+L4jfAfd6boOzbiRF?=
 =?us-ascii?Q?sbwvOqBmzDph2DPa8S2A=3D?=
X-Microsoft-Antispam-Message-Info: nsNLb4ZpWEoqZhhTkB5HXt2KLQpUF7dh7LAD2AgJkf1BTEU//p2wLUZr8xjO4z+vTiWNgwgSdCSjnpHszNSlA3wtAV20bBpWXpak4MAaJiMNk9lLRGHo7Lmat9rHzgNGsfkrbZm74FSEXGFNx9QVVrtRlwwHPewIr3A+fGYCzNbFEr8lskshBKjmafRy+pzIa9hv1jTNlMhcW6XXeQP0CONU9bQQ3hYYh3ArcFoh7sgjQOkzKdQyj92L9f5m6psIjN8IaamtuO40WYgZrQj8WLxEQtaYi5zUsapavccmQ9oMV1kb/vH8OZR2UwbwS43lmIREch4vD4S54l6CM32oNjNF4dRfOcCt2FkK46FmsXSjgWg/JnpnkQqU3DH1i7OYxKL1MptLbLrCiEEwPdjDbUEyqtMO5N0XYB9F2mcNitQ=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 6:X3LtxxxTbfS0Le/ZvQ4vZcFYYoN8a7stIcUdxzP1aLz5U7CTRXp4pAZlcMQJPoQGd/pKvxjlPrBBrQWXG1Kjqao6q86oPULPppbpkNWrNGdBJlVSCLmh2aN9+C2rxQMo3mhZF5z9s++JGGyxjdmXjuUoSDHOTlSp/7QovACn/q3plpeMFtRgb4Om/z5srpKeAseHFf03LHXiLQnk7BFPtiqfcATZarCF1sqg+xaXJRNTV+3gslTOD52/vTSr0Pe26GUfSq/aT0HaAR32G2/6bJ+vF8U+3sNS/8c410WoITQoEQR1JQ8zLXJXRFaocltrY1ku2idrjPiI+c4aRhEKkWWtjVj2O2bO/5PSmXky5aIx2G5dnrBqCFkfmaIkCSCbZPct1j6xWlfr83CdsSY3MC9k+LlZFdGyLADW/GLFpPwpNi/U12m5+REybsi+f+SsPBbvYOr6FL7i36zAc2dhRoGlb7T1ydfEBTdql61bDDfdeuoqjInTCZqY1OCra+gz;
 5:MdaBkxsCTygL3MvWyVEQTNQ/LuNDby73qnB2urBABln5EE/F5Ufb3qA/PrhYoR80yXF8B/mqaq1N5VD3MFyHpKJoC2Rln4LTaT5T811lVExWptzzgIyxh+1L+F4FNH3jDGXDjIxiEK88jen6xQ9D8NPEhkfcg2bL5rnhoCR86Ls=;
 24:ggvusdKGH1IzmKkjwCfcp68pyiE0KDOCEOOULgpmF03tL/sbfgzTG2QXG5fkdVLU/XMw7vjDM/k1YWMNPMeQoGIp7Gr5sTwcakAbBi2nlJs=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2432;
 7:er11v1hx0kxGWaG5M17jOdB4watqGR6fGrzZKRrOe3ST7pvh2gz2a67vlEYndVtP1rrfWuuPCzn6XYtubbyFcSj1u7UXXxr/9zXZoiTzJINtU5xwxMpYDbFXuFwL3U3VGrvHEhKF0btr00j2mLWPEALezdM+JPuSgi1thK82ismzdWCS8oHB1ycWGIJzhQRKWbmw4Q8QzCKhEYXeJNoQbI7xxJTPUnm5ytswIuHSnpG8Kaqp8eZVrknxo7TCBUQA
X-MS-Office365-Filtering-Correlation-Id: 6a7fe299-e2d6-4b3f-a946-08d5a510981a
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 09:41:43.0393 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6a7fe299-e2d6-4b3f-a946-08d5a510981a
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2432
Subject: Re: [Minios-devel] [PATCH v3 02/43] arm32: remove the arm32
 specific code file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMTA6Mzg6MTVBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE9uIDE4LzA0LzE4IDEwOjMwLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4g
Pk9uIE1vbiwgQXByIDE2LCAyMDE4IGF0IDA0OjM4OjIwUE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3
cm90ZToKPiA+SGkgSnVsaWVuLAo+ID4+SGkgU2hpamllLAo+ID4+Cj4gPj5PbiAxNi8wNC8xOCAw
NzozMSwgSHVhbmcgU2hpamllIHdyb3RlOgo+ID4+PlRoaXMgcGF0Y2ggcmVtb3ZlcyB0aGUgYXJt
MzIgc3BlY2lmaWMgY29kZSBmaWxlOgo+ID4+PiAgICAgYXJtMzIuUywgaHlwZXJjYWxsczMyLlMs
IG1pbmlvcy1hcm0zMi5sZHMKPiA+Pgo+ID4+SG93IGFib3V0IHRoZSByZXN0IG9mIHRoZSBjb2Rl
PyBJIHNlZSBxdWl0ZSBhIGZldyBwYXRjaCB3aXRoICJyZW1vdmUgYXJtMzIKPiA+PmNvZGUiIGlu
IHRoZSBjb21taXQgbWVzc2FnZS4KPiA+VGhpcyBwYXRjaCBqdXN0IHJlbW92ZXMgdGhlIHNwZWNp
ZmljIGZpbGVzIGZvciBhcm0zMi4KPiA+QXMgeW91IGtub3cgdGhhdCB0aGVyZSBhcmUgb3RoZXIg
cGxhY2VzIHdoaWNoIGhhdmUgYXJtMzIgY29kZSwgc3VjaCBhcyBnaWMvdGltZXIuCj4gPgo+ID5J
IHByZWZlciB0byByZW1vdmUgdGhlIGFybTMyIGNvZGUgd2hpbGUgYWRkaW5nIHRoZSBhcm02NCBj
b3JyZXNwb25kIGNvZGUKPiA+aW4gdGhlIGdpYy90aW1lciBmaWxlLiAgSXQgaXMgbW9yZSBjbGVh
ciB0byBtZS4KPiAKPiBQYXRjaCBzaG91bGQgaWRlYWxseSBkbyBvbmUgbG9naWNhbCB0aGluZ3Mg
dG8gaGVscCB0aGUgcmV2aWV3ZXIKPiB1bmRlcnN0YW5kaW5nIHRoZSBwYXRjaCB3aXRoIG1pbmlt
YWwgZWZmb3J0LiBSZW1vdmluZyBhcm0zMiBjb2RlIGluIHBhdGNoCj4gY2FsbGVkICJpbXBsZW1l
bnQgYXJtNjQiIGRvZXMgbm90IG1ha2Ugc2Vuc2UuIFBsdXMgbm93aGVyZSBpbiB0aGF0IHNlcmll
cwo+IHlvdSBleHBsYWluIHRoYXQgZGVjaXNpb24gd2hpY2ggaXMgbm90IHdoYXQgd2UgYWdyZWVk
IG9uLgoKT2theSwgSSB3aWxsIHVzZSBvbmUgcGF0Y2ggdG8gcmVtb3ZlIGFsbCB0aGUgYXJtMzIg
Y29kZSBpbiB0aGUgbmV4dCB2ZXJzaW9uLgoKVGhhbmtzCkh1YW5nIFNoaWppZQoKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxp
bmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54
ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 09:45:21 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 09:45:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8jeS-0001xM-IY; Wed, 18 Apr 2018 09:45:20 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8jeR-0001xB-Eo
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 09:45:19 +0000
X-Inumbo-ID: 10307b31-42ed-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 10307b31-42ed-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 11:44:18 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DD78D1435;
 Wed, 18 Apr 2018 02:45:16 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 7C19A3F487;
 Wed, 18 Apr 2018 02:45:14 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-3-git-send-email-shijie.huang@arm.com>
 <2d8fcc0a-9d2e-4814-bcbb-d4b55b65838f@arm.com>
 <20180418093035.GA20072@ubuntu.shanghai.arm.com>
 <aa3aaa48-7727-1a01-67b6-d7b65cb545c9@arm.com>
 <20180418094126.GD20072@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <77731273-bc5d-0e77-4911-3a8f38d70bf5@arm.com>
Date: Wed, 18 Apr 2018 10:45:13 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180418094126.GD20072@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 02/43] arm32: remove the arm32
 specific code file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAxOC8wNC8xOCAxMDo0MSwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFdlZCwgQXByIDE4
LCAyMDE4IGF0IDEwOjM4OjE1QU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4gSGksCj4+
Cj4+IE9uIDE4LzA0LzE4IDEwOjMwLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4+PiBPbiBNb24sIEFw
ciAxNiwgMjAxOCBhdCAwNDozODoyMFBNICswMTAwLCBKdWxpZW4gR3JhbGwgd3JvdGU6Cj4+PiBI
aSBKdWxpZW4sCj4+Pj4gSGkgU2hpamllLAo+Pj4+Cj4+Pj4gT24gMTYvMDQvMTggMDc6MzEsIEh1
YW5nIFNoaWppZSB3cm90ZToKPj4+Pj4gVGhpcyBwYXRjaCByZW1vdmVzIHRoZSBhcm0zMiBzcGVj
aWZpYyBjb2RlIGZpbGU6Cj4+Pj4+ICAgICAgYXJtMzIuUywgaHlwZXJjYWxsczMyLlMsIG1pbmlv
cy1hcm0zMi5sZHMKPj4+Pgo+Pj4+IEhvdyBhYm91dCB0aGUgcmVzdCBvZiB0aGUgY29kZT8gSSBz
ZWUgcXVpdGUgYSBmZXcgcGF0Y2ggd2l0aCAicmVtb3ZlIGFybTMyCj4+Pj4gY29kZSIgaW4gdGhl
IGNvbW1pdCBtZXNzYWdlLgo+Pj4gVGhpcyBwYXRjaCBqdXN0IHJlbW92ZXMgdGhlIHNwZWNpZmlj
IGZpbGVzIGZvciBhcm0zMi4KPj4+IEFzIHlvdSBrbm93IHRoYXQgdGhlcmUgYXJlIG90aGVyIHBs
YWNlcyB3aGljaCBoYXZlIGFybTMyIGNvZGUsIHN1Y2ggYXMgZ2ljL3RpbWVyLgo+Pj4KPj4+IEkg
cHJlZmVyIHRvIHJlbW92ZSB0aGUgYXJtMzIgY29kZSB3aGlsZSBhZGRpbmcgdGhlIGFybTY0IGNv
cnJlc3BvbmQgY29kZQo+Pj4gaW4gdGhlIGdpYy90aW1lciBmaWxlLiAgSXQgaXMgbW9yZSBjbGVh
ciB0byBtZS4KPj4KPj4gUGF0Y2ggc2hvdWxkIGlkZWFsbHkgZG8gb25lIGxvZ2ljYWwgdGhpbmdz
IHRvIGhlbHAgdGhlIHJldmlld2VyCj4+IHVuZGVyc3RhbmRpbmcgdGhlIHBhdGNoIHdpdGggbWlu
aW1hbCBlZmZvcnQuIFJlbW92aW5nIGFybTMyIGNvZGUgaW4gcGF0Y2gKPj4gY2FsbGVkICJpbXBs
ZW1lbnQgYXJtNjQiIGRvZXMgbm90IG1ha2Ugc2Vuc2UuIFBsdXMgbm93aGVyZSBpbiB0aGF0IHNl
cmllcwo+PiB5b3UgZXhwbGFpbiB0aGF0IGRlY2lzaW9uIHdoaWNoIGlzIG5vdCB3aGF0IHdlIGFn
cmVlZCBvbi4KPiAKPiBPa2F5LCBJIHdpbGwgdXNlIG9uZSBwYXRjaCB0byByZW1vdmUgYWxsIHRo
ZSBhcm0zMiBjb2RlIGluIHRoZSBuZXh0IHZlcnNpb24uCgpQbGVhc2UgcmVhZCB3aGF0IEkgc2Fp
ZCBiZWxvdzoKCiJpdCBpcyB5b3VyIGNob2ljZSB0byBzcGxpdCB0aGUgc2VyaWVzIGxpa2UgdGhh
dCBidXQgaWYgeW91IHdhbnQgcGVvcGxlIAp0byByZXZpZXcgaXQgdGhlbiB5b3Ugc2hvdWxkIGhl
bHAgdGhlbSB0byB1bmRlcnN0YW5kIHdoYXQgeW91IGFyZSBkb2luZy4gClRoaXMgbWVhbnMgYmV0
dGVyIGNvbW1pdCBtZXNzYWdlcyBhbmQgY292ZXIgbGV0dGVyLiAiCgpCeSB0aGF0IEkgbWVhbnQs
IEkgd291bGQgYmUgaGFwcHkgd2l0aCB3aGF0IHlvdSBkaWQuIEJ1dCB5b3UgbmVlZCB0byAKdXBk
YXRlIHlvdXIgY29tbWl0IG1lc3NhZ2VzIGFjY29yZGluZ2x5LiBBdCB0aGlzIHN0YWdlLCB0aGF0
J3MgcHJvYmFibHkgCmdvaW5nIHRvIGJlIGVhc2llciB0aGFuIHJlc2h1ZmZsaW5nIHlldCBhbm90
aGVyIHRpbWUgdGhpcyBzZXJpZXMuCgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFp
bGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3Rz
LnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 10:02:01 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 10:02:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8jua-00042h-4Y; Wed, 18 Apr 2018 10:02:00 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=8hzp=hh=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f8juY-00042a-AT
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 10:01:58 +0000
X-Inumbo-ID: 628ff314-42ef-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::618])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 628ff314-42ef-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 12:00:55 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=JzxxIjBE+jDq2VEtPorOOasELMSpb2BQEujqJZqUshQ=;
 b=FPjjzPNSveJT7xoLmg73V5DD9UBdYCw+iRCTXfKZ1mnwvhfgP8UKIi1vehIho6nBZeJXQmoh6IDfI3ygo4spruuIRPAFA75juFc+FcHRQy0PhMzcekXQ7s1i++e2fpbz33wKIRBfaeo3KQ33aVVLkaE4ZLUEVxEsJjzeZCTSvsI=
Received: from DB7PR08CA0012.eurprd08.prod.outlook.com (2603:10a6:5:16::25) by
 DB6PR0802MB2424.eurprd08.prod.outlook.com (2603:10a6:4:a0::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Wed, 18
 Apr 2018 10:01:47 +0000
Received: from VE1EUR03FT035.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::204) by DB7PR08CA0012.outlook.office365.com
 (2603:10a6:5:16::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Wed, 18 Apr 2018 10:01:46 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT035.mail.protection.outlook.com (10.152.18.110) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Wed, 18 Apr 2018 10:01:46 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Wed, 18 Apr 2018
 11:00:54 +0100
Date: Wed, 18 Apr 2018 10:00:51 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180418100050.GE20072@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-7-git-send-email-shijie.huang@arm.com>
 <e371eb19-9166-086b-938d-68acb481fea4@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <e371eb19-9166-086b-938d-68acb481fea4@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39860400002)(346002)(376002)(396003)(39380400002)(2980300002)(438002)(199004)(189003)(72206003)(8676002)(1076002)(11346002)(47776003)(476003)(126002)(426003)(446003)(53546011)(8936002)(104016004)(2906002)(478600001)(356003)(23726003)(54906003)(39060400002)(6246003)(55016002)(86362001)(8666007)(6862004)(575784001)(305945005)(186003)(50466002)(7696005)(76176011)(4326008)(106002)(6636002)(229853002)(5660300001)(106466001)(6666003)(33656002)(59450400001)(77096007)(97756001)(336012)(316002)(46406003)(16586007)(26005)(58126008)(486006)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2424; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; A:1; MX:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT035;
 1:MYA15BR/noMU8OIGYu1R7v2kQ+b3Y5aLFpQ2LJL3Pc16PuQ9/KMg2WrqsnFrNbCIvT52J5EoEPCJn2HxQ96SJm/RukB0mhiMHXA67pKyDeu4DaM8gWd/q5qTXnu/KwXP
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2424; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 3:yrHXKKHz32cHe5Yfvu305QtiFWNeIsBWnJcXRrtUqyRT5npT2TPgNkRWYGpfLV1Ms5LptpSaq6ZrzsjbDntGunbviazxrc/H9HmuAzJDlE3x0jqn07aDcEPR4ltDhxjIYFRytdA1YHFiNvtnJLKTW3LoVS0v7jEgIOLYjZQEgsjqHHX4YO+xfEu0QIuP62kSS6qt3gTcLQPWdKoKJNV+BmLp2ns3iIkQR1tkc1uy5A97Vo5jVCGaKPmG/yi5Vajz7HMbB7xnUWa1A6h4fFacLsZzDwoz4bZkvtCO4IPH5hrnf+dFbLXVMveBDQyznltVF95eDGD6WSQNUG1J9fH7SO2DKo/cPxtr+jFTNDWNRDk=;
 25:kR0Yz0mTSYVY8K42N8iqmZ72OANjsBgfXUKIexDupgdl03RUvNXixhdaQT0HrMiO2Hx1wKaVjFfz5lWWeGCyFqXHIGx4YfaPCtzn99FQj2Yj89XLs3ORGiZI6786MlV64zlxuk0100WVU6cQETgYajlg7EjKMFYSJWg2wJeJf6UrcbewqWPt1jI3roMK4OttVevviZtWXuOCQZPmmZylGbWLR3r/DH4GDrCsDSk3kmZ0HTcQ4MQsHK09OvpmawSZwEzjflstqIVigRp0EHvAcb+BFtBxdX4xPM1kT/MtIgXi1iVle54y+sHZ0g9B1XiLIZLAAXuRZwuOSSfIRAJ8rw==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2424:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 31:H8qz4H7hfQ5jsa7tHbbaugoZHOCOIFoxXa9Zs644p2vIBkqSMX+YhB5T9NYLz081Je9yztBJEEhLssAbVin7QxqbVTX77j/zifbPrz57Aequ7Owoz3xYutExGboNmGx4m4vOJi+7SxLM0eClFns7Q8Sl/TKtrhBUx13gZ6P+hNz4gqjA/NuRslIsJWkygP2FicA8u6tpvbVyUGE9qTNHxMI3w/+k7q0RX/tLqPVKJgs=;
 20:4z4e+6hUiwNwe3pdLtKrqpIttADni/xwLQY0lfikqBPUJDK6s+xtadIu5JzwxUQZkYZvwlQqfCHyQq4mo2E9o6FfV5NL9zWtpVICaNrLL4NHFRgZyyU04IWjoSnveEMLzmmCRkzygiIbxNex3/YUULdYJRSw0dP4LKHR5o2T+Y4/FNrXPixsLaA/fsM8ATVE92TOBo0aIXC/D65hoyejba46zgdqJzjiUnTIdqN44HVa6LjSw0a6Fhg/WDYT8pBQ;
 4:eGch0wrPUZCDij6++LZ5W7kr7oORk/JtpfybN3WnqCJrYx5p1gGxy14eRPaI2XAIQ7FU6wUSqX1RNc96iSD+zPacmMYqoA2Iaj6DZV491I/jLvhB7y0vz6U2sRiCm7bC9SfRbKlvlMuRAIn5ETGMBXieCPP6yl9W8bTIT2424w1qa7VnSkptG+otDucxbh46dtD4xFE5Fh4UzHtPZFPO5O6Fn6gdCozjIEGag0NxQzj9Oq364Es6O69gnbPumGfK+mrOtPeV6v6NEm4Gpyp2DtdKgcpJD2fjKPA965Qnda/PEfphSjSUAc4PUQs84xtM
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB2424E300E12E9B7077EDAE9784B60@DB6PR0802MB2424.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(3231232)(944501327)(52105095)(10201501046)(93006095)(93004095)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2424; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2424; 
X-Forefront-PRVS: 06469BCC91
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0802MB2424;
 23:He2tUUyU4OKKekfEkzBcpgK0oT72tuwq4UZtszY?=
 =?us-ascii?Q?+RmXcQaPRRiGhGmO2cJ+JiTukNdzMavgHBNjJNlR+9HUEqSNvnIkKdAHasNN?=
 =?us-ascii?Q?gqpRNTFmgOgHOdsAnA5W0FdLKyLMg7Yd2Vw7Vjqv1kbgvoj/W2KWpAeZ1+pe?=
 =?us-ascii?Q?RH3UrD80l7Gp5gfCxoD5Td27idk8F2FSi4xf+C0JAvfKZmYGEQP9wbWrpaRA?=
 =?us-ascii?Q?5QSHC8VmVGrmsWQ7sxI6AopyDRuxkhE4vCLy2Sy0nIoVyjmDQID96TOs4Tvt?=
 =?us-ascii?Q?uQry7OKMgadVC72flRQIz7dejMOIUWyNPBH+hr0l5FunahM9ZNEH4JrXx8zY?=
 =?us-ascii?Q?uJFthpLrd7yN0D9E0D4dRa/71LE9NVduwXIAqyfGZWYaI0qoAOYyStiHHeeY?=
 =?us-ascii?Q?qe1s4sk013RMg4QWLybVo/lKMfKRtYugR1QFVn6qQCTrD0pgpsIY/DIypRXL?=
 =?us-ascii?Q?dNFMFnx/j9h78H2c+ut88vDx385WO/9YcKsVhZG2fO4OtY6ZtCFZ991KC8Qv?=
 =?us-ascii?Q?xYnp51X1JahJxNee6Ut0/XcfBgCglkWo7tFkhdTcmTpAbeWrl1TlnVl4UeNx?=
 =?us-ascii?Q?TTVkyjZdvJUvTxeKBWhFAl6LlooAboy8yAndvx6v1ja5WoQbP/NjCm/BZkmk?=
 =?us-ascii?Q?c2kk6gba5JrmNPdBtuvcLUzX0g1yzBSSj8g1jpQ/9OyjOf4VV6IFhcV9bxuD?=
 =?us-ascii?Q?sU8KEdd9+/olCA7CrCRJlI1ftDWAOF2OcyyD9dczQiGFo2wM0j+zw/TuVGMo?=
 =?us-ascii?Q?z4zkXOhbL9GBtJfZwvCzkqzzhsNxUxlEAFPi0bjZRM1rGtXrhtcFw9j3vbah?=
 =?us-ascii?Q?likVoHY4ScnPPM9s4ROgnT+VOhuEw/X/AT3MLgxEu00PJVU0623jWEUqiILF?=
 =?us-ascii?Q?JbRjJlK0uWs3ITWIlHOavb+i3xFq5Y0I0e2dQJf482BsU+ApFmQDrpOL67eT?=
 =?us-ascii?Q?e3+iKED/+MPap+FT7WaiGqmTIFkg4vreBW8mHk6vJwGRZBlcdrSvsZenHq86?=
 =?us-ascii?Q?6BPW38JNekwx4JgRa3zWJ0BqUaBe7LKiiunul6A/VF0GfQohasJqVLp7pih0?=
 =?us-ascii?Q?HJ4IZfzaUcloq8c610GlAPLCC+Uh/JDSutvtz4yrQ2CXjAUr0IweBTQUO/s5?=
 =?us-ascii?Q?fp+VdulwSrt6mMiVae4RbhGNBG83AWewSUnCQN44vDA036viVQt/WKMvs+dC?=
 =?us-ascii?Q?gMLuNBpRLgSHwIREwuTRHBKYDdbmuFRDh4jM3Fgco5wxmdoleeRDHD1pY7DY?=
 =?us-ascii?Q?4UDLi21jFI6OG2RM/ghnPB4KnVa050AWjSLl0DODG?=
X-Microsoft-Antispam-Message-Info: qEqmd9FU/TI4eO73x5qm8mKVYamI8ML6RzKgHfXmBDGuvpC6NpAQ2YVxoxYs4Gl7aQC7kFdBfvKwQHuZlnNEZrCKVKDYskXBLi6Wwop74eBl19tJ1UioRT1zL2wnX1eeiA2+AcyGagp26/nj7BDRJpV14hjei9sqkglnHv+fViMuwj+NX8coakIdrcR5iwrXp8qqPDMceERhDLKt+wczI2LE+dyt1NgpRYkBjzr1JxvPTbkdPET4yuDli9ll5r1gePdYPfeJ7DBy7WySUDb1FMyMP+/feKUSUZU35it+f/DV0M0+fkonShO5/t4AnfJNbidbWaMNeXdGD2SG7AsWOlwWzFCZkq8O6MqryjA/vN6bx6CIqSIBdMyNha9z0ZCYDFPY2Mwn3Mljs9dWYiZZvN09Yx+qvhiPTlUwjrivdKA=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 6:Is17nLsO7l+Lmixd5heatTr9KI5vGJ3W+DbJx1PCgAdjJgInaxSWatB6d5pGu/jGhifRu1h6BqBNpMwK+Ux92+AJtsCANaBEj+o7L225ka3xVdil3DlUDtipvXYrRMzxPg7ZgZWk3429b6pjSJftmN+RgWjCl6WtVcQSAIcQifFEqzuSRdMQ3hr5GeIna6Te272svq2O3vS3THbd1+DSFDO8+sK/E2HN/ZDhBTpgLbmh3w1xWUw0Lpxi/KmpZzjjWKZ90qz7YviO777SWoZ8N1ukO/SqDfadLQdPthBSW57URc3cuDPx3c/IT60T3P/eCVCFeJ8DjAdMXKm01X5ynSwHOmXUmnj2vTk11oautuEeDxTp13wjCRN7Zg8Np0yUWvEibVdGxcQd3DKB8dMQzcpSGvIeGogEqIYMPUe1HtodjoQnr5d8vvi0NXp6j51/tLw6HPd8vtuJMlyPIifo1KwC+gxvOXNY7QVAIGWef6b3Z7G5w6zaNsN7wN6Rj6Lz;
 5:LsNJZRPQt2Ftl6U3NgktCvTryx5zAruMALNyG8XvRb7p8QUKDipdTevqDMudW96KGroMYeV68Ywp17YFSAh4ixVGmlKXn2JjVPf9qQRNHTPRtmovQj7/NsACGGfyDEFp6QfgYkHdeo+tO6/FIJxgmLdF4qC3pBebcAx95RUN834=;
 24:pP6BWTdyOfYvIHShQhxyh3PJGn5FbvPoEMnd6vwj391ADNgWrpGBU2l6kuQr2RuYqbNov67tAo3PQhyfk/+9nVFNID2RBQusCXQka2ubCZU=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 7:EWiJz56Ry0/2NdU312gYpGz9fW0slTmu7bt/lmb03yBPaot82iQ8LYSL/FQFh9qwev0qGprIq2EeDBxTybG+Z2ftLrdFDavPF9B+niCVY1xlJQ+mrcRzVqZd9lB1bzOL3HJhOSOr3RV5mfENOUV672YB84OaB2H7yuqIAq1OITCGh8BGULC9edg01sYmm/Ge2a0RdkH8JxDZPKwd/U1+8PqiQInuydMO3HuSbDaP3TBkuL8KtlXL789kna9SMOLq
X-MS-Office365-Filtering-Correlation-Id: 578655ab-349c-42a0-853c-08d5a5136576
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 10:01:46.5208 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 578655ab-349c-42a0-853c-08d5a5136576
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2424
Subject: Re: [Minios-devel] [PATCH v3 06/43] arm64: add the boot code
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gTW9uLCBBcHIgMTYsIDIwMTggYXQgMDY6MTM6MzFQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE9uIDE2LzA0LzE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4g
PlRoaXMgcGF0Y2ggYWRkcyB0aGUgYm9vdCBjb2RlIGZvciBhcm02NDoKPiA+ICAgICAwLikgYWRk
IHRoZSBoZWFkZXIgd2hpY2ggY29udGFpbnMgYWxsIHRoZSBtYWNyb3MgdG8gc2V0dXAgdGhlIHBh
Z2UgdGFibGUKPiA+ICAgICAxLikgaW5pdCB0aGUgTUFJUi9UQ1IgZm9yIDQ4IGJpdCB2aXJ0dWFs
IGFkZHJlc3MuCj4gPiAgICAgMi4pIHNldHVwIHRoZSBwYWdlIHRhYmxlIGZvciB0aGUgY29kZSBz
ZWN0aW9uLgo+ID4gICAgIDMuKSBlbmFibGUgdGhlIE1NVQo+ID4KPiA+VGhpcyBwYXRjaCByZWZl
cnMgdG8gQ2hlbiBCYW96aSdzIHBhdGNoOgo+ID4gICAgICAiSW5pdGlhbCBjb2RlcyBmb3IgYXJt
NjQiCj4gPgo+ID5TaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0u
Y29tPgo+ID4tLS0KPiA+ICBhcmNoL2FybS9hcm02NC9hcm02NC5TICAgICAgICB8IDI4NiArKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiA+ICBhcmNoL2FybS9hcm02
NC9hc20uaCAgICAgICAgICB8ICAxOCArKysKPiA+ICBpbmNsdWRlL2FybS9hcm02NC9wYWdldGFi
bGUuaCB8IDEwOCArKysrKysrKysrKysrKysrCj4gPiAgMyBmaWxlcyBjaGFuZ2VkLCA0MTIgaW5z
ZXJ0aW9ucygrKQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2FybS9hcm02NC9hcm02NC5T
Cj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL2FybTY0L2FzbS5oCj4gPiAgY3JlYXRl
IG1vZGUgMTAwNjQ0IGluY2x1ZGUvYXJtL2FybTY0L3BhZ2V0YWJsZS5oCj4gPgo+ID5kaWZmIC0t
Z2l0IGEvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUyBiL2FyY2gvYXJtL2FybTY0L2FybTY0LlMKPiA+
bmV3IGZpbGUgbW9kZSAxMDA2NDQKPiA+aW5kZXggMDAwMDAwMC4uYjQ1NGNjNgo+ID4tLS0gL2Rl
di9udWxsCj4gPisrKyBiL2FyY2gvYXJtL2FybTY0L2FybTY0LlMKPiA+QEAgLTAsMCArMSwyODYg
QEAKPiA+KyNpbmNsdWRlICJhc20uaCIKPiA+KyNpbmNsdWRlIDxhcmNoX2xpbWl0cy5oPgo+ID4r
I2luY2x1ZGUgPGFybTY0L3BhZ2V0YWJsZS5oPgo+ID4rI2luY2x1ZGUgPHhlbi94ZW4uaD4KPiA+
Kwo+ID4rLyogVGhpcyBtYWNybyB3aWxsIHVzZSB0aGUgeDAveDEveDIveDE2ICovCj4gPisjZGVm
aW5lIFBSSU5UKF9zKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiA+KyAgICBhZHIg
ICAgIHgyLCA5N2Y7ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+ID4rICAgIGFkciAgICAg
eDEsIDk4ZjsgICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4gPisgICAgc3ViICAgICB4MSwg
eDEsIHgyOyAgICAgICAgICAgICAgICAgICAgICAgIFwKPiA+KyAgICBtb3YgICAgIHgwLCAjQ09O
U09MRUlPX3dyaXRlOyAgICAgICAgICAgICAgXAo+ID4rICAgIG1vdiAgICAgeDE2LCAjX19IWVBF
UlZJU09SX2NvbnNvbGVfaW87ICAgICBcCj4gPisgICAgaHZjICAgICAjWEVOX0hZUEVSQ0FMTF9U
QUc7ICAgICAgICAgICAgICAgIFwKPiA+KyAgICBiICAgICAgIDk5ZjsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAo+IAo+IEkgc2VlIHlvdSB1c2UgdGhlIFBSSU5UKC4uLikgYmVmb3Jl
IGVuYWJsaW5nIHRoZSBNTVUuIFBlcgo+IGluY2x1ZGUveGVuL2FyY2gtYXJtLmg6Cj4gCj4gIkFs
bCBtZW1vcnkgd2hpY2ggaXMgc2hhcmVkIHdpdGggb3RoZXIgZW50aXRpZXMgaW4gdGhlIHN5c3Rl
bQo+IChpbmNsdWRpbmcgdGhlIGh5cGVydmlzb3IgYW5kIG90aGVyIGd1ZXN0cykgbXVzdCByZXNp
ZGUgaW4gbWVtb3J5Cj4gd2hpY2ggaXMgbWFwcGVkIGFzIE5vcm1hbCBJbm5lciBXcml0ZS1CYWNr
IE91dGVyIFdyaXRlLUJhY2sgSW5uZXItU2hhcmVhYmxlLgo+IFRoaXMgYXBwbGllcyB0bzoKPiAg
LSBoeXBlcmNhbGwgYXJndW1lbnRzIHBhc3NlZCB2aWEgYSBwb2ludGVyIHRvIGd1ZXN0IG1lbW9y
eS4KPiAgLSBtZW1vcnkgc2hhcmVkIHZpYSB0aGUgZ3JhbnQgdGFibGUgbWVjaGFuaXNtIChpbmNs
dWRpbmcgUFYgSS9PCj4gICAgcmluZ3MgZXRjKS4KPiAgLSBtZW1vcnkgc2hhcmVkIHdpdGggdGhl
IGh5cGVydmlzb3IgKHN0cnVjdCBzaGFyZWRfaW5mbywgc3RydWN0Cj4gICAgdmNwdV9pbmZvLCB0
aGUgZ3JhbnQgdGFibGUsIGV0YykuIgo+IAo+IFRoaXMgbWVhbnMgdGhhdCB5b3VyIFBSSU5UIG1h
eSBub3QgYWx3YXlzIGFwcGVhciBhbmQgcHJvdm9raW5nIG90aGVyIGZ1bm55Cj4gcHJvYmxlbSBh
cyB0aGUgY2FjaGUgbWF5IGhhdmUgYW4gaW5jb25zaXN0ZW50IHN0YXRlLiBTbyBJIHRoaW5rIHlv
dSB3YW50IHRvCj4gYXZvaWQgdXNpbmcgdGhvc2UgcHJpbnQgYmVmb3JlIE1NVSBpcyBlbmFibGVk
Lgpva2F5LCBJIHdpbGwgcmVtb3ZlIHRoZSBQUklOVC4KSXQgaXMgcmVhbGx5IG5vdCBuZWNlc3Nh
cnkuCj4gCj4gPis5NzogLmFzY2l6IF9zOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKPiAKPiBEb24ndCB5b3Ugd2FudCB0byBwdXQgdGhlIHN0cmluZyBpbnRvIHRoZSB0ZXh0IHNl
Y3Rpb24/CkRpdHRvLgo+IAo+ID4rOTg6IDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCj4gPisgICAgLmFsaWduICAyOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKPiA+Kzk5OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAo+ID4rCj4gPisgICAgLmRhdGEKPiA+KyAgICAuZ2xvYmwgX2Jvb3Rfc3RhY2sKPiA+KyAg
ICAuZ2xvYmwgYm9vdF9sMF9wZ3RhYmxlCj4gPisgICAgLmdsb2JsIGJvb3RfbDFfcGd0YWJsZQo+
ID4rICAgIC5nbG9ibCBib290X2wyX3BndGFibGUKPiA+KyAgICAuZ2xvYmwgaWRtYXBfbDBfcGd0
YWJsZQo+ID4rICAgIC5nbG9ibCBpZG1hcF9sMV9wZ3RhYmxlCj4gCj4gUGxlYXNlIHB1dCB0aGUg
Lmdsb2JsIGxhYmVsIGJlZm9yZSBlYWNoIGRlY2xhcmF0aW9uLiBCdXQgSSBhbSBub3Qgc3VyZSB3
aHkKPiB5b3UgbmVlZCB0byBleHBvcnQgbW9zdCBvZiB0aGVtLgpUaGUgY29kZSBzZXR1cCB0aGUg
cGFnZSB0YWJsZSBtYXkgbmVlZCB0aGVtLCBzbyBJIHNob3VsZCBleHBvcnQgdGhlbS4KCj4gCj4g
PisKPiA+KyAgICAuYWxpZ24gMTIKPiA+K2Jvb3RfbDBfcGd0YWJsZToKPiA+KyAgICAuZmlsbCAg
UEFHRV9TSVpFLDEsMAo+ID4rYm9vdF9sMV9wZ3RhYmxlOgo+ID4rICAgIC5maWxsICBQQUdFX1NJ
WkUsMSwwCj4gPitib290X2wyX3BndGFibGU6Cj4gPisgICAgLmZpbGwgIFBBR0VfU0laRSwxLDAK
PiA+K2lkbWFwX2wwX3BndGFibGU6Cj4gPisgICAgLmZpbGwgIFBBR0VfU0laRSwxLDAKPiA+K2lk
bWFwX2wxX3BndGFibGU6Cj4gPisgICAgLmZpbGwgIFBBR0VfU0laRSwxLDAKPiA+Kwo+ID4rICAg
IC5hbGlnbiAxMgo+ID4rX2Jvb3Rfc3RhY2s6Cj4gPisgICAgLmZpbGwgIF9fU1RBQ0tfU0laRSwx
LDAKPiAKPiBDYW4gd2UgcGxlYXNlIHVzZSBTVEFDS19TSVpFIGFuZCBub3QgX19TVEFDS19TSVpF
LgpJIHdpbGwgdHJ5Li4uCkJ1dCBJIHJlbWVtYmVyIEkgbWV0IHNvbWV0aGluZyB3cm9uZyBpbiBj
b21waWxpbmcgd2hlbiBJIHVzZWQgU1RBQ0tfU0laRS4KCj4gCj4gPitzdGFja19lbmQ6Cj4gPisK
PiA+Ky8qCj4gPisgKiBLZXJuZWwgc3RhcnR1cCBlbnRyeSBwb2ludC4KPiA+KyAqCj4gPisgKiBQ
bGVhc2UgcmVmZXIgdG8gbGludXgga2VybmVsIGZpbGUgRG9jdW1lbnRhdGlvbi9hcm02NC9ib290
aW5nLnR4dAo+ID4rICogZm9yIHRoZSBoZWFkZXIgZm9ybWF0Lgo+ID4rICovCj4gPisgICAgLnRl
eHQKPiA+Kwo+ID4rICAgIGIgICAgICAgX3N0YXJ0ICAgICAgICAgICAgICAgICAgLyogYnJhbmNo
IHRvIGtlcm5lbCBzdGFydCwgbWFnaWMgKi8KPiA+KyAgICAubG9uZyAgIDAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIHJlc2VydmVkICovCj4gPisgICAgLnF1YWQgICAweDAgICAgICAgICAgICAg
ICAgICAgICAvKiBJbWFnZSBsb2FkIG9mZnNldCBmcm9tIHN0YXJ0IG9mIFJBTSAqLwo+ID4rICAg
IC5xdWFkICAgX2VuZCAtIF9zdGFydCAgICAgICAgICAgLyogRWZmZWN0aXZlIEltYWdlIHNpemUg
Ki8KPiA+KyAgICAucXVhZCAgIDIgICAgICAgICAgICAgICAgICAgICAgIC8qIGtlcm5lbCBmbGFn
czogTEUsIDRLIHBhZ2Ugc2l6ZSAqLwo+IAo+IEFnYWluLCBkbyB3ZSByZWFsbHkgY2FyZSB0byBo
YXZlIHRoZSBrZXJuZWwgcGxhY2VkIGFzIGNsb3NlIGFzIHBvc3NpYmxlIHRvCj4gdGhlIGJhc2Ug
YWRkcmVzcyBvZiB0aGUgRFJBTT8KRG8geW91IGhhdmUgYSBiZXR0ZXIgcGxhY2UgdG8gcGxhY2Ug
dGhlIGtlcm5lbD8KCj4gCj4gRm9yIHJlbWluZGVyLCB0aGUgZG9jdW1lbnRhdGlvbiBvZiB0aGF0
IGZsYWcgaXM6Cj4gCj4gQml0IDM6ICAgICAgICBLZXJuZWwgcGh5c2ljYWwgcGxhY2VtZW50Cj4g
ICAgICAgICAgICAgICAgICAgICAgICAgMCAtIDJNQiBhbGlnbmVkIGJhc2Ugc2hvdWxkIGJlIGFz
IGNsb3NlIGFzIHBvc3NpYmxlCj4gdG8gdGhlIGJhc2Ugb2YgRFJBTSwgc2luY2UgbWVtb3J5IGJl
bG93IGl0IGlzIG5vdCBhY2Nlc3NpYmxlIHZpYSB0aGUgbGluZWFyCj4gbWFwcGluZwo+ICAgICAg
ICAgICAgICAgICAgICAgICAgIDEgLSAyTUIgYWxpZ25lZCBiYXNlIG1heSBiZSBhbnl3aGVyZSBp
biBwaHlzaWNhbAo+IG1lbW9yeQo+IAo+IEhvdyBkb2VzIG1pbmktT1Mgb24gQXJtNjQgZGVhbCB3
aXRoIG1lbW9yeSBiZWxvdyB0aGUgbG9hZGVkIGFkZHJlc3Mgb2YgdGhlCj4ga2VybmVsPwpXZSBk
byBub3QgdXNlIHRoZSBtZW1vcnkgYmVsb3cgdGhlIGxvYWRlZCBhZGRyZXNzIG9mIGtlcm5lbC4K
V2UgcHV0IGtlcm5lbCBhdCAweGZmZmYwMDAwMDAwMDAwMDAgKDQ4Yml0KS4KCkFuZCB3ZSBzZXR1
cCB0aGUgcGFnZSB0YWJsZSBmb3IgYWRkcmVzcyA+PSAweGZmZmYwMDAwMDAwMDAwMDAsCnRoZSBh
ZGRyZXNzIGJlbG93IDB4ZmZmZjAwMDAwMDAwMDAwMCBpcyBub3QgYWNjZXNzZWQuICAgIAoKPiAK
PiA+KyAgICAucXVhZCAgIDAgICAgICAgICAgICAgICAgICAgICAgIC8qIHJlc2VydmVkICovCj4g
PisgICAgLnF1YWQgICAwICAgICAgICAgICAgICAgICAgICAgICAvKiByZXNlcnZlZCAqLwo+ID4r
ICAgIC5xdWFkICAgMCAgICAgICAgICAgICAgICAgICAgICAgLyogcmVzZXJ2ZWQgKi8KPiA+KyAg
ICAuYnl0ZSAgIDB4NDEgICAgICAgICAgICAgICAgICAgIC8qIE1hZ2ljIG51bWJlciwgIkFSTVx4
NjQiICovCj4gPisgICAgLmJ5dGUgICAweDUyCj4gPisgICAgLmJ5dGUgICAweDRkCj4gPisgICAg
LmJ5dGUgICAweDY0Cj4gPisgICAgLmxvbmcgICAwICAgICAgICAgICAgICAgICAgICAgICAvKiBy
ZXNlcnZlZCAqLwo+ID4rCj4gPisvKgo+ID4rICogUHJpbWFyeSBDUFUgZ2VuZXJhbC1wdXJwb3Nl
IHJlZ2lzdGVyIHNldHRpbmdzCj4gCj4gVGhpcyBpcyBmYWlybHkgdW5jbGVhciB0byBtZSB3aGF0
IHlvdSBtZWFuIGJ5IHByaW1hcnkuIERpZCB5b3UgbWVhbiwKPiAiSW5pdGlhbCBzdGF0ZSBvZiB0
aGUgR1BSIHdoZW4gX3N0YXJ0IGlzIGNhbGxlZD8iCnllcywgV2UgY2FuIHJlbW92ZSB0aGUgUHJp
bWFyeSBoZXJlLCB0aGVyZSBpcyBvbmx5IG9uZSBjcHUgZm9yIG1pbmktb3MuLi4KPiAKPiA+KyAq
IHgwID0gcGh5c2ljYWwgYWRkcmVzcyBvZiBkZXZpY2UgdHJlZSBibG9iIChkdGIpIGluIHN5c3Rl
bSBSQU0uCj4gPisgKiB4MSA9IDAgKHJlc2VydmVkIGZvciBmdXR1cmUgdXNlKQo+ID4rICogeDIg
PSAwIChyZXNlcnZlZCBmb3IgZnV0dXJlIHVzZSkKPiA+KyAqIHgzID0gMCAocmVzZXJ2ZWQgZm9y
IGZ1dHVyZSB1c2UpCj4gPisgKgo+ID4rICogVGhlIHJlZ2lzdGVycyB1c2VkIGJ5IF9zdGFydDoK
PiA+KyAqIHgyMCAtIEZEVCBwb2ludGVyCj4gPisgKiB4MjIgLSBvZmZzZXQgYmV0d2VlbiBQQSBh
bmQgVkEKPiA+KyAqLwo+ID4rRU5UUlkoX3N0YXJ0KQo+ID4rICAgIC8qIFNhdmUgdGhlIEZEVCBw
b2ludGVyICovCj4gPisgICAgbW92ICAgICB4MjAsIHgwCj4gPisKPiA+KyAgICAvKiBDYWxjdWxh
dGUgd2hlcmUgd2UgYXJlICovCj4gPisgICAgYmwgICAgICBfY2FsY19vZmZzZXQKPiA+Kwo+ID4r
ICAgIFBSSU5UKCItIE1pbmktT1MgYm9vdGluZyAtXG4iKQo+ID4rCj4gPisgICAgUFJJTlQoIi0g
U2V0dXAgQ1BVIC1cbiIpCj4gPisgICAgLyogU2V0dXAgQ1BVIGZvciB0dXJuaW5nIG9uIHRoZSBN
TVUuICovCj4gPisgICAgYmwgICAgICBfc2V0dXBfY3B1Cj4gPisKPiA+KyAgICBQUklOVCgiLSBT
ZXR1cCBib290aW5nIHBhZ2V0YWJsZSAtXG4iKQo+IAo+IEkgYW0gcHJldHR5IHN1cmUgeW91IG5l
ZWQgdG8gY2xlYW4gdGhlIGNhY2hlIGZvciB0aGUgcGFnZS10YWJsZSByZWdpb24gaGVyZQo+IHRv
IGF2b2lkIHBvdGVudGlhbCBkaXJ0eSBsaW5lcyBiZWluZyBldmljdGVkIGFuZCAuLi4KSSBhbSBu
b3QgY2xlYXIgYWJvdXQgdGhpcy4KaXMgaXQgcG9zc2libGUgdGhhdCB0aGVyZSBpcyBjYWNoZSBm
b3IgdGhlIHBhZ2V0IGFibGUgcmVnaW9uPwoKU29ycnksIEkgd2lsbCByZWFkIG1vcmUgZG9jdW1l
bnQgYW5kIHJlcGx5IHlvdXIgZm9sbG93aW5nIGNvbW1lbnRzLi4uCgpUaGFua3MKSHVhbmcgU2hp
amllCj4gCj4gPisgICAgLyogU2V0dXAgdGhlIGluaXRpYWwgcGFnZSB0YWJsZS4gKi8KPiA+KyAg
ICBibCAgICAgIF9zZXR1cF9pbml0aWFsX3BndGFibGUKPiA+KyAgICBtb3YgICAgIHgxOSwgeDAK
PiA+Kwo+ID4rICAgIC8qIFNldHVwIHRoZSBpZGVudGl0eSBtYXBwaW5nICovCj4gPisgICAgYmwg
ICAgICBfc2V0dXBfaWRtYXBfcGd0YWJsZQo+IAo+IEFsc28gaGVyZSBiZWNhdXNlIHlvdSBwb3B1
bGF0ZWQgdGhlIHBhZ2UtdGFibGVzIHdpdGggbm9uLWNhY2hlYWJsZSBhY2Nlc3Nlcwo+IChNTVUg
ZGlzYWJsZWQpLCBzbyB5b3Ugd2FudCB0byByZW1vdmUgc3BlY3VsYXRpdmVseSBsb2FkZWQgY2Fj
aGUgbGluZXMuCj4gCj4gPisKPiA+KyAgICAvKiBMb2FkIFRUQlJ4ICovCj4gPisgICAgbXNyICAg
ICB0dGJyMV9lbDEsIHgxOQo+ID4rICAgIG1zciAgICAgdHRicjBfZWwxLCB4MAo+ID4rICAgIGlz
Ygo+ID4rCj4gPisgICAgLyogVHVybmluZyBvbiBNTVUgKi8KPiA+KyAgICB0bGJpICAgIHZtYWxs
ZTEKPiAKPiBDYW4geW91IHBsZWFzZSBkb2N1bWVudCB3aHkgdGhlIFRMQiBoZXJlLiBJbiB0aGF0
IGNhc2UgaXQgcmVtb3ZlIHN0YWxsIFRMQgo+IGVudHJpZXMuCj4gCj4gPisgICAgZHNiICAgICBu
c2gKPiA+KyAgICBpc2IKPiAKPiBUaGUgaXNiIGhlcmUgaXMgbm90IG5lY2Vzc2FyeS4gWW91IGNh
biByZWx5IG9uIHRoZSBvbmUgYWZ0ZXIgdGhlIE1NVSBpcwo+IGVuYWJsZWQgYmVsb3cuCj4gCj4g
PisgICAgbGRyICAgICB4MSwgPShTQ1RMUl9NIHwgU0NUTFJfQyB8IFNDVExSX0kpCj4gCj4gSWYg
eW91IGZ1bGx5IG92ZXJ3cml0ZSBTQ1RMUl9FTDEgdmFsdWUsIHRoZW4geW91IG5lZWQgdG8gbWFr
ZSBzdXJlIGFsbCBSRVMxCj4gYXJlIHNldCB0byAxIGluIEFSTXY4LjAuIE90aGVyd2lzZSwgeW91
IGFyZSBnb2luZyB0byBoYXZlIHNvbWUgc3VycHJpc2Ugd2hlbgo+IHRob3NlIGJpdHMgYXJlIGRl
ZmluZWQgZGlmZmVyZW50bHkgKHN1Y2ggYXMgbW92aW5nIHRvIEFSTXY4LjIpLgo+IAo+ID4rICAg
IG1zciAgICAgc2N0bHJfZWwxLCB4MQo+ID4rICAgIGlzYgo+ID4rCj4gPisgICAgUFJJTlQoIi0g
TU1VIG9uIC1cbiIpCj4gPisgICAgbGRyICAgICB4MCwgPW1tdV9vbgo+ID4rICAgIGJyICAgICAg
eDAKPiA+Kwo+ID4rbW11X29uOgo+ID4rICAgIC8qIERvIG5vdCB1c2UgdGhlIFRUQlIwX0VMMSBh
bnkgbW9yZSAqLwo+ID4rICAgIG1ycyAgICAgeDE5LCB0Y3JfZWwxCj4gPisgICAgYWRkICAgICB4
MTksIHgxOSwgVENSX0VQRDAKPiA+KyAgICBtc3IgICAgIHRjcl9lbDEsIHgxOQo+IAo+IFlvdSBw
cm9iYWJseSB3YW50IHRvIGZsdXNoIHRoZSBUTEIgaGVyZS4gU28geW91IGRvbid0IGVuZCB1cCB0
byB1c2Ugc3RhbGwKPiBkYXRhLgo+IAo+ID4rCj4gPisgICAgLyogU2V0dXAgc3RhY2sgKi8KPiA+
KyAgICBQUklOVCgiLSBTZXR1cCBzdGFjayAtXG4iKQo+ID4rICAgIGxkciAgICAgeDEsID1zdGFj
a19lbmQKPiA+KyAgICBtb3YgICAgIHNwLCB4MQo+ID4rCj4gPisgICAgUFJJTlQoIi0gSnVtcGlu
ZyB0byBDIGVudHJ5IC1cbiIpCj4gPisgICAgbW92ICAgICB4MCwgeDIwICAgICAgICAgICAgICAg
ICAgLyogeDAgPC0gZGV2aWNlIHRyZWUgKHBoeXNpY2FsIGFkZHJlc3MpICovCj4gPisgICAgbW92
ICAgICB4MSwgeDIyICAgICAgICAgICAgICAgICAgLyogeDEgPC0gcGh5c19vZmZzZXQgKi8KPiA+
Kwo+ID4rICAgIGIgICAgICBhcmNoX2luaXQKPiA+K0VORFBST0MoX3N0YXJ0KQo+ID4rCj4gPisv
Kgo+ID4rICogR2V0IHRoZSBwaHlzLW9mZnNldCwgYW5kIHNhdmUgaXQgaW4geDIyCj4gPisgKi8K
PiA+K19jYWxjX29mZnNldDoKPiA+KyAgICBsZHIgICAgIHgyMiwgPV9zdGFydCAgICAgICAgICAg
ICAvKiB4MCA6PSB2YWRkcihfc3RhcnQpICAqLwo+ID4rICAgIGFkciAgICAgeDIxLCBfc3RhcnQg
ICAgICAgICAgICAgIC8qIHgyMSA6PSBwYWRkcihfc3RhcnQpICovCj4gPisgICAgc3ViICAgICB4
MjIsIHgyMSwgeDIyICAgICAgICAgICAgLyogeDIyIDo9IHBoeXMtb2Zmc2V0IChwYWRkciAtIHZh
ZGRyKSAqLwo+ID4rICAgIHJldAo+ID4rCj4gPisvKgo+ID4rICogU2V0dXAgdGhlIG1lbW9yeSBy
ZWdpb24gYXR0cmlidXRlOwo+ID4rICogU2V0dXAgdGhlIFRDUi4KPiA+KyAqLwo+ID4rX3NldHVw
X2NwdToKPiA+KyAgICAvKgo+ID4rICAgICAqIFNldHVwIG1lbW9yeSBhdHRyaWJ1dGUgdHlwZSB0
YWJsZXMKPiA+KyAgICAgKgo+ID4rICAgICAqIE1lbW9yeSByZWdpb24gYXR0cmlidXRlcyBmb3Ig
TFBBRToKPiA+KyAgICAgKgo+ID4rICAgICAqICAgbiA9IEF0dHJJbmR4WzI6MF0KPiA+KyAgICAg
KiAgICAgICAgICAgICAgICAgICAgICBuICAgICAgIE1BSVIKPiA+KyAgICAgKiAgIERFVklDRV9u
R25SbkUgICAgICAwMDAgICAgIDAwMDAwMDAwICgweDAwKQo+ID4rICAgICAqICAgREVWSUNFX25H
blJFICAgICAgIDAwMSAgICAgMDAwMDAxMDAgKDB4MDQpCj4gPisgICAgICogICBERVZJQ0VfR1JF
ICAgICAgICAgMDEwICAgICAwMDAwMTEwMCAoMHgwYykKPiA+KyAgICAgKiAgIE5PUk1BTF9OQyAg
ICAgICAgICAwMTEgICAgIDAxMDAwMTAwICgweDQ0KQo+ID4rICAgICAqICAgTk9STUFMICAgICAg
ICAgICAgIDEwMCAgICAgMTExMTExMTEgKDB4ZmYpCj4gPisgICAgICovCj4gPisgICAgbGRyICAg
ICB4MCwgPShTRVRfTUFJUigweDAwLCBNRU1fREVWSUNFX25HblJuRSkgfCBcCj4gPisgICAgICAg
ICAgICAgICAgICBTRVRfTUFJUigweDA0LCBNRU1fREVWSUNFX25HblJFKSAgfCBcCj4gPisgICAg
ICAgICAgICAgICAgICBTRVRfTUFJUigweDBjLCBNRU1fREVWSUNFX0dSRSkgICAgfCBcCj4gPisg
ICAgICAgICAgICAgICAgICBTRVRfTUFJUigweDQ0LCBNRU1fTk9STUFMX05DKSAgICAgfCBcCj4g
PisgICAgICAgICAgICAgICAgICBTRVRfTUFJUigweGZmLCBNRU1fTk9STUFMKSkKPiA+KyAgICBt
c3IgICAgIG1haXJfZWwxLCB4MAo+ID4rCj4gPisgICAgLyoKPiA+KyAgICAgKiBTZXR1cCB0cmFu
c2xhdGlvbiBjb250cm9sIHJlZ2lzdGVyIChUQ1IpCj4gPisgICAgICovCj4gPisgICAgbGRyICAg
ICB4MCwgPShUQ1JfVHhTWihWQV9CSVRTKSB8IFRDUl9BU0lEMTYgfCBUQ1JfVEcxXzRLIHwgXAo+
ID4rICAgICAgICAgICAgICAgICAgVENSX0lSR05fV0JXQSB8IFRDUl9PUkdOX1dCV0EgfCBUQ1Jf
U0hBUkVEIHwgVENSX0lQU180OEJJVCkKPiA+KyAgICBtc3IgICAgIHRjcl9lbDEsIHgwCj4gPisK
PiA+KyAgICByZXQKPiA+Kwo+ID4rLyoKPiA+KyAqIFNldHVwIHRoZSBwYWdlIHRhYmxlIG1hcHBp
bmcgZm9yIEBhZGRyIGF0IEBsZXZlbCB3aXRoIEBwcm90Lgo+ID4rICoKPiA+KyAqIE5vdGU6IHgy
MiBzdG9yZXMgdGhlIG9mZnNldCBiZXR3ZWVuIHZpcnR1YWwgYWRkcmVzcyBhbmQgcGh5c2ljYWwg
YWRkcmVzcy4KPiA+KyAqLwo+ID4rLm1hY3JvIHNldF9wYWdlX3RhYmxlLCBhZGRyLCBsZXZlbCwg
cHJvdAo+ID4rICAgIC8qIEZpbmQgdGhlIHRhYmxlIGluZGV4IGluIEBsZXZlbCwgc2F2ZSBpdCBp
biB4MyAgKi8KPiA+Ky5pZiBcbGV2ZWwgPT0gMAo+ID4rICAgIGxzciAgICAgeDMsIFxhZGRyLCAj
TDBfU0hJRlQKPiA+KyAgICBhZHIgICAgIHg4LCBib290X2wxX3BndGFibGUKPiA+KyAgICBhZHIg
ICAgIHgxMSwgYm9vdF9sMF9wZ3RhYmxlCj4gPisuZW5kaWYKPiA+Kwo+ID4rLmlmIFxsZXZlbCA9
PSAxCj4gPisgICAgbHNyICAgICB4MywgXGFkZHIsICNMMV9TSElGVAo+ID4rICAgIGFkciAgICAg
eDgsIGJvb3RfbDJfcGd0YWJsZQo+ID4rICAgIGFkciAgICAgeDExLCBib290X2wxX3BndGFibGUK
PiA+Ky5lbmRpZgo+ID4rCj4gPisuaWYgXGxldmVsID09IDIKPiA+KyAgICBsc3IgICAgIHgzLCBc
YWRkciwgI0wyX1NISUZUCj4gPisgICAgYWRyICAgICB4MTEsIGJvb3RfbDJfcGd0YWJsZQo+ID4r
ICAgIC8qIEdldCB0aGUgcGh5c2ljYWwgYWRkcmVzcywgdGhlIEBhZGRyIHNob3VsZCBiZSAyTSBh
bGlnbmVkLiAqLwo+ID4rICAgIGFkZCAgICAgeDgsIFxhZGRyLCB4MjIKPiA+Ky5lbmRpZgo+ID4r
Cj4gPisgICAgYW5kICAgICB4MywgeDMsICNMbl9BRERSX01BU0sKPiA+Kwo+ID4rICAgIC8qIEJ1
aWxkIHRoZSBwYWdlIHRhYmxlIGVudHJ5ICovCj4gPisgICAgbGRyICAgICB4NywgPSBccHJvdAo+
ID4rICAgIGxzciAgICAgeDksIHg4LCAjUEFHRV9TSElGVAo+ID4rICAgIG9yciAgICAgeDcsIHg3
LCB4OSwgbHNsICNQQUdFX1NISUZUCj4gPisKPiA+KyAgICAvKiBTdG9yZSBlbnRyeSAqLwo+ID4r
ICAgIHN0ciAgICAgeDcsIFt4MTEsIHgzLCBsc2wgIzNdCj4gPisuZW5kbQo+ID4rCj4gPisvKgo+
ID4rICogU2V0dXAgdGhlIG1hcHBpbmcgZm9yIGNvZGUgc2VjdGlvbgo+ID4rICoKPiA+KyAqID0+
IG51bGwKPiA+KyAqIDw9IHgwIC0+IGZvciBUVEJSMV9FTDEKPiA+KyAqLwo+ID4rX3NldHVwX2lu
aXRpYWxfcGd0YWJsZToKPiA+KyAgICAvKiBTdGFydCB0byBtYXAgdGhlIGNvZGUgKi8KPiA+KyAg
ICBsZHIgICAgIHgwLCA9X3RleHQgICAgICAgICAgICAgICAgIC8qIHgwIDo9IHZhZGRyKF90ZXh0
KSAgICAgICAgICAgICovCj4gPisgICAgbGRyICAgICB4MSwgPV9lbmQgICAgICAgICAgICAgICAg
ICAvKiB4MSA6PSB2YWRkcihfZW5kKSAgICAgICAgICAgICAqLwo+ID4rCj4gPisgICAgc2V0X3Bh
Z2VfdGFibGUgeDAsIDAsIFBUX1BUCj4gPisgICAgc2V0X3BhZ2VfdGFibGUgeDAsIDEsIFBUX1BU
Cj4gPisxOgo+ID4rICAgIHNldF9wYWdlX3RhYmxlIHgwLCAyLCBQVF9NRU0KPiA+Kwo+ID4rICAg
IGFkZCAgICAgeDAsIHgwLCBMMl9TSVpFCj4gPisgICAgY21wICAgICB4MSwgeDAKPiA+KyAgICBi
Lmd0ICAgIDFiCj4gPisKPiA+KyAgICBhZHIgICAgIHgwLCBib290X2wwX3BndGFibGUKPiA+KyAg
ICBkc2IgICAgIHN5Cj4gPisgICAgcmV0Cj4gPisKPiA+Ky8qCj4gPisgKiBTZXR1cCB0aGUgcGFn
ZSB0YWJsZSBtYXBwaW5nIGZvciBAYWRkciBhdCBAbGV2ZWwgd2l0aCBAcHJvdC4KPiA+KyAqCj4g
PisgKiBPbmx5IHVzZWQgZm9yIGlkZW50aXR5IG1hcHBpbmcuCj4gPisgKi8KPiA+Ky5tYWNybyBz
ZXRfaWRlbnRfcGFnZV90YWJsZSwgYWRkciwgbGV2ZWwsIHByb3QKPiA+KyAgICAvKiBGaW5kIHRo
ZSB0YWJsZSBpbmRleCBpbiBAbGV2ZWwsIHNhdmUgaXQgaW4geDMgICovCj4gPisuaWYgXGxldmVs
ID09IDAKPiA+KyAgICBsc3IgICAgIHgzLCBcYWRkciwgI0wwX1NISUZUCj4gPisgICAgYWRyICAg
ICB4OCwgaWRtYXBfbDFfcGd0YWJsZQo+ID4rICAgIGFkciAgICAgeDExLCBpZG1hcF9sMF9wZ3Rh
YmxlCj4gPisuZW5kaWYKPiA+Kwo+ID4rLmlmIFxsZXZlbCA9PSAxCj4gPisgICAgbHNyICAgICB4
MywgXGFkZHIsICNMMV9TSElGVAo+ID4rICAgIG1vdiAgICAgeDgsIFxhZGRyCj4gPisgICAgYWRy
ICAgICB4MTEsIGlkbWFwX2wxX3BndGFibGUKPiA+Ky5lbmRpZgo+ID4rCj4gPisgICAgYW5kICAg
ICB4MywgeDMsICNMbl9BRERSX01BU0sKPiA+Kwo+ID4rICAgIC8qIEJ1aWxkIHRoZSBwYWdlIHRh
YmxlIGVudHJ5ICovCj4gPisgICAgbGRyICAgICB4NywgPSBccHJvdAo+ID4rICAgIGxzciAgICAg
eDksIHg4LCAjUEFHRV9TSElGVAo+ID4rICAgIG9yciAgICAgeDcsIHg3LCB4OSwgbHNsICNQQUdF
X1NISUZUCj4gPisKPiA+KyAgICAvKiBTdG9yZSBlbnRyeSAqLwo+ID4rICAgIHN0ciAgICAgeDcs
IFt4MTEsIHgzLCBsc2wgIzNdCj4gPisuZW5kbQo+ID4rCj4gPisvKgo+ID4rICogU2V0dXAgdGhl
IHBhZ2UgdGFibGUgZm9yIFRUQlIwX0VMMToKPiA+KyAqICAgTWFwcGluZyB0aGUgcGFnZSB0YWJs
ZSBmb3IgdGhlIGNvZGUgc2VjdGlvbi4KPiA+KyAqICAgV2UgdXNlIDQ4Yml0IGFkZHJlc3MsIGFu
ZCBqdXN0IHVzZSBsZXZlbCAwLzEKPiA+KyAqICAgZm9yIHRoZSBtYXBwaW5nICh3ZSBkbyBub3Qg
dXNlIGxldmVsIDIgYW5kIGxldmVsIDMpLgo+ID4rICoKPiA+KyAqID0+IG5vbmUKPiA+KyAqIDw9
IHgwIDogc2F2ZSB0aGUgcGFnZSB0YWJsZSBwb2ludGVyIGZvciBUVEJSMF9FTDEuCj4gPisgKi8K
PiA+K19zZXR1cF9pZG1hcF9wZ3RhYmxlOgo+ID4rICAgIC8qIENyZWF0ZSB0aGUgVkEgPSBQQSBt
YXAgKi8KPiA+KyAgICBhZHIgICAgIHgwLCBfdGV4dAo+ID4rCj4gPisgICAgc2V0X2lkZW50X3Bh
Z2VfdGFibGUgeDAsIDAsIFBUX1BUCj4gPisgICAgc2V0X2lkZW50X3BhZ2VfdGFibGUgeDAsIDEs
IFBUX01FTQo+ID4rCj4gPisgICAgYWRyICAgICB4MCwgaWRtYXBfbDBfcGd0YWJsZQo+ID4rICAg
IGRzYiAgICAgc3kKPiA+KyAgICByZXQKPiA+ZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0L2Fz
bS5oIGIvYXJjaC9hcm0vYXJtNjQvYXNtLmgKPiA+bmV3IGZpbGUgbW9kZSAxMDA2NDQKPiA+aW5k
ZXggMDAwMDAwMC4uM2E0OThjNAo+ID4tLS0gL2Rldi9udWxsCj4gPisrKyBiL2FyY2gvYXJtL2Fy
bTY0L2FzbS5oCj4gCj4gQWdhaW4sIG5vdGhpbmcgaW4gdGhpcyBoZWFkZXIgbG9vayBhcm02NCBz
cGVjaWZpYy4KPiAKPiA+QEAgLTAsMCArMSwxOCBAQAo+ID4rI2lmbmRlZiBfX0FTTV9IX18KPiA+
KyNkZWZpbmUgX19BU01fSF9fCj4gPisKPiA+KyNkZWZpbmUgQUxJR04gICAuYWxpZ24gNAo+ID4r
Cj4gPisjZGVmaW5lIEVOVFJZKG5hbWUpIFwKPiA+KyAgICAuZ2xvYmwgbmFtZTsgXAo+ID4rICAg
IEFMSUdOOyBcCj4gPisgICAgbmFtZToKPiA+Kwo+ID4rI2RlZmluZSBFTkQobmFtZSkgXAo+ID4r
ICAgIC5zaXplIG5hbWUsIC4tbmFtZQo+ID4rCj4gPisjZGVmaW5lIEVORFBST0MobmFtZSkgXAo+
ID4rICAgIC50eXBlIG5hbWUsIEBmdW5jdGlvbjsgXAo+ID4rICAgIEVORChuYW1lKQo+ID4rCj4g
PisjZW5kaWYgLyogX19BU01fSF9fICovCj4gPmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcm02
NC9wYWdldGFibGUuaCBiL2luY2x1ZGUvYXJtL2FybTY0L3BhZ2V0YWJsZS5oCj4gPm5ldyBmaWxl
IG1vZGUgMTAwNjQ0Cj4gPmluZGV4IDAwMDAwMDAuLjhlMjM4NGYKPiA+LS0tIC9kZXYvbnVsbAo+
ID4rKysgYi9pbmNsdWRlL2FybS9hcm02NC9wYWdldGFibGUuaAo+ID5AQCAtMCwwICsxLDEwOCBA
QAo+ID4rI2lmbmRlZiBfX0FSTTY0X1BBR0VfVEFCTEVfXwo+ID4rCj4gPisjZGVmaW5lIF9fQVJN
NjRfUEFHRV9UQUJMRV9fCj4gPisKPiA+Ky8qIFRDUiBmbGFncyAqLwo+ID4rI2RlZmluZSBUQ1Jf
VHhTWih4KSAgICAgICAgICgoKCg2NCkgLSAoeCkpIDw8IDE2KSB8ICgoKDY0KSAtICh4KSkgPDwg
MCkpCj4gPisjZGVmaW5lIFRDUl9JUkdOX1dCV0EgICAgICAgKCgoMSkgPDwgOCkgfCAoKDEpIDw8
IDI0KSkKPiA+KyNkZWZpbmUgVENSX09SR05fV0JXQSAgICAgICAoKCgxKSA8PCAxMCkgfCAoKDEp
IDw8IDI2KSkKPiA+KyNkZWZpbmUgVENSX1NIQVJFRCAgICAgICAgICAoKCgzKSA8PCAxMikgfCAo
KDMpIDw8IDI4KSkKPiA+KyNkZWZpbmUgVENSX0FTSUQxNiAgICAgICAgICAoKDEpIDw8IDM2KQo+
ID4rI2RlZmluZSBUQ1JfSVBTXzQ4QklUICAgICAgICgoNSkgPDwgMzIpCj4gPisjZGVmaW5lIFRD
Ul9URzFfNEsgICAgICAgICAgKCgyKSA8PCAzMCkKPiAKPiBUaG9zZSBmbGFncyBhcmUgb25seSBn
b2luZyB0byB3b3JrIHdlbGwgaW4gYXNzZW1ibHkuIEluIEMsIHlvdSB3aWxsIGhhdmUKPiB0cnVu
Y2F0aW9uIHByb2JsZW0gYXMgdGhlIHNoaWZ0IGlzIGJhc2VkIG9uIGludGVnZXIgKGFrYSAzMi1i
aXQpLgo+IAo+IEFsc28gY2FuIHlvdSByZW1vdmUgcGFyZW50aGVzZSBhcm91bmQgYWxsIHBsYWlu
IHZhbHVlcy4gSS5lIHMvKDIpLzIvLiBUaGlzCj4gd2lsbCBtYWtlIHRoZSBjb2RlIG1vcmUgcmVh
ZGFibGUuCj4gCj4gPisjZGVmaW5lIFRDUl9FUEQwICAgICAgICAgICAgKDEgPDwgNykKPiA+Kwo+
ID4rLyogTWF4IHZpcnR1YWwgYWRkcmVzcyAqLwo+ID4rI2RlZmluZQlWTV9NQVhfQUREUkVTUyAg
ICAgICgweGZmZmZmZmZmZmZmZmZmZmYpCj4gPisKPiA+Ky8qIE51bWJlciBvZiB2aXJ0dWFsIGFk
ZHJlc3MgYml0cyAqLwo+ID4rI2RlZmluZSBWQV9CSVRTICAgICAgICAgICAgIDQ4Cj4gPisKPiA+
Ky8qCj4gPisgKiBNZW1vcnkgdHlwZXMgYXZhaWxhYmxlLgo+ID4rICovCj4gPisjZGVmaW5lIE1F
TV9ERVZJQ0VfbkduUm5FICAgIDAKPiA+KyNkZWZpbmUgTUVNX0RFVklDRV9uR25SRSAgICAgMQo+
ID4rI2RlZmluZSBNRU1fREVWSUNFX0dSRSAgICAgICAyCj4gPisjZGVmaW5lIE1FTV9OT1JNQUxf
TkMgICAgICAgIDMKPiA+KyNkZWZpbmUgTUVNX05PUk1BTCAgICAgICAgICAgNAo+ID4rCj4gPisj
ZGVmaW5lIFNFVF9NQUlSKGF0dHIsIG10KSAgKChhdHRyKSA8PCAoKG10KSAqIDgpKQo+ID4rCj4g
PisvKiBTQ1RMUl9FTDEgLSBTeXN0ZW0gQ29udHJvbCBSZWdpc3RlciAqLwo+ID4rI2RlZmluZSBT
Q1RMUl9NICAgICAgICAgICAgICgxIDw8IDApCj4gPisjZGVmaW5lIFNDVExSX0MgICAgICAgICAg
ICAgKDEgPDwgMikKPiA+KyNkZWZpbmUgU0NUTFJfSSAgICAgICAgICAgICAoMSA8PCAxMikKPiA+
Kwo+ID4rLyogTGV2ZWwgMCB0YWJsZSwgNTEyR2lCIHBlciBlbnRyeSAqLwo+ID4rI2RlZmluZSBM
MF9TSElGVCAgICAgICAgICAgIDM5Cj4gPisjZGVmaW5lIEwwX1NJWkUgICAgICAgICAgICAgKDFV
TCA8PCBMMF9TSElGVCkKPiA+KyNkZWZpbmUgTDBfSU5WQUwgICAgICAgICAgICAweDAgLyogQW4g
aW52YWxpZCBhZGRyZXNzICovCj4gPisjZGVmaW5lIEwwX1RBQkxFICAgICAgICAgICAgMHgzIC8q
IEEgbmV4dC1sZXZlbCB0YWJsZSAqLwo+ID4rCj4gPisvKiBMZXZlbCAxIHRhYmxlLCAxR2lCIHBl
ciBlbnRyeSAqLwo+ID4rI2RlZmluZSBMMV9TSElGVCAgICAgICAgICAgIDMwCj4gPisjZGVmaW5l
IEwxX1NJWkUgICAgICAgICAgICAgKDEgPDwgTDFfU0hJRlQpCj4gCj4gUGxlYXNlIHRyeSB0byBi
ZSBjb25zaXN0ZW50IHRvIHVzZSAxVUwgZXZlcnl3aGVyZSBmb3IgKl9TSVpFLgo+IAo+ID4rI2Rl
ZmluZSBMMV9PRkZTRVQgICAgICAgICAgIChMMV9TSVpFIC0gMSkKPiA+KyNkZWZpbmUgTDFfSU5W
QUwgICAgICAgICAgICBMMF9JTlZBTAo+ID4rI2RlZmluZSBMMV9CTE9DSyAgICAgICAgICAgIDB4
MQo+ID4rI2RlZmluZSBMMV9UQUJMRSAgICAgICAgICAgIEwwX1RBQkxFCj4gPisjZGVmaW5lIEwx
X01BU0sgICAgICAgICAgICAgKH4oTDFfU0laRS0xKSkKPiA+Kwo+ID4rLyogTGV2ZWwgMiB0YWJs
ZSwgMk1pQiBwZXIgZW50cnkgKi8KPiA+KyNkZWZpbmUgTDJfU0hJRlQgICAgICAgICAgICAyMQo+
ID4rI2RlZmluZSBMMl9TSVpFICAgICAgICAgICAgICgxIDw8IEwyX1NISUZUKQo+ID4rI2RlZmlu
ZSBMMl9PRkZTRVQgICAgICAgICAgIChMMl9TSVpFIC0gMSkKPiA+KyNkZWZpbmUgTDJfSU5WQUwg
ICAgICAgICAgICBMMF9JTlZBTAo+ID4rI2RlZmluZSBMMl9CTE9DSyAgICAgICAgICAgIEwxX0JM
T0NLCj4gPisjZGVmaW5lIEwyX1RBQkxFICAgICAgICAgICAgTDBfVEFCTEUKPiA+KyNkZWZpbmUg
TDJfTUFTSyAgICAgICAgICAgICAofihMMl9TSVpFLTEpKQo+ID4rCj4gPisvKiBMZXZlbCAzIHRh
YmxlLCA0S2lCIHBlciBlbnRyeSAqLwo+ID4rI2RlZmluZSBMM19TSElGVCAgICAgICAgICAgIDEy
Cj4gPisjZGVmaW5lIEwzX1NJWkUgICAgICAgICAgICAgKDEgPDwgTDNfU0hJRlQpCj4gPisjZGVm
aW5lIEwzX09GRlNFVCAgICAgICAgICAgKEwzX1NJWkUgLSAxKQo+ID4rI2RlZmluZSBMM19JTlZB
TCAgICAgICAgICAgIDB4MAo+ID4rI2RlZmluZSBMM19QQUdFICAgICAgICAgICAgIDB4Mwo+ID4r
I2RlZmluZSBMM19NQVNLICAgICAgICAgICAgICh+KEwzX1NJWkUtMSkpCj4gPisKPiA+KyNkZWZp
bmUgTG5fRU5UUklFUyAgICAgICAgICAoMSA8PCA5KQo+ID4rI2RlZmluZSBMbl9BRERSX01BU0sg
ICAgICAgIChMbl9FTlRSSUVTIC0gMSkKPiA+Kwo+ID4rI2RlZmluZSBBVFRSX01BU0tfTCAgICAg
ICAgIDB4ZmZmCj4gPisKPiA+KyNkZWZpbmUgbDBfcGd0X2lkeCh2YSkgICAgICAoKCh2YSkgPj4g
TDBfU0hJRlQpICYgTG5fQUREUl9NQVNLKQo+ID4rI2RlZmluZSBsMV9wZ3RfaWR4KHZhKSAgICAg
ICgoKHZhKSA+PiBMMV9TSElGVCkgJiBMbl9BRERSX01BU0spCj4gPisjZGVmaW5lIGwyX3BndF9p
ZHgodmEpICAgICAgKCgodmEpID4+IEwyX1NISUZUKSAmIExuX0FERFJfTUFTSykKPiA+KyNkZWZp
bmUgbDNfcGd0X2lkeCh2YSkgICAgICAoKCh2YSkgPj4gTDNfU0hJRlQpICYgTG5fQUREUl9NQVNL
KQo+ID4rCj4gPisvKgo+ID4rICogTG93ZXIgYXR0cmlidXRlcyBmaWVsZHMgaW4gU3RhZ2UgMSBW
TVNBdjgtQSBCbG9jayBhbmQgUGFnZSBkZXNjcmlwdG9yCj4gPisgKi8KPiA+KyNkZWZpbmUgQVRU
Ul9uRyAgICAgICAgICAgICgxIDw8IDExKQo+ID4rI2RlZmluZSBBVFRSX0FGICAgICAgICAgICAg
KDEgPDwgMTApCj4gPisjZGVmaW5lIEFUVFJfU0goeCkgICAgICAgICAoKHgpIDw8IDgpCj4gPisj
ZGVmaW5lIEFUVFJfU0hfTUFTSyAgICAgICBBVFRSX1NIKDMpCj4gPisjZGVmaW5lIEFUVFJfU0hf
TlMgICAgICAgICAwICAgICAgICAgICAgICAgLyogTm9uLXNoYXJlYWJsZSAqLwo+ID4rI2RlZmlu
ZSBBVFRSX1NIX09TICAgICAgICAgMiAgICAgICAgICAgICAgIC8qIE91dGVyLXNoYXJlYWJsZSAq
Lwo+ID4rI2RlZmluZSBBVFRSX1NIX0lTICAgICAgICAgMyAgICAgICAgICAgICAgIC8qIElubmVy
LXNoYXJlYWJsZSAqLwo+ID4rI2RlZmluZSBBVFRSX0FQX1JXX0JJVCAgICAgKDEgPDwgNykKPiA+
KyNkZWZpbmUgQVRUUl9BUCh4KSAgICAgICAgICgoeCkgPDwgNikKPiA+KyNkZWZpbmUgQVRUUl9B
UF9NQVNLICAgICAgIEFUVFJfQVAoMykKPiA+KyNkZWZpbmUgQVRUUl9BUF9SVyAgICAgICAgICgw
IDw8IDEpCj4gPisjZGVmaW5lIEFUVFJfQVBfUk8gICAgICAgICAoMSA8PCAxKQo+ID4rI2RlZmlu
ZSBBVFRSX0FQX1VTRVIgICAgICAgKDEgPDwgMCkKPiA+KyNkZWZpbmUgQVRUUl9OUyAgICAgICAg
ICAgICgxIDw8IDUpCj4gPisjZGVmaW5lIEFUVFJfSURYKHgpICAgICAgICAoKHgpIDw8IDIpCj4g
PisjZGVmaW5lIEFUVFJfSURYX01BU0sgICAgICAoNyA8PCAyKQo+ID4rCj4gPisjZGVmaW5lIE1F
TV9ERUZfQVRUUiAgICAgICAoQVRUUl9BRnxBVFRSX1NIKEFUVFJfU0hfSVMpfEFUVFJfSURYKE1F
TV9OT1JNQUwpKQo+ID4rI2RlZmluZSBNRU1fTkNfQVRUUiAgICAgICAgKEFUVFJfQUZ8QVRUUl9T
SChBVFRSX1NIX0lTKXxBVFRSX0lEWChNRU1fTk9STUFMX05DKSkKPiA+KyNkZWZpbmUgTUVNX0RF
Vl9BVFRSICAgICAgIChBVFRSX0FGfEFUVFJfU0goQVRUUl9TSF9JUyl8QVRUUl9JRFgoTUVNX0RF
VklDRV9uR25SbkUpKQo+ID4rCj4gPisjZGVmaW5lIE1FTV9ST19BVFRSICAgICAgICAoTUVNX0RF
Rl9BVFRSfEFUVFJfQVAoQVRUUl9BUF9STykpCj4gPisKPiA+KyNkZWZpbmUgUFRfUFQgICAgICAg
ICAgICAgIChMMF9UQUJMRSkKPiA+KyNkZWZpbmUgUFRfTUVNICAgICAgICAgICAgIChNRU1fREVG
X0FUVFIgfCBMMV9CTE9DSykKPiAKPiBUaGUgbmFtaW5nIGZvciB0aG9zZSAyIG1hY3JvcyBkb24n
dCBtYWtlIHNlbnNlIGJhc2VkIG9uIHRoZSB2YWx1ZS4gRm9yCj4gaW5zdGFuY2UsIFBUX1BUIGdp
dmVzIHRoZSBpbXByZXNzaW9uIHRvIGJlIGF0dHJpYnV0ZSBmb3IgdGFibGUgYW5kIGRvZXMgbm90
Cj4gbmVjZXNzYXJpbHkgbmVlZCB0byBiZSBsZXZlbC0wLgo+IAo+IEJ1dCBJIGp1c3Qgbm90aWNl
IHRoYXQgeW91IGRlZmluZSBMMV9UQUJMRSBhcyBMMF9UQUJMRS4gVGhpcyBpcyBzbwo+IGNvbmZ1
c2luZywgeW91IHByb2JhYmx5IHdhbnQgdG8gZG8gc29tZSByZW5hbWluZyBzb21lIHdoZXJlLiBT
YW1lIGZvcgo+IEwxX0JMT0NLLgo+IAo+IENoZWVycywKPiAKPiAtLSAKPiBKdWxpZW4gR3JhbGwK
Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1k
ZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBz
Oi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 10:03:50 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 10:03:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8jwL-00045L-C2; Wed, 18 Apr 2018 10:03:49 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=8hzp=hh=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f8jwJ-00045G-NB
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 10:03:47 +0000
X-Inumbo-ID: a4d353d3-42ef-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::628])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id a4d353d3-42ef-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 12:02:47 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=HRv0W9j9uwGI2MIxFpowF2mh03gFff4YPv9X9uYR4i4=;
 b=gbUwwPGtFvK8fAKyxjCQwCAsLImxExbwm+oAqvlzQalXrqu2zvsCH2G4VSBtEGZLvs0kdwCt5aLisO7629b3ZlNhUa8CYZbzFdwQC7vEZoCSH31Qz74no+IeNLEqgOTelvmpJe+JxV021G2TczMmDXcms2bDgCST+LrwCWU+YGk=
Received: from VI1PR08CA0195.eurprd08.prod.outlook.com (2603:10a6:800:d2::25)
 by VI1PR0801MB1600.eurprd08.prod.outlook.com (2603:10a6:800:19::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Wed, 18
 Apr 2018 10:03:37 +0000
Received: from VE1EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::200) by VI1PR08CA0195.outlook.office365.com
 (2603:10a6:800:d2::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Wed, 18 Apr 2018 10:03:37 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT016.mail.protection.outlook.com (10.152.18.115) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Wed, 18 Apr 2018 10:03:37 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Wed, 18 Apr 2018
 11:03:25 +0100
Date: Wed, 18 Apr 2018 10:03:22 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180418100321.GF20072@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-3-git-send-email-shijie.huang@arm.com>
 <2d8fcc0a-9d2e-4814-bcbb-d4b55b65838f@arm.com>
 <20180418093035.GA20072@ubuntu.shanghai.arm.com>
 <aa3aaa48-7727-1a01-67b6-d7b65cb545c9@arm.com>
 <20180418094126.GD20072@ubuntu.shanghai.arm.com>
 <77731273-bc5d-0e77-4911-3a8f38d70bf5@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <77731273-bc5d-0e77-4911-3a8f38d70bf5@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(39380400002)(39860400002)(376002)(346002)(2980300002)(438002)(189003)(199004)(76176011)(446003)(93886005)(46406003)(11346002)(6636002)(426003)(7696005)(97756001)(33656002)(53546011)(59450400001)(47776003)(50466002)(6666003)(106466001)(305945005)(23726003)(1076002)(72206003)(86362001)(356003)(2906002)(39060400002)(486006)(106002)(5660300001)(58126008)(126002)(54906003)(476003)(478600001)(6862004)(316002)(16586007)(8676002)(4326008)(336012)(229853002)(186003)(104016004)(8936002)(77096007)(8666007)(26005)(6246003)(55016002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1600; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT016;
 1:vHibGs0/fZYuGo9NVM6H8OSHLlpgi25hYM9t8HrIlScGml7/su9sRGC5qiBi3MiT2CrBRR5HFJRBpupNTVQnsEtJRCXDw7JJ+3bwpYck1nZ4T3wp62Y0XRuNFbYwX93H
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0801MB1600; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 3:Pr6SyH99/u69MipyaJJoQnJbSJ8v1fpg7pi+Jk6Z2pefIeQATW2lQmIEg7Ukqg6iHxASIHB61FhRLQyBm6C6WpiTdHXyJwEtS3gAyEVuHq8gBBttbyOgTkYgP840UqIWouDs/WtCREJARO6hz7z+ztbi2ZTf2CyYOjja+AKs2iygfpe4VSRdI6sAa7TfWTQX16hIoXeIvi4uE0k4IpNlreK8Ld/D9fKTjnxk63413nT6oz0C6G/mzVj9Sk6hYd/37FPbWtY3X1urgVavjCGLQ7nD1dMUTkESa9z4lgq/kIjXp2yy+1jk+pblnaFX3bmBfOOHYONN7LzOQV1oiGlEUJr+qmII1htFyfd/L3ry6ok=;
 25:lUD3aiFBiO7TUiQjwtDn4OGYgqiL44ZzvIbmNCwTAIXkgp/q/Ua+yyj5N1z01zmb6TIBbwG+3KtTuMTc7HLVFjb9n5upxlAPflr1tOYIG5C/Vimk89HDt8Dz211jxvywUVMqEkwWdO7dpp+id42UMuKCvPGLp22fHH8xv/PmO0Sw2LgAG2MNUgLeQ/QFp4RwFmo5yynxiNH3lZ21i8Q1IQiNDZNMZ4dRxBqnztCAgVGBrl8xR+eYt2XyArBOUKTUeWSZylkOyQvAMJBZsm/7cDcyT1NS6MvT/UcebGquHPBz8QYIfXXWolx8ARgls/+TdKpaTA1AP8XH8DhOBhYX0Q==
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1600:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 31:Iz4ewovFiIoDqVWhwX+hC/paJdMFsiEMNOPOUkfa5wE3jrrBbYZAOSyO5PaGHOf6gqoivugScgDNetC9CNvPfi4SOFcdGd++FFtMH0Oc3TQLSB+UxM12Bq8vi7XIWnb5k5ePw/QQLYeAiu6SMelXjMfQCLD2lo62ilv5ld34kzHxaD8nZMXItonz5PmmZANJk0GaHiM8J9h5oWR4DTyFBJxGUjTzAih42MnonlKXDQQ=;
 20:Sq4vun94JoDTOLcnW+poyJisVhm76p1cM52jaF99Ckl/0m/KOlIWvdF/SWroie+BjkIdwOTt+F2VNHqnXN73rzKWx0YM0VOkOSjiMHrg8l9aJUsfoM/v4ITagPYcmSNHwtg4SDLzwdgX6Ov1zm3It4gF3+leqe7YlFHMHoOJTOdVWJsF4yx8E6WtvMZZIDBuKQ56LOAoA3BftWWIi3elnyu5H1/L/Ev9apBCB9uZDO5DsD7UC4brYxwpKxQhERfS;
 4:Nb8N6ef2KCi6pwkORaiUwiFrcxa0wSODG59dvqt0jofnd19D6UmJt1fbcTgjPexTPmZBOsW0/yGBcmV1TTPwuz3fnlPsfz4JXZe0jwqOKuXEFssnKIDB36d1/WoljpcPcatQHgyQE9lau8VVr6xDFr+Rv0K65s9MVgYHVS0G226fArmggJUwJBavG7EKginyjm8/xq0BxtL/8JImKlOVhPlTViHP8fd8PEx033AuBESo7LHoETff86irtPoHU+0+VX+Km0EeuotoSQi8C+Fjjw==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0801MB160009BC0CDA10053AB232D084B60@VI1PR0801MB1600.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501327)(52105095)(93006095)(93004095)(3002001)(10201501046)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR0801MB1600; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0801MB1600; 
X-Forefront-PRVS: 06469BCC91
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1600;
 23:dm3hExg1zeRLwJTM3wY3PZcMiUrIHDA7a++c+eu?=
 =?us-ascii?Q?P1mqyy/gTQ4zgE8/C4qXcJrLhrq38+8wgAxcP0LXuTb1A0ZiZr0+SfMd94fR?=
 =?us-ascii?Q?jTekJFKA3oMmPE9b5HZj+/NaXiQMCH0mXg7xMJCj+ZwPDfml91x3Oy9Idw5G?=
 =?us-ascii?Q?6Bk07051+HsbGlrfzpxBjn8g9jnl0IAllHfF/1c4INiUFkvb1/7JVgbnu++1?=
 =?us-ascii?Q?E188OZPd6g232YnYxD9YZq/0l7QY6Id9DyZ+NfHtyj8d7EqG63tHjK51VgHj?=
 =?us-ascii?Q?48XvemZ0IDPMEqPY8qq39UfH/qt4tdZCHDrgHaZUVsXRPsW0Z+FNsKbR5h+9?=
 =?us-ascii?Q?P8YXwM8MJBVjVLEJUiqWn+CS0BQEeo2iY+wG9gk25lcbKDEzjR7RvZNsdSgw?=
 =?us-ascii?Q?ajnFm+auj9rttRaUaCQ+Pc2Htf+KeqDgi8mEYKzsxEmT0FoQcNRrbxypUedA?=
 =?us-ascii?Q?6AyT+t7CT8C+mHM4TKjUT/C2W6A/l1qQt+G0H7LsAkCAFUvfyJIs0xT7ahAd?=
 =?us-ascii?Q?5Hok6/QpTqL3vjKzireEESnRSyanGSm7CJ0cT8psrI6lOvk3wrhU90P2r7Nu?=
 =?us-ascii?Q?IfGtha7Wjh90pbkNl1ZQHuwAMkhSe088WbYxt9/TyGjBY1drSWJ1ru9DiYos?=
 =?us-ascii?Q?EdBcOgAOmbtSHJGvU3aUu15NjF62s7ThcBtXbGUbrClHNMBwWURCLKoGBoXH?=
 =?us-ascii?Q?akHaQWYTZmxoMj6y5Y9PGEWULeIm0t9RZUxUXat6/Qydw4cHDhx6w0AwdT8F?=
 =?us-ascii?Q?ZwxrQjBVIuo0syoeeEuoq8h1y5ZKkDA1GeFSCCAJJygDd8qgHL5FG5fGUHbp?=
 =?us-ascii?Q?oDaknzE7ljjbcpbYOJGcFTxjJOo80wYRF4Ql9BPajGv3XZaDGtT93oSpByz/?=
 =?us-ascii?Q?yFymtCkROepeAYdyh7bIqRaoRud3C29Idu99B9Ij77dcfgDBifzRj9k1oP86?=
 =?us-ascii?Q?gJCB+AF4XVTdeODn3cgwvmHwN82Iu2zyldDhs2A5NusQE9u/5ThvoKt9RDZl?=
 =?us-ascii?Q?Dmie/uHQfjwEq+SemRr3huaEutRj2oaY4x/qUdi8YuAeINcuU2mf431HsBKS?=
 =?us-ascii?Q?1LTowMgDzRMwqlOGIZ85ZByKYBTN4dbdhnU0aIsqr4/L3804YKqunOO4y1UB?=
 =?us-ascii?Q?xw1DXEOOnNUu7ULe/Lp2acRbSCglTgdnYzs4ciaAcUXgaBXyX262WF8Ywfvf?=
 =?us-ascii?Q?AmRC+uL4/9aUVjMMPzOkUqKW4aKR8UkLCNKU6OqRpi+vQYQzVkeL3Z3p39yi?=
 =?us-ascii?Q?bnrdvUAYVmim8KjANcOZKwM4uYdt26PDgaSjiq5ez?=
X-Microsoft-Antispam-Message-Info: SY/DHnn/2a9BHa0mxxumZiFz0+SATYwxPdcjZT/Xl88e+cFj2WZ3/0uvLNjk6OPAZi79ysjcm3zdBtSf0gHk1StUa+ptn63d+VVLXHICOenMha4ZqXy7uM8u7WfmRRgYG+ruW4B+uFHI2rMuGfTlpMEyhmxHvPOWXXwF3ybO2EEC0aF1BM1T/3FRVFWhHnvuEkoUJ/Ea7veSWG/76uM7AHZtRVOAd2jLk2+4jz6tvn0vtF4EJ20923G0ezr2YwQf5hpJQZbSxyou27b+O7/iLRafvPI0qHuW2QKe4BqqAeRujuzlBstkzsgIUhCan7CCtSRBcxumKEquPh8wcX9Rb5VFu9P5r9Dl63CoLydY7KVMoUGKfV3eUX94yMKWdn0nr3fTbgIPDmu5s+TZxURpdcvDCWx1atgAsV+MsqIZbXA=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 6:YxD37PGvFcoxx0aaCNk+pt1OV5OROFmAHFCPsxD4N6zTOtYtFqnaQU4U/TWBEWArUesTwCb8XFaP41IE0oNrLW3JjluCxA48/OMjpKYRw6si5gBnr4MRGUpoloW2MDE2b1Fba1awDIEh+t32nnHd629LlsTgoq7zrKVqNtoJ7KIPBtljvbY03yqRD/OyJ/CwfqvMP+9g4cCM78Vx/8/LZE+w2xFjb+Nqen2w+m/WraRQ7tCynEHkJ2BDgp2YXWKX0uXgMPTtzVmuKxE4xZePMKmSC+gtNIRbkC4zyGAp1MGVYN6RjF4e29zmByPZTYf66cLhzJykNNDo4cva8uuZILUK5yI/k/L1W247PWV8LdXDki6IXEeKWPhh30D+pNZL8RvH/T/UTu4OIBNE7/wIzWOHZzsuFYEj8zbGgoWlOhgjJmTn5lJ7fCZtypzLrN5Gw2d/ACjeg+t2tBz1E6s586085CX0WLPxdW/Z3yA9WYeqe4fb/Ez0WDE+ruXZTnR9;
 5:VIIM97LRaY8hADl0AzrE6JAsxwSfwfqwi8qb0+d1g5O7HROMHahPGAkRpirUtr6ayeU/E0px+3bVw4Cc7eOgaaztDbDINdHl0TU0owYdXk1uHEZPv61Bf70TasYETJW7gGkfo6xb+Dg7a/9HrQ1XeTyqV1N7fAaazbNmxCWkvI4=;
 24:qKFE2xg2oEYwDiyyXkoCzmImGQP2QXK/nCj0m5B37v7H4aIEF4YAKWuAAXZYMG/C3QVFL9tSun4ltbepMJXM2sq98+LLCanMP81B8pSyqiM=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 7:2ehIvqM5UubmEp5q+heJjltoCFUFuF17DM91ef5SD7aSkUO69ImsWjFDMYlM34g84QJ3H+7nbzcxAC5iwO2cksw4sri/JmTnK4VzIIwuKi+BU4A1hHtkwBRBYTIgD5fAGFGu+exEEJgSx5g457yAjmRHxaJkr6DfRcBzlnwILk/8qXlA7t8skVdyVAv4QiKAy3xZyWaAwhWLRc9Q0ZsSCTw4VxCE2SbbxGIG0SWfEG2Qi4NXwGDoOtki8zgmXADc
X-MS-Office365-Filtering-Correlation-Id: 00276e76-82d0-4ca4-a048-08d5a513a784
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 10:03:37.3585 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 00276e76-82d0-4ca4-a048-08d5a513a784
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1600
Subject: Re: [Minios-devel] [PATCH v3 02/43] arm32: remove the arm32
 specific code file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMTA6NDU6MTNBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDE4LzA0LzE4IDEwOjQxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPk9u
IFdlZCwgQXByIDE4LCAyMDE4IGF0IDEwOjM4OjE1QU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90
ZToKPiA+PkhpLAo+ID4+Cj4gPj5PbiAxOC8wNC8xOCAxMDozMCwgSHVhbmcgU2hpamllIHdyb3Rl
Ogo+ID4+Pk9uIE1vbiwgQXByIDE2LCAyMDE4IGF0IDA0OjM4OjIwUE0gKzAxMDAsIEp1bGllbiBH
cmFsbCB3cm90ZToKPiA+Pj5IaSBKdWxpZW4sCj4gPj4+PkhpIFNoaWppZSwKPiA+Pj4+Cj4gPj4+
Pk9uIDE2LzA0LzE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPj4+Pj5UaGlzIHBhdGNo
IHJlbW92ZXMgdGhlIGFybTMyIHNwZWNpZmljIGNvZGUgZmlsZToKPiA+Pj4+PiAgICAgYXJtMzIu
UywgaHlwZXJjYWxsczMyLlMsIG1pbmlvcy1hcm0zMi5sZHMKPiA+Pj4+Cj4gPj4+PkhvdyBhYm91
dCB0aGUgcmVzdCBvZiB0aGUgY29kZT8gSSBzZWUgcXVpdGUgYSBmZXcgcGF0Y2ggd2l0aCAicmVt
b3ZlIGFybTMyCj4gPj4+PmNvZGUiIGluIHRoZSBjb21taXQgbWVzc2FnZS4KPiA+Pj5UaGlzIHBh
dGNoIGp1c3QgcmVtb3ZlcyB0aGUgc3BlY2lmaWMgZmlsZXMgZm9yIGFybTMyLgo+ID4+PkFzIHlv
dSBrbm93IHRoYXQgdGhlcmUgYXJlIG90aGVyIHBsYWNlcyB3aGljaCBoYXZlIGFybTMyIGNvZGUs
IHN1Y2ggYXMgZ2ljL3RpbWVyLgo+ID4+Pgo+ID4+PkkgcHJlZmVyIHRvIHJlbW92ZSB0aGUgYXJt
MzIgY29kZSB3aGlsZSBhZGRpbmcgdGhlIGFybTY0IGNvcnJlc3BvbmQgY29kZQo+ID4+PmluIHRo
ZSBnaWMvdGltZXIgZmlsZS4gIEl0IGlzIG1vcmUgY2xlYXIgdG8gbWUuCj4gPj4KPiA+PlBhdGNo
IHNob3VsZCBpZGVhbGx5IGRvIG9uZSBsb2dpY2FsIHRoaW5ncyB0byBoZWxwIHRoZSByZXZpZXdl
cgo+ID4+dW5kZXJzdGFuZGluZyB0aGUgcGF0Y2ggd2l0aCBtaW5pbWFsIGVmZm9ydC4gUmVtb3Zp
bmcgYXJtMzIgY29kZSBpbiBwYXRjaAo+ID4+Y2FsbGVkICJpbXBsZW1lbnQgYXJtNjQiIGRvZXMg
bm90IG1ha2Ugc2Vuc2UuIFBsdXMgbm93aGVyZSBpbiB0aGF0IHNlcmllcwo+ID4+eW91IGV4cGxh
aW4gdGhhdCBkZWNpc2lvbiB3aGljaCBpcyBub3Qgd2hhdCB3ZSBhZ3JlZWQgb24uCj4gPgo+ID5P
a2F5LCBJIHdpbGwgdXNlIG9uZSBwYXRjaCB0byByZW1vdmUgYWxsIHRoZSBhcm0zMiBjb2RlIGlu
IHRoZSBuZXh0IHZlcnNpb24uCj4gCj4gUGxlYXNlIHJlYWQgd2hhdCBJIHNhaWQgYmVsb3c6Cj4g
Cj4gIml0IGlzIHlvdXIgY2hvaWNlIHRvIHNwbGl0IHRoZSBzZXJpZXMgbGlrZSB0aGF0IGJ1dCBp
ZiB5b3Ugd2FudCBwZW9wbGUgdG8KPiByZXZpZXcgaXQgdGhlbiB5b3Ugc2hvdWxkIGhlbHAgdGhl
bSB0byB1bmRlcnN0YW5kIHdoYXQgeW91IGFyZSBkb2luZy4gVGhpcwo+IG1lYW5zIGJldHRlciBj
b21taXQgbWVzc2FnZXMgYW5kIGNvdmVyIGxldHRlci4gIgo+IAo+IEJ5IHRoYXQgSSBtZWFudCwg
SSB3b3VsZCBiZSBoYXBweSB3aXRoIHdoYXQgeW91IGRpZC4gQnV0IHlvdSBuZWVkIHRvIHVwZGF0
ZQo+IHlvdXIgY29tbWl0IG1lc3NhZ2VzIGFjY29yZGluZ2x5LiBBdCB0aGlzIHN0YWdlLCB0aGF0
J3MgcHJvYmFibHkgZ29pbmcgdG8gYmUKPiBlYXNpZXIgdGhhbiByZXNodWZmbGluZyB5ZXQgYW5v
dGhlciB0aW1lIHRoaXMgc2VyaWVzLgpZZXMsIGl0IGlzIHBhaW4gdG8gcmVzaHVmZmxpbmcgdGhl
IHdob2xlIHBhdGNoIHNldC4KClRoYW5rcywgSSB3aWxsIGFkZCBtb3JlIGNvbW1pdCBtZXNzYWdl
IHRvIHRoaXMgcGF0Y2ggYW5kIG90aGVyIG9uZXMuCgpIdWFuZyBTaGlqaWUKCl9fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5n
IGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVu
cHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 10:25:28 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 10:25:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8kHG-0005yA-Rn; Wed, 18 Apr 2018 10:25:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8kHF-0005y4-I0
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 10:25:25 +0000
X-Inumbo-ID: 13e75cba-42f3-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 13e75cba-42f3-11e8-8249-2fda3a446a53;
 Wed, 18 Apr 2018 10:27:21 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 7366F1435;
 Wed, 18 Apr 2018 03:25:23 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A4DDC3F487;
 Wed, 18 Apr 2018 03:25:21 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-7-git-send-email-shijie.huang@arm.com>
 <e371eb19-9166-086b-938d-68acb481fea4@arm.com>
 <20180418100050.GE20072@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <97aa75af-1a39-fa9d-010b-063770409c08@arm.com>
Date: Wed, 18 Apr 2018 11:25:20 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180418100050.GE20072@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 06/43] arm64: add the boot code
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxOC8wNC8xOCAxMTowMCwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIE1vbiwgQXBy
IDE2LCAyMDE4IGF0IDA2OjEzOjMxUE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4gT24g
MTYvMDQvMTggMDc6MzEsIEh1YW5nIFNoaWppZSB3cm90ZToKPj4+ICs5ODogOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPj4+ICsgICAgLmFsaWduICAyOyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPj4+ICs5OTogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKPj4+ICsKPj4+ICsgICAgLmRhdGEKPj4+ICsgICAg
Lmdsb2JsIF9ib290X3N0YWNrCj4+PiArICAgIC5nbG9ibCBib290X2wwX3BndGFibGUKPj4+ICsg
ICAgLmdsb2JsIGJvb3RfbDFfcGd0YWJsZQo+Pj4gKyAgICAuZ2xvYmwgYm9vdF9sMl9wZ3RhYmxl
Cj4+PiArICAgIC5nbG9ibCBpZG1hcF9sMF9wZ3RhYmxlCj4+PiArICAgIC5nbG9ibCBpZG1hcF9s
MV9wZ3RhYmxlCj4+Cj4+IFBsZWFzZSBwdXQgdGhlIC5nbG9ibCBsYWJlbCBiZWZvcmUgZWFjaCBk
ZWNsYXJhdGlvbi4gQnV0IEkgYW0gbm90IHN1cmUgd2h5Cj4+IHlvdSBuZWVkIHRvIGV4cG9ydCBt
b3N0IG9mIHRoZW0uCj4gVGhlIGNvZGUgc2V0dXAgdGhlIHBhZ2UgdGFibGUgbWF5IG5lZWQgdGhl
bSwgc28gSSBzaG91bGQgZXhwb3J0IHRoZW0uCgpJIG9ubHkgc2VlIHVzZSBvZiBib290X2wwX3Bn
dGFibGUgYW5kIG5vdCB0aGUgb3RoZXJzLiBZb3Ugc2hvdWxkIG5ldmVyIApuZWVkIGlkbWFwXyog
b25lLiBGb3IgdGhlIGJvb3RfbHsxLDJ9X3BndGFibGUsIHlvdXIgcGFnZS10YWJsZSBjb2RlIApz
aG91bGQgd2FsayBmcm9tIHRoZSByb290IHNvIHRoZXJlIGFyZSwgSUhNTywgbm90IG5lY2Vzc2Fy
eS4KPiAKPj4KPj4+ICsKPj4+ICsgICAgLmFsaWduIDEyCj4+PiArYm9vdF9sMF9wZ3RhYmxlOgo+
Pj4gKyAgICAuZmlsbCAgUEFHRV9TSVpFLDEsMAo+Pj4gK2Jvb3RfbDFfcGd0YWJsZToKPj4+ICsg
ICAgLmZpbGwgIFBBR0VfU0laRSwxLDAKPj4+ICtib290X2wyX3BndGFibGU6Cj4+PiArICAgIC5m
aWxsICBQQUdFX1NJWkUsMSwwCj4+PiAraWRtYXBfbDBfcGd0YWJsZToKPj4+ICsgICAgLmZpbGwg
IFBBR0VfU0laRSwxLDAKPj4+ICtpZG1hcF9sMV9wZ3RhYmxlOgo+Pj4gKyAgICAuZmlsbCAgUEFH
RV9TSVpFLDEsMAo+Pj4gKwo+Pj4gKyAgICAuYWxpZ24gMTIKPj4+ICtfYm9vdF9zdGFjazoKPj4+
ICsgICAgLmZpbGwgIF9fU1RBQ0tfU0laRSwxLDAKPj4KPj4gQ2FuIHdlIHBsZWFzZSB1c2UgU1RB
Q0tfU0laRSBhbmQgbm90IF9fU1RBQ0tfU0laRS4KPiBJIHdpbGwgdHJ5Li4uCj4gQnV0IEkgcmVt
ZW1iZXIgSSBtZXQgc29tZXRoaW5nIHdyb25nIGluIGNvbXBpbGluZyB3aGVuIEkgdXNlZCBTVEFD
S19TSVpFLgoKQ2FuIHlvdSBwb3N0IHRoZSBlcnJvciBpZiB0aGVyZSBpcyBhbnk/IDopCgo+IAo+
Pgo+Pj4gK3N0YWNrX2VuZDoKPj4+ICsKPj4+ICsvKgo+Pj4gKyAqIEtlcm5lbCBzdGFydHVwIGVu
dHJ5IHBvaW50Lgo+Pj4gKyAqCj4+PiArICogUGxlYXNlIHJlZmVyIHRvIGxpbnV4IGtlcm5lbCBm
aWxlIERvY3VtZW50YXRpb24vYXJtNjQvYm9vdGluZy50eHQKPj4+ICsgKiBmb3IgdGhlIGhlYWRl
ciBmb3JtYXQuCj4+PiArICovCj4+PiArICAgIC50ZXh0Cj4+PiArCj4+PiArICAgIGIgICAgICAg
X3N0YXJ0ICAgICAgICAgICAgICAgICAgLyogYnJhbmNoIHRvIGtlcm5lbCBzdGFydCwgbWFnaWMg
Ki8KPj4+ICsgICAgLmxvbmcgICAwICAgICAgICAgICAgICAgICAgICAgICAvKiByZXNlcnZlZCAq
Lwo+Pj4gKyAgICAucXVhZCAgIDB4MCAgICAgICAgICAgICAgICAgICAgIC8qIEltYWdlIGxvYWQg
b2Zmc2V0IGZyb20gc3RhcnQgb2YgUkFNICovCj4+PiArICAgIC5xdWFkICAgX2VuZCAtIF9zdGFy
dCAgICAgICAgICAgLyogRWZmZWN0aXZlIEltYWdlIHNpemUgKi8KPj4+ICsgICAgLnF1YWQgICAy
ICAgICAgICAgICAgICAgICAgICAgICAvKiBrZXJuZWwgZmxhZ3M6IExFLCA0SyBwYWdlIHNpemUg
Ki8KPj4KPj4gQWdhaW4sIGRvIHdlIHJlYWxseSBjYXJlIHRvIGhhdmUgdGhlIGtlcm5lbCBwbGFj
ZWQgYXMgY2xvc2UgYXMgcG9zc2libGUgdG8KPj4gdGhlIGJhc2UgYWRkcmVzcyBvZiB0aGUgRFJB
TT8KPiBEbyB5b3UgaGF2ZSBhIGJldHRlciBwbGFjZSB0byBwbGFjZSB0aGUga2VybmVsPwoKV2hh
dCBJIHdhcyBhc2tpbmcgaXMgd2hldGhlciB5b3Ugc3RyaWN0bHkgbmVlZCB0byBoYXZlIHRoZSBr
ZXJuZWwgYXQgdGhlIApiZWdpbm5pbmcgb2YgdGhlIFJBTS4gWW91IGNvdWxkIGFsc28gbGV0IHRo
ZSB0b29sc3RhY2sgZGVjaWRlIHdoZXJlIHRvIApwdXQgdGhlIGtlcm5lbCBpbiB0aGUgbWVtb3J5
LiBXaGlsZSB0aGlzIGlzIG5vdCBzdXBwb3J0ZWQgdG9kYXksIHRoaXMgCndvdWxkIGdpdmUgYSBi
aXQgbW9yZSBmbGV4aWJpbGl0eS4KCj4gCj4+Cj4+IEZvciByZW1pbmRlciwgdGhlIGRvY3VtZW50
YXRpb24gb2YgdGhhdCBmbGFnIGlzOgo+Pgo+PiBCaXQgMzogICAgICAgIEtlcm5lbCBwaHlzaWNh
bCBwbGFjZW1lbnQKPj4gICAgICAgICAgICAgICAgICAgICAgICAgIDAgLSAyTUIgYWxpZ25lZCBi
YXNlIHNob3VsZCBiZSBhcyBjbG9zZSBhcyBwb3NzaWJsZQo+PiB0byB0aGUgYmFzZSBvZiBEUkFN
LCBzaW5jZSBtZW1vcnkgYmVsb3cgaXQgaXMgbm90IGFjY2Vzc2libGUgdmlhIHRoZSBsaW5lYXIK
Pj4gbWFwcGluZwo+PiAgICAgICAgICAgICAgICAgICAgICAgICAgMSAtIDJNQiBhbGlnbmVkIGJh
c2UgbWF5IGJlIGFueXdoZXJlIGluIHBoeXNpY2FsCj4+IG1lbW9yeQo+Pgo+PiBIb3cgZG9lcyBt
aW5pLU9TIG9uIEFybTY0IGRlYWwgd2l0aCBtZW1vcnkgYmVsb3cgdGhlIGxvYWRlZCBhZGRyZXNz
IG9mIHRoZQo+PiBrZXJuZWw/Cj4gV2UgZG8gbm90IHVzZSB0aGUgbWVtb3J5IGJlbG93IHRoZSBs
b2FkZWQgYWRkcmVzcyBvZiBrZXJuZWwuCj4gV2UgcHV0IGtlcm5lbCBhdCAweGZmZmYwMDAwMDAw
MDAwMDAgKDQ4Yml0KS4KPiAKPiBBbmQgd2Ugc2V0dXAgdGhlIHBhZ2UgdGFibGUgZm9yIGFkZHJl
c3MgPj0gMHhmZmZmMDAwMDAwMDAwMDAwLAo+IHRoZSBhZGRyZXNzIGJlbG93IDB4ZmZmZjAwMDAw
MDAwMDAwMCBpcyBub3QgYWNjZXNzZWQuCgpJIGFtIGZhaXJseSBjb25mdXNlZC4gSXMgdGhhdCB2
aXJ0dWFsIGFkZHJlc3Mgb3IgcGh5c2ljYWwgYWRkcmVzcz8KCj4+IEkgYW0gcHJldHR5IHN1cmUg
eW91IG5lZWQgdG8gY2xlYW4gdGhlIGNhY2hlIGZvciB0aGUgcGFnZS10YWJsZSByZWdpb24gaGVy
ZQo+PiB0byBhdm9pZCBwb3RlbnRpYWwgZGlydHkgbGluZXMgYmVpbmcgZXZpY3RlZCBhbmQgLi4u
Cj4gSSBhbSBub3QgY2xlYXIgYWJvdXQgdGhpcy4KPiBpcyBpdCBwb3NzaWJsZSB0aGF0IHRoZXJl
IGlzIGNhY2hlIGZvciB0aGUgcGFnZXQgYWJsZSByZWdpb24/CgpJbiBzaG9ydCB5ZXMuIFlvdSBj
YW5ub3QgZ3VhcmFudGVlIHRoZXJlIGFyZSBubyBkaXJ0eSBvciBzdGFsZSBjYWNoZSAKbGluZXMg
Zm9yIHRoZSBhcmVhcyBvZiB0aGUgbWVtb3J5IHdyaXR0ZW4gYnkgdGhlIGtlcm5lbCBkdXJpbmcg
Ym9vdCB3aXRoIAp0aGUgTU1VIG9mZiAoYWNjZXNzIHdpbGwgYmUgbm9uLWNhY2hlYWJsZSkuCgog
RnJvbSB0aGUgYm9vdCBwcm90b2NvbCB0aGUgb25seSBndWFyYW50ZWUgaXM6CgoiVGhlIGFkZHJl
c3MgcmFuZ2UgY29ycmVzcG9uZGluZyB0byB0aGUgbG9hZGVkIGtlcm5lbCBpbWFnZSBtdXN0IGJl
CiAgY2xlYW5lZCB0byB0aGUgUG9DLiBJbiB0aGUgcHJlc2VuY2Ugb2YgYSBzeXN0ZW0gY2FjaGUg
b3Igb3RoZXIKICBjb2hlcmVudCBtYXN0ZXJzIHdpdGggY2FjaGVzIGVuYWJsZWQsIHRoaXMgd2ls
bCB0eXBpY2FsbHkgcmVxdWlyZQogIGNhY2hlIG1haW50ZW5hbmNlIGJ5IFZBIHJhdGhlciB0aGFu
IHNldC93YXkgb3BlcmF0aW9ucy4KICBTeXN0ZW0gY2FjaGVzIHdoaWNoIHJlc3BlY3QgdGhlIGFy
Y2hpdGVjdGVkIGNhY2hlIG1haW50ZW5hbmNlIGJ5IFZBCiAgb3BlcmF0aW9ucyBtdXN0IGJlIGNv
bmZpZ3VyZWQgYW5kIG1heSBiZSBlbmFibGVkLgogIFN5c3RlbSBjYWNoZXMgd2hpY2ggZG8gbm90
IHJlc3BlY3QgYXJjaGl0ZWN0ZWQgY2FjaGUgbWFpbnRlbmFuY2UgYnkgVkEKICBvcGVyYXRpb25z
IChub3QgcmVjb21tZW5kZWQpIG11c3QgYmUgY29uZmlndXJlZCBhbmQgZGlzYWJsZWQuIgoKPiAK
PiBTb3JyeSwgSSB3aWxsIHJlYWQgbW9yZSBkb2N1bWVudCBhbmQgcmVwbHkgeW91ciBmb2xsb3dp
bmcgY29tbWVudHMuLi4KCkZlZWwgZnJlZSB0byBhc2sgcXVlc3Rpb25zIGhlcmUgaWYgeW91IG5l
ZWQgdG8uCgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlv
cy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3Jn
L21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 16:38:14 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 16:38:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8q60-0001GN-Cf; Wed, 18 Apr 2018 16:38:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8q5z-0001GI-4y
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 16:38:11 +0000
X-Inumbo-ID: 27787cf5-4327-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 27787cf5-4327-11e8-8249-2fda3a446a53;
 Wed, 18 Apr 2018 16:40:08 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 4E11A1596;
 Wed, 18 Apr 2018 09:38:09 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 801B93F487;
 Wed, 18 Apr 2018 09:38:07 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-8-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <db21455e-a990-28e3-1a0d-3603a4bdbfc0@arm.com>
Date: Wed, 18 Apr 2018 17:38:06 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-8-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 07/43] arm64: change
 physical_address_offset to paddr_t
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMTYvMDQvMTggMDc6MzEsIEh1YW5nIFNoaWppZSB3cm90ZToKPiBUaGUg
InVpbnQzMl90IiBpcyBub3QgZW5vdWdoIGZvciBhcm02NCBjb2RlLAo+IFRoaXMgcGF0Y2ggY2hh
bmdlcyBpdCB0byBwYWRkcl90LCBhbmQgYWxzbyBmaXhlcyB0aGUgcHJpbnQgZm9ybWF0Lgo+IAo+
IFNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Cj4gLS0t
Cj4gICBhcmNoL2FybS9tbS5jICAgICAgICAgfCAyICstCj4gICBhcmNoL2FybS9zZXR1cC5jICAg
ICAgfCA0ICsrLS0KPiAgIGluY2x1ZGUvYXJtL2FyY2hfbW0uaCB8IDUgKysrKy0KPiAgIDMgZmls
ZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1n
aXQgYS9hcmNoL2FybS9tbS5jIGIvYXJjaC9hcm0vbW0uYwo+IGluZGV4IGY4MDZjOWYuLjNkODhk
M2IgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9hcm0vbW0uYwo+ICsrKyBiL2FyY2gvYXJtL21tLmMKPiBA
QCAtNiw3ICs2LDcgQEAKPiAgICNpbmNsdWRlIDxsaWJmZHQuaD4KPiAgICNpbmNsdWRlIDxsaWIu
aD4KPiAgIAo+IC11aW50MzJfdCBwaHlzaWNhbF9hZGRyZXNzX29mZnNldDsKPiArcGFkZHJfdCBw
aHlzaWNhbF9hZGRyZXNzX29mZnNldDsKPiAgIHN0cnVjdCBlODIwZW50cnkgZTgyMF9tYXBbMV0g
PSB7Cj4gICAgICAgewo+ICAgICAgICAgICAuYWRkciA9IDAsCj4gZGlmZiAtLWdpdCBhL2FyY2gv
YXJtL3NldHVwLmMgYi9hcmNoL2FybS9zZXR1cC5jCj4gaW5kZXggYjY1MDIzYy4uMjdiZWE0YSAx
MDA2NDQKPiAtLS0gYS9hcmNoL2FybS9zZXR1cC5jCj4gKysrIGIvYXJjaC9hcm0vc2V0dXAuYwo+
IEBAIC0xOSw3ICsxOSw3IEBAIHZvaWQgKmRldmljZV90cmVlOwo+ICAgLyoKPiAgICAqIElOSVRJ
QUwgQyBFTlRSWSBQT0lOVC4KPiAgICAqLwo+IC12b2lkIGFyY2hfaW5pdCh2b2lkICpkdGJfcG9p
bnRlciwgdWludDMyX3QgcGh5c2ljYWxfb2Zmc2V0KQo+ICt2b2lkIGFyY2hfaW5pdCh2b2lkICpk
dGJfcG9pbnRlciwgcGFkZHJfdCBwaHlzaWNhbF9vZmZzZXQpCj4gICB7Cj4gICAgICAgaW50IHI7
Cj4gICAKPiBAQCAtMjcsNyArMjcsNyBAQCB2b2lkIGFyY2hfaW5pdCh2b2lkICpkdGJfcG9pbnRl
ciwgdWludDMyX3QgcGh5c2ljYWxfb2Zmc2V0KQo+ICAgCj4gICAgICAgcGh5c2ljYWxfYWRkcmVz
c19vZmZzZXQgPSBwaHlzaWNhbF9vZmZzZXQ7Cj4gICAKPiAtICAgIHhwcmludGsoIlZpcnR1YWwg
LT4gcGh5c2ljYWwgb2Zmc2V0ID0gJXhcbiIsIHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KTsKPiAr
ICAgIHhwcmludGsoIlZpcnR1YWwgLT4gcGh5c2ljYWwgb2Zmc2V0ID0gJSJQUklwYWRkciIgXG4i
LCBwaHlzaWNhbF9hZGRyZXNzX29mZnNldCk7CgpXaGlsZSB5b3UgYXJlIGhlcmUsIGNhbiB5b3Ug
cGxlYXNlIGFkZCAnMHgnIGluIGZyb250IG9mIHRoZSBudW1iZXI/IFNvIAp3ZSBrbm93IGl0IGlz
IHByaW50ZWQgaW4gaGV4YS4KCkNoZWVycywKCi0tIApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5n
IGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVu
cHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 16:42:44 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 16:42:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8qAO-0001qz-2S; Wed, 18 Apr 2018 16:42:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8qAM-0001qs-63
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 16:42:42 +0000
X-Inumbo-ID: c91e12dd-4327-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id c91e12dd-4327-11e8-8249-2fda3a446a53;
 Wed, 18 Apr 2018 16:44:39 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A829780D;
 Wed, 18 Apr 2018 09:42:40 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C40FC3F487;
 Wed, 18 Apr 2018 09:42:38 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-9-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <7f8bf41b-4add-296a-cf5d-0a7cb1953d62@arm.com>
Date: Wed, 18 Apr 2018 17:42:37 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-9-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 08/43] arm64: fix the wrong mask for
 to_virt/to_phys
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxNi8wNC8xOCAwNzozMSwgSHVhbmcgU2hpamllIHdyb3RlOgo+IEluIHRoZSBhcm02
NCwgdGhlIG1hc2sgMHhmZmZmZmZmZiB3aWxsIHRydW5jYXRlIHRoZSB2YWx1ZSwgYW5kCgpzL0lu
IHRoZS9Pbi8KCj4gdG9fdmlydC90b19waHlzIHdpbGwgZ2V0IHdyb25nIHJlc3VsdHMuCj4gCj4g
VGhpcyBwYXRjaCBmaXhlcyBpdC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNo
aWppZS5odWFuZ0Bhcm0uY29tPgo+IC0tLQo+ICAgaW5jbHVkZS9hcm0vYXJjaF9tbS5oIHwgNCAr
Ky0tCj4gICAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+
IAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcmNoX21tLmggYi9pbmNsdWRlL2FybS9hcmNo
X21tLmgKPiBpbmRleCBjNjY4NTZjLi5mNzdhMjEwIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvYXJt
L2FyY2hfbW0uaAo+ICsrKyBiL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAo+IEBAIC0xNSw4ICsxNSw4
IEBAIGV4dGVybiBwYWRkcl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0Owo+ICAgCj4gICAjZGVm
aW5lIERFRl9QQUdFX1BST1QgICAgIDAKPiAgIAo+IC0jZGVmaW5lIHRvX3BoeXMoeCkgICAgICAg
ICAgICAgICAgICgoKHBhZGRyX3QpKHgpK3BoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KSAmIDB4ZmZm
ZmZmZmYpCj4gLSNkZWZpbmUgdG9fdmlydCh4KSAgICAgICAgICAgICAgICAgKCh2b2lkICopKCgo
eCktcGh5c2ljYWxfYWRkcmVzc19vZmZzZXQpICYgMHhmZmZmZmZmZikpCj4gKyNkZWZpbmUgdG9f
cGh5cyh4KSAgICAgICAgICAgICAgICAgKCgocGFkZHJfdCkoeCkrcGh5c2ljYWxfYWRkcmVzc19v
ZmZzZXQpICYgKH4wVUwpKQoKV2hpbGUgdGhpcyBsb29rcyBnb29kIG9uIGFybTY0LCBmb3IgYXJt
MzIgdW5zaWduZWQgbG9uZyBpcyBub3QgZ29pbmcgdG8gCmJlIGVub3VnaC4gU28gSSB0aGluayB5
b3Ugd2FudCB0byB1c2UgfihwYWRkcl90KTAgdG8gY292ZXIgdGhlIDMyLWJpdCBjYXNlLgoKPiAr
I2RlZmluZSB0b192aXJ0KHgpICAgICAgICAgICAgICAgICAoKHZvaWQgKikoKCh4KS1waHlzaWNh
bF9hZGRyZXNzX29mZnNldCkgJiAofjBVTCkpKQoKRm9yIGF2b2lkYW5jZSBvZiBkb3VidCwgVUwg
aGVyZSBpcyBmaW5lLgoKPiAgIAo+ICAgI2RlZmluZSBQRk5fVVAoeCkgICAgICAgICAgICAgICAg
ICAodW5zaWduZWQgbG9uZykoKCh4KSArIFBBR0VfU0laRS0xKSA+PiBQQUdFX1NISUZUKQo+ICAg
I2RlZmluZSBQRk5fRE9XTih4KSAgICAgICAgICAgICAgICAodW5zaWduZWQgbG9uZykoKHgpID4+
IFBBR0VfU0hJRlQpCj4gCgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBs
aXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnBy
b2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 16:53:17 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 16:53:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8qKZ-0002Ye-S1; Wed, 18 Apr 2018 16:53:15 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8qKY-0002YZ-Jw
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 16:53:14 +0000
X-Inumbo-ID: d7ae69c6-4328-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id d7ae69c6-4328-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 18:52:13 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 75C0280D;
 Wed, 18 Apr 2018 09:53:12 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A63263F487;
 Wed, 18 Apr 2018 09:53:10 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-10-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <6272136e-0a75-134f-eeb4-1c2e8c1078c2@arm.com>
Date: Wed, 18 Apr 2018 17:53:09 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-10-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 09/43] arm64: add the __PAGE_SIZE
 macro in header file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMTYvMDQvMTggMDc6MzEsIEh1YW5nIFNoaWppZSB3cm90ZToKPiBUaGUg
X19QQUdFX1NJWkUgaXMgbmVlZGVkIGJ5IHRoZSBpbmNsdWRlL3Bvc2l4L2xpbWl0cy5oLgo+IAo+
IFNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Cj4gLS0t
Cj4gICBpbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oIHwgMiArKwo+ICAgMSBmaWxlIGNoYW5nZWQs
IDIgaW5zZXJ0aW9ucygrKQo+IAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcmNoX2xpbWl0
cy5oIGIvaW5jbHVkZS9hcm0vYXJjaF9saW1pdHMuaAo+IGluZGV4IDIzYTQ5MWYuLmRlMDQ3YjAg
MTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9hcm0vYXJjaF9saW1pdHMuaAo+ICsrKyBiL2luY2x1ZGUv
YXJtL2FyY2hfbGltaXRzLmgKPiBAQCAtMyw2ICszLDggQEAKPiAgIAo+ICAgI2luY2x1ZGUgPHBh
Z2VfZGVmLmg+Cj4gICAKPiArI2RlZmluZSBfX1BBR0VfU0laRSAgICAgICAoMVVMIDw8IFBBR0Vf
U0hJRlQpCgpUaGlzIGxvb2tzIGEgYml0IG9kZCB0byBtZS4gX18qIGlzIHVzZWQgdG8gZGVmaW5l
IHRoZSBub24tdW5kZXJzY29yZSAKdmVyc2lvbi4gSGF2ZSBhIGxvb2sgYXQgcG9zaXgvbGltaXRz
LmguCgpUaGlzIG1ha2UgbWUgcmVhbGl6ZSB0aGF0IHBhZ2VfZGVmLmggaXMgaW50cm9kdWNpbmcg
dGhlIG5vbi11bmRlcnNjb3JlIAp2ZXJzaW9uLiBTbyBJIHRoaW5rIHBhZ2VfZGVmLmggc2hvdWxk
IGJlIGZpeGVkLiBNb3N0IGxpa2VseSwgeW91IHdhbnQgdG8gCmZvbGQgcGFnZV9kZWYuaCBpbiBh
cmNoX2xpbWl0cy5oIGJlY2F1c2UgdGhpcyBpcyBwb2ludGxlc3MgdG8gaGF2ZSBhIApoZWFkZXIg
anVzdCBkZWZpbmluZyAzIG1hY3JvIGFuZCBpbmNsdWRlZCBvbmx5IHR3aWNlLgoKQ2hlZXJzLAoK
PiArCj4gICAjZGVmaW5lIF9fU1RBQ0tfU0laRV9QQUdFX09SREVSICAyCj4gICAjZGVmaW5lIF9f
U1RBQ0tfU0laRSAoNCAqIFBBR0VfU0laRSkKPiAgIAo+IAoKLS0gCkp1bGllbiBHcmFsbAoKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVs
IG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s
aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 17:48:32 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 17:48:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8rC3-0006Iz-Qk; Wed, 18 Apr 2018 17:48:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8rC2-0006In-9Y
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 17:48:30 +0000
X-Inumbo-ID: fa1dc072-4330-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id fa1dc072-4330-11e8-8249-2fda3a446a53;
 Wed, 18 Apr 2018 17:50:27 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 0456380D;
 Wed, 18 Apr 2018 10:48:28 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 317D13F487;
 Wed, 18 Apr 2018 10:48:26 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-11-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <d287476a-07af-ea01-e6fc-c18493f7716a@arm.com>
Date: Wed, 18 Apr 2018 18:48:24 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-11-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 10/43] arm64: add exception support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMTYvMDQvMTggMDc6MzEsIEh1YW5nIFNoaWppZSB3cm90ZToKPiBUaGlz
IHBhdGNoIGFkZHMgdGhlIGV4Y2VwdGlvbiBzdXBwb3J0IGZvciBhcm02NDoKPiAgICAgIC4wKSBB
ZGQgYXJtNjQvdHJhcHMuaCwgYW5kIGFkZCBuZXcgcHRfcmVnc3t9IGZvciBhcm02NC4KPiAgICAg
IC4xKSBBZGQgc2F2ZV9yZWdpc3RlcnMvcmVzdG9yZV9yZWdpc3RlcnMgd2hpY2ggYXJlIGJhc2Vk
IG9uIEZyZWVCU0QgY29kZS4KClBsZWFzZSBnaXZlIGEgcG9pbnRlciB0byB0aGUgY29kZS4KCj4g
ICAgICAuMikgc2V0dXAgdGhlIHZlY3RvciB0YWJsZQo+ICAgICAgLjMpIHJlbW92ZSB0aGUgY29k
ZSBmb3IgYXJtMzIuCgpUaGlzIGRvZXMgbm90IG1ha2Ugc2Vuc2UgaW4gYSBwYXRjaCB0aGF0IGlz
IGFkZGluZyBhcm02NCBzdXBwb3J0LiBUaGUgCmNvZGUgcmVtb3ZlZCBsb29rIGZhaXJseSBpbmRl
cGVuZGVudCwgc28gY2FuIHlvdSBtb3ZlIHRoYXQgaW4gIzIuCgo+IAo+IFNpZ25lZC1vZmYtYnk6
IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Cj4gLS0tCj4gICBhcmNoL2FybS9h
cm02NC9hcm02NC5TICAgIHwgMTQ3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysKPiAgIGFyY2gvYXJtL2FybTY0L3RyYXBzLmMgICAgfCAgMTYgKysrKysKPiAg
IGluY2x1ZGUvYXJtL2FybTY0L3RyYXBzLmggfCAgMjcgKysrKysrKysrCj4gICBpbmNsdWRlL2Fy
bS90cmFwcy5oICAgICAgIHwgIDIxICstLS0tLS0KPiAgIDQgZmlsZXMgY2hhbmdlZCwgMTkxIGlu
c2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gv
YXJtL2FybTY0L3RyYXBzLmMKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2FybS9hcm02
NC90cmFwcy5oCj4gCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0L2FybTY0LlMgYi9hcmNo
L2FybS9hcm02NC9hcm02NC5TCj4gaW5kZXggYjQ1NGNjNi4uOWViN2VhMCAxMDA2NDQKPiAtLS0g
YS9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4gKysrIGIvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+
IEBAIC0xLDYgKzEsNyBAQAo+ICAgI2luY2x1ZGUgImFzbS5oIgo+ICAgI2luY2x1ZGUgPGFyY2hf
bGltaXRzLmg+Cj4gICAjaW5jbHVkZSA8YXJtNjQvcGFnZXRhYmxlLmg+Cj4gKyNpbmNsdWRlIDxh
cm02NC90cmFwcy5oPgo+ICAgI2luY2x1ZGUgPHhlbi94ZW4uaD4KPiAgIAo+ICAgLyogVGhpcyBt
YWNybyB3aWxsIHVzZSB0aGUgeDAveDEveDIveDE2ICovCj4gQEAgLTEwMSw2ICsxMDIsMTEgQEAg
RU5UUlkoX3N0YXJ0KQo+ICAgICAgIG1zciAgICAgdHRicjBfZWwxLCB4MAo+ICAgICAgIGlzYgo+
ICAgCj4gKyAgICAvKiBMb2FkIHRoZSBleGNlcHRpb24gdmVjdG9ycyAqLwo+ICsgICAgbGRyICAg
ICB4MiwgPXZlY3Rvcl90YWJsZQo+ICsgICAgbXNyICAgICB2YmFyX2VsMSwgeDIKPiArICAgIGlz
YgoKSSBkb24ndCB0aGluayB0aGUgaXNiIGlzIG5lY2Vzc2FyeSBoZXJlLiBZb3UgY2FuIHJlbHkg
b24gdGhlIG9uZSBiZWxvdyAKKHdoZW4gc2V0dGluZyB1cCB0aGUgU0NUTFIpLgoKVGhpcyB3b3Vs
ZCBiZSBmaW5lIGJlY2F1c2UgdGhlIHZlY3RvciB0YWJsZSBjb250YWlucyB2aXJ0dWFsIGFkZHJl
c3Mgc28gCml0IGlzIHVudXNhYmxlIGJlZm9yZSB0dXJuaW5nIG9uIHRoZSBNTVUuCgo+ICsKPiAg
ICAgICAvKiBUdXJuaW5nIG9uIE1NVSAqLwo+ICAgICAgIHRsYmkgICAgdm1hbGxlMQo+ICAgICAg
IGRzYiAgICAgbnNoCj4gQEAgLTI4NCwzICsyOTAsMTQ0IEBAIF9zZXR1cF9pZG1hcF9wZ3RhYmxl
Ogo+ICAgICAgIGFkciAgICAgeDAsIGlkbWFwX2wwX3BndGFibGUKPiAgICAgICBkc2IgICAgIHN5
Cj4gICAgICAgcmV0Cj4gKwo+ICsvKiBUaGUgc2F2ZV9yZWdpc3RlcnMvcmVzdG9yZV9yZWdpc3Rl
cnMgYXJlIGJhc2VkIG9uIHRoZSBjb2RlIGluIEZyZWVCU0QgKi8KCk1pc3NpbmcgZnVsbCBzdG9w
LgoKPiArLm1hY3JvCXNhdmVfcmVnaXN0ZXJzIGVsCgpBbGwgdGhlIGNvZGUgYmVsb3cgaXMgdXNp
bmcgaGFyZCB0YWIsIGhvd2V2ZXIgdGhlIHJlc3Qgb2YgdGhlIGZpbGUgaXMgCnVzaW5nIHNvZnQg
dGFiLiBQbGVhc2UgcmVwbGFjZSBhbGwgaGFyZCB0YWIgd2l0aCBzb2Z0IHRhYi4KCj4gKwltb3YJ
eDE4LCBzcAoKU29tZXRoaW5nIGlzIHdyb25nIGhlcmUuIFlvdSBzZWVtIHRvIG92ZXJ3cml0ZSB4
MTggd2l0aG91dCBzYXZpbmcgaXQuIApEaWQgSSBtaXNzIGFueXRoaW5nPwoKPiArCj4gKwlzdWIJ
c3AsIHNwLCAjKFBUX1JFR19TSVpFKQo+ICsKPiArCXN0cAl4MjgsIHgyOSwgW3NwLCAjKFBUX1JF
R19YICsgMjggKiA4KV0KCkkgbWlnaHQgYmUgbmljZSB0byBtYWtlIFBUX1JFR19YIGEgbWFjcm8g
dGFrZSB0aGUgcmVnaXN0ZXJzIGluIApwYXJhbWV0ZXJzLiBUaGlzIHdvdWxkIGVhc2UgdGhlIHJl
YWRpbmcgb2YgdGhlIGNvZGUuCgo+ICsJc3RwCXgyNiwgeDI3LCBbc3AsICMoUFRfUkVHX1ggKyAy
NiAqIDgpXQo+ICsJc3RwCXgyNCwgeDI1LCBbc3AsICMoUFRfUkVHX1ggKyAyNCAqIDgpXQo+ICsJ
c3RwCXgyMiwgeDIzLCBbc3AsICMoUFRfUkVHX1ggKyAyMiAqIDgpXQo+ICsJc3RwCXgyMCwgeDIx
LCBbc3AsICMoUFRfUkVHX1ggKyAyMCAqIDgpXQo+ICsJc3RwCXgxOCwgeDE5LCBbc3AsICMoUFRf
UkVHX1ggKyAxOCAqIDgpXQo+ICsJc3RwCXgxNiwgeDE3LCBbc3AsICMoUFRfUkVHX1ggKyAxNiAq
IDgpXQo+ICsJc3RwCXgxNCwgeDE1LCBbc3AsICMoUFRfUkVHX1ggKyAxNCAqIDgpXQo+ICsJc3Rw
CXgxMiwgeDEzLCBbc3AsICMoUFRfUkVHX1ggKyAxMiAqIDgpXQo+ICsJc3RwCXgxMCwgeDExLCBb
c3AsICMoUFRfUkVHX1ggKyAxMCAqIDgpXQo+ICsJc3RwCXg4LCAgeDksICBbc3AsICMoUFRfUkVH
X1ggKyA4ICAqIDgpXQo+ICsJc3RwCXg2LCAgeDcsICBbc3AsICMoUFRfUkVHX1ggKyA2ICAqIDgp
XQo+ICsJc3RwCXg0LCAgeDUsICBbc3AsICMoUFRfUkVHX1ggKyA0ICAqIDgpXQo+ICsJc3RwCXgy
LCAgeDMsICBbc3AsICMoUFRfUkVHX1ggKyAyICAqIDgpXQo+ICsJc3RwCXgwLCAgeDEsICBbc3As
ICMoUFRfUkVHX1ggKyAwICAqIDgpXQo+ICsKPiArCW1ycwl4MTAsIGVscl9lbDEKPiArCW1ycwl4
MTEsIHNwc3JfZWwxCj4gKwltcnMJeDEyLCBlc3JfZWwxCj4gKy5pZiBcZWwgPT0gMAoKQUZBSUNU
IHlvdSB3aWxsIG5ldmVyIGdvIGluIEVMMC4gU28gaXMgdGhlcmUgYW55IHJlYXNvbiB0byBoYW5k
bGUgRUwwPwoKPiArCW1ycwl4MTgsIHNwX2VsMAo+ICsuZW5kaWYKCkhtbSBJIHRoaW5rIHlvdSB3
YW50IHRoZSAibW92IHgxOCwgc3AiIGJ1dCB5b3UgYWxzbyBuZWVkIHRvIGFkZCB0aGUgClBUX1JF
R19TSVpFIHRvIGdldCB0aGUgY29ycmVjdCBzcC4KCj4gKwlzdHIJeDEwLCBbc3AsICMoUFRfUkVH
X0VMUildCj4gKwlzdHAJdzExLCB3MTIsIFtzcCwgIyhQVF9SRUdfU1BTUildCj4gKwlzdHAJeDE4
LCB4MzAsIFtzcCwgIyhQVF9SRUdfU1ApXQo+ICsuZW5kbQo+ICsKPiArLm1hY3JvCXJlc3RvcmVf
cmVnaXN0ZXJzIGVsCgpXaWxsIHlvdSBldmVyIHJlYWNoIHRoaXMgbWFjcm8gd2l0aCBpbnRlcnJ1
cHQgZW5hYmxlZD8gSWYgc28sIGRvbid0IHlvdSAKd2FudCB0byBkaXNhYmxlIHRoZW0uIFNvIHlv
dSBkb24ndCBnZXQgaW50ZXJydXB0IGluIHRoZSBtaWRkbGUgb2YgdGhlIApyZXN0b3JlPwoKPiAr
CWxkcAl4MTgsIHgzMCwgW3NwLCAjKFBUX1JFR19TUCldCj4gKwlsZHAJeDEwLCB4MTEsIFtzcCwg
IyhQVF9SRUdfRUxSKV0KPiArLmlmIFxlbCA9PSAwCj4gKwltc3IJc3BfZWwwLCB4MTgKPiArLmVu
ZGlmCj4gKwltc3IJc3Bzcl9lbDEsIHgxMQo+ICsJbXNyCWVscl9lbDEsIHgxMAo+ICsKPiArCWxk
cAl4MCwgIHgxLCAgW3NwLCAjKFBUX1JFR19YICsgMCAgKiA4KV0KPiArCWxkcAl4MiwgIHgzLCAg
W3NwLCAjKFBUX1JFR19YICsgMiAgKiA4KV0KPiArCWxkcAl4NCwgIHg1LCAgW3NwLCAjKFBUX1JF
R19YICsgNCAgKiA4KV0KPiArCWxkcAl4NiwgIHg3LCAgW3NwLCAjKFBUX1JFR19YICsgNiAgKiA4
KV0KPiArCWxkcAl4OCwgIHg5LCAgW3NwLCAjKFBUX1JFR19YICsgOCAgKiA4KV0KPiArCWxkcAl4
MTAsIHgxMSwgW3NwLCAjKFBUX1JFR19YICsgMTAgKiA4KV0KPiArCWxkcAl4MTIsIHgxMywgW3Nw
LCAjKFBUX1JFR19YICsgMTIgKiA4KV0KPiArCWxkcAl4MTQsIHgxNSwgW3NwLCAjKFBUX1JFR19Y
ICsgMTQgKiA4KV0KPiArCWxkcAl4MTYsIHgxNywgW3NwLCAjKFBUX1JFR19YICsgMTYgKiA4KV0K
PiArCWxkcAl4MTgsIHgxOSwgW3NwLCAjKFBUX1JFR19YICsgMTggKiA4KV0KPiArCWxkcAl4MjAs
IHgyMSwgW3NwLCAjKFBUX1JFR19YICsgMjAgKiA4KV0KPiArCWxkcAl4MjIsIHgyMywgW3NwLCAj
KFBUX1JFR19YICsgMjIgKiA4KV0KPiArCWxkcAl4MjQsIHgyNSwgW3NwLCAjKFBUX1JFR19YICsg
MjQgKiA4KV0KPiArCWxkcAl4MjYsIHgyNywgW3NwLCAjKFBUX1JFR19YICsgMjYgKiA4KV0KPiAr
CWxkcAl4MjgsIHgyOSwgW3NwLCAjKFBUX1JFR19YICsgMjggKiA4KV0KPiArCj4gKwltb3YJc3As
IHgxOAoKU28geDE4IHdpbGwgbm90IGNvbnRhaW4gdGhlIHNwIGhlcmUuIEJ1dCBJIHRoaW5rIGFk
ZGluZyBQVF9SRUdfU0laRSB0byAKc3Agc2hvdWxkIGJlIGVub3VnaCBoZXJlLgoKPiArICAgICAg
ICBlcmV0Cj4gKy5lbmRtCj4gKwo+ICsgICAgLmdsb2JsIElSUV9oYW5kbGVyCj4gK0lSUV9oYW5k
bGVyOgo+ICsgICAgLmxvbmcgMHgwCgpJIGFtIG5vdCBzdXJlIHRvIHVuZGVyc3RhbmQgdGhlIHB1
cnBvc2Ugb2YgSVJRX2hhbmRsZXIuIENhbid0IHlvdSBqdXN0IApkaXJlY3RseSBjYWxsIHRoZSBo
YW5kbGVyPwoKPiArCj4gKyAgICAuYWxpZ24gNgo+ICtlbDFfc3luYzoKPiArICAgIHNhdmVfcmVn
aXN0ZXJzIDEKPiArICAgIG1vdiAgICAgeDAsIHNwCj4gKyAgICBtcnMgICAgIHgxLCBlc3JfZWwx
Owo+ICsgICAgbXJzICAgICB4MiwgZmFyX2VsMTsKCkRvIHlvdSBleHBlY3QgdGhlIG1pbmktT1Mg
dG8gYWx3YXlzIHJ1biB3aXRoIGludGVycnVwdCBkaXNhYmxlZCBpbiBFTDE/IApJZiBub3QsIHlv
dSBtYXkgd2FudCB0byByZS1lbmFibGUgaW50ZXJydXB0IGhlcmUuCgo+ICsgICAgYmwgICAgICBk
b19zeW5jCj4gKyAgICByZXN0b3JlX3JlZ2lzdGVycyAxCj4gKwo+ICsgICAgLmFsaWduIDYKPiAr
ZWwxX2lycToKPiArICAgIHNhdmVfcmVnaXN0ZXJzIDEKPiArICAgIGxkciAgICAgeDAsIElSUV9o
YW5kbGVyCj4gKyAgICBibHIgICAgIHgwCj4gKyAgICByZXN0b3JlX3JlZ2lzdGVycyAxCj4gKwo+
ICsvKiBCYWQgQWJvcnQgbnVtYmVycyAqLwo+ICsjZGVmaW5lIEJBRF9TWU5DICAgIDAKPiArI2Rl
ZmluZSBCQURfSVJRICAgICAxCj4gKyNkZWZpbmUgQkFEX0ZJUSAgICAgMgo+ICsjZGVmaW5lIEJB
RF9FUlJPUiAgIDMKPiArCj4gKyNkZWZpbmUgZWxfaW52YWxpZChuYW1lLCByZWFzb24sIGVsKSAg
XAo+ICsgICAgLmFsaWduIDY7ICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiArbmFtZSMjX2lu
dmFsaWQ6ICAgICAgICAgICAgICAgICAgICAgICBcCj4gKyAgICBzYXZlX3JlZ2lzdGVycyAgZWw7
ICAgICAgICAgICAgICAgXAo+ICsgICAgbW92ICAgICB4MCwgc3A7ICAgICAgICAgICAgICAgICAg
IFwKPiArICAgIG1vdiAgICAgeDEsICMocmVhc29uKTsgICAgICAgICAgICBcCj4gKyAgICBtcnMg
ICAgIHgyLCBlc3JfZWwxOyAgICAgICAgICAgICAgXAo+ICsgICAgbXJzICAgICB4MywgZmFyX2Vs
MTsgICAgICAgICAgICAgIFwKPiArICAgIGIgICAgICAgZG9fYmFkX21vZGU7ICAgICAgICAgICAg
ICBcCj4gK0VORFBST0MobmFtZSMjX2ludmFsaWQpOyAgICAgICAgICAgICAgXAo+ICsKPiArZWxf
aW52YWxpZChlbDFfc3luYywgQkFEX1NZTkMsIDEpOwo+ICtlbF9pbnZhbGlkKGVsMF9zeW5jLCBC
QURfU1lOQywgMCk7Cj4gK2VsX2ludmFsaWQoZWwxX2lycSwgQkFEX0lSUSwgMSk7Cj4gK2VsX2lu
dmFsaWQoZWwwX2lycSwgQkFEX0lSUSwgMCk7Cj4gK2VsX2ludmFsaWQoZWwxX2ZpcSwgQkFEX0ZJ
USwgMSk7Cj4gK2VsX2ludmFsaWQoZWwwX2ZpcSwgQkFEX0ZJUSwgMCk7Cj4gK2VsX2ludmFsaWQo
ZWwxX2Vycm9yLCBCQURfRVJST1IsIDEpOwo+ICtlbF9pbnZhbGlkKGVsMF9lcnJvciwgQkFEX0VS
Uk9SLCAwKTsKPiArCj4gKyAgICAvKiBFeGNlcHRpb24gdmVjdG9yIGVudHJ5ICovCj4gKyAgICAu
bWFjcm8gdmVjdG9yX2VudHJ5IGxhYmVsCj4gKyAgICAuYWxpZ24gIDcKPiArICAgIGIgICAgICAg
XGxhYmVsCj4gKyAgICAuZW5kbQo+ICsKPiArICAgIC5hbGlnbiAgMTEKPiArRU5UUlkodmVjdG9y
X3RhYmxlKQo+ICsgICAgLyogQ3VycmVudCBFeGNlcHRpb24gbGV2ZWwgd2l0aCBTUF9FTDAgKi8K
PiArICAgIHZlY3Rvcl9lbnRyeSBlbDFfc3luY19pbnZhbGlkICAgICAgICAgLyogU3luY2hyb25v
dXMgRUwxdCAgICAgICAqLwo+ICsgICAgdmVjdG9yX2VudHJ5IGVsMV9pcnFfaW52YWxpZCAgICAg
ICAgICAvKiBJUlEgRUwxdCAgICAgICAgICAgICAgICovCj4gKyAgICB2ZWN0b3JfZW50cnkgZWwx
X2ZpcV9pbnZhbGlkICAgICAgICAgIC8qIEZJUSBFTDF0ICAgICAgICAgICAgICAgKi8KPiArICAg
IHZlY3Rvcl9lbnRyeSBlbDFfZXJyb3JfaW52YWxpZCAgICAgICAgLyogRXJyb3IgRUwxdCAgICAg
ICAgICAgICAqLwo+ICsKPiArICAgIC8qIEN1cnJlbnQgRXhjZXB0aW9uIGxldmVsIHdpdGggU1Bf
RUwxICovCj4gKyAgICB2ZWN0b3JfZW50cnkgZWwxX3N5bmMgICAgICAgICAgICAgICAgIC8qIFN5
bmNocm9ub3VzIEVMMWggICAgICAgKi8KPiArICAgIHZlY3Rvcl9lbnRyeSBlbDFfaXJxICAgICAg
ICAgICAgICAgICAgLyogSVJRIEVMMWggICAgICAgICAgICAgICAqLwo+ICsgICAgdmVjdG9yX2Vu
dHJ5IGVsMV9maXFfaW52YWxpZCAgICAgICAgICAvKiBGSVEgRUwxaCAgICAgICAgICAgICAgICov
Cj4gKyAgICB2ZWN0b3JfZW50cnkgZWwxX2Vycm9yX2ludmFsaWQgICAgICAgIC8qIEVycm9yIEVM
MWggICAgICAgICAgICAgKi8KPiArCj4gKyAgICAvKiBMb3dlciBFeGNlcHRpb24gbGV2ZWwgdXNp
bmcgQUFyY2g2NCAqLwo+ICsgICAgdmVjdG9yX2VudHJ5IGVsMF9zeW5jX2ludmFsaWQgICAgICAg
ICAvKiBTeW5jaHJvbm91cyA2NC1iaXQgRUwwICovCj4gKyAgICB2ZWN0b3JfZW50cnkgZWwwX2ly
cV9pbnZhbGlkICAgICAgICAgIC8qIElSUSA2NC1iaXQgRUwwICAgICAgICAgKi8KPiArICAgIHZl
Y3Rvcl9lbnRyeSBlbDBfZmlxX2ludmFsaWQgICAgICAgICAgLyogRklRIDY0LWJpdCBFTDAgICAg
ICAgICAqLwo+ICsgICAgdmVjdG9yX2VudHJ5IGVsMF9lcnJvcl9pbnZhbGlkICAgICAgICAvKiBF
cnJvciA2NC1iaXQgRUwwICAgICAgICovCj4gKwo+ICsgICAgLyogTG93ZXIgRXhjZXB0aW9uIGxl
dmVsIHVzaW5nIEFBcmNoMzIgKi8KPiArICAgIHZlY3Rvcl9lbnRyeSBlbDBfc3luY19pbnZhbGlk
ICAgICAgICAgLyogU3luY2hyb25vdXMgMzItYml0IEVMMCAqLwo+ICsgICAgdmVjdG9yX2VudHJ5
IGVsMF9pcnFfaW52YWxpZCAgICAgICAgICAvKiBJUlEgMzItYml0IEVMMCAgICAgICAgICovCj4g
KyAgICB2ZWN0b3JfZW50cnkgZWwwX2ZpcV9pbnZhbGlkICAgICAgICAgIC8qIEZJUSAzMi1iaXQg
RUwwICAgICAgICAgKi8KPiArICAgIHZlY3Rvcl9lbnRyeSBlbDBfZXJyb3JfaW52YWxpZCAgICAg
ICAgLyogRXJyb3IgMzItYml0IEVMMCAgICAgICAqLwoKSXQgbG9va3MgbGlrZSB5b3UgZG9uJ3Qg
aW1wbGVtZW50IEVMMC4gSSB3b3VsZCB0cnkgdG8gc2ltcGxpZnkgdGhlIEVMMCAKaGFuZGxpbmcg
aW4gdGhhdCBjYXNlIGFuZCBhbHNvIGFkZCBhIGNvbW1lbnQgaW4gdGhlIGNvZGUuCgo+ICtFTkQo
dmVjdG9yX3RhYmxlKQo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9hcm02NC90cmFwcy5jIGIvYXJj
aC9hcm0vYXJtNjQvdHJhcHMuYwo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAw
MC4uNjJkZDJlNgo+IC0tLSAvZGV2L251bGwKPiArKysgYi9hcmNoL2FybS9hcm02NC90cmFwcy5j
Cj4gQEAgLTAsMCArMSwxNiBAQAo+ICsjaW5jbHVkZSA8bWluaS1vcy9vcy5oPgo+ICsjaW5jbHVk
ZSA8bWluaS1vcy9hcm02NC90cmFwcy5oPgo+ICsjaW5jbHVkZSA8Y29uc29sZS5oPgo+ICsKPiAr
dm9pZCBkb19iYWRfbW9kZShzdHJ1Y3QgcHRfcmVncyAqcmVncywgaW50IHJlYXNvbiwKPiArICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBlc3IsIHVuc2lnbmVkIGxvbmcgZmFyKQo+ICt7
Cj4gKyAgICAvKiBUTyBETyAqLwo+ICsgICAgZG9fZXhpdCgpOwo+ICt9Cj4gKwo+ICt2b2lkIGRv
X3N5bmMoc3RydWN0IHB0X3JlZ3MgKnJlZ3MsIHVuc2lnbmVkIGxvbmcgZXNyLCB1bnNpZ25lZCBs
b25nIGZhcikKPiArewo+ICsgICAgLyogVE8gRE8gKi8KPiArICAgIGRvX2V4aXQoKTsKPiArfQo+
IGRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcm02NC90cmFwcy5oIGIvaW5jbHVkZS9hcm0vYXJt
NjQvdHJhcHMuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uOTYyZjRh
Ngo+IC0tLSAvZGV2L251bGwKPiArKysgYi9pbmNsdWRlL2FybS9hcm02NC90cmFwcy5oCj4gQEAg
LTAsMCArMSwyNyBAQAo+ICsjaWZuZGVmIF9UUkFQU19IXwo+ICsjZGVmaW5lIF9UUkFQU19IXwo+
ICsKPiArI2lmbmRlZiBfX0FTU0VNQkxZX18KPiArc3RydWN0IHB0X3JlZ3Mgewo+ICsgICAgdWlu
dDY0X3Qgc3A7Cj4gKyAgICB1aW50NjRfdCBwYzsKPiArICAgIHVpbnQ2NF90IGxyOyAgLyogZWxy
ICovCj4gKyAgICB1aW50MzJfdCBwc3RhdGU7Cj4gKyAgICB1aW50MzJfdCBlc3I7Cj4gKwo+ICsg
ICAgLyogRnJvbSB4MCB+IHgyOSAqLwo+ICsgICAgdWludDY0X3QgeFszMF07Cj4gK307Cj4gKwo+
ICsjZWxzZQo+ICsKPiArI2RlZmluZSBQVF9SRUdfU0laRSAgICgyNzIpCj4gKwo+ICsjZGVmaW5l
IFBUX1JFR19TUCAgICAgKDApCj4gKyNkZWZpbmUgUFRfUkVHX0VMUiAgICAoMTYpCj4gKyNkZWZp
bmUgUFRfUkVHX1NQU1IgICAoMjQpCj4gKyNkZWZpbmUgUFRfUkVHX1ggICAgICAoMzIpCgpJIGhv
bmVzdGx5IGRvbid0IGxpa2UgaGFyZGNvZGluZyBvZmZzZXQgb2YgdGhlIHN0cnVjdHVyZS4gVGhp
cyBpcyBhIHJlYWwgCmNhbGwgdG8gbWVzcyB1cCBpbiB0aGUgZnV0dXJlIChvciBldmVuIG5vdyku
IFRoZSBsYWNrIG9mIGNvbW1lbnRzIGRvbid0IApoZWxwIGVpdGhlci4KCkJ1dCBJIGFtIHByZXR0
eSBzdXJlIEkgYXNrZWQgaXQgYmVmb3JlLiBDYW4ndCB0aGV5IGJlIGdlbmVyYXRlZCAKYXV0b21h
dGljYWxseT8KCkNoZWVycywKCj4gKwo+ICsjZW5kaWYKPiArCj4gKyNlbmRpZgo+IGRpZmYgLS1n
aXQgYS9pbmNsdWRlL2FybS90cmFwcy5oIGIvaW5jbHVkZS9hcm0vdHJhcHMuaAo+IGluZGV4IDcw
NGRmMjIuLmIwNzZmNDEgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9hcm0vdHJhcHMuaAo+ICsrKyBi
L2luY2x1ZGUvYXJtL3RyYXBzLmgKPiBAQCAtMSwyMCArMSBAQAo+IC0jaWZuZGVmIF9UUkFQU19I
Xwo+IC0jZGVmaW5lIF9UUkFQU19IXwo+IC0KPiAtc3RydWN0IHB0X3JlZ3Mgewo+IC0gICAgdW5z
aWduZWQgbG9uZyByMDsKPiAtICAgIHVuc2lnbmVkIGxvbmcgcjE7Cj4gLSAgICB1bnNpZ25lZCBs
b25nIHIyOwo+IC0gICAgdW5zaWduZWQgbG9uZyByMzsKPiAtICAgIHVuc2lnbmVkIGxvbmcgcjQ7
Cj4gLSAgICB1bnNpZ25lZCBsb25nIHI1Owo+IC0gICAgdW5zaWduZWQgbG9uZyByNjsKPiAtICAg
IHVuc2lnbmVkIGxvbmcgcjc7Cj4gLSAgICB1bnNpZ25lZCBsb25nIHI4Owo+IC0gICAgdW5zaWdu
ZWQgbG9uZyByOTsKPiAtICAgIHVuc2lnbmVkIGxvbmcgcjEwOwo+IC0gICAgdW5zaWduZWQgbG9u
ZyByMTE7Cj4gLSAgICB1bnNpZ25lZCBsb25nIHIxMjsKPiAtfTsKPiAtCj4gLSNlbmRpZgo+ICsj
aW5jbHVkZSA8bWluaS1vcy9hcm02NC90cmFwcy5oPgo+IAoKLS0gCkp1bGllbiBHcmFsbAoKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVs
IG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s
aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 20:06:41 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 20:06:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8tLj-0007DP-49; Wed, 18 Apr 2018 20:06:39 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8tLi-0007DK-4r
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 20:06:38 +0000
X-Inumbo-ID: dbb99e12-4343-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::60f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id dbb99e12-4343-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 22:05:36 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=1lpVF2IvlHj/BebWgjMahJ7r9klPNC8qfa/T4+Y2FlE=;
 b=MOq0JEL0i9F6cLwQp4qMPM5EOWhrN1tExhKRWMz3NNymUzfHu1ZfCJI82yW1ahsvxedATEqbX0QzmC9EBaxroyERtDU7ycX/NYNaNxHJRGMoS+XVZUkWg1rHwvVOGycu5FtgzdbnEofXmjoj3m7adjpOu/LwUuGLA/5k9jsCX8Y=
Authentication-Results: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
Received: from Juliens-MacBook-Pro.local (217.140.111.135) by
 AM0PR08MB3347.eurprd08.prod.outlook.com (2603:10a6:208:5f::20) with Microsoft
 SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.12; Wed, 18
 Apr 2018 20:06:25 +0000
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-12-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <c86057d1-5bb5-77f7-05e0-e11c07a56381@arm.com>
Date: Wed, 18 Apr 2018 21:06:13 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0)
 Gecko/20100101 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-12-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
X-Originating-IP: [217.140.111.135]
X-ClientProxiedBy: MWHPR03CA0013.namprd03.prod.outlook.com
 (2603:10b6:300:117::23) To AM0PR08MB3347.eurprd08.prod.outlook.com
 (2603:10a6:208:5f::20)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-HT: Tenant
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(48565401081)(2017052603328)(7153060)(7193020);
 SRVR:AM0PR08MB3347; 
X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347;
 3:uPryIaUml5EENzbFKfkE+jx1EKFxjDkBYDiv/8JnFg3A9irUKm8+xxlbGYcZ/aBwNadMfp1d+dBi9nVwlffCDatzwPof/Pih87a/SR0fnQVGdUOMfwx3iOjkkDmWvxK7P5sDoJxkdxRB1ErrsAsTOS77mu9MfX52QCXmj9SfjMt10YuemOfH72uzTKdPMy1oIlM/1Z96PHvgFnFA284HbrEAJcMKtC/GCoqAP2oU8F5n0BrHUY7m3YNWouC4+mdy;
 25:qkDhTI6Mc08LTOf0tVVgmPR1hycnXcSf/Ftvll/6P8h1XDHg71j3ceBTLC2vlYdvT1Uic+InvpWOM1ugDnafc654Fwex6YPCC3XkyRQGUZAeD/ZRaxyMz7KxuXLyKijgzR7Vy3e1CzrBluc+Em/ROzN5ckQ6RhUB9A+zveWpolGSIXFbehdX7Q0oU3PyC4F2InqA0gm7nH47RVrJoswcA1wfGRlEqxAyAmuY5/l31Sz6Rdp3VWqcmjHrNXmLLlI7lw9qGfWw38HkipctMdkD5vP3URsjSXw2+RRfmpBj/t/JTioHwSgcvOxOOZB6ptsSH0Cj/+SYOqDH3cqe5axZ3A==;
 31:0KIV/3Hh371HdLu+hjU1ZflXQMAeGRtcN2bl50q2gGa+U2bOObJLFkQmELjZDuPIQAB1+5ZokUomwFaDUdVfcvCWEgmq7NaGaVmOE6JBWLXvZJGZFvPAACMHLBXD2jtqf30uSaTgrwI/bBHL3TY8FCdLr8/K3KeQ7AvYCvusKEnI1ezYcP63vKjbPWKrSwx9tvgAIYYXjGjvsLSQOXuHpej//3IjJpvhD/Nz92LgoQU=
X-MS-TrafficTypeDiagnostic: AM0PR08MB3347:
NoDisclaimer: True
X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347;
 20:jx8aF8hpFFc++TNZyuULOM5hzYyPBTOkDYYkQG323lfDm+5ourx+8Gm1lKANzu8cTbXv9oVvUVDOgwyV0FgnH8OPgvezessmRBtIgZtFvzXCAk9TAhNX21jxNpYPLS/kkot3ZZ9QzxPF7Waia7DaESYlW5q7pexBni0Y925AwfI19hOrhyGE88KwwXAIRdnwb9JJyCNbCiFPpO2Oo0AxvdPSyYalvEM9JVBUOddKDBcRfRxVNKHr4AOaxYRvOxln;
 4:dfsAYrUmaEE6T1d222bFOjjf7+dKf+Q3kLfi4o9pGedMHM9y/8HwMmAg+Yzz+JtJxm/6OHl4XooKCRM3Kuj8ce8uOqHlgVu+QWOo0snLsjnTT7l55Ql1VlhQNaA/rCkE2En7suC8x8FP/0GExEeEtWUiCvC73USopW4bM/4r3TCY4EMl52/gqAlDNDx8aohsYmGkLDrNl1V4vZE9a9E9gnAp+0pPD8xxCVbCh6oc0EQjEZ2rwPNGRJq5HnYfhn5loD0/NANGRpCfD32kzfcKjgoorD2itmbkBWs7ODSJsfv+Kf7y/t48yFQRPGKUxgaH
X-Microsoft-Antispam-PRVS: <AM0PR08MB3347E51B318C0F9E1E9B91B080B60@AM0PR08MB3347.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(3231232)(944501327)(52105095)(10201501046)(6055026)(6041310)(20161123558120)(20161123562045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(6072148)(201708071742011);
 SRVR:AM0PR08MB3347; BCL:0; PCL:0; RULEID:; SRVR:AM0PR08MB3347; 
X-Forefront-PRVS: 06469BCC91
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(376002)(366004)(39380400002)(396003)(346002)(39860400002)(199004)(189003)(26005)(2906002)(81156014)(31686004)(64126003)(52116002)(72206003)(5660300001)(478600001)(50466002)(8666007)(8676002)(6666003)(6246003)(230700001)(3846002)(65826007)(8936002)(81166006)(6512007)(53936002)(7736002)(6116002)(4326008)(44832011)(47776003)(39060400002)(66066001)(305945005)(16526019)(53546011)(58126008)(386003)(86362001)(6506007)(25786009)(31696002)(11346002)(36756003)(6486002)(229853002)(76176011)(476003)(67846002)(2486003)(446003)(316002)(23676004)(52146003)(2616005)(956004)(65956001)(65806001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR08MB3347; H:Juliens-MacBook-Pro.local;
 FPR:; SPF:None; LANG:en; MLV:ovrnspm; PTR:InfoNoRecords; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTBQUjA4TUIzMzQ3OzIzOkdEcW9yOE02cnVZS3piN211T1lQR0xuczg2?=
 =?utf-8?B?U2NxNHZXOWNOQS9pM0ZWM3VKOUtteXVxTG10bTdWT1U2TmIzSWxBMUV0TllR?=
 =?utf-8?B?eEgwSEY3NG92SlNiWVRwaWluR2p3d05WN01kL1dxc2x4VEZuSTJ4dTNPazRJ?=
 =?utf-8?B?N0RHVlRPdFYxbHZOdHdvSkJWWTJJRGcwL3ZWTFdqd2ZOazVZQmpZNUEvSnow?=
 =?utf-8?B?djVIYThwWWkrQVBsRHhJbUtiM3YyQnB1KzArRlQ2dlE0NnpZdmMxZFRjN3hx?=
 =?utf-8?B?V0NyNDY4VFJlWXA5S2w3K3dnZDMvSklzVnVKeU5pWTBLSUw5L3Z5L1ZHSFZ6?=
 =?utf-8?B?N2pqN3F4TnR0UGZ5Z3htS2VmSTJFdzB2Wlp6SXZoalUxWHFtLzdwN3plc1da?=
 =?utf-8?B?b3hIRWt5OVFrZ2JBM3ZCNzlZa2xOdHdBQW1ldkZWZVcraWxraHErQXhJRncw?=
 =?utf-8?B?cUQralIxeExyU3RkWC9VaTFxN2wrVGU3Vi82SHJJMktWTGpydHZYWHV5Nlpm?=
 =?utf-8?B?bFgzMlV4MTJ4Z1NvRkx4cU9iUHArNUVaNThvUzBjcHpKRnBiZmgxSnVnaThT?=
 =?utf-8?B?bG80UUxHdDhuMTVZWXRRblNGWC9SbFhadmdTNUs2b2RjUTJCVUVGTS9BMkRs?=
 =?utf-8?B?NmU0dVlaeGV1TDFKRnVnOTRhSEh3YU1PMlU0ZDVoYlh1VC9OWlZsNWJvMW9j?=
 =?utf-8?B?Z3JyRk1oTnZnTTJXMURXeXpKS0pZa25IYVJuVHdOQzBxdVlsYit0WGdDY043?=
 =?utf-8?B?VUxMUXBWRU1iT3FxRGlIS1l6UUx1NDVNUGpHSysyWUNVRGdOMWlUK3lrMFNJ?=
 =?utf-8?B?T2Z0TjVRZ0NaY2RlOVBrVmxYcDdKY0hVTzBQMkI1a1RVRU8yYzB0Mzl4U2V2?=
 =?utf-8?B?eUtXWlZibkc5OWNhWXVVa2tQdE0vVDZSNGhSOWROc25RS1hRRFdtaGdQVGZ6?=
 =?utf-8?B?RXhFOHhGZnJWMWcrVlBZZkFEWFg1c2NYRFBtR3ozeDIybnFXQWMyNktnYXRD?=
 =?utf-8?B?WWhqOFZFbktxdjNsSHdtYjFUaG9kczZKVm9adUUyR240ZEpDQzlkVG16NFkx?=
 =?utf-8?B?UkNPanZqMEZWR1EwWXBydWFSTDhSTDhZMVVlNXpuUkJZVWR2SW9KUTVhUDZT?=
 =?utf-8?B?cG9TVjVaRW9kdWZMSWdjOWNrdmIvdUFXd2RyL0grM1pjNjcxdjJPb2VGOWd2?=
 =?utf-8?B?M2J5V0JzWk4xdEtrQUJpVmJPbjNvVmVGaFR4Z2NCWlZVL0pQSk5XQm5UZm83?=
 =?utf-8?B?Wm1TcXlqUHc3cEJ6Ym9WbHdLaGVjTk1PUkxMWnk4YnlURkZ4ZDFQNWkzVkQw?=
 =?utf-8?B?NHkxQk9VWlRGL3pjcjBBTFZLWnQxTFJTdlphSDd3RFdlc2hGemNWUlhoTFV1?=
 =?utf-8?B?Y25idGRCNUxJZDZGOUxHZVA1a0ZhWDk4eUdtcjRjVldQQmlmRzFrZVdQTlNQ?=
 =?utf-8?B?SnY5dUNIdmdUU0ZKSFJ2Q1BObE9XVjhWVzc4cmNvMGhFU1ZZVnBOUkVCM2Fi?=
 =?utf-8?B?ZzluNWl4L0pmaUptMUlabjRTWFhwcmdlS2VZbEt3NUdNTW84dnZKemxuanB3?=
 =?utf-8?B?U1dwajhSRmdDY3BUMW5RRFlLUFBVZmlwSG54Y1ZRNGZFUmZ2MWdYWGFSU1FD?=
 =?utf-8?B?bElneXZac2xPR1UvZitkdUptbDVrOUkyRXgxZnpUNmRVUk1tL2pYdWpYdUVX?=
 =?utf-8?B?MTNMT3lzS2o1U05SbHdkVThxbzRQV3BQc1RzM0tIMzhobng3ZS82cC9Pam5x?=
 =?utf-8?B?UDdnMmhocEpUQkk0S3BWMW02QXVjd1VFcGJmZ3FWQ09obmJsOHU2UUpFUUVl?=
 =?utf-8?B?akZxSGZRTndFcDRPWkdNbzBHMlhQdnIzTGxQbE9UMTBqYUE9PQ==?=
X-Microsoft-Antispam-Message-Info: 5A+6W89aG/1pnmBbcmjJUtc33hzc1zhXtsc72n5tBWlhpnQywQ95GLvaQY5fCMQ3FEjAf2i3GXJAbQoqtz45qRPYYsL2GLNT8+jcRYJTEurTy/3emHmktM5xFm6Enx4ZAfD/SePNcGIie7ukhtrq7Op0XD5YdUn/Xgo+A9GzIYLNeIi3BohdjBTFj8V7TxSu
X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347;
 6:P0305LkiHPKaeRX8xWAtVN4+nUmH/5C7hLDPUq2VaNaLnuivC79571cvAKD9cIzsxQzKXHvBoylv0lY/Kb2m5ZEQS+SWhlt7Pj3pnlX7ES1rtg6hvU5q1ZrzVqLsf7M5zsmMPg2kjF57afQJeuWAYYb8F/GiuVroS30nE9SjolEY9owwZrrB2/9D5+Fb+zPBz5GEPWKQK61KAGtisRQri7yZCEmDd2lkk63XBQwAr+OMsR3yRJlWS9p8qY0wuPRP4oMRLs1itAS6zfhYg4uCt3uROcmrhz3PR2RcqQoARR1O+aqeBth6w3GYgf9nEbjeXokZdrwb5Iem+gOfMZ2BGEW4brcfQBH3iT8LFBZscZtWQ8RwP5MvDMkEOUf/QjRL/jOVnrvmKfuDh9X2vZuxcWiZ0Uu8raY+Skk85HX42ZdrgU0f9XMG02cLcp44dK8kMD90g79bdOaYS/bvI9VaxA==;
 5:eel6xhtUuuFlc7DeJ5G/6hfn8ZdMcpOBGBMhopBQ3gR8ifHfLB/6ayXH6yRYrfp9a0EBM8sb5sV0Dlf8/qcKYkGPfQvwxGph+mV/W2w2q4VhVUDV/rxU2jtEln+euUyNL9aOrhB1YhCZkwKqFMaL6C6fpWm4grc4Y9HHQskkGaA=;
 24:VdEPZ6yUMu8gGeCPYVjXN24PM1q09wd/BWb5FYUvS8RUGuEQrBfHRGrU1LCBvwocFUP0VsMsj1W3HCH3mD63XhASxM1XPX7qG5r8jui8JRE=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347;
 7:0qedFH43W87oKUUIDaModrxj8EB4qTUpkMk3wt8GVW+SvYxSt5Poewo+IO8KgNcDhko6aaeSSD3NWRXVYhlxMYQMub7Ci+4bG0XdspWcMY+Xiogi5Cdwxr7pmXcvgZCdZoJwBfWvpqG7eiGVsSFvpfEe/nT7uI25XHFeP/LmSQnJ9Cpb+87qbrDTsa25emDC5fd8KMyDJzwtWMeZ2BijS0YiLu4F3RjNTh7DpU3S00mIXdcKBejevF6iSgDKN6DA
X-MS-Office365-Filtering-Correlation-Id: 8d1b8a9b-9faf-407b-721e-08d5a567e005
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 20:06:25.5210 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8d1b8a9b-9faf-407b-721e-08d5a567e005
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3347
Subject: Re: [Minios-devel] [PATCH v3 11/43] arm64: dump the registers for
 do_bad_mode()/do_sync()
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxNi8wNC8yMDE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gVGhpcyBwYXRj
aCBhZGRzIGEgbmV3IGZ1bmN0aW9uIGR1bXBfcmVncygpIHdoaWNoIGNhbiBkdW1wIHRoZSByZWdp
c3RlcnMKPiBpbmZvcm1hdGlvbi4KPiAKPiBBbmQgdGhlIGRvX2JhZF9tb2RlKCkvZG9fc3luYygp
IHdpbGwgdXNlIHRoZSBmdW5jdGlvbiB0byBkdW1wIHRoZQo+IHJlZ2lzdGVycy4KPiAKPiBUaGlz
IHBhdGNoIHJlZmVycyB0byBWb2xvZHlteXIgQmFiY2h1aydzIHBhdGNoOgoKRG8geW91IG1lYW4g
ImJhc2VkIG9uIiBpbnN0ZWFkIG9mICJyZWZlcnMgdG8iPwoKPiAgICAiV0lQOiB0cmFwLmM6IGFk
ZCB0cmFwIGhhbmRsZXMgZm9yIGFybTY0Igo+IAo+IFNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWpp
ZSA8c2hpamllLmh1YW5nQGFybS5jb20+Cj4gLS0tCj4gICBhcmNoL2FybS9hcm02NC90cmFwcy5j
IHwgMzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KPiAgIDEgZmlsZSBjaGFuZ2Vk
LCAzMCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9hcmNo
L2FybS9hcm02NC90cmFwcy5jIGIvYXJjaC9hcm0vYXJtNjQvdHJhcHMuYwo+IGluZGV4IDYyZGQy
ZTYuLjY2Zjg0MmUgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9hcm0vYXJtNjQvdHJhcHMuYwo+ICsrKyBi
L2FyY2gvYXJtL2FybTY0L3RyYXBzLmMKPiBAQCAtMiwxNSArMiw0MyBAQAo+ICAgI2luY2x1ZGUg
PG1pbmktb3MvYXJtNjQvdHJhcHMuaD4KPiAgICNpbmNsdWRlIDxjb25zb2xlLmg+Cj4gICAKPiAr
c3RhdGljIHZvaWQgZHVtcF9yZWdzKHN0cnVjdCBwdF9yZWdzICpyZWdzLAo+ICsgICAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBsb25nIGVzciwgdW5zaWduZWQgbG9uZyBmYXIpCgpUaGUgaW5kZW50
YXRpb24gbG9va3Mgd3JvbmcuCgo+ICt7Cj4gKyAgICBwcmludGsoIioqKiBTeW5jIGV4Y2VwdGlv
biBhdCBQQyA9ICVseCAqKiogXG4iLCByZWdzLT5wYyk7Cj4gKyAgICBwcmludGsoIlRocmVhZCBz
dGF0ZTpcbiIpOwo+ICsgICAgcHJpbnRrKCJcdFgwICA9IDB4JTAxNmx4IFgxICA9IDB4JTAxNmx4
XG4iLCByZWdzLT54WzBdLCByZWdzLT54WzFdKTsKPiArICAgIHByaW50aygiXHRYMiAgPSAweCUw
MTZseCBYMyAgPSAweCUwMTZseFxuIiwgcmVncy0+eFsyXSwgcmVncy0+eFszXSk7Cj4gKyAgICBw
cmludGsoIlx0WDQgID0gMHglMDE2bHggWDUgID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbNF0sIHJl
Z3MtPnhbNV0pOwo+ICsgICAgcHJpbnRrKCJcdFg2ICA9IDB4JTAxNmx4IFg3ICA9IDB4JTAxNmx4
XG4iLCByZWdzLT54WzZdLCByZWdzLT54WzddKTsKPiArICAgIHByaW50aygiXHRYOCAgPSAweCUw
MTZseCBYOSAgPSAweCUwMTZseFxuIiwgcmVncy0+eFs4XSwgcmVncy0+eFs5XSk7Cj4gKyAgICBw
cmludGsoIlx0WDEwID0gMHglMDE2bHggWDExID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMTBdLCBy
ZWdzLT54WzExXSk7Cj4gKyAgICBwcmludGsoIlx0WDEyID0gMHglMDE2bHggWDEzID0gMHglMDE2
bHhcbiIsIHJlZ3MtPnhbMTJdLCByZWdzLT54WzEzXSk7Cj4gKyAgICBwcmludGsoIlx0WDE0ID0g
MHglMDE2bHggWDE1ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMTRdLCByZWdzLT54WzE1XSk7Cj4g
KyAgICBwcmludGsoIlx0WDE2ID0gMHglMDE2bHggWDE3ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhb
MTZdLCByZWdzLT54WzE3XSk7Cj4gKyAgICBwcmludGsoIlx0WDE4ID0gMHglMDE2bHggWDE5ID0g
MHglMDE2bHhcbiIsIHJlZ3MtPnhbMThdLCByZWdzLT54WzE5XSk7Cj4gKyAgICBwcmludGsoIlx0
WDIwID0gMHglMDE2bHggWDIxID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMjBdLCByZWdzLT54WzIx
XSk7Cj4gKyAgICBwcmludGsoIlx0WDIyID0gMHglMDE2bHggWDIzID0gMHglMDE2bHhcbiIsIHJl
Z3MtPnhbMjJdLCByZWdzLT54WzIzXSk7Cj4gKyAgICBwcmludGsoIlx0WDI0ID0gMHglMDE2bHgg
WDI1ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMjRdLCByZWdzLT54WzI1XSk7Cj4gKyAgICBwcmlu
dGsoIlx0WDI2ID0gMHglMDE2bHggWDI3ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMjZdLCByZWdz
LT54WzI3XSk7Cj4gKyAgICBwcmludGsoIlx0WDI4ID0gMHglMDE2bHggWDI5ID0gMHglMDE2bHhc
biIsIHJlZ3MtPnhbMjhdLCByZWdzLT54WzI5XSk7Cj4gKyAgICBwcmludGsoIlx0WDMwIChscikg
PSAweCUwMTZseFxuIiwgcmVncy0+bHIpOwo+ICsgICAgcHJpbnRrKCJcdHNwICA9IDB4JTAxNmx4
XG4iLCByZWdzLT5zcCk7Cj4gKyAgICBwcmludGsoIlx0cHN0YXRlICA9IDB4JTAxNnhcbiIsIHJl
Z3MtPnBzdGF0ZSk7Cj4gKyAgICBwcmludGsoIlx0ZXNyX2VsMSA9ICUwOGx4XG4iLCBlc3IpOwo+
ICsgICAgcHJpbnRrKCJcdGZhcl9lbDEgPSAlMDhseFxuIiwgZmFyKTsKPiArfQo+ICsKPiAgIHZv
aWQgZG9fYmFkX21vZGUoc3RydWN0IHB0X3JlZ3MgKnJlZ3MsIGludCByZWFzb24sCj4gICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIGVzciwgdW5zaWduZWQgbG9uZyBmYXIpCj4gICB7
Cj4gLSAgICAvKiBUTyBETyAqLwo+ICsgICAgcHJpbnRrKCIgQmFkIGFib3J0IG51bWJlciA6ICVk
XG4iLCByZWFzb24pOwoKV2hhdCB3YXMgdGhlIHB1cnBvc2Ugb2YgdGhlIHZhcmlhYmxlICJyZWFz
b24iPyBJcyBpdCBiZWNhdXNlIHNvbWUgdHJhcCAKZG9uJ3QgZ2l2ZSBhIG1lYW5pbmdmdWwgZXJy
b3Igc3luZHJvbWU/Cgo+ICsgICAgZHVtcF9yZWdzKHJlZ3MsIGVzciwgZmFyKTsKPiAgICAgICBk
b19leGl0KCk7Cj4gICB9Cj4gICAKPiAgIHZvaWQgZG9fc3luYyhzdHJ1Y3QgcHRfcmVncyAqcmVn
cywgdW5zaWduZWQgbG9uZyBlc3IsIHVuc2lnbmVkIGxvbmcgZmFyKQo+ICAgewo+IC0gICAgLyog
VE8gRE8gKi8KPiArICAgIGR1bXBfcmVncyhyZWdzLCBlc3IsIGZhcik7Cj4gICAgICAgZG9fZXhp
dCgpOwo+ICAgfQo+IAoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlz
dApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 20:08:08 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 20:08:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8tN9-0007Fc-A3; Wed, 18 Apr 2018 20:08:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8tN8-0007FX-1O
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 20:08:06 +0000
X-Inumbo-ID: 7ae0843e-4344-11e8-8249-2fda3a446a53
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [104.47.2.64]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 7ae0843e-4344-11e8-8249-2fda3a446a53;
 Wed, 18 Apr 2018 20:10:03 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=qdEqzXFEgLQJvx+av0ELDsKZipy5sJPla/tb55oF8/w=;
 b=WZb6BILEbwQmb5e+pM4kmqOFeVF92yLye+gaHK2mnXc9nSLeniAaCwJbZuS5jp+kmWSyp/Feoz0mXJR7Xe2kToV0itz9XAJpaWIwG/VCSIqgyTRdISPDH194p2dkqDiZiyyjTsQ8hAEK2/C2FmWDarvLXkyoMTsBC7gNWWy0oos=
Authentication-Results: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
Received: from Juliens-MacBook-Pro.local (217.140.111.135) by
 AM6PR08MB3349.eurprd08.prod.outlook.com (2603:10a6:209:48::18) with Microsoft
 SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Wed, 18
 Apr 2018 20:07:54 +0000
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-11-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <95cf656b-7477-800c-6599-b9032288963b@arm.com>
Date: Wed, 18 Apr 2018 21:07:42 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0)
 Gecko/20100101 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-11-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
X-Originating-IP: [217.140.111.135]
X-ClientProxiedBy: MWHPR03CA0014.namprd03.prod.outlook.com
 (2603:10b6:300:117::24) To AM6PR08MB3349.eurprd08.prod.outlook.com
 (2603:10a6:209:48::18)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-HT: Tenant
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(48565401081)(2017052603328)(7153060)(7193020);
 SRVR:AM6PR08MB3349; 
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3349;
 3:XdaVeZWvE6GmoeJWZZfQIJyAvkBxpsdP0R4BneqyC0bE7Dm8GNT2oHhuouCE4EZ83sjYsW7hs4JJGhrjUKMrEh9/ybtsEASSWJUB3z14LdVoDMbBr1ATi6f0OZA+x2aaU0+jMZ2zneQtOiVadAXdnG4tVEyXb3eMaC22ihGcPx8GRK4VyKVmXBb2O7HtirSMWwGW95mZ5jGtkWKaT4sb1h8ye+W6CsGvAQF9+SBsCCMz6blxpGRV/vQFWr5f3i6s;
 25:+2JnW2Orqcp69c7yZ63bQahS67lQKFfBrkD+c40xMmjoBGrCza533174V1d2aL9hfXdMk1uvis8JnUpqaJmzynOtpWCc0kwc+vjvi5JH/jh7pGtc4jk9AscRRK6AkMi4WE1VnopDjNUc1z58NsnO1UphStOSy8Ri74E7ayo7a6hfL79AV7waJ3E3o0yECUBoGByM1tFUld6R7CTkvLvNfnIkFe1O5qUQ5YmAXl4bA89iDTneC9kn+l2rnnLnLcUC6gkyKGKLdoY/NQSNOSzh3NuJI6CNgClOVNvmDPz+OEHsLWnnecJcIL/0E8lcP2AZnDpquK9fTu0vDhOymymQIw==;
 31:hmx5HqhHWJ/cVCohOHZeXOwHmFDx3/mq5taVrEv24Jy94stgdK6kf82tlogx5J0iDzveTpdNDiyRp2bYTNpDHz1jvBINFwmg5fVCaost9XXXO23+iXBIcAuCC7XluwIF6Y9icEzb9UMR5q3P1hMoTyQVsWNCEGFR9jGmx2iu4oU0W4c2SQGmY8n8AekliPteb+juzWapSOSkNVoYPaiZZAQHetbuzHqVnTozaDTAges=
X-MS-TrafficTypeDiagnostic: AM6PR08MB3349:
NoDisclaimer: True
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3349;
 20:RQMnpskD+fEcCT7RWuWyf7iaSxg3qt1amg+Kghy4X3FI/vQe+hNFlLz1fAl/UZrM0jMGYP3DHwgVwiyGei8VMMwcdSCaVR5RIitbnor+KXwhqFg8h1beGQUv12s5X4KQRXTn72wzILZ+845OUq5Z9dXV/qRBmY31X3PXV9QJpSo/Ykba31z2mtofFFSUTvA+2csUTJIC1YwynyqXXTxQ4uIUOWoxZNtyb6aPE2XCFPH3fQw3CFgaB7s/nipKcQlE;
 4:l/mwMShF5R75K1uQc39FzAfy4N948k+9QpTj2MrzvoXNJ44w6mX5eqO7SXg2jpt6Bu8AcfZNaeiKz50BlLvHlNqiiaMIVE54JY+nVBrV8bFDPrJ5vKzTZAJzqi0OfuevlrqtXoRNC0BWiqYHpbTCm95vozIxoaV/AH6f3nKUjgxfOtDA4gufS1/LSb/uHASoOvS2OGtoOwvHMlIiwB2S7D5IShGEAu610+F1smjVAvhKrsAmMmhi2TcxBzP4YIqUQbOlbynGBhirUI5tWmKzcQ==
X-Microsoft-Antispam-PRVS: <AM6PR08MB3349320B9DA761E32ECE4CC980B60@AM6PR08MB3349.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(93006095)(93001095)(3002001)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123558120)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(6072148)(201708071742011);
 SRVR:AM6PR08MB3349; BCL:0; PCL:0; RULEID:; SRVR:AM6PR08MB3349; 
X-Forefront-PRVS: 06469BCC91
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(396003)(39380400002)(376002)(39860400002)(346002)(366004)(189003)(199004)(230700001)(36756003)(5660300001)(386003)(6506007)(65826007)(446003)(6116002)(7736002)(53546011)(39060400002)(305945005)(3846002)(6246003)(956004)(6666003)(11346002)(8936002)(53936002)(50466002)(52116002)(67846002)(476003)(6512007)(2616005)(16526019)(52146003)(6486002)(64126003)(86362001)(4326008)(8666007)(23676004)(31686004)(66066001)(478600001)(31696002)(65956001)(65806001)(25786009)(81166006)(2906002)(81156014)(58126008)(44832011)(47776003)(8676002)(26005)(2486003)(76176011)(316002)(229853002)(72206003);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM6PR08MB3349; H:Juliens-MacBook-Pro.local;
 FPR:; SPF:None; LANG:en; MLV:ovrnspm; PTR:InfoNoRecords; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTZQUjA4TUIzMzQ5OzIzOnloakZqMUt5YjM4UzhCNi8xTVZvdms0RTc1?=
 =?utf-8?B?cXorcCtaNjk2anV3S2UzbFhnOXdFbUZFZHdJUC9XU2xTSFU1b1VtcVk3dnor?=
 =?utf-8?B?aFRUNTFsamx4VGFlNndPbUhCQU84WExoQjFmWFg0aUZXMVFWTHpOVUZkeVVm?=
 =?utf-8?B?a1Jad2lJMjRtVVpZMFVrM1IxckdXYlJUT3h5VktJcWNpU1ltb0lmMXJYRU43?=
 =?utf-8?B?QUpJbEhlNEk2Q3AxT3Q4NHFzSnE2MWVTdTBMcHE0TWIwU2VBYWVJTWlCTHAr?=
 =?utf-8?B?NTM1WnZXQjl6amhXcDMzTGpPeUlNRFhiY2VjVWRvSzFSdURVVXpXZldSZG52?=
 =?utf-8?B?ZTJ6azVvbjEyWTV4MG5LblpYVmNkZE1McmVBbnluYnAxYTNZT2NjeDZQNzI5?=
 =?utf-8?B?ZlFjdE0xQlpTU0ZqMzVVZWZWRlJKRWJFVklsZE1NdkFIQVRleXpBMklXWDFX?=
 =?utf-8?B?T3h4dXZxZDlhazM2UGRpRk04Mm9UcllqSm9HOENML0dzOXQ2dzM2MTJReGlB?=
 =?utf-8?B?MFZwbXNiUGs0VytmbXZTTlJKR09Ma2wvSktMdlA0RE90WXRDeW4wbGQ4M0l6?=
 =?utf-8?B?bHU4cldpMVhRM2hzKzNya2p5NUdIWThDalM5bTFPM3pia0FsemhnWUg3L0Ix?=
 =?utf-8?B?aXJwY3pvS3ZDTksvdmtxZXorRDFMOXU5TWg4QXZLMFZjTnhhcVpCZ0pORjU1?=
 =?utf-8?B?cEwveDhyVEd6dFAreFVJalFWdVBiME96UjVtYldEMVMxNUVyZFVvMnpzZmxt?=
 =?utf-8?B?ZHhLYUUyTlplbUptNVZEY2xNcWdNaHpGVGR4MjRubnAvcUVvYjdYNHpGQlFt?=
 =?utf-8?B?cmJtSnFCOGR5Mk4vUFNiVDFTSlg0R2FPWm9yQUUwVk0ycUxsdlNoTnFzQWQy?=
 =?utf-8?B?Qk9FdVdPdVI5RlRnZTRzL0dndkhwcDRTbjZDWTBCa1kyeWRQQ3Z2VWFCZkhS?=
 =?utf-8?B?OFhOenZEdzJuek9wazNBQzFmWlRxdEFHZklrWlBaU0tXWm05RkxoYkxzV3Ji?=
 =?utf-8?B?UDZvdUdBU2ZidVoweHRZYnFjYTdtRkduTCtlWEdZSmh3aXEyS1FGUGlORVBI?=
 =?utf-8?B?QWltUDludHUzeW9VdGhxNUZEUjBOM0FHRWxkVmdQRnRoR0lkSWowQ0kwdkl5?=
 =?utf-8?B?UURwamJQMmg1Wm1oOG45aUJ3RG84SFh0Tm8wb0xIeURrMUVwSlR5eTZKdCtQ?=
 =?utf-8?B?U1dOaFExalkwWTliQW9zWFh1WDI1d1hFbExQTDFuK2ppUTZ6UDg2dkdvRjR2?=
 =?utf-8?B?cG54d0NkUG1jRnZLbFJEYytUR1JSNUZmT0t6c0kvaHZ0NDMvaVpNU1d2dmll?=
 =?utf-8?B?cDVxWE5lQmEyd21nbkgxcVRJejV5Y2NUcE5NOUdsTVplYnU5T21DaUNzSFlD?=
 =?utf-8?B?YzFFTEF2VGF5NGo3WVlJRmJyaTIzMUNuQVFuNVJHSW9HZXJ5N1ZMMklIZVNY?=
 =?utf-8?B?TmxQa3JnRHVjS2pTME0waWxlZ1BEWXNwOE85Yk9XT3BZUWVFQnhoVkVKMTBy?=
 =?utf-8?B?dHk0UW1YS1lWbE9MdERMczY2WFQ4R3ZkdjBYQ0xsSnhjbFMrZWxJTkVjUWl6?=
 =?utf-8?B?RFFmakoyMEwwT1dtWlpIeTVUYWJSTDJMYXl3dTZ2OHRYL0ZVblptVE0rM3d6?=
 =?utf-8?B?bW5MQzdIbDk1dERQVTVRcTNpQ2lBM2VlVmxRRVRmWHBNdnh6SUhaMkl2MnNQ?=
 =?utf-8?B?aG5hbW04VDN5OWYwMnNtRVpIN2Z1ejU5eEFxWjdRV1JXZlVvVTRWWStJVHIw?=
 =?utf-8?B?SC9yRExSRGwrS0ppUWdhQ2NiSndNT0dyQmszNThuQXF2eVoyaUI1Qk03Vlht?=
 =?utf-8?B?KzZPZlI3MGtLaVBFdmtSMC95Vmk1SnZBLytWYXJiTnRTMUE9PQ==?=
X-Microsoft-Antispam-Message-Info: lPjDhATubEULF6e/5ZrmmTPamC7HSP+OYjFwnzVQKLruF+bQ0Zwfyvi91Uz7klhrvBYgIumQICjmGEnatR1bfoedRzQt2Ku/ArgmHU7geydzKfpxgOxRXnAPmtWCrW2FuCKXgrgXlnDPneap+v85SlEKuMJfwz7fj6sEfJkidYhVxWHEPObB1ZWuZRX49lDb
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3349;
 6:jgLbYVZ2GYvdU6SqWETZU+GiKIszR/TepkuQRNIliKgndm722iBjkxDQASz4ZlzyMj1lZjKKZW2vQz81OKYsS+XK3LjwbZcBwxyBAsNkF9ZFGxB9k8ZibBeqe62X+5MK94lLueLu7zp06MAou1r1V0qylQ1SDuc/fOs/yOjV7OB1X6t3aUEQPLCq+2JKNMQ/Z1/CJj57sv/MS/N2HF9kAlF3DMP2HZpTvtij8VMznXhl+oZRe27AXgsTf/1CfrPDAlgrNrTFzvhnI6HDsPgCX6FihCmaAERA8jQ6LHUrSoGetPcMMBVuIYyojzQTpTZPQwYxSiZAW+aAOe8SBnHS0mIxRuqB6yTuo0gq0r1F8PriaO8x71SMC29kXu4UGV19mFLyGva2+pWUBPPu2Mf3D7MZ6wLKMwvu0PgrQENAvujBX0x9nFCkXF0zjRirsQUJXDrk7A4EeO6RzuG2MFkmoA==;
 5:ZI9k7wI4KGDhJotv44mAasjZwqOjTXK6AsUW9BZG5WlDjXqk9PR++7amXcVdTf4hAWuS36qO0CuPoH8/ecpmr4O/uxoByJY8vpyF0AgTijRhXZ01LSZbXL2kgSGZeJPtOfzzKLd61Qxh7EVrzAj2C7ViMd+p+5Ev8sFTYDKBvic=;
 24:8w6Tw2aUHxcL/xYWnW2kXn3Ek0bvOSTrkfmAsud6HI+lkkIxjydnU0GK/xyXtuWfcVnRHXoSHn65HL/Q4jNHh9rRfTaIscpR42MHnoIYumk=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3349;
 7:whfWtzAYwAkPMGKbnP4UmYWIuf23E9Uwzx01NuUfZv7nVLF42y8/nR4eY3HN4iTZ+CR4hC7hchPofzVhM6qoBSVkPvFDbB04td6CmTXLNaBDO8RBO2T08e+4kdV6fujk1OW/kzmic/OQ3bvOAtme6Je6wF4O+zPlTIyCIfi0O0kcRpRhdEAaNvCyA1HcWrGiPj4WYLM1HUSlYdx5hdHw28XeRpBtSzHbVqblCSi72zh9fz5WwGq5oMO6WKUZAlY9
X-MS-Office365-Filtering-Correlation-Id: 92659a9a-b006-41cc-2c70-08d5a568153d
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 20:07:54.6962 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 92659a9a-b006-41cc-2c70-08d5a568153d
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3349
Subject: Re: [Minios-devel] [PATCH v3 10/43] arm64: add exception support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpJIGZvcmdvdCB0byBtZW50aW9uLi4uCgpPbiAxNi8wNC8yMDE4IDA3OjMxLCBIdWFuZyBT
aGlqaWUgd3JvdGU6Cj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJtL3RyYXBzLmggYi9pbmNsdWRl
L2FybS90cmFwcy5oCj4gaW5kZXggNzA0ZGYyMi4uYjA3NmY0MSAxMDA2NDQKPiAtLS0gYS9pbmNs
dWRlL2FybS90cmFwcy5oCj4gKysrIGIvaW5jbHVkZS9hcm0vdHJhcHMuaAo+IEBAIC0xLDIwICsx
IEBACj4gLSNpZm5kZWYgX1RSQVBTX0hfCj4gLSNkZWZpbmUgX1RSQVBTX0hfCj4gLQo+IC1zdHJ1
Y3QgcHRfcmVncyB7Cj4gLSAgICB1bnNpZ25lZCBsb25nIHIwOwo+IC0gICAgdW5zaWduZWQgbG9u
ZyByMTsKPiAtICAgIHVuc2lnbmVkIGxvbmcgcjI7Cj4gLSAgICB1bnNpZ25lZCBsb25nIHIzOwo+
IC0gICAgdW5zaWduZWQgbG9uZyByNDsKPiAtICAgIHVuc2lnbmVkIGxvbmcgcjU7Cj4gLSAgICB1
bnNpZ25lZCBsb25nIHI2Owo+IC0gICAgdW5zaWduZWQgbG9uZyByNzsKPiAtICAgIHVuc2lnbmVk
IGxvbmcgcjg7Cj4gLSAgICB1bnNpZ25lZCBsb25nIHI5Owo+IC0gICAgdW5zaWduZWQgbG9uZyBy
MTA7Cj4gLSAgICB1bnNpZ25lZCBsb25nIHIxMTsKPiAtICAgIHVuc2lnbmVkIGxvbmcgcjEyOwo+
IC19Owo+IC0KPiAtI2VuZGlmCj4gKyNpbmNsdWRlIDxtaW5pLW9zL2FybTY0L3RyYXBzLmg+Cgou
Li4gY2FuIHRoaXMgcGxlYXNlIGJlIHN1cnJvdW5kIHdpdGggYW4gaWZkZWYgYXJtNjQgYW5kIHRo
cm93IGFuIGVycm9yIAppZiBub3QgZGVmaW5lZD8KClNvIHRoaXMgd2lsbCBoZWxwIHRvIGdldCB3
aGVuIHRoZSBhcm0zMiBwb3J0IGlzIGFkZGVkLgoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoK
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 20:27:39 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 20:27:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8tg1-0008WM-Or; Wed, 18 Apr 2018 20:27:37 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8tg1-0008WH-0k
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 20:27:37 +0000
X-Inumbo-ID: c8f873fa-4346-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::621])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id c8f873fa-4346-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 22:26:34 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=uZ6sYyBQ0cg18NoQ5Je3Nb9bvyJevYkJkTFjTxq0iIc=;
 b=SHMDsIStwu0kUQEyVrKKVdWalBNPRoEoA9GAiGHHT6/fOKkV2Fou9tXcaEtSLSSRvfxJfKqC5NWT3PAZwFwGJVmSxShNHRbTXstc8crfwiT4+5rVOyfbT0AfZY8Tk+c/DHEqSy56uQc0tLwtjIEXwMvKcezc4QUfRbCBFydt4k0=
Received: from Juliens-MacBook-Pro.local (217.140.111.135) by
 AM6PR08MB3351.eurprd08.prod.outlook.com (2603:10a6:209:48::20) with Microsoft
 SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Wed, 18
 Apr 2018 20:27:23 +0000
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-13-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <445ad0d4-2621-fc27-4408-cfd7f7101321@arm.com>
Date: Wed, 18 Apr 2018 21:27:12 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0)
 Gecko/20100101 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-13-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
X-Originating-IP: [217.140.111.135]
X-ClientProxiedBy: BN6PR14CA0034.namprd14.prod.outlook.com
 (2603:10b6:404:13f::20) To AM6PR08MB3351.eurprd08.prod.outlook.com
 (2603:10a6:209:48::20)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-HT: Tenant
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(2017052603328)(7153060)(7193020);
 SRVR:AM6PR08MB3351; 
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3351;
 3:8vif5K45CeaDnmHtgfFBOD2dT8RTyZ1bXicGdPGLsAP1RZoi6z7CL+kP+s7rJWVkqNLL0Mx330bB7F1pgQ3O2oT1a2Np0f6WGYb4M2GdJi0v6dIRneWH3maWcXKo3hSZ655csIKbqjFFAtBXhe5bgOYenhcPhq2EAwuaUmyw1uyfeOdGmG4CbIbpbdNtoRw57GNEAceuawZTDVSBT2UVM0g3aIyNW7pQL0TQWJAir3yjCgo4xgk82xyo8l2fua6I;
 25:+ZP9xCLzMo0AuD4EO+BfP6YXzIP7CrSWPzOpWkNHotlCUMYRel8JxUgfb7uv1CgydnXNtTcQSZCJUMzh77l91JC4k3OgudQGav3xC/2ghUPQXQNJGngNLeQMQ3v7bzpMGhms8alRPz4ktRfeZ2+toEylFI/rljfSe6KGpdLDJNyxQdKlx1qVx+bRGbDx+L+wRXYaQBOFPK5VcKN4IwHBJN8t1Y1o1Gbu5RZ21goNW4HP8MC5zgAFcLWBOcOLTDpAWMOpJ9bXV0Ie5oQ05HbQfXE3GA9tgmwkSlAEYO63t1CE1waErlGDpMPHnPCB8g43WsiYzqPfNWd6voZXuge0Hg==;
 31:O5gXzaLCWeXUplonNHzLpYM/+GsqXwxWEtUm3nbt2RE68Z4LCrbdt7cDW0b1HtveuMmHdrcIZQ9iE7qRijax6i50IICIV2/jWb2geUGuAw1x3KhVN8uoOPjGXH8XBNMLTRMqj9f3tdlp6tQEtkRarv4SRZXXrKtIsj9AT0qXMjdheIP3piWXKjAYjbITS2223udJGEGVc2uf7UFdid2uaT+pxp2AaTv3bYwhcsxFmYA=
X-MS-TrafficTypeDiagnostic: AM6PR08MB3351:
Authentication-Results: outbound.protection.outlook.com; spf=skipped
 (originating message); dkim=none (message not signed) header.d=none;
 dmarc=none action=none header.from=arm.com;
NoDisclaimer: True
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3351;
 20:/z8mZRNF5+9qvC73MgUAHUO/7q9SzNl2vPmZquCP235c9X7zYv/KZlPinSkQmyjIbssbixtsYu+CRLu+pGWVro7runnvfNGKdYQdGVKrICh26zr6CQW33b8+TxZEOTgqmr75mKYO8iHdxVk2/O4fj8m2Ld9h51aIo3ePrLr4P3YUsdoUL63a9UA/1Liu7EIL4RKPeEGog+6AA7yHoMfTpUtUcyEGaofBkL53jlsWWVgLhu3Ob8kCFwAOtxTXtpsd;
 4:/X8prMpl5jetF0b+LmTbHDmFlYECbP2CwNjukuWAndiuJdrX0uWZKKnNBkyDl/iQ+rurn/hgdfQV/XKstvKeypoEiPDG6QPv3k/WcullZnd7e5nI8/h6IVW7C2rtz4vsGuuR1kle4UX6VJY6LQBBKvZ3Ab3Q1kFrmNaGCMqv6C5fJmKOE8t5pF3KyQv/oV0X3GDC73wF67UZ7i7xUHc3WNG8159DqppgMtKvxledswWu3WQIzA61w0l3SI1FU6nzxOWcbDoQhnn1lgREdcAHGOatpINHS+E7GyxtCHywdbh1vKf2CMfp6O1RUeEerJJt
X-Microsoft-Antispam-PRVS: <AM6PR08MB3351E3D536AEE250C6EBB6A780B60@AM6PR08MB3351.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3231232)(944501368)(52105095)(93006095)(93001095)(3002001)(6055026)(6041310)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123564045)(6072148)(201708071742011);
 SRVR:AM6PR08MB3351; BCL:0; PCL:0; RULEID:; SRVR:AM6PR08MB3351; 
X-Forefront-PRVS: 06469BCC91
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(376002)(366004)(396003)(346002)(39380400002)(39860400002)(199004)(189003)(53546011)(44832011)(76176011)(6506007)(59450400001)(316002)(229853002)(86362001)(50466002)(6666003)(23676004)(386003)(81156014)(52116002)(67846002)(58126008)(26005)(36756003)(52146003)(81166006)(53936002)(2486003)(31686004)(47776003)(446003)(478600001)(66066001)(65956001)(3846002)(6512007)(6116002)(6246003)(72206003)(65806001)(230700001)(5660300001)(6486002)(956004)(2906002)(8666007)(39060400002)(31696002)(476003)(7736002)(11346002)(65826007)(64126003)(305945005)(16526019)(25786009)(4326008)(8936002)(2616005)(8676002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM6PR08MB3351; H:Juliens-MacBook-Pro.local;
 FPR:; SPF:None; LANG:en; MLV:ovrnspm; PTR:InfoNoRecords; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTZQUjA4TUIzMzUxOzIzOmhGdkRHUHNSNlNiVjZPeEdUdDc1bFBoNHRp?=
 =?utf-8?B?OHM4MjBHenR2Z2dCS2pFcWFHUUVKdTRmYzlYODhLWWpOckE4K3pxdGVSNndX?=
 =?utf-8?B?cXhYeHhKVWNHbkFpZ3pyTXM3SWQxREJyNHdxRUZ0bnEwcFYzMkJxdGZRVG1y?=
 =?utf-8?B?dkw4enZkK3dTSllWWWN6QWxCOXdHZzdFOVYwR2xCeEZYZ3FIYmhGenN4SkZx?=
 =?utf-8?B?VFNZS1dSQmZkTVY2Ym9qZTBtTGR4UDV6NnpvVnozMTUvVGtvZ05aWkFwcWpM?=
 =?utf-8?B?b3FYRTViMjBrUWxhYVNrblhmeUIyNUxINVJtbFVyNU9BeXVtbXlwai9zT3J0?=
 =?utf-8?B?OFhlTHdTV3Y0T0I0QU1QU3hDa2dLOUFjcDdNWFBza2JyT3FDYkI4b1ZJNjBK?=
 =?utf-8?B?dEV4d3pBcjhLQytUQXpRdno1NnUzdkxnMmlqUXNxOEN2dWduZG5MaHozZmRF?=
 =?utf-8?B?T09aaUQvVEJMbzZBaks4Y3QxNE1Uc0NpUnJIRklFajdSK3FYek5KNkhscVBu?=
 =?utf-8?B?WDdibDgzY3h4SlZsVWhsYVpzR1dmL3lWN1hSUU0yMGpqYytLRlhWRjlUcHo5?=
 =?utf-8?B?V2QxR1g1OGk0ZWNMd0loVGZOL1JNdmlrek9GY1hVck1GUW1XY2pISmZieWM0?=
 =?utf-8?B?UFAyNjRzeGd1V3BBaTR6TmtxUlhNTmdDL3ljUms5bTU0TFVJTHJTcDJsS3RT?=
 =?utf-8?B?dTA3MVY3Y1FJNzVoWTYrR3BsZ3BzRkRDeFhHU3JhTzlpSnBZeUhTaWVxamNZ?=
 =?utf-8?B?T20reWZiZmNFVDIvK2JTQ1ZDajQxWVY2UjZwTjZnVXNIWXBTeG1oMDNzQkpM?=
 =?utf-8?B?eWJqcnE5ZGdWUGJRRXRjRzBZUTYrWDVsYklwU2FWdEdXemdYaDU0d0c0Z08r?=
 =?utf-8?B?WkxVTXRuQTNpTjFjMmNidXZVVS84TEhNTHRlZjBQZ1ljWkRWank4UEVqQzQ4?=
 =?utf-8?B?OFRKRGZma3oralprMlUvT0gwVmhxaENOTW5lQnRNNjFVSjRId09QcVBJNzlu?=
 =?utf-8?B?L2Z3MGV3WlRHdFJkeGdXN3h6YTYvTXFpejZJcitFMGhhcnNVQ29IRG5mVFdR?=
 =?utf-8?B?Ui9qWFhXRlEzM2JUVXR5YjMrclZlWWVuNEQ1ancwQmhUYU1ESEZwOHNJSkUr?=
 =?utf-8?B?TXd1ZnpxQlVtVmxtK0ladTZjcmRKUDk0RVZxK0V6bVdsWmYxUGhXa0R6L1g0?=
 =?utf-8?B?TDJPQ0c3VCtlQlFsSy9qM0RLM1MrdUFSQVlNSk9JcG91ekJsYm9qYWl2UDMy?=
 =?utf-8?B?dXUweFpwMm83aEdVTFVFS21NMGV5aWxzZGVvUmc2RUhqRTdMRnZOcHFGR2hI?=
 =?utf-8?B?TXk2Z2FMTHdvb2VKeGtYbTM0MWpJdzBzeXpWWHZMWjhTdTNGdEdpN2hWMzQy?=
 =?utf-8?B?ODZSd0lzVEZsUmt1cU90MkVuRk96ODhhWi9VMXlMbWRBZUIzb1QyVDBNL1Ix?=
 =?utf-8?B?Q3ZRaWdFemorT0czekFsM0V4K3oybHdmUU9SdVVvZ3V6VTczZ1Y1UDRPWEVM?=
 =?utf-8?B?Q0NSMEhpTkgwNmJpZUV3UXY1Vnc0VmY5ZXhlYVF2c0g5NFlsUWc3cTVtRmM1?=
 =?utf-8?B?eS9YQngyUTJ4U092UFRCNVdnSDcraDljZVhJRm9MbzgrY0FhMzhVQ2crYVpy?=
 =?utf-8?B?VkE3Y1V1RndsOXZ5ajI3NXFveFpNRzJNSmVBN013azNtTWNETEtlWHdWZnBL?=
 =?utf-8?B?RHR6aENmUmJlOXZBSzYrOUhmSHBvK3N5OXdqUVlUNi8vR0pxTndHYnZKaVh1?=
 =?utf-8?B?UUxRRXVlcjJFVkc1ZXhLYTJJMkhGN2t2UndaQ21lUSs5cGk2Vno5dlB1bzky?=
 =?utf-8?B?VFZRYjN5L2dPR2hoU2g4MTkramE0eFNSdUlMbUxCZDAwMXk2NGpNVnZBN21a?=
 =?utf-8?Q?thoEnyqrygiaVkKhS/ej9KN6MNgPkXWp?=
X-Microsoft-Antispam-Message-Info: WKTOqxEcCR6PRB3RJhqU+nCrdN9mnuqlWVUj4nSTt6Bo4+VqBFpdkN0G1b/q/pKLX2xUq7tINgACV/CqZHicQZNIpSeTPwi9m/i0/8D0LOjyxITRI4T6DNqaSAnJuBSVAZgX1tQUz23584+jmapeaJfmK1m3N9/nFXsEGBCVL+9hvaqfJLEkuf75IVfwUq0P
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3351;
 6:NO/8qc7hHR752B95ZMWibCFcHsooFqB2rGi+/b/Jax67dh4M9KA8ciqU0UhCb2512e3YVWtdi5qjcXaOsVVSqWp7GidFXbHGkyYpq7J3NSQa+zMGSkB2yZBDNh5LbnjhRi/MVpodbkXJFlFIyVREYCYAzUkS7U8SSSuuvXoNpxlEwqDsH721EtZjBU+VmoYX/RKLhEgvhDOXnZsCq0FBxqHutQOb06IAgvHMqmvHg27yoFgyluB8+qmpWNema/9DfwVASA2rmaFHdBJ+XUhmf+tTE+pQXORtry2CSXSycfRZmmPst917ZKd8YxJ3J8S45bDLKrkHM0c8TvnJBAuHxmQMuukFAUZiTtFmSlxr+c+jNJzFu9e0N+smTrMovspY+cA2cYF0YUdxfyL/ncJgRqOvC9NNNFVj6kAU0f3GMfTPZ8ctwnX5IgkPjqJcTnGEiZw/Jc4TygV0yvChhwY+Kg==;
 5:gPmqV1I+KnHtIy0m7NVpXaRy40514xn+u6Fx3u6oclfu0Sf3NCvUhGqu/mTi5mSSfp026l5a2STcBfCNI5ffsdi+yYBib/gIXliJ7LLdiStaSEzje2jVcSr1wyiyBcd0UXBJm5RWqo57ASouTnI+ewC1d+iPhThEo0stHv4aSSo=;
 24:RCdUxMAsNC8qTn29AhA4IcBdoXutLkuMJBUCvWYRlvYNTGPoqPsGN2BWroINTtiUL/VNG+v5k4X1HN3qGshNTGPirM8seYigtRcQO++wIw4=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3351;
 7:lp5cKD3HEiZa0Vpgs7mEWW1vt25/bnNCHFou+TKtUQU5zqM/uIuRkWs4meUh4qd54bVjPgDGrK7GAY3hoMNR0+m+1GakDyQ4o4Qm0cTzTxfY9ce8mx5hu3/RIz+X9iBYMYA5ni8+PsoIOMqZB563cGN9yiT7eW3IhPqfcTfepsgUQ3HCor9zKra7T7cATWyUU+8+6Nyl6NAwrevhjJ5rqUyXUqxKmprqzwkYrcIYsM7GXX+i8d6NnvIJd+lmyw6n
X-MS-Office365-Filtering-Correlation-Id: 1cbd788c-d403-4a4a-597b-08d5a56acd82
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 20:27:23.5624 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1cbd788c-d403-4a4a-597b-08d5a56acd82
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3351
Subject: Re: [Minios-devel] [PATCH v3 12/43] arm64: add the basic helpers
 for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpNb3N0IG9mIG15IGNvbW1lbnRzIGZyb20gCjxjYzE0MzE2OS0wOGRhLTE4YjItMDYwZi04
ODIzOTA5YWJlNmVAbGluYXJvLm9yZz4gaGFzIG5vdCBiZWVuIAphZGRyZXNzZWQuIFNvbWUgb2Yg
dGhlbSBhcmUgcHJvYmFibHkgaGF2ZSBiZWVuIHJlcGVhdGVkIDMtNCB0aW1lcy4uLi4gU28gCnBs
ZWFzZSBhZGRyZXNzIHRoZW0uCgpPbiAxNi8wNC8yMDE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3Jv
dGU6Cj4gVGhpcyBwYXRjaCBhZGRzIHRoZSBiYXNpYyBoZWxwZXJzIGluIGhlYWRlcnMgZm9yIGFy
bTY0Ogo+ICAgICAgMS4pIG1iL3JtYi93bWIKPiAgICAgIDIuKSBsb2NhbF9pcnFfZGlzYWJsZS9s
b2NhbF9pcnFfZW5hYmxlCj4gICAgICAzLikgbG9jYWxfaXJxX3NhdmUvbG9jYWxfaXJxX3Jlc3Rv
cmUvbG9jYWxfc2F2ZV9mbGFncwo+ICAgICAgNC4pIHNpbXBsaWZ5IHRoZSBfX2Zmcwo+ICAgICAg
NS4pIGFkZCBCVUcoKS4KCllvdSBhbHNvIGRyb3AgYXJtMzIgY29kZSBtYWtpbmcgdGhhdCBwYXRj
aCBxdWl0ZSBjb25mdXNpbmcgdG8gcmVhZC4KCj4gCj4gVGhpcyBwYXRjaCByZWZlcnMgdG8gQ2hl
biBCYW96aSdzIHBhdGNoOgoKRG8geW91IG1lYW4gImJhc2VkIG9uIiByYXRoZXIgdGhhbiAicmVm
ZXJzIHRvIj8KCj4gICAgICAgIkluaXRpYWwgY29kZXMgZm9yIGFybTY0Igo+IEFuZCB0aGlzIHBh
dGNoIGFsc28gcmVmZXJzIHRvIEZyZWVCU0QgY29kZToKCkRpdHRvCgo+ICAgICAgIHN5cy9hcm02
NC9pbmNsdWRlL2F0b21pYy5oCgpZb3UgdmVyeSBsaWtlbHkgaGF2ZSB0byByZXRhaW4gdGhlIGNv
cHlyaWdodCBmcm9tIHRob3NlIGZpbGVzLgoKPiAKPiBTaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlq
aWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+IC0tLQo+ICAgaW5jbHVkZS9hcm0vYXJtNjQvb3Mu
aCB8IDI4ICsrKysrKysrKysrKysrKysrKysKPiAgIGluY2x1ZGUvYXJtL29zLmggICAgICAgfCA3
NSArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAg
MiBmaWxlcyBjaGFuZ2VkLCA1MiBpbnNlcnRpb25zKCspLCA1MSBkZWxldGlvbnMoLSkKPiAgIGNy
ZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2FybS9hcm02NC9vcy5oCj4gCj4gZGlmZiAtLWdpdCBh
L2luY2x1ZGUvYXJtL2FybTY0L29zLmggYi9pbmNsdWRlL2FybS9hcm02NC9vcy5oCj4gbmV3IGZp
bGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi4zZDRhYWRhCj4gLS0tIC9kZXYvbnVsbAo+
ICsrKyBiL2luY2x1ZGUvYXJtL2FybTY0L29zLmgKPiBAQCAtMCwwICsxLDI4IEBACj4gKyNpZm5k
ZWYgX0FSTTY0X09TX0hfCj4gKyNkZWZpbmUgX0FSTTY0X09TX0hfCj4gKwo+ICsjZGVmaW5lIEJV
RygpICAgICAgICAgICBfX2FzbV9fIF9fdm9sYXRpbGUoIndmaSIgOjo6ICJtZW1vcnkiKQoKSSBk
b24ndCB1bmRlcnN0YW5kIHRoYXQgaW1wbGVtZW50YXRpb24uIFdGSSBtZWFucyB3YWl0IGZvciBp
bnRlcnJ1cHQgYW5kIAp3aWxsIGNvbnRpbnVlIGFzIHNvb24gYXMgYW4gaW50ZXJydXB0IGNhbWUg
dXAuIFdoYXQgeW91IHdhbnQgaGVyZSBpcyAKZHVtcGluZyB0aGUgcmVnaXN0ZXJzIGFuZCBleGl0
LgoKU28gbW9zdCBsaWtlbHkgeW91IHdhbnQgdG8gdXNlICJicmsiIHRoYXQgd2lsbCBwcm92b2tl
IGEgdHJhcC4KCj4gKwo+ICtzdGF0aWMgaW5saW5lIHZvaWQgbG9jYWxfaXJxX2Rpc2FibGUodm9p
ZCkKPiArewo+ICsgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1zciBkYWlmc2V0LCAjMiI6Ojoi
bWVtb3J5Iik7CgpBZ2FpbiwgZG9lcyB0aGUgX18gaXMgcmVhbGx5IG5lZWRlZD8gU2FtZSBmb3Ig
ZXZlcnl3aGVyZSBpbiB0aGF0IHBhdGNoLgpZb3Ugc2FpZCB5b3Ugd2lsbCBjaGVjayBpdCBhbmQg
bmV2ZXIgY2FtZSBiYWNrLgoKPiArfQo+ICsKPiArc3RhdGljIGlubGluZSB2b2lkIGxvY2FsX2ly
cV9lbmFibGUodm9pZCkKPiArewo+ICsgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1zciBkYWlm
Y2xyLCAjMiI6OjoibWVtb3J5Iik7Cj4gK30KPiArCj4gKyNkZWZpbmUgbG9jYWxfaXJxX3NhdmUo
eCkgeyBcCj4gKyAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXJzICUwLCBkYWlmOyBtc3IgZGFp
ZnNldCwgIzIiOiI9ciIoeCk6OiJtZW1vcnkiKTsgXAo+ICt9Cj4gKwo+ICsjZGVmaW5lIGxvY2Fs
X2lycV9yZXN0b3JlKHgpIHsgXAo+ICsgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1zciBkYWlm
LCAlMCI6OiJyIih4KToibWVtb3J5Iik7IFwKPiArfQo+ICsKPiArI2RlZmluZSBsb2NhbF9zYXZl
X2ZsYWdzKHgpIHsgXAo+ICsgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1ycyAlMCwgZGFpZiI6
Ij1yIih4KTo6Im1lbW9yeSIpOyBcCj4gK30KPiArCj4gKyNlbmRpZgo+IGRpZmYgLS1naXQgYS9p
bmNsdWRlL2FybS9vcy5oIGIvaW5jbHVkZS9hcm0vb3MuaAo+IGluZGV4IDZhMWNjMzcuLmIxMDU1
N2EgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9hcm0vb3MuaAo+ICsrKyBiL2luY2x1ZGUvYXJtL29z
LmgKPiBAQCAtOCw0MSArOCw0MiBAQAo+ICAgI2luY2x1ZGUgPG1pbmktb3MvY29tcGlsZXIuaD4K
PiAgICNpbmNsdWRlIDxtaW5pLW9zL2tlcm5lbC5oPgo+ICAgI2luY2x1ZGUgPHhlbi94ZW4uaD4K
PiArI2luY2x1ZGUgPGFybTY0L29zLmg+CgpTYW1lIHJlbWFyayBhcyBmb3IgdHJhcHMuaC4gWW91
IHdhbnQgdG8gI2lmZGVmIHRoYXQuCgo+ICAgCj4gICB2b2lkIGFyY2hfZmluaSh2b2lkKTsKPiAg
IHZvaWQgdGltZXJfaGFuZGxlcihldnRjaG5fcG9ydF90IHBvcnQsIHN0cnVjdCBwdF9yZWdzICpy
ZWdzLCB2b2lkICppZ24pOwo+ICAgCj4gICBleHRlcm4gdm9pZCAqZGV2aWNlX3RyZWU7Cj4gICAK
PiAtI2RlZmluZSBCVUcoKSB3aGlsZSgxKXthc20gdm9sYXRpbGUgKCIud29yZCAweGU3ZjAwMGYw
XG4iKTt9IC8qIFVuZGVmaW5lZCBpbnN0cnVjdGlvbjsgd2lsbCBjYWxsIG91ciBmYXVsdCBoYW5k
bGVyLiAqLwo+IC0KPiAgICNkZWZpbmUgc21wX3Byb2Nlc3Nvcl9pZCgpIDAKPiAgIAo+ICAgI2Rl
ZmluZSBiYXJyaWVyKCkgX19hc21fXyBfX3ZvbGF0aWxlX18oIiI6IDogOiJtZW1vcnkiKQo+ICAg
Cj4gICBleHRlcm4gc2hhcmVkX2luZm9fdCAqSFlQRVJWSVNPUl9zaGFyZWRfaW5mbzsKPiAgIAo+
IC0vLyBkaXNhYmxlIGludGVycnVwdHMKPiAtc3RhdGljIGlubGluZSB2b2lkIGxvY2FsX2lycV9k
aXNhYmxlKHZvaWQpIHsKPiAtICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJjcHNpZCBpIjo6OiJt
ZW1vcnkiKTsKPiAtfQo+IC0KPiAtLy8gZW5hYmxlIGludGVycnVwdHMKPiAtc3RhdGljIGlubGlu
ZSB2b2lkIGxvY2FsX2lycV9lbmFibGUodm9pZCkgewo+IC0gICAgX19hc21fXyBfX3ZvbGF0aWxl
X18oImNwc2llIGkiOjo6Im1lbW9yeSIpOwo+IC19Cj4gLQo+IC0jZGVmaW5lIGxvY2FsX2lycV9z
YXZlKHgpIHsgXAo+IC0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1ycyAlMCwgY3BzcjtjcHNp
ZCBpIjoiPXIiKHgpOjoibWVtb3J5Iik7ICAgIFwKPiAtfQo+IC0KPiAtI2RlZmluZSBsb2NhbF9p
cnFfcmVzdG9yZSh4KSB7ICAgIFwKPiAtICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJtc3IgY3Bz
cl9jLCAlMCI6OiJyIih4KToibWVtb3J5Iik7ICAgIFwKPiAtfQo+ICsjZGVmaW5lIGlzYigpICAg
ICAgICAgICBfX2FzbV9fIF9fdm9sYXRpbGUoImlzYiIgOjo6ICJtZW1vcnkiKQo+ICsKPiArLyoK
PiArICogT3B0aW9ucyBmb3IgRE1CIGFuZCBEU0I6Cj4gKyAqCW9zaGxkCU91dGVyIFNoYXJlYWJs
ZSwgbG9hZAo+ICsgKglvc2hzdAlPdXRlciBTaGFyZWFibGUsIHN0b3JlCj4gKyAqCW9zaAlPdXRl
ciBTaGFyZWFibGUsIGFsbAo+ICsgKgluc2hsZAlOb24tc2hhcmVhYmxlLCBsb2FkCj4gKyAqCW5z
aHN0CU5vbi1zaGFyZWFibGUsIHN0b3JlCj4gKyAqCW5zaAlOb24tc2hhcmVhYmxlLCBhbGwKPiAr
ICoJaXNobGQJSW5uZXIgU2hhcmVhYmxlLCBsb2FkCj4gKyAqCWlzaHN0CUlubmVyIFNoYXJlYWJs
ZSwgc3RvcmUKPiArICoJaXNoCUlubmVyIFNoYXJlYWJsZSwgYWxsCj4gKyAqCWxkCUZ1bGwgc3lz
dGVtLCBsb2FkCj4gKyAqCXN0CUZ1bGwgc3lzdGVtLCBzdG9yZQo+ICsgKglzeQlGdWxsIHN5c3Rl
bSwgYWxsCj4gKyAqLwo+ICsjZGVmaW5lIGRtYihvcHQpICAgICAgICBfX2FzbV9fIF9fdm9sYXRp
bGUoImRtYiAiICNvcHQgOjo6ICJtZW1vcnkiKQo+ICsjZGVmaW5lIGRzYihvcHQpICAgICAgICBf
X2FzbV9fIF9fdm9sYXRpbGUoImRzYiAiICNvcHQgOjo6ICJtZW1vcnkiKQo+ICAgCj4gLSNkZWZp
bmUgbG9jYWxfc2F2ZV9mbGFncyh4KSAgICB7IFwKPiAtICAgIF9fYXNtX18gX192b2xhdGlsZV9f
KCJtcnMgJTAsIGNwc3IiOiI9ciIoeCk6OiJtZW1vcnkiKTsgICAgXAo+IC19Cj4gKyNkZWZpbmUg
bWIoKSAgICAgICAgICAgIGRtYihzeSkgLyogRnVsbCBzeXN0ZW0gbWVtb3J5IGJhcnJpZXIgYWxs
ICovCj4gKyNkZWZpbmUgd21iKCkgICAgICAgICAgIGRtYihzdCkgLyogRnVsbCBzeXN0ZW0gbWVt
b3J5IGJhcnJpZXIgc3RvcmUgKi8KPiArI2RlZmluZSBybWIoKSAgICAgICAgICAgZG1iKGxkKSAv
KiBGdWxsIHN5c3RlbSBtZW1vcnkgYmFycmllciBsb2FkICovCgpsZCBkb2VzIG5vdCBleGlzdCBm
b3IgYXJtMzIuIFNvIHlvdSB3YW50IHRvIGlmZGVmIHRoYXQuCgpCdXQgYWdhaW4sIGNhbiB5b3Ug
ZXhwbGFpbiB3aHkgeW91IHVzZSBkbWIoLi4uKSBhbmQgbm90IGRzYiguLi4pIGhlcmUuCgo+ICAg
Cj4gICBzdGF0aWMgaW5saW5lIGludCBpcnFzX2Rpc2FibGVkKHZvaWQpIHsKPiAgICAgICBpbnQg
eDsKPiBAQCAtNTAsMTQgKzUxLDggQEAgc3RhdGljIGlubGluZSBpbnQgaXJxc19kaXNhYmxlZCh2
b2lkKSB7Cj4gICAgICAgcmV0dXJuIHggJiAweDgwOwo+ICAgfQo+ICAgCj4gLS8qIFdlIHByb2Jh
Ymx5IG9ubHkgbmVlZCAiZG1iIiBoZXJlLCBidXQgd2UnbGwgc3RhcnQgYnkgYmVpbmcgcGFyYW5v
aWQuICovCj4gLSNkZWZpbmUgbWIoKSBfX2FzbV9fKCJkc2IiOjo6Im1lbW9yeSIpOwo+IC0jZGVm
aW5lIHJtYigpIF9fYXNtX18oImRzYiI6OjoibWVtb3J5Iik7Cj4gLSNkZWZpbmUgd21iKCkgX19h
c21fXygiZHNiIjo6OiJtZW1vcnkiKTsKPiAtCj4gICAvKioqKioqKioqKioqKioqKioqKioqKioq
KiogYXJtICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCj4gICAjaWZkZWYgX19JTlNJ
REVfTUlOSU9TX18KPiAtI2lmIGRlZmluZWQgKF9fYXJtX18pCj4gICAjZGVmaW5lIHhjaGcocHRy
LHYpIF9fYXRvbWljX2V4Y2hhbmdlX24ocHRyLCB2LCBfX0FUT01JQ19TRVFfQ1NUKQo+ICAgCj4g
ICAvKioKPiBAQCAtMTI5LDMxICsxMjQsOSBAQCBzdGF0aWMgX19pbmxpbmVfXyB2b2lkIGNsZWFy
X2JpdChpbnQgbnIsIHZvbGF0aWxlIHVuc2lnbmVkIGxvbmcgKmFkZHIpCj4gICAgKi8KPiAgIHN0
YXRpYyBfX2lubGluZV9fIHVuc2lnbmVkIGxvbmcgX19mZnModW5zaWduZWQgbG9uZyB3b3JkKQo+
ICAgewo+IC0gICAgaW50IGNsejsKPiAtCj4gLSAgICAvKiB4eHh4eDEwMDAwID0gd29yZAo+IC0g
ICAgICogeHh4eHgwMTExMSA9IHdvcmQgLSAxCj4gLSAgICAgKiAwMDAwMDExMTExID0gd29yZCBe
ICh3b3JkIC0gMSkKPiAtICAgICAqICAgICAgNCAgICAgPSAzMSAtIGNseih3b3JkIF4gKHdvcmQg
LSAxKSkKPiAtICAgICAqLwo+IC0KPiAtICAgIF9fYXNtX18gKAo+IC0gICAgICAgICJzdWIgcjAs
ICVbd29yZF0sICMxXG4iCj4gLSAgICAgICAgImVvciByMCwgcjAsICVbd29yZF1cbiIKPiAtICAg
ICAgICAiY2x6ICVbY2x6XSwgcjBcbiI6Cj4gLSAgICAgICAgLyogT3V0cHV0czogKi8KPiAtICAg
ICAgICBbY2x6XSAiPXIiKGNseik6Cj4gLSAgICAgICAgLyogSW5wdXRzOiAqLwo+IC0gICAgICAg
IFt3b3JkXSAiciIod29yZCk6Cj4gLSAgICAgICAgLyogQ2xvYmJlcnM6ICovCj4gLSAgICAgICAg
InIwIik7Cj4gLQo+IC0gICAgcmV0dXJuIDMxIC0gY2x6Owo+ICsgICAgcmV0dXJuIF9fYnVpbHRp
bl9jdHpsKHdvcmQpOwoKQWdhaW4sIGFyZSB5b3Ugc3VyZSBfX2J1aWx0aW5fY3R6bCBpcyBkZWZp
bmVkIGV2ZXJ5d2hlcmU/IEkgYXNrZWQgeW91IHRvIAp0ZWxsIHVzZSB3aGV0aGVyIGFsbCBjb21w
aWxlcnMgKGUuZyBHQ0MgYW5kIENsYW5nKSBzdXBwb3J0cyB0aGUgYnVpbHRpbiAKYW5kIGZyb20g
d2hpY2ggdmVyc2lvbi4KCj4gICB9Cj4gICAKPiAtI2Vsc2UgLyogaWZkZWYgX19hcm1fXyAqLwo+
IC0jZXJyb3IgIlVuc3VwcG9ydGVkIGFyY2hpdGVjdHVyZSIKPiAtI2VuZGlmCj4gICAjZW5kaWYg
LyogaWZkZWYgX19JTlNJREVfTUlOSU9TICovCj4gICAKPiAgIC8qKioqKioqKioqKioqKioqKioq
KiogY29tbW9uIGFybTMyIGFuZCBhcm02NCAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8K
PiAKCkNoZWVycywKCi0tIApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRl
dmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFp
bG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 20:29:38 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 20:29:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8thx-000083-Tf; Wed, 18 Apr 2018 20:29:37 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8thw-00007y-NX
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 20:29:36 +0000
X-Inumbo-ID: 1166715e-4347-11e8-9728-bc764e045a96
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe09::60e])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 1166715e-4347-11e8-9728-bc764e045a96;
 Wed, 18 Apr 2018 22:28:35 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=r/umbBHz6ZiHIHLcBd1IlopdDIwYJ8OZqGEMzoN4t1I=;
 b=ITGsGn0XxPqkD5a7IAjbl6rxz5InTGUEfEwTeDg5QzFWW99qzz+5hd6G8XBq80uxPTEetV6i/1aD1Z413R6pi0XCwr/EMuOQXhqp0pEZu305D1hi0cJNEMPcGdMafi8z7HnyOW8xVopOdu/Hg0JZACDIcYmhUsJWdzO5SJrlmnc=
Received: from Juliens-MacBook-Pro.local (217.140.111.135) by
 AM6PR08MB3350.eurprd08.prod.outlook.com (2603:10a6:209:48::19) with Microsoft
 SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Wed, 18
 Apr 2018 20:29:22 +0000
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-15-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <10d8ee18-d319-9c5b-a8e4-e7bdd51015fb@arm.com>
Date: Wed, 18 Apr 2018 21:29:12 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0)
 Gecko/20100101 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-15-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
X-Originating-IP: [217.140.111.135]
X-ClientProxiedBy: BN6PR14CA0032.namprd14.prod.outlook.com
 (2603:10b6:404:13f::18) To AM6PR08MB3350.eurprd08.prod.outlook.com
 (2603:10a6:209:48::19)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-HT: Tenant
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(2017052603328)(7153060)(7193020);
 SRVR:AM6PR08MB3350; 
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3350;
 3:iiDHDFcgQFZGmkv0JtpWOzn4mx9QAkWEh+Q5VjyCZJMR4wXJMXin+aNR1pqR7mafY9MB0hNlI0IP/jYJ1zT/HdvZe2lBLFuDH+CCmA7I+mBrGZh+p07jID2CnUYt2hLnFW4n5f7dpd0vRSbwLtgkKSLTpR8IT+M4jeP8H3+olUkBE5HAot+7lRWf59F5twiJ/03esa0igDXqA/G43GhmJ+SBQjgkjIiFB7a2Ey45TR3RXo2mUX4wgO0/mdPJVpqS;
 25:4t9gIO+Tka0dEbFzrytH6aW8DDcJComW1sylyoxfJcBa5a2TTq74po4LURdKSpmVeUu+o6mgJuocVgYbOVBMh+ceEgKan9NtJsDCqjLFBM7bVe3EIB7OboDQxFMTNr4MIDtQtzi3Xse2+72/DJgXRt41kD7ud3DmscQNEtoZ1Lwf1kWQvTV0L+K5aUn+zhKFlPRD6wSMNHHk69mqnrJzouVD2cNCioHS/wy3y5NbxuoD0mzOBFEDmD+XckKyT4/OHue+Zzl6IwXuX3mw8vVpZBVHYev+3Xo5cq07Y5Ad2V01jahRFkR0MZqs+gV2sYexbNKgzg4+3WAwMJPg1xQ9cA==;
 31:LiacHpW0zUJVJRYwzhh12Md7+s8xnaMeib77NV35zSgbU7bD8jc0u5olGhyQUSeWodvNVmMICSU8R4bRtcRsnbHwT/XgAJ/tRdXm9JTfBkUCAAMITcURb4ZNmF8KgalhldX/DiX1GeSeg4oYuVU4h9dSpzXoTOz4ldSOcvDxP/JNrApFP1is5hZ2z3ucurZFMOsyivk6Al1OCwGCFe5eroU6CnrG25MqAXE2x6qAxIA=
X-MS-TrafficTypeDiagnostic: AM6PR08MB3350:
Authentication-Results: outbound.protection.outlook.com; spf=skipped
 (originating message); dkim=none (message not signed) header.d=none;
 dmarc=none action=none header.from=arm.com;
NoDisclaimer: True
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3350;
 20:deoS7fl2Mg3vj5H/9xT6EJ84PI05HOgXH63cCwwf3q6zF7pjmME+26uRV49N6uQJU/nMHlIr2ZuGEufUu3U++mgg4nVMKJCZee/tn0kg2WM72theoRzUM5cfo2kdeYonTcNC8d4rZBbkJfp7nu4lZPD1C5WUXJ3ssFwHCpR/XSCY+pfLoERsGz1JN8ASy2g0mP4TM5ZjWDzUKn79UacAygEP2hEstQWO+M/01OHxNArKSmHpVBbKjxor59+7M+CF;
 4:vE8D1S5YEdaY+CoHbhkH23iWL8l3tS4EA52sYzOtqdI2qeVNgw+EVjtC8E6pyP7m5DlqnXZmNVAxhEUIdUDkFqavSH3RgTUw1Puq95cyFKyOYTV8i1d2fZ3i5EeXWjTNOTsVkgoKA+XF5GXZOKhtIy69vhUr2Gmic0PB8Y7u/CxafmzeFLsprNTI+sW0fVCwutSDYoi2i/swQPV/7A2K5UTZ0B/5RTB6klmOAuvao1E9nOXYXqL4jKCXz5KA9wakxc4wU1RRB3LjKO1lXB473VGV3IpYwuljALPwzklWnzSzR4TJArt68dkICCZXeO7r
X-Microsoft-Antispam-PRVS: <AM6PR08MB3350FBDD731F9A184E24DA5780B60@AM6PR08MB3350.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501368)(52105095)(10201501046)(3002001)(93006095)(93001095)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123560045)(20161123562045)(6072148)(201708071742011);
 SRVR:AM6PR08MB3350; BCL:0; PCL:0; RULEID:; SRVR:AM6PR08MB3350; 
X-Forefront-PRVS: 06469BCC91
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(39380400002)(39860400002)(376002)(346002)(366004)(396003)(189003)(199004)(65826007)(7736002)(25786009)(305945005)(44832011)(8936002)(39060400002)(2906002)(8666007)(2870700001)(446003)(47776003)(478600001)(65806001)(65956001)(6116002)(3846002)(66066001)(72206003)(6512007)(6246003)(2616005)(81156014)(956004)(31696002)(11346002)(64126003)(8676002)(4326008)(16526019)(5660300001)(36756003)(50466002)(6666003)(316002)(6506007)(476003)(76176011)(58126008)(6486002)(53546011)(67846002)(86362001)(52116002)(26005)(81166006)(386003)(2486003)(52146003)(229853002)(31686004)(53936002)(59450400001)(23676004);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM6PR08MB3350; H:Juliens-MacBook-Pro.local;
 FPR:; SPF:None; LANG:en; MLV:ovrnspm; PTR:InfoNoRecords; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTZQUjA4TUIzMzUwOzIzOkhwN2tvY3BCNjBvTXR6QVJab21nb09IcFh0?=
 =?utf-8?B?cGlHdVd3SS9OWWdoeUtTQ2dYcVQ3TXVEKzRQOEZCMzRidnE5TEZoQjdmMy91?=
 =?utf-8?B?RjlQZ2N5NTNSK211TUMwZWRrTGFoZDBYSHBTRFhHR3c5U0ppVDM0NnBzNGxw?=
 =?utf-8?B?ZWUwUExQWUl0RGEvYnBvT3FhenZHYlRhOXZLQiswSiszYzVMdWFwVHEyKzU0?=
 =?utf-8?B?RVFmTS95WElBWkRvYlBXK1lDWXpmVmhhOUZTRno1MFlEaVorUHFaNlBWemMr?=
 =?utf-8?B?MUV1OTB3eHp5R1hmR3RUQlB4ZEk4azNXYXJDc1BYaWUzMmdvREJVVkQyV3h4?=
 =?utf-8?B?b0F5a2xUU0p4TFpuZXFscFZMWnBVTElhRDFsaGFoK3hSU3A2akF1Lyt3RkQw?=
 =?utf-8?B?RXM1UFRod0ZkcXRXektGc1Z3YmhpV1pQZ0JPL3IxWGVXYzl4Qmt0cTFNYjBU?=
 =?utf-8?B?Z1hhcU1iUkpza3VvYlJGVmdsZVVSYk5KUEZEV1p0Q3FJUjlmU2RZVnI5bDQw?=
 =?utf-8?B?NmJqaUw5a0cxY0FWQ2l4VTBpZXVZMC9ocU1Bdm5KdmxmTU14V3lqUkhTb1dW?=
 =?utf-8?B?U20rNzZnK2J6UUE3MWpjRkFsQmMxTW9YWDBEOXpKSlh2UVZmM05VNHZWWEor?=
 =?utf-8?B?elR4MzdQNEhBZEQ0anJFSUhIOWl6cXhVZDc4NFVGRUkwOTFQc2ZTdFRUSjBn?=
 =?utf-8?B?Z3Rab0wyOGJCL1BPejF0c2VYVWJJcUoxZW1QZ2lrNmx0S25WV0U5TC9JRHVT?=
 =?utf-8?B?SG1FQTkxbFdJTFBxb2ZJOTdLWFdDdWZMNmYvSXJraVhnSlVBMThBdDFNSjYr?=
 =?utf-8?B?SWRYb0JqUWJSTzZ6ZzdteGFHTGV0REtNbG1EUmdtTVpoQjRqcVBPTXhORTVy?=
 =?utf-8?B?RTlZZ3RVMzJBY2txcnFsMENwOEZsU0Y2ekhYODZZV3NPWmhVZnpjWmkyYjNi?=
 =?utf-8?B?dk4wOVRNRUh5TWp6dUJ3VzVnb3lpb0lhMDVJU1M1eCs0dWduRWZweHllYUNS?=
 =?utf-8?B?K3pYazU4YUY0RHFIb3creEE5WlMzNFNrQ1ZYb2FQYStiN2NRandrNVhVbmpq?=
 =?utf-8?B?bTJ4T01DTDFzdFBrUEIvZ2tSN3dLKzkvMzlyTjRDRko2TzJiM1FvWmFCUzhy?=
 =?utf-8?B?MUg3eTRaQktBNi9KOE1oNElXTjk4Q05HQVJ1a1plUFZLZXBFaHE5UVA0bVlz?=
 =?utf-8?B?K2tGYVY3UlZkSDdQV0piWmZscWpJeDAyUkh4eGtoMWgvcFVVRlNqaDR1djJa?=
 =?utf-8?B?U3JxN212MzA0R1RsS3hlZTVlMlozMDZGZTZ2ZkNCTXd4SkFPK1EvS2duZ1pW?=
 =?utf-8?B?YzQvLzVLRFVESEkxaExTS2xkSE9nNU5BdHY5UnRiRjYvMmdGZUszNTVtUS9P?=
 =?utf-8?B?YzVseUNVOUVNd3pIYnpJOFU4L2ljT0xOU1NNOXRnNXlIelFVMEU3WnVTQ280?=
 =?utf-8?B?dDd1L094QXc0cHdlLzlqem5sVXNzZ2l0VlhpSk0xRll2L0ZqV3E2WlFyeW9h?=
 =?utf-8?B?WWN4Ui9JVUVRRmp4a1c0YklsTmVvR3krNUR6SVpmMXJuNEMreHVoYUpiL3BG?=
 =?utf-8?B?UzBFUzdCa2pjU2sxTEU0TWRpcTVmMXhhVTcrVFBqUzVVd1Vrb1JZU1FHa0M1?=
 =?utf-8?B?SzRHWE53RkJpcHdrWG1lV21NUmZkMFFLRUEwdkkwK3JDbHhjY3Fxc3JjdTdu?=
 =?utf-8?B?eGF2clpXdUVIKzJQVFdwTmpMN3RLaWZHdGZDMWYvZGtMZVFMU0wyODFuSE9Y?=
 =?utf-8?B?N2ZYLzBBeEE1b2IvQmlmWWVqYXBldlJSaGdNY0N3Ym41RDBHUUN5ckZCSEVa?=
 =?utf-8?B?WmZFb2N4d3hDS2xiaHU0TnVlOEp1SHlNRzFkSjZ3bjVTT3p3S0I1bmxBWTJW?=
 =?utf-8?Q?6qpoBe2zvdqeUKN9c6db6aJ0n7iN6MTK?=
X-Microsoft-Antispam-Message-Info: DofrPcYAhgDfpF19P1OvnH/cR5tpCic4BBKjjMMoVZlaxUVlp6BDQKYyZSub5Vk0jtHt3ENJeK6e3WM/0GVA2M4NTtAwmn3324uyuk7Bx+gm7bBgbeh9dwbU++Dw4p3WQ65jH73/DlunVjypLgPJoFo3WDSohGQr4F+jMA0xxNXzRiMfvYt5dFW27IR1aOlc
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3350;
 6:KUlTnwrRHnI4U5q8I0hZ8SGLsDWQ0hWIbqejww77WiwU+ydef5SmUwhEh96XnETnU3Bx4wtr5eaoGekNjiFb3Op5JrUeiKlDMgzZAsk1KPRVa33NupWMEz/P/P9v2D5r5aw/uh2wPfyAh6/2G47Ky9HhJbE0C65fChAmdPvG+5mAdV/zRpFbITdAapobnCn7Iip0UUgZzsaz/CjFacmMNSJFWnxqrBaEC7Rje2pot7jlL+ikMvNS2UDqDPmnfb6bjvUSiivMVglNrY+VZ+St+bp0/BDtze1ZJW3o16c51RFzQjlUs9bWY3HBxrjr8NfqZISt039CC5+0N0zS55UUm4gAA9FvuV0zIc3nqzz/fNXe8YHeJwDm+V8uoNOKLl1zzphTj6rXs63KrF9xwIDG+EK3g1szbW6nX7hktqMU5hguaC/RaR09eyWIycb2NvtlIdnx3GNKGicQWO5Zxb1lIQ==;
 5:7Tbbfte78t55kRRIQhZ9sLQTHsDymCmU0+GocSdVfN/kFwcSrqcXZZng3AtbVw+yTOeodIVkZIXMkh7mPITIXAhqmZINEazAt9LVtXhhG64zcmPW1UYmm4+0qwED4WtWIq9GaoUgmW65Zf8xc6GclmhclhobRKs2bUpJOP953DI=;
 24:9H1anTAuELSFfx1Heqg5dQ+5lMVt7nBmq8RgFa13HtXrZtsem0x6t2ADGsPtywgeifoeA0fiEWK8l4+l6thAKof6FhettHhbolUv7f8Mjds=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3350;
 7:AlFBs14CJsllKtFj7TiZhAij8xUPEv0DXQto7/3JqWHzr4gOQp5HOhBksfHNrvTsEEYVWb1aZDxS37i4FBmK9yU0lzGSOdg57B0iSptcSIeZi9/b51L4f93/9oGzFgvHyP+E+HTd8Kf7xdhEHJs7eyZpFOjpq0hf+RS4klNn1yqX0ohvMZVaKsMpv60BM3p90gckbYojqJGk3bbm5jZ9jrK+RWKovu7D4Cr6Ul7Himf/Sx1hc6ipYrvwvmff4k2h
X-MS-Office365-Filtering-Correlation-Id: 408c5c9b-79e8-4488-8730-08d5a56b1461
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 20:29:22.3874 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 408c5c9b-79e8-4488-8730-08d5a56b1461
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3350
Subject: Re: [Minios-devel] [PATCH v3 14/43] arm64: time.c: fix the wrong
 format for printk
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAxNi8wNC8yMDE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gV2Ugd2lsbCBtZWV0
IHRoZSBjb21waWxlciBlcnJvciBmb3IgdGhlIGN1cnJlbnQgY29kZToKPiAgICAtLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAgIHRpbWUuYzogSW4g
ZnVuY3Rpb24g4oCYaW5pdF90aW1l4oCZOgo+ICAgIHRpbWUuYzoxMzE6MTI6IGVycm9yOiBmb3Jt
YXQg4oCYJWxseOKAmSBleHBlY3RzIGFyZ3VtZW50IG9mCj4gICAgICAgICAgIHR5cGUg4oCYbG9u
ZyBsb25nIHVuc2lnbmVkIGludOKAmSwgYnV0IGFyZ3VtZW50IDIgaGFzCj4gCSB0eXBlIOKAmHVp
bnQ2NF90IHtha2EgbG9uZyB1bnNpZ25lZCBpbnR94oCZIFstV2Vycm9yPWZvcm1hdD1dCj4gICAg
ICAgIHByaW50aygiVmlydHVhbCBDb3VudCByZWdpc3RlciBpcyAlbGx4LCBmcmVxID0gJWQgSHpc
biIsIGNudHZjdF9hdF9pbml0LCBjb3VudGVyX2ZyZXEpOwo+ICAgICAgICAgICAgICAgICAgICAg
Xgo+ICAgIGNjMTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCj4gICAgLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAKPiBUaGlz
IHBhdGNoIGZpeGVzIHRoZSBjb21waWxpbmcgZXJyb3IuCj4gCj4gU2lnbmVkLW9mZi1ieTogSHVh
bmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPiAtLS0KPiAgIGFyY2gvYXJtL3RpbWUu
YyB8IDQgKysrLQo+ICAgMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv
bigtKQo+IAo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS90aW1lLmMgYi9hcmNoL2FybS90aW1lLmMK
PiBpbmRleCBhMDg4OTgxLi44ZDY4Y2YwIDEwMDY0NAo+IC0tLSBhL2FyY2gvYXJtL3RpbWUuYwo+
ICsrKyBiL2FyY2gvYXJtL3RpbWUuYwo+IEBAIC01LDYgKzUsNyBAQAo+ICAgI2luY2x1ZGUgPG1p
bmktb3MvdHlwZXMuaD4KPiAgICNpbmNsdWRlIDxtaW5pLW9zL3RpbWUuaD4KPiAgICNpbmNsdWRl
IDxtaW5pLW9zL2xpYi5oPgo+ICsjaW5jbHVkZSA8aW50dHlwZXMuaD4KCldoZXJlIGRvZXMgdGhl
IGluY2x1ZGUgImludHR5cGVzLmgiIGNvbWUgZnJvbT8KCj4gICAKPiAgIC8vI2RlZmluZSBWVElN
RVJfREVCVUcKPiAgICNpZmRlZiBWVElNRVJfREVCVUcKPiBAQCAtMTI4LDcgKzEyOSw4IEBAIHZv
aWQgaW5pdF90aW1lKHZvaWQpCj4gICAKPiAgICAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXJj
IHAxNSwgMCwgJTAsIGMxNCwgYzAsIDAiOiI9ciIoY291bnRlcl9mcmVxKSk7Cj4gICAgICAgY250
dmN0X2F0X2luaXQgPSByZWFkX3ZpcnR1YWxfY291bnQoKTsKPiAtICAgIHByaW50aygiVmlydHVh
bCBDb3VudCByZWdpc3RlciBpcyAlbGx4LCBmcmVxID0gJWQgSHpcbiIsIGNudHZjdF9hdF9pbml0
LCBjb3VudGVyX2ZyZXEpOwo+ICsgICAgcHJpbnRrKCJWaXJ0dWFsIENvdW50IHJlZ2lzdGVyIGlz
ICUiUFJJWDY0IiwgZnJlcSA9ICVkIEh6XG4iLAo+ICsJICAgIGNudHZjdF9hdF9pbml0LCBjb3Vu
dGVyX2ZyZXEpOwo+ICAgfQo+ICAgCj4gICB2b2lkIGZpbmlfdGltZSh2b2lkKQo+IAoKLS0gCkp1
bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVj
dC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlv
cy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 18 20:34:44 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Apr 2018 20:34:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f8tmt-0000jQ-Bd; Wed, 18 Apr 2018 20:34:43 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=/nmo=hh=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f8tms-0000jL-Ha
 for minios-devel@lists.xenproject.org; Wed, 18 Apr 2018 20:34:42 +0000
X-Inumbo-ID: 322ddda9-4348-11e8-8249-2fda3a446a53
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [104.47.2.60]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 322ddda9-4348-11e8-8249-2fda3a446a53;
 Wed, 18 Apr 2018 20:36:39 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=f7VKuLT0osaIJAs3Sygshv8Z41SdMzP4jCzPZcl1M4I=;
 b=gitlHTPUIBtKT1SsSc2mw8gbhtE/CT743Lmi1e4tXsMjrhfJsTgV2FkdU4on3RosZSKdMoaekDc1H4ulTQ6ap4YK7d9clrBCHB0j31HGrqI3OmCHTm2wDlH/S+G1B/I7Y3hCFSnfR76eR56zx8I7tM80CVUzHu8jizfEfJ9SQnQ=
Authentication-Results: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
Received: from Juliens-MacBook-Pro.local (217.140.111.135) by
 VI1PR08MB3357.eurprd08.prod.outlook.com (2603:10a6:803:3f::16) with Microsoft
 SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Wed, 18
 Apr 2018 20:34:30 +0000
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-20-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <56add9e2-c11d-65c3-1d61-d29c65d5af00@arm.com>
Date: Wed, 18 Apr 2018 21:34:18 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0)
 Gecko/20100101 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-20-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
X-Originating-IP: [217.140.111.135]
X-ClientProxiedBy: SN4PR0501CA0099.namprd05.prod.outlook.com
 (2603:10b6:803:42::16) To VI1PR08MB3357.eurprd08.prod.outlook.com
 (2603:10a6:803:3f::16)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-HT: Tenant
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(48565401081)(2017052603328)(7153060)(7193020);
 SRVR:VI1PR08MB3357; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB3357;
 3:Za4nGtDW5oEwRP8+lY7h1x3+f/5j70IyfUk4imUuSb35ZjsAbYBkPE+lf0atNTjmXpRv07Jk1/nlmpy7D/s8XvISwMvb/aIrq3N3Sjf2XBEsr5gRAv9peAQk5krvxGS7cayZ9+uUFREio/aCtmnsL4Ts/7LjB6MSKXwvFD0OY7pNEXoFRZ2/gTIZ6k6mCoHSXN8m13CnO/C/QnL+rAqYAe18pbYwtaiobdjT0fq4CaY3vIGOLkaNDKgk1fN+X/Nq;
 25:w/INbiFaw62aWL2Ii+5wlHfnlPoV1s8M+9BTyI0VAZY9f+Nu/pgOkLMfeTTb6Zc+aZK2BW6kBPm2KGXtLyfWQThKEeAWwtiqDj20ookfqF2J0DbSExhK3DO4axTODdztoB2B5DeAlB/sBKOKlmchdFe9+Lr2iOB9pd2Bc33uNnJhneEmteyo12Hc7GoZ656OoDaLNQnAx5PE/sLYn1/H/NTdbF0rqsPiHMyU5PlSR6b7u0WOmbDYblDXP1N4bignLOj+GrvQyM7dpo6qaqFhr+B+32ySZ9XFktZJ7gcuAIpONKekEWyXWeZAOqeS6Rq6NlGTOZ1U9jNV6KaPkdzniQ==;
 31:UQ3sVXKn6oAuY98Q+RHpVQlyMeSvEWHEIbTtKVqxBQr8E40W/s0qIGLyLXMwqABtJpfb+gIi+dJiQia2xiQG41dSkIbgiJWndnE+a64EMmLKd2ihkdskheVJgBgOmEQSidOUdGvYL7SF3JwZccFU9kAmKwwxLGE8Bp5NyuOoQXrv/7ZOr5xzJiArOFYMuX+PbD1SUkBXTljXbCffeAyI502/0xnfeCzBPoqgXG3dQoM=
X-MS-TrafficTypeDiagnostic: VI1PR08MB3357:
NoDisclaimer: True
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB3357;
 20:fngbQmn/+mhiKKo6aRTSxtvmLaaQ/GS5klJTXXadMQba4Oed/oqKkblyIXY2t6mxbkA5VDkW5DYkUotGED5lfl5dc8CQ4mdNpdByQzGXJIXIvdwACZ0QbPtftwgMwpG0XjY+kdJRFRY3s2zNqGhpcqalLoKAfSYASfNBxYui4BV0uiE3NwWL1AtKi8Yut5mQ3rc2PMJKY7vRCITvlE32JmydW/DQSBe07TwboXkqHaagriEV7wYmwzTRe1KXgj18;
 4:DHl0KOkHgmYpQe6tBTHpgfUGvnYh1JFKFmB2qJEjRZM7qjODYjtBMFfGQxkpe9sYaq1IATS5/arAlwVL9hbgWVzjmSF9r4e9s77l5qG5T6p+UVxB9i0rBU5vVH6ERbs+F3cMDXwTiaVpGuVETRaXP4rSIgYVWarq39XsrDhvGpoJPVcBGpfNTlIwLgW2B5G3LD7MZfGx2VlliDnsRbdcwxVKYqDF6ssx556S9xAlP9WIS2dBGIq6kuks+C2pZA+d9Eg8ExSaDfBnzOfUF9PDGM9r5HSylr6IYLkpuB01UYI+Z2V9lzc8S/kjxwDT43QX
X-Microsoft-Antispam-PRVS: <VI1PR08MB33576F7780EC010FB98E028180B60@VI1PR08MB3357.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231232)(944501327)(52105095)(3002001)(10201501046)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR08MB3357; BCL:0; PCL:0; RULEID:; SRVR:VI1PR08MB3357; 
X-Forefront-PRVS: 06469BCC91
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(346002)(39860400002)(39380400002)(396003)(366004)(376002)(199004)(189003)(23676004)(81166006)(81156014)(86362001)(76176011)(2486003)(8676002)(478600001)(52146003)(26005)(8936002)(72206003)(65826007)(25786009)(386003)(65806001)(4326008)(52116002)(6666003)(53936002)(53546011)(305945005)(6506007)(44832011)(36756003)(31696002)(31686004)(6512007)(316002)(6486002)(2616005)(956004)(6116002)(39060400002)(476003)(58126008)(16526019)(2906002)(7736002)(11346002)(6246003)(446003)(3846002)(67846002)(229853002)(50466002)(8666007)(5660300001)(47776003)(64126003)(65956001)(230700001)(66066001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR08MB3357; H:Juliens-MacBook-Pro.local;
 FPR:; SPF:None; LANG:en; MLV:ovrnspm; PTR:InfoNoRecords; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtWSTFQUjA4TUIzMzU3OzIzOnJJa0pNU3VReHIzclJSbWFPUUF3b1lZYVpi?=
 =?utf-8?B?bTFQT1ZNdWJnSVB1NE5iOUlGSm1pejJXS1ArS3pBaXFtaFR4TllXS1J4bERV?=
 =?utf-8?B?VFVvS1czNmpQZWk1WXp5OWExUkdrWW5DNVdENy93TDRaMksrSHUwVStZNHZU?=
 =?utf-8?B?anNQSnVxODRiNlU5QUhiODRLVjc0L0o5QjB4bmpUZFl3R0tzalNjaU1jbWlK?=
 =?utf-8?B?VnU0aHI2Wm1QMFlNVDQxTDJ6SEY1SFNLUnR6Y2VPdVF6UTVqYlB6aHJ3WU5k?=
 =?utf-8?B?OHpBeXNqWHdXd2VIcWVwdlpiby9vN1NxYWxhZVRDSFRGSzlaR1dFcEc1ZDRR?=
 =?utf-8?B?UTJYUGxCSjZLUUJ1OUp0bGlZSzl3cGF2SmMzcUtyM1VEK09oc3cyeG94SzBm?=
 =?utf-8?B?RVFCaW9COVZ1WUxpR01qdE1ZS1BEVHJCTkxhOTdJMy9Dd3U3RVJQWTRmejlR?=
 =?utf-8?B?c2VzcFFhV2FBZDEwaEtmQ2lnVEVRbWFMSHNObDhDRjNHS0xvSFZLelBPbE1P?=
 =?utf-8?B?VTF4MHFYWWQ0aFU4Ky9ybEd1NjByOVZGQ0xWdkpSWkh5aUtuQWtxQ2R3U3g1?=
 =?utf-8?B?MURjOGxUTitvUkZMUUdmOUlRSitOS1VtSzVjMXRtM2xjMWhIUUw1WEh2cWd0?=
 =?utf-8?B?RXB3ZnlhU1B4cE1keVcvZk9HMitEdlNodTdCd0Z2QTV1S1ZSTDJ1a20zTUJk?=
 =?utf-8?B?UWw5eEFDSlA3OTNURk9iMnZQUEJ0OEV5QS9TSXBaeWZpVlF5VmhPcnhZT1hy?=
 =?utf-8?B?TERvOWswby9iTXczSE5JVHpxOUxvZGJ2a1JSL2UzUjlYN2txMnRXQlZEYTZD?=
 =?utf-8?B?V3BtZDFDVWZnZStzRzN0V3JoUW1vWUovUnJwRUJnMFgvMjdXWjB0Y0ZlM0Rp?=
 =?utf-8?B?QjhpVEpKK2RFM0tmTUhPOE96WGJVeTJRc090RURrRTdWeFEvMHBCYVltYXpk?=
 =?utf-8?B?S1dBbktiTU01NjNsNVM0NGVqbXJSR1NWSWpSWUU0UXdNajVyQmU3QTI5ZVZ2?=
 =?utf-8?B?ZDJtVVpIVkxveFA2Y1crUzY4cUc5MXBHL3l4eWZERkRDdm1NRVdka0Y5S2Fx?=
 =?utf-8?B?RXNybEZWQVZMZFg3MXRUa2l5N2o3OXBHQm9FclQwVHNYaWFGYkNPVzNyTWRT?=
 =?utf-8?B?RVh0dGF3T29Oa0w5dzNlRkN3dGVPSTg1WHl0ZVFuanNjSkFoRkIzdFNNdUwx?=
 =?utf-8?B?RUpHU0FPbVkwdW4wRnZ5OWZyb1pzSVZvYkJNclJ5aE9LWTFmNVBScDQ4Nmpm?=
 =?utf-8?B?ZDgxS0cwL3FmZEwxenEzQllxWmx1TWR5M3BqNjl2WlRwc0R3bUlidUFSeVVW?=
 =?utf-8?B?TDB6WGNnNnY2b2lKZjRJait4M2dWTjRvM0pKWHhjZXFsNHpqalpIQ0JxRFBr?=
 =?utf-8?B?ZTZFc1drYjIyNFR1U0RhL3dOdlVUVmtpNzNBdUJtODVzdmhTRlNFWnVLWFp0?=
 =?utf-8?B?UnRMZWIrV2pTcVpSNzlTN3pnZ25xYkZBR1l1czNhMnBTZ2I5MkowSndrZzFn?=
 =?utf-8?B?QXc0Y2ZKTVNtUm50Mm13enh6Z0U4Wk56c0g2UExqeDZxeUM3RURHY0VOWTB4?=
 =?utf-8?B?d09XYzFva1VKVUlUZkNNcEdVcHdqM1l2TzJidXUyTDVvUFZ5MU95MjdYZDFG?=
 =?utf-8?B?U1BIY05QcEhYUzVueHNaMHNMamxmTmFJSnFPaFJMMXVyZ1pvTjFEVEcxRmoz?=
 =?utf-8?B?czlsMUpyRFhHa3dhTUIvaVVLRnExcXZ1R1Vod3lsR1h2Wkt5UGU1QTk0R0VI?=
 =?utf-8?B?L0p0NWtSNzFCek1yR0VscDVBV2M0bGZwand0ZFJ1ZGVRS0gyYytxSFA0alVI?=
 =?utf-8?B?NE5Panp1a3JZVHpwRHhBdU8wdWVyUDRQMjFiY2ZoU21ZU3c9PQ==?=
X-Microsoft-Antispam-Message-Info: Nqia60XV2wGTwj58qjYX5h07mGlr1xvAchl9w3Q8Kxnhvi1N3x/yHpcEgCCALjLbJghcAvUSkdcXJEXO/iVkU5AyGw80JdUbUurhCZAjz7BWRbmPAtVAn/HB1dpJq95TujxTrxXCazfxSzGSYocxUAZ8tkjYScOVFTvkNQ7Q7r198gUJKjBKFZYBNJEWf++i
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB3357;
 6:NwEmGmHWgPsk5c0Dnakouw/MXSOU3l2+e+hcHcK+aZFqGNzcwOfyAv9WnW0C4kHO1njYYO944xYfI4Qoyrnm3aRBK+zb3Rn+rHWIv8PB+NBgSax/6l0dpnNRrBrw+oIKVls4sbu4kNlPARegNAxrukSC3S4iauKEOM/WyZyBG7AsF7Vq/2pPGRuzABKJmN9MNOaPbHt0qHSWOX9nE+dSlFiTzPwiy1ce2Pn6hucHPUSQVQaC6f+7jxTpXJow62oPPBVSJuT2KM0cC2i6j9xjjLHiNdssJK528kVGtpbvReID3tpv9KqU1+ioHUzyjhT9bPtpa/a9wjalPhOgfuD8eIvqdMAx5o8t/srw4gLCBPLXpz8R/2jc/4CMJBoCQnaHmI3RU5f/ZXArSSU+1DniqI7JFLv3ccclM8qnhURDEXQMUIskl1ELFmewSdVVv0RSR5+ZLYLEdR1Gu5Vs7q7bQQ==;
 5:O0PyVrUKasvUHPm0rfxrEwkOwlUwReV7EPbhKeqjlJnWI3w4Kf4d39j7VryIOkVZTAVFwvyyrXcesorBrqub+s2BA6hAtn/EfyGCF8OMACBQ4UmLHK3VRRerisfMhEnuApimy1+J1qDQkyAXD6mJoPNai8Pzs9o+Ph3VMkR+xfs=;
 24:59honcFelRC8wPOmPlnGzjDKFiAfkfM/oksvr32xxrJIKWlyiJjGLvU8n94JNwjz9eXnmIY/M1u0pgUrwCOXklwktV9wpC2GhddCJIq7tXA=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB3357;
 7:ghnmSVDMq2kdZiwYoTCoth84dvvZqdwoXTTaBzwb8NTg3njO1JjY6e5Cs851hamQLSO1B+9ANz5JbSGzvDtBAiGAWvbsrSWKw7MF7moCb3yQfVtRD9JMTlh0PSXrDm73T1m0tej3g5DoVzhCdLgQvGYELBDKAUqqlIYu3DP1DKX0O+QeeUBm5pdRVIMhGQxi1ZY3T0USZtoAd5hhvM58mdG8zTqUbSDdm35k/zrltJhXvIkLM878omw6TyScyOfK
X-MS-Office365-Filtering-Correlation-Id: 5be7ea54-5c6c-4ab0-df70-08d5a56bcbfa
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2018 20:34:30.0874 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5be7ea54-5c6c-4ab0-df70-08d5a56bcbfa
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3357
Subject: Re: [Minios-devel] [PATCH v3 19/43] arm64: add shared_info support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxNi8wNC8yMDE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gQWRkIHRoZSBz
aGFyZWRfaW5mbyBwYWdlLgo+IAo+IFNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamll
Lmh1YW5nQGFybS5jb20+Cj4gLS0tCj4gICBhcmNoL2FybS9hcm02NC9hcm02NC5TIHwgMyArKysK
PiAgIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvYXJj
aC9hcm0vYXJtNjQvYXJtNjQuUyBiL2FyY2gvYXJtL2FybTY0L2FybTY0LlMKPiBpbmRleCA5ZWI3
ZWEwLi5mYTM0MDZmIDEwMDY0NAo+IC0tLSBhL2FyY2gvYXJtL2FybTY0L2FybTY0LlMKPiArKysg
Yi9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4gQEAgLTI1LDYgKzI1LDcgQEAKPiAgICAgICAuZ2xv
YmwgYm9vdF9sMl9wZ3RhYmxlCj4gICAgICAgLmdsb2JsIGlkbWFwX2wwX3BndGFibGUKPiAgICAg
ICAuZ2xvYmwgaWRtYXBfbDFfcGd0YWJsZQo+ICsgICAgLmdsb2JsIHNoYXJlZF9pbmZvCj4gICAK
PiAgICAgICAuYWxpZ24gMTIKPiAgIGJvb3RfbDBfcGd0YWJsZToKPiBAQCAtMzcsNiArMzgsOCBA
QCBpZG1hcF9sMF9wZ3RhYmxlOgo+ICAgICAgIC5maWxsICBQQUdFX1NJWkUsMSwwCj4gICBpZG1h
cF9sMV9wZ3RhYmxlOgo+ICAgICAgIC5maWxsICBQQUdFX1NJWkUsMSwwCj4gK3NoYXJlZF9pbmZv
Ogo+ICsgICAgLmZpbGwgIFBBR0VfU0laRSwxLDAKCldoeSBkb2VzIGl0IGhhdmUgdG8gYmUgZGVm
aW5lZCBpbiBhc3NlbWJseT8gQ2FuJ3QgdGhpcyBiZSBkb25lIGluIEM/IE9yIApldmVuIGJldHRl
ciBhbGxvY2F0ZWQgZHluYW1pY2FsbHkuCgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwg
bWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp
c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 19 09:58:52 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Apr 2018 09:58:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f96L3-00067i-Gp; Thu, 19 Apr 2018 09:58:49 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=7ogj=hi=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f96L2-00067d-Pr
 for minios-devel@lists.xenproject.org; Thu, 19 Apr 2018 09:58:49 +0000
X-Inumbo-ID: 1babcf9b-43b8-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::60a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 1babcf9b-43b8-11e8-9728-bc764e045a96;
 Thu, 19 Apr 2018 11:57:45 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=PdNDoUD6zsH5TkC1jiH5s8d5UocpSz/RBAHaj14r8KY=;
 b=Gtk6R1i7ZDNO8O/DgxXG+EN7WT20KJQYjb5m33v1wsV7+IkjwnhBPuAlxZyYJXkICccG2BrPxwUt+C+ZX5kY0K5tKxRCR/y9zO1ejnQgum2mWb2aG8pPuy2r25c8XOcd4S0Ml7rj4mcxRJDkzY8Uet0PMfDw/w1aHqFutcm7mfA=
Received: from VI1PR0801CA0042.eurprd08.prod.outlook.com
 (2603:10a6:800:32::52) by VI1PR0801MB1598.eurprd08.prod.outlook.com
 (2603:10a6:800:19::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Thu, 19
 Apr 2018 09:58:39 +0000
Received: from DB5EUR03FT028.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::204) by VI1PR0801CA0042.outlook.office365.com
 (2603:10a6:800:32::52) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.13 via Frontend
 Transport; Thu, 19 Apr 2018 09:58:39 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT028.mail.protection.outlook.com (10.152.20.99) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Thu, 19 Apr 2018 09:58:38 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Thu, 19 Apr 2018
 10:58:15 +0100
Date: Thu, 19 Apr 2018 09:58:12 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180419095811.GB29673@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-8-git-send-email-shijie.huang@arm.com>
 <db21455e-a990-28e3-1a0d-3603a4bdbfc0@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <db21455e-a990-28e3-1a0d-3603a4bdbfc0@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(7966004)(346002)(39860400002)(39380400002)(376002)(396003)(2980300002)(438002)(199004)(189003)(106002)(316002)(8676002)(6666003)(54906003)(16586007)(1076002)(2906002)(305945005)(97756001)(508600001)(23726003)(26005)(6636002)(104016004)(58126008)(72206003)(8936002)(77096007)(7696005)(39060400002)(76176011)(6862004)(126002)(4326008)(6246003)(186003)(11346002)(33656002)(47776003)(336012)(476003)(46406003)(426003)(86362001)(486006)(50466002)(5660300001)(356003)(8666007)(446003)(106466001)(229853002)(55016002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1598; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; A:1; MX:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT028;
 1:ZuQrtpsid6hL/DfLJ5oBsajL/z+qeRquWZ5n5f4z7UcukCq6jpmpLXggDcC/rcu94WzxBSTRckxgDQINHnQx1kWbvosYE4MqhkvuQcLT9CAjLoL1dCb8+Ychbe/7lXsa
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0801MB1598; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1598;
 3:SnjrY9mtMJG/3+zvekLsrAbMu65SP6GQPWMP27ZVmW4i/yp/Laz0475FVwxgAKHIklx9ipog0d7WgpfYxh2LKnEBrbrTE36+wt9wCnGVkZBixVLLqE5Qx9wyMYKBZPfknE7ZjksBux+tgDUs5kqztrCOYViyp3jxCqJo/oRx1tbALHhQTIXaHHvgU/kr9bHiLB5ABUMqdqeXP9V6ToFPytEeix48v9X+ukOdA9vqpEod9iSELr+Ml4zBpcJNMm2dtN7RMp/DcavKPVtPTBJI2qZsejNdwFr8jMgm+uOND5Dcbsse9azYph+6WNKAOBgdMBSJlnaAzP6uFTxsmmGwZC5YRCaRogtKLo2lRMhVyHs=;
 25:35BhDoc98Ulk1Pv11mk3BXS5Tz4TQu2bL59CKf4L+fnNrL4WPlQqZB9J5+4SUQwahIa1U9gw9JRb5hlZyxZruJ60R17EWPwVjODAYuKaaANULNLXx006glExqDSmz4lfz14wM/GQN1ccmL6hm86+al6Zg5ZGuGNyg19l/mjUTrds4IqS5ZoikT11t9dDRDGxitP1AArgXKfMHUhnajykjE/GfyQ9OPxI/H3wJ8Epuh2/bQgR21RjB1/K8mmNRUxD6mR5RZB0K/RqU5jsgckHxpuOIXuEDwuT8A/J3/J52G/ZGTQm3UfMgqu8xfycaJdTTXC0bchjZ1W79SnoGunlTQ==
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1598:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1598;
 31:CPKg3rNq6DcSM37A3U8XUUJuac1ZLs9DUvyt5aSl7ENkzjWahTEIF39C0nRC0rUbsuIPntxELrOJsTXueX6UOJN9Qvq2NnSUsfCKU9pbD2PFSBCeJEG79bT00x3BlVYPbu0rXR16Yg5yZTgUUOrga79wSKz/EPIMs/pODUNs5tS8d/k1LevHvz/8nAAgpn+0bB9+EKl+4SNiX5+zelmHz8R/CiBiwGfO9UgpFsPz4gE=;
 20:ehsqB/He0qsjL1Z12mzFLg6DYieTbsrW6xPhitTWKvWxxfKdCHHSbglj4ij5rPqIN1eYo7CTL8Byoc738aUjugwQMFjVCFM0vIIP2qzFjStJVMiSRP1DlUXLT0lEOY30JA6WXlUqUrO03PUHRMFId35Ke1BZZRzjLW3R/BbnSacFUwLQ03LrXnYKe8vk7Q88WlGzWMU5sThCbfIPzqlmzuAZ/dQJO8imbjs8oNIrLLKLI63syAZyQhruCJEE56/e4AVTKWs7iwY1V/6gsd6xA94xlDtVKEpSmvFLofWS2ehMq9v95BhQd95QNPT1tZf3hjIBNqkVdfWg0W8y8r5BIAR+M3Y7ead7Yuufd9Eej/M=;
 4:Bh2SGSFQU8WssSP5/IJg27bQ9qZF+MHBGKjfCARzqcaINkg6Z+aDrWbpb2nlwbxnB2E06NIps03MSPVSquLv6BcMDvFhwiNRy9MIP3NB38ahmqSJbYxk18zFjjqeuyhfnql2KBDM6Cx6P0yL3IHDnX2GUr1QQQKVv+tV4Q87mGm2lHnbT9sqFVHVO6tBf7ykalJNPGBNNrdlehkRI8qHbotAIEZohZp2jyREiyDZ44ZbK7RyBJ0qvFQYNg8001WR80JOpXDqkRiAcOg/vvuvHA==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0801MB159817DFF6CC7994A834CF6484B50@VI1PR0801MB1598.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(3002001)(93006095)(93004095)(3231232)(944501327)(52105095)(6055026)(6041310)(20161123564045)(20161123560045)(20161123558120)(201703131423095)(201703011903075)(201702281528075)(20161123555045)(201703061421075)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR0801MB1598; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0801MB1598; 
X-Forefront-PRVS: 0647963F84
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1598;
 23:9kqJ7NayR6MxjszP2gO0SHkoL4WnoWRU+kZX+cZ?=
 =?us-ascii?Q?YxCcr4KBj882GIGslgNs5vouLvjH7Xsn8npQNheb9G1up65DqGzBwfkq53Q4?=
 =?us-ascii?Q?fl6xnsj/XcLuJU8qu6nLxRSdYr9ChFfySdY+rIk5wz3DJCaAxHMdwXITIFax?=
 =?us-ascii?Q?sAaDmcDUz8eTqmRLuXD0sfXKzYKnEDakyFnnBeuVB/Ys37TYltJ9B+QX3Yvy?=
 =?us-ascii?Q?bBeFiG1201UnvjJ43f4zzTjWG2NY2LPgghJNdeUvisH2RrZelYleoRUNTq9X?=
 =?us-ascii?Q?WLgpoYveSAewWy4f5wEZ6EEsjul9NBCdOZm/+HPPBAuJgWDJVjdv+xdR+4WT?=
 =?us-ascii?Q?e6RoQz1yhQGTeshO0J6VFpBUw5oiBtK6l3VJwbmbl/7FyxpWcGhQdGmSHqkq?=
 =?us-ascii?Q?Q+gU2hYkNYlYAplMyYeLf/MthULwAifoydhBQGYaUGIX/BKmn0uLkfHXIMfZ?=
 =?us-ascii?Q?Mwibd18cxKVH3E8h0Af1DB/2IOXJhwk+91V8d9JSrnQsSTnZ7ORv2u62lzc2?=
 =?us-ascii?Q?h0XyAaMoDNQjOQnv5bou9l/wcSWJfvYJkET5emXEiApHFs5sBwidqpOcpvS2?=
 =?us-ascii?Q?zYhScLpD8xDPNpao6aHEk0QqQUhYtBuoAVuXuiQ20XagfsK9uzqFlels+l7f?=
 =?us-ascii?Q?5uXxkYxoq2U+rEejbAqvMq/TI6lbH4yqm/aqonB26zqSZ4BVXaDiPU/tqTOv?=
 =?us-ascii?Q?ubxU3EOMDFTOkw7KMqcVqdy1XpTbNbstc7w9JxvCRhuPPhcO5U57YNyBem1r?=
 =?us-ascii?Q?QtSf8Fwg8WjCOKAUi9qac3LZdPCeFRKZxz4TXSFYOx6YyKspLIB9xiAaXPbL?=
 =?us-ascii?Q?ChNXuFBS2CDQlJ46Hu9ViKx65GADLcCSlYFixdxZIYZrqYm2fQttuNVp8JkO?=
 =?us-ascii?Q?G/jSa/XOvFcF8w3NcSZ235gpmC7STg5Ko0wkTOakP1NZ9Ty1TisYzuX8x+N9?=
 =?us-ascii?Q?Mf8AIbFWdjakrMaAfTu5Mp6GHCRK2nlEc4Yw9OpiSi+A0FGSLZJqid7m9tsf?=
 =?us-ascii?Q?6mJreZH+Bp1bNnVj54W8MLC+Y9iV4Iq7bC5B+SX5S+Zj5QceHgVMSblhl62O?=
 =?us-ascii?Q?jM8sMhqQsl117soENY3Q+HxRGMTqdagPDHq0Xvw04YIG4WTARf6mXmouz46u?=
 =?us-ascii?Q?S7+aU3k6IDVYMVPaELCPR5tv7OK9kS+M/ZX/DKX9aLxiPJOrvoN4Ie5iqAF4?=
 =?us-ascii?Q?P+RxIZjzEiLh5b6yoF0KGGLe2+yb2uJQp6DSlQ+/44WPYZwyr35K7LNUGzA?=
 =?us-ascii?Q?=3D=3D?=
X-Microsoft-Antispam-Message-Info: VZGoyfhle5x+jY7MH8ZGzDpGd3oAxOQOudm+3qrWjwi4O0gr86wFeMzU7koXt4sJvBMsVHQutJ3div7MkKeM3eX1WyneUmEwM2h6FSOYjy1xwxl7FyJxptcJO0nC+7bZYVxzGuhznD06h3n79u+XvuGOVjdSTAE2p8aO/6hmc0Ig8BdNXH6LkNMGC2rLyqHMhebjiLoHIE6ZYQOL5Gj2r5/uoVzqB5BpwBiGwWYbDqizoz/m4x6lNcSQXNgK93iB8uyQngJtCZMdLWTj4YbG3stiDW9CFOUMjcKbSr7K4FxBgcXL3qUS4Sa/vdCi2sO32wXKd+LzH5fi5GM1mAVC/NCpbkJ055E31W1TvMgPb9kf5RiTRl+MvnA4C74XhDK2HGHeCDFkRxBYiDZ08zK15eSd2bwkXCQwDyN7ZjQqdtQ=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1598;
 6:IEV/kN0cxo3htucl9HL9jtzxJSA+zrpQ1WbY95JX1G0/dI55X1nDlPlesOs/n3hi+BrqHDD884qKeD2elCupi/mLhutBFxns/vTWzq1RE22xei2wREHNNqJVe+H//g+cRINnfF9yqztXYS8JIyibl97y5YjTY8wTERwHJKu6nlViCkNrhxiWwPSicKh+Cv8rc2jRABnS2RWZcgvDDZHnUXgO+IDlHz6hkiEuVzdB+aahtSlO/IS/uUDg2idlk9XUzutkT/Ly0rqrSwq3IAmpqesZ1vqI1CNpuSk0JzDXAdKUb+6bcRfn/uFr3r5nw2rCLbwRirBLCtKR3nIZm27RfTr5tIMb6Yw96PqxzRPBwuAdOccX7yF807Nu6GsSuGfs0XSyQi2GiJtSEQma370nCvsxCF0Thm3HxB9F3D4HkjiKJnATxaPVbSNk9kqxxbzfkSN2NXwAtlpaMRAS6Pb3NgIFAM6YP796j6jDaG/YB7uiD37HJSrOmB+pdDAkiXMz;
 5:K9JBsf+FXdSZd1ruWd01PHwawGB2E1dfL+vHjrKwPqoC2/vG3WARPlsx4+v+nVJ6aF+is+0ykaz4hNppV+zMXBlrwmOI9tpcuvR7vPhODFGPozvYnQbhWwjG1WY8ekovGud9jPoJwOUxHwVg/G6pTTLl8vX/L0u5xiY8ulgRH9s=;
 24:kha8kQfUZEkI00v8N/5TZwP/OXI4hSjewvBBRFF76k91CvyAMdI4MRaPvtUibCzzxKfpI14/5TDa8AREQ3C1zE+uXNqfKTSILRMc52Zw5Kc=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1598;
 7:t6xws1bMP0G9LVu6n9FR/T2/S27JOg1WiDOMjaEm+S/jJby6gX+l+DFJWP40yBwonEL/oKwHHPNQcxkXnw8Zr2nbARQvqBcgiCspuDS4LMz6uz+WdAKr/8zPuL8dEgR6cgI/vYinIJUfxVs3nZSDbV/8G0dbc2SeUxa9rC3DaJTpeVILVGEuWVj/S8N/0N1QNj4imfApyT/ZmVJMNNqWRGQQ2SBsWvJztQ1CQyC/i/JzAi0g4TdcdghHNLTs+6+S
X-MS-Office365-Filtering-Correlation-Id: bba00801-b2d7-4ae8-1c72-08d5a5dc200b
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2018 09:58:38.9436 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bba00801-b2d7-4ae8-1c72-08d5a5dc200b
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1598
Subject: Re: [Minios-devel] [PATCH v3 07/43] arm64: change
 physical_address_offset to paddr_t
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMDU6Mzg6MDZQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+ID4tdm9pZCBhcmNoX2luaXQodm9pZCAqZHRiX3BvaW50ZXIsIHVpbnQzMl90IHBoeXNp
Y2FsX29mZnNldCkKPiA+K3ZvaWQgYXJjaF9pbml0KHZvaWQgKmR0Yl9wb2ludGVyLCBwYWRkcl90
IHBoeXNpY2FsX29mZnNldCkKPiA+ICB7Cj4gPiAgICAgIGludCByOwo+ID5AQCAtMjcsNyArMjcs
NyBAQCB2b2lkIGFyY2hfaW5pdCh2b2lkICpkdGJfcG9pbnRlciwgdWludDMyX3QgcGh5c2ljYWxf
b2Zmc2V0KQo+ID4gICAgICBwaHlzaWNhbF9hZGRyZXNzX29mZnNldCA9IHBoeXNpY2FsX29mZnNl
dDsKPiA+LSAgICB4cHJpbnRrKCJWaXJ0dWFsIC0+IHBoeXNpY2FsIG9mZnNldCA9ICV4XG4iLCBw
aHlzaWNhbF9hZGRyZXNzX29mZnNldCk7Cj4gPisgICAgeHByaW50aygiVmlydHVhbCAtPiBwaHlz
aWNhbCBvZmZzZXQgPSAlIlBSSXBhZGRyIiBcbiIsIHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KTsK
PiAKPiBXaGlsZSB5b3UgYXJlIGhlcmUsIGNhbiB5b3UgcGxlYXNlIGFkZCAnMHgnIGluIGZyb250
IG9mIHRoZSBudW1iZXI/IFNvIHdlCj4ga25vdyBpdCBpcyBwcmludGVkIGluIGhleGEuCm9rYXks
IG5vIHByb2JsZW0uCgpUaGFua3MKSHVhbmcgU2hpamllCgpfX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlv
cy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3Jn
L21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 19 10:02:02 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Apr 2018 10:02:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f96O9-0006jo-Qc; Thu, 19 Apr 2018 10:02:01 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=7ogj=hi=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f96O8-0006jj-5Z
 for minios-devel@lists.xenproject.org; Thu, 19 Apr 2018 10:02:00 +0000
X-Inumbo-ID: 8dc55d00-43b8-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::62f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 8dc55d00-43b8-11e8-9728-bc764e045a96;
 Thu, 19 Apr 2018 12:00:57 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=tSruhCl+3Lni17uCX2tvGTU25z0pzJ2ih7nvNjp3v2E=;
 b=oSZS2CDiGrB7Opkm+oDut/l0jfK0A0ocDzm9yx3vZ4sfNe2bqcRwFJWmVEDZO7EwLInJ7pexpkmY7ToBCEUlIWvHnbth5PgJaNuOVIkFLmwWQQGyGlOsLT4Le7uEwE5HaNSiN580ioXmy7RGosQtFKXCukQlOZUfIgogJt45qrU=
Received: from VI1PR0802CA0028.eurprd08.prod.outlook.com
 (2603:10a6:800:a9::14) by VI1PR0802MB2429.eurprd08.prod.outlook.com
 (2603:10a6:800:bb::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Thu, 19
 Apr 2018 10:01:50 +0000
Received: from DB5EUR03FT031.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::200) by VI1PR0802CA0028.outlook.office365.com
 (2603:10a6:800:a9::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Thu, 19 Apr 2018 10:01:50 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT031.mail.protection.outlook.com (10.152.20.142) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Thu, 19 Apr 2018 10:01:50 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Thu, 19 Apr 2018
 11:01:24 +0100
Date: Thu, 19 Apr 2018 10:01:21 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180419100120.GC29673@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-9-git-send-email-shijie.huang@arm.com>
 <7f8bf41b-4add-296a-cf5d-0a7cb1953d62@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <7f8bf41b-4add-296a-cf5d-0a7cb1953d62@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(7966004)(39380400002)(376002)(39860400002)(396003)(346002)(2980300002)(438002)(57704003)(199004)(189003)(104016004)(54906003)(8666007)(46406003)(4326008)(53546011)(6246003)(186003)(6862004)(39060400002)(106466001)(26005)(77096007)(1076002)(86362001)(23726003)(76176011)(97756001)(7696005)(11346002)(305945005)(508600001)(47776003)(356003)(426003)(446003)(126002)(106002)(486006)(476003)(50466002)(72206003)(8676002)(33656002)(5660300001)(2906002)(58126008)(55016002)(8936002)(6636002)(6666003)(316002)(336012)(229853002)(16586007)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2429; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; A:1; MX:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT031;
 1:VIHoJdZPaIdUqz1wkJsbNWnFp2EQCQyUZxxzxmkQW+8JZmFPceHu1YOrMUp+ukCiH1scCdKIh+uBgdaDlw+2MmJTCXsCYigF9kSLJrIUC7/AhJcNO7skjR7cDl0AgXLw
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2429; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 3:JvrN5c3aQJQkU6+lO6dw3OM3+4gQBiyfudTH4HlkGg9qCxMb/CMe0B/QIDajsmycEe1VyU/tXrf2tRU1PBvGvQ9qe8hlALXEtFaDdyM4Rxtjzl7OSNQWRGFYz84wSfiJSvhvnRgXOQAR0ncvZXYOJCuPw81oYAidVD4bK/t+myE8aSLBs6o5UJWDPuLJWm4FeNICXtQ4U9cFv8v5gov73Ogd66hoFrl2iawAGicCqh6Ao9cavwjjHPy9o0iecmu/ST+aEvU0qc3wRXgG0UUHAAO1wTRcmui+NroK+fB2GvuARA0w1yw/5GqZ6GUoCa9tI6+5R/qrF9CQ7DUeW8tL/Qea35uNFU9YOjPpbBZBSEc=;
 25:FXkWVAQeIDMPF3F4+e6rld2UaGshFRm0PXOfyD2c5kBv5gY1/M+9Qwh07mUnp0fUFdIgUDppyMuX5IMIf2DzwLG5l7pjouhQOrN7qWy8XPjggiSSJjlkuFhcZHee7S1mwMiwYj7RPFjEbZFC9oWe7EUrLAFQjpy84GgMI2zPvqfYPRMI2D69yfoO3ufg6rYdP4OaEysxnZmiCK/Mk70g4eXe8liRVe8IGYrVh/EEvZk6xsHu6nhLvflQIRQeUawPfabnCYLCvWj30me4rjpj84cUqyEYYc6Bwrt3XyR4NqDIzTRVZV7uI1hbiZr6Cp5/4VrUIKpSwkdlw+2Av2n/Qw==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2429:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 31:/I1h2+H21rCHHMmbc+GYMutSe+UQtMxHv7XY930FknY4zBMkCnGXCmS/7PnmqFQGV5t+qr4kdnvuoRI1I9YUKhaK9C/PFp+aItm+SfFJBFF3erJk3YHn/q/4fpTbOykq7WaR9MYUsZADPUCWuACOgk8FOb8MpmaxI0ITfEXG0s+vzSlF7m9i7S30pQhTZDbMWQ+/gGPfA8sGy9cRF9mZfhV7NjuPiAZ4fySddN/t/QY=;
 20:tHs6hdMeoszNMmDd+QMCOYnItZGi8kX+qPK3g2K3SrR76PBCIrGhpZZkDpFsGX/GT8T39fvf+UfAKfluazYrhhnwB5gzRAcgYyEaW+Z5X/94zG78RHNiA31Em0Tfqc/o5Cvd5HDb63aJNTXiOpoTnQof1nGPhDcgWQGVKARUbKl30blYzV6xDbZydrSwxJWN0jNHgFoMXbaNn6+GrCYfcrZilFNQZeYD37+wsWN1Xxo20cTtg1LYCfg/LHfKKOlXUP8r5buGPfnM5ZPf+riC5uTCEtjBpScwbOYd51lGt3qlLxmSoEUXARZGmcnUT39++O+OPKYrKVJZKx6f4QGKCh4eL2Kw+NIczkFpz/2ZRto=;
 4:i4/FxT+ZnbWaKzpm4yGtoSet6/s7EIam7pniTmUJroYawDvZBlNBI0mth2Ou8xf9YCoGoLjInT+6C7XlOrhfH7i9xV6Xq8IdCYx5J7V34YW3hR6Rfbak0OvrNtPF0UzuOaOOXH64/aiaF97KXBFhd9p8N6Nd3jZfLHJz5UTeUtqXZA9ZoA3tlYBtMYTN5JyOloEi2zrIsh/CX5fcsdds8vSxOUp8XoU49DJLSM7PumXeLUXRgLdeYnxAVF4kOU3htkDCbKFAv7oTav1i6RlnY38NYtAUKySvsREY93sG9YEPxkwFGSCNab+5CZR145LI
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB2429497D99D5A6511EE7FC6D84B50@VI1PR0802MB2429.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231232)(944501383)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201703011903075)(201702281528075)(20161123555045)(201703061421075)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2429; 
X-Forefront-PRVS: 0647963F84
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2429;
 23:hSv3v2UydzANQiQSakSA8leGNhBE+0rW25/4GL+?=
 =?us-ascii?Q?WmnXsl3uIa/NKei6kM/dbmZdMZh/7F/FgadlkTgDokiyj3WMxbGCnPzqaZ9B?=
 =?us-ascii?Q?v/OWLpvzAVwlYhushhQ+fgXGjWpNf+XnQzqikATIHAyjJu7sIhOAfYubGHq6?=
 =?us-ascii?Q?Q8YX792+WYP+Ds/mAOBz+hdyKfb8qrXucvQHyhYZb+jpu0X+LhEUpIUHIDcF?=
 =?us-ascii?Q?rGPiJy4BkvuxEZfXe5RNvNbyJHXSLAd7MH8nGdoNyxffLzyfAaOhB70cazEi?=
 =?us-ascii?Q?pSKM8J2cB2DBUmzlMUgKLE6iR/fbSmrOm6joGgU/y+y8pZbsjtgmNUjd5IBh?=
 =?us-ascii?Q?M+2g3aTnBHTblQvhaRC2mmg6v8s1NmexNVqYnnMHT3sX4NAC+VdPsmI5I9/e?=
 =?us-ascii?Q?nSA477WYP2kCvDGEoTL0KL0sW9Vdyw18FGtzUR12S5x2FZfc9OCCVXHLgHdV?=
 =?us-ascii?Q?ECXlbeIauqJ5qVmE6iS3fbds+7oO7lp7Dksp/vqOBFJSKr+9yyut4ofcDda0?=
 =?us-ascii?Q?H4fr++exf/nmNV++cev/1vJnpH5apLU/VxjMaLQh9hkJDGOpBvT8jM2g0Wul?=
 =?us-ascii?Q?kW7mKSWYufWklNl+ZlrRvsbrOr52cCPsQY+wAMFqPnkFTLVjCLwV01GMKrMy?=
 =?us-ascii?Q?5+D1FwS6n6RP2bBhOngJFuLxGtqobkQ7ZIATIheIhXWpXVmlCT9fLPKLrtom?=
 =?us-ascii?Q?hBniww/iV8EaHNlPBdjC5s6+3XWuUmyIoi61fC3iW8e6GVNjyWKIx0DoccU0?=
 =?us-ascii?Q?tky9PAMO3PEAU5EOhO2CDY4TAzetDKmpw2BkJHrMJaAhIV9KybQ9QL/N49ce?=
 =?us-ascii?Q?CqMMYISQZPXOojWmRbTXmq55PpCKZ5qhJK5NImJR+0Amgj8VDHPBxX0lhGIN?=
 =?us-ascii?Q?GwR8GBDawRQY6PV2wngJpNP26WFfYWK9W8RqJBZkbQ9FEPISOGuxBsSn4z85?=
 =?us-ascii?Q?74enISVt/Lt/BqvBP1PEgqh6flGlWs55pPpmlZd9ExhPjeSXvva21VJaEYeB?=
 =?us-ascii?Q?Iu3gy7dt2iTHeRwN+adGhjksb1rfVKdAQ/JdjzKqx33hUy/FWzTT2C13MVxI?=
 =?us-ascii?Q?Hz+00HDnjj6DN83QPWmYX1P37gFU662CrduoLh/OKMgBjTsnYkdI+V/P0B25?=
 =?us-ascii?Q?yaBSZeN3uEl/O/hLW4WzZyO/WEtTS5sN8vMjuV7u9Mt+ECiPtSTHcwrWOP/8?=
 =?us-ascii?Q?zso3QC0nGzAdF0342JR3hGeOdwQnmEsr70cyFvZYI58YuF92NkWmd8LqwCUz?=
 =?us-ascii?Q?vpCq/j94y/p41HWBEpUvMyOoZc+xO/ofI9G0JxELc?=
X-Microsoft-Antispam-Message-Info: 6cK8bNmoJGjE32l038u9BI9YXbWb2uHGYVsQFh4qOV9sW5OknPG2Q09WR+yBdjCc9CDlwYPbtYCINeiTYVtjEhBuwXksPmYTonX0HpyIozN5qC6aUyKrkdxjmVmKcNNLdPkfanS9zg9K4fwXz0dKM6qkd4RysXJhIvSagDvQNkBkSEWCvfnIPeqkWLgdgFPRYOh/UwIhR9tPSNF7ZgKVuxIEGkevoVpAwlFVAJJrJj4BJgv+N7I8YT5pM4B+UqJmtVPkUmQDO1ILzTPPM3P2yvSTXcSupyHeu1z42PW14QWGjjA2yGUW/MwWZfXeUGd7KX5wADCrRWGkD87c7V3mp55w1TfV7zvOBcQYwxPjVvw5cVxkqHn8yYjgqj/d9bcMOlCWAQRXA69saQN3KY8KEyWHoHXZZ2LvS0XjHm+ps2k=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 6:v4nj8kpwDaCHAzKeiHJkNYUEyvD81PDSQyRX9gnEESAThl9Z4bob2r/tmyQCv/DbcHJgysaJqm79OdERYEhmCW/KTt0ONZvDFJV8c90xRMYS1mIdv3MRSVcXbVDdwKcRGBWDge6T+d9xPK29viITp529G7/jUGvzurGNSwC4ChkCjQ8X2qa3n2bIel5jqw5ijoOdHws8NrDuZDHDzNFKdS+unqwPcT7WyhOS08zq4i2ZjTtdsnEjJSZvZ19dqDAaWRXTIE2F+5IjD+RWSZo3qyoI6yt48NvB7ubDA7n0PMkJ/wwbqLGWGcuPWXDmDSl/UUbxa9eg7cVFVEJWW9yHD+mLmdsG6dU70U2zGoKAdiovwSmt6bfybaS5R+0+0XVuwCPnBLIZRsCrbTKW8t/gNUgpkSEzzVamtPCNG2Z0KdlKAm3YmMiw0QdGOt8qsXzfNdS3KuKK8dKqaKxbZ1627XeV3Dtxzov1ktGov+hxbW0EgpZZqG3ES1B3JirhHoub;
 5:Thl4XP7lDSsj/MnUsgJ6shRuBTjy5daTvp/FFPfh8goBt1EBHtCVO5S52uZrwRiF7p9TEMmuusWOAvl91u2HDWMnixLDgXJ6jdrKwZwizzt1fqNr6F+J/99I5reahxSyOQ99wYCH2q08KKRmMxCBXz+L0bhIW2dxB4RlQvZb3vk=;
 24:ITjwHkfDyGsMCcQHtUFZf/8RmFAIoH8ks0o/FrLjcwVrHPOWLJ4bfpWVA5JIBLpsYoq9EyLaZJckX3eYg05U1d8bhKmpbOhqzEoCcT8le14=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 7:hOil0d8KFbhyYJDTi48p6nqchSQzt6sF4g92eltcBINpCIFgTrRVuT0/ud4ZD/fuctoawFnAh1l4QkmFXUa0bMWf2RE7qLK0f+UxdECVPX9H5l3G7rCBT1Bpz+JM9oWqh2rNrK54dfzVdrF5+MLlb/8Q1Gz0+3MSOC3kJ49Hz+Yl7W5mrD9+mEIudjpWMljplDpMXZfEu49se69ppFMeIYlFehdfVg/wVjUhq2AoZfNMlIRRophQ6mkvz6fu5KI2
X-MS-Office365-Filtering-Correlation-Id: b99ff806-376b-40eb-a391-08d5a5dc921e
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2018 10:01:50.3319 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b99ff806-376b-40eb-a391-08d5a5dc921e
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2429
Subject: Re: [Minios-devel] [PATCH v3 08/43] arm64: fix the wrong mask for
 to_virt/to_phys
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMDU6NDI6MzdQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE9uIDE2LzA0LzE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4g
PkluIHRoZSBhcm02NCwgdGhlIG1hc2sgMHhmZmZmZmZmZiB3aWxsIHRydW5jYXRlIHRoZSB2YWx1
ZSwgYW5kCj4gCj4gcy9JbiB0aGUvT24vCj4gCj4gPnRvX3ZpcnQvdG9fcGh5cyB3aWxsIGdldCB3
cm9uZyByZXN1bHRzLgo+ID4KPiA+VGhpcyBwYXRjaCBmaXhlcyBpdC4KPiA+Cj4gPlNpZ25lZC1v
ZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Cj4gPi0tLQo+ID4gIGlu
Y2x1ZGUvYXJtL2FyY2hfbW0uaCB8IDQgKystLQo+ID4gIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy
dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4gPgo+ID5kaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0v
YXJjaF9tbS5oIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4gPmluZGV4IGM2Njg1NmMuLmY3N2Ey
MTAgMTAwNjQ0Cj4gPi0tLSBhL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAo+ID4rKysgYi9pbmNsdWRl
L2FybS9hcmNoX21tLmgKPiA+QEAgLTE1LDggKzE1LDggQEAgZXh0ZXJuIHBhZGRyX3QgcGh5c2lj
YWxfYWRkcmVzc19vZmZzZXQ7Cj4gPiAgI2RlZmluZSBERUZfUEFHRV9QUk9UICAgICAwCj4gPi0j
ZGVmaW5lIHRvX3BoeXMoeCkgICAgICAgICAgICAgICAgICgoKHBhZGRyX3QpKHgpK3BoeXNpY2Fs
X2FkZHJlc3Nfb2Zmc2V0KSAmIDB4ZmZmZmZmZmYpCj4gPi0jZGVmaW5lIHRvX3ZpcnQoeCkgICAg
ICAgICAgICAgICAgICgodm9pZCAqKSgoKHgpLXBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KSAmIDB4
ZmZmZmZmZmYpKQo+ID4rI2RlZmluZSB0b19waHlzKHgpICAgICAgICAgICAgICAgICAoKChwYWRk
cl90KSh4KStwaHlzaWNhbF9hZGRyZXNzX29mZnNldCkgJiAofjBVTCkpCj4gCj4gV2hpbGUgdGhp
cyBsb29rcyBnb29kIG9uIGFybTY0LCBmb3IgYXJtMzIgdW5zaWduZWQgbG9uZyBpcyBub3QgZ29p
bmcgdG8gYmUKPiBlbm91Z2guIFNvIEkgdGhpbmsgeW91IHdhbnQgdG8gdXNlIH4ocGFkZHJfdCkw
IHRvIGNvdmVyIHRoZSAzMi1iaXQgY2FzZS4KU29ycnksIEkgZG8gbm90IHVuZGVyc3RhbmQgeW91
ciBtZWFuaW5nLi4uIDooCkRvIHdlIG5lZWQgdG8gY292ZXIgdGhlIGFybTMyIGhlcmU/CgpUaGFu
a3MKSHVhbmcgU2hpamllCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVu
cHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv
L21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 19 10:09:37 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Apr 2018 10:09:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f96VU-0006so-E9; Thu, 19 Apr 2018 10:09:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=krwd=hi=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f96VT-0006sj-RT
 for minios-devel@lists.xenproject.org; Thu, 19 Apr 2018 10:09:35 +0000
X-Inumbo-ID: 0a040955-43ba-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 0a040955-43ba-11e8-8249-2fda3a446a53;
 Thu, 19 Apr 2018 10:11:35 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 7B02480D;
 Thu, 19 Apr 2018 03:09:33 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id AE7C43F487;
 Thu, 19 Apr 2018 03:09:31 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-9-git-send-email-shijie.huang@arm.com>
 <7f8bf41b-4add-296a-cf5d-0a7cb1953d62@arm.com>
 <20180419100120.GC29673@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <b0855a33-7ebc-616e-2ae1-8c29d4b94bfd@arm.com>
Date: Thu, 19 Apr 2018 11:09:30 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180419100120.GC29673@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 08/43] arm64: fix the wrong mask for
 to_virt/to_phys
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAxOS8wNC8xOCAxMTowMSwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFdlZCwgQXByIDE4
LCAyMDE4IGF0IDA1OjQyOjM3UE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4gSGksCj4+
Cj4+IE9uIDE2LzA0LzE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4+PiBJbiB0aGUgYXJt
NjQsIHRoZSBtYXNrIDB4ZmZmZmZmZmYgd2lsbCB0cnVuY2F0ZSB0aGUgdmFsdWUsIGFuZAo+Pgo+
PiBzL0luIHRoZS9Pbi8KPj4KPj4+IHRvX3ZpcnQvdG9fcGh5cyB3aWxsIGdldCB3cm9uZyByZXN1
bHRzLgo+Pj4KPj4+IFRoaXMgcGF0Y2ggZml4ZXMgaXQuCj4+Pgo+Pj4gU2lnbmVkLW9mZi1ieTog
SHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPj4+IC0tLQo+Pj4gICBpbmNsdWRl
L2FybS9hcmNoX21tLmggfCA0ICsrLS0KPj4+ICAgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u
cygrKSwgMiBkZWxldGlvbnMoLSkKPj4+Cj4+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0vYXJj
aF9tbS5oIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4+PiBpbmRleCBjNjY4NTZjLi5mNzdhMjEw
IDEwMDY0NAo+Pj4gLS0tIGEvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4+PiArKysgYi9pbmNsdWRl
L2FybS9hcmNoX21tLmgKPj4+IEBAIC0xNSw4ICsxNSw4IEBAIGV4dGVybiBwYWRkcl90IHBoeXNp
Y2FsX2FkZHJlc3Nfb2Zmc2V0Owo+Pj4gICAjZGVmaW5lIERFRl9QQUdFX1BST1QgICAgIDAKPj4+
IC0jZGVmaW5lIHRvX3BoeXMoeCkgICAgICAgICAgICAgICAgICgoKHBhZGRyX3QpKHgpK3BoeXNp
Y2FsX2FkZHJlc3Nfb2Zmc2V0KSAmIDB4ZmZmZmZmZmYpCj4+PiAtI2RlZmluZSB0b192aXJ0KHgp
ICAgICAgICAgICAgICAgICAoKHZvaWQgKikoKCh4KS1waHlzaWNhbF9hZGRyZXNzX29mZnNldCkg
JiAweGZmZmZmZmZmKSkKPj4+ICsjZGVmaW5lIHRvX3BoeXMoeCkgICAgICAgICAgICAgICAgICgo
KHBhZGRyX3QpKHgpK3BoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KSAmICh+MFVMKSkKPj4KPj4gV2hp
bGUgdGhpcyBsb29rcyBnb29kIG9uIGFybTY0LCBmb3IgYXJtMzIgdW5zaWduZWQgbG9uZyBpcyBu
b3QgZ29pbmcgdG8gYmUKPj4gZW5vdWdoLiBTbyBJIHRoaW5rIHlvdSB3YW50IHRvIHVzZSB+KHBh
ZGRyX3QpMCB0byBjb3ZlciB0aGUgMzItYml0IGNhc2UuCj4gU29ycnksIEkgZG8gbm90IHVuZGVy
c3RhbmQgeW91ciBtZWFuaW5nLi4uIDooCj4gRG8gd2UgbmVlZCB0byBjb3ZlciB0aGUgYXJtMzIg
aGVyZT8KCnRvX3BoeXMoKSBhbmQgdG9fdmlydCgpIGFyZSBkZWZpbmVkIGluIGdlbmVyaWMgYXJt
IGhlYWRlcnMuIFdoaWxlIDMyLWJpdCAKaXMgbm90IHN1cHBvcnRlZCwgaXQgd291bGQgYmUgYmV0
dGVyIHRvIGNvdmVyIGl0IGFzIGNhc3QgcHJvYmxlbSBhcmUgCnJlYWxseSBhIHBhaW4gdG8gZml4
IGl0IGFmdGVyd2FyZHMuCgpCdXQgSSBqdXN0IHJlYWxpemVkIHRoYXQgbWluaS1vcyBvbmx5IHN1
cHBvcnQgNEcgb2YgUkFNIGJlY2F1c2UgaXQgCnJlbGllcyBvbiBtYXBwaW5nIGFsbCB0aGUgbWVt
b3J5LiBBbSBJIHJpZ2h0PwoKSWYgc28sIHRoZSBVTCBtaWdodCBiZSBmaW5lLiBBbnkgb3Bpbmlv
bnM/CgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1k
ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21h
aWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 19 10:10:13 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Apr 2018 10:10:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f96W5-0007OO-HK; Thu, 19 Apr 2018 10:10:13 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=7ogj=hi=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f96W4-0007OH-W9
 for minios-devel@lists.xenproject.org; Thu, 19 Apr 2018 10:10:13 +0000
X-Inumbo-ID: b34acb9f-43b9-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::62e])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id b34acb9f-43b9-11e8-9728-bc764e045a96;
 Thu, 19 Apr 2018 12:09:09 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=BnJNQyU+twWoq1G3U13BI4TTu8YqvB2tCSW4SsCnn64=;
 b=QdC0izhgJ+FUTG4/B4tvOjNHYu1y7oYVQ0MsY4AXO/OKdkb2PsppIaUB+ac+XdlMsHEjIu/YNs9mjJPXwEqO8SzKtzmg7/c2SaqQ61mqrNnNYqlNzEJqDfLvGq4mq6kgGQNUhdlx/NWJ+CnPaYBR0o8/tx9l8F/a+ljOp1yZhP4=
Received: from DB5PR08CA0064.eurprd08.prod.outlook.com
 (2a01:111:e400:c576::32) by VI1PR0801MB1600.eurprd08.prod.outlook.com
 (2603:10a6:800:19::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.11; Thu, 19
 Apr 2018 10:10:03 +0000
Received: from DB5EUR03FT033.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::209) by DB5PR08CA0064.outlook.office365.com
 (2a01:111:e400:c576::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.13 via Frontend
 Transport; Thu, 19 Apr 2018 10:10:03 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT033.mail.protection.outlook.com (10.152.20.76) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Thu, 19 Apr 2018 10:10:03 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Thu, 19 Apr 2018
 11:09:47 +0100
Date: Thu, 19 Apr 2018 10:09:44 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180419100943.GD29673@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-10-git-send-email-shijie.huang@arm.com>
 <6272136e-0a75-134f-eeb4-1c2e8c1078c2@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <6272136e-0a75-134f-eeb4-1c2e8c1078c2@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(7966004)(346002)(376002)(39380400002)(396003)(39860400002)(2980300002)(438002)(189003)(199004)(76176011)(426003)(7696005)(446003)(6636002)(53546011)(97756001)(33656002)(23726003)(305945005)(47776003)(106002)(106466001)(50466002)(6666003)(1076002)(72206003)(86362001)(356003)(2906002)(39060400002)(5660300001)(126002)(54906003)(476003)(486006)(8676002)(316002)(6862004)(508600001)(4326008)(11346002)(46406003)(16586007)(229853002)(8936002)(104016004)(336012)(186003)(77096007)(8666007)(55016002)(6246003)(58126008)(26005)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1600; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT033;
 1:JJD44/0mBhtGFqaB3Q6JU1d2i4Ktu9SXspwnDZDQlURpUGBPBZB+7XqHWdZ7gUM/QRuHGfxgyNQtSih3DYXumkogiNsBiKayIeAtKq/MZRD1ju5ogCrVwnRiROWgxWN/
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0801MB1600; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 3:ktAAQosFKm1nuZFMAc3iqyO+XIVZsA8GZgQ72l+4UrsQxkTo+hLbtEyTPJaxB8Zh06o2vWGLTMU+z/pbNpp3nIdYb8pmlX9HvOMw0i8/qNEOIaNox+TK5F5ywAUNyewFlTktHlzmAGoL0jI2C63aJUAwK6VuBl58L7XReBJ0mXQgb8mNm9ohs1i1pGzZuQmzvKV0NcZJeU9D5F2GPi7B5T8EtaLHLkjvO7EPSwffJpiTgRy9qWMXT8UG6hRiHRkY1aYFF6cp8QDbv+trgZ8EC5Z7RAaZEQCIBm+B04r0PXSLGbB67ONaY1RoglRgFkEzwCANQJw7FnUcycuhBtKRfHD1Ot/I3WwP822LXEaYy4w=;
 25:kixS5z8TQrOMahrvm2iT0vUBQDqpyGz7+8NHouns6vk4kg72mVpIj+uiHjZULPlo3tDI0Udxm2oE4MRRiJmRxFdvlEq9Q+iagtRWzQUHI9uS0PL1TKrM1ULFCJ8/V/b1ROJmcKRy6FlPnwYJqpS6yNxZB3myoxnctlu/2xPSPYhKNjuXvH0NkYkiLDiPMa7a+4Fh+TqQTY6Uk4rwMyHqBKNHEKloFACDB+/QXK8I7XltnqDuLLdY+OOMOl99CMPjZ+kOywbfyd/DDHoU68UPRaTSt3sVvwqwmvLaVqOpsXBxzsJsWqC+nms8HpLjn6ciusF5qXmBYS7dv3I8XhlJMA==
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1600:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 31:/xh70XalfhCeyVjMPVUZzXfr2apfeoUSXAzjR5ptTM9NUuNt86phm9kHuNaqrRjTPdX3c1ckPBwqJY8Pk8ExZbukrohmQMDFlvdJT46xErWCbllurmzgOJDR3iMb2RmTmUx8qrHOY1YBO3hq4X50a3iUD1FWxoWgCDhWbtPiVFUgWhNnpSWrMCupscMGFHW1wk7WFufP0bsBQ9nWJTSfdoohQvc1ycieD2JlmU9HDjk=;
 20:Ee2eQZ7bMutuOsppib+ILz3v381CnkR3cSO5vSOPo9oc3HBsu8p91n5bsqsHOTOOaG2ypeLdtAlHRSISKnyYAHjbkr9l0BInEH94Sl2Q7b4QQNPuplt0z3MRz4BwBWrwlpqTUssHZ20dSXiAGQ86OJwCaQ6r3wmvT+dskycnL0JwVO7P7Ac/mbUCdQC57XyJyf5/gqiJphHz22n3qdHMPymXwvwbPnCQJflei0Tpfbo2QCM21CMB/vDlxHkFyVjfpN4XlUzTrBg1y2taZQq23o/F6vd5ZBpyd+YSPYKisttUPLfqkKa61nQQtKPUBjUfl06vJBLqgTQBYJlTVZrJDRzgi+Ap23T+78AxIB/bI6s=;
 4:Qr1D0qgW0FJ3UrmK+Cq9dkg63w39reegRtXjyGGfnwVPmxRdYdL98+WiyKTOAlcOsdat6zH1N2LatC68KkM2tHJrSbp8EDv/wA45Wz0rgMoVX9DGBChN6jwhn536RALHRthAk4nNjvXvacj9pyZ3mPeuTdS/UBX4TctdzaB1m5qEz2uG1xzOL8Si3JtPX8UNuAXURPdhsKta7j/EL3KCpw7vh5JPdb7OcSOArXdI+sqYNIv29CgphQt0yIxi7W6JSnEa72m5Fl9VeRWyrKLXQkjY8bnmi/DkeawwZabopV4UOm3UngrPH3rq9P/7trEg
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0801MB16005F17BC28E57ED4EEE46F84B50@VI1PR0801MB1600.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231232)(944501327)(52105095)(93006095)(93004095)(3002001)(10201501046)(6055026)(6041310)(20161123564045)(201703131423095)(201703011903075)(201702281528075)(20161123555045)(201703061421075)(20161123562045)(20161123560045)(20161123558120)(6072148)(201708071742011);
 SRVR:VI1PR0801MB1600; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0801MB1600; 
X-Forefront-PRVS: 0647963F84
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1600;
 23:BgxX9fHtK97z3+TTITxvf4BxISrP7A1/we883qv?=
 =?us-ascii?Q?UdEovcuUqEyqM4XeVLLvUDAmXV7gc7ZfEPu84FPWe8ke3sRdiNJpftTKUp7F?=
 =?us-ascii?Q?j/JYwZu4Zs1Z28GpleDIKNyT1gaq0pPVTzKa8IGb++eHkibVwIuve13aRW2L?=
 =?us-ascii?Q?Y+qDaDALwQtvxjWhK5Rn+t8EKSumGi0gShj/unsttZzvH6+ULKdGwWEFI6Mp?=
 =?us-ascii?Q?crEx2W4NPBtonD18c+kgcGUVu/BmchxqoWZS04bqs5WMK1aojSrDcfJtfIfU?=
 =?us-ascii?Q?GnrrBVATrQKYQ7IydcmrZ6b0wdGL6sfIcWGG8YrYd8Ho7xM8Q5AEYXNBrhNN?=
 =?us-ascii?Q?ut2mIcBTJmGcz/j/cG9WU3PWA+eEzVwpvkRRBdOEmO1MA+TRIdUVoYqh5H3o?=
 =?us-ascii?Q?ZEVeQjRtlPQy3KOmSLK1vPn4eLPKV7eDwZSnB6Chss6VvBc5cxhwwwB4gLJ3?=
 =?us-ascii?Q?TWMZ31KlxwZcDTNjynbY3DveFRYGS4pNrSI6rzDjGgRAYejS2nA86M5c0Rur?=
 =?us-ascii?Q?x9QrA0WOsDKfl9Af3coKLwJUdYs8aLtnHFenUtpMe4I0IMbkVd9SBFE5Y0A+?=
 =?us-ascii?Q?eQh2s4NDb/LZypV8gBnalPeruXuO5Pfc7t32uwY7/PSQPPVcqnc1x3XyeAJx?=
 =?us-ascii?Q?eTCtScfqESsngLF/konkM+T5OSa5ytaa17T3Yg4UH50LsC/JO7BIcsy1RWc2?=
 =?us-ascii?Q?6TU81ohw/YHIoLTFbGrWJOys65Ew28Wa3pzqiH43LQTEzuRzGvBkVhL8d0Fn?=
 =?us-ascii?Q?8h33AfhbpRrvs6tMlYZ1XSv1ej8r4GLKLECOa2chxfvcTmNfghL2TeWV9l8f?=
 =?us-ascii?Q?E+4dIFvNDKdZXC1jWTfxtmaxxvBkLeMt2XZuOB53M3YyrDnx2UMIUNl0yng1?=
 =?us-ascii?Q?JqcK81Vn7F62709gkZUe3pdtEAharh76K4avXNXnIOYFamvSem/pmDlFDfeZ?=
 =?us-ascii?Q?R4CrXUPQMiGqb9JCehtB21hlKm7RcJt1UAUFOp4zd8BTP5hk6+RFy8Ku9bWS?=
 =?us-ascii?Q?sLcQh1oKRX8rNEEtwoN1ltWursBsm1hIZDIWzThaeNC29JjRIzTigv0cZ7qk?=
 =?us-ascii?Q?I5vs300gYMAcPwQGjMvW+KGieOs1NrTKIScW3UYOnqxgDq7otcopQsiENDxJ?=
 =?us-ascii?Q?RCOuy6JjR5g8wXTlyZL9G0EpujiQhNIyy0wMdY8lB73BNploCmopOV2E7sA7?=
 =?us-ascii?Q?WyTUBpBMfG3U3zg0PBxkUSuKy1qhMsKjK7bZMuz1bpnMVChaKq9WDzfYnrOT?=
 =?us-ascii?Q?udyQdnJt02akJIcMjRVg=3D?=
X-Microsoft-Antispam-Message-Info: h7geG/3cb1H1IiWO0qq34K6d18oq/LxnfTWieBrGhbBU4zkP9qYPOWijjW+GWPsq8Fc7rDnv0f5976y+owcrSBF55wR1pZ9NRUGlbXA4Z3CiV/rYJgBe7Xh6946PX/Rqcff4hpK6FvopLT8CKh0UCMWyOFTNyxUCobJT4nN2QynBnaJ0lkjwg+uKYEv7CWvGaSn0uRzgTaFMywNpeIbznMyn+B9KW/1JquGmXPxBwBrkWUqaKP04jAHg/L+Z0O6Uh84efrIQiCNoXg2tfNWCNPF76RfmV+TcpXCLk/D5oNbHhrh1FAgZ22p3GjJfRcKRBGB9UHyNp02W6b2CMOxZxGbUezlDkp/7MJLdbGpcaz8WHid16AaYpqBWQ+ap/i3+78kk2BnNdA8/o0er6h1XSJj3K9rDbAJLwGPOs7yRC/4=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 6:/a0UGuYjKQJsAipmhYZSqlokgi8HJCtP2slQCtM3QoMHRhGCO1GYK9GU8za2NybrO14QH2zbsNL4vedqdsBAAN98K12VGHw4ofC/7aJFHP1QB1u6/aKw4GSrGbMcNlzpjvWGgvEGajx0Laq2F08EBWOm3xbpfHM1TVTokSDOrej/k+/ocEhCOOAPfDBgT3VsAZ0VLBG71vtoDzu58Zj8c5MmdJFNaZYICb/vQHyEDaefPny4g0h5THM5HTazEBJsloRXUdfJ6382MDIq4jVlfbfSaatAjJPWKyIeGn3ViBAAXWeB1T55dtDvV9tc4zo/WRLMiTbZZ2Ut6IiaaEpsTjEKqgS7MVeEoOO41tojBCilnkV8vFhjUaRIx+nIppZFMeZ1K0a67GyUc/UfCdjmV0CaJAhzoy1lRl6FkgllRktABGRMzMoqkjwUTtlZ4c2Zkxi/yoqFRAzNzwSffd8tG3y+r8nKGU6bxTdt+v+aaa+e7ZILq1oPtpfibMaoX1vm;
 5:RCi7/BS0+uxOXY9YD1loI/XFH/riXivtL6OkKIpovbqWOKNvyvEV1mip/Rk6SfJA9+kvdorJBKyuqmPX2tZITwMXLsRoGvwWRxwEEt0CGTqb0eMZzo68tP+fT02Txt7KQupIUAj5cyyrZxJtX7Z9GumF9nYwCau1NMLHFPDT7yM=;
 24:HZOnV+gg5tx81J6lg+bk+tPj9B37ThFh8ZceIkA34/6c+DxYTg+EWfH+2HqGy9ojsgra+djGc0wsceEkIvkQ4ZC4mFsFgi2U6z0mur5JDno=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1600;
 7:M6KcOl/5mzKavmEWi8lF85ufJ1oWN5x5uRZKzEdteeSopotyD9m+ylRldP3Kxhjnm7Tp1fkOY6N0Xc6KmrcRCHywUeYEAbVKeZMg3l+hjUzL+lxDU3CUjHPdcsLyIw2IDFY5u8l6hvNapVUcYzt0t169cjzsWWgHDAmaQWnKrqj7OX1VfZsYNdH3Nf+B8YForkRv2RT0ycrXXoa752FqiU27jrz1CEj02rh6ZdDbF5oP3j5nq8nfMhjlWSUb5UlH
X-MS-Office365-Filtering-Correlation-Id: 8aa3a21a-0131-4d7b-389c-08d5a5ddb7ed
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2018 10:10:03.2425 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8aa3a21a-0131-4d7b-389c-08d5a5ddb7ed
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1600
Subject: Re: [Minios-devel] [PATCH v3 09/43] arm64: add the __PAGE_SIZE
 macro in header file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMDU6NTM6MDlQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpIFNoaWppZSwKPiAKPiBPbiAxNi8wNC8xOCAwNzozMSwgSHVhbmcgU2hpamllIHdy
b3RlOgo+ID5UaGUgX19QQUdFX1NJWkUgaXMgbmVlZGVkIGJ5IHRoZSBpbmNsdWRlL3Bvc2l4L2xp
bWl0cy5oLgo+ID4KPiA+U2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdA
YXJtLmNvbT4KPiA+LS0tCj4gPiAgaW5jbHVkZS9hcm0vYXJjaF9saW1pdHMuaCB8IDIgKysKPiA+
ICAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspCj4gPgo+ID5kaWZmIC0tZ2l0IGEvaW5j
bHVkZS9hcm0vYXJjaF9saW1pdHMuaCBiL2luY2x1ZGUvYXJtL2FyY2hfbGltaXRzLmgKPiA+aW5k
ZXggMjNhNDkxZi4uZGUwNDdiMCAxMDA2NDQKPiA+LS0tIGEvaW5jbHVkZS9hcm0vYXJjaF9saW1p
dHMuaAo+ID4rKysgYi9pbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oCj4gPkBAIC0zLDYgKzMsOCBA
QAo+ID4gICNpbmNsdWRlIDxwYWdlX2RlZi5oPgo+ID4rI2RlZmluZSBfX1BBR0VfU0laRSAgICAg
ICAoMVVMIDw8IFBBR0VfU0hJRlQpCj4gCj4gVGhpcyBsb29rcyBhIGJpdCBvZGQgdG8gbWUuIF9f
KiBpcyB1c2VkIHRvIGRlZmluZSB0aGUgbm9uLXVuZGVyc2NvcmUKPiB2ZXJzaW9uLiBIYXZlIGEg
bG9vayBhdCBwb3NpeC9saW1pdHMuaC4KPiAKPiBUaGlzIG1ha2UgbWUgcmVhbGl6ZSB0aGF0IHBh
Z2VfZGVmLmggaXMgaW50cm9kdWNpbmcgdGhlIG5vbi11bmRlcnNjb3JlCj4gdmVyc2lvbi4gU28g
SSB0aGluayBwYWdlX2RlZi5oIHNob3VsZCBiZSBmaXhlZC4gTW9zdCBsaWtlbHksIHlvdSB3YW50
IHRvCj4gZm9sZCBwYWdlX2RlZi5oIGluIGFyY2hfbGltaXRzLmggYmVjYXVzZSB0aGlzIGlzIHBv
aW50bGVzcyB0byBoYXZlIGEgaGVhZGVyCj4ganVzdCBkZWZpbmluZyAzIG1hY3JvIGFuZCBpbmNs
dWRlZCBvbmx5IHR3aWNlLgpJIGNyZWF0ZWQgdGhlIHBhZ2VfZGVmLmggd2hpY2ggbWFrZXMgdGhl
IGNvbXBpbGVyIHZlcnkgaGFwcHkuClRoZSBwYWdlX2RlZi5oIGlzIGFsc28gaW5jbHVkZWQgaW4g
dGhlIGFzc2VtYmx5IGNvZGUsIG5vdCBvbmx5IHR3aWNlLgoKVGhhbmtzCkh1YW5nIFNoaWppZQoK
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 19 10:15:20 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Apr 2018 10:15:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f96b0-0007UA-Uo; Thu, 19 Apr 2018 10:15:18 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=7ogj=hi=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f96az-0007U5-JX
 for minios-devel@lists.xenproject.org; Thu, 19 Apr 2018 10:15:17 +0000
X-Inumbo-ID: 68a3ec68-43ba-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::621])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 68a3ec68-43ba-11e8-9728-bc764e045a96;
 Thu, 19 Apr 2018 12:14:13 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=TrmH+pVqyvIF0C65Je2CXBjsXJYn5aAW/Ia3oJDaEcA=;
 b=FIwkvGJi49FinlP5S9QTTrItI2aD8q7Lo8LPndhE79l2AsgMfG/tl7l7PJHIbpDz84yWIY5QkQ51uK3gWgAsbd+u37OUJtV8wNe74zrFW2xlIVB0JzRDY3sIo3xUqoR2cqGMTBWJOlRjVo2f+mCbMjclftgMq+Gha7mETcRXs0w=
Received: from DB6PR0802CA0045.eurprd08.prod.outlook.com (2603:10a6:4:a3::31)
 by VI1PR0802MB2429.eurprd08.prod.outlook.com (2603:10a6:800:bb::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Thu, 19
 Apr 2018 10:15:06 +0000
Received: from DB5EUR03FT049.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::203) by DB6PR0802CA0045.outlook.office365.com
 (2603:10a6:4:a3::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.13 via Frontend
 Transport; Thu, 19 Apr 2018 10:15:06 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT049.mail.protection.outlook.com (10.152.20.191) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Thu, 19 Apr 2018 10:15:06 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Thu, 19 Apr 2018
 11:14:53 +0100
Date: Thu, 19 Apr 2018 10:14:51 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180419101450.GE29673@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-12-git-send-email-shijie.huang@arm.com>
 <c86057d1-5bb5-77f7-05e0-e11c07a56381@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <c86057d1-5bb5-77f7-05e0-e11c07a56381@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(7966004)(346002)(396003)(39860400002)(39380400002)(376002)(2980300002)(438002)(189003)(199004)(446003)(426003)(476003)(72206003)(50466002)(126002)(106002)(486006)(11346002)(508600001)(305945005)(47776003)(356003)(229853002)(16586007)(336012)(316002)(5660300001)(2906002)(58126008)(8676002)(33656002)(8936002)(6636002)(55016002)(6862004)(39060400002)(186003)(4326008)(6246003)(53546011)(77096007)(106466001)(26005)(8666007)(104016004)(54906003)(46406003)(1076002)(86362001)(23726003)(7696005)(76176011)(97756001)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2429; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT049;
 1:sQ4NmRrkE2m0IRQqrISpuHE9r2SAtQ+iludy6CB/v99ZKbhwzHhJMicNIF+slDwX/PNzyYvO0FHFCpxPVdf+HjTCIwP3/9cqMz7kChq8cKoWQhvfCaJK6smCmBpBX9C+
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2429; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 3:ss56PpMEptvaozWRXs0uav9z0Bsm2upQy6L19DHPiFhmQbrffRl1eT2vBzIvdxkTTYy/67NO97ALM7doHYea0qfZOhPGhgNNXUPa5ejhsQtR0UMCnnChBr/Ge/Kfa050aD87CHgchT1qtwxcce75tFryS5fY+bA/XkvxiyGYsL7PEaZxOjWyrxuZKvwnM512awIcmXFnqBE+F+dsCzBvMqbMOeIQQUvvXgA/q3AcUzHsWOdUIa6D37MYiYGaLurU7u0hOb2MqGWTwwBWT5czHpHrNFt7ZZui5ItUBCUiyPmxKCpT9cGOSlvOrT+dzjXEBf1o+BZVCI/m+DD38r+Z+o8G+GqHywi7woxWnYY6Oz0=;
 25:2FP0yByH47atMD+CwN8/y4XTX9b/GFi0xTJijJ3fNTqagSAiccNrbcQZ1MMbf7XYDmLh+kaHmHfvFmeBu48ZiOfXwXV6zA3cxY90DD7vyrVfm+jkzl0gkmqSF/wdP+Y65aEBtcVTnM2KIY4pnqALHxYlDyZ8vi5aofEJEYMVeXTMKNaPK6uGxeSMBt/4OYlR51O00/Xaqx/4fSxi5H/WX0uR7TytMpBzXnYam2WYd2tSlhz4Gt3M096H0QqRIZPhZSpLv4NfJfgZyHs9y9f97Sa8/SmLoTn0acTCHDkUBtjrVrU2SnclGPHBMEBPSMZxxpCVPzwDpHu5krj9ZuBgZw==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2429:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 31:E7COarWEDh0gw4ol4/ADx/Io7uFGjgb6aY8Wb5hHQ7HBMbjkWSLcrdMtx5/ZhuYfAYuZH1Gy36xoWgoFOrRTD0HEu0BRer4hhoF45T6mCXgrLDB+dlqHVbrdbv4eU3pCI1JKz6h+FERaG9/Pfi06X1CP9gCksLkLB+IZFC/Svv7PXO8mHVuo+KUd7hINP7S1meaRxSErmGTYxQAkXnoIQ7zwoyAHHvZpxt7NiA4uNUo=;
 20:HM4zxGsVxL3OjKN58V56a/+VgRwnwJM7A53jTrNuaWX1nnfpZhpdFvL9MWNgv2gzaIN24AnyKPy+h/hwMt0rhPOXmVOOfgOaVZjEWOQEWfK5jrRbpC9pPxkVVGxsBwcsbILtgL7KDPCbF89nQ41jLQCKFb0Xi0qWENMZuEC8cBoOBVEX4JZ1l5yQa/Q1/H2hAZS1gAiYuEp3NfXTyiBpSsZ5A+OMuPV9cBd11iAd4TiIE7/KJKGnbAoVWTO2vneAE9KlvzD+AYDs9krfwFTVkPSECcWpRrptfDFNImpTXvuXDUG7ngnIiEPfsByOaWGDbXOQ2GxTrn+NZdv8mavLK/zS21uO2ZG4SjjRJ2oNq0E=;
 4:GQecAeK0lRheRvnSI/4hOkjJewKHtTQkPvAh4RbZDMHj8KHm41KYB6i4Cdi2tj/Bp/Y/jKmf18Gri0sRZUPCBaG1VS0Xxu/CL0o9Q1JZu7RSPNXPtH5pWi0F86D0sAtSNR8gF8TW002ZqKD6kFGDlFQ4E1lEqCCEO0DJ6Q+zKxg2gx0MUzomQNK8g+ME7g0QjKUEWY3ve1LHrCwo88Ez2AaLOx6tfMoLZP2sR00m8yVC1QeEKSlBtLVSjumekBMlRqrmH5O+6kKor0UVL/TGnR/unKW+LBiU6GJZZk7NS4/0kzDXEeBc6Ap3Jan8bod1
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB2429EB04AF582AAE3CB1D84584B50@VI1PR0802MB2429.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231232)(944501383)(52105095)(93006095)(93004095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201703011903075)(201702281528075)(20161123555045)(201703061421075)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2429; 
X-Forefront-PRVS: 0647963F84
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2429;
 23:55zlSAOK53Ky9hoN2Ad3TZw7HMY4uLPsFu+HkgR?=
 =?us-ascii?Q?Q8PtApuJ139lP/AZOKckkoiEHLgk4hcX21m1OhhmtdBjuoZmRFSniGQWqZZs?=
 =?us-ascii?Q?LzXoSgsQw+0rUfQhVfvGlsmz7rk7nBaxykeFAPYzAZecKdCU9FBsj9J0APE9?=
 =?us-ascii?Q?meNaq6vGSkb2fIQ3Du5D+V6lxue2+kiDB19+83pWvgkQDhS1/5/YxagloQ8v?=
 =?us-ascii?Q?xLEX9agboyLI/ks8MFKP32Kr7/+NMubz1BExnoVa63+Qvt0m0vXKLbrCrUn1?=
 =?us-ascii?Q?BdDLA8OioNtAODwgMfaotBcnpnXKDpzwq2TLvjePhn0RNoPtwqDoDvTUuowq?=
 =?us-ascii?Q?viWSYV/6rQlVwSibqM6EUg85jiJ0K/Q9T161GqRSdRtHnSSO0poW5TgOA8K+?=
 =?us-ascii?Q?MUOjP2/Lz/oPZKg3buX4ACdzI7MjQra7ka/mR1oXb3zE03lS3zSvQdAem39O?=
 =?us-ascii?Q?vc1VT+z+NRjt6IEZ8JI2kfoDwnZT99/Lf30KHImkg7I/9FOb7lZiSwUltyDD?=
 =?us-ascii?Q?Maz+emXoGR4A/wYXvMztJxaKXX7M06/oxAVGceMxMAbcZmqtX/EAVPtCqhyd?=
 =?us-ascii?Q?UQy9OW6kWPL2TN1JZ+N6bX+/qTngb2c1PS61ulg6Y9106NnoR2gUQp2dSuNB?=
 =?us-ascii?Q?bNfcG6uk/7HpxZgoCpTXGm+TzvrCROfwiiB8j1TdzpgujZq3gOwRZxsKIIiB?=
 =?us-ascii?Q?Q5nF+JblezU4RzUo6KAqi9/qFJJ1KYb3Ag9pg821nIefzsucTUyc0qBD/2hH?=
 =?us-ascii?Q?d24jrlK3dCRXLhVYWPXNwAIKc03Ve8t1W0qyxz1bHeWQWFQ3qtO8MPOFWWHB?=
 =?us-ascii?Q?FBzBpqGnqwNsRuHCOOTTBoP/FYupbjBfCN7VCy9MuBYiG0VrjAuMLlGzK/9r?=
 =?us-ascii?Q?ah384av4V5XhrE1GA0bHeIxwbZe3y+UAfx0gWawmUhHLVkDaooskGfOUiB6Z?=
 =?us-ascii?Q?xt1ZoawbTgidc1WNVFq4l1rCD+4GQtQ3SqOUknjgPjafc0Hw1IIsMi5YKsP5?=
 =?us-ascii?Q?6FtHrsadQhD5iFJhL8DuOh09D/KNrfMtB3bT8VcOuR+I9i+xcGudHDZN05ix?=
 =?us-ascii?Q?CO7bVf79XkDdfEaUMqXpxd2uNQZ8PAy75fWehz3KNaza//eiBNQzF1RH+Vo+?=
 =?us-ascii?Q?GPnyD+3uSMdkm0Q5pRyEpsGjLI6J+7G3Je27mvmTlNumRosf0dJ67jD6+jZM?=
 =?us-ascii?Q?SNyif0TXYz2Cy8146tn/4TNQrKXgvNTNY7/VxTxkTTDUip5vhaC1CEH5AOA?=
 =?us-ascii?Q?=3D=3D?=
X-Microsoft-Antispam-Message-Info: 2rV6RVri9yPlfhIojYSFZMenE+jJi+bRzr1BgNtD/T05KBLpoQOd7B4fcknnLkbgszRY6TXxEgDS00ZuFSxbK6sYd8comG83Xfs+YcSrH1HuXGGuDuHr9u6nlF+b2FdRO4ew5mOTW1sN2BtJmznqrHGfvNknxTpNVtMIR7c7kb+AIzJHPh9TY1Tnpf8MUyifUg5XuQnKnhvhnkYRbk88PoRFTQYY5FoEFdZ8UYV6I6qNlo7W9OpnY23q4YtpgiiZBsCz9ND2qcFT+FHyMeP3ZTGMxrVzTjqnn3MtyqN+LqAzfgsrANzrgWAkl490VMC2KdnA2DleUOhufTEOhPMFabQ/1Wiwg4A1a1cZybqPdRX7sgzYE98eRl9hnXGeCINv1bV8GfO05nri281dja0bNfXLkvbwXdHKHJNuHMf0YwQ=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 6:2E5xznpcnBDLHpJi2kYxVq1o4NfpR0KWDaZ8iqeT6521uP8u+98R6BpRc8OMzwIZfM8cW+Qx17tfooIQz0zol/uzjjnZxO1urIQaFl/WYIVyLxgYvzzRdRh3wEWK99Vv/8pTaOncehPXQ614/FLa7lyPaxJXIdo5GSYmO/BLQdFeMOX5Ag+xpmapZQlOmEXeeTk/CPUC9Nqjgju7Hydh21fe7KTkNDiUd3DyBopqI4lP2UqWq5kgphNm6fsBI0gA25dF1sVhPn6Ht7OG4ZcTDCbd8131+WzEv0CGRYb+M+yVSMaMahnAXBnnimDLckro8i7RdftV9nO2/J9nvTc4x3aE7rHzlCIKMv8u2quyBjEZxLcjU3F+0QoDB4JZFlV/9IDUEXdlzLLoJKiCl0meTAKNTww0hFYCm51mVR1YFSwa2F6tevmEx4sjvEXQZPiGLZbcJOYLyu7aaguMSId85E+Clud4J3gyQpbFWxBqHRiS6cbWYS3/mMpe0TsjFw77;
 5:Kj+FYyyk50WC5+02sGzGnykJpVCX/GglAkoF/RBkiTBEgpC1e6BlMG6QWQpLfLTGRGz6Za9HXnp1LKGoA/jhYXaWlrocVBvr4U/N4IX7xpb8d3/QZheSeK2SVmyZ7g3w8ccvwEmqk330G6aLCNtbUad8kq0i6UZzERJ5BSz0lyA=;
 24:h8FQHWiffXWWyyMEfLioCi+kBx+7478JZjAsqmNL13cqlBsbmfuo5K3+SzjrxcsTsOYr+RaNgF/sJxBj+MFGXAkJ5tssW4E9piQDpvvVnsw=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 7:wRwQmPCslNotIkiYAfrlWStYU49Cpj/rNFbXydyUz6pEtjC3yw/Aov6DXGBTSrQl6GoorqLebATM6qCVrR/oVOL/7HSgnIO6DaHy6oAQFuvTBz6lSeCJb5G5CetWIIzm124jN+LLxIfZwhl+Y9zWlaeQJXBwcefrD6SInBOjPlZPaQGhq8S1W+HHiQhv2fBk00b0TAdTLcTOvKTnVKtCEpRoqfTTbH5gqESZsC+oT4c0nYQQO13bDNz6ghPTgFHE
X-MS-Office365-Filtering-Correlation-Id: b869184e-64d0-4816-6677-08d5a5de6c7d
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2018 10:15:06.1617 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b869184e-64d0-4816-6677-08d5a5de6c7d
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2429
Subject: Re: [Minios-devel] [PATCH v3 11/43] arm64: dump the registers for
 do_bad_mode()/do_sync()
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMDk6MDY6MTNQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE9uIDE2LzA0LzIwMTggMDc6MzEsIEh1YW5nIFNoaWppZSB3cm90ZToK
PiA+VGhpcyBwYXRjaCBhZGRzIGEgbmV3IGZ1bmN0aW9uIGR1bXBfcmVncygpIHdoaWNoIGNhbiBk
dW1wIHRoZSByZWdpc3RlcnMKPiA+aW5mb3JtYXRpb24uCj4gPgo+ID5BbmQgdGhlIGRvX2JhZF9t
b2RlKCkvZG9fc3luYygpIHdpbGwgdXNlIHRoZSBmdW5jdGlvbiB0byBkdW1wIHRoZQo+ID5yZWdp
c3RlcnMuCj4gPgo+ID5UaGlzIHBhdGNoIHJlZmVycyB0byBWb2xvZHlteXIgQmFiY2h1aydzIHBh
dGNoOgo+IAo+IERvIHlvdSBtZWFuICJiYXNlZCBvbiIgaW5zdGVhZCBvZiAicmVmZXJzIHRvIj8K
SXMgdGhlcmUgc29tZSBkaWZmZXJlbnQ/Li4KCj4gCj4gPiAgICJXSVA6IHRyYXAuYzogYWRkIHRy
YXAgaGFuZGxlcyBmb3IgYXJtNjQiCj4gPgo+ID5TaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUg
PHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+ID4tLS0KPiA+ICBhcmNoL2FybS9hcm02NC90cmFwcy5j
IHwgMzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KPiA+ICAxIGZpbGUgY2hhbmdl
ZCwgMzAgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKPiA+Cj4gPmRpZmYgLS1naXQgYS9h
cmNoL2FybS9hcm02NC90cmFwcy5jIGIvYXJjaC9hcm0vYXJtNjQvdHJhcHMuYwo+ID5pbmRleCA2
MmRkMmU2Li42NmY4NDJlIDEwMDY0NAo+ID4tLS0gYS9hcmNoL2FybS9hcm02NC90cmFwcy5jCj4g
PisrKyBiL2FyY2gvYXJtL2FybTY0L3RyYXBzLmMKPiA+QEAgLTIsMTUgKzIsNDMgQEAKPiA+ICAj
aW5jbHVkZSA8bWluaS1vcy9hcm02NC90cmFwcy5oPgo+ID4gICNpbmNsdWRlIDxjb25zb2xlLmg+
Cj4gPitzdGF0aWMgdm9pZCBkdW1wX3JlZ3Moc3RydWN0IHB0X3JlZ3MgKnJlZ3MsCj4gPisgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIGVzciwgdW5zaWduZWQgbG9uZyBmYXIpCj4gCj4g
VGhlIGluZGVudGF0aW9uIGxvb2tzIHdyb25nLgpva2F5Li4uCgo+IAo+ID4rewo+ID4rICAgIHBy
aW50aygiKioqIFN5bmMgZXhjZXB0aW9uIGF0IFBDID0gJWx4ICoqKiBcbiIsIHJlZ3MtPnBjKTsK
PiA+KyAgICBwcmludGsoIlRocmVhZCBzdGF0ZTpcbiIpOwo+ID4rICAgIHByaW50aygiXHRYMCAg
PSAweCUwMTZseCBYMSAgPSAweCUwMTZseFxuIiwgcmVncy0+eFswXSwgcmVncy0+eFsxXSk7Cj4g
PisgICAgcHJpbnRrKCJcdFgyICA9IDB4JTAxNmx4IFgzICA9IDB4JTAxNmx4XG4iLCByZWdzLT54
WzJdLCByZWdzLT54WzNdKTsKPiA+KyAgICBwcmludGsoIlx0WDQgID0gMHglMDE2bHggWDUgID0g
MHglMDE2bHhcbiIsIHJlZ3MtPnhbNF0sIHJlZ3MtPnhbNV0pOwo+ID4rICAgIHByaW50aygiXHRY
NiAgPSAweCUwMTZseCBYNyAgPSAweCUwMTZseFxuIiwgcmVncy0+eFs2XSwgcmVncy0+eFs3XSk7
Cj4gPisgICAgcHJpbnRrKCJcdFg4ICA9IDB4JTAxNmx4IFg5ICA9IDB4JTAxNmx4XG4iLCByZWdz
LT54WzhdLCByZWdzLT54WzldKTsKPiA+KyAgICBwcmludGsoIlx0WDEwID0gMHglMDE2bHggWDEx
ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMTBdLCByZWdzLT54WzExXSk7Cj4gPisgICAgcHJpbnRr
KCJcdFgxMiA9IDB4JTAxNmx4IFgxMyA9IDB4JTAxNmx4XG4iLCByZWdzLT54WzEyXSwgcmVncy0+
eFsxM10pOwo+ID4rICAgIHByaW50aygiXHRYMTQgPSAweCUwMTZseCBYMTUgPSAweCUwMTZseFxu
IiwgcmVncy0+eFsxNF0sIHJlZ3MtPnhbMTVdKTsKPiA+KyAgICBwcmludGsoIlx0WDE2ID0gMHgl
MDE2bHggWDE3ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMTZdLCByZWdzLT54WzE3XSk7Cj4gPisg
ICAgcHJpbnRrKCJcdFgxOCA9IDB4JTAxNmx4IFgxOSA9IDB4JTAxNmx4XG4iLCByZWdzLT54WzE4
XSwgcmVncy0+eFsxOV0pOwo+ID4rICAgIHByaW50aygiXHRYMjAgPSAweCUwMTZseCBYMjEgPSAw
eCUwMTZseFxuIiwgcmVncy0+eFsyMF0sIHJlZ3MtPnhbMjFdKTsKPiA+KyAgICBwcmludGsoIlx0
WDIyID0gMHglMDE2bHggWDIzID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMjJdLCByZWdzLT54WzIz
XSk7Cj4gPisgICAgcHJpbnRrKCJcdFgyNCA9IDB4JTAxNmx4IFgyNSA9IDB4JTAxNmx4XG4iLCBy
ZWdzLT54WzI0XSwgcmVncy0+eFsyNV0pOwo+ID4rICAgIHByaW50aygiXHRYMjYgPSAweCUwMTZs
eCBYMjcgPSAweCUwMTZseFxuIiwgcmVncy0+eFsyNl0sIHJlZ3MtPnhbMjddKTsKPiA+KyAgICBw
cmludGsoIlx0WDI4ID0gMHglMDE2bHggWDI5ID0gMHglMDE2bHhcbiIsIHJlZ3MtPnhbMjhdLCBy
ZWdzLT54WzI5XSk7Cj4gPisgICAgcHJpbnRrKCJcdFgzMCAobHIpID0gMHglMDE2bHhcbiIsIHJl
Z3MtPmxyKTsKPiA+KyAgICBwcmludGsoIlx0c3AgID0gMHglMDE2bHhcbiIsIHJlZ3MtPnNwKTsK
PiA+KyAgICBwcmludGsoIlx0cHN0YXRlICA9IDB4JTAxNnhcbiIsIHJlZ3MtPnBzdGF0ZSk7Cj4g
PisgICAgcHJpbnRrKCJcdGVzcl9lbDEgPSAlMDhseFxuIiwgZXNyKTsKPiA+KyAgICBwcmludGso
Ilx0ZmFyX2VsMSA9ICUwOGx4XG4iLCBmYXIpOwo+ID4rfQo+ID4rCj4gPiAgdm9pZCBkb19iYWRf
bW9kZShzdHJ1Y3QgcHRfcmVncyAqcmVncywgaW50IHJlYXNvbiwKPiA+ICAgICAgICAgICAgICAg
ICAgICB1bnNpZ25lZCBsb25nIGVzciwgdW5zaWduZWQgbG9uZyBmYXIpCj4gPiAgewo+ID4tICAg
IC8qIFRPIERPICovCj4gPisgICAgcHJpbnRrKCIgQmFkIGFib3J0IG51bWJlciA6ICVkXG4iLCBy
ZWFzb24pOwo+IAo+IFdoYXQgd2FzIHRoZSBwdXJwb3NlIG9mIHRoZSB2YXJpYWJsZSAicmVhc29u
Ij8gSXMgaXQgYmVjYXVzZSBzb21lIHRyYXAgZG9uJ3QKPiBnaXZlIGEgbWVhbmluZ2Z1bCBlcnJv
ciBzeW5kcm9tZT8KVGhlICJyZWFzb24iIG1ha2VzIGl0IGVhc3kgdG8ga25vdyB3aGljaCB0cmFw
IGlzIGZyb20sIHN1Y2ggSVJRL0ZJUS4KCkkgZ3Vlc3MgaXQgbWF5IGFsc28gY2FuIGdldCB0aGUg
ZXJyb3IgaW5mb3JtYXRpb24gZnJvbSB0aGUgc3luZHJvbWUuCmJ1dCBuZWVkIG1vcmUgY29kZSB0
byBwYXJzZSBvdXQuLgoKVGhhbmtzCkh1YW5nIFNoaWppZQoKX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5p
b3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9y
Zy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 19 10:16:02 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Apr 2018 10:16:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f96bi-0007VA-2y; Thu, 19 Apr 2018 10:16:02 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=krwd=hi=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f96bh-0007V5-Na
 for minios-devel@lists.xenproject.org; Thu, 19 Apr 2018 10:16:01 +0000
X-Inumbo-ID: f04b86e5-43ba-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id f04b86e5-43ba-11e8-8249-2fda3a446a53;
 Thu, 19 Apr 2018 10:18:01 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 0DD4080D;
 Thu, 19 Apr 2018 03:16:00 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 24D303F59D;
 Thu, 19 Apr 2018 03:15:58 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-10-git-send-email-shijie.huang@arm.com>
 <6272136e-0a75-134f-eeb4-1c2e8c1078c2@arm.com>
 <20180419100943.GD29673@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <7256661b-feec-d8af-5701-08b7c1b1ec02@arm.com>
Date: Thu, 19 Apr 2018 11:15:56 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180419100943.GD29673@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 09/43] arm64: add the __PAGE_SIZE
 macro in header file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAxOS8wNC8xOCAxMTowOSwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFdlZCwgQXByIDE4
LCAyMDE4IGF0IDA1OjUzOjA5UE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4gSGkgU2hp
amllLAo+Pgo+PiBPbiAxNi8wNC8xOCAwNzozMSwgSHVhbmcgU2hpamllIHdyb3RlOgo+Pj4gVGhl
IF9fUEFHRV9TSVpFIGlzIG5lZWRlZCBieSB0aGUgaW5jbHVkZS9wb3NpeC9saW1pdHMuaC4KPj4+
Cj4+PiBTaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+
Pj4gLS0tCj4+PiAgIGluY2x1ZGUvYXJtL2FyY2hfbGltaXRzLmggfCAyICsrCj4+PiAgIDEgZmls
ZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKykKPj4+Cj4+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9h
cm0vYXJjaF9saW1pdHMuaCBiL2luY2x1ZGUvYXJtL2FyY2hfbGltaXRzLmgKPj4+IGluZGV4IDIz
YTQ5MWYuLmRlMDQ3YjAgMTAwNjQ0Cj4+PiAtLS0gYS9pbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5o
Cj4+PiArKysgYi9pbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oCj4+PiBAQCAtMyw2ICszLDggQEAK
Pj4+ICAgI2luY2x1ZGUgPHBhZ2VfZGVmLmg+Cj4+PiArI2RlZmluZSBfX1BBR0VfU0laRSAgICAg
ICAoMVVMIDw8IFBBR0VfU0hJRlQpCj4+Cj4+IFRoaXMgbG9va3MgYSBiaXQgb2RkIHRvIG1lLiBf
XyogaXMgdXNlZCB0byBkZWZpbmUgdGhlIG5vbi11bmRlcnNjb3JlCj4+IHZlcnNpb24uIEhhdmUg
YSBsb29rIGF0IHBvc2l4L2xpbWl0cy5oLgo+Pgo+PiBUaGlzIG1ha2UgbWUgcmVhbGl6ZSB0aGF0
IHBhZ2VfZGVmLmggaXMgaW50cm9kdWNpbmcgdGhlIG5vbi11bmRlcnNjb3JlCj4+IHZlcnNpb24u
IFNvIEkgdGhpbmsgcGFnZV9kZWYuaCBzaG91bGQgYmUgZml4ZWQuIE1vc3QgbGlrZWx5LCB5b3Ug
d2FudCB0bwo+PiBmb2xkIHBhZ2VfZGVmLmggaW4gYXJjaF9saW1pdHMuaCBiZWNhdXNlIHRoaXMg
aXMgcG9pbnRsZXNzIHRvIGhhdmUgYSBoZWFkZXIKPj4ganVzdCBkZWZpbmluZyAzIG1hY3JvIGFu
ZCBpbmNsdWRlZCBvbmx5IHR3aWNlLgo+IEkgY3JlYXRlZCB0aGUgcGFnZV9kZWYuaCB3aGljaCBt
YWtlcyB0aGUgY29tcGlsZXIgdmVyeSBoYXBweS4KPiBUaGUgcGFnZV9kZWYuaCBpcyBhbHNvIGlu
Y2x1ZGVkIGluIHRoZSBhc3NlbWJseSBjb2RlLCBub3Qgb25seSB0d2ljZS4KCk1lYSBjdWxwYSwg
MyB0aW1lcyA7KS4gQnV0IEkgZG9uJ3Qgc2VlIGFueSBpbmNsdWRlIGluIHRoZSBhc3NlbWJseSBj
b2RlLgoKNDJzaD4gYWNrIHBhZ2VfZGVmIAogCiAKCmluY2x1ZGUvYXJtL2FyY2hfbW0uaAo0MDoj
aW5jbHVkZSA8cGFnZV9kZWYuaD4KCmluY2x1ZGUvYXJtL2FyY2hfbGltaXRzLmgKNDojaW5jbHVk
ZSA8cGFnZV9kZWYuaD4KCmFyY2gvYXJtL2FybTY0L21pbmlvcy1hcm02NC5sZHMuUwoxOiNpbmNs
dWRlIDxwYWdlX2RlZi5oPgoKU3RpbGwsIEkgdGhpbmsgaXQgaXMgbm90IHJlYWxseSB3YXJyYW50
LiBBbnl3YXksIHdoYXQgbWF0dGVycyBpcyB5b3UgCnNob3VsZCBkZWZpbmUgdGhlIF9fIHZlcnNp
b24gYW5kIG5vdCB0aGUgb3RoZXIgb25lLgoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVs
IG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s
aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 19 10:21:16 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Apr 2018 10:21:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f96gk-000852-G7; Thu, 19 Apr 2018 10:21:14 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=7ogj=hi=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f96gj-00084x-Pv
 for minios-devel@lists.xenproject.org; Thu, 19 Apr 2018 10:21:13 +0000
X-Inumbo-ID: 3d3d3eae-43bb-11e8-9728-bc764e045a96
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe08::615])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 3d3d3eae-43bb-11e8-9728-bc764e045a96;
 Thu, 19 Apr 2018 12:20:10 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=FyUw2acKx9GNLzxlEy5BZHRH/voRPnvhl+WPCERgeQE=;
 b=pFxWIgEeOj/lnXixvkCCpEW3xnnfeJL6dFx2/MPhA+LFkPt6Q9QfG3lHFqEObmJWRFvCQJMgTXNpzvaEA/sud5lsZ7iGOMvI4z5z8RDpD9dFXkZojwt2Cs154+gjHZEYiOe/qsKSbMIU2mr0kgrc++ch9XFA6wesq8CcZvjW60M=
Received: from AM4PR08CA0038.eurprd08.prod.outlook.com (2603:10a6:200:1a::48)
 by HE1PR08MB0985.eurprd08.prod.outlook.com (2a01:111:e400:c523::25)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Thu, 19
 Apr 2018 10:21:04 +0000
Received: from VE1EUR03FT015.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::202) by AM4PR08CA0038.outlook.office365.com
 (2603:10a6:200:1a::48) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.13 via Frontend
 Transport; Thu, 19 Apr 2018 10:21:03 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT015.mail.protection.outlook.com (10.152.18.176) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Thu, 19 Apr 2018 10:21:03 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Thu, 19 Apr 2018
 11:20:38 +0100
Date: Thu, 19 Apr 2018 10:20:35 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180419102034.GF29673@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-9-git-send-email-shijie.huang@arm.com>
 <7f8bf41b-4add-296a-cf5d-0a7cb1953d62@arm.com>
 <20180419100120.GC29673@ubuntu.shanghai.arm.com>
 <b0855a33-7ebc-616e-2ae1-8c29d4b94bfd@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <b0855a33-7ebc-616e-2ae1-8c29d4b94bfd@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(7966004)(396003)(39860400002)(346002)(39380400002)(376002)(2980300002)(438002)(189003)(57704003)(199004)(8676002)(6636002)(104016004)(336012)(356003)(6666003)(486006)(426003)(106466001)(11346002)(126002)(476003)(446003)(5660300001)(316002)(305945005)(97756001)(1076002)(23726003)(93886005)(50466002)(86362001)(229853002)(46406003)(8936002)(54906003)(58126008)(16586007)(7696005)(2906002)(55016002)(8666007)(4326008)(6246003)(76176011)(106002)(6862004)(39060400002)(26005)(77096007)(53546011)(72206003)(186003)(508600001)(33656002)(47776003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR08MB0985; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT015;
 1:xemj8geS7qy2nJE/1XUb4HGqbGgmOszRlH7VD2t0/iSyPpMYt5bsREothwO/0E69lC4yMfBSWrjwKIgWpp3CkNkEy5YuQPVOKtP/kLlhHsroxUZIQINQp1AO3EZ7ncda
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR08MB0985; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB0985;
 3:1IRHhO/YMDhMMl36YBqWFmCVS4AFFx0WeTzlfJrvYqy4cOdQLrX+yrgckEATB+wYCQU7AlDnRb8bO1eX4HYwzB/d9DfriZFIwBxrzEj5rGRKe7iZ1BbMcAyujePi597X0nBexjGY6Yl+sCTev3nYdfLB8WnnLAUTOLQm6bZy/Z/e2UQQOq0i5sTBdndTGW1OVdmiJT7yIwQek4VWTKYMTllQ0D8nrbJhHF4uJDF17I9NTHkf/iTrG6e2WODfrnqJxGMCqy39/3I5cDEijkIbHOA+Xlb9ZR5UbqUcHlD1W3Nz0mNJWIGvpC3vEn5vV4U3njd1J6t2qRfQhBdBuRaOL6JjvpuSEyEeqsxRrKS5L/I=;
 25:X23qceDfFnCqKivEP+SzSqA3t8Yb3JfCOwnkvwphwrdU9QoC1VHixJf77DKWZmr+j3wL3tyyekiaHXHQAqH+TlHYn0WvH6wdVkG7/oNU6IDFAMgvbWWTweL4xkbIb/cu4eHVzBfIuha46/XnCHOhEADeBQJuHvIE9FjXG7Y7uDp9NC1f45orBuasqRjobeI2lFj+gD0nj3N8R96xFAut/cGI0ywp47oRVxCH2tU+y/ziAKgeHpyPwzwi9jEBV106b5wMjN07xZinaANkPVON8N95Nf5lfhAio76yp+jtqZsKPDNGqvWcfRKVx0ZbAsAT2EX3YR5MK6N+03UYzQmFAw==
X-MS-TrafficTypeDiagnostic: HE1PR08MB0985:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB0985;
 31:nGhdfb8x+LO8LQpAII6rChhZKakvpsFZnXFBT/F3HqJo4WZv0gcEajDilyJB3Oo1EK3y7iuaKCo6yZ78vsZS2ZWleRn62vPfa4snFNkBGsdwynBoOGxdGl4utfsmXgn83v/fmulZSGUuNfEj0x39+b+4BYiGA4Xi9RVjXPHYJT2VvwCDZKmFMJV1J1x79FqM9zg9m4lDhRowa6XO3mzoz+TaxJCyhcDhAZQxkI2HWzU=;
 20:v0LTsNYUNkPya+xA+olyEmVKYqSr95R2zapjs6FP2fbRGHpJ8C3N/fMkkptpPdx9BAITnRVyOzIqkh4vwjI2HgyxVJb+N5uU4i8o2Px5/VUJkZTDSxrDP/XiUBo6Is1thQ1QQAMtCm94ZQPPXsbaIC9OWszqtsRisXHT/tK2e1aCyW/PFcyxo1xkhm3vxynRQsCjl30jPRNx7ozLiU6I5lb1m7oCQIQREzro8U1iTrj95EEV8LO/uCfRc9ar66FPbayCtCF+OnSeP4DZudarK2zB9MkQY6AO7l4iq0qO/JQth9b/a2DGeBz8FrAYZ0upxBzvf58NaLemqoWKNOC7pa2ACGZa5Y/XDzRbX/ZVIk4=;
 4:4JAuwhb4DkoWOZ1BgD5gJ51jaksSjwl0Bo6fpYVk/auSi1ry3ZgZnB4eq7TmWkz3/9HmZFMGyxUitZRcOQmPiT8SYwlA/CQpSRexsb3x3WbZ8y5/wqPMTvzA6PGAxwhFa/hRUsLk1nxVcHFtzrtyAUhw9TlcZ6sZPpQhQ6HzxhB0RV5wffH6DL9LaQHy8a7m+Za+Nk0Dr+Nx1qqlZXINtvhogp/dovyhnbp6M0PdsIVstccaZnhlaawr9Dm9MRzWGUvc3FTjHmNWevtvtwe2iDxMHeHwuN+w4yqwmdAB2w6bOT0h2LJWlLIp7YXPU8/A
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR08MB0985D5225A6A2656DE701F9384B50@HE1PR08MB0985.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231232)(944501327)(52105095)(3002001)(10201501046)(93006095)(93004095)(6055026)(6041310)(20161123562045)(20161123558120)(201703131423095)(201703011903075)(201702281528075)(20161123555045)(201703061421075)(20161123560045)(20161123564045)(6072148)(201708071742011);
 SRVR:HE1PR08MB0985; BCL:0; PCL:0; RULEID:; SRVR:HE1PR08MB0985; 
X-Forefront-PRVS: 0647963F84
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR08MB0985;
 23:LaOocUOQnEAjIItw7di0rSdti5/YJn5NxXhtOY1r6?=
 =?us-ascii?Q?YM4cCiiM1XzZqVBxWyr1OucdWqjUJVW5nn2Jr97nfo7ZI5F7haPvbMgDKzAw?=
 =?us-ascii?Q?aRI8xaaPjA9pX7evJ91H1d5btyFxOgWq2u1DaTC33cgbijVtD6mGgjQR47qG?=
 =?us-ascii?Q?RCSdTL2Z4l2IdtG8l1tN9BVhXg1OeWVLlncvksROgizMai6oApv+rGjfp+nx?=
 =?us-ascii?Q?AlejSnexC1NiNp251jqX9cIPDul5j5BwAiSM3ujzWXmBc+pbYcCuvxegzsCq?=
 =?us-ascii?Q?Y8fcyhD3bgpyPlowv8Wt5/6iozjiwS6c1t9UTLFoX4t0Oalxcg4ewOq8Xa9+?=
 =?us-ascii?Q?nJKhpCSznRMXm9J/Gs4Bmjbi8oh0UabZepuSzbjWUb+cbZLFGTSzlkmPhoAK?=
 =?us-ascii?Q?tufw7xBR0rNOwbW99WbsqxQ+o4w3CRNPyjE1eoOAdX1Fok/tquoQE75AMkcL?=
 =?us-ascii?Q?eVcqmCKT5S7Xh+dxH0hlF1gKDpeAXq6YB5PahT0lhq7jTOU+6vBGQe0WAei4?=
 =?us-ascii?Q?HSY4DAn2YaR/eTVWUnxX738EqkbMfFLFeMbrIjocZoOaoJOBcK/EMg6QT0Ac?=
 =?us-ascii?Q?+9WL9GQ1mtOQ/EBsTmdsmFsY/jJ+dejTrcGqj2M0Gx2B8kPrcYgxzVQ5WPeo?=
 =?us-ascii?Q?QxiCod5o/ULFFc7t7KAbHqf3J3uyCIg0whMt1jY5cH4peFQguEuHDHMRnCGk?=
 =?us-ascii?Q?n0qjDjIxUM057exPSQXJVb1pCjocPSD1XLwJdkXAVyI/MooIqXj/6xzLVlxp?=
 =?us-ascii?Q?3KZg3e3e8A5pMqt5ou4RA2ugnrEBslg62mK1HRJPwSxOQQ7fJkkWcGwhhfep?=
 =?us-ascii?Q?q7stkPH8kl9GU9MeY1/6/+FUB8zseOLORwlHtLEzMJZ2cirD840OLw3URyvr?=
 =?us-ascii?Q?zfw/+Joz1gymrP2jiiIDnBzOD2q4wQTxSr0KhOuicdgVy3SBkRBkusyeguhl?=
 =?us-ascii?Q?9zkvJvbUxkZddXnUNc6dptRzjeVRZpejktC8DH1BX19K9EIGnuY1DaF5qzWt?=
 =?us-ascii?Q?93Dc2JViPrQxrkmXSCSltjQhHQFcTDdSYTu6Qky6lwkRKp5a7OgONoNHVxGT?=
 =?us-ascii?Q?a/egCwH37o1189tei/3OcAnbxdmqCsfCgSBhW9HMY7kSp79/1D2EeyEyFHhv?=
 =?us-ascii?Q?vIZkYr+LQZR0vQodZAh7QJsxa0GHH3qbVVGBqpOEG9mksXvfD0DvBQvzx3RX?=
 =?us-ascii?Q?1D0k3KRLzgJ/d3tOZLA/qt4TYtJuAhj3Vx5JOW/ODmjtBlmk3DFqD77sYYCL?=
 =?us-ascii?Q?rBYT+xcXNSeDBp+uH1AE62ReeRzGy5fbPbQgQND7//8PM55pjVU4UrF/3N/6?=
 =?us-ascii?B?QT09?=
X-Microsoft-Antispam-Message-Info: xsDvi1hdlO02110TWqNwtCeN+uvsBuhmqWDxtymY1rK9RZNdxiRowngx7F7vDWnZWuDMvTAL9WY2SSIshYWsEGe/J8TLJQ3ccxlg7RaLw2Nm91ADdehh1WhlTcjlHZ+x09xRJWxYvi6VxjpxA2HXC33IHvs7l6RP5tO+B4V+Bdw/7xd8q34gVwHzTZKCrOUP6/tfJmCUTZ3GE6SuwPb8RUFJTdbZ3cs+2TLSIVfBJoLRtJZscaTkSDrTmK7DnCA1v4PUa/Hh6pnxHAx/aDIRyd3hnssWpHRLJLiF63pUlYf/XYycuXB76mkMGTldSpD7Sfv0lHleYwNiuptlVEqPbOTsWgcs/gPY03e7AzrpUzk57UgWa9U+ad/Tm/D8ZhUyFXs7AX/lMhzmlDb/JhfNI3xV6IKHq02VwpTX3kLkaWo=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB0985;
 6:paZ5UcBf3x0Jn7h0Zd83qKUsEVFdJe0pL2Bvg3gN1mViwSjYrcp3A62x5zUJstMViqDk8/pBtoMkwPyhANi2iRGXax5NsbSAkmfgEn5BbkWfSGLDckgJ3EKfic9u6d5FZjYILfNX1XBRbM7ITr7lQ8mUmIAAr0jsB/YLQ1FX3OS50OwGbg82Gr1S08OVWiUR1V9CAWd4kFFus/qeNdtVTV0wlHKIJWYQ4zdaBDMjCFMJdRzpbtKrsCCwh/ClvRAZ86Sq1P43m/zxUA+p/hFqOroZTbcXbUFh2k8VCuzmPUbgpvZbutCgsdPACZOMZ+HAMAhlDzSxd/AXR1KBMg6QZGCsQgY0Nweh0uEVzYiC4jNurexn088rZjlIpfjrQ52XAeJ2lJ3HnGvTyJt5KKYM4bTAaoN4Ig4A0AW2dDt//SMUuIBYPbmNgIIyDdO6fqbvLGNzQxOJI7tJMinHpcMY5tnZui7J30CqPDUCszgFf0rPkDqt+g0yeGJFoG/zW1c3;
 5:CIjxpiE7uPTIzvgVDGvPYkblkq01JhdQAXddBp/K/ZX9PrqScvfN77t1d28VE/B3gl32vu8dRJ4IiE6McLX3AiXj0ZO1L6iy8cPJxVh77mxBI7fvAm03ZTlyiYX2fYD30JqZ7+E4Evtt2jdVUtF/OyQ7P/xQF0mbwgIgba1UBPU=;
 24:cXyYLEPFQZydIw1iMd+iHdxolLts2H1/LRWHTkhq3zMNBFKzc5JSr4r4WrhnOe6TKenyU6nu/kcrKOyv5uWPypDcBPZrpxHmJPXFn6IkTJ4=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR08MB0985;
 7:VkuyKCGOGJJi+vWbMF+D9v9t9SmD92unDHCzE4whJ7to7iXORGGQeN/pACcsPXtIfQja6oSf0htSxiXLYwp5Z0Whprih2SFhjP1anSPlQ0EstnuV87V6hse6ZyKKLPII0I1TKTbxXDN8+9Bo/BVmu39zdXVziTBOFo7LU2LTe46CrhB/WNzuzdGJkZ9mR72cIXa4ZMVlBMk57bBMf82MHehJl/AGQe3GP/rJ6xqg1liaVx8pFP629XQAM9NXg+hm
X-MS-Office365-Filtering-Correlation-Id: ed950041-b316-407a-44f2-08d5a5df418b
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2018 10:21:03.5916 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ed950041-b316-407a-44f2-08d5a5df418b
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR08MB0985
Subject: Re: [Minios-devel] [PATCH v3 08/43] arm64: fix the wrong mask for
 to_virt/to_phys
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVGh1LCBBcHIgMTksIDIwMTggYXQgMTE6MDk6MzBBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDE5LzA0LzE4IDExOjAxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPk9u
IFdlZCwgQXByIDE4LCAyMDE4IGF0IDA1OjQyOjM3UE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90
ZToKPiA+PkhpLAo+ID4+Cj4gPj5PbiAxNi8wNC8xOCAwNzozMSwgSHVhbmcgU2hpamllIHdyb3Rl
Ogo+ID4+PkluIHRoZSBhcm02NCwgdGhlIG1hc2sgMHhmZmZmZmZmZiB3aWxsIHRydW5jYXRlIHRo
ZSB2YWx1ZSwgYW5kCj4gPj4KPiA+PnMvSW4gdGhlL09uLwo+ID4+Cj4gPj4+dG9fdmlydC90b19w
aHlzIHdpbGwgZ2V0IHdyb25nIHJlc3VsdHMuCj4gPj4+Cj4gPj4+VGhpcyBwYXRjaCBmaXhlcyBp
dC4KPiA+Pj4KPiA+Pj5TaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bh
cm0uY29tPgo+ID4+Pi0tLQo+ID4+PiAgaW5jbHVkZS9hcm0vYXJjaF9tbS5oIHwgNCArKy0tCj4g
Pj4+ICAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+ID4+
Pgo+ID4+PmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcmNoX21tLmggYi9pbmNsdWRlL2FybS9h
cmNoX21tLmgKPiA+Pj5pbmRleCBjNjY4NTZjLi5mNzdhMjEwIDEwMDY0NAo+ID4+Pi0tLSBhL2lu
Y2x1ZGUvYXJtL2FyY2hfbW0uaAo+ID4+PisrKyBiL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAo+ID4+
PkBAIC0xNSw4ICsxNSw4IEBAIGV4dGVybiBwYWRkcl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0
Owo+ID4+PiAgI2RlZmluZSBERUZfUEFHRV9QUk9UICAgICAwCj4gPj4+LSNkZWZpbmUgdG9fcGh5
cyh4KSAgICAgICAgICAgICAgICAgKCgocGFkZHJfdCkoeCkrcGh5c2ljYWxfYWRkcmVzc19vZmZz
ZXQpICYgMHhmZmZmZmZmZikKPiA+Pj4tI2RlZmluZSB0b192aXJ0KHgpICAgICAgICAgICAgICAg
ICAoKHZvaWQgKikoKCh4KS1waHlzaWNhbF9hZGRyZXNzX29mZnNldCkgJiAweGZmZmZmZmZmKSkK
PiA+Pj4rI2RlZmluZSB0b19waHlzKHgpICAgICAgICAgICAgICAgICAoKChwYWRkcl90KSh4KStw
aHlzaWNhbF9hZGRyZXNzX29mZnNldCkgJiAofjBVTCkpCj4gPj4KPiA+PldoaWxlIHRoaXMgbG9v
a3MgZ29vZCBvbiBhcm02NCwgZm9yIGFybTMyIHVuc2lnbmVkIGxvbmcgaXMgbm90IGdvaW5nIHRv
IGJlCj4gPj5lbm91Z2guIFNvIEkgdGhpbmsgeW91IHdhbnQgdG8gdXNlIH4ocGFkZHJfdCkwIHRv
IGNvdmVyIHRoZSAzMi1iaXQgY2FzZS4KPiA+U29ycnksIEkgZG8gbm90IHVuZGVyc3RhbmQgeW91
ciBtZWFuaW5nLi4uIDooCj4gPkRvIHdlIG5lZWQgdG8gY292ZXIgdGhlIGFybTMyIGhlcmU/Cj4g
Cj4gdG9fcGh5cygpIGFuZCB0b192aXJ0KCkgYXJlIGRlZmluZWQgaW4gZ2VuZXJpYyBhcm0gaGVh
ZGVycy4gV2hpbGUgMzItYml0IGlzCj4gbm90IHN1cHBvcnRlZCwgaXQgd291bGQgYmUgYmV0dGVy
IHRvIGNvdmVyIGl0IGFzIGNhc3QgcHJvYmxlbSBhcmUgcmVhbGx5IGEKPiBwYWluIHRvIGZpeCBp
dCBhZnRlcndhcmRzLgpPa2F5LCBJIHdpbGwgdXNlICJ+KHBhZGRyX3QpMCIgZm9yIHRoZSB0b19w
aHlzLi4uCgo+IAo+IEJ1dCBJIGp1c3QgcmVhbGl6ZWQgdGhhdCBtaW5pLW9zIG9ubHkgc3VwcG9y
dCA0RyBvZiBSQU0gYmVjYXVzZSBpdCByZWxpZXMgb24KPiBtYXBwaW5nIGFsbCB0aGUgbWVtb3J5
LiBBbSBJIHJpZ2h0PwpJIGRpZCBub3QgdHJ5IGJpZyBtZW1vcnkgd2hpY2ggaXMgb3ZlciA0Ry4g
QnV0IEkgdGhpbmsgdGhlIG1pbmktb3MgY2FuIHN1cHBvcnQgbWVtb3J5Cm92ZXIgNEcuCj4gCj4g
SWYgc28sIHRoZSBVTCBtaWdodCBiZSBmaW5lLiBBbnkgb3BpbmlvbnM/CkRpZG8sIEkgd2lsbCB1
c2UgIn4ocGFkZHJfdCkwIiBmb3IgdGhlIHRvX3BoeXMuLi4KClRoYW5rcwpIdWFuZyBTaGlqaWUK
Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1k
ZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBz
Oi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 19 10:22:30 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Apr 2018 10:22:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f96hx-00086a-L3; Thu, 19 Apr 2018 10:22:29 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=7ogj=hi=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1f96hv-00086V-MI
 for minios-devel@lists.xenproject.org; Thu, 19 Apr 2018 10:22:27 +0000
X-Inumbo-ID: 698b82b5-43bb-11e8-9728-bc764e045a96
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe08::62a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 698b82b5-43bb-11e8-9728-bc764e045a96;
 Thu, 19 Apr 2018 12:21:24 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=X7RHAmyO/SOSC7Cln0r88ux0ehkc7cXQA/gJk5xqsX4=;
 b=lBOdLVXGqVIwf69nDXkpB5c4ytILCMIopixu1LHEYcuz95px8boye9RvjxZIodajtjXM2Ea+qOW66SYFkaFwx5VtYdgCPPfg+rbBBhvt4ngJPUpgfWmAPqHIILPD8O+xCCTxVXUwVcmlLLlmxYX8Xml+f99IYnr4MDfEkJBOy2A=
Received: from VI1PR0802CA0030.eurprd08.prod.outlook.com
 (2603:10a6:800:a9::16) by DB6PR0802MB2422.eurprd08.prod.outlook.com
 (2603:10a6:4:9f::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Thu, 19
 Apr 2018 10:22:19 +0000
Received: from VE1EUR03FT057.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::201) by VI1PR0802CA0030.outlook.office365.com
 (2603:10a6:800:a9::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Thu, 19 Apr 2018 10:22:19 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT057.mail.protection.outlook.com (10.152.19.123) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.675.14 via Frontend Transport; Thu, 19 Apr 2018 10:22:18 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Thu, 19 Apr 2018
 11:22:15 +0100
Date: Thu, 19 Apr 2018 10:22:12 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180419102211.GA29915@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-9-git-send-email-shijie.huang@arm.com>
 <7f8bf41b-4add-296a-cf5d-0a7cb1953d62@arm.com>
 <20180419100120.GC29673@ubuntu.shanghai.arm.com>
 <b0855a33-7ebc-616e-2ae1-8c29d4b94bfd@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <b0855a33-7ebc-616e-2ae1-8c29d4b94bfd@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(7966004)(396003)(376002)(39380400002)(346002)(39860400002)(2980300002)(438002)(189003)(199004)(57704003)(53546011)(305945005)(8936002)(446003)(7696005)(106002)(4326008)(2906002)(6862004)(229853002)(106466001)(6246003)(33656002)(58126008)(5660300001)(316002)(23726003)(86362001)(16586007)(93886005)(76176011)(50466002)(6636002)(476003)(72206003)(6666003)(1076002)(508600001)(486006)(104016004)(55016002)(8666007)(126002)(54906003)(46406003)(426003)(77096007)(26005)(97756001)(356003)(186003)(8676002)(11346002)(47776003)(336012)(39060400002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2422; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT057;
 1:8iwcIYI+FRIJjR2CLAr/8gIO8bUfCvXTVEm7cDQUgYdu5hrCjHhpeyhf7p9B59acm+3DY1X4COTkFs74XFhK0ROF5PgmymNn0i4V4E7uGTsYk203EAwEKTDEGdQQjcsg
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2422; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2422;
 3:hcAtoH90oI0uT1B0taemea5suwvFl1c/cUU8icaIMFmLvQOTIYKY4W4i3JkmNbo2pesVZVXQmMYdc+e65LictKrQHrBsbTB/hURDDTOljJzGRvnS8VFnR3/gkzXVqcqQ73G/SaSsue7iICtYNwn0fhFcOxZRhaZMye+2Di7RW7k5rg0MVGU7HflA3h53JltYNZr4R4N+2jmN95TULFHJwfimMdTV5Ik5RZj6uhALPNDt0hxMMu7bUEtMJDSFGKI0wrJY6xC2UqTrbhIdX/ZSuEAkFn9DXdbrd5xoAlJfKLt87nyYruM7bCb3q2/9yR9qC2Ezm5ggvWj6du4USggOC3BZ+7xy+eBZ9veMYIuyDcA=;
 25:xyT6O9k5wwuGZ4j3mNjYko32WY9JM1PwfqAumYKZsfR5Zk7KENZNEZ42ikqhclC4th3VdBOWD+y+e/r6sMG5D9/dTlkCEcGpzAmkKNQSm90gMQ5FlFTGL6T6lmprJ1leMMA5+YhzREcNhwJ0lmjI3Ykq5mJPZcMTteW2T+jwT6Z9XIc1S+sWM532bFPx12mzJSbEGFM3VgrXQ2EjGbzi2w4LGb+Z2+IkbizyHTHyg/hvwTC93cmLMtL04pARAg440cuzFZ5DaLPQNCMLudj6lSaa/KqeM6xC3PSiKQtJIudQ7ojGmxURV8krNDuKGy0eyrL0iiiqb7gN6Dl7T03OWg==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2422:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2422;
 31:U6w7Qo4jmaY5x0ruMsjlnCGH0bHWqdXdMp6gX2DfCU+7z0QzPaj1rl9D67RjrJdEA7jhe7DUPhzqV1tWy+rDrXgWMjHsrAJCCxf3ba150C6Ncdq9c8SMmqE0grsDZDoEy4mUuhVpIP3K8Kb1MAP7e727m+cE4MkG/NGaA7IEWgNBswj6qvXDnGfXf7KXxwDLa/ysOkc2Y7gbZ+BUv6+tHQzMXq8jqNNiZk6zbGgClXE=;
 20:f0cX8Wkr9CyHL0efIJaZ/GLOA7p0rxHhRive3arBjjggRdQ04oosC2kY4kMfVV/RrEMalRNob4KyzBX7AZIaNMCqYaoGlJzYz/cl6j6yFqdHFNPYVDb2uAKtXfROLrSCMcEgH4e6wIb8cAzJgJdBHXbScBoKlfAe4W91wY6Wdry+1XkOqBtHN0Dcz0GWdPwqOKJdQto7WSoAH3ug6NkPIM3yYNhKbWoIrX80yl0BRNkgeF08IUhByrTkRT9mzsuBAN3Y3TtR9wlZUZxZJ0albtb92TOWgB1FfQholVqvTRDbWREzGrzslkF2QjT6MhTuX1pOm0R5AupQHiWLNreaPyzc88N+RO5mvEfYgGTXAsE=;
 4:WuGBmrEayy3xnS1exO4+tRxYL7ELtoSNPaNuGr6BnWdpYlD6KBUDPggCRQvyBVDVro8nmVlWH0VNijr8xOvPdKfeiT+o80NvxQsptiJDMI3ikEQcEOEgNWdbVOvDpa7XSB529Pq49H00uuGOIGllQcOlwHVJxYMyFpke+A0VrnUAG9vY7afyiL4eqpUFIW1Fqry1C8rY6YR8+a8S8at3ppbJkM/PJGkzelAY/IctKE5PpCpfKwpMw5vAVmukOKTmqwIXinCKpA2zwwQpvcPBlkVrBxNCnKVxL2N8mVsd3LMIjLyv1nWwoWHfnS68ZUmx
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB2422CFF74A852B5DBA87AB4A84B50@DB6PR0802MB2422.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(3231232)(944501383)(52105095)(93006095)(93004095)(6055026)(6041310)(201703131423095)(201703011903075)(201702281528075)(20161123555045)(201703061421075)(20161123564045)(20161123558120)(20161123560045)(20161123562045)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2422; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2422; 
X-Forefront-PRVS: 0647963F84
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0802MB2422;
 23:kLLHykR+hwr6sMrKseTbSiCOW9ZOFt7TOd7KoDu?=
 =?us-ascii?Q?uhfK5zTPIT8QFD/CVlEzKkd74kSKBUHox4vt/Qt2nXMs4uIyqJd+iSACXX+4?=
 =?us-ascii?Q?ZwxdcqhzUPVFkTglanUq4WHOaMCcwXzZmI7+wAeX31ecNpMSZWNsB1RSHKkW?=
 =?us-ascii?Q?nKRwDJWVrmjXKqSown2wfEgac2/ur/BunfPoVDeXqITvdmRYV2YxYiqFOfe2?=
 =?us-ascii?Q?u2nxBHSmexlbFtTLR/WNgfK3eUUfdnXIeKZPuH2yRELLTgvkJ7odSy57na58?=
 =?us-ascii?Q?OgJETTCT0I6qwUYpLdwJSsNLGolNzuyYPDu9EnYTJWpqc5Ty2beV2dgeFW8T?=
 =?us-ascii?Q?01xrocagz4giIbEByzXhz3NTtjCx+rnqF1k3uGS5DgJtNUapaQKwz8TFVf5C?=
 =?us-ascii?Q?+5OVuTXI9ktXP6IdLVLEWnwZPDc8CDszOaU0h9koNQ3cAiDMdTTHpunQRdZe?=
 =?us-ascii?Q?T6GXel2ZL205ggSlzaOHqb9qr5JYiz9ZnZxuf4HToFqvp8Vl5ObmP97hLGWq?=
 =?us-ascii?Q?qhedu5aYXjS4Uopz5xsUjBwQiTnBwxE8pCAAlTyW+WHAFhi+2jH9rb5URUOb?=
 =?us-ascii?Q?DTbtNEc6SfIwdCFHyHx3HhZ6j35mBMY8/MrMg2ig0vvqrDxJNBMzqAi2ucv0?=
 =?us-ascii?Q?zMe4Oel4qsTTdLrAWMnxQYf+m3AL8QxnsI9BIqcVluWinaENfNvAaXf+cjXe?=
 =?us-ascii?Q?iyZ5XBECGulHFHqdJtuO7HQV/HxeL14WEw6fM+qvknlYTPTknvPnMPQU4x7N?=
 =?us-ascii?Q?NN/duCBDM+uvR8hKRGgxwXt/V6Lhr7I2SGKswOc2++XrSKbsZoaQnLLNENE/?=
 =?us-ascii?Q?avSJwUNwi4orRoYwjw2FM44LLfyxPSdEiiALXB4ZZujacQg6QoboyhyS2pF3?=
 =?us-ascii?Q?5A0q0Ns1WPenKVxd0fIyVHAHvHlNNOnw2Pkk3GSzLH1qyHMxgTbhPEmsnrpq?=
 =?us-ascii?Q?zTjnKtZvh2o9hcKOfkFxEtc8gWFGUsOSfIfeHUHC5YzRFAADogaqbSWZn2jA?=
 =?us-ascii?Q?CwHGnKSAtdpQyFcqB9jKSLej4jqPtWW2YDhqXuifIRf4qjdZ+cv1W02iJASS?=
 =?us-ascii?Q?AEEFtk/l5q9PaRjyV9KvrCk+n6jqjol5ZpsPPLPhsm8DIAkYH27hUzbbJZl/?=
 =?us-ascii?Q?IZh5BMflubbMLpqYZGJlT7HXw8mmtm6WjZF2ogg2UiSCAnUqqJYhH0KSFSBX?=
 =?us-ascii?Q?sSxoO/snu+sYpGSDAo7A5cGbYlyGsUcpiieVmI9B0XSSMmdcg/VbN2/fA4QO?=
 =?us-ascii?Q?VRNJ8hGWM/7zP2JApAWrWTRJltzPf0H6G8C5QIOtROXgdl1tEcblOwX7yVor?=
 =?us-ascii?Q?Xsw=3D=3D?=
X-Microsoft-Antispam-Message-Info: W84s3t5+ahV7UpP+wDxvmQKB3GaO73sU3Iu1qgVhCO6C3JzgcyFTCp1Z+1wOvqkNF8Lq+zTQFi/Twlr0l4kDoyVfZjUunJLbjM3opPqun7KLYqxUWaxtjVFh9WFTBpEucBwIHHjrPfE6GH/rvkkqehS01xD/Wf22RzuP/rfDAPP84B639aURDjEtzEKdnNnMeVYt88LJsq1OG55gSIRju2aipfXf0TOfDWCPu4bnw3McU7rkNcQ5BwgUdOLPn71ZDpp7gPosvtyuv7TlPUW6x8miIVg3whgcRfAjRWy5PT2B8wkGZFimtFoGmCAa5cWEpy8aDNIUKKeh9vIGtc6frNQH1q5H7fnmQKQAPdPtIDi+svmxURRNuRm78Qrqw/BxCdbWs9G4963AaWcMdrj9FMIPor5EDCUqqbJKGtpERTg=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2422;
 6:gCtYVNE7iJGlVg38iWXH9HK9QmxfNcLkSy9oZMlBggYnxvDrEXoUvl/a2tiK8WwodkMs6yDNg9Hk1FGL5UYZqJN9o2Jv+WljcNX/krWlLO2tzQr9zwQUNuNGmROchM3DDR8zsvnPSuMM/fLKXONrCnstfyqxJpin8/ftogeNuaf2yboR19OHC7sXajRrKcLFyFkev6/HiXHqtVaOxIcPKWKO+eDNB21vq1bgp3WHXOrp9IVBY4ApVL/SsoxaLwQgIDb4SpKDew9oTMnKTqQIVEB3iSyKmqm5lEPctEvuSrzlLvwQllnlCBI0C+mMFF06IDSWvusvM4NPJCA316vxVkn/XJQtzUxA5McFrAbAehhQg5Fd0sh23sMuVqflSpPoqQvwSnOcj46lCu2UCFfiGrt+Nso6bLPlkSYG/G9GdCEbGj9osxXKErvtrOeEs5RHXafu8dgMqPrQF0TQMmkpXVy828/BeHckEQifm/LQw6Wtun04m3LXI06QsPDqHT9t;
 5:qNB8i19275PribAWao9Dw8TYv6aMfCNM+1ugmQI0Q2qEZdN5hjmjfNSlmymzR+wP8gixvBRKtuW+292Tu+1in8KRk+NG9g0bqvVvG9+ldcR0Ppav6fXEMDN52T6OTLNQSTK5n0Wc7rBS1ZGRxsVu8gUCO9tDCv1cUbSuldIL2to=;
 24:dIyxF7nqtill6b8LZeeAHXmKVYJ4Cs8Oohw2z5UwmupEm3TXr6EYlmkMGFKfoEIlIEG40ZAfVEkUpniper1J5hXEa+i4XarPcfI7O9Xr5vw=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2422;
 7:z48xB2P2AveJVkdhMRXyzB5SiMiq+3RIOVggcPoeAaU92sBSy+7exdSEOGdt6VrizEa1lYYSX0HrSmTpV+rjWoHV+JcRJmqqBU4Mv7ws1cIIRkQEoVGDYdWb9W3Y9+3+I186OjvuQ9HO7RQFVEAs9ekZucfoexj/BB4YMkdSOUWuh4DbW5ftVtCdE9nTGAJM2S9/NHiw+wfRuL4Pg+00eMH2CaBX8ZHA4LsD77Byh1t77OsAAY7CYMAAkCPeqH/F
X-MS-Office365-Filtering-Correlation-Id: 93bd86c6-394b-4120-5f9c-08d5a5df6e65
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2018 10:22:18.8408 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 93bd86c6-394b-4120-5f9c-08d5a5df6e65
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2422
Subject: Re: [Minios-devel] [PATCH v3 08/43] arm64: fix the wrong mask for
 to_virt/to_phys
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVGh1LCBBcHIgMTksIDIwMTggYXQgMTE6MDk6MzBBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDE5LzA0LzE4IDExOjAxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPk9u
IFdlZCwgQXByIDE4LCAyMDE4IGF0IDA1OjQyOjM3UE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90
ZToKPiA+PkhpLAo+ID4+Cj4gPj5PbiAxNi8wNC8xOCAwNzozMSwgSHVhbmcgU2hpamllIHdyb3Rl
Ogo+ID4+PkluIHRoZSBhcm02NCwgdGhlIG1hc2sgMHhmZmZmZmZmZiB3aWxsIHRydW5jYXRlIHRo
ZSB2YWx1ZSwgYW5kCj4gPj4KPiA+PnMvSW4gdGhlL09uLwo+ID4+Cj4gPj4+dG9fdmlydC90b19w
aHlzIHdpbGwgZ2V0IHdyb25nIHJlc3VsdHMuCj4gPj4+Cj4gPj4+VGhpcyBwYXRjaCBmaXhlcyBp
dC4KPiA+Pj4KPiA+Pj5TaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bh
cm0uY29tPgo+ID4+Pi0tLQo+ID4+PiAgaW5jbHVkZS9hcm0vYXJjaF9tbS5oIHwgNCArKy0tCj4g
Pj4+ICAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+ID4+
Pgo+ID4+PmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcmNoX21tLmggYi9pbmNsdWRlL2FybS9h
cmNoX21tLmgKPiA+Pj5pbmRleCBjNjY4NTZjLi5mNzdhMjEwIDEwMDY0NAo+ID4+Pi0tLSBhL2lu
Y2x1ZGUvYXJtL2FyY2hfbW0uaAo+ID4+PisrKyBiL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAo+ID4+
PkBAIC0xNSw4ICsxNSw4IEBAIGV4dGVybiBwYWRkcl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0
Owo+ID4+PiAgI2RlZmluZSBERUZfUEFHRV9QUk9UICAgICAwCj4gPj4+LSNkZWZpbmUgdG9fcGh5
cyh4KSAgICAgICAgICAgICAgICAgKCgocGFkZHJfdCkoeCkrcGh5c2ljYWxfYWRkcmVzc19vZmZz
ZXQpICYgMHhmZmZmZmZmZikKPiA+Pj4tI2RlZmluZSB0b192aXJ0KHgpICAgICAgICAgICAgICAg
ICAoKHZvaWQgKikoKCh4KS1waHlzaWNhbF9hZGRyZXNzX29mZnNldCkgJiAweGZmZmZmZmZmKSkK
PiA+Pj4rI2RlZmluZSB0b19waHlzKHgpICAgICAgICAgICAgICAgICAoKChwYWRkcl90KSh4KStw
aHlzaWNhbF9hZGRyZXNzX29mZnNldCkgJiAofjBVTCkpCj4gPj4KPiA+PldoaWxlIHRoaXMgbG9v
a3MgZ29vZCBvbiBhcm02NCwgZm9yIGFybTMyIHVuc2lnbmVkIGxvbmcgaXMgbm90IGdvaW5nIHRv
IGJlCj4gPj5lbm91Z2guIFNvIEkgdGhpbmsgeW91IHdhbnQgdG8gdXNlIH4ocGFkZHJfdCkwIHRv
IGNvdmVyIHRoZSAzMi1iaXQgY2FzZS4KPiA+U29ycnksIEkgZG8gbm90IHVuZGVyc3RhbmQgeW91
ciBtZWFuaW5nLi4uIDooCj4gPkRvIHdlIG5lZWQgdG8gY292ZXIgdGhlIGFybTMyIGhlcmU/Cj4g
Cj4gdG9fcGh5cygpIGFuZCB0b192aXJ0KCkgYXJlIGRlZmluZWQgaW4gZ2VuZXJpYyBhcm0gaGVh
ZGVycy4gV2hpbGUgMzItYml0IGlzCj4gbm90IHN1cHBvcnRlZCwgaXQgd291bGQgYmUgYmV0dGVy
IHRvIGNvdmVyIGl0IGFzIGNhc3QgcHJvYmxlbSBhcmUgcmVhbGx5IGEKPiBwYWluIHRvIGZpeCBp
dCBhZnRlcndhcmRzLgo+IApva2F5LCBJIHdpbGwgdXNlIHRoZSAifihwYWRkcl90KTAiIGZvciB0
b19waHlzLgo+IEJ1dCBJIGp1c3QgcmVhbGl6ZWQgdGhhdCBtaW5pLW9zIG9ubHkgc3VwcG9ydCA0
RyBvZiBSQU0gYmVjYXVzZSBpdCByZWxpZXMgb24KPiBtYXBwaW5nIGFsbCB0aGUgbWVtb3J5LiBB
bSBJIHJpZ2h0PwpJIGd1ZXN0IGl0IGNhbiBzdXBwb3J0IG1vcmUgbWVtb3J5Li4KPiAKPiBJZiBz
bywgdGhlIFVMIG1pZ2h0IGJlIGZpbmUuIEFueSBvcGluaW9ucz8KRGlkby4KCnRoYW5rcwpIdWFu
ZyBTaGlqaWUKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
Ck1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qu
b3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3Mt
ZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 19 10:24:08 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Apr 2018 10:24:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f96jX-0008AP-RP; Thu, 19 Apr 2018 10:24:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=krwd=hi=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f96jX-0008AK-Ah
 for minios-devel@lists.xenproject.org; Thu, 19 Apr 2018 10:24:07 +0000
X-Inumbo-ID: 11f835a0-43bc-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 11f835a0-43bc-11e8-8249-2fda3a446a53;
 Thu, 19 Apr 2018 10:26:07 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id ECE5E80D;
 Thu, 19 Apr 2018 03:24:05 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 23AD93F59D;
 Thu, 19 Apr 2018 03:24:04 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-9-git-send-email-shijie.huang@arm.com>
 <7f8bf41b-4add-296a-cf5d-0a7cb1953d62@arm.com>
 <20180419100120.GC29673@ubuntu.shanghai.arm.com>
 <b0855a33-7ebc-616e-2ae1-8c29d4b94bfd@arm.com>
 <20180419102034.GF29673@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <faf22c73-b91c-2863-38da-c82f34d3350d@arm.com>
Date: Thu, 19 Apr 2018 11:24:02 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180419102034.GF29673@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 08/43] arm64: fix the wrong mask for
 to_virt/to_phys
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAxOS8wNC8xOCAxMToyMCwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFRodSwgQXByIDE5
LCAyMDE4IGF0IDExOjA5OjMwQU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4KPj4KPj4g
T24gMTkvMDQvMTggMTE6MDEsIEh1YW5nIFNoaWppZSB3cm90ZToKPj4+IE9uIFdlZCwgQXByIDE4
LCAyMDE4IGF0IDA1OjQyOjM3UE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4+PiBIaSwK
Pj4+Pgo+Pj4+IE9uIDE2LzA0LzE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4+Pj4+IElu
IHRoZSBhcm02NCwgdGhlIG1hc2sgMHhmZmZmZmZmZiB3aWxsIHRydW5jYXRlIHRoZSB2YWx1ZSwg
YW5kCj4+Pj4KPj4+PiBzL0luIHRoZS9Pbi8KPj4+Pgo+Pj4+PiB0b192aXJ0L3RvX3BoeXMgd2ls
bCBnZXQgd3JvbmcgcmVzdWx0cy4KPj4+Pj4KPj4+Pj4gVGhpcyBwYXRjaCBmaXhlcyBpdC4KPj4+
Pj4KPj4+Pj4gU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNv
bT4KPj4+Pj4gLS0tCj4+Pj4+ICAgaW5jbHVkZS9hcm0vYXJjaF9tbS5oIHwgNCArKy0tCj4+Pj4+
ICAgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKPj4+Pj4K
Pj4+Pj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJtL2FyY2hfbW0uaCBiL2luY2x1ZGUvYXJtL2Fy
Y2hfbW0uaAo+Pj4+PiBpbmRleCBjNjY4NTZjLi5mNzdhMjEwIDEwMDY0NAo+Pj4+PiAtLS0gYS9p
bmNsdWRlL2FybS9hcmNoX21tLmgKPj4+Pj4gKysrIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4+
Pj4+IEBAIC0xNSw4ICsxNSw4IEBAIGV4dGVybiBwYWRkcl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zm
c2V0Owo+Pj4+PiAgICNkZWZpbmUgREVGX1BBR0VfUFJPVCAgICAgMAo+Pj4+PiAtI2RlZmluZSB0
b19waHlzKHgpICAgICAgICAgICAgICAgICAoKChwYWRkcl90KSh4KStwaHlzaWNhbF9hZGRyZXNz
X29mZnNldCkgJiAweGZmZmZmZmZmKQo+Pj4+PiAtI2RlZmluZSB0b192aXJ0KHgpICAgICAgICAg
ICAgICAgICAoKHZvaWQgKikoKCh4KS1waHlzaWNhbF9hZGRyZXNzX29mZnNldCkgJiAweGZmZmZm
ZmZmKSkKPj4+Pj4gKyNkZWZpbmUgdG9fcGh5cyh4KSAgICAgICAgICAgICAgICAgKCgocGFkZHJf
dCkoeCkrcGh5c2ljYWxfYWRkcmVzc19vZmZzZXQpICYgKH4wVUwpKQo+Pj4+Cj4+Pj4gV2hpbGUg
dGhpcyBsb29rcyBnb29kIG9uIGFybTY0LCBmb3IgYXJtMzIgdW5zaWduZWQgbG9uZyBpcyBub3Qg
Z29pbmcgdG8gYmUKPj4+PiBlbm91Z2guIFNvIEkgdGhpbmsgeW91IHdhbnQgdG8gdXNlIH4ocGFk
ZHJfdCkwIHRvIGNvdmVyIHRoZSAzMi1iaXQgY2FzZS4KPj4+IFNvcnJ5LCBJIGRvIG5vdCB1bmRl
cnN0YW5kIHlvdXIgbWVhbmluZy4uLiA6KAo+Pj4gRG8gd2UgbmVlZCB0byBjb3ZlciB0aGUgYXJt
MzIgaGVyZT8KPj4KPj4gdG9fcGh5cygpIGFuZCB0b192aXJ0KCkgYXJlIGRlZmluZWQgaW4gZ2Vu
ZXJpYyBhcm0gaGVhZGVycy4gV2hpbGUgMzItYml0IGlzCj4+IG5vdCBzdXBwb3J0ZWQsIGl0IHdv
dWxkIGJlIGJldHRlciB0byBjb3ZlciBpdCBhcyBjYXN0IHByb2JsZW0gYXJlIHJlYWxseSBhCj4+
IHBhaW4gdG8gZml4IGl0IGFmdGVyd2FyZHMuCj4gT2theSwgSSB3aWxsIHVzZSAifihwYWRkcl90
KTAiIGZvciB0aGUgdG9fcGh5cy4uLgo+IAo+Pgo+PiBCdXQgSSBqdXN0IHJlYWxpemVkIHRoYXQg
bWluaS1vcyBvbmx5IHN1cHBvcnQgNEcgb2YgUkFNIGJlY2F1c2UgaXQgcmVsaWVzIG9uCj4+IG1h
cHBpbmcgYWxsIHRoZSBtZW1vcnkuIEFtIEkgcmlnaHQ/Cj4gSSBkaWQgbm90IHRyeSBiaWcgbWVt
b3J5IHdoaWNoIGlzIG92ZXIgNEcuIEJ1dCBJIHRoaW5rIHRoZSBtaW5pLW9zIGNhbiBzdXBwb3J0
IG1lbW9yeQo+IG92ZXIgNEcuCgpJIG1lYW50IG9uIDMyLWJpdC4gU29ycnkgZm9yIG5vdCBiZWVu
IGNsZWFyZXIuCgo+Pgo+PiBJZiBzbywgdGhlIFVMIG1pZ2h0IGJlIGZpbmUuIEFueSBvcGluaW9u
cz8KPiBEaWRvLCBJIHdpbGwgdXNlICJ+KHBhZGRyX3QpMCIgZm9yIHRoZSB0b19waHlzLi4uCj4g
Cj4gVGhhbmtzCj4gSHVhbmcgU2hpamllCj4gCgotLSAKSnVsaWVuIEdyYWxsCgpfX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGlu
ZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhl
bnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 19 10:24:26 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Apr 2018 10:24:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1f96jq-0008BF-TS; Thu, 19 Apr 2018 10:24:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=krwd=hi=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1f96jp-0008BA-L1
 for minios-devel@lists.xenproject.org; Thu, 19 Apr 2018 10:24:25 +0000
X-Inumbo-ID: 1ca584ab-43bc-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 1ca584ab-43bc-11e8-8249-2fda3a446a53;
 Thu, 19 Apr 2018 10:26:24 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 04AFE80D;
 Thu, 19 Apr 2018 03:24:24 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 39A943F59D;
 Thu, 19 Apr 2018 03:24:22 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-12-git-send-email-shijie.huang@arm.com>
 <c86057d1-5bb5-77f7-05e0-e11c07a56381@arm.com>
 <20180419101450.GE29673@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <2b72986f-ae2d-298b-d0bf-5ea084159fd7@arm.com>
Date: Thu, 19 Apr 2018 11:24:20 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180419101450.GE29673@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 11/43] arm64: dump the registers for
 do_bad_mode()/do_sync()
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMTkvMDQvMTggMTE6MTQsIEh1YW5nIFNoaWppZSB3cm90ZToKPiBPbiBX
ZWQsIEFwciAxOCwgMjAxOCBhdCAwOTowNjoxM1BNICswMTAwLCBKdWxpZW4gR3JhbGwgd3JvdGU6
Cj4+IEhpLAo+Pgo+PiBPbiAxNi8wNC8yMDE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4+
PiBUaGlzIHBhdGNoIGFkZHMgYSBuZXcgZnVuY3Rpb24gZHVtcF9yZWdzKCkgd2hpY2ggY2FuIGR1
bXAgdGhlIHJlZ2lzdGVycwo+Pj4gaW5mb3JtYXRpb24uCj4+Pgo+Pj4gQW5kIHRoZSBkb19iYWRf
bW9kZSgpL2RvX3N5bmMoKSB3aWxsIHVzZSB0aGUgZnVuY3Rpb24gdG8gZHVtcCB0aGUKPj4+IHJl
Z2lzdGVycy4KPj4+Cj4+PiBUaGlzIHBhdGNoIHJlZmVycyB0byBWb2xvZHlteXIgQmFiY2h1aydz
IHBhdGNoOgo+Pgo+PiBEbyB5b3UgbWVhbiAiYmFzZWQgb24iIGluc3RlYWQgb2YgInJlZmVycyB0
byI/Cj4gSXMgdGhlcmUgc29tZSBkaWZmZXJlbnQ/Li4KCklITU8sICJiYXNlZCBvbiIgaXMgbW9y
ZSBzdWl0YWJsZSBiZWNhdXNlIHlvdXIgcGF0Y2ggaXMgcmUtdXNpbmcgdGhlIAppZGVhcyBvZiBW
b2xvZHlteXIncyBwYXRjaC4gInJlZmVycyB0byIgaXMgbW9yZSB3aGVuIHlvdSB3YW50IHRvIGxp
bmsgdG8gCmEgZG9jdW1lbnRhdGlvbiBvciBlLW1haWwuIEZvciBpbnN0YW5jZSAiUGxlYXNlIHJl
ZmVyIHRvIHRoZSBBcm0gQXJtIApzZWN0aW9uIGZvbyIuCgpBIG5hdGl2ZSBlbmdsaXNoIHNwZWFr
ZXIgc2hvdWxkIHByb2JhYmx5IGJlIGJldHRlciB0byBleHBsYWluIHRoZSAKZGlmZmVyZW5jZS4K
Cj4+PiAgIHZvaWQgZG9fYmFkX21vZGUoc3RydWN0IHB0X3JlZ3MgKnJlZ3MsIGludCByZWFzb24s
Cj4+PiAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgZXNyLCB1bnNpZ25lZCBsb25n
IGZhcikKPj4+ICAgewo+Pj4gLSAgICAvKiBUTyBETyAqLwo+Pj4gKyAgICBwcmludGsoIiBCYWQg
YWJvcnQgbnVtYmVyIDogJWRcbiIsIHJlYXNvbik7Cj4+Cj4+IFdoYXQgd2FzIHRoZSBwdXJwb3Nl
IG9mIHRoZSB2YXJpYWJsZSAicmVhc29uIj8gSXMgaXQgYmVjYXVzZSBzb21lIHRyYXAgZG9uJ3QK
Pj4gZ2l2ZSBhIG1lYW5pbmdmdWwgZXJyb3Igc3luZHJvbWU/Cj4gVGhlICJyZWFzb24iIG1ha2Vz
IGl0IGVhc3kgdG8ga25vdyB3aGljaCB0cmFwIGlzIGZyb20sIHN1Y2ggSVJRL0ZJUS4KCkhtbW0g
c29tZWhvdyBJIHRob3VnaHQgeW91IHdlcmUgZHJvcHBpbmcgdGhlIGxpbmUuIE15IGJhZCwgSSB3
aWxsIGF2b2lkIApyZXZpZXcgcGF0Y2hlcyBsYXRlIGF0IG5pZ2h0IDspLiBzb3JyeSBmb3IgdGhl
IG5vaXNlLgoKPiAKPiBJIGd1ZXNzIGl0IG1heSBhbHNvIGNhbiBnZXQgdGhlIGVycm9yIGluZm9y
bWF0aW9uIGZyb20gdGhlIHN5bmRyb21lLgo+IGJ1dCBuZWVkIG1vcmUgY29kZSB0byBwYXJzZSBv
dXQuLgoKQWN0dWFsbHkgdGhlIGVycm9yIHN5bmRyb21lIGlzIG5vdCBhbHdheXMgdmFsaWQgKGZv
ciBpbnN0YW5jZSBpbiAKaW50ZXJydXB0IGV4Y2VwdGlvbikuIFNvIHlvdSB3b3VsZCBnZXQgc29t
ZSB0cm91YmxlLgoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApN
aW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0
Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 08:45:50 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 08:45:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAX6a-00038t-4R; Mon, 23 Apr 2018 08:45:48 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ja4f=hm=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fAX6X-00038o-W8
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 08:45:46 +0000
X-Inumbo-ID: 04965233-46d3-11e8-8249-2fda3a446a53
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [40.107.0.68]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 04965233-46d3-11e8-8249-2fda3a446a53;
 Mon, 23 Apr 2018 08:47:56 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=tbRUetsIglW3M8StJP1EgFSOmMf5U4PiS84WUGuCIrQ=;
 b=Kfz4eV42wn15V9dldPoGSwAYDM8DTRxlZvqvLkj82X2OGP7N5UbsKweSmXU/ojFWtJoVJT8YdKMGaaj/nE8e5z23mbt0J2MN2MKmg0U7o5SthD5rkgtPTnimAo4nwHpA9Wmjf0NjcslHIMlLuYOLmmylp1VbkBE3bxOUrnUsa48=
Received: from DB6PR0802CA0035.eurprd08.prod.outlook.com (2603:10a6:4:a3::21)
 by AM5PR0802MB2419.eurprd08.prod.outlook.com (2603:10a6:203:9f::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.696.13; Mon, 23 Apr
 2018 08:45:38 +0000
Received: from AM5EUR03FT014.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::205) by DB6PR0802CA0035.outlook.office365.com
 (2603:10a6:4:a3::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.13 via Frontend
 Transport; Mon, 23 Apr 2018 08:45:30 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT014.mail.protection.outlook.com (10.152.16.130) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.696.11 via Frontend Transport; Mon, 23 Apr 2018 08:45:30 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 23 Apr 2018
 09:45:27 +0100
Date: Mon, 23 Apr 2018 08:45:24 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180423084522.GA30544@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-15-git-send-email-shijie.huang@arm.com>
 <10d8ee18-d319-9c5b-a8e4-e7bdd51015fb@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <10d8ee18-d319-9c5b-a8e4-e7bdd51015fb@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39850400004)(39380400002)(346002)(376002)(396003)(2980300002)(438002)(199004)(189003)(86362001)(1076002)(5660300001)(6246003)(336012)(356003)(26005)(305945005)(8936002)(7696005)(6862004)(446003)(106466001)(486006)(39060400002)(54906003)(11346002)(316002)(426003)(77096007)(8676002)(186003)(106002)(126002)(476003)(58126008)(104016004)(2870700001)(6666003)(6636002)(8666007)(47776003)(50466002)(53546011)(33656002)(2906002)(2486003)(59450400001)(72206003)(4326008)(55016002)(23676004)(229853002)(76176011)(478600001)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0802MB2419; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; A:1; MX:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT014;
 1:3l5vKCZUeYEEoe9yjgLLnm0fibOvP3HyWNSgYraJig4KbQfUM1u7eZBe6S1INFjj0dHp3lv7W8mCtSjMRoW7+XU/wkORRojHVfRimruZb6EeZX6W+iEu01ud3H8722sY
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM5PR0802MB2419; 
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2419;
 3:6Ul3YxD+aczn1umEfd+VCtJjQvmWKGsMViJBiVcYP1hkvofu4sJOeu4ZHHqnoZHIddWYDmsj2dlAufMMm6MKaZT+jnFzB4Y6bpCQg7Tt8EcYNdv4BGlpNzO1aJfXEgPGlsE46QzXP9k10xEqWIrTih1yd4+pbC9YiHr3wQtLrR4sQ31PKRA1h1tDaJLRSfZV0iDtktkRg4hOXoKvdWpCf95bOHcveTCU8gYP87+LBa9Jod9fMA8vO7pmcxbsRgMf2lzyh8OSmEpfj+tMGvbuHFuS7PPUwgaRsbp+Y7pZVi3+Q4VaOqGZncG1ZlAzqZMqQd/yH3p1oiycmFf6JKCMwur56L23jcC5Kk6ezVdPvvQ=;
 25:blbFrlR3v5Y3exA20rNwCzz42lFTdDJ1VJWDPGDr9SYUdsALTllxngMUKJUwqH2JC0NSwY9gcobaqxBwon6Ud9I6z4wR/u5mC9ZU2HG0j2FEdv4yjYeJouEZ76uF0pC6KOw8UAWVzrSkx+a6zLUGPQzUcEXSKy/PGRGmJ2TJ6RSsTk43+9lqAGw6sIui5Hk2Yc/JzPBpvyO0jBLTWe+pg16X1cJwMTgoJn1SK/w8YgmTu+xX3YxX2g+Q9kGBmL6exaYRt57Jl994uTSa7tgD9s8UseOt/C3lEKOFxZ6px35i08eOmOvf46+b2UKC/tl97yo39rjRvnrxqxaFPA4ZIw==
X-MS-TrafficTypeDiagnostic: AM5PR0802MB2419:
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2419;
 31:YLurCa9MJW031IUWHPxB2JPwi5G6quu2FzwnI6ScwnR8vtn5Gcfjf4yRgLFaSp9x8xyAPn782FVn7ZVtxzt7DO3YJdIISS5RJy+eGa5ENINBFO7QEgCzTHZrBXNr2J0iOnrcvC+NQxj0luL9qqVkcbCOt10xgmCKj4NiirIHZUnKMpi+SE5i36sytSVP3FjX/DT6XTxAkKajNeiICpq0cfQX94SJ3t3B2HHu/ecgwjQ=;
 20:RoGJy5VXW3F2w9/SSjtq4oJQGlFDjWir2dLtTGULZ3uxkLPnz1eY01v1zmz8lrfJDAATsNJefb8dSXTFUi8ySy1r61s5BwGQI2XECUs2YVCAx2KRYIi8LZhzr1BlOnA9TD04+rQsrX4g61+15brE9JFSZbya+83nl9npiZAJeyD1DiuJNL+bqbuoNlKg3wfehbHRyhHC5GFdEwpIe7PMEm+Rv6wT88S6VZlb/eMAR16yWjgJg36W6YI6Nyog61O6uQbnaNouRfDyOLOkDHS8alJhHwU4HCsK3hoEdoryIpem5kZkftUCbuOD8GTfVT+wBkkMX9XrA+O4r6dXLZ5daPjSGeryE6uJHfE7pjYlHbQ=;
 4:C34qimbt8x15TP3ydgQxFssWewNM9E+EQooQrVWRHw8HNFKDNn2aqorxvESm6+BiNN8X22mCzaiuB1xXQ5ae3wYo9uAqCfk1dIoQ7EGNCSd1gX16MKE3EK9WB67D0Yt3GF/ZQQ73Mw0GRclkmkZRMerFXGRXxfiPbCfpLKQIqNGVg+rChmto+9aVuexYcBuiyJS7Thg9DfVi8RxXMaHcT8OS+IOVi0PcDHkoVK1AfYlmGWlfU1c18Ze0iJ4xTzdMA51v5kQzoY6Onza4+mkK20HDtUuB8W/aE2CNOlxqtE0657bGlny4yjqX8OSeDSVW
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM5PR0802MB2419788D325347FC186BB74284890@AM5PR0802MB2419.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93004095)(10201501046)(3231232)(944501410)(52105095)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123562045)(20161123560045)(6072148)(201708071742011);
 SRVR:AM5PR0802MB2419; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0802MB2419; 
X-Forefront-PRVS: 06515DA04B
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTVQUjA4MDJNQjI0MTk7MjM6aStEMUErQjRGUXBNT2xZVGlYOVl4VHd5?=
 =?utf-8?B?R1g5emFmamVTcUlDRjVsaG5ycXdpTllkS1BnL1ZHOC9lWVVSN09PcmZ0cVdJ?=
 =?utf-8?B?ejdmalM4Z1VkTnlZRnlpZEFOdGRXeGFIQTdXWDhyVlYraUVVTjM2RU5TSWVp?=
 =?utf-8?B?ampHb1hFUldrZ2JEckhsREYwdlFVRjJoUVIzVWx2ZnNiTXlNbFFOdzJBWDlE?=
 =?utf-8?B?dG9TRXlOa1Voa2lZZEpBaEdxZm1BckQ2ZUlJR1htd3M2aytwRS9GdTg0Nlp3?=
 =?utf-8?B?UElhK1JrMGtvSEgrZVNCQjRhQWlzblp6YzdnaW51VWszUjV1KzdzQmNYcUc3?=
 =?utf-8?B?Y0gxRXZLbjF4RGhvMVBsN29PN3R1bFZma0tEWWI4MjM2U0NJOUJpcHdKZExy?=
 =?utf-8?B?V1pLYmkyVnNDTERBT3IrK1RWRlQwcGhNeHUyNVdPajRvaGhlc3JMMVhSaXhO?=
 =?utf-8?B?YS9rd3VvclcwQm5LNVIxSGhSUHI2bFpTV21yQ09OZFdNN1hWdXFkMnhucFRx?=
 =?utf-8?B?NFh0ekJQZWQ3U2l5MVFWU3pFZjdPa3E4TkZkZWJQT04zT1BhN3pYYTI4WGsz?=
 =?utf-8?B?dld2Slg3Z3YvelhmNVljWExHR2QrZEtoOXpoeG5mUU1Lb3RxaXNtVkNneUVp?=
 =?utf-8?B?SDJlM01BZi9PTjZ0K3M1Vk5mL1Nvd0dmdEEzdzBRR1IwT2thMnNSam85blJl?=
 =?utf-8?B?azhMNUgwWnYyM0VSZ2N4RGJ4K1NoQWF0S3RRUDZsd2FsSXpLR1NmN2RtNnJr?=
 =?utf-8?B?SUtzck9LM2ovaUxybWNqLzRPalhKeldiZHlxZExHVkZyM2hac3FSY3VIZXdS?=
 =?utf-8?B?UHRZaTRRMWVwUFpoOXhVOEVHZTR2Q0tnck0zWUc5bkNxQ3FaTTc2ajFLZFBn?=
 =?utf-8?B?SGdDMkN1dmpMaDdlcWNRM2FyNFMvMUtQek9KUHFsdkhsK255Z28wVEN2N3ZY?=
 =?utf-8?B?OTgvVDhOWm0wRk0vWUY0bTk5S3VkY2Q4YWNhSHNGZ2NNdkpTbVhCYzVrai9Z?=
 =?utf-8?B?MU02WG0zbldqSXZmQ0lzUDZOVittamxvaVB3QWpwWmc5S2xpWHduWGhTWDJs?=
 =?utf-8?B?eVdyYU9JbmgvM1J4SlpJdXFLb3IrbVBJZlBFTk1qN1Z1RjcweENRSUpjeFpw?=
 =?utf-8?B?eEZTOG9SdU9rYnhzVGYwcWJqRmJTcStPcGVoTzFCbDhzTE1IY25JSDVpRVoy?=
 =?utf-8?B?UURTRkpDRldtKy84QW1pR2trN1NHUzFGZzFhbllST2s0dzd5Sk5uaDgxditD?=
 =?utf-8?B?cDdUWWxXWlFYNWgwVGVwUDVTZ3Y0RmxmUzk0eWZ1eWhtNzllRGdWTHcyWldn?=
 =?utf-8?B?VEJ0aDhlZ251ZzNTb1RkMlZTdDdaYWZ5SC9tK1E5dE5xejBmcHI0TXdHK2VS?=
 =?utf-8?B?K0VUOHltd2VxekZYbzRIZWtrclBIamxmeE4zamU3em9yenVVaTNLREdqT1pV?=
 =?utf-8?B?V3Y3d1Fvd05xSVZMN054ZllKR2RZMy9kc3Q5NWJZVHJiM29nOHJvQnh5RUNB?=
 =?utf-8?B?L1VkRER6aC8zVy9md3JoVjhScU5KWnlvMTdUVk16UG5kbXY4Mm9CYVgzYkU1?=
 =?utf-8?B?Zk9HTE5iUlpUbmR1QjJObVpUMC8va0RUUHJleDd6S3hqNUxOWWVJOU9xOFN6?=
 =?utf-8?B?V1NYOXpHQk9JQndMOXV3TWN1dlg4Uks2WlFEb3BOZlBzSmhodkpHeEJ1NHc9?=
 =?utf-8?Q?=3D?=
X-Microsoft-Antispam-Message-Info: 1wF4zL7RePIqo2b0TSXjdpTTTUE3bLJCKe8Z6AhfSzb3bikwUOwseAOh+4QPclo6grR5O+4xOWBHc8hDsupIzt2Rp+ITzLnUECRUxW5gYJZZflVDj7RFtDf8ub6sGXm9gT6C58UcJO40qUvlDlCfXElUHsmSgVYi6gvbhRXaROW8QFmUjt2eEN2+EzoRuucufvMY/Vd7Ia6RwP/Qvs2SDHL1c4zf5MIOFhi6PBWSwHz0SqkFXB9tc1UQrMuxQOIWOCdgpFkd3ljZHTb91Qksv4/qIGAhovvkrRislnj0JFiNGAKjDPtOzK2s8jK+6ohBNoklxz5iXY7AltMl1kCbgbkPYPs/9d/DURbRDBjto2F2W8rx8huPBNvEMs8gsydxdobBV6sWETbEBz8AF+MtPPKGuZN7N2T1C6FSE3ItCPM=
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2419;
 6:YYYx2n66pYEZuy9dlYmNuU6oyjxbDWqIpaKZNae9hOZWkLKgGACgZT07ULLmFCw94nZB66wwhTk595He/Xes7+eu4kDubjVI+WS/Zrv2etZTTj5OzeqjjTqPAo62qLkJfdo1tCc0OzeChchoqk9UQCqXJdphlIumoucCjP+fmYAv4EBJeKWe3k48T+0nlyuzLFmJxd+02O8NbSor5JCG8MWj/O1CccbEEivAMdKFl0H9LAXA0sZJrAZ9hLaCxZY5E5ikIc0iW4E/e6zKzG1Ypb4DdUnM0rhpmV4sS7pyjqmIECZFzp4hGuNDevH6Jre3f6nJviLKrvGh9EOuBN5g4J5uz7x00a/A3ckz4g0f6BjJ5r77eJV1qz/24yvyVu39GSlwGDnOlkkWTToEbHoSh3NeRiBr5ZM80qE5/fv5lJlZArZnHnDNgFxgXREJi4QdWULoK9Bl2QYxdLbF9P9pl1h+UVV2hQoegOaDvGVaEDircFci30UrvS9losgY9w4m;
 5:+4HQBWlCo6qymQMyQkByZbEII8sL1i1jkCq+JGcoNJOYAxWYaPcFMfE4VkQnlkUqqwDSXJ2j7aUAviAtlVm+c1SR1x17s3Kft19IUwzER/tgAob6P3H8jp4dSDpmws2934xtVS1mhk96o67I97pO6YutxzymeAF/itHPmgxb7Nk=;
 24:GmrvdB6b+eULTashbUBbsbItwA1JSLVObl8pTE42SqklQUAA6oYbDJuA3YFVtp+6tp3cRSqq1g26p+KCpVxjptF5W9Q+Z4ntJZKomwIEjL8=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2419;
 7:823kVrrbxN5A2b8C2lToz8Z4KKGfn+wwAhokmuasEzjs7+I0bbpW/8SE0NttmjSHz7pZgnaKA9Loa4ylwK/SYmn4p33aI/FLUqZeghLVwdIWqZH5LamTqb0zFsaK1JdDq+qIAm1vzaBSMZvYfILBmY1VcgWkhFzBmtVZV6Vcfs7Hd9qrqqaUA5JidSR+T6w/s0IxuVux8qSxBcZWx1XfJnqXRc0hk9OqIpzdjvseOV7OWs/WPHvwb/xUZiMKb0Ww
X-MS-Office365-Filtering-Correlation-Id: 36ed614f-8e4e-4771-7210-08d5a8f6921b
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2018 08:45:30.6986 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 36ed614f-8e4e-4771-7210-08d5a8f6921b
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2419
Subject: Re: [Minios-devel] [PATCH v3 14/43] arm64: time.c: fix the wrong
 format for printk
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMDk6Mjk6MTJQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDE2LzA0LzIwMTggMDc6MzEsIEh1YW5nIFNoaWppZSB3cm90ZToKPiA+
V2Ugd2lsbCBtZWV0IHRoZSBjb21waWxlciBlcnJvciBmb3IgdGhlIGN1cnJlbnQgY29kZToKPiA+
ICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+
ICAgdGltZS5jOiBJbiBmdW5jdGlvbiDigJhpbml0X3RpbWXigJk6Cj4gPiAgIHRpbWUuYzoxMzE6
MTI6IGVycm9yOiBmb3JtYXQg4oCYJWxseOKAmSBleHBlY3RzIGFyZ3VtZW50IG9mCj4gPiAgICAg
ICAgICB0eXBlIOKAmGxvbmcgbG9uZyB1bnNpZ25lZCBpbnTigJksIGJ1dCBhcmd1bWVudCAyIGhh
cwo+ID4JIHR5cGUg4oCYdWludDY0X3Qge2FrYSBsb25nIHVuc2lnbmVkIGludH3igJkgWy1XZXJy
b3I9Zm9ybWF0PV0KPiA+ICAgICAgIHByaW50aygiVmlydHVhbCBDb3VudCByZWdpc3RlciBpcyAl
bGx4LCBmcmVxID0gJWQgSHpcbiIsIGNudHZjdF9hdF9pbml0LCBjb3VudGVyX2ZyZXEpOwo+ID4g
ICAgICAgICAgICAgICAgICAgIF4KPiA+ICAgY2MxOiBhbGwgd2FybmluZ3MgYmVpbmcgdHJlYXRl
ZCBhcyBlcnJvcnMKPiA+ICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KPiA+Cj4gPlRoaXMgcGF0Y2ggZml4ZXMgdGhlIGNvbXBpbGluZyBlcnJvci4K
PiA+Cj4gPlNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+
Cj4gPi0tLQo+ID4gIGFyY2gvYXJtL3RpbWUuYyB8IDQgKysrLQo+ID4gIDEgZmlsZSBjaGFuZ2Vk
LCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKPiA+Cj4gPmRpZmYgLS1naXQgYS9hcmNo
L2FybS90aW1lLmMgYi9hcmNoL2FybS90aW1lLmMKPiA+aW5kZXggYTA4ODk4MS4uOGQ2OGNmMCAx
MDA2NDQKPiA+LS0tIGEvYXJjaC9hcm0vdGltZS5jCj4gPisrKyBiL2FyY2gvYXJtL3RpbWUuYwo+
ID5AQCAtNSw2ICs1LDcgQEAKPiA+ICAjaW5jbHVkZSA8bWluaS1vcy90eXBlcy5oPgo+ID4gICNp
bmNsdWRlIDxtaW5pLW9zL3RpbWUuaD4KPiA+ICAjaW5jbHVkZSA8bWluaS1vcy9saWIuaD4KPiA+
KyNpbmNsdWRlIDxpbnR0eXBlcy5oPgo+IAo+IFdoZXJlIGRvZXMgdGhlIGluY2x1ZGUgImludHR5
cGVzLmgiIGNvbWUgZnJvbT8KVGhlIFBSSVg2NCBpcyBkZWZpbmVkIGluIHRoYXQgZmlsZS4KTWF5
YmUgV2UgY2FuIHVzZSB0aGUgUFJJcGFkZHIgd2hpY2ggaXMgZGVmaW5lZCBpbiAiYXJjaF9tbS5o
Ii4KClRoYW5rcwpIdWFuZyBTaGlqaWUKPiAKPiA+ICAvLyNkZWZpbmUgVlRJTUVSX0RFQlVHCj4g
PiAgI2lmZGVmIFZUSU1FUl9ERUJVRwo+ID5AQCAtMTI4LDcgKzEyOSw4IEBAIHZvaWQgaW5pdF90
aW1lKHZvaWQpCj4gPiAgICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJtcmMgcDE1LCAwLCAlMCwg
YzE0LCBjMCwgMCI6Ij1yIihjb3VudGVyX2ZyZXEpKTsKPiA+ICAgICAgY250dmN0X2F0X2luaXQg
PSByZWFkX3ZpcnR1YWxfY291bnQoKTsKPiA+LSAgICBwcmludGsoIlZpcnR1YWwgQ291bnQgcmVn
aXN0ZXIgaXMgJWxseCwgZnJlcSA9ICVkIEh6XG4iLCBjbnR2Y3RfYXRfaW5pdCwgY291bnRlcl9m
cmVxKTsKPiA+KyAgICBwcmludGsoIlZpcnR1YWwgQ291bnQgcmVnaXN0ZXIgaXMgJSJQUklYNjQi
LCBmcmVxID0gJWQgSHpcbiIsCj4gPisJICAgIGNudHZjdF9hdF9pbml0LCBjb3VudGVyX2ZyZXEp
Owo+ID4gIH0KPiA+ICB2b2lkIGZpbmlfdGltZSh2b2lkKQo+ID4KPiAKPiAtLSAKPiBKdWxpZW4g
R3JhbGwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1p
bmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3Jn
Cmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2
ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 08:50:13 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 08:50:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAXAq-0003jR-GP; Mon, 23 Apr 2018 08:50:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ja4f=hm=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fAXAp-0003jM-6a
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 08:50:11 +0000
X-Inumbo-ID: a36bb0fc-46d3-11e8-8249-2fda3a446a53
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [40.107.4.55]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id a36bb0fc-46d3-11e8-8249-2fda3a446a53;
 Mon, 23 Apr 2018 08:52:23 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=O8ZFYOhb6rX9nNhdUsVf/QJbuZIpGW95fmQ8CBZ6D6c=;
 b=L9XQKD3JK7tsI+x13bX+K8cZyOA4MOmB0ldaOCEMbGaFSNiej5fZFSnCLETlLEPxySTTmwIc6zSo6Um4YslwmvArD3WdSnblKxWS9gHaVY7u8XHtF3/mtTlh8Z9/nvCLSKWcpTAIz0k/pShVoe2O/o1Mav+sQl/ycXUVpoEtr0o=
Received: from VI1PR08CA0129.eurprd08.prod.outlook.com (2603:10a6:800:d4::31)
 by VI1PR0801MB1599.eurprd08.prod.outlook.com (2603:10a6:800:19::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.15; Mon, 23
 Apr 2018 08:50:03 +0000
Received: from AM5EUR03FT021.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::208) by VI1PR08CA0129.outlook.office365.com
 (2603:10a6:800:d4::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.13 via Frontend
 Transport; Mon, 23 Apr 2018 08:50:03 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT021.mail.protection.outlook.com (10.152.16.105) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Mon, 23 Apr 2018 08:50:03 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 23 Apr 2018
 09:49:40 +0100
Date: Mon, 23 Apr 2018 08:49:37 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180423084936.GB30544@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-20-git-send-email-shijie.huang@arm.com>
 <56add9e2-c11d-65c3-1d61-d29c65d5af00@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <56add9e2-c11d-65c3-1d61-d29c65d5af00@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(39380400002)(39850400004)(376002)(396003)(2980300002)(438002)(189003)(199004)(106466001)(4326008)(6862004)(39060400002)(6246003)(47776003)(478600001)(8676002)(356003)(58126008)(126002)(16586007)(6636002)(6666003)(54906003)(446003)(106002)(86362001)(104016004)(486006)(5660300001)(11346002)(229853002)(8936002)(476003)(316002)(72206003)(76176011)(186003)(33656002)(97756001)(77096007)(53546011)(7696005)(336012)(426003)(26005)(46406003)(55016002)(23726003)(1076002)(305945005)(8666007)(50466002)(2906002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1599; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT021;
 1:qqSR/mcFkxiD784IaBbtuyIBis3r94xteKWTFxZ9z1ImzlVxw3rSfYpO/LV9r5sAN399Gx8Yd09WkG4CXPkvpSS8bzxB7oa1n36iQ21p3YGYAyJzB7C/ItrqILmdM/2E
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0801MB1599; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 3:k5g1beIrGuuvqukdAuYvt/uYam7gp12relw1WZsCCLv6p+XqpRY4mBPumZVG8tkiUfWXPzAItR14ACZRD68ZvQnoUJy6+3CKLFMCYdngfobkMC33vdiMpvRmjfDzvZTOT/28SgMg0QZyuCqY5jeAZMw+VP+DhGFL7cEPvsQCq9WoCw+x0238vWvtJdnLtaYtVupo3kpatfzOcPvr2PK0tgsS4czGCb+a/WAUFFmGOzRQJKWJl1c44D+PhefixWXx5XETnHwxt4Be0fywzDF5tYuKwSMcwHnaBTq7Iyom4eNpiIZf1/TNAcHcfjLRIH8KdWabcjPcUrbGUyU55ZILZ08n9FFEjsOGjBluMAO2hus=;
 25:Y3HAazegBwnE79uQvC8hQdrPZSaSoAKwYk12luMV05cok2Cqj1CfG/V+NLZrCDOSeIMjfj9SzXZwqI1D8RMb6dMtQVMZ6mkeGa6mvSnfqWk5zI5oWwx8bGR9gvDWHJTbKuEkENaIqF8Fu9QfzsjfIL3LVw3MS+MoYEsoT+x2lq34K7gYGmqPfjfEFMapvzFIIWxGz7Jwts6vJa/a+yI9lF4zegLckuwgw+oj4aPr2nyM1I5xVSG5fALXv7CvZzwboZ7IvhKN8mlM+MAsDx4YaITnir1Syf6MSTCxSKrLxbibNHSQ0LfEYD3xlaAHGPcqUvwp7FoV4WkmGtZULyc2EA==
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1599:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 31:Fmd0zahuNiPfx/+ZmhXkfQgdzv6wVqI19HQCUwMsAhRgHLTeiauqIr9mIbX9Xx/DFgCVb9l0FJvBu/DcPwmIknw/wh6Su2gpcyBq450yZOdC+kf1hbENZK88nNre5qI0E+AgbEdcgARG2KGJvEm5AW33CjP0HXeAVBJjaK0iZ0eSdC2sfhZFOdnsr4ovPaSD0gmHnFFMT1a/EpklNz9BvaSlpz82WF6qb7XBEAHE1tI=;
 20:pMXvfrsDpeaP5toB9meHEZuvFQuKJNNG5eNlcQ9F53WLgDUhpvECpRCOXtgMCsf/2Ta4rc48AeGYzINa0EWk6YE0qsVZ3c+48b/h9x8ap3hIqUfQI8xC2BwhZjWX+f9J1fy191JU0616fFQe/v+v/XIo535L5p8IHs9sIcrPL536gULQmkqDFN4m565LiZ6zMD5WRjtoOnuDUSWAvyzZ1sMoM38cJhYR9Z94mvnL8APv/jWoPiJr7CDOBNXX/su95t2mFsrY9o8awVTNnC5TjvVmsi3nE9MCjgQx7RdkO/SdNOMl3sXx94q0cMCRpj6PVYVGzZcxAcJBmP/m7geJ49Mqxqg07O77L+yznYNAs78=;
 4:PrBT9zXpnCUkkoGoR8wTQwW9aP1QPDDvt9HEkfJ20O7fdmxg4Q1dSk1SnOZ5+WL2S5OduL/k1Uj3+S1z6fAlGaXlJjKRZJDX40Ma4iqmQ0ROwLUrWGcrEJK1qhZ+Ft+qOcYxtt4WuSXLH3zPmOFLaTiSTGd92lR7T3bX6yUlxvVzQColfpAtU7+7x5EaMN3aR+ptVkNv3Qv3yCLFmFjOpWAHkTBfp43GOKi4nZ0OA72EqAI41iLHTk+ACkFQL8/wQlRa5LFiNp7qAyp81jwRW4U+QTVyabKaQsWts5LC+EwpyWkxxV1dSE03xrt2dL/c
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0801MB1599E53455431394973B0DE184890@VI1PR0801MB1599.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(3231232)(944501410)(52105095)(93006095)(93004095)(10201501046)(6055026)(6041310)(20161123564045)(20161123560045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR0801MB1599; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0801MB1599; 
X-Forefront-PRVS: 06515DA04B
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1599;
 23:dU1OQifcF1RJavqLs0tM23I+4to4rlDiFgBRQgl?=
 =?us-ascii?Q?HDNbwleV+kdalW4/Vw9WuCCp4ZKzUWbNgPFjlHI9xKQ+5EZjQfGGpVJTEH8Y?=
 =?us-ascii?Q?3rmrxausnpnyXT28mzfwmS46+v+HUVkGyk3oBDfdn4aIoQI/5UQILm96/cFF?=
 =?us-ascii?Q?Y+hPRdvzFQgrgTSy5m8h/lJmSSwh9XQCl7RGOVF4rj33479MG0PI2gJhV7Ez?=
 =?us-ascii?Q?Rr+wncuOZusWxQnNXR1L1dhFaI/s4SeAxrV47mfOxogCNBt/weVpRspz879Q?=
 =?us-ascii?Q?cbus6gx9RIfCVxONzJEoomlpOH45gQF4U9M+dy7G7YXrL+dNGufA1NGMyxnM?=
 =?us-ascii?Q?nJzEqmJR+ZsMxaZDIrQzol/z+PVBDDispOkEADUBRCBKRaV7/3zZXAMPkCDM?=
 =?us-ascii?Q?SOzkZOHIR7rT5ZTcUyuvTfxezKFBsI+KIwECEhVdDUxIqVCg2sTnE/uHk6vb?=
 =?us-ascii?Q?wBYOp5evJGWuzDPmQDVEcFoQy+AgcUpdE+tB8Z4qoR8PE3Djv8t2hH/SWhk2?=
 =?us-ascii?Q?Aanj8nHn0RLSSSXUvpznIaMCCO//3q+xGp5YWIepb5gfHRN6Wt9PuPx7p2lg?=
 =?us-ascii?Q?HUygWiEurvkFdfhjYm8/c63wp46vM8fTjVIcC9oUSloTbeG7L1eTb3DQKRZ5?=
 =?us-ascii?Q?dK5ozbNm55qzoFygHU4D+omrQl24udG1Q1VpnbTNHkZa4Wx/U1Fix+9ufHim?=
 =?us-ascii?Q?1v+06lIGWU1jlm5RYsvwYTYtBvwikko92ZAPNDGY1P/XUGXU/hybsQHBBKtx?=
 =?us-ascii?Q?zLUAFWzjKrSa95rKB4v5X3OMQKFuDVjOR3plhWrbOgtyRx4xDmosaPsi69Sm?=
 =?us-ascii?Q?JI8VoVBPUBFDj0dTU1qmWAraS2KSvHwhzAQuogiUJ4+85YhY36D7j1OJf3vM?=
 =?us-ascii?Q?ZLgge2kTSlQ83LJzdLvyyCvkwqAzTdCWCM9g53Xn71jnlBxF2RuG3UvzdqgX?=
 =?us-ascii?Q?Z9vAe+itzw3BMfRO5NzE0hcS8wykYM+T5O7U3puOElMAmYAyyUf6m8Z9e4Ic?=
 =?us-ascii?Q?6p3FVmEbbBbg6clZYMK9qohVdCJ3LUw0JmFWFfuSy3CcVsUX32FYUHrm9Tos?=
 =?us-ascii?Q?0ujGE6m0XKvjbpEGwXfJCd5vQXpCAEm5iXjtVzzabVkhHWxW1MclHAcae98d?=
 =?us-ascii?Q?Zd6PtAW1x732lCTXjqrXfY/o0icwhGWUNicHdWW5R4lsJVnv9Lcm8EBy0HCs?=
 =?us-ascii?Q?XbsqLUIM/8EgJ/iwJnFDcltRIUOW+RdY4uqQCC4pcN2+9Cdy4tTRDZmRN5w?=
 =?us-ascii?Q?=3D=3D?=
X-Microsoft-Antispam-Message-Info: i46w0flpJtwieLbM/cdOFuK/5379uQuK1eCFaDI+b7cTK94FltU4or+0gjG8/LDfOf/vi+fjsn3i5Em+8dGhQgqKh/quJOWGnmk/vba1nIIHbqfC0f31wiHzDzE48FuwidlGr86as/9ad4ipseU2Zyawbcef/e0jTdxWNkRmyeAbSxsJ4E7EI6RitUhe3k3QP411XTTeUpVTmsMcG5pIhiIzmCTtZnym+BPZ6NKT9PC7sUACdeoXyousnrcI1pabWv+zLqnq4BjYB3BbjKJzN+AFykxkoTOBrLNGe14R1dO8BR2bl6xnpvTJtN/so3YLkLoYmgy2SWS4gnLchVLVAV9FtEUg8FTLr7XSFg7tQLRbuaq86QDatgxqda+ZUNYb65ruBtc8JX1qHcf8iJX7ERyAZZAw85ylXaZUUXSBL3Q=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 6:e+EqukLlDaXxHMdrIMwXcjGjqn970v2hVXdPi1AMJWBWHOk45czGuZuq3oMLgXaQNWz6eS9PxnRL0PsivzqBKkcUuQQ6EqZGDZEa84swO+yTTy1P+Y9OrsYx1wUNS1VeqyhTnA4ie+LMBx86VMdL7CLyq5ehiOpOFgcfw9I97URyDDm3/FgFb0ZFiVrkd/WavIAhldb809wavZRO602Y9ZyCpqyOt0w2cgr9pAjHx/heFF9m+DTj4YHjXMqeG+5/P0WOj01ASxW9RsXeDg0OF48kosHjaj6HFNvD97xYrMoh/V5vFy5oW1WI1GvbAZ4bZhl0Dj7G5erFjykyBc9Me7w99xJHPRvP7u05rbvPn+oXnVUDPIOHkl8YddXXwy9ORZ9lPC8gO4mrT/wGLQXVK4y8pmP03LGIhDH+Fr7U06MvJnc7oXFUyL79a5azafRpAaR/DLEaAvryTVh3+ZLzKi76bo/PAK7Y6NLM4w+et20kD5vZUZ26/x4y5JIhAZ+/;
 5:aVPdCJpOyaItgaGwS7TbJ975JT2c16/mbFQt6aNuucgUJN3cTCLRNSzFKKmoK52tictGr+8zp6XAuWhOiy5YlkDLNucekhsWGzKvF4OVRyCvv7ns2CitqVhG+Sm6xrodFmQ69a+wR2cLiMzdCX3L3WfgmAD0eaoAl2INSo0x2dM=;
 24:Dug2RgUPrGSKLgy6G89IGDqWntv/IZiXowWsnNthCVQnLUQ/fByRLMZfNQIZj8Owx/tCCVesIOULwLDLTC/w+upPIUUPlqfj9LA4nK2xNdc=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 7:R2mEaPjCcmzBJSTnhk04WFFNpEoJr4BOydfDdQHlwfS02+7dV0HI33OULeCy0zITR16OorMrlTMjgOqDDdbuIWPj92CvagwyTPK2YNjP7kkNITkWHvaibeWnQdccvj+AoFosl7hKuHeAVSXCYwpWcLZD7PYdtH6CofdtsHhZtX+XwCykgomduvm4WvLKsoApM2AXVDgUABxdqj5pXBLY87sS1C9yTaHpQANLAbGrmrRC3tYSOAqJFIQC5kiLMQUm
X-MS-Office365-Filtering-Correlation-Id: abfba144-d1ab-4ae6-f76c-08d5a8f734bd
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2018 08:50:03.5702 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: abfba144-d1ab-4ae6-f76c-08d5a8f734bd
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1599
Subject: Re: [Minios-devel] [PATCH v3 19/43] arm64: add shared_info support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMDk6MzQ6MThQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE9uIDE2LzA0LzIwMTggMDc6MzEsIEh1YW5nIFNoaWppZSB3cm90ZToK
PiA+QWRkIHRoZSBzaGFyZWRfaW5mbyBwYWdlLgo+ID4KPiA+U2lnbmVkLW9mZi1ieTogSHVhbmcg
U2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPiA+LS0tCj4gPiAgYXJjaC9hcm0vYXJtNjQv
YXJtNjQuUyB8IDMgKysrCj4gPiAgMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKQo+ID4K
PiA+ZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0L2FybTY0LlMgYi9hcmNoL2FybS9hcm02NC9h
cm02NC5TCj4gPmluZGV4IDllYjdlYTAuLmZhMzQwNmYgMTAwNjQ0Cj4gPi0tLSBhL2FyY2gvYXJt
L2FybTY0L2FybTY0LlMKPiA+KysrIGIvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+ID5AQCAtMjUs
NiArMjUsNyBAQAo+ID4gICAgICAuZ2xvYmwgYm9vdF9sMl9wZ3RhYmxlCj4gPiAgICAgIC5nbG9i
bCBpZG1hcF9sMF9wZ3RhYmxlCj4gPiAgICAgIC5nbG9ibCBpZG1hcF9sMV9wZ3RhYmxlCj4gPisg
ICAgLmdsb2JsIHNoYXJlZF9pbmZvCj4gPiAgICAgIC5hbGlnbiAxMgo+ID4gIGJvb3RfbDBfcGd0
YWJsZToKPiA+QEAgLTM3LDYgKzM4LDggQEAgaWRtYXBfbDBfcGd0YWJsZToKPiA+ICAgICAgLmZp
bGwgIFBBR0VfU0laRSwxLDAKPiA+ICBpZG1hcF9sMV9wZ3RhYmxlOgo+ID4gICAgICAuZmlsbCAg
UEFHRV9TSVpFLDEsMAo+ID4rc2hhcmVkX2luZm86Cj4gPisgICAgLmZpbGwgIFBBR0VfU0laRSwx
LDAKPiAKPiBXaHkgZG9lcyBpdCBoYXZlIHRvIGJlIGRlZmluZWQgaW4gYXNzZW1ibHk/IENhbid0
IHRoaXMgYmUgZG9uZSBpbiBDPyBPciBldmVuCkkgdGhpbmsgd2UnZCBiZXR0ZXIga2VlcCBpdCBo
ZXJlLgpXZSB1c2VkIHRoZSBzaGFyZWRfaW5mbyBhdCBhcmNoX2luaXQoKSB3aGljaCB0aGUgbWVt
b3J5IHN5c3RlbSBpcyBub3QgcmVhZHkgeWV0LgoKVGhhbmtzCkh1YW5nIFNoaWppZQo+IGJldHRl
ciBhbGxvY2F0ZWQgZHluYW1pY2FsbHkuCgo+IAo+IENoZWVycywKPiAKPiAtLSAKPiBKdWxpZW4g
R3JhbGwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1p
bmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3Jn
Cmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2
ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 09:06:41 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 09:06:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAXQm-0004dD-JA; Mon, 23 Apr 2018 09:06:40 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ja4f=hm=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fAXQl-0004d5-05
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 09:06:39 +0000
X-Inumbo-ID: 77fd23f3-46d5-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::611])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 77fd23f3-46d5-11e8-9728-bc764e045a96;
 Mon, 23 Apr 2018 11:05:29 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=R3T26tbogYSnVepKLSTKCD6FiTND/rhR1ZBG73dioqM=;
 b=hBZ+qmBfNceMgQzSNqVYxmOPVAugaQq24znks0aa/oWfN9kEZqU4yZXDoxk4E543yQ42jJYI0BQLcZCR9kStIv70Fg8dlnBQNu2JMFYQ1n2HTLo3aav+bweI7mKhJQaUJV3VELWapEgP29O6Z1hD80OQHMx2F0sAJYg2QPmTfpQ=
Received: from HE1PR0802CA0021.eurprd08.prod.outlook.com (2603:10a6:3:bd::31)
 by AM5PR0802MB2420.eurprd08.prod.outlook.com (2603:10a6:203:9f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.696.12; Mon, 23 Apr
 2018 09:06:29 +0000
Received: from DB5EUR03FT032.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::209) by HE1PR0802CA0021.outlook.office365.com
 (2603:10a6:3:bd::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.13 via Frontend
 Transport; Mon, 23 Apr 2018 09:06:29 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT032.mail.protection.outlook.com (10.152.20.162) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Mon, 23 Apr 2018 09:06:29 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 23 Apr 2018
 10:06:09 +0100
Date: Mon, 23 Apr 2018 09:06:05 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180423090604.GC30544@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-10-git-send-email-shijie.huang@arm.com>
 <6272136e-0a75-134f-eeb4-1c2e8c1078c2@arm.com>
 <20180419100943.GD29673@ubuntu.shanghai.arm.com>
 <7256661b-feec-d8af-5701-08b7c1b1ec02@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <7256661b-feec-d8af-5701-08b7c1b1ec02@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39860400002)(346002)(39380400002)(396003)(376002)(2980300002)(438002)(52314003)(189003)(199004)(86362001)(476003)(126002)(46406003)(97756001)(33656002)(6636002)(6666003)(106466001)(47776003)(229853002)(50466002)(7696005)(76176011)(93886005)(72206003)(104016004)(53546011)(8676002)(1076002)(8936002)(23726003)(356003)(5660300001)(186003)(305945005)(478600001)(106002)(54906003)(16586007)(11346002)(426003)(486006)(39060400002)(8666007)(55016002)(6246003)(446003)(6862004)(2906002)(4326008)(77096007)(26005)(58126008)(316002)(336012)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0802MB2420; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT032;
 1:absiPPUnhMrmiLhKviulPtSd/1LjtaDllrQZfyrDFD316qeg8nDEbNepnyI3RTOritv5yE/oI9m6FB+aPnwYkH/l4F0rsFvYmzF51su+Z6nI6yggW/q6wyRaEkuRNWxB
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM5PR0802MB2420; 
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 3:+KSyEuQ88iHu//jPKOzRkLfqMuwiYy40GCSOllyQXwvP2x4Lir6PAsVJ7PQFHTpqVC9vxKJ7qrSd7+0jmiOAGStqS4gOHVa9/8YSCFW/CZp5CjSHv+joaHC7cU8H/mkaE5Kodz5pzK9w+oSKCpAO1ATy5RRRacohYiUcNXhqcbeEauAceyYHjei9+TsdlVv7ZiX/jeqI+1nzUnV3/Z3BmuOiOZFAYLgcoBYLvIsDcqxlVvws0QGBjriqD6tW0wgwqyPIXvSty9KjtDUY3kHFiYErzxmygbsRkHAIYRPjTyWzZe7PSNgfca3+oryoQ1fx4QEMj6vv/FRtcSItpgopxtG+MbaRr0Jz/VHWILB6GYs=;
 25:IvGO+qKRRDzL8uiL1vP+alwEbWM6YlvxJ4efB7wgYU2l3uIpoFk3ESfgDuaQW41HoVmnr6TkFbnm1mbsIWfkjahmHlZsnfFS5uqIOPRGBb2jqIji/5lNthTpEV5CjlPaNKWcKCab5ZjpooQPWpatcF6jU+1CtD16LDJjAhvdyCijSuMCj0pzewjE3cNP+ZO/LVcZuAFBqlQD50oxlBGuXTQYtIZLI6tsJYfvFVAYtloY1Pe/B63SZ0SB7B/Bkhk+wkWjBdIjNnwFx9kVuJDap2WHz4muVCQtE8ptSnyZ2HYUzSAB+Sndekem8zR0FzD2tzqO8C2dq3WzEPTygYkYZQ==
X-MS-TrafficTypeDiagnostic: AM5PR0802MB2420:
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 31:Levo5T0xIdZGxa2gwJtnuuFQ8XlITjRGX03XtmjloU9NN40dQQwZDMWN9h4oM3x1V5halSEH3J0j+bt2SH1sKjG/D0IChkaLn85gV6CwCGVT06q8pn/dFD7DXfMYPxqxLyX9idRnj5bpyiX1ZDP0Zs8KOAOT56Sb6jmO8ZdVZgKA5gvuU6vIDIjoC8bWDJJsfHjsg6Bjj/5ulU38kH9rRrK/yEwLngG3EM0C5KrrLhM=;
 20:NvRl1noCyUHkIYacSYcAv3/d8rIKD/21vHsrkFmIvVnFr0ktOQo3I6YyyMO9HYZVlY9b0glGuuXlsm4jU1TCC7wkAbGEvwbAF/PRweEwLdHtNHuX74DlNO43rRfjdftuamVTFVkz5hh8FzpAMr8FBsKxOzh7ytadLBMbAK9fzfeEhNOv9mbKqJ8y26pdlYRYr3/aj7GDbqGa13Ods+dzPr7UBMO+hebv+Rwtvno2Votu9U4gzXpTnDjOeN72c5crqgxVShldAvDFHtyuBt0kJs3c8DTRpdfAT3kP3jqPRuXre9+GPVgh4qNaBM8FYjEz3ajad2868dMHAiWENMmzRsNPH9U+C0UB+62i5fsJtgA=;
 4:OPGlbJ8zzUoCE8zLqTFrRxyJIs22c0vn1Jk5q55tEYtdDB3lv3+RMnQK6DssqHa2ZhmUTUcxHJFhOcGf1ZghkyyyE+9z7FHJc/0/MbjFcF+ovqktdoFNE08bNZw+LuL3Vy2WsjLdQKEQyXvuQET+GBQr4vYVgRXb8XtolNGyEFwPdeAfFvr+eRSgzOqzP5hFvWR7coPFVFyBmd29s2nTJO8XLOssoOM/iTW98DAyfhLPsRt/ZvhkBD/uTAhCuVCXs5arG8EX19K8IR/t66KsFfJiG3LQYe9PemS3vuVwmW8oACc5IoD13wcmfSIAGOOG
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM5PR0802MB242022B8E9995700B22CCCA784890@AM5PR0802MB2420.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93004095)(3231232)(944501410)(52105095)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(6072148)(201708071742011);
 SRVR:AM5PR0802MB2420; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0802MB2420; 
X-Forefront-PRVS: 06515DA04B
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM5PR0802MB2420;
 23:MP7OYbr825yqeUKgFgmmtfHHxOAaJh5YMUVLXX5?=
 =?us-ascii?Q?XBERX3oOElT20KKZ8B5uCGHmO5U28wvqMJrKAQ7nKHJRt2dT2oM3Lgw4p0BY?=
 =?us-ascii?Q?Tv2E1aV9j6VDXDj5Jb7w0qzEj6uXLH4LrwfM4ahge6b7n0jpfsGrHgEeXv/O?=
 =?us-ascii?Q?waMcOEDDj1Xhg/2SWyoHD5Q73YR6cQgcL0Bd5c03pi6yXMQcoJWLsPNGEchA?=
 =?us-ascii?Q?29PFB5e130+4uVB2XIwhOdp5Q29a1dSA/r+OOR5PxU2mgZXP9Yv2EoxVPUdn?=
 =?us-ascii?Q?JQjdo70Di9PnGfEp0rIl0pTtS40OPzjTfg+LMWSVxPb0dKBE1/+iwNfOLre6?=
 =?us-ascii?Q?qVl4cKAodtOt3svISm8HreGOeN8X7Xc9jlhnvt4sm+FOD5tqYquyLSW1f63x?=
 =?us-ascii?Q?3ISlg7GrAXYEsIs4qrdrx/cUaph6I+igvg3zpSm3MgK+9C04PThyE9JY5Xjx?=
 =?us-ascii?Q?e6y0BcRAf4HXsYYACdMPUweh53XmRKK11IBdMiQuHfdkL95+aAMs10D7C8oJ?=
 =?us-ascii?Q?XFx0rpu+NDwNJU4PeD8jkjZFjSKHVtycgZNosoS+g5sLrvJtm2LbPNyw/CXM?=
 =?us-ascii?Q?T8oFqeQf+99qTbcgBtyJy+HPlKJnuLyF5Ero5HpLL1nMjnxGJ0ZYEPqjvztt?=
 =?us-ascii?Q?w8M/5vIeTdNmm3gtrQFoPVP/efKq2Q7rO7LhF0/I31YclgE1hPU/94dvjObP?=
 =?us-ascii?Q?SowGPdJZK3+1+FcGXCXY48UQKU5gt/1h1bXyH4rQDeqKU/n6cOwt0xbwsdXX?=
 =?us-ascii?Q?KkbDVnBAaZ+3cCvXQgQpr2Qk9WJqMENdddE2ReKqpXcNRVy3JvDr3ukLhVsA?=
 =?us-ascii?Q?zRh0Fbc9gePxeVDFhzNfUDlQ8DOD0QYqldctFxEqm9gZdSjqZ6WrQkYNoCMR?=
 =?us-ascii?Q?Ct9BFlv79XWWrI0YmwTpQtwfJnABc3YrAiA1AGknL6+lYyGdwySrdC7ZH10Z?=
 =?us-ascii?Q?MAKYKva+w+g1zTu1TgU6YWO0yFWTvCTq/o/xND+CDJ+bTPxM5sn+A+1EhMe8?=
 =?us-ascii?Q?BuGGMOBdMcSi6GQoeO5xxu+BF6t4D9QWrE2cttb2+Mw13NIe2+JyJ2IoGnY2?=
 =?us-ascii?Q?H8q8mtRRESD2L/qw34H0dVjQ8tFnyG4NNaUtQQ9l9+sBfmHSQOF/NY/PRgiK?=
 =?us-ascii?Q?O7VPwwSbVrfK+fl0r3zrlprxtiZutI2DID3GWpUYrnvr5+inmyyXNDWd2X0A?=
 =?us-ascii?Q?Eoiwb9q1bXiO+Dz1NOx9AsNlLIS8Z0AP3HlDPpR6cfKVI01U+dm3XLHmT93W?=
 =?us-ascii?Q?r/HlyxfdRVX0sRIEKeeE4WnkuggTUSjubv6b4vESQ?=
X-Microsoft-Antispam-Message-Info: PIacgN2atSOj6Gz2kMjfRAtYif2OczWLfEDjJR3iKIhdoytS6lw9bogXexO7DovmNtXtjwxRfJeVjMKSvSTCspJUZhD1loY1eYi5Tcz1pLL+OXG+Eu9Ah5oMJCYTrN2hSt6+YZLIXhchgQAsYnqXbeZ4HTez3aDX9eVMx6g4YMS+b1bZezdmdJnkVGWMHgCr1/VmWOx2Zt5iajEzKoJoe5CUA7Ei7brD+6k4EUd/AcZkXF1L0cotBO8I3jIG4ydQrasQmgCPa63myOUXE/2OrYvviiOAUZWGvwjjc0DQna4YWlWP+jGYt6g42h4+9ebeLonB4RWKQi8EgxJ5U0Lzr3hpCIFuTpYkYrp46b7UoJj239YTZ1uct4AcaymG3KOX044mG5NcM9ww9djl87VqzE8aVTq09EARsayAp8dBmAs=
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 6:s2c8r0Mrs5zMwhwHR02eGTd/mHHkPtoWoSOvc61lzVdS+yCbVNI2VsaAEv4YC1gSWx+uykQCxDDsepxZD1gqme4CWEoMh7OWcy+Z1TM+gXvbtudh19MJRczXR6Ijz7gWTqEhjqt+JpyzwnZMJZKGGl4cWXKkKCXHB4BwhEqwyta9/Wlw/dK17lBa219N+qeYhXxhGl+p3kVyGntve9rWnqvKK+51unHKdqUp7gktLgT8Ga2xNlnpD7gveXEAqqp0lW8iJIBW2al5CNl52KepjxYHiREa15zo/4PWBae0GxCgqe5nS+T1WtP/ZI8+IKz/jwpZ7nGU+/qTPJMUyd7c1VMztsWaobWKa97XJZ0Xy/bf/kO/F5zjCkrMPjJN07Q7AZ8iLM/KxvI3wlKXY3He0L6jmeR5qBG+8AkT28Zjs0pzC96iPcU3NxMJOdNojzrEL0SgkGZqWLnHWT70cMRexw0dQXvPw6GBYvM6uacOhnTRkCCbonlgxl/4uITXhHtr;
 5:rE5qw5qh2I7m3i6OW1bSZhX808NedzGHEVWKTOtfV4IYcWQdsX3xI5aqi8RDjYNHxBEQVH2fhajbO/Vrmik+wr2rU99ep6K2OJ837ET6575llVjp6vI6j4iYCa78hpGw71iLHTE1mUwrlJSKi4z2dt4wlDnTgpwasltBNXCkvvk=;
 24:i7Nj/vyqdTX8IjA5DzU84VPtD7KSXbG87F+dJ5uSFu89YGxWsC00gzCJ1fKgUibol94pjSnQhddfIWiJLzQxFIxQy1o57xsLJhLukCHwYxs=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 7:gIjph6L+KeZXgLpIZllSRQuY9bOmE7g5/HvFDvVuCWbj1RmJUf9zSQ0K+WgCehSez5fL/bq3uIcyJk/YW3ZYL3rJQk4WgsZTX2agQ8dJOvpxVtJsyBed5CGKmgk8bxL8my+IilL09aU07+s6vBpVy/SagP4cclXwtahhmTGoIo2IzuB2Y/3HvJNdqpL8un7hPGRpORhJNPrj7lg3v9DuLjJlotJ4IsOTFO+vpwHlpb2MQFWJyLu0CO4d4fwnGvvF
X-MS-Office365-Filtering-Correlation-Id: 54538fe1-8bb7-4a77-4780-08d5a8f98022
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2018 09:06:29.0502 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 54538fe1-8bb7-4a77-4780-08d5a8f98022
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2420
Subject: Re: [Minios-devel] [PATCH v3 09/43] arm64: add the __PAGE_SIZE
 macro in header file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVGh1LCBBcHIgMTksIDIwMTggYXQgMTE6MTU6NTZBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDE5LzA0LzE4IDExOjA5LCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPk9u
IFdlZCwgQXByIDE4LCAyMDE4IGF0IDA1OjUzOjA5UE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90
ZToKPiA+PkhpIFNoaWppZSwKPiA+Pgo+ID4+T24gMTYvMDQvMTggMDc6MzEsIEh1YW5nIFNoaWpp
ZSB3cm90ZToKPiA+Pj5UaGUgX19QQUdFX1NJWkUgaXMgbmVlZGVkIGJ5IHRoZSBpbmNsdWRlL3Bv
c2l4L2xpbWl0cy5oLgo+ID4+Pgo+ID4+PlNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hp
amllLmh1YW5nQGFybS5jb20+Cj4gPj4+LS0tCj4gPj4+ICBpbmNsdWRlL2FybS9hcmNoX2xpbWl0
cy5oIHwgMiArKwo+ID4+PiAgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKQo+ID4+Pgo+
ID4+PmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oIGIvaW5jbHVkZS9hcm0v
YXJjaF9saW1pdHMuaAo+ID4+PmluZGV4IDIzYTQ5MWYuLmRlMDQ3YjAgMTAwNjQ0Cj4gPj4+LS0t
IGEvaW5jbHVkZS9hcm0vYXJjaF9saW1pdHMuaAo+ID4+PisrKyBiL2luY2x1ZGUvYXJtL2FyY2hf
bGltaXRzLmgKPiA+Pj5AQCAtMyw2ICszLDggQEAKPiA+Pj4gICNpbmNsdWRlIDxwYWdlX2RlZi5o
Pgo+ID4+PisjZGVmaW5lIF9fUEFHRV9TSVpFICAgICAgICgxVUwgPDwgUEFHRV9TSElGVCkKPiA+
Pgo+ID4+VGhpcyBsb29rcyBhIGJpdCBvZGQgdG8gbWUuIF9fKiBpcyB1c2VkIHRvIGRlZmluZSB0
aGUgbm9uLXVuZGVyc2NvcmUKPiA+PnZlcnNpb24uIEhhdmUgYSBsb29rIGF0IHBvc2l4L2xpbWl0
cy5oLgo+ID4+Cj4gPj5UaGlzIG1ha2UgbWUgcmVhbGl6ZSB0aGF0IHBhZ2VfZGVmLmggaXMgaW50
cm9kdWNpbmcgdGhlIG5vbi11bmRlcnNjb3JlCj4gPj52ZXJzaW9uLiBTbyBJIHRoaW5rIHBhZ2Vf
ZGVmLmggc2hvdWxkIGJlIGZpeGVkLiBNb3N0IGxpa2VseSwgeW91IHdhbnQgdG8KPiA+PmZvbGQg
cGFnZV9kZWYuaCBpbiBhcmNoX2xpbWl0cy5oIGJlY2F1c2UgdGhpcyBpcyBwb2ludGxlc3MgdG8g
aGF2ZSBhIGhlYWRlcgo+ID4+anVzdCBkZWZpbmluZyAzIG1hY3JvIGFuZCBpbmNsdWRlZCBvbmx5
IHR3aWNlLgo+ID5JIGNyZWF0ZWQgdGhlIHBhZ2VfZGVmLmggd2hpY2ggbWFrZXMgdGhlIGNvbXBp
bGVyIHZlcnkgaGFwcHkuCj4gPlRoZSBwYWdlX2RlZi5oIGlzIGFsc28gaW5jbHVkZWQgaW4gdGhl
IGFzc2VtYmx5IGNvZGUsIG5vdCBvbmx5IHR3aWNlLgo+IAo+IE1lYSBjdWxwYSwgMyB0aW1lcyA7
KS4gQnV0IEkgZG9uJ3Qgc2VlIGFueSBpbmNsdWRlIGluIHRoZSBhc3NlbWJseSBjb2RlLgo+IAo+
IDQyc2g+IGFjayBwYWdlX2RlZgo+IAo+IAo+IAo+IGluY2x1ZGUvYXJtL2FyY2hfbW0uaAo+IDQw
OiNpbmNsdWRlIDxwYWdlX2RlZi5oPgo+IAo+IGluY2x1ZGUvYXJtL2FyY2hfbGltaXRzLmgKPiA0
OiNpbmNsdWRlIDxwYWdlX2RlZi5oPgo+IAo+IGFyY2gvYXJtL2FybTY0L21pbmlvcy1hcm02NC5s
ZHMuUwo+IDE6I2luY2x1ZGUgPHBhZ2VfZGVmLmg+Cj4gCj4gU3RpbGwsIEkgdGhpbmsgaXQgaXMg
bm90IHJlYWxseSB3YXJyYW50LiBBbnl3YXksIHdoYXQgbWF0dGVycyBpcyB5b3Ugc2hvdWxkCj4g
ZGVmaW5lIHRoZSBfXyB2ZXJzaW9uIGFuZCBub3QgdGhlIG90aGVyIG9uZS4KRG8geW91IG1lYW4g
dGhhdCBJIHNob3VsZCBfb25seV8gZGVmaW5lIHRoZSBfX1BBR0VfU0laRSwgYW5kIGRvIG5vdCBk
ZWZpbmUgdGhlClBBR0VfU0laRT8KClRoYW5rCkh1YW5nIFNoaWppZQoKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlz
dApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 09:18:49 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 09:18:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAXcW-0005Pj-QX; Mon, 23 Apr 2018 09:18:48 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ja4f=hm=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fAXcU-0005Pe-PK
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 09:18:46 +0000
X-Inumbo-ID: 2a952b25-46d7-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::614])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 2a952b25-46d7-11e8-9728-bc764e045a96;
 Mon, 23 Apr 2018 11:17:38 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=24Z2jRyWZkdOEJpylbH5FIlvHovw28SBG+avt8g/4Ic=;
 b=aDxRr+gtOtBdjGh1EUUSQpZP+OktbHK/lb0fsA8j3QxKs3msDbeBxUYB2f5n4SQ4M4ocPvd2cp+praOP2wYIBeb3YpxwhyeLrIYAn1Xp/n8DEzw90IUebiuWxOBpWKUOB73piYudV5z1XLGnwebG1OiS7EQB0Ea+aFcIbPC12Uk=
Received: from DB6PR0801CA0052.eurprd08.prod.outlook.com (2603:10a6:4:2b::20)
 by DB5PR0801MB1590.eurprd08.prod.outlook.com (2603:10a6:0:3b::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.12; Mon, 23
 Apr 2018 09:18:39 +0000
Received: from DB5EUR03FT043.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::209) by DB6PR0801CA0052.outlook.office365.com
 (2603:10a6:4:2b::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Mon, 23 Apr 2018 09:18:39 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT043.mail.protection.outlook.com (10.152.20.236) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.696.11 via Frontend Transport; Mon, 23 Apr 2018 09:18:39 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 23 Apr 2018
 10:18:16 +0100
Date: Mon, 23 Apr 2018 09:18:13 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180423091812.GD30544@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-12-git-send-email-shijie.huang@arm.com>
 <c86057d1-5bb5-77f7-05e0-e11c07a56381@arm.com>
 <20180419101450.GE29673@ubuntu.shanghai.arm.com>
 <2b72986f-ae2d-298b-d0bf-5ea084159fd7@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <2b72986f-ae2d-298b-d0bf-5ea084159fd7@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(376002)(39380400002)(396003)(39860400002)(2980300002)(438002)(199004)(189003)(4326008)(72206003)(6862004)(305945005)(478600001)(55016002)(8666007)(50466002)(186003)(16586007)(77096007)(26005)(54906003)(58126008)(316002)(6346003)(106002)(6246003)(53546011)(93886005)(39060400002)(86362001)(7696005)(8676002)(5660300001)(104016004)(426003)(8936002)(356003)(33656002)(486006)(106466001)(229853002)(446003)(76176011)(336012)(46406003)(97756001)(2906002)(6666003)(126002)(1076002)(476003)(6636002)(11346002)(23726003)(47776003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR0801MB1590; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; A:1; MX:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT043;
 1:6dYJ2KjtTRpUIO6lfT9vloZHWawk0eqoVA5vJlY6xCjV61dJ2aQ9RO1ouE5whRT+7KFo52b29JnFwBuo4cvJW1rpCVcZdyNRpqTZmkNkyMA+qRHhJfTUpKKpazACXA1T
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR0801MB1590; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 3:hPw3YDP1xvrRP2TaAIgI1qzovQxW9oQBSLO0n8dDCRycFz1sXU/xN/ZzhAEefck+fjOj0cgNjhfaDyBug0GBEAVzdCcfhcSL7WVSyVnC7QX6u3RMN43dHhrEiKem2s2sSUvz9ylEcvQJEWO/N99Fp3tvNQbb0d+jYMHe3xQDGr0V1e8BcInyzL/svw0viaWc3B6Q6YvXGFpsTxcf2w/vfSTVjihUYPrxNkoJNBT1lgH0K5Fa1f5tSDiIjjt+nIxb2UWt6g9jkIEHJT3ltsbt/rvMQltycTHd9rHh9CarpWSF4Yqts5bWysdjA3S+jFsGOPro7cnzZ+iQTeN/v/dPp16qYvyLyTbt87qVVClR2JY=;
 25:rTpmoBEsG1TPO8w2OU71ywBia7wgk6RSqLB61SUxtNXDshH22B87D5IfIsSMiMZYsfI7ye3MCdueYYaBUKW4j1cKflVWNOGU1S5F+Oq4jT3wTdEdTYFzWy5+2dSd0LWYTsBoRCu4KhEsU6ugIfz+I7jPTk42IsTOLgWrrjNHODElUUakKbZMZydNWvOLBaw6ccGp8U4foJLRvVhML+CQtnUyZkK+2w08njNJhtzX2eFURBc0QnU2U7JKd6N1S5Vt1wiPXPQL+MXqPCzQG+OjZok+e07qNSlXysKXy5tiqdhR/G3DT6F0MTOT82aKc/Hu4McHMGg6z4iTsyf9EcaT5Q==
X-MS-TrafficTypeDiagnostic: DB5PR0801MB1590:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 31:LNTyiIV7vjqNcv23kI4eaLRxpm8/tKlkja/xfUux4qeSfMfI/IDeEilpvVk6xs2J3rpOafeYD3Ov61pldaFBit5fqQg9rEVXMPQkHCaAxXTNAp0XUMJGTNAzaAgWRwI5G5i4G2t9WeSwAQLDTpInPelbSVNWzm39YUMiQfmSHRxBB9OnKb0eciVt2SYnP4CiRkHJZ/6tzgsdHYCdKcHSPSVOvU7jj4dlsq2woE5azSE=;
 20:GefCx2RvD5wRy3GJc+41YLhnz+LGM2uekLbYBy1iK7lW74lZ9U1Jjv7q80kGIgaKfIodIYRUz+plKKVYC3lUd1K3T/zoJtPBXiMry6Fu0nV/ABNEa908bPOv9/fvRnOWkopT8x8hARSNAQkt3P2X5Zvp1hIIuYDl56Y2tPzTxkc1xzE/GLZ1cp4xrKR6pFm3RNIH6HqgOlK5RFtSqjTlrZ82HG+wJotX/IvaIRSFpxHg0Pu/bg9CJrlVmQcuVpQCl7n7DHKE0OCunvJ23UA1D39gy/ZjmFHq7FFunMW2bTptl3rLzzD7cD8rKYXvNubQe2fAOdHMSWduTBGqMQgXh0YsR5LHqByjSJfGpPVct4g=;
 4:2Fnm+A5gA5aOGlrUa7CMLVGuQH6mxbjyJoshMI+0GOpUgALXEbwECzafmLYO37lzJwbjFUJ99ypeVvUbQOwTDEaIjPvfJBUQj9fGN7kTHJduLro1p+h00c3JHmsLd+FPGkY4uFrVSL2Q4Wh0718aKDmTjlhCAYBtLmXW1GkGB1VeEKE42vNSvWzOsxB1N7IHDOFnEALL01nJy9esz/dbHgK0A9Y5K7HI4kC6RGSCELnOj9IXKw600pFBTD8nhRD1e5vi/qomXFpUbActMFZf6g==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR0801MB15905B7DB2A7379538ABED5884890@DB5PR0801MB1590.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93004095)(3002001)(3231232)(944501410)(52105095)(6055026)(6041310)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:DB5PR0801MB1590; BCL:0; PCL:0; RULEID:; SRVR:DB5PR0801MB1590; 
X-Forefront-PRVS: 06515DA04B
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR0801MB1590;
 23:qbXQmDmxcUbggHpKqwaejKQ5j9BGCPSYhTrVs85?=
 =?us-ascii?Q?HitHBs7UN1ZD5bt/qccx2lzEca2yullWXUMf7F8cms2+MQSFLr0LdtDfgAnL?=
 =?us-ascii?Q?MUuwcGR/ntv4LJi4Sf4bcRsyAxoTuWc+SiwRtQ/eYALcXSyJfKcWKqPDkVNs?=
 =?us-ascii?Q?iB5l/5Y505Z3ZZGHS7UaVpxjMsm8hjjy5TqCoSq3iXRUa2sWHv+H8VfZ/KfW?=
 =?us-ascii?Q?ohMPUXnfufyi0FSTEsyPliujbjv1vVEamcK5AUc4vU0wA6F0hbOtDIG704m8?=
 =?us-ascii?Q?GV8q78CDxFK+TRFyVKJ4x95EOou3PBukqKjskmwJ9X+b2YNxmrYwWr5K19+t?=
 =?us-ascii?Q?Xeu/dPAmqnyc11lUtl2oiYsPxpQY9W0MCTE/91WhYjDHKFF+kU0i6FzJmYde?=
 =?us-ascii?Q?wCZASjTHwPvN8r/Bipi/8DevZz4Xq/UCKgaeYMN0C/UC3SgaDzD3oEAkmG8n?=
 =?us-ascii?Q?wXPuvkQ3R6fy4axTGiL3r71mBbfP+QDwzBt1q0ScXuXIYwuUPStk2qP17kvp?=
 =?us-ascii?Q?SZ/n40zmlvCTyfPx+RjGGwsSK8Kh8Oq1P2XrSsS3IENW7q0aWXsCIYnhyb7q?=
 =?us-ascii?Q?/H4RR8ZCK2u/c5TxNf7rcdoRn2lKzI0wThXxqmn1e2l1DwG3kYtt+bTJktgB?=
 =?us-ascii?Q?ENC3LROv9DKuhBY7owap+LvoyaysGNzAAHpFo8HVuFWmRrGinfpYQV1iAsM7?=
 =?us-ascii?Q?YEzWynL0dNkSAEe4vo9NdrnYSaLqIFfXUsi554K6dqAFDYWPTm0+4UKjzGLV?=
 =?us-ascii?Q?sPxR3kDLU1b/f5HmwS519OYh2aZJtaNyVVijb8DwGJytLVAwcK2eg4MKWYrc?=
 =?us-ascii?Q?qnq2G7PsXwq1DZE/2Eibdk58FEigT7hcuVpbhIhRgG9d+y3KxVkkDrw9/Wud?=
 =?us-ascii?Q?7LxxbBBmf1fKbo7GHkMjTCePAjc156RMfrGzT6w28Bo1qyyjFvHbigzghpUA?=
 =?us-ascii?Q?f1YPYvdtNaMaWY7ikaTlDQ9FoZJbDxRQNrWwU7X+ndSTY2NdW6XgsKe/zAOC?=
 =?us-ascii?Q?aEyCsaOQiYW9JSgKXDaHvRIEe4qB5bQgu9gFMUKfWZs6oBYuhipaxC4b1poJ?=
 =?us-ascii?Q?cTDJRrzg4Iz+pdtZsf4bwi9RTa0abdG4G+slVcBcENawOfj7PonQPxSAom8/?=
 =?us-ascii?Q?DFDYk59P2a/6fWsm5Ey/OfcC+n/5tEGk2bAn+OfbVPh1VI2bj00DPPAzV/mE?=
 =?us-ascii?Q?GsYhVYpirU8QJ9HbZL6vYwmfyIm5mY3NnvM9YhVqpWhOYPrzCD1UVmMIn9/G?=
 =?us-ascii?Q?Di0gXn5PGZBJQ8qvG/RbsS2Bb8iPozwNz8ZROuF6K?=
X-Microsoft-Antispam-Message-Info: 4JB26YuHhmBaMKOF0tAXGonPLvgVsau4Dq0M3pcBzqx+/CL+VEKwvQ9qajayOnPpDCXZicnUo2Bs9BdrC1LdrAMP/3Ny2usJcbipbmMKdTXSmcATN0zf0B0KGB6YMSkkljbHDpKtAfQBMp6VSlOJWkOlkzmqkdNnk8HqQAkYj2k5E/XJS0RLsRLqO1KYvh+ylUoXW75xFx8784DmaUlOlqQtZGyWwvvSnlWWpX8nCRAU7mI8ISwBPnSdkFdtx6Ql7a0R6pr6eT2NkRCH0MSGlT8yXrxen7Y6wR1+umzzakb7LlZ2XYH2Nf1VL0fSEkoN0fPhgqBndEMupOq9QugUuSkUYk1EnEXSw641PXJ0qxK9/knoiLQ5X9jEf5XI6MyZN6Hz9Xlg8nXQa5kpoB30wrvlBMuzkHxhfUi872QrIRg=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 6:A0lpkcgTzyj6zYoijWP8jFPk6eMNf+doQ/Jokizb4nSUGcmU0szawSa3QnSPZb/kA7g5fHwm9f06VHfX3RYK3sKQPWCaW5Izd5rcbnJEGsySIK6MdBn9vuhqxFMk2kZ2ML/MlJnKWvISlGXqtpO8lXTpa7hAE0L+NPiJESHycnVxizvizznNMSDzPiG9P9xMoIxW41fLGYifpgWJRue8Mas5lmBdX+Zs1pngk/cRu1KZ+5XXwqHqPirLAMIrHdkhkJW/uaYlMI31Gr5IEMvDRu+dyjUHrtYYaFypKvYgwKyG68qQZKmKY1pSAeaR2bHduj2++wYsQJ+Gg/KEcRAQ2i+cWteHVabOiwiMUQDfKrAhotG2pk2e4+JAy+jsfNDodoBXtz5n2fLcoGa+bWWADNjorn0B3IxjGDgPk2GWwqpCavLW+rrsLoPaMaywMUWx8wlUAJ1mlxO5H+AHL0oIY+mPIQnd29E/HLDv7/zWODDkcCASNnN5JJ7BzAvdiSMv;
 5:wTkd6cmn0x4fi7z0ZRA4nfG75+bA6HbUB7PhdcXg7WdDQBv7ClYNhNbnufFuTdOrdl3ciTF0GBC1MA1NkDqJamR+JibKQhpNLOBPter3qkEPWxCYEzbbGZYuRl/eaAZ/crVTifFtuvuSSILNT/RdRzRKmNmlwb9RaMke3/wROpM=;
 24:TaDzf458/3e4lKFz42MxMWAzFT0B725SI52mHbkNDviZXVdF3fC8O+0Tc8bGFFgpOLHjCHYNlLtc0j+RvnPdN+EQyWWT33Gg71fO04lKqWQ=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 7:COPZHGyzOgyr27wOVaz8fijTU5lFto147M4SP0Hy/r4H6jF5M8OI2ZKc8YIO1nVNbA09vlw+TveusHmhoVqJPFaIvakrtLfurF0fDVlS3UiAQ2VqWzF4cMxR0rUBEVDm/4up6ihJIoQ73p9F7V2eTs54sh7W8n8OMnXDtHcHzkIoWDbxRRxo2UWZ588br4OBqdeYJtUDNd/3z9qlqHOoTzAdPEDfPE/QIXWkAoZHG+njDG2RDD0XZmj4hgxN0Uo1
X-MS-Office365-Filtering-Correlation-Id: 8523d558-99e5-4d85-4e37-08d5a8fb339c
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2018 09:18:39.6432 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8523d558-99e5-4d85-4e37-08d5a8fb339c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB1590
Subject: Re: [Minios-devel] [PATCH v3 11/43] arm64: dump the registers for
 do_bad_mode()/do_sync()
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVGh1LCBBcHIgMTksIDIwMTggYXQgMTE6MjQ6MjBBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpIFNoaWppZSwKPiAKPiBPbiAxOS8wNC8xOCAxMToxNCwgSHVhbmcgU2hpamllIHdy
b3RlOgo+ID5PbiBXZWQsIEFwciAxOCwgMjAxOCBhdCAwOTowNjoxM1BNICswMTAwLCBKdWxpZW4g
R3JhbGwgd3JvdGU6Cj4gPj5IaSwKPiA+Pgo+ID4+T24gMTYvMDQvMjAxOCAwNzozMSwgSHVhbmcg
U2hpamllIHdyb3RlOgo+ID4+PlRoaXMgcGF0Y2ggYWRkcyBhIG5ldyBmdW5jdGlvbiBkdW1wX3Jl
Z3MoKSB3aGljaCBjYW4gZHVtcCB0aGUgcmVnaXN0ZXJzCj4gPj4+aW5mb3JtYXRpb24uCj4gPj4+
Cj4gPj4+QW5kIHRoZSBkb19iYWRfbW9kZSgpL2RvX3N5bmMoKSB3aWxsIHVzZSB0aGUgZnVuY3Rp
b24gdG8gZHVtcCB0aGUKPiA+Pj5yZWdpc3RlcnMuCj4gPj4+Cj4gPj4+VGhpcyBwYXRjaCByZWZl
cnMgdG8gVm9sb2R5bXlyIEJhYmNodWsncyBwYXRjaDoKPiA+Pgo+ID4+RG8geW91IG1lYW4gImJh
c2VkIG9uIiBpbnN0ZWFkIG9mICJyZWZlcnMgdG8iPwo+ID5JcyB0aGVyZSBzb21lIGRpZmZlcmVu
dD8uLgo+IAo+IElITU8sICJiYXNlZCBvbiIgaXMgbW9yZSBzdWl0YWJsZSBiZWNhdXNlIHlvdXIg
cGF0Y2ggaXMgcmUtdXNpbmcgdGhlIGlkZWFzCk9rYXksIEkgd2lsbCBjaGFuZ2UgdG8gImJhc2Vk
IG9uIi4gOikKClRoYW5rcwpIdWFuZyBTaGlqaWUKCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRl
dmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFp
bG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 09:44:33 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 09:44:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAY1O-0007sd-Pt; Mon, 23 Apr 2018 09:44:30 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ja4f=hm=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fAY1M-0007sR-RZ
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 09:44:29 +0000
X-Inumbo-ID: c0e77b9e-46da-11e8-9728-bc764e045a96
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe09::60f])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id c0e77b9e-46da-11e8-9728-bc764e045a96;
 Mon, 23 Apr 2018 11:43:19 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=Gm8YpCuB7zGxhMQc0bmG7DaK4Bjj4Y0NMsvHl+rhjtM=;
 b=WjvTw1J1K2igUTskT4ckXRwdvKqIXc7CRpyl7/jEPR+3wsjQtkt9+I9mKp0bfDoD6Qkz0TlA8BlhlJEJigL9lCY5531qeYsYFA6CYd/cUhSQfrkYeMX3AVkdTe2LrekzaK+dRW/E7vfcnOUGt6WeaIqpKyA85rKmVcNbiIbWC50=
Received: from VI1PR08CA0170.eurprd08.prod.outlook.com (2603:10a6:800:d1::24)
 by DB6PR0802MB2421.eurprd08.prod.outlook.com (2603:10a6:4:9f::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.15; Mon, 23
 Apr 2018 09:44:19 +0000
Received: from DB5EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::206) by VI1PR08CA0170.outlook.office365.com
 (2603:10a6:800:d1::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Mon, 23 Apr 2018 09:44:19 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT048.mail.protection.outlook.com (10.152.21.28) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Mon, 23 Apr 2018 09:44:18 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 23 Apr 2018
 10:44:06 +0100
Date: Mon, 23 Apr 2018 09:44:03 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180423094401.GA7506@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-13-git-send-email-shijie.huang@arm.com>
 <445ad0d4-2621-fc27-4408-cfd7f7101321@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <445ad0d4-2621-fc27-4408-cfd7f7101321@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39860400002)(346002)(376002)(396003)(39380400002)(2980300002)(438002)(189003)(199004)(305945005)(106466001)(6306002)(2906002)(8666007)(6862004)(5660300001)(104016004)(4326008)(446003)(58126008)(26005)(86362001)(54906003)(55016002)(77096007)(2870700001)(6666003)(426003)(53546011)(59450400001)(8936002)(316002)(39060400002)(50466002)(11346002)(478600001)(106002)(356003)(336012)(966005)(229853002)(2486003)(476003)(76176011)(8676002)(7696005)(126002)(486006)(6246003)(1076002)(72206003)(6636002)(23676004)(33656002)(47776003)(186003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2421; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT048;
 1:Ratsc+lk/njpH/xTa9UijyI0T715NTZJ/+Eb1DQPwnz6WuL9Ug0o1MabgscIP1bRifoGiSKetTcNf01BctrWBahau/HuMAhowW+D8mGhtKhlp8ssw6DIEYtheLVf24gw
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2421; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 3:HLBG/izQ+iqRccKD80mzl9MviZ+OM/zSE+Td5pV5BIowFi5hzR7Pzs0ZpZ+JgIwK6FnkpSBQt109jvIpjTpPAFfyW9krNBubGS52DUBJaGcNl9cpaeVvX3jb7yJ2SNjdtsz6wh/HgyCJyGQO/uxNbuW3oxpdNjbvOkqAL6PCYgWTownTdMqFGBtArwDXmBVL4I8t4c7YjCkIhsxQqe124RJs7vXhzIA5W/jZUJ8wy2k7GQEbf6qrlObTnke0/NiIicX2OGyYvePb7GXYY0Bii0tpzQCCcsYcDx8zX+yqO0C703fg0PAi92qVbcxrCV0eaEygrHnEd56lMjk0jLqox5AZNyIw5AROqKLr40Wkf2c=;
 25:OD/QDefyL9gWK4Zhvj2psyODH/DrV9DSpyswJ+Gmedo8jkMU66M3kbsuJTtgeLcUp5Tn2CwXuxzYio+ggfsKKz1qCMS56rzD0BC6DGR4HXrmnoPUf++fMmnog8s48VQVIQWAoINTB1bHU7Qe+UAFolhojQeMkMGKmc1ohvLM7o4GFb4Fkaw1lrV9SppkHl/EpqjcXgKfyB7Be8AnSCW5ccMy2Uv6xE1FAxiyO4y5eQRL1hr7iXrzdB95FBEtgWF65h0nuaeT3e7P6OyhK2uKJMd1kTpDDKV3WDrIHhP3sYAkqRy1dfygiyI9rFnNRK56F1f4+5qgceUY9KZ/4YiNug==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2421:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 31:G7byUbL07lGKAuLFUNYjWnbFd+b85hlbx2fUA7cB6iX6VqAT/Wt6MzYR6F10FUyBN74QlfLmLsKLdBaWq22/vQx42ZdInfLW0GDk14Dg5wtSqE5tB1z3ro35VUffR1/5E40cH7NHIZOmJ5psJGzGaduaog5mgLF3imut4U7mZnQk2g2lJju0uvviBhIh2B4Si7TjYmH6mAj9xyZ4x8TU7h1Ua6Akg0t7/zOCdb1aJjM=;
 20:A1hmNy5v0VoqL6ItXyTPzcT6leVgzxsOTmM3OUj1tzfAqVgT0/x4kvcMKSBXzc/hTZl3zHAMmZ056tn7VpYt+6OK8vj6nLWYvaL5bsH3I9DL6Pk5ex27/DALKsgBEQUUV14XeOqluWrzOyiPKjXzysd1AmAJVspYM1rR0P6GTs5QW000PFwjMQJeFqCzm8y2SsIXEyPR77p03AIu2TvApBy33V338JrbojSS9c1jtfgwEEEDnnWrOzt9x2na14Ylr2yNWTEwmegvuFrHSwuJFiI0UdXs/L1A9pUIyXi9Q+e7L8atv89cdBiuy+lfuXYcoEm3YlofGN8E3cuo8jnriL5Ps8rbDkF/caQFZ0KtfCU=
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB242122E561774FB638858C9984890@DB6PR0802MB2421.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(22074186197030)(183786458502308); 
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(3231232)(944501410)(52105095)(3002001)(93006095)(93004095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2421; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2421; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 4:CGAi1M71aCHKq+RD70qPt0kg7y5wnyWW60lrFm0VAnEXwgXr6OOipNrVj6MUgk3ALQQJwXD7zRmeVSdX8zMMwgDL5pyAvcs5/d3UUqCxOIm2EZdNxT5gUMk6WYwwWTLtFz2+xbnuWvYCaiImZtWtG19SRr2B0I5tO7iOYobPFqp4gs2d3P+1saxyQ3tvXPq322Hr11ExAKHpYzh2dmo5S/ROlRcQ4ppBn35B1CZd139PMLfXcZCAUiiyCXzRMs5A1oPNDPF3wPTJJg6uzhJIACCi12Zx9AKnduR9dUrwHERjEwhSpzSf0Iny3Fci/poVXo39d3jlQcoXK6Wzlvzq+C0qBIxXZ5wAuQjQI8HLiEbbx6Tu1lwBVEaaniOtISeg
X-Forefront-PRVS: 06515DA04B
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA4MDJNQjI0MjE7MjM6TWlsRVlBY3AwRkMrYllQdWlkajNFS0lk?=
 =?utf-8?B?SVJadVhJTGJNWmpHM2UzWnM0Y2hwZWxzOVUyRHdXKy84U3I5S2h2OVc4cEI2?=
 =?utf-8?B?TVRHMDN4SCszTHpPN0g4QlFEZXpndWd5eFVGZk15TzVuMWN2ejNLQmhoL25k?=
 =?utf-8?B?LyswWGNDYUZhSUJzamdzdk9KZXdJL2tmMUZXM3N6MEt3cXdWb0ZoUTZGNUVy?=
 =?utf-8?B?Y0VEcmJwMXhvcE5lZ2hUck1wQlI5citFQTBCUVY3NmY0Zk8wVlNSa1VnTm9t?=
 =?utf-8?B?N0NjUXlLY1o3a3IybDMwK1RIalIvTDRyWTdvT3k1UTRzRk84WVMvUjdEbVlY?=
 =?utf-8?B?d2czNHZuSnp6VVptdGkxY2p5V3Y3ZlZ2KzM2ZWxxVHY1d1d2TEdtd3lxeHE5?=
 =?utf-8?B?eW56TnFIYnJsZlNlN2ZCaUNtU3hQVWk2ZEZDdHVueFY3VW9MdjA0QloyRWdY?=
 =?utf-8?B?V1RidzlmOXplSW9tSG9HbFR4YWsxSDVQVnVWL01TWU5DdGRyVTRvblk5MlZU?=
 =?utf-8?B?ZjNZbFdtNEdvM2pkK3RQTUwwRDVXUVd4Z3hEL0dDZSs0eGN2ZlJyaDdXc1kr?=
 =?utf-8?B?TTkxbnp3VzVEQUwxbHlvc0xqdFg1WnBuZVpaWnppb3NpZWR5TG5ZVmJSUlBp?=
 =?utf-8?B?MGdPbnA5S25wUmFteGlIc0lOQTRDeWkyTzFLdkpXbUhoNnlrUytsMWtyUWU2?=
 =?utf-8?B?ZUF0M0xzQ0ZZWXo3OE5CeXd2UUNpOW1Jakl1NmgwNFQ4dnA1NTRpWWRjTGxM?=
 =?utf-8?B?MW42eDF1aGpROEt1a1BkS3BvWVlXblV2YXZsa1pybzEzZ2t2ejBCSzlXd2Vn?=
 =?utf-8?B?czluUjI1OVJHeEE4dE9BL28xeVB1UkxzUThqVEtQeXVtY1dJcGJWWThEYzlC?=
 =?utf-8?B?MVI2clBhR2xBU05GZ29ya3FPMW5iTW5hQmVHYVlOdzlneklvemNvL015TVBo?=
 =?utf-8?B?YStTcG55dFVraTF4MSs3Uk9lOCtHL1A4eG5BdjNmcXk2a2N0WGJDV3pEQ0Uw?=
 =?utf-8?B?bFdmdWdqRExnSFVZdmQvTUx3QjZMaEZyMVZpMTZLRkpRZEI0a0kwUm52Mm1Y?=
 =?utf-8?B?aEE3ZTQvV2U1d0lmL3c1L3NPVFl1SzVFMmsydGtvcGJCQ3hZOFpGdDJ0Qmtv?=
 =?utf-8?B?L1dHYy9EcE9lWFRFRzdGSG01N25RdmZFTnlKVVh6RUM5ZThkK0IzdHVESVpZ?=
 =?utf-8?B?U0JEYWdiWEt5dm5ibnpXWUVVMnlhTk1IRlJNNWtEdWh3YlVyT3FvYUtWK0xa?=
 =?utf-8?B?SG55TUo2UzJTd3g2eEtrZzYxdVpjWWFpcmRQaVp4SzR3elZFUUNvazE3SjA0?=
 =?utf-8?B?WmhaNFpQQk90aGtYTkpNTTlnczRNRmlyVXEvSnhpSFZzU2EzS1lES1VBdXRu?=
 =?utf-8?B?OHZFUHFYQWxrb3Rkd3pFbnEyL1pVOWJXR2pPQmY0TGRtcm1CMnlBakIrQ0J4?=
 =?utf-8?B?bU1SUkVUVGpMeUhlTThHUGFjVG5qcWQzZjJVY1JIUmZTK0hkMW55YTZ5N2xY?=
 =?utf-8?B?anZQazgzNDcxY2tUL3h1S1RsQXhCZDhCbzhVczdHbnhlQmIzVWxLSE9OVlJH?=
 =?utf-8?B?blg2UEtlNUo3RlNPL2J0ditHQlpUMmY4TkozQVVDUEFLeFlNa0taVWpxbFVj?=
 =?utf-8?B?TDhmMWllN1BWS1RMalU3NjNRa1htSy9ZK29seXNMU0RvYXc2eHk0VWIvQ3hJ?=
 =?utf-8?Q?LaE0FPdPBrwmTshEU2m7xo3sO4iAHhfCxEsm4JNuC?=
X-Microsoft-Antispam-Message-Info: YiSLhsYmdXj/F6LB5UR1MLUHHm+VSzagoEj63mzm0T+G69PtIozrkxiuUmo2dzgkn8sxfZLexL8rytOJP9n7S7H+SAySVmAuvv1muGBZBqWc2ioV6g78Se1VBj6v1PN6XY/7ylxirpwJ26syH8VNGi2qA8/r3fFOzOlf2CyK0PQ2yDMQpGcUCxdq8umkCLKBmWRXD3GsPfJnSCOzpwHdBpjWRMP45UGMMqAYu8KHg1QavtAO23edPNswsiVsW7My5LcCIhiGobHek4sQtl1eLVZrRrDzsgKGsiNyK9ZKgfJ6ERyX48sqC+G0lewv4Pe43VAMhW3vnk37HCqjT5QXwq/s2T8Au+c6L1LV++w1ZsSZkOmLX6/P/HxUKpFMqR6QHy1nZuNELbEhIRs3SQ78Neoe4ezHxKgBTtL0iJG/940=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 6:Bsnf6o3SUAxdCOjfYTf2P8Br6d33Bzel3uucJQR86slHjekleL+1foCSMl85BnB+wDTqxXKOX5BZ/yGe96j/g7Q8tvh8jgT5cOwo7KuVqyzwCt02aSMV9wLoap5OEZWxlkOuMHsSCQO7gL3v7IpQezV3hHyRZ6NYcUvjv1cNbhzwjF0fugolifbfazvw3giILcl3mJmK36kgCooWbZC+hiMp086t2G0teSIo2Z4piq/kXhqqPdW0kSucuMBNBoP0Rw0FyYTyoznvLGFF5Phor7zj2zhTC2962zZEvOpuCPs3RVaWUcSHSZ7LhaaQvWEKH/7k2GovxYgCKIIz/WMfJyVD7yX7M+PXxYO+tYTzFmUxY6yeApbp6gTvSrUMU35POPPxZAQuITGCkqBVaKOozIBxaZK5UYE0XyQ+uInB06n0HYPO4LS5RpRGTp6Z6J02a3MI6APXpHTF/qolFeOLMM3nWsa6R9aoGR/5gmrnG0eMg2txR5Jf5b2P5BNRuBb1;
 5:3CEWaVXylVSaJ8mB2MM8OCh0/51BZPbCddApmZ6n9wGsgqKsvfPBhb1DstTwwsa/xNZwlUHUnIhckkFGGjgnPVcnk66iNhjTcZCoUSPleaMdlRdZCsd8PZT366Js4i0LnOEA/scs+ueQ2AmNGbiERTOzA2at3TUYYvS5kNVfsDk=;
 24:tL0FyNfET7i8B02fDwRrVqBaCReU/9V+/mj9FvTyS8JAg8b1qR3MJR0g3/sZU6c4GPjn/2CvD+wV86cIfcgSB7l3uilfwCOKWiuiNECOcQg=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2421;
 7:sW5w4w1zhZ1j7JLkf7wOKgHUgyReCZLVCJYPiWHTVvJdDh/vl6ZkMSrOGU9U/+FdsNjOoxEwyjNy1WOYQoAnfubtV6krEDOpfnSDlxaGLOKo8jDG5AOKRzfJxaDe5HMIxJjvoIaUqF8R6HYtWi/7cY9IFoqFy5Rz+Im8o4f55ulv+PYAwNuV6oyMo7Oy5pOU6rsC/C8+ly10YvLwmpRGJl4cNXCykhA1w7zNbxqve/iG9QX5e17qkasH68ZLt4MK
X-MS-Office365-Filtering-Correlation-Id: a8daad57-1846-48a2-d8ce-08d5a8fec91d
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2018 09:44:18.9785 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a8daad57-1846-48a2-d8ce-08d5a8fec91d
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2421
Subject: Re: [Minios-devel] [PATCH v3 12/43] arm64: add the basic helpers
 for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMDk6Mjc6MTJQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE1vc3Qgb2YgbXkgY29tbWVudHMgZnJvbSA8Y2MxNDMxNjktMDhkYS0x
OGIyLTA2MGYtODgyMzkwOWFiZTZlQGxpbmFyby5vcmc+Cj4gaGFzIG5vdCBiZWVuIGFkZHJlc3Nl
ZC4gU29tZSBvZiB0aGVtIGFyZSBwcm9iYWJseSBoYXZlIGJlZW4gcmVwZWF0ZWQgMy00Cj4gdGlt
ZXMuLi4uIFNvIHBsZWFzZSBhZGRyZXNzIHRoZW0uCnNvcnJ5LCBJIGRpZCByZXBseSB0aGUgb2xk
IGVtYWlsLiAgSSB3aWxsIGFkZHJlc3MgdGhlbSBoZXJlLi4KCj4gCj4gT24gMTYvMDQvMjAxOCAw
NzozMSwgSHVhbmcgU2hpamllIHdyb3RlOgo+ID5UaGlzIHBhdGNoIGFkZHMgdGhlIGJhc2ljIGhl
bHBlcnMgaW4gaGVhZGVycyBmb3IgYXJtNjQ6Cj4gPiAgICAgMS4pIG1iL3JtYi93bWIKPiA+ICAg
ICAyLikgbG9jYWxfaXJxX2Rpc2FibGUvbG9jYWxfaXJxX2VuYWJsZQo+ID4gICAgIDMuKSBsb2Nh
bF9pcnFfc2F2ZS9sb2NhbF9pcnFfcmVzdG9yZS9sb2NhbF9zYXZlX2ZsYWdzCj4gPiAgICAgNC4p
IHNpbXBsaWZ5IHRoZSBfX2Zmcwo+ID4gICAgIDUuKSBhZGQgQlVHKCkuCj4gCj4gWW91IGFsc28g
ZHJvcCBhcm0zMiBjb2RlIG1ha2luZyB0aGF0IHBhdGNoIHF1aXRlIGNvbmZ1c2luZyB0byByZWFk
Lgp5ZXMuIEkgY2FuIHJlbW92ZSBpdCB0byAjMiBwYXRjaC4KPiAKPiA+Cj4gPlRoaXMgcGF0Y2gg
cmVmZXJzIHRvIENoZW4gQmFvemkncyBwYXRjaDoKPiAKPiBEbyB5b3UgbWVhbiAiYmFzZWQgb24i
IHJhdGhlciB0aGFuICJyZWZlcnMgdG8iPwpva2F5LgoKPiAKPiA+ICAgICAgIkluaXRpYWwgY29k
ZXMgZm9yIGFybTY0Igo+ID5BbmQgdGhpcyBwYXRjaCBhbHNvIHJlZmVycyB0byBGcmVlQlNEIGNv
ZGU6Cj4gCj4gRGl0dG8KPiAKPiA+ICAgICAgc3lzL2FybTY0L2luY2x1ZGUvYXRvbWljLmgKPiAK
PiBZb3UgdmVyeSBsaWtlbHkgaGF2ZSB0byByZXRhaW4gdGhlIGNvcHlyaWdodCBmcm9tIHRob3Nl
IGZpbGVzLgpkbyB5b3UgbWVhbiBJIHNob3VsZCBjb3B5IHRoZSBjb3B5cmlnaHQgaGVyZT8KSSB0
aGluayBib3RoIHRoZSBjb2RlIGlzIEZyZWVCU0QgbGljZW5zZSwgc28gSSBkaWQgbm90IGRvIHRo
YXQuCgo+IAo+ID4KPiA+U2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdA
YXJtLmNvbT4KPiA+LS0tCj4gPiAgaW5jbHVkZS9hcm0vYXJtNjQvb3MuaCB8IDI4ICsrKysrKysr
KysrKysrKysrKysKPiA+ICBpbmNsdWRlL2FybS9vcy5oICAgICAgIHwgNzUgKysrKysrKysrKysr
KysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+ICAyIGZpbGVzIGNoYW5n
ZWQsIDUyIGluc2VydGlvbnMoKyksIDUxIGRlbGV0aW9ucygtKQo+ID4gIGNyZWF0ZSBtb2RlIDEw
MDY0NCBpbmNsdWRlL2FybS9hcm02NC9vcy5oCj4gPgo+ID5kaWZmIC0tZ2l0IGEvaW5jbHVkZS9h
cm0vYXJtNjQvb3MuaCBiL2luY2x1ZGUvYXJtL2FybTY0L29zLmgKPiA+bmV3IGZpbGUgbW9kZSAx
MDA2NDQKPiA+aW5kZXggMDAwMDAwMC4uM2Q0YWFkYQo+ID4tLS0gL2Rldi9udWxsCj4gPisrKyBi
L2luY2x1ZGUvYXJtL2FybTY0L29zLmgKPiA+QEAgLTAsMCArMSwyOCBAQAo+ID4rI2lmbmRlZiBf
QVJNNjRfT1NfSF8KPiA+KyNkZWZpbmUgX0FSTTY0X09TX0hfCj4gPisKPiA+KyNkZWZpbmUgQlVH
KCkgICAgICAgICAgIF9fYXNtX18gX192b2xhdGlsZSgid2ZpIiA6OjogIm1lbW9yeSIpCj4gCj4g
SSBkb24ndCB1bmRlcnN0YW5kIHRoYXQgaW1wbGVtZW50YXRpb24uIFdGSSBtZWFucyB3YWl0IGZv
ciBpbnRlcnJ1cHQgYW5kCj4gd2lsbCBjb250aW51ZSBhcyBzb29uIGFzIGFuIGludGVycnVwdCBj
YW1lIHVwLiBXaGF0IHlvdSB3YW50IGhlcmUgaXMgZHVtcGluZwo+IHRoZSByZWdpc3RlcnMgYW5k
IGV4aXQuCj4gCj4gU28gbW9zdCBsaWtlbHkgeW91IHdhbnQgdG8gdXNlICJicmsiIHRoYXQgd2ls
bCBwcm92b2tlIGEgdHJhcC4Kb2theSwgSSB3aWxsIHVzZSAiYnJrIiBpbiBuZXh0IHZlcnNpb24u
Lgo+IAo+ID4rCj4gPitzdGF0aWMgaW5saW5lIHZvaWQgbG9jYWxfaXJxX2Rpc2FibGUodm9pZCkK
PiA+K3sKPiA+KyAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXNyIGRhaWZzZXQsICMyIjo6OiJt
ZW1vcnkiKTsKPiAKPiBBZ2FpbiwgZG9lcyB0aGUgX18gaXMgcmVhbGx5IG5lZWRlZD8gU2FtZSBm
b3IgZXZlcnl3aGVyZSBpbiB0aGF0IHBhdGNoLgo+IFlvdSBzYWlkIHlvdSB3aWxsIGNoZWNrIGl0
IGFuZCBuZXZlciBjYW1lIGJhY2suCldlIChTdGV2ZSBhbmQgSSkgZXZlciBjaGVja2VkIHRoZSBH
Q0MgZG9jdW1lbnQgYWJvdXQgdGhpcy4KCmh0dHBzOi8vZ2NjLmdudS5vcmcvb25saW5lZG9jcy9n
Y2MvRXh0ZW5kZWQtQXNtLmh0bWwKCuKAnFRoZSBhc20ga2V5d29yZCBpcyBhIEdOVSBleHRlbnNp
b24uIFdoZW4gd3JpdGluZyBjb2RlIHRoYXQgY2FuIGJlIGNvbXBpbGVkIHdpdGggLWFuc2kgYW5k
CnRoZSB2YXJpb3VzIC1zdGQgb3B0aW9ucywgdXNlIF9fYXNtX18gaW5zdGVhZCBvZiBhc20gKHNl
ZSBBbHRlcm5hdGUgS2V5d29yZHMpLuKAnQoKPiAKPiA+K30KPiA+Kwo+ID4rc3RhdGljIGlubGlu
ZSB2b2lkIGxvY2FsX2lycV9lbmFibGUodm9pZCkKPiA+K3sKPiA+KyAgICBfX2FzbV9fIF9fdm9s
YXRpbGVfXygibXNyIGRhaWZjbHIsICMyIjo6OiJtZW1vcnkiKTsKPiA+K30KPiA+Kwo+ID4rI2Rl
ZmluZSBsb2NhbF9pcnFfc2F2ZSh4KSB7IFwKPiA+KyAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygi
bXJzICUwLCBkYWlmOyBtc3IgZGFpZnNldCwgIzIiOiI9ciIoeCk6OiJtZW1vcnkiKTsgXAo+ID4r
fQo+ID4rCj4gPisjZGVmaW5lIGxvY2FsX2lycV9yZXN0b3JlKHgpIHsgXAo+ID4rICAgIF9fYXNt
X18gX192b2xhdGlsZV9fKCJtc3IgZGFpZiwgJTAiOjoiciIoeCk6Im1lbW9yeSIpOyBcCj4gPit9
Cj4gPisKPiA+KyNkZWZpbmUgbG9jYWxfc2F2ZV9mbGFncyh4KSB7IFwKPiA+KyAgICBfX2FzbV9f
IF9fdm9sYXRpbGVfXygibXJzICUwLCBkYWlmIjoiPXIiKHgpOjoibWVtb3J5Iik7IFwKPiA+K30K
PiA+Kwo+ID4rI2VuZGlmCj4gPmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9vcy5oIGIvaW5jbHVk
ZS9hcm0vb3MuaAo+ID5pbmRleCA2YTFjYzM3Li5iMTA1NTdhIDEwMDY0NAo+ID4tLS0gYS9pbmNs
dWRlL2FybS9vcy5oCj4gPisrKyBiL2luY2x1ZGUvYXJtL29zLmgKPiA+QEAgLTgsNDEgKzgsNDIg
QEAKPiA+ICAjaW5jbHVkZSA8bWluaS1vcy9jb21waWxlci5oPgo+ID4gICNpbmNsdWRlIDxtaW5p
LW9zL2tlcm5lbC5oPgo+ID4gICNpbmNsdWRlIDx4ZW4veGVuLmg+Cj4gPisjaW5jbHVkZSA8YXJt
NjQvb3MuaD4KPiAKPiBTYW1lIHJlbWFyayBhcyBmb3IgdHJhcHMuaC4gWW91IHdhbnQgdG8gI2lm
ZGVmIHRoYXQuCmRvIHlvdSBtZWFuIEkgc2hvdWxkIGFkZCAjaWZkZWYgaGVyZT8KCnRoYW5rcwo+
IAo+ID4gIHZvaWQgYXJjaF9maW5pKHZvaWQpOwo+ID4gIHZvaWQgdGltZXJfaGFuZGxlcihldnRj
aG5fcG9ydF90IHBvcnQsIHN0cnVjdCBwdF9yZWdzICpyZWdzLCB2b2lkICppZ24pOwo+ID4gIGV4
dGVybiB2b2lkICpkZXZpY2VfdHJlZTsKPiA+LSNkZWZpbmUgQlVHKCkgd2hpbGUoMSl7YXNtIHZv
bGF0aWxlICgiLndvcmQgMHhlN2YwMDBmMFxuIik7fSAvKiBVbmRlZmluZWQgaW5zdHJ1Y3Rpb247
IHdpbGwgY2FsbCBvdXIgZmF1bHQgaGFuZGxlci4gKi8KPiA+LQo+ID4gICNkZWZpbmUgc21wX3By
b2Nlc3Nvcl9pZCgpIDAKPiA+ICAjZGVmaW5lIGJhcnJpZXIoKSBfX2FzbV9fIF9fdm9sYXRpbGVf
XygiIjogOiA6Im1lbW9yeSIpCj4gPiAgZXh0ZXJuIHNoYXJlZF9pbmZvX3QgKkhZUEVSVklTT1Jf
c2hhcmVkX2luZm87Cj4gPi0vLyBkaXNhYmxlIGludGVycnVwdHMKPiA+LXN0YXRpYyBpbmxpbmUg
dm9pZCBsb2NhbF9pcnFfZGlzYWJsZSh2b2lkKSB7Cj4gPi0gICAgX19hc21fXyBfX3ZvbGF0aWxl
X18oImNwc2lkIGkiOjo6Im1lbW9yeSIpOwo+ID4tfQo+ID4tCj4gPi0vLyBlbmFibGUgaW50ZXJy
dXB0cwo+ID4tc3RhdGljIGlubGluZSB2b2lkIGxvY2FsX2lycV9lbmFibGUodm9pZCkgewo+ID4t
ICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJjcHNpZSBpIjo6OiJtZW1vcnkiKTsKPiA+LX0KPiA+
LQo+ID4tI2RlZmluZSBsb2NhbF9pcnFfc2F2ZSh4KSB7IFwKPiA+LSAgICBfX2FzbV9fIF9fdm9s
YXRpbGVfXygibXJzICUwLCBjcHNyO2Nwc2lkIGkiOiI9ciIoeCk6OiJtZW1vcnkiKTsgICAgXAo+
ID4tfQo+ID4tCj4gPi0jZGVmaW5lIGxvY2FsX2lycV9yZXN0b3JlKHgpIHsgICAgXAo+ID4tICAg
IF9fYXNtX18gX192b2xhdGlsZV9fKCJtc3IgY3Bzcl9jLCAlMCI6OiJyIih4KToibWVtb3J5Iik7
ICAgIFwKPiA+LX0KPiA+KyNkZWZpbmUgaXNiKCkgICAgICAgICAgIF9fYXNtX18gX192b2xhdGls
ZSgiaXNiIiA6OjogIm1lbW9yeSIpCj4gPisKPiA+Ky8qCj4gPisgKiBPcHRpb25zIGZvciBETUIg
YW5kIERTQjoKPiA+KyAqCW9zaGxkCU91dGVyIFNoYXJlYWJsZSwgbG9hZAo+ID4rICoJb3Noc3QJ
T3V0ZXIgU2hhcmVhYmxlLCBzdG9yZQo+ID4rICoJb3NoCU91dGVyIFNoYXJlYWJsZSwgYWxsCj4g
PisgKgluc2hsZAlOb24tc2hhcmVhYmxlLCBsb2FkCj4gPisgKgluc2hzdAlOb24tc2hhcmVhYmxl
LCBzdG9yZQo+ID4rICoJbnNoCU5vbi1zaGFyZWFibGUsIGFsbAo+ID4rICoJaXNobGQJSW5uZXIg
U2hhcmVhYmxlLCBsb2FkCj4gPisgKglpc2hzdAlJbm5lciBTaGFyZWFibGUsIHN0b3JlCj4gPisg
Kglpc2gJSW5uZXIgU2hhcmVhYmxlLCBhbGwKPiA+KyAqCWxkCUZ1bGwgc3lzdGVtLCBsb2FkCj4g
PisgKglzdAlGdWxsIHN5c3RlbSwgc3RvcmUKPiA+KyAqCXN5CUZ1bGwgc3lzdGVtLCBhbGwKPiA+
KyAqLwo+ID4rI2RlZmluZSBkbWIob3B0KSAgICAgICAgX19hc21fXyBfX3ZvbGF0aWxlKCJkbWIg
IiAjb3B0IDo6OiAibWVtb3J5IikKPiA+KyNkZWZpbmUgZHNiKG9wdCkgICAgICAgIF9fYXNtX18g
X192b2xhdGlsZSgiZHNiICIgI29wdCA6OjogIm1lbW9yeSIpCj4gPi0jZGVmaW5lIGxvY2FsX3Nh
dmVfZmxhZ3MoeCkgICAgeyBcCj4gPi0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1ycyAlMCwg
Y3BzciI6Ij1yIih4KTo6Im1lbW9yeSIpOyAgICBcCj4gPi19Cj4gPisjZGVmaW5lIG1iKCkgICAg
ICAgICAgICBkbWIoc3kpIC8qIEZ1bGwgc3lzdGVtIG1lbW9yeSBiYXJyaWVyIGFsbCAqLwo+ID4r
I2RlZmluZSB3bWIoKSAgICAgICAgICAgZG1iKHN0KSAvKiBGdWxsIHN5c3RlbSBtZW1vcnkgYmFy
cmllciBzdG9yZSAqLwo+ID4rI2RlZmluZSBybWIoKSAgICAgICAgICAgZG1iKGxkKSAvKiBGdWxs
IHN5c3RlbSBtZW1vcnkgYmFycmllciBsb2FkICovCj4gCj4gbGQgZG9lcyBub3QgZXhpc3QgZm9y
IGFybTMyLiBTbyB5b3Ugd2FudCB0byBpZmRlZiB0aGF0LgpZb3UgbWVhbiBJIHNob3VsZCBhZGQg
I2lmZGVmIGhlcmU/Cgo+IAo+IEJ1dCBhZ2FpbiwgY2FuIHlvdSBleHBsYWluIHdoeSB5b3UgdXNl
IGRtYiguLi4pIGFuZCBub3QgZHNiKC4uLikgaGVyZS4KZHNiKCkgaXMgbW9yZSBzdHJpY3QgdGhl
biB0aGUgZG1iKCkuCgoiVGhpcyBlbmZvcmNlcyB0aGUgc2FtZSBvcmRlcmluZyBhcyB0aGUgRGF0
YSBNZW1vcnkgQmFycmllciwgYnV0IGhhcyB0aGUgYWRkaXRpb25hbAplZmZlY3Qgb2YgYmxvY2tp
bmcgZXhlY3V0aW9uIG9mIGFueSBmdXJ0aGVyIGluc3RydWN0aW9ucywgbm90IGp1c3QgbG9hZHMg
b3Igc3RvcmVzLApvciBib3RoLCB1bnRpbCBzeW5jaHJvbml6YXRpb24gaXMgY29tcGxldGUuIiAg
ICAgICAKCgo+IAo+ID4gIHN0YXRpYyBpbmxpbmUgaW50IGlycXNfZGlzYWJsZWQodm9pZCkgewo+
ID4gICAgICBpbnQgeDsKPiA+QEAgLTUwLDE0ICs1MSw4IEBAIHN0YXRpYyBpbmxpbmUgaW50IGly
cXNfZGlzYWJsZWQodm9pZCkgewo+ID4gICAgICByZXR1cm4geCAmIDB4ODA7Cj4gPiAgfQo+ID4t
LyogV2UgcHJvYmFibHkgb25seSBuZWVkICJkbWIiIGhlcmUsIGJ1dCB3ZSdsbCBzdGFydCBieSBi
ZWluZyBwYXJhbm9pZC4gKi8KPiA+LSNkZWZpbmUgbWIoKSBfX2FzbV9fKCJkc2IiOjo6Im1lbW9y
eSIpOwo+ID4tI2RlZmluZSBybWIoKSBfX2FzbV9fKCJkc2IiOjo6Im1lbW9yeSIpOwo+ID4tI2Rl
ZmluZSB3bWIoKSBfX2FzbV9fKCJkc2IiOjo6Im1lbW9yeSIpOwo+ID4tCj4gPiAgLyoqKioqKioq
KioqKioqKioqKioqKioqKioqIGFybSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwo+
ID4gICNpZmRlZiBfX0lOU0lERV9NSU5JT1NfXwo+ID4tI2lmIGRlZmluZWQgKF9fYXJtX18pCj4g
PiAgI2RlZmluZSB4Y2hnKHB0cix2KSBfX2F0b21pY19leGNoYW5nZV9uKHB0ciwgdiwgX19BVE9N
SUNfU0VRX0NTVCkKPiA+ICAvKioKPiA+QEAgLTEyOSwzMSArMTI0LDkgQEAgc3RhdGljIF9faW5s
aW5lX18gdm9pZCBjbGVhcl9iaXQoaW50IG5yLCB2b2xhdGlsZSB1bnNpZ25lZCBsb25nICphZGRy
KQo+ID4gICAqLwo+ID4gIHN0YXRpYyBfX2lubGluZV9fIHVuc2lnbmVkIGxvbmcgX19mZnModW5z
aWduZWQgbG9uZyB3b3JkKQo+ID4gIHsKPiA+LSAgICBpbnQgY2x6Owo+ID4tCj4gPi0gICAgLyog
eHh4eHgxMDAwMCA9IHdvcmQKPiA+LSAgICAgKiB4eHh4eDAxMTExID0gd29yZCAtIDEKPiA+LSAg
ICAgKiAwMDAwMDExMTExID0gd29yZCBeICh3b3JkIC0gMSkKPiA+LSAgICAgKiAgICAgIDQgICAg
ID0gMzEgLSBjbHood29yZCBeICh3b3JkIC0gMSkpCj4gPi0gICAgICovCj4gPi0KPiA+LSAgICBf
X2FzbV9fICgKPiA+LSAgICAgICAgInN1YiByMCwgJVt3b3JkXSwgIzFcbiIKPiA+LSAgICAgICAg
ImVvciByMCwgcjAsICVbd29yZF1cbiIKPiA+LSAgICAgICAgImNseiAlW2Nsel0sIHIwXG4iOgo+
ID4tICAgICAgICAvKiBPdXRwdXRzOiAqLwo+ID4tICAgICAgICBbY2x6XSAiPXIiKGNseik6Cj4g
Pi0gICAgICAgIC8qIElucHV0czogKi8KPiA+LSAgICAgICAgW3dvcmRdICJyIih3b3JkKToKPiA+
LSAgICAgICAgLyogQ2xvYmJlcnM6ICovCj4gPi0gICAgICAgICJyMCIpOwo+ID4tCj4gPi0gICAg
cmV0dXJuIDMxIC0gY2x6Owo+ID4rICAgIHJldHVybiBfX2J1aWx0aW5fY3R6bCh3b3JkKTsKPiAK
PiBBZ2FpbiwgYXJlIHlvdSBzdXJlIF9fYnVpbHRpbl9jdHpsIGlzIGRlZmluZWQgZXZlcnl3aGVy
ZT8gSSBhc2tlZCB5b3UgdG8KPiB0ZWxsIHVzZSB3aGV0aGVyIGFsbCBjb21waWxlcnMgKGUuZyBH
Q0MgYW5kIENsYW5nKSBzdXBwb3J0cyB0aGUgYnVpbHRpbiBhbmQKPiBmcm9tIHdoaWNoIHZlcnNp
b24uCgpJdCBpcyBhIGdjYyBidWlsdGluIGluIGFsbCByZWNlbnQgZ2NjIHZlcmlvbjoKaHR0cHM6
Ly9nY2MuZ251Lm9yZy9vbmxpbmVkb2NzL2djYy0zLjQuNi9nY2MvT3RoZXItQnVpbHRpbnMuaHRt
bAoK4oCmCgpodHRwczovL2djYy5nbnUub3JnL29ubGluZWRvY3MvZ2NjLTcuMi4wL2djYy9PdGhl
ci1CdWlsdGlucy5odG1sCgpzbyBJIHRoaW5rIGl0IGlzIG9rYXkgaGVyZS4uCgoKdGhhbmtzCkh1
YW5nIFNoaWppZQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVj
dC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlv
cy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 09:46:18 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 09:46:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAY38-0007vq-0T; Mon, 23 Apr 2018 09:46:18 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ja4f=hm=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fAY35-0007vl-V6
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 09:46:15 +0000
X-Inumbo-ID: 016056bb-46db-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::603])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 016056bb-46db-11e8-9728-bc764e045a96;
 Mon, 23 Apr 2018 11:45:07 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=rgtrPdK3SEd+ttoV4Q/Hu5dhMDvNHwYXHNIBJtfLm90=;
 b=YKyIWf44Pe75SVfTTT3lA8OHhlJHILhx4K5xAvSEh1AsQQoGMj8nCvbNh/2VMgnNKoEHStcWzD6ZiH8QqUPnilWXORPJ23rYKQlbG0JGNfY6ho+Bt7wpbV280dH3Tn48Zhnkr1pJdKguc/gCN2A0UqMRtW+fTtaKaKPgRkR+7SU=
Received: from VI1PR08CA0217.eurprd08.prod.outlook.com (2603:10a6:802:15::26)
 by AM5PR0802MB2420.eurprd08.prod.outlook.com (2603:10a6:203:9f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.696.12; Mon, 23 Apr
 2018 09:46:08 +0000
Received: from AM5EUR03FT056.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::200) by VI1PR08CA0217.outlook.office365.com
 (2603:10a6:802:15::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Mon, 23 Apr 2018 09:46:07 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT056.mail.protection.outlook.com (10.152.17.224) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.696.11 via Frontend Transport; Mon, 23 Apr 2018 09:46:07 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Mon, 23 Apr 2018
 10:45:53 +0100
Date: Mon, 23 Apr 2018 09:45:48 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180423094547.GB7506@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-11-git-send-email-shijie.huang@arm.com>
 <95cf656b-7477-800c-6599-b9032288963b@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <95cf656b-7477-800c-6599-b9032288963b@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(396003)(39380400002)(39860400002)(346002)(2980300002)(438002)(199004)(189003)(478600001)(356003)(5660300001)(186003)(305945005)(106002)(53546011)(104016004)(23726003)(8676002)(1076002)(8936002)(446003)(6862004)(4326008)(2906002)(6246003)(55016002)(336012)(316002)(77096007)(58126008)(26005)(426003)(11346002)(16586007)(54906003)(8666007)(486006)(39060400002)(106466001)(33656002)(6636002)(6666003)(229853002)(47776003)(46406003)(476003)(86362001)(126002)(97756001)(7696005)(76176011)(72206003)(50466002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0802MB2420; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; A:1; MX:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT056;
 1:pzeK3FY5svJYFSZtdB+TbJiTRtZr+R9LTzIRdAT4bjG+mT7LOscVWeofaTqo8jWAvFzjGhD1kQwe3VrK6GYBn3VxCPX7aEF7ugymhzRL7GtsCTUOJDU/dzVaVG/Oa+e6
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM5PR0802MB2420; 
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 3:IfvjIN1UTctq2uyMt29RIEllqYbKMyv+E3rorW551r3V/uMyUpxHOsTJ0I5kcuLpNl5xnd2EcFW7QGxJcu5LoF0JWMTujPWjsKNImT5t+BNOcRXMqltDXhP6aV/jeKVBkG2zBTaopbc3Ukcs0NYR/eljZTySBXHu6+/vK2PJaFbzZY6QUQubvSGQsQptIC9mwvyoPOdfrjImZ4OnGXN7kuTQVudNi1expfa26tK+Y+jlkNlHs1otFijxwRgWSAELeprIQ5XuxSf62sFjE0CsP/JJTC0ShUPNXpcy2EvU047jUjZzgPWaMUO6hrtFHUXP47WdJCW7WCo3dVoR/ZBxySOZimq61YeB9MaOfEf0Qww=;
 25:oNzZxdxP/tidtHD2Qw8PHkVdqKJcdU+Viu5gYP+9z1ODcmOtxPcBDzZRBM0RWiBcmrviI20zN5muisyTxY0CgYIY9ol8BjzWkAZaE+2gQZ0mp/WUFC4ddmtSAnxsdKblqXNwDdflsPkBOMoRu79JpBkVqpsrcbaQx8bVrg1d6b4bOUuxmrO+LXmhpud4KUhxFBYLzEiqoeRJNnp6zMzW3QWahwaesKW97MkEcpARa8TUrWOcYhWvguZTaA6gItwyBE4yIZYt0oTVy09vLgKEFeOHOMJU93t+LP8QS2caDm/JooogQRtaGvAMGq3kSuK8ejTblBE/H7vhSwst5HVX7Q==
X-MS-TrafficTypeDiagnostic: AM5PR0802MB2420:
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 31:v2YlbMuQmTLL2nDCwveScJsIqLom9uOEQutBBW1FtI//Ov6zaIvXVpuwVS0PJvDzLlF5UILogsgXY82mLqtWatvu0HGBVghfWu4R7c/Zaj4ouzjUknq47BEhRu3Pc+snsQJ2vp8rxAN66NIE5tLFEJADmob6CJYW23u72f8lwPhanlmjiWo8Jb7AVmYZ0OSnXqdzByeok5nFHyRBXyREoGJpvGgxxNfzzIWHvIJKAoA=;
 20:BZPzQrj3cYaFc/JVsEcE9yJHyCnMQdJpx9UvynwKn4+vLpQBIlVAo0Wb6orY5Wl17hcab0BO4h8tQVEvyEzlOn4eYebOw3F1lzgYEIlASSmGr9n61Y2/PAM74E6kNYZHSvAk/cL4hGbFiln2KS+rgvU/hYXcnikr+5K1kP3ZXWVsPRSH1XCjAySI/RbQkUlTOf/VSyKxGQNhm5WecZoBcZhGdWKht74TGxT6RU2L4EC8fIwi1kr7GSf4G9YPyueEdE3TfMhZNK6W0CETD/QD7SJbZMdNL0raqSs74k6R9O3bUTlPhIqDQlgFn4vOqnxkmHToEn89oBRBhPXScHAZDPMjZdHa+L93o+tLYoaSQzQ=;
 4:qORIdSoPuUIbJH9XpzWqesdsSeBFSRtdIX2uSordPr8A3Tcz9a2bt0cCzfkAUPCZuXqBHjSJEXpB3LwX+hGLzsnu0WLoMi+QaC5eKkjgG/eNUwdXV5NtSqJ6yoQr3w4KaTQT3ysnTsjSy/qs5aAOnTV0z2HpwPzFuBR/JlrUYpepZcy2FUxcg7ovozs1J2KD9VS6MNuo3aLDAMtNcVpFfvzTKIYgxt8bbjnZJUHXj0DyRQkQ9cSJOxMPFPXxhuykF8USVrSKIBrOx7PVVLo0Hw==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM5PR0802MB24209327D05114F78A71999E84890@AM5PR0802MB2420.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93004095)(3231232)(944501410)(52105095)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(6072148)(201708071742011);
 SRVR:AM5PR0802MB2420; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0802MB2420; 
X-Forefront-PRVS: 06515DA04B
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM5PR0802MB2420;
 23:oRa3h6t6ZxIQgAsWBGyqlTfcjbZ6k6Bh2m6L0sb?=
 =?us-ascii?Q?FKKFsoYC/ZALWENeCfb/rCd95Nuf+N4nClZcK7OR4iD2/ZQFVG4e3nn+f7ye?=
 =?us-ascii?Q?6pZ/FjBzbtFI/Ud0FPZRu9qrmDvcN9Q89C09aYaZntg71m+yQaRY10isT85v?=
 =?us-ascii?Q?vpv0rhA+bS19rs9j0L4ElJATelluuHUbdfimL+d37go4EoUdgkg/++peNiu+?=
 =?us-ascii?Q?ZzchwikRlXpohYg486cR1HA55VxQTUF269iiJHyaHHfLGj09IMff+61JkwDh?=
 =?us-ascii?Q?s9fLJqq430kPXkmtAv7XGim0kf5tBcq4bRF9leRn18hbLz4AQIjnQvz4k4oA?=
 =?us-ascii?Q?1WseCvSnoMgzaS8x8DrF3gaHQj6DyS7r2UZdXhvkto1SjBDHwKsRcbE4+D8c?=
 =?us-ascii?Q?Ukt0pqmzm5WHCvW9pNOQ+hh9onohfe2VwmltQUGBTa2DHUPmQF35xMLDAuNh?=
 =?us-ascii?Q?bycYTSa9ssJfD4Jash6R7nDEy0k1DmUJH8hudPLCdrbC3jo/hnCiWdfUdJiI?=
 =?us-ascii?Q?Vv9fNazzjEHHKGI1tnIEMJ7NCbJLSleXDvhMr+SHmk9zdi4NkdIF1SHhLjjw?=
 =?us-ascii?Q?grYrtU4gE0bQ93sF+ymAijoANqdteeGTEY7wmUiGGxcNghu4AhSHhX3pWlpW?=
 =?us-ascii?Q?IJFpi5Lhan/LiIe00n1kBnVBmwjQYc0BxIBHzx2a8OENcQrVguLzJveG9d7h?=
 =?us-ascii?Q?EGDl70s3tby1555BB0wiAsnv8DzxsWORtIH0ichljFPIF6MWfLwyMF5MNkm/?=
 =?us-ascii?Q?QbpK5uFsjz0TdgdrzL1H9iRPMZ0iRnw/5mRqLV2hmDGbQSd0F/rov+RfLPVG?=
 =?us-ascii?Q?F5kq0tpSsAB4a+s+TqYgONIpOLhJ0yJNQMSJTLBidwEPBcuGJkBUgqTFoxQw?=
 =?us-ascii?Q?mnY88zAcxalRKi6HfCwbd/WjAMv95lsMOkV/TOYGauDYus/6XBQLzY6izXMW?=
 =?us-ascii?Q?EgZXzevQXCWQJoIrFyN0Zt0wGEoYHsd+0R1MZxp4UFwqH0muPDe8lm64W9RM?=
 =?us-ascii?Q?TYIvEI1/Q9zEqCO1VSLoM/2tC0qVpntsTO/SXjeZrgyKGdOPEO3tgYY7yWFt?=
 =?us-ascii?Q?0GKSSn8LBMfCUFliK6BooCgaJgLLfvrd9QWwZGRqNcIOQSc3AhKvxgthAn3f?=
 =?us-ascii?Q?7SCM/YJnvJbz/lLMtM23Z9laQoJLj4bR4+tA7Q96K3+njrSNO9NDiCGntyy6?=
 =?us-ascii?Q?TuUFUbd3oqdD6m3d6RGErLow3ZZdl6AVbFUfiqKfe1EuQsH+W/Hcjh4A6rQ?=
 =?us-ascii?Q?=3D=3D?=
X-Microsoft-Antispam-Message-Info: Er7dlqlHhnM9ETPNvV4URhH0SIXDQLk4COR0pEBa/MHyVRM3RlMSKVCjIvbPwJ81bpQU/7Pufw1yQ7H2yRvOT8T4omvtHkrQxt45pv2w5jBipPgZmfG7jvW47tvCwFkR6kAGkk1ZHzb3sLg6/cXklpbE/2w4dq3HW57H1SkJ6+7NnYMX1AiIwzaTIopeqr2mU4PsBXPfzkw3p6+aLQySZu28x6rrV0OEtO6h3Ctd/+q3V0apEHXKjFxxCzKpPriWDrhh3/rId+q3SR4beZKZDUm/jySmMJ2P5rPlNDn9Ejx0ythQFp9hLNmEbDAZlJgoCCSit+H5d6cjLBX9dVoxO0KmDJplF/skgGZqu/i/DkmHCBQGm3H68QOE951tFUGjFl1hvfzFaWU7A2xk8eSmFv+2b1+y4KpdVQb+GMc2Vnc=
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 6:GmswED1Kp8P+jaFbdm3+6einFYkbwYInDNITxOb3tpJQawBp8gvhQRbB3RbhExTVkVRBlh/y7ZurQsCM9qF5rLz9eJEbW1mcqB0QjfqfHKXEYtwdWdcPK2/bFodaBmO5tM72WMqeNIbay2N+lh524sDhsttQVkNHMAbdcfSuIyq+/RWsLYGic3OkgMd2QE9R91zmzduuAWu0ze+cv06AgZOzD+NMhc+2toQCRYEzWQGADM7pFEBfHJDA5qt4ORkW1eq2yQhVzTX3UkjLCPw6h8RPGRTQwfjvA7VnNBMBYaWYZh/uJk3MMSAmR2m/AXQfzWOw2vCTJ6t8VOVNcNnmnfzuz5gC64qnWgs0NQ5rlkvRHi8b1IuTwCZAPc/npgeUKNxLBJWPjEpXFD/PxqPv/69MyfL+x1YSdMwnYGZ2sLJUkDYKQc+5rLXVYVD08L7x0hUAiSTbQ5xg3rk1AXgpwTELEaoYcjqM2CQuLKM+OZEdYT9la5To+othkHxT4fur;
 5:bKHos77FguCJOWRtr3pfaORIFSLvUIEv8uB5Ic3nO/5cNvShygwScsNle14rm6TI7OL0iMmTyl5E30YN7GS1gKCaWYXHyFehextFTrEMWmCxwdZO8huX2B57VjxKBDNDUDI1/ChqDcuU+/P0pZhVdpXlLUTkRiJIUt+/FMXO2Uc=;
 24:aBkotAKR3gXPOej++l9BFfUHYHctU0KsPvf9/CpXU7mdW0syxWhhw5+64+kVLcExA62IUOL8TG2Jv4IVwDiVNvGuTfKFebgCnlKaVYIJhYY=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM5PR0802MB2420;
 7:4tT0UmhWy9AgvzF0+QNkw06MFDtHBbS8c2bZZa6kFyfYlPMxqJycEEj48TBXhLVx5985pphEcxHBEyNahg5/QxY8QCAHPHZ2wYQqFFGM/hTC8BEd9kS9qtjTb3cC4cRyxFbU2flRR7lSA0iwTSv5rbB1+LCa8IaLJPgNdDL4SNA2Esaxui4mlnfG1tfwCT97Rdh0GJxujb6G74DWp7FXqcWIpgWGeYtrc+LyttyrwYI8b48G6BjTOm89Ocs5lNyf
X-MS-Office365-Filtering-Correlation-Id: 85e57526-c73f-42bc-0d06-08d5a8ff09c3
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2018 09:46:07.4354 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 85e57526-c73f-42bc-0d06-08d5a8ff09c3
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2420
Subject: Re: [Minios-devel] [PATCH v3 10/43] arm64: add exception support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMDk6MDc6NDJQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IEkgZm9yZ290IHRvIG1lbnRpb24uLi4KPiAKPiBPbiAxNi8wNC8yMDE4
IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS90
cmFwcy5oIGIvaW5jbHVkZS9hcm0vdHJhcHMuaAo+ID5pbmRleCA3MDRkZjIyLi5iMDc2ZjQxIDEw
MDY0NAo+ID4tLS0gYS9pbmNsdWRlL2FybS90cmFwcy5oCj4gPisrKyBiL2luY2x1ZGUvYXJtL3Ry
YXBzLmgKPiA+QEAgLTEsMjAgKzEgQEAKPiA+LSNpZm5kZWYgX1RSQVBTX0hfCj4gPi0jZGVmaW5l
IF9UUkFQU19IXwo+ID4tCj4gPi1zdHJ1Y3QgcHRfcmVncyB7Cj4gPi0gICAgdW5zaWduZWQgbG9u
ZyByMDsKPiA+LSAgICB1bnNpZ25lZCBsb25nIHIxOwo+ID4tICAgIHVuc2lnbmVkIGxvbmcgcjI7
Cj4gPi0gICAgdW5zaWduZWQgbG9uZyByMzsKPiA+LSAgICB1bnNpZ25lZCBsb25nIHI0Owo+ID4t
ICAgIHVuc2lnbmVkIGxvbmcgcjU7Cj4gPi0gICAgdW5zaWduZWQgbG9uZyByNjsKPiA+LSAgICB1
bnNpZ25lZCBsb25nIHI3Owo+ID4tICAgIHVuc2lnbmVkIGxvbmcgcjg7Cj4gPi0gICAgdW5zaWdu
ZWQgbG9uZyByOTsKPiA+LSAgICB1bnNpZ25lZCBsb25nIHIxMDsKPiA+LSAgICB1bnNpZ25lZCBs
b25nIHIxMTsKPiA+LSAgICB1bnNpZ25lZCBsb25nIHIxMjsKPiA+LX07Cj4gPi0KPiA+LSNlbmRp
Zgo+ID4rI2luY2x1ZGUgPG1pbmktb3MvYXJtNjQvdHJhcHMuaD4KPiAKPiAuLi4gY2FuIHRoaXMg
cGxlYXNlIGJlIHN1cnJvdW5kIHdpdGggYW4gaWZkZWYgYXJtNjQgYW5kIHRocm93IGFuIGVycm9y
IGlmCj4gbm90IGRlZmluZWQ/Cm9rYXksIEkgd2lsbCBhZGQgI2lmbmRlZiBoZXJlLgoKVGhhbmtz
Ckh1YW5nIFNoaWppZQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJv
amVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21p
bmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 10:42:51 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 10:42:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAYvp-0004Jo-Fe; Mon, 23 Apr 2018 10:42:49 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=a70y=hm=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fAYvn-0004Jj-BX
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 10:42:47 +0000
X-Inumbo-ID: e6e7152d-46e2-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id e6e7152d-46e2-11e8-9728-bc764e045a96;
 Mon, 23 Apr 2018 12:41:38 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id F13FB15AD;
 Mon, 23 Apr 2018 03:42:44 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 2F6B23F4FF;
 Mon, 23 Apr 2018 03:42:43 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-10-git-send-email-shijie.huang@arm.com>
 <6272136e-0a75-134f-eeb4-1c2e8c1078c2@arm.com>
 <20180419100943.GD29673@ubuntu.shanghai.arm.com>
 <7256661b-feec-d8af-5701-08b7c1b1ec02@arm.com>
 <20180423090604.GC30544@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <1d033682-9cb4-0c68-176e-4c4fb040854d@arm.com>
Date: Mon, 23 Apr 2018 11:42:41 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180423090604.GC30544@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 09/43] arm64: add the __PAGE_SIZE
 macro in header file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMjMvMDQvMTggMTA6MDYsIEh1YW5nIFNoaWppZSB3cm90ZToKPiBPbiBU
aHUsIEFwciAxOSwgMjAxOCBhdCAxMToxNTo1NkFNICswMTAwLCBKdWxpZW4gR3JhbGwgd3JvdGU6
Cj4+Cj4+Cj4+IE9uIDE5LzA0LzE4IDExOjA5LCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4+PiBPbiBX
ZWQsIEFwciAxOCwgMjAxOCBhdCAwNTo1MzowOVBNICswMTAwLCBKdWxpZW4gR3JhbGwgd3JvdGU6
Cj4+Pj4gSGkgU2hpamllLAo+Pj4+Cj4+Pj4gT24gMTYvMDQvMTggMDc6MzEsIEh1YW5nIFNoaWpp
ZSB3cm90ZToKPj4+Pj4gVGhlIF9fUEFHRV9TSVpFIGlzIG5lZWRlZCBieSB0aGUgaW5jbHVkZS9w
b3NpeC9saW1pdHMuaC4KPj4+Pj4KPj4+Pj4gU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxz
aGlqaWUuaHVhbmdAYXJtLmNvbT4KPj4+Pj4gLS0tCj4+Pj4+ICAgaW5jbHVkZS9hcm0vYXJjaF9s
aW1pdHMuaCB8IDIgKysKPj4+Pj4gICAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspCj4+
Pj4+Cj4+Pj4+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oIGIvaW5jbHVk
ZS9hcm0vYXJjaF9saW1pdHMuaAo+Pj4+PiBpbmRleCAyM2E0OTFmLi5kZTA0N2IwIDEwMDY0NAo+
Pj4+PiAtLS0gYS9pbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oCj4+Pj4+ICsrKyBiL2luY2x1ZGUv
YXJtL2FyY2hfbGltaXRzLmgKPj4+Pj4gQEAgLTMsNiArMyw4IEBACj4+Pj4+ICAgI2luY2x1ZGUg
PHBhZ2VfZGVmLmg+Cj4+Pj4+ICsjZGVmaW5lIF9fUEFHRV9TSVpFICAgICAgICgxVUwgPDwgUEFH
RV9TSElGVCkKPj4+Pgo+Pj4+IFRoaXMgbG9va3MgYSBiaXQgb2RkIHRvIG1lLiBfXyogaXMgdXNl
ZCB0byBkZWZpbmUgdGhlIG5vbi11bmRlcnNjb3JlCj4+Pj4gdmVyc2lvbi4gSGF2ZSBhIGxvb2sg
YXQgcG9zaXgvbGltaXRzLmguCj4+Pj4KPj4+PiBUaGlzIG1ha2UgbWUgcmVhbGl6ZSB0aGF0IHBh
Z2VfZGVmLmggaXMgaW50cm9kdWNpbmcgdGhlIG5vbi11bmRlcnNjb3JlCj4+Pj4gdmVyc2lvbi4g
U28gSSB0aGluayBwYWdlX2RlZi5oIHNob3VsZCBiZSBmaXhlZC4gTW9zdCBsaWtlbHksIHlvdSB3
YW50IHRvCj4+Pj4gZm9sZCBwYWdlX2RlZi5oIGluIGFyY2hfbGltaXRzLmggYmVjYXVzZSB0aGlz
IGlzIHBvaW50bGVzcyB0byBoYXZlIGEgaGVhZGVyCj4+Pj4ganVzdCBkZWZpbmluZyAzIG1hY3Jv
IGFuZCBpbmNsdWRlZCBvbmx5IHR3aWNlLgo+Pj4gSSBjcmVhdGVkIHRoZSBwYWdlX2RlZi5oIHdo
aWNoIG1ha2VzIHRoZSBjb21waWxlciB2ZXJ5IGhhcHB5Lgo+Pj4gVGhlIHBhZ2VfZGVmLmggaXMg
YWxzbyBpbmNsdWRlZCBpbiB0aGUgYXNzZW1ibHkgY29kZSwgbm90IG9ubHkgdHdpY2UuCj4+Cj4+
IE1lYSBjdWxwYSwgMyB0aW1lcyA7KS4gQnV0IEkgZG9uJ3Qgc2VlIGFueSBpbmNsdWRlIGluIHRo
ZSBhc3NlbWJseSBjb2RlLgo+Pgo+PiA0MnNoPiBhY2sgcGFnZV9kZWYKPj4KPj4KPj4KPj4gaW5j
bHVkZS9hcm0vYXJjaF9tbS5oCj4+IDQwOiNpbmNsdWRlIDxwYWdlX2RlZi5oPgo+Pgo+PiBpbmNs
dWRlL2FybS9hcmNoX2xpbWl0cy5oCj4+IDQ6I2luY2x1ZGUgPHBhZ2VfZGVmLmg+Cj4+Cj4+IGFy
Y2gvYXJtL2FybTY0L21pbmlvcy1hcm02NC5sZHMuUwo+PiAxOiNpbmNsdWRlIDxwYWdlX2RlZi5o
Pgo+Pgo+PiBTdGlsbCwgSSB0aGluayBpdCBpcyBub3QgcmVhbGx5IHdhcnJhbnQuIEFueXdheSwg
d2hhdCBtYXR0ZXJzIGlzIHlvdSBzaG91bGQKPj4gZGVmaW5lIHRoZSBfXyB2ZXJzaW9uIGFuZCBu
b3QgdGhlIG90aGVyIG9uZS4KPiBEbyB5b3UgbWVhbiB0aGF0IEkgc2hvdWxkIF9vbmx5XyBkZWZp
bmUgdGhlIF9fUEFHRV9TSVpFLCBhbmQgZG8gbm90IGRlZmluZSB0aGUKPiBQQUdFX1NJWkU/CgpZ
ZXMuCgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1k
ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21h
aWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 11:00:43 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 11:00:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAZD7-0005au-Q9; Mon, 23 Apr 2018 11:00:41 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=a70y=hm=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fAZD6-0005ap-Aj
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 11:00:40 +0000
X-Inumbo-ID: ddd0289d-46e5-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id ddd0289d-46e5-11e8-8249-2fda3a446a53;
 Mon, 23 Apr 2018 11:02:51 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 9E50C15AD;
 Mon, 23 Apr 2018 04:00:37 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C51003F4FF;
 Mon, 23 Apr 2018 04:00:35 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-13-git-send-email-shijie.huang@arm.com>
 <445ad0d4-2621-fc27-4408-cfd7f7101321@arm.com>
 <20180423094401.GA7506@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <c6b7a902-7397-f583-1527-a9687d4550e3@arm.com>
Date: Mon, 23 Apr 2018 12:00:34 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180423094401.GA7506@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 12/43] arm64: add the basic helpers
 for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAyMy8wNC8xOCAxMDo0NCwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFdlZCwgQXBy
IDE4LCAyMDE4IGF0IDA5OjI3OjEyUE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4gSGks
Cj4+Cj4+IE1vc3Qgb2YgbXkgY29tbWVudHMgZnJvbSA8Y2MxNDMxNjktMDhkYS0xOGIyLTA2MGYt
ODgyMzkwOWFiZTZlQGxpbmFyby5vcmc+Cj4+IGhhcyBub3QgYmVlbiBhZGRyZXNzZWQuIFNvbWUg
b2YgdGhlbSBhcmUgcHJvYmFibHkgaGF2ZSBiZWVuIHJlcGVhdGVkIDMtNAo+PiB0aW1lcy4uLi4g
U28gcGxlYXNlIGFkZHJlc3MgdGhlbS4KPiBzb3JyeSwgSSBkaWQgcmVwbHkgdGhlIG9sZCBlbWFp
bC4gIEkgd2lsbCBhZGRyZXNzIHRoZW0gaGVyZS4uCj4gCj4+Cj4+IE9uIDE2LzA0LzIwMTggMDc6
MzEsIEh1YW5nIFNoaWppZSB3cm90ZToKPj4+IFRoaXMgcGF0Y2ggYWRkcyB0aGUgYmFzaWMgaGVs
cGVycyBpbiBoZWFkZXJzIGZvciBhcm02NDoKPj4+ICAgICAgMS4pIG1iL3JtYi93bWIKPj4+ICAg
ICAgMi4pIGxvY2FsX2lycV9kaXNhYmxlL2xvY2FsX2lycV9lbmFibGUKPj4+ICAgICAgMy4pIGxv
Y2FsX2lycV9zYXZlL2xvY2FsX2lycV9yZXN0b3JlL2xvY2FsX3NhdmVfZmxhZ3MKPj4+ICAgICAg
NC4pIHNpbXBsaWZ5IHRoZSBfX2Zmcwo+Pj4gICAgICA1LikgYWRkIEJVRygpLgo+Pgo+PiBZb3Ug
YWxzbyBkcm9wIGFybTMyIGNvZGUgbWFraW5nIHRoYXQgcGF0Y2ggcXVpdGUgY29uZnVzaW5nIHRv
IHJlYWQuCj4geWVzLiBJIGNhbiByZW1vdmUgaXQgdG8gIzIgcGF0Y2guCj4+Cj4+Pgo+Pj4gVGhp
cyBwYXRjaCByZWZlcnMgdG8gQ2hlbiBCYW96aSdzIHBhdGNoOgo+Pgo+PiBEbyB5b3UgbWVhbiAi
YmFzZWQgb24iIHJhdGhlciB0aGFuICJyZWZlcnMgdG8iPwo+IG9rYXkuCj4gCj4+Cj4+PiAgICAg
ICAiSW5pdGlhbCBjb2RlcyBmb3IgYXJtNjQiCj4+PiBBbmQgdGhpcyBwYXRjaCBhbHNvIHJlZmVy
cyB0byBGcmVlQlNEIGNvZGU6Cj4+Cj4+IERpdHRvCj4+Cj4+PiAgICAgICBzeXMvYXJtNjQvaW5j
bHVkZS9hdG9taWMuaAo+Pgo+PiBZb3UgdmVyeSBsaWtlbHkgaGF2ZSB0byByZXRhaW4gdGhlIGNv
cHlyaWdodCBmcm9tIHRob3NlIGZpbGVzLgo+IGRvIHlvdSBtZWFuIEkgc2hvdWxkIGNvcHkgdGhl
IGNvcHlyaWdodCBoZXJlPwoKSW4gdGhlIG5ldyBoZWFkZXIgeWVzLiBJZiB5b3UgIGhlYWRlciB3
aWxsIGNvbnRhaW4gb3RoZXIgY29kZSwgdGhlbiAKY2xlYXJseSB3cml0ZSBkb3duIHdoYXQgd2Fz
IGltcG9ydGVkLgoKPiBJIHRoaW5rIGJvdGggdGhlIGNvZGUgaXMgRnJlZUJTRCBsaWNlbnNlLCBz
byBJIGRpZCBub3QgZG8gdGhhdC4KCkkgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0IHlvdSBtZWFuLiBD
b2RlIGhhcyBiZWVuIHdyaXR0ZW4gYnkgc29tZW9uZSwgdGhhdCAKc29tZW9uZSBsaWtlbHkgcHV0
IGEgY29weXJpZ2h0IGluIHRoZSBoZWFkZXIuIFNvIEkgdGhpbmsgeW91IGhhdmUgdG8gCnJldGFp
biBpdC4KCj4gCj4+Cj4+Pgo+Pj4gU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUu
aHVhbmdAYXJtLmNvbT4KPj4+IC0tLQo+Pj4gICBpbmNsdWRlL2FybS9hcm02NC9vcy5oIHwgMjgg
KysrKysrKysrKysrKysrKysrKwo+Pj4gICBpbmNsdWRlL2FybS9vcy5oICAgICAgIHwgNzUgKysr
KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPj4+ICAgMiBm
aWxlcyBjaGFuZ2VkLCA1MiBpbnNlcnRpb25zKCspLCA1MSBkZWxldGlvbnMoLSkKPj4+ICAgY3Jl
YXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvYXJtL2FybTY0L29zLmgKPj4+Cj4+PiBkaWZmIC0tZ2l0
IGEvaW5jbHVkZS9hcm0vYXJtNjQvb3MuaCBiL2luY2x1ZGUvYXJtL2FybTY0L29zLmgKPj4+IG5l
dyBmaWxlIG1vZGUgMTAwNjQ0Cj4+PiBpbmRleCAwMDAwMDAwLi4zZDRhYWRhCj4+PiAtLS0gL2Rl
di9udWxsCj4+PiArKysgYi9pbmNsdWRlL2FybS9hcm02NC9vcy5oCj4+PiBAQCAtMCwwICsxLDI4
IEBACj4+PiArI2lmbmRlZiBfQVJNNjRfT1NfSF8KPj4+ICsjZGVmaW5lIF9BUk02NF9PU19IXwo+
Pj4gKwo+Pj4gKyNkZWZpbmUgQlVHKCkgICAgICAgICAgIF9fYXNtX18gX192b2xhdGlsZSgid2Zp
IiA6OjogIm1lbW9yeSIpCj4+Cj4+IEkgZG9uJ3QgdW5kZXJzdGFuZCB0aGF0IGltcGxlbWVudGF0
aW9uLiBXRkkgbWVhbnMgd2FpdCBmb3IgaW50ZXJydXB0IGFuZAo+PiB3aWxsIGNvbnRpbnVlIGFz
IHNvb24gYXMgYW4gaW50ZXJydXB0IGNhbWUgdXAuIFdoYXQgeW91IHdhbnQgaGVyZSBpcyBkdW1w
aW5nCj4+IHRoZSByZWdpc3RlcnMgYW5kIGV4aXQuCj4+Cj4+IFNvIG1vc3QgbGlrZWx5IHlvdSB3
YW50IHRvIHVzZSAiYnJrIiB0aGF0IHdpbGwgcHJvdm9rZSBhIHRyYXAuCj4gb2theSwgSSB3aWxs
IHVzZSAiYnJrIiBpbiBuZXh0IHZlcnNpb24uLgo+Pgo+Pj4gKwo+Pj4gK3N0YXRpYyBpbmxpbmUg
dm9pZCBsb2NhbF9pcnFfZGlzYWJsZSh2b2lkKQo+Pj4gK3sKPj4+ICsgICAgX19hc21fXyBfX3Zv
bGF0aWxlX18oIm1zciBkYWlmc2V0LCAjMiI6OjoibWVtb3J5Iik7Cj4+Cj4+IEFnYWluLCBkb2Vz
IHRoZSBfXyBpcyByZWFsbHkgbmVlZGVkPyBTYW1lIGZvciBldmVyeXdoZXJlIGluIHRoYXQgcGF0
Y2guCj4+IFlvdSBzYWlkIHlvdSB3aWxsIGNoZWNrIGl0IGFuZCBuZXZlciBjYW1lIGJhY2suCj4g
V2UgKFN0ZXZlIGFuZCBJKSBldmVyIGNoZWNrZWQgdGhlIEdDQyBkb2N1bWVudCBhYm91dCB0aGlz
Lgo+IAo+IGh0dHBzOi8vZ2NjLmdudS5vcmcvb25saW5lZG9jcy9nY2MvRXh0ZW5kZWQtQXNtLmh0
bWwKPiAKPiDigJxUaGUgYXNtIGtleXdvcmQgaXMgYSBHTlUgZXh0ZW5zaW9uLiBXaGVuIHdyaXRp
bmcgY29kZSB0aGF0IGNhbiBiZSBjb21waWxlZCB3aXRoIC1hbnNpIGFuZAo+IHRoZSB2YXJpb3Vz
IC1zdGQgb3B0aW9ucywgdXNlIF9fYXNtX18gaW5zdGVhZCBvZiBhc20gKHNlZSBBbHRlcm5hdGUg
S2V5d29yZHMpLuKAnQoKVGhhbmsgeW91IGZvciB0aGUgYW5zd2VyLgoKPiAKPj4KPj4+ICt9Cj4+
PiArCj4+PiArc3RhdGljIGlubGluZSB2b2lkIGxvY2FsX2lycV9lbmFibGUodm9pZCkKPj4+ICt7
Cj4+PiArICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJtc3IgZGFpZmNsciwgIzIiOjo6Im1lbW9y
eSIpOwo+Pj4gK30KPj4+ICsKPj4+ICsjZGVmaW5lIGxvY2FsX2lycV9zYXZlKHgpIHsgXAo+Pj4g
KyAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXJzICUwLCBkYWlmOyBtc3IgZGFpZnNldCwgIzIi
OiI9ciIoeCk6OiJtZW1vcnkiKTsgXAo+Pj4gK30KPj4+ICsKPj4+ICsjZGVmaW5lIGxvY2FsX2ly
cV9yZXN0b3JlKHgpIHsgXAo+Pj4gKyAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXNyIGRhaWYs
ICUwIjo6InIiKHgpOiJtZW1vcnkiKTsgXAo+Pj4gK30KPj4+ICsKPj4+ICsjZGVmaW5lIGxvY2Fs
X3NhdmVfZmxhZ3MoeCkgeyBcCj4+PiArICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJtcnMgJTAs
IGRhaWYiOiI9ciIoeCk6OiJtZW1vcnkiKTsgXAo+Pj4gK30KPj4+ICsKPj4+ICsjZW5kaWYKPj4+
IGRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9vcy5oIGIvaW5jbHVkZS9hcm0vb3MuaAo+Pj4gaW5k
ZXggNmExY2MzNy4uYjEwNTU3YSAxMDA2NDQKPj4+IC0tLSBhL2luY2x1ZGUvYXJtL29zLmgKPj4+
ICsrKyBiL2luY2x1ZGUvYXJtL29zLmgKPj4+IEBAIC04LDQxICs4LDQyIEBACj4+PiAgICNpbmNs
dWRlIDxtaW5pLW9zL2NvbXBpbGVyLmg+Cj4+PiAgICNpbmNsdWRlIDxtaW5pLW9zL2tlcm5lbC5o
Pgo+Pj4gICAjaW5jbHVkZSA8eGVuL3hlbi5oPgo+Pj4gKyNpbmNsdWRlIDxhcm02NC9vcy5oPgo+
Pgo+PiBTYW1lIHJlbWFyayBhcyBmb3IgdHJhcHMuaC4gWW91IHdhbnQgdG8gI2lmZGVmIHRoYXQu
Cj4gZG8geW91IG1lYW4gSSBzaG91bGQgYWRkICNpZmRlZiBoZXJlPwoKWWVzLgoKWy4uLl0KCj4+
PiAgIHZvaWQgYXJjaF9maW5pKHZvaWQpOwo+Pj4gICB2b2lkIHRpbWVyX2hhbmRsZXIoZXZ0Y2hu
X3BvcnRfdCBwb3J0LCBzdHJ1Y3QgcHRfcmVncyAqcmVncywgdm9pZCAqaWduKTsKPj4+ICAgZXh0
ZXJuIHZvaWQgKmRldmljZV90cmVlOwo+Pj4gLSNkZWZpbmUgQlVHKCkgd2hpbGUoMSl7YXNtIHZv
bGF0aWxlICgiLndvcmQgMHhlN2YwMDBmMFxuIik7fSAvKiBVbmRlZmluZWQgaW5zdHJ1Y3Rpb247
IHdpbGwgY2FsbCBvdXIgZmF1bHQgaGFuZGxlci4gKi8KPj4+IC0KPj4+ICAgI2RlZmluZSBzbXBf
cHJvY2Vzc29yX2lkKCkgMAo+Pj4gICAjZGVmaW5lIGJhcnJpZXIoKSBfX2FzbV9fIF9fdm9sYXRp
bGVfXygiIjogOiA6Im1lbW9yeSIpCj4+PiAgIGV4dGVybiBzaGFyZWRfaW5mb190ICpIWVBFUlZJ
U09SX3NoYXJlZF9pbmZvOwo+Pj4gLS8vIGRpc2FibGUgaW50ZXJydXB0cwo+Pj4gLXN0YXRpYyBp
bmxpbmUgdm9pZCBsb2NhbF9pcnFfZGlzYWJsZSh2b2lkKSB7Cj4+PiAtICAgIF9fYXNtX18gX192
b2xhdGlsZV9fKCJjcHNpZCBpIjo6OiJtZW1vcnkiKTsKPj4+IC19Cj4+PiAtCj4+PiAtLy8gZW5h
YmxlIGludGVycnVwdHMKPj4+IC1zdGF0aWMgaW5saW5lIHZvaWQgbG9jYWxfaXJxX2VuYWJsZSh2
b2lkKSB7Cj4+PiAtICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJjcHNpZSBpIjo6OiJtZW1vcnki
KTsKPj4+IC19Cj4+PiAtCj4+PiAtI2RlZmluZSBsb2NhbF9pcnFfc2F2ZSh4KSB7IFwKPj4+IC0g
ICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1ycyAlMCwgY3BzcjtjcHNpZCBpIjoiPXIiKHgpOjoi
bWVtb3J5Iik7ICAgIFwKPj4+IC19Cj4+PiAtCj4+PiAtI2RlZmluZSBsb2NhbF9pcnFfcmVzdG9y
ZSh4KSB7ICAgIFwKPj4+IC0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1zciBjcHNyX2MsICUw
Ijo6InIiKHgpOiJtZW1vcnkiKTsgICAgXAo+Pj4gLX0KPj4+ICsjZGVmaW5lIGlzYigpICAgICAg
ICAgICBfX2FzbV9fIF9fdm9sYXRpbGUoImlzYiIgOjo6ICJtZW1vcnkiKQo+Pj4gKwo+Pj4gKy8q
Cj4+PiArICogT3B0aW9ucyBmb3IgRE1CIGFuZCBEU0I6Cj4+PiArICoJb3NobGQJT3V0ZXIgU2hh
cmVhYmxlLCBsb2FkCj4+PiArICoJb3Noc3QJT3V0ZXIgU2hhcmVhYmxlLCBzdG9yZQo+Pj4gKyAq
CW9zaAlPdXRlciBTaGFyZWFibGUsIGFsbAo+Pj4gKyAqCW5zaGxkCU5vbi1zaGFyZWFibGUsIGxv
YWQKPj4+ICsgKgluc2hzdAlOb24tc2hhcmVhYmxlLCBzdG9yZQo+Pj4gKyAqCW5zaAlOb24tc2hh
cmVhYmxlLCBhbGwKPj4+ICsgKglpc2hsZAlJbm5lciBTaGFyZWFibGUsIGxvYWQKPj4+ICsgKglp
c2hzdAlJbm5lciBTaGFyZWFibGUsIHN0b3JlCj4+PiArICoJaXNoCUlubmVyIFNoYXJlYWJsZSwg
YWxsCj4+PiArICoJbGQJRnVsbCBzeXN0ZW0sIGxvYWQKPj4+ICsgKglzdAlGdWxsIHN5c3RlbSwg
c3RvcmUKPj4+ICsgKglzeQlGdWxsIHN5c3RlbSwgYWxsCj4+PiArICovCj4+PiArI2RlZmluZSBk
bWIob3B0KSAgICAgICAgX19hc21fXyBfX3ZvbGF0aWxlKCJkbWIgIiAjb3B0IDo6OiAibWVtb3J5
IikKPj4+ICsjZGVmaW5lIGRzYihvcHQpICAgICAgICBfX2FzbV9fIF9fdm9sYXRpbGUoImRzYiAi
ICNvcHQgOjo6ICJtZW1vcnkiKQo+Pj4gLSNkZWZpbmUgbG9jYWxfc2F2ZV9mbGFncyh4KSAgICB7
IFwKPj4+IC0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1ycyAlMCwgY3BzciI6Ij1yIih4KTo6
Im1lbW9yeSIpOyAgICBcCj4+PiAtfQo+Pj4gKyNkZWZpbmUgbWIoKSAgICAgICAgICAgIGRtYihz
eSkgLyogRnVsbCBzeXN0ZW0gbWVtb3J5IGJhcnJpZXIgYWxsICovCj4+PiArI2RlZmluZSB3bWIo
KSAgICAgICAgICAgZG1iKHN0KSAvKiBGdWxsIHN5c3RlbSBtZW1vcnkgYmFycmllciBzdG9yZSAq
Lwo+Pj4gKyNkZWZpbmUgcm1iKCkgICAgICAgICAgIGRtYihsZCkgLyogRnVsbCBzeXN0ZW0gbWVt
b3J5IGJhcnJpZXIgbG9hZCAqLwo+Pgo+PiBsZCBkb2VzIG5vdCBleGlzdCBmb3IgYXJtMzIuIFNv
IHlvdSB3YW50IHRvIGlmZGVmIHRoYXQuCj4gWW91IG1lYW4gSSBzaG91bGQgYWRkICNpZmRlZiBo
ZXJlPwoKWWVzLgoKPiAKPj4KPj4gQnV0IGFnYWluLCBjYW4geW91IGV4cGxhaW4gd2h5IHlvdSB1
c2UgZG1iKC4uLikgYW5kIG5vdCBkc2IoLi4uKSBoZXJlLgo+IGRzYigpIGlzIG1vcmUgc3RyaWN0
IHRoZW4gdGhlIGRtYigpLgo+IAo+ICJUaGlzIGVuZm9yY2VzIHRoZSBzYW1lIG9yZGVyaW5nIGFz
IHRoZSBEYXRhIE1lbW9yeSBCYXJyaWVyLCBidXQgaGFzIHRoZSBhZGRpdGlvbmFsCj4gZWZmZWN0
IG9mIGJsb2NraW5nIGV4ZWN1dGlvbiBvZiBhbnkgZnVydGhlciBpbnN0cnVjdGlvbnMsIG5vdCBq
dXN0IGxvYWRzIG9yIHN0b3JlcywKPiBvciBib3RoLCB1bnRpbCBzeW5jaHJvbml6YXRpb24gaXMg
Y29tcGxldGUuIgoKVGhpcyBkb2VzIG5vdCBhbnN3ZXIgbXkgcXVlc3Rpb24uIE15IHBvaW50IGlz
IHlvdSBhcmUgbW92aW5nIHRvIGEgbW9yZSAKcmVsYXhlZCBiYXJyaWVyLiBUaGVyZSBhcmUgYSBj
b21tZW50IG9uIHRoZSBjb2RlIHlvdSBkcm9wcGVkIHNheWluZzogIldlIApwcm9iYWJseSBvbmx5
IG5lZWQgJ2RtYicgaGVyZSwgYnV0IHdlJ2xsIHN0YXJ0IGJ5IGJlaW5nIHBhcmFub2lkIi4KCkkg
YW0gbm90IGFnYWluc3QgdXNpbmcgJ2RzYicuIE15IG1haW4gY29uY2VybiBpcyB0aGlzIHBhdGNo
IGlzIGFsdGVyaW5nIAp0aGUgc2VtYW50aWNzIG9mIHRoZSBiYXJyaWVyLiBJIGhhdmVuJ3QgbG9v
a2VkIGF0IHRoZSBjb2RlIGJ1dCBJIGFzc3VtZSAKeW91IGxvb2tlZCBhdCBhbGwgY2FsbGVycyBj
aGVja2luZyB3aGV0aGVyIHRoZSByZWxheGF0aW9uIGlzIGZpbmUsIGFtIEkgCnJpZ2h0PyBBbHNv
LCB3aGF0IGlzIHRoZSBleHBlY3RlZCBzZW1hbnRpYyBmcm9tIHRoZSBjb21tb24gY29kZSBmb3Ig
dGhpcyAKYmFycmllcj8KCkluIGFueWNhc2UsIHN1Y2ggY2hhbmdlIHNob3VsZCBiZSBkb2N1bWVu
dGVkIGluIHRoZSBjb21taXQgbWVzc2FnZSBhbmQgCnByb2JhYmx5IGluIHRoZSBjb2RlLiBCZWNh
dXNlIHRoZSBzZW1hbnRpYyBvZiAqbWIoKSBhcmUgZmFpcmx5IGRpZmZlcmVudCAKZnJvbSB3aGF0
IHdhcyBkb25lIG9uIGFybTMyLgoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxp
bmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54
ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 11:03:53 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 11:03:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAZGD-0005gV-Bt; Mon, 23 Apr 2018 11:03:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=a70y=hm=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fAZGC-0005gM-TG
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 11:03:52 +0000
X-Inumbo-ID: 5130d434-46e6-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 5130d434-46e6-11e8-8249-2fda3a446a53;
 Mon, 23 Apr 2018 11:06:05 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id B7A0F1435;
 Mon, 23 Apr 2018 04:03:51 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id D3E0D3F4FF;
 Mon, 23 Apr 2018 04:03:49 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-15-git-send-email-shijie.huang@arm.com>
 <10d8ee18-d319-9c5b-a8e4-e7bdd51015fb@arm.com>
 <20180423084522.GA30544@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <41170f9d-f3be-df07-6b3e-972763fc537d@arm.com>
Date: Mon, 23 Apr 2018 12:03:48 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180423084522.GA30544@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 14/43] arm64: time.c: fix the wrong
 format for printk
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAyMy8wNC8xOCAwOTo0NSwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFdlZCwgQXBy
IDE4LCAyMDE4IGF0IDA5OjI5OjEyUE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4KPj4K
Pj4gT24gMTYvMDQvMjAxOCAwNzozMSwgSHVhbmcgU2hpamllIHdyb3RlOgo+Pj4gV2Ugd2lsbCBt
ZWV0IHRoZSBjb21waWxlciBlcnJvciBmb3IgdGhlIGN1cnJlbnQgY29kZToKPj4+ICAgIC0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4+PiAgICB0aW1l
LmM6IEluIGZ1bmN0aW9uIOKAmGluaXRfdGltZeKAmToKPj4+ICAgIHRpbWUuYzoxMzE6MTI6IGVy
cm9yOiBmb3JtYXQg4oCYJWxseOKAmSBleHBlY3RzIGFyZ3VtZW50IG9mCj4+PiAgICAgICAgICAg
dHlwZSDigJhsb25nIGxvbmcgdW5zaWduZWQgaW504oCZLCBidXQgYXJndW1lbnQgMiBoYXMKPj4+
IAkgdHlwZSDigJh1aW50NjRfdCB7YWthIGxvbmcgdW5zaWduZWQgaW50feKAmSBbLVdlcnJvcj1m
b3JtYXQ9XQo+Pj4gICAgICAgIHByaW50aygiVmlydHVhbCBDb3VudCByZWdpc3RlciBpcyAlbGx4
LCBmcmVxID0gJWQgSHpcbiIsIGNudHZjdF9hdF9pbml0LCBjb3VudGVyX2ZyZXEpOwo+Pj4gICAg
ICAgICAgICAgICAgICAgICBeCj4+PiAgICBjYzE6IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVk
IGFzIGVycm9ycwo+Pj4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KPj4+Cj4+PiBUaGlzIHBhdGNoIGZpeGVzIHRoZSBjb21waWxpbmcgZXJyb3Iu
Cj4+Pgo+Pj4gU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNv
bT4KPj4+IC0tLQo+Pj4gICBhcmNoL2FybS90aW1lLmMgfCA0ICsrKy0KPj4+ICAgMSBmaWxlIGNo
YW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQo+Pj4KPj4+IGRpZmYgLS1naXQg
YS9hcmNoL2FybS90aW1lLmMgYi9hcmNoL2FybS90aW1lLmMKPj4+IGluZGV4IGEwODg5ODEuLjhk
NjhjZjAgMTAwNjQ0Cj4+PiAtLS0gYS9hcmNoL2FybS90aW1lLmMKPj4+ICsrKyBiL2FyY2gvYXJt
L3RpbWUuYwo+Pj4gQEAgLTUsNiArNSw3IEBACj4+PiAgICNpbmNsdWRlIDxtaW5pLW9zL3R5cGVz
Lmg+Cj4+PiAgICNpbmNsdWRlIDxtaW5pLW9zL3RpbWUuaD4KPj4+ICAgI2luY2x1ZGUgPG1pbmkt
b3MvbGliLmg+Cj4+PiArI2luY2x1ZGUgPGludHR5cGVzLmg+Cj4+Cj4+IFdoZXJlIGRvZXMgdGhl
IGluY2x1ZGUgImludHR5cGVzLmgiIGNvbWUgZnJvbT8KPiBUaGUgUFJJWDY0IGlzIGRlZmluZWQg
aW4gdGhhdCBmaWxlLgoKVGhpcyBkb2VzIG5vdCBhbnN3ZXIgbXkgcXVlc3Rpb24uIFRoYXQgaW5j
bHVkZSBkb2VzIG5vdCBiZWxvbmdzIHRvIHRoZSAKbWluaS1vcyByZXBvLiBTbyB3aGVyZSBkb2Vz
ICJpbnR0eXBlcy5oIiB3aWxsIGNvbWUgZnJvbT8gSSBhc3N1bWUgdGhhdCAKaXQgd2lsbCBjb21l
IGZyb20gdGhlIGNyb3NzLWNvbXBpbGVyIGJ1dCBJIHJlbWVtYmVyIE1pbmlPUyBpcyBiZWVuIHF1
aXRlIAptZXNzeSB3aXRoIHN0YW5kYXJkIGluY2x1ZGUuCgo+IE1heWJlIFdlIGNhbiB1c2UgdGhl
IFBSSXBhZGRyIHdoaWNoIGlzIGRlZmluZWQgaW4gImFyY2hfbW0uaCIuCgpOby4gUFJJcGFkZHIg
aXMgcmVsYXRlZCB0byBhIHBoeXNpY2FsIGFkZHJlc3MuIFRoYXQgdHlwZSBtYXkgY2hhbmdlIGlu
IAp0aGUgZnV0dXJlLgoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlz
dApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 11:05:59 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 11:05:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAZID-0005mt-JG; Mon, 23 Apr 2018 11:05:57 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=a70y=hm=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fAZIC-0005mm-Ad
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 11:05:56 +0000
X-Inumbo-ID: 22cd3ee7-46e6-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 22cd3ee7-46e6-11e8-9728-bc764e045a96;
 Mon, 23 Apr 2018 13:04:47 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 63B521435;
 Mon, 23 Apr 2018 04:05:54 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 92C1F3F4FF;
 Mon, 23 Apr 2018 04:05:52 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-20-git-send-email-shijie.huang@arm.com>
 <56add9e2-c11d-65c3-1d61-d29c65d5af00@arm.com>
 <20180423084936.GB30544@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <e2452065-e182-7789-5e0d-0e8282cb4fd7@arm.com>
Date: Mon, 23 Apr 2018 12:05:51 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180423084936.GB30544@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 19/43] arm64: add shared_info support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMjMvMDQvMTggMDk6NDksIEh1YW5nIFNoaWppZSB3cm90ZToKPiBPbiBX
ZWQsIEFwciAxOCwgMjAxOCBhdCAwOTozNDoxOFBNICswMTAwLCBKdWxpZW4gR3JhbGwgd3JvdGU6
Cj4+IEhpLAo+Pgo+PiBPbiAxNi8wNC8yMDE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4+
PiBBZGQgdGhlIHNoYXJlZF9pbmZvIHBhZ2UuCj4+Pgo+Pj4gU2lnbmVkLW9mZi1ieTogSHVhbmcg
U2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPj4+IC0tLQo+Pj4gICBhcmNoL2FybS9hcm02
NC9hcm02NC5TIHwgMyArKysKPj4+ICAgMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKQo+
Pj4KPj4+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9hcm02NC9hcm02NC5TIGIvYXJjaC9hcm0vYXJt
NjQvYXJtNjQuUwo+Pj4gaW5kZXggOWViN2VhMC4uZmEzNDA2ZiAxMDA2NDQKPj4+IC0tLSBhL2Fy
Y2gvYXJtL2FybTY0L2FybTY0LlMKPj4+ICsrKyBiL2FyY2gvYXJtL2FybTY0L2FybTY0LlMKPj4+
IEBAIC0yNSw2ICsyNSw3IEBACj4+PiAgICAgICAuZ2xvYmwgYm9vdF9sMl9wZ3RhYmxlCj4+PiAg
ICAgICAuZ2xvYmwgaWRtYXBfbDBfcGd0YWJsZQo+Pj4gICAgICAgLmdsb2JsIGlkbWFwX2wxX3Bn
dGFibGUKPj4+ICsgICAgLmdsb2JsIHNoYXJlZF9pbmZvCj4+PiAgICAgICAuYWxpZ24gMTIKPj4+
ICAgYm9vdF9sMF9wZ3RhYmxlOgo+Pj4gQEAgLTM3LDYgKzM4LDggQEAgaWRtYXBfbDBfcGd0YWJs
ZToKPj4+ICAgICAgIC5maWxsICBQQUdFX1NJWkUsMSwwCj4+PiAgIGlkbWFwX2wxX3BndGFibGU6
Cj4+PiAgICAgICAuZmlsbCAgUEFHRV9TSVpFLDEsMAo+Pj4gK3NoYXJlZF9pbmZvOgo+Pj4gKyAg
ICAuZmlsbCAgUEFHRV9TSVpFLDEsMAo+Pgo+PiBXaHkgZG9lcyBpdCBoYXZlIHRvIGJlIGRlZmlu
ZWQgaW4gYXNzZW1ibHk/IENhbid0IHRoaXMgYmUgZG9uZSBpbiBDPyBPciBldmVuCj4gSSB0aGlu
ayB3ZSdkIGJldHRlciBrZWVwIGl0IGhlcmUuCgpBc3NlbWJseSBzaG91bGQgcmVhbGx5IG9ubHkg
YmUgdXNlZCB3aGVuIHRoaXMgaXMgc3RyaWN0bHkgbmVjZXNzYXJ5Li4uCgo+IFdlIHVzZWQgdGhl
IHNoYXJlZF9pbmZvIGF0IGFyY2hfaW5pdCgpIHdoaWNoIHRoZSBtZW1vcnkgc3lzdGVtIGlzIG5v
dCByZWFkeSB5ZXQuCgouLi4gaWYgaXQgaXMgdXNlZCBpbiBhcmNoX2luaXQoKSB0aGVuIGl0IHNo
b3VsZCBiZSBkZWZpbmVkIGluIEMgc3RhdGljYWxseS4KCkNoZWVycywKCi0tIApKdWxpZW4gR3Jh
bGwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlv
cy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0
dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 23 17:21:03 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 23 Apr 2018 17:21:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAf9C-0004aW-44; Mon, 23 Apr 2018 17:21:02 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ugsk=hm=gmail.com=lars.kurth.xen@srs-us1.protection.inumbo.net>)
 id 1fAf9A-0004a7-3e
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 17:21:00 +0000
X-Inumbo-ID: 87137c92-471a-11e8-9728-bc764e045a96
Received: from mail-wr0-x241.google.com (unknown [2a00:1450:400c:c0c::241])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 87137c92-471a-11e8-9728-bc764e045a96;
 Mon, 23 Apr 2018 19:19:50 +0200 (CEST)
Received: by mail-wr0-x241.google.com with SMTP id g21-v6so15931985wrb.8;
 Mon, 23 Apr 2018 10:20:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:mime-version:subject:in-reply-to:date:cc
 :content-transfer-encoding:message-id:references:to;
 bh=VTZO/ExM9eD8uYE/v6uFVuBr+LOsg43Vv4SPiVn5RF8=;
 b=rQjKx4TqmJcujCWJGphoC7XFsWYXSHTyGs/d9Qyo4qujFyUb+Z3FEm7R8W6jJThogp
 XfY4I7A0h18dodVqjCbX/TeZ4jfuR+tgRFHlzYeWfl+YB9gBoibSnCco9yW630egpMs6
 4iRj9GQQs/1GUPXoPwS2pOxP/Pflgp6Qgtp7EvRTdmCvxelzLbcE+t70qq/SLBzaxbFP
 PIuR4qYOX+EW+qpNKIfjrJ7LLIAt+R/GdRTT2NRIp3HjOShpmS/YEp7MyrOKlxdh6xGb
 bzALgFK3EFTlozg5dzXJ0KFQjWhhijQVqFLQGlWR2TzUCwSqFMvwYEDcfWuA5/IwBxYi
 afQw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:mime-version:subject:in-reply-to:date:cc
 :content-transfer-encoding:message-id:references:to;
 bh=VTZO/ExM9eD8uYE/v6uFVuBr+LOsg43Vv4SPiVn5RF8=;
 b=OImdh8L/gVBaQJStLBnyiVhohA/1VUrHCBI8q3F2tSqVPDgtqG44nGQSQ5iVLPN5ms
 5tvmGb94KUUHMvKN4jkelY5DZ4AOiHcRMtouzcM6n7cOlODBVHQiZzvHlC9NXW3l8Qbn
 rrp1+ToPxzz40Uaa2bKIpzRz+ivfjrfVmbVcTVWmlxBWQum9LS5MFaIjiE9C0cRCl3mm
 Me5jEZx2IdIghZF349IVs2JdOdNY/MfycLBKK6enJpC3m8s7IH4IBEtcRHt0f4ytQfkQ
 KJQR/RP79MP5VT0qKxOTYHbbPMPCgm/oYZQdHq6ldA+B5suyLYgiPPyijjIh7G9occDc
 n9wA==
X-Gm-Message-State: ALQs6tD8Gob169elb0y8ZGgzr/2Cc60ZVuLOy5NcZnp7O3VSlgRmy+9C
 pHeTvdqLnSKeRTt4bBD9OdSRiyMY
X-Google-Smtp-Source: AIpwx48aCYqVOihieOH0bsS9wfV8OgltGdyIXfBaxiRXC0YeDKhLBAGLU1Sf1l0cGf1dmSVwZjesrg==
X-Received: by 10.28.177.197 with SMTP id a188mr9517305wmf.121.1524504056021; 
 Mon, 23 Apr 2018 10:20:56 -0700 (PDT)
Received: from ?IPv6:2a02:c7f:ac18:da00:c841:ba71:e16e:a009?
 ([2a02:c7f:ac18:da00:c841:ba71:e16e:a009])
 by smtp.gmail.com with ESMTPSA id x81-v6sm11324344wrb.23.2018.04.23.10.20.54
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Mon, 23 Apr 2018 10:20:55 -0700 (PDT)
From: Lars Kurth <lars.kurth.xen@gmail.com>
X-Google-Original-From: Lars Kurth <lars.kurth@xenproject.org>
Mime-Version: 1.0 (Mac OS X Mail 11.3 \(3445.6.18\))
In-Reply-To: <FED16B1F-3CA3-4B91-B22B-A9B807FCB762@xenproject.org>
Date: Mon, 23 Apr 2018 18:20:53 +0100
Message-Id: <0EB22745-42DB-4C89-B46B-C504C85094CC@xenproject.org>
References: <FED16B1F-3CA3-4B91-B22B-A9B807FCB762@xenproject.org>
To: xen-devel <xen-devel@lists.xenproject.org>,
 win-pv-devel@lists.xenproject.org, xen-devel@lists.xensource.com,
 xen-api@lists.xenproject.org
X-Mailer: Apple Mail (2.3445.6.18)
Subject: Re: [Minios-devel] Graduation Review: Windows PV Driver
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org,
 Zibby Keaton <zkeaton@linuxfoundation.org>,
 Paul Durrant <paul.durrant@citrix.com>, Committers <committers@xenproject.org>,
 mirageos-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

VGhlIGF0dGFjaG1lbnQgaXMgYWxzbyBhdCBodHRwczovL3dpa2kueGVucHJvamVjdC5vcmcvaW1h
Z2VzL2MvY2YvV2luZG93c19QVl9Ecml2ZXJfLV9HcmFkdWF0aW9uX1Byb3Bvc2FsLnBkZgpMYXJz
Cgo+IE9uIDIzIEFwciAyMDE4LCBhdCAxODoxNCwgTGFycyBLdXJ0aCA8bGFycy5rdXJ0aEB4ZW5w
cm9qZWN0Lm9yZz4gd3JvdGU6Cj4gCj4gRGVhciBDb21tdW5pdHkgbWVtYmVycywKPiBwbGVhc2Ug
ZmluZCBhdHRhY2hlZCAoYW5kIGluIG1hcmtkb3duLCBidXQgd2l0aG91dCBncmFwaHMpIHRoZSBj
YXNlIHRvIGdyYWR1YXRlIHRoZSBXaW5kb3dzIFBWIERyaXZlciBwcm9qZWN0IHRvIGJlY29tZSBh
IG1hdHVyZSBwcm9qZWN0Lgo+IFRoZSBwcm9jZXNzIGlzIHR3by1zdGFnZQo+IDE6IENvbW11bml0
eSBSZXZpZXcgdG8gIGdhdGhlciBmaW5hbCBmZWVkYmFjayBhbmQgaW5wdXQgZnJvbSB0aGUgY29t
bXVuaXR5IC0gd2UgYXJlIGhlcmUuIEkgcHJvcG9zZSB0byBsZXQgdGhpcyBydW4gZm9yIGEgd2Vl
awo+IDI6IFZvdGluZyBieSBMZWFkZXJzaGlwIFRlYW1zIG9mIG1hdHVyZSBwcm9qZWN0cyAoSHlw
ZXJ2aXNvciBhbmQgWEFQSSkgLSBpZiB0aGVyZSBpcyBubyBzdWJzdGFudGlhbCBmZWVkYmFjayBi
eSBuZXh0IE1vbmRheSwgSSB3aWxsIHBpbmcgdGhlIHJlbGV2YW50IHBlb3BsZSBhcyBwYXJ0IG9m
IHRoaXMgdGhyZWFkIGZvciBhIHZvdGUKPiBCZXN0IFJlZ2FyZHMKPiBMYXJzCj4gCj4gPFdpbmRv
d3MgUFYgRHJpdmVyIC0gSW5jdWJhdGlvbi5wZGY+Cj4gCj4gIyBXaW5kb3dzIFBWIERyaXZlciAt
IENhc2UgZm9yIEdyYWR1YXRpb24KPiAKPiBUaGlzIGRvY3VtZW50IG1ha2VzIHRoZSBjYXNlIGZv
ciBncmFkdWF0aW9uIGZvciB0aGUg4oCLV2luZG93cyBQViBEcml2ZXIgcHJvamVjdOKAiyAod2hp
Y2gKPiBiZWNhbWUgYW4gaW5jdWJhdGlvbiBwcm9qZWN0IGluIEp1bmUgMjAxNCkuIFRoZSBjcml0
ZXJpYSBmb2xsb3cgdGhvc2Ugb3V0bGluZWQgaW4KPiB4ZW5wcm9qZWN0Lm9yZy9nb3Zlcm5hbmNl
Lmh0bWwKPiAKPiAjIyMjIEdyYWR1YXRpb24gUmV2aWV3Cj4gCj4gVGhlIHJldmlldyBpcyBpbml0
aWF0ZWQgYnkgdGhlIHByb2plY3QgbGVhZCBhbmQgZm9sbG93cyB0aGUgcnVsZXMgb3V0bGluZWQg
aW4gIlJlcXVlc3RpbmcKPiBSZXZpZXdzLCBSZXZpZXdzIGFuZCBWb3RpbmciLiBJbiBlc3NlbmNl
IHRoZSBwcm9qZWN0IGxlYWQgbWFrZXMgYSBwaXRjaCB0byB0aGUKPiBjb21tdW5pdHksIHdoeSB0
aGUgcHJvamVjdCBzaG91bGQgZ3JhZHVhdGUuIEEgcHJvamVjdCBtdXN0IGZ1bGZpbCB0aGUgZm9s
bG93aW5nCj4gcmVxdWlyZW1lbnRzIGJlZm9yZSBpdCBjYW4gZ3JhZHVhdGU6Cj4gKiBJdCBmb2xs
b3dzIHRoZSBwcmluY2lwbGVzIG9mIG9wZW5uZXNzLCB0cmFuc3BhcmVuY3kgYW5kIG1lcml0b2Ny
YWN5Cj4gKiBJdCBoYXMgZGVsaXZlcmVkIGF0IGxlYXN0IG9uZSBmdW5jdGlvbmluZyByZWxlYXNl
IG9mIHdoYXQgaXQgaXMgYWltaW5nIHRvIGRlbGl2ZXIKPiAqIEl0IGhhcyBhIHB1YmxpYyBjb2Rl
IGxpbmUgd2hpY2ggc2hvd3MgYWN0aXZlIGRldmVsb3BtZW50IGFuZCBoYXMgbWVjaGFuaXNtcyB0
bwo+IGFjY2VwdCBwYXRjaGVzIChhbmQgYSBoaXN0b3J5IG9mIGFjY2VwdGluZyBwYXRjaGVzKQo+
ICogSXQgaGFzIGEgcHVibGljIG1haWxpbmcgbGlzdCB0aGF0IGlzIGFjdGl2ZSAoYXMgd2UgZ2V0
IG1vcmUgZXhwZXJpZW5jZSB3ZSB3aWxsIGFkZAo+IHNvbWUgZ3VpZGVsaW5lcykKPiAqIEl0IGhh
cyBhIG1lY2hhbmlzbSBmb3IgdXNlcnMgdG8gcmFpc2UgYnVncyBhbmQgZm9yIGRldmVsb3BlcnMg
dG8gd29yayBvbiBidWdzCj4gKiBJdCBoYXMgYW4gYWN0aXZlIGRldmVsb3BlciBjb21tdW5pdHkg
KGFzIHdlIGdldCBtb3JlIGV4cGVyaWVuY2Ugd2Ugd2lsbCBhZGQKPiBzb21lIGd1aWRlbGluZXMp
LiBCdXQgdGhpbmdzIHRvIGxvb2sgZm9yIGFyZSBudW1iZXIgb2YgbWFpbnRhaW5lcnMsIGRpZmZl
cmVudAo+IG9yZ2FuaXNhdGlvbnMgaW52b2x2ZWQsIG51bWJlciBvZiB1c2VycywgZXRjLgo+ICog
SXQgaGFzIGEgcHJvamVjdCBsZWFkZXJzaGlwIHRlYW0gdGhhdCByZXNvbHZlcyBjb25mbGljdHMg
YW5kIHBhcnRpY2lwYXRlcyBpbgo+IGNyb3NzLXByb2plY3QgZGVjaXNpb24gbWFraW5nCj4gKiBJ
dCBhZGhlcmVzIHRvIHRoZSBYZW4gUHJvamVjdCBnb3Zlcm5hbmNlIGFzIG91dGxpbmVkIGluIHRo
aXMgZG9jdW1lbnQsIG9yCj4gZG9jdW1lbnRzIGFyZWFzIHdoZXJlIHRoZSBzdWItcHJvamVjdCBk
aWZmZXJzCj4gT3RoZXIgaXRlbXMgdG8gbG9vayBhdCBkdXJpbmcgdGhlIHJldmlldyAoZGVwZW5k
aW5nIG9uIHByb2plY3QgYXJlKToKPiAqIEl0IGhhcyBhbiB1cC10by1kYXRlIHdpa2kgYW5kIGEg
Y29yZSBhbmQgZ3JvdXAgb2YgcGVvcGxlIG1haW50YWluaW5nIGl0Cj4gKiBJdCBwdWJsaXNoZXMg
cmVndWxhciBidWlsZHMgYW5kIHRlc3RzCj4gKiBJdCBwcm9tb3RlcyBpdHNlbGYgYXQgZXZlbnRz
IGFuZCBvbiB0aGUgYmxvZwo+IEFjY29yZGluZyB0byBvdXIgZ292ZXJuYW5jZSwgbWF0dXJlIHN1
YnByb2plY3RzLCBtdXN0IGFsc28gZG9jdW1lbnQgdGhlaXIgZGV2ZWxvcG1lbnQKPiBwcm9jZXNz
LiBQcm9qZWN0cyBjYW4gZGV2aWF0ZSBmcm9tIHRoZSBkZWZhdWx0IGFzIG91dGxpbmVkIGluIOKA
i3hlbnByb2plY3Qub3JnL2dvdmVybmFuY2UuaHRtbOKAiywKPiBidXQgbmVlZHMgdG8gZG9jdW1l
bnQgZGV2aWF0aW9ucy4KPiBUaGUgZm9sbG93aW5nIHNlY3Rpb24gaGlnaGxpZ2h0cywgaG93IHRo
ZSBHcmFkdWF0aW9uIFJldmlldyBpcyBpbml0aWF0ZWQ6Cj4gCj4gCj4gIyMjIyBSZXF1ZXN0aW5n
IFJldmlld3MsIFJldmlld3MgYW5kIFZvdGluZwo+IAo+ICoqUmVxdWVzdGluZyBSZXZpZXdzOioq
IOKAiyBQcm9qZWN0IFByb3Bvc2FsIGFuZCBHcmFkdWF0aW9uIFJldmlld3MgYXJlIHJlcXVlc3Rl
ZCBieSB0aGUKPiAocHJvc3BlY3RpdmUpIHByb2plY3QgbGVhZCBvZiB0aGUgcHJvamVjdCBieSBj
b250YWN0aW5nIHRoZSBjb21tdW5pdHkgbWFuYWdlciBwcm92aWRpbmcKPiB0aGUgbmVjZXNzYXJ5
IGRvY3VtZW50YXRpb24uIEFuIGFyY2hpdmF0aW9uIHJldmlldyBjYW4gYmUgcmVxdWVzdGVkIGJ5
IGFueSBtYWludGFpbmVyCj4gb2YgYSBtYXR1cmUgcHJvamVjdCBvciBieSB0aGUgWGVuIFByb2pl
Y3QgY29tbXVuaXR5IG1hbmFnZXIuIFRoZSBjb21tdW5pdHkgbWFuYWdlcgo+IHdpbGwgdGhlbiBw
dWJsaXNoIHJlbGV2YW50IG1hdGVyaWFsIG9uIHRoZSByZXNwZWN0aXZlIG1haWxpbmcgbGlzdHMu
Cj4gVGhpcyBkb2N1bWVudCBpcyB0aGUgb3V0Y29tZSBvZiB0aGUgZW5nYWdlbWVudCBiZXR3ZWVu
IFBhdWwgRHVycmFudCAocHJvamVjdCBsZWFkKSBhbmQKPiBMYXJzIEt1cnRoIChjb21tdW5pdHkg
bWFuYWdlcikuCj4gCj4gIyMjIERldmVsb3BtZW50IFByb2Nlc3MgYW5kIERldmlhdGlvbnMgZnJv
bSB0aGUgZGVmYXVsdAo+IAo+IFJvbGVzIGFyZSBpbiBsaW5lIHdpdGggdGhlIGRlZmF1bHQ6IHRo
ZSBwcm9qZWN0IGhhcyBtYWludGFpbmVycyBhcyBkZXNjcmliZWQgaW4gdGhlCj4gTUFJTlRBSU5F
UlMgZmlsZSBvZiBlYWNoIGdpdCByZXBvc2l0b3J5Lgo+IFRoZSBQcm9qZWN0IExlYWRlcnNoaXAg
VGVhbSBpcyBtYWRlIHVwIG9mIG1haW50YWluZXJzIGFuZCBjb21taXR0ZXJzIHdpdGggUGF1bCBE
dXJyYW50Cj4gdGhlIHByb2plY3QgbGVhZCBhbmQgQmVuIENoYWxtZXJzIGFuZCBPd2VuIFNtaXRo
IGJlaW5nIGNvbW1pdHRlcnMuIFRoZSB0ZWFtIGZvbGxvd3MgdGhlCj4gY29udmVudGlvbnMgLSBp
biBwYXJ0aWN1bGFyIHRob3NlIHJlbGF0ZWQgdG8gZGVjaXNpb24gbWFraW5nIC0gbGFpZCBvdXQg
aW4gdGhlIGdvdmVybmFuY2UKPiBkb2N1bWVudC4KPiBUaGVyZSBpcyBubyBzZWN1cml0eSB0ZWFt
LCB3aGljaCBpcyBub3QgYSByZXF1aXJlbWVudC4KPiBUaGUgcHJvamVjdCBmb2xsb3dzIGEgbWFp
bGluZyBsaXN0IGJhc2UgcmV2aWV3IHByb2Nlc3MsIHdpdGggRENPIGFuZCBhIHJldmlldy10aGVu
LWNvbW1pdAo+IHBhdHRlcm46IGFuIGV4YW1wbGUgY2FuIGJlIGZvdW5kIOKAi2hlcmXigIsuCj4g
SW4gc3VtbWFyeTogdGhlIHByb2plY3QgY29tcGxldGVseSBmb2xsb3dzLCBhbmQgaGFzIGJlZW4g
ZG9pbmcgc28gc2luY2UgaW5jZXB0aW9uLCB0aGUKPiBjb252ZW50aW9ucyBvZiB0aGUgSHlwZXJ2
aXNvciBwcm9qZWN0LCB3aGljaCBhcmUgdGhlIGRlZmF1bHQuCj4gCj4gIyMjIE9wZW5uZXNzLCBU
cmFuc3BhcmVuY3ksIE1lcml0b2NyYWN5Cj4gCj4gRGV2ZWxvcG1lbnQgb2YgZHJpdmVycyBpcyBk
b25lIGluIHRoZSBvcGVuLiBUaGF0IGlzLCBwYXRjaCBzZXJpZXMgYXJlIHNlbnQgdG8gdGhlIG1h
aWxpbmcgbGlzdAo+IGZvciBjb25zaWRlcmF0aW9uIGJlZm9yZSBiZWluZyBhcHBsaWVkIHRvIHRo
ZSBjb2RlIGJhc2UuIFN1YnNjcmlwdGlvbiB0byB0aGUgbGlzdCBpcyBvcGVuIHRvCj4gYW55b25l
IGFuZCBjb21tZW50cyBmcm9tIGFsbCBzdWJzY3JpYmVycyBhcmUgY29uc2lkZXJlZC4gUHJvamVj
dCBkZWNpc2lvbnMgYW5kIHBlcnNvbm5lbAo+IGRlY2lzaW9ucyAoc3VjaCBhcyBub21pbmF0aW9u
IG5ldyBtYWludGFpbmVycykgYXJlIG1hZGUgb24gdGhlIHB1YmxpYyBtYWlsaW5nIGxpc3QuCj4g
Cj4gIyMjIENvZGVsaW5lLCBNYWlsaW5nIExpc3RzLCBCdWdzCj4gCj4gVGhlcmUgYXJlIHNldmVy
YWwgZ2l0IHJlcG9zaXRvcmllcyB3aGljaCBhcmUgYWNjZXNzaWJsZSBmcm9tCj4geGVuYml0cy54
ZW5wcm9qZWN0Lm9yZy9naXR3ZWIvP2E9cHJvamVjdF9saXN0O3BmPXB2ZHJpdmVycy93aW4KPiAK
PiAKPiBUZWNobmljYWwgZGlzY3Vzc2lvbnMgaGFwcGVuIG9uIOKAi3dpbi1wdi1kZXZlbEDigIsg
OiBiZWxvdyBjYW4gYSBsaXN0IG9mIG1ham9yIHBhcnRpY2lwYW50cyBjYW4KPiBiZSBmb3VuZC4g
VHJhZmZpYyBvbiB0aGUgbGlzdCBpcyBzdGFibGUsIHdoaWNoIGdpdmVuIHRoZSBtYXR1cml0eSBv
ZiB0aGUgcHJvamVjdCwgaXMgZXhwZWN0ZWQuCj4gQnVncyBhcmUgcmFpc2VkIG9uIOKAi3dpbi1w
di1kZXZlbEDigIsgKG9yIHNvbWV0aW1lcyBvbiB4ZW4tZGV2ZWxAIG9yIHhlbi11c2Vyc0ApLCBh
bmQgdGhlbgo+IGFkZHJlc3NlZCB1c2luZyB0aGUgSHlwZXJ2aXNvciB3b3JrZmxvdy4KPiAKPiAj
IyMgQnVpbGQsIFRlc3RzICYgUmVsZWFzZXMKPiAKPiBEZXZlbG9wbWVudCBidWlsZHMgb2YgdGhl
IFdpbiBQViBEcml2ZXJzIGFyZSBidWlsdCBieSBhIEplbmtpbnMgc2VydmVyIHdoZW4g4oCLIF9u
ZXcgcGF0Y2hlc18KPiAKPiAjIyMjIGFyZSBwdXNoZWQgaW50byB0aGUgcmVwbyDigIsgYW5kIGJ1
aWxkIG91dHB1dCBjYW4gYmUgZm91bmQgYXQg4oCLeGVuYml0cy54ZW4ub3JnL3B2ZHJpdmVycy93
aW4vCj4gCj4gRGV2ZWxvcG1lbnQgYnVpbGRzIGFyZSBub3Qgc3ViamVjdCB0byBhdXRvbWF0ZWQg
dGVzdCB0aHJvdWdoIE9TU1RFU1QuIEhvd2V2ZXIgQ2l0cml4Cj4gcnVucyByZWd1bGFyIGFuZCB2
ZXJ5IGNvbXByZWhlbnNpdmUgYXV0b21hdGVkIHRlc3Rpbmcgb24gdGhlIGxhdGVzdAo+IHhlbmJp
dHMueGVuLm9yZy9wdmRyaXZlcnMvd2luL+KAiyBzdGFibGUgYnJhbmNoZXMgKHBsdXMgYSBzbWFs
bCBhZGRpdGlvbmFsIHNlcmllcyBvZiBicmFuZGluZwo+IHJlbGF0ZWQgcGF0Y2hlcykuIENpdHJp
eCBhbHNvIGxvZ28gY2VydGlmaWVzIHRoZSBkcml2ZXJzIGRpc3RyaWJ1dGVkIHdpdGggWGVuU2Vy
dmVyIGFuZCBpcwo+IHRoZXJlZm9yZSBtb3RpdmF0ZWQgdG8gbWFrZSBzdXJlIHRoZSBzb3VyY2Ug
aXMgbWFpbnRhaW5lZCB0byBhIGhpZ2ggc3RhbmRhcmQgc3VjaCB0aGF0IGxvZ28KPiB0ZXN0aW5n
IGNhbiBiZSBwZXJmb3JtZWQgYXQgc2hvcnQgbm90aWNlLgo+IEFtYXpvbiBhbHNvIGhhdmUgZXhw
ZXJpZW5jZWQgV2luZG93cyBkcml2ZXIgZGV2ZWxvcGVycyBhbmQgZG8gZXh0ZW5zaXZlIGF1dG9t
YXRlZCBhbmQKPiBtYW51YWwgdGVzdHMgb24gdGhlaXIgb3duIGJ1aWxkcyBvZiB0aGUgZHJpdmVy
IGNvZGUuIFRoZXkgaGF2ZSBwcm92aWRlZCB1c2VmdWwgZmVlZGJhY2sgYXMKPiB3ZWxsIGFzIHNv
bWUgcGF0Y2hlcyB0byBmaXggaXNzdWVzIHRoYXQgdGhleSBoYXZlIGRpc2NvdmVyZWQgaW4gdGVz
dGluZy4KPiBUaGUgcHJvamVjdCBoYXMgZGVsaXZlcmVkIOKAi3NldmVyYWwgcmVsZWFzZXPigIs6
Cj4gOC4xLjA6IFJlbGVhc2VkIDIwMTYtMDctCj4gOC4yLjA6IFJlbGVhc2VkIDIwMTctMDItCj4g
OC4yLjE6IFJlbGVhc2VkIDIwMTgtMDQtCj4gCj4gCj4gUmVsZWFzZXMgZm9sbG93IHRoZSBzYW1l
IGFwcHJvYWNoIGFzIGluIHRoZSBIeXBlcnZpc29yIHByb2plY3QsIHdpdGggc3RhYmxlIGJyYW5j
aGVzIGluIGdpdAo+IHJlcG9zaXRvcmllcywgcmVsZWFzZSBjYW5kaWRhdGVzIGFuZCBmaW5hbCBy
ZWxlYXNlcy4gUmVsZWFzZXMgZm9sbG93IGFwcHJveGltYXRlbHkgYW4gYW5udWFsCj4gY2FkZW5j
ZS4KPiAKPiAjIyMgVXNlciBhbmQgRGV2ZWxvcGVyIENvbW11bml0aWVzCj4gCj4gKipVc2VyIGNv
bW11bml0eSoqIOKAiyBlbmdhZ2VtZW50IG9uIHRoZSBtYWlsaW5nIGxpc3QgaGFzIHN0ZWFkaWx5
IGluY3JlYXNlZCBzaW5jZSB0aGUgY3JlYXRpb24KPiBvZiB0aGUgcHJvamVjdCwgYXMgdGhlIGdy
YXBocyBiZWxvdyBzaG93Cj4gCj4gKF4pCj4gMjAxNCAyMDE1IDIwMTYgMjAxNwo+IEluIDIwMTQg
YW5kIDIwMTUsIHRyYWZmaWMgY2FtZSBmcm9tIGEgZmV3IG1ham9yIHZlbmRvcnMgKHdobyBtb3N0
IGxpa2VseSBhZG9wdGVkIHRoZQo+IGRyaXZlcnMgaW4gdGhlaXIgcHJvZHVjdHMgd2hpY2ggbGlr
ZWx5IGNvcnJlbGF0ZXMgdG8gYSBzcGlrZSBvZiBxdWVzdGlvbnMgZnJvbSBzcGVjaWZpYyB2ZW5k
b3JzKS4KPiBGcm9tIDIwMTYgbW9zdCBxdWVzdGlvbnMgaGF2ZSBiZWVuIGRyaXZlbiBieSBjb21t
dW5pdHkgbWVtYmVycyB3aGljaCB3ZSBjb3VsZCBub3QKPiBtYXAgdG8gc3BlY2lmaWMgb3JnYW5p
emF0aW9ucy4gSW50ZXJlc3RpbmdseSwgZW5nYWdlbWVudCB3aXRoIGluZGl2aWR1YWxzIChyYXRo
ZXIgdGhhbgo+IG9yZ2FuaXNhdGlvbnMpIGhhcyBpbmNyZWFzZWQgaW4gcGFyYWxsZWwgd2l0aCB0
aGUgcHJvamVjdCBkZWxpdmVyaW5nIHNpZ25lZCBkcml2ZXJzLgo+IFRoaXMgaW5kaWNhdGVzIGlu
Y3JlYXNpbmcgYWRvcHRpb246IHVuZm9ydHVuYXRlbHksIHdlIGRvIG5vdCBoYXZlIHVzYWdlIGNv
bmZpcm1hdGlvbiBieSBhbnkKPiBvcmdhbml6YXRpb25zIGJlc2lkZXMgQVdTLCBDaXRyaXggYW5k
IEludmlzaWJsZSBUaGluZ3MgTGFicyAoUXViZXMgT1MpIGFyZSB1c2luZyBvdXIKPiBkcml2ZXJz
Lgo+ICoqRGV2ZWxvcGVyIGNvbW11bml0eSoqIOKAiyBlbmdhZ2VtZW50IGhhcyBncm93biBmcm9t
IDAlIHRvIDQlIGJ5IHZlbmRvcnMgb3V0c2lkZSBvZiBDaXRyaXgsCj4gcHJpbWFyaWx5IHN1Ym1p
dHRpbmcgYnVnIGZpeGVzLiBUaGlzIGlzIG5vdCBzdXJwcmlzaW5nIGdpdmVuIHRoZSBtYXR1cml0
eSBhbmQgc3RhYmlsaXR5IG9mIHRoZXNlCj4gZHJpdmVycywgd2hpY2ggZG9lcyBub3QgY3JlYXRl
IGEgaGlnaCBuZWVkIHRvIG1ha2UgY29udHJpYnV0aW9ucyB0byB1cHN0cmVhbS4gVGhlIGJpZ2dl
c3QKPiBjb250cmlidXRpb25zIGhhdmUgY29tZSBmcm9tIElUTCBhbmQgQVdTLCBhcyB0aGUgZGlh
Z3JhbSBiZWxvdyBzaG93cy4KPiAoXikKPiBJVEw6IGNoYW5nZSBvZiBhcm91bmQgNiBLIFNMT0sg
QVdTOiBjaGFuZ2Ugb2YgYXJvdW5kIDEgSyBTTE9LCj4gCj4gCj4gIyMjIEV2ZW50cywgQmxvZ3MK
PiAKPiBUaGUgdGVhbSBwcmVzZW50cyBhYm91dCBuZXcgZGV2ZWxvcG1lbnRzIGFuZCBibG9ncyB3
aGVuZXZlciB0aGVyZSBhcmUgbWFqb3IgbmV3Cj4gZGV2ZWxvcG1lbnRzOiBvbiBhdmVyYWdlIDEt
MiBwZXIgeWVhci4KPiAKPiAjIyBTdW1tYXJ5L1JlY29tbWVuZGF0aW9uCj4gCj4gQXNzZXNzbWVu
dCBieSBMYXJzIEt1cnRoLCBDb21tdW5pdHkgTWFuYWdlcjoKPiAKPiBfR2l2ZW4gdGhlIG1hdHVy
aXR5IG9mIHRoZSBkcml2ZXJzIGFuZCB0aHVzIGxpbWl0ZWQgbmVlZCB0byBmaXggaXNzdWVzIG9y
IGRldmVsb3AgbmV3IGZlYXR1cmVzLAo+IEkgd291bGQgcmVjb21tZW5kIHRvIGdyYWR1YXRlIHRo
ZSBwcm9qZWN0LiBUaGUgcHJvamVjdCBoYXMgc2hvd24gaW5jcmVhc2VkIHVzZXIKPiBlbmdhZ2Vt
ZW50LCBhZG9wdGlvbiBhbmQgZGVsaXZlcmVkIHNldmVyYWwgcmVsZWFzZXMgd2hpY2ggaXMgY29u
c2lzdGVudCB3aXRoIGEg4oCLIG1hdHVyZQo+IHByb2plY3Qg4oCLLiBJIGhhdmUgbm8gb2JqZWN0
aW9ucyBvbiBncm91bmRzIG9mIHByb2Nlc3MgYWRoZXJlbmNlLCB2YWx1ZXMgYW5kIGRldmVsb3Bl
cgo+IGNvbW11bml0eSBkaXZlcnNpdHkgYW5kIOKAiyBwcm9wb3NlIHRvIHRoZSBwcm9qZWN0IGxl
YWRlcnNoaXAgdGVhbXMgb2Ygb3RoZXIgbWF0dXJlCj4gcHJvamVjdHMgdG8gYWdyZWUgdG8gZ3Jh
ZHVhdGUgdGhlIFdpbmRvd3MgUFYgRHJpdmVyIHN1YnByb2plY3TigIsuXwo+IAo+IF9SZWNvbW1l
bmRhdGlvbnM6IOKAiyBHaXZlbiB0aGF0IOKAiyBXaW5kb3dzIFBWIERyaXZlcnMg4oCLIGRldmVs
b3BtZW50IHRvZGF5IGRlcGVuZHMgb24gM3JkCj4gcGFydHkgdGVzdGluZywgSSB3b3VsZCBsaWtl
IHRvIHJlY29tbWVuZCBhIHB1YmxpYyBkaXNjdXNzaW9uIHdoZXRoZXIgc29tZSB0ZXN0aW5nIG9m
Cj4gV2luZG93cyBQViBEcml2ZXJzIOKAiyBpbiBPU1NURVNUIGlzIGZlYXNpYmxlIGFuZCBkZXNp
cmFibGUuXwo+IAo+IAo+IAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhl
bnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5m
by9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Tue Apr 24 06:32:50 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 24 Apr 2018 06:32:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fArVQ-0007il-NY; Tue, 24 Apr 2018 06:32:48 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=xasv=hn=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fArVO-0007ig-TM
 for minios-devel@lists.xenproject.org; Tue, 24 Apr 2018 06:32:47 +0000
X-Inumbo-ID: 22bcfb3c-4789-11e8-9728-bc764e045a96
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe07::608])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 22bcfb3c-4789-11e8-9728-bc764e045a96;
 Tue, 24 Apr 2018 08:31:35 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=NRr1C5M2bKwsr421FjITWZw1+M6k6rx/fQnTh2sH4xc=;
 b=BNTGNc1KFEcyEkBFDQne1KiSE13A+itN18Tgj+ztYTe1KqizOAHFV0+UlNzmFY+je7+zFML2w8LFiPY1Mow+/2F9MeVVumswixKOVCcH6bcLyAI/ARXeuAYu61WGziEcHhDg4vRTsSABkgnbCPpOIfHmFGs/us/BJ3Fms6O5Pnw=
Received: from VI1PR0802CA0025.eurprd08.prod.outlook.com
 (2603:10a6:800:a9::11) by VI1PR0801MB1599.eurprd08.prod.outlook.com
 (2603:10a6:800:19::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.15; Tue, 24
 Apr 2018 06:32:37 +0000
Received: from DB5EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::205) by VI1PR0802CA0025.outlook.office365.com
 (2603:10a6:800:a9::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Tue, 24 Apr 2018 06:32:37 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT016.mail.protection.outlook.com (10.152.20.141) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Tue, 24 Apr 2018 06:32:37 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Tue, 24 Apr 2018
 07:32:34 +0100
Date: Tue, 24 Apr 2018 06:32:30 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180424063229.GA10789@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-10-git-send-email-shijie.huang@arm.com>
 <6272136e-0a75-134f-eeb4-1c2e8c1078c2@arm.com>
 <20180419100943.GD29673@ubuntu.shanghai.arm.com>
 <7256661b-feec-d8af-5701-08b7c1b1ec02@arm.com>
 <20180423090604.GC30544@ubuntu.shanghai.arm.com>
 <1d033682-9cb4-0c68-176e-4c4fb040854d@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <1d033682-9cb4-0c68-176e-4c4fb040854d@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(39860400002)(346002)(396003)(39380400002)(2980300002)(438002)(189003)(199004)(52314003)(11346002)(336012)(426003)(186003)(97756001)(72206003)(77096007)(76176011)(7696005)(33656002)(2906002)(1076002)(305945005)(55016002)(8666007)(50466002)(23726003)(46406003)(53546011)(26005)(6246003)(39060400002)(47776003)(8676002)(356003)(478600001)(6862004)(106466001)(4326008)(229853002)(5660300001)(6636002)(104016004)(86362001)(6666003)(93886005)(106002)(476003)(126002)(58126008)(8936002)(16586007)(316002)(446003)(486006)(54906003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1599; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; MX:1; A:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT016;
 1:/GjeGxxUNbq4KFTjfIzyHCuH7m1di1CSHVA4gCcLDrdw0AOkTCF1CVz2PjXGBNmGRH3gBQ2uYfzJBo7v+Lt+Sy4Kp7p1UPGXGcRPp8EkSltX15v1VJlPqMX1vgNQff3M
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0801MB1599; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 3:Cqxny/7cwvV21mHQo/ysadFNLbwcda4G9Ylo6Ff4XElkFnYU1+6Y2v4sZtZy5GRXrYupBsAmFTq4ORMKeWeH+0/BcDkwTtRSpVWpkk7faRds/+Dcv/2F+TXYWViDcSeqDQ1QYN7Vgq1aaBs1WJ3GJfZj7aR2hQ0F+fnfxhelqAvwsF92lMUeEmyPEON9mtJWAKOmw61w1c0Hh/bhaO1lUO0oFWWUACvhOPYjH6v40uNCdRZSyKq2xPIdAIccoHAOFUFcqCuu3stXWwNeV+uQjLBUTchNaB+OOx/HUyNi+F5Ug4G0D+IEQzBi5IwmuFwr9OX8JEoUaLVTJ39fUv2rgLbHTv4ly9HgYg8sncd8UhE=;
 25:7Hq1CmISbhM5/0go1WAJR0q0jxYEVR4ElMY/tT5z5/qzzzGuf9knSHw/hs1MmTwv8GydC/kLBcsbFH4fZWjdjzrLE3eSfgNHz054USV8uT0BSpTfVLxefSBfWJPVGDPigL0ayqbHPByq/oB2e/CrtSoNUNxhCLIpD+jLpj/uvAqjeuHX9XgA8sXIgHqXhIEzDNJrO0NxKeUpVdbogcLiw+qJbMhGAMXNBTbhn27dwtakYcMFBs6u69qkDmyjMGSIWbhkIcSsBhpskCgif9hTcPo7mjqPohmu12luTHNomAnvqqAHy9V3d4weFbLjkSaZk72wGmeC3bmGMn4Y0tV2DQ==
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1599:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 31:hYiac7d5sJBW4Idp+lYPAR3D53Wz7OAEhNddANOaxxBLUVComkBH0yZ7V8aiWtp8i0V8LZItyaYI5CIJAAWSqyz5sc7fKSbjrbLyjFQADSf5B13gMzWkm8dFLDbvP8MnBs0Xu26FE0u7xK0thToIO2ZVWiI2FXANKh2QvpF+hQw+TVs/LmKAohKC7EPrjLZ35fEtYCrXvvZbjxVIq2UKz4cOH/w8JvVcNoOQPNXmax8=;
 20:FKVdcPnK21vque+YaXQrXFpdgzg78MosLCxI5hxkyAPN63Ox1wkT5kLGmGciPrtCMNl6Pl6D0mnBSDuIFmugiPs9ChJx13+rx6cks8g55igCnT4LPtT8jWkej9lAnxyrrLqS3BB5Scj35chFieobzWdEDUtSnglJ8bMYiOVoRZ/UbEfdzPgq5wWS7B4vu/mjFJnaSatzK+YuSE/lFbvHCvQ3PmjRExDb7Ur6hv5q6LUEVbWVPQa232iQj5Z0QrpMP29WDway/uG9xe+U3gnH25Tmc5dMgHZ7Hv7CRkY8RZ5TGYF3tDmYUcAjPzK/Y4xj5eXJHQuSesMpb6mHzTNaAncJTw4hMYMjW5sxXL0zboA=;
 4:R3n96gVf9EjOOlBDSREM5FgszSy5RANtUYLyDtX20RTzpmE18yN3poTvA689hfJ7vhq18Fa3XeES4ryycPoFnS2fX6cx+tR5ibsp2l6CYxZJs83cT8h5Li/YjauCYudDJ2zmk2FkmiD8svsFIqVyQS5ly4EqtZ/8PpyCwKUCgfqoVSLQ6eV6A7+vgMtUF3Cr2bvvwaXvLntC6tXrm/f/2WY/2Q2yF3qnTZ1OwPmR1b9WG9d19nLTjo2FZZPTcxoYVoRuZZFhB78q1sfwRPjcBapTGXCnew46n5q2k8m7PRYQAdctRSq9b5knThoQWgaf
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0801MB1599FC1095D2DB4AF562900484880@VI1PR0801MB1599.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501410)(52105095)(3002001)(10201501046)(6055026)(6041310)(20161123558120)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(6072148)(201708071742011);
 SRVR:VI1PR0801MB1599; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0801MB1599; 
X-Forefront-PRVS: 0652EA5565
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0801MB1599;
 23:+pL4Zowij3b1YN7Y+372PM5fpeGLoYV8WJzC7aB?=
 =?us-ascii?Q?YaWdOBsuXJ9oXVuwuSzdCz8zxhLd4rONP2//K0FFPBn8gyWLWTLlAjq9Yt0P?=
 =?us-ascii?Q?Uu9bUSQTWBtFeheYox9M7PwzmOJLyoIRJ6OVXyLkww1d/RbGENZm/+6CFWBU?=
 =?us-ascii?Q?dmHRewM92l5BxPW3/FXE1iD3tuAmnXaRv+0pWHXtigYZ9TV4UMmVK2bhw9XF?=
 =?us-ascii?Q?H9P5Xn0+mPnHg3NXW5PRLlhudjEw/fnWcSnKRucA5fxWsO7tfbZLuFpokSs9?=
 =?us-ascii?Q?8whkGXEjXp7kYUzaX66TX95HkXZUwUJFf/+JwNgvIjHU+9y/4ckT6VLsKirr?=
 =?us-ascii?Q?gScaO3YcqnLazWYEBaEE7xv1FphxU71QPMNwOoEn2c+przYxgF6eGRQ47e7N?=
 =?us-ascii?Q?hizahjGidlM3sbiXM7fcn3LE+gQJSjNMcmmCIGalb03T1JX14tuKuPwNWUux?=
 =?us-ascii?Q?5Q7NSPviXxTA1KYPjPJ9tlsBDdHC2+QTpNkbdy5ZQxjY7IIfkvd8U4et54Ge?=
 =?us-ascii?Q?nlX17rCscqPm5NrsZ65oZ9pPIPNJJ2PXRs/KdWxJqIS38PwefltwfGy6ZYCT?=
 =?us-ascii?Q?jFe2yZ6wUl56y0eyrCW4SigX/lWB5ZM+qSYUP2ZAWSJ09i3YOtfxBZvRPO5u?=
 =?us-ascii?Q?oGUpO+xLdast1cxtV9HjCnFa+HW+rMmWUaWMOT1QKl3eh8zHWGBHRnsrnlpM?=
 =?us-ascii?Q?iF246R79H2r+pfJ864CiEtvs5rDoFjVe4iw8BaCDEgDKoggARB7v2/8dAU29?=
 =?us-ascii?Q?S/pqYyr/zcxGW2BHglb1HAqAOMx1sds/QlwjIXz10bMkoc7jegs0FPG/tL9B?=
 =?us-ascii?Q?Oh07ydqTRP+W6SGq8O68PpknJ8zuJ0fNpPrLg4CnkVfFZPuY1uirPes16j0O?=
 =?us-ascii?Q?2vIt08sa6kB0DiYKK5gqXEkPmcQnd+unOU9CVbVnGtGjl104Jcw635f5n1C1?=
 =?us-ascii?Q?6W7T+JBZ99S+JY+cvvLqESM3Q9OqfDBeRoSPH8rgSO/PeOsO9DrG6lIXFnId?=
 =?us-ascii?Q?+HpSsxcGTh1aRLcyNYAK7uUb9KcxswknquA8z9Yp1qWDj/lUXxk9nbeNujar?=
 =?us-ascii?Q?GI5aA5LxSxa2aQCJ0zxn6dvu3Siq+BkY1epcCQechnGNcCu+MrpKQXIiym+M?=
 =?us-ascii?Q?TwQkGGPnjNwKd4gg4VBahfnhKeJLSnGxxQpK6V7fJ9IBKtWa9jPXPo/s0iaz?=
 =?us-ascii?Q?OMzNmSzWEnngwurDUsN7OF4Nf+QmJLGdQMIiOjKsgk6XCRg9cuuJVQ3sHtOC?=
 =?us-ascii?Q?qti7aMNMq5huIobebmHli2P+O8xsJc+2YWbEpt4mc?=
X-Microsoft-Antispam-Message-Info: +5IR6nlVok8jrwOk0gN15TSPV8knoT78Bnun42TNcS3Vhw1kImpJCUdJ+4UzFKus8fkAAH80Fz6Y+eLVGntTY1JHEQW2r3T4Iu/+wLjT5Vh1apR77hwQ9vajbpp1vaVvPcSLEA3FdAS2KdCL+X1M3NVQb2gIXn6iM5VCQ3V65Plc66voHrt1jt2ALQ43zvytBDlejjrA528egsxMuzy+oLjjHO1EDbf2Y/Ie5zPBm7M7BrlCwPoUJD3FeJIcu0YXJ/eQPsi5VzebiKqjDOg3OH6Xk/6I0yi8mGEf11Uli/iYi2KD5eLcl2eywHsKB9tbkExTQv0V+/vPAQo0BX5im378cQE8mGh8MsDK6eZXzBZoo7xaiMsHOESHxRPx1I5ifkTHNvdshxE3BcsnJfPJLIm4qiUXAk3xEnJFpBr9OEw=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 6:GHWi9k6qan/CzJEFvq/7kgtXdKs0VV2Zz56Yj60/yW+lmFJ2EcgQ7hULR69buPJBU+Flxa8Mcf0PLcRpt3A5ddHfClrz5un4wZnZu8wdiTpXqgPFcSgNglSurGpecCFaC7tzlvuHmEd1wtpyIB+ZWBSTjhD9u1jhU75fb+vRYmAwbvh+cNNZV0Wim/BF6c9RSv4DiNwm2qyaG/wWE8LgNbeGUrl6VSouYeG5ep12BIPHR+952nF4+XJg3Kjra5al3ccP93ACcK5a5/865WAzx2XNnA40GbQ7PI9E+Dbwq5ekU4JDm9JWV6tQtsDwpzBf/fcpVAJMfk8HUq2YiShsuLrD/+J6i83wrDv/kd2lyYLvupOvqoAwEBCt0gUXy2/4/KKdab52fwn7ADl9wfzLpmEzgf3po71SP0aSWpbasgSktBlXeqbBvjxrTwAivuEt66DT3oDugah6PYwmDPFD63PBPfoCp2qLFaXNjsEpCU6LR5RlQ7J7Ak0L0R2cyRPy;
 5:KnWDLNz8jFn6R9VqDJbtbmBq1qNnGKvZT+5WfCDVd5f2+sjaO2QnmdWehvF1GMkmtyYABDKq5iBEn2qzCV2lxhfwqpNfIinG+P/zb8oV6WzWu+QO6EpxlhPriETDQiXfLBpBHEZdREP+6AL+8VwKiEwvywUDSlJum3KNe/FzJnI=;
 24:0wagwngREUmhfZA91KqXel9vU6hk3b+s0aeDvoX+bOiUPEBTqb62mw6VQGthnk6/9bCNfTBnQ0KKR++3jBv4kYAiJl6g1fIj2CmwZvpRoSA=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0801MB1599;
 7:5IjG4E0sFS3EYc+5AvTODmE6E7Truvt/fY5X76dj+fbQ+v7uVV5xnFh77IjALa1vFLLnMuO642l6Dvf7ORqsyTRq3D6RNO2RaMzvnwA5FZL2WLrNWSPQu4niXxvZY1wEwbPThf5N+wV9jb9HZbfEgKGwsYJvSfb8IEVqe1cDgBjJf2GFGWI4BQ2DYFgNYJN1xb9UDKXxHITtSMGGZ/ZC/sX6sauMJFdaHoU/seuEKQTLEzvh4J8nXWKjN2y9SgYQ
X-MS-Office365-Filtering-Correlation-Id: db59f3c6-51aa-4c50-3b40-08d5a9ad2bf6
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Apr 2018 06:32:37.2599 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: db59f3c6-51aa-4c50-3b40-08d5a9ad2bf6
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1599
Subject: Re: [Minios-devel] [PATCH v3 09/43] arm64: add the __PAGE_SIZE
 macro in header file
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gTW9uLCBBcHIgMjMsIDIwMTggYXQgMTE6NDI6NDFBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpIFNoaWppZSwKPiAKPiBPbiAyMy8wNC8xOCAxMDowNiwgSHVhbmcgU2hpamllIHdy
b3RlOgo+ID5PbiBUaHUsIEFwciAxOSwgMjAxOCBhdCAxMToxNTo1NkFNICswMTAwLCBKdWxpZW4g
R3JhbGwgd3JvdGU6Cj4gPj4KPiA+Pgo+ID4+T24gMTkvMDQvMTggMTE6MDksIEh1YW5nIFNoaWpp
ZSB3cm90ZToKPiA+Pj5PbiBXZWQsIEFwciAxOCwgMjAxOCBhdCAwNTo1MzowOVBNICswMTAwLCBK
dWxpZW4gR3JhbGwgd3JvdGU6Cj4gPj4+PkhpIFNoaWppZSwKPiA+Pj4+Cj4gPj4+Pk9uIDE2LzA0
LzE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPj4+Pj5UaGUgX19QQUdFX1NJWkUgaXMg
bmVlZGVkIGJ5IHRoZSBpbmNsdWRlL3Bvc2l4L2xpbWl0cy5oLgo+ID4+Pj4+Cj4gPj4+Pj5TaWdu
ZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+ID4+Pj4+LS0t
Cj4gPj4+Pj4gIGluY2x1ZGUvYXJtL2FyY2hfbGltaXRzLmggfCAyICsrCj4gPj4+Pj4gIDEgZmls
ZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKykKPiA+Pj4+Pgo+ID4+Pj4+ZGlmZiAtLWdpdCBhL2lu
Y2x1ZGUvYXJtL2FyY2hfbGltaXRzLmggYi9pbmNsdWRlL2FybS9hcmNoX2xpbWl0cy5oCj4gPj4+
Pj5pbmRleCAyM2E0OTFmLi5kZTA0N2IwIDEwMDY0NAo+ID4+Pj4+LS0tIGEvaW5jbHVkZS9hcm0v
YXJjaF9saW1pdHMuaAo+ID4+Pj4+KysrIGIvaW5jbHVkZS9hcm0vYXJjaF9saW1pdHMuaAo+ID4+
Pj4+QEAgLTMsNiArMyw4IEBACj4gPj4+Pj4gICNpbmNsdWRlIDxwYWdlX2RlZi5oPgo+ID4+Pj4+
KyNkZWZpbmUgX19QQUdFX1NJWkUgICAgICAgKDFVTCA8PCBQQUdFX1NISUZUKQo+ID4+Pj4KPiA+
Pj4+VGhpcyBsb29rcyBhIGJpdCBvZGQgdG8gbWUuIF9fKiBpcyB1c2VkIHRvIGRlZmluZSB0aGUg
bm9uLXVuZGVyc2NvcmUKPiA+Pj4+dmVyc2lvbi4gSGF2ZSBhIGxvb2sgYXQgcG9zaXgvbGltaXRz
LmguCj4gPj4+Pgo+ID4+Pj5UaGlzIG1ha2UgbWUgcmVhbGl6ZSB0aGF0IHBhZ2VfZGVmLmggaXMg
aW50cm9kdWNpbmcgdGhlIG5vbi11bmRlcnNjb3JlCj4gPj4+PnZlcnNpb24uIFNvIEkgdGhpbmsg
cGFnZV9kZWYuaCBzaG91bGQgYmUgZml4ZWQuIE1vc3QgbGlrZWx5LCB5b3Ugd2FudCB0bwo+ID4+
Pj5mb2xkIHBhZ2VfZGVmLmggaW4gYXJjaF9saW1pdHMuaCBiZWNhdXNlIHRoaXMgaXMgcG9pbnRs
ZXNzIHRvIGhhdmUgYSBoZWFkZXIKPiA+Pj4+anVzdCBkZWZpbmluZyAzIG1hY3JvIGFuZCBpbmNs
dWRlZCBvbmx5IHR3aWNlLgo+ID4+PkkgY3JlYXRlZCB0aGUgcGFnZV9kZWYuaCB3aGljaCBtYWtl
cyB0aGUgY29tcGlsZXIgdmVyeSBoYXBweS4KPiA+Pj5UaGUgcGFnZV9kZWYuaCBpcyBhbHNvIGlu
Y2x1ZGVkIGluIHRoZSBhc3NlbWJseSBjb2RlLCBub3Qgb25seSB0d2ljZS4KPiA+Pgo+ID4+TWVh
IGN1bHBhLCAzIHRpbWVzIDspLiBCdXQgSSBkb24ndCBzZWUgYW55IGluY2x1ZGUgaW4gdGhlIGFz
c2VtYmx5IGNvZGUuCj4gPj4KPiA+PjQyc2g+IGFjayBwYWdlX2RlZgo+ID4+Cj4gPj4KPiA+Pgo+
ID4+aW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4gPj40MDojaW5jbHVkZSA8cGFnZV9kZWYuaD4KPiA+
Pgo+ID4+aW5jbHVkZS9hcm0vYXJjaF9saW1pdHMuaAo+ID4+NDojaW5jbHVkZSA8cGFnZV9kZWYu
aD4KPiA+Pgo+ID4+YXJjaC9hcm0vYXJtNjQvbWluaW9zLWFybTY0Lmxkcy5TCj4gPj4xOiNpbmNs
dWRlIDxwYWdlX2RlZi5oPgo+ID4+Cj4gPj5TdGlsbCwgSSB0aGluayBpdCBpcyBub3QgcmVhbGx5
IHdhcnJhbnQuIEFueXdheSwgd2hhdCBtYXR0ZXJzIGlzIHlvdSBzaG91bGQKPiA+PmRlZmluZSB0
aGUgX18gdmVyc2lvbiBhbmQgbm90IHRoZSBvdGhlciBvbmUuCj4gPkRvIHlvdSBtZWFuIHRoYXQg
SSBzaG91bGQgX29ubHlfIGRlZmluZSB0aGUgX19QQUdFX1NJWkUsIGFuZCBkbyBub3QgZGVmaW5l
IHRoZQo+ID5QQUdFX1NJWkU/Cj4gCj4gWWVzLgpva2F5LCBJIHdpbGwgdHJ5IHRvIGZpeCBpdCBp
biB0aGUgbmV4dCB2ZXJzaW9uLgoKVGhhbmtzCkh1YW5nIFNoaWppZQoKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlz
dApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Tue Apr 24 09:12:51 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 24 Apr 2018 09:12:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAu0I-000447-5S; Tue, 24 Apr 2018 09:12:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=xasv=hn=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fAu0G-00043y-Jj
 for minios-devel@lists.xenproject.org; Tue, 24 Apr 2018 09:12:48 +0000
X-Inumbo-ID: f8414621-479f-11e8-8249-2fda3a446a53
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [104.47.1.74]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id f8414621-479f-11e8-8249-2fda3a446a53;
 Tue, 24 Apr 2018 09:15:03 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=5yWIHorawHSERfQiBsu9aaZbd8UGTk9yn7qvIlFbFSg=;
 b=kH6ZJ+xh1Tkoo4sXAwqaIrCxEw/QYynKJ5Fg7RvePUV/Ihy3CPJTrYCR/A7NiDuvGyHbIzyxO4o3OI9/V5ku8ULMFSj1YR7ajSWOHlA5VjZFOJHAdoSqxXY9qgYXzdgBhcLnT2RTTx9ABX9lcmMAgDYCnKuZm4N/cWgLPC9kgeA=
Received: from VI1PR08CA0164.eurprd08.prod.outlook.com (2603:10a6:800:d1::18)
 by DB6PR0802MB2424.eurprd08.prod.outlook.com (2603:10a6:4:a0::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.15; Tue, 24
 Apr 2018 09:12:39 +0000
Received: from DB5EUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::206) by VI1PR08CA0164.outlook.office365.com
 (2603:10a6:800:d1::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Tue, 24 Apr 2018 09:12:39 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT061.mail.protection.outlook.com (10.152.21.234) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Tue, 24 Apr 2018 09:12:38 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Tue, 24 Apr 2018
 10:12:26 +0100
Date: Tue, 24 Apr 2018 09:12:23 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180424091221.GA11102@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-13-git-send-email-shijie.huang@arm.com>
 <445ad0d4-2621-fc27-4408-cfd7f7101321@arm.com>
 <20180423094401.GA7506@ubuntu.shanghai.arm.com>
 <c6b7a902-7397-f583-1527-a9687d4550e3@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <c6b7a902-7397-f583-1527-a9687d4550e3@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(376002)(39860400002)(39380400002)(396003)(2980300002)(438002)(199004)(189003)(2870700001)(50466002)(59450400001)(6666003)(6636002)(316002)(58126008)(93886005)(54906003)(5660300001)(23676004)(2486003)(76176011)(77096007)(305945005)(106002)(7696005)(4326008)(186003)(356003)(33656002)(229853002)(106466001)(8936002)(26005)(8676002)(86362001)(55016002)(47776003)(72206003)(11346002)(336012)(2906002)(345774005)(446003)(6862004)(104016004)(478600001)(8666007)(426003)(1076002)(6306002)(126002)(39060400002)(53546011)(476003)(486006)(6246003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2424; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; MLV:ovrnspm; A:1; MX:1; PTR:fw-tnat.cambridge.arm.com; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT061;
 1:47ZnMKreGi/Tp4q9948Snb+ixprrMFp7Rk4wbx+GEjOngggsswwcdS78PwdpurbKPXl5t20aJC8cciQB1fUJ7rduieIRg2B9g5PCqNfKevcuj3n128fFtPwL8Jhh2LuQ
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB6PR0802MB2424; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 3:gR+JjIBx4oOUbSjta2BEVG8Xwt74rYR4Ph9NuF76PBjS5Qzl2U3ON5JJGP6tVz8/XY+AnDRbDpi8mi7XU44ta4q10XW2vWbTHd3/SvtN2BqTF0dVMKDgi1lQWf2ty96UWTZg6lTTFSkoMdWBpqAb4X4/A6c7r+QDylIPhdhCvVQNG7Z94SzxNOHoDB8Afmp2k1S4oWpLJdYNiYBVpfmUEC470j8Ou2ZG5XJi3FFapRGRk/yRfGy5Vogb5aFFVCePELETGcft8VxDJUxmsuxGL9UZWWzJrhJFZy/k41hxS11ftwnUPJpO9p0sHIllVvHVucGsjdQoQxysO+JBsKGreXDSOv6fvAw+J46EjCCPyuw=;
 25:+XVYzkVvOPytuoIy2lxBHobTBLSlqvTMfYnBXYrTJFUMnYzWjuK2ZB12HOgJzo6jXItpt7DH/EQuDgG6Eim18G2ASVZaIf/+ayaOMh8qlpYZBAzxPp9qJBwWlMpzmDOtJeS4j7bJ0hgf773CMZGhfl1oMT/3Xg7kUniAOIJU/WMjAKZ8UVpgg3OBT+L1XZmdkw/goDLKgPKTlNW2GjDmMjyDGxTc1AOobwv9pmMM8QS9eGKRODpmk7xBkqvfI50miN4sF6ZUxlfV8v8BQNLuEeVXD61enqb4UP/l4itexVgIXlWWMS2DkmzIlVQtm+diUHBlb3Xz1hza8OZqsWNJeg==
X-MS-TrafficTypeDiagnostic: DB6PR0802MB2424:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 31:0G7Nt7/pacSBcY1IGEIqHedpdEJfm2/dSsPU/Uk2EZJxvUZ3jzC/sEmPW4j5dIIA7FOY3YQY2P2tVuYX1gzLdZwSlT3A2n9SdJjJabtpGuPJ21cd5b6H0G2GjutfODQc8dsq6tCuF9cXaf/PVYwFbRJqzR4iICs+5qMSHoAXbKjWkzmWR3WLexhK296FGh5lT+HB193LlqZD/DqoMUhHqhrbNgPwDGXzVHIvo//GuGw=;
 20:Y1BRSk5J1P4tGOf13Rk83HH/dTX9/rwiMYwDVgUMorzHmzPup/Ylfj8lA8o/NtammfYv+6WV7BE49MooKEwmonkTF4lAcPC5OeO7ac5pYqF15THv1fO7JvbXeI61I+Bw66J/bejN+QdGyLF56o4DHEZlT4x+xX5NKQYFZIvhQ8cCSRBDO/Wzomqe0Yc0k3KT1Axl/joTqLZnle2mf80kE00msg4CIMCT0KSx7MJm6+8Ft0z+1umxqOObjduVffoeWW4NR8h4UaK0nWCEZMSdpLVIvgjfECcQLQbU41EsP0/32XkWqPoDW3neGqP9yhcwrkpqiANYadi7V/IveUaMDCNgEZegUtMGspCLL8SnrjY=
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB6PR0802MB242499C151B25E07407FD0EB84880@DB6PR0802MB2424.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(22074186197030)(183786458502308); 
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231232)(944501410)(52105095)(3002001)(93006095)(93004095)(10201501046)(6055026)(6041310)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(6072148)(201708071742011);
 SRVR:DB6PR0802MB2424; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2424; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 4:tQPMCwUxjNrSKJLGGZYVDh8R24hLjSmyWip7yzZskMtoqZgTHN2ysVmwuDhzeYGU2Tm2jKWNV3AElWziGw9lfkQipN9sLUb+qEdiG0SwI01axzkc/xRIpUhnSCKNDisMz0ETFc3f/a7u4fLq38xjUoyPSrP8EJQ1x5l6rByeVortMFZkKlBrLYSv+tt0thzJAKMlPLIk1l5nTj4fQwyuI8SWRbbizTuTVVtRGWdC/lEBUePtV8Z9WcM0iEeVxtTYG5gNlKvSJbicRyO11B4S3J39H6Zy5uK1dtlDqhjIw+zo1iuzFYdq6yYauYBIr79Tfov8sZJx8N/4iIVlnPF0+aumihHwMZPWbBDFOwbJpzz3m9BJCFR3P3NSqaRWCppP
X-Forefront-PRVS: 0652EA5565
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA4MDJNQjI0MjQ7MjM6V0lORXR6LzM1RC9YaWJCUjV2dTNnRUd0?=
 =?utf-8?B?SERnbHFXUzQwQk1SMEFDTlM0dG91ZGJqTFdOZ0RIcVZRdnU1TjJjVEFMVXV1?=
 =?utf-8?B?Vk8zNmxpWjdqZkl3VnZ4OFp2dmJrOHJOT2psOEtyU1pGLzRJKzA5ckh6MTAr?=
 =?utf-8?B?bDhydHFSUDJEd0YyMjBtSFZSN3RIRjJXeEpOMzRzQXVqbzE3YTVsTThHckpB?=
 =?utf-8?B?QVk5WGhpajIrYm96SUdoQlJhNjU3cFBncnJXL25Sc3pleklDUFhLakhrWVF1?=
 =?utf-8?B?WjY0SWpXdVlSSk41L3lZcWJiV29WTWdaTFcrak80KzVvSFd1VWg1UlBBcGNt?=
 =?utf-8?B?bjdlRDRtNjFuV3dpaXp1U25YbnlSL2thQmlweXZTWEhGQkpkaFpSZzZtR0xE?=
 =?utf-8?B?ZXkzSk9Cb0MxWkJhUGs0d2JTMnFiQnlUbi9ybmRjMGhOTUUyRWlIQVZ5U095?=
 =?utf-8?B?VU9BOFdORzBHc0NWSGVyekdvODNIbDFVaDhRd1lVSDRPVGNzeUFVTHVodWpn?=
 =?utf-8?B?cXExQ0RjTEoyZmk0QzZwM2VLTkVJUVdNZ3UwM2g5aUFmTjMwRnFtR2xYZDh5?=
 =?utf-8?B?bHdwNzJoQktJQm5BSEdhU2w5R29ZbmpvWnlVWXNVVjdNU0l2ZkFNdE45Ukgr?=
 =?utf-8?B?NFcrbWhudjdmS2pEWGJ1d1l5ak9mQ2FyckhDNGEyaFV3OVNub3ZieUt4TDNr?=
 =?utf-8?B?dkZzTTFtUEphYWdYSXJNYjBVOWVzN2xEdE8yS3haeklJZ29PbjhrbWFCcjBB?=
 =?utf-8?B?NUVjcFJiSE0raS9rdml3M09SZjVhdGZjQ09aUWJxYWVMZ1JROVdzQnpvNGd3?=
 =?utf-8?B?aGFXZDBUUHQ4SXc2YmJ1aWgyN0JJNUI5amdJdk1tQjQvamRUSFNhekRFTitl?=
 =?utf-8?B?K2tOUjJmcGtjQVRXMWE3Q3VaUTNpTTRQMDFWbW5jMDd4RDFLemMrZGFLUHJu?=
 =?utf-8?B?UGcyU3JmU3FWZVFwWTdzSkU3emdzWWxMYm9vNHhBMHRNYTJNSnZYTUI0VDg2?=
 =?utf-8?B?M0UwUkE2VzZlSFQ5ZDZFV2lVTWR3N1h2Q2hOakRET3ZDazlzanJ6QndqcTRq?=
 =?utf-8?B?ZW5CMzkyK3dTWnBtdSs3WjNGZ1ZReGZTUVpqZU5zeElObC9talBodUVJbU93?=
 =?utf-8?B?cCtPcUhwVXExck95a3hEaEZRZmIvQWo2SkcrSG92dXdXWW9hMHdLaUhlbEQ4?=
 =?utf-8?B?ZXFzTXAvemtXRHVNQVBzbjhGNDB1M21YT2duZCtGQkV5MHpBZUJVK3YxZllq?=
 =?utf-8?B?SjcvcGI4c1RtZkJoRGtNcGhsUUxnVE5jRXZ5Zm5sYnBJb1d0d1JWWXdjZFBt?=
 =?utf-8?B?S2JFa0VueCt6bjNleW1zVEplREpXb04yQU1hSmJjN1AraEs0MVkxTTRwOEg3?=
 =?utf-8?B?VDFSUjROaWthOThtUHJkYXNndEgxRk1XaVRWVFk2OTB0RzJHbFE2ekNzZ050?=
 =?utf-8?B?QWwvRUl6QVE1TEo2RTR6ek5jdjFQUkJvdzNjblpiN3UvamZOZ3RzdUNGWEdv?=
 =?utf-8?B?dDNNK2UyazNaWmJDNVJXSkFPWndTUENFUWFxcFdKU05yQzRsSTcrSEo1dkho?=
 =?utf-8?B?QWRyb1UvdUdtWVlpWXdwM2R3ODBWOHR2Y1oxM3U5YXlRbVpvSVFibWJIWWhE?=
 =?utf-8?B?c3pVZWJMWVZwbXFBZGdUY3BQWTIxS1hET3pNSWhCNXRqQTRXMW1rdmxma2Iw?=
 =?utf-8?B?d1ZHSjRKWU9mWjVGSTlPeGpranNQY3FxcnJEMWM4SFFaNExVMUZGKytpQ1Qv?=
 =?utf-8?B?V3pwMjFDTEg5SU1BWmx2bkZBPT0=?=
X-Microsoft-Antispam-Message-Info: zJQjJ+SjxXIMGTBSC8A7TTVgnDHlKNgU7bRFj7tvYDwT67wX0YyyzHLGV7EZ1FZfU+jl9MFU9Dx3sdaopCl696NZ2hB74moaoCMTH83J1ngd2qjSuaOcjx1t2GJmhcYYR7VXvRRPbUnQ/ec3miqoWOVzwqDhQEgI2DY0r7ExVgC1MRekFzOONwhqhusMEC+kDAFU6wqnQ7i0RKXhHsTvUEA+iB9lm8qP9DaEmbAR+SFy+Q7YzRjSK4GCzhfXRJ6KBRBbKEoPUwpUQb0ZEB77D3O+ALfb79Tlz+3MxkFFKzF9MDCzUkDLsmZuTOjEvcFx4y8ymWKUTzEteF668P4b+t494U1TLATxHBY8Im1u3kLT+N49Dkmb13xttaw50KgMOrFuQlAL5pbf/0CE6yCdF8Lo7hlZ6EAbQw3jdAr0k2Q=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 6:zbWRHxPFwld0DT+A5GuuEBFO+ei8urTmHX7YGop0Uc8Xbvx3aNs1N1S7Vz4MgoyWvSI/PpbzlclhsWP7CQpAbSyncAMCj45NxLDoOdOkWo9XScR0WUKyHWeUA/Xar5RHSeUBoB85aJfueb7TBB/DDzQa9RJ59UHFo1IFdO1gIvMRRfHG8aKTvBrqtgjMCKnvSM6LPsB5gQUKN1+rz7rD6LRHdFL/BGPf9O6uOQm4uauNaKjqJu+f/xCn8m8mqMEJ8XXVUe77R3QmydgqdcZnYWfPPf7Nxm8xlHh/j+FvnQwGcAJQiOx31Qmf3NoQaNRIn2hTzB2kNV05to84uOWSJk5u4vDne9nxkKQv5gbHIc+nQ4M5UW4wTwK324i06f0arz4OyjBRPLPhvUPmZ9heRF23o2VQYHMR9QUkB2pYoroQ9kCjsxuK0kPHDapJe1qQfsRYzj0mFaGdBJ2fXexM1O+JZj3B60yQwZqBnhjgTXGdtheWtbY0HEPxqgWAiopt;
 5:dUNLkBRQfbFNd3sSPwUwyN8whNFzAiHiqgCjXZWuIGcv5HIKXd4NcPyySJcZdx3aqD1D+eyLELWH8q58suWyujOP2qyax3mwHC2e9TY62/ZxaYNcxJpxCsZaPO18PfzAHCUjDB0gnfH0WXKApnHoiEHzqG8gFEt9y8Bx6CW/5Qw=;
 24:OFHMw9PxAv7jajnu8hhl/Kb8i5pQokax4PrYuiJU8nYx4NhUg5vCuMGljzxtWmkbb4I6hqTOU/kEUUWHTct1GfPPTbhLeZ+14SXsQLfi6VQ=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0802MB2424;
 7:qmLnbUD3NwiiqAq3yhaw/io55gAq+msmLb4QGqtwU3WLgiXhKloKgJVLWup8zHrui0fK9nYoKfMhb9XnF8yF1fGyk+xEDCQb5IJYUz6flltX0Mnu03S0y98wvtXCc1oLG71p4o1iYFbPIGZJirCbnkPcC5DDozrg7UxiD4C8zaTLKRVtE+QcOfXvm7sdxjRH5LE9smMekXudU/M1CIH2VP+2bV7lrVWB7oq7etd0xCAu45RdKTrB88yAb+hUjetZ
X-MS-Office365-Filtering-Correlation-Id: edcbc73e-76c5-46c5-7607-08d5a9c386e2
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Apr 2018 09:12:38.7154 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: edcbc73e-76c5-46c5-7607-08d5a9c386e2
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2424
Subject: Re: [Minios-devel] [PATCH v3 12/43] arm64: add the basic helpers
 for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gTW9uLCBBcHIgMjMsIDIwMTggYXQgMTI6MDA6MzRQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE9uIDIzLzA0LzE4IDEwOjQ0LCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4g
Pk9uIFdlZCwgQXByIDE4LCAyMDE4IGF0IDA5OjI3OjEyUE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3
cm90ZToKPiA+PkhpLAo+ID4+Cj4gPj5Nb3N0IG9mIG15IGNvbW1lbnRzIGZyb20gPGNjMTQzMTY5
LTA4ZGEtMThiMi0wNjBmLTg4MjM5MDlhYmU2ZUBsaW5hcm8ub3JnPgo+ID4+aGFzIG5vdCBiZWVu
IGFkZHJlc3NlZC4gU29tZSBvZiB0aGVtIGFyZSBwcm9iYWJseSBoYXZlIGJlZW4gcmVwZWF0ZWQg
My00Cj4gPj50aW1lcy4uLi4gU28gcGxlYXNlIGFkZHJlc3MgdGhlbS4KPiA+c29ycnksIEkgZGlk
IHJlcGx5IHRoZSBvbGQgZW1haWwuICBJIHdpbGwgYWRkcmVzcyB0aGVtIGhlcmUuLgo+ID4KPiA+
Pgo+ID4+T24gMTYvMDQvMjAxOCAwNzozMSwgSHVhbmcgU2hpamllIHdyb3RlOgo+ID4+PlRoaXMg
cGF0Y2ggYWRkcyB0aGUgYmFzaWMgaGVscGVycyBpbiBoZWFkZXJzIGZvciBhcm02NDoKPiA+Pj4g
ICAgIDEuKSBtYi9ybWIvd21iCj4gPj4+ICAgICAyLikgbG9jYWxfaXJxX2Rpc2FibGUvbG9jYWxf
aXJxX2VuYWJsZQo+ID4+PiAgICAgMy4pIGxvY2FsX2lycV9zYXZlL2xvY2FsX2lycV9yZXN0b3Jl
L2xvY2FsX3NhdmVfZmxhZ3MKPiA+Pj4gICAgIDQuKSBzaW1wbGlmeSB0aGUgX19mZnMKPiA+Pj4g
ICAgIDUuKSBhZGQgQlVHKCkuCj4gPj4KPiA+PllvdSBhbHNvIGRyb3AgYXJtMzIgY29kZSBtYWtp
bmcgdGhhdCBwYXRjaCBxdWl0ZSBjb25mdXNpbmcgdG8gcmVhZC4KPiA+eWVzLiBJIGNhbiByZW1v
dmUgaXQgdG8gIzIgcGF0Y2guCj4gPj4KPiA+Pj4KPiA+Pj5UaGlzIHBhdGNoIHJlZmVycyB0byBD
aGVuIEJhb3ppJ3MgcGF0Y2g6Cj4gPj4KPiA+PkRvIHlvdSBtZWFuICJiYXNlZCBvbiIgcmF0aGVy
IHRoYW4gInJlZmVycyB0byI/Cj4gPm9rYXkuCj4gPgo+ID4+Cj4gPj4+ICAgICAgIkluaXRpYWwg
Y29kZXMgZm9yIGFybTY0Igo+ID4+PkFuZCB0aGlzIHBhdGNoIGFsc28gcmVmZXJzIHRvIEZyZWVC
U0QgY29kZToKPiA+Pgo+ID4+RGl0dG8KPiA+Pgo+ID4+PiAgICAgIHN5cy9hcm02NC9pbmNsdWRl
L2F0b21pYy5oCj4gPj4KPiA+PllvdSB2ZXJ5IGxpa2VseSBoYXZlIHRvIHJldGFpbiB0aGUgY29w
eXJpZ2h0IGZyb20gdGhvc2UgZmlsZXMuCj4gPmRvIHlvdSBtZWFuIEkgc2hvdWxkIGNvcHkgdGhl
IGNvcHlyaWdodCBoZXJlPwo+IAo+IEluIHRoZSBuZXcgaGVhZGVyIHllcy4gSWYgeW91ICBoZWFk
ZXIgd2lsbCBjb250YWluIG90aGVyIGNvZGUsIHRoZW4gY2xlYXJseQo+IHdyaXRlIGRvd24gd2hh
dCB3YXMgaW1wb3J0ZWQuCj4gCj4gPkkgdGhpbmsgYm90aCB0aGUgY29kZSBpcyBGcmVlQlNEIGxp
Y2Vuc2UsIHNvIEkgZGlkIG5vdCBkbyB0aGF0Lgo+IAo+IEkgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0
IHlvdSBtZWFuLiBDb2RlIGhhcyBiZWVuIHdyaXR0ZW4gYnkgc29tZW9uZSwgdGhhdAo+IHNvbWVv
bmUgbGlrZWx5IHB1dCBhIGNvcHlyaWdodCBpbiB0aGUgaGVhZGVyLiBTbyBJIHRoaW5rIHlvdSBo
YXZlIHRvIHJldGFpbgo+IGl0LgpPa2F5LiBJIHdpbGwgY2hlY2sgaXQuCgo+IAo+ID4KPiA+Pgo+
ID4+Pgo+ID4+PlNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5j
b20+Cj4gPj4+LS0tCj4gPj4+ICBpbmNsdWRlL2FybS9hcm02NC9vcy5oIHwgMjggKysrKysrKysr
KysrKysrKysrKwo+ID4+PiAgaW5jbHVkZS9hcm0vb3MuaCAgICAgICB8IDc1ICsrKysrKysrKysr
KysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gPj4+ICAyIGZpbGVzIGNo
YW5nZWQsIDUyIGluc2VydGlvbnMoKyksIDUxIGRlbGV0aW9ucygtKQo+ID4+PiAgY3JlYXRlIG1v
ZGUgMTAwNjQ0IGluY2x1ZGUvYXJtL2FybTY0L29zLmgKPiA+Pj4KPiA+Pj5kaWZmIC0tZ2l0IGEv
aW5jbHVkZS9hcm0vYXJtNjQvb3MuaCBiL2luY2x1ZGUvYXJtL2FybTY0L29zLmgKPiA+Pj5uZXcg
ZmlsZSBtb2RlIDEwMDY0NAo+ID4+PmluZGV4IDAwMDAwMDAuLjNkNGFhZGEKPiA+Pj4tLS0gL2Rl
di9udWxsCj4gPj4+KysrIGIvaW5jbHVkZS9hcm0vYXJtNjQvb3MuaAo+ID4+PkBAIC0wLDAgKzEs
MjggQEAKPiA+Pj4rI2lmbmRlZiBfQVJNNjRfT1NfSF8KPiA+Pj4rI2RlZmluZSBfQVJNNjRfT1Nf
SF8KPiA+Pj4rCj4gPj4+KyNkZWZpbmUgQlVHKCkgICAgICAgICAgIF9fYXNtX18gX192b2xhdGls
ZSgid2ZpIiA6OjogIm1lbW9yeSIpCj4gPj4KPiA+PkkgZG9uJ3QgdW5kZXJzdGFuZCB0aGF0IGlt
cGxlbWVudGF0aW9uLiBXRkkgbWVhbnMgd2FpdCBmb3IgaW50ZXJydXB0IGFuZAo+ID4+d2lsbCBj
b250aW51ZSBhcyBzb29uIGFzIGFuIGludGVycnVwdCBjYW1lIHVwLiBXaGF0IHlvdSB3YW50IGhl
cmUgaXMgZHVtcGluZwo+ID4+dGhlIHJlZ2lzdGVycyBhbmQgZXhpdC4KPiA+Pgo+ID4+U28gbW9z
dCBsaWtlbHkgeW91IHdhbnQgdG8gdXNlICJicmsiIHRoYXQgd2lsbCBwcm92b2tlIGEgdHJhcC4K
PiA+b2theSwgSSB3aWxsIHVzZSAiYnJrIiBpbiBuZXh0IHZlcnNpb24uLgo+ID4+Cj4gPj4+Kwo+
ID4+PitzdGF0aWMgaW5saW5lIHZvaWQgbG9jYWxfaXJxX2Rpc2FibGUodm9pZCkKPiA+Pj4rewo+
ID4+PisgICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1zciBkYWlmc2V0LCAjMiI6OjoibWVtb3J5
Iik7Cj4gPj4KPiA+PkFnYWluLCBkb2VzIHRoZSBfXyBpcyByZWFsbHkgbmVlZGVkPyBTYW1lIGZv
ciBldmVyeXdoZXJlIGluIHRoYXQgcGF0Y2guCj4gPj5Zb3Ugc2FpZCB5b3Ugd2lsbCBjaGVjayBp
dCBhbmQgbmV2ZXIgY2FtZSBiYWNrLgo+ID5XZSAoU3RldmUgYW5kIEkpIGV2ZXIgY2hlY2tlZCB0
aGUgR0NDIGRvY3VtZW50IGFib3V0IHRoaXMuCj4gPgo+ID5odHRwczovL2djYy5nbnUub3JnL29u
bGluZWRvY3MvZ2NjL0V4dGVuZGVkLUFzbS5odG1sCj4gPgo+ID7igJxUaGUgYXNtIGtleXdvcmQg
aXMgYSBHTlUgZXh0ZW5zaW9uLiBXaGVuIHdyaXRpbmcgY29kZSB0aGF0IGNhbiBiZSBjb21waWxl
ZCB3aXRoIC1hbnNpIGFuZAo+ID50aGUgdmFyaW91cyAtc3RkIG9wdGlvbnMsIHVzZSBfX2FzbV9f
IGluc3RlYWQgb2YgYXNtIChzZWUgQWx0ZXJuYXRlIEtleXdvcmRzKS7igJ0KPiAKPiBUaGFuayB5
b3UgZm9yIHRoZSBhbnN3ZXIuCj4gCj4gPgo+ID4+Cj4gPj4+K30KPiA+Pj4rCj4gPj4+K3N0YXRp
YyBpbmxpbmUgdm9pZCBsb2NhbF9pcnFfZW5hYmxlKHZvaWQpCj4gPj4+K3sKPiA+Pj4rICAgIF9f
YXNtX18gX192b2xhdGlsZV9fKCJtc3IgZGFpZmNsciwgIzIiOjo6Im1lbW9yeSIpOwo+ID4+Pit9
Cj4gPj4+Kwo+ID4+PisjZGVmaW5lIGxvY2FsX2lycV9zYXZlKHgpIHsgXAo+ID4+PisgICAgX19h
c21fXyBfX3ZvbGF0aWxlX18oIm1ycyAlMCwgZGFpZjsgbXNyIGRhaWZzZXQsICMyIjoiPXIiKHgp
OjoibWVtb3J5Iik7IFwKPiA+Pj4rfQo+ID4+PisKPiA+Pj4rI2RlZmluZSBsb2NhbF9pcnFfcmVz
dG9yZSh4KSB7IFwKPiA+Pj4rICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJtc3IgZGFpZiwgJTAi
OjoiciIoeCk6Im1lbW9yeSIpOyBcCj4gPj4+K30KPiA+Pj4rCj4gPj4+KyNkZWZpbmUgbG9jYWxf
c2F2ZV9mbGFncyh4KSB7IFwKPiA+Pj4rICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJtcnMgJTAs
IGRhaWYiOiI9ciIoeCk6OiJtZW1vcnkiKTsgXAo+ID4+Pit9Cj4gPj4+Kwo+ID4+PisjZW5kaWYK
PiA+Pj5kaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0vb3MuaCBiL2luY2x1ZGUvYXJtL29zLmgKPiA+
Pj5pbmRleCA2YTFjYzM3Li5iMTA1NTdhIDEwMDY0NAo+ID4+Pi0tLSBhL2luY2x1ZGUvYXJtL29z
LmgKPiA+Pj4rKysgYi9pbmNsdWRlL2FybS9vcy5oCj4gPj4+QEAgLTgsNDEgKzgsNDIgQEAKPiA+
Pj4gICNpbmNsdWRlIDxtaW5pLW9zL2NvbXBpbGVyLmg+Cj4gPj4+ICAjaW5jbHVkZSA8bWluaS1v
cy9rZXJuZWwuaD4KPiA+Pj4gICNpbmNsdWRlIDx4ZW4veGVuLmg+Cj4gPj4+KyNpbmNsdWRlIDxh
cm02NC9vcy5oPgo+ID4+Cj4gPj5TYW1lIHJlbWFyayBhcyBmb3IgdHJhcHMuaC4gWW91IHdhbnQg
dG8gI2lmZGVmIHRoYXQuCj4gPmRvIHlvdSBtZWFuIEkgc2hvdWxkIGFkZCAjaWZkZWYgaGVyZT8K
PiAKPiBZZXMuCj4gCj4gWy4uLl0KPiAKPiA+Pj4gIHZvaWQgYXJjaF9maW5pKHZvaWQpOwo+ID4+
PiAgdm9pZCB0aW1lcl9oYW5kbGVyKGV2dGNobl9wb3J0X3QgcG9ydCwgc3RydWN0IHB0X3JlZ3Mg
KnJlZ3MsIHZvaWQgKmlnbik7Cj4gPj4+ICBleHRlcm4gdm9pZCAqZGV2aWNlX3RyZWU7Cj4gPj4+
LSNkZWZpbmUgQlVHKCkgd2hpbGUoMSl7YXNtIHZvbGF0aWxlICgiLndvcmQgMHhlN2YwMDBmMFxu
Iik7fSAvKiBVbmRlZmluZWQgaW5zdHJ1Y3Rpb247IHdpbGwgY2FsbCBvdXIgZmF1bHQgaGFuZGxl
ci4gKi8KPiA+Pj4tCj4gPj4+ICAjZGVmaW5lIHNtcF9wcm9jZXNzb3JfaWQoKSAwCj4gPj4+ICAj
ZGVmaW5lIGJhcnJpZXIoKSBfX2FzbV9fIF9fdm9sYXRpbGVfXygiIjogOiA6Im1lbW9yeSIpCj4g
Pj4+ICBleHRlcm4gc2hhcmVkX2luZm9fdCAqSFlQRVJWSVNPUl9zaGFyZWRfaW5mbzsKPiA+Pj4t
Ly8gZGlzYWJsZSBpbnRlcnJ1cHRzCj4gPj4+LXN0YXRpYyBpbmxpbmUgdm9pZCBsb2NhbF9pcnFf
ZGlzYWJsZSh2b2lkKSB7Cj4gPj4+LSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygiY3BzaWQgaSI6
OjoibWVtb3J5Iik7Cj4gPj4+LX0KPiA+Pj4tCj4gPj4+LS8vIGVuYWJsZSBpbnRlcnJ1cHRzCj4g
Pj4+LXN0YXRpYyBpbmxpbmUgdm9pZCBsb2NhbF9pcnFfZW5hYmxlKHZvaWQpIHsKPiA+Pj4tICAg
IF9fYXNtX18gX192b2xhdGlsZV9fKCJjcHNpZSBpIjo6OiJtZW1vcnkiKTsKPiA+Pj4tfQo+ID4+
Pi0KPiA+Pj4tI2RlZmluZSBsb2NhbF9pcnFfc2F2ZSh4KSB7IFwKPiA+Pj4tICAgIF9fYXNtX18g
X192b2xhdGlsZV9fKCJtcnMgJTAsIGNwc3I7Y3BzaWQgaSI6Ij1yIih4KTo6Im1lbW9yeSIpOyAg
ICBcCj4gPj4+LX0KPiA+Pj4tCj4gPj4+LSNkZWZpbmUgbG9jYWxfaXJxX3Jlc3RvcmUoeCkgeyAg
ICBcCj4gPj4+LSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXNyIGNwc3JfYywgJTAiOjoiciIo
eCk6Im1lbW9yeSIpOyAgICBcCj4gPj4+LX0KPiA+Pj4rI2RlZmluZSBpc2IoKSAgICAgICAgICAg
X19hc21fXyBfX3ZvbGF0aWxlKCJpc2IiIDo6OiAibWVtb3J5IikKPiA+Pj4rCj4gPj4+Ky8qCj4g
Pj4+KyAqIE9wdGlvbnMgZm9yIERNQiBhbmQgRFNCOgo+ID4+PisgKglvc2hsZAlPdXRlciBTaGFy
ZWFibGUsIGxvYWQKPiA+Pj4rICoJb3Noc3QJT3V0ZXIgU2hhcmVhYmxlLCBzdG9yZQo+ID4+Pisg
Kglvc2gJT3V0ZXIgU2hhcmVhYmxlLCBhbGwKPiA+Pj4rICoJbnNobGQJTm9uLXNoYXJlYWJsZSwg
bG9hZAo+ID4+PisgKgluc2hzdAlOb24tc2hhcmVhYmxlLCBzdG9yZQo+ID4+PisgKgluc2gJTm9u
LXNoYXJlYWJsZSwgYWxsCj4gPj4+KyAqCWlzaGxkCUlubmVyIFNoYXJlYWJsZSwgbG9hZAo+ID4+
PisgKglpc2hzdAlJbm5lciBTaGFyZWFibGUsIHN0b3JlCj4gPj4+KyAqCWlzaAlJbm5lciBTaGFy
ZWFibGUsIGFsbAo+ID4+PisgKglsZAlGdWxsIHN5c3RlbSwgbG9hZAo+ID4+PisgKglzdAlGdWxs
IHN5c3RlbSwgc3RvcmUKPiA+Pj4rICoJc3kJRnVsbCBzeXN0ZW0sIGFsbAo+ID4+PisgKi8KPiA+
Pj4rI2RlZmluZSBkbWIob3B0KSAgICAgICAgX19hc21fXyBfX3ZvbGF0aWxlKCJkbWIgIiAjb3B0
IDo6OiAibWVtb3J5IikKPiA+Pj4rI2RlZmluZSBkc2Iob3B0KSAgICAgICAgX19hc21fXyBfX3Zv
bGF0aWxlKCJkc2IgIiAjb3B0IDo6OiAibWVtb3J5IikKPiA+Pj4tI2RlZmluZSBsb2NhbF9zYXZl
X2ZsYWdzKHgpICAgIHsgXAo+ID4+Pi0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18oIm1ycyAlMCwg
Y3BzciI6Ij1yIih4KTo6Im1lbW9yeSIpOyAgICBcCj4gPj4+LX0KPiA+Pj4rI2RlZmluZSBtYigp
ICAgICAgICAgICAgZG1iKHN5KSAvKiBGdWxsIHN5c3RlbSBtZW1vcnkgYmFycmllciBhbGwgKi8K
PiA+Pj4rI2RlZmluZSB3bWIoKSAgICAgICAgICAgZG1iKHN0KSAvKiBGdWxsIHN5c3RlbSBtZW1v
cnkgYmFycmllciBzdG9yZSAqLwo+ID4+PisjZGVmaW5lIHJtYigpICAgICAgICAgICBkbWIobGQp
IC8qIEZ1bGwgc3lzdGVtIG1lbW9yeSBiYXJyaWVyIGxvYWQgKi8KPiA+Pgo+ID4+bGQgZG9lcyBu
b3QgZXhpc3QgZm9yIGFybTMyLiBTbyB5b3Ugd2FudCB0byBpZmRlZiB0aGF0Lgo+ID5Zb3UgbWVh
biBJIHNob3VsZCBhZGQgI2lmZGVmIGhlcmU/Cj4gCj4gWWVzLgo+IAo+ID4KPiA+Pgo+ID4+QnV0
IGFnYWluLCBjYW4geW91IGV4cGxhaW4gd2h5IHlvdSB1c2UgZG1iKC4uLikgYW5kIG5vdCBkc2Io
Li4uKSBoZXJlLgo+ID5kc2IoKSBpcyBtb3JlIHN0cmljdCB0aGVuIHRoZSBkbWIoKS4KPiA+Cj4g
PiJUaGlzIGVuZm9yY2VzIHRoZSBzYW1lIG9yZGVyaW5nIGFzIHRoZSBEYXRhIE1lbW9yeSBCYXJy
aWVyLCBidXQgaGFzIHRoZSBhZGRpdGlvbmFsCj4gPmVmZmVjdCBvZiBibG9ja2luZyBleGVjdXRp
b24gb2YgYW55IGZ1cnRoZXIgaW5zdHJ1Y3Rpb25zLCBub3QganVzdCBsb2FkcyBvciBzdG9yZXMs
Cj4gPm9yIGJvdGgsIHVudGlsIHN5bmNocm9uaXphdGlvbiBpcyBjb21wbGV0ZS4iCj4gCj4gVGhp
cyBkb2VzIG5vdCBhbnN3ZXIgbXkgcXVlc3Rpb24uIE15IHBvaW50IGlzIHlvdSBhcmUgbW92aW5n
IHRvIGEgbW9yZQo+IHJlbGF4ZWQgYmFycmllci4gVGhlcmUgYXJlIGEgY29tbWVudCBvbiB0aGUg
Y29kZSB5b3UgZHJvcHBlZCBzYXlpbmc6ICJXZQo+IHByb2JhYmx5IG9ubHkgbmVlZCAnZG1iJyBo
ZXJlLCBidXQgd2UnbGwgc3RhcnQgYnkgYmVpbmcgcGFyYW5vaWQiLgo+IAo+IEkgYW0gbm90IGFn
YWluc3QgdXNpbmcgJ2RzYicuIE15IG1haW4gY29uY2VybiBpcyB0aGlzIHBhdGNoIGlzIGFsdGVy
aW5nIHRoZQo+IHNlbWFudGljcyBvZiB0aGUgYmFycmllci4gSSBoYXZlbid0IGxvb2tlZCBhdCB0
aGUgY29kZSBidXQgSSBhc3N1bWUgeW91Cj4gbG9va2VkIGF0IGFsbCBjYWxsZXJzIGNoZWNraW5n
IHdoZXRoZXIgdGhlIHJlbGF4YXRpb24gaXMgZmluZSwgYW0gSSByaWdodD8KWW91IGFyZSByaWdo
dCwgaXQgc2hvdWxkIGJlIGRzYiBoZXJlLgoKKFN0ZXZlIGV2ZXIgcG9pbnRlZCBvdXQgaXQsIGJ1
dCBhZnRlciB0b28gbWFueSByZWJhc2luZywgSSBmb3VuZCBJIG1pc3NlZCB0aGUgY29ycmVjdCBj
b2RlLi4pCgpJIHNob3VsZCBub3QgY29weSB0aGUgRnJlZUJTRCBjb2RlIHdoaWNoIGlzIHdyb25n
IGhlcmUobWF5IGl0IGlzIHJpZ2h0IGluIEZyZWVCU0QpLgoKRm9yIGV4YW1wbGUsIHRoZSB3bWIo
KSBpcyB1c2VkIGluIHRoZSBHSUMgY29kZSwgd2hpY2ggc2hvdWxkIGJlIGRzYiwgbm90CmRtYigp
LgoKSSB3aWxsIGZpeCBpdCBpbiB0aGUgbmV4dCB2ZXJzaW9uLgoKVGhhbmtzCkh1YW5nIFNoaWpp
ZQoKPiBBbHNvLCB3aGF0IGlzIHRoZSBleHBlY3RlZCBzZW1hbnRpYyBmcm9tIHRoZSBjb21tb24g
Y29kZSBmb3IgdGhpcyBiYXJyaWVyPwo+IAo+IEluIGFueWNhc2UsIHN1Y2ggY2hhbmdlIHNob3Vs
ZCBiZSBkb2N1bWVudGVkIGluIHRoZSBjb21taXQgbWVzc2FnZSBhbmQKPiBwcm9iYWJseSBpbiB0
aGUgY29kZS4gQmVjYXVzZSB0aGUgc2VtYW50aWMgb2YgKm1iKCkgYXJlIGZhaXJseSBkaWZmZXJl
bnQKPiBmcm9tIHdoYXQgd2FzIGRvbmUgb24gYXJtMzIuCj4gCj4gQ2hlZXJzLAo+IAo+IC0tIAo+
IEp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJv
amVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21p
bmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Tue Apr 24 09:17:25 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 24 Apr 2018 09:17:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAu4j-0004HN-2m; Tue, 24 Apr 2018 09:17:25 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=xasv=hn=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fAu4i-0004HI-9w
 for minios-devel@lists.xenproject.org; Tue, 24 Apr 2018 09:17:24 +0000
X-Inumbo-ID: 2285362d-47a0-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::60b])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 2285362d-47a0-11e8-9728-bc764e045a96;
 Tue, 24 Apr 2018 11:16:14 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=92w0a5MYZdU4LiepmelpGHuvRb/Pj079PwHHHpEfT50=;
 b=fHrUDtm7521f9BebTzLih7EfAoDSE3PoCN6roXlTAhSTsVy6nXFQmaEeo7ISU03+UyAGC4kqOwMnbFX/XolRm9fGlLXtmAQdtPimR0wTRk50qDfjlVrDko1fRX15f4mUdGvNb+mApNfQgQScr/4CmRAjlrug9LOewNduXYT7Pq0=
Received: from VI1PR08CA0104.eurprd08.prod.outlook.com (2603:10a6:800:d3::30)
 by AM4PR08MB0979.eurprd08.prod.outlook.com (2603:10a6:200:27::25)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.696.12; Tue, 24 Apr
 2018 09:17:16 +0000
Received: from AM5EUR03FT028.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::203) by VI1PR08CA0104.outlook.office365.com
 (2603:10a6:800:d3::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.13 via Frontend
 Transport; Tue, 24 Apr 2018 09:17:16 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT028.mail.protection.outlook.com (10.152.16.118) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Tue, 24 Apr 2018 09:17:16 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Tue, 24 Apr 2018
 10:17:02 +0100
Date: Tue, 24 Apr 2018 09:16:59 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180424091657.GB11102@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-15-git-send-email-shijie.huang@arm.com>
 <10d8ee18-d319-9c5b-a8e4-e7bdd51015fb@arm.com>
 <20180423084522.GA30544@ubuntu.shanghai.arm.com>
 <41170f9d-f3be-df07-6b3e-972763fc537d@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <41170f9d-f3be-df07-6b3e-972763fc537d@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(39380400002)(39860400002)(346002)(396003)(2980300002)(438002)(199004)(189003)(97756001)(50466002)(186003)(6862004)(8666007)(26826003)(6246003)(305945005)(478600001)(58126008)(55016002)(77096007)(316002)(106002)(54906003)(26005)(16586007)(93886005)(4326008)(72206003)(39060400002)(86362001)(7696005)(5660300001)(76176011)(246002)(106466001)(8936002)(33656002)(486006)(229853002)(446003)(426003)(336012)(104016004)(356003)(8676002)(46406003)(11346002)(2906002)(1076002)(476003)(6636002)(126002)(6666003)(47776003)(23726003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR08MB0979; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT028;
 1:9LblN2jgj5UmfedI9i4SNbwO0i+qE0kRJgC8AiJC00ErPCaTzRHKPd/4Ou3I582CF/rntrveEG4LYZQhJFsP38wg10C51uyYSgtAVFKyR7Na4SL5kfy4y0cnzI5dQyTY
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:AM4PR08MB0979; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0979;
 3:sYQaSQjeOSdAXKHvkzHfvM6boQrI4fT5yQr0fWlyjoppnBA3uQ7DpEc4u3YquBipQKjztwOD6AlcN2sObDml/LufU5BTjSZMrVuFrhSoRwqYz6/lmR/Ju+sJ4OQuSEgCOJKJ2QixnHnYBdgcLZgJw3j9PqyDUGfC1ByZL5z+KFDE1240pfKsvtOyQOT4OQ1fMOSnk8rSuGnES2u4Q7JUfdXX+OuJlMWYQ5vrEN/3EbI6dQWOU3Q1B6CAntWEw018bX508RWeER8HPKW1m/HbI0sUzVXELTyB8j/YAbsVbtDhDkpHVtcKw9ea9OLURCMffOVZUOQbjFuME2x3paRhGnRAQwVFoJCl3B6AiyFgq0M=;
 25:6rXET0S0o7U7GH3hCgHZN8NdWRX4/u/Ep/sGA+6dhHdXTG6XmlM4S2rRPQByf9qQFmYLPJsTuk8h1XzPE/apkmrEC0z0wYxer+RdwNoDWTPu0QgpeTuvqtWsCIAWEbks7/sZxbRzyGcJFYl1v9Smsv+J63Meb8+bUuJ5uzjAkXjwmVijKg1lSAokz0apAzSEasdMbABziwwsVA9f2jXWsB7DEZTSuR7oDpW8dyQt6/aEgWHqmrw/3hw2QPGp6HhWROEN+KgpKRqY9dQ6taIVCHBw/xcK9drRJbU9ihwnRb89PI2j107+8G/F63qgXcHigq71lY+lPUs5H1RqERmuzw==
X-MS-TrafficTypeDiagnostic: AM4PR08MB0979:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0979;
 31:X8K4tVc8vf4FdGfcuRS5CYDO3nE04gWSlzpDHfnemE8X9ninGvjvkWeQdL5foqUdIYd56QQkN07y/JynGLOU3RYGHYyPGRuSR2qSVIl6jSdeNRM/chPIgRAcSNpxrjEab38WTh8DfoU8gip0gF22trvsJrphir8778I/9ly9qbcJxs96VTaqFpIYqu5w+YZwywoSwrWKfZZfGVs6FWSOFM/3JM0Jv+1lk+VNAQlRq5w=;
 20:xT+TZpYcvHHUTUJ5n9JADzE6fBzkEqjC8SmdFzV7rHBcVHtNNgYP7ZpkHNvgptHfSenGxOgWNRtEjd3rdei1OgkFhi4vVfz80ZhGvWMb8YdGlscDbA+2dNpP0AAqmo3VOGYeUcgAzoVZXrACroM3+pwb4NLqxz44nxANaDM5SU8fZa7RfuLJoN2n8DsaCrzHQ1t9YSo0HF29JWTlS42RjvVekI3/V+nOU731zdGpn1e9XWJM4gjT6Xxrwm3ijZDYbHdtMyjwE95/uqq8dTnqwxUEDFqcjuafEUcTzltRoeCSrVEqZ7D5RAgEug6bzZBUdoIDh3QPAbZ84racV0M1ry6H0WfraEo3y4NpJ+ioMeA=;
 4:Vsq77qJzFVdc+XcLEcZiUZyS9sYMA5gu+zNIEuFabbGry/RQP4j3Ar1VLVBVpHlz2v1H3Crg2SZXNaF7+XLuVs78EEuwteBpqzByU3jqWR1AYQuATUXvFigtVXRQcdVEKSvrEDZ4skKlZUwkWc8cM7asV2PqfiCI9InZMfVutntzWhAi9RAFGSOpYejzwfNUHidq/Vje2pf8wz1rs3axaOrr41FKq2Mlyzs403mAjPgXXBQz3/loraIyE0wjyUASDuX0KxvwH57BVXS5ra8ZFQ==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR08MB09797C2E25582724255D6B5F84880@AM4PR08MB0979.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93004095)(3002001)(3231232)(944501410)(52105095)(10201501046)(6055026)(6041310)(20161123558120)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(6072148)(201708071742011);
 SRVR:AM4PR08MB0979; BCL:0; PCL:0; RULEID:; SRVR:AM4PR08MB0979; 
X-Forefront-PRVS: 0652EA5565
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR08MB0979;
 23:NWoz/M2hv7YNx9qJhF3kjUcw983zPSYnHHQh1epqU?=
 =?us-ascii?Q?KIw1PcoQ7E//D6H9xNbCds1zrLLx4oa+zvZpORCHwAuUK9Y3GdUw4qg1GXoW?=
 =?us-ascii?Q?0qcS0SwpOAVFwKHLb+S9cxLT2pB8xE41vJxgfM5COufrLUPCLOoE3vyTggl7?=
 =?us-ascii?Q?SI3/xXijSrh09VUvmQv8/TJFNccECKmWNR2qec5ObKZMuQyYLuHbTd/t/6Vc?=
 =?us-ascii?Q?SCdBpgQf/vKp4MudyDLu3cAiz6XENsyLxw7Ia9Yyg9N6WZDeIZm8Jhe4jVoz?=
 =?us-ascii?Q?5gNYFrirnkFRQpkAgsCyx1YR7ZTix6PIjYAm4A1k3mYKH9uDK03Av4G19cBO?=
 =?us-ascii?Q?x8BaNyJ80zIuXU9vcNae8QEvJUhhHybqS2N2ozi3D0W//7wIzW157XNG4WM5?=
 =?us-ascii?Q?ZmjEYpEFCXXZ9DVpgnvd6xqhGTCiB7ZZqFztXsCfPB7r1imjvFEA9DuDwpIU?=
 =?us-ascii?Q?DhpMGSf6knPQ6fGjwtQyhdYd0DSG4eWQAB/w90UsYLbZPsS2Zf8WtOnC+PQn?=
 =?us-ascii?Q?edeTz4A3ye3USksr6V6HnSy9hkdrlzAiAghf+ld0rQkj7B2uG+ISCaLwMZ12?=
 =?us-ascii?Q?TEaMRQKlA02XppRdlUHBx/lN8/ubdNTBn4r5iobhh9zvY9orI3VzfARnkfr8?=
 =?us-ascii?Q?BiYa0aiIlc4TesbwmuGLmuSUzh5vkCWq2izPG10V6dFGCtigU8jjeNMExT5E?=
 =?us-ascii?Q?MEXzQ1iG0V93IrG1Pl134eFmX64NyeWl4pvQWBH045HjeqBpa8WTOlqXApGZ?=
 =?us-ascii?Q?ChOtuqspAFF6fDUGDNkjTD+erL2EyPwH54D9Asf97YyL7EJHK9f9GF/YseKf?=
 =?us-ascii?Q?WwP7wh0FjuvM9gSuyLq+OqjolbWssG8RbjBlIfKg2F6S2gIUe0Jh6GHqWBNc?=
 =?us-ascii?Q?ICbnVcta96WF1k3V0WiW2+yITh6AuBtpSwBpyJPhQnCXxS4SE1/yS3tW6aAm?=
 =?us-ascii?Q?EISAqHnpM729SWhjnzWLL6IIm7eBzPBifRjNln5dYWxLNY5DCkJE873szXi2?=
 =?us-ascii?Q?QeZkNpCE2A/a4M28yNUqM9AnWy2tc08lBYRc6uwxFJezJ81a3zI2UlIXMMsi?=
 =?us-ascii?Q?2io8rdqaP2GJYuor5Ul49LZ1QHw/iSdKEOIAhSmtJvRzuHPsTf4BHqLHYmrj?=
 =?us-ascii?Q?3uwxmYix2Jss0vjrQQGFXovGoeCWha+dfjCpRcTkkHhCzlFQEN4D1bmPJYRd?=
 =?us-ascii?Q?Sc4SDHusiJ5EpIn3FLFfBUVqYYGqSOVSzHiLnDm90W8izsVNVnEHAqblfwKe?=
 =?us-ascii?Q?Pn8UZX7QJ799YTfp9welCuIPrrQvzntod3ni5g6?=
X-Microsoft-Antispam-Message-Info: A6/9sj9OHp56BQGxUJGTUKNacpRQd1OKjCCf01JalGn911CQEwnqDXBBm6R674+yXj+D0KSlYPdPLMAhrduJ566vZa2jvIM/duUktQ2tP1MDssCWd0tBbzuKNjk2aUK9+SGcDvy0KN4Qw0fcryn9t9I/qzqfioqbGS/FfzFO+wK/R6qnPTpBd3iDisFRwejbmMSMKRIjxGIpkrAx2Gqe24gnh2Ahf2armHcPumzK2X9ZROGaHh835XLTHyfSMFzk83ALShiRiZpvl0OyOxjiWQAh7hWzdzYJMNQtoP8T9bVZhm4JTggy8eXqvy4GfBM17ACALfqVzmSWwyeG3gNWoc4KcFAJqphyA5etZBpuiIjTEKjruwW33iQmvnH9Ruf3X2A9iwxGXbsvwPvwXVv0ngYayA3KH550HBGDY5UQd68=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0979;
 6:4HnlXEn5YlyZ26Kao9r5pc2k/b86r3cuLi3x0IM63pLqWUJnDYlJplH7boYu8Y7qpz6VxckI1wT5Bzmv73zCFs7jC2Qgr6xYfVauGPAbYw7nRMCRK+O2wnXv+3d035cV09jFPL102w8S+GQyeRetPdJOtTcIcjelxKW92tRN1HxLt/xAcyocqpc2OxWtYIEg/ePk74dWqDi+8Fq710GZCgmqzcwILcUKk10padSe8KuxEBnk76NQpeVBg2wEW+rRpTCi88mzEgtPiSufPXlSNFG60rUSLtiK8H/SMoTMzHs4UsuCuzemYBnRxovoWC3/TkWfInvcMhhgycmxb/x6AyviHJWomhjqgbXWSI4hW1vskrgRzWU5tNbmQjQ8JYOa62Iaji23tEr+yyeVZjNmS5v8DHMR2WaJ8Gq6mGtEFcgyPXaCJ897wQzsLizk+FdfFaRj8I/L6S/siAthHL3f9sSGMMoah+XTli+/eex+LDGoEr5jTb5xMyd6y119aSHk;
 5:j9+iyffMXQC5xCBFOwGUyyw3405dWQtZjLDPUXo3uLSpPG4EGe6/XsqfPO5Vh0zm2P7nT4wWQZqdVYMIYxco09G4D1+ZLHRTQfjCQo7GbcRfqg2OsgqMxxXA8iyR2DpWgH1p5N3R53gXEWL++6AvOB8j8l/HHAPn7jHxkbWTJ5g=;
 24:DKlvZqu6wM3HyXZIBRqlBj/XZi4gZ2RmctjgbZPYxlUv9cZsmDEeMrZqJSp7idmBw2swN+VBfy2Mf0Xr7BMWUntWUuEv0atO0/CsMMDpnNY=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR08MB0979;
 7:hsnzljlP1joNh3522DoGSOa3BRPpH1LJxmxZ1mLnLEtBH7lTvCZyN6Y26/VYZc4JBmKHOqqD43k+HmYWr4ej06FwbjRk1epbpVeaOXlUxLf3GcOrqMXPZUkIKNtHWa3ASlm0m2M+IuTlF3JmIoIrXicJyXdyyUkYycFh/0fSGte8AcTV1XxY/iCmxty5z0M9xczsGy7EpFhMjs1OpYmW6PSm52niy0xxtYxsPdCXkrSJz4OdUyzTnppanz97erl7
X-MS-Office365-Filtering-Correlation-Id: 203165e1-c7b4-4c2b-51c8-08d5a9c42c31
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Apr 2018 09:17:16.0407 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 203165e1-c7b4-4c2b-51c8-08d5a9c42c31
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR08MB0979
Subject: Re: [Minios-devel] [PATCH v3 14/43] arm64: time.c: fix the wrong
 format for printk
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gTW9uLCBBcHIgMjMsIDIwMTggYXQgMTI6MDM6NDhQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+ID4+PiAgI2luY2x1ZGUgPG1pbmktb3MvdHlwZXMuaD4KPiA+Pj4gICNpbmNsdWRlIDxt
aW5pLW9zL3RpbWUuaD4KPiA+Pj4gICNpbmNsdWRlIDxtaW5pLW9zL2xpYi5oPgo+ID4+PisjaW5j
bHVkZSA8aW50dHlwZXMuaD4KPiA+Pgo+ID4+V2hlcmUgZG9lcyB0aGUgaW5jbHVkZSAiaW50dHlw
ZXMuaCIgY29tZSBmcm9tPwo+ID5UaGUgUFJJWDY0IGlzIGRlZmluZWQgaW4gdGhhdCBmaWxlLgo+
IAo+IFRoaXMgZG9lcyBub3QgYW5zd2VyIG15IHF1ZXN0aW9uLiBUaGF0IGluY2x1ZGUgZG9lcyBu
b3QgYmVsb25ncyB0byB0aGUKPiBtaW5pLW9zIHJlcG8uIFNvIHdoZXJlIGRvZXMgImludHR5cGVz
LmgiIHdpbGwgY29tZSBmcm9tPyBJIGFzc3VtZSB0aGF0IGl0CkkgdXNlZCB0aGUgY3Njb3BlKGlu
IHZpbSkgdG8gbG9jYXRlIHRoZSBQUklYNjQsIGFuZCBpdCBqdW1wZWQgdG8gdGhlIGludHR5cGVz
LmguCgo+IHdpbGwgY29tZSBmcm9tIHRoZSBjcm9zcy1jb21waWxlciBidXQgSSByZW1lbWJlciBN
aW5pT1MgaXMgYmVlbiBxdWl0ZSBtZXNzeQo+IHdpdGggc3RhbmRhcmQgaW5jbHVkZS4KPiAKPiA+
TWF5YmUgV2UgY2FuIHVzZSB0aGUgUFJJcGFkZHIgd2hpY2ggaXMgZGVmaW5lZCBpbiAiYXJjaF9t
bS5oIi4KPiAKPiBOby4gUFJJcGFkZHIgaXMgcmVsYXRlZCB0byBhIHBoeXNpY2FsIGFkZHJlc3Mu
IFRoYXQgdHlwZSBtYXkgY2hhbmdlIGluIHRoZQo+IGZ1dHVyZS4Kb2theSwgSSB3aWxsIGFkZCBh
IGRlZmluZSBmb3IgUFJJWDY0IGluIHRoZSBtaW5pb3MgaGVhZGVyLgoKVGhhbmtzCkh1YW5nIFNo
aWppZQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWlu
aW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcK
aHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZl
bA==

From minios-devel-bounces@lists.xenproject.org Tue Apr 24 09:27:48 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 24 Apr 2018 09:27:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAuEl-00053K-7x; Tue, 24 Apr 2018 09:27:47 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=xasv=hn=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fAuEk-00053F-7Y
 for minios-devel@lists.xenproject.org; Tue, 24 Apr 2018 09:27:46 +0000
X-Inumbo-ID: 0f2acae9-47a2-11e8-8249-2fda3a446a53
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [104.47.0.81]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 0f2acae9-47a2-11e8-8249-2fda3a446a53;
 Tue, 24 Apr 2018 09:30:00 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=O/oCxjMvenvoCr1EYmcNmsfp3L2ysDyj+cxp5z2s4wA=;
 b=bHD6izvwCYo8xqmppWZ7PqyF558Tt+ER/Wcnp2jXz28OapOZ2rKfgLHqTa15pSYUZ5PG274AT4+xBIubPX5nZMWgTV6NN3wpuSrgZBwlfi2BxunLFOK5sydmH5sIikQ5leVXiz1cPNufefBjInt7Bkb/FpGxufWXriwJy7CNs6Q=
Received: from VI1PR08CA0164.eurprd08.prod.outlook.com (2603:10a6:800:d1::18)
 by HE1PR0802MB2427.eurprd08.prod.outlook.com (2603:10a6:3:df::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Tue, 24
 Apr 2018 09:27:36 +0000
Received: from AM5EUR03FT050.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::208) by VI1PR08CA0164.outlook.office365.com
 (2603:10a6:800:d1::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Tue, 24 Apr 2018 09:27:36 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT050.mail.protection.outlook.com (10.152.17.47) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Tue, 24 Apr 2018 09:27:35 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Tue, 24 Apr 2018
 10:27:19 +0100
Date: Tue, 24 Apr 2018 09:27:16 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180424092714.GA11701@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-20-git-send-email-shijie.huang@arm.com>
 <56add9e2-c11d-65c3-1d61-d29c65d5af00@arm.com>
 <20180423084936.GB30544@ubuntu.shanghai.arm.com>
 <e2452065-e182-7789-5e0d-0e8282cb4fd7@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <e2452065-e182-7789-5e0d-0e8282cb4fd7@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(39380400002)(376002)(39860400002)(346002)(2980300002)(438002)(189003)(199004)(76176011)(7696005)(1076002)(106466001)(33656002)(126002)(86362001)(476003)(46406003)(486006)(23726003)(229853002)(77096007)(47776003)(50466002)(246002)(26005)(186003)(446003)(8676002)(11346002)(356003)(426003)(6636002)(336012)(6666003)(97756001)(8936002)(16586007)(316002)(104016004)(6246003)(8666007)(4326008)(58126008)(55016002)(54906003)(305945005)(53546011)(93886005)(5660300001)(2906002)(6346003)(39060400002)(478600001)(6862004)(106002)(72206003)(26826003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2427; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT050;
 1:6+EmkpIzGMN7LImR9khZc48nPjjfIV21SN8WVppXBC5RLiZ/mwfafVBncc4X9QT4lzj5iuDdm2uUH/sKkzmUtPHHnZq38f+CSHPGOIpAxvt0ahznqEHEtjPgi9k8wveu
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2427; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 3:oCHrGAZ4T4N1WY8LNjyqfy+1DIPO2YR0RRxPsIkPH8/jQMkyYAYbQ6Z2QOEPND7NXmDwBiIQ9590FIQCd0WjIEMlAS8Oi1QTTI2slQ/WYdIxoPyymoIiDk2ZQ3jqaVEeaqEqfigbs1K4esRfJFyk8n8AuBqLrll2JtZhNhKBRXTFbwp0xiK7vj8KYJalkZL2k24vzF3kHY15J5Yd7JbzZrZ0o32vz56zt6NO8Dc/zuVTTQYG7qLTeJaHv9Qhk3r1eVy+iSQai1jmBxu31UrxsWsEuutdkuFJLs+IHFt7L9QfS/4kCqPIWQOiUq1yUAehYVgzmYZguYFNwWA5P9aEIThcbRck74x2+Xx54hnAFhE=;
 25:j6RqBkNayG111M2VAhx45hPdiDsfRUZOo+Qciw8zgj9E/WkwY0EHxFH8M1uJnTEZLSklfKaqh5qKSUR6GPfyZyDT38tKtLQLIf4DdTC13uM07XhbovOCwkazmg6HRyd98WrHcRYmNo8xFqnSohh6JKtURMc8rCvnXIwWH0woc9I6IdJwsnWXjujORX+fHHETT169FG7n9i4nnjKDAIXU1fJwr2852Sq3r1DuvaS4/VUQWkKFDefHKCD44C2iujezYPMa1duSGJ86A5i2R5HFEPQsj3Dfw3gWW9B9CFCeeXdiVce2cSf7B2P2jUvb8ELLgbsGCDbcRgL/+naCH+/tIw==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2427:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 31:bDb21uPEw4IpY/ApX6IicvIC9OPkPoZHsjewf72Orv4xpalymJYHJPKPVv3s+ornPVpr+x9oW3jWXlcymnarjAU28owooqrZW+ssMSW4wwFlFcFIzs6mTLgxcaGfw3mJ28MfJG9wP7rPeDsHSLYSvC/XSNe1sYIpyNmWGUZPpVOWVm4stv2JqUxcM+lnSY242BuPLAlS9iymPbg9tWdTDsGcCLMpRcbFxtBWNyOo20A=;
 20:Hj2xayDSRqIzvVDslJSWHBq5kxZUqaAksEySA3CYMZ9Imk4C7IruydisWZ98cgOFqf3JKIGbMj8J3+J2k6zFREgToX4o4TzO4LCx1VcxFESj2jkZsy2sDB+6T6jhHCubGVokA9lWwuPRSnrqBGSj0Xp+BrsQKvjjQk3TcFygQJg3NL5r9QnFe6Ke2dny7Qzha3n4WNW6gpD/ANModD7lpKUixNcG0QXPxyFyWx+9xb3IB3dDqDVbwmbf3WinX7lpWMp/P7ifwznvqjoVZTASad+2x3n/66zdD6xY0LPRzuTHE60uHN6w2GvL8k4P0a7AaOIUQiI/DUOvjG/CqMBrNv1k4zvqbTBCIIoS/1jN/14=;
 4:GywPvv/LHWChbHtYfgk5AZMhmzuGOqCB9LlCaql3wGvqUbihM8+GHS3VhADGgavrq22P/EP5kNQ5HTWO0NSdE7IA39ASC/6+Cec6Tp/0SiMMKV9sAkqebbUqKqF4tP/h8xLHK1cpj39Oo24HuO8aGgJoumbxgcSJGQZfr4qNoka4+VGyNoAIVXw/IOzj/7O/29BiUTyqhRBLEQOCcz1c64VEHhB+xhi4kVh7SRWpBeOMvCY1qqONzrUsRuttApkH4Yrl3vN3KBMhK1xQhrdcE2+MXLg0ZgZ03+/XSIersa77bWO6E8tzod4pOPUgiZAk
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB2427EEF8BA2CA4AEA05DF63184880@HE1PR0802MB2427.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(93006095)(93004095)(3231232)(944501410)(52105095)(3002001)(6055026)(6041310)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2427; 
X-Forefront-PRVS: 0652EA5565
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2427;
 23:xV4DE3mSYwQE/avIfTRSrnbMVxpQoeboYTNSRVy?=
 =?us-ascii?Q?oDCttBBbww8hVufuWWAcNmKkgyMJLQwp/aInFVj3BnoLQOkP7oQFVr97glon?=
 =?us-ascii?Q?OrSPqG+rvVczZkQOHIKdthkKunFenCMOoCRAcB5bLuCM0JfQzCa/iHcqq0de?=
 =?us-ascii?Q?YOwj929NndW5rs4slVqlLSSB4j4yNFIgqWxPZBNp4LDBRXMcoW4CqoKrWPN/?=
 =?us-ascii?Q?80gSAcXonJuGfdFmXWIplINWBBZ6vi2weVu/+8MMgFWdTA7TY4rKIWGj2o+W?=
 =?us-ascii?Q?Jw9zwaSqRqepJUuB+RfbKR4jxEDDGjw0zrTfm+HIJhx3+ZKiw25xToEyAXpt?=
 =?us-ascii?Q?vYnKnZrTixVzXsiO65uM2jORAFTnfnISadJGLXKKYs6SVVS64ofEU7msFIXZ?=
 =?us-ascii?Q?gI8cZmmEX33EQx5cyFpNhYK1XAGZWo21thU0ABi2Y+SLgeunIHTKQgqOLN3m?=
 =?us-ascii?Q?R7D7SWll130URfE5s/JJeaDUP36VOKNxPoBRUPNUCxouzWxsnxA+CLh9Qpun?=
 =?us-ascii?Q?JsD6MTPELK/05lMyyt44v1MCrToQ/+vdTUjjLbYYVx/bUquDdENxPIcoIIgE?=
 =?us-ascii?Q?5qZh1cIBCQHn8H4RVanlbmyCOUEiJNofRf8YOJyFLN3sor4fJ+uN7KVoY/Pk?=
 =?us-ascii?Q?/0c7eQesHYaVWIaSxQZh/z18uQctN4a7mMMP6NDvBoJDwshRstMbQbzsujlt?=
 =?us-ascii?Q?nUkJtATy6SMmi7eBt+/u7UNWAW5gcSt7Ua0yPUc+pbKI1Urd/Iy7YmuuVI5H?=
 =?us-ascii?Q?M/VG46XxWVw7I0KzuL+6lujIXHzBLwd6WpgfkFYj+2o2CDaGacw69dXoj7Lv?=
 =?us-ascii?Q?aRwsj9tDIF/qK4/Aw1tAM2w4LqNiQv8JRv/b1pL4iTurC8QkiCDEIgZOhwWF?=
 =?us-ascii?Q?L92NLpPZgI6IrVU6/8ycI5dW+ljX3UagMysJOiiwvdkaIpyyQpZKnzSOYH9C?=
 =?us-ascii?Q?/Fq+22gDtN/TK1qdQ7Mi8sKj1YV9rbdnFTtLMmoy3Rm4fKrCT1S60HjJR2C8?=
 =?us-ascii?Q?YPyVppZO6RtAhnETvAWOPNaW4iFQnFfT19lN/msDOfzdlpLeQLNgqUJrddt8?=
 =?us-ascii?Q?5pY6Q+bDJ57uwWfheCH50ZZMHcZPSU8yWPZpaUM5CDaa7ZJca3WXdC5Q+LMF?=
 =?us-ascii?Q?MB+YqHYA3jjCTD+adNmG1TajZvKx8VqKLVp1VCt4di9CWsntlJlqNfEkG3FC?=
 =?us-ascii?Q?X7MTyTc8MyTsv5T1GZCuxLeO5hjEnnNmWsLYbkyHGrITGsSXyMdb13dMreTq?=
 =?us-ascii?Q?weGrBzs+nrPuJxBK/RcZBws27EbTCa+/fREuxEK6qW5XAudZVEw81IZRqxU6?=
 =?us-ascii?Q?tIUB+Dg59U9lnP4xm7nsUJtw=3D?=
X-Microsoft-Antispam-Message-Info: WUWBHJQ2x5EP6dv9cFfBMRzHGMfeiEgzlIgjETXN3WcvwybF9ZvpuWoX/3QlEykOZ1lavLvbZWeqPPjIEqQ8mhfvHLP1iA319LKOTTwr7/x5XHJZlVAA86RGg/goxNIqisy3Bff4ldM8w+LO7eOU6s1ly0N1SQYgg1Rpmt9EdM33jjZe1oUJfqpYd2DKlRch4iThBas1G2JMgTrQxr2xcfAshxbcLBcVc+ppQEjVpnBbyvtOkVurCYs/XpRun1Ht46CVyrtL0RVLYc+JKdMZ1fqCZFyP77EIeOeWXxZgSewvVKYK0BizxkhHefvihlrcwVZ9fbDpt5qwc1RK1NVK6Lm0j8C/3AFIh7ZmrH8Y5A9lhVPHINfc/tm+5ylUZ5T9VLDQpqeWMgZ3FEg6ksmG1JVsUWPGU6bGQwivzwO2mOU=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 6:YEo4A6zDiPu1G0pSEkBwoukPAxxJIpuQVn+cSFmS+rNJrJh2NneHGJeCxdfeF38zrfybViEfqIcHq8jNZcemot1h9Sp9fbJplRdrjeZwQ2wQAJF4HRnSOV5Trx7ZKfJ+Chb5cYd+rk0v5lGP5ExPLR8ggLW91zaeVSK7NwyfhIstFqLOlCLrM7gz2q9ISUK2Z1reeJeDNpVsF8FBkfq57DMvNOt3nF1UI8a0HmSw1goi0KZduLEJ6Rcw/ZHFDyTqm4lah33aRiVMU4ueRPTjH+MT89qcEUMGKNUwYCbAF+odWPUIzssvb9jqGroyQKklqaGQL/CaFhLMRUaHDDIh6q1dk1GxYwUJn5dzLy7zJzdxoEP/yME0sSzUFEtCPCGluiYSZny1+Gw3cDtM2S7L2Bidya9n0dv9+PMnZATq8+9ed+iMyCsyKna3//ugdYFA9cTcZHgOyHLNzIcqfkzqGSBfWGglGlKCe2DzJPoMarTkRu1I5bAbXYNHavPMvUSd;
 5:jWFgrtBx2WEUIkcnrzE+VHzZGe+5g36kyCAOhdkPH2yqdeZnAf3qB2OFHorJnVR5tVD8NnGazmKfYSDBsNUAAo2kAX31eX/1CxsA8+hi0XbwgO8Jmxx+4kFgNbntOmhzpF0Vjz9usQzzEdB8jFAwWvoTi9OPpuUBoiE6z8t0hCY=;
 24:uqVW35ZpzSGJNBZErDs/DPC/SK2bUPgm0HLpmTTbTz+JZ7jmdg2z0l88HguJxTQ8DoP51A18fZ3nE27HWb5E5ZykFUnfHTK3wiu94gkieSQ=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 7:3JS6oSht7pt3DoW+czn7mnRcKxAa/g1P4xSUn08YOKcCeSVm1OYsW/O3NEiFLpDu7zHjYRHOICY5GalE4VcHRVe+24RD3aVZ1YDfAbxrYiqdRkpZLuVhOiEX0xzlAd9fNGYlHzz/m+vMUhhF03EU3s+RXtYAgetfA7SYpoAG4z1IsCODlNfD2smHwKz/o/7oSVQ/zaigwXGmRyyjoqVyVLb5eJ5ugB1nVVxo7Xsfj0WABaq/z/1bjOCi1pA3qkKb
X-MS-Office365-Filtering-Correlation-Id: 00cfdaf7-5e36-49c3-dae2-08d5a9c59d84
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Apr 2018 09:27:35.6830 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 00cfdaf7-5e36-49c3-dae2-08d5a9c59d84
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2427
Subject: Re: [Minios-devel] [PATCH v3 19/43] arm64: add shared_info support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gTW9uLCBBcHIgMjMsIDIwMTggYXQgMTI6MDU6NTFQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpIFNoaWppZSwKPiAKPiBPbiAyMy8wNC8xOCAwOTo0OSwgSHVhbmcgU2hpamllIHdy
b3RlOgo+ID5PbiBXZWQsIEFwciAxOCwgMjAxOCBhdCAwOTozNDoxOFBNICswMTAwLCBKdWxpZW4g
R3JhbGwgd3JvdGU6Cj4gPj5IaSwKPiA+Pgo+ID4+T24gMTYvMDQvMjAxOCAwNzozMSwgSHVhbmcg
U2hpamllIHdyb3RlOgo+ID4+PkFkZCB0aGUgc2hhcmVkX2luZm8gcGFnZS4KPiA+Pj4KPiA+Pj5T
aWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+ID4+Pi0t
LQo+ID4+PiAgYXJjaC9hcm0vYXJtNjQvYXJtNjQuUyB8IDMgKysrCj4gPj4+ICAxIGZpbGUgY2hh
bmdlZCwgMyBpbnNlcnRpb25zKCspCj4gPj4+Cj4gPj4+ZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2Fy
bTY0L2FybTY0LlMgYi9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4gPj4+aW5kZXggOWViN2VhMC4u
ZmEzNDA2ZiAxMDA2NDQKPiA+Pj4tLS0gYS9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4gPj4+Kysr
IGIvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+ID4+PkBAIC0yNSw2ICsyNSw3IEBACj4gPj4+ICAg
ICAgLmdsb2JsIGJvb3RfbDJfcGd0YWJsZQo+ID4+PiAgICAgIC5nbG9ibCBpZG1hcF9sMF9wZ3Rh
YmxlCj4gPj4+ICAgICAgLmdsb2JsIGlkbWFwX2wxX3BndGFibGUKPiA+Pj4rICAgIC5nbG9ibCBz
aGFyZWRfaW5mbwo+ID4+PiAgICAgIC5hbGlnbiAxMgo+ID4+PiAgYm9vdF9sMF9wZ3RhYmxlOgo+
ID4+PkBAIC0zNyw2ICszOCw4IEBAIGlkbWFwX2wwX3BndGFibGU6Cj4gPj4+ICAgICAgLmZpbGwg
IFBBR0VfU0laRSwxLDAKPiA+Pj4gIGlkbWFwX2wxX3BndGFibGU6Cj4gPj4+ICAgICAgLmZpbGwg
IFBBR0VfU0laRSwxLDAKPiA+Pj4rc2hhcmVkX2luZm86Cj4gPj4+KyAgICAuZmlsbCAgUEFHRV9T
SVpFLDEsMAo+ID4+Cj4gPj5XaHkgZG9lcyBpdCBoYXZlIHRvIGJlIGRlZmluZWQgaW4gYXNzZW1i
bHk/IENhbid0IHRoaXMgYmUgZG9uZSBpbiBDPyBPciBldmVuCj4gPkkgdGhpbmsgd2UnZCBiZXR0
ZXIga2VlcCBpdCBoZXJlLgo+IAo+IEFzc2VtYmx5IHNob3VsZCByZWFsbHkgb25seSBiZSB1c2Vk
IHdoZW4gdGhpcyBpcyBzdHJpY3RseSBuZWNlc3NhcnkuLi4KPiAKPiA+V2UgdXNlZCB0aGUgc2hh
cmVkX2luZm8gYXQgYXJjaF9pbml0KCkgd2hpY2ggdGhlIG1lbW9yeSBzeXN0ZW0gaXMgbm90IHJl
YWR5IHlldC4KPiAKPiAuLi4gaWYgaXQgaXMgdXNlZCBpbiBhcmNoX2luaXQoKSB0aGVuIGl0IHNo
b3VsZCBiZSBkZWZpbmVkIGluIEMgc3RhdGljYWxseS4KPiAKb2theSwgSSB3aWxsIHRyeSB0byBk
ZWZpbmUgaXQgaW4gdGhlcmUuLgoKVGhhbmtzCkh1YW5nIFNoaWppZQoKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlz
dApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Tue Apr 24 13:30:07 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 24 Apr 2018 13:30:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fAy1D-0007Cr-PL; Tue, 24 Apr 2018 13:30:03 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=lwq9=hn=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fAy1D-0007A8-Dv
 for minios-devel@lists.xenproject.org; Tue, 24 Apr 2018 13:30:03 +0000
X-Inumbo-ID: 6d5441c9-47c3-11e8-9728-bc764e045a96
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 6d5441c9-47c3-11e8-9728-bc764e045a96;
 Tue, 24 Apr 2018 15:28:52 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id 0934DF200C;
 Tue, 24 Apr 2018 15:29:59 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id z1szoODucsdR; Tue, 24 Apr 2018 15:29:58 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id D5E90F200A;
 Tue, 24 Apr 2018 15:29:52 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Tue, 24 Apr
 2018 15:29:52 +0200
To: Ajay Garg <ajaygargnsit@gmail.com>, Wei Chen <Wei.Chen@arm.com>
References: <CAHP4M8X951WK2d2N9M+o=029PO9382t5M1X2Sh5iyBzoonrEOg@mail.gmail.com>
 <CAHP4M8V4mPoM1CbuDCE2Pg+L7TcNz+nPLzzeZt8bsHT5T_XOrw@mail.gmail.com>
 <CAHP4M8V1SN+4Rx7XjmbvgdH+Je-XaV0B0j8U=beP83j3QmMZog@mail.gmail.com>
 <CAHP4M8VSHMD5wK1bytCyGThnPyhbDxk0RKJw2DmJToFF+j3p1A@mail.gmail.com>
 <DB3PR08MB010767D001F98AB4539BECF29EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <DB3PR08MB010710D1E5A6E8A9C2EE49499EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <CAHP4M8V17pwNUkma_n5AzNyiTqD1uSwQFEFBx40Sf4hZjPdWzw@mail.gmail.com>
 <DB3PR08MB010772BBCBCC07EF035C65149EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <CAHP4M8W03Ci4ZhcuPuDnDDzypty_5up_iQgu_8VbM8PqueNKRQ@mail.gmail.com>
 <DB3PR08MB01070E552363DEAC8D43548D9EB60@DB3PR08MB0107.eurprd08.prod.outlook.com>
 <CAHP4M8U4ZfR8WxZX=Hhd9pOX8Y6ZhGVPdPQ1gQdK+1jdzBtnAg@mail.gmail.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <14d5543f-6a2b-51ff-d238-62a2d53c4b61@neclab.eu>
Date: Tue, 24 Apr 2018 15:29:51 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8U4ZfR8WxZX=Hhd9pOX8Y6ZhGVPdPQ1gQdK+1jdzBtnAg@mail.gmail.com>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [Unikraft] Static Libraries not being linked
 properly
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: "minios-devel@lists.xenproject.org" <minios-devel@lists.xenproject.org>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGV5IEFqYXksCgp3ZWxjb21lIHRvIFVuaWtyYWZ0ISBTb3JyeSBmb3IgYmVpbmcgbm9uLXJlc3Bv
bnNlIGZvciBzbyBsb25nIHRpbWUuIFRoaXMgCnNob3VsZCBjaGFuZ2Ugbm93IHNpbmNlIHRoZSBj
b3JlIFVuaWtyYWZ0IHBlb3BsZSAoaW5jbHVkaW5nIG1lKSBhcmUgYmFjayAKdG8gdGhlIHByb2pl
Y3QuCgpJbiB5b3VyIGFwcGxpY2F0aW9uJ3MgTWFrZWZpbGUudWssIHlvdSBjYW4gdHJ5IHRvIGFk
ZCBzdGF0aWMgbGlicmFyaWVzIApieSBhcHBlbmRpbmcgdGhlbSB0byB0aGUgQVBQTkFNRV9PQkpT
IGxpc3QuIEhvd2V2ZXIsIEkgd291bGQgbm90IGRvIHRoaXMgCndpdGggbGlicnQuYSBhbmQgbGli
cHRocmVhZC5hLiBUaGUgbGlicmFyaWVzIHlvdSBzZWxlY3RlZCBleHBlY3QgYSBMaW51eCAKc3lz
dGVtIGNhbGwgaW50ZXJmYWNlIGJlaW5nIGF2YWlsYWJsZSB0byByZWFjaCBmdW5jdGlvbmFsaXR5
IHByb3ZpZGVkIGJ5IAogIHRoZSBrZXJuZWwuIFdlIG9idmlvdXNseSBkbyBub3QgaGF2ZSB0aGlz
IG9uIFVuaWtyYWZ0LCBzbyB0aGUgCmxpYnJhcmllcyB3b3VsZG4ndCB3b3JrIChldmVuIGlmIHlv
dSBtaWdodCBiZSBhYmxlIHRvIGNyZWF0ZSBhIGJpbmFyeSAKd2l0aCB0aGVtKS4KClRoZSBmdW5j
dGlvbnMgb2YgdGhvc2UgbGlicmFyaWVzIGFyZSB1c3VhbGx5IHByb3ZpZGVkIGJ5IGEgbGliYy4g
V2VpIGlzIApyaWdodCB0aGF0IGxpYm5vbGliYyAtIHdoaWNoIGlzIGF2YWlsYWJsZSBpbiB0aGUg
dHJlZSAtIG9ubHkgcHJvdmlkZXMgYSAKc3Vic2V0IG9mIGxpYmMgZnVuY3Rpb25hbGl0eS4gQnV0
IHlvdSBjb3VsZCB0cnkgdXNpbmcgbmV3bGliIGluc3RlYWQ6CgpodHRwOi8veGVuYml0cy54ZW4u
b3JnL2dpdHdlYi8/cD11bmlrcmFmdC9saWJzL25ld2xpYi5naXQ7YT1zdW1tYXJ5CgpUaGlzIHBv
cnQgdXNlcyBjYWxscyB0byB0aGUgVW5pa3JhZnQgQVBJIGRpcmVjdGx5IGluc3RlYWQgb2YgdXNp
bmcgCnN5c3RlbSBjYWxscy4gRm9yIGluc3RhbmNlLCBwdGhyZWFkX2NyZWF0ZSgpIGlzIGdvaW5n
IHRvIGNhbGwgCnVrX3NjaGVkX3RocmVhZF9jcmVhdGUoKSBpbiBsaWJ1a3NjaGVkLiBQbGVhc2Ug
bm90ZSB0aGF0IHdlIGhhdmUgYSBwYXRjaCAKc2VyaWVzIHBlbmRpbmcgdGhhdCBlbmhhbmNlcyBz
Y2hlZHVsaW5nIGZ1bmN0aW9uYWxpdHkgaW4gVW5pa3JhZnQuIFRoZXJlIAp3aWxsIGJlIGFub3Ro
ZXIgcGF0Y2ggc2VyaWVzIHVwY29taW5nIHRoYXQgZG9lcyBpbnRlZ3JhdGUgdGhvc2UgY2hhbmdl
cyAKdG8gbmV3bGliLiBTbywgdGhlIGN1cnJlbnQgc3RhdGUgbWlnaHQgbm90IHdvcmsgeWV0IGZv
ciB5b3UsIHlvdSBtYXkgCm5lZWQgdG8gY2hlY2sgYWdhaW4gaW4gdHdvIHdlZWtzLgoKVGhhbmtz
LAoKU2ltb24KCk9uIDE4LjA0LjIwMTggMDY6MzQsIEFqYXkgR2FyZyB3cm90ZToKPiBPaywgdGhh
bmtzIFdlaSBmb3IgdGhlIGNsYXJpZmljYXRpb24gLi4KPiAKPiBPbiBXZWQsIEFwciAxOCwgMjAx
OCBhdCA5OjU5IEFNLCBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNvbSAKPiA8bWFpbHRvOldlaS5D
aGVuQGFybS5jb20+PiB3cm90ZToKPiAKPiAgICAgSSB0aGluayBjdXJyZW50bHkgdGhlIGFuc3dl
ciBpcyDigJhZRVPigJkuIFdlIGNvdWxkIG5vdCBsaW5rIGxpYmMuYV9fX18KPiAKPiAgICAgZGly
ZWN0bHkgaW4gVW5pa3JhZnQuIExpYmMuYSByZXF1aXJlcyBzb21lIGRlcGVuZGVuY2llcyB0aGF0
X19fXwo+IAo+ICAgICB1bmlrcmFmdGRvZXNu4oCZdCBwcm92aWRlLl9fX18KPiAKPiAgICAgX18g
X18KPiAKPiAgICAgKkZyb206KkFqYXkgR2FyZyA8YWpheWdhcmduc2l0QGdtYWlsLmNvbQo+ICAg
ICA8bWFpbHRvOmFqYXlnYXJnbnNpdEBnbWFpbC5jb20+Pgo+ICAgICAqU2VudDoqIDIwMTjlubQ0
5pyIMTjml6UxMTo0NQo+IAo+IAo+ICAgICAqVG86KiBXZWkgQ2hlbiA8V2VpLkNoZW5AYXJtLmNv
bSA8bWFpbHRvOldlaS5DaGVuQGFybS5jb20+Pgo+ICAgICAqQ2M6KiBtaW5pb3MtZGV2ZWxAbGlz
dHMueGVucHJvamVjdC5vcmcKPiAgICAgPG1haWx0bzptaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJv
amVjdC5vcmc+Cj4gICAgICpTdWJqZWN0OiogUmU6IFtNaW5pb3MtZGV2ZWxdIFtVbmlrcmFmdF0g
U3RhdGljIExpYnJhcmllcyBub3QgYmVpbmcKPiAgICAgbGlua2VkIHByb3Blcmx5X19fXwo+IAo+
ICAgICBfXyBfXwo+IAo+ICAgICBPayBXZWksIGdvdCBpdCAuLi4KPiAKPiAgICAgU28sIEkgYWRk
ZWQgIi91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvbGliYy5hIiBhbHNvIGluCj4gICAgICJBUFBD
T1JFTUFSS19PQkpTLXkiLCBidXQgdGhlIGxpbmtpbmcgZXJyb3JzIHN0aWxsIHBlcnNpc3QuX19f
Xwo+IAo+ICAgICBJIG5vdyBhc3N1bWUgdGhhdCBwcmUtY29tcGlsZWQgc3RhdGljIGxpYmMuYSBD
QU5OT1QgYmUgYWRkZWQgaW50bwo+ICAgICB1bmlrcmFmdCwgcmlnaHQ/X19fXwo+IAo+ICAgICBf
XyBfXwo+IAo+ICAgICBPbiBXZWQsIEFwciAxOCwgMjAxOCBhdCA5OjAxIEFNLCBXZWkgQ2hlbiA8
V2VpLkNoZW5AYXJtLmNvbQo+ICAgICA8bWFpbHRvOldlaS5DaGVuQGFybS5jb20+PiB3cm90ZTpf
X19fCj4gCj4gICAgICAgICBIaSBBamF5LF9fX18KPiAKPiAgICAgICAgIF9fX18KPiAKPiAgICAg
ICAgIEkgdGhpbmsgd2UgaGF2ZSB0byBjbGFzc2lmeSB0aGUgc3RhdGljLXByZS1jb21waWxlZCBs
aWJyYXJpZXMuX19fXwo+IAo+ICAgICAgICAgRm9yIGluc3RhbmNlLCBpZiB0aGUgc3RhdGljLXBy
ZS1jb21waWxlZCBsaWJyYXJ5IGlzIGEgbWF0aAo+ICAgICAgICAgbGlicmFyeS5fX19fCj4gCj4g
ICAgICAgICBJdCBqdXN0IGRvZXMgc29tZSBNYXRoZW1hdGljYWwgQ29tcHV0aW5nIGFuZCBkb2Vz
buKAmXQgZGVwZW5kIG9uX19fXwo+IAo+ICAgICAgICAgT3RoZXIgbGlicmFyaWVzLiBJIHRoaW5r
IHRoaXMgbWF0aCBsaWJyYXJ5IGNhbiBiZSBsaW5rIHRvX19fXwo+IAo+ICAgICAgICAgVW5pa3Jh
ZnQuIEFub3RoZXIgaW5zdGFuY2UsIGlmIHRoZSBzdGF0aWMtcHJlLWNvbXBpbGVkIGxpYnJhcnlf
X19fCj4gCj4gICAgICAgICBkZXBlbmRzIG9uIG90aGVyIGxpYnJhcmllcy4gWW91IGhhdmUgdG8g
Z3VhcmFudGVlIHRoZSBkZXBlbmRlbnRfX19fCj4gCj4gICAgICAgICBsaWJyYXJpZXMgYXJlIGlu
IHRoZSBVbmlrcmFmdCBsaWJyYXJ5IHBvb2wuX19fXwo+IAo+ICAgICAgICAgX19fXwo+IAo+ICAg
ICAgICAgSW4geW91ciBjYXNlLCB0aGUgL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9saWJydC5h
IGFuZAo+ICAgICAgICAgL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9saWJwdGhyZWFkLmFfX19f
Cj4gCj4gICAgICAgICB3b3VsZCBsaW5rIHRvIGxpYmMuYSB0byBzb2x2ZSB0aGVpciBsaW5rIGRl
cGVuZGVuY2llcy4gQnV0IHRoZQo+ICAgICAgICAgbm9saWJjX19fXwo+IAo+ICAgICAgICAgSW4g
VW5pa3JhZnQgaXMganVzdCBhIHN1YnNldCBvZiBsaWJjLmFfX19fCj4gCj4gICAgICAgICBfX19f
Cj4gCj4gICAgICAgICBSZWdhcmRzLF9fX18KPiAKPiAgICAgICAgIFdlaSBDaGVuX19fXwo+IAo+
ICAgICAgICAgX19fXwo+IAo+ICAgICAgICAgKkZyb206KiBBamF5IEdhcmcgPGFqYXlnYXJnbnNp
dEBnbWFpbC5jb20KPiAgICAgICAgIDxtYWlsdG86YWpheWdhcmduc2l0QGdtYWlsLmNvbT4+Cj4g
ICAgICAgICAqU2VudDoqIDIwMTjlubQ05pyIMTjml6UgMTE6MTcKPiAgICAgICAgICpUbzoqIFdl
aSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tIDxtYWlsdG86V2VpLkNoZW5AYXJtLmNvbT4+Cj4gICAg
ICAgICAqQ2M6KiBtaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKPiAgICAgICAgIDxt
YWlsdG86bWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnPgo+ICAgICAgICAgKlN1Ympl
Y3Q6KiBSZTogW01pbmlvcy1kZXZlbF0gW1VuaWtyYWZ0XSBTdGF0aWMgTGlicmFyaWVzIG5vdAo+
ICAgICAgICAgYmVpbmcgbGlua2VkIHByb3Blcmx5X19fXwo+IAo+ICAgICAgICAgX19fXwo+IAo+
ICAgICAgICAgSGkgV2VpLl9fX18KPiAKPiAgICAgICAgIFRoYW5rcyBmb3IgdGhlIGhlbHAuX19f
Xwo+IAo+ICAgICAgICAgQWN0dWFsbHksIG15IG9yaWdpbmFsIHF1ZXJ5IGlzIGhvdyB0byBsaW5r
IHByZS1jb21waWxlZCAoc3RhdGljKQo+ICAgICAgICAgbGlicmFyaWVzIGluIHVuaWtyYWZ0P19f
X18KPiAKPiAgICAgICAgIEkgdHJpZWQgYXMgcGVyIHRoZSBkb2N1bWVudGF0aW9uIGF0Cj4gICAg
ICAgICBodHRwOi8veGVuYml0cy54ZW4ub3JnL2dpdHdlYi8/cD11bmlrcmFmdC91bmlrcmFmdC5n
aXQ7YT1ibG9iO2Y9ZG9jL2d1aWRlcy9kZXZlbG9wZXJzLWFwcC5yc3Q7aD00NWQ5YmQ1YjJiYjEw
YjNkMDQxMzVkNjZiNTE2MmE1OWQ1NGRjMmI2O2hiPUhFQUQjbDE2Mwo+ICAgICAgICAgPGh0dHA6
Ly94ZW5iaXRzLnhlbi5vcmcvZ2l0d2ViLz9wPXVuaWtyYWZ0L3VuaWtyYWZ0LmdpdDthPWJsb2I7
Zj1kb2MvZ3VpZGVzL2RldmVsb3BlcnMtYXBwLnJzdDtoPTQ1ZDliZDViMmJiMTBiM2QwNDEzNWQ2
NmI1MTYyYTU5ZDU0ZGMyYjY7aGI9SEVBRCNsMTYzPgo+ICAgICAgICAgX19fXwo+IAo+ICAgICAg
ICAgYnV0IHRoZSBsaWJyYXJpZXMgZG8gbm90IHJlc29sdmUgbGlua2luZyBwcm9ibGVtcy5fX19f
Cj4gCj4gICAgICAgICBPciBhbSBJIHVuZGVyc3RhbmRpbmcgaXQgaW5jb3JyZWN0bHk/IENhbiBw
cmUtY29tcGlsZWQgc3RhdGljCj4gICAgICAgICBsaWJyYXJpZXMgYmUgaW50ZWdyYXRlZC9saW5r
ZWQgYXQgYWxsIGluIHVuaWtyYWZ0P19fX18KPiAKPiAgICAgICAgIF9fX18KPiAKPiAgICAgICAg
IF9fX18KPiAKPiAgICAgICAgIE9uIFdlZCwgQXByIDE4LCAyMDE4IGF0IDc6NDggQU0sIFdlaSBD
aGVuIDxXZWkuQ2hlbkBhcm0uY29tCj4gICAgICAgICA8bWFpbHRvOldlaS5DaGVuQGFybS5jb20+
PiB3cm90ZTpfX19fCj4gCj4gICAgICAgICAgICAgQnV0IHRoZSBjbG9ja19nZXR0aW1lIGhhc27i
gJl0IGJlZW4gaW1wbGVtZW50ZWQgaW4gbm9saWJjIG9yCj4gICAgICAgICAgICAgbGlidGltZS5f
X19fCj4gCj4gICAgICAgICAgICAgSWYgeW91ciBhcHBsaWNhdGlvbiBqdXN0IHVzZXMgdGhpcyBm
dW5jdGlvbiB0byBwcmludAo+ICAgICAgICAgICAgIHRpbWVzdGFtcGUsIHlvdV9fX18KPiAKPiAg
ICAgICAgICAgICBjYW4gaW1wbGVtZW50IGEgZHVtbXkgZnVuY3Rpb24gaW4geW91ciBjb2RlIGlu
IHRoaXMgdGltZSB0bwo+ICAgICAgICAgICAgIHBhc3MgdGhlX19fXwo+IAo+ICAgICAgICAgICAg
IGxpbmtpbmcuX19fXwo+IAo+ICAgICAgICAgICAgIF9fX18KPiAKPiAgICAgICAgICAgICBfX19f
Cj4gCj4gCj4gCj4gCj4gICAgICAgICAtLSBfX19fCj4gCj4gICAgICAgICBSZWdhcmRzLAo+ICAg
ICAgICAgQWpheV9fX18KPiAKPiAgICAgICAgIElNUE9SVEFOVCBOT1RJQ0U6IFRoZSBjb250ZW50
cyBvZiB0aGlzIGVtYWlsIGFuZCBhbnkgYXR0YWNobWVudHMKPiAgICAgICAgIGFyZSBjb25maWRl
bnRpYWwgYW5kIG1heSBhbHNvIGJlIHByaXZpbGVnZWQuIElmIHlvdSBhcmUgbm90IHRoZQo+ICAg
ICAgICAgaW50ZW5kZWQgcmVjaXBpZW50LCBwbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRp
YXRlbHkgYW5kIGRvCj4gICAgICAgICBub3QgZGlzY2xvc2UgdGhlIGNvbnRlbnRzIHRvIGFueSBv
dGhlciBwZXJzb24sIHVzZSBpdCBmb3IgYW55Cj4gICAgICAgICBwdXJwb3NlLCBvciBzdG9yZSBv
ciBjb3B5IHRoZSBpbmZvcm1hdGlvbiBpbiBhbnkgbWVkaXVtLiBUaGFuawo+ICAgICAgICAgeW91
LiBfX19fCj4gCj4gCj4gCj4gCj4gICAgIC0tIF9fX18KPiAKPiAgICAgUmVnYXJkcywKPiAgICAg
QWpheV9fX18KPiAKPiAgICAgSU1QT1JUQU5UIE5PVElDRTogVGhlIGNvbnRlbnRzIG9mIHRoaXMg
ZW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBhcmUKPiAgICAgY29uZmlkZW50aWFsIGFuZCBtYXkg
YWxzbyBiZSBwcml2aWxlZ2VkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQKPiAgICAgcmVj
aXBpZW50LCBwbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRvIG5vdCBk
aXNjbG9zZQo+ICAgICB0aGUgY29udGVudHMgdG8gYW55IG90aGVyIHBlcnNvbiwgdXNlIGl0IGZv
ciBhbnkgcHVycG9zZSwgb3Igc3RvcmUKPiAgICAgb3IgY29weSB0aGUgaW5mb3JtYXRpb24gaW4g
YW55IG1lZGl1bS4gVGhhbmsgeW91Lgo+IAo+IAo+IAo+IAo+IC0tIAo+IFJlZ2FyZHMsCj4gQWph
eQo+IAo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
Cj4gTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdAo+IE1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9q
ZWN0Lm9yZwo+IGh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9t
aW5pb3MtZGV2ZWwKPiAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnBy
b2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9t
aW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 25 05:48:28 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 25 Apr 2018 05:48:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBDI2-00021f-9k; Wed, 25 Apr 2018 05:48:26 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ui+u=ho=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fBDI0-00021a-FF
 for minios-devel@lists.xenproject.org; Wed, 25 Apr 2018 05:48:25 +0000
X-Inumbo-ID: 194b94e9-484c-11e8-9728-bc764e045a96
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe09::61a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 194b94e9-484c-11e8-9728-bc764e045a96;
 Wed, 25 Apr 2018 07:47:12 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=L+uyeVzCaXpXPTkASX/OxZ/1CS/bTbTIcH6S/zqiQOA=;
 b=XkJLUnEegXnH63gOv/An9wZv6lGSccHcmN2J5DTTg6PWPl0LdLvP1vSySC2get+QLNB9XBGghS6A4qzESSGFmz3jTo0F/6bgdI0VUkSXrAkDHnzoC9ki9aNh7kCnAIOnfI7+Ri0+21FBeJNCtUXxmfvGElIzKqr3F1f+SRHfFbI=
Received: from VI1PR08CA0171.eurprd08.prod.outlook.com (2603:10a6:800:d1::25)
 by HE1PR0802MB2425.eurprd08.prod.outlook.com (2603:10a6:3:dd::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Wed, 25
 Apr 2018 05:48:14 +0000
Received: from VE1EUR03FT036.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::205) by VI1PR08CA0171.outlook.office365.com
 (2603:10a6:800:d1::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.13 via Frontend
 Transport; Wed, 25 Apr 2018 05:48:13 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none;gmail.com; dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT036.mail.protection.outlook.com (10.152.19.204) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.696.11 via Frontend Transport; Wed, 25 Apr 2018 05:48:13 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Wed, 25 Apr 2018
 06:48:10 +0100
Date: Wed, 25 Apr 2018 05:48:07 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180425054805.GA12527@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-20-git-send-email-shijie.huang@arm.com>
 <56add9e2-c11d-65c3-1d61-d29c65d5af00@arm.com>
 <20180423084936.GB30544@ubuntu.shanghai.arm.com>
 <e2452065-e182-7789-5e0d-0e8282cb4fd7@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <e2452065-e182-7789-5e0d-0e8282cb4fd7@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(396003)(39860400002)(346002)(376002)(2980300002)(438002)(189003)(199004)(476003)(58126008)(47776003)(26826003)(16586007)(5660300001)(316002)(93886005)(72206003)(86362001)(305945005)(97756001)(104016004)(54906003)(106002)(4326008)(33656002)(6666003)(1076002)(46406003)(26005)(7696005)(186003)(106466001)(356003)(6862004)(229853002)(76176011)(77096007)(478600001)(23726003)(6246003)(53546011)(126002)(6636002)(8666007)(426003)(11346002)(2906002)(486006)(55016002)(8676002)(50466002)(8936002)(446003)(246002)(336012)(39060400002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2425; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT036;
 1:M8+MvfPT6xNUGlSZKTnXwxAtfVaEsatl0wy2gzyeJuDjRZMjSM5gxs5g0C9seo06r51CMRev5vymMdf3f1WO2dTjcgAOA0mkDiainTl72yxhH1D43WF3481khCOwLbg6
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2425; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 3:GpyEGIWm25mgz6EqcVUh1B47Q384Wr3bSA6LqZwh+cf7kmRL9Q8Hfae3yVhTg42dSN0UgAU04zCr9FNb+N79hCiMq0nKwaLWuaJvdDHcESUCG7Ju2t//6+S4IVjmWWbBBaw9Xd+iEXsQFP2z7kuSdwaItmu6XD/8HIz9lvR95YezE6BGEAeM/08Vy+aGppdgP+B7WNxaAeWIUQuTxyJmo5d5By01lEJ2teV8GItFD0OPb2oq9lWHxxCVU2qjcQy6Hwm6BZo04fRXbEz7TbUH6jp9cS1m3nKQ2dWAljs39VmJfc97nIN2ne2bcGTZwYZMvB0x8AQgkoCJa0L98lAHtDi6g94X1H/Dk5wBZCaK3qk=;
 25:CaXjnofOZcAw4jgie5VAWnqslkcfX9rsbDFfRt4yBwX0FoG/Gl2qHRKQSAJZ6HFIx67eo2LMnFTzOOW9W2jlRQcqp+8F0G4VDeou4HOZSeAgB72zZs2LX25LryOFJ8fm5+xs97DY+UIHeCUiYNQf5np0pA7I8G6zKnE0ugEPAyMbJTskwwHBF4KpVFW+8Wcn5JULaMnYyBHatGvikvE/NRd42WjHk2t55Oc2OpCgkMqXy6gS2P9F4/ci5sFXSq5nrqXDq0MqW1MrU4mFHEXdahYOrOyPcGl1XNwFTsdWsO1ySYS/tJQusD5jc7M0nWusyLUNeBMDkconL/x9tMHk5w==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2425:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 31:waqYeRI1GBEeYnuMT8Vy06fMYlV5x7fyunRbufvYn+cdaz3xu7zhPb0BlglnjNRJng6OzX+ZYCiaR/NTMszNzQ8Ep+aGHbd8fgFbsyW8d8eLS3uqp11Nq+vBZJa4CxOsweDDA7ePrynNGrQrNFBevQSY3sGw1g1aItIIEgGWhog6fpKqoHkBj/OhEzrIsjNAxxACitNJ0IS4hOK0Ubk0Pe+2Ev8rdi8aEpTn6LrRVM8=;
 20:Yr9BkUTNal/DyL1upQbQAA7Wq+Nzy2d+hY/vdyvvmMVfN0s901Q9iDPE6hTN1/CHoKHJp751ejp9lW2Nqzewv+K4e8ucxxtEEx9QjBBXuFLga78hFFcSUjdvsFn8SzPo59GCmnq8tLnaPCNYseUucnuvCGcV4lSOVyhHTHrnuqNNgBQ8PI5xyDonn3qQdXhv2B1jbeynlJMeX2v+ETPphhTqPRgCB+eUZCwjiuo++raWr3yPlY7BWj8aMclp1idwU3/6pbHRP41rYCsZjp2qiwT7nv9zBuEfhKFqNgjHcyDEs7v22S3xzUfUFW+egds2QzMD4WE97luTtTCk5o2pKybMnGzWt48OMNu1HavZWFk=;
 4:3LoltAV9IHzUHO2f8nWw8dEJrlQ+6ohBCEKS6Cwjr/sl5Nv/XyeYLLan5C/lMQCauoRVs87PLYtG/ODYmCznAq9nncjt5xHrGZi3fDGbhqy1DMOw2uenIjKxmmMSj3upbx3qaik2aGRcval+/5cId3/fdI2i81ZkqidpTRPYYHlww6IF0OyQClMYEQHJH88sjDSZIP0vxWczngdcyrzYzYqXLGuB+KibUXKxoa4GYzr29hXsyeA8oE2+ZoFi/fvu+8mkVgq0xySt64s9wLqhPKslZo4cXNIS9JEJ5d2Cfpa7FZAP5N2LPvexzyvw8Ap2
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB242589749278D1BDD451F11E848F0@HE1PR0802MB2425.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3002001)(3231232)(944501410)(52105095)(10201501046)(6055026)(6041310)(20161123562045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2425; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2425; 
X-Forefront-PRVS: 06530126A4
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2425;
 23:rL0Oz/5Ge4ZJc+WPq3SqUxMKnaZDIF15o5i1Vhs?=
 =?us-ascii?Q?USFwRqLhI/ZIjCeWpF47NgP5rNLhudQrUjnKFKRUpc5R4ctnvyE0IJHr/SWC?=
 =?us-ascii?Q?YiWm4KBW/oLn1wN7+GbX2ilqpWWf3cBr0+/kwfMRM4UjvK3j9WKp85GM1d3V?=
 =?us-ascii?Q?1GVYvVAC/2Zd7ocedH57++mjeHi9AMV+KenvHEqCWsjmqoN24tsZgYJ84rqy?=
 =?us-ascii?Q?xyIB97DoXJb3/N03+h2YDJJrRqX6Svmtb78dH5As6scZbTqIuOL9uJ8ZGPeG?=
 =?us-ascii?Q?skLXPmcz9oTpjU58GRDm9qKq/YEbDaDDi6nu+265SW1eN+uh7KUe1WbwJ9ly?=
 =?us-ascii?Q?BQkYOIDiQtbOl7mIvDTU6P3lcI4YRNNztlpg9GApXQCpsqW0ndq8w/dpB4pd?=
 =?us-ascii?Q?4BkeWga/AA4VAaZUEk/kfpt7oXKRiTEXoxOn57w2M+yG0yJXEHqs268o1hup?=
 =?us-ascii?Q?nEsY9MsSfAU3PQw6lSiAopSLj16XJmCX7NpzSSEu/0khFP3vpwf5vZUfwFsH?=
 =?us-ascii?Q?xeHKwJ96TiUrkgpZ4d++eu07QDf8Zxsqg2gQiQK9AoCJhbyNEZSO22BrtvV9?=
 =?us-ascii?Q?L7BPnFLG48I1Hb3aCnV9IDQQuHBzVBrL9qehmtrAm/qhd3xi8Q7MPSdQgIY1?=
 =?us-ascii?Q?cdCN2HsAcLMgBqgTZRQRXfdmm1inLKWMf2aAt2D0qhdZqfsJE506deFtKpPD?=
 =?us-ascii?Q?0i2dDGpu1I2Gbq+vihH7OiKutj/Nvinu5/Ue4J2weA8ulpZZSqWpeunWAwJ1?=
 =?us-ascii?Q?VGVBLKDKT7X9GxEuo9jlPZlK/GEvnjvbRrOcoJ5zIeBeKrnhh8PqcytkLqIY?=
 =?us-ascii?Q?KkaxjBWmOsE+p6NHQevK+ubu/tTGHaw9rqlAHa3fBjeR7HD+ffzS8ZCNv6Rs?=
 =?us-ascii?Q?L/vfwJodSQe/wBMjbbxvhE7qNo7YHqgGZCfVzcyy01BhKqeEcIhMCwGLhOPO?=
 =?us-ascii?Q?1jjzymsX+ztzShPhnQ56DB1V8psd9sm/4O7XgolgBgOdVlq16vOabUCg0rtM?=
 =?us-ascii?Q?kBXaW1WNxC3wk2U+491ItC8s4hqdRR9/SBBzaxO0pS1PKRaqbfasC3c0pYwa?=
 =?us-ascii?Q?NPd1aOBIhdLh6z9RJqLvSuWDH0s9wU2bm/q/Q69lCe61vj7ZEFPkXqXo54xN?=
 =?us-ascii?Q?U1mgPRgCMXzNi1Ms8dgufDvVT6eNNWjCjawx4QFMGC7yMV5G3Z2TZ5o9PSO2?=
 =?us-ascii?Q?jndOWyr7q+tT4zsv4MfQKtx7iiMlQhsN6en1+/hCUJ4q4w2FeQiEVygslaTA?=
 =?us-ascii?Q?O8VI6aapIDSQFZDiThiLxpe49gxbCxJ/4Erkt5zDRegb9xUTJQ0Ld/s6V1rF?=
 =?us-ascii?Q?F3Q=3D=3D?=
X-Microsoft-Antispam-Message-Info: gJUej9ySi5onYQfvOJS74Jb8iQMfonzGoNqxiYwFTn4Eswu8cs+/tjir1GTz4vFQi2cc0luBMYi1xL5LHvDObTPYxljq202+nQsBQYOUADRehw7qdZhwqrlCvAR45+i3M5OQTjSH9Reb5bM2FWvyhWhMrIDtq1KPzPtyHAsd7FdlTnJIeq8kS8z93oaaG9uru2py2goO7mTpEvgRl1sidotBTgY9G+qe8AKv5nN3du9dNDTOpNswAg6rgQBA/QJ7UUb97Uo7Vya5e9Z+DEFQBLrsN/J8HnZrOBYvETRn6xZQY/jwRSDC9sHeXTTiHvuDEjtiM7BESKz/I30vfZZqm8dqIvu0tNRDevUwbcaYRHvH+YbagEhsR0L0xMz3cThEnLqrtX5HMvY8CA82fv2wrgcksUtxhj2DViMpbLbCwKA=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 6:r5k2bu9WTgVhr4atBvgGFL8OVsbzWf1fdcWgx+KuUUVRX7mA5sfYvYH/m9SOVWfi7aVZgGeh2M7YtGhkLnVZuSwlQsHzQASNBNrSgAl0sON2DatVhJpMPk6uTIMpDDKORmmrKtQzwQ4bOAbddkrhb9ptls4eXSlCfW1FQLDTkJ+ZRbDM7VPLAldd4osdwGsVCGOV98O2/PSFxFvL96l5H73PVmVH+hcvSiiRqa7G/z4n+jHanByN3gU3gtuzhrSZd8kervaIi+iVEUZbdRRg0V4nZRC+AxQmI+O5ZHnTqQu9WxoCytp1e8BW192A7svj+aheJPICPuz9BXDQ+jpUbQ+mfYb98Y1gTVPrNEucya3bjJsfMRpy3KIbyNAST0Nrf0JstooAqurSwz+yWhfCkxaSZjVjk+eVAiW8ow2LiYQGw4M5qp8OcOaIfuGDp7PqLdd4ar0x1Qqm8Az3ActBOn6jWKjfmc/f5Dgu5SQQ754FOiqAxcKblbS6qOWpqb51;
 5:/5iPJM7q+MyEjnp9FOtGWBSLfU7ddD9Gmd2Rs9k85miJfmbt1D1aU+cd82C7Po9CXlVTH9NT8jtyXlKn71gLZJHadsjp/pKf3Wxo1+4nHNTKFMzFG0CpIHzBL8X89VkMK7+CQjg9dqpDHChqsBIPDWPfxNhOVxboMKZGdox+AT8=;
 24:irvsd11i16l76qyM/Hkp+Suc1SuDMcj1z8utP74sy8d0ArPyiE1U8EypogpVhvDEBWmORjXl7im0LDPs2B5o7wOhBc+pQicOqyLGtHWhoK0=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2425;
 7:qPUV6R8vpl49/WGxlBerESfNAmNSZe7vlcwa2UWvrA6RVwTKgIeQ8anMxCKm5ze10DvAe23aSp+c6U+Ad30/8P/YKsfig6DHCzDejdsXRdF3ftr6FLWOVwZzfKq6CnoI0AKOuO4P9d8NC9hssWIqR4eRqY0Wacwkq3Ijh1iW58Fmb0yBMom3PHlAmRD58jJt43ACnyEvFHIjWh3XMlJ14gErxjoNYMffoJNXQQP/a4FP5ALwbjnpXnCdP+SH5oQ9
X-MS-Office365-Filtering-Correlation-Id: fbf59cad-ddc5-4917-1be8-08d5aa702291
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Apr 2018 05:48:13.2974 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: fbf59cad-ddc5-4917-1be8-08d5aa702291
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2425
Subject: Re: [Minios-devel] [PATCH v3 19/43] arm64: add shared_info support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gTW9uLCBBcHIgMjMsIDIwMTggYXQgMTI6MDU6NTFQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpIFNoaWppZSwKPiAKPiBPbiAyMy8wNC8xOCAwOTo0OSwgSHVhbmcgU2hpamllIHdy
b3RlOgo+ID5PbiBXZWQsIEFwciAxOCwgMjAxOCBhdCAwOTozNDoxOFBNICswMTAwLCBKdWxpZW4g
R3JhbGwgd3JvdGU6Cj4gPj5IaSwKPiA+Pgo+ID4+T24gMTYvMDQvMjAxOCAwNzozMSwgSHVhbmcg
U2hpamllIHdyb3RlOgo+ID4+PkFkZCB0aGUgc2hhcmVkX2luZm8gcGFnZS4KPiA+Pj4KPiA+Pj5T
aWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+ID4+Pi0t
LQo+ID4+PiAgYXJjaC9hcm0vYXJtNjQvYXJtNjQuUyB8IDMgKysrCj4gPj4+ICAxIGZpbGUgY2hh
bmdlZCwgMyBpbnNlcnRpb25zKCspCj4gPj4+Cj4gPj4+ZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2Fy
bTY0L2FybTY0LlMgYi9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4gPj4+aW5kZXggOWViN2VhMC4u
ZmEzNDA2ZiAxMDA2NDQKPiA+Pj4tLS0gYS9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4gPj4+Kysr
IGIvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+ID4+PkBAIC0yNSw2ICsyNSw3IEBACj4gPj4+ICAg
ICAgLmdsb2JsIGJvb3RfbDJfcGd0YWJsZQo+ID4+PiAgICAgIC5nbG9ibCBpZG1hcF9sMF9wZ3Rh
YmxlCj4gPj4+ICAgICAgLmdsb2JsIGlkbWFwX2wxX3BndGFibGUKPiA+Pj4rICAgIC5nbG9ibCBz
aGFyZWRfaW5mbwo+ID4+PiAgICAgIC5hbGlnbiAxMgo+ID4+PiAgYm9vdF9sMF9wZ3RhYmxlOgo+
ID4+PkBAIC0zNyw2ICszOCw4IEBAIGlkbWFwX2wwX3BndGFibGU6Cj4gPj4+ICAgICAgLmZpbGwg
IFBBR0VfU0laRSwxLDAKPiA+Pj4gIGlkbWFwX2wxX3BndGFibGU6Cj4gPj4+ICAgICAgLmZpbGwg
IFBBR0VfU0laRSwxLDAKPiA+Pj4rc2hhcmVkX2luZm86Cj4gPj4+KyAgICAuZmlsbCAgUEFHRV9T
SVpFLDEsMAo+ID4+Cj4gPj5XaHkgZG9lcyBpdCBoYXZlIHRvIGJlIGRlZmluZWQgaW4gYXNzZW1i
bHk/IENhbid0IHRoaXMgYmUgZG9uZSBpbiBDPyBPciBldmVuCj4gPkkgdGhpbmsgd2UnZCBiZXR0
ZXIga2VlcCBpdCBoZXJlLgo+IAo+IEFzc2VtYmx5IHNob3VsZCByZWFsbHkgb25seSBiZSB1c2Vk
IHdoZW4gdGhpcyBpcyBzdHJpY3RseSBuZWNlc3NhcnkuLi4KPiAKPiA+V2UgdXNlZCB0aGUgc2hh
cmVkX2luZm8gYXQgYXJjaF9pbml0KCkgd2hpY2ggdGhlIG1lbW9yeSBzeXN0ZW0gaXMgbm90IHJl
YWR5IHlldC4KPiAKPiAuLi4gaWYgaXQgaXMgdXNlZCBpbiBhcmNoX2luaXQoKSB0aGVuIGl0IHNo
b3VsZCBiZSBkZWZpbmVkIGluIEMgc3RhdGljYWxseS4KSSBmb3VuZCBpdCBpcyBoYXJkIHRvIGNv
ZGUgaXQgaW4gQy4KClRoZSBmb2xsb3dpbmcgaXMgd2hhdCBJIGRpZDoKCiAgLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIHNoYXJlZF9p
bmZvX3Qgc2hhcmVkX2luZm8gX19hdHRyaWJ1dGVfXygoYWxpZ25lZChQQUdFX1NJWkUpKSk7CiAg
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LQoKQnV0IHdlIG5lZWQgdGhlIHNoYXJlZF9pbmZvIHRvIG9jY3VweSBhIHdob2xlIHBhZ2Ugd2hp
Y2ggaXMKdXNlZCBpbiBtYXBfc2hhcmVkX2luZm8oKS4KCklzIHRoZXJlIGEgZ29vZCB3YXkgdG8g
c29sdmUgaXQ/CgpUaGFua3MKSHVhbmcgU2hpamllCgpfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1k
ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21h
aWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 25 08:44:08 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 25 Apr 2018 08:44:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBG21-0007kK-3l; Wed, 25 Apr 2018 08:44:05 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=anjg=ho=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBG1z-0007kF-S4
 for minios-devel@lists.xenproject.org; Wed, 25 Apr 2018 08:44:03 +0000
X-Inumbo-ID: a41beb3c-4864-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id a41beb3c-4864-11e8-9728-bc764e045a96;
 Wed, 25 Apr 2018 10:42:52 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id BFD391529;
 Wed, 25 Apr 2018 01:44:01 -0700 (PDT)
Received: from [192.168.42.184] (usa-sjc-mx-foss1.foss.arm.com
 [217.140.101.70])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 242823F487;
 Wed, 25 Apr 2018 01:43:58 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-13-git-send-email-shijie.huang@arm.com>
 <445ad0d4-2621-fc27-4408-cfd7f7101321@arm.com>
 <20180423094401.GA7506@ubuntu.shanghai.arm.com>
 <c6b7a902-7397-f583-1527-a9687d4550e3@arm.com>
 <20180424091221.GA11102@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <a514c2c6-ebe7-ebeb-1c61-4e7b52ef4aa7@arm.com>
Date: Wed, 25 Apr 2018 09:43:54 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <20180424091221.GA11102@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 12/43] arm64: add the basic helpers
 for arm64
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAwNC8yNC8yMDE4IDEwOjEyIEFNLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gT24gTW9u
LCBBcHIgMjMsIDIwMTggYXQgMTI6MDA6MzRQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdyb3RlOgo+
PiBPbiAyMy8wNC8xOCAxMDo0NCwgSHVhbmcgU2hpamllIHdyb3RlOgo+Pj4gT24gV2VkLCBBcHIg
MTgsIDIwMTggYXQgMDk6Mjc6MTJQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdyb3RlOiAKPiBGb3Ig
ZXhhbXBsZSwgdGhlIHdtYigpIGlzIHVzZWQgaW4gdGhlIEdJQyBjb2RlLCB3aGljaCBzaG91bGQg
YmUgZHNiLCBub3QKPiBkbWIoKS4KCkl0IGxvb2tzIGEgYml0IHdyb25nIHRvIG1lIHRoYXQgdGhl
IEdJQyBjb2RlIGlzIHVzaW5nIHdtYigpLiBCdXQgbGV0J3MgCnRhY2tsZSB0aGF0IHByb2JsZW0g
b25jZSB3ZSBnZXQgdGhlIEFybTY0IHN1cHBvcnQgbWVyZ2VkIDopLgoKQ2hlZXJzLAoKLS0gCkp1
bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVj
dC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlv
cy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 25 09:05:43 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 25 Apr 2018 09:05:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBGMw-00012q-9r; Wed, 25 Apr 2018 09:05:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=anjg=ho=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBGMv-00012h-IP
 for minios-devel@lists.xenproject.org; Wed, 25 Apr 2018 09:05:41 +0000
X-Inumbo-ID: 26a733d5-4868-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 26a733d5-4868-11e8-8249-2fda3a446a53;
 Wed, 25 Apr 2018 09:07:59 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 9FE081529;
 Wed, 25 Apr 2018 02:05:39 -0700 (PDT)
Received: from [192.168.42.184] (usa-sjc-mx-foss1.foss.arm.com
 [217.140.101.70])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 426053F487;
 Wed, 25 Apr 2018 02:05:37 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-20-git-send-email-shijie.huang@arm.com>
 <56add9e2-c11d-65c3-1d61-d29c65d5af00@arm.com>
 <20180423084936.GB30544@ubuntu.shanghai.arm.com>
 <e2452065-e182-7789-5e0d-0e8282cb4fd7@arm.com>
 <20180425054805.GA12527@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <cb756af5-b8cc-ffb1-ae53-1d7ee6bbe297@arm.com>
Date: Wed, 25 Apr 2018 10:05:34 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <20180425054805.GA12527@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 19/43] arm64: add shared_info support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAwNC8yNS8yMDE4IDA2OjQ4IEFNLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gT24gTW9uLCBB
cHIgMjMsIDIwMTggYXQgMTI6MDU6NTFQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdyb3RlOgo+PiBI
aSBTaGlqaWUsCj4+Cj4+IE9uIDIzLzA0LzE4IDA5OjQ5LCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4+
PiBPbiBXZWQsIEFwciAxOCwgMjAxOCBhdCAwOTozNDoxOFBNICswMTAwLCBKdWxpZW4gR3JhbGwg
d3JvdGU6Cj4+Pj4gSGksCj4+Pj4KPj4+PiBPbiAxNi8wNC8yMDE4IDA3OjMxLCBIdWFuZyBTaGlq
aWUgd3JvdGU6Cj4+Pj4+IEFkZCB0aGUgc2hhcmVkX2luZm8gcGFnZS4KPj4+Pj4KPj4+Pj4gU2ln
bmVkLW9mZi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPj4+Pj4gLS0t
Cj4+Pj4+ICAgYXJjaC9hcm0vYXJtNjQvYXJtNjQuUyB8IDMgKysrCj4+Pj4+ICAgMSBmaWxlIGNo
YW5nZWQsIDMgaW5zZXJ0aW9ucygrKQo+Pj4+Pgo+Pj4+PiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0v
YXJtNjQvYXJtNjQuUyBiL2FyY2gvYXJtL2FybTY0L2FybTY0LlMKPj4+Pj4gaW5kZXggOWViN2Vh
MC4uZmEzNDA2ZiAxMDA2NDQKPj4+Pj4gLS0tIGEvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+Pj4+
PiArKysgYi9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4+Pj4+IEBAIC0yNSw2ICsyNSw3IEBACj4+
Pj4+ICAgICAgIC5nbG9ibCBib290X2wyX3BndGFibGUKPj4+Pj4gICAgICAgLmdsb2JsIGlkbWFw
X2wwX3BndGFibGUKPj4+Pj4gICAgICAgLmdsb2JsIGlkbWFwX2wxX3BndGFibGUKPj4+Pj4gKyAg
ICAuZ2xvYmwgc2hhcmVkX2luZm8KPj4+Pj4gICAgICAgLmFsaWduIDEyCj4+Pj4+ICAgYm9vdF9s
MF9wZ3RhYmxlOgo+Pj4+PiBAQCAtMzcsNiArMzgsOCBAQCBpZG1hcF9sMF9wZ3RhYmxlOgo+Pj4+
PiAgICAgICAuZmlsbCAgUEFHRV9TSVpFLDEsMAo+Pj4+PiAgIGlkbWFwX2wxX3BndGFibGU6Cj4+
Pj4+ICAgICAgIC5maWxsICBQQUdFX1NJWkUsMSwwCj4+Pj4+ICtzaGFyZWRfaW5mbzoKPj4+Pj4g
KyAgICAuZmlsbCAgUEFHRV9TSVpFLDEsMAo+Pj4+Cj4+Pj4gV2h5IGRvZXMgaXQgaGF2ZSB0byBi
ZSBkZWZpbmVkIGluIGFzc2VtYmx5PyBDYW4ndCB0aGlzIGJlIGRvbmUgaW4gQz8gT3IgZXZlbgo+
Pj4gSSB0aGluayB3ZSdkIGJldHRlciBrZWVwIGl0IGhlcmUuCj4+Cj4+IEFzc2VtYmx5IHNob3Vs
ZCByZWFsbHkgb25seSBiZSB1c2VkIHdoZW4gdGhpcyBpcyBzdHJpY3RseSBuZWNlc3NhcnkuLi4K
Pj4KPj4+IFdlIHVzZWQgdGhlIHNoYXJlZF9pbmZvIGF0IGFyY2hfaW5pdCgpIHdoaWNoIHRoZSBt
ZW1vcnkgc3lzdGVtIGlzIG5vdCByZWFkeSB5ZXQuCj4+Cj4+IC4uLiBpZiBpdCBpcyB1c2VkIGlu
IGFyY2hfaW5pdCgpIHRoZW4gaXQgc2hvdWxkIGJlIGRlZmluZWQgaW4gQyBzdGF0aWNhbGx5Lgo+
IEkgZm91bmQgaXQgaXMgaGFyZCB0byBjb2RlIGl0IGluIEMuCj4gCj4gVGhlIGZvbGxvd2luZyBp
cyB3aGF0IEkgZGlkOgo+IAo+ICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgICBzaGFyZWRfaW5mb190IHNoYXJlZF9pbmZvIF9f
YXR0cmlidXRlX18oKGFsaWduZWQoUEFHRV9TSVpFKSkpOwo+ICAgIC0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAKPiBCdXQgd2UgbmVl
ZCB0aGUgc2hhcmVkX2luZm8gdG8gb2NjdXB5IGEgd2hvbGUgcGFnZSB3aGljaCBpcwo+IHVzZWQg
aW4gbWFwX3NoYXJlZF9pbmZvKCkuCj4gCj4gSXMgdGhlcmUgYSBnb29kIHdheSB0byBzb2x2ZSBp
dD8KCmNoYXIgc2hhcmVkX2luZm9bUEFHRV9TSVpFXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKFBB
R0VfU0laRSkpOwoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApN
aW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0
Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 25 09:11:09 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 25 Apr 2018 09:11:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBGSB-0001iS-PU; Wed, 25 Apr 2018 09:11:07 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=anjg=ho=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBGSA-0001iN-V4
 for minios-devel@lists.xenproject.org; Wed, 25 Apr 2018 09:11:06 +0000
X-Inumbo-ID: 6b3ab418-4868-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 6b3ab418-4868-11e8-9728-bc764e045a96;
 Wed, 25 Apr 2018 11:09:54 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 9E4431529;
 Wed, 25 Apr 2018 02:11:04 -0700 (PDT)
Received: from [192.168.42.184] (usa-sjc-mx-foss1.foss.arm.com
 [217.140.101.70])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id E76B83F4FF;
 Wed, 25 Apr 2018 02:11:01 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-21-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <05114cd7-57c6-04ea-acf9-61d159a1132f@arm.com>
Date: Wed, 25 Apr 2018 10:10:58 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-21-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 20/43] mini-os: implement the
 memmove/memchr
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAwNC8xNi8yMDE4IDA3OjMyIEFNLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gVGhpcyBwYXRj
aCBpcyBzcGxpdCBmcm9tIHRoZSBDaGVuIEJhb3ppJ3Mgb2xkIHBhdGNoOgo+IAo+ICJUaGlzIGFj
dGl2YXRlcyB0aGUgQVJNIGNvZGUgYWRkZWQgaW4gdGhlIHByZXZpb3VzIHBhdGNoZXMuIE9uCj4g
ICBBUk0sIE1pbmktT1Mgd2lsbCBib290IGFuZCBkaXNwbGF5IHNvbWUgb3V0cHV0IG9uIHRoZSBj
b25zb2xlLiBUZXN0ZWQgd2l0aDoiCj4gCj4gTm90ZTogVGhlIGNvZGUgaXMgY29waWVkIGZyb20g
RnJlZUJTRCBjb2RlOgo+ICAgICAgICBmcmVlYnNkL2NvbnRyaWIvbGRucy9jb21wYXQvbWVtbW92
ZS5jCgpUaGF0J3Mgb25seSBmb3IgbWVtbW92ZS4gSG93IGFib3V0IG1lbWNocj8KCkFsc28sIGNh
biB5b3UgZXhwbGFpbiBpbiB0aGUgY29tbWl0IG1lc3NhZ2Ugd2h5IHlvdSBuZWVkIHRoZW0/CgpD
aGVlcnMsCgo+IAo+IFNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFy
bS5jb20+Cj4gLS0tCj4gICBNYWtlZmlsZSAgICAgIHwgIDEgKwo+ICAgbGliL21lbW1vdmUuYyB8
IDc0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrCj4gICBsaWIvc3RyaW5nLmMgIHwgMTIgKysrKysrKysrKwo+ICAgMyBmaWxlcyBjaGFu
Z2VkLCA4NyBpbnNlcnRpb25zKCspCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgbGliL21lbW1vdmUu
Ywo+IAo+IGRpZmYgLS1naXQgYS9NYWtlZmlsZSBiL01ha2VmaWxlCj4gaW5kZXggNmEwNWRlNi4u
M2FkMjUyMiAxMDA2NDQKPiAtLS0gYS9NYWtlZmlsZQo+ICsrKyBiL01ha2VmaWxlCj4gQEAgLTYy
LDYgKzYyLDcgQEAgc3JjLXkgKz0gbGliL21hdGguYwo+ICAgc3JjLXkgKz0gbGliL3ByaW50Zi5j
Cj4gICBzcmMteSArPSBsaWIvc3RhY2tfY2hrX2ZhaWwuYwo+ICAgc3JjLXkgKz0gbGliL3N0cmlu
Zy5jCj4gK3NyYy15ICs9IGxpYi9tZW1tb3ZlLmMKPiAgIHNyYy15ICs9IGxpYi9zeXMuYwo+ICAg
c3JjLXkgKz0gbGliL3htYWxsb2MuYwo+ICAgc3JjLSQoQ09ORklHX1hFTkJVUykgKz0gbGliL3hz
LmMKPiBkaWZmIC0tZ2l0IGEvbGliL21lbW1vdmUuYyBiL2xpYi9tZW1tb3ZlLmMKPiBuZXcgZmls
ZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLmQ1YWMwMzYKPiAtLS0gL2Rldi9udWxsCj4g
KysrIGIvbGliL21lbW1vdmUuYwo+IEBAIC0wLDAgKzEsNzQgQEAKPiArLyoKPiArICogICAgIG1l
bW1vdmUuYzogbWVtbW92ZSBjb21wYXQgaW1wbGVtZW50YXRpb24uCj4gKyAqCj4gKyAqICAgICBD
b3B5cmlnaHQgKGMpIDIwMDEtMjAwOCwgTkxuZXQgTGFicy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
PiArICoKPiArICogU2VlIENPUFlJTkcgZm9yIHRoZSBsaWNlbnNlLgo+ICsqLwo+ICsKPiArLyoK
PiArQ29weXJpZ2h0IChjKSAyMDA1LDIwMDYsIE5MbmV0TGFicwo+ICtBbGwgcmlnaHRzIHJlc2Vy
dmVkLgo+ICsKPiArUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Cj4gK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0Ogo+ICsKPiArICAgICog
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLAo+ICsgICAgICB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgo+ICsgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Cj4gKyAgICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCj4gKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgTkxuZXRM
YWJzIG5vciB0aGUgbmFtZXMgb2YgaXRzCj4gKyAgICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMKPiArICAg
ICAgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCj4g
Kwo+ICtUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKPiArQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+ICtJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRQo+ICtBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKPiArTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgo+ICtDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgo+
ICtTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKPiArSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KPiArQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKPiAr
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUKPiArUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4gKyovCj4g
Kwo+ICsjaW5jbHVkZSA8b3MuaD4KPiArI2luY2x1ZGUgPG1pbmktb3MvbGliLmg+Cj4gKwo+ICsj
aWZuZGVmIEhBVkVfTElCQwo+ICsKPiArdm9pZCAqbWVtbW92ZSh2b2lkICpkZXN0LCBjb25zdCB2
b2lkICpzcmMsIHNpemVfdCBuKQo+ICt7Cj4gKyAgICAgICB1aW50OF90KiBmcm9tID0gKHVpbnQ4
X3QqKSBzcmM7Cj4gKyAgICAgICB1aW50OF90KiB0byA9ICh1aW50OF90KikgZGVzdDsKPiArCj4g
KyAgICAgICBpZiAoZnJvbSA9PSB0byB8fCBuID09IDApCj4gKyAgICAgICAgICAgICAgIHJldHVy
biBkZXN0Owo+ICsgICAgICAgaWYgKHRvID4gZnJvbSAmJiB0by1mcm9tIDwgKGludCluKSB7Cj4g
KyAgICAgICAgICAgICAgIC8qIHRvIG92ZXJsYXBzIHdpdGggZnJvbSAqLwo+ICsgICAgICAgICAg
ICAgICAvKiAgPGZyb20uLi4uLi4+ICAgICAgICAgKi8KPiArICAgICAgICAgICAgICAgLyogICAg
ICAgICA8dG8uLi4uLi4uLj4gICovCj4gKyAgICAgICAgICAgICAgIC8qIGNvcHkgaW4gcmV2ZXJz
ZSwgdG8gYXZvaWQgb3ZlcndyaXRpbmcgZnJvbSAqLwo+ICsgICAgICAgICAgICAgICBpbnQgaTsK
PiArICAgICAgICAgICAgICAgZm9yKGk9bi0xOyBpPj0wOyBpLS0pCj4gKyAgICAgICAgICAgICAg
ICAgICAgICAgdG9baV0gPSBmcm9tW2ldOwo+ICsgICAgICAgICAgICAgICByZXR1cm4gZGVzdDsK
PiArICAgICAgIH0KPiArICAgICAgIGlmIChmcm9tID4gdG8gICYmIGZyb20tdG8gPCAoaW50KW4p
IHsKPiArICAgICAgICAgICAgICAgLyogdG8gb3ZlcmxhcHMgd2l0aCBmcm9tICovCj4gKyAgICAg
ICAgICAgICAgIC8qICAgICAgICA8ZnJvbS4uLi4uLj4gICAqLwo+ICsgICAgICAgICAgICAgICAv
KiAgPHRvLi4uLi4uLi4+ICAgICAgICAgKi8KPiArICAgICAgICAgICAgICAgLyogY29weSBmb3J3
YXJkcywgdG8gYXZvaWQgb3ZlcndyaXRpbmcgZnJvbSAqLwo+ICsgICAgICAgICAgICAgICBzaXpl
X3QgaTsKPiArICAgICAgICAgICAgICAgZm9yKGk9MDsgaTxuOyBpKyspCj4gKyAgICAgICAgICAg
ICAgICAgICAgICAgdG9baV0gPSBmcm9tW2ldOwo+ICsgICAgICAgICAgICAgICByZXR1cm4gZGVz
dDsKPiArICAgICAgIH0KPiArICAgICAgIG1lbWNweShkZXN0LCBzcmMsIG4pOwo+ICsgICAgICAg
cmV0dXJuIGRlc3Q7Cj4gK30KPiArCj4gKyNlbmRpZgo+IGRpZmYgLS1naXQgYS9saWIvc3RyaW5n
LmMgYi9saWIvc3RyaW5nLmMKPiBpbmRleCA4YjI0MTQ2Li5jOTZjYTQxIDEwMDY0NAo+IC0tLSBh
L2xpYi9zdHJpbmcuYwo+ICsrKyBiL2xpYi9zdHJpbmcuYwo+IEBAIC0yMjUsNCArMjI1LDE2IEBA
IGludCBmZnMoaW50IGkpCj4gICAgICByZXR1cm4gMDsKPiAgIH0KPiAgIAo+ICt2b2lkICptZW1j
aHIoY29uc3Qgdm9pZCAqcywgaW50IGMsIHNpemVfdCBuKQo+ICt7Cj4gKyAgICBpZiAobiAhPSAw
KSB7Cj4gKyAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcCA9IHM7Cj4gKwo+ICsgICAgICAg
IGRvIHsKPiArICAgICAgICAgICAgaWYgKCpwKysgPT0gKHVuc2lnbmVkIGNoYXIpYykKPiArICAg
ICAgICAgICAgICAgIHJldHVybiAoKHZvaWQgKikodWludHB0cl90KShwIC0gMSkpOwo+ICsgICAg
ICAgIH0gd2hpbGUgKC0tbiAhPSAwKTsKPiArICAgIH0KPiArICAgIHJldHVybiAoTlVMTCk7Cj4g
K30KPiAgICNlbmRpZgo+IAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5p
b3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9y
Zy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Wed Apr 25 09:35:07 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 25 Apr 2018 09:35:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBGpN-00034a-LR; Wed, 25 Apr 2018 09:35:05 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ui+u=ho=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fBGpM-00034V-5F
 for minios-devel@lists.xenproject.org; Wed, 25 Apr 2018 09:35:04 +0000
X-Inumbo-ID: c3a9fe5e-486b-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::608])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id c3a9fe5e-486b-11e8-9728-bc764e045a96;
 Wed, 25 Apr 2018 11:33:52 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=xS2zo+KPBhShONgSgNSqF1d9nFAuf3KKSdXgl3xlvgc=;
 b=Q+pKMobr1ueYph4ca2xMfaMEuda/587R9vIMaidHgQJoH5o7BnnEodFvpgnK5A+uHXup7ZnOEsIvBRvy4y0xjhqS477ydZBYFt2HGG7DTVMmp0dEcTaMMYW0/GsAg+qh9964cjW3huEJ30FCbsVKdOqQx0r5KMr8VA/+HBvKPow=
Received: from VI1PR0802CA0024.eurprd08.prod.outlook.com
 (2603:10a6:800:aa::34) by VI1PR08MB1183.eurprd08.prod.outlook.com
 (2a01:111:e400:7b7b::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Wed, 25
 Apr 2018 09:34:55 +0000
Received: from VE1EUR03FT033.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::206) by VI1PR0802CA0024.outlook.office365.com
 (2603:10a6:800:aa::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.13 via Frontend
 Transport; Wed, 25 Apr 2018 09:34:55 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none;gmail.com; dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT033.mail.protection.outlook.com (10.152.18.147) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Wed, 25 Apr 2018 09:34:55 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Wed, 25 Apr 2018
 10:31:31 +0100
Date: Wed, 25 Apr 2018 09:31:28 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180425093126.GA16231@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-20-git-send-email-shijie.huang@arm.com>
 <56add9e2-c11d-65c3-1d61-d29c65d5af00@arm.com>
 <20180423084936.GB30544@ubuntu.shanghai.arm.com>
 <e2452065-e182-7789-5e0d-0e8282cb4fd7@arm.com>
 <20180425054805.GA12527@ubuntu.shanghai.arm.com>
 <cb756af5-b8cc-ffb1-ae53-1d7ee6bbe297@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <cb756af5-b8cc-ffb1-ae53-1d7ee6bbe297@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39860400002)(396003)(376002)(39380400002)(346002)(2980300002)(438002)(199004)(189003)(53546011)(26005)(76176011)(7696005)(246002)(8936002)(8676002)(356003)(229853002)(6636002)(6666003)(6246003)(86362001)(77096007)(186003)(4326008)(6862004)(39060400002)(50466002)(23726003)(1076002)(5660300001)(305945005)(104016004)(55016002)(97756001)(33656002)(478600001)(26826003)(72206003)(106466001)(11346002)(446003)(316002)(336012)(426003)(54906003)(58126008)(16586007)(126002)(476003)(2906002)(46406003)(47776003)(486006)(8666007)(93886005)(106002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR08MB1183; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT033;
 1:fMTDxknjUCGePo9QsqSJKilqvrxG1pU5WxfI/5Zvcv30XdCpFyChHVVbcTJCEa4i/d1tndP1igm9FfImoYlkpXjB+zIQb1cdtyPHA67vgSF3F8zqCm6Y4mdwKLA/WTSm
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR08MB1183; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB1183;
 3:cHvdoCkBmdhB2toLXVTp8aTdPkHerdl0isNFFK0DYUX6pELMQIE6K382bOYvA1HpFxzWy/eEqkTjYsg5wwso2I7qJAM5VmUtRtUQzKjbu6dXmXSwmn7jH39Enso9QAdOZn3Jok2QaQ7t7tKeM5W0PnbcqLPQ1ozqdGR4YKV6/0z+bbePnT4hqFiv6J5+JxsHd9bstx3eNVBxFkypud7LZZ3sa/Nvh7iivCRpZq3wzSysIEvkSYeqB/rRkbvyAndwJMIOutnLO1tS35i9C7h9u5+yXvtFV47ObYpxiXlPOzIhGfQk9Yk1gt+dbcnpVAulH8+PP3ckycmIy8tJPOz58Skxbv2BYB/SrfTM+CdXfA8=;
 25:983q1xk5bfOpkzdau0U4x9TU+5fAxiYaUjflJNjXyPet59g3u1T+QVg4shf+s3te96nF4fXG5i1cK9QIBjOFXYVPw+SgoxzN+Bk3uI8h61pDtcffiM4anii1yLgyC2rYyom4O1NNyG6yl+jB6Oo3pdPS80UfJWJkBa4qU8K5eem8dSa8c01h2vv6fA2GFAagK/RzVZf3CR7JDbG7c14maD9pp/d9fVDxB293/gl9W5uDlYPD+RCK95pmdhmVdacrMpeATC9O02Xu949TbmwlZRNojDjeONbAHjYtl6Gpfpt5QIjRntODis5upU/HN+L6Y4LmZyh4wgHgTR+QQgJ7sQ==
X-MS-TrafficTypeDiagnostic: VI1PR08MB1183:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB1183;
 31:keDYI/+RFVM+jPx9zjqSNE7dP0dV/ATAVKzZBt8wPvoUZR/UtMWo7jTlQHYsdPjM+qmEQaW4Uf4MKVsjohwO+XYDsGCwjcvilffp6NsXCIz1LZAvlNH0b9G6ghyIeY+KAniwqDGh2VY6oWgaiRPs2srbWOQLGsLXhNUSYIK49w4aHqg6Gl3aKLUz+60CuomqhI8thTgOSxwyR8zIh4uBn3uNUX7GUaltUY34CV0tWSE=;
 20:eudiuRj/4ttebUm9sDkL750rjq0zRU8xNJzwtJhdlx3RNukfu/H9KYZPN5zUVLB0hAubk6Qlagbfy9wFGFXklREBdl8JKKQfabqFopsRRrgaiOClx5VzTQt9NqTl8cCRhVcxXecWHioq9ncYKMcNUTBZLHxrr2Bdb3bEvOEsqXXZC7Fmclfbl/a24cMMBuEYMjNv2k4zJRZIQJ1iGU/n2goG3eTqWHV5R26crc+CfBSdlcIbrs/OJJFMt1Un12dA/ppU0Qm4oTJzLL8EH0eA037zVgCHhQgxiJuNeDcTagHGMOEHqz8vOzVshZpj/+EIeXpYpyVggEDa04gH6AxHvJ8dP5by0Ri04u1IrBekrjY=;
 4:Dc705iqSfyUlCrqtI0ZzaYHhsrlsqPtKwLphaqqJxVlXFXFNbkdv/4AshoUAczydKCuHkU1Q5d4OcZu0mGuw2CA5HEF3KSThXpHEnbzwC7y7kKWOM977dCHUYW4XhjxiYYzGBSz6vuZoY7teb1gWV7sIEpYM1d4zQETxxGdjf6s3He6iIcyzyRI/VGKf3zdk7WdIwP+FjeXve3V63kHDuFMVCqfbWwtGkSsZ+3yXAMOHet3hMocOjAGOSySg3pBrTZjEcFFXGQPWGJK5sLvg9Nh1z9ovY3Zff7pNAvYR7mHASIFVBdPAzEsUEqFUf1tr
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR08MB1183BA6726C98EE86DED50B7848F0@VI1PR08MB1183.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231232)(944501410)(52105095)(3002001)(10201501046)(93006095)(93004095)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123558120)(6072148)(201708071742011);
 SRVR:VI1PR08MB1183; BCL:0; PCL:0; RULEID:; SRVR:VI1PR08MB1183; 
X-Forefront-PRVS: 06530126A4
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR08MB1183;
 23:PflLpvYSc5YR12r5R9QPoeEcvJRyEJ5QC5a1Q66rW?=
 =?us-ascii?Q?xCdHJBrs1+jQDlCaHsvCrn+AYTWaU8H2iruaT2LldnrkgwPp4EcJZwWtzZTc?=
 =?us-ascii?Q?4csskYtC/fdxfFZpslET38IVbWLounBtlYx2uUO+DUXGYB7Y1cM0OKjoK6Uw?=
 =?us-ascii?Q?vvLEYNyhtYOFbARF5LkJUys/x6h7jhp3F/tXO9jZgL5BVTxXb21MEsV+aVhi?=
 =?us-ascii?Q?wlhQ61B1T0UQrLjqW5jqU1IBhlZduTOk9AumkWWudon7Yqt6OpzgXPFF6fzQ?=
 =?us-ascii?Q?UPIkzU4G+VkUDW17RhNpTwB4m0OwGEwwCdAXk8ykXDs740u9Vcb2dc1mbfBH?=
 =?us-ascii?Q?WJ5pN4pruHFTK/gYtqlTBn/1fXcFicW+QN94MtIZkFOEI5rK2Dj7D7yfK6d2?=
 =?us-ascii?Q?EtPScaFZWpVYYyFZO/mssJOn6VSE5qTqUFcgkGojdexxQpdJt7bxg714o1wU?=
 =?us-ascii?Q?+TZLdCG8DyFcsoKSog7bIKCmpD+NPUz8jNg9IQoPeZfdG/4HhIbzdN8AJn+4?=
 =?us-ascii?Q?FPwA7li8dQRWExh4i2iwKt0suAEOsMXZObvCQZ2qzSuNyn+IZ2wjW95/mEHS?=
 =?us-ascii?Q?YfV89X+mRb5IBrXMfvpSsv+c3W7R+lDEirgWJhj7/liskPXcMXYJYuZKUYFD?=
 =?us-ascii?Q?L4TJo11wZEC9nTeR9NLLxKVLa1q/H5gdKiSZBvHPg2f4lvDzKRdLnkj7nHbW?=
 =?us-ascii?Q?uq8N/14GUyLQOfebWvMtHJxlDc9L5vYjtv0LGf0qb7kw0PiZluuZj/cJOMIO?=
 =?us-ascii?Q?Wl7y5xAvLpiWCfipsedjdGHNq4YDiI25h2WXoKsV3I8Qv0abGX6iXDZGLaKU?=
 =?us-ascii?Q?pybdKio2gb2meL1be+Cll4S/TnmSQ+e40w1lWc5mdOWR8mOAvr0sZtpfuOXw?=
 =?us-ascii?Q?BQnFe4nPIWgJ/VvMVdkqWqWht3XevjcRydmxd8EAZdtMo3R2CF17Rt1gyBPQ?=
 =?us-ascii?Q?xSY3ZVoEcKv7xcGSDYFcGwC3tTZxL3bPAhVmVA8dO5TOmt9xnrBCFO6LVhj/?=
 =?us-ascii?Q?id83Qm88PYlwbK6CAhapROGHCMNkkt/czbs75Ufikg4L6juqyrmwaetd60r4?=
 =?us-ascii?Q?4QqSegWIZ9iXlPrBw+WNFV7DCs7jXOZiZjU/n8agpxO5Kxv6OL/gnGKR4tnZ?=
 =?us-ascii?Q?MX6WbeBAoe2ctUW2/+gAKVhoAcgjnHMGMJSqXpkEVUB9MkGVaBeaPEYAAd0u?=
 =?us-ascii?Q?vAYXg6F7NWtMpTSWrGTyo5cAwBJXBS0XxnNG5DrbmrEkiPhSrjEdd+nHTb/q?=
 =?us-ascii?Q?LVaa80+A4c8+irbPRUSAxpH7Vu9B3jgE6e5/UEXwqoMyfKsywNplB/CaSpe4?=
 =?us-ascii?B?Zz09?=
X-Microsoft-Antispam-Message-Info: 3ETwLWOoqo1vALXGEne8AbAtj9xq+5wTFEYzBc8Z7fL68jYlNBqUaSbbg1zt9IVuIB3YLgYiczPjClqVg1VeVFnSGDGt4o63bZdXEV2cPNZF5MIIVHzE4NL/8OoebH0XoVCogtc34+UmwnyYJYRm8IxrSQVkWDdXcVothje3DsD1r+E9sG/xLv9nFAXzLZA+bKaiMwio0tVIvwwi+RIq/A4+jyWIg9eJU1YWhPv5S5cQJSMW/nS1VJCMV1++YcilXLbnOOJn9ig/F04NZVIYpb91kZor3n8hUNMI45CsTUdkaKZZuXArrkwFSitDX08lJojuIkPLIlPTMuBLPS6E1uYtO798FgXrD1L4JtSj73W6QJJDf6JEU5ZSpJgF+dOngZ99u+cJ/HGfwRSKPVjwt8s4se7OWpLA7mKkdwZVGyE=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB1183;
 6:3/Ke3zuBe6YbOIgnHQHGMeTrt3ME5I4d38cJXbScW+jLeCAQFyPaE2WSs+hNiOS2zplkqZz9gOmXBzuux/2AgI9pN0v/UPR0Y2ZIeDgqBKrSC7lxrcFyDl55Vr+oMdcJ0zjuQHEtZI85ReE7/mY9yRMztfVbgQcV3tf6qJazeNpGM3zK/2Mqc4Wq7xNkgj+rKLZ7n8VJobiDeMa8ljEquPnC5Ap5kvh5lheRmbPOR52DhXSBsG0BRp7+SJ5TcH6/r0PN3UdjfcEnyvhlIp7c2nWhC/BybdJ+9D9GsMoZlOGYCFcGndbn1/PwaYYXV5oI2JB2kluHapHDCGfE8t8FPb4RiFOwldMzAhvX12Av4n1RC8RHaByZS1HI/MwbntVIM+pS5jiAVqYqXc2rcTgMINmxYfKjmAAdDHIBrY0xPiScWtC1DEUXtGdRDVu7Afa7N2cHYuhXRGEjQwztw66wVHrEzY2xSufSpjl3Wo/OzaiD52IB6BHahwWL9D2OXg4N;
 5:/iUtWGiNGqHj7GD3XN2baSPoaWeKg2DSlsjUvNsFP2ZugwuX1HNfcu5UvbBfM+S4+Vl6AJIk02kA/5M1I8i0hIRzVUl2XKqdY98Pl4//Whxxi7lU659loPESEtUJEk6hLnJixEWudfcPhx9MAKibyqJmLX6FN2c31Trbt9DGCe0=;
 24:QoBvfuIXATbc5lGfvuBLdyLQL0r0k6f+xJQ987LZmKafYGH7JxQaVuaN4cAVAtG3N31CZETo5CtzxhfLWzS/HrGF5R4a4xo1dcPZW7WqLgk=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB1183;
 7:/YdlYDUnXBLZXk2RfWWnaCKUWwMLIxORqkC196S/TLSytgHYuP2DG3WS0ZBXak5oVcX+xT3/vOlNr0DamhPmdMlSjMHgf+Ny1U7vnU6NP6WuowbSiIK/8VGNNcGPg+mxCyphceucAjTyS979Ebp1gNRvcYi+fUMNwVkwfW6KNTLIZjHW2UFhQW7+UZhQvRl3BoZCSj//5tqRYtBoMNLqmWHtAS1yRl7Z2YnOpf9jc+cNeLpOpPmWiBTAemRipAO4
X-MS-Office365-Filtering-Correlation-Id: 624d6d51-56f4-4d7e-0410-08d5aa8fce13
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Apr 2018 09:34:55.4534 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 624d6d51-56f4-4d7e-0410-08d5aa8fce13
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB1183
Subject: Re: [Minios-devel] [PATCH v3 19/43] arm64: add shared_info support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMjUsIDIwMTggYXQgMTA6MDU6MzRBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDA0LzI1LzIwMTggMDY6NDggQU0sIEh1YW5nIFNoaWppZSB3cm90ZToK
PiA+T24gTW9uLCBBcHIgMjMsIDIwMTggYXQgMTI6MDU6NTFQTSArMDEwMCwgSnVsaWVuIEdyYWxs
IHdyb3RlOgo+ID4+SGkgU2hpamllLAo+ID4+Cj4gPj5PbiAyMy8wNC8xOCAwOTo0OSwgSHVhbmcg
U2hpamllIHdyb3RlOgo+ID4+Pk9uIFdlZCwgQXByIDE4LCAyMDE4IGF0IDA5OjM0OjE4UE0gKzAx
MDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPiA+Pj4+SGksCj4gPj4+Pgo+ID4+Pj5PbiAxNi8wNC8y
MDE4IDA3OjMxLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPj4+Pj5BZGQgdGhlIHNoYXJlZF9pbmZv
IHBhZ2UuCj4gPj4+Pj4KPiA+Pj4+PlNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamll
Lmh1YW5nQGFybS5jb20+Cj4gPj4+Pj4tLS0KPiA+Pj4+PiAgYXJjaC9hcm0vYXJtNjQvYXJtNjQu
UyB8IDMgKysrCj4gPj4+Pj4gIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKykKPiA+Pj4+
Pgo+ID4+Pj4+ZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0L2FybTY0LlMgYi9hcmNoL2FybS9h
cm02NC9hcm02NC5TCj4gPj4+Pj5pbmRleCA5ZWI3ZWEwLi5mYTM0MDZmIDEwMDY0NAo+ID4+Pj4+
LS0tIGEvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+ID4+Pj4+KysrIGIvYXJjaC9hcm0vYXJtNjQv
YXJtNjQuUwo+ID4+Pj4+QEAgLTI1LDYgKzI1LDcgQEAKPiA+Pj4+PiAgICAgIC5nbG9ibCBib290
X2wyX3BndGFibGUKPiA+Pj4+PiAgICAgIC5nbG9ibCBpZG1hcF9sMF9wZ3RhYmxlCj4gPj4+Pj4g
ICAgICAuZ2xvYmwgaWRtYXBfbDFfcGd0YWJsZQo+ID4+Pj4+KyAgICAuZ2xvYmwgc2hhcmVkX2lu
Zm8KPiA+Pj4+PiAgICAgIC5hbGlnbiAxMgo+ID4+Pj4+ICBib290X2wwX3BndGFibGU6Cj4gPj4+
Pj5AQCAtMzcsNiArMzgsOCBAQCBpZG1hcF9sMF9wZ3RhYmxlOgo+ID4+Pj4+ICAgICAgLmZpbGwg
IFBBR0VfU0laRSwxLDAKPiA+Pj4+PiAgaWRtYXBfbDFfcGd0YWJsZToKPiA+Pj4+PiAgICAgIC5m
aWxsICBQQUdFX1NJWkUsMSwwCj4gPj4+Pj4rc2hhcmVkX2luZm86Cj4gPj4+Pj4rICAgIC5maWxs
ICBQQUdFX1NJWkUsMSwwCj4gPj4+Pgo+ID4+Pj5XaHkgZG9lcyBpdCBoYXZlIHRvIGJlIGRlZmlu
ZWQgaW4gYXNzZW1ibHk/IENhbid0IHRoaXMgYmUgZG9uZSBpbiBDPyBPciBldmVuCj4gPj4+SSB0
aGluayB3ZSdkIGJldHRlciBrZWVwIGl0IGhlcmUuCj4gPj4KPiA+PkFzc2VtYmx5IHNob3VsZCBy
ZWFsbHkgb25seSBiZSB1c2VkIHdoZW4gdGhpcyBpcyBzdHJpY3RseSBuZWNlc3NhcnkuLi4KPiA+
Pgo+ID4+PldlIHVzZWQgdGhlIHNoYXJlZF9pbmZvIGF0IGFyY2hfaW5pdCgpIHdoaWNoIHRoZSBt
ZW1vcnkgc3lzdGVtIGlzIG5vdCByZWFkeSB5ZXQuCj4gPj4KPiA+Pi4uLiBpZiBpdCBpcyB1c2Vk
IGluIGFyY2hfaW5pdCgpIHRoZW4gaXQgc2hvdWxkIGJlIGRlZmluZWQgaW4gQyBzdGF0aWNhbGx5
Lgo+ID5JIGZvdW5kIGl0IGlzIGhhcmQgdG8gY29kZSBpdCBpbiBDLgo+ID4KPiA+VGhlIGZvbGxv
d2luZyBpcyB3aGF0IEkgZGlkOgo+ID4KPiA+ICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4gICBzaGFyZWRfaW5mb190IHNoYXJl
ZF9pbmZvIF9fYXR0cmlidXRlX18oKGFsaWduZWQoUEFHRV9TSVpFKSkpOwo+ID4gICAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gPgo+
ID5CdXQgd2UgbmVlZCB0aGUgc2hhcmVkX2luZm8gdG8gb2NjdXB5IGEgd2hvbGUgcGFnZSB3aGlj
aCBpcwo+ID51c2VkIGluIG1hcF9zaGFyZWRfaW5mbygpLgo+ID4KPiA+SXMgdGhlcmUgYSBnb29k
IHdheSB0byBzb2x2ZSBpdD8KPiAKPiBjaGFyIHNoYXJlZF9pbmZvW1BBR0VfU0laRV0gX19hdHRy
aWJ1dGVfXygoYWxpZ25lZChQQUdFX1NJWkUpKTsKb2theSwgdGhhbmtzLgoKSHVhbmcgU2hpamll
CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3Mt
ZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw
czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 25 09:41:14 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 25 Apr 2018 09:41:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBGvJ-0003fA-8Y; Wed, 25 Apr 2018 09:41:13 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ui+u=ho=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fBGvH-0003f5-LG
 for minios-devel@lists.xenproject.org; Wed, 25 Apr 2018 09:41:11 +0000
X-Inumbo-ID: 9e4d8f5b-486c-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::62a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 9e4d8f5b-486c-11e8-9728-bc764e045a96;
 Wed, 25 Apr 2018 11:39:58 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=VyRPhC7ohwK6zuvOlCJ9ZKRCP2MjNF5cgvqlCQ3cgFQ=;
 b=Gqcq7BiRx9Wq8WPAps/h0GZb5X1b3BjA6DfXRIF320oGm+DDub6XH586PanLcO8Uc9V7tn/OYlcoz4pfiwCXSUqDXCYU2jSs4y4numKpszMSykRsIsKz06orm1M9LYTA3EFdbYw4vaeqvTQX6Agu65WXsAFG38aEqWr2w8q29NA=
Received: from HE1PR08CA0045.eurprd08.prod.outlook.com (2603:10a6:7:2a::16) by
 VI1PR08MB1184.eurprd08.prod.outlook.com (2a01:111:e400:7b7b::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Wed, 25
 Apr 2018 09:41:02 +0000
Received: from AM5EUR03FT057.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::203) by HE1PR08CA0045.outlook.office365.com
 (2603:10a6:7:2a::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12 via Frontend
 Transport; Wed, 25 Apr 2018 09:41:01 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none;gmail.com; dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT057.mail.protection.outlook.com (10.152.17.44) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Wed, 25 Apr 2018 09:41:01 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Wed, 25 Apr 2018
 10:37:08 +0100
Date: Wed, 25 Apr 2018 09:37:05 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180425093704.GB16231@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-21-git-send-email-shijie.huang@arm.com>
 <05114cd7-57c6-04ea-acf9-61d159a1132f@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <05114cd7-57c6-04ea-acf9-61d159a1132f@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(346002)(39860400002)(396003)(39380400002)(2980300002)(438002)(189003)(199004)(1076002)(33656002)(50466002)(4326008)(106466001)(5660300001)(23726003)(76176011)(8676002)(8936002)(7696005)(356003)(246002)(47776003)(46406003)(6246003)(6666003)(6636002)(6862004)(39060400002)(104016004)(2906002)(58126008)(54906003)(16586007)(316002)(305945005)(55016002)(11346002)(478600001)(106002)(336012)(72206003)(186003)(426003)(8666007)(26826003)(486006)(86362001)(59450400001)(53546011)(476003)(77096007)(26005)(446003)(126002)(229853002)(97756001)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR08MB1184; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT057;
 1:jJcSJMbfzfOl8fCbAELIEyBTkXIGXWtgyJSNihc0VAcgSRWW75REhWIAV3MOX/diouKfRAvKU2ZTjBHvi7yWoSCov2yS5Ha8F2YjcYs0ut9E3uymjR7NsSJZdkus32QK
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR08MB1184; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB1184;
 3:+R1+uYrN+KFVyVySTS3DTGVHaCuu19Ej3DPD+l2bLhhKoSzG/bUVr459ImERtq9Lp0rggMiinKFB/Mx2rv1JiHOK1mkup81W48JL812wvWaetT901phC92AHlETyEr4iA/CHjZUsz0ZkxN8teRIyvJNQwnaYQgaaYuIK4Oeik5TENsBpCeqYhsgBIRnYnfIXZFQ6Pn0fyeTuzISnE0V7sUlRXEV8Gyq1Yz6nrqKinCj/2LJZP4IH07Ym0eHEtJPUZNiRaGCBBaDa/zMZ1xJFcZDC28uuC5SSXvWvCSuzZpfHiwRgwZymI12mZGWinuwY8aV6DSzk6nJxiHSlI03kCPMWrbJbgbnv8Dqu3ceGgGc=;
 25:exexjXRKqPPTAHu39AR2p00UVKhHGXltj+/CsteRtk3GhyBGl5yxD6Rc7Hbyu2mBshsqU7gA8S7XL4scYy9T5wwWVcokZWAPPTHckEGyHgYoeUA0zj/QiL9pQJtQnCBYQLqqH+vGJ4ZU+xc+QxDBTH6AZqfJw7uqE7bQyeK6DRnUUjufO+C3TZYNmFPwgAp1tVN/4xMnzOGza6YWsKZTI86JhJegExXyCWg7i/kIMxo3Jrne1roqJh+1NXEu9NS4YyvxQ/bcH0cKILKUdkqxz8tC7YRqb8FYMfvlqAs17oWoM8o5VW8AUPEBn9mGTdfNBAZdI02wxP+HG+EIaxHudw==
X-MS-TrafficTypeDiagnostic: VI1PR08MB1184:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB1184;
 31:vKzf0EpxQtwgYl4EyodZwanDzpZAhVi4MaEOVSjt3+NcnowlnnQ5ucqgJQbqIKIR9So8VIds/L+M7h/NHa+kZk49PiZvk03LHCjri+KGspbiHfQWbmBatNIykLuYhsQw40qcjQIiUqtGTEgH3ZPXmN22IEZRNv0FbsNbByMtLsjAu4dZPghpBs770T/S1Pv0kWaguurfHhAVfJW06r61tbP09v/Z2+J3bECYdGHf5P0=;
 20:TuDG04IRlbnhBUZVvIi1NYBaUnpr3kE5a1YbD45n9wJYGMO4KiqNLZL1P+GdyAmxuKDtX0AHLP5ZS/UM88U5N/U/zFjLfzJ5E8C8/O67gkWmkLESQQ7eIoD/02i6pUQ/4it0x33VlMKDeCcDEXiD3aDchHeEjOvrlJDiV5OuYA/nxQryyo+XTRE4LBEvzhkEpNcXFfN7Aprmc35Za80YWjltT0ktKSboN1KpBZ0B3KHt/uYcdJu+E6S/lrG4vtZ63jhz7MW4KrLvrr77zM+sRzwiPoQfGAF3eCQGp4ZW2/31roLoMXw8p0hooQe8Yz5XBDZeTE7jf5C83XSB053fDkSsjwVHFqBEmCtyIMe+LX4=;
 4:epG5Jo7/bTGNiWlITYLuYCSVMSzwt0Db60nmjMDl5tbRk5+NSfeiPaZ3z4f0b7xq5NPF+YhnKjgKIdSWwU4TxGYBguwHI8J3B5r59qZNINm2YS3H64MoI5mGavLz+X51kaRe2kDFCTSA4BaTy/z2Nz7GCSgXATCmI29yJeKgqNff7bL1PLSGi/9F1Ys1fF36Ocn5DPFND1zX+T4sMiUnQk297fm8NVpXivyQ+O88igFKXyJ53PL0p9+mRd7BiaDW3nWrVf5ULOxR2IZ6s1x/0CQyvIy6nuAHAflhzeVTw6rNoFXitl3OwB/3+aW/l0K0
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR08MB118464CA36C113DAFF1F1AC3848F0@VI1PR08MB1184.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(3231232)(944501410)(52105095)(10201501046)(93006095)(93004095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011);
 SRVR:VI1PR08MB1184; BCL:0; PCL:0; RULEID:; SRVR:VI1PR08MB1184; 
X-Forefront-PRVS: 06530126A4
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR08MB1184;
 23:FHU/9HmHDUpqWvzLkc5Pvz6Vc2CwbhVH9pUToews7?=
 =?us-ascii?Q?Kd8qFM+XdMzP2sT0cedt2525H5JLF7cHHWzMBtMajENLf5O25XV5B5iqbGRX?=
 =?us-ascii?Q?CYWfhYPvs5Yo7YEnPX/bA+budAX9Y1vgP2AKTzEHl2Fk/0i5lrRUfE/FX4dd?=
 =?us-ascii?Q?12VWxmVtXVE+KScHKlMfVUKINx0NEuhF62j7I+GxJaoLO0A+D1C3vgjUPX8f?=
 =?us-ascii?Q?k4EZyu8bK5GzwASS5vxl0QcL3ORx8MkzibYjRxiQBc7vPLl4weylCXlkpAeC?=
 =?us-ascii?Q?fcDzp62srQsoFYQQb/P9vobtA9JBO/GAi3OloDSrc1Lv943vHRsfV/3Q0tYA?=
 =?us-ascii?Q?pvrZ60yuLrI7+A1ZpkDtGcE7AU8xCCLjTh1m7zic6SA3N/snZiMz905jSHba?=
 =?us-ascii?Q?SzULQrjHSvOf5pKBK+hAKkfGRAZvmRRne1A4vPmgtn7picLK2tfZGykWv3iD?=
 =?us-ascii?Q?t6/cjZvu8Ekl7dn8rIIjUSDw54qc9G+Xvmg472zqxf3kqG/hD7V6gL4EFcKR?=
 =?us-ascii?Q?gcJZHk7f57gCeTqyFs+S5LUcC25xhb3eA1vdkg2b91YEQbQN0Y+lRBuAvPUf?=
 =?us-ascii?Q?2lVPmOJvCaWhFpW48NEsIJG+rkdxtMWIcu/Y6tDZuUteqFBN6qTS1m9KyNiK?=
 =?us-ascii?Q?qUQ1tzC8zDu4tPFNAoHDwS7cswc4Y6cUj5mvzsyKA+auqrglqpHlD5E/Ckks?=
 =?us-ascii?Q?DWoDgNffspG47XUa2DukHv+dOQEmAoHecCRHm5Ti3T1/54bH/Jbf4H+7XSxR?=
 =?us-ascii?Q?ghzEPp0PAd4gF0dfRjrr2AQ5KUpDtXDJXDUx0vfpukq7Pja42iURPVPgij3A?=
 =?us-ascii?Q?y2RyDw3HhhDR+O7EO5g/LKQucyVJCHDm+3koLvgpCaSmAyuLNCTcNkTCP946?=
 =?us-ascii?Q?FqYE23HI63jqgXcVYjAtDQ3zrhihM+3Ms6ZSb8WK/a3721hXFHMlqWuus6p7?=
 =?us-ascii?Q?WXtJV+QANHuWKgominW1XYvbSfiUvd9UxTiK7YMxsGqzyJwr9+ldeph9GbF0?=
 =?us-ascii?Q?Qc1FNNkwOGBJZBb/yBu7jcVgPovLw7NF8zMgwtjl5bP7hUVNhvP3PKye10nj?=
 =?us-ascii?Q?q8S3zxVY0brCar18CSL7eMMgK1dB0H45Mz72defDzWQMH4mW/yJddX4e4S9Q?=
 =?us-ascii?Q?0jyOvezPPYYznONCNghlHmTmgjinlMT/PFVNGuuHZlnZl0IcM+Mv3kHzjxSY?=
 =?us-ascii?Q?cac9ZD03HGQ9vgCySxmuqwA5rUT6G2lvlA8wS+t+Z1ux3pgC+i+XJD3Vcy3f?=
 =?us-ascii?Q?V/e3wit511/5r9QIICpzScSkt+FxEvS7m0dNOlUpYjyGtWzsUkk0+Tzi1ADA?=
 =?us-ascii?B?UT09?=
X-Microsoft-Antispam-Message-Info: QOIFdqos7/JSOo2X5qnf7IF1q94LAdubfdmSPuXjqs4bMMBTCTWWJ1nYPJ1XFTaP8PUMeAOVW9OfGXZGofrrsF1ONdVlJSu2yTxX5PReG1HTSZJiIe4nua9oNitpXTA0kyqkKPPk2RZB7CwBCNofesfDp2lAY2uXecKmpOmNWnfn93+we/4y8Tv+M0TM4+wZS8RCZds4Soih7GI5qtU/CUJUML8zaSZZSY/j+yiV9+q3qvo9e3UYHgWPciCZLKOyyvQuq9FDTzFPHm6BSds9jifH8Q5HxDmXVG2yfzHvRiYRfaZxQ0aXZEaY81A1sRLoj3Z+3LSY6ZtqQNlzy0517kWnlh/Zvok8XFwlIu8flZWZk8Sppn/hmqz93m6pFr5ZWxzhA8HLDp4sggeHnwEs3cc6QLCS0y9mxtPkWH5D1bw=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB1184;
 6:qtlOMsfU6zc0Wqytsv4eo3uonGEZfvHdfcx2vY8dpekjzUiJg9S4PMgfO5U+kFLCw2qL6XE4i5G5LWoInTpCoXCnq53O2ee8sF48KoWhi/bt3ylijL7KLw9lF8l1frtnjgag5C6p8J3If+PdR+4WGva2LwtfFCbe5H7MRFINYFhNSdElxgDLfdcb2D6rzBYreDi04GilHb86RC3p5jlC4sdaxof5rDEL8iSXN64snLPXBV1sSJM5LidPudaz4H/zi/9pCJyJ5MrhGTr59jh16RfitLkfeSmpHQx838BXTkJcRtvr+20e650B4WJKTExKvVevqmD4a31Fc0VJxpdPtNj6mj42XAf9oqc/OJyffH2Fhb9pmlsIPqR0FWGu0YKsrP6Wgs4K1DpaeMFyNUn5iG1OAYvhu+f+rZhMxdbiX78c04UiRAIgevdjCUyzCmf7ZXmnIrdGvC0QU3JtAzAv+oKZ+jGiwlZbz46v6+YfBnyIzAklk62EPdETlNvYuqWm;
 5:JFnjJogGoaT3NAHw2sREWAcQNAPQkecqfEouIGIdQmV6s+i2ngFAFF7vDe19OssbbbHhYGBlRWWPRZjyZnGlPHNT3GrWA4G/KSZGdusx99EkVN0KfrKPu6NR3XeL9/3C0GGeq8FYQ80Te9QFQwUW6irwRL0hneIiRu/GpDJc4Z4=;
 24:/u8h8EDsGKVDU1LGM7UXJh2H1ekXggtu3QQZuJ8sk4cbCdPJ0gZEuEvvMdNg5bdYx/HLwANM5PSgN/phZ1GnDOpwREIyBHJ/hqWYSVVk1ew=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB1184;
 7:cA16msCW7vH6llMx8yGuTzN8JS/HIrKiwtUcOKTW9W7PlLBeNvGDazOO1QsRT2DYuWb+mZIGCQisLWRnYJ9qDjuhHRwqPEz+3cj4ZwPZgjQ+QEeElCgw5IHPhRczOmPrKdUOgG7dIfRpDgHsqsyrH4OwmohdzYF8ByXQJzLZMuRV7WuRR3X7dp8E5mh2mQOQQdGi5fF+LF+a+QNhgTHenlM7Xr4QIDahjQPh2WWQj8mH8nzPFVs8QKuLMt5tjPKO
X-MS-Office365-Filtering-Correlation-Id: 79cf0898-f20f-49ce-eac6-08d5aa90a812
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Apr 2018 09:41:01.2273 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 79cf0898-f20f-49ce-eac6-08d5aa90a812
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB1184
Subject: Re: [Minios-devel] [PATCH v3 20/43] mini-os: implement the
 memmove/memchr
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMjUsIDIwMTggYXQgMTA6MTA6NThBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDA0LzE2LzIwMTggMDc6MzIgQU0sIEh1YW5nIFNoaWppZSB3cm90ZToK
PiA+VGhpcyBwYXRjaCBpcyBzcGxpdCBmcm9tIHRoZSBDaGVuIEJhb3ppJ3Mgb2xkIHBhdGNoOgo+
ID4KPiA+IlRoaXMgYWN0aXZhdGVzIHRoZSBBUk0gY29kZSBhZGRlZCBpbiB0aGUgcHJldmlvdXMg
cGF0Y2hlcy4gT24KPiA+ICBBUk0sIE1pbmktT1Mgd2lsbCBib290IGFuZCBkaXNwbGF5IHNvbWUg
b3V0cHV0IG9uIHRoZSBjb25zb2xlLiBUZXN0ZWQgd2l0aDoiCj4gPgo+ID5Ob3RlOiBUaGUgY29k
ZSBpcyBjb3BpZWQgZnJvbSBGcmVlQlNEIGNvZGU6Cj4gPiAgICAgICBmcmVlYnNkL2NvbnRyaWIv
bGRucy9jb21wYXQvbWVtbW92ZS5jCj4gCj4gVGhhdCdzIG9ubHkgZm9yIG1lbW1vdmUuIEhvdyBh
Ym91dCBtZW1jaHI/ClRoZSBtZW1jaHIgaXMgYWxzbyBmcm9tIHRoZSBGcmVlQlNEIGNvZGUuLi4K
Cj4gCj4gQWxzbywgY2FuIHlvdSBleHBsYWluIGluIHRoZSBjb21taXQgbWVzc2FnZSB3aHkgeW91
IG5lZWQgdGhlbT8KVGhlIEZEVCBjb2RlIHdpbGwgbmVlZCB0aGVtLi4KClRoYW5rcwpIdWFuZyBT
aGlqaWUKPiAKPiBDaGVlcnMsCj4gCj4gPgo+ID5TaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUg
PHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+ID4tLS0KPiA+ICBNYWtlZmlsZSAgICAgIHwgIDEgKwo+
ID4gIGxpYi9tZW1tb3ZlLmMgfCA3NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKwo+ID4gIGxpYi9zdHJpbmcuYyAgfCAxMiArKysrKysr
KysrCj4gPiAgMyBmaWxlcyBjaGFuZ2VkLCA4NyBpbnNlcnRpb25zKCspCj4gPiAgY3JlYXRlIG1v
ZGUgMTAwNjQ0IGxpYi9tZW1tb3ZlLmMKPiA+Cj4gPmRpZmYgLS1naXQgYS9NYWtlZmlsZSBiL01h
a2VmaWxlCj4gPmluZGV4IDZhMDVkZTYuLjNhZDI1MjIgMTAwNjQ0Cj4gPi0tLSBhL01ha2VmaWxl
Cj4gPisrKyBiL01ha2VmaWxlCj4gPkBAIC02Miw2ICs2Miw3IEBAIHNyYy15ICs9IGxpYi9tYXRo
LmMKPiA+ICBzcmMteSArPSBsaWIvcHJpbnRmLmMKPiA+ICBzcmMteSArPSBsaWIvc3RhY2tfY2hr
X2ZhaWwuYwo+ID4gIHNyYy15ICs9IGxpYi9zdHJpbmcuYwo+ID4rc3JjLXkgKz0gbGliL21lbW1v
dmUuYwo+ID4gIHNyYy15ICs9IGxpYi9zeXMuYwo+ID4gIHNyYy15ICs9IGxpYi94bWFsbG9jLmMK
PiA+ICBzcmMtJChDT05GSUdfWEVOQlVTKSArPSBsaWIveHMuYwo+ID5kaWZmIC0tZ2l0IGEvbGli
L21lbW1vdmUuYyBiL2xpYi9tZW1tb3ZlLmMKPiA+bmV3IGZpbGUgbW9kZSAxMDA2NDQKPiA+aW5k
ZXggMDAwMDAwMC4uZDVhYzAzNgo+ID4tLS0gL2Rldi9udWxsCj4gPisrKyBiL2xpYi9tZW1tb3Zl
LmMKPiA+QEAgLTAsMCArMSw3NCBAQAo+ID4rLyoKPiA+KyAqICAgICBtZW1tb3ZlLmM6IG1lbW1v
dmUgY29tcGF0IGltcGxlbWVudGF0aW9uLgo+ID4rICoKPiA+KyAqICAgICBDb3B5cmlnaHQgKGMp
IDIwMDEtMjAwOCwgTkxuZXQgTGFicy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KPiA+KyAqCj4gPisg
KiBTZWUgQ09QWUlORyBmb3IgdGhlIGxpY2Vuc2UuCj4gPisqLwo+ID4rCj4gPisvKgo+ID4rQ29w
eXJpZ2h0IChjKSAyMDA1LDIwMDYsIE5MbmV0TGFicwo+ID4rQWxsIHJpZ2h0cyByZXNlcnZlZC4K
PiA+Kwo+ID4rUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Cj4gPittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKPiA+Kwo+ID4rICAgICog
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLAo+ID4rICAgICAgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KPiA+KyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gPisgICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCj4gPisgICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgo+ID4rICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBO
TG5ldExhYnMgbm9yIHRoZSBuYW1lcyBvZiBpdHMKPiA+KyAgICAgIGNvbnRyaWJ1dG9ycyBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMK
PiA+KyAgICAgIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNz
aW9uLgo+ID4rCj4gPitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKPiA+K0FORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiA+
K0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFCj4gPitBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKPiA+K0xJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKPiA+
K0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCj4gPitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKPiA+K0lOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCj4gPitD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQo+ID4rQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKPiA+K1BPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgo+ID4rKi8KPiA+Kwo+ID4rI2luY2x1ZGUgPG9zLmg+Cj4gPisjaW5jbHVkZSA8
bWluaS1vcy9saWIuaD4KPiA+Kwo+ID4rI2lmbmRlZiBIQVZFX0xJQkMKPiA+Kwo+ID4rdm9pZCAq
bWVtbW92ZSh2b2lkICpkZXN0LCBjb25zdCB2b2lkICpzcmMsIHNpemVfdCBuKQo+ID4rewo+ID4r
ICAgICAgIHVpbnQ4X3QqIGZyb20gPSAodWludDhfdCopIHNyYzsKPiA+KyAgICAgICB1aW50OF90
KiB0byA9ICh1aW50OF90KikgZGVzdDsKPiA+Kwo+ID4rICAgICAgIGlmIChmcm9tID09IHRvIHx8
IG4gPT0gMCkKPiA+KyAgICAgICAgICAgICAgIHJldHVybiBkZXN0Owo+ID4rICAgICAgIGlmICh0
byA+IGZyb20gJiYgdG8tZnJvbSA8IChpbnQpbikgewo+ID4rICAgICAgICAgICAgICAgLyogdG8g
b3ZlcmxhcHMgd2l0aCBmcm9tICovCj4gPisgICAgICAgICAgICAgICAvKiAgPGZyb20uLi4uLi4+
ICAgICAgICAgKi8KPiA+KyAgICAgICAgICAgICAgIC8qICAgICAgICAgPHRvLi4uLi4uLi4+ICAq
Lwo+ID4rICAgICAgICAgICAgICAgLyogY29weSBpbiByZXZlcnNlLCB0byBhdm9pZCBvdmVyd3Jp
dGluZyBmcm9tICovCj4gPisgICAgICAgICAgICAgICBpbnQgaTsKPiA+KyAgICAgICAgICAgICAg
IGZvcihpPW4tMTsgaT49MDsgaS0tKQo+ID4rICAgICAgICAgICAgICAgICAgICAgICB0b1tpXSA9
IGZyb21baV07Cj4gPisgICAgICAgICAgICAgICByZXR1cm4gZGVzdDsKPiA+KyAgICAgICB9Cj4g
PisgICAgICAgaWYgKGZyb20gPiB0byAgJiYgZnJvbS10byA8IChpbnQpbikgewo+ID4rICAgICAg
ICAgICAgICAgLyogdG8gb3ZlcmxhcHMgd2l0aCBmcm9tICovCj4gPisgICAgICAgICAgICAgICAv
KiAgICAgICAgPGZyb20uLi4uLi4+ICAgKi8KPiA+KyAgICAgICAgICAgICAgIC8qICA8dG8uLi4u
Li4uLj4gICAgICAgICAqLwo+ID4rICAgICAgICAgICAgICAgLyogY29weSBmb3J3YXJkcywgdG8g
YXZvaWQgb3ZlcndyaXRpbmcgZnJvbSAqLwo+ID4rICAgICAgICAgICAgICAgc2l6ZV90IGk7Cj4g
PisgICAgICAgICAgICAgICBmb3IoaT0wOyBpPG47IGkrKykKPiA+KyAgICAgICAgICAgICAgICAg
ICAgICAgdG9baV0gPSBmcm9tW2ldOwo+ID4rICAgICAgICAgICAgICAgcmV0dXJuIGRlc3Q7Cj4g
PisgICAgICAgfQo+ID4rICAgICAgIG1lbWNweShkZXN0LCBzcmMsIG4pOwo+ID4rICAgICAgIHJl
dHVybiBkZXN0Owo+ID4rfQo+ID4rCj4gPisjZW5kaWYKPiA+ZGlmZiAtLWdpdCBhL2xpYi9zdHJp
bmcuYyBiL2xpYi9zdHJpbmcuYwo+ID5pbmRleCA4YjI0MTQ2Li5jOTZjYTQxIDEwMDY0NAo+ID4t
LS0gYS9saWIvc3RyaW5nLmMKPiA+KysrIGIvbGliL3N0cmluZy5jCj4gPkBAIC0yMjUsNCArMjI1
LDE2IEBAIGludCBmZnMoaW50IGkpCj4gPiAgICAgcmV0dXJuIDA7Cj4gPiAgfQo+ID4rdm9pZCAq
bWVtY2hyKGNvbnN0IHZvaWQgKnMsIGludCBjLCBzaXplX3QgbikKPiA+K3sKPiA+KyAgICBpZiAo
biAhPSAwKSB7Cj4gPisgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnAgPSBzOwo+ID4rCj4g
PisgICAgICAgIGRvIHsKPiA+KyAgICAgICAgICAgIGlmICgqcCsrID09ICh1bnNpZ25lZCBjaGFy
KWMpCj4gPisgICAgICAgICAgICAgICAgcmV0dXJuICgodm9pZCAqKSh1aW50cHRyX3QpKHAgLSAx
KSk7Cj4gPisgICAgICAgIH0gd2hpbGUgKC0tbiAhPSAwKTsKPiA+KyAgICB9Cj4gPisgICAgcmV0
dXJuIChOVUxMKTsKPiA+K30KPiA+ICAjZW5kaWYKPiA+Cj4gCj4gLS0gCj4gSnVsaWVuIEdyYWxs
CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3Mt
ZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw
czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 25 10:09:51 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 25 Apr 2018 10:09:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBHN0-0005Rk-Qb; Wed, 25 Apr 2018 10:09:50 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=anjg=ho=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBHMz-0005RT-2p
 for minios-devel@lists.xenproject.org; Wed, 25 Apr 2018 10:09:49 +0000
X-Inumbo-ID: 9eadc038-4870-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 9eadc038-4870-11e8-9728-bc764e045a96;
 Wed, 25 Apr 2018 12:08:37 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 04BCF1435;
 Wed, 25 Apr 2018 03:09:47 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 349DB3F4FF;
 Wed, 25 Apr 2018 03:09:45 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-21-git-send-email-shijie.huang@arm.com>
 <05114cd7-57c6-04ea-acf9-61d159a1132f@arm.com>
 <20180425093704.GB16231@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <2c60544a-7515-6061-6fdf-93ce6736aa83@arm.com>
Date: Wed, 25 Apr 2018 11:09:43 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180425093704.GB16231@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 20/43] mini-os: implement the
 memmove/memchr
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAyNS8wNC8xOCAxMDozNywgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFdlZCwgQXByIDI1
LCAyMDE4IGF0IDEwOjEwOjU4QU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4KPj4KPj4g
T24gMDQvMTYvMjAxOCAwNzozMiBBTSwgSHVhbmcgU2hpamllIHdyb3RlOgo+Pj4gVGhpcyBwYXRj
aCBpcyBzcGxpdCBmcm9tIHRoZSBDaGVuIEJhb3ppJ3Mgb2xkIHBhdGNoOgo+Pj4KPj4+ICJUaGlz
IGFjdGl2YXRlcyB0aGUgQVJNIGNvZGUgYWRkZWQgaW4gdGhlIHByZXZpb3VzIHBhdGNoZXMuIE9u
Cj4+PiAgIEFSTSwgTWluaS1PUyB3aWxsIGJvb3QgYW5kIGRpc3BsYXkgc29tZSBvdXRwdXQgb24g
dGhlIGNvbnNvbGUuIFRlc3RlZCB3aXRoOiIKPj4+Cj4+PiBOb3RlOiBUaGUgY29kZSBpcyBjb3Bp
ZWQgZnJvbSBGcmVlQlNEIGNvZGU6Cj4+PiAgICAgICAgZnJlZWJzZC9jb250cmliL2xkbnMvY29t
cGF0L21lbW1vdmUuYwo+Pgo+PiBUaGF0J3Mgb25seSBmb3IgbWVtbW92ZS4gSG93IGFib3V0IG1l
bWNocj8KPiBUaGUgbWVtY2hyIGlzIGFsc28gZnJvbSB0aGUgRnJlZUJTRCBjb2RlLi4uCgpZb3Ug
c3BlY2lmeSB0aGUgZmlsZSBmb3IgbWVtbW92ZS5jLiBCdXQgbm90IG1lbWNoci4KCkFsc28sIHRo
aXMgc2VlbXMgdG8gY29tZSBmcm9tIGEgdXNlcnNwYWNlIGFwcGxpY2F0aW9uIGFuZCBub3QgdGhl
IAprZXJuZWwuIFdoeSBub3QgaW1wb3J0aW5nIHRoZSBhc3NlbWJseSB2ZXJzaW9uIChtZW1tb3Zl
LlMgYW5kIG1lbWNweS5TKSAKdGhhdCBoYXMgYmVlbiBvcHRpbWl6ZWQgZm9yIGFhcmNoNjQ/Cgo+
IAo+Pgo+PiBBbHNvLCBjYW4geW91IGV4cGxhaW4gaW4gdGhlIGNvbW1pdCBtZXNzYWdlIHdoeSB5
b3UgbmVlZCB0aGVtPwo+IFRoZSBGRFQgY29kZSB3aWxsIG5lZWQgdGhlbS4uCgpJdCBzaG91bGQg
YmUgZXhwbGFpbmVkIGluIHRoZSBjb21taXQgbWVzc2FnZSA6KS4KCkNoZWVycywKCi0tIApKdWxp
ZW4gR3JhbGwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
Ck1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qu
b3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3Mt
ZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 25 11:43:50 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 25 Apr 2018 11:43:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBIpx-0004ME-06; Wed, 25 Apr 2018 11:43:49 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89)
 (envelope-from <srs0=r7e1=ho=gmail.com=dunlapg@srs-us1.protection.inumbo.net>)
 id 1fBIpw-0004M0-45
 for minios-devel@lists.xenproject.org; Wed, 25 Apr 2018 11:43:48 +0000
X-Inumbo-ID: bfc9b8e4-487d-11e8-9728-bc764e045a96
Received: from mail-qt0-x229.google.com (unknown [2607:f8b0:400d:c0d::229])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id bfc9b8e4-487d-11e8-9728-bc764e045a96;
 Wed, 25 Apr 2018 13:42:36 +0200 (CEST)
Received: by mail-qt0-x229.google.com with SMTP id s2-v6so26313926qti.2;
 Wed, 25 Apr 2018 04:43:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:sender:in-reply-to:references:from:date:message-id
 :subject:to:cc;
 bh=gVYpBZbeVt7hqAHTLPy6euBt39uiFb9CPDosQ5q5EXE=;
 b=A3O7fSJXxzhiWyQ3bHBg3ZsI+6DMRMLqnIYv/F6N2RuCqs5q+YeDHyuffwJ0gZJk7s
 k9d+eaYWse+PSSGM/vnOkVRsLVNSRNsZ9V7w8OTnciO6ZxYUPuo2IDp24q43aI2M/U5e
 v8E27YBDlSCzjB+yCou3xgExcdVGysnUbEzecdYhHHZeneJ7evbSwfG4XkRJmJuDFqZs
 vxlS/c6mkCi2/1vDCN203CqzndxwPG0+Eahcndy2sTvkiV+ozrLvCFlpmGvbpgNugrHs
 WKGjX46bCIcXTZsc9XYY9/I9PIxEUGQ7K2jUM8y7LoG1RvCjbdJhGIIAQVIW3rKFYF19
 3IWQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=umich.edu; s=google-2016-06-03;
 h=mime-version:sender:in-reply-to:references:from:date:message-id
 :subject:to:cc;
 bh=gVYpBZbeVt7hqAHTLPy6euBt39uiFb9CPDosQ5q5EXE=;
 b=QRrDjwB0QwrxupXZhFa5XWmZ2kzoc7Vo7bcNdtEMobwRbJ1acg92NW+VdbE15VT/bs
 ees66vwhK0kP5/4xuKHA5tY8fleft6EYE35Mm2gHt1JF5N9LCAfsIxTCPxrnG+tJn/Io
 FYmzG+4KR0A+XRS4DPvDpaLNtXVOk3q5NVKODPErS7FaFw1DqL0KAEupRc4yJGkJjl5l
 2OnWtPvwW9Mi1+W5XqDDvC+MgrJlGYAcRbzBAfKcyhKXvS6ciyGmmN8BcRV4q8ufbtr6
 5qkfAdLQrG+dVgrqxWGM5MzYfqBo22NCFZEmxR2pr69MtMkH5Khaj3YJHcKn6QL0BGhK
 2t6A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:sender:in-reply-to:references:from
 :date:message-id:subject:to:cc;
 bh=gVYpBZbeVt7hqAHTLPy6euBt39uiFb9CPDosQ5q5EXE=;
 b=VoucQ4ONMQnPisXz3bZyPb2KFNjXpEK18GpE9/QeD7P8kfWp0TlD/xJDxwo9Q4Xhad
 /ZYMymHjfiPawtCofrPF42NVKRmqEgUthEYS7nXPKFl09QrbabnZeOdlfTs99mTEsekV
 k+FuTMhuiVy0Ybkdvp12jEcdZ8zD7MOOahIt8AKp8XAk2vochqyLjWH+pt4Q4zwaIMIm
 TMJXlw8AuXgbZmOSrGMBvo82/MMHgyDAVRQlCZUFByqer0LlnAVlCIlmxj1Ps0kKIOXa
 ZakUaMV4eUfoW7zxPFx1hh73a1LIb3ijR/wV+Vr45ffC2N/NxFXTbb08pI6WdGWhI2DY
 /DWg==
X-Gm-Message-State: ALQs6tDqNJfvSh3iLZ7/vYuIQfCzhY/ljTl5KIp1z8oAFZAkkWO6h9wK
 8SNKdoV8zXDnQjkjIR3VSMNnCcSbCyVwezRJR2Q=
X-Google-Smtp-Source: AB8JxZpVE9ZzjsyQeulSefkFp2LHPbrU7NgvAl6eK9gk0ZRIokbWonD+2Fq4h0jEw+6TuGo7JVomxpfNTwknOhcSl9k=
X-Received: by 10.12.149.87 with SMTP id m23mr7488799qvm.142.1524656625927;
 Wed, 25 Apr 2018 04:43:45 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.55.163.195 with HTTP; Wed, 25 Apr 2018 04:43:44 -0700 (PDT)
In-Reply-To: <FED16B1F-3CA3-4B91-B22B-A9B807FCB762@xenproject.org>
References: <FED16B1F-3CA3-4B91-B22B-A9B807FCB762@xenproject.org>
From: George Dunlap <dunlapg@umich.edu>
Date: Wed, 25 Apr 2018 12:43:44 +0100
X-Google-Sender-Auth: 8k0-sUUCt3owRLqTDhZz8oZTFdM
Message-ID: <CAFLBxZbUKYZ1sTtAcAXkoNWXeN4PCpovqGvgy9PXHQxk=1L0Ng@mail.gmail.com>
To: Lars Kurth <lars.kurth.xen@gmail.com>
Subject: Re: [Minios-devel] [Xen-devel] Graduation Review: Windows PV Driver
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: xapi@lists.xenproject.org, minios-devel@lists.xenproject.org,
 Paul Durrant <paul.durrant@citrix.com>, Committers <committers@xenproject.org>,
 mirageos-devel@lists.xenproject.org,
 Zibby Keaton <zkeaton@linuxfoundation.org>,
 xen-devel <xen-devel@lists.xenproject.org>, win-pv-devel@lists.xenproject.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gTW9uLCBBcHIgMjMsIDIwMTggYXQgNjoxNCBQTSwgTGFycyBLdXJ0aCA8bGFycy5rdXJ0aC54
ZW5AZ21haWwuY29tPiB3cm90ZToKPiAjIyBTdW1tYXJ5L1JlY29tbWVuZGF0aW9uCj4KPiBBc3Nl
c3NtZW50IGJ5IExhcnMgS3VydGgsIENvbW11bml0eSBNYW5hZ2VyOgo+Cj4gX0dpdmVuIHRoZSBt
YXR1cml0eSBvZiB0aGUgZHJpdmVycyBhbmQgdGh1cyBsaW1pdGVkIG5lZWQgdG8gZml4IGlzc3Vl
cyBvciBkZXZlbG9wIG5ldyBmZWF0dXJlcywKPiBJIHdvdWxkIHJlY29tbWVuZCB0byBncmFkdWF0
ZSB0aGUgcHJvamVjdC4gVGhlIHByb2plY3QgaGFzIHNob3duIGluY3JlYXNlZCB1c2VyCj4gZW5n
YWdlbWVudCwgYWRvcHRpb24gYW5kIGRlbGl2ZXJlZCBzZXZlcmFsIHJlbGVhc2VzIHdoaWNoIGlz
IGNvbnNpc3RlbnQgd2l0aCBhIG1hdHVyZQo+IHByb2plY3QgLiBJIGhhdmUgbm8gb2JqZWN0aW9u
cyBvbiBncm91bmRzIG9mIHByb2Nlc3MgYWRoZXJlbmNlLCB2YWx1ZXMgYW5kIGRldmVsb3Blcgo+
IGNvbW11bml0eSBkaXZlcnNpdHkgYW5kIHByb3Bvc2UgdG8gdGhlIHByb2plY3QgbGVhZGVyc2hp
cCB0ZWFtcyBvZiBvdGhlciBtYXR1cmUKPiBwcm9qZWN0cyB0byBhZ3JlZSB0byBncmFkdWF0ZSB0
aGUgV2luZG93cyBQViBEcml2ZXIgc3VicHJvamVjdC5fCj4KPiBfUmVjb21tZW5kYXRpb25zOiBH
aXZlbiB0aGF0IFdpbmRvd3MgUFYgRHJpdmVycyBkZXZlbG9wbWVudCB0b2RheSBkZXBlbmRzIG9u
IDNyZAo+IHBhcnR5IHRlc3RpbmcsIEkgd291bGQgbGlrZSB0byByZWNvbW1lbmQgYSBwdWJsaWMg
ZGlzY3Vzc2lvbiB3aGV0aGVyIHNvbWUgdGVzdGluZyBvZgo+IFdpbmRvd3MgUFYgRHJpdmVycyBp
biBPU1NURVNUIGlzIGZlYXNpYmxlIGFuZCBkZXNpcmFibGUuXwoKKzEgZnJvbSBtZS4gIEkgdGhp
bmsgaWYgdGhpcyBwcm9qZWN0IGRvZXNuJ3QgbWFrZSB0aGUgY3V0LCBub3RoaW5nIHdpbGwuIDot
KQoKIC1HZW9yZ2UKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2pl
Y3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5p
b3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Wed Apr 25 17:33:38 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 25 Apr 2018 17:33:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBOIS-00021e-0w; Wed, 25 Apr 2018 17:33:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=anjg=ho=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBOIQ-00021Z-Pn
 for minios-devel@lists.xenproject.org; Wed, 25 Apr 2018 17:33:34 +0000
X-Inumbo-ID: 1a60f505-48af-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 1a60f505-48af-11e8-8249-2fda3a446a53;
 Wed, 25 Apr 2018 17:35:53 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8398680D;
 Wed, 25 Apr 2018 10:33:32 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id B29963F590;
 Wed, 25 Apr 2018 10:33:30 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-22-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <1ba37809-7bef-7b51-bbb3-4e021a86e4a7@arm.com>
Date: Wed, 25 Apr 2018 18:33:29 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-22-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 21/43] arm64: define the
 CALLEE_SAVED_REGISTERS
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxNi8wNC8xOCAwNzozMiwgSHVhbmcgU2hpamllIHdyb3RlOgo+IEluIHRoZSBhcm02
NCwgdGhlIGNhbGxlZS1zYXZlZCByZWdpc3RlcnMgYXJlIHgxOSB+IHgyOS4KCnMvSW4gdGhlL09u
Ly4KCkkgdGhpbmsgaXQgd291bGQgYmUgZ29vZCB0byBtZW50aW9uIHdoZXJlIHRoYXQgY29udmVu
dGlvbiBjb21lcyBmcm9tIGFzIAp0aGlzIGlzIG5vdCB2ZXJ5IG9idmlvdXMgZm9yIG5vbi1hcm0g
ZXhwZXJ0IDopLiBUaGlzIGNvbnZlbnRpb24gaXMgZnJvbSAKQUFQQ1M2NCBbMV0uCgo+IAo+IFRo
aXMgcGF0Y2ggYWxzbyByZW1vdmVzIHRoZSBtYWNybyBmb3IgYXJtMzIuCj4gCj4gU2lnbmVkLW9m
Zi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPiAtLS0KPiAgIGFyY2gv
YXJtL3NjaGVkLmMgICAgICAgfCA0ICstLS0KPiAgIGluY2x1ZGUvYXJtL2FybTY0L29zLmggfCAz
ICsrKwo+ICAgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0p
Cj4gCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL3NjaGVkLmMgYi9hcmNoL2FybS9zY2hlZC5jCj4g
aW5kZXggODA5MTU2Ni4uZDFhZjM3OSAxMDA2NDQKPiAtLS0gYS9hcmNoL2FybS9zY2hlZC5jCj4g
KysrIGIvYXJjaC9hcm0vc2NoZWQuYwo+IEBAIC0xLDEyICsxLDEwIEBACj4gICAjaW5jbHVkZSA8
bWluaS1vcy9zY2hlZC5oPgo+ICAgI2luY2x1ZGUgPG1pbmktb3MveG1hbGxvYy5oPgo+ICAgI2lu
Y2x1ZGUgPG1pbmktb3MvY29uc29sZS5oPgo+ICsjaW5jbHVkZSA8bWluaS1vcy9vcy5oPgo+ICAg
Cj4gICB2b2lkIGFybV9zdGFydF90aHJlYWQodm9pZCk7Cj4gICAKPiAtLyogVGhlIEFBUENTIHJl
cXVpcmVzIHRoZSBjYWxsZWUgKGUuZy4gX19hcmNoX3N3aXRjaF90aHJlYWRzKSB0byBwcmVzZXJ2
ZSByNC1yMTEuICovCj4gLSNkZWZpbmUgQ0FMTEVFX1NBVkVEX1JFR0lTVEVSUyA4Cj4gLQo+ICAg
LyogQXJjaGl0ZWN0dXJlIHNwZWNpZmljIHNldHVwIG9mIHRocmVhZCBjcmVhdGlvbiAqLwo+ICAg
c3RydWN0IHRocmVhZCogYXJjaF9jcmVhdGVfdGhyZWFkKGNoYXIgKm5hbWUsIHZvaWQgKCpmdW5j
dGlvbikodm9pZCAqKSwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lk
ICpkYXRhKQo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcm02NC9vcy5oIGIvaW5jbHVkZS9h
cm0vYXJtNjQvb3MuaAo+IGluZGV4IDNkNGFhZGEuLjg5YjQwMDIgMTAwNjQ0Cj4gLS0tIGEvaW5j
bHVkZS9hcm0vYXJtNjQvb3MuaAo+ICsrKyBiL2luY2x1ZGUvYXJtL2FybTY0L29zLmgKPiBAQCAt
MjUsNCArMjUsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgbG9jYWxfaXJxX2VuYWJsZSh2b2lkKQo+
ICAgICAgIF9fYXNtX18gX192b2xhdGlsZV9fKCJtcnMgJTAsIGRhaWYiOiI9ciIoeCk6OiJtZW1v
cnkiKTsgXAo+ICAgfQo+ICAgCj4gKy8qIFRoZSBDYWxsZWUtc2F2ZWQgcmVnaXN0ZXJzIDogeDE5
IH4geDI5ICovCgpTYW1lIGhlcmUsIEkgd291bGQgbWVudGlvbiB0aGUgQUFQQ1M2NC4gQWxzbyBJ
IHF1aXRlIGxpa2UgdGhlIGNvbW1lbnRzIAp0aGF0IHdhcyBleGlzdGluZyBmb3IgYXJtMzIuIEl0
IGdpdmVzIHNvbWUgcG9pbnRlciB0byB0aGUgcmVhZGVyIHdoZXJlIAp0byBsb29rIGF0LiBTbyBJ
IHdvdWxkIHNheToKCiJUaGUgQUFQQ1M2NCByZXF1aXJlcyB0aGUgY2FsbGVlIChlLmcgX19hcmNo
X3N3aXRjaF90aHJlYWRzKSB0byBwcmVzZXJ2ZSAKeDE5LXgyOS4iLgoKQ2hlZXJzLAoKPiArI2Rl
ZmluZSBDQUxMRUVfU0FWRURfUkVHSVNURVJTIDExCj4gKwo+ICAgI2VuZGlmCj4gCgotLSAKSnVs
aWVuIEdyYWxsCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
XwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0
Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9z
LWRldmVs

From minios-devel-bounces@lists.xenproject.org Wed Apr 25 21:23:57 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 25 Apr 2018 21:23:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBRtL-0000rT-QY; Wed, 25 Apr 2018 21:23:55 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=anjg=ho=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBRtK-0000rK-3G
 for minios-devel@lists.xenproject.org; Wed, 25 Apr 2018 21:23:54 +0000
X-Inumbo-ID: c8cf0744-48ce-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::604])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id c8cf0744-48ce-11e8-9728-bc764e045a96;
 Wed, 25 Apr 2018 23:22:40 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=R8TSAhNAh2FKOsQgI/996V2qRaLO4cHOjfSyrE29y24=;
 b=XejLopEnqWzHfdPr5rul4Iu0KNlTcRB+k8CAzEVs2J1y4jufd0JG17t/i3UN3G/gnVenASzSZlNwC8YEJs7H4qkAryK2JzwE7MmOb7qwbC9bhtNjIwPU879gr54UuvKYvFN0HWYpheiijrLLiWJJCYGDLFrbidQ/gOCYqOGmsC0=
Authentication-Results: spf=none (sender IP is )
 smtp.mailfrom=Julien.Grall@arm.com; 
Received: from Juliens-MacBook-Pro.local (82.1.229.77) by
 AM0PR08MB3347.eurprd08.prod.outlook.com (2603:10a6:208:5f::20) with Microsoft
 SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.12; Wed, 25
 Apr 2018 21:23:45 +0000
From: Julien Grall <julien.grall@arm.com>
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-22-git-send-email-shijie.huang@arm.com>
 <1ba37809-7bef-7b51-bbb3-4e021a86e4a7@arm.com>
Message-ID: <eace896c-9bd3-9fc0-1e80-b268de6cea1a@arm.com>
Date: Wed, 25 Apr 2018 22:23:43 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0)
 Gecko/20100101 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1ba37809-7bef-7b51-bbb3-4e021a86e4a7@arm.com>
Content-Language: en-US
X-Originating-IP: [82.1.229.77]
X-ClientProxiedBy: CWLP265CA0183.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:401:4d::27) To AM0PR08MB3347.eurprd08.prod.outlook.com
 (2603:10a6:208:5f::20)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-HT: Tenant
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(2017052603328)(7153060)(7193020);
 SRVR:AM0PR08MB3347; 
X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347;
 3:qwHpEVhWeBgqO4BiubVqPxlK6nfuTGFpqmvw9G6S/82G/vndnmIF/dTpLnyoghsHtZvEDAt/EDGeGcSfH8/edq7oYozVKjMcRyhowCECDI0YFNinmOIIEShRQmtuTZ5kX0qbgptVWCCVm/b6mVbkEdWWY2/ZCRP0Muf7M/C3xY+a1An9Ykxu04Iokc90TR2hNQhXMVHER0b0NjMk2dwPHk6s+ZvBv02WIJ0Jo/KeH0wZEioU367jiFHlVYkLSrJW;
 25:eb/SjIJbeOVUf0hN1aZO7rPjzdG3NJYm4pE+b70Ch6rEQMiLKUKqz/RvPVXO/jRJvKqj86QF4fKFNgK3bq5bVCrETj62nirI6+qO0AUblUv/WSeLiK/y7RlqiMVLAu6Gcz8l6ukmHVlN+Rqnp2mWJDeOUlABfXizVy0nBZwc0WD5jOizm4XEmDK+r3Yyp5ThZY6ECY72+UjIidzGuAyNkgOjgdlBm/SMKCW/aM6Q2/TXNo5m1cbwTgSdLTYAyl+0tUi2yMLoXstb3Y6QwQbUL9L7gY6Y/jZtJKxSnRyXsijqG3+rV4DYBeFy51/2OoZaWM9p7eu9f12yO8JFoYtKWw==;
 31:09GAuz+ccmfBmp+dzooimBxZ7Cnel3MWkM6nX9IASxb14FeFBCA2O0g6XZ0GOgd31kET85XglXYuVtApXIgXF8+b/02c92cM0R4N7Co73c3XhtTt/APrlLTIVLLssEMC/Aa7WXtV6IjOEDwekAz2Fk4Z7Q4thxZRe1Rj3BOd2XVodKfVh34k9Img8H7fW6DZsOpHHAj0GHRE1B0U/sDEIk1JAFs5hQ0ury6nDwMPO+o=
X-MS-TrafficTypeDiagnostic: AM0PR08MB3347:
NoDisclaimer: True
X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347;
 20:CUcR9diikwPXTzHtD05Mpf4sde1s3KPYvaNn5y3XDHNKIJmhRbckJgV4/8hMjH499e37GeZO3AdxqtvO1jmrktWUHWMRIOUA/TjuoZ4HSxZlG/RQlOTKT/na04ihnDkDsJ61cAi+QwAr+uLpP+XiKOGGZG+5hVnu0tP9v4h5BRb/VslPDwHOyaOeQ5nqVmoXG7kWRDOXqSxYFvN09rug4W0qfRzhIEfR6DTZqYx4Wmtf9y2F4xcDNb9Bfe72IYFG;
 4:yL8pyPLMYMiWNo1yYpdVbT6y2/BtWFf61ojRlt2WogQJN0rYRi3BFbImAEqJ5xiMLba3hKUFtHOfDkenu0nxswjAD8CMLWcxyeOIch2ifNakAxDbws8rV9K8zjQ0MC7S5nTMbbMxN8sP+9qpUwGKaiRCZGWndKlsKHvaDWyU/ltA01maf0Pxf9nniM+iKq1dFmeNYt//ULzw1OBwqGL1Z1cSFJEp9UIv3q+mG2PCM/A6DRC9JhSWSn2C7q1E2cVDZeKGHWkFf6zHs3t5RuToFA==
X-Microsoft-Antispam-PRVS: <AM0PR08MB3347B9F59805BF053CEE5846808F0@AM0PR08MB3347.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(3231232)(944501410)(52105095)(93006095)(93001095)(6055026)(6041310)(20161123560045)(20161123564045)(20161123558120)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:AM0PR08MB3347; BCL:0; PCL:0; RULEID:; SRVR:AM0PR08MB3347; 
X-Forefront-PRVS: 06530126A4
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(376002)(39860400002)(346002)(396003)(366004)(39380400002)(189003)(199004)(8666007)(305945005)(6486002)(16526019)(8676002)(2906002)(8936002)(230700001)(97736004)(106356001)(64126003)(68736007)(6246003)(486006)(53936002)(81166006)(81156014)(65826007)(105586002)(50466002)(5660300001)(52116002)(23676004)(26005)(6512007)(31696002)(956004)(2616005)(7736002)(11346002)(72206003)(52146003)(66066001)(44832011)(86362001)(47776003)(67846002)(39060400002)(2486003)(229853002)(31686004)(3846002)(36756003)(65956001)(478600001)(65806001)(6116002)(53546011)(58126008)(386003)(6506007)(25786009)(316002)(4326008)(476003)(446003)(76176011);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR08MB3347; H:Juliens-MacBook-Pro.local;
 FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; 
Received-SPF: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTBQUjA4TUIzMzQ3OzIzOlgvVDc2UlprcnhxLzlLUUY1bUF1YXdDbFEw?=
 =?utf-8?B?RnQwWmZVcjEvaUV1NUVBWGt2UXFOMEY0QkVGUWw0K3FCWCs4cXp1ZnlONmZl?=
 =?utf-8?B?ZUZXVEN3bmRTeXFKVldScDZnektTaDlSSytrc1RUQXJ0M0hYaEZldEp2Y0RJ?=
 =?utf-8?B?K2owYXhXTWh6ZGNPankwZndZaXpGd1pqSjBmdWFwNTVHNXBQTVd4bStrdGVo?=
 =?utf-8?B?Y2lEcGJyRjBBdFpTYTBxbWo4eFRBd3FqRzNpcC92VlJYMFl1RWYrS0phcUdm?=
 =?utf-8?B?SkhRalhDMTIxVWxTZXhZNm9TVm5xc2doVVpEemN3UHBBQWhoNkliclBGS3ZG?=
 =?utf-8?B?NGpITTdxcDI1a0t5MEZUVzRTYU1HdTRrT2ZxZ0hIUWxIMks0S05HdGhON0RO?=
 =?utf-8?B?ZEdPK1VYWTFuUENHZ2o5M3U1V2wxNkJWa2c3VXFkTVptdHliSkdacFU0Nk5F?=
 =?utf-8?B?QmZOaEZ0dms1R1l5T01GZVlvZkRJdTE0R2hnclR6N2QrRURNcjBLeFIrTmlW?=
 =?utf-8?B?bVRVV2JkYnZIOFRIRzNLdS9iOE0rdEJyc3VvWUFGbzFDQmxXRHdMYXlQQWkz?=
 =?utf-8?B?MWQ4Wm9BWkVtN0FndXQrbVYveVBuUnRRQ3VnYVNnVGJDVGlDa1dLTVlGbHAz?=
 =?utf-8?B?QnI1SnFyeUxnYmpsREJFRDFVd09pZ1g0M3J1UStIbnRRTWtvNUF1QkF6VkVo?=
 =?utf-8?B?bDVVWHBabEVmTTVNMCtzNmJKbVRSSVZKUnpBY29nby90Y0g2bjZjNUJpVU01?=
 =?utf-8?B?cHRjNHRMMExob2JQUXQwSFpjSnlwT05NQUtrcFR0Vjh6V3YwNEtHbFA2emJW?=
 =?utf-8?B?Q3pCQ0NkK21ObzZJZDM0dGowL2tOTDdBYlZNa21MTm9sc1VpRzNVeEltNUx3?=
 =?utf-8?B?c0IzejRlaUo3RTJHcDZwUEo0WHlaOGxMbnY3RlBtSzZxemxFVUtrNk45b2U1?=
 =?utf-8?B?cmZscExyZmFVenVzU0xFTndRYUtWSzNZQ0lySitCWXd4RDNHY0czVTdQdmh2?=
 =?utf-8?B?V1N0KzVFMHJuaHl6YjJyc3dkSG9Wd2lGREQ0bEE5YUtPVUVyd0gyOE11Sy9B?=
 =?utf-8?B?SHpRekVJdjNwK3NQbTh0d0lCU1hPWkdKbWRTMWkvS0pRajRCQTVrdlRPUHZO?=
 =?utf-8?B?ZG5mZXYxVkFyelRiVkhHUTZxZ25jNUVsR09WczV1bnMydWhnTEk0NEJmWExE?=
 =?utf-8?B?bS9yZnRFRFZ0Rzl6SnJzTnkrYWZJSDlXWS9Ud3ROck52YkJxYXV4eS9oSUUx?=
 =?utf-8?B?cXZVWmo3Z1NiVUR6RlJqZUJ5eVhjcUFCWThiQ1lEUXFkSlpCa3pqSm1BM09D?=
 =?utf-8?B?bkdsZ0RsajVXYWhDT3JMRXFxWEFINTVXUUc3ek5DT3U4Y2NTUjY5THB0RnQw?=
 =?utf-8?B?RDBQTnlpMnAraXVtRWp4SkZhTmYyN1Qxa3BYOFo3NlhTeVlIVExMTzNSL1RO?=
 =?utf-8?B?dnlHMjJjck1admVBV2F0TkhwR2JqVWh5T1Vqd0hkNHByN1hIWExpTWRPL1dY?=
 =?utf-8?B?c1N5L0Nsb0dDbFQvVXdiVXRBblRjeHBiaHJ6VVEyWlF6N1FGTzkwWWFsVUcv?=
 =?utf-8?B?Q3lZcUxxZzEvOHh5dUpOSU8yeVlkTFFhMU1IL1AvOVd6Q0tRbjFpL0pjS05a?=
 =?utf-8?B?M1pvQlN0cmI5MkFnOVFndklWa0pCUjhGUTJTL0V0bTF4TlAxM1dtNVJKbmNy?=
 =?utf-8?B?dVkyS2o1eThtVFUzQmJhUVhjc251d2loVXQ2azZPY3ZlSDJPRGZ1cEhMZ1NL?=
 =?utf-8?B?aWkwUWRYYUMyOWtUSFlwakJ1TmtNaUtRWWJtR2lKc1FaN3UyRStVYi9UejdL?=
 =?utf-8?B?UTJLRlFEKzJ2MEw4aEk5NDB1SFIzaCsyRW9hRzgxK3BpUHQwUGRVKytJOXM5?=
 =?utf-8?B?ZFAvZHd5enN5WUNHemtFNDBwZlQrcTZWclBOclZZQWQ5MjVkUzZMdk1JSno0?=
 =?utf-8?Q?TWwacW56f9RGCguxyZZ2aWuHUSqoHM=3D?=
X-Microsoft-Antispam-Message-Info: pyQgPzzo2yCL+bVCYzyuoHQSY68ED/KP3T8f+2eSBUG5hKxbGDO6z1tVz1BY9EPLHCuB3mMbizCvVcJliO1NUGY649ojAiCnxski2g3qbOJq0/z17W6w2mFSuCth9HuOVfgrh66+zumFgv1js9TK1soCrHMFh0Nwd8MHPMkb4dGfqogvM6LHOCPSsPdLiCjW
X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347;
 6:cmYO0vcSDRe+4jEQCAEjnN4AgQZryzelWNHXDWoy1Wi1QVGFDArfJ+xQrscr2bfpmxsC+gEuA+5kC8TYHY4FSvK5leuiCkojoANUcIOtj7cTY/KNagqvHXN2ZsF++2sEJbBqP8TXkUyBB15iNQAxUCWuieVoI+AD2x3iPta8eJQFu90hUHOvUut7S9CGFx7sjUvVIH4vE4nYNuSl9ifkqp/LxX/5Glt68CKCGis0iDiIaSHeM+yeGWu9X2QVumCPWeJcVz3WFZGeqcxJ4N1RN5fySzbLUsC02znnsLsUd3OftofIdNloKpLYqPdmBu8bdttfVxbkD1BeYUR035LurHKwjKMv73iX6pTrg5kPzKNTC+ZHVBw2zJ+ioRjqEq3uotwtJiq+hpbtHIV3PbQnvcAQB031zANoa5uafQBrCxerTJJIVf+ubOD1HpquciQAcWBe+QxlwBNWftqYIMNd2g==;
 5:9xYfnaH8kDL7CKFBiUd62Rw1QVa5StSwNtv7dDO489O7tvLqODLHIqKXA/nANJJVPdkag4K+4UItIJxa8+y7b3PGXlHkO21POf+hviHMgWBIbnLlrAJzNFtvbC+sY39fVKbPnY32345E0JwWRivjIGriV4mXaj+iTCFKaEgBDXo=;
 24:vXZ/t3TYyIzjSpyI7XFvimAX3s2i7k3ymwRTiiQjFbXPi1kjVG8uIhyzb/mnDmIapX+9MJk1l8GMykJJOtV3EOahkXU6btouXbQxR4QsLek=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347;
 7:MYitFuG5otgBPuuSN3b0POeOx3L5i4CahnWH6JGdfKKLHKkTT1PfqyofwuVF/rFYkv4dX+YiLtC6Q6+UZn7eS1+FxJZchuUj9XH2QPzarkQF5sPtKaQkj4u0FGXwnbvltO/X+UtKTuEAH59Zf/1LqJlkrSji0Vj7LZjdVoE8mtEb4Evb6z7YhJyV0H+QBW+/37DuOAefMp7BldR4WEa6zUc3cAq+L38ANARABxgyQrHCuP7v6Z0PpTV6IjvS3QgV
X-MS-Office365-Filtering-Correlation-Id: 9a46633f-8542-497d-f35c-08d5aaf2d3fe
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Apr 2018 21:23:45.3614 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9a46633f-8542-497d-f35c-08d5aaf2d3fe
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3347
Subject: Re: [Minios-devel] [PATCH v3 21/43] arm64: define the
 CALLEE_SAVED_REGISTERS
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAyNS8wNC8yMDE4IDE4OjMzLCBKdWxpZW4gR3JhbGwgd3JvdGU6Cj4gSGksCgpIaSwKCj4g
Cj4gT24gMTYvMDQvMTggMDc6MzIsIEh1YW5nIFNoaWppZSB3cm90ZToKPj4gSW4gdGhlIGFybTY0
LCB0aGUgY2FsbGVlLXNhdmVkIHJlZ2lzdGVycyBhcmUgeDE5IH4geDI5Lgo+IAo+IHMvSW4gdGhl
L09uLy4KPiAKPiBJIHRoaW5rIGl0IHdvdWxkIGJlIGdvb2QgdG8gbWVudGlvbiB3aGVyZSB0aGF0
IGNvbnZlbnRpb24gY29tZXMgZnJvbSBhcyAKPiB0aGlzIGlzIG5vdCB2ZXJ5IG9idmlvdXMgZm9y
IG5vbi1hcm0gZXhwZXJ0IDopLiBUaGlzIGNvbnZlbnRpb24gaXMgZnJvbSAKPiBBQVBDUzY0IFsx
XS4KCkFsc28sIHlvdSB3YW50IHRvIGV4cGxhaW4gd2h5IHgxOS14MjkuIEF0IGZpcnN0IHRoaXMg
aXMgbm90IG9idmlvdXMgCmJlY2F1c2UgdGhlIHRhYmxlIGNhbGwgeDI5ICJmcCIgYW5kIHgxOS14
MjggImNhbGxlZS1zYXZlZCByZWdpc3RlcnMiLiBJdCAKdG9vayBtZSBhIGJpdCB0byBmaW5kIGlu
IHRoZSBzcGVjIHRoZSBsaW5lIHNheWluZyAiQSBzdWJyb3V0aW5lIAppbnZvY2F0aW9uIG11c3Qg
cHJlc2VydmUgdGhlIGNvbnRlbnRzIG9mIHRoZSByZWdpc3RlcnMgcjE5LXIyOSBhbmQgU1AuIgoK
Q2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxA
bGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFu
L2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 08:43:18 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 08:43:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBcUm-00050e-VU; Thu, 26 Apr 2018 08:43:16 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=thhi=hp=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fBcUl-00050Z-20
 for minios-devel@lists.xenproject.org; Thu, 26 Apr 2018 08:43:15 +0000
X-Inumbo-ID: b0302784-492d-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::602])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id b0302784-492d-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 10:42:01 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=oKSa9OkQtG21UASq2F1QroBugGsh8eKX3dqFVW0SQCI=;
 b=cPcGkDR+xTmil/+QxNI0Hgno5p7gnpN92B0FLvOuVseAKfcokkd7kkzLvg1O+aSEb/89r06Re2UL01IiE7tCxSFBR8uQWRpc6tWF1EEu+gwnBk6HRF6Foi3wKXWygeUmZ2rPlDgWQSAIDqCSyG83+xcou4txjVrjriZcbTls4oU=
Received: from VI1PR08CA0223.eurprd08.prod.outlook.com (2603:10a6:802:15::32)
 by VI1PR0802MB2431.eurprd08.prod.outlook.com (2603:10a6:800:bb::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Thu, 26
 Apr 2018 08:43:06 +0000
Received: from DB5EUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::201) by VI1PR08CA0223.outlook.office365.com
 (2603:10a6:802:15::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend
 Transport; Thu, 26 Apr 2018 08:43:06 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT061.mail.protection.outlook.com (10.152.21.234) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Thu, 26 Apr 2018 08:43:05 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Thu, 26 Apr 2018
 09:42:49 +0100
Date: Thu, 26 Apr 2018 08:42:46 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180426084244.GA23594@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-21-git-send-email-shijie.huang@arm.com>
 <05114cd7-57c6-04ea-acf9-61d159a1132f@arm.com>
 <20180425093704.GB16231@ubuntu.shanghai.arm.com>
 <2c60544a-7515-6061-6fdf-93ce6736aa83@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <2c60544a-7515-6061-6fdf-93ce6736aa83@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(346002)(39860400002)(376002)(396003)(2980300002)(438002)(189003)(199004)(50466002)(86362001)(6862004)(39060400002)(6246003)(8676002)(46406003)(7696005)(356003)(53546011)(4326008)(246002)(8666007)(55016002)(186003)(47776003)(104016004)(16586007)(316002)(97756001)(476003)(23726003)(2906002)(305945005)(72206003)(446003)(58126008)(229853002)(76176011)(106002)(8936002)(93886005)(126002)(336012)(106466001)(6666003)(478600001)(6636002)(426003)(486006)(5660300001)(26005)(33656002)(77096007)(54906003)(11346002)(1076002)(26826003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2431; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT061;
 1:hEAn6yeXYJL4Jgf+h5JinsQpq9c+imbUXmFYxuKe/e0FfnzFCmRW/opqIX5s+bO2ltPxhaV0jPLynjMozQ6LtWQxFDrIUYqsBFx1zdRQU5m3QsrranW2Zv2jQtALRd4H
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2431; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2431;
 3:gjH5rP85riuROyuPhqG3A91/2D1N0bUX5NUCvaDORCoaRReHnVcUDVgzaMWXnaNkCDzcoUWNFlr25lkgIGNUdeKp5WAc67a6N11NOhPg3A7Om4Z6aBeQq9zAAARX0i5iHnrv3Qc7l+UosP0J2IzHY/SoZdF1pXIAeP7++Yo0yciDVWmoz68x7vI4qEtIwuduDtQKSph5J8Sjs9oruFDZVpbkS5sZAUjJE5t7FlUk25RHehP2PGkGt73jWvsYT6xkLMmEmCSN1D06O+ayZgp1gWFhvVKxr1rafSE7pCq9FL+OVwsqgkAwG1CY8A4Q7Uoj+zyd6qiAcBprFi+KqpI2YvDtmnpDReDnD3GCzxQ3erw=;
 25:aUIk9KN9jbIiEtzp73OjFgVGByctnt0HrG9ph/EV6EzlK5IPmLfDmlewo32mc1V9+aBN8x7D9mpDYjdkjRIMZhXM2gtD15pX5p6TVtyR0fo01XzXJ4d2S6arMWYtqxwCyD7w6q4TFrQXGRBuLZNsVJTFJCv17OKJYqrXC+ZV7v7bZEFSqI1gKxCbemdeF1cbc8rGgRPVI95fK/+LJVjqCxWph3ipaIA8Daw+M5HPdL3e39qS8U4ly269TwEd5PBlarUvHka8GWOGvjgHeQ/SHl8s3SmRgdJ1wfkJ3kmLhwe2IVmHiNQpCdDyXI6LJae+WzU0Z7/YTe0USV5t2/4gGw==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2431:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2431;
 31:zUbutdCxWYxuuUsWsxZkn3PV34daMTjvKJ4X78sd2ks0M0PAms3qduD3sO9QHqPKABTOyCf0Jql4/t0HRJJjjOEbnRWjIosVTR90Jj2BaUIN6rb+suNih/TU1RdUqtCPz0VdZGJGyBTuJtuNECYZMseSr3y3WxxghOXWxprOUeeZ33VD37ndXis2kqHnPUu/TPlmZD0GAYb/XNFToKprv48rw1TarxjTXTuL60w50ek=;
 20:HnbwnuhXepgbM0Gyowkx48D5FiAgywiEehmH9U4Z9JLlI08EG3QZgHyZfOswUuT31r3oHgf/TtBuwU59iCeAlM2xO6Cpg2T4UbDwQ4nN2i5DLb5uksXRV5QEH7RrVXvMmnxfNWI0jc3Uyzzx73O1AAjvMVCUVJeZHT6qLhaur1ZlwGRq6GhPXjX0MuMLk2r1UT0ELn99eY50yR8FtTD5I57TKY8P827DE5LYvJ9wLVLOcjsV1qN2B+uul4/lFarCFAZLEh4gML/6+z7bc8AuWRajrSgH3MNAdj8LBvbtDlPrgDu/y4sSCJ/dDqVg2Y2P5/zqWN6qa0JOM7PGttTVPvOEI6DBVxIPpW4vWHAzatc=;
 4:xqDGxrLYdF47ypuhORk64+A+YNj0fuu6/PpTvkrEuBihbDutymIOaRZcYrKAiyie3mV8ja+72kPN5xlhxCRJv2XKgNxhLbC3zYUGCjrxpXmj9Lp1eDWoIZ/vplw3ohI0P1NskL6nyYgunSFczk/G76I3FZp55ESUXX7lMMSCgaP2hnPZG5J1xCGwaIlZ0iRNPS6bDzLWRlLB8sUTATRlsgPG3YBLLByTbbPn1gIlKV8LQAAfWv4aSTNxLpUybwcQpyurdtAxw6ELQjtL9ugC3A==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB24314C1992B589C4D2BEADB7848E0@VI1PR0802MB2431.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(3231232)(944501410)(52105095)(3002001)(93006095)(93004095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2431; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2431; 
X-Forefront-PRVS: 0654257CF5
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2431;
 23:aGnQfcEbx0F5lZHye/zSdoeErtA88mNzCunvP9S?=
 =?us-ascii?Q?+3ZjWqtGQslOz8n5G12QKPjj9X5VDBb8a2hX745RMkOBcHq4Ziq02kVRvqBR?=
 =?us-ascii?Q?U3hbDvml5IiP4dM61jDJQLzeNCgGTcuZbBxVORCe82EbDGu4/2rn9hQSOC31?=
 =?us-ascii?Q?/xXK5KHDdgVHILXDWYBCJzv/2bJ1artuyj0TL+HvKGEsE4O9LPGOC6XIE3NA?=
 =?us-ascii?Q?sTnezLWpsrqhTuro8PfLMhNrIfg2Ty8L0xetGlr8ss/fNn9TOlx4nVH/Dj7w?=
 =?us-ascii?Q?3ceaRZL3sQPquk2473hhts+FOLJgFubTvtBodArrMh9dCCcqJvbdBu3ktmHd?=
 =?us-ascii?Q?jkK6ZNdDIQzOb27zbzoLa+zRZ36CRV21A0V0lS76hQke4KXRa1KUBoGuFyIW?=
 =?us-ascii?Q?xW0BPNKl+cNWnxNKuMBAQPP63JtE20aLF8ohD2crzW39LH6nFxUfTudY/Yi7?=
 =?us-ascii?Q?bBpdjLjYA5ajiXyM4pnuR5ZSGki2hS1PpLzQQeegaibcal678/gVcSTewhuw?=
 =?us-ascii?Q?DQJGghqeb/p9HbJTtudWgSCwSn0JqEWwS5gYPBR4R1PndOsnAGujozhmcooV?=
 =?us-ascii?Q?kFdl6jvqXVJqeGJI/UHVThABA5k5eyx7fgl9mvy1eOSIL1+zio6nYVIQPwq5?=
 =?us-ascii?Q?Aq/BG/IKQDg9nSECDEikx3uSwsWQPRssbgStt/4tl2RogJnJI/sJzUWoDWfG?=
 =?us-ascii?Q?BdIgKG6QDBDzqx3gq2u8EHtSgLQ/ZjrRcULEDGWgH/0MmEiVwyNJg1iREFY4?=
 =?us-ascii?Q?g1ni/NWRYFhae9nBIvKxI7Js4XXNmcVnEqusuLN96qeIc3FT9abp/06Wokc7?=
 =?us-ascii?Q?EFNRacKMht8AFchoNacD9AffQuOwDBZvWW/aNYyeMt0ywFdRWF/wSLNS6R8m?=
 =?us-ascii?Q?5CaAjGqEGg7X3MTzHJa/n8bB0IT+rQqo2TID0bgTGIkIWyrG9IlmwmMN/1br?=
 =?us-ascii?Q?Bjg9Ql0QvoSlgtviIPS5cQLBrk9EGwH0YdX2ZdyZmPlrus2UOxPR3SBd/FlP?=
 =?us-ascii?Q?XveVAwcVfQFudQR1UWVkNkgUtOovIHRp90QfmKm7M1yCZABWU7hSMYxDgfdv?=
 =?us-ascii?Q?mBn+N06xOjuxgMGPPb0TMdp9pJnOpuxO5Pyy+cDx4OSchc7/gv299KhIMyyG?=
 =?us-ascii?Q?qQX6q07xPk9GHcWaplluKqw3kNpmsW2O4U1BrknQUHnnAqpu2ozOphb+A4r2?=
 =?us-ascii?Q?0R6vtZByn+UTJb5b8M+HIv7d+haNpfTv9zC/lFdYJFEd1+8RTo3M+eD7x/X2?=
 =?us-ascii?Q?uWm+oyNt4U3ZkFSIcR5IKHYvnT9g6PP3WaCzZGYINz2fmMp+RqZ5QDOOW/hu?=
 =?us-ascii?Q?zeA=3D=3D?=
X-Microsoft-Antispam-Message-Info: F8uwFBjjkzZlQjD98By8dIE9+vvM0bsD5NFTuZ/ahDUvI+295unbmFx6lYvlK4x7zNyyjZBYY1lFiIry7DDfEj1ECGlsr0fNwkofCmXEsvjf+Idjv1duE3tPXxTEHQ1qMVAGMQY1Xs5q/oAi5PW0qf4OiwWzKk/3M7ExgjY0ywEUnWF4tP+tbLgGeui/8WJZQRKwPHAp8nApAGkfmogPbg7NCsdc8SGSpETTT2SKCAhX7vav/W+POaE4dh4l+JMAwxxjlbZBzZC6Xxpt+P/yf3P6r9GOVEIkIlYCRxkV5dkRjUaQP3I0pEhxd+M4eVSj2Q7FhxjVWJqhqxrjTGOGBrelpawhvpcn4dE0UPb1Zq+uBPGVuRJ9vxdfwOqRw3HnFk8XqJsQ+UQcBbb0rnccTNErPvJKmRT0+F0g/qLaC/o=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2431;
 6:LgqTF8t3J+z6BfIH2JE7Hq9fQa5IAcVKjnJ0XyNZC5Pi5Lq0p0umVMGkef3O3Q8xc8aJ0iS0wwzjC8VILxaj/tKPDNOAQwjFAgseRAYsbschuijL/7oWSo4bwZdmUgNi8dJgNFooEEVDoDY1qekmyCBpQV1uHwYrBKpIcfzJ+XeXst3Ts3I9MI6onmkRBoX81HHjsSKDunDdT+qGfQwkucU0PBclABSJ0FkEcE5Uaawg0hbT87qYpDuvTVh840LwugG9uikQg8PY69VYF+QNCnJqlOfs7R3j/4DIQm81HUZIQrHjIlhlaCO+ls7Ngifo6yHVxfqqSZjeId8S0h2mkZXDpM4ocSd4R0r3TaHzxt6yIJgYB11nnGPRc4oU8z0jSBV4NCxa0d7suUusUpwGKch3evdSiMN2l2U5vdoNSJVF9eeNQDdgdgkjD7SUP8DmRfUVHbIJhm+d9PigEmqwAU1VtEMJIEp9zznTiu3fL/8/TtJLjGtnYDx7mRlHm/uF;
 5:b8I/APgzXhUeLolEUwnn/hi/4o5l+Avc8iHbb3dSnG/mjrlZILYi7iMnmynnwTK9yWa5drx9yNzjZpMy6UBrNYrW7TRi2ZdF6/YyI6JvpDn/xUeP/BlsqpQg5wh1vEic7omeDKjkqMnPYjKXuQPhYk59kRAI8G74WC7frUmhJRY=;
 24:sbhAT2gC4wCXr5aZGc4ftC6oSbdsNW3jGfaGceVE6rABoTWi9TkMoU4piKmFO+0Sbg19sjUQpmfx5xna/MpkTh4su7z1hs3MDTsNuRTz/ks=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2431;
 7:uYjWnv5PSRrDFkAfx+1W2hU3DEVzzSBvbBkv8tc1csBuBv54vzoZxEV8sgwHKIc0FK1TpTwLJ0d4U1ufqNhxBSg6FnwrFOIwYwozu1qcrp1PQos6XUa+ytFJcLuGATx0NwHQ2mDMueyTPIiq3LFkQ8QtvurPL72QWaJoYnmu8GC89MvpRDgwDXSBrGWc2UsNHrgMZkkpXmC99LTsDCVU55qsV4+EKniThIO0SIIcN9adoW2Vj9+nu5eafpp9nrdd
X-MS-Office365-Filtering-Correlation-Id: 56ce2ad1-7e3f-4834-5a9f-08d5ab51bb13
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Apr 2018 08:43:05.9757 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 56ce2ad1-7e3f-4834-5a9f-08d5ab51bb13
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2431
Subject: Re: [Minios-devel] [PATCH v3 20/43] mini-os: implement the
 memmove/memchr
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMjUsIDIwMTggYXQgMTE6MDk6NDNBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDI1LzA0LzE4IDEwOjM3LCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPk9u
IFdlZCwgQXByIDI1LCAyMDE4IGF0IDEwOjEwOjU4QU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90
ZToKPiA+Pgo+ID4+Cj4gPj5PbiAwNC8xNi8yMDE4IDA3OjMyIEFNLCBIdWFuZyBTaGlqaWUgd3Jv
dGU6Cj4gPj4+VGhpcyBwYXRjaCBpcyBzcGxpdCBmcm9tIHRoZSBDaGVuIEJhb3ppJ3Mgb2xkIHBh
dGNoOgo+ID4+Pgo+ID4+PiJUaGlzIGFjdGl2YXRlcyB0aGUgQVJNIGNvZGUgYWRkZWQgaW4gdGhl
IHByZXZpb3VzIHBhdGNoZXMuIE9uCj4gPj4+ICBBUk0sIE1pbmktT1Mgd2lsbCBib290IGFuZCBk
aXNwbGF5IHNvbWUgb3V0cHV0IG9uIHRoZSBjb25zb2xlLiBUZXN0ZWQgd2l0aDoiCj4gPj4+Cj4g
Pj4+Tm90ZTogVGhlIGNvZGUgaXMgY29waWVkIGZyb20gRnJlZUJTRCBjb2RlOgo+ID4+PiAgICAg
ICBmcmVlYnNkL2NvbnRyaWIvbGRucy9jb21wYXQvbWVtbW92ZS5jCj4gPj4KPiA+PlRoYXQncyBv
bmx5IGZvciBtZW1tb3ZlLiBIb3cgYWJvdXQgbWVtY2hyPwo+ID5UaGUgbWVtY2hyIGlzIGFsc28g
ZnJvbSB0aGUgRnJlZUJTRCBjb2RlLi4uCj4gCj4gWW91IHNwZWNpZnkgdGhlIGZpbGUgZm9yIG1l
bW1vdmUuYy4gQnV0IG5vdCBtZW1jaHIuCj4gCj4gQWxzbywgdGhpcyBzZWVtcyB0byBjb21lIGZy
b20gYSB1c2Vyc3BhY2UgYXBwbGljYXRpb24gYW5kIG5vdCB0aGUga2VybmVsLgo+IFdoeSBub3Qg
aW1wb3J0aW5nIHRoZSBhc3NlbWJseSB2ZXJzaW9uIChtZW1tb3ZlLlMgYW5kIG1lbWNweS5TKSB0
aGF0IGhhcwo+IGJlZW4gb3B0aW1pemVkIGZvciBhYXJjaDY0Pwpva2F5LiBJIGNhbiB1c2UgdGhl
IGFzc2VtYmx5IHZlcnNpb24uLgoKPiAKPiA+Cj4gPj4KPiA+PkFsc28sIGNhbiB5b3UgZXhwbGFp
biBpbiB0aGUgY29tbWl0IG1lc3NhZ2Ugd2h5IHlvdSBuZWVkIHRoZW0/Cj4gPlRoZSBGRFQgY29k
ZSB3aWxsIG5lZWQgdGhlbS4uCj4gCj4gSXQgc2hvdWxkIGJlIGV4cGxhaW5lZCBpbiB0aGUgY29t
bWl0IG1lc3NhZ2UgOikuCk5vIHByb2JsZW0uIDopCgpUaGFua3MKSHVhbmcgU2hpamllCgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwg
bWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp
c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 08:49:29 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 08:49:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBcam-0005H5-2v; Thu, 26 Apr 2018 08:49:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bqfm=hp=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBcak-0005Gy-LY
 for minios-devel@lists.xenproject.org; Thu, 26 Apr 2018 08:49:26 +0000
X-Inumbo-ID: 0d2a8302-492f-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 0d2a8302-492f-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 08:51:46 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 77E751435;
 Thu, 26 Apr 2018 01:49:23 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A46D03F25D;
 Thu, 26 Apr 2018 01:49:21 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-21-git-send-email-shijie.huang@arm.com>
 <05114cd7-57c6-04ea-acf9-61d159a1132f@arm.com>
 <20180425093704.GB16231@ubuntu.shanghai.arm.com>
 <2c60544a-7515-6061-6fdf-93ce6736aa83@arm.com>
 <20180426084244.GA23594@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <ed1e27c7-33ba-a796-c2bf-20ce49b3a2cf@arm.com>
Date: Thu, 26 Apr 2018 09:49:20 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180426084244.GA23594@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 20/43] mini-os: implement the
 memmove/memchr
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAyNi8wNC8xOCAwOTo0MiwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFdlZCwgQXByIDI1
LCAyMDE4IGF0IDExOjA5OjQzQU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4KPj4KPj4g
T24gMjUvMDQvMTggMTA6MzcsIEh1YW5nIFNoaWppZSB3cm90ZToKPj4+IE9uIFdlZCwgQXByIDI1
LCAyMDE4IGF0IDEwOjEwOjU4QU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4+Pgo+Pj4+
Cj4+Pj4gT24gMDQvMTYvMjAxOCAwNzozMiBBTSwgSHVhbmcgU2hpamllIHdyb3RlOgo+Pj4+PiBU
aGlzIHBhdGNoIGlzIHNwbGl0IGZyb20gdGhlIENoZW4gQmFvemkncyBvbGQgcGF0Y2g6Cj4+Pj4+
Cj4+Pj4+ICJUaGlzIGFjdGl2YXRlcyB0aGUgQVJNIGNvZGUgYWRkZWQgaW4gdGhlIHByZXZpb3Vz
IHBhdGNoZXMuIE9uCj4+Pj4+ICAgQVJNLCBNaW5pLU9TIHdpbGwgYm9vdCBhbmQgZGlzcGxheSBz
b21lIG91dHB1dCBvbiB0aGUgY29uc29sZS4gVGVzdGVkIHdpdGg6Igo+Pj4+Pgo+Pj4+PiBOb3Rl
OiBUaGUgY29kZSBpcyBjb3BpZWQgZnJvbSBGcmVlQlNEIGNvZGU6Cj4+Pj4+ICAgICAgICBmcmVl
YnNkL2NvbnRyaWIvbGRucy9jb21wYXQvbWVtbW92ZS5jCj4+Pj4KPj4+PiBUaGF0J3Mgb25seSBm
b3IgbWVtbW92ZS4gSG93IGFib3V0IG1lbWNocj8KPj4+IFRoZSBtZW1jaHIgaXMgYWxzbyBmcm9t
IHRoZSBGcmVlQlNEIGNvZGUuLi4KPj4KPj4gWW91IHNwZWNpZnkgdGhlIGZpbGUgZm9yIG1lbW1v
dmUuYy4gQnV0IG5vdCBtZW1jaHIuCj4+Cj4+IEFsc28sIHRoaXMgc2VlbXMgdG8gY29tZSBmcm9t
IGEgdXNlcnNwYWNlIGFwcGxpY2F0aW9uIGFuZCBub3QgdGhlIGtlcm5lbC4KPj4gV2h5IG5vdCBp
bXBvcnRpbmcgdGhlIGFzc2VtYmx5IHZlcnNpb24gKG1lbW1vdmUuUyBhbmQgbWVtY3B5LlMpIHRo
YXQgaGFzCj4+IGJlZW4gb3B0aW1pemVkIGZvciBhYXJjaDY0Pwo+IG9rYXkuIEkgY2FuIHVzZSB0
aGUgYXNzZW1ibHkgdmVyc2lvbi4uCgpJIHdhcyBhc2tpbmcgdGhlIHJhdGlvbmFsZSBiZWhpbmQg
dXNpbmcgdXNlcnNwYWNlIGFwcGxpY2F0aW9uIG1lbWNweSAKb3ZlciB0aGUgYXNzZW1ibHkgb25l
LgoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2
ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWls
bWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 08:59:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 08:59:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBckr-00060n-3F; Thu, 26 Apr 2018 08:59:53 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=thhi=hp=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fBckp-00060i-W4
 for minios-devel@lists.xenproject.org; Thu, 26 Apr 2018 08:59:52 +0000
X-Inumbo-ID: 024963a0-4930-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::61e])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 024963a0-4930-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 10:58:38 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=vpFfNPaIc9Yn1/kbNc5BKHIeVxCaQZ11ZVy29H3qb+k=;
 b=qZc9tye+RoXxwfH6NK0Y9KDp53D4UblQ+WxoAV7HCtucbI2gU2DyO2kq8Ptr1YUWQvvFP5ylCmNv4vQAymLnhI60BqHhmO26FBPRnIOk4u7uKxoZtynquJQFrhC0UDMdnSEWRz3S0U4QsmO6A1fugSjjdnVQVeTcIPNYvJ6fa70=
Received: from VI1PR08CA0191.eurprd08.prod.outlook.com (2603:10a6:800:d2::21)
 by VI1PR0802MB2429.eurprd08.prod.outlook.com (2603:10a6:800:bb::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Thu, 26
 Apr 2018 08:59:43 +0000
Received: from VE1EUR03FT021.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::204) by VI1PR08CA0191.outlook.office365.com
 (2603:10a6:800:d2::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend
 Transport; Thu, 26 Apr 2018 08:59:43 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT021.mail.protection.outlook.com (10.152.18.117) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.696.11 via Frontend Transport; Thu, 26 Apr 2018 08:59:42 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Thu, 26 Apr 2018
 09:59:37 +0100
Date: Thu, 26 Apr 2018 08:59:34 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180426085932.GA29172@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-21-git-send-email-shijie.huang@arm.com>
 <05114cd7-57c6-04ea-acf9-61d159a1132f@arm.com>
 <20180425093704.GB16231@ubuntu.shanghai.arm.com>
 <2c60544a-7515-6061-6fdf-93ce6736aa83@arm.com>
 <20180426084244.GA23594@ubuntu.shanghai.arm.com>
 <ed1e27c7-33ba-a796-c2bf-20ce49b3a2cf@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <ed1e27c7-33ba-a796-c2bf-20ce49b3a2cf@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39860400002)(39380400002)(346002)(376002)(396003)(2980300002)(438002)(199004)(189003)(2906002)(55016002)(446003)(246002)(486006)(26826003)(6666003)(72206003)(478600001)(336012)(8936002)(50466002)(11346002)(356003)(126002)(23726003)(6636002)(476003)(5660300001)(4326008)(86362001)(47776003)(106002)(6862004)(6246003)(33656002)(305945005)(8676002)(426003)(53546011)(1076002)(106466001)(26005)(186003)(16586007)(77096007)(39060400002)(229853002)(104016004)(97756001)(54906003)(8666007)(7696005)(46406003)(58126008)(93886005)(316002)(76176011)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2429; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT021;
 1:Loyn7PxvLo3NKPgHyWMNB3+5BdDu8QJGbeuCDPtBsik48jS42oW+avOqgfp2thKRQc6excULwxTh3E1BDd+J98fO8/S8ni3oTEI0pKqGF20dZlzdmpMQhR4rPwmlpZyk
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2429; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 3:FSuj/1LxvZ9dCkL8qS0BHe9FALg3ZI3Cg0Y5zuT6v+XRZzF0NbTvphLQM2okIjQHKMYPRDFxbJxYp99NuHDOHTU4R9jxshkPZcOnsdzhpLB+yXY6lAhTAT3QqzETqyLK03DqEvP2ytmHrBOHl0cu/ZZl4Er/SUS/gynbxNU1avkk/myXtPpzCSfCarC7wxBw5UBZkygUlT4d6dgzG4A+y9ZVrK2M8S2q0j/NGs9FcUqI5xnTde7oUCTRHt+GX6NHTvO5Oiol1AhWmbi/IPm/nqBpaxfptwIwHuOEou8a53gqk6lgz3SSXzocVolMIGIc/Yo99mkcvHNjDdE+yTXBHCfEWrWeKoN74NjhVTlrB6s=;
 25:gQ7mC5fp+A78B+C0TvFzVznneEZZ7oCJ0Is2E/nXyWhGpJl7KxvY8uF4TuQ1or8RpWjJbMqxus0Iq2b7cziyAj8sXE5W7iju5I6Dns/3F35SC13QJ5T7SaERYIaWynufoH0KqhtHi4sYI8A5FKImXQOpZD854wPzJx6QZ1+KE43rPpCdq9ry8NyUYH7PtJNUnWv0wn+XQ32bUlYooErMLYGnVGic6MN9dJuFvjCAp/qTZOmXjQezwe9jUuuOjMd19zEzFsEm3znG+5uDGw3ZlTi+Ece4a9fpCMNJ9RszZr0jAbfkKuA+KTXOmlzfUOR0KGcL59xdpiMd5WiDTXRB2Q==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2429:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 31:wJqDfhB9Pm6ZBCYng12/5rC1B68lQ3x4UqNl6MrDWI+oN37I2s4boBRjb20RSgrOnwbSn8PXAX0RsErGKWqBfnNYKRqK4/5elzsG8BuO2hP7DcMyAiAYCmwVBmwVI8jxXTGGdcxfxy4WY2VxKINUHfNur0gBv6TQ/XgAD/SBw/c8BwpgeLCXysxWbC5Iw3OY65Ri2fliRE0/onXqkq7W9e/zBih5XHHLKMwEn4ipDnk=;
 20:LCIgJs/OaNE/2SiSjKTO/DwGoFsp2cZB6LZFWdVKQkbx5UCE8CxhSHLrX2ZoYXHJ78ZrEoAkYs2Zycb7eKR12H7onEerLpvSIxiI4xiUN7pjfACamqT40LbTU4G9ZYsQ3OQPoWmCL1LBY5eSpBilYZuwHR+QiMhmcTj6Ae/UbvBHk1xagXiwM50eNSvQKv4TdXhpiR89g9tyfvXvPbiI47beKU2PNpL/HCN5I3jJ6V16agOk/5ZLst+6vj84acAa+p0rpsVK7DUiO5DE+EviKixJPwXNNaXuAnZcOa15cRY5m/Zfi8dmOLfetd3dMnw+Ajbj+20XPzyKxcrzCmfYJl1I6qWeGm0bm0XSePXU5Hg=;
 4:TcBzVl4rWnbLDiO+HoSgiSE2IJFuXeW9RJbou9Sida79fMd1TGoSoYoqN0rZT4+lMVhJo0KurpC7j6uVtMv7YDYfZHm0WV+kXv/5/Yy57OBYWFS00IAFZ71DxY+Aq9GdDHYKoLhKW2S75xq4cK9pUA3AyUbSTgUiN2JZlEerLC6U+gGhVdcKnS8b8jF21ffYg74en5BV70I6zGcGC//AafOWu1Bq6jC9ul5vM4UFKkF7vFWcKLR2rGM1/R7ADC7hMC0d/CODfFIL7BsLy4H82w==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB242904AD0CCF6F3305C99AB6848E0@VI1PR0802MB2429.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231232)(944501410)(52105095)(3002001)(10201501046)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2429; 
X-Forefront-PRVS: 0654257CF5
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2429;
 23:iOvMRLJtukhrqt5Ef51k5pHJ2Zg0ErU5RfGZcW/?=
 =?us-ascii?Q?Hir/Dhj1c2pHXYLAPXBeAn6ZzpE6wZDe+1a9xKV9CjsbepQRKL2+yCIabaiM?=
 =?us-ascii?Q?aeJrxztdA6ebL21QZuR0kuj/rAU1NcLH6lMV8wao045nzHLAEA65AZDdz81c?=
 =?us-ascii?Q?1NFQMnKLMfIKCtGs2kErdH1pHGWoRjJS3XhbQ/nPb3yHhEfo649B6qGJTML8?=
 =?us-ascii?Q?skBjfOjMpT6KvXKN9yYJVNzCQca9fiI+YN5J0VKBlhgFYcaLL+f2S7+CFNIq?=
 =?us-ascii?Q?8NHWJzwt6JUCC2mBS6KassYCsZpoKQAtNcLixL40F3zKDoZn8pL4yEL1l3Et?=
 =?us-ascii?Q?LhH7fS/6MitkyLGctVGe5cZymaNtYdmrGTaUY4WuIsrgo3QkUlFZDO9jRhLp?=
 =?us-ascii?Q?9vYZ7jAhaRPOUfZ8ad1O/jDTdd6f5e4yEGEuEFbb1kbhUVOAVJlneOjBNKTk?=
 =?us-ascii?Q?gR4iP522nnLrTKxG9ZebJPxFKOLQ0vy9oeNOLvaRUKirdpBhFYiCmRChdN8f?=
 =?us-ascii?Q?LgUehRtlVwei3spRhkHYOzR/iaaXCt09p0wt4vglnq/3DAxveeHoRIxLCtVf?=
 =?us-ascii?Q?vRkXl66Sc8IWRIhxGNJ6BV/ba+yzkK8/RFAdURgVfsf4Y50R5DgXX23qsUjO?=
 =?us-ascii?Q?2NcZPf3/7xo6rI+yyPSAJLCQEL92/DNy8BgbMYPidHIvwIcxlyD7D/bL9jau?=
 =?us-ascii?Q?2yagAj5WqRx8bLnWgkQVyRFkRHDszWPVAdlmgFKmEMopDEzq8+qU+dbw8cOo?=
 =?us-ascii?Q?bYjax6WHobKRYPplkdF4ofAbcFZmlg6yhZSiF/6KLy50CrioamNIY7XhtTw3?=
 =?us-ascii?Q?IVwhUJLN3Pj46dy+t53N6BnMxaMS+almZ8X0nFw86TVrTJC7tD04rSOByvWW?=
 =?us-ascii?Q?34e34PlvjROE1Nax0RsTY3XqGqg1W6ojP3C9mwuI65onnYAer9gKw23YB3V+?=
 =?us-ascii?Q?rsR9HzgR/OJQ/sS2KJAf1ukt/SToPTUNmXfxJ5Uy7a3H5z87sw/Y/c5FRREn?=
 =?us-ascii?Q?NUbVeECQXShMCNChtYpB3XyHaGAyG6dEMiDjuBrNi52NFPDzLJ3F5S3BWRUa?=
 =?us-ascii?Q?eXpFbRj6x9x/sCjcPCCw4audlQvbR6prC9WhwsuSogzNfyd9oIm1zBRHdfd6?=
 =?us-ascii?Q?pBbATpDcguT+Av0zhPAuSIv4tG9aJGuG8SjFeLmxEz95jmLCTQ6cIhFBWmd1?=
 =?us-ascii?Q?DSCZSXztRoLNyuU7sa5RAwIEExU/5yK29H7E3wm8I4pLLdP1w52ka34Hyawc?=
 =?us-ascii?Q?2+dOEdxiV5XwMlH/HOn7p7qLSVP78AHUEbTFkWnV91LnxNCQecqeLN0sWbBE?=
 =?us-ascii?Q?7vg=3D=3D?=
X-Microsoft-Antispam-Message-Info: 7yhybCAOdj9d0OeIjGz3QAO37l+2tQfDjSPX61aYBq4dHTw0nTxZ3+qwXwO4mXsj4VnEqBib2WYozWXrJtnlZ+fqkUmuAbsHPi5OP59VJ9pac3QZ8DkRAesRd5vuhpeV4NeEG8ZSV98so8oD5OGeU+7rE1SAETV/wOv3ubyVIy8lAy55U9dTKu/r16VyWQ73It8/ZKidNOGJ44gby/jiNtT+1sEgfV/3eYaDb19gPMYTjRvufehhoqZnX7pAp4958om3XEfvQ2iFonusLbcqGfiR/MPMJgqgUaM/cpfQ+IeNi4sYKWj+QjpPKa/s2QHorlya2oy+Q6nlIbUqm9Tyt36C5K89USWSIKuIa8FH6tyCfw7pKi/FQRBJFukchsU1kPNzlGEUnwYxzMN65yQEHD4e9Y89cVrKjwEk5YoQp6I=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 6:H8QmzsCnq+q5A+aGWWfQGjpIvxphp3sem9OtnILbNMg2KsRuH2rRL3HGP72bzXlrVuUR5EkNXxqmWb24JaaQgoz9Vx3D9kBKw0KXCXD6XnbYjGkAHyW3hIQPtFe3QzVRgNkd9OntzQMVlfh7VM8t3FZoXHnfG4WG1qs8R057nFEKwb1uT0000igq2CxXcuWHfPzF56AEj5aZ48qkxP1GaRJ83DA0yXWWz9TS1ALMPnIuYYV3THAGwxNFcDpQye1oureV3C3Xvafbdy2W2SHKn6MJeA3pkYmXHXsDAktp9Yo15UyexYsYoARbxO4wFBWcLS2gUE106+xbsmucmsj6BXIFeaqNnMZg12m6I1BdfQdX1vmkOUHGWK0KlRtHZHoSjRSndldvDa0AlxQ0Zemauj3++QF2vAwcAl9zld4Mf6Dnx5ALZRihAqwT9Kd/pKx+a/cFeBYuBYTXKWY2yaxSP31RWWjKrlnoPR8vhGLKRBCwFZeKEd5mdXgKTl6h8YQ2;
 5:FnH/+h9TIW9JvJkq60WUYHu44JwFV34XqQ9tGGfegKUIz+9l/P4YzKjQvFZz1XOFSMdF2uq7nC/sMc+dceYbhyVG/rVXH/O3dUuvP9lecexp+vtKrofJkyhJXVOCBh0y2S08COa4prgW2umtzvmQcj6Jnm6tUHSEik8+3wbFquY=;
 24:RDglcs4eq9KB6I9YHbBPsizkdaCAzGacZ+c8tlev6UyLW749FHb2CcUlxYilngavoZ75t+u8mumSKN62gs57k3bEOEROliyX3rRiF6Kyz50=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2429;
 7:UnDnsC5BKurv5ZWELBtaaS/MBG15Ub2OhewmJBrUFm4T/aVtc4NrUhLHOQ9Mm3qc/AnijvmW9jV4kA+2leK7D+MGv7h/FqbS5Qt7y2UX8I1AoNKE/cINnhieLC6DLIbeWuq0xPpszcVabcgVqChZRVGgETqitmslTe+Kf2UYrLNNsU2g36HRaZv9iVl/fg0+Q6pa6VKAQ7mQrX1zksGCFDJWU2YZiczJtJNsFSQykcTdCNfS9xBfuStJOiscM/99
X-MS-Office365-Filtering-Correlation-Id: c766a915-0368-484a-5be2-08d5ab540d3a
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Apr 2018 08:59:42.7667 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c766a915-0368-484a-5be2-08d5ab540d3a
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2429
Subject: Re: [Minios-devel] [PATCH v3 20/43] mini-os: implement the
 memmove/memchr
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVGh1LCBBcHIgMjYsIDIwMTggYXQgMDk6NDk6MjBBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDI2LzA0LzE4IDA5OjQyLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPk9u
IFdlZCwgQXByIDI1LCAyMDE4IGF0IDExOjA5OjQzQU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90
ZToKPiA+Pgo+ID4+Cj4gPj5PbiAyNS8wNC8xOCAxMDozNywgSHVhbmcgU2hpamllIHdyb3RlOgo+
ID4+Pk9uIFdlZCwgQXByIDI1LCAyMDE4IGF0IDEwOjEwOjU4QU0gKzAxMDAsIEp1bGllbiBHcmFs
bCB3cm90ZToKPiA+Pj4+Cj4gPj4+Pgo+ID4+Pj5PbiAwNC8xNi8yMDE4IDA3OjMyIEFNLCBIdWFu
ZyBTaGlqaWUgd3JvdGU6Cj4gPj4+Pj5UaGlzIHBhdGNoIGlzIHNwbGl0IGZyb20gdGhlIENoZW4g
QmFvemkncyBvbGQgcGF0Y2g6Cj4gPj4+Pj4KPiA+Pj4+PiJUaGlzIGFjdGl2YXRlcyB0aGUgQVJN
IGNvZGUgYWRkZWQgaW4gdGhlIHByZXZpb3VzIHBhdGNoZXMuIE9uCj4gPj4+Pj4gIEFSTSwgTWlu
aS1PUyB3aWxsIGJvb3QgYW5kIGRpc3BsYXkgc29tZSBvdXRwdXQgb24gdGhlIGNvbnNvbGUuIFRl
c3RlZCB3aXRoOiIKPiA+Pj4+Pgo+ID4+Pj4+Tm90ZTogVGhlIGNvZGUgaXMgY29waWVkIGZyb20g
RnJlZUJTRCBjb2RlOgo+ID4+Pj4+ICAgICAgIGZyZWVic2QvY29udHJpYi9sZG5zL2NvbXBhdC9t
ZW1tb3ZlLmMKPiA+Pj4+Cj4gPj4+PlRoYXQncyBvbmx5IGZvciBtZW1tb3ZlLiBIb3cgYWJvdXQg
bWVtY2hyPwo+ID4+PlRoZSBtZW1jaHIgaXMgYWxzbyBmcm9tIHRoZSBGcmVlQlNEIGNvZGUuLi4K
PiA+Pgo+ID4+WW91IHNwZWNpZnkgdGhlIGZpbGUgZm9yIG1lbW1vdmUuYy4gQnV0IG5vdCBtZW1j
aHIuCj4gPj4KPiA+PkFsc28sIHRoaXMgc2VlbXMgdG8gY29tZSBmcm9tIGEgdXNlcnNwYWNlIGFw
cGxpY2F0aW9uIGFuZCBub3QgdGhlIGtlcm5lbC4KPiA+PldoeSBub3QgaW1wb3J0aW5nIHRoZSBh
c3NlbWJseSB2ZXJzaW9uIChtZW1tb3ZlLlMgYW5kIG1lbWNweS5TKSB0aGF0IGhhcwo+ID4+YmVl
biBvcHRpbWl6ZWQgZm9yIGFhcmNoNjQ/Cj4gPm9rYXkuIEkgY2FuIHVzZSB0aGUgYXNzZW1ibHkg
dmVyc2lvbi4uCj4gCj4gSSB3YXMgYXNraW5nIHRoZSByYXRpb25hbGUgYmVoaW5kIHVzaW5nIHVz
ZXJzcGFjZSBhcHBsaWNhdGlvbiBtZW1jcHkgb3Zlcgo+IHRoZSBhc3NlbWJseSBvbmUuCkkgZGlk
IG5vdCBjaGVjayB0aGUgcmF0aW9uYWxlIGJlaGluZC4KSXQgd29ya3MsIHRoZW4gSSB1c2VkIGl0
LgoKSSBwcmVmZXIgdG8gdGhlIEMgdmVyc2lvbiB3aGljaCBtYXliZSB1c2VkIGJ5IHg4Ni4gVGhl
IGFzc2VtYmx5IHZlcnNpb24gaXMgb25seQpmb3IgYXJtNjQuLi4KClRoYW5rcwpIdWFuZyBTaGlq
aWUKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlv
cy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0
dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:04:06 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:04:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBcou-0006dP-O7; Thu, 26 Apr 2018 09:04:04 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bqfm=hp=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBcos-0006dK-Vk
 for minios-devel@lists.xenproject.org; Thu, 26 Apr 2018 09:04:03 +0000
X-Inumbo-ID: 1819fec0-4931-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 1819fec0-4931-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:06:24 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 45C9A1435;
 Thu, 26 Apr 2018 02:04:01 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 76F4E3F25D;
 Thu, 26 Apr 2018 02:03:59 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-21-git-send-email-shijie.huang@arm.com>
 <05114cd7-57c6-04ea-acf9-61d159a1132f@arm.com>
 <20180425093704.GB16231@ubuntu.shanghai.arm.com>
 <2c60544a-7515-6061-6fdf-93ce6736aa83@arm.com>
 <20180426084244.GA23594@ubuntu.shanghai.arm.com>
 <ed1e27c7-33ba-a796-c2bf-20ce49b3a2cf@arm.com>
 <20180426085932.GA29172@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <57a1940c-3110-19db-3404-bd356778307b@arm.com>
Date: Thu, 26 Apr 2018 10:03:58 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180426085932.GA29172@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 20/43] mini-os: implement the
 memmove/memchr
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAyNi8wNC8xOCAwOTo1OSwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFRodSwgQXByIDI2
LCAyMDE4IGF0IDA5OjQ5OjIwQU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4KPj4KPj4g
T24gMjYvMDQvMTggMDk6NDIsIEh1YW5nIFNoaWppZSB3cm90ZToKPj4+IE9uIFdlZCwgQXByIDI1
LCAyMDE4IGF0IDExOjA5OjQzQU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4+Pgo+Pj4+
Cj4+Pj4gT24gMjUvMDQvMTggMTA6MzcsIEh1YW5nIFNoaWppZSB3cm90ZToKPj4+Pj4gT24gV2Vk
LCBBcHIgMjUsIDIwMTggYXQgMTA6MTA6NThBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdyb3RlOgo+
Pj4+Pj4KPj4+Pj4+Cj4+Pj4+PiBPbiAwNC8xNi8yMDE4IDA3OjMyIEFNLCBIdWFuZyBTaGlqaWUg
d3JvdGU6Cj4+Pj4+Pj4gVGhpcyBwYXRjaCBpcyBzcGxpdCBmcm9tIHRoZSBDaGVuIEJhb3ppJ3Mg
b2xkIHBhdGNoOgo+Pj4+Pj4+Cj4+Pj4+Pj4gIlRoaXMgYWN0aXZhdGVzIHRoZSBBUk0gY29kZSBh
ZGRlZCBpbiB0aGUgcHJldmlvdXMgcGF0Y2hlcy4gT24KPj4+Pj4+PiAgIEFSTSwgTWluaS1PUyB3
aWxsIGJvb3QgYW5kIGRpc3BsYXkgc29tZSBvdXRwdXQgb24gdGhlIGNvbnNvbGUuIFRlc3RlZCB3
aXRoOiIKPj4+Pj4+Pgo+Pj4+Pj4+IE5vdGU6IFRoZSBjb2RlIGlzIGNvcGllZCBmcm9tIEZyZWVC
U0QgY29kZToKPj4+Pj4+PiAgICAgICAgZnJlZWJzZC9jb250cmliL2xkbnMvY29tcGF0L21lbW1v
dmUuYwo+Pj4+Pj4KPj4+Pj4+IFRoYXQncyBvbmx5IGZvciBtZW1tb3ZlLiBIb3cgYWJvdXQgbWVt
Y2hyPwo+Pj4+PiBUaGUgbWVtY2hyIGlzIGFsc28gZnJvbSB0aGUgRnJlZUJTRCBjb2RlLi4uCj4+
Pj4KPj4+PiBZb3Ugc3BlY2lmeSB0aGUgZmlsZSBmb3IgbWVtbW92ZS5jLiBCdXQgbm90IG1lbWNo
ci4KPj4+Pgo+Pj4+IEFsc28sIHRoaXMgc2VlbXMgdG8gY29tZSBmcm9tIGEgdXNlcnNwYWNlIGFw
cGxpY2F0aW9uIGFuZCBub3QgdGhlIGtlcm5lbC4KPj4+PiBXaHkgbm90IGltcG9ydGluZyB0aGUg
YXNzZW1ibHkgdmVyc2lvbiAobWVtbW92ZS5TIGFuZCBtZW1jcHkuUykgdGhhdCBoYXMKPj4+PiBi
ZWVuIG9wdGltaXplZCBmb3IgYWFyY2g2ND8KPj4+IG9rYXkuIEkgY2FuIHVzZSB0aGUgYXNzZW1i
bHkgdmVyc2lvbi4uCj4+Cj4+IEkgd2FzIGFza2luZyB0aGUgcmF0aW9uYWxlIGJlaGluZCB1c2lu
ZyB1c2Vyc3BhY2UgYXBwbGljYXRpb24gbWVtY3B5IG92ZXIKPj4gdGhlIGFzc2VtYmx5IG9uZS4K
PiBJIGRpZCBub3QgY2hlY2sgdGhlIHJhdGlvbmFsZSBiZWhpbmQuCj4gSXQgd29ya3MsIHRoZW4g
SSB1c2VkIGl0Lgo+IAo+IEkgcHJlZmVyIHRvIHRoZSBDIHZlcnNpb24gd2hpY2ggbWF5YmUgdXNl
ZCBieSB4ODYuIFRoZSBhc3NlbWJseSB2ZXJzaW9uIGlzIG9ubHkKPiBmb3IgYXJtNjQuLi4KCldl
bGwgaWYgdGhlcmUgYXJlIGFuIGFzc2VtYmx5IHZlcnNpb24sIHRoZW4gbW9zdCBsaWtlbHkgdGhl
cmUgYXJlIGEgCnJlYXNvbiBiZWhpbmQgOikuCgpJZiB5b3UgbG9vayBhcm91bmQgbW9zdCBvZiB0
aGUgdGltZSB0aGVyZSB3aWxsIGJlIGEgZ2VuZXJpYyB2ZXJzaW9uIAppbXBsZW1lbnRlZCBpbiBD
IGFuZCBlYWNoIGFyY2hpdGVjdHVyZSBjYW4gb3ZlcnJpZGUgaXQgZm9yIHRoZXJlIG93biAKdmVy
c2lvbi4gVGhpcyBpcyBob3cgaXQgaXMgZG9uZSBpbiBnbGliYywgTGludXgsIFhlbiwgRnJlZUJT
RC4uLgoKQW55d2F5LCB0aGF0J3Mgbm90IG92ZXJseSBjcml0aWNhbCBpdCBzZWVtcyB0byBiZSBv
bmx5IHVzZWQgYXQgYm9vdCB0aW1lLgoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1h
aWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0
cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:08:28 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:08:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBct9-0006ij-2Y; Thu, 26 Apr 2018 09:08:27 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=thhi=hp=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fBct7-0006ie-3g
 for minios-devel@lists.xenproject.org; Thu, 26 Apr 2018 09:08:25 +0000
X-Inumbo-ID: 340a55a9-4931-11e8-9728-bc764e045a96
Received: from EUR02-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe06::62c])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 340a55a9-4931-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 11:07:11 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=JbMsH7vjnmZAFkOj9bLFSmDtZBsn3pDNAsqm4EBpS94=;
 b=Ip9mjjoduz1xh8bFhnMVNeCO2bD3nJ757cIeDj3bW9CxupAs/IsxXKhpYxWjViZtew2sxnKgJ6QTA8z7uF0oFhlpd1LQ3cfJzySGJuSIIT8E0tnZB0eFniDcBI1YOhuZRgVb5TTrf/trC8wtGwULAfEPeF8vbZ29QE5AiXUmTfk=
Received: from VI1PR0801CA0080.eurprd08.prod.outlook.com
 (2603:10a6:800:7d::24) by VI1PR0802MB2431.eurprd08.prod.outlook.com
 (2603:10a6:800:bb::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.13; Thu, 26
 Apr 2018 09:08:16 +0000
Received: from AM5EUR03FT031.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::205) by VI1PR0801CA0080.outlook.office365.com
 (2603:10a6:800:7d::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend
 Transport; Thu, 26 Apr 2018 09:08:16 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT031.mail.protection.outlook.com (10.152.16.111) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Thu, 26 Apr 2018 09:08:15 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Thu, 26 Apr 2018
 10:08:08 +0100
Date: Thu, 26 Apr 2018 09:08:05 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180426090804.GB29172@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-21-git-send-email-shijie.huang@arm.com>
 <05114cd7-57c6-04ea-acf9-61d159a1132f@arm.com>
 <20180425093704.GB16231@ubuntu.shanghai.arm.com>
 <2c60544a-7515-6061-6fdf-93ce6736aa83@arm.com>
 <20180426084244.GA23594@ubuntu.shanghai.arm.com>
 <ed1e27c7-33ba-a796-c2bf-20ce49b3a2cf@arm.com>
 <20180426085932.GA29172@ubuntu.shanghai.arm.com>
 <57a1940c-3110-19db-3404-bd356778307b@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <57a1940c-3110-19db-3404-bd356778307b@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(376002)(39860400002)(346002)(396003)(2980300002)(438002)(52314003)(199004)(189003)(50466002)(86362001)(6862004)(39060400002)(6246003)(8676002)(46406003)(356003)(7696005)(53546011)(4326008)(8666007)(246002)(55016002)(186003)(47776003)(104016004)(16586007)(316002)(97756001)(476003)(23726003)(2906002)(305945005)(72206003)(58126008)(229853002)(446003)(76176011)(106002)(8936002)(93886005)(126002)(336012)(106466001)(6666003)(478600001)(6636002)(426003)(486006)(5660300001)(26005)(33656002)(77096007)(54906003)(11346002)(1076002)(26826003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0802MB2431; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT031;
 1:N25ywgKlxdVq9InxFfJdr/4EtPTEi0GXugffuz/XyBItk619QDq2WcxGPKFc3axi4+4PiCowVVkB82en4TMqp+Xg8mEMrmfaDSSOKtZJTigTF+bxZ96swCJNMB75bMFY
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR0802MB2431; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2431;
 3:lli1vtyOp9vOHzT1tGh2i+YLEzLJpu/fIj20FTyU4SDRBjmCRzJoJcLwPKCEx75M69y6/9ArVS9b8R7SD6RVSwc1p22DL3I0hgvA+y90Wvvh/QFDpcNsXB2p8XAYmSe/POaVpM1O+yte5AEitAm+pp22jMPiVvbegwn5spQA/ZTtk9mtcmhY9xfe7RzcDJvsvU/FpoUbOCGtohSvcvvvUMBo0otgiwQ8lkRPDAbx7qIg31MfyHttOW4fHo1ZF7kHz6eQ7S5ppHRH25yivOpo6NnM8mlv3fqIbgIphM8r/ByWv5euzMDCNHOKdzRYftxmzFfW/KZsyawSW9tZ0CMBfXD1huDtq+QpayNN/oy47TE=;
 25:j7aPVzpIE1RcqCPfGH5PoktgtEaqFVKxdR5PD6kw2CP5Yb19f7i2pp7QOlQpAsT400xD6FmVi9ERnex0+kNFlqKZT9N4UjFmZ6fyC0VYX8dsubrReqLzkqnNqIh020IxcuEWfEgH3idh+3UoP8svhHSwkXaACDa8AldUFRoGUp9YlCGuTTz6gWVsvtUdDuc0d1jmmAdtoiCgQrUlQBm3n3zgeFHO7I2EksEABuf4xVO2duqf03KZDBC3B/nZqUD13ptbHyUEIs5j/40ROFRhIbo+L952Ny3eWnxh7E+PIDk2Vn822UfASVUozF0pFQEwY5Hxrs8FB19dw8nSIk7Yrg==
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2431:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2431;
 31:uQHW/DbRSjb70wnw139fWNHs8M8N/L9Er4cOpOISjjwPichQBeuTq4XSZC5vCyumP/EtNId8aARRrACu8hfT/AiIceP3op54pSvUydxZhoS0emLrMq+e6fUWGcxWBwYCnV4slN1Hl4uFj7Vf46ehYD3HfTo61CL9BlUKnrGAtAkzCtURg70c8LZ+NJ/yrS1BTzrD/n8Cv5j36JFk2kKdbASydfDFTwMq/5BuWfXjKS4=;
 20:hD3yA4OW0bv1IEuT14oT5BXMOFsB7uRu4WvISd9htfKRYlogUj0Op/IK63xCoxdU0eXbbR5R4nNgNh+q/sKR/zPG5iLG9y7qPp5G6EGzXj40TMh+kgkqjlqzqHYyhc2O05paDPel0ak7kMahtDCvGJ4PTkzSLhDqv4Ecfn6XHm7r9iH6oCwmMHXqIDPxASZ0see9VsfW6imMU2M5SoSoWn/hj0E3J+INbbxZo2S1qO6CE7NWheccY6ViGZr4VYjxGkBW8t5+ay1kpT6PGxGlTU518tNiBegqkdA1cqRm6lHJjcXDvQQDTqg5hYOoXYKt9L+XqTdZoQpfUZo/kTjjAn9dVvo4Z6dCrO72fAdK5zg=;
 4:1Cb3begsPFodg2o/gJ5JrXb1ki8V1QtX7kgiQfatfviwVDzd1C/Ru+Euzxz46qJ9vq7/sHTc3Z+Y5n9Pe9oGgDj3GH5rJ/UN0O/9oL0WuRmsYX7ZVk6o/cQoOVmyA+FfJ+0AGDlZ2KDAWh8msAvGK9ZPYpNng2NGANIoGF7e/CbI7kgBDZUFozVf/DMe0jbMaH4qkJ3qY3AQOmYxLrbGZl8DaiCSepQU7Oua49bIvjTUqCL7OxqYMdjAhu8wWGnrIJd0vGMYXCQrEe+phTIh9g==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR0802MB243110186A294DC028B88FCC848E0@VI1PR0802MB2431.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(3231232)(944501410)(52105095)(3002001)(93006095)(93004095)(6055026)(6041310)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:VI1PR0802MB2431; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0802MB2431; 
X-Forefront-PRVS: 0654257CF5
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2431;
 23:zJb+/QIT8KS+IGSOT1dM/gg+5BH1zeBzmu2pR8C?=
 =?us-ascii?Q?hpJlSGHC9owysz61QEowNlLM3p2Sl7vKl3JWjDoOwGR1/9ZKxmmcekunEDiT?=
 =?us-ascii?Q?izzRjOB576K2V8U/z/uYY/PLWGIsWzADvvEiQoLVJyDliHLEQ2IDyyCNxtyL?=
 =?us-ascii?Q?kDovdsNzPFuSODnuaRdQjiCWepgDdvy/c7AJFU8Xkb11HDqHWXjxLvwLFIXe?=
 =?us-ascii?Q?cuMmcdazzFuxcYXreEyWIhP6KxHzfGkWT2scbFSV+RE0jV5CFOJ5qsWTbqOI?=
 =?us-ascii?Q?iUs78OilCNRgytIurKkp3IfWP/MhzG5ydIfeniqpyIDy5OLib9KF5Bc1dCho?=
 =?us-ascii?Q?My/RFJj9PY+miJQo5Go8yefIJYfQOhrHWhk+a9Mob8zispeL8PzLoInV1Ct2?=
 =?us-ascii?Q?PIXdTZbQxg+pCtrw+MuRekqWZ2py9rTPx3OQa5IsR9/J5UaRnGbfdQdOs9ev?=
 =?us-ascii?Q?MNPr1OOcPt98R9vxlJCVZEhzCiUTETKlflXI3Q7G9xG/giZQioUgiLNrfSDK?=
 =?us-ascii?Q?Kqm6kPzEx4tCaJFrxr0j3zBNB97eN9vP8E030bKcG2jVgIUgMMKAfyoK+pOx?=
 =?us-ascii?Q?WJoF77oaD00EvL8aoe8FwopS+W3bgNjUQHR50qu9C6QAdbAgqpvuvaAoeDey?=
 =?us-ascii?Q?ivpz48j2zD4Wdt686PY+rXKZiKNkfdCRzhSFAg7u0zszn02KiTK9mTuF420N?=
 =?us-ascii?Q?WNcnNwBtuLYi7WNgl5nszlSP9suBzxfGL5VyvsQ5n9k/4gyJfonjbdS7uCyb?=
 =?us-ascii?Q?Qym5rwvUymo43pfmGuLZoaxibzvAQj3qlDXcPttYd0KCPCU9e7gcVq9Kkj4p?=
 =?us-ascii?Q?BjrN6QYFVQDofmqVFL29I2kj/G8Y1W07Ip54lbZQh9HrEmXdWBylb6t9FT+y?=
 =?us-ascii?Q?Lzd9IadayPdWaH3KtAXCwDnAdXk6N/OP00gkIwV2IVzCvDgFGrVDlmd4fAQ1?=
 =?us-ascii?Q?wHx2qKtP2jyyN7jcXmm68o9Myf5ehL5XRFkTrxVBMQgvmlXz6P2nfMbiUjMZ?=
 =?us-ascii?Q?UGHq2Qe3WKIccLf2+R4LXc1nBAWbblvhIdDxi6U0ZDqbEj6+CGhNzbnCi+6K?=
 =?us-ascii?Q?KiWEodJm7XJZEfE3pia2UKZI4/DA6QVH2uQulVGLSG30JsEt+lQJodJksvmZ?=
 =?us-ascii?Q?XCGwfet0q6GDZgrEHvoxK+2/inXc+F6oqFbS7uWAWte3IRMm59QwXknO2d6v?=
 =?us-ascii?Q?DmK0qkXbf/k9qUF64wM1lKN23moyijoE+d4ly0OMBcw8zWkG1fOwB8Boc3ls?=
 =?us-ascii?Q?GBqKCDR1UWVZQlqrwBitgE8Uf8optWBI6i0ur5vTlRtZm0u4ZCcBaqjhFbb/?=
 =?us-ascii?Q?zHSfnNy+zm3cGfjYinnM2Qy0=3D?=
X-Microsoft-Antispam-Message-Info: Y82k/UfTnDEfq6WnQ2fbubj0eYD8z/U4ipRL02I871ox+kl5pfI+9RO4tgHMbhFzG0pdQzgEikZcNYj5jU8W9gRWCjcdu/IyziSzbY/02btVG0IKNQA/NMHnix2xo1oi541mOuy3WqjvlyhcDXHu6Ru31PQ0rnSb1M+Q0tPQGMqi/1pnk0BerrsuZMCzVOmh32dLu8j1azIS5AMLd2KRs5ReqFengICto+JaTVJHou2BEpgCKat40sttw7E/Bgn+tgcfNMfefTlqEgMCFfTYwHtNOpN8A3sdWSHM4XulhGto9lMILxVpiAfY5jSuFfMymq8eKEwbnBIKgHUpLByyEAbjfTAUKnh6sci8XjwDadmpvBVYANk3LNjvnZ8AHmhn0Y71wXW9dOObSrm61CcdtawC58xnptOnvGMcJz1TB1Y=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2431;
 6:kWLxTkqKZcZyfsIhQdLIJqU/vRLUhhXdcEkn6Kifpe6xvKjMl1Jig1xeZR+/E78u55vKNWXqD6OFVbapw3iAo5WqGrXzvsmr00u3hv+mMsupGkDGF2L3f6KGIvmC9IDpJeydnvHkW8sLx7CU+3XrKF/ivAdyUqtdLkoAG/NLmGkvx2GmFasCy+WuINtToa9KnacByu46R2ywKmEUpc6xtUGxRdti+viH0J8+Xhf1qoEINWcOoh56nwxaes2+5LCKpVJuhHZPoBHfMt3863NVxQlyVh1Ya8LT5THAMrDNjXs7LoapkfUohZ9wXAAVgmB6LKBoACu/tWHKgxXPcmCjY5YpNA4OcP4nr5Adk6kjqeYvSl3Q7ZIdaEXtcHtzPcQMTk/O4K3ko9hOC76LRYZHdASeLNyh38xxo3pQK7A8jEmPgvtYusyOkZANUQPHeCVG8OM7zsW/tfbQq+jEx4XbArv53Ni63dmb7DMFnt0iVezeyvQssSaNPEuLy0cO8Ulo;
 5:HU/PSQPgmKWRIr5ttfL7tfuDY1wefn7vZcn4nYjznGLeNQgnRQfXeUUDiORQzSx8gdZu6mf+9UwVjPE464KcySadmLd84DtpcMhDjZjjYXgYuejap5BPLoiTTqj65gw3C2lSrIVG682OOfwXBwT/mjHXDzj5o3OVtTPuoKwJeGg=;
 24:taqQGB/JgIMvBR6emH0UokGVBa55sYTUR+GQylM0uja58/LdOhks4d6itLAHBDYd7TyhbG5iK7Zsf1+ifZvp9CYSHfFB1GSnbKPo4ilkt/k=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2431;
 7:UqksvmnfY6uVHrGnTsfAd6Ut8UWLBsw0uPi8wouuiC91hO7EzFNc52OFomaYeQfGM9JWid8Wq4RxLeqKy409uwKmJzitNRr/lEZ/CzoHolWRpa6221G+JMQN1HPkGtmfhXUGYiO94bAy84jFuY5zRbUNXJG7Wyx7Z0hap9W5fbaJYYLnmHLvlQREt7EggLonXpm5JfFXtzkzLM8dY4v57gCGD4H02IS83cGH5qPUZKd3wFuM+LnnpkGe6o5PjG9h
X-MS-Office365-Filtering-Correlation-Id: 9ecca39e-cc60-4b0f-db30-08d5ab553f1f
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Apr 2018 09:08:15.9915 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9ecca39e-cc60-4b0f-db30-08d5ab553f1f
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2431
Subject: Re: [Minios-devel] [PATCH v3 20/43] mini-os: implement the
 memmove/memchr
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVGh1LCBBcHIgMjYsIDIwMTggYXQgMTA6MDM6NThBTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDI2LzA0LzE4IDA5OjU5LCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPk9u
IFRodSwgQXByIDI2LCAyMDE4IGF0IDA5OjQ5OjIwQU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90
ZToKPiA+Pgo+ID4+Cj4gPj5PbiAyNi8wNC8xOCAwOTo0MiwgSHVhbmcgU2hpamllIHdyb3RlOgo+
ID4+Pk9uIFdlZCwgQXByIDI1LCAyMDE4IGF0IDExOjA5OjQzQU0gKzAxMDAsIEp1bGllbiBHcmFs
bCB3cm90ZToKPiA+Pj4+Cj4gPj4+Pgo+ID4+Pj5PbiAyNS8wNC8xOCAxMDozNywgSHVhbmcgU2hp
amllIHdyb3RlOgo+ID4+Pj4+T24gV2VkLCBBcHIgMjUsIDIwMTggYXQgMTA6MTA6NThBTSArMDEw
MCwgSnVsaWVuIEdyYWxsIHdyb3RlOgo+ID4+Pj4+Pgo+ID4+Pj4+Pgo+ID4+Pj4+Pk9uIDA0LzE2
LzIwMTggMDc6MzIgQU0sIEh1YW5nIFNoaWppZSB3cm90ZToKPiA+Pj4+Pj4+VGhpcyBwYXRjaCBp
cyBzcGxpdCBmcm9tIHRoZSBDaGVuIEJhb3ppJ3Mgb2xkIHBhdGNoOgo+ID4+Pj4+Pj4KPiA+Pj4+
Pj4+IlRoaXMgYWN0aXZhdGVzIHRoZSBBUk0gY29kZSBhZGRlZCBpbiB0aGUgcHJldmlvdXMgcGF0
Y2hlcy4gT24KPiA+Pj4+Pj4+ICBBUk0sIE1pbmktT1Mgd2lsbCBib290IGFuZCBkaXNwbGF5IHNv
bWUgb3V0cHV0IG9uIHRoZSBjb25zb2xlLiBUZXN0ZWQgd2l0aDoiCj4gPj4+Pj4+Pgo+ID4+Pj4+
Pj5Ob3RlOiBUaGUgY29kZSBpcyBjb3BpZWQgZnJvbSBGcmVlQlNEIGNvZGU6Cj4gPj4+Pj4+PiAg
ICAgICBmcmVlYnNkL2NvbnRyaWIvbGRucy9jb21wYXQvbWVtbW92ZS5jCj4gPj4+Pj4+Cj4gPj4+
Pj4+VGhhdCdzIG9ubHkgZm9yIG1lbW1vdmUuIEhvdyBhYm91dCBtZW1jaHI/Cj4gPj4+Pj5UaGUg
bWVtY2hyIGlzIGFsc28gZnJvbSB0aGUgRnJlZUJTRCBjb2RlLi4uCj4gPj4+Pgo+ID4+Pj5Zb3Ug
c3BlY2lmeSB0aGUgZmlsZSBmb3IgbWVtbW92ZS5jLiBCdXQgbm90IG1lbWNoci4KPiA+Pj4+Cj4g
Pj4+PkFsc28sIHRoaXMgc2VlbXMgdG8gY29tZSBmcm9tIGEgdXNlcnNwYWNlIGFwcGxpY2F0aW9u
IGFuZCBub3QgdGhlIGtlcm5lbC4KPiA+Pj4+V2h5IG5vdCBpbXBvcnRpbmcgdGhlIGFzc2VtYmx5
IHZlcnNpb24gKG1lbW1vdmUuUyBhbmQgbWVtY3B5LlMpIHRoYXQgaGFzCj4gPj4+PmJlZW4gb3B0
aW1pemVkIGZvciBhYXJjaDY0Pwo+ID4+Pm9rYXkuIEkgY2FuIHVzZSB0aGUgYXNzZW1ibHkgdmVy
c2lvbi4uCj4gPj4KPiA+Pkkgd2FzIGFza2luZyB0aGUgcmF0aW9uYWxlIGJlaGluZCB1c2luZyB1
c2Vyc3BhY2UgYXBwbGljYXRpb24gbWVtY3B5IG92ZXIKPiA+PnRoZSBhc3NlbWJseSBvbmUuCj4g
PkkgZGlkIG5vdCBjaGVjayB0aGUgcmF0aW9uYWxlIGJlaGluZC4KPiA+SXQgd29ya3MsIHRoZW4g
SSB1c2VkIGl0Lgo+ID4KPiA+SSBwcmVmZXIgdG8gdGhlIEMgdmVyc2lvbiB3aGljaCBtYXliZSB1
c2VkIGJ5IHg4Ni4gVGhlIGFzc2VtYmx5IHZlcnNpb24gaXMgb25seQo+ID5mb3IgYXJtNjQuLi4K
PiAKPiBXZWxsIGlmIHRoZXJlIGFyZSBhbiBhc3NlbWJseSB2ZXJzaW9uLCB0aGVuIG1vc3QgbGlr
ZWx5IHRoZXJlIGFyZSBhIHJlYXNvbgo+IGJlaGluZCA6KS4KVGhlIGFzc2VtYmx5IHZlcnNpb24g
aXMgZm9yIGJldHRlciBwZXJmb3JtYW5jZS4gOikKCj4gCj4gSWYgeW91IGxvb2sgYXJvdW5kIG1v
c3Qgb2YgdGhlIHRpbWUgdGhlcmUgd2lsbCBiZSBhIGdlbmVyaWMgdmVyc2lvbgo+IGltcGxlbWVu
dGVkIGluIEMgYW5kIGVhY2ggYXJjaGl0ZWN0dXJlIGNhbiBvdmVycmlkZSBpdCBmb3IgdGhlcmUg
b3duCj4gdmVyc2lvbi4gVGhpcyBpcyBob3cgaXQgaXMgZG9uZSBpbiBnbGliYywgTGludXgsIFhl
biwgRnJlZUJTRC4uLgpZZXMsIEkga25vdyB0aGF0LgoKPiAKPiBBbnl3YXksIHRoYXQncyBub3Qg
b3Zlcmx5IGNyaXRpY2FsIGl0IHNlZW1zIHRvIGJlIG9ubHkgdXNlZCBhdCBib290IHRpbWUuClll
cywgaXQgaXMgbm90IGNyaXRpY2FsLiBTbywgbGV0J3Mga2VlcCB0aGUgQyB2ZXJzaW9uIDopCgpU
aGFua3MKSHVhbmcgU2hpamllCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54
ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGlu
Zm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:49:32 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:49:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdWt-00018x-6n; Thu, 26 Apr 2018 09:49:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdWs-00018s-VV
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:49:30 +0000
X-Inumbo-ID: 70e27772-4937-11e8-8249-2fda3a446a53
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 70e27772-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:51:50 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id 54F29F2024;
 Thu, 26 Apr 2018 11:49:26 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id jJaUH9cCX76o; Thu, 26 Apr 2018 11:49:26 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id 20F78F2023;
 Thu, 26 Apr 2018 11:49:22 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:21 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-2-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <905303d7-d54e-5646-3169-b629ee85afaf@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:20 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-2-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 01/17] plat/common: Common x86
 CPU definitions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1MywgQ29zdGluIEx1cHUgd3JvdGU6Cj4gSW50cm9kdWNpbmcgbmV3IGhl
YWRlciBmb3IgeDg2IENQVSByZWdpc3RlciBsYXlvdXRzLgo+IAo+IFNpZ25lZC1vZmYtYnk6IENv
c3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Cj4gLS0tCj4gICBwbGF0L2NvbW1vbi9p
bmNsdWRlL3g4Ni9jcHVfZGVmcy5oICAgICAgICAgfCA3NiArKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysKPiAgIHBsYXQva3ZtL01ha2VmaWxlLnVrICAgICAgICAgICAgICAgICAgICAgICB8
ICAyICsKPiAgIHBsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMuaCB8IDQ2
ICstLS0tLS0tLS0tLS0tLS0tLQo+ICAgcGxhdC9rdm0veDg2L2VudHJ5NjQuUyAgICAgICAgICAg
ICAgICAgICAgIHwgIDIgKy0KPiAgIHBsYXQveGVuL01ha2VmaWxlLnVrICAgICAgICAgICAgICAg
ICAgICAgICB8ICAyICsKPiAgIHBsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9vcy5oICAgICAgICAg
ICAgICB8ICA5ICstLS0KPiAgIDYgZmlsZXMgY2hhbmdlZCwgODMgaW5zZXJ0aW9ucygrKSwgNTQg
ZGVsZXRpb25zKC0pCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS94
ODYvY3B1X2RlZnMuaAo+IAo+IGRpZmYgLS1naXQgYS9wbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9j
cHVfZGVmcy5oIGIvcGxhdC9jb21tb24vaW5jbHVkZS94ODYvY3B1X2RlZnMuaAo+IG5ldyBmaWxl
IG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uOWVjZWM5Ngo+IC0tLSAvZGV2L251bGwKPiAr
KysgYi9wbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9jcHVfZGVmcy5oCj4gQEAgLTAsMCArMSw3NiBA
QAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICovCj4gKy8qCj4g
KyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Cj4gKyAqCj4g
KyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24u
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gKyAqCj4gKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+ICsgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKPiArICogYXJlIG1ldDoKPiArICoKPiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+ICsg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4g
KyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xkZXIgbm9yIHRoZSBu
YW1lcyBvZiBpdHMKPiArICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KPiArICogICAgdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KPiArICoKPiArICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUyAiQVMgSVMiCj4gKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiArICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UKPiArICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQo+ICsgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCj4gKyAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCj4gKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwo+ICsgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgo+ICsgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQo+ICsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQo+ICsgKiBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KPiArICoKPiArICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBFWFRSQUNU
RUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KPiArICovCj4gKyNpZm5kZWYgX19QTEFUX0NNTl9Y
ODZfQ1BVX0RFRlNfSF9fCj4gKyNkZWZpbmUgX19QTEFUX0NNTl9YODZfQ1BVX0RFRlNfSF9fCj4g
Kwo+ICsvKiBFRkxBR1MgcmVnaXN0ZXIgKi8KPiArI2RlZmluZSBYODZfRUZMQUdTX0NGICAgICAg
ICAgICAoMSA8PCAgMCkgICAvKiBjYXJyeSBmbGFnICAgICAgICAgICAgICAgICovCj4gKyNkZWZp
bmUgWDg2X0VGTEFHU19QRiAgICAgICAgICAgKDEgPDwgIDIpICAgLyogcGFyaXR5IGZsYWcgICAg
ICAgICAgICAgICAqLwo+ICsjZGVmaW5lIFg4Nl9FRkxBR1NfQUYgICAgICAgICAgICgxIDw8ICA0
KSAgIC8qIGF1eGlsaWFyeSBmbGFnICAgICAgICAgICAgKi8KPiArI2RlZmluZSBYODZfRUZMQUdT
X1pGICAgICAgICAgICAoMSA8PCAgNikgICAvKiB6ZXJvIGZsYWcgICAgICAgICAgICAgICAgICov
Cj4gKyNkZWZpbmUgWDg2X0VGTEFHU19TRiAgICAgICAgICAgKDEgPDwgIDcpICAgLyogc2lnbiBm
bGFnICAgICAgICAgICAgICAgICAqLwo+ICsjZGVmaW5lIFg4Nl9FRkxBR1NfVEYgICAgICAgICAg
ICgxIDw8ICA4KSAgIC8qIHRyYXAgZmxhZyAgICAgICAgICAgICAgICAgKi8KPiArI2RlZmluZSBY
ODZfRUZMQUdTX0lGICAgICAgICAgICAoMSA8PCAgOSkgICAvKiBpbnRlcnJ1cHQgZmxhZyAgICAg
ICAgICAgICovCj4gKyNkZWZpbmUgWDg2X0VGTEFHU19ERiAgICAgICAgICAgKDEgPDwgMTApICAg
LyogZGlyZWN0aW9uIGZsYWcgICAgICAgICAgICAqLwo+ICsjZGVmaW5lIFg4Nl9FRkxBR1NfT0Yg
ICAgICAgICAgICgxIDw8IDExKSAgIC8qIG92ZXJmbG93IGZsYWcgICAgICAgICAgICAgKi8KPiAr
I2RlZmluZSBYODZfRUZMQUdTX05UICAgICAgICAgICAoMSA8PCAxNCkgICAvKiBuZXN0ZWQgdGFz
ayBmbGFnICAgICAgICAgICovCj4gKyNkZWZpbmUgWDg2X0VGTEFHU19SRiAgICAgICAgICAgKDEg
PDwgMTYpICAgLyogcmVzdW1lIGZsYWcgICAgICAgICAgICAgICAqLwo+ICsjZGVmaW5lIFg4Nl9F
RkxBR1NfVk0gICAgICAgICAgICgxIDw8IDE3KSAgIC8qIHZpcnR1YWwgODA4NiBtb2RlIGZsYWcg
ICAgKi8KPiArI2RlZmluZSBYODZfRUZMQUdTX0FDICAgICAgICAgICAoMSA8PCAxOCkgICAvKiBh
bGlnbm1lbnQgY2hlY2sgZmxhZyAgICAgICovCj4gKyNkZWZpbmUgWDg2X0VGTEFHU19WSUYgICAg
ICAgICAgKDEgPDwgMTkpICAgLyogdmlydHVhbCBpbnRlcnJ1cHQgZmxhZyAgICAqLwo+ICsjZGVm
aW5lIFg4Nl9FRkxBR1NfVklQICAgICAgICAgICgxIDw8IDIwKSAgIC8qIHZpcnR1YWwgaW50ZXJy
dXB0IHBlbmRpbmcgKi8KPiArI2RlZmluZSBYODZfRUZMQUdTX0lEICAgICAgICAgICAoMSA8PCAy
MSkgICAvKiBJRCBmbGFnICAgICAgICAgICAgICAgICAgICovCj4gKwo+ICsKPiArLyoKPiArICog
QmFzaWMgQ1BVIGNvbnRyb2wgaW4gQ1IwCj4gKyAqLwo+ICsjZGVmaW5lIFg4Nl9DUjBfTVAgICAg
ICAgICAgICAgICgxIDw8IDEpICAgIC8qIE1vbml0b3IgQ29wcm9jZXNzb3IgKi8KPiArI2RlZmlu
ZSBYODZfQ1IwX0VNICAgICAgICAgICAgICAoMSA8PCAyKSAgICAvKiBFbXVsYXRpb24gKi8KPiAr
I2RlZmluZSBYODZfQ1IwX05FICAgICAgICAgICAgICAoMSA8PCA1KSAgICAvKiBOdW1lcmljIEV4
Y2VwdGlvbiAqLwo+ICsjZGVmaW5lIFg4Nl9DUjBfUEcgICAgICAgICAgICAgICgxIDw8IDMxKSAg
IC8qIFBhZ2luZyAqLwo+ICsKPiArLyoKPiArICogSW50ZWwgQ1BVIGZlYXR1cmVzIGluIENSNAo+
ICsgKi8KPiArI2RlZmluZSBYODZfQ1I0X1BBRSAgICAgICAgICAgICAoMSA8PCA1KSAgICAvKiBl
bmFibGUgUEFFICovCj4gKyNkZWZpbmUgWDg2X0NSNF9PU0ZYU1IgICAgICAgICAgKDEgPDwgOSkg
ICAgLyogT1Mgc3VwcG9ydCBmb3IgRlhTQVZFL0ZYUlNUT1IgKi8KPiArI2RlZmluZSBYODZfQ1I0
X09TWE1NRVhDUFQgICAgICAoMSA8PCAxMCkgICAvKiBPUyBzdXBwb3J0IGZvciBGUCBleGNlcHRp
b25zICovCj4gKwo+ICsvKgo+ICsgKiBJbnRlbCBDUFUgZmVhdHVyZXMgaW4gRUZFUgo+ICsgKi8K
PiArI2RlZmluZSBYODZfRUZFUl9MTUUgICAgICAgICAgICAoMSA8PCA4KSAgICAvKiBMb25nIG1v
ZGUgZW5hYmxlIChSL1cpICovCj4gKwo+ICsjZW5kaWYgLyogX19QTEFUX0NNTl9YODZfQ1BVX0RF
RlNfSF9fICovCj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL01ha2VmaWxlLnVrIGIvcGxhdC9rdm0v
TWFrZWZpbGUudWsKPiBpbmRleCA0YjNhYmMzLi5lN2E1NWZkIDEwMDY0NAo+IC0tLSBhL3BsYXQv
a3ZtL01ha2VmaWxlLnVrCj4gKysrIGIvcGxhdC9rdm0vTWFrZWZpbGUudWsKPiBAQCAtMTIsNyAr
MTIsOSBAQCAkKGV2YWwgJChjYWxsIGFkZHBsYXRsaWIsa3ZtLGxpYmt2bXBsYXQpKQo+ICAgIyMg
UGxhdGZvcm0gbGlicmFyeSBkZWZpbml0aW9ucwo+ICAgIyMKPiAgIExJQktWTVBMQVRfQVNJTkNM
VURFUy15ICAgICAgICArPSAtSSQoTElCS1ZNUExBVF9CQVNFKS9pbmNsdWRlCj4gK0xJQktWTVBM
QVRfQVNJTkNMVURFUy15ICAgICAgICArPSAtSSQoVUtfUExBVF9DT01NT05fQkFTRSkvaW5jbHVk
ZQo+ICAgTElCS1ZNUExBVF9DSU5DTFVERVMteSAgICAgICAgICs9IC1JJChMSUJLVk1QTEFUX0JB
U0UpL2luY2x1ZGUKPiArTElCS1ZNUExBVF9DSU5DTFVERVMteSAgICAgICAgICs9IC1JJChVS19Q
TEFUX0NPTU1PTl9CQVNFKS9pbmNsdWRlCj4gICAKPiAgIExJQktWTVBMQVRfU1JDUy0kKEFSQ0hf
WDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2L2VudHJ5NjQuUwo+ICAgTElCS1ZNUExB
VF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoTElCS1ZNUExBVF9CQVNFKS94ODYvY3B1X3g4Nl82
NC5jCj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0X2Rl
ZnMuaCBiL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMuaAo+IGluZGV4
IDk0NTk2ODkuLjk4NWY4ZDMgMTAwNjQ0Cj4gLS0tIGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2
L2NwdV94ODZfNjRfZGVmcy5oCj4gKysrIGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L2NwdV94
ODZfNjRfZGVmcy5oCj4gQEAgLTE5LDUxICsxOSw3IEBACj4gICAgKiBDT05ORUNUSU9OIFdJVEgg
VEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgo+ICAgICovCj4gICAKPiAt
I2lmbmRlZiBfQklUVUwKPiAtCj4gLSNkZWZpbmUgX0FDKFgsIFkpICAgICAgICAgICAgICAgWAo+
IC0jZGVmaW5lIF9BVChULCBYKSAgICAgICAgICAgICAgIFgKPiAtI2Vsc2UKPiAtI2RlZmluZSBf
X0FDKFgsIFkpICAgICAgICAgICAgICAoWCMjWSkKPiAtI2RlZmluZSBfQUMoWCwgWSkgICAgICAg
ICAgICAgICBfX0FDKFgsIFkpCj4gLSNkZWZpbmUgX0FUKFQsIFgpICAgICAgICAgICAgICAgKChU
KShYKSkKPiAtI2VuZGlmCj4gLQo+IC0jZGVmaW5lIF9CSVRVTCh4KSAgICAgICAgICAgICAgIChf
QUMoMSwgVUwpIDw8ICh4KSkKPiAtI2RlZmluZSBfQklUVUxMKHgpICAgICAgICAgICAgICAoX0FD
KDEsIFVMTCkgPDwgKHgpKQo+IC0KPiAtLyoKPiAtICogQmFzaWMgQ1BVIGNvbnRyb2wgaW4gQ1Iw
Cj4gLSAqLwo+IC0jZGVmaW5lIFg4Nl9DUjBfTVBfQklUICAgICAgICAgIDEgLyogTW9uaXRvciBD
b3Byb2Nlc3NvciAqLwo+IC0jZGVmaW5lIFg4Nl9DUjBfTVAgICAgICAgICAgICAgIF9CSVRVTChY
ODZfQ1IwX01QX0JJVCkKPiAtI2RlZmluZSBYODZfQ1IwX0VNX0JJVCAgICAgICAgICAyIC8qIEVt
dWxhdGlvbiAqLwo+IC0jZGVmaW5lIFg4Nl9DUjBfRU0gICAgICAgICAgICAgIF9CSVRVTChYODZf
Q1IwX0VNX0JJVCkKPiAtI2RlZmluZSBYODZfQ1IwX05FX0JJVCAgICAgICAgICA1IC8qIE51bWVy
aWMgRXhjZXB0aW9uICovCj4gLSNkZWZpbmUgWDg2X0NSMF9ORSAgICAgICAgICAgICAgX0JJVFVM
KFg4Nl9DUjBfTkVfQklUKQo+IC0jZGVmaW5lIFg4Nl9DUjBfUEdfQklUICAgICAgICAgIDMxIC8q
IFBhZ2luZyAqLwo+IC0jZGVmaW5lIFg4Nl9DUjBfUEcgICAgICAgICAgICAgIF9CSVRVTChYODZf
Q1IwX1BHX0JJVCkKPiAtCj4gLS8qCj4gLSAqIEludGVsIENQVSBmZWF0dXJlcyBpbiBDUjQKPiAt
ICovCj4gLSNkZWZpbmUgWDg2X0NSNF9QQUVfQklUICAgICAgICAgNSAvKiBlbmFibGUgcGh5c2lj
YWwgYWRkcmVzcyBleHRlbnNpb25zICovCj4gLSNkZWZpbmUgWDg2X0NSNF9QQUUgICAgICAgICAg
ICAgX0JJVFVMKFg4Nl9DUjRfUEFFX0JJVCkKPiAtI2RlZmluZSBYODZfQ1I0X09TRlhTUl9CSVQg
ICAgICA5IC8qIE9TIHN1cHBvcnQgZm9yIEZYU0FWRS9GWFJTVE9SICovCj4gLSNkZWZpbmUgWDg2
X0NSNF9PU0ZYU1IgICAgICAgICAgX0JJVFVMKFg4Nl9DUjRfT1NGWFNSX0JJVCkKPiAtI2RlZmlu
ZSBYODZfQ1I0X09TWE1NRVhDUFRfQklUICAxMCAvKiBPUyBzdXBwb3J0IGZvciBGUCBleGNlcHRp
b25zICovCj4gLSNkZWZpbmUgWDg2X0NSNF9PU1hNTUVYQ1BUICAgICAgX0JJVFVMKFg4Nl9DUjRf
T1NYTU1FWENQVF9CSVQpCj4gLQo+IC0vKgo+IC0gKiBJbnRlbCBDUFUgZmVhdHVyZXMgaW4gRUZF
Ugo+IC0gKi8KPiAtI2RlZmluZSBYODZfRUZFUl9MTUVfQklUICAgICAgICA4IC8qIExvbmcgbW9k
ZSBlbmFibGUgKFIvVykgKi8KPiAtI2RlZmluZSBYODZfRUZFUl9MTUUgICAgICAgICAgICBfQklU
VUwoWDg2X0VGRVJfTE1FX0JJVCkKPiAtCj4gLS8qIE5lZWRlZCBieSBtZW0uYyAqLwo+IC0jZGVm
aW5lIFBBR0VfU0laRSAgICAgICAgICAgICAgIDQwOTYKPiAtLy8jZGVmaW5lIFBBR0VfU0hJRlQg
ICAgICAgICAgICAgIDEyCj4gLSNkZWZpbmUgUEFHRV9NQVNLICAgICAgICAgICAgICAgfigweGZm
ZikKPiArI2luY2x1ZGUgPHg4Ni9jcHVfZGVmcy5oPgo+ICAgCj4gICAvKgo+ICAgICogR0RUIGxh
eW91dAo+IGRpZmYgLS1naXQgYS9wbGF0L2t2bS94ODYvZW50cnk2NC5TIGIvcGxhdC9rdm0veDg2
L2VudHJ5NjQuUwo+IGluZGV4IDJkMTQzODYuLjY1NzBjNDcgMTAwNjQ0Cj4gLS0tIGEvcGxhdC9r
dm0veDg2L2VudHJ5NjQuUwo+ICsrKyBiL3BsYXQva3ZtL3g4Ni9lbnRyeTY0LlMKPiBAQCAtMjcs
OCArMjcsOCBAQAo+ICAgICogU1VDSCBEQU1BR0UuCj4gICAgKi8KPiAgIAo+ICsjaW5jbHVkZSA8
eDg2L2NwdV9kZWZzLmg+Cj4gICAjaW5jbHVkZSA8a3ZtLXg4Ni9tdWx0aWJvb3RfZGVmcy5oPgo+
IC0jaW5jbHVkZSA8a3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMuaD4KPiAgIAo+ICAgI2RlZmluZSBF
TlRSWSh4KSAudGV4dDsgLmdsb2JsIHg7IC50eXBlIHgsJWZ1bmN0aW9uOyB4Ogo+ICAgI2RlZmlu
ZSBFTkQoeCkgICAuc2l6ZSB4LCAuIC0geAo+IGRpZmYgLS1naXQgYS9wbGF0L3hlbi9NYWtlZmls
ZS51ayBiL3BsYXQveGVuL01ha2VmaWxlLnVrCj4gaW5kZXggMDhlNzdlMC4uYzFiMmVjYiAxMDA2
NDQKPiAtLS0gYS9wbGF0L3hlbi9NYWtlZmlsZS51awo+ICsrKyBiL3BsYXQveGVuL01ha2VmaWxl
LnVrCj4gQEAgLTIyLDcgKzIyLDkgQEAgTElCWEVOUExBVF9DWFhGTEFHUy15ICAgICs9IC1EX19Y
RU5fSU5URVJGQUNFX1ZFUlNJT05fXz0kKFhFTl9JTlRFUkZBQ0VfVkVSU0lPTikKPiAgICMjIFBs
YXRmb3JtIGxpYnJhcnkgZGVmaW5pdGlvbnMKPiAgICMjCj4gICBMSUJYRU5QTEFUX0FTSU5DTFVE
RVMteSAgICAgICAgKz0gLUkkKExJQlhFTlBMQVRfQkFTRSkvaW5jbHVkZQo+ICtMSUJYRU5QTEFU
X0FTSU5DTFVERVMteSAgICAgICAgKz0gLUkkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL2luY2x1ZGUK
PiAgIExJQlhFTlBMQVRfQ0lOQ0xVREVTLXkgICAgICAgICArPSAtSSQoTElCWEVOUExBVF9CQVNF
KS9pbmNsdWRlCj4gK0xJQlhFTlBMQVRfQ0lOQ0xVREVTLXkgICAgICAgICArPSAtSSQoVUtfUExB
VF9DT01NT05fQkFTRSkvaW5jbHVkZQo+ICAgTElCWEVOUExBVF9TUkNTLXkgICAgICAgICAgICAg
ICs9ICQoTElCWEVOUExBVF9CQVNFKS9oeXBlcnZpc29yLmMKPiAgIExJQlhFTlBMQVRfU1JDUy15
ICAgICAgICAgICAgICArPSAkKExJQlhFTlBMQVRfQkFTRSkvbWVtb3J5LmMKPiAgIAo+IGRpZmYg
LS1naXQgYS9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvb3MuaCBiL3BsYXQveGVuL2luY2x1ZGUv
eGVuLXg4Ni9vcy5oCj4gaW5kZXggOTljOWQxNC4uM2RmNzczYyAxMDA2NDQKPiAtLS0gYS9wbGF0
L3hlbi9pbmNsdWRlL3hlbi14ODYvb3MuaAo+ICsrKyBiL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4
Ni9vcy5oCj4gQEAgLTYwLDE0ICs2MCw3IEBAIHR5cGVkZWYgdW5zaWduZWQgbG9uZyB1X2xvbmc7
Cj4gICAjaW5jbHVkZSA8eGVuL3hzbS9mbGFza19vcC5oPgo+ICAgI2VuZGlmCj4gICAKPiAtI2Rl
ZmluZSBNU1JfRUZFUiAgICAgICAgMHhjMDAwMDA4MAo+IC0jZGVmaW5lIF9FRkVSX0xNRSAgICAg
ICA4ICAgICAgICAgICAvKiBMb25nIG1vZGUgZW5hYmxlICovCj4gLQo+IC0jZGVmaW5lIFg4Nl9D
UjBfUEcgICAgICAweDgwMDAwMDAwICAvKiBQYWdpbmcgKi8KPiAtI2RlZmluZSBYODZfQ1I0X1BB
RSAgICAgMHgwMDAwMDAyMCAgLyogZW5hYmxlIHBoeXNpY2FsIGFkZHJlc3MgZXh0ZW5zaW9ucyAq
Lwo+IC0jZGVmaW5lIFg4Nl9DUjRfT1NGWFNSICAweDAwMDAwMjAwICAvKiBlbmFibGUgZmFzdCBG
UFUgc2F2ZSBhbmQgcmVzdG9yZSAqLwo+IC0KPiAtI2RlZmluZSBYODZfRUZMQUdTX0lGICAgMHgw
MDAwMDIwMAo+ICsjaW5jbHVkZSA8eDg2L2NwdV9kZWZzLmg+Cj4gICAKPiAgICNkZWZpbmUgX19L
RVJORUxfQ1MgICAgIEZMQVRfS0VSTkVMX0NTCj4gICAjZGVmaW5lIF9fS0VSTkVMX0RTICAgICBG
TEFUX0tFUk5FTF9EUwo+IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVu
cHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv
L21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:49:34 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:49:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdWw-00019J-8P; Thu, 26 Apr 2018 09:49:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdWv-00019E-MQ
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:49:33 +0000
X-Inumbo-ID: 737ce884-4937-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 737ce884-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:51:55 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 78B031040F0;
 Thu, 26 Apr 2018 11:49:31 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id SpT9lUwUMTRA; Thu, 26 Apr 2018 11:49:31 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 41084104314;
 Thu, 26 Apr 2018 11:49:27 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:27 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-3-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <eaad1b11-e100-2cde-b382-1a7f13fbcde1@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:26 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-3-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 02/17] plat/common: Common x86
 segment descriptors definitions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1MywgQ29zdGluIEx1cHUgd3JvdGU6Cj4gSW50cm9kdWNpbmcgbmV3IGhl
YWRlciBmb3Igc2VnbWVudCBkZXNjcmlwdG9ycy4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBDb3N0aW4g
THVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgo+IC0tLQo+ICAgcGxhdC9jb21tb24vaW5jbHVk
ZS94ODYvZGVzYy5oICAgICAgICB8IDE5NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrCj4gICBwbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NC5oIHwgICA1IC0KPiAg
IHBsYXQva3ZtL3g4Ni9jcHVfeDg2XzY0LmMgICAgICAgICAgICAgfCAgMTEgKy0KPiAgIHBsYXQv
eGVuL3g4Ni90cmFwcy5jICAgICAgICAgICAgICAgICAgfCAgMTEgKy0KPiAgIDQgZmlsZXMgY2hh
bmdlZCwgMjA4IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQo+ICAgY3JlYXRlIG1vZGUg
MTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L2Rlc2MuaAo+IAo+IGRpZmYgLS1naXQgYS9w
bGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9kZXNjLmggYi9wbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9k
ZXNjLmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLjEwY2FiZDUKPiAt
LS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9jb21tb24vaW5jbHVkZS94ODYvZGVzYy5oCj4gQEAg
LTAsMCArMSwxOTcgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVz
ZSAqLwo+ICsvKgo+ICsgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHVi
LnJvPgo+ICsgKgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVD
IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+ICsgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
PiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4gKyAqCj4gKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KPiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+ICsgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgo+ICsgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9s
ZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCj4gKyAqICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCj4gKyAqICAgIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCj4g
KyAqCj4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgo+ICsgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4gKyAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUKPiArICogTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
Ugo+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgo+ICsgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKPiArICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KPiArICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKPiArICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKPiArICog
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4gKyAqCj4gKyAqIFRISVMgSEVBREVSIE1BWSBO
T1QgQkUgRVhUUkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCj4gKyAqLwo+ICsvKgo+ICsg
KiBBZGFwdGVkIGZyb20gTWluaS1PUzogaW5jbHVkZS94ODYvZGVzYy5oCj4gKyAqLwo+ICsKPiAr
I2lmbmRlZiBfX1BMQVRfQ01OX1g4Nl9ERVNDX0hfXwo+ICsjZGVmaW5lIF9fUExBVF9DTU5fWDg2
X0RFU0NfSF9fCj4gKwo+ICsjaW5jbHVkZSA8dWsvYXJjaC90eXBlcy5oPgo+ICsjaW5jbHVkZSA8
dWsvZXNzZW50aWFscy5oPgo+ICsKPiArCj4gKy8qIFByb3RlY3RlZCBtb2RlIGxnZHQvbGlkdCB0
YWJsZSBwb2ludGVyLiAqLwo+ICtzdHJ1Y3QgZGVzY190YWJsZV9wdHIzMiB7Cj4gKwlfX3UxNiBs
aW1pdDsKPiArCV9fdTMyIGJhc2U7Cj4gK30gX19wYWNrZWQ7Cj4gKwo+ICsvKiBMb25nIG1vZGUg
bGdkdC9saWR0IHRhYmxlIHBvaW50ZXIuICovCj4gK3N0cnVjdCBkZXNjX3RhYmxlX3B0cjY0IHsK
PiArCV9fdTE2IGxpbWl0Owo+ICsJX191NjQgYmFzZTsKPiArfSBfX3BhY2tlZDsKPiArCj4gKwo+
ICsvKiA4IGJ5dGUgdXNlciBzZWdtZW50IGRlc2NyaXB0b3IgKEdEVC9MRFQgZW50cmllcyB3aXRo
IC5zID0gMSkgKi8KPiArc3RydWN0IHNlZ19kZXNjMzIgewo+ICsJdW5pb24gewo+ICsJCS8qIFJh
dyBiYWNraW5nIGludGVnZXJzLiAqLwo+ICsJCXN0cnVjdCB7Cj4gKwkJCV9fdTMyIGxvLCBoaTsK
PiArCQl9Owo+ICsJCS8qIENvbW1vbiBuYW1lZCBmaWVsZHMuICovCj4gKwkJc3RydWN0IHsKPiAr
CQkJX191NjQgbGltaXRfbG86MTY7Cj4gKwkJCV9fdTY0IGJhc2VfbG86MjQ7Cj4gKwkJCV9fdTY0
IHR5cGU6NDsKPiArCQkJX191NjQgczoxOwo+ICsJCQlfX3U2NCBkcGw6MjsKPiArCQkJX191NjQg
cDoxOwo+ICsJCQlfX3U2NCBsaW1pdF9oaTo0Owo+ICsJCQlfX3U2NCBhdmw6MTsKPiArCQkJX191
NjQgbDoxOwo+ICsJCQlfX3U2NCBkOjE7Cj4gKwkJCV9fdTY0IGdyYW46MTsKPiArCQkJX191NjQg
YmFzZV9oaTo4Owo+ICsJCX07Cj4gKwkJLyogQ29kZSBzZWdtZW50IHNwZWNpZmljIGZpZWxkIG5h
bWVzLiAqLwo+ICsJCXN0cnVjdCB7Cj4gKwkJCV9fdTY0IGxpbWl0X2xvOjE2Owo+ICsJCQlfX3U2
NCBiYXNlX2xvOjI0Owo+ICsJCQlfX3U2NCBhOjE7Cj4gKwkJCV9fdTY0IHI6MTsKPiArCQkJX191
NjQgYzoxOwo+ICsJCQlfX3U2NCB4OjE7Cj4gKwkJCV9fdTY0IHM6MTsKPiArCQkJX191NjQgZHBs
OjI7Cj4gKwkJCV9fdTY0IHA6MTsKPiArCQkJX191NjQgbGltaXRfaGk6NDsKPiArCQkJX191NjQg
YXZsOjE7Cj4gKwkJCV9fdTY0IGw6MTsKPiArCQkJX191NjQgZDoxOwo+ICsJCQlfX3U2NCBncmFu
OjE7Cj4gKwkJCV9fdTY0IGJhc2VfaGk6ODsKPiArCQl9IGNvZGU7Cj4gKwkJLyogRGF0YSBzZWdt
ZW50IHNwZWNpZmljIGZpZWxkIG5hbWVzLiAqLwo+ICsJCXN0cnVjdCB7Cj4gKwkJCV9fdTY0IGxp
bWl0X2xvOjE2Owo+ICsJCQlfX3U2NCBiYXNlX2xvOjI0Owo+ICsJCQlfX3U2NCBhOjE7Cj4gKwkJ
CV9fdTY0IHc6MTsKPiArCQkJX191NjQgZToxOwo+ICsJCQlfX3U2NCB4OjE7Cj4gKwkJCV9fdTY0
IHM6MTsKPiArCQkJX191NjQgZHBsOjI7Cj4gKwkJCV9fdTY0IHA6MTsKPiArCQkJX191NjQgbGlt
aXRfaGk6NDsKPiArCQkJX191NjQgYXZsOjE7Cj4gKwkJCV9fdTY0IHJlc2VydmVkOjE7Cj4gKwkJ
CV9fdTY0IGI6MTsKPiArCQkJX191NjQgZ3JhbjoxOwo+ICsJCQlfX3U2NCBiYXNlX2hpOjg7Cj4g
KwkJfSBkYXRhOwo+ICsKPiArCQlfX3U2NCByYXc7Cj4gKwl9Owo+ICt9IF9fcGFja2VkOwo+ICsK
PiArc3RydWN0IHNlZ19kZXNjNjQgewo+ICsJdW5pb24gewo+ICsJCXN0cnVjdCB7Cj4gKwkJCV9f
dTY0IGxvLCBoaTsKPiArCQl9Owo+ICsJCXN0cnVjdCB7Cj4gKwkJCV9fdTY0IGxpbWl0X2xvOjE2
Owo+ICsJCQlfX3U2NCBiYXNlX2xvOjI0Owo+ICsJCQlfX3U2NCB0eXBlOjQ7Cj4gKwkJCV9fdTY0
IHplcm86MTsKPiArCQkJX191NjQgZHBsOjI7Cj4gKwkJCV9fdTY0IHA6MTsKPiArCQkJX191NjQg
bGltaXRfaGk6NDsKPiArCQkJX191NjQgYXZsOjE7Cj4gKwkJCV9fdTY0IHVudXNlZDoyOwo+ICsJ
CQlfX3U2NCBncmFuOjE7Cj4gKwkJCV9fdTY0IGJhc2VfaGk6NDA7Cj4gKwkJCV9fdTY0IHJlc2Vy
dmVkOjg7Cj4gKwkJCV9fdTY0IHplcm8xOjU7Cj4gKwkJCV9fdTY0IHJlc2VydmVkMToxOTsKPiAr
CQl9IF9fcGFja2VkOwo+ICsJfTsKPiArfSBfX3BhY2tlZDsKPiArCj4gKwo+ICsvKiA4LWJ5dGUg
Z2F0ZSAtIFByb3RlY3RlZCBtb2RlIElEVCBlbnRyeSwgR0RUIHRhc2svY2FsbCBnYXRlLiAqLwo+
ICtzdHJ1Y3Qgc2VnX2dhdGVfZGVzYzMyIHsKPiArCXVuaW9uIHsKPiArCQlzdHJ1Y3Qgewo+ICsJ
CQlfX3UzMiBsbywgaGk7Cj4gKwkJfTsKPiArCQlzdHJ1Y3Qgewo+ICsJCQlfX3UzMiBvZmZzZXRf
bG86MTY7Cj4gKwkJCV9fdTMyIHNlbGVjdG9yOjE2Owo+ICsJCQlfX3UzMiByZXNlcnZlZDo4Owo+
ICsJCQlfX3UzMiB0eXBlOjQ7Cj4gKwkJCV9fdTMyIHM6MTsKPiArCQkJX191MzIgZHBsOjI7Cj4g
KwkJCV9fdTMyIHA6MTsKPiArCQkJX191MzIgb2Zmc2V0X2hpOjE2Owo+ICsJCX07Cj4gKwl9Owo+
ICt9IF9fcGFja2VkOwo+ICsKPiArLyogMTYtYnl0ZSBnYXRlIC0gTG9uZyBtb2RlIElEVCBlbnRy
eS4gKi8KPiArc3RydWN0IHNlZ19nYXRlX2Rlc2M2NCB7Cj4gKwl1bmlvbiB7Cj4gKwkJc3RydWN0
IHsKPiArCQkJX191NjQgbG8sIGhpOwo+ICsJCX07Cj4gKwkJc3RydWN0IHsKPiArCQkJX191NjQg
b2Zmc2V0X2xvOjE2Owo+ICsJCQlfX3U2NCBzZWxlY3RvcjoxNjsKPiArCQkJX191NjQgaXN0OjM7
Cj4gKwkJCV9fdTY0IHJlc2VydmVkOjU7Cj4gKwkJCV9fdTY0IHR5cGU6NDsKPiArCQkJX191NjQg
czogMTsKPiArCQkJX191NjQgZHBsOiAyOwo+ICsJCQlfX3U2NCBwOiAxOwo+ICsJCQlfX3U2NCBv
ZmZzZXRfaGk6NDg7Cj4gKwkJCV9fdTY0IHJlc2VydmVkMTozMjsKPiArCQl9IF9fcGFja2VkOwo+
ICsJfTsKPiArfSBfX3BhY2tlZDsKPiArCj4gKwo+ICtzdHJ1Y3QgdHNzNjQgewo+ICsJX191MzIg
cmVzZXJ2ZWQ7Cj4gKwlfX3U2NCByc3BbM107Cj4gKwlfX3U2NCByZXNlcnZlZDI7Cj4gKwlfX3U2
NCBpc3RbN107CSAgIC8qIDEtYmFzZWQgc3RydWN0dXJlICovCj4gKwlfX3U2NCByZXNlcnZlZDM7
Cj4gKwlfX3UxNiByZXNlcnZlZDQ7Cj4gKwlfX3UxNiBpb21hcF9iYXNlOwo+ICt9IF9fcGFja2Vk
Owo+ICsKPiArI2VuZGlmIC8qIF9fUExBVF9DTU5fWDg2X0RFU0NfSF9fICovCj4gZGlmZiAtLWdp
dCBhL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0LmggYi9wbGF0L2t2bS9pbmNs
dWRlL2t2bS14ODYvY3B1X3g4Nl82NC5oCj4gaW5kZXggOTYyNTJiOC4uNDI3YzcwNSAxMDA2NDQK
PiAtLS0gYS9wbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NC5oCj4gKysrIGIvcGxh
dC9rdm0vaW5jbHVkZS9rdm0teDg2L2NwdV94ODZfNjQuaAo+IEBAIC0yMCwxMSArMjAsNiBAQAo+
ICAgICovCj4gICAjaW5jbHVkZSA8aW50dHlwZXMuaD4KPiAgIAo+IC1zdHJ1Y3QgZ2R0cHRyIHsK
PiAtCXVpbnQxNl90IGxpbWl0Owo+IC0JdWludDY0X3QgYmFzZTsKPiAtfSBfX3BhY2tlZDsKPiAt
Cj4gICAvKiBhY2Nlc3NpbmcgZGV2aWNlcyB2aWEgcG9ydCBzcGFjZSAqLwo+ICAgc3RhdGljIGlu
bGluZSB2b2lkIG91dGIodWludDE2X3QgcG9ydCwgdWludDhfdCB2KQo+ICAgewo+IGRpZmYgLS1n
aXQgYS9wbGF0L2t2bS94ODYvY3B1X3g4Nl82NC5jIGIvcGxhdC9rdm0veDg2L2NwdV94ODZfNjQu
Ywo+IGluZGV4IDdiZmY4YmUuLjJmOThiOTUgMTAwNjQ0Cj4gLS0tIGEvcGxhdC9rdm0veDg2L2Nw
dV94ODZfNjQuYwo+ICsrKyBiL3BsYXQva3ZtL3g4Ni9jcHVfeDg2XzY0LmMKPiBAQCAtMjUsMTEg
KzI1LDEyIEBACj4gICAgKi8KPiAgIAo+ICAgI2luY2x1ZGUgPHN0cmluZy5oPgo+ICsjaW5jbHVk
ZSA8eDg2L2Rlc2MuaD4KPiAgICNpbmNsdWRlIDxrdm0vc2V0dXAuaD4KPiAgICNpbmNsdWRlIDxr
dm0teDg2L2NwdV94ODZfNjRfZGVmcy5oPgo+ICAgI2luY2x1ZGUgPGt2bS14ODYvY3B1X3g4Nl82
NC5oPgo+ICAgCj4gLXN0YXRpYyB1aW50NjRfdCBjcHVfZ2R0NjRbR0RUX05VTV9FTlRSSUVTXSBB
TElHTl82NF9CSVQ7Cj4gK3N0YXRpYyBzdHJ1Y3Qgc2VnX2Rlc2MzMiBjcHVfZ2R0NjRbR0RUX05V
TV9FTlRSSUVTXSBBTElHTl82NF9CSVQ7Cj4gICAKPiAgIC8qCj4gICAgKiBUaGUgbW9uaXRvciAo
dWt2bSkgb3IgYm9vdGxvYWRlciArIGJvb3RzdHJhcCAodmlydGlvKSBzdGFydHMgdXMgdXAgd2l0
aCBhCj4gQEAgLTQxLDE0ICs0MiwxNCBAQCBzdGF0aWMgdWludDY0X3QgY3B1X2dkdDY0W0dEVF9O
VU1fRU5UUklFU10gQUxJR05fNjRfQklUOwo+ICAgICovCj4gICBzdGF0aWMgdm9pZCBnZHRfaW5p
dCh2b2lkKQo+ICAgewo+IC0Jdm9sYXRpbGUgc3RydWN0IGdkdHB0ciBnZHRwdHI7Cj4gKwl2b2xh
dGlsZSBzdHJ1Y3QgZGVzY190YWJsZV9wdHI2NCBnZHRwdHI7Cj4gICAKPiAgIAltZW1zZXQoY3B1
X2dkdDY0LCAwLCBzaXplb2YoY3B1X2dkdDY0KSk7Cj4gLQljcHVfZ2R0NjRbR0RUX0RFU0NfQ09E
RV0gPSBHRFRfREVTQ19DT0RFX1ZBTDsKPiAtCWNwdV9nZHQ2NFtHRFRfREVTQ19EQVRBXSA9IEdE
VF9ERVNDX0RBVEFfVkFMOwo+ICsJY3B1X2dkdDY0W0dEVF9ERVNDX0NPREVdLnJhdyA9IEdEVF9E
RVNDX0NPREVfVkFMOwo+ICsJY3B1X2dkdDY0W0dEVF9ERVNDX0RBVEFdLnJhdyA9IEdEVF9ERVND
X0RBVEFfVkFMOwo+ICAgCj4gICAJZ2R0cHRyLmxpbWl0ID0gc2l6ZW9mKGNwdV9nZHQ2NCkgLSAx
Owo+IC0JZ2R0cHRyLmJhc2UgPSAodWludDY0X3QpJmNwdV9nZHQ2NDsKPiArCWdkdHB0ci5iYXNl
ID0gKF9fdTY0KSAmY3B1X2dkdDY0Owo+ICAgCV9fYXNtX18gX192b2xhdGlsZV9fKCJsZ2R0ICgl
MCkiIDo6InIiKCZnZHRwdHIpKTsKPiAgIAkvKgo+ICAgCSAqIFRPRE86IFRlY2huaWNhbGx5IHdl
IHNob3VsZCByZWxvYWQgYWxsIHNlZ21lbnQgcmVnaXN0ZXJzIGhlcmUsIGluCj4gZGlmZiAtLWdp
dCBhL3BsYXQveGVuL3g4Ni90cmFwcy5jIGIvcGxhdC94ZW4veDg2L3RyYXBzLmMKPiBpbmRleCAz
MThhYmJhLi43MDU3ODM5IDEwMDY0NAo+IC0tLSBhL3BsYXQveGVuL3g4Ni90cmFwcy5jCj4gKysr
IGIvcGxhdC94ZW4veDg2L3RyYXBzLmMKPiBAQCAtMzE3LDE4ICszMTcsMTcgQEAgaHdfdHNzIHRz
cyBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDE2KSkpID0gewo+ICAgCj4gICBzdGF0aWMgdm9pZCBz
ZXR1cF9nYXRlKHVuc2lnbmVkIGludCBlbnRyeSwgdm9pZCAqYWRkciwgdW5zaWduZWQgaW50IGRw
bCkKPiAgIHsKPiAtCWlkdFtlbnRyeV0ub2Zmc2V0MCA9ICh1bnNpZ25lZCBsb25nKWFkZHIgJiAw
eGZmZmY7Cj4gKwlpZHRbZW50cnldLm9mZnNldF9sbyA9ICh1bnNpZ25lZCBsb25nKSBhZGRyICYg
MHhmZmZmOwo+ICAgCWlkdFtlbnRyeV0uc2VsZWN0b3IgPSBfX0tFUk5fQ1M7Cj4gLQlpZHRbZW50
cnldLl9yMCA9IDA7Cj4gLQlpZHRbZW50cnldLnR5cGUgPSAxNDsKPiArCWlkdFtlbnRyeV0ucmVz
ZXJ2ZWQgPSAwOwo+ICsJaWR0W2VudHJ5XS50eXBlID0gMTQ7IC8qID09IDBiMTExMCAqLwo+ICAg
CWlkdFtlbnRyeV0ucyA9IDA7Cj4gICAJaWR0W2VudHJ5XS5kcGwgPSBkcGw7Cj4gICAJaWR0W2Vu
dHJ5XS5wID0gMTsKPiAtCWlkdFtlbnRyeV0ub2Zmc2V0MSA9ICgodW5zaWduZWQgbG9uZylhZGRy
ID4+IDE2KSAmIDB4ZmZmZjsKPiArCWlkdFtlbnRyeV0ub2Zmc2V0X2hpID0gKHVuc2lnbmVkIGxv
bmcpIGFkZHIgPj4gMTY7Cj4gICAjaWZkZWYgX19YODZfNjRfXwo+ICAgCWlkdFtlbnRyeV0uaXN0
ID0gMDsKPiAtCWlkdFtlbnRyeV0ub2Zmc2V0MiA9ICgodW5zaWduZWQgbG9uZylhZGRyID4+IDMy
KSAmIDB4ZmZmZmZmZmZ1Owo+IC0JaWR0W2VudHJ5XS5fcjEgPSAwOwo+ICsJaWR0W2VudHJ5XS5y
ZXNlcnZlZDEgPSAwOwo+ICAgI2VuZGlmCj4gICB9Cj4gICAKPiAKCl9fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QK
TWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVj
dC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:49:38 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:49:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdX0-0001A9-A5; Thu, 26 Apr 2018 09:49:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdWz-0001A0-SQ
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:49:37 +0000
X-Inumbo-ID: 75dedc68-4937-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 75dedc68-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:51:59 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 6E9C01040F0;
 Thu, 26 Apr 2018 11:49:35 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 8_jFR7-aIaz2; Thu, 26 Apr 2018 11:49:35 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 48DB01041C2;
 Thu, 26 Apr 2018 11:49:31 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:29 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-4-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <9bd21d6b-4c9d-6853-af01-89030e33ff17@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:29 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-4-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 03/17] plat/common: x86 hardware
 context definition
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1MywgQ29zdGluIEx1cHUgd3JvdGU6Cj4gX19yZWdzIHN0cnVjdHVyZSBy
ZXByZXNlbnRzIHRoZSBoYXJkd2FyZSBjb250ZXh0IHVzZWQgaW4gdHJhcCBoYW5kbGluZy4KPiBJ
biBhc3NlbWJseSwgc3RydWN0dXJlIGZpZWxkcyBhcmUgYWNjZXNzZWQgYnkgdXNpbmcgdGhlIGNv
cnJlc3BvbmRpbmcgb2Zmc2V0Cj4gbWFjcm8gZGVmaW5pdGlvbi4KPiAKPiBTaWduZWQtb2ZmLWJ5
OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgo+IC0tLQo+ICAgaW5jbHVkZS91
ay9hcmNoL3g4Nl82NC9sY3B1LmggICAgfCAyOCAtLS0tLS0tLS0tLS0KPiAgIHBsYXQvY29tbW9u
L2luY2x1ZGUveDg2L3JlZ3MuaCAgIHwgOTQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKwo+ICAgcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L3RyYXBzLmggfCAgMiArLQo+
ICAgcGxhdC94ZW4veDg2L2VudHJ5NjQuUyAgICAgICAgICAgfCA5NCArKysrKysrKysrKysrKysr
KystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gICA0IGZpbGVzIGNoYW5nZWQsIDEzOCBpbnNlcnRp
b25zKCspLCA4MCBkZWxldGlvbnMoLSkKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1v
bi9pbmNsdWRlL3g4Ni9yZWdzLmgKPiAKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91ay9hcmNoL3g4
Nl82NC9sY3B1LmggYi9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaAo+IGluZGV4IGNkNjY3
ZTUuLjY0MGZmNjggMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS91ay9hcmNoL3g4Nl82NC9sY3B1LmgK
PiArKysgYi9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaAo+IEBAIC0zMiwzNCArMzIsNiBA
QAo+ICAgI2Vycm9yIERvIG5vdCBpbmNsdWRlIHRoaXMgaGVhZGVyIGRpcmVjdGx5Cj4gICAjZW5k
aWYKPiAgIAo+IC1zdHJ1Y3QgX19yZWdzIHsKPiAtCXVuc2lnbmVkIGxvbmcgcjE1Owo+IC0JdW5z
aWduZWQgbG9uZyByMTQ7Cj4gLQl1bnNpZ25lZCBsb25nIHIxMzsKPiAtCXVuc2lnbmVkIGxvbmcg
cjEyOwo+IC0JdW5zaWduZWQgbG9uZyByYnA7Cj4gLQl1bnNpZ25lZCBsb25nIHJieDsKPiAtLyog
YXJndW1lbnRzOiBub24gaW50ZXJydXB0cy9ub24gdHJhY2luZyBzeXNjYWxscyBvbmx5IHNhdmUg
dXB0byBoZXJlKi8KPiAtCXVuc2lnbmVkIGxvbmcgcjExOwo+IC0JdW5zaWduZWQgbG9uZyByMTA7
Cj4gLQl1bnNpZ25lZCBsb25nIHI5Owo+IC0JdW5zaWduZWQgbG9uZyByODsKPiAtCXVuc2lnbmVk
IGxvbmcgcmF4Owo+IC0JdW5zaWduZWQgbG9uZyByY3g7Cj4gLQl1bnNpZ25lZCBsb25nIHJkeDsK
PiAtCXVuc2lnbmVkIGxvbmcgcnNpOwo+IC0JdW5zaWduZWQgbG9uZyByZGk7Cj4gLQl1bnNpZ25l
ZCBsb25nIG9yaWdfcmF4Owo+IC0vKiBlbmQgb2YgYXJndW1lbnRzICovCj4gLS8qIGNwdSBleGNl
cHRpb24gZnJhbWUgb3IgdW5kZWZpbmVkICovCj4gLQl1bnNpZ25lZCBsb25nIHJpcDsKPiAtCXVu
c2lnbmVkIGxvbmcgY3M7Cj4gLQl1bnNpZ25lZCBsb25nIGVmbGFnczsKPiAtCXVuc2lnbmVkIGxv
bmcgcnNwOwo+IC0JdW5zaWduZWQgbG9uZyBzczsKPiAtLyogdG9wIG9mIHN0YWNrIHBhZ2UgKi8K
PiAtfTsKPiAtCj4gICAjaWZuZGVmIG1iCj4gICAjZGVmaW5lIG1iKCkgICAgX19hc21fXyBfX3Zv
bGF0aWxlX18gKCJtZmVuY2UiIDogOiA6ICJtZW1vcnkiKQo+ICAgI2VuZGlmCj4gZGlmZiAtLWdp
dCBhL3BsYXQvY29tbW9uL2luY2x1ZGUveDg2L3JlZ3MuaCBiL3BsYXQvY29tbW9uL2luY2x1ZGUv
eDg2L3JlZ3MuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uYTZhODQ3
ZQo+IC0tLSAvZGV2L251bGwKPiArKysgYi9wbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9yZWdzLmgK
PiBAQCAtMCwwICsxLDk0IEBACj4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1D
bGF1c2UgKi8KPiArLyoKPiArICogQ29weXJpZ2h0IChjKSAyMDA1LCBHcnplZ29yeiBNaWxvcywg
SW50ZWwgUmVzZWFyY2ggQ2FtYnJpZGdlCj4gKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1
cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uCj4gKyAqCj4gKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+ICsgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKPiArICogYXJlIG1ldDoKPiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+ICsg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4g
KyAqCj4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORAo+ICsgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiArICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UKPiArICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1Ig
Q09OVFJJQlVUT1JTIEJFIExJQUJMRQo+ICsgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAo+ICsgKiBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUwo+ICsgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiArICogSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKPiAr
ICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWQo+ICsgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCj4gKyAqIFNVQ0ggREFNQUdF
Lgo+ICsgKi8KPiArI2lmbmRlZiBfX1VLQVJDSF9SRUdTX0hfXwo+ICsjZGVmaW5lIF9fVUtBUkNI
X1JFR1NfSF9fCj4gKwo+ICsjaWZuZGVmIF9fQVNTRU1CTFlfXwo+ICtzdHJ1Y3QgX19yZWdzIHsK
PiArCXVuc2lnbmVkIGxvbmcgcGFkOyAvKiBmb3IgMTYgYnl0ZXMgYWxpZ25tZW50ICovCj4gKwl1
bnNpZ25lZCBsb25nIHIxNTsKPiArCXVuc2lnbmVkIGxvbmcgcjE0Owo+ICsJdW5zaWduZWQgbG9u
ZyByMTM7Cj4gKwl1bnNpZ25lZCBsb25nIHIxMjsKPiArCXVuc2lnbmVkIGxvbmcgcmJwOwo+ICsJ
dW5zaWduZWQgbG9uZyByYng7Cj4gKy8qIGFyZ3VtZW50czogbm9uIGludGVycnVwdHMvbm9uIHRy
YWNpbmcgc3lzY2FsbHMgb25seSBzYXZlIHVwdG8gaGVyZSovCj4gKwl1bnNpZ25lZCBsb25nIHIx
MTsKPiArCXVuc2lnbmVkIGxvbmcgcjEwOwo+ICsJdW5zaWduZWQgbG9uZyByOTsKPiArCXVuc2ln
bmVkIGxvbmcgcjg7Cj4gKwl1bnNpZ25lZCBsb25nIHJheDsKPiArCXVuc2lnbmVkIGxvbmcgcmN4
Owo+ICsJdW5zaWduZWQgbG9uZyByZHg7Cj4gKwl1bnNpZ25lZCBsb25nIHJzaTsKPiArCXVuc2ln
bmVkIGxvbmcgcmRpOwo+ICsJdW5zaWduZWQgbG9uZyBvcmlnX3JheDsKPiArLyogZW5kIG9mIGFy
Z3VtZW50cyAqLwo+ICsvKiBjcHUgZXhjZXB0aW9uIGZyYW1lIG9yIHVuZGVmaW5lZCAqLwo+ICsJ
dW5zaWduZWQgbG9uZyByaXA7Cj4gKwl1bnNpZ25lZCBsb25nIGNzOwo+ICsJdW5zaWduZWQgbG9u
ZyBlZmxhZ3M7Cj4gKwl1bnNpZ25lZCBsb25nIHJzcDsKPiArCXVuc2lnbmVkIGxvbmcgc3M7Cj4g
Ky8qIHRvcCBvZiBzdGFjayBwYWdlICovCj4gK307Cj4gKyNlbmRpZgo+ICsKPiArI2RlZmluZSBP
RkZTRVRPRl9SRUdTX1BBRCAgICAgICAwCj4gKyNkZWZpbmUgT0ZGU0VUT0ZfUkVHU19SMTUgICAg
ICAgOAo+ICsjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUjE0ICAgICAgIDE2Cj4gKyNkZWZpbmUgT0ZG
U0VUT0ZfUkVHU19SMTMgICAgICAgMjQKPiArI2RlZmluZSBPRkZTRVRPRl9SRUdTX1IxMiAgICAg
ICAzMgo+ICsjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUkJQICAgICAgIDQwCj4gKyNkZWZpbmUgT0ZG
U0VUT0ZfUkVHU19SQlggICAgICAgNDgKPiArI2RlZmluZSBPRkZTRVRPRl9SRUdTX1IxMSAgICAg
ICA1Ngo+ICsjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUjEwICAgICAgIDY0Cj4gKyNkZWZpbmUgT0ZG
U0VUT0ZfUkVHU19SOSAgICAgICAgNzIKPiArI2RlZmluZSBPRkZTRVRPRl9SRUdTX1I4ICAgICAg
ICA4MAo+ICsjZGVmaW5lIE9GRlNFVE9GX1JFR1NfUkFYICAgICAgIDg4Cj4gKyNkZWZpbmUgT0ZG
U0VUT0ZfUkVHU19SQ1ggICAgICAgOTYKPiArI2RlZmluZSBPRkZTRVRPRl9SRUdTX1JEWCAgICAg
ICAxMDQKPiArI2RlZmluZSBPRkZTRVRPRl9SRUdTX1JTSSAgICAgICAxMTIKPiArI2RlZmluZSBP
RkZTRVRPRl9SRUdTX1JESSAgICAgICAxMjAKPiArI2RlZmluZSBPRkZTRVRPRl9SRUdTX09SSUdf
UkFYICAxMjgKPiArI2RlZmluZSBPRkZTRVRPRl9SRUdTX1JJUCAgICAgICAxMzYKPiArI2RlZmlu
ZSBPRkZTRVRPRl9SRUdTX0NTICAgICAgICAxNDQKPiArI2RlZmluZSBPRkZTRVRPRl9SRUdTX0VG
TEFHUyAgICAxNTIKPiArI2RlZmluZSBPRkZTRVRPRl9SRUdTX1JTUCAgICAgICAxNjAKPiArI2Rl
ZmluZSBPRkZTRVRPRl9SRUdTX1NTICAgICAgICAxNjgKPiArCj4gKyNkZWZpbmUgUkVHU19QQURf
U0laRSAgICAgICAgICAgT0ZGU0VUT0ZfUkVHU19SMTUKPiArI2RlZmluZSBTSVpFT0ZfUkVHUyAg
ICAgICAgICAgICAxNzYKPiArCj4gKyNpZiBTSVpFT0ZfUkVHUyAmIDB4Zgo+ICsjZXJyb3IgIl9f
cmVncyBzdHJ1Y3R1cmUgc2l6ZSBzaG91bGQgYmUgbXVsdGlwbGUgb2YgMTYuIgo+ICsjZW5kaWYK
PiArCj4gKy8qIFRoaXMgc2hvdWxkIGJlIGJldHRlciBkZWZpbmVkIGluIHRoZSB0aHJlYWQgaGVh
ZGVyICovCj4gKyNkZWZpbmUgT0ZGU0VUT0ZfVUtUSFJFQURfUkVHUyAgMTYKPiArCj4gKyNlbmRp
ZiAvKiBfX1VLQVJDSF9SRUdTX0hfXyAqLwo+IGRpZmYgLS1naXQgYS9wbGF0L3hlbi9pbmNsdWRl
L3hlbi14ODYvdHJhcHMuaCBiL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni90cmFwcy5oCj4gaW5k
ZXggYzVjZmI4NS4uNDk4YWY3NiAxMDA2NDQKPiAtLS0gYS9wbGF0L3hlbi9pbmNsdWRlL3hlbi14
ODYvdHJhcHMuaAo+ICsrKyBiL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni90cmFwcy5oCj4gQEAg
LTM1LDcgKzM1LDcgQEAKPiAgICNpZm5kZWYgX1RSQVBTX0hfCj4gICAjZGVmaW5lIF9UUkFQU19I
Xwo+ICAgCj4gLSNpbmNsdWRlIDx1ay9hcmNoL2xjcHUuaD4KPiArI2luY2x1ZGUgPHg4Ni9yZWdz
Lmg+Cj4gICAKPiAgICNkZWZpbmUgcHRfcmVncyBfX3JlZ3MKPiAgIAo+IGRpZmYgLS1naXQgYS9w
bGF0L3hlbi94ODYvZW50cnk2NC5TIGIvcGxhdC94ZW4veDg2L2VudHJ5NjQuUwo+IGluZGV4IDMx
NGJiNzAuLjgxMDljY2IgMTAwNjQ0Cj4gLS0tIGEvcGxhdC94ZW4veDg2L2VudHJ5NjQuUwo+ICsr
KyBiL3BsYXQveGVuL3g4Ni9lbnRyeTY0LlMKPiBAQCAtMjUsNiArMjUsNyBAQAo+ICAgCj4gICAj
aW5jbHVkZSA8dWsvYXJjaC90eXBlcy5oPgo+ICAgI2luY2x1ZGUgPHVrL2FyY2gvbGltaXRzLmg+
Cj4gKyNpbmNsdWRlIDx4ODYvcmVncy5oPgo+ICAgI2luY2x1ZGUgPHVrL2NvbmZpZy5oPgo+ICAg
I2luY2x1ZGUgPHhlbi94ZW4uaD4KPiAgICNpbmNsdWRlIDx4ZW4vZWxmbm90ZS5oPgo+IEBAIC05
MSwxNSArOTIsNiBAQCBoeXBlcmNhbGxfcGFnZToKPiAgIE5NSV9NQVNLID0gMHg4MDAwMDAwMAo+
ICAgS0VSTkVMX0NTX01BU0sgPSAweGZjCj4gICAKPiAtI2RlZmluZSBSQVggICAgICAgODAKPiAt
I2RlZmluZSBSREkgICAgICAxMTIKPiAtI2RlZmluZSBPUklHX1JBWCAxMjAgICAgICAgLyogKyBl
cnJvcl9jb2RlICovCj4gLSNkZWZpbmUgUklQICAgICAgMTI4Cj4gLSNkZWZpbmUgQ1MgICAgICAg
MTM2Cj4gLSNkZWZpbmUgUkZMQUdTICAgMTQ0Cj4gLSNkZWZpbmUgUlNQICAgICAgMTUyCj4gLQo+
IC0KPiAgIC8qIE1hY3JvcyAqLwo+ICAgLm1hY3JvIFNBVkVfUEFSQVZJUlQKPiAgICNpZmRlZiBD
T05GSUdfUEFSQVZJUlQKPiBAQCAtMTI0LDQ0ICsxMTYsNDQgQEAgS0VSTkVMX0NTX01BU0sgPSAw
eGZjCj4gICAuZW5kbQo+ICAgCj4gICAubWFjcm8gUkVTVE9SRV9BTEwKPiAtCW1vdnEgKCVyc3Ap
LCVyMTUKPiAtCW1vdnEgMSo4KCVyc3ApLCVyMTQKPiAtCW1vdnEgMio4KCVyc3ApLCVyMTMKPiAt
CW1vdnEgMyo4KCVyc3ApLCVyMTIKPiAtCW1vdnEgNCo4KCVyc3ApLCVyYnAKPiAtCW1vdnEgNSo4
KCVyc3ApLCVyYngKPiAtCW1vdnEgNio4KCVyc3ApLCVyMTEKPiAtCW1vdnEgNyo4KCVyc3ApLCVy
MTAKPiAtCW1vdnEgOCo4KCVyc3ApLCVyOQo+IC0JbW92cSA5KjgoJXJzcCksJXI4Cj4gLQltb3Zx
IDEwKjgoJXJzcCksJXJheAo+IC0JbW92cSAxMSo4KCVyc3ApLCVyY3gKPiAtCW1vdnEgMTIqOCgl
cnNwKSwlcmR4Cj4gLQltb3ZxIDEzKjgoJXJzcCksJXJzaQo+IC0JbW92cSAxNCo4KCVyc3ApLCVy
ZGkKPiAtCWFkZHEgJDE1KjgrOCwlcnNwCj4gKwltb3ZxIE9GRlNFVE9GX1JFR1NfUjE1KCVyc3Ap
LCAlcjE1Cj4gKwltb3ZxIE9GRlNFVE9GX1JFR1NfUjE0KCVyc3ApLCAlcjE0Cj4gKwltb3ZxIE9G
RlNFVE9GX1JFR1NfUjEzKCVyc3ApLCAlcjEzCj4gKwltb3ZxIE9GRlNFVE9GX1JFR1NfUjEyKCVy
c3ApLCAlcjEyCj4gKwltb3ZxIE9GRlNFVE9GX1JFR1NfUkJQKCVyc3ApLCAlcmJwCj4gKwltb3Zx
IE9GRlNFVE9GX1JFR1NfUkJYKCVyc3ApLCAlcmJ4Cj4gKwltb3ZxIE9GRlNFVE9GX1JFR1NfUjEx
KCVyc3ApLCAlcjExCj4gKwltb3ZxIE9GRlNFVE9GX1JFR1NfUjEwKCVyc3ApLCAlcjEwCj4gKwlt
b3ZxIE9GRlNFVE9GX1JFR1NfUjkoJXJzcCksICAlcjkKPiArCW1vdnEgT0ZGU0VUT0ZfUkVHU19S
OCglcnNwKSwgICVyOAo+ICsJbW92cSBPRkZTRVRPRl9SRUdTX1JBWCglcnNwKSwgJXJheAo+ICsJ
bW92cSBPRkZTRVRPRl9SRUdTX1JDWCglcnNwKSwgJXJjeAo+ICsJbW92cSBPRkZTRVRPRl9SRUdT
X1JEWCglcnNwKSwgJXJkeAo+ICsJbW92cSBPRkZTRVRPRl9SRUdTX1JTSSglcnNwKSwgJXJzaQo+
ICsJbW92cSBPRkZTRVRPRl9SRUdTX1JESSglcnNwKSwgJXJkaQo+ICsJYWRkcSAkT0ZGU0VUT0Zf
UkVHU19SSVAsJXJzcAo+ICAgLmVuZG0KPiAgIAo+ICAgLm1hY3JvIFNBVkVfQUxMCj4gICAJLyog
cmRpIHNsb3QgY29udGFpbnMgcmF4LCBvbGRyYXggY29udGFpbnMgZXJyb3IgY29kZSAqLwo+ICAg
CWNsZAo+IC0Jc3VicSAkMTQqOCwlcnNwCj4gLQltb3ZxICVyc2ksMTMqOCglcnNwKQo+IC0JbW92
cSAxNCo4KCVyc3ApLCVyc2kJLyogbG9hZCByYXggZnJvbSByZGkgc2xvdCAqLwo+IC0JbW92cSAl
cmR4LDEyKjgoJXJzcCkKPiAtCW1vdnEgJXJjeCwxMSo4KCVyc3ApCj4gLQltb3ZxICVyc2ksMTAq
OCglcnNwKQkvKiBzdG9yZSByYXggKi8KPiAtCW1vdnEgJXI4LCA5KjgoJXJzcCkKPiAtCW1vdnEg
JXI5LCA4KjgoJXJzcCkKPiAtCW1vdnEgJXIxMCw3KjgoJXJzcCkKPiAtCW1vdnEgJXIxMSw2Kjgo
JXJzcCkKPiAtCW1vdnEgJXJieCw1KjgoJXJzcCkKPiAtCW1vdnEgJXJicCw0KjgoJXJzcCkKPiAt
CW1vdnEgJXIxMiwzKjgoJXJzcCkKPiAtCW1vdnEgJXIxMywyKjgoJXJzcCkKPiAtCW1vdnEgJXIx
NCwxKjgoJXJzcCkKPiAtCW1vdnEgJXIxNSwoJXJzcCkKPiAtCW1vdnEgJXJkaSwgUkRJKCVyc3Ap
CS8qIHB1dCByZGkgaW50byB0aGUgc2xvdCAqLwo+ICsJc3VicSAkT0ZGU0VUT0ZfUkVHU19SREks
ICVyc3AKPiArCW1vdnEgJXJzaSwgT0ZGU0VUT0ZfUkVHU19SU0koJXJzcCkKPiArCW1vdnEgT0ZG
U0VUT0ZfUkVHU19SREkoJXJzcCksICVyc2kgICAgLyogbG9hZCByYXggZnJvbSByZGkgc2xvdCAq
Lwo+ICsJbW92cSAlcmR4LCBPRkZTRVRPRl9SRUdTX1JEWCglcnNwKQo+ICsJbW92cSAlcmN4LCBP
RkZTRVRPRl9SRUdTX1JDWCglcnNwKQo+ICsJbW92cSAlcnNpLCBPRkZTRVRPRl9SRUdTX1JBWCgl
cnNwKSAgICAvKiBzdG9yZSByYXggKi8KPiArCW1vdnEgJXI4LCAgT0ZGU0VUT0ZfUkVHU19SOCgl
cnNwKQo+ICsJbW92cSAlcjksICBPRkZTRVRPRl9SRUdTX1I5KCVyc3ApCj4gKwltb3ZxICVyMTAs
IE9GRlNFVE9GX1JFR1NfUjEwKCVyc3ApCj4gKwltb3ZxICVyMTEsIE9GRlNFVE9GX1JFR1NfUjEx
KCVyc3ApCj4gKwltb3ZxICVyYngsIE9GRlNFVE9GX1JFR1NfUkJYKCVyc3ApCj4gKwltb3ZxICVy
YnAsIE9GRlNFVE9GX1JFR1NfUkJQKCVyc3ApCj4gKwltb3ZxICVyMTIsIE9GRlNFVE9GX1JFR1Nf
UjEyKCVyc3ApCj4gKwltb3ZxICVyMTMsIE9GRlNFVE9GX1JFR1NfUjEzKCVyc3ApCj4gKwltb3Zx
ICVyMTQsIE9GRlNFVE9GX1JFR1NfUjE0KCVyc3ApCj4gKwltb3ZxICVyMTUsIE9GRlNFVE9GX1JF
R1NfUjE1KCVyc3ApCj4gKwltb3ZxICVyZGksIE9GRlNFVE9GX1JFR1NfUkRJKCVyc3ApICAgIC8q
IHB1dCByZGkgaW50byB0aGUgc2xvdCAqLwo+ICAgLmVuZG0KPiAgIAo+ICAgLm1hY3JvIEhZUEVS
VklTT1JfSVJFVAo+IEBAIC0xOTIsOCArMTg0LDggQEAgZXJyb3JfZW50cnk6Cj4gICAJU0FWRV9B
TEwKPiAgIAo+ICAgCW1vdnEgJXJzcCwlcmRpCj4gLQltb3ZxIE9SSUdfUkFYKCVyc3ApLCVyc2kJ
IyBnZXQgZXJyb3IgY29kZQo+IC0JbW92cSAkLTEsT1JJR19SQVgoJXJzcCkKPiArCW1vdnEgT0ZG
U0VUT0ZfUkVHU19PUklHX1JBWCglcnNwKSwlcnNpCSMgZ2V0IGVycm9yIGNvZGUKPiArCW1vdnEg
JC0xLE9GRlNFVE9GX1JFR1NfT1JJR19SQVgoJXJzcCkKPiAgIAljYWxsIColcmF4Cj4gICAJam1w
IGVycm9yX2V4aXQKPiAgIAo+IEBAIC0yMDksNyArMjAxLDcgQEAgaHlwZXJ2aXNvcl9jYWxsYmFj
azI6Cj4gICAJbW92cSAlcmRpLCAlcnNwCj4gICAKPiAgIAkvKiBjaGVjayBhZ2FpbnN0IGV2ZW50
IHJlLWVudHJhbnQgKi8KPiAtCW1vdnEgUklQKCVyc3ApLCVyYXgKPiArCW1vdnEgT0ZGU0VUT0Zf
UkVHU19SSVAoJXJzcCksJXJheAo+ICAgCWNtcHEgJHNjcml0LCVyYXgKPiAgIAlqYiAxMWYKPiAg
IAljbXBxICRlY3JpdCwlcmF4Cj4gQEAgLTIyNCw3ICsyMTYsNyBAQCBoeXBlcnZpc29yX2NhbGxi
YWNrMjoKPiAgIAlkZWNsICVnczowCj4gICAKPiAgIGVycm9yX2V4aXQ6Cj4gLQltb3ZsIFJGTEFH
UyglcnNwKSwgJWVheAo+ICsJbW92bCBPRkZTRVRPRl9SRUdTX0VGTEFHUyglcnNwKSwgJWVheAo+
ICAgCXNociAkOSwgJWVheAkJCSMgRUFYWzBdID09IElSRVRfUkZMQUdTLklGCj4gICAJWEVOX0dF
VF9WQ1BVX0lORk8oJXJzaSkKPiAgIAlhbmRiIGV2dGNobl91cGNhbGxfbWFzayglcnNpKSwlYWwK
PiBAQCAtMjcwLDExICsyNjIsMTEgQEAgaHlwZXJ2aXNvcl9wcm9sb2d1ZToKPiAgIAo+ICAgY3Jp
dGljYWxfcmVnaW9uX2ZpeHVwOgo+ICAgCSMgU2V0IHVwIHNvdXJjZSBhbmQgZGVzdGluYXRpb24g
cmVnaW9uIHBvaW50ZXJzCj4gLQlsZWFxIFJJUCglcnNwKSwlcnNpICAgIyBlc2kgcG9pbnRzIGF0
IGVuZCBvZiBzcmMgcmVnaW9uCj4gKwlsZWFxIE9GRlNFVE9GX1JFR1NfUklQKCVyc3ApLCVyc2kg
ICAjIGVzaSBwb2ludHMgYXQgZW5kIG9mIHNyYyByZWdpb24KPiAgIAkjIEFjcXVpcmUgaW50ZXJy
dXB0ZWQgcnNwIHdoaWNoIHdhcyBzYXZlZC1vbi1zdGFjay4gVGhpcyBwb2ludHMgdG8KPiAgIAkj
IHRoZSBlbmQgb2YgZHN0IHJlZ2lvbi4gTm90ZSB0aGF0IGl0IGlzIG5vdCBuZWNlc3NhcmlseSBj
dXJyZW50IHJzcAo+ICAgCSMgcGx1cyAweGIwLCBiZWNhdXNlIHRoZSBzZWNvbmQgaW50ZXJydXB0
IG1pZ2h0IGFsaWduIHRoZSBzdGFjayBmcmFtZS4KPiAtCW1vdnEgUlNQKCVyc3ApLCVyZGkgICAj
IGVkaSBwb2ludHMgYXQgZW5kIG9mIGRzdCByZWdpb24KPiArCW1vdnEgT0ZGU0VUT0ZfUkVHU19S
U1AoJXJzcCksJXJkaSAgICMgZWRpIHBvaW50cyBhdCBlbmQgb2YgZHN0IHJlZ2lvbgo+ICAgCj4g
ICAJY21wcSAkcmVzdG9yZV9lbmQsJXJheAo+ICAgCWphZSAgMTNmCj4gQEAgLTI4MiwxMSArMjc0
LDExIEBAIGNyaXRpY2FsX3JlZ2lvbl9maXh1cDoKPiAgIAkjIElmIGludGVycnVwdGVkIHJpcCBp
cyBiZWZvcmUgcmVzdG9yZV9lbmQKPiAgIAkjIHRoZW4gcmF4IGhhc24ndCBiZWVuIHJlc3RvcmVk
IHlldAo+ICAgCW1vdnEgKCVyZGkpLCVyYXgKPiAtCW1vdnEgJXJheCwgUkFYKCVyc3ApICAjIHNh
dmUgcmF4Cj4gKwltb3ZxICVyYXgsIE9GRlNFVE9GX1JFR1NfUkFYKCVyc3ApICAjIHNhdmUgcmF4
Cj4gICAJYWRkcSAkUlNQX09GRlNFVCwlcmRpCj4gICAKPiAgIAkjIFNldCB1cCB0aGUgY29weQo+
IC0xMzoJbW92cSAkUklQLCVyY3gKPiArMTM6CW1vdnEgJE9GRlNFVE9GX1JFR1NfUklQLCVyY3gK
PiAgIAlzaHIgICQzLCVyY3ggICAgICAgICAgIyBjb252ZXJ0IGJ5dGVzIGludG8gY291bnQgb2Yg
NjQtYml0IGVudGl0aWVzCj4gICAxNToJc3VicSAkOCwlcnNpICAgICAgICAgICMgcHJlLWRlY3Jl
bWVudGluZyBjb3B5IGxvb3AKPiAgIAlzdWJxICQ4LCVyZGkKPiBAQCAtMjk0LDcgKzI4Niw3IEBA
IGNyaXRpY2FsX3JlZ2lvbl9maXh1cDoKPiAgIAltb3ZxICVyYXgsKCVyZGkpCj4gICAJbG9vcCAx
NWIKPiAgIDE2Ogltb3ZxICVyZGksJXJzcCAgICAgICAgIyBmaW5hbCByZGkgaXMgdG9wIG9mIG1l
cmdlZCBzdGFjawo+IC0JYW5kYiAkS0VSTkVMX0NTX01BU0ssQ1MoJXJzcCkgICAgICAjIENTIG1p
Z2h0IGhhdmUgY2hhbmdlZAo+ICsJYW5kYiAkS0VSTkVMX0NTX01BU0ssT0ZGU0VUT0ZfUkVHU19D
UyglcnNwKSAgICAgICMgQ1MgbWlnaHQgaGF2ZSBjaGFuZ2VkCj4gICAJam1wICAxMWIKPiAgIAo+
ICAgI2Vsc2UKPiAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2pl
Y3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5p
b3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:49:45 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:49:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdX7-0001BE-Cu; Thu, 26 Apr 2018 09:49:45 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdX6-0001B6-EI
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:49:44 +0000
X-Inumbo-ID: f86be4d3-4936-11e8-9728-bc764e045a96
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id f86be4d3-4936-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 11:48:29 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 709D61041C2;
 Thu, 26 Apr 2018 11:49:39 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id nEQyrw1Frm2O; Thu, 26 Apr 2018 11:49:39 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 4F6DD1040F0;
 Thu, 26 Apr 2018 11:49:35 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:32 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-5-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <2661a384-31d1-474b-791b-9e119ddc7d74@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:31 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-5-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 04/17] plat/common: Common x86
 CPU interrupt flag handling
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1MywgQ29zdGluIEx1cHUgd3JvdGU6Cj4gSW50cm9kdWNpbmcgbmV3IGhl
YWRlciBmb3IgbmF0aXZlIGludGVycnVwdCBmbGFnIGZ1bmN0aW9ucy4KPiAKPiBTaWduZWQtb2Zm
LWJ5OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgo+IC0tLQo+ICAgcGxhdC9j
b21tb24vaW5jbHVkZS94ODYvaXJxLmggIHwgODcgKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrCj4gICBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvaXJxLmggfCA1NSAr
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAgMiBmaWxlcyBjaGFuZ2VkLCA5MSBpbnNlcnRp
b25zKCspLCA1MSBkZWxldGlvbnMoLSkKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1v
bi9pbmNsdWRlL3g4Ni9pcnEuaAo+IAo+IGRpZmYgLS1naXQgYS9wbGF0L2NvbW1vbi9pbmNsdWRl
L3g4Ni9pcnEuaCBiL3BsYXQvY29tbW9uL2luY2x1ZGUveDg2L2lycS5oCj4gbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi5hMGYwMWY4Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBi
L3BsYXQvY29tbW9uL2luY2x1ZGUveDg2L2lycS5oCj4gQEAgLTAsMCArMSw4NyBAQAo+ICsvKiBT
UERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlICovCj4gKy8qCj4gKyAqIFBvcnQg
ZnJvbSBNaW5pLU9TOiBpbmNsdWRlL3g4Ni9vcy5oCj4gKyAqLwo+ICsvKgo+ICsgKiBDb3B5cmln
aHQgKGMpIDIwMDkgQ2l0cml4IFN5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KPiAr
ICoKPiArICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Cj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+ICsgKiBhcmUgbWV0Ogo+ICsgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKPiArICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECj4gKyAqIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQo+ICsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+ICsgKiBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCj4gKyAqIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMCj4gKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCj4gKyAqIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQo+
ICsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVAo+ICsgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCj4gKyAqIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YKPiArICogU1VDSCBEQU1BR0UuCj4gKyAqLwo+ICsjaWZuZGVmIF9fUExBVF9DTU5f
WDg2X0lSUV9IX18KPiArI2RlZmluZSBfX1BMQVRfQ01OX1g4Nl9JUlFfSF9fCj4gKwo+ICsjaW5j
bHVkZSA8eDg2L2NwdV9kZWZzLmg+Cj4gKwo+ICsjaWZkZWYgX19YNjRfMzJfXwo+ICsjZGVmaW5l
IF9fU1ogICJsIgo+ICsjZGVmaW5lIF9fUkVHICJlIgo+ICsjZWxzZQo+ICsjZGVmaW5lIF9fU1og
ICJxIgo+ICsjZGVmaW5lIF9fUkVHICJyIgo+ICsjZW5kaWYKPiArCj4gKyNkZWZpbmUgX19jbGko
KSBcCj4gKyh7IFwKPiArCWFzbSB2b2xhdGlsZSgiY2xpIiA6IDogOiAibWVtb3J5Iik7IFwKPiAr
fSkKPiArCj4gKyNkZWZpbmUgX19zdGkoKSBcCj4gKyh7IFwKPiArCWFzbSB2b2xhdGlsZSgic3Rp
IiA6IDogOiAibWVtb3J5Iik7IFwKPiArfSkKPiArCj4gKyNkZWZpbmUgX19zYXZlX2ZsYWdzKHgp
IFwKPiArCWRvIHsgXAo+ICsJCXVuc2lnbmVkIGxvbmcgX19mOyBcCj4gKwkJYXNtIHZvbGF0aWxl
KCJwdXNoZiIgX19TWiAiIDsgcG9wIiBfX1NaICIgJTAiIDogIj1nIihfX2YpKTsgXAo+ICsJCXgg
PSAoX19mICYgWDg2X0VGTEFHU19JRikgPyAxIDogMDsgXAo+ICsJfSB3aGlsZSAoMCkKPiArCj4g
KyNkZWZpbmUgX19yZXN0b3JlX2ZsYWdzKHgpIFwKPiArCWRvIHsgXAo+ICsJCWlmICh4KSBcCj4g
KwkJCV9fc3RpKCk7IFwKPiArCQllbHNlIFwKPiArCQkJX19jbGkoKTsgXAo+ICsJfSB3aGlsZSAo
MCkKPiArCj4gKyNkZWZpbmUgX19zYXZlX2FuZF9jbGkoeCkgXAo+ICsJZG8geyBcCj4gKwkJX19z
YXZlX2ZsYWdzKHgpOyBcCj4gKwkJX19jbGkoKTsgXAo+ICsJfSB3aGlsZSAoMCkKPiArCj4gK3N0
YXRpYyBpbmxpbmUgaW50IGlycXNfZGlzYWJsZWQodm9pZCkKPiArewo+ICsJaW50IGZsYWc7Cj4g
Kwo+ICsJX19zYXZlX2ZsYWdzKGZsYWcpOwo+ICsJcmV0dXJuICFmbGFnOwo+ICt9Cj4gKwo+ICsj
ZGVmaW5lIGxvY2FsX2lycV9zYXZlKHgpICAgICAgICBfX3NhdmVfYW5kX2NsaSh4KQo+ICsjZGVm
aW5lIGxvY2FsX2lycV9yZXN0b3JlKHgpICAgICBfX3Jlc3RvcmVfZmxhZ3MoeCkKPiArI2RlZmlu
ZSBsb2NhbF9zYXZlX2ZsYWdzKHgpICAgICAgX19zYXZlX2ZsYWdzKHgpCj4gKyNkZWZpbmUgbG9j
YWxfaXJxX2Rpc2FibGUoKSAgICAgIF9fY2xpKCkKPiArI2RlZmluZSBsb2NhbF9pcnFfZW5hYmxl
KCkgICAgICAgX19zdGkoKQo+ICsKPiArI2VuZGlmIC8qIF9fUExBVF9DTU5fWDg2X0lSUV9IX18g
Ki8KPiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L2lycS5oIGIvcGxhdC94
ZW4vaW5jbHVkZS94ZW4teDg2L2lycS5oCj4gaW5kZXggNGEwOTVmZC4uYmFjMzYyMCAxMDA2NDQK
PiAtLS0gYS9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvaXJxLmgKPiArKysgYi9wbGF0L3hlbi9p
bmNsdWRlL3hlbi14ODYvaXJxLmgKPiBAQCAtMTAwLDYxICsxMDAsMTQgQEAKPiAgICNkZWZpbmUg
aXJxc19kaXNhYmxlZCgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCj4gICAJSFlQRVJWSVNPUl9zaGFyZWRfaW5mby0+dmNwdV9pbmZvW3Nt
cF9wcm9jZXNzb3JfaWQoKV0uZXZ0Y2huX3VwY2FsbF9tYXNrCj4gICAKPiAtI2Vsc2UKPiAtCj4g
LSNpZmRlZiBfX1g2NF8zMl9fCj4gLSNkZWZpbmUgX19TWiAibCIKPiAtI2RlZmluZSBfX1JFRyAi
ZSIKPiAtI2Vsc2UKPiAtI2RlZmluZSBfX1NaICJxIgo+IC0jZGVmaW5lIF9fUkVHICJyIgo+IC0j
ZW5kaWYKPiAtCj4gLSNkZWZpbmUgX19jbGkoKSBcCj4gLSh7IFwKPiAtCWFzbSB2b2xhdGlsZSgi
Y2xpIiA6IDogOiAibWVtb3J5Iik7IFwKPiAtfSkKPiAtCj4gLSNkZWZpbmUgX19zdGkoKSBcCj4g
LSh7IFwKPiAtCWFzbSB2b2xhdGlsZSgic3RpIiA6IDogOiAibWVtb3J5Iik7IFwKPiAtfSkKPiAt
Cj4gLSNkZWZpbmUgX19zYXZlX2ZsYWdzKHgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4gLQlkbyB7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiAtCQl1bnNp
Z25lZCBsb25nIF9fZjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCj4gLQkJYXNtIHZvbGF0aWxlKCJwdXNoZiIgX19TWiAiIDsgcG9wIiBfX1NaICIgJTAiIDog
Ij1nIihfX2YpKTsgICAgXAo+IC0JCXggPSAoX19mICYgWDg2X0VGTEFHU19JRikgPyAxIDogMDsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiAtCX0gd2hpbGUgKDApCj4gLQo+IC0jZGVm
aW5lIF9fcmVzdG9yZV9mbGFncyh4KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAo+IC0JZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4gLQkJaWYgKHgpICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+IC0J
CQlfX3N0aSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAo+IC0JCWVsc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKPiAtCQkJX19jbGkoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKPiAtCX0gd2hpbGUgKDApCj4gLQo+IC0jZGVmaW5lIF9fc2F2
ZV9hbmRfY2xpKHgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAo+IC0JZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4gLQkJX19zYXZlX2ZsYWdzKHgpOyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+IC0JCV9fY2xpKCk7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
PiAtCX0gd2hpbGUgKDApCj4gLQo+IC1zdGF0aWMgaW5saW5lIGludCBpcnFzX2Rpc2FibGVkKHZv
aWQpCj4gLXsKPiAtCWludCBmbGFnOwo+IC0KPiAtCV9fc2F2ZV9mbGFncyhmbGFnKTsKPiAtCXJl
dHVybiAhZmxhZzsKPiAtfQo+IC0KPiAtI2VuZGlmCj4gLQo+ICAgI2RlZmluZSBsb2NhbF9pcnFf
c2F2ZSh4KSAgICAgICAgX19zYXZlX2FuZF9jbGkoeCkKPiAgICNkZWZpbmUgbG9jYWxfaXJxX3Jl
c3RvcmUoeCkgICAgIF9fcmVzdG9yZV9mbGFncyh4KQo+ICAgI2RlZmluZSBsb2NhbF9zYXZlX2Zs
YWdzKHgpICAgICAgX19zYXZlX2ZsYWdzKHgpCj4gICAjZGVmaW5lIGxvY2FsX2lycV9kaXNhYmxl
KCkgICAgICBfX2NsaSgpCj4gICAjZGVmaW5lIGxvY2FsX2lycV9lbmFibGUoKSAgICAgICBfX3N0
aSgpCj4gICAKPiArI2Vsc2UKPiArI2luY2x1ZGUgPHg4Ni9pcnEuaD4KPiArI2VuZGlmCj4gKwo+
ICAgI2VuZGlmIC8qIFBMQVRfWEVOX0lOQ0xVREVfWEVOX1g4Nl9JUlFfSF8gKi8KPiAKCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBt
YWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlz
dHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:49:50 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:49:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdXC-0001CG-F4; Thu, 26 Apr 2018 09:49:50 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXB-0001C2-6d
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:49:49 +0000
X-Inumbo-ID: fb5d679c-4936-11e8-9728-bc764e045a96
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id fb5d679c-4936-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 11:48:33 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 7B03C1042C1;
 Thu, 26 Apr 2018 11:49:43 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id bsh8z1lzgshg; Thu, 26 Apr 2018 11:49:43 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 56D4E1040F0;
 Thu, 26 Apr 2018 11:49:39 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:33 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-6-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <b1d32bd9-a359-a43f-1556-289001ae97a3@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:33 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-6-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 05/17] plat/common: Common x86
 CPU functions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1MywgQ29zdGluIEx1cHUgd3JvdGU6Cj4gQ1BVIGZ1bmN0aW9ucyBjYW4g
YmUgY2xhc3NpZmllZCBpbnRvIDMgY2F0ZWdvcmllczogKDEpIG5hdGl2ZSBmdW5jdGlvbnMgdGhh
dAo+IGFyZSB1c2VkIG9uIGJvdGggcGxhdGZvcm1zLCAoMikgbmF0aXZlIGZ1bmN0aW9ucyB1c2Vk
IG9ubHkgYnkgSFZNIChLVk0pIGFuZCAoMykKPiBwYXJhdmlydHVhbGl6ZWQgZnVuY3Rpb25zIGN1
cnJlbnRseSB1c2VkIGJ5IFhlbiBQViBWTS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBDb3N0aW4gTHVw
dSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgo+IC0tLQo+ICAgcGxhdC9jb21tb24vaW5jbHVkZS94
ODYvY3B1LmggIHwgMTA5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
Cj4gICBwbGF0L2NvbW1vbi94ODYvY3B1X25hdGl2ZS5jICAgfCAgNDkgKysrKysrKysrKysrKysr
KysrCj4gICBwbGF0L2t2bS9zaHV0ZG93bi5jICAgICAgICAgICAgfCAgIDIgKy0KPiAgIHBsYXQv
a3ZtL3g4Ni9jb25zb2xlLmMgICAgICAgICB8ICAgMiArLQo+ICAgcGxhdC94ZW4vTWFrZWZpbGUu
dWsgICAgICAgICAgIHwgICAzICsrCj4gICBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvY3B1Lmgg
fCAxMDMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgIHBsYXQveGVu
L2luY2x1ZGUveGVuLXg4Ni9vcy5oICB8ICAgMSAtCj4gICBwbGF0L3hlbi94ODYvYXJjaF9ldmVu
dHMuYyAgICAgfCAgIDIgKy0KPiAgIHBsYXQveGVuL3g4Ni9hcmNoX3RpbWUuYyAgICAgICB8ICAg
NCArLQo+ICAgcGxhdC94ZW4veDg2L2NwdV9wdi5jICAgICAgICAgIHwgIDQ3ICsrKysrKysrKysr
KysrKysrKwo+ICAgMTAgZmlsZXMgY2hhbmdlZCwgMjEzIGluc2VydGlvbnMoKyksIDEwOSBkZWxl
dGlvbnMoLSkKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9j
cHUuaAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL3g4Ni9jcHVfbmF0aXZlLmMK
PiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvY3B1LmgKPiAg
IGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi94ODYvY3B1X3B2LmMKPiAKPiBkaWZmIC0tZ2l0
IGEvcGxhdC9jb21tb24vaW5jbHVkZS94ODYvY3B1LmggYi9wbGF0L2NvbW1vbi9pbmNsdWRlL3g4
Ni9jcHUuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uY2U5NmMxYwo+
IC0tLSAvZGV2L251bGwKPiArKysgYi9wbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9jcHUuaAo+IEBA
IC0wLDAgKzEsMTA5IEBACj4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1
c2UgKi8KPiArLyoKPiArICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+ICsgKiBhcmUgbWV0
Ogo+ICsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKPiArICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECj4g
KyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQo+ICsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+ICsgKiBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
Cj4gKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCj4gKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCj4gKyAqIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKQo+ICsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAo+ICsgKiBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCj4g
KyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YKPiArICogU1VDSCBEQU1BR0UuCj4gKyAqLwo+ICsvKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqCj4gKyAqIGNwdS5oCj4gKyAqCj4gKyAqIENQVSByZWxhdGVkIG1hY3JvcyBh
bmQgZGVmaW5pdGlvbnMgY29waWVkIGZyb20gbWluaS1vcy9vcy5oCj4gKyAqLwo+ICsKPiArI2lu
Y2x1ZGUgPHVrL2FyY2gvdHlwZXMuaD4KPiArCj4gKwo+ICt2b2lkIGhhbHQodm9pZCk7Cj4gKwo+
ICtzdGF0aWMgaW5saW5lIHZvaWQgY3B1aWQoX191MzIgbGVhZiwgX191MzIgKmVheCwgX191MzIg
KmVieCwKPiArCQlfX3UzMiAqZWN4LCBfX3UzMiAqZWR4KQo+ICt7Cj4gKwlhc20gdm9sYXRpbGUo
ImNwdWlkIgo+ICsJCSAgICAgOiAiPWEiKCplYXgpLCAiPWIiKCplYngpLCAiPWMiKCplY3gpLCAi
PWQiKCplZHgpCj4gKwkJICAgICA6ICIwIihsZWFmKSk7Cj4gK30KPiArCj4gK3Vuc2lnbmVkIGxv
bmcgcmVhZF9jcjIodm9pZCk7Cj4gKwo+ICtzdGF0aWMgaW5saW5lIHZvaWQgd3JpdGVfY3IzKHVu
c2lnbmVkIGxvbmcgY3IzKQo+ICt7Cj4gKwlhc20gdm9sYXRpbGUoIm1vdiAlMCwgJSVjcjMiIDog
OiAiciIoY3IzKSA6ICJtZW1vcnkiKTsKPiArfQo+ICsKPiArc3RhdGljIGlubGluZSB2b2lkIGlu
dmxwZyh1bnNpZ25lZCBsb25nIHZhKQo+ICt7Cj4gKwlhc20gdm9sYXRpbGUoImludmxwZyAlMCIg
OiA6ICJtIigqKGNvbnN0IGNoYXIgKikodmEpKSA6ICJtZW1vcnkiKTsKPiArfQo+ICsKPiArCj4g
K3N0YXRpYyBpbmxpbmUgdm9pZCB3cm1zcih1bnNpZ25lZCBpbnQgbXNyLCBfX3UzMiBsbywgX191
MzIgaGkpCj4gK3sKPiArCWFzbSB2b2xhdGlsZSgid3Jtc3IiCj4gKwkJCSAgICAgOiAvKiBubyBv
dXRwdXRzICovCj4gKwkJCSAgICAgOiAiYyIobXNyKSwgImEiKGxvKSwgImQiKGhpKSk7Cj4gK30K
PiArCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCB3cm1zcmwodW5zaWduZWQgaW50IG1zciwgX191NjQg
dmFsKQo+ICt7Cj4gKwl3cm1zcihtc3IsIChfX3UzMikgKHZhbCAmIDB4ZmZmZmZmZmZVTEwpLCAo
X191MzIpICh2YWwgPj4gMzIpKTsKPiArfQo+ICsKPiArCj4gK3N0YXRpYyBpbmxpbmUgX191NjQg
cmR0c2Modm9pZCkKPiArewo+ICsJX191NjQgbCwgaDsKPiArCj4gKwlfX2FzbV9fIF9fdm9sYXRp
bGVfXygicmR0c2MiIDogIj1hIihsKSwgIj1kIihoKSk7Cj4gKwlyZXR1cm4gKGggPDwgMzIpIHwg
bDsKPiArfQo+ICsKPiArCj4gKy8qIGFjY2Vzc2luZyBkZXZpY2VzIHZpYSBwb3J0IHNwYWNlICov
Cj4gK3N0YXRpYyBpbmxpbmUgX191OCBpbmIoX191MTYgcG9ydCkKPiArewo+ICsJX191OCB2Owo+
ICsKPiArCV9fYXNtX18gX192b2xhdGlsZV9fKCJpbmIgJTEsJTAiIDogIj1hIih2KSA6ICJkTiIo
cG9ydCkpOwo+ICsJcmV0dXJuIHY7Cj4gK30KPiArCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBvdXRi
KF9fdTE2IHBvcnQsIF9fdTggdikKPiArewo+ICsJX19hc21fXyBfX3ZvbGF0aWxlX18oIm91dGIg
JTAsJTEiIDogOiAiYSIodiksICJkTiIocG9ydCkpOwo+ICt9Cj4gKwo+ICtzdGF0aWMgaW5saW5l
IHZvaWQgb3V0dyhfX3UxNiBwb3J0LCBfX3UxNiB2KQo+ICt7Cj4gKwlfX2FzbV9fIF9fdm9sYXRp
bGVfXygib3V0dyAlMCwlMSIgOiA6ICJhIih2KSwgImROIihwb3J0KSk7Cj4gK30KPiArCj4gK3N0
YXRpYyBpbmxpbmUgX191NjQgbXVsNjRfMzIoX191NjQgYSwgX191MzIgYikKPiArewo+ICsJX191
NjQgcHJvZDsKPiArCj4gKwlfX2FzbV9fICgKPiArCQkibXVsICUlcmR4IDsgIgo+ICsJCSJzaHJk
ICQzMiwgJSVyZHgsICUlcmF4Igo+ICsJCTogIj1hIiAocHJvZCkKPiArCQk6ICIwIiAoYSksICJk
IiAoKF9fdTY0KSBiKQo+ICsJKTsKPiArCj4gKwlyZXR1cm4gcHJvZDsKPiArfQo+IGRpZmYgLS1n
aXQgYS9wbGF0L2NvbW1vbi94ODYvY3B1X25hdGl2ZS5jIGIvcGxhdC9jb21tb24veDg2L2NwdV9u
YXRpdmUuYwo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uMDMzMGEyMAo+
IC0tLSAvZGV2L251bGwKPiArKysgYi9wbGF0L2NvbW1vbi94ODYvY3B1X25hdGl2ZS5jCj4gQEAg
LTAsMCArMSw0OSBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNl
ICovCj4gKy8qCj4gKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIu
cm8+Cj4gKyAqCj4gKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMg
Q29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gKyAqCj4gKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+
ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKPiArICogYXJlIG1ldDoKPiArICoKPiArICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgo+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCj4gKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xk
ZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHMKPiArICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KPiArICogICAgdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KPiAr
ICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCj4gKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiArICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UKPiArICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQo+ICsgKiBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
Cj4gKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GCj4gKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwo+ICsgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgo+ICsgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQo+ICsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQo+ICsgKiBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KPiArICoKPiArICogVEhJUyBIRUFERVIgTUFZIE5P
VCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KPiArICovCj4gKwo+ICsjaW5j
bHVkZSA8eDg2L2NwdS5oPgo+ICsKPiArdm9pZCBoYWx0KHZvaWQpCj4gK3sKPiArCV9fYXNtX18g
X192b2xhdGlsZV9fICgiaGx0IiA6IDogOiAibWVtb3J5Iik7Cj4gK30KPiArCj4gK3Vuc2lnbmVk
IGxvbmcgcmVhZF9jcjIodm9pZCkKPiArewo+ICsJdW5zaWduZWQgbG9uZyBjcjI7Cj4gKwo+ICsJ
X19hc21fXyBfX3ZvbGF0aWxlX18oIm1vdiAlJWNyMiwgJTAiIDogIj1yIihjcjIpKTsKPiArCj4g
KwlyZXR1cm4gY3IyOwo+ICt9Cj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL3NodXRkb3duLmMgYi9w
bGF0L2t2bS9zaHV0ZG93bi5jCj4gaW5kZXggNmI1YmFmMi4uNjczZDA2NSAxMDA2NDQKPiAtLS0g
YS9wbGF0L2t2bS9zaHV0ZG93bi5jCj4gKysrIGIvcGxhdC9rdm0vc2h1dGRvd24uYwo+IEBAIC0y
Miw3ICsyMiw3IEBACj4gICAgKi8KPiAgIAo+ICAgI2luY2x1ZGUgPGVycm5vLmg+Cj4gLSNpbmNs
dWRlIDxrdm0teDg2L2NwdV94ODZfNjQuaD4KPiArI2luY2x1ZGUgPHg4Ni9jcHUuaD4KPiAgICNp
bmNsdWRlIDx1ay9wcmludC5oPgo+ICAgI2luY2x1ZGUgPHVrL3BsYXQvYm9vdHN0cmFwLmg+Cj4g
ICAKPiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0veDg2L2NvbnNvbGUuYyBiL3BsYXQva3ZtL3g4Ni9j
b25zb2xlLmMKPiBpbmRleCAyOGUxMjQ2Li5jZmNjM2NkIDEwMDY0NAo+IC0tLSBhL3BsYXQva3Zt
L3g4Ni9jb25zb2xlLmMKPiArKysgYi9wbGF0L2t2bS94ODYvY29uc29sZS5jCj4gQEAgLTI1LDgg
KzI1LDggQEAKPiAgICAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9G
IFRISVMgU09GVFdBUkUuCj4gICAgKi8KPiAgIAo+ICsjaW5jbHVkZSA8eDg2L2NwdS5oPgo+ICAg
I2luY2x1ZGUgPGt2bS9jb25zb2xlLmg+Cj4gLSNpbmNsdWRlIDxrdm0teDg2L2NwdV94ODZfNjQu
aD4KPiAgICNpbmNsdWRlIDx1ay9wbGF0L2NvbnNvbGUuaD4KPiAgICNpbmNsdWRlIDx1ay9lc3Nl
bnRpYWxzLmg+Cj4gICAjaW5jbHVkZSA8dWsvcHJpbnQuaD4KPiBkaWZmIC0tZ2l0IGEvcGxhdC94
ZW4vTWFrZWZpbGUudWsgYi9wbGF0L3hlbi9NYWtlZmlsZS51awo+IGluZGV4IGMxYjJlY2IuLjIy
MGM4ZDkgMTAwNjQ0Cj4gLS0tIGEvcGxhdC94ZW4vTWFrZWZpbGUudWsKPiArKysgYi9wbGF0L3hl
bi9NYWtlZmlsZS51awo+IEBAIC00MSw2ICs0MSw5IEBAIExJQlhFTlBMQVRfU1JDUy0kKExJQlVL
U0NIRUQpICArPSAkKExJQlhFTlBMQVRfQkFTRSkveDg2L2FyY2hfdGhyZWFkLmMKPiAgIGlmbmVx
ICgkKFhFTl9IVk1MSVRFKSx5KQo+ICAgTElCWEVOUExBVF9BU0ZMQUdTLXkgICAgICAgICAgICs9
IC1EQ09ORklHX1BBUkFWSVJUCj4gICBMSUJYRU5QTEFUX0NGTEFHUy15ICAgICAgICAgICAgKz0g
LURDT05GSUdfUEFSQVZJUlQKPiArTElCWEVOUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQo
TElCWEVOUExBVF9CQVNFKS94ODYvY3B1X3B2LmMKPiArZWxzZQo+ICtMSUJYRU5QTEFUX1NSQ1Mt
eSAgICAgICAgICAgICAgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNFKS94ODYvY3B1X25hdGl2ZS5j
Cj4gICBlbmRpZgo+ICAgZW5kaWYKPiAgIAo+IGRpZmYgLS1naXQgYS9wbGF0L3hlbi9pbmNsdWRl
L3hlbi14ODYvY3B1LmggYi9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvY3B1LmgKPiBkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCBjZjkyNDFiLi4wMDAwMDAwCj4gLS0tIGEvcGxhdC94
ZW4vaW5jbHVkZS94ZW4teDg2L2NwdS5oCj4gKysrIC9kZXYvbnVsbAo+IEBAIC0xLDEwMyArMCww
IEBACj4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UgKi8KPiAtLyoK
PiAtICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0Cj4gLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+IC0gKiBhcmUgbWV0Ogo+IC0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAo+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCj4gLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gLSAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
PiAtICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KPiAtICoKPiAtICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECj4gLSAqIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQo+IC0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+IC0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5P
IEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCj4gLSAqIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMCj4gLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCj4gLSAqIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQo+IC0g
KiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVAo+IC0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCj4gLSAqIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YKPiAtICogU1VDSCBEQU1BR0UuCj4gLSAqLwo+IC0vKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Cj4gLSAqIGNwdS5oCj4gLSAqCj4gLSAqIENQVSByZWxhdGVkIG1hY3JvcyBhbmQgZGVmaW5pdGlv
bnMgY29waWVkIGZyb20gb3MuaAo+IC0gKi8KPiAtCj4gLSNpZm5kZWYgUExBVF9YRU5fSU5DTFVE
RV9YRU5fWDg2X0NQVV9IXwo+IC0jZGVmaW5lIFBMQVRfWEVOX0lOQ0xVREVfWEVOX1g4Nl9DUFVf
SF8KPiAtCj4gLSNpZmRlZiBDT05GSUdfUEFSQVZJUlQKPiAtI2luY2x1ZGUgPGNvbW1vbi9oeXBl
cnZpc29yLmg+Cj4gLSNlbmRpZgo+IC0KPiAtc3RhdGljIGlubGluZSB2b2lkIHdyaXRlX2NyMyh1
bnNpZ25lZCBsb25nIGNyMykKPiAtewo+IC0JYXNtIHZvbGF0aWxlKCJtb3YgJTAsICUlY3IzIiA6
IDogInIiKGNyMykgOiAibWVtb3J5Iik7Cj4gLX0KPiAtCj4gLXN0YXRpYyBpbmxpbmUgdm9pZCBp
bnZscGcodW5zaWduZWQgbG9uZyB2YSkKPiAtewo+IC0JYXNtIHZvbGF0aWxlKCJpbnZscGcgJTAi
IDogOiAibSIoKihjb25zdCBjaGFyICopKHZhKSkgOiAibWVtb3J5Iik7Cj4gLX0KPiAtCj4gLS8q
KioqKioqKioqKioqKioqKioqKioqKioqKiBpMzg2ICoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKiovCj4gLSNpZmRlZiBfX1g2NF8zMl9fCj4gLQo+IC0jZGVmaW5lIHJkdHNjbGwodmFsKSAo
YXNtIHZvbGF0aWxlKCJyZHRzYyIgOiAiPUEiKHZhbCkpKQo+IC0KPiAtLyoqKioqKioqKioqKioq
KioqKioqKioqKioqIHg4Nl84NCAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwo+IC0j
ZWxpZiBkZWZpbmVkIF9fWDg2XzY0X18KPiAtCj4gLSNkZWZpbmUgcmR0c2NsbCh2YWwpICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+IC0JZG8geyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKPiAtCQl1bnNpZ25lZCBpbnQgX19hLCBfX2Q7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCj4gLQkJYXNtIHZvbGF0aWxlKCJyZHRzYyIgOiAiPWEiKF9fYSks
ICI9ZCIoX19kKSk7ICAgICAgICAgICAgICAgICAgXAo+IC0JCSh2YWwpID0gKCh1bnNpZ25lZCBs
b25nKV9fYSkgfCAoKCh1bnNpZ25lZCBsb25nKV9fZCkgPDwgMzIpOyAgIFwKPiAtCX0gd2hpbGUg
KDApCj4gLQo+IC0jZWxzZSAvKiBpZmRlZiBfX3g4Nl82NF9fICovCj4gLSNlcnJvciAiVW5zdXBw
b3J0ZWQgYXJjaGl0ZWN0dXJlIgo+IC0jZW5kaWYKPiAtCj4gLS8qKioqKioqKioqKioqKioqKioq
KiogY29tbW9uIGkzODYgYW5kIHg4Nl82NCAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8K
PiAtCj4gLSNkZWZpbmUgd3Jtc3IobXNyLCB2YWwxLCB2YWwyKSBcCj4gLSh7IFwKPiAtCWFzbSB2
b2xhdGlsZSgid3Jtc3IiIFwKPiAtCQkJICAgICA6IC8qIG5vIG91dHB1dHMgKi8gXAo+IC0JCQkg
ICAgIDogImMiKG1zciksICJhIih2YWwxKSwgImQiKHZhbDIpKTsgXAo+IC19KQo+IC0KPiAtc3Rh
dGljIGlubGluZSB2b2lkIHdybXNybCh1bnNpZ25lZCBpbnQgbXNyLCB1aW50NjRfdCB2YWwpCj4g
LXsKPiAtCXdybXNyKG1zciwgKHVpbnQzMl90KSh2YWwgJiAweGZmZmZmZmZmVUxMKSwgKHVpbnQz
Ml90KSh2YWwgPj4gMzIpKTsKPiAtfQo+IC0KPiAtc3RhdGljIGlubGluZSB2b2lkIGNwdWlkKHVp
bnQzMl90IGxlYWYsIHVpbnQzMl90ICplYXgsIHVpbnQzMl90ICplYngsCj4gLQkJCSB1aW50MzJf
dCAqZWN4LCB1aW50MzJfdCAqZWR4KQo+IC17Cj4gLQlhc20gdm9sYXRpbGUoImNwdWlkIgo+IC0J
CSAgICAgOiAiPWEiKCplYXgpLCAiPWIiKCplYngpLCAiPWMiKCplY3gpLCAiPWQiKCplZHgpCj4g
LQkJICAgICA6ICIwIihsZWFmKSk7Cj4gLX0KPiAtCj4gLSNpZmRlZiBDT05GSUdfUEFSQVZJUlQK
PiAtc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHJlYWRfY3IyKHZvaWQpCj4gLXsKPiAtCXJl
dHVybiBIWVBFUlZJU09SX3NoYXJlZF9pbmZvLT52Y3B1X2luZm9bc21wX3Byb2Nlc3Nvcl9pZCgp
XS5hcmNoLmNyMjsKPiAtfQo+IC0jZWxzZQo+IC1zdGF0aWMgaW5saW5lIHVuc2lnbmVkIGxvbmcg
cmVhZF9jcjIodm9pZCkKPiAtewo+IC0JdW5zaWduZWQgbG9uZyBjcjI7Cj4gLQo+IC0JYXNtIHZv
bGF0aWxlKCJtb3YgJSVjcjIsJTBcblx0IiA6ICI9ciIoY3IyKSk7Cj4gLQlyZXR1cm4gY3IyOwo+
IC19Cj4gLSNlbmRpZgo+IC0KPiAtI2VuZGlmIC8qIFBMQVRfWEVOX0lOQ0xVREVfWEVOX1g4Nl9D
UFVfSF8gKi8KPiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L29zLmggYi9w
bGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvb3MuaAo+IGluZGV4IDNkZjc3M2MuLjZmYTRmYTAgMTAw
NjQ0Cj4gLS0tIGEvcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L29zLmgKPiArKysgYi9wbGF0L3hl
bi9pbmNsdWRlL3hlbi14ODYvb3MuaAo+IEBAIC0xMTEsNyArMTExLDYgQEAgdHlwZWRlZiBzdHJ1
Y3Qgewo+ICAgCXZvbGF0aWxlIGludCBjb3VudGVyOwo+ICAgfSBhdG9taWNfdDsKPiAgIAo+IC0j
aW5jbHVkZSA8eGVuLXg4Ni9jcHUuaD4KPiAgIAo+ICAgLyoqKioqKioqKioqKioqKioqKioqKiBj
b21tb24gaTM4NiBhbmQgeDg2XzY0ICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwo+ICAg
I2RlZmluZSB4ZW5fbWIoKSBtYigpCj4gZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni9hcmNoX2V2
ZW50cy5jIGIvcGxhdC94ZW4veDg2L2FyY2hfZXZlbnRzLmMKPiBpbmRleCBkY2EzYjljLi41Yjg4
MDY1IDEwMDY0NAo+IC0tLSBhL3BsYXQveGVuL3g4Ni9hcmNoX2V2ZW50cy5jCj4gKysrIGIvcGxh
dC94ZW4veDg2L2FyY2hfZXZlbnRzLmMKPiBAQCAtMjgsOCArMjgsOCBAQAo+ICAgICogUG9ydGVk
IGZyb20gTWluaS1PUwo+ICAgICovCj4gICAjaW5jbHVkZSA8c3RkaW50Lmg+Cj4gKyNpbmNsdWRl
IDx4ODYvY3B1Lmg+Cj4gICAjaW5jbHVkZSA8dWsvcGxhdC9jb25maWcuaD4KPiAtI2luY2x1ZGUg
PHhlbi14ODYvY3B1Lmg+Cj4gICAKPiAgICNpZiBkZWZpbmVkKF9feDg2XzY0X18pCj4gICBzdGF0
aWMgY2hhciBpcnFzdGFja1syICogU1RBQ0tfU0laRV07Cj4gZGlmZiAtLWdpdCBhL3BsYXQveGVu
L3g4Ni9hcmNoX3RpbWUuYyBiL3BsYXQveGVuL3g4Ni9hcmNoX3RpbWUuYwo+IGluZGV4IDk5MWMw
MzAuLjllOWYxYmYgMTAwNjQ0Cj4gLS0tIGEvcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jCj4gKysr
IGIvcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jCj4gQEAgLTM1LDEwICszNSwxMCBAQAo+ICAgCj4g
ICAjaW5jbHVkZSA8c3RkaW50Lmg+Cj4gICAjaW5jbHVkZSA8c3lzL3RpbWUuaD4KPiArI2luY2x1
ZGUgPHg4Ni9jcHUuaD4KPiAgICNpbmNsdWRlIDx1ay9wbGF0L3RpbWUuaD4KPiAgICNpbmNsdWRl
IDxjb21tb24vaHlwZXJ2aXNvci5oPgo+ICAgI2luY2x1ZGUgPGNvbW1vbi9ldmVudHMuaD4KPiAt
I2luY2x1ZGUgPHhlbi14ODYvY3B1Lmg+Cj4gICAjaW5jbHVkZSA8eGVuLXg4Ni9pcnEuaD4KPiAg
ICNpbmNsdWRlIDx1ay9hc3NlcnQuaD4KPiAgIAo+IEBAIC0xMzQsNyArMTM0LDcgQEAgc3RhdGlj
IHVuc2lnbmVkIGxvbmcgZ2V0X25zZWNfb2Zmc2V0KHZvaWQpCj4gICB7Cj4gICAJdWludDY0X3Qg
bm93LCBkZWx0YTsKPiAgIAo+IC0JcmR0c2NsbChub3cpOwo+ICsJbm93ID0gcmR0c2MoKTsKPiAg
IAlkZWx0YSA9IG5vdyAtIHNoYWRvdy50c2NfdGltZXN0YW1wOwo+ICAgCj4gICAJcmV0dXJuIHNj
YWxlX2RlbHRhKGRlbHRhLCBzaGFkb3cudHNjX3RvX25zZWNfbXVsLCBzaGFkb3cudHNjX3NoaWZ0
KTsKPiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4veDg2L2NwdV9wdi5jIGIvcGxhdC94ZW4veDg2L2Nw
dV9wdi5jCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi40NzFjYzM3Cj4g
LS0tIC9kZXYvbnVsbAo+ICsrKyBiL3BsYXQveGVuL3g4Ni9jcHVfcHYuYwo+IEBAIC0wLDAgKzEs
NDcgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwo+ICsv
Kgo+ICsgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgo+ICsg
Kgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0
aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+ICsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKPiArICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4gKyAqCj4gKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
PiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+ICsgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
Lgo+ICsgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0
aGUgbmFtZXMgb2YgaXRzCj4gKyAqICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCj4gKyAqICAgIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCj4gKyAqCj4gKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMgIkFTIElTIgo+ICsgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4gKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUKPiArICogTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgo+ICsgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgo+ICsgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKPiArICogSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KPiAr
ICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKPiArICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKPiArICogUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCj4gKyAqCj4gKyAqIFRISVMgSEVBREVSIE1BWSBOT1QgQkUgRVhU
UkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCj4gKyAqLwo+ICsKPiArI2luY2x1ZGUgPHg4
Ni9jcHUuaD4KPiArI2luY2x1ZGUgPGNvbW1vbi9oeXBlcnZpc29yLmg+Cj4gKwo+ICsKPiArdm9p
ZCBoYWx0KHZvaWQpCj4gK3sKPiArCUhZUEVSVklTT1Jfc2NoZWRfb3AoU0NIRURPUF9ibG9jaywg
MCk7Cj4gK30KPiArCj4gK3Vuc2lnbmVkIGxvbmcgcmVhZF9jcjIodm9pZCkKPiArewo+ICsJcmV0
dXJuIEhZUEVSVklTT1Jfc2hhcmVkX2luZm8tPnZjcHVfaW5mb1tzbXBfcHJvY2Vzc29yX2lkKCld
LmFyY2guY3IyOwo+ICt9Cj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54
ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGlu
Zm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:49:51 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:49:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdXD-0001Cb-Gy; Thu, 26 Apr 2018 09:49:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXC-0001C9-5p
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:49:50 +0000
X-Inumbo-ID: 7d12f262-4937-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 7d12f262-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:52:11 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 8D8E6104330;
 Thu, 26 Apr 2018 11:49:47 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id lk9zQP6kyIkj; Thu, 26 Apr 2018 11:49:47 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 5E61D1041C2;
 Thu, 26 Apr 2018 11:49:43 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:35 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-7-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <fdb441f7-aead-b20f-e6fe-ea0e10e88bf7@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:34 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-7-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 06/17] plat/common: Common x86
 tracing functions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1MywgQ29zdGluIEx1cHUgd3JvdGU6Cj4gQ3VycmVudCBjaGFuZ2VzIGlu
dHJvZHVjZSBjb21tb24geDg2IHRyYWNpbmcgZnVuY3Rpb25zIChzdGFjayB0cmFjZSwgcmVnaXN0
ZXIKPiBkdW1wcyBhbmQgbWVtb3J5IGR1bXBzKSB3aGljaCBhcmUgbW92ZWQgZnJvbSBwbGF0L3hl
bi4gVGhlIGludGVyZmFjZSBzaG91bGQgYmUKPiB0aGUgc2FtZSBmb3IgYWxsIHBsYXRmb3JtcyBh
bmQgYXJjaGl0ZWN0dXJlcy4KPiAKPiBUaGVzZSBjaGFuZ2VzIHNob3VsZCBiZSByZXZpc2l0ZWQg
d2hlbiBsaWJ1a2RlYnVnIHdpbGwgYmUgaW1wbGVtZW50aW5nIHRoZQo+IGhpZ2gtbGV2ZWwgbG9n
aWMgb2YgcmVnaXN0ZXIgZHVtcHMgYW5kIHN0YWNrIHdhbGtzLgo+IAo+IFNpZ25lZC1vZmYtYnk6
IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Cj4gLS0tCj4gICBwbGF0L2NvbW1v
bi9pbmNsdWRlL3RyYWNlLmggfCA0OCArKysrKysrKysrKysrKysrKysrKysrKwo+ICAgcGxhdC9j
b21tb24veDg2L3RyYWNlLmMgICAgIHwgOTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrCj4gICBwbGF0L3hlbi9NYWtlZmlsZS51ayAgICAgICAgfCAgMSArCj4g
ICBwbGF0L3hlbi94ODYvdHJhcHMuYyAgICAgICAgfCA3MCArLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tCj4gICA0IGZpbGVzIGNoYW5nZWQsIDE0MyBpbnNlcnRpb25zKCspLCA2OCBk
ZWxldGlvbnMoLSkKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9pbmNsdWRlL3Ry
YWNlLmgKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi94ODYvdHJhY2UuYwo+IAo+
IGRpZmYgLS1naXQgYS9wbGF0L2NvbW1vbi9pbmNsdWRlL3RyYWNlLmggYi9wbGF0L2NvbW1vbi9p
bmNsdWRlL3RyYWNlLmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLmE0
MjMxNTMKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9jb21tb24vaW5jbHVkZS90cmFjZS5o
Cj4gQEAgLTAsMCArMSw0OCBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMt
Q2xhdXNlICovCj4gKy8qCj4gKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBj
cy5wdWIucm8+Cj4gKyAqCj4gKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQu
LCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gKyAqCj4gKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAo+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKPiArICogYXJlIG1ldDoKPiArICoKPiArICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
PiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgo+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCj4gKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdo
dCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHMKPiArICogICAgY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KPiArICog
ICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv
bi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCj4gKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
PiArICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKPiArICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQo+ICsgKiBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCj4gKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCj4gKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwo+ICsgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgo+ICsgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQo+ICsgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQo+
ICsgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KPiArICoKPiArICogVEhJUyBIRUFERVIg
TUFZIE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KPiArICovCj4gKyNp
Zm5kZWYgX19QTEFUX0NNTl9UUkFDRV9IX18KPiArI2RlZmluZSBfX1BMQVRfQ01OX1RSQUNFX0hf
Xwo+ICsKPiArI2lmZGVmIF9fWDg2XzY0X18KPiArI2luY2x1ZGUgPHg4Ni9yZWdzLmg+IC8qIFRP
RE8gaW5jbHVkZSBhIGdlbmVyaWMgaGVhZGVyICovCj4gKyNlbHNlCj4gKyNlcnJvciAiQ3JlYXRl
IHJlZ3MuaCBmb3IgY3VycmVudCBhcmNoaXRlY3R1cmUiCj4gKyNlbmRpZgo+ICsKPiArdm9pZCBk
dW1wX3JlZ3Moc3RydWN0IF9fcmVncyAqcmVncyk7Cj4gK3ZvaWQgZHVtcF9tZW0odW5zaWduZWQg
bG9uZyBhZGRyKTsKPiArdm9pZCBzdGFja193YWxrKHZvaWQpOwo+ICt2b2lkIHN0YWNrX3dhbGtf
Zm9yX2ZyYW1lKHVuc2lnbmVkIGxvbmcgZnJhbWVfYmFzZSk7Cj4gKwo+ICsjZW5kaWYgLyogX19Q
TEFUX0NNTl9UUkFDRV9IX18gKi8KPiBkaWZmIC0tZ2l0IGEvcGxhdC9jb21tb24veDg2L3RyYWNl
LmMgYi9wbGF0L2NvbW1vbi94ODYvdHJhY2UuYwo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5k
ZXggMDAwMDAwMC4uOWJiOWVlYgo+IC0tLSAvZGV2L251bGwKPiArKysgYi9wbGF0L2NvbW1vbi94
ODYvdHJhY2UuYwo+IEBAIC0wLDAgKzEsOTIgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZp
ZXI6IEJTRC0zLUNsYXVzZSAqLwo+ICsvKgo+ICsgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29z
dGluLmx1cHVAY3MucHViLnJvPgo+ICsgKgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBF
dXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+
ICsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKPiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4gKyAqCj4gKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KPiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQo+ICsgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgo+ICsgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRo
ZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCj4gKyAqICAgIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tCj4gKyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
IHBlcm1pc3Npb24uCj4gKyAqCj4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgo+ICsgKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCj4gKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUK
PiArICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgo+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgo+ICsgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
PiArICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KPiArICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKPiArICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUKPiArICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4gKyAqCj4gKyAqIFRI
SVMgSEVBREVSIE1BWSBOT1QgQkUgRVhUUkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCj4g
KyAqLwo+ICsKPiArI2luY2x1ZGUgPHRyYWNlLmg+Cj4gKyNpbmNsdWRlIDx1ay9wcmludC5oPgo+
ICsKPiArI2RlZmluZSBQQUdFX1NJWkUgNDA5NiAvKiBUT0RPIHRha2UgdGhpcyBmcm9tIGFub3Ro
ZXIgaGVhZGVyICovCj4gKwo+ICsKPiArdm9pZCBkdW1wX3JlZ3Moc3RydWN0IF9fcmVncyAqcmVn
cykKPiArewo+ICsJLyogVE9ETyB1a19wcmludGQoKSBpbnN0ZWFkIG9mIHVrX3ByaW50aygpICov
Cj4gKwl1a19wcmludGsoIlJJUDogJTAxNmx4IENTOiAlMDRseFxuIiwgcmVncy0+cmlwLCByZWdz
LT5jcyAmIDB4ZmZmZik7Cj4gKwl1a19wcmludGsoIlJTUDogJTAxNmx4IFNTOiAlMDRseCBFRkxB
R1M6ICUwOGx4XG4iLAo+ICsJCQlyZWdzLT5yc3AsIHJlZ3MtPnNzLCByZWdzLT5lZmxhZ3MpOwo+
ICsJdWtfcHJpbnRrKCJSQVg6ICUwMTZseCBSQlg6ICUwMTZseCBSQ1g6ICUwMTZseFxuIiwKPiAr
CQkJcmVncy0+cmF4LCByZWdzLT5yYngsIHJlZ3MtPnJjeCk7Cj4gKwl1a19wcmludGsoIlJEWDog
JTAxNmx4IFJTSTogJTAxNmx4IFJESTogJTAxNmx4XG4iLAo+ICsJCQlyZWdzLT5yZHgsIHJlZ3Mt
PnJzaSwgcmVncy0+cmRpKTsKPiArCXVrX3ByaW50aygiUkJQOiAlMDE2bHggUjA4OiAlMDE2bHgg
UjA5OiAlMDE2bHhcbiIsCj4gKwkJCXJlZ3MtPnJicCwgcmVncy0+cjgsIHJlZ3MtPnI5KTsKPiAr
CXVrX3ByaW50aygiUjEwOiAlMDE2bHggUjExOiAlMDE2bHggUjEyOiAlMDE2bHhcbiIsCj4gKwkJ
CXJlZ3MtPnIxMCwgcmVncy0+cjExLCByZWdzLT5yMTIpOwo+ICsJdWtfcHJpbnRrKCJSMTM6ICUw
MTZseCBSMTQ6ICUwMTZseCBSMTU6ICUwMTZseFxuIiwKPiArCQkJcmVncy0+cjEzLCByZWdzLT5y
MTQsIHJlZ3MtPnIxNSk7Cj4gK30KPiArCj4gKy8qIFRPRE8gdG8gYmUgcmVtb3ZlZDsgd2Ugc2hv
dWxkIHVzZSB1a19oZXhkdW1wKCkgaW5zdGVhZCAqLwo+ICt2b2lkIGR1bXBfbWVtKHVuc2lnbmVk
IGxvbmcgYWRkcikKPiArewo+ICsJdW5zaWduZWQgbG9uZyBpOwo+ICsKPiArCWlmIChhZGRyIDwg
UEFHRV9TSVpFKQo+ICsJCXJldHVybjsKPiArCj4gKwlmb3IgKGkgPSAoKGFkZHIpIC0gMTYpICYg
fjE1OyBpIDwgKCgoYWRkcikgKyA0OCkgJiB+MTUpOyBpKyspIHsKPiArCQlpZiAoIShpICUgMTYp
KQo+ICsJCQl1a19wcmludGsoIlxuJWx4OiIsIGkpOwo+ICsJCXVrX3ByaW50aygiICUwMngiLCAq
KHVuc2lnbmVkIGNoYXIgKikgaSk7Cj4gKwl9Cj4gKwl1a19wcmludGsoIlxuIik7Cj4gK30KPiAr
Cj4gK3ZvaWQgc3RhY2tfd2Fsayh2b2lkKQo+ICt7Cj4gKwl1bnNpZ25lZCBsb25nIGJwOwo+ICsK
PiArCWFzbSgibW92cSAlJXJicCwgJTAiIDogIj1yIihicCkpOwo+ICsKPiArCXN0YWNrX3dhbGtf
Zm9yX2ZyYW1lKGJwKTsKPiArfQo+ICsKPiArdm9pZCBzdGFja193YWxrX2Zvcl9mcmFtZSh1bnNp
Z25lZCBsb25nIGZyYW1lX2Jhc2UpCj4gK3sKPiArCXVuc2lnbmVkIGxvbmcgKmZyYW1lID0gKHZv
aWQgKikgZnJhbWVfYmFzZTsKPiArCj4gKwl1a19wcmludGsoImJhc2UgaXMgJSNseCAiLCBmcmFt
ZV9iYXNlKTsKPiArCXVrX3ByaW50aygiY2FsbGVyIGlzICUjbHhcbiIsIGZyYW1lWzFdKTsKPiAr
CWlmIChmcmFtZVswXSkKPiArCQlzdGFja193YWxrX2Zvcl9mcmFtZShmcmFtZVswXSk7Cj4gK30K
PiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4vTWFrZWZpbGUudWsgYi9wbGF0L3hlbi9NYWtlZmlsZS51
awo+IGluZGV4IDIyMGM4ZDkuLjQ5YzQzNTIgMTAwNjQ0Cj4gLS0tIGEvcGxhdC94ZW4vTWFrZWZp
bGUudWsKPiArKysgYi9wbGF0L3hlbi9NYWtlZmlsZS51awo+IEBAIC0yOSw2ICsyOSw3IEBAIExJ
QlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQlhFTlBMQVRfQkFTRSkvaHlwZXJ2
aXNvci5jCj4gICBMSUJYRU5QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJYRU5QTEFU
X0JBU0UpL21lbW9yeS5jCj4gICAKPiAgIGlmbmVxICgsJChmaWx0ZXIgeDg2XzMyIHg4Nl82NCwk
KFVLX0FSQ0gpKSkKPiArTElCWEVOUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoVUtfUExB
VF9DT01NT05fQkFTRSkveDg2L3RyYWNlLmN8Y29tbW9uCj4gICBMSUJYRU5QTEFUX1NSQ1MteSAg
ICAgICAgICAgICAgKz0gJChMSUJYRU5QTEFUX0JBU0UpL3g4Ni9zZXR1cC5jCj4gICBMSUJYRU5Q
TEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJYRU5QTEFUX0JBU0UpL3g4Ni90cmFwcy5j
Cj4gICBMSUJYRU5QTEFUX1NSQ1MtJChBUkNIX1g4Nl8zMikgKz0gJChMSUJYRU5QTEFUX0JBU0Up
L3g4Ni9lbnRyeTMyLlMKPiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4veDg2L3RyYXBzLmMgYi9wbGF0
L3hlbi94ODYvdHJhcHMuYwo+IGluZGV4IDcwNTc4MzkuLmRhM2NhOWEgMTAwNjQ0Cj4gLS0tIGEv
cGxhdC94ZW4veDg2L3RyYXBzLmMKPiArKysgYi9wbGF0L3hlbi94ODYvdHJhcHMuYwo+IEBAIC01
NCwzNiArNTQsNiBAQCB2b2lkIG1hY2hpbmVfY2hlY2sodm9pZCk7Cj4gICAJZm9yICg7OykgeyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCj4gICAJfQo+ICAgCj4gLXZvaWQgZHVtcF9yZWdzKHN0cnVjdCBfX3JlZ3MgKnJlZ3MpCj4g
LXsKPiAtLy8gdWtfcHJpbnRrKCJUaHJlYWQ6ICVzXG4iLCBjdXJyZW50ID8gY3VycmVudC0+bmFt
ZSA6ICIqTk9ORSoiKTsKPiAtI2lmZGVmIF9fWDg2XzY0X18KPiAtCXVrX3ByaW50aygiUklQOiAl
MDRseDpbPCUwMTZseD5dICIsIHJlZ3MtPmNzICYgMHhmZmZmLCByZWdzLT5yaXApOwo+IC0JdWtf
cHJpbnRrKCJcblJTUDogJTA0bHg6JTAxNmx4ICBFRkxBR1M6ICUwOGx4XG4iLCByZWdzLT5zcywg
cmVncy0+cnNwLAo+IC0JCSAgcmVncy0+ZWZsYWdzKTsKPiAtCXVrX3ByaW50aygiUkFYOiAlMDE2
bHggUkJYOiAlMDE2bHggUkNYOiAlMDE2bHhcbiIsIHJlZ3MtPnJheCwgcmVncy0+cmJ4LAo+IC0J
CSAgcmVncy0+cmN4KTsKPiAtCXVrX3ByaW50aygiUkRYOiAlMDE2bHggUlNJOiAlMDE2bHggUkRJ
OiAlMDE2bHhcbiIsIHJlZ3MtPnJkeCwgcmVncy0+cnNpLAo+IC0JCSAgcmVncy0+cmRpKTsKPiAt
CXVrX3ByaW50aygiUkJQOiAlMDE2bHggUjA4OiAlMDE2bHggUjA5OiAlMDE2bHhcbiIsIHJlZ3Mt
PnJicCwgcmVncy0+cjgsCj4gLQkJICByZWdzLT5yOSk7Cj4gLQl1a19wcmludGsoIlIxMDogJTAx
Nmx4IFIxMTogJTAxNmx4IFIxMjogJTAxNmx4XG4iLCByZWdzLT5yMTAsIHJlZ3MtPnIxMSwKPiAt
CQkgIHJlZ3MtPnIxMik7Cj4gLQl1a19wcmludGsoIlIxMzogJTAxNmx4IFIxNDogJTAxNmx4IFIx
NTogJTAxNmx4XG4iLCByZWdzLT5yMTMsIHJlZ3MtPnIxNCwKPiAtCQkgIHJlZ3MtPnIxNSk7Cj4g
LSNlbHNlCj4gLQl1a19wcmludGsoIkVJUDogJWx4LCBFRkxBR1MgJWx4LlxuIiwgcmVncy0+ZWlw
LCByZWdzLT5lZmxhZ3MpOwo+IC0JdWtfcHJpbnRrKCJFQlg6ICUwOGx4IEVDWDogJTA4bHggRURY
OiAlMDhseFxuIiwgcmVncy0+ZWJ4LCByZWdzLT5lY3gsCj4gLQkJICByZWdzLT5lZHgpOwo+IC0J
dWtfcHJpbnRrKCJFU0k6ICUwOGx4IEVESTogJTA4bHggRUJQOiAlMDhseCBFQVg6ICUwOGx4XG4i
LCByZWdzLT5lc2ksCj4gLQkJICByZWdzLT5lZGksIHJlZ3MtPmVicCwgcmVncy0+ZWF4KTsKPiAt
CXVrX3ByaW50aygiRFM6ICUwNHggRVM6ICUwNHggb3JpZ19lYXg6ICUwOGx4LCBlaXA6ICUwOGx4
XG4iLCByZWdzLT54ZHMsCj4gLQkJICByZWdzLT54ZXMsIHJlZ3MtPm9yaWdfZWF4LCByZWdzLT5l
aXApOwo+IC0JdWtfcHJpbnRrKCJDUzogJTA0eCBFRkxBR1M6ICUwOGx4IGVzcDogJTA4bHggc3M6
ICUwNHhcbiIsIHJlZ3MtPnhjcywKPiAtCQkgIHJlZ3MtPmVmbGFncywgcmVncy0+ZXNwLCByZWdz
LT54c3MpOwo+IC0jZW5kaWYKPiAtfQo+IC0KPiAgIHN0YXRpYyB2b2lkIGRvX3RyYXAoaW50IHRy
YXBuciwgY2hhciAqc3RyLCBzdHJ1Y3QgX19yZWdzICpyZWdzLAo+ICAgCQkgICAgdW5zaWduZWQg
bG9uZyBlcnJvcl9jb2RlKQo+ICAgewo+IEBAIC0xMTgsNDIgKzg4LDYgQEAgRE9fRVJST1IoMTIs
ICJzdGFjayBzZWdtZW50Iiwgc3RhY2tfc2VnbWVudCkKPiAgIERPX0VSUk9SX0lORk8oMTcsICJh
bGlnbm1lbnQgY2hlY2siLCBhbGlnbm1lbnRfY2hlY2ssIEJVU19BRFJBTE4sIDApCj4gICBET19F
UlJPUigxOCwgIm1hY2hpbmUgY2hlY2siLCBtYWNoaW5lX2NoZWNrKQo+ICAgCj4gLXN0YXRpYyB2
b2lkIGRvX3N0YWNrX3dhbGsodW5zaWduZWQgbG9uZyBmcmFtZV9iYXNlKQo+IC17Cj4gLQl1bnNp
Z25lZCBsb25nICpmcmFtZSA9ICh2b2lkICopZnJhbWVfYmFzZTsKPiAtCj4gLQl1a19wcmludGso
ImJhc2UgaXMgJSNseCAiLCBmcmFtZV9iYXNlKTsKPiAtCXVrX3ByaW50aygiY2FsbGVyIGlzICUj
bHhcbiIsIGZyYW1lWzFdKTsKPiAtCWlmIChmcmFtZVswXSkKPiAtCQlkb19zdGFja193YWxrKGZy
YW1lWzBdKTsKPiAtfQo+IC0KPiAtdm9pZCBzdGFja193YWxrKHZvaWQpCj4gLXsKPiAtCXVuc2ln
bmVkIGxvbmcgYnA7Cj4gLSNpZmRlZiBfX3g4Nl82NF9fCj4gLQlhc20oIm1vdnEgJSVyYnAsICUw
IiA6ICI9ciIoYnApKTsKPiAtI2Vsc2UKPiAtCWFzbSgibW92bCAlJWVicCwgJTAiIDogIj1yIihi
cCkpOwo+IC0jZW5kaWYKPiAtCWRvX3N0YWNrX3dhbGsoYnApOwo+IC19Cj4gLQo+IC1zdGF0aWMg
dm9pZCBkdW1wX21lbSh1bnNpZ25lZCBsb25nIGFkZHIpCj4gLXsKPiAtCXVuc2lnbmVkIGxvbmcg
aTsKPiAtCj4gLQlpZiAoYWRkciA8IFBBR0VfU0laRSkKPiAtCQlyZXR1cm47Cj4gLQo+IC0JZm9y
IChpID0gKChhZGRyKS0xNikgJiB+MTU7IGkgPCAoKChhZGRyKSArIDQ4KSAmIH4xNSk7IGkrKykg
ewo+IC0JCWlmICghKGkgJSAxNikpCj4gLQkJCXVrX3ByaW50aygiXG4lbHg6IiwgaSk7Cj4gLQkJ
dWtfcHJpbnRrKCIgJTAyeCIsICoodW5zaWduZWQgY2hhciAqKWkpOwo+IC0JfQo+IC0JdWtfcHJp
bnRrKCJcbiIpOwo+IC19Cj4gLQo+ICAgc3RhdGljIGludCBoYW5kbGluZ19wZ19mYXVsdDsKPiAg
IAo+ICAgdm9pZCBkb19wYWdlX2ZhdWx0KHN0cnVjdCBfX3JlZ3MgKnJlZ3MsIHVuc2lnbmVkIGxv
bmcgZXJyb3JfY29kZSkKPiBAQCAtMTgyLDcgKzExNiw3IEBAIHZvaWQgZG9fcGFnZV9mYXVsdChz
dHJ1Y3QgX19yZWdzICpyZWdzLCB1bnNpZ25lZCBsb25nIGVycm9yX2NvZGUpCj4gICAKPiAgIAlk
dW1wX3JlZ3MocmVncyk7Cj4gICAjaWZkZWYgX19YODZfNjRfXwo+IC0JZG9fc3RhY2tfd2Fsayhy
ZWdzLT5yYnApOwo+ICsJc3RhY2tfd2Fsa19mb3JfZnJhbWUocmVncy0+cmJwKTsKPiAgIAlkdW1w
X21lbShyZWdzLT5yc3ApOwo+ICAgCWR1bXBfbWVtKHJlZ3MtPnJicCk7Cj4gICAJZHVtcF9tZW0o
cmVncy0+cmlwKTsKPiBAQCAtMjA3LDcgKzE0MSw3IEBAIHZvaWQgZG9fZ2VuZXJhbF9wcm90ZWN0
aW9uKHN0cnVjdCBfX3JlZ3MgKnJlZ3MsIGxvbmcgZXJyb3JfY29kZSkKPiAgICNlbmRpZgo+ICAg
CWR1bXBfcmVncyhyZWdzKTsKPiAgICNpZmRlZiBfX1g4Nl82NF9fCj4gLQlkb19zdGFja193YWxr
KHJlZ3MtPnJicCk7Cj4gKwlzdGFja193YWxrX2Zvcl9mcmFtZShyZWdzLT5yYnApOwo+ICAgCWR1
bXBfbWVtKHJlZ3MtPnJzcCk7Cj4gICAJZHVtcF9tZW0ocmVncy0+cmJwKTsKPiAgIAlkdW1wX21l
bShyZWdzLT5yaXApOwo+IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVu
cHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv
L21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:49:55 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:49:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdXH-0001Em-K3; Thu, 26 Apr 2018 09:49:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXG-0001EF-BT
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:49:54 +0000
X-Inumbo-ID: 7f7e6e5c-4937-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 7f7e6e5c-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:52:15 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 9924910432D;
 Thu, 26 Apr 2018 11:49:51 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id RITU_XYg6JzQ; Thu, 26 Apr 2018 11:49:51 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 721DB1042C1;
 Thu, 26 Apr 2018 11:49:47 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:38 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-8-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <940356a0-d4db-d9fe-cbc5-c256557729fc@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:36 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-8-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 07/17] plat/common: Common x86
 traps definitions and functions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1MywgQ29zdGluIEx1cHUgd3JvdGU6Cj4gQ3VycmVudCBjaGFuZ2VzIGlu
dHJvZHVjZSBjb21tb24geDg2IHRyYXBzIGRlZmluaXRpb25zIGFuZCBmdW5jdGlvbnMgZm9yIGJv
dGgKPiBYZW4gYW5kIEtWTSBwbGF0Zm9ybXMuIFRyYXAgbmFtZXMgYXJlIGVuZm9yY2VkIGJ5IHRo
ZSBoZWxwZXIgbWFjcm9zIHdoaWNoCj4gc2hvdWxkIGJlIHVzZWQgd2hlbiBkZWZpbmluZyBhIG5l
dyB0cmFwIGZ1bmN0aW9uLiBXaGVuZXZlciBhIHBsYXRmb3JtIG5lZWRzIHRvCj4gYWRkIG5ldyB0
cmFwcyBpdCBzaG91bGQgZGVmaW5lIHRoZSB0cmFwIG51bWJlciBpbgo+ICdwbGF0L25hbWUvaW5j
bHVkZS9hcmNoL3RyYXBzLmgnIGFuZCB0aGUgQyB0cmFwIGhhbmRsZXIgaW4KPiAncGxhdC9uYW1l
L2FyY2gvdHJhcHMuYycuIFRoZSBhc3NlbWJseSBzdHViIG5hbWUgc2hvdWxkIGFsc28gZm9sbG93
IHRoZQo+IGNvbnZlbnRpb24gc3BlY2lmaWVkIGluICdwbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni90
cmFwcy5oJy4KPiBUaGUgWGVuIHNwZWNpZmljIHRyYXBzIHdvcmsgYXMgYW4gZXhhbXBsZSBmb3Ig
dGhpcyBydWxlLgo+IAo+IE90aGVyIGNoYW5nZXM6Cj4gKiBIVk0gdHJhcHMgdXBkYXRlcyBmb3Ig
Y29uZm9ybWluZyB3aXRoIHRoZSBuZXcgdHJhcHMgYW5kIHNlZ21lbnQgZGVzY3JpcHRvcnMKPiBk
ZWZpbml0aW9ucwo+ICogJ29zLmgnIGNsZWFudXA7IHRoZSBnb2FsIGlzIHRvIGdldCByaWQgb2Yg
dGhpcyBoZWFkZXIKPiAqIG1pbm9yIGNoYW5nZSBpbiAncGxhdC94ZW4veDg2L2FyY2hfdGltZS5j
Jwo+IAo+IFNpZ25lZC1vZmYtYnk6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+
Cj4gLS0tCj4gICBwbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni90cmFwcy5oICB8IDExNSArKysrKysr
KysrKysrKysrKwo+ICAgcGxhdC9jb21tb24veDg2L3RyYXBzLmMgICAgICAgICAgfCAxMTYgKysr
KysrKysrKysrKysrKysKPiAgIHBsYXQveGVuL01ha2VmaWxlLnVrICAgICAgICAgICAgIHwgICAx
ICsKPiAgIHBsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9vcy5oICAgIHwgIDM0IC0tLS0tCj4gICBw
bGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvdHJhcHMuaCB8ICAyMyArKy0tCj4gICBwbGF0L3hlbi94
ODYvYXJjaF90aW1lLmMgICAgICAgICB8ICAgMiArLQo+ICAgcGxhdC94ZW4veDg2L2VudHJ5NjQu
UyAgICAgICAgICAgfCAxMDggKysrKysrLS0tLS0tLS0tLQo+ICAgcGxhdC94ZW4veDg2L3NldHVw
LmMgICAgICAgICAgICAgfCAgIDIgKy0KPiAgIHBsYXQveGVuL3g4Ni90cmFwcy5jICAgICAgICAg
ICAgIHwgMjYzICsrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAgOSBm
aWxlcyBjaGFuZ2VkLCAzNDAgaW5zZXJ0aW9ucygrKSwgMzI0IGRlbGV0aW9ucygtKQo+ICAgY3Jl
YXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L3RyYXBzLmgKPiAgIGNyZWF0
ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi94ODYvdHJhcHMuYwo+IAo+IGRpZmYgLS1naXQgYS9w
bGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni90cmFwcy5oIGIvcGxhdC9jb21tb24vaW5jbHVkZS94ODYv
dHJhcHMuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uYjIxN2IzNAo+
IC0tLSAvZGV2L251bGwKPiArKysgYi9wbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni90cmFwcy5oCj4g
QEAgLTAsMCArMSwxMTUgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNs
YXVzZSAqLwo+ICsvKgo+ICsgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3Mu
cHViLnJvPgo+ICsgKgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwg
TkVDIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+ICsgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKPiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4gKyAqCj4gKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4g
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KPiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+ICsgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgo+ICsgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQg
aG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCj4gKyAqICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCj4gKyAqICAg
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
Cj4gKyAqCj4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgo+ICsgKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4g
KyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUKPiArICogTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgo+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgo+ICsgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKPiArICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KPiArICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKPiArICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKPiAr
ICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4gKyAqCj4gKyAqIFRISVMgSEVBREVSIE1B
WSBOT1QgQkUgRVhUUkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCj4gKyAqLwo+ICsvKiBQ
b3J0ZWQgZnJvbSBNaW5pLU9TICovCj4gKwo+ICsjaWZuZGVmIF9fVUtBUkNIX1RSQVBTX1g4Nl82
NF9IX18KPiArI2RlZmluZSBfX1VLQVJDSF9UUkFQU19YODZfNjRfSF9fCj4gKwo+ICsjaW5jbHVk
ZSA8eDg2L3JlZ3MuaD4KPiArCj4gKyNkZWZpbmUgVFJBUF9kaXZpZGVfZXJyb3IgICAgICAgIDAK
PiArI2RlZmluZSBUUkFQX2RlYnVnICAgICAgICAgICAgICAgMQo+ICsjZGVmaW5lIFRSQVBfbm1p
ICAgICAgICAgICAgICAgICAyCj4gKyNkZWZpbmUgVFJBUF9pbnQzICAgICAgICAgICAgICAgIDMK
PiArI2RlZmluZSBUUkFQX292ZXJmbG93ICAgICAgICAgICAgNAo+ICsjZGVmaW5lIFRSQVBfYm91
bmRzICAgICAgICAgICAgICA1Cj4gKyNkZWZpbmUgVFJBUF9pbnZhbGlkX29wICAgICAgICAgIDYK
PiArI2RlZmluZSBUUkFQX25vX2RldmljZSAgICAgICAgICAgNwo+ICsjZGVmaW5lIFRSQVBfZG91
YmxlX2ZhdWx0ICAgICAgICA4Cj4gKyNkZWZpbmUgVFJBUF9pbnZhbGlkX3RzcyAgICAgICAgIDEw
Cj4gKyNkZWZpbmUgVFJBUF9ub19zZWdtZW50ICAgICAgICAgIDExCj4gKyNkZWZpbmUgVFJBUF9z
dGFja19lcnJvciAgICAgICAgIDEyCj4gKyNkZWZpbmUgVFJBUF9ncF9mYXVsdCAgICAgICAgICAg
IDEzCj4gKyNkZWZpbmUgVFJBUF9wYWdlX2ZhdWx0ICAgICAgICAgIDE0Cj4gKyNkZWZpbmUgVFJB
UF9jb3Byb2NfZXJyb3IgICAgICAgIDE2Cj4gKyNkZWZpbmUgVFJBUF9hbGlnbm1lbnRfY2hlY2sg
ICAgIDE3Cj4gKyNkZWZpbmUgVFJBUF9tYWNoaW5lX2NoZWNrICAgICAgIDE4Cj4gKyNkZWZpbmUg
VFJBUF9zaW1kX2Vycm9yICAgICAgICAgIDE5Cj4gKyNkZWZpbmUgVFJBUF92aXJ0X2Vycm9yICAg
ICAgICAgIDIwCj4gKyNkZWZpbmUgVFJBUF9zZWN1cml0eV9lcnJvciAgICAgIDMwCj4gKwo+ICsj
ZGVmaW5lIEFTTV9UUkFQX1NZTSh0cmFwbmFtZSkgICBhc21fdHJhcF8jI3RyYXBuYW1lCj4gKwo+
ICsjaWZuZGVmIF9fQVNTRU1CTFlfXwo+ICsKPiArI2RlZmluZSBERUNMQVJFX0FTTV9UUkFQKHRy
YXBuYW1lKSBcCj4gKwl2b2lkIEFTTV9UUkFQX1NZTSh0cmFwbmFtZSkodm9pZCkKPiArCj4gKy8q
Cj4gKyAqIFRoZXNlIGFyZSBhc3NlbWJsZXIgc3R1YnMgaW4gZW50cnkuUy4KPiArICogVGhleSBh
cmUgdGhlIGFjdHVhbCBlbnRyeSBwb2ludHMgZm9yIHZpcnR1YWwgZXhjZXB0aW9ucy4KPiArICov
Cj4gK0RFQ0xBUkVfQVNNX1RSQVAoZGl2aWRlX2Vycm9yKTsKPiArREVDTEFSRV9BU01fVFJBUChk
ZWJ1Zyk7Cj4gK0RFQ0xBUkVfQVNNX1RSQVAobm1pKTsKPiArREVDTEFSRV9BU01fVFJBUChpbnQz
KTsKPiArREVDTEFSRV9BU01fVFJBUChvdmVyZmxvdyk7Cj4gK0RFQ0xBUkVfQVNNX1RSQVAoYm91
bmRzKTsKPiArREVDTEFSRV9BU01fVFJBUChpbnZhbGlkX29wKTsKPiArREVDTEFSRV9BU01fVFJB
UChub19kZXZpY2UpOwo+ICtERUNMQVJFX0FTTV9UUkFQKGRvdWJsZV9mYXVsdCk7Cj4gK0RFQ0xB
UkVfQVNNX1RSQVAoaW52YWxpZF90c3MpOwo+ICtERUNMQVJFX0FTTV9UUkFQKG5vX3NlZ21lbnQp
Owo+ICtERUNMQVJFX0FTTV9UUkFQKHN0YWNrX2Vycm9yKTsKPiArREVDTEFSRV9BU01fVFJBUChn
cF9mYXVsdCk7Cj4gK0RFQ0xBUkVfQVNNX1RSQVAocGFnZV9mYXVsdCk7Cj4gK0RFQ0xBUkVfQVNN
X1RSQVAoY29wcm9jX2Vycm9yKTsKPiArREVDTEFSRV9BU01fVFJBUChhbGlnbm1lbnRfY2hlY2sp
Owo+ICtERUNMQVJFX0FTTV9UUkFQKG1hY2hpbmVfY2hlY2spOwo+ICtERUNMQVJFX0FTTV9UUkFQ
KHNpbWRfZXJyb3IpOwo+ICtERUNMQVJFX0FTTV9UUkFQKHZpcnRfZXJyb3IpOwo+ICsKPiArCj4g
K3ZvaWQgZG9fdW5oYW5kbGVkX3RyYXAoaW50IHRyYXBuciwgY2hhciAqc3RyLCBzdHJ1Y3QgX19y
ZWdzICpyZWdzLAo+ICsJCXVuc2lnbmVkIGxvbmcgZXJyb3JfY29kZSk7Cj4gKwo+ICsjZGVmaW5l
IERFQ0xBUkVfVFJBUChuYW1lLCBzdHIpIFwKPiArdm9pZCBkb18jI25hbWUoc3RydWN0IF9fcmVn
cyAqcmVncykgXAo+ICt7IFwKPiArCWRvX3VuaGFuZGxlZF90cmFwKFRSQVBfIyNuYW1lLCBzdHIs
IHJlZ3MsIDApOyBcCj4gK30KPiArCj4gKyNkZWZpbmUgREVDTEFSRV9UUkFQX0VDKG5hbWUsIHN0
cikgXAo+ICt2b2lkIGRvXyMjbmFtZShzdHJ1Y3QgX19yZWdzICpyZWdzLCB1bnNpZ25lZCBsb25n
IGVycm9yX2NvZGUpIFwKPiAreyBcCj4gKwlkb191bmhhbmRsZWRfdHJhcChUUkFQXyMjbmFtZSwg
c3RyLCByZWdzLCBlcnJvcl9jb2RlKTsgXAo+ICt9Cj4gKwo+ICsKPiArdm9pZCB0cmFwc19pbml0
KHZvaWQpOwo+ICt2b2lkIHRyYXBzX2Zpbmkodm9pZCk7Cj4gKwo+ICsjZW5kaWYKPiArCj4gKyNl
bmRpZiAvKiBfX1VLQVJDSF9UUkFQU19YODZfNjRfSF9fICovCj4gZGlmZiAtLWdpdCBhL3BsYXQv
Y29tbW9uL3g4Ni90cmFwcy5jIGIvcGxhdC9jb21tb24veDg2L3RyYXBzLmMKPiBuZXcgZmlsZSBt
b2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLjQzNDU3N2YKPiAtLS0gL2Rldi9udWxsCj4gKysr
IGIvcGxhdC9jb21tb24veDg2L3RyYXBzLmMKPiBAQCAtMCwwICsxLDExNiBAQAo+ICsvKiBTUERY
LUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICovCj4gKy8qCj4gKyAqIEF1dGhvcnM6
IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Cj4gKyAqCj4gKyAqIENvcHlyaWdo
dCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCj4gKyAqCj4gKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKPiArICogYXJl
IG1ldDoKPiArICoKPiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+ICsgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4gKyAqIDMuIE5laXRo
ZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHMK
PiArICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20KPiArICogICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMg
SVMiCj4gKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiArICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKPiArICog
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9S
IENPTlRSSUJVVE9SUyBCRQo+ICsgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCj4gKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCj4gKyAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUwo+ICsgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgo+ICsgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQo+ICsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQo+ICsgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KPiArICoKPiArICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJ
RUQgSU4gQU5ZIFdBWS4KPiArICovCj4gKy8qIFBvcnRlZCBmcm9tIE1pbmktT1MgKi8KPiArCj4g
KyNpbmNsdWRlIDx1ay9hcmNoL2xjcHUuaD4KPiArI2luY2x1ZGUgPHRyYWNlLmg+Cj4gKyNpbmNs
dWRlIDx4ODYvY3B1Lmg+Cj4gKyNpbmNsdWRlIDx4ODYvdHJhcHMuaD4KPiArI2luY2x1ZGUgPHVr
L3ByaW50Lmg+Cj4gKyNpbmNsdWRlIDx1ay9hc3NlcnQuaD4KPiArCj4gKy8qIFRyYXBzIGhhbmRs
ZWQgb24gYm90aCBYZW4gYW5kIEtWTSAqLwo+ICsKPiArREVDTEFSRV9UUkFQX0VDKGRpdmlkZV9l
cnJvciwgICAgICAiZGl2aWRlIGVycm9yIikKPiArREVDTEFSRV9UUkFQICAgKGRlYnVnLCAgICAg
ICAgICAgICAiZGVidWcgZXhjZXB0aW9uIikKPiArREVDTEFSRV9UUkFQX0VDKGludDMsICAgICAg
ICAgICAgICAiaW50MyIpCj4gK0RFQ0xBUkVfVFJBUF9FQyhvdmVyZmxvdywgICAgICAgICAgIm92
ZXJmbG93IikKPiArREVDTEFSRV9UUkFQX0VDKGJvdW5kcywgICAgICAgICAgICAiYm91bmRzIikK
PiArREVDTEFSRV9UUkFQX0VDKGludmFsaWRfb3AsICAgICAgICAiaW52YWxpZCBvcGNvZGUiKQo+
ICtERUNMQVJFX1RSQVBfRUMobm9fZGV2aWNlLCAgICAgICAgICJkZXZpY2Ugbm90IGF2YWlsYWJs
ZSIpCj4gK0RFQ0xBUkVfVFJBUF9FQyhpbnZhbGlkX3RzcywgICAgICAgImludmFsaWQgVFNTIikK
PiArREVDTEFSRV9UUkFQX0VDKG5vX3NlZ21lbnQsICAgICAgICAic2VnbWVudCBub3QgcHJlc2Vu
dCIpCj4gK0RFQ0xBUkVfVFJBUF9FQyhzdGFja19lcnJvciwgICAgICAgInN0YWNrIHNlZ21lbnQi
KQo+ICtERUNMQVJFX1RSQVAgICAoY29wcm9jX2Vycm9yLCAgICAgICJjb3Byb2Nlc3NvciBlcnJv
ciIpCj4gK0RFQ0xBUkVfVFJBUF9FQyhhbGlnbm1lbnRfY2hlY2ssICAgImFsaWdubWVudCBjaGVj
ayIpCj4gK0RFQ0xBUkVfVFJBUF9FQyhtYWNoaW5lX2NoZWNrLCAgICAgIm1hY2hpbmUgY2hlY2si
KQo+ICtERUNMQVJFX1RSQVAgICAoc2ltZF9lcnJvciwgICAgICAgICJTSU1EIGNvcHJvY2Vzc29y
IGVycm9yIikKPiArCj4gKwo+ICt2b2lkIGRvX3VuaGFuZGxlZF90cmFwKGludCB0cmFwbnIsIGNo
YXIgKnN0ciwgc3RydWN0IF9fcmVncyAqcmVncywKPiArCQl1bnNpZ25lZCBsb25nIGVycm9yX2Nv
ZGUpCj4gK3sKPiArCXVrX3ByaW50ZChETFZMX0NSSVQsICJVbmhhbmRsZWQgVHJhcCAlZCAoJXMp
LCBlcnJvciBjb2RlPTB4JWx4XG4iLAo+ICsJCQl0cmFwbnIsIHN0ciwgZXJyb3JfY29kZSk7Cj4g
Kwl1a19wcmludGsoIlJlZ3MgYWRkcmVzcyAlcFxuIiwgcmVncyk7Cj4gKwkvKiBUT0RPIHJldmlz
aXQgd2hlbiBVS19DUkFTSCB3aWxsIGFsc28gZHVtcCB0aGUgcmVnaXN0ZXJzICovCj4gKwlkdW1w
X3JlZ3MocmVncyk7Cj4gKwlVS19DUkFTSCgiQ3Jhc2hpbmdcbiIpOwo+ICt9Cj4gKwo+ICtzdGF0
aWMgaW50IGhhbmRsaW5nX2ZhdWx0Owo+ICsKPiArc3RhdGljIHZvaWQgZmF1bHRfcHJvbG9ndWUo
dm9pZCkKPiArewo+ICsJLyogSWYgd2UgYXJlIGFscmVhZHkgaGFuZGxpbmcgYSBwYWdlIGZhdWx0
LCBhbmQgZ290IGFub3RoZXIgb25lCj4gKwkgKiB0aGF0IG1lYW5zIHdlIGZhdWx0ZWQgaW4gcGFn
ZXRhYmxlIHdhbGsuIENvbnRpbnVpbmcgaGVyZSB3b3VsZCBjYXVzZQo+ICsJICogYSByZWN1cnNp
dmUgZmF1bHQKPiArCSAqLwo+ICsJaWYgKGhhbmRsaW5nX2ZhdWx0ID09IDEpIHsKPiArCQlVS19D
UkFTSCgiUGFnZSBmYXVsdCBpbiBwYWdldGFibGUgd2FsayAiCj4gKwkJCQkiKGFjY2VzcyB0byBp
bnZhbGlkIG1lbW9yeT8pLlxuIik7Cj4gKwl9Cj4gKwloYW5kbGluZ19mYXVsdCsrOwo+ICsJYmFy
cmllcigpOwo+ICt9Cj4gKwo+ICt2b2lkIGRvX2dwX2ZhdWx0KHN0cnVjdCBfX3JlZ3MgKnJlZ3Ms
IGxvbmcgZXJyb3JfY29kZSkKPiArewo+ICsJZmF1bHRfcHJvbG9ndWUoKTsKPiArCXVrX3ByaW50
ZChETFZMX0NSSVQsICJHUEYgcmlwOiAlbHgsIGVycm9yX2NvZGU9JWx4XG4iLAo+ICsJCQlyZWdz
LT5yaXAsIGVycm9yX2NvZGUpOwo+ICsJZHVtcF9yZWdzKHJlZ3MpOwo+ICsJc3RhY2tfd2Fsa19m
b3JfZnJhbWUocmVncy0+cmJwKTsKPiArCWR1bXBfbWVtKHJlZ3MtPnJzcCk7Cj4gKwlkdW1wX21l
bShyZWdzLT5yYnApOwo+ICsJZHVtcF9tZW0ocmVncy0+cmlwKTsKPiArCVVLX0NSQVNIKCJDcmFz
aGluZ1xuIik7Cj4gK30KPiArCj4gK3ZvaWQgZG9fcGFnZV9mYXVsdChzdHJ1Y3QgX19yZWdzICpy
ZWdzLCB1bnNpZ25lZCBsb25nIGVycm9yX2NvZGUpCj4gK3sKPiArCXVuc2lnbmVkIGxvbmcgYWRk
ciA9IHJlYWRfY3IyKCk7Cj4gKwo+ICsJZmF1bHRfcHJvbG9ndWUoKTsKPiArCXVrX3ByaW50ZChE
TFZMX0NSSVQsICJQYWdlIGZhdWx0IGF0IGxpbmVhciBhZGRyZXNzICVseCwgcmlwICVseCwgIgo+
ICsJCQkicmVncyAlcCwgc3AgJWx4LCBvdXJfc3AgJXAsIGNvZGUgJWx4XG4iLAo+ICsJCQlhZGRy
LCByZWdzLT5yaXAsIHJlZ3MsIHJlZ3MtPnJzcCwgJmFkZHIsIGVycm9yX2NvZGUpOwo+ICsKPiAr
CWR1bXBfcmVncyhyZWdzKTsKPiArCXN0YWNrX3dhbGtfZm9yX2ZyYW1lKHJlZ3MtPnJicCk7Cj4g
KwlkdW1wX21lbShyZWdzLT5yc3ApOwo+ICsJZHVtcF9tZW0ocmVncy0+cmJwKTsKPiArCWR1bXBf
bWVtKHJlZ3MtPnJpcCk7Cj4gKwlVS19DUkFTSCgiQ3Jhc2hpbmdcbiIpOwo+ICt9Cj4gZGlmZiAt
LWdpdCBhL3BsYXQveGVuL01ha2VmaWxlLnVrIGIvcGxhdC94ZW4vTWFrZWZpbGUudWsKPiBpbmRl
eCA0OWM0MzUyLi41NWJhNTBjIDEwMDY0NAo+IC0tLSBhL3BsYXQveGVuL01ha2VmaWxlLnVrCj4g
KysrIGIvcGxhdC94ZW4vTWFrZWZpbGUudWsKPiBAQCAtMzAsNiArMzAsNyBAQCBMSUJYRU5QTEFU
X1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJYRU5QTEFUX0JBU0UpL21lbW9yeS5jCj4gICAK
PiAgIGlmbmVxICgsJChmaWx0ZXIgeDg2XzMyIHg4Nl82NCwkKFVLX0FSQ0gpKSkKPiAgIExJQlhF
TlBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL3g4Ni90
cmFjZS5jfGNvbW1vbgo+ICtMSUJYRU5QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChVS19Q
TEFUX0NPTU1PTl9CQVNFKS94ODYvdHJhcHMuY3xjb21tb24KPiAgIExJQlhFTlBMQVRfU1JDUy15
ICAgICAgICAgICAgICArPSAkKExJQlhFTlBMQVRfQkFTRSkveDg2L3NldHVwLmMKPiAgIExJQlhF
TlBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQlhFTlBMQVRfQkFTRSkveDg2L3RyYXBz
LmMKPiAgIExJQlhFTlBMQVRfU1JDUy0kKEFSQ0hfWDg2XzMyKSArPSAkKExJQlhFTlBMQVRfQkFT
RSkveDg2L2VudHJ5MzIuUwo+IGRpZmYgLS1naXQgYS9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYv
b3MuaCBiL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9vcy5oCj4gaW5kZXggNmZhNGZhMC4uMzA4
ZDkxYSAxMDA2NDQKPiAtLS0gYS9wbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvb3MuaAo+ICsrKyBi
L3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9vcy5oCj4gQEAgLTYyLDMyICs2Miw2IEBAIHR5cGVk
ZWYgdW5zaWduZWQgbG9uZyB1X2xvbmc7Cj4gICAKPiAgICNpbmNsdWRlIDx4ODYvY3B1X2RlZnMu
aD4KPiAgIAo+IC0jZGVmaW5lIF9fS0VSTkVMX0NTICAgICBGTEFUX0tFUk5FTF9DUwo+IC0jZGVm
aW5lIF9fS0VSTkVMX0RTICAgICBGTEFUX0tFUk5FTF9EUwo+IC0jZGVmaW5lIF9fS0VSTkVMX1NT
ICAgICBGTEFUX0tFUk5FTF9TUwo+IC0KPiAtI2RlZmluZSBUUkFQX2RpdmlkZV9lcnJvciAgICAg
IDAKPiAtI2RlZmluZSBUUkFQX2RlYnVnICAgICAgICAgICAgIDEKPiAtI2RlZmluZSBUUkFQX25t
aSAgICAgICAgICAgICAgIDIKPiAtI2RlZmluZSBUUkFQX2ludDMgICAgICAgICAgICAgIDMKPiAt
I2RlZmluZSBUUkFQX292ZXJmbG93ICAgICAgICAgIDQKPiAtI2RlZmluZSBUUkFQX2JvdW5kcyAg
ICAgICAgICAgIDUKPiAtI2RlZmluZSBUUkFQX2ludmFsaWRfb3AgICAgICAgIDYKPiAtI2RlZmlu
ZSBUUkFQX25vX2RldmljZSAgICAgICAgIDcKPiAtI2RlZmluZSBUUkFQX2RvdWJsZV9mYXVsdCAg
ICAgIDgKPiAtI2RlZmluZSBUUkFQX2NvcHJvX3NlZyAgICAgICAgIDkKPiAtI2RlZmluZSBUUkFQ
X2ludmFsaWRfdHNzICAgICAgMTAKPiAtI2RlZmluZSBUUkFQX25vX3NlZ21lbnQgICAgICAgMTEK
PiAtI2RlZmluZSBUUkFQX3N0YWNrX2Vycm9yICAgICAgMTIKPiAtI2RlZmluZSBUUkFQX2dwX2Zh
dWx0ICAgICAgICAgMTMKPiAtI2RlZmluZSBUUkFQX3BhZ2VfZmF1bHQgICAgICAgMTQKPiAtI2Rl
ZmluZSBUUkFQX3NwdXJpb3VzX2ludCAgICAgMTUKPiAtI2RlZmluZSBUUkFQX2NvcHJvX2Vycm9y
ICAgICAgMTYKPiAtI2RlZmluZSBUUkFQX2FsaWdubWVudF9jaGVjayAgMTcKPiAtI2RlZmluZSBU
UkFQX21hY2hpbmVfY2hlY2sgICAgMTgKPiAtI2RlZmluZSBUUkFQX3NpbWRfZXJyb3IgICAgICAg
MTkKPiAtI2RlZmluZSBUUkFQX2RlZmVycmVkX25taSAgICAgMzEKPiAtI2RlZmluZSBUUkFQX3hl
bl9jYWxsYmFjayAgICAgMzIKPiAgIAo+ICAgI2RlZmluZSBMT0NLX1BSRUZJWCAiIgo+ICAgI2Rl
ZmluZSBBRERSICgqKHZvbGF0aWxlIGxvbmcgKilhZGRyKQo+IEBAIC05Nyw4ICs3MSw2IEBAIHR5
cGVkZWYgdW5zaWduZWQgbG9uZyB1X2xvbmc7Cj4gICAKPiAgIGV4dGVybiBzaGFyZWRfaW5mb190
ICpIWVBFUlZJU09SX3NoYXJlZF9pbmZvOwo+ICAgCj4gLXZvaWQgYXJjaF9maW5pKHZvaWQpOwo+
IC0KPiAgICNpbmNsdWRlIDx4ZW4teDg2L2lycS5oPgo+ICAgCj4gICAKPiBAQCAtMTEyLDEyICs4
NCw2IEBAIHR5cGVkZWYgc3RydWN0IHsKPiAgIH0gYXRvbWljX3Q7Cj4gICAKPiAgIAo+IC0vKioq
KioqKioqKioqKioqKioqKioqIGNvbW1vbiBpMzg2IGFuZCB4ODZfNjQgICoqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCj4gLSNkZWZpbmUgeGVuX21iKCkgbWIoKQo+IC0jZGVmaW5lIHhlbl9y
bWIoKSBybWIoKQo+IC0jZGVmaW5lIHhlbl93bWIoKSB3bWIoKQo+IC0jZGVmaW5lIHhlbl9iYXJy
aWVyKCkgYXNtIHZvbGF0aWxlKCIiIDogOiA6ICJtZW1vcnkiKQo+IC0KPiAgIHZvaWQgYmxvY2tf
ZG9tYWluKF9fc25zZWMgdW50aWwpOwo+ICAgCj4gICAjZW5kaWYgLyogbm90IGFzc2VtYmx5ICov
Cj4gZGlmZiAtLWdpdCBhL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni90cmFwcy5oIGIvcGxhdC94
ZW4vaW5jbHVkZS94ZW4teDg2L3RyYXBzLmgKPiBpbmRleCA0OThhZjc2Li5jNTg1YTZlIDEwMDY0
NAo+IC0tLSBhL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni90cmFwcy5oCj4gKysrIGIvcGxhdC94
ZW4vaW5jbHVkZS94ZW4teDg2L3RyYXBzLmgKPiBAQCAtMzUsMTggKzM1LDIzIEBACj4gICAjaWZu
ZGVmIF9UUkFQU19IXwo+ICAgI2RlZmluZSBfVFJBUFNfSF8KPiAgIAo+IC0jaW5jbHVkZSA8eDg2
L3JlZ3MuaD4KPiArI2luY2x1ZGUgPHN0ZGludC5oPgo+ICsjaW5jbHVkZSA8eDg2L3RyYXBzLmg+
Cj4gICAKPiAtI2RlZmluZSBwdF9yZWdzIF9fcmVncwo+ICsjaW5jbHVkZSA8eGVuL3hlbi5oPgo+
ICAgCj4gLXZvaWQgZHVtcF9yZWdzKHN0cnVjdCBwdF9yZWdzICpyZWdzKTsKPiAtdm9pZCBzdGFj
a193YWxrKHZvaWQpOwo+ICsjZGVmaW5lIFRSQVBfY29wcm9jX3NlZ19vdmVycnVuICA5Cj4gKyNk
ZWZpbmUgVFJBUF9zcHVyaW91c19pbnQgICAgICAgIDE1Cj4gKyNkZWZpbmUgVFJBUF94ZW5fY2Fs
bGJhY2sgICAgICAgIDMyCj4gICAKPiAtI2RlZmluZSBUUkFQX1BGX1BST1QgICAweDEKPiAtI2Rl
ZmluZSBUUkFQX1BGX1dSSVRFICAweDIKPiAtI2RlZmluZSBUUkFQX1BGX1VTRVIgICAweDQKPiAr
LyogQXNzZW1ibGVyIHN0dWJzICovCj4gK0RFQ0xBUkVfQVNNX1RSQVAoY29wcm9jX3NlZ19vdmVy
cnVuKTsKPiArREVDTEFSRV9BU01fVFJBUChzcHVyaW91c19pbnQpOwo+ICtERUNMQVJFX0FTTV9U
UkFQKGh5cGVydmlzb3JfY2FsbGJhY2spOwo+ICt2b2lkIGFzbV9mYWlsc2FmZV9jYWxsYmFjayh2
b2lkKTsKPiAgIAo+IC12b2lkIHRyYXBfaW5pdCh2b2lkKTsKPiAtdm9pZCB0cmFwX2Zpbmkodm9p
ZCk7Cj4gKyNkZWZpbmUgX19LRVJORUxfQ1MgICAgIEZMQVRfS0VSTkVMX0NTCj4gKyNkZWZpbmUg
X19LRVJORUxfRFMgICAgIEZMQVRfS0VSTkVMX0RTCj4gKyNkZWZpbmUgX19LRVJORUxfU1MgICAg
IEZMQVRfS0VSTkVMX1NTCj4gICAKPiAgICNlbmRpZiAvKiBfVFJBUFNfSF8gKi8KPiBkaWZmIC0t
Z2l0IGEvcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jIGIvcGxhdC94ZW4veDg2L2FyY2hfdGltZS5j
Cj4gaW5kZXggOWU5ZjFiZi4uMDYyMWQ5MCAxMDA2NDQKPiAtLS0gYS9wbGF0L3hlbi94ODYvYXJj
aF90aW1lLmMKPiArKysgYi9wbGF0L3hlbi94ODYvYXJjaF90aW1lLmMKPiBAQCAtMjM1LDcgKzIz
NSw3IEBAIHZvaWQgYmxvY2tfZG9tYWluKF9fc25zZWMgdW50aWwpCj4gICB9Cj4gICAKPiAgIHN0
YXRpYyB2b2lkIHRpbWVyX2hhbmRsZXIoZXZ0Y2huX3BvcnRfdCBldiBfX3VudXNlZCwKPiAtCQlz
dHJ1Y3QgcHRfcmVncyAqcmVncyBfX3VudXNlZCwgdm9pZCAqaWduIF9fdW51c2VkKQo+ICsJCXN0
cnVjdCBfX3JlZ3MgKnJlZ3MgX191bnVzZWQsIHZvaWQgKmlnbiBfX3VudXNlZCkKPiAgIHsKPiAg
IAlfX25zZWMgdW50aWwgPSB1a3BsYXRfbW9ub3RvbmljX2Nsb2NrKCkgKyB1a2FyY2hfdGltZV9t
c2VjX3RvX25zZWMoMSk7Cj4gICAKPiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4veDg2L2VudHJ5NjQu
UyBiL3BsYXQveGVuL3g4Ni9lbnRyeTY0LlMKPiBpbmRleCA4MTA5Y2NiLi5kYjljNjE1IDEwMDY0
NAo+IC0tLSBhL3BsYXQveGVuL3g4Ni9lbnRyeTY0LlMKPiArKysgYi9wbGF0L3hlbi94ODYvZW50
cnk2NC5TCj4gQEAgLTI1LDcgKzI1LDcgQEAKPiAgIAo+ICAgI2luY2x1ZGUgPHVrL2FyY2gvdHlw
ZXMuaD4KPiAgICNpbmNsdWRlIDx1ay9hcmNoL2xpbWl0cy5oPgo+IC0jaW5jbHVkZSA8eDg2L3Jl
Z3MuaD4KPiArI2luY2x1ZGUgPHg4Ni90cmFwcy5oPgo+ICAgI2luY2x1ZGUgPHVrL2NvbmZpZy5o
Pgo+ICAgI2luY2x1ZGUgPHhlbi94ZW4uaD4KPiAgICNpbmNsdWRlIDx4ZW4vZWxmbm90ZS5oPgo+
IEBAIC0xMTUsNiArMTE1LDE1IEBAIEtFUk5FTF9DU19NQVNLID0gMHhmYwo+ICAgCWptcCBlcnJv
cl9lbnRyeQo+ICAgLmVuZG0KPiAgIAo+ICsubWFjcm8gVFJBUF9FTlRSWSB0cmFwbmFtZSwgaGFz
X2VjCj4gK0VOVFJZKEFTTV9UUkFQX1NZTShcdHJhcG5hbWUpKQo+ICsuaWYgXGhhc19lYwo+ICsJ
ZXJyb3JlbnRyeSBkb19cdHJhcG5hbWUKPiArLmVsc2UKPiArCXplcm9lbnRyeSAgZG9fXHRyYXBu
YW1lCj4gKy5lbmRpZgo+ICsuZW5kbQo+ICsKPiAgIC5tYWNybyBSRVNUT1JFX0FMTAo+ICAgCW1v
dnEgT0ZGU0VUT0ZfUkVHU19SMTUoJXJzcCksICVyMTUKPiAgIAltb3ZxIE9GRlNFVE9GX1JFR1Nf
UjE0KCVyc3ApLCAlcjE0Cj4gQEAgLTE5NCw3ICsyMDMsNyBAQCBlcnJvcl9lbnRyeToKPiAgIC8q
Cj4gICAgKiBYZW4gZXZlbnQgKHZpcnR1YWwgaW50ZXJydXB0KSBlbnRyeSBwb2ludC4KPiAgICAq
Lwo+IC1FTlRSWShoeXBlcnZpc29yX2NhbGxiYWNrKQo+ICtFTlRSWShBU01fVFJBUF9TWU0oaHlw
ZXJ2aXNvcl9jYWxsYmFjaykpCj4gICAJemVyb2VudHJ5IGh5cGVydmlzb3JfY2FsbGJhY2syCj4g
ICAKPiAgIGh5cGVydmlzb3JfY2FsbGJhY2syOgo+IEBAIC0yNTAsNyArMjU5LDcgQEAgZWNyaXQ6
ICAvKioqKiBFTkQgT0YgQ1JJVElDQUwgUkVHSU9OICoqKiovCj4gICBoeXBlcnZpc29yX3Byb2xv
Z3VlOgo+ICAgCXB1c2hxICVyMTEKPiAgIAlwdXNocSAlcmN4Cj4gLQlqbXAgaHlwZXJ2aXNvcl9j
YWxsYmFjawo+ICsJam1wIEFTTV9UUkFQX1NZTShoeXBlcnZpc29yX2NhbGxiYWNrKQo+ICAgCj4g
ICAjIFtIb3cgd2UgZG8gdGhlIGZpeHVwXS4gV2Ugd2FudCB0byBtZXJnZSB0aGUgY3VycmVudCBz
dGFjayBmcmFtZSB3aXRoIHRoZQo+ICAgIyBqdXN0LWludGVycnVwdGVkIGZyYW1lLiBIb3cgd2Ug
ZG8gdGhpcyBkZXBlbmRzIG9uIHdoZXJlIGluIHRoZSBjcml0aWNhbAo+IEBAIC0yOTcsMTMgKzMw
NiwxMCBAQCBlcnJvcl9leGl0Ogo+ICAgLyoKPiAgICAqIFhlbiBldmVudCAodmlydHVhbCBpbnRl
cnJ1cHQpIGVudHJ5IHBvaW50Lgo+ICAgICovCj4gLUVOVFJZKGh5cGVydmlzb3JfY2FsbGJhY2sp
Cj4gLQl6ZXJvZW50cnkgZG9faHlwZXJ2aXNvcl9jYWxsYmFjawo+IC0KPiAtCj4gK1RSQVBfRU5U
UlkgaHlwZXJ2aXNvcl9jYWxsYmFjaywgMAo+ICAgI2VuZGlmCj4gICAKPiAtRU5UUlkoZmFpbHNh
ZmVfY2FsbGJhY2spCj4gK0VOVFJZKGFzbV9mYWlsc2FmZV9jYWxsYmFjaykKPiAgICNpZmRlZiBD
T05GSUdfUEFSQVZJUlQKPiAgICAgICAgICAgcG9wcSAgJXJjeAo+ICAgICAgICAgICBwb3BxICAl
cjExCj4gQEAgLTMxMSw3MiArMzE3LDI4IEBAIEVOVFJZKGZhaWxzYWZlX2NhbGxiYWNrKQo+ICAg
ICAgICAgICBpcmV0cQo+ICAgCj4gICAKPiAtRU5UUlkoY29wcm9jZXNzb3JfZXJyb3IpCj4gLSAg
ICAgICAgemVyb2VudHJ5IGRvX2NvcHJvY2Vzc29yX2Vycm9yCj4gLQo+IC0KPiAtRU5UUlkoc2lt
ZF9jb3Byb2Nlc3Nvcl9lcnJvcikKPiAtICAgICAgICB6ZXJvZW50cnkgZG9fc2ltZF9jb3Byb2Nl
c3Nvcl9lcnJvcgo+IC0KPiAtCj4gLUVOVFJZKGRldmljZV9ub3RfYXZhaWxhYmxlKQo+IC0gICAg
ICAgIHplcm9lbnRyeSBkb19kZXZpY2Vfbm90X2F2YWlsYWJsZQo+IC0KPiAtCj4gLUVOVFJZKGRl
YnVnKQo+IC0gICAgICAgIHplcm9lbnRyeSBkb19kZWJ1Zwo+IC0KPiAtCj4gLUVOVFJZKGludDMp
Cj4gLSAgICAgICAgemVyb2VudHJ5IGRvX2ludDMKPiAtCj4gLUVOVFJZKG92ZXJmbG93KQo+IC0g
ICAgICAgIHplcm9lbnRyeSBkb19vdmVyZmxvdwo+IC0KPiAtCj4gLUVOVFJZKGJvdW5kcykKPiAt
ICAgICAgICB6ZXJvZW50cnkgZG9fYm91bmRzCj4gLQo+IC0KPiAtRU5UUlkoaW52YWxpZF9vcCkK
PiAtICAgICAgICB6ZXJvZW50cnkgZG9faW52YWxpZF9vcAo+IC0KPiAtCj4gLUVOVFJZKGNvcHJv
Y2Vzc29yX3NlZ21lbnRfb3ZlcnJ1bikKPiAtICAgICAgICB6ZXJvZW50cnkgZG9fY29wcm9jZXNz
b3Jfc2VnbWVudF9vdmVycnVuCj4gLQo+IC0KPiAtRU5UUlkoaW52YWxpZF9UU1MpCj4gLSAgICAg
ICAgZXJyb3JlbnRyeSBkb19pbnZhbGlkX1RTUwo+IC0KPiAtCj4gLUVOVFJZKHNlZ21lbnRfbm90
X3ByZXNlbnQpCj4gLSAgICAgICAgZXJyb3JlbnRyeSBkb19zZWdtZW50X25vdF9wcmVzZW50Cj4g
LQo+IC0KPiAtLyogcnVucyBvbiBleGNlcHRpb24gc3RhY2sgKi8KPiAtRU5UUlkoc3RhY2tfc2Vn
bWVudCkKPiAtICAgICAgICBlcnJvcmVudHJ5IGRvX3N0YWNrX3NlZ21lbnQKPiAtCj4gLQo+IC1F
TlRSWShnZW5lcmFsX3Byb3RlY3Rpb24pCj4gLSAgICAgICAgZXJyb3JlbnRyeSBkb19nZW5lcmFs
X3Byb3RlY3Rpb24KPiAtCj4gLQo+IC1FTlRSWShhbGlnbm1lbnRfY2hlY2spCj4gLSAgICAgICAg
ZXJyb3JlbnRyeSBkb19hbGlnbm1lbnRfY2hlY2sKPiAtCj4gLQo+IC1FTlRSWShkaXZpZGVfZXJy
b3IpCj4gLSAgICAgICAgemVyb2VudHJ5IGRvX2RpdmlkZV9lcnJvcgo+IC0KPiAtCj4gLUVOVFJZ
KHNwdXJpb3VzX2ludGVycnVwdF9idWcpCj4gLSAgICAgICAgemVyb2VudHJ5IGRvX3NwdXJpb3Vz
X2ludGVycnVwdF9idWcKPiAtCj4gK1RSQVBfRU5UUlkgZGl2aWRlX2Vycm9yLCAgICAgICAgMAo+
ICtUUkFQX0VOVFJZIGRlYnVnLCAgICAgICAgICAgICAgIDAKPiArLyogbm8gTk1JICovCj4gK1RS
QVBfRU5UUlkgaW50MywgICAgICAgICAgICAgICAgMAo+ICtUUkFQX0VOVFJZIG92ZXJmbG93LCAg
ICAgICAgICAgIDAKPiArVFJBUF9FTlRSWSBib3VuZHMsICAgICAgICAgICAgICAwCj4gK1RSQVBf
RU5UUlkgaW52YWxpZF9vcCwgICAgICAgICAgMAo+ICtUUkFQX0VOVFJZIG5vX2RldmljZSwgICAg
ICAgICAgIDAKPiArLyogbm8gRG91YmxlIEZhdWx0ICovCj4gK1RSQVBfRU5UUlkgY29wcm9jX3Nl
Z19vdmVycnVuLCAgMAo+ICtUUkFQX0VOVFJZIGludmFsaWRfdHNzLCAgICAgICAgIDEKPiArVFJB
UF9FTlRSWSBub19zZWdtZW50LCAgICAgICAgICAxCj4gK1RSQVBfRU5UUlkgc3RhY2tfZXJyb3Is
ICAgICAgICAgMSAvKiBydW5zIG9uIGV4Y2VwdGlvbiBzdGFjayAqLwo+ICtUUkFQX0VOVFJZIGdw
X2ZhdWx0LCAgICAgICAgICAgIDEKPiArVFJBUF9FTlRSWSBwYWdlX2ZhdWx0LCAgICAgICAgICAx
Cj4gK1RSQVBfRU5UUlkgc3B1cmlvdXNfaW50LCAgICAgICAgMQo+ICtUUkFQX0VOVFJZIGNvcHJv
Y19lcnJvciwgICAgICAgIDAKPiArVFJBUF9FTlRSWSBhbGlnbm1lbnRfY2hlY2ssICAgICAxCj4g
Ky8qIG5vIE1hY2hpbmUgQ2hlY2sgKi8KPiArVFJBUF9FTlRSWSBzaW1kX2Vycm9yLCAgICAgICAg
ICAwCj4gKy8qIG5vIFZpcnR1YWxpemF0aW9uIEV4Y2VwdGlvbiAqLwo+ICAgCj4gLUVOVFJZKHBh
Z2VfZmF1bHQpCj4gLSAgICAgICAgZXJyb3JlbnRyeSBkb19wYWdlX2ZhdWx0Cj4gICAKPiAgICNp
ZiBIQVZFX1NDSEVECj4gICBFTlRSWSh0aHJlYWRfc3RhcnRlcikKPiBkaWZmIC0tZ2l0IGEvcGxh
dC94ZW4veDg2L3NldHVwLmMgYi9wbGF0L3hlbi94ODYvc2V0dXAuYwo+IGluZGV4IDIxZTQ3ODYu
LjEwZjkzOWQgMTAwNjQ0Cj4gLS0tIGEvcGxhdC94ZW4veDg2L3NldHVwLmMKPiArKysgYi9wbGF0
L3hlbi94ODYvc2V0dXAuYwo+IEBAIC0xMTMsNyArMTEzLDcgQEAgc3RydWN0IHVrcGxhdF9tZW1y
ZWdpb25fZGVzYyBfbGlieGVucGxhdF9tcmRbVUtQTEFUX01FTVJEX01BWF9FTlRSSUVTXTsKPiAg
IAo+ICAgc3RhdGljIGlubGluZSB2b2lkIF9pbml0X3RyYXBzKHZvaWQpCj4gICB7Cj4gLQl0cmFw
X2luaXQoKTsKPiArCXRyYXBzX2luaXQoKTsKPiAgIH0KPiAgIAo+ICAgc3RhdGljIGlubGluZSB2
b2lkIF9pbml0X2NwdWZlYXR1cmVzKHZvaWQpCj4gZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni90
cmFwcy5jIGIvcGxhdC94ZW4veDg2L3RyYXBzLmMKPiBpbmRleCBkYTNjYTlhLi5iYmEzYzQyIDEw
MDY0NAo+IC0tLSBhL3BsYXQveGVuL3g4Ni90cmFwcy5jCj4gKysrIGIvcGxhdC94ZW4veDg2L3Ry
YXBzLmMKPiBAQCAtMjMsMTcyICsyMywyMiBAQAo+ICAgICovCj4gICAvKiBUYWtlbiBmcm9tIE1p
bmktT1MgKi8KPiAgIAo+ICsjaW5jbHVkZSA8c3RkZGVmLmg+Cj4gICAjaW5jbHVkZSA8eGVuLXg4
Ni90cmFwcy5oPgo+IC0jaW5jbHVkZSA8eGVuLXg4Ni9vcy5oPgo+ICsjaW5jbHVkZSA8eGVuLXg4
Ni9oeXBlcmNhbGwuaD4KPiAgICNpbmNsdWRlIDx1ay9wcmludC5oPgo+ICAgCj4gLS8qCj4gLSAq
IFRoZXNlIGFyZSBhc3NlbWJsZXIgc3R1YnMgaW4gZW50cnkuUy4KPiAtICogVGhleSBhcmUgdGhl
IGFjdHVhbCBlbnRyeSBwb2ludHMgZm9yIHZpcnR1YWwgZXhjZXB0aW9ucy4KPiAtICovCj4gLXZv
aWQgZGl2aWRlX2Vycm9yKHZvaWQpOwo+IC12b2lkIGRlYnVnKHZvaWQpOwo+IC12b2lkIGludDMo
dm9pZCk7Cj4gLXZvaWQgb3ZlcmZsb3codm9pZCk7Cj4gLXZvaWQgYm91bmRzKHZvaWQpOwo+IC12
b2lkIGludmFsaWRfb3Aodm9pZCk7Cj4gLXZvaWQgZGV2aWNlX25vdF9hdmFpbGFibGUodm9pZCk7
Cj4gLXZvaWQgY29wcm9jZXNzb3Jfc2VnbWVudF9vdmVycnVuKHZvaWQpOwo+IC12b2lkIGludmFs
aWRfVFNTKHZvaWQpOwo+IC12b2lkIHNlZ21lbnRfbm90X3ByZXNlbnQodm9pZCk7Cj4gLXZvaWQg
c3RhY2tfc2VnbWVudCh2b2lkKTsKPiAtdm9pZCBnZW5lcmFsX3Byb3RlY3Rpb24odm9pZCk7Cj4g
LXZvaWQgcGFnZV9mYXVsdCh2b2lkKTsKPiAtdm9pZCBjb3Byb2Nlc3Nvcl9lcnJvcih2b2lkKTsK
PiAtdm9pZCBzaW1kX2NvcHJvY2Vzc29yX2Vycm9yKHZvaWQpOwo+IC12b2lkIGFsaWdubWVudF9j
aGVjayh2b2lkKTsKPiAtdm9pZCBzcHVyaW91c19pbnRlcnJ1cHRfYnVnKHZvaWQpOwo+IC12b2lk
IG1hY2hpbmVfY2hlY2sodm9pZCk7Cj4gKy8qIFRyYXBzIHVzZWQgb25seSBvbiBYZW4gKi8KPiAg
IAo+IC0jZGVmaW5lIGRvX2V4aXQoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+IC0JZm9yICg7OykgeyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4gLQl9Cj4g
K0RFQ0xBUkVfVFJBUF9FQyhjb3Byb2Nfc2VnX292ZXJydW4sICJjb3Byb2Nlc3NvciBzZWdtZW50
IG92ZXJydW4iKQo+ICtERUNMQVJFX1RSQVAgICAoc3B1cmlvdXNfaW50LCAgICAgICAic3B1cmlv
dXMgaW50ZXJydXB0IGJ1ZyIpCj4gICAKPiAtc3RhdGljIHZvaWQgZG9fdHJhcChpbnQgdHJhcG5y
LCBjaGFyICpzdHIsIHN0cnVjdCBfX3JlZ3MgKnJlZ3MsCj4gLQkJICAgIHVuc2lnbmVkIGxvbmcg
ZXJyb3JfY29kZSkKPiAtewo+IC0JdWtfcHJpbnRrKCJGQVRBTDogIFVuaGFuZGxlZCBUcmFwICVk
ICglcyksIGVycm9yIGNvZGU9MHglbHhcbiIsIHRyYXBuciwKPiAtCQkgIHN0ciwgZXJyb3JfY29k
ZSk7Cj4gLQl1a19wcmludGsoIlJlZ3MgYWRkcmVzcyAlcFxuIiwgcmVncyk7Cj4gLQlkdW1wX3Jl
Z3MocmVncyk7Cj4gLX0KPiAtCj4gLSNkZWZpbmUgRE9fRVJST1IodHJhcG5yLCBzdHIsIG5hbWUp
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4gLQl2b2lkIGRv
XyMjbmFtZShzdHJ1Y3QgX19yZWdzICpyZWdzLCB1bnNpZ25lZCBsb25nIGVycm9yX2NvZGUpICAg
ICAgICAgIFwKPiAtCXsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+IC0JCWRvX3RyYXAodHJhcG5yLCBzdHIsIHJl
Z3MsIGVycm9yX2NvZGUpOyAgICAgICAgICAgICAgICAgICAgICAgIFwKPiAtCX0KPiAtCj4gLSNk
ZWZpbmUgRE9fRVJST1JfSU5GTyh0cmFwbnIsIHN0ciwgbmFtZSwgc2ljb2RlLCBzaWFkZHIpICAg
ICAgICAgICAgICAgICAgICAgICBcCj4gLQl2b2lkIGRvXyMjbmFtZShzdHJ1Y3QgX19yZWdzICpy
ZWdzLCB1bnNpZ25lZCBsb25nIGVycm9yX2NvZGUpICAgICAgICAgIFwKPiAtCXsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAo+IC0JCWRvX3RyYXAodHJhcG5yLCBzdHIsIHJlZ3MsIGVycm9yX2NvZGUpOyAgICAgICAg
ICAgICAgICAgICAgICAgIFwKPiAtCX0KPiAtCj4gLURPX0VSUk9SX0lORk8oMCwgImRpdmlkZSBl
cnJvciIsIGRpdmlkZV9lcnJvciwgRlBFX0lOVERJViwgcmVncy0+ZWlwKQo+IC1ET19FUlJPUigz
LCAiaW50MyIsIGludDMpCj4gLURPX0VSUk9SKDQsICJvdmVyZmxvdyIsIG92ZXJmbG93KQo+IC1E
T19FUlJPUig1LCAiYm91bmRzIiwgYm91bmRzKQo+IC1ET19FUlJPUl9JTkZPKDYsICJpbnZhbGlk
IG9wZXJhbmQiLCBpbnZhbGlkX29wLCBJTExfSUxMT1BOLCByZWdzLT5laXApCj4gLURPX0VSUk9S
KDcsICJkZXZpY2Ugbm90IGF2YWlsYWJsZSIsIGRldmljZV9ub3RfYXZhaWxhYmxlKQo+IC1ET19F
UlJPUig5LCAiY29wcm9jZXNzb3Igc2VnbWVudCBvdmVycnVuIiwgY29wcm9jZXNzb3Jfc2VnbWVu
dF9vdmVycnVuKQo+IC1ET19FUlJPUigxMCwgImludmFsaWQgVFNTIiwgaW52YWxpZF9UU1MpCj4g
LURPX0VSUk9SKDExLCAic2VnbWVudCBub3QgcHJlc2VudCIsIHNlZ21lbnRfbm90X3ByZXNlbnQp
Cj4gLURPX0VSUk9SKDEyLCAic3RhY2sgc2VnbWVudCIsIHN0YWNrX3NlZ21lbnQpCj4gLURPX0VS
Uk9SX0lORk8oMTcsICJhbGlnbm1lbnQgY2hlY2siLCBhbGlnbm1lbnRfY2hlY2ssIEJVU19BRFJB
TE4sIDApCj4gLURPX0VSUk9SKDE4LCAibWFjaGluZSBjaGVjayIsIG1hY2hpbmVfY2hlY2spCj4g
LQo+IC1zdGF0aWMgaW50IGhhbmRsaW5nX3BnX2ZhdWx0Owo+IC0KPiAtdm9pZCBkb19wYWdlX2Zh
dWx0KHN0cnVjdCBfX3JlZ3MgKnJlZ3MsIHVuc2lnbmVkIGxvbmcgZXJyb3JfY29kZSkKPiAtewo+
IC0JdW5zaWduZWQgbG9uZyBhZGRyID0gcmVhZF9jcjIoKTsKPiAtCXN0cnVjdCBzY2hlZF9zaHV0
ZG93biBzY2hlZF9zaHV0ZG93biA9IHsucmVhc29uID0gU0hVVERPV05fY3Jhc2h9Owo+ICAgCj4g
LQkvKiBJZiB3ZSBhcmUgYWxyZWFkeSBoYW5kbGluZyBhIHBhZ2UgZmF1bHQsIGFuZCBnb3QgYW5v
dGhlciBvbmUKPiAtCSAqIHRoYXQgbWVhbnMgd2UgZmF1bHRlZCBpbiBwYWdldGFibGUgd2Fsay4g
Q29udGludWluZyBoZXJlIHdvdWxkIGNhdXNlCj4gLQkgKiBhIHJlY3Vyc2l2ZSBmYXVsdAo+IC0J
ICovCj4gLQlpZiAoaGFuZGxpbmdfcGdfZmF1bHQgPT0gMSkgewo+IC0JCXVrX3ByaW50aygiUGFn
ZSBmYXVsdCBpbiBwYWdldGFibGUgd2FsayAoYWNjZXNzIHRvIGludmFsaWQgbWVtb3J5PykuXG4i
KTsKPiAtCQlIWVBFUlZJU09SX3NjaGVkX29wKFNDSEVET1Bfc2h1dGRvd24sICZzY2hlZF9zaHV0
ZG93bik7Cj4gLQl9Cj4gLQloYW5kbGluZ19wZ19mYXVsdCsrOwo+IC0JYmFycmllcigpOwo+IC0K
PiAtI2lmZGVmIF9fWDg2XzY0X18KPiAtCXVrX3ByaW50aygiUGFnZSBmYXVsdCBhdCBsaW5lYXIg
YWRkcmVzcyAlbHgsIHJpcCAlbHgsIHJlZ3MgJXAsIHNwICVseCwgb3VyX3NwICVwLCBjb2RlICVs
eFxuIiwKPiAtCQkgIGFkZHIsIHJlZ3MtPnJpcCwgcmVncywgcmVncy0+cnNwLCAmYWRkciwgZXJy
b3JfY29kZSk7Cj4gLSNlbHNlCj4gLQl1a19wcmludGsoIlBhZ2UgZmF1bHQgYXQgbGluZWFyIGFk
ZHJlc3MgJWx4LCBlaXAgJWx4LCByZWdzICVwLCBzcCAlbHgsIG91cl9zcCAlcCwgY29kZSAlbHhc
biIsCj4gLQkJICBhZGRyLCByZWdzLT5laXAsIHJlZ3MsIHJlZ3MtPmVzcCwgJmFkZHIsIGVycm9y
X2NvZGUpOwo+IC0jZW5kaWYKPiAtCj4gLQlkdW1wX3JlZ3MocmVncyk7Cj4gLSNpZmRlZiBfX1g4
Nl82NF9fCj4gLQlzdGFja193YWxrX2Zvcl9mcmFtZShyZWdzLT5yYnApOwo+IC0JZHVtcF9tZW0o
cmVncy0+cnNwKTsKPiAtCWR1bXBfbWVtKHJlZ3MtPnJicCk7Cj4gLQlkdW1wX21lbShyZWdzLT5y
aXApOwo+IC0jZWxzZQo+IC0JZG9fc3RhY2tfd2FsayhyZWdzLT5lYnApOwo+IC0JZHVtcF9tZW0o
cmVncy0+ZXNwKTsKPiAtCWR1bXBfbWVtKHJlZ3MtPmVicCk7Cj4gLQlkdW1wX21lbShyZWdzLT5l
aXApOwo+IC0jZW5kaWYKPiAtCUhZUEVSVklTT1Jfc2NoZWRfb3AoU0NIRURPUF9zaHV0ZG93biwg
JnNjaGVkX3NodXRkb3duKTsKPiAtCS8qIFdlIHNob3VsZCBuZXZlciBnZXQgaGVyZSAuLi4gYnV0
IHN0aWxsICovCj4gLQloYW5kbGluZ19wZ19mYXVsdC0tOwo+IC19Cj4gLQo+IC12b2lkIGRvX2dl
bmVyYWxfcHJvdGVjdGlvbihzdHJ1Y3QgX19yZWdzICpyZWdzLCBsb25nIGVycm9yX2NvZGUpCj4g
LXsKPiAtCXN0cnVjdCBzY2hlZF9zaHV0ZG93biBzY2hlZF9zaHV0ZG93biA9IHsucmVhc29uID0g
U0hVVERPV05fY3Jhc2h9Owo+IC0jaWZkZWYgX19YODZfNjRfXwo+IC0JdWtfcHJpbnRrKCJHUEYg
cmlwOiAlbHgsIGVycm9yX2NvZGU9JWx4XG4iLCByZWdzLT5yaXAsIGVycm9yX2NvZGUpOwo+IC0j
ZWxzZQo+IC0JdWtfcHJpbnRrKCJHUEYgZWlwOiAlbHgsIGVycm9yX2NvZGU9JWx4XG4iLCByZWdz
LT5laXAsIGVycm9yX2NvZGUpOwo+IC0jZW5kaWYKPiAtCWR1bXBfcmVncyhyZWdzKTsKPiAtI2lm
ZGVmIF9fWDg2XzY0X18KPiAtCXN0YWNrX3dhbGtfZm9yX2ZyYW1lKHJlZ3MtPnJicCk7Cj4gLQlk
dW1wX21lbShyZWdzLT5yc3ApOwo+IC0JZHVtcF9tZW0ocmVncy0+cmJwKTsKPiAtCWR1bXBfbWVt
KHJlZ3MtPnJpcCk7Cj4gLSNlbHNlCj4gLQlkb19zdGFja193YWxrKHJlZ3MtPmVicCk7Cj4gLQlk
dW1wX21lbShyZWdzLT5lc3ApOwo+IC0JZHVtcF9tZW0ocmVncy0+ZWJwKTsKPiAtCWR1bXBfbWVt
KHJlZ3MtPmVpcCk7Cj4gLSNlbmRpZgo+IC0JSFlQRVJWSVNPUl9zY2hlZF9vcChTQ0hFRE9QX3No
dXRkb3duLCAmc2NoZWRfc2h1dGRvd24pOwo+IC19Cj4gLQo+IC12b2lkIGRvX2RlYnVnKHN0cnVj
dCBfX3JlZ3MgKnJlZ3MpCj4gLXsKPiAtCXVrX3ByaW50aygiRGVidWcgZXhjZXB0aW9uXG4iKTsK
PiAtI2RlZmluZSBURl9NQVNLIDB4MTAwCj4gLQlyZWdzLT5lZmxhZ3MgJj0gflRGX01BU0s7Cj4g
LQlkdW1wX3JlZ3MocmVncyk7Cj4gLQlkb19leGl0KCk7Cj4gLX0KPiAtCj4gLXZvaWQgZG9fY29w
cm9jZXNzb3JfZXJyb3Ioc3RydWN0IF9fcmVncyAqcmVncykKPiAtewo+IC0JdWtfcHJpbnRrKCJD
b3BybyBlcnJvclxuIik7Cj4gLQlkdW1wX3JlZ3MocmVncyk7Cj4gLQlkb19leGl0KCk7Cj4gLX0K
PiAtCj4gLXZvaWQgc2ltZF9tYXRoX2Vycm9yKHZvaWQgKmVpcCBfX3VudXNlZCkKPiAtewo+IC0J
dWtfcHJpbnRrKCJTSU1EIGVycm9yXG4iKTsKPiAtfQo+IC0KPiAtdm9pZCBkb19zaW1kX2NvcHJv
Y2Vzc29yX2Vycm9yKHN0cnVjdCBfX3JlZ3MgKnJlZ3MgX191bnVzZWQpCj4gLXsKPiAtCXVrX3By
aW50aygiU0lNRCBjb3BybyBlcnJvclxuIik7Cj4gLX0KPiAtCj4gLXZvaWQgZG9fc3B1cmlvdXNf
aW50ZXJydXB0X2J1ZyhzdHJ1Y3QgX19yZWdzICpyZWdzIF9fdW51c2VkKQo+IC17Cj4gLX0KPiAr
I2lmZGVmIENPTkZJR19QQVJBVklSVAo+ICAgCj4gLS8qIEFzc2VtYmxlciBpbnRlcmZhY2UgZm5z
IGluIGVudHJ5LlMuICovCj4gLXZvaWQgaHlwZXJ2aXNvcl9jYWxsYmFjayh2b2lkKTsKPiAtdm9p
ZCBmYWlsc2FmZV9jYWxsYmFjayh2b2lkKTsKPiArI2RlZmluZSBUUkFQX1RBQkxFX0VOVFJZKHRy
YXBuYW1lLCBwbCkgXAo+ICsJeyBUUkFQXyMjdHJhcG5hbWUsIHBsLCBfX0tFUk5FTF9DUywgKHVu
c2lnbmVkIGxvbmcpIEFTTV9UUkFQX1NZTSh0cmFwbmFtZSkgfQo+ICAgCj4gLSNpZmRlZiBDT05G
SUdfUEFSQVZJUlQKPiAgIC8qCj4gICAgKiBTdWJtaXQgYSB2aXJ0dWFsIElEVCB0byB0ZWggaHlw
ZXJ2aXNvci4gVGhpcyBjb25zaXN0cyBvZiB0dXBsZXMKPiAgICAqIChpbnRlcnJ1cHQgdmVjdG9y
LCBwcml2aWxlZ2UgcmluZywgQ1M6RUlQIG9mIGhhbmRsZXIpLgo+IEBAIC0xOTYsNDEgKzQ2LDQx
IEBAIHZvaWQgZmFpbHNhZmVfY2FsbGJhY2sodm9pZCk7Cj4gICAgKiBjYW4gdHJhcCB0byB0aGF0
IHZlY3RvciB1c2luZyBhIHNvZnR3YXJlLWludGVycnVwdCBpbnN0cnVjdGlvbiAoSU5UKS4KPiAg
ICAqLwo+ICAgc3RhdGljIHRyYXBfaW5mb190IHRyYXBfdGFibGVbXSA9IHsKPiAtCXsgIDAsIDAs
IF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylkaXZpZGVfZXJyb3IgICAgICAgICAgICAgICAg
fSwKPiAtCXsgIDEsIDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylkZWJ1ZyAgICAgICAg
ICAgICAgICAgICAgICAgfSwKPiAtCXsgIDMsIDMsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9u
ZylpbnQzICAgICAgICAgICAgICAgICAgICAgICAgfSwKPiAtCXsgIDQsIDMsIF9fS0VSTkVMX0NT
LCAodW5zaWduZWQgbG9uZylvdmVyZmxvdyAgICAgICAgICAgICAgICAgICAgfSwKPiAtCXsgIDUs
IDMsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylib3VuZHMgICAgICAgICAgICAgICAgICAg
ICAgfSwKPiAtCXsgIDYsIDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylpbnZhbGlkX29w
ICAgICAgICAgICAgICAgICAgfSwKPiAtCXsgIDcsIDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQg
bG9uZylkZXZpY2Vfbm90X2F2YWlsYWJsZSAgICAgICAgfSwKPiAtCXsgIDksIDAsIF9fS0VSTkVM
X0NTLCAodW5zaWduZWQgbG9uZyljb3Byb2Nlc3Nvcl9zZWdtZW50X292ZXJydW4gfSwKPiAtCXsg
MTAsIDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylpbnZhbGlkX1RTUyAgICAgICAgICAg
ICAgICAgfSwKPiAtCXsgMTEsIDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylzZWdtZW50
X25vdF9wcmVzZW50ICAgICAgICAgfSwKPiAtCXsgMTIsIDAsIF9fS0VSTkVMX0NTLCAodW5zaWdu
ZWQgbG9uZylzdGFja19zZWdtZW50ICAgICAgICAgICAgICAgfSwKPiAtCXsgMTMsIDAsIF9fS0VS
TkVMX0NTLCAodW5zaWduZWQgbG9uZylnZW5lcmFsX3Byb3RlY3Rpb24gICAgICAgICAgfSwKPiAt
CXsgMTQsIDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylwYWdlX2ZhdWx0ICAgICAgICAg
ICAgICAgICAgfSwKPiAtCXsgMTUsIDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylzcHVy
aW91c19pbnRlcnJ1cHRfYnVnICAgICAgfSwKPiAtCXsgMTYsIDAsIF9fS0VSTkVMX0NTLCAodW5z
aWduZWQgbG9uZyljb3Byb2Nlc3Nvcl9lcnJvciAgICAgICAgICAgfSwKPiAtCXsgMTcsIDAsIF9f
S0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylhbGlnbm1lbnRfY2hlY2sgICAgICAgICAgICAgfSwK
PiAtCXsgMTksIDAsIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9uZylzaW1kX2NvcHJvY2Vzc29y
X2Vycm9yICAgICAgfSwKPiAtCXsgIDAsIDAsICAgICAgICAgICAwLCAwICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQo+ICsJVFJBUF9UQUJMRV9FTlRSWShkaXZpZGVf
ZXJyb3IsICAgICAgICAwKSwKPiArCVRSQVBfVEFCTEVfRU5UUlkoZGVidWcsICAgICAgICAgICAg
ICAgMCksCj4gKwlUUkFQX1RBQkxFX0VOVFJZKGludDMsICAgICAgICAgICAgICAgIDMpLAo+ICsJ
VFJBUF9UQUJMRV9FTlRSWShvdmVyZmxvdywgICAgICAgICAgICAzKSwKPiArCVRSQVBfVEFCTEVf
RU5UUlkoYm91bmRzLCAgICAgICAgICAgICAgMyksCj4gKwlUUkFQX1RBQkxFX0VOVFJZKGludmFs
aWRfb3AsICAgICAgICAgIDApLAo+ICsJVFJBUF9UQUJMRV9FTlRSWShub19kZXZpY2UsICAgICAg
ICAgICAwKSwKPiArCVRSQVBfVEFCTEVfRU5UUlkoY29wcm9jX3NlZ19vdmVycnVuLCAgMCksCj4g
KwlUUkFQX1RBQkxFX0VOVFJZKGludmFsaWRfdHNzLCAgICAgICAgIDApLAo+ICsJVFJBUF9UQUJM
RV9FTlRSWShub19zZWdtZW50LCAgICAgICAgICAwKSwKPiArCVRSQVBfVEFCTEVfRU5UUlkoc3Rh
Y2tfZXJyb3IsICAgICAgICAgMCksCj4gKwlUUkFQX1RBQkxFX0VOVFJZKGdwX2ZhdWx0LCAgICAg
ICAgICAgIDApLAo+ICsJVFJBUF9UQUJMRV9FTlRSWShwYWdlX2ZhdWx0LCAgICAgICAgICAwKSwK
PiArCVRSQVBfVEFCTEVfRU5UUlkoc3B1cmlvdXNfaW50LCAgICAgICAgMCksCj4gKwlUUkFQX1RB
QkxFX0VOVFJZKGNvcHJvY19lcnJvciwgICAgICAgIDApLAo+ICsJVFJBUF9UQUJMRV9FTlRSWShh
bGlnbm1lbnRfY2hlY2ssICAgICAwKSwKPiArCVRSQVBfVEFCTEVfRU5UUlkoc2ltZF9lcnJvciwg
ICAgICAgICAgMCksCj4gKwl7IDAsIDAsIDAsIDAgfQo+ICAgfTsKPiAgIAo+IC12b2lkIHRyYXBf
aW5pdCh2b2lkKQo+ICt2b2lkIHRyYXBzX2luaXQodm9pZCkKPiAgIHsKPiAgIAlIWVBFUlZJU09S
X3NldF90cmFwX3RhYmxlKHRyYXBfdGFibGUpOwo+ICAgCj4gICAjaWZkZWYgX19pMzg2X18KPiAg
IAlIWVBFUlZJU09SX3NldF9jYWxsYmFja3MoX19LRVJORUxfQ1MsCj4gLQkJCQkgKHVuc2lnbmVk
IGxvbmcpaHlwZXJ2aXNvcl9jYWxsYmFjaywKPiAtCQkJCSBfX0tFUk5FTF9DUywgKHVuc2lnbmVk
IGxvbmcpZmFpbHNhZmVfY2FsbGJhY2spOwo+ICsJCQkJICh1bnNpZ25lZCBsb25nKSBhc21fdHJh
cF9oeXBlcnZpc29yX2NhbGxiYWNrLAo+ICsJCQkJIF9fS0VSTkVMX0NTLCAodW5zaWduZWQgbG9u
ZykgYXNtX2ZhaWxzYWZlX2NhbGxiYWNrKTsKPiAgICNlbHNlCj4gLQlIWVBFUlZJU09SX3NldF9j
YWxsYmFja3MoKHVuc2lnbmVkIGxvbmcpaHlwZXJ2aXNvcl9jYWxsYmFjaywKPiAtCQkJCSAodW5z
aWduZWQgbG9uZylmYWlsc2FmZV9jYWxsYmFjaywgMCk7Cj4gKwlIWVBFUlZJU09SX3NldF9jYWxs
YmFja3MoKHVuc2lnbmVkIGxvbmcpIGFzbV90cmFwX2h5cGVydmlzb3JfY2FsbGJhY2ssCj4gKwkJ
CQkgKHVuc2lnbmVkIGxvbmcpIGFzbV9mYWlsc2FmZV9jYWxsYmFjaywgMCk7Cj4gICAjZW5kaWYK
PiAgIH0KPiAgIAo+IC12b2lkIHRyYXBfZmluaSh2b2lkKQo+ICt2b2lkIHRyYXBzX2Zpbmkodm9p
ZCkKPiAgIHsKPiAgIAlIWVBFUlZJU09SX3NldF90cmFwX3RhYmxlKE5VTEwpOwo+ICAgfQo+IEBA
IC0yNDEsMTIgKzkxLDEyIEBAIHN0YXRpYyB1aW50OF90IGludHJfc3RhY2tbSU5UUl9TVEFDS19T
SVpFXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDE2KSkpOwo+ICAgCj4gICBod190c3MgdHNzIF9f
YXR0cmlidXRlX18oKGFsaWduZWQoMTYpKSkgPSB7Cj4gICAjaWZkZWYgX19YODZfNjRfXwo+IC0J
LnJzcDAgPSAodW5zaWduZWQgbG9uZykmaW50cl9zdGFja1tJTlRSX1NUQUNLX1NJWkVdLAo+ICsJ
LnJzcFswXSA9ICh1bnNpZ25lZCBsb25nKSZpbnRyX3N0YWNrW0lOVFJfU1RBQ0tfU0laRV0sCj4g
ICAjZWxzZQo+ICAgCS5lc3AwID0gKHVuc2lnbmVkIGxvbmcpJmludHJfc3RhY2tbSU5UUl9TVEFD
S19TSVpFXSwKPiAgIAkuc3MwID0gX19LRVJOX0RTLAo+ICAgI2VuZGlmCj4gLQkuaW9wYiA9IFg4
Nl9UU1NfSU5WQUxJRF9JT19CSVRNQVAsCj4gKwkuaW9tYXBfYmFzZSA9IFg4Nl9UU1NfSU5WQUxJ
RF9JT19CSVRNQVAsCj4gICB9Owo+ICAgCj4gICBzdGF0aWMgdm9pZCBzZXR1cF9nYXRlKHVuc2ln
bmVkIGludCBlbnRyeSwgdm9pZCAqYWRkciwgdW5zaWduZWQgaW50IGRwbCkKPiBAQCAtMjY1LDI2
ICsxMTUsMjggQEAgc3RhdGljIHZvaWQgc2V0dXBfZ2F0ZSh1bnNpZ25lZCBpbnQgZW50cnksIHZv
aWQgKmFkZHIsIHVuc2lnbmVkIGludCBkcGwpCj4gICAjZW5kaWYKPiAgIH0KPiAgIAo+IC12b2lk
IHRyYXBfaW5pdCh2b2lkKQo+ICt2b2lkIHRyYXBzX2luaXQodm9pZCkKPiAgIHsKPiAtCXNldHVw
X2dhdGUoVFJBUF9kaXZpZGVfZXJyb3IsICZkaXZpZGVfZXJyb3IsIDApOwo+IC0Jc2V0dXBfZ2F0
ZShUUkFQX2RlYnVnLCAmZGVidWcsIDApOwo+IC0Jc2V0dXBfZ2F0ZShUUkFQX2ludDMsICZpbnQz
LCAzKTsKPiAtCXNldHVwX2dhdGUoVFJBUF9vdmVyZmxvdywgJm92ZXJmbG93LCAzKTsKPiAtCXNl
dHVwX2dhdGUoVFJBUF9ib3VuZHMsICZib3VuZHMsIDApOwo+IC0Jc2V0dXBfZ2F0ZShUUkFQX2lu
dmFsaWRfb3AsICZpbnZhbGlkX29wLCAwKTsKPiAtCXNldHVwX2dhdGUoVFJBUF9ub19kZXZpY2Us
ICZkZXZpY2Vfbm90X2F2YWlsYWJsZSwgMCk7Cj4gLQlzZXR1cF9nYXRlKFRSQVBfY29wcm9fc2Vn
LCAmY29wcm9jZXNzb3Jfc2VnbWVudF9vdmVycnVuLCAwKTsKPiAtCXNldHVwX2dhdGUoVFJBUF9p
bnZhbGlkX3RzcywgJmludmFsaWRfVFNTLCAwKTsKPiAtCXNldHVwX2dhdGUoVFJBUF9ub19zZWdt
ZW50LCAmc2VnbWVudF9ub3RfcHJlc2VudCwgMCk7Cj4gLQlzZXR1cF9nYXRlKFRSQVBfc3RhY2tf
ZXJyb3IsICZzdGFja19zZWdtZW50LCAwKTsKPiAtCXNldHVwX2dhdGUoVFJBUF9ncF9mYXVsdCwg
JmdlbmVyYWxfcHJvdGVjdGlvbiwgMCk7Cj4gLQlzZXR1cF9nYXRlKFRSQVBfcGFnZV9mYXVsdCwg
JnBhZ2VfZmF1bHQsIDApOwo+IC0Jc2V0dXBfZ2F0ZShUUkFQX3NwdXJpb3VzX2ludCwgJnNwdXJp
b3VzX2ludGVycnVwdF9idWcsIDApOwo+IC0Jc2V0dXBfZ2F0ZShUUkFQX2NvcHJvX2Vycm9yLCAm
Y29wcm9jZXNzb3JfZXJyb3IsIDApOwo+IC0Jc2V0dXBfZ2F0ZShUUkFQX2FsaWdubWVudF9jaGVj
aywgJmFsaWdubWVudF9jaGVjaywgMCk7Cj4gLQlzZXR1cF9nYXRlKFRSQVBfc2ltZF9lcnJvciwg
JnNpbWRfY29wcm9jZXNzb3JfZXJyb3IsIDApOwo+IC0Jc2V0dXBfZ2F0ZShUUkFQX3hlbl9jYWxs
YmFjaywgaHlwZXJ2aXNvcl9jYWxsYmFjaywgMCk7Cj4gKyNkZWZpbmUgU0VUVVBfVFJBUF9HQVRF
KHRyYXBuYW1lLCBkcGwpIFwKPiArCXNldHVwX2dhdGUoVFJBUF8jI3RyYXBuYW1lLCAmQVNNX1RS
QVBfU1lNKHRyYXBuYW1lKSwgZHBsKQo+ICsJU0VUVVBfVFJBUF9HQVRFKGRpdmlkZV9lcnJvciwg
MCk7Cj4gKwlTRVRVUF9UUkFQX0dBVEUoZGVidWcsIDApOwo+ICsJU0VUVVBfVFJBUF9HQVRFKGlu
dDMsIDMpOwo+ICsJU0VUVVBfVFJBUF9HQVRFKG92ZXJmbG93LCAzKTsKPiArCVNFVFVQX1RSQVBf
R0FURShib3VuZHMsIDApOwo+ICsJU0VUVVBfVFJBUF9HQVRFKGludmFsaWRfb3AsIDApOwo+ICsJ
U0VUVVBfVFJBUF9HQVRFKG5vX2RldmljZSwgMCk7Cj4gKwlTRVRVUF9UUkFQX0dBVEUoY29wcm9j
X3NlZ19vdmVycnVuLCAwKTsKPiArCVNFVFVQX1RSQVBfR0FURShpbnZhbGlkX3RzcywgMCk7Cj4g
KwlTRVRVUF9UUkFQX0dBVEUobm9fc2VnbWVudCwgMCk7Cj4gKwlTRVRVUF9UUkFQX0dBVEUoc3Rh
Y2tfZXJyb3IsIDApOwo+ICsJU0VUVVBfVFJBUF9HQVRFKGdwX2ZhdWx0LCAwKTsKPiArCVNFVFVQ
X1RSQVBfR0FURShwYWdlX2ZhdWx0LCAwKTsKPiArCVNFVFVQX1RSQVBfR0FURShzcHVyaW91c19p
bnQsIDApOwo+ICsJU0VUVVBfVFJBUF9HQVRFKGNvcHJvY19lcnJvciwgMCk7Cj4gKwlTRVRVUF9U
UkFQX0dBVEUoYWxpZ25tZW50X2NoZWNrLCAwKTsKPiArCVNFVFVQX1RSQVBfR0FURShzaW1kX2Vy
cm9yLCAwKTsKPiArCXNldHVwX2dhdGUoVFJBUF94ZW5fY2FsbGJhY2ssIEFTTV9UUkFQX1NZTSho
eXBlcnZpc29yX2NhbGxiYWNrKSwgMCk7Cj4gICAKPiAgIAlhc20gdm9sYXRpbGUoImxpZHQgaWR0
X3B0ciIpOwo+ICAgCj4gQEAgLTI5NCwxMiArMTQ2LDExIEBAIHZvaWQgdHJhcF9pbml0KHZvaWQp
Cj4gICAKPiAgIAlpZiAoaHZtX3NldF9wYXJhbWV0ZXIoSFZNX1BBUkFNX0NBTExCQUNLX0lSUSwK
PiAgIAkJCSAgICAgICgyVUxMIDw8IDU2KSB8IFRSQVBfeGVuX2NhbGxiYWNrKSkgewo+IC0JCXVr
X3ByaW50aygiUmVxdWVzdCBmb3IgWGVuIEhWTSBjYWxsYmFjayB2ZWN0b3IgZmFpbGVkXG4iKTsK
PiAtCQlkb19leGl0KCk7Cj4gKwkJVUtfQ1JBU0goIlJlcXVlc3QgZm9yIFhlbiBIVk0gY2FsbGJh
Y2sgdmVjdG9yIGZhaWxlZFxuIik7Cj4gICAJfQo+ICAgfQo+ICAgCj4gLXZvaWQgdHJhcF9maW5p
KHZvaWQpCj4gK3ZvaWQgdHJhcHNfZmluaSh2b2lkKQo+ICAgewo+ICAgfQo+ICAgI2VuZGlmCj4g
CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3Mt
ZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw
czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:49:58 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:49:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdXK-0001Fa-NI; Thu, 26 Apr 2018 09:49:58 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXJ-0001FO-HM
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:49:57 +0000
X-Inumbo-ID: 81ee6bce-4937-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 81ee6bce-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:52:19 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id AF43D104351;
 Thu, 26 Apr 2018 11:49:55 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id UVUjmRnA5Pjo; Thu, 26 Apr 2018 11:49:55 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 7ADC41042C1;
 Thu, 26 Apr 2018 11:49:51 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:38 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-9-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <4841edb8-89b6-38de-c5f3-1290f29ddc4a@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:37 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-9-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 08/17] plat/common: Add
 ukplat_lcpu_{enable, disable}_irq functions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1MywgQ29zdGluIEx1cHUgd3JvdGU6Cj4gVGhlc2UgZnVuY3Rpb25zIGVu
YWJsZS9kaXNhYmxlIGludGVycnVwdHMgd2l0aG91dCB1c2luZyB0aGUgaW50ZXJydXB0Cj4gZW5h
YmxlIGZsYWcgb2YgdGhlIENQVSBmbGFncyByZWdpc3Rlci4gVGhlc2UgYXJlIHVzZWQgYnkgdGhl
IENQVSBoYWx0aW5nCj4gZnVuY3Rpb25zLgo+IAo+IFNpZ25lZC1vZmYtYnk6IENvc3RpbiBMdXB1
IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Cj4gLS0tCj4gICBpbmNsdWRlL3VrL3BsYXQvbGNwdS5o
IHwgMTAgKysrKysrKysrKwo+ICAgcGxhdC94ZW4vbGNwdS5jICAgICAgICB8IDEwICsrKysrKysr
KysKPiAgIDIgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKQo+IAo+IGRpZmYgLS1naXQg
YS9pbmNsdWRlL3VrL3BsYXQvbGNwdS5oIGIvaW5jbHVkZS91ay9wbGF0L2xjcHUuaAo+IGluZGV4
IDVmNTkzOWQuLmRlMzdlOGIgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS91ay9wbGF0L2xjcHUuaAo+
ICsrKyBiL2luY2x1ZGUvdWsvcGxhdC9sY3B1LmgKPiBAQCAtNDksNiArNDksMTYgQEAgX191OCB1
a3BsYXRfbGNwdV9jb3VudCh2b2lkKTsKPiAgICNlbmRpZgo+ICAgCj4gICAvKioKPiArICogRW5h
YmxlcyBpbnRlcnJ1cHRzCj4gKyAqLwo+ICt2b2lkIHVrcGxhdF9sY3B1X2VuYWJsZV9pcnEodm9p
ZCk7Cj4gKwo+ICsvKioKPiArICogRGlzYWJsZXMgaW50ZXJydXB0cwo+ICsgKi8KPiArdm9pZCB1
a3BsYXRfbGNwdV9kaXNhYmxlX2lycSh2b2lkKTsKPiArCj4gKy8qKgo+ICAgICogUmV0dXJucyBj
dXJyZW50IGludGVycnVwdCBmbGFncyBhbmQgZGlzYWJsZXMgdGhlbQo+ICAgICogQHJldHVybiBp
bnRlcnJ1cHQgZmxhZ3MgKE5vdGUgdGhhdCB0aGUgZm9ybWF0IGlzIHVuc3BlY2lmaWVkKQo+ICAg
ICovCj4gZGlmZiAtLWdpdCBhL3BsYXQveGVuL2xjcHUuYyBiL3BsYXQveGVuL2xjcHUuYwo+IGlu
ZGV4IDQ3NjM0NWIuLmVlZDg5ZmIgMTAwNjQ0Cj4gLS0tIGEvcGxhdC94ZW4vbGNwdS5jCj4gKysr
IGIvcGxhdC94ZW4vbGNwdS5jCj4gQEAgLTQ0LDYgKzQ0LDE2IEBACj4gICAjaW5jbHVkZSA8dWsv
cGxhdC9sY3B1Lmg+Cj4gICAjaW5jbHVkZSA8dWsvcGxhdC90aW1lLmg+Cj4gICAKPiArdm9pZCB1
a3BsYXRfbGNwdV9lbmFibGVfaXJxKHZvaWQpCj4gK3sKPiArCWxvY2FsX2lycV9lbmFibGUoKTsK
PiArfQo+ICsKPiArdm9pZCB1a3BsYXRfbGNwdV9kaXNhYmxlX2lycSh2b2lkKQo+ICt7Cj4gKwls
b2NhbF9pcnFfZGlzYWJsZSgpOwo+ICt9Cj4gKwo+ICAgdW5zaWduZWQgbG9uZyB1a3BsYXRfbGNw
dV9zYXZlX2lycWYodm9pZCkKPiAgIHsKPiAgIAl1bnNpZ25lZCBsb25nIGZsYWdzOwo+IAoKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVs
IG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s
aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:50:03 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:50:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdXP-0001Pp-PX; Thu, 26 Apr 2018 09:50:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXO-0001Le-6D
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:50:02 +0000
X-Inumbo-ID: 84b4b254-4937-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 84b4b254-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:52:23 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 5AC4C1041C2;
 Thu, 26 Apr 2018 11:50:00 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id w2ORA4aEN2i9; Thu, 26 Apr 2018 11:50:00 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 82239104351;
 Thu, 26 Apr 2018 11:49:55 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:39 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-10-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <d9196c18-0797-bcfa-b485-f9bec8356d64@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:39 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-10-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 09/17] plat/common: Halting
 functions
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1NCwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gUmV2aXNpdGluZyB1a3BsYXRf
bGNwdV9oYWx0KiBmdW5jdGlvbnMuCj4gCj4gU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNv
c3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPiAtLS0KPiAgIGluY2x1ZGUvdWsvcGxhdC9sY3B1LmggICAg
ICB8IDE1ICsrKysrKysrKy0tLQo+ICAgcGxhdC9jb21tb24vaW5jbHVkZS9fdGltZS5oIHwgNDIg
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICAgcGxhdC9jb21tb24vaW5jbHVkZS9j
cHUuaCAgIHwgNDYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICAgcGxhdC9j
b21tb24vbGNwdS5jICAgICAgICAgIHwgNjAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrCj4gICBwbGF0L2t2bS9NYWtlZmlsZS51ayAgICAgICAgfCAgMSArCj4g
ICBwbGF0L2t2bS94ODYvbGNwdS5jICAgICAgICAgfCAgNiAtLS0tLQo+ICAgcGxhdC94ZW4vTWFr
ZWZpbGUudWsgICAgICAgIHwgIDEgKwo+ICAgcGxhdC94ZW4vbGNwdS5jICAgICAgICAgICAgIHwg
MTcgLS0tLS0tLS0tLS0tLQo+ICAgcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jICAgIHwgMTMgKysr
LS0tLS0tLQo+ICAgOSBmaWxlcyBjaGFuZ2VkLCAxNjUgaW5zZXJ0aW9ucygrKSwgMzYgZGVsZXRp
b25zKC0pCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS9fdGltZS5o
Cj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS9jcHUuaAo+ICAgY3Jl
YXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2xjcHUuYwo+IAo+IGRpZmYgLS1naXQgYS9pbmNs
dWRlL3VrL3BsYXQvbGNwdS5oIGIvaW5jbHVkZS91ay9wbGF0L2xjcHUuaAo+IGluZGV4IGRlMzdl
OGIuLjc3ZTU4NDYgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS91ay9wbGF0L2xjcHUuaAo+ICsrKyBi
L2luY2x1ZGUvdWsvcGxhdC9sY3B1LmgKPiBAQCAtMzYsNiArMzYsOCBAQAo+ICAgI2lmbmRlZiBf
X1VLUExBVF9MQ1BVX0hfXwo+ICAgI2RlZmluZSBfX1VLUExBVF9MQ1BVX0hfXwo+ICAgCj4gKyNp
bmNsdWRlIDx1ay9hcmNoL3RpbWUuaD4KPiArCj4gICAjaWZkZWYgX19jcGx1c3BsdXMKPiAgIGV4
dGVybiAiQyIgewo+ICAgI2VuZGlmCj4gQEAgLTgwLDE3ICs4MiwyMiBAQCB2b2lkIHVrcGxhdF9s
Y3B1X2lycXNfaGFuZGxlX3BlbmRpbmcodm9pZCk7Cj4gICAKPiAgIC8qKgo+ICAgICogSGFsdHMg
dGhlIGN1cnJlbnQgbG9naWNhbCBDUFUgZXhlY3V0aW9uCj4gLSAqIEV4ZWN1dGlvbiBpcyByZXR1
cm5lZCB3aGVuIGFuIGludGVycnVwdC9zaWduYWwgYXJyaXZlZAo+ICAgICovCj4gICB2b2lkIHVr
cGxhdF9sY3B1X2hhbHQodm9pZCk7Cj4gICAKPiAgIC8qKgo+ICAgICogSGFsdHMgdGhlIGN1cnJl
bnQgbG9naWNhbCBDUFUgZXhlY3V0aW9uCj4gICAgKiBFeGVjdXRpb24gaXMgcmV0dXJuZWQgd2hl
biBhbiBpbnRlcnJ1cHQvc2lnbmFsIGFycml2ZWQgb3IKPiAtICogdGhlIHNwZWNpZmllZCB0aW1l
b3V0IGV4cGlyZWQKPiAtICogQHBhcmFtIG1pbGxpcyBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIHRv
IGhhbHQgYXQgbG9uZ2VzdAo+ICsgKiB0aGUgc3BlY2lmaWVkIGRlYWRsaW5lIGV4cGlyZWQKPiAr
ICogQHBhcmFtIHVudGlsIGRlYWRsaW5lIGluIG5hbm9zZWNvbmRzCj4gKyAqLwo+ICt2b2lkIHVr
cGxhdF9sY3B1X2hhbHRfdG8oX19zbnNlYyB1bnRpbCk7Cj4gKwo+ICsvKioKPiArICogSGFsdHMg
dGhlIGN1cnJlbnQgbG9naWNhbCBDUFUgZXhlY3V0aW9uCj4gKyAqIEV4ZWN1dGlvbiBpcyByZXR1
cm5lZCB3aGVuIGFuIGludGVycnVwdC9zaWduYWwgYXJyaXZlZAo+ICAgICovCj4gLXZvaWQgdWtw
bGF0X2xjcHVfaGFsdF90byh1bnNpZ25lZCBsb25nIG1pbGxpcyk7Cj4gK3ZvaWQgdWtwbGF0X2xj
cHVfaGFsdF9pcnEodm9pZCk7Cj4gICAKPiAgICNpZmRlZiBfX2NwbHVzcGx1cwo+ICAgfQo+IGRp
ZmYgLS1naXQgYS9wbGF0L2NvbW1vbi9pbmNsdWRlL190aW1lLmggYi9wbGF0L2NvbW1vbi9pbmNs
dWRlL190aW1lLmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLjA2MjQw
ZmYKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9jb21tb24vaW5jbHVkZS9fdGltZS5oCj4g
QEAgLTAsMCArMSw0MiBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xh
dXNlICovCj4gKy8qCj4gKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5w
dWIucm8+Cj4gKyAqCj4gKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBO
RUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gKyAqCj4gKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAo+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKPiArICogYXJlIG1ldDoKPiArICoKPiArICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiAr
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgo+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCj4gKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBo
b2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHMKPiArICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KPiArICogICAg
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4K
PiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCj4gKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiAr
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UKPiArICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQo+ICsgKiBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCj4gKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCj4gKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwo+ICsgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgo+ICsgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQo+ICsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQo+ICsg
KiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KPiArICoKPiArICogVEhJUyBIRUFERVIgTUFZ
IE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KPiArICovCj4gKwo+ICsj
aWZuZGVmIF9fUExBVF9DTU5fVElNRV9IX18KPiArI2RlZmluZSBfX1BMQVRfQ01OX1RJTUVfSF9f
Cj4gKwo+ICsjaW5jbHVkZSA8dWsvcGxhdC90aW1lLmg+Cj4gKwo+ICt2b2lkIHRpbWVfYmxvY2tf
dW50aWwoX19zbnNlYyB1bnRpbCk7Cj4gKwo+ICsjZW5kaWYgLyogX19QTEFUX0NNTl9USU1FX0hf
XyAqLwo+IGRpZmYgLS1naXQgYS9wbGF0L2NvbW1vbi9pbmNsdWRlL2NwdS5oIGIvcGxhdC9jb21t
b24vaW5jbHVkZS9jcHUuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4u
MTUzZWJmOQo+IC0tLSAvZGV2L251bGwKPiArKysgYi9wbGF0L2NvbW1vbi9pbmNsdWRlL2NwdS5o
Cj4gQEAgLTAsMCArMSw0NiBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMt
Q2xhdXNlICovCj4gKy8qCj4gKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBj
cy5wdWIucm8+Cj4gKyAqCj4gKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQu
LCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gKyAqCj4gKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAo+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKPiArICogYXJlIG1ldDoKPiArICoKPiArICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
PiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgo+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCj4gKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdo
dCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHMKPiArICogICAgY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KPiArICog
ICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv
bi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCj4gKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
PiArICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKPiArICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQo+ICsgKiBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCj4gKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCj4gKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwo+ICsgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgo+ICsgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQo+ICsgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQo+
ICsgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KPiArICoKPiArICogVEhJUyBIRUFERVIg
TUFZIE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KPiArICovCj4gKwo+
ICsjaWZuZGVmIF9fUExBVF9DTU5fQ1BVX0hfXwo+ICsjZGVmaW5lIF9fUExBVF9DTU5fQ1BVX0hf
Xwo+ICsKPiArI2luY2x1ZGUgPHVrL2FyY2gvbGNwdS5oPgo+ICsjaWZkZWYgX19YODZfNjRfXwo+
ICsjaW5jbHVkZSA8eDg2L2NwdS5oPgo+ICsjZWxzZQo+ICsjZXJyb3IgIkFkZCBjcHUuaCBmb3Ig
Y3VycmVudCBhcmNoaXRlY3R1cmUuIgo+ICsjZW5kaWYKPiArCj4gKwo+ICsjZW5kaWYgLyogX19Q
TEFUX0NNTl9DUFVfSF9fICovCj4gZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9uL2xjcHUuYyBiL3Bs
YXQvY29tbW9uL2xjcHUuYwo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4u
NTE3YTNkZgo+IC0tLSAvZGV2L251bGwKPiArKysgYi9wbGF0L2NvbW1vbi9sY3B1LmMKPiBAQCAt
MCwwICsxLDYwIEBACj4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2Ug
Ki8KPiArLyoKPiArICogQXV0aG9yczogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5y
bz4KPiArICoKPiArICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBD
b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KPiArICoKPiArICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cj4g
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwo+ICsgKiBhcmUgbWV0Ogo+ICsgKgo+ICsgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKPiArICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KPiArICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRl
ciBub3IgdGhlIG5hbWVzIG9mIGl0cwo+ICsgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQo+ICsgKiAgICB0aGlz
IHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgo+ICsg
Kgo+ICsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKPiArICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+ICsgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRQo+ICsgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCj4gKyAqIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
PiArICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKPiArICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCj4gKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCj4gKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCj4gKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCj4gKyAqIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgo+ICsgKgo+ICsgKiBUSElTIEhFQURFUiBNQVkgTk9U
IEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgo+ICsgKi8KPiArCj4gKyNpbmNs
dWRlIDx1ay9wbGF0L2xjcHUuaD4KPiArI2luY2x1ZGUgPGNwdS5oPgo+ICsjaW5jbHVkZSA8X3Rp
bWUuaD4KPiArCj4gKwo+ICt2b2lkIHVrcGxhdF9sY3B1X2hhbHQodm9pZCkKPiArewo+ICsJdWtw
bGF0X2xjcHVfZGlzYWJsZV9pcnEoKTsKPiArCWhhbHQoKTsKPiArfQo+ICsKPiArdm9pZCB1a3Bs
YXRfbGNwdV9oYWx0X2lycSh2b2lkKQo+ICt7Cj4gKwl1a3BsYXRfbGNwdV9lbmFibGVfaXJxKCk7
Cj4gKwloYWx0KCk7Cj4gKwl1a3BsYXRfbGNwdV9kaXNhYmxlX2lycSgpOwo+ICt9Cj4gKwo+ICt2
b2lkIHVrcGxhdF9sY3B1X2hhbHRfdG8oX19zbnNlYyB1bnRpbCkKPiArewo+ICsJdW5zaWduZWQg
bG9uZyBmbGFnczsKPiArCj4gKwlmbGFncyA9IHVrcGxhdF9sY3B1X3NhdmVfaXJxZigpOwo+ICsJ
dGltZV9ibG9ja191bnRpbCh1bnRpbCk7Cj4gKwl1a3BsYXRfbGNwdV9yZXN0b3JlX2lycWYoZmxh
Z3MpOwo+ICt9Cj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL01ha2VmaWxlLnVrIGIvcGxhdC9rdm0v
TWFrZWZpbGUudWsKPiBpbmRleCBlN2E1NWZkLi40MzNkMjk4IDEwMDY0NAo+IC0tLSBhL3BsYXQv
a3ZtL01ha2VmaWxlLnVrCj4gKysrIGIvcGxhdC9rdm0vTWFrZWZpbGUudWsKPiBAQCAtMjQsMyAr
MjQsNCBAQCBMSUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChMSUJLVk1QTEFUX0JB
U0UpL3g4Ni9sY3B1LmMKPiAgIExJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJ
QktWTVBMQVRfQkFTRSkveDg2L3RpbWUuYwo+ICAgTElCS1ZNUExBVF9TUkNTLXkgICAgICAgICAg
ICAgICs9ICQoTElCS1ZNUExBVF9CQVNFKS9zaHV0ZG93bi5jCj4gICBMSUJLVk1QTEFUX1NSQ1Mt
eSAgICAgICAgICAgICAgKz0gJChMSUJLVk1QTEFUX0JBU0UpL21lbW9yeS5jCj4gK0xJQktWTVBM
QVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL2xjcHUuY3xj
b21tb24KPiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0veDg2L2xjcHUuYyBiL3BsYXQva3ZtL3g4Ni9s
Y3B1LmMKPiBpbmRleCA2ZTdiYTA0Li45ODVjNjcwIDEwMDY0NAo+IC0tLSBhL3BsYXQva3ZtL3g4
Ni9sY3B1LmMKPiArKysgYi9wbGF0L2t2bS94ODYvbGNwdS5jCj4gQEAgLTM0LDkgKzM0LDMgQEAK
PiAgIAo+ICAgI2luY2x1ZGUgPHN0ZGludC5oPgo+ICAgI2luY2x1ZGUgPHVrL3BsYXQvbGNwdS5o
Pgo+IC0jaW5jbHVkZSA8dWsvZXNzZW50aWFscy5oPgo+IC0KPiAtdm9pZCB1a3BsYXRfbGNwdV9o
YWx0X3RvKHVuc2lnbmVkIGxvbmcgbWlsbGlzIF9fdW51c2VkKQo+IC17Cj4gLQkvL1RPRE8KPiAt
fQo+IGRpZmYgLS1naXQgYS9wbGF0L3hlbi9NYWtlZmlsZS51ayBiL3BsYXQveGVuL01ha2VmaWxl
LnVrCj4gaW5kZXggNTViYTUwYy4uN2NiNTVkYyAxMDA2NDQKPiAtLS0gYS9wbGF0L3hlbi9NYWtl
ZmlsZS51awo+ICsrKyBiL3BsYXQveGVuL01ha2VmaWxlLnVrCj4gQEAgLTI3LDYgKzI3LDcgQEAg
TElCWEVOUExBVF9DSU5DTFVERVMteSAgICAgICAgICs9IC1JJChMSUJYRU5QTEFUX0JBU0UpL2lu
Y2x1ZGUKPiAgIExJQlhFTlBMQVRfQ0lOQ0xVREVTLXkgICAgICAgICArPSAtSSQoVUtfUExBVF9D
T01NT05fQkFTRSkvaW5jbHVkZQo+ICAgTElCWEVOUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9
ICQoTElCWEVOUExBVF9CQVNFKS9oeXBlcnZpc29yLmMKPiAgIExJQlhFTlBMQVRfU1JDUy15ICAg
ICAgICAgICAgICArPSAkKExJQlhFTlBMQVRfQkFTRSkvbWVtb3J5LmMKPiArTElCWEVOUExBVF9T
UkNTLXkgICAgICAgICAgICAgICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkvbGNwdS5jfGNvbW1v
bgo+ICAgCj4gICBpZm5lcSAoLCQoZmlsdGVyIHg4Nl8zMiB4ODZfNjQsJChVS19BUkNIKSkpCj4g
ICBMSUJYRU5QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNF
KS94ODYvdHJhY2UuY3xjb21tb24KPiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4vbGNwdS5jIGIvcGxh
dC94ZW4vbGNwdS5jCj4gaW5kZXggZWVkODlmYi4uZjA2NTBkYSAxMDA2NDQKPiAtLS0gYS9wbGF0
L3hlbi9sY3B1LmMKPiArKysgYi9wbGF0L3hlbi9sY3B1LmMKPiBAQCAtNzIsMjAgKzcyLDMgQEAg
aW50IHVrcGxhdF9sY3B1X2lycXNfZGlzYWJsZWQodm9pZCkKPiAgIHsKPiAgIAlyZXR1cm4gaXJx
c19kaXNhYmxlZCgpOwo+ICAgfQo+IC0KPiAtdm9pZCB1a3BsYXRfbGNwdV9oYWx0X3RvKHVuc2ln
bmVkIGxvbmcgbWlsbGlzKQo+IC17Cj4gLQlfX3Nuc2VjIHVudGlsOwo+IC0JdW5zaWduZWQgbG9u
ZyBmbGFnczsKPiAtCj4gLQl1bnRpbCA9IHVrcGxhdF9tb25vdG9uaWNfY2xvY2soKSArIHVrYXJj
aF90aW1lX21zZWNfdG9fbnNlYyhtaWxsaXMpOwo+IC0KPiAtCWZsYWdzID0gdWtwbGF0X2xjcHVf
c2F2ZV9pcnFmKCk7Cj4gLQlibG9ja19kb21haW4odW50aWwpOwo+IC0JdWtwbGF0X2xjcHVfcmVz
dG9yZV9pcnFmKGZsYWdzKTsKPiAtfQo+IC0KPiAtdm9pZCB1a3BsYXRfbGNwdV9oYWx0KHZvaWQp
Cj4gLXsKPiAtCS8vVE9ETwo+IC19Cj4gZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni9hcmNoX3Rp
bWUuYyBiL3BsYXQveGVuL3g4Ni9hcmNoX3RpbWUuYwo+IGluZGV4IDA2MjFkOTAuLjcwMmY3ODYg
MTAwNjQ0Cj4gLS0tIGEvcGxhdC94ZW4veDg2L2FyY2hfdGltZS5jCj4gKysrIGIvcGxhdC94ZW4v
eDg2L2FyY2hfdGltZS5jCj4gQEAgLTM1LDggKzM1LDkgQEAKPiAgIAo+ICAgI2luY2x1ZGUgPHN0
ZGludC5oPgo+ICAgI2luY2x1ZGUgPHN5cy90aW1lLmg+Cj4gLSNpbmNsdWRlIDx4ODYvY3B1Lmg+
Cj4gICAjaW5jbHVkZSA8dWsvcGxhdC90aW1lLmg+Cj4gKyNpbmNsdWRlIDx4ODYvY3B1Lmg+Cj4g
KyNpbmNsdWRlIDxfdGltZS5oPgo+ICAgI2luY2x1ZGUgPGNvbW1vbi9oeXBlcnZpc29yLmg+Cj4g
ICAjaW5jbHVkZSA8Y29tbW9uL2V2ZW50cy5oPgo+ICAgI2luY2x1ZGUgPHhlbi14ODYvaXJxLmg+
Cj4gQEAgLTIxNywxOSArMjE4LDEzIEBAIGludCBnZXR0aW1lb2ZkYXkoc3RydWN0IHRpbWV2YWwg
KnR2LCB2b2lkICp0eikKPiAgICNlbmRpZgo+ICAgCj4gICAKPiAtdm9pZCBibG9ja19kb21haW4o
X19zbnNlYyB1bnRpbCkKPiArdm9pZCB0aW1lX2Jsb2NrX3VudGlsKF9fc25zZWMgdW50aWwpCj4g
ICB7Cj4gICAJVUtfQVNTRVJUKGlycXNfZGlzYWJsZWQoKSk7Cj4gICAKPiAgIAlpZiAoKF9fc25z
ZWMpIHVrcGxhdF9tb25vdG9uaWNfY2xvY2soKSA8IHVudGlsKSB7Cj4gICAJCUhZUEVSVklTT1Jf
c2V0X3RpbWVyX29wKHVudGlsKTsKPiAtI2lmZGVmIENPTkZJR19QQVJBVklSVAo+IC0JCUhZUEVS
VklTT1Jfc2NoZWRfb3AoU0NIRURPUF9ibG9jaywgMCk7Cj4gLSNlbHNlCj4gLQkJbG9jYWxfaXJx
X2VuYWJsZSgpOwo+IC0JCWFzbSB2b2xhdGlsZSgiaGx0IiA6IDogOiAibWVtb3J5Iik7Cj4gLSNl
bmRpZgo+IC0JCWxvY2FsX2lycV9kaXNhYmxlKCk7Cj4gKwkJdWtwbGF0X2xjcHVfaGFsdF9pcnEo
KTsKPiAgIAkJSFlQRVJWSVNPUl9zZXRfdGltZXJfb3AoMCk7Cj4gICAJfQo+ICAgfQo+IAoKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVs
IG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s
aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:50:08 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:50:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdXU-0001lz-RK; Thu, 26 Apr 2018 09:50:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXT-0001ix-Hf
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:50:07 +0000
X-Inumbo-ID: 872dbd58-4937-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 872dbd58-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:52:28 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 7E6A7104351;
 Thu, 26 Apr 2018 11:50:04 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id VLrW4Mi3FiuL; Thu, 26 Apr 2018 11:50:04 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 123F11041C2;
 Thu, 26 Apr 2018 11:50:00 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:41 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-11-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <2a45bf33-6bbb-0119-6320-48687664e088@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:40 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-11-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 10/17] plat/common: Common x86
 threading code
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1NCwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gV2UgZGVmaW5lIGEgbmV3IHBy
aW1pdGl2ZSAtIHRoZSBzb2Z0d2FyZSBjb250ZXh0IC0gdXNlZCBpbiBjb250ZXh0IHN3aXRjaGlu
ZyBmb3IKPiBjb29wZXJhdGl2ZSBzY2hlZHVsaW5nIGFuZCBzY2hlZHVsaW5nIG9uIFBWIGd1ZXN0
cy4gVGhlIGNvZGUgZm9yIFhlbiBwbGF0Zm9ybSBpcwo+IHJldXNlZCB0byBlbmFibGUgY29vcGVy
YXRpdmUgc2NoZWR1bGluZyBvbiBLVk0gYXMgd2VsbC4KPiAKPiBTaW5jZSBVbmlrcmFmdCBtYXkg
cnVuIGRpZmZlcmVudCBzY2hlZHVsZXJzIG9uIGRlZGljYXRlZCBDUFVzLCBhIG5ldyBhYnN0cmFj
dGlvbgo+IGlzIGludHJvZHVjZWQsIHVrcGxhdF9jdHhfY2FsbGJhY2tzLCBmb3IgZW5hYmxpbmcg
c3VwcG9ydCBvZiBvdGhlciB0eXBlcyBvZiBjb250ZXh0cwo+IGFzIHdlbGwgKGUuZy4gaGFyZHdh
cmUgY29udGV4dHMgZm9yIHByZWVtcHRpdmUgc2NoZWR1bGluZykuCj4gCj4gU2lnbmVkLW9mZi1i
eTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPiAtLS0KPiAgIGluY2x1ZGUv
dWsvYXJjaC90aHJlYWQuaCAgICAgICAgICAgICAgfCAgNTMgLS0tLS0tLS0tLS0tLS0tLS0KPiAg
IGluY2x1ZGUvdWsvcGxhdC90aHJlYWQuaCAgICAgICAgICAgICAgfCAgNzAgKysrKysrKysrKysr
KysrKysrKy0tLQo+ICAgcGxhdC9jb21tb24vaW5jbHVkZS9zd19jdHguaCAgICAgICAgICB8ICA1
NiArKysrKysrKysrKysrKysrKysKPiAgIHBsYXQvY29tbW9uL3N3X2N0eC5jICAgICAgICAgICAg
ICAgICAgfCAgOTcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICAgcGxhdC9jb21t
b24vdGhyZWFkLmMgICAgICAgICAgICAgICAgICB8ICA2NiArKysrKysrKysrKysrKysrKysrKysK
PiAgIHBsYXQvY29tbW9uL3g4Ni90aHJlYWRfc3RhcnQuUyAgICAgICAgfCAgNjUgKysrKysrKysr
KysrKysrKysrKysrCj4gICBwbGF0L2t2bS9NYWtlZmlsZS51ayAgICAgICAgICAgICAgICAgIHwg
ICA1ICsrCj4gICBwbGF0L3hlbi9NYWtlZmlsZS51ayAgICAgICAgICAgICAgICAgIHwgICA4ICsr
LQo+ICAgcGxhdC94ZW4vaW5jbHVkZS9jb21tb24vc2NoZWQuaCAgICAgICB8ICA1MiAtLS0tLS0t
LS0tLS0tLS0tLQo+ICAgcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L2FyY2hfc2NoZWQuaCB8ICA1
NSAtLS0tLS0tLS0tLS0tLS0tLS0KPiAgIHBsYXQveGVuL3NjaGVkLmMgICAgICAgICAgICAgICAg
ICAgICAgfCAxMDYgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAgcGxhdC94
ZW4vdGhyZWFkLmMgICAgICAgICAgICAgICAgICAgICB8ICA2NiAtLS0tLS0tLS0tLS0tLS0tLS0t
LS0KPiAgIHBsYXQveGVuL3g4Ni9hcmNoX3RocmVhZC5jICAgICAgICAgICAgfCAgOTMgLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgIHBsYXQveGVuL3g4Ni9lbnRyeTY0LlMgICAgICAg
ICAgICAgICAgfCAgMzEgLS0tLS0tLS0tLQo+ICAgcGxhdC94ZW4veDg2L3NldHVwLmMgICAgICAg
ICAgICAgICAgICB8ICAgMyAtCj4gICAxNSBmaWxlcyBjaGFuZ2VkLCAzNTcgaW5zZXJ0aW9ucygr
KSwgNDY5IGRlbGV0aW9ucygtKQo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvYXJj
aC90aHJlYWQuaAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUvc3df
Y3R4LmgKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9zd19jdHguYwo+ICAgY3Jl
YXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL3RocmVhZC5jCj4gICBjcmVhdGUgbW9kZSAxMDA2
NDQgcGxhdC9jb21tb24veDg2L3RocmVhZF9zdGFydC5TCj4gICBkZWxldGUgbW9kZSAxMDA2NDQg
cGxhdC94ZW4vaW5jbHVkZS9jb21tb24vc2NoZWQuaAo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IHBs
YXQveGVuL2luY2x1ZGUveGVuLXg4Ni9hcmNoX3NjaGVkLmgKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0
NCBwbGF0L3hlbi9zY2hlZC5jCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgcGxhdC94ZW4vdGhyZWFk
LmMKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi94ODYvYXJjaF90aHJlYWQuYwo+IAo+
IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gvdGhyZWFkLmggYi9pbmNsdWRlL3VrL2FyY2gv
dGhyZWFkLmgKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCA3YTEwZDJhLi4wMDAw
MDAwCj4gLS0tIGEvaW5jbHVkZS91ay9hcmNoL3RocmVhZC5oCj4gKysrIC9kZXYvbnVsbAo+IEBA
IC0xLDUzICswLDAgQEAKPiAtLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVz
ZSAqLwo+IC0vKgo+IC0gKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHVi
LnJvPgo+IC0gKgo+IC0gKgo+IC0gKiBDb3B5cmlnaHQgKGMpIDIwMTcsIE5FQyBFdXJvcGUgTHRk
LiwgTkVDIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+IC0gKgo+IC0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKPiAtICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCj4gLSAqIGFyZSBtZXQ6Cj4gLSAqCj4gLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Cj4gLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KPiAtICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiAtICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+IC0g
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgo+IC0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmln
aHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCj4gLSAqICAgIGNvbnRyaWJ1dG9ycyBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCj4gLSAq
ICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Np
b24uCj4gLSAqCj4gLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgo+IC0gKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
Cj4gLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCj4gLSAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUKPiAtICogTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgo+IC0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgo+IC0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKPiAtICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KPiAtICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKPiAtICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUK
PiAtICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4gLSAqCj4gLSAqIFRISVMgSEVBREVS
IE1BWSBOT1QgQkUgRVhUUkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCj4gLSAqLwo+IC0K
PiAtI2lmbmRlZiBfX1VLQVJDSF9USFJFQURfSF9fCj4gLSNkZWZpbmUgX19VS0FSQ0hfVEhSRUFE
X0hfXwo+IC0KPiAtI2lmZGVmIF9fY3BsdXNwbHVzCj4gLWV4dGVybiAiQyIgewo+IC0jZW5kaWYK
PiAtCj4gLXN0cnVjdCB1a3BsYXRfdGhyZWFkX2N0eCB7Cj4gLQkvKiBrZWVwIGluIHRoYXQgb3Jk
ZXIgKi8KPiAtCXVuc2lnbmVkIGxvbmcgc3A7ICAvKiBTdGFjayBwb2ludGVyICovCj4gLQl1bnNp
Z25lZCBsb25nIGlwOyAgLyogSW5zdHJ1Y3Rpb24gcG9pbnRlciAqLwo+IC19Owo+IC0KPiAtI2lm
ZGVmIF9fY3BsdXNwbHVzCj4gLX0KPiAtI2VuZGlmCj4gLQo+IC0jZW5kaWYgLyogX19VS0FSQ0hf
VEhSRUFEX0hfXyAqLwo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL3BsYXQvdGhyZWFkLmggYi9p
bmNsdWRlL3VrL3BsYXQvdGhyZWFkLmgKPiBpbmRleCA5MDVkOTQyLi42OWZjNWUyIDEwMDY0NAo+
IC0tLSBhL2luY2x1ZGUvdWsvcGxhdC90aHJlYWQuaAo+ICsrKyBiL2luY2x1ZGUvdWsvcGxhdC90
aHJlYWQuaAo+IEBAIC0zOCwxNyArMzgsNzMgQEAKPiAgICNpZm5kZWYgX19VS1BMQVRfVEhSRUFE
X0hfXwo+ICAgI2RlZmluZSBfX1VLUExBVF9USFJFQURfSF9fCj4gICAKPiAtI2luY2x1ZGUgPHVr
L2FyY2gvdGhyZWFkLmg+Cj4gKyNpbmNsdWRlIDxzdGRsaWIuaD4KPiAgICNpbmNsdWRlIDx1ay9l
c3NlbnRpYWxzLmg+Cj4gKyNpbmNsdWRlIDx1ay9hc3NlcnQuaD4KPiAgIAo+IC1pbnQgdWtwbGF0
X3RocmVhZF9jdHhfaW5pdChzdHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggKmN0eCwgdm9pZCAqc3Rh
Y2ssCj4gLQkJdm9pZCAoKmZ1bmN0aW9uKSh2b2lkICopLCB2b2lkICpkYXRhKTsKPiArZW51bSB1
a3BsYXRfY3R4X3R5cGUgewo+ICsJdWtwbGF0X2N0eF9ub25lLAo+ICsJdWtwbGF0X2N0eF9odywK
PiArCXVrcGxhdF9jdHhfc3csCj4gK307Cj4gICAKPiAtdm9pZCB1a3BsYXRfdGhyZWFkX2N0eF9z
d2l0Y2goc3RydWN0IHVrcGxhdF90aHJlYWRfY3R4ICpwcmV2LAo+IC0JCQkgICAgICBzdHJ1Y3Qg
dWtwbGF0X3RocmVhZF9jdHggKm5leHQpOwo+ICtzdHJ1Y3QgdWtfYWxsb2M7Cj4gICAKPiAtc3Ry
dWN0IHVrcGxhdF90aHJlYWRfY3R4ICp1a3BsYXRfdGhyZWFkX2N0eF9jdXJyZW50KHZvaWQpOwo+
ICt0eXBlZGVmIHZvaWQgKigqdWtwbGF0X2N0eF9jcmVhdGVfZnVuY190KQo+ICsJCShzdHJ1Y3Qg
dWtfYWxsb2MgKmFsbG9jYXRvciwgdW5zaWduZWQgbG9uZyBzcCk7Cj4gK3R5cGVkZWYgdm9pZCAg
KCp1a3BsYXRfY3R4X3N0YXJ0X2Z1bmNfdCkKPiArCQkodm9pZCAqY3R4KTsKPiArdHlwZWRlZiB2
b2lkICAoKnVrcGxhdF9jdHhfc3dpdGNoX2Z1bmNfdCkKPiArCQkodm9pZCAqcHJldmN0eCwgdm9p
ZCAqbmV4dGN0eCk7Cj4gICAKPiAtdm9pZCB1a3BsYXRfdGhyZWFkX2N0eF9ydW5faWRsZShzdHJ1
Y3QgdWtwbGF0X3RocmVhZF9jdHggKmN0eCkgX19ub3JldHVybjsKPiArc3RydWN0IHVrcGxhdF9j
dHhfY2FsbGJhY2tzIHsKPiArCS8qIGNhbGxiYWNrIGZvciBjcmVhdGluZyB0aHJlYWQgY29udGV4
dCAqLwo+ICsJdWtwbGF0X2N0eF9jcmVhdGVfZnVuY190IGNyZWF0ZV9jYjsKPiArCS8qIGNhbGxi
YWNrIGZvciBzdGFydGluZyB0aHJlYWQgY29udGV4dCAqLwo+ICsJdWtwbGF0X2N0eF9zdGFydF9m
dW5jX3Qgc3RhcnRfY2IgX19ub3JldHVybjsKPiArCS8qIGNhbGxiYWNrIGZvciBzd2l0Y2hpbmcg
Y29udGV4dHMgKi8KPiArCXVrcGxhdF9jdHhfc3dpdGNoX2Z1bmNfdCBzd2l0Y2hfY2I7Cj4gK307
Cj4gKwo+ICtpbnQgdWtwbGF0X2N0eF9jYWxsYmFja3NfaW5pdChzdHJ1Y3QgdWtwbGF0X2N0eF9j
YWxsYmFja3MgKmN0eF9jYnMsCj4gKwkJZW51bSB1a3BsYXRfY3R4X3R5cGUgY3R4X3R5cGUpOwo+
ICsKPiArCj4gK3N0YXRpYyBpbmxpbmUKPiArdm9pZCAqdWtwbGF0X3RocmVhZF9jdHhfY3JlYXRl
KHN0cnVjdCB1a3BsYXRfY3R4X2NhbGxiYWNrcyAqY2JzLAo+ICsJCXN0cnVjdCB1a19hbGxvYyAq
YWxsb2NhdG9yLCB1bnNpZ25lZCBsb25nIHNwKQo+ICt7Cj4gKwlVS19BU1NFUlQoY2JzICE9IE5V
TEwpOwo+ICsJVUtfQVNTRVJUKGFsbG9jYXRvciAhPSBOVUxMKTsKPiArCj4gKwlyZXR1cm4gY2Jz
LT5jcmVhdGVfY2IoYWxsb2NhdG9yLCBzcCk7Cj4gK30KPiArCj4gK3ZvaWQgdWtwbGF0X3RocmVh
ZF9jdHhfZGVzdHJveShzdHJ1Y3QgdWtfYWxsb2MgKmFsbG9jYXRvciwgdm9pZCAqY3R4KTsKPiAr
Cj4gK3N0YXRpYyBpbmxpbmUKPiArdm9pZCB1a3BsYXRfdGhyZWFkX2N0eF9zdGFydChzdHJ1Y3Qg
dWtwbGF0X2N0eF9jYWxsYmFja3MgKmNicywKPiArCQl2b2lkICpjdHgpIF9fbm9yZXR1cm47Cj4g
Kwo+ICtzdGF0aWMgaW5saW5lCj4gK3ZvaWQgdWtwbGF0X3RocmVhZF9jdHhfc3RhcnQoc3RydWN0
IHVrcGxhdF9jdHhfY2FsbGJhY2tzICpjYnMsCj4gKwkJdm9pZCAqY3R4KQo+ICt7Cj4gKwlVS19B
U1NFUlQoY2JzICE9IE5VTEwpOwo+ICsJVUtfQVNTRVJUKGN0eCAhPSBOVUxMKTsKPiArCj4gKwlj
YnMtPnN0YXJ0X2NiKGN0eCk7Cj4gK30KPiArCj4gK3N0YXRpYyBpbmxpbmUKPiArdm9pZCB1a3Bs
YXRfdGhyZWFkX2N0eF9zd2l0Y2goc3RydWN0IHVrcGxhdF9jdHhfY2FsbGJhY2tzICpjYnMsCj4g
KwkJdm9pZCAqcHJldmN0eCwgdm9pZCAqbmV4dGN0eCkKPiArewo+ICsJVUtfQVNTRVJUKGNicyAh
PSBOVUxMKTsKPiArCVVLX0FTU0VSVChwcmV2Y3R4ICE9IE5VTEwpOwo+ICsJVUtfQVNTRVJUKG5l
eHRjdHggIT0gTlVMTCk7Cj4gKwo+ICsJY2JzLT5zd2l0Y2hfY2IocHJldmN0eCwgbmV4dGN0eCk7
Cj4gK30KPiAgIAo+ICAgI2VuZGlmIC8qIF9fVUtQTEFUX1RIUkVBRF9IX18gKi8KPiBkaWZmIC0t
Z2l0IGEvcGxhdC9jb21tb24vaW5jbHVkZS9zd19jdHguaCBiL3BsYXQvY29tbW9uL2luY2x1ZGUv
c3dfY3R4LmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLmZhZTk2YmUK
PiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9jb21tb24vaW5jbHVkZS9zd19jdHguaAo+IEBA
IC0wLDAgKzEsNTYgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVz
ZSAqLwo+ICsvKgo+ICsgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHVi
LnJvPgo+ICsgKgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVD
IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+ICsgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
PiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4gKyAqCj4gKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KPiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+ICsgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgo+ICsgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9s
ZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCj4gKyAqICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCj4gKyAqICAgIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCj4g
KyAqCj4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgo+ICsgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4gKyAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUKPiArICogTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
Ugo+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgo+ICsgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKPiArICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KPiArICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKPiArICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKPiArICog
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4gKyAqCj4gKyAqIFRISVMgSEVBREVSIE1BWSBO
T1QgQkUgRVhUUkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCj4gKyAqLwo+ICsjaWZuZGVm
IF9fUExBVF9DTU5fU1dfQ1RYX0hfXwo+ICsjZGVmaW5lIF9fUExBVF9DTU5fU1dfQ1RYX0hfXwo+
ICsKPiArI2lmbmRlZiBfX0FTU0VNQkxZX18KPiArI2luY2x1ZGUgPHVrL3BsYXQvdGhyZWFkLmg+
Cj4gKwo+ICtzdHJ1Y3Qgc3dfY3R4IHsKPiArCXVuc2lnbmVkIGxvbmcgc3A7ICAvKiBTdGFjayBw
b2ludGVyICovCj4gKwl1bnNpZ25lZCBsb25nIGlwOyAgLyogSW5zdHJ1Y3Rpb24gcG9pbnRlciAq
Lwo+ICt9Owo+ICsKPiArdm9pZCBzd19jdHhfY2FsbGJhY2tzX2luaXQoc3RydWN0IHVrcGxhdF9j
dHhfY2FsbGJhY2tzICpjdHhfY2JzKTsKPiArI2VuZGlmCj4gKwo+ICsjZGVmaW5lIE9GRlNFVE9G
X1NXX0NUWF9TUCAgICAgIDAKPiArI2RlZmluZSBPRkZTRVRPRl9TV19DVFhfSVAgICAgICA4Cj4g
Kwo+ICsjZGVmaW5lIFNJWkVPRl9TV19DVFggICAgICAgICAgIDgKPiArCj4gKy8qIFRPRE8gVGhp
cyBzaG91bGQgYmUgYmV0dGVyIGRlZmluZWQgaW4gdGhlIHRocmVhZCBoZWFkZXIgKi8KPiArI2Rl
ZmluZSBPRkZTRVRPRl9VS1RIUkVBRF9TV19DVFggIDE2Cj4gKwo+ICsjZW5kaWYgLyogX19QTEFU
X0NNTl9TV19DVFhfSF9fICovCj4gZGlmZiAtLWdpdCBhL3BsYXQvY29tbW9uL3N3X2N0eC5jIGIv
cGxhdC9jb21tb24vc3dfY3R4LmMKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAw
MDAuLjU5MTM3NjkKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9jb21tb24vc3dfY3R4LmMK
PiBAQCAtMCwwICsxLDk3IEBACj4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1D
bGF1c2UgKi8KPiArLyoKPiArICogQXV0aG9yczogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNz
LnB1Yi5ybz4KPiArICoKPiArICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4s
IE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KPiArICoKPiArICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Cj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwo+ICsgKiBhcmUgbWV0Ogo+ICsgKgo+ICsgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+
ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKPiArICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KPiArICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0
IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cwo+ICsgKiAgICBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQo+ICsgKiAg
ICB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9u
Lgo+ICsgKgo+ICsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKPiArICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+
ICsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+ICsgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCj4gKyAqIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKPiArICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKPiArICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCj4gKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCj4gKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCj4gKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCj4g
KyAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgo+ICsgKgo+ICsgKiBUSElTIEhFQURFUiBN
QVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgo+ICsgKi8KPiArCj4g
KyNpbmNsdWRlIDxzdGRsaWIuaD4KPiArI2luY2x1ZGUgPHVrL3BsYXQvdGhyZWFkLmg+Cj4gKyNp
bmNsdWRlIDx1ay9hbGxvYy5oPgo+ICsjaW5jbHVkZSA8c3dfY3R4Lmg+Cj4gKyNpbmNsdWRlIDx1
ay9hc3NlcnQuaD4KPiArCj4gKwo+ICtzdGF0aWMgdm9pZCAqc3dfY3R4X2NyZWF0ZShzdHJ1Y3Qg
dWtfYWxsb2MgKmFsbG9jYXRvciwgdW5zaWduZWQgbG9uZyBzcCk7Cj4gK3N0YXRpYyB2b2lkICBz
d19jdHhfc3RhcnQodm9pZCAqY3R4KSBfX25vcmV0dXJuOwo+ICtzdGF0aWMgdm9pZCAgc3dfY3R4
X3N3aXRjaCh2b2lkICpwcmV2Y3R4LCB2b2lkICpuZXh0Y3R4KTsKPiArCj4gKwo+ICsvKiBHZXRz
IHJ1biB3aGVuIGEgbmV3IHRocmVhZCBpcyBzY2hlZHVsZWQgdGhlIGZpcnN0IHRpbWUgZXZlciwK
PiArICogZGVmaW5lZCBpbiB4ODZfWzMyLzY0XS5TCj4gKyAqLwo+ICtleHRlcm4gdm9pZCBhc21f
dGhyZWFkX3N0YXJ0ZXIodm9pZCk7Cj4gKwo+ICtzdGF0aWMgdm9pZCAqc3dfY3R4X2NyZWF0ZShz
dHJ1Y3QgdWtfYWxsb2MgKmFsbG9jYXRvciwgdW5zaWduZWQgbG9uZyBzcCkKPiArewo+ICsJc3Ry
dWN0IHN3X2N0eCAqY3R4Owo+ICsKPiArCVVLX0FTU0VSVChhbGxvY2F0b3IgIT0gTlVMTCk7Cj4g
Kwo+ICsJY3R4ID0gdWtfbWFsbG9jKGFsbG9jYXRvciwgc2l6ZW9mKHN0cnVjdCBzd19jdHgpKTsK
PiArCWlmIChjdHggPT0gTlVMTCkgewo+ICsJCXVrX3ByaW50ZChETFZMX1dBUk4sICJFcnJvciBh
bGxvY2F0aW5nIHNvZnR3YXJlIGNvbnRleHQuIik7Cj4gKwkJcmV0dXJuIE5VTEw7Cj4gKwl9Cj4g
Kwo+ICsJY3R4LT5zcCA9IHNwOwo+ICsJY3R4LT5pcCA9ICh1bnNpZ25lZCBsb25nKSBhc21fdGhy
ZWFkX3N0YXJ0ZXI7Cj4gKwo+ICsJcmV0dXJuIGN0eDsKPiArfQo+ICsKPiArZXh0ZXJuIHZvaWQg
YXNtX2N0eF9zdGFydCh1bnNpZ25lZCBsb25nIHNwLCB1bnNpZ25lZCBsb25nIGlwKSBfX25vcmV0
dXJuOwo+ICsKPiArc3RhdGljIHZvaWQgc3dfY3R4X3N0YXJ0KHZvaWQgKmN0eCkKPiArewo+ICsJ
c3RydWN0IHN3X2N0eCAqc3dfY3R4ID0gY3R4Owo+ICsKPiArCVVLX0FTU0VSVChzd19jdHggIT0g
TlVMTCk7Cj4gKwo+ICsJLyogU3dpdGNoIHN0YWNrcyBhbmQgcnVuIHRoZSB0aHJlYWQgKi8KPiAr
CWFzbV9jdHhfc3RhcnQoc3dfY3R4LT5zcCwgc3dfY3R4LT5pcCk7Cj4gKwo+ICsJVUtfQ1JBU0go
IlRocmVhZCBkaWQgbm90IHN0YXJ0LiIpOwo+ICt9Cj4gKwo+ICtleHRlcm4gdm9pZCBhc21fc3df
Y3R4X3N3aXRjaCh2b2lkICpwcmV2Y3R4LCB2b2lkICpuZXh0Y3R4KTsKPiArCj4gK3N0YXRpYyB2
b2lkIHN3X2N0eF9zd2l0Y2godm9pZCAqcHJldmN0eCwgdm9pZCAqbmV4dGN0eCkKPiArewo+ICsJ
YXNtX3N3X2N0eF9zd2l0Y2gocHJldmN0eCwgbmV4dGN0eCk7Cj4gK30KPiArCj4gK3ZvaWQgc3df
Y3R4X2NhbGxiYWNrc19pbml0KHN0cnVjdCB1a3BsYXRfY3R4X2NhbGxiYWNrcyAqY3R4X2NicykK
PiArewo+ICsJVUtfQVNTRVJUKGN0eF9jYnMgIT0gTlVMTCk7Cj4gKwljdHhfY2JzLT5jcmVhdGVf
Y2IgPSBzd19jdHhfY3JlYXRlOwo+ICsJY3R4X2Nicy0+c3RhcnRfY2IgPSBzd19jdHhfc3RhcnQ7
Cj4gKwljdHhfY2JzLT5zd2l0Y2hfY2IgPSBzd19jdHhfc3dpdGNoOwo+ICt9Cj4gZGlmZiAtLWdp
dCBhL3BsYXQvY29tbW9uL3RocmVhZC5jIGIvcGxhdC9jb21tb24vdGhyZWFkLmMKPiBuZXcgZmls
ZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLjcwMjMzOGUKPiAtLS0gL2Rldi9udWxsCj4g
KysrIGIvcGxhdC9jb21tb24vdGhyZWFkLmMKPiBAQCAtMCwwICsxLDY2IEBACj4gKy8qIFNQRFgt
TGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UgKi8KPiArLyoKPiArICogQXV0aG9yczog
Q29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPiArICoKPiArICogQ29weXJpZ2h0
IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KPiArICoKPiArICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+ICsgKiBhcmUg
bWV0Ogo+ICsgKgo+ICsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCj4gKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKPiArICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KPiArICogMy4gTmVpdGhl
ciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cwo+
ICsgKiAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbQo+ICsgKiAgICB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgo+ICsgKgo+ICsgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJ
UyIKPiArICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+ICsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+ICsgKiBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1Ig
Q09OVFJJQlVUT1JTIEJFCj4gKyAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKPiArICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKPiArICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCj4gKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCj4gKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
Cj4gKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCj4gKyAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
Lgo+ICsgKgo+ICsgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklF
RCBJTiBBTlkgV0FZLgo+ICsgKi8KPiArCj4gKyNpbmNsdWRlIDxzdGRsaWIuaD4KPiArI2luY2x1
ZGUgPHVrL3BsYXQvdGhyZWFkLmg+Cj4gKyNpbmNsdWRlIDx1ay9hbGxvYy5oPgo+ICsjaW5jbHVk
ZSA8c3dfY3R4Lmg+Cj4gKyNpbmNsdWRlIDx1ay9hc3NlcnQuaD4KPiArCj4gK3ZvaWQgdWtwbGF0
X3RocmVhZF9jdHhfZGVzdHJveShzdHJ1Y3QgdWtfYWxsb2MgKmFsbG9jYXRvciwgdm9pZCAqY3R4
KQo+ICt7Cj4gKwlVS19BU1NFUlQoYWxsb2NhdG9yICE9IE5VTEwpOwo+ICsJVUtfQVNTRVJUKGN0
eCAhPSBOVUxMKTsKPiArCj4gKwl1a19mcmVlKGFsbG9jYXRvciwgY3R4KTsKPiArfQo+ICsKPiAr
aW50IHVrcGxhdF9jdHhfY2FsbGJhY2tzX2luaXQoc3RydWN0IHVrcGxhdF9jdHhfY2FsbGJhY2tz
ICpjdHhfY2JzLAo+ICsJCWVudW0gdWtwbGF0X2N0eF90eXBlIGN0eF90eXBlKQo+ICt7Cj4gKwlp
bnQgZXJyID0gMDsKPiArCj4gKwlVS19BU1NFUlQoY3R4X2NicyAhPSBOVUxMKTsKPiArCj4gKwlz
d2l0Y2ggKGN0eF90eXBlKSB7Cj4gKwljYXNlIHVrcGxhdF9jdHhfc3c6Cj4gKwkJc3dfY3R4X2Nh
bGxiYWNrc19pbml0KGN0eF9jYnMpOwo+ICsJCWJyZWFrOwo+ICsJZGVmYXVsdDoKPiArCQllcnIg
PSBFSU5WQUw7Cj4gKwkJYnJlYWs7Cj4gKwl9Cj4gKwo+ICsJcmV0dXJuIGVycjsKPiArfQo+IGRp
ZmYgLS1naXQgYS9wbGF0L2NvbW1vbi94ODYvdGhyZWFkX3N0YXJ0LlMgYi9wbGF0L2NvbW1vbi94
ODYvdGhyZWFkX3N0YXJ0LlMKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAu
LmE2YWIyOTcKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9jb21tb24veDg2L3RocmVhZF9z
dGFydC5TCj4gQEAgLTAsMCArMSw2NSBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog
QlNELTItQ2xhdXNlICovCj4gKy8qCj4gKyAqIENvcHlyaWdodCAoYykgMjAwOSwgQ2l0cml4IFN5
c3RlbXMsIEluYy4KPiArICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5F
QyBDb3Jwb3JhdGlvbi4KPiArICoKPiArICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cj4gKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+ICsg
KiBhcmUgbWV0Ogo+ICsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCj4gKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKPiArICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KPiArICoKPiArICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElT
JycgQU5ECj4gKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+ICsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+ICsgKiBB
UkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFVVEhPUiBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFCj4gKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCj4gKyAqIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCj4g
KyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKQo+ICsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAo+ICsgKiBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZCj4gKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKPiArICogU1VDSCBEQU1BR0UuCj4gKyAqLwo+ICsv
KiBUYWtlbiBmcm9tIE1pbmktT1MgYXJjaC94ODYveDg2XzY0LlMgKi8KPiArCj4gKyNpbmNsdWRl
IDxzd19jdHguaD4KPiArCj4gKyNkZWZpbmUgRU5UUlkoWCkgLmdsb2JsIFggOyBYIDoKPiArCj4g
K0VOVFJZKGFzbV90aHJlYWRfc3RhcnRlcikKPiArCXBvcHEgJXJkaQo+ICsJcG9wcSAlcmJ4Cj4g
KwlwdXNocSAkMAo+ICsJeG9ycSAlcmJwLCVyYnAKPiArCWNhbGwgKiVyYngKPiArCWNhbGwgdWtf
c2NoZWRfdGhyZWFkX2V4aXQKPiArCj4gK0VOVFJZKGFzbV9jdHhfc3RhcnQpCj4gKwltb3YgJXJk
aSwgJXJzcCAgICAgIC8qIHNldCBTUCAqLwo+ICsJcHVzaCAlcnNpICAgICAgICAgICAvKiBwdXNo
IElQIGFuZCByZXR1cm4gKi8KPiArCXJldAo+ICsKPiArRU5UUlkoYXNtX3N3X2N0eF9zd2l0Y2gp
Cj4gKwlwdXNocSAlcmJwCj4gKwlwdXNocSAlcmJ4Cj4gKwlwdXNocSAlcjEyCj4gKwlwdXNocSAl
cjEzCj4gKwlwdXNocSAlcjE0Cj4gKwlwdXNocSAlcjE1Cj4gKwltb3ZxICVyc3AsIE9GRlNFVE9G
X1NXX0NUWF9TUCglcmRpKSAgICAgICAvKiBzYXZlIEVTUCAqLwo+ICsJbW92cSBPRkZTRVRPRl9T
V19DVFhfU1AoJXJzaSksICVyc3AgICAgICAgLyogcmVzdG9yZSBFU1AgKi8KPiArCW1vdnEgJDFm
LCBPRkZTRVRPRl9TV19DVFhfSVAoJXJkaSkgICAgICAgIC8qIHNhdmUgRUlQICovCj4gKwlwdXNo
cSBPRkZTRVRPRl9TV19DVFhfSVAoJXJzaSkgICAgICAgICAgICAvKiByZXN0b3JlIEVJUCAqLwo+
ICsJcmV0Cj4gKzE6Cj4gKwlwb3BxICVyMTUKPiArCXBvcHEgJXIxNAo+ICsJcG9wcSAlcjEzCj4g
Kwlwb3BxICVyMTIKPiArCXBvcHEgJXJieAo+ICsJcG9wcSAlcmJwCj4gKwlyZXQKPiBkaWZmIC0t
Z2l0IGEvcGxhdC9rdm0vTWFrZWZpbGUudWsgYi9wbGF0L2t2bS9NYWtlZmlsZS51awo+IGluZGV4
IDQzM2QyOTguLjgyM2U3ODUgMTAwNjQ0Cj4gLS0tIGEvcGxhdC9rdm0vTWFrZWZpbGUudWsKPiAr
KysgYi9wbGF0L2t2bS9NYWtlZmlsZS51awo+IEBAIC0xNiw2ICsxNiwxMSBAQCBMSUJLVk1QTEFU
X0FTSU5DTFVERVMteSAgICAgICAgKz0gLUkkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL2luY2x1ZGUK
PiAgIExJQktWTVBMQVRfQ0lOQ0xVREVTLXkgICAgICAgICArPSAtSSQoTElCS1ZNUExBVF9CQVNF
KS9pbmNsdWRlCj4gICBMSUJLVk1QTEFUX0NJTkNMVURFUy15ICAgICAgICAgKz0gLUkkKFVLX1BM
QVRfQ09NTU9OX0JBU0UpL2luY2x1ZGUKPiAgIAo+ICtpZmVxICgkKEhBVkVfU0NIRUQpLHkpCj4g
K0xJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0Up
L3g4Ni90aHJlYWRfc3RhcnQuU3xjb21tb24KPiArTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZf
NjQpICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkvdGhyZWFkLmN8Y29tbW9uCj4gK0xJQktWTVBM
QVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL3N3X2N0eC5j
fGNvbW1vbgo+ICtlbmRpZgo+ICAgTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQo
TElCS1ZNUExBVF9CQVNFKS94ODYvZW50cnk2NC5TCj4gICBMSUJLVk1QTEFUX1NSQ1MtJChBUkNI
X1g4Nl82NCkgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3g4Ni9jcHVfeDg2XzY0LmMKPiAgIExJQktW
TVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2L3NldHVw
LmMKPiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4vTWFrZWZpbGUudWsgYi9wbGF0L3hlbi9NYWtlZmls
ZS51awo+IGluZGV4IDdjYjU1ZGMuLjRhMmY5YmYgMTAwNjQ0Cj4gLS0tIGEvcGxhdC94ZW4vTWFr
ZWZpbGUudWsKPiArKysgYi9wbGF0L3hlbi9NYWtlZmlsZS51awo+IEBAIC0zMiw2ICszMiwxMSBA
QCBMSUJYRU5QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNF
KS9sY3B1LmN8Y29tbW9uCj4gICBpZm5lcSAoLCQoZmlsdGVyIHg4Nl8zMiB4ODZfNjQsJChVS19B
UkNIKSkpCj4gICBMSUJYRU5QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChVS19QTEFUX0NP
TU1PTl9CQVNFKS94ODYvdHJhY2UuY3xjb21tb24KPiAgIExJQlhFTlBMQVRfU1JDUy0kKEFSQ0hf
WDg2XzY0KSArPSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL3g4Ni90cmFwcy5jfGNvbW1vbgo+ICtp
ZmVxICgkKEhBVkVfU0NIRUQpLHkpCj4gK0xJQlhFTlBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSAr
PSAkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL3g4Ni90aHJlYWRfc3RhcnQuU3xjb21tb24KPiArTElC
WEVOUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkvdGhy
ZWFkLmN8Y29tbW9uCj4gK0xJQlhFTlBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKFVLX1BM
QVRfQ09NTU9OX0JBU0UpL3N3X2N0eC5jfGNvbW1vbgo+ICtlbmRpZgo+ICAgTElCWEVOUExBVF9T
UkNTLXkgICAgICAgICAgICAgICs9ICQoTElCWEVOUExBVF9CQVNFKS94ODYvc2V0dXAuYwo+ICAg
TElCWEVOUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCWEVOUExBVF9CQVNFKS94ODYv
dHJhcHMuYwo+ICAgTElCWEVOUExBVF9TUkNTLSQoQVJDSF9YODZfMzIpICs9ICQoTElCWEVOUExB
VF9CQVNFKS94ODYvZW50cnkzMi5TCj4gQEAgLTM5LDcgKzQ0LDYgQEAgTElCWEVOUExBVF9TUkNT
LSQoQVJDSF9YODZfNjQpICs9ICQoTElCWEVOUExBVF9CQVNFKS94ODYvZW50cnk2NC5TCj4gICBM
SUJYRU5QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJYRU5QTEFUX0JBU0UpL3g4Ni9t
bS5jCj4gICBMSUJYRU5QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJYRU5QTEFUX0JB
U0UpL3g4Ni9hcmNoX2V2ZW50cy5jCj4gICBMSUJYRU5QTEFUX1NSQ1MteSAgICAgICAgICAgICAg
Kz0gJChMSUJYRU5QTEFUX0JBU0UpL3g4Ni9hcmNoX3RpbWUuYwo+IC1MSUJYRU5QTEFUX1NSQ1Mt
JChMSUJVS1NDSEVEKSAgKz0gJChMSUJYRU5QTEFUX0JBU0UpL3g4Ni9hcmNoX3RocmVhZC5jCj4g
ICAKPiAgIGlmbmVxICgkKFhFTl9IVk1MSVRFKSx5KQo+ICAgTElCWEVOUExBVF9BU0ZMQUdTLXkg
ICAgICAgICAgICs9IC1EQ09ORklHX1BBUkFWSVJUCj4gQEAgLTY1LDUgKzY5LDMgQEAgTElCWEVO
UExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCWEVOUExBVF9CQVNFKS9sY3B1LmMKPiAg
IExJQlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQlhFTlBMQVRfQkFTRSkvY29u
c29sZS5jCj4gICBMSUJYRU5QTEFUX1NSQ1MteSAgICAgICAgICAgICAgKz0gJChMSUJYRU5QTEFU
X0JBU0UpL3NodXRkb3duLmMKPiAgIExJQlhFTlBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAk
KExJQlhFTlBMQVRfQkFTRSkvZXZlbnRzLmMKPiAtTElCWEVOUExBVF9TUkNTLSQoTElCVUtTQ0hF
RCkgICs9ICQoTElCWEVOUExBVF9CQVNFKS90aHJlYWQuYwo+IC1MSUJYRU5QTEFUX1NSQ1MtJChM
SUJVS1NDSEVEKSAgKz0gJChMSUJYRU5QTEFUX0JBU0UpL3NjaGVkLmMKPiBkaWZmIC0tZ2l0IGEv
cGxhdC94ZW4vaW5jbHVkZS9jb21tb24vc2NoZWQuaCBiL3BsYXQveGVuL2luY2x1ZGUvY29tbW9u
L3NjaGVkLmgKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAxMmRmMWJiLi4wMDAw
MDAwCj4gLS0tIGEvcGxhdC94ZW4vaW5jbHVkZS9jb21tb24vc2NoZWQuaAo+ICsrKyAvZGV2L251
bGwKPiBAQCAtMSw1MiArMCwwIEBACj4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0Qt
Mi1DbGF1c2UgKi8KPiAtLyoKPiAtICogQ29weXJpZ2h0IChjKSAyMDA5IENpdHJpeCBTeXN0ZW1z
LCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gLSAqCj4gLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+IC0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKPiAtICogYXJlIG1ldDoKPiAtICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiAtICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+IC0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAo+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gLSAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4g
LSAqCj4gLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORAo+IC0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiAtICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UKPiAtICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1Ig
Q09OVFJJQlVUT1JTIEJFIExJQUJMRQo+IC0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAo+IC0gKiBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUwo+IC0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiAtICogSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKPiAt
ICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWQo+IC0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCj4gLSAqIFNVQ0ggREFNQUdF
Lgo+IC0gKi8KPiAtLyoKPiAtICogUG9ydCBmcm9tIE1pbmktT1M6IGluY2x1ZGUvc2NoZWQuaAo+
IC0gKi8KPiAtCj4gLSNpZm5kZWYgX19TQ0hFRF9IX18KPiAtI2RlZmluZSBfX1NDSEVEX0hfXwo+
IC0KPiAtI2luY2x1ZGUgPHN0ZGludC5oPgo+IC0jaWZkZWYgSEFWRV9MSUJDCj4gLSNpbmNsdWRl
IDxzeXMvcmVlbnQuaD4KPiAtI2VuZGlmCj4gLSNpbmNsdWRlIDx4ZW4teDg2L2FyY2hfc2NoZWQu
aD4KPiAtI2luY2x1ZGUgPHVrL2Vzc2VudGlhbHMuaD4KPiAtI2luY2x1ZGUgPHVrL2xpc3QuaD4K
PiAtI2luY2x1ZGUgPHVrL3RocmVhZC5oPgo+IC0KPiAtI2RlZmluZSBzd2l0Y2hfdGhyZWFkcyhw
cmV2LCBuZXh0KSBhcmNoX3N3aXRjaF90aHJlYWRzKHByZXYsIG5leHQpCj4gLQo+IC0vKiBBcmNo
aXRlY3R1cmUgc3BlY2lmaWMgc2V0dXAgb2YgdGhyZWFkIGNyZWF0aW9uLiAqLwo+IC12b2lkIGFy
Y2hfdGhyZWFkX2luaXQoc3RydWN0IHVrcGxhdF90aHJlYWRfY3R4ICp0aHJlYWQsIHZvaWQgKnN0
YWNrLAo+IC0JCSAgICAgIHZvaWQgKCpmdW5jdGlvbikodm9pZCAqKSwgdm9pZCAqZGF0YSk7Cj4g
LXZvaWQgYXJjaF9ydW5faWRsZV90aHJlYWQoc3RydWN0IHVrcGxhdF90aHJlYWRfY3R4ICppZGxl
X3RocmVhZCkgX19ub3JldHVybjsKPiAtCj4gLS8qIFRPRE8gcmV2aXNpdCBmb3Igb3RoZXIgc2No
ZWR1bGVycyAqLwo+IC12b2lkIGV4aXRfdGhyZWFkKHZvaWQpIF9fbm9yZXR1cm47Cj4gLQo+IC0j
ZW5kaWYgLyogX19TQ0hFRF9IX18gKi8KPiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4vaW5jbHVkZS94
ZW4teDg2L2FyY2hfc2NoZWQuaCBiL3BsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9hcmNoX3NjaGVk
LmgKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCA2ZjcxNGU4Li4wMDAwMDAwCj4g
LS0tIGEvcGxhdC94ZW4vaW5jbHVkZS94ZW4teDg2L2FyY2hfc2NoZWQuaAo+ICsrKyAvZGV2L251
bGwKPiBAQCAtMSw1NSArMCwwIEBACj4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0Qt
Mi1DbGF1c2UgKi8KPiAtLyoKPiAtICogQ29weXJpZ2h0IChjKSAyMDA5IENpdHJpeCBTeXN0ZW1z
LCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gLSAqCj4gLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+IC0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKPiAtICogYXJlIG1ldDoKPiAtICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiAtICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+IC0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAo+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gLSAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4g
LSAqCj4gLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVVUSE9SIEFORCBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORAo+IC0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiAtICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UKPiAtICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBVVRIT1IgT1Ig
Q09OVFJJQlVUT1JTIEJFIExJQUJMRQo+IC0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAo+IC0gKiBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUwo+IC0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiAtICogSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKPiAt
ICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWQo+IC0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCj4gLSAqIFNVQ0ggREFNQUdF
Lgo+IC0gKi8KPiAtLyoKPiAtICogUG9ydCBmcm9tIE1pbmktT1M6IGluY2x1ZGUveDg2L2FyY2hf
c2NoZWQuaAo+IC0gKi8KPiAtCj4gLSNpZm5kZWYgX19BUkNIX1NDSEVEX0hfXwo+IC0jZGVmaW5l
IF9fQVJDSF9TQ0hFRF9IX18KPiAtCj4gLSNpbmNsdWRlICJ1ay9hcmNoL2xpbWl0cy5oIgo+IC0K
PiAtc3RhdGljIGlubGluZSBzdHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggKmdldF9jdXJyZW50X2N0
eCh2b2lkKQo+IC17Cj4gLQlzdHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggKipjdXJyZW50Owo+IC0j
aWZkZWYgX19pMzg2X18KPiAtCXJlZ2lzdGVyIHVuc2lnbmVkIGxvbmcgc3AgYXNtKCJlc3AiKTsK
PiAtI2Vsc2UKPiAtCXJlZ2lzdGVyIHVuc2lnbmVkIGxvbmcgc3AgYXNtKCJyc3AiKTsKPiAtI2Vu
ZGlmCj4gLQljdXJyZW50ID0gKHN0cnVjdCB1a3BsYXRfdGhyZWFkX2N0eCAqKikKPiAtCQkgICh1
bnNpZ25lZCBsb25nKShzcCAmIH4oX19TVEFDS19TSVpFLTEpKTsKPiAtCj4gLQlyZXR1cm4gKmN1
cnJlbnQ7Cj4gLX0KPiAtCj4gLWV4dGVybiB2b2lkIF9fYXJjaF9zd2l0Y2hfdGhyZWFkcyh1bnNp
Z25lZCBsb25nICpwcmV2Y3R4LAo+IC0JCQkJICB1bnNpZ25lZCBsb25nICpuZXh0Y3R4KTsKPiAt
Cj4gLSNkZWZpbmUgYXJjaF9zd2l0Y2hfdGhyZWFkcyhwcmV2LCBuZXh0KSBcCj4gLQlfX2FyY2hf
c3dpdGNoX3RocmVhZHMoJihwcmV2KS0+c3AsICYobmV4dCktPnNwKQo+IC0KPiAtI2VuZGlmIC8q
IF9fQVJDSF9TQ0hFRF9IX18gKi8KPiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4vc2NoZWQuYyBiL3Bs
YXQveGVuL3NjaGVkLmMKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAyYTQwMTVl
Li4wMDAwMDAwCj4gLS0tIGEvcGxhdC94ZW4vc2NoZWQuYwo+ICsrKyAvZGV2L251bGwKPiBAQCAt
MSwxMDYgKzAsMCBAQAo+IC0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUICovCj4gLS8q
Cj4gLSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqCj4gLSAqIChDKSAyMDA1IC0gR3J6ZWdvcnogTWlsb3Mg
LSBJbnRlbCBSZXNlYXJjaCBDYW1icmlkZ2UKPiAtICoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKPiAtICoK
PiAtICogICAgICAgIEZpbGU6IHNjaGVkLmMKPiAtICogICAgICBBdXRob3I6IEdyemVnb3J6IE1p
bG9zCj4gLSAqICAgICBDaGFuZ2VzOiBSb2JlcnQgS2Fpc2VyCj4gLSAqCj4gLSAqICAgICAgICBE
YXRlOiBBdWcgMjAwNQo+IC0gKgo+IC0gKiBFbnZpcm9ubWVudDogWGVuIE1pbmltYWwgT1MKPiAt
ICogRGVzY3JpcHRpb246IHNpbXBsZSBzY2hlZHVsZXIgZm9yIE1pbmktT3MKPiAtICogICAgICAg
ICAgICAgIFBvcnRlZCBmcm9tIE1pbmktT1MKPiAtICoKPiAtICogVGhlIHNjaGVkdWxlciBpcyBu
b24tcHJlZW1wdGl2ZSAoY29vcGVyYXRpdmUpLCBhbmQgc2NoZWR1bGVzIGFjY29yZGluZwo+IC0g
KiB0byBSb3VuZCBSb2JpbiBhbGdvcml0aG0uCj4gLSAqCj4gLSAqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Cj4gLSAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBh
bnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKPiAtICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNz
b2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvCj4gLSAqIGRl
YWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0
IGxpbWl0YXRpb24gdGhlCj4gLSAqIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2Us
IHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vcgo+IC0gKiBzZWxsIGNvcGll
cyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0
d2FyZSBpcwo+IC0gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zOgo+IC0gKgo+IC0gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQg
dGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbgo+IC0gKiBhbGwgY29w
aWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KPiAtICoKPiAtICog
VEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5Z
IEtJTkQsIEVYUFJFU1MgT1IKPiAtICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRF
RCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCj4gLSAqIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRQo+IC0gKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1Ig
QU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCj4gLSAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBB
TiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HCj4gLSAqIEZS
T00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0Ug
T1IgT1RIRVIKPiAtICogREVBTElOR1MgSU4gVEhFIFNPRlRXQVJFLgo+IC0gKi8KPiAtCj4gLSNp
bmNsdWRlIDxzdGRsaWIuaD4KPiAtI2luY2x1ZGUgPHN0ZGludC5oPgo+IC0jaW5jbHVkZSA8Y29t
bW9uL2h5cGVydmlzb3IuaD4KPiAtI2luY2x1ZGUgPGNvbW1vbi9zY2hlZC5oPgo+IC0jaW5jbHVk
ZSA8eGVuLXg4Ni9pcnEuaD4KPiAtI2luY2x1ZGUgPHVrL3NjaGVkLmg+Cj4gLSNpbmNsdWRlIDx1
ay9saXN0Lmg+Cj4gLSNpbmNsdWRlIDx1ay9hc3NlcnQuaD4KPiAtCj4gLQo+IC0jaWZkZWYgU0NI
RURfREVCVUcKPiAtI2RlZmluZSBERUJVRyhfZiwgX2EuLi4pIFwKPiAtCXVrX3ByaW50aygiTUlO
SV9PUyhmaWxlPXNjaGVkLmMsIGxpbmU9JWQpICIgX2YgIlxuIiwgX19MSU5FX18sICMjIF9hKQo+
IC0jZWxzZQo+IC0jZGVmaW5lIERFQlVHKF9mLCBfYS4uLikJKCh2b2lkKTApCj4gLSNlbmRpZgo+
IC0KPiAtI2lmIDAvL1RPRE8gcmV2aXNpdAo+IC0jaWZkZWYgSEFWRV9MSUJDCj4gLXN0YXRpYyBz
dHJ1Y3QgX3JlZW50IGNhbGxiYWNrX3JlZW50Owo+IC1zdHJ1Y3QgX3JlZW50ICpfX2dldHJlZW50
KHZvaWQpCj4gLXsKPiAtCXN0cnVjdCBfcmVlbnQgKl9yZWVudDsKPiAtCj4gLQlpZiAoIXRocmVh
ZHNfc3RhcnRlZCkKPiAtCQlfcmVlbnQgPSBfaW1wdXJlX3B0cjsKPiAtCWVsc2UgaWYgKGluX2Nh
bGxiYWNrKQo+IC0JCV9yZWVudCA9ICZjYWxsYmFja19yZWVudDsKPiAtCWVsc2UKPiAtCQlfcmVl
bnQgPSAmZ2V0X2N1cnJlbnRfY3R4KCktPnJlZW50Owo+IC0KPiAtI2lmbmRlZiBOREVCVUcKPiAt
I2lmIGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVmaW5lZChfX3g4Nl9fKQo+IC0Jewo+IC0jaWZk
ZWYgX194ODZfNjRfXwo+IC0JCXJlZ2lzdGVyIHVuc2lnbmVkIGxvbmcgc3AgYXNtICgicnNwIik7
Cj4gLSNlbHNlCj4gLQkJcmVnaXN0ZXIgdW5zaWduZWQgbG9uZyBzcCBhc20gKCJlc3AiKTsKPiAt
I2VuZGlmCj4gLQkJaWYgKChzcCAmIChTVEFDS19TSVpFLTEpKSA8IFNUQUNLX1NJWkUgLyAxNikg
ewo+IC0JCQlzdGF0aWMgaW50IG92ZXJmbG93aW5nOwo+IC0KPiAtCQkJaWYgKCFvdmVyZmxvd2lu
Zykgewo+IC0JCQkJb3ZlcmZsb3dpbmcgPSAxOwo+IC0JCQkJdWtfcHJpbnRrKCJzdGFjayBvdmVy
Zmxvd1xuIik7Cj4gLQkJCQlVQ19CVUcoKTsKPiAtCQkJfQo+IC0JCX0KPiAtCX0KPiAtI2VuZGlm
Cj4gLSNlbHNlCj4gLSNlcnJvciBOb3QgaW1wbGVtZW50ZWQgeWV0Cj4gLSNlbmRpZgo+IC0JcmV0
dXJuIF9yZWVudDsKPiAtfQo+IC0jZW5kaWYKPiAtI2VuZGlmCj4gLQo+IC12b2lkIGV4aXRfdGhy
ZWFkKHZvaWQpCj4gLXsKPiAtCXN0cnVjdCB1a190aHJlYWQgKnRocmVhZCA9IHVrX3RocmVhZF9j
dXJyZW50KCk7Cj4gLQo+IC0JdWtfcHJpbnRrKCJUaHJlYWQgXCIlc1wiIGV4aXRlZC5cbiIsIHRo
cmVhZC0+bmFtZSk7Cj4gLQo+IC0JdWtfdGhyZWFkX3N0b3AodGhyZWFkKTsKPiAtCVVLX0NSQVNI
KCJFcnJvciBzdG9wcGluZyB0aHJlYWQuIik7Cj4gLX0KPiBkaWZmIC0tZ2l0IGEvcGxhdC94ZW4v
dGhyZWFkLmMgYi9wbGF0L3hlbi90aHJlYWQuYwo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAo+
IGluZGV4IDUxZjMzZDQuLjAwMDAwMDAKPiAtLS0gYS9wbGF0L3hlbi90aHJlYWQuYwo+ICsrKyAv
ZGV2L251bGwKPiBAQCAtMSw2NiArMCwwIEBACj4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVy
OiBCU0QtMy1DbGF1c2UgKi8KPiAtLyoKPiAtICogQXV0aG9yczogQ29zdGluIEx1cHUgPGNvc3Rp
bi5sdXB1QGNzLnB1Yi5ybz4KPiAtICoKPiAtICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVy
b3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KPiAtICoKPiAt
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Cj4gLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+IC0gKiBhcmUgbWV0Ogo+IC0gKgo+IC0gKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAo+IC0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCj4gLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKPiAtICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KPiAtICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUg
Y29weXJpZ2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cwo+IC0gKiAgICBjb250cmlidXRv
cnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bQo+IC0gKiAgICB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBw
ZXJtaXNzaW9uLgo+IC0gKgo+IC0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKPiAtICogQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQo+IC0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQo+IC0gKiBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFCj4g
LSAqIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKPiAtICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKPiAtICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCj4g
LSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCj4gLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCj4gLSAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFCj4gLSAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgo+IC0gKgo+IC0gKiBUSElT
IEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgo+IC0g
Ki8KPiAtLyoKPiAtICogUGxhdGZvcm0gc3BlY2lmaWMgdGhyZWFkIGZ1bmN0aW9ucwo+IC0gKiBQ
b3J0ZWQgZnJvbSBNaW5pLU9TCj4gLSAqLwo+IC0KPiAtI2luY2x1ZGUgPHVrL3NjaGVkLmg+Cj4g
LSNpbmNsdWRlIDx1ay9wbGF0L3RocmVhZC5oPgo+IC0jaW5jbHVkZSA8Y29tbW9uL3NjaGVkLmg+
Cj4gLQo+IC1pbnQgdWtwbGF0X3RocmVhZF9jdHhfaW5pdChzdHJ1Y3QgdWtwbGF0X3RocmVhZF9j
dHggKmN0eCwgdm9pZCAqc3RhY2ssCj4gLQkJdm9pZCAoKmZ1bmN0aW9uKSh2b2lkICopLCB2b2lk
ICpkYXRhKQo+IC17Cj4gLQkvKiBDYWxsIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyBzZXR1cC4gKi8K
PiAtCWFyY2hfdGhyZWFkX2luaXQoY3R4LCBzdGFjaywgZnVuY3Rpb24sIGRhdGEpOwo+IC0KPiAt
CXJldHVybiAwOwo+IC19Cj4gLQo+IC12b2lkIHVrcGxhdF90aHJlYWRfY3R4X3N3aXRjaChzdHJ1
Y3QgdWtwbGF0X3RocmVhZF9jdHggKnByZXYsCj4gLQkJc3RydWN0IHVrcGxhdF90aHJlYWRfY3R4
ICpuZXh0KQo+IC17Cj4gLQlzd2l0Y2hfdGhyZWFkcyhwcmV2LCBuZXh0KTsKPiAtfQo+IC0KPiAt
c3RydWN0IHVrcGxhdF90aHJlYWRfY3R4ICp1a3BsYXRfdGhyZWFkX2N0eF9jdXJyZW50KHZvaWQp
Cj4gLXsKPiAtCXJldHVybiBnZXRfY3VycmVudF9jdHgoKTsKPiAtfQo+IC0KPiAtdm9pZCB1a3Bs
YXRfdGhyZWFkX2N0eF9ydW5faWRsZShzdHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggKmN0eCkKPiAt
ewo+IC0JYXJjaF9ydW5faWRsZV90aHJlYWQoY3R4KTsKPiAtfQo+IGRpZmYgLS1naXQgYS9wbGF0
L3hlbi94ODYvYXJjaF90aHJlYWQuYyBiL3BsYXQveGVuL3g4Ni9hcmNoX3RocmVhZC5jCj4gZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggNjUyMmJkNS4uMDAwMDAwMAo+IC0tLSBhL3Bs
YXQveGVuL3g4Ni9hcmNoX3RocmVhZC5jCj4gKysrIC9kZXYvbnVsbAo+IEBAIC0xLDkzICswLDAg
QEAKPiAtLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVCAqLwo+IC0vKgo+IC0gKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKgo+IC0gKiAoQykgMjAwNSAtIEdyemVnb3J6IE1pbG9zIC0gSW50ZWwgUmVz
ZWFyY2ggQ2FtYnJpZGdlCj4gLSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCj4gLSAqCj4gLSAqICAgICAg
ICBGaWxlOiBzY2hlZC5jCj4gLSAqICAgICAgQXV0aG9yOiBHcnplZ29yeiBNaWxvcwo+IC0gKiAg
ICAgQ2hhbmdlczogUm9iZXJ0IEthaXNlcgo+IC0gKgo+IC0gKiAgICAgICAgRGF0ZTogQXVnIDIw
MDUKPiAtICoKPiAtICogRW52aXJvbm1lbnQ6IFhlbiBNaW5pbWFsIE9TCj4gLSAqIERlc2NyaXB0
aW9uOiBzaW1wbGUgc2NoZWR1bGVyIGZvciBNaW5pLU9zCj4gLSAqICAgICAgICAgICAgICBQb3J0
ZWQgZnJvbSBNaW5pLU9TCj4gLSAqCj4gLSAqIFRoZSBzY2hlZHVsZXIgaXMgbm9uLXByZWVtcHRp
dmUgKGNvb3BlcmF0aXZlKSwgYW5kIHNjaGVkdWxlcyBhY2NvcmRpbmcKPiAtICogdG8gUm91bmQg
Um9iaW4gYWxnb3JpdGhtLgo+IC0gKgo+IC0gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgo+IC0gKiBQZXJt
aXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBv
YnRhaW5pbmcgYSBjb3B5Cj4gLSAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9j
dW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0bwo+IC0gKiBkZWFsIGluIHRoZSBT
b2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9u
IHRoZQo+IC0gKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBk
aXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKPiAtICogc2VsbCBjb3BpZXMgb2YgdGhlIFNv
ZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKPiAt
ICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
czoKPiAtICoKPiAtICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlz
c2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KPiAtICogYWxsIGNvcGllcyBvciBzdWJz
dGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCj4gLSAqCj4gLSAqIFRIRSBTT0ZUV0FS
RSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBS
RVNTIE9SCj4gLSAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAo+IC0gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKPiAt
ICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwg
REFNQUdFUyBPUiBPVEhFUgo+IC0gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9G
IENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORwo+IC0gKiBGUk9NLCBPVVQgT0Yg
T1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSCj4g
LSAqIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KPiAtICovCj4gLQo+IC0jaW5jbHVkZSA8c3Rk
bGliLmg+Cj4gLSNpbmNsdWRlIDx1ay9hcmNoL3RocmVhZC5oPgo+IC0jaW5jbHVkZSA8dWsvcGxh
dC9jb25maWcuaD4KPiAtI2luY2x1ZGUgPHVrL2Fzc2VydC5oPgo+IC0KPiAtCj4gLS8qIEdldHMg
cnVuIHdoZW4gYSBuZXcgdGhyZWFkIGlzIHNjaGVkdWxlZCB0aGUgZmlyc3QgdGltZSBldmVyLAo+
IC0gKiBkZWZpbmVkIGluIHg4Nl9bMzIvNjRdLlMKPiAtICovCj4gLWV4dGVybiB2b2lkIHRocmVh
ZF9zdGFydGVyKHZvaWQpOwo+IC0KPiAtLyogUHVzaGVzIHRoZSBzcGVjaWZpZWQgdmFsdWUgb250
byB0aGUgc3RhY2sgb2YgdGhlIHNwZWNpZmllZCB0aHJlYWQgKi8KPiAtc3RhdGljIHZvaWQgc3Rh
Y2tfcHVzaChzdHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggKmN0eCwgdW5zaWduZWQgbG9uZyB2YWx1
ZSkKPiAtewo+IC0JY3R4LT5zcCAtPSBzaXplb2YodW5zaWduZWQgbG9uZyk7Cj4gLQkqKCh1bnNp
Z25lZCBsb25nICopIGN0eC0+c3ApID0gdmFsdWU7Cj4gLX0KPiAtCj4gLS8qIEFyY2hpdGVjdHVy
ZSBzcGVjaWZpYyBzZXR1cCBvZiB0aHJlYWQgY3JlYXRpb24gKi8KPiAtdm9pZCBhcmNoX3RocmVh
ZF9pbml0KHN0cnVjdCB1a3BsYXRfdGhyZWFkX2N0eCAqY3R4LCB2b2lkICpzdGFjaywKPiAtCQkg
ICAgICB2b2lkICgqZnVuY3Rpb24pKHZvaWQgKiksIHZvaWQgKmRhdGEpCj4gLXsKPiAtCVVLX0FT
U0VSVChjdHggIT0gTlVMTCk7Cj4gLQlVS19BU1NFUlQoc3RhY2sgIT0gTlVMTCk7Cj4gLQo+IC0J
Y3R4LT5zcCA9ICh1bnNpZ25lZCBsb25nKSBzdGFjayArIFNUQUNLX1NJWkU7Cj4gLQkvKiBTYXZl
IHBvaW50ZXIgdG8gdGhlIHRocmVhZCBvbiB0aGUgc3RhY2ssIHVzZWQgYnkgY3VycmVudCBtYWNy
byAqLwo+IC0JKigodW5zaWduZWQgbG9uZyAqKSBzdGFjaykgPSAodW5zaWduZWQgbG9uZykgY3R4
Owo+IC0KPiAtCS8qIE11c3QgZW5zdXJlIHRoYXQgKCVyc3AgKyA4KSBpcyAxNi1ieXRlIGFsaWdu
ZWQKPiAtCSAqIGF0IHRoZSBzdGFydCBvZiB0aHJlYWRfc3RhcnRlci4KPiAtCSAqLwo+IC0JY3R4
LT5zcCAtPSBzaXplb2YodW5zaWduZWQgbG9uZyk7Cj4gLQo+IC0Jc3RhY2tfcHVzaChjdHgsICh1
bnNpZ25lZCBsb25nKSBmdW5jdGlvbik7Cj4gLQlzdGFja19wdXNoKGN0eCwgKHVuc2lnbmVkIGxv
bmcpIGRhdGEpOwo+IC0JY3R4LT5pcCA9ICh1bnNpZ25lZCBsb25nKSB0aHJlYWRfc3RhcnRlcjsK
PiAtfQo+IC0KPiAtdm9pZCBhcmNoX3J1bl9pZGxlX3RocmVhZChzdHJ1Y3QgdWtwbGF0X3RocmVh
ZF9jdHggKmN0eCkKPiAtewo+IC0gICAgLyogU3dpdGNoIHN0YWNrcyBhbmQgcnVuIHRoZSB0aHJl
YWQgKi8KPiAtCV9fYXNtX18gX192b2xhdGlsZV9fKAo+IC0jaWYgZGVmaW5lZChfX2kzODZfXykK
PiAtCQkJIm1vdiAlMCwlJWVzcFxuXHQiCj4gLSNlbGlmIGRlZmluZWQoX194ODZfNjRfXykKPiAt
CQkJIm1vdiAlMCwlJXJzcFxuXHQiCj4gLSNlbmRpZgo+IC0JCQkicHVzaCAlMVxuXHQiCj4gLQkJ
CSJyZXQiCj4gLQkJCTogIj1tIiAoY3R4LT5zcCkKPiAtCQkJOiAibSIgKGN0eC0+aXApCj4gLQkp
Owo+IC19Cj4gZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni9lbnRyeTY0LlMgYi9wbGF0L3hlbi94
ODYvZW50cnk2NC5TCj4gaW5kZXggZGI5YzYxNS4uYzI2NjgwNCAxMDA2NDQKPiAtLS0gYS9wbGF0
L3hlbi94ODYvZW50cnk2NC5TCj4gKysrIGIvcGxhdC94ZW4veDg2L2VudHJ5NjQuUwo+IEBAIC0z
NDAsMzcgKzM0MCw2IEBAIFRSQVBfRU5UUlkgc2ltZF9lcnJvciwgICAgICAgICAgMAo+ICAgLyog
bm8gVmlydHVhbGl6YXRpb24gRXhjZXB0aW9uICovCj4gICAKPiAgIAo+IC0jaWYgSEFWRV9TQ0hF
RAo+IC1FTlRSWSh0aHJlYWRfc3RhcnRlcikKPiAtICAgICAgICBwb3BxICVyZGkKPiAtICAgICAg
ICBwb3BxICVyYngKPiAtICAgICAgICBwdXNocSAkMAo+IC0gICAgICAgIHhvcnEgJXJicCwlcmJw
Cj4gLSAgICAgICAgY2FsbCAqJXJieAo+IC0gICAgICAgIGNhbGwgZXhpdF90aHJlYWQKPiAtCj4g
LUVOVFJZKF9fYXJjaF9zd2l0Y2hfdGhyZWFkcykKPiAtCXB1c2hxICVyYnAKPiAtCXB1c2hxICVy
YngKPiAtCXB1c2hxICVyMTIKPiAtCXB1c2hxICVyMTMKPiAtCXB1c2hxICVyMTQKPiAtCXB1c2hx
ICVyMTUKPiAtCW1vdnEgJXJzcCwgKCVyZGkpCQkvKiBzYXZlIEVTUCAqLwo+IC0JbW92cSAoJXJz
aSksICVyc3AJCS8qIHJlc3RvcmUgRVNQICovCj4gLQltb3ZxICQxZiwgOCglcmRpKQkJLyogc2F2
ZSBFSVAgKi8KPiAtCXB1c2hxIDgoJXJzaSkJCQkvKiByZXN0b3JlIEVJUCAqLwo+IC0JcmV0Cj4g
LTE6Cj4gLQlwb3BxICVyMTUKPiAtCXBvcHEgJXIxNAo+IC0JcG9wcSAlcjEzCj4gLQlwb3BxICVy
MTIKPiAtCXBvcHEgJXJieAo+IC0JcG9wcSAlcmJwCj4gLQlyZXQKPiAtI2VuZGlmCj4gLQo+ICAg
I2lmbmRlZiBDT05GSUdfUEFSQVZJUlQKPiAgIC5kYXRhCj4gICAuZ2xvYmwgcGFnZV90YWJsZV9i
YXNlCj4gZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni9zZXR1cC5jIGIvcGxhdC94ZW4veDg2L3Nl
dHVwLmMKPiBpbmRleCAxMGY5MzlkLi4xZTBmMGY3IDEwMDY0NAo+IC0tLSBhL3BsYXQveGVuL3g4
Ni9zZXR1cC5jCj4gKysrIGIvcGxhdC94ZW4veDg2L3NldHVwLmMKPiBAQCAtNzgsOSArNzgsNiBA
QAo+ICAgI2luY2x1ZGUgPHhlbi94ZW4uaD4KPiAgICNpbmNsdWRlIDxjb21tb24vY29uc29sZS5o
Pgo+ICAgI2luY2x1ZGUgPGNvbW1vbi9ldmVudHMuaD4KPiAtI2lmIExJQlVLU0NIRUQKPiAtI2lu
Y2x1ZGUgPGNvbW1vbi9zY2hlZC5oPgo+IC0jZW5kaWYKPiAgICNpZmRlZiBfX1g4Nl82NF9fCj4g
ICAjaW5jbHVkZSA8eGVuLXg4Ni9oeXBlcmNhbGw2NC5oPgo+ICAgI2Vsc2UKPiAKCl9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWls
aW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMu
eGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:50:16 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:50:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdXb-0001nq-Uq; Thu, 26 Apr 2018 09:50:15 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXb-0001nh-5a
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:50:15 +0000
X-Inumbo-ID: 0c3f8119-4937-11e8-9728-bc764e045a96
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 0c3f8119-4937-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 11:49:02 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id ADDC31042C1;
 Thu, 26 Apr 2018 11:50:12 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id TBFTdNpqtwyX; Thu, 26 Apr 2018 11:50:12 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 24A35104340;
 Thu, 26 Apr 2018 11:50:08 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:43 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-12-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <4141b056-dc54-7180-d7cf-bc3e86cae853@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:42 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-12-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 11/17] arch/x86_64: Add nop()
 macro
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1NCwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gU2lnbmVkLW9mZi1ieTogQ29z
dGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPiAtLS0KPiAgIGluY2x1ZGUvdWsvYXJj
aC94ODZfNjQvbGNwdS5oIHwgNCArKysrCj4gICAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25z
KCspCj4gCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5oIGIvaW5j
bHVkZS91ay9hcmNoL3g4Nl82NC9sY3B1LmgKPiBpbmRleCA2NDBmZjY4Li4xNzUwYzZmIDEwMDY0
NAo+IC0tLSBhL2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5oCj4gKysrIGIvaW5jbHVkZS91
ay9hcmNoL3g4Nl82NC9sY3B1LmgKPiBAQCAtNDMsMyArNDMsNyBAQAo+ICAgI2lmbmRlZiB3bWIK
PiAgICNkZWZpbmUgd21iKCkgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoInNmZW5jZSIgOiA6IDog
Im1lbW9yeSIpCj4gICAjZW5kaWYKPiArCj4gKyNpZm5kZWYgbm9wCj4gKyNkZWZpbmUgbm9wKCkg
ICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoIm5vcCIgOiA6IDogIm1lbW9yeSIpCj4gKyNlbmRpZgo+
IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9z
LWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0
cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:50:20 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:50:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdXg-0001oU-0B; Thu, 26 Apr 2018 09:50:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXe-0001oL-QS
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:50:18 +0000
X-Inumbo-ID: 8e6f07fa-4937-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 8e6f07fa-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:52:40 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id A821F104340;
 Thu, 26 Apr 2018 11:50:16 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 579nRnV8zIXC; Thu, 26 Apr 2018 11:50:16 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 7221A1042C1;
 Thu, 26 Apr 2018 11:50:12 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:44 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-13-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <66706db6-034b-d616-0650-5c191e5a8d83@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:43 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-13-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 12/17] arch/x86_64: Add function
 for stack pointer retrieval
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1NCwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gU2lnbmVkLW9mZi1ieTogQ29z
dGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPiAtLS0KPiAgIGluY2x1ZGUvdWsvYXJj
aC94ODZfNjQvbGNwdS5oIHwgOCArKysrKysrKwo+ICAgMSBmaWxlIGNoYW5nZWQsIDggaW5zZXJ0
aW9ucygrKQo+IAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaCBi
L2luY2x1ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5oCj4gaW5kZXggMTc1MGM2Zi4uOGM3MDU0MCAx
MDA2NDQKPiAtLS0gYS9pbmNsdWRlL3VrL2FyY2gveDg2XzY0L2xjcHUuaAo+ICsrKyBiL2luY2x1
ZGUvdWsvYXJjaC94ODZfNjQvbGNwdS5oCj4gQEAgLTQ3LDMgKzQ3LDExIEBACj4gICAjaWZuZGVm
IG5vcAo+ICAgI2RlZmluZSBub3AoKSAgIF9fYXNtX18gX192b2xhdGlsZV9fICgibm9wIiA6IDog
OiAibWVtb3J5IikKPiAgICNlbmRpZgo+ICsKPiArc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25n
IHVrYXJjaF9yZWFkX3NwKHZvaWQpCj4gK3sKPiArCXVuc2lnbmVkIGxvbmcgc3A7Cj4gKwo+ICsJ
X19hc21fXyBfX3ZvbGF0aWxlX18oIm1vdiAlJXJzcCwgJTAiIDogIj1yIihzcCkpOwo+ICsJcmV0
dXJuIHNwOwo+ICt9Cj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5w
cm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8v
bWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:50:25 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:50:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdXl-0001pX-1j; Thu, 26 Apr 2018 09:50:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXk-0001pJ-4Y
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:50:24 +0000
X-Inumbo-ID: 91628867-4937-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 91628867-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:52:45 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id A33791041C2;
 Thu, 26 Apr 2018 11:50:20 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 91HpbNvh_V-w; Thu, 26 Apr 2018 11:50:20 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 784E01042C1;
 Thu, 26 Apr 2018 11:50:16 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:49:46 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-14-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <69d87589-0689-bd1a-501b-ee6675c6ceff@neclab.eu>
Date: Thu, 26 Apr 2018 11:49:45 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-14-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 13/17] lib/uksched: Updates for
 inlining with plat/common changes
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1NCwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gV2hlbiBjcmVhdGluZyBhIG5l
dyB0aHJlYWQsIHRoZSBzY2hlZHVsZXIgYWxsb2NhdGVzIHRoZSBzdGFjaywgc2V0cyB0aGUgdGhy
ZWFkCj4gYWRkcmVzcyBvbiB0aGUgc3RhY2sgdG9wIGFuZCBwdXNoZXMgdGhlIHRocmVhZCBmdW5j
dGlvbiBhbmQgYXJndW1lbnQgb24gdGhlCj4gbmV3bHkgY3JlYXRlZCBzdGFjay4gVGhlIGNvbnRl
eHQgcmVzb3VyY2Ugd2lsbCBiZSBjcmVhdGVkIGJ5IHRoZSBwbGF0Zm9ybSB3aGljaAo+IHdpbGwg
c2V0IHRoZSBzdGFjayBwb2ludGVyIGFzIHByb3ZpZGVkIGJ5IHRoZSBzY2hlZHVsZXIgYW5kIHRo
ZSBpbnN0cnVjdGlvbgo+IHBvaW50ZXIgdG8gYSB2YWx1ZSByZXByZXNlbnRpbmcgdGhlIHN0YXJ0
IHJvdXRpbmUgZm9yIHRoZSBjb250ZXh0Lgo+IAo+IE90aGVyIGNoYW5nZXM6Cj4gLSBpbnRyb2R1
Y2luZyB1a19zY2hlZF9kZWZhdWx0X2luaXQgZnVuY3Rpb24KPiAtIHVzaW5nIG5ldyBjb250ZXh0
IGNhbGxiYWNrcyBhYnN0cmFjdGlvbgo+IC0gbmV3IHVrX3NjaGVkX3N0YXJ0IGZ1bmN0aW9uIHJl
cGxhY2luZyB1a19zY2hlZF9ydW47IHRoZSBzdGFydCBmdW5jdGlvbiBpcyB0aGUKPiBzYW1lIGZv
ciBhbGwgc2NoZWR1bGVycwo+IC0gYWxsIHNjaGVkdWxlcnMgaGF2ZSBhbiBpZGxlIHRocmVhZAo+
IC0gcmV2aXNpdGVkIHNlbWFudGljczogZHJvcHBpbmcgc3RhcnQvc3RvcCBuYW1lcyBmb3IgdGhy
ZWFkcyBmdW5jdGlvbnMgc2luY2Ugd2UKPiBjYW5ub3QgY29udHJvbCBleGFjdGx5IHdoZW4gdGhy
ZWFkcyBzdGFydC9zdG9wIHJ1bm5pbmc7IG1vcmUgc3VpdGFibGUgZnVuY3Rpb24KPiBuYW1lcyBh
cmUgYWRkL3JlbW92ZQo+IAo+IFNpZ25lZC1vZmYtYnk6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVw
dUBjcy5wdWIucm8+Cj4gLS0tCj4gICBsaWIvdWtzY2hlZC9pbmNsdWRlL3VrL3NjaGVkLmggIHwg
MTIwICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCj4gICBsaWIvdWtzY2hl
ZC9pbmNsdWRlL3VrL3RocmVhZC5oIHwgIDM5ICsrKysrKystLS0tLS0KPiAgIGxpYi91a3NjaGVk
L3NjaGVkLmMgICAgICAgICAgICAgfCAxMjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
Ky0tLS0tLS0tLQo+ICAgbGliL3Vrc2NoZWQvdGhyZWFkLmMgICAgICAgICAgICB8ICA3NiArKysr
KysrKysrKysrKysrKysrKysrKy0KPiAgIDQgZmlsZXMgY2hhbmdlZCwgMjc0IGluc2VydGlvbnMo
KyksIDg1IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9saWIvdWtzY2hlZC9pbmNsdWRl
L3VrL3NjaGVkLmggYi9saWIvdWtzY2hlZC9pbmNsdWRlL3VrL3NjaGVkLmgKPiBpbmRleCAxMzQ5
MmE3Li5iYmZlNDQyIDEwMDY0NAo+IC0tLSBhL2xpYi91a3NjaGVkL2luY2x1ZGUvdWsvc2NoZWQu
aAo+ICsrKyBiL2xpYi91a3NjaGVkL2luY2x1ZGUvdWsvc2NoZWQuaAo+IEBAIC00Miw4NiArNDIs
MTI4IEBACj4gICAjaW5jbHVkZSA8dWsvZXNzZW50aWFscy5oPgo+ICAgI2luY2x1ZGUgPGVycm5v
Lmg+Cj4gICAKPiArI2lmZGVmIF9fY3BsdXNwbHVzCj4gK2V4dGVybiAiQyIgewo+ICsjZW5kaWYK
PiArCj4gICBzdHJ1Y3QgdWtfc2NoZWQ7Cj4gICAKPiArc3RydWN0IHVrX3NjaGVkICp1a19zY2hl
ZF9kZWZhdWx0X2luaXQoc3RydWN0IHVrX2FsbG9jICphKTsKPiArCj4gICBleHRlcm4gc3RydWN0
IHVrX3NjaGVkICp1a19zY2hlZF9oZWFkOwo+ICAgaW50IHVrX3NjaGVkX3JlZ2lzdGVyKHN0cnVj
dCB1a19zY2hlZCAqcyk7Cj4gICBzdHJ1Y3QgdWtfc2NoZWQgKnVrX3NjaGVkX2dldF9kZWZhdWx0
KHZvaWQpOwo+ICAgaW50IHVrX3NjaGVkX3NldF9kZWZhdWx0KHN0cnVjdCB1a19zY2hlZCAqcyk7
Cj4gICAKPiAtdHlwZWRlZiB2b2lkICAoKnVrX3NjaGVkX3J1bl9mdW5jX3QpCj4gLQkJKHN0cnVj
dCB1a19zY2hlZCAqcykgX19ub3JldHVybjsKPiAtdHlwZWRlZiB2b2lkICAoKnVrX3NjaGVkX3Nj
aGVkdWxlX2Z1bmNfdCkKPiArCj4gK3R5cGVkZWYgdm9pZCAgKCp1a19zY2hlZF95aWVsZF9mdW5j
X3QpCj4gICAJCShzdHJ1Y3QgdWtfc2NoZWQgKnMpOwo+ICAgCj4gLXR5cGVkZWYgdm9pZCAgKCp1
a19zY2hlZF90aHJlYWRfc3RhcnRfZnVuY190KQo+ICt0eXBlZGVmIHZvaWQgICgqdWtfc2NoZWRf
dGhyZWFkX2FkZF9mdW5jX3QpCj4gICAJCShzdHJ1Y3QgdWtfc2NoZWQgKnMsIHN0cnVjdCB1a190
aHJlYWQgKnQpOwo+IC10eXBlZGVmIHZvaWQgICgqdWtfc2NoZWRfdGhyZWFkX3N0b3BfZnVuY190
KQo+ICt0eXBlZGVmIHZvaWQgICgqdWtfc2NoZWRfdGhyZWFkX3JlbW92ZV9mdW5jX3QpCj4gICAJ
CShzdHJ1Y3QgdWtfc2NoZWQgKnMsIHN0cnVjdCB1a190aHJlYWQgKnQpOwo+ICAgCj4gICBzdHJ1
Y3QgdWtfc2NoZWQgewo+IC0JdWtfc2NoZWRfc2NoZWR1bGVfZnVuY190IHNjaGVkdWxlOwo+ICsJ
dWtfc2NoZWRfeWllbGRfZnVuY190IHlpZWxkOwo+ICAgCj4gLQl1a19zY2hlZF9ydW5fZnVuY190
IHJ1bjsKPiAtCj4gLQl1a19zY2hlZF90aHJlYWRfc3RhcnRfZnVuY190IHRocmVhZF9zdGFydDsK
PiAtCXVrX3NjaGVkX3RocmVhZF9zdG9wX2Z1bmNfdCAgdGhyZWFkX3N0b3A7Cj4gKwl1a19zY2hl
ZF90aHJlYWRfYWRkX2Z1bmNfdCAgICAgIHRocmVhZF9hZGQ7Cj4gKwl1a19zY2hlZF90aHJlYWRf
cmVtb3ZlX2Z1bmNfdCAgIHRocmVhZF9yZW1vdmU7Cj4gICAKPiAgIAkvKiBpbnRlcm5hbCAqLwo+
ICsJc3RydWN0IHVrX3RocmVhZCBpZGxlOwo+ICsJc3RydWN0IHVrcGxhdF9jdHhfY2FsbGJhY2tz
IHBsYXRfY3R4X2NiczsKPiAgIAlzdHJ1Y3QgdWtfYWxsb2MgKmFsbG9jYXRvcjsKPiAgIAlzdHJ1
Y3QgdWtfc2NoZWQgKm5leHQ7Cj4gLQl2b2lkICpwcml2YXRlOwo+ICsJdm9pZCAqcHJ2Owo+ICAg
fTsKPiAgIAo+IC0vKiB3cmFwcGVyIGZ1bmN0aW9ucyAqLwo+IC0KPiAtc3RhdGljIGlubGluZSB2
b2lkIHVrX3NjaGVkX3NjaGVkdWxlKHN0cnVjdCB1a19zY2hlZCAqcykKPiAtewo+IC0JVUtfQVNT
RVJUKHMpOwo+IC0Jcy0+c2NoZWR1bGUocyk7Cj4gLX0KPiAtCj4gKy8qIHdyYXBwZXIgZnVuY3Rp
b25zIG92ZXIgc2NoZWR1bGVyIGNhbGxiYWNrcyAqLwo+ICAgc3RhdGljIGlubGluZSB2b2lkIHVr
X3NjaGVkX3lpZWxkKHZvaWQpCj4gICB7Cj4gLQl1a19zY2hlZF9zY2hlZHVsZSh1a19zY2hlZF9n
ZXRfZGVmYXVsdCgpKTsKPiArCXN0cnVjdCB1a19zY2hlZCAqczsKPiArCXN0cnVjdCB1a190aHJl
YWQgKmN1cnJlbnQgPSB1a190aHJlYWRfY3VycmVudCgpOwo+ICsKPiArCVVLX0FTU0VSVChjdXJy
ZW50KTsKPiArCj4gKwlzID0gY3VycmVudC0+c2NoZWQ7Cj4gKwlVS19BU1NFUlQocyk7Cj4gKwlz
LT55aWVsZChzKTsKPiAgIH0KPiAgIAo+IC1zdGF0aWMgaW5saW5lIHZvaWQgdWtfc2NoZWRfcnVu
KHN0cnVjdCB1a19zY2hlZCAqcykgX19ub3JldHVybjsKPiAtc3RhdGljIGlubGluZSB2b2lkIHVr
X3NjaGVkX3J1bihzdHJ1Y3QgdWtfc2NoZWQgKnMpCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCB1a19z
Y2hlZF90aHJlYWRfYWRkKHN0cnVjdCB1a19zY2hlZCAqcywKPiArCQlzdHJ1Y3QgdWtfdGhyZWFk
ICp0KQo+ICAgewo+ICAgCVVLX0FTU0VSVChzKTsKPiAtCXMtPnJ1bihzKTsKPiArCVVLX0FTU0VS
VCh0KTsKPiArCXQtPnNjaGVkID0gczsKPiArCXMtPnRocmVhZF9hZGQocywgdCk7Cj4gICB9Cj4g
ICAKPiAtc3RhdGljIGlubGluZSB2b2lkIHVrX3NjaGVkX3RocmVhZF9zdGFydChzdHJ1Y3QgdWtf
c2NoZWQgKnMsCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCB1a19zY2hlZF90aHJlYWRfcmVtb3ZlKHN0
cnVjdCB1a19zY2hlZCAqcywKPiAgIAkJc3RydWN0IHVrX3RocmVhZCAqdCkKPiAgIHsKPiAgIAlV
S19BU1NFUlQocyk7Cj4gLQlzLT50aHJlYWRfc3RhcnQocywgdCk7Cj4gKwlVS19BU1NFUlQodCk7
Cj4gKwlzLT50aHJlYWRfcmVtb3ZlKHMsIHQpOwo+ICsJdC0+c2NoZWQgPSBOVUxMOwo+ICAgfQo+
ICAgCj4gLXN0YXRpYyBpbmxpbmUgdm9pZCB1a19zY2hlZF90aHJlYWRfc3RvcChzdHJ1Y3QgdWtf
c2NoZWQgKnMsCj4gLQkJc3RydWN0IHVrX3RocmVhZCAqdCkKPiArCj4gKy8qCj4gKyAqIEludGVy
bmFsIHNjaGVkdWxlciBmdW5jdGlvbnMKPiArICovCj4gKwo+ICt2b2lkIHVrX3NjaGVkX2lkbGVf
aW5pdChzdHJ1Y3QgdWtfc2NoZWQgKnNjaGVkLAo+ICsJCXZvaWQgKnN0YWNrLCB2b2lkICgqZnVu
Y3Rpb24pKHZvaWQgKikpOwo+ICsKPiArc3RhdGljIGlubGluZSBzdHJ1Y3QgdWtfdGhyZWFkICp1
a19zY2hlZF9nZXRfaWRsZShzdHJ1Y3QgdWtfc2NoZWQgKnMpCj4gICB7Cj4gICAJVUtfQVNTRVJU
KHMpOwo+IC0Jcy0+dGhyZWFkX3N0b3AocywgdCk7Cj4gKwlyZXR1cm4gJnMtPmlkbGU7Cj4gICB9
Cj4gICAKPiAtc3RydWN0IHVrX3RocmVhZCAqdWtfc2NoZWRfdGhyZWFkX2NyZWF0ZShzdHJ1Y3Qg
dWtfc2NoZWQgKnNjaGVkLAo+IC0JCWNoYXIgKm5hbWUsIHZvaWQgKCpmdW5jdGlvbikodm9pZCAq
KSwgdm9pZCAqZGF0YSk7Cj4gLXZvaWQgdWtfc2NoZWRfdGhyZWFkX2Rlc3Ryb3koc3RydWN0IHVr
X3NjaGVkICpzY2hlZCwKPiAtCQlzdHJ1Y3QgdWtfdGhyZWFkICp0aHJlYWQpOwo+ICsvKgo+ICsg
KiBQdWJsaWMgc2NoZWR1bGVyIGZ1bmN0aW9ucwo+ICsgKi8KPiAgIAo+IC12b2lkIHVrX3NjaGVk
X3NsZWVwKHVpbnQzMl90IG1pbGxpcyk7Cj4gK3ZvaWQgdWtfc2NoZWRfc3RhcnQoc3RydWN0IHVr
X3NjaGVkICpzY2hlZCkgX19ub3JldHVybjsKPiAgIAo+IC0jZGVmaW5lIHVrX3NjaGVkX2luaXQo
cywgc2NoZWRfZnVuYywgcnVuX2Z1bmMsIFwKPiAtCQkJc3RhcnRfdGhyZWFkX2Z1bmMsIHN0b3Bf
dGhyZWFkX2Z1bmMpIFwKPiArI2RlZmluZSB1a19zY2hlZF9pbml0KHMsIHlpZWxkX2Z1bmMsIFwK
PiArCQl0aHJlYWRfYWRkX2Z1bmMsIHRocmVhZF9yZW1vdmVfZnVuYykgXAo+ICAgCWRvIHsgXAo+
IC0JCShzKS0+c2NoZWR1bGUgICAgICA9IHNjaGVkX2Z1bmM7IFwKPiAtCQkocyktPnJ1biAgICAg
ICAgICAgPSBydW5fZnVuYzsgXAo+IC0JCShzKS0+dGhyZWFkX3N0YXJ0ICA9IHN0YXJ0X3RocmVh
ZF9mdW5jOyBcCj4gLQkJKHMpLT50aHJlYWRfc3RvcCAgID0gc3RvcF90aHJlYWRfZnVuYzsgXAo+
ICsJCShzKS0+eWllbGQgICAgICAgICAgID0geWllbGRfZnVuYzsgXAo+ICsJCShzKS0+dGhyZWFk
X2FkZCAgICAgID0gdGhyZWFkX2FkZF9mdW5jOyBcCj4gKwkJKHMpLT50aHJlYWRfcmVtb3ZlICAg
PSB0aHJlYWRfcmVtb3ZlX2Z1bmM7IFwKPiAgIAkJdWtfc2NoZWRfcmVnaXN0ZXIoKHMpKTsgXAo+
ICAgCX0gd2hpbGUgKDApCj4gICAKPiArCj4gKy8qCj4gKyAqIEludGVybmFsIHRocmVhZCBzY2hl
ZHVsaW5nIGZ1bmN0aW9ucwo+ICsgKi8KPiArCj4gK3N0cnVjdCB1a190aHJlYWQgKnVrX3NjaGVk
X3RocmVhZF9jcmVhdGUoc3RydWN0IHVrX3NjaGVkICpzY2hlZCwKPiArCQljb25zdCBjaGFyICpu
YW1lLCB2b2lkICgqZnVuY3Rpb24pKHZvaWQgKiksIHZvaWQgKmFyZyk7Cj4gK3ZvaWQgdWtfc2No
ZWRfdGhyZWFkX2Rlc3Ryb3koc3RydWN0IHVrX3NjaGVkICpzY2hlZCwKPiArCQlzdHJ1Y3QgdWtf
dGhyZWFkICp0aHJlYWQpOwo+ICsKPiArc3RhdGljIGlubGluZQo+ICt2b2lkIHVrX3NjaGVkX3Ro
cmVhZF9zd2l0Y2goc3RydWN0IHVrX3NjaGVkICpzY2hlZCwKPiArCQlzdHJ1Y3QgdWtfdGhyZWFk
ICpwcmV2LCBzdHJ1Y3QgdWtfdGhyZWFkICpuZXh0KQo+ICt7Cj4gKwl1a3BsYXRfdGhyZWFkX2N0
eF9zd2l0Y2goJnNjaGVkLT5wbGF0X2N0eF9jYnMsIHByZXYtPmN0eCwgbmV4dC0+Y3R4KTsKPiAr
fQo+ICsKPiArLyoKPiArICogUHVibGljIHRocmVhZCBzY2hlZHVsaW5nIGZ1bmN0aW9ucwo+ICsg
Ki8KPiArCj4gK3ZvaWQgdWtfc2NoZWRfdGhyZWFkX3NsZWVwKF9fbnNlYyBuc2VjKTsKPiArdm9p
ZCB1a19zY2hlZF90aHJlYWRfZXhpdCh2b2lkKSBfX25vcmV0dXJuOwo+ICsKPiArI2lmZGVmIF9f
Y3BsdXNwbHVzCj4gK30KPiArI2VuZGlmCj4gKwo+ICAgI2VuZGlmIC8qIF9fVUtfU0NIRURfSF9f
ICovCj4gZGlmZiAtLWdpdCBhL2xpYi91a3NjaGVkL2luY2x1ZGUvdWsvdGhyZWFkLmggYi9saWIv
dWtzY2hlZC9pbmNsdWRlL3VrL3RocmVhZC5oCj4gaW5kZXggN2FiOGIzMS4uOWQ1MmYyNSAxMDA2
NDQKPiAtLS0gYS9saWIvdWtzY2hlZC9pbmNsdWRlL3VrL3RocmVhZC5oCj4gKysrIGIvbGliL3Vr
c2NoZWQvaW5jbHVkZS91ay90aHJlYWQuaAo+IEBAIC0zMiwxOCArMzIsMjIgQEAKPiAgICNpZmRl
ZiBIQVZFX0xJQkMKPiAgICNpbmNsdWRlIDxzeXMvcmVlbnQuaD4KPiAgICNlbmRpZgo+IC0jaW5j
bHVkZSA8dWsvYXJjaC90aHJlYWQuaD4KPiArI2luY2x1ZGUgPHVrL2FyY2gvbGNwdS5oPgo+ICAg
I2luY2x1ZGUgPHVrL2FyY2gvdGltZS5oPgo+ICAgI2luY2x1ZGUgPHVrL3BsYXQvdGhyZWFkLmg+
Cj4gICAjaW5jbHVkZSA8dWsvbGlzdC5oPgo+ICAgI2luY2x1ZGUgPHVrL2Vzc2VudGlhbHMuaD4K
PiAgIAo+ICsjaWZkZWYgX19jcGx1c3BsdXMKPiArZXh0ZXJuICJDIiB7Cj4gKyNlbmRpZgo+ICsK
PiAgIHN0cnVjdCB1a19zY2hlZDsKPiAgIAo+ICAgc3RydWN0IHVrX3RocmVhZCB7Cj4gLQljaGFy
ICpuYW1lOwo+IC0JY2hhciAqc3RhY2s7Cj4gLQlzdHJ1Y3QgdWtwbGF0X3RocmVhZF9jdHggcGxh
dF9jdHg7Cj4gKwljb25zdCBjaGFyICpuYW1lOwo+ICsJdm9pZCAqc3RhY2s7Cj4gKwl2b2lkICpj
dHg7Cj4gICAJVUtfVEFJTFFfRU5UUlkoc3RydWN0IHVrX3RocmVhZCkgdGhyZWFkX2xpc3Q7Cj4g
ICAJdWludDMyX3QgZmxhZ3M7Cj4gICAJX19zbnNlYyB3YWtldXBfdGltZTsKPiBAQCAtNTksMjMg
KzYzLDE2IEBAIFVLX1RBSUxRX0hFQUQodWtfdGhyZWFkX2xpc3QsIHN0cnVjdCB1a190aHJlYWQp
Owo+ICAgCXVrX3NjaGVkX3RocmVhZF9jcmVhdGUodWtfc2NoZWRfZ2V0X2RlZmF1bHQoKSwgbmFt
ZSwgZnVuY3Rpb24sIGRhdGEpCj4gICAjZGVmaW5lIHVrX3RocmVhZF9kZXN0cm95KHRocmVhZCkg
XAo+ICAgCXVrX3NjaGVkX3RocmVhZF9kZXN0cm95KHRocmVhZC0+c2NoZWQsIHRocmVhZCkKPiAt
I2RlZmluZSB1a190aHJlYWRfc3RhcnQodGhyZWFkKSBcCj4gLQl1a19zY2hlZF90aHJlYWRfc3Rh
cnQodGhyZWFkLT5zY2hlZCwgdGhyZWFkKQo+IC0jZGVmaW5lIHVrX3RocmVhZF9zdG9wKHRocmVh
ZCkgXAo+IC0JdWtfc2NoZWRfdGhyZWFkX3N0b3AodGhyZWFkLT5zY2hlZCwgdGhyZWFkKQo+ICAg
Cj4gICBzdGF0aWMgaW5saW5lCj4gICBzdHJ1Y3QgdWtfdGhyZWFkICp1a190aHJlYWRfY3VycmVu
dCh2b2lkKQo+ICAgewo+IC0Jc3RydWN0IHVrcGxhdF90aHJlYWRfY3R4ICpjdHggPSB1a3BsYXRf
dGhyZWFkX2N0eF9jdXJyZW50KCk7Cj4gKwlzdHJ1Y3QgdWtfdGhyZWFkICoqY3VycmVudDsKPiAr
CXVuc2lnbmVkIGxvbmcgc3AgPSB1a2FyY2hfcmVhZF9zcCgpOwo+ICAgCj4gLQlyZXR1cm4gX19j
b250YWluZXJvZihjdHgsIHN0cnVjdCB1a190aHJlYWQsIHBsYXRfY3R4KTsKPiAtfQo+ICsJY3Vy
cmVudCA9IChzdHJ1Y3QgdWtfdGhyZWFkICoqKSAoc3AgJiB+KF9fU1RBQ0tfU0laRSAtIDEpKTsK
PiAgIAo+IC1zdGF0aWMgaW5saW5lCj4gLXZvaWQgdWtfdGhyZWFkX3N3aXRjaChzdHJ1Y3QgdWtf
dGhyZWFkICpwcmV2LCBzdHJ1Y3QgdWtfdGhyZWFkICpuZXh0KQo+IC17Cj4gLQl1a3BsYXRfdGhy
ZWFkX2N0eF9zd2l0Y2goJnByZXYtPnBsYXRfY3R4LCAmbmV4dC0+cGxhdF9jdHgpOwo+ICsJcmV0
dXJuICpjdXJyZW50Owo+ICAgfQo+ICAgCj4gICAjZGVmaW5lIFJVTk5BQkxFX0ZMQUcgICAweDAw
MDAwMDAxCj4gQEAgLTg0LDggKzgxLDE4IEBAIHZvaWQgdWtfdGhyZWFkX3N3aXRjaChzdHJ1Y3Qg
dWtfdGhyZWFkICpwcmV2LCBzdHJ1Y3QgdWtfdGhyZWFkICpuZXh0KQo+ICAgI2RlZmluZSBzZXRf
cnVubmFibGUoX3RocmVhZCkgICAoKF90aHJlYWQpLT5mbGFncyB8PSAgUlVOTkFCTEVfRkxBRykK
PiAgICNkZWZpbmUgY2xlYXJfcnVubmFibGUoX3RocmVhZCkgKChfdGhyZWFkKS0+ZmxhZ3MgJj0g
flJVTk5BQkxFX0ZMQUcpCj4gICAKPiAtdm9pZCB1a190aHJlYWRfYmxvY2tfbWlsbGlzKHN0cnVj
dCB1a190aHJlYWQgKnRocmVhZCwgdWludDMyX3QgbWlsbGlzKTsKPiAraW50IHVrX3RocmVhZF9p
bml0KHN0cnVjdCB1a190aHJlYWQgKnRocmVhZCwKPiArCQlzdHJ1Y3QgdWtwbGF0X2N0eF9jYWxs
YmFja3MgKmNicywgc3RydWN0IHVrX2FsbG9jICphbGxvY2F0b3IsCj4gKwkJY29uc3QgY2hhciAq
bmFtZSwgdm9pZCAqc3RhY2ssCj4gKwkJdm9pZCAoKmZ1bmN0aW9uKSh2b2lkICopLCB2b2lkICph
cmcpOwo+ICt2b2lkIHVrX3RocmVhZF9maW5pKHN0cnVjdCB1a190aHJlYWQgKnRocmVhZCwKPiAr
CQlzdHJ1Y3QgdWtfYWxsb2MgKmFsbG9jYXRvcik7Cj4gK3ZvaWQgdWtfdGhyZWFkX2Jsb2NrX3Rp
bWVvdXQoc3RydWN0IHVrX3RocmVhZCAqdGhyZWFkLCBfX25zZWMgbnNlYyk7Cj4gICB2b2lkIHVr
X3RocmVhZF9ibG9jayhzdHJ1Y3QgdWtfdGhyZWFkICp0aHJlYWQpOwo+ICAgdm9pZCB1a190aHJl
YWRfd2FrZShzdHJ1Y3QgdWtfdGhyZWFkICp0aHJlYWQpOwo+ICAgCj4gKyNpZmRlZiBfX2NwbHVz
cGx1cwo+ICt9Cj4gKyNlbmRpZgo+ICsKPiAgICNlbmRpZiAvKiBfX1VLX1RIUkVBRF9IX18gKi8K
PiBkaWZmIC0tZ2l0IGEvbGliL3Vrc2NoZWQvc2NoZWQuYyBiL2xpYi91a3NjaGVkL3NjaGVkLmMK
PiBpbmRleCAzZGZhMmE0Li5iYWM4NmIzIDEwMDY0NAo+IC0tLSBhL2xpYi91a3NjaGVkL3NjaGVk
LmMKPiArKysgYi9saWIvdWtzY2hlZC9zY2hlZC5jCj4gQEAgLTM0LDExICszNCwyNyBAQAo+ICAg
Cj4gICAjaW5jbHVkZSA8c3RkbGliLmg+Cj4gICAjaW5jbHVkZSA8dWsvcGxhdC9jb25maWcuaD4K
PiArI2luY2x1ZGUgPHVrL3BsYXQvdGhyZWFkLmg+Cj4gICAjaW5jbHVkZSA8dWsvYWxsb2MuaD4K
PiAgICNpbmNsdWRlIDx1ay9zY2hlZC5oPgo+ICsjaWYgTElCVUtTQ0hFRENPT1AKPiArI2luY2x1
ZGUgPHVrL3NjaGVkY29vcC5oPgo+ICsjZW5kaWYKPiAgIAo+ICAgc3RydWN0IHVrX3NjaGVkICp1
a19zY2hlZF9oZWFkOwo+ICAgCj4gKy8qIEZJWE1FIFN1cHBvcnQgZm9yIGV4dGVybmFsIHNjaGVk
dWxlcnMgKi8KPiArc3RydWN0IHVrX3NjaGVkICp1a19zY2hlZF9kZWZhdWx0X2luaXQoc3RydWN0
IHVrX2FsbG9jICphKQo+ICt7Cj4gKwlzdHJ1Y3QgdWtfc2NoZWQgKnMgPSBOVUxMOwo+ICsKPiAr
I2lmIExJQlVLU0NIRURDT09QCj4gKwlzID0gdWtfc2NoZWRjb29wX2luaXQoYSk7Cj4gKyNlbmRp
Zgo+ICsKPiArCXJldHVybiBzOwo+ICt9Cj4gKwo+ICAgaW50IHVrX3NjaGVkX3JlZ2lzdGVyKHN0
cnVjdCB1a19zY2hlZCAqcykKPiAgIHsKPiAgIAlzdHJ1Y3QgdWtfc2NoZWQgKnRoaXMgPSB1a19z
Y2hlZF9oZWFkOwo+IEBAIC05Myw2MCArMTA5LDExNCBAQCBpbnQgdWtfc2NoZWRfc2V0X2RlZmF1
bHQoc3RydWN0IHVrX3NjaGVkICpzKQo+ICAgCXJldHVybiAwOwo+ICAgfQo+ICAgCj4gK3ZvaWQg
dWtfc2NoZWRfc3RhcnQoc3RydWN0IHVrX3NjaGVkICpzY2hlZCkKPiArewo+ICsJVUtfQVNTRVJU
KHNjaGVkICE9IE5VTEwpOwo+ICsJdWtwbGF0X3RocmVhZF9jdHhfc3RhcnQoJnNjaGVkLT5wbGF0
X2N0eF9jYnMsIHNjaGVkLT5pZGxlLmN0eCk7Cj4gK30KPiArCj4gK3N0YXRpYyB2b2lkICpjcmVh
dGVfc3RhY2soc3RydWN0IHVrX2FsbG9jICphbGxvY2F0b3IpCj4gK3sKPiArCXZvaWQgKnN0YWNr
Owo+ICsKPiArCXN0YWNrID0gdWtfcGFsbG9jKGFsbG9jYXRvciwgU1RBQ0tfU0laRV9QQUdFX09S
REVSKTsKPiArCWlmIChzdGFjayA9PSBOVUxMKSB7Cj4gKwkJdWtfcHJpbnRkKERMVkxfV0FSTiwg
IkVycm9yIGFsbG9jYXRpbmcgdGhyZWFkIHN0YWNrLiIpOwo+ICsJCXJldHVybiBOVUxMOwo+ICsJ
fQo+ICsKPiArCXJldHVybiBzdGFjazsKPiArfQo+ICsKPiArdm9pZCB1a19zY2hlZF9pZGxlX2lu
aXQoc3RydWN0IHVrX3NjaGVkICpzY2hlZCwKPiArCQl2b2lkICpzdGFjaywgdm9pZCAoKmZ1bmN0
aW9uKSh2b2lkICopKQo+ICt7Cj4gKwlzdHJ1Y3QgdWtfdGhyZWFkICppZGxlOwo+ICsJaW50IHJj
Owo+ICsKPiArCVVLX0FTU0VSVChzY2hlZCAhPSBOVUxMKTsKPiArCj4gKwlpZiAoc3RhY2sgPT0g
TlVMTCkKPiArCQlzdGFjayA9IGNyZWF0ZV9zdGFjayhzY2hlZC0+YWxsb2NhdG9yKTsKPiArCVVL
X0FTU0VSVChzdGFjayAhPSBOVUxMKTsKPiArCj4gKwlpZGxlID0gJnNjaGVkLT5pZGxlOwo+ICsK
PiArCXJjID0gdWtfdGhyZWFkX2luaXQoaWRsZSwKPiArCQkJJnNjaGVkLT5wbGF0X2N0eF9jYnMs
IHNjaGVkLT5hbGxvY2F0b3IsCj4gKwkJCSJJZGxlIiwgc3RhY2ssIGZ1bmN0aW9uLCBOVUxMKTsK
PiArCWlmIChyYykKPiArCQlVS19DUkFTSCgiRXJyb3IgaW5pdGlhbGl6aW5nIGlkbGUgdGhyZWFk
LiIpOwo+ICsKPiArCWlkbGUtPnNjaGVkID0gc2NoZWQ7Cj4gK30KPiArCj4gICBzdHJ1Y3QgdWtf
dGhyZWFkICp1a19zY2hlZF90aHJlYWRfY3JlYXRlKHN0cnVjdCB1a19zY2hlZCAqc2NoZWQsCj4g
LQkJY2hhciAqbmFtZSwgdm9pZCAoKmZ1bmN0aW9uKSh2b2lkICopLCB2b2lkICpkYXRhKQo+ICsJ
CWNvbnN0IGNoYXIgKm5hbWUsIHZvaWQgKCpmdW5jdGlvbikodm9pZCAqKSwgdm9pZCAqYXJnKQo+
ICAgewo+IC0Jc3RydWN0IHVrX3RocmVhZCAqdGhyZWFkOwo+ICsJc3RydWN0IHVrX3RocmVhZCAq
dGhyZWFkID0gTlVMTDsKPiArCXZvaWQgKnN0YWNrOwo+ICsJaW50IHJjOwo+ICAgCj4gICAJdGhy
ZWFkID0gdWtfbWFsbG9jKHNjaGVkLT5hbGxvY2F0b3IsIHNpemVvZihzdHJ1Y3QgdWtfdGhyZWFk
KSk7Cj4gICAJaWYgKHRocmVhZCA9PSBOVUxMKSB7Cj4gICAJCXVrX3ByaW50ZChETFZMX1dBUk4s
ICJFcnJvciBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgdGhyZWFkLiIpOwo+IC0JCWdvdG8gb3V0Owo+
ICsJCWdvdG8gZXJyOwo+ICAgCX0KPiAgIAo+ICAgCS8qIFdlIGNhbid0IHVzZSBsYXp5IGFsbG9j
YXRpb24gaGVyZQo+ICAgCSAqIHNpbmNlIHRoZSB0cmFwIGhhbmRsZXIgcnVucyBvbiB0aGUgc3Rh
Y2sKPiAgIAkgKi8KPiAtCXRocmVhZC0+c3RhY2sgPSB1a19wYWxsb2Moc2NoZWQtPmFsbG9jYXRv
ciwgU1RBQ0tfU0laRV9QQUdFX09SREVSKTsKPiAtCWlmICh0aHJlYWQtPnN0YWNrID09IE5VTEwp
IHsKPiAtCQl1a19wcmludGQoRExWTF9XQVJOLCAiRXJyb3IgYWxsb2NhdGluZyB0aHJlYWQgc3Rh
Y2suIik7Cj4gLQkJZnJlZSh0aHJlYWQpOwo+IC0JCXRocmVhZCA9IE5VTEw7Cj4gLQkJZ290byBv
dXQ7Cj4gLQl9Cj4gKwlzdGFjayA9IGNyZWF0ZV9zdGFjayhzY2hlZC0+YWxsb2NhdG9yKTsKPiAr
CWlmIChzdGFjayA9PSBOVUxMKQo+ICsJCWdvdG8gZXJyOwo+ICAgCj4gLQl0aHJlYWQtPm5hbWUg
PSBuYW1lOwo+IC0JdWtfcHJpbnRkKERMVkxfRVhUUkEsICJUaHJlYWQgXCIlc1wiOiBwb2ludGVy
OiAlcCwgc3RhY2s6ICVwXG4iLAo+IC0JCQluYW1lLCB0aHJlYWQsIHRocmVhZC0+c3RhY2spOwo+
ICsJcmMgPSB1a190aHJlYWRfaW5pdCh0aHJlYWQsCj4gKwkJCSZzY2hlZC0+cGxhdF9jdHhfY2Jz
LCBzY2hlZC0+YWxsb2NhdG9yLAo+ICsJCQluYW1lLCBzdGFjaywgZnVuY3Rpb24sIGFyZyk7Cj4g
KwlpZiAocmMpCj4gKwkJZ290byBlcnI7Cj4gICAKPiAtCS8qIE5vdCBydW5uYWJsZSwgbm90IGV4
aXRlZCwgbm90IHNsZWVwaW5nICovCj4gLQl0aHJlYWQtPmZsYWdzID0gMDsKPiAtCXRocmVhZC0+
d2FrZXVwX3RpbWUgPSAwTEw7Cj4gKwl1a19zY2hlZF90aHJlYWRfYWRkKHNjaGVkLCB0aHJlYWQp
Owo+ICAgCj4gLQkvKiBDYWxsIHBsYXRmb3JtIHNwZWNpZmljIHNldHVwLiAqLwo+IC0JdWtwbGF0
X3RocmVhZF9jdHhfaW5pdCgmdGhyZWFkLT5wbGF0X2N0eCwgdGhyZWFkLT5zdGFjaywKPiAtCQkJ
ICAgICAgIGZ1bmN0aW9uLCBkYXRhKTsKPiAtI2lmZGVmIEhBVkVfTElCQwo+IC0JLy9UT0RPIF9S
RUVOVF9JTklUX1BUUigmdGhyZWFkLT5yZWVudCk7Cj4gLSNlbmRpZgo+ICsJcmV0dXJuIHRocmVh
ZDsKPiAgIAo+IC0JdGhyZWFkLT5zY2hlZCA9IHNjaGVkOwo+ICtlcnI6Cj4gKwlpZiAoc3RhY2sp
Cj4gKwkJdWtfZnJlZShzY2hlZC0+YWxsb2NhdG9yLCBzdGFjayk7Cj4gKwlpZiAodGhyZWFkKQo+
ICsJCXVrX2ZyZWUoc2NoZWQtPmFsbG9jYXRvciwgdGhyZWFkKTsKPiAgIAo+IC1vdXQ6Cj4gLQly
ZXR1cm4gdGhyZWFkOwo+ICsJcmV0dXJuIE5VTEw7Cj4gICB9Cj4gICAKPiAgIHZvaWQgdWtfc2No
ZWRfdGhyZWFkX2Rlc3Ryb3koc3RydWN0IHVrX3NjaGVkICpzY2hlZCwgc3RydWN0IHVrX3RocmVh
ZCAqdGhyZWFkKQo+ICAgewo+ICsJVUtfQVNTRVJUKHNjaGVkICE9IE5VTEwpOwo+ICsJVUtfQVNT
RVJUKHRocmVhZCAhPSBOVUxMKTsKPiArCXVrX3RocmVhZF9maW5pKHRocmVhZCwgc2NoZWQtPmFs
bG9jYXRvcik7Cj4gICAJdWtfcGZyZWUoc2NoZWQtPmFsbG9jYXRvciwgdGhyZWFkLT5zdGFjaywg
U1RBQ0tfU0laRV9QQUdFX09SREVSKTsKPiAgIAl1a19mcmVlKHNjaGVkLT5hbGxvY2F0b3IsIHRo
cmVhZCk7Cj4gICB9Cj4gICAKPiAtdm9pZCB1a19zY2hlZF9zbGVlcCh1aW50MzJfdCBtaWxsaXMp
Cj4gK3ZvaWQgdWtfc2NoZWRfdGhyZWFkX3NsZWVwKF9fbnNlYyBuc2VjKQo+ICAgewo+ICAgCXN0
cnVjdCB1a190aHJlYWQgKnRocmVhZDsKPiAgIAo+ICAgCXRocmVhZCA9IHVrX3RocmVhZF9jdXJy
ZW50KCk7Cj4gLQl1a190aHJlYWRfYmxvY2tfbWlsbGlzKHRocmVhZCwgbWlsbGlzKTsKPiArCXVr
X3RocmVhZF9ibG9ja190aW1lb3V0KHRocmVhZCwgbnNlYyk7Cj4gICAJdWtfc2NoZWRfeWllbGQo
KTsKPiAgIH0KPiArCj4gK3ZvaWQgdWtfc2NoZWRfdGhyZWFkX2V4aXQodm9pZCkKPiArewo+ICsJ
c3RydWN0IHVrX3RocmVhZCAqdGhyZWFkOwo+ICsKPiArCXRocmVhZCA9IHVrX3RocmVhZF9jdXJy
ZW50KCk7Cj4gKwo+ICsJdWtfcHJpbnRkKERMVkxfSU5GTywgIlRocmVhZCBcIiVzXCIgZXhpdGVk
LlxuIiwgdGhyZWFkLT5uYW1lKTsKPiArCj4gKwlVS19BU1NFUlQodGhyZWFkLT5zY2hlZCk7Cj4g
Kwl1a19zY2hlZF90aHJlYWRfcmVtb3ZlKHRocmVhZC0+c2NoZWQsIHRocmVhZCk7Cj4gKwlVS19D
UkFTSCgiRXJyb3Igc3RvcHBpbmcgdGhyZWFkLiIpOwo+ICt9Cj4gZGlmZiAtLWdpdCBhL2xpYi91
a3NjaGVkL3RocmVhZC5jIGIvbGliL3Vrc2NoZWQvdGhyZWFkLmMKPiBpbmRleCAxMzM0YWFhLi44
M2Q0M2E0IDEwMDY0NAo+IC0tLSBhL2xpYi91a3NjaGVkL3RocmVhZC5jCj4gKysrIGIvbGliL3Vr
c2NoZWQvdGhyZWFkLmMKPiBAQCAtMjksMjAgKzI5LDg3IEBACj4gICAgKiBUaHJlYWQgZGVmaW5p
dGlvbnMKPiAgICAqIFBvcnRlZCBmcm9tIE1pbmktT1MKPiAgICAqLwo+ICsjaW5jbHVkZSA8c3Rk
bGliLmg+Cj4gKyNpbmNsdWRlIDx1ay9wbGF0L2NvbmZpZy5oPgo+ICAgI2luY2x1ZGUgPHVrL3Bs
YXQvdGltZS5oPgo+ICAgI2luY2x1ZGUgPHVrL3RocmVhZC5oPgo+ICsjaW5jbHVkZSA8dWsvcHJp
bnQuaD4KPiArI2luY2x1ZGUgPHVrL2Fzc2VydC5oPgo+ICAgCj4gICAKPiArLyogUHVzaGVzIHRo
ZSBzcGVjaWZpZWQgdmFsdWUgb250byB0aGUgc3RhY2sgb2YgdGhlIHNwZWNpZmllZCB0aHJlYWQg
Ki8KPiArc3RhdGljIHZvaWQgc3RhY2tfcHVzaCh1bnNpZ25lZCBsb25nICpzcCwgdW5zaWduZWQg
bG9uZyB2YWx1ZSkKPiArewo+ICsJKnNwIC09IHNpemVvZih1bnNpZ25lZCBsb25nKTsKPiArCSoo
KHVuc2lnbmVkIGxvbmcgKikgKnNwKSA9IHZhbHVlOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZCBp
bml0X3NwKHVuc2lnbmVkIGxvbmcgKnNwLCBjaGFyICpzdGFjaywKPiArCQl2b2lkICgqZnVuY3Rp
b24pKHZvaWQgKiksIHZvaWQgKmRhdGEpCj4gK3sKPiArCSpzcCA9ICh1bnNpZ25lZCBsb25nKSBz
dGFjayArIFNUQUNLX1NJWkU7Cj4gKwo+ICsJLyogTXVzdCBlbnN1cmUgdGhhdCAoJXJzcCArIDgp
IGlzIDE2LWJ5dGUgYWxpZ25lZAo+ICsJICogYXQgdGhlIHN0YXJ0IG9mIHRocmVhZF9zdGFydGVy
Lgo+ICsJICovCj4gKwlzdGFja19wdXNoKHNwLCAwKTsKPiArCj4gKwlzdGFja19wdXNoKHNwLCAo
dW5zaWduZWQgbG9uZykgZnVuY3Rpb24pOwo+ICsJc3RhY2tfcHVzaChzcCwgKHVuc2lnbmVkIGxv
bmcpIGRhdGEpOwo+ICt9Cj4gKwo+ICtpbnQgdWtfdGhyZWFkX2luaXQoc3RydWN0IHVrX3RocmVh
ZCAqdGhyZWFkLAo+ICsJCXN0cnVjdCB1a3BsYXRfY3R4X2NhbGxiYWNrcyAqY2JzLCBzdHJ1Y3Qg
dWtfYWxsb2MgKmFsbG9jYXRvciwKPiArCQljb25zdCBjaGFyICpuYW1lLCB2b2lkICpzdGFjaywK
PiArCQl2b2lkICgqZnVuY3Rpb24pKHZvaWQgKiksIHZvaWQgKmFyZykKPiArewo+ICsJdW5zaWdu
ZWQgbG9uZyBzcDsKPiArCj4gKwlVS19BU1NFUlQodGhyZWFkICE9IE5VTEwpOwo+ICsJVUtfQVNT
RVJUKHN0YWNrICE9IE5VTEwpOwo+ICsKPiArCS8qIFNhdmUgcG9pbnRlciB0byB0aGUgdGhyZWFk
IG9uIHRoZSBzdGFjayB0byBnZXQgY3VycmVudCB0aHJlYWQgKi8KPiArCSooKHVuc2lnbmVkIGxv
bmcgKikgc3RhY2spID0gKHVuc2lnbmVkIGxvbmcpIHRocmVhZDsKPiArCj4gKwlpbml0X3NwKCZz
cCwgc3RhY2ssIGZ1bmN0aW9uLCBhcmcpOwo+ICsKPiArCS8qIENhbGwgcGxhdGZvcm0gc3BlY2lm
aWMgc2V0dXAuICovCj4gKwl0aHJlYWQtPmN0eCA9IHVrcGxhdF90aHJlYWRfY3R4X2NyZWF0ZShj
YnMsIGFsbG9jYXRvciwgc3ApOwo+ICsJaWYgKHRocmVhZC0+Y3R4ID09IE5VTEwpCj4gKwkJcmV0
dXJuIC0xOwo+ICsKPiArCXRocmVhZC0+bmFtZSA9IG5hbWU7Cj4gKwl0aHJlYWQtPnN0YWNrID0g
c3RhY2s7Cj4gKwo+ICsJLyogTm90IHJ1bm5hYmxlLCBub3QgZXhpdGVkLCBub3Qgc2xlZXBpbmcg
Ki8KPiArCXRocmVhZC0+ZmxhZ3MgPSAwOwo+ICsJdGhyZWFkLT53YWtldXBfdGltZSA9IDBMTDsK
PiArCj4gKyNpZmRlZiBIQVZFX0xJQkMKPiArCS8vVE9ETyBfUkVFTlRfSU5JVF9QVFIoJnRocmVh
ZC0+cmVlbnQpOwo+ICsjZW5kaWYKPiArCj4gKwl1a19wcmludGQoRExWTF9JTkZPLCAiVGhyZWFk
IFwiJXNcIjogcG9pbnRlcjogJXAsIHN0YWNrOiAlcFxuIiwKPiArCQkJbmFtZSwgdGhyZWFkLCB0
aHJlYWQtPnN0YWNrKTsKPiArCj4gKwlyZXR1cm4gMDsKPiArfQo+ICsKPiArdm9pZCB1a190aHJl
YWRfZmluaShzdHJ1Y3QgdWtfdGhyZWFkICp0aHJlYWQsIHN0cnVjdCB1a19hbGxvYyAqYWxsb2Nh
dG9yKQo+ICt7Cj4gKwlVS19BU1NFUlQodGhyZWFkICE9IE5VTEwpOwo+ICsJdWtwbGF0X3RocmVh
ZF9jdHhfZGVzdHJveShhbGxvY2F0b3IsIHRocmVhZC0+Y3R4KTsKPiArfQo+ICsKPiAgIHN0YXRp
YyB2b2lkIHVrX3RocmVhZF9ibG9ja191bnRpbChzdHJ1Y3QgdWtfdGhyZWFkICp0aHJlYWQsIF9f
c25zZWMgdW50aWwpCj4gICB7Cj4gICAJdGhyZWFkLT53YWtldXBfdGltZSA9IHVudGlsOwo+ICAg
CWNsZWFyX3J1bm5hYmxlKHRocmVhZCk7Cj4gICB9Cj4gICAKPiAtdm9pZCB1a190aHJlYWRfYmxv
Y2tfbWlsbGlzKHN0cnVjdCB1a190aHJlYWQgKnRocmVhZCwgdWludDMyX3QgbWlsbGlzKQo+ICt2
b2lkIHVrX3RocmVhZF9ibG9ja190aW1lb3V0KHN0cnVjdCB1a190aHJlYWQgKnRocmVhZCwgX19u
c2VjIG5zZWMpCj4gICB7Cj4gLQlfX3Nuc2VjIHVudGlsID0gKF9fc25zZWMpIHVrcGxhdF9tb25v
dG9uaWNfY2xvY2soKSArCj4gLQkJCXVrYXJjaF90aW1lX21zZWNfdG9fbnNlYyhtaWxsaXMpOwo+
ICsJX19zbnNlYyB1bnRpbCA9IChfX3Nuc2VjKSB1a3BsYXRfbW9ub3RvbmljX2Nsb2NrKCkgKyBu
c2VjOwo+ICAgCj4gICAJdWtfdGhyZWFkX2Jsb2NrX3VudGlsKHRocmVhZCwgdW50aWwpOwo+ICAg
fQo+IEBAIC01NCw2ICsxMjEsOSBAQCB2b2lkIHVrX3RocmVhZF9ibG9jayhzdHJ1Y3QgdWtfdGhy
ZWFkICp0aHJlYWQpCj4gICAKPiAgIHZvaWQgdWtfdGhyZWFkX3dha2Uoc3RydWN0IHVrX3RocmVh
ZCAqdGhyZWFkKQo+ICAgewo+ICsJaWYgKGlzX3J1bm5hYmxlKHRocmVhZCkpCj4gKwkJcmV0dXJu
Owo+ICsKPiAgIAl0aHJlYWQtPndha2V1cF90aW1lID0gMExMOwo+ICAgCXNldF9ydW5uYWJsZSh0
aHJlYWQpOwo+ICAgfQo+IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVu
cHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv
L21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:50:37 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:50:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdXx-0001qY-3l; Thu, 26 Apr 2018 09:50:37 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXv-0001qP-Aj
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:50:35 +0000
X-Inumbo-ID: 1835a91e-4937-11e8-9728-bc764e045a96
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 1835a91e-4937-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 11:49:22 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id BD6A4104340;
 Thu, 26 Apr 2018 11:50:32 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 8twt4MysU6vf; Thu, 26 Apr 2018 11:50:32 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 87A91104314;
 Thu, 26 Apr 2018 11:50:28 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:50:13 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-15-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <4540bd70-a53f-6b7b-d863-2ae1918e47e8@neclab.eu>
Date: Thu, 26 Apr 2018 11:50:12 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-15-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 14/17] lib/ukschedcoop: Updates
 for inlining with uksched API changes
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1NCwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gQ2hhbmdlczoKPiAtIHVzaW5n
IG5ldyBjb250ZXh0IGNhbGxiYWNrcyBhYnN0cmFjdGlvbgo+IC0gaWRsZSB0aHJlYWQgaXMgc3Bl
Y2lmaWMgdG8gYWxsIHNjaGVkdWxlcnMKPiAKPiBTaWduZWQtb2ZmLWJ5OiBDb3N0aW4gTHVwdSA8
Y29zdGluLmx1cHVAY3MucHViLnJvPgo+IC0tLQo+ICAgbGliL3Vrc2NoZWRjb29wL3NjaGVkY29v
cC5jIHwgNDUgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4g
ICAxIGZpbGUgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCj4gCj4g
ZGlmZiAtLWdpdCBhL2xpYi91a3NjaGVkY29vcC9zY2hlZGNvb3AuYyBiL2xpYi91a3NjaGVkY29v
cC9zY2hlZGNvb3AuYwo+IGluZGV4IDYyMDFjN2IuLmRkMjIyMDkgMTAwNjQ0Cj4gLS0tIGEvbGli
L3Vrc2NoZWRjb29wL3NjaGVkY29vcC5jCj4gKysrIGIvbGliL3Vrc2NoZWRjb29wL3NjaGVkY29v
cC5jCj4gQEAgLTM1LDcgKzM1LDYgQEAKPiAgICNpbmNsdWRlIDx1ay9zY2hlZGNvb3AuaD4KPiAg
IAo+ICAgc3RydWN0IHNjaGVkY29vcF9wcml2YXRlIHsKPiAtCXN0cnVjdCB1a190aHJlYWQgKmlk
bGVfdGhyZWFkOwo+ICAgCXN0cnVjdCB1a190aHJlYWRfbGlzdCB0aHJlYWRfbGlzdDsKPiAgIAlz
dHJ1Y3QgdWtfdGhyZWFkX2xpc3QgZXhpdGVkX3RocmVhZHM7Cj4gICAJaW50IHRocmVhZHNfc3Rh
cnRlZDsKPiBAQCAtNTYsNyArNTUsNyBAQCBzdGF0aWMgdm9pZCBwcmludF9ydW5xdWV1ZShzdHJ1
Y3QgdWtfc2NoZWQgKnMpCj4gICAKPiAgIHN0YXRpYyB2b2lkIHNjaGVkY29vcF9zY2hlZHVsZShz
dHJ1Y3QgdWtfc2NoZWQgKnMpCj4gICB7Cj4gLQlzdHJ1Y3Qgc2NoZWRjb29wX3ByaXZhdGUgKnBy
diA9IHMtPnByaXZhdGU7Cj4gKwlzdHJ1Y3Qgc2NoZWRjb29wX3ByaXZhdGUgKnBydiA9IHMtPnBy
djsKPiAgIAlzdHJ1Y3QgdWtfdGhyZWFkICpwcmV2LCAqbmV4dCwgKnRocmVhZCwgKnRtcDsKPiAg
IAl1bnNpZ25lZCBsb25nIGZsYWdzOwo+ICAgCj4gQEAgLTEyMiw3ICsxMjEsNyBAQCBzdGF0aWMg
dm9pZCBzY2hlZGNvb3Bfc2NoZWR1bGUoc3RydWN0IHVrX3NjaGVkICpzKQo+ICAgCSAqIGludGVy
cnVwdGVkIGF0IHRoZSByZXR1cm4gaW5zdHJ1Y3Rpb24uIEFuZCB0aGVyZWZvcmUgYXQgc2FmZSBw
b2ludC4KPiAgIAkgKi8KPiAgIAlpZiAocHJldiAhPSBuZXh0KQo+IC0JCXVrX3RocmVhZF9zd2l0
Y2gocHJldiwgbmV4dCk7Cj4gKwkJdWtfc2NoZWRfdGhyZWFkX3N3aXRjaChzLCBwcmV2LCBuZXh0
KTsKPiAgIAo+ICAgCVVLX1RBSUxRX0ZPUkVBQ0hfU0FGRSh0aHJlYWQsICZwcnYtPmV4aXRlZF90
aHJlYWRzLCB0aHJlYWRfbGlzdCwgdG1wKSB7Cj4gICAJCWlmICh0aHJlYWQgIT0gcHJldikgewo+
IEBAIC0xMzMsMTAgKzEzMiwxMCBAQCBzdGF0aWMgdm9pZCBzY2hlZGNvb3Bfc2NoZWR1bGUoc3Ry
dWN0IHVrX3NjaGVkICpzKQo+ICAgCX0KPiAgIH0KPiAgIAo+IC1zdGF0aWMgdm9pZCBzY2hlZGNv
b3BfdGhyZWFkX3N0YXJ0KHN0cnVjdCB1a19zY2hlZCAqcywgc3RydWN0IHVrX3RocmVhZCAqdCkK
PiArc3RhdGljIHZvaWQgc2NoZWRjb29wX3RocmVhZF9hZGQoc3RydWN0IHVrX3NjaGVkICpzLCBz
dHJ1Y3QgdWtfdGhyZWFkICp0KQo+ICAgewo+ICAgCXVuc2lnbmVkIGxvbmcgZmxhZ3M7Cj4gLQlz
dHJ1Y3Qgc2NoZWRjb29wX3ByaXZhdGUgKnBydiA9IHMtPnByaXZhdGU7Cj4gKwlzdHJ1Y3Qgc2No
ZWRjb29wX3ByaXZhdGUgKnBydiA9IHMtPnBydjsKPiAgIAo+ICAgCXNldF9ydW5uYWJsZSh0KTsK
PiAgIAo+IEBAIC0xNDUsMTAgKzE0NCwxMCBAQCBzdGF0aWMgdm9pZCBzY2hlZGNvb3BfdGhyZWFk
X3N0YXJ0KHN0cnVjdCB1a19zY2hlZCAqcywgc3RydWN0IHVrX3RocmVhZCAqdCkKPiAgIAl1a3Bs
YXRfbGNwdV9yZXN0b3JlX2lycWYoZmxhZ3MpOwo+ICAgfQo+ICAgCj4gLXN0YXRpYyB2b2lkIHNj
aGVkY29vcF90aHJlYWRfc3RvcChzdHJ1Y3QgdWtfc2NoZWQgKnMsIHN0cnVjdCB1a190aHJlYWQg
KnQpCj4gK3N0YXRpYyB2b2lkIHNjaGVkY29vcF90aHJlYWRfcmVtb3ZlKHN0cnVjdCB1a19zY2hl
ZCAqcywgc3RydWN0IHVrX3RocmVhZCAqdCkKPiAgIHsKPiAgIAl1bnNpZ25lZCBsb25nIGZsYWdz
Owo+IC0Jc3RydWN0IHNjaGVkY29vcF9wcml2YXRlICpwcnYgPSBzLT5wcml2YXRlOwo+ICsJc3Ry
dWN0IHNjaGVkY29vcF9wcml2YXRlICpwcnYgPSBzLT5wcnY7Cj4gICAKPiAgIAlmbGFncyA9IHVr
cGxhdF9sY3B1X3NhdmVfaXJxZigpOwo+ICAgCj4gQEAgLTE3MiwyNCArMTcxLDIwIEBAIHN0YXRp
YyB2b2lkIGlkbGVfdGhyZWFkX2ZuKHZvaWQgKnVudXNlZCBfX3VudXNlZCkKPiAgIHsKPiAgIAlz
dHJ1Y3QgdWtfdGhyZWFkICpjdXJyZW50ID0gdWtfdGhyZWFkX2N1cnJlbnQoKTsKPiAgIAlzdHJ1
Y3QgdWtfc2NoZWQgKnMgPSBjdXJyZW50LT5zY2hlZDsKPiAtCXN0cnVjdCBzY2hlZGNvb3BfcHJp
dmF0ZSAqcHJ2ID0gcy0+cHJpdmF0ZTsKPiAtCj4gLQlVS19BU1NFUlQoY3VycmVudCA9PSBwcnYt
PmlkbGVfdGhyZWFkKTsKPiArCXN0cnVjdCBzY2hlZGNvb3BfcHJpdmF0ZSAqcHJ2ID0gcy0+cHJ2
Owo+ICAgCj4gICAJcHJ2LT50aHJlYWRzX3N0YXJ0ZWQgPSAxOwo+ICsJdWtwbGF0X2xjcHVfZW5h
YmxlX2lycSgpOwo+ICsKPiAgIAl3aGlsZSAoMSkgewo+ICAgCQl1a190aHJlYWRfYmxvY2soY3Vy
cmVudCk7Cj4gLQkJdWtfc2NoZWRfc2NoZWR1bGUocyk7Cj4gKwkJc2NoZWRjb29wX3NjaGVkdWxl
KHMpOwo+ICAgCX0KPiAgIH0KPiAgIAo+IC1zdGF0aWMgdm9pZCBzY2hlZGNvb3BfcnVuKHN0cnVj
dCB1a19zY2hlZCAqcykgX19ub3JldHVybjsKPiAtc3RhdGljIHZvaWQgc2NoZWRjb29wX3J1bihz
dHJ1Y3QgdWtfc2NoZWQgKnMpCj4gK3N0YXRpYyB2b2lkIHNjaGVkY29vcF95aWVsZChzdHJ1Y3Qg
dWtfc2NoZWQgKnMpCj4gICB7Cj4gLQlzdHJ1Y3Qgc2NoZWRjb29wX3ByaXZhdGUgKnBydiA9IHMt
PnByaXZhdGU7Cj4gLQlzdHJ1Y3QgdWtfdGhyZWFkICppZGxlX3RocmVhZCA9IHBydi0+aWRsZV90
aHJlYWQ7Cj4gLQo+IC0JdWtwbGF0X3RocmVhZF9jdHhfcnVuX2lkbGUoJmlkbGVfdGhyZWFkLT5w
bGF0X2N0eCk7Cj4gKwlzY2hlZGNvb3Bfc2NoZWR1bGUocyk7Cj4gICB9Cj4gICAKPiAgIHN0cnVj
dCB1a19zY2hlZCAqdWtfc2NoZWRjb29wX2luaXQoc3RydWN0IHVrX2FsbG9jICphKQo+IEBAIC0y
MDcsNiArMjAyLDggQEAgc3RydWN0IHVrX3NjaGVkICp1a19zY2hlZGNvb3BfaW5pdChzdHJ1Y3Qg
dWtfYWxsb2MgKmEpCj4gICAKPiAgIAlzY2hlZC0+YWxsb2NhdG9yID0gYTsKPiAgIAo+ICsJdWtw
bGF0X2N0eF9jYWxsYmFja3NfaW5pdCgmc2NoZWQtPnBsYXRfY3R4X2NicywgdWtwbGF0X2N0eF9z
dyk7Cj4gKwo+ICAgCXBydiA9IHVrX21hbGxvYyhhLCBzaXplb2Yoc3RydWN0IHNjaGVkY29vcF9w
cml2YXRlKSk7Cj4gICAJaWYgKHBydiA9PSBOVUxMKSB7Cj4gICAJCXVrX3ByaW50ZChETFZMX1dB
Uk4sCj4gQEAgLTIxNywxNiArMjE0LDE0IEBAIHN0cnVjdCB1a19zY2hlZCAqdWtfc2NoZWRjb29w
X2luaXQoc3RydWN0IHVrX2FsbG9jICphKQo+ICAgCVVLX1RBSUxRX0lOSVQoJnBydi0+ZXhpdGVk
X3RocmVhZHMpOwo+ICAgCVVLX1RBSUxRX0lOSVQoJnBydi0+dGhyZWFkX2xpc3QpOwo+ICAgCXBy
di0+dGhyZWFkc19zdGFydGVkID0gMDsKPiAtCXNjaGVkLT5wcml2YXRlID0gcHJ2Owo+IC0KPiAt
CXVrX3NjaGVkX2luaXQoc2NoZWQsIHNjaGVkY29vcF9zY2hlZHVsZSwgc2NoZWRjb29wX3J1biwK
PiAtCQkJc2NoZWRjb29wX3RocmVhZF9zdGFydCwgc2NoZWRjb29wX3RocmVhZF9zdG9wKTsKPiAr
CXNjaGVkLT5wcnYgPSBwcnY7Cj4gICAKPiAtCXBydi0+aWRsZV90aHJlYWQgPSB1a190aHJlYWRf
Y3JlYXRlKCJJZGxlIiwgaWRsZV90aHJlYWRfZm4sIE5VTEwpOwo+IC0JaWYgKHBydi0+aWRsZV90
aHJlYWQgPT0gTlVMTCkKPiAtCQlnb3RvIG91dF9lcnI7Cj4gKwl1a19zY2hlZF9pZGxlX2luaXQo
c2NoZWQsIE5VTEwsIGlkbGVfdGhyZWFkX2ZuKTsKPiAgIAo+IC0JdWtfdGhyZWFkX3N0YXJ0KHBy
di0+aWRsZV90aHJlYWQpOwo+ICsJdWtfc2NoZWRfaW5pdChzY2hlZCwKPiArCQkJc2NoZWRjb29w
X3lpZWxkLAo+ICsJCQlzY2hlZGNvb3BfdGhyZWFkX2FkZCwKPiArCQkJc2NoZWRjb29wX3RocmVh
ZF9yZW1vdmUpOwo+ICAgCj4gICAJcmV0dXJuIHNjaGVkOwo+ICAgCj4gCgpfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBs
aXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnBy
b2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:50:41 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:50:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdY1-0001rL-6d; Thu, 26 Apr 2018 09:50:41 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdXz-0001r3-MP
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:50:39 +0000
X-Inumbo-ID: 1ac3e00e-4937-11e8-9728-bc764e045a96
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 1ac3e00e-4937-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 11:49:26 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 12C0B1041C2;
 Thu, 26 Apr 2018 11:50:37 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id IK7NdcnciORS; Thu, 26 Apr 2018 11:50:36 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 8F06C1042C1;
 Thu, 26 Apr 2018 11:50:32 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:50:15 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-16-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <ce4c4a1b-17e6-a438-2c0d-8e496314738d@neclab.eu>
Date: Thu, 26 Apr 2018 11:50:15 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-16-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 15/17] plat/xen: Remove events
 enabling from platform code
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1NCwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gSW50ZXJydXB0cy9ldmVudHMg
aGF2ZSB0byBiZSBlbmFibGVkIHJpZ2h0IGJlZm9yZSBzdGFydGluZyB0aGUKPiBhcHBsaWNhdGlv
bi4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJv
Pgo+IC0tLQo+ICAgcGxhdC94ZW4veDg2L3NldHVwLmMgfCAzIC0tLQo+ICAgMSBmaWxlIGNoYW5n
ZWQsIDMgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL3BsYXQveGVuL3g4Ni9zZXR1cC5j
IGIvcGxhdC94ZW4veDg2L3NldHVwLmMKPiBpbmRleCAxZTBmMGY3Li44ODg1NDE1IDEwMDY0NAo+
IC0tLSBhL3BsYXQveGVuL3g4Ni9zZXR1cC5jCj4gKysrIGIvcGxhdC94ZW4veDg2L3NldHVwLmMK
PiBAQCAtMTg3LDkgKzE4Nyw2IEBAIHZvaWQgX2xpYnhlbnBsYXRfeDg2ZW50cnkodm9pZCAqc3Rh
cnRfaW5mbykKPiAgIAkvKiBTZXQgdXAgZXZlbnRzLiAqLwo+ICAgCWluaXRfZXZlbnRzKCk7Cj4g
ICAKPiAtCS8qIEVOQUJMRSBFVkVOVCBERUxJVkVSWS4gVGhpcyBpcyBkaXNhYmxlZCBhdCBzdGFy
dCBvZiBkYXkuICovCj4gLQlfX3N0aSgpOwo+IC0KPiAgIAl1a19wcmludGQoRExWTF9JTkZPLCAi
ICAgIHN0YXJ0X2luZm86ICVwXG4iLCBIWVBFUlZJU09SX3N0YXJ0X2luZm8pOwo+ICAgCXVrX3By
aW50ZChETFZMX0lORk8sICIgICBzaGFyZWRfaW5mbzogJXBcbiIsIEhZUEVSVklTT1Jfc2hhcmVk
X2luZm8pOwo+ICAgCXVrX3ByaW50ZChETFZMX0lORk8sICJoeXBlcmNhbGxfcGFnZTogJXBcbiIs
IGh5cGVyY2FsbF9wYWdlKTsKPiAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3Rz
LnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0
aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:50:45 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:50:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdY5-0001s7-8M; Thu, 26 Apr 2018 09:50:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdY3-0001ro-Au
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:50:43 +0000
X-Inumbo-ID: 9d346f8d-4937-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 9d346f8d-4937-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 09:53:05 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 74969104314;
 Thu, 26 Apr 2018 11:50:41 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id j-NDfmj0b0eq; Thu, 26 Apr 2018 11:50:41 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id DA4E71041C2;
 Thu, 26 Apr 2018 11:50:36 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:50:20 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-17-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <c952ba25-b3bc-a6a8-fb58-0b11abf2b66c@neclab.eu>
Date: Thu, 26 Apr 2018 11:50:19 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-17-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 16/17] plat/xen: Add IRQ
 subsystem initialization function
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1NCwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gSW50cm9kdWNpbmcgdWtwbGF0
X2lycV9pbml0IGZ1bmN0aW9uIGZvciBJUlEgc3Vic3lzdGVtIGluaXRpYWxpemF0aW9uLgo+IFRo
ZSBJUlEgc3Vic3lzdGVtIG1pZ2h0IHJlcXVpcmUgbWVtb3J5IGFsbG9jYXRpb25zIGZvciBzaGFy
ZWQgSVJRCj4gaGFuZGxpbmcgaW4gd2hpY2ggY2FzZSB0aGUgYWxsb2NhdG9yIG11c3QgYmUgc3Bl
Y2lmaWVkIG9uIGluaXQuCj4gCj4gU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5s
dXB1QGNzLnB1Yi5ybz4KPiAtLS0KPiAgIGluY2x1ZGUvdWsvcGxhdC9pcnEuaCB8IDU0ICsrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICAgcGxhdC94
ZW4vZXZlbnRzLmMgICAgIHwgIDggKysrKysrKysKPiAgIDIgZmlsZXMgY2hhbmdlZCwgNjIgaW5z
ZXJ0aW9ucygrKQo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvdWsvcGxhdC9pcnEuaAo+
IAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VrL3BsYXQvaXJxLmggYi9pbmNsdWRlL3VrL3BsYXQv
aXJxLmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLmI0ZTYzNzUKPiAt
LS0gL2Rldi9udWxsCj4gKysrIGIvaW5jbHVkZS91ay9wbGF0L2lycS5oCj4gQEAgLTAsMCArMSw1
NCBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICovCj4gKy8q
Cj4gKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Cj4gKyAq
Cj4gKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRp
b24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gKyAqCj4gKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+ICsgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKPiArICogYXJlIG1ldDoKPiArICoKPiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+
ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Cj4gKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xkZXIgbm9yIHRo
ZSBuYW1lcyBvZiBpdHMKPiArICogICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KPiArICogICAgdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KPiArICoKPiArICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUyAiQVMgSVMiCj4gKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKPiArICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UKPiArICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQo+ICsgKiBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCj4gKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCj4gKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwo+ICsgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgo+ICsg
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQo+ICsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQo+ICsgKiBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KPiArICoKPiArICogVEhJUyBIRUFERVIgTUFZIE5PVCBCRSBFWFRS
QUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KPiArICovCj4gKyNpZm5kZWYgX19VS1BMQVRf
SVJRX0hfXwo+ICsjZGVmaW5lIF9fVUtQTEFUX0lSUV9IX18KPiArCj4gKyNpZmRlZiBfX2NwbHVz
cGx1cwo+ICtleHRlcm4gIkMiIHsKPiArI2VuZGlmCj4gKwo+ICtzdHJ1Y3QgdWtfYWxsb2M7Cj4g
Kwo+ICsvKioKPiArICogSW5pdGlhbGl6ZXMgcGxhdGZvcm0gSVJRIHN1YnN5c3RlbQo+ICsgKiBA
cGFyYW0gYSBUaGUgYWxsb2NhdG9yIHRvIGJlIHVzZWQgZm9yIGludGVybmFsIG1lbW9yeSBhbGxv
Y2F0aW9ucwo+ICsgKiBAcmV0dXJuIGluaXRpYWxpemF0aW9uIHN0YXR1cwo+ICsgKi8KPiAraW50
IHVrcGxhdF9pcnFfaW5pdChzdHJ1Y3QgdWtfYWxsb2MgKmEpOwo+ICsKPiArI2lmZGVmIF9fY3Bs
dXNwbHVzCj4gK30KPiArI2VuZGlmCj4gKwo+ICsjZW5kaWYgLyogX19VS1BMQVRfSVJRX0hfXyAq
Lwo+IGRpZmYgLS1naXQgYS9wbGF0L3hlbi9ldmVudHMuYyBiL3BsYXQveGVuL2V2ZW50cy5jCj4g
aW5kZXggOTM5Njc0Ny4uMTcwOWI5MCAxMDA2NDQKPiAtLS0gYS9wbGF0L3hlbi9ldmVudHMuYwo+
ICsrKyBiL3BsYXQveGVuL2V2ZW50cy5jCj4gQEAgLTMyNywzICszMjcsMTEgQEAgaW5saW5lIHZv
aWQgY2xlYXJfZXZ0Y2huKHVpbnQzMl90IHBvcnQpCj4gICAKPiAgIAl1a2FyY2hfY2xyX2JpdF9z
eW5jKHBvcnQsICZzLT5ldnRjaG5fcGVuZGluZ1swXSk7Cj4gICB9Cj4gKwo+ICtzdHJ1Y3QgdWtf
YWxsb2M7Cj4gKwo+ICtpbnQgdWtwbGF0X2lycV9pbml0KHN0cnVjdCB1a19hbGxvYyAqYSBfX3Vu
dXNlZCkKPiArewo+ICsJLyogTm90aGluZyBmb3Igbm93ICovCj4gKwlyZXR1cm4gMDsKPiArfQo+
IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9z
LWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0
cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 09:50:48 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 09:50:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBdY8-0001sp-9p; Thu, 26 Apr 2018 09:50:48 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBdY7-0001sc-Az
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 09:50:47 +0000
X-Inumbo-ID: 1fc05893-4937-11e8-9728-bc764e045a96
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 1fc05893-4937-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 11:49:34 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 6CB531041C2;
 Thu, 26 Apr 2018 11:50:45 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id BppnnEa9uqF0; Thu, 26 Apr 2018 11:50:45 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 4D61E1042C1;
 Thu, 26 Apr 2018 11:50:41 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 11:50:23 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522850048-13204-18-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <793bd4b6-dfad-f73f-8d14-860a101ad6da@neclab.eu>
Date: Thu, 26 Apr 2018 11:50:22 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522850048-13204-18-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 17/17] lib/ukboot: Updates for
 inlining with platform and scheduling changes
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDQuMDQuMjAxOCAxNTo1NCwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gQ2hhbmdlczoKPiAqIGluaXQg
dGhlIElSUSBzdWJzeXN0ZW0KPiAqIGluaXQgdGhlIHRpbWVyIGFmdGVyIG1lbW9yeSBhbGxvY2F0
b3IgaW5pdGlhbGl6YXRpb24KPiAqIGVuYWJsZSB0aGUgaW50ZXJydXB0cyBqdXN0IGJlZm9yZSBz
dGFydGluZyB0aGUgYXBwbGljYXRpb24gd2hlbiBzY2hlZHVsaW5nIGlzIG5vdCBlbmFibGVkCj4g
KiB1c2luZyB1a19zY2hlZF9kZWZhdWx0X2luaXQgZm9yIHNjaGVkdWxlciBpbml0Cj4gKiB1c2lu
ZyB1a19zY2hlZF9zdGFydCB3aGljaCBhbHNvIHN0YXJ0cyB0aGUgaWRsZSB0aHJlYWQgYW5kIGVu
YWJsZXMgdGhlIGludGVycnVwdHMKPiAKPiBTaWduZWQtb2ZmLWJ5OiBDb3N0aW4gTHVwdSA8Y29z
dGluLmx1cHVAY3MucHViLnJvPgo+IC0tLQo+ICAgbGliL3VrYm9vdC9ib290LmMgfCAyMSArKysr
KysrKysrKysrKystLS0tLS0KPiAgIDEgZmlsZSBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCA2
IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9saWIvdWtib290L2Jvb3QuYyBiL2xpYi91
a2Jvb3QvYm9vdC5jCj4gaW5kZXggYWNiYWU2ZS4uNzU4ZWU1MCAxMDA2NDQKPiAtLS0gYS9saWIv
dWtib290L2Jvb3QuYwo+ICsrKyBiL2xpYi91a2Jvb3QvYm9vdC5jCj4gQEAgLTQzLDEyICs0Mywx
NCBAQAo+ICAgI2lmIExJQlVLQUxMT0MgJiYgTElCVUtBTExPQ0JCVUREWSAmJiBMSUJVS0JPT1Rf
SU5JVEFMTE9DCj4gICAjaW5jbHVkZSA8dWsvYWxsb2NiYnVkZHkuaD4KPiAgICNlbmRpZgo+IC0j
aWYgTElCVUtTQ0hFRCAmJiBMSUJVS1NDSEVEQ09PUAo+IC0jaW5jbHVkZSA8dWsvc2NoZWRjb29w
Lmg+Cj4gKyNpZiBMSUJVS1NDSEVECj4gKyNpbmNsdWRlIDx1ay9zY2hlZC5oPgo+ICAgI2VuZGlm
Cj4gICAjaW5jbHVkZSA8dWsvYXJjaC9sY3B1Lmg+Cj4gICAjaW5jbHVkZSA8dWsvcGxhdC9ib290
c3RyYXAuaD4KPiAgICNpbmNsdWRlIDx1ay9wbGF0L21lbW9yeS5oPgo+ICsjaW5jbHVkZSA8dWsv
cGxhdC9sY3B1Lmg+Cj4gKyNpbmNsdWRlIDx1ay9wbGF0L2lycS5oPgo+ICAgI2luY2x1ZGUgPHVr
L3BsYXQvdGltZS5oPgo+ICAgI2luY2x1ZGUgPHVrL2Vzc2VudGlhbHMuaD4KPiAgICNpbmNsdWRl
IDx1ay9wcmludC5oPgo+IEBAIC0xMDksNiArMTExLDcgQEAgdm9pZCB1a3BsYXRfZW50cnkoaW50
IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKPiAgIAlzdHJ1Y3QgdGhyZWFkX21haW5fYXJnIHRtYTsKPiAg
ICNpZiBMSUJVS0FMTE9DIHx8IExJQlVLU0NIRUQKPiAgIAlzdHJ1Y3QgdWtfYWxsb2MgKmEgPSBO
VUxMOwo+ICsJaW50IHJjOwo+ICAgI2VuZGlmCj4gICAjaWYgTElCVUtBTExPQyAmJiBMSUJVS0FM
TE9DQkJVRERZICYmIExJQlVLQk9PVF9JTklUQUxMT0MKPiAgIAlzdHJ1Y3QgdWtwbGF0X21lbXJl
Z2lvbl9kZXNjIG1kOwo+IEBAIC0xMjcsNyArMTMwLDYgQEAgdm9pZCB1a3BsYXRfZW50cnkoaW50
IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKPiAgIAkJICBTVFJJTkdJRlkoVUtfQ09ERU5BTUUpICIgIiBT
VFJJTkdJRlkoVUtfRlVMTFZFUlNJT04pKTsKPiAgICNlbmRpZgo+ICAgCj4gLQl1a3BsYXRfdGlt
ZV9pbml0KCk7Cj4gICAKPiAgICNpZiBMSUJVS0FMTE9DICYmIExJQlVLQUxMT0NCQlVERFkgJiYg
TElCVUtCT09UX0lOSVRBTExPQwo+ICAgCS8qIGluaXRpYWxpemUgbWVtb3J5IGFsbG9jYXRvcgo+
IEBAIC0xODAsMTEgKzE4MiwxNyBAQCB2b2lkIHVrcGxhdF9lbnRyeShpbnQgYXJnYywgY2hhciAq
YXJndltdKQo+ICAgCX0KPiAgIAlpZiAodW5saWtlbHkoIWEpKQo+ICAgCQl1a19wcmludGQoRExW
TF9XQVJOLCAiTm8gc3VpdGFibGUgbWVtb3J5IHJlZ2lvbiBmb3IgbWVtb3J5IGFsbG9jYXRvci4g
Q29udGludWUgd2l0aG91dCBoZWFwXG4iKTsKPiArCj4gKwlyYyA9IHVrcGxhdF9pcnFfaW5pdChh
KTsKPiArCWlmICh1bmxpa2VseShyYyAhPSAwKSkKPiArCQlVS19DUkFTSCgiQ291bGQgbm90IGlu
aXRpYWxpemUgdGhlIHBsYXRmb3JtIElSUSBzdWJzeXN0ZW0uIik7Cj4gICAjZW5kaWYKPiAgIAo+
ICsJdWtwbGF0X3RpbWVfaW5pdCgpOwo+ICsKPiAgICNpZiBIQVZFX1NDSEVECj4gICAJLyogSW5p
dCBzY2hlZHVsZXIuICovCj4gLQlzID0gdWtfc2NoZWRjb29wX2luaXQoYSk7Cj4gKwlzID0gdWtf
c2NoZWRfZGVmYXVsdF9pbml0KGEpOwo+ICAgCWlmICh1bmxpa2VseSghcykpCj4gICAJCVVLX0NS
QVNIKCJDb3VsZCBub3QgaW5pdGlhbGl6ZSB0aGUgc2NoZWR1bGVyLiIpOwo+ICAgI2VuZGlmCj4g
QEAgLTE5Niw5ICsyMDQsMTAgQEAgdm9pZCB1a3BsYXRfZW50cnkoaW50IGFyZ2MsIGNoYXIgKmFy
Z3ZbXSkKPiAgIAltYWluX3RocmVhZCA9IHVrX3RocmVhZF9jcmVhdGUoIm1haW4iLCBtYWluX3Ro
cmVhZF9mdW5jLCAmdG1hKTsKPiAgIAlpZiAodW5saWtlbHkoIW1haW5fdGhyZWFkKSkKPiAgIAkJ
VUtfQ1JBU0goIkNvdWxkIG5vdCBjcmVhdGUgbWFpbiB0aHJlYWQuIik7Cj4gLQl1a190aHJlYWRf
c3RhcnQobWFpbl90aHJlYWQpOwo+IC0JdWtfc2NoZWRfcnVuKHMpOwo+ICsJdWtfc2NoZWRfc3Rh
cnQocyk7Cj4gICAjZWxzZQo+ICsJLyogRW5hYmxlIGludGVycnVwdHMgYmVmb3JlIHN0YXJ0aW5n
IHRoZSBhcHBsaWNhdGlvbiAqLwo+ICsJdWtwbGF0X2xjcHVfZW5hYmxlX2lycSgpOwo+ICAgCW1h
aW5fdGhyZWFkX2Z1bmMoJnRtYSk7Cj4gICAjZW5kaWYKPiAgIH0KPiAKCl9fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxp
c3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJv
amVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 11:44:06 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 11:44:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBfJk-0003kf-Vl; Thu, 26 Apr 2018 11:44:04 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBfJk-0003ka-Fv
 for minios-devel@lists.xen.org; Thu, 26 Apr 2018 11:44:04 +0000
X-Inumbo-ID: 71a7b536-4947-11e8-8249-2fda3a446a53
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 71a7b536-4947-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 11:46:24 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id D88C3F2025;
 Thu, 26 Apr 2018 13:43:59 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 2CkPWodt0kwl; Thu, 26 Apr 2018 13:43:59 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id B2FC1F2023;
 Thu, 26 Apr 2018 13:43:55 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 13:43:55 +0200
To: Costin Lupu <costin.lup@gmail.com>, <minios-devel@lists.xen.org>
References: <1522850048-13204-1-git-send-email-costin.lupu@cs.pub.ro>
 <e365e371-5a64-e33a-f382-666f8e18e2bb@gmail.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <0a309133-bc0f-5072-bcf1-95a77082189c@neclab.eu>
Date: Thu, 26 Apr 2018 13:43:54 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <e365e371-5a64-e33a-f382-666f8e18e2bb@gmail.com>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH v2 00/17] Prepare for enabling
 scheduling on KVM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGV5LAoKdGhhbmtzIGEgbG90IGZvciB0aGlzIHBhdGNoIHNlcmllcy4gSSBpbnRlZ3JhdGVkIGl0
IG9uIGEgc2VwYXJhdGUgYnJhbmNoIApjYWxsZWQgInN0YWdpbmctc2NoZWQiIHNpbmNlIGl0IGJy
ZWFrcyBLVk0gYW5kIGxpbnV4IGJ1aWxkcy4gSSBhbSBnb2luZyAKdG8gcmV2aWV3IHlvdXIgb3Ro
ZXIgdHdvIHBhdGNoIHNlcmllcyBhbmQgc2VlIGlmIHRob3NlIHRhcmdldHMgYnVpbGQgYWdhaW4u
CkluIHRoaXMgY2FzZSBJIGFtIGdvaW5nIHRvIHB1dCBhbGwgeW91ciBwYXRjaGVzIG9udG8gc3Rh
Z2luZy4KClRoYW5rcywKClNpbW9uCgpPbiAwNS4wNC4yMDE4IDE0OjEyLCBDb3N0aW4gTHVwdSB3
cm90ZToKPiBUaGUgY3VycmVudCBwYXRjaCBzZXJpZXMgYnJlYWsgdGhlIGJ1aWxkcyBmb3IgS1ZN
IGFuZCBsaW51eHUgcGxhdGZvcm1zCj4gYW5kIGFyZSBzdXBwb3NlZCB0byBiZSBhY2NlcHRlZCBi
YWNrLXRvLWJhY2sgd2l0aCB0aGUgcGF0Y2ggc2VyaWVzCj4gZW5hYmxpbmcgaW50ZXJydXB0cyBm
b3IgdGhvc2UgcGxhdGZvcm1zLgo+IAo+IFRoYW5rcywKPiBDb3N0aW4KPiAKPiBPbiAwNC8wNC8y
MDE4IDA0OjUzIFBNLCBDb3N0aW4gTHVwdSB3cm90ZToKPj4gVGhlIGN1cnJlbnQgcGF0Y2ggc2Vy
aWVzIGluY2x1ZGUgcmVmYWN0b3JpemF0aW9ucyB0aGF0IGludGVncmF0ZSBmdW5jdGlvbmFsaXR5
Cj4+IGZvciBib3RoIFhlbiBhbmQgS1ZNIHBsYXRmb3Jtcy4gV2UgYXJlIGludHJvZHVjaW5nIGNv
bW1vbiBDUFUgcmVsYXRlZAo+PiBkZWZpbml0aW9ucywgdHJhcCBoYW5kbGluZyBhbmQgdGhyZWFk
IHN3aXRjaGluZyBhYnN0cmFjdGl6YXRpb25zLiBUaGUKPj4gc2NoZWR1bGluZyBBUEkgaXMgcmV2
aXNpdGVkIGZvciBpbmxpbmluZyB3aXRoIHRoZSBwbGF0Zm9ybSBjaGFuZ2VzLiBUaGUgY3VycmVu
dAo+PiBjaGFuZ2VzIGFyZSBuZWVkZWQgaW4gb3JkZXIgdG8gZWZmaWNpZW50bHkgcmV1c2UgdGhl
IHNjaGVkdWxpbmcgZnVuY3Rpb25hbGl0eQo+PiBvbiBLVk0gYXMgd2VsbC4KPj4KPj4gQ29zdGlu
IEx1cHUgKDE3KToKPj4gICAgcGxhdC9jb21tb246IENvbW1vbiB4ODYgQ1BVIGRlZmluaXRpb25z
Cj4+ICAgIHBsYXQvY29tbW9uOiBDb21tb24geDg2IHNlZ21lbnQgZGVzY3JpcHRvcnMgZGVmaW5p
dGlvbnMKPj4gICAgcGxhdC9jb21tb246IHg4NiBoYXJkd2FyZSBjb250ZXh0IGRlZmluaXRpb24K
Pj4gICAgcGxhdC9jb21tb246IENvbW1vbiB4ODYgQ1BVIGludGVycnVwdCBmbGFnIGhhbmRsaW5n
Cj4+ICAgIHBsYXQvY29tbW9uOiBDb21tb24geDg2IENQVSBmdW5jdGlvbnMKPj4gICAgcGxhdC9j
b21tb246IENvbW1vbiB4ODYgdHJhY2luZyBmdW5jdGlvbnMKPj4gICAgcGxhdC9jb21tb246IENv
bW1vbiB4ODYgdHJhcHMgZGVmaW5pdGlvbnMgYW5kIGZ1bmN0aW9ucwo+PiAgICBwbGF0L2NvbW1v
bjogQWRkIHVrcGxhdF9sY3B1X3tlbmFibGUsZGlzYWJsZX1faXJxIGZ1bmN0aW9ucwo+PiAgICBw
bGF0L2NvbW1vbjogSGFsdGluZyBmdW5jdGlvbnMKPj4gICAgcGxhdC9jb21tb246IENvbW1vbiB4
ODYgdGhyZWFkaW5nIGNvZGUKPj4gICAgYXJjaC94ODZfNjQ6IEFkZCBub3AoKSBtYWNybwo+PiAg
ICBhcmNoL3g4Nl82NDogQWRkIGZ1bmN0aW9uIGZvciBzdGFjayBwb2ludGVyIHJldHJpZXZhbAo+
PiAgICBsaWIvdWtzY2hlZDogVXBkYXRlcyBmb3IgaW5saW5pbmcgd2l0aCBwbGF0L2NvbW1vbiBj
aGFuZ2VzCj4+ICAgIGxpYi91a3NjaGVkY29vcDogVXBkYXRlcyBmb3IgaW5saW5pbmcgd2l0aCB1
a3NjaGVkIEFQSSBjaGFuZ2VzCj4+ICAgIHBsYXQveGVuOiBSZW1vdmUgZXZlbnRzIGVuYWJsaW5n
IGZyb20gcGxhdGZvcm0gY29kZQo+PiAgICBwbGF0L3hlbjogQWRkIElSUSBzdWJzeXN0ZW0gaW5p
dGlhbGl6YXRpb24gZnVuY3Rpb24KPj4gICAgbGliL3VrYm9vdDogVXBkYXRlcyBmb3IgaW5saW5p
bmcgd2l0aCBwbGF0Zm9ybSBhbmQgc2NoZWR1bGluZyBjaGFuZ2VzCj4+Cj4+ICAgaW5jbHVkZS91
ay9hcmNoL3RocmVhZC5oICAgICAgICAgICAgICAgICAgIHwgIDUzIC0tLS0tCj4+ICAgaW5jbHVk
ZS91ay9hcmNoL3g4Nl82NC9sY3B1LmggICAgICAgICAgICAgIHwgIDQwICstLS0KPj4gICBpbmNs
dWRlL3VrL3BsYXQvaXJxLmggICAgICAgICAgICAgICAgICAgICAgfCAgNTQgKysrKysKPj4gICBp
bmNsdWRlL3VrL3BsYXQvbGNwdS5oICAgICAgICAgICAgICAgICAgICAgfCAgMjUgKystCj4+ICAg
aW5jbHVkZS91ay9wbGF0L3RocmVhZC5oICAgICAgICAgICAgICAgICAgIHwgIDcwICsrKysrLQo+
PiAgIGxpYi91a2Jvb3QvYm9vdC5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyMSArLQo+
PiAgIGxpYi91a3NjaGVkL2luY2x1ZGUvdWsvc2NoZWQuaCAgICAgICAgICAgICB8IDEyMCArKysr
KystLS0tCj4+ICAgbGliL3Vrc2NoZWQvaW5jbHVkZS91ay90aHJlYWQuaCAgICAgICAgICAgIHwg
IDM5ICsrLS0KPj4gICBsaWIvdWtzY2hlZC9zY2hlZC5jICAgICAgICAgICAgICAgICAgICAgICAg
fCAxMjQgKysrKysrKystLS0KPj4gICBsaWIvdWtzY2hlZC90aHJlYWQuYyAgICAgICAgICAgICAg
ICAgICAgICAgfCAgNzYgKysrKysrLQo+PiAgIGxpYi91a3NjaGVkY29vcC9zY2hlZGNvb3AuYyAg
ICAgICAgICAgICAgICB8ICA0NSArKy0tCj4+ICAgcGxhdC9jb21tb24vaW5jbHVkZS9fdGltZS5o
ICAgICAgICAgICAgICAgIHwgIDQyICsrKysKPj4gICBwbGF0L2NvbW1vbi9pbmNsdWRlL2NwdS5o
ICAgICAgICAgICAgICAgICAgfCAgNDYgKysrKwo+PiAgIHBsYXQvY29tbW9uL2luY2x1ZGUvc3df
Y3R4LmggICAgICAgICAgICAgICB8ICA1NiArKysrKwo+PiAgIHBsYXQvY29tbW9uL2luY2x1ZGUv
dHJhY2UuaCAgICAgICAgICAgICAgICB8ICA0OCArKysrCj4+ICAgcGxhdC9jb21tb24vaW5jbHVk
ZS94ODYvY3B1LmggICAgICAgICAgICAgIHwgMTA5ICsrKysrKysrKwo+PiAgIHBsYXQvY29tbW9u
L2luY2x1ZGUveDg2L2NwdV9kZWZzLmggICAgICAgICB8ICA3NiArKysrKysrCj4+ICAgcGxhdC9j
b21tb24vaW5jbHVkZS94ODYvZGVzYy5oICAgICAgICAgICAgIHwgMTk3ICsrKysrKysrKysrKysr
KysrCj4+ICAgcGxhdC9jb21tb24vaW5jbHVkZS94ODYvaXJxLmggICAgICAgICAgICAgIHwgIDg3
ICsrKysrKysrCj4+ICAgcGxhdC9jb21tb24vaW5jbHVkZS94ODYvcmVncy5oICAgICAgICAgICAg
IHwgIDk0ICsrKysrKysrCj4+ICAgcGxhdC9jb21tb24vaW5jbHVkZS94ODYvdHJhcHMuaCAgICAg
ICAgICAgIHwgMTE1ICsrKysrKysrKysKPj4gICBwbGF0L2NvbW1vbi9sY3B1LmMgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgNjAgKysrKysKPj4gICBwbGF0L2NvbW1vbi9zd19jdHguYyAgICAg
ICAgICAgICAgICAgICAgICAgfCAgOTcgKysrKysrKysKPj4gICBwbGF0L2NvbW1vbi90aHJlYWQu
YyAgICAgICAgICAgICAgICAgICAgICAgfCAgNjYgKysrKysrCj4+ICAgcGxhdC9jb21tb24veDg2
L2NwdV9uYXRpdmUuYyAgICAgICAgICAgICAgIHwgIDQ5ICsrKysrCj4+ICAgcGxhdC9jb21tb24v
eDg2L3RocmVhZF9zdGFydC5TICAgICAgICAgICAgIHwgIDY1ICsrKysrKwo+PiAgIHBsYXQvY29t
bW9uL3g4Ni90cmFjZS5jICAgICAgICAgICAgICAgICAgICB8ICA5MiArKysrKysrKwo+PiAgIHBs
YXQvY29tbW9uL3g4Ni90cmFwcy5jICAgICAgICAgICAgICAgICAgICB8IDExNiArKysrKysrKysr
Cj4+ICAgcGxhdC9rdm0vTWFrZWZpbGUudWsgICAgICAgICAgICAgICAgICAgICAgIHwgICA4ICsK
Pj4gICBwbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NC5oICAgICAgfCAgIDUgLQo+
PiAgIHBsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMuaCB8ICA0NiArLS0t
Cj4+ICAgcGxhdC9rdm0vc2h1dGRvd24uYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICst
Cj4+ICAgcGxhdC9rdm0veDg2L2NvbnNvbGUuYyAgICAgICAgICAgICAgICAgICAgIHwgICAyICst
Cj4+ICAgcGxhdC9rdm0veDg2L2NwdV94ODZfNjQuYyAgICAgICAgICAgICAgICAgIHwgIDExICst
Cj4+ICAgcGxhdC9rdm0veDg2L2VudHJ5NjQuUyAgICAgICAgICAgICAgICAgICAgIHwgICAyICst
Cj4+ICAgcGxhdC9rdm0veDg2L2xjcHUuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICA2IC0K
Pj4gICBwbGF0L3hlbi9NYWtlZmlsZS51ayAgICAgICAgICAgICAgICAgICAgICAgfCAgMTYgKy0K
Pj4gICBwbGF0L3hlbi9ldmVudHMuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDggKwo+
PiAgIHBsYXQveGVuL2luY2x1ZGUvY29tbW9uL3NjaGVkLmggICAgICAgICAgICB8ICA1MiAtLS0t
LQo+PiAgIHBsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9hcmNoX3NjaGVkLmggICAgICB8ICA1NSAt
LS0tLQo+PiAgIHBsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni9jcHUuaCAgICAgICAgICAgICB8IDEw
MyAtLS0tLS0tLS0KPj4gICBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvaXJxLmggICAgICAgICAg
ICAgfCAgNTUgKy0tLS0KPj4gICBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvb3MuaCAgICAgICAg
ICAgICAgfCAgNDYgKy0tLQo+PiAgIHBsYXQveGVuL2luY2x1ZGUveGVuLXg4Ni90cmFwcy5oICAg
ICAgICAgICB8ICAyMyArLQo+PiAgIHBsYXQveGVuL2xjcHUuYyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAyNyArLS0KPj4gICBwbGF0L3hlbi9zY2hlZC5jICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAxMDYgLS0tLS0tLS0tCj4+ICAgcGxhdC94ZW4vdGhyZWFkLmMgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwgIDY2IC0tLS0tLQo+PiAgIHBsYXQveGVuL3g4Ni9hcmNoX2V2ZW50
cy5jICAgICAgICAgICAgICAgICB8ICAgMiArLQo+PiAgIHBsYXQveGVuL3g4Ni9hcmNoX3RocmVh
ZC5jICAgICAgICAgICAgICAgICB8ICA5MyAtLS0tLS0tLQo+PiAgIHBsYXQveGVuL3g4Ni9hcmNo
X3RpbWUuYyAgICAgICAgICAgICAgICAgICB8ICAxNyArLQo+PiAgIHBsYXQveGVuL3g4Ni9jcHVf
cHYuYyAgICAgICAgICAgICAgICAgICAgICB8ICA0NyArKysrCj4+ICAgcGxhdC94ZW4veDg2L2Vu
dHJ5NjQuUyAgICAgICAgICAgICAgICAgICAgIHwgMjMxICsrKysrKystLS0tLS0tLS0tLS0KPj4g
ICBwbGF0L3hlbi94ODYvc2V0dXAuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgIDggKy0KPj4g
ICBwbGF0L3hlbi94ODYvdHJhcHMuYyAgICAgICAgICAgICAgICAgICAgICAgfCAzNDIgKysrKysr
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPj4gICA1NCBmaWxlcyBjaGFuZ2VkLCAyMTM4IGluc2Vy
dGlvbnMoKyksIDEzMjMgZGVsZXRpb25zKC0pCj4+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1
ZGUvdWsvYXJjaC90aHJlYWQuaAo+PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VrL3Bs
YXQvaXJxLmgKPj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS9fdGlt
ZS5oCj4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUvY3B1LmgKPj4g
ICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS9zd19jdHguaAo+PiAgIGNy
ZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9pbmNsdWRlL3RyYWNlLmgKPj4gICBjcmVhdGUg
bW9kZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS94ODYvY3B1LmgKPj4gICBjcmVhdGUgbW9k
ZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS94ODYvY3B1X2RlZnMuaAo+PiAgIGNyZWF0ZSBt
b2RlIDEwMDY0NCBwbGF0L2NvbW1vbi9pbmNsdWRlL3g4Ni9kZXNjLmgKPj4gICBjcmVhdGUgbW9k
ZSAxMDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS94ODYvaXJxLmgKPj4gICBjcmVhdGUgbW9kZSAx
MDA2NDQgcGxhdC9jb21tb24vaW5jbHVkZS94ODYvcmVncy5oCj4+ICAgY3JlYXRlIG1vZGUgMTAw
NjQ0IHBsYXQvY29tbW9uL2luY2x1ZGUveDg2L3RyYXBzLmgKPj4gICBjcmVhdGUgbW9kZSAxMDA2
NDQgcGxhdC9jb21tb24vbGNwdS5jCj4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9u
L3N3X2N0eC5jCj4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL3RocmVhZC5jCj4+
ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL3g4Ni9jcHVfbmF0aXZlLmMKPj4gICBj
cmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9jb21tb24veDg2L3RocmVhZF9zdGFydC5TCj4+ICAgY3Jl
YXRlIG1vZGUgMTAwNjQ0IHBsYXQvY29tbW9uL3g4Ni90cmFjZS5jCj4+ICAgY3JlYXRlIG1vZGUg
MTAwNjQ0IHBsYXQvY29tbW9uL3g4Ni90cmFwcy5jCj4+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IHBs
YXQveGVuL2luY2x1ZGUvY29tbW9uL3NjaGVkLmgKPj4gICBkZWxldGUgbW9kZSAxMDA2NDQgcGxh
dC94ZW4vaW5jbHVkZS94ZW4teDg2L2FyY2hfc2NoZWQuaAo+PiAgIGRlbGV0ZSBtb2RlIDEwMDY0
NCBwbGF0L3hlbi9pbmNsdWRlL3hlbi14ODYvY3B1LmgKPj4gICBkZWxldGUgbW9kZSAxMDA2NDQg
cGxhdC94ZW4vc2NoZWQuYwo+PiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi90aHJlYWQu
Ywo+PiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi94ODYvYXJjaF90aHJlYWQuYwo+PiAg
IGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L3hlbi94ODYvY3B1X3B2LmMKPj4KCl9fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5n
IGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVu
cHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 11:57:45 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 11:57:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBfWy-0004SW-04; Thu, 26 Apr 2018 11:57:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=qdbb=hp=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fBfWx-0004SR-13
 for minios-devel@lists.xenproject.org; Thu, 26 Apr 2018 11:57:43 +0000
X-Inumbo-ID: 598d771f-4949-11e8-8249-2fda3a446a53
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id 598d771f-4949-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 12:00:04 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id C5F67F2025;
 Thu, 26 Apr 2018 13:57:37 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id fjZ9bmHIGKuI; Thu, 26 Apr 2018 13:57:37 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id 98A06F2023;
 Thu, 26 Apr 2018 13:57:31 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 26 Apr
 2018 13:57:31 +0200
To: Bruno Alvisio <bruno.alvisio@gmail.com>, Costin Lupu <costin.lup@gmail.com>
References: <1521128286-73525-1-git-send-email-bruno.alvisio@gmail.com>
 <1521128286-73525-2-git-send-email-bruno.alvisio@gmail.com>
 <35420650-8f47-1a91-b287-2af1c84ffecf@gmail.com>
 <CADNMjEBzMuGjpwHhLomJ_HiegwgRY9b9pSPXcwMqJbwFHm-TVw@mail.gmail.com>
 <6575b5a4-609a-dfb5-4090-28a3ae4b1db6@gmail.com>
 <CADNMjECtSD1hnb_YcjEjQRQk2JvTnUpWHkX2n5p1BzFtF=Wo8Q@mail.gmail.com>
 <5a65b0fc-e958-4ac2-36bd-05ff286f295d@gmail.com>
 <CADNMjECXFJNxxZY4LazOS0rutMWhhr01t_4AZR4BQHyLpJ=EpQ@mail.gmail.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <aa5bfa2c-6449-b266-0ed0-3a85c40c8556@neclab.eu>
Date: Thu, 26 Apr 2018 13:57:30 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <CADNMjECXFJNxxZY4LazOS0rutMWhhr01t_4AZR4BQHyLpJ=EpQ@mail.gmail.com>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 1/2] lib/ukallocbbuddy: Fix
 definition and assertions of memr.nr_pages
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org,
 Florian Schmidt <florian.schmidt@neclab.eu>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGV5IEJydW5vLAoKYXJlIHlvdSBzdGlsbCBwbGFubmluZyB0byBzZW5kIGEgbmV3IHZlcnNpb24g
b2YgdGhpcyBwYXRjaD8gSXQgaXMgZmluZSAKaWYgbm90LCB3ZSBqdXN0IG5lZWQgdG8ga25vdy4g
Q29zdGluZyBjb3VsZCBhbHNvIHByZXBhcmUgb25lLgoKVGhhbmtzLAoKU2ltb24KCk9uIDIzLjAz
LjIwMTggMTk6MTAsIEJydW5vIEFsdmlzaW8gd3JvdGU6Cj4gCj4gCj4gT24gVGh1LCBNYXIgMjIs
IDIwMTggYXQgMTozMCBQTSwgQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXBAZ21haWwuY29tIAo+IDxt
YWlsdG86Y29zdGluLmx1cEBnbWFpbC5jb20+PiB3cm90ZToKPiAKPiAgICAgSGkgQnJ1bm8sCj4g
Cj4gICAgIEkgcmVtb3ZlZCB0aGUgcGFydHMgdGhhdCB3ZXJlIGFscmVhZHkgYWdyZWVkLiBQbGVh
c2Ugc2VlIG15IGNvbW1lbnRzCj4gICAgIGlubGluZS4KPiAKPiAgICAgT24gMDMvMTcvMjAxOCAw
ODo0MCBQTSwgQnJ1bm8gQWx2aXNpbyB3cm90ZToKPiAgICAgPiBPbiBTYXQsIE1hciAxNywgMjAx
OCBhdCAzOjQ4IEFNLCBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cEBnbWFpbC5jb20gPG1haWx0bzpj
b3N0aW4ubHVwQGdtYWlsLmNvbT4KPiAgICAgPiA8bWFpbHRvOmNvc3Rpbi5sdXBAZ21haWwuY29t
IDxtYWlsdG86Y29zdGluLmx1cEBnbWFpbC5jb20+Pj4gd3JvdGU6Cj4gICAgID7CoCDCoCDCoE9u
IDAzLzE3LzIwMTggMDE6MTkgQU0sIEJydW5vIEFsdmlzaW8gd3JvdGU6Cj4gICAgID7CoCDCoCDC
oD4gT24gVGh1LCBNYXIgMTUsIDIwMTggYXQgMTE6NDEgQU0sIENvc3RpbiBMdXB1IDxjb3N0aW4u
bHVwQGdtYWlsLmNvbSA8bWFpbHRvOmNvc3Rpbi5sdXBAZ21haWwuY29tPgo+ICAgICA8bWFpbHRv
OmNvc3Rpbi5sdXBAZ21haWwuY29tIDxtYWlsdG86Y29zdGluLmx1cEBnbWFpbC5jb20+Pgo+ICAg
ICA+wqAgwqAgwqA+IDxtYWlsdG86Y29zdGluLmx1cEBnbWFpbC5jb20gPG1haWx0bzpjb3N0aW4u
bHVwQGdtYWlsLmNvbT4KPiAgICAgPG1haWx0bzpjb3N0aW4ubHVwQGdtYWlsLmNvbSA8bWFpbHRv
OmNvc3Rpbi5sdXBAZ21haWwuY29tPj4+PiB3cm90ZToKPiAgICAgPsKgIMKgIMKgPgo+ICAgICA+
wqAgwqAgwqA+wqAgwqAgwqBIaSBCcnVubywKPiAgICAgPsKgIMKgIMKgPgo+ICAgICA+wqAgwqAg
wqA+wqAgwqAgwqBGaXJzdCBvZiBhbGwgdGhhbmtzIGZvciBwb2ludGluZyBvdXQgdGhpcyBpc3N1
ZSEgUGxlYXNlIHNlZSBteSBjb21tZW50cwo+ICAgICA+wqAgwqAgwqA+wqAgwqAgwqBpbmxpbmUu
Cj4gICAgID7CoCDCoCDCoD4KPiAgICAgPsKgIMKgIMKgPsKgIMKgIMKgT24gMDMvMTUvMjAxOCAw
NTozOCBQTSwgQnJ1bm8gQWx2aXNpbyB3cm90ZToKPiAgICAgPsKgIMKgIMKgPsKgIMKgIMKgPiBD
dXJyZW50bHksIG5yX3BhZ2VzIGlzIHNldCB0byB0aGUgcmFuZ2Ugc2l6ZSBpbnN0ZWFkIG9mIHRo
ZSBudW1iZXIgb2YgcGFnZXMgaW4KPiAgICAgPsKgIMKgIMKgPsKgIMKgIMKgPiB0aGUgbWVtb3J5
IHJlZ2lvbi4gRml4ZWQgYnkgc2hpZnRpbmcgYnkgX19QQUdFX1NJWkUuIEFzc2VydGlvbnMgYXJl
IGZpeGVkCj4gICAgID7CoCDCoCDCoD7CoCDCoCDCoD4gYWNjb3JkaW5nbHkuCj4gICAgID7CoCDC
oCDCoD7CoCDCoCDCoD4KPiAgICAgPsKgIMKgIMKgPsKgIMKgIMKgPiBTaWduZWQtb2ZmLWJ5OiBC
cnVubyBBbHZpc2lvIDxicnVuby5hbHZpc2lvQGdtYWlsLmNvbSA8bWFpbHRvOmJydW5vLmFsdmlz
aW9AZ21haWwuY29tPgo+IAo+ICAgICA8c25pcD4KPiAKPiAgICAgID7CoCDCoCDCoD7CoCDCoCDC
oFRoZSBudW1iZXIgb2YgcGFnZXMgaXMgbm90IHRoZSBiZXN0IG9uZS4gSWYKPiAgICAgID7CoCDC
oCDCoD7CoCDCoCDCoHJhbmdlID0gOCAqIFBBR0VfU0laRSAqIChQQUdFX1NJWkUgLSBzaXplb2Yo
Km1lbXIpICsKPiAgICAgMSksIHRoZW4KPiAgICAgID7CoCDCoCDCoD7CoCDCoCDCoHdlIHdvdWxk
IGxvc2Ugb25lIHBhZ2UgZm9yIGJvb2sga2VlcGluZyBiZWNhdXNlCj4gICAgICA+wqAgwqAgwqA+
wqAgwqAgwqBtZW1yX3NpemUgPSByb3VuZF9wZ3VwKFBBR0VfU0laRSArIDEpLgo+ICAgICAgPsKg
IMKgIMKgPgo+ICAgICAgPsKgIMKgIMKgPsKgIMKgIMKgVGhlIHJpZ2h0IG51bWJlciBvZiBwYWdl
IGlzIGdpdmVuIGJ5IHRoZSBpbmVxdWFsaXR5Ogo+ICAgICAgPsKgIMKgIMKgPsKgIMKgIMKgc2l6
ZW9mKCptZW1yKSArIGJpdG1hcF9zaXplICsgcGFnZV9udW0gKiBwYWdlX3NpemUgPD0KPiAgICAg
cmFuZ2UsCj4gICAgICA+wqAgwqAgwqA+wqAgwqAgwqB3aGVyZSBiaXRtYXBfc2l6ZSA9IHBhZ2Vf
bnVtIC8gQklUU19QRVJfQllURSAocGxlYXNlIGRlZmluZQo+ICAgICAgPsKgIMKgIMKgdGhpcyBt
YWNybwo+ICAgICAgPsKgIMKgIMKgPsKgIMKgIMKgaW4gYmJ1ZGR5LmMgdG8gYXZvaWQgY29uZnVz
aW9uKS4gVGhlcmVmb3JlLCB0aGUgbnVtYmVyIG9mCj4gICAgICA+wqAgwqAgwqBwYWdlcyBpczoK
PiAgICAgID7CoCDCoCDCoD4KPiAgICAgID7CoCDCoCDCoD7CoCDCoCDCoEJJVFNfUEVSX0JZVEUg
KiAocmFuZ2UgLSBzaXplb2YoKm1lbXIpKSAvCj4gICAgICA+wqAgwqAgwqA+wqAgwqAgwqAoQklU
U19QRVJfQllURSAqIF9fUEFHRV9TSVpFICsgMSkKPiAgICAgID7CoCDCoCDCoD4KPiAgICAgID7C
oCDCoCDCoD4gSSBmb2xsb3cgdGhlIGFyaXRobWV0aWMgdGhhdCB5b3UgYXJlIGRvaW5nIGhlcmUg
YnV0IEkgYW0KPiAgICAgbm90IGNsZWFyIG9uCj4gICAgICA+wqAgwqAgwqA+IGV4YWN0bHkgd2Ug
d2FudCB0byBhY2hpZXZlLgo+ICAgICAgPsKgIMKgIMKgPgo+ICAgICAgPsKgIMKgIMKgPiBSaWdo
dCBub3csIG1lbXJfc2l6ZSBpcyBmb3JjZWQgdG8gYmUgYSBtdWx0aXBsZSBvZiBQQUdFX1NJWkUu
Cj4gICAgICA+wqAgwqAgwqA+IG1lbXJfc2l6ZSA9IHJvdW5kX3BndXAoLi4pCj4gICAgICA+wqAg
wqAgwqA+Cj4gICAgICA+wqAgwqAgwqA+IGFuZCB0aGVuIG1pbiBhbmQgcmFuZ2UgYXJlIG1vZGlm
aWVkIGFjY29yZGluZ2x5Ogo+ICAgICAgPsKgIMKgIMKgPgo+ICAgICAgPsKgIMKgIMKgPiBtaW4g
Kz0gbWVtcl9zaXplOwo+ICAgICAgPsKgIMKgIMKgPgo+ICAgICAgPsKgIMKgIMKgPiByYW5nZSAt
PSBtZW1yX3NpemU7Cj4gICAgICA+wqAgwqAgwqA+Cj4gICAgICA+wqAgwqAgwqA+Cj4gICAgICA+
wqAgwqAgwqA+IFRodXM6Cj4gICAgICA+wqAgwqAgwqA+Cj4gICAgICA+wqAgwqAgwqA+IG5yX3Bh
Z2VzID0gKG1heCAtIG1pbikgPj4gX19QQUdFX1NISUZUCj4gICAgICA+wqAgwqAgwqA+Cj4gICAg
ICA+wqAgwqAgwqA+IMKgbG9va3MgT0sgZXZlbiBmb3IgdGhlIGNhc2UgdGhhdCB5b3UgbWVudGlv
bmVkOgo+ICAgICAgPsKgIMKgIMKgPgo+ICAgICAgPsKgIMKgIMKgPiBJZiBpbnN0ZWFkCj4gICAg
ICA+wqAgwqAgwqA+Cj4gICAgICA+wqAgwqAgwqA+IG5yX3BhZ2VzID0gQklUU19QRVJfQllURSAq
IChyYW5nZSAtIHNpemVvZigqbWVtcikpIC8KPiAgICAgID7CoCDCoCDCoD4gKEJJVFNfUEVSX0JZ
VEUgKiBfX1BBR0VfU0laRSArIDEpCj4gICAgICA+wqAgwqAgwqA+Cj4gICAgICA+wqAgwqAgwqA+
IHdvdWxkIGJlIHRoZSBzYW1lLiBBcmUgeW91IHN1Z2dlc3RpbmcgdG8gdXNlIHRoaXMgZm9ybXVs
YQo+ICAgICBqdXN0IGZvcgo+ICAgICAgPsKgIMKgIMKgY2xhcml0eT8KPiAgICAgID7CoCDCoCDC
oD4KPiAgICAgID7CoCDCoCDCoD4gT3IgYXJlIHlvdSBzdWdnZXN0aW5nIHRoYXQgd2Ugc2hvdWxk
IGVuZm9yY2XCoG1lbXJfc2l6ZSB0byBiZSBhCj4gICAgICA+wqAgwqAgwqBtdWx0aXBsZQo+ICAg
ICAgPsKgIMKgIMKgPiBvZiBQQUdFX1NJWkUKPiAgICAgID7CoCDCoCDCoD4gc28gdGhhdCBmaXJz
dF9wYWdlIGFsd2F5cyBlbmRzIHVwIGJlaW5nIG9uZSBtZW1vcnkgbG9jYXRpb24KPiAgICAgYWZ0
ZXIgdGhlCj4gICAgICA+wqAgwqAgwqA+IGJpdG1hcCBhbmQgd2Ugb3B0aW1pemUKPiAgICAgID7C
oCDCoCDCoD4gdGhlIG51bWJlciBvZiBwYWdlcz8KPiAgICAgID7CoCDCoCDCoD4KPiAgICAgID7C
oCDCoCDCoD4gSSBhbSBub3Qgc3VyZSBpZiBJIGFtIG1pc3Npbmcgc29tZXRoaW5nIGFib3V0IHdo
YXQgeW91IHNhaWQuCj4gICAgICA+Cj4gICAgICA+wqAgwqAgwqBXaGF0IEknbSB0cnlpbmcgdG8g
c2F5IGlzIHRoYXQgZm9sbG93aW5nIHRoZSBjdXJyZW50IGFwcHJvYWNoCj4gICAgIHdlIHdhc3Rl
Cj4gICAgICA+wqAgwqAgwqBwYWdlcyB3aXRoIGJvb2sga2VlcGluZyAoYml0bWFwcykuIEluIGJv
dGggYXByb2FjaGVzCj4gICAgIG1lbXJfc2l6ZSBlbmRzIHVwCj4gICAgICA+wqAgwqAgwqBiZWlu
ZyBhIG11bHRpcGxlIG9mIFBBR0VfU0laRS4KPiAgICAgID4KPiAgICAgID7CoCDCoCDCoEluIHRo
YXQgZXhhbXBsZSB3aGVuIHRoZSAqd2hvbGUqIG1lbW9yeSByZWdpb24gc2l6ZSBpczoKPiAgICAg
ID7CoCDCoCDCoDggKiBQQUdFX1NJWkUgKiAoUEFHRV9TSVpFIC0gc2l6ZW9mKCptZW1yKSArIDEp
Cj4gICAgICA+wqAgwqAgwqBtZW1yX3NpemUgZW5kcyB1cCBiZWluZyByb3VuZF9wZ3VwKFBBR0Vf
U0laRSArIDEpLCB0aGF0IGlzIDIKPiAgICAgcGFnZXMsCj4gICAgICA+wqAgwqAgwqBpbnN0ZWFk
IG9mIHJvdW5kX3BndXAoUEFHRV9TSVpFKSB3aGljaCBzaG91bGQgYmUganVzdCAxIHBhZ2UuCj4g
ICAgICA+Cj4gICAgICA+Cj4gICAgICA+IEkgYW0gc3RpbGwgdHJ5aW5nIHRvIGNvbWUgdXAgd2l0
aCBhbiBleGFtcGxlIGluIHdoaWNoIHRoZSBudW1iZXIgb2YKPiAgICAgID4gcGFnZXMgd291bGQK
PiAgICAgID4gZW5kIHVwIGJlaW5nIGRpZmZlcmVudCBieSB1c2luZyB0aGUgY3VycmVudCBjb2Rl
IHZzLiB5b3VyIGFwcHJvYWNoLgo+ICAgICAgPiBFLmcuOiAodGhhdCBkb2Vzbid0IHdvcmspCj4g
ICAgICA+Cj4gICAgICA+IFN0YXJ0IHdpdGggbWluID0gMDsgUEFHRV9TSVpFID0gNTEyOyBzaXpl
KCptKSA9IDIwOgo+ICAgICAgPiAxLiBDb2RlOgo+ICAgICAgPiByYW5nZSA9wqA4ICogUEFHRV9T
SVpFICogKFBBR0VfU0laRSAtIHNpemVvZigqbWVtcikgKyAxKSA9IDggKiAoNTEyICoKPiAgICAg
ID4gNDkzKSA9wqAyMDE5MzI4Cj4gICAgICA+IG1lbXJfc2l6ZSA9IDIqNTEyID0gMTAyNMKgIMKg
IMKgIMKgIMKgIMKgIC8vIDIqUEFHRV9TSVpFCj4gICAgICA+IG1pbiA9IDEwMjQKPiAgICAgID4g
bnJfcGFnZXMgPSAoMjAxOTMyOCAtIDEwMjQpID4+IDkgPSAzOTQyLgo+ICAgICAgPgo+ICAgICAg
PiAyLiBVc2luZyBpbmVxdWFsaXR5Ogo+ICAgICAgPgo+ICAgICAgPiDCoG5yX3BhZ2VzID0gQklU
U19QRVJfQllURSAqIChyYW5nZSAtIHNpemVvZigqbWVtcikpCj4gICAgIC/CoChCSVRTX1BFUl9C
WVRFICoKPiAgICAgID4gX19QQUdFX1NJWkUgKyAxKQo+ICAgICAgPiBucl9wYWdlcyA9IDggKiAo
MjAxOTMyOCAtMjApIC8gKDggKiA1MTIgKyAxKSA9wqAxNjE1NDQ2NC80MDk3ID0KPiAgICAgMzk0
Mi45OQo+ICAgICAgPiAtPiAzOTQyCj4gICAgICA+Cj4gICAgICA+ID0+IG1lbXJfc2l6ZSA9IHJv
dW5kX3BndXAoIDIwICsgMzk0Mi84ICkgPSDCoHJvdW5kX3BndXAoMjAgKyA0OTIuNzUpID0KPiAg
ICAgID4gwqByb3VuZF9wZ3VwKDUxMykgPSAxMDI0wqDCoCDCoCAvLyAyKlBBR0VfU0laRQo+ICAg
ICAgPgo+ICAgICAgPiBJdCB3b3VsZCBiZSBncmVhdCBpZiB5b3UgY2FuIHByb3ZpZGUgbWUgYSBj
b3JuZXIgY2FzZSB0aGF0IHNob3dzIHRoZQo+ICAgICAgPiBkaWZmZXJlbmNlLgo+IAo+ICAgICBS
aWdodCwgbXkgYmFkLiBJIHRob3VnaHQgSSB3YXMgcHJvdmlkaW5nIHRoZSBjb3JuZXIgY2FzZSBi
dXQgYmVjYXVzZSBvZgo+ICAgICBteSBiYWQgbWF0aCBJIGRpZG4ndC4gU29ycnkgYWJvdXQgdGhh
dCEKPiAKPiAgICAgU28sIGEgY29ycmVjdCBjb3JuZXIgY2FzZSB2YWx1ZSB3b3VsZCBiZSBmb3Ig
cmFuZ2UgdmFsdWU6Cj4gCj4gICAgIHJhbmdlID0gOCAqIFBBR0VfU0laRSAqICg4ICogUEFHRV9T
SVpFIC0gc2l6ZW9mKCptZW1yKSArIDEpCj4gICAgICDCoCDCoCDCoCA9IDE2Njk5MzkyCj4gCj4g
ICAgIEZvbGxvd2luZyB5b3VyIGFwcHJvYWNoIHdoYXQgSSBnZXQgZm9yIFBBR0VfU0laRT01MTIg
YW5kCj4gICAgIHNpemVvZigqbWVtcik9MjAgaXM6Cj4gCj4gICAgIDEuIENvZGU6Cj4gICAgIG1l
bXJfc2l6ZSA9IDQ2MDggPSA5ICogUEFHRV9TSVpFCj4gICAgIG5yX3BhZ2VzID0gMzI2MDcKPiAK
PiAgICAgMi4gVXNpbmcgaW5lcXVhbGl0eToKPiAgICAgbnJfcGFnZXMgPSAzMjYwOAo+ICAgICBt
ZW1yX3NpemUgPSA0MDk2ID0gOCAqIFBBR0VfU0laRQo+IAo+ICAgICBIb3BlIHRoaXMgaGVscHMu
IExldCBtZSBrbm93IGlmIHlvdSBoYXZlIGZ1cnRoZXIgcXVlc3Rpb25zLgo+IAo+ICAgICA8c25p
cD4KPiAKPiAKPiBHcmVhdCBjYXRjaCEgOikKPiAKPiBOb3cgSSBnZXQgaXQ6IHRoZSBjdXJyZW50
IGNvZGUgaXMgc3BpbGxpbmcgbWVtb3J5Cj4gc2luY2UgaXQgaXMgdXNpbmcgdGhlIG9yaWdpbmFs
IHJhbmdlIHNpemUgYnV0IGFzIG1vcmUgYml0cyBhcmUgdXNlZAo+IGZvciBrZWVwaW5nIHRyYWNr
IHRoZSByYW5nZSBmb3IgcGFnZXMgYmVjb21lcyBzbWFsbGVyLiBZb3VyCj4gY29ybmVyIGNhc2Ug
aXMgdGhlIG1pbmltdW0gcmFuZ2UgdGhhdCB1c2VzIGEgZnVsbCBwYWdlIG9mIGJpdHMgZm9yCj4g
dHJhY2tpbmcuCj4gCj4gSSB3aWxsIG1ha2UgYWxsIHRoZSBtb2RpZmljYXRpb25zIGFuZCBzZW5k
IGEgcGF0Y2ggaW4gdGhlIGZvbGxvd2luZyBkYXlzLgo+IAo+IENoZWVycywKPiAKPiBCcnVubwo+
IAo+IAo+IAo+ICAgICBDb3N0aW4KPiAKPiAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVs
QGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1h
bi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 12:29:33 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 12:29:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBg1k-00073D-7V; Thu, 26 Apr 2018 12:29:32 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bqfm=hp=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBg1i-000738-NI
 for minios-devel@lists.xenproject.org; Thu, 26 Apr 2018 12:29:30 +0000
X-Inumbo-ID: 4b907519-494d-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 4b907519-494d-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 14:28:16 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 9C0CB15AD;
 Thu, 26 Apr 2018 05:29:27 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C26103F487;
 Thu, 26 Apr 2018 05:29:25 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-23-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <58b1b6e0-9aab-0fa2-25d6-8405a7bcab22@arm.com>
Date: Thu, 26 Apr 2018 13:29:24 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-23-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 22/43] arm64: implement the
 __arch_switch_threads
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMTYvMDQvMTggMDc6MzIsIEh1YW5nIFNoaWppZSB3cm90ZToKPiBUaGUg
X19hcmNoX3N3aXRjaF90aHJlYWRzIGlzIHVzZWQgZm9yIHN3aXRjaGluZyB0aGUgdGhyZWFkcy4K
PiBUaGlzIHBhdGNoIGltcGxlbWVudHMgaXQuCj4gCj4gU2lnbmVkLW9mZi1ieTogSHVhbmcgU2hp
amllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPiAtLS0KPiAgIGFyY2gvYXJtL2FybTY0L2FybTY0
LlMgfCAzOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICAgaW5jbHVk
ZS9hcm0vYXJtNjQvb3MuaCB8ICA0ICsrKysKPiAgIDIgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0
aW9ucygrKQo+IAo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9hcm02NC9hcm02NC5TIGIvYXJjaC9h
cm0vYXJtNjQvYXJtNjQuUwo+IGluZGV4IGZhMzQwNmYuLjVmNTVmOTkgMTAwNjQ0Cj4gLS0tIGEv
YXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+ICsrKyBiL2FyY2gvYXJtL2FybTY0L2FybTY0LlMKPiBA
QCAtMSw1ICsxLDYgQEAKPiAgICNpbmNsdWRlICJhc20uaCIKPiAgICNpbmNsdWRlIDxhcmNoX2xp
bWl0cy5oPgo+ICsjaW5jbHVkZSA8YXJtNjQvb3MuaD4KPiAgICNpbmNsdWRlIDxhcm02NC9wYWdl
dGFibGUuaD4KPiAgICNpbmNsdWRlIDxhcm02NC90cmFwcy5oPgo+ICAgI2luY2x1ZGUgPHhlbi94
ZW4uaD4KPiBAQCAtNDM0LDMgKzQzNSw0MCBAQCBFTlRSWSh2ZWN0b3JfdGFibGUpCj4gICAgICAg
dmVjdG9yX2VudHJ5IGVsMF9maXFfaW52YWxpZCAgICAgICAgICAvKiBGSVEgMzItYml0IEVMMCAg
ICAgICAgICovCj4gICAgICAgdmVjdG9yX2VudHJ5IGVsMF9lcnJvcl9pbnZhbGlkICAgICAgICAv
KiBFcnJvciAzMi1iaXQgRUwwICAgICAgICovCj4gICBFTkQodmVjdG9yX3RhYmxlKQo+ICsKPiAr
LyoKPiArICogPT4geDAgPSAmcHJldi0+c3AKPiArICogICAgeDEgPSAmbmV4dC0+c3AKPiArICog
PD0gc3dpdGNoIHRvIHRoZSBuZXh0IHRocmVhZAoKU29tZSBkb2N1bWVudGF0aW9uIGFib3V0IHRo
ZSBsYXlvdXQgb2YgdGhlIHN0cnVjdHVyZSBpbiBtZW1vcnkgd291bGQgYmUgCnVzZWZ1bC4KCj4g
KyAqLwo+ICtFTlRSWShfX2FyY2hfc3dpdGNoX3RocmVhZHMpCj4gKyAgICAvKiBTdG9yZSB0aGUg
Y2FsbGVlLXNhdmVkIHJlZ2lzdGVycyB0byBwcmV2J3Mgc3RydWN0IHRocmVhZCAqLwoKQUZBSUNU
LCB5b3UgZG9uJ3Qgc3RvcmUgdGhlIGNhbGxlZS1zYXZlZCByZWdpc3RlcnMgaW4gc3RydWN0IHRo
cmVhZCBidXQgCm9uIHRoZSBzdGFjay4gQW0gSSByaWdodD8KCj4gKyAgICBtb3YgICB4Miwgc3AK
PiArCj4gKyAgICBzdWIgICB4MiwgeDIsICMoQ0FMTEVFX1NBVkVEX1JFR0lTVEVSUyAqIDgpID4g
KyAgICBzdHAgICB4MTksIHgyMCwgW3gyLCAjMTYgKiAwXQo+ICsgICAgc3RwICAgeDIxLCB4MjIs
IFt4MiwgIzE2ICogMV0KPiArICAgIHN0cCAgIHgyMywgeDI0LCBbeDIsICMxNiAqIDJdCj4gKyAg
ICBzdHAgICB4MjUsIHgyNiwgW3gyLCAjMTYgKiAzXQo+ICsgICAgc3RwICAgeDI3LCB4MjgsIFt4
MiwgIzE2ICogNF0KPiArICAgIHN0ciAgIHgyOSwgW3gyLCAjMTYgKiA1XQo+ICsKPiArICAgIC8q
IFN0b3JlIGN1cnJlbnQgc3AvaXAgdG8gcHJldidzIHN0cnVjdCB0aHJlYWQgKi8KPiArICAgIHN0
cCAgIHgyLCB4MzAsIFt4MF0KPiArCj4gKyAgICAvKiBMb2FkIHRoZSBzcC9pcCBmcm9tIG5leHQn
cyBzdHJ1Y3QgdGhyZWFkICovCj4gKyAgICBsZHAgICB4MiwgeDMwLCBbeDFdCj4gKwo+ICsgICAg
LyogUmVzdG9yZSB0aGUgY2FsbGVlLXNhdmVkIHJlZ2lzdGVycyAqLwo+ICsgICAgbGRwICAgeDE5
LCB4MjAsIFt4MiwgIzE2ICogMF0KPiArICAgIGxkcCAgIHgyMSwgeDIyLCBbeDIsICMxNiAqIDFd
Cj4gKyAgICBsZHAgICB4MjMsIHgyNCwgW3gyLCAjMTYgKiAyXQo+ICsgICAgbGRwICAgeDI1LCB4
MjYsIFt4MiwgIzE2ICogM10KPiArICAgIGxkcCAgIHgyNywgeDI4LCBbeDIsICMxNiAqIDRdCj4g
KyAgICBsZHIgICB4MjksIFt4MiwgIzE2ICogNV0KPiArCj4gKyAgICBhZGQgICB4MiwgeDIsICMo
Q0FMTEVFX1NBVkVEX1JFR0lTVEVSUyAqIDgpCj4gKyAgICBtb3YgICBzcCwgeDIKPiArCj4gKyAg
ICBiciAgICB4MzAKPiArRU5EUFJPQyhfX2FyY2hfc3dpdGNoX3RocmVhZHMpCj4gZGlmZiAtLWdp
dCBhL2luY2x1ZGUvYXJtL2FybTY0L29zLmggYi9pbmNsdWRlL2FybS9hcm02NC9vcy5oCj4gaW5k
ZXggODliNDAwMi4uMmQ1NTAyMyAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2FybS9hcm02NC9vcy5o
Cj4gKysrIGIvaW5jbHVkZS9hcm0vYXJtNjQvb3MuaAo+IEBAIC0xLDYgKzEsOCBAQAo+ICAgI2lm
bmRlZiBfQVJNNjRfT1NfSF8KPiAgICNkZWZpbmUgX0FSTTY0X09TX0hfCj4gICAKPiArI2lmbmRl
ZiBfX0FTU0VNQkxZX18KPiArCj4gICAjZGVmaW5lIEJVRygpICAgICAgICAgICBfX2FzbV9fIF9f
dm9sYXRpbGUoIndmaSIgOjo6ICJtZW1vcnkiKQo+ICAgCj4gICBzdGF0aWMgaW5saW5lIHZvaWQg
bG9jYWxfaXJxX2Rpc2FibGUodm9pZCkKPiBAQCAtMjUsNiArMjcsOCBAQCBzdGF0aWMgaW5saW5l
IHZvaWQgbG9jYWxfaXJxX2VuYWJsZSh2b2lkKQo+ICAgICAgIF9fYXNtX18gX192b2xhdGlsZV9f
KCJtcnMgJTAsIGRhaWYiOiI9ciIoeCk6OiJtZW1vcnkiKTsgXAo+ICAgfQo+ICAgCj4gKyNlbmRp
Zgo+ICsKPiAgIC8qIFRoZSBDYWxsZWUtc2F2ZWQgcmVnaXN0ZXJzIDogeDE5IH4geDI5ICovCj4g
ICAjZGVmaW5lIENBTExFRV9TQVZFRF9SRUdJU1RFUlMgMTEKPiAgIAo+IAoKQ2hlZXJzLAoKLS0g
Ckp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJv
amVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21p
bmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 13:10:08 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 13:10:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBgf1-0002Kv-PM; Thu, 26 Apr 2018 13:10:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bqfm=hp=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBgf1-0002Kp-02
 for minios-devel@lists.xenproject.org; Thu, 26 Apr 2018 13:10:07 +0000
X-Inumbo-ID: 781f9b2e-4953-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 781f9b2e-4953-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 13:12:28 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A72E21435;
 Thu, 26 Apr 2018 06:10:04 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 88A373F487;
 Thu, 26 Apr 2018 06:10:02 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-29-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <348f1eec-b5dc-d990-4e37-a0616ce88555@arm.com>
Date: Thu, 26 Apr 2018 14:10:01 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-29-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 28/43] arm64: init the memory system
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxNi8wNC8xOCAwNzozMiwgSHVhbmcgU2hpamllIHdyb3RlOgo+IFRoaXMgcGF0Y2gg
ZG8gZm9sbG93aW5ncyB0byBpbml0aWFsaXplIHRoZSBtZW1vcnkgc3lzdGVtOgo+ICAgICAgMC4p
IE1hcCBleHRyYSAyTSBmb3IgdGhlIGZpcnN0X2ZyZWVfcGZuLgoKV2hhdCBndWFyYW50ZWVzIHlv
dSB0aGVyZSB3aWxsIGJlIGZyZWUgc3BhY2UgYWZ0ZXIgdGhlIGtlcm5lbD8gQW5kIHdoeSAKb25s
eSAyTUI/CgpBcyBJIGhhdmUgYWxyZWFkeSBzYWlkIGJlZm9yZSwgbW9zdCBsaWtlbHkgeW91IHdh
bnQgdG8gaW5jbHVkZSBhIGNvdXBsZSAKb2YgbW9yZSBwYWdlLXRhYmxlIGluIHRoZSBpbWFnZSBk
aXJlY3RseS4KCj4gCj4gICAgICAxLikgYWRkIGFyY2hfbW1fcHJlaW5pdCgpIHRvIHNldHVwIHRo
ZSBwYWdlIHRhYmxlIGZvciBEZXZpY2UgVHJlZS4KPiAKPiAgICAgIDIuKSBhZGQgZnVuY3Rpb25z
IHRvIHNldHVwIHRoZSBwYWdlIHRhYmxlLCBzdWNoIGFzCj4gICAgICAgICAgZWFybHlfYWxsb2Nf
cGFnZSgpL2J1aWxkX3BhZ2V0YWJsZSgpL2J1aWxkX3B1ZC9idWlsZF9wbWQuCj4gCj4gICAgICAz
LikgSnVzdCBhcyB0aGUgeDg2IGRvZXMsIGxpbWl0cyB0aGUgbWF4IG1lbW9yeSBzaXplIHRvIE1B
WF9NRU1fU0laRSwKPiAgICAgICAgICB0aGUgbWluIG1lbW9yeSBzaXplIHRvIE1JTl9NRU1fU0la
RSwKPiAKPiAgICAgIDQuKSBhbmQgc2V0dXAgdGhlIHBhZ2UgYWxsb2NhdG9yIGluIGFyY2hfaW5p
dF9tbSgpLgo+ICAgICAgICAgIFRoZSBpbml0X3BhZ2V0YWJsZSgpIHdpbGwgZmluZCB0aGUgYmVz
dCBibG9jayBtYXBwaW5nIGxldmVsIHRvIHNldHVwCj4gCXRoZSBwYWdlIHRhYmxlLgo+IAo+IFNp
Z25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5jb20+Cj4gLS0tCj4g
ICBhcmNoL2FybS9hcm02NC9hcm02NC5TIHwgICAzICsKPiAgIGFyY2gvYXJtL21tLmMgICAgICAg
ICAgfCAyMzggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
Kwo+ICAgYXJjaC9hcm0vc2V0dXAuYyAgICAgICB8ICAgMyArCj4gICBpbmNsdWRlL2FybS9hcmNo
X21tLmggIHwgICA1ICsrCj4gICA0IGZpbGVzIGNoYW5nZWQsIDI0OSBpbnNlcnRpb25zKCspCj4g
Cj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0L2FybTY0LlMgYi9hcmNoL2FybS9hcm02NC9h
cm02NC5TCj4gaW5kZXggOTNmZmM4OS4uNGU5YzA0MiAxMDA2NDQKPiAtLS0gYS9hcmNoL2FybS9h
cm02NC9hcm02NC5TCj4gKysrIGIvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+IEBAIC0yMzIsNiAr
MjMyLDkgQEAgX3NldHVwX2luaXRpYWxfcGd0YWJsZToKPiAgICAgICBsZHIgICAgIHgwLCA9X3Rl
eHQgICAgICAgICAgICAgICAgIC8qIHgwIDo9IHZhZGRyKF90ZXh0KSAgICAgICAgICAgICovCj4g
ICAgICAgbGRyICAgICB4MSwgPV9lbmQgICAgICAgICAgICAgICAgICAvKiB4MSA6PSB2YWRkcihf
ZW5kKSAgICAgICAgICAgICAqLwo+ICAgCj4gKyAgICAvKiBNYXAgZXh0cmEgMk0gZm9yIGZpcnN0
X2ZyZWVfcGZuICovCj4gKyAgICBhZGQgICAgIHgxLCB4MSwgTDJfU0laRQo+ICsKPiAgICAgICBz
ZXRfcGFnZV90YWJsZSB4MCwgMCwgUFRfUFQKPiAgICAgICBzZXRfcGFnZV90YWJsZSB4MCwgMSwg
UFRfUFQKPiAgIDE6Cj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21tLmMgYi9hcmNoL2FybS9tbS5j
Cj4gaW5kZXggZDk4ZmFkOC4uZWQ1OTE1OSAxMDA2NDQKPiAtLS0gYS9hcmNoL2FybS9tbS5jCj4g
KysrIGIvYXJjaC9hcm0vbW0uYwo+IEBAIC02LDYgKzYsNyBAQAo+ICAgI2luY2x1ZGUgPG1pbmkt
b3MvcG9zaXgvbGltaXRzLmg+Cj4gICAjaW5jbHVkZSA8bGliZmR0Lmg+Cj4gICAjaW5jbHVkZSA8
bGliLmg+Cj4gKyNpbmNsdWRlIDxhcm02NC9wYWdldGFibGUuaD4KPiAgIAo+ICAgcGFkZHJfdCBw
aHlzaWNhbF9hZGRyZXNzX29mZnNldDsKPiAgIHVuc2lnbmVkIG1lbV9ibG9ja3MgPSAxOwo+IEBA
IC0yMyw2ICsyNCwyMzYgQEAgdW5zaWduZWQgbG9uZyBhbGxvY2F0ZV9vbmRlbWFuZCh1bnNpZ25l
ZCBsb25nIG4sIHVuc2lnbmVkIGxvbmcgYWxpZ25tZW50KQo+ICAgICAgIEJVRygpOwo+ICAgfQo+
ICAgCj4gK2V4dGVybiBscGFlX3QgYm9vdF9sMF9wZ3RhYmxlWzUxMl07Cj4gKwo+ICtzdGF0aWMg
aW5saW5lIHZvaWQgc2V0X3BndF9lbnRyeShscGFlX3QgKnB0ciwgbHBhZV90IHZhbCkKPiArewo+
ICsgICAgKnB0ciA9IHZhbDsKPiArICAgIGRzYihpc2hzdCk7Cj4gKyAgICBpc2IoKTsKPiArfQo+
ICsKPiArc3RhdGljIHZvaWQgYnVpbGRfcHRlKGxwYWVfdCAqcG1kLCB1bnNpZ25lZCBsb25nIHZh
ZGRyLCB1bnNpZ25lZCBsb25nIHZlbmQsCj4gKyAgICAgICAgICAgICAgICAgICAgICBwYWRkcl90
IHBoeXMsIHVpbnQ2NF90IG1lbV90eXBlKQo+ICt7Cj4gKyAgICBscGFlX3QgKnB0ZTsKPiArCj4g
KyAgICBwdGUgPSAobHBhZV90ICopdG9fdmlydCgoKnBtZCkgJiB+QVRUUl9NQVNLX0wpICsgbDNf
cGd0X2lkeCh2YWRkcik7Cj4gKyAgICBkbyB7Cj4gKyAgICAgICAgc2V0X3BndF9lbnRyeShwdGUs
IChwaHlzICYgTDNfTUFTSykgfCBtZW1fdHlwZSB8IEwzX1BBR0UpOwo+ICsKPiArICAgICAgICB2
YWRkciArPSBMM19TSVpFOwo+ICsgICAgICAgIHBoeXMgKz0gTDNfU0laRTsKPiArICAgICAgICBw
dGUrKzsKPiArICAgIH0gd2hpbGUgKHZhZGRyIDwgdmVuZCk7Cj4gK30KPiArCj4gK3N0YXRpYyBp
bnQgYnVpbGRfcG1kKGxwYWVfdCAqcHVkLCB1bnNpZ25lZCBsb25nIHZhZGRyLCB1bnNpZ25lZCBs
b25nIHZlbmQsCgpZb3UgYXJlIHVzaW5nIHRoZSB0ZXJtIHB0ZSwgcG1kLCBwdWQgKHdoaWNoIGJh
c2ljYWxseSBsb29rcyB2ZXJ5IApMaW51eGlzbS4uLikgYnV0IEkgaGF2ZSBub3QgaWRlYSB3aGF0
IHlvdSBhcmUgcmVmZXIgdG8gaW4gTWluaS1PUyAKY29udGV4dC4gUGxlYXNlIGV4cGxhaW4gaXQu
Cgo+ICsgICAgICAgICAgICAgICAgICAgICAgcGFkZHJfdCBwaHlzLCB1aW50NjRfdCBtZW1fdHlw
ZSwKPiArICAgICAgICAgICAgICAgICAgICAgIHBhZGRyX3QgKCpuZXdfcGFnZSkodm9pZCksIGlu
dCBsZXZlbCkKClRoZSBpbmRlbnRhdGlvbiBsb29rcyB3cm9uZy4KCj4gK3sKPiArICAgIGxwYWVf
dCAqcG1kOwo+ICsgICAgdW5zaWduZWQgbG9uZyBuZXh0Owo+ICsKPiArICAgIHBtZCA9IChscGFl
X3QgKil0b192aXJ0KCgqcHVkKSAmIH5BVFRSX01BU0tfTCkgKyBsMl9wZ3RfaWR4KHZhZGRyKTsK
PiArICAgIGRvIHsKPiArICAgICAgICBpZiAobGV2ZWwgPT0gMikgewo+ICsgICAgICAgICAgICAg
c2V0X3BndF9lbnRyeShwbWQsIChwaHlzICYgTDJfTUFTSykgfCBtZW1fdHlwZSB8IEwyX0JMT0NL
KTsKPiArICAgICAgICB9IGVsc2Ugewo+ICsgICAgICAgICAgICAgbmV4dCA9IHZhZGRyICsgTDJf
U0laRTsKPiArICAgICAgICAgICAgIGlmIChuZXh0ID4gdmVuZCkKPiArICAgICAgICAgICAgICAg
ICBuZXh0ID0gdmVuZDsKPiArCj4gKyAgICAgICAgICAgICBpZiAoKCpwbWQpID09IEwyX0lOVkFM
KSB7Cj4gKyAgICAgICAgICAgICAgICAgcGFkZHJfdCBuZXdwYWdlID0gbmV3X3BhZ2UoKTsKPiAr
ICAgICAgICAgICAgICAgICBpZiAoIW5ld3BhZ2UpCj4gKyAgICAgICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gLUVOT01FTTsKPiArICAgICAgICAgICAgICAgICBzZXRfcGd0X2VudHJ5KHBtZCwg
bmV3cGFnZSB8IFBUX1BUKTsKPiArICAgICAgICAgICAgIH0KPiArCj4gKyAgICAgICAgICAgICBi
dWlsZF9wdGUocG1kLCB2YWRkciwgbmV4dCwgcGh5cywgbWVtX3R5cGUpOwo+ICsgICAgICAgIH0K
PiArCj4gKyAgICAgICAgdmFkZHIgKz0gTDJfU0laRTsKPiArICAgICAgICBwaHlzICs9IEwyX1NJ
WkU7Cj4gKyAgICAgICAgcG1kKys7Cj4gKyAgICB9IHdoaWxlICh2YWRkciA8IHZlbmQpOwo+ICsK
PiArICAgIHJldHVybiAwOwo+ICt9Cj4gKwo+ICtzdGF0aWMgaW50IGJ1aWxkX3B1ZChscGFlX3Qg
KnBnZCwgdW5zaWduZWQgbG9uZyB2YWRkciwgdW5zaWduZWQgbG9uZyB2ZW5kLAo+ICsgICAgICAg
ICAgICAgICAgICAgICAgcGFkZHJfdCBwaHlzLCB1aW50NjRfdCBtZW1fdHlwZSwKPiArICAgICAg
ICAgICAgICAgICAgICAgIHBhZGRyX3QgKCpuZXdfcGFnZSkodm9pZCksIGludCBsZXZlbCkKCmlu
ZGVudGF0aW9uLgoKCj4gK3sKPiArICAgIGxwYWVfdCAqcHVkOwo+ICsgICAgdW5zaWduZWQgbG9u
ZyBuZXh0Owo+ICsgICAgaW50IHJldDsKPiArCj4gKyAgICBwdWQgPSAobHBhZV90ICopdG9fdmly
dCgoKnBnZCkgJiB+QVRUUl9NQVNLX0wpICsgbDFfcGd0X2lkeCh2YWRkcik7Cj4gKyAgICBkbyB7
Cj4gKyAgICAgICAgaWYgKGxldmVsID09IDEpIHsKPiArICAgICAgICAgICAgIHNldF9wZ3RfZW50
cnkocHVkLCAocGh5cyAmIEwxX01BU0spIHwgbWVtX3R5cGUgfCBMMV9CTE9DSyk7Cj4gKyAgICAg
ICAgfSBlbHNlIHsKPiArICAgICAgICAgICAgIG5leHQgPSB2YWRkciArIEwxX1NJWkU7Cj4gKyAg
ICAgICAgICAgICBpZiAobmV4dCA+IHZlbmQpCj4gKyAgICAgICAgICAgICAgICAgbmV4dCA9IHZl
bmQ7Cj4gKwo+ICsgICAgICAgICAgICAgaWYgKCgqcHVkKSA9PSBMMV9JTlZBTCkgewo+ICsgICAg
ICAgICAgICAgICAgIHBhZGRyX3QgbmV3cGFnZSA9IG5ld19wYWdlKCk7Cj4gKyAgICAgICAgICAg
ICAgICAgaWYgKCFuZXdwYWdlKQo+ICsgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLUVOT01F
TTsKPiArICAgICAgICAgICAgICAgICBzZXRfcGd0X2VudHJ5KHB1ZCwgbmV3cGFnZSB8IFBUX1BU
KTsKPiArICAgICAgICAgICAgIH0KPiArCj4gKyAgICAgICAgICAgICByZXQgPSBidWlsZF9wbWQo
cHVkLCB2YWRkciwgbmV4dCwgcGh5cywgbWVtX3R5cGUsIG5ld19wYWdlLCBsZXZlbCk7Cj4gKyAg
ICAgICAgICAgICBpZiAocmV0KQo+ICsgICAgICAgICAgICAgICAgIHJldHVybiByZXQ7Cj4gKyAg
ICAgICAgfQo+ICsKPiArICAgICAgICB2YWRkciArPSBMMV9TSVpFOwo+ICsgICAgICAgIHBoeXMg
Kz0gTDFfU0laRTsKPiArICAgICAgICBwdWQrKzsKPiArICAgIH0gd2hpbGUgKHZhZGRyIDwgdmVu
ZCk7Cj4gKwo+ICsgICAgcmV0dXJuIDA7Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQgYnVpbGRfcGFn
ZXRhYmxlKHVuc2lnbmVkIGxvbmcgdmFkZHIsIHVuc2lnbmVkIGxvbmcgc3RhcnRfcGZuLAo+ICsg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIG1heF9wZm4sIHVpbnQ2NF90IG1lbV90
eXBlLAo+ICsgICAgICAgICAgICAgICAgICAgICBwYWRkcl90ICgqbmV3X3BhZ2UpKHZvaWQpLCBp
bnQgbGV2ZWwpCgpJbmRlbnRhdGlvbi4KCkFsc28sIHRoaXMgaXMgYSBiaXQgd2VpcmQgdG8gaW1w
b3NlIHRoZSBjYWxsZXIgdG8ga25vdyB0aGUgbGV2ZWwgd2hlcmUgCml0IHN0b3BzLiBIb3cgZG8g
eW91IGVuc3VyZSB0aGUgdmlydHVhbCBhbmQgcGh5c2ljYWwgYWRkcmVzcyBhcmUgZ29pbmcgCnRv
IGJlIGFsaWduZWQgcHJvcGVybHk/Cgo+ICt7Cj4gKyAgICBwYWRkcl90IHBfc3RhcnQ7Cj4gKyAg
ICB1bnNpZ25lZCBsb25nIHZfZW5kLCBuZXh0Owo+ICsgICAgbHBhZV90ICpwZ2Q7Cj4gKyAgICBp
bnQgcmV0Owo+ICsKPiArICAgIHZfZW5kID0gdmFkZHIgKyBtYXhfcGZuICogUEFHRV9TSVpFOwo+
ICsgICAgcF9zdGFydCA9IFBGTl9QSFlTKHN0YXJ0X3Bmbik7Cj4gKwo+ICsgICAgcGdkID0gJmJv
b3RfbDBfcGd0YWJsZVtsMF9wZ3RfaWR4KHZhZGRyKV07Cj4gKwo+ICsgICAgZG8gewo+ICsgICAg
ICAgIG5leHQgPSAodmFkZHIgKyBMMF9TSVpFKTsKPiArICAgICAgICBpZiAobmV4dCA+IHZfZW5k
KQo+ICsgICAgICAgICAgICBuZXh0ID0gdl9lbmQ7Cj4gKwo+ICsgICAgICAgIGlmICgoKnBnZCkg
PT0gTDBfSU5WQUwpIHsKPiArICAgICAgICAgICAgcGFkZHJfdCBuZXdwYWdlID0gbmV3X3BhZ2Uo
KTsKPiArICAgICAgICAgICAgaWYgKCFuZXdwYWdlKQo+ICsgICAgICAgICAgICAgICAgcmV0dXJu
IC1FTk9NRU07Cj4gKyAgICAgICAgICAgIHNldF9wZ3RfZW50cnkocGdkLCBuZXdwYWdlIHwgUFRf
UFQpOwo+ICsgICAgICAgIH0KPiArCj4gKyAgICAgICAgcmV0ID0gYnVpbGRfcHVkKHBnZCwgdmFk
ZHIsIG5leHQsIHBfc3RhcnQsIG1lbV90eXBlLCBuZXdfcGFnZSwgbGV2ZWwpOwo+ICsgICAgICAg
IGlmIChyZXQpCj4gKyAgICAgICAgICAgIHJldHVybiByZXQ7Cj4gKwo+ICsgICAgICAgIHBfc3Rh
cnQgKz0gbmV4dCAtIHZhZGRyOwo+ICsgICAgICAgIHZhZGRyID0gbmV4dDsKPiArICAgICAgICBw
Z2QrKzsKPiArICAgIH0gd2hpbGUgKHZhZGRyICE9IHZfZW5kKTsKPiArCj4gKyAgICByZXR1cm4g
MDsKPiArfQo+ICsKPiArLyoKPiArICogQmVmb3JlIHRoZSBwYWdlIGFsbG9jYXRvciBpcyByZWFk
eSwgd2UgdXNlIGZpcnN0X2ZyZWVfcGZuIHRvIHJlY29yZAo+ICsgKiB0aGUgZmlyc3QgZnJlZSBw
YWdlLiBUaGUgZmlyc3RfZnJlZV9wZm4gd2lsbCBiZSBpbmNyZWFzZWQgYnkKPiArICogZWFybHlf
YWxsb2NfcGFnZSgpLgo+ICsgKi8KPiArc3RhdGljIHVuc2lnbmVkIGxvbmcgZmlyc3RfZnJlZV9w
Zm47Cj4gKwo+ICsvKiBUaGUgcGZuIGZvciBNSU5fTUVNX1NJWkUgKi8KPiArc3RhdGljIHVuc2ln
bmVkIGxvbmcgbWluX21lbV9wZm47Cj4gKwo+ICtzdGF0aWMgcGFkZHJfdCBlYXJseV9hbGxvY19w
YWdlKHZvaWQpCj4gK3sKPiArICAgIHBhZGRyX3QgbmV3X3BhZ2U7Cj4gKwo+ICsgICAgbWVtc2V0
KHBmbl90b192aXJ0KGZpcnN0X2ZyZWVfcGZuKSwgMCwgUEFHRV9TSVpFKTsKPiArICAgIGRzYihp
c2hzdCk7Cj4gKwo+ICsgICAgbmV3X3BhZ2UgPSBQRk5fUEhZUyhmaXJzdF9mcmVlX3Bmbik7Cj4g
KyAgICBmaXJzdF9mcmVlX3BmbisrOwo+ICsgICAgQVNTRVJUKGZpcnN0X2ZyZWVfcGZuIDwgbWlu
X21lbV9wZm4pOwo+ICsgICAgcmV0dXJuIG5ld19wYWdlOwo+ICt9Cj4gKwo+ICtzdGF0aWMgaW50
IGluaXRfcGFnZXRhYmxlX29rOwoKUGxlYXNlIGV4cGxhaW4gdGhlIHB1cnBvc2Ugb2YgdGhlIHZh
cmlhYmxlIGluIGEgY29tbWVudC4KCj4gKy8qCj4gKyAqIFRoaXMgZnVuY3Rpb24gd2lsbCBzZXR1
cCB0aGUgcGFnZSB0YWJsZSBmb3IgdGhlIG1lbW9yeSBzeXN0ZW0uCj4gKyAqLwo+ICt2b2lkIGlu
aXRfcGFnZXRhYmxlKHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3BmbiwgdW5zaWduZWQgbG9uZyBiYXNl
LAo+ICsgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgc2l6ZSkKPiArewo+ICsgICAg
dW5zaWduZWQgbG9uZyB2YWRkciA9ICh1bnNpZ25lZCBsb25nKXRvX3ZpcnQoYmFzZSk7Cj4gKyAg
ICBwYWRkcl90IHBoeXMgPSBiYXNlOwo+ICsgICAgcGFkZHJfdCBzeiA9IEwxX1NJWkU7Cj4gKyAg
ICBscGFlX3QgKnBnZDsKPiArICAgIGxwYWVfdCAqcHVkOwo+ICsgICAgaW50IGxldmVsOwo+ICsK
PiArICAgIGRvIHsKPiArICAgICAgICAvKgo+ICsgICAgICAgICAqIFdlIGNhbm5vdCBzZXQgYmxv
Y2sgbWFwcGluZyBmb3IgUEdEKGxldmVsIDApLAo+ICsgICAgICAgICAqIGJ1dCB3ZSBjYW4gc2V0
IGJsb2NrIG1hcHBpbmcgZm9yIFBVRChsZXZlbCAxKSBhbmQgUE1EKGxldmVsIDIpLgo+ICsgICAg
ICAgICAqIEdldCB0aGUgcHJvcGVyIGxldmVsIGZvciBidWlsZF9wYWdldGFibGUoKS4KCllvdXIg
QVBJIGxvb2tzIHdyb25nLCBhIGNhbGxlciBvZiB0aGUgUFQgbWFwcGluZyBzaG91bGQgbm90IG5l
ZWQgdG8ga25vdyAKdGhlIGxldmVsIGl0IGlzIGdvaW5nIHRvIG1hcC4gVGhlIG9ubHkgdGhpbmcg
bmVjZXNzYXJ5IGlzIHRoZSBzaXplIG9mIAp0aGUgbWFwcGluZy4KCj4gKyAgICAgICAgICovCj4g
KyAgICAgICAgaWYgKHNpemUgPj0gTDFfU0laRSkgewo+ICsgICAgICAgICAgICBwZ2QgPSAmYm9v
dF9sMF9wZ3RhYmxlW2wwX3BndF9pZHgodmFkZHIpXTsKPiArICAgICAgICAgICAgaWYgKCgqcGdk
KSA9PSBMMF9JTlZBTCkgewoKSSBkb24ndCB1bmRlcnN0YW5kIHRoaXMgY29kZS4gV2h5IGRvIHlv
dSBuZWVkIHRvIGNoZWNrIHRoZSBib290IHRhYmxlIGluIApvcmRlciB0byBub3cgdGhlIGxldmVs
IHRvIG1hcD8KCj4gKyAgICAgICAgICAgICAgICAgbGV2ZWwgPSAxOwo+ICsgICAgICAgICAgICB9
IGVsc2Ugewo+ICsgICAgICAgICAgICAgICAgIHB1ZCA9IChscGFlX3QgKil0b192aXJ0KCgqcGdk
KSAmIH5BVFRSX01BU0tfTCkgKyBsMV9wZ3RfaWR4KHZhZGRyKTsKPiArICAgICAgICAgICAgICAg
ICBpZiAoKCpwdWQpID09IEwxX0lOVkFMKQo+ICsgICAgICAgICAgICAgICAgICAgICBsZXZlbCA9
IDE7Cj4gKyAgICAgICAgICAgICAgICAgZWxzZQo+ICsgICAgICAgICAgICAgICAgICAgICBsZXZl
bCA9IDI7Cj4gKyAgICAgICAgICAgIH0KPiArICAgICAgICB9IGVsc2Ugewo+ICsgICAgICAgICAg
ICAgc3ogPSBzaXplICYgTDJfTUFTSzsKPiArICAgICAgICAgICAgIGxldmVsID0gMjsKPiArICAg
ICAgICB9Cj4gKwo+ICsgICAgICAgIGJ1aWxkX3BhZ2V0YWJsZSh2YWRkciwgUEhZU19QRk4ocGh5
cyksIFBGTl9VUChzeiksCj4gKyAgICAgICAgICAgICAgICAgICAgICAgIE1FTV9ERUZfQVRUUiwg
ZWFybHlfYWxsb2NfcGFnZSwgbGV2ZWwpOwo+ICsKPiArICAgICAgICB2YWRkciArPSBzejsKPiAr
ICAgICAgICBwaHlzICArPSBzejsKPiArICAgICAgICBzaXplIC09IHN6Owo+ICsgICAgfSB3aGls
ZSAoc2l6ZSA+IEwyX1NJWkUpOwo+ICsKPiArICAgIC8qIFVzZSB0aGUgcGFnZSBtYXBwaW5nIChs
ZXZlbCAzKSBmb3IgdGhlIGxlZnQgKi8KPiArICAgIGlmIChzaXplKQo+ICsgICAgICAgIGJ1aWxk
X3BhZ2V0YWJsZSh2YWRkciwgUEhZU19QRk4ocGh5cyksIFBGTl9VUChzaXplKSwKPiArICAgICAg
ICAgICAgICAgICAgICAgICAgTUVNX0RFRl9BVFRSLCBlYXJseV9hbGxvY19wYWdlLCAzKTsKPiAr
Cj4gKyAgICAqc3RhcnRfcGZuID0gZmlyc3RfZnJlZV9wZm47Cj4gKyAgICBpbml0X3BhZ2V0YWJs
ZV9vayA9IDE7Cj4gK30KPiArCj4gK3ZvaWQgYXJjaF9tbV9wcmVpbml0KHZvaWQgKmR0Yl9wb2lu
dGVyKQo+ICt7Cj4gKyAgICBwYWRkcl90ICoqZHRiX3AgPSBkdGJfcG9pbnRlcjsKPiArICAgIHBh
ZGRyX3QgKmR0YiA9ICpkdGJfcDsKPiArICAgIHVpbnRwdHJfdCBlbmQgPSAodWludHB0cl90KSAm
X2VuZDsKPiArCj4gKyAgICBkdGIgPSB0b192aXJ0KCgocGFkZHJfdClkdGIpKTsKPiArICAgIGZp
cnN0X2ZyZWVfcGZuID0gUEZOX1VQKHRvX3BoeXMoZW5kKSk7Cj4gKyAgICBtaW5fbWVtX3BmbiA9
IFBGTl9VUCh0b19waHlzKF90ZXh0KSArIE1JTl9NRU1fU0laRSk7Cj4gKwo+ICsgICAgLyoKPiAr
ICAgICAqIFNldHVwIHRoZSBtYXBwaW5nIGZvciBEZXZpY2UgVHJlZSwgb25seSBtYXAgMk0oTDJf
U0laRSkgc2l6ZS4KPiArICAgICAqCj4gKyAgICAgKiBOb3RlOiBUaGUgZWFybHlfYWxsb2NfcGFn
ZSgpIHdpbGwgaW5jcmVhc2UgQGZpcnN0X2ZyZWVfcGZuLgo+ICsgICAgICovCj4gKyAgICBidWls
ZF9wYWdldGFibGUoKHVuc2lnbmVkIGxvbmcpZHRiLCB2aXJ0X3RvX3BmbigodW5zaWduZWQgbG9u
ZylkdGIpLAo+ICsgICAgICAgICAgICAgICAgICAgIFBIWVNfUEZOKEwyX1NJWkUpLCBNRU1fREVG
X0FUVFIsIGVhcmx5X2FsbG9jX3BhZ2UsIDIpOwo+ICsKPiArICAgICpkdGJfcCA9IGR0YjsKPiAr
fQo+ICsKPiAgIHZvaWQgYXJjaF9pbml0X21tKHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3Bmbl9wLCB1
bnNpZ25lZCBsb25nICptYXhfcGZuX3ApCj4gICB7Cj4gICAgICAgaW50IG1lbW9yeTsKPiBAQCAt
NjUsNiArMjk2LDExIEBAIHZvaWQgYXJjaF9pbml0X21tKHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3Bm
bl9wLCB1bnNpZ25lZCBsb25nICptYXhfcGZuX3ApCj4gICAgICAgZW5kID0gKHVpbnRwdHJfdCkg
Jl9lbmQ7Cj4gICAgICAgbWVtX2Jhc2UgPSBmZHQ2NF90b19jcHUocmVnc1swXSk7Cj4gICAgICAg
bWVtX3NpemUgPSBmZHQ2NF90b19jcHUocmVnc1sxXSk7Cj4gKwo+ICsgICAgQlVHX09OKG1lbV9z
aXplIDwgTUlOX01FTV9TSVpFKTsKPiArICAgIGlmIChtZW1fc2l6ZSA+IE1BWF9NRU1fU0laRSkK
PiArICAgICAgICBtZW1fc2l6ZSA9IE1BWF9NRU1fU0laRTsKPiArCj4gICAgICAgcHJpbnRrKCJG
b3VuZCBtZW1vcnkgYXQgMHglbGx4IChsZW4gMHglbGx4KVxuIiwKPiAgICAgICAgICAgICAgICh1
bnNpZ25lZCBsb25nIGxvbmcpIG1lbV9iYXNlLCAodW5zaWduZWQgbG9uZyBsb25nKSBtZW1fc2l6
ZSk7Cj4gICAKPiBAQCAtNzMsNiArMzA5LDggQEAgdm9pZCBhcmNoX2luaXRfbW0odW5zaWduZWQg
bG9uZyAqc3RhcnRfcGZuX3AsIHVuc2lnbmVkIGxvbmcgKm1heF9wZm5fcCkKPiAgICAgICBoZWFw
X2xlbiA9IG1lbV9zaXplIC0gKFBGTl9QSFlTKCpzdGFydF9wZm5fcCkgLSBtZW1fYmFzZSk7Cj4g
ICAgICAgKm1heF9wZm5fcCA9ICpzdGFydF9wZm5fcCArIFBGTl9ET1dOKGhlYXBfbGVuKTsKPiAg
IAo+ICsgICAgaW5pdF9wYWdldGFibGUoc3RhcnRfcGZuX3AsIG1lbV9iYXNlLCBtZW1fc2l6ZSk7
Cj4gKwo+ICAgICAgIHByaW50aygiVXNpbmcgcGFnZXMgJWx1IHRvICVsdSBhcyBmcmVlIHNwYWNl
IGZvciBoZWFwLlxuIiwgKnN0YXJ0X3Bmbl9wLCAqbWF4X3Bmbl9wKTsKPiAgIAo+ICAgICAgIC8q
IFRoZSBkZXZpY2UgdHJlZSBpcyBwcm9iYWJseSBpbiBtZW1vcnkgdGhhdCB3ZSdyZSBhYm91dCB0
byBoYW5kIG92ZXIgdG8gdGhlIHBhZ2UKPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vc2V0dXAuYyBi
L2FyY2gvYXJtL3NldHVwLmMKPiBpbmRleCAyN2JlYTRhLi5hYjgyZWRhIDEwMDY0NAo+IC0tLSBh
L2FyY2gvYXJtL3NldHVwLmMKPiArKysgYi9hcmNoL2FybS9zZXR1cC5jCj4gQEAgLTI5LDYgKzI5
LDkgQEAgdm9pZCBhcmNoX2luaXQodm9pZCAqZHRiX3BvaW50ZXIsIHBhZGRyX3QgcGh5c2ljYWxf
b2Zmc2V0KQo+ICAgCj4gICAgICAgeHByaW50aygiVmlydHVhbCAtPiBwaHlzaWNhbCBvZmZzZXQg
PSAlIlBSSXBhZGRyIiBcbiIsIHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0KTsKPiAgIAo+ICsgICAg
LyogRG8gdGhlIHByZXBhcmF0aW9ucyAqLwo+ICsgICAgYXJjaF9tbV9wcmVpbml0KCZkdGJfcG9p
bnRlcik7Cj4gKwo+ICAgICAgIHhwcmludGsoIkNoZWNraW5nIERUQiBhdCAlcC4uLlxuIiwgZHRi
X3BvaW50ZXIpOwo+ICAgCj4gICAgICAgaWYgKChyID0gZmR0X2NoZWNrX2hlYWRlcihkdGJfcG9p
bnRlcikpKSB7Cj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJtL2FyY2hfbW0uaCBiL2luY2x1ZGUv
YXJtL2FyY2hfbW0uaAo+IGluZGV4IGY3N2EyMTAuLmRiNmU3ODEgMTAwNjQ0Cj4gLS0tIGEvaW5j
bHVkZS9hcm0vYXJjaF9tbS5oCj4gKysrIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4gQEAgLTMs
NiArMywxMCBAQAo+ICAgCj4gICB0eXBlZGVmIHVpbnQ2NF90IHBhZGRyX3Q7Cj4gICAjZGVmaW5l
IFBSSXBhZGRyICJseCIKPiArI2RlZmluZSBNSU5fTUVNX1NJWkUgICAgICAgICAgICAoMHg0MDAw
MDApCgpXaGVyZSBkb2VzIHRoaXMgdmFsdWUgY29tZSBmcm9tPwoKPiArI2RlZmluZSBNQVhfTUVN
X1NJWkUgICAgICAgICAgICAoMVVMIDw8IDM5KQoKU2FtZSBoZXJlPwoKPiArCj4gK3R5cGVkZWYg
dWludDY0X3QgbHBhZV90Owo+ICAgCj4gICBleHRlcm4gY2hhciBfdGV4dCwgX2V0ZXh0LCBfZXJv
ZGF0YSwgX2VkYXRhLCBfZW5kLCBfX2Jzc19zdGFydDsKPiAgIGV4dGVybiBpbnQgX2Jvb3Rfc3Rh
Y2tbXTsKPiBAQCAtMzAsNiArMzQsNyBAQCBleHRlcm4gcGFkZHJfdCBwaHlzaWNhbF9hZGRyZXNz
X29mZnNldDsKPiAgIAo+ICAgI2RlZmluZSB2aXJ0dWFsX3RvX21mbihfdmlydCkJICAgdmlydF90
b19tZm4oX3ZpcnQpCj4gICAKPiArdm9pZCBhcmNoX21tX3ByZWluaXQodm9pZCAqZHRiX3BvaW50
ZXIpOwo+ICAgLy8gRklYTUUKPiAgICNkZWZpbmUgbWFwX2ZyYW1lcyhmLCBuKSAoTlVMTCkKPiAg
IAo+IAoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3Mt
ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9t
YWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 13:19:59 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 13:19:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBgoX-0002hL-S0; Thu, 26 Apr 2018 13:19:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bqfm=hp=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBgoW-0002hG-Mv
 for minios-devel@lists.xenproject.org; Thu, 26 Apr 2018 13:19:56 +0000
X-Inumbo-ID: d83b98a0-4954-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id d83b98a0-4954-11e8-8249-2fda3a446a53;
 Thu, 26 Apr 2018 13:22:19 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 583721435;
 Thu, 26 Apr 2018 06:19:55 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 784DC3F25D;
 Thu, 26 Apr 2018 06:19:53 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-29-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <ed58fe42-c3de-b003-f4bb-cfbd526c6ce9@arm.com>
Date: Thu, 26 Apr 2018 14:19:52 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-29-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 28/43] arm64: init the memory system
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAxNi8wNC8xOCAwNzozMiwgSHVhbmcgU2hpamllIHdyb3RlOgo+ICt2b2lkIGFyY2hfbW1f
cHJlaW5pdCh2b2lkICpkdGJfcG9pbnRlcikKPiArewo+ICsgICAgcGFkZHJfdCAqKmR0Yl9wID0g
ZHRiX3BvaW50ZXI7Cj4gKyAgICBwYWRkcl90ICpkdGIgPSAqZHRiX3A7Cj4gKyAgICB1aW50cHRy
X3QgZW5kID0gKHVpbnRwdHJfdCkgJl9lbmQ7Cj4gKwo+ICsgICAgZHRiID0gdG9fdmlydCgoKHBh
ZGRyX3QpZHRiKSk7Cj4gKyAgICBmaXJzdF9mcmVlX3BmbiA9IFBGTl9VUCh0b19waHlzKGVuZCkp
Owo+ICsgICAgbWluX21lbV9wZm4gPSBQRk5fVVAodG9fcGh5cyhfdGV4dCkgKyBNSU5fTUVNX1NJ
WkUpOwo+ICsKPiArICAgIC8qCj4gKyAgICAgKiBTZXR1cCB0aGUgbWFwcGluZyBmb3IgRGV2aWNl
IFRyZWUsIG9ubHkgbWFwIDJNKEwyX1NJWkUpIHNpemUuCj4gKyAgICAgKgo+ICsgICAgICogTm90
ZTogVGhlIGVhcmx5X2FsbG9jX3BhZ2UoKSB3aWxsIGluY3JlYXNlIEBmaXJzdF9mcmVlX3Bmbi4K
PiArICAgICAqLwo+ICsgICAgYnVpbGRfcGFnZXRhYmxlKCh1bnNpZ25lZCBsb25nKWR0Yiwgdmly
dF90b19wZm4oKHVuc2lnbmVkIGxvbmcpZHRiKSwKPiArICAgICAgICAgICAgICAgICAgICBQSFlT
X1BGTihMMl9TSVpFKSwgTUVNX0RFRl9BVFRSLCBlYXJseV9hbGxvY19wYWdlLCAyKTsKCkkgZm9y
Z290IHRvIGNvbW1lbnQgb24gdGhpcy4gWW91IGNhbid0IGFzc3VtZSB0aGUgRFRCIHdpbGwgYmUg
Mk1CIAphbGlnbmVkIGFuZCB0aGUgaW50ZXJmYWNlIG9mIGJ1aWxkX3BhZ2V0YWJsZSBpcyBzb21l
d2hhdCBxdWl0ZSBjb25mdXNpbmcgCnRvIHVzZS4gU28gYXJlIHlvdSBnb2luZyB0byBtYXAgMiAy
TUIgc2VjdGlvbj8gT3Igb25seSBvbmU/CgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwg
bWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp
c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Thu Apr 26 13:31:42 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Apr 2018 13:31:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBgzt-0003xy-2m; Thu, 26 Apr 2018 13:31:41 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bqfm=hp=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fBgzr-0003xt-82
 for minios-devel@lists.xenproject.org; Thu, 26 Apr 2018 13:31:39 +0000
X-Inumbo-ID: f9fdb161-4955-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id f9fdb161-4955-11e8-9728-bc764e045a96;
 Thu, 26 Apr 2018 15:30:25 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6ED991435;
 Thu, 26 Apr 2018 06:31:36 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 80B723F25D;
 Thu, 26 Apr 2018 06:31:34 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-30-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <bac0b4e2-8800-6723-e103-2bd46dcda392@arm.com>
Date: Thu, 26 Apr 2018 14:31:32 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-30-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 29/43] arm64: set the mapping for
 console and xenbus
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGksCgpPbiAxNi8wNC8xOCAwNzozMiwgSHVhbmcgU2hpamllIHdyb3RlOgo+IFRoaXMgcGF0Y2gg
c2V0cyB0aGUgbWFwcGluZyBmb3IgY29uc29sZSBhbmQgeGVuYnVzLgo+IEp1c3QgZm9sbG93aW5n
IHdoYXQgeDg2IGRvZXM6Cj4gCj4gICAgIDEuKSBBZGQgVklSVF9LRVJORUxfQVJFQS9WSVJUX0RF
TUFORF9BUkVBIHRvIGxpbWl0Cj4gICAgICAgICB0aGUgbWVtb3J5IHJhbmdlcyBmb3IgYWxsb2Nf
dmlydF9rZXJuZWwoKS4KPiAKPiAgICAgMi4pIENoYW5nZSBtYXBfZnJhbWVfdmlydCgpIHRvIHNl
dHVwIHRoZSBwYWdlIHRhYmxlIGZvcgo+ICAgICAgICAgY29uc29sZSBhbmQgeGVuYnVzLgoKbWFw
X2ZyYW1lX3ZpcnQgd2FzIGFscmVhZHkgaW1wbGVtZW50ZWQuIFNvIHdoYXQncyB0aGUgZGlmZmVy
ZW50IHdpdGggdG9kYXk/Cgo+IAo+IFNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamll
Lmh1YW5nQGFybS5jb20+Cj4gLS0tCj4gICBhcmNoL2FybS9tbS5jICAgICAgICAgfCA0NCArKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQo+ICAgaW5jbHVkZS9hcm0v
YXJjaF9tbS5oIHwgIDIgKysKPiAgIDIgZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwg
NSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbW0uYyBiL2FyY2gvYXJt
L21tLmMKPiBpbmRleCBlZDU5MTU5Li5lODNhYzcwIDEwMDY0NAo+IC0tLSBhL2FyY2gvYXJtL21t
LmMKPiArKysgYi9hcmNoL2FybS9tbS5jCj4gQEAgLTIzMywxMiArMjMzLDE1IEBAIHZvaWQgaW5p
dF9wYWdldGFibGUodW5zaWduZWQgbG9uZyAqc3RhcnRfcGZuLCB1bnNpZ25lZCBsb25nIGJhc2Us
Cj4gICAgICAgaW5pdF9wYWdldGFibGVfb2sgPSAxOwo+ICAgfQo+ICAgCj4gK3N0YXRpYyB1bnNp
Z25lZCBsb25nIHZpcnRfa2VybmVsX2FyZWFfZW5kOwoKTmV3bGluZSBoZXJlIHBsZWFzZS4KCj4g
ICB2b2lkIGFyY2hfbW1fcHJlaW5pdCh2b2lkICpkdGJfcG9pbnRlcikKPiAgIHsKPiAgICAgICBw
YWRkcl90ICoqZHRiX3AgPSBkdGJfcG9pbnRlcjsKPiAgICAgICBwYWRkcl90ICpkdGIgPSAqZHRi
X3A7Cj4gICAgICAgdWludHB0cl90IGVuZCA9ICh1aW50cHRyX3QpICZfZW5kOwo+ICAgCj4gKyAg
ICB2aXJ0X2tlcm5lbF9hcmVhX2VuZCA9IFZJUlRfS0VSTkVMX0FSRUE7Cj4gKwo+ICAgICAgIGR0
YiA9IHRvX3ZpcnQoKChwYWRkcl90KWR0YikpOwo+ICAgICAgIGZpcnN0X2ZyZWVfcGZuID0gUEZO
X1VQKHRvX3BoeXMoZW5kKSk7Cj4gICAgICAgbWluX21lbV9wZm4gPSBQRk5fVVAodG9fcGh5cyhf
dGV4dCkgKyBNSU5fTUVNX1NJWkUpOwo+IEBAIC0yNTQsNiArMjU3LDQyIEBAIHZvaWQgYXJjaF9t
bV9wcmVpbml0KHZvaWQgKmR0Yl9wb2ludGVyKQo+ICAgICAgICpkdGJfcCA9IGR0YjsKPiAgIH0K
PiAgIAo+ICtzdGF0aWMgdW5zaWduZWQgbG9uZyBhbGxvY192aXJ0X2tlcm5lbCh1bnNpZ25lZCBu
X3BhZ2VzKQo+ICt7Cj4gKyAgICB1bnNpZ25lZCBsb25nIGFkZHI7Cj4gKwo+ICsgICAgYWRkciA9
IHZpcnRfa2VybmVsX2FyZWFfZW5kOwo+ICsgICAgdmlydF9rZXJuZWxfYXJlYV9lbmQgKz0gUEFH
RV9TSVpFICogbl9wYWdlczsKPiArICAgIEFTU0VSVCh2aXJ0X2tlcm5lbF9hcmVhX2VuZCA8PSBW
SVJUX0RFTUFORF9BUkVBKTsKPiArCj4gKyAgICByZXR1cm4gYWRkcjsKPiArfQoKQ291bGRuJ3Qg
d2UgbWFrZSB0aGUgdmlydCBhbGxvY2F0aW9uIGNvbW1vbiBiZXR3ZWVuIGFybSBhbmQgeDg2PwoK
PiArCj4gK3N0YXRpYyBwYWRkcl90IGFsbG9jX25ld19wYWdlKHZvaWQpCj4gK3sKPiArICAgIHVu
c2lnbmVkIGxvbmcgcGFnZTsKPiArCj4gKyAgICBwYWdlID0gYWxsb2NfcGFnZSgpOwo+ICsgICAg
aWYgKCFwYWdlKQo+ICsgICAgICAgIEJVRygpOwo+ICsgICAgbWVtc2V0KCh2b2lkICopcGFnZSwg
MCwgUEFHRV9TSVpFKTsKPiArICAgIGRzYihpc2hzdCk7CgpXaHkgdGhlIGRzYiBoZXJlPwoKPiAr
ICAgIHJldHVybiB0b19waHlzKHBhZ2UpOwo+ICt9Cj4gKwo+ICt1bnNpZ25lZCBsb25nIG1hcF9m
cmFtZV92aXJ0KHVuc2lnbmVkIGxvbmcgbWZuKQo+ICt7Cj4gKyAgICB1bnNpZ25lZCBsb25nIGFk
ZHI7Cj4gKyAgICBpbnQgcmV0Owo+ICsKPiArICAgIGFkZHIgPSBhbGxvY192aXJ0X2tlcm5lbCgx
KTsKPiArICAgIHJldCA9IGJ1aWxkX3BhZ2V0YWJsZShhZGRyLCBtZm4sIDEsIE1FTV9ERUZfQVRU
UiwKPiArICAgICAgICAgICAgICAgICAgICBpbml0X3BhZ2V0YWJsZV9vaz8gYWxsb2NfbmV3X3Bh
Z2U6IGVhcmx5X2FsbG9jX3BhZ2UsIDMpOwoKVGhpcyBzbWVsbCBsaWtlIHlvdSB3YW50IHRvIGlu
dHJvZHVjZSBoZWxwZXIuIEl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgZm9yIAp0aGUgY2FsbGVyIHRv
IGNhcmUgaG93IHRoZSBwYWdlLXRhYmxlIHdpbGwgYmUgYWxsb2NhdGVkIG5vciB3aGljaCBsZXZl
bC4KCj4gKyAgICBBU1NFUlQocmV0ID09IDApOwo+ICsKPiArICAgIHJldHVybiBhZGRyOwo+ICt9
Cj4gKwoKV2h5IG5vdCBpbXBsZW1lbnRpbmcgdGhlIGZ1bmN0aW9uIHdlcmUgaXQgd2FzPwoKPiAg
IHZvaWQgYXJjaF9pbml0X21tKHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3Bmbl9wLCB1bnNpZ25lZCBs
b25nICptYXhfcGZuX3ApCj4gICB7Cj4gICAgICAgaW50IG1lbW9yeTsKPiBAQCAtMzk0LDggKzQz
MywzIEBAIGdyYW50X2VudHJ5X3YxX3QgKmFyY2hfaW5pdF9nbnR0YWIoaW50IG5yX2dyYW50X2Zy
YW1lcykKPiAgIAo+ICAgICAgIHJldHVybiB0b192aXJ0KGdudHRhYl90YWJsZSk7Cj4gICB9Cj4g
LQo+IC11bnNpZ25lZCBsb25nIG1hcF9mcmFtZV92aXJ0KHVuc2lnbmVkIGxvbmcgbWZuKQo+IC17
Cj4gLSAgICByZXR1cm4gbWZuX3RvX3ZpcnQobWZuKTsKPiAtfQoKPiBkaWZmIC0tZ2l0IGEvaW5j
bHVkZS9hcm0vYXJjaF9tbS5oIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4gaW5kZXggZGI2ZTc4
MS4uNGYzZmQ4ZiAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2FybS9hcmNoX21tLmgKPiArKysgYi9p
bmNsdWRlL2FybS9hcmNoX21tLmgKPiBAQCAtNSw2ICs1LDggQEAgdHlwZWRlZiB1aW50NjRfdCBw
YWRkcl90Owo+ICAgI2RlZmluZSBQUklwYWRkciAibHgiCj4gICAjZGVmaW5lIE1JTl9NRU1fU0la
RSAgICAgICAgICAgICgweDQwMDAwMCkKPiAgICNkZWZpbmUgTUFYX01FTV9TSVpFICAgICAgICAg
ICAgKDFVTCA8PCAzOSkKPiArI2RlZmluZSBWSVJUX0tFUk5FTF9BUkVBICAgICAgICAoKHVuc2ln
bmVkIGxvbmcpdG9fdmlydChNQVhfTUVNX1NJWkUpKQo+ICsjZGVmaW5lIFZJUlRfREVNQU5EX0FS
RUEgICAgICAgIChWSVJUX0tFUk5FTF9BUkVBICsgTUFYX01FTV9TSVpFKQpJIGRvbid0IHVuZGVy
c3RhbmQgdGhlIHB1cnBvc2Ugb2YgdGhlIDIgdmFyaWFibGVzIG5vciB0aGUgdmFsdWUgeW91IGdh
dmUgCnRvIHRoZW0uIEhvdyBjb21lIHlvdSBhcmUgdXNpbmcgTUFYX01FTV9TSVpFIGFzIHBoeXNp
Y2FsIGFkZHJlc3MgdG8gZmluZCAKdGhlIHZpcnQgYWRkcmVzcz8KCkNoZWVycywKCj4gICAKPiAg
IHR5cGVkZWYgdWludDY0X3QgbHBhZV90Owo+ICAgCj4gCgotLSAKSnVsaWVuIEdyYWxsCgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwg
bWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp
c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Fri Apr 27 08:38:00 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 27 Apr 2018 08:38:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBytB-0001YZ-Kq; Fri, 27 Apr 2018 08:37:57 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=ugsk=hm=gmail.com=lars.kurth.xen@srs-us1.protection.inumbo.net>)
 id 1fAf4M-0003rV-RG
 for minios-devel@lists.xenproject.org; Mon, 23 Apr 2018 17:16:03 +0000
X-Inumbo-ID: b05010fc-4719-11e8-9728-bc764e045a96
Received: from mail-wr0-x22c.google.com (unknown [2a00:1450:400c:c0c::22c])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id b05010fc-4719-11e8-9728-bc764e045a96;
 Mon, 23 Apr 2018 19:13:50 +0200 (CEST)
Received: by mail-wr0-x22c.google.com with SMTP id p5-v6so15568340wre.12;
 Mon, 23 Apr 2018 10:14:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:mime-version:subject:message-id:date:cc:to;
 bh=s/D29zXpSbGSlaPt6+fcXU0RE422r052u0FPjz4YNaw=;
 b=fqhB/tIrIEF/CGr1z/c6zQV2ySk7xgHIZ0g42T5e9JEk8S3Sl5poy3z+ubZj+E9J6x
 TE0rzDSZw9vm78CaHbaE1JTQMLPfHsbUsFLwdhqkq6XSIbUNxCORyywKNCGBAZzTc3PR
 HLEV3f4JgVunk33C6XfEaeQVGjyrH47xnAGRw0B9wEahnl6o+Jqf8JDosOV45VEYe5Cd
 sa6SJNs5b5xhr3kwEn073LW5FVOGzAcqaKKZy+k5jYgwReZtgVIRAFbycTtlB1slqwuH
 nzU8Egb6FuXJYxA0xZ+EzDpc/IQl2rm0+yzXWsZ1wLpHPDfY+sVByRYNAWj+WzHuC5FU
 WC6w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:mime-version:subject:message-id:date:cc:to;
 bh=s/D29zXpSbGSlaPt6+fcXU0RE422r052u0FPjz4YNaw=;
 b=lfR8uB71XyaapyIw8Ynlt3JOzVCn3dQIQFAmPi7zw2dtR8CucMPCrF37vRE+EWMfiU
 6+0efkgaDkeHwtK0peXcjtYZ7i9VROkfYr1M+CvMBeBb8Vg/x/AujFtjAuFq0bwS6UWF
 d3DqJm2XqHFGqpS/1Cpauh1kJN0jvQCH81/hZNrnUgz6uo23hzovXOy2YjOPT/dE7DOl
 i59c0KCGN9bzS/GSrW0UmuhDVs+uCaSmxNlL006Kd6/crJdHx3qe+7KSsVpLXRQ/2Y5W
 LFE+MePuC1M5nVABg8pzjmsbJF+B3ROqgnn+ZUE2l/IC2uGmd/YL7rmwniG4NVbA2Fo9
 vi5w==
X-Gm-Message-State: ALQs6tBPnTOwaV9VZ3OPUT3aJSr108wMJcb08a8BHlLZEf6gwQkeuLUk
 jV0mQcnwMuEWpe54SBQHQ+GucG8l
X-Google-Smtp-Source: AIpwx49PFzb7PtESFFhy+10U6tQs9mm+OGyuOGUfMXBYknqZA3BpifxdbpYhSvlFHGROSpaNwEQmUg==
X-Received: by 10.28.132.68 with SMTP id g65mr10982718wmd.114.1524503695889;
 Mon, 23 Apr 2018 10:14:55 -0700 (PDT)
Received: from ?IPv6:2a02:c7f:ac18:da00:c841:ba71:e16e:a009?
 ([2a02:c7f:ac18:da00:c841:ba71:e16e:a009])
 by smtp.gmail.com with ESMTPSA id c14sm9789679wmi.28.2018.04.23.10.14.52
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Mon, 23 Apr 2018 10:14:53 -0700 (PDT)
From: Lars Kurth <lars.kurth.xen@gmail.com>
X-Google-Original-From: Lars Kurth <lars.kurth@xenproject.org>
Content-Type: multipart/mixed;
 boundary="Apple-Mail=_ADCD15AF-0B4E-44CB-AFA2-5AAB778155D6"
Mime-Version: 1.0 (Mac OS X Mail 11.3 \(3445.6.18\))
Message-Id: <FED16B1F-3CA3-4B91-B22B-A9B807FCB762@xenproject.org>
Date: Mon, 23 Apr 2018 18:14:52 +0100
To: xen-devel <xen-devel@lists.xenproject.org>, xapi@lists.xenproject.org,
 win-pv-devel@lists.xenproject.org
X-Mailer: Apple Mail (2.3445.6.18)
X-Mailman-Approved-At: Fri, 27 Apr 2018 08:37:56 +0000
Subject: [Minios-devel] Graduation Review: Windows PV Driver
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org,
 Zibby Keaton <zkeaton@linuxfoundation.org>,
 Paul Durrant <paul.durrant@citrix.com>, Committers <committers@xenproject.org>,
 mirageos-devel@lists.xenproject.org
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>


--Apple-Mail=_ADCD15AF-0B4E-44CB-AFA2-5AAB778155D6
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

Dear Community members,
please find attached (and in markdown, but without graphs) the case to =
graduate the Windows PV Driver project to become a mature project.
The process is two-stage
1: Community Review to  gather final feedback and input from the =
community - we are here. I propose to let this run for a week
2: Voting by Leadership Teams of mature projects (Hypervisor and XAPI) - =
if there is no substantial feedback by next Monday, I will ping the =
relevant people as part of this thread for a vote
Best Regards
Lars


--Apple-Mail=_ADCD15AF-0B4E-44CB-AFA2-5AAB778155D6
Content-Disposition: inline;
	filename="Windows PV Driver - Incubation.pdf"
Content-Type: application/pdf;
	x-unix-mode=0644;
	name="Windows PV Driver - Incubation.pdf"
Content-Transfer-Encoding: base64

JVBERi0xLjUKJb/3ov4KMjQgMCBvYmoKPDwgL0xpbmVhcml6ZWQgMSAvTCA0MzYxMTIgL0ggWyA3
OTYgMTgxIF0gL08gMjggL0UgNDI3NDcgL04gNSAvVCA0MzU2OTkgPj4KZW5kb2JqCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKMjUgMCBvYmoKPDwg
L1R5cGUgL1hSZWYgL0xlbmd0aCA1OCAvRmlsdGVyIC9GbGF0ZURlY29kZSAvRGVjb2RlUGFybXMg
PDwgL0NvbHVtbnMgNCAvUHJlZGljdG9yIDEyID4+IC9XIFsgMSAyIDEgXSAvSW5kZXggWyAyNCAz
MCBdIC9JbmZvIDM1IDAgUiAvUm9vdCAyNiAwIFIgL1NpemUgNTQgL1ByZXYgNDM1NzAwICAgICAg
ICAgICAgICAgIC9JRCBbPDY1OTc5NGE2NGE0OWM3N2M4MWFmYWYwZTUxZjJkYmRkPjw2NTk3OTRh
NjRhNDljNzdjODFhZmFmMGU1MWYyZGJkZD5dID4+CnN0cmVhbQp4nGNiZOBnYGJgOAkkmASBBKMx
iLsVSLCYAAmBOUAiXwckWw0kJKaDWOoMTIxxMiB1DIw0IQBxNwVzCmVuZHN0cmVhbQplbmRvYmoK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgCjI2IDAgb2JqCjw8IC9QYWdlcyAzNiAwIFIgL1R5cGUgL0NhdGFsb2cgPj4KZW5kb2JqCjI3
IDAgb2JqCjw8IC9GaWx0ZXIgL0ZsYXRlRGVjb2RlIC9TIDc4IC9MZW5ndGggMTAyID4+CnN0cmVh
bQp4nGNgYGBiYGCWYWBmYBCawyDEAAVgNjMDC5DJsjBFRbmBgavwlGOD4KUD8v+UXSuSTCKXQSlk
OaBqYQY20c9Amh2IuUEmMaoz8LNI2V4v0GB1egfkPnf9wNAqcIfJgoEBAHg6Gc0KZW5kc3RyZWFt
CmVuZG9iagoyOCAwIG9iago8PCAvQW5ub3RzIFsgPDwgL0EgPDwgL1MgL1VSSSAvVHlwZSAvQWN0
aW9uIC9VUkkgKGh0dHBzOi8vd3d3LnhlbnByb2plY3Qub3JnL2RldmVsb3BlcnMvdGVhbXMvd2lu
ZG93cy1wdi1kcml2ZXJzLmh0bWwpID4+IC9Cb3JkZXIgWyAwIDAgMCBdIC9GIDQgL1JlY3QgWyAz
MzIuNTI4OTYgNjg4LjM3MDI0IDQ2My4xMzg1NSA3MDAuMzgwMzcgXSAvU3VidHlwZSAvTGluayAv
VHlwZSAvQW5ub3QgPj4gPDwgL0EgPDwgL1MgL1VSSSAvVHlwZSAvQWN0aW9uIC9VUkkgKGh0dHBz
Oi8vd3d3LnhlbnByb2plY3Qub3JnL2dvdmVybmFuY2UuaHRtbCkgPj4gL0JvcmRlciBbIDAgMCAw
IF0gL0YgNCAvUmVjdCBbIDcyLjA2MDQ1NSA2NTguMzQ1MDkgMjI1LjkzOTU0IDY3MC4zNTUxNiBd
IC9TdWJ0eXBlIC9MaW5rIC9UeXBlIC9Bbm5vdCA+PiA8PCAvQSA8PCAvUyAvVVJJIC9UeXBlIC9B
Y3Rpb24gL1VSSSAoaHR0cHM6Ly93d3cueGVucHJvamVjdC5vcmcvZ292ZXJuYW5jZS5odG1sKSA+
PiAvQm9yZGVyIFsgMCAwIDAgXSAvRiA0IC9SZWN0IFsgMzY2LjMwNzMxIDE3MS45MzcwMSA1MjAu
MTg2NCAxODMuOTQ3MDggXSAvU3VidHlwZSAvTGluayAvVHlwZSAvQW5ub3QgPj4gXSAvQ29udGVu
dHMgMjkgMCBSIC9NZWRpYUJveCBbIDAgMCA1OTYgODQzIF0gL1BhcmVudCAzNiAwIFIgL1Jlc291
cmNlcyA8PCAvRXh0R1N0YXRlIDw8IC9HMCAzNyAwIFIgPj4gL0ZvbnQgPDwgL0YwIDM4IDAgUiAv
RjEgNDEgMCBSID4+IC9Qcm9jU2V0cyBbIC9QREYgL1RleHQgL0ltYWdlQiAvSW1hZ2VDIC9JbWFn
ZUkgXSA+PiAvVHlwZSAvUGFnZSA+PgplbmRvYmoKMjkgMCBvYmoKPDwgL0ZpbHRlciAvRmxhdGVE
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
OC0wNC9tc2cwMDAwNC5odG1sKSA+PiAvQm9yZGVyIFsgMCAwIDAgXSAvRiA0IC9SZWN0IFsgMjM4
LjcwMDI2IDM1OS41OTQ0OCAyNjEuMjE5MTUgMzcxLjYwNDQ5IF0gL1N1YnR5cGUgL0xpbmsgL1R5
cGUgL0Fubm90ID4+IDw8IC9BIDw8IC9TIC9VUkkgL1R5cGUgL0FjdGlvbiAvVVJJIChodHRwOi8v
eGVuYml0cy54ZW4ub3JnL2dpdHdlYi8/YT1wcm9qZWN0X2xpc3Q7cGY9cHZkcml2ZXJzL3dpbikg
Pj4gL0JvcmRlciBbIDAgMCAwIF0gL0YgNCAvUmVjdCBbIDcyLjA2MDQ1NSAxNDQuMTYzNjk2IDM3
MS41NjE3MSAxNTYuMTczODI4IF0gL1N1YnR5cGUgL0xpbmsgL1R5cGUgL0Fubm90ID4+IF0gL0Nv
bnRlbnRzIDIgMCBSIC9NZWRpYUJveCBbIDAgMCA1OTYgODQzIF0gL1BhcmVudCAzNiAwIFIgL1Jl
c291cmNlcyA8PCAvRXh0R1N0YXRlIDw8IC9HMCAzNyAwIFIgL0cxIDQ0IDAgUiA+PiAvRm9udCA8
PCAvRjAgMzggMCBSIC9GMSA0NSAwIFIgL0YyIDQxIDAgUiA+PiAvUHJvY1NldHMgWyAvUERGIC9U
ZXh0IC9JbWFnZUIgL0ltYWdlQyAvSW1hZ2VJIF0gPj4gL1R5cGUgL1BhZ2UgPj4KZW5kb2JqCjIg
MCBvYmoKPDwgL0ZpbHRlciAvRmxhdGVEZWNvZGUgL0xlbmd0aCA0MDA3ID4+CnN0cmVhbQp4nO1d
247bOBJ976/w8wKj8E4JWAzQ3ZvO8ywa2A/YnQwwwA4w2f8HlrbltmjqWHUoyu70JJ2LI1q8FC91
WHVY1DuVfn7S6a/e2d2///vw58P+iR9CemC6wUftd99+ffjX33Z/pLQuehXMEM3hven/fjp/PeWi
d/uff37ZHT98++3h0xe1++1/KXOtjd3FwR0/pKy/oofq8MSHYw3g17TRw/GhMvH4sOu12XV9H3ap
SnZfj4snqUKphYc3g0o1DO5cqNp///gh+5rZN2T/pf0j29vLR/tv7bMaaxuGWDz7Jf38+RBNqo1W
vd6Nn9LbzqvOxpieaWM6602okHrndsff+wafPp9l//T68OklySvsXr8+6HPPa5Mk8po6Tdn0v9f/
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
NWtCm0sMbWgI18TXWxGm56Qu3OCraavnPAZ4Amk5j3iptuQ60ep+HyvI7ZJ61btvvz583eeTqqV3
dhhOj35JP/8HHRAYxmVuZHN0cmVhbQplbmRvYmoKMyAwIG9iago8PCAvQW5ub3RzIFsgPDwgL0Eg
PDwgL1MgL1VSSSAvVHlwZSAvQWN0aW9uIC9VUkkgKGh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5v
cmcvYXJjaGl2ZXMvaHRtbC93aW4tcHYtZGV2ZWwvKSA+PiAvQm9yZGVyIFsgMCAwIDAgXSAvRiA0
IC9SZWN0IFsgMjM3LjE5ODk5IDU3OC4wMjc3MSAzMTAuMDEwMDcgNTkwLjAzNzcyIF0gL1N1YnR5
cGUgL0xpbmsgL1R5cGUgL0Fubm90ID4+IDw8IC9BIDw8IC9TIC9VUkkgL1R5cGUgL0FjdGlvbiAv
VVJJIChodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL2FyY2hpdmVzL2h0bWwvd2luLXB2LWRl
dmVsLykgPj4gL0JvcmRlciBbIDAgMCAwIF0gL0YgNCAvUmVjdCBbIDE2Ny4zOTA0MjcgNDAyLjM4
MDM3IDI0MC4yMDE1MSA0MTQuMzkwMzggXSAvU3VidHlwZSAvTGluayAvVHlwZSAvQW5ub3QgPj4g
PDwgL0EgPDwgL1MgL1VSSSAvVHlwZSAvQWN0aW9uIC9VUkkgKGh0dHA6Ly94ZW5iaXRzLnhlbi5v
cmcvcHZkcml2ZXJzL3dpbi8pID4+IC9Cb3JkZXIgWyAwIDAgMCBdIC9GIDQgL1JlY3QgWyAzNTQu
Mjk3MjQgMzE4LjMwOTgxIDQ5OS45MTk0IDMzMC4zMTk4MiBdIC9TdWJ0eXBlIC9MaW5rIC9UeXBl
IC9Bbm5vdCA+PiA8PCAvQSA8PCAvUyAvVVJJIC9UeXBlIC9BY3Rpb24gL1VSSSAoaHR0cDovL3hl
bmJpdHMueGVuLm9yZy9wdmRyaXZlcnMvd2luLykgPj4gL0JvcmRlciBbIDAgMCAwIF0gL0YgNCAv
UmVjdCBbIDcyLjA2MDQ1NSAyNTguMjU5MjggMjE2LjkzMTk5IDI3MC4yNjk1MyBdIC9TdWJ0eXBl
IC9MaW5rIC9UeXBlIC9Bbm5vdCA+PiA8PCAvQSA8PCAvUyAvVVJJIC9UeXBlIC9BY3Rpb24gL1VS
SSAoaHR0cHM6Ly94ZW5wcm9qZWN0Lm9yZy9kb3dubG9hZHMvd2luZG93cy1wdi1kcml2ZXJzL3dp
bnB2LWRyaXZlcnMtOC5odG1sKSA+PiAvQm9yZGVyIFsgMCAwIDAgXSAvRiA0IC9SZWN0IFsgMTk4
LjkxNjg3IDEyMy4xNDU5OTYgMjc4LjQ4MzYxIDEzNS4xNTYwMDYgXSAvU3VidHlwZSAvTGluayAv
VHlwZSAvQW5ub3QgPj4gXSAvQ29udGVudHMgNiAwIFIgL01lZGlhQm94IFsgMCAwIDU5NiA4NDMg
XSAvUGFyZW50IDM2IDAgUiAvUmVzb3VyY2VzIDw8IC9FeHRHU3RhdGUgPDwgL0cwIDM3IDAgUiA+
PiAvRm9udCA8PCAvRjAgMzggMCBSIC9GMSA0MSAwIFIgL0YyIDQ4IDAgUiA+PiAvUHJvY1NldHMg
WyAvUERGIC9UZXh0IC9JbWFnZUIgL0ltYWdlQyAvSW1hZ2VJIF0gL1hPYmplY3QgPDwgL1gwIDQg
MCBSIC9YMSA1IDAgUiA+PiA+PiAvVHlwZSAvUGFnZSA+PgplbmRvYmoKNCAwIG9iago8PCAvQml0
c1BlckNvbXBvbmVudCA4IC9Db2xvclNwYWNlIC9EZXZpY2VSR0IgL0NvbG9yVHJhbnNmb3JtIDAg
L0ZpbHRlciAvRENURGVjb2RlIC9IZWlnaHQgMzkwIC9TdWJ0eXBlIC9JbWFnZSAvVHlwZSAvWE9i
amVjdCAvV2lkdGggMTExNiAvTGVuZ3RoIDEyNDExNCA+PgpzdHJlYW0K/9j/4AAQSkZJRgABAQAA
AQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwg
IyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAGGBFwDASIAAhEBAxEB/8QAHAAAAgID
AQEAAAAAAAAAAAAAAAcEBgMFCAIB/8QAXxAAAQIFAwIDBgQEAQgDCwQTAQIDAAQFBhEHEiETMSJB
oQgUMlFSYRVicYEWI0KRFzNWcoKksbPTOHR1GCQmNjdDc4OSk7IlNDVTY3aiw9FFlcHS4ihERlVX
lMTw8f/EABoBAQEBAQEBAQAAAAAAAAAAAAABAgMEBQb/xAA/EQACAQICCAUDAwIEBAcBAAAAAREC
ITFBAxJRYXGRofAigbHB0QQy4QUT8UKyI1JichQVM6IGFkOCkpPCo//aAAwDAQACEQMRAD8A6pgg
ggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggg
gAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAgggg
AggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggA
ggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAg
gggAggggAggggAggggAggggAggggAggggAggggAggggAgPAJgj4r4T+kR4A5QtbW3Vu7p2fl7Wty
h1EyRHV2MrTsBJCclTw74P8AaLZpZrhcFS1DFl6g0Fmm1R1akNLYQtrYsJ3BK0KKshQBwoHByngg
5hK6FXxX7LrVyLty1Ju4zNFAeRLpcJZ2qXgnYlXfce/yi/6bW7fN9a8MX5ctAeocjLLKlh9lTPCW
9iEJSvxLPIyrGOFduBFovq9TWltVWlk7HVLk3LtocW4+0lDYytSlgBI+/wAoFzUu3KmacfaTLBO8
uqWAjb889sRxLaVgu6ja33zRXapM0+lIn5qZnAweXgmZISnB4zlWckHGO0WbVukTlwarWXpPL1KY
ZoMhJy7PJGV7WyVOqA4K9iMDIwDnHcwyp21Ydfgzbxbjq2nVem1MrFNqEnOFHKvd30ubf1wTiKLe
9av6S1DoMjbNIkpq2X+j+ITLuOo1l0he3+Yk8IwfhP79o591u06a0WnLeuqxKlPS6+v0VJed3KCw
ncDkAZSoJVuSeOfkcDea1TQn/aC0snNoT7w3IO4HlumScesaoSqqpjbBcFVOyeqOp5ublpNrqTkw
yw3kDe6sIGT5ZMfZWZYm2Q7KvNvNHsttQUk/uI4e1QuSlXLrxVmtRJyqotymPuyjDEgEqKAg7cDP
CQspJUQCew+RE3Qa4pGga8N06zJ2ovWrUwtpTc8AlasMlYJA43JWkgKwDgn5xmlppN5itOltbDtC
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
CkzNM6yWVFobsFKlcY8Q7cgpHBBOA21eWqF10afvujsW5bFHeE03SvekzLs2+PhUtSRgJH3AOMjB
3ZFs6pW3pPxgLx4r2w3xfqOyXK1S7SnRhwpBV+uOYyQQRlhWQQQQQKERqpJoqNMm5J1akNzLK2VK
RjICkkEjPnzHuZ/p/eMEZqh2ZU4co1en9qSdkWlI2/TX5h+VlN+xyYIKzuWpZzgAd1HyiwxCgiut
tyyE2CIUETWBNgiFBDWBNgiFBDWBNgiFBDWBNgiFBDWBNgiFBDWBNgiFBDWBNgiFBDWBNgiFBDWB
NgiFBDWBNgiFBDWBNgiFBDWBNgiFBDWBNgiFBDWBRbu0pk61d4umj1uq29XlNBl6YkFp2voAAG9K
gc8AD5cDjgRL090yptnVWoVldQqNZr0+kIfqNRcC3Ngx4E4Awngcc9h5ACLfBBOMA74k2CIUENYE
2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIU
ENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE
2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIU
ENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE
2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIUENYE2CIU
ENYFR1J02kr3nKVUfxOpUisUsqMrOyDgStIVjIORyOPLHn5GIdtaUSNOupu5a9WarclcZTtl3qi4
kolh2y22kAJP/wD0YPMXqCCcYB3xJsEQoIawJsEQoIawJsEQoIawM8z/AE/vEObmGpOUemZhWxhl
CnHFYJwkDJOBz2ETJn+n940V2/8AipWv+pPf8NUY0tWrS6lkaoWtUkyiTevWnMs3LrNwB0PJKgGp
V5RSMkeIbcpPB4POMHsRFiqGpNpU+2qdcEzWG/waoOBmXmm2nHEqWQTtVtSSk+E5CsYIIPMUn2W6
LTG9GpF9Mmyp2pLfM4paQrq4cUgBX22pAx+vzMUOzbPbuDTrVq16YjfJytZfVTEpUeHG+UpGfmEJ
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
bBCQvx9vFjvkkjkHEVDUq3py4K9bdpTl+zV4Vp2cQFMS7DbTElL7fG66EE5cA5BJzjOe/O2tfw05
uPKy6fkwm14qsr+r6/g2lKt5NWrOlmntRG2kSdJFdn5VWcPurKjsUPPCs/spX2i5e1W1InTinUlq
UbXUZuoMS9NbbQNyFZ52jyG3w8fUIsWo2mD1w3DR7jtqtuUC4qY30G5kMh5CmvF4SkkDjcr5jBII
7Yx2xpdNpuqWua+7jfuasyYKZIKl0y8vLZ/qDaeCr78foSAQbVTnfL5z8IKab7o6fNxmS6C3LtIU
cqSkAn54EZIIIy7hKFAQQQQKZ5n+n94iTDLcww4w+2lxlxJQtCxkKSRggjzGIIIMYEekUyRo1Pak
aTJsSUk1npsMNhCE5JJwBwMkk/vEyCCACCCCACCCCACCCCACCCCACCCCACCCCACCCCACCCCACCCC
ACCCCACCCCACCCCACCCCACCCCACCCCAPLiEuNqQ4lK0KBSpKhkEHyIins6XWMzOiabtSjJeB3D/v
VO0H7Jxgf2gggrXQ3FyHAwO0EEEAEEEEAEEEEAEEEEAEEEEAEEEEAEEEEAEEEEAEEEEAEEEEAEEE
EAEEEEAEEEEAEEEEAaQWpQBcRr34NIGtH/8AfSyku527c7u+dvGflxG7gggAggggAggggAggggAg
gggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAgg
ggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggAggggDUXJ
bVFuaVRL3BS5SostnchMw0F7D80nuP2jDbVo29bHUNv0aQp6nRhxbDISpY+RV3I+2YIIKwN7BBBA
BBBBABBBBAH/2WVuZHN0cmVhbQplbmRvYmoKNSAwIG9iago8PCAvQml0c1BlckNvbXBvbmVudCA4
IC9Db2xvclNwYWNlIC9EZXZpY2VSR0IgL0NvbG9yVHJhbnNmb3JtIDAgL0ZpbHRlciAvRENURGVj
b2RlIC9IZWlnaHQgNDA4IC9TdWJ0eXBlIC9JbWFnZSAvVHlwZSAvWE9iamVjdCAvV2lkdGggMTU2
NiAvTGVuZ3RoIDQ2NzM1ID4+CnN0cmVhbQr/2P/gABBKRklGAAEBAAABAAEAAP/bAEMABgQFBgUE
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
vqyd5xxMG8qLb1qdinb0rePqX1ZO84wjw55sKeStzhCi08bfJmvU0/eYVYWtjFiyaN0YiomcMG1d
ybWljh9opmi1uyJj8t3DJiIyTP2UoWzoY8WXHrm90rHiTvKxfx/AtLQ/EsNuuCK5rs5WrmnoPRa7
WYMuGa0vEyvabLS2SIiUDvPjiu6+TvKdHA/Ku3fTXuqc68+OK7r5O8p0cD8q7d9Ne6p5Kvfjm4mL
zFefyusFMY1xDd6PFNwp6W41MULHojWNfsTwUU59nxNe5rtRRS3OqdG+djXNV67UVyZoejrwy9qR
feOzd6adRETtsmumHJaC3I5yMThXbVzy3J0FXasf7RH9TvwLO0z+Lbb1ruwqcwwcG0+qpGXJM7z9
p/2c7WaTHlyza3auCyZJonkRrkcnAzbU3L4bitCycP8AySP6mbvuK2ORrMcYsn069kdX+ipxGsV+
nWPSqwNEn6zcvoR9riMYx5UXLrlJPok/Wbl9CPtcRjGPKi5dcpqt4UIy+Sx85+Wth7x/bfWYu+hK
9LsLJK23LJrKiRvy1Vy508ykUw94/tvrMXfQl+lr9bt3Vv7UM8Ga+Gs3xztJp7zTS5LV7d4V5xWn
6JffT8C252Imi9rd7Uo2ZZ+zLMqgtmp+TFPU2fYb/wBbnzRMZLb7Nuhz3vGTpT6SqfwfJxfu2/gW
Fojy17rk1rdkXxWon9/oK8LD0R/Guvoi++aceoy3tFbWmY5y08PyXtqKxMz6/iUSxXylufrD+0+c
L8o7Z6zH3kPrFfKW5+sP7T5wvyjtnrMfeQr/AN/ur/8AyP8A9fKSaW4WSXShWTWVOBVE1Vy+d6FI
HxWn6JffT8Cf6WfGVD1K9pBC9PENRinoUttEclrW6jJTPatZ6lp3tEbopREzySihyz/9pS5dd5Yr
9FzWoqIq0cO1f/aU/wASd5WL+P4Hb4dq8WPHP1bREzO7o58ta9HpT6QsbQr+ju/pi++Vvc/GVX1z
+1SzdDkKwx3bNzXZrF8XP/OVlc/GVX1z+1S1pMlcmoyXpO8Tsym0WxVmP3d3Rty1tvpk/luJPpX8
cUfUfeUjGjblrbfTJ/LcSfSv44o+o+8py+O9+OUfmWjVeVtzQctjEGX9Wbc0Rf8AZafYqZ87Cpy2
MQfJm31Wn7WHFwTMbzClw+dqZZj/AOqqPB8nF+7b+BNsGIn5IYoVGtT/AGd3xURP/Tf0EIJvgzkf
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
HYHdDYJIaiCgfHI5sL0euSLmqqqc+9VX0jGV5or1Z6K32uojqKivmjRrGLm5jc81Vyc2Wzf5+gyY
tnHs18ZR1DrfIykoIIeFfUMf+ckdn8ROdvTn/HmOxeLr8E4ZkuDk13xwtVEX5zlyRM/aqGLHPJG6
dT9qGnjSmlqsB1DIGq56RRvyTnRqtVf4IqkJlp2Km4zV081yxPPJdNZJH0UFU1rGqm1WLGm/LcpN
SscQrhx2F6T4CSmS5K+LiyQZcOj80+Nl4WeWe/ny8xMprdeX3Rs8d84Oj12uWl4qxfBTLNutv27d
vnEkOLDBXYou91etzraGioplpYWUr9RVem9zun/vzGzYbpd58P18TI46u70M7qXw3aqSZKmTl9i+
bPLzmDDlxpbPdsQUVznjpZFq31TFldqo9j9qZZ7/APubOj9XVFPdbgjVbDWV0ksWaZZs3Z9v1CSH
7gp9xSuvVPdaxaqeGWPN2fgtVW5qjU5k2/wJURvDfKTE3XxfyzZht14ZdlqJb5wlFwjncV4qxPBX
PJutv2bNvmIlMI9baW5Ypjrrn8L1tEzhXR0cUD9RjUauxXp87Nd/o9idC13e8XPCMM1BDDJdeEWn
lWVdVrFRclflz7Mly8/sNLB13obJaq+gulRHTVNDPJrseuSvaq5orU58/N5ulDp6OopW4aZNM1WO
qZZJ0aqZZI5dnZn7SZRBgOWrfQXGO4VT6qeCulh4R679XLd0Jv2EmI1gj4l8/wB61HahJSJ7Ux2A
AISAAAAAAAAAAAAAPmVHOiekbtR6oqNdlnkvTlzkHvlpuVqstRdJMSV7q6BOEXNyJA5c/i8Hu27u
jzE3nlZBDJLK5GRxtVznLuRE2qpXrrvQ4puaSXKvpaWy0smcdNLK1r6hyfOcirsb5iYRLpXevuFz
ksFspp30UlfDxipli2OY1Goqo1ebbn/DzmS1rWWPFcdpnrqitoayF0kDql2vIx7d6a3OmSZ/V588
d9raalxRYLu6WN1teySDh2rmxqqmzNU2ZfgvQfTqyG8aQKD4PlZPDb6eR0ssa6zc3pkjc92e7+PQ
ShidUX1MYWlblK2npZ5ZmMpIX5orWsVUc5edV2L5uhDv3qzy3OaN8d0r6JGN1VbTSaqO86mjiHlZ
hj6dR/LOxerhHarVU1s3xIWK7L+8vMntXJCEojaKesjxzxOC73CrpKKLXqeHlVzVe5FRrejnRfYp
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
IDU5NiA4NDMgXSAvUGFyZW50IDM2IDAgUiAvUmVzb3VyY2VzIDw8IC9FeHRHU3RhdGUgPDwgL0cw
IDM3IDAgUiAvRzEgNDQgMCBSID4+IC9Gb250IDw8IC9GMCAzOCAwIFIgL0YxIDQ1IDAgUiAvRjIg
NDEgMCBSID4+IC9Qcm9jU2V0cyBbIC9QREYgL1RleHQgL0ltYWdlQiAvSW1hZ2VDIC9JbWFnZUkg
XSAvWE9iamVjdCA8PCAvWDAgOCAwIFIgL1gxIDkgMCBSIC9YMiAxMCAwIFIgL1gzIDExIDAgUiAv
WDQgMTIgMCBSIC9YNSAxMyAwIFIgPj4gPj4gL1R5cGUgL1BhZ2UgPj4KZW5kb2JqCjggMCBvYmoK
PDwgL0JpdHNQZXJDb21wb25lbnQgOCAvQ29sb3JTcGFjZSAvRGV2aWNlUkdCIC9Db2xvclRyYW5z
Zm9ybSAwIC9GaWx0ZXIgL0RDVERlY29kZSAvSGVpZ2h0IDU0MCAvU3VidHlwZSAvSW1hZ2UgL1R5
cGUgL1hPYmplY3QgL1dpZHRoIDcyOCAvTGVuZ3RoIDIwMDc0ID4+CnN0cmVhbQr/2P/gABBKRklG
AAEBAAABAAEAAP/bAEMABgQFBgUEBgYFBgcHBggKEAoKCQkKFA4PDBAXFBgYFxQWFhodJR8aGyMc
FhYgLCAjJicpKikZHy0wLSgwJSgpKP/bAEMBBwcHCggKEwoKEygaFhooKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKP/AABEIAhwC2AMBIgACEQEDEQH/xAAc
AAEAAgMBAQEAAAAAAAAAAAAABgcDBAUBCAL/xABUEAABAwMBBQQHBAQICQsFAAAAAQIDBAURBgcS
ITFBE1FhgRQiMnGRobEVQlLBI2Jy0RckQ4KSorLwCBYzU2PC0uHxJzQ2NzhEVFV0drMlc3Wk4v/E
ABsBAQACAwEBAAAAAAAAAAAAAAADBAIFBgEH/8QANREBAAIBAgQEAwcDBAMAAAAAAAECAwQRBRIh
MRMyQVEiYXEjgZGhscHRFELwBnLh8RUzUv/aAAwDAQACEQMRAD8A+qQAAA5czkVl1XeVtMiYT76/
kB1nORqZcqInip6ioqZTihxHzST2qV0rt5UkRPoalNVS078xuXHVq8lDzdJgY6aZs8LZGcl6dxkD
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
yXCnFq7bXUefSqOohROr41RPiX4CKdPHpKlfhGOfLaY/N87gv+ego6jPb0lPLn8caO+qGhNpiyze
3badP2G7v0wYTp59JVrcHv8A22hR4LmfouwO/wC44Xwlf+8wu0LY15QSt90qnn9PZHPCM3vH+fcp
8Fwt0NYk508jvfK795mj0ZYWLlKBFX9aV6/mP6exHCM3vH5/wpg/TWue5GsRXOXkiJlVLzgsFogx
2dtpEVOqxIq/FTfigihTEMTI07mtRD2NNPrKWvB7f3X/ACUlR6avFZhYbfPher27ifF2DvUWzy5S
4WqqKeBvciq937vmWmCSNPWO61ThOGvmmZQ+3bP7XT4dVvmq39UVdxvwTj8yTUNvo6Bm7R00MCfq
MRFX3r1NoEtaVr2hex6fFi8lYgABkmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB//Z
ZW5kc3RyZWFtCmVuZG9iago5IDAgb2JqCjw8IC9CaXRzUGVyQ29tcG9uZW50IDggL0NvbG9yU3Bh
Y2UgL0RldmljZVJHQiAvQ29sb3JUcmFuc2Zvcm0gMCAvRmlsdGVyIC9EQ1REZWNvZGUgL0hlaWdo
dCA1MzggL1N1YnR5cGUgL0ltYWdlIC9UeXBlIC9YT2JqZWN0IC9XaWR0aCA3OTYgL0xlbmd0aCAy
OTM5MiA+PgpzdHJlYW0K/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAK
CgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoI
ChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCj/wAARCAIaAxwDASIAAhEBAxEB/8QAHAABAAICAwEAAAAAAAAAAAAAAAYHBAUBAwgC/8QAWBAA
AQMDAgMFBAYFBgoHBQkAAAECAwQFEQYhEjFBBxNRYXEUIoGRFTJCobHBIzNSYtEWJHKCsvAIN0NT
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
RGV2aWNlUkdCIC9Db2xvclRyYW5zZm9ybSAwIC9GaWx0ZXIgL0RDVERlY29kZSAvSGVpZ2h0IDU1
MCAvU3VidHlwZSAvSW1hZ2UgL1R5cGUgL1hPYmplY3QgL1dpZHRoIDc4MiAvTGVuZ3RoIDI1ODM3
ID4+CnN0cmVhbQr/2P/gABBKRklGAAEBAAABAAEAAP/bAEMABgQFBgUEBgYFBgcHBggKEAoKCQkK
FA4PDBAXFBgYFxQWFhodJR8aGyMcFhYgLCAjJicpKikZHy0wLSgwJSgpKP/bAEMBBwcHCggKEwoK
EygaFhooKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKP/A
ABEIAiYDDgMBIgACEQEDEQH/xAAcAAEAAgIDAQAAAAAAAAAAAAAABgcEBQEDCAL/xABREAABAwMC
AgcEBgQJCwIHAQAAAQIDBAURBiESMQcTIkFRYXEUgZGhFTJCUrHBI3Ky0TM2N2J0gpKi8AgXJDRD
U3N1s8LhJuIWGCU4VMTS8f/EABoBAQACAwEAAAAAAAAAAAAAAAADBAIFBgH/xAA1EQEAAgEDAwID
BwIGAwEAAAAAAQIDBBESBSExQVETMmEUInGBkaGx4fAjQkNSwdEVJDNi/9oADAMBAAIRAxEAPwD1
SAAAAAA4e5rGq57kaid6qdDKyGRXNifxOa1XclwBkA1UF3RXIk0eE8WqbRj2vYjmKitXkqAcgAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFXCZXkDqq/wDVZsc+B34AaGvqnVMqrlUj
T6rfzOy0/wAPL/w3fkYJlW2ZkFTmX6jkVq+R6xYptLJOqSOhVeyqZTyU5q3QU70R1G1zF3a5H7Kn
wPmkq4PaY0jpEa5VxlH8s+4DdAA8ZBU1z6ULteNRVdk6OLCl4mo3cFTXVD+rp43ZwuN0ymy75TOF
wipuWHq+plo9J3qpp+LroaKaRnDz4kYqpjzyQf8AycKOCl6J7ZLBG1slVJNLM5ObnJI5qKv9VrU9
wGvl6TdRaTuNPF0kacjobdUv4I7lb5Fliavg5uVXx70XZcIpbkb2yRtfG5HMciOa5q5RUXvQivSz
RU9f0a6khqmscxtDLK3j5I9jVc1fcrUKtv12rYv8l+z1tPUyw1UbII2yRvVHIjZeFEz6ImwF/ArP
RfR1PHV27Uep77dbhqFFSolb1yJTtcrVTgRmMcLeLuxumyImxFdA2GHpLuGp7pq24XKWoprjJSQU
UdW6JlIxMcKo1q7LzTwXhVd1yBewKT6CLZjU2q1mutyuX0TWuo6aaare+NzF4kXLfqq5MJv57efd
qnTWi/pu5P1Tr2vSsmke9lM+7NZ7IjlyiNZuqYztnblsBcwKo/yfrtV1tkv1BU3OS609tuMkFLWS
P43SQ47O/NU2ym/fjkiEO6HNJVeu9Oz1eqb9eJrbT1MkFLRx1LmIq83Pe7m7d2EzywvdsB6IIzpG
v1JWXG/R6jtkFFSQVast0kTsrPDlcOd2l3wjV7ufLYg3RbDX6Y6S9RaPdc6q4WinpY6ul9qfxviz
wpw57vrLsm2yLtlTYdE009fdukKCrqaiRjbzNCzikVVjbvs3PL3AWeCgOlfTdv0xb6Ogsl01NV6k
ukiQ0NOlzeu+Uy9yfdTl7/JVSyKbS81v6L47Hc9R1tLPHEjqi6tqOCRi8fG7D1XZvNu/cBNzTaq1
FQ6Zt8NXcetVk1RFSxsiRFc573YTCKqct1XyRTz9ryn0vpqxfS2idd1k2oaORjkT6TSdalFeiLxI
my45+CoioqKSfp9s0F3sul7xPU1zJqqspaZYWTqkTGvRyq5reSP3+t5IBcWoprhTWG4TWWnjqbnH
A91NDIvZfIidlF3TbPmnqfOmJ7lVafoJ77TR0t0kha6phjXssf3om6/ipDr/AKbg0j0dauktlwus
sslBK9JKqrdK6NWxuwrFXdvPu8iPX7Vty050B6erbfK913rqempYp5O2rXvZlXrnmuEXCr3qgFyg
p/8AzLt+heuTU19/+KOHrPpH2t2Otxyxz4c+fF59x86f1dctRdA+oqy4SOZeLfTVVLNNH2FWRkeU
emOS4VOXeigXECjOj/o4fq/RNvuurr/e6qqqqdPZ2RVSsZTRomGKib5dhEVVXnndFXKrtOiivv8A
DpXWlpdWy3S4WOrqKWhlnVXPerWrwIqrzTiTZF5ZxywBb4PNnR3a9K6xoWt1Dqy+RaxdI5szJ65Y
JY38S9mNHJheXLdU8E5HoSwW36Is1HQLVVNYtPGjFqKmRXySL3ucq94GeAAAAAAAAAAAAAAAAAAA
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
4R9WBd7lU3a4S1lbJxzSL7mp3IngiGGAdLERWNoa+Z3AAevAAAAAABy1rnuRrUVzlXCIiZVVLD0n
0dTVSMqb6r4IV3bTt2e79Zfs+nP0Is2emGvK8s6Um87Qg1tt1Zc6lIKCnknlXuYnLzVeSJ5qWNYO
jJiNbLfKhXO59RAuET1d+74lhW630ltpkgoKeOCJPssTGfNV7181Mo0mo6nkv2x9o/dbpp6x83dh
Wu1UNqh6q30sUDe/gTdfVea+8zQDWzM2neViI28AAPAAAAAAAAAAAAxLjbKK5RdXXU0cze7iTdPR
eae4ywJjfy8msWjaVfXno8avFJaKhWrz6mbdPc5Pz+JA7jb6u21Cw10D4ZPBybL6LyX3F+mPXUVN
X06wVkDJol+y9M49PBSC+CJ8dms1HS8eTvj+7P7PP4J3qbQctOjqizcU0SbrAu72+nj6c/Ugrmq1
ytcio5FwqKm6KVbUms7S0WbT5MFuN4cAAxQgAAAAAZlquFRa66OrpH8MrF9zk70XyMMCJ2e1tNZ3
jyvXT14p73bmVNP2XfVkjVd2O8P/ACbMo/TF7msVybOzLoXdmaP7zf3p3F10lRFV00VRTvR8UjUc
1yd6F7Fk5x9XUaHVxqKd/mjz/wBu0AEq8AAAAAAAAAAAAABB+me1T3XQNaykar5adzajgbzcjV7X
yVV9xOASYck4skZI9JeWjeNniE5a1XORrUVXKuEREyqqek9S9D1hu9Y+qo5J7bK9cuZCiLGq+KNX
l7lx5GZo/ossWnKxla5Za+sjXMb6jHDGvi1qd/muTp561p+HKN9/ZT+z23b7QFsms+jLRQ1SK2eK
BOsav2XL2lT3KuPcRa110Gnela+01ze2niu7IpqaV64a5yJjhz3Kqq74Y70LJNbfbHbb9SJTXakj
qYkXLeLKK1fFHJunuU5a95vabT6rkRtGzTdJN+o7PpS4NnnYlTUwPhgiRUVz3OTGUTwTOVUiN7tr
6HSOgKCujTjbcaZssbk5cWVVqp78Exs+gdNWitZV0VsYlQzdj5Huk4V8URyqiL58zdXS00V1dSLX
wdatLO2oh7Tm8MjeS7KmfRdjF61uvb5NpzStZcqaJks8XC1jX/Vy5yNyuPDOSuukGG8xaEkqr1qq
Kp9rSNWUUNNG1kmXNdhrk7SonPPkW7cKKmuNFLSV0LJ6aVvC+N6ZRUIxT9G+k4GytbaI3JK3gXrJ
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
WS226RTJJT1EyyIxzG5ymfh58zfS2mtd2mwXZIf+z22xadZeNv8AGd4q4xnPLrjAv9pravXWmLjT
w8dHRpUJPJxtTg4mYbsq5XK+CAR6hoJ9caovsl0rqyG122pWkp6Snm7tHOblFc7HPx+PgmDI0vUV
um9V3bT1TV1Ffb4qP0+lfO/ikY1FwrVX35+XTJydbtQ6V1LdKyw26O72y5yd++n9IbC+GXqqK7ZU
XK9F6csb5WlLDdKm+3PUGpoo6eqrIfRYqON/EkMPVFVNlVcJy8+WcIGk0lpyXWdlW/X663H0qsc9
YGU86xsp2o5UThTlzT/C7kg7MrjcJ6S6Wy7Tuqqm1VbqVKh3OViclXxXn9DUWSDV2jqKaz0FlhvF
DG9y0dSlU2JWo5VXD2ruu656e8kPZ/p+rslBWTXWWOS53CodVVCx+y1V/RT3b/MDe3eerprdPLba
RK2raiLHAsiR8a55cS7Jtkq+uuF0rtf6fXWVA6z0cMqrRtiVJWyTLhER0iLhN8dPem+Se6nrr/Qz
Ur7FaYbnAqOSeNZ0ie1duFUVVxjnnZehGKug1Nq+8WpbvaobNa6CobVOa6obNJK5vJEVvJPfjn15
Aa1JL3Udq2olsdNRyVMUUMKVFY53d08fC1VREbuquX7lNzTalvLZ73Y9QU1NHc4KCSrp5qRXd3Mz
GNkXfOfuXljfsvVsvlk1dPftOUcdxgro2x1lG6VIncTUw17XLty9/Ndt8py01Z7xcdUVuoNS0sVG
slL6HT0TZEkVkarlVc5Nv/ldkwBldksUcfZ7aEjwqOY9zlxjdXuz+4wexxOCx3aBqK2KG6TsjTfC
Nw3ZPqa+102sdJW+oslqtENzpWuetFWekNZ3bXKq+u1d1VFXPT3qSvQWn3aa03DQzyNlqnOdNPI3
k57l3xnwTCZ64A31V/qs37C/cQ/sb/7urX75f+a8mM7VfBI1u6q1UT5Eb7NLXWWXRlBQXKHuauJZ
ONnE12MyOVN0VU5KgFc1t9tV61NeV1ZebjSU1LO6mpKSl7xGojVVFeqtRd1x/hMGfpXV9VR6R1Us
NZLcI7WqLQ1M6LxuY9VRvFlEVcKmd/dywbqO3ak0lf7nNY7dHeLTcZnVKwrUNhkhkXnu7p8+Scuu
5WkuuqdL3Si1BQR2p9SishYyVJVamEVHOVFwvrdNtgNNYNCemW2juN2vV5fdJ2sqJJIqpWI3O/Ai
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
YKyRraaaqos/N1ELFcipy2kT2VMKwaRvV8qmRUlDMxir600rFZGxO1VX7k3lJOO0Ty7dXcRqcU08
SLRsunoaqpanQ1O2ZVVIZXxMVfq5yn3qnkdVt+d6Z7s6X2obbGyJFRfZVWqqovivxJVpqzwWGyUt
tplVzIW4V6pve5Vyq+aqpHNU2m70WqqXUunaeOtmSD0Wqo3SJGsjM5RWuXdn8k47y5x1mtIiXFam
9cmW169pmXRqBOr6XtMSRtw6WlnjkVObUa5Uz5qbrpEomV2jbs2SWeNIqeSZOqkVm0rWKqI7tb2o
afTtpvN01i7Umo6SOgSCBaejo2yJI5qLxcrk3c3J58sb5dfKJblZa+ha9GOqaeSFHLwRXNVM/Eza
UF0lQxae0CzUME9bNUNtiy9TNUOdEi7O1ubwTenuydFg0ZNftOQXa6Xy6fLFbGlQyeOdWthzvaiN
TdjemU3d2DP0pR32bT7tMagsyU1E2kfTenMqWO2k4NwxN/BePcYtqk1xYLOllhsdPcHQJ1VNXpVN
YxGfRVzF3rjy4eahvejK71t40ztXRdqtpZ30sr/rq3G/3KieRIq63UdfJTPraWGd9NJ1sKyNRdh3
an7dnYafQOnn6a07HRVErZqt73TVEjc4c93HGe5ETvxkkQEF6Iv9UXn/APbVH904dGyI+/6znf8A
v7rm6Ncoudludn71Nl0dWits9tuUVxh6mSa4TTsTba7LHYwu5V7OHE1VXbr/AKa1XcrnYLdHdbfd
Nl81N16QvilRPaRXbsLlV8+WEyHKxZj6YNSMjbiOSjhkfjONpEaid3BVJ8Q3QlkudPcbtfdQNiiu
dyc1OojdtJDG1MI3KblXh7k7VJkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADU
X7UFBZIs1cuZlTLYWb3u8uSd6mN71xxzWnaHtazadobci2oNa2+2bUVOqVlSm7ZjX1Wr3u/LJAtQ
6tuF4V0aPWmpF3dTGvFP0l5/d3EdKTU8W/twx+afi0fndur3qW53hVbUzqyBf4mP1Wefb5mlAKa+
S2Sea87ym1rFY2iAAGDIAAAAAAAAAAAAASLo+/hfQf0n9m4qUtro+/hfQf0n9m4qUtNL+BHzn6Qm
8O/Ev8o/kABuWoAAAAAAAAAAAAA+tVWqitVUVN6KnInWluky9WdWRVr/AJRo03bEzvXRO5/H35II
DOl7UnestWXBjzV5ckbw9PaX1jZ9SMRKGoRlTjLqaX1ZE8E5+KZJEeQY3uje18bla9q5RzVwqL2l
laO6VK237FLfmvrqVNyTp++sTv8Aree/vUnYtZE9LqDVcGtX2sE7x6ea9AYNmu1DeaJtVbKmOogX
dlq72r2KnFF7lM4mxMT1hR2rNZ2mOoAD14AAAAAAAAAAAAAAAAAAAAAAAAAAD49jXtVr2o5q7lRU
yimrl09bZH7S0+yq8Ua5UT3ZNqAMWit9JRJ+5oGMVfpcV967zKAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHGR7Io3Pkc1jGplznLhETvMO8XWktFG6orZE
Y3g1qb3PXsROZUup9UVl8erFVYKNF9WFq8e9y81+BC1etx6aNp6z6N+HBbL8km1PrxE26ayb14Oq
XJ/VT8V/xK8mlknldLM90kjly5zlyqr3qcAc3qNTk1Ft7ytMeKuONqgAI7YAAAAAAAAAAAAAAAAA
ACRdH38L6D+k/s3FSltdH38L6D+k/s3FSlppfwI+c/SE3h34l/lH8gANy1AAAAAAAAAAAAAAAAAA
BsbFerhYq1tVa6l8EqblRN7Xp2OTgqF56G6RqHUCx0lejKK5LuRqr83Kv6KrwXuXyyeez6bsWe2K
enZD1ehxaqPa6T6vX4KO0D0nT290VBqF76ij9llTxki+19ZPj48C7aaohqqeOemlZLDI1HMexco5
O1FLTFlrljeHKarSZNLba8dPV2AA2ooAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHCaVkEMksrkbGxqu
c5eCIm9VOZptZskk0rc2w5V/Uqu7sTevwye1jeYhhktyUm0eUK21Fry5V1U9tuldSUiLhux7bk7V
Xl4IYtn1vebfUNdNUOq4M+tHMucp3O4opFwXMYaRHLs4ydbnm/Pzzu9FWuuhudvgrKVcwzN2kzxT
tRe9F3Ee1zqG5WlkVJY7XLW3Coje9sipiGFrU3uc7hnuynHwRePRcyRmk4lkzsulerM/Vzj70Ukd
3/1VW/yD/wCqpUZK8tprDsNPknLiree8w1HR/dKm9aPt1wr3tfUzNcr3NajUXD3Jw8EItQXLVmr3
3CvsFxprXbIJHQ0rHwNkWpVvNyqi7KL2p4YXGTcdFSK7o2taN3OWOVE8esedHQu5q6Bo2J7ccsrX
png7bVfuVDBubXQWoZdQ2Z8tZC2C4U0zqaqibwSRvHHcufvOOsNX0OmpbfDPJC6oqZ42OjdJsrHE
qqjpV7kwpqOi1VfW6ula7ML7vLsqnDjv+9D50qU0ElTpV8kMT3uu8EbnOYiqrcr6q93cBL6O9Wys
oJa6lr6aWjiVUknbImwzCZXK8E3Khh23VlhudYlLQXWlmqF9mNH4V3hnj5EW6UqWD0fTtqYxtPb6
26RsqGRJsI9OxcY/ZE7D70rWK102iJqulpYKSpoFjfTSwsRjmLttTCKnj78KBYZDrnS6zuF1qm0V
wobRbonYge2JJ5Jkwm9yO3J2cvPisotkr57bSTSqiySRMe7CY3qiKpo9aaoZYYIqekiWsvNX6lJS
M3q5frO7Gp8feqBiaDv1yr/le335kPyhapUjkmh3MkRUVUdjyXs4puQ0WlanW+o7JBdKe822CKdz
9mN9LlURrlb2dxI9Eaals9oqluU6y3a4vWasmbjc5eTe5Mr5qvI0v+jyptdqVlk1ReaeWBFdDG+b
5hF3rhWIiJhV+/goE9oGVEdDTsrZGS1TY2pLIxMNc/G9UTkmTvI10dXqov8ApChr67ZWpdtMkc1M
I5WuVNrCduMklAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABqL7qK3WR8DK+bZklciI1qZVE
z7SpyRP/AKyazWurobDCsFPsy3F6eqzlGna78ima2rnrqqSpq5XSzyLlz3LvUh6jVRj9mvdU6/ic
aeeTH1t9Eo1q24JenuuUvXNem1BI32HRrw2ez9uPEj5IdNXGC60LbBd3o1FX9xVK8Yn/AFV/RX9u
WNPcKKe31ktLVMVk0a4VPxTuOd1eKYt4kdYn6+jo+Ga/HrMMWr0mO8MYAERZAAAAAAAAAAAAAAAA
AAAAACRdH38L6D+k/s3FSltdH38L6D+k/s3FSlppfwI+c/SE3h34l/lH8gANy1AAAAAAAAAAAAAA
AAAAAAAAluhdb12lqhI99RbXuzJTqvD9Ji8l+C/EiQMq2mk71a8uKmWs0vG8PWNju9FfLdHW22ZJ
YH+9q82uTkpnnlvSepq/TFxSpoX5jdhJYHL6krexe/sXkejNLaiodS2xtZb38N0kTvaid2Kn48y1
waiMsbT3cnr+H20s80da+v3bgAEhXAAAAAAAAAAAAAAAAAAAAAAAAAAAByI5qo5EVF3Ki8wAKy1F
0dTLVPmsskfVPXPUSLhWdyLzTxMWz9HFdLUNddZY4KdF9Zsbtp7u5OSeJa4JMarJEbbq2eFaab8+
35eTqpaeKkpoqenYkcMbUa1qckQVcPpFLNDtbPWMczOM4ymDtBGWMRt0hqNI2X/N7TtHa+v9I9HR
ydbsbG1lyu4ZXHHtI3VaHuFNX3CXTWoZrTS17lfPT9QkqI9eLmKqps57t/fwxOwHrUaVsFJpqzRW
+h2nMaqvfI/2pHrxcv7cEQx9aabbqW2RU6VT6Opp5m1EE7G7Ww9ucbt2ePb2G/AESqdJVF305Lbd
S3Z9wqFmSaGrjgbA6FURMYRNy89/6SmufoW53N1NDqbU09zttO5HpTNp2w9YqcNtyKqr57+9CfAA
iIiIiJhEK7qOj+6/5zV17otUvp6qpc5EVaJJFjYq5RiKr+CIiJuROBYgAjNmsN6po62O66lnr2zw
rFGraZsLoXL9NFRV3mon0fqWqpVoq3Wk8lC9NmRrKJjJHN5pt5zvTx8yegDBsdrpbLaqa3UDFZTQ
N2Woq5Veaqveqqq+ZnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIjrrV0djhWlo1a+5PTcnF
Ik7V7+xP2Xt1zqmOwUfVU6tfcZU+bbx2E+sv4dpStRNJUTvmne6SV6q5znLlVXtIWq1PJ7FO6n4l
xHwf/Fi976f5J5pKiZ8073SSvXac9y5VVOABVOZmd+shN7dOzVtsbQ1L0S+UrP3PK5d9QxPoKvNy
f49pCDnBLJBMyWF7mSscjmuauFRU4Kh7ExtNbdYlL0Otvo8sZKfn8WdLG+KR0cjVY9qq1zXJhUVO
RwJXVJHqy2OuNI1G3imanpcDU/fWp/GNT70/wzFCtz4Zw227xPaX0nS6qmqxxlxz0kABpSQAAAAA
APoHwEhs+kLtc9l7YPR4V/jJ/V9ycV9xMbZ0e0EOHV88tU76rfUb+fxJmHQZ83WK7R8Wi+ox07yq
5rVc5GtRVVeCIbWj05eKzHUW+owvBXt2E97sFzW+2UVvZs0VLDD2qxu9fFeKmYWWPg0f9lv0Rra2
f7YVVR9Ht0lwtTNT07eabSud7k3fE3FP0b0zcekXCZ/2I0b9+SegmU4Zp6/27/Notqsk+aJwaBss
fttqJvtyY+5EMpmi7A3/AGDK98r/AP5EiBvjSYI7Uj9Guc2Sf7pamh07aaCqZU0lGyKdmdl6OcuM
pheK9iqaX/RrpP8A7p//AKZv/mTAGyMOOI2isfo9rny061tMfnKGydGelHJ6ttcz7NRJ+LjWVfRF
YJcrBPXwL2Nka5Pi3PxLFB5OHHP9sNtddqK9rz+qoavoZbvWjvKp2Nlp8/FHfgRy49FOo6XK07aW
sanDqpdlfc7B6BBrtpMc+WyTTi+pr3nf5x9tnlS66eu9pRXXG21VOxPpujXY/wCbh8TVHsBURUVF
TKLxI3edD6eu+06ptsLJV/jIPm3Z7fV4+eTRfRf/ADKfi45HbLX9HmMFv3zodVGufZLjleUNU3j/
AD2/kVxfdN3exPVt0oZoW5wkmNpi+Dk3EW+G9Peha4Nbgz9KW6+nm04ANSUAAAAAAAAAAAAABttN
X6u07c2Vtuk2XJuexfZkbza5DUg9iZid4Y2rF4mto3iXqbSeo6LU1rbWUTsOT1ZYXL60Tuxe7sXm
bo8r6X1BW6cusdbQP3pukjVfVkbzav7bj0ppu+UeobTFX0D8sfucxfajdzaveWunzxljae7kuIaC
dLbmr7s/t8G0ABJVoAAAAAAAAAAAAAAAAAAAAAAAAAY1zrI7fbqmsm3shjV6onPCcDyZ2jeXkzFY
3l3TzRQR7c8jImfWe5Gp71ONNVU9U1XU08UzU4rG9HJ8Dz9fLxWXqtfU1squVVXZZn1WJ2Ihj2+u
qbfVMqKKZ8MzODmr8F7U7iBOvjm7dFFPG68+0U9n93o4Gq0tdkvdjp63ZRsjkVsjU4I5Ny/n5mt1
Fo+DUN0ZPdK6tfQMjRqUDJNiNXZX1lxvXl7uPIn1tFo3heUvF6xavaUnBW+j6ZLB0j3GwWyrnltL
aJKhaeR6vSnkVyeqirw3Lnvymc4NFZKDT94uWoKjUN6dS1HypPHFG64JF82ipjCKvaqp5HrJcoIT
quZujOjip+RppFdGiMgkkk23Isj/AGsrxxtKqeBHb1oVlg0s6922tq2aio2elS1azKvXLxeiou7H
HxxvyBbAMGxV3ypZKCv2dhamBkyt7Fc1Fx8SCy6zujOkCtoo7Pc56OnpcJSxsbtOdt/v2/6KouE3
+XYFkAi+odY09omoqNlFV1l2q2I+Ohgaivana7kibl7eC8t407rGC63aW01lDV2u6sb1iU9S1E6x
va1U4/tjOFwEoAXOFxxKmmp9QwdImmKrUNex0lXLO1lHTqvVQsazdjtVdrmmdyb+wLZAK51NTu1Z
0hR6dqaiVlno6RKqohifs9c9XJhrlTlvb8e3IFjAriyUq6O6QYLJRTSustzp3ywwSP2khlblV2VX
fjCL4538DX6b07TdIHypfNQzVEzJKiSCiiZKrW08aYwrcbs/Ddlc5AtcFU0OprlZdC6ngqal1RX2
aoWkhqH4VzmucjWOXOcqmVXf2IcbhoRlr0i6+UtdWM1LTQ+myVnXK5ZHIm05qou5UxlO/nngBbAN
bpm4uu2nrdcHtRr6mBkjkTgjlTf8cmyAAAAAAAAAAAAAAAAAAAAAAAAAGk1bqCHT9sdO/D6h+Wwx
Z9p3avcnP/E2N0r6e2UE1ZVv2IYm5XtXsRO9ShtRXiovlzkrKlcZ3RszuY3kiEXU5/CrtHeVbxHW
xpqctfen/d2HX1k9fWS1VXIsk8q7TnKdABTzO/WXJzMzO8gADwAAGXabjU2qvirKN+xNGuUzwVOa
L3KSi+0dPc6BL9Z2bML1xVU6b1gk5r9lf27EhhttNXqayV/WsaktPImxPA72ZGc08exf8T2YrevJ
ft9FtwnidtDk6+7Pf7scG91JaYqZIbhbHLLaar1on/UXmxe9N/u7jRFVkx2xWmtn0XHkrkrF6zvE
gAMGYcmNc9yNY1XOVcIiJlVU32nNK196c2RreopOcz03L9lOf3FoWLTtvssaeiwo6fG+Z+96+fLw
Qn6Xh+TP7U9I9UfLqa4+neUAsOhK6u2ZbgvocC79lUzIvly8/cWBZ9OWu04WlpmrKn8bJ6z/AHrw
8sG3BfafQ4cHuxvPrKuyZ75O89AAExpAAAAAAAAAAAAAAAAAAAOMjGSMcyRrXscmFa5MoqHIAQbU
fRlYrs176WJbdVLwfTp6me9nD3YKi1VoW9adV8k8HpFGn+0wZc1E/STi3z3d56WCoioqKmUUj5NN
S/bpKy03FM2DpM80fH7vH4PQOsejO2Xlr6i2Iy31+9csb809f0mpw8U9ylJ6gsFy0/WLT3SmdE5f
YfxY9O1ruCldlwWx9+zotLr8Wpj2Z2n0aoAGlNAAAAAAAAAAAJJoXVVTpa7tnj2pKOTDaiHPtt7U
/STl7uZGwZVtNZ3hhkx1yVml43iXri3VtPcqGCsopWy08zUex6c0/PuMgoDoo1kthuCW64Sf9F1L
vacu6F6/S8F5+/tzf/HgXGHLGWu7jdbpLaXJyz28pAAbUMAAAAAAAAAAAAAAAAAAAAADV6popLhp
6vpYUzLJEuwnaqb0T4G0B5aOaJiWN6xes1nzeanIrXK1yKiouFReR8Ls1Doe2XiodU/OUtS5cudF
jD17VReZjWbo9tdBUNmqXyVj2rlGyIiMz3onHzKqdFk5tvJzE8Hz8/LG23qzOjehlodK06TtVr5n
Om2V4oi8PgiL5nRrbVi2mSG1WhjKm/1e6GFVTZjT67+xE3r5dhLiN3vQ+nb3cH110t3X1T0RHP66
RuURMJua5E4FpSvJWKx5OlxY4xUikeTr0NYaew0kqy1jK271jutq6naRVkd2Jz2UyvxXdwT7NpzS
NZR1FU+32mSnl2nyVDUbjvXbTh4oqHKzaF05ZbjHXWy3dTVRoqMf18jsZRUXc5ypwVTDn6NNJzVD
5n2r1nuVzkbPIiKq9yO3eRk2K8hglqOiXUMdC+Wagorkr6Nzt+YWuaqqndhVX3k/1xqC3ydGlZXM
qY3xV1KscOHb3uemMInam/KcsL2EtpaGlpKJtHTU8UVI1qsSFrERuF4pgjlJ0e6XpLk2ugtUaTsf
1jUWR7mNd2o1Vx4btwG00fSyUWlLPTTNVksVJE17V4o7ZTKe8jVJIxnTRXte5Gufam7KLu2sPTgT
w0Oo9I2PUc8U13oWzzRN2WvR7mO2eOFVqplPHtXtAjdNLDR9NNelarY31dvYlI56+1hUy1O9Vau7
uUammgqulbStPSKklXSsnfUbC5WNis9VHdnPd3p2knu2lLJdrdS0NwoGTU9K1GQZc5HRtRETCORd
rknPfjefdO6Xs2netW0UTIHy+3IrnPeqdm05VXHdwA3RBtaf9oGiP5Sp/qNJyYNbaaKtuFDXVMG3
VUSuWnftOTYVyYXci4XcnPIHO53KitdOk9yqoaWFXIxHyvRqK5eWV57lIVHMy2dMlQlTIkcd0t7O
pc7cjntVE2UXtw1f2VDday09PqKqskavhS30tUlTUteq7T9lPVaiYwucqi5VDY6h0/a9Q0rILvSM
qGMXaYqqrXNXucmFQCJXOaO59MVngpXJIttpJZKhWqi7CuRWoi9/rN96H3ogqoqSw3C01ErI6m2V
crJWPciK1uc7XhnO/uJVp3Tdp05DJHZ6NlOkq5e7aVzndmXKqrjuMK/aI09fa70y5W9slSqIjpGS
OjV2OGdlUz4gVpNTOvGjukC50TVfBUV6SROTg9kb0crk3cMLknepdQ2+bowq7ilRGsVXROijw5Mu
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
J8c1HNVrkRWqmFReSoeWjeJhnjvyXi3pLkAFuas2S1DqySo07ND0D13vRpnbqs7mryVPHHmYVg2R
3KaqY69zw01Ki5c2J2/I7uThhPHj4FROmyb7bOwjiWmmnPzfh5ptsWjlZoaFZUXdfPI6PP2c4+KK
fm2/N7Zru2X6UttjdEqqv0UVqKmPEm9FSwUNHDS0kbYoIWoxjG8kRCPar0q68V9Hc7bXyWy8UiKy
OpYxHo5i/Vc1eacV9q8y1x15axVyWfJ4uW2T1lqNQu39r2l2Ru9eOmne9E6mq1yJ70JFrmGKbR16
SaNkiNo5nt3mouFRi4VO8wdL6Tktd2qrxd7lJdLvOzoundGkbY2cPVa1FwnL/txzI6+kir6GopKh
FWGeN0T0RcLuuTC/EzaUHtbI7dsjbX0MMUNa20q5JmMRH53M5ynHnxPfQmmLLLoGgiloaadtZTtk
ne9iK5znJlfW58FXCdmDI0rpO4WWJ1DWXz5QsiRPhZRSUrW4Ry9b8qq8MpjlxNdHoO70NLNbrNqu
ppLPIq4p3U7XvjavNGyZRU6+WAPfY1M9+kpYHTdPFSVksEL+1iYVPipOjW6cstJp+z09tt7XJBCi
8XrlzlVcq5V7VU2QEF2Rf8nvP/7ao/0n52aruX7WcL/w7bm565Vc7rs7vwU3+kdP/vdo6yD0n0j0
irkqt7o9zd3serzXOMczWXvSFVLf5L1p68SWiunYkdR8ykzJUTgi7q8EXh/245DBsSrJth1G5jss
ZRwseifaVGqnuyT4jujtLx6chqnyVUtbcayTpKmqkTCyLxwiJ1ImV7ea+UiAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAqoiKqrhE5qpBtUbQKSg36e0o2rqU4LJn5ti+P1vLh3mGTJXH
G9pac2ox4K82SdkvuVwpLZTLPX1EcESdbl59yJzVe5Ct9R7R5Zd6Cxx9Czl6RImXL4N5J558iD3S
5Vl1qlqK+d80q8lcvBqdiJyRPAwysy6y1+lOkOd1XF8mT2cXsx+v+HpU1E1VO+aplfLK9cue92VX
zPMAhqmZ36yAAPAAAAAAAAAAAAABJdm/8dLd+c/RuKwLP2b/AMdLd+c/RuKwN3/XHzn9n0j7D/Ay
/OPoAAwdwAAAAAAAAAAAAABsrHfLlYqr0i11ckD/AKyIuWv7nNXgvma0HsTMTvDy1YtHLaN4XlpL
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
tOjDiZJ3o8rppaoLVDEy85fMFxFVgpjEBrMly8Q8J7qcvnF2WCoLubfjkrAVXdzeY1X5AM2fRquK
NXN6Dkfqe9Im6PVTVfDZFnhptMImVfTLr6AqGhIegKn8K/T8Q7j93u3l7eIYJTf5ld34Xk3aP0wx
4P2GsB+AHNDvGSFh7EI9t91yXM77wSgnfBZmMccYOdp2z6Z33LO23LNt11FisaMgfatNi8B4iQ3Z
iPRNV0JYPUaTyIKDTaSGMd/kSk87YLWIaR5so8rH73qY91rzVe7U+sIBVImVcp2xC/t4j63qdT54
3T60Hrfq/wBkSFQ6ZW5kc3RyZWFtCmVuZG9iagoxNSAwIG9iago8PCAvQ29udGVudHMgMTYgMCBS
IC9NZWRpYUJveCBbIDAgMCA1OTYgODQzIF0gL1BhcmVudCAzNiAwIFIgL1Jlc291cmNlcyA8PCAv
RXh0R1N0YXRlIDw8IC9HMCAzNyAwIFIgL0cxIDQ0IDAgUiA+PiAvRm9udCA8PCAvRjAgMzggMCBS
IC9GMSA0OCAwIFIgL0YyIDQxIDAgUiAvRjMgNTEgMCBSID4+IC9Qcm9jU2V0cyBbIC9QREYgL1Rl
eHQgL0ltYWdlQiAvSW1hZ2VDIC9JbWFnZUkgXSA+PiAvVHlwZSAvUGFnZSA+PgplbmRvYmoKMTYg
MCBvYmoKPDwgL0ZpbHRlciAvRmxhdGVEZWNvZGUgL0xlbmd0aCAyNTM1ID4+CnN0cmVhbQp4nOVd
24ocNxB9n6/o54Bl3S8QArNrr58TFvIBSWwIOBDn/yGa7Z4dqaXTXdXdO+SSBWO3ViVVSarLqZKi
Bpl/3qn8R7Rm+OXr6c/T5YtLPn/QIrng9PDtt9PP3w1/5DYRnPQ6Bf3Sr/zXO2OCElFHf6GihsvP
T5+G8S/fvpzef5LDl78ycWuTHkKyg1LaXEh/Rh/lyxfnlVv8NetiHD9KHcaP2vjBJquGkEePN3ry
MqXxL3lKD8+n909yUFZ4l/J/cXj+fFI3iVgv9fD89ZRlIYfnX4fvpZTmh+H599PHZ3JnJaXIQnId
EkJ7M9z+yFObfSnmGIX3zQg2zKan4wttpYW1xgXz2uDSS0MSRkdVTMZOHaQwwQX1spJTDwVbwkuL
EyoaI028Nfj+IPIJdJhE0TZoB/iwIykrlLVRq2JSGk3XniEjfr6YC1LWCq7jlp0V7GzpzCjVmI+c
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
NTqTrzdmikHjemPGcNrURv6mNvI3tVmXqc26bG3a29q0t7XRi61FL0NhPsyAKpgAlTAOsQovIAyF
SRo9AI8u0xBmGa1U6Il3NUjzayWWV2stVCyZgv2zkOqllVf+Pxwpu5UzFYZgzRTtV4n1NrVY1g+x
Pl8HKMB3DmQaVK5W2h17TEFchn0mIg+ztF5lOF4tQg3Mwet4jYdpWFcFU1s5qcF5VWxVacykt69G
CanYg/fnI06D9tosvKZSm2mcMVYllug9p2oj8hVMQu6naiNWY80srfUkbS4u9VnGDLXaCsdpfWdp
9dO0UTjmPE3XeKg21jJDG5tzNE7jqlabjdfw9uM1rPM/W5tN1WZoy1W1Nv4srJ+m3c/Vxp5kzF5l
tJ2ujaXP3VI+RRt7liGRcXinS+bX7WbhmFWaVKoR62OPM0pma5LmurpqJdM1vdRoEp2i9eeccuuY
avRqmWGc1n+OMWu1sVJep0vzqhQmYEs+ml56Va7VhnSnGyup1trP1u6uarVWs9gpGnf/2iZadk5t
61p43VRtvKtj1OA8kw1uKw35j9NsWjXsvkVm47W5J2qlev+5WFNt6JC3mYK6121kOl4nYt0cQ9r6
CFf3cqWmK906VE2G44z1V2tam6K1maHtM90ap2k99ZW0te7qVstSsX6eoZmpGjfcNnW91Ro7eUor
H1O1u6vWO+tX/qb2V+sbZ8wxVhthtibp8dfYZhXMxPIWyXLbHte6wgmabauaDczTZFur2d0sTRsT
W7XOedf3O99L7Vt3U61hZVf9kV47VdNIJSzQ+utc83HHabVXLU2ffbwmrRnaLpnfuoqWuXn/uVp9
pSaJGmMOvod0Kc7S+rdw3DL6DM2Gpmo+tIW3rN/41a7XaK2H5jnHa/5yllbG5dy1VVstPpf7zC54
VSENR+RtarR9oe+ndjDs37S/Oldm61xtZxqAu+Fqm5e13VFjeIupmsVNbrWM/9tIoWtzouE/qwyv
eNW76aPeiFFEhVKtP/9dIj7fALwOwrknaPbeImdu0bWajiYZo2XBQGw3FFfWG6EnrojTg7CU9++N
1xu08mIsGYJXvnP47xQV43uAVjoU7GDRYKhm67X/YieoreU6x7q+ZxgWcXUH/VY+eqScjjKo0Wxq
kta6ZT0t8aLFCsdqtfOx/ezWOce1el5ddrO1vlc9ZpWxp7hfu+rlde9SbXj0WsPjTNRGqWr12Fy2
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
taTZW1tV7ZUflWfVeeUpTY1NbVglj29qaW5qqWrzNTXKzfXVw+Wiqraqf8OUwTqTZzbVt7OaVnlS
I8pl5eVlpuMje7hcWF8vz/DNr2trlWd4W70ti7w145sa27wNrJOWJXJrFQphva9WrvG2+uY3psmF
Lb6qerkauap82NjQ1OKV69obqhp9rW1ydV1VS1V1Gwq0tvmqW+W2uqpGGduWyE21sg9HaW7x1nir
va2tTS2tclVjjVyF/bdX18k+tStfo9zW3uiVF/va6lDci7VNNUya0fVVOAbKV6EyA3Vti72NbT4v
clcj0d6yZLjMTdK0yNtShdNra/FWtTVgExOobscptrLBWptqUU2uQm17fT2SXFccvqEJB/E11rS3
tvGptrYtqfcOtQRzTisbxdvS4GvkHC1NC7DbKtS/uh0HauSa1fiq5jex9sV1Ppxhnbe+GS3SJM/3
LfJyBu7lKrkezSE3eNF2jb5qZK9qbvaiGRurvTiIYm4fM5bsvQQn0+CtXyLj3FrRyfWsjwZfPTdv
mxo3rep41Sgxzyu3t3prFGt6F7YzZdurmf3l2iacMvaIk2pr8zXOZ1Nv8aLf21rTmJta0WQ8jrDY
UDW/6lJfI3btbatOU4yG4jW+1ub6qiVsCCbd6F3c2lzVjKohSw2q2OZrZR0z9uaWpoYm3tvwgVgd
o0xtXFN9zZg5KMRCNnv46Gw5aYqvuqWJOSiZs6QzlimzOL1entWC3m+oalnA5vxnsY+zmY9h6MWI
41GFrLNnyqVVbXKCPGuKPK22djhXzVvf6l1ch2zDp06bNalk0vjCWZOmTZWnlcjnThpfPHVmsVw4
YUZx8ZTiqbNMBpNhVh06Y8DWzDGsY5wezruN+2FQH1x7TfNbqprrlvBxWPgzS81bIi9pameS1SxG
Ubv2xhoefxgVGFI8sjEqfBjPyF41v8XrZfE7XC5HsboqDJ6meWzxoWTbKcowky1mQehFd3uZf1q8
1W0YHbVo/ZN6Mcc3zfdyFh4Yg3LoUIz5ee1t2DWq2YTrcMiEElsHlMLwHzTFoDCLUXlRVX171TyM
y6pWjKuh0sPl2Y080pcMzALnpDoHF0WV3NrsrfbV+qp/O3MZrdjIY5TJVtXU+JiPMXZaeOpKY9Ut
3LY8J5ymVL2vwccmhINwvsVNLQtaldDmUcwrmxZjzLTPq/e11rFxsC/F3A0Y3qg/uqp5iayEvGqh
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
QR9zG1kGXeQycop8yzRMyyKYjv6T/ov+RH+mZ5kT/Y2JRTEji2ahLIbFsjgWz1xMZiEshblZAnqj
RJbEUlkmy2LZbAgbytJYOstgNpbDctkwlsfy0bdrQb3vxpLig56n8fy2XNJodXqD0RQSarZYbWHh
9ohIhzMqOiY2Lt4luxM8iUnJg1IGp6alZ2RmZQ8ZmpM7LC+/oHD4iKILRhZ7R40eU1I69sJx4y+a
cPHESZOnTJ02fcbMslnls+fMnVdxyfxKHyyoqvbXLKytW7S4vqGxqXlJS2tb+9JlyztWXHrZ5Suv
WHXlVVdfc+11q9dcv/aGdTfedPP6W2697Q+3b9h4x5133X3Pvfdt2nz/Aw9ueWjrw488+tjj7Ikn
tz3VuX3Hzl27n97TtXffM88+9/z+Ay+8+NLBl1859Oprr7/x5uG33n4H3n3vj+9/8OGfPvr4z0eO
fnLs+O9Rzu9Rzu9Rzu9RTl/171HO71HO71HO/3+iHK/XWzzygqIRwwsL8ofl5gwdkp2VmZGeljo4
ZVByUqInwS274uNiY6KjnI7ICHt4mM1qMYeGmIwGvU6rkRglkF7qGVspdyZXdkrJnnHjMvi7x4cV
vn4VlZ0yVo0dSNMpVwoyeSClFylrzqP0KpTeXkpilYugKCNdLvXInYdLPHIXmTO1HPEbSzyz5c5T
Ap8ocClZvITii9uNPeRSZ22J3Ekq5dLOsUtr15ZWluB4203GMZ4xfmNGOmw3mhA1Idbp8DRvJ46R
RCDUUTp8OwV9KK6qM9pTUtoZ5SnhS+hkSaW+6s4pU8tLS2Lc7tkZ6Z1kTJVnQSd4Rnda0gQJjBHT
dGrHdOrENHId3w7cIG9PP7B2XZcVFlSmhVR7qn3zyjuZbzafw5aG85Z0OlacdPa94uBhY8pX92+N
YWtLnXUyf127drXcuXlqef9WN3/Ono1jYF+aNLZy7Viceh3nojMLF8KXz7eibMrvKeU1lYvkToNn
tKd27aJKPJDotZ0wrcO9Izrauzd4AqJL5bUzyj3uzuIYz2xfSex2O6yd1rEzyitHDWzJSN9utSnc
3G62qEhIaH/E39smMEHOsQnTetlJ+Io841EMOuUqGVdS7sGNFPCHvwDWVhUgGf7MJtirsxqPoa7T
MKZyrXU4r+f9OzVJGByt/QFNa6Xn1DcDa3xqjTbJ+gNwlAtHr4Bhew/emZbWmZrK5UI3Bg8S1zhS
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
MHP6KDlDTinIzR8s5w8pyMjOzc42GGZOwMrsIUNyc/GZn5Mv5+cNKxxWGGqsbWtrHp6VtWzZssyG
noOvamrorxN+uaTFt4zzAlUQF4UjTWtagBo6Ca1ZE5r+dK6kLXVVdT55uk/oRiv6soKhvzF2Vm1b
Q31WQ1ujr8Gf1dA638ftRCav/C87LPPXY63/P3fhb1kqHwX1gMuRMSLMbhWBr29Ay2LRsgJO/UaL
0qd//YR+9U0ifG7v3842s2fYE2wn28u2/8YFjZIe9G8rIVOxbDtvzU395vn13fCk/NfW1iHC9/Nn
/4sa7gwYTYqWxkheaZRUIA39lbF+hTMku3cniwf0mAJNxCeSlMbzVtwokps6+Epg/VtKcawVIqz3
AcD/AcycS9ZlbmRzdHJlYW0KZW5kb2JqCjIyIDAgb2JqCjw8IC9GaWx0ZXIgL0ZsYXRlRGVjb2Rl
IC9MZW5ndGggMjk0ID4+CnN0cmVhbQp4nF2RzWrDMAzH734KHbtDyVfTdhACJVshh32wbA+Q2Epn
WBzjuIe8/Rwp7WAG2/ws/SVZiqr6qTbaQ/TuRtmgh14b5XAar04idHjRRiQpKC39SnTKobUiCuJm
njwOtelHURQA0UewTt7NsDmpscMHEb05hU6bC2y+qiZwc7X2Bwc0HmJRlqCwD5FeWvvaDggRyba1
Cnbt523Q/Hl8zhYhJU64GjkqnGwr0bXmgqKIwyqhOIdVCjTqn/3Iqq6X360j7yx4x3Eal0Rnpooo
SZiemfZEWUaUHol2OdOJ6cBUMT0SZSkT17Nmzm513MvO1vAHunLOstvdaLn2CT3mOT9ylkO6xuVI
y5eX0dz7Ka/OhVbS/KiHS/e0wfuI7WgX1bJ/AZzvl+dlbmRzdHJlYW0KZW5kb2JqCjIzIDAgb2Jq
Cjw8IC9UeXBlIC9YUmVmIC9MZW5ndGggMTAxIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlIC9EZWNvZGVQ
YXJtcyA8PCAvQ29sdW1ucyA1IC9QcmVkaWN0b3IgMTIgPj4gL1cgWyAxIDMgMSBdIC9TaXplIDI0
IC9JRCBbPDY1OTc5NGE2NGE0OWM3N2M4MWFmYWYwZTUxZjJkYmRkPjw2NTk3OTRhNjRhNDljNzdj
ODFhZmFmMGU1MWYyZGJkZD5dID4+CnN0cmVhbQp4nGNiAAEmRoZlvxmYGBiY14JIgfcgkvUTkGR6
1gckGbd7gUR4XUAkowOIDFABiRd3gdhpK0BknBBIJH4RmD0BRPI7gdX/BZFcBiBZvxCwSBqIdBcH
kUyZINI1DiyexwAAO4MQ0QplbmRzdHJlYW0KZW5kb2JqCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKc3RhcnR4cmVmCjIxNgol
JUVPRgo=
--Apple-Mail=_ADCD15AF-0B4E-44CB-AFA2-5AAB778155D6
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8



# Windows PV Driver - Case for Graduation

This document makes the case for graduation for the =E2=80=8BWindows PV =
Driver project=E2=80=8B (which
became an incubation project in June 2014). The criteria follow those =
outlined in
xenproject.org/governance.html

#### Graduation Review

The review is initiated by the project lead and follows the rules =
outlined in "Requesting
Reviews, Reviews and Voting". In essence the project lead makes a pitch =
to the
community, why the project should graduate. A project must fulfil the =
following
requirements before it can graduate:
* It follows the principles of openness, transparency and meritocracy
* It has delivered at least one functioning release of what it is aiming =
to deliver
* It has a public code line which shows active development and has =
mechanisms to
accept patches (and a history of accepting patches)
* It has a public mailing list that is active (as we get more experience =
we will add
some guidelines)
* It has a mechanism for users to raise bugs and for developers to work =
on bugs
* It has an active developer community (as we get more experience we =
will add
some guidelines). But things to look for are number of maintainers, =
different
organisations involved, number of users, etc.
* It has a project leadership team that resolves conflicts and =
participates in
cross-project decision making
* It adheres to the Xen Project governance as outlined in this document, =
or
documents areas where the sub-project differs
Other items to look at during the review (depending on project are):
* It has an up-to-date wiki and a core and group of people maintaining =
it
* It publishes regular builds and tests
* It promotes itself at events and on the blog
According to our governance, mature subprojects, must also document =
their development
process. Projects can deviate from the default as outlined in =
=E2=80=8Bxenproject.org/governance.html=E2=80=8B,
but needs to document deviations.
The following section highlights, how the Graduation Review is =
initiated:


#### Requesting Reviews, Reviews and Voting

**Requesting Reviews:** =E2=80=8B Project Proposal and Graduation =
Reviews are requested by the
(prospective) project lead of the project by contacting the community =
manager providing
the necessary documentation. An archivation review can be requested by =
any maintainer
of a mature project or by the Xen Project community manager. The =
community manager
will then publish relevant material on the respective mailing lists.
This document is the outcome of the engagement between Paul Durrant =
(project lead) and
Lars Kurth (community manager).

### Development Process and Deviations from the default

Roles are in line with the default: the project has maintainers as =
described in the
MAINTAINERS file of each git repository.
The Project Leadership Team is made up of maintainers and committers =
with Paul Durrant
the project lead and Ben Chalmers and Owen Smith being committers. The =
team follows the
conventions - in particular those related to decision making - laid out =
in the governance
document.
There is no security team, which is not a requirement.
The project follows a mailing list base review process, with DCO and a =
review-then-commit
pattern: an example can be found =E2=80=8Bhere=E2=80=8B.
In summary: the project completely follows, and has been doing so since =
inception, the
conventions of the Hypervisor project, which are the default.

### Openness, Transparency, Meritocracy

Development of drivers is done in the open. That is, patch series are =
sent to the mailing list
for consideration before being applied to the code base. Subscription to =
the list is open to
anyone and comments from all subscribers are considered. Project =
decisions and personnel
decisions (such as nomination new maintainers) are made on the public =
mailing list.

### Codeline, Mailing Lists, Bugs

There are several git repositories which are accessible from
xenbits.xenproject.org/gitweb/?a=3Dproject_list;pf=3Dpvdrivers/win


Technical discussions happen on =E2=80=8Bwin-pv-devel@=E2=80=8B : below =
can a list of major participants can
be found. Traffic on the list is stable, which given the maturity of the =
project, is expected.
Bugs are raised on =E2=80=8Bwin-pv-devel@=E2=80=8B (or sometimes on =
xen-devel@ or xen-users@), and then
addressed using the Hypervisor workflow.

### Build, Tests & Releases

Development builds of the Win PV Drivers are built by a Jenkins server =
when =E2=80=8B _new patches_

#### are pushed into the repo =E2=80=8B and build output can be found at =
=E2=80=8Bxenbits.xen.org/pvdrivers/win/

Development builds are not subject to automated test through OSSTEST. =
However Citrix
runs regular and very comprehensive automated testing on the latest
xenbits.xen.org/pvdrivers/win/=E2=80=8B stable branches (plus a small =
additional series of branding
related patches). Citrix also logo certifies the drivers distributed =
with XenServer and is
therefore motivated to make sure the source is maintained to a high =
standard such that logo
testing can be performed at short notice.
Amazon also have experienced Windows driver developers and do extensive =
automated and
manual tests on their own builds of the driver code. They have provided =
useful feedback as
well as some patches to fix issues that they have discovered in testing.
The project has delivered =E2=80=8Bseveral releases=E2=80=8B:
8.1.0: Released 2016-07-
8.2.0: Released 2017-02-
8.2.1: Released 2018-04-


Releases follow the same approach as in the Hypervisor project, with =
stable branches in git
repositories, release candidates and final releases. Releases follow =
approximately an annual
cadence.

### User and Developer Communities

**User community** =E2=80=8B engagement on the mailing list has steadily =
increased since the creation
of the project, as the graphs below show

(^)
2014 2015 2016 2017
In 2014 and 2015, traffic came from a few major vendors (who most likely =
adopted the
drivers in their products which likely correlates to a spike of =
questions from specific vendors).
=46rom 2016 most questions have been driven by community members which =
we could not
map to specific organizations. Interestingly, engagement with =
individuals (rather than
organisations) has increased in parallel with the project delivering =
signed drivers.
This indicates increasing adoption: unfortunately, we do not have usage =
confirmation by any
organizations besides AWS, Citrix and Invisible Things Labs (Qubes OS) =
are using our
drivers.
**Developer community** =E2=80=8B engagement has grown from 0% to 4% by =
vendors outside of Citrix,
primarily submitting bug fixes. This is not surprising given the =
maturity and stability of these
drivers, which does not create a high need to make contributions to =
upstream. The biggest
contributions have come from ITL and AWS, as the diagram below shows.
(^)
ITL: change of around 6 K SLOK AWS: change of around 1 K SLOK


### Events, Blogs

The team presents about new developments and blogs whenever there are =
major new
developments: on average 1-2 per year.

## Summary/Recommendation

Assessment by Lars Kurth, Community Manager:

_Given the maturity of the drivers and thus limited need to fix issues =
or develop new features,
I would recommend to graduate the project. The project has shown =
increased user
engagement, adoption and delivered several releases which is consistent =
with a =E2=80=8B mature
project =E2=80=8B. I have no objections on grounds of process adherence, =
values and developer
community diversity and =E2=80=8B propose to the project leadership =
teams of other mature
projects to agree to graduate the Windows PV Driver subproject=E2=80=8B._

_Recommendations: =E2=80=8B Given that =E2=80=8B Windows PV Drivers =E2=80=
=8B development today depends on 3rd
party testing, I would like to recommend a public discussion whether =
some testing of
Windows PV Drivers =E2=80=8B in OSSTEST is feasible and desirable._




--Apple-Mail=_ADCD15AF-0B4E-44CB-AFA2-5AAB778155D6
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--Apple-Mail=_ADCD15AF-0B4E-44CB-AFA2-5AAB778155D6--


From minios-devel-bounces@lists.xenproject.org Fri Apr 27 09:40:13 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 27 Apr 2018 09:40:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fBzrQ-0006yO-64; Fri, 27 Apr 2018 09:40:12 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=6dd0=hq=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fBzrO-0006yH-9W
 for minios-devel@lists.xenproject.org; Fri, 27 Apr 2018 09:40:10 +0000
X-Inumbo-ID: ccd99d0e-49fe-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::615])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id ccd99d0e-49fe-11e8-9728-bc764e045a96;
 Fri, 27 Apr 2018 11:38:54 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=ZnZ44Z+zhifofvOuZmbjRNf1vrIT3Pjnkdn3oE1RmEY=;
 b=GccHRTWysUOp0QAW1UOrudo7bSIZLN0bk+MyymfsKd9m8RXcp05DOAfXhbS4YWTOuLdi0T5Ot9aslj5Uw3rJgCctAp8jDEcB5WGuYWmB9SnrRC/nmJmRlqCZ9R98laODFH2y/CnWehPztPJ8ASRHmtQAr0k4yY4qjzs9siMJL6c=
Received: from AM4PR08CA0001.eurprd08.prod.outlook.com (2603:10a6:200:1a::11)
 by HE1PR0801MB1594.eurprd08.prod.outlook.com (2603:10a6:3:14::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.15; Fri, 27
 Apr 2018 09:40:00 +0000
Received: from DB5EUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::201) by AM4PR08CA0001.outlook.office365.com
 (2603:10a6:200:1a::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend
 Transport; Fri, 27 Apr 2018 09:39:59 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT061.mail.protection.outlook.com (10.152.21.234) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Fri, 27 Apr 2018 09:39:59 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Fri, 27 Apr 2018
 10:39:56 +0100
Date: Fri, 27 Apr 2018 09:39:53 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180427093952.GA4222@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-22-git-send-email-shijie.huang@arm.com>
 <1ba37809-7bef-7b51-bbb3-4e021a86e4a7@arm.com>
 <eace896c-9bd3-9fc0-1e80-b268de6cea1a@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <eace896c-9bd3-9fc0-1e80-b268de6cea1a@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(376002)(396003)(346002)(39860400002)(2980300002)(438002)(189003)(199004)(8936002)(53546011)(86362001)(6862004)(93886005)(1076002)(6666003)(6636002)(7696005)(76176011)(229853002)(305945005)(2906002)(97756001)(46406003)(5660300001)(47776003)(486006)(8666007)(72206003)(316002)(426003)(356003)(476003)(55016002)(23726003)(77096007)(16586007)(446003)(11346002)(336012)(39060400002)(54906003)(6246003)(186003)(106002)(33656002)(26005)(26826003)(246002)(8676002)(50466002)(104016004)(58126008)(4326008)(106466001)(126002)(478600001)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0801MB1594; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT061;
 1:VIvcfJgAuZk3QFZLEhKIsvD5mM6qTUYSV8C+BEQ+TaDlVR+SlNimdbjj7unkMV3CardLNMAo6/LPmZPa1zb2SSJbDO7pHhQvPYWbtzuVIScf+3UWyLahwjOlVb/hN4DX
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0801MB1594; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1594;
 3:XrYLVm0DMFgDJb96F489Dk51M26VbfsUw1/6d4UNMxv6BpLM0zGSxIh2xPOt8eJSjUpFMH9omA6ktAs6/jgXLiX69VOxF5zpNa/LJqlfNT/n5+q9p42b306uMhoa1XKYbvIa8v7wt/3BjapGUe/y9y+OYj2Oc4ApvhgE8s7m8eGWSnVeiaXLdjmP9srIyLfc4SucGQ7DpGFqR+/V9seNrhUVdfmdAQenLQ9DbesgSX7kWztodYTn5yVVNVcjoo6almbp4RzyxOSVSw8JMkIuGs2QifaTVSV/31/kWkXlUpiPKYaS4w9dmAtr8s8VKdHwym77/x4cL55MqCNI5PxD/sVF3Z88egkUJ+uEev1tL0w=;
 25:WkR4Avp1ZEKNlMURuVgSYFF7exrpO1bTq76wmthWERPuQpR+DnzCUykT+D/vTKvzw9ADZNXd3xLcPLS0/hae82tYpqakwOlArmwFyAfxveqikuMTFGGKBhz9LlvDsRcsFGUvY6n9/DCGoCJavjyEUcl0q+oHbfkmlI3in5T0CwMjFiZrSvtqn2tbzzYl6YKGmwec4U5PEQqkOGp3E4kZmEbzdg0oAmQNXZitPNmDUnrxFnxZIdrl/9K7tzxXTsDAFeFrJ2FgMO7uqM9aMXhj2MYuUCMnePzHjPkX3ZeXXjATOi70d9TO7LdTosGY3oVCAQ5LjocZIAoYBZ0gYC35BA==
X-MS-TrafficTypeDiagnostic: HE1PR0801MB1594:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1594;
 31:BvdfV4GnENNwNhTw3H9nrA6uTgA/74At6vHIuAie8MtLjZ79NHrPE61+C+j4JGxDZF+7skZYcD6hq9eaHiJZLURa5cNojVPsycUfXYIs5J9kBplzbUBQYIzaurB2fB3ZMAR7ZLSHWoT5TnLHy1y2Zw89xbQ/jKqkPuxKPEpuvOlCK7w1mC+wyp9xED7ZM/OFU9xeXZHtr+6TxwEtQixeJuW6M8YDiHVzX02sa9elchE=;
 20:dxFoSgl2Gf24fTOgTLG03jbnbewak8mCs5A6xHxo+nWrQGF0EwQrdvrCIt4xSBGrOwr6g3BRpROfjECvkLCj+BmJBgEpv0o+J7SGeUJ59EHX1n4ldprb2DsHlnDpkD5ZHsz+wXp/8esMyqkBu6DYQGGJeX4TqBY6JCdHjjoLVYNr2kLv/fRo7s7pyQRt055brB2m/ubEIAIbh8veb655C5fQjteurdSXTjeNDFjx/qgD5PB++xxfSw5KtBva//R2TKlB8cyJtLyEBJTbNoB90AodCcXzqnfRTGPJVtNCP1pE/Ab5R+H84GjWw8ukyBcLxsxWdoqKmk0zKUsAReUi/Ox0UTGtaGt8ocDXWaEBlf4=;
 4:wwnjouskGDNHdNl46H73zzyiD1WcsQbxM3tcRHmr78G2JPH49SKUlEVdCsufAMdcGIiwqLsAJwmssmWyXIJyt/JeDOtSrse3LbmC6Th5ENFzE/JZ/STPrTCP9Ymq3jbHJGcKa2TjnOIDtJW4u6ZKGEiRElUdaP8sNGIZyKcPC4XmnmlKJCMxMcY7opv3l2doG0idnm8pVnQ4GV6LlcynE/GvHbVwuIDS2vJt4HYZrEBDJTjha0F7aJREZvcbQ0xvZ3ZBNDS/QzI1T6sRo/JlIA==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0801MB1594EC53FF298DE08747097F848D0@HE1PR0801MB1594.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93004095)(3231232)(944501410)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123564045)(20161123558120)(6072148)(201708071742011);
 SRVR:HE1PR0801MB1594; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0801MB1594; 
X-Forefront-PRVS: 0655F9F006
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0801MB1594;
 23:tem3YxiEdGhxjBoWmqGDKUdR2awF7vXm8LCGkL5?=
 =?us-ascii?Q?Ej33C5K6vWK9YbrD9hy3kJbznzpnPexsD9kCpr3kVkQzeKc97r4FeW5RbPVU?=
 =?us-ascii?Q?Hc3ff4veYS0rSEAkQs8XyzMYf/nBJ6LRYKgO/lOAphAccZUj13TRXWsmIKnP?=
 =?us-ascii?Q?Qot7RueZosBSFdTPU+I4erg/W2nP0FqaFHMpi+21YSLQPUuojdhixsiIMlyX?=
 =?us-ascii?Q?VHfNMO4p2TOC1thojO/4fBGmWj1rSl243TD7LDeBiUrNg2x6V6DKZpnt0p5K?=
 =?us-ascii?Q?Z6sa6/DWh2Uf9IzutvY4PNKkwCikWxCPiRDE4anCb4hXBI57+n8aDZyCCPke?=
 =?us-ascii?Q?RvKGP5Qn2WoK/o5k6qqTwNBfvRql+D19gGgLPTAkOLPyY11h8MwdSS6Ar7IM?=
 =?us-ascii?Q?MmxXLF/1YWauGSQNQUONgfYIgICvglUGlgagryLGOg79GUGsmxTTldvzy5TA?=
 =?us-ascii?Q?Iqj75DV01x9NDdc/r243vYCQW7hYlMI8hv8KfCMu5n7SRaQ8szMcwo8NbtQR?=
 =?us-ascii?Q?actYhLhFuOcLdKqY0Q9+AoK9TTmaT8sZQcR3yC5tHs8mtEICo237VliUpJHo?=
 =?us-ascii?Q?5oxeO1Ej53EV9R3rHeP2JI4LWeAvOj/K77fKR/TDPvq8PMfFzfqaKv4zU8p9?=
 =?us-ascii?Q?U7vXjYDxR1gimqnBH2K+K25YCm2ycC1u3hEUDZAD68gQlw/xPk0Q8A0GWkpF?=
 =?us-ascii?Q?8+t2AZ5fmN9FnKo0hqcEDwP7D3U6C57yjf3cNpZJgpwImJyQFr677ez61Jqa?=
 =?us-ascii?Q?ofLcNqTg499AoXRejUUQtLhYOySbogzoDT7MFCxXtWRpMV5z9Mab9LepN33A?=
 =?us-ascii?Q?Wmhr2wWWx5w2FRy1A2sIohaEsMdgmUW8ILFQ5YC8j+DIJF9iT4r16lyB2w9J?=
 =?us-ascii?Q?rRFdr+FjbpKJDenYd6N2ZOQpGx6ZGrwix8Ct/Cl8dXyEP4dAU4WFpeNY7O9K?=
 =?us-ascii?Q?5/lT/7URgaO0lnu1FgUqFEJlQXHy0mr9n/mYqdtD9Mvd2n7+95CxjBvCAnZ5?=
 =?us-ascii?Q?2zQ/mYiO2p4QAQ964lKD4cfTXtYMV/kJDXgW87nKTSU7Q/79RRXXT6EXcPda?=
 =?us-ascii?Q?tlCh0Fk6ogxg5QEjkpErUF/wGyNQKL/tVkqYZXG97rp34R6sznREEEOXg++Z?=
 =?us-ascii?Q?WwB4LQkzrYXfVa+Hyv02wa9ZZN2j+FKQ3gV155oR8kRH7exNtbCtTKMDNnPr?=
 =?us-ascii?Q?wwgNiRZRoi6Sfbn2MtAprC8E3dWI4WwvKfZz0tEf+S8dihp2Gy9WX+9PDUCn?=
 =?us-ascii?Q?y4YUxZotZ/Prxg1IWgx8efg4uInE7TvfhdwIi7/kp9BCw/1vDok9igJWIf9h?=
 =?us-ascii?Q?3Hg=3D=3D?=
X-Microsoft-Antispam-Message-Info: LUc8C/fUyInGTB9N/NiqFFtPdQ+85C2nmJHGQJDR0Oc3mgqL10fElPzDiya5B5bH1V2zYqedbqcg72WJXl9aBxNiI+Snlj+b1ENcsjn64lT30iXc3002E6/O5+NBk+yNKmlfkzfssk43BkTvrIWPPZ0/YNhavy/iXGKDZTby4qRgIAA+X743Pp3Tj4hu+Mqhe9qODHuPc+noC471QfcVSaSyETK2IEOFKThaJzIjTSA/DyZFZJ0b7CJIpaN3gv7g/LA22FnnhRS+63urbe3HV46kwDeNNiZ8WqURDSC+Y0lTd6M60/+m+srXR6ReeXr0beMPX3p1qD3IEk0+msZXQ1jL1fJDOTLgmfJj5Vs00x9oKgyol/Rj5AH9lb+/AKtrbH66Pqh0f6QBmGVbV7gOaNOLrn3TQJ7lqGINl1vrHE8=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1594;
 6:Tw5RQ93YxInxYjvV7fqzr56IncxI+4oxvJq7x63Qf2c4GE05KRX7df45i+8YrDh6ez2Xm9m0nRI4q5QypeAT8vSDc3WoXXLf9zMmIEsY1gp4XH5ic5QEesdAxNZxXbleWlA61q87Rw64G8AjoSxxamSoZtT+kTrUrJJqnkwK3rVYtXHFpm5SUHmmAndxaPR17lHHcwYaeQWcwZ2V8wtil+nfDHqm8jMkcOlR3L1QaA/WF2N0xz7ZvDTnJkw22LGqmF2atgNf8Pedoxyb90gAdcmfd3asCzQ2/MvuM8/A7rw1fhV4Z3YcggkxCmDyuDfySoQ8EQLtBYqc5UcMq5sziTh4AVxBKrBOdYs7Rgr0DzK8LHvoEV3+IscOyQW2aejc1J1Im/hqhrvuWpOGDWUckyAPDpIXDSgOqrfeTABPu31BjCTpGTyzP7hwr/ba3en2V/dj7hlXmQW0/9GXhsPup9xtjLl5Yki2PZQBKBH5ZmM4Pa5ZbYJf/JyOBWDc7QoZ;
 5:ku0mT/lWtXpBLKh4N/33AOdrHYwse4aZDD1U/JK87Q6msjyPGbC9DDARKiRbMpS/Uq6IEMDS/OqHHQ3F4FzZQdGq7mYHb6HPFokKZW99CtDK2ZRkQGoRmCw/w9aHumT2f1bCZXJAStEUUu0vujsnTXC4FMuV/Xee9bMA8X+h+Yk=;
 24:eBhiqJwLMkaIn7t9PhD1fbneZOkNenH5EmvBBlUdXjU4MK7IQFHlNbHyUpkW4WHjUHZGIzi9mo1UblCjytThTKDABbKEE2dqLDWnaB7EtvY=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1594;
 7:Dq8tlmJSRC2QkZbCOvQ7xvqi41sCAbKC6czrIwgzX22SasM5UP4eWNe6gjSelfUV8gQ/LohMe6F6l44wJMzFIxDRdHyU6Tg+rwSY+6BtUROnHS8vJTbw/sxz9Q8rrrn/is9RSw49JHwY/qE4PcFYVWnVAgQxWTeG69kU5TkcF2v54OAEfhMLxeNSA7WSqVXatiZi5med0D7Zh55YsnQNbxh5aauc2MU0kn7lV33OaVcaO7Vld0qIWr3Wiuc76m/A
X-MS-Office365-Filtering-Correlation-Id: 11df7a88-4a6c-4cd7-fb54-08d5ac22d819
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2018 09:39:59.4896 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 11df7a88-4a6c-4cd7-fb54-08d5ac22d819
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1594
Subject: Re: [Minios-devel] [PATCH v3 21/43] arm64: define the
 CALLEE_SAVED_REGISTERS
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMjUsIDIwMTggYXQgMTA6MjM6NDNQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDI1LzA0LzIwMTggMTg6MzMsIEp1bGllbiBHcmFsbCB3cm90ZToKPiA+
SGksCj4gCj4gSGksCj4gCj4gPgo+ID5PbiAxNi8wNC8xOCAwNzozMiwgSHVhbmcgU2hpamllIHdy
b3RlOgo+ID4+SW4gdGhlIGFybTY0LCB0aGUgY2FsbGVlLXNhdmVkIHJlZ2lzdGVycyBhcmUgeDE5
IH4geDI5Lgo+ID4KPiA+cy9JbiB0aGUvT24vLgo+ID4KPiA+SSB0aGluayBpdCB3b3VsZCBiZSBn
b29kIHRvIG1lbnRpb24gd2hlcmUgdGhhdCBjb252ZW50aW9uIGNvbWVzIGZyb20gYXMKPiA+dGhp
cyBpcyBub3QgdmVyeSBvYnZpb3VzIGZvciBub24tYXJtIGV4cGVydCA6KS4gVGhpcyBjb252ZW50
aW9uIGlzIGZyb20KPiA+QUFQQ1M2NCBbMV0uCm9rYXksIEkgd2lsbCBhZGQgdGhpcyBpbiB0aGUg
bmV4dCB2ZXJzaW9uLgo+IAo+IEFsc28sIHlvdSB3YW50IHRvIGV4cGxhaW4gd2h5IHgxOS14Mjku
IEF0IGZpcnN0IHRoaXMgaXMgbm90IG9idmlvdXMgYmVjYXVzZQo+IHRoZSB0YWJsZSBjYWxsIHgy
OSAiZnAiIGFuZCB4MTkteDI4ICJjYWxsZWUtc2F2ZWQgcmVnaXN0ZXJzIi4gSXQgdG9vayBtZSBh
Cj4gYml0IHRvIGZpbmQgaW4gdGhlIHNwZWMgdGhlIGxpbmUgc2F5aW5nICJBIHN1YnJvdXRpbmUg
aW52b2NhdGlvbiBtdXN0Cj4gcHJlc2VydmUgdGhlIGNvbnRlbnRzIG9mIHRoZSByZWdpc3RlcnMg
cjE5LXIyOSBhbmQgU1AuIgoKb2theSwgSSBhZGQgbW9yZSBpbmZvcm1hdGlvbiBmb3IgeDE5IH4g
eDI4PwoKVGhhbmtzCkh1YW5nIFNoaWppZQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxA
bGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFu
L2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Fri Apr 27 15:39:23 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 27 Apr 2018 15:39:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fC5Sy-0008Sc-Vi; Fri, 27 Apr 2018 15:39:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=sage=hq=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1fC5Sy-0008SX-FB
 for minios-devel@lists.xen.org; Fri, 27 Apr 2018 15:39:20 +0000
X-Inumbo-ID: 7ca38583-4a31-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 7ca38583-4a31-11e8-8249-2fda3a446a53;
 Fri, 27 Apr 2018 15:41:44 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3AI17nJRKll9fYTIVAttmcpTZWNBhigK39O0sv0rFi?=
 =?us-ascii?q?tYgeKv7xwZ3uMQTl6Ol3ixeRBMOHs6kC07KempujcFRI2YyGvnEGfc4EfD4+ou?=
 =?us-ascii?q?JSoTYdBtWYA1bwNv/gYn9yNs1DUFh44yPzahANS47xaFLIv3K98yMZFAnhOgpp?=
 =?us-ascii?q?POT1HZPZg9iq2+yo9JDffwtFiCChbb9uMR67sRjfus4KjIV4N60/0AHJonxGe+?=
 =?us-ascii?q?RXwWNnO1eelAvi68mz4ZBu7T1et+ou+MBcX6r6eb84TaFDAzQ9L281/szrugLd?=
 =?us-ascii?q?QgaJ+3ART38ZkhtMAwjC8RH6QpL8uTb0u+ZhxCWXO9D9QLYpUjqg8qhrUgflhi?=
 =?us-ascii?q?cZOTAk/m/Zict+gblHrB69vRFz35TZbJ2JOPd4Y6jTfckaRW1EXstJSSFBBZi8?=
 =?us-ascii?q?b5cOD+oHIO1WqZT9p0MTrRCjAgSjGOTvyiRUhn/32602yeAhERze3Aw9BN8BrG?=
 =?us-ascii?q?/UoM/tNKcPSu+51rPIzTLaYv5QxDzz65DIfwg8rfyDQL58a8ncxEk1Gw/bkFmd?=
 =?us-ascii?q?q5bpMj2N2ugQvGWX8vBsWOGvhmI9tQ18rDaiyt0xhoTGmI4YzE3P+z9jz4YvP9?=
 =?us-ascii?q?K4TVZ2YdujEJRNqS6XL5B2QsY+Q2FwvyY616EGtYa7fCcUzJQnwAbSa+KCc4eS?=
 =?us-ascii?q?4xLjUPydLitjhH5/YLK/mg29/VK6yu37TsW00VBKoTRZktTUq3wA2AHf5tKER/?=
 =?us-ascii?q?Z95EutxyiD2gLJ5uxKOUw0kLDUK58lwr4+jJoTtkHDEzfql0Xxl6+WakQk+u6y?=
 =?us-ascii?q?5+Tjf7XmvoKcOpRohQHlKKgugtG/Dv8iPggUWGiX4f6826H7/U3lXLVKieU7kq?=
 =?us-ascii?q?zYsJDcJMQbobW5DxZI3Yk99RawETOm3c8cnXkGN1JFZAmHg5LmOl7QJvD0F/C/?=
 =?us-ascii?q?g06jkD1z3fDJIqXhAonRLnjEiLrhZrd960tbyAo119xf5I9UBa8HIPPyREDxrs?=
 =?us-ascii?q?fVDhknPAOox+boEs5y2pkAVmKSUeelN/bXsFmJ4flqL+SSaYs9vDfmN+Nj9/Po?=
 =?us-ascii?q?y3gjlgwzZ66siLAQc2y5GLxCPl2EKS7nhcwdEGFMuhcmUcThkxuaTDQVfXHkDP?=
 =?us-ascii?q?F03S0yFI/zVdSLfYuqmrHUhCo=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2B/BAC1Q+Na/wPjVY1bHQEBBQELAYUeK?=
 =?us-ascii?q?IttXo8ggxePfYF4NgGEQIJxNBgBAgEBAQEBAQIBayiCNSKDUU+BAoUTqmSEWIN?=
 =?us-ascii?q?ygkWJaD+JWYUIAoxtiyAIgWSMaIxSASuRMgIcOIFSMxqDNoFrAY5lbHoBAZA/A?=
 =?us-ascii?q?QE?=
X-IPAS-Result: =?us-ascii?q?A2B/BAC1Q+Na/wPjVY1bHQEBBQELAYUeKIttXo8ggxePfYF?=
 =?us-ascii?q?4NgGEQIJxNBgBAgEBAQEBAQIBayiCNSKDUU+BAoUTqmSEWINygkWJaD+JWYUIA?=
 =?us-ascii?q?oxtiyAIgWSMaIxSASuRMgIcOIFSMxqDNoFrAY5lbHoBAZA/AQE?=
X-IronPort-AV: E=Sophos;i="5.49,335,1520892000"; 
   d="scan'208";a="2549322"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 27 Apr 2018 18:38:54 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id D25981A60151;
 Fri, 27 Apr 2018 18:38:53 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id h46ajjim_pNp; Fri, 27 Apr 2018 18:38:53 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id B808E1A60155;
 Fri, 27 Apr 2018 18:38:53 +0300 (EEST)
Received: from wolfprec.precis.pub.ro (unknown [141.85.233.142])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id AA0F71A60151;
 Fri, 27 Apr 2018 18:38:53 +0300 (EEST)
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: minios-devel@lists.xen.org
Date: Fri, 27 Apr 2018 18:38:39 +0300
Message-Id: <1524843519-26242-1-git-send-email-costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.1.4
Subject: [Minios-devel] [UNIKRAFT PATCH] plat/kvm: Fix __packed macro usage
 in multiboot.h
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: simon.kuenzer@neclab.eu
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

V2hlbiB1c2luZyBub2xpYmMsIG11bHRpYm9vdF9tbWFwX2VudHJ5IHN0cnVjdHVyZSBsYXlvdXQg
d2FzIHBhZGRlZCAKaW5zdGVhZCBvZiBwYWNrZWQgYmVjYXVzZSB0aGUgX19wYWNrZWQgbWFjcm8g
ZGVmaW5pdGlvbiB3YXMgbm90IApwcm9wZXJseSBldmFsdWF0ZWQuCgpTaWduZWQtb2ZmLWJ5OiBD
b3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgotLS0KIHBsYXQva3ZtL2luY2x1ZGUv
a3ZtLXg4Ni9tdWx0aWJvb3QuaCB8IDIgKysKIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMo
KykKCmRpZmYgLS1naXQgYS9wbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvbXVsdGlib290LmggYi9w
bGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvbXVsdGlib290LmgKaW5kZXggZmMzODM5ZS4uZmEzYzY3
YyAxMDA2NDQKLS0tIGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L211bHRpYm9vdC5oCisrKyBi
L3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9tdWx0aWJvb3QuaApAQCAtMjMsNiArMjMsOCBAQAog
I2lmbmRlZiBNVUxUSUJPT1RfSEVBREVSCiAjZGVmaW5lIE1VTFRJQk9PVF9IRUFERVIgMQogCisj
aW5jbHVkZSA8dWsvZXNzZW50aWFscy5oPgorCiB0eXBlZGVmIHVuc2lnbmVkIGNoYXIgbXVsdGli
b290X3VpbnQ4X3Q7CiB0eXBlZGVmIHVuc2lnbmVkIHNob3J0IG11bHRpYm9vdF91aW50MTZfdDsK
IHR5cGVkZWYgdW5zaWduZWQgaW50IG11bHRpYm9vdF91aW50MzJfdDsKLS0gCjIuMS40CgoKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVs
IG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s
aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Sat Apr 28 05:41:16 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sat, 28 Apr 2018 05:41:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fCIbh-0000iR-7o; Sat, 28 Apr 2018 05:41:13 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bkmg=hr=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fCIbf-0000iM-EH
 for minios-devel@lists.xenproject.org; Sat, 28 Apr 2018 05:41:11 +0000
X-Inumbo-ID: 93040762-4aa6-11e8-9728-bc764e045a96
Received: from EUR02-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe05::628])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 93040762-4aa6-11e8-9728-bc764e045a96;
 Sat, 28 Apr 2018 07:39:53 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=RPIYuQiSJSnVKeQwFGMBAZlb1YjW57jmcJoQQ5oRl+Q=;
 b=VRQg/zM+QfFHEWz1yjatJtu0IjE/VpZ0pQWl54GiYD76I/un9hMniwPDset+YlvHoDE386V3Sl57tYMJW6XIzSl+v0/RjwGTopyjSNrcu+VtOoqNeHva3NUh2KpKbXG0oLShwKqmbvSgpT/3KkhVyElZ8JrLZWKtyicVwX3o/1g=
Received: from VI1PR0802CA0044.eurprd08.prod.outlook.com
 (2603:10a6:800:a9::30) by DB5PR0801MB1590.eurprd08.prod.outlook.com
 (2603:10a6:0:3b::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.715.18; Sat, 28
 Apr 2018 05:40:59 +0000
Received: from VE1EUR03FT058.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e09::205) by VI1PR0802CA0044.outlook.office365.com
 (2603:10a6:800:a9::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend
 Transport; Sat, 28 Apr 2018 05:40:58 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 VE1EUR03FT058.mail.protection.outlook.com (10.152.19.86) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Sat, 28 Apr 2018 05:40:58 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Sat, 28 Apr 2018
 06:40:55 +0100
Date: Sat, 28 Apr 2018 05:40:52 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180428054051.GA5439@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-11-git-send-email-shijie.huang@arm.com>
 <d287476a-07af-ea01-e6fc-c18493f7716a@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <d287476a-07af-ea01-e6fc-c18493f7716a@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(376002)(346002)(396003)(39860400002)(39380400002)(2980300002)(438002)(199004)(189003)(246002)(126002)(486006)(86362001)(316002)(6346003)(336012)(53546011)(77096007)(26005)(106466001)(446003)(8936002)(50466002)(16586007)(58126008)(229853002)(426003)(5660300001)(8676002)(106002)(6666003)(305945005)(186003)(6636002)(26826003)(478600001)(54906003)(356003)(11346002)(1076002)(23726003)(39060400002)(33656002)(2906002)(7696005)(47776003)(59450400001)(97756001)(76176011)(72206003)(104016004)(46406003)(6246003)(8666007)(6862004)(4326008)(55016002)(476003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR0801MB1590; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; VE1EUR03FT058;
 1:6j76dkgdkNfNERZ7NQeNxWcM2ndjHhJ9Xw666M2QZLcxfO7iaYRbWWbqDzxPUhnWwGIHjaXwC3ZrIaURz5Emk6j8GIbsUBp9ER+XfFvyigPiN+Bdur4KjFC/9sDZ1Mtp
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:DB5PR0801MB1590; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 3:l/9wRs8tzvWxKPOFuoC5fd8e1OBoOp+UBhewmWukXUZD246Vs9SRyUzGHYvAdbPzfdgAFboeALdcBT9RQZVtorOI5knG2CUR5Pgu0Nj+lOF25EpJ9G6y+YxFjme5qS7t+jZidyWpxDkPJU5cveejkp92bUwxU24nbePjKXxjeDSZ2EvntYQbaTlL0dlqtfH9Rd7RCa2MmuDU8pyIEu7YLs+qtikBT9rnqh+4onIRkJytMZx4TEYEr5cQk9Y9ub/1egtjvbUifNrNnPoZujPXGTkFMXa7mMXd4FK28JvG6HuB4MDqd1hgr8xaNSjzv4XNRvKC1xBxyYRa9v4eYRBGtWu6O7nyePaXPJcAlMeJBII=;
 25:zPu1twA/oZVU9i5/48x2iuFzKj15iVZ9mpjx/iX7U31rLoh6HnNcoKB+fGgULSSWvY0mH4XLIQgjHATqr77w8iHfuLIj0pb9k3q0iC93gYJ2cCMt7yB6eXpDdPIvRjRU/RZ4AOjh08V0dbAnv0LxdfurCIc/6zPufcF3n0HT+Zqx0rwnVJUk4g/2Teq5lhBkOjOUcxhx7RlMtGIhl2kXPdexDC+StKDUrYQzWN5Fm3lf506ORvRFEZ2/WmQhikzQEFa5PEMgCaToSQ0HYR0RVpCqPuAoqDcP7wgw//l4sD0Wf88/vfR7c0/j0tw0n8VG64OEYOnSIVkUGAHkbz7MEg==
X-MS-TrafficTypeDiagnostic: DB5PR0801MB1590:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 31:+u9Fq5o8HD7MzgmemlrPXQil6FuvyjLc/2edD6NNl0yH6zLQDaZgsZyqXim176NJ3vBEFzktGC8eGGWkLVjcMmJNDnxD8/gfMfVQVV/XO5MkxmHHIHRFcexx1sz4mFS4JvPa1uJnn0wj/ommC5C/RHIHP07AyClx8DwV3ODr2VGkeZ+ua+NMBBW44W9HVcpcdnL6Y5exC/8sbDyRtmbVs/3h+ZFVICWLDZT4qdKiD2Q=;
 20:wvuKfliORUPmQdzdc3Mn3R1sJ/y3oi2hZowLqV5FORoOyE1GaY7X10h23T5PpDsoS0TPPLGagIdm06jGzFMXjynpppbfaZ/tPbNbluxwRhk49sYPmVN4KHAjG2rvfUqaJbo8kXPQ/g0juh7HQ5QewN38ZIdSgvQij1ZzsFWR79KB1XrhDBxtyBEKMZgrWLJcKgMeccQeQQ7dXi4TRARRxy5nTtiDXG1Jr9Bt1shPW6JgRKLrd58VATUFbObBYq0OOWKh6ZxzzOnkh9vziIy+odI9w7rv3Dh2+jHXxEcHx2/E14CK5bGZusWkL4XXz14aC/rXAAte4y0ekJwVCrjyu5iqAxj+O4B8yqUgD3AIq1o=
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR0801MB1590033EA147CD9E8C18B4BA848C0@DB5PR0801MB1590.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(788757137089);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(3231254)(944501410)(52105095)(93006095)(93004095)(6055026)(6041310)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:DB5PR0801MB1590; BCL:0; PCL:0; RULEID:; SRVR:DB5PR0801MB1590; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 4:aHkXVsjHyNcLA1rM47OXBjhfxw0c3MSk6D2Ke3UNSdT5ucP6HWVmwJqbrAvIifECy3A0cspShldLccd5rREyKHGGEo+v6Ozkd5J8cv41W0b51DXeQJbyIKsMqkJncNKMqqNvAkSx6SbXymRlxzLwr8QlLyxA8Q7E+IY+2C6wIomjuYLHcTDAJPR4Od8IMK2i6veZzba6T5IzS4E7ProkpYAT6HH55jE/sfzsurTfspL/iOORaUUlC/ZQyd8LebD+gwXpxXJ0d7ceMRfxZHjvR4Lb82swUvSZHs+E/WZiDCypYxlxPlVOtqdtO6IBA4jsrX/zoRnqiUMHYDVf8lJ/iQ==
X-Forefront-PRVS: 0656A4403B
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR0801MB1590;
 23:+1gC59nbdKLFHRqwMstIReXs8yAI177bTzoGdaN?=
 =?us-ascii?Q?tkfYJQqXHn5JMFEVQboQnuFQ1k3HDyC5ByOLe17UB+512hZ4ccRClbwQ6f4p?=
 =?us-ascii?Q?DbqHo+s+08jqtfix5agZn+QdgkCLKeENb95ihDQo5pbBxYjmSVzcW6CJIX8/?=
 =?us-ascii?Q?Qh9U+SHgY9E6AzW1LzklxBns3upubPRu4m0VFSluGI59jn4h454eX8cyxETN?=
 =?us-ascii?Q?zyjHj7qTM8gQ1SUwMkuNz4L0esui/x1o0HWTJW7wbHLXyOdCr8aBqUuHr1M3?=
 =?us-ascii?Q?2W0rIjAwcUwpnWCCOjvdstLPPfFbBxvYu5IMLhIWuAPOvTkfdctmRG2DLH2J?=
 =?us-ascii?Q?DEX04lyukrv57LVwUFUCUILwz8REo4BFtWbiVw2wugC5nREv8gMe2TZR4L//?=
 =?us-ascii?Q?zbd/AJL6OPRP5xKO0swxr1i662rljeN75WHKGzQl/mWw57rYZF2xHS6IWG1P?=
 =?us-ascii?Q?WVM6HZrPg7eftPp9G06NoGkdgnhrc5J8FTvM3zy7WhQrhdnRws65HiELAyu3?=
 =?us-ascii?Q?P+LFiHhGUaLVT1P4GbAei4ZBdjKZuihhyG0BarsO+dIW0VssDUBVvcB8rDLC?=
 =?us-ascii?Q?/V2hNQkElAk1TOtofRJQr25v/EKsrO3TWrAHS7vLPOUFjwfkQ7qzQrkoEE/l?=
 =?us-ascii?Q?RhgOBWTEX9GlAPQwabqSdThQfd1JJyTdpkciKUDpSm3gV5ha0NM0Clteq8MR?=
 =?us-ascii?Q?08YU+Hc7/IMOoOZun6Imc6rGmK1rcULM33BkjpsLmCO8k363Cd0ho2iF/vb2?=
 =?us-ascii?Q?Y5u72MzsoB0UphHBvGdosDY63oRa+LkrWSvpQsSX+B/Xg1SwIubARLHTswPp?=
 =?us-ascii?Q?YsmdtxFY1LwKLDNNw5bUHRkMon9310GZncCFB4bGn3mUxCwQkQJJR23H7CGI?=
 =?us-ascii?Q?kUUTBqhC0qQB/0Q7jVYv0BTSaBfbIYUokLxR7QsE1cpxqkubI7f0XWAJXHrG?=
 =?us-ascii?Q?0LqtdqEReF6iTLHBoF1ntII4ijJe+K4/diuQ4BwNQqxf95bySg05ytCzIq9d?=
 =?us-ascii?Q?JBo57oy/Eiw2+bVFxVXQv+PQP5EuAFetScQXJgHBIdckavrxJ80REka1naL8?=
 =?us-ascii?Q?YBQH3Y7ix30AhUXj7MfDHoQCtImu2wBIf4gLV+E9w6751IUqitrN/Li0t/fu?=
 =?us-ascii?Q?BEcsY2u2q86vfsduGG9VZY8OZvCXekTMArh99qOICLpLVlKiOGzP1xqwsCo5?=
 =?us-ascii?Q?TqpzFRoNblSuY7d1qu1JVle5hsIxIYPgilFNWfN8xDw8BlHKnWzYSfg9UbYQ?=
 =?us-ascii?Q?3F3zeeu0XcWJdzCvPzCmEUvI86pZt9QJbWidTHDpatZ4r+Ki4Hr9MLT9y82D?=
 =?us-ascii?Q?2eucBed7md25uVzJZYiODRkM=3D?=
X-Microsoft-Antispam-Message-Info: Rbc21A+maAzbamfB8GJa+hdBm1Ew/WoEYbiXQnPzlpMWRRYRsKIJ0Y8hy7nFIS69uf96wDMxdPs+hfMSNZZLO5miChrs5pfBenfilHNvmwTobM+MDb3xQPevcpXNJGSsYiogwpdwGYq+4FvvWRmpE1O94toSuS1cv2QLm9PpdqA0l5BZtP/aRxdWKXvVE4kyef9QpCX+gw4cQHqycxkdUYdsqijpPTVOpCpiIyiaY8RHIplsQGxyv6G8V6egUdoKTKCsPzRjLfIaXgzsF5+/CJM5oh6kxTX62v2kpF/yIzUXgKDLPOsNliCnvv7tKPLhIoV4cr3+C0XBelk91Z0Qt7/rYjH1BasUiZoRVKfhIMbx/L4zWjyUUAxzydpUm4nX9+NknVNdQdpUG2VPCAWw0KfwijtSHJXdGMtRFCZQurM=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 6:k3S/JU7H0J7jg68IyMX4r+C37HmFUd0yfp6D5NwdFn1cFMX5aS1EqwrxweSyzjxI3wApOR7k3lBqCLTvSrKIM0nsssg/CewpUAnMto75lixamFCN6/BpTAxEKBgSr3GiKHHWdLxZ6EGAbssTKruqRtDFMyRPq5zDuowUnyMdOrHS8kJ0yphL0cH7wEVNoSThi3eNIpp0qXiQAXZ+UMN3cMFZpQ4AqVHH4UYvmC08zv9GKrg/Mq0uJG4SYwWlr5KEZCkamdX09DFywDDULYp6jRMFs5ApAkLB9PDrjtBYMyS1KRU/PvWhgffPffI+syYQXKOetOuaHSmhlffgDmk4XnUUQPvSix/Yf7WCyStVO71gD2pk8tqIgHGEg53CkuPibW116tqksI/SH0dgB0eQahnU6RBmLjL0sBm6LLqtfsa/xqqQ4Ph7rsm/Sny8GjhWtPyvVR2BrWDN5n3I3cWpw2GzoDCVyiec2fDuSVcFSnCCSfRwOiri62xJ8gR2lC4U;
 5:4zES04a5d/lmacNgpY0sRVsmFscnnsua75oY+FioNJrLQi5wv2AK3ERKKOjc6rx+MY4ZWlgou9qgVMrtl0fVZmpEGM34Pl8FNvgchLksR+7tU3a53RA2G+QZt3B5CUbSy3cB7IxPF9sGFsaeyBqOW2E6856/SnxLfMQIyGzMLcI=;
 24:20kYi5mvEW0O/WRgu4A5FEQkdtStcMB5DQ9FeLTd2/GyBQ9lK98JxLwIdNCaYBL6Ekdkqgzw8+kAcDSFEueu55z5hoXmzy5DgFzhLyFLILM=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 7:+TY92zkWf7v/wWg4KcIHzp2LzYOeVghP3IVakGSWBMX0tu7XLayOmYN69AZOu7Cgb28xSv4jwwSL1Yu1e5MbgzShZbHkQPA1jWk+roqtrCpdNZqfrsJqcYhRe2qoA+Z9okatvTnaBv+D3PLiB/oJ2TcGj9jdaU1ZwaWiZhbGhV2ruojxn601onA9INc9v5+N7nSRSV1HF69T5pjc0wp+CVLjHqoPGadp49tzIuuMisLmHQFay1VZuMDEntG0TsJc
X-MS-Office365-Filtering-Correlation-Id: 73d953ff-c169-4f19-3f66-08d5acca9ea4
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2018 05:40:58.5072 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 73d953ff-c169-4f19-3f66-08d5acca9ea4
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB1590
Subject: Re: [Minios-devel] [PATCH v3 10/43] arm64: add exception support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMDY6NDg6MjRQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpIFNoaWppZSwKPiAKPiBPbiAxNi8wNC8xOCAwNzozMSwgSHVhbmcgU2hpamllIHdy
b3RlOgo+ID5UaGlzIHBhdGNoIGFkZHMgdGhlIGV4Y2VwdGlvbiBzdXBwb3J0IGZvciBhcm02NDoK
PiA+ICAgICAuMCkgQWRkIGFybTY0L3RyYXBzLmgsIGFuZCBhZGQgbmV3IHB0X3JlZ3N7fSBmb3Ig
YXJtNjQuCj4gPiAgICAgLjEpIEFkZCBzYXZlX3JlZ2lzdGVycy9yZXN0b3JlX3JlZ2lzdGVycyB3
aGljaCBhcmUgYmFzZWQgb24gRnJlZUJTRCBjb2RlLgo+IAo+IFBsZWFzZSBnaXZlIGEgcG9pbnRl
ciB0byB0aGUgY29kZS4Kb2theS4KPiAKPiA+ICAgICAuMikgc2V0dXAgdGhlIHZlY3RvciB0YWJs
ZQo+ID4gICAgIC4zKSByZW1vdmUgdGhlIGNvZGUgZm9yIGFybTMyLgo+IAo+IFRoaXMgZG9lcyBu
b3QgbWFrZSBzZW5zZSBpbiBhIHBhdGNoIHRoYXQgaXMgYWRkaW5nIGFybTY0IHN1cHBvcnQuIFRo
ZSBjb2RlCj4gcmVtb3ZlZCBsb29rIGZhaXJseSBpbmRlcGVuZGVudCwgc28gY2FuIHlvdSBtb3Zl
IHRoYXQgaW4gIzIuCm9rYXkuCj4gCj4gPgo+ID5TaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUg
PHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+ID4tLS0KPiA+ICBhcmNoL2FybS9hcm02NC9hcm02NC5T
ICAgIHwgMTQ3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysK
PiA+ICBhcmNoL2FybS9hcm02NC90cmFwcy5jICAgIHwgIDE2ICsrKysrCj4gPiAgaW5jbHVkZS9h
cm0vYXJtNjQvdHJhcHMuaCB8ICAyNyArKysrKysrKysKPiA+ICBpbmNsdWRlL2FybS90cmFwcy5o
ICAgICAgIHwgIDIxICstLS0tLS0KPiA+ICA0IGZpbGVzIGNoYW5nZWQsIDE5MSBpbnNlcnRpb25z
KCspLCAyMCBkZWxldGlvbnMoLSkKPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm0vYXJt
NjQvdHJhcHMuYwo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2FybS9hcm02NC90cmFw
cy5oCj4gPgo+ID5kaWZmIC0tZ2l0IGEvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUyBiL2FyY2gvYXJt
L2FybTY0L2FybTY0LlMKPiA+aW5kZXggYjQ1NGNjNi4uOWViN2VhMCAxMDA2NDQKPiA+LS0tIGEv
YXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+ID4rKysgYi9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4g
PkBAIC0xLDYgKzEsNyBAQAo+ID4gICNpbmNsdWRlICJhc20uaCIKPiA+ICAjaW5jbHVkZSA8YXJj
aF9saW1pdHMuaD4KPiA+ICAjaW5jbHVkZSA8YXJtNjQvcGFnZXRhYmxlLmg+Cj4gPisjaW5jbHVk
ZSA8YXJtNjQvdHJhcHMuaD4KPiA+ICAjaW5jbHVkZSA8eGVuL3hlbi5oPgo+ID4gIC8qIFRoaXMg
bWFjcm8gd2lsbCB1c2UgdGhlIHgwL3gxL3gyL3gxNiAqLwo+ID5AQCAtMTAxLDYgKzEwMiwxMSBA
QCBFTlRSWShfc3RhcnQpCj4gPiAgICAgIG1zciAgICAgdHRicjBfZWwxLCB4MAo+ID4gICAgICBp
c2IKPiA+KyAgICAvKiBMb2FkIHRoZSBleGNlcHRpb24gdmVjdG9ycyAqLwo+ID4rICAgIGxkciAg
ICAgeDIsID12ZWN0b3JfdGFibGUKPiA+KyAgICBtc3IgICAgIHZiYXJfZWwxLCB4Mgo+ID4rICAg
IGlzYgo+IAo+IEkgZG9uJ3QgdGhpbmsgdGhlIGlzYiBpcyBuZWNlc3NhcnkgaGVyZS4gWW91IGNh
biByZWx5IG9uIHRoZSBvbmUgYmVsb3cgKHdoZW4KPiBzZXR0aW5nIHVwIHRoZSBTQ1RMUikuCj4g
Cj4gVGhpcyB3b3VsZCBiZSBmaW5lIGJlY2F1c2UgdGhlIHZlY3RvciB0YWJsZSBjb250YWlucyB2
aXJ0dWFsIGFkZHJlc3Mgc28gaXQKPiBpcyB1bnVzYWJsZSBiZWZvcmUgdHVybmluZyBvbiB0aGUg
TU1VLgo+IApva2F5LCBJIHdpbGwgdGhpbmsgYWJvdXQgaXQuCj4gPisKPiA+ICAgICAgLyogVHVy
bmluZyBvbiBNTVUgKi8KPiA+ICAgICAgdGxiaSAgICB2bWFsbGUxCj4gPiAgICAgIGRzYiAgICAg
bnNoCj4gPkBAIC0yODQsMyArMjkwLDE0NCBAQCBfc2V0dXBfaWRtYXBfcGd0YWJsZToKPiA+ICAg
ICAgYWRyICAgICB4MCwgaWRtYXBfbDBfcGd0YWJsZQo+ID4gICAgICBkc2IgICAgIHN5Cj4gPiAg
ICAgIHJldAo+ID4rCj4gPisvKiBUaGUgc2F2ZV9yZWdpc3RlcnMvcmVzdG9yZV9yZWdpc3RlcnMg
YXJlIGJhc2VkIG9uIHRoZSBjb2RlIGluIEZyZWVCU0QgKi8KPiAKPiBNaXNzaW5nIGZ1bGwgc3Rv
cC4KPiAKPiA+Ky5tYWNybwlzYXZlX3JlZ2lzdGVycyBlbAo+IAo+IEFsbCB0aGUgY29kZSBiZWxv
dyBpcyB1c2luZyBoYXJkIHRhYiwgaG93ZXZlciB0aGUgcmVzdCBvZiB0aGUgZmlsZSBpcyB1c2lu
Zwo+IHNvZnQgdGFiLiBQbGVhc2UgcmVwbGFjZSBhbGwgaGFyZCB0YWIgd2l0aCBzb2Z0IHRhYi4K
SSB3aWxsIGNoYW5nZSBpdCB0byBzb2Z0IHRhYi4KPiAKPiA+Kwltb3YJeDE4LCBzcAo+IAo+IFNv
bWV0aGluZyBpcyB3cm9uZyBoZXJlLiBZb3Ugc2VlbSB0byBvdmVyd3JpdGUgeDE4IHdpdGhvdXQg
c2F2aW5nIGl0LiBEaWQgSQo+IG1pc3MgYW55dGhpbmc/CkkgY29waWVkIGZyb20gdGhlIGZyZWVi
c2QgY29kZS4gVGhlIG9yaWdpbmFsIGNvZGUgdXNlcyB4MTggaGVyZS4KCkl0IGlzIHJlYWxseSBu
b3QgcHJvcGVyIHRvIG92ZXJ3cml0ZSB4MTguCgpJIHdpbGwgY2hhbmdlIGl0IGxhdGVyLgoKPiAK
PiA+Kwo+ID4rCXN1YglzcCwgc3AsICMoUFRfUkVHX1NJWkUpCj4gPisKPiA+KwlzdHAJeDI4LCB4
MjksIFtzcCwgIyhQVF9SRUdfWCArIDI4ICogOCldCj4gCj4gSSBtaWdodCBiZSBuaWNlIHRvIG1h
a2UgUFRfUkVHX1ggYSBtYWNybyB0YWtlIHRoZSByZWdpc3RlcnMgaW4gcGFyYW1ldGVycy4KPiBU
aGlzIHdvdWxkIGVhc2UgdGhlIHJlYWRpbmcgb2YgdGhlIGNvZGUuCm9rYXksIG5vIHByb2JsZW0u
Cgo+IAo+ID4rCXN0cAl4MjYsIHgyNywgW3NwLCAjKFBUX1JFR19YICsgMjYgKiA4KV0KPiA+Kwlz
dHAJeDI0LCB4MjUsIFtzcCwgIyhQVF9SRUdfWCArIDI0ICogOCldCj4gPisJc3RwCXgyMiwgeDIz
LCBbc3AsICMoUFRfUkVHX1ggKyAyMiAqIDgpXQo+ID4rCXN0cAl4MjAsIHgyMSwgW3NwLCAjKFBU
X1JFR19YICsgMjAgKiA4KV0KPiA+KwlzdHAJeDE4LCB4MTksIFtzcCwgIyhQVF9SRUdfWCArIDE4
ICogOCldCj4gPisJc3RwCXgxNiwgeDE3LCBbc3AsICMoUFRfUkVHX1ggKyAxNiAqIDgpXQo+ID4r
CXN0cAl4MTQsIHgxNSwgW3NwLCAjKFBUX1JFR19YICsgMTQgKiA4KV0KPiA+KwlzdHAJeDEyLCB4
MTMsIFtzcCwgIyhQVF9SRUdfWCArIDEyICogOCldCj4gPisJc3RwCXgxMCwgeDExLCBbc3AsICMo
UFRfUkVHX1ggKyAxMCAqIDgpXQo+ID4rCXN0cAl4OCwgIHg5LCAgW3NwLCAjKFBUX1JFR19YICsg
OCAgKiA4KV0KPiA+KwlzdHAJeDYsICB4NywgIFtzcCwgIyhQVF9SRUdfWCArIDYgICogOCldCj4g
PisJc3RwCXg0LCAgeDUsICBbc3AsICMoUFRfUkVHX1ggKyA0ICAqIDgpXQo+ID4rCXN0cAl4Miwg
IHgzLCAgW3NwLCAjKFBUX1JFR19YICsgMiAgKiA4KV0KPiA+KwlzdHAJeDAsICB4MSwgIFtzcCwg
IyhQVF9SRUdfWCArIDAgICogOCldCj4gPisKPiA+KwltcnMJeDEwLCBlbHJfZWwxCj4gPisJbXJz
CXgxMSwgc3Bzcl9lbDEKPiA+KwltcnMJeDEyLCBlc3JfZWwxCj4gPisuaWYgXGVsID09IDAKPiAK
PiBBRkFJQ1QgeW91IHdpbGwgbmV2ZXIgZ28gaW4gRUwwLiBTbyBpcyB0aGVyZSBhbnkgcmVhc29u
IHRvIGhhbmRsZSBFTDA/CnRoZXJlIGlzIGludmFsaWQgY2FzZSBmb3IgRUwwLCBzdWNoIGFzIGVs
MF9pcnEuClNvIGtlZXAgaXQgaGVyZSBmb3IgdGhlbS4KCj4gCj4gPisJbXJzCXgxOCwgc3BfZWww
Cj4gPisuZW5kaWYKPiAKPiBIbW0gSSB0aGluayB5b3Ugd2FudCB0aGUgIm1vdiB4MTgsIHNwIiBi
dXQgeW91IGFsc28gbmVlZCB0byBhZGQgdGhlCj4gUFRfUkVHX1NJWkUgdG8gZ2V0IHRoZSBjb3Jy
ZWN0IHNwLgpUaGUgc3AgaXMgY29ycmVjdCBoZXJlLgpXZSBoYXZlIHN1YiB0aGUgUFRfUkVHX1NJ
WkUgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgQHNhdmVfcmVnaXN0ZXJzLgo+IAo+ID4rCXN0cgl4
MTAsIFtzcCwgIyhQVF9SRUdfRUxSKV0KPiA+KwlzdHAJdzExLCB3MTIsIFtzcCwgIyhQVF9SRUdf
U1BTUildCj4gPisJc3RwCXgxOCwgeDMwLCBbc3AsICMoUFRfUkVHX1NQKV0KPiA+Ky5lbmRtCj4g
PisKPiA+Ky5tYWNybwlyZXN0b3JlX3JlZ2lzdGVycyBlbAo+IAo+IFdpbGwgeW91IGV2ZXIgcmVh
Y2ggdGhpcyBtYWNybyB3aXRoIGludGVycnVwdCBlbmFibGVkPyBJZiBzbywgZG9uJ3QgeW91IHdh
bnQKPiB0byBkaXNhYmxlIHRoZW0uIFNvIHlvdSBkb24ndCBnZXQgaW50ZXJydXB0IGluIHRoZSBt
aWRkbGUgb2YgdGhlIHJlc3RvcmU/ClRoZSBpbnRlcnJ1cHQgaXMgZGlzYWJsZWQgaGVyZS4KCgo+
IAo+ID4rCWxkcAl4MTgsIHgzMCwgW3NwLCAjKFBUX1JFR19TUCldCj4gPisJbGRwCXgxMCwgeDEx
LCBbc3AsICMoUFRfUkVHX0VMUildCj4gPisuaWYgXGVsID09IDAKPiA+Kwltc3IJc3BfZWwwLCB4
MTgKPiA+Ky5lbmRpZgo+ID4rCW1zcglzcHNyX2VsMSwgeDExCj4gPisJbXNyCWVscl9lbDEsIHgx
MAo+ID4rCj4gPisJbGRwCXgwLCAgeDEsICBbc3AsICMoUFRfUkVHX1ggKyAwICAqIDgpXQo+ID4r
CWxkcAl4MiwgIHgzLCAgW3NwLCAjKFBUX1JFR19YICsgMiAgKiA4KV0KPiA+KwlsZHAJeDQsICB4
NSwgIFtzcCwgIyhQVF9SRUdfWCArIDQgICogOCldCj4gPisJbGRwCXg2LCAgeDcsICBbc3AsICMo
UFRfUkVHX1ggKyA2ICAqIDgpXQo+ID4rCWxkcAl4OCwgIHg5LCAgW3NwLCAjKFBUX1JFR19YICsg
OCAgKiA4KV0KPiA+KwlsZHAJeDEwLCB4MTEsIFtzcCwgIyhQVF9SRUdfWCArIDEwICogOCldCj4g
PisJbGRwCXgxMiwgeDEzLCBbc3AsICMoUFRfUkVHX1ggKyAxMiAqIDgpXQo+ID4rCWxkcAl4MTQs
IHgxNSwgW3NwLCAjKFBUX1JFR19YICsgMTQgKiA4KV0KPiA+KwlsZHAJeDE2LCB4MTcsIFtzcCwg
IyhQVF9SRUdfWCArIDE2ICogOCldCj4gPisJbGRwCXgxOCwgeDE5LCBbc3AsICMoUFRfUkVHX1gg
KyAxOCAqIDgpXQo+ID4rCWxkcAl4MjAsIHgyMSwgW3NwLCAjKFBUX1JFR19YICsgMjAgKiA4KV0K
PiA+KwlsZHAJeDIyLCB4MjMsIFtzcCwgIyhQVF9SRUdfWCArIDIyICogOCldCj4gPisJbGRwCXgy
NCwgeDI1LCBbc3AsICMoUFRfUkVHX1ggKyAyNCAqIDgpXQo+ID4rCWxkcAl4MjYsIHgyNywgW3Nw
LCAjKFBUX1JFR19YICsgMjYgKiA4KV0KPiA+KwlsZHAJeDI4LCB4MjksIFtzcCwgIyhQVF9SRUdf
WCArIDI4ICogOCldCj4gPisKPiA+Kwltb3YJc3AsIHgxOAo+IAo+IFNvIHgxOCB3aWxsIG5vdCBj
b250YWluIHRoZSBzcCBoZXJlLiBCdXQgSSB0aGluayBhZGRpbmcgUFRfUkVHX1NJWkUgdG8gc3AK
PiBzaG91bGQgYmUgZW5vdWdoIGhlcmUuCnRoZSB4MTggc3RvcmVzIHRoZSBwcmV2aW91cyBzcCBt
YXliZSBpcyBkaWZmZXJlbnQgd2l0aCBjdXJyZW50IHNwLCAKIFNvIGFkZCBQVF9SRUdfU0laRSB0
byBzcCBpcyB3cm9uZy4gICAKPiAKPiA+KyAgICAgICAgZXJldAo+ID4rLmVuZG0KPiA+Kwo+ID4r
ICAgIC5nbG9ibCBJUlFfaGFuZGxlcgo+ID4rSVJRX2hhbmRsZXI6Cj4gPisgICAgLmxvbmcgMHgw
Cj4gCj4gSSBhbSBub3Qgc3VyZSB0byB1bmRlcnN0YW5kIHRoZSBwdXJwb3NlIG9mIElSUV9oYW5k
bGVyLiBDYW4ndCB5b3UganVzdAo+IGRpcmVjdGx5IGNhbGwgdGhlIGhhbmRsZXI/CldlIGhhdmUg
YWxyZWFkeSBoYXZlIHRoZSBlbDFfaXJxIHRvIGhhbmRsZSB0aGUgSVJRLgphbmQgd2UgbmVlZCB0
byBzYXZlIHRoZSBjb250ZXh0IGJlZm9yZSBjYWxsIElSUV9oYW5kbGVyLgo+IAo+ID4rCj4gPisg
ICAgLmFsaWduIDYKPiA+K2VsMV9zeW5jOgo+ID4rICAgIHNhdmVfcmVnaXN0ZXJzIDEKPiA+KyAg
ICBtb3YgICAgIHgwLCBzcAo+ID4rICAgIG1ycyAgICAgeDEsIGVzcl9lbDE7Cj4gPisgICAgbXJz
ICAgICB4MiwgZmFyX2VsMTsKPiAKPiBEbyB5b3UgZXhwZWN0IHRoZSBtaW5pLU9TIHRvIGFsd2F5
cyBydW4gd2l0aCBpbnRlcnJ1cHQgZGlzYWJsZWQgaW4gRUwxPyBJZgo+IG5vdCwgeW91IG1heSB3
YW50IHRvIHJlLWVuYWJsZSBpbnRlcnJ1cHQgaGVyZS4KCm9rYXksIEkgd2lsbCBjaGVjayBpdC4K
PiAKPiA+KyAgICBibCAgICAgIGRvX3N5bmMKPiA+KyAgICByZXN0b3JlX3JlZ2lzdGVycyAxCj4g
PisKPiA+KyAgICAuYWxpZ24gNgo+ID4rZWwxX2lycToKPiA+KyAgICBzYXZlX3JlZ2lzdGVycyAx
Cj4gPisgICAgbGRyICAgICB4MCwgSVJRX2hhbmRsZXIKPiA+KyAgICBibHIgICAgIHgwCj4gPisg
ICAgcmVzdG9yZV9yZWdpc3RlcnMgMQo+ID4rCj4gPisvKiBCYWQgQWJvcnQgbnVtYmVycyAqLwo+
ID4rI2RlZmluZSBCQURfU1lOQyAgICAwCj4gPisjZGVmaW5lIEJBRF9JUlEgICAgIDEKPiA+KyNk
ZWZpbmUgQkFEX0ZJUSAgICAgMgo+ID4rI2RlZmluZSBCQURfRVJST1IgICAzCj4gPisKPiA+KyNk
ZWZpbmUgZWxfaW52YWxpZChuYW1lLCByZWFzb24sIGVsKSAgXAo+ID4rICAgIC5hbGlnbiA2OyAg
ICAgICAgICAgICAgICAgICAgICAgICBcCj4gPituYW1lIyNfaW52YWxpZDogICAgICAgICAgICAg
ICAgICAgICAgIFwKPiA+KyAgICBzYXZlX3JlZ2lzdGVycyAgZWw7ICAgICAgICAgICAgICAgXAo+
ID4rICAgIG1vdiAgICAgeDAsIHNwOyAgICAgICAgICAgICAgICAgICBcCj4gPisgICAgbW92ICAg
ICB4MSwgIyhyZWFzb24pOyAgICAgICAgICAgIFwKPiA+KyAgICBtcnMgICAgIHgyLCBlc3JfZWwx
OyAgICAgICAgICAgICAgXAo+ID4rICAgIG1ycyAgICAgeDMsIGZhcl9lbDE7ICAgICAgICAgICAg
ICBcCj4gPisgICAgYiAgICAgICBkb19iYWRfbW9kZTsgICAgICAgICAgICAgIFwKPiA+K0VORFBS
T0MobmFtZSMjX2ludmFsaWQpOyAgICAgICAgICAgICAgXAo+ID4rCj4gPitlbF9pbnZhbGlkKGVs
MV9zeW5jLCBCQURfU1lOQywgMSk7Cj4gPitlbF9pbnZhbGlkKGVsMF9zeW5jLCBCQURfU1lOQywg
MCk7Cj4gPitlbF9pbnZhbGlkKGVsMV9pcnEsIEJBRF9JUlEsIDEpOwo+ID4rZWxfaW52YWxpZChl
bDBfaXJxLCBCQURfSVJRLCAwKTsKPiA+K2VsX2ludmFsaWQoZWwxX2ZpcSwgQkFEX0ZJUSwgMSk7
Cj4gPitlbF9pbnZhbGlkKGVsMF9maXEsIEJBRF9GSVEsIDApOwo+ID4rZWxfaW52YWxpZChlbDFf
ZXJyb3IsIEJBRF9FUlJPUiwgMSk7Cj4gPitlbF9pbnZhbGlkKGVsMF9lcnJvciwgQkFEX0VSUk9S
LCAwKTsKPiA+Kwo+ID4rICAgIC8qIEV4Y2VwdGlvbiB2ZWN0b3IgZW50cnkgKi8KPiA+KyAgICAu
bWFjcm8gdmVjdG9yX2VudHJ5IGxhYmVsCj4gPisgICAgLmFsaWduICA3Cj4gPisgICAgYiAgICAg
ICBcbGFiZWwKPiA+KyAgICAuZW5kbQo+ID4rCj4gPisgICAgLmFsaWduICAxMQo+ID4rRU5UUlko
dmVjdG9yX3RhYmxlKQo+ID4rICAgIC8qIEN1cnJlbnQgRXhjZXB0aW9uIGxldmVsIHdpdGggU1Bf
RUwwICovCj4gPisgICAgdmVjdG9yX2VudHJ5IGVsMV9zeW5jX2ludmFsaWQgICAgICAgICAvKiBT
eW5jaHJvbm91cyBFTDF0ICAgICAgICovCj4gPisgICAgdmVjdG9yX2VudHJ5IGVsMV9pcnFfaW52
YWxpZCAgICAgICAgICAvKiBJUlEgRUwxdCAgICAgICAgICAgICAgICovCj4gPisgICAgdmVjdG9y
X2VudHJ5IGVsMV9maXFfaW52YWxpZCAgICAgICAgICAvKiBGSVEgRUwxdCAgICAgICAgICAgICAg
ICovCj4gPisgICAgdmVjdG9yX2VudHJ5IGVsMV9lcnJvcl9pbnZhbGlkICAgICAgICAvKiBFcnJv
ciBFTDF0ICAgICAgICAgICAgICovCj4gPisKPiA+KyAgICAvKiBDdXJyZW50IEV4Y2VwdGlvbiBs
ZXZlbCB3aXRoIFNQX0VMMSAqLwo+ID4rICAgIHZlY3Rvcl9lbnRyeSBlbDFfc3luYyAgICAgICAg
ICAgICAgICAgLyogU3luY2hyb25vdXMgRUwxaCAgICAgICAqLwo+ID4rICAgIHZlY3Rvcl9lbnRy
eSBlbDFfaXJxICAgICAgICAgICAgICAgICAgLyogSVJRIEVMMWggICAgICAgICAgICAgICAqLwo+
ID4rICAgIHZlY3Rvcl9lbnRyeSBlbDFfZmlxX2ludmFsaWQgICAgICAgICAgLyogRklRIEVMMWgg
ICAgICAgICAgICAgICAqLwo+ID4rICAgIHZlY3Rvcl9lbnRyeSBlbDFfZXJyb3JfaW52YWxpZCAg
ICAgICAgLyogRXJyb3IgRUwxaCAgICAgICAgICAgICAqLwo+ID4rCj4gPisgICAgLyogTG93ZXIg
RXhjZXB0aW9uIGxldmVsIHVzaW5nIEFBcmNoNjQgKi8KPiA+KyAgICB2ZWN0b3JfZW50cnkgZWww
X3N5bmNfaW52YWxpZCAgICAgICAgIC8qIFN5bmNocm9ub3VzIDY0LWJpdCBFTDAgKi8KPiA+KyAg
ICB2ZWN0b3JfZW50cnkgZWwwX2lycV9pbnZhbGlkICAgICAgICAgIC8qIElSUSA2NC1iaXQgRUww
ICAgICAgICAgKi8KPiA+KyAgICB2ZWN0b3JfZW50cnkgZWwwX2ZpcV9pbnZhbGlkICAgICAgICAg
IC8qIEZJUSA2NC1iaXQgRUwwICAgICAgICAgKi8KPiA+KyAgICB2ZWN0b3JfZW50cnkgZWwwX2Vy
cm9yX2ludmFsaWQgICAgICAgIC8qIEVycm9yIDY0LWJpdCBFTDAgICAgICAgKi8KPiA+Kwo+ID4r
ICAgIC8qIExvd2VyIEV4Y2VwdGlvbiBsZXZlbCB1c2luZyBBQXJjaDMyICovCj4gPisgICAgdmVj
dG9yX2VudHJ5IGVsMF9zeW5jX2ludmFsaWQgICAgICAgICAvKiBTeW5jaHJvbm91cyAzMi1iaXQg
RUwwICovCj4gPisgICAgdmVjdG9yX2VudHJ5IGVsMF9pcnFfaW52YWxpZCAgICAgICAgICAvKiBJ
UlEgMzItYml0IEVMMCAgICAgICAgICovCj4gPisgICAgdmVjdG9yX2VudHJ5IGVsMF9maXFfaW52
YWxpZCAgICAgICAgICAvKiBGSVEgMzItYml0IEVMMCAgICAgICAgICovCj4gPisgICAgdmVjdG9y
X2VudHJ5IGVsMF9lcnJvcl9pbnZhbGlkICAgICAgICAvKiBFcnJvciAzMi1iaXQgRUwwICAgICAg
ICovCj4gCj4gSXQgbG9va3MgbGlrZSB5b3UgZG9uJ3QgaW1wbGVtZW50IEVMMC4gSSB3b3VsZCB0
cnkgdG8gc2ltcGxpZnkgdGhlIEVMMAo+IGhhbmRsaW5nIGluIHRoYXQgY2FzZSBhbmQgYWxzbyBh
ZGQgYSBjb21tZW50IGluIHRoZSBjb2RlLgpva2F5LAo+IAo+ID4rRU5EKHZlY3Rvcl90YWJsZSkK
PiA+ZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0L3RyYXBzLmMgYi9hcmNoL2FybS9hcm02NC90
cmFwcy5jCj4gPm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gPmluZGV4IDAwMDAwMDAuLjYyZGQyZTYK
PiA+LS0tIC9kZXYvbnVsbAo+ID4rKysgYi9hcmNoL2FybS9hcm02NC90cmFwcy5jCj4gPkBAIC0w
LDAgKzEsMTYgQEAKPiA+KyNpbmNsdWRlIDxtaW5pLW9zL29zLmg+Cj4gPisjaW5jbHVkZSA8bWlu
aS1vcy9hcm02NC90cmFwcy5oPgo+ID4rI2luY2x1ZGUgPGNvbnNvbGUuaD4KPiA+Kwo+ID4rdm9p
ZCBkb19iYWRfbW9kZShzdHJ1Y3QgcHRfcmVncyAqcmVncywgaW50IHJlYXNvbiwKPiA+KyAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgZXNyLCB1bnNpZ25lZCBsb25nIGZhcikKPiA+K3sK
PiA+KyAgICAvKiBUTyBETyAqLwo+ID4rICAgIGRvX2V4aXQoKTsKPiA+K30KPiA+Kwo+ID4rdm9p
ZCBkb19zeW5jKHN0cnVjdCBwdF9yZWdzICpyZWdzLCB1bnNpZ25lZCBsb25nIGVzciwgdW5zaWdu
ZWQgbG9uZyBmYXIpCj4gPit7Cj4gPisgICAgLyogVE8gRE8gKi8KPiA+KyAgICBkb19leGl0KCk7
Cj4gPit9Cj4gPmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcm02NC90cmFwcy5oIGIvaW5jbHVk
ZS9hcm0vYXJtNjQvdHJhcHMuaAo+ID5uZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID5pbmRleCAwMDAw
MDAwLi45NjJmNGE2Cj4gPi0tLSAvZGV2L251bGwKPiA+KysrIGIvaW5jbHVkZS9hcm0vYXJtNjQv
dHJhcHMuaAo+ID5AQCAtMCwwICsxLDI3IEBACj4gPisjaWZuZGVmIF9UUkFQU19IXwo+ID4rI2Rl
ZmluZSBfVFJBUFNfSF8KPiA+Kwo+ID4rI2lmbmRlZiBfX0FTU0VNQkxZX18KPiA+K3N0cnVjdCBw
dF9yZWdzIHsKPiA+KyAgICB1aW50NjRfdCBzcDsKPiA+KyAgICB1aW50NjRfdCBwYzsKPiA+KyAg
ICB1aW50NjRfdCBscjsgIC8qIGVsciAqLwo+ID4rICAgIHVpbnQzMl90IHBzdGF0ZTsKPiA+KyAg
ICB1aW50MzJfdCBlc3I7Cj4gPisKPiA+KyAgICAvKiBGcm9tIHgwIH4geDI5ICovCj4gPisgICAg
dWludDY0X3QgeFszMF07Cj4gPit9Owo+ID4rCj4gPisjZWxzZQo+ID4rCj4gPisjZGVmaW5lIFBU
X1JFR19TSVpFICAgKDI3MikKPiA+Kwo+ID4rI2RlZmluZSBQVF9SRUdfU1AgICAgICgwKQo+ID4r
I2RlZmluZSBQVF9SRUdfRUxSICAgICgxNikKPiA+KyNkZWZpbmUgUFRfUkVHX1NQU1IgICAoMjQp
Cj4gPisjZGVmaW5lIFBUX1JFR19YICAgICAgKDMyKQo+IAo+IEkgaG9uZXN0bHkgZG9uJ3QgbGlr
ZSBoYXJkY29kaW5nIG9mZnNldCBvZiB0aGUgc3RydWN0dXJlLiBUaGlzIGlzIGEgcmVhbAo+IGNh
bGwgdG8gbWVzcyB1cCBpbiB0aGUgZnV0dXJlIChvciBldmVuIG5vdykuIFRoZSBsYWNrIG9mIGNv
bW1lbnRzIGRvbid0IGhlbHAKPiBlaXRoZXIuCj4gCj4gQnV0IEkgYW0gcHJldHR5IHN1cmUgSSBh
c2tlZCBpdCBiZWZvcmUuIENhbid0IHRoZXkgYmUgZ2VuZXJhdGVkCj4gYXV0b21hdGljYWxseT8K
SSBkbyBub3Qga25vdyBob3cgdG8gZ2VuZXJhdGVkIGl0IGF1dG9tYXRpY2FsbHkgOigKCnRoYW5r
cwpIdWFuZyBTaGlqaWUKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnBy
b2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9t
aW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Sat Apr 28 06:21:17 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sat, 28 Apr 2018 06:21:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fCJES-0003aw-8p; Sat, 28 Apr 2018 06:21:16 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bkmg=hr=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fCJEQ-0003ar-Fj
 for minios-devel@lists.xenproject.org; Sat, 28 Apr 2018 06:21:14 +0000
X-Inumbo-ID: 2c579799-4aac-11e8-9728-bc764e045a96
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::60e])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 2c579799-4aac-11e8-9728-bc764e045a96;
 Sat, 28 Apr 2018 08:19:57 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=qHGE08cmXCUqXmeV4mLQNRMUxQA102MFYBzgsnEYVS8=;
 b=byJbvRZ4EruMRxsytyo9M9rwBqXXfakUkPsOLBqaQecVm1zcbklqzjcqZz9sREql5dknnOdF2XhvScyaStDte9mzAf1d4VqlrSF/8s5TPMMtA1n0JBk3e1B/N0sJEMGwJ/yiKvsbHPwLjZeiFDrUwCStNhPKfgLLVOKQavu74+I=
Received: from DB6PR0802CA0040.eurprd08.prod.outlook.com (2603:10a6:4:a3::26)
 by DB5PR0801MB1590.eurprd08.prod.outlook.com (2603:10a6:0:3b::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.715.18; Sat, 28
 Apr 2018 06:21:04 +0000
Received: from DB5EUR03FT047.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::208) by DB6PR0802CA0040.outlook.office365.com
 (2603:10a6:4:a3::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend
 Transport; Sat, 28 Apr 2018 06:21:04 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT047.mail.protection.outlook.com (10.152.21.232) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Sat, 28 Apr 2018 06:21:04 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Sat, 28 Apr 2018
 07:21:01 +0100
Date: Sat, 28 Apr 2018 06:20:58 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180428062056.GA5590@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-11-git-send-email-shijie.huang@arm.com>
 <d287476a-07af-ea01-e6fc-c18493f7716a@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <d287476a-07af-ea01-e6fc-c18493f7716a@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(39860400002)(396003)(346002)(376002)(2980300002)(438002)(189003)(199004)(97756001)(59450400001)(47776003)(72206003)(46406003)(7696005)(104016004)(76176011)(39060400002)(23726003)(1076002)(2906002)(33656002)(4326008)(55016002)(476003)(6246003)(6862004)(8666007)(446003)(106466001)(50466002)(8936002)(126002)(316002)(86362001)(246002)(486006)(77096007)(26005)(336012)(6346003)(26826003)(478600001)(356003)(11346002)(5660300001)(54906003)(229853002)(426003)(106002)(16586007)(58126008)(8676002)(6636002)(305945005)(186003)(6666003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR0801MB1590; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT047;
 1:rsH3+m9Gp4m9RfQEMtGvZ6idkGEZtrZXD4iXK+xtA4Ve3AKoA07e87V3nARgNqAS5DsxCEnP7YJ3hz1x4gpIzOMCykH7EIyEJ/Aa16PUPRGNin/TaghrmIJDKrDhe1Yw
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:DB5PR0801MB1590; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 3:oTOa7no8f8fD/MHZB+MA7ne2487OhTX8NRosjz/s7FghOu4p5r33C3w+7yMZW3fZVf/UeuwZCgKnWgcS7gQe4H0C00xiL8oSZYD+XZv4X2hYrLumgZL83GumSr4calbHN/kShcU6PMyMaXAb3KKzDHDn7h3DNPrVVIz3qJoHXBwmRt/vFWS8kZzJGhpRHBnLhdjWJEzzl8KPVfkhiuj27LYumJDyEKjWjBia1f3WgMTnttt8nK9nBaQyVHZtecW7h5zztANueaFMMoxhJHgIS7/CchVeh+ejHq8CouRRxhk8UT6Vk77slZRw82cLVTzE+LODajBDjbh4KmsQROHQtbmKj+x15Eu3B2yFVnQ/cGg=;
 25:sBy3A7lT4NS6w5Q9A43zw7DVYQcnAVlFdB1YC63pW7w3kHkRj7KqSB9Lk0UZNI/aJl+3HVQpmnH6LzoR0D13Dts1Wv7nWf1lDn2iI8BgTYhCYPpwblg8ku9/kHdYs1nIgv9YdkmbeW8ImyTmPfW/qdT70BSl54+iry/DGU87ZSZ/q7a5X+xsztei6z3L0ON7zy77d9CmAUexK+qeQ2th8/jzJDeF7Z3Sf5yP27NA5loVUU7d2NtVjIbUurjG2Fhmsn3rUUW/CteA8QS9XavCZFma4W1T3V7LMMltry/dwTqKkSeEsDWjsPYf4cUseyU65HuU6JOQ4s0JyO5TV5uQeQ==
X-MS-TrafficTypeDiagnostic: DB5PR0801MB1590:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 31:Aq0MA7ayGrPyCkxvavFMxD+Wn7PqNVjMmePufCd4wfIGhhJicQZRm71PlJeWRT77jhmuPjiDaXfQpKPxPsP5JLL5xVxiDMP8+5RYVJsztFtpx8xuqjoZDKxsgfY/ZRkjoOiovJI25nhEBg6R0uzmh0wNvWHtyKAhKREDCrveRsrgEdNrTCTbKWlT+JUBDpHhGxGe0Zv4oTR/AFFQrnbfHpafWdTLxwtjBNGukOkPyJk=;
 20:A6Tn6CKh5h2TF2jDRkY9mIVuy0AN7CK1VV9ibKAWu3KkWEVhmEuTw34HFWDklUmcnyXmvXRjQ08FLP5IOLWzpaWaxoQdU4noC/5UtHcv/r0txmEyV3DkX0gEmy1YdYiC/NSIbEAg19ATkUpsr46JMX67xD913UMsIkMKFFqlkoyDssA6q2D3QSA5kXd8RjpJG4D5TT8OCcuOlKdD/A766Fheb+tIoI00ZJ3CaTiO544pOne4ZCxporKO95FMMGVzZy+WphDhiNgG4FXd/Zhl7bgV6PylzHS4ebcTIkOIUKFQRWpa3+1Wr9BC1+hnR9EWVvadZIhkI/A7nup8iPo0H+dQD0aTWaKsVPCsoG4ozbg=;
 4:tRVjfGvX4r4rT0xq2NtvHVIT0Xg0IMDTsvegS9TGfAFkM2273fSGPKGTiRVUA7V21xd+pXPvi6NIeXkHMSLtD8c9LbR/BUtEY1BTSnKU+cjfO2/0jmf+Jwq0GeokRzZbZ549KfDW4PFm3cqI+23ZrrpQbI3L1t5L+k5pUq+MS0uBcB4suNuC1ME58aEP0VrhOLflLX7Q4O0p/O0nrGnM4YMNJA+iDnW7U0rewBpqUs9DzOAwYRoQPy8+Z3jfK+bHpuQJTwSxItPJ0H+/Ts4tew==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR0801MB15900BB0A48BA72CEF5C5FC5848C0@DB5PR0801MB1590.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(3231254)(944501410)(52105095)(93006095)(93004095)(6055026)(6041310)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:DB5PR0801MB1590; BCL:0; PCL:0; RULEID:; SRVR:DB5PR0801MB1590; 
X-Forefront-PRVS: 0656A4403B
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR0801MB1590;
 23:Mm5Ld97dogJ+amNAQlHCFCjz0+zqU54zDy6IUwA?=
 =?us-ascii?Q?ibb6x+JrFRCPRj2VSKPcCMBS0JK7Ls9FIS4/i6eKH1oIvsrkrBVABLEy2nr4?=
 =?us-ascii?Q?2q19kAhOsZJAdReOl4BZZjVDtstlrqvlSzjfkQ2qUXwQGAmq6UYShX83ekah?=
 =?us-ascii?Q?RL3rkjjZlkuUdtM39stGNV73t9FxoYRuVid3/KlY5Cs4H4zfkkI9I58HSwGO?=
 =?us-ascii?Q?ikcHKEQYMF5DIjCIx43BAjvVfAY9JhG8WgS0WtG7+RB0u7dAu4n0OqSYgId9?=
 =?us-ascii?Q?RSGAc4k377vnMSA0cI9wWQVJEMzHuv2h9B4GFxYOgXD6/0zSJgkiInH42pgh?=
 =?us-ascii?Q?XeKM10HheVXO7NcC33OQHw4e1FZ5lEBLd7Lu2MwITOXq+mbw6X0R5B6Cp0EQ?=
 =?us-ascii?Q?gkXPK9QZZt/SdtjUcxc9ph6QmhTvM4i3o/eSOGz9irH3iWN4eYn8mjqJgxJv?=
 =?us-ascii?Q?iws5GzGdYyW8wj9XnjyiushyBnew+XgxJNc8EJAund+S85SaO/zQOtooeSxa?=
 =?us-ascii?Q?/1w1MYeatodRKlq2Bupzs83qUPhRlol+mtyR99vMgH1Hl81OBJlo9il2l9/M?=
 =?us-ascii?Q?aqB7MiQM8aF5/4gokEW71BU7tbbZx2QjYEZlLiaXBiEf78hgljXeENfQDsq+?=
 =?us-ascii?Q?QVs86uX9BUX5mgYBszMtGST+hum7QGbFhHX44Oc1WsZo2FLRNcs3xgH3UuFq?=
 =?us-ascii?Q?G+XEoW1ikaxhHIvv2CIzRMl3wauSr+ar/x5Ohhv1uZvcEst6pxET07zVtt2s?=
 =?us-ascii?Q?Sz38RycvGgL+ghXSMZ5hacaYFlr4RSpaJWBEIUoNk++veICGA4m5g4IezTb7?=
 =?us-ascii?Q?92bM4kSaUvHA3VEsJAskkqDj3OwZrUX6vetYXJt+NQUioedDw9+8EQNtgr+Z?=
 =?us-ascii?Q?YbnkkrJjT8XsT9sEyTC0/tImYIdEOS+w33UfUpeiTEIS57A1ioEx/Pc+Zngt?=
 =?us-ascii?Q?AjT72XYTkkk/2/x1lsrYy5qjDTFqgc5sZZchW9jMJREcShbccxVE2YxmRbfA?=
 =?us-ascii?Q?vxLMWoW3PT/lxFH/dRHDT4B91iLBJnktIbWXwfDh4yxYvcvo3aOlUpoc/HQh?=
 =?us-ascii?Q?59/wfUP84k2b+1xjxSoJM5jE486HVZdV2ZCtITRTTbML/CT+OFqyABSThbXr?=
 =?us-ascii?Q?GTdkCFBTaGyCRmsLbfZuujxdKezlVeKxGhGy3hPdp5IlhYidQlw+QuxoF7D2?=
 =?us-ascii?Q?Va5Lj0bKxIkQIZnB3e1eE1PXSF+ZI338ZykoF/tZXOTdes7YBh/+GRJd7IaN?=
 =?us-ascii?Q?gK6nViNC2qGPi9n3KGOLxdkas8xo1E2eomJGXrUA+XkiwpV+fUBdLK6yJhke?=
 =?us-ascii?Q?vog=3D=3D?=
X-Microsoft-Antispam-Message-Info: oG9T4RxQ6xl3ZoIHH2B1BytS7VLbm8y27OTjIDs6LQbQHaN8AbZVioOTcNEUglWaTWeYs4g8maXTbec2/F+YKNMUmjMYcptyebzCMGQmUZBOwy8jZQbAF7vrRn3S56WV5kOkg8jXiVamMOze3d3WYlckc4riOBvkkymlFb0BwWYst60ppDjqpCI12D8IqC6Zh8n1CFuCkpK2lquHLA2NPnENWgvGucbuxWVydhovj9A6GPWFHqGTmDtmHBJzyiUYmHYYuF+ER3Sx0E/ZDNMniUijv5KZS1P5ddVRRbPswgD/DSA2j64YfLhfLRQakrEk9zh456lwsQqM0TcgoHP0AalFIO0uS2ahSCP2ngWD+xFifInOYWcLXk0WtBOB336O/UY/EFQhXMrW7if1PtjraB5BX/FaWMHmy6t50Tos6oo=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 6:M0lknPH/jzkzjv5hlTGeh3zQXl3xLbFJuUrLOy0Rn3Bn8/dbVmHFdx/5xuNElDei2YxVn0BZ9Jq2S+OAd7a9ad7z/oxbQrzap3YKOBS0NNy6sNIhc5ZxS++O3kfcH1DxDRerM2iGIkH9OqBYgl9SHMNFEZc865hBNq4vAtYghQQP/Ei4v1x0W3e/ILx7ho/D49Mw5d0HVz3YoEyJs5+A9dgDu5HGbAdn9K9xx9kueFlCBjRqPqTezxjl9Bg0UHiGLGgKAsmOtSdY1zO1dk8IbEhXfpKJOKlCoJTiAR5QHf8G4pY0DOBfq4WwIC8krIZLBf4c3Mqdfd4Vss+9OhmGP8pGrX3R2pFCUdz8iQCMjKydcLY8qcmjc+gU4qD79+imZRBJhbUFdJhWRYvIuDD3D1k0kumjJVQHZBSpPfRknVRWGicUVruCAOjkbZBp3Ce5X2kHUyINXXWlt16a1sunPzkANLdve6F4SiVb7V02Hz4g3TxJNbvBTUdQGAmdOSj6;
 5:e4y7lBaJUlAJKws/6ZPWPTvbmlgENIuq/qdbHEb7BqUpbW5LRa2s962jlwIYtqhFDKszA0146RJW/8+EhINtUkuFFEkDGvKdou5E3yh/61XzAC1OfDW7kCMv2BVKtVV4k5xjkK7mpCej1ezmftLfKgEy+kys0OovixrS1yz/lMI=;
 24:/TWATGPLSZVj7xbjFY2jFIEsvQPFj3zHLKXNuzZpONMxfRp2Z/jFpthgbyCOl//tLzvRbXoQouNLEflPODQASEgQMvKeU3Muh+Qj5mMYqQI=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1590;
 7:gy84dSUFqY6rfbecAg9g0swUFlHfVnalfKW6berNhGRo04sUu3stsmJqxcbh4B4ehqfCp/I45rprK9rPrmaaGE1Iqc0LcBcrbADBCLfHOxDHkiLzMA9vjjph0UHtTA2n6uU4OFCZPCai21Bbl91vSid+5Ovc187wvAQeOsXk3Kpfyde1CHdJ/78zz0YuGlZuhrllom6FR4Q/rw2zThE0dqVT8ifVAMP3DbgyEvkOsSQeCl8Z5LozWHkbsAODA/Ob
X-MS-Office365-Filtering-Correlation-Id: d795dfd7-0c4d-44bc-edf1-08d5acd0389d
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2018 06:21:04.3498 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d795dfd7-0c4d-44bc-edf1-08d5acd0389d
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB1590
Subject: Re: [Minios-devel] [PATCH v3 10/43] arm64: add exception support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gV2VkLCBBcHIgMTgsIDIwMTggYXQgMDY6NDg6MjRQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+ID4rICAgIHNhdmVfcmVnaXN0ZXJzIDEKPiA+KyAgICBtb3YgICAgIHgwLCBzcAo+ID4r
ICAgIG1ycyAgICAgeDEsIGVzcl9lbDE7Cj4gPisgICAgbXJzICAgICB4MiwgZmFyX2VsMTsKPiAK
PiBEbyB5b3UgZXhwZWN0IHRoZSBtaW5pLU9TIHRvIGFsd2F5cyBydW4gd2l0aCBpbnRlcnJ1cHQg
ZGlzYWJsZWQgaW4gRUwxPyBJZgpBdCB0aGUgYmVnaW5uaW5nLCB3ZSBjYW4gcnVuIHdpdGggaW50
ZXJydXB0IGRpc2FibGVkIGluIEVMMS4KSXQgbWFrZXMgdGhlIGNvZGUgc2ltcGxlLiA6KQoKPiBu
b3QsIHlvdSBtYXkgd2FudCB0byByZS1lbmFibGUgaW50ZXJydXB0IGhlcmUuCldlIGNhbiByZS1l
bmFibGUgaW50ZXJydXB0IGluIGZ1dHVyZS4KClRoYW5rcwpIdWFuZyBTaGlqaWUKCgpfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFp
bGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3Rz
LnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Sat Apr 28 06:27:17 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sat, 28 Apr 2018 06:27:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fCJKG-0003nm-3q; Sat, 28 Apr 2018 06:27:16 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bkmg=hr=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fCJKE-0003ng-F3
 for minios-devel@lists.xenproject.org; Sat, 28 Apr 2018 06:27:14 +0000
X-Inumbo-ID: 02bdca55-4aad-11e8-9728-bc764e045a96
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe02::610])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 02bdca55-4aad-11e8-9728-bc764e045a96;
 Sat, 28 Apr 2018 08:25:57 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=rzaW3l+CdHgPBi3mYD9zLFscWWCoQvi7gZhYGxLBxq0=;
 b=sLhiGYTiwwB2khtN8MDYGPWKAExiLvgO0JmxYiH4jytXaQgy55KzWz62tICqwOsiIjBj4rtdKT0JgNXLRqctXWVGWM30eI5rh2zPOnqM7ojFQ8apyhGBmOiFGPkVt/C7XHZn0VddYXQEwbOokI8Iz0jYTuote3r5J5A+hlISCsk=
Received: from DB5PR08CA0018.eurprd08.prod.outlook.com
 (2a01:111:e400:52c3::28) by DB5PR0801MB1589.eurprd08.prod.outlook.com
 (2603:10a6:0:3b::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.715.18; Sat, 28
 Apr 2018 06:27:06 +0000
Received: from DB5EUR03FT045.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::208) by DB5PR08CA0018.outlook.office365.com
 (2a01:111:e400:52c3::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend
 Transport; Sat, 28 Apr 2018 06:27:06 +0000
Authentication-Results: spf=pass (sender IP is 217.140.96.140)
 smtp.mailfrom=arm.com; gmail.com; dkim=none (message not signed)
 header.d=none; gmail.com; dmarc=bestguesspass action=none header.from=arm.com; 
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT045.mail.protection.outlook.com (10.152.21.164) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Sat, 28 Apr 2018 06:27:05 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Sat, 28 Apr 2018
 07:27:02 +0100
Date: Sat, 28 Apr 2018 06:26:59 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180428062658.GB5590@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-23-git-send-email-shijie.huang@arm.com>
 <58b1b6e0-9aab-0fa2-25d6-8405a7bcab22@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <58b1b6e0-9aab-0fa2-25d6-8405a7bcab22@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(346002)(39860400002)(39380400002)(376002)(396003)(2980300002)(438002)(199004)(189003)(7696005)(186003)(53546011)(106002)(126002)(336012)(476003)(86362001)(426003)(77096007)(4326008)(47776003)(229853002)(76176011)(16586007)(316002)(5660300001)(356003)(54906003)(58126008)(446003)(486006)(11346002)(26005)(97756001)(33656002)(8936002)(106466001)(246002)(478600001)(72206003)(23726003)(26826003)(305945005)(8676002)(6636002)(6666003)(1076002)(104016004)(46406003)(6862004)(39060400002)(2906002)(55016002)(8666007)(50466002)(6246003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR0801MB1589; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT045;
 1:2fAEjrm2U9Y38ONk8hAIBHUqVdP20TsUjahHRfVutbLkySRiw3tC7orZVYVQ2AV8SIxGFQCfWRP5gFwGUwVl/WNVTjOlMWSpmMz82//0XIdrgadE7WJ3vleGqCruZfoG
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:DB5PR0801MB1589; 
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 3:G4haq87M1A6AGP0HLqdz2R3fJW+iLghBbUiSf1EVJkdXUanlEkMaW/9uTFYalJdu8vh6F+Myhu1bjn4JadoTXbNM/WL5I88bu7RPe4tVaBt+JGktFcE4Jux4DjbAjboMaBPNuyr99YNM9tMQyhp9EjdnEApaoK+y2XIA9xxtinBh0JtDh/GcxyYrnoPe5XxOiqlRZKZC1HeLW1GOY1uC/vG8AtYvj89LrfqwW0Mmr+i6refP1GcW7aE9d53XFu2WJV1wF/DB/ybdI92dTm+rQX4KTST8gxHIAoCjXISvpUjV2CUhmOa2NOlh7qy6DJGUQvZ8cQ2WS9AGCZl+GJsK53nUFkjH+J7UA+Ktr78Yeiw=;
 25:Tmmnpw9GemwAGek92ftij1UAzYH1A+pWH/6Hd4ycNbuFDcnQbUSQjzyJ7hiz5CIMX6dTl8wMQIT3FyBhlGFGZVRtq5QErXITVCMZkCbRj8h9LkDKoUg1S2Aqg8i/HA5FA+z30fHl/CS3BQVNiS9IPqf1jzDwbjmDF01Ivu0KrSXzMlDjJt5dSuGlT5oo9q5g3J3eRt2E2sjUpmp2JkJjTlunwziVm9M+TiIr/lD0n4m/XQosGjmlPc12Pn2jU6AjB/+o28lJQEgtvMxfUWcJboNcGmsb/K+gJdyprx+/Aw+HyyCicj2I8qlSw65KPJOji666dDSq+Ys4xQGHbK1UrA==
X-MS-TrafficTypeDiagnostic: DB5PR0801MB1589:
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 31:ncIucvV5A9sBFjmOMELQP6A62LV1+jxgct23vXwg6CCXgyY8vMtQ7G7BtG2EISYMiNPtbjEWxEiX9ZnWGIWN7AXe+JMfhyhZY4Oz2C7UFoWvqPWtjCEXOugBqDlDsTisqjIjBNlycryCcZIppUMX6XG1J8jcyKIVvqUPl5ayzUMolZF51Wennk6BiYMGBM/oGyPPrpKJiJdMeDqIWk6vzRDtBxR+xlbI4lNfV+IOSw4=;
 20:9tUR1DFFdU+usZzLgEHbrBFJi0FY49TDRdQIAsrrHYM99+tK8tyFBmDgl/aelIJCPIYb+8J/UFpbFELy1bhT5F5hPEv6qM28KVRQzgxZMuQdnAp4rznjvAKhtBXYcov5EmhFzOD5L9tSZ6wpatZia/DIAhe0qKqSffrVabHBH8mwxNhpMwVQA1BSHYCvawvjMdUmHgz6sTiGLCbUFs/J2PfV25LVA/5PopI+xZ6CgwMn3bRuutZ0U7/FhdA7GadDKyDTOCnIjN/lNswB9KFEehWgDKTMYTggHb+DkKSOzAry1Bl3g+7IOEGFRW4tJw1KIpCX7CeMROplgOb0UZN0+2bnjoEXo042klPL5GAotWY=;
 4:8sB01mg9U5G7lgktzJ6VrTSlayM1jme1oelfBB2u36LmQLGC7+IJJQb7fX1pCd+8ut286ZNP33j9ZJU4PWtXlTLpMk8goF8xy5g2mSqOmdmbUfKaqz/7lL+r2Mye3tNup5fnpsPYE7AeNE3yw7XXswy003kL0upTdIqUBSpsE7s3yTEGQ7fJ4WuNlbbgwBTiWZxUW6nZOql7fNce5NPcWpTQiguzBirIrWxNsgjykN/0h3lnmX9XrX900cPzg281V5rT4N2BaPLye9845W0LS8/xwTYFmUME1oJCoosp6obbwglGPkypnA4RDUrwEHzt
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <DB5PR0801MB1589691D249DA8870D885C33848C0@DB5PR0801MB1589.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3231254)(944501410)(52105095)(3002001)(10201501046)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123562045)(20161123558120)(20161123560045)(6072148)(201708071742011);
 SRVR:DB5PR0801MB1589; BCL:0; PCL:0; RULEID:; SRVR:DB5PR0801MB1589; 
X-Forefront-PRVS: 0656A4403B
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR0801MB1589;
 23:kTYw4LqJ2/LT+8JBTJsRuVcDwxk6orCcVwgGTWo?=
 =?us-ascii?Q?VzoRpj0SC0EF4CWRzMwuC/M7CnGIg5kLlvu6dx5bKxv1ppujWkGIVBEn9rsF?=
 =?us-ascii?Q?6GBvl2Xt8uGAfmqY4IoiwkqsaxlYzRfCYr0NMPO2auD2hWPlBKPritl+1cAO?=
 =?us-ascii?Q?tueXjqq/dL54ixDcZgYRi7uTVUMYh8Gi62Z7es7My+e7+8dWSAIP1cYxEQlJ?=
 =?us-ascii?Q?KkpuPP7xIUWx6/I4Hzwd7BhtMvkdosfVWffk5bp6uWgluIehYb2v4B+cs7w+?=
 =?us-ascii?Q?+svWA9maHvgZJga/TFKYIBmxS7DpzWtrGfx75wyTf8Pjt2C2UuYISpeVxv3Z?=
 =?us-ascii?Q?FwQRV0eeVsQ6mmT1Y56HJBU4eC3WW7drJuyEcRLcCVWt+cddrKvFZisjMGZ2?=
 =?us-ascii?Q?7TlWMxf0NPR+L/oXoX/10vrX/9NMPZ6GDWrYEQWX0/JM47Ac8xtdxO3qM2OF?=
 =?us-ascii?Q?NrycB8T8dawPzdZz41f1B+W0JRZuMDDmHEEwJ9DjtBRC/SfXjRfZwtFUI65j?=
 =?us-ascii?Q?yv8wZenC/eFNV9kc6FfsVC3j4irw+PGHzBKl2ZM1cMDCv2YfN2c9j/OjADuk?=
 =?us-ascii?Q?axe0jAGJhoS8Gpa+RFjC7kq1Yow/JmFHSTJ4E1wABfCu5rFF0oLI2Q7IrZVF?=
 =?us-ascii?Q?ccirKTXmCVRnEzvec1TfHd53ohWbqRR+7rdSctLZa29tfHWiNe5Vz3Z/E9LT?=
 =?us-ascii?Q?vN5RWh/yUB/b9rRq6qFOT7VBpjYM0M0YYUGjSahsQ1CBFH2XNYgpSbTwmNXh?=
 =?us-ascii?Q?ooTrAvVSN8lagJK1U8LlUZ55yShjKljskZMHK674v3iVFNcKc2ZJaF5T6VOU?=
 =?us-ascii?Q?3CpMKBubzyNiAXJOdQ/ffRkqp9IjIi0mBMAdHuvvmLrp5J9YL9dCwIpTDwMN?=
 =?us-ascii?Q?UCQqL1/Zd6Euh5SnK+eDDYcPEBYY4DtpuPJ9AqPc6YosQH9X8zkaTThLslwS?=
 =?us-ascii?Q?g2FxRyD6wzVS62SbCUwvm5kCVo5u16soYyK71yYd5K0tYzcFEkFVadGGdia7?=
 =?us-ascii?Q?vy8fvvqIWGJdSWFMbz5Q4t0HDKp3V9/X8wlObNDhRc6AwxuKg8JbxZGAR5Rc?=
 =?us-ascii?Q?nUAjrlba1SI/CI1KTN+taACxYUYQHNO9212+kq5BfzlrGMeNQRt5jCvnCfkU?=
 =?us-ascii?Q?tRmIIi8ZTaMbI4MCb71Iivhhlpz2m10A7EkPHVyd//yDDjCNrtqTbkrUgHEW?=
 =?us-ascii?Q?iSV87b6/0r1nnjnWEp6aU3qOow1KVsyk8epTnvLAbCqeGKvbxiEifdrTKBaL?=
 =?us-ascii?Q?d96ornaUNixEC4fLKSr/YWgKKHdbnqDKC5JPshDx5?=
X-Microsoft-Antispam-Message-Info: HB35vmfZze6izfqILpdwOgYM4KeECo5EuB9IFBJ3cEZHuwpenpGPOI8jRqkaQsgCGXfTPuBTOEsbeU65Ps+vUQHcXbGUZhrlkqkUi4aI2l7dohzyYJ9e7bIp4QXOkz3TMdulTzG7Rbri+sQ0YgynNfphIT3B33D1e55zULdiR7OqGuv9w+ICqgmwd2/B+oVyOOAtK9LMeH6jPkYbXMjiy0+bIkPCMX2j1hBSO9JJEq3JoHSjJ5sSKmW1qRIWsQekvtbVCj1PVO9BJvvf6ZvHbxmYStkSvaYp0mQTdYYco6u4JpKDHsahGIcVsFL+m0SRdXni9f+ZwXxOtnhRlFatBOg90CUkaVbSAYfFaay1sPR2aDyJ7IcLeGSTgGCYxAnG7PRW80ap94UqXQN37uebpM2bkOrNd1bnLOVrdeD8q28=
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 6:eU10up8vYanWYrJVGSHQt2O5EY93fiizO7pfiaxpcNeOpYPZKzrwrIaRlse5uryHii+ksMar6Hm4MWABuClanXDVig0xIDbQnB4cdxxTEEJYqbmf2TRn57SA8XdSTXZb1y2+ZfOkXC+8B5lldQ7OlayHosgSzuGXcAO6nQ/uAOWBXapKJTPnrzTVAdkmvFHb22Kpur3URfsCQrI8xFxpS0H8yZ8toyQkv+y4DVYHQfDDNldFoj6DIxV2cXtsEz4E/wvZwaI+S4aTWZoWWDWTdth2GnIKIh+5TZjYLoAuwZbZ/VB5YKhHf8Kxmksh5VTmGDmHt+yEFip6uunkLZfG7MTemBaIJVRiX7PV8S0yTlWowWCx8K4VCtbb/A/IDdsyGyTdP5xUHD5ZTwFcbzRXL5/z31JAQKY7N9eno7hmnTZ8I8mWrDDzc7Xc9cp5GLn1cVNRW1XswHU0ugd3e8uwih3wsrufvLV3fZrVJsoN5fULdC3mC5+nKeKHNu6YgciT;
 5:5T+N5LORJeMF4SKa+8PgidG4qnxFRdxSoQuI6DkiBShPnH3CD/CECZnSZMwkW35a9vMxFJCag8O2k+GqXhDd8ZMBGiOf4ucj/QGPXMoffCcSdWPGaPhZ0O4dtNH+ydg5rF0tryeu+aNy4fctzQ8jk1tjzJmOTzlRIaOBSmngX2o=;
 24:YoLVCs6l9QORrUO+IUKAqNPuHHDlk36r8Umh/NcpsBdcd0U3EoJOBGtV3+gEzi164lg2L/H4JHu714q1Kr8v2I+gBR/Fil70Fk15P5JNrck=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB5PR0801MB1589;
 7:Sbg71Iuv6N3nRsqZOBiaD9kyy0fuhhNR8z8j46pd1+OTYejEHmLqe+rZSPeEJF3jGtEG0xx7L1vJU+Hp/XyWmV+xXDhTdySZw1g76zqOhh+w3IRyKEsswlTyFP4gKtTwZvDWy65e9FfZQhpnU3jaV6pJaO8AbVpcJL1QPSshxKpC9i87CmzyoNkmzS0wNqdM2D8dDN8ssHGqTSOaPu7ImfsXxxcEa9LcMKg5aC/cKVKsFalrUnT4QRrZ19zHsUbA
X-MS-Office365-Filtering-Correlation-Id: 959433b9-26b8-4e68-d895-08d5acd1101e
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2018 06:27:05.9204 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 959433b9-26b8-4e68-d895-08d5acd1101e
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB1589
Subject: Re: [Minios-devel] [PATCH v3 22/43] arm64: implement the
 __arch_switch_threads
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVGh1LCBBcHIgMjYsIDIwMTggYXQgMDE6Mjk6MjRQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpIFNoaWppZSwKPiAKPiBPbiAxNi8wNC8xOCAwNzozMiwgSHVhbmcgU2hpamllIHdy
b3RlOgo+ID5UaGUgX19hcmNoX3N3aXRjaF90aHJlYWRzIGlzIHVzZWQgZm9yIHN3aXRjaGluZyB0
aGUgdGhyZWFkcy4KPiA+VGhpcyBwYXRjaCBpbXBsZW1lbnRzIGl0Lgo+ID4KPiA+U2lnbmVkLW9m
Zi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPiA+LS0tCj4gPiAgYXJj
aC9hcm0vYXJtNjQvYXJtNjQuUyB8IDM4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrCj4gPiAgaW5jbHVkZS9hcm0vYXJtNjQvb3MuaCB8ICA0ICsrKysKPiA+ICAyIGZpbGVz
IGNoYW5nZWQsIDQyIGluc2VydGlvbnMoKykKPiA+Cj4gPmRpZmYgLS1naXQgYS9hcmNoL2FybS9h
cm02NC9hcm02NC5TIGIvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+ID5pbmRleCBmYTM0MDZmLi41
ZjU1Zjk5IDEwMDY0NAo+ID4tLS0gYS9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4gPisrKyBiL2Fy
Y2gvYXJtL2FybTY0L2FybTY0LlMKPiA+QEAgLTEsNSArMSw2IEBACj4gPiAgI2luY2x1ZGUgImFz
bS5oIgo+ID4gICNpbmNsdWRlIDxhcmNoX2xpbWl0cy5oPgo+ID4rI2luY2x1ZGUgPGFybTY0L29z
Lmg+Cj4gPiAgI2luY2x1ZGUgPGFybTY0L3BhZ2V0YWJsZS5oPgo+ID4gICNpbmNsdWRlIDxhcm02
NC90cmFwcy5oPgo+ID4gICNpbmNsdWRlIDx4ZW4veGVuLmg+Cj4gPkBAIC00MzQsMyArNDM1LDQw
IEBAIEVOVFJZKHZlY3Rvcl90YWJsZSkKPiA+ICAgICAgdmVjdG9yX2VudHJ5IGVsMF9maXFfaW52
YWxpZCAgICAgICAgICAvKiBGSVEgMzItYml0IEVMMCAgICAgICAgICovCj4gPiAgICAgIHZlY3Rv
cl9lbnRyeSBlbDBfZXJyb3JfaW52YWxpZCAgICAgICAgLyogRXJyb3IgMzItYml0IEVMMCAgICAg
ICAqLwo+ID4gIEVORCh2ZWN0b3JfdGFibGUpCj4gPisKPiA+Ky8qCj4gPisgKiA9PiB4MCA9ICZw
cmV2LT5zcAo+ID4rICogICAgeDEgPSAmbmV4dC0+c3AKPiA+KyAqIDw9IHN3aXRjaCB0byB0aGUg
bmV4dCB0aHJlYWQKPiAKPiBTb21lIGRvY3VtZW50YXRpb24gYWJvdXQgdGhlIGxheW91dCBvZiB0
aGUgc3RydWN0dXJlIGluIG1lbW9yeSB3b3VsZCBiZQo+IHVzZWZ1bC4Kb2theS4gCj4gCj4gPisg
Ki8KPiA+K0VOVFJZKF9fYXJjaF9zd2l0Y2hfdGhyZWFkcykKPiA+KyAgICAvKiBTdG9yZSB0aGUg
Y2FsbGVlLXNhdmVkIHJlZ2lzdGVycyB0byBwcmV2J3Mgc3RydWN0IHRocmVhZCAqLwo+IAo+IEFG
QUlDVCwgeW91IGRvbid0IHN0b3JlIHRoZSBjYWxsZWUtc2F2ZWQgcmVnaXN0ZXJzIGluIHN0cnVj
dCB0aHJlYWQgYnV0IG9uCj4gdGhlIHN0YWNrLiBBbSBJIHJpZ2h0PwpZZXMuCkkgc3RvcmUgdGhl
bSBpbiB0aGUgc3RhY2suCgpUaGFua3MKSHVhbmcgU2hpamllCgpfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1p
bmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qu
b3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Sat Apr 28 09:34:18 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sat, 28 Apr 2018 09:34:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fCMFE-0008OX-PJ; Sat, 28 Apr 2018 09:34:16 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bkmg=hr=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fCMFD-0008OS-RN
 for minios-devel@lists.xenproject.org; Sat, 28 Apr 2018 09:34:16 +0000
X-Inumbo-ID: 22cfe6b4-4ac7-11e8-9728-bc764e045a96
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::60a])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 22cfe6b4-4ac7-11e8-9728-bc764e045a96;
 Sat, 28 Apr 2018 11:32:58 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=f5Q+OEmyo6SNdKAt7W/iMR6HaVZsjyjDJBn7NjsjR1k=;
 b=Bo1WZOkQZGttzkf9KxqBpYHEY5krAuoxDdL5G4xX/SMgsQaK06RyIqgs6nfwxtLPXER+rUWfMEpnMVpggpzPjuz5VGGMiQWtDYoKP1ZVqFEzGEvEiLBEQoCKxtlW+m9eHdbY64v70bwQMrIuSiIzI+eZSC/CWv+i8Sjsh4uRVhw=
Received: from VI1PR08CA0236.eurprd08.prod.outlook.com (2603:10a6:802:15::45)
 by AM4PR0801MB1588.eurprd08.prod.outlook.com (2603:10a6:200:3e::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.715.18; Sat, 28 Apr
 2018 09:34:05 +0000
Received: from DB5EUR03FT063.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::206) by VI1PR08CA0236.outlook.office365.com
 (2603:10a6:802:15::45) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend
 Transport; Sat, 28 Apr 2018 09:34:05 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT063.mail.protection.outlook.com (10.152.20.209) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Sat, 28 Apr 2018 09:34:04 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Sat, 28 Apr 2018
 10:34:00 +0100
Date: Sat, 28 Apr 2018 09:33:58 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180428093356.GA6078@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-29-git-send-email-shijie.huang@arm.com>
 <348f1eec-b5dc-d990-4e37-a0616ce88555@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <348f1eec-b5dc-d990-4e37-a0616ce88555@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39380400002)(39860400002)(396003)(376002)(346002)(2980300002)(438002)(189003)(199004)(126002)(39060400002)(104016004)(336012)(229853002)(8676002)(486006)(426003)(5660300001)(6862004)(8936002)(26826003)(4326008)(6246003)(478600001)(59450400001)(11346002)(446003)(55016002)(8666007)(476003)(72206003)(86362001)(77096007)(33656002)(356003)(50466002)(6346003)(47776003)(186003)(23726003)(305945005)(58126008)(1076002)(16586007)(53546011)(246002)(54906003)(76176011)(26005)(106466001)(316002)(6636002)(7696005)(46406003)(106002)(2906002)(97756001)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR0801MB1588; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT063;
 1:sxhamccDuSB1EWaPVQXh09/HwEcFpl6vRrGeLt3lzpqobW6chCzHH58omDrmB+mJfzcv5omWjWVSCQiV1+qf9Gyc7xRik/6mynSuOPLhUvCvO4J9H7eJFeOmLEtWWid+
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4608076)(2017052603328)(7153060);
 SRVR:AM4PR0801MB1588; 
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 3:NEUP+6qzMVufBa7C2Z2Ss41Pb4yG14hCmtQ0m5ZLWbKWsmQLpq8HqMFnJvMFL3q2XhG6zYVJRVGUyeqbiD/XRJUl1VeVVK5f64j2i4A8lfI6CjyHktwvvdDpY3CXr56hiDTw5WOnz0OCqBEwGpmAbUvqBVsBsyUW+mHAfsNENsrZf1QMJv/OGkL5wkJK9+TCWMsHVY0QUf1AKEaffLphxrg8JEb5vFKq9n6Ber+lRoO7CCQ8Brn3ggfAxC3iBoovv1nRKDPWU+B4w5DuS6UwZaYmRPQnYwtEfRyy4L/S/P5BBBJYN+8uKBXhIgz8po+XrboVAY4ienohW37Tm4vfxbVh+MrQdhabhQz/Z6JkfWI=;
 25:SKmvdee/iofiPYrS7hp2y0iGPI6EVT87X3D25DyZPRN8k3aYzlFXVYqh7Q5M6BdVw2kaCNXU/s8Ky5IRZNQZchnQe5I5JX87rcGzMqgWALhVRI9PyipTkMqQn3oKdnWV06tktlhLK1ta7VONSoWgOB4Depiv6q9X9p2tHKPWA2FDQJzx+3+a/w+wiNdg1sfhAuqcZq+ZV0Awm90tPNCpuyXLTf16DL9IKM+gYrquu0Vv+b62MZZ3DDMXPyU2razErfKR+xL2OXip+77eVj8h3QYw9Mwx5Av+OatrSXNUEiGDMzJ+kUoIQ3uq3/la81rrRXv5/VRZ91m1UfWR9TY2Pw==
X-MS-TrafficTypeDiagnostic: AM4PR0801MB1588:
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 31:j/DuDcv6WnHkCpbwiz41cEmRR4oPtd6iIsCci5eoigeVWap0bCH/lG3PHwOG6aXzDUgzMgMaPA3aGdLKWH9f1gz/+lMEFWOPbKq+npS6G8vycfW0jFg+l9dGq8oRXVI2ThigROt2a7WuZ+NYQIBbrP12C9PDNUHMwLB5NAjif5qAT/IbssuN/pW5yLhKA/G8IdaKIwZjWeyHKYJd2Z3Gq/lY0C+uCxImbOBCc+U8y84=;
 20:Sef9aQs22R55iwI0ONJtRjoWqKcXxZUPvCFvrM7ro1P/02cHl/dnYptCDrkbDdIfykltciwrWlSkXoTKGanHi7YPKMgDC/JBigI1xuPxs0zwiqQEIhJTrlePmkWF3I/Kl40yRbMAS3yUH30z3Nj/LTUZI2pSG8uuMJOQ9gFU9Oav/TI2UKEjUUcdhXTPJYS/deoklbU0dwWNKAFynSQHFLDqphtZxfcb4KhFlLnIbiL1p9sMSGx9RY8MMtCQ/AvpeHBnrFvbWs8/Y9lJTJZdrx7jIDXDftG71hWLGGFwj0PlMNsyt6v6Q4HZFhALmnics3sGkLuwSiT2IK8Om0A3VKN6vU6w/lJv9NJPO9UFnMI=;
 4:wszsjeERjYaDVZ0LRtdEaXOgTs1ouxF3E63OKjTt2cczVwyyYNWWJb07ZbfOQmLJoNugxeDCw/NvIoVDn6Wsb+hTP988D/Q3+CYLa5GYJPiynxnVTGzBFGBatrOmqA5e9F+KPyHjfZAPtabbadYd+Iyad3c6G3faIcRmkA32q49mYJSzQTPR3Nj1Vp36XIhCTGNqlOBpgwUym8Os3nK1Nn7f+9B0krhd3j8yRs1zU+lNEG+0OVKsT6BPtiHg9gQU0gT0N0kVT5fQPlqamHQKb4+VaTrYSjRsvh8/j5vmPPCxfdzCHzuTDfnuhFWrf0NL
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <AM4PR0801MB15885A131765AB58733BEF9C848C0@AM4PR0801MB1588.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(3002001)(93006095)(93004095)(3231254)(944501410)(52105095)(6055026)(6041310)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123558120)(6072148)(201708071742011);
 SRVR:AM4PR0801MB1588; BCL:0; PCL:0; RULEID:; SRVR:AM4PR0801MB1588; 
X-Forefront-PRVS: 0656A4403B
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM4PR0801MB1588;
 23:ixM7HvLq8rUDkzO2pkaYLWLl7sd7vu4QAkZJkD4?=
 =?us-ascii?Q?4PyMAF+jwLgDf/5gLA2XGEGc9AgXOGE6mGfeGZfEQZcx46MuOZyRBesBq/lW?=
 =?us-ascii?Q?+WbU5kFi17E/f8BBAgGDpqpgJ+dAsbBrNOxmEHmN/VyCqgF+AZ1S7LjOUomd?=
 =?us-ascii?Q?PaCny1nY9ijGm0iOzsH7lmcATWJ+BaV+i4Hws1nNLUtVjN4HaVjiw24tp7V5?=
 =?us-ascii?Q?HyHVP59/K5LVP20yb9acoAEnxxzcfS7FqFfHB4CCLnmhpNugCrdjUqLZ73CX?=
 =?us-ascii?Q?rpdm0Kud/pNhbFlN8xpNircUYjV1rF3PrExID98/zPcH80RHFNsaiBOSa1cI?=
 =?us-ascii?Q?x26jEEOvZzmN567fj3JDQJodADYtYVoS/4+KKFAyoaSwnaARFlFPXUjqBVNi?=
 =?us-ascii?Q?PtoWNvKDNkJydVyGGDvKZ0IjLyfCNF1lrmXht+/FCV567e7kzCav/0WRD+oc?=
 =?us-ascii?Q?zRoV5Lm+4kQjTHkftCki0SB+Z/sqxW2nX5O1fx/44gVmpjs9BSiLbKHPn/dQ?=
 =?us-ascii?Q?MU5yaHSAkuT5QW+vmKLVhTRouGxip5rk8j1f869ozMXMfdzNlfoEyXOlYc7Z?=
 =?us-ascii?Q?qkp5nMRPDkejsZtXqX1XXXaWALVz0B+GeyH0x1ePOq3JBa31vKklLwt9JRMr?=
 =?us-ascii?Q?c4T0rbdcrWyck6nYyX/PEqG58tsNja2aLcsm0PnSvemYS7H3Qb5UvzXQyWVR?=
 =?us-ascii?Q?SBc6QF5g3QzMpowtULBMN2z7I1uXnNMajLy/EdMX3xAYDpxTFmLqK3uxtkhv?=
 =?us-ascii?Q?OC1U5P0TgTViQDLD3ON700mqVq4XcMK6jRrRYS5bsikjI2FcnI09Hczm+ZlK?=
 =?us-ascii?Q?jnFWRwNwVMUtUV6YCuZtbQ0MBpdtLSPO1oSBGpY07ejj6MT4E93/O+BpBOVb?=
 =?us-ascii?Q?oU5byO0/XLuQyRCQrhFLcafpPP414w97g9cJYBy5xpH8Rf9XEi/xOw3VDipW?=
 =?us-ascii?Q?c82Q+fdd+RSB424+ScmCocpj0aZyI56rhwAFVBbKkx6u3sIF24vrz+H3I474?=
 =?us-ascii?Q?Wasfe+b7Ob91E0/ufBvX8rljBHtMabfGfE/oQRJr9305nyELzvRnryMHQ7qG?=
 =?us-ascii?Q?oX2nY8L8vuxtuaTf+k0JFHLD796qNedgfTA0AnDbQVgv26bTOgCvbE9YCKGv?=
 =?us-ascii?Q?/ci7ZG7amt85phQEwoAZJ4WjKd0u7gBdKlVRux/MBESpffAQ33/YAFvdqJAv?=
 =?us-ascii?Q?pSVDkSJ8kUiYY9+Nw8/tYzxzta3bbIIWPr3hu4hbDkW5sq2FxcsR8raS7Z5S?=
 =?us-ascii?Q?0xXTj/5/KNLpIVlMZVkDBVKd+1K9KBoT/wLS1vXdWHptIWBwwegwTHP74Wfc?=
 =?us-ascii?Q?Ubg=3D=3D?=
X-Microsoft-Antispam-Message-Info: Dkpe5Da7d2BSAZeDIXnZf8mgf7CGJcQPHWqd76Y0AQMnQqmOqjEiZ6V4bFrOPdj0GCR4QSNeV5tBbV9N0kNOD7beVCUNH/gV5sERWDTG5M5vnSzvO2jBEVdqhvZmaPP+2nI/AvaNOqaFmFyLHB4fl/jHcfy4ooUTnupGh35rwHMuUf37fEW6jd3m+XX8spYMY3jtTilDM/d8os00F77bpEMEbFy4V88Aujy+u6rOx4fmvVYNY4bMpsvipMN9qRR6E5phl2yT3IzP0LQMV9MooOI86VDrupQ2ID2MviOsbno7Bk6xhUr9CQ7TgKa++PHhUJxOzS4AQ+YRIbtfCN5flqgVsgZg0bYVXV8bIFkh7f/QnAJOApsnkG3VhAoqQApf94LrMx9fGS0qb7VgiCxUTR/LIkXWrYQylPyzs8klL00=
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 6:D68HKhXbFSCBSZPLnjHEpkq+d0N2iaZkLMDj57mYmf3ObDSK1Clni0fLnAWGnndt3fd2WKGakWWmLif4RW4qeEuXEycYA5S0Av0Tp21t5cu1pdNitvJvK3rZT6KFtzCXDvidQ2sVQNgct9ka6h0OSM6VgXPnLVHdmQyFzlgdqjEFmWLO2kw5EdkFrNkRsrXeGDfgju26+/xZFgsXlhaRuTfupCo296PO8foMjWj2Xd7/GI2yYEcwOF35xDRFtRhIU30E/3IueMcKfp+jFLdUGVtgcB4xdjWl0EMJQVooJABR+syv9W87GAXJSxZ62M1RaiHCbT/x92+XTI+HhLJQOrOQhyc1aenuoNk/1vliXH1LSjxZa70VeKsdG/RFRKcgod27slZimTNACHDsyKEYEFulDTwfUV6iUJhNnU08H/aNupT5IdRvWB4GnWzq8BPXLRcVZ8SyIB4gjlFrRRRj7YTybP3cHUp36SB5RhKTr0meCZgwW6SFzyEUfGddEPqF;
 5:tikOpZemV1GqBdfAIp+XzlQvB3fYoTmfWcOYm7512W8HSLxg9Uu7a3l1i1BRJSz0e1eZT3dlnRnGw2UW4136T7qQxGOplcRKJ1WPKzVC9WxG2Uo7NyC6cbq6TGMJfXHAijj8C3LirU8OsF6mbs9gyBN+LhgB54xIUogRecu8VP8=;
 24:m2zPIn9Q1t3ET4uq142IaYNGBATBmgoLsTLruLJnvCieArcSnAYcHEgGDzKPRDpoi+CzOz1Ps/+/TZjH757miwLAkwGmIHqYqUgE1Bd/T4s=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; AM4PR0801MB1588;
 7:KPbYZiT9NPkWsRiUuNE/kL4+J+Z+Z33wiXxr6Od7xcu3tKf/LnU5cHUyr60Er3CaaejSYpMfzp4dmcNuz286iHKkPbObJgjMeJPie6DvRdbcU4JJ8YI7brZ4/npWowJ4fX0Xvtf9LuABpXs7vxTklNs1GgCD8a9/ujgOHq2yhh/u7EkPXpeGA4AALznQ352EYnD/C/0PWqpRgNgDBtGDpdtLE7ss842FpFsk5QQ8L0jTgA8DlQTgmuvhkcSukJKG
X-MS-Office365-Filtering-Correlation-Id: 6109413e-d17b-4166-49d5-08d5aceb2f07
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2018 09:34:04.6591 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6109413e-d17b-4166-49d5-08d5aceb2f07
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0801MB1588
Subject: Re: [Minios-devel] [PATCH v3 28/43] arm64: init the memory system
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVGh1LCBBcHIgMjYsIDIwMTggYXQgMDI6MTA6MDFQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE9uIDE2LzA0LzE4IDA3OjMyLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4g
PlRoaXMgcGF0Y2ggZG8gZm9sbG93aW5ncyB0byBpbml0aWFsaXplIHRoZSBtZW1vcnkgc3lzdGVt
Ogo+ID4gICAgIDAuKSBNYXAgZXh0cmEgMk0gZm9yIHRoZSBmaXJzdF9mcmVlX3Bmbi4KPiAKPiBX
aGF0IGd1YXJhbnRlZXMgeW91IHRoZXJlIHdpbGwgYmUgZnJlZSBzcGFjZSBhZnRlciB0aGUga2Vy
bmVsPyBBbmQgd2h5IG9ubHkKPiAyTUI/CkkgYWRkIGEgbGltaXQgdG8gbWluaS1vcyAoYXJtNjQp
LCBpZiB0aGUgbWVtb3J5IGlzIGxlc3MgdGhlbiA0TSwgdGhlIG1pbmktb3MKd2lsbCBub3QgcnVu
LgoKMk1CIGlzIGVub3VnaCB0byBwcm92aWRlIHBhZ2VzIGZvciBzZXR0aW5nIHVwIHRoZSBwYWdl
IHRhYmxlLgoKPiAKPiBBcyBJIGhhdmUgYWxyZWFkeSBzYWlkIGJlZm9yZSwgbW9zdCBsaWtlbHkg
eW91IHdhbnQgdG8gaW5jbHVkZSBhIGNvdXBsZSBvZgo+IG1vcmUgcGFnZS10YWJsZSBpbiB0aGUg
aW1hZ2UgZGlyZWN0bHkuCkkgdHJpZWQsIGJ1dCBJIGRvbm90IGtub3cgaG93IG1hbnkgcGFnZXMg
c2hvdWxkIGJlIHByZXNlcnZlZCBpbiB0aGUgaW1hZ2UKZGlyZWN0bHkuCj4gCj4gPgo+ID4gICAg
IDEuKSBhZGQgYXJjaF9tbV9wcmVpbml0KCkgdG8gc2V0dXAgdGhlIHBhZ2UgdGFibGUgZm9yIERl
dmljZSBUcmVlLgo+ID4KPiA+ICAgICAyLikgYWRkIGZ1bmN0aW9ucyB0byBzZXR1cCB0aGUgcGFn
ZSB0YWJsZSwgc3VjaCBhcwo+ID4gICAgICAgICBlYXJseV9hbGxvY19wYWdlKCkvYnVpbGRfcGFn
ZXRhYmxlKCkvYnVpbGRfcHVkL2J1aWxkX3BtZC4KPiA+Cj4gPiAgICAgMy4pIEp1c3QgYXMgdGhl
IHg4NiBkb2VzLCBsaW1pdHMgdGhlIG1heCBtZW1vcnkgc2l6ZSB0byBNQVhfTUVNX1NJWkUsCj4g
PiAgICAgICAgIHRoZSBtaW4gbWVtb3J5IHNpemUgdG8gTUlOX01FTV9TSVpFLAo+ID4KPiA+ICAg
ICA0LikgYW5kIHNldHVwIHRoZSBwYWdlIGFsbG9jYXRvciBpbiBhcmNoX2luaXRfbW0oKS4KPiA+
ICAgICAgICAgVGhlIGluaXRfcGFnZXRhYmxlKCkgd2lsbCBmaW5kIHRoZSBiZXN0IGJsb2NrIG1h
cHBpbmcgbGV2ZWwgdG8gc2V0dXAKPiA+CXRoZSBwYWdlIHRhYmxlLgo+ID4KPiA+U2lnbmVkLW9m
Zi1ieTogSHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPiA+LS0tCj4gPiAgYXJj
aC9hcm0vYXJtNjQvYXJtNjQuUyB8ICAgMyArCj4gPiAgYXJjaC9hcm0vbW0uYyAgICAgICAgICB8
IDIzOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4g
PiAgYXJjaC9hcm0vc2V0dXAuYyAgICAgICB8ICAgMyArCj4gPiAgaW5jbHVkZS9hcm0vYXJjaF9t
bS5oICB8ICAgNSArKwo+ID4gIDQgZmlsZXMgY2hhbmdlZCwgMjQ5IGluc2VydGlvbnMoKykKPiA+
Cj4gPmRpZmYgLS1naXQgYS9hcmNoL2FybS9hcm02NC9hcm02NC5TIGIvYXJjaC9hcm0vYXJtNjQv
YXJtNjQuUwo+ID5pbmRleCA5M2ZmYzg5Li40ZTljMDQyIDEwMDY0NAo+ID4tLS0gYS9hcmNoL2Fy
bS9hcm02NC9hcm02NC5TCj4gPisrKyBiL2FyY2gvYXJtL2FybTY0L2FybTY0LlMKPiA+QEAgLTIz
Miw2ICsyMzIsOSBAQCBfc2V0dXBfaW5pdGlhbF9wZ3RhYmxlOgo+ID4gICAgICBsZHIgICAgIHgw
LCA9X3RleHQgICAgICAgICAgICAgICAgIC8qIHgwIDo9IHZhZGRyKF90ZXh0KSAgICAgICAgICAg
ICovCj4gPiAgICAgIGxkciAgICAgeDEsID1fZW5kICAgICAgICAgICAgICAgICAgLyogeDEgOj0g
dmFkZHIoX2VuZCkgICAgICAgICAgICAgKi8KPiA+KyAgICAvKiBNYXAgZXh0cmEgMk0gZm9yIGZp
cnN0X2ZyZWVfcGZuICovCj4gPisgICAgYWRkICAgICB4MSwgeDEsIEwyX1NJWkUKPiA+Kwo+ID4g
ICAgICBzZXRfcGFnZV90YWJsZSB4MCwgMCwgUFRfUFQKPiA+ICAgICAgc2V0X3BhZ2VfdGFibGUg
eDAsIDEsIFBUX1BUCj4gPiAgMToKPiA+ZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21tLmMgYi9hcmNo
L2FybS9tbS5jCj4gPmluZGV4IGQ5OGZhZDguLmVkNTkxNTkgMTAwNjQ0Cj4gPi0tLSBhL2FyY2gv
YXJtL21tLmMKPiA+KysrIGIvYXJjaC9hcm0vbW0uYwo+ID5AQCAtNiw2ICs2LDcgQEAKPiA+ICAj
aW5jbHVkZSA8bWluaS1vcy9wb3NpeC9saW1pdHMuaD4KPiA+ICAjaW5jbHVkZSA8bGliZmR0Lmg+
Cj4gPiAgI2luY2x1ZGUgPGxpYi5oPgo+ID4rI2luY2x1ZGUgPGFybTY0L3BhZ2V0YWJsZS5oPgo+
ID4gIHBhZGRyX3QgcGh5c2ljYWxfYWRkcmVzc19vZmZzZXQ7Cj4gPiAgdW5zaWduZWQgbWVtX2Js
b2NrcyA9IDE7Cj4gPkBAIC0yMyw2ICsyNCwyMzYgQEAgdW5zaWduZWQgbG9uZyBhbGxvY2F0ZV9v
bmRlbWFuZCh1bnNpZ25lZCBsb25nIG4sIHVuc2lnbmVkIGxvbmcgYWxpZ25tZW50KQo+ID4gICAg
ICBCVUcoKTsKPiA+ICB9Cj4gPitleHRlcm4gbHBhZV90IGJvb3RfbDBfcGd0YWJsZVs1MTJdOwo+
ID4rCj4gPitzdGF0aWMgaW5saW5lIHZvaWQgc2V0X3BndF9lbnRyeShscGFlX3QgKnB0ciwgbHBh
ZV90IHZhbCkKPiA+K3sKPiA+KyAgICAqcHRyID0gdmFsOwo+ID4rICAgIGRzYihpc2hzdCk7Cj4g
PisgICAgaXNiKCk7Cj4gPit9Cj4gPisKPiA+K3N0YXRpYyB2b2lkIGJ1aWxkX3B0ZShscGFlX3Qg
KnBtZCwgdW5zaWduZWQgbG9uZyB2YWRkciwgdW5zaWduZWQgbG9uZyB2ZW5kLAo+ID4rICAgICAg
ICAgICAgICAgICAgICAgIHBhZGRyX3QgcGh5cywgdWludDY0X3QgbWVtX3R5cGUpCj4gPit7Cj4g
PisgICAgbHBhZV90ICpwdGU7Cj4gPisKPiA+KyAgICBwdGUgPSAobHBhZV90ICopdG9fdmlydCgo
KnBtZCkgJiB+QVRUUl9NQVNLX0wpICsgbDNfcGd0X2lkeCh2YWRkcik7Cj4gPisgICAgZG8gewo+
ID4rICAgICAgICBzZXRfcGd0X2VudHJ5KHB0ZSwgKHBoeXMgJiBMM19NQVNLKSB8IG1lbV90eXBl
IHwgTDNfUEFHRSk7Cj4gPisKPiA+KyAgICAgICAgdmFkZHIgKz0gTDNfU0laRTsKPiA+KyAgICAg
ICAgcGh5cyArPSBMM19TSVpFOwo+ID4rICAgICAgICBwdGUrKzsKPiA+KyAgICB9IHdoaWxlICh2
YWRkciA8IHZlbmQpOwo+ID4rfQo+ID4rCj4gPitzdGF0aWMgaW50IGJ1aWxkX3BtZChscGFlX3Qg
KnB1ZCwgdW5zaWduZWQgbG9uZyB2YWRkciwgdW5zaWduZWQgbG9uZyB2ZW5kLAo+IAo+IFlvdSBh
cmUgdXNpbmcgdGhlIHRlcm0gcHRlLCBwbWQsIHB1ZCAod2hpY2ggYmFzaWNhbGx5IGxvb2tzIHZl
cnkKPiBMaW51eGlzbS4uLikgYnV0IEkgaGF2ZSBub3QgaWRlYSB3aGF0IHlvdSBhcmUgcmVmZXIg
dG8gaW4gTWluaS1PUyBjb250ZXh0Lgo+IFBsZWFzZSBleHBsYWluIGl0Lgpzb3JyeSwgd2hhdCBp
cyB0aGUgIk1pbmktT1MgY29udGV4dCIgc3RhbmQgZm9yPwoKPiAKPiA+KyAgICAgICAgICAgICAg
ICAgICAgICBwYWRkcl90IHBoeXMsIHVpbnQ2NF90IG1lbV90eXBlLAo+ID4rICAgICAgICAgICAg
ICAgICAgICAgIHBhZGRyX3QgKCpuZXdfcGFnZSkodm9pZCksIGludCBsZXZlbCkKPiAKPiBUaGUg
aW5kZW50YXRpb24gbG9va3Mgd3JvbmcuCm9rYXkKPiAKPiA+K3sKPiA+KyAgICBscGFlX3QgKnBt
ZDsKPiA+KyAgICB1bnNpZ25lZCBsb25nIG5leHQ7Cj4gPisKPiA+KyAgICBwbWQgPSAobHBhZV90
ICopdG9fdmlydCgoKnB1ZCkgJiB+QVRUUl9NQVNLX0wpICsgbDJfcGd0X2lkeCh2YWRkcik7Cj4g
PisgICAgZG8gewo+ID4rICAgICAgICBpZiAobGV2ZWwgPT0gMikgewo+ID4rICAgICAgICAgICAg
IHNldF9wZ3RfZW50cnkocG1kLCAocGh5cyAmIEwyX01BU0spIHwgbWVtX3R5cGUgfCBMMl9CTE9D
Syk7Cj4gPisgICAgICAgIH0gZWxzZSB7Cj4gPisgICAgICAgICAgICAgbmV4dCA9IHZhZGRyICsg
TDJfU0laRTsKPiA+KyAgICAgICAgICAgICBpZiAobmV4dCA+IHZlbmQpCj4gPisgICAgICAgICAg
ICAgICAgIG5leHQgPSB2ZW5kOwo+ID4rCj4gPisgICAgICAgICAgICAgaWYgKCgqcG1kKSA9PSBM
Ml9JTlZBTCkgewo+ID4rICAgICAgICAgICAgICAgICBwYWRkcl90IG5ld3BhZ2UgPSBuZXdfcGFn
ZSgpOwo+ID4rICAgICAgICAgICAgICAgICBpZiAoIW5ld3BhZ2UpCj4gPisgICAgICAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07Cj4gPisgICAgICAgICAgICAgICAgIHNldF9wZ3Rf
ZW50cnkocG1kLCBuZXdwYWdlIHwgUFRfUFQpOwo+ID4rICAgICAgICAgICAgIH0KPiA+Kwo+ID4r
ICAgICAgICAgICAgIGJ1aWxkX3B0ZShwbWQsIHZhZGRyLCBuZXh0LCBwaHlzLCBtZW1fdHlwZSk7
Cj4gPisgICAgICAgIH0KPiA+Kwo+ID4rICAgICAgICB2YWRkciArPSBMMl9TSVpFOwo+ID4rICAg
ICAgICBwaHlzICs9IEwyX1NJWkU7Cj4gPisgICAgICAgIHBtZCsrOwo+ID4rICAgIH0gd2hpbGUg
KHZhZGRyIDwgdmVuZCk7Cj4gPisKPiA+KyAgICByZXR1cm4gMDsKPiA+K30KPiA+Kwo+ID4rc3Rh
dGljIGludCBidWlsZF9wdWQobHBhZV90ICpwZ2QsIHVuc2lnbmVkIGxvbmcgdmFkZHIsIHVuc2ln
bmVkIGxvbmcgdmVuZCwKPiA+KyAgICAgICAgICAgICAgICAgICAgICBwYWRkcl90IHBoeXMsIHVp
bnQ2NF90IG1lbV90eXBlLAo+ID4rICAgICAgICAgICAgICAgICAgICAgIHBhZGRyX3QgKCpuZXdf
cGFnZSkodm9pZCksIGludCBsZXZlbCkKPiAKPiBpbmRlbnRhdGlvbi4Kb2theS4uCj4gCj4gCj4g
Pit7Cj4gPisgICAgbHBhZV90ICpwdWQ7Cj4gPisgICAgdW5zaWduZWQgbG9uZyBuZXh0Owo+ID4r
ICAgIGludCByZXQ7Cj4gPisKPiA+KyAgICBwdWQgPSAobHBhZV90ICopdG9fdmlydCgoKnBnZCkg
JiB+QVRUUl9NQVNLX0wpICsgbDFfcGd0X2lkeCh2YWRkcik7Cj4gPisgICAgZG8gewo+ID4rICAg
ICAgICBpZiAobGV2ZWwgPT0gMSkgewo+ID4rICAgICAgICAgICAgIHNldF9wZ3RfZW50cnkocHVk
LCAocGh5cyAmIEwxX01BU0spIHwgbWVtX3R5cGUgfCBMMV9CTE9DSyk7Cj4gPisgICAgICAgIH0g
ZWxzZSB7Cj4gPisgICAgICAgICAgICAgbmV4dCA9IHZhZGRyICsgTDFfU0laRTsKPiA+KyAgICAg
ICAgICAgICBpZiAobmV4dCA+IHZlbmQpCj4gPisgICAgICAgICAgICAgICAgIG5leHQgPSB2ZW5k
Owo+ID4rCj4gPisgICAgICAgICAgICAgaWYgKCgqcHVkKSA9PSBMMV9JTlZBTCkgewo+ID4rICAg
ICAgICAgICAgICAgICBwYWRkcl90IG5ld3BhZ2UgPSBuZXdfcGFnZSgpOwo+ID4rICAgICAgICAg
ICAgICAgICBpZiAoIW5ld3BhZ2UpCj4gPisgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLUVO
T01FTTsKPiA+KyAgICAgICAgICAgICAgICAgc2V0X3BndF9lbnRyeShwdWQsIG5ld3BhZ2UgfCBQ
VF9QVCk7Cj4gPisgICAgICAgICAgICAgfQo+ID4rCj4gPisgICAgICAgICAgICAgcmV0ID0gYnVp
bGRfcG1kKHB1ZCwgdmFkZHIsIG5leHQsIHBoeXMsIG1lbV90eXBlLCBuZXdfcGFnZSwgbGV2ZWwp
Owo+ID4rICAgICAgICAgICAgIGlmIChyZXQpCj4gPisgICAgICAgICAgICAgICAgIHJldHVybiBy
ZXQ7Cj4gPisgICAgICAgIH0KPiA+Kwo+ID4rICAgICAgICB2YWRkciArPSBMMV9TSVpFOwo+ID4r
ICAgICAgICBwaHlzICs9IEwxX1NJWkU7Cj4gPisgICAgICAgIHB1ZCsrOwo+ID4rICAgIH0gd2hp
bGUgKHZhZGRyIDwgdmVuZCk7Cj4gPisKPiA+KyAgICByZXR1cm4gMDsKPiA+K30KPiA+Kwo+ID4r
c3RhdGljIGludCBidWlsZF9wYWdldGFibGUodW5zaWduZWQgbG9uZyB2YWRkciwgdW5zaWduZWQg
bG9uZyBzdGFydF9wZm4sCj4gPisgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIG1h
eF9wZm4sIHVpbnQ2NF90IG1lbV90eXBlLAo+ID4rICAgICAgICAgICAgICAgICAgICAgcGFkZHJf
dCAoKm5ld19wYWdlKSh2b2lkKSwgaW50IGxldmVsKQo+IAo+IEluZGVudGF0aW9uLgo+IAo+IEFs
c28sIHRoaXMgaXMgYSBiaXQgd2VpcmQgdG8gaW1wb3NlIHRoZSBjYWxsZXIgdG8ga25vdyB0aGUg
bGV2ZWwgd2hlcmUgaXQKPiBzdG9wcy4gSG93IGRvIHlvdSBlbnN1cmUgdGhlIHZpcnR1YWwgYW5k
IHBoeXNpY2FsIGFkZHJlc3MgYXJlIGdvaW5nIHRvIGJlCj4gYWxpZ25lZCBwcm9wZXJseT8KVGhl
IG9uZSB3aG8gdXNlcyBidWlsZF9wYWdldGFibGUoKSBzaG91bGQgcGF5IGF0dGVudGlvbiB0byB0
aGUgYWxpZ25tZW50LgpPZiBjb3VydCwgd2UgY2FuIGFkZCBzb21lIGFsaWdubWVudCBjaGVja3Mg
aW4gdGhlIGNvZGUgdG9vLgoKPiAKPiA+K3sKPiA+KyAgICBwYWRkcl90IHBfc3RhcnQ7Cj4gPisg
ICAgdW5zaWduZWQgbG9uZyB2X2VuZCwgbmV4dDsKPiA+KyAgICBscGFlX3QgKnBnZDsKPiA+KyAg
ICBpbnQgcmV0Owo+ID4rCj4gPisgICAgdl9lbmQgPSB2YWRkciArIG1heF9wZm4gKiBQQUdFX1NJ
WkU7Cj4gPisgICAgcF9zdGFydCA9IFBGTl9QSFlTKHN0YXJ0X3Bmbik7Cj4gPisKPiA+KyAgICBw
Z2QgPSAmYm9vdF9sMF9wZ3RhYmxlW2wwX3BndF9pZHgodmFkZHIpXTsKPiA+Kwo+ID4rICAgIGRv
IHsKPiA+KyAgICAgICAgbmV4dCA9ICh2YWRkciArIEwwX1NJWkUpOwo+ID4rICAgICAgICBpZiAo
bmV4dCA+IHZfZW5kKQo+ID4rICAgICAgICAgICAgbmV4dCA9IHZfZW5kOwo+ID4rCj4gPisgICAg
ICAgIGlmICgoKnBnZCkgPT0gTDBfSU5WQUwpIHsKPiA+KyAgICAgICAgICAgIHBhZGRyX3QgbmV3
cGFnZSA9IG5ld19wYWdlKCk7Cj4gPisgICAgICAgICAgICBpZiAoIW5ld3BhZ2UpCj4gPisgICAg
ICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07Cj4gPisgICAgICAgICAgICBzZXRfcGd0X2VudHJ5
KHBnZCwgbmV3cGFnZSB8IFBUX1BUKTsKPiA+KyAgICAgICAgfQo+ID4rCj4gPisgICAgICAgIHJl
dCA9IGJ1aWxkX3B1ZChwZ2QsIHZhZGRyLCBuZXh0LCBwX3N0YXJ0LCBtZW1fdHlwZSwgbmV3X3Bh
Z2UsIGxldmVsKTsKPiA+KyAgICAgICAgaWYgKHJldCkKPiA+KyAgICAgICAgICAgIHJldHVybiBy
ZXQ7Cj4gPisKPiA+KyAgICAgICAgcF9zdGFydCArPSBuZXh0IC0gdmFkZHI7Cj4gPisgICAgICAg
IHZhZGRyID0gbmV4dDsKPiA+KyAgICAgICAgcGdkKys7Cj4gPisgICAgfSB3aGlsZSAodmFkZHIg
IT0gdl9lbmQpOwo+ID4rCj4gPisgICAgcmV0dXJuIDA7Cj4gPit9Cj4gPisKPiA+Ky8qCj4gPisg
KiBCZWZvcmUgdGhlIHBhZ2UgYWxsb2NhdG9yIGlzIHJlYWR5LCB3ZSB1c2UgZmlyc3RfZnJlZV9w
Zm4gdG8gcmVjb3JkCj4gPisgKiB0aGUgZmlyc3QgZnJlZSBwYWdlLiBUaGUgZmlyc3RfZnJlZV9w
Zm4gd2lsbCBiZSBpbmNyZWFzZWQgYnkKPiA+KyAqIGVhcmx5X2FsbG9jX3BhZ2UoKS4KPiA+KyAq
Lwo+ID4rc3RhdGljIHVuc2lnbmVkIGxvbmcgZmlyc3RfZnJlZV9wZm47Cj4gPisKPiA+Ky8qIFRo
ZSBwZm4gZm9yIE1JTl9NRU1fU0laRSAqLwo+ID4rc3RhdGljIHVuc2lnbmVkIGxvbmcgbWluX21l
bV9wZm47Cj4gPisKPiA+K3N0YXRpYyBwYWRkcl90IGVhcmx5X2FsbG9jX3BhZ2Uodm9pZCkKPiA+
K3sKPiA+KyAgICBwYWRkcl90IG5ld19wYWdlOwo+ID4rCj4gPisgICAgbWVtc2V0KHBmbl90b192
aXJ0KGZpcnN0X2ZyZWVfcGZuKSwgMCwgUEFHRV9TSVpFKTsKPiA+KyAgICBkc2IoaXNoc3QpOwo+
ID4rCj4gPisgICAgbmV3X3BhZ2UgPSBQRk5fUEhZUyhmaXJzdF9mcmVlX3Bmbik7Cj4gPisgICAg
Zmlyc3RfZnJlZV9wZm4rKzsKPiA+KyAgICBBU1NFUlQoZmlyc3RfZnJlZV9wZm4gPCBtaW5fbWVt
X3Bmbik7Cj4gPisgICAgcmV0dXJuIG5ld19wYWdlOwo+ID4rfQo+ID4rCj4gPitzdGF0aWMgaW50
IGluaXRfcGFnZXRhYmxlX29rOwo+IAo+IFBsZWFzZSBleHBsYWluIHRoZSBwdXJwb3NlIG9mIHRo
ZSB2YXJpYWJsZSBpbiBhIGNvbW1lbnQuCm9rYXkuCj4gCj4gPisvKgo+ID4rICogVGhpcyBmdW5j
dGlvbiB3aWxsIHNldHVwIHRoZSBwYWdlIHRhYmxlIGZvciB0aGUgbWVtb3J5IHN5c3RlbS4KPiA+
KyAqLwo+ID4rdm9pZCBpbml0X3BhZ2V0YWJsZSh1bnNpZ25lZCBsb25nICpzdGFydF9wZm4sIHVu
c2lnbmVkIGxvbmcgYmFzZSwKPiA+KyAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBz
aXplKQo+ID4rewo+ID4rICAgIHVuc2lnbmVkIGxvbmcgdmFkZHIgPSAodW5zaWduZWQgbG9uZyl0
b192aXJ0KGJhc2UpOwo+ID4rICAgIHBhZGRyX3QgcGh5cyA9IGJhc2U7Cj4gPisgICAgcGFkZHJf
dCBzeiA9IEwxX1NJWkU7Cj4gPisgICAgbHBhZV90ICpwZ2Q7Cj4gPisgICAgbHBhZV90ICpwdWQ7
Cj4gPisgICAgaW50IGxldmVsOwo+ID4rCj4gPisgICAgZG8gewo+ID4rICAgICAgICAvKgo+ID4r
ICAgICAgICAgKiBXZSBjYW5ub3Qgc2V0IGJsb2NrIG1hcHBpbmcgZm9yIFBHRChsZXZlbCAwKSwK
PiA+KyAgICAgICAgICogYnV0IHdlIGNhbiBzZXQgYmxvY2sgbWFwcGluZyBmb3IgUFVEKGxldmVs
IDEpIGFuZCBQTUQobGV2ZWwgMikuCj4gPisgICAgICAgICAqIEdldCB0aGUgcHJvcGVyIGxldmVs
IGZvciBidWlsZF9wYWdldGFibGUoKS4KPiAKPiBZb3VyIEFQSSBsb29rcyB3cm9uZywgYSBjYWxs
ZXIgb2YgdGhlIFBUIG1hcHBpbmcgc2hvdWxkIG5vdCBuZWVkIHRvIGtub3cgdGhlClRoZSBidWls
ZF9wYWdldGFibGUoKSBpcyBvbmx5IHVzZWQgaW50ZXJuYWxseSwgaXQgaXMgbm90IGEgQVBJIGZ1
bmN0aW9uLgo+IGxldmVsIGl0IGlzIGdvaW5nIHRvIG1hcC4gVGhlIG9ubHkgdGhpbmcgbmVjZXNz
YXJ5IGlzIHRoZSBzaXplIG9mIHRoZQo+IG1hcHBpbmcuClBsZWFzZSBzZWUgdGhlIGluaXRfcGFn
ZXRhYmxlKCkvbWFwX2ZyYW1lc192aXJ0KCkvaW9yZW1hcCwgdGhleSBhcmUgQVBJIGZ1bmN0aW9u
LiAKPiAKPiA+KyAgICAgICAgICovCj4gPisgICAgICAgIGlmIChzaXplID49IEwxX1NJWkUpIHsK
PiA+KyAgICAgICAgICAgIHBnZCA9ICZib290X2wwX3BndGFibGVbbDBfcGd0X2lkeCh2YWRkcild
Owo+ID4rICAgICAgICAgICAgaWYgKCgqcGdkKSA9PSBMMF9JTlZBTCkgewo+IAo+IEkgZG9uJ3Qg
dW5kZXJzdGFuZCB0aGlzIGNvZGUuIFdoeSBkbyB5b3UgbmVlZCB0byBjaGVjayB0aGUgYm9vdCB0
YWJsZSBpbgo+IG9yZGVyIHRvIG5vdyB0aGUgbGV2ZWwgdG8gbWFwPwpUaGUgKCpwZ2QpIG1heWJl
IGVtcHR5LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGl0LgoKPiAKPiA+KyAgICAgICAgICAgICAgICAg
bGV2ZWwgPSAxOwo+ID4rICAgICAgICAgICAgfSBlbHNlIHsKPiA+KyAgICAgICAgICAgICAgICAg
cHVkID0gKGxwYWVfdCAqKXRvX3ZpcnQoKCpwZ2QpICYgfkFUVFJfTUFTS19MKSArIGwxX3BndF9p
ZHgodmFkZHIpOwo+ID4rICAgICAgICAgICAgICAgICBpZiAoKCpwdWQpID09IEwxX0lOVkFMKQo+
ID4rICAgICAgICAgICAgICAgICAgICAgbGV2ZWwgPSAxOwo+ID4rICAgICAgICAgICAgICAgICBl
bHNlCj4gPisgICAgICAgICAgICAgICAgICAgICBsZXZlbCA9IDI7Cj4gPisgICAgICAgICAgICB9
Cj4gPisgICAgICAgIH0gZWxzZSB7Cj4gPisgICAgICAgICAgICAgc3ogPSBzaXplICYgTDJfTUFT
SzsKPiA+KyAgICAgICAgICAgICBsZXZlbCA9IDI7Cj4gPisgICAgICAgIH0KPiA+Kwo+ID4rICAg
ICAgICBidWlsZF9wYWdldGFibGUodmFkZHIsIFBIWVNfUEZOKHBoeXMpLCBQRk5fVVAoc3opLAo+
ID4rICAgICAgICAgICAgICAgICAgICAgICAgTUVNX0RFRl9BVFRSLCBlYXJseV9hbGxvY19wYWdl
LCBsZXZlbCk7Cj4gPisKPiA+KyAgICAgICAgdmFkZHIgKz0gc3o7Cj4gPisgICAgICAgIHBoeXMg
ICs9IHN6Owo+ID4rICAgICAgICBzaXplIC09IHN6Owo+ID4rICAgIH0gd2hpbGUgKHNpemUgPiBM
Ml9TSVpFKTsKPiA+Kwo+ID4rICAgIC8qIFVzZSB0aGUgcGFnZSBtYXBwaW5nIChsZXZlbCAzKSBm
b3IgdGhlIGxlZnQgKi8KPiA+KyAgICBpZiAoc2l6ZSkKPiA+KyAgICAgICAgYnVpbGRfcGFnZXRh
YmxlKHZhZGRyLCBQSFlTX1BGTihwaHlzKSwgUEZOX1VQKHNpemUpLAo+ID4rICAgICAgICAgICAg
ICAgICAgICAgICAgTUVNX0RFRl9BVFRSLCBlYXJseV9hbGxvY19wYWdlLCAzKTsKPiA+Kwo+ID4r
ICAgICpzdGFydF9wZm4gPSBmaXJzdF9mcmVlX3BmbjsKPiA+KyAgICBpbml0X3BhZ2V0YWJsZV9v
ayA9IDE7Cj4gPit9Cj4gPisKPiA+K3ZvaWQgYXJjaF9tbV9wcmVpbml0KHZvaWQgKmR0Yl9wb2lu
dGVyKQo+ID4rewo+ID4rICAgIHBhZGRyX3QgKipkdGJfcCA9IGR0Yl9wb2ludGVyOwo+ID4rICAg
IHBhZGRyX3QgKmR0YiA9ICpkdGJfcDsKPiA+KyAgICB1aW50cHRyX3QgZW5kID0gKHVpbnRwdHJf
dCkgJl9lbmQ7Cj4gPisKPiA+KyAgICBkdGIgPSB0b192aXJ0KCgocGFkZHJfdClkdGIpKTsKPiA+
KyAgICBmaXJzdF9mcmVlX3BmbiA9IFBGTl9VUCh0b19waHlzKGVuZCkpOwo+ID4rICAgIG1pbl9t
ZW1fcGZuID0gUEZOX1VQKHRvX3BoeXMoX3RleHQpICsgTUlOX01FTV9TSVpFKTsKPiA+Kwo+ID4r
ICAgIC8qCj4gPisgICAgICogU2V0dXAgdGhlIG1hcHBpbmcgZm9yIERldmljZSBUcmVlLCBvbmx5
IG1hcCAyTShMMl9TSVpFKSBzaXplLgo+ID4rICAgICAqCj4gPisgICAgICogTm90ZTogVGhlIGVh
cmx5X2FsbG9jX3BhZ2UoKSB3aWxsIGluY3JlYXNlIEBmaXJzdF9mcmVlX3Bmbi4KPiA+KyAgICAg
Ki8KPiA+KyAgICBidWlsZF9wYWdldGFibGUoKHVuc2lnbmVkIGxvbmcpZHRiLCB2aXJ0X3RvX3Bm
bigodW5zaWduZWQgbG9uZylkdGIpLAo+ID4rICAgICAgICAgICAgICAgICAgICBQSFlTX1BGTihM
Ml9TSVpFKSwgTUVNX0RFRl9BVFRSLCBlYXJseV9hbGxvY19wYWdlLCAyKTsKPiA+Kwo+ID4rICAg
ICpkdGJfcCA9IGR0YjsKPiA+K30KPiA+Kwo+ID4gIHZvaWQgYXJjaF9pbml0X21tKHVuc2lnbmVk
IGxvbmcgKnN0YXJ0X3Bmbl9wLCB1bnNpZ25lZCBsb25nICptYXhfcGZuX3ApCj4gPiAgewo+ID4g
ICAgICBpbnQgbWVtb3J5Owo+ID5AQCAtNjUsNiArMjk2LDExIEBAIHZvaWQgYXJjaF9pbml0X21t
KHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3Bmbl9wLCB1bnNpZ25lZCBsb25nICptYXhfcGZuX3ApCj4g
PiAgICAgIGVuZCA9ICh1aW50cHRyX3QpICZfZW5kOwo+ID4gICAgICBtZW1fYmFzZSA9IGZkdDY0
X3RvX2NwdShyZWdzWzBdKTsKPiA+ICAgICAgbWVtX3NpemUgPSBmZHQ2NF90b19jcHUocmVnc1sx
XSk7Cj4gPisKPiA+KyAgICBCVUdfT04obWVtX3NpemUgPCBNSU5fTUVNX1NJWkUpOwo+ID4rICAg
IGlmIChtZW1fc2l6ZSA+IE1BWF9NRU1fU0laRSkKPiA+KyAgICAgICAgbWVtX3NpemUgPSBNQVhf
TUVNX1NJWkU7Cj4gPisKPiA+ICAgICAgcHJpbnRrKCJGb3VuZCBtZW1vcnkgYXQgMHglbGx4IChs
ZW4gMHglbGx4KVxuIiwKPiA+ICAgICAgICAgICAgICAodW5zaWduZWQgbG9uZyBsb25nKSBtZW1f
YmFzZSwgKHVuc2lnbmVkIGxvbmcgbG9uZykgbWVtX3NpemUpOwo+ID5AQCAtNzMsNiArMzA5LDgg
QEAgdm9pZCBhcmNoX2luaXRfbW0odW5zaWduZWQgbG9uZyAqc3RhcnRfcGZuX3AsIHVuc2lnbmVk
IGxvbmcgKm1heF9wZm5fcCkKPiA+ICAgICAgaGVhcF9sZW4gPSBtZW1fc2l6ZSAtIChQRk5fUEhZ
Uygqc3RhcnRfcGZuX3ApIC0gbWVtX2Jhc2UpOwo+ID4gICAgICAqbWF4X3Bmbl9wID0gKnN0YXJ0
X3Bmbl9wICsgUEZOX0RPV04oaGVhcF9sZW4pOwo+ID4rICAgIGluaXRfcGFnZXRhYmxlKHN0YXJ0
X3Bmbl9wLCBtZW1fYmFzZSwgbWVtX3NpemUpOwo+ID4rCj4gPiAgICAgIHByaW50aygiVXNpbmcg
cGFnZXMgJWx1IHRvICVsdSBhcyBmcmVlIHNwYWNlIGZvciBoZWFwLlxuIiwgKnN0YXJ0X3Bmbl9w
LCAqbWF4X3Bmbl9wKTsKPiA+ICAgICAgLyogVGhlIGRldmljZSB0cmVlIGlzIHByb2JhYmx5IGlu
IG1lbW9yeSB0aGF0IHdlJ3JlIGFib3V0IHRvIGhhbmQgb3ZlciB0byB0aGUgcGFnZQo+ID5kaWZm
IC0tZ2l0IGEvYXJjaC9hcm0vc2V0dXAuYyBiL2FyY2gvYXJtL3NldHVwLmMKPiA+aW5kZXggMjdi
ZWE0YS4uYWI4MmVkYSAxMDA2NDQKPiA+LS0tIGEvYXJjaC9hcm0vc2V0dXAuYwo+ID4rKysgYi9h
cmNoL2FybS9zZXR1cC5jCj4gPkBAIC0yOSw2ICsyOSw5IEBAIHZvaWQgYXJjaF9pbml0KHZvaWQg
KmR0Yl9wb2ludGVyLCBwYWRkcl90IHBoeXNpY2FsX29mZnNldCkKPiA+ICAgICAgeHByaW50aygi
VmlydHVhbCAtPiBwaHlzaWNhbCBvZmZzZXQgPSAlIlBSSXBhZGRyIiBcbiIsIHBoeXNpY2FsX2Fk
ZHJlc3Nfb2Zmc2V0KTsKPiA+KyAgICAvKiBEbyB0aGUgcHJlcGFyYXRpb25zICovCj4gPisgICAg
YXJjaF9tbV9wcmVpbml0KCZkdGJfcG9pbnRlcik7Cj4gPisKPiA+ICAgICAgeHByaW50aygiQ2hl
Y2tpbmcgRFRCIGF0ICVwLi4uXG4iLCBkdGJfcG9pbnRlcik7Cj4gPiAgICAgIGlmICgociA9IGZk
dF9jaGVja19oZWFkZXIoZHRiX3BvaW50ZXIpKSkgewo+ID5kaWZmIC0tZ2l0IGEvaW5jbHVkZS9h
cm0vYXJjaF9tbS5oIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4gPmluZGV4IGY3N2EyMTAuLmRi
NmU3ODEgMTAwNjQ0Cj4gPi0tLSBhL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAo+ID4rKysgYi9pbmNs
dWRlL2FybS9hcmNoX21tLmgKPiA+QEAgLTMsNiArMywxMCBAQAo+ID4gIHR5cGVkZWYgdWludDY0
X3QgcGFkZHJfdDsKPiA+ICAjZGVmaW5lIFBSSXBhZGRyICJseCIKPiA+KyNkZWZpbmUgTUlOX01F
TV9TSVpFICAgICAgICAgICAgKDB4NDAwMDAwKQo+IAo+IFdoZXJlIGRvZXMgdGhpcyB2YWx1ZSBj
b21lIGZyb20/CkkgYWRkZWQgZm9yIHRoZSBtZW1vcnkgbGltaXQuCklmIHRoZSBtZW1vcnkgc2l6
ZSBpcyBsZXNzIHRoZW4gNE0sIHRoZSBtaW5pLW9zIHdpbGwgbm90IHJ1bi4KPiAKPiA+KyNkZWZp
bmUgTUFYX01FTV9TSVpFICAgICAgICAgICAgKDFVTCA8PCAzOSkKPiAKPiBTYW1lIGhlcmU/ClJl
ZmVyIHRvIHRoZSB4ODYuCk9mIGNvdXJlLCBXZSBjYW4gY2hhbmdlIGl0LgoKVGhhbmtzCkh1YW5n
IFNoaWppZQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K
TWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5v
cmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1k
ZXZlbA==

From minios-devel-bounces@lists.xenproject.org Sat Apr 28 09:37:49 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sat, 28 Apr 2018 09:37:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fCMIf-0008UB-F4; Sat, 28 Apr 2018 09:37:49 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bkmg=hr=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fCMIe-0008Tx-5S
 for minios-devel@lists.xenproject.org; Sat, 28 Apr 2018 09:37:48 +0000
X-Inumbo-ID: a233f327-4ac7-11e8-9728-bc764e045a96
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe07::604])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id a233f327-4ac7-11e8-9728-bc764e045a96;
 Sat, 28 Apr 2018 11:36:31 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=58wjIigdMz7fD9rVjXD0UJB4+mBvr6RMfKdJg3CvgYQ=;
 b=eKbXptisRk+if0ONYXe9mtzsfOLiqfMGVHGNyDcmjLYKxEWTu1n4oVGgmRCKoU2tXQ5Bu1/9K06dWdRi9m0kGDAiXHnYX/NlJWh6eSKrICN6+jkrNRuEqKunFvXiDKg5a6CsCJBSxczoz06U6fmKfKBYdaXxQ70EP1mkZFrrg6w=
Received: from DB5PR08CA0070.eurprd08.prod.outlook.com
 (2a01:111:e400:c576::38) by VI1PR08MB0991.eurprd08.prod.outlook.com
 (2a01:111:e400:c548::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.715.18; Sat, 28
 Apr 2018 09:37:39 +0000
Received: from DB5EUR03FT028.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e0a::207) by DB5PR08CA0070.outlook.office365.com
 (2a01:111:e400:c576::38) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend
 Transport; Sat, 28 Apr 2018 09:37:39 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 DB5EUR03FT028.mail.protection.outlook.com (10.152.20.99) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256) id
 15.20.696.11 via Frontend Transport; Sat, 28 Apr 2018 09:37:38 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.105.66) with Microsoft SMTP Server id 14.3.294.0; Sat, 28 Apr 2018
 10:37:35 +0100
Date: Sat, 28 Apr 2018 09:37:32 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180428093731.GB6078@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-29-git-send-email-shijie.huang@arm.com>
 <ed58fe42-c3de-b003-f4bb-cfbd526c6ce9@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <ed58fe42-c3de-b003-f4bb-cfbd526c6ce9@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(39860400002)(396003)(39380400002)(346002)(376002)(2980300002)(438002)(189003)(199004)(336012)(104016004)(26826003)(478600001)(46406003)(1076002)(23726003)(47776003)(186003)(446003)(11346002)(486006)(77096007)(26005)(6666003)(50466002)(6636002)(7696005)(476003)(76176011)(6346003)(126002)(53546011)(426003)(229853002)(8936002)(246002)(86362001)(8676002)(8666007)(16586007)(316002)(72206003)(5660300001)(55016002)(4326008)(6246003)(97756001)(54906003)(356003)(305945005)(33656002)(2906002)(106466001)(6862004)(106002)(58126008)(39060400002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR08MB0991; H:nebula.arm.com; FPR:; SPF:Pass;
 LANG:en; PTR:fw-tnat.cambridge.arm.com; MX:1; A:1; 
X-Microsoft-Exchange-Diagnostics: 1; DB5EUR03FT028;
 1:+0q0XXGqHq71sPTzzoj8nhsruPccfR+Fzo1pxx99eA0qYV4tOOk4bJRIZUYJGKmgg0jnuldir5FJ1PLZ+EC9WiE1RJm3HWPfSG7M4tP9bnEDtq7a88H6nOTGJVZDm3ZV
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:VI1PR08MB0991; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0991;
 3:6Bt674fI6yTKCMpWWe+h0An72COcRebYDEV1FtpZrKLNssLNZz+aKvuLYzQFJDY9tWZ/ITAYjdciYv6zltd3G0aFkqak/wT6+Dc86IrzU9PUJ3sq+6ia7mazd1qRnM8a4XKfq2iijfEXsd4n1Mxd4KJLmLuy2t9F0HqhLjviDn31HJM6T97tXS7/3DulwWm2XHGdzyfajuBuJxGsnHBIGg0dh7H58AmGKhRLjYU1h9FQ3zNrPYgEp8m946XcAwXIOycVCPO/eoLkz3/90j33S3hJHOmwI7jduptyARMhYKNlQWTGSw1CnFTIPkyULV/5SgTYhU9Fu+f/RboWMHkIBI5HaSJ2PBIW3OQprRpRgE8=;
 25:x/E8i2pY5XL/3xhGXHTRDGLDaG91i67Cz4iN1Y+0Oj4TARxJosdVWJZ+4YSrdFK4oQMEPBufZR+bz67kd5d6DMEVWvxdPFkamm1NyiXbDdtIv9XDmSROf8E0Auc6oTD4ZRT+1HMs2rRNsbgbRyotpvf+g5cSdmzCrFGH5OJ2NqbIijqz9ZVNCZG++Ojnh44JQT2Gec4YQbQiChROr9flFF5uklC61vZk9k0aIxl4X61FTNg9blFP6U3HIkYJ+8nKSLyX1NacC7CArFq4DA1LOjXOy2JKk0ur4VhTnANBq50CMwr6jj54Adflhtzs6P3vP1+wexAYt2jVrn4d9JYDqQ==
X-MS-TrafficTypeDiagnostic: VI1PR08MB0991:
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0991;
 31:PHHAQBG0zGrEjQGSLt5Dz4JWkmCULjwwXms6xyJhqwk3+n125/8xbBhpZ0ovjlcr/WmfYa5du+4nfu46icDtfSonKvdN5Y8ySrqK6JryuS2BbH0ugWhgW98E46Tgea7IxcMGzp2hIDeJ4C+YOba5Kr/3GyymeETfwUWW0duXbgxTaKHtbUVdCwl6WUTJHW5cvaBYAEmxOGDP1rK+cSiTXywS99MwgoM7+zlOCR2o10w=;
 20:mRl3R/yl8/nLfBe9L+DFloaZNJG4DAkinrht2B7syhwqcdoDUYkNw8LyBcyvv9N2zBgym99P4GzN1DIzARih249qR6+/3WOyR3zk/31CJxcFSJDhUf4SncHCS1oYGlJ5U+L61qNa7ml8YHzdM95revpu8RVWfzQwP1IWLK5GswU/Xt8fV2LOErG9H/sq+Ol8X1FzBtzZAucvT5RsRcra5G6jvoBedWOFLYfmf33ReorBWeEERZ8/XjAouWI54gX2HKpR66DS0V5HAlYVWBco3e6Bowg9NvinVPPfIZiwyAVarHIyWkVaXyAE7sD/olvF+Oobb6VXCOa1fkj45/3WuFtIrXcfeSIwnw61w+V0tzY=;
 4:DPmNbEt5+9WUeBa/xIp8w5WWKt8d6WmePBi1cNj5y2JjTv6Tf/2KsWQdeR8T1sN/l8B41nxAY8vsL52tIXir8j+8ZTNfeKTf7hraIGk23NDbpIXEZIgWneUcIIplSnFkyBPqoM6tnGHBcCPXiUH3jy47BkbWlsC1twmizY6E6cjFs+3l/BxSEOuYLKe7d9Wh5E9sBTaOkJqFnuPU5MnoJj8EskNbxlgI1k7AgH34i/ILdADHtApAzRNeUVITlAOYIfNOIWwSfTG3mesUjpSynw==
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <VI1PR08MB0991DAFED32559D10627E2DB848C0@VI1PR08MB0991.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(3002001)(10201501046)(3231254)(944501410)(52105095)(6055026)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123558120)(20161123560045)(6072148)(201708071742011);
 SRVR:VI1PR08MB0991; BCL:0; PCL:0; RULEID:; SRVR:VI1PR08MB0991; 
X-Forefront-PRVS: 0656A4403B
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR08MB0991;
 23:3SqrXbcegqfbaw9pSd3Oij+2R2Q/t8PdUkfkTVBzn?=
 =?us-ascii?Q?iAdCX6K1wrgD4umM+/tAIWB4UbmXSH1OLchIbHhz+4Bnx3u/m54Nk7BzMsHM?=
 =?us-ascii?Q?I3JTewxO7PZ65dftwt+N97i9M50JY0L3Nh+sPuofvjtLk2aswBffIMNAyp7r?=
 =?us-ascii?Q?Nai19JmStocjfTs2sMN33DFlHmxE5/xMyDyoafCRIk9Ckk5pV03uUjfUPkRJ?=
 =?us-ascii?Q?4FBagqVzCdhvATa89FIAi0q4M/PcCf5HRBMDf84bEytzTIMVryGvcBZVEOB/?=
 =?us-ascii?Q?7aG+X58MJZCxitIWoZfDxG6q078imoyeY5B+vrUGWo4c4tRaCQVbKm/5Mi1h?=
 =?us-ascii?Q?1EtKy5HzPFlOEIH8sO3T6oTkSp+b6SPrrEszGgwYx9vssHzZjqhNXTYdzMf+?=
 =?us-ascii?Q?a+guqsfKFEj4341zXp4zCqgRujzczRAHXDKJg+8doY64AuAXmaQQP0ihYnP2?=
 =?us-ascii?Q?msl5o+R91wg8dYgYSe45ya/EeBCvFpj+xLgZu+NmP/HC1hP3oO3wX4h+WFug?=
 =?us-ascii?Q?7NU7GvfUSotUmyN2yT/IXCuDSD+eaK448pbbH0wQauoZrEZkb7yzg1sIPxV8?=
 =?us-ascii?Q?Wh4/y4zcztkhjTquDgb8wBmReuAiSFdmCIFzJZX29JCRbmFzh0xzH7FFYslX?=
 =?us-ascii?Q?rEXVYX3djpKpTNPy3UD2dTweNcPjB7urC2nRtKa6NSzmHlJD21lG2NKBpYDP?=
 =?us-ascii?Q?w3EML6nzR5PpTdkxraSw/xPlTutGnwA1oLtz9zEEJWV591g58w9l0qh7ErPZ?=
 =?us-ascii?Q?Kd4FEWhyyYwut7lowLzR4N/YvKhczUFxpUC7qyoXyHw6A+c+dL8+wcoLi2m0?=
 =?us-ascii?Q?wFuNn6eOC3GAudEDN5o0LF/ICuPu5K/R/GsC6iBjZN5p44B4T6gLZmaI4zzp?=
 =?us-ascii?Q?lzhpTuF6Dmlc7H7UOX6VMm/rQ1sCbuzWZgdC43hCnzbLhSSHZInW8DRPEQ7q?=
 =?us-ascii?Q?+aXJC4nm54Esl2mTTmKiZeGK1gjkWGbbWnY1kcWhu/rUZRRF2pSHDwPAYDbM?=
 =?us-ascii?Q?rDl2gDQa9hCKvQ5t/hVg/JqvfC3eRHk9LBJPLW7FmJLZMV+yCR7KVh8RHDDD?=
 =?us-ascii?Q?407+VNcRP+sDFw6HPsjlF0kwyilKaBm50JC/o2UgKZdrSrTQ22wTP3TTPeSt?=
 =?us-ascii?Q?DGGxMmBXTUmIULpYZK17+rw5x3mk8Y5ckPPuEMDSO2b3j8O/lvn7jwSe9C/N?=
 =?us-ascii?Q?d4hbdSlSy+MCQUemciGFPCxbwjQOWGGXYj7GfnkczAtwYeldlz+9J+eElXhD?=
 =?us-ascii?Q?jQ9iLgMTqVKep4zhfx72RCtL90n+Bhein+51OJMYG+lFJlTiIXiy66Sj2IhP?=
 =?us-ascii?B?Zz09?=
X-Microsoft-Antispam-Message-Info: WDFBNuVnTdW+vI6TsUNqgPhltuEZ86Rm/XMGMyM+523x+2jDqOOfYiXjBAlwfXSW8JJMPOqFd5o7LGHlY+1Q8hHgWs+f3fhoT2POPNFmbjSrvsHi/jzSWfLMOOTcHPkJ8joGEPtMQNcJMFy32Jy9yls1pyh8aXV7BqIOKLipw5sUI28MHxahcOeyV1RQ0Y/CBhl2fHaZRhqrVj6awDHu7G3YL8enKhtvanGyrNXKODAXhbogSNXyNP/S+9FChYmNrD+U9OrW++3wnAY0yDsE8wqlnTEuDpcEQbwfK8+wRvYrzEyGPqFwEM70dettboJOe7QSJm66e0hleVHnz9rbzt2Q9/aV26ghLW8AWIT033o1/Blgp31VNV1x2Ri2A7lYMbB1+CxZoDrwbEm5uvoVgUtXcetuWoqbHx9WaQphjPc=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0991;
 6:OezZ6ga0TDcJUAr+NqNFlNggE+vUKNVj10fXCmPHOHZccBYyCF1/pzhy3Bc8EHxCwY53pumNgeitYEF49JNR2ybtYxp6kNxy3IWFByNndL0fLkLDCfOqgpsVFx1PsAQcmQO4G5N3YjNrt5a5x4D4pE5yWkHDLXitzfRlTeDmFEkQROVYSOzB+CVKQr+Tf2WjxeaQanO1dRAC/Iqy00YkNlK5Q10J/9TthUpjonZKMiF5DBDYYB+fQbtq4fLkRpK72iDrRXdXRPrJqlE/9ISBxxY1chdPu5ZSD24f1nQITtUiVClqd8om2/8RuKsmz1rjLpfOzexBZx0+Y+dm4O59JJgpuHYIrxn1VXR0BQNQnURdHyiPp5U87rcYfdZWkRVsro7EKFmYBoc6KC2yumr3kxadweEBw7rM1XaTPZWoQ2moXSNZ1NzK4Ac/Z5896bp4zbQO0jgQirW9peoNWDqCI3I+2uwZYG7vywcOAUelyXq2GZGtnbiWOSyh8rR6UsI4;
 5:Z0mvvjjHnjIrk/++W7SAFo9uwoDwfD12FVd6oyv4qEHLOYRQ+jZJUm409i092hm/xlhcMvsPu9mD8Q/zrbw+REqbIWNZrCmMURLtQ2L5P6t36O5yUWfFUkQ7BZe9MqRsP3WslKuEltYPfaozdCVIwaJMA+Xh+hmeMwTvb9d/duk=;
 24:2sNAY43ONa3yxcIOja4G7vVSV1fMS2+XV4J2nYWOGs3dzXQRxQqkpwtBdiGxMOjCCAAT7Xdpct3KhoT4b9tQae0jHg+FVL/Qg1sXaqw7+xQ=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR08MB0991;
 7:2qzg47uaBC1JeHr9JOY7ayt+RUARUK4DRXj6BCnKgiQBSlX5MFVLhgGkG2dEEMJRmjdqMvZve9gCC5fVKr2v0ad5y29PxPaSZloTfE/wHcG6yZgSI2P5KkgL59m7zCIw/G1ucCKYSVCm1BL4VXjLI9WPUzaOMlu0C1ZLBZXlFR0Ci4lbJUMS6s6yIN6SE5h3sjtOoKikLO6cRiI0fzSKr74mjgpQmr2BAujMLydzoCkvHYukbKLByMpHARaNNx0n
X-MS-Office365-Filtering-Correlation-Id: 0cdc75b2-0b39-413f-c4bf-08d5acebaec4
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2018 09:37:38.6435 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0cdc75b2-0b39-413f-c4bf-08d5acebaec4
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB0991
Subject: Re: [Minios-devel] [PATCH v3 28/43] arm64: init the memory system
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVGh1LCBBcHIgMjYsIDIwMTggYXQgMDI6MTk6NTJQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IAo+IAo+IE9uIDE2LzA0LzE4IDA3OjMyLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gPit2
b2lkIGFyY2hfbW1fcHJlaW5pdCh2b2lkICpkdGJfcG9pbnRlcikKPiA+K3sKPiA+KyAgICBwYWRk
cl90ICoqZHRiX3AgPSBkdGJfcG9pbnRlcjsKPiA+KyAgICBwYWRkcl90ICpkdGIgPSAqZHRiX3A7
Cj4gPisgICAgdWludHB0cl90IGVuZCA9ICh1aW50cHRyX3QpICZfZW5kOwo+ID4rCj4gPisgICAg
ZHRiID0gdG9fdmlydCgoKHBhZGRyX3QpZHRiKSk7Cj4gPisgICAgZmlyc3RfZnJlZV9wZm4gPSBQ
Rk5fVVAodG9fcGh5cyhlbmQpKTsKPiA+KyAgICBtaW5fbWVtX3BmbiA9IFBGTl9VUCh0b19waHlz
KF90ZXh0KSArIE1JTl9NRU1fU0laRSk7Cj4gPisKPiA+KyAgICAvKgo+ID4rICAgICAqIFNldHVw
IHRoZSBtYXBwaW5nIGZvciBEZXZpY2UgVHJlZSwgb25seSBtYXAgMk0oTDJfU0laRSkgc2l6ZS4K
PiA+KyAgICAgKgo+ID4rICAgICAqIE5vdGU6IFRoZSBlYXJseV9hbGxvY19wYWdlKCkgd2lsbCBp
bmNyZWFzZSBAZmlyc3RfZnJlZV9wZm4uCj4gPisgICAgICovCj4gPisgICAgYnVpbGRfcGFnZXRh
YmxlKCh1bnNpZ25lZCBsb25nKWR0YiwgdmlydF90b19wZm4oKHVuc2lnbmVkIGxvbmcpZHRiKSwK
PiA+KyAgICAgICAgICAgICAgICAgICAgUEhZU19QRk4oTDJfU0laRSksIE1FTV9ERUZfQVRUUiwg
ZWFybHlfYWxsb2NfcGFnZSwgMik7Cj4gCj4gSSBmb3Jnb3QgdG8gY29tbWVudCBvbiB0aGlzLiBZ
b3UgY2FuJ3QgYXNzdW1lIHRoZSBEVEIgd2lsbCBiZSAyTUIgYWxpZ25lZApJcyB0aGVyZSBhbnkg
ZG9jdW1lbnQgYWJvdXQgdGhpcz8KSSB0aG91Z2h0IHRoZSBEVEIgaXMgMk0gYWxpZ25lZC4KPiBh
bmQgdGhlIGludGVyZmFjZSBvZiBidWlsZF9wYWdldGFibGUgaXMgc29tZXdoYXQgcXVpdGUgY29u
ZnVzaW5nIHRvIHVzZS4gU28KPiBhcmUgeW91IGdvaW5nIHRvIG1hcCAyIDJNQiBzZWN0aW9uPyBP
ciBvbmx5IG9uZT8KV2hhdCdzIHRoZSAic2VjdGlvbiIgbWVhbj8gZG8geW91IG1lYW4gb25lIFBN
RCBlbnRyeS4KClRoZSBjb2RlIG9ubHkgbWFwcyBvbmUgUE1EIGVudHJ5LgoKdGhhbmtzCkh1YW5n
IFNoaWppZQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
Ck1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qu
b3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3Mt
ZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Sat Apr 28 09:45:12 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sat, 28 Apr 2018 09:45:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fCMPn-0000m6-2M; Sat, 28 Apr 2018 09:45:11 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=bkmg=hr=arm.com=shijie.huang@srs-us1.protection.inumbo.net>)
 id 1fCMPl-0000m1-Sl
 for minios-devel@lists.xenproject.org; Sat, 28 Apr 2018 09:45:09 +0000
X-Inumbo-ID: a8f6cd8d-4ac8-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::627])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id a8f6cd8d-4ac8-11e8-9728-bc764e045a96;
 Sat, 28 Apr 2018 11:43:52 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=BD+lr/caHB/ut2ovegI9VFCpyuMGMhDpJsIEZ3ChyrY=;
 b=RMrOLYnBge1rS8bFWEgwEIHuD6hsrBf+o7D43ogygZiMWHQ5lO3KQzQ8w3vcRKMhGd7CifLWvGKTc1IWbdzAKqLnZFDX8yumd5f0Tnr7nMPc7P6nGhsQ63eHkPDzFpZbj3UmB1OkI/61RLjlgstp2kJoF/coNKhFELoqx9r5/Is=
Received: from AM4PR08CA0022.eurprd08.prod.outlook.com (2603:10a6:200:1a::32)
 by HE1PR0802MB2427.eurprd08.prod.outlook.com (2603:10a6:3:df::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.715.18; Sat, 28
 Apr 2018 09:45:00 +0000
Received: from AM5EUR03FT006.eop-EUR03.prod.protection.outlook.com
 (2a01:111:f400:7e08::209) by AM4PR08CA0022.outlook.office365.com
 (2603:10a6:200:1a::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.715.18 via Frontend
 Transport; Sat, 28 Apr 2018 09:45:00 +0000
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 217.140.96.140 as permitted sender) receiver=protection.outlook.com;
 client-ip=217.140.96.140; helo=nebula.arm.com;
Received: from nebula.arm.com (217.140.96.140) by
 AM5EUR03FT006.mail.protection.outlook.com (10.152.16.122) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id
 15.20.696.11 via Frontend Transport; Sat, 28 Apr 2018 09:44:59 +0000
Received: from ubuntu.shanghai.arm.com (10.1.2.79) by mail.arm.com
 (10.1.106.66) with Microsoft SMTP Server id 14.3.294.0; Sat, 28 Apr 2018
 10:44:57 +0100
Date: Sat, 28 Apr 2018 09:44:54 +0000
From: Huang Shijie <shijie.huang@arm.com>
To: Julien Grall <julien.grall@arm.com>
Message-ID: <20180428094453.GA6298@ubuntu.shanghai.arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-30-git-send-email-shijie.huang@arm.com>
 <bac0b4e2-8800-6723-e103-2bd46dcda392@arm.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <bac0b4e2-8800-6723-e103-2bd46dcda392@arm.com>
User-Agent: Mutt/1.5.24 (2015-08-30)
X-EOPAttributedMessage: 0
X-MS-Office365-Filtering-HT: Tenant
X-Forefront-Antispam-Report: CIP:217.140.96.140; IPV:CAL; SCL:-1; CTRY:GB;
 EFV:NLI; SFV:NSPM;
 SFS:(10009020)(396003)(39860400002)(376002)(39380400002)(346002)(2980300002)(438002)(199004)(189003)(33656002)(16586007)(336012)(47776003)(246002)(50466002)(356003)(97756001)(59450400001)(76176011)(5660300001)(8936002)(446003)(6346003)(4326008)(7696005)(58126008)(55016002)(229853002)(6862004)(126002)(54906003)(8676002)(476003)(86362001)(53546011)(11346002)(8666007)(426003)(486006)(305945005)(106002)(46406003)(72206003)(26826003)(478600001)(6666003)(6636002)(1076002)(104016004)(106466001)(186003)(2906002)(6246003)(77096007)(26005)(23726003)(316002)(39060400002)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2427; H:nebula.arm.com; FPR:;
 SPF:Pass; LANG:en; PTR:fw-tnat.cambridge.arm.com; A:1; MX:1; 
X-Microsoft-Exchange-Diagnostics: 1; AM5EUR03FT006;
 1:3tvn/CMvUdkVMaZl8IkcNOyiirRS4hO6Wpr1OPwtBfNK4iJG/HmNzrLhFM+h+L2jgGRZ606uU2sefOuTNh71sH0DxNbTCN9kuJoDPH0RlPvOmljveGtCrUXeiJ2Qhcu/
X-MS-PublicTrafficType: Email
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(5600026)(4608076)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060);
 SRVR:HE1PR0802MB2427; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 3:FER79HQZUh8QbmS0+DUOTZQrnxGaRxGeGXjohwPm8Kd8Ou+L63YFQ7zU3zCYbdGYhNt1S3sC1ifTA6yYP7k2bttQRqvHn4pCx7Og8JMGqXQe/yu2TvDEvQfrdQmNWEgv2moIn3CiyhLDbX8IgQMPTIhFCPvbwyjz6Z8m9loFbJH3VszFF7o+Pfw7naWCY1Fvj4xdhX2fzYk/CWUIUxM8P0AWvxgpQdfY84aOaR2oVvjU4vNoWcQZa97mYTrb/NNn2QA60ugJ7SuohVIgxUnxoBuk4BVeevS2nrmzMO4z8UBQY6F+pKipJfF+PjQ2B/HIEu/QDnk1IN8ws2XlgIJWdmAzqGwM834QSdYaIqDgeH8=;
 25:h1MS4cNkOznLtfDrL4icJkFwUtoiuUY3HPVDGl+LWPv+9YjKOeN4bdTvOxlmgI+1g7uFSY77FDOLuEL43yDSZ52K24pRbczx76q/SnN/wXBfaObS+78jlEvacqgBWE/cme8qPtTs1SabppfNzRwbl98Tl9pRfa8oc4qoDJc3WxhMzPvmuB8NxnWmLVO0upSBfpfg9ChPcIDL/OgVNlVDAy+xzmCzjWv37HRjh+4N/Jl8D/U/kqdkhVYmyL/+gR/uiRch/6hjRmzOA0nX40lYcSttisVALLr/UvMz9MsBiMMIYbKvXiXfiGPsw+9zNaT5aSDPIqGVgMlDLHSoB4bqNA==
X-MS-TrafficTypeDiagnostic: HE1PR0802MB2427:
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 31:3K2pxTEodq0Ato5JV1EqfiBErBpbvzQY7u+VoOE5NQipgkAlHI/hlEHC90oXuEMWs9qUc51wsgyJolcDLfJWGqzOgaTUo1k7XxWtQXGOylZXHrY8r/l0TZhSkhMpXIOziR9+nSBBAfFqLg6fUg5oeCI/9xg9NPr6FPHCcIHCv5k/lJL6k6RCmcWSASUAXMZpsZSUZbyaVzKDQ1q8NBjHMtxQu5lg5qagHMdgBvS4vVY=;
 20:qZeZxlJ+HQHh7l4mihzCGNVUovvdRTHRv5DAq8a7dubae82/WorBX9rtmAfjkq2rbVdpgaalLu6/PybGfv8nj12BiSqHT5i8gTyDPBxTFr0XTLU5q+d1ec9ToT+cSKzWu/J53/2qybuPVdZeUPpmxBxHr2gFVt7iEgM4hKLG6f0b9/aFsYnA0wnRwepIQ1x+aQLD4zpaWMekoiBaV5FLI9SH3M1Oz/+Q9t+Or0a8cK6UblbikJyO6h033uSbPh49Cs8ZibGRfrlV7g1s4NGBbDVeOK4J0lOhsSMlt9LrnbR2BG1QwT5q/WaMYP8SDUab8lKdiGFsdXCE/VWPqls/tN4LWILWaC0k+vFA4kK7ffY=;
 4:Pba0pg4XcPsBwNyipok0lNhRt5lQt21MlkCnqjmzKxPoq4TGC+3bp2BBR7dTGduMo+n+Oouwa4Qzwlnax6aVn+V+kG8+8MOf5t5PIjgQNBQDM3qtmFK8fvC45qOfLwMRwLuNRxPQNb4okxcb30+RfOesa5TibNnkAcGgXuZCom93A9K/rUoiSM6YN0j+PHQWJdXMnKeBao8pmij7geXuiLyDSwuXCcWpFIF7AXcaRcBvzY/I7t40BQRAzrl6m4JMxBBkghhvu6U6MWDqnOt5eR3pXwCzY3VVocl5XFYc7X17kEsAG0kQdLe0zM11JxMN
NoDisclaimer: True
X-Microsoft-Antispam-PRVS: <HE1PR0802MB24277E1ED4A1AB820B31286D848C0@HE1PR0802MB2427.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93004095)(10201501046)(3002001)(3231254)(944501410)(52105095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123562045)(20161123564045)(6072148)(201708071742011);
 SRVR:HE1PR0802MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0802MB2427; 
X-Forefront-PRVS: 0656A4403B
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2427;
 23:vsexUvGBnQdPVmsyvrOSbTgo9/WvacZIryJ8pae?=
 =?us-ascii?Q?8MxSVqf+JqgQFrma9Egb2zxsSDgTgk2b3a7GZz6U4Vlzf+2XTzFrxfdBT5XN?=
 =?us-ascii?Q?tvKKNzia2qYSPrdjADoObLyGvj/mwz4HX5tGGIMgNSVJmXzEiMQS9AmRL0cv?=
 =?us-ascii?Q?yQZzy/Y96tPFmrgWZF5PPtRL8cegyk2tMwvmrw0mkKWkJwp04vCrV0ZObQL1?=
 =?us-ascii?Q?iPJDKOzU17digtJR+BoTzshjy5awP5wxANnUEww7G1umBCRvIm8+Ae1fxQh2?=
 =?us-ascii?Q?cY52XaL6XYs1KSWs1N8xwGBRG2YHAA5f6Z8FGCIV2gy529+Zg7YOQ3X8eCQk?=
 =?us-ascii?Q?BF87SbhpGTkusVFzus9Vvt2/o8yfKMOb9/ociF9pbY/58eRBBS7Z6Zb69pT4?=
 =?us-ascii?Q?1TG/rjV7VyPSrUs0uZ/DSogP91YKzWJNxaAVVQpxACO2nZ5Z6PbzTCtbHUFx?=
 =?us-ascii?Q?P9HAYGfHa1d2si+XTyuGZlGqz+wr405PVmiXpOn9LrwC9jYntxknFs2LpbfG?=
 =?us-ascii?Q?bwDIe2jtFh7vOfvYgmz/VP0q1zFeeZAqoMy5FJLTPvQhU/lqolDgea4i8P4M?=
 =?us-ascii?Q?68PuX8J6GOEUpL8vL85sNtH78THnFnWMuOfitFMYwS1YdCJ6+GnuVlndacnG?=
 =?us-ascii?Q?udaJZ9d/VDZf6yB6h5E6Dh2irEDpThOZxKrZVpn+AOnjNMqQFvmUfNC8c7Iz?=
 =?us-ascii?Q?Iknv7oFPcUl9bhd277GAB60mLpAUitSsIm+EK+DwHlaOkKm04N6RUHWFm7Gr?=
 =?us-ascii?Q?1nV+NjjE8e4WbbFj0cX5mfCVxKv3wNXgNybDcS4LtHIZTKO2LYfUb/MwUpCY?=
 =?us-ascii?Q?N9n5kWOEVPzqvO2WuPHnPw+yaYQTj/65xvojXZvm7t/WQxOZhl/hnauLyj3/?=
 =?us-ascii?Q?6sjCn4Zg/MNBOEGC4RGdhH8byNYWyblfZRX4GgupHclSn6Y+8ErSaZdynXV2?=
 =?us-ascii?Q?ywSyiTgdTHmKxipxH2z8KDnqAR75+uhTFgHxZKi9psHV2K4XVnyJmzA/2OTR?=
 =?us-ascii?Q?CR0RcV9TKjXQZUmuJZAc+Tsfnt3aGe7nAAxdf6b9m7vTiDz5IVQ627b8rDvb?=
 =?us-ascii?Q?XV0gqhhdVRHdaDZhgcFwU30dsZ5CNeOLJVDQyRXk6C01+CdCwciQMvRGiytG?=
 =?us-ascii?Q?kfNzwQG0aPgHgbexHIeZrVFFImzfwHEYghI2Grl+sRfXw+gIT1kI1Guz66wv?=
 =?us-ascii?Q?L1BAY3UNqoX4+gwpo4F55gSlBcTAtw070IRt+kmUhLobMJ0WX0/LkAC2osy3?=
 =?us-ascii?Q?zKiMe3fLnGwmW4vEaARBhGre+cDHa5GDrjiYqjmYAtkwCYr6X60Xl/kNBUbg?=
 =?us-ascii?Q?OVHJvZ6oazW1C+O23JSYOI7E=3D?=
X-Microsoft-Antispam-Message-Info: vcOWMTLXjC3TDIDpOOuBEVAcW0yOtvfexxLHUBpRrcK/3ePxYz64Cp32hiPYgQ2QAzduK+J5TMw3GZMDHJYqryRU3f89EOZcDHr2fdtDSXtpXumTpi7ygZNFgp7/xIRTEzfk7Rno5nm/10byMpny8IMOoyep+Vp/2wLKQXiWRavP6Zgk+wKdxjhlneKom4nWKvFBmeBI11Gawc2BoQ2dEfZdcX7AESewwngpiWMZVbW1i/SHOyje9pZv4HhFWFnj3lC4P/ZBQIUz9KIOhpMP6jFuOsT7AGpkQce2HmGOJXlFP2KgUVByv03DjCiKYP88qgu1xLHIk+lCot3/cuhvp7lat21O+CLI7NB0uDBud4XKAPF3a3pXIVTuznup2MWPHXbha9siPnIuoyB7UtQZg0Wdl7UoeRtxXaf/LBhESXw=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 6:gJFWs/3AjCVwe7aWAK9MbShhH+8U2/EPYrvropGZiVEaq+5YSzfvmqJzY7r6rjLcBYGpURs2ZCBhJ0DNLLP6VOlqheEJ1+mHVvYoMeHeEWCa5wy7ufx0gvlc7F8iFQgMevBgMxYHuvugZCTyAplF/QF5BgkpTHN/IGnlXOrWZwd/E1SwGIS7Yjo/LtUVA6CO1BHx+XUOHdHUYGG5jIkE4cmE8A4gOM+WesAYoP7uidb41IkCyotM9iaXOMSF4lWgHI9GE++yNFG1QJVyE/JaKQBZcs0UDc/NvJCfDAHpl5/NEiFFN8Vo4MfDb1cwkE/AuF2YnktcDttY7yvGtMMF8VMsW0XaS3crmZV6jXoJ5/cNPbOPK+qZYSSnkHvELaPqx+ta3jcsiM1LpAJrCARCrbDjfynLgO7tt8eP7i11V+4oKSiD7UgypMSeB3URQ64u6UtuCe3AuDPSgtqt6pcIFrxHYvE0HsK3wijx+ZTN9vIEPRApIVxcVvCvFz9KG8Ri;
 5:cTpdQKpbwCue/D22YqaqBMzpvDcEll5pgcEXTQh0uZLmPanDDlUQETcx8yZb8pywEpFgLyfZd/Uo+EYJLYlAVcGK5ObWUoHVH4DP3F90s0GhycRDEp/t583fobvvG7/j6mAXxODAbn0JHkKefrj/9GoVY1knkMgL8kK7DuXJSyA=;
 24:p18W97bUbibFRvUx46eCk60z+JWQktJjuTdFvGfbWCNoFRajHsZCs0yPaxNjrjxrw2aMiypCibvFifyswhqBVlTaXotu3MLuzpW9QuoAWFs=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2427;
 7:9vSfYHr8wswldXxcii7C019D/Y1Gxcy26H9q9T2zKGCJhMRyJzR2TnnoDn+2RuGTCSDhYfEfCnxnkO336TajTu15AS8tygLaZglMLakXW6A5YgsjTnJuapMbbxBF6x6u1kWRFntBUeM1ErBOYwpWkX6iL/K1eL0hJooPdaIiYsO7gCj04pV07YTCyJEaJCnzYhDXXSMZcTQqVmMim1JtvkH45uIQ6/8e1RDweq/RSoT5BI/b1OVzokReC27GAY7S
X-MS-Office365-Filtering-Correlation-Id: 798790aa-d798-4ea8-3c01-08d5acecb591
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2018 09:44:59.8434 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 798790aa-d798-4ea8-3c01-08d5acecb591
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[217.140.96.140];
 Helo=[nebula.arm.com]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2427
Subject: Re: [Minios-devel] [PATCH v3 29/43] arm64: set the mapping for
 console and xenbus
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gVGh1LCBBcHIgMjYsIDIwMTggYXQgMDI6MzE6MzJQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdy
b3RlOgo+IEhpLAo+IAo+IE9uIDE2LzA0LzE4IDA3OjMyLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4g
PlRoaXMgcGF0Y2ggc2V0cyB0aGUgbWFwcGluZyBmb3IgY29uc29sZSBhbmQgeGVuYnVzLgo+ID5K
dXN0IGZvbGxvd2luZyB3aGF0IHg4NiBkb2VzOgo+ID4KPiA+ICAgIDEuKSBBZGQgVklSVF9LRVJO
RUxfQVJFQS9WSVJUX0RFTUFORF9BUkVBIHRvIGxpbWl0Cj4gPiAgICAgICAgdGhlIG1lbW9yeSBy
YW5nZXMgZm9yIGFsbG9jX3ZpcnRfa2VybmVsKCkuCj4gPgo+ID4gICAgMi4pIENoYW5nZSBtYXBf
ZnJhbWVfdmlydCgpIHRvIHNldHVwIHRoZSBwYWdlIHRhYmxlIGZvcgo+ID4gICAgICAgIGNvbnNv
bGUgYW5kIHhlbmJ1cy4KPiAKPiBtYXBfZnJhbWVfdmlydCB3YXMgYWxyZWFkeSBpbXBsZW1lbnRl
ZC4gU28gd2hhdCdzIHRoZSBkaWZmZXJlbnQgd2l0aCB0b2RheT8KVGhlIG9sZCBtYXBfZnJhbWVf
dmlydCBkb2VzIG5vdCBzZXR1cCB0aGUgcGFnZSB0YWJsZSwgd2hpbGUgdGhlIG5ldyBvbmUgZG9l
cy4KCj4gCj4gPgo+ID5TaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bh
cm0uY29tPgo+ID4tLS0KPiA+ICBhcmNoL2FybS9tbS5jICAgICAgICAgfCA0NCArKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQo+ID4gIGluY2x1ZGUvYXJtL2FyY2hf
bW0uaCB8ICAyICsrCj4gPiAgMiBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCA1IGRl
bGV0aW9ucygtKQo+ID4KPiA+ZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21tLmMgYi9hcmNoL2FybS9t
bS5jCj4gPmluZGV4IGVkNTkxNTkuLmU4M2FjNzAgMTAwNjQ0Cj4gPi0tLSBhL2FyY2gvYXJtL21t
LmMKPiA+KysrIGIvYXJjaC9hcm0vbW0uYwo+ID5AQCAtMjMzLDEyICsyMzMsMTUgQEAgdm9pZCBp
bml0X3BhZ2V0YWJsZSh1bnNpZ25lZCBsb25nICpzdGFydF9wZm4sIHVuc2lnbmVkIGxvbmcgYmFz
ZSwKPiA+ICAgICAgaW5pdF9wYWdldGFibGVfb2sgPSAxOwo+ID4gIH0KPiA+K3N0YXRpYyB1bnNp
Z25lZCBsb25nIHZpcnRfa2VybmVsX2FyZWFfZW5kOwo+IAo+IE5ld2xpbmUgaGVyZSBwbGVhc2Uu
Cm9rYXkuCj4gCj4gPiAgdm9pZCBhcmNoX21tX3ByZWluaXQodm9pZCAqZHRiX3BvaW50ZXIpCj4g
PiAgewo+ID4gICAgICBwYWRkcl90ICoqZHRiX3AgPSBkdGJfcG9pbnRlcjsKPiA+ICAgICAgcGFk
ZHJfdCAqZHRiID0gKmR0Yl9wOwo+ID4gICAgICB1aW50cHRyX3QgZW5kID0gKHVpbnRwdHJfdCkg
Jl9lbmQ7Cj4gPisgICAgdmlydF9rZXJuZWxfYXJlYV9lbmQgPSBWSVJUX0tFUk5FTF9BUkVBOwo+
ID4rCj4gPiAgICAgIGR0YiA9IHRvX3ZpcnQoKChwYWRkcl90KWR0YikpOwo+ID4gICAgICBmaXJz
dF9mcmVlX3BmbiA9IFBGTl9VUCh0b19waHlzKGVuZCkpOwo+ID4gICAgICBtaW5fbWVtX3BmbiA9
IFBGTl9VUCh0b19waHlzKF90ZXh0KSArIE1JTl9NRU1fU0laRSk7Cj4gPkBAIC0yNTQsNiArMjU3
LDQyIEBAIHZvaWQgYXJjaF9tbV9wcmVpbml0KHZvaWQgKmR0Yl9wb2ludGVyKQo+ID4gICAgICAq
ZHRiX3AgPSBkdGI7Cj4gPiAgfQo+ID4rc3RhdGljIHVuc2lnbmVkIGxvbmcgYWxsb2NfdmlydF9r
ZXJuZWwodW5zaWduZWQgbl9wYWdlcykKPiA+K3sKPiA+KyAgICB1bnNpZ25lZCBsb25nIGFkZHI7
Cj4gPisKPiA+KyAgICBhZGRyID0gdmlydF9rZXJuZWxfYXJlYV9lbmQ7Cj4gPisgICAgdmlydF9r
ZXJuZWxfYXJlYV9lbmQgKz0gUEFHRV9TSVpFICogbl9wYWdlczsKPiA+KyAgICBBU1NFUlQodmly
dF9rZXJuZWxfYXJlYV9lbmQgPD0gVklSVF9ERU1BTkRfQVJFQSk7Cj4gPisKPiA+KyAgICByZXR1
cm4gYWRkcjsKPiA+K30KPiAKPiBDb3VsZG4ndCB3ZSBtYWtlIHRoZSB2aXJ0IGFsbG9jYXRpb24g
Y29tbW9uIGJldHdlZW4gYXJtIGFuZCB4ODY/CkZpcnN0IHN0ZXAsIG1ha2UgaXQgc2ltcGxlLCBq
dXN0IGNoYW5nZSB0aGUgYXJtIGNvZGUuIDopCgo+IAo+ID4rCj4gPitzdGF0aWMgcGFkZHJfdCBh
bGxvY19uZXdfcGFnZSh2b2lkKQo+ID4rewo+ID4rICAgIHVuc2lnbmVkIGxvbmcgcGFnZTsKPiA+
Kwo+ID4rICAgIHBhZ2UgPSBhbGxvY19wYWdlKCk7Cj4gPisgICAgaWYgKCFwYWdlKQo+ID4rICAg
ICAgICBCVUcoKTsKPiA+KyAgICBtZW1zZXQoKHZvaWQgKilwYWdlLCAwLCBQQUdFX1NJWkUpOwo+
ID4rICAgIGRzYihpc2hzdCk7Cj4gCj4gV2h5IHRoZSBkc2IgaGVyZT8KTGV0IHRoZSBwYWdlIGJl
IHplcm9lZC4KCj4gCj4gPisgICAgcmV0dXJuIHRvX3BoeXMocGFnZSk7Cj4gPit9Cj4gPisKPiA+
K3Vuc2lnbmVkIGxvbmcgbWFwX2ZyYW1lX3ZpcnQodW5zaWduZWQgbG9uZyBtZm4pCj4gPit7Cj4g
PisgICAgdW5zaWduZWQgbG9uZyBhZGRyOwo+ID4rICAgIGludCByZXQ7Cj4gPisKPiA+KyAgICBh
ZGRyID0gYWxsb2NfdmlydF9rZXJuZWwoMSk7Cj4gPisgICAgcmV0ID0gYnVpbGRfcGFnZXRhYmxl
KGFkZHIsIG1mbiwgMSwgTUVNX0RFRl9BVFRSLAo+ID4rICAgICAgICAgICAgICAgICAgICBpbml0
X3BhZ2V0YWJsZV9vaz8gYWxsb2NfbmV3X3BhZ2U6IGVhcmx5X2FsbG9jX3BhZ2UsIDMpOwo+IAo+
IFRoaXMgc21lbGwgbGlrZSB5b3Ugd2FudCB0byBpbnRyb2R1Y2UgaGVscGVyLiBJdCBkb2VzIG5v
dCBtYWtlIHNlbnNlIGZvciB0aGUKPiBjYWxsZXIgdG8gY2FyZSBob3cgdGhlIHBhZ2UtdGFibGUg
d2lsbCBiZSBhbGxvY2F0ZWQgbm9yIHdoaWNoIGxldmVsLgpUaGUgY2FsbGVyIGRvZXMgbm90IG5l
ZWQgdG8ga25vdyBob3cgbWFueSBsZXZlbC4KClRoZSBidWlsZF9wYWdldGFibGUoKSBpcyB1c2Vk
IGludGVybmFsbHksIGl0IGlzIG5vdCBhIEFQSSBmdW5jdGlvbi4uCj4gCj4gPisgICAgQVNTRVJU
KHJldCA9PSAwKTsKPiA+Kwo+ID4rICAgIHJldHVybiBhZGRyOwo+ID4rfQo+ID4rCj4gCj4gV2h5
IG5vdCBpbXBsZW1lbnRpbmcgdGhlIGZ1bmN0aW9uIHdlcmUgaXQgd2FzPwpXZSBuZWVkIHRvIHNl
dHVwIHRoZSBwYWdlIHRhYmxlIGVudHJ5Lgo+IAo+ID4gIHZvaWQgYXJjaF9pbml0X21tKHVuc2ln
bmVkIGxvbmcgKnN0YXJ0X3Bmbl9wLCB1bnNpZ25lZCBsb25nICptYXhfcGZuX3ApCj4gPiAgewo+
ID4gICAgICBpbnQgbWVtb3J5Owo+ID5AQCAtMzk0LDggKzQzMywzIEBAIGdyYW50X2VudHJ5X3Yx
X3QgKmFyY2hfaW5pdF9nbnR0YWIoaW50IG5yX2dyYW50X2ZyYW1lcykKPiA+ICAgICAgcmV0dXJu
IHRvX3ZpcnQoZ250dGFiX3RhYmxlKTsKPiA+ICB9Cj4gPi0KPiA+LXVuc2lnbmVkIGxvbmcgbWFw
X2ZyYW1lX3ZpcnQodW5zaWduZWQgbG9uZyBtZm4pCj4gPi17Cj4gPi0gICAgcmV0dXJuIG1mbl90
b192aXJ0KG1mbik7Cj4gPi19Cj4gCj4gPmRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcmNoX21t
LmggYi9pbmNsdWRlL2FybS9hcmNoX21tLmgKPiA+aW5kZXggZGI2ZTc4MS4uNGYzZmQ4ZiAxMDA2
NDQKPiA+LS0tIGEvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4gPisrKyBiL2luY2x1ZGUvYXJtL2Fy
Y2hfbW0uaAo+ID5AQCAtNSw2ICs1LDggQEAgdHlwZWRlZiB1aW50NjRfdCBwYWRkcl90Owo+ID4g
ICNkZWZpbmUgUFJJcGFkZHIgImx4Igo+ID4gICNkZWZpbmUgTUlOX01FTV9TSVpFICAgICAgICAg
ICAgKDB4NDAwMDAwKQo+ID4gICNkZWZpbmUgTUFYX01FTV9TSVpFICAgICAgICAgICAgKDFVTCA8
PCAzOSkKPiA+KyNkZWZpbmUgVklSVF9LRVJORUxfQVJFQSAgICAgICAgKCh1bnNpZ25lZCBsb25n
KXRvX3ZpcnQoTUFYX01FTV9TSVpFKSkKPiA+KyNkZWZpbmUgVklSVF9ERU1BTkRfQVJFQSAgICAg
ICAgKFZJUlRfS0VSTkVMX0FSRUEgKyBNQVhfTUVNX1NJWkUpCj4gSSBkb24ndCB1bmRlcnN0YW5k
IHRoZSBwdXJwb3NlIG9mIHRoZSAyIHZhcmlhYmxlcyBub3IgdGhlIHZhbHVlIHlvdSBnYXZlIHRv
Cj4gdGhlbS4gSG93IGNvbWUgeW91IGFyZSB1c2luZyBNQVhfTUVNX1NJWkUgYXMgcGh5c2ljYWwg
YWRkcmVzcyB0byBmaW5kIHRoZQo+IHZpcnQgYWRkcmVzcz8KVGhpcyBpcyB0byBrZWVwIGFsaWdu
ZWQgd2l0aCB4ODYuClBsZWFzZSBjaGVjayB0aGUgeDg2IGNvZGUuCgpUaGFua3MKSHVhbmcgU2hp
amllCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5p
b3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpo
dHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 06:55:11 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 06:55:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD2iL-0005uF-SG; Mon, 30 Apr 2018 06:55:09 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=9iis=ht=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1fD2iK-0005u9-7v
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 06:55:08 +0000
X-Inumbo-ID: 3b0090f6-4c43-11e8-9728-bc764e045a96
Received: from mail-lf0-x22b.google.com (unknown [2a00:1450:4010:c07::22b])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 3b0090f6-4c43-11e8-9728-bc764e045a96;
 Mon, 30 Apr 2018 08:53:48 +0200 (CEST)
Received: by mail-lf0-x22b.google.com with SMTP id m18-v6so10767875lfb.0
 for <minios-devel@lists.xenproject.org>; Sun, 29 Apr 2018 23:55:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=7ICNrregl5EftoBXyVSWB/hmdrTnlue4TSpDxuE9JFU=;
 b=eflWLz7Hsh2nHH4+1dsDyx4xFUeU625GlTv009X2AmzOfRbSV3YoQJyDmRu6VElz1e
 05DQ1yzEVWBRmc/Kp6hP4kk+Hn0CLhQH31VkJLc5TaovRsQdHQ5xR0mrrr9FIjBvrhfV
 ZG6rUS90i8kZ8rRte5GOzDdep48Mwdp30I5oRwVApTMb/SRmRwFcQgfjDwEI4RXQuAb8
 TsJzJHD0ZFxeccBB3w9n3gt/68uvHsma3Iy/hxTmf9ZkP9uoJegRmKMitKp+daxxrXak
 r1KxZpHe5H2s4oG+ejFK/vo88ktY5E3MZMOkqPeMSg7+gcOKhHf1lktQnMkcp5cYn3kh
 NSog==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=7ICNrregl5EftoBXyVSWB/hmdrTnlue4TSpDxuE9JFU=;
 b=a8u29QVc48TmcBPFK7wVVa5h4sN6L+O7IpMnH4N1lSvAnMEpZY1jcOSrFddWwjuOrL
 2LRr7UD6IrMvm2U/9IC/tS8XePYBPsCjdalZ6CUry8faaEqbp3AqtrwkqSQt/VwWwtXi
 k3qDe1tWSooich2Xol3WYoMXLzM6Up0sZFsnpGnAvIx4SGfNCyGxdBWtHiIQ24lugSFD
 ZCdFygwsH/pern/ifBjwJ2tPlrzNStBr09/DF7rHegIEyTHsopciFc2YqisvKXaw0EjB
 RcigWFrydVtXnFGzdN8D84OKJtGEpVokO1unqPCdEHbi0DiXWch1Pgu5T0dDl4cc7wx+
 siug==
X-Gm-Message-State: ALQs6tAGmJp84TyLOLmF/As+Vkpg1/kA2WI54pvxqn+3y+iTWO55aNkI
 HDlPxCI2t+PX0LzY7gRmz80sNRfJf0lGU0vX+mQ=
X-Google-Smtp-Source: AB8JxZriRiVIeSzCiEa+A45XwIaNYDy/MQP2wWjVq6cJvYB8sRBVQbyPfeh/q3INwmXnMEsIp84zuadWd1VIQ+wT+Rk=
X-Received: by 2002:a19:4b41:: with SMTP id
 y62-v6mr6774425lfa.11.1525071304276; 
 Sun, 29 Apr 2018 23:55:04 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:d899:0:0:0:0:0 with HTTP; Sun, 29 Apr 2018 23:55:03
 -0700 (PDT)
In-Reply-To: <b9a24604-91fe-1218-6053-8ba18c32556c@neclab.eu>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
 <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
 <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
 <CAHP4M8WxD0KKGzwMBVQpge9k88BL-Zo1_0nsML0bV9_3uLb_zg@mail.gmail.com>
 <b9a24604-91fe-1218-6053-8ba18c32556c@neclab.eu>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Mon, 30 Apr 2018 12:25:03 +0530
Message-ID: <CAHP4M8XPgk6+4Jrdv+L_tgKhKaj9BXNK-678sWpQ7vrRoyLpyQ@mail.gmail.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: multipart/mixed; boundary="===============5462940113190714403=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============5462940113190714403==
Content-Type: multipart/alternative; boundary="0000000000005941cb056b0b55f2"

--0000000000005941cb056b0b55f2
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi Simon.



>>
> Right now, you can test Unikraft with Xen on arm32. Be aware that there i=
s
> a open bug on the memory allocator for arm (see:https://wiki.xenproject.o
> rg/wiki/Category:Unikraft_Users). arm64 with Xen is currently not
> supported but we working on it. Same for KVM and baremetal.
>
> We use cubieboard2/3 for arm32 tests. These boards are even officially
> supported by Debian and can run Xen.
>


So we bought a cubieboard2 :)

Brought the board up without xen.
Then brought the board up with xen.

At this point, "sudo xl list" lists "Domain-0" fine.


Now, we are wanting to run the helloworld-unikraft-unikernel.

To keep aside any cross-compilation issues, we are compiling on cubieboard2
itself.
Following is the .config file (majorly containing the "ukdebug" and
"ukboot" changes  required for arm32) :

###########################################################################=
######
#
# Automatically generated file; DO NOT EDIT.
# Unikraft/0.2~8b94640 Configuration
#

#
# Architecture Selection
#
# ARCH_X86_64 is not set
ARCH_ARM_32=3Dy
# MARCH_CORTEXA7 is not set
MARCH_A20NEON=3Dy

#
# Platform Support
#
PLAT_XEN=3Dy
XEN_DBGEMERGENCY=3Dy
PLAT_LINUXU=3Dy
LINUXU_DEFAULT_HEAPMB=3D4

#
# Library Configuration
#
HAVE_BOOTENTRY=3Dy
# HAVE_LIBC is not set
# HAVE_SCHED is not set
LIBUKBOOT=3Dy
LIBUKBOOT_BANNER=3Dy
LIBUKBOOT_MAXNBARGS=3D60
# LIBUKBOOT_INITALLOC is not set
LIBUKDEBUG=3Dy
LIBUKDEBUG_PRINTK=3Dy
LIBUKDEBUG_PRINTD=3Dy
# LIBUKDEBUG_PRINTD_EXTRA is not set
# LIBUKDEBUG_PRINTD_INFO is not set
# LIBUKDEBUG_PRINTD_WARN is not set
LIBUKDEBUG_PRINTD_ERR=3Dy
# LIBUKDEBUG_PRINTD_CRIT is not set
# LIBUKDEBUG_NOREDIR is not set
# LIBUKDEBUG_REDIR_PRINTD is not set
LIBUKDEBUG_REDIR_PRINTK=3Dy
LIBUKDEBUG_ENABLE_ASSERT=3Dy
LIBUKARGPARSE=3Dy
LIBNOLIBC=3Dy
LIBUKALLOC=3Dy
# LIBUKALLOC_IFPAGES is not set
# LIBUKALLOC_IFSTATS is not set
# LIBUKALLOCBBUDDY is not set
# LIBUKSCHED is not set
# LIBUKSCHEDCOOP is not set
LIBFDT=3Dy

#
# Build Options
#
# OPTIMIZE_NONE is not set
OPTIMIZE_PERF=3Dy
# OPTIMIZE_SIZE is not set
# OPTIMIZE_DEADELIM is not set
# DEBUG_SYMBOLS is not set
OPTIMIZE_STRIP=3Dy
# RECORD_BUILDTIME is not set
CROSS_COMPILE=3D""

#
# Application Options
#
APPHELLOWORLD_DEPENDENCIES=3Dy
APPHELLOWORLD_PRINTARGS=3Dy
UK_NAME=3D"helloworld"
###########################################################################=
######


However, upon compilation, following is observed :

###########################################################################=
######
debian@debian-armhf:~/unikraft/apps/helloworld$ make
make[1]: Entering directory '/home/debian/unikraft/unikraft'
  CP      config
  CC      libxenplat: hypervisor.o
cc1: error: bad value (cortex-a7) for -mcpu switch
cc1: error: bad value (cortex-a7) for -mtune switch
/home/debian/unikraft/unikraft/support/build/Makefile.build:48: recipe for
target
'/home/debian/unikraft/apps/helloworld/build/libxenplat/hypervisor.o' faile=
d
make[1]: ***
[/home/debian/unikraft/apps/helloworld/build/libxenplat/hypervisor.o] Error
1
make[1]: Leaving directory '/home/debian/unikraft/unikraft'
Makefile:6: recipe for target 'all' failed
make: *** [all] Error 2
debian@debian-armhf:~/unikraft/apps/helloworld$
###########################################################################=
######



So, we proceed to remove the -mtune=3Dcortex-a7 and -mcpu=3Dcortex-a7 flags
from unikraft/unikraft/arch/arm/Makefile.uk.
Thereafter, upon recompiling, we get

###########################################################################=
######
debian@debian-armhf:~/unikraft/apps/helloworld$ make
make[1]: Entering directory '/home/debian/unikraft/unikraft'
  CP      config
  CC      libxenplat: hypervisor.o
In file included from
/home/debian/unikraft/unikraft/plat/xen/hypervisor.c:43:0:
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In function
=E2=80=98ukarch_test_and_clr_bit=E2=80=99:
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h:90:2: warning:
implicit declaration of function =E2=80=98__atomic_fetch_and=E2=80=99
[-Wimplicit-function-declaration]
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h:90:40: error:
=E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (first use in this function)
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h:90:40: note: each
undeclared identifier is reported only once for each function it appears in
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In function
=E2=80=98ukarch_test_and_set_bit=E2=80=99:
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h:105:2: warning:
implicit declaration of function =E2=80=98__atomic_fetch_or=E2=80=99
[-Wimplicit-function-declaration]
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h:105:38: error:
=E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (first use in this function)
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In function
=E2=80=98ukarch_test_and_clr_bit_sync=E2=80=99:
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h:148:40: error:
=E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in this function)
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In function
=E2=80=98ukarch_test_and_set_bit_sync=E2=80=99:
/home/debian/unikraft/unikraft/include/uk/arch/atomic.h:161:38: error:
=E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in this function)
/home/debian/unikraft/unikraft/plat/xen/hypervisor.c: In function
=E2=80=98do_hypervisor_callback=E2=80=99:
/home/debian/unikraft/unikraft/plat/xen/hypervisor.c:71:2: warning:
implicit declaration of function =E2=80=98__atomic_exchange_n=E2=80=99
[-Wimplicit-function-declaration]
/home/debian/unikraft/unikraft/plat/xen/hypervisor.c:71:7: error:
=E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in this function)
/home/debian/unikraft/unikraft/support/build/Makefile.build:48: recipe for
target
'/home/debian/unikraft/apps/helloworld/build/libxenplat/hypervisor.o' faile=
d
make[1]: ***
[/home/debian/unikraft/apps/helloworld/build/libxenplat/hypervisor.o] Error
1
make[1]: Leaving directory '/home/debian/unikraft/unikraft'
Makefile:6: recipe for target 'all' failed
make: *** [all] Error 2
###########################################################################=
######


What are we missing?


Thanks and Regards,
Ajay

>
>> Thanks and Regards,
>> Ajay
>>
>>
>
> Thanks,
>
> Simon
>



--=20
Regards,
Ajay

--0000000000005941cb056b0b55f2
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi Simon.<br><br><br><div><div class=3D"gmail_extra"><div =
class=3D"gmail_quote"><blockquote class=3D"gmail_quote" style=3D"margin:0px=
 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><sp=
an class=3D"gmail-"><blockquote class=3D"gmail_quote" style=3D"margin:0px 0=
px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
</blockquote>
<br></span>
Right now, you can test Unikraft with Xen on arm32. Be aware that there is =
a open bug on the memory allocator for arm (see:<a href=3D"https://wiki.xen=
project.org/wiki/Category:Unikraft_Users" rel=3D"noreferrer" target=3D"_bla=
nk">https://wiki.xenproject.o<wbr>rg/wiki/Category:Unikraft_User<wbr>s</a>)=
. arm64 with Xen is currently not supported but we working on it. Same for =
KVM and baremetal.<br>
<br>
We use cubieboard2/3 for arm32 tests. These boards are even officially supp=
orted by Debian and can run Xen.<br></blockquote><div><br></div><div><br>So=
 we bought a cubieboard2 :)<br><br></div><div>Brought the board up without =
xen.<br>Then brought the board up with xen.<br><br></div><div>At this point=
, &quot;sudo xl list&quot; lists &quot;Domain-0&quot; fine.<br><br><br></di=
v><div>Now, we are wanting to run the helloworld-unikraft-unikernel.<br><br=
></div><div>To keep aside any cross-compilation issues, we are compiling on=
 cubieboard2 itself.<br></div><div>Following is the .config file (majorly c=
ontaining the &quot;ukdebug&quot; and &quot;ukboot&quot; changes=C2=A0 requ=
ired for arm32) :<br><br>##################################################=
###############################<br>#<br># Automatically generated file; DO =
NOT EDIT.<br># Unikraft/0.2~8b94640 Configuration<br>#<br><br>#<br># Archit=
ecture Selection<br>#<br># ARCH_X86_64 is not set<br>ARCH_ARM_32=3Dy<br># M=
ARCH_CORTEXA7 is not set<br>MARCH_A20NEON=3Dy<br><br>#<br># Platform Suppor=
t<br>#<br>PLAT_XEN=3Dy<br>XEN_DBGEMERGENCY=3Dy<br>PLAT_LINUXU=3Dy<br>LINUXU=
_DEFAULT_HEAPMB=3D4<br><br>#<br># Library Configuration<br>#<br>HAVE_BOOTEN=
TRY=3Dy<br># HAVE_LIBC is not set<br># HAVE_SCHED is not set<br>LIBUKBOOT=
=3Dy<br>LIBUKBOOT_BANNER=3Dy<br>LIBUKBOOT_MAXNBARGS=3D60<br># LIBUKBOOT_INI=
TALLOC is not set<br>LIBUKDEBUG=3Dy<br>LIBUKDEBUG_PRINTK=3Dy<br>LIBUKDEBUG_=
PRINTD=3Dy<br># LIBUKDEBUG_PRINTD_EXTRA is not set<br># LIBUKDEBUG_PRINTD_I=
NFO is not set<br># LIBUKDEBUG_PRINTD_WARN is not set<br>LIBUKDEBUG_PRINTD_=
ERR=3Dy<br># LIBUKDEBUG_PRINTD_CRIT is not set<br># LIBUKDEBUG_NOREDIR is n=
ot set<br># LIBUKDEBUG_REDIR_PRINTD is not set<br>LIBUKDEBUG_REDIR_PRINTK=
=3Dy<br>LIBUKDEBUG_ENABLE_ASSERT=3Dy<br>LIBUKARGPARSE=3Dy<br>LIBNOLIBC=3Dy<=
br>LIBUKALLOC=3Dy<br># LIBUKALLOC_IFPAGES is not set<br># LIBUKALLOC_IFSTAT=
S is not set<br># LIBUKALLOCBBUDDY is not set<br># LIBUKSCHED is not set<br=
># LIBUKSCHEDCOOP is not set<br>LIBFDT=3Dy<br><br>#<br># Build Options<br>#=
<br># OPTIMIZE_NONE is not set<br>OPTIMIZE_PERF=3Dy<br># OPTIMIZE_SIZE is n=
ot set<br># OPTIMIZE_DEADELIM is not set<br># DEBUG_SYMBOLS is not set<br>O=
PTIMIZE_STRIP=3Dy<br># RECORD_BUILDTIME is not set<br>CROSS_COMPILE=3D&quot=
;&quot;<br><br>#<br># Application Options<br>#<br>APPHELLOWORLD_DEPENDENCIE=
S=3Dy<br>APPHELLOWORLD_PRINTARGS=3Dy<br>UK_NAME=3D&quot;helloworld&quot;<br=
>##########################################################################=
#######<br></div><div><br><br>However, upon compilation, following is obser=
ved :<br><br>##############################################################=
###################<br>debian@debian-armhf:~/unikraft/apps/helloworld$ make=
 <br>make[1]: Entering directory &#39;/home/debian/unikraft/unikraft&#39;<b=
r>=C2=A0 CP=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 config<br>=C2=A0 CC=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 libxenplat: hypervisor.o<br>cc1: error: bad value (corte=
x-a7) for -mcpu switch<br>cc1: error: bad value (cortex-a7) for -mtune swit=
ch<br>/home/debian/unikraft/unikraft/support/build/Makefile.build:48: recip=
e for target &#39;/home/debian/unikraft/apps/helloworld/build/libxenplat/hy=
pervisor.o&#39; failed<br>make[1]: *** [/home/debian/unikraft/apps/hellowor=
ld/build/libxenplat/hypervisor.o] Error 1<br>make[1]: Leaving directory &#3=
9;/home/debian/unikraft/unikraft&#39;<br>Makefile:6: recipe for target &#39=
;all&#39; failed<br>make: *** [all] Error 2<br>debian@debian-armhf:~/unikra=
ft/apps/helloworld$ <br>###################################################=
##############################<br><br><br><br></div><div>So, we proceed to =
remove the -mtune=3Dcortex-a7 and -mcpu=3Dcortex-a7 flags from unikraft/uni=
kraft/arch/arm/Makefile.uk.<br></div><div>Thereafter, upon recompiling, we =
get<br><br>################################################################=
#################<br>debian@debian-armhf:~/unikraft/apps/helloworld$ make<b=
r>make[1]: Entering directory &#39;/home/debian/unikraft/unikraft&#39;<br>=
=C2=A0 CP=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 config<br>=C2=A0 CC=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 libxenplat: hypervisor.o<br>In file included from /home/deb=
ian/unikraft/unikraft/plat/xen/hypervisor.c:43:0:<br>/home/debian/unikraft/=
unikraft/include/uk/arch/atomic.h: In function =E2=80=98ukarch_test_and_clr=
_bit=E2=80=99:<br>/home/debian/unikraft/unikraft/include/uk/arch/atomic.h:9=
0:2: warning: implicit declaration of function =E2=80=98__atomic_fetch_and=
=E2=80=99 [-Wimplicit-function-declaration]<br>/home/debian/unikraft/unikra=
ft/include/uk/arch/atomic.h:90:40: error: =E2=80=98__ATOMIC_RELAXED=E2=80=
=99 undeclared (first use in this function)<br>/home/debian/unikraft/unikra=
ft/include/uk/arch/atomic.h:90:40: note: each undeclared identifier is repo=
rted only once for each function it appears in<br>/home/debian/unikraft/uni=
kraft/include/uk/arch/atomic.h: In function =E2=80=98ukarch_test_and_set_bi=
t=E2=80=99:<br>/home/debian/unikraft/unikraft/include/uk/arch/atomic.h:105:=
2: warning: implicit declaration of function =E2=80=98__atomic_fetch_or=E2=
=80=99 [-Wimplicit-function-declaration]<br>/home/debian/unikraft/unikraft/=
include/uk/arch/atomic.h:105:38: error: =E2=80=98__ATOMIC_RELAXED=E2=80=99 =
undeclared (first use in this function)<br>/home/debian/unikraft/unikraft/i=
nclude/uk/arch/atomic.h: In function =E2=80=98ukarch_test_and_clr_bit_sync=
=E2=80=99:<br>/home/debian/unikraft/unikraft/include/uk/arch/atomic.h:148:4=
0: error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in this =
function)<br>/home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In fu=
nction =E2=80=98ukarch_test_and_set_bit_sync=E2=80=99:<br>/home/debian/unik=
raft/unikraft/include/uk/arch/atomic.h:161:38: error: =E2=80=98__ATOMIC_SEQ=
_CST=E2=80=99 undeclared (first use in this function)<br>/home/debian/unikr=
aft/unikraft/plat/xen/hypervisor.c: In function =E2=80=98do_hypervisor_call=
back=E2=80=99:<br>/home/debian/unikraft/unikraft/plat/xen/hypervisor.c:71:2=
: warning: implicit declaration of function =E2=80=98__atomic_exchange_n=E2=
=80=99 [-Wimplicit-function-declaration]<br>/home/debian/unikraft/unikraft/=
plat/xen/hypervisor.c:71:7: error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undec=
lared (first use in this function)<br>/home/debian/unikraft/unikraft/suppor=
t/build/Makefile.build:48: recipe for target &#39;/home/debian/unikraft/app=
s/helloworld/build/libxenplat/hypervisor.o&#39; failed<br>make[1]: *** [/ho=
me/debian/unikraft/apps/helloworld/build/libxenplat/hypervisor.o] Error 1<b=
r>make[1]: Leaving directory &#39;/home/debian/unikraft/unikraft&#39;<br>Ma=
kefile:6: recipe for target &#39;all&#39; failed<br>make: *** [all] Error 2=
<br>#######################################################################=
##########<br><br></div><div><br></div><div>What are we missing?<br></div><=
div><br><br></div><div>Thanks and Regards,<br></div><div>Ajay <br></div><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-lef=
t:1px solid rgb(204,204,204);padding-left:1ex">
<blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-=
left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Thanks and Regards,<br>
Ajay<br>
<br>
</blockquote>
<br>
<br>
Thanks,<br>
<br>
Simon<br>
</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature">Regards,<br>Ajay<br></div>
</div></div></div>

--0000000000005941cb056b0b55f2--


--===============5462940113190714403==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============5462940113190714403==--


From minios-devel-bounces@lists.xenproject.org Mon Apr 30 08:06:35 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 08:06:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD3pR-0002yA-Bt; Mon, 30 Apr 2018 08:06:33 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fywh=ht=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fD3pQ-0002y5-GX
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 08:06:32 +0000
X-Inumbo-ID: 34f8e4bb-4c4d-11e8-9728-bc764e045a96
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::603])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 34f8e4bb-4c4d-11e8-9728-bc764e045a96;
 Mon, 30 Apr 2018 10:05:12 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=XTD7Qqa17/awRO/Y7DtCKi2UNdYAgRsffCQZwTQBVAw=;
 b=Rmp345vIjHo6md9MK/XWYWMOo7HxKAcD8SFPGfumBbBdRAWPA7zk2a6yVCwmOy1Xu2oOpp3fsKQ+OqUnkzzei4IiV5WhY3gccJdsXyEXN/SXuLQhHgZLnLy3d15vWt5mnvWavSSfc4D04t3WyrP642ZxAMcQpvtuA50JxJBmpaA=
Authentication-Results: spf=none (sender IP is )
 smtp.mailfrom=Julien.Grall@arm.com; 
Received: from Juliens-MacBook-Pro.local (217.140.96.140) by
 DB7PR08MB3356.eurprd08.prod.outlook.com (52.134.111.151) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.715.22; Mon, 30 Apr 2018 08:06:21 +0000
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-11-git-send-email-shijie.huang@arm.com>
 <d287476a-07af-ea01-e6fc-c18493f7716a@arm.com>
 <20180428054051.GA5439@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <3788dbdb-b23a-8f29-8142-18644a40c986@arm.com>
Date: Mon, 30 Apr 2018 09:05:23 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0)
 Gecko/20100101 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <20180428054051.GA5439@ubuntu.shanghai.arm.com>
Content-Language: en-US
X-Originating-IP: [217.140.96.140]
X-ClientProxiedBy: AM4PR07CA0027.eurprd07.prod.outlook.com (10.171.185.40) To
 DB7PR08MB3356.eurprd08.prod.outlook.com (52.134.111.151)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-HT: Tenant
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(2017052603328)(7153060)(7193020);
 SRVR:DB7PR08MB3356; 
X-Microsoft-Exchange-Diagnostics: 1; DB7PR08MB3356;
 3:cILybArs/iiDKEIwBVfjydV4/ASS9n+sfebZCw+XUPBdKB2OGd/GKllHONM+gVnzsvc235s2VnEp6OFGhG5jaDEYhHwpqarrpoumu/gELkh4HJHtBUAIfSqMCltSr67jJSsoxzrzcBRR0KaP3Ut8yosjoVpFUh9LTL3ZgGryvm1NCur0DYSi+yX2Jxggw9vhfw587tb12QMPnZ+yVqPi9ihMlUhuB/+yhFn4OdksdGM3NfCFVIXW+KTyjbwL8VvO;
 25:2HbN/UVfZ4aH7TVlvG4CcYcp6KIVXcblrijK13oXmiVfI98qiYonkY8vBFsHoqa+DXantnumuWt2bXtp1sP5wTb271TNSHncUYicdgx8X2cdEj2qeFibpLI7Pp9t+O+xGAfuItRZTaSk0+yuwW+LgxiAz/ZjCnDTxozfKdYmFWdJuszoa7QXlmbJMMT7lKquvqHKtczD7+OkYWAjecjZYLjDofFUn4L4ZtcVmYHxDyChPOXLA2SML0BI71DPBG1lE1edA6k7MBZm7laPrAa6XTpAtBuU8ShPhLTILmJTGevKNaDnn8iFJAoQ/uMXnikCMrBTdvp3MgJJauzzG0Ci3A==;
 31:IKUdd/U1qTpBRgfAdcS7SZ1UE8u4zkmm6zPjzdvxyKp3XTopI6U77UBxcoLsB6dM1InLxVtdbOoaCAQSHobDsfTi0IF3VA5iQ7fE8lX1P6P86BKv0pRC3btk3qKDkUBPLY6KHJ/yFRBulLZURxuUDRO5HBYTGtxLD3rPrlg3lXBfZrITruhTdSU+GhWhFcvt4sqAfk4Obvs0Ve87XoAwmW678PR4FGt5L1ZG4CIhGHc=
X-MS-TrafficTypeDiagnostic: DB7PR08MB3356:
NoDisclaimer: True
X-Microsoft-Exchange-Diagnostics: 1; DB7PR08MB3356;
 20:LFI+TuZbiclMLFDAyU4Ijr4uRzRtTjxKoR52DqpJnkarGuiE6mVO8633KceyiLp6p1sbrMpaA82gkM9f6Ne6ZNkxycF8a4ybFTBfNa6CQzpsVrRiFGoQbuJXXbXJhxMBG63+owJf6uwj3K38aYC4iMb2OgaDeb935s42hbl+a5LMXE5mmqo10gV/sWSIZmSBJMcBEbAeFWD+Pan2EqJCpY5rt5mI7IJeMTfRq0azAo95HrVcG5YEMLhY0zdhPX9k;
 4:R4aelvkzWQsKizaESTByoK3cmtGmcNVg1a+m4yCSAR/qFkpT4ERiLzWQ934Qqdq4IXTFy+HMGO9p4MlGOJc/N3kRKN+EewzhZrCLMW4+H2Z3b9tNboCN4ZWSakDnD5WLUDVmoYgVeYtf0BW6RM6YZJzp0plrm0MR+++TU9DrR0g2UVIovItKC4TNhsUEg3S8m/JRO3v4PrRmhPmu5n5B+oULA+WioXomO8gaQkJZNHgcaShcNKb29Ocqv/uDcswlHGRIWPv9Txg8P3I6+CkKDsIKTPUJE4Mnw95IS0wGl32mLcxYAbwmcz1gfJmeNGgHbhGG0T7DRlNht8viJYZ4QQ==
X-Microsoft-Antispam-PRVS: <DB7PR08MB33568E90913C4E537D3EC51380820@DB7PR08MB3356.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(788757137089);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231254)(944501410)(52105095)(10201501046)(3002001)(6055026)(6041310)(20161123562045)(20161123560045)(20161123564045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
 SRVR:DB7PR08MB3356; BCL:0; PCL:0; RULEID:; SRVR:DB7PR08MB3356; 
X-Forefront-PRVS: 0658BAF71F
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(39850400004)(366004)(39380400002)(376002)(346002)(396003)(189003)(199004)(65956001)(2616005)(65806001)(956004)(47776003)(476003)(50466002)(230700001)(486006)(6636002)(3846002)(64126003)(44832011)(67846002)(6486002)(229853002)(6116002)(25786009)(53936002)(66066001)(11346002)(2906002)(446003)(97736004)(6862004)(39060400002)(31696002)(6246003)(8666007)(16526019)(6512007)(86362001)(4326008)(478600001)(72206003)(53546011)(76176011)(52116002)(26005)(386003)(6506007)(65826007)(52146003)(59450400001)(23676004)(2486003)(5660300001)(36756003)(105586002)(106356001)(7736002)(81156014)(8676002)(37006003)(58126008)(8936002)(81166006)(68736007)(305945005)(93886005)(316002)(31686004);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB7PR08MB3356; H:Juliens-MacBook-Pro.local;
 FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; 
Received-SPF: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjdQUjA4TUIzMzU2OzIzOllxaUJVcHFXZE40TGlqTk83ODROclNyZTEr?=
 =?utf-8?B?VTBDMVpURjVmb05TdU8xVEdxNzFMd2JWcER5SGZQZFUzTXNSUklQaTA0TU5E?=
 =?utf-8?B?aEhxR0Rpdm9xUEh0MlMrcGZEajRJSzZzaHM5eG9QRG5ONE1sV1U5Yno4bnBL?=
 =?utf-8?B?UHhNc3M4N0JxZHJqY1RRcC9oWlhIN1EzZjZza0NCcmNuT3dNQkY3UTVuY0xP?=
 =?utf-8?B?Z1MybEJ2em9WRm1QZmpPNUhQcFVvcmkrbmhJaTVTQk8vck1EQW9nUjFWRXA2?=
 =?utf-8?B?QlBmU1lvT25ySnFoWm9BS21vRHVzUXFFOTM4TExsYk9ZSmFMTmkyK1dhcjRD?=
 =?utf-8?B?Q3kra05JNHdSRWYraVRWRER0RXhtYWI5ODAxVXJ2VE1uN21odGRVbjhrcWl6?=
 =?utf-8?B?WUdiU3FHV2FOZW4xazlOaVAwUkFnZlJ2NmFlVndnc1ZiUGY2a1QrWUs1UnAz?=
 =?utf-8?B?RjJGUjVGSDhXZWdQRWY5MXZxOGk3bVVwL1p6OG4xSzBnUHZCK1VPNjBMRy82?=
 =?utf-8?B?dm5FRUpEeVpFcndjL0dZR0RubUJ6Y0pkZFpBQWhydUdUMVlDVUNwekRPZkdT?=
 =?utf-8?B?KzYySlFtTW1hRmYxbElyQk1sOXpNKzhzSVBSY00rWW5xSDFONWxnRFpGbFk1?=
 =?utf-8?B?YnVsTklZcUJQUmZHeDhNNkQwYUtFUGVrWjZoMUVKZmJQRTVTWkRvL0Jta2Jx?=
 =?utf-8?B?a1hsRVZrVFlEZG1US2xQNkZjaFY5MXljYlVJd3dHSnJkbU9vdEhYS05CL3Ux?=
 =?utf-8?B?SlhYZUVHNC9PVEVoOVJVMjBEcWdMUEVVclhGcWQxUndrL1JqWVZVS0ZTck5v?=
 =?utf-8?B?MkZsT0wzdE12NTBaa25yRDA0SVpIakt6b3dxTVhqdXMrc2Vrc0lZWEVSOThn?=
 =?utf-8?B?eWlKeGNsZDVEZDFDWFVWVitMQURjaXFmUk1XT1M3WkkyZHFBOVJpWUpGRnNF?=
 =?utf-8?B?c3AxeHBzREtqY1g0dFN1R1EyS3BuZ0x6eGs4Q1hIZ1RwOTloMFZLY2JObWdU?=
 =?utf-8?B?R3pNU01FbzNVcWcxWlVMM1hqbzB5SjI4T0kzeVh5MVFhMFZhRExiVE84R2J6?=
 =?utf-8?B?RzBjdTNxYm9qRnlsYUZsMFY0UHhCVktDVnhGdkdCeUR6UFRzaDIwekN1VDQx?=
 =?utf-8?B?WERVdkxERWxoVVRteHJIRkY0Tkk5Y0Vtazdpc3hEZzR3TiswUXhUblB5bDJt?=
 =?utf-8?B?TEkzZUVkR3FxdTd0b204TjFPR2YvWHpBOWNYdlA1enh2Z2FMZmt1RUdMYXFS?=
 =?utf-8?B?aTltMVRhRk5HRERwSGZnY3ZqWHN6bzZwcWNIeVN4ZHl2djFoV25IV09uZjFx?=
 =?utf-8?B?YmpZMHYyaU5ScWRDN1U0VGRPelRQYlhmOXNZdkhkVmZnakU0dFJqT0psTDgv?=
 =?utf-8?B?S21ENjJvSkFhbmNGYXJoSFVEb25mUTBSWG92VjljZnI0akNSb0s4L3B0dTJL?=
 =?utf-8?B?ZGFpTUZyM2pHSDB6cU5JMG0xcjIyUzhtTHh0NFdyT1pRRURzYTZhUXc4SHJI?=
 =?utf-8?B?aWt0WnBUNXhRZlFJMVI2SmtmbG53TS9WbWgwVVJWREVHMXhKNElGWVNqNHow?=
 =?utf-8?B?bHJKVWxDdVVoUmtwemJ3a3BQcVlNd3Z6WFhsVnVGVXZaUlBqMUFudFBJQlBE?=
 =?utf-8?B?SHJUam9aOVZwejJLVWVmd2dZU2NHaW9IUzNicS85bGVua3h4aHdBVkY2SG0v?=
 =?utf-8?B?UDdaOHBmNUhWMzlTaTlVSWdGTTcwZjloYjhBNlZ1eVR6akJjNXZpaVh2YjE3?=
 =?utf-8?B?WmhBa3UvZkE4VUdDWHdVcUZlaUdCbndESlc3QjBPRG42ZFNpbG1PVTVYWkMy?=
 =?utf-8?B?YisyZjk2dkk1YjVvMWhMaGNESUxFU09qNGVzd29YekNWeWtpdlFqUFZ0VlEx?=
 =?utf-8?B?L2JmeGx4T0U4YVVPNm8xZVh6bU1vdkpHRmpsVlhyQ3VGandNRHM4dXNEaDQr?=
 =?utf-8?B?WFp1Szc0dkpVai9ON096bkd5TUZaS3ZGbjBRRkxuczFYREZ6RHdaZjRjY1Fs?=
 =?utf-8?B?L3pyRCtraUp0WXY1bDlPWklwZ0ZZVnRZT0MreVJXOXR5cW5UNkVjeGhOZ1NB?=
 =?utf-8?B?VkRlVzhHTVR4alRyYWpNMWlYYlEwdEtkb3dhbkNjYTJIakRxWWFjZnJwRmNh?=
 =?utf-8?B?QWc9PQ==?=
X-Microsoft-Antispam-Message-Info: hXORq1lqtYSXK3aAi+LkaNEJyGVNtaxxu2hXgBKkEepSQw7vSDhqfjWsEPwQSggxCROtrZeN0R/4dr1VCvr0cMH3nXSyScGnZVvstVWBuZ/ek1075r3GEvR2qr/ia742SHZB0O0bW5xfphuiMJlnUzsBbhi3+hdgf5XMi7HYmOEbgkOWv5BtCn6kXlhig5ZC
X-Microsoft-Exchange-Diagnostics: 1; DB7PR08MB3356;
 6:naw/n0Td6ZuTXu0qMbZnP8VdSvcRbMqpRIJPr7nbDyMZ0jkWxVgKHLAvOxbvgsUj+0LhMasdl/sCigjz3PZ4IfJcrjflXAtIktO5BA4Mvfl+FwwRyqYClQJQGqmJ03WY8mq8TCnw0/zg9S4jjk0PnlkfUanRKhWu1K1RVpvetblB7gUMI5VsSBpUfOY15eWm09xaDd1ACLbvHCkiw5HMWEyFfuO/4f9nYDbyZizOWOjIEWtVZdGGcLZBNad95se7j/KP20ujMDNFfyd5e45vwspN90xPfr0oSJgMcQxMaLNxar0cVgzZvo9WcKyj9qyRS8L6VrZd0VdVgF4OidHGFZNdIngh3+EPPQzJ94YCMkBk7Dm31TSSflLckSlJrqD4Kk40THhg61GFxKYKAAJK0Rsk9LYXRpKH8XnUcyAXrsinREBLyFbcZ++8F+w0k+8XFT3naYanK8ARbOfSuNCQGg==;
 5:fuWbW1cvn7K/hNhxhJN3jfeYVGdUsAgyHolNCP4D8Eb5AlSZSlZ7M/9QmQIpWrCcO5cJHMMezRZ81DAD0rwRC/aYW+4dyy+SI0fJKNYbb/jxx1OKkBz8rMr3kHoCCpS7Gi0pI2tBrKxE54akGnzFPL3xHuYMK30y1q4Jnf8XbDQ=;
 24:c8j8j6Vp7f4cfsshzwDmVl1XKBGOypmLSmUbioGODNyIxwxCzciwUYq5kNKSyOnMOr35sMkGYv05vNtkEO+wq6T2v596iwG654n7d77bFKc=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB7PR08MB3356;
 7:cJhaYP+XkKhbSo3a5pQktmc+H/7fddCx6xD7f5t7M+9fwa7b+WCxBFsCo+LaCSkEEhOT5E1TdI0VxWeT3QUe8aGw13oN0O6HWvegmxmM4S9OWr8f+DYhl3p9+LFLoGfFfscukz/EkQUTSKv3OTxanx4NA9Y+KWNX2x/1budnN3dEuMSiZoHmMSi8iTDnO5iYFBwCK68iMYSTOs907gu9dyywA83IJRCFEy+t9AXFEyGn+dm4cSJBeiAB52vRgLnr
X-MS-Office365-Filtering-Correlation-Id: dfbd770b-3e41-463b-f063-08d5ae71434a
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2018 08:06:21.6315 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: dfbd770b-3e41-463b-f063-08d5ae71434a
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3356
Subject: Re: [Minios-devel] [PATCH v3 10/43] arm64: add exception support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMjgvMDQvMjAxOCAwNjo0MCwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9u
IFdlZCwgQXByIDE4LCAyMDE4IGF0IDA2OjQ4OjI0UE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90
ZToKPj4gSGkgU2hpamllLAo+Pgo+PiBPbiAxNi8wNC8xOCAwNzozMSwgSHVhbmcgU2hpamllIHdy
b3RlOgo+Pj4gVGhpcyBwYXRjaCBhZGRzIHRoZSBleGNlcHRpb24gc3VwcG9ydCBmb3IgYXJtNjQ6
Cj4+PiAgICAgIC4wKSBBZGQgYXJtNjQvdHJhcHMuaCwgYW5kIGFkZCBuZXcgcHRfcmVnc3t9IGZv
ciBhcm02NC4KPj4+ICAgICAgLjEpIEFkZCBzYXZlX3JlZ2lzdGVycy9yZXN0b3JlX3JlZ2lzdGVy
cyB3aGljaCBhcmUgYmFzZWQgb24gRnJlZUJTRCBjb2RlLgo+Pgo+PiBQbGVhc2UgZ2l2ZSBhIHBv
aW50ZXIgdG8gdGhlIGNvZGUuCj4gb2theS4KPj4KPj4+ICAgICAgLjIpIHNldHVwIHRoZSB2ZWN0
b3IgdGFibGUKPj4+ICAgICAgLjMpIHJlbW92ZSB0aGUgY29kZSBmb3IgYXJtMzIuCj4+Cj4+IFRo
aXMgZG9lcyBub3QgbWFrZSBzZW5zZSBpbiBhIHBhdGNoIHRoYXQgaXMgYWRkaW5nIGFybTY0IHN1
cHBvcnQuIFRoZSBjb2RlCj4+IHJlbW92ZWQgbG9vayBmYWlybHkgaW5kZXBlbmRlbnQsIHNvIGNh
biB5b3UgbW92ZSB0aGF0IGluICMyLgo+IG9rYXkuCj4+Cj4+Pgo+Pj4gU2lnbmVkLW9mZi1ieTog
SHVhbmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPj4+IC0tLQo+Pj4gICBhcmNoL2Fy
bS9hcm02NC9hcm02NC5TICAgIHwgMTQ3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysKPj4+ICAgYXJjaC9hcm0vYXJtNjQvdHJhcHMuYyAgICB8ICAxNiArKysr
Kwo+Pj4gICBpbmNsdWRlL2FybS9hcm02NC90cmFwcy5oIHwgIDI3ICsrKysrKysrKwo+Pj4gICBp
bmNsdWRlL2FybS90cmFwcy5oICAgICAgIHwgIDIxICstLS0tLS0KPj4+ICAgNCBmaWxlcyBjaGFu
Z2VkLCAxOTEgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCj4+PiAgIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBhcmNoL2FybS9hcm02NC90cmFwcy5jCj4+PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBp
bmNsdWRlL2FybS9hcm02NC90cmFwcy5oCj4+Pgo+Pj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2Fy
bTY0L2FybTY0LlMgYi9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4+PiBpbmRleCBiNDU0Y2M2Li45
ZWI3ZWEwIDEwMDY0NAo+Pj4gLS0tIGEvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+Pj4gKysrIGIv
YXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+Pj4gQEAgLTEsNiArMSw3IEBACj4+PiAgICNpbmNsdWRl
ICJhc20uaCIKPj4+ICAgI2luY2x1ZGUgPGFyY2hfbGltaXRzLmg+Cj4+PiAgICNpbmNsdWRlIDxh
cm02NC9wYWdldGFibGUuaD4KPj4+ICsjaW5jbHVkZSA8YXJtNjQvdHJhcHMuaD4KPj4+ICAgI2lu
Y2x1ZGUgPHhlbi94ZW4uaD4KPj4+ICAgLyogVGhpcyBtYWNybyB3aWxsIHVzZSB0aGUgeDAveDEv
eDIveDE2ICovCj4+PiBAQCAtMTAxLDYgKzEwMiwxMSBAQCBFTlRSWShfc3RhcnQpCj4+PiAgICAg
ICBtc3IgICAgIHR0YnIwX2VsMSwgeDAKPj4+ICAgICAgIGlzYgo+Pj4gKyAgICAvKiBMb2FkIHRo
ZSBleGNlcHRpb24gdmVjdG9ycyAqLwo+Pj4gKyAgICBsZHIgICAgIHgyLCA9dmVjdG9yX3RhYmxl
Cj4+PiArICAgIG1zciAgICAgdmJhcl9lbDEsIHgyCj4+PiArICAgIGlzYgo+Pgo+PiBJIGRvbid0
IHRoaW5rIHRoZSBpc2IgaXMgbmVjZXNzYXJ5IGhlcmUuIFlvdSBjYW4gcmVseSBvbiB0aGUgb25l
IGJlbG93ICh3aGVuCj4+IHNldHRpbmcgdXAgdGhlIFNDVExSKS4KPj4KPj4gVGhpcyB3b3VsZCBi
ZSBmaW5lIGJlY2F1c2UgdGhlIHZlY3RvciB0YWJsZSBjb250YWlucyB2aXJ0dWFsIGFkZHJlc3Mg
c28gaXQKPj4gaXMgdW51c2FibGUgYmVmb3JlIHR1cm5pbmcgb24gdGhlIE1NVS4KPj4KPiBva2F5
LCBJIHdpbGwgdGhpbmsgYWJvdXQgaXQuCj4+PiArCj4+PiAgICAgICAvKiBUdXJuaW5nIG9uIE1N
VSAqLwo+Pj4gICAgICAgdGxiaSAgICB2bWFsbGUxCj4+PiAgICAgICBkc2IgICAgIG5zaAo+Pj4g
QEAgLTI4NCwzICsyOTAsMTQ0IEBAIF9zZXR1cF9pZG1hcF9wZ3RhYmxlOgo+Pj4gICAgICAgYWRy
ICAgICB4MCwgaWRtYXBfbDBfcGd0YWJsZQo+Pj4gICAgICAgZHNiICAgICBzeQo+Pj4gICAgICAg
cmV0Cj4+PiArCj4+PiArLyogVGhlIHNhdmVfcmVnaXN0ZXJzL3Jlc3RvcmVfcmVnaXN0ZXJzIGFy
ZSBiYXNlZCBvbiB0aGUgY29kZSBpbiBGcmVlQlNEICovCj4+Cj4+IE1pc3NpbmcgZnVsbCBzdG9w
Lgo+Pgo+Pj4gKy5tYWNybwlzYXZlX3JlZ2lzdGVycyBlbAo+Pgo+PiBBbGwgdGhlIGNvZGUgYmVs
b3cgaXMgdXNpbmcgaGFyZCB0YWIsIGhvd2V2ZXIgdGhlIHJlc3Qgb2YgdGhlIGZpbGUgaXMgdXNp
bmcKPj4gc29mdCB0YWIuIFBsZWFzZSByZXBsYWNlIGFsbCBoYXJkIHRhYiB3aXRoIHNvZnQgdGFi
Lgo+IEkgd2lsbCBjaGFuZ2UgaXQgdG8gc29mdCB0YWIuCj4+Cj4+PiArCW1vdgl4MTgsIHNwCj4+
Cj4+IFNvbWV0aGluZyBpcyB3cm9uZyBoZXJlLiBZb3Ugc2VlbSB0byBvdmVyd3JpdGUgeDE4IHdp
dGhvdXQgc2F2aW5nIGl0LiBEaWQgSQo+PiBtaXNzIGFueXRoaW5nPwo+IEkgY29waWVkIGZyb20g
dGhlIGZyZWVic2QgY29kZS4gVGhlIG9yaWdpbmFsIGNvZGUgdXNlcyB4MTggaGVyZS4KCldlbGws
IGZyZWVic2QgaXMgdXNpbmcgeDE4IGJlY2F1c2UgdGhleSBlZmZlY3RpdmVseSBzYXZlZCBpdCBh
IGJpdCAKYmVmb3JlIHRvIGhlbHAgd2l0aCBEVFJBQ0Ugc3VwcG9ydC4gU28geW91IG5lZWQgdG8g
YWRhcHQgdGhlIGNvZGUgZm9yIApNaW5pLU9TIGFuZCByZXdvcmsgd2hhdCBkb2VzIG5vdCBhcHBs
eSBmb3IgdXMuCgpbLi4uXQoKPj4KPj4+ICsKPj4+ICsJc3ViCXNwLCBzcCwgIyhQVF9SRUdfU0la
RSkKPj4+ICsKPj4+ICsJc3RwCXgyOCwgeDI5LCBbc3AsICMoUFRfUkVHX1ggKyAyOCAqIDgpXQo+
Pgo+PiBJIG1pZ2h0IGJlIG5pY2UgdG8gbWFrZSBQVF9SRUdfWCBhIG1hY3JvIHRha2UgdGhlIHJl
Z2lzdGVycyBpbiBwYXJhbWV0ZXJzLgo+PiBUaGlzIHdvdWxkIGVhc2UgdGhlIHJlYWRpbmcgb2Yg
dGhlIGNvZGUuCj4gb2theSwgbm8gcHJvYmxlbS4KPiAKPj4KPj4+ICsJc3RwCXgyNiwgeDI3LCBb
c3AsICMoUFRfUkVHX1ggKyAyNiAqIDgpXQo+Pj4gKwlzdHAJeDI0LCB4MjUsIFtzcCwgIyhQVF9S
RUdfWCArIDI0ICogOCldCj4+PiArCXN0cAl4MjIsIHgyMywgW3NwLCAjKFBUX1JFR19YICsgMjIg
KiA4KV0KPj4+ICsJc3RwCXgyMCwgeDIxLCBbc3AsICMoUFRfUkVHX1ggKyAyMCAqIDgpXQo+Pj4g
KwlzdHAJeDE4LCB4MTksIFtzcCwgIyhQVF9SRUdfWCArIDE4ICogOCldCj4+PiArCXN0cAl4MTYs
IHgxNywgW3NwLCAjKFBUX1JFR19YICsgMTYgKiA4KV0KPj4+ICsJc3RwCXgxNCwgeDE1LCBbc3As
ICMoUFRfUkVHX1ggKyAxNCAqIDgpXQo+Pj4gKwlzdHAJeDEyLCB4MTMsIFtzcCwgIyhQVF9SRUdf
WCArIDEyICogOCldCj4+PiArCXN0cAl4MTAsIHgxMSwgW3NwLCAjKFBUX1JFR19YICsgMTAgKiA4
KV0KPj4+ICsJc3RwCXg4LCAgeDksICBbc3AsICMoUFRfUkVHX1ggKyA4ICAqIDgpXQo+Pj4gKwlz
dHAJeDYsICB4NywgIFtzcCwgIyhQVF9SRUdfWCArIDYgICogOCldCj4+PiArCXN0cAl4NCwgIHg1
LCAgW3NwLCAjKFBUX1JFR19YICsgNCAgKiA4KV0KPj4+ICsJc3RwCXgyLCAgeDMsICBbc3AsICMo
UFRfUkVHX1ggKyAyICAqIDgpXQo+Pj4gKwlzdHAJeDAsICB4MSwgIFtzcCwgIyhQVF9SRUdfWCAr
IDAgICogOCldCj4+PiArCj4+PiArCW1ycwl4MTAsIGVscl9lbDEKPj4+ICsJbXJzCXgxMSwgc3Bz
cl9lbDEKPj4+ICsJbXJzCXgxMiwgZXNyX2VsMQo+Pj4gKy5pZiBcZWwgPT0gMAo+Pgo+PiBBRkFJ
Q1QgeW91IHdpbGwgbmV2ZXIgZ28gaW4gRUwwLiBTbyBpcyB0aGVyZSBhbnkgcmVhc29uIHRvIGhh
bmRsZSBFTDA/Cj4gdGhlcmUgaXMgaW52YWxpZCBjYXNlIGZvciBFTDAsIHN1Y2ggYXMgZWwwX2ly
cS4KPiBTbyBrZWVwIGl0IGhlcmUgZm9yIHRoZW0uCgpJIGtub3cgdGhlIGNhc2UgaXMgaW52YWxp
ZCBidXQgeW91IHNob3VsZCBuZXZlciByZWFjaCB0aGVtIGFzIHlvdSBuZXZlciAKcmV0dXJuIGlu
IEVMMC4gTXkgY29uY2VybiBoZXJlIGlzIHlvdSBzZWVtIHRvIGxvb3NlbHkgaW1wbGVtZW50IEVM
MCAKc3VwcG9ydCBhbmQgbm8gd2F5IHRvIHRlc3Qgd2hldGhlciBpdCBpcyBnb2luZyB0byB3b3Jr
LiBTbyB3aGF0J3MgdGhlIApwdXJwb3NlIG9mIGtlZXBpbmcgY29kZSB0aGF0J3MgZ29pbmcgdG8g
cm90dGVuPwoKPiAKPj4KPj4+ICsJbXJzCXgxOCwgc3BfZWwwCj4+PiArLmVuZGlmCj4+Cj4+IEht
bSBJIHRoaW5rIHlvdSB3YW50IHRoZSAibW92IHgxOCwgc3AiIGJ1dCB5b3UgYWxzbyBuZWVkIHRv
IGFkZCB0aGUKPj4gUFRfUkVHX1NJWkUgdG8gZ2V0IHRoZSBjb3JyZWN0IHNwLgo+IFRoZSBzcCBp
cyBjb3JyZWN0IGhlcmUuCj4gV2UgaGF2ZSBzdWIgdGhlIFBUX1JFR19TSVpFIGF0IHRoZSBiZWdp
bm5pbmcgb2YgdGhlIEBzYXZlX3JlZ2lzdGVycy4KCldlbGwsIHRoZSBTUCB5b3Ugd2FudCB0byBz
dG9yZSBpcyB0aGUgc3RhY2sgcG9pbnRlciBiZWZvcmUgdGhlIGNvbnRleHQgCndhcyBzYXZlZC4g
VGhpcyBpcyB0aGUgbW9yZSBtZWFuaW5nZnVsIG9uZSB3aGVuIHlvdSB3YW50IHRvIHByaW50IHRo
ZSAKY29udGV4dCB3aGF0IHdhcyBydW5uaW5nIGJlZm9yZSB0aGUgZXhjZXB0aW9uLgoKQnV0IGFz
IHlvdSB3aWxsIG5lZWQgdG8gbW92ZSB0aGUgaW5zdHJ1Y3Rpb24gbW92IHgxOCwgc3AgaGVyZSB5
b3Ugd2lsbCAKZW5kIHRvIHVwIHRvIHN0b3JlIHRoZSB3cm9uZyBTUCBoZXJlLgoKPj4KPj4+ICsJ
c3RyCXgxMCwgW3NwLCAjKFBUX1JFR19FTFIpXQo+Pj4gKwlzdHAJdzExLCB3MTIsIFtzcCwgIyhQ
VF9SRUdfU1BTUildCj4+PiArCXN0cAl4MTgsIHgzMCwgW3NwLCAjKFBUX1JFR19TUCldCj4+PiAr
LmVuZG0KPj4+ICsKPj4+ICsubWFjcm8JcmVzdG9yZV9yZWdpc3RlcnMgZWwKPj4KPj4gV2lsbCB5
b3UgZXZlciByZWFjaCB0aGlzIG1hY3JvIHdpdGggaW50ZXJydXB0IGVuYWJsZWQ/IElmIHNvLCBk
b24ndCB5b3Ugd2FudAo+PiB0byBkaXNhYmxlIHRoZW0uIFNvIHlvdSBkb24ndCBnZXQgaW50ZXJy
dXB0IGluIHRoZSBtaWRkbGUgb2YgdGhlIHJlc3RvcmU/Cj4gVGhlIGludGVycnVwdCBpcyBkaXNh
YmxlZCBoZXJlLgoKVGhlbiBkb2N1bWVudCBpdCBwbGVhc2UuCgo+IAo+IAo+Pgo+Pj4gKwlsZHAJ
eDE4LCB4MzAsIFtzcCwgIyhQVF9SRUdfU1ApXQo+Pj4gKwlsZHAJeDEwLCB4MTEsIFtzcCwgIyhQ
VF9SRUdfRUxSKV0KPj4+ICsuaWYgXGVsID09IDAKPj4+ICsJbXNyCXNwX2VsMCwgeDE4Cj4+PiAr
LmVuZGlmCj4+PiArCW1zcglzcHNyX2VsMSwgeDExCj4+PiArCW1zcgllbHJfZWwxLCB4MTAKPj4+
ICsKPj4+ICsJbGRwCXgwLCAgeDEsICBbc3AsICMoUFRfUkVHX1ggKyAwICAqIDgpXQo+Pj4gKwls
ZHAJeDIsICB4MywgIFtzcCwgIyhQVF9SRUdfWCArIDIgICogOCldCj4+PiArCWxkcAl4NCwgIHg1
LCAgW3NwLCAjKFBUX1JFR19YICsgNCAgKiA4KV0KPj4+ICsJbGRwCXg2LCAgeDcsICBbc3AsICMo
UFRfUkVHX1ggKyA2ICAqIDgpXQo+Pj4gKwlsZHAJeDgsICB4OSwgIFtzcCwgIyhQVF9SRUdfWCAr
IDggICogOCldCj4+PiArCWxkcAl4MTAsIHgxMSwgW3NwLCAjKFBUX1JFR19YICsgMTAgKiA4KV0K
Pj4+ICsJbGRwCXgxMiwgeDEzLCBbc3AsICMoUFRfUkVHX1ggKyAxMiAqIDgpXQo+Pj4gKwlsZHAJ
eDE0LCB4MTUsIFtzcCwgIyhQVF9SRUdfWCArIDE0ICogOCldCj4+PiArCWxkcAl4MTYsIHgxNywg
W3NwLCAjKFBUX1JFR19YICsgMTYgKiA4KV0KPj4+ICsJbGRwCXgxOCwgeDE5LCBbc3AsICMoUFRf
UkVHX1ggKyAxOCAqIDgpXQo+Pj4gKwlsZHAJeDIwLCB4MjEsIFtzcCwgIyhQVF9SRUdfWCArIDIw
ICogOCldCj4+PiArCWxkcAl4MjIsIHgyMywgW3NwLCAjKFBUX1JFR19YICsgMjIgKiA4KV0KPj4+
ICsJbGRwCXgyNCwgeDI1LCBbc3AsICMoUFRfUkVHX1ggKyAyNCAqIDgpXQo+Pj4gKwlsZHAJeDI2
LCB4MjcsIFtzcCwgIyhQVF9SRUdfWCArIDI2ICogOCldCj4+PiArCWxkcAl4MjgsIHgyOSwgW3Nw
LCAjKFBUX1JFR19YICsgMjggKiA4KV0KPj4+ICsKPj4+ICsJbW92CXNwLCB4MTgKPj4KPj4gU28g
eDE4IHdpbGwgbm90IGNvbnRhaW4gdGhlIHNwIGhlcmUuIEJ1dCBJIHRoaW5rIGFkZGluZyBQVF9S
RUdfU0laRSB0byBzcAo+PiBzaG91bGQgYmUgZW5vdWdoIGhlcmUuCj4gdGhlIHgxOCBzdG9yZXMg
dGhlIHByZXZpb3VzIHNwIG1heWJlIGlzIGRpZmZlcmVudCB3aXRoIGN1cnJlbnQgc3AsCj4gICBT
byBhZGQgUFRfUkVHX1NJWkUgdG8gc3AgaXMgd3JvbmcuCgpTZWUgYWJvdmUuCgo+Pgo+Pj4gKyAg
ICAgICAgZXJldAo+Pj4gKy5lbmRtCj4+PiArCj4+PiArICAgIC5nbG9ibCBJUlFfaGFuZGxlcgo+
Pj4gK0lSUV9oYW5kbGVyOgo+Pj4gKyAgICAubG9uZyAweDAKPj4KPj4gSSBhbSBub3Qgc3VyZSB0
byB1bmRlcnN0YW5kIHRoZSBwdXJwb3NlIG9mIElSUV9oYW5kbGVyLiBDYW4ndCB5b3UganVzdAo+
PiBkaXJlY3RseSBjYWxsIHRoZSBoYW5kbGVyPwo+IFdlIGhhdmUgYWxyZWFkeSBoYXZlIHRoZSBl
bDFfaXJxIHRvIGhhbmRsZSB0aGUgSVJRLgo+IGFuZCB3ZSBuZWVkIHRvIHNhdmUgdGhlIGNvbnRl
eHQgYmVmb3JlIGNhbGwgSVJRX2hhbmRsZXIuCgpZb3UgZGlkbid0IHVuZGVyc3RhbmQgd2h5IHF1
ZXN0aW9uLiBJIGRpZG4ndCBhc2sgd2hldGhlciB5b3UgY2FuIHJlcGxhY2UgCmVsMV9pcnEgYnkg
SVJRX2hhbmRsZXIsIGJ1dCB3aHkgeW91IG5lZWQgYSBwb2ludGVyIHRvIHRoZSBoYW5kbGVyIGhl
cmUgCnJhdGhlciB0aGFuIGNhbGxpbmcgZ2ljX2hhbmRsZXIgaW4gZWwxX2lycSBkaXJlY3RseS4K
ClsuLi5dCgo+Pj4gKyNkZWZpbmUgUFRfUkVHX1NJWkUgICAoMjcyKQo+Pj4gKwo+Pj4gKyNkZWZp
bmUgUFRfUkVHX1NQICAgICAoMCkKPj4+ICsjZGVmaW5lIFBUX1JFR19FTFIgICAgKDE2KQo+Pj4g
KyNkZWZpbmUgUFRfUkVHX1NQU1IgICAoMjQpCj4+PiArI2RlZmluZSBQVF9SRUdfWCAgICAgICgz
MikKPj4KPj4gSSBob25lc3RseSBkb24ndCBsaWtlIGhhcmRjb2Rpbmcgb2Zmc2V0IG9mIHRoZSBz
dHJ1Y3R1cmUuIFRoaXMgaXMgYSByZWFsCj4+IGNhbGwgdG8gbWVzcyB1cCBpbiB0aGUgZnV0dXJl
IChvciBldmVuIG5vdykuIFRoZSBsYWNrIG9mIGNvbW1lbnRzIGRvbid0IGhlbHAKPj4gZWl0aGVy
Lgo+Pgo+PiBCdXQgSSBhbSBwcmV0dHkgc3VyZSBJIGFza2VkIGl0IGJlZm9yZS4gQ2FuJ3QgdGhl
eSBiZSBnZW5lcmF0ZWQKPj4gYXV0b21hdGljYWxseT8KPiBJIGRvIG5vdCBrbm93IGhvdyB0byBn
ZW5lcmF0ZWQgaXQgYXV0b21hdGljYWxseSA6KAoKSSBoYXZlIGFscmVhZHkgc3VnZ2VzdGVkIHdh
eSBpbiB0aGUgcHJldmlvdXMgZS1tYWlscy4gSSBhbSBzdXJlIHlvdSBjYW4gCmdvIHRocm91Z2gg
dGhlbSBhZ2FpbiBhbmQgbG9vayBhdCB3aGF0IHdhcyBkaXNjdXNzZWQuCgpDaGVlcnMsCgotLSAK
SnVsaWVuIEdyYWxsCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9q
ZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWlu
aW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 08:07:05 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 08:07:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD3px-0002zK-Fc; Mon, 30 Apr 2018 08:07:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=6+tk=ht=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fD3pw-0002zF-Pd
 for minios-devel@lists.xen.org; Mon, 30 Apr 2018 08:07:04 +0000
X-Inumbo-ID: d2b28ef7-4c4d-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id d2b28ef7-4c4d-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 08:09:37 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 189561041FB;
 Mon, 30 Apr 2018 10:07:01 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id w74aMkQ1YOnR; Mon, 30 Apr 2018 10:07:01 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id EE433103BA5;
 Mon, 30 Apr 2018 10:06:56 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 30 Apr
 2018 10:06:56 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1524843519-26242-1-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <85dc23ea-3a0b-2300-36a9-859225fdf75d@neclab.eu>
Date: Mon, 30 Apr 2018 10:06:56 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1524843519-26242-1-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH] plat/kvm: Fix __packed macro
 usage in multiboot.h
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MjcuMDQuMjAxOCAxNzozOCwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gV2hlbiB1c2luZyBub2xpYmMs
IG11bHRpYm9vdF9tbWFwX2VudHJ5IHN0cnVjdHVyZSBsYXlvdXQgd2FzIHBhZGRlZAo+IGluc3Rl
YWQgb2YgcGFja2VkIGJlY2F1c2UgdGhlIF9fcGFja2VkIG1hY3JvIGRlZmluaXRpb24gd2FzIG5v
dAo+IHByb3Blcmx5IGV2YWx1YXRlZC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBDb3N0aW4gTHVwdSA8
Y29zdGluLmx1cHVAY3MucHViLnJvPgo+IC0tLQo+ICAgcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2
L211bHRpYm9vdC5oIHwgMiArKwo+ICAgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKQo+
IAo+IGRpZmYgLS1naXQgYS9wbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvbXVsdGlib290LmggYi9w
bGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvbXVsdGlib290LmgKPiBpbmRleCBmYzM4MzllLi5mYTNj
NjdjIDEwMDY0NAo+IC0tLSBhL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9tdWx0aWJvb3QuaAo+
ICsrKyBiL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9tdWx0aWJvb3QuaAo+IEBAIC0yMyw2ICsy
Myw4IEBACj4gICAjaWZuZGVmIE1VTFRJQk9PVF9IRUFERVIKPiAgICNkZWZpbmUgTVVMVElCT09U
X0hFQURFUiAxCj4gICAKPiArI2luY2x1ZGUgPHVrL2Vzc2VudGlhbHMuaD4KPiArCj4gICB0eXBl
ZGVmIHVuc2lnbmVkIGNoYXIgbXVsdGlib290X3VpbnQ4X3Q7Cj4gICB0eXBlZGVmIHVuc2lnbmVk
IHNob3J0IG11bHRpYm9vdF91aW50MTZfdDsKPiAgIHR5cGVkZWYgdW5zaWduZWQgaW50IG11bHRp
Ym9vdF91aW50MzJfdDsKPiAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhl
bnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5m
by9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 08:12:42 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 08:12:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD3vO-0003ds-CR; Mon, 30 Apr 2018 08:12:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fywh=ht=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fD3vN-0003dm-4W
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 08:12:41 +0000
X-Inumbo-ID: 9b5b93d3-4c4e-11e8-8249-2fda3a446a53
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [104.47.1.58]) by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 9b5b93d3-4c4e-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 08:15:13 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; 
 s=selector1-arm-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=PgeejiUluGZtcJiKyEPDCroCXko/4sy0LLOWaJGgm2Y=;
 b=oIAOGBkb/GDF7iuVsvw9joxHqlQu5pZt0V45YvQ3Auk38JF4pPMJX1vU1CxX1oMb1+PSpowP93H9KyFjMwXY/tWVY7IAMIINGTcuVPw0ZWRCV0yB6VSA3mu6x5om3lve1ld0ENOXZEWYeLobY1dBUOY+7Wo7JzT3mTRzgCe3nQg=
Authentication-Results: spf=none (sender IP is )
 smtp.mailfrom=Julien.Grall@arm.com; 
Received: from Juliens-MacBook-Pro.local (217.140.96.140) by
 DB7PR08MB3355.eurprd08.prod.outlook.com (2603:10a6:5:20::22) with Microsoft
 SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.715.23; Mon, 30
 Apr 2018 08:12:29 +0000
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-11-git-send-email-shijie.huang@arm.com>
 <d287476a-07af-ea01-e6fc-c18493f7716a@arm.com>
 <20180428062056.GA5590@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <b6069af5-7a0e-15cc-2931-01f740e64e3e@arm.com>
Date: Mon, 30 Apr 2018 09:12:27 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0)
 Gecko/20100101 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <20180428062056.GA5590@ubuntu.shanghai.arm.com>
Content-Language: en-US
X-Originating-IP: [217.140.96.140]
X-ClientProxiedBy: AM4PR07CA0013.eurprd07.prod.outlook.com
 (2603:10a6:205:1::26) To DB7PR08MB3355.eurprd08.prod.outlook.com
 (2603:10a6:5:20::22)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-HT: Tenant
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(7020095)(4652020)(48565401081)(5600026)(2017052603328)(7153060)(7193020);
 SRVR:DB7PR08MB3355; 
X-Microsoft-Exchange-Diagnostics: 1; DB7PR08MB3355;
 3:4JiWA7zM5UFmUSmOS+ee3zpScx4PuUZ5U3qCZJ+6hRC7lh6PBFioWx8XAa8n3Vdnid6U9C3wQvAxc0yvoz/8J7mZHJwSXBRJ55HYfWq3DSSie7+jmoVob6FIPLD9WJcq4qssUFB9w9915ljUxXpvkydT3JTvcrpzSrflHnHES5k+yVAGhbepPrX/m2ZyVWGBW+BDDYIj134IB7ZyZPqRUyITLe6VIA3n3LkJA9WQh6dC+NwTJBmeHG7v/J+R29I4;
 25:Cx7CWrLsLG8+86ROMJrjTwSHb2rK/3xr+TrJ8+aAE5PKog3vuycewaa22Aq/RC2VzPVmz5ukq0jC8ngRzyl2TVfRIfYUNkACZSpUBhdegSbEBtfvSv4DCHk/bp9980U99wKqXKXACSQ7E8b03I+K4b07VwXFZY2SKsBfcmfmTv9qUyWi17Oa91NIZ4giKI+4hqhx/Cvxv8S+OEVE/KWzgkB1Rhh2qLaSH0ktOU2NTfNma5ox05f+BQath4HXdNR+vJRsr+EP3KnrQMs1eSFagvRt/SpC/+ZnqOEyfWa/l3fZzDL0Jtrt4C9vJvNQAycdnbg+ngjdxHemRmPKHl6UTA==;
 31:HobExCGLuvCCbK+o0u25zAF7iKFwK+E0nw7pvI6sZp2qpAw9Nc/dZDyzuxfCEnS5v/4cnqJ34g7vE2Y2fYi1bmXjvlO/GhLBLN+i0TjuGKPXYptinv7Z4gDf5yKjBZB0p0VUChlqKeiO74wCRKdVU6FOfGo/FXKF42wIHzdGx4jRyBox9iD9IPUh2SOSnsot33QmcxxHenm3GCrOuuxtpKlXaCIB2kYu57K0LN2QXf0=
X-MS-TrafficTypeDiagnostic: DB7PR08MB3355:
NoDisclaimer: True
X-Microsoft-Exchange-Diagnostics: 1; DB7PR08MB3355;
 20:SPqhZwOQ7QZz/es+onryFr5/CAP/iCsBKi8wbZr7jLlFfs0jiP0ZTljPA2cFWVM5TAziVtwzsXIylXIHgZ3f0VpOPHHLR6lRFbJ2yU3zh5ZLtk3q5LFF1VhMRisU4RG6OyFZeBzEH10Kw8L+aFu8jRs/8B9V/jGAAiyxmAODGtd7fiGMtZwHRDp9EtxQ4938GGDJCS5UL+BbTT6abe2CEP9xfZsKsbkTy8rdDLP9fFRpkT4S5w4SmkOIZc/dDN5v;
 4:5Z4kZOw1OEy+ze3w2n/ms638HQkXTtfw9mXMj8AhVPbHzSEuOIeIHF0hRqKp9OdG6r4OP+pTgwbMwG6QUE1SqhLq8RxwUmvru6Co46Dk0SzFk8HTNTdUbw9pyPMMdzbYpgnDROmVl/qirfz91caXItzj20cvj5+RruwGKueUyNh/jzxGR2afdwKsi8H5vUjuO68ob/raWDcNTJVFetPTqt1XCOhR5pD4oj/aU7LwsZCzlKF/5dDyFYbyzTEznBod5Q35HZfkevsXWci3l/JK7w==
X-Microsoft-Antispam-PRVS: <DB7PR08MB33553FBD9E8A66BFDD7865F680820@DB7PR08MB3355.eurprd08.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231254)(944501410)(52105095)(3002001)(10201501046)(6055026)(6041310)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123560045)(6072148)(201708071742011);
 SRVR:DB7PR08MB3355; BCL:0; PCL:0; RULEID:; SRVR:DB7PR08MB3355; 
X-Forefront-PRVS: 0658BAF71F
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(366004)(39850400004)(39380400002)(376002)(346002)(396003)(189003)(199004)(6512007)(8936002)(4326008)(59450400001)(229853002)(97736004)(53546011)(26005)(446003)(44832011)(86362001)(11346002)(956004)(2616005)(476003)(486006)(52116002)(52146003)(23676004)(2486003)(31686004)(67846002)(76176011)(68736007)(6246003)(53936002)(65826007)(58126008)(16526019)(8666007)(5660300001)(8676002)(6486002)(81156014)(36756003)(39060400002)(81166006)(386003)(6506007)(6862004)(6636002)(2906002)(37006003)(316002)(7736002)(305945005)(6116002)(66066001)(65956001)(47776003)(93886005)(65806001)(3846002)(230700001)(25786009)(31696002)(50466002)(72206003)(478600001)(64126003)(106356001)(105586002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DB7PR08MB3355; H:Juliens-MacBook-Pro.local;
 FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; 
Received-SPF: None (protection.outlook.com: arm.com does not designate
 permitted sender hosts)
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjdQUjA4TUIzMzU1OzIzOmx2ekNXdGxJTFdOZlRJN01SQXl4aEwwRTcy?=
 =?utf-8?B?SjgwSXdNcStXVVl0MWZYeWZmMWJMbVBsb01WV3JOU1o1aXpLeTFKK2h5T2lk?=
 =?utf-8?B?dXU2U0RSTkJ1KzRZR3NibUJFQzV4Y05vcS9TNVhoSUpXTmhNMmYxdksxZVZG?=
 =?utf-8?B?TURnd1ZkaFJGR00zdWlFbEFJb1BrVlJ5OEROdGFBcHpFSDNYRk1NUjAwekFQ?=
 =?utf-8?B?YXhkbzNoaWJyaUh6M0NDV215a1RvWFVZNmFBWm1YMnlkT0dTZWw3akNSVnRx?=
 =?utf-8?B?VEhBNUNGR0FlaU95eWdhOWRESFRrcG13Wm1RdkhZYmZrRXNxdkJlek9oMnJn?=
 =?utf-8?B?ZC9sL1krZUV6d0p5WkFTUEFwNFBLUHJkRVM1cjdnSDdvQ2J0Q1dCYzdFU010?=
 =?utf-8?B?RkR0ekVGMW50SFBGR1Yxd0tNcEtrL2xEVUhnWkF0UHFmanZXb05vKzNvY1lx?=
 =?utf-8?B?MkJFZzJ5RzhkYWNLZy9Rb3djQzQwSWVaVVFONm1JcEZQMUg1bDdqVm9scmY5?=
 =?utf-8?B?ZFpyaXMwc1BwMWFtcTFvN2h1QllNcGVFczF6Q0VQb0FFcnUxZzFKemNrT2ZU?=
 =?utf-8?B?L0ZIbGF1UGVCM0FOSmJkNVFaTkRPTXJPR2QvRm5xMEtGanVWMGJlWW9XRHJE?=
 =?utf-8?B?U1dRbFVnbUpkZktLUDVqQldkS1JXM3FDbkp2Q0NXMTk5L1FOOXBXM3l6NC8x?=
 =?utf-8?B?NXEzVXBKamgwWGNFc1ZXUEVORVlTaVZsLzNCK1N1NkU1ajZldWlPK2pQazEr?=
 =?utf-8?B?SXRuSnJlTkRucE5kWFdacE1nOE1sR0JzR2lVZVhtYjFmVWVqSW5ZcWVIUk85?=
 =?utf-8?B?a0lYWVE1dTZJTUVjbkNZZk9RV2twaGdlZGlOTWFCQlluYXFDb1dhVlkrRkpF?=
 =?utf-8?B?SnlQTWIyNXBETUFJSXYyUFgxcDJFeEFpaXJzOXdzUWUwRlp1Zm9DaW9UK0JP?=
 =?utf-8?B?MEZEV090cG9wM1VVcFplYTgwemYvK3duY3lVNDhxWVEwa0w0Uy80L3c5VXRC?=
 =?utf-8?B?aFcvS3RoSjZtRVp0OUF3bXl4Z0Jta2tWNnMyMTlReC8zU0tlSit1clUxMDNz?=
 =?utf-8?B?b0YyNDdhcXlTVWxjRzhYSm80Y3Q0dXZ5cEl4dXAxRW9lWkJqU1FaSXV5cDFq?=
 =?utf-8?B?NiszTll5WkVWb2F3a1I1UWR2SjJ6V0kvTnBseDltNmE3NUxuZHB4cDZtRDQr?=
 =?utf-8?B?RUs1ckNxZXh4WDFtYzVkUU1kU29qbEJOZGRXWEI2RG1zVjlia2oyT09XMlZ6?=
 =?utf-8?B?QzZzcWs0aUk5ZUJiZnladFVDS2NCQU5rYUQ1dGx4SUtQNmt1QW15NVdFMFU4?=
 =?utf-8?B?czQzVWF4cVZOVW5qZjhUQWJOUkxNY3E3dVdhcXEzSWNLV0p6Y2lGWEFhQ0xX?=
 =?utf-8?B?eTI5cllWN25BRG0wa3NjQ0FscnNXUWxQTjVOZjh3QTNaL2Uvc0JrYUVMM2tt?=
 =?utf-8?B?aVk1aGp6WG9FU3dUZlpqMnlTN1ZNUW04dkREZzd5THVLTkV6QXlQWmJ3Ujlp?=
 =?utf-8?B?QSswcXhkR2c1K0tCSHZiTnIyL1pVWThMSGZHV3llSzdpazJLaG1heHJCVnNu?=
 =?utf-8?B?RlBJa3NHb08yR2tlQXQ4R0RGbVNHMnB2NnQvTU10SmkvTU9wd3Z2UVBNUTVr?=
 =?utf-8?B?akV4SmFKWFUvVHlESkViQ09xZFczVnpSQWdJYTNKdi9obmFYblY0VVF4VmNq?=
 =?utf-8?B?VUNTT2pkOWl1V0N3MUROQUhyRnpzak9MZjdpN1I0OUNEbWlsSEp3N0wzdlc5?=
 =?utf-8?B?ais5Si83Y2Vwa085bSswc3ZBdG5sRFlYWVoxSS9DU1pqT01PTXREbktGNndv?=
 =?utf-8?B?Wm5GallDaFZEQ0RoRW5NMGVWM09UV3VycGhmR05DeGxQSW5VeURUcG8xT1Ja?=
 =?utf-8?B?UFlqSDZoSVBwSjNNRGNwR2lXcE5kWmhkaGNTbldGQzJDdFF4UG0xSG1vY2Vw?=
 =?utf-8?B?NHhmMzlBNjM3ZlhnMkVLLzJFeDQ5VlY0cWczZHYxS0dET1Vha3V1alpKanVW?=
 =?utf-8?B?YjVIV3BkRDQ5cHdyUHFEQ0FPSmtOaU50dkhIYkRrRVRNSXNBdE5ueTUzQVkw?=
 =?utf-8?B?bVNRM0VnR1N3MDdTbG83c0Q4WnlQZzZ2TDNIWngxTnB6RHpQdG41TWpVdnlu?=
 =?utf-8?B?dmc9PQ==?=
X-Microsoft-Antispam-Message-Info: A+j0iAMT1O2lOmR6z8kudZcxF+xra8oowsv9oxVBwneAQ+M7CDwbrxxpJz+52dc2GrZ+rdRmi7criIQlQllHA9R9vFj/tcyff6xJH8e5w4yaRE1WKWPWP6dQYEk6HEUAGNtigwFFrqHM2DMDRX70+X6jIJnNTDr8lNZzyvNihEKeuvt6NOWEd55xZL6PA2KU
X-Microsoft-Exchange-Diagnostics: 1; DB7PR08MB3355;
 6:vJVVlLJgqYLbqFF/FnoTHTAdERHxifMqh/xyt7xRSGVfDMit6bqKUvMsGVJYmgocqHHqUhRtXgSLdSbQmN6Ld37T18WOUpNtgsVA2YQLllyVDMdEv/Sgv8EPbcGh1zfb/RJM1NqUeP+O6RBlFgBQB+8hdFUahV+BdluQUj67F5Hx4atA9lPZmvWOKwrxuRjt30k48b6xzouTYwfiwgDhFZDUU3+CvLa7DajjGPEE+cTISUgjzZUgXbOvnvItDyPBNk6VETZlwpuHLaTm3WNYb8bwtCpbZNiTBkEAytZ9DvZMXZUr9N2uea4K2W59SeeO/uVAXC/kuDi/IeXU5g5Fq+H2O+AORuNLW3MrClgyhTJyWL3grMlmB8frgDQWCcbiwg/TtDrxDmRuL4LR8ViNVOp551rRixEWmAwhWAMOFQVVJxmMqJEWq4NSsfTKUMdCkY9YPnT9Y3xi5ihy1LbWjA==;
 5:yftwGrqLBLqzPAerHECMkcXTX56KFn63CnEwigXqddvDe8xnh/wH6ihv01JwpyxILMiMykN10v8aJY2dHyEM1Gy/fy8DwsU0vfM5RKAGSP+UCQ5B3rOGh7zoCY1F4EJNj2Pj6+CGIGHBUnR7QHiB50Ah+JGmSIZ/Adca+VMujBA=;
 24:EgplUbuUkt++BTBe7C0jnUOE3o0Sow3HEG+qhLM+MzbknS5X3wjp3/mjy2SFfDcTJD+kF6KUup7Rn+AuiX2LEfnd+ZYOAlLxxIsxn87CNQU=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB7PR08MB3355;
 7:fFl5s5hEQP18Xiv731+fb/DEqCmxh5cIWWG5NRZI1ww9Y6XR/qcJnvkGvhCBU4BFwO1jPurQDNy1ytebo4OAecC75caKl3iTCJO9M8+7X8e8b0vs6HPqqUF1EzKf4uNX/VpD67Ck28MNy0yONGHZZbIUOra027Oe/qALVBYJ8rceQe2ZCCsguf85qt/pDCnBlT6AXhmWmC7Zthuf6Ekg+1+EV8Dx5n7zIg+6lB6kTquz31+GqzYv7bFYziSx0Irc
X-MS-Office365-Filtering-Correlation-Id: 50d320d0-da1a-42ce-88bd-08d5ae721edf
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2018 08:12:29.9013 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 50d320d0-da1a-42ce-88bd-08d5ae721edf
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3355
Subject: Re: [Minios-devel] [PATCH v3 10/43] arm64: add exception support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAyOC8wNC8yMDE4IDA3OjIwLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4gT24gV2VkLCBBcHIg
MTgsIDIwMTggYXQgMDY6NDg6MjRQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdyb3RlOgo+Pj4gKyAg
ICBzYXZlX3JlZ2lzdGVycyAxCj4+PiArICAgIG1vdiAgICAgeDAsIHNwCj4+PiArICAgIG1ycyAg
ICAgeDEsIGVzcl9lbDE7Cj4+PiArICAgIG1ycyAgICAgeDIsIGZhcl9lbDE7Cj4+Cj4+IERvIHlv
dSBleHBlY3QgdGhlIG1pbmktT1MgdG8gYWx3YXlzIHJ1biB3aXRoIGludGVycnVwdCBkaXNhYmxl
ZCBpbiBFTDE/IElmCj4gQXQgdGhlIGJlZ2lubmluZywgd2UgY2FuIHJ1biB3aXRoIGludGVycnVw
dCBkaXNhYmxlZCBpbiBFTDEuCj4gSXQgbWFrZXMgdGhlIGNvZGUgc2ltcGxlLiA6KQoKVGhlIHF1
ZXN0aW9uIGlzIG1vcmUgd2hhdCBkbyB5b3UgZXhwZWN0IHRvIHJ1biBpbiB0aGF0IGV4Y2VwdGlv
biAKY29udGV4dC4gV291bGQgaXQgZXZlciBiZSBwb3NzaWJsZSB0aGF0IHRoZSBDLUNvZGUgd2ls
bCByZS1lbmFibGUgCmludGVycnVwdCBhbmQgdGhlbiB5b3UgZ2V0IGNhdWdodCBsYXRlciBvbj8K
CkkgYW0gbm90IG5lY2Vzc2FyaWx5IGFza2luZyB5b3UgdG8gZW5hYmxlIHRoZSBpbnRlcnJ1cHQg
aGVyZS4gQnV0IHlvdSAKc3VyZWx5IGFzc2VzcyB0aGUgaW1wYWN0IG9mIGtlZXBpbmcgaW50ZXJy
dXB0IGRpc2FibGVkLiBBcmUgdGhleSBnb2luZyAKdG8gYmUgZW5hYmxlZCBzdGlsbCBmb3IgdGhl
IHRocmVhZCAodGhleSBydW4gaW4gRUwxKT8KCj4gCj4+IG5vdCwgeW91IG1heSB3YW50IHRvIHJl
LWVuYWJsZSBpbnRlcnJ1cHQgaGVyZS4KPiBXZSBjYW4gcmUtZW5hYmxlIGludGVycnVwdCBpbiBm
dXR1cmUuCj4gCj4gVGhhbmtzCj4gSHVhbmcgU2hpamllCj4gCgpDaGVlcnMsCgotLSAKSnVsaWVu
IEdyYWxsCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpN
aW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9y
ZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRl
dmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 08:27:44 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 08:27:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD49u-0004qY-Ui; Mon, 30 Apr 2018 08:27:42 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=9iis=ht=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1fD49t-0004qT-73
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 08:27:41 +0000
X-Inumbo-ID: 28ac7a0a-4c50-11e8-9728-bc764e045a96
Received: from mail-lf0-x22e.google.com (unknown [2a00:1450:4010:c07::22e])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 28ac7a0a-4c50-11e8-9728-bc764e045a96;
 Mon, 30 Apr 2018 10:26:20 +0200 (CEST)
Received: by mail-lf0-x22e.google.com with SMTP id h197-v6so11019789lfg.11
 for <minios-devel@lists.xenproject.org>; Mon, 30 Apr 2018 01:27:38 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=hiLIoFQV0zRv1xU1Sx2HD+S9OjEG59eCTUejG2hDb78=;
 b=RXSWGgP7ivrSPSu0M+dUHn/tftznThUZgNpTTQEi1o2PSulCK7XDKsvWzl9NHEwXQI
 eLqmct3m/2NXNIcmac1vzlUUA2i2ppF8DI2V1zVuQzDqpEVfL2Z2lYafiHHhZlcHvTfK
 S/0t50G9mUqPnB99VSIbrz8+QqajD24ZbQJlPzHHNqdgXvQCZVbPqyDNl+WgaBylO6B2
 a/Rn08Hu7VLfMYamkbZ0YezgzZrHmgnaL+tYgqSL2YTF+oybvJdTz+6EqTLW1nxVtCKy
 fwJ/JdttKEcl6Hn9WaDH8yV8SdyIYgc38H+Rbf0c7R8r3Tkcfe1bXJrzrPyAIxI39+6d
 DZzg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=hiLIoFQV0zRv1xU1Sx2HD+S9OjEG59eCTUejG2hDb78=;
 b=M665uMe1Hi1nHmuJCbbRfMMPXXD2T0z8GWKwvFg2m535PLQmGWNifpLIns+UJ7TLDq
 ztlFn7FCOa1JxR+jQVQlOg9xq5Q85zc9MDXdxJqj+gtqeLd6bFg50rYqr5pbWTflUju8
 3aGsmxB9uwyBua917NH0fq4nK04y61eZsfFXwalbYY10wd1ssKcBKF1mFoDavxWvY+bD
 jYpnxBI12n7lp5krk+CBwXfoJ06ciJo/hejfZXBFPktIhG1/RApNofXedPEXx22fuOMk
 aSBayPbYqCOUUx9yhlgJxWeMy6aC2kOtqJGjoBq04JL9fZgFFrKoNzy7WlGsvtbzT1Po
 CvMg==
X-Gm-Message-State: ALQs6tC4EoIRWN2iI6jvoijJKyi0kwFBiB41Jbu8VT2+uy6LqPtlQL4g
 xBIOYA7S9yLmUNctcqhD4iRYUCKT/tpoTXXH/Jk=
X-Google-Smtp-Source: AB8JxZrQz2Tl6ODKOVFvb5Dm/NwRdMIiqzUb07Bj2LJeVHeB++cvta1cleGjH7mgWGZY4QHwvDiit8BsW4cAWRrLxGI=
X-Received: by 2002:a2e:9e57:: with SMTP id
 g23-v6mr5129676ljk.37.1525076857079; 
 Mon, 30 Apr 2018 01:27:37 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:d899:0:0:0:0:0 with HTTP; Mon, 30 Apr 2018 01:27:36
 -0700 (PDT)
In-Reply-To: <CAHP4M8XPgk6+4Jrdv+L_tgKhKaj9BXNK-678sWpQ7vrRoyLpyQ@mail.gmail.com>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
 <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
 <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
 <CAHP4M8WxD0KKGzwMBVQpge9k88BL-Zo1_0nsML0bV9_3uLb_zg@mail.gmail.com>
 <b9a24604-91fe-1218-6053-8ba18c32556c@neclab.eu>
 <CAHP4M8XPgk6+4Jrdv+L_tgKhKaj9BXNK-678sWpQ7vrRoyLpyQ@mail.gmail.com>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Mon, 30 Apr 2018 13:57:36 +0530
Message-ID: <CAHP4M8XOvJrn2QKkFY4FZ-=Vm9GjEtsgqEwvbYzq0LEYnu14GQ@mail.gmail.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: multipart/mixed; boundary="===============8915433150035652072=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============8915433150035652072==
Content-Type: multipart/alternative; boundary="000000000000524fad056b0ca07b"

--000000000000524fad056b0ca07b
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

https://github.com/nim-lang/Nim/issues/2620 suggests it might be due to
(old) gcc version.

Any chance we can get the following via cross-compilation :

          * arm-options in menuconfig screen?
          * actually cross-compile for arm32 in unikraft ecosystem?

On Mon, Apr 30, 2018 at 12:25 PM, Ajay Garg <ajaygargnsit@gmail.com> wrote:

> Hi Simon.
>
>
>
>>>
>> Right now, you can test Unikraft with Xen on arm32. Be aware that there
>> is a open bug on the memory allocator for arm (see:
>> https://wiki.xenproject.org/wiki/Category:Unikraft_Users). arm64 with
>> Xen is currently not supported but we working on it. Same for KVM and
>> baremetal.
>>
>> We use cubieboard2/3 for arm32 tests. These boards are even officially
>> supported by Debian and can run Xen.
>>
>
>
> So we bought a cubieboard2 :)
>
> Brought the board up without xen.
> Then brought the board up with xen.
>
> At this point, "sudo xl list" lists "Domain-0" fine.
>
>
> Now, we are wanting to run the helloworld-unikraft-unikernel.
>
> To keep aside any cross-compilation issues, we are compiling on
> cubieboard2 itself.
> Following is the .config file (majorly containing the "ukdebug" and
> "ukboot" changes  required for arm32) :
>
> ############################################################
> #####################
> #
> # Automatically generated file; DO NOT EDIT.
> # Unikraft/0.2~8b94640 Configuration
> #
>
> #
> # Architecture Selection
> #
> # ARCH_X86_64 is not set
> ARCH_ARM_32=3Dy
> # MARCH_CORTEXA7 is not set
> MARCH_A20NEON=3Dy
>
> #
> # Platform Support
> #
> PLAT_XEN=3Dy
> XEN_DBGEMERGENCY=3Dy
> PLAT_LINUXU=3Dy
> LINUXU_DEFAULT_HEAPMB=3D4
>
> #
> # Library Configuration
> #
> HAVE_BOOTENTRY=3Dy
> # HAVE_LIBC is not set
> # HAVE_SCHED is not set
> LIBUKBOOT=3Dy
> LIBUKBOOT_BANNER=3Dy
> LIBUKBOOT_MAXNBARGS=3D60
> # LIBUKBOOT_INITALLOC is not set
> LIBUKDEBUG=3Dy
> LIBUKDEBUG_PRINTK=3Dy
> LIBUKDEBUG_PRINTD=3Dy
> # LIBUKDEBUG_PRINTD_EXTRA is not set
> # LIBUKDEBUG_PRINTD_INFO is not set
> # LIBUKDEBUG_PRINTD_WARN is not set
> LIBUKDEBUG_PRINTD_ERR=3Dy
> # LIBUKDEBUG_PRINTD_CRIT is not set
> # LIBUKDEBUG_NOREDIR is not set
> # LIBUKDEBUG_REDIR_PRINTD is not set
> LIBUKDEBUG_REDIR_PRINTK=3Dy
> LIBUKDEBUG_ENABLE_ASSERT=3Dy
> LIBUKARGPARSE=3Dy
> LIBNOLIBC=3Dy
> LIBUKALLOC=3Dy
> # LIBUKALLOC_IFPAGES is not set
> # LIBUKALLOC_IFSTATS is not set
> # LIBUKALLOCBBUDDY is not set
> # LIBUKSCHED is not set
> # LIBUKSCHEDCOOP is not set
> LIBFDT=3Dy
>
> #
> # Build Options
> #
> # OPTIMIZE_NONE is not set
> OPTIMIZE_PERF=3Dy
> # OPTIMIZE_SIZE is not set
> # OPTIMIZE_DEADELIM is not set
> # DEBUG_SYMBOLS is not set
> OPTIMIZE_STRIP=3Dy
> # RECORD_BUILDTIME is not set
> CROSS_COMPILE=3D""
>
> #
> # Application Options
> #
> APPHELLOWORLD_DEPENDENCIES=3Dy
> APPHELLOWORLD_PRINTARGS=3Dy
> UK_NAME=3D"helloworld"
> ############################################################
> #####################
>
>
> However, upon compilation, following is observed :
>
> ############################################################
> #####################
> debian@debian-armhf:~/unikraft/apps/helloworld$ make
> make[1]: Entering directory '/home/debian/unikraft/unikraft'
>   CP      config
>   CC      libxenplat: hypervisor.o
> cc1: error: bad value (cortex-a7) for -mcpu switch
> cc1: error: bad value (cortex-a7) for -mtune switch
> /home/debian/unikraft/unikraft/support/build/Makefile.build:48: recipe
> for target '/home/debian/unikraft/apps/helloworld/build/libxenplat/hyperv=
isor.o'
> failed
> make[1]: *** [/home/debian/unikraft/apps/helloworld/build/libxenplat/hype=
rvisor.o]
> Error 1
> make[1]: Leaving directory '/home/debian/unikraft/unikraft'
> Makefile:6: recipe for target 'all' failed
> make: *** [all] Error 2
> debian@debian-armhf:~/unikraft/apps/helloworld$
> ############################################################
> #####################
>
>
>
> So, we proceed to remove the -mtune=3Dcortex-a7 and -mcpu=3Dcortex-a7 fla=
gs
> from unikraft/unikraft/arch/arm/Makefile.uk.
> Thereafter, upon recompiling, we get
>
> ############################################################
> #####################
> debian@debian-armhf:~/unikraft/apps/helloworld$ make
> make[1]: Entering directory '/home/debian/unikraft/unikraft'
>   CP      config
>   CC      libxenplat: hypervisor.o
> In file included from /home/debian/unikraft/unikraft/plat/xen/hypervisor.
> c:43:0:
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In function
> =E2=80=98ukarch_test_and_clr_bit=E2=80=99:
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:90:2: warning:
> implicit declaration of function =E2=80=98__atomic_fetch_and=E2=80=99 [-W=
implicit-function-
> declaration]
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:90:40: error:
> =E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (first use in this function=
)
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:90:40: note: each
> undeclared identifier is reported only once for each function it appears =
in
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In function
> =E2=80=98ukarch_test_and_set_bit=E2=80=99:
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:105:2: warning:
> implicit declaration of function =E2=80=98__atomic_fetch_or=E2=80=99 [-Wi=
mplicit-function-
> declaration]
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:105:38: error:
> =E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (first use in this function=
)
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In function
> =E2=80=98ukarch_test_and_clr_bit_sync=E2=80=99:
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:148:40: error:
> =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in this function=
)
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In function
> =E2=80=98ukarch_test_and_set_bit_sync=E2=80=99:
> /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:161:38: error:
> =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in this function=
)
> /home/debian/unikraft/unikraft/plat/xen/hypervisor.c: In function
> =E2=80=98do_hypervisor_callback=E2=80=99:
> /home/debian/unikraft/unikraft/plat/xen/hypervisor.c:71:2: warning:
> implicit declaration of function =E2=80=98__atomic_exchange_n=E2=80=99 [-=
Wimplicit-function-
> declaration]
> /home/debian/unikraft/unikraft/plat/xen/hypervisor.c:71:7: error:
> =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in this function=
)
> /home/debian/unikraft/unikraft/support/build/Makefile.build:48: recipe
> for target '/home/debian/unikraft/apps/helloworld/build/libxenplat/hyperv=
isor.o'
> failed
> make[1]: *** [/home/debian/unikraft/apps/helloworld/build/libxenplat/hype=
rvisor.o]
> Error 1
> make[1]: Leaving directory '/home/debian/unikraft/unikraft'
> Makefile:6: recipe for target 'all' failed
> make: *** [all] Error 2
> ############################################################
> #####################
>
>
> What are we missing?
>
>
> Thanks and Regards,
> Ajay
>
>>
>>> Thanks and Regards,
>>> Ajay
>>>
>>>
>>
>> Thanks,
>>
>> Simon
>>
>
>
>
> --
> Regards,
> Ajay
>



--=20
Regards,
Ajay

--000000000000524fad056b0ca07b
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div><a href=3D"https://github.com/nim-lang/Nim/=
issues/2620">https://github.com/nim-lang/Nim/issues/2620</a> suggests it mi=
ght be due to (old) gcc version.<br><br></div>Any chance we can get the fol=
lowing via cross-compilation :<br><br></div>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 * arm-options in menuconfig screen?<br></div>=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * actually cross-compil=
e for arm32 in unikraft ecosystem?<br></div><div class=3D"gmail_extra"><br>=
<div class=3D"gmail_quote">On Mon, Apr 30, 2018 at 12:25 PM, Ajay Garg <spa=
n dir=3D"ltr">&lt;<a href=3D"mailto:ajaygargnsit@gmail.com" target=3D"_blan=
k">ajaygargnsit@gmail.com</a>&gt;</span> wrote:<br><blockquote class=3D"gma=
il_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-lef=
t:1ex"><div dir=3D"ltr">Hi Simon.<br><br><br><div><div class=3D"gmail_extra=
"><div class=3D"gmail_quote"><span class=3D""><blockquote class=3D"gmail_qu=
ote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,20=
4);padding-left:1ex"><span class=3D"m_-4380696156103532994gmail-"><blockquo=
te class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px =
solid rgb(204,204,204);padding-left:1ex">
<br>
</blockquote>
<br></span>
Right now, you can test Unikraft with Xen on arm32. Be aware that there is =
a open bug on the memory allocator for arm (see:<a href=3D"https://wiki.xen=
project.org/wiki/Category:Unikraft_Users" rel=3D"noreferrer" target=3D"_bla=
nk">https://wiki.xenproject.o<wbr>rg/wiki/Category:Unikraft_User<wbr>s</a>)=
. arm64 with Xen is currently not supported but we working on it. Same for =
KVM and baremetal.<br>
<br>
We use cubieboard2/3 for arm32 tests. These boards are even officially supp=
orted by Debian and can run Xen.<br></blockquote><div><br></div></span><div=
><br>So we bought a cubieboard2 :)<br><br></div><div>Brought the board up w=
ithout xen.<br>Then brought the board up with xen.<br><br></div><div>At thi=
s point, &quot;sudo xl list&quot; lists &quot;Domain-0&quot; fine.<br><br><=
br></div><div>Now, we are wanting to run the helloworld-unikraft-unikernel.=
<br><br></div><div>To keep aside any cross-compilation issues, we are compi=
ling on cubieboard2 itself.<br></div><div>Following is the .config file (ma=
jorly containing the &quot;ukdebug&quot; and &quot;ukboot&quot; changes=C2=
=A0 required for arm32) :<br><br>##############################<wbr>#######=
#######################<wbr>#####################<br>#<br># Automatically g=
enerated file; DO NOT EDIT.<br># Unikraft/0.2~8b94640 Configuration<br>#<br=
><br>#<br># Architecture Selection<br>#<br># ARCH_X86_64 is not set<br>ARCH=
_ARM_32=3Dy<br># MARCH_CORTEXA7 is not set<br>MARCH_A20NEON=3Dy<br><br>#<br=
># Platform Support<br>#<br>PLAT_XEN=3Dy<br>XEN_DBGEMERGENCY=3Dy<br>PLAT_LI=
NUXU=3Dy<br>LINUXU_DEFAULT_HEAPMB=3D4<br><br>#<br># Library Configuration<b=
r>#<br>HAVE_BOOTENTRY=3Dy<br># HAVE_LIBC is not set<br># HAVE_SCHED is not =
set<br>LIBUKBOOT=3Dy<br>LIBUKBOOT_BANNER=3Dy<br>LIBUKBOOT_MAXNBARGS=3D60<br=
># LIBUKBOOT_INITALLOC is not set<br>LIBUKDEBUG=3Dy<br>LIBUKDEBUG_PRINTK=3D=
y<br>LIBUKDEBUG_PRINTD=3Dy<br># LIBUKDEBUG_PRINTD_EXTRA is not set<br># LIB=
UKDEBUG_PRINTD_INFO is not set<br># LIBUKDEBUG_PRINTD_WARN is not set<br>LI=
BUKDEBUG_PRINTD_ERR=3Dy<br># LIBUKDEBUG_PRINTD_CRIT is not set<br># LIBUKDE=
BUG_NOREDIR is not set<br># LIBUKDEBUG_REDIR_PRINTD is not set<br>LIBUKDEBU=
G_REDIR_PRINTK=3Dy<br>LIBUKDEBUG_ENABLE_ASSERT=3Dy<br>LIBUKARGPARSE=3Dy<br>=
LIBNOLIBC=3Dy<br>LIBUKALLOC=3Dy<br># LIBUKALLOC_IFPAGES is not set<br># LIB=
UKALLOC_IFSTATS is not set<br># LIBUKALLOCBBUDDY is not set<br># LIBUKSCHED=
 is not set<br># LIBUKSCHEDCOOP is not set<br>LIBFDT=3Dy<br><br>#<br># Buil=
d Options<br>#<br># OPTIMIZE_NONE is not set<br>OPTIMIZE_PERF=3Dy<br># OPTI=
MIZE_SIZE is not set<br># OPTIMIZE_DEADELIM is not set<br># DEBUG_SYMBOLS i=
s not set<br>OPTIMIZE_STRIP=3Dy<br># RECORD_BUILDTIME is not set<br>CROSS_C=
OMPILE=3D&quot;&quot;<br><br>#<br># Application Options<br>#<br>APPHELLOWOR=
LD_DEPENDENCIES=3Dy<br>APPHELLOWORLD_PRINTARGS=3Dy<br>UK_NAME=3D&quot;hello=
world&quot;<br>##############################<wbr>#########################=
#####<wbr>#####################<br></div><div><br><br>However, upon compila=
tion, following is observed :<br><br>##############################<wbr>###=
###########################<wbr>#####################<br>debian@debian-armh=
f:~/<wbr>unikraft/apps/helloworld$ make <br>make[1]: Entering directory &#3=
9;/home/debian/unikraft/<wbr>unikraft&#39;<br>=C2=A0 CP=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 config<br>=C2=A0 CC=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 libxenplat: =
hypervisor.o<br>cc1: error: bad value (cortex-a7) for -mcpu switch<br>cc1: =
error: bad value (cortex-a7) for -mtune switch<br>/home/debian/unikraft/<wb=
r>unikraft/support/build/<wbr>Makefile.build:48: recipe for target &#39;/ho=
me/debian/unikraft/apps/<wbr>helloworld/build/libxenplat/<wbr>hypervisor.o&=
#39; failed<br>make[1]: *** [/home/debian/unikraft/apps/<wbr>helloworld/bui=
ld/libxenplat/<wbr>hypervisor.o] Error 1<br>make[1]: Leaving directory &#39=
;/home/debian/unikraft/<wbr>unikraft&#39;<br>Makefile:6: recipe for target =
&#39;all&#39; failed<br>make: *** [all] Error 2<br>debian@debian-armhf:~/<w=
br>unikraft/apps/helloworld$ <br>##############################<wbr>#######=
#######################<wbr>#####################<br><br><br><br></div><div=
>So, we proceed to remove the -mtune=3Dcortex-a7 and -mcpu=3Dcortex-a7 flag=
s from unikraft/unikraft/arch/arm/<wbr>Makefile.uk.<br></div><div>Thereafte=
r, upon recompiling, we get<br><br>##############################<wbr>#####=
#########################<wbr>#####################<br>debian@debian-armhf:=
~/<wbr>unikraft/apps/helloworld$ make<br>make[1]: Entering directory &#39;/=
home/debian/unikraft/<wbr>unikraft&#39;<br>=C2=A0 CP=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 config<br>=C2=A0 CC=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 libxenplat: hyp=
ervisor.o<br>In file included from /home/debian/unikraft/<wbr>unikraft/plat=
/xen/hypervisor.<wbr>c:43:0:<br>/home/debian/unikraft/<wbr>unikraft/include=
/uk/arch/<wbr>atomic.h: In function =E2=80=98ukarch_test_and_clr_bit=E2=80=
=99:<br>/home/debian/unikraft/<wbr>unikraft/include/uk/arch/<wbr>atomic.h:9=
0:2: warning: implicit declaration of function =E2=80=98__atomic_fetch_and=
=E2=80=99 [-Wimplicit-function-<wbr>declaration]<br>/home/debian/unikraft/<=
wbr>unikraft/include/uk/arch/<wbr>atomic.h:90:40: error: =E2=80=98__ATOMIC_=
RELAXED=E2=80=99 undeclared (first use in this function)<br>/home/debian/un=
ikraft/<wbr>unikraft/include/uk/arch/<wbr>atomic.h:90:40: note: each undecl=
ared identifier is reported only once for each function it appears in<br>/h=
ome/debian/unikraft/<wbr>unikraft/include/uk/arch/<wbr>atomic.h: In functio=
n =E2=80=98ukarch_test_and_set_bit=E2=80=99:<br>/home/debian/unikraft/<wbr>=
unikraft/include/uk/arch/<wbr>atomic.h:105:2: warning: implicit declaration=
 of function =E2=80=98__atomic_fetch_or=E2=80=99 [-Wimplicit-function-<wbr>=
declaration]<br>/home/debian/unikraft/<wbr>unikraft/include/uk/arch/<wbr>at=
omic.h:105:38: error: =E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (first =
use in this function)<br>/home/debian/unikraft/<wbr>unikraft/include/uk/arc=
h/<wbr>atomic.h: In function =E2=80=98ukarch_test_and_clr_bit_sync=E2=80=99=
<wbr>:<br>/home/debian/unikraft/<wbr>unikraft/include/uk/arch/<wbr>atomic.h=
:148:40: error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in=
 this function)<br>/home/debian/unikraft/<wbr>unikraft/include/uk/arch/<wbr=
>atomic.h: In function =E2=80=98ukarch_test_and_set_bit_sync=E2=80=99<wbr>:=
<br>/home/debian/unikraft/<wbr>unikraft/include/uk/arch/<wbr>atomic.h:161:3=
8: error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in this =
function)<br>/home/debian/unikraft/<wbr>unikraft/plat/xen/hypervisor.<wbr>c=
: In function =E2=80=98do_hypervisor_callback=E2=80=99:<br>/home/debian/uni=
kraft/<wbr>unikraft/plat/xen/hypervisor.<wbr>c:71:2: warning: implicit decl=
aration of function =E2=80=98__atomic_exchange_n=E2=80=99 [-Wimplicit-funct=
ion-<wbr>declaration]<br>/home/debian/unikraft/<wbr>unikraft/plat/xen/hyper=
visor.<wbr>c:71:7: error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (fi=
rst use in this function)<br>/home/debian/unikraft/<wbr>unikraft/support/bu=
ild/<wbr>Makefile.build:48: recipe for target &#39;/home/debian/unikraft/ap=
ps/<wbr>helloworld/build/libxenplat/<wbr>hypervisor.o&#39; failed<br>make[1=
]: *** [/home/debian/unikraft/apps/<wbr>helloworld/build/libxenplat/<wbr>hy=
pervisor.o] Error 1<br>make[1]: Leaving directory &#39;/home/debian/unikraf=
t/<wbr>unikraft&#39;<br>Makefile:6: recipe for target &#39;all&#39; failed<=
br>make: *** [all] Error 2<br>##############################<wbr>##########=
####################<wbr>#####################<br><br></div><div><br></div>=
<div>What are we missing?<br></div><div><br><br></div><div>Thanks and Regar=
ds,<br></div><div>Ajay <br></div><span class=3D""><blockquote class=3D"gmai=
l_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,20=
4,204);padding-left:1ex">
<blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-=
left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Thanks and Regards,<br>
Ajay<br>
<br>
</blockquote>
<br>
<br>
Thanks,<br>
<br>
Simon<br>
</blockquote></span></div><span class=3D"HOEnZb"><font color=3D"#888888"><b=
r><br clear=3D"all"><br>-- <br><div class=3D"m_-4380696156103532994gmail_si=
gnature">Regards,<br>Ajay<br></div>
</font></span></div></div></div>
</blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig=
nature" data-smartmail=3D"gmail_signature">Regards,<br>Ajay<br></div>
</div>

--000000000000524fad056b0ca07b--


--===============8915433150035652072==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============8915433150035652072==--


From minios-devel-bounces@lists.xenproject.org Mon Apr 30 09:24:40 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 09:24:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD52z-0000Oq-Nw; Mon, 30 Apr 2018 09:24:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=6+tk=ht=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fD52z-0000Ol-0n
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 09:24:37 +0000
X-Inumbo-ID: a7ca29eb-4c58-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id a7ca29eb-4c58-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 09:27:09 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 7DB1A1040F3;
 Mon, 30 Apr 2018 11:24:33 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id DdfYqvJjX9Ei; Mon, 30 Apr 2018 11:24:33 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 5A076101759;
 Mon, 30 Apr 2018 11:24:29 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 30 Apr
 2018 11:24:28 +0200
To: Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
 <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
 <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
 <CAHP4M8WxD0KKGzwMBVQpge9k88BL-Zo1_0nsML0bV9_3uLb_zg@mail.gmail.com>
 <b9a24604-91fe-1218-6053-8ba18c32556c@neclab.eu>
 <CAHP4M8XPgk6+4Jrdv+L_tgKhKaj9BXNK-678sWpQ7vrRoyLpyQ@mail.gmail.com>
 <CAHP4M8XOvJrn2QKkFY4FZ-=Vm9GjEtsgqEwvbYzq0LEYnu14GQ@mail.gmail.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <aed6f483-9b00-d3a1-3b8f-52c38a89eff4@neclab.eu>
Date: Mon, 30 Apr 2018 11:24:28 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8XOvJrn2QKkFY4FZ-=Vm9GjEtsgqEwvbYzq0LEYnu14GQ@mail.gmail.com>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGF5IEFqYXksCgp5b3UgY2FuIGFjdHVhbGx5IGRvIGJvdGggLSBuYXRpdmVseSBjb21waWxlIG9u
IEFSTSBvciBkb2luZyBhIGNyb3NzIApjb21waWxhdGlvbi4gVW5pa3JhZnQncyBtYWluIG1ha2Vm
aWxlIGlzIGFibGUgdG8gZGV0ZWN0IHRoaXMuIFRoaXMgCmhhcHBlbnMgdHJhbnNwYXJlbnRseS4g
WW91IGNhbiBvbmx5IGluZmx1ZW5jZSBpdCBieSBzZXR0aW5nIHRoZSAKQ1JPU1NfQ09NUElMRSBl
bnZpcm9ubWVudCB2YXJpYWJsZSBiZWZvcmUgY2FsbGluZyBtYWtlLiBZb3Ugc2hvdWxkIG5lZWQg
CnRvIHJlbW92ZSB0aGUgLW10dW5lPWNvcnRleC1hNyBhbmQgLW1jcHU9Y29ydGV4LWE3IGZsYWdz
IGZyb20gCnVuaWtyYWZ0L3VuaWtyYWZ0L2FyY2gvYXJtL01ha2VmaWxlLnVrLgpJbiBmYWN0LCB5
b3VyIEdDQyB2ZXJzaW9uIG1pZ2h0IGJlIHRvbyBvbGQuIFVuZm9ydHVuYXRlbHkgVW5pa3JhZnQg
aXMgCm5vdCB3YXJuaW5nIHlvdSB5ZXQgYnV0IEFSTSBwdWJsaXNoZWQgYSBwYXRjaCBzZXJpZXMg
dGhhdCBpcyBnb2luZyB0byAKd2FybiB5b3UgaW4gdGhlIGZ1dHVyZS4KCk9uIEFSTSwgSSBqdXN0
IHRlc3RlZCB0aGUgbmF0aXZlIGNvbXBpbGUgd2l0aApnY2MgKERlYmlhbiA2LjMuMC0xOCkgNi4z
LjAgMjAxNzA1MTYKCkkgdXNlIHRoZSBzYW1lIGZvciB0aGUgY3Jvc3MgY29tcGlsYXRpb24gZnJv
bSB4ODY6CmFybS1saW51eC1nbnVlYWJpaGYtZ2NjIChEZWJpYW4gNi4zLjAtMTgpIDYuMy4wIDIw
MTcwNTE2CgpGb3IgZGVidWdnaW5nLCB5b3UgY2FuIGhhdmUgYSBsb29rIHdoYXQgaXMgZ2V0dGlu
ZyBjYWxsZWQgd2l0aCB0aGUgCnZlcmJvc2Ugb3B0aW9uOgptYWtlIFY9MQoKClRoYW5rcywKClNp
bW9uCgpPbiAzMC4wNC4yMDE4IDEwOjI3LCBBamF5IEdhcmcgd3JvdGU6Cj4gaHR0cHM6Ly9naXRo
dWIuY29tL25pbS1sYW5nL05pbS9pc3N1ZXMvMjYyMCBzdWdnZXN0cyBpdCBtaWdodCBiZSBkdWUg
dG8gCj4gKG9sZCkgZ2NjIHZlcnNpb24uCj4gCj4gQW55IGNoYW5jZSB3ZSBjYW4gZ2V0IHRoZSBm
b2xsb3dpbmcgdmlhIGNyb3NzLWNvbXBpbGF0aW9uIDoKPiAKPiAgwqDCoMKgwqDCoMKgwqDCoMKg
ICogYXJtLW9wdGlvbnMgaW4gbWVudWNvbmZpZyBzY3JlZW4/Cj4gIMKgwqDCoMKgwqDCoMKgwqDC
oCAqIGFjdHVhbGx5IGNyb3NzLWNvbXBpbGUgZm9yIGFybTMyIGluIHVuaWtyYWZ0IGVjb3N5c3Rl
bT8KPiAKPiBPbiBNb24sIEFwciAzMCwgMjAxOCBhdCAxMjoyNSBQTSwgQWpheSBHYXJnIDxhamF5
Z2FyZ25zaXRAZ21haWwuY29tIAo+IDxtYWlsdG86YWpheWdhcmduc2l0QGdtYWlsLmNvbT4+IHdy
b3RlOgo+IAo+ICAgICBIaSBTaW1vbi4KPiAKPiAKPiAKPiAKPiAgICAgICAgIFJpZ2h0IG5vdywg
eW91IGNhbiB0ZXN0IFVuaWtyYWZ0IHdpdGggWGVuIG9uIGFybTMyLiBCZSBhd2FyZQo+ICAgICAg
ICAgdGhhdCB0aGVyZSBpcyBhIG9wZW4gYnVnIG9uIHRoZSBtZW1vcnkgYWxsb2NhdG9yIGZvciBh
cm0KPiAgICAgICAgIChzZWU6aHR0cHM6Ly93aWtpLnhlbnByb2plY3Qub3JnL3dpa2kvQ2F0ZWdv
cnk6VW5pa3JhZnRfVXNlcnMKPiAgICAgICAgIDxodHRwczovL3dpa2kueGVucHJvamVjdC5vcmcv
d2lraS9DYXRlZ29yeTpVbmlrcmFmdF9Vc2Vycz4pLgo+ICAgICAgICAgYXJtNjQgd2l0aCBYZW4g
aXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgYnV0IHdlIHdvcmtpbmcgb24gaXQuCj4gICAgICAg
ICBTYW1lIGZvciBLVk0gYW5kIGJhcmVtZXRhbC4KPiAKPiAgICAgICAgIFdlIHVzZSBjdWJpZWJv
YXJkMi8zIGZvciBhcm0zMiB0ZXN0cy4gVGhlc2UgYm9hcmRzIGFyZSBldmVuCj4gICAgICAgICBv
ZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBEZWJpYW4gYW5kIGNhbiBydW4gWGVuLgo+IAo+IAo+IAo+
ICAgICBTbyB3ZSBib3VnaHQgYSBjdWJpZWJvYXJkMiA6KQo+IAo+ICAgICBCcm91Z2h0IHRoZSBi
b2FyZCB1cCB3aXRob3V0IHhlbi4KPiAgICAgVGhlbiBicm91Z2h0IHRoZSBib2FyZCB1cCB3aXRo
IHhlbi4KPiAKPiAgICAgQXQgdGhpcyBwb2ludCwgInN1ZG8geGwgbGlzdCIgbGlzdHMgIkRvbWFp
bi0wIiBmaW5lLgo+IAo+IAo+ICAgICBOb3csIHdlIGFyZSB3YW50aW5nIHRvIHJ1biB0aGUgaGVs
bG93b3JsZC11bmlrcmFmdC11bmlrZXJuZWwuCj4gCj4gICAgIFRvIGtlZXAgYXNpZGUgYW55IGNy
b3NzLWNvbXBpbGF0aW9uIGlzc3Vlcywgd2UgYXJlIGNvbXBpbGluZyBvbgo+ICAgICBjdWJpZWJv
YXJkMiBpdHNlbGYuCj4gICAgIEZvbGxvd2luZyBpcyB0aGUgLmNvbmZpZyBmaWxlIChtYWpvcmx5
IGNvbnRhaW5pbmcgdGhlICJ1a2RlYnVnIiBhbmQKPiAgICAgInVrYm9vdCIgY2hhbmdlc8KgIHJl
cXVpcmVkIGZvciBhcm0zMikgOgo+IAo+ICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPiAg
ICAgIwo+ICAgICAjIEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZpbGU7IERPIE5PVCBFRElULgo+
ICAgICAjIFVuaWtyYWZ0LzAuMn44Yjk0NjQwIENvbmZpZ3VyYXRpb24KPiAgICAgIwo+IAo+ICAg
ICAjCj4gICAgICMgQXJjaGl0ZWN0dXJlIFNlbGVjdGlvbgo+ICAgICAjCj4gICAgICMgQVJDSF9Y
ODZfNjQgaXMgbm90IHNldAo+ICAgICBBUkNIX0FSTV8zMj15Cj4gICAgICMgTUFSQ0hfQ09SVEVY
QTcgaXMgbm90IHNldAo+ICAgICBNQVJDSF9BMjBORU9OPXkKPiAKPiAgICAgIwo+ICAgICAjIFBs
YXRmb3JtIFN1cHBvcnQKPiAgICAgIwo+ICAgICBQTEFUX1hFTj15Cj4gICAgIFhFTl9EQkdFTUVS
R0VOQ1k9eQo+ICAgICBQTEFUX0xJTlVYVT15Cj4gICAgIExJTlVYVV9ERUZBVUxUX0hFQVBNQj00
Cj4gCj4gICAgICMKPiAgICAgIyBMaWJyYXJ5IENvbmZpZ3VyYXRpb24KPiAgICAgIwo+ICAgICBI
QVZFX0JPT1RFTlRSWT15Cj4gICAgICMgSEFWRV9MSUJDIGlzIG5vdCBzZXQKPiAgICAgIyBIQVZF
X1NDSEVEIGlzIG5vdCBzZXQKPiAgICAgTElCVUtCT09UPXkKPiAgICAgTElCVUtCT09UX0JBTk5F
Uj15Cj4gICAgIExJQlVLQk9PVF9NQVhOQkFSR1M9NjAKPiAgICAgIyBMSUJVS0JPT1RfSU5JVEFM
TE9DIGlzIG5vdCBzZXQKPiAgICAgTElCVUtERUJVRz15Cj4gICAgIExJQlVLREVCVUdfUFJJTlRL
PXkKPiAgICAgTElCVUtERUJVR19QUklOVEQ9eQo+ICAgICAjIExJQlVLREVCVUdfUFJJTlREX0VY
VFJBIGlzIG5vdCBzZXQKPiAgICAgIyBMSUJVS0RFQlVHX1BSSU5URF9JTkZPIGlzIG5vdCBzZXQK
PiAgICAgIyBMSUJVS0RFQlVHX1BSSU5URF9XQVJOIGlzIG5vdCBzZXQKPiAgICAgTElCVUtERUJV
R19QUklOVERfRVJSPXkKPiAgICAgIyBMSUJVS0RFQlVHX1BSSU5URF9DUklUIGlzIG5vdCBzZXQK
PiAgICAgIyBMSUJVS0RFQlVHX05PUkVESVIgaXMgbm90IHNldAo+ICAgICAjIExJQlVLREVCVUdf
UkVESVJfUFJJTlREIGlzIG5vdCBzZXQKPiAgICAgTElCVUtERUJVR19SRURJUl9QUklOVEs9eQo+
ICAgICBMSUJVS0RFQlVHX0VOQUJMRV9BU1NFUlQ9eQo+ICAgICBMSUJVS0FSR1BBUlNFPXkKPiAg
ICAgTElCTk9MSUJDPXkKPiAgICAgTElCVUtBTExPQz15Cj4gICAgICMgTElCVUtBTExPQ19JRlBB
R0VTIGlzIG5vdCBzZXQKPiAgICAgIyBMSUJVS0FMTE9DX0lGU1RBVFMgaXMgbm90IHNldAo+ICAg
ICAjIExJQlVLQUxMT0NCQlVERFkgaXMgbm90IHNldAo+ICAgICAjIExJQlVLU0NIRUQgaXMgbm90
IHNldAo+ICAgICAjIExJQlVLU0NIRURDT09QIGlzIG5vdCBzZXQKPiAgICAgTElCRkRUPXkKPiAK
PiAgICAgIwo+ICAgICAjIEJ1aWxkIE9wdGlvbnMKPiAgICAgIwo+ICAgICAjIE9QVElNSVpFX05P
TkUgaXMgbm90IHNldAo+ICAgICBPUFRJTUlaRV9QRVJGPXkKPiAgICAgIyBPUFRJTUlaRV9TSVpF
IGlzIG5vdCBzZXQKPiAgICAgIyBPUFRJTUlaRV9ERUFERUxJTSBpcyBub3Qgc2V0Cj4gICAgICMg
REVCVUdfU1lNQk9MUyBpcyBub3Qgc2V0Cj4gICAgIE9QVElNSVpFX1NUUklQPXkKPiAgICAgIyBS
RUNPUkRfQlVJTERUSU1FIGlzIG5vdCBzZXQKPiAgICAgQ1JPU1NfQ09NUElMRT0iIgo+IAo+ICAg
ICAjCj4gICAgICMgQXBwbGljYXRpb24gT3B0aW9ucwo+ICAgICAjCj4gICAgIEFQUEhFTExPV09S
TERfREVQRU5ERU5DSUVTPXkKPiAgICAgQVBQSEVMTE9XT1JMRF9QUklOVEFSR1M9eQo+ICAgICBV
S19OQU1FPSJoZWxsb3dvcmxkIgo+ICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPiAKPiAK
PiAgICAgSG93ZXZlciwgdXBvbiBjb21waWxhdGlvbiwgZm9sbG93aW5nIGlzIG9ic2VydmVkIDoK
PiAKPiAgICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCj4gICAgIGRlYmlhbkBkZWJpYW4tYXJt
aGY6fi91bmlrcmFmdC9hcHBzL2hlbGxvd29ybGQkIG1ha2UKPiAgICAgbWFrZVsxXTogRW50ZXJp
bmcgZGlyZWN0b3J5ICcvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQnCj4gICAgICDCoCBD
UMKgwqDCoMKgwqAgY29uZmlnCj4gICAgICDCoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogaHlw
ZXJ2aXNvci5vCj4gICAgIGNjMTogZXJyb3I6IGJhZCB2YWx1ZSAoY29ydGV4LWE3KSBmb3IgLW1j
cHUgc3dpdGNoCj4gICAgIGNjMTogZXJyb3I6IGJhZCB2YWx1ZSAoY29ydGV4LWE3KSBmb3IgLW10
dW5lIHN3aXRjaAo+ICAgICAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvc3VwcG9ydC9i
dWlsZC9NYWtlZmlsZS5idWlsZDo0ODoKPiAgICAgcmVjaXBlIGZvciB0YXJnZXQKPiAgICAgJy9o
b21lL2RlYmlhbi91bmlrcmFmdC9hcHBzL2hlbGxvd29ybGQvYnVpbGQvbGlieGVucGxhdC9oeXBl
cnZpc29yLm8nIGZhaWxlZAo+ICAgICBtYWtlWzFdOiAqKioKPiAgICAgWy9ob21lL2RlYmlhbi91
bmlrcmFmdC9hcHBzL2hlbGxvd29ybGQvYnVpbGQvbGlieGVucGxhdC9oeXBlcnZpc29yLm9dIEVy
cm9yCj4gICAgIDEKPiAgICAgbWFrZVsxXTogTGVhdmluZyBkaXJlY3RvcnkgJy9ob21lL2RlYmlh
bi91bmlrcmFmdC91bmlrcmFmdCcKPiAgICAgTWFrZWZpbGU6NjogcmVjaXBlIGZvciB0YXJnZXQg
J2FsbCcgZmFpbGVkCj4gICAgIG1ha2U6ICoqKiBbYWxsXSBFcnJvciAyCj4gICAgIGRlYmlhbkBk
ZWJpYW4tYXJtaGY6fi91bmlrcmFmdC9hcHBzL2hlbGxvd29ybGQkCj4gICAgICMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIwo+IAo+IAo+IAo+ICAgICBTbywgd2UgcHJvY2VlZCB0byByZW1vdmUgdGhl
IC1tdHVuZT1jb3J0ZXgtYTcgYW5kIC1tY3B1PWNvcnRleC1hNwo+ICAgICBmbGFncyBmcm9tIHVu
aWtyYWZ0L3VuaWtyYWZ0L2FyY2gvYXJtL01ha2VmaWxlLnVrLgo+ICAgICBUaGVyZWFmdGVyLCB1
cG9uIHJlY29tcGlsaW5nLCB3ZSBnZXQKPiAKPiAgICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
Cj4gICAgIGRlYmlhbkBkZWJpYW4tYXJtaGY6fi91bmlrcmFmdC9hcHBzL2hlbGxvd29ybGQkIG1h
a2UKPiAgICAgbWFrZVsxXTogRW50ZXJpbmcgZGlyZWN0b3J5ICcvaG9tZS9kZWJpYW4vdW5pa3Jh
ZnQvdW5pa3JhZnQnCj4gICAgICDCoCBDUMKgwqDCoMKgwqAgY29uZmlnCj4gICAgICDCoCBDQ8Kg
wqDCoMKgwqAgbGlieGVucGxhdDogaHlwZXJ2aXNvci5vCj4gICAgIEluIGZpbGUgaW5jbHVkZWQg
ZnJvbQo+ICAgICAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvcGxhdC94ZW4vaHlwZXJ2
aXNvci5jOjQzOjA6Cj4gICAgIC9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRl
L3VrL2FyY2gvYXRvbWljLmg6IEluIGZ1bmN0aW9uCj4gICAgIOKAmHVrYXJjaF90ZXN0X2FuZF9j
bHJfYml04oCZOgo+ICAgICAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvaW5jbHVkZS91
ay9hcmNoL2F0b21pYy5oOjkwOjI6Cj4gICAgIHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9u
IG9mIGZ1bmN0aW9uIOKAmF9fYXRvbWljX2ZldGNoX2FuZOKAmQo+ICAgICBbLVdpbXBsaWNpdC1m
dW5jdGlvbi1kZWNsYXJhdGlvbl0KPiAgICAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0
L2luY2x1ZGUvdWsvYXJjaC9hdG9taWMuaDo5MDo0MDoKPiAgICAgZXJyb3I6IOKAmF9fQVRPTUlD
X1JFTEFYRUTigJkgdW5kZWNsYXJlZCAoZmlyc3QgdXNlIGluIHRoaXMgZnVuY3Rpb24pCj4gICAg
IC9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6
OTA6NDA6IG5vdGU6Cj4gICAgIGVhY2ggdW5kZWNsYXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVk
IG9ubHkgb25jZSBmb3IgZWFjaCBmdW5jdGlvbgo+ICAgICBpdCBhcHBlYXJzIGluCj4gICAgIC9o
b21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6IElu
IGZ1bmN0aW9uCj4gICAgIOKAmHVrYXJjaF90ZXN0X2FuZF9zZXRfYml04oCZOgo+ICAgICAvaG9t
ZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oOjEwNToy
Ogo+ICAgICB3YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhfX2F0
b21pY19mZXRjaF9vcuKAmQo+ICAgICBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0K
PiAgICAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0L2luY2x1ZGUvdWsvYXJjaC9hdG9t
aWMuaDoxMDU6Mzg6Cj4gICAgIGVycm9yOiDigJhfX0FUT01JQ19SRUxBWEVE4oCZIHVuZGVjbGFy
ZWQgKGZpcnN0IHVzZSBpbiB0aGlzIGZ1bmN0aW9uKQo+ICAgICAvaG9tZS9kZWJpYW4vdW5pa3Jh
ZnQvdW5pa3JhZnQvaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oOiBJbiBmdW5jdGlvbgo+ICAgICDi
gJh1a2FyY2hfdGVzdF9hbmRfY2xyX2JpdF9zeW5j4oCZOgo+ICAgICAvaG9tZS9kZWJpYW4vdW5p
a3JhZnQvdW5pa3JhZnQvaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oOjE0ODo0MDoKPiAgICAgZXJy
b3I6IOKAmF9fQVRPTUlDX1NFUV9DU1TigJkgdW5kZWNsYXJlZCAoZmlyc3QgdXNlIGluIHRoaXMg
ZnVuY3Rpb24pCj4gICAgIC9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRlL3Vr
L2FyY2gvYXRvbWljLmg6IEluIGZ1bmN0aW9uCj4gICAgIOKAmHVrYXJjaF90ZXN0X2FuZF9zZXRf
Yml0X3N5bmPigJk6Cj4gICAgIC9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRl
L3VrL2FyY2gvYXRvbWljLmg6MTYxOjM4Ogo+ICAgICBlcnJvcjog4oCYX19BVE9NSUNfU0VRX0NT
VOKAmSB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4gdGhpcyBmdW5jdGlvbikKPiAgICAgL2hvbWUv
ZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0L3BsYXQveGVuL2h5cGVydmlzb3IuYzogSW4gZnVuY3Rp
b24KPiAgICAg4oCYZG9faHlwZXJ2aXNvcl9jYWxsYmFja+KAmToKPiAgICAgL2hvbWUvZGViaWFu
L3VuaWtyYWZ0L3VuaWtyYWZ0L3BsYXQveGVuL2h5cGVydmlzb3IuYzo3MToyOiB3YXJuaW5nOgo+
ICAgICBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhfX2F0b21pY19leGNoYW5n
ZV9u4oCZCj4gICAgIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQo+ICAgICAvaG9t
ZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvcGxhdC94ZW4vaHlwZXJ2aXNvci5jOjcxOjc6IGVy
cm9yOgo+ICAgICDigJhfX0FUT01JQ19TRVFfQ1NU4oCZIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBp
biB0aGlzIGZ1bmN0aW9uKQo+ICAgICAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvc3Vw
cG9ydC9idWlsZC9NYWtlZmlsZS5idWlsZDo0ODoKPiAgICAgcmVjaXBlIGZvciB0YXJnZXQKPiAg
ICAgJy9ob21lL2RlYmlhbi91bmlrcmFmdC9hcHBzL2hlbGxvd29ybGQvYnVpbGQvbGlieGVucGxh
dC9oeXBlcnZpc29yLm8nIGZhaWxlZAo+ICAgICBtYWtlWzFdOiAqKioKPiAgICAgWy9ob21lL2Rl
Ymlhbi91bmlrcmFmdC9hcHBzL2hlbGxvd29ybGQvYnVpbGQvbGlieGVucGxhdC9oeXBlcnZpc29y
Lm9dIEVycm9yCj4gICAgIDEKPiAgICAgbWFrZVsxXTogTGVhdmluZyBkaXJlY3RvcnkgJy9ob21l
L2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdCcKPiAgICAgTWFrZWZpbGU6NjogcmVjaXBlIGZvciB0
YXJnZXQgJ2FsbCcgZmFpbGVkCj4gICAgIG1ha2U6ICoqKiBbYWxsXSBFcnJvciAyCj4gICAgICMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo+IAo+IAo+ICAgICBXaGF0IGFyZSB3ZSBtaXNzaW5nPwo+
IAo+IAo+ICAgICBUaGFua3MgYW5kIFJlZ2FyZHMsCj4gICAgIEFqYXkKPiAKPiAKPiAgICAgICAg
ICAgICBUaGFua3MgYW5kIFJlZ2FyZHMsCj4gICAgICAgICAgICAgQWpheQo+IAo+IAo+IAo+ICAg
ICAgICAgVGhhbmtzLAo+IAo+ICAgICAgICAgU2ltb24KPiAKPiAKPiAKPiAKPiAgICAgLS0gCj4g
ICAgIFJlZ2FyZHMsCj4gICAgIEFqYXkKPiAKPiAKPiAKPiAKPiAtLSAKPiBSZWdhcmRzLAo+IEFq
YXkKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlv
cy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0
dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 09:26:19 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 09:26:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD54c-0000S1-Ta; Mon, 30 Apr 2018 09:26:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=6+tk=ht=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fD54c-0000Rw-IB
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 09:26:18 +0000
X-Inumbo-ID: e507b54b-4c58-11e8-8249-2fda3a446a53
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id e507b54b-4c58-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 09:28:52 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 3E9781041FB;
 Mon, 30 Apr 2018 11:26:16 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id k-H5I6tsl4SR; Mon, 30 Apr 2018 11:26:16 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 0F78B1040F3;
 Mon, 30 Apr 2018 11:26:12 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 30 Apr
 2018 11:26:11 +0200
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
To: Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
 <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
 <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
 <CAHP4M8WxD0KKGzwMBVQpge9k88BL-Zo1_0nsML0bV9_3uLb_zg@mail.gmail.com>
 <b9a24604-91fe-1218-6053-8ba18c32556c@neclab.eu>
 <CAHP4M8XPgk6+4Jrdv+L_tgKhKaj9BXNK-678sWpQ7vrRoyLpyQ@mail.gmail.com>
 <CAHP4M8XOvJrn2QKkFY4FZ-=Vm9GjEtsgqEwvbYzq0LEYnu14GQ@mail.gmail.com>
 <aed6f483-9b00-d3a1-3b8f-52c38a89eff4@neclab.eu>
Message-ID: <7750bbed-442a-0511-95be-967fdf83b75a@neclab.eu>
Date: Mon, 30 Apr 2018 11:26:11 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <aed6f483-9b00-d3a1-3b8f-52c38a89eff4@neclab.eu>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gMzAuMDQuMjAxOCAxMToyNCwgU2ltb24gS3VlbnplciB3cm90ZToKPiBIYXkgQWpheSwKPiAK
PiB5b3UgY2FuIGFjdHVhbGx5IGRvIGJvdGggLSBuYXRpdmVseSBjb21waWxlIG9uIEFSTSBvciBk
b2luZyBhIGNyb3NzIAo+IGNvbXBpbGF0aW9uLiBVbmlrcmFmdCdzIG1haW4gbWFrZWZpbGUgaXMg
YWJsZSB0byBkZXRlY3QgdGhpcy4gVGhpcyAKPiBoYXBwZW5zIHRyYW5zcGFyZW50bHkuIFlvdSBj
YW4gb25seSBpbmZsdWVuY2UgaXQgYnkgc2V0dGluZyB0aGUgCj4gQ1JPU1NfQ09NUElMRSBlbnZp
cm9ubWVudCB2YXJpYWJsZSBiZWZvcmUgY2FsbGluZyBtYWtlLiBZb3Ugc2hvdWxkIG5lZWQgCj4g
dG8gcmVtb3ZlIHRoZSAtbXR1bmU9Y29ydGV4LWE3IGFuZCAtbWNwdT1jb3J0ZXgtYTcgZmxhZ3Mg
ZnJvbSAKPiB1bmlrcmFmdC91bmlrcmFmdC9hcmNoL2FybS9NYWtlZmlsZS51ay4KClNvcnJ5LCBh
ICJubyIgd2FzIG1pc3NpbmcgaGVyZTogS2VlcCB0aGUgLW10dW5lPWNvcnRleC1hNyBhbmQgCi1t
Y3B1PWNvcnRleC1hNyBmbGFncy4KCj4gSW4gZmFjdCwgeW91ciBHQ0MgdmVyc2lvbiBtaWdodCBi
ZSB0b28gb2xkLiBVbmZvcnR1bmF0ZWx5IFVuaWtyYWZ0IGlzIAo+IG5vdCB3YXJuaW5nIHlvdSB5
ZXQgYnV0IEFSTSBwdWJsaXNoZWQgYSBwYXRjaCBzZXJpZXMgdGhhdCBpcyBnb2luZyB0byAKPiB3
YXJuIHlvdSBpbiB0aGUgZnV0dXJlLgo+IAo+IE9uIEFSTSwgSSBqdXN0IHRlc3RlZCB0aGUgbmF0
aXZlIGNvbXBpbGUgd2l0aAo+IGdjYyAoRGViaWFuIDYuMy4wLTE4KSA2LjMuMCAyMDE3MDUxNgo+
IAo+IEkgdXNlIHRoZSBzYW1lIGZvciB0aGUgY3Jvc3MgY29tcGlsYXRpb24gZnJvbSB4ODY6Cj4g
YXJtLWxpbnV4LWdudWVhYmloZi1nY2MgKERlYmlhbiA2LjMuMC0xOCkgNi4zLjAgMjAxNzA1MTYK
PiAKPiBGb3IgZGVidWdnaW5nLCB5b3UgY2FuIGhhdmUgYSBsb29rIHdoYXQgaXMgZ2V0dGluZyBj
YWxsZWQgd2l0aCB0aGUgCj4gdmVyYm9zZSBvcHRpb246Cj4gbWFrZSBWPTEKPiAKPiAKPiBUaGFu
a3MsCj4gCj4gU2ltb24KPiAKPiBPbiAzMC4wNC4yMDE4IDEwOjI3LCBBamF5IEdhcmcgd3JvdGU6
Cj4+IGh0dHBzOi8vZ2l0aHViLmNvbS9uaW0tbGFuZy9OaW0vaXNzdWVzLzI2MjAgc3VnZ2VzdHMg
aXQgbWlnaHQgYmUgZHVlIAo+PiB0byAob2xkKSBnY2MgdmVyc2lvbi4KPj4KPj4gQW55IGNoYW5j
ZSB3ZSBjYW4gZ2V0IHRoZSBmb2xsb3dpbmcgdmlhIGNyb3NzLWNvbXBpbGF0aW9uIDoKPj4KPj4g
wqDCoMKgwqDCoMKgwqDCoMKgwqAgKiBhcm0tb3B0aW9ucyBpbiBtZW51Y29uZmlnIHNjcmVlbj8K
Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqAgKiBhY3R1YWxseSBjcm9zcy1jb21waWxlIGZvciBhcm0z
MiBpbiB1bmlrcmFmdCBlY29zeXN0ZW0/Cj4+Cj4+IE9uIE1vbiwgQXByIDMwLCAyMDE4IGF0IDEy
OjI1IFBNLCBBamF5IEdhcmcgPGFqYXlnYXJnbnNpdEBnbWFpbC5jb20gCj4+IDxtYWlsdG86YWph
eWdhcmduc2l0QGdtYWlsLmNvbT4+IHdyb3RlOgo+Pgo+PiDCoMKgwqAgSGkgU2ltb24uCj4+Cj4+
Cj4+Cj4+Cj4+IMKgwqDCoMKgwqDCoMKgIFJpZ2h0IG5vdywgeW91IGNhbiB0ZXN0IFVuaWtyYWZ0
IHdpdGggWGVuIG9uIGFybTMyLiBCZSBhd2FyZQo+PiDCoMKgwqDCoMKgwqDCoCB0aGF0IHRoZXJl
IGlzIGEgb3BlbiBidWcgb24gdGhlIG1lbW9yeSBhbGxvY2F0b3IgZm9yIGFybQo+PiDCoMKgwqDC
oMKgwqDCoCAoc2VlOmh0dHBzOi8vd2lraS54ZW5wcm9qZWN0Lm9yZy93aWtpL0NhdGVnb3J5OlVu
aWtyYWZ0X1VzZXJzCj4+IMKgwqDCoMKgwqDCoMKgIDxodHRwczovL3dpa2kueGVucHJvamVjdC5v
cmcvd2lraS9DYXRlZ29yeTpVbmlrcmFmdF9Vc2Vycz4pLgo+PiDCoMKgwqDCoMKgwqDCoCBhcm02
NCB3aXRoIFhlbiBpcyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZCBidXQgd2Ugd29ya2luZyBvbiBp
dC4KPj4gwqDCoMKgwqDCoMKgwqAgU2FtZSBmb3IgS1ZNIGFuZCBiYXJlbWV0YWwuCj4+Cj4+IMKg
wqDCoMKgwqDCoMKgIFdlIHVzZSBjdWJpZWJvYXJkMi8zIGZvciBhcm0zMiB0ZXN0cy4gVGhlc2Ug
Ym9hcmRzIGFyZSBldmVuCj4+IMKgwqDCoMKgwqDCoMKgIG9mZmljaWFsbHkgc3VwcG9ydGVkIGJ5
IERlYmlhbiBhbmQgY2FuIHJ1biBYZW4uCj4+Cj4+Cj4+Cj4+IMKgwqDCoCBTbyB3ZSBib3VnaHQg
YSBjdWJpZWJvYXJkMiA6KQo+Pgo+PiDCoMKgwqAgQnJvdWdodCB0aGUgYm9hcmQgdXAgd2l0aG91
dCB4ZW4uCj4+IMKgwqDCoCBUaGVuIGJyb3VnaHQgdGhlIGJvYXJkIHVwIHdpdGggeGVuLgo+Pgo+
PiDCoMKgwqAgQXQgdGhpcyBwb2ludCwgInN1ZG8geGwgbGlzdCIgbGlzdHMgIkRvbWFpbi0wIiBm
aW5lLgo+Pgo+Pgo+PiDCoMKgwqAgTm93LCB3ZSBhcmUgd2FudGluZyB0byBydW4gdGhlIGhlbGxv
d29ybGQtdW5pa3JhZnQtdW5pa2VybmVsLgo+Pgo+PiDCoMKgwqAgVG8ga2VlcCBhc2lkZSBhbnkg
Y3Jvc3MtY29tcGlsYXRpb24gaXNzdWVzLCB3ZSBhcmUgY29tcGlsaW5nIG9uCj4+IMKgwqDCoCBj
dWJpZWJvYXJkMiBpdHNlbGYuCj4+IMKgwqDCoCBGb2xsb3dpbmcgaXMgdGhlIC5jb25maWcgZmls
ZSAobWFqb3JseSBjb250YWluaW5nIHRoZSAidWtkZWJ1ZyIgYW5kCj4+IMKgwqDCoCAidWtib290
IiBjaGFuZ2VzwqAgcmVxdWlyZWQgZm9yIGFybTMyKSA6Cj4+Cj4+ICAgICAKPj4gIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIAo+Pgo+PiDCoMKgwqAgIwo+PiDCoMKgwqAgIyBBdXRvbWF0aWNhbGx5
IGdlbmVyYXRlZCBmaWxlOyBETyBOT1QgRURJVC4KPj4gwqDCoMKgICMgVW5pa3JhZnQvMC4yfjhi
OTQ2NDAgQ29uZmlndXJhdGlvbgo+PiDCoMKgwqAgIwo+Pgo+PiDCoMKgwqAgIwo+PiDCoMKgwqAg
IyBBcmNoaXRlY3R1cmUgU2VsZWN0aW9uCj4+IMKgwqDCoCAjCj4+IMKgwqDCoCAjIEFSQ0hfWDg2
XzY0IGlzIG5vdCBzZXQKPj4gwqDCoMKgIEFSQ0hfQVJNXzMyPXkKPj4gwqDCoMKgICMgTUFSQ0hf
Q09SVEVYQTcgaXMgbm90IHNldAo+PiDCoMKgwqAgTUFSQ0hfQTIwTkVPTj15Cj4+Cj4+IMKgwqDC
oCAjCj4+IMKgwqDCoCAjIFBsYXRmb3JtIFN1cHBvcnQKPj4gwqDCoMKgICMKPj4gwqDCoMKgIFBM
QVRfWEVOPXkKPj4gwqDCoMKgIFhFTl9EQkdFTUVSR0VOQ1k9eQo+PiDCoMKgwqAgUExBVF9MSU5V
WFU9eQo+PiDCoMKgwqAgTElOVVhVX0RFRkFVTFRfSEVBUE1CPTQKPj4KPj4gwqDCoMKgICMKPj4g
wqDCoMKgICMgTGlicmFyeSBDb25maWd1cmF0aW9uCj4+IMKgwqDCoCAjCj4+IMKgwqDCoCBIQVZF
X0JPT1RFTlRSWT15Cj4+IMKgwqDCoCAjIEhBVkVfTElCQyBpcyBub3Qgc2V0Cj4+IMKgwqDCoCAj
IEhBVkVfU0NIRUQgaXMgbm90IHNldAo+PiDCoMKgwqAgTElCVUtCT09UPXkKPj4gwqDCoMKgIExJ
QlVLQk9PVF9CQU5ORVI9eQo+PiDCoMKgwqAgTElCVUtCT09UX01BWE5CQVJHUz02MAo+PiDCoMKg
wqAgIyBMSUJVS0JPT1RfSU5JVEFMTE9DIGlzIG5vdCBzZXQKPj4gwqDCoMKgIExJQlVLREVCVUc9
eQo+PiDCoMKgwqAgTElCVUtERUJVR19QUklOVEs9eQo+PiDCoMKgwqAgTElCVUtERUJVR19QUklO
VEQ9eQo+PiDCoMKgwqAgIyBMSUJVS0RFQlVHX1BSSU5URF9FWFRSQSBpcyBub3Qgc2V0Cj4+IMKg
wqDCoCAjIExJQlVLREVCVUdfUFJJTlREX0lORk8gaXMgbm90IHNldAo+PiDCoMKgwqAgIyBMSUJV
S0RFQlVHX1BSSU5URF9XQVJOIGlzIG5vdCBzZXQKPj4gwqDCoMKgIExJQlVLREVCVUdfUFJJTlRE
X0VSUj15Cj4+IMKgwqDCoCAjIExJQlVLREVCVUdfUFJJTlREX0NSSVQgaXMgbm90IHNldAo+PiDC
oMKgwqAgIyBMSUJVS0RFQlVHX05PUkVESVIgaXMgbm90IHNldAo+PiDCoMKgwqAgIyBMSUJVS0RF
QlVHX1JFRElSX1BSSU5URCBpcyBub3Qgc2V0Cj4+IMKgwqDCoCBMSUJVS0RFQlVHX1JFRElSX1BS
SU5USz15Cj4+IMKgwqDCoCBMSUJVS0RFQlVHX0VOQUJMRV9BU1NFUlQ9eQo+PiDCoMKgwqAgTElC
VUtBUkdQQVJTRT15Cj4+IMKgwqDCoCBMSUJOT0xJQkM9eQo+PiDCoMKgwqAgTElCVUtBTExPQz15
Cj4+IMKgwqDCoCAjIExJQlVLQUxMT0NfSUZQQUdFUyBpcyBub3Qgc2V0Cj4+IMKgwqDCoCAjIExJ
QlVLQUxMT0NfSUZTVEFUUyBpcyBub3Qgc2V0Cj4+IMKgwqDCoCAjIExJQlVLQUxMT0NCQlVERFkg
aXMgbm90IHNldAo+PiDCoMKgwqAgIyBMSUJVS1NDSEVEIGlzIG5vdCBzZXQKPj4gwqDCoMKgICMg
TElCVUtTQ0hFRENPT1AgaXMgbm90IHNldAo+PiDCoMKgwqAgTElCRkRUPXkKPj4KPj4gwqDCoMKg
ICMKPj4gwqDCoMKgICMgQnVpbGQgT3B0aW9ucwo+PiDCoMKgwqAgIwo+PiDCoMKgwqAgIyBPUFRJ
TUlaRV9OT05FIGlzIG5vdCBzZXQKPj4gwqDCoMKgIE9QVElNSVpFX1BFUkY9eQo+PiDCoMKgwqAg
IyBPUFRJTUlaRV9TSVpFIGlzIG5vdCBzZXQKPj4gwqDCoMKgICMgT1BUSU1JWkVfREVBREVMSU0g
aXMgbm90IHNldAo+PiDCoMKgwqAgIyBERUJVR19TWU1CT0xTIGlzIG5vdCBzZXQKPj4gwqDCoMKg
IE9QVElNSVpFX1NUUklQPXkKPj4gwqDCoMKgICMgUkVDT1JEX0JVSUxEVElNRSBpcyBub3Qgc2V0
Cj4+IMKgwqDCoCBDUk9TU19DT01QSUxFPSIiCj4+Cj4+IMKgwqDCoCAjCj4+IMKgwqDCoCAjIEFw
cGxpY2F0aW9uIE9wdGlvbnMKPj4gwqDCoMKgICMKPj4gwqDCoMKgIEFQUEhFTExPV09STERfREVQ
RU5ERU5DSUVTPXkKPj4gwqDCoMKgIEFQUEhFTExPV09STERfUFJJTlRBUkdTPXkKPj4gwqDCoMKg
IFVLX05BTUU9ImhlbGxvd29ybGQiCj4+ICAgICAKPj4gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IAo+Pgo+Pgo+Pgo+PiDCoMKgwqAgSG93ZXZlciwgdXBvbiBjb21waWxhdGlvbiwgZm9sbG93aW5n
IGlzIG9ic2VydmVkIDoKPj4KPj4gICAgIAo+PiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgCj4+
Cj4+IMKgwqDCoCBkZWJpYW5AZGViaWFuLWFybWhmOn4vdW5pa3JhZnQvYXBwcy9oZWxsb3dvcmxk
JCBtYWtlCj4+IMKgwqDCoCBtYWtlWzFdOiBFbnRlcmluZyBkaXJlY3RvcnkgJy9ob21lL2RlYmlh
bi91bmlrcmFmdC91bmlrcmFmdCcKPj4gwqDCoMKgwqAgwqAgQ1DCoMKgwqDCoMKgIGNvbmZpZwo+
PiDCoMKgwqDCoCDCoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogaHlwZXJ2aXNvci5vCj4+IMKg
wqDCoCBjYzE6IGVycm9yOiBiYWQgdmFsdWUgKGNvcnRleC1hNykgZm9yIC1tY3B1IHN3aXRjaAo+
PiDCoMKgwqAgY2MxOiBlcnJvcjogYmFkIHZhbHVlIChjb3J0ZXgtYTcpIGZvciAtbXR1bmUgc3dp
dGNoCj4+IMKgwqDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvc3VwcG9ydC9idWls
ZC9NYWtlZmlsZS5idWlsZDo0ODoKPj4gwqDCoMKgIHJlY2lwZSBmb3IgdGFyZ2V0Cj4+ICAgICAK
Pj4gJy9ob21lL2RlYmlhbi91bmlrcmFmdC9hcHBzL2hlbGxvd29ybGQvYnVpbGQvbGlieGVucGxh
dC9oeXBlcnZpc29yLm8nIAo+PiBmYWlsZWQKPj4gwqDCoMKgIG1ha2VbMV06ICoqKgo+PiAgICAg
Cj4+IFsvaG9tZS9kZWJpYW4vdW5pa3JhZnQvYXBwcy9oZWxsb3dvcmxkL2J1aWxkL2xpYnhlbnBs
YXQvaHlwZXJ2aXNvci5vXSAKPj4gRXJyb3IKPj4gwqDCoMKgIDEKPj4gwqDCoMKgIG1ha2VbMV06
IExlYXZpbmcgZGlyZWN0b3J5ICcvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQnCj4+IMKg
wqDCoCBNYWtlZmlsZTo2OiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKPj4gwqDCoMKg
IG1ha2U6ICoqKiBbYWxsXSBFcnJvciAyCj4+IMKgwqDCoCBkZWJpYW5AZGViaWFuLWFybWhmOn4v
dW5pa3JhZnQvYXBwcy9oZWxsb3dvcmxkJAo+PiAgICAgCj4+ICMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyAKPj4KPj4KPj4KPj4KPj4gwqDCoMKgIFNvLCB3ZSBwcm9jZWVkIHRvIHJlbW92ZSB0aGUg
LW10dW5lPWNvcnRleC1hNyBhbmQgLW1jcHU9Y29ydGV4LWE3Cj4+IMKgwqDCoCBmbGFncyBmcm9t
IHVuaWtyYWZ0L3VuaWtyYWZ0L2FyY2gvYXJtL01ha2VmaWxlLnVrLgo+PiDCoMKgwqAgVGhlcmVh
ZnRlciwgdXBvbiByZWNvbXBpbGluZywgd2UgZ2V0Cj4+Cj4+ICAgICAKPj4gIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIAo+Pgo+PiDCoMKgwqAgZGViaWFuQGRlYmlhbi1hcm1oZjp+L3VuaWtyYWZ0
L2FwcHMvaGVsbG93b3JsZCQgbWFrZQo+PiDCoMKgwqAgbWFrZVsxXTogRW50ZXJpbmcgZGlyZWN0
b3J5ICcvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQnCj4+IMKgwqDCoMKgIMKgIENQwqDC
oMKgwqDCoCBjb25maWcKPj4gwqDCoMKgwqAgwqAgQ0PCoMKgwqDCoMKgIGxpYnhlbnBsYXQ6IGh5
cGVydmlzb3Iubwo+PiDCoMKgwqAgSW4gZmlsZSBpbmNsdWRlZCBmcm9tCj4+IMKgwqDCoCAvaG9t
ZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvcGxhdC94ZW4vaHlwZXJ2aXNvci5jOjQzOjA6Cj4+
IMKgwqDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvaW5jbHVkZS91ay9hcmNoL2F0
b21pYy5oOiBJbiBmdW5jdGlvbgo+PiDCoMKgwqAg4oCYdWthcmNoX3Rlc3RfYW5kX2Nscl9iaXTi
gJk6Cj4+IMKgwqDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvaW5jbHVkZS91ay9h
cmNoL2F0b21pYy5oOjkwOjI6Cj4+IMKgwqDCoCB3YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlv
biBvZiBmdW5jdGlvbiDigJhfX2F0b21pY19mZXRjaF9hbmTigJkKPj4gwqDCoMKgIFstV2ltcGxp
Y2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQo+PiDCoMKgwqAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0
L3VuaWtyYWZ0L2luY2x1ZGUvdWsvYXJjaC9hdG9taWMuaDo5MDo0MDoKPj4gwqDCoMKgIGVycm9y
OiDigJhfX0FUT01JQ19SRUxBWEVE4oCZIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0aGlzIGZ1
bmN0aW9uKQo+PiDCoMKgwqAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0L2luY2x1ZGUv
dWsvYXJjaC9hdG9taWMuaDo5MDo0MDogbm90ZToKPj4gwqDCoMKgIGVhY2ggdW5kZWNsYXJlZCBp
ZGVudGlmaWVyIGlzIHJlcG9ydGVkIG9ubHkgb25jZSBmb3IgZWFjaCBmdW5jdGlvbgo+PiDCoMKg
wqAgaXQgYXBwZWFycyBpbgo+PiDCoMKgwqAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0
L2luY2x1ZGUvdWsvYXJjaC9hdG9taWMuaDogSW4gZnVuY3Rpb24KPj4gwqDCoMKgIOKAmHVrYXJj
aF90ZXN0X2FuZF9zZXRfYml04oCZOgo+PiDCoMKgwqAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3Vu
aWtyYWZ0L2luY2x1ZGUvdWsvYXJjaC9hdG9taWMuaDoxMDU6MjoKPj4gwqDCoMKgIHdhcm5pbmc6
IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmF9fYXRvbWljX2ZldGNoX29y4oCZ
Cj4+IMKgwqDCoCBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KPj4gwqDCoMKgIC9o
b21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6MTA1
OjM4Ogo+PiDCoMKgwqAgZXJyb3I6IOKAmF9fQVRPTUlDX1JFTEFYRUTigJkgdW5kZWNsYXJlZCAo
Zmlyc3QgdXNlIGluIHRoaXMgZnVuY3Rpb24pCj4+IMKgwqDCoCAvaG9tZS9kZWJpYW4vdW5pa3Jh
ZnQvdW5pa3JhZnQvaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oOiBJbiBmdW5jdGlvbgo+PiDCoMKg
wqAg4oCYdWthcmNoX3Rlc3RfYW5kX2Nscl9iaXRfc3luY+KAmToKPj4gwqDCoMKgIC9ob21lL2Rl
Ymlhbi91bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6MTQ4OjQwOgo+
PiDCoMKgwqAgZXJyb3I6IOKAmF9fQVRPTUlDX1NFUV9DU1TigJkgdW5kZWNsYXJlZCAoZmlyc3Qg
dXNlIGluIHRoaXMgZnVuY3Rpb24pCj4+IMKgwqDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5p
a3JhZnQvaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oOiBJbiBmdW5jdGlvbgo+PiDCoMKgwqAg4oCY
dWthcmNoX3Rlc3RfYW5kX3NldF9iaXRfc3luY+KAmToKPj4gwqDCoMKgIC9ob21lL2RlYmlhbi91
bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6MTYxOjM4Ogo+PiDCoMKg
wqAgZXJyb3I6IOKAmF9fQVRPTUlDX1NFUV9DU1TigJkgdW5kZWNsYXJlZCAoZmlyc3QgdXNlIGlu
IHRoaXMgZnVuY3Rpb24pCj4+IMKgwqDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQv
cGxhdC94ZW4vaHlwZXJ2aXNvci5jOiBJbiBmdW5jdGlvbgo+PiDCoMKgwqAg4oCYZG9faHlwZXJ2
aXNvcl9jYWxsYmFja+KAmToKPj4gwqDCoMKgIC9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFm
dC9wbGF0L3hlbi9oeXBlcnZpc29yLmM6NzE6Mjogd2FybmluZzoKPj4gwqDCoMKgIGltcGxpY2l0
IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmF9fYXRvbWljX2V4Y2hhbmdlX27igJkKPj4gwqDC
oMKgIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQo+PiDCoMKgwqAgL2hvbWUvZGVi
aWFuL3VuaWtyYWZ0L3VuaWtyYWZ0L3BsYXQveGVuL2h5cGVydmlzb3IuYzo3MTo3OiBlcnJvcjoK
Pj4gwqDCoMKgIOKAmF9fQVRPTUlDX1NFUV9DU1TigJkgdW5kZWNsYXJlZCAoZmlyc3QgdXNlIGlu
IHRoaXMgZnVuY3Rpb24pCj4+IMKgwqDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQv
c3VwcG9ydC9idWlsZC9NYWtlZmlsZS5idWlsZDo0ODoKPj4gwqDCoMKgIHJlY2lwZSBmb3IgdGFy
Z2V0Cj4+ICAgICAKPj4gJy9ob21lL2RlYmlhbi91bmlrcmFmdC9hcHBzL2hlbGxvd29ybGQvYnVp
bGQvbGlieGVucGxhdC9oeXBlcnZpc29yLm8nIAo+PiBmYWlsZWQKPj4gwqDCoMKgIG1ha2VbMV06
ICoqKgo+PiAgICAgCj4+IFsvaG9tZS9kZWJpYW4vdW5pa3JhZnQvYXBwcy9oZWxsb3dvcmxkL2J1
aWxkL2xpYnhlbnBsYXQvaHlwZXJ2aXNvci5vXSAKPj4gRXJyb3IKPj4gwqDCoMKgIDEKPj4gwqDC
oMKgIG1ha2VbMV06IExlYXZpbmcgZGlyZWN0b3J5ICcvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5p
a3JhZnQnCj4+IMKgwqDCoCBNYWtlZmlsZTo2OiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWls
ZWQKPj4gwqDCoMKgIG1ha2U6ICoqKiBbYWxsXSBFcnJvciAyCj4+ICAgICAKPj4gIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIAo+Pgo+Pgo+Pgo+PiDCoMKgwqAgV2hhdCBhcmUgd2UgbWlzc2luZz8K
Pj4KPj4KPj4gwqDCoMKgIFRoYW5rcyBhbmQgUmVnYXJkcywKPj4gwqDCoMKgIEFqYXkKPj4KPj4K
Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBUaGFua3MgYW5kIFJlZ2FyZHMsCj4+IMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqAgQWpheQo+Pgo+Pgo+Pgo+PiDCoMKgwqDCoMKgwqDCoCBUaGFua3MsCj4+
Cj4+IMKgwqDCoMKgwqDCoMKgIFNpbW9uCj4+Cj4+Cj4+Cj4+Cj4+IMKgwqDCoCAtLSDCoMKgwqAg
UmVnYXJkcywKPj4gwqDCoMKgIEFqYXkKPj4KPj4KPj4KPj4KPj4gLS0gCj4+IFJlZ2FyZHMsCj4+
IEFqYXkKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1p
bmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3Jn
Cmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2
ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 09:33:15 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 09:33:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD5BK-00019R-TX; Mon, 30 Apr 2018 09:33:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fywh=ht=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fD5BJ-00019L-KM
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 09:33:13 +0000
X-Inumbo-ID: dca94a97-4c59-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id dca94a97-4c59-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 09:35:47 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6D1D915AB;
 Mon, 30 Apr 2018 02:33:11 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 3B8BF3F587;
 Mon, 30 Apr 2018 02:33:09 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-15-git-send-email-shijie.huang@arm.com>
 <10d8ee18-d319-9c5b-a8e4-e7bdd51015fb@arm.com>
 <20180423084522.GA30544@ubuntu.shanghai.arm.com>
 <41170f9d-f3be-df07-6b3e-972763fc537d@arm.com>
 <20180424091657.GB11102@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <e78fcaa9-6687-f48b-6a6b-9ad9c1a12b82@arm.com>
Date: Mon, 30 Apr 2018 10:33:07 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180424091657.GB11102@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 14/43] arm64: time.c: fix the wrong
 format for printk
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAyNC8wNC8xOCAxMDoxNiwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIE1vbiwgQXByIDIz
LCAyMDE4IGF0IDEyOjAzOjQ4UE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4+Pj4gICAj
aW5jbHVkZSA8bWluaS1vcy90eXBlcy5oPgo+Pj4+PiAgICNpbmNsdWRlIDxtaW5pLW9zL3RpbWUu
aD4KPj4+Pj4gICAjaW5jbHVkZSA8bWluaS1vcy9saWIuaD4KPj4+Pj4gKyNpbmNsdWRlIDxpbnR0
eXBlcy5oPgo+Pj4+Cj4+Pj4gV2hlcmUgZG9lcyB0aGUgaW5jbHVkZSAiaW50dHlwZXMuaCIgY29t
ZSBmcm9tPwo+Pj4gVGhlIFBSSVg2NCBpcyBkZWZpbmVkIGluIHRoYXQgZmlsZS4KPj4KPj4gVGhp
cyBkb2VzIG5vdCBhbnN3ZXIgbXkgcXVlc3Rpb24uIFRoYXQgaW5jbHVkZSBkb2VzIG5vdCBiZWxv
bmdzIHRvIHRoZQo+PiBtaW5pLW9zIHJlcG8uIFNvIHdoZXJlIGRvZXMgImludHR5cGVzLmgiIHdp
bGwgY29tZSBmcm9tPyBJIGFzc3VtZSB0aGF0IGl0Cj4gSSB1c2VkIHRoZSBjc2NvcGUoaW4gdmlt
KSB0byBsb2NhdGUgdGhlIFBSSVg2NCwgYW5kIGl0IGp1bXBlZCB0byB0aGUgaW50dHlwZXMuaC4K
PiAKPj4gd2lsbCBjb21lIGZyb20gdGhlIGNyb3NzLWNvbXBpbGVyIGJ1dCBJIHJlbWVtYmVyIE1p
bmlPUyBpcyBiZWVuIHF1aXRlIG1lc3N5Cj4+IHdpdGggc3RhbmRhcmQgaW5jbHVkZS4KPj4KPj4+
IE1heWJlIFdlIGNhbiB1c2UgdGhlIFBSSXBhZGRyIHdoaWNoIGlzIGRlZmluZWQgaW4gImFyY2hf
bW0uaCIuCj4+Cj4+IE5vLiBQUklwYWRkciBpcyByZWxhdGVkIHRvIGEgcGh5c2ljYWwgYWRkcmVz
cy4gVGhhdCB0eXBlIG1heSBjaGFuZ2UgaW4gdGhlCj4+IGZ1dHVyZS4KPiBva2F5LCBJIHdpbGwg
YWRkIGEgZGVmaW5lIGZvciBQUklYNjQgaW4gdGhlIG1pbmlvcyBoZWFkZXIuCgpQbGVhc2UgcmVh
ZCBteSBxdWVzdGlvbi4gSSBkaWRuJ3QgYXNrIHRvIGFkZCBQUkl4NjQgYnV0IHdhbnRlZCB0byAK
Y29uZmlybSB3aGV0aGVyIGl0IGlzIGNvbWluZyBmcm9tIHRoZSBjcm9zcy1jb21waWxlciBvciBh
bnl0aGluZyBlbHNlLi4uCgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBs
aXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnBy
b2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 09:34:05 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 09:34:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD5C9-0001BP-0j; Mon, 30 Apr 2018 09:34:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fywh=ht=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fD5C7-0001BJ-Jy
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 09:34:03 +0000
X-Inumbo-ID: fa8c6bb9-4c59-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id fa8c6bb9-4c59-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 09:36:37 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 022A315AB;
 Mon, 30 Apr 2018 02:34:02 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 03AFE3F587;
 Mon, 30 Apr 2018 02:33:59 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-22-git-send-email-shijie.huang@arm.com>
 <1ba37809-7bef-7b51-bbb3-4e021a86e4a7@arm.com>
 <eace896c-9bd3-9fc0-1e80-b268de6cea1a@arm.com>
 <20180427093952.GA4222@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <33ea3a34-0ed8-696d-14a7-fc08eaeb5fa5@arm.com>
Date: Mon, 30 Apr 2018 10:33:58 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180427093952.GA4222@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 21/43] arm64: define the
 CALLEE_SAVED_REGISTERS
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAyNy8wNC8xOCAxMDozOSwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFdlZCwgQXByIDI1
LCAyMDE4IGF0IDEwOjIzOjQzUE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4KPj4KPj4g
T24gMjUvMDQvMjAxOCAxODozMywgSnVsaWVuIEdyYWxsIHdyb3RlOgo+Pj4gSGksCj4+Cj4+IEhp
LAo+Pgo+Pj4KPj4+IE9uIDE2LzA0LzE4IDA3OjMyLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4+Pj4g
SW4gdGhlIGFybTY0LCB0aGUgY2FsbGVlLXNhdmVkIHJlZ2lzdGVycyBhcmUgeDE5IH4geDI5Lgo+
Pj4KPj4+IHMvSW4gdGhlL09uLy4KPj4+Cj4+PiBJIHRoaW5rIGl0IHdvdWxkIGJlIGdvb2QgdG8g
bWVudGlvbiB3aGVyZSB0aGF0IGNvbnZlbnRpb24gY29tZXMgZnJvbSBhcwo+Pj4gdGhpcyBpcyBu
b3QgdmVyeSBvYnZpb3VzIGZvciBub24tYXJtIGV4cGVydCA6KS4gVGhpcyBjb252ZW50aW9uIGlz
IGZyb20KPj4+IEFBUENTNjQgWzFdLgo+IG9rYXksIEkgd2lsbCBhZGQgdGhpcyBpbiB0aGUgbmV4
dCB2ZXJzaW9uLgo+Pgo+PiBBbHNvLCB5b3Ugd2FudCB0byBleHBsYWluIHdoeSB4MTkteDI5LiBB
dCBmaXJzdCB0aGlzIGlzIG5vdCBvYnZpb3VzIGJlY2F1c2UKPj4gdGhlIHRhYmxlIGNhbGwgeDI5
ICJmcCIgYW5kIHgxOS14MjggImNhbGxlZS1zYXZlZCByZWdpc3RlcnMiLiBJdCB0b29rIG1lIGEK
Pj4gYml0IHRvIGZpbmQgaW4gdGhlIHNwZWMgdGhlIGxpbmUgc2F5aW5nICJBIHN1YnJvdXRpbmUg
aW52b2NhdGlvbiBtdXN0Cj4+IHByZXNlcnZlIHRoZSBjb250ZW50cyBvZiB0aGUgcmVnaXN0ZXJz
IHIxOS1yMjkgYW5kIFNQLiIKPiAKPiBva2F5LCBJIGFkZCBtb3JlIGluZm9ybWF0aW9uIGZvciB4
MTkgfiB4Mjg/CgpJIHRoaW5rIGEgcG9pbnRlciB0byB0aGUgZG9jIHNob3VsZCBiZSBlbm91Z2gg
aGVyZS4KCkNoZWVycywKCi0tIApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9z
LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcv
bWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 09:34:34 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 09:34:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD5Cc-0001DH-4a; Mon, 30 Apr 2018 09:34:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fywh=ht=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fD5Ca-0001DC-T5
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 09:34:32 +0000
X-Inumbo-ID: 0bd92f9a-4c5a-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 0bd92f9a-4c5a-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 09:37:06 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 077B115AB;
 Mon, 30 Apr 2018 02:34:31 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 2A22C3F587;
 Mon, 30 Apr 2018 02:34:29 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-23-git-send-email-shijie.huang@arm.com>
 <58b1b6e0-9aab-0fa2-25d6-8405a7bcab22@arm.com>
 <20180428062658.GB5590@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <989ddb29-d87f-f3c4-5a45-ea12ac48efec@arm.com>
Date: Mon, 30 Apr 2018 10:34:27 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180428062658.GB5590@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 22/43] arm64: implement the
 __arch_switch_threads
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAyOC8wNC8xOCAwNzoyNiwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFRodSwgQXByIDI2
LCAyMDE4IGF0IDAxOjI5OjI0UE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4gSGkgU2hp
amllLAo+Pgo+PiBPbiAxNi8wNC8xOCAwNzozMiwgSHVhbmcgU2hpamllIHdyb3RlOgo+Pj4gVGhl
IF9fYXJjaF9zd2l0Y2hfdGhyZWFkcyBpcyB1c2VkIGZvciBzd2l0Y2hpbmcgdGhlIHRocmVhZHMu
Cj4+PiBUaGlzIHBhdGNoIGltcGxlbWVudHMgaXQuCj4+Pgo+Pj4gU2lnbmVkLW9mZi1ieTogSHVh
bmcgU2hpamllIDxzaGlqaWUuaHVhbmdAYXJtLmNvbT4KPj4+IC0tLQo+Pj4gICBhcmNoL2FybS9h
cm02NC9hcm02NC5TIHwgMzggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysK
Pj4+ICAgaW5jbHVkZS9hcm0vYXJtNjQvb3MuaCB8ICA0ICsrKysKPj4+ICAgMiBmaWxlcyBjaGFu
Z2VkLCA0MiBpbnNlcnRpb25zKCspCj4+Pgo+Pj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2FybTY0
L2FybTY0LlMgYi9hcmNoL2FybS9hcm02NC9hcm02NC5TCj4+PiBpbmRleCBmYTM0MDZmLi41ZjU1
Zjk5IDEwMDY0NAo+Pj4gLS0tIGEvYXJjaC9hcm0vYXJtNjQvYXJtNjQuUwo+Pj4gKysrIGIvYXJj
aC9hcm0vYXJtNjQvYXJtNjQuUwo+Pj4gQEAgLTEsNSArMSw2IEBACj4+PiAgICNpbmNsdWRlICJh
c20uaCIKPj4+ICAgI2luY2x1ZGUgPGFyY2hfbGltaXRzLmg+Cj4+PiArI2luY2x1ZGUgPGFybTY0
L29zLmg+Cj4+PiAgICNpbmNsdWRlIDxhcm02NC9wYWdldGFibGUuaD4KPj4+ICAgI2luY2x1ZGUg
PGFybTY0L3RyYXBzLmg+Cj4+PiAgICNpbmNsdWRlIDx4ZW4veGVuLmg+Cj4+PiBAQCAtNDM0LDMg
KzQzNSw0MCBAQCBFTlRSWSh2ZWN0b3JfdGFibGUpCj4+PiAgICAgICB2ZWN0b3JfZW50cnkgZWww
X2ZpcV9pbnZhbGlkICAgICAgICAgIC8qIEZJUSAzMi1iaXQgRUwwICAgICAgICAgKi8KPj4+ICAg
ICAgIHZlY3Rvcl9lbnRyeSBlbDBfZXJyb3JfaW52YWxpZCAgICAgICAgLyogRXJyb3IgMzItYml0
IEVMMCAgICAgICAqLwo+Pj4gICBFTkQodmVjdG9yX3RhYmxlKQo+Pj4gKwo+Pj4gKy8qCj4+PiAr
ICogPT4geDAgPSAmcHJldi0+c3AKPj4+ICsgKiAgICB4MSA9ICZuZXh0LT5zcAo+Pj4gKyAqIDw9
IHN3aXRjaCB0byB0aGUgbmV4dCB0aHJlYWQKPj4KPj4gU29tZSBkb2N1bWVudGF0aW9uIGFib3V0
IHRoZSBsYXlvdXQgb2YgdGhlIHN0cnVjdHVyZSBpbiBtZW1vcnkgd291bGQgYmUKPj4gdXNlZnVs
Lgo+IG9rYXkuCj4+Cj4+PiArICovCj4+PiArRU5UUlkoX19hcmNoX3N3aXRjaF90aHJlYWRzKQo+
Pj4gKyAgICAvKiBTdG9yZSB0aGUgY2FsbGVlLXNhdmVkIHJlZ2lzdGVycyB0byBwcmV2J3Mgc3Ry
dWN0IHRocmVhZCAqLwo+Pgo+PiBBRkFJQ1QsIHlvdSBkb24ndCBzdG9yZSB0aGUgY2FsbGVlLXNh
dmVkIHJlZ2lzdGVycyBpbiBzdHJ1Y3QgdGhyZWFkIGJ1dCBvbgo+PiB0aGUgc3RhY2suIEFtIEkg
cmlnaHQ/Cj4gWWVzLgo+IEkgc3RvcmUgdGhlbSBpbiB0aGUgc3RhY2suCgpQbGVhc2UgdXBkYXRl
IHRoZSBjb21tZW50IGFjY29yZGluZ2x5IHRoZW4uCgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxs
CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3Mt
ZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw
czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 09:39:46 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 09:39:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD5Hd-0001Iw-Ij; Mon, 30 Apr 2018 09:39:45 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=9iis=ht=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1fD5Hc-0001Ir-3u
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 09:39:44 +0000
X-Inumbo-ID: 3953933a-4c5a-11e8-9728-bc764e045a96
Received: from mail-lf0-x232.google.com (unknown [2a00:1450:4010:c07::232])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 3953933a-4c5a-11e8-9728-bc764e045a96;
 Mon, 30 Apr 2018 11:38:23 +0200 (CEST)
Received: by mail-lf0-x232.google.com with SMTP id h197-v6so11259581lfg.11
 for <minios-devel@lists.xenproject.org>; Mon, 30 Apr 2018 02:39:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=mfr29ldayVR7dANf058rXHUjLc/H+UiMEpe/b6gl7yE=;
 b=IdaoOnjUc3zNdUiJtPnaFfgi7tNs9vnGE2GYXioKBs77kaKFHsLGvX7nduZ3pUpDJx
 hRVdj5lvuAwUP3KV9qOxaJTbltZyvBqgRMB/3HFBHByGlkctEPR2H1MwlKuVbmYccOro
 CV6j8TNVsd25SIma2F7cyHQQGMonV/7Py+TV6bL6r9p8i41/+0f4XWKK47xVyLNBPi5n
 EeqFi6eMylALnXtDo6vdMLll7/Si0HvMW4VHKUgndX7fx9Sv0lJmSFa6Vm6bZaoQmE46
 jZk9pCNdHlm5jtcwSsJQcywfKkS1/XG0ARVcQSTgrcORORtfAXETKTEwCg0Y87onuSoQ
 jIzQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=mfr29ldayVR7dANf058rXHUjLc/H+UiMEpe/b6gl7yE=;
 b=Iv0UYVYbveG+mkqWK5+tA+fouLIzrjd7iM2Xc5gvIx70cMpyZguGg1cM0lrqkQ9oMi
 4zOtl9yOVh/Jdgph8d4C7/FpdsKQ5kyRlTV/LRVYzw47VqrRjg+wMcLWLaq8idgvqKDV
 pKL4Y/O9MQPgHnMnr7vEwL7/GBq5XBpvizdFyxBnRHF9ek8t1OoCn+s/p+mlW09KcSEy
 OyiYzNin/f70tEHgAfbOkS/CbCCB2e8Pwr8mgoCpHlkk+8UApUWXPyI/SAf5NKTdWbV0
 myEUlPXjUZsWJMggqgyYq6bo8+7ZJP8YahsrvYA9foSGsYAdKu1qt+J4E1luRusX0W0K
 AGFw==
X-Gm-Message-State: ALQs6tDA85hbQfmu8jB1IdoafF/+IebaOuydWMdOhdA9Yt9xt0HY+VmS
 fhqe9TijDgRNwxWx3r7j0punYroiRwx8xQJ6fWLN0g==
X-Google-Smtp-Source: AB8JxZrHmtBbkJIjUkzPS3pzF+hJWwVPW1d+TmIaTb8UoIGz5SkRMFlz5KTZaaM7zFhaIzE/nUyqFMFpqv0+aqFEA44=
X-Received: by 2002:a2e:934e:: with SMTP id
 m14-v6mr3601902ljh.120.1525081179985; 
 Mon, 30 Apr 2018 02:39:39 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:d899:0:0:0:0:0 with HTTP; Mon, 30 Apr 2018 02:39:39
 -0700 (PDT)
In-Reply-To: <7750bbed-442a-0511-95be-967fdf83b75a@neclab.eu>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
 <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
 <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
 <CAHP4M8WxD0KKGzwMBVQpge9k88BL-Zo1_0nsML0bV9_3uLb_zg@mail.gmail.com>
 <b9a24604-91fe-1218-6053-8ba18c32556c@neclab.eu>
 <CAHP4M8XPgk6+4Jrdv+L_tgKhKaj9BXNK-678sWpQ7vrRoyLpyQ@mail.gmail.com>
 <CAHP4M8XOvJrn2QKkFY4FZ-=Vm9GjEtsgqEwvbYzq0LEYnu14GQ@mail.gmail.com>
 <aed6f483-9b00-d3a1-3b8f-52c38a89eff4@neclab.eu>
 <7750bbed-442a-0511-95be-967fdf83b75a@neclab.eu>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Mon, 30 Apr 2018 15:09:39 +0530
Message-ID: <CAHP4M8W0ZACvyQD6KYT5Tm=rsPav2y22ifcgT_owh0O=xtmH0w@mail.gmail.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: multipart/mixed; boundary="===============2160335906297158719=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============2160335906297158719==
Content-Type: multipart/alternative; boundary="000000000000fc9bd9056b0da14f"

--000000000000fc9bd9056b0da14f
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Thanks Simon for the help.


I did the following on my x86_64 laptop :

###########################################################################=
####
ajay@latitude-3480:~/unikraft/apps/helloworld$ arm-linux-gnueabihf-gcc
--version
arm-linux-gnueabihf-gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.9) 5.4.0
20160609
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

ajay@latitude-3480:~/unikraft/apps/helloworld$
CROSS_COMPILE=3Darm-linux-gnueabihf-gcc make clean
make[1]: Entering directory '/home/ajay/unikraft/unikraft'
  CLEAN   libxenplat
  CLEAN   libxenbus
  CLEAN   libkvmplat
  CLEAN   liblinuxuplat
  CLEAN   apphelloworld
  CLEAN   libukboot
  CLEAN   libukdebug
  CLEAN   libukargparse
  CLEAN   libnolibc
  CLEAN   libukalloc
  CLEAN   libukallocbbuddy
  CLEAN   libfdt
  CLEAN   build/
make[1]: Leaving directory '/home/ajay/unikraft/unikraft'

ajay@latitude-3480:~/unikraft/apps/helloworld$
CROSS_COMPILE=3Darm-linux-gnueabihf-gcc make menuconfig
###########################################################################=
####

But I still do not see any arm-options :(


On Mon, Apr 30, 2018 at 2:56 PM, Simon Kuenzer <simon.kuenzer@neclab.eu>
wrote:

> On 30.04.2018 11:24, Simon Kuenzer wrote:
>
>> Hay Ajay,
>>
>> you can actually do both - natively compile on ARM or doing a cross
>> compilation. Unikraft's main makefile is able to detect this. This happe=
ns
>> transparently. You can only influence it by setting the CROSS_COMPILE
>> environment variable before calling make. You should need to remove the
>> -mtune=3Dcortex-a7 and -mcpu=3Dcortex-a7 flags from
>> unikraft/unikraft/arch/arm/Makefile.uk.
>>
>
> Sorry, a "no" was missing here: Keep the -mtune=3Dcortex-a7 and
> -mcpu=3Dcortex-a7 flags.
>
>
> In fact, your GCC version might be too old. Unfortunately Unikraft is not
>> warning you yet but ARM published a patch series that is going to warn y=
ou
>> in the future.
>>
>> On ARM, I just tested the native compile with
>> gcc (Debian 6.3.0-18) 6.3.0 20170516
>>
>> I use the same for the cross compilation from x86:
>> arm-linux-gnueabihf-gcc (Debian 6.3.0-18) 6.3.0 20170516
>>
>> For debugging, you can have a look what is getting called with the
>> verbose option:
>> make V=3D1
>>
>>
>> Thanks,
>>
>> Simon
>>
>> On 30.04.2018 10:27, Ajay Garg wrote:
>>
>>> https://github.com/nim-lang/Nim/issues/2620 suggests it might be due to
>>> (old) gcc version.
>>>
>>> Any chance we can get the following via cross-compilation :
>>>
>>>            * arm-options in menuconfig screen?
>>>            * actually cross-compile for arm32 in unikraft ecosystem?
>>>
>>> On Mon, Apr 30, 2018 at 12:25 PM, Ajay Garg <ajaygargnsit@gmail.com
>>> <mailto:ajaygargnsit@gmail.com>> wrote:
>>>
>>>     Hi Simon.
>>>
>>>
>>>
>>>
>>>         Right now, you can test Unikraft with Xen on arm32. Be aware
>>>         that there is a open bug on the memory allocator for arm
>>>         (see:https://wiki.xenproject.org/wiki/Category:Unikraft_Users
>>>         <https://wiki.xenproject.org/wiki/Category:Unikraft_Users>).
>>>         arm64 with Xen is currently not supported but we working on it.
>>>         Same for KVM and baremetal.
>>>
>>>         We use cubieboard2/3 for arm32 tests. These boards are even
>>>         officially supported by Debian and can run Xen.
>>>
>>>
>>>
>>>     So we bought a cubieboard2 :)
>>>
>>>     Brought the board up without xen.
>>>     Then brought the board up with xen.
>>>
>>>     At this point, "sudo xl list" lists "Domain-0" fine.
>>>
>>>
>>>     Now, we are wanting to run the helloworld-unikraft-unikernel.
>>>
>>>     To keep aside any cross-compilation issues, we are compiling on
>>>     cubieboard2 itself.
>>>     Following is the .config file (majorly containing the "ukdebug" and
>>>     "ukboot" changes  required for arm32) :
>>>
>>>     ###################################################################=
##############
>>>
>>>     #
>>>     # Automatically generated file; DO NOT EDIT.
>>>     # Unikraft/0.2~8b94640 Configuration
>>>     #
>>>
>>>     #
>>>     # Architecture Selection
>>>     #
>>>     # ARCH_X86_64 is not set
>>>     ARCH_ARM_32=3Dy
>>>     # MARCH_CORTEXA7 is not set
>>>     MARCH_A20NEON=3Dy
>>>
>>>     #
>>>     # Platform Support
>>>     #
>>>     PLAT_XEN=3Dy
>>>     XEN_DBGEMERGENCY=3Dy
>>>     PLAT_LINUXU=3Dy
>>>     LINUXU_DEFAULT_HEAPMB=3D4
>>>
>>>     #
>>>     # Library Configuration
>>>     #
>>>     HAVE_BOOTENTRY=3Dy
>>>     # HAVE_LIBC is not set
>>>     # HAVE_SCHED is not set
>>>     LIBUKBOOT=3Dy
>>>     LIBUKBOOT_BANNER=3Dy
>>>     LIBUKBOOT_MAXNBARGS=3D60
>>>     # LIBUKBOOT_INITALLOC is not set
>>>     LIBUKDEBUG=3Dy
>>>     LIBUKDEBUG_PRINTK=3Dy
>>>     LIBUKDEBUG_PRINTD=3Dy
>>>     # LIBUKDEBUG_PRINTD_EXTRA is not set
>>>     # LIBUKDEBUG_PRINTD_INFO is not set
>>>     # LIBUKDEBUG_PRINTD_WARN is not set
>>>     LIBUKDEBUG_PRINTD_ERR=3Dy
>>>     # LIBUKDEBUG_PRINTD_CRIT is not set
>>>     # LIBUKDEBUG_NOREDIR is not set
>>>     # LIBUKDEBUG_REDIR_PRINTD is not set
>>>     LIBUKDEBUG_REDIR_PRINTK=3Dy
>>>     LIBUKDEBUG_ENABLE_ASSERT=3Dy
>>>     LIBUKARGPARSE=3Dy
>>>     LIBNOLIBC=3Dy
>>>     LIBUKALLOC=3Dy
>>>     # LIBUKALLOC_IFPAGES is not set
>>>     # LIBUKALLOC_IFSTATS is not set
>>>     # LIBUKALLOCBBUDDY is not set
>>>     # LIBUKSCHED is not set
>>>     # LIBUKSCHEDCOOP is not set
>>>     LIBFDT=3Dy
>>>
>>>     #
>>>     # Build Options
>>>     #
>>>     # OPTIMIZE_NONE is not set
>>>     OPTIMIZE_PERF=3Dy
>>>     # OPTIMIZE_SIZE is not set
>>>     # OPTIMIZE_DEADELIM is not set
>>>     # DEBUG_SYMBOLS is not set
>>>     OPTIMIZE_STRIP=3Dy
>>>     # RECORD_BUILDTIME is not set
>>>     CROSS_COMPILE=3D""
>>>
>>>     #
>>>     # Application Options
>>>     #
>>>     APPHELLOWORLD_DEPENDENCIES=3Dy
>>>     APPHELLOWORLD_PRINTARGS=3Dy
>>>     UK_NAME=3D"helloworld"
>>>     ###################################################################=
##############
>>>
>>>
>>>
>>>     However, upon compilation, following is observed :
>>>
>>>     ###################################################################=
##############
>>>
>>>     debian@debian-armhf:~/unikraft/apps/helloworld$ make
>>>     make[1]: Entering directory '/home/debian/unikraft/unikraft'
>>>        CP      config
>>>        CC      libxenplat: hypervisor.o
>>>     cc1: error: bad value (cortex-a7) for -mcpu switch
>>>     cc1: error: bad value (cortex-a7) for -mtune switch
>>>     /home/debian/unikraft/unikraft/support/build/Makefile.build:48:
>>>     recipe for target
>>>     '/home/debian/unikraft/apps/helloworld/build/libxenplat/hypervisor.=
o'
>>> failed
>>>     make[1]: ***
>>>     [/home/debian/unikraft/apps/helloworld/build/libxenplat/hypervisor.=
o]
>>> Error
>>>     1
>>>     make[1]: Leaving directory '/home/debian/unikraft/unikraft'
>>>     Makefile:6: recipe for target 'all' failed
>>>     make: *** [all] Error 2
>>>     debian@debian-armhf:~/unikraft/apps/helloworld$
>>>     ###################################################################=
##############
>>>
>>>
>>>
>>>
>>>     So, we proceed to remove the -mtune=3Dcortex-a7 and -mcpu=3Dcortex-=
a7
>>>     flags from unikraft/unikraft/arch/arm/Makefile.uk.
>>>     Thereafter, upon recompiling, we get
>>>
>>>     ###################################################################=
##############
>>>
>>>     debian@debian-armhf:~/unikraft/apps/helloworld$ make
>>>     make[1]: Entering directory '/home/debian/unikraft/unikraft'
>>>        CP      config
>>>        CC      libxenplat: hypervisor.o
>>>     In file included from
>>>     /home/debian/unikraft/unikraft/plat/xen/hypervisor.c:43:0:
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In functio=
n
>>>     =E2=80=98ukarch_test_and_clr_bit=E2=80=99:
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:90:2:
>>>     warning: implicit declaration of function =E2=80=98__atomic_fetch_a=
nd=E2=80=99
>>>     [-Wimplicit-function-declaration]
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:90:40:
>>>     error: =E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (first use in =
this function)
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:90:40: note=
:
>>>     each undeclared identifier is reported only once for each function
>>>     it appears in
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In functio=
n
>>>     =E2=80=98ukarch_test_and_set_bit=E2=80=99:
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:105:2:
>>>     warning: implicit declaration of function =E2=80=98__atomic_fetch_o=
r=E2=80=99
>>>     [-Wimplicit-function-declaration]
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:105:38:
>>>     error: =E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (first use in =
this function)
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In functio=
n
>>>     =E2=80=98ukarch_test_and_clr_bit_sync=E2=80=99:
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:148:40:
>>>     error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in =
this function)
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h: In functio=
n
>>>     =E2=80=98ukarch_test_and_set_bit_sync=E2=80=99:
>>>     /home/debian/unikraft/unikraft/include/uk/arch/atomic.h:161:38:
>>>     error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in =
this function)
>>>     /home/debian/unikraft/unikraft/plat/xen/hypervisor.c: In function
>>>     =E2=80=98do_hypervisor_callback=E2=80=99:
>>>     /home/debian/unikraft/unikraft/plat/xen/hypervisor.c:71:2: warning:
>>>     implicit declaration of function =E2=80=98__atomic_exchange_n=E2=80=
=99
>>>     [-Wimplicit-function-declaration]
>>>     /home/debian/unikraft/unikraft/plat/xen/hypervisor.c:71:7: error:
>>>     =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use in this fu=
nction)
>>>     /home/debian/unikraft/unikraft/support/build/Makefile.build:48:
>>>     recipe for target
>>>     '/home/debian/unikraft/apps/helloworld/build/libxenplat/hypervisor.=
o'
>>> failed
>>>     make[1]: ***
>>>     [/home/debian/unikraft/apps/helloworld/build/libxenplat/hypervisor.=
o]
>>> Error
>>>     1
>>>     make[1]: Leaving directory '/home/debian/unikraft/unikraft'
>>>     Makefile:6: recipe for target 'all' failed
>>>     make: *** [all] Error 2
>>>     ###################################################################=
##############
>>>
>>>
>>>
>>>     What are we missing?
>>>
>>>
>>>     Thanks and Regards,
>>>     Ajay
>>>
>>>
>>>             Thanks and Regards,
>>>             Ajay
>>>
>>>
>>>
>>>         Thanks,
>>>
>>>         Simon
>>>
>>>
>>>
>>>
>>>     --     Regards,
>>>     Ajay
>>>
>>>
>>>
>>>
>>> --
>>> Regards,
>>> Ajay
>>>
>>


--=20
Regards,
Ajay

--000000000000fc9bd9056b0da14f
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div>Thanks Simon for the help.<br><br><br></div>I di=
d the following on my x86_64 laptop :<br><br>##############################=
#################################################<br>ajay@latitude-3480:~/u=
nikraft/apps/helloworld$ arm-linux-gnueabihf-gcc --version<br>arm-linux-gnu=
eabihf-gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.9) 5.4.0 20160609<br>Copyrig=
ht (C) 2015 Free Software Foundation, Inc.<br>This is free software; see th=
e source for copying conditions.=C2=A0 There is NO<br>warranty; not even fo=
r MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.<br><br>ajay@latitude=
-3480:~/unikraft/apps/helloworld$ CROSS_COMPILE=3Darm-linux-gnueabihf-gcc m=
ake clean<br>make[1]: Entering directory &#39;/home/ajay/unikraft/unikraft&=
#39;<br>=C2=A0 CLEAN=C2=A0=C2=A0 libxenplat<br>=C2=A0 CLEAN=C2=A0=C2=A0 lib=
xenbus<br>=C2=A0 CLEAN=C2=A0=C2=A0 libkvmplat<br>=C2=A0 CLEAN=C2=A0=C2=A0 l=
iblinuxuplat<br>=C2=A0 CLEAN=C2=A0=C2=A0 apphelloworld<br>=C2=A0 CLEAN=C2=
=A0=C2=A0 libukboot<br>=C2=A0 CLEAN=C2=A0=C2=A0 libukdebug<br>=C2=A0 CLEAN=
=C2=A0=C2=A0 libukargparse<br>=C2=A0 CLEAN=C2=A0=C2=A0 libnolibc<br>=C2=A0 =
CLEAN=C2=A0=C2=A0 libukalloc<br>=C2=A0 CLEAN=C2=A0=C2=A0 libukallocbbuddy<b=
r>=C2=A0 CLEAN=C2=A0=C2=A0 libfdt<br>=C2=A0 CLEAN=C2=A0=C2=A0 build/<br>mak=
e[1]: Leaving directory &#39;/home/ajay/unikraft/unikraft&#39;<br><br>ajay@=
latitude-3480:~/unikraft/apps/helloworld$ CROSS_COMPILE=3Darm-linux-gnueabi=
hf-gcc make menuconfig<br>#################################################=
##############################<br><br></div>But I still do not see any arm-=
options :(<br><div><br></div></div><div class=3D"gmail_extra"><br><div clas=
s=3D"gmail_quote">On Mon, Apr 30, 2018 at 2:56 PM, Simon Kuenzer <span dir=
=3D"ltr">&lt;<a href=3D"mailto:simon.kuenzer@neclab.eu" target=3D"_blank">s=
imon.kuenzer@neclab.eu</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_=
quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1=
ex"><span class=3D"">On 30.04.2018 11:24, Simon Kuenzer wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
Hay Ajay,<br>
<br>
you can actually do both - natively compile on ARM or doing a cross compila=
tion. Unikraft&#39;s main makefile is able to detect this. This happens tra=
nsparently. You can only influence it by setting the CROSS_COMPILE environm=
ent variable before calling make. You should need to remove the -mtune=3Dco=
rtex-a7 and -mcpu=3Dcortex-a7 flags from unikraft/unikraft/arch/arm/Mak<wbr=
><a href=3D"http://efile.uk">efile.uk</a>.<br>
</blockquote>
<br></span>
Sorry, a &quot;no&quot; was missing here: Keep the -mtune=3Dcortex-a7 and -=
mcpu=3Dcortex-a7 flags.<div class=3D"HOEnZb"><div class=3D"h5"><br>
<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
In fact, your GCC version might be too old. Unfortunately Unikraft is not w=
arning you yet but ARM published a patch series that is going to warn you i=
n the future.<br>
<br>
On ARM, I just tested the native compile with<br>
gcc (Debian 6.3.0-18) 6.3.0 20170516<br>
<br>
I use the same for the cross compilation from x86:<br>
arm-linux-gnueabihf-gcc (Debian 6.3.0-18) 6.3.0 20170516<br>
<br>
For debugging, you can have a look what is getting called with the verbose =
option:<br>
make V=3D1<br>
<br>
<br>
Thanks,<br>
<br>
Simon<br>
<br>
On 30.04.2018 10:27, Ajay Garg wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
<a href=3D"https://github.com/nim-lang/Nim/issues/2620" rel=3D"noreferrer" =
target=3D"_blank">https://github.com/nim-lang/Ni<wbr>m/issues/2620</a> sugg=
ests it might be due to (old) gcc version.<br>
<br>
Any chance we can get the following via cross-compilation :<br>
<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * arm-options =
in menuconfig screen?<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * actually cro=
ss-compile for arm32 in unikraft ecosystem?<br>
<br>
On Mon, Apr 30, 2018 at 12:25 PM, Ajay Garg &lt;<a href=3D"mailto:ajaygargn=
sit@gmail.com" target=3D"_blank">ajaygargnsit@gmail.com</a> &lt;mailto:<a h=
ref=3D"mailto:ajaygargnsit@gmail.com" target=3D"_blank">ajaygargnsit@gmail.=
com</a><wbr>&gt;&gt; wrote:<br>
<br>
=C2=A0=C2=A0=C2=A0 Hi Simon.<br>
<br>
<br>
<br>
<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Right now, you can test Unikraft=
 with Xen on arm32. Be aware<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 that there is a open bug on the =
memory allocator for arm<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (see:<a href=3D"https://wiki.xen=
project.org/wiki/Category:Unikraft_Users" rel=3D"noreferrer" target=3D"_bla=
nk">https://wiki.xenproject.o<wbr>rg/wiki/Category:Unikraft_User<wbr>s</a><=
br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &lt;<a href=3D"https://wiki.xenp=
roject.org/wiki/Category:Unikraft_Users" rel=3D"noreferrer" target=3D"_blan=
k">https://wiki.xenproject.org/w<wbr>iki/Category:Unikraft_Users</a>&gt;).<=
br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 arm64 with Xen is currently not =
supported but we working on it.<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Same for KVM and baremetal.<br>
<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 We use cubieboard2/3 for arm32 t=
ests. These boards are even<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 officially supported by Debian a=
nd can run Xen.<br>
<br>
<br>
<br>
=C2=A0=C2=A0=C2=A0 So we bought a cubieboard2 :)<br>
<br>
=C2=A0=C2=A0=C2=A0 Brought the board up without xen.<br>
=C2=A0=C2=A0=C2=A0 Then brought the board up with xen.<br>
<br>
=C2=A0=C2=A0=C2=A0 At this point, &quot;sudo xl list&quot; lists &quot;Doma=
in-0&quot; fine.<br>
<br>
<br>
=C2=A0=C2=A0=C2=A0 Now, we are wanting to run the helloworld-unikraft-unike=
rnel.<br>
<br>
=C2=A0=C2=A0=C2=A0 To keep aside any cross-compilation issues, we are compi=
ling on<br>
=C2=A0=C2=A0=C2=A0 cubieboard2 itself.<br>
=C2=A0=C2=A0=C2=A0 Following is the .config file (majorly containing the &q=
uot;ukdebug&quot; and<br>
=C2=A0=C2=A0=C2=A0 &quot;ukboot&quot; changes=C2=A0 required for arm32) :<b=
r>
<br>
=C2=A0 =C2=A0 ##############################<wbr>##########################=
####<wbr>##################### <br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 # Automatically generated file; DO NOT EDIT.<br>
=C2=A0=C2=A0=C2=A0 # Unikraft/0.2~8b94640 Configuration<br>
=C2=A0=C2=A0=C2=A0 #<br>
<br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 # Architecture Selection<br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 # ARCH_X86_64 is not set<br>
=C2=A0=C2=A0=C2=A0 ARCH_ARM_32=3Dy<br>
=C2=A0=C2=A0=C2=A0 # MARCH_CORTEXA7 is not set<br>
=C2=A0=C2=A0=C2=A0 MARCH_A20NEON=3Dy<br>
<br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 # Platform Support<br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 PLAT_XEN=3Dy<br>
=C2=A0=C2=A0=C2=A0 XEN_DBGEMERGENCY=3Dy<br>
=C2=A0=C2=A0=C2=A0 PLAT_LINUXU=3Dy<br>
=C2=A0=C2=A0=C2=A0 LINUXU_DEFAULT_HEAPMB=3D4<br>
<br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 # Library Configuration<br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 HAVE_BOOTENTRY=3Dy<br>
=C2=A0=C2=A0=C2=A0 # HAVE_LIBC is not set<br>
=C2=A0=C2=A0=C2=A0 # HAVE_SCHED is not set<br>
=C2=A0=C2=A0=C2=A0 LIBUKBOOT=3Dy<br>
=C2=A0=C2=A0=C2=A0 LIBUKBOOT_BANNER=3Dy<br>
=C2=A0=C2=A0=C2=A0 LIBUKBOOT_MAXNBARGS=3D60<br>
=C2=A0=C2=A0=C2=A0 # LIBUKBOOT_INITALLOC is not set<br>
=C2=A0=C2=A0=C2=A0 LIBUKDEBUG=3Dy<br>
=C2=A0=C2=A0=C2=A0 LIBUKDEBUG_PRINTK=3Dy<br>
=C2=A0=C2=A0=C2=A0 LIBUKDEBUG_PRINTD=3Dy<br>
=C2=A0=C2=A0=C2=A0 # LIBUKDEBUG_PRINTD_EXTRA is not set<br>
=C2=A0=C2=A0=C2=A0 # LIBUKDEBUG_PRINTD_INFO is not set<br>
=C2=A0=C2=A0=C2=A0 # LIBUKDEBUG_PRINTD_WARN is not set<br>
=C2=A0=C2=A0=C2=A0 LIBUKDEBUG_PRINTD_ERR=3Dy<br>
=C2=A0=C2=A0=C2=A0 # LIBUKDEBUG_PRINTD_CRIT is not set<br>
=C2=A0=C2=A0=C2=A0 # LIBUKDEBUG_NOREDIR is not set<br>
=C2=A0=C2=A0=C2=A0 # LIBUKDEBUG_REDIR_PRINTD is not set<br>
=C2=A0=C2=A0=C2=A0 LIBUKDEBUG_REDIR_PRINTK=3Dy<br>
=C2=A0=C2=A0=C2=A0 LIBUKDEBUG_ENABLE_ASSERT=3Dy<br>
=C2=A0=C2=A0=C2=A0 LIBUKARGPARSE=3Dy<br>
=C2=A0=C2=A0=C2=A0 LIBNOLIBC=3Dy<br>
=C2=A0=C2=A0=C2=A0 LIBUKALLOC=3Dy<br>
=C2=A0=C2=A0=C2=A0 # LIBUKALLOC_IFPAGES is not set<br>
=C2=A0=C2=A0=C2=A0 # LIBUKALLOC_IFSTATS is not set<br>
=C2=A0=C2=A0=C2=A0 # LIBUKALLOCBBUDDY is not set<br>
=C2=A0=C2=A0=C2=A0 # LIBUKSCHED is not set<br>
=C2=A0=C2=A0=C2=A0 # LIBUKSCHEDCOOP is not set<br>
=C2=A0=C2=A0=C2=A0 LIBFDT=3Dy<br>
<br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 # Build Options<br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 # OPTIMIZE_NONE is not set<br>
=C2=A0=C2=A0=C2=A0 OPTIMIZE_PERF=3Dy<br>
=C2=A0=C2=A0=C2=A0 # OPTIMIZE_SIZE is not set<br>
=C2=A0=C2=A0=C2=A0 # OPTIMIZE_DEADELIM is not set<br>
=C2=A0=C2=A0=C2=A0 # DEBUG_SYMBOLS is not set<br>
=C2=A0=C2=A0=C2=A0 OPTIMIZE_STRIP=3Dy<br>
=C2=A0=C2=A0=C2=A0 # RECORD_BUILDTIME is not set<br>
=C2=A0=C2=A0=C2=A0 CROSS_COMPILE=3D&quot;&quot;<br>
<br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 # Application Options<br>
=C2=A0=C2=A0=C2=A0 #<br>
=C2=A0=C2=A0=C2=A0 APPHELLOWORLD_DEPENDENCIES=3Dy<br>
=C2=A0=C2=A0=C2=A0 APPHELLOWORLD_PRINTARGS=3Dy<br>
=C2=A0=C2=A0=C2=A0 UK_NAME=3D&quot;helloworld&quot;<br>
=C2=A0 =C2=A0 ##############################<wbr>##########################=
####<wbr>##################### <br>
<br>
<br>
=C2=A0=C2=A0=C2=A0 However, upon compilation, following is observed :<br>
<br>
=C2=A0 =C2=A0 ##############################<wbr>##########################=
####<wbr>##################### <br>
=C2=A0=C2=A0=C2=A0 debian@debian-armhf:~/unikraft<wbr>/apps/helloworld$ mak=
e<br>
=C2=A0=C2=A0=C2=A0 make[1]: Entering directory &#39;/home/debian/unikraft/u=
nikraf<wbr>t&#39;<br>
=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0 CP=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 config<br>
=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0 CC=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 libxenplat=
: hypervisor.o<br>
=C2=A0=C2=A0=C2=A0 cc1: error: bad value (cortex-a7) for -mcpu switch<br>
=C2=A0=C2=A0=C2=A0 cc1: error: bad value (cortex-a7) for -mtune switch<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/support/build/Makefi=
le.build:<wbr>48:<br>
=C2=A0=C2=A0=C2=A0 recipe for target<br>
=C2=A0 =C2=A0 &#39;/home/debian/unikraft/apps/he<wbr>lloworld/build/libxenp=
lat/hype<wbr>rvisor.o&#39; failed<br>
=C2=A0=C2=A0=C2=A0 make[1]: ***<br>
=C2=A0 =C2=A0 [/home/debian/unikraft/apps/he<wbr>lloworld/build/libxenplat/=
hype<wbr>rvisor.o] Error<br>
=C2=A0=C2=A0=C2=A0 1<br>
=C2=A0=C2=A0=C2=A0 make[1]: Leaving directory &#39;/home/debian/unikraft/un=
ikraf<wbr>t&#39;<br>
=C2=A0=C2=A0=C2=A0 Makefile:6: recipe for target &#39;all&#39; failed<br>
=C2=A0=C2=A0=C2=A0 make: *** [all] Error 2<br>
=C2=A0=C2=A0=C2=A0 debian@debian-armhf:~/unikraft<wbr>/apps/helloworld$<br>
=C2=A0 =C2=A0 ##############################<wbr>##########################=
####<wbr>##################### <br>
<br>
<br>
<br>
=C2=A0=C2=A0=C2=A0 So, we proceed to remove the -mtune=3Dcortex-a7 and -mcp=
u=3Dcortex-a7<br>
=C2=A0=C2=A0=C2=A0 flags from unikraft/unikraft/arch/arm/Mak<wbr><a href=3D=
"http://efile.uk">efile.uk</a>.<br>
=C2=A0=C2=A0=C2=A0 Thereafter, upon recompiling, we get<br>
<br>
=C2=A0 =C2=A0 ##############################<wbr>##########################=
####<wbr>##################### <br>
=C2=A0=C2=A0=C2=A0 debian@debian-armhf:~/unikraft<wbr>/apps/helloworld$ mak=
e<br>
=C2=A0=C2=A0=C2=A0 make[1]: Entering directory &#39;/home/debian/unikraft/u=
nikraf<wbr>t&#39;<br>
=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0 CP=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 config<br>
=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0 CC=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 libxenplat=
: hypervisor.o<br>
=C2=A0=C2=A0=C2=A0 In file included from<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/plat/xen/hypervisor.=
c:43:0:<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h: In function<br>
=C2=A0=C2=A0=C2=A0 =E2=80=98ukarch_test_and_clr_bit=E2=80=99:<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h:90:<wbr>2:<br>
=C2=A0=C2=A0=C2=A0 warning: implicit declaration of function =E2=80=98__ato=
mic_fetch_and=E2=80=99<br>
=C2=A0=C2=A0=C2=A0 [-Wimplicit-function-declarati<wbr>on]<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h:90:<wbr>40:<br>
=C2=A0=C2=A0=C2=A0 error: =E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (fi=
rst use in this function)<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h:90:<wbr>40: note:<br>
=C2=A0=C2=A0=C2=A0 each undeclared identifier is reported only once for eac=
h function<br>
=C2=A0=C2=A0=C2=A0 it appears in<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h: In function<br>
=C2=A0=C2=A0=C2=A0 =E2=80=98ukarch_test_and_set_bit=E2=80=99:<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h:105:<wbr>2:<br>
=C2=A0=C2=A0=C2=A0 warning: implicit declaration of function =E2=80=98__ato=
mic_fetch_or=E2=80=99<br>
=C2=A0=C2=A0=C2=A0 [-Wimplicit-function-declarati<wbr>on]<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h:105:<wbr>38:<br>
=C2=A0=C2=A0=C2=A0 error: =E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (fi=
rst use in this function)<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h: In function<br>
=C2=A0=C2=A0=C2=A0 =E2=80=98ukarch_test_and_clr_bit_sync=E2=80=99<wbr>:<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h:148:<wbr>40:<br>
=C2=A0=C2=A0=C2=A0 error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (fi=
rst use in this function)<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h: In function<br>
=C2=A0=C2=A0=C2=A0 =E2=80=98ukarch_test_and_set_bit_sync=E2=80=99<wbr>:<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/include/uk/arch/atom=
ic.h:161:<wbr>38:<br>
=C2=A0=C2=A0=C2=A0 error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (fi=
rst use in this function)<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/plat/xen/hypervisor.=
c: In function<br>
=C2=A0=C2=A0=C2=A0 =E2=80=98do_hypervisor_callback=E2=80=99:<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/plat/xen/hypervisor.=
c:71:2: warning:<br>
=C2=A0=C2=A0=C2=A0 implicit declaration of function =E2=80=98__atomic_excha=
nge_n=E2=80=99<br>
=C2=A0=C2=A0=C2=A0 [-Wimplicit-function-declarati<wbr>on]<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/plat/xen/hypervisor.=
c:71:7: error:<br>
=C2=A0=C2=A0=C2=A0 =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first use=
 in this function)<br>
=C2=A0=C2=A0=C2=A0 /home/debian/unikraft/unikraft<wbr>/support/build/Makefi=
le.build:<wbr>48:<br>
=C2=A0=C2=A0=C2=A0 recipe for target<br>
=C2=A0 =C2=A0 &#39;/home/debian/unikraft/apps/he<wbr>lloworld/build/libxenp=
lat/hype<wbr>rvisor.o&#39; failed<br>
=C2=A0=C2=A0=C2=A0 make[1]: ***<br>
=C2=A0 =C2=A0 [/home/debian/unikraft/apps/he<wbr>lloworld/build/libxenplat/=
hype<wbr>rvisor.o] Error<br>
=C2=A0=C2=A0=C2=A0 1<br>
=C2=A0=C2=A0=C2=A0 make[1]: Leaving directory &#39;/home/debian/unikraft/un=
ikraf<wbr>t&#39;<br>
=C2=A0=C2=A0=C2=A0 Makefile:6: recipe for target &#39;all&#39; failed<br>
=C2=A0=C2=A0=C2=A0 make: *** [all] Error 2<br>
=C2=A0 =C2=A0 ##############################<wbr>##########################=
####<wbr>##################### <br>
<br>
<br>
=C2=A0=C2=A0=C2=A0 What are we missing?<br>
<br>
<br>
=C2=A0=C2=A0=C2=A0 Thanks and Regards,<br>
=C2=A0=C2=A0=C2=A0 Ajay<br>
<br>
<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Thanks a=
nd Regards,<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Ajay<br>
<br>
<br>
<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Thanks,<br>
<br>
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Simon<br>
<br>
<br>
<br>
<br>
=C2=A0=C2=A0=C2=A0 -- =C2=A0=C2=A0=C2=A0 Regards,<br>
=C2=A0=C2=A0=C2=A0 Ajay<br>
<br>
<br>
<br>
<br>
-- <br>
Regards,<br>
Ajay<br>
</blockquote></blockquote>
</div></div></blockquote></div><br><br clear=3D"all"><br>-- <br><div class=
=3D"gmail_signature" data-smartmail=3D"gmail_signature">Regards,<br>Ajay<br=
></div>
</div>

--000000000000fc9bd9056b0da14f--


--===============2160335906297158719==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============2160335906297158719==--


From minios-devel-bounces@lists.xenproject.org Mon Apr 30 10:00:15 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 10:00:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD5bQ-0003Az-7c; Mon, 30 Apr 2018 10:00:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fywh=ht=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fD5bO-0003As-Ji
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 10:00:10 +0000
X-Inumbo-ID: 9fff5929-4c5d-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 9fff5929-4c5d-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 10:02:43 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C6B7615AD;
 Mon, 30 Apr 2018 03:00:07 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 03A9A3F587;
 Mon, 30 Apr 2018 03:00:05 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-29-git-send-email-shijie.huang@arm.com>
 <348f1eec-b5dc-d990-4e37-a0616ce88555@arm.com>
 <20180428093356.GA6078@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <0cae7c6e-ad0f-7c51-7698-5a2c93b0e478@arm.com>
Date: Mon, 30 Apr 2018 11:00:04 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180428093356.GA6078@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 28/43] arm64: init the memory system
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMjgvMDQvMTggMTA6MzMsIEh1YW5nIFNoaWppZSB3cm90ZToKPiBPbiBU
aHUsIEFwciAyNiwgMjAxOCBhdCAwMjoxMDowMVBNICswMTAwLCBKdWxpZW4gR3JhbGwgd3JvdGU6
Cj4+IEhpLAo+Pgo+PiBPbiAxNi8wNC8xOCAwNzozMiwgSHVhbmcgU2hpamllIHdyb3RlOgo+Pj4g
VGhpcyBwYXRjaCBkbyBmb2xsb3dpbmdzIHRvIGluaXRpYWxpemUgdGhlIG1lbW9yeSBzeXN0ZW06
Cj4+PiAgICAgIDAuKSBNYXAgZXh0cmEgMk0gZm9yIHRoZSBmaXJzdF9mcmVlX3Bmbi4KPj4KPj4g
V2hhdCBndWFyYW50ZWVzIHlvdSB0aGVyZSB3aWxsIGJlIGZyZWUgc3BhY2UgYWZ0ZXIgdGhlIGtl
cm5lbD8gQW5kIHdoeSBvbmx5Cj4+IDJNQj8KPiBJIGFkZCBhIGxpbWl0IHRvIG1pbmktb3MgKGFy
bTY0KSwgaWYgdGhlIG1lbW9yeSBpcyBsZXNzIHRoZW4gNE0sIHRoZSBtaW5pLW9zCj4gd2lsbCBu
b3QgcnVuLgo+IAo+IDJNQiBpcyBlbm91Z2ggdG8gcHJvdmlkZSBwYWdlcyBmb3Igc2V0dGluZyB1
cCB0aGUgcGFnZSB0YWJsZS4KClRoaXMgZG9lcyBub3QgYW5zd2VyIG15IHF1ZXN0aW9uLiBZb3Ug
Y2FuIGhhdmUgMTAwTUIgb2YgbWVtb3J5IGJ1dCBzdGlsbCAKbm8gZnJlZSBzcGFjZSBhZnRlciB0
aGUga2VybmVsIGJlY2F1c2UgeW91IGRvbid0IGtub3cgd2hhdCBpcyBsaXZpbmcgaW4gCnRoZSBt
ZW1vcnkuIFNvIHlvdSBtYXkgZW5kIHVwIHRvIHdyaXRlIG9uIHRoZSBEVEIgb3IgZWxzZSBiZWNh
dXNlIHlvdSAKY2FuJ3QgcmVseSBvZiB0aGUgcG9zaXRpb24gb2YgdGhlIGJpbmFyeSBpbiB0aGUg
bWVtb3J5IGlmIHRoYXQgd2FzIG5vdCAKc3RhdGVkIGluIHRoZSBib290IEFCSSAoc2VlIGxpbnV4
L0RvY3VtZW50YXRpb24vYXJtNjQvYm9vdGluZy50eHQpLgoKTG9va2luZyBhdCBpdDogIkF0IGxl
YXN0IGltYWdlX3NpemUgYnl0ZXMgZnJvbSB0aGUgc3RhcnQgb2YgdGhlIGltYWdlIAptdXN0IGJl
IGZyZWUgZm9yIHVzZSBieSB0aGUga2VybmVsLiIsIHNvIHlvdSBuZWVkIHRvIGZpbmQgYW5vdGhl
ciB3YXkgdG8gCmFsbG9jYXRlIHlvdXIgcGFnZS10YWJsZXMuCgo+IAo+Pgo+PiBBcyBJIGhhdmUg
YWxyZWFkeSBzYWlkIGJlZm9yZSwgbW9zdCBsaWtlbHkgeW91IHdhbnQgdG8gaW5jbHVkZSBhIGNv
dXBsZSBvZgo+PiBtb3JlIHBhZ2UtdGFibGUgaW4gdGhlIGltYWdlIGRpcmVjdGx5Lgo+IEkgdHJp
ZWQsIGJ1dCBJIGRvbm90IGtub3cgaG93IG1hbnkgcGFnZXMgc2hvdWxkIGJlIHByZXNlcnZlZCBp
biB0aGUgaW1hZ2UKPiBkaXJlY3RseS4KCkRlcGVuZGluZyBvZiB0aGUgc2l6ZSBvZiB0aGUgbWFw
cGluZywgeW91IG9ubHkgbmVlZCBtZW1vcnkgZm9yIHRoZSAKcGFnZS10YWJsZXMgdG8gbWFwIHRo
YXQgc2VjdGlvbi4gSWYgeW91IHVzZSAyTUIgbWFwcGluZywgb25seSAyIHBhZ2VzIApzaG91bGQg
YmUgc3VmZmljaWVudCAoYWxsb2NhdGluZyB0aGUgTDEgYW5kIEwyIHBhZ2UtdGFibGUpLiBUaGVu
IHlvdSAKd2lsbCBoYXZlIDJNQiB3b3J0aCBvZiBtZW1vcnkgdG8gdXNlIGFmdGVyd2FyZHMuCgpb
Li4uXQoKPj4+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9tbS5jIGIvYXJjaC9hcm0vbW0uYwo+Pj4g
aW5kZXggZDk4ZmFkOC4uZWQ1OTE1OSAxMDA2NDQKPj4+IC0tLSBhL2FyY2gvYXJtL21tLmMKPj4+
ICsrKyBiL2FyY2gvYXJtL21tLmMKPj4+IEBAIC02LDYgKzYsNyBAQAo+Pj4gICAjaW5jbHVkZSA8
bWluaS1vcy9wb3NpeC9saW1pdHMuaD4KPj4+ICAgI2luY2x1ZGUgPGxpYmZkdC5oPgo+Pj4gICAj
aW5jbHVkZSA8bGliLmg+Cj4+PiArI2luY2x1ZGUgPGFybTY0L3BhZ2V0YWJsZS5oPgo+Pj4gICBw
YWRkcl90IHBoeXNpY2FsX2FkZHJlc3Nfb2Zmc2V0Owo+Pj4gICB1bnNpZ25lZCBtZW1fYmxvY2tz
ID0gMTsKPj4+IEBAIC0yMyw2ICsyNCwyMzYgQEAgdW5zaWduZWQgbG9uZyBhbGxvY2F0ZV9vbmRl
bWFuZCh1bnNpZ25lZCBsb25nIG4sIHVuc2lnbmVkIGxvbmcgYWxpZ25tZW50KQo+Pj4gICAgICAg
QlVHKCk7Cj4+PiAgIH0KPj4+ICtleHRlcm4gbHBhZV90IGJvb3RfbDBfcGd0YWJsZVs1MTJdOwo+
Pj4gKwo+Pj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBzZXRfcGd0X2VudHJ5KGxwYWVfdCAqcHRyLCBs
cGFlX3QgdmFsKQo+Pj4gK3sKPj4+ICsgICAgKnB0ciA9IHZhbDsKPj4+ICsgICAgZHNiKGlzaHN0
KTsKPj4+ICsgICAgaXNiKCk7Cj4+PiArfQo+Pj4gKwo+Pj4gK3N0YXRpYyB2b2lkIGJ1aWxkX3B0
ZShscGFlX3QgKnBtZCwgdW5zaWduZWQgbG9uZyB2YWRkciwgdW5zaWduZWQgbG9uZyB2ZW5kLAo+
Pj4gKyAgICAgICAgICAgICAgICAgICAgICBwYWRkcl90IHBoeXMsIHVpbnQ2NF90IG1lbV90eXBl
KQo+Pj4gK3sKPj4+ICsgICAgbHBhZV90ICpwdGU7Cj4+PiArCj4+PiArICAgIHB0ZSA9IChscGFl
X3QgKil0b192aXJ0KCgqcG1kKSAmIH5BVFRSX01BU0tfTCkgKyBsM19wZ3RfaWR4KHZhZGRyKTsK
Pj4+ICsgICAgZG8gewo+Pj4gKyAgICAgICAgc2V0X3BndF9lbnRyeShwdGUsIChwaHlzICYgTDNf
TUFTSykgfCBtZW1fdHlwZSB8IEwzX1BBR0UpOwo+Pj4gKwo+Pj4gKyAgICAgICAgdmFkZHIgKz0g
TDNfU0laRTsKPj4+ICsgICAgICAgIHBoeXMgKz0gTDNfU0laRTsKPj4+ICsgICAgICAgIHB0ZSsr
Owo+Pj4gKyAgICB9IHdoaWxlICh2YWRkciA8IHZlbmQpOwo+Pj4gK30KPj4+ICsKPj4+ICtzdGF0
aWMgaW50IGJ1aWxkX3BtZChscGFlX3QgKnB1ZCwgdW5zaWduZWQgbG9uZyB2YWRkciwgdW5zaWdu
ZWQgbG9uZyB2ZW5kLAo+Pgo+PiBZb3UgYXJlIHVzaW5nIHRoZSB0ZXJtIHB0ZSwgcG1kLCBwdWQg
KHdoaWNoIGJhc2ljYWxseSBsb29rcyB2ZXJ5Cj4+IExpbnV4aXNtLi4uKSBidXQgSSBoYXZlIG5v
dCBpZGVhIHdoYXQgeW91IGFyZSByZWZlciB0byBpbiBNaW5pLU9TIGNvbnRleHQuCj4+IFBsZWFz
ZSBleHBsYWluIGl0Lgo+IHNvcnJ5LCB3aGF0IGlzIHRoZSAiTWluaS1PUyBjb250ZXh0IiBzdGFu
ZCBmb3I/CkkgbWVhbnQgd2hhdCBkb2VzIFBNRCwgUFRFLCBQVUQgbWVhbnMgaW4gTWluaS1PUz8K
ClsuLi5dCgo+Pj4gK3sKPj4+ICsgICAgbHBhZV90ICpwdWQ7Cj4+PiArICAgIHVuc2lnbmVkIGxv
bmcgbmV4dDsKPj4+ICsgICAgaW50IHJldDsKPj4+ICsKPj4+ICsgICAgcHVkID0gKGxwYWVfdCAq
KXRvX3ZpcnQoKCpwZ2QpICYgfkFUVFJfTUFTS19MKSArIGwxX3BndF9pZHgodmFkZHIpOwo+Pj4g
KyAgICBkbyB7Cj4+PiArICAgICAgICBpZiAobGV2ZWwgPT0gMSkgewo+Pj4gKyAgICAgICAgICAg
ICBzZXRfcGd0X2VudHJ5KHB1ZCwgKHBoeXMgJiBMMV9NQVNLKSB8IG1lbV90eXBlIHwgTDFfQkxP
Q0spOwo+Pj4gKyAgICAgICAgfSBlbHNlIHsKPj4+ICsgICAgICAgICAgICAgbmV4dCA9IHZhZGRy
ICsgTDFfU0laRTsKPj4+ICsgICAgICAgICAgICAgaWYgKG5leHQgPiB2ZW5kKQo+Pj4gKyAgICAg
ICAgICAgICAgICAgbmV4dCA9IHZlbmQ7Cj4+PiArCj4+PiArICAgICAgICAgICAgIGlmICgoKnB1
ZCkgPT0gTDFfSU5WQUwpIHsKPj4+ICsgICAgICAgICAgICAgICAgIHBhZGRyX3QgbmV3cGFnZSA9
IG5ld19wYWdlKCk7Cj4+PiArICAgICAgICAgICAgICAgICBpZiAoIW5ld3BhZ2UpCj4+PiArICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07Cj4+PiArICAgICAgICAgICAgICAgICBz
ZXRfcGd0X2VudHJ5KHB1ZCwgbmV3cGFnZSB8IFBUX1BUKTsKPj4+ICsgICAgICAgICAgICAgfQo+
Pj4gKwo+Pj4gKyAgICAgICAgICAgICByZXQgPSBidWlsZF9wbWQocHVkLCB2YWRkciwgbmV4dCwg
cGh5cywgbWVtX3R5cGUsIG5ld19wYWdlLCBsZXZlbCk7Cj4+PiArICAgICAgICAgICAgIGlmIChy
ZXQpCj4+PiArICAgICAgICAgICAgICAgICByZXR1cm4gcmV0Owo+Pj4gKyAgICAgICAgfQo+Pj4g
Kwo+Pj4gKyAgICAgICAgdmFkZHIgKz0gTDFfU0laRTsKPj4+ICsgICAgICAgIHBoeXMgKz0gTDFf
U0laRTsKPj4+ICsgICAgICAgIHB1ZCsrOwo+Pj4gKyAgICB9IHdoaWxlICh2YWRkciA8IHZlbmQp
Owo+Pj4gKwo+Pj4gKyAgICByZXR1cm4gMDsKPj4+ICt9Cj4+PiArCj4+PiArc3RhdGljIGludCBi
dWlsZF9wYWdldGFibGUodW5zaWduZWQgbG9uZyB2YWRkciwgdW5zaWduZWQgbG9uZyBzdGFydF9w
Zm4sCj4+PiArICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtYXhfcGZuLCB1aW50
NjRfdCBtZW1fdHlwZSwKPj4+ICsgICAgICAgICAgICAgICAgICAgICBwYWRkcl90ICgqbmV3X3Bh
Z2UpKHZvaWQpLCBpbnQgbGV2ZWwpCj4+Cj4+IEluZGVudGF0aW9uLgo+Pgo+PiBBbHNvLCB0aGlz
IGlzIGEgYml0IHdlaXJkIHRvIGltcG9zZSB0aGUgY2FsbGVyIHRvIGtub3cgdGhlIGxldmVsIHdo
ZXJlIGl0Cj4+IHN0b3BzLiBIb3cgZG8geW91IGVuc3VyZSB0aGUgdmlydHVhbCBhbmQgcGh5c2lj
YWwgYWRkcmVzcyBhcmUgZ29pbmcgdG8gYmUKPj4gYWxpZ25lZCBwcm9wZXJseT8KPiBUaGUgb25l
IHdobyB1c2VzIGJ1aWxkX3BhZ2V0YWJsZSgpIHNob3VsZCBwYXkgYXR0ZW50aW9uIHRvIHRoZSBh
bGlnbm1lbnQuCgpXZWxsLCBtb3N0IG9mIHlvdXIgY2FsbGVyIGRvZXMgbm90IGxvb2sgYXQgdGhl
IGFsaWdubWVudC4uLiBhbmQgeW91IApkb24ndCBldmVuIGhhdmUgZG9jdW1lbnRhdGlvbiBmb3Ig
eW91ciBmdW5jdGlvbi4uLiBJSE1PLCB5b3Ugc2hvdWxkIGhhdmUgCmEgd3JhcHBlciB0aGF0IHdp
bGwgZG8gdGhlIGFsaWdubWVudCBmb3IgeW91IGFuZCBjaG9vc2UgdGhlIHNpemUgb2YgdGhlIApz
ZWN0aW9uLgoKWy4uLl0KCj4+PiArLyoKPj4+ICsgKiBUaGlzIGZ1bmN0aW9uIHdpbGwgc2V0dXAg
dGhlIHBhZ2UgdGFibGUgZm9yIHRoZSBtZW1vcnkgc3lzdGVtLgo+Pj4gKyAqLwo+Pj4gK3ZvaWQg
aW5pdF9wYWdldGFibGUodW5zaWduZWQgbG9uZyAqc3RhcnRfcGZuLCB1bnNpZ25lZCBsb25nIGJh
c2UsCj4+PiArICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHNpemUpCj4+PiArewo+
Pj4gKyAgICB1bnNpZ25lZCBsb25nIHZhZGRyID0gKHVuc2lnbmVkIGxvbmcpdG9fdmlydChiYXNl
KTsKPj4+ICsgICAgcGFkZHJfdCBwaHlzID0gYmFzZTsKPj4+ICsgICAgcGFkZHJfdCBzeiA9IEwx
X1NJWkU7Cj4+PiArICAgIGxwYWVfdCAqcGdkOwo+Pj4gKyAgICBscGFlX3QgKnB1ZDsKPj4+ICsg
ICAgaW50IGxldmVsOwo+Pj4gKwo+Pj4gKyAgICBkbyB7Cj4+PiArICAgICAgICAvKgo+Pj4gKyAg
ICAgICAgICogV2UgY2Fubm90IHNldCBibG9jayBtYXBwaW5nIGZvciBQR0QobGV2ZWwgMCksCj4+
PiArICAgICAgICAgKiBidXQgd2UgY2FuIHNldCBibG9jayBtYXBwaW5nIGZvciBQVUQobGV2ZWwg
MSkgYW5kIFBNRChsZXZlbCAyKS4KPj4+ICsgICAgICAgICAqIEdldCB0aGUgcHJvcGVyIGxldmVs
IGZvciBidWlsZF9wYWdldGFibGUoKS4KPj4KPj4gWW91ciBBUEkgbG9va3Mgd3JvbmcsIGEgY2Fs
bGVyIG9mIHRoZSBQVCBtYXBwaW5nIHNob3VsZCBub3QgbmVlZCB0byBrbm93IHRoZQo+IFRoZSBi
dWlsZF9wYWdldGFibGUoKSBpcyBvbmx5IHVzZWQgaW50ZXJuYWxseSwgaXQgaXMgbm90IGEgQVBJ
IGZ1bmN0aW9uLgoKV2hldGhlciB5b3VyIGZ1bmN0aW9uIGlzIGludGVybmFsIG9yIG5vdCwgdGhl
IHdheSB0byB1c2UgaXQgaXMgdmVyeSAKdW5pbnR1aXRpdmUuIFNvbWVvbmUgcmVhZGluZyB0aGUg
ZnVuY3Rpb24gaGF2ZSBubyBjbHVlIGhvdyB0byB1c2UgaXQuCgo+PiBsZXZlbCBpdCBpcyBnb2lu
ZyB0byBtYXAuIFRoZSBvbmx5IHRoaW5nIG5lY2Vzc2FyeSBpcyB0aGUgc2l6ZSBvZiB0aGUKPj4g
bWFwcGluZy4KPiBQbGVhc2Ugc2VlIHRoZSBpbml0X3BhZ2V0YWJsZSgpL21hcF9mcmFtZXNfdmly
dCgpL2lvcmVtYXAsIHRoZXkgYXJlIEFQSSBmdW5jdGlvbi4KPj4KPj4+ICsgICAgICAgICAqLwo+
Pj4gKyAgICAgICAgaWYgKHNpemUgPj0gTDFfU0laRSkgewo+Pj4gKyAgICAgICAgICAgIHBnZCA9
ICZib290X2wwX3BndGFibGVbbDBfcGd0X2lkeCh2YWRkcildOwo+Pj4gKyAgICAgICAgICAgIGlm
ICgoKnBnZCkgPT0gTDBfSU5WQUwpIHsKPj4KPj4gSSBkb24ndCB1bmRlcnN0YW5kIHRoaXMgY29k
ZS4gV2h5IGRvIHlvdSBuZWVkIHRvIGNoZWNrIHRoZSBib290IHRhYmxlIGluCj4+IG9yZGVyIHRv
IG5vdyB0aGUgbGV2ZWwgdG8gbWFwPwo+IFRoZSAoKnBnZCkgbWF5YmUgZW1wdHksIHNvIHdlIG5l
ZWQgdG8gY2hlY2sgaXQuCgpUaGlzIGRvZXMgbm90IGFuc3dlciB3aHkgeW91IG5lZWQgdG8ga25v
dyB0aGF0IHdoZW4gY2hvb3NpbmcgdGhlIGxldmVsLiAKQW5kIHRoYXQgcmFpc2UgdGhlIHF1ZXN0
aW9uIHdoeSB0aGlzIGlzIG5lY2Vzc2FyeSBoZXJlIGFuZCBub3QgaW4gdGhlIApvdGhlciBwbGFj
ZS4uLgoKPj4+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9zZXR1cC5jIGIvYXJjaC9hcm0vc2V0dXAu
Ywo+Pj4gaW5kZXggMjdiZWE0YS4uYWI4MmVkYSAxMDA2NDQKPj4+IC0tLSBhL2FyY2gvYXJtL3Nl
dHVwLmMKPj4+ICsrKyBiL2FyY2gvYXJtL3NldHVwLmMKPj4+IEBAIC0yOSw2ICsyOSw5IEBAIHZv
aWQgYXJjaF9pbml0KHZvaWQgKmR0Yl9wb2ludGVyLCBwYWRkcl90IHBoeXNpY2FsX29mZnNldCkK
Pj4+ICAgICAgIHhwcmludGsoIlZpcnR1YWwgLT4gcGh5c2ljYWwgb2Zmc2V0ID0gJSJQUklwYWRk
ciIgXG4iLCBwaHlzaWNhbF9hZGRyZXNzX29mZnNldCk7Cj4+PiArICAgIC8qIERvIHRoZSBwcmVw
YXJhdGlvbnMgKi8KPj4+ICsgICAgYXJjaF9tbV9wcmVpbml0KCZkdGJfcG9pbnRlcik7Cj4+PiAr
Cj4+PiAgICAgICB4cHJpbnRrKCJDaGVja2luZyBEVEIgYXQgJXAuLi5cbiIsIGR0Yl9wb2ludGVy
KTsKPj4+ICAgICAgIGlmICgociA9IGZkdF9jaGVja19oZWFkZXIoZHRiX3BvaW50ZXIpKSkgewo+
Pj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXJtL2FyY2hfbW0uaCBiL2luY2x1ZGUvYXJtL2FyY2hf
bW0uaAo+Pj4gaW5kZXggZjc3YTIxMC4uZGI2ZTc4MSAxMDA2NDQKPj4+IC0tLSBhL2luY2x1ZGUv
YXJtL2FyY2hfbW0uaAo+Pj4gKysrIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4+PiBAQCAtMyw2
ICszLDEwIEBACj4+PiAgIHR5cGVkZWYgdWludDY0X3QgcGFkZHJfdDsKPj4+ICAgI2RlZmluZSBQ
UklwYWRkciAibHgiCj4+PiArI2RlZmluZSBNSU5fTUVNX1NJWkUgICAgICAgICAgICAoMHg0MDAw
MDApCj4+Cj4+IFdoZXJlIGRvZXMgdGhpcyB2YWx1ZSBjb21lIGZyb20/Cj4gSSBhZGRlZCBmb3Ig
dGhlIG1lbW9yeSBsaW1pdC4KPiBJZiB0aGUgbWVtb3J5IHNpemUgaXMgbGVzcyB0aGVuIDRNLCB0
aGUgbWluaS1vcyB3aWxsIG5vdCBydW4uCgpXaHkgNE1CPwoKPj4KPj4+ICsjZGVmaW5lIE1BWF9N
RU1fU0laRSAgICAgICAgICAgICgxVUwgPDwgMzkpCj4+Cj4+IFNhbWUgaGVyZT8KPiBSZWZlciB0
byB0aGUgeDg2LgoKV2VsbCwgSSBsb29rZWQgYXQgeDg2IGFuZCBJIGNhbid0IGZpbmQgTUlOX01F
TV9TSVpFIGFuZCB0aGUgdmFsdWUgZm9yIApNQVhfTUVNX1NJWkUgaXMgNTEyIDw8IDMwLiBTbyBj
bGVhcmx5IHlvdSBuZWVkIHNvbWUgZXhwbGFuYXRpb24gYmVjYXVzZSAKSSBjYW4ndCByZWZlciB0
byB4ODYgZWFzaWx5IG5vciBrbm93IHdoeSB5b3UgY2hvc2UgdGhvc2UgdmFsdWVzLgoKQ2hlZXJz
LAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMu
eGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3Rp
bmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 10:03:35 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 10:03:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD5eg-0003EZ-Hr; Mon, 30 Apr 2018 10:03:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fywh=ht=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fD5ef-0003EU-4S
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 10:03:33 +0000
X-Inumbo-ID: 198a294a-4c5e-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 198a294a-4c5e-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 10:06:07 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DE0A115AD;
 Mon, 30 Apr 2018 03:03:31 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 1D3BD3F587;
 Mon, 30 Apr 2018 03:03:29 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-29-git-send-email-shijie.huang@arm.com>
 <ed58fe42-c3de-b003-f4bb-cfbd526c6ce9@arm.com>
 <20180428093731.GB6078@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <fb5995e8-4b5e-eb62-337b-270e706d18a0@arm.com>
Date: Mon, 30 Apr 2018 11:03:28 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180428093731.GB6078@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 28/43] arm64: init the memory system
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAyOC8wNC8xOCAxMDozNywgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFRodSwgQXByIDI2
LCAyMDE4IGF0IDAyOjE5OjUyUE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4KPj4KPj4g
T24gMTYvMDQvMTggMDc6MzIsIEh1YW5nIFNoaWppZSB3cm90ZToKPj4+ICt2b2lkIGFyY2hfbW1f
cHJlaW5pdCh2b2lkICpkdGJfcG9pbnRlcikKPj4+ICt7Cj4+PiArICAgIHBhZGRyX3QgKipkdGJf
cCA9IGR0Yl9wb2ludGVyOwo+Pj4gKyAgICBwYWRkcl90ICpkdGIgPSAqZHRiX3A7Cj4+PiArICAg
IHVpbnRwdHJfdCBlbmQgPSAodWludHB0cl90KSAmX2VuZDsKPj4+ICsKPj4+ICsgICAgZHRiID0g
dG9fdmlydCgoKHBhZGRyX3QpZHRiKSk7Cj4+PiArICAgIGZpcnN0X2ZyZWVfcGZuID0gUEZOX1VQ
KHRvX3BoeXMoZW5kKSk7Cj4+PiArICAgIG1pbl9tZW1fcGZuID0gUEZOX1VQKHRvX3BoeXMoX3Rl
eHQpICsgTUlOX01FTV9TSVpFKTsKPj4+ICsKPj4+ICsgICAgLyoKPj4+ICsgICAgICogU2V0dXAg
dGhlIG1hcHBpbmcgZm9yIERldmljZSBUcmVlLCBvbmx5IG1hcCAyTShMMl9TSVpFKSBzaXplLgo+
Pj4gKyAgICAgKgo+Pj4gKyAgICAgKiBOb3RlOiBUaGUgZWFybHlfYWxsb2NfcGFnZSgpIHdpbGwg
aW5jcmVhc2UgQGZpcnN0X2ZyZWVfcGZuLgo+Pj4gKyAgICAgKi8KPj4+ICsgICAgYnVpbGRfcGFn
ZXRhYmxlKCh1bnNpZ25lZCBsb25nKWR0YiwgdmlydF90b19wZm4oKHVuc2lnbmVkIGxvbmcpZHRi
KSwKPj4+ICsgICAgICAgICAgICAgICAgICAgIFBIWVNfUEZOKEwyX1NJWkUpLCBNRU1fREVGX0FU
VFIsIGVhcmx5X2FsbG9jX3BhZ2UsIDIpOwo+Pgo+PiBJIGZvcmdvdCB0byBjb21tZW50IG9uIHRo
aXMuIFlvdSBjYW4ndCBhc3N1bWUgdGhlIERUQiB3aWxsIGJlIDJNQiBhbGlnbmVkCj4gSXMgdGhl
cmUgYW55IGRvY3VtZW50IGFib3V0IHRoaXM/CgpZZXMsIHRoZSBvbmUgZGVzY3JpYmluZyB0aGUg
Ym9vdGluZyBwcm90b2NvbCBmb3IgYm9vdGluZyBMaW51eCBJbWFnZSAKZm9ybWF0IChzZWUgbGlu
dXgvRG9jdW1lbnRhdGlvbi9hcm02NC9ib290aW5nLnR4dCkuCgo+IEkgdGhvdWdodCB0aGUgRFRC
IGlzIDJNIGFsaWduZWQuCgoiVGhlIGRldmljZSB0cmVlIGJsb2IgKGR0YikgbXVzdCBiZSBwbGFj
ZWQgb24gYW4gOC1ieXRlIGJvdW5kYXJ5IGFuZCAKbXVzdCBub3QgZXhjZWVkIDIgbWVnYWJ5dGVz
IGluIHNpemUuIFNpbmNlIHRoZSBkdGIgd2lsbCBiZSBtYXBwZWQgCmNhY2hlYWJsZSB1c2luZyBi
bG9ja3Mgb2YgdXAgdG8gMiBtZWdhYnl0ZXMgaW4gc2l6ZSwgaXQgbXVzdCBub3QgYmUgCnBsYWNl
ZCB3aXRoaW4gYW55IDJNIHJlZ2lvbiB3aGljaCBtdXN0IGJlIG1hcHBlZCB3aXRoIGFueSBzcGVj
aWZpYyAKYXR0cmlidXRlcy4iCgo+PiBhbmQgdGhlIGludGVyZmFjZSBvZiBidWlsZF9wYWdldGFi
bGUgaXMgc29tZXdoYXQgcXVpdGUgY29uZnVzaW5nIHRvIHVzZS4gU28KPj4gYXJlIHlvdSBnb2lu
ZyB0byBtYXAgMiAyTUIgc2VjdGlvbj8gT3Igb25seSBvbmU/Cj4gV2hhdCdzIHRoZSAic2VjdGlv
biIgbWVhbj8gZG8geW91IG1lYW4gb25lIFBNRCBlbnRyeS4KPiAKPiBUaGUgY29kZSBvbmx5IG1h
cHMgb25lIFBNRCBlbnRyeS4KCkkgc3RpbGwgaGF2ZSBubyBjbHVlIHdoYXQgeW91IG1lYW4gYnkg
UE1ELiBXaGF0IEkgbWVhbnQgYnkgc2VjdGlvbiBpcyAKYmxvY2sgbWFwcGluZyAodG8gdXNlIHRo
ZSBBcm0gQXJtIHRlcm0pLiBJdCBpcyBhbGxvd2VkIHRvIGRvIG1hcHBpbmcgYXQgCkwxIGFuZCBM
Mi4gRm9yIDRLQiwgdGhleSB3b3VsZCByZXNwLiBiZSAxR0IgYW5kIDJNQi4KCkNoZWVycy4KCi0t
IApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnBy
b2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9t
aW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 10:10:06 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 10:10:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD5kz-0003dG-3O; Mon, 30 Apr 2018 10:10:05 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=6+tk=ht=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fD5kx-0003Vm-RA
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 10:10:03 +0000
X-Inumbo-ID: 74ef442d-4c5e-11e8-9728-bc764e045a96
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 74ef442d-4c5e-11e8-9728-bc764e045a96;
 Mon, 30 Apr 2018 12:08:41 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 4A6C01038C3;
 Mon, 30 Apr 2018 12:09:58 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id qIhWLgmYjdGx; Mon, 30 Apr 2018 12:09:58 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 251F8103804;
 Mon, 30 Apr 2018 12:09:54 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 30 Apr
 2018 12:09:53 +0200
To: Ajay Garg <ajaygargnsit@gmail.com>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
 <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
 <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
 <CAHP4M8WxD0KKGzwMBVQpge9k88BL-Zo1_0nsML0bV9_3uLb_zg@mail.gmail.com>
 <b9a24604-91fe-1218-6053-8ba18c32556c@neclab.eu>
 <CAHP4M8XPgk6+4Jrdv+L_tgKhKaj9BXNK-678sWpQ7vrRoyLpyQ@mail.gmail.com>
 <CAHP4M8XOvJrn2QKkFY4FZ-=Vm9GjEtsgqEwvbYzq0LEYnu14GQ@mail.gmail.com>
 <aed6f483-9b00-d3a1-3b8f-52c38a89eff4@neclab.eu>
 <7750bbed-442a-0511-95be-967fdf83b75a@neclab.eu>
 <CAHP4M8W0ZACvyQD6KYT5Tm=rsPav2y22ifcgT_owh0O=xtmH0w@mail.gmail.com>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <b99daf41-72a9-d906-876e-ad2c4d75f86f@neclab.eu>
Date: Mon, 30 Apr 2018 12:09:53 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <CAHP4M8W0ZACvyQD6KYT5Tm=rsPav2y22ifcgT_owh0O=xtmH0w@mail.gmail.com>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGV5LAoKT24gMzAuMDQuMjAxOCAxMTozOSwgQWpheSBHYXJnIHdyb3RlOgo+IFRoYW5rcyBTaW1v
biBmb3IgdGhlIGhlbHAuCj4gCj4gCj4gSSBkaWQgdGhlIGZvbGxvd2luZyBvbiBteSB4ODZfNjQg
bGFwdG9wIDoKPiAKPiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCj4gYWpheUBsYXRpdHVkZS0zNDgw
On4vdW5pa3JhZnQvYXBwcy9oZWxsb3dvcmxkJCBhcm0tbGludXgtZ251ZWFiaWhmLWdjYyAKPiAt
LXZlcnNpb24KPiBhcm0tbGludXgtZ251ZWFiaWhmLWdjYyAoVWJ1bnR1L0xpbmFybyA1LjQuMC02
dWJ1bnR1MX4xNi4wNC45KSA1LjQuMCAKPiAyMDE2MDYwOQo+IENvcHlyaWdodCAoQykgMjAxNSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KPiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNl
ZSB0aGUgc291cmNlIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuwqAgVGhlcmUgaXMgTk8KPiB3YXJy
YW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRS4KPiAKPiBhamF5QGxhdGl0dWRlLTM0ODA6fi91bmlrcmFmdC9hcHBzL2hl
bGxvd29ybGQkIAo+IENST1NTX0NPTVBJTEU9YXJtLWxpbnV4LWdudWVhYmloZi1nY2MgbWFrZSBj
bGVhbgo+IG1ha2VbMV06IEVudGVyaW5nIGRpcmVjdG9yeSAnL2hvbWUvYWpheS91bmlrcmFmdC91
bmlrcmFmdCcKPiAgwqAgQ0xFQU7CoMKgIGxpYnhlbnBsYXQKPiAgwqAgQ0xFQU7CoMKgIGxpYnhl
bmJ1cwo+ICDCoCBDTEVBTsKgwqAgbGlia3ZtcGxhdAo+ICDCoCBDTEVBTsKgwqAgbGlibGludXh1
cGxhdAo+ICDCoCBDTEVBTsKgwqAgYXBwaGVsbG93b3JsZAo+ICDCoCBDTEVBTsKgwqAgbGlidWti
b290Cj4gIMKgIENMRUFOwqDCoCBsaWJ1a2RlYnVnCj4gIMKgIENMRUFOwqDCoCBsaWJ1a2FyZ3Bh
cnNlCj4gIMKgIENMRUFOwqDCoCBsaWJub2xpYmMKPiAgwqAgQ0xFQU7CoMKgIGxpYnVrYWxsb2MK
PiAgwqAgQ0xFQU7CoMKgIGxpYnVrYWxsb2NiYnVkZHkKPiAgwqAgQ0xFQU7CoMKgIGxpYmZkdAo+
ICDCoCBDTEVBTsKgwqAgYnVpbGQvCj4gbWFrZVsxXTogTGVhdmluZyBkaXJlY3RvcnkgJy9ob21l
L2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQnCj4gCj4gYWpheUBsYXRpdHVkZS0zNDgwOn4vdW5pa3Jh
ZnQvYXBwcy9oZWxsb3dvcmxkJCAKPiBDUk9TU19DT01QSUxFPWFybS1saW51eC1nbnVlYWJpaGYt
Z2NjIG1ha2UgbWVudWNvbmZpZwo+ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPiAKPiBCdXQgSSBz
dGlsbCBkbyBub3Qgc2VlIGFueSBhcm0tb3B0aW9ucyA6KAoKSSBhbSB3b25kZXJpbmcgd2hpY2gg
b3B0aW9ucyBkaWQgeW91IGV4cGVjdCB0byBzZWU/CgpJIHRoaW5rIHlvdSBzYXcgYWxyZWFkeSB3
aGF0IGlzIGN1cnJlbnRseSBhdmFpbGFibGUgaW4gdGhlIG1lbnU6IFlvdSAKc2VsZWN0IGFuZCBj
b25maWd1cmUgQVJNIHVuZGVyICJBcmNoaXRlY3R1cmUgU2VsZWN0aW9uIi4gQWZ0ZXJ3YXJkcyB5
b3UgCnNlbGVjdCB5b3VyIHRhcmdldCBwbGF0Zm9ybXMgdW5kZXIgIlBsYXRmb3JtIENvbmZpZ3Vy
YXRpb24iLgoKRGlkIHlvdSB0cnkgY29tcGlsaW5nIHRoZSBpbWFnZT8KCj4gCj4gCj4gT24gTW9u
LCBBcHIgMzAsIDIwMTggYXQgMjo1NiBQTSwgU2ltb24gS3VlbnplciA8c2ltb24ua3VlbnplckBu
ZWNsYWIuZXUgCj4gPG1haWx0bzpzaW1vbi5rdWVuemVyQG5lY2xhYi5ldT4+IHdyb3RlOgo+IAo+
ICAgICBPbiAzMC4wNC4yMDE4IDExOjI0LCBTaW1vbiBLdWVuemVyIHdyb3RlOgo+IAo+ICAgICAg
ICAgSGF5IEFqYXksCj4gCj4gICAgICAgICB5b3UgY2FuIGFjdHVhbGx5IGRvIGJvdGggLSBuYXRp
dmVseSBjb21waWxlIG9uIEFSTSBvciBkb2luZyBhCj4gICAgICAgICBjcm9zcyBjb21waWxhdGlv
bi4gVW5pa3JhZnQncyBtYWluIG1ha2VmaWxlIGlzIGFibGUgdG8gZGV0ZWN0Cj4gICAgICAgICB0
aGlzLiBUaGlzIGhhcHBlbnMgdHJhbnNwYXJlbnRseS4gWW91IGNhbiBvbmx5IGluZmx1ZW5jZSBp
dCBieQo+ICAgICAgICAgc2V0dGluZyB0aGUgQ1JPU1NfQ09NUElMRSBlbnZpcm9ubWVudCB2YXJp
YWJsZSBiZWZvcmUgY2FsbGluZwo+ICAgICAgICAgbWFrZS4gWW91IHNob3VsZCBuZWVkIHRvIHJl
bW92ZSB0aGUgLW10dW5lPWNvcnRleC1hNyBhbmQKPiAgICAgICAgIC1tY3B1PWNvcnRleC1hNyBm
bGFncyBmcm9tCj4gICAgICAgICB1bmlrcmFmdC91bmlrcmFmdC9hcmNoL2FybS9NYWtlZmlsZS51
ayA8aHR0cDovL2VmaWxlLnVrPi4KPiAKPiAKPiAgICAgU29ycnksIGEgIm5vIiB3YXMgbWlzc2lu
ZyBoZXJlOiBLZWVwIHRoZSAtbXR1bmU9Y29ydGV4LWE3IGFuZAo+ICAgICAtbWNwdT1jb3J0ZXgt
YTcgZmxhZ3MuCj4gCj4gCj4gICAgICAgICBJbiBmYWN0LCB5b3VyIEdDQyB2ZXJzaW9uIG1pZ2h0
IGJlIHRvbyBvbGQuIFVuZm9ydHVuYXRlbHkKPiAgICAgICAgIFVuaWtyYWZ0IGlzIG5vdCB3YXJu
aW5nIHlvdSB5ZXQgYnV0IEFSTSBwdWJsaXNoZWQgYSBwYXRjaCBzZXJpZXMKPiAgICAgICAgIHRo
YXQgaXMgZ29pbmcgdG8gd2FybiB5b3UgaW4gdGhlIGZ1dHVyZS4KPiAKPiAgICAgICAgIE9uIEFS
TSwgSSBqdXN0IHRlc3RlZCB0aGUgbmF0aXZlIGNvbXBpbGUgd2l0aAo+ICAgICAgICAgZ2NjIChE
ZWJpYW4gNi4zLjAtMTgpIDYuMy4wIDIwMTcwNTE2Cj4gCj4gICAgICAgICBJIHVzZSB0aGUgc2Ft
ZSBmb3IgdGhlIGNyb3NzIGNvbXBpbGF0aW9uIGZyb20geDg2Ogo+ICAgICAgICAgYXJtLWxpbnV4
LWdudWVhYmloZi1nY2MgKERlYmlhbiA2LjMuMC0xOCkgNi4zLjAgMjAxNzA1MTYKPiAKPiAgICAg
ICAgIEZvciBkZWJ1Z2dpbmcsIHlvdSBjYW4gaGF2ZSBhIGxvb2sgd2hhdCBpcyBnZXR0aW5nIGNh
bGxlZCB3aXRoCj4gICAgICAgICB0aGUgdmVyYm9zZSBvcHRpb246Cj4gICAgICAgICBtYWtlIFY9
MQo+IAo+IAo+ICAgICAgICAgVGhhbmtzLAo+IAo+ICAgICAgICAgU2ltb24KPiAKPiAgICAgICAg
IE9uIDMwLjA0LjIwMTggMTA6MjcsIEFqYXkgR2FyZyB3cm90ZToKPiAKPiAgICAgICAgICAgICBo
dHRwczovL2dpdGh1Yi5jb20vbmltLWxhbmcvTmltL2lzc3Vlcy8yNjIwCj4gICAgICAgICAgICAg
PGh0dHBzOi8vZ2l0aHViLmNvbS9uaW0tbGFuZy9OaW0vaXNzdWVzLzI2MjA+IHN1Z2dlc3RzIGl0
Cj4gICAgICAgICAgICAgbWlnaHQgYmUgZHVlIHRvIChvbGQpIGdjYyB2ZXJzaW9uLgo+IAo+ICAg
ICAgICAgICAgIEFueSBjaGFuY2Ugd2UgY2FuIGdldCB0aGUgZm9sbG93aW5nIHZpYSBjcm9zcy1j
b21waWxhdGlvbiA6Cj4gCj4gICAgICAgICAgICAgIMKgwqDCoMKgwqDCoMKgwqDCoMKgICogYXJt
LW9wdGlvbnMgaW4gbWVudWNvbmZpZyBzY3JlZW4/Cj4gICAgICAgICAgICAgIMKgwqDCoMKgwqDC
oMKgwqDCoMKgICogYWN0dWFsbHkgY3Jvc3MtY29tcGlsZSBmb3IgYXJtMzIgaW4gdW5pa3JhZnQK
PiAgICAgICAgICAgICBlY29zeXN0ZW0/Cj4gCj4gICAgICAgICAgICAgT24gTW9uLCBBcHIgMzAs
IDIwMTggYXQgMTI6MjUgUE0sIEFqYXkgR2FyZwo+ICAgICAgICAgICAgIDxhamF5Z2FyZ25zaXRA
Z21haWwuY29tIDxtYWlsdG86YWpheWdhcmduc2l0QGdtYWlsLmNvbT4KPiAgICAgICAgICAgICA8
bWFpbHRvOmFqYXlnYXJnbnNpdEBnbWFpbC5jb20KPiAgICAgICAgICAgICA8bWFpbHRvOmFqYXln
YXJnbnNpdEBnbWFpbC5jb20+Pj4gd3JvdGU6Cj4gCj4gICAgICAgICAgICAgIMKgwqDCoCBIaSBT
aW1vbi4KPiAKPiAKPiAKPiAKPiAgICAgICAgICAgICAgwqDCoMKgwqDCoMKgwqAgUmlnaHQgbm93
LCB5b3UgY2FuIHRlc3QgVW5pa3JhZnQgd2l0aCBYZW4gb24gYXJtMzIuCj4gICAgICAgICAgICAg
QmUgYXdhcmUKPiAgICAgICAgICAgICAgwqDCoMKgwqDCoMKgwqAgdGhhdCB0aGVyZSBpcyBhIG9w
ZW4gYnVnIG9uIHRoZSBtZW1vcnkgYWxsb2NhdG9yCj4gICAgICAgICAgICAgZm9yIGFybQo+ICAg
ICAgICAgICAgICAgICAgICAgCj4gICAgICAgICAgICAgKHNlZTpodHRwczovL3dpa2kueGVucHJv
amVjdC5vcmcvd2lraS9DYXRlZ29yeTpVbmlrcmFmdF9Vc2VycyA8aHR0cHM6Ly93aWtpLnhlbnBy
b2plY3Qub3JnL3dpa2kvQ2F0ZWdvcnk6VW5pa3JhZnRfVXNlcnM+Cj4gICAgICAgICAgICAgICAg
ICAgICAKPiAgICAgICAgICAgICA8aHR0cHM6Ly93aWtpLnhlbnByb2plY3Qub3JnL3dpa2kvQ2F0
ZWdvcnk6VW5pa3JhZnRfVXNlcnMKPiAgICAgICAgICAgICA8aHR0cHM6Ly93aWtpLnhlbnByb2pl
Y3Qub3JnL3dpa2kvQ2F0ZWdvcnk6VW5pa3JhZnRfVXNlcnM+PikuCj4gICAgICAgICAgICAgIMKg
wqDCoMKgwqDCoMKgIGFybTY0IHdpdGggWGVuIGlzIGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkIGJ1
dCB3ZQo+ICAgICAgICAgICAgIHdvcmtpbmcgb24gaXQuCj4gICAgICAgICAgICAgIMKgwqDCoMKg
wqDCoMKgIFNhbWUgZm9yIEtWTSBhbmQgYmFyZW1ldGFsLgo+IAo+ICAgICAgICAgICAgICDCoMKg
wqDCoMKgwqDCoCBXZSB1c2UgY3ViaWVib2FyZDIvMyBmb3IgYXJtMzIgdGVzdHMuIFRoZXNlIGJv
YXJkcwo+ICAgICAgICAgICAgIGFyZSBldmVuCj4gICAgICAgICAgICAgIMKgwqDCoMKgwqDCoMKg
IG9mZmljaWFsbHkgc3VwcG9ydGVkIGJ5IERlYmlhbiBhbmQgY2FuIHJ1biBYZW4uCj4gCj4gCj4g
Cj4gICAgICAgICAgICAgIMKgwqDCoCBTbyB3ZSBib3VnaHQgYSBjdWJpZWJvYXJkMiA6KQo+IAo+
ICAgICAgICAgICAgICDCoMKgwqAgQnJvdWdodCB0aGUgYm9hcmQgdXAgd2l0aG91dCB4ZW4uCj4g
ICAgICAgICAgICAgIMKgwqDCoCBUaGVuIGJyb3VnaHQgdGhlIGJvYXJkIHVwIHdpdGggeGVuLgo+
IAo+ICAgICAgICAgICAgICDCoMKgwqAgQXQgdGhpcyBwb2ludCwgInN1ZG8geGwgbGlzdCIgbGlz
dHMgIkRvbWFpbi0wIiBmaW5lLgo+IAo+IAo+ICAgICAgICAgICAgICDCoMKgwqAgTm93LCB3ZSBh
cmUgd2FudGluZyB0byBydW4gdGhlCj4gICAgICAgICAgICAgaGVsbG93b3JsZC11bmlrcmFmdC11
bmlrZXJuZWwuCj4gCj4gICAgICAgICAgICAgIMKgwqDCoCBUbyBrZWVwIGFzaWRlIGFueSBjcm9z
cy1jb21waWxhdGlvbiBpc3N1ZXMsIHdlIGFyZQo+ICAgICAgICAgICAgIGNvbXBpbGluZyBvbgo+
ICAgICAgICAgICAgICDCoMKgwqAgY3ViaWVib2FyZDIgaXRzZWxmLgo+ICAgICAgICAgICAgICDC
oMKgwqAgRm9sbG93aW5nIGlzIHRoZSAuY29uZmlnIGZpbGUgKG1ham9ybHkgY29udGFpbmluZyB0
aGUKPiAgICAgICAgICAgICAidWtkZWJ1ZyIgYW5kCj4gICAgICAgICAgICAgIMKgwqDCoCAidWti
b290IiBjaGFuZ2VzwqAgcmVxdWlyZWQgZm9yIGFybTMyKSA6Cj4gCj4gICAgICAgICAgICAgICAg
IAo+ICAgICAgICAgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo+IAo+ICAgICAgICAgICAg
ICDCoMKgwqAgIwo+ICAgICAgICAgICAgICDCoMKgwqAgIyBBdXRvbWF0aWNhbGx5IGdlbmVyYXRl
ZCBmaWxlOyBETyBOT1QgRURJVC4KPiAgICAgICAgICAgICAgwqDCoMKgICMgVW5pa3JhZnQvMC4y
fjhiOTQ2NDAgQ29uZmlndXJhdGlvbgo+ICAgICAgICAgICAgICDCoMKgwqAgIwo+IAo+ICAgICAg
ICAgICAgICDCoMKgwqAgIwo+ICAgICAgICAgICAgICDCoMKgwqAgIyBBcmNoaXRlY3R1cmUgU2Vs
ZWN0aW9uCj4gICAgICAgICAgICAgIMKgwqDCoCAjCj4gICAgICAgICAgICAgIMKgwqDCoCAjIEFS
Q0hfWDg2XzY0IGlzIG5vdCBzZXQKPiAgICAgICAgICAgICAgwqDCoMKgIEFSQ0hfQVJNXzMyPXkK
PiAgICAgICAgICAgICAgwqDCoMKgICMgTUFSQ0hfQ09SVEVYQTcgaXMgbm90IHNldAo+ICAgICAg
ICAgICAgICDCoMKgwqAgTUFSQ0hfQTIwTkVPTj15Cj4gCj4gICAgICAgICAgICAgIMKgwqDCoCAj
Cj4gICAgICAgICAgICAgIMKgwqDCoCAjIFBsYXRmb3JtIFN1cHBvcnQKPiAgICAgICAgICAgICAg
wqDCoMKgICMKPiAgICAgICAgICAgICAgwqDCoMKgIFBMQVRfWEVOPXkKPiAgICAgICAgICAgICAg
wqDCoMKgIFhFTl9EQkdFTUVSR0VOQ1k9eQo+ICAgICAgICAgICAgICDCoMKgwqAgUExBVF9MSU5V
WFU9eQo+ICAgICAgICAgICAgICDCoMKgwqAgTElOVVhVX0RFRkFVTFRfSEVBUE1CPTQKPiAKPiAg
ICAgICAgICAgICAgwqDCoMKgICMKPiAgICAgICAgICAgICAgwqDCoMKgICMgTGlicmFyeSBDb25m
aWd1cmF0aW9uCj4gICAgICAgICAgICAgIMKgwqDCoCAjCj4gICAgICAgICAgICAgIMKgwqDCoCBI
QVZFX0JPT1RFTlRSWT15Cj4gICAgICAgICAgICAgIMKgwqDCoCAjIEhBVkVfTElCQyBpcyBub3Qg
c2V0Cj4gICAgICAgICAgICAgIMKgwqDCoCAjIEhBVkVfU0NIRUQgaXMgbm90IHNldAo+ICAgICAg
ICAgICAgICDCoMKgwqAgTElCVUtCT09UPXkKPiAgICAgICAgICAgICAgwqDCoMKgIExJQlVLQk9P
VF9CQU5ORVI9eQo+ICAgICAgICAgICAgICDCoMKgwqAgTElCVUtCT09UX01BWE5CQVJHUz02MAo+
ICAgICAgICAgICAgICDCoMKgwqAgIyBMSUJVS0JPT1RfSU5JVEFMTE9DIGlzIG5vdCBzZXQKPiAg
ICAgICAgICAgICAgwqDCoMKgIExJQlVLREVCVUc9eQo+ICAgICAgICAgICAgICDCoMKgwqAgTElC
VUtERUJVR19QUklOVEs9eQo+ICAgICAgICAgICAgICDCoMKgwqAgTElCVUtERUJVR19QUklOVEQ9
eQo+ICAgICAgICAgICAgICDCoMKgwqAgIyBMSUJVS0RFQlVHX1BSSU5URF9FWFRSQSBpcyBub3Qg
c2V0Cj4gICAgICAgICAgICAgIMKgwqDCoCAjIExJQlVLREVCVUdfUFJJTlREX0lORk8gaXMgbm90
IHNldAo+ICAgICAgICAgICAgICDCoMKgwqAgIyBMSUJVS0RFQlVHX1BSSU5URF9XQVJOIGlzIG5v
dCBzZXQKPiAgICAgICAgICAgICAgwqDCoMKgIExJQlVLREVCVUdfUFJJTlREX0VSUj15Cj4gICAg
ICAgICAgICAgIMKgwqDCoCAjIExJQlVLREVCVUdfUFJJTlREX0NSSVQgaXMgbm90IHNldAo+ICAg
ICAgICAgICAgICDCoMKgwqAgIyBMSUJVS0RFQlVHX05PUkVESVIgaXMgbm90IHNldAo+ICAgICAg
ICAgICAgICDCoMKgwqAgIyBMSUJVS0RFQlVHX1JFRElSX1BSSU5URCBpcyBub3Qgc2V0Cj4gICAg
ICAgICAgICAgIMKgwqDCoCBMSUJVS0RFQlVHX1JFRElSX1BSSU5USz15Cj4gICAgICAgICAgICAg
IMKgwqDCoCBMSUJVS0RFQlVHX0VOQUJMRV9BU1NFUlQ9eQo+ICAgICAgICAgICAgICDCoMKgwqAg
TElCVUtBUkdQQVJTRT15Cj4gICAgICAgICAgICAgIMKgwqDCoCBMSUJOT0xJQkM9eQo+ICAgICAg
ICAgICAgICDCoMKgwqAgTElCVUtBTExPQz15Cj4gICAgICAgICAgICAgIMKgwqDCoCAjIExJQlVL
QUxMT0NfSUZQQUdFUyBpcyBub3Qgc2V0Cj4gICAgICAgICAgICAgIMKgwqDCoCAjIExJQlVLQUxM
T0NfSUZTVEFUUyBpcyBub3Qgc2V0Cj4gICAgICAgICAgICAgIMKgwqDCoCAjIExJQlVLQUxMT0NC
QlVERFkgaXMgbm90IHNldAo+ICAgICAgICAgICAgICDCoMKgwqAgIyBMSUJVS1NDSEVEIGlzIG5v
dCBzZXQKPiAgICAgICAgICAgICAgwqDCoMKgICMgTElCVUtTQ0hFRENPT1AgaXMgbm90IHNldAo+
ICAgICAgICAgICAgICDCoMKgwqAgTElCRkRUPXkKPiAKPiAgICAgICAgICAgICAgwqDCoMKgICMK
PiAgICAgICAgICAgICAgwqDCoMKgICMgQnVpbGQgT3B0aW9ucwo+ICAgICAgICAgICAgICDCoMKg
wqAgIwo+ICAgICAgICAgICAgICDCoMKgwqAgIyBPUFRJTUlaRV9OT05FIGlzIG5vdCBzZXQKPiAg
ICAgICAgICAgICAgwqDCoMKgIE9QVElNSVpFX1BFUkY9eQo+ICAgICAgICAgICAgICDCoMKgwqAg
IyBPUFRJTUlaRV9TSVpFIGlzIG5vdCBzZXQKPiAgICAgICAgICAgICAgwqDCoMKgICMgT1BUSU1J
WkVfREVBREVMSU0gaXMgbm90IHNldAo+ICAgICAgICAgICAgICDCoMKgwqAgIyBERUJVR19TWU1C
T0xTIGlzIG5vdCBzZXQKPiAgICAgICAgICAgICAgwqDCoMKgIE9QVElNSVpFX1NUUklQPXkKPiAg
ICAgICAgICAgICAgwqDCoMKgICMgUkVDT1JEX0JVSUxEVElNRSBpcyBub3Qgc2V0Cj4gICAgICAg
ICAgICAgIMKgwqDCoCBDUk9TU19DT01QSUxFPSIiCj4gCj4gICAgICAgICAgICAgIMKgwqDCoCAj
Cj4gICAgICAgICAgICAgIMKgwqDCoCAjIEFwcGxpY2F0aW9uIE9wdGlvbnMKPiAgICAgICAgICAg
ICAgwqDCoMKgICMKPiAgICAgICAgICAgICAgwqDCoMKgIEFQUEhFTExPV09STERfREVQRU5ERU5D
SUVTPXkKPiAgICAgICAgICAgICAgwqDCoMKgIEFQUEhFTExPV09STERfUFJJTlRBUkdTPXkKPiAg
ICAgICAgICAgICAgwqDCoMKgIFVLX05BTUU9ImhlbGxvd29ybGQiCj4gICAgICAgICAgICAgICAg
IAo+ICAgICAgICAgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo+IAo+IAo+IAo+ICAgICAg
ICAgICAgICDCoMKgwqAgSG93ZXZlciwgdXBvbiBjb21waWxhdGlvbiwgZm9sbG93aW5nIGlzIG9i
c2VydmVkIDoKPiAKPiAgICAgICAgICAgICAgICAgCj4gICAgICAgICAgICAgIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjCj4gCj4gICAgICAgICAgICAgIMKgwqDCoCBkZWJpYW5AZGViaWFuLWFybWhm
On4vdW5pa3JhZnQvYXBwcy9oZWxsb3dvcmxkJCBtYWtlCj4gICAgICAgICAgICAgIMKgwqDCoCBt
YWtlWzFdOiBFbnRlcmluZyBkaXJlY3RvcnkKPiAgICAgICAgICAgICAnL2hvbWUvZGViaWFuL3Vu
aWtyYWZ0L3VuaWtyYWZ0Jwo+ICAgICAgICAgICAgICDCoMKgwqDCoCDCoCBDUMKgwqDCoMKgwqAg
Y29uZmlnCj4gICAgICAgICAgICAgIMKgwqDCoMKgIMKgIENDwqDCoMKgwqDCoCBsaWJ4ZW5wbGF0
OiBoeXBlcnZpc29yLm8KPiAgICAgICAgICAgICAgwqDCoMKgIGNjMTogZXJyb3I6IGJhZCB2YWx1
ZSAoY29ydGV4LWE3KSBmb3IgLW1jcHUgc3dpdGNoCj4gICAgICAgICAgICAgIMKgwqDCoCBjYzE6
IGVycm9yOiBiYWQgdmFsdWUgKGNvcnRleC1hNykgZm9yIC1tdHVuZSBzd2l0Y2gKPiAgICAgICAg
ICAgICAgICAgCj4gICAgICAgICAgICAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0L3N1
cHBvcnQvYnVpbGQvTWFrZWZpbGUuYnVpbGQ6NDg6Cj4gICAgICAgICAgICAgIMKgwqDCoCByZWNp
cGUgZm9yIHRhcmdldAo+ICAgICAgICAgICAgICAgICAKPiAgICAgICAgICAgICAnL2hvbWUvZGVi
aWFuL3VuaWtyYWZ0L2FwcHMvaGVsbG93b3JsZC9idWlsZC9saWJ4ZW5wbGF0L2h5cGVydmlzb3Iu
bycKPiAgICAgICAgICAgICBmYWlsZWQKPiAgICAgICAgICAgICAgwqDCoMKgIG1ha2VbMV06ICoq
Kgo+ICAgICAgICAgICAgICAgICAKPiAgICAgICAgICAgICBbL2hvbWUvZGViaWFuL3VuaWtyYWZ0
L2FwcHMvaGVsbG93b3JsZC9idWlsZC9saWJ4ZW5wbGF0L2h5cGVydmlzb3Iub10KPiAgICAgICAg
ICAgICBFcnJvcgo+ICAgICAgICAgICAgICDCoMKgwqAgMQo+ICAgICAgICAgICAgICDCoMKgwqAg
bWFrZVsxXTogTGVhdmluZyBkaXJlY3RvcnkgJy9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFm
dCcKPiAgICAgICAgICAgICAgwqDCoMKgIE1ha2VmaWxlOjY6IHJlY2lwZSBmb3IgdGFyZ2V0ICdh
bGwnIGZhaWxlZAo+ICAgICAgICAgICAgICDCoMKgwqAgbWFrZTogKioqIFthbGxdIEVycm9yIDIK
PiAgICAgICAgICAgICAgwqDCoMKgIGRlYmlhbkBkZWJpYW4tYXJtaGY6fi91bmlrcmFmdC9hcHBz
L2hlbGxvd29ybGQkCj4gICAgICAgICAgICAgICAgIAo+ICAgICAgICAgICAgICMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIwo+IAo+IAo+IAo+IAo+ICAgICAgICAgICAgICDCoMKgwqAgU28sIHdlIHBy
b2NlZWQgdG8gcmVtb3ZlIHRoZSAtbXR1bmU9Y29ydGV4LWE3IGFuZAo+ICAgICAgICAgICAgIC1t
Y3B1PWNvcnRleC1hNwo+ICAgICAgICAgICAgICDCoMKgwqAgZmxhZ3MgZnJvbSB1bmlrcmFmdC91
bmlrcmFmdC9hcmNoL2FybS9NYWtlZmlsZS51awo+ICAgICAgICAgICAgIDxodHRwOi8vZWZpbGUu
dWs+Lgo+ICAgICAgICAgICAgICDCoMKgwqAgVGhlcmVhZnRlciwgdXBvbiByZWNvbXBpbGluZywg
d2UgZ2V0Cj4gCj4gICAgICAgICAgICAgICAgIAo+ICAgICAgICAgICAgICMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIwo+IAo+ICAgICAgICAgICAgICDCoMKgwqAgZGViaWFuQGRlYmlhbi1hcm1oZjp+
L3VuaWtyYWZ0L2FwcHMvaGVsbG93b3JsZCQgbWFrZQo+ICAgICAgICAgICAgICDCoMKgwqAgbWFr
ZVsxXTogRW50ZXJpbmcgZGlyZWN0b3J5Cj4gICAgICAgICAgICAgJy9ob21lL2RlYmlhbi91bmlr
cmFmdC91bmlrcmFmdCcKPiAgICAgICAgICAgICAgwqDCoMKgwqAgwqAgQ1DCoMKgwqDCoMKgIGNv
bmZpZwo+ICAgICAgICAgICAgICDCoMKgwqDCoCDCoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDog
aHlwZXJ2aXNvci5vCj4gICAgICAgICAgICAgIMKgwqDCoCBJbiBmaWxlIGluY2x1ZGVkIGZyb20K
PiAgICAgICAgICAgICAgwqDCoMKgIC9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdC9wbGF0
L3hlbi9oeXBlcnZpc29yLmM6NDM6MDoKPiAgICAgICAgICAgICAgICAgCj4gICAgICAgICAgICAg
L2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0L2luY2x1ZGUvdWsvYXJjaC9hdG9taWMuaDog
SW4KPiAgICAgICAgICAgICBmdW5jdGlvbgo+ICAgICAgICAgICAgICDCoMKgwqAg4oCYdWthcmNo
X3Rlc3RfYW5kX2Nscl9iaXTigJk6Cj4gICAgICAgICAgICAgICAgIAo+ICAgICAgICAgICAgIC9o
b21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6OTA6
MjoKPiAgICAgICAgICAgICAgwqDCoMKgIHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9m
IGZ1bmN0aW9uCj4gICAgICAgICAgICAg4oCYX19hdG9taWNfZmV0Y2hfYW5k4oCZCj4gICAgICAg
ICAgICAgIMKgwqDCoCBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KPiAgICAgICAg
ICAgICAgICAgCj4gICAgICAgICAgICAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0L2lu
Y2x1ZGUvdWsvYXJjaC9hdG9taWMuaDo5MDo0MDoKPiAgICAgICAgICAgICAgwqDCoMKgIGVycm9y
OiDigJhfX0FUT01JQ19SRUxBWEVE4oCZIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0aGlzCj4g
ICAgICAgICAgICAgZnVuY3Rpb24pCj4gICAgICAgICAgICAgICAgIAo+ICAgICAgICAgICAgIC9o
b21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6OTA6
NDA6Cj4gICAgICAgICAgICAgbm90ZToKPiAgICAgICAgICAgICAgwqDCoMKgIGVhY2ggdW5kZWNs
YXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVkIG9ubHkgb25jZSBmb3IKPiAgICAgICAgICAgICBl
YWNoIGZ1bmN0aW9uCj4gICAgICAgICAgICAgIMKgwqDCoCBpdCBhcHBlYXJzIGluCj4gICAgICAg
ICAgICAgICAgIAo+ICAgICAgICAgICAgIC9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdC9p
bmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6IEluCj4gICAgICAgICAgICAgZnVuY3Rpb24KPiAgICAg
ICAgICAgICAgwqDCoMKgIOKAmHVrYXJjaF90ZXN0X2FuZF9zZXRfYml04oCZOgo+ICAgICAgICAg
ICAgICAgICAKPiAgICAgICAgICAgICAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvaW5j
bHVkZS91ay9hcmNoL2F0b21pYy5oOjEwNToyOgo+ICAgICAgICAgICAgICDCoMKgwqAgd2Fybmlu
ZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24KPiAgICAgICAgICAgICDigJhfX2F0
b21pY19mZXRjaF9vcuKAmQo+ICAgICAgICAgICAgICDCoMKgwqAgWy1XaW1wbGljaXQtZnVuY3Rp
b24tZGVjbGFyYXRpb25dCj4gICAgICAgICAgICAgICAgIAo+ICAgICAgICAgICAgIC9ob21lL2Rl
Ymlhbi91bmlrcmFmdC91bmlrcmFmdC9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6MTA1OjM4Ogo+
ICAgICAgICAgICAgICDCoMKgwqAgZXJyb3I6IOKAmF9fQVRPTUlDX1JFTEFYRUTigJkgdW5kZWNs
YXJlZCAoZmlyc3QgdXNlIGluIHRoaXMKPiAgICAgICAgICAgICBmdW5jdGlvbikKPiAgICAgICAg
ICAgICAgICAgCj4gICAgICAgICAgICAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0L2lu
Y2x1ZGUvdWsvYXJjaC9hdG9taWMuaDogSW4KPiAgICAgICAgICAgICBmdW5jdGlvbgo+ICAgICAg
ICAgICAgICDCoMKgwqAg4oCYdWthcmNoX3Rlc3RfYW5kX2Nscl9iaXRfc3luY+KAmToKPiAgICAg
ICAgICAgICAgICAgCj4gICAgICAgICAgICAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0
L2luY2x1ZGUvdWsvYXJjaC9hdG9taWMuaDoxNDg6NDA6Cj4gICAgICAgICAgICAgIMKgwqDCoCBl
cnJvcjog4oCYX19BVE9NSUNfU0VRX0NTVOKAmSB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4gdGhp
cwo+ICAgICAgICAgICAgIGZ1bmN0aW9uKQo+ICAgICAgICAgICAgICAgICAKPiAgICAgICAgICAg
ICAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvaW5jbHVkZS91ay9hcmNoL2F0b21pYy5o
OiBJbgo+ICAgICAgICAgICAgIGZ1bmN0aW9uCj4gICAgICAgICAgICAgIMKgwqDCoCDigJh1a2Fy
Y2hfdGVzdF9hbmRfc2V0X2JpdF9zeW5j4oCZOgo+ICAgICAgICAgICAgICAgICAKPiAgICAgICAg
ICAgICAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvaW5jbHVkZS91ay9hcmNoL2F0b21p
Yy5oOjE2MTozODoKPiAgICAgICAgICAgICAgwqDCoMKgIGVycm9yOiDigJhfX0FUT01JQ19TRVFf
Q1NU4oCZIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0aGlzCj4gICAgICAgICAgICAgZnVuY3Rp
b24pCj4gICAgICAgICAgICAgIMKgwqDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQv
cGxhdC94ZW4vaHlwZXJ2aXNvci5jOgo+ICAgICAgICAgICAgIEluIGZ1bmN0aW9uCj4gICAgICAg
ICAgICAgIMKgwqDCoCDigJhkb19oeXBlcnZpc29yX2NhbGxiYWNr4oCZOgo+ICAgICAgICAgICAg
ICAgICAKPiAgICAgICAgICAgICAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvcGxhdC94
ZW4vaHlwZXJ2aXNvci5jOjcxOjI6Cj4gICAgICAgICAgICAgd2FybmluZzoKPiAgICAgICAgICAg
ICAgwqDCoMKgIGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmF9fYXRvbWljX2V4
Y2hhbmdlX27igJkKPiAgICAgICAgICAgICAgwqDCoMKgIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRl
Y2xhcmF0aW9uXQo+ICAgICAgICAgICAgICAgICAKPiAgICAgICAgICAgICAvaG9tZS9kZWJpYW4v
dW5pa3JhZnQvdW5pa3JhZnQvcGxhdC94ZW4vaHlwZXJ2aXNvci5jOjcxOjc6Cj4gICAgICAgICAg
ICAgZXJyb3I6Cj4gICAgICAgICAgICAgIMKgwqDCoCDigJhfX0FUT01JQ19TRVFfQ1NU4oCZIHVu
ZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0aGlzIGZ1bmN0aW9uKQo+ICAgICAgICAgICAgICAgICAK
PiAgICAgICAgICAgICAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQvc3VwcG9ydC9idWls
ZC9NYWtlZmlsZS5idWlsZDo0ODoKPiAgICAgICAgICAgICAgwqDCoMKgIHJlY2lwZSBmb3IgdGFy
Z2V0Cj4gICAgICAgICAgICAgICAgIAo+ICAgICAgICAgICAgICcvaG9tZS9kZWJpYW4vdW5pa3Jh
ZnQvYXBwcy9oZWxsb3dvcmxkL2J1aWxkL2xpYnhlbnBsYXQvaHlwZXJ2aXNvci5vJwo+ICAgICAg
ICAgICAgIGZhaWxlZAo+ICAgICAgICAgICAgICDCoMKgwqAgbWFrZVsxXTogKioqCj4gICAgICAg
ICAgICAgICAgIAo+ICAgICAgICAgICAgIFsvaG9tZS9kZWJpYW4vdW5pa3JhZnQvYXBwcy9oZWxs
b3dvcmxkL2J1aWxkL2xpYnhlbnBsYXQvaHlwZXJ2aXNvci5vXQo+ICAgICAgICAgICAgIEVycm9y
Cj4gICAgICAgICAgICAgIMKgwqDCoCAxCj4gICAgICAgICAgICAgIMKgwqDCoCBtYWtlWzFdOiBM
ZWF2aW5nIGRpcmVjdG9yeSAnL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0Jwo+ICAgICAg
ICAgICAgICDCoMKgwqAgTWFrZWZpbGU6NjogcmVjaXBlIGZvciB0YXJnZXQgJ2FsbCcgZmFpbGVk
Cj4gICAgICAgICAgICAgIMKgwqDCoCBtYWtlOiAqKiogW2FsbF0gRXJyb3IgMgo+ICAgICAgICAg
ICAgICAgICAKPiAgICAgICAgICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPiAKPiAKPiAK
PiAgICAgICAgICAgICAgwqDCoMKgIFdoYXQgYXJlIHdlIG1pc3Npbmc/Cj4gCj4gCj4gICAgICAg
ICAgICAgIMKgwqDCoCBUaGFua3MgYW5kIFJlZ2FyZHMsCj4gICAgICAgICAgICAgIMKgwqDCoCBB
amF5Cj4gCj4gCj4gICAgICAgICAgICAgIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgVGhhbmtzIGFu
ZCBSZWdhcmRzLAo+ICAgICAgICAgICAgICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIEFqYXkKPiAK
PiAKPiAKPiAgICAgICAgICAgICAgwqDCoMKgwqDCoMKgwqAgVGhhbmtzLAo+IAo+ICAgICAgICAg
ICAgICDCoMKgwqDCoMKgwqDCoCBTaW1vbgo+IAo+IAo+IAo+IAo+ICAgICAgICAgICAgICDCoMKg
wqAgLS0gwqDCoMKgIFJlZ2FyZHMsCj4gICAgICAgICAgICAgIMKgwqDCoCBBamF5Cj4gCj4gCj4g
Cj4gCj4gICAgICAgICAgICAgLS0gCj4gICAgICAgICAgICAgUmVnYXJkcywKPiAgICAgICAgICAg
ICBBamF5Cj4gCj4gCj4gCj4gCj4gLS0gCj4gUmVnYXJkcywKPiBBamF5CgpfX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBs
aXN0Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnBy
b2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 10:15:52 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 10:15:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD5qZ-0003wd-Jo; Mon, 30 Apr 2018 10:15:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fywh=ht=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fD5qX-0003wY-HR
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 10:15:49 +0000
X-Inumbo-ID: d04be8e4-4c5f-11e8-8249-2fda3a446a53
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id d04be8e4-4c5f-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 10:18:23 +0000 (UTC)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8744115AD;
 Mon, 30 Apr 2018 03:15:47 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id B82C83F587;
 Mon, 30 Apr 2018 03:15:45 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-30-git-send-email-shijie.huang@arm.com>
 <bac0b4e2-8800-6723-e103-2bd46dcda392@arm.com>
 <20180428094453.GA6298@ubuntu.shanghai.arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <76becd27-146a-a5f5-2a1f-33dca778ed9a@arm.com>
Date: Mon, 30 Apr 2018 11:15:44 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180428094453.GA6298@ubuntu.shanghai.arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 29/43] arm64: set the mapping for
 console and xenbus
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.liu2@citrix.com, wei.chen@arm.com,
 steve.capper@arm.com, vlad.babchuk@gmail.com,
 minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

CgpPbiAyOC8wNC8xOCAxMDo0NCwgSHVhbmcgU2hpamllIHdyb3RlOgo+IE9uIFRodSwgQXByIDI2
LCAyMDE4IGF0IDAyOjMxOjMyUE0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4gSGksCj4+
Cj4+IE9uIDE2LzA0LzE4IDA3OjMyLCBIdWFuZyBTaGlqaWUgd3JvdGU6Cj4+PiBUaGlzIHBhdGNo
IHNldHMgdGhlIG1hcHBpbmcgZm9yIGNvbnNvbGUgYW5kIHhlbmJ1cy4KPj4+IEp1c3QgZm9sbG93
aW5nIHdoYXQgeDg2IGRvZXM6Cj4+Pgo+Pj4gICAgIDEuKSBBZGQgVklSVF9LRVJORUxfQVJFQS9W
SVJUX0RFTUFORF9BUkVBIHRvIGxpbWl0Cj4+PiAgICAgICAgIHRoZSBtZW1vcnkgcmFuZ2VzIGZv
ciBhbGxvY192aXJ0X2tlcm5lbCgpLgo+Pj4KPj4+ICAgICAyLikgQ2hhbmdlIG1hcF9mcmFtZV92
aXJ0KCkgdG8gc2V0dXAgdGhlIHBhZ2UgdGFibGUgZm9yCj4+PiAgICAgICAgIGNvbnNvbGUgYW5k
IHhlbmJ1cy4KPj4KPj4gbWFwX2ZyYW1lX3ZpcnQgd2FzIGFscmVhZHkgaW1wbGVtZW50ZWQuIFNv
IHdoYXQncyB0aGUgZGlmZmVyZW50IHdpdGggdG9kYXk/Cj4gVGhlIG9sZCBtYXBfZnJhbWVfdmly
dCBkb2VzIG5vdCBzZXR1cCB0aGUgcGFnZSB0YWJsZSwgd2hpbGUgdGhlIG5ldyBvbmUgZG9lcy4K
Ckl0IHNob3VsZCBiZSBleHBsYWluZWQgaW4gdGhlIGNvbW1pdCBtZXNzYWdlLgoKPiAKPj4KPj4+
Cj4+PiBTaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlqaWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+
Pj4gLS0tCj4+PiAgIGFyY2gvYXJtL21tLmMgICAgICAgICB8IDQ0ICsrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKy0tLS0tCj4+PiAgIGluY2x1ZGUvYXJtL2FyY2hfbW0uaCB8
ICAyICsrCj4+PiAgIDIgZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlv
bnMoLSkKPj4+Cj4+PiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbW0uYyBiL2FyY2gvYXJtL21tLmMK
Pj4+IGluZGV4IGVkNTkxNTkuLmU4M2FjNzAgMTAwNjQ0Cj4+PiAtLS0gYS9hcmNoL2FybS9tbS5j
Cj4+PiArKysgYi9hcmNoL2FybS9tbS5jCj4+PiBAQCAtMjMzLDEyICsyMzMsMTUgQEAgdm9pZCBp
bml0X3BhZ2V0YWJsZSh1bnNpZ25lZCBsb25nICpzdGFydF9wZm4sIHVuc2lnbmVkIGxvbmcgYmFz
ZSwKPj4+ICAgICAgIGluaXRfcGFnZXRhYmxlX29rID0gMTsKPj4+ICAgfQo+Pj4gK3N0YXRpYyB1
bnNpZ25lZCBsb25nIHZpcnRfa2VybmVsX2FyZWFfZW5kOwo+Pgo+PiBOZXdsaW5lIGhlcmUgcGxl
YXNlLgo+IG9rYXkuCj4+Cj4+PiAgIHZvaWQgYXJjaF9tbV9wcmVpbml0KHZvaWQgKmR0Yl9wb2lu
dGVyKQo+Pj4gICB7Cj4+PiAgICAgICBwYWRkcl90ICoqZHRiX3AgPSBkdGJfcG9pbnRlcjsKPj4+
ICAgICAgIHBhZGRyX3QgKmR0YiA9ICpkdGJfcDsKPj4+ICAgICAgIHVpbnRwdHJfdCBlbmQgPSAo
dWludHB0cl90KSAmX2VuZDsKPj4+ICsgICAgdmlydF9rZXJuZWxfYXJlYV9lbmQgPSBWSVJUX0tF
Uk5FTF9BUkVBOwo+Pj4gKwo+Pj4gICAgICAgZHRiID0gdG9fdmlydCgoKHBhZGRyX3QpZHRiKSk7
Cj4+PiAgICAgICBmaXJzdF9mcmVlX3BmbiA9IFBGTl9VUCh0b19waHlzKGVuZCkpOwo+Pj4gICAg
ICAgbWluX21lbV9wZm4gPSBQRk5fVVAodG9fcGh5cyhfdGV4dCkgKyBNSU5fTUVNX1NJWkUpOwo+
Pj4gQEAgLTI1NCw2ICsyNTcsNDIgQEAgdm9pZCBhcmNoX21tX3ByZWluaXQodm9pZCAqZHRiX3Bv
aW50ZXIpCj4+PiAgICAgICAqZHRiX3AgPSBkdGI7Cj4+PiAgIH0KPj4+ICtzdGF0aWMgdW5zaWdu
ZWQgbG9uZyBhbGxvY192aXJ0X2tlcm5lbCh1bnNpZ25lZCBuX3BhZ2VzKQo+Pj4gK3sKPj4+ICsg
ICAgdW5zaWduZWQgbG9uZyBhZGRyOwo+Pj4gKwo+Pj4gKyAgICBhZGRyID0gdmlydF9rZXJuZWxf
YXJlYV9lbmQ7Cj4+PiArICAgIHZpcnRfa2VybmVsX2FyZWFfZW5kICs9IFBBR0VfU0laRSAqIG5f
cGFnZXM7Cj4+PiArICAgIEFTU0VSVCh2aXJ0X2tlcm5lbF9hcmVhX2VuZCA8PSBWSVJUX0RFTUFO
RF9BUkVBKTsKPj4+ICsKPj4+ICsgICAgcmV0dXJuIGFkZHI7Cj4+PiArfQo+Pgo+PiBDb3VsZG4n
dCB3ZSBtYWtlIHRoZSB2aXJ0IGFsbG9jYXRpb24gY29tbW9uIGJldHdlZW4gYXJtIGFuZCB4ODY/
Cj4gRmlyc3Qgc3RlcCwgbWFrZSBpdCBzaW1wbGUsIGp1c3QgY2hhbmdlIHRoZSBhcm0gY29kZS4g
OikKPiAKPj4KPj4+ICsKPj4+ICtzdGF0aWMgcGFkZHJfdCBhbGxvY19uZXdfcGFnZSh2b2lkKQo+
Pj4gK3sKPj4+ICsgICAgdW5zaWduZWQgbG9uZyBwYWdlOwo+Pj4gKwo+Pj4gKyAgICBwYWdlID0g
YWxsb2NfcGFnZSgpOwo+Pj4gKyAgICBpZiAoIXBhZ2UpCj4+PiArICAgICAgICBCVUcoKTsKPj4+
ICsgICAgbWVtc2V0KCh2b2lkICopcGFnZSwgMCwgUEFHRV9TSVpFKTsKPj4+ICsgICAgZHNiKGlz
aHN0KTsKPj4KPj4gV2h5IHRoZSBkc2IgaGVyZT8KPiBMZXQgdGhlIHBhZ2UgYmUgemVyb2VkLgoK
SSBzdGlsbCBkb24ndCB1bmRlcnN0YW5kIHdoeS4gV291bGQgeW91IG1pbmQgdG8gZXhwYW5kIHlv
dXIgdGhvdWdodHM/Cgo+IAo+Pgo+Pj4gKyAgICByZXR1cm4gdG9fcGh5cyhwYWdlKTsKPj4+ICt9
Cj4+PiArCj4+PiArdW5zaWduZWQgbG9uZyBtYXBfZnJhbWVfdmlydCh1bnNpZ25lZCBsb25nIG1m
bikKPj4+ICt7Cj4+PiArICAgIHVuc2lnbmVkIGxvbmcgYWRkcjsKPj4+ICsgICAgaW50IHJldDsK
Pj4+ICsKPj4+ICsgICAgYWRkciA9IGFsbG9jX3ZpcnRfa2VybmVsKDEpOwo+Pj4gKyAgICByZXQg
PSBidWlsZF9wYWdldGFibGUoYWRkciwgbWZuLCAxLCBNRU1fREVGX0FUVFIsCj4+PiArICAgICAg
ICAgICAgICAgICAgICBpbml0X3BhZ2V0YWJsZV9vaz8gYWxsb2NfbmV3X3BhZ2U6IGVhcmx5X2Fs
bG9jX3BhZ2UsIDMpOwo+Pgo+PiBUaGlzIHNtZWxsIGxpa2UgeW91IHdhbnQgdG8gaW50cm9kdWNl
IGhlbHBlci4gSXQgZG9lcyBub3QgbWFrZSBzZW5zZSBmb3IgdGhlCj4+IGNhbGxlciB0byBjYXJl
IGhvdyB0aGUgcGFnZS10YWJsZSB3aWxsIGJlIGFsbG9jYXRlZCBub3Igd2hpY2ggbGV2ZWwuCj4g
VGhlIGNhbGxlciBkb2VzIG5vdCBuZWVkIHRvIGtub3cgaG93IG1hbnkgbGV2ZWwuCgpXZWxsLCBt
YXBfZnJhbWVfdmlydCBpcyBhIGNhbGxlciBvZiBidWlsZF9wYWdldGFibGUuLi4gQW5kIHdoZW4g
SSBzZWUgCmhvdyBjYWxsZXIgYXJlIHVzaW5nIGl0IHRoZW4gSSBkbyB3b25kZXIgd2h5IGl0IGhh
cyB0byBiZSBzbyBkaWZmaWN1bHQgCnRvIHVzZS4gQ2xlYXJseSBtYXBfZnJhbWVfdmlydCBzaG91
bGQgbm90IGhhdmUgdG8gY2FyZSBob3cgdG8gYWxsb2NhdGUgCnBhZ2UtdGFibGUuCgo+IAo+IFRo
ZSBidWlsZF9wYWdldGFibGUoKSBpcyB1c2VkIGludGVybmFsbHksIGl0IGlzIG5vdCBhIEFQSSBm
dW5jdGlvbi4uCj4+Cj4+PiArICAgIEFTU0VSVChyZXQgPT0gMCk7Cj4+PiArCj4+PiArICAgIHJl
dHVybiBhZGRyOwo+Pj4gK30KPj4+ICsKPj4KPj4gV2h5IG5vdCBpbXBsZW1lbnRpbmcgdGhlIGZ1
bmN0aW9uIHdlcmUgaXQgd2FzPwo+IFdlIG5lZWQgdG8gc2V0dXAgdGhlIHBhZ2UgdGFibGUgZW50
cnkuCgpIdT8gWW91IG1vdmUgdGhlIGZ1bmN0aW9uIGVhcmxpZXIsIHNvIHN1cmVseSB5b3UgaGF2
ZSBldmVyeXRoaW5nIGluIApoYW5kLiBTbyB3aHkgaGFzIGl0IGJlZW4gbW92ZWQ/Cgo+Pgo+Pj4g
ICB2b2lkIGFyY2hfaW5pdF9tbSh1bnNpZ25lZCBsb25nICpzdGFydF9wZm5fcCwgdW5zaWduZWQg
bG9uZyAqbWF4X3Bmbl9wKQo+Pj4gICB7Cj4+PiAgICAgICBpbnQgbWVtb3J5Owo+Pj4gQEAgLTM5
NCw4ICs0MzMsMyBAQCBncmFudF9lbnRyeV92MV90ICphcmNoX2luaXRfZ250dGFiKGludCBucl9n
cmFudF9mcmFtZXMpCj4+PiAgICAgICByZXR1cm4gdG9fdmlydChnbnR0YWJfdGFibGUpOwo+Pj4g
ICB9Cj4+PiAtCj4+PiAtdW5zaWduZWQgbG9uZyBtYXBfZnJhbWVfdmlydCh1bnNpZ25lZCBsb25n
IG1mbikKPj4+IC17Cj4+PiAtICAgIHJldHVybiBtZm5fdG9fdmlydChtZm4pOwo+Pj4gLX0KPj4K
Pj4+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2FybS9hcmNoX21tLmggYi9pbmNsdWRlL2FybS9hcmNo
X21tLmgKPj4+IGluZGV4IGRiNmU3ODEuLjRmM2ZkOGYgMTAwNjQ0Cj4+PiAtLS0gYS9pbmNsdWRl
L2FybS9hcmNoX21tLmgKPj4+ICsrKyBiL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAo+Pj4gQEAgLTUs
NiArNSw4IEBAIHR5cGVkZWYgdWludDY0X3QgcGFkZHJfdDsKPj4+ICAgI2RlZmluZSBQUklwYWRk
ciAibHgiCj4+PiAgICNkZWZpbmUgTUlOX01FTV9TSVpFICAgICAgICAgICAgKDB4NDAwMDAwKQo+
Pj4gICAjZGVmaW5lIE1BWF9NRU1fU0laRSAgICAgICAgICAgICgxVUwgPDwgMzkpCj4+PiArI2Rl
ZmluZSBWSVJUX0tFUk5FTF9BUkVBICAgICAgICAoKHVuc2lnbmVkIGxvbmcpdG9fdmlydChNQVhf
TUVNX1NJWkUpKQo+Pj4gKyNkZWZpbmUgVklSVF9ERU1BTkRfQVJFQSAgICAgICAgKFZJUlRfS0VS
TkVMX0FSRUEgKyBNQVhfTUVNX1NJWkUpCj4+IEkgZG9uJ3QgdW5kZXJzdGFuZCB0aGUgcHVycG9z
ZSBvZiB0aGUgMiB2YXJpYWJsZXMgbm9yIHRoZSB2YWx1ZSB5b3UgZ2F2ZSB0bwo+PiB0aGVtLiBI
b3cgY29tZSB5b3UgYXJlIHVzaW5nIE1BWF9NRU1fU0laRSBhcyBwaHlzaWNhbCBhZGRyZXNzIHRv
IGZpbmQgdGhlCj4+IHZpcnQgYWRkcmVzcz8KPiBUaGlzIGlzIHRvIGtlZXAgYWxpZ25lZCB3aXRo
IHg4Ni4KPiBQbGVhc2UgY2hlY2sgdGhlIHg4NiBjb2RlLgoKSSBsb29rZWQgYXQgdGhlIHg4NiBj
b2RlIGFuZCBkb24ndCBzZWUgdGhlbSB0byB1c2UgTUFYX01FTV9TSVpFLiBTbyBtaW5kIApleHBs
YWluaW5nIHdoYXQncyBnb2luZyBvbj8gSSBhbSBub3QgZ29pbmcgdG8gYWNrIGEgcGF0Y2ggSSBk
b24ndCAKdW5kZXJzdGFuZC4KCkNoZWVycywKCi0tIApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5n
IGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVu
cHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 11:02:12 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 11:02:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD6ZP-0007zs-Ip; Mon, 30 Apr 2018 11:02:11 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=9iis=ht=gmail.com=ajaygargnsit@srs-us1.protection.inumbo.net>)
 id 1fD6ZN-0007zn-J0
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 11:02:09 +0000
X-Inumbo-ID: bced0a41-4c65-11e8-9728-bc764e045a96
Received: from mail-lf0-x235.google.com (unknown [2a00:1450:4010:c07::235])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id bced0a41-4c65-11e8-9728-bc764e045a96;
 Mon, 30 Apr 2018 13:00:48 +0200 (CEST)
Received: by mail-lf0-x235.google.com with SMTP id u21-v6so11544101lfu.9
 for <minios-devel@lists.xenproject.org>; Mon, 30 Apr 2018 04:02:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=oiD/n6RCsQVzGe0vbstOtKaCmfWEnCrvt0/dZM/9ZVQ=;
 b=HwR7YNeUMBzINfoetg4mHx+ydRYXP4cKc0dJ2LBzSUd27z6Qhdp9VIE0Yw+6TBU2cm
 Q9HKgx95Xj9mq0++NlgAiwFOXBQAYJUPyZPhpwKTDy+FbAGPV4XmmFciwHwaiJvdwWbB
 uTJ16RLtqqcn73YiP/at3yPIZSqaWgwfpVM+ORveeyF8AqRmrsdRQ72KzGWvzzK/7udV
 Jh7/R2SHLvmnR97T3op5XsMTyk9rxw34go7utBQBg8NdzlZoHuK+cl5TreO2cFncPFz8
 4W4vBCynfd5Kii78Vz58zBsLITvd+cZIAEdmUH7hIrlAN2OIUecQdLQfFoIcLZeA28rC
 Rj0Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=oiD/n6RCsQVzGe0vbstOtKaCmfWEnCrvt0/dZM/9ZVQ=;
 b=K9PXYwExsrU9hiCSXn3IUMODh3CcoWx8cMX+W8rf16boph8u6Scund8ljnhPSn97Bp
 5qcY52WLuVeJ8qJGUJNo2f3b27jXov7teu488PePEsh9//qqr9D3fFqrdvPdFQrWZRDi
 RF0TcZ4XeNNc7J3hVz2zyXOHHNwkhEJKgep9lVOQUU2M1lO6AcCwC43AeP1kAC2GCtBQ
 GRO0ZVpnYMDAkqKca/4aG499vjKPleREzjzDkdorI0I2AdBuZabnvOJniuqhW9X0jPwV
 Tt7upCD94fWm0GsuNzqmIKnTcYody3Xxvq1OB0ZKfx7aHduaeB+sCnaWbfwvzapKR1xY
 oalA==
X-Gm-Message-State: ALQs6tDGbzuiAziNgcdTszZVV5uJrTTHk1lPtSROVvTbHZuIY1Y24nkz
 sl+RHHTrTQs5acrEcrXjpyx50Rz6mqKYs+4qv3U=
X-Google-Smtp-Source: AB8JxZq3aeg5qYCKIQIZ28NUNiDP77LiOWh5NGvsFPOVIlsJVT+LVXb3uyhfEXEkO/tAwpyuY5TtIcWcc2twud3CwVU=
X-Received: by 2002:a19:434c:: with SMTP id
 m12-v6mr7332609lfj.120.1525086125368; 
 Mon, 30 Apr 2018 04:02:05 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:d899:0:0:0:0:0 with HTTP; Mon, 30 Apr 2018 04:02:04
 -0700 (PDT)
In-Reply-To: <b99daf41-72a9-d906-876e-ad2c4d75f86f@neclab.eu>
References: <CAHP4M8VXqRuhXSx_8URBoCEUab3Dkn_k9vb-qOD5hr4ybh9+Pg@mail.gmail.com>
 <3567abb6-2a35-4ed5-41ff-fe7804572eda@neclab.eu>
 <CAHP4M8UAL9jAQv6U5beA7R3j=ydekVPGCpnbt2VvJBQxNyrQ9g@mail.gmail.com>
 <4261cf11-3f80-078e-1908-cfdd4a841ef6@linaro.org>
 <CAHP4M8VGZYb5Tza8vrQcq9jL5g68hNxUzJMBvEuJecimk2EC1w@mail.gmail.com>
 <2a5349da-4f2d-8833-55fd-c21c26d610ba@linaro.org>
 <CAHP4M8WxD0KKGzwMBVQpge9k88BL-Zo1_0nsML0bV9_3uLb_zg@mail.gmail.com>
 <b9a24604-91fe-1218-6053-8ba18c32556c@neclab.eu>
 <CAHP4M8XPgk6+4Jrdv+L_tgKhKaj9BXNK-678sWpQ7vrRoyLpyQ@mail.gmail.com>
 <CAHP4M8XOvJrn2QKkFY4FZ-=Vm9GjEtsgqEwvbYzq0LEYnu14GQ@mail.gmail.com>
 <aed6f483-9b00-d3a1-3b8f-52c38a89eff4@neclab.eu>
 <7750bbed-442a-0511-95be-967fdf83b75a@neclab.eu>
 <CAHP4M8W0ZACvyQD6KYT5Tm=rsPav2y22ifcgT_owh0O=xtmH0w@mail.gmail.com>
 <b99daf41-72a9-d906-876e-ad2c4d75f86f@neclab.eu>
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Mon, 30 Apr 2018 16:32:04 +0530
Message-ID: <CAHP4M8VMUe=jo2mDVMC5+jRHyeK6O9vWPNMDAibvkQfcVRnbMQ@mail.gmail.com>
To: Simon Kuenzer <simon.kuenzer@neclab.eu>
Subject: Re: [Minios-devel] [Unikraft] Support for KVM on ARM
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: minios-devel@lists.xenproject.org
Content-Type: multipart/mixed; boundary="===============2691922078251935325=="
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

--===============2691922078251935325==
Content-Type: multipart/alternative; boundary="000000000000c12b76056b0ec83b"

--000000000000c12b76056b0ec83b
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Sorry, seems I lost the armv7 option amongst x86 options.
Got the hello-world app running on cubieboard2.

Sorry again for the brain-freeze ...



On Mon, Apr 30, 2018 at 3:39 PM, Simon Kuenzer <simon.kuenzer@neclab.eu>
wrote:

> Hey,
>
>
> On 30.04.2018 11:39, Ajay Garg wrote:
>
>> Thanks Simon for the help.
>>
>>
>> I did the following on my x86_64 laptop :
>>
>> ############################################################
>> ###################
>> ajay@latitude-3480:~/unikraft/apps/helloworld$ arm-linux-gnueabihf-gcc
>> --version
>> arm-linux-gnueabihf-gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.9) 5.4.0
>> 20160609
>> Copyright (C) 2015 Free Software Foundation, Inc.
>> This is free software; see the source for copying conditions.  There is =
NO
>> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
>> PURPOSE.
>>
>> ajay@latitude-3480:~/unikraft/apps/helloworld$
>> CROSS_COMPILE=3Darm-linux-gnueabihf-gcc make clean
>> make[1]: Entering directory '/home/ajay/unikraft/unikraft'
>>    CLEAN   libxenplat
>>    CLEAN   libxenbus
>>    CLEAN   libkvmplat
>>    CLEAN   liblinuxuplat
>>    CLEAN   apphelloworld
>>    CLEAN   libukboot
>>    CLEAN   libukdebug
>>    CLEAN   libukargparse
>>    CLEAN   libnolibc
>>    CLEAN   libukalloc
>>    CLEAN   libukallocbbuddy
>>    CLEAN   libfdt
>>    CLEAN   build/
>> make[1]: Leaving directory '/home/ajay/unikraft/unikraft'
>>
>> ajay@latitude-3480:~/unikraft/apps/helloworld$
>> CROSS_COMPILE=3Darm-linux-gnueabihf-gcc make menuconfig
>> ############################################################
>> ###################
>>
>> But I still do not see any arm-options :(
>>
>
> I am wondering which options did you expect to see?
>
> I think you saw already what is currently available in the menu: You
> select and configure ARM under "Architecture Selection". Afterwards you
> select your target platforms under "Platform Configuration".
>
> Did you try compiling the image?
>
>
>>
>> On Mon, Apr 30, 2018 at 2:56 PM, Simon Kuenzer <simon.kuenzer@neclab.eu
>> <mailto:simon.kuenzer@neclab.eu>> wrote:
>>
>>     On 30.04.2018 11:24, Simon Kuenzer wrote:
>>
>>         Hay Ajay,
>>
>>         you can actually do both - natively compile on ARM or doing a
>>         cross compilation. Unikraft's main makefile is able to detect
>>         this. This happens transparently. You can only influence it by
>>         setting the CROSS_COMPILE environment variable before calling
>>         make. You should need to remove the -mtune=3Dcortex-a7 and
>>         -mcpu=3Dcortex-a7 flags from
>>         unikraft/unikraft/arch/arm/Makefile.uk <http://efile.uk>.
>>
>>
>>     Sorry, a "no" was missing here: Keep the -mtune=3Dcortex-a7 and
>>     -mcpu=3Dcortex-a7 flags.
>>
>>
>>         In fact, your GCC version might be too old. Unfortunately
>>         Unikraft is not warning you yet but ARM published a patch series
>>         that is going to warn you in the future.
>>
>>         On ARM, I just tested the native compile with
>>         gcc (Debian 6.3.0-18) 6.3.0 20170516
>>
>>         I use the same for the cross compilation from x86:
>>         arm-linux-gnueabihf-gcc (Debian 6.3.0-18) 6.3.0 20170516
>>
>>         For debugging, you can have a look what is getting called with
>>         the verbose option:
>>         make V=3D1
>>
>>
>>         Thanks,
>>
>>         Simon
>>
>>         On 30.04.2018 10:27, Ajay Garg wrote:
>>
>>             https://github.com/nim-lang/Nim/issues/2620
>>             <https://github.com/nim-lang/Nim/issues/2620> suggests it
>>             might be due to (old) gcc version.
>>
>>             Any chance we can get the following via cross-compilation :
>>
>>                         * arm-options in menuconfig screen?
>>                         * actually cross-compile for arm32 in unikraft
>>             ecosystem?
>>
>>             On Mon, Apr 30, 2018 at 12:25 PM, Ajay Garg
>>             <ajaygargnsit@gmail.com <mailto:ajaygargnsit@gmail.com>
>>             <mailto:ajaygargnsit@gmail.com
>>
>>             <mailto:ajaygargnsit@gmail.com>>> wrote:
>>
>>                  Hi Simon.
>>
>>
>>
>>
>>                      Right now, you can test Unikraft with Xen on arm32.
>>             Be aware
>>                      that there is a open bug on the memory allocator
>>             for arm
>>                                 (see:https://wiki.xenproject.o
>> rg/wiki/Category:Unikraft_Users <https://wiki.xenproject.org/w
>> iki/Category:Unikraft_Users>
>>                                 <https://wiki.xenproject.org/w
>> iki/Category:Unikraft_Users
>>             <https://wiki.xenproject.org/wiki/Category:Unikraft_Users>>)=
.
>>                      arm64 with Xen is currently not supported but we
>>             working on it.
>>                      Same for KVM and baremetal.
>>
>>                      We use cubieboard2/3 for arm32 tests. These boards
>>             are even
>>                      officially supported by Debian and can run Xen.
>>
>>
>>
>>                  So we bought a cubieboard2 :)
>>
>>                  Brought the board up without xen.
>>                  Then brought the board up with xen.
>>
>>                  At this point, "sudo xl list" lists "Domain-0" fine.
>>
>>
>>                  Now, we are wanting to run the
>>             helloworld-unikraft-unikernel.
>>
>>                  To keep aside any cross-compilation issues, we are
>>             compiling on
>>                  cubieboard2 itself.
>>                  Following is the .config file (majorly containing the
>>             "ukdebug" and
>>                  "ukboot" changes  required for arm32) :
>>
>>                             ##############################
>> ###################################################
>>
>>                  #
>>                  # Automatically generated file; DO NOT EDIT.
>>                  # Unikraft/0.2~8b94640 Configuration
>>                  #
>>
>>                  #
>>                  # Architecture Selection
>>                  #
>>                  # ARCH_X86_64 is not set
>>                  ARCH_ARM_32=3Dy
>>                  # MARCH_CORTEXA7 is not set
>>                  MARCH_A20NEON=3Dy
>>
>>                  #
>>                  # Platform Support
>>                  #
>>                  PLAT_XEN=3Dy
>>                  XEN_DBGEMERGENCY=3Dy
>>                  PLAT_LINUXU=3Dy
>>                  LINUXU_DEFAULT_HEAPMB=3D4
>>
>>                  #
>>                  # Library Configuration
>>                  #
>>                  HAVE_BOOTENTRY=3Dy
>>                  # HAVE_LIBC is not set
>>                  # HAVE_SCHED is not set
>>                  LIBUKBOOT=3Dy
>>                  LIBUKBOOT_BANNER=3Dy
>>                  LIBUKBOOT_MAXNBARGS=3D60
>>                  # LIBUKBOOT_INITALLOC is not set
>>                  LIBUKDEBUG=3Dy
>>                  LIBUKDEBUG_PRINTK=3Dy
>>                  LIBUKDEBUG_PRINTD=3Dy
>>                  # LIBUKDEBUG_PRINTD_EXTRA is not set
>>                  # LIBUKDEBUG_PRINTD_INFO is not set
>>                  # LIBUKDEBUG_PRINTD_WARN is not set
>>                  LIBUKDEBUG_PRINTD_ERR=3Dy
>>                  # LIBUKDEBUG_PRINTD_CRIT is not set
>>                  # LIBUKDEBUG_NOREDIR is not set
>>                  # LIBUKDEBUG_REDIR_PRINTD is not set
>>                  LIBUKDEBUG_REDIR_PRINTK=3Dy
>>                  LIBUKDEBUG_ENABLE_ASSERT=3Dy
>>                  LIBUKARGPARSE=3Dy
>>                  LIBNOLIBC=3Dy
>>                  LIBUKALLOC=3Dy
>>                  # LIBUKALLOC_IFPAGES is not set
>>                  # LIBUKALLOC_IFSTATS is not set
>>                  # LIBUKALLOCBBUDDY is not set
>>                  # LIBUKSCHED is not set
>>                  # LIBUKSCHEDCOOP is not set
>>                  LIBFDT=3Dy
>>
>>                  #
>>                  # Build Options
>>                  #
>>                  # OPTIMIZE_NONE is not set
>>                  OPTIMIZE_PERF=3Dy
>>                  # OPTIMIZE_SIZE is not set
>>                  # OPTIMIZE_DEADELIM is not set
>>                  # DEBUG_SYMBOLS is not set
>>                  OPTIMIZE_STRIP=3Dy
>>                  # RECORD_BUILDTIME is not set
>>                  CROSS_COMPILE=3D""
>>
>>                  #
>>                  # Application Options
>>                  #
>>                  APPHELLOWORLD_DEPENDENCIES=3Dy
>>                  APPHELLOWORLD_PRINTARGS=3Dy
>>                  UK_NAME=3D"helloworld"
>>                             ##############################
>> ###################################################
>>
>>
>>
>>                  However, upon compilation, following is observed :
>>
>>                             ##############################
>> ###################################################
>>
>>                  debian@debian-armhf:~/unikraft/apps/helloworld$ make
>>                  make[1]: Entering directory
>>             '/home/debian/unikraft/unikraft'
>>                     CP      config
>>                     CC      libxenplat: hypervisor.o
>>                  cc1: error: bad value (cortex-a7) for -mcpu switch
>>                  cc1: error: bad value (cortex-a7) for -mtune switch
>>                             /home/debian/unikraft/unikraft
>> /support/build/Makefile.build:48:
>>                  recipe for target
>>                             '/home/debian/unikraft/apps/he
>> lloworld/build/libxenplat/hypervisor.o'
>>             failed
>>                  make[1]: ***
>>                             [/home/debian/unikraft/apps/he
>> lloworld/build/libxenplat/hypervisor.o]
>>             Error
>>                  1
>>                  make[1]: Leaving directory '/home/debian/unikraft/unikr=
af
>> t'
>>                  Makefile:6: recipe for target 'all' failed
>>                  make: *** [all] Error 2
>>                  debian@debian-armhf:~/unikraft/apps/helloworld$
>>                             ##############################
>> ###################################################
>>
>>
>>
>>
>>                  So, we proceed to remove the -mtune=3Dcortex-a7 and
>>             -mcpu=3Dcortex-a7
>>                  flags from unikraft/unikraft/arch/arm/Makefile.uk
>>             <http://efile.uk>.
>>
>>                  Thereafter, upon recompiling, we get
>>
>>                             ##############################
>> ###################################################
>>
>>                  debian@debian-armhf:~/unikraft/apps/helloworld$ make
>>                  make[1]: Entering directory
>>             '/home/debian/unikraft/unikraft'
>>                     CP      config
>>                     CC      libxenplat: hypervisor.o
>>                  In file included from
>>                  /home/debian/unikraft/unikraft
>> /plat/xen/hypervisor.c:43:0:
>>                             /home/debian/unikraft/unikraft/include/uk/ar=
ch/atomic.h:
>> In
>>             function
>>                  =E2=80=98ukarch_test_and_clr_bit=E2=80=99:
>>                             /home/debian/unikraft/unikraft
>> /include/uk/arch/atomic.h:90:2:
>>                  warning: implicit declaration of function
>>             =E2=80=98__atomic_fetch_and=E2=80=99
>>                  [-Wimplicit-function-declaration]
>>                             /home/debian/unikraft/unikraft
>> /include/uk/arch/atomic.h:90:40:
>>                  error: =E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (f=
irst use in this
>>             function)
>>                             /home/debian/unikraft/unikraft
>> /include/uk/arch/atomic.h:90:40:
>>             note:
>>                  each undeclared identifier is reported only once for
>>             each function
>>                  it appears in
>>                             /home/debian/unikraft/unikraft/include/uk/ar=
ch/atomic.h:
>> In
>>             function
>>                  =E2=80=98ukarch_test_and_set_bit=E2=80=99:
>>                             /home/debian/unikraft/unikraft
>> /include/uk/arch/atomic.h:105:2:
>>                  warning: implicit declaration of function
>>             =E2=80=98__atomic_fetch_or=E2=80=99
>>                  [-Wimplicit-function-declaration]
>>                             /home/debian/unikraft/unikraft
>> /include/uk/arch/atomic.h:105:38:
>>                  error: =E2=80=98__ATOMIC_RELAXED=E2=80=99 undeclared (f=
irst use in this
>>             function)
>>                             /home/debian/unikraft/unikraft/include/uk/ar=
ch/atomic.h:
>> In
>>             function
>>                  =E2=80=98ukarch_test_and_clr_bit_sync=E2=80=99:
>>                             /home/debian/unikraft/unikraft
>> /include/uk/arch/atomic.h:148:40:
>>                  error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (f=
irst use in this
>>             function)
>>                             /home/debian/unikraft/unikraft/include/uk/ar=
ch/atomic.h:
>> In
>>             function
>>                  =E2=80=98ukarch_test_and_set_bit_sync=E2=80=99:
>>                             /home/debian/unikraft/unikraft
>> /include/uk/arch/atomic.h:161:38:
>>                  error: =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (f=
irst use in this
>>             function)
>>                  /home/debian/unikraft/unikraft/plat/xen/hypervisor.c:
>>             In function
>>                  =E2=80=98do_hypervisor_callback=E2=80=99:
>>                             /home/debian/unikraft/unikraft
>> /plat/xen/hypervisor.c:71:2:
>>             warning:
>>                  implicit declaration of function =E2=80=98__atomic_exch=
ange_n=E2=80=99
>>                  [-Wimplicit-function-declaration]
>>                             /home/debian/unikraft/unikraft
>> /plat/xen/hypervisor.c:71:7:
>>             error:
>>                  =E2=80=98__ATOMIC_SEQ_CST=E2=80=99 undeclared (first us=
e in this
>> function)
>>                             /home/debian/unikraft/unikraft
>> /support/build/Makefile.build:48:
>>                  recipe for target
>>                             '/home/debian/unikraft/apps/he
>> lloworld/build/libxenplat/hypervisor.o'
>>             failed
>>                  make[1]: ***
>>                             [/home/debian/unikraft/apps/he
>> lloworld/build/libxenplat/hypervisor.o]
>>             Error
>>                  1
>>                  make[1]: Leaving directory '/home/debian/unikraft/unikr=
af
>> t'
>>                  Makefile:6: recipe for target 'all' failed
>>                  make: *** [all] Error 2
>>                             ##############################
>> ###################################################
>>
>>
>>
>>                  What are we missing?
>>
>>
>>                  Thanks and Regards,
>>                  Ajay
>>
>>
>>                          Thanks and Regards,
>>                          Ajay
>>
>>
>>
>>                      Thanks,
>>
>>                      Simon
>>
>>
>>
>>
>>                  --     Regards,
>>                  Ajay
>>
>>
>>
>>
>>             --             Regards,
>>             Ajay
>>
>>
>>
>>
>> --
>> Regards,
>> Ajay
>>
>


--=20
Regards,
Ajay

--000000000000c12b76056b0ec83b
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: base64

PGRpdiBkaXI9Imx0ciI+PGRpdj5Tb3JyeSwgc2VlbXMgSSBsb3N0IHRoZSBhcm12NyBvcHRpb24g
YW1vbmdzdCB4ODYgb3B0aW9ucy48YnI+PC9kaXY+PGRpdj5Hb3QgdGhlIGhlbGxvLXdvcmxkIGFw
cCBydW5uaW5nIG9uIGN1YmllYm9hcmQyLjxicj48YnI+PC9kaXY+U29ycnkgYWdhaW4gZm9yIHRo
ZSBicmFpbi1mcmVlemUgLi4uPGJyPjxicj48YnI+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZXh0
cmEiPjxicj48ZGl2IGNsYXNzPSJnbWFpbF9xdW90ZSI+T24gTW9uLCBBcHIgMzAsIDIwMTggYXQg
MzozOSBQTSwgU2ltb24gS3VlbnplciA8c3BhbiBkaXI9Imx0ciI+Jmx0OzxhIGhyZWY9Im1haWx0
bzpzaW1vbi5rdWVuemVyQG5lY2xhYi5ldSIgdGFyZ2V0PSJfYmxhbmsiPnNpbW9uLmt1ZW56ZXJA
bmVjbGFiLmV1PC9hPiZndDs8L3NwYW4+IHdyb3RlOjxicj48YmxvY2txdW90ZSBjbGFzcz0iZ21h
aWxfcXVvdGUiIHN0eWxlPSJtYXJnaW46MCAwIDAgLjhleDtib3JkZXItbGVmdDoxcHggI2NjYyBz
b2xpZDtwYWRkaW5nLWxlZnQ6MWV4Ij5IZXksPGRpdj48ZGl2IGNsYXNzPSJoNSI+PGJyPg0KPGJy
Pg0KT24gMzAuMDQuMjAxOCAxMTozOSwgQWpheSBHYXJnIHdyb3RlOjxicj4NCjxibG9ja3F1b3Rl
IGNsYXNzPSJnbWFpbF9xdW90ZSIgc3R5bGU9Im1hcmdpbjowIDAgMCAuOGV4O2JvcmRlci1sZWZ0
OjFweCAjY2NjIHNvbGlkO3BhZGRpbmctbGVmdDoxZXgiPg0KVGhhbmtzIFNpbW9uIGZvciB0aGUg
aGVscC48YnI+DQo8YnI+DQo8YnI+DQpJIGRpZCB0aGUgZm9sbG93aW5nIG9uIG15IHg4Nl82NCBs
YXB0b3AgOjxicj4NCjxicj4NCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIzx3YnI+IyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPHdicj4jIyMjIyMjIyMjIyMjIyMjIyMjPGJyPg0K
YWpheUBsYXRpdHVkZS0zNDgwOn4vdW5pa3JhZnQvPHdicj5hcHBzL2hlbGxvd29ybGQkIGFybS1s
aW51eC1nbnVlYWJpaGYtZ2NjIC0tdmVyc2lvbjxicj4NCmFybS1saW51eC1nbnVlYWJpaGYtZ2Nj
IChVYnVudHUvTGluYXJvIDUuNC4wLTZ1YnVudHUxfjE2LjA0LjkpIDUuNC4wIDIwMTYwNjA5PGJy
Pg0KQ29weXJpZ2h0IChDKSAyMDE1IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLjxicj4N
ClRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBzb3VyY2UgZm9yIGNvcHlpbmcgY29uZGl0
aW9ucy7CoCBUaGVyZSBpcyBOTzxicj4NCndhcnJhbnR5OyBub3QgZXZlbiBmb3IgTUVSQ0hBTlRB
QklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLjxicj4NCjxicj4NCmFq
YXlAbGF0aXR1ZGUtMzQ4MDp+L3VuaWtyYWZ0Lzx3YnI+YXBwcy9oZWxsb3dvcmxkJCBDUk9TU19D
T01QSUxFPWFybS1saW51eC1nbnVlYWI8d2JyPmloZi1nY2MgbWFrZSBjbGVhbjxicj4NCm1ha2Vb
MV06IEVudGVyaW5nIGRpcmVjdG9yeSAmIzM5Oy9ob21lL2FqYXkvdW5pa3JhZnQvdW5pa3JhZnQm
IzM5Ozxicj4NCsKgwqAgQ0xFQU7CoMKgIGxpYnhlbnBsYXQ8YnI+DQrCoMKgIENMRUFOwqDCoCBs
aWJ4ZW5idXM8YnI+DQrCoMKgIENMRUFOwqDCoCBsaWJrdm1wbGF0PGJyPg0KwqDCoCBDTEVBTsKg
wqAgbGlibGludXh1cGxhdDxicj4NCsKgwqAgQ0xFQU7CoMKgIGFwcGhlbGxvd29ybGQ8YnI+DQrC
oMKgIENMRUFOwqDCoCBsaWJ1a2Jvb3Q8YnI+DQrCoMKgIENMRUFOwqDCoCBsaWJ1a2RlYnVnPGJy
Pg0KwqDCoCBDTEVBTsKgwqAgbGlidWthcmdwYXJzZTxicj4NCsKgwqAgQ0xFQU7CoMKgIGxpYm5v
bGliYzxicj4NCsKgwqAgQ0xFQU7CoMKgIGxpYnVrYWxsb2M8YnI+DQrCoMKgIENMRUFOwqDCoCBs
aWJ1a2FsbG9jYmJ1ZGR5PGJyPg0KwqDCoCBDTEVBTsKgwqAgbGliZmR0PGJyPg0KwqDCoCBDTEVB
TsKgwqAgYnVpbGQvPGJyPg0KbWFrZVsxXTogTGVhdmluZyBkaXJlY3RvcnkgJiMzOTsvaG9tZS9h
amF5L3VuaWtyYWZ0L3VuaWtyYWZ0JiMzOTs8YnI+DQo8YnI+DQphamF5QGxhdGl0dWRlLTM0ODA6
fi91bmlrcmFmdC88d2JyPmFwcHMvaGVsbG93b3JsZCQgQ1JPU1NfQ09NUElMRT1hcm0tbGludXgt
Z251ZWFiPHdicj5paGYtZ2NjIG1ha2UgbWVudWNvbmZpZzxicj4NCiMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIzx3YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPHdicj4jIyMj
IyMjIyMjIyMjIyMjIyMjPGJyPg0KPGJyPg0KQnV0IEkgc3RpbGwgZG8gbm90IHNlZSBhbnkgYXJt
LW9wdGlvbnMgOig8YnI+DQo8L2Jsb2NrcXVvdGU+DQo8YnI+PC9kaXY+PC9kaXY+DQpJIGFtIHdv
bmRlcmluZyB3aGljaCBvcHRpb25zIGRpZCB5b3UgZXhwZWN0IHRvIHNlZT88YnI+DQo8YnI+DQpJ
IHRoaW5rIHlvdSBzYXcgYWxyZWFkeSB3aGF0IGlzIGN1cnJlbnRseSBhdmFpbGFibGUgaW4gdGhl
IG1lbnU6IFlvdSBzZWxlY3QgYW5kIGNvbmZpZ3VyZSBBUk0gdW5kZXIgJnF1b3Q7QXJjaGl0ZWN0
dXJlIFNlbGVjdGlvbiZxdW90Oy4gQWZ0ZXJ3YXJkcyB5b3Ugc2VsZWN0IHlvdXIgdGFyZ2V0IHBs
YXRmb3JtcyB1bmRlciAmcXVvdDtQbGF0Zm9ybSBDb25maWd1cmF0aW9uJnF1b3Q7Ljxicj4NCjxi
cj4NCkRpZCB5b3UgdHJ5IGNvbXBpbGluZyB0aGUgaW1hZ2U/PGJyPg0KPGJyPg0KPGJsb2NrcXVv
dGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxl
ZnQ6MXB4ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleCI+PHNwYW4gY2xhc3M9IiI+DQo8YnI+
DQo8YnI+DQpPbiBNb24sIEFwciAzMCwgMjAxOCBhdCAyOjU2IFBNLCBTaW1vbiBLdWVuemVyICZs
dDs8YSBocmVmPSJtYWlsdG86c2ltb24ua3VlbnplckBuZWNsYWIuZXUiIHRhcmdldD0iX2JsYW5r
Ij5zaW1vbi5rdWVuemVyQG5lY2xhYi5ldTwvYT4gJmx0O21haWx0bzo8YSBocmVmPSJtYWlsdG86
c2ltb24ua3VlbnplckBuZWNsYWIuZXUiIHRhcmdldD0iX2JsYW5rIj5zaW1vbi5rdWVuemVyQG5l
Y2xhYi5lPHdicj51PC9hPiZndDsmZ3Q7IHdyb3RlOjxicj4NCjxicj4NCsKgIMKgIE9uIDMwLjA0
LjIwMTggMTE6MjQsIFNpbW9uIEt1ZW56ZXIgd3JvdGU6PGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAg
SGF5IEFqYXksPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgeW91IGNhbiBhY3R1YWxseSBkbyBib3Ro
IC0gbmF0aXZlbHkgY29tcGlsZSBvbiBBUk0gb3IgZG9pbmcgYTxicj4NCsKgIMKgIMKgIMKgIGNy
b3NzIGNvbXBpbGF0aW9uLiBVbmlrcmFmdCYjMzk7cyBtYWluIG1ha2VmaWxlIGlzIGFibGUgdG8g
ZGV0ZWN0PGJyPg0KwqAgwqAgwqAgwqAgdGhpcy4gVGhpcyBoYXBwZW5zIHRyYW5zcGFyZW50bHku
IFlvdSBjYW4gb25seSBpbmZsdWVuY2UgaXQgYnk8YnI+DQrCoCDCoCDCoCDCoCBzZXR0aW5nIHRo
ZSBDUk9TU19DT01QSUxFIGVudmlyb25tZW50IHZhcmlhYmxlIGJlZm9yZSBjYWxsaW5nPGJyPg0K
wqAgwqAgwqAgwqAgbWFrZS4gWW91IHNob3VsZCBuZWVkIHRvIHJlbW92ZSB0aGUgLW10dW5lPWNv
cnRleC1hNyBhbmQ8YnI+DQrCoCDCoCDCoCDCoCAtbWNwdT1jb3J0ZXgtYTcgZmxhZ3MgZnJvbTxi
cj48L3NwYW4+DQrCoCDCoCDCoCDCoCB1bmlrcmFmdC91bmlrcmFmdC9hcmNoL2FybS9NYWs8d2Jy
PjxhIGhyZWY9Imh0dHA6Ly9lZmlsZS51ayI+ZWZpbGUudWs8L2E+ICZsdDs8YSBocmVmPSJodHRw
Oi8vZWZpbGUudWsiIHJlbD0ibm9yZWZlcnJlciIgdGFyZ2V0PSJfYmxhbmsiPmh0dHA6Ly9lZmls
ZS51azwvYT4mZ3Q7LjxzcGFuIGNsYXNzPSIiPjxicj4NCjxicj4NCjxicj4NCsKgIMKgIFNvcnJ5
LCBhICZxdW90O25vJnF1b3Q7IHdhcyBtaXNzaW5nIGhlcmU6IEtlZXAgdGhlIC1tdHVuZT1jb3J0
ZXgtYTcgYW5kPGJyPg0KwqAgwqAgLW1jcHU9Y29ydGV4LWE3IGZsYWdzLjxicj4NCjxicj4NCjxi
cj4NCsKgIMKgIMKgIMKgIEluIGZhY3QsIHlvdXIgR0NDIHZlcnNpb24gbWlnaHQgYmUgdG9vIG9s
ZC4gVW5mb3J0dW5hdGVseTxicj4NCsKgIMKgIMKgIMKgIFVuaWtyYWZ0IGlzIG5vdCB3YXJuaW5n
IHlvdSB5ZXQgYnV0IEFSTSBwdWJsaXNoZWQgYSBwYXRjaCBzZXJpZXM8YnI+DQrCoCDCoCDCoCDC
oCB0aGF0IGlzIGdvaW5nIHRvIHdhcm4geW91IGluIHRoZSBmdXR1cmUuPGJyPg0KPGJyPg0KwqAg
wqAgwqAgwqAgT24gQVJNLCBJIGp1c3QgdGVzdGVkIHRoZSBuYXRpdmUgY29tcGlsZSB3aXRoPGJy
Pg0KwqAgwqAgwqAgwqAgZ2NjIChEZWJpYW4gNi4zLjAtMTgpIDYuMy4wIDIwMTcwNTE2PGJyPg0K
PGJyPg0KwqAgwqAgwqAgwqAgSSB1c2UgdGhlIHNhbWUgZm9yIHRoZSBjcm9zcyBjb21waWxhdGlv
biBmcm9tIHg4Njo8YnI+DQrCoCDCoCDCoCDCoCBhcm0tbGludXgtZ251ZWFiaWhmLWdjYyAoRGVi
aWFuIDYuMy4wLTE4KSA2LjMuMCAyMDE3MDUxNjxicj4NCjxicj4NCsKgIMKgIMKgIMKgIEZvciBk
ZWJ1Z2dpbmcsIHlvdSBjYW4gaGF2ZSBhIGxvb2sgd2hhdCBpcyBnZXR0aW5nIGNhbGxlZCB3aXRo
PGJyPg0KwqAgwqAgwqAgwqAgdGhlIHZlcmJvc2Ugb3B0aW9uOjxicj4NCsKgIMKgIMKgIMKgIG1h
a2UgVj0xPGJyPg0KPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgVGhhbmtzLDxicj4NCjxicj4NCsKg
IMKgIMKgIMKgIFNpbW9uPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgT24gMzAuMDQuMjAxOCAxMDoy
NywgQWpheSBHYXJnIHdyb3RlOjxicj4NCjxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIDxhIGhyZWY9
Imh0dHBzOi8vZ2l0aHViLmNvbS9uaW0tbGFuZy9OaW0vaXNzdWVzLzI2MjAiIHJlbD0ibm9yZWZl
cnJlciIgdGFyZ2V0PSJfYmxhbmsiPmh0dHBzOi8vZ2l0aHViLmNvbS9uaW0tbGFuZy9OaTx3YnI+
bS9pc3N1ZXMvMjYyMDwvYT48YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCAmbHQ7PGEgaHJlZj0iaHR0
cHM6Ly9naXRodWIuY29tL25pbS1sYW5nL05pbS9pc3N1ZXMvMjYyMCIgcmVsPSJub3JlZmVycmVy
IiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly9naXRodWIuY29tL25pbS1sYW5nL048d2JyPmltL2lz
c3Vlcy8yNjIwPC9hPiZndDsgc3VnZ2VzdHMgaXQ8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCBtaWdo
dCBiZSBkdWUgdG8gKG9sZCkgZ2NjIHZlcnNpb24uPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAg
wqAgQW55IGNoYW5jZSB3ZSBjYW4gZ2V0IHRoZSBmb2xsb3dpbmcgdmlhIGNyb3NzLWNvbXBpbGF0
aW9uIDo8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
ICogYXJtLW9wdGlvbnMgaW4gbWVudWNvbmZpZyBzY3JlZW4/PGJyPg0KwqAgwqAgwqAgwqAgwqAg
wqAgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAqIGFjdHVhbGx5IGNyb3NzLWNvbXBpbGUgZm9yIGFy
bTMyIGluIHVuaWtyYWZ0PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgZWNvc3lzdGVtPzxicj4NCjxi
cj4NCsKgIMKgIMKgIMKgIMKgIMKgIE9uIE1vbiwgQXByIDMwLCAyMDE4IGF0IDEyOjI1IFBNLCBB
amF5IEdhcmc8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCAmbHQ7PGEgaHJlZj0ibWFpbHRvOmFqYXln
YXJnbnNpdEBnbWFpbC5jb20iIHRhcmdldD0iX2JsYW5rIj5hamF5Z2FyZ25zaXRAZ21haWwuY29t
PC9hPiAmbHQ7bWFpbHRvOjxhIGhyZWY9Im1haWx0bzphamF5Z2FyZ25zaXRAZ21haWwuY29tIiB0
YXJnZXQ9Il9ibGFuayI+YWpheWdhcmduc2l0QGdtYWlsLmNvbTwvYT48d2JyPiZndDs8YnI+PC9z
cGFuPg0KwqAgwqAgwqAgwqAgwqAgwqAgJmx0O21haWx0bzo8YSBocmVmPSJtYWlsdG86YWpheWdh
cmduc2l0QGdtYWlsLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmFqYXlnYXJnbnNpdEBnbWFpbC5jb208
L2E+PGRpdj48ZGl2IGNsYXNzPSJoNSI+PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgJmx0O21haWx0
bzo8YSBocmVmPSJtYWlsdG86YWpheWdhcmduc2l0QGdtYWlsLmNvbSIgdGFyZ2V0PSJfYmxhbmsi
PmFqYXlnYXJnbnNpdEBnbWFpbC5jb208L2E+PHdicj4mZ3Q7Jmd0OyZndDsgd3JvdGU6PGJyPg0K
PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgSGkgU2ltb24uPGJyPg0KPGJyPg0KPGJy
Pg0KPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqDCoMKgwqDCoCBSaWdodCBu
b3csIHlvdSBjYW4gdGVzdCBVbmlrcmFmdCB3aXRoIFhlbiBvbiBhcm0zMi48YnI+DQrCoCDCoCDC
oCDCoCDCoCDCoCBCZSBhd2FyZTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgwqDCoMKg
wqAgdGhhdCB0aGVyZSBpcyBhIG9wZW4gYnVnIG9uIHRoZSBtZW1vcnkgYWxsb2NhdG9yPGJyPg0K
wqAgwqAgwqAgwqAgwqAgwqAgZm9yIGFybTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIChzZWU6PGEgaHJlZj0iaHR0cHM6Ly93aWtpLnhlbnByb2pl
Y3Qub3JnL3dpa2kvQ2F0ZWdvcnk6VW5pa3JhZnRfVXNlcnMiIHJlbD0ibm9yZWZlcnJlciIgdGFy
Z2V0PSJfYmxhbmsiPmh0dHBzOi8vd2lraS54ZW5wcm9qZWN0Lm88d2JyPnJnL3dpa2kvQ2F0ZWdv
cnk6VW5pa3JhZnRfVXNlcjx3YnI+czwvYT4gJmx0OzxhIGhyZWY9Imh0dHBzOi8vd2lraS54ZW5w
cm9qZWN0Lm9yZy93aWtpL0NhdGVnb3J5OlVuaWtyYWZ0X1VzZXJzIiByZWw9Im5vcmVmZXJyZXIi
IHRhcmdldD0iX2JsYW5rIj5odHRwczovL3dpa2kueGVucHJvamVjdC5vcmcvdzx3YnI+aWtpL0Nh
dGVnb3J5OlVuaWtyYWZ0X1VzZXJzPC9hPiZndDs8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAmbHQ7PGEgaHJlZj0iaHR0cHM6Ly93aWtpLnhlbnBy
b2plY3Qub3JnL3dpa2kvQ2F0ZWdvcnk6VW5pa3JhZnRfVXNlcnMiIHJlbD0ibm9yZWZlcnJlciIg
dGFyZ2V0PSJfYmxhbmsiPmh0dHBzOi8vd2lraS54ZW5wcm9qZWN0Lm9yZy93PHdicj5pa2kvQ2F0
ZWdvcnk6VW5pa3JhZnRfVXNlcnM8L2E+PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgJmx0OzxhIGhy
ZWY9Imh0dHBzOi8vd2lraS54ZW5wcm9qZWN0Lm9yZy93aWtpL0NhdGVnb3J5OlVuaWtyYWZ0X1Vz
ZXJzIiByZWw9Im5vcmVmZXJyZXIiIHRhcmdldD0iX2JsYW5rIj5odHRwczovL3dpa2kueGVucHJv
amVjdC5vcmcvdzx3YnI+aWtpL0NhdGVnb3J5OlVuaWtyYWZ0X1VzZXJzPC9hPiZndDsmZ3Q7KTx3
YnI+Ljxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgwqDCoMKgwqAgYXJtNjQgd2l0aCBY
ZW4gaXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgYnV0IHdlPGJyPg0KwqAgwqAgwqAgwqAgwqAg
wqAgd29ya2luZyBvbiBpdC48YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoMKgwqDCoMKg
IFNhbWUgZm9yIEtWTSBhbmQgYmFyZW1ldGFsLjxicj4NCjxicj4NCsKgIMKgIMKgIMKgIMKgIMKg
IMKgwqDCoMKgwqDCoMKgwqAgV2UgdXNlIGN1YmllYm9hcmQyLzMgZm9yIGFybTMyIHRlc3RzLiBU
aGVzZSBib2FyZHM8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCBhcmUgZXZlbjxicj4NCsKgIMKgIMKg
IMKgIMKgIMKgIMKgwqDCoMKgwqDCoMKgwqAgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgRGViaWFu
IGFuZCBjYW4gcnVuIFhlbi48YnI+DQo8YnI+DQo8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCDCoCDC
oCDCoMKgwqDCoCBTbyB3ZSBib3VnaHQgYSBjdWJpZWJvYXJkMiA6KTxicj4NCjxicj4NCsKgIMKg
IMKgIMKgIMKgIMKgIMKgwqDCoMKgIEJyb3VnaHQgdGhlIGJvYXJkIHVwIHdpdGhvdXQgeGVuLjxi
cj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIFRoZW4gYnJvdWdodCB0aGUgYm9hcmQgdXAg
d2l0aCB4ZW4uPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgQXQgdGhpcyBw
b2ludCwgJnF1b3Q7c3VkbyB4bCBsaXN0JnF1b3Q7IGxpc3RzICZxdW90O0RvbWFpbi0wJnF1b3Q7
IGZpbmUuPGJyPg0KPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgTm93LCB3
ZSBhcmUgd2FudGluZyB0byBydW4gdGhlPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgaGVsbG93b3Js
ZC11bmlrcmFmdC11bmlrZXJuZWwuPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKg
wqAgVG8ga2VlcCBhc2lkZSBhbnkgY3Jvc3MtY29tcGlsYXRpb24gaXNzdWVzLCB3ZSBhcmU8YnI+
DQrCoCDCoCDCoCDCoCDCoCDCoCBjb21waWxpbmcgb248YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDC
oMKgwqDCoCBjdWJpZWJvYXJkMiBpdHNlbGYuPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKg
wqAgRm9sbG93aW5nIGlzIHRoZSAuY29uZmlnIGZpbGUgKG1ham9ybHkgY29udGFpbmluZyB0aGU8
YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCAmcXVvdDt1a2RlYnVnJnF1b3Q7IGFuZDxicj4NCsKgIMKg
IMKgIMKgIMKgIMKgIMKgwqDCoMKgICZxdW90O3VrYm9vdCZxdW90OyBjaGFuZ2VzwqAgcmVxdWly
ZWQgZm9yIGFybTMyKSA6PGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPHdicj4jIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyM8d2JyPiMjIyMjIyMjIyMjIyMjIyMjIyMjIzxicj4NCjxicj4N
CsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgICM8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKg
wqDCoCAjIEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZpbGU7IERPIE5PVCBFRElULjxicj4NCsKg
IMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgICMgVW5pa3JhZnQvMC4yfjhiOTQ2NDAgQ29uZmlndXJh
dGlvbjxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgICM8YnI+DQo8YnI+DQrCoCDCoCDC
oCDCoCDCoCDCoCDCoMKgwqDCoCAjPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgIyBB
cmNoaXRlY3R1cmUgU2VsZWN0aW9uPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgIzxi
cj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgICMgQVJDSF9YODZfNjQgaXMgbm90IHNldDxi
cj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIEFSQ0hfQVJNXzMyPXk8YnI+DQrCoCDCoCDC
oCDCoCDCoCDCoCDCoMKgwqDCoCAjIE1BUkNIX0NPUlRFWEE3IGlzIG5vdCBzZXQ8YnI+DQrCoCDC
oCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBNQVJDSF9BMjBORU9OPXk8YnI+DQo8YnI+DQrCoCDCoCDC
oCDCoCDCoCDCoCDCoMKgwqDCoCAjPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgIyBQ
bGF0Zm9ybSBTdXBwb3J0PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgIzxicj4NCsKg
IMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIFBMQVRfWEVOPXk8YnI+DQrCoCDCoCDCoCDCoCDCoCDC
oCDCoMKgwqDCoCBYRU5fREJHRU1FUkdFTkNZPXk8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKg
wqDCoCBQTEFUX0xJTlVYVT15PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgTElOVVhV
X0RFRkFVTFRfSEVBUE1CPTQ8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAj
PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgIyBMaWJyYXJ5IENvbmZpZ3VyYXRpb248
YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAjPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAg
wqDCoMKgwqAgSEFWRV9CT09URU5UUlk9eTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKg
ICMgSEFWRV9MSUJDIGlzIG5vdCBzZXQ8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAj
IEhBVkVfU0NIRUQgaXMgbm90IHNldDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIExJ
QlVLQk9PVD15PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgTElCVUtCT09UX0JBTk5F
Uj15PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgTElCVUtCT09UX01BWE5CQVJHUz02
MDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgICMgTElCVUtCT09UX0lOSVRBTExPQyBp
cyBub3Qgc2V0PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgTElCVUtERUJVRz15PGJy
Pg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgTElCVUtERUJVR19QUklOVEs9eTxicj4NCsKg
IMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIExJQlVLREVCVUdfUFJJTlREPXk8YnI+DQrCoCDCoCDC
oCDCoCDCoCDCoCDCoMKgwqDCoCAjIExJQlVLREVCVUdfUFJJTlREX0VYVFJBIGlzIG5vdCBzZXQ8
YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAjIExJQlVLREVCVUdfUFJJTlREX0lORk8g
aXMgbm90IHNldDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgICMgTElCVUtERUJVR19Q
UklOVERfV0FSTiBpcyBub3Qgc2V0PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgTElC
VUtERUJVR19QUklOVERfRVJSPXk8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAjIExJ
QlVLREVCVUdfUFJJTlREX0NSSVQgaXMgbm90IHNldDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKg
wqDCoMKgICMgTElCVUtERUJVR19OT1JFRElSIGlzIG5vdCBzZXQ8YnI+DQrCoCDCoCDCoCDCoCDC
oCDCoCDCoMKgwqDCoCAjIExJQlVLREVCVUdfUkVESVJfUFJJTlREIGlzIG5vdCBzZXQ8YnI+DQrC
oCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBMSUJVS0RFQlVHX1JFRElSX1BSSU5USz15PGJyPg0K
wqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgTElCVUtERUJVR19FTkFCTEVfQVNTRVJUPXk8YnI+
DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBMSUJVS0FSR1BBUlNFPXk8YnI+DQrCoCDCoCDC
oCDCoCDCoCDCoCDCoMKgwqDCoCBMSUJOT0xJQkM9eTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKg
wqDCoMKgIExJQlVLQUxMT0M9eTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgICMgTElC
VUtBTExPQ19JRlBBR0VTIGlzIG5vdCBzZXQ8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDC
oCAjIExJQlVLQUxMT0NfSUZTVEFUUyBpcyBub3Qgc2V0PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAg
wqDCoMKgwqAgIyBMSUJVS0FMTE9DQkJVRERZIGlzIG5vdCBzZXQ8YnI+DQrCoCDCoCDCoCDCoCDC
oCDCoCDCoMKgwqDCoCAjIExJQlVLU0NIRUQgaXMgbm90IHNldDxicj4NCsKgIMKgIMKgIMKgIMKg
IMKgIMKgwqDCoMKgICMgTElCVUtTQ0hFRENPT1AgaXMgbm90IHNldDxicj4NCsKgIMKgIMKgIMKg
IMKgIMKgIMKgwqDCoMKgIExJQkZEVD15PGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDC
oMKgwqAgIzxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgICMgQnVpbGQgT3B0aW9uczxi
cj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgICM8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDC
oMKgwqDCoCAjIE9QVElNSVpFX05PTkUgaXMgbm90IHNldDxicj4NCsKgIMKgIMKgIMKgIMKgIMKg
IMKgwqDCoMKgIE9QVElNSVpFX1BFUkY9eTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKg
ICMgT1BUSU1JWkVfU0laRSBpcyBub3Qgc2V0PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKg
wqAgIyBPUFRJTUlaRV9ERUFERUxJTSBpcyBub3Qgc2V0PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAg
wqDCoMKgwqAgIyBERUJVR19TWU1CT0xTIGlzIG5vdCBzZXQ8YnI+DQrCoCDCoCDCoCDCoCDCoCDC
oCDCoMKgwqDCoCBPUFRJTUlaRV9TVFJJUD15PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKg
wqAgIyBSRUNPUkRfQlVJTERUSU1FIGlzIG5vdCBzZXQ8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDC
oMKgwqDCoCBDUk9TU19DT01QSUxFPSZxdW90OyZxdW90Ozxicj4NCjxicj4NCsKgIMKgIMKgIMKg
IMKgIMKgIMKgwqDCoMKgICM8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAjIEFwcGxp
Y2F0aW9uIE9wdGlvbnM8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAjPGJyPg0KwqAg
wqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgQVBQSEVMTE9XT1JMRF9ERVBFTkRFTkNJRVM9eTxicj4N
CsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIEFQUEhFTExPV09STERfUFJJTlRBUkdTPXk8YnI+
DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBVS19OQU1FPSZxdW90O2hlbGxvd29ybGQmcXVv
dDs8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8d2JyPiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
Izx3YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMjPGJyPg0KPGJyPg0KPGJyPg0KPGJyPg0KwqAgwqAg
wqAgwqAgwqAgwqAgwqDCoMKgwqAgSG93ZXZlciwgdXBvbiBjb21waWxhdGlvbiwgZm9sbG93aW5n
IGlzIG9ic2VydmVkIDo8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8d2JyPiMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIzx3YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMjPGJyPg0KPGJyPg0K
wqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgZGViaWFuQGRlYmlhbi1hcm1oZjp+L3VuaWtyYWZ0
PHdicj4vYXBwcy9oZWxsb3dvcmxkJCBtYWtlPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKg
wqAgbWFrZVsxXTogRW50ZXJpbmcgZGlyZWN0b3J5PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgJiMz
OTsvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZjx3YnI+dCYjMzk7PGJyPg0KwqAgwqAgwqAg
wqAgwqAgwqAgwqDCoMKgwqDCoCDCoCBDUMKgwqDCoMKgwqAgY29uZmlnPGJyPg0KwqAgwqAgwqAg
wqAgwqAgwqAgwqDCoMKgwqDCoCDCoCBDQ8KgwqDCoMKgwqAgbGlieGVucGxhdDogaHlwZXJ2aXNv
ci5vPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgY2MxOiBlcnJvcjogYmFkIHZhbHVl
IChjb3J0ZXgtYTcpIGZvciAtbWNwdSBzd2l0Y2g8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKg
wqDCoCBjYzE6IGVycm9yOiBiYWQgdmFsdWUgKGNvcnRleC1hNykgZm9yIC1tdHVuZSBzd2l0Y2g8
YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAvaG9tZS9kZWJp
YW4vdW5pa3JhZnQvdW5pa3JhZnQ8d2JyPi9zdXBwb3J0L2J1aWxkL01ha2VmaWxlLmJ1aWxkOjx3
YnI+NDg6PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgcmVjaXBlIGZvciB0YXJnZXQ8
YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAmIzM5Oy9ob21l
L2RlYmlhbi91bmlrcmFmdC9hcHBzL2hlPHdicj5sbG93b3JsZC9idWlsZC9saWJ4ZW5wbGF0L2h5
cGU8d2JyPnJ2aXNvci5vJiMzOTs8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCBmYWlsZWQ8YnI+DQrC
oCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBtYWtlWzFdOiAqKio8YnI+DQrCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBbL2hvbWUvZGViaWFuL3VuaWtyYWZ0L2FwcHMv
aGU8d2JyPmxsb3dvcmxkL2J1aWxkL2xpYnhlbnBsYXQvaHlwZTx3YnI+cnZpc29yLm9dPGJyPg0K
wqAgwqAgwqAgwqAgwqAgwqAgRXJyb3I8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAx
PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgbWFrZVsxXTogTGVhdmluZyBkaXJlY3Rv
cnkgJiMzOTsvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZjx3YnI+dCYjMzk7PGJyPg0KwqAg
wqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgTWFrZWZpbGU6NjogcmVjaXBlIGZvciB0YXJnZXQgJiMz
OTthbGwmIzM5OyBmYWlsZWQ8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBtYWtlOiAq
KiogW2FsbF0gRXJyb3IgMjxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIGRlYmlhbkBk
ZWJpYW4tYXJtaGY6fi91bmlrcmFmdDx3YnI+L2FwcHMvaGVsbG93b3JsZCQ8YnI+DQrCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyM8d2JyPiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIzx3YnI+IyMjIyMjIyMj
IyMjIyMjIyMjIyMjPGJyPg0KPGJyPg0KPGJyPg0KPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAg
wqAgwqDCoMKgwqAgU28sIHdlIHByb2NlZWQgdG8gcmVtb3ZlIHRoZSAtbXR1bmU9Y29ydGV4LWE3
IGFuZDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIC1tY3B1PWNvcnRleC1hNzxicj4NCsKgIMKgIMKg
IMKgIMKgIMKgIMKgwqDCoMKgIGZsYWdzIGZyb20gdW5pa3JhZnQvdW5pa3JhZnQvYXJjaC9hcm0v
TWFrPHdicj48YSBocmVmPSJodHRwOi8vZWZpbGUudWsiPmVmaWxlLnVrPC9hPjxicj48L2Rpdj48
L2Rpdj4NCsKgIMKgIMKgIMKgIMKgIMKgICZsdDs8YSBocmVmPSJodHRwOi8vZWZpbGUudWsiIHJl
bD0ibm9yZWZlcnJlciIgdGFyZ2V0PSJfYmxhbmsiPmh0dHA6Ly9lZmlsZS51azwvYT4mZ3Q7Ljxk
aXY+PGRpdiBjbGFzcz0iaDUiPjxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIFRoZXJl
YWZ0ZXIsIHVwb24gcmVjb21waWxpbmcsIHdlIGdldDxicj4NCjxicj4NCsKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
Izx3YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPHdicj4jIyMjIyMjIyMjIyMjIyMj
IyMjIyM8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBkZWJpYW5AZGViaWFu
LWFybWhmOn4vdW5pa3JhZnQ8d2JyPi9hcHBzL2hlbGxvd29ybGQkIG1ha2U8YnI+DQrCoCDCoCDC
oCDCoCDCoCDCoCDCoMKgwqDCoCBtYWtlWzFdOiBFbnRlcmluZyBkaXJlY3Rvcnk8YnI+DQrCoCDC
oCDCoCDCoCDCoCDCoCAmIzM5Oy9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmPHdicj50JiMz
OTs8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoMKgIMKgIENQwqDCoMKgwqDCoCBjb25m
aWc8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoMKgIMKgIENDwqDCoMKgwqDCoCBsaWJ4
ZW5wbGF0OiBoeXBlcnZpc29yLm88YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBJbiBm
aWxlIGluY2x1ZGVkIGZyb208YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAvaG9tZS9k
ZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQ8d2JyPi9wbGF0L3hlbi9oeXBlcnZpc29yLmM6NDM6MDo8
YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAvaG9tZS9kZWJp
YW4vdW5pa3JhZnQvdW5pa3JhZnQ8d2JyPi9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6IEluPGJy
Pg0KwqAgwqAgwqAgwqAgwqAgwqAgZnVuY3Rpb248YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKg
wqDCoCDigJh1a2FyY2hfdGVzdF9hbmRfY2xyX2JpdOKAmTo8YnI+DQrCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQ8
d2JyPi9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6OTA6PHdicj4yOjxicj4NCsKgIMKgIMKgIMKg
IMKgIMKgIMKgwqDCoMKgIHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9u
PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAg4oCYX19hdG9taWNfZmV0Y2hfYW5k4oCZPGJyPg0KwqAg
wqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpPHdi
cj5vbl08YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAvaG9t
ZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQ8d2JyPi9pbmNsdWRlL3VrL2FyY2gvYXRvbWljLmg6
OTA6PHdicj40MDo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBlcnJvcjog4oCYX19B
VE9NSUNfUkVMQVhFROKAmSB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4gdGhpczxicj4NCsKgIMKg
IMKgIMKgIMKgIMKgIGZ1bmN0aW9uKTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIC9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdDx3YnI+L2luY2x1ZGUv
dWsvYXJjaC9hdG9taWMuaDo5MDo8d2JyPjQwOjxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIG5vdGU6
PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgZWFjaCB1bmRlY2xhcmVkIGlkZW50aWZp
ZXIgaXMgcmVwb3J0ZWQgb25seSBvbmNlIGZvcjxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIGVhY2gg
ZnVuY3Rpb248YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBpdCBhcHBlYXJzIGluPGJy
Pg0KwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgL2hvbWUvZGViaWFu
L3VuaWtyYWZ0L3VuaWtyYWZ0PHdicj4vaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oOiBJbjxicj4N
CsKgIMKgIMKgIMKgIMKgIMKgIGZ1bmN0aW9uPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKg
wqAg4oCYdWthcmNoX3Rlc3RfYW5kX3NldF9iaXTigJk6PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0PHdi
cj4vaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oOjEwNTo8d2JyPjI6PGJyPg0KwqAgwqAgwqAgwqAg
wqAgwqAgwqDCoMKgwqAgd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb248
YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDigJhfX2F0b21pY19mZXRjaF9vcuKAmTxicj4NCsKgIMKg
IMKgIMKgIMKgIMKgIMKgwqDCoMKgIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aTx3YnI+
b25dPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgL2hvbWUv
ZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0PHdicj4vaW5jbHVkZS91ay9hcmNoL2F0b21pYy5oOjEw
NTo8d2JyPjM4Ojxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIGVycm9yOiDigJhfX0FU
T01JQ19SRUxBWEVE4oCZIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0aGlzPGJyPg0KwqAgwqAg
wqAgwqAgwqAgwqAgZnVuY3Rpb24pPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgwqAgwqAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0PHdicj4vaW5jbHVkZS91
ay9hcmNoL2F0b21pYy5oOiBJbjxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIGZ1bmN0aW9uPGJyPg0K
wqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAg4oCYdWthcmNoX3Rlc3RfYW5kX2Nscl9iaXRfc3lu
Y+KAmTx3YnI+Ojxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IC9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdDx3YnI+L2luY2x1ZGUvdWsvYXJjaC9hdG9t
aWMuaDoxNDg6PHdicj40MDo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBlcnJvcjog
4oCYX19BVE9NSUNfU0VRX0NTVOKAmSB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4gdGhpczxicj4N
CsKgIMKgIMKgIMKgIMKgIMKgIGZ1bmN0aW9uKTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIC9ob21lL2RlYmlhbi91bmlrcmFmdC91bmlrcmFmdDx3YnI+L2lu
Y2x1ZGUvdWsvYXJjaC9hdG9taWMuaDogSW48YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCBmdW5jdGlv
bjxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIOKAmHVrYXJjaF90ZXN0X2FuZF9zZXRf
Yml0X3N5bmPigJk8d2JyPjo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQ8d2JyPi9pbmNsdWRlL3VrL2Fy
Y2gvYXRvbWljLmg6MTYxOjx3YnI+Mzg6PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAg
ZXJyb3I6IOKAmF9fQVRPTUlDX1NFUV9DU1TigJkgdW5kZWNsYXJlZCAoZmlyc3QgdXNlIGluIHRo
aXM8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCBmdW5jdGlvbik8YnI+DQrCoCDCoCDCoCDCoCDCoCDC
oCDCoMKgwqDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQ8d2JyPi9wbGF0L3hlbi9o
eXBlcnZpc29yLmM6PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgSW4gZnVuY3Rpb248YnI+DQrCoCDC
oCDCoCDCoCDCoCDCoCDCoMKgwqDCoCDigJhkb19oeXBlcnZpc29yX2NhbGxiYWNr4oCZOjxicj4N
CsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIC9ob21lL2RlYmlhbi91
bmlrcmFmdC91bmlrcmFmdDx3YnI+L3BsYXQveGVuL2h5cGVydmlzb3IuYzo3MToyOjxicj4NCsKg
IMKgIMKgIMKgIMKgIMKgIHdhcm5pbmc6PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAg
aW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYX19hdG9taWNfZXhjaGFuZ2VfbuKA
mTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqDCoMKgIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRl
Y2xhcmF0aTx3YnI+b25dPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgwqAgL2hvbWUvZGViaWFuL3VuaWtyYWZ0L3VuaWtyYWZ0PHdicj4vcGxhdC94ZW4vaHlwZXJ2
aXNvci5jOjcxOjc6PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgZXJyb3I6PGJyPg0KwqAgwqAgwqAg
wqAgwqAgwqAgwqDCoMKgwqAg4oCYX19BVE9NSUNfU0VRX0NTVOKAmSB1bmRlY2xhcmVkIChmaXJz
dCB1c2UgaW4gdGhpcyBmdW5jdGlvbik8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCAvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5pa3JhZnQ8d2JyPi9zdXBwb3J0
L2J1aWxkL01ha2VmaWxlLmJ1aWxkOjx3YnI+NDg6PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDC
oMKgwqAgcmVjaXBlIGZvciB0YXJnZXQ8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCAmIzM5Oy9ob21lL2RlYmlhbi91bmlrcmFmdC9hcHBzL2hlPHdicj5sbG93
b3JsZC9idWlsZC9saWJ4ZW5wbGF0L2h5cGU8d2JyPnJ2aXNvci5vJiMzOTs8YnI+DQrCoCDCoCDC
oCDCoCDCoCDCoCBmYWlsZWQ8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBtYWtlWzFd
OiAqKio8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBbL2hv
bWUvZGViaWFuL3VuaWtyYWZ0L2FwcHMvaGU8d2JyPmxsb3dvcmxkL2J1aWxkL2xpYnhlbnBsYXQv
aHlwZTx3YnI+cnZpc29yLm9dPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgRXJyb3I8YnI+DQrCoCDC
oCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAxPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAg
bWFrZVsxXTogTGVhdmluZyBkaXJlY3RvcnkgJiMzOTsvaG9tZS9kZWJpYW4vdW5pa3JhZnQvdW5p
a3JhZjx3YnI+dCYjMzk7PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqAgTWFrZWZpbGU6
NjogcmVjaXBlIGZvciB0YXJnZXQgJiMzOTthbGwmIzM5OyBmYWlsZWQ8YnI+DQrCoCDCoCDCoCDC
oCDCoCDCoCDCoMKgwqDCoCBtYWtlOiAqKiogW2FsbF0gRXJyb3IgMjxicj4NCsKgIMKgIMKgIMKg
IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIzx3YnI+IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPHdicj4jIyMjIyMjIyMjIyMj
IyMjIyMjIyM8YnI+DQo8YnI+DQo8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDC
oCBXaGF0IGFyZSB3ZSBtaXNzaW5nPzxicj4NCjxicj4NCjxicj4NCsKgIMKgIMKgIMKgIMKgIMKg
IMKgwqDCoMKgIFRoYW5rcyBhbmQgUmVnYXJkcyw8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKg
wqDCoCBBamF5PGJyPg0KPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgIFRoYW5rcyBhbmQgUmVnYXJkcyw8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgQWpheTxicj4NCjxicj4NCjxicj4NCjxicj4NCsKgIMKg
IMKgIMKgIMKgIMKgIMKgwqDCoMKgwqDCoMKgwqAgVGhhbmtzLDxicj4NCjxicj4NCsKgIMKgIMKg
IMKgIMKgIMKgIMKgwqDCoMKgwqDCoMKgwqAgU2ltb248YnI+DQo8YnI+DQo8YnI+DQo8YnI+DQo8
YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCAtLSDCoMKgwqAgUmVnYXJkcyw8YnI+DQrC
oCDCoCDCoCDCoCDCoCDCoCDCoMKgwqDCoCBBamF5PGJyPg0KPGJyPg0KPGJyPg0KPGJyPg0KPGJy
Pg0KwqAgwqAgwqAgwqAgwqAgwqAgLS3CoCDCoCDCoCDCoCDCoCDCoCDCoFJlZ2FyZHMsPGJyPg0K
wqAgwqAgwqAgwqAgwqAgwqAgQWpheTxicj4NCjxicj4NCjxicj4NCjxicj4NCjxicj4NCi0tIDxi
cj4NClJlZ2FyZHMsPGJyPg0KQWpheTxicj4NCjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT4NCjwv
YmxvY2txdW90ZT48L2Rpdj48YnI+PGJyIGNsZWFyPSJhbGwiPjxicj4tLSA8YnI+PGRpdiBjbGFz
cz0iZ21haWxfc2lnbmF0dXJlIiBkYXRhLXNtYXJ0bWFpbD0iZ21haWxfc2lnbmF0dXJlIj5SZWdh
cmRzLDxicj5BamF5PGJyPjwvZGl2Pg0KPC9kaXY+DQo=
--000000000000c12b76056b0ec83b--


--===============2691922078251935325==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRl
dmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6
Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

--===============2691922078251935325==--


From minios-devel-bounces@lists.xenproject.org Mon Apr 30 12:40:08 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 12:40:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD86A-0006zS-B9; Mon, 30 Apr 2018 12:40:06 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=6+tk=ht=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fD869-0006sz-CP
 for minios-devel@lists.xen.org; Mon, 30 Apr 2018 12:40:05 +0000
X-Inumbo-ID: 6a039bbb-4c73-11e8-9728-bc764e045a96
Received: from mailer1.neclab.eu (unknown [195.37.70.40])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 6a039bbb-4c73-11e8-9728-bc764e045a96;
 Mon, 30 Apr 2018 14:38:43 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer1.neclab.eu (Postfix) with ESMTP id 957AD1042EB;
 Mon, 30 Apr 2018 14:39:59 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (netlab.nec.de)
Received: from mailer1.neclab.eu ([127.0.0.1])
 by localhost (atlas-a.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id SgT8KhBSTz8E; Mon, 30 Apr 2018 14:39:59 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer1.neclab.eu (Postfix) with ESMTPS id 718521042E9;
 Mon, 30 Apr 2018 14:39:55 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 30 Apr
 2018 14:39:55 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522941678-21179-2-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <9d661ec2-0978-99e2-fc0e-31659e4c9424@neclab.eu>
Date: Mon, 30 Apr 2018 14:39:54 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522941678-21179-2-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 1/3] plat/kvm: cleanup - remove
 setup.h
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

UmV2aWV3ZWQtYnk6IFNpbW9uIEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1PgoKT24g
MDUuMDQuMjAxOCAxNzoyMSwgQ29zdGluIEx1cHUgd3JvdGU6Cj4gU2lnbmVkLW9mZi1ieTogQ29z
dGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPiAtLS0KPiAgIHBsYXQva3ZtL2luY2x1
ZGUva3ZtL3NldHVwLmggfCA0OCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQo+ICAgcGxhdC9rdm0veDg2L3NldHVwLmMgICAgICAgICB8IDEwICsrKystLS0tLQo+
ICAgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUzIGRlbGV0aW9ucygtKQo+ICAg
ZGVsZXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL2luY2x1ZGUva3ZtL3NldHVwLmgKPiAKPiBkaWZm
IC0tZ2l0IGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0vc2V0dXAuaCBiL3BsYXQva3ZtL2luY2x1ZGUv
a3ZtL3NldHVwLmgKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCBkNjY0ZWU0Li4w
MDAwMDAwCj4gLS0tIGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0vc2V0dXAuaAo+ICsrKyAvZGV2L251
bGwKPiBAQCAtMSw0OCArMCwwIEBACj4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0Mg
Ki8KPiAtLyoKPiAtICogQXV0aG9yczogRGFuIFdpbGxpYW1zCj4gLSAqICAgICAgICAgIFJpY2Fy
ZG8gS29sbGVyCj4gLSAqICAgICAgICAgIE1hcnRpbiBMdWNpbmEKPiAtICogICAgICAgICAgV2Vp
IENoZW4KPiAtICogICAgICAgICAgRmVsaXBlIEh1aWNpIDxmZWxpcGUuaHVpY2lAbmVjbGFiLmV1
Pgo+IC0gKgo+IC0gKiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNyBJQk0KPiAtICogQ29weXJpZ2h0
IChjKSAyMDE2LTIwMTcgRG9ja2VyLCBJbmMuCj4gLSAqIENvcHlyaWdodCAoYykgMjAxNyBBUk0g
THRkLgo+IC0gKiBDb3B5cmlnaHQgKGMpIDIwMTcgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9y
YXRpb24KPiAtICoKPiAtICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kL29y
IGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZQo+IC0gKiBmb3IgYW55IHB1cnBvc2Ugd2l0aCBvciB3
aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQKPiAtICogdGhhdCB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIKPiAt
ICogaW4gYWxsIGNvcGllcy4KPiAtICoKPiAtICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJB
UyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAo+IC0gKiBXQVJSQU5USUVTIFdJVEgg
UkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVECj4gLSAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUKPiAtICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJF
Q1QsIE9SCj4gLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFUU09F
VkVSIFJFU1VMVElORyBGUk9NIExPU1MKPiAtICogT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdI
RVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULAo+IC0gKiBORUdMSUdFTkNFIE9SIE9USEVS
IFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4KPiAtICogQ09OTkVDVElPTiBX
SVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KPiAtICovCj4gLQo+
IC0jaW5jbHVkZSA8aW50dHlwZXMuaD4KPiAtI2luY2x1ZGUgPHVrL2Fzc2VydC5oPgo+IC0jaW5j
bHVkZSA8dWsvZXNzZW50aWFscy5oPgo+IC0KPiAtLyogYWxpZ25tZW50IG1hY3JvcyAqLwo+IC0j
ZGVmaW5lIEFMSUdOXzRLIF9fYWxpZ24oMHgxMDAwKQo+IC0jZGVmaW5lIEFMSUdOXzY0X0JJVCBf
X2FsaWduKDB4OCkKPiAtCj4gLS8qIGNvbnZlbmllbnQgbWFjcm8gc3RyaW5naWZpY2F0aW9uICov
Cj4gLSNkZWZpbmUgU1RSX0VYUEFORCh5KSAjeQo+IC0jZGVmaW5lIFNUUih4KSBTVFJfRVhQQU5E
KHgpCj4gLQo+IC0jZGVmaW5lIGFzc2VydChlKSBVS19BU1NFUlQoZSkKPiAtI2RlZmluZSBQQU5J
QyhzKSBhc3NlcnQoZSkgLy9rbHVkZ2UhCj4gLQo+IC0vKiBwbGF0Zm9ybS5jOiBwbGF0Zm9ybSBp
bmNsdWRlcyAqLwo+IC12b2lkIHBsYXRmb3JtX2luaXQodm9pZCAqYXJnKTsKPiAtY2hhciAqcGxh
dGZvcm1fY21kbGluZSh2b2lkKTsKPiAtdWludDY0X3QgcGxhdGZvcm1fbWVtX3NpemUodm9pZCk7
Cj4gLXZvaWQgcGxhdGZvcm1fZXhpdCh2b2lkKSBfX2F0dHJpYnV0ZV9fKChub3JldHVybikpOwo+
IGRpZmYgLS1naXQgYS9wbGF0L2t2bS94ODYvc2V0dXAuYyBiL3BsYXQva3ZtL3g4Ni9zZXR1cC5j
Cj4gaW5kZXggNjg5NWYyOS4uOTZkODBlOSAxMDA2NDQKPiAtLS0gYS9wbGF0L2t2bS94ODYvc2V0
dXAuYwo+ICsrKyBiL3BsYXQva3ZtL3g4Ni9zZXR1cC5jCj4gQEAgLTI3LDEyICsyNywxMiBAQAo+
ICAgICovCj4gICAKPiAgICNpbmNsdWRlIDxzdHJpbmcuaD4KPiAtI2luY2x1ZGUgPGt2bS9zZXR1
cC5oPgo+ICAgI2luY2x1ZGUgPGt2bS9jb25zb2xlLmg+Cj4gICAjaW5jbHVkZSA8a3ZtLXg4Ni9t
dWx0aWJvb3QuaD4KPiAgICNpbmNsdWRlIDxrdm0teDg2L211bHRpYm9vdF9kZWZzLmg+Cj4gICAj
aW5jbHVkZSA8a3ZtLXg4Ni9jcHVfeDg2XzY0Lmg+Cj4gICAjaW5jbHVkZSA8dWsvYXJjaC9saW1p
dHMuaD4KPiArI2luY2x1ZGUgPHVrL2FyY2gvdHlwZXMuaD4KPiAgICNpbmNsdWRlIDx1ay9wbGF0
L2NvbnNvbGUuaD4KPiAgICNpbmNsdWRlIDx1ay9hc3NlcnQuaD4KPiAgICNpbmNsdWRlIDx1ay9l
c3NlbnRpYWxzLmg+Cj4gQEAgLTQ3LDcgKzQ3LDcgQEAgdm9pZCAqX2xpYmt2bXBsYXRfaGVhcF9z
dGFydDsKPiAgIHZvaWQgKl9saWJrdm1wbGF0X3N0YWNrX3RvcDsKPiAgIHZvaWQgKl9saWJrdm1w
bGF0X21lbV9lbmQ7Cj4gICAKPiAtZXh0ZXJuIHZvaWQgX2xpYmt2bXBsYXRfbmV3c3RhY2sodWlu
dDY0X3Qgc3RhY2tfc3RhcnQsIHZvaWQgKCp0cmFtcCkodm9pZCAqKSwKPiArZXh0ZXJuIHZvaWQg
X2xpYmt2bXBsYXRfbmV3c3RhY2soX191NjQgc3RhY2tfc3RhcnQsIHZvaWQgKCp0cmFtcCkodm9p
ZCAqKSwKPiAgIAkJCQl2b2lkICphcmcpOwo+ICAgCj4gICBzdGF0aWMgaW5saW5lIHZvaWQgX21i
X2dldF9jbWRsaW5lKHN0cnVjdCBtdWx0aWJvb3RfaW5mbyAqbWksIGNoYXIgKmNtZGxpbmUsCj4g
QEAgLTU3LDcgKzU3LDcgQEAgc3RhdGljIGlubGluZSB2b2lkIF9tYl9nZXRfY21kbGluZShzdHJ1
Y3QgbXVsdGlib290X2luZm8gKm1pLCBjaGFyICpjbWRsaW5lLAo+ICAgCWNoYXIgKm1pX2NtZGxp
bmU7Cj4gICAKPiAgIAlpZiAobWktPmZsYWdzICYgTVVMVElCT09UX0lORk9fQ01ETElORSkgewo+
IC0JCW1pX2NtZGxpbmUgPSAoY2hhciAqKSh1aW50NjRfdCltaS0+Y21kbGluZTsKPiArCQltaV9j
bWRsaW5lID0gKGNoYXIgKikoX191NjQpbWktPmNtZGxpbmU7Cj4gICAJCWNtZGxpbmVfbGVuID0g
c3RybGVuKG1pX2NtZGxpbmUpOwo+ICAgCj4gICAJCWlmIChjbWRsaW5lX2xlbiA+PSBtYXhsZW4p
IHsKPiBAQCAtODcsNyArODcsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgX21iX2luaXRfbWVtKHN0
cnVjdCBtdWx0aWJvb3RfaW5mbyAqbWkpCj4gICAJICovCj4gICAJZm9yIChvZmZzZXQgPSAwOyBv
ZmZzZXQgPCBtaS0+bW1hcF9sZW5ndGg7Cj4gICAJICAgICBvZmZzZXQgKz0gbS0+c2l6ZSArIHNp
emVvZihtLT5zaXplKSkgewo+IC0JCW0gPSAodm9pZCAqKSh1aW50cHRyX3QpKG1pLT5tbWFwX2Fk
ZHIgKyBvZmZzZXQpOwo+ICsJCW0gPSAodm9pZCAqKShfX3VwdHIpKG1pLT5tbWFwX2FkZHIgKyBv
ZmZzZXQpOwo+ICAgCQlpZiAobS0+YWRkciA9PSBQTEFURk9STV9NRU1fU1RBUlQKPiAgIAkJICAg
ICYmIG0tPnR5cGUgPT0gTVVMVElCT09UX01FTU9SWV9BVkFJTEFCTEUpIHsKPiAgIAkJCWJyZWFr
Owo+IEBAIC0xNTQsNiArMTU0LDYgQEAgdm9pZCBfbGlia3ZtcGxhdF9lbnRyeSh2b2lkICphcmcp
Cj4gICAJICovCj4gICAJdWtfcHJpbnRkKERMVkxfSU5GTywgIlN3aXRjaCBmcm9tIGJvb3RzdHJh
cCBzdGFjayB0byBzdGFjayBAJXBcbiIsCj4gICAJCQkJX2xpYmt2bXBsYXRfbWVtX2VuZCk7Cj4g
LQlfbGlia3ZtcGxhdF9uZXdzdGFjaygodWludDY0X3QpIF9saWJrdm1wbGF0X21lbV9lbmQsCj4g
KwlfbGlia3ZtcGxhdF9uZXdzdGFjaygoX191NjQpIF9saWJrdm1wbGF0X21lbV9lbmQsCj4gICAJ
CQkJX2xpYmt2bXBsYXRfZW50cnkyLCAwKTsKPiAgIH0KPiAKCl9fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWlu
aW9zLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5v
cmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 12:44:54 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 12:44:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD8An-0007Du-Ps; Mon, 30 Apr 2018 12:44:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=6+tk=ht=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fD8Am-0007Dp-Na
 for minios-devel@lists.xen.org; Mon, 30 Apr 2018 12:44:52 +0000
X-Inumbo-ID: a1368308-4c74-11e8-8249-2fda3a446a53
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTPS
 id a1368308-4c74-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 12:47:24 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id D441DF2013;
 Mon, 30 Apr 2018 14:44:47 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id XznhgJLEfYke; Mon, 30 Apr 2018 14:44:47 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id 9CBBDF2012;
 Mon, 30 Apr 2018 14:44:43 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 30 Apr
 2018 14:44:43 +0200
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522941678-21179-3-git-send-email-costin.lupu@cs.pub.ro>
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
Message-ID: <5b62e644-7d7d-fae1-7c71-1b2d23e0c9bf@neclab.eu>
Date: Mon, 30 Apr 2018 14:44:43 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522941678-21179-3-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 2/3] plat/kvm: Add KVM (x86_64)
 interrupts support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U2VlIG15IGNvbW1lbnRzIGlubGluZS4KCk9uIDA1LjA0LjIwMTggMTc6MjEsIENvc3RpbiBMdXB1
IHdyb3RlOgo+IENoYW5nZXM6Cj4gKiBQSUMgc3VwcG9ydAo+ICogS1ZNIHNwZWNpZmljIHRyYXBz
Cj4gKiB0cmFwcyBhbmQgaW50ZXJydXB0IGFzc2VtYmx5IHN0dWJzCj4gKiBzaGFyZWQgSVJRIGhh
bmRsZXJzCj4gCj4gU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1
Yi5ybz4KPiAtLS0KPiAgIHBsYXQva3ZtL01ha2VmaWxlLnVrICAgICAgICAgICAgICAgICAgICAg
ICB8ICAgOSArLQo+ICAgcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L2NwdV94ODZfNjQuaCAgICAg
IHwgIDQyIC0tLS0tLS0KPiAgIHBsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0X2Rl
ZnMuaCB8ICA0MiAtLS0tLS0tCj4gICBwbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvdHJhcHMuaCAg
ICAgICAgICAgfCAgNDUgKysrKysrKwo+ICAgcGxhdC9rdm0vaW5jbHVkZS9rdm0vaW50Y3RybC5o
ICAgICAgICAgICAgIHwgIDM4ICsrKysrKwo+ICAgcGxhdC9rdm0vaW5jbHVkZS9rdm0vaXJxLmgg
ICAgICAgICAgICAgICAgIHwgIDQ1ICsrKysrKysKPiAgIHBsYXQva3ZtL2lycS5jICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICA5NyArKysrKysrKysrKysrKysKPiAgIHBsYXQva3ZtL3No
dXRkb3duLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgOSArKwo+ICAgcGxhdC9rdm0veDg2
L2NwdV92ZWN0b3JzX3g4Nl82NC5TICAgICAgICAgIHwgMTQyICsrKysrKysrKysrKysrKysrKysr
KysKPiAgIHBsYXQva3ZtL3g4Ni9jcHVfeDg2XzY0LmMgICAgICAgICAgICAgICAgICB8ICA3MSAt
LS0tLS0tLS0tLQo+ICAgcGxhdC9rdm0veDg2L2VudHJ5NjQuUyAgICAgICAgICAgICAgICAgICAg
IHwgICAxICsKPiAgIHBsYXQva3ZtL3g4Ni9pbnRjdHJsLmMgICAgICAgICAgICAgICAgICAgICB8
IDExMSArKysrKysrKysrKysrKysrKwo+ICAgcGxhdC9rdm0veDg2L2xjcHUuYyAgICAgICAgICAg
ICAgICAgICAgICAgIHwgIDM3ICsrKysrKwo+ICAgcGxhdC9rdm0veDg2L3NldHVwLmMgICAgICAg
ICAgICAgICAgICAgICAgIHwgICA2ICstCj4gICBwbGF0L2t2bS94ODYvdHJhcHMuYyAgICAgICAg
ICAgICAgICAgICAgICAgfCAxODYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgIDE1
IGZpbGVzIGNoYW5nZWQsIDcyMiBpbnNlcnRpb25zKCspLCAxNTkgZGVsZXRpb25zKC0pCj4gICBk
ZWxldGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L2NwdV94ODZfNjQuaAo+
ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0
X2RlZnMuaAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni90
cmFwcy5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0vaW5jbHVkZS9rdm0vaW50Y3Ry
bC5oCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0vaW5jbHVkZS9rdm0vaXJxLmgKPiAg
IGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2t2bS9pcnEuYwo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0
IHBsYXQva3ZtL3g4Ni9jcHVfdmVjdG9yc194ODZfNjQuUwo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0
IHBsYXQva3ZtL3g4Ni9jcHVfeDg2XzY0LmMKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2t2
bS94ODYvaW50Y3RybC5jCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0veDg2L3RyYXBz
LmMKPiAKPiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0vTWFrZWZpbGUudWsgYi9wbGF0L2t2bS9NYWtl
ZmlsZS51awo+IGluZGV4IDgyM2U3ODUuLjQ2MjU4ZmYgMTAwNjQ0Cj4gLS0tIGEvcGxhdC9rdm0v
TWFrZWZpbGUudWsKPiArKysgYi9wbGF0L2t2bS9NYWtlZmlsZS51awo+IEBAIC0xNiwxNyArMTYs
MjIgQEAgTElCS1ZNUExBVF9BU0lOQ0xVREVTLXkgICAgICAgICs9IC1JJChVS19QTEFUX0NPTU1P
Tl9CQVNFKS9pbmNsdWRlCj4gICBMSUJLVk1QTEFUX0NJTkNMVURFUy15ICAgICAgICAgKz0gLUkk
KExJQktWTVBMQVRfQkFTRSkvaW5jbHVkZQo+ICAgTElCS1ZNUExBVF9DSU5DTFVERVMteSAgICAg
ICAgICs9IC1JJChVS19QTEFUX0NPTU1PTl9CQVNFKS9pbmNsdWRlCj4gICAKPiArTElCS1ZNUExB
VF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkveDg2L3RyYWNl
LmN8Y29tbW9uCj4gK0xJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKFVLX1BMQVRf
Q09NTU9OX0JBU0UpL3g4Ni90cmFwcy5jfGNvbW1vbgo+ICtMSUJLVk1QTEFUX1NSQ1MtJChBUkNI
X1g4Nl82NCkgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNFKS94ODYvY3B1X25hdGl2ZS5jfGNvbW1v
bgo+ICAgaWZlcSAoJChIQVZFX1NDSEVEKSx5KQo+ICAgTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9Y
ODZfNjQpICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkveDg2L3RocmVhZF9zdGFydC5TfGNvbW1v
bgo+ICAgTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoVUtfUExBVF9DT01NT05f
QkFTRSkvdGhyZWFkLmN8Y29tbW9uCj4gICBMSUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkg
Kz0gJChVS19QTEFUX0NPTU1PTl9CQVNFKS9zd19jdHguY3xjb21tb24KPiAgIGVuZGlmCj4gICBM
SUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3g4Ni9l
bnRyeTY0LlMKPiAtTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoTElCS1ZNUExB
VF9CQVNFKS94ODYvY3B1X3g4Nl82NC5jCj4gK0xJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0
KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2L3RyYXBzLmMKPiArTElCS1ZNUExBVF9TUkNTLSQo
QVJDSF9YODZfNjQpICs9ICQoTElCS1ZNUExBVF9CQVNFKS94ODYvY3B1X3ZlY3RvcnNfeDg2XzY0
LlMKPiAgIExJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFT
RSkveDg2L3NldHVwLmMKPiAgIExJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJ
QktWTVBMQVRfQkFTRSkveDg2L2NvbnNvbGUuYwo+ICAgTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9Y
ODZfNjQpICs9ICQoTElCS1ZNUExBVF9CQVNFKS94ODYvbGNwdS5jCj4gLUxJQktWTVBMQVRfU1JD
Uy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2L3RpbWUuYwo+ICtMSUJL
Vk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3g4Ni9pbnRj
dHJsLmMKPiAgIExJQktWTVBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQktWTVBMQVRf
QkFTRSkvc2h1dGRvd24uYwo+ICAgTElCS1ZNUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQo
TElCS1ZNUExBVF9CQVNFKS9tZW1vcnkuYwo+ICtMSUJLVk1QTEFUX1NSQ1MteSAgICAgICAgICAg
ICAgKz0gJChMSUJLVk1QTEFUX0JBU0UpL2lycS5jCj4gICBMSUJLVk1QTEFUX1NSQ1MteSAgICAg
ICAgICAgICAgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNFKS9sY3B1LmN8Y29tbW9uCj4gZGlmZiAt
LWdpdCBhL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0LmggYi9wbGF0L2t2bS9p
bmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NC5oCj4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cj4g
aW5kZXggNDI3YzcwNS4uMDAwMDAwMAo+IC0tLSBhL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9j
cHVfeDg2XzY0LmgKPiArKysgL2Rldi9udWxsCj4gQEAgLTEsNDIgKzAsMCBAQAo+IC0vKiBTUERY
LUxpY2Vuc2UtSWRlbnRpZmllcjogSVNDICovCj4gLS8qCj4gLSAqIEF1dGhvcnM6IE1hcnRpbiBM
dWNpbmEKPiAtICoKPiAtICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTcgRG9ja2VyLCBJbmMuCj4g
LSAqCj4gLSAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmli
dXRlIHRoaXMgc29mdHdhcmUKPiAtICogZm9yIGFueSBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBm
ZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCj4gLSAqIHRoYXQgdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyCj4gLSAqIGluIGFs
bCBjb3BpZXMuCj4gLSAqCj4gLSAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFO
RCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwKPiAtICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBU
TyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAo+IC0gKiBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCj4gLSAq
IEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUgo+
IC0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNV
TFRJTkcgRlJPTSBMT1NTCj4gLSAqIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElO
IEFOIEFDVElPTiBPRiBDT05UUkFDVCwKPiAtICogTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9V
UyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOCj4gLSAqIENPTk5FQ1RJT04gV0lUSCBUSEUg
VVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCj4gLSAqLwo+IC0jaW5jbHVkZSA8
aW50dHlwZXMuaD4KPiAtCj4gLS8qIGFjY2Vzc2luZyBkZXZpY2VzIHZpYSBwb3J0IHNwYWNlICov
Cj4gLXN0YXRpYyBpbmxpbmUgdm9pZCBvdXRiKHVpbnQxNl90IHBvcnQsIHVpbnQ4X3QgdikKPiAt
ewo+IC0JX19hc21fXyBfX3ZvbGF0aWxlX18oIm91dGIgJTAsJTEiIDogOiAiYSIodiksICJkTiIo
cG9ydCkpOwo+IC19Cj4gLQo+IC1zdGF0aWMgaW5saW5lIHZvaWQgb3V0dyh1aW50MTZfdCBwb3J0
LCB1aW50MTZfdCB2KQo+IC17Cj4gLQlfX2FzbV9fIF9fdm9sYXRpbGVfXygib3V0dyAlMCwlMSIg
OiA6ICJhIih2KSwgImROIihwb3J0KSk7Cj4gLX0KPiAtc3RhdGljIGlubGluZSB1aW50OF90IGlu
Yih1aW50MTZfdCBwb3J0KQo+IC17Cj4gLQl1aW50OF90IHY7Cj4gLQo+IC0JX19hc21fXyBfX3Zv
bGF0aWxlX18oImluYiAlMSwlMCIgOiAiPWEiKHYpIDogImROIihwb3J0KSk7Cj4gLQlyZXR1cm4g
djsKPiAtfQo+IC0KPiAtdm9pZCBjcHVfaGFsdCh2b2lkKSBfX2F0dHJpYnV0ZV9fKChub3JldHVy
bikpOwo+IC12b2lkIGNwdV9pbml0KHZvaWQpOwo+IGRpZmYgLS1naXQgYS9wbGF0L2t2bS9pbmNs
dWRlL2t2bS14ODYvY3B1X3g4Nl82NF9kZWZzLmggYi9wbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYv
Y3B1X3g4Nl82NF9kZWZzLmgKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCA5ODVm
OGQzLi4wMDAwMDAwCj4gLS0tIGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L2NwdV94ODZfNjRf
ZGVmcy5oCj4gKysrIC9kZXYvbnVsbAo+IEBAIC0xLDQyICswLDAgQEAKPiAtLyogU1BEWC1MaWNl
bnNlLUlkZW50aWZpZXI6IElTQyAqLwo+IC0vKgo+IC0gKiBBdXRob3JzOiBNYXJ0aW4gTHVjaW5h
Cj4gLSAqCj4gLSAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tlciwgSW5jLgo+IC0gKgo+
IC0gKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0ZSB0
aGlzIHNvZnR3YXJlCj4gLSAqIGZvciBhbnkgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlz
IGhlcmVieSBncmFudGVkLCBwcm92aWRlZAo+IC0gKiB0aGF0IHRoZSBhYm92ZSBjb3B5cmlnaHQg
bm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhcgo+IC0gKiBpbiBhbGwgY29w
aWVzLgo+IC0gKgo+IC0gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhF
IEFVVEhPUiBESVNDTEFJTVMgQUxMCj4gLSAqIFdBUlJBTlRJRVMgV0lUSCBSRUdBUkQgVE8gVEhJ
UyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQKPiAtICogV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQo+IC0gKiBBVVRI
T1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IKPiAtICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5H
IEZST00gTE9TUwo+IC0gKiBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBB
Q1RJT04gT0YgQ09OVFJBQ1QsCj4gLSAqIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNU
SU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTgo+IC0gKiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBP
UiBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgo+IC0gKi8KPiAtCj4gLSNpbmNsdWRlIDx4
ODYvY3B1X2RlZnMuaD4KPiAtCj4gLS8qCj4gLSAqIEdEVCBsYXlvdXQKPiAtICoKPiAtICogVGhp
cyBzaG91bGQgYmUga2VwdCBjb25zaXN0ZW50IHdpdGggdGhlIGxheW91dCB1c2VkIGJ5IHRoZSB1
a3ZtIHRhcmdldCAoYXMKPiAtICogZGVmaW5lZCBpbiB1a3ZtL3Vrdm1fY3B1X3g4Nl82NC5oLgo+
IC0gKi8KPiAtI2RlZmluZSBHRFRfREVTQ19OVUxMICAgICAgICAgICAwCj4gLSNkZWZpbmUgR0RU
X0RFU0NfQ09ERSAgICAgICAgICAgMQo+IC0jZGVmaW5lIEdEVF9ERVNDX0NPREUzMiAgICAgICAg
IDIgLyogVXNlZCBieSBib290LlMgb24gdmlydGlvIHRhcmdldHMgKi8KPiAtI2RlZmluZSBHRFRf
REVTQ19EQVRBICAgICAgICAgICAzCj4gLSNkZWZpbmUgR0RUX0RFU0NfVFNTX0xPICAgICAgICAg
NAo+IC0jZGVmaW5lIEdEVF9ERVNDX1RTU19ISSAgICAgICAgIDUKPiAtI2RlZmluZSBHRFRfREVT
Q19UU1MgICAgICAgICAgICBHRFRfREVTQ19UU1NfTE8KPiAtCj4gLSNkZWZpbmUgR0RUX0RFU0Nf
T0ZGU0VUKG4pICAgICAgKChuKSAqIDB4OCkKPiAtI2RlZmluZSBHRFRfTlVNX0VOVFJJRVMgICAg
ICAgICA2Cj4gLQo+IC0jZGVmaW5lIEdEVF9ERVNDX0NPREVfVkFMICAgICAgIDB4MDBhZjk5MDAw
MDAwZmZmZgo+IC0jZGVmaW5lIEdEVF9ERVNDX0RBVEFfVkFMICAgICAgIDB4MDBjZjkzMDAwMDAw
ZmZmZgo+IGRpZmYgLS1naXQgYS9wbGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvdHJhcHMuaCBiL3Bs
YXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni90cmFwcy5oCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBp
bmRleCAwMDAwMDAwLi44MjEwNjEzCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL3BsYXQva3ZtL2lu
Y2x1ZGUva3ZtLXg4Ni90cmFwcy5oCj4gQEAgLTAsMCArMSw0NSBAQAo+ICsvKiBTUERYLUxpY2Vu
c2UtSWRlbnRpZmllcjogSVNDICovCj4gKy8qCj4gKyAqIEF1dGhvcnM6IE1hcnRpbiBMdWNpbmEK
PiArICoKPiArICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTcgRG9ja2VyLCBJbmMuCj4gKyAqCj4g
KyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRo
aXMgc29mdHdhcmUKPiArICogZm9yIGFueSBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMg
aGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCj4gKyAqIHRoYXQgdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyCj4gKyAqIGluIGFsbCBjb3Bp
ZXMuCj4gKyAqCj4gKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUg
QVVUSE9SIERJU0NMQUlNUyBBTEwKPiArICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElT
IFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAo+ICsgKiBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCj4gKyAqIEFVVEhP
UiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUgo+ICsgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcg
RlJPTSBMT1NTCj4gKyAqIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFD
VElPTiBPRiBDT05UUkFDVCwKPiArICogTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJ
T04sIEFSSVNJTkcgT1VUIE9GIE9SIElOCj4gKyAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9S
IFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCj4gKyAqLwo+ICsKPiArI2luY2x1ZGUgPHg4
Ni90cmFwcy5oPgo+ICsKPiArLyoKPiArICogR0RUIGxheW91dAo+ICsgKgo+ICsgKiBUaGlzIHNo
b3VsZCBiZSBrZXB0IGNvbnNpc3RlbnQgd2l0aCB0aGUgbGF5b3V0IHVzZWQgYnkgdGhlIHVrdm0g
dGFyZ2V0IChhcwo+ICsgKiBkZWZpbmVkIGluIHVrdm0vdWt2bV9jcHVfeDg2XzY0LmguCj4gKyAq
Lwo+ICsjZGVmaW5lIEdEVF9ERVNDX05VTEwgICAgICAgICAgIDAKPiArI2RlZmluZSBHRFRfREVT
Q19DT0RFICAgICAgICAgICAxCj4gKyNkZWZpbmUgR0RUX0RFU0NfQ09ERTMyICAgICAgICAgMiAv
KiBVc2VkIGJ5IGJvb3QuUyBvbiB2aXJ0aW8gdGFyZ2V0cyAqLwo+ICsjZGVmaW5lIEdEVF9ERVND
X0RBVEEgICAgICAgICAgIDMKPiArI2RlZmluZSBHRFRfREVTQ19UU1NfTE8gICAgICAgICA0Cj4g
KyNkZWZpbmUgR0RUX0RFU0NfVFNTX0hJICAgICAgICAgNQo+ICsjZGVmaW5lIEdEVF9ERVNDX1RT
UyAgICAgICAgICAgIEdEVF9ERVNDX1RTU19MTwo+ICsKPiArI2RlZmluZSBHRFRfREVTQ19PRkZT
RVQobikgICAgICAoKG4pICogMHg4KQo+ICsjZGVmaW5lIEdEVF9OVU1fRU5UUklFUyAgICAgICAg
IDYKPiArCj4gKyNkZWZpbmUgR0RUX0RFU0NfQ09ERV9WQUwgICAgICAgMHgwMGFmOTkwMDAwMDBm
ZmZmCj4gKyNkZWZpbmUgR0RUX0RFU0NfREFUQV9WQUwgICAgICAgMHgwMGNmOTMwMDAwMDBmZmZm
Cj4gKwo+ICsKPiArI2RlZmluZSBJRFRfTlVNX0VOVFJJRVMgICAgICAgICA0OAo+IGRpZmYgLS1n
aXQgYS9wbGF0L2t2bS9pbmNsdWRlL2t2bS9pbnRjdHJsLmggYi9wbGF0L2t2bS9pbmNsdWRlL2t2
bS9pbnRjdHJsLmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLmE2Y2Uz
MDcKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0vaW50Y3RybC5o
Cj4gQEAgLTAsMCArMSwzOCBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMt
Q2xhdXNlICovCj4gKy8qCj4gKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBj
cy5wdWIucm8+Cj4gKyAqCj4gKyAqIENvcHlyaWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQu
LCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gKyAqCj4gKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAo+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKPiArICogYXJlIG1ldDoKPiArICoKPiArICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
PiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgo+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCj4gKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdo
dCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHMKPiArICogICAgY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KPiArICog
ICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv
bi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiCj4gKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
PiArICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKPiArICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQo+ICsgKiBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCj4gKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCj4gKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwo+ICsgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgo+ICsgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQo+ICsgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQo+
ICsgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KPiArICoKPiArICogVEhJUyBIRUFERVIg
TUFZIE5PVCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KPiArICovCj4gKwo+
ICt2b2lkIGludGN0cmxfaW5pdCh2b2lkKTsKPiArdm9pZCBpbnRjdHJsX2NsZWFyX2lycSh1bnNp
Z25lZCBpbnQgaXJxKTsKPiArdm9pZCBpbnRjdHJsX21hc2tfaXJxKHVuc2lnbmVkIGludCBpcnEp
Owo+ICt2b2lkIGludGN0cmxfYWNrX2lycSh1bnNpZ25lZCBpbnQgaXJxKTsKPiBkaWZmIC0tZ2l0
IGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0vaXJxLmggYi9wbGF0L2t2bS9pbmNsdWRlL2t2bS9pcnEu
aAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uNjA2YWNmMgo+IC0tLSAv
ZGV2L251bGwKPiArKysgYi9wbGF0L2t2bS9pbmNsdWRlL2t2bS9pcnEuaAo+IEBAIC0wLDAgKzEs
NDUgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwo+ICsv
Kgo+ICsgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgo+ICsg
Kgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0
aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+ICsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKPiArICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4gKyAqCj4gKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
PiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+ICsgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
Lgo+ICsgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0
aGUgbmFtZXMgb2YgaXRzCj4gKyAqICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCj4gKyAqICAgIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCj4gKyAqCj4gKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMgIkFTIElTIgo+ICsgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4gKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUKPiArICogTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgo+ICsgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgo+ICsgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKPiArICogSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KPiAr
ICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKPiArICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKPiArICogUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCj4gKyAqCj4gKyAqIFRISVMgSEVBREVSIE1BWSBOT1QgQkUgRVhU
UkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCj4gKyAqLwo+ICsKPiArI2lmbmRlZiBfX0tW
TV9JUlFfSF8KPiArI2RlZmluZSBfX0tWTV9JUlFfSF8KPiArCj4gKyNpbmNsdWRlIDxzeXMvdHlw
ZXMuaD4KPiArCj4gK3R5cGVkZWYgaW50ICgqaXJxX2hhbmRsZXJfZnVuY190KSh2b2lkICopOwo+
ICsKClNpbmNlIHlvdSB3b3JrZWQgb24gaW50ZXJydXB0cyBmb3IgYWxsIHBsYXRmb3Jtcy4gRG8g
eW91IHRoaW5rIGl0IG1ha2VzIApzZW5zZSB0byBpbnRyb2R1Y2UgYW4gVUtQTEFUIEFQSSBmb3Ig
aW50ZXJydXB0cywgbGlrZSAKdWtwbGF0X2lycV9yZWdpc3RlcigpPyBJZiBub3QsIHRoZW4gSSB3
b3VsZCBwcmVmaXggdGhvc2UgZnVuY3Rpb25zIHdpdGggCiJsaWJrdm1wbGF0XyIuCgo+ICt2b2lk
IGlycV9yZWdpc3Rlcih1bnNpZ25lZCBsb25nIGlycSwgaXJxX2hhbmRsZXJfZnVuY190IGZ1bmMs
IHZvaWQgKmFyZyk7Cj4gK3ZvaWQgaXJxX2hhbmRsZSh1bnNpZ25lZCBsb25nIGlycSk7Cj4gKwo+
ICsjZW5kaWYgLyogX19LVk1fSVJRX0hfICovCj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL2lycS5j
IGIvcGxhdC9rdm0vaXJxLmMKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAu
LjU1ZjhlNjcKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9rdm0vaXJxLmMKPiBAQCAtMCww
ICsxLDk3IEBACj4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8KPiArLyoKPiAr
ICogQXV0aG9yczogRGFuIFdpbGxpYW1zCj4gKyAqICAgICAgICAgIE1hcnRpbiBMdWNpbmEKPiAr
ICogICAgICAgICAgUmljYXJkbyBLb2xsZXIKPiArICogICAgICAgICAgQ29zdGluIEx1cHUgPGNv
c3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPiArICoKPiArICogQ29weXJpZ2h0IChjKSAyMDE1LTIwMTcg
SUJNCj4gKyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tlciwgSW5jLgo+ICsgKiBDb3B5
cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uCj4gKyAqCj4g
KyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRo
aXMgc29mdHdhcmUKPiArICogZm9yIGFueSBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMg
aGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCj4gKyAqIHRoYXQgdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyCj4gKyAqIGluIGFsbCBjb3Bp
ZXMuCj4gKyAqCj4gKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUg
QVVUSE9SIERJU0NMQUlNUyBBTEwKPiArICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElT
IFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAo+ICsgKiBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCj4gKyAqIEFVVEhP
UiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUgo+ICsgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcg
RlJPTSBMT1NTCj4gKyAqIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFD
VElPTiBPRiBDT05UUkFDVCwKPiArICogTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJ
T04sIEFSSVNJTkcgT1VUIE9GIE9SIElOCj4gKyAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9S
IFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCj4gKyAqLwo+ICsvKiBUYWtlbiBmcm9tIHNv
bG81IGludHIuYyAqLwo+ICsKPiArI2luY2x1ZGUgPHN0ZGxpYi5oPgo+ICsjaW5jbHVkZSA8dWsv
YWxsb2MuaD4KPiArI2luY2x1ZGUgPHVrL2xpc3QuaD4KPiArI2luY2x1ZGUgPHVrL3BsYXQvbGNw
dS5oPgo+ICsjaW5jbHVkZSA8eDg2L2NwdS5oPgo+ICsjaW5jbHVkZSA8a3ZtL2lycS5oPgo+ICsj
aW5jbHVkZSA8a3ZtL2ludGN0cmwuaD4KPiArI2luY2x1ZGUgPHVrL2Fzc2VydC5oPgo+ICsKPiAr
Cj4gK3N0YXRpYyBzdHJ1Y3QgdWtfYWxsb2MgKmFsbG9jYXRvcjsKPiArCj4gK3N0cnVjdCBpcnFf
aGFuZGxlciB7Cj4gKwlpcnFfaGFuZGxlcl9mdW5jX3QgZnVuYzsKPiArCXZvaWQgKmFyZzsKPiAr
Cj4gKwlVS19TTElTVF9FTlRSWShzdHJ1Y3QgaXJxX2hhbmRsZXIpIGVudHJpZXM7Cj4gK307Cj4g
Kwo+ICtVS19TTElTVF9IRUFEKGlycV9oYW5kbGVyX2hlYWQsIHN0cnVjdCBpcnFfaGFuZGxlcik7
Cj4gK3N0YXRpYyBzdHJ1Y3QgaXJxX2hhbmRsZXJfaGVhZCBpcnFfaGFuZGxlcnNbMTZdOwo+ICsK
PiArdm9pZCBpcnFfcmVnaXN0ZXIodW5zaWduZWQgbG9uZyBpcnEsIGlycV9oYW5kbGVyX2Z1bmNf
dCBmdW5jLCB2b2lkICphcmcpCj4gK3sKPiArCXN0cnVjdCBpcnFfaGFuZGxlciAqaDsKPiArCXVu
c2lnbmVkIGxvbmcgZmxhZ3M7Cj4gKwo+ICsJVUtfQVNTRVJUKGlycSA8IDE2KTsKPiArCVVLX0FT
U0VSVChhbGxvY2F0b3IgIT0gTlVMTCk7Cj4gKwo+ICsJaCA9IHVrX21hbGxvYyhhbGxvY2F0b3Is
IHNpemVvZihzdHJ1Y3QgaXJxX2hhbmRsZXIpKTsKPiArCVVLX0FTU0VSVChoICE9IE5VTEwpOwoK
SSB3b3VsZCBhY3R1YWxseSByZXR1cm4gYW4gZXJyb3IgdmFsdWUgKC1FTk9NRU0pIGluc3RlYWQg
b2YgZmFpbGluZyB3aXRoIAphbiBhc3NlcnRpb24uCgo+ICsKPiArCWgtPmZ1bmMgPSBmdW5jOwo+
ICsJaC0+YXJnID0gYXJnOwo+ICsKPiArCWZsYWdzID0gdWtwbGF0X2xjcHVfc2F2ZV9pcnFmKCk7
Cj4gKwlVS19TTElTVF9JTlNFUlRfSEVBRCgmaXJxX2hhbmRsZXJzW2lycV0sIGgsIGVudHJpZXMp
Owo+ICsJdWtwbGF0X2xjcHVfcmVzdG9yZV9pcnFmKGZsYWdzKTsKPiArCj4gKwlpbnRjdHJsX2Ns
ZWFyX2lycShpcnEpOwo+ICt9Cj4gKwo+ICt2b2lkIGlycV9oYW5kbGUodW5zaWduZWQgbG9uZyBp
cnEpCj4gK3sKPiArCXN0cnVjdCBpcnFfaGFuZGxlciAqaDsKPiArCWludCBoYW5kbGVkID0gMDsK
PiArCj4gKwlVS19TTElTVF9GT1JFQUNIKGgsICZpcnFfaGFuZGxlcnNbaXJxXSwgZW50cmllcykg
ewo+ICsJCWlmIChoLT5mdW5jKGgtPmFyZykgPT0gMSkgewo+ICsJCQloYW5kbGVkID0gMTsKPiAr
CQkJYnJlYWs7Cj4gKwkJfQo+ICsJfQo+ICsKPiArCWlmICghaGFuZGxlZCkKPiArCQlVS19DUkFT
SCgiVW5oYW5kbGVkIGlycT0lbHVcbiIsIGlycSk7Cj4gKwllbHNlCj4gKwkJLyogT25seSBBQ0sg
dGhlIElSUSBpZiBoYW5kbGVkOyB3ZSBvbmx5IG5lZWQgdG8ga25vdwo+ICsJCSAqIGFib3V0IGFu
IHVuaGFuZGxlZCBJUlEgdGhlIGZpcnN0IHRpbWUgcm91bmQuCj4gKwkJICovCj4gKwkJaW50Y3Ry
bF9hY2tfaXJxKGlycSk7Cj4gK30KPiArCj4gK2ludCB1a3BsYXRfaXJxX2luaXQoc3RydWN0IHVr
X2FsbG9jICphKQo+ICt7Cj4gKwlVS19BU1NFUlQoYWxsb2NhdG9yID09IE5VTEwpOwo+ICsJYWxs
b2NhdG9yID0gYTsKPiArCXJldHVybiAwOwo+ICt9Cj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL3No
dXRkb3duLmMgYi9wbGF0L2t2bS9zaHV0ZG93bi5jCj4gaW5kZXggNjczZDA2NS4uYTUxM2RmOSAx
MDA2NDQKPiAtLS0gYS9wbGF0L2t2bS9zaHV0ZG93bi5jCj4gKysrIGIvcGxhdC9rdm0vc2h1dGRv
d24uYwo+IEBAIC0yNiw2ICsyNiw4IEBACj4gICAjaW5jbHVkZSA8dWsvcHJpbnQuaD4KPiAgICNp
bmNsdWRlIDx1ay9wbGF0L2Jvb3RzdHJhcC5oPgo+ICAgCj4gK3N0YXRpYyB2b2lkIGNwdV9oYWx0
KHZvaWQpIF9fbm9yZXR1cm47Cj4gKwo+ICAgLyogVE9ETzogaW1wbGVtZW50IENQVSByZXNldCAq
Lwo+ICAgdm9pZCB1a3BsYXRfdGVybWluYXRlKGVudW0gdWtwbGF0X2dzdGF0ZSByZXF1ZXN0IF9f
dW51c2VkKQo+ICAgewo+IEBAIC00NSw2ICs0NywxMyBAQCB2b2lkIHVrcGxhdF90ZXJtaW5hdGUo
ZW51bSB1a3BsYXRfZ3N0YXRlIHJlcXVlc3QgX191bnVzZWQpCj4gICAJY3B1X2hhbHQoKTsKPiAg
IH0KPiAgIAo+ICtzdGF0aWMgdm9pZCBjcHVfaGFsdCh2b2lkKQo+ICt7Cj4gKwlfX2FzbV9fIF9f
dm9sYXRpbGVfXygiY2xpOyBobHQiKTsKPiArCWZvciAoOzspCj4gKwkJOwo+ICt9Cj4gKwo+ICAg
aW50IHVrcGxhdF9zdXNwZW5kKHZvaWQpCj4gICB7Cj4gICAJcmV0dXJuIC1FQlVTWTsKPiBkaWZm
IC0tZ2l0IGEvcGxhdC9rdm0veDg2L2NwdV92ZWN0b3JzX3g4Nl82NC5TIGIvcGxhdC9rdm0veDg2
L2NwdV92ZWN0b3JzX3g4Nl82NC5TCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAw
MDAwLi5jMzBmMmVlCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL3BsYXQva3ZtL3g4Ni9jcHVfdmVj
dG9yc194ODZfNjQuUwo+IEBAIC0wLDAgKzEsMTQyIEBACj4gKy8qIFNQRFgtTGljZW5zZS1JZGVu
dGlmaWVyOiBJU0MgKi8KPiArLyoKPiArICogQXV0aG9yczogRGFuIFdpbGxpYW1zCj4gKyAqICAg
ICAgICAgIE1hcnRpbiBMdWNpbmEKPiArICogICAgICAgICAgQ29zdGluIEx1cHUgPGNvc3Rpbi5s
dXB1QGNzLnB1Yi5ybz4KPiArICoKPiArICogQ29weXJpZ2h0IChjKSAyMDE1LTIwMTcgSUJNCj4g
KyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tlciwgSW5jLgo+ICsgKiBDb3B5cmlnaHQg
KGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uCj4gKyAqCj4gKyAqIFBl
cm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29m
dHdhcmUKPiArICogZm9yIGFueSBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5
IGdyYW50ZWQsIHByb3ZpZGVkCj4gKyAqIHRoYXQgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Ug
YW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyCj4gKyAqIGluIGFsbCBjb3BpZXMuCj4g
KyAqCj4gKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9S
IERJU0NMQUlNUyBBTEwKPiArICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRX
QVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAo+ICsgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCj4gKyAqIEFVVEhPUiBCRSBM
SUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUgo+ICsgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBM
T1NTCj4gKyAqIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBP
RiBDT05UUkFDVCwKPiArICogTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFS
SVNJTkcgT1VUIE9GIE9SIElOCj4gKyAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZP
Uk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCj4gKyAqLwo+ICsvKiBUYWtlbiBmcm9tIHNvbG81ICov
Cj4gKwo+ICsjaW5jbHVkZSA8eDg2L3RyYXBzLmg+Cj4gKyNpbmNsdWRlIDx4ODYvcmVncy5oPgo+
ICsKPiArI2RlZmluZSBFTlRSWShYKSAgICAgLmdsb2JhbCBYIDsgLnR5cGUgWCwgQGZ1bmN0aW9u
IDsgWDoKPiArCj4gKy5tYWNybyBQVVNIX0NBTExFUl9TQVZFCj4gKwlwdXNocSAlcmRpCj4gKwlw
dXNocSAlcnNpCj4gKwlwdXNocSAlcmR4Cj4gKwlwdXNocSAlcmN4Cj4gKwlwdXNocSAlcmF4Cj4g
KwlwdXNocSAlcjgKPiArCXB1c2hxICVyOQo+ICsJcHVzaHEgJXIxMAo+ICsJcHVzaHEgJXIxMQo+
ICsJcHVzaHEgJXJieAo+ICsJcHVzaHEgJXJicAo+ICsJcHVzaHEgJXIxMgo+ICsJcHVzaHEgJXIx
Mwo+ICsJcHVzaHEgJXIxNAo+ICsJcHVzaHEgJXIxNQo+ICsuZW5kbQo+ICsKPiArLm1hY3JvIFBP
UF9DQUxMRVJfU0FWRQo+ICsJcG9wcSAlcjE1Cj4gKwlwb3BxICVyMTQKPiArCXBvcHEgJXIxMwo+
ICsJcG9wcSAlcjEyCj4gKwlwb3BxICVyYnAKPiArCXBvcHEgJXJieAo+ICsJcG9wcSAlcjExCj4g
Kwlwb3BxICVyMTAKPiArCXBvcHEgJXI5Cj4gKwlwb3BxICVyOAo+ICsJcG9wcSAlcmF4Cj4gKwlw
b3BxICVyY3gKPiArCXBvcHEgJXJkeAo+ICsJcG9wcSAlcnNpCj4gKwlwb3BxICVyZGkKPiArLmVu
ZG0KPiArCj4gKy5tYWNybyBUUkFQX0VOVFJZIHRyYXBuYW1lLCBoYXNfZWMKPiArRU5UUlkoQVNN
X1RSQVBfU1lNKFx0cmFwbmFtZSkpCj4gKwljbGQKPiArCj4gKy5pZiAhXGhhc19lYwo+ICsJcHVz
aHEgJDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbm8gZXJyb3IgY29kZSwgcGFzcyAw
ICovCj4gKy5lbmRpZgo+ICsJUFVTSF9DQUxMRVJfU0FWRQo+ICsJc3VicSAkUkVHU19QQURfU0la
RSwgJXJzcCAgICAgICAgICAgLyogd2UgaGF2ZSBzb21lIHBhZGRpbmcgKi8KPiArCj4gKwltb3Zx
ICVyc3AsICVyZGkKPiArCW1vdnEgT0ZGU0VUT0ZfUkVHU19PUklHX1JBWCglcnNwKSwgJXJzaQo+
ICsJY2FsbCBkb19cdHJhcG5hbWUKPiArCj4gKwlhZGRxICRSRUdTX1BBRF9TSVpFLCAlcnNwICAg
ICAgICAgICAvKiB3ZSBoYXZlIHNvbWUgcGFkZGluZyAqLwo+ICsJUE9QX0NBTExFUl9TQVZFCj4g
KwlhZGRxICQ4LCAlcnNwICAgICAgICAgICAgICAgICAgICAgICAvKiBkaXNjYXJkIGVycm9yIGNv
ZGUgKi8KPiArCj4gKwlpcmV0cQo+ICsuZW5kbQo+ICsKPiArLm1hY3JvIElSUV9FTlRSWSBpcnFu
bwo+ICtFTlRSWShjcHVfaXJxX1xpcnFubykKPiArCWNsZAo+ICsKPiArCXB1c2hxICQwICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIG5vIGVycm9yIGNvZGUgKi8KPiArCVBVU0hfQ0FMTEVS
X1NBVkUKPiArCXN1YnEgJFJFR1NfUEFEX1NJWkUsICVyc3AgICAgICAgICAgIC8qIHdlIGhhdmUg
c29tZSBwYWRkaW5nICovCj4gKwo+ICsJbW92cSAkXGlycW5vLCAlcmRpCj4gKwljYWxsIGlycV9o
YW5kbGUKPiArCj4gKwlhZGRxICRSRUdTX1BBRF9TSVpFLCAlcnNwICAgICAgICAgICAvKiB3ZSBo
YXZlIHNvbWUgcGFkZGluZyAqLwo+ICsJUE9QX0NBTExFUl9TQVZFCj4gKwlhZGRxICQ4LCAlcnNw
Cj4gKwo+ICsJaXJldHEKPiArLmVuZG0KPiArCj4gK1RSQVBfRU5UUlkgZGl2aWRlX2Vycm9yLCAg
ICAgMAo+ICtUUkFQX0VOVFJZIGRlYnVnLCAgICAgICAgICAgIDAKPiArVFJBUF9FTlRSWSBubWks
ICAgICAgICAgICAgICAwCj4gK1RSQVBfRU5UUlkgaW50MywgICAgICAgICAgICAgMAo+ICtUUkFQ
X0VOVFJZIG92ZXJmbG93LCAgICAgICAgIDAKPiArVFJBUF9FTlRSWSBib3VuZHMsICAgICAgICAg
ICAwCj4gK1RSQVBfRU5UUlkgaW52YWxpZF9vcCwgICAgICAgMAo+ICtUUkFQX0VOVFJZIG5vX2Rl
dmljZSwgICAgICAgIDAKPiArVFJBUF9FTlRSWSBkb3VibGVfZmF1bHQsICAgICAxCj4gK1RSQVBf
RU5UUlkgaW52YWxpZF90c3MsICAgICAgMQo+ICtUUkFQX0VOVFJZIG5vX3NlZ21lbnQsICAgICAg
IDEKPiArVFJBUF9FTlRSWSBzdGFja19lcnJvciwgICAgICAxCj4gK1RSQVBfRU5UUlkgZ3BfZmF1
bHQsICAgICAgICAgMQo+ICtUUkFQX0VOVFJZIHBhZ2VfZmF1bHQsICAgICAgIDEKPiArVFJBUF9F
TlRSWSBjb3Byb2NfZXJyb3IsICAgICAwCj4gK1RSQVBfRU5UUlkgYWxpZ25tZW50X2NoZWNrLCAg
MQo+ICtUUkFQX0VOVFJZIG1hY2hpbmVfY2hlY2ssICAgIDAKPiArVFJBUF9FTlRSWSBzaW1kX2Vy
cm9yLCAgICAgICAwCj4gK1RSQVBfRU5UUlkgdmlydF9lcnJvciwgICAgICAgMAo+ICsKPiArSVJR
X0VOVFJZIDAKPiArSVJRX0VOVFJZIDEKPiArSVJRX0VOVFJZIDIKPiArSVJRX0VOVFJZIDMKPiAr
SVJRX0VOVFJZIDQKPiArSVJRX0VOVFJZIDUKPiArSVJRX0VOVFJZIDYKPiArSVJRX0VOVFJZIDcK
PiArSVJRX0VOVFJZIDgKPiArSVJRX0VOVFJZIDkKPiArSVJRX0VOVFJZIDEwCj4gK0lSUV9FTlRS
WSAxMQo+ICtJUlFfRU5UUlkgMTIKPiArSVJRX0VOVFJZIDEzCj4gK0lSUV9FTlRSWSAxNAo+ICtJ
UlFfRU5UUlkgMTUKPiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0veDg2L2NwdV94ODZfNjQuYyBiL3Bs
YXQva3ZtL3g4Ni9jcHVfeDg2XzY0LmMKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRl
eCAyZjk4Yjk1Li4wMDAwMDAwCj4gLS0tIGEvcGxhdC9rdm0veDg2L2NwdV94ODZfNjQuYwo+ICsr
KyAvZGV2L251bGwKPiBAQCAtMSw3MSArMCwwIEBACj4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlm
aWVyOiBJU0MgKi8KPiAtLyoKPiAtICogQXV0aG9yczogRGFuIFdpbGxpYW1zCj4gLSAqICAgICAg
ICAgIE1hcnRpbiBMdWNpbmEKPiAtICogICAgICAgICAgRmVsaXBlIEh1aWNpIDxmZWxpcGUuaHVp
Y2lAbmVjbGFiLmV1Pgo+IC0gKiAgICAgICAgICBGbG9yaWFuIFNjaG1pZHQgPGZsb3JpYW4uc2No
bWlkdEBuZWNsYWIuZXU+Cj4gLSAqCj4gLSAqIENvcHlyaWdodCAoYykgMjAxNS0yMDE3IElCTQo+
IC0gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAxNyBEb2NrZXIsIEluYy4KPiAtICogQ29weXJpZ2h0
IChjKSAyMDE3IE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uCj4gLSAqCj4gLSAqIFBl
cm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29m
dHdhcmUKPiAtICogZm9yIGFueSBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5
IGdyYW50ZWQsIHByb3ZpZGVkCj4gLSAqIHRoYXQgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Ug
YW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyCj4gLSAqIGluIGFsbCBjb3BpZXMuCj4g
LSAqCj4gLSAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9S
IERJU0NMQUlNUyBBTEwKPiAtICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRX
QVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAo+IC0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCj4gLSAqIEFVVEhPUiBCRSBM
SUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUgo+IC0gKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBM
T1NTCj4gLSAqIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBP
RiBDT05UUkFDVCwKPiAtICogTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFS
SVNJTkcgT1VUIE9GIE9SIElOCj4gLSAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZP
Uk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCj4gLSAqLwo+IC0KPiAtI2luY2x1ZGUgPHN0cmluZy5o
Pgo+IC0jaW5jbHVkZSA8eDg2L2Rlc2MuaD4KPiAtI2luY2x1ZGUgPGt2bS9zZXR1cC5oPgo+IC0j
aW5jbHVkZSA8a3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMuaD4KPiAtI2luY2x1ZGUgPGt2bS14ODYv
Y3B1X3g4Nl82NC5oPgo+IC0KPiAtc3RhdGljIHN0cnVjdCBzZWdfZGVzYzMyIGNwdV9nZHQ2NFtH
RFRfTlVNX0VOVFJJRVNdIEFMSUdOXzY0X0JJVDsKPiAtCj4gLS8qCj4gLSAqIFRoZSBtb25pdG9y
ICh1a3ZtKSBvciBib290bG9hZGVyICsgYm9vdHN0cmFwICh2aXJ0aW8pIHN0YXJ0cyB1cyB1cCB3
aXRoIGEKPiAtICogYm9vdHN0cmFwIEdEVCB3aGljaCBpcyAiaW52aXNpYmxlIiB0byB0aGUgZ3Vl
c3QsIGluaXQgYW5kIHN3aXRjaCB0byBvdXIgb3duCj4gLSAqIEdEVC4KPiAtICoKPiAtICogVGhp
cyBpcyBkb25lIHByaW1hcmlseSBzaW5jZSB3ZSBuZWVkIHRvIGRvIExUUiBsYXRlciBpbiBhIHBy
ZWRpY3RhYmxlCj4gLSAqIGZhc2hpb24uCj4gLSAqLwo+IC1zdGF0aWMgdm9pZCBnZHRfaW5pdCh2
b2lkKQo+IC17Cj4gLQl2b2xhdGlsZSBzdHJ1Y3QgZGVzY190YWJsZV9wdHI2NCBnZHRwdHI7Cj4g
LQo+IC0JbWVtc2V0KGNwdV9nZHQ2NCwgMCwgc2l6ZW9mKGNwdV9nZHQ2NCkpOwo+IC0JY3B1X2dk
dDY0W0dEVF9ERVNDX0NPREVdLnJhdyA9IEdEVF9ERVNDX0NPREVfVkFMOwo+IC0JY3B1X2dkdDY0
W0dEVF9ERVNDX0RBVEFdLnJhdyA9IEdEVF9ERVNDX0RBVEFfVkFMOwo+IC0KPiAtCWdkdHB0ci5s
aW1pdCA9IHNpemVvZihjcHVfZ2R0NjQpIC0gMTsKPiAtCWdkdHB0ci5iYXNlID0gKF9fdTY0KSAm
Y3B1X2dkdDY0Owo+IC0JX19hc21fXyBfX3ZvbGF0aWxlX18oImxnZHQgKCUwKSIgOjoiciIoJmdk
dHB0cikpOwo+IC0JLyoKPiAtCSAqIFRPRE86IFRlY2huaWNhbGx5IHdlIHNob3VsZCByZWxvYWQg
YWxsIHNlZ21lbnQgcmVnaXN0ZXJzIGhlcmUsIGluCj4gLQkgKiBwcmFjdGljZSB0aGlzIGRvZXNu
J3QgbWF0dGVyIHNpbmNlIHRoZSBib290c3RyYXAgR0RUIG1hdGNoZXMgb3VycywKPiAtCSAqIGZv
ciBub3cuCj4gLQkgKi8KPiAtfQo+IC0KPiAtdm9pZCBjcHVfaW5pdCh2b2lkKQo+IC17Cj4gLQln
ZHRfaW5pdCgpOwo+IC19Cj4gLQo+IC12b2lkIGNwdV9oYWx0KHZvaWQpCj4gLXsKPiAtCV9fYXNt
X18gX192b2xhdGlsZV9fKCJjbGk7IGhsdCIpOwo+IC0JZm9yICg7OykKPiAtCQk7Cj4gLX0KPiBk
aWZmIC0tZ2l0IGEvcGxhdC9rdm0veDg2L2VudHJ5NjQuUyBiL3BsYXQva3ZtL3g4Ni9lbnRyeTY0
LlMKPiBpbmRleCA2NTcwYzQ3Li5mMDM0OTA4IDEwMDY0NAo+IC0tLSBhL3BsYXQva3ZtL3g4Ni9l
bnRyeTY0LlMKPiArKysgYi9wbGF0L2t2bS94ODYvZW50cnk2NC5TCj4gQEAgLTI4LDYgKzI4LDcg
QEAKPiAgICAqLwo+ICAgCj4gICAjaW5jbHVkZSA8eDg2L2NwdV9kZWZzLmg+Cj4gKyNpbmNsdWRl
IDxrdm0teDg2L3RyYXBzLmg+Cj4gICAjaW5jbHVkZSA8a3ZtLXg4Ni9tdWx0aWJvb3RfZGVmcy5o
Pgo+ICAgCj4gICAjZGVmaW5lIEVOVFJZKHgpIC50ZXh0OyAuZ2xvYmwgeDsgLnR5cGUgeCwlZnVu
Y3Rpb247IHg6Cj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL3g4Ni9pbnRjdHJsLmMgYi9wbGF0L2t2
bS94ODYvaW50Y3RybC5jCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi5k
YzQwNTU1Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL3BsYXQva3ZtL3g4Ni9pbnRjdHJsLmMKPiBA
QCAtMCwwICsxLDExMSBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogSVNDICovCj4g
Ky8qCj4gKyAqIEF1dGhvcnM6IERhbiBXaWxsaWFtcwo+ICsgKiAgICAgICAgICBNYXJ0aW4gTHVj
aW5hCj4gKyAqCj4gKyAqIENvcHlyaWdodCAoYykgMjAxNS0yMDE3IElCTQo+ICsgKiBDb3B5cmln
aHQgKGMpIDIwMTYtMjAxNyBEb2NrZXIsIEluYy4KPiArICoKPiArICogUGVybWlzc2lvbiB0byB1
c2UsIGNvcHksIG1vZGlmeSwgYW5kL29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZQo+ICsgKiBm
b3IgYW55IHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJv
dmlkZWQKPiArICogdGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJt
aXNzaW9uIG5vdGljZSBhcHBlYXIKPiArICogaW4gYWxsIGNvcGllcy4KPiArICoKPiArICogVEhF
IFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFM
TAo+ICsgKiBXQVJSQU5USUVTIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5H
IEFMTCBJTVBMSUVECj4gKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKPiArICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5Z
IFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SCj4gKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyBPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MKPiArICogT0Yg
VVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULAo+
ICsgKiBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0Yg
T1IgSU4KPiArICogQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJ
UyBTT0ZUV0FSRS4KPiArICovCj4gKy8qIFRha2VuIGZyb20gc29sbzUgcGxhdGZvcm1faW50ci5j
ICovCj4gKwo+ICsjaW5jbHVkZSA8c3RkaW50Lmg+Cj4gKyNpbmNsdWRlIDx4ODYvY3B1Lmg+Cj4g
KyNpbmNsdWRlIDxrdm0vaW50Y3RybC5oPgo+ICsKPiArI2RlZmluZSBQSUMxICAgICAgICAgICAg
IDB4MjAgICAgLyogSU8gYmFzZSBhZGRyZXNzIGZvciBtYXN0ZXIgUElDICovCj4gKyNkZWZpbmUg
UElDMiAgICAgICAgICAgICAweEEwICAgIC8qIElPIGJhc2UgYWRkcmVzcyBmb3Igc2xhdmUgUElD
ICovCj4gKyNkZWZpbmUgUElDMV9DT01NQU5EICAgICBQSUMxCj4gKyNkZWZpbmUgUElDMV9EQVRB
ICAgICAgICAoUElDMSArIDEpCj4gKyNkZWZpbmUgUElDMl9DT01NQU5EICAgICBQSUMyCj4gKyNk
ZWZpbmUgUElDMl9EQVRBICAgICAgICAoUElDMiArIDEpCj4gKyNkZWZpbmUgSVJRX09OX01BU1RF
UihuKSAoKG4pIDwgOCkKPiArI2RlZmluZSBJUlFfUE9SVChuKSAgICAgIChJUlFfT05fTUFTVEVS
KG4pID8gUElDMV9EQVRBIDogUElDMl9EQVRBKQo+ICsjZGVmaW5lIElSUV9PRkZTRVQobikgICAg
KElSUV9PTl9NQVNURVIobikgPyAobikgOiAoKG4pIC0gOCkpCj4gKwo+ICsjZGVmaW5lIFBJQ19F
T0kgICAgICAgICAgMHgyMCAvKiBFbmQtb2YtaW50ZXJydXB0IGNvbW1hbmQgY29kZSAqLwo+ICsj
ZGVmaW5lIElDVzFfSUNXNCAgICAgICAgMHgwMSAvKiBJQ1c0IChub3QpIG5lZWRlZCAqLwo+ICsj
ZGVmaW5lIElDVzFfU0lOR0xFICAgICAgMHgwMiAvKiBTaW5nbGUgKGNhc2NhZGUpIG1vZGUgKi8K
PiArI2RlZmluZSBJQ1cxX0lOVEVSVkFMICAgIDB4MDQgLyogQ2FsbCBhZGRyZXNzIGludGVydmFs
IDQgKDgpICovCj4gKyNkZWZpbmUgSUNXMV9MRVZFTCAgICAgICAweDA4IC8qIExldmVsIHRyaWdn
ZXJlZCAoZWRnZSkgbW9kZSAqLwo+ICsjZGVmaW5lIElDVzFfSU5JVCAgICAgICAgMHgxMCAvKiBJ
bml0aWFsaXphdGlvbiAtIHJlcXVpcmVkISAqLwo+ICsjZGVmaW5lIElDVzRfODA4NiAgICAgICAg
MHgwMSAvKiA4MDg2Lzg4IChNQ1MtODAvODUpIG1vZGUgKi8KPiArI2RlZmluZSBJQ1c0X0FVVE8g
ICAgICAgIDB4MDIgLyogQXV0byAobm9ybWFsKSBFT0kgKi8KPiArI2RlZmluZSBJQ1c0X0JVRl9T
TEFWRSAgIDB4MDggLyogQnVmZmVyZWQgbW9kZS9zbGF2ZSAqLwo+ICsjZGVmaW5lIElDVzRfQlVG
X01BU1RFUiAgMHgwQyAvKiBCdWZmZXJlZCBtb2RlL21hc3RlciAqLwo+ICsjZGVmaW5lIElDVzRf
U0ZOICAgICAgICAgMHgxMCAvKiBTcGVjaWFsIGZ1bGx5IG5lc3RlZCAobm90KSAqLwo+ICsKPiAr
LyoKPiArICogYXJndW1lbnRzOgo+ICsgKiBvZmZzZXQxIC0gdmVjdG9yIG9mZnNldCBmb3IgbWFz
dGVyIFBJQyB2ZWN0b3JzIG9uIHRoZSBtYXN0ZXIgYmVjb21lCj4gKyAqICAgICAgICAgICBvZmZz
ZXQxLi5vZmZzZXQxKzcKPiArICogb2Zmc2V0MiAtIHNhbWUgZm9yIHNsYXZlIFBJQzogb2Zmc2V0
Mi4ub2Zmc2V0Mis3Cj4gKyAqLwo+ICtzdGF0aWMgdm9pZCBQSUNfcmVtYXAoaW50IG9mZnNldDEs
IGludCBvZmZzZXQyKQo+ICt7Cj4gKwl1bnNpZ25lZCBjaGFyIGExLCBhMjsKPiArCj4gKwkvKiBz
YXZlIG1hc2tzICovCj4gKwlhMSA9IGluYihQSUMxX0RBVEEpOwo+ICsJYTIgPSBpbmIoUElDMl9E
QVRBKTsKPiArCj4gKwkvKiBzdGFydCBpbml0IHNlcSAoY2FzY2FkZSkgKi8KPiArCW91dGIoUElD
MV9DT01NQU5ELCBJQ1cxX0lOSVQgKyBJQ1cxX0lDVzQpOwo+ICsJb3V0YihQSUMyX0NPTU1BTkQs
IElDVzFfSU5JVCArIElDVzFfSUNXNCk7Cj4gKwkvKiBJQ1cyOiBNYXN0ZXIgUElDIHZlY3RvciBv
ZmYgKi8KPiArCW91dGIoUElDMV9EQVRBLCBvZmZzZXQxKTsKPiArCS8qIElDVzI6IFNsYXZlIFBJ
QyB2ZWN0b3Igb2ZmICovCj4gKwlvdXRiKFBJQzJfREFUQSwgb2Zmc2V0Mik7Cj4gKwkvKiBJQ1cz
OiB0ZWxsIE1hc3RlciBQSUMgdGhlcmUgaXMgYSBzbGF2ZSBQSUMgYXQgSVJRMiAoMDAwMCAwMTAw
KSAqLwo+ICsJb3V0YihQSUMxX0RBVEEsIDQpOwo+ICsJLyogSUNXMzogdGVsbCBTbGF2ZSBQSUMg
aXRzIGNhc2NhZGUgaWRlbnRpdHkgKDAwMDAgMDAxMCkgKi8KPiArCW91dGIoUElDMl9EQVRBLCAy
KTsKPiArCj4gKwlvdXRiKFBJQzFfREFUQSwgSUNXNF84MDg2KTsKPiArCW91dGIoUElDMl9EQVRB
LCBJQ1c0XzgwODYpOwo+ICsKPiArCW91dGIoUElDMV9EQVRBLCBhMSk7IC8qIHJlc3RvcmUgc2F2
ZWQgbWFza3MuICovCj4gKwlvdXRiKFBJQzJfREFUQSwgYTIpOwo+ICt9Cj4gKwoKV2Ugc2hvdWxk
IHByZWZpeCB0aGVzZSBmdW5jaXRvbnMsIHRvby4KCj4gK3ZvaWQgaW50Y3RybF9pbml0KHZvaWQp
Cj4gK3sKPiArCVBJQ19yZW1hcCgzMiwgNDApOwo+ICt9Cj4gKwo+ICt2b2lkIGludGN0cmxfYWNr
X2lycSh1bnNpZ25lZCBpbnQgaXJxKQo+ICt7Cj4gKwlpZiAoIUlSUV9PTl9NQVNURVIoaXJxKSkK
PiArCQlvdXRiKFBJQzJfQ09NTUFORCwgUElDX0VPSSk7Cj4gKwo+ICsJb3V0YihQSUMxX0NPTU1B
TkQsIFBJQ19FT0kpOwo+ICt9Cj4gKwo+ICt2b2lkIGludGN0cmxfbWFza19pcnEodW5zaWduZWQg
aW50IGlycSkKPiArewo+ICsJX191MTYgcG9ydDsKPiArCj4gKwlwb3J0ID0gSVJRX1BPUlQoaXJx
KTsKPiArCW91dGIocG9ydCwgaW5iKHBvcnQpIHwgKDEgPDwgSVJRX09GRlNFVChpcnEpKSk7Cj4g
K30KPiArCj4gK3ZvaWQgaW50Y3RybF9jbGVhcl9pcnEodW5zaWduZWQgaW50IGlycSkKPiArewo+
ICsJX191MTYgcG9ydDsKPiArCj4gKwlwb3J0ID0gSVJRX1BPUlQoaXJxKTsKPiArCW91dGIocG9y
dCwgaW5iKHBvcnQpICYgfigxIDw8IElSUV9PRkZTRVQoaXJxKSkpOwo+ICt9Cj4gZGlmZiAtLWdp
dCBhL3BsYXQva3ZtL3g4Ni9sY3B1LmMgYi9wbGF0L2t2bS94ODYvbGNwdS5jCj4gaW5kZXggOTg1
YzY3MC4uNDJlMmZhYSAxMDA2NDQKPiAtLS0gYS9wbGF0L2t2bS94ODYvbGNwdS5jCj4gKysrIGIv
cGxhdC9rdm0veDg2L2xjcHUuYwo+IEBAIC0xLDYgKzEsNyBAQAo+ICAgLyogU1BEWC1MaWNlbnNl
LUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwo+ICAgLyoKPiAgICAqIEF1dGhvcnM6IFNpbW9u
IEt1ZW56ZXIgPHNpbW9uLmt1ZW56ZXJAbmVjbGFiLmV1Pgo+ICsgKiAgICAgICAgICBDb3N0aW4g
THVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgo+ICAgICoKPiAgICAqIENvcHlyaWdodCAoYykg
MjAxNywgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCj4gICAgKgo+IEBAIC0zNCwzICszNSwzOSBAQAo+ICAgCj4gICAjaW5jbHVkZSA8c3RkaW50
Lmg+Cj4gICAjaW5jbHVkZSA8dWsvcGxhdC9sY3B1Lmg+Cj4gKyNpbmNsdWRlIDx4ODYvaXJxLmg+
Cj4gKwo+ICsKPiArdm9pZCB1a3BsYXRfbGNwdV9lbmFibGVfaXJxKHZvaWQpCj4gK3sKPiArCWxv
Y2FsX2lycV9lbmFibGUoKTsKPiArfQo+ICsKPiArdm9pZCB1a3BsYXRfbGNwdV9kaXNhYmxlX2ly
cSh2b2lkKQo+ICt7Cj4gKwlsb2NhbF9pcnFfZGlzYWJsZSgpOwo+ICt9Cj4gKwo+ICt1bnNpZ25l
ZCBsb25nIHVrcGxhdF9sY3B1X3NhdmVfaXJxZih2b2lkKQo+ICt7Cj4gKwl1bnNpZ25lZCBsb25n
IGZsYWdzOwo+ICsKPiArCWxvY2FsX2lycV9zYXZlKGZsYWdzKTsKPiArCj4gKwlyZXR1cm4gZmxh
Z3M7Cj4gK30KPiArCj4gK3ZvaWQgdWtwbGF0X2xjcHVfcmVzdG9yZV9pcnFmKHVuc2lnbmVkIGxv
bmcgZmxhZ3MpCj4gK3sKPiArCWxvY2FsX2lycV9yZXN0b3JlKGZsYWdzKTsKPiArfQo+ICsKPiAr
aW50IHVrcGxhdF9sY3B1X2lycXNfZGlzYWJsZWQodm9pZCkKPiArewo+ICsJcmV0dXJuIGlycXNf
ZGlzYWJsZWQoKTsKPiArfQo+ICsKPiArdm9pZCB1a3BsYXRfbGNwdV9pcnFzX2hhbmRsZV9wZW5k
aW5nKHZvaWQpCj4gK3sKPiArCj4gK30KPiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0veDg2L3NldHVw
LmMgYi9wbGF0L2t2bS94ODYvc2V0dXAuYwo+IGluZGV4IDk2ZDgwZTkuLmY1NmQwN2UgMTAwNjQ0
Cj4gLS0tIGEvcGxhdC9rdm0veDg2L3NldHVwLmMKPiArKysgYi9wbGF0L2t2bS94ODYvc2V0dXAu
Ywo+IEBAIC0yNywxMCArMjcsMTEgQEAKPiAgICAqLwo+ICAgCj4gICAjaW5jbHVkZSA8c3RyaW5n
Lmg+Cj4gKyNpbmNsdWRlIDx4ODYvdHJhcHMuaD4KPiAgICNpbmNsdWRlIDxrdm0vY29uc29sZS5o
Pgo+ICsjaW5jbHVkZSA8a3ZtL2ludGN0cmwuaD4KPiAgICNpbmNsdWRlIDxrdm0teDg2L211bHRp
Ym9vdC5oPgo+ICAgI2luY2x1ZGUgPGt2bS14ODYvbXVsdGlib290X2RlZnMuaD4KPiAtI2luY2x1
ZGUgPGt2bS14ODYvY3B1X3g4Nl82NC5oPgo+ICAgI2luY2x1ZGUgPHVrL2FyY2gvbGltaXRzLmg+
Cj4gICAjaW5jbHVkZSA8dWsvYXJjaC90eXBlcy5oPgo+ICAgI2luY2x1ZGUgPHVrL3BsYXQvY29u
c29sZS5oPgo+IEBAIC0xMzQsNyArMTM1LDggQEAgdm9pZCBfbGlia3ZtcGxhdF9lbnRyeSh2b2lk
ICphcmcpCj4gICAKPiAgIAlfbGlia3ZtcGxhdF9pbml0X2NvbnNvbGUoKTsKPiAgIAlfaW5pdF9j
cHVmZWF0dXJlcygpOwo+IC0JY3B1X2luaXQoKTsKPiArCXRyYXBzX2luaXQoKTsKPiArCWludGN0
cmxfaW5pdCgpOwo+ICAgCj4gICAJdWtfcHJpbnRkKERMVkxfSU5GTywgIkVudGVyaW5nIGZyb20g
S1ZNICh4ODYpLi4uXG4iKTsKPiAgIAl1a19wcmludGQoRExWTF9JTkZPLCAiICAgICBtdWx0aWJv
b3Q6ICVwXG4iLCBtaSk7Cj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL3g4Ni90cmFwcy5jIGIvcGxh
dC9rdm0veDg2L3RyYXBzLmMKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAu
LjI3ZWY2ZDkKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9rdm0veDg2L3RyYXBzLmMKPiBA
QCAtMCwwICsxLDE4NiBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogSVNDICovCj4g
Ky8qCj4gKyAqIEF1dGhvcnM6IERhbiBXaWxsaWFtcwo+ICsgKiAgICAgICAgICBNYXJ0aW4gTHVj
aW5hCj4gKyAqICAgICAgICAgIEZlbGlwZSBIdWljaSA8ZmVsaXBlLmh1aWNpQG5lY2xhYi5ldT4K
PiArICogICAgICAgICAgRmxvcmlhbiBTY2htaWR0IDxmbG9yaWFuLnNjaG1pZHRAbmVjbGFiLmV1
Pgo+ICsgKgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNyBJQk0KPiArICogQ29weXJpZ2h0
IChjKSAyMDE2LTIwMTcgRG9ja2VyLCBJbmMuCj4gKyAqIENvcHlyaWdodCAoYykgMjAxNyBORUMg
RXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbgo+ICsgKgo+ICsgKiBQZXJtaXNzaW9uIHRvIHVz
ZSwgY29weSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlCj4gKyAqIGZv
ciBhbnkgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92
aWRlZAo+ICsgKiB0aGF0IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1p
c3Npb24gbm90aWNlIGFwcGVhcgo+ICsgKiBpbiBhbGwgY29waWVzLgo+ICsgKgo+ICsgKiBUSEUg
U09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxM
Cj4gKyAqIFdBUlJBTlRJRVMgV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcg
QUxMIElNUExJRUQKPiArICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQo+ICsgKiBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkg
U1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IKPiArICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUwo+ICsgKiBPRiBV
U0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCj4g
KyAqIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBP
UiBJTgo+ICsgKiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElT
IFNPRlRXQVJFLgo+ICsgKi8KPiArCj4gKyNpbmNsdWRlIDxzdHJpbmcuaD4KPiArI2luY2x1ZGUg
PHVrL2FyY2gvbGNwdS5oPgo+ICsjaW5jbHVkZSA8eDg2L2Rlc2MuaD4KPiArI2luY2x1ZGUgPGt2
bS14ODYvdHJhcHMuaD4KPiArCj4gK3N0YXRpYyBzdHJ1Y3Qgc2VnX2Rlc2MzMiBjcHVfZ2R0NjRb
R0RUX05VTV9FTlRSSUVTXSBfX2FsaWduNjRiOwo+ICsKPiArLyoKPiArICogVGhlIG1vbml0b3Ig
KHVrdm0pIG9yIGJvb3Rsb2FkZXIgKyBib290c3RyYXAgKHZpcnRpbykgc3RhcnRzIHVzIHVwIHdp
dGggYQo+ICsgKiBib290c3RyYXAgR0RUIHdoaWNoIGlzICJpbnZpc2libGUiIHRvIHRoZSBndWVz
dCwgaW5pdCBhbmQgc3dpdGNoIHRvIG91ciBvd24KPiArICogR0RULgo+ICsgKgo+ICsgKiBUaGlz
IGlzIGRvbmUgcHJpbWFyaWx5IHNpbmNlIHdlIG5lZWQgdG8gZG8gTFRSIGxhdGVyIGluIGEgcHJl
ZGljdGFibGUKPiArICogZmFzaGlvbi4KPiArICovCj4gK3N0YXRpYyB2b2lkIGdkdF9pbml0KHZv
aWQpCj4gK3sKPiArCXZvbGF0aWxlIHN0cnVjdCBkZXNjX3RhYmxlX3B0cjY0IGdkdHB0cjsKPiAr
Cj4gKwltZW1zZXQoY3B1X2dkdDY0LCAwLCBzaXplb2YoY3B1X2dkdDY0KSk7Cj4gKwljcHVfZ2R0
NjRbR0RUX0RFU0NfQ09ERV0ucmF3ID0gR0RUX0RFU0NfQ09ERV9WQUw7Cj4gKwljcHVfZ2R0NjRb
R0RUX0RFU0NfREFUQV0ucmF3ID0gR0RUX0RFU0NfREFUQV9WQUw7Cj4gKwo+ICsJZ2R0cHRyLmxp
bWl0ID0gc2l6ZW9mKGNwdV9nZHQ2NCkgLSAxOwo+ICsJZ2R0cHRyLmJhc2UgPSAoX191NjQpICZj
cHVfZ2R0NjQ7Cj4gKwlfX2FzbV9fIF9fdm9sYXRpbGVfXygibGdkdCAoJTApIiA6OiJyIigmZ2R0
cHRyKSk7Cj4gKwkvKgo+ICsJICogVE9ETzogVGVjaG5pY2FsbHkgd2Ugc2hvdWxkIHJlbG9hZCBh
bGwgc2VnbWVudCByZWdpc3RlcnMgaGVyZSwgaW4KPiArCSAqIHByYWN0aWNlIHRoaXMgZG9lc24n
dCBtYXR0ZXIgc2luY2UgdGhlIGJvb3RzdHJhcCBHRFQgbWF0Y2hlcyBvdXJzLAo+ICsJICogZm9y
IG5vdy4KPiArCSAqLwo+ICt9Cj4gKwo+ICtzdGF0aWMgc3RydWN0IHRzczY0IGNwdV90c3M7Cj4g
Kwo+ICtzdGF0aWMgY2hhciBjcHVfaW50cl9zdGFja1s0MDk2XTsgLyogSVNUMSAqLwo+ICtzdGF0
aWMgY2hhciBjcHVfdHJhcF9zdGFja1s0MDk2XTsgLyogSVNUMiAqLwo+ICtzdGF0aWMgY2hhciBj
cHVfbm1pX3N0YWNrWzQwOTZdOyAgLyogSVNUMyAqLwo+ICsKPiArc3RhdGljIHZvaWQgdHNzX2lu
aXQodm9pZCkKPiArewo+ICsJc3RydWN0IHNlZ19kZXNjNjQgKnRkID0gKHZvaWQgKikgJmNwdV9n
ZHQ2NFtHRFRfREVTQ19UU1NfTE9dOwo+ICsKPiArCWNwdV90c3MuaXN0WzBdID0gKF9fdTY0KSAm
Y3B1X2ludHJfc3RhY2tbc2l6ZW9mKGNwdV9pbnRyX3N0YWNrKV07Cj4gKwljcHVfdHNzLmlzdFsx
XSA9IChfX3U2NCkgJmNwdV90cmFwX3N0YWNrW3NpemVvZihjcHVfdHJhcF9zdGFjayldOwo+ICsJ
Y3B1X3Rzcy5pc3RbMl0gPSAoX191NjQpICZjcHVfbm1pX3N0YWNrW3NpemVvZihjcHVfbm1pX3N0
YWNrKV07Cj4gKwo+ICsJdGQtPmxpbWl0X2xvID0gc2l6ZW9mKGNwdV90c3MpOwo+ICsJdGQtPmJh
c2VfbG8gPSAoX191NjQpICZjcHVfdHNzOwo+ICsJdGQtPnR5cGUgPSAweDk7Cj4gKwl0ZC0+emVy
byA9IDA7Cj4gKwl0ZC0+ZHBsID0gMDsKPiArCXRkLT5wID0gMTsKPiArCXRkLT5saW1pdF9oaSA9
IDA7Cj4gKwl0ZC0+Z3JhbiA9IDA7Cj4gKwl0ZC0+YmFzZV9oaSA9IChfX3U2NCkgJmNwdV90c3Mg
Pj4gMjQ7Cj4gKwl0ZC0+emVybzEgPSAwOwo+ICsKPiArCWJhcnJpZXIoKTsKPiArCV9fYXNtX18g
X192b2xhdGlsZV9fKAo+ICsJCSJsdHIgJTAiCj4gKwkJOgo+ICsJCTogInIiICgodW5zaWduZWQg
c2hvcnQpIChHRFRfREVTQ19UU1NfTE8gKiA4KSkKPiArCSk7Cj4gK30KPiArCj4gKwo+ICsvKiBE
ZWNsYXJlIHRoZSB0cmFwcyB1c2VkIG9ubHkgYnkgdGhpcyBwbGF0Zm9ybTogKi8KPiArREVDTEFS
RV9UUkFQX0VDKG5taSwgICAgICAgICAgICJOTUkiKQo+ICtERUNMQVJFX1RSQVBfRUMoZG91Ymxl
X2ZhdWx0LCAgImRvdWJsZSBmYXVsdCIpCj4gK0RFQ0xBUkVfVFJBUF9FQyh2aXJ0X2Vycm9yLCAg
ICAidmlydHVhbGl6YXRpb24gZXJyb3IiKQo+ICsKPiArCj4gK3N0YXRpYyBzdHJ1Y3Qgc2VnX2dh
dGVfZGVzYzY0IGNwdV9pZHRbSURUX05VTV9FTlRSSUVTXSBfX2FsaWduNjRiOwo+ICsKPiArc3Rh
dGljIHZvaWQgaWR0X2ZpbGxnYXRlKHVuc2lnbmVkIGludCBudW0sIHZvaWQgKmZ1biwgdW5zaWdu
ZWQgaW50IGlzdCkKPiArewo+ICsJc3RydWN0IHNlZ19nYXRlX2Rlc2M2NCAqZGVzYyA9ICZjcHVf
aWR0W251bV07Cj4gKwo+ICsJLyoKPiArCSAqIEFsbCBnYXRlcyBhcmUgaW50ZXJydXB0IGdhdGVz
LCBhbGwgaGFuZGxlcnMgcnVuIHdpdGggaW50ZXJydXB0cyBvZmYuCj4gKwkgKi8KPiArCWRlc2Mt
Pm9mZnNldF9oaSA9IChfX3U2NCkgZnVuID4+IDE2Owo+ICsJZGVzYy0+b2Zmc2V0X2xvID0gKF9f
dTY0KSBmdW4gJiAweGZmZmY7Cj4gKwlkZXNjLT5zZWxlY3RvciA9IEdEVF9ERVNDX09GRlNFVChH
RFRfREVTQ19DT0RFKTsKPiArCWRlc2MtPmlzdCA9IGlzdDsKPiArCWRlc2MtPnR5cGUgPSAxNDsg
LyogPT0gMGIxMTEwICovCj4gKwlkZXNjLT5kcGwgPSAwOwo+ICsJZGVzYy0+cCA9IDE7Cj4gK30K
PiArCj4gK3ZvbGF0aWxlIHN0cnVjdCBkZXNjX3RhYmxlX3B0cjY0IGlkdHB0cjsKPiArCj4gK3N0
YXRpYyB2b2lkIGlkdF9pbml0KHZvaWQpCj4gK3sKPiArCS8qCj4gKwkgKiBMb2FkIHRyYXAgdmVj
dG9ycy4gQWxsIHRyYXBzIHJ1biBvbiBJU1QyIChjcHVfdHJhcF9zdGFjayksIGV4Y2VwdCBmb3IK
PiArCSAqIHRoZSBleGNlcHRpb25zLgo+ICsJICovCj4gKyNkZWZpbmUgRklMTF9UUkFQX0dBVEUo
bmFtZSwgaXN0KSBleHRlcm4gdm9pZCBjcHVfdHJhcF8jI25hbWUodm9pZCk7IFwKPiArCWlkdF9m
aWxsZ2F0ZShUUkFQXyMjbmFtZSwgQVNNX1RSQVBfU1lNKG5hbWUpLCBpc3QpCj4gKwlGSUxMX1RS
QVBfR0FURShkaXZpZGVfZXJyb3IsICAgIDIpOwo+ICsJRklMTF9UUkFQX0dBVEUoZGVidWcsICAg
ICAgICAgICAyKTsKPiArCUZJTExfVFJBUF9HQVRFKG5taSwgICAgICAgICAgICAgMyk7IC8qICNO
TUkgcnVucyBvbiBJU1QzIChjcHVfbm1pX3N0YWNrKSAqLwo+ICsJRklMTF9UUkFQX0dBVEUoaW50
MywgICAgICAgICAgICAyKTsKPiArCUZJTExfVFJBUF9HQVRFKG92ZXJmbG93LCAgICAgICAgMik7
Cj4gKwlGSUxMX1RSQVBfR0FURShib3VuZHMsICAgICAgICAgIDIpOwo+ICsJRklMTF9UUkFQX0dB
VEUoaW52YWxpZF9vcCwgICAgICAyKTsKPiArCUZJTExfVFJBUF9HQVRFKG5vX2RldmljZSwgICAg
ICAgMik7Cj4gKwlGSUxMX1RSQVBfR0FURShkb3VibGVfZmF1bHQsICAgIDMpOyAvKiAjREYgcnVu
cyBvbiBJU1QzIChjcHVfbm1pX3N0YWNrKSAqLwo+ICsKPiArCUZJTExfVFJBUF9HQVRFKGludmFs
aWRfdHNzLCAgICAgMik7Cj4gKwlGSUxMX1RSQVBfR0FURShub19zZWdtZW50LCAgICAgIDIpOwo+
ICsJRklMTF9UUkFQX0dBVEUoc3RhY2tfZXJyb3IsICAgICAyKTsKPiArCUZJTExfVFJBUF9HQVRF
KGdwX2ZhdWx0LCAgICAgICAgMik7Cj4gKwlGSUxMX1RSQVBfR0FURShwYWdlX2ZhdWx0LCAgICAg
IDIpOwo+ICsKPiArCUZJTExfVFJBUF9HQVRFKGNvcHJvY19lcnJvciwgICAgMik7Cj4gKwlGSUxM
X1RSQVBfR0FURShhbGlnbm1lbnRfY2hlY2ssIDIpOwo+ICsJRklMTF9UUkFQX0dBVEUobWFjaGlu
ZV9jaGVjaywgICAyKTsKPiArCUZJTExfVFJBUF9HQVRFKHNpbWRfZXJyb3IsICAgICAgMik7Cj4g
KwlGSUxMX1RSQVBfR0FURSh2aXJ0X2Vycm9yLCAgICAgIDIpOwo+ICsKPiArCS8qCj4gKwkgKiBM
b2FkIGlycSB2ZWN0b3JzLiBBbGwgaXJxcyBydW4gb24gSVNUMSAoY3B1X2ludHJfc3RhY2spLgo+
ICsJICovCj4gKyNkZWZpbmUgRklMTF9JUlFfR0FURShudW0sIGlzdCkgZXh0ZXJuIHZvaWQgY3B1
X2lycV8jI251bSh2b2lkKTsgXAo+ICsJaWR0X2ZpbGxnYXRlKDMyICsgbnVtLCBjcHVfaXJxXyMj
bnVtLCBpc3QpCj4gKwlGSUxMX0lSUV9HQVRFKDAsIDEpOwo+ICsJRklMTF9JUlFfR0FURSgxLCAx
KTsKPiArCUZJTExfSVJRX0dBVEUoMiwgMSk7Cj4gKwlGSUxMX0lSUV9HQVRFKDMsIDEpOwo+ICsJ
RklMTF9JUlFfR0FURSg0LCAxKTsKPiArCUZJTExfSVJRX0dBVEUoNSwgMSk7Cj4gKwlGSUxMX0lS
UV9HQVRFKDYsIDEpOwo+ICsJRklMTF9JUlFfR0FURSg3LCAxKTsKPiArCUZJTExfSVJRX0dBVEUo
OCwgMSk7Cj4gKwlGSUxMX0lSUV9HQVRFKDksIDEpOwo+ICsJRklMTF9JUlFfR0FURSgxMCwgMSk7
Cj4gKwlGSUxMX0lSUV9HQVRFKDExLCAxKTsKPiArCUZJTExfSVJRX0dBVEUoMTIsIDEpOwo+ICsJ
RklMTF9JUlFfR0FURSgxMywgMSk7Cj4gKwlGSUxMX0lSUV9HQVRFKDE0LCAxKTsKPiArCUZJTExf
SVJRX0dBVEUoMTUsIDEpOwo+ICsKPiArCWlkdHB0ci5saW1pdCA9IHNpemVvZihjcHVfaWR0KSAt
IDE7Cj4gKwlpZHRwdHIuYmFzZSA9IChfX3U2NCkgJmNwdV9pZHQ7Cj4gKwlfX2FzbV9fIF9fdm9s
YXRpbGVfXygibGlkdCAoJTApIiA6OiAiciIgKCZpZHRwdHIpKTsKPiArfQo+ICsKCkNhbiB5b3Ug
cHJlZml4IHRoZXNlIGZ1bmN0aW9ucywgdG9vPwoKPiArdm9pZCB0cmFwc19pbml0KHZvaWQpCj4g
K3sKPiArCWdkdF9pbml0KCk7Cj4gKwl0c3NfaW5pdCgpOwo+ICsJaWR0X2luaXQoKTsKPiArfQo+
ICsKPiArdm9pZCB0cmFwc19maW5pKHZvaWQpCj4gK3sKPiArfQo+IAoKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlz
dApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 12:44:57 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 12:44:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fD8Ar-0007FX-TX; Mon, 30 Apr 2018 12:44:57 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=6+tk=ht=neclab.eu=simon.kuenzer@srs-us1.protection.inumbo.net>)
 id 1fD8Ap-0007FO-V2
 for minios-devel@lists.xen.org; Mon, 30 Apr 2018 12:44:56 +0000
X-Inumbo-ID: 1839e6ed-4c74-11e8-9728-bc764e045a96
Received: from mailer2.neclab.eu (unknown [195.37.70.41])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS
 id 1839e6ed-4c74-11e8-9728-bc764e045a96;
 Mon, 30 Apr 2018 14:43:34 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mailer2.neclab.eu (Postfix) with ESMTP id EE3D3F2015;
 Mon, 30 Apr 2018 14:44:51 +0200 (CEST)
X-Virus-Scanned: Amavisd on Debian GNU/Linux (neclab.eu)
Received: from mailer2.neclab.eu ([127.0.0.1])
 by localhost (atlas-b.office.hd [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id TyI07KdCoUNI; Mon, 30 Apr 2018 14:44:51 +0200 (CEST)
X-ENC: Last-Hop-TLS-encrypted
X-ENC: Last-Hop-TLS-encrypted
Received: from ENCELADUS.office.hd (enceladus.office.hd [192.168.24.52])
 (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mailer2.neclab.eu (Postfix) with ESMTPS id A74C1F2012;
 Mon, 30 Apr 2018 14:44:47 +0200 (CEST)
Received: from n-1075.office.hd (10.1.2.105) by skoll.office.hd
 (192.168.125.11) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 30 Apr
 2018 14:44:45 +0200
From: Simon Kuenzer <simon.kuenzer@neclab.eu>
To: Costin Lupu <costin.lupu@cs.pub.ro>, <minios-devel@lists.xen.org>
References: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522941678-21179-4-git-send-email-costin.lupu@cs.pub.ro>
Message-ID: <2575b959-3fa2-81d6-a553-15d976255b9b@neclab.eu>
Date: Mon, 30 Apr 2018 14:44:44 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <1522941678-21179-4-git-send-email-costin.lupu@cs.pub.ro>
Content-Language: en-US
X-Originating-IP: [10.1.2.105]
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 3/3] plat/kvm: Add KVM (x86_64)
 timer support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

U2VlIG15IGNvbW1lbnRzIGlubGluZS4KCk9uIDA1LjA0LjIwMTggMTc6MjEsIENvc3RpbiBMdXB1
IHdyb3RlOgo+IFdlIGFyZSB1c2luZyBUU0MgY2xvY2sgYXMgbWFpbiB0aW1lciBvbiBLVk0uCj4g
Cj4gU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPiAt
LS0KPiAgIHBsYXQva3ZtL01ha2VmaWxlLnVrICAgICAgICAgICAgICB8ICAgMyArCj4gICBwbGF0
L2t2bS9jbG9ja19zdWJyLmMgICAgICAgICAgICAgfCAyMjYgKysrKysrKysrKysrKysrKysrKysr
KysrCj4gICBwbGF0L2t2bS9pbmNsdWRlL2t2bS9jbG9ja19zdWJyLmggfCAgODMgKysrKysrKysr
Cj4gICBwbGF0L2t2bS9pbmNsdWRlL2t2bS90c2NjbG9jay5oICAgfCAgNDIgKysrKysKPiAgIHBs
YXQva3ZtL2lycS5jICAgICAgICAgICAgICAgICAgICB8ICAxMCArKwo+ICAgcGxhdC9rdm0vdGlt
ZS5jICAgICAgICAgICAgICAgICAgIHwgIDYyICsrKysrKysKPiAgIHBsYXQva3ZtL3RzY2Nsb2Nr
LmMgICAgICAgICAgICAgICB8IDM1NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKwo+ICAgNyBmaWxlcyBjaGFuZ2VkLCA3ODIgaW5zZXJ0aW9ucygrKQo+ICAgY3JlYXRlIG1v
ZGUgMTAwNjQ0IHBsYXQva3ZtL2Nsb2NrX3N1YnIuYwo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBs
YXQva3ZtL2luY2x1ZGUva3ZtL2Nsb2NrX3N1YnIuaAo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBs
YXQva3ZtL2luY2x1ZGUva3ZtL3RzY2Nsb2NrLmgKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0
L2t2bS90aW1lLmMKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2t2bS90c2NjbG9jay5jCj4g
Cj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL01ha2VmaWxlLnVrIGIvcGxhdC9rdm0vTWFrZWZpbGUu
dWsKPiBpbmRleCA0NjI1OGZmLi43NmM0MGYxIDEwMDY0NAo+IC0tLSBhL3BsYXQva3ZtL01ha2Vm
aWxlLnVrCj4gKysrIGIvcGxhdC9rdm0vTWFrZWZpbGUudWsKPiBAQCAtMzQsNCArMzQsNyBAQCBM
SUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3g4Ni9p
bnRjdHJsLmMKPiAgIExJQktWTVBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKExJQktWTVBM
QVRfQkFTRSkvc2h1dGRvd24uYwo+ICAgTElCS1ZNUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9
ICQoTElCS1ZNUExBVF9CQVNFKS9tZW1vcnkuYwo+ICAgTElCS1ZNUExBVF9TUkNTLXkgICAgICAg
ICAgICAgICs9ICQoTElCS1ZNUExBVF9CQVNFKS9pcnEuYwo+ICtMSUJLVk1QTEFUX1NSQ1MteSAg
ICAgICAgICAgICAgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3RpbWUuYwo+ICtMSUJLVk1QTEFUX1NS
Q1MteSAgICAgICAgICAgICAgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3RzY2Nsb2NrLmMKPiArTElC
S1ZNUExBVF9TUkNTLXkgICAgICAgICAgICAgICs9ICQoTElCS1ZNUExBVF9CQVNFKS9jbG9ja19z
dWJyLmMKPiAgIExJQktWTVBMQVRfU1JDUy15ICAgICAgICAgICAgICArPSAkKFVLX1BMQVRfQ09N
TU9OX0JBU0UpL2xjcHUuY3xjb21tb24KPiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0vY2xvY2tfc3Vi
ci5jIGIvcGxhdC9rdm0vY2xvY2tfc3Vici5jCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRl
eCAwMDAwMDAwLi42ZDczODhiCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL3BsYXQva3ZtL2Nsb2Nr
X3N1YnIuYwo+IEBAIC0wLDAgKzEsMjI2IEBACj4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVy
OiBJU0MgKi8KCkkgdGhpbmsgdGhpcyBzaG91bGQgYmUKLyogU1BEWC1MaWNlbnNlLUlkZW50aWZp
ZXI6IElTQyBBTkQgQlNELTItQ2xhdXNlLU5ldEJTRCBBTkQgQlNELTMtQ2xhdXNlICovCgo+ICsv
Kgo+ICsgKiBBdXRob3JzOiBNYXJ0aW4gTHVjaW5hCj4gKyAqICAgICAgICAgIFJpY2FyZG8gS29s
bGVyCj4gKyAqICAgICAgICAgIENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Cj4g
KyAqCj4gKyAqIENvcHlyaWdodCAoYykgMjAxNS0yMDE3IElCTQo+ICsgKiBDb3B5cmlnaHQgKGMp
IDIwMTYtMjAxNyBEb2NrZXIsIEluYy4KPiArICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVy
b3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbgo+ICsgKgo+ICsgKiBQZXJtaXNzaW9uIHRvIHVzZSwg
Y29weSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlCj4gKyAqIGZvciBh
bnkgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRl
ZAo+ICsgKiB0aGF0IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Np
b24gbm90aWNlIGFwcGVhcgo+ICsgKiBpbiBhbGwgY29waWVzLgo+ICsgKgo+ICsgKiBUSEUgU09G
VFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMCj4g
KyAqIFdBUlJBTlRJRVMgV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxM
IElNUExJRUQKPiArICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRQo+ICsgKiBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BF
Q0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IKPiArICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9S
IEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUwo+ICsgKiBPRiBVU0Us
IERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCj4gKyAq
IE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJ
Tgo+ICsgKiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTIFNP
RlRXQVJFLgo+ICsgKi8KPiArLyogVGFrZW4gZnJvbSBzb2xvNSBjbG9ja19zdWJyLmMgKi8KPiAr
Cj4gKy8qCSROZXRCU0Q6IGNsb2NrX3N1YnIuYyx2IDEuMjYgMjAxNC8xMi8yMiAxODowOToyMCBj
aHJpc3RvcyBFeHAgJAkqLwo+ICsKPiArLyotCj4gKyAqIENvcHlyaWdodCAoYykgMTk5NiBUaGUg
TmV0QlNEIEZvdW5kYXRpb24sIEluYy4KPiArICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KPiArICoK
PiArICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBU
aGUgTmV0QlNEIEZvdW5kYXRpb24KPiArICogYnkgR29yZG9uIFcuIFJvc3MKPiArICoKPiArICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Cj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+ICsgKiBhcmUgbWV0Ogo+ICsgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+
ICsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKPiArICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KPiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgTkVUQlNEIEZPVU5EQVRJT04sIElOQy4gQU5EIENPTlRSSUJVVE9SUwo+ICsgKiBgYEFTIElT
JycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQKPiArICogVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKPiArICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBGT1VOREFUSU9OIE9SIENPTlRSSUJVVE9S
Uwo+ICsgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SCj4gKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCj4gKyAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUwo+ICsgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgo+ICsgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQo+ICsgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRQo+ICsgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KPiArICovCj4g
Kwo+ICsvKgo+ICsgKiBDb3B5cmlnaHQgKGMpIDE5ODggVW5pdmVyc2l0eSBvZiBVdGFoLgo+ICsg
KiBDb3B5cmlnaHQgKGMpIDE5ODIsIDE5OTAsIDE5OTMKPiArICoJVGhlIFJlZ2VudHMgb2YgdGhl
IFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gKyAqCj4g
KyAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVy
a2VsZXkgYnkKPiArICogdGhlIFN5c3RlbXMgUHJvZ3JhbW1pbmcgR3JvdXAgb2YgdGhlIFVuaXZl
cnNpdHkgb2YgVXRhaCBDb21wdXRlcgo+ICsgKiBTY2llbmNlIERlcGFydG1lbnQuCj4gKyAqCj4g
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAo+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKPiArICogYXJlIG1ldDoKPiArICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgo+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4g
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCj4gKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZl
cnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCj4gKyAqICAgIG1heSBiZSB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0
d2FyZQo+ICsgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4K
PiArICoKPiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKPiArICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCj4gKyAqIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQo+ICsgKiBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TAo+ICsgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUwo+ICsgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKPiArICogSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QKPiArICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQo+ICsgKiBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCj4gKyAq
IFNVQ0ggREFNQUdFLgo+ICsgKgo+ICsgKiBmcm9tOiBVdGFoICRIZHI6IGNsb2NrLmMgMS4xOCA5
MS8wMS8yMSQKPiArICoKPiArICoJQCgjKWNsb2NrLmMJOC4yIChCZXJrZWxleSkgMS8xMi85NAo+
ICsgKi8KPiArCj4gKyNpbmNsdWRlIDxrdm0vY2xvY2tfc3Vici5oPgo+ICsKPiArLyogU29tZSBo
YW5keSBjb25zdGFudHMuICovCj4gKyNkZWZpbmUgU0VDU19QRVJfTUlOVVRFICAgICAgICAgNjAK
PiArI2RlZmluZSBTRUNTX1BFUl9IT1VSICAgICAgICAgICAzNjAwCj4gKyNkZWZpbmUgU0VDU19Q
RVJfREFZICAgICAgICAgICAgODY0MDAKPiArI2RlZmluZSBEQVlTX1BFUl9DT01NT05fWUVBUiAg
ICAzNjUKPiArI2RlZmluZSBEQVlTX1BFUl9MRUFQX1lFQVIgICAgICAzNjYKPiArI2RlZmluZSBT
RUNTX1BFUl9DT01NT05fWUVBUiAgICAoU0VDU19QRVJfREFZICogREFZU19QRVJfQ09NTU9OX1lF
QVIpCj4gKyNkZWZpbmUgU0VDU19QRVJfTEVBUF9ZRUFSICAgICAgKFNFQ1NfUEVSX0RBWSAqIERB
WVNfUEVSX0xFQVBfWUVBUikKPiArCj4gKy8qIFRyYWRpdGlvbmFsIFBPU0lYIGJhc2UgeWVhciAq
Lwo+ICsjZGVmaW5lCVBPU0lYX0JBU0VfWUVBUgkxOTcwCj4gKwo+ICsvKiBTb21lIGhhbmR5IGZ1
bmN0aW9ucyAqLwo+ICtzdGF0aWMgaW50IGRheXNfaW5fbW9udGgoaW50IG0pCj4gK3sKPiArCXN3
aXRjaCAobSkgewo+ICsJY2FzZSAyOgo+ICsJCXJldHVybiAyODsKPiArCWNhc2UgNDogY2FzZSA2
OiBjYXNlIDk6IGNhc2UgMTE6Cj4gKwkJcmV0dXJuIDMwOwo+ICsJY2FzZSAxOiBjYXNlIDM6IGNh
c2UgNTogY2FzZSA3OiBjYXNlIDg6IGNhc2UgMTA6IGNhc2UgMTI6Cj4gKwkJcmV0dXJuIDMxOwo+
ICsJZGVmYXVsdDoKPiArCQlyZXR1cm4gLTE7Cj4gKwl9Cj4gK30KPiArCj4gKy8qCj4gKyAqIFRo
aXMgaW5saW5lIGF2b2lkcyBzb21lIHVubmVjZXNzYXJ5IG1vZHVsbyBvcGVyYXRpb25zCj4gKyAq
IGFzIGNvbXBhcmVkIHdpdGggdGhlIHVzdWFsIG1hY3JvOgo+ICsgKiAgICggKCh5ZWFyICUgNCkg
PT0gMCAmJgo+ICsgKiAgICAgICh5ZWFyICUgMTAwKSAhPSAwKSB8fAo+ICsgKiAgICAgKCh5ZWFy
ICUgNDAwKSA9PSAwKSApCj4gKyAqIEl0IGlzIG90aGVyd2lzZSBlcXVpdmFsZW50Lgo+ICsgKi8K
PiArc3RhdGljIGludCBpc19sZWFwX3llYXIoX191NjQgeWVhcikKPiArewo+ICsJaWYgKCh5ZWFy
ICYgMykgIT0gMCkKPiArCQlyZXR1cm4gMDsKPiArCj4gKwlpZiAoKHllYXIgJSAxMDApICE9IDAp
Cj4gKwkJcmV0dXJuIDE7Cj4gKwo+ICsJcmV0dXJuICh5ZWFyICUgNDAwKSA9PSAwOwo+ICt9Cj4g
Kwo+ICtzdGF0aWMgaW50IGRheXNfcGVyX3llYXIoX191NjQgeWVhcikKPiArewo+ICsJcmV0dXJu
IGlzX2xlYXBfeWVhcih5ZWFyKSA/IERBWVNfUEVSX0xFQVBfWUVBUiA6IERBWVNfUEVSX0NPTU1P
Tl9ZRUFSOwo+ICt9Cj4gKwo+ICsvKgo+ICsgKiBHZW5lcmljIHJvdXRpbmVzIHRvIGNvbnZlcnQg
YmV0d2VlbiBhIFBPU0lYIGRhdGUKPiArICogKHNlY29uZHMgc2luY2UgMS8xLzE5NzApIGFuZCB5
ci9tby9kYXkvaHIvbWluL3NlYwo+ICsgKiBEZXJpdmVkIGZyb20gYXJjaC9ocDMwMC9ocDMwMC9j
bG9jay5jCj4gKyAqLwo+ICsKPiArI2RlZmluZSBGRUJSVUFSWSAgMgo+ICsKPiArLyogZm9yIGVh
c2llciBhbGlnbm1lbnQ6Cj4gKyAqIHRpbWUgZnJvbSB0aGUgZXBvY2ggdG8gMjAwMCAodGhlcmUg
d2VyZSA3IGxlYXAgeWVhcnMpOgo+ICsgKi8KPiArI2RlZmluZQlEQVlTVE8yMDAwICAgICAgICAg
KDM2NSAqIDMwICsgNykKPiArCj4gKy8qIDQgeWVhciBpbnRlcnZhbHMgaW5jbHVkZSAxIGxlYXAg
eWVhciAqLwo+ICsjZGVmaW5lCURBWVM0WUVBUlMgICAgICAgICAoMzY1ICogNCArIDEpCj4gKwo+
ICsvKiAxMDAgeWVhciBpbnRlcnZhbHMgaW5jbHVkZSAyNCBsZWFwIHllYXJzICovCj4gKyNkZWZp
bmUJREFZUzEwMFlFQVJTICAgICAgICgzNjUgKiAxMDAgKyAyNCkKPiArCj4gKy8qIDQwMCB5ZWFy
IGludGVydmFscyBpbmNsdWRlIDk3IGxlYXAgeWVhcnMgKi8KPiArI2RlZmluZQlEQVlTNDAwWUVB
UlMgICAgICAgKDM2NSAqIDQwMCArIDk3KQo+ICsKCkluIGdlbmVyYWwsIHdlIHNob3VsZCByZXZp
c2l0IHRoZSBuYW1pbmcgb2YgZnVuY3Rpb25zIHRoYXQgYXJlIApub24tc3RhdGljLiBJbiBvcmRl
ciB0byBhdm9pZCBuYW1pbmcgY29uZmxpY3RzIHdpdGggYXBwbGljYXRpb24gY29kZSAKbGF0ZXIs
IEkgd291bGQgcHJlZmVyIGFkZGluZyB0aGUgcHJlZml4IF9saWJrdm1wbGF0XyBpbiBvcmRlciB0
byBtYXJrIAp0aG9zZSBmdW5jdGlvbnMgYXMgbGlicmFyeS1pbnRlcm5hbC4gU2luY2UsIHRoZXNl
IGFyZSBuZXcgZmlsZXMsIGNhbiB5b3UgCmNhbGwgaXQgX2xpYmt2bXBsYXRfY2xvY2tfeW1kaG1z
X3RvX3NlY3MoKT8gWW91IG1heSBhbHNvIGFkb3B0IHRoaXMgCnNjaGVtZSB0byB0aGUgb3RoZXIg
ZnVuY3Rpb25zIHRoYXQgYXJlIG5vbi1zdGF0aWMgYW5kIG5vdCBwYXJ0IG9mIHRoZSAKdWtwbGF0
IEFQSS4KCkkga25vdyB0aGF0IG11Y2ggbW9yZSBjbGVhbmluZy11cCB3b3JrIG9mIHRoaXMgc29y
dCBoYXMgdG8gYmUgZG9uZSBidXQgCndlIHNob3VsZCBzdGFydCBzb21ld2hlcmUuIEkgdGhpbmsg
ZG9pbmcgdGhpcyB3aXRoIG5ldyBmaWxlcyBhbmQgCmZ1bmN0aW9ucyBpcyBnb29kIHN0YXJ0LgoK
QXMgd2UgZGlzY3Vzc2VkIG9mZi1saW5lLCBJIGFncmVlIHRoYXQgd2Ugc2hvdWxkIGludHJvZHVj
ZSBhIGRlc2lnbiAKcHJpbmNpcGxlIGRvY3VtZW50IHRoYXQgZXhwbGFpbnMgY29uc2lkZXJhdGlv
bnMgZm9yIFVuaWtyYWZ0IGFuZCBsaWJyYXJ5IApBUElzLgoKPiArX191NjQgY2xvY2tfeW1kaG1z
X3RvX3NlY3Moc3RydWN0IGJta19jbG9ja195bWRobXMgKmR0KQo+ICt7Cj4gKwlfX3U2NCBzZWNz
LCBpLCB5ZWFyLCBkYXlzOwo+ICsKPiArCXllYXIgPSBkdC0+ZHRfeWVhcjsKPiArCj4gKwkvKgo+
ICsJICogQ29tcHV0ZSBkYXlzIHNpbmNlIHN0YXJ0IG9mIHRpbWUKPiArCSAqIEZpcnN0IGZyb20g
eWVhcnMsIHRoZW4gZnJvbSBtb250aHMuCj4gKwkgKi8KPiArCWlmICh5ZWFyIDwgUE9TSVhfQkFT
RV9ZRUFSKQo+ICsJCXJldHVybiAwOwo+ICsKPiArCWRheXMgPSAwOwo+ICsJaWYgKGlzX2xlYXBf
eWVhcih5ZWFyKSAmJiBkdC0+ZHRfbW9uID4gRkVCUlVBUlkpCj4gKwkJZGF5cysrOwo+ICsKPiAr
CWlmICh5ZWFyIDwgMjAwMCkgewo+ICsJCS8qIHNpbXBsZSB3YXkgZm9yIGVhcmx5IHllYXJzICov
Cj4gKwkJZm9yIChpID0gUE9TSVhfQkFTRV9ZRUFSOyBpIDwgeWVhcjsgaSsrKQo+ICsJCQlkYXlz
ICs9IGRheXNfcGVyX3llYXIoaSk7Cj4gKwo+ICsJfSBlbHNlIHsKPiArCQkvKiB5ZWFycyBhcmUg
cHJvcGVybHkgYWxpZ25lZCAqLwo+ICsJCWRheXMgKz0gREFZU1RPMjAwMDsKPiArCQl5ZWFyIC09
IDIwMDA7Cj4gKwo+ICsJCWkgPSB5ZWFyIC8gNDAwOwo+ICsJCWRheXMgKz0gaSAqIERBWVM0MDBZ
RUFSUzsKPiArCQl5ZWFyIC09IGkgKiA0MDA7Cj4gKwo+ICsJCWkgPSB5ZWFyIC8gMTAwOwo+ICsJ
CWRheXMgKz0gaSAqIERBWVMxMDBZRUFSUzsKPiArCQl5ZWFyIC09IGkgKiAxMDA7Cj4gKwo+ICsJ
CWkgPSB5ZWFyIC8gNDsKPiArCQlkYXlzICs9IGkgKiBEQVlTNFlFQVJTOwo+ICsJCXllYXIgLT0g
aSAqIDQ7Cj4gKwo+ICsJCWZvciAoaSA9IGR0LT5kdF95ZWFyIC0geWVhcjsgaSA8IGR0LT5kdF95
ZWFyOyBpKyspCj4gKwkJCWRheXMgKz0gZGF5c19wZXJfeWVhcihpKTsKPiArCX0KPiArCj4gKwkv
KiBNb250aHMgKi8KPiArCWZvciAoaSA9IDE7IGkgPCBkdC0+ZHRfbW9uOyBpKyspCj4gKwkJZGF5
cyArPSBkYXlzX2luX21vbnRoKGkpOwo+ICsJZGF5cyArPSAoZHQtPmR0X2RheSAtIDEpOwo+ICsK
PiArCS8qIEFkZCBob3VycywgbWludXRlcywgc2Vjb25kcy4gKi8KPiArCXNlY3MgPSAoKChfX3U2
NCkgZGF5cwo+ICsJCSogMjQgKyBkdC0+ZHRfaG91cikKPiArCQkqIDYwICsgZHQtPmR0X21pbikK
PiArCQkqIDYwICsgZHQtPmR0X3NlYzsKPiArCj4gKwlyZXR1cm4gc2VjczsKPiArfQo+IGRpZmYg
LS1naXQgYS9wbGF0L2t2bS9pbmNsdWRlL2t2bS9jbG9ja19zdWJyLmggYi9wbGF0L2t2bS9pbmNs
dWRlL2t2bS9jbG9ja19zdWJyLmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAw
MDAuLjY2ZjgyOWIKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0v
Y2xvY2tfc3Vici5oCj4gQEAgLTAsMCArMSw4MyBAQAoKLyogU1BEWC1MaWNlbnNlLUlkZW50aWZp
ZXI6IElTQyBBTkQgQlNELTItQ2xhdXNlLU5ldEJTRCAqLwoKPiArLyogU1BEWC1MaWNlbnNlLUlk
ZW50aWZpZXI6IElTQyAqLwo+ICsvKgo+ICsgKiBBdXRob3JzOiBNYXJ0aW4gTHVjaW5hCj4gKyAq
ICAgICAgICAgIFJpY2FyZG8gS29sbGVyCj4gKyAqICAgICAgICAgIENvc3RpbiBMdXB1IDxjb3N0
aW4ubHVwdUBjcy5wdWIucm8+Cj4gKyAqCj4gKyAqIENvcHlyaWdodCAoYykgMjAxNS0yMDE3IElC
TQo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAxNyBEb2NrZXIsIEluYy4KPiArICogQ29weXJp
Z2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbgo+ICsgKgo+ICsg
KiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0ZSB0aGlz
IHNvZnR3YXJlCj4gKyAqIGZvciBhbnkgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhl
cmVieSBncmFudGVkLCBwcm92aWRlZAo+ICsgKiB0aGF0IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90
aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhcgo+ICsgKiBpbiBhbGwgY29waWVz
Lgo+ICsgKgo+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFV
VEhPUiBESVNDTEFJTVMgQUxMCj4gKyAqIFdBUlJBTlRJRVMgV0lUSCBSRUdBUkQgVE8gVEhJUyBT
T0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQKPiArICogV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQo+ICsgKiBBVVRIT1Ig
QkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IKPiArICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZS
T00gTE9TUwo+ICsgKiBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJ
T04gT0YgQ09OVFJBQ1QsCj4gKyAqIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9O
LCBBUklTSU5HIE9VVCBPRiBPUiBJTgo+ICsgKiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUiBQ
RVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgo+ICsgKi8KPiArLyogVGFrZW4gZnJvbSBzb2xv
NSBjbG9ja19zdWJyLmggKi8KPiArCj4gKy8qLQo+ICsgKiBDb3B5cmlnaHQgKGMpIDE5OTYgVGhl
IE5ldEJTRCBGb3VuZGF0aW9uLCBJbmMuCj4gKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gKyAq
Cj4gKyAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8g
VGhlIE5ldEJTRCBGb3VuZGF0aW9uCj4gKyAqIGJ5IEdvcmRvbiBXLiBSb3NzCj4gKyAqCj4gKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAo+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKPiArICogYXJlIG1ldDoKPiArICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
PiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgo+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCj4gKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCj4gKyAqCj4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIE5FVEJTRCBGT1VOREFUSU9OLCBJTkMuIEFORCBDT05UUklCVVRPUlMKPiArICogYGBBUyBJ
UycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVECj4gKyAqIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCj4gKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgRk9VTkRBVElPTiBPUiBDT05UUklCVVRP
UlMKPiArICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgo+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgo+ICsgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKPiArICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KPiArICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKPiArICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUKPiArICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4gKyAqLwo+
ICsKPiArI2lmbmRlZiBfQk1LX0NMT0NLX1NVQlJfSF8KPiArI2RlZmluZSBfQk1LX0NMT0NLX1NV
QlJfSF8KPiArCj4gKyNpbmNsdWRlIDx1ay9hcmNoL3R5cGVzLmg+Cj4gKwo+ICsvKgo+ICsgKiAi
UE9TSVggdGltZSIgdG8vZnJvbSAiWVkvTU0vREQvaGgvbW0vc3MiCj4gKyAqLwo+ICtzdHJ1Y3Qg
Ym1rX2Nsb2NrX3ltZGhtcyB7Cj4gKwlfX3U2NCBkdF95ZWFyOwo+ICsJX191OCBkdF9tb247Cj4g
KwlfX3U4IGR0X2RheTsKPiArCV9fdTggZHRfaG91cjsKPiArCV9fdTggZHRfbWluOwo+ICsJX191
OCBkdF9zZWM7Cj4gK307Cj4gKwo+ICtfX3U2NCBjbG9ja195bWRobXNfdG9fc2VjcyhzdHJ1Y3Qg
Ym1rX2Nsb2NrX3ltZGhtcyAqZHQpOwo+ICsKPiArLyoKPiArICogQkNEIHRvIGJpbmFyeS4KPiAr
ICovCj4gK3N0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IGJjZHRvYmluKHVuc2lnbmVkIGludCBi
Y2QpCj4gK3sKPiArCXJldHVybiAoKGJjZCA+PiA0KSAmIDB4MGYpICogMTAgKyAoYmNkICYgMHgw
Zik7Cj4gK30KPiArCj4gKyNlbmRpZiAvKiBfQk1LX0NMT0NLX1NVQlJfSF8gKi8KPiBkaWZmIC0t
Z2l0IGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0vdHNjY2xvY2suaCBiL3BsYXQva3ZtL2luY2x1ZGUv
a3ZtL3RzY2Nsb2NrLmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLjI3
ZDBlMDIKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0vdHNjY2xv
Y2suaAo+IEBAIC0wLDAgKzEsNDIgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJT
RC0zLUNsYXVzZSAqLwo+ICsvKgo+ICsgKiBBdXRob3JzOiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1
cHVAY3MucHViLnJvPgo+ICsgKgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUg
THRkLiwgTkVDIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+ICsgKgo+ICsgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKPiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCj4gKyAqIGFyZSBtZXQ6Cj4gKyAqCj4gKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0Cj4gKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KPiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQo+
ICsgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgo+ICsgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5
cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCj4gKyAqICAgIGNvbnRyaWJ1dG9ycyBt
YXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCj4g
KyAqICAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCj4gKyAqCj4gKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIgo+ICsgKiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCj4gKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCj4gKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUKPiArICog
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgo+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgo+ICsgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKPiArICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KPiArICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKPiArICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUKPiArICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4gKyAqCj4gKyAqIFRISVMgSEVB
REVSIE1BWSBOT1QgQkUgRVhUUkFDVEVEIE9SIE1PRElGSUVEIElOIEFOWSBXQVkuCj4gKyAqLwo+
ICsKPiArI2lmbmRlZiBfX0tWTV9UU0NDTE9DS19IX18KPiArI2RlZmluZSBfX0tWTV9UU0NDTE9D
S19IX18KPiArCgpTYW1lIHByZWZpeGluZyBoZXJlPyAiX2xpYmt2bXBsYXRfIiBmb3Iga3ZtcGxh
dCBpbnRlcm5hbCwgb3IgCiJsaWJrdm1wbGF0XyIgZm9yIEtWTSBwbGF0IG9ubHkgcHJvdmlkZWQg
ZnVuY3Rpb25hbGl0eS4KCj4gK2ludCB0c2NjbG9ja19pbml0KHZvaWQpOwo+ICtfX3U2NCB0c2Nj
bG9ja19tb25vdG9uaWModm9pZCk7Cj4gK19fdTY0IHRzY2Nsb2NrX2Vwb2Nob2Zmc2V0KHZvaWQp
Owo+ICsKPiArI2VuZGlmIC8qIF9fS1ZNX1RTQ0NMT0NLX0hfXyAqLwo+IGRpZmYgLS1naXQgYS9w
bGF0L2t2bS9pcnEuYyBiL3BsYXQva3ZtL2lycS5jCj4gaW5kZXggNTVmOGU2Ny4uYTNiMjEyMSAx
MDA2NDQKPiAtLS0gYS9wbGF0L2t2bS9pcnEuYwo+ICsrKyBiL3BsYXQva3ZtL2lycS5jCj4gQEAg
LTY4LDEyICs2OCwyMiBAQCB2b2lkIGlycV9yZWdpc3Rlcih1bnNpZ25lZCBsb25nIGlycSwgaXJx
X2hhbmRsZXJfZnVuY190IGZ1bmMsIHZvaWQgKmFyZykKPiAgIAlpbnRjdHJsX2NsZWFyX2lycShp
cnEpOwo+ICAgfQo+ICAgCj4gKy8qCj4gKyAqIFRPRE8gVGhpcyBpcyBhIHRlbXBvcmFyeSBzb2x1
dGlvbiB1c2VkIHRvIGlkZW50aWZ5IG5vbiBUU0MgY2xvY2sKPiArICogaW50ZXJydXB0cyBpbiBv
cmRlciB0byBzdG9wIHdhaXRpbmcgZm9yIGludGVycnVwdHMgd2l0aCBkZWFkbGluZS4KPiArICov
Cj4gK2V4dGVybiBsb25nIG5vbnRzY19pbnRlcnJ1cHRfYXNzZXJ0Owo+ICsKPiAgIHZvaWQgaXJx
X2hhbmRsZSh1bnNpZ25lZCBsb25nIGlycSkKPiAgIHsKPiAgIAlzdHJ1Y3QgaXJxX2hhbmRsZXIg
Kmg7Cj4gICAJaW50IGhhbmRsZWQgPSAwOwo+ICAgCj4gICAJVUtfU0xJU1RfRk9SRUFDSChoLCAm
aXJxX2hhbmRsZXJzW2lycV0sIGVudHJpZXMpIHsKPiArCQkvKiBUT0RPIGRlZmluZSBwbGF0Zm9y
bSB3aXNlIG1hY3JvIGZvciB0aW1lciBJUlEgbnVtYmVyICovCj4gKwkJaWYgKGlycSAhPSAwKQo+
ICsJCQlub250c2NfaW50ZXJydXB0X2Fzc2VydCA9IDE7Cj4gKwo+ICAgCQlpZiAoaC0+ZnVuYyho
LT5hcmcpID09IDEpIHsKPiAgIAkJCWhhbmRsZWQgPSAxOwo+ICAgCQkJYnJlYWs7Cj4gZGlmZiAt
LWdpdCBhL3BsYXQva3ZtL3RpbWUuYyBiL3BsYXQva3ZtL3RpbWUuYwo+IG5ldyBmaWxlIG1vZGUg
MTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uMTI3Njk5Nwo+IC0tLSAvZGV2L251bGwKPiArKysgYi9w
bGF0L2t2bS90aW1lLmMKPiBAQCAtMCwwICsxLDYyIEBACj4gKy8qIFNQRFgtTGljZW5zZS1JZGVu
dGlmaWVyOiBJU0MgKi8KPiArLyoKPiArICogQXV0aG9yczogRGFuIFdpbGxpYW1zCj4gKyAqICAg
ICAgICAgIE1hcnRpbiBMdWNpbmEKPiArICogICAgICAgICAgUmljYXJkbyBLb2xsZXIKPiArICog
ICAgICAgICAgQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPiArICoKPiArICog
Q29weXJpZ2h0IChjKSAyMDE1LTIwMTcgSUJNCj4gKyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3
IERvY2tlciwgSW5jLgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwg
TkVDIENvcnBvcmF0aW9uCj4gKyAqCj4gKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2Rp
ZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUKPiArICogZm9yIGFueSBwdXJwb3Nl
IHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCj4gKyAqIHRo
YXQgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ug
YXBwZWFyCj4gKyAqIGluIGFsbCBjb3BpZXMuCj4gKyAqCj4gKyAqIFRIRSBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwKPiArICogV0FSUkFO
VElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAo+
ICsgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFCj4gKyAqIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJF
Q1QsIElORElSRUNULCBPUgo+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFH
RVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCj4gKyAqIE9GIFVTRSwgREFUQSBPUiBQ
Uk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwKPiArICogTkVHTElHRU5D
RSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOCj4gKyAqIENP
Tk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCj4g
KyAqLwo+ICsvKiBUYWtlbiBmcm9tIHNvbG81IHRpbWUuYyAqLwo+ICsKPiArI2luY2x1ZGUgPHN0
ZGxpYi5oPgo+ICsjaW5jbHVkZSA8dWsvcGxhdC90aW1lLmg+Cj4gKyNpbmNsdWRlIDxrdm0vaXJx
Lmg+Cj4gKyNpbmNsdWRlIDxrdm0vdHNjY2xvY2suaD4KPiArI2luY2x1ZGUgPHVrL2Fzc2VydC5o
Pgo+ICsKPiArCj4gKy8qIHJldHVybiBucyBzaW5jZSB0aW1lX2luaXQoKSAqLwo+ICtfX25zZWMg
dWtwbGF0X21vbm90b25pY19jbG9jayh2b2lkKQo+ICt7Cj4gKwlyZXR1cm4gdHNjY2xvY2tfbW9u
b3RvbmljKCk7Cj4gK30KPiArCj4gKy8qIHJldHVybiB3YWxsIHRpbWUgaW4gbnNlY3MgKi8KPiAr
X19uc2VjIHVrcGxhdF9jbG9ja193YWxsKHZvaWQpCj4gK3sKPiArCXJldHVybiB0c2NjbG9ja19t
b25vdG9uaWMoKSArIHRzY2Nsb2NrX2Vwb2Nob2Zmc2V0KCk7Cj4gK30KPiArCj4gK3N0YXRpYyBp
bnQgdGltZXJfaGFuZGxlcih2b2lkICphcmcgX191bnVzZWQpCj4gK3sKPiArCS8qIFllcywgd2Ug
aGFuZGxlZCB0aGUgaXJxLiAqLwo+ICsJcmV0dXJuIDE7Cj4gK30KPiArCj4gKy8qIG11c3QgYmUg
Y2FsbGVkIGJlZm9yZSBpbnRlcnJ1cHRzIGFyZSBlbmFibGVkICovCj4gK3ZvaWQgdWtwbGF0X3Rp
bWVfaW5pdCh2b2lkKQo+ICt7Cj4gKwlpbnQgcmM7Cj4gKwo+ICsJaXJxX3JlZ2lzdGVyKDAsIHRp
bWVyX2hhbmRsZXIsIE5VTEwpOwo+ICsKPiArCXJjID0gdHNjY2xvY2tfaW5pdCgpOwo+ICsJVUtf
QVNTRVJUKHJjID09IDApOwo+ICt9Cj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL3RzY2Nsb2NrLmMg
Yi9wbGF0L2t2bS90c2NjbG9jay5jCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAw
MDAwLi4xMTk5ZjE4Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL3BsYXQva3ZtL3RzY2Nsb2NrLmMK
PiBAQCAtMCwwICsxLDM1NiBAQAo+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogSVNDICov
Cj4gKy8qCj4gKyAqIEF1dGhvcnM6IERhbiBXaWxsaWFtcwo+ICsgKiAgICAgICAgICBNYXJ0aW4g
THVjaW5hCj4gKyAqICAgICAgICAgIFJpY2FyZG8gS29sbGVyCj4gKyAqICAgICAgICAgIENvc3Rp
biBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Cj4gKyAqCj4gKyAqIENvcHlyaWdodCAoYykg
MjAxNS0yMDE3IElCTQo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAxNyBEb2NrZXIsIEluYy4K
PiArICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlv
bgo+ICsgKgo+ICsgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQvb3IgZGlz
dHJpYnV0ZSB0aGlzIHNvZnR3YXJlCj4gKyAqIGZvciBhbnkgcHVycG9zZSB3aXRoIG9yIHdpdGhv
dXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZAo+ICsgKiB0aGF0IHRoZSBhYm92ZSBj
b3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhcgo+ICsgKiBp
biBhbGwgY29waWVzLgo+ICsgKgo+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElT
IiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMCj4gKyAqIFdBUlJBTlRJRVMgV0lUSCBSRUdB
UkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQKPiArICogV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQo+
ICsgKiBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwg
T1IKPiArICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIg
UkVTVUxUSU5HIEZST00gTE9TUwo+ICsgKiBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhF
UiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCj4gKyAqIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9S
VElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTgo+ICsgKiBDT05ORUNUSU9OIFdJVEgg
VEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgo+ICsgKi8KPiArLyogVGFr
ZW4gZnJvbSBzb2xvNSB0c2NjbG9jay5jICovCj4gKwo+ICsvKi0KPiArICogQ29weXJpZ2h0IChj
KSAyMDE0LCAyMDE1IEFudHRpIEthbnRlZS4gIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCj4gKyAqIENv
cHlyaWdodCAoYykgMjAxNSBNYXJ0aW4gTHVjaW5hLiAgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KPiAr
ICogTW9kaWZpZWQgZm9yIHNvbG81IGJ5IFJpY2FyZG8gS29sbGVyIDxrb2xsZXJyQHVzLmlibS5j
b20+Cj4gKyAqCj4gKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAo+ICsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKPiArICogYXJlIG1ldDoK
PiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKPiArICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+ICsgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCj4gKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCj4gKyAqCj4gKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTCj4gKyAq
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECj4gKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKPiArICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCj4gKyAqIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMCj4gKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCj4gKyAqIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQo+ICsg
KiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVAo+ICsgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCj4gKyAqIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YKPiArICogU1VDSCBEQU1BR0UuCj4gKyAqLwo+ICsKPiArI2luY2x1ZGUgPHVrL3BsYXQv
bGNwdS5oPgo+ICsjaW5jbHVkZSA8dWsvcGxhdC90aW1lLmg+Cj4gKyNpbmNsdWRlIDx4ODYvY3B1
Lmg+Cj4gKyNpbmNsdWRlIDxrdm0vY2xvY2tfc3Vici5oPgo+ICsjaW5jbHVkZSA8dWsvcHJpbnQu
aD4KPiArI2luY2x1ZGUgPHVrL2Fzc2VydC5oPgo+ICsKPiArI2RlZmluZSBOU0VDX1BFUl9TRUMg
ICAgICAgICAxMDAwMDAwMDAwVUxMCj4gKwo+ICsjZGVmaW5lIFRJTUVSX0NOVFIgICAgICAgICAg
IDB4NDAKPiArI2RlZmluZSBUSU1FUl9NT0RFICAgICAgICAgICAweDQzCj4gKyNkZWZpbmUgVElN
RVJfU0VMMCAgICAgICAgICAgMHgwMAo+ICsjZGVmaW5lIFRJTUVSX0xBVENIICAgICAgICAgIDB4
MDAKPiArI2RlZmluZSBUSU1FUl9SQVRFR0VOICAgICAgICAweDA0Cj4gKyNkZWZpbmUgVElNRVJf
T05FU0hPVCAgICAgICAgMHgwOAo+ICsjZGVmaW5lIFRJTUVSXzE2QklUICAgICAgICAgIDB4MzAK
PiArI2RlZmluZSBUSU1FUl9IWiAgICAgICAgICAgICAxMTkzMTgyCj4gKwo+ICsjZGVmaW5lCVJU
Q19DT01NQU5EICAgICAgICAgIDB4NzAKPiArI2RlZmluZQlSVENfREFUQSAgICAgICAgICAgICAw
eDcxCj4gKyNkZWZpbmUgUlRDX05NSV9ESVNBQkxFICAgICAgKDE8PDgpCj4gKyNkZWZpbmUgUlRD
X05NSV9FTkFCTEUgICAgICAgMAo+ICsjZGVmaW5lCVJUQ19TRUMgICAgICAgICAgICAgIDB4MDAK
PiArI2RlZmluZQlSVENfTUlOICAgICAgICAgICAgICAweDAyCj4gKyNkZWZpbmUJUlRDX0hPVVIg
ICAgICAgICAgICAgMHgwNAo+ICsjZGVmaW5lCVJUQ19EQVkgICAgICAgICAgICAgIDB4MDcKPiAr
I2RlZmluZQlSVENfTU9OVEggICAgICAgICAgICAweDA4Cj4gKyNkZWZpbmUJUlRDX1lFQVIgICAg
ICAgICAgICAgMHgwOQo+ICsjZGVmaW5lCVJUQ19TVEFUVVNfQSAgICAgICAgIDB4MGEKPiArI2Rl
ZmluZQlSVENfVUlQICAgICAgICAgICAgICAoMTw8NykKPiArCj4gKy8qIFJUQyB3YWxsIHRpbWUg
b2Zmc2V0IGF0IG1vbm90b25pYyB0aW1lIGJhc2UuICovCj4gK3N0YXRpYyBfX3U2NCBydGNfZXBv
Y2hvZmZzZXQ7Cj4gKwo+ICsvKgo+ICsgKiBUU0MgY2xvY2sgc3BlY2lmaWMuCj4gKyAqLwo+ICsK
PiArLyogQmFzZSB0aW1lIHZhbHVlcyBhdCB0aGUgbGFzdCBjYWxsIHRvIHRzY2Nsb2NrX21vbm90
b25pYygpLiAqLwo+ICtzdGF0aWMgX191NjQgdGltZV9iYXNlOwo+ICtzdGF0aWMgX191NjQgdHNj
X2Jhc2U7Cj4gKwo+ICsvKiBNdWx0aXBsaWVyIGZvciBjb252ZXJ0aW5nIFRTQyB0aWNrcyB0byBu
c2Vjcy4gKDAuMzIpIGZpeGVkIHBvaW50LiAqLwo+ICtzdGF0aWMgX191MzIgdHNjX211bHQ7Cj4g
Kwo+ICsvKgo+ICsgKiBNdWx0aXBsaWVyIGZvciBjb252ZXJ0aW5nIG5zZWNzIHRvIFBJVCB0aWNr
cy4gKDEuMzIpIGZpeGVkIHBvaW50Lgo+ICsgKgo+ICsgKiBDYWxjdWxhdGVkIGFzOgo+ICsgKgo+
ICsgKiAgICAgZiA9IE5TRUNfUEVSX1NFQyAvIFRJTUVSX0haICAgKDAuMzEpIGZpeGVkIHBvaW50
Lgo+ICsgKiAgICAgcGl0X211bHQgPSAxIC8gZiAgICAgICAgICAgICAgKDEuMzIpIGZpeGVkIHBv
aW50Lgo+ICsgKi8KPiArc3RhdGljIGNvbnN0IF9fdTMyIHBpdF9tdWx0ID0KPiArCSgxVUxMIDw8
IDYzKSAvICgoTlNFQ19QRVJfU0VDIDw8IDMxKSAvIFRJTUVSX0haKTsKPiArCj4gKwo+ICsvKgo+
ICsgKiBSZWFkIHRoZSBjdXJyZW50IGk4MjU0IGNoYW5uZWwgMCB0aWNrIGNvdW50Lgo+ICsgKi8K
PiArc3RhdGljIHVuc2lnbmVkIGludCBpODI1NF9nZXR0aWNrKHZvaWQpCj4gK3sKPiArCV9fdTE2
IHJkdmFsOwo+ICsKPiArCW91dGIoVElNRVJfTU9ERSwgVElNRVJfU0VMMCB8IFRJTUVSX0xBVENI
KTsKPiArCXJkdmFsICA9IGluYihUSU1FUl9DTlRSKTsKPiArCXJkdmFsIHw9IChpbmIoVElNRVJf
Q05UUikgPDwgOCk7Cj4gKwlyZXR1cm4gcmR2YWw7Cj4gK30KPiArCj4gKy8qCj4gKyAqIERlbGF5
IGZvciBhcHByb3hpbWF0ZWx5IG4gbWljcm9zZWNvbmRzIHVzaW5nIHRoZSBpODI1NCBjaGFubmVs
IDAgY291bnRlci4KPiArICogVGltZXIgbXVzdCBiZSBwcm9ncmFtbWVkIGFwcHJvcHJpYXRlbHkg
YmVmb3JlIGNhbGxpbmcgdGhpcyBmdW5jdGlvbi4KPiArICovCj4gK3N0YXRpYyB2b2lkIGk4MjU0
X2RlbGF5KHVuc2lnbmVkIGludCBuKQo+ICt7Cj4gKwl1bnNpZ25lZCBpbnQgY3VyX3RpY2ssIGlu
aXRpYWxfdGljazsKPiArCWludCByZW1haW5pbmc7Cj4gKwljb25zdCB1bnNpZ25lZCBsb25nIHRp
bWVyX3J2YWwgPSBUSU1FUl9IWiAvIDEwMDsKPiArCj4gKwlpbml0aWFsX3RpY2sgPSBpODI1NF9n
ZXR0aWNrKCk7Cj4gKwo+ICsJcmVtYWluaW5nID0gKHVuc2lnbmVkIGxvbmcgbG9uZykgbiAqIFRJ
TUVSX0haIC8gMTAwMDAwMDsKPiArCj4gKwl3aGlsZSAocmVtYWluaW5nID4gMSkgewo+ICsJCWN1
cl90aWNrID0gaTgyNTRfZ2V0dGljaygpOwo+ICsJCWlmIChjdXJfdGljayA+IGluaXRpYWxfdGlj
aykKPiArCQkJcmVtYWluaW5nIC09IHRpbWVyX3J2YWwgLSAoY3VyX3RpY2sgLSBpbml0aWFsX3Rp
Y2spOwo+ICsJCWVsc2UKPiArCQkJcmVtYWluaW5nIC09IGluaXRpYWxfdGljayAtIGN1cl90aWNr
Owo+ICsJCWluaXRpYWxfdGljayA9IGN1cl90aWNrOwo+ICsJfQo+ICt9Cj4gKwo+ICsvKgo+ICsg
KiBSZWFkIGEgUlRDIHJlZ2lzdGVyLiBEdWUgdG8gUEMgcGxhdGZvcm0gYnJhaW5kZWFkLW5lc3Mg
YWxzbyBkaXNhYmxlcyBOTUkuCj4gKyAqLwo+ICtzdGF0aWMgaW5saW5lIF9fdTggcnRjX3JlYWQo
X191OCByZWcpCj4gK3sKPiArCW91dGIoUlRDX0NPTU1BTkQsIHJlZyB8IFJUQ19OTUlfRElTQUJM
RSk7Cj4gKwlyZXR1cm4gaW5iKFJUQ19EQVRBKTsKPiArfQo+ICsKPiArLyoKPiArICogUmV0dXJu
IGN1cnJlbnQgUlRDIHRpbWUuIE5vdGUgdGhhdCBkdWUgdG8gd2FpdGluZyBmb3IgdGhlIHVwZGF0
ZSBjeWNsZSB0bwo+ICsgKiBjb21wbGV0ZSwgdGhpcyBjYWxsIG1heSB0YWtlIHNvbWUgdGltZS4K
PiArICovCj4gK3N0YXRpYyBfX3U2NCBydGNfZ2V0dGltZW9mZGF5KHZvaWQpCj4gK3sKPiArCXN0
cnVjdCBibWtfY2xvY2tfeW1kaG1zIGR0Owo+ICsJdW5zaWduZWQgbG9uZyBmbGFnczsKPiArCj4g
KwlmbGFncyA9IHVrcGxhdF9sY3B1X3NhdmVfaXJxZigpOwo+ICsKPiArCS8qCj4gKwkgKiBJZiBS
VENfVUlQIGlzIGRvd24sIHdlIGhhdmUgYXQgbGVhc3QgMjQ0dXMgdG8gb2J0YWluIGEKPiArCSAq
IGNvbnNpc3RlbnQgcmVhZGluZyBiZWZvcmUgYW4gdXBkYXRlIGNhbiBvY2N1ci4KPiArCSAqLwo+
ICsJd2hpbGUgKHJ0Y19yZWFkKFJUQ19TVEFUVVNfQSkgJiBSVENfVUlQKQo+ICsJCWNvbnRpbnVl
Owo+ICsKPiArCWR0LmR0X3NlYyA9IGJjZHRvYmluKHJ0Y19yZWFkKFJUQ19TRUMpKTsKPiArCWR0
LmR0X21pbiA9IGJjZHRvYmluKHJ0Y19yZWFkKFJUQ19NSU4pKTsKPiArCWR0LmR0X2hvdXIgPSBi
Y2R0b2JpbihydGNfcmVhZChSVENfSE9VUikpOwo+ICsJZHQuZHRfZGF5ID0gYmNkdG9iaW4ocnRj
X3JlYWQoUlRDX0RBWSkpOwo+ICsJZHQuZHRfbW9uID0gYmNkdG9iaW4ocnRjX3JlYWQoUlRDX01P
TlRIKSk7Cj4gKwlkdC5kdF95ZWFyID0gYmNkdG9iaW4ocnRjX3JlYWQoUlRDX1lFQVIpKSArIDIw
MDA7Cj4gKwo+ICsJdWtwbGF0X2xjcHVfcmVzdG9yZV9pcnFmKGZsYWdzKTsKPiArCj4gKwlyZXR1
cm4gdWthcmNoX3RpbWVfc2VjX3RvX25zZWMoY2xvY2tfeW1kaG1zX3RvX3NlY3MoJmR0KSk7Cj4g
K30KPiArCj4gKy8qCj4gKyAqIEJldHVybiBtb25vdG9uaWMgdGltZSB1c2luZyBUU0MgY2xvY2su
Cj4gKyAqLwo+ICtfX3U2NCB0c2NjbG9ja19tb25vdG9uaWModm9pZCkKPiArewo+ICsJX191NjQg
dHNjX25vdywgdHNjX2RlbHRhOwo+ICsKPiArCS8qCj4gKwkgKiBVcGRhdGUgdGltZV9iYXNlICht
b25vdG9uaWMgdGltZSkgYW5kIHRzY19iYXNlIChUU0MgdGltZSkuCj4gKwkgKi8KPiArCXRzY19u
b3cgPSByZHRzYygpOwo+ICsJdHNjX2RlbHRhID0gdHNjX25vdyAtIHRzY19iYXNlOwo+ICsJdGlt
ZV9iYXNlICs9IG11bDY0XzMyKHRzY19kZWx0YSwgdHNjX211bHQpOwo+ICsJdHNjX2Jhc2UgPSB0
c2Nfbm93Owo+ICsKPiArCXJldHVybiB0aW1lX2Jhc2U7Cj4gK30KPiArCj4gKy8qCj4gKyAqIENh
bGlicmF0ZSBUU0MgYW5kIGluaXRpYWxpc2UgVFNDIGNsb2NrLgo+ICsgKi8KPiAraW50IHRzY2Ns
b2NrX2luaXQodm9pZCkKPiArewo+ICsJX191NjQgdHNjX2ZyZXEsIHJ0Y19ib290Owo+ICsKPiAr
CS8qIEluaXRpYWxpc2UgaTgyNTQgdGltZXIgY2hhbm5lbCAwIHRvIG1vZGUgMiBhdCAxMDAgSHog
Ki8KPiArCW91dGIoVElNRVJfTU9ERSwgVElNRVJfU0VMMCB8IFRJTUVSX1JBVEVHRU4gfCBUSU1F
Ul8xNkJJVCk7Cj4gKwlvdXRiKFRJTUVSX0NOVFIsIChUSU1FUl9IWiAvIDEwMCkgJiAweGZmKTsK
PiArCW91dGIoVElNRVJfQ05UUiwgKFRJTUVSX0haIC8gMTAwKSA+PiA4KTsKPiArCj4gKwkvKgo+
ICsJICogUmVhZCBSVEMgInRpbWUgYXQgYm9vdCIuIFRoaXMgbXVzdCBiZSBkb25lIGp1c3QgYmVm
b3JlIHRzY19iYXNlIGlzCj4gKwkgKiBpbml0aWFsaXNlZCBpbiBvcmRlciB0byBnZXQgYSBjb3Jy
ZWN0IG9mZnNldCBiZWxvdy4KPiArCSAqLwo+ICsJcnRjX2Jvb3QgPSBydGNfZ2V0dGltZW9mZGF5
KCk7Cj4gKwo+ICsJLyoKPiArCSAqIENhbGN1bGF0ZSBUU0MgZnJlcXVlbmN5IGJ5IGNhbGlicmF0
aW5nIGFnYWluc3QgYW4gMC4xcyBkZWxheQo+ICsJICogdXNpbmcgdGhlIGk4MjU0IHRpbWVyLgo+
ICsJICovCgpXb3csIHRoaXMgaXMgYWRkcyBhIDEwMG1zIGJvb3QgZGVsYXkgdG8gdGhlIFVuaWtl
cm5lbHMgb24gS1ZNLiBDYW4geW91IApwdXQgYW4gVE9ETyBjb21tZW50IGZvciByZXZpc2l0aW5n
IHRoaXMgbGF0ZXI/IE1heWJlIHdlIGNhbiBmaW5kIGEgCmRpZmZlcmVudCBtZXRob2QgdG8gZ2V0
IHRoZSBjb3JyZWN0IHZhbHVlIGZvciB0aGUgVFNDIGZyZXF1ZW5jeS4KCj4gKwl0c2NfYmFzZSA9
IHJkdHNjKCk7Cj4gKwlpODI1NF9kZWxheSgxMDAwMDApOwo+ICsJdHNjX2ZyZXEgPSAocmR0c2Mo
KSAtIHRzY19iYXNlKSAqIDEwOwo+ICsJdWtfcHJpbnRkKERMVkxfSU5GTywKPiArCQkiQ2xvY2sg
c291cmNlOiBUU0MsIGZyZXF1ZW5jeSBlc3RpbWF0ZSBpcyAlbGx1IEh6XG4iLAo+ICsJCSh1bnNp
Z25lZCBsb25nIGxvbmcpIHRzY19mcmVxKTsgLy9UT0RPCj4gKwo+ICsJLyoKPiArCSAqIENhbGN1
bGF0ZSBUU0Mgc2NhbGluZyBtdWx0aXBsaWVyLgo+ICsJICoKPiArCSAqICgwLjMyKSB0c2NfbXVs
dCA9IE5TRUNfUEVSX1NFQyAoMzIuMzIpIC8gdHNjX2ZyZXEgKDMyLjApCj4gKwkgKi8KPiArCXRz
Y19tdWx0ID0gKE5TRUNfUEVSX1NFQyA8PCAzMikgLyB0c2NfZnJlcTsKPiArCj4gKwkvKgo+ICsJ
ICogTW9ub3RvbmljIHRpbWUgYmVnaW5zIGF0IHRzY19iYXNlIChmaXJzdCByZWFkIG9mIFRTQyBi
ZWZvcmUKPiArCSAqIGNhbGlicmF0aW9uKS4KPiArCSAqLwo+ICsJdGltZV9iYXNlID0gbXVsNjRf
MzIodHNjX2Jhc2UsIHRzY19tdWx0KTsKPiArCj4gKwkvKgo+ICsJICogQ29tcHV0ZSBSVEMgZXBv
Y2ggb2Zmc2V0IGJ5IHN1YnRyYWN0aW5nIG1vbm90b25pYyB0aW1lX2Jhc2UgZnJvbSBSVEMKPiAr
CSAqIHRpbWUgYXQgYm9vdC4KPiArCSAqLwo+ICsJcnRjX2Vwb2Nob2Zmc2V0ID0gcnRjX2Jvb3Qg
LSB0aW1lX2Jhc2U7Cj4gKwo+ICsJLyoKPiArCSAqIEluaXRpYWxpc2UgaTgyNTQgdGltZXIgY2hh
bm5lbCAwIHRvIG1vZGUgNCAob25lIHNob3QpLgo+ICsJICovCj4gKwlvdXRiKFRJTUVSX01PREUs
IFRJTUVSX1NFTDAgfCBUSU1FUl9PTkVTSE9UIHwgVElNRVJfMTZCSVQpOwo+ICsKPiArCXJldHVy
biAwOwo+ICt9Cj4gKwo+ICsvKgo+ICsgKiBSZXR1cm4gZXBvY2ggb2Zmc2V0ICh3YWxsIHRpbWUg
b2Zmc2V0IHRvIG1vbm90b25pYyBjbG9jayBzdGFydCkuCj4gKyAqLwo+ICtfX3U2NCB0c2NjbG9j
a19lcG9jaG9mZnNldCh2b2lkKQo+ICt7Cj4gKwlyZXR1cm4gcnRjX2Vwb2Nob2Zmc2V0Owo+ICt9
Cj4gKwo+ICsvKgo+ICsgKiBNaW5pbXVtIGRlbHRhIHRvIHNsZWVwIHVzaW5nIFBJVC4gUHJvZ3Jh
bW1pbmcgc2VlbXMgdG8gaGF2ZSBhbiBvdmVyaGVhZCBvZgo+ICsgKiAzLTR1cywgYnV0IHBsYXkg
aXQgc2FmZSBoZXJlLgo+ICsgKi8KPiArI2RlZmluZSBQSVRfTUlOX0RFTFRBCTE2Cj4gKwo+ICsv
Kgo+ICsgKiBSZXR1cm5zIGVhcmx5IGlmIGFueSBpbnRlcnJ1cHRzIGFyZSBzZXJ2aWNlZCwgb3Ig
aWYgdGhlIHJlcXVlc3RlZCBkZWxheSBpcwo+ICsgKiB0b28gc2hvcnQuIE11c3QgYmUgY2FsbGVk
IHdpdGggaW50ZXJydXB0cyBkaXNhYmxlZCwgd2lsbCBlbmFibGUgaW50ZXJydXB0cwo+ICsgKiAi
YXRvbWljYWxseSIgZHVyaW5nIGlkbGUgbG9vcC4KPiArICovCj4gK3N0YXRpYyB2b2lkIHRzY2Ns
b2NrX2NwdV9ibG9jayhfX3U2NCB1bnRpbCkKPiArewo+ICsJX191NjQgbm93LCBkZWx0YV9uczsK
PiArCV9fdTY0IGRlbHRhX3RpY2tzOwo+ICsJdW5zaWduZWQgaW50IHRpY2tzOwo+ICsKPiArCVVL
X0FTU0VSVCh1a3BsYXRfbGNwdV9pcnFzX2Rpc2FibGVkKCkpOwo+ICsKPiArCW5vdyA9IHVrcGxh
dF9tb25vdG9uaWNfY2xvY2soKTsKPiArCj4gKwkvKgo+ICsJICogQ29tcHV0ZSBkZWx0YSBpbiBQ
SVQgdGlja3MuIFJldHVybiBpZiBpdCBpcyBsZXNzIHRoYW4gbWluaW11bSBzYWZlCj4gKwkgKiBh
bW91bnQgb2YgdGlja3MuICBFc3NlbnRpYWxseSB0aGlzIHdpbGwgY2F1c2UgdXMgdG8gc3BpbiB1
bnRpbAo+ICsJICogdGhlIHRpbWVvdXQuCj4gKwkgKi8KPiArCWRlbHRhX25zID0gdW50aWwgLSBu
b3c7Cj4gKwlkZWx0YV90aWNrcyA9IG11bDY0XzMyKGRlbHRhX25zLCBwaXRfbXVsdCk7Cj4gKwlp
ZiAoZGVsdGFfdGlja3MgPCBQSVRfTUlOX0RFTFRBKSB7Cj4gKwkJLyoKPiArCQkgKiBTaW5jZSB3
ZSBhcmUgInNwaW5uaW5nIiwgcXVpY2tseSBlbmFibGUgaW50ZXJydXB0cyBpbgo+ICsJCSAqIHRo
ZSBob3BlcyB0aGF0IHdlIG1pZ2h0IGdldCBuZXcgd29yayBhbmQgY2FuIGRvIHNvbWV0aGluZwo+
ICsJCSAqIGVsc2UgdGhhbiBzcGluLgo+ICsJCSAqLwo+ICsJCXVrcGxhdF9sY3B1X2VuYWJsZV9p
cnEoKTsKPiArCQlub3AoKTsgLyogaW50cyBhcmUgZW5hYmxlZCAxIGluc3RyIGFmdGVyIHN0aSAq
Lwo+ICsJCXVrcGxhdF9sY3B1X2Rpc2FibGVfaXJxKCk7Cj4gKwkJcmV0dXJuOwo+ICsJfQo+ICsK
PiArICAgIC8qCj4gKyAgICAgKiBQcm9ncmFtIHRoZSB0aW1lciB0byBpbnRlcnJ1cHQgdGhlIENQ
VSBhZnRlciB0aGUgZGVsYXkgaGFzIGV4cGlyZWQuCj4gKyAgICAgKiBNYXhpbXVtIHRpbWVyIGRl
bGF5IGlzIDY1NTM1IHRpY2tzLgo+ICsgICAgICovCj4gKwlpZiAoZGVsdGFfdGlja3MgPiA2NTUz
NSkKPiArCQl0aWNrcyA9IDY1NTM1Owo+ICsJZWxzZQo+ICsJCXRpY2tzID0gZGVsdGFfdGlja3M7
Cj4gKwo+ICsJLyoKPiArCSAqIE5vdGUgdGhhdCBhY2NvcmRpbmcgdG8gdGhlIEludGVsIDgyQzU0
IGRhdGFzaGVldCwgcDEyIHRoZQo+ICsJICogaW50ZXJydXB0IGlzIGFjdHVhbGx5IGRlbGl2ZXJl
ZCBpbiBOICsgMSB0aWNrcy4KPiArCSAqLwo+ICsJdGlja3MgLT0gMTsKPiArCW91dGIoVElNRVJf
Q05UUiwgdGlja3MgJiAweGZmKTsKPiArCW91dGIoVElNRVJfQ05UUiwgdGlja3MgPj4gOCk7Cj4g
Kwo+ICsJLyoKPiArCSAqIFdhaXQgZm9yIGFueSBpbnRlcnJ1cHQuIElmIHdlIGdvdCBhbiBpbnRl
cnJ1cHQgdGhlbgo+ICsJICoganVzdCByZXR1cm4gaW50byB0aGUgc2NoZWR1bGVyIHdoaWNoIHdp
bGwgY2hlY2sgaWYgdGhlcmUgaXMKPiArCSAqIHdvcmsgdG8gZG8gYW5kIHNlbmQgdXMgYmFjayBo
ZXJlIGlmIG5vdC4KPiArCSAqCj4gKwkgKiBUT0RPOiBJdCB3b3VsZCBiZSBtb3JlIGVmZmljaWVu
dCBmb3IgbG9uZ2VyIHNsZWVwcyB0byBiZQo+ICsJICogYWJsZSB0byBkaXN0aW5ndWlzaCBpZiB0
aGUgaW50ZXJydXB0IHdhcyB0aGUgUElUIGludGVycnVwdAo+ICsJICogYW5kIG5vIG90aGVyLCBi
dXQgdGhpcyB3aWxsIGRvIGZvciBub3cuCj4gKwkgKi8KPiArCXVrcGxhdF9sY3B1X2hhbHRfaXJx
KCk7Cj4gK30KPiArCj4gK2xvbmcgbm9udHNjX2ludGVycnVwdF9hc3NlcnQ7Cj4gKwo+ICt2b2lk
IHRpbWVfYmxvY2tfdW50aWwoX19zbnNlYyB1bnRpbCkKPiArewo+ICsJdm9sYXRpbGUgbG9uZyAq
cG5vbnRzY19pbnRlcnJ1cHRfYXNzZXJ0ID0gJm5vbnRzY19pbnRlcnJ1cHRfYXNzZXJ0Owo+ICsK
PiArCXdoaWxlICgoX19zbnNlYykgdWtwbGF0X21vbm90b25pY19jbG9jaygpIDwgdW50aWwpIHsK
PiArCQl0c2NjbG9ja19jcHVfYmxvY2sodW50aWwpOwo+ICsKPiArCQkvKiB3aG8gdHJpZ2dlcmVk
IHRoZSBpbnRlcnJ1cHQ/ICovCj4gKwkJaWYgKCpwbm9udHNjX2ludGVycnVwdF9hc3NlcnQpIHsK
PiArCQkJLyogaXQgd2FzIGFub3RoZXIgZGV2aWNlLCBzdG9wIGJsb2NraW5nICovCj4gKwkJCW5v
bnRzY19pbnRlcnJ1cHRfYXNzZXJ0ID0gMDsKPiArCQkJYnJlYWs7Cj4gKwkJfQo+ICsJCS8qIGl0
IHdhcyB1cyAqLwo+ICsJfQo+ICt9Cj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0Ck1pbmlvcy1kZXZlbEBs
aXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4v
bGlzdGluZm8vbWluaW9zLWRldmVs

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 17:25:27 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 17:25:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fDCYH-0000Jw-0I; Mon, 30 Apr 2018 17:25:25 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fywh=ht=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fDCYF-0000Jr-NZ
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 17:25:23 +0000
X-Inumbo-ID: 472ed4b0-4c9b-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id 472ed4b0-4c9b-11e8-9728-bc764e045a96;
 Mon, 30 Apr 2018 19:24:03 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 66777F;
 Mon, 30 Apr 2018 10:25:21 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 90F7D3F487;
 Mon, 30 Apr 2018 10:25:19 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-31-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <73b16765-30af-64c2-99cb-1f78a7c2df02@arm.com>
Date: Mon, 30 Apr 2018 18:25:17 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-31-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 30/43] arm64: add a new helper ioremap
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMTYvMDQvMTggMDc6MzIsIEh1YW5nIFNoaWppZSB3cm90ZToKPiBUaGlz
IHBhdGNoIGFkZHMgYSBuZXcgaGVscGVyIDogaW9yZW1hcC4KPiAKPiBUaGlzIGhlbHBlciBpcyB1
c2VkIGJ5IHRoZSBHSUMgbWFwcGluZy4KPiBUaGUgcmV0dXJuIGFkZHJlc3MgaXMgZ290IGZyb20g
dGhlIGRlbWFuZCBhcmVhLgoKSSB0aGluayB5b3UgbWVhbiAidGhlIG1hcHBpbmcgd2lsbCBiZSBh
bGxvY2F0ZWQgZnJvbSB0aGUgZGVtYW5kIGFyZWEiLgoKQWxzbywgaXQgd291bGQgYmUgbmljZSB5
b3UgZXhwbGFpbiB3aHkgeW91IGFyZSBtb3ZpbmcgZnJvbSB0b192aXJ0IC0+IApmdWxsIG1hcHBp
bmcuCgo+IAo+IFNpZ25lZC1vZmYtYnk6IEh1YW5nIFNoaWppZSA8c2hpamllLmh1YW5nQGFybS5j
b20+CgpbLi4uXQoKPiBAQCAtMjM0LDYgKzIyOCw3IEBAIHZvaWQgaW5pdF9wYWdldGFibGUodW5z
aWduZWQgbG9uZyAqc3RhcnRfcGZuLCB1bnNpZ25lZCBsb25nIGJhc2UsCj4gICB9Cj4gICAKPiAg
IHN0YXRpYyB1bnNpZ25lZCBsb25nIHZpcnRfa2VybmVsX2FyZWFfZW5kOwo+ICtzdGF0aWMgdW5z
aWduZWQgbG9uZyB2aXJ0X2RlbWFuZF9hcmVhX2VuZDsKPiAgIHZvaWQgYXJjaF9tbV9wcmVpbml0
KHZvaWQgKmR0Yl9wb2ludGVyKQo+ICAgewo+ICAgICAgIHBhZGRyX3QgKipkdGJfcCA9IGR0Yl9w
b2ludGVyOwo+IEBAIC0yNDEsNiArMjM2LDcgQEAgdm9pZCBhcmNoX21tX3ByZWluaXQodm9pZCAq
ZHRiX3BvaW50ZXIpCj4gICAgICAgdWludHB0cl90IGVuZCA9ICh1aW50cHRyX3QpICZfZW5kOwo+
ICAgCj4gICAgICAgdmlydF9rZXJuZWxfYXJlYV9lbmQgPSBWSVJUX0tFUk5FTF9BUkVBOwo+ICsg
ICAgdmlydF9kZW1hbmRfYXJlYV9lbmQgPSBWSVJUX0RFTUFORF9BUkVBOwoKU2hvdWxkIG5vdCB0
aGlzIGJlbG9uZyB0byBhcmNoX2luaXRfZGVtYW5kX21hcHBpbmdfYXJlYT8KCj4gICAKPiAgICAg
ICBkdGIgPSB0b192aXJ0KCgocGFkZHJfdClkdGIpKTsKPiAgICAgICBmaXJzdF9mcmVlX3BmbiA9
IFBGTl9VUCh0b19waHlzKGVuZCkpOwo+IEBAIC0yOTMsNiArMjg5LDM2IEBAIHVuc2lnbmVkIGxv
bmcgbWFwX2ZyYW1lX3ZpcnQodW5zaWduZWQgbG9uZyBtZm4pCj4gICAgICAgcmV0dXJuIGFkZHI7
Cj4gICB9Cj4gICAKPiArdW5zaWduZWQgbG9uZyBhbGxvY2F0ZV9vbmRlbWFuZCh1bnNpZ25lZCBs
b25nIG4sIHVuc2lnbmVkIGxvbmcgYWxpZ25tZW50KQo+ICt7Cj4gKyAgICB1bnNpZ25lZCBsb25n
IGFkZHI7Cj4gKwo+ICsgICAgYWRkciA9IHZpcnRfZGVtYW5kX2FyZWFfZW5kOwo+ICsKPiArICAg
IC8qIEp1c3QgZm9yIHNpbXBsZSwgbWFrZSBpdCBwYWdlIGFsaWduZWQuICovCgpXaGF0IGlmIHRo
ZSBjYWxsZXIgcmVxdWlyZXMgYSBkaWZmZXJlbnQgYWxpZ25tZW50PyBJIHdhcyBraW5kIG9mIApl
eHBlY3RpbmcgdGhlIHBhcmFtZXRlciBhbGlnbm1lbnQgdG8gYmUgdXNlZCBzb21laG93IGluIHlv
dXIgYWxnby4KCj4gKyAgICB2aXJ0X2RlbWFuZF9hcmVhX2VuZCArPSAobiArIFBBR0VfU0laRSAt
IDEpICYgUEFHRV9NQVNLOyA+ICsKPiArICAgIEFTU0VSVCh2aXJ0X2RlbWFuZF9hcmVhX2VuZCA8
PSBWSVJUX0hFQVBfQVJFQSk7CgpBU1NFUlQgaXMgZ29pbmcgdG8gZGlzYXBwZWFyIGluIG5vbi1k
ZWJ1ZyBidWlsZC4gU28gaXMgaXQgdGhlIHJpZ2h0IAp0aGluZyB0byB1c2U/IEFzIHRoZSBjYWxs
ZXIgaGFzIG5vIHdheSB0byBrbm93IHdoZXRoZXIgdGhlcmUgYXJlIGZyZWUgCnZpcnR1YWwgc3Bh
Y2UsIGl0IHdvdWxkIGJlIGJldHRlciB0byByZXR1cm4gMCAoYXMgeDg2IGRvZXMpLiBTbyB0aGUg
CmNhbGxlciBpcyBhYmxlIHRvIGtub3cgc29tZXRoaW5nIHdlbnQgd3JvbmcuCgo+ICsKPiArICAg
IHJldHVybiBhZGRyOwo+ICt9Cj4gKwo+ICt2b2lkICppb3JlbWFwKHBhZGRyX3QgcGFkZHIsIHVu
c2lnbmVkIGxvbmcgc2l6ZSkKPiArewo+ICsgICAgdW5zaWduZWQgbG9uZyBhZGRyOwo+ICsgICAg
aW50IHJldDsKPiArCj4gKyAgICBhZGRyID0gYWxsb2NhdGVfb25kZW1hbmQoc2l6ZSwgMSk7Cj4g
KyAgICBpZiAoIWFkZHIpCgpJIGtub3cgdGhhdCB0aGUgQVJNIHBvcnQgaGFzIGJlZW4gcmVhbGx5
IG1lc3N5IGluIGNvZGluZyBzdHlsZSwgYnV0IApwbGVhc2UgdXNlIHRoZSBjb3JyZWN0IGNvZGlu
ZyBzdHlsZSBpbiBtaW5pLU9TLiBUaGlzIHNob3VsZCBiZToKCmlmICggIWFkZHIgKQoKPiArICAg
ICAgICByZXR1cm4gTlVMTDsKPiArCj4gKyAgICByZXQgPSBidWlsZF9wYWdldGFibGUoYWRkciwg
UEhZU19QRk4ocGFkZHIpLCBQRk5fVVAoc2l6ZSksIE1FTV9ERVZfQVRUUiwKPiArICAgICAgICAg
ICAgICAgICAgaW5pdF9wYWdldGFibGVfb2s/IGFsbG9jX25ld19wYWdlOiBlYXJseV9hbGxvY19w
YWdlLCAzKTsKPiArICAgIGlmIChyZXQgPCAwKQoKU2FtZSBoZXJlLgoKPiArICAgICAgICByZXR1
cm4gTlVMTDsKPiArICAgIHJldHVybiAodm9pZCopYWRkcjsKPiArfQo+ICsKPiAgIHZvaWQgYXJj
aF9pbml0X21tKHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3Bmbl9wLCB1bnNpZ25lZCBsb25nICptYXhf
cGZuX3ApCj4gICB7Cj4gICAgICAgaW50IG1lbW9yeTsKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9h
cm0vYXJjaF9tbS5oIGIvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCj4gaW5kZXggNGYzZmQ4Zi4uYWQx
MjJlNyAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2FybS9hcmNoX21tLmgKPiArKysgYi9pbmNsdWRl
L2FybS9hcmNoX21tLmgKPiBAQCAtNyw2ICs3LDcgQEAgdHlwZWRlZiB1aW50NjRfdCBwYWRkcl90
Owo+ICAgI2RlZmluZSBNQVhfTUVNX1NJWkUgICAgICAgICAgICAoMVVMIDw8IDM5KQo+ICAgI2Rl
ZmluZSBWSVJUX0tFUk5FTF9BUkVBICAgICAgICAoKHVuc2lnbmVkIGxvbmcpdG9fdmlydChNQVhf
TUVNX1NJWkUpKQo+ICAgI2RlZmluZSBWSVJUX0RFTUFORF9BUkVBICAgICAgICAoVklSVF9LRVJO
RUxfQVJFQSArIE1BWF9NRU1fU0laRSkKPiArI2RlZmluZSBWSVJUX0hFQVBfQVJFQSAgICAgICAg
ICAoVklSVF9ERU1BTkRfQVJFQSArIE1BWF9NRU1fU0laRSkKCkkgaGF2ZSBhc2tlZCB0aGF0IG9u
IGEgcHJldmlvdXMgcGF0Y2ggYW5kIGdvaW5nIHRvIHJlcGVhdCBoZXJlLiBJIGFtIApnb2luZyB0
byBuZWVkIG1vcmUgY29udGV4dCBhYm91dCB0aGUgbWVhbmluZyBvZiBNQVhfTUVNX1NJWkUgaGVy
ZSBhbmQgCndoeSB5b3UgbmVlZCAyXjM5TUIgb2Ygb24gZGVtYW5kIG1lbW9yeS4KCj4gICAKPiAg
IHR5cGVkZWYgdWludDY0X3QgbHBhZV90Owo+ICAgCj4gQEAgLTQwLDQgKzQxLDUgQEAgdm9pZCBh
cmNoX21tX3ByZWluaXQodm9pZCAqZHRiX3BvaW50ZXIpOwo+ICAgLy8gRklYTUUKPiAgICNkZWZp
bmUgbWFwX2ZyYW1lcyhmLCBuKSAoTlVMTCkKPiAgIAo+ICt2b2lkICppb3JlbWFwKHBhZGRyX3Qg
YWRkciwgdW5zaWduZWQgbG9uZyBzaXplKTsKPiAgICNlbmRpZgo+IAoKQ2hlZXJzLAoKLS0gCkp1
bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMueGVucHJvamVj
dC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL21pbmlv
cy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 17:37:03 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 17:37:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fDCjX-00012X-9W; Mon, 30 Apr 2018 17:37:03 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=fywh=ht=arm.com=julien.grall@srs-us1.protection.inumbo.net>)
 id 1fDCjV-00012N-8K
 for minios-devel@lists.xenproject.org; Mon, 30 Apr 2018 17:37:01 +0000
X-Inumbo-ID: e744c70f-4c9c-11e8-9728-bc764e045a96
Received: from foss.arm.com (unknown [217.140.101.70])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id e744c70f-4c9c-11e8-9728-bc764e045a96;
 Mon, 30 Apr 2018 19:35:41 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id ABE181596;
 Mon, 30 Apr 2018 10:36:59 -0700 (PDT)
Received: from [10.1.206.53] (e108454-lin.cambridge.arm.com [10.1.206.53])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id DD3EB3F487;
 Mon, 30 Apr 2018 10:36:57 -0700 (PDT)
To: Huang Shijie <shijie.huang@arm.com>, wei.liu2@citrix.com
References: <1523860343-16382-1-git-send-email-shijie.huang@arm.com>
 <1523860343-16382-32-git-send-email-shijie.huang@arm.com>
From: Julien Grall <julien.grall@arm.com>
Message-ID: <84faf41e-112f-cfc2-6cd1-897961054b6c@arm.com>
Date: Mon, 30 Apr 2018 18:36:56 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <1523860343-16382-32-git-send-email-shijie.huang@arm.com>
Content-Language: en-US
Subject: Re: [Minios-devel] [PATCH v3 31/43] arm64: implement the mmap/munmap
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Cc: jgross@suse.com, wei.chen@arm.com, steve.capper@arm.com,
 vlad.babchuk@gmail.com, minios-devel@lists.xenproject.org, kaly.xin@arm.com,
 samuel.thibault@ens-lyon.org, baozich@gmail.com, nd@arm.com
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

SGkgU2hpamllLAoKT24gMTYvMDQvMTggMDc6MzIsIEh1YW5nIFNoaWppZSB3cm90ZToKPiBUaGlz
IHBhdGNoIGltcGxlbWVudHMgdGhlIG1tYXAvbXVubWFwIGJ5IGFkZGluZzoKPiAgICAgbWFwX2Zy
YW1lc19leCgpL3VubWFwX2ZyYW1lcy9tYXBfemVybwo+IAo+IGZsdXNoX3RsYl9wYWdlKCkgaXMg
dXNlZCB0byBpbnZhbGlkYXRlIGEgcGFnZS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBIdWFuZyBTaGlq
aWUgPHNoaWppZS5odWFuZ0Bhcm0uY29tPgo+IC0tLQo+ICAgYXJjaC9hcm0vbW0uYyAgICAgICAg
ICB8IDcwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
Cj4gICBpbmNsdWRlL2FybS9hcmNoX21tLmggIHwgIDQgKysrCj4gICBpbmNsdWRlL2FybS9hcm02
NC9vcy5oIHwgMTYgKysrKysrKysrKysrCj4gICAzIGZpbGVzIGNoYW5nZWQsIDkwIGluc2VydGlv
bnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbW0uYyBiL2FyY2gvYXJtL21tLmMKPiBp
bmRleCBiMWMxOTJhLi5lYjU5MDRmIDEwMDY0NAo+IC0tLSBhL2FyY2gvYXJtL21tLmMKPiArKysg
Yi9hcmNoL2FybS9tbS5jCj4gQEAgLTMxOSw2ICszMTksNzYgQEAgdm9pZCAqaW9yZW1hcChwYWRk
cl90IHBhZGRyLCB1bnNpZ25lZCBsb25nIHNpemUpCj4gICAgICAgcmV0dXJuICh2b2lkKilhZGRy
Owo+ICAgfQo+ICAgCj4gK3ZvaWQgKm1hcF9mcmFtZXNfZXgoY29uc3QgdW5zaWduZWQgbG9uZyAq
ZiwgdW5zaWduZWQgbG9uZyBuLCB1bnNpZ25lZCBsb25nIHN0cmlkZSwKPiArICAgICAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBsb25nIGluY3JlbWVudCwgdW5zaWduZWQgbG9uZyBhbGlnbm1lbnQs
IGRvbWlkX3QgaWQsCj4gKyAgICAgICAgICAgICAgICAgICAgaW50ICplcnIsIHVuc2lnbmVkIGxv
bmcgcHJvdF9vcmlnaW4pCj4gK3sKPiArICAgIHVuc2lnbmVkIGxvbmcgYWRkciwgdmE7Cj4gKyAg
ICB1bnNpZ25lZCBsb25nIGRvbmUgPSAwOwo+ICsgICAgdW5zaWduZWQgbG9uZyBtZm47Cj4gKyAg
ICB1bnNpZ25lZCBsb25nIHByb3QgPSBNRU1fREVGX0FUVFI7Cj4gKyAgICBpbnQgcmV0Owo+ICsK
PiArICAgIGlmICghZikKPiArICAgICAgICByZXR1cm4gTlVMTDsKPiArCj4gKyAgICBhZGRyID0g
YWxsb2NhdGVfb25kZW1hbmQobiwgYWxpZ25tZW50KTsKPiArICAgIGlmICghYWRkcikKPiArICAg
ICAgICByZXR1cm4gTlVMTDsKPiArCj4gKyAgICB2YSA9IGFkZHI7Cj4gKyAgICBpZiAocHJvdF9v
cmlnaW4gPT0gTUVNX1JPX0FUVFIpCj4gKyAgICAgICAgcHJvdCA9IHByb3Rfb3JpZ2luOwo+ICsK
PiArICAgIHdoaWxlIChkb25lIDwgbikgewo+ICsgICAgICAgIG1mbiA9IGZbZG9uZSAqIHN0cmlk
ZV0gKyBkb25lICogaW5jcmVtZW50Owo+ICsgICAgICAgIHJldCA9IGJ1aWxkX3BhZ2V0YWJsZSh2
YSwgbWZuLCAxLCBwcm90LCBhbGxvY19uZXdfcGFnZSwgMyk7Cj4gKyAgICAgICAgaWYgKHJldCkK
PiArICAgICAgICAgICAgcmV0dXJuIE5VTEw7Cj4gKyAgICAgICAgZG9uZSsrOwo+ICsgICAgICAg
IHZhICs9IFBBR0VfU0laRTsKPiArICAgIH0KPiArCj4gKyAgICByZXR1cm4gKHZvaWQgKilhZGRy
Owo+ICt9Cj4gKwo+ICtzdGF0aWMgbHBhZV90ICpnZXRfcHRlcCh1bnNpZ25lZCBsb25nIHZhZGRy
KQo+ICt7Cj4gKyAgICBscGFlX3QgKnBnZCwgKnB1ZCwgKnBtZCwgKnB0ZTsKPiArCj4gKyAgICBw
Z2QgPSAmYm9vdF9sMF9wZ3RhYmxlW2wwX3BndF9pZHgodmFkZHIpXTsKPiArICAgIEFTU0VSVCgo
KnBnZCkgIT0gTDBfSU5WQUwpOwoKQVNTRVJUIHNob3VsZCBvbmx5IGJlIHVzZWQgd2hlbiB5b3Ug
bm93IHNvbWV0aGluZyBzaG91bGQgYWx3YXlzIGJlIHRydWUuIApJIGRvbid0IHRoaW5rIHlvdSBj
YW4gYXNzdW1lIHRoYXQgYSBjYWxsZXIgb2YgZ2V0X3B0ZXAgd2lsbCBhbHdheXMgZ2l2ZSAKYSB2
YWxpZCBlbnRyeS4gQWxzbywgdGhpcyB3aWxsIHByZXZlbnQgdW5tYXBfZnJhbWVzIHRvIGhhbmRs
ZSBOVUxMIApwb2ludGVyICh4ODYgZG9lcyBoYW5kbGUgaXQpLgoKPiArCj4gKyAgICBwdWQgPSAo
bHBhZV90ICopdG9fdmlydCgoKnBnZCkgJiB+QVRUUl9NQVNLX0wpICsgbDFfcGd0X2lkeCh2YWRk
cik7Cj4gKyAgICBBU1NFUlQoKCpwdWQpICE9IEwwX0lOVkFMKTsKPiArCj4gKyAgICBwbWQgPSAo
bHBhZV90ICopdG9fdmlydCgoKnB1ZCkgJiB+QVRUUl9NQVNLX0wpICsgbDJfcGd0X2lkeCh2YWRk
cik7Cj4gKyAgICBBU1NFUlQoKCpwbWQpICE9IEwwX0lOVkFMKTsKPiArCj4gKyAgICBwdGUgPSAo
bHBhZV90ICopdG9fdmlydCgoKnBtZCkgJiB+QVRUUl9NQVNLX0wpICsgbDNfcGd0X2lkeCh2YWRk
cik7Cj4gKyAgICBBU1NFUlQoKCpwdGUpICE9IEwwX0lOVkFMKTsKPiArCj4gKyAgICByZXR1cm4g
cHRlOwo+ICt9Cj4gKwo+ICtpbnQgdW5tYXBfZnJhbWVzKHVuc2lnbmVkIGxvbmcgdmEsIHVuc2ln
bmVkIGxvbmcgbnVtX2ZyYW1lcykKPiArewo+ICsgICAgbHBhZV90ICpwdGU7Cj4gKwo+ICsgICAg
QVNTRVJUKCEoKHVuc2lnbmVkIGxvbmcpdmEgJiB+UEFHRV9NQVNLKSk7Cj4gKwo+ICsgICAgd2hp
bGUgKG51bV9mcmFtZXMpIHsKCndoaWxlICggLi4uICkKewoKPiArICAgICAgICBwdGUgPSBnZXRf
cHRlcCh2YSk7CgppZiAoIHB0ZSApCgo+ICsJKnB0ZSA9IChscGFlX3QpMDsKCkhhcmQgdGFiLgoK
QWxzbywgSSBhbSBwcmV0dHkgc3VyZSB5b3Ugd2FudCB0byBzZXRfcGd0X2VudHJ5IGhlcmUuCgo+
ICsKPiArICAgICAgICBmbHVzaF90bGJfcGFnZSh2YSk7Cj4gKwo+ICsgICAgICAgIHZhICs9IFBB
R0VfU0laRTsKPiArICAgICAgICBudW1fZnJhbWVzLS07Cj4gKyAgICB9Cj4gKyAgICByZXR1cm4g
MDsKPiArfQo+ICsKPiAgIHZvaWQgYXJjaF9pbml0X21tKHVuc2lnbmVkIGxvbmcgKnN0YXJ0X3Bm
bl9wLCB1bnNpZ25lZCBsb25nICptYXhfcGZuX3ApCj4gICB7Cj4gICAgICAgaW50IG1lbW9yeTsK
PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9hcm0vYXJjaF9tbS5oIGIvaW5jbHVkZS9hcm0vYXJjaF9t
bS5oCj4gaW5kZXggYWQxMjJlNy4uMDlhMTljMCAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2FybS9h
cmNoX21tLmgKPiArKysgYi9pbmNsdWRlL2FybS9hcmNoX21tLmgKPiBAQCAtNDIsNCArNDIsOCBA
QCB2b2lkIGFyY2hfbW1fcHJlaW5pdCh2b2lkICpkdGJfcG9pbnRlcik7Cj4gICAjZGVmaW5lIG1h
cF9mcmFtZXMoZiwgbikgKE5VTEwpCj4gICAKPiAgIHZvaWQgKmlvcmVtYXAocGFkZHJfdCBhZGRy
LCB1bnNpZ25lZCBsb25nIHNpemUpOwo+ICsKPiArZXh0ZXJuIHVuc2lnbmVkIGxvbmcgbWZuX3pl
cm87Cj4gKyNkZWZpbmUgbWFwX3plcm8obiwgYSkgbWFwX2ZyYW1lc19leCgmbWZuX3plcm8sIG4s
IDAsIDAsIGEsIERPTUlEX1NFTEYsIE5VTEwsIE1FTV9ST19BVFRSKQoKSSBuZWVkIHNvbWUgY29u
dGV4dCBoZXJlLiBXaGF0IHRoaXMgZnVuY3Rpb24gdXNlZCBmb3I/IFdoZXJlIGRvZXMgCm1mbl96
ZXJvIGlzIGRlZmluZWQ/Cgo+ICsKPiAgICNlbmRpZgo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2Fy
bS9hcm02NC9vcy5oIGIvaW5jbHVkZS9hcm0vYXJtNjQvb3MuaAo+IGluZGV4IDJkNTUwMjMuLjRl
Nzc3YmYgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9hcm0vYXJtNjQvb3MuaAo+ICsrKyBiL2luY2x1
ZGUvYXJtL2FybTY0L29zLmgKPiBAQCAtMjcsNiArMjcsMjIgQEAgc3RhdGljIGlubGluZSB2b2lk
IGxvY2FsX2lycV9lbmFibGUodm9pZCkKPiAgICAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygibXJz
ICUwLCBkYWlmIjoiPXIiKHgpOjoibWVtb3J5Iik7IFwKPiAgIH0KPiAgIAo+ICsvKiBGbHVzaCBh
IHBhZ2UgaW4gaW5uZXJzaGFyZWFibGUgZG9tYW4gKi8KPiArc3RhdGljIGlubGluZSB2b2lkIGZs
dXNoX3RsYl9wYWdlKHVuc2lnbmVkIGxvbmcgdmEpCj4gK3sKPiArICAgIHVuc2lnbmVkIGxvbmcg
eHQ7Cj4gKwo+ICsgICAgLyogeHRbNDM6MF0gdG8gc2F2ZSBWQVs1NToxMl0gKi8KPiArICAgIHh0
ID0gdmEgPj4gMTI7Cgp2YSA+PiBQQUdFX1NISUZULiBCdXQgSSBhbSBub3Qgc3VyZSB3aHkgeW91
IG9ubHkgc2F2ZSBiaXRzIHVwIHRvIDU1LiAKQUZBSUNULCB3aGF0IHlvdSB3aWxsIGRvIGZvciBi
aXRzIFs2Mzo1Nl0/Cgo+ICsKPiArICAgIF9fYXNtX18gX192b2xhdGlsZV9fKAo+ICsgICAgICAg
ICJkc2Igc3k7Igo+ICsgICAgICAgICJ0bGJpIHZhbGUxaXMsICUwOyIKPiArICAgICAgICAiZHNi
IHN5OyIKPiArICAgICAgICAiaXNiOyIKPiArICAgICAgICA6OiJyIih4dCk6ICJtZW1vcnkiKTsK
Ckl0IGlzIHByb2JhYmx5IHF1aXRlIGhlYXZ5IGZvciBjYWxsaW5nIGZyb20gYSBsb29wLiBCdXQg
d2UgY2FuIG9wdGltaXplIAphZnRlcndhcmRzLgoKPiArfQo+ICsKPiAgICNlbmRpZgo+ICAgCj4g
ICAvKiBUaGUgQ2FsbGVlLXNhdmVkIHJlZ2lzdGVycyA6IHgxOSB+IHgyOSAqLwo+IAoKQ2hlZXJz
LAoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18KTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdApNaW5pb3MtZGV2ZWxAbGlzdHMu
eGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3Rp
bmZvL21pbmlvcy1kZXZlbA==

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 23:40:31 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 23:40:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fDIPF-0002tZ-PH; Mon, 30 Apr 2018 23:40:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=535n=ht=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1fDIPF-0002tU-1j
 for minios-devel@lists.xen.org; Mon, 30 Apr 2018 23:40:29 +0000
X-Inumbo-ID: 3863bca3-4cd0-11e8-8249-2fda3a446a53
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-amaz-eas1.inumbo.com (Halon) with ESMTP
 id 3863bca3-4cd0-11e8-8249-2fda3a446a53;
 Mon, 30 Apr 2018 23:43:02 +0000 (UTC)
IronPort-PHdr: =?us-ascii?q?9a23=3AY+R5zxJZt05fO5KtFNmcpTZWNBhigK39O0sv0rFi?=
 =?us-ascii?q?tYgfLf7xwZ3uMQTl6Ol3ixeRBMOHs6kC07KempujcFRI2YyGvnEGfc4EfD4+ou?=
 =?us-ascii?q?JSoTYdBtWYA1bwNv/gYn9yNs1DUFh44yPzahANS47xaFLIv3K98yMZFAnhOgpp?=
 =?us-ascii?q?POT1HZPZg9iq2+yo9JDffwtFiCChbb9uMR67sRjfus4KjIV4N60/0AHJonxGe+?=
 =?us-ascii?q?RXwWNnO1eelAvi68mz4ZBu7T1et+ou+MBcX6r6eb84TaFDAzQ9L281/szrugLd?=
 =?us-ascii?q?QgaJ+3ART38ZkhtMAwjC8RH6QpL8uTb0u+ZhxCWXO9D9QKsqUjq+8ahkVB7oiD?=
 =?us-ascii?q?8GNzEn9mHXltdwh79frB64uhBz35LYbISTOfFjfK3SYMkaSHJcUMhPWSxPAoCy?=
 =?us-ascii?q?YYUBAOUOP+lXs4bzqkASrRunHwSgGP/jxzFKi3LwwKY00/4hEQbD3AE4Ad8Ot2?=
 =?us-ascii?q?/UrMn0NKcUTOu7yrTIzS3eb/hL3jry9I/Icgs9ofGNW7J8a87RyVQ3FwPYlVif?=
 =?us-ascii?q?tZflMymN1uQQqGeX9fBgVeW2hmMhtgp/rD+vxsI2hYnIgIIY0l/F+jt/wIYtP9?=
 =?us-ascii?q?24T0x7bsC4H5tMrS2aMJF2Qsw6T2xptys20KYGtoWjcCcUzpQn2wTfavyGfoWH?=
 =?us-ascii?q?+B7jT/2eLDFlj3xmYLKynwu+/Ee9xuHmVcS50ExGojRbntTOrHwA2QTf5tWER/?=
 =?us-ascii?q?Z+5EutxzaC2xrO5uxGIU04j7fXJp8nz7UtjJQcq17DETXzmEjuia+WcVgr9faw?=
 =?us-ascii?q?5uT8Z7XmuoecN4hpigHiKqgumtKwAeA/MgUWQWib/P6z1Lzn/UHjXLpKlec6kr?=
 =?us-ascii?q?HEsJ/BP8gbvKm5DxdU0oYl9Rm/Ey+r3MkXkHUaNl5IexKKg5L3N13QIv30F/my?=
 =?us-ascii?q?j0ypkDhxxvDGOrPhAo/KLnjGiLruYbF961VAyAoyy9BT/ZZUCqwZIPLuQUL+qM?=
 =?us-ascii?q?fYAgUhMwyp2OnrEs991oQGVWKVHqCZKL/SsUOP5u83JumMZYkVuDf6K/g+/vLh?=
 =?us-ascii?q?kGE2mUEDcqmtxpYXbHG4Hu96I0WCe3btjckOEWEQsgo5Vuzqh0WIUSRPaHaqQ6?=
 =?us-ascii?q?I8+jY7BZq9DYfCQ4Cth7qB0D24Hp1LeG9GDFGNHmnyd4ifXfcDdj6dIst7nTMf?=
 =?us-ascii?q?T7SuVZIhhlmSs1rByr9gKKL35yAep5/5nIxu5ujUk1cx6DFyHcmH+2eARGV9lC?=
 =?us-ascii?q?UFWmlylKV+p0160RKP3LZ1h9RcFMdP/LVZXwF8MoTTnMJgDNWncQXaYtaPAHK7?=
 =?us-ascii?q?WsjuVTo2Vc4wxZkKfl5gM965yAje1WywBOlGxPSwGJUo//eEjDDKLMFnxiODjf?=
 =?us-ascii?q?F5gg=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2C7AAD1qOda/wPjVY1TCRkBAQEBAQEBA?=
 =?us-ascii?q?QEBAQEHAQEBAQGDFIEQA3cog2yIAl6NaCl1Gos0h2AUgWEDIwsIAYFLgi9GAoM?=
 =?us-ascii?q?UNBgBAgEBAQEBAQIBaxwMgjUkAYJPAQEBAwEBGAEIBEcGFQkCGAICGQ0CAicBL?=
 =?us-ascii?q?wYBDAYCAQGFDwuMHZtBgWkzhFiDboJHgQmGEIJRP4EPI4IzNYMRAQSBFwsRAwE?=
 =?us-ascii?q?PF4MAglQChzIYhEYLVYsiCIFkhACFDCuDKoE7GiKDJII5hQkriRGEOoNpAhw4g?=
 =?us-ascii?q?VIzGnOCQwmCFxcRiEiBI4FDgltsegEBjCEBDheCIAEB?=
X-IPAS-Result: =?us-ascii?q?A2C7AAD1qOda/wPjVY1TCRkBAQEBAQEBAQEBAQEHAQEBAQG?=
 =?us-ascii?q?DFIEQA3cog2yIAl6NaCl1Gos0h2AUgWEDIwsIAYFLgi9GAoMUNBgBAgEBAQEBA?=
 =?us-ascii?q?QIBaxwMgjUkAYJPAQEBAwEBGAEIBEcGFQkCGAICGQ0CAicBLwYBDAYCAQGFDwu?=
 =?us-ascii?q?MHZtBgWkzhFiDboJHgQmGEIJRP4EPI4IzNYMRAQSBFwsRAwEPF4MAglQChzIYh?=
 =?us-ascii?q?EYLVYsiCIFkhACFDCuDKoE7GiKDJII5hQkriRGEOoNpAhw4gVIzGnOCQwmCFxc?=
 =?us-ascii?q?RiEiBI4FDgltsegEBjCEBDheCIAEB?=
X-IronPort-AV: E=Sophos;i="5.49,348,1520892000"; 
   d="scan'208";a="2554522"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 01 May 2018 02:40:17 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 143051A60044;
 Tue,  1 May 2018 02:40:17 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id QErqEo4cklnL; Tue,  1 May 2018 02:40:16 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id DF07C1A6005F;
 Tue,  1 May 2018 02:40:16 +0300 (EEST)
Received: from [192.168.1.101] (unknown [188.25.175.16])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id D3C9A1A60044;
 Tue,  1 May 2018 02:40:16 +0300 (EEST)
To: Simon Kuenzer <simon.kuenzer@neclab.eu>, minios-devel@lists.xen.org
References: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522941678-21179-3-git-send-email-costin.lupu@cs.pub.ro>
 <5b62e644-7d7d-fae1-7c71-1b2d23e0c9bf@neclab.eu>
From: Costin Lupu <costin.lupu@cs.pub.ro>
Message-ID: <097e7433-3e6a-ca94-693d-b526e6ef41cc@cs.pub.ro>
Date: Tue, 1 May 2018 02:40:16 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <5b62e644-7d7d-fae1-7c71-1b2d23e0c9bf@neclab.eu>
Content-Language: en-US
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 2/3] plat/kvm: Add KVM (x86_64)
 interrupts support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gMDQvMzAvMjAxOCAwMzo0NCBQTSwgU2ltb24gS3VlbnplciB3cm90ZToKPiBTZWUgbXkgY29t
bWVudHMgaW5saW5lLgo+IAo+IE9uIDA1LjA0LjIwMTggMTc6MjEsIENvc3RpbiBMdXB1IHdyb3Rl
Ogo+PiBDaGFuZ2VzOgo+PiAqIFBJQyBzdXBwb3J0Cj4+ICogS1ZNIHNwZWNpZmljIHRyYXBzCj4+
ICogdHJhcHMgYW5kIGludGVycnVwdCBhc3NlbWJseSBzdHVicwo+PiAqIHNoYXJlZCBJUlEgaGFu
ZGxlcnMKPj4KPj4gU2lnbmVkLW9mZi1ieTogQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1
Yi5ybz4KPj4gLS0tCj4+IMKgIHBsYXQva3ZtL01ha2VmaWxlLnVrwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgwqAgOSArLQo+PiDCoCBwbGF0L2t2bS9pbmNs
dWRlL2t2bS14ODYvY3B1X3g4Nl82NC5owqDCoMKgwqDCoCB8wqAgNDIgLS0tLS0tLQo+PiDCoCBw
bGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NF9kZWZzLmggfMKgIDQyIC0tLS0tLS0K
Pj4gwqAgcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L3RyYXBzLmjCoMKgwqDCoMKgwqDCoMKgwqDC
oCB8wqAgNDUgKysrKysrKwo+PiDCoCBwbGF0L2t2bS9pbmNsdWRlL2t2bS9pbnRjdHJsLmjCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgIDM4ICsrKysrKwo+PiDCoCBwbGF0L2t2bS9pbmNsdWRl
L2t2bS9pcnEuaMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoCA0NSArKysrKysr
Cj4+IMKgIHBsYXQva3ZtL2lycS5jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgIDk3ICsrKysrKysrKysrKysrKwo+PiDCoCBwbGF0L2t2
bS9zaHV0ZG93bi5jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oCB8wqDCoCA5ICsrCj4+IMKgIHBsYXQva3ZtL3g4Ni9jcHVfdmVjdG9yc194ODZfNjQuU8KgwqDC
oMKgwqDCoMKgwqDCoCB8IDE0MiArKysrKysrKysrKysrKysrKysrKysrCj4+IMKgIHBsYXQva3Zt
L3g4Ni9jcHVfeDg2XzY0LmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoCA3
MSAtLS0tLS0tLS0tLQo+PiDCoCBwbGF0L2t2bS94ODYvZW50cnk2NC5TwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoCAxICsKPj4gwqAgcGxhdC9rdm0veDg2L2lu
dGN0cmwuY8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfCAxMTEgKysr
KysrKysrKysrKysrKysKPj4gwqAgcGxhdC9rdm0veDg2L2xjcHUuY8KgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgIDM3ICsrKysrKwo+PiDCoCBwbGF0L2t2
bS94ODYvc2V0dXAuY8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
IHzCoMKgIDYgKy0KPj4gwqAgcGxhdC9rdm0veDg2L3RyYXBzLmPCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8IDE4Ngo+PiArKysrKysrKysrKysrKysrKysrKysr
KysrKysrKwo+PiDCoCAxNSBmaWxlcyBjaGFuZ2VkLCA3MjIgaW5zZXJ0aW9ucygrKSwgMTU5IGRl
bGV0aW9ucygtKQo+PiDCoCBkZWxldGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0vaW5jbHVkZS9rdm0t
eDg2L2NwdV94ODZfNjQuaAo+PiDCoCBkZWxldGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0vaW5jbHVk
ZS9rdm0teDg2L2NwdV94ODZfNjRfZGVmcy5oCj4+IMKgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0
L2t2bS9pbmNsdWRlL2t2bS14ODYvdHJhcHMuaAo+PiDCoCBjcmVhdGUgbW9kZSAxMDA2NDQgcGxh
dC9rdm0vaW5jbHVkZS9rdm0vaW50Y3RybC5oCj4+IMKgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0
L2t2bS9pbmNsdWRlL2t2bS9pcnEuaAo+PiDCoCBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0v
aXJxLmMKPj4gwqAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL3g4Ni9jcHVfdmVjdG9yc194
ODZfNjQuUwo+PiDCoCBkZWxldGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0veDg2L2NwdV94ODZfNjQu
Ywo+PiDCoCBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0veDg2L2ludGN0cmwuYwo+PiDCoCBj
cmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0veDg2L3RyYXBzLmMKPj4KPj4gZGlmZiAtLWdpdCBh
L3BsYXQva3ZtL01ha2VmaWxlLnVrIGIvcGxhdC9rdm0vTWFrZWZpbGUudWsKPj4gaW5kZXggODIz
ZTc4NS4uNDYyNThmZiAxMDA2NDQKPj4gLS0tIGEvcGxhdC9rdm0vTWFrZWZpbGUudWsKPj4gKysr
IGIvcGxhdC9rdm0vTWFrZWZpbGUudWsKPj4gQEAgLTE2LDE3ICsxNiwyMiBAQCBMSUJLVk1QTEFU
X0FTSU5DTFVERVMtecKgwqDCoMKgwqDCoMKgICs9Cj4+IC1JJChVS19QTEFUX0NPTU1PTl9CQVNF
KS9pbmNsdWRlCj4+IMKgIExJQktWTVBMQVRfQ0lOQ0xVREVTLXnCoMKgwqDCoMKgwqDCoMKgICs9
IC1JJChMSUJLVk1QTEFUX0JBU0UpL2luY2x1ZGUKPj4gwqAgTElCS1ZNUExBVF9DSU5DTFVERVMt
ecKgwqDCoMKgwqDCoMKgwqAgKz0gLUkkKFVLX1BMQVRfQ09NTU9OX0JBU0UpL2luY2x1ZGUKPj4g
wqAgK0xJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPQo+PiAkKFVLX1BMQVRfQ09NTU9O
X0JBU0UpL3g4Ni90cmFjZS5jfGNvbW1vbgo+PiArTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZf
NjQpICs9Cj4+ICQoVUtfUExBVF9DT01NT05fQkFTRSkveDg2L3RyYXBzLmN8Y29tbW9uCj4+ICtM
SUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0KPj4gJChVS19QTEFUX0NPTU1PTl9CQVNF
KS94ODYvY3B1X25hdGl2ZS5jfGNvbW1vbgo+PiDCoCBpZmVxICgkKEhBVkVfU0NIRUQpLHkpCj4+
IMKgIExJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPQo+PiAkKFVLX1BMQVRfQ09NTU9O
X0JBU0UpL3g4Ni90aHJlYWRfc3RhcnQuU3xjb21tb24KPj4gwqAgTElCS1ZNUExBVF9TUkNTLSQo
QVJDSF9YODZfNjQpICs9Cj4+ICQoVUtfUExBVF9DT01NT05fQkFTRSkvdGhyZWFkLmN8Y29tbW9u
Cj4+IMKgIExJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPQo+PiAkKFVLX1BMQVRfQ09N
TU9OX0JBU0UpL3N3X2N0eC5jfGNvbW1vbgo+PiDCoCBlbmRpZgo+PiDCoCBMSUJLVk1QTEFUX1NS
Q1MtJChBUkNIX1g4Nl82NCkgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3g4Ni9lbnRyeTY0LlMKPj4g
LUxJQktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2
L2NwdV94ODZfNjQuYwo+PiArTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoTElC
S1ZNUExBVF9CQVNFKS94ODYvdHJhcHMuYwo+PiArTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZf
NjQpICs9Cj4+ICQoTElCS1ZNUExBVF9CQVNFKS94ODYvY3B1X3ZlY3RvcnNfeDg2XzY0LlMKPj4g
wqAgTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9ICQoTElCS1ZNUExBVF9CQVNFKS94
ODYvc2V0dXAuYwo+PiDCoCBMSUJLVk1QTEFUX1NSQ1MtJChBUkNIX1g4Nl82NCkgKz0gJChMSUJL
Vk1QTEFUX0JBU0UpL3g4Ni9jb25zb2xlLmMKPj4gwqAgTElCS1ZNUExBVF9TUkNTLSQoQVJDSF9Y
ODZfNjQpICs9ICQoTElCS1ZNUExBVF9CQVNFKS94ODYvbGNwdS5jCj4+IC1MSUJLVk1QTEFUX1NS
Q1MtJChBUkNIX1g4Nl82NCkgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3g4Ni90aW1lLmMKPj4gK0xJ
QktWTVBMQVRfU1JDUy0kKEFSQ0hfWDg2XzY0KSArPSAkKExJQktWTVBMQVRfQkFTRSkveDg2L2lu
dGN0cmwuYwo+PiDCoCBMSUJLVk1QTEFUX1NSQ1MtecKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
ICs9ICQoTElCS1ZNUExBVF9CQVNFKS9zaHV0ZG93bi5jCj4+IMKgIExJQktWTVBMQVRfU1JDUy15
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKz0gJChMSUJLVk1QTEFUX0JBU0UpL21lbW9yeS5j
Cj4+ICtMSUJLVk1QTEFUX1NSQ1MtecKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICs9ICQoTElC
S1ZNUExBVF9CQVNFKS9pcnEuYwo+PiDCoCBMSUJLVk1QTEFUX1NSQ1MtecKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgICs9ICQoVUtfUExBVF9DT01NT05fQkFTRSkvbGNwdS5jfGNvbW1vbgo+PiBk
aWZmIC0tZ2l0IGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L2NwdV94ODZfNjQuaAo+PiBiL3Bs
YXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0LmgKPj4gZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0Cj4+IGluZGV4IDQyN2M3MDUuLjAwMDAwMDAKPj4gLS0tIGEvcGxhdC9rdm0vaW5jbHVk
ZS9rdm0teDg2L2NwdV94ODZfNjQuaAo+PiArKysgL2Rldi9udWxsCj4+IEBAIC0xLDQyICswLDAg
QEAKPj4gLS8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8KPj4gLS8qCj4+IC0gKiBB
dXRob3JzOiBNYXJ0aW4gTHVjaW5hCj4+IC0gKgo+PiAtICogQ29weXJpZ2h0IChjKSAyMDE2LTIw
MTcgRG9ja2VyLCBJbmMuCj4+IC0gKgo+PiAtICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1v
ZGlmeSwgYW5kL29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZQo+PiAtICogZm9yIGFueSBwdXJw
b3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCj4+IC0g
KiB0aGF0IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90
aWNlIGFwcGVhcgo+PiAtICogaW4gYWxsIGNvcGllcy4KPj4gLSAqCj4+IC0gKiBUSEUgU09GVFdB
UkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMCj4+IC0g
KiBXQVJSQU5USUVTIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJ
TVBMSUVECj4+IC0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4g
SU4gTk8gRVZFTlQgU0hBTEwgVEhFCj4+IC0gKiBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BF
Q0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IKPj4gLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyBP
UiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MKPj4gLSAqIE9GIFVT
RSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwKPj4g
LSAqIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBP
UiBJTgo+PiAtICogQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJ
UyBTT0ZUV0FSRS4KPj4gLSAqLwo+PiAtI2luY2x1ZGUgPGludHR5cGVzLmg+Cj4+IC0KPj4gLS8q
IGFjY2Vzc2luZyBkZXZpY2VzIHZpYSBwb3J0IHNwYWNlICovCj4+IC1zdGF0aWMgaW5saW5lIHZv
aWQgb3V0Yih1aW50MTZfdCBwb3J0LCB1aW50OF90IHYpCj4+IC17Cj4+IC3CoMKgwqAgX19hc21f
XyBfX3ZvbGF0aWxlX18oIm91dGIgJTAsJTEiIDogOiAiYSIodiksICJkTiIocG9ydCkpOwo+PiAt
fQo+PiAtCj4+IC1zdGF0aWMgaW5saW5lIHZvaWQgb3V0dyh1aW50MTZfdCBwb3J0LCB1aW50MTZf
dCB2KQo+PiAtewo+PiAtwqDCoMKgIF9fYXNtX18gX192b2xhdGlsZV9fKCJvdXR3ICUwLCUxIiA6
IDogImEiKHYpLCAiZE4iKHBvcnQpKTsKPj4gLX0KPj4gLXN0YXRpYyBpbmxpbmUgdWludDhfdCBp
bmIodWludDE2X3QgcG9ydCkKPj4gLXsKPj4gLcKgwqDCoCB1aW50OF90IHY7Cj4+IC0KPj4gLcKg
wqDCoCBfX2FzbV9fIF9fdm9sYXRpbGVfXygiaW5iICUxLCUwIiA6ICI9YSIodikgOiAiZE4iKHBv
cnQpKTsKPj4gLcKgwqDCoCByZXR1cm4gdjsKPj4gLX0KPj4gLQo+PiAtdm9pZCBjcHVfaGFsdCh2
b2lkKSBfX2F0dHJpYnV0ZV9fKChub3JldHVybikpOwo+PiAtdm9pZCBjcHVfaW5pdCh2b2lkKTsK
Pj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMu
aAo+PiBiL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni9jcHVfeDg2XzY0X2RlZnMuaAo+PiBkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKPj4gaW5kZXggOTg1ZjhkMy4uMDAwMDAwMAo+PiAtLS0gYS9w
bGF0L2t2bS9pbmNsdWRlL2t2bS14ODYvY3B1X3g4Nl82NF9kZWZzLmgKPj4gKysrIC9kZXYvbnVs
bAo+PiBAQCAtMSw0MiArMCwwIEBACj4+IC0vKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogSVND
ICovCj4+IC0vKgo+PiAtICogQXV0aG9yczogTWFydGluIEx1Y2luYQo+PiAtICoKPj4gLSAqIENv
cHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tlciwgSW5jLgo+PiAtICoKPj4gLSAqIFBlcm1pc3Np
b24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUK
Pj4gLSAqIGZvciBhbnkgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFu
dGVkLCBwcm92aWRlZAo+PiAtICogdGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQg
dGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIKPj4gLSAqIGluIGFsbCBjb3BpZXMuCj4+IC0g
Kgo+PiAtICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1Ig
RElTQ0xBSU1TIEFMTAo+PiAtICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRX
QVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAo+PiAtICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQo+PiAtICogQVVUSE9SIEJF
IExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SCj4+IC0gKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJP
TSBMT1NTCj4+IC0gKiBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJ
T04gT0YgQ09OVFJBQ1QsCj4+IC0gKiBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElP
TiwgQVJJU0lORyBPVVQgT0YgT1IgSU4KPj4gLSAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9S
IFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCj4+IC0gKi8KPj4gLQo+PiAtI2luY2x1ZGUg
PHg4Ni9jcHVfZGVmcy5oPgo+PiAtCj4+IC0vKgo+PiAtICogR0RUIGxheW91dAo+PiAtICoKPj4g
LSAqIFRoaXMgc2hvdWxkIGJlIGtlcHQgY29uc2lzdGVudCB3aXRoIHRoZSBsYXlvdXQgdXNlZCBi
eSB0aGUgdWt2bQo+PiB0YXJnZXQgKGFzCj4+IC0gKiBkZWZpbmVkIGluIHVrdm0vdWt2bV9jcHVf
eDg2XzY0LmguCj4+IC0gKi8KPj4gLSNkZWZpbmUgR0RUX0RFU0NfTlVMTMKgwqDCoMKgwqDCoMKg
wqDCoMKgIDAKPj4gLSNkZWZpbmUgR0RUX0RFU0NfQ09ERcKgwqDCoMKgwqDCoMKgwqDCoMKgIDEK
Pj4gLSNkZWZpbmUgR0RUX0RFU0NfQ09ERTMywqDCoMKgwqDCoMKgwqDCoCAyIC8qIFVzZWQgYnkg
Ym9vdC5TIG9uIHZpcnRpbyB0YXJnZXRzICovCj4+IC0jZGVmaW5lIEdEVF9ERVNDX0RBVEHCoMKg
wqDCoMKgwqDCoMKgwqDCoCAzCj4+IC0jZGVmaW5lIEdEVF9ERVNDX1RTU19MT8KgwqDCoMKgwqDC
oMKgwqAgNAo+PiAtI2RlZmluZSBHRFRfREVTQ19UU1NfSEnCoMKgwqDCoMKgwqDCoMKgIDUKPj4g
LSNkZWZpbmUgR0RUX0RFU0NfVFNTwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBHRFRfREVTQ19UU1Nf
TE8KPj4gLQo+PiAtI2RlZmluZSBHRFRfREVTQ19PRkZTRVQobinCoMKgwqDCoMKgICgobikgKiAw
eDgpCj4+IC0jZGVmaW5lIEdEVF9OVU1fRU5UUklFU8KgwqDCoMKgwqDCoMKgwqAgNgo+PiAtCj4+
IC0jZGVmaW5lIEdEVF9ERVNDX0NPREVfVkFMwqDCoMKgwqDCoMKgIDB4MDBhZjk5MDAwMDAwZmZm
Zgo+PiAtI2RlZmluZSBHRFRfREVTQ19EQVRBX1ZBTMKgwqDCoMKgwqDCoCAweDAwY2Y5MzAwMDAw
MGZmZmYKPj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni90cmFwcy5oCj4+
IGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0teDg2L3RyYXBzLmgKPj4gbmV3IGZpbGUgbW9kZSAxMDA2
NDQKPj4gaW5kZXggMDAwMDAwMC4uODIxMDYxMwo+PiAtLS0gL2Rldi9udWxsCj4+ICsrKyBiL3Bs
YXQva3ZtL2luY2x1ZGUva3ZtLXg4Ni90cmFwcy5oCj4+IEBAIC0wLDAgKzEsNDUgQEAKPj4gKy8q
IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8KPj4gKy8qCj4+ICsgKiBBdXRob3JzOiBN
YXJ0aW4gTHVjaW5hCj4+ICsgKgo+PiArICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTcgRG9ja2Vy
LCBJbmMuCj4+ICsgKgo+PiArICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5k
L29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZQo+PiArICogZm9yIGFueSBwdXJwb3NlIHdpdGgg
b3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCj4+ICsgKiB0aGF0IHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVh
cgo+PiArICogaW4gYWxsIGNvcGllcy4KPj4gKyAqCj4+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJP
VklERUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMCj4+ICsgKiBXQVJSQU5U
SUVTIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVECj4+
ICsgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFCj4+ICsgKiBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElS
RUNULCBJTkRJUkVDVCwgT1IKPj4gKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFN
QUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MKPj4gKyAqIE9GIFVTRSwgREFUQSBP
UiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwKPj4gKyAqIE5FR0xJ
R0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTgo+PiAr
ICogQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FS
RS4KPj4gKyAqLwo+PiArCj4+ICsjaW5jbHVkZSA8eDg2L3RyYXBzLmg+Cj4+ICsKPj4gKy8qCj4+
ICsgKiBHRFQgbGF5b3V0Cj4+ICsgKgo+PiArICogVGhpcyBzaG91bGQgYmUga2VwdCBjb25zaXN0
ZW50IHdpdGggdGhlIGxheW91dCB1c2VkIGJ5IHRoZSB1a3ZtCj4+IHRhcmdldCAoYXMKPj4gKyAq
IGRlZmluZWQgaW4gdWt2bS91a3ZtX2NwdV94ODZfNjQuaC4KPj4gKyAqLwo+PiArI2RlZmluZSBH
RFRfREVTQ19OVUxMwqDCoMKgwqDCoMKgwqDCoMKgwqAgMAo+PiArI2RlZmluZSBHRFRfREVTQ19D
T0RFwqDCoMKgwqDCoMKgwqDCoMKgwqAgMQo+PiArI2RlZmluZSBHRFRfREVTQ19DT0RFMzLCoMKg
wqDCoMKgwqDCoMKgIDIgLyogVXNlZCBieSBib290LlMgb24gdmlydGlvIHRhcmdldHMgKi8KPj4g
KyNkZWZpbmUgR0RUX0RFU0NfREFUQcKgwqDCoMKgwqDCoMKgwqDCoMKgIDMKPj4gKyNkZWZpbmUg
R0RUX0RFU0NfVFNTX0xPwqDCoMKgwqDCoMKgwqDCoCA0Cj4+ICsjZGVmaW5lIEdEVF9ERVNDX1RT
U19IScKgwqDCoMKgwqDCoMKgwqAgNQo+PiArI2RlZmluZSBHRFRfREVTQ19UU1PCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgIEdEVF9ERVNDX1RTU19MTwo+PiArCj4+ICsjZGVmaW5lIEdEVF9ERVNDX09G
RlNFVChuKcKgwqDCoMKgwqAgKChuKSAqIDB4OCkKPj4gKyNkZWZpbmUgR0RUX05VTV9FTlRSSUVT
wqDCoMKgwqDCoMKgwqDCoCA2Cj4+ICsKPj4gKyNkZWZpbmUgR0RUX0RFU0NfQ09ERV9WQUzCoMKg
wqDCoMKgwqAgMHgwMGFmOTkwMDAwMDBmZmZmCj4+ICsjZGVmaW5lIEdEVF9ERVNDX0RBVEFfVkFM
wqDCoMKgwqDCoMKgIDB4MDBjZjkzMDAwMDAwZmZmZgo+PiArCj4+ICsKPj4gKyNkZWZpbmUgSURU
X05VTV9FTlRSSUVTwqDCoMKgwqDCoMKgwqDCoCA0OAo+PiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0v
aW5jbHVkZS9rdm0vaW50Y3RybC5oCj4+IGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0vaW50Y3RybC5o
Cj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4+IGluZGV4IDAwMDAwMDAuLmE2Y2UzMDcKPj4gLS0t
IC9kZXYvbnVsbAo+PiArKysgYi9wbGF0L2t2bS9pbmNsdWRlL2t2bS9pbnRjdHJsLmgKPj4gQEAg
LTAsMCArMSwzOCBAQAo+PiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVz
ZSAqLwo+PiArLyoKPj4gKyAqIEF1dGhvcnM6IENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5w
dWIucm8+Cj4+ICsgKgo+PiArICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4s
IE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cwo+PiByZXNlcnZlZC4KPj4gKyAqCj4+ICsgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKPj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+PiArICogYXJlIG1ldDoKPj4gKyAqCj4+ICsgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAo+PiArICrCoMKgwqAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+PiArICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKPj4gKyAqwqDCoMKg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbgo+PiB0aGUKPj4gKyAqwqDCoMKgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQo+PiBkaXN0cmlidXRpb24uCj4+ICsgKiAzLiBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRz
Cj4+ICsgKsKgwqDCoCBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQKPj4gZnJvbQo+PiArICrCoMKgwqAgdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KPj4gKyAqCj4+ICsgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQKPj4g
Q09OVFJJQlVUT1JTICJBUyBJUyIKPj4gKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVECj4+IFRPLCBUSEUKPj4gKyAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgo+PiBQVVJQT1NFCj4+ICsgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IKPj4gQ09OVFJJQlVUT1JTIEJFCj4+ICsgKiBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCj4+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgo+PiArICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SCj4+IEJVU0lORVNTCj4+ICsg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwKPj4gV0hFVEhFUiBJTgo+PiArICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCj4+IE9USEVSV0lTRSkKPj4gKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGCj4+
IEFEVklTRUQgT0YgVEhFCj4+ICsgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KPj4gKyAq
Cj4+ICsgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVYVFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBB
TlkgV0FZLgo+PiArICovCj4+ICsKPj4gK3ZvaWQgaW50Y3RybF9pbml0KHZvaWQpOwo+PiArdm9p
ZCBpbnRjdHJsX2NsZWFyX2lycSh1bnNpZ25lZCBpbnQgaXJxKTsKPj4gK3ZvaWQgaW50Y3RybF9t
YXNrX2lycSh1bnNpZ25lZCBpbnQgaXJxKTsKPj4gK3ZvaWQgaW50Y3RybF9hY2tfaXJxKHVuc2ln
bmVkIGludCBpcnEpOwo+PiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0vaW5jbHVkZS9rdm0vaXJxLmgg
Yi9wbGF0L2t2bS9pbmNsdWRlL2t2bS9pcnEuaAo+PiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+PiBp
bmRleCAwMDAwMDAwLi42MDZhY2YyCj4+IC0tLSAvZGV2L251bGwKPj4gKysrIGIvcGxhdC9rdm0v
aW5jbHVkZS9rdm0vaXJxLmgKPj4gQEAgLTAsMCArMSw0NSBAQAo+PiArLyogU1BEWC1MaWNlbnNl
LUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZSAqLwo+PiArLyoKPj4gKyAqIEF1dGhvcnM6IENvc3Rp
biBMdXB1IDxjb3N0aW4ubHVwdUBjcy5wdWIucm8+Cj4+ICsgKgo+PiArICogQ29weXJpZ2h0IChj
KSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cwo+PiBy
ZXNlcnZlZC4KPj4gKyAqCj4+ICsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKPj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwo+PiArICog
YXJlIG1ldDoKPj4gKyAqCj4+ICsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+PiArICrCoMKgwqAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+PiArICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKPj4gKyAqwqDCoMKgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgo+PiB0aGUKPj4gKyAqwqDCoMKgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQo+PiBkaXN0
cmlidXRpb24uCj4+ICsgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9s
ZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzCj4+ICsgKsKgwqDCoCBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKPj4gZnJvbQo+PiAr
ICrCoMKgwqAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KPj4gKyAqCj4+ICsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQKPj4gQ09OVFJJQlVUT1JTICJBUyBJUyIKPj4gKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVECj4+IFRPLCBUSEUKPj4gKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgo+PiBQVVJQT1NFCj4+ICsgKiBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IKPj4gQ09O
VFJJQlVUT1JTIEJFCj4+ICsgKiBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCj4+ICsgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgo+PiArICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SCj4+IEJVU0lORVNTCj4+ICsgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwKPj4gV0hFVEhFUiBJTgo+PiArICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCj4+
IE9USEVSV0lTRSkKPj4gKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGCj4+IEFEVklTRUQgT0YgVEhFCj4+ICsgKiBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KPj4gKyAqCj4+ICsgKiBUSElTIEhFQURFUiBNQVkgTk9UIEJFIEVY
VFJBQ1RFRCBPUiBNT0RJRklFRCBJTiBBTlkgV0FZLgo+PiArICovCj4+ICsKPj4gKyNpZm5kZWYg
X19LVk1fSVJRX0hfCj4+ICsjZGVmaW5lIF9fS1ZNX0lSUV9IXwo+PiArCj4+ICsjaW5jbHVkZSA8
c3lzL3R5cGVzLmg+Cj4+ICsKPj4gK3R5cGVkZWYgaW50ICgqaXJxX2hhbmRsZXJfZnVuY190KSh2
b2lkICopOwo+PiArCj4gCj4gU2luY2UgeW91IHdvcmtlZCBvbiBpbnRlcnJ1cHRzIGZvciBhbGwg
cGxhdGZvcm1zLiBEbyB5b3UgdGhpbmsgaXQgbWFrZXMKPiBzZW5zZSB0byBpbnRyb2R1Y2UgYW4g
VUtQTEFUIEFQSSBmb3IgaW50ZXJydXB0cywgbGlrZQo+IHVrcGxhdF9pcnFfcmVnaXN0ZXIoKT8g
SWYgbm90LCB0aGVuIEkgd291bGQgcHJlZml4IHRob3NlIGZ1bmN0aW9ucyB3aXRoCj4gImxpYmt2
bXBsYXRfIi4KCkl0J3MgY2xlYXIgdGhhdCB0aGUgaW1wbGVtZW50YXRpb25zIG9uIGFsbCBwbGF0
Zm9ybXMgKFhlbiwgS1ZNIGFuZApsaW51eHUgaW4gdGhlIG5leHQgcGF0Y2ggc2VyaWVzKSBzaG93
IHRoYXQgdGhleSBjb252ZXJnZSB0byBhIGNvbW1vbgpBUEkuIFRoaXMgc2hvdWxkIGJlIGltcGxl
bWVudGVkIHdoZW4gd2UnbGwgYWRkIG1vcmUgdmFyaWFibGVzIGludG8KZXF1YXRpb24sIHN1Y2gg
YXMgbW9yZSBkcml2ZXJzLCBhIGRpZmZlcmVudCBpbnRlcnJ1cHQgY29udHJvbGxlciAoQVBJQykK
YW5kIGEgZnVsbCBBUk0gcG9ydGluZy4KCj4+ICt2b2lkIGlycV9yZWdpc3Rlcih1bnNpZ25lZCBs
b25nIGlycSwgaXJxX2hhbmRsZXJfZnVuY190IGZ1bmMsIHZvaWQKPj4gKmFyZyk7Cj4+ICt2b2lk
IGlycV9oYW5kbGUodW5zaWduZWQgbG9uZyBpcnEpOwo+PiArCj4+ICsjZW5kaWYgLyogX19LVk1f
SVJRX0hfICovCj4+IGRpZmYgLS1naXQgYS9wbGF0L2t2bS9pcnEuYyBiL3BsYXQva3ZtL2lycS5j
Cj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4+IGluZGV4IDAwMDAwMDAuLjU1ZjhlNjcKPj4gLS0t
IC9kZXYvbnVsbAo+PiArKysgYi9wbGF0L2t2bS9pcnEuYwo+PiBAQCAtMCwwICsxLDk3IEBACj4+
ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogSVNDICovCj4+ICsvKgo+PiArICogQXV0aG9y
czogRGFuIFdpbGxpYW1zCj4+ICsgKsKgwqDCoMKgwqDCoMKgwqDCoCBNYXJ0aW4gTHVjaW5hCj4+
ICsgKsKgwqDCoMKgwqDCoMKgwqDCoCBSaWNhcmRvIEtvbGxlcgo+PiArICrCoMKgwqDCoMKgwqDC
oMKgwqAgQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPj4gKyAqCj4+ICsgKiBD
b3B5cmlnaHQgKGMpIDIwMTUtMjAxNyBJQk0KPj4gKyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3
IERvY2tlciwgSW5jLgo+PiArICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4s
IE5FQyBDb3Jwb3JhdGlvbgo+PiArICoKPj4gKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBt
b2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUKPj4gKyAqIGZvciBhbnkgcHVy
cG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZAo+PiAr
ICogdGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5v
dGljZSBhcHBlYXIKPj4gKyAqIGluIGFsbCBjb3BpZXMuCj4+ICsgKgo+PiArICogVEhFIFNPRlRX
QVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAo+PiAr
ICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwg
SU1QTElFRAo+PiArICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRQo+PiArICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQ
RUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SCj4+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
T1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCj4+ICsgKiBPRiBV
U0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCj4+
ICsgKiBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0Yg
T1IgSU4KPj4gKyAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRI
SVMgU09GVFdBUkUuCj4+ICsgKi8KPj4gKy8qIFRha2VuIGZyb20gc29sbzUgaW50ci5jICovCj4+
ICsKPj4gKyNpbmNsdWRlIDxzdGRsaWIuaD4KPj4gKyNpbmNsdWRlIDx1ay9hbGxvYy5oPgo+PiAr
I2luY2x1ZGUgPHVrL2xpc3QuaD4KPj4gKyNpbmNsdWRlIDx1ay9wbGF0L2xjcHUuaD4KPj4gKyNp
bmNsdWRlIDx4ODYvY3B1Lmg+Cj4+ICsjaW5jbHVkZSA8a3ZtL2lycS5oPgo+PiArI2luY2x1ZGUg
PGt2bS9pbnRjdHJsLmg+Cj4+ICsjaW5jbHVkZSA8dWsvYXNzZXJ0Lmg+Cj4+ICsKPj4gKwo+PiAr
c3RhdGljIHN0cnVjdCB1a19hbGxvYyAqYWxsb2NhdG9yOwo+PiArCj4+ICtzdHJ1Y3QgaXJxX2hh
bmRsZXIgewo+PiArwqDCoMKgIGlycV9oYW5kbGVyX2Z1bmNfdCBmdW5jOwo+PiArwqDCoMKgIHZv
aWQgKmFyZzsKPj4gKwo+PiArwqDCoMKgIFVLX1NMSVNUX0VOVFJZKHN0cnVjdCBpcnFfaGFuZGxl
cikgZW50cmllczsKPj4gK307Cj4+ICsKPj4gK1VLX1NMSVNUX0hFQUQoaXJxX2hhbmRsZXJfaGVh
ZCwgc3RydWN0IGlycV9oYW5kbGVyKTsKPj4gK3N0YXRpYyBzdHJ1Y3QgaXJxX2hhbmRsZXJfaGVh
ZCBpcnFfaGFuZGxlcnNbMTZdOwo+PiArCj4+ICt2b2lkIGlycV9yZWdpc3Rlcih1bnNpZ25lZCBs
b25nIGlycSwgaXJxX2hhbmRsZXJfZnVuY190IGZ1bmMsIHZvaWQgKmFyZykKPj4gK3sKPj4gK8Kg
wqDCoCBzdHJ1Y3QgaXJxX2hhbmRsZXIgKmg7Cj4+ICvCoMKgwqAgdW5zaWduZWQgbG9uZyBmbGFn
czsKPj4gKwo+PiArwqDCoMKgIFVLX0FTU0VSVChpcnEgPCAxNik7Cj4+ICvCoMKgwqAgVUtfQVNT
RVJUKGFsbG9jYXRvciAhPSBOVUxMKTsKPj4gKwo+PiArwqDCoMKgIGggPSB1a19tYWxsb2MoYWxs
b2NhdG9yLCBzaXplb2Yoc3RydWN0IGlycV9oYW5kbGVyKSk7Cj4+ICvCoMKgwqAgVUtfQVNTRVJU
KGggIT0gTlVMTCk7Cj4gCj4gSSB3b3VsZCBhY3R1YWxseSByZXR1cm4gYW4gZXJyb3IgdmFsdWUg
KC1FTk9NRU0pIGluc3RlYWQgb2YgZmFpbGluZyB3aXRoCj4gYW4gYXNzZXJ0aW9uLgoKTXkgb3Bp
bmlvbiBpcyB0aGF0IHRoZSBJUlEgcmVnaXN0ZXJpbmcgaXMgcHJldHR5IGNyaXRpY2FsIGZvciB0
aGUgc3lzdGVtCmFuZCBpZiBtZW1vcnkgaXNuJ3QgYXZhaWxhYmxlIHRoZW4gaXQncyBjbGVhcmx5
IGFuIGlzc3VlIHdpdGggaG93IHRoZQpzeXN0ZW0gaXMgZGVzaWduZWQgb3IgY29uZmlndXJlZCBv
ciBib3RoLiBBdCB0aGlzIHN0YWdlIG9mIFVuaWtyYWZ0IHdlCnNob3VsZG4ndCBjb21wbGljYXRl
IHRoZSBlcnJvciBoYW5kbGluZyB0b28gbXVjaCBzaW5jZSBpdCdzIG5vdCBhCmdlbmVyYWwgcHVy
cG9zZSBPUy4gSSdkIHJhdGhlciBtYWtlIGl0IGZhaWwgZmFzdCB0aGFuIGxldCBpdCBnZW5lcmF0
ZQp3ZWlyZCBzaWRlIGVmZmVjdHMgdGhhdCBjYW4gYmUgZGlmZmljdWx0IHRvIGRlYnVnLiBBbHNv
LCB0aGUgSVJRIEFQSQppbXBsZW1lbnRhdGlvbiBzaG91bGQgc2hlZCBzb21lIGxpZ2h0IG9uIHdo
aWNoIHdheSB3b3VsZCBiZSBiZXR0ZXIuCgo+PiArCj4+ICvCoMKgwqAgaC0+ZnVuYyA9IGZ1bmM7
Cj4+ICvCoMKgwqAgaC0+YXJnID0gYXJnOwo+PiArCj4+ICvCoMKgwqAgZmxhZ3MgPSB1a3BsYXRf
bGNwdV9zYXZlX2lycWYoKTsKPj4gK8KgwqDCoCBVS19TTElTVF9JTlNFUlRfSEVBRCgmaXJxX2hh
bmRsZXJzW2lycV0sIGgsIGVudHJpZXMpOwo+PiArwqDCoMKgIHVrcGxhdF9sY3B1X3Jlc3RvcmVf
aXJxZihmbGFncyk7Cj4+ICsKPj4gK8KgwqDCoCBpbnRjdHJsX2NsZWFyX2lycShpcnEpOwo+PiAr
fQo+PiArCj4+ICt2b2lkIGlycV9oYW5kbGUodW5zaWduZWQgbG9uZyBpcnEpCj4+ICt7Cj4+ICvC
oMKgwqAgc3RydWN0IGlycV9oYW5kbGVyICpoOwo+PiArwqDCoMKgIGludCBoYW5kbGVkID0gMDsK
Pj4gKwo+PiArwqDCoMKgIFVLX1NMSVNUX0ZPUkVBQ0goaCwgJmlycV9oYW5kbGVyc1tpcnFdLCBl
bnRyaWVzKSB7Cj4+ICvCoMKgwqDCoMKgwqDCoCBpZiAoaC0+ZnVuYyhoLT5hcmcpID09IDEpIHsK
Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaGFuZGxlZCA9IDE7Cj4+ICvCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgIGJyZWFrOwo+PiArwqDCoMKgwqDCoMKgwqAgfQo+PiArwqDCoMKgIH0KPj4gKwo+
PiArwqDCoMKgIGlmICghaGFuZGxlZCkKPj4gK8KgwqDCoMKgwqDCoMKgIFVLX0NSQVNIKCJVbmhh
bmRsZWQgaXJxPSVsdVxuIiwgaXJxKTsKPj4gK8KgwqDCoCBlbHNlCj4+ICvCoMKgwqDCoMKgwqDC
oCAvKiBPbmx5IEFDSyB0aGUgSVJRIGlmIGhhbmRsZWQ7IHdlIG9ubHkgbmVlZCB0byBrbm93Cj4+
ICvCoMKgwqDCoMKgwqDCoMKgICogYWJvdXQgYW4gdW5oYW5kbGVkIElSUSB0aGUgZmlyc3QgdGlt
ZSByb3VuZC4KPj4gK8KgwqDCoMKgwqDCoMKgwqAgKi8KPj4gK8KgwqDCoMKgwqDCoMKgIGludGN0
cmxfYWNrX2lycShpcnEpOwo+PiArfQo+PiArCj4+ICtpbnQgdWtwbGF0X2lycV9pbml0KHN0cnVj
dCB1a19hbGxvYyAqYSkKPj4gK3sKPj4gK8KgwqDCoCBVS19BU1NFUlQoYWxsb2NhdG9yID09IE5V
TEwpOwo+PiArwqDCoMKgIGFsbG9jYXRvciA9IGE7Cj4+ICvCoMKgwqAgcmV0dXJuIDA7Cj4+ICt9
Cj4+IGRpZmYgLS1naXQgYS9wbGF0L2t2bS9zaHV0ZG93bi5jIGIvcGxhdC9rdm0vc2h1dGRvd24u
Ywo+PiBpbmRleCA2NzNkMDY1Li5hNTEzZGY5IDEwMDY0NAo+PiAtLS0gYS9wbGF0L2t2bS9zaHV0
ZG93bi5jCj4+ICsrKyBiL3BsYXQva3ZtL3NodXRkb3duLmMKPj4gQEAgLTI2LDYgKzI2LDggQEAK
Pj4gwqAgI2luY2x1ZGUgPHVrL3ByaW50Lmg+Cj4+IMKgICNpbmNsdWRlIDx1ay9wbGF0L2Jvb3Rz
dHJhcC5oPgo+PiDCoCArc3RhdGljIHZvaWQgY3B1X2hhbHQodm9pZCkgX19ub3JldHVybjsKPj4g
Kwo+PiDCoCAvKiBUT0RPOiBpbXBsZW1lbnQgQ1BVIHJlc2V0ICovCj4+IMKgIHZvaWQgdWtwbGF0
X3Rlcm1pbmF0ZShlbnVtIHVrcGxhdF9nc3RhdGUgcmVxdWVzdCBfX3VudXNlZCkKPj4gwqAgewo+
PiBAQCAtNDUsNiArNDcsMTMgQEAgdm9pZCB1a3BsYXRfdGVybWluYXRlKGVudW0gdWtwbGF0X2dz
dGF0ZSByZXF1ZXN0Cj4+IF9fdW51c2VkKQo+PiDCoMKgwqDCoMKgIGNwdV9oYWx0KCk7Cj4+IMKg
IH0KPj4gwqAgK3N0YXRpYyB2b2lkIGNwdV9oYWx0KHZvaWQpCj4+ICt7Cj4+ICvCoMKgwqAgX19h
c21fXyBfX3ZvbGF0aWxlX18oImNsaTsgaGx0Iik7Cj4+ICvCoMKgwqAgZm9yICg7OykKPj4gK8Kg
wqDCoMKgwqDCoMKgIDsKPj4gK30KPj4gKwo+PiDCoCBpbnQgdWtwbGF0X3N1c3BlbmQodm9pZCkK
Pj4gwqAgewo+PiDCoMKgwqDCoMKgIHJldHVybiAtRUJVU1k7Cj4+IGRpZmYgLS1naXQgYS9wbGF0
L2t2bS94ODYvY3B1X3ZlY3RvcnNfeDg2XzY0LlMKPj4gYi9wbGF0L2t2bS94ODYvY3B1X3ZlY3Rv
cnNfeDg2XzY0LlMKPj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPj4gaW5kZXggMDAwMDAwMC4uYzMw
ZjJlZQo+PiAtLS0gL2Rldi9udWxsCj4+ICsrKyBiL3BsYXQva3ZtL3g4Ni9jcHVfdmVjdG9yc194
ODZfNjQuUwo+PiBAQCAtMCwwICsxLDE0MiBAQAo+PiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZp
ZXI6IElTQyAqLwo+PiArLyoKPj4gKyAqIEF1dGhvcnM6IERhbiBXaWxsaWFtcwo+PiArICrCoMKg
wqDCoMKgwqDCoMKgwqAgTWFydGluIEx1Y2luYQo+PiArICrCoMKgwqDCoMKgwqDCoMKgwqAgQ29z
dGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPj4gKyAqCj4+ICsgKiBDb3B5cmlnaHQg
KGMpIDIwMTUtMjAxNyBJQk0KPj4gKyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tlciwg
SW5jLgo+PiArICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jw
b3JhdGlvbgo+PiArICoKPj4gKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFu
ZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUKPj4gKyAqIGZvciBhbnkgcHVycG9zZSB3aXRo
IG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZAo+PiArICogdGhhdCB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBl
YXIKPj4gKyAqIGluIGFsbCBjb3BpZXMuCj4+ICsgKgo+PiArICogVEhFIFNPRlRXQVJFIElTIFBS
T1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAo+PiArICogV0FSUkFO
VElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAo+
PiArICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRQo+PiArICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJ
UkVDVCwgSU5ESVJFQ1QsIE9SCj4+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERB
TUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCj4+ICsgKiBPRiBVU0UsIERBVEEg
T1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCj4+ICsgKiBORUdM
SUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4KPj4g
KyAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdB
UkUuCj4+ICsgKi8KPj4gKy8qIFRha2VuIGZyb20gc29sbzUgKi8KPj4gKwo+PiArI2luY2x1ZGUg
PHg4Ni90cmFwcy5oPgo+PiArI2luY2x1ZGUgPHg4Ni9yZWdzLmg+Cj4+ICsKPj4gKyNkZWZpbmUg
RU5UUlkoWCnCoMKgwqDCoCAuZ2xvYmFsIFggOyAudHlwZSBYLCBAZnVuY3Rpb24gOyBYOgo+PiAr
Cj4+ICsubWFjcm8gUFVTSF9DQUxMRVJfU0FWRQo+PiArwqDCoMKgIHB1c2hxICVyZGkKPj4gK8Kg
wqDCoCBwdXNocSAlcnNpCj4+ICvCoMKgwqAgcHVzaHEgJXJkeAo+PiArwqDCoMKgIHB1c2hxICVy
Y3gKPj4gK8KgwqDCoCBwdXNocSAlcmF4Cj4+ICvCoMKgwqAgcHVzaHEgJXI4Cj4+ICvCoMKgwqAg
cHVzaHEgJXI5Cj4+ICvCoMKgwqAgcHVzaHEgJXIxMAo+PiArwqDCoMKgIHB1c2hxICVyMTEKPj4g
K8KgwqDCoCBwdXNocSAlcmJ4Cj4+ICvCoMKgwqAgcHVzaHEgJXJicAo+PiArwqDCoMKgIHB1c2hx
ICVyMTIKPj4gK8KgwqDCoCBwdXNocSAlcjEzCj4+ICvCoMKgwqAgcHVzaHEgJXIxNAo+PiArwqDC
oMKgIHB1c2hxICVyMTUKPj4gKy5lbmRtCj4+ICsKPj4gKy5tYWNybyBQT1BfQ0FMTEVSX1NBVkUK
Pj4gK8KgwqDCoCBwb3BxICVyMTUKPj4gK8KgwqDCoCBwb3BxICVyMTQKPj4gK8KgwqDCoCBwb3Bx
ICVyMTMKPj4gK8KgwqDCoCBwb3BxICVyMTIKPj4gK8KgwqDCoCBwb3BxICVyYnAKPj4gK8KgwqDC
oCBwb3BxICVyYngKPj4gK8KgwqDCoCBwb3BxICVyMTEKPj4gK8KgwqDCoCBwb3BxICVyMTAKPj4g
K8KgwqDCoCBwb3BxICVyOQo+PiArwqDCoMKgIHBvcHEgJXI4Cj4+ICvCoMKgwqAgcG9wcSAlcmF4
Cj4+ICvCoMKgwqAgcG9wcSAlcmN4Cj4+ICvCoMKgwqAgcG9wcSAlcmR4Cj4+ICvCoMKgwqAgcG9w
cSAlcnNpCj4+ICvCoMKgwqAgcG9wcSAlcmRpCj4+ICsuZW5kbQo+PiArCj4+ICsubWFjcm8gVFJB
UF9FTlRSWSB0cmFwbmFtZSwgaGFzX2VjCj4+ICtFTlRSWShBU01fVFJBUF9TWU0oXHRyYXBuYW1l
KSkKPj4gK8KgwqDCoCBjbGQKPj4gKwo+PiArLmlmICFcaGFzX2VjCj4+ICvCoMKgwqAgcHVzaHEg
JDDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg
Lyogbm8gZXJyb3IgY29kZSwgcGFzcyAwICovCj4+ICsuZW5kaWYKPj4gK8KgwqDCoCBQVVNIX0NB
TExFUl9TQVZFCj4+ICvCoMKgwqAgc3VicSAkUkVHU19QQURfU0laRSwgJXJzcMKgwqDCoMKgwqDC
oMKgwqDCoMKgIC8qIHdlIGhhdmUgc29tZSBwYWRkaW5nICovCj4+ICsKPj4gK8KgwqDCoCBtb3Zx
ICVyc3AsICVyZGkKPj4gK8KgwqDCoCBtb3ZxIE9GRlNFVE9GX1JFR1NfT1JJR19SQVgoJXJzcCks
ICVyc2kKPj4gK8KgwqDCoCBjYWxsIGRvX1x0cmFwbmFtZQo+PiArCj4+ICvCoMKgwqAgYWRkcSAk
UkVHU19QQURfU0laRSwgJXJzcMKgwqDCoMKgwqDCoMKgwqDCoMKgIC8qIHdlIGhhdmUgc29tZSBw
YWRkaW5nICovCj4+ICvCoMKgwqAgUE9QX0NBTExFUl9TQVZFCj4+ICvCoMKgwqAgYWRkcSAkOCwg
JXJzcMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIC8qIGRpc2Nh
cmQgZXJyb3IgY29kZSAqLwo+PiArCj4+ICvCoMKgwqAgaXJldHEKPj4gKy5lbmRtCj4+ICsKPj4g
Ky5tYWNybyBJUlFfRU5UUlkgaXJxbm8KPj4gK0VOVFJZKGNwdV9pcnFfXGlycW5vKQo+PiArwqDC
oMKgIGNsZAo+PiArCj4+ICvCoMKgwqAgcHVzaHEgJDDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgLyogbm8gZXJyb3IgY29kZSAqLwo+PiArwqDC
oMKgIFBVU0hfQ0FMTEVSX1NBVkUKPj4gK8KgwqDCoCBzdWJxICRSRUdTX1BBRF9TSVpFLCAlcnNw
wqDCoMKgwqDCoMKgwqDCoMKgwqAgLyogd2UgaGF2ZSBzb21lIHBhZGRpbmcgKi8KPj4gKwo+PiAr
wqDCoMKgIG1vdnEgJFxpcnFubywgJXJkaQo+PiArwqDCoMKgIGNhbGwgaXJxX2hhbmRsZQo+PiAr
Cj4+ICvCoMKgwqAgYWRkcSAkUkVHU19QQURfU0laRSwgJXJzcMKgwqDCoMKgwqDCoMKgwqDCoMKg
IC8qIHdlIGhhdmUgc29tZSBwYWRkaW5nICovCj4+ICvCoMKgwqAgUE9QX0NBTExFUl9TQVZFCj4+
ICvCoMKgwqAgYWRkcSAkOCwgJXJzcAo+PiArCj4+ICvCoMKgwqAgaXJldHEKPj4gKy5lbmRtCj4+
ICsKPj4gK1RSQVBfRU5UUlkgZGl2aWRlX2Vycm9yLMKgwqDCoMKgIDAKPj4gK1RSQVBfRU5UUlkg
ZGVidWcswqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAwCj4+ICtUUkFQX0VOVFJZIG5taSzCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoCAwCj4+ICtUUkFQX0VOVFJZIGludDMswqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgIDAKPj4gK1RSQVBfRU5UUlkgb3ZlcmZsb3cswqDCoMKgwqDCoMKgwqDCoCAwCj4+
ICtUUkFQX0VOVFJZIGJvdW5kcyzCoMKgwqDCoMKgwqDCoMKgwqDCoCAwCj4+ICtUUkFQX0VOVFJZ
IGludmFsaWRfb3AswqDCoMKgwqDCoMKgIDAKPj4gK1RSQVBfRU5UUlkgbm9fZGV2aWNlLMKgwqDC
oMKgwqDCoMKgIDAKPj4gK1RSQVBfRU5UUlkgZG91YmxlX2ZhdWx0LMKgwqDCoMKgIDEKPj4gK1RS
QVBfRU5UUlkgaW52YWxpZF90c3MswqDCoMKgwqDCoCAxCj4+ICtUUkFQX0VOVFJZIG5vX3NlZ21l
bnQswqDCoMKgwqDCoMKgIDEKPj4gK1RSQVBfRU5UUlkgc3RhY2tfZXJyb3IswqDCoMKgwqDCoCAx
Cj4+ICtUUkFQX0VOVFJZIGdwX2ZhdWx0LMKgwqDCoMKgwqDCoMKgwqAgMQo+PiArVFJBUF9FTlRS
WSBwYWdlX2ZhdWx0LMKgwqDCoMKgwqDCoCAxCj4+ICtUUkFQX0VOVFJZIGNvcHJvY19lcnJvcizC
oMKgwqDCoCAwCj4+ICtUUkFQX0VOVFJZIGFsaWdubWVudF9jaGVjayzCoCAxCj4+ICtUUkFQX0VO
VFJZIG1hY2hpbmVfY2hlY2sswqDCoMKgIDAKPj4gK1RSQVBfRU5UUlkgc2ltZF9lcnJvcizCoMKg
wqDCoMKgwqAgMAo+PiArVFJBUF9FTlRSWSB2aXJ0X2Vycm9yLMKgwqDCoMKgwqDCoCAwCj4+ICsK
Pj4gK0lSUV9FTlRSWSAwCj4+ICtJUlFfRU5UUlkgMQo+PiArSVJRX0VOVFJZIDIKPj4gK0lSUV9F
TlRSWSAzCj4+ICtJUlFfRU5UUlkgNAo+PiArSVJRX0VOVFJZIDUKPj4gK0lSUV9FTlRSWSA2Cj4+
ICtJUlFfRU5UUlkgNwo+PiArSVJRX0VOVFJZIDgKPj4gK0lSUV9FTlRSWSA5Cj4+ICtJUlFfRU5U
UlkgMTAKPj4gK0lSUV9FTlRSWSAxMQo+PiArSVJRX0VOVFJZIDEyCj4+ICtJUlFfRU5UUlkgMTMK
Pj4gK0lSUV9FTlRSWSAxNAo+PiArSVJRX0VOVFJZIDE1Cj4+IGRpZmYgLS1naXQgYS9wbGF0L2t2
bS94ODYvY3B1X3g4Nl82NC5jIGIvcGxhdC9rdm0veDg2L2NwdV94ODZfNjQuYwo+PiBkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKPj4gaW5kZXggMmY5OGI5NS4uMDAwMDAwMAo+PiAtLS0gYS9wbGF0
L2t2bS94ODYvY3B1X3g4Nl82NC5jCj4+ICsrKyAvZGV2L251bGwKPj4gQEAgLTEsNzEgKzAsMCBA
QAo+PiAtLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IElTQyAqLwo+PiAtLyoKPj4gLSAqIEF1
dGhvcnM6IERhbiBXaWxsaWFtcwo+PiAtICrCoMKgwqDCoMKgwqDCoMKgwqAgTWFydGluIEx1Y2lu
YQo+PiAtICrCoMKgwqDCoMKgwqDCoMKgwqAgRmVsaXBlIEh1aWNpIDxmZWxpcGUuaHVpY2lAbmVj
bGFiLmV1Pgo+PiAtICrCoMKgwqDCoMKgwqDCoMKgwqAgRmxvcmlhbiBTY2htaWR0IDxmbG9yaWFu
LnNjaG1pZHRAbmVjbGFiLmV1Pgo+PiAtICoKPj4gLSAqIENvcHlyaWdodCAoYykgMjAxNS0yMDE3
IElCTQo+PiAtICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTcgRG9ja2VyLCBJbmMuCj4+IC0gKiBD
b3B5cmlnaHQgKGMpIDIwMTcgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24KPj4gLSAq
Cj4+IC0gKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0
ZSB0aGlzIHNvZnR3YXJlCj4+IC0gKiBmb3IgYW55IHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZl
ZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQKPj4gLSAqIHRoYXQgdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyCj4+IC0gKiBpbiBh
bGwgY29waWVzLgo+PiAtICoKPj4gLSAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMi
IEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwKPj4gLSAqIFdBUlJBTlRJRVMgV0lUSCBSRUdB
UkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQKPj4gLSAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUK
Pj4gLSAqIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNU
LCBPUgo+PiAtICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VW
RVIgUkVTVUxUSU5HIEZST00gTE9TUwo+PiAtICogT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdI
RVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULAo+PiAtICogTkVHTElHRU5DRSBPUiBPVEhF
UiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOCj4+IC0gKiBDT05ORUNUSU9O
IFdJVEggVEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgo+PiAtICovCj4+
IC0KPj4gLSNpbmNsdWRlIDxzdHJpbmcuaD4KPj4gLSNpbmNsdWRlIDx4ODYvZGVzYy5oPgo+PiAt
I2luY2x1ZGUgPGt2bS9zZXR1cC5oPgo+PiAtI2luY2x1ZGUgPGt2bS14ODYvY3B1X3g4Nl82NF9k
ZWZzLmg+Cj4+IC0jaW5jbHVkZSA8a3ZtLXg4Ni9jcHVfeDg2XzY0Lmg+Cj4+IC0KPj4gLXN0YXRp
YyBzdHJ1Y3Qgc2VnX2Rlc2MzMiBjcHVfZ2R0NjRbR0RUX05VTV9FTlRSSUVTXSBBTElHTl82NF9C
SVQ7Cj4+IC0KPj4gLS8qCj4+IC0gKiBUaGUgbW9uaXRvciAodWt2bSkgb3IgYm9vdGxvYWRlciAr
IGJvb3RzdHJhcCAodmlydGlvKSBzdGFydHMgdXMgdXAKPj4gd2l0aCBhCj4+IC0gKiBib290c3Ry
YXAgR0RUIHdoaWNoIGlzICJpbnZpc2libGUiIHRvIHRoZSBndWVzdCwgaW5pdCBhbmQgc3dpdGNo
Cj4+IHRvIG91ciBvd24KPj4gLSAqIEdEVC4KPj4gLSAqCj4+IC0gKiBUaGlzIGlzIGRvbmUgcHJp
bWFyaWx5IHNpbmNlIHdlIG5lZWQgdG8gZG8gTFRSIGxhdGVyIGluIGEgcHJlZGljdGFibGUKPj4g
LSAqIGZhc2hpb24uCj4+IC0gKi8KPj4gLXN0YXRpYyB2b2lkIGdkdF9pbml0KHZvaWQpCj4+IC17
Cj4+IC3CoMKgwqAgdm9sYXRpbGUgc3RydWN0IGRlc2NfdGFibGVfcHRyNjQgZ2R0cHRyOwo+PiAt
Cj4+IC3CoMKgwqAgbWVtc2V0KGNwdV9nZHQ2NCwgMCwgc2l6ZW9mKGNwdV9nZHQ2NCkpOwo+PiAt
wqDCoMKgIGNwdV9nZHQ2NFtHRFRfREVTQ19DT0RFXS5yYXcgPSBHRFRfREVTQ19DT0RFX1ZBTDsK
Pj4gLcKgwqDCoCBjcHVfZ2R0NjRbR0RUX0RFU0NfREFUQV0ucmF3ID0gR0RUX0RFU0NfREFUQV9W
QUw7Cj4+IC0KPj4gLcKgwqDCoCBnZHRwdHIubGltaXQgPSBzaXplb2YoY3B1X2dkdDY0KSAtIDE7
Cj4+IC3CoMKgwqAgZ2R0cHRyLmJhc2UgPSAoX191NjQpICZjcHVfZ2R0NjQ7Cj4+IC3CoMKgwqAg
X19hc21fXyBfX3ZvbGF0aWxlX18oImxnZHQgKCUwKSIgOjoiciIoJmdkdHB0cikpOwo+PiAtwqDC
oMKgIC8qCj4+IC3CoMKgwqDCoCAqIFRPRE86IFRlY2huaWNhbGx5IHdlIHNob3VsZCByZWxvYWQg
YWxsIHNlZ21lbnQgcmVnaXN0ZXJzIGhlcmUsIGluCj4+IC3CoMKgwqDCoCAqIHByYWN0aWNlIHRo
aXMgZG9lc24ndCBtYXR0ZXIgc2luY2UgdGhlIGJvb3RzdHJhcCBHRFQgbWF0Y2hlcwo+PiBvdXJz
LAo+PiAtwqDCoMKgwqAgKiBmb3Igbm93Lgo+PiAtwqDCoMKgwqAgKi8KPj4gLX0KPj4gLQo+PiAt
dm9pZCBjcHVfaW5pdCh2b2lkKQo+PiAtewo+PiAtwqDCoMKgIGdkdF9pbml0KCk7Cj4+IC19Cj4+
IC0KPj4gLXZvaWQgY3B1X2hhbHQodm9pZCkKPj4gLXsKPj4gLcKgwqDCoCBfX2FzbV9fIF9fdm9s
YXRpbGVfXygiY2xpOyBobHQiKTsKPj4gLcKgwqDCoCBmb3IgKDs7KQo+PiAtwqDCoMKgwqDCoMKg
wqAgOwo+PiAtfQo+PiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0veDg2L2VudHJ5NjQuUyBiL3BsYXQv
a3ZtL3g4Ni9lbnRyeTY0LlMKPj4gaW5kZXggNjU3MGM0Ny4uZjAzNDkwOCAxMDA2NDQKPj4gLS0t
IGEvcGxhdC9rdm0veDg2L2VudHJ5NjQuUwo+PiArKysgYi9wbGF0L2t2bS94ODYvZW50cnk2NC5T
Cj4+IEBAIC0yOCw2ICsyOCw3IEBACj4+IMKgwqAgKi8KPj4gwqAgwqAgI2luY2x1ZGUgPHg4Ni9j
cHVfZGVmcy5oPgo+PiArI2luY2x1ZGUgPGt2bS14ODYvdHJhcHMuaD4KPj4gwqAgI2luY2x1ZGUg
PGt2bS14ODYvbXVsdGlib290X2RlZnMuaD4KPj4gwqAgwqAgI2RlZmluZSBFTlRSWSh4KSAudGV4
dDsgLmdsb2JsIHg7IC50eXBlIHgsJWZ1bmN0aW9uOyB4Ogo+PiBkaWZmIC0tZ2l0IGEvcGxhdC9r
dm0veDg2L2ludGN0cmwuYyBiL3BsYXQva3ZtL3g4Ni9pbnRjdHJsLmMKPj4gbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKPj4gaW5kZXggMDAwMDAwMC4uZGM0MDU1NQo+PiAtLS0gL2Rldi9udWxsCj4+ICsr
KyBiL3BsYXQva3ZtL3g4Ni9pbnRjdHJsLmMKPj4gQEAgLTAsMCArMSwxMTEgQEAKPj4gKy8qIFNQ
RFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8KPj4gKy8qCj4+ICsgKiBBdXRob3JzOiBEYW4g
V2lsbGlhbXMKPj4gKyAqwqDCoMKgwqDCoMKgwqDCoMKgIE1hcnRpbiBMdWNpbmEKPj4gKyAqCj4+
ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNyBJQk0KPj4gKyAqIENvcHlyaWdodCAoYykgMjAx
Ni0yMDE3IERvY2tlciwgSW5jLgo+PiArICoKPj4gKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5
LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUKPj4gKyAqIGZvciBhbnkg
cHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZAo+
PiArICogdGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9u
IG5vdGljZSBhcHBlYXIKPj4gKyAqIGluIGFsbCBjb3BpZXMuCj4+ICsgKgo+PiArICogVEhFIFNP
RlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAo+
PiArICogV0FSUkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBB
TEwgSU1QTElFRAo+PiArICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQo+PiArICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5Z
IFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SCj4+ICsgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCj4+ICsgKiBP
RiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1Qs
Cj4+ICsgKiBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQg
T0YgT1IgSU4KPj4gKyAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9G
IFRISVMgU09GVFdBUkUuCj4+ICsgKi8KPj4gKy8qIFRha2VuIGZyb20gc29sbzUgcGxhdGZvcm1f
aW50ci5jICovCj4+ICsKPj4gKyNpbmNsdWRlIDxzdGRpbnQuaD4KPj4gKyNpbmNsdWRlIDx4ODYv
Y3B1Lmg+Cj4+ICsjaW5jbHVkZSA8a3ZtL2ludGN0cmwuaD4KPj4gKwo+PiArI2RlZmluZSBQSUMx
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDB4MjDCoMKgwqAgLyogSU8gYmFzZSBhZGRyZXNzIGZv
ciBtYXN0ZXIgUElDICovCj4+ICsjZGVmaW5lIFBJQzLCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg
MHhBMMKgwqDCoCAvKiBJTyBiYXNlIGFkZHJlc3MgZm9yIHNsYXZlIFBJQyAqLwo+PiArI2RlZmlu
ZSBQSUMxX0NPTU1BTkTCoMKgwqDCoCBQSUMxCj4+ICsjZGVmaW5lIFBJQzFfREFUQcKgwqDCoMKg
wqDCoMKgIChQSUMxICsgMSkKPj4gKyNkZWZpbmUgUElDMl9DT01NQU5EwqDCoMKgwqAgUElDMgo+
PiArI2RlZmluZSBQSUMyX0RBVEHCoMKgwqDCoMKgwqDCoCAoUElDMiArIDEpCj4+ICsjZGVmaW5l
IElSUV9PTl9NQVNURVIobikgKChuKSA8IDgpCj4+ICsjZGVmaW5lIElSUV9QT1JUKG4pwqDCoMKg
wqDCoCAoSVJRX09OX01BU1RFUihuKSA/IFBJQzFfREFUQSA6IFBJQzJfREFUQSkKPj4gKyNkZWZp
bmUgSVJRX09GRlNFVChuKcKgwqDCoCAoSVJRX09OX01BU1RFUihuKSA/IChuKSA6ICgobikgLSA4
KSkKPj4gKwo+PiArI2RlZmluZSBQSUNfRU9JwqDCoMKgwqDCoMKgwqDCoMKgIDB4MjAgLyogRW5k
LW9mLWludGVycnVwdCBjb21tYW5kIGNvZGUgKi8KPj4gKyNkZWZpbmUgSUNXMV9JQ1c0wqDCoMKg
wqDCoMKgwqAgMHgwMSAvKiBJQ1c0IChub3QpIG5lZWRlZCAqLwo+PiArI2RlZmluZSBJQ1cxX1NJ
TkdMRcKgwqDCoMKgwqAgMHgwMiAvKiBTaW5nbGUgKGNhc2NhZGUpIG1vZGUgKi8KPj4gKyNkZWZp
bmUgSUNXMV9JTlRFUlZBTMKgwqDCoCAweDA0IC8qIENhbGwgYWRkcmVzcyBpbnRlcnZhbCA0ICg4
KSAqLwo+PiArI2RlZmluZSBJQ1cxX0xFVkVMwqDCoMKgwqDCoMKgIDB4MDggLyogTGV2ZWwgdHJp
Z2dlcmVkIChlZGdlKSBtb2RlICovCj4+ICsjZGVmaW5lIElDVzFfSU5JVMKgwqDCoMKgwqDCoMKg
IDB4MTAgLyogSW5pdGlhbGl6YXRpb24gLSByZXF1aXJlZCEgKi8KPj4gKyNkZWZpbmUgSUNXNF84
MDg2wqDCoMKgwqDCoMKgwqAgMHgwMSAvKiA4MDg2Lzg4IChNQ1MtODAvODUpIG1vZGUgKi8KPj4g
KyNkZWZpbmUgSUNXNF9BVVRPwqDCoMKgwqDCoMKgwqAgMHgwMiAvKiBBdXRvIChub3JtYWwpIEVP
SSAqLwo+PiArI2RlZmluZSBJQ1c0X0JVRl9TTEFWRcKgwqAgMHgwOCAvKiBCdWZmZXJlZCBtb2Rl
L3NsYXZlICovCj4+ICsjZGVmaW5lIElDVzRfQlVGX01BU1RFUsKgIDB4MEMgLyogQnVmZmVyZWQg
bW9kZS9tYXN0ZXIgKi8KPj4gKyNkZWZpbmUgSUNXNF9TRk7CoMKgwqDCoMKgwqDCoMKgIDB4MTAg
LyogU3BlY2lhbCBmdWxseSBuZXN0ZWQgKG5vdCkgKi8KPj4gKwo+PiArLyoKPj4gKyAqIGFyZ3Vt
ZW50czoKPj4gKyAqIG9mZnNldDEgLSB2ZWN0b3Igb2Zmc2V0IGZvciBtYXN0ZXIgUElDIHZlY3Rv
cnMgb24gdGhlIG1hc3RlciBiZWNvbWUKPj4gKyAqwqDCoMKgwqDCoMKgwqDCoMKgwqAgb2Zmc2V0
MS4ub2Zmc2V0MSs3Cj4+ICsgKiBvZmZzZXQyIC0gc2FtZSBmb3Igc2xhdmUgUElDOiBvZmZzZXQy
Li5vZmZzZXQyKzcKPj4gKyAqLwo+PiArc3RhdGljIHZvaWQgUElDX3JlbWFwKGludCBvZmZzZXQx
LCBpbnQgb2Zmc2V0MikKPj4gK3sKPj4gK8KgwqDCoCB1bnNpZ25lZCBjaGFyIGExLCBhMjsKPj4g
Kwo+PiArwqDCoMKgIC8qIHNhdmUgbWFza3MgKi8KPj4gK8KgwqDCoCBhMSA9IGluYihQSUMxX0RB
VEEpOwo+PiArwqDCoMKgIGEyID0gaW5iKFBJQzJfREFUQSk7Cj4+ICsKPj4gK8KgwqDCoCAvKiBz
dGFydCBpbml0IHNlcSAoY2FzY2FkZSkgKi8KPj4gK8KgwqDCoCBvdXRiKFBJQzFfQ09NTUFORCwg
SUNXMV9JTklUICsgSUNXMV9JQ1c0KTsKPj4gK8KgwqDCoCBvdXRiKFBJQzJfQ09NTUFORCwgSUNX
MV9JTklUICsgSUNXMV9JQ1c0KTsKPj4gK8KgwqDCoCAvKiBJQ1cyOiBNYXN0ZXIgUElDIHZlY3Rv
ciBvZmYgKi8KPj4gK8KgwqDCoCBvdXRiKFBJQzFfREFUQSwgb2Zmc2V0MSk7Cj4+ICvCoMKgwqAg
LyogSUNXMjogU2xhdmUgUElDIHZlY3RvciBvZmYgKi8KPj4gK8KgwqDCoCBvdXRiKFBJQzJfREFU
QSwgb2Zmc2V0Mik7Cj4+ICvCoMKgwqAgLyogSUNXMzogdGVsbCBNYXN0ZXIgUElDIHRoZXJlIGlz
IGEgc2xhdmUgUElDIGF0IElSUTIgKDAwMDAgMDEwMCkgKi8KPj4gK8KgwqDCoCBvdXRiKFBJQzFf
REFUQSwgNCk7Cj4+ICvCoMKgwqAgLyogSUNXMzogdGVsbCBTbGF2ZSBQSUMgaXRzIGNhc2NhZGUg
aWRlbnRpdHkgKDAwMDAgMDAxMCkgKi8KPj4gK8KgwqDCoCBvdXRiKFBJQzJfREFUQSwgMik7Cj4+
ICsKPj4gK8KgwqDCoCBvdXRiKFBJQzFfREFUQSwgSUNXNF84MDg2KTsKPj4gK8KgwqDCoCBvdXRi
KFBJQzJfREFUQSwgSUNXNF84MDg2KTsKPj4gKwo+PiArwqDCoMKgIG91dGIoUElDMV9EQVRBLCBh
MSk7IC8qIHJlc3RvcmUgc2F2ZWQgbWFza3MuICovCj4+ICvCoMKgwqAgb3V0YihQSUMyX0RBVEEs
IGEyKTsKPj4gK30KPj4gKwo+IAo+IFdlIHNob3VsZCBwcmVmaXggdGhlc2UgZnVuY2l0b25zLCB0
b28uCgpJIGRvbid0IHVuZGVyc3RhbmQgd2hpY2ggcHJlZml4IHRoYXQgd291bGQgYmUuIEFGQUlL
LCBQSUMgY2FuIGJlIHVzZWQgb24KWGVuIGFzIHdlbGwgaW4gYW4gSFZNLiBQbGVhc2UgY29ycmVj
dCBpZiBJJ20gd3JvbmcuIEFnYWluLCB3aGVuCnJldmlzaXRpbmcgdGhlIElSUSBoYW5kbGluZywg
dGhlIGludGVycnVwdCBjb250cm9sbGVycyBpbXBsZW1lbnRhdGlvbgptYXkgYmUgbW92ZWQgb3V0
c2lkZSB0aGUgcGxhdGZvcm0gc3BlY2lmaWMgY29kZSwgaW4gYSBjb21tb24KbW9kdWxlL2FyZWEv
ZXRjLgoKPj4gK3ZvaWQgaW50Y3RybF9pbml0KHZvaWQpCj4+ICt7Cj4+ICvCoMKgwqAgUElDX3Jl
bWFwKDMyLCA0MCk7Cj4+ICt9Cj4+ICsKPj4gK3ZvaWQgaW50Y3RybF9hY2tfaXJxKHVuc2lnbmVk
IGludCBpcnEpCj4+ICt7Cj4+ICvCoMKgwqAgaWYgKCFJUlFfT05fTUFTVEVSKGlycSkpCj4+ICvC
oMKgwqDCoMKgwqDCoCBvdXRiKFBJQzJfQ09NTUFORCwgUElDX0VPSSk7Cj4+ICsKPj4gK8KgwqDC
oCBvdXRiKFBJQzFfQ09NTUFORCwgUElDX0VPSSk7Cj4+ICt9Cj4+ICsKPj4gK3ZvaWQgaW50Y3Ry
bF9tYXNrX2lycSh1bnNpZ25lZCBpbnQgaXJxKQo+PiArewo+PiArwqDCoMKgIF9fdTE2IHBvcnQ7
Cj4+ICsKPj4gK8KgwqDCoCBwb3J0ID0gSVJRX1BPUlQoaXJxKTsKPj4gK8KgwqDCoCBvdXRiKHBv
cnQsIGluYihwb3J0KSB8ICgxIDw8IElSUV9PRkZTRVQoaXJxKSkpOwo+PiArfQo+PiArCj4+ICt2
b2lkIGludGN0cmxfY2xlYXJfaXJxKHVuc2lnbmVkIGludCBpcnEpCj4+ICt7Cj4+ICvCoMKgwqAg
X191MTYgcG9ydDsKPj4gKwo+PiArwqDCoMKgIHBvcnQgPSBJUlFfUE9SVChpcnEpOwo+PiArwqDC
oMKgIG91dGIocG9ydCwgaW5iKHBvcnQpICYgfigxIDw8IElSUV9PRkZTRVQoaXJxKSkpOwo+PiAr
fQo+PiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0veDg2L2xjcHUuYyBiL3BsYXQva3ZtL3g4Ni9sY3B1
LmMKPj4gaW5kZXggOTg1YzY3MC4uNDJlMmZhYSAxMDA2NDQKPj4gLS0tIGEvcGxhdC9rdm0veDg2
L2xjcHUuYwo+PiArKysgYi9wbGF0L2t2bS94ODYvbGNwdS5jCj4+IEBAIC0xLDYgKzEsNyBAQAo+
PiDCoCAvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlICovCj4+IMKgIC8q
Cj4+IMKgwqAgKiBBdXRob3JzOiBTaW1vbiBLdWVuemVyIDxzaW1vbi5rdWVuemVyQG5lY2xhYi5l
dT4KPj4gKyAqwqDCoMKgwqDCoMKgwqDCoMKgIENvc3RpbiBMdXB1IDxjb3N0aW4ubHVwdUBjcy5w
dWIucm8+Cj4+IMKgwqAgKgo+PiDCoMKgICogQ29weXJpZ2h0IChjKSAyMDE3LCBORUMgRXVyb3Bl
IEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cwo+PiByZXNlcnZlZC4KPj4gwqDCoCAq
Cj4+IEBAIC0zNCwzICszNSwzOSBAQAo+PiDCoCDCoCAjaW5jbHVkZSA8c3RkaW50Lmg+Cj4+IMKg
ICNpbmNsdWRlIDx1ay9wbGF0L2xjcHUuaD4KPj4gKyNpbmNsdWRlIDx4ODYvaXJxLmg+Cj4+ICsK
Pj4gKwo+PiArdm9pZCB1a3BsYXRfbGNwdV9lbmFibGVfaXJxKHZvaWQpCj4+ICt7Cj4+ICvCoMKg
wqAgbG9jYWxfaXJxX2VuYWJsZSgpOwo+PiArfQo+PiArCj4+ICt2b2lkIHVrcGxhdF9sY3B1X2Rp
c2FibGVfaXJxKHZvaWQpCj4+ICt7Cj4+ICvCoMKgwqAgbG9jYWxfaXJxX2Rpc2FibGUoKTsKPj4g
K30KPj4gKwo+PiArdW5zaWduZWQgbG9uZyB1a3BsYXRfbGNwdV9zYXZlX2lycWYodm9pZCkKPj4g
K3sKPj4gK8KgwqDCoCB1bnNpZ25lZCBsb25nIGZsYWdzOwo+PiArCj4+ICvCoMKgwqAgbG9jYWxf
aXJxX3NhdmUoZmxhZ3MpOwo+PiArCj4+ICvCoMKgwqAgcmV0dXJuIGZsYWdzOwo+PiArfQo+PiAr
Cj4+ICt2b2lkIHVrcGxhdF9sY3B1X3Jlc3RvcmVfaXJxZih1bnNpZ25lZCBsb25nIGZsYWdzKQo+
PiArewo+PiArwqDCoMKgIGxvY2FsX2lycV9yZXN0b3JlKGZsYWdzKTsKPj4gK30KPj4gKwo+PiAr
aW50IHVrcGxhdF9sY3B1X2lycXNfZGlzYWJsZWQodm9pZCkKPj4gK3sKPj4gK8KgwqDCoCByZXR1
cm4gaXJxc19kaXNhYmxlZCgpOwo+PiArfQo+PiArCj4+ICt2b2lkIHVrcGxhdF9sY3B1X2lycXNf
aGFuZGxlX3BlbmRpbmcodm9pZCkKPj4gK3sKPj4gKwo+PiArfQo+PiBkaWZmIC0tZ2l0IGEvcGxh
dC9rdm0veDg2L3NldHVwLmMgYi9wbGF0L2t2bS94ODYvc2V0dXAuYwo+PiBpbmRleCA5NmQ4MGU5
Li5mNTZkMDdlIDEwMDY0NAo+PiAtLS0gYS9wbGF0L2t2bS94ODYvc2V0dXAuYwo+PiArKysgYi9w
bGF0L2t2bS94ODYvc2V0dXAuYwo+PiBAQCAtMjcsMTAgKzI3LDExIEBACj4+IMKgwqAgKi8KPj4g
wqAgwqAgI2luY2x1ZGUgPHN0cmluZy5oPgo+PiArI2luY2x1ZGUgPHg4Ni90cmFwcy5oPgo+PiDC
oCAjaW5jbHVkZSA8a3ZtL2NvbnNvbGUuaD4KPj4gKyNpbmNsdWRlIDxrdm0vaW50Y3RybC5oPgo+
PiDCoCAjaW5jbHVkZSA8a3ZtLXg4Ni9tdWx0aWJvb3QuaD4KPj4gwqAgI2luY2x1ZGUgPGt2bS14
ODYvbXVsdGlib290X2RlZnMuaD4KPj4gLSNpbmNsdWRlIDxrdm0teDg2L2NwdV94ODZfNjQuaD4K
Pj4gwqAgI2luY2x1ZGUgPHVrL2FyY2gvbGltaXRzLmg+Cj4+IMKgICNpbmNsdWRlIDx1ay9hcmNo
L3R5cGVzLmg+Cj4+IMKgICNpbmNsdWRlIDx1ay9wbGF0L2NvbnNvbGUuaD4KPj4gQEAgLTEzNCw3
ICsxMzUsOCBAQCB2b2lkIF9saWJrdm1wbGF0X2VudHJ5KHZvaWQgKmFyZykKPj4gwqAgwqDCoMKg
wqDCoCBfbGlia3ZtcGxhdF9pbml0X2NvbnNvbGUoKTsKPj4gwqDCoMKgwqDCoCBfaW5pdF9jcHVm
ZWF0dXJlcygpOwo+PiAtwqDCoMKgIGNwdV9pbml0KCk7Cj4+ICvCoMKgwqAgdHJhcHNfaW5pdCgp
Owo+PiArwqDCoMKgIGludGN0cmxfaW5pdCgpOwo+PiDCoCDCoMKgwqDCoMKgIHVrX3ByaW50ZChE
TFZMX0lORk8sICJFbnRlcmluZyBmcm9tIEtWTSAoeDg2KS4uLlxuIik7Cj4+IMKgwqDCoMKgwqAg
dWtfcHJpbnRkKERMVkxfSU5GTywgIsKgwqDCoMKgIG11bHRpYm9vdDogJXBcbiIsIG1pKTsKPj4g
ZGlmZiAtLWdpdCBhL3BsYXQva3ZtL3g4Ni90cmFwcy5jIGIvcGxhdC9rdm0veDg2L3RyYXBzLmMK
Pj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPj4gaW5kZXggMDAwMDAwMC4uMjdlZjZkOQo+PiAtLS0g
L2Rldi9udWxsCj4+ICsrKyBiL3BsYXQva3ZtL3g4Ni90cmFwcy5jCj4+IEBAIC0wLDAgKzEsMTg2
IEBACj4+ICsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogSVNDICovCj4+ICsvKgo+PiArICog
QXV0aG9yczogRGFuIFdpbGxpYW1zCj4+ICsgKsKgwqDCoMKgwqDCoMKgwqDCoCBNYXJ0aW4gTHVj
aW5hCj4+ICsgKsKgwqDCoMKgwqDCoMKgwqDCoCBGZWxpcGUgSHVpY2kgPGZlbGlwZS5odWljaUBu
ZWNsYWIuZXU+Cj4+ICsgKsKgwqDCoMKgwqDCoMKgwqDCoCBGbG9yaWFuIFNjaG1pZHQgPGZsb3Jp
YW4uc2NobWlkdEBuZWNsYWIuZXU+Cj4+ICsgKgo+PiArICogQ29weXJpZ2h0IChjKSAyMDE1LTIw
MTcgSUJNCj4+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAxNyBEb2NrZXIsIEluYy4KPj4gKyAq
IENvcHlyaWdodCAoYykgMjAxNyBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jwb3JhdGlvbgo+PiAr
ICoKPj4gKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmli
dXRlIHRoaXMgc29mdHdhcmUKPj4gKyAqIGZvciBhbnkgcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQg
ZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZAo+PiArICogdGhhdCB0aGUgYWJvdmUgY29w
eXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIKPj4gKyAqIGlu
IGFsbCBjb3BpZXMuCj4+ICsgKgo+PiArICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJ
UyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAo+PiArICogV0FSUkFOVElFUyBXSVRIIFJF
R0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAo+PiArICogV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRI
RQo+PiArICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJF
Q1QsIE9SCj4+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNP
RVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCj4+ICsgKiBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywg
V0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCj4+ICsgKiBORUdMSUdFTkNFIE9SIE9U
SEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4KPj4gKyAqIENPTk5FQ1RJ
T04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCj4+ICsgKi8K
Pj4gKwo+PiArI2luY2x1ZGUgPHN0cmluZy5oPgo+PiArI2luY2x1ZGUgPHVrL2FyY2gvbGNwdS5o
Pgo+PiArI2luY2x1ZGUgPHg4Ni9kZXNjLmg+Cj4+ICsjaW5jbHVkZSA8a3ZtLXg4Ni90cmFwcy5o
Pgo+PiArCj4+ICtzdGF0aWMgc3RydWN0IHNlZ19kZXNjMzIgY3B1X2dkdDY0W0dEVF9OVU1fRU5U
UklFU10gX19hbGlnbjY0YjsKPj4gKwo+PiArLyoKPj4gKyAqIFRoZSBtb25pdG9yICh1a3ZtKSBv
ciBib290bG9hZGVyICsgYm9vdHN0cmFwICh2aXJ0aW8pIHN0YXJ0cyB1cyB1cAo+PiB3aXRoIGEK
Pj4gKyAqIGJvb3RzdHJhcCBHRFQgd2hpY2ggaXMgImludmlzaWJsZSIgdG8gdGhlIGd1ZXN0LCBp
bml0IGFuZCBzd2l0Y2gKPj4gdG8gb3VyIG93bgo+PiArICogR0RULgo+PiArICoKPj4gKyAqIFRo
aXMgaXMgZG9uZSBwcmltYXJpbHkgc2luY2Ugd2UgbmVlZCB0byBkbyBMVFIgbGF0ZXIgaW4gYSBw
cmVkaWN0YWJsZQo+PiArICogZmFzaGlvbi4KPj4gKyAqLwo+PiArc3RhdGljIHZvaWQgZ2R0X2lu
aXQodm9pZCkKPj4gK3sKPj4gK8KgwqDCoCB2b2xhdGlsZSBzdHJ1Y3QgZGVzY190YWJsZV9wdHI2
NCBnZHRwdHI7Cj4+ICsKPj4gK8KgwqDCoCBtZW1zZXQoY3B1X2dkdDY0LCAwLCBzaXplb2YoY3B1
X2dkdDY0KSk7Cj4+ICvCoMKgwqAgY3B1X2dkdDY0W0dEVF9ERVNDX0NPREVdLnJhdyA9IEdEVF9E
RVNDX0NPREVfVkFMOwo+PiArwqDCoMKgIGNwdV9nZHQ2NFtHRFRfREVTQ19EQVRBXS5yYXcgPSBH
RFRfREVTQ19EQVRBX1ZBTDsKPj4gKwo+PiArwqDCoMKgIGdkdHB0ci5saW1pdCA9IHNpemVvZihj
cHVfZ2R0NjQpIC0gMTsKPj4gK8KgwqDCoCBnZHRwdHIuYmFzZSA9IChfX3U2NCkgJmNwdV9nZHQ2
NDsKPj4gK8KgwqDCoCBfX2FzbV9fIF9fdm9sYXRpbGVfXygibGdkdCAoJTApIiA6OiJyIigmZ2R0
cHRyKSk7Cj4+ICvCoMKgwqAgLyoKPj4gK8KgwqDCoMKgICogVE9ETzogVGVjaG5pY2FsbHkgd2Ug
c2hvdWxkIHJlbG9hZCBhbGwgc2VnbWVudCByZWdpc3RlcnMgaGVyZSwgaW4KPj4gK8KgwqDCoMKg
ICogcHJhY3RpY2UgdGhpcyBkb2Vzbid0IG1hdHRlciBzaW5jZSB0aGUgYm9vdHN0cmFwIEdEVCBt
YXRjaGVzCj4+IG91cnMsCj4+ICvCoMKgwqDCoCAqIGZvciBub3cuCj4+ICvCoMKgwqDCoCAqLwo+
PiArfQo+PiArCj4+ICtzdGF0aWMgc3RydWN0IHRzczY0IGNwdV90c3M7Cj4+ICsKPj4gK3N0YXRp
YyBjaGFyIGNwdV9pbnRyX3N0YWNrWzQwOTZdOyAvKiBJU1QxICovCj4+ICtzdGF0aWMgY2hhciBj
cHVfdHJhcF9zdGFja1s0MDk2XTsgLyogSVNUMiAqLwo+PiArc3RhdGljIGNoYXIgY3B1X25taV9z
dGFja1s0MDk2XTvCoCAvKiBJU1QzICovCj4+ICsKPj4gK3N0YXRpYyB2b2lkIHRzc19pbml0KHZv
aWQpCj4+ICt7Cj4+ICvCoMKgwqAgc3RydWN0IHNlZ19kZXNjNjQgKnRkID0gKHZvaWQgKikgJmNw
dV9nZHQ2NFtHRFRfREVTQ19UU1NfTE9dOwo+PiArCj4+ICvCoMKgwqAgY3B1X3Rzcy5pc3RbMF0g
PSAoX191NjQpICZjcHVfaW50cl9zdGFja1tzaXplb2YoY3B1X2ludHJfc3RhY2spXTsKPj4gK8Kg
wqDCoCBjcHVfdHNzLmlzdFsxXSA9IChfX3U2NCkgJmNwdV90cmFwX3N0YWNrW3NpemVvZihjcHVf
dHJhcF9zdGFjayldOwo+PiArwqDCoMKgIGNwdV90c3MuaXN0WzJdID0gKF9fdTY0KSAmY3B1X25t
aV9zdGFja1tzaXplb2YoY3B1X25taV9zdGFjayldOwo+PiArCj4+ICvCoMKgwqAgdGQtPmxpbWl0
X2xvID0gc2l6ZW9mKGNwdV90c3MpOwo+PiArwqDCoMKgIHRkLT5iYXNlX2xvID0gKF9fdTY0KSAm
Y3B1X3RzczsKPj4gK8KgwqDCoCB0ZC0+dHlwZSA9IDB4OTsKPj4gK8KgwqDCoCB0ZC0+emVybyA9
IDA7Cj4+ICvCoMKgwqAgdGQtPmRwbCA9IDA7Cj4+ICvCoMKgwqAgdGQtPnAgPSAxOwo+PiArwqDC
oMKgIHRkLT5saW1pdF9oaSA9IDA7Cj4+ICvCoMKgwqAgdGQtPmdyYW4gPSAwOwo+PiArwqDCoMKg
IHRkLT5iYXNlX2hpID0gKF9fdTY0KSAmY3B1X3RzcyA+PiAyNDsKPj4gK8KgwqDCoCB0ZC0+emVy
bzEgPSAwOwo+PiArCj4+ICvCoMKgwqAgYmFycmllcigpOwo+PiArwqDCoMKgIF9fYXNtX18gX192
b2xhdGlsZV9fKAo+PiArwqDCoMKgwqDCoMKgwqAgImx0ciAlMCIKPj4gK8KgwqDCoMKgwqDCoMKg
IDoKPj4gK8KgwqDCoMKgwqDCoMKgIDogInIiICgodW5zaWduZWQgc2hvcnQpIChHRFRfREVTQ19U
U1NfTE8gKiA4KSkKPj4gK8KgwqDCoCApOwo+PiArfQo+PiArCj4+ICsKPj4gKy8qIERlY2xhcmUg
dGhlIHRyYXBzIHVzZWQgb25seSBieSB0aGlzIHBsYXRmb3JtOiAqLwo+PiArREVDTEFSRV9UUkFQ
X0VDKG5taSzCoMKgwqDCoMKgwqDCoMKgwqDCoCAiTk1JIikKPj4gK0RFQ0xBUkVfVFJBUF9FQyhk
b3VibGVfZmF1bHQswqAgImRvdWJsZSBmYXVsdCIpCj4+ICtERUNMQVJFX1RSQVBfRUModmlydF9l
cnJvcizCoMKgwqAgInZpcnR1YWxpemF0aW9uIGVycm9yIikKPj4gKwo+PiArCj4+ICtzdGF0aWMg
c3RydWN0IHNlZ19nYXRlX2Rlc2M2NCBjcHVfaWR0W0lEVF9OVU1fRU5UUklFU10gX19hbGlnbjY0
YjsKPj4gKwo+PiArc3RhdGljIHZvaWQgaWR0X2ZpbGxnYXRlKHVuc2lnbmVkIGludCBudW0sIHZv
aWQgKmZ1biwgdW5zaWduZWQgaW50IGlzdCkKPj4gK3sKPj4gK8KgwqDCoCBzdHJ1Y3Qgc2VnX2dh
dGVfZGVzYzY0ICpkZXNjID0gJmNwdV9pZHRbbnVtXTsKPj4gKwo+PiArwqDCoMKgIC8qCj4+ICvC
oMKgwqDCoCAqIEFsbCBnYXRlcyBhcmUgaW50ZXJydXB0IGdhdGVzLCBhbGwgaGFuZGxlcnMgcnVu
IHdpdGgKPj4gaW50ZXJydXB0cyBvZmYuCj4+ICvCoMKgwqDCoCAqLwo+PiArwqDCoMKgIGRlc2Mt
Pm9mZnNldF9oaSA9IChfX3U2NCkgZnVuID4+IDE2Owo+PiArwqDCoMKgIGRlc2MtPm9mZnNldF9s
byA9IChfX3U2NCkgZnVuICYgMHhmZmZmOwo+PiArwqDCoMKgIGRlc2MtPnNlbGVjdG9yID0gR0RU
X0RFU0NfT0ZGU0VUKEdEVF9ERVNDX0NPREUpOwo+PiArwqDCoMKgIGRlc2MtPmlzdCA9IGlzdDsK
Pj4gK8KgwqDCoCBkZXNjLT50eXBlID0gMTQ7IC8qID09IDBiMTExMCAqLwo+PiArwqDCoMKgIGRl
c2MtPmRwbCA9IDA7Cj4+ICvCoMKgwqAgZGVzYy0+cCA9IDE7Cj4+ICt9Cj4+ICsKPj4gK3ZvbGF0
aWxlIHN0cnVjdCBkZXNjX3RhYmxlX3B0cjY0IGlkdHB0cjsKPj4gKwo+PiArc3RhdGljIHZvaWQg
aWR0X2luaXQodm9pZCkKPj4gK3sKPj4gK8KgwqDCoCAvKgo+PiArwqDCoMKgwqAgKiBMb2FkIHRy
YXAgdmVjdG9ycy4gQWxsIHRyYXBzIHJ1biBvbiBJU1QyIChjcHVfdHJhcF9zdGFjayksCj4+IGV4
Y2VwdCBmb3IKPj4gK8KgwqDCoMKgICogdGhlIGV4Y2VwdGlvbnMuCj4+ICvCoMKgwqDCoCAqLwo+
PiArI2RlZmluZSBGSUxMX1RSQVBfR0FURShuYW1lLCBpc3QpIGV4dGVybiB2b2lkIGNwdV90cmFw
XyMjbmFtZSh2b2lkKTsgXAo+PiArwqDCoMKgIGlkdF9maWxsZ2F0ZShUUkFQXyMjbmFtZSwgQVNN
X1RSQVBfU1lNKG5hbWUpLCBpc3QpCj4+ICvCoMKgwqAgRklMTF9UUkFQX0dBVEUoZGl2aWRlX2Vy
cm9yLMKgwqDCoCAyKTsKPj4gK8KgwqDCoCBGSUxMX1RSQVBfR0FURShkZWJ1ZyzCoMKgwqDCoMKg
wqDCoMKgwqDCoCAyKTsKPj4gK8KgwqDCoCBGSUxMX1RSQVBfR0FURShubWkswqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgIDMpOyAvKiAjTk1JIHJ1bnMgb24gSVNUMwo+PiAoY3B1X25taV9zdGFjaykg
Ki8KPj4gK8KgwqDCoCBGSUxMX1RSQVBfR0FURShpbnQzLMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg
Mik7Cj4+ICvCoMKgwqAgRklMTF9UUkFQX0dBVEUob3ZlcmZsb3cswqDCoMKgwqDCoMKgwqAgMik7
Cj4+ICvCoMKgwqAgRklMTF9UUkFQX0dBVEUoYm91bmRzLMKgwqDCoMKgwqDCoMKgwqDCoCAyKTsK
Pj4gK8KgwqDCoCBGSUxMX1RSQVBfR0FURShpbnZhbGlkX29wLMKgwqDCoMKgwqAgMik7Cj4+ICvC
oMKgwqAgRklMTF9UUkFQX0dBVEUobm9fZGV2aWNlLMKgwqDCoMKgwqDCoCAyKTsKPj4gK8KgwqDC
oCBGSUxMX1RSQVBfR0FURShkb3VibGVfZmF1bHQswqDCoMKgIDMpOyAvKiAjREYgcnVucyBvbiBJ
U1QzCj4+IChjcHVfbm1pX3N0YWNrKSAqLwo+PiArCj4+ICvCoMKgwqAgRklMTF9UUkFQX0dBVEUo
aW52YWxpZF90c3MswqDCoMKgwqAgMik7Cj4+ICvCoMKgwqAgRklMTF9UUkFQX0dBVEUobm9fc2Vn
bWVudCzCoMKgwqDCoMKgIDIpOwo+PiArwqDCoMKgIEZJTExfVFJBUF9HQVRFKHN0YWNrX2Vycm9y
LMKgwqDCoMKgIDIpOwo+PiArwqDCoMKgIEZJTExfVFJBUF9HQVRFKGdwX2ZhdWx0LMKgwqDCoMKg
wqDCoMKgIDIpOwo+PiArwqDCoMKgIEZJTExfVFJBUF9HQVRFKHBhZ2VfZmF1bHQswqDCoMKgwqDC
oCAyKTsKPj4gKwo+PiArwqDCoMKgIEZJTExfVFJBUF9HQVRFKGNvcHJvY19lcnJvcizCoMKgwqAg
Mik7Cj4+ICvCoMKgwqAgRklMTF9UUkFQX0dBVEUoYWxpZ25tZW50X2NoZWNrLCAyKTsKPj4gK8Kg
wqDCoCBGSUxMX1RSQVBfR0FURShtYWNoaW5lX2NoZWNrLMKgwqAgMik7Cj4+ICvCoMKgwqAgRklM
TF9UUkFQX0dBVEUoc2ltZF9lcnJvcizCoMKgwqDCoMKgIDIpOwo+PiArwqDCoMKgIEZJTExfVFJB
UF9HQVRFKHZpcnRfZXJyb3IswqDCoMKgwqDCoCAyKTsKPj4gKwo+PiArwqDCoMKgIC8qCj4+ICvC
oMKgwqDCoCAqIExvYWQgaXJxIHZlY3RvcnMuIEFsbCBpcnFzIHJ1biBvbiBJU1QxIChjcHVfaW50
cl9zdGFjaykuCj4+ICvCoMKgwqDCoCAqLwo+PiArI2RlZmluZSBGSUxMX0lSUV9HQVRFKG51bSwg
aXN0KSBleHRlcm4gdm9pZCBjcHVfaXJxXyMjbnVtKHZvaWQpOyBcCj4+ICvCoMKgwqAgaWR0X2Zp
bGxnYXRlKDMyICsgbnVtLCBjcHVfaXJxXyMjbnVtLCBpc3QpCj4+ICvCoMKgwqAgRklMTF9JUlFf
R0FURSgwLCAxKTsKPj4gK8KgwqDCoCBGSUxMX0lSUV9HQVRFKDEsIDEpOwo+PiArwqDCoMKgIEZJ
TExfSVJRX0dBVEUoMiwgMSk7Cj4+ICvCoMKgwqAgRklMTF9JUlFfR0FURSgzLCAxKTsKPj4gK8Kg
wqDCoCBGSUxMX0lSUV9HQVRFKDQsIDEpOwo+PiArwqDCoMKgIEZJTExfSVJRX0dBVEUoNSwgMSk7
Cj4+ICvCoMKgwqAgRklMTF9JUlFfR0FURSg2LCAxKTsKPj4gK8KgwqDCoCBGSUxMX0lSUV9HQVRF
KDcsIDEpOwo+PiArwqDCoMKgIEZJTExfSVJRX0dBVEUoOCwgMSk7Cj4+ICvCoMKgwqAgRklMTF9J
UlFfR0FURSg5LCAxKTsKPj4gK8KgwqDCoCBGSUxMX0lSUV9HQVRFKDEwLCAxKTsKPj4gK8KgwqDC
oCBGSUxMX0lSUV9HQVRFKDExLCAxKTsKPj4gK8KgwqDCoCBGSUxMX0lSUV9HQVRFKDEyLCAxKTsK
Pj4gK8KgwqDCoCBGSUxMX0lSUV9HQVRFKDEzLCAxKTsKPj4gK8KgwqDCoCBGSUxMX0lSUV9HQVRF
KDE0LCAxKTsKPj4gK8KgwqDCoCBGSUxMX0lSUV9HQVRFKDE1LCAxKTsKPj4gKwo+PiArwqDCoMKg
IGlkdHB0ci5saW1pdCA9IHNpemVvZihjcHVfaWR0KSAtIDE7Cj4+ICvCoMKgwqAgaWR0cHRyLmJh
c2UgPSAoX191NjQpICZjcHVfaWR0Owo+PiArwqDCoMKgIF9fYXNtX18gX192b2xhdGlsZV9fKCJs
aWR0ICglMCkiIDo6ICJyIiAoJmlkdHB0cikpOwo+PiArfQo+PiArCj4gCj4gQ2FuIHlvdSBwcmVm
aXggdGhlc2UgZnVuY3Rpb25zLCB0b28/CgpBbHRob3VnaCB0aGlzIHdvdWxkIG1ha2Ugc2Vuc2Ug
bm93LCBJIGV4cGVjdCB0aGUgdHJhcCBoYW5kbGluZyBvbiBLVk0gdG8KYmUgdmVyeSBzaW1pbGFy
LCBpZiBub3QgdGhlIHNhbWUsIHdpdGggdGhlIHRyYXAgaGFuZGxpbmcgb24gWGVuL0hWTS4KV2hp
Y2ggZG9lc24ndCBtYWtlIGl0IHZlcnkgS1ZNIHNwZWNpZmljLiBUaGUgbmFtZXMgaGVyZSB3ZXJl
IGNob3NlbiBvbgpwdXJwb3NlIHRvIHJlZmxlY3QgdGhlIHNpbWlsYXJpdHkgd2l0aCB0aGUgaW1w
bGVtZW50YXRpb24gZm9yIFhlbi9IVk0uCgo+PiArdm9pZCB0cmFwc19pbml0KHZvaWQpCj4+ICt7
Cj4+ICvCoMKgwqAgZ2R0X2luaXQoKTsKPj4gK8KgwqDCoCB0c3NfaW5pdCgpOwo+PiArwqDCoMKg
IGlkdF9pbml0KCk7Cj4+ICt9Cj4+ICsKPj4gK3ZvaWQgdHJhcHNfZmluaSh2b2lkKQo+PiArewo+
PiArfQo+Pgo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCj4gTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdAo+IE1pbmlvcy1kZXZlbEBsaXN0cy54ZW5w
cm9qZWN0Lm9yZwo+IGh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5m
by9taW5pb3MtZGV2ZWwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fCk1pbmlvcy1kZXZlbCBtYWlsaW5nIGxpc3QKTWluaW9zLWRldmVsQGxpc3RzLnhlbnBy
b2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9t
aW5pb3MtZGV2ZWw=

From minios-devel-bounces@lists.xenproject.org Mon Apr 30 23:54:45 2018
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 30 Apr 2018 23:54:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.89)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1fDId1-0003bH-SL; Mon, 30 Apr 2018 23:54:43 +0000
Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6])
 by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from
 <srs0=535n=ht=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1fDId1-0003bC-6j
 for minios-devel@lists.xen.org; Mon, 30 Apr 2018 23:54:43 +0000
X-Inumbo-ID: a7ca6ae5-4cd1-11e8-9728-bc764e045a96
Received: from vesa.cs.pub.ro (unknown [141.85.227.187])
 by us1-rack-dfw2.inumbo.com (Halon) with ESMTP
 id a7ca6ae5-4cd1-11e8-9728-bc764e045a96;
 Tue, 01 May 2018 01:53:18 +0200 (CEST)
IronPort-PHdr: =?us-ascii?q?9a23=3AY62LwBMMJumBGLLQxTEl6mtUPXoX/o7sNwtQ0KIM?=
 =?us-ascii?q?zox0I//zrarrMEGX3/hxlliBBdydt6ofzbKO+4nbGkU4qa6bt34DdJEeHzQksu?=
 =?us-ascii?q?4x2zIaPcieFEfgJ+TrZSFpVO5LVVti4m3peRMNQJW2aFLduGC94iAPERvjKwV1?=
 =?us-ascii?q?Ov71GonPhMiryuy+4ZLebxlGiTanfb9+MAi9oBnMuMURnYZsMLs6xAHTontPde?=
 =?us-ascii?q?RWxGdoKkyWkh3h+Mq+/4Nt/jpJtf45+MFOTav1f6IjTbxFFzsmKHw65NfqtRbY?=
 =?us-ascii?q?UwSC4GYXX3gMnRpJBwjF6wz6Xov0vyDnuOdxxDWWMMvrRr0vRz+s87lkRwPpiC?=
 =?us-ascii?q?cfNj427mfXitBrjKlGpB6tvgFzz5LIbI2QMvd1Y6HTcs4ARWdZQ8hfSSJBDIO/?=
 =?us-ascii?q?YYUBAeUOMuRXoJXyqVYVsRu+HBOhCP/zxjJGhHL727Ax3eQ7EQHB2QwtB8wDsH?=
 =?us-ascii?q?PPrNXpNacSV/2+wq/VzTXbcvNdxDDw55TPchA6vfGMXLRwfdDVyUkyDwPFk06d?=
 =?us-ascii?q?ppD+Pz+PzuQNrnOU4/B6VeKokmMqrRx6rDaoxscpkIbJh4QVx0jL9CpnxoY1Pc?=
 =?us-ascii?q?e4SEl5YdG6DJRQqzuWN4xsQsMtRWxjpSU0yqUetJKmcyUG1Y4ryh3fZvCdbYSE?=
 =?us-ascii?q?/BDuWPyfLDtgmX5oe7Gyiwys/UWg0OHwS8u53VZQoiZYk9TBsG0G2QbJ5cidUP?=
 =?us-ascii?q?R9+1+s2TOI1w/O9O5JOVs0la/HK545xb4wi4YTvVzDHiDonEX2i7ebdlsh+uey?=
 =?us-ascii?q?6uTnZq/qqYOHN4NukgH+L78hltalAeQ/KgQOXm6b9vqg1LD74EH0T6hGguc1n6?=
 =?us-ascii?q?TZqpzWO9oXq6yjDwJbyooj7gywDzai0NQWh3kHK1dFdQqbgIjuIFHOPPH4DfGl?=
 =?us-ascii?q?j1SojTdr3+3GM6b9DZXWNHTDiKrhcq1n505Gzwo/1cpf6I5MCrEdPPLzXVf8tN?=
 =?us-ascii?q?nZDh8/Mgy0xP3nBMxg2YwAR2KAHKuZPbjWsV+J/eIvP/KMaJUauTnjLfgp/fnu?=
 =?us-ascii?q?jWU2mVUFZ6mmwYMXaGykHvRhO0iZenvsgtIGEWcMpAY+T/Hqh0OEUT9SeXmyRb?=
 =?us-ascii?q?kx5jclB426CYfMXJuijKaf0yemTdVqYTV9C1WLFz/LaoiCSfoWIHaJI8pmlHoH?=
 =?us-ascii?q?SLWnWYI7/RejvwvzwfxqM7yQsigZs5Pkz5156vPekTk29CdoFIKN3mfLSHt7zU?=
 =?us-ascii?q?0SQDpj96dkvU17gnOeybUw1/dfDsBS4bVNTx8nHZXHifRnAZboXVSSLZ+yVF+6?=
 =?us-ascii?q?T4D+UnkKRdUrzopLOh4lFg=3D=3D?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2C7AACPq+da/wPjVY1SChkBAQEBAQEBA?=
 =?us-ascii?q?QEBAQEHAQEBAQGEJAN3KINsiAJejWgpdRqTFBSBYQMjCwgBgUuCL0YCgxQ0GAE?=
 =?us-ascii?q?CAQEBAQEBAgFrHAyCNSQBgk8BAQEDAQEYAQgERxsJAhgCAhkNAgInAS8GAQwGA?=
 =?us-ascii?q?gEBF4R4C4wfm0GBaTOEWINugkeBCYYQglE/gQ8jgjM1gxEBBIEiEAQBJoMAglQ?=
 =?us-ascii?q?ChxIWIoRGC1U/g0aGXEEIgWSEAIJSgjorgyqBOxoigySCOSKEZyuHEoF/hDqDa?=
 =?us-ascii?q?QIcOIFSMxpzgkMJghcXEYhIgmaCW2x6AQGMIQElBIIcAQE?=
X-IPAS-Result: =?us-ascii?q?A2C7AACPq+da/wPjVY1SChkBAQEBAQEBAQEBAQEHAQEBAQG?=
 =?us-ascii?q?EJAN3KINsiAJejWgpdRqTFBSBYQMjCwgBgUuCL0YCgxQ0GAECAQEBAQEBAgFrH?=
 =?us-ascii?q?AyCNSQBgk8BAQEDAQEYAQgERxsJAhgCAhkNAgInAS8GAQwGAgEBF4R4C4wfm0G?=
 =?us-ascii?q?BaTOEWINugkeBCYYQglE/gQ8jgjM1gxEBBIEiEAQBJoMAglQChxIWIoRGC1U/g?=
 =?us-ascii?q?0aGXEEIgWSEAIJSgjorgyqBOxoigySCOSKEZyuHEoF/hDqDaQIcOIFSMxpzgkM?=
 =?us-ascii?q?JghcXEYhIgmaCW2x6AQGMIQElBIIcAQE?=
X-IronPort-AV: E=Sophos;i="5.49,348,1520892000"; 
   d="scan'208";a="2554545"
Received: from mail.cs.pub.ro (HELO vmail.cs.pub.ro) ([141.85.227.3])
 by vesa.cs.pub.ro with ESMTP; 01 May 2018 02:54:33 +0300
Received: from localhost (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTP id 19E981A60070;
 Tue,  1 May 2018 02:54:33 +0300 (EEST)
Received: from vmail.cs.pub.ro ([127.0.0.1])
 by localhost (vmail.cs.pub.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id xCX2Txwql9bB; Tue,  1 May 2018 02:54:33 +0300 (EEST)
Received: from vmail.cs.pub.ro (localhost [127.0.0.1])
 by vmail.cs.pub.ro (Postfix) with ESMTPS id ECD6B1A6007B;
 Tue,  1 May 2018 02:54:32 +0300 (EEST)
Received: from [192.168.1.101] (unknown [188.25.175.16])
 by vmail.cs.pub.ro (Postfix) with ESMTPSA id E3E391A60070;
 Tue,  1 May 2018 02:54:32 +0300 (EEST)
To: Simon Kuenzer <simon.kuenzer@neclab.eu>, minios-devel@lists.xen.org
References: <1522941678-21179-1-git-send-email-costin.lupu@cs.pub.ro>
 <1522941678-21179-4-git-send-email-costin.lupu@cs.pub.ro>
 <2575b959-3fa2-81d6-a553-15d976255b9b@neclab.eu>
From: Costin Lupu <costin.lupu@cs.pub.ro>
Message-ID: <e201662e-1c5e-4cde-d3d2-918ac2eef819@cs.pub.ro>
Date: Tue, 1 May 2018 02:54:30 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.7.0
MIME-Version: 1.0
In-Reply-To: <2575b959-3fa2-81d6-a553-15d976255b9b@neclab.eu>
Content-Language: en-US
Subject: Re: [Minios-devel] [UNIKRAFT PATCH 3/3] plat/kvm: Add KVM (x86_64)
 timer support
X-BeenThere: minios-devel@lists.xenproject.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: minios-devel-bounces@lists.xenproject.org
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>

T24gMDQvMzAvMjAxOCAwMzo0NCBQTSwgU2ltb24gS3VlbnplciB3cm90ZToKPiBTZWUgbXkgY29t
bWVudHMgaW5saW5lLgo+IAo+IE9uIDA1LjA0LjIwMTggMTc6MjEsIENvc3RpbiBMdXB1IHdyb3Rl
Ogo+PiBXZSBhcmUgdXNpbmcgVFNDIGNsb2NrIGFzIG1haW4gdGltZXIgb24gS1ZNLgo+Pgo+PiBT
aWduZWQtb2ZmLWJ5OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgo+PiAtLS0K
Pj4gwqAgcGxhdC9rdm0vTWFrZWZpbGUudWvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDC
oCAzICsKPj4gwqAgcGxhdC9rdm0vY2xvY2tfc3Vici5jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
IHwgMjI2ICsrKysrKysrKysrKysrKysrKysrKysrKwo+PiDCoCBwbGF0L2t2bS9pbmNsdWRlL2t2
bS9jbG9ja19zdWJyLmggfMKgIDgzICsrKysrKysrKwo+PiDCoCBwbGF0L2t2bS9pbmNsdWRlL2t2
bS90c2NjbG9jay5owqDCoCB8wqAgNDIgKysrKysKPj4gwqAgcGxhdC9rdm0vaXJxLmPCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqAgMTAgKysKPj4gwqAgcGxhdC9rdm0v
dGltZS5jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoCA2MiArKysrKysr
Cj4+IMKgIHBsYXQva3ZtL3RzY2Nsb2NrLmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwg
MzU2Cj4+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4+IMKgIDcgZmls
ZXMgY2hhbmdlZCwgNzgyIGluc2VydGlvbnMoKykKPj4gwqAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBs
YXQva3ZtL2Nsb2NrX3N1YnIuYwo+PiDCoCBjcmVhdGUgbW9kZSAxMDA2NDQgcGxhdC9rdm0vaW5j
bHVkZS9rdm0vY2xvY2tfc3Vici5oCj4+IMKgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2t2bS9p
bmNsdWRlL2t2bS90c2NjbG9jay5oCj4+IMKgIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0L2t2bS90
aW1lLmMKPj4gwqAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXQva3ZtL3RzY2Nsb2NrLmMKPj4KPj4g
ZGlmZiAtLWdpdCBhL3BsYXQva3ZtL01ha2VmaWxlLnVrIGIvcGxhdC9rdm0vTWFrZWZpbGUudWsK
Pj4gaW5kZXggNDYyNThmZi4uNzZjNDBmMSAxMDA2NDQKPj4gLS0tIGEvcGxhdC9rdm0vTWFrZWZp
bGUudWsKPj4gKysrIGIvcGxhdC9rdm0vTWFrZWZpbGUudWsKPj4gQEAgLTM0LDQgKzM0LDcgQEAg
TElCS1ZNUExBVF9TUkNTLSQoQVJDSF9YODZfNjQpICs9Cj4+ICQoTElCS1ZNUExBVF9CQVNFKS94
ODYvaW50Y3RybC5jCj4+IMKgIExJQktWTVBMQVRfU1JDUy15wqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqAgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3NodXRkb3duLmMKPj4gwqAgTElCS1ZNUExBVF9T
UkNTLXnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCArPSAkKExJQktWTVBMQVRfQkFTRSkvbWVt
b3J5LmMKPj4gwqAgTElCS1ZNUExBVF9TUkNTLXnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAr
PSAkKExJQktWTVBMQVRfQkFTRSkvaXJxLmMKPj4gK0xJQktWTVBMQVRfU1JDUy15wqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqAgKz0gJChMSUJLVk1QTEFUX0JBU0UpL3RpbWUuYwo+PiArTElCS1ZN
UExBVF9TUkNTLXnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCArPSAkKExJQktWTVBMQVRfQkFT
RSkvdHNjY2xvY2suYwo+PiArTElCS1ZNUExBVF9TUkNTLXnCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoCArPSAkKExJQktWTVBMQVRfQkFTRSkvY2xvY2tfc3Vici5jCj4+IMKgIExJQktWTVBMQVRf
U1JDUy15wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKz0gJChVS19QTEFUX0NPTU1PTl9CQVNF
KS9sY3B1LmN8Y29tbW9uCj4+IGRpZmYgLS1naXQgYS9wbGF0L2t2bS9jbG9ja19zdWJyLmMgYi9w
bGF0L2t2bS9jbG9ja19zdWJyLmMKPj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPj4gaW5kZXggMDAw
MDAwMC4uNmQ3Mzg4Ygo+PiAtLS0gL2Rldi9udWxsCj4+ICsrKyBiL3BsYXQva3ZtL2Nsb2NrX3N1
YnIuYwo+PiBAQCAtMCwwICsxLDIyNiBAQAo+PiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6
IElTQyAqLwo+IAo+IEkgdGhpbmsgdGhpcyBzaG91bGQgYmUKPiAvKiBTUERYLUxpY2Vuc2UtSWRl
bnRpZmllcjogSVNDIEFORCBCU0QtMi1DbGF1c2UtTmV0QlNEIEFORCBCU0QtMy1DbGF1c2UgKi8K
ClJpZ2h0LgoKPj4gKy8qCj4+ICsgKiBBdXRob3JzOiBNYXJ0aW4gTHVjaW5hCj4+ICsgKsKgwqDC
oMKgwqDCoMKgwqDCoCBSaWNhcmRvIEtvbGxlcgo+PiArICrCoMKgwqDCoMKgwqDCoMKgwqAgQ29z
dGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPj4gKyAqCj4+ICsgKiBDb3B5cmlnaHQg
KGMpIDIwMTUtMjAxNyBJQk0KPj4gKyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tlciwg
SW5jLgo+PiArICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBDb3Jw
b3JhdGlvbgo+PiArICoKPj4gKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFu
ZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUKPj4gKyAqIGZvciBhbnkgcHVycG9zZSB3aXRo
IG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZAo+PiArICogdGhhdCB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBl
YXIKPj4gKyAqIGluIGFsbCBjb3BpZXMuCj4+ICsgKgo+PiArICogVEhFIFNPRlRXQVJFIElTIFBS
T1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAo+PiArICogV0FSUkFO
VElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRAo+
PiArICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRQo+PiArICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJ
UkVDVCwgSU5ESVJFQ1QsIE9SCj4+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERB
TUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCj4+ICsgKiBPRiBVU0UsIERBVEEg
T1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCj4+ICsgKiBORUdM
SUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4KPj4g
KyAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdB
UkUuCj4+ICsgKi8KPj4gKy8qIFRha2VuIGZyb20gc29sbzUgY2xvY2tfc3Vici5jICovCj4+ICsK
Pj4gKy8qwqDCoMKgICROZXRCU0Q6IGNsb2NrX3N1YnIuYyx2IDEuMjYgMjAxNC8xMi8yMiAxODow
OToyMCBjaHJpc3RvcyBFeHAKPj4gJMKgwqDCoCAqLwo+PiArCj4+ICsvKi0KPj4gKyAqIENvcHly
aWdodCAoYykgMTk5NiBUaGUgTmV0QlNEIEZvdW5kYXRpb24sIEluYy4KPj4gKyAqIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCj4+ICsgKgo+PiArICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0
d2FyZSBjb250cmlidXRlZCB0byBUaGUgTmV0QlNECj4+IEZvdW5kYXRpb24KPj4gKyAqIGJ5IEdv
cmRvbiBXLiBSb3NzCj4+ICsgKgo+PiArICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cj4+ICsgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKPj4g
KyAqIGFyZSBtZXQ6Cj4+ICsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAo+PiArICrCoMKgwqAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgo+PiArICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKPj4gKyAqwqDCoMKgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgo+PiB0aGUKPj4gKyAqwqDCoMKgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQo+PiBkaXN0cmli
dXRpb24uCj4+ICsgKgo+PiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgTkVU
QlNEIEZPVU5EQVRJT04sIElOQy4gQU5ECj4+IENPTlRSSUJVVE9SUwo+PiArICogYGBBUyBJUycn
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUCj4+
IE5PVCBMSU1JVEVECj4+ICsgKiBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEKPj4gUEFSVElDVUxBUgo+PiArICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC7CoCBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgRk9VTkRBVElPTiBPUgo+PiBD
T05UUklCVVRPUlMKPj4gKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsCj4+IEVYRU1QTEFSWSwgT1IKPj4gKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCj4+
ICsgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IKPj4gQlVTSU5FU1MKPj4gKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLAo+PiBXSEVUSEVSIElOCj4+ICsgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IKPj4gT1RIRVJXSVNFKQo+PiArICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYKPj4gQURWSVNFRCBPRiBUSEUKPj4gKyAqIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgo+PiArICovCj4+ICsKPj4gKy8qCj4+ICsgKiBDb3B5cmln
aHQgKGMpIDE5ODggVW5pdmVyc2l0eSBvZiBVdGFoLgo+PiArICogQ29weXJpZ2h0IChjKSAxOTgy
LCAxOTkwLCAxOTkzCj4+ICsgKsKgwqDCoCBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBv
ZiBDYWxpZm9ybmlhLsKgIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4+ICsgKgo+PiArICogVGhpcyBj
b2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQo+
PiArICogdGhlIFN5c3RlbXMgUHJvZ3JhbW1pbmcgR3JvdXAgb2YgdGhlIFVuaXZlcnNpdHkgb2Yg
VXRhaCBDb21wdXRlcgo+PiArICogU2NpZW5jZSBEZXBhcnRtZW50Lgo+PiArICoKPj4gKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAo+PiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCj4+ICsgKiBhcmUgbWV0Ogo+PiArICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
Pj4gKyAqwqDCoMKgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KPj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4+ICsgKsKgwqDCoCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4K
Pj4gdGhlCj4+ICsgKsKgwqDCoCBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUKPj4gZGlzdHJpYnV0aW9uLgo+PiArICogMy4gTmVpdGhlciB0aGUg
bmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cwo+PiBjb250cmlidXRv
cnMKPj4gKyAqwqDCoMKgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20gdGhpcwo+PiBzb2Z0d2FyZQo+PiArICrCoMKgwqAgd2l0aG91dCBzcGVj
aWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCj4+ICsgKgo+PiArICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMKPj4gSVMn
JyBBTkQKPj4gKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQo+PiArICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCj4+IFBVUlBPU0UKPj4g
KyAqIEFSRSBESVNDTEFJTUVELsKgIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENP
TlRSSUJVVE9SUyBCRQo+PiBMSUFCTEUKPj4gKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgo+PiBDT05TRVFVRU5USUFMCj4+ICsg
KiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURQo+PiBHT09EUwo+PiArICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCj4+ICsgKiBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KPj4gQ09OVFJB
Q1QsIFNUUklDVAo+PiArICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4KPj4gQU5ZIFdBWQo+PiArICogT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQo+PiBQT1NTSUJJTElU
WSBPRgo+PiArICogU1VDSCBEQU1BR0UuCj4+ICsgKgo+PiArICogZnJvbTogVXRhaCAkSGRyOiBj
bG9jay5jIDEuMTggOTEvMDEvMjEkCj4+ICsgKgo+PiArICrCoMKgwqAgQCgjKWNsb2NrLmPCoMKg
wqAgOC4yIChCZXJrZWxleSkgMS8xMi85NAo+PiArICovCj4+ICsKPj4gKyNpbmNsdWRlIDxrdm0v
Y2xvY2tfc3Vici5oPgo+PiArCj4+ICsvKiBTb21lIGhhbmR5IGNvbnN0YW50cy4gKi8KPj4gKyNk
ZWZpbmUgU0VDU19QRVJfTUlOVVRFwqDCoMKgwqDCoMKgwqDCoCA2MAo+PiArI2RlZmluZSBTRUNT
X1BFUl9IT1VSwqDCoMKgwqDCoMKgwqDCoMKgwqAgMzYwMAo+PiArI2RlZmluZSBTRUNTX1BFUl9E
QVnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDg2NDAwCj4+ICsjZGVmaW5lIERBWVNfUEVSX0NPTU1P
Tl9ZRUFSwqDCoMKgIDM2NQo+PiArI2RlZmluZSBEQVlTX1BFUl9MRUFQX1lFQVLCoMKgwqDCoMKg
IDM2Ngo+PiArI2RlZmluZSBTRUNTX1BFUl9DT01NT05fWUVBUsKgwqDCoCAoU0VDU19QRVJfREFZ
ICogREFZU19QRVJfQ09NTU9OX1lFQVIpCj4+ICsjZGVmaW5lIFNFQ1NfUEVSX0xFQVBfWUVBUsKg
wqDCoMKgwqAgKFNFQ1NfUEVSX0RBWSAqIERBWVNfUEVSX0xFQVBfWUVBUikKPj4gKwo+PiArLyog
VHJhZGl0aW9uYWwgUE9TSVggYmFzZSB5ZWFyICovCj4+ICsjZGVmaW5lwqDCoMKgIFBPU0lYX0JB
U0VfWUVBUsKgwqDCoCAxOTcwCj4+ICsKPj4gKy8qIFNvbWUgaGFuZHkgZnVuY3Rpb25zICovCj4+
ICtzdGF0aWMgaW50IGRheXNfaW5fbW9udGgoaW50IG0pCj4+ICt7Cj4+ICvCoMKgwqAgc3dpdGNo
IChtKSB7Cj4+ICvCoMKgwqAgY2FzZSAyOgo+PiArwqDCoMKgwqDCoMKgwqAgcmV0dXJuIDI4Owo+
PiArwqDCoMKgIGNhc2UgNDogY2FzZSA2OiBjYXNlIDk6IGNhc2UgMTE6Cj4+ICvCoMKgwqDCoMKg
wqDCoCByZXR1cm4gMzA7Cj4+ICvCoMKgwqAgY2FzZSAxOiBjYXNlIDM6IGNhc2UgNTogY2FzZSA3
OiBjYXNlIDg6IGNhc2UgMTA6IGNhc2UgMTI6Cj4+ICvCoMKgwqDCoMKgwqDCoCByZXR1cm4gMzE7
Cj4+ICvCoMKgwqAgZGVmYXVsdDoKPj4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiAtMTsKPj4gK8Kg
wqDCoCB9Cj4+ICt9Cj4+ICsKPj4gKy8qCj4+ICsgKiBUaGlzIGlubGluZSBhdm9pZHMgc29tZSB1
bm5lY2Vzc2FyeSBtb2R1bG8gb3BlcmF0aW9ucwo+PiArICogYXMgY29tcGFyZWQgd2l0aCB0aGUg
dXN1YWwgbWFjcm86Cj4+ICsgKsKgwqAgKCAoKHllYXIgJSA0KSA9PSAwICYmCj4+ICsgKsKgwqDC
oMKgwqAgKHllYXIgJSAxMDApICE9IDApIHx8Cj4+ICsgKsKgwqDCoMKgICgoeWVhciAlIDQwMCkg
PT0gMCkgKQo+PiArICogSXQgaXMgb3RoZXJ3aXNlIGVxdWl2YWxlbnQuCj4+ICsgKi8KPj4gK3N0
YXRpYyBpbnQgaXNfbGVhcF95ZWFyKF9fdTY0IHllYXIpCj4+ICt7Cj4+ICvCoMKgwqAgaWYgKCh5
ZWFyICYgMykgIT0gMCkKPj4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiAwOwo+PiArCj4+ICvCoMKg
wqAgaWYgKCh5ZWFyICUgMTAwKSAhPSAwKQo+PiArwqDCoMKgwqDCoMKgwqAgcmV0dXJuIDE7Cj4+
ICsKPj4gK8KgwqDCoCByZXR1cm4gKHllYXIgJSA0MDApID09IDA7Cj4+ICt9Cj4+ICsKPj4gK3N0
YXRpYyBpbnQgZGF5c19wZXJfeWVhcihfX3U2NCB5ZWFyKQo+PiArewo+PiArwqDCoMKgIHJldHVy
biBpc19sZWFwX3llYXIoeWVhcikgPyBEQVlTX1BFUl9MRUFQX1lFQVIgOgo+PiBEQVlTX1BFUl9D
T01NT05fWUVBUjsKPj4gK30KPj4gKwo+PiArLyoKPj4gKyAqIEdlbmVyaWMgcm91dGluZXMgdG8g
Y29udmVydCBiZXR3ZWVuIGEgUE9TSVggZGF0ZQo+PiArICogKHNlY29uZHMgc2luY2UgMS8xLzE5
NzApIGFuZCB5ci9tby9kYXkvaHIvbWluL3NlYwo+PiArICogRGVyaXZlZCBmcm9tIGFyY2gvaHAz
MDAvaHAzMDAvY2xvY2suYwo+PiArICovCj4+ICsKPj4gKyNkZWZpbmUgRkVCUlVBUlnCoCAyCj4+
ICsKPj4gKy8qIGZvciBlYXNpZXIgYWxpZ25tZW50Ogo+PiArICogdGltZSBmcm9tIHRoZSBlcG9j
aCB0byAyMDAwICh0aGVyZSB3ZXJlIDcgbGVhcCB5ZWFycyk6Cj4+ICsgKi8KPj4gKyNkZWZpbmXC
oMKgwqAgREFZU1RPMjAwMMKgwqDCoMKgwqDCoMKgwqAgKDM2NSAqIDMwICsgNykKPj4gKwo+PiAr
LyogNCB5ZWFyIGludGVydmFscyBpbmNsdWRlIDEgbGVhcCB5ZWFyICovCj4+ICsjZGVmaW5lwqDC
oMKgIERBWVM0WUVBUlPCoMKgwqDCoMKgwqDCoMKgICgzNjUgKiA0ICsgMSkKPj4gKwo+PiArLyog
MTAwIHllYXIgaW50ZXJ2YWxzIGluY2x1ZGUgMjQgbGVhcCB5ZWFycyAqLwo+PiArI2RlZmluZcKg
wqDCoCBEQVlTMTAwWUVBUlPCoMKgwqDCoMKgwqAgKDM2NSAqIDEwMCArIDI0KQo+PiArCj4+ICsv
KiA0MDAgeWVhciBpbnRlcnZhbHMgaW5jbHVkZSA5NyBsZWFwIHllYXJzICovCj4+ICsjZGVmaW5l
wqDCoMKgIERBWVM0MDBZRUFSU8KgwqDCoMKgwqDCoCAoMzY1ICogNDAwICsgOTcpCj4+ICsKPiAK
PiBJbiBnZW5lcmFsLCB3ZSBzaG91bGQgcmV2aXNpdCB0aGUgbmFtaW5nIG9mIGZ1bmN0aW9ucyB0
aGF0IGFyZQo+IG5vbi1zdGF0aWMuIEluIG9yZGVyIHRvIGF2b2lkIG5hbWluZyBjb25mbGljdHMg
d2l0aCBhcHBsaWNhdGlvbiBjb2RlCj4gbGF0ZXIsIEkgd291bGQgcHJlZmVyIGFkZGluZyB0aGUg
cHJlZml4IF9saWJrdm1wbGF0XyBpbiBvcmRlciB0byBtYXJrCj4gdGhvc2UgZnVuY3Rpb25zIGFz
IGxpYnJhcnktaW50ZXJuYWwuIFNpbmNlLCB0aGVzZSBhcmUgbmV3IGZpbGVzLCBjYW4geW91Cj4g
Y2FsbCBpdCBfbGlia3ZtcGxhdF9jbG9ja195bWRobXNfdG9fc2VjcygpPyBZb3UgbWF5IGFsc28g
YWRvcHQgdGhpcwo+IHNjaGVtZSB0byB0aGUgb3RoZXIgZnVuY3Rpb25zIHRoYXQgYXJlIG5vbi1z
dGF0aWMgYW5kIG5vdCBwYXJ0IG9mIHRoZQo+IHVrcGxhdCBBUEkuCj4gCj4gSSBrbm93IHRoYXQg
bXVjaCBtb3JlIGNsZWFuaW5nLXVwIHdvcmsgb2YgdGhpcyBzb3J0IGhhcyB0byBiZSBkb25lIGJ1
dAo+IHdlIHNob3VsZCBzdGFydCBzb21ld2hlcmUuIEkgdGhpbmsgZG9pbmcgdGhpcyB3aXRoIG5l
dyBmaWxlcyBhbmQKPiBmdW5jdGlvbnMgaXMgZ29vZCBzdGFydC4KPiAKPiBBcyB3ZSBkaXNjdXNz
ZWQgb2ZmLWxpbmUsIEkgYWdyZWUgdGhhdCB3ZSBzaG91bGQgaW50cm9kdWNlIGEgZGVzaWduCj4g
cHJpbmNpcGxlIGRvY3VtZW50IHRoYXQgZXhwbGFpbnMgY29uc2lkZXJhdGlvbnMgZm9yIFVuaWty
YWZ0IGFuZCBsaWJyYXJ5Cj4gQVBJcy4KCkFjdHVhbGx5IHRoaXMgaXMgYW4gdXRpbCBmdW5jdGlv
biwgbm90IGEgS1ZNIHNwZWNpZmljIG9uZS4gSSdkIHByZWZlcgptb3ZpbmcgaXQgdG8gYSBjb21t
b24gYXJlYSwgd2hpY2ggd2UgZG9uJ3QgaGF2ZSBub3cgYW5kIHdoaWNoIHNob3VsZApjb250YWlu
IHV0aWwgZnVuY3Rpb25zLiBQbGVhc2UgYWR2aXNlIHdoZXJlIGl0IHNob3VsZCBnbyBpbiB0aGF0
IGNhc2UuCgpOb3cgcmVnYXJkaW5nIHRoZSBuYW1lIGNvbmZsaWN0cyB3aXRoIGFwcGxpY2F0aW9u
IGNvZGUsIGl0J3Mga2luZCBvZgpleHBlY3RlZCB0byBtZWV0IG5hbWUgY29uZmxpY3RzIGF0IG9u
ZSBwb2ludCBzb29uZXIgb3IgbGF0ZXIuIEFuZCB0aGlzCndvdWxkIHJlcXVpcmUgYSBtb3JlIGVs
ZWdhbnQgYW5kIGdlbmVyaWMgYXBwcm9hY2gsIHN1Y2ggYXMgbmFtZQptYW5nbGluZywgcHJlZml4
aW5nIG9yIHdoYXRldmVyIHRvIGFsdGVyIHRoZSBVbmlrcmFmdCBmdW5jdGlvbiBuYW1lLgpXaGF0
IGlmIEkgd2FudCBpbiBteSBhcHBsaWNhdGlvbiB0byBoYXZlIGEgZnVuY3Rpb24gbmFtZWQKX2xp
Ymt2bXBsYXRfY2xvY2tfeW1kaG1zX3RvX3NlY3M/IElmIHlvdSB3YW50IHRvIGp1c3Qga2VlcCBw
cmVmaXhlcyBmb3IKYWxsIFVuaWtyYWZ0IGZ1bmN0aW9ucyBtYXliZSB3ZSBzaG91bGQgZ2V0IHJp
ZCBvZiB0aGUgODAgY2hhcmFjdGVycyBsaW5lCmxlbmd0aCBsaW1pdC4KPj4gK19fdTY0IGNsb2Nr
X3ltZGhtc190b19zZWNzKHN0cnVjdCBibWtfY2xvY2tfeW1kaG1zICpkdCkKPj4gK3sKPj4gK8Kg
wqDCoCBfX3U2NCBzZWNzLCBpLCB5ZWFyLCBkYXlzOwo+PiArCj4+ICvCoMKgwqAgeWVhciA9IGR0
LT5kdF95ZWFyOwo+PiArCj4+ICvCoMKgwqAgLyoKPj4gK8KgwqDCoMKgICogQ29tcHV0ZSBkYXlz
IHNpbmNlIHN0YXJ0IG9mIHRpbWUKPj4gK8KgwqDCoMKgICogRmlyc3QgZnJvbSB5ZWFycywgdGhl
biBmcm9tIG1vbnRocy4KPj4gK8KgwqDCoMKgICovCj4+ICvCoMKgwqAgaWYgKHllYXIgPCBQT1NJ
WF9CQVNFX1lFQVIpCj4+ICvCoMKgwqDCoMKgwqDCoCByZXR1cm4gMDsKPj4gKwo+PiArwqDCoMKg
IGRheXMgPSAwOwo+PiArwqDCoMKgIGlmIChpc19sZWFwX3llYXIoeWVhcikgJiYgZHQtPmR0X21v
biA+IEZFQlJVQVJZKQo+PiArwqDCoMKgwqDCoMKgwqAgZGF5cysrOwo+PiArCj4+ICvCoMKgwqAg
aWYgKHllYXIgPCAyMDAwKSB7Cj4+ICvCoMKgwqDCoMKgwqDCoCAvKiBzaW1wbGUgd2F5IGZvciBl
YXJseSB5ZWFycyAqLwo+PiArwqDCoMKgwqDCoMKgwqAgZm9yIChpID0gUE9TSVhfQkFTRV9ZRUFS
OyBpIDwgeWVhcjsgaSsrKQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBkYXlzICs9IGRheXNf
cGVyX3llYXIoaSk7Cj4+ICsKPj4gK8KgwqDCoCB9IGVsc2Ugewo+PiArwqDCoMKgwqDCoMKgwqAg
LyogeWVhcnMgYXJlIHByb3Blcmx5IGFsaWduZWQgKi8KPj4gK8KgwqDCoMKgwqDCoMKgIGRheXMg
Kz0gREFZU1RPMjAwMDsKPj4gK8KgwqDCoMKgwqDCoMKgIHllYXIgLT0gMjAwMDsKPj4gKwo+PiAr
wqDCoMKgwqDCoMKgwqAgaSA9IHllYXIgLyA0MDA7Cj4+ICvCoMKgwqDCoMKgwqDCoCBkYXlzICs9
IGkgKiBEQVlTNDAwWUVBUlM7Cj4+ICvCoMKgwqDCoMKgwqDCoCB5ZWFyIC09IGkgKiA0MDA7Cj4+
ICsKPj4gK8KgwqDCoMKgwqDCoMKgIGkgPSB5ZWFyIC8gMTAwOwo+PiArwqDCoMKgwqDCoMKgwqAg
ZGF5cyArPSBpICogREFZUzEwMFlFQVJTOwo+PiArwqDCoMKgwqDCoMKgwqAgeWVhciAtPSBpICog
MTAwOwo+PiArCj4+ICvCoMKgwqDCoMKgwqDCoCBpID0geWVhciAvIDQ7Cj4+ICvCoMKgwqDCoMKg
wqDCoCBkYXlzICs9IGkgKiBEQVlTNFlFQVJTOwo+PiArwqDCoMKgwqDCoMKgwqAgeWVhciAtPSBp
ICogNDsKPj4gKwo+PiArwqDCoMKgwqDCoMKgwqAgZm9yIChpID0gZHQtPmR0X3llYXIgLSB5ZWFy
OyBpIDwgZHQtPmR0X3llYXI7IGkrKykKPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZGF5cyAr
PSBkYXlzX3Blcl95ZWFyKGkpOwo+PiArwqDCoMKgIH0KPj4gKwo+PiArwqDCoMKgIC8qIE1vbnRo
cyAqLwo+PiArwqDCoMKgIGZvciAoaSA9IDE7IGkgPCBkdC0+ZHRfbW9uOyBpKyspCj4+ICvCoMKg
wqDCoMKgwqDCoCBkYXlzICs9IGRheXNfaW5fbW9udGgoaSk7Cj4+ICvCoMKgwqAgZGF5cyArPSAo
ZHQtPmR0X2RheSAtIDEpOwo+PiArCj4+ICvCoMKgwqAgLyogQWRkIGhvdXJzLCBtaW51dGVzLCBz
ZWNvbmRzLiAqLwo+PiArwqDCoMKgIHNlY3MgPSAoKChfX3U2NCkgZGF5cwo+PiArwqDCoMKgwqDC
oMKgwqAgKiAyNCArIGR0LT5kdF9ob3VyKQo+PiArwqDCoMKgwqDCoMKgwqAgKiA2MCArIGR0LT5k
dF9taW4pCj4+ICvCoMKgwqDCoMKgwqDCoCAqIDYwICsgZHQtPmR0X3NlYzsKPj4gKwo+PiArwqDC
oMKgIHJldHVybiBzZWNzOwo+PiArfQo+PiBkaWZmIC0tZ2l0IGEvcGxhdC9rdm0vaW5jbHVkZS9r
dm0vY2xvY2tfc3Vici5oCj4+IGIvcGxhdC9rdm0vaW5jbHVkZS9rdm0vY2xvY2tfc3Vici5oCj4+
IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4+IGluZGV4IDAwMDAwMDAuLjY2ZjgyOWIKPj4gLS0tIC9k
ZXYvbnVsbAo+PiArKysgYi9wbGF0L2t2bS9pbmNsdWRlL2t2bS9jbG9ja19zdWJyLmgKPj4gQEAg
LTAsMCArMSw4MyBAQAo+IAo+IC8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0MgQU5EIEJT
RC0yLUNsYXVzZS1OZXRCU0QgKi8KClJpZ2h0LgoKPj4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlm
aWVyOiBJU0MgKi8KPj4gKy8qCj4+ICsgKiBBdXRob3JzOiBNYXJ0aW4gTHVjaW5hCj4+ICsgKsKg
wqDCoMKgwqDCoMKgwqDCoCBSaWNhcmRvIEtvbGxlcgo+PiArICrCoMKgwqDCoMKgwqDCoMKgwqAg
Q29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNzLnB1Yi5ybz4KPj4gKyAqCj4+ICsgKiBDb3B5cmln
aHQgKGMpIDIwMTUtMjAxNyBJQk0KPj4gKyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE3IERvY2tl
ciwgSW5jLgo+PiArICogQ29weXJpZ2h0IChjKSAyMDE4LCBORUMgRXVyb3BlIEx0ZC4sIE5FQyBD
b3Jwb3JhdGlvbgo+PiArICoKPj4gKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnks
IGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUKPj4gKyAqIGZvciBhbnkgcHVycG9zZSB3
aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZAo+PiArICogdGhh
dCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBh
cHBlYXIKPj4gKyAqIGluIGFsbCBjb3BpZXMuCj4+ICsgKgo+PiArICogVEhFIFNPRlRXQVJFIElT
IFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTAo+PiArICogV0FS
UkFOVElFUyBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElF
RAo+PiArICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRQo+PiArICogQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUws
IERJUkVDVCwgSU5ESVJFQ1QsIE9SCj4+ICsgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5Z
IERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTCj4+ICsgKiBPRiBVU0UsIERB
VEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsCj4+ICsgKiBO
RUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4K
Pj4gKyAqIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09G
VFdBUkUuCj4+ICsgKi8KPj4gKy8qIFRha2VuIGZyb20gc29sbzUgY2xvY2tfc3Vici5oICovCj4+
ICsKPj4gKy8qLQo+PiArICogQ29weXJpZ2h0IChjKSAxOTk2IFRoZSBOZXRCU0QgRm91bmRhdGlv
biwgSW5jLgo+PiArICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KPj4gKyAqCj4+ICsgKiBUaGlzIGNv
ZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIFRoZSBOZXRCU0QKPj4g
Rm91bmRhdGlvbgo+PiArICogYnkgR29yZG9uIFcuIFJvc3MKPj4gKyAqCj4+ICsgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKPj4gKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwo+PiArICogYXJlIG1ldDoKPj4gKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cj4+ICsg
KsKgwqDCoCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCj4+ICsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAo+PiArICrCoMKgwqAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCj4+IHRo
ZQo+PiArICrCoMKgwqAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlCj4+IGRpc3RyaWJ1dGlvbi4KPj4gKyAqCj4+ICsgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBORVRCU0QgRk9VTkRBVElPTiwgSU5DLiBBTkQKPj4gQ09OVFJJ
QlVUT1JTCj4+ICsgKiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQKPj4gTk9UIExJTUlURUQKPj4gKyAqIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQQo+PiBQQVJU
SUNVTEFSCj4+ICsgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELsKgIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBGT1VOREFUSU9OIE9SCj4+IENPTlRSSUJVVE9SUwo+PiArICogQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKPj4gRVhFTVBMQVJZLCBP
Ugo+PiArICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKPj4gKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUgo+PiBCVVNJTkVTUwo+PiArICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
Cj4+IFdIRVRIRVIgSU4KPj4gKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgo+PiBPVEhFUldJU0UpCj4+ICsgKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRgo+PiBBRFZJ
U0VEIE9GIFRIRQo+PiArICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4+ICsgKi8KPj4g
Kwo+PiArI2lmbmRlZiBfQk1LX0NMT0NLX1NVQlJfSF8KPj4gKyNkZWZpbmUgX0JNS19DTE9DS19T
VUJSX0hfCj4+ICsKPj4gKyNpbmNsdWRlIDx1ay9hcmNoL3R5cGVzLmg+Cj4+ICsKPj4gKy8qCj4+
ICsgKiAiUE9TSVggdGltZSIgdG8vZnJvbSAiWVkvTU0vREQvaGgvbW0vc3MiCj4+ICsgKi8KPj4g
K3N0cnVjdCBibWtfY2xvY2tfeW1kaG1zIHsKPj4gK8KgwqDCoCBfX3U2NCBkdF95ZWFyOwo+PiAr
wqDCoMKgIF9fdTggZHRfbW9uOwo+PiArwqDCoMKgIF9fdTggZHRfZGF5Owo+PiArwqDCoMKgIF9f
dTggZHRfaG91cjsKPj4gK8KgwqDCoCBfX3U4IGR0X21pbjsKPj4gK8KgwqDCoCBfX3U4IGR0X3Nl
YzsKPj4gK307Cj4+ICsKPj4gK19fdTY0IGNsb2NrX3ltZGhtc190b19zZWNzKHN0cnVjdCBibWtf
Y2xvY2tfeW1kaG1zICpkdCk7Cj4+ICsKPj4gKy8qCj4+ICsgKiBCQ0QgdG8gYmluYXJ5Lgo+PiAr
ICovCj4+ICtzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBiY2R0b2Jpbih1bnNpZ25lZCBpbnQg
YmNkKQo+PiArewo+PiArwqDCoMKgIHJldHVybiAoKGJjZCA+PiA0KSAmIDB4MGYpICogMTAgKyAo
YmNkICYgMHgwZik7Cj4+ICt9Cj4+ICsKPj4gKyNlbmRpZiAvKiBfQk1LX0NMT0NLX1NVQlJfSF8g
Ki8KPj4gZGlmZiAtLWdpdCBhL3BsYXQva3ZtL2luY2x1ZGUva3ZtL3RzY2Nsb2NrLmgKPj4gYi9w
bGF0L2t2bS9pbmNsdWRlL2t2bS90c2NjbG9jay5oCj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4+
IGluZGV4IDAwMDAwMDAuLjI3ZDBlMDIKPj4gLS0tIC9kZXYvbnVsbAo+PiArKysgYi9wbGF0L2t2
bS9pbmNsdWRlL2t2bS90c2NjbG9jay5oCj4+IEBAIC0wLDAgKzEsNDIgQEAKPj4gKy8qIFNQRFgt
TGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UgKi8KPj4gKy8qCj4+ICsgKiBBdXRob3Jz
OiBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgo+PiArICoKPj4gKyAqIENvcHly
aWdodCAoYykgMjAxOCwgTkVDIEV1cm9wZSBMdGQuLCBORUMgQ29ycG9yYXRpb24uIEFsbCByaWdo
dHMKPj4gcmVzZXJ2ZWQuCj4+ICsgKgo+PiArICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cj4+ICsgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
Pj4gKyAqIGFyZSBtZXQ6Cj4+ICsgKgo+PiArICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPj4gKyAqwqDCoMKgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
Pj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0Cj4+ICsgKsKgwqDCoCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KPj4gdGhlCj4+ICsgKsKgwqDC
oCBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUK
Pj4gZGlzdHJpYnV0aW9uLgo+PiArICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJp
Z2h0IGhvbGRlciBub3IgdGhlIG5hbWVzIG9mIGl0cwo+PiArICrCoMKgwqAgY29udHJpYnV0b3Jz
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCj4+IGZy
b20KPj4gKyAqwqDCoMKgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0
dGVuIHBlcm1pc3Npb24uCj4+ICsgKgo+PiArICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5ECj4+IENPTlRSSUJVVE9SUyAiQVMgSVMiCj4+ICsg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRAo+PiBUTywgVEhFCj4+ICsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKPj4gUFVSUE9TRQo+PiArICog
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9S
Cj4+IENPTlRSSUJVVE9SUyBCRQo+PiArICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgo+PiArICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
Pj4gKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUgo+PiBCVVNJTkVTUwo+PiArICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksCj4+IFdIRVRIRVIgSU4KPj4gKyAq
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUgo+PiBPVEhFUldJU0UpCj4+ICsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRgo+PiBBRFZJU0VEIE9GIFRIRQo+PiArICogUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCj4+ICsgKgo+PiArICogVEhJUyBIRUFERVIgTUFZIE5P
VCBCRSBFWFRSQUNURUQgT1IgTU9ESUZJRUQgSU4gQU5ZIFdBWS4KPj4gKyAqLwo+PiArCj4+ICsj
aWZuZGVmIF9fS1ZNX1RTQ0NMT0NLX0hfXwo+PiArI2RlZmluZSBfX0tWTV9UU0NDTE9DS19IX18K
Pj4gKwo+IAo+IFNhbWUgcHJlZml4aW5nIGhlcmU/ICJfbGlia3ZtcGxhdF8iIGZvciBrdm1wbGF0
IGludGVybmFsLCBvcgo+ICJsaWJrdm1wbGF0XyIgZm9yIEtWTSBwbGF0IG9ubHkgcHJvdmlkZWQg
ZnVuY3Rpb25hbGl0eS4KCkl0J3Mgbm90IGNsZWFyIGZvciBtZSB5ZXQgaWYgdGhpcyBpcyBvbmx5
IEtWTSBzcGVjaWZpYy4gQUZBSUsgaXQgY2FuIGJlCnVzZWQgb24gYmFyZS1tZXRhbCBhcyB3ZWxs
LiBXaGVuIHRoYXQgd2lsbCBiZSBhdmFpbGFibGUsIEkgZXhwZWN0IHRvIGJlCm1vdmVkIGluIGEg
Y29tbW9uIGFyZWEuCgo+PiAraW50IHRzY2Nsb2NrX2luaXQodm9pZCk7Cj4+ICtfX3U2NCB0c2Nj
bG9ja19tb25vdG9uaWModm9pZCk7Cj4+ICtfX3U2NCB0c2NjbG9ja19lcG9jaG9mZnNldCh2b2lk
KTsKPj4gKwo+PiArI2VuZGlmIC8qIF9fS1ZNX1RTQ0NMT0NLX0hfXyAqLwo+PiBkaWZmIC0tZ2l0
IGEvcGxhdC9rdm0vaXJxLmMgYi9wbGF0L2t2bS9pcnEuYwo+PiBpbmRleCA1NWY4ZTY3Li5hM2Iy
MTIxIDEwMDY0NAo+PiAtLS0gYS9wbGF0L2t2bS9pcnEuYwo+PiArKysgYi9wbGF0L2t2bS9pcnEu
Ywo+PiBAQCAtNjgsMTIgKzY4LDIyIEBAIHZvaWQgaXJxX3JlZ2lzdGVyKHVuc2lnbmVkIGxvbmcg
aXJxLAo+PiBpcnFfaGFuZGxlcl9mdW5jX3QgZnVuYywgdm9pZCAqYXJnKQo+PiDCoMKgwqDCoMKg
IGludGN0cmxfY2xlYXJfaXJxKGlycSk7Cj4+IMKgIH0KPj4gwqAgKy8qCj4+ICsgKiBUT0RPIFRo
aXMgaXMgYSB0ZW1wb3Jhcnkgc29sdXRpb24gdXNlZCB0byBpZGVudGlmeSBub24gVFNDIGNsb2Nr
Cj4+ICsgKiBpbnRlcnJ1cHRzIGluIG9yZGVyIHRvIHN0b3Agd2FpdGluZyBmb3IgaW50ZXJydXB0
cyB3aXRoIGRlYWRsaW5lLgo+PiArICovCj4+ICtleHRlcm4gbG9uZyBub250c2NfaW50ZXJydXB0
X2Fzc2VydDsKPj4gKwo+PiDCoCB2b2lkIGlycV9oYW5kbGUodW5zaWduZWQgbG9uZyBpcnEpCj4+
IMKgIHsKPj4gwqDCoMKgwqDCoCBzdHJ1Y3QgaXJxX2hhbmRsZXIgKmg7Cj4+IMKgwqDCoMKgwqAg
aW50IGhhbmRsZWQgPSAwOwo+PiDCoCDCoMKgwqDCoMKgIFVLX1NMSVNUX0ZPUkVBQ0goaCwgJmly
cV9oYW5kbGVyc1tpcnFdLCBlbnRyaWVzKSB7Cj4+ICvCoMKgwqDCoMKgwqDCoCAvKiBUT0RPIGRl
ZmluZSBwbGF0Zm9ybSB3aXNlIG1hY3JvIGZvciB0aW1lciBJUlEgbnVtYmVyICovCj4+ICvCoMKg
wqDCoMKgwqDCoCBpZiAoaXJxICE9IDApCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG5vbnRz
Y19pbnRlcnJ1cHRfYXNzZXJ0ID0gMTsKPj4gKwo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKGgt
PmZ1bmMoaC0+YXJnKSA9PSAxKSB7Cj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGhhbmRs
ZWQgPSAxOwo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBicmVhazsKPj4gZGlmZiAtLWdp
dCBhL3BsYXQva3ZtL3RpbWUuYyBiL3BsYXQva3ZtL3RpbWUuYwo+PiBuZXcgZmlsZSBtb2RlIDEw
MDY0NAo+PiBpbmRleCAwMDAwMDAwLi4xMjc2OTk3Cj4+IC0tLSAvZGV2L251bGwKPj4gKysrIGIv
cGxhdC9rdm0vdGltZS5jCj4+IEBAIC0wLDAgKzEsNjIgQEAKPj4gKy8qIFNQRFgtTGljZW5zZS1J
ZGVudGlmaWVyOiBJU0MgKi8KPj4gKy8qCj4+ICsgKiBBdXRob3JzOiBEYW4gV2lsbGlhbXMKPj4g
KyAqwqDCoMKgwqDCoMKgwqDCoMKgIE1hcnRpbiBMdWNpbmEKPj4gKyAqwqDCoMKgwqDCoMKgwqDC
oMKgIFJpY2FyZG8gS29sbGVyCj4+ICsgKsKgwqDCoMKgwqDCoMKgwqDCoCBDb3N0aW4gTHVwdSA8
Y29zdGluLmx1cHVAY3MucHViLnJvPgo+PiArICoKPj4gKyAqIENvcHlyaWdodCAoYykgMjAxNS0y
MDE3IElCTQo+PiArICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTcgRG9ja2VyLCBJbmMuCj4+ICsg
KiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVDIENvcnBvcmF0aW9uCj4+
ICsgKgo+PiArICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kL29yIGRpc3Ry
aWJ1dGUgdGhpcyBzb2Z0d2FyZQo+PiArICogZm9yIGFueSBwdXJwb3NlIHdpdGggb3Igd2l0aG91
dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCj4+ICsgKiB0aGF0IHRoZSBhYm92ZSBj
b3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhcgo+PiArICog
aW4gYWxsIGNvcGllcy4KPj4gKyAqCj4+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFT
IElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMCj4+ICsgKiBXQVJSQU5USUVTIFdJVEgg
UkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVECj4+ICsgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFCj4+ICsgKiBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJ
UkVDVCwgT1IKPj4gKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFU
U09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MKPj4gKyAqIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRT
LCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwKPj4gKyAqIE5FR0xJR0VOQ0UgT1Ig
T1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTgo+PiArICogQ09OTkVD
VElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KPj4gKyAq
Lwo+PiArLyogVGFrZW4gZnJvbSBzb2xvNSB0aW1lLmMgKi8KPj4gKwo+PiArI2luY2x1ZGUgPHN0
ZGxpYi5oPgo+PiArI2luY2x1ZGUgPHVrL3BsYXQvdGltZS5oPgo+PiArI2luY2x1ZGUgPGt2bS9p
cnEuaD4KPj4gKyNpbmNsdWRlIDxrdm0vdHNjY2xvY2suaD4KPj4gKyNpbmNsdWRlIDx1ay9hc3Nl
cnQuaD4KPj4gKwo+PiArCj4+ICsvKiByZXR1cm4gbnMgc2luY2UgdGltZV9pbml0KCkgKi8KPj4g
K19fbnNlYyB1a3BsYXRfbW9ub3RvbmljX2Nsb2NrKHZvaWQpCj4+ICt7Cj4+ICvCoMKgwqAgcmV0
dXJuIHRzY2Nsb2NrX21vbm90b25pYygpOwo+PiArfQo+PiArCj4+ICsvKiByZXR1cm4gd2FsbCB0
aW1lIGluIG5zZWNzICovCj4+ICtfX25zZWMgdWtwbGF0X2Nsb2NrX3dhbGwodm9pZCkKPj4gK3sK
Pj4gK8KgwqDCoCByZXR1cm4gdHNjY2xvY2tfbW9ub3RvbmljKCkgKyB0c2NjbG9ja19lcG9jaG9m
ZnNldCgpOwo+PiArfQo+PiArCj4+ICtzdGF0aWMgaW50IHRpbWVyX2hhbmRsZXIodm9pZCAqYXJn
IF9fdW51c2VkKQo+PiArewo+PiArwqDCoMKgIC8qIFllcywgd2UgaGFuZGxlZCB0aGUgaXJxLiAq
Lwo+PiArwqDCoMKgIHJldHVybiAxOwo+PiArfQo+PiArCj4+ICsvKiBtdXN0IGJlIGNhbGxlZCBi
ZWZvcmUgaW50ZXJydXB0cyBhcmUgZW5hYmxlZCAqLwo+PiArdm9pZCB1a3BsYXRfdGltZV9pbml0
KHZvaWQpCj4+ICt7Cj4+ICvCoMKgwqAgaW50IHJjOwo+PiArCj4+ICvCoMKgwqAgaXJxX3JlZ2lz
dGVyKDAsIHRpbWVyX2hhbmRsZXIsIE5VTEwpOwo+PiArCj4+ICvCoMKgwqAgcmMgPSB0c2NjbG9j
a19pbml0KCk7Cj4+ICvCoMKgwqAgVUtfQVNTRVJUKHJjID09IDApOwo+PiArfQo+PiBkaWZmIC0t
Z2l0IGEvcGxhdC9rdm0vdHNjY2xvY2suYyBiL3BsYXQva3ZtL3RzY2Nsb2NrLmMKPj4gbmV3IGZp
bGUgbW9kZSAxMDA2NDQKPj4gaW5kZXggMDAwMDAwMC4uMTE5OWYxOAo+PiAtLS0gL2Rldi9udWxs
Cj4+ICsrKyBiL3BsYXQva3ZtL3RzY2Nsb2NrLmMKPj4gQEAgLTAsMCArMSwzNTYgQEAKPj4gKy8q
IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBJU0MgKi8KPj4gKy8qCj4+ICsgKiBBdXRob3JzOiBE
YW4gV2lsbGlhbXMKPj4gKyAqwqDCoMKgwqDCoMKgwqDCoMKgIE1hcnRpbiBMdWNpbmEKPj4gKyAq
wqDCoMKgwqDCoMKgwqDCoMKgIFJpY2FyZG8gS29sbGVyCj4+ICsgKsKgwqDCoMKgwqDCoMKgwqDC
oCBDb3N0aW4gTHVwdSA8Y29zdGluLmx1cHVAY3MucHViLnJvPgo+PiArICoKPj4gKyAqIENvcHly
aWdodCAoYykgMjAxNS0yMDE3IElCTQo+PiArICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTcgRG9j
a2VyLCBJbmMuCj4+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE5FQyBFdXJvcGUgTHRkLiwgTkVD
IENvcnBvcmF0aW9uCj4+ICsgKgo+PiArICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlm
eSwgYW5kL29yIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZQo+PiArICogZm9yIGFueSBwdXJwb3Nl
IHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkCj4+ICsgKiB0
aGF0IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNl
IGFwcGVhcgo+PiArICogaW4gYWxsIGNvcGllcy4KPj4gKyAqCj4+ICsgKiBUSEUgU09GVFdBUkUg
SVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMCj4+ICsgKiBX
QVJSQU5USUVTIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBM
SUVECj4+ICsgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFCj4+ICsgKiBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lB
TCwgRElSRUNULCBJTkRJUkVDVCwgT1IKPj4gKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBB
TlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MKPj4gKyAqIE9GIFVTRSwg
REFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwKPj4gKyAq
IE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJ
Tgo+PiArICogQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBT
T0ZUV0FSRS4KPj4gKyAqLwo+PiArLyogVGFrZW4gZnJvbSBzb2xvNSB0c2NjbG9jay5jICovCj4+
ICsKPj4gKy8qLQo+PiArICogQ29weXJpZ2h0IChjKSAyMDE0LCAyMDE1IEFudHRpIEthbnRlZS7C
oCBBbGwgUmlnaHRzIFJlc2VydmVkLgo+PiArICogQ29weXJpZ2h0IChjKSAyMDE1IE1hcnRpbiBM
dWNpbmEuwqAgQWxsIFJpZ2h0cyBSZXNlcnZlZC4KPj4gKyAqIE1vZGlmaWVkIGZvciBzb2xvNSBi
eSBSaWNhcmRvIEtvbGxlciA8a29sbGVyckB1cy5pYm0uY29tPgo+PiArICoKPj4gKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAo+PiArICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCj4+ICsgKiBhcmUgbWV0Ogo+PiArICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKPj4g
KyAqwqDCoMKgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KPj4gKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cj4+ICsgKsKgwqDCoCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KPj4g
dGhlCj4+ICsgKsKgwqDCoCBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUKPj4gZGlzdHJpYnV0aW9uLgo+PiArICoKPj4gKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTCj4+
ICsgKiBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAo+PiArICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCj4+IEFSRQo+PiArICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCj4+
ICsgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKPj4gQ09OU0VRVUVOVElBTAo+PiArICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUKPj4gR09PRFMgT1IKPj4g
KyAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKQo+PiArICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCj4+IENPTlRSQUNULCBTVFJJQ1QKPj4gKyAqIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
Cj4+IEFOWSBXQVkKPj4gKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUKPj4gUE9TU0lCSUxJVFkgT0YKPj4gKyAqIFNVQ0ggREFNQUdFLgo+
PiArICovCj4+ICsKPj4gKyNpbmNsdWRlIDx1ay9wbGF0L2xjcHUuaD4KPj4gKyNpbmNsdWRlIDx1
ay9wbGF0L3RpbWUuaD4KPj4gKyNpbmNsdWRlIDx4ODYvY3B1Lmg+Cj4+ICsjaW5jbHVkZSA8a3Zt
L2Nsb2NrX3N1YnIuaD4KPj4gKyNpbmNsdWRlIDx1ay9wcmludC5oPgo+PiArI2luY2x1ZGUgPHVr
L2Fzc2VydC5oPgo+PiArCj4+ICsjZGVmaW5lIE5TRUNfUEVSX1NFQ8KgwqDCoMKgwqDCoMKgwqAg
MTAwMDAwMDAwMFVMTAo+PiArCj4+ICsjZGVmaW5lIFRJTUVSX0NOVFLCoMKgwqDCoMKgwqDCoMKg
wqDCoCAweDQwCj4+ICsjZGVmaW5lIFRJTUVSX01PREXCoMKgwqDCoMKgwqDCoMKgwqDCoCAweDQz
Cj4+ICsjZGVmaW5lIFRJTUVSX1NFTDDCoMKgwqDCoMKgwqDCoMKgwqDCoCAweDAwCj4+ICsjZGVm
aW5lIFRJTUVSX0xBVENIwqDCoMKgwqDCoMKgwqDCoMKgIDB4MDAKPj4gKyNkZWZpbmUgVElNRVJf
UkFURUdFTsKgwqDCoMKgwqDCoMKgIDB4MDQKPj4gKyNkZWZpbmUgVElNRVJfT05FU0hPVMKgwqDC
oMKgwqDCoMKgIDB4MDgKPj4gKyNkZWZpbmUgVElNRVJfMTZCSVTCoMKgwqDCoMKgwqDCoMKgwqAg
MHgzMAo+PiArI2RlZmluZSBUSU1FUl9IWsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAxMTkzMTgy
Cj4+ICsKPj4gKyNkZWZpbmXCoMKgwqAgUlRDX0NPTU1BTkTCoMKgwqDCoMKgwqDCoMKgwqAgMHg3
MAo+PiArI2RlZmluZcKgwqDCoCBSVENfREFUQcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAweDcx
Cj4+ICsjZGVmaW5lIFJUQ19OTUlfRElTQUJMRcKgwqDCoMKgwqAgKDE8PDgpCj4+ICsjZGVmaW5l
IFJUQ19OTUlfRU5BQkxFwqDCoMKgwqDCoMKgIDAKPj4gKyNkZWZpbmXCoMKgwqAgUlRDX1NFQ8Kg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDB4MDAKPj4gKyNkZWZpbmXCoMKgwqAgUlRDX01JTsKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDB4MDIKPj4gKyNkZWZpbmXCoMKgwqAgUlRDX0hPVVLC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgMHgwNAo+PiArI2RlZmluZcKgwqDCoCBSVENfREFZwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgMHgwNwo+PiArI2RlZmluZcKgwqDCoCBSVENfTU9OVEjC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgIDB4MDgKPj4gKyNkZWZpbmXCoMKgwqAgUlRDX1lFQVLCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgMHgwOQo+PiArI2RlZmluZcKgwqDCoCBSVENfU1RBVFVTX0HC
oMKgwqDCoMKgwqDCoMKgIDB4MGEKPj4gKyNkZWZpbmXCoMKgwqAgUlRDX1VJUMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgICgxPDw3KQo+PiArCj4+ICsvKiBSVEMgd2FsbCB0aW1lIG9mZnNldCBh
dCBtb25vdG9uaWMgdGltZSBiYXNlLiAqLwo+PiArc3RhdGljIF9fdTY0IHJ0Y19lcG9jaG9mZnNl
dDsKPj4gKwo+PiArLyoKPj4gKyAqIFRTQyBjbG9jayBzcGVjaWZpYy4KPj4gKyAqLwo+PiArCj4+
ICsvKiBCYXNlIHRpbWUgdmFsdWVzIGF0IHRoZSBsYXN0IGNhbGwgdG8gdHNjY2xvY2tfbW9ub3Rv
bmljKCkuICovCj4+ICtzdGF0aWMgX191NjQgdGltZV9iYXNlOwo+PiArc3RhdGljIF9fdTY0IHRz
Y19iYXNlOwo+PiArCj4+ICsvKiBNdWx0aXBsaWVyIGZvciBjb252ZXJ0aW5nIFRTQyB0aWNrcyB0
byBuc2Vjcy4gKDAuMzIpIGZpeGVkIHBvaW50LiAqLwo+PiArc3RhdGljIF9fdTMyIHRzY19tdWx0
Owo+PiArCj4+ICsvKgo+PiArICogTXVsdGlwbGllciBmb3IgY29udmVydGluZyBuc2VjcyB0byBQ
SVQgdGlja3MuICgxLjMyKSBmaXhlZCBwb2ludC4KPj4gKyAqCj4+ICsgKiBDYWxjdWxhdGVkIGFz
Ogo+PiArICoKPj4gKyAqwqDCoMKgwqAgZiA9IE5TRUNfUEVSX1NFQyAvIFRJTUVSX0hawqDCoCAo
MC4zMSkgZml4ZWQgcG9pbnQuCj4+ICsgKsKgwqDCoMKgIHBpdF9tdWx0ID0gMSAvIGbCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoCAoMS4zMikgZml4ZWQgcG9pbnQuCj4+ICsgKi8KPj4gK3N0YXRp
YyBjb25zdCBfX3UzMiBwaXRfbXVsdCA9Cj4+ICvCoMKgwqAgKDFVTEwgPDwgNjMpIC8gKChOU0VD
X1BFUl9TRUMgPDwgMzEpIC8gVElNRVJfSFopOwo+PiArCj4+ICsKPj4gKy8qCj4+ICsgKiBSZWFk
IHRoZSBjdXJyZW50IGk4MjU0IGNoYW5uZWwgMCB0aWNrIGNvdW50Lgo+PiArICovCj4+ICtzdGF0
aWMgdW5zaWduZWQgaW50IGk4MjU0X2dldHRpY2sodm9pZCkKPj4gK3sKPj4gK8KgwqDCoCBfX3Ux
NiByZHZhbDsKPj4gKwo+PiArwqDCoMKgIG91dGIoVElNRVJfTU9ERSwgVElNRVJfU0VMMCB8IFRJ
TUVSX0xBVENIKTsKPj4gK8KgwqDCoCByZHZhbMKgID0gaW5iKFRJTUVSX0NOVFIpOwo+PiArwqDC
oMKgIHJkdmFsIHw9IChpbmIoVElNRVJfQ05UUikgPDwgOCk7Cj4+ICvCoMKgwqAgcmV0dXJuIHJk
dmFsOwo+PiArfQo+PiArCj4+ICsvKgo+PiArICogRGVsYXkgZm9yIGFwcHJveGltYXRlbHkgbiBt
aWNyb3NlY29uZHMgdXNpbmcgdGhlIGk4MjU0IGNoYW5uZWwgMAo+PiBjb3VudGVyLgo+PiArICog
VGltZXIgbXVzdCBiZSBwcm9ncmFtbWVkIGFwcHJvcHJpYXRlbHkgYmVmb3JlIGNhbGxpbmcgdGhp
cyBmdW5jdGlvbi4KPj4gKyAqLwo+PiArc3RhdGljIHZvaWQgaTgyNTRfZGVsYXkodW5zaWduZWQg
aW50IG4pCj4+ICt7Cj4+ICvCoMKgwqAgdW5zaWduZWQgaW50IGN1cl90aWNrLCBpbml0aWFsX3Rp
Y2s7Cj4+ICvCoMKgwqAgaW50IHJlbWFpbmluZzsKPj4gK8KgwqDCoCBjb25zdCB1bnNpZ25lZCBs
b25nIHRpbWVyX3J2YWwgPSBUSU1FUl9IWiAvIDEwMDsKPj4gKwo+PiArwqDCoMKgIGluaXRpYWxf
dGljayA9IGk4MjU0X2dldHRpY2soKTsKPj4gKwo+PiArwqDCoMKgIHJlbWFpbmluZyA9ICh1bnNp
Z25lZCBsb25nIGxvbmcpIG4gKiBUSU1FUl9IWiAvIDEwMDAwMDA7Cj4+ICsKPj4gK8KgwqDCoCB3
aGlsZSAocmVtYWluaW5nID4gMSkgewo+PiArwqDCoMKgwqDCoMKgwqAgY3VyX3RpY2sgPSBpODI1
NF9nZXR0aWNrKCk7Cj4+ICvCoMKgwqDCoMKgwqDCoCBpZiAoY3VyX3RpY2sgPiBpbml0aWFsX3Rp
Y2spCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJlbWFpbmluZyAtPSB0aW1lcl9ydmFsIC0g
KGN1cl90aWNrIC0gaW5pdGlhbF90aWNrKTsKPj4gK8KgwqDCoMKgwqDCoMKgIGVsc2UKPj4gK8Kg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgcmVtYWluaW5nIC09IGluaXRpYWxfdGljayAtIGN1cl90aWNr
Owo+PiArwqDCoMKgwqDCoMKgwqAgaW5pdGlhbF90aWNrID0gY3VyX3RpY2s7Cj4+ICvCoMKgwqAg
fQo+PiArfQo+PiArCj4+ICsvKgo+PiArICogUmVhZCBhIFJUQyByZWdpc3Rlci4gRHVlIHRvIFBD
IHBsYXRmb3JtIGJyYWluZGVhZC1uZXNzIGFsc28KPj4gZGlzYWJsZXMgTk1JLgo+PiArICovCj4+
ICtzdGF0aWMgaW5saW5lIF9fdTggcnRjX3JlYWQoX191OCByZWcpCj4+ICt7Cj4+ICvCoMKgwqAg
b3V0YihSVENfQ09NTUFORCwgcmVnIHwgUlRDX05NSV9ESVNBQkxFKTsKPj4gK8KgwqDCoCByZXR1
cm4gaW5iKFJUQ19EQVRBKTsKPj4gK30KPj4gKwo+PiArLyoKPj4gKyAqIFJldHVybiBjdXJyZW50
IFJUQyB0aW1lLiBOb3RlIHRoYXQgZHVlIHRvIHdhaXRpbmcgZm9yIHRoZSB1cGRhdGUKPj4gY3lj
bGUgdG8KPj4gKyAqIGNvbXBsZXRlLCB0aGlzIGNhbGwgbWF5IHRha2Ugc29tZSB0aW1lLgo+PiAr
ICovCj4+ICtzdGF0aWMgX191NjQgcnRjX2dldHRpbWVvZmRheSh2b2lkKQo+PiArewo+PiArwqDC
oMKgIHN0cnVjdCBibWtfY2xvY2tfeW1kaG1zIGR0Owo+PiArwqDCoMKgIHVuc2lnbmVkIGxvbmcg
ZmxhZ3M7Cj4+ICsKPj4gK8KgwqDCoCBmbGFncyA9IHVrcGxhdF9sY3B1X3NhdmVfaXJxZigpOwo+
PiArCj4+ICvCoMKgwqAgLyoKPj4gK8KgwqDCoMKgICogSWYgUlRDX1VJUCBpcyBkb3duLCB3ZSBo
YXZlIGF0IGxlYXN0IDI0NHVzIHRvIG9idGFpbiBhCj4+ICvCoMKgwqDCoCAqIGNvbnNpc3RlbnQg
cmVhZGluZyBiZWZvcmUgYW4gdXBkYXRlIGNhbiBvY2N1ci4KPj4gK8KgwqDCoMKgICovCj4+ICvC
oMKgwqAgd2hpbGUgKHJ0Y19yZWFkKFJUQ19TVEFUVVNfQSkgJiBSVENfVUlQKQo+PiArwqDCoMKg
wqDCoMKgwqAgY29udGludWU7Cj4+ICsKPj4gK8KgwqDCoCBkdC5kdF9zZWMgPSBiY2R0b2Jpbihy
dGNfcmVhZChSVENfU0VDKSk7Cj4+ICvCoMKgwqAgZHQuZHRfbWluID0gYmNkdG9iaW4ocnRjX3Jl
YWQoUlRDX01JTikpOwo+PiArwqDCoMKgIGR0LmR0X2hvdXIgPSBiY2R0b2JpbihydGNfcmVhZChS
VENfSE9VUikpOwo+PiArwqDCoMKgIGR0LmR0X2RheSA9IGJjZHRvYmluKHJ0Y19yZWFkKFJUQ19E
QVkpKTsKPj4gK8KgwqDCoCBkdC5kdF9tb24gPSBiY2R0b2JpbihydGNfcmVhZChSVENfTU9OVEgp
KTsKPj4gK8KgwqDCoCBkdC5kdF95ZWFyID0gYmNkdG9iaW4ocnRjX3JlYWQoUlRDX1lFQVIpKSAr
IDIwMDA7Cj4+ICsKPj4gK8KgwqDCoCB1a3BsYXRfbGNwdV9yZXN0b3JlX2lycWYoZmxhZ3MpOwo+
PiArCj4+ICvCoMKgwqAgcmV0dXJuIHVrYXJjaF90aW1lX3NlY190b19uc2VjKGNsb2NrX3ltZGht
c190b19zZWNzKCZkdCkpOwo+PiArfQo+PiArCj4+ICsvKgo+PiArICogQmV0dXJuIG1vbm90b25p
YyB0aW1lIHVzaW5nIFRTQyBjbG9jay4KPj4gKyAqLwo+PiArX191NjQgdHNjY2xvY2tfbW9ub3Rv
bmljKHZvaWQpCj4+ICt7Cj4+ICvCoMKgwqAgX191NjQgdHNjX25vdywgdHNjX2RlbHRhOwo+PiAr
Cj4+ICvCoMKgwqAgLyoKPj4gK8KgwqDCoMKgICogVXBkYXRlIHRpbWVfYmFzZSAobW9ub3Rvbmlj
IHRpbWUpIGFuZCB0c2NfYmFzZSAoVFNDIHRpbWUpLgo+PiArwqDCoMKgwqAgKi8KPj4gK8KgwqDC
oCB0c2Nfbm93ID0gcmR0c2MoKTsKPj4gK8KgwqDCoCB0c2NfZGVsdGEgPSB0c2Nfbm93IC0gdHNj
X2Jhc2U7Cj4+ICvCoMKgwqAgdGltZV9iYXNlICs9IG11bDY0XzMyKHRzY19kZWx0YSwgdHNjX211
bHQpOwo+PiArwqDCoMKgIHRzY19iYXNlID0gdHNjX25vdzsKPj4gKwo+PiArwqDCoMKgIHJldHVy
biB0aW1lX2Jhc2U7Cj4+ICt9Cj4+ICsKPj4gKy8qCj4+ICsgKiBDYWxpYnJhdGUgVFNDIGFuZCBp
bml0aWFsaXNlIFRTQyBjbG9jay4KPj4gKyAqLwo+PiAraW50IHRzY2Nsb2NrX2luaXQodm9pZCkK
Pj4gK3sKPj4gK8KgwqDCoCBfX3U2NCB0c2NfZnJlcSwgcnRjX2Jvb3Q7Cj4+ICsKPj4gK8KgwqDC
oCAvKiBJbml0aWFsaXNlIGk4MjU0IHRpbWVyIGNoYW5uZWwgMCB0byBtb2RlIDIgYXQgMTAwIEh6
ICovCj4+ICvCoMKgwqAgb3V0YihUSU1FUl9NT0RFLCBUSU1FUl9TRUwwIHwgVElNRVJfUkFURUdF
TiB8IFRJTUVSXzE2QklUKTsKPj4gK8KgwqDCoCBvdXRiKFRJTUVSX0NOVFIsIChUSU1FUl9IWiAv
IDEwMCkgJiAweGZmKTsKPj4gK8KgwqDCoCBvdXRiKFRJTUVSX0NOVFIsIChUSU1FUl9IWiAvIDEw
MCkgPj4gOCk7Cj4+ICsKPj4gK8KgwqDCoCAvKgo+PiArwqDCoMKgwqAgKiBSZWFkIFJUQyAidGlt
ZSBhdCBib290Ii4gVGhpcyBtdXN0IGJlIGRvbmUganVzdCBiZWZvcmUKPj4gdHNjX2Jhc2UgaXMK
Pj4gK8KgwqDCoMKgICogaW5pdGlhbGlzZWQgaW4gb3JkZXIgdG8gZ2V0IGEgY29ycmVjdCBvZmZz
ZXQgYmVsb3cuCj4+ICvCoMKgwqDCoCAqLwo+PiArwqDCoMKgIHJ0Y19ib290ID0gcnRjX2dldHRp
bWVvZmRheSgpOwo+PiArCj4+ICvCoMKgwqAgLyoKPj4gK8KgwqDCoMKgICogQ2FsY3VsYXRlIFRT
QyBmcmVxdWVuY3kgYnkgY2FsaWJyYXRpbmcgYWdhaW5zdCBhbiAwLjFzIGRlbGF5Cj4+ICvCoMKg
wqDCoCAqIHVzaW5nIHRoZSBpODI1NCB0aW1lci4KPj4gK8KgwqDCoMKgICovCj4gCj4gV293LCB0
aGlzIGlzIGFkZHMgYSAxMDBtcyBib290IGRlbGF5IHRvIHRoZSBVbmlrZXJuZWxzIG9uIEtWTS4g
Q2FuIHlvdQo+IHB1dCBhbiBUT0RPIGNvbW1lbnQgZm9yIHJldmlzaXRpbmcgdGhpcyBsYXRlcj8g
TWF5YmUgd2UgY2FuIGZpbmQgYQo+IGRpZmZlcmVudCBtZXRob2QgdG8gZ2V0IHRoZSBjb3JyZWN0
IHZhbHVlIGZvciB0aGUgVFNDIGZyZXF1ZW5jeS4KClJpZ2h0LgoKPj4gK8KgwqDCoCB0c2NfYmFz
ZSA9IHJkdHNjKCk7Cj4+ICvCoMKgwqAgaTgyNTRfZGVsYXkoMTAwMDAwKTsKPj4gK8KgwqDCoCB0
c2NfZnJlcSA9IChyZHRzYygpIC0gdHNjX2Jhc2UpICogMTA7Cj4+ICvCoMKgwqAgdWtfcHJpbnRk
KERMVkxfSU5GTywKPj4gK8KgwqDCoMKgwqDCoMKgICJDbG9jayBzb3VyY2U6IFRTQywgZnJlcXVl
bmN5IGVzdGltYXRlIGlzICVsbHUgSHpcbiIsCj4+ICvCoMKgwqDCoMKgwqDCoCAodW5zaWduZWQg
bG9uZyBsb25nKSB0c2NfZnJlcSk7IC8vVE9ETwo+PiArCj4+ICvCoMKgwqAgLyoKPj4gK8KgwqDC
oMKgICogQ2FsY3VsYXRlIFRTQyBzY2FsaW5nIG11bHRpcGxpZXIuCj4+ICvCoMKgwqDCoCAqCj4+
ICvCoMKgwqDCoCAqICgwLjMyKSB0c2NfbXVsdCA9IE5TRUNfUEVSX1NFQyAoMzIuMzIpIC8gdHNj
X2ZyZXEgKDMyLjApCj4+ICvCoMKgwqDCoCAqLwo+PiArwqDCoMKgIHRzY19tdWx0ID0gKE5TRUNf
UEVSX1NFQyA8PCAzMikgLyB0c2NfZnJlcTsKPj4gKwo+PiArwqDCoMKgIC8qCj4+ICvCoMKgwqDC
oCAqIE1vbm90b25pYyB0aW1lIGJlZ2lucyBhdCB0c2NfYmFzZSAoZmlyc3QgcmVhZCBvZiBUU0Mg
YmVmb3JlCj4+ICvCoMKgwqDCoCAqIGNhbGlicmF0aW9uKS4KPj4gK8KgwqDCoMKgICovCj4+ICvC
oMKgwqAgdGltZV9iYXNlID0gbXVsNjRfMzIodHNjX2Jhc2UsIHRzY19tdWx0KTsKPj4gKwo+PiAr
wqDCoMKgIC8qCj4+ICvCoMKgwqDCoCAqIENvbXB1dGUgUlRDIGVwb2NoIG9mZnNldCBieSBzdWJ0
cmFjdGluZyBtb25vdG9uaWMgdGltZV9iYXNlCj4+IGZyb20gUlRDCj4+ICvCoMKgwqDCoCAqIHRp
bWUgYXQgYm9vdC4KPj4gK8KgwqDCoMKgICovCj4+ICvCoMKgwqAgcnRjX2Vwb2Nob2Zmc2V0ID0g
cnRjX2Jvb3QgLSB0aW1lX2Jhc2U7Cj4+ICsKPj4gK8KgwqDCoCAvKgo+PiArwqDCoMKgwqAgKiBJ
bml0aWFsaXNlIGk4MjU0IHRpbWVyIGNoYW5uZWwgMCB0byBtb2RlIDQgKG9uZSBzaG90KS4KPj4g
K8KgwqDCoMKgICovCj4+ICvCoMKgwqAgb3V0YihUSU1FUl9NT0RFLCBUSU1FUl9TRUwwIHwgVElN
RVJfT05FU0hPVCB8IFRJTUVSXzE2QklUKTsKPj4gKwo+PiArwqDCoMKgIHJldHVybiAwOwo+PiAr
fQo+PiArCj4+ICsvKgo+PiArICogUmV0dXJuIGVwb2NoIG9mZnNldCAod2FsbCB0aW1lIG9mZnNl
dCB0byBtb25vdG9uaWMgY2xvY2sgc3RhcnQpLgo+PiArICovCj4+ICtfX3U2NCB0c2NjbG9ja19l
cG9jaG9mZnNldCh2b2lkKQo+PiArewo+PiArwqDCoMKgIHJldHVybiBydGNfZXBvY2hvZmZzZXQ7
Cj4+ICt9Cj4+ICsKPj4gKy8qCj4+ICsgKiBNaW5pbXVtIGRlbHRhIHRvIHNsZWVwIHVzaW5nIFBJ
VC4gUHJvZ3JhbW1pbmcgc2VlbXMgdG8gaGF2ZSBhbgo+PiBvdmVyaGVhZCBvZgo+PiArICogMy00
dXMsIGJ1dCBwbGF5IGl0IHNhZmUgaGVyZS4KPj4gKyAqLwo+PiArI2RlZmluZSBQSVRfTUlOX0RF
TFRBwqDCoMKgIDE2Cj4+ICsKPj4gKy8qCj4+ICsgKiBSZXR1cm5zIGVhcmx5IGlmIGFueSBpbnRl
cnJ1cHRzIGFyZSBzZXJ2aWNlZCwgb3IgaWYgdGhlIHJlcXVlc3RlZAo+PiBkZWxheSBpcwo+PiAr
ICogdG9vIHNob3J0LiBNdXN0IGJlIGNhbGxlZCB3aXRoIGludGVycnVwdHMgZGlzYWJsZWQsIHdp
bGwgZW5hYmxlCj4+IGludGVycnVwdHMKPj4gKyAqICJhdG9taWNhbGx5IiBkdXJpbmcgaWRsZSBs
b29wLgo+PiArICovCj4+ICtzdGF0aWMgdm9pZCB0c2NjbG9ja19jcHVfYmxvY2soX191NjQgdW50
aWwpCj4+ICt7Cj4+ICvCoMKgwqAgX191NjQgbm93LCBkZWx0YV9uczsKPj4gK8KgwqDCoCBfX3U2
NCBkZWx0YV90aWNrczsKPj4gK8KgwqDCoCB1bnNpZ25lZCBpbnQgdGlja3M7Cj4+ICsKPj4gK8Kg
wqDCoCBVS19BU1NFUlQodWtwbGF0X2xjcHVfaXJxc19kaXNhYmxlZCgpKTsKPj4gKwo+PiArwqDC
oMKgIG5vdyA9IHVrcGxhdF9tb25vdG9uaWNfY2xvY2soKTsKPj4gKwo+PiArwqDCoMKgIC8qCj4+
ICvCoMKgwqDCoCAqIENvbXB1dGUgZGVsdGEgaW4gUElUIHRpY2tzLiBSZXR1cm4gaWYgaXQgaXMg
bGVzcyB0aGFuIG1pbmltdW0KPj4gc2FmZQo+PiArwqDCoMKgwqAgKiBhbW91bnQgb2YgdGlja3Mu
wqAgRXNzZW50aWFsbHkgdGhpcyB3aWxsIGNhdXNlIHVzIHRvIHNwaW4gdW50aWwKPj4gK8KgwqDC
oMKgICogdGhlIHRpbWVvdXQuCj4+ICvCoMKgwqDCoCAqLwo+PiArwqDCoMKgIGRlbHRhX25zID0g
dW50aWwgLSBub3c7Cj4+ICvCoMKgwqAgZGVsdGFfdGlja3MgPSBtdWw2NF8zMihkZWx0YV9ucywg
cGl0X211bHQpOwo+PiArwqDCoMKgIGlmIChkZWx0YV90aWNrcyA8IFBJVF9NSU5fREVMVEEpIHsK
Pj4gK8KgwqDCoMKgwqDCoMKgIC8qCj4+ICvCoMKgwqDCoMKgwqDCoMKgICogU2luY2Ugd2UgYXJl
ICJzcGlubmluZyIsIHF1aWNrbHkgZW5hYmxlIGludGVycnVwdHMgaW4KPj4gK8KgwqDCoMKgwqDC
oMKgwqAgKiB0aGUgaG9wZXMgdGhhdCB3ZSBtaWdodCBnZXQgbmV3IHdvcmsgYW5kIGNhbiBkbyBz
b21ldGhpbmcKPj4gK8KgwqDCoMKgwqDCoMKgwqAgKiBlbHNlIHRoYW4gc3Bpbi4KPj4gK8KgwqDC
oMKgwqDCoMKgwqAgKi8KPj4gK8KgwqDCoMKgwqDCoMKgIHVrcGxhdF9sY3B1X2VuYWJsZV9pcnEo
KTsKPj4gK8KgwqDCoMKgwqDCoMKgIG5vcCgpOyAvKiBpbnRzIGFyZSBlbmFibGVkIDEgaW5zdHIg
YWZ0ZXIgc3RpICovCj4+ICvCoMKgwqDCoMKgwqDCoCB1a3BsYXRfbGNwdV9kaXNhYmxlX2lycSgp
Owo+PiArwqDCoMKgwqDCoMKgwqAgcmV0dXJuOwo+PiArwqDCoMKgIH0KPj4gKwo+PiArwqDCoMKg
IC8qCj4+ICvCoMKgwqDCoCAqIFByb2dyYW0gdGhlIHRpbWVyIHRvIGludGVycnVwdCB0aGUgQ1BV
IGFmdGVyIHRoZSBkZWxheSBoYXMKPj4gZXhwaXJlZC4KPj4gK8KgwqDCoMKgICogTWF4aW11bSB0
aW1lciBkZWxheSBpcyA2NTUzNSB0aWNrcy4KPj4gK8KgwqDCoMKgICovCj4+ICvCoMKgwqAgaWYg
KGRlbHRhX3RpY2tzID4gNjU1MzUpCj4+ICvCoMKgwqDCoMKgwqDCoCB0aWNrcyA9IDY1NTM1Owo+
PiArwqDCoMKgIGVsc2UKPj4gK8KgwqDCoMKgwqDCoMKgIHRpY2tzID0gZGVsdGFfdGlja3M7Cj4+
ICsKPj4gK8KgwqDCoCAvKgo+PiArwqDCoMKgwqAgKiBOb3RlIHRoYXQgYWNjb3JkaW5nIHRvIHRo
ZSBJbnRlbCA4MkM1NCBkYXRhc2hlZXQsIHAxMiB0aGUKPj4gK8KgwqDCoMKgICogaW50ZXJydXB0
IGlzIGFjdHVhbGx5IGRlbGl2ZXJlZCBpbiBOICsgMSB0aWNrcy4KPj4gK8KgwqDCoMKgICovCj4+
ICvCoMKgwqAgdGlja3MgLT0gMTsKPj4gK8KgwqDCoCBvdXRiKFRJTUVSX0NOVFIsIHRpY2tzICYg
MHhmZik7Cj4+ICvCoMKgwqAgb3V0YihUSU1FUl9DTlRSLCB0aWNrcyA+PiA4KTsKPj4gKwo+PiAr
wqDCoMKgIC8qCj4+ICvCoMKgwqDCoCAqIFdhaXQgZm9yIGFueSBpbnRlcnJ1cHQuIElmIHdlIGdv
dCBhbiBpbnRlcnJ1cHQgdGhlbgo+PiArwqDCoMKgwqAgKiBqdXN0IHJldHVybiBpbnRvIHRoZSBz
Y2hlZHVsZXIgd2hpY2ggd2lsbCBjaGVjayBpZiB0aGVyZSBpcwo+PiArwqDCoMKgwqAgKiB3b3Jr
IHRvIGRvIGFuZCBzZW5kIHVzIGJhY2sgaGVyZSBpZiBub3QuCj4+ICvCoMKgwqDCoCAqCj4+ICvC
oMKgwqDCoCAqIFRPRE86IEl0IHdvdWxkIGJlIG1vcmUgZWZmaWNpZW50IGZvciBsb25nZXIgc2xl
ZXBzIHRvIGJlCj4+ICvCoMKgwqDCoCAqIGFibGUgdG8gZGlzdGluZ3Vpc2ggaWYgdGhlIGludGVy
cnVwdCB3YXMgdGhlIFBJVCBpbnRlcnJ1cHQKPj4gK8KgwqDCoMKgICogYW5kIG5vIG90aGVyLCBi
dXQgdGhpcyB3aWxsIGRvIGZvciBub3cuCj4+ICvCoMKgwqDCoCAqLwo+PiArwqDCoMKgIHVrcGxh
dF9sY3B1X2hhbHRfaXJxKCk7Cj4+ICt9Cj4+ICsKPj4gK2xvbmcgbm9udHNjX2ludGVycnVwdF9h
c3NlcnQ7Cj4+ICsKPj4gK3ZvaWQgdGltZV9ibG9ja191bnRpbChfX3Nuc2VjIHVudGlsKQo+PiAr
ewo+PiArwqDCoMKgIHZvbGF0aWxlIGxvbmcgKnBub250c2NfaW50ZXJydXB0X2Fzc2VydCA9ICZu
b250c2NfaW50ZXJydXB0X2Fzc2VydDsKPj4gKwo+PiArwqDCoMKgIHdoaWxlICgoX19zbnNlYykg
dWtwbGF0X21vbm90b25pY19jbG9jaygpIDwgdW50aWwpIHsKPj4gK8KgwqDCoMKgwqDCoMKgIHRz
Y2Nsb2NrX2NwdV9ibG9jayh1bnRpbCk7Cj4+ICsKPj4gK8KgwqDCoMKgwqDCoMKgIC8qIHdobyB0
cmlnZ2VyZWQgdGhlIGludGVycnVwdD8gKi8KPj4gK8KgwqDCoMKgwqDCoMKgIGlmICgqcG5vbnRz
Y19pbnRlcnJ1cHRfYXNzZXJ0KSB7Cj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIC8qIGl0IHdh
cyBhbm90aGVyIGRldmljZSwgc3RvcCBibG9ja2luZyAqLwo+PiArwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoCBub250c2NfaW50ZXJydXB0X2Fzc2VydCA9IDA7Cj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgIGJyZWFrOwo+PiArwqDCoMKgwqDCoMKgwqAgfQo+PiArwqDCoMKgwqDCoMKgwqAgLyogaXQg
d2FzIHVzICovCj4+ICvCoMKgwqAgfQo+PiArfQo+Pgo+IAo+IF9fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gTWluaW9zLWRldmVsIG1haWxpbmcgbGlzdAo+
IE1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwo+IGh0dHBzOi8vbGlzdHMueGVucHJv
amVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9taW5pb3MtZGV2ZWwKCgpfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpNaW5pb3MtZGV2ZWwgbWFpbGluZyBsaXN0
Ck1pbmlvcy1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2pl
Y3Qub3JnL21haWxtYW4vbGlzdGluZm8vbWluaW9zLWRldmVs

