From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v3 01/15] docs: create Memory Bandwidth Allocation (MBA) feature document Date: Tue, 5 Sep 2017 17:32:23 +0800 Message-ID: <1504603957-5389-2-git-send-email-yi.y.sun@linux.intel.com> References: <1504603957-5389-1-git-send-email-yi.y.sun@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dpAVW-0006sx-9J for xen-devel@lists.xenproject.org; Tue, 05 Sep 2017 09:50:58 +0000 In-Reply-To: <1504603957-5389-1-git-send-email-yi.y.sun@linux.intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: kevin.tian@intel.com, wei.liu2@citrix.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, ian.jackson@eu.citrix.com, Yi Sun , julien.grall@arm.com, mengxu@cis.upenn.edu, jbeulich@suse.com, chao.p.peng@linux.intel.com, dgdegra@tycho.nsa.gov, roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBjcmVhdGVzIE1CQSBmZWF0dXJlIGRvY3VtZW50IGluIGRvYy9mZWF0dXJlcy8u IEl0IGRlc2NyaWJlcwprZXkgcG9pbnRzIHRvIGltcGxlbWVudCBNQkEgd2hpY2ggaXMgZGVzY3Jp YmVkIGluIGRldGFpbHMgaW4gSW50ZWwgU0RNCiJJbnRyb2R1Y3Rpb24gdG8gTWVtb3J5IEJhbmR3 aWR0aCBBbGxvY2F0aW9uIi4KClNpZ25lZC1vZmYtYnk6IFlpIFN1biA8eWkueS5zdW5AbGludXgu aW50ZWwuY29tPgotLS0KdjM6CiAgICAtIHJlbW92ZSAnY2xvc2VkLWxvb3AnIHJlbGF0ZWQgZGVz Y3JpcHRpb24uCiAgICAgIChzdWdnZXN0ZWQgYnkgUm9nZXIgUGF1IE1vbm7DqSkKICAgIC0gZXhw bGFpbiAnbGluZWFyJyBhbmQgJ25vbi1saW5lYXInIGJlZm9yZSBtZW50aW9uaW5nIHRoZW0uCiAg ICAgIChzdWdnZXN0ZWQgYnkgUm9nZXIgUGF1IE1vbm7DqSkKICAgIC0gYWRqdXN0IGRlc3JpcHRp b24gb2YgJ3Bzci1tYmEtc2V0Jy4KICAgICAgKHN1Z2dlc3RlZCBieSBSb2dlciBQYXUgTW9ubsOp KQogICAgLSBleHBsYWluICdNQkFfTUFYJy4KICAgICAgKHN1Z2dlc3RlZCBieSBSb2dlciBQYXUg TW9ubsOpKQogICAgLSByZW1vdmUgJ248NjQnLgogICAgICAoc3VnZ2VzdGVkIGJ5IFJvZ2VyIFBh dSBNb25uw6kpCiAgICAtIGZpeCBzb21lIHdvcmRpbmdzLgogICAgICAoc3VnZ2VzdGVkIGJ5IFJv Z2VyIFBhdSBNb25uw6kpCiAgICAtIGFkZCBjb250ZXh0IGluICdUZXN0aW5nJyBwYXJ0IHRvIG1h a2UgdGhpbmdzIG1vcmUgY2xlYXIuCiAgICAgIChzdWdnZXN0ZWQgYnkgUm9nZXIgUGF1IE1vbm7D qSkKdjI6CiAgICAtIGRlY2xhcmUgJ0hXJyBpbiBUZXJtaW5vbG9neS4KICAgICAgKHN1Z2dlc3Rl ZCBieSBDaGFvIFBlbmcpCiAgICAtIHJlcGxhY2UgJ0NPUyBJRCBvZiBWQ1BVJyB0byAnQ09TIElE IG9mIGRvbWFpbicuCiAgICAgIChzdWdnZXN0ZWQgYnkgQ2hhbyBQZW5nKQogICAgLSByZXBsYWNl ICdDT1MgcmVnaXN0ZXInIHRvICdUaHJ0bCBNU1InLgogICAgICAoc3VnZ2VzdGVkIGJ5IENoYW8g UGVuZykKICAgIC0gYWRkIGRlc2NyaXB0aW9uIGZvciAncHNyLW1iYS1zaG93JyB0byBzdGF0ZSB0 aGF0IHRoZSBkZWNpbWFsIHZhbHVlIGlzCiAgICAgIHNob3duIGZvciBsaW5lYXIgbW9kZSBidXQg aGV4YWRlY2ltYWwgdmFsdWUgaXMgc2hvd24gZm9yIG5vbi1saW5lYXIgbW9kZS4KICAgICAgKHN1 Z2dlc3RlZCBieSBDaGFvIFBlbmcpCiAgICAtIHJlbW92ZSBjb250ZW50IGluICdBcmVhcyBmb3Ig aW1wcm92ZW1lbnQnLgogICAgICAoc3VnZ2VzdGVkIGJ5IENoYW8gUGVuZykKICAgIC0gdXNlICc8 PicgdG8gc3BlY2lmeSBtYW5kYXRvcnkgYXJndW1lbnQgdG8gYSBjb21tYW5kLgogICAgICAoc3Vn Z2VzdGVkIGJ5IFdlaSBMaXUpCnYxOgogICAgLSByZW1vdmUgYSBzcGVjaWFsIGNoYXJhY3RlciB0 byBhdm9pZCB0aGUgZXJyb3Igd2hlbiBidWlsZGluZyBwYW5kb2MuCi0tLQogZG9jcy9mZWF0dXJl cy9pbnRlbF9wc3JfbWJhLnBhbmRvYyB8IDI4MyArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgMjgzIGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBkb2NzL2ZlYXR1cmVzL2ludGVsX3Bzcl9tYmEucGFuZG9jCgpkaWZmIC0tZ2l0IGEv ZG9jcy9mZWF0dXJlcy9pbnRlbF9wc3JfbWJhLnBhbmRvYyBiL2RvY3MvZmVhdHVyZXMvaW50ZWxf cHNyX21iYS5wYW5kb2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjkzZWY0 NQotLS0gL2Rldi9udWxsCisrKyBiL2RvY3MvZmVhdHVyZXMvaW50ZWxfcHNyX21iYS5wYW5kb2MK QEAgLTAsMCArMSwyODMgQEAKKyUgSW50ZWwgTWVtb3J5IEJhbmR3aWR0aCBBbGxvY2F0aW9uIChN QkEpIEZlYXR1cmUKKyUgUmV2aXNpb24gMS41CisKK1xjbGVhcnBhZ2UKKworIyBCYXNpY3MKKwor LS0tLS0tLS0tLS0tLS0tLSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCisgICAgICAgICBTdGF0dXM6ICoqVGVjaCBQcmV2aWV3KioKKworQXJjaGl0 ZWN0dXJlKHMpOiBJbnRlbCB4ODYKKworICAgQ29tcG9uZW50KHMpOiBIeXBlcnZpc29yLCB0b29s c3RhY2sKKworICAgICAgIEhhcmR3YXJlOiBNQkEgaXMgc3VwcG9ydGVkIG9uIFNreWxha2UgU2Vy dmVyIGFuZCBiZXlvbmQKKy0tLS0tLS0tLS0tLS0tLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisjIFRlcm1pbm9sb2d5CisKKyogQ0FUICAg ICAgICAgQ2FjaGUgQWxsb2NhdGlvbiBUZWNobm9sb2d5CisqIENCTSAgICAgICAgIENhcGFjaXR5 IEJpdE1hc2tzCisqIENEUCAgICAgICAgIENvZGUgYW5kIERhdGEgUHJpb3JpdGl6YXRpb24KKyog Q09TL0NMT1MgICAgQ2xhc3Mgb2YgU2VydmljZQorKiBIVyAgICAgICAgICBIYXJkd2FyZQorKiBN QkEgICAgICAgICBNZW1vcnkgQmFuZHdpZHRoIEFsbG9jYXRpb24KKyogTVNScyAgICAgICAgTWFj aGluZSBTcGVjaWZpYyBSZWdpc3RlcnMKKyogUFNSICAgICAgICAgSW50ZWwgUGxhdGZvcm0gU2hh cmVkIFJlc291cmNlCisqIFRIUlRMICAgICAgIFRocm90dGxlIHZhbHVlIG9yIGRlbGF5IHZhbHVl CisKKyMgT3ZlcnZpZXcKKworVGhlIE1lbW9yeSBCYW5kd2lkdGggQWxsb2NhdGlvbiAoTUJBKSBm ZWF0dXJlIHByb3ZpZGVzIGluZGlyZWN0IGFuZCBhcHByb3hpbWF0ZQorY29udHJvbCBvdmVyIG1l bW9yeSBiYW5kd2lkdGggYXZhaWxhYmxlIHBlci1jb3JlLiBUaGlzIGZlYXR1cmUgcHJvdmlkZXMg T1MvCitoeXBlcnZpc29yIHRoZSBhYmlsaXR5IHRvIHNsb3cgbWlzYmVoYXZpbmcgYXBwcy9kb21h aW5zIGJ5IHVzaW5nIGEgY3JlZGl0LWJhc2VkCit0aHJvdHRsaW5nIG1lY2hhbmlzbS4KKworIyBV c2VyIGRldGFpbHMKKworKiBGZWF0dXJlIEVuYWJsaW5nOgorCisgIEFkZCAicHNyPW1iYSIgdG8g Ym9vdCBsaW5lIHBhcmFtZXRlciB0byBlbmFibGUgTUJBIGZlYXR1cmUuCisKKyogeGwgaW50ZXJm YWNlczoKKworICAxLiBgcHNyLW1iYS1zaG93IFtkb21haW4taWRdYDoKKworICAgICBTaG93IG1l bW9yeSBiYW5kd2lkdGggdGhyb3R0bGluZyBmb3IgZG9tYWluLiBVbmRlciBkaWZmZXJlbnQgbW9k ZXMsIGl0CisgICAgIHNob3dzIGRpZmZlcmVudCB0eXBlIG9mIGRhdGEuCisKKyAgICAgVGhlcmUg YXJlIHR3byBtb2RlczoKKyAgICAgTGluZWFyIG1vZGU6IHRoZSByZXNwb25zZSBvZiB0aHJvdHRs aW5nIHZhbHVlIGlzIGxpbmVhci4KKyAgICAgTm9uLWxpbmVhciBtb2RlOiB0aGUgcmVzcG9uc2Ug b2YgdGhyb3R0bGluZyB2YWx1ZSBpcyBub24tbGluZWFyLgorCisgICAgIEZvciBsaW5lYXIgbW9k ZSwgaXQgc2hvd3MgdGhlIGRlY2ltYWwgdmFsdWUuIEZvciBub24tbGluZWFyIG1vZGUsIGl0IHNo b3dzCisgICAgIGhleGFkZWNpbWFsIHZhbHVlLgorCisgIDIuIGBwc3ItbWJhLXNldCBbT1BUSU9O U10gPGRvbWFpbi1pZD4gPHRocm90dGxpbmc+YDoKKworICAgICBTZXQgbWVtb3J5IGJhbmR3aWR0 aCB0aHJvdHRsaW5nIGZvciBkb21haW4uCisKKyAgICAgT3B0aW9uczoKKyAgICAgJy1zJzogU3Bl Y2lmeSB0aGUgc29ja2V0IHRvIHByb2Nlc3MsIG90aGVyd2lzZSBhbGwgc29ja2V0cyBhcmUgcHJv Y2Vzc2VkLgorCisgICAgIFRocm90dGxpbmcgdmFsdWUgc2V0IGluIHJlZ2lzdGVyIGltcGxpZXMg dGhlIGFwcHJveGltYXRlIGFtb3VudCBvZiBkZWxheWluZworICAgICB0aGUgdHJhZmZpYyBiZXR3 ZWVuIGNvcmUgYW5kIG1lbW9yeS4gVGhlIGhpZ2hlciB0aHJvdHRsaW5nIHZhbHVlIHJlc3VsdHMg aW4KKyAgICAgbG93ZXIgYmFuZHdpZHRoLiBUaGUgbWF4IHRocm90dGxpbmcgdmFsdWUgKE1CQV9N QVgpIHN1cHBvcnRlZCBjYW4gYmUgZ290CisgICAgIHRocm91Z2ggQ1BVSUQuCisKKyAgICAgTGlu ZWFyIG1vZGU6IHRoZSBpbnB1dCBwcmVjaXNpb24gaXMgZGVmaW5lZCBhcyAxMDAtKE1CQV9NQVgp LiBGb3IgaW5zdGFuY2UsCisgICAgIGlmIHRoZSBNQkFfTUFYIHZhbHVlIGlzIDkwLCB0aGUgaW5w dXQgcHJlY2lzaW9uIGlzIDEwJS4gVmFsdWVzIG5vdCBhbiBldmVuCisgICAgIG11bHRpcGxlIG9m IHRoZSBwcmVjaXNpb24gKGUuZy4sIDEyJSkgd2lsbCBiZSByb3VuZGVkIGRvd24gKGUuZy4sIHRv IDEwJQorICAgICBkZWxheSBhcHBsaWVkKSBieSBIVyBhdXRvbWF0aWNhbGx5LgorCisgICAgIE5v bi1saW5lYXIgbW9kZTogaW5wdXQgZGVsYXkgdmFsdWVzIGFyZSBwb3dlcnMtb2YtdHdvIGZyb20g emVybyB0byB0aGUKKyAgICAgTUJBX01BWCB2YWx1ZSBmcm9tIENQVUlELiBJbiB0aGlzIGNhc2Ug YW55IHZhbHVlcyBub3QgYSBwb3dlciBvZiB0d28gd2lsbAorICAgICBiZSByb3VuZGVkIGRvd24g dGhlIG5leHQgbmVhcmVzdCBwb3dlciBvZiB0d28gYnkgSFcgYXV0b21hdGljYWxseS4KKworIyBU ZWNobmljYWwgZGV0YWlscworCitNQkEgaXMgYSBtZW1iZXIgb2YgSW50ZWwgUFNSIGZlYXR1cmVz LCBpdCBzaGFyZXMgdGhlIGJhc2UgUFNSIGluZnJhc3RydWN0dXJlCitpbiBYZW4uCisKKyMjIEhh cmR3YXJlIHBlcnNwZWN0aXZlCisKKyAgTUJBIGRlZmluZXMgYSByYW5nZSBvZiBNU1JzIHRvIHN1 cHBvcnQgc3BlY2lmeWluZyBhIGRlbGF5IHZhbHVlIChUaHJ0bCkgcGVyCisgIENPUywgd2l0aCBk ZXRhaWxzIGJlbG93LgorCisgIGBgYAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgTVNSIChwZXIgc29ja2V0KSAgICAgICAgICAgfCAgICBB ZGRyZXNzICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tKworICAgfCBJQTMyX0wyX1FPU19FeHRfQldfVGhydGxfMCB8ICAgICAweEQ1MCAgICAg IHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisg ICB8IC4uLiAgICAgICAgICAgICAgICAgICAgICAgIHwgIC4uLiAgICAgICAgICAgfAorICAgKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgSUEzMl9M Ml9RT1NfRXh0X0JXX1RocnRsX24gfCAgICAgMHhENTArbiAgICB8CisgICArLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKworICBgYGAKKworICBXaGVuIGNvbnRl eHQgc3dpdGNoIGhhcHBlbnMsIHRoZSBDT1MgSUQgb2YgZG9tYWluIGlzIHdyaXR0ZW4gdG8gcGVy LXRocmVhZCBNU1IKKyAgYElBMzJfUFFSX0FTU09DYCwgYW5kIHRoZW4gaGFyZHdhcmUgZW5mb3Jj ZXMgYmFuZHdpZHRoIGFsbG9jYXRpb24gYWNjb3JkaW5nCisgIHRvIHRoZSB0aHJvdHRsaW5nIHZh bHVlIHN0b3JlZCBpbiB0aGUgVGhydGwgTVNSIHJlZ2lzdGVyLgorCisjIyBUaGUgcmVsYXRpb25z aGlwIGJldHdlZW4gTUJBIGFuZCBDQVQvQ0RQCisKKyAgR2VuZXJhbGx5IHNwZWFraW5nLCBNQkEg aXMgY29tcGxldGVseSBpbmRlcGVuZGVudCBvZiBDQVQvQ0RQLCBhbmQgYW55CisgIGNvbWJpbmF0 aW9uIG1heSBiZSBhcHBsaWVkIGF0IGFueSB0aW1lLCBlLmcuIGVuYWJsaW5nIE1CQSB3aXRoIENB VAorICBkaXNhYmxlZC4KKworICBCdXQgaXQgbmVlZHMgdG8gYmUgbm90aWNlZCB0aGF0IE1CQSBz aGFyZXMgQ09TIGluZnJhc3RydWN0dXJlIHdpdGggQ0FULAorICBhbHRob3VnaCBNQkEgaXMgZW51 bWVyYXRlZCBieSBkaWZmZXJlbnQgQ1BVSUQgbGVhZiBmcm9tIENBVCAod2hpY2gKKyAgaW5kaWNh dGVzIHRoYXQgdGhlIG1heCBDT1Mgb2YgTUJBIG1heSBiZSBkaWZmZXJlbnQgZnJvbSBDQVQpLiBJ biBzb21lCisgIGNhc2VzLCBhIGRvbWFpbiBpcyBwZXJtaXR0ZWQgdG8gaGF2ZSBhIENPUyB0aGF0 IGlzIGJleW9uZCBvbmUgKG9yIG1vcmUpCisgIG9mIFBTUiBmZWF0dXJlcyBidXQgd2l0aGluIHRo ZSBvdGhlcnMuIEZvciBpbnN0YW5jZSwgbGV0J3MgYXNzdW1lIHRoZSBtYXgKKyAgQ09TIG9mIE1C QSBpcyA4IGJ1dCB0aGUgbWF4IENPUyBvZiBMMyBDQVQgaXMgMTYsIHdoZW4gYSBkb21haW4gaXMg YXNzaWduZWQKKyAgOSBhcyBDT1MsIHRoZSBMMyBDQVQgQ0JNIGFzc29jaWF0ZWQgdG8gQ09TIDkg d291bGQgYmUgZW5mb3JjZWQsIGJ1dCBmb3IgTUJBLAorICB0aGUgSFcgd29ya3MgYXMgZGVmYXVs dCB2YWx1ZSBpcyBzZXQgc2luY2UgQ09TIDkgaXMgYmV5b25kIHRoZSBtYXggQ09TICg4KQorICBv ZiBNQkEuCisKKyMjIERlc2lnbiBPdmVydmlldworCisqIENvcmUgQ09TL1RocnRsIGFzc29jaWF0 aW9uCisKKyAgV2hlbiBlbmZvcmNpbmcgTWVtb3J5IEJhbmR3aWR0aCBBbGxvY2F0aW9uLCBhbGwg Y29yZXMgb2YgZG9tYWlucyBoYXZlCisgIHRoZSBzYW1lIGRlZmF1bHQgVGhydGwgTVNSIChDT1Mw KSB3aGljaCBzdG9yZXMgdGhlIHNhbWUgVGhydGwgKDApLiBUaGUKKyAgZGVmYXVsdCBUaHJ0bCBN U1IgaXMgdXNlZCBvbmx5IGluIGh5cGVydmlzb3IgYW5kIGlzIHRyYW5zcGFyZW50IHRvIHRvb2wg c3RhY2sKKyAgYW5kIHVzZXIuCisKKyAgU3lzdGVtIGFkbWluaXN0cmF0b3JzIGNhbiBjaGFuZ2Ug UFNSIGFsbG9jYXRpb24gcG9saWN5IGF0IHJ1bnRpbWUgYnkKKyAgdXNpbmcgdGhlIHRvb2wgc3Rh Y2suIFNpbmNlIE1CQSBzaGFyZXMgQ09TIElEIHdpdGggQ0FUL0NEUCwgYSBDT1MgSUQKKyAgY29y cmVzcG9uZHMgdG8gYSAyLXR1cGxlLCBsaWtlIFtDQk0sIFRocnRsXSB3aXRoIG9ubHktQ0FUIGVu YWJsZWQsIHdoZW4gQ0RQCisgIGlzIGVuYWJsZWQsIHRoZSBDT1MgSUQgY29ycmVzcG9uZHMgdG8g YSAzLXR1cGxlLCBsaWtlIFtDb2RlX0NCTSwgRGF0YV9DQk0sCisgIFRocnRsXS4gSWYgbmVpdGhl ciBDQVQgbm9yIENEUCBpcyBlbmFibGVkLCB0aGluZ3MgYXJlIGVhc2llciwgc2luY2Ugb25lIENP UworICBJRCBjb3JyZXNwb25kcyB0byBvbmUgVGhydGwuCisKKyogVkNQVSBzY2hlZHVsZQorCisg IFRoaXMgcGFydCByZXVzZXMgQ0FUIENPUyBpbmZyYXN0cnVjdHVyZS4KKworKiBNdWx0aS1zb2Nr ZXRzCisKKyAgRGlmZmVyZW50IHNvY2tldHMgbWF5IGhhdmUgZGlmZmVyZW50IE1CQSBhYmlsaXR5 IChsaWtlIG1heCBDT1MpCisgIGFsdGhvdWdoIGl0IGlzIGNvbnNpc3RlbnQgb24gdGhlIHNhbWUg c29ja2V0LiBTbyB0aGUgY2FwYWJpbGl0eQorICBvZiBwZXItc29ja2V0IE1CQSBpcyBzcGVjaWZp ZWQuCisKKyAgVGhpcyBwYXJ0IHJldXNlcyBDQVQgQ09TIGluZnJhc3RydWN0dXJlLgorCisjIyBJ bXBsZW1lbnRhdGlvbiBEZXNjcmlwdGlvbgorCisqIEh5cGVydmlzb3IgaW50ZXJmYWNlczoKKwor ICAxLiBCb290IGxpbmUgcGFyYW06ICJwc3I9bWJhIiB0byBlbmFibGUgdGhlIGZlYXR1cmUuCisK KyAgMi4gU1lTQ1RMOgorICAgICAgICAgIC0gWEVOX1NZU0NUTF9QU1JfTUJBX2dldF9pbmZvOiBH ZXQgc3lzdGVtIE1CQSBpbmZvcm1hdGlvbi4KKworICAzLiBET01DVEw6CisgICAgICAgICAgLSBY RU5fRE9NQ1RMX1BTUl9NQkFfT1BfR0VUX1RIUlRMOiBHZXQgdGhyb3R0bGluZyBmb3IgYSBkb21h aW4uCisgICAgICAgICAgLSBYRU5fRE9NQ1RMX1BTUl9NQkFfT1BfU0VUX1RIUlRMOiBTZXQgdGhy b3R0bGluZyBmb3IgYSBkb21haW4uCisKKyogeGwgaW50ZXJmYWNlczoKKworICAxLiBwc3ItbWJh LXNob3cgW2RvbWFpbi1pZF0KKyAgICAgICAgICBTaG93IHN5c3RlbS9kb21haW4gcnVudGltZSBN QkEgdGhyb3R0bGluZyB2YWx1ZS4gRm9yIGxpbmVhciBtb2RlLAorICAgICAgICAgIGl0IHNob3dz IHRoZSBkZWNpbWFsIHZhbHVlLiBGb3Igbm9uLWxpbmVhciBtb2RlLCBpdCBzaG93cyBoZXhhZGVj aW1hbAorICAgICAgICAgIHZhbHVlLgorICAgICAgICAgID0+IFhFTl9TWVNDVExfUFNSX01CQV9n ZXRfaW5mby9YRU5fRE9NQ1RMX1BTUl9NQkFfT1BfR0VUX1RIUlRMCisKKyAgMi4gcHNyLW1iYS1z ZXQgW09QVElPTlNdIDxkb21haW4taWQ+IDx0aHJvdHRsaW5nPgorICAgICAgICAgIFNldCBiYW5k d2lkdGggdGhyb3R0bGluZyBmb3IgYSBkb21haW4uCisgICAgICAgICAgPT4gWEVOX0RPTUNUTF9Q U1JfTUJBX09QX1NFVF9USFJUTAorCisgIDMuIHBzci1od2luZm8KKyAgICAgICAgICBTaG93IFBT UiBIVyBpbmZvcm1hdGlvbiwgaW5jbHVkaW5nIEwzIENBVC9DRFAvTDIgQ0FUL01CQS4KKyAgICAg ICAgICA9PiBYRU5fU1lTQ1RMX1BTUl9NQkFfZ2V0X2luZm8KKworKiBLZXkgZGF0YSBzdHJ1Y3R1 cmU6CisKKyAgMS4gRmVhdHVyZSBIVyBpbmZvCisKKyAgICAgYGBgCisgICAgIHN0cnVjdCB7Cisg ICAgICAgICB1bnNpZ25lZCBpbnQgdGhydGxfbWF4OworICAgICAgICAgYm9vbCBsaW5lYXI7Cisg ICAgIH0gbWJhOworCisgICAgIC0gTWVtYmVyIGB0aHJ0bF9tYXhgCisKKyAgICAgICBgdGhydGxf bWF4YCBpcyB0aGUgbWF4IHRocm90dGxpbmcgdmFsdWUgdG8gYmUgc2V0LCBpLmUuIE1CQV9NQVgu CisKKyAgICAgLSBNZW1iZXIgYGxpbmVhcmAKKworICAgICAgIGBsaW5lYXJgIG1lYW5zIHRoZSBy ZXNwb25zZSBvZiBkZWxheSB2YWx1ZSBpcyBsaW5lYXIgb3Igbm90LgorCisgICAgIEFzIG1lbnRp b25lZCBhYm92ZSwgTUJBIGlzIGEgbWVtYmVyIG9mIEludGVsIFBTUiBmZWF0dXJlcywgaXQgd291 bGQKKyAgICAgc2hhcmUgdGhlIGJhc2UgUFNSIGluZnJhc3RydWN0dXJlIGluIFhlbi4gRm9yIGV4 YW1wbGUsIHRoZSAnY29zX21heCcKKyAgICAgaXMgYSBjb21tb24gSFcgcHJvcGVydHkgZm9yIGFs bCBmZWF0dXJlcy4gU28sIGZvciBvdGhlciBkYXRhIHN0cnVjdHVyZQorICAgICBkZXRhaWxzLCBw bGVhc2UgcmVmZXIgJ2ludGVsX3Bzcl9jYXRfY2RwLnBhbmRvYycuCisKKyMgTGltaXRhdGlvbnMK KworTUJBIGNhbiBvbmx5IHdvcmsgb24gSFcgd2hpY2ggZW5hYmxlcyBpdCAoY2hlY2sgYnkgQ1BV SUQpLgorCisjIFRlc3RpbmcKKworV2UgY2FuIGV4ZWN1dGUgdGhlc2UgY29tbWFuZHMgdG8gdmVy aWZ5IE1CQSBvbiBkaWZmZXJlbnQgSFdzIHN1cHBvcnRpbmcgdGhlbS4KKworRm9yIGV4YW1wbGU6 CisgIDEuIFVzZXIgY2FuIGdldCB0aGUgTUJBIGhhcmR3YXJlIGluZm8gdGhyb3VnaCAncHNyLWh3 aW5mbycgY29tbWFuZC4gRnJvbQorICAgICByZXN1bHQsIHVzZXIgY2FuIGtub3cgaWYgdGhpcyBo YXJkd2FyZSB3b3JrcyB1bmRlciBsaW5lYXIgbW9kZSBvciBub24tCisgICAgIGxpbmVhciBtb2Rl LCB0aGUgbWF4IHRocm90dGxpbmcgdmFsdWUgKE1CQV9NQVgpIGFuZCBzbyBvbi4KKworICAgIHJv b3RAOn4kIHhsIHBzci1od2luZm8gLS1tYmEKKyAgICBNZW1vcnkgQmFuZHdpZHRoIEFsbG9jYXRp b24gKE1CQSk6CisgICAgU29ja2V0IElEICAgICAgIDogMAorICAgIExpbmVhciBNb2RlICAgICA6 IEVuYWJsZWQKKyAgICBNYXhpbXVtIENPUyAgICAgOiA3CisgICAgTWF4aW11bSBUaHJvdHRsaW5n IFZhbHVlOiA5MAorICAgIERlZmF1bHQgVGhyb3R0bGluZyBWYWx1ZTogMAorCisgIDIuIFRoZW4s IHVzZXIgY2FuIHNldCBhIHRocm90dGxpbmcgdmFsdWUgdG8gYSBkb21haW4uIEZvciBleGFtcGxl LCBzZXQgJzB4YScsCisgICAgIGkuZSAxMCUgZGVsYXkuCisKKyAgICByb290QDp+JCB4bCBwc3It bWJhLXNldCAxIDB4YQorCisgIDMuIFVzZXIgY2FuIGNoZWNrIHRoZSBjdXJyZW50IGNvbmZpZ3Vy YXRpb24gb2YgdGhlIGRvbWFpbiB0aHJvdWdoCisgICAgICdwc3ItbWFiLXNob3cnLiBGb3IgbGlu ZWFyIG1vZGUsIHRoZSBkZWNpbWFsIHZhbHVlIGlzIHNob3duLgorCisgICAgcm9vdEA6fiQgeGwg cHNyLW1iYS1zaG93IDEKKyAgICBTb2NrZXQgSUQgICAgICAgOiAwCisgICAgRGVmYXVsdCBUSFJU TCAgIDogMAorICAgICAgIElEICAgICAgICAgICAgICAgICAgICAgTkFNRSAgICAgICAgICAgIFRI UlRMCisgICAgICAgIDEgICAgICAgICAgICAgICAgIHVidW50dTE0ICAgICAgICAgICAgIDEwCisK KyMgQXJlYXMgZm9yIGltcHJvdmVtZW50CisKK04vQQorCisjIEtub3duIGlzc3VlcworCitOL0EK KworIyBSZWZlcmVuY2VzCisKKyJJTlRFTCBSRVNPVVJDRSBESVJFQ1RPUiBURUNITk9MT0dZIChJ TlRFTCBSRFQpIEFMTE9DQVRJT04gRkVBVFVSRVMiIFtJbnRlbCA2NCBhbmQgSUEtMzIgQXJjaGl0 ZWN0dXJlcyBTb2Z0d2FyZSBEZXZlbG9wZXIgTWFudWFscywgdm9sM10oaHR0cDovL3d3dy5pbnRl bC5jb20vY29udGVudC93d3cvdXMvZW4vcHJvY2Vzc29ycy9hcmNoaXRlY3R1cmVzLXNvZnR3YXJl LWRldmVsb3Blci1tYW51YWxzLmh0bWwpCisKKyMgSGlzdG9yeQorCistLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K K0RhdGUgICAgICAgUmV2aXNpb24gVmVyc2lvbiAgTm90ZXMKKy0tLS0tLS0tLS0gLS0tLS0tLS0g LS0tLS0tLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorMjAx Ny0wMS0xMCAxLjAgICAgICBYZW4gNC45ICBEZXNpZ24gZG9jdW1lbnQgd3JpdHRlbgorMjAxNy0w Ny0xMCAxLjEgICAgICBYZW4gNC4xMCBDaGFuZ2VzOgorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAxLiBNb2RpZnkgZGF0YSBzdHJ1Y3R1cmUgYWNjb3JkaW5nIHRvIGxhdGVzdAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlczsKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgMi4gQWRkIGNvbnRlbnQgZm9yICdBcmVhcyBmb3IgaW1wcm92ZW1lbnQnOworICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAzLiBPdGhlciBtaW5vciBjaGFuZ2VzLgorMjAxNy0wOC0w OSAxLjIgICAgICBYZW4gNC4xMCBDaGFuZ2VzOgorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAxLiBSZW1vdmUgYSBzcGVjaWFsIGNoYXJhY3RlciB0byBhdm9pZCBlcnJvciB3aGVuCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1aWxkaW5nIHBhbmRvYy4KKzIwMTctMDgtMTUg MS4zICAgICAgWGVuIDQuMTAgQ2hhbmdlczoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MS4gQWRkIHRlcm1pbm9sb2d5ICdIVycuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIu IENoYW5nZSAnQ09TIElEIG9mIFZDUFUnIHRvICdDT1MgSUQgb2YgZG9tYWluJy4KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgMy4gQ2hhbmdlICdDT1MgcmVnaXN0ZXInIHRvICdUaHJ0bCBN U1InLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0LiBFeHBsYWluIHRoZSB2YWx1ZSBz aG93biBmb3IgJ3Bzci1tYmEtc2hvdycgdW5kZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZGlmZmVyZW50IG1vZGVzLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICA1LiBS ZW1vdmUgY29udGVudCBpbiAnQXJlYXMgZm9yIGltcHJvdmVtZW50Jy4KKzIwMTctMDgtMTYgMS40 ICAgICAgWGVuIDQuMTAgQ2hhbmdlczoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMS4g QWRkICc8PicgZm9yIG1hbmRhdG9yeSBhcmd1bWVudC4KKzIwMTctMDgtMzAgMS41ICAgICAgWGVu IDQuMTAgQ2hhbmdlczoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMS4gTW9kaWZ5IHdv cmRzIGluICdPdmVydmlldycgdG8gbWFrZSBpdCBlYXNpZXIgdG8KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdW5kZXJzdGFuZC4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Mi4gRXhwbGFpbiAnbGluZWFyL25vbi1saW5lYXInIG1vZGVzIGJlZm9yZSBtZW50aW9uCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW0uCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIDMuIEV4cGxhaW4gdGhyb3R0bGluZyB2YWx1ZSBtb3JlIGFjY3VyYXRlLgorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA0LiBFeHBsYWluICdNQkFfTUFYJy4KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgNS4gQ29ycmVjdCBzb21lIHdvcmRzIGluICdEZXNpZ24gT3ZlcnZp ZXcnLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICA2LiBDaGFuZ2UgJ21iYV9pbmZvJyB0 byAnbWJhJyBhY2NvcmRpbmcgdG8gY29kZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBjaGFuZ2VzLiBBbHNvLCBtb2RpZnkgY29udGVudHMgb2YgaXQuCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDcuIEFkZCBjb250ZXh0IGluICdUZXN0aW5nJyBwYXJ0IHRvIG1ha2UgdGhp bmdzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vcmUgY2xlYXIuCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDguIFJlbW92ZSAnbjw2NCcgdG8gYXZvaWQgb3V0LW9mLXN5 bmMuCistLS0tLS0tLS0tIC0tLS0tLS0tIC0tLS0tLS0tIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KLS0gCjEuOS4xCgoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxA bGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==