From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: [PATCH v3 1/4] xen: sched/credit1: make vcpu_migration_delay per-cpupool Date: Thu, 15 Mar 2018 18:51:23 +0100 Message-ID: <152113628298.4918.7803242816493309324.stgit@Palanthas.fritz.box> References: <152113608271.4918.9160597572418705851.stgit@Palanthas.fritz.box> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ewX2L-0007WY-MW for xen-devel@lists.xenproject.org; Thu, 15 Mar 2018 17:51:33 +0000 Received: by mail-wm0-f68.google.com with SMTP id w128so12129277wmw.0 for ; Thu, 15 Mar 2018 10:51:26 -0700 (PDT) In-Reply-To: <152113608271.4918.9160597572418705851.stgit@Palanthas.fritz.box> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: George Dunlap , Andrew Cooper List-Id: xen-devel@lists.xenproject.org UmlnaHQgbm93LCB2Q1BVIG1pZ3JhdGlvbiBkZWxheSBpcyBjb250cm9sbGVkIGJ5CnRoZSB2Y3B1 X21pZ3JhdGlvbl9kZWxheSBib290IHBhcmFtZXRlci4gVGhpcyBtZWFucwp0aGUgc2FtZSB2YWx1 ZSB3aWxsIGFsd2F5cyBiZSB1c2VkIGZvciBldmVyeSBpbnN0YW5jZQpvZiBDcmVkaXQxLCBpbiBh bnkgY3B1cG9vbCB0aGF0IHdpbGwgYmUgY3JlYXRlZC4KCkFsc28sIGluIG9yZGVyIHRvIGdldCBh bmQgc2V0IHN1Y2ggdmFsdWUsIGEgc3BlY2lhbApwdXJwb3NlIGxpYnhjIGludGVyZmFjZSBpcyBk ZWZpbmVkLCBhbmQgdXNlZCBieSB0aGUKeGVucG0gdG9vbC4gQW5kIHRoaXMgaXMgcHJvYmxlbWF0 aWMgaWYgWGVuIGlzIGJ1aWx0CndpdGhvdXQgQ3JlZGl0MSBzdXBwb3J0LgoKVGhpcyBjb21taXQg YWRkcyBhIHZjcHVfbWlncl9kZWxheSBmaWVsZCBpbnNpZGUKc3RydWN0IGNzY2hlZF9wcml2YXRl LCBzbyB0aGF0IHdlIGNhbiBnZXQvc2V0IHRoZQptaWdyYXRpb24gZGVsYXkgaW5kZXBlbnRseSBm b3IgZWFjaCBDcmVkaXQxIGluc3RhbmNlLAppbiBkaWZmZXJlbnQgY3B1cG9vbHMuCgpHZXR0aW5n IGFuZCBzZXR0aW5nIG5vdyBoYXBwZW5zIHZpYSBYRU5fU1lTQ1RMX1NDSEVET1BfKiwKd2hpY2gg aXMgbXVjaCBiZXR0ZXIgc3VpdGVkIGZvciB0aGlzIHBhcmFtZXRlci4KClRoZSB2YWx1ZSBvZiB0 aGUgYm9vdCB0aW1lIHBhcmFtZXRlciBpcyB1c2VkIGZvcgppbml0aWFsaXppbmcgdGhlIHZjcHVf bWlncl9kZWxheSBmaWVsZCBvZiB0aGUgcHJpdmF0ZQpzdHJ1Y3R1cmUgb2YgYWxsIHRoZSBzY2hl ZHVsZXIgaW5zdGFuY2VzLCB3aGVuIHRoZXkncmUKY3JlYXRlZC4KCldoaWxlIHRoZXJlLCBzYXZl IHJlYWRpbmcgTk9XKCkgYW5kIGRvaW5nIGFueSBzX3RpbWVfdApvcGVyYXRpb24sIHdoZW4gdGhl IG1pZ3JhdGlvbiBkZWxheSBvZiBhIHNjaGVkdWxlciBpcwp6ZXJvIChhcyBpdCBpcywgYnkgZGVm YXVsdCksIGluCl9fY3NjaGVkX3ZjcHVfaXNfY2FjaGVfaG90KCkuCgpGaW5hbGx5LCBub3RlIHRo YXQsIGZyb20gdGhpcyBjb21taXQgb24sIHVzaW5nIGB4ZW5wbQp7c2V0LGdldH0tdmNwdS1taWdy YXRpb24tZGVsYXknIHdpbGwgaGF2ZSBubyBlZmZlY3QKYW55IGxvbmdlci4gQSBzdWJzZXF1ZW50 IGNvbW1pdCB3aWxsIHJlLWVuYWJsZSBpdCwgZm9yCnRoZSBzYWtlIG9mIGJhY2t3YXJkcy1jb21w YXRpYmlsaXR5LgoKU2lnbmVkLW9mZi1ieTogRGFyaW8gRmFnZ2lvbGkgPGRmYWdnaW9saUBzdXNl LmNvbT4KLS0tCkNjOiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGV1LmNpdHJpeC5jb20+ CkNjOiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgotLS0KQ2hhbmdl cyBmcm9tIHYxOgoqIGltcHJvdmVkIHRoZSBjaGFuZ2Vsb2csIGFzIHN1Z2dlc3RlZDsKKiBhZGQg dGhlIF9VUyBzdWZmaXggdG8gWEVOX1NZU0NUTF9DU0NIRURfTUdSX0RMWV9NQVg7CiogYWRkIHRo ZSBfdXMgc3VmZml4IHZjcHVfbWlncmF0aW9uX2RlbGF5IHRvbzsKKiBmaXggd3JvbmcgdGltZSBj b252ZXJzaW9uczsKKiBkcm9wIHJlZHVuZGFudCBhbmQgd3JvbmcgY2hlY2tzIGZvciBbcGFyYW1z XS0+dmNwdV9taWdyYXRpb25fZGVsYXkgdG8gYmUgMC4KLS0tCiB4ZW4vY29tbW9uL3NjaGVkX2Ny ZWRpdC5jICAgfCAgIDQ1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0t LS0KIHhlbi9pbmNsdWRlL3B1YmxpYy9zeXNjdGwuaCB8ICAgIDYgKysrKysrCiAyIGZpbGVzIGNo YW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hl bi9jb21tb24vc2NoZWRfY3JlZGl0LmMgYi94ZW4vY29tbW9uL3NjaGVkX2NyZWRpdC5jCmluZGV4 IDdjNDBlZTJkMDAuLjFmNGRhNjVkOTggMTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24vc2NoZWRfY3Jl ZGl0LmMKKysrIGIveGVuL2NvbW1vbi9zY2hlZF9jcmVkaXQuYwpAQCAtMjE0LDcgKzIxNCw3IEBA IHN0cnVjdCBjc2NoZWRfcHJpdmF0ZSB7CiAKICAgICAvKiBQZXJpb2Qgb2YgbWFzdGVyIGFuZCB0 aWNrIGluIG1pbGxpc2Vjb25kcyAqLwogICAgIHVuc2lnbmVkIGludCB0aWNrX3BlcmlvZF91cywg dGlja3NfcGVyX3RzbGljZTsKLSAgICBzX3RpbWVfdCByYXRlbGltaXQsIHRzbGljZTsKKyAgICBz X3RpbWVfdCByYXRlbGltaXQsIHRzbGljZSwgdmNwdV9taWdyX2RlbGF5OwogCiAgICAgc3RydWN0 IGxpc3RfaGVhZCBhY3RpdmVfc2RvbTsKICAgICB1aW50MzJfdCB3ZWlnaHQ7CkBAIC02NzcsMjQg KzY3NywyNCBAQCBfX2NzY2hlZF92Y3B1X2NoZWNrKHN0cnVjdCB2Y3B1ICp2YykKICAqIGltcGxp Y2l0IG92ZXJoZWFkcyBzdWNoIGFzIGNhY2hlLXdhcm1pbmcuIDFtcyAoMTAwMCkgaGFzIGJlZW4g bWVhc3VyZWQKICAqIGFzIGEgZ29vZCB2YWx1ZS4KICAqLwotc3RhdGljIHVuc2lnbmVkIGludCB2 Y3B1X21pZ3JhdGlvbl9kZWxheTsKLWludGVnZXJfcGFyYW0oInZjcHVfbWlncmF0aW9uX2RlbGF5 IiwgdmNwdV9taWdyYXRpb25fZGVsYXkpOworc3RhdGljIHVuc2lnbmVkIGludCB2Y3B1X21pZ3Jh dGlvbl9kZWxheV91czsKK2ludGVnZXJfcGFyYW0oInZjcHVfbWlncmF0aW9uX2RlbGF5IiwgdmNw dV9taWdyYXRpb25fZGVsYXlfdXMpOwogCiB2b2lkIHNldF92Y3B1X21pZ3JhdGlvbl9kZWxheSh1 bnNpZ25lZCBpbnQgZGVsYXkpCiB7Ci0gICAgdmNwdV9taWdyYXRpb25fZGVsYXkgPSBkZWxheTsK KyAgICB2Y3B1X21pZ3JhdGlvbl9kZWxheV91cyA9IGRlbGF5OwogfQogCiB1bnNpZ25lZCBpbnQg Z2V0X3ZjcHVfbWlncmF0aW9uX2RlbGF5KHZvaWQpCiB7Ci0gICAgcmV0dXJuIHZjcHVfbWlncmF0 aW9uX2RlbGF5OworICAgIHJldHVybiB2Y3B1X21pZ3JhdGlvbl9kZWxheV91czsKIH0KIAotc3Rh dGljIGlubGluZSBpbnQKLV9fY3NjaGVkX3ZjcHVfaXNfY2FjaGVfaG90KHN0cnVjdCB2Y3B1ICp2 KQorc3RhdGljIGlubGluZSBib29sCitfX2NzY2hlZF92Y3B1X2lzX2NhY2hlX2hvdChjb25zdCBz dHJ1Y3QgY3NjaGVkX3ByaXZhdGUgKnBydiwgc3RydWN0IHZjcHUgKnYpCiB7Ci0gICAgaW50IGhv dCA9ICgoTk9XKCkgLSB2LT5sYXN0X3J1bl90aW1lKSA8Ci0gICAgICAgICAgICAgICAoKHVpbnQ2 NF90KXZjcHVfbWlncmF0aW9uX2RlbGF5ICogMTAwMHUpKTsKKyAgICBib29sIGhvdCA9IHBydi0+ dmNwdV9taWdyX2RlbGF5ICYmCisgICAgICAgICAgICAgICAoTk9XKCkgLSB2LT5sYXN0X3J1bl90 aW1lKSA8IHBydi0+dmNwdV9taWdyX2RlbGF5OwogCiAgICAgaWYgKCBob3QgKQogICAgICAgICBT Q0hFRF9TVEFUX0NSQU5LKHZjcHVfaG90KTsKQEAgLTcwMyw3ICs3MDMsOCBAQCBfX2NzY2hlZF92 Y3B1X2lzX2NhY2hlX2hvdChzdHJ1Y3QgdmNwdSAqdikKIH0KIAogc3RhdGljIGlubGluZSBpbnQK LV9fY3NjaGVkX3ZjcHVfaXNfbWlncmF0ZWFibGUoc3RydWN0IHZjcHUgKnZjLCBpbnQgZGVzdF9j cHUsIGNwdW1hc2tfdCAqbWFzaykKK19fY3NjaGVkX3ZjcHVfaXNfbWlncmF0ZWFibGUoY29uc3Qg c3RydWN0IGNzY2hlZF9wcml2YXRlICpwcnYsIHN0cnVjdCB2Y3B1ICp2YywKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaW50IGRlc3RfY3B1LCBjcHVtYXNrX3QgKm1hc2spCiB7CiAgICAg LyoKICAgICAgKiBEb24ndCBwaWNrIHVwIHdvcmsgdGhhdCdzIGhvdCBvbiBwZWVyIFBDUFUsIG9y IHRoYXQgY2FuJ3QgKG9yCkBAIC03MTQsNyArNzE1LDcgQEAgX19jc2NoZWRfdmNwdV9pc19taWdy YXRlYWJsZShzdHJ1Y3QgdmNwdSAqdmMsIGludCBkZXN0X2NwdSwgY3B1bWFza190ICptYXNrKQog ICAgICAqLwogICAgIEFTU0VSVCghdmMtPmlzX3J1bm5pbmcpOwogCi0gICAgcmV0dXJuICFfX2Nz Y2hlZF92Y3B1X2lzX2NhY2hlX2hvdCh2YykgJiYKKyAgICByZXR1cm4gIV9fY3NjaGVkX3ZjcHVf aXNfY2FjaGVfaG90KHBydiwgdmMpICYmCiAgICAgICAgICAgIGNwdW1hc2tfdGVzdF9jcHUoZGVz dF9jcHUsIG1hc2spOwogfQogCkBAIC0xMjUxLDcgKzEyNTIsOCBAQCBjc2NoZWRfc3lzX2NudGwo Y29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLAogICAgICAgICAgICAgIHx8IChwYXJhbXMtPnJh dGVsaW1pdF91cwogICAgICAgICAgICAgICAgICAmJiAocGFyYW1zLT5yYXRlbGltaXRfdXMgPiBY RU5fU1lTQ1RMX1NDSEVEX1JBVEVMSU1JVF9NQVgKICAgICAgICAgICAgICAgICAgICAgIHx8IHBh cmFtcy0+cmF0ZWxpbWl0X3VzIDwgWEVOX1NZU0NUTF9TQ0hFRF9SQVRFTElNSVRfTUlOKSkKLSAg ICAgICAgICAgICB8fCBNSUNST1NFQ1MocGFyYW1zLT5yYXRlbGltaXRfdXMpID4gTUlMTElTRUNT KHBhcmFtcy0+dHNsaWNlX21zKSApCisgICAgICAgICAgICAgfHwgTUlDUk9TRUNTKHBhcmFtcy0+ cmF0ZWxpbWl0X3VzKSA+IE1JTExJU0VDUyhwYXJhbXMtPnRzbGljZV9tcykKKyAgICAgICAgICAg ICB8fCBwYXJhbXMtPnZjcHVfbWlncl9kZWxheV91cyA+IFhFTl9TWVNDVExfQ1NDSEVEX01HUl9E TFlfTUFYX1VTICkKICAgICAgICAgICAgICAgICBnb3RvIG91dDsKIAogICAgICAgICBzcGluX2xv Y2tfaXJxc2F2ZSgmcHJ2LT5sb2NrLCBmbGFncyk7CkBAIC0xMjYxLDEyICsxMjYzLDE0IEBAIGNz Y2hlZF9zeXNfY250bChjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsCiAgICAgICAgIGVsc2Ug aWYgKCBwcnYtPnJhdGVsaW1pdCAmJiAhcGFyYW1zLT5yYXRlbGltaXRfdXMgKQogICAgICAgICAg ICAgcHJpbnRrKFhFTkxPR19JTkZPICJEaXNhYmxpbmcgY29udGV4dCBzd2l0Y2ggcmF0ZSBsaW1p dGluZ1xuIik7CiAgICAgICAgIHBydi0+cmF0ZWxpbWl0ID0gTUlDUk9TRUNTKHBhcmFtcy0+cmF0 ZWxpbWl0X3VzKTsKKyAgICAgICAgcHJ2LT52Y3B1X21pZ3JfZGVsYXkgPSBNSUNST1NFQ1MocGFy YW1zLT52Y3B1X21pZ3JfZGVsYXlfdXMpOwogICAgICAgICBzcGluX3VubG9ja19pcnFyZXN0b3Jl KCZwcnYtPmxvY2ssIGZsYWdzKTsKIAogICAgICAgICAvKiBGQUxMVEhSVSAqLwogICAgIGNhc2Ug WEVOX1NZU0NUTF9TQ0hFRE9QX2dldGluZm86CiAgICAgICAgIHBhcmFtcy0+dHNsaWNlX21zID0g cHJ2LT50c2xpY2UgLyBNSUxMSVNFQ1MoMSk7CiAgICAgICAgIHBhcmFtcy0+cmF0ZWxpbWl0X3Vz ID0gcHJ2LT5yYXRlbGltaXQgLyBNSUNST1NFQ1MoMSk7CisgICAgICAgIHBhcmFtcy0+dmNwdV9t aWdyX2RlbGF5X3VzID0gcHJ2LT52Y3B1X21pZ3JfZGVsYXkgLyBNSUNST1NFQ1MoMSk7CiAgICAg ICAgIHJjID0gMDsKICAgICAgICAgYnJlYWs7CiAgICAgfQpAQCAtMTU4NSw2ICsxNTg5LDcgQEAg Y3NjaGVkX3RpY2sodm9pZCAqX2NwdSkKIHN0YXRpYyBzdHJ1Y3QgY3NjaGVkX3ZjcHUgKgogY3Nj aGVkX3J1bnFfc3RlYWwoaW50IHBlZXJfY3B1LCBpbnQgY3B1LCBpbnQgcHJpLCBpbnQgYmFsYW5j ZV9zdGVwKQogeworICAgIGNvbnN0IHN0cnVjdCBjc2NoZWRfcHJpdmF0ZSAqIGNvbnN0IHBydiA9 IENTQ0hFRF9QUklWKHBlcl9jcHUoc2NoZWR1bGVyLCBjcHUpKTsKICAgICBjb25zdCBzdHJ1Y3Qg Y3NjaGVkX3BjcHUgKiBjb25zdCBwZWVyX3BjcHUgPSBDU0NIRURfUENQVShwZWVyX2NwdSk7CiAg ICAgc3RydWN0IGNzY2hlZF92Y3B1ICpzcGVlcjsKICAgICBzdHJ1Y3QgbGlzdF9oZWFkICppdGVy OwpAQCAtMTYzNCw3ICsxNjM5LDcgQEAgY3NjaGVkX3J1bnFfc3RlYWwoaW50IHBlZXJfY3B1LCBp bnQgY3B1LCBpbnQgcHJpLCBpbnQgYmFsYW5jZV9zdGVwKQogICAgICAgICAgICAgY29udGludWU7 CiAKICAgICAgICAgYWZmaW5pdHlfYmFsYW5jZV9jcHVtYXNrKHZjLCBiYWxhbmNlX3N0ZXAsIGNw dW1hc2tfc2NyYXRjaCk7Ci0gICAgICAgIGlmICggX19jc2NoZWRfdmNwdV9pc19taWdyYXRlYWJs ZSh2YywgY3B1LCBjcHVtYXNrX3NjcmF0Y2gpICkKKyAgICAgICAgaWYgKCBfX2NzY2hlZF92Y3B1 X2lzX21pZ3JhdGVhYmxlKHBydiwgdmMsIGNwdSwgY3B1bWFza19zY3JhdGNoKSApCiAgICAgICAg IHsKICAgICAgICAgICAgIC8qIFdlIGdvdCBhIGNhbmRpZGF0ZS4gR3JhYiBpdCEgKi8KICAgICAg ICAgICAgIFRSQUNFXzNEKFRSQ19DU0NIRURfU1RPTEVOX1ZDUFUsIHBlZXJfY3B1LApAQCAtMjA5 MSw3ICsyMDk2LDcgQEAgY3NjaGVkX2R1bXAoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzKQog ICAgICAgICAgICAiXHRyYXRlbGltaXQgICAgICAgICAgPSAlIlBSSV9zdGltZSJ1c1xuIgogICAg ICAgICAgICAiXHRjcmVkaXRzIHBlciBtc2VjICAgPSAlZFxuIgogICAgICAgICAgICAiXHR0aWNr cyBwZXIgdHNsaWNlICAgPSAlZFxuIgotICAgICAgICAgICAiXHRtaWdyYXRpb24gZGVsYXkgICAg PSAldXVzXG4iLAorICAgICAgICAgICAiXHRtaWdyYXRpb24gZGVsYXkgICAgPSAlIlBSSV9zdGlt ZSJ1c1xuIiwKICAgICAgICAgICAgcHJ2LT5uY3B1cywKICAgICAgICAgICAgcHJ2LT5tYXN0ZXIs CiAgICAgICAgICAgIHBydi0+Y3JlZGl0LApAQCAtMjEwMyw3ICsyMTA4LDcgQEAgY3NjaGVkX2R1 bXAoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzKQogICAgICAgICAgICBwcnYtPnJhdGVsaW1p dCAvIE1JQ1JPU0VDUygxKSwKICAgICAgICAgICAgQ1NDSEVEX0NSRURJVFNfUEVSX01TRUMsCiAg ICAgICAgICAgIHBydi0+dGlja3NfcGVyX3RzbGljZSwKLSAgICAgICAgICAgdmNwdV9taWdyYXRp b25fZGVsYXkpOworICAgICAgICAgICBwcnYtPnZjcHVfbWlncl9kZWxheS8gTUlDUk9TRUNTKDEp KTsKIAogICAgIGNwdW1hc2tfc2NucHJpbnRmKGlkbGVyc19idWYsIHNpemVvZihpZGxlcnNfYnVm KSwgcHJ2LT5pZGxlcnMpOwogICAgIHByaW50aygiaWRsZXJzOiAlc1xuIiwgaWRsZXJzX2J1Zik7 CkBAIC0yMTg2LDYgKzIxOTEsMTYgQEAgY3NjaGVkX2luaXQoc3RydWN0IHNjaGVkdWxlciAqb3Bz KQogICAgIH0KICAgICBlbHNlCiAgICAgICAgIHBydi0+cmF0ZWxpbWl0ID0gTUlDUk9TRUNTKHNj aGVkX3JhdGVsaW1pdF91cyk7CisKKyAgICBpZiAoIHZjcHVfbWlncmF0aW9uX2RlbGF5X3VzID4g WEVOX1NZU0NUTF9DU0NIRURfTUdSX0RMWV9NQVhfVVMgKQorICAgIHsKKyAgICAgICAgdmNwdV9t aWdyYXRpb25fZGVsYXlfdXMgPSAwOworICAgICAgICBwcmludGsoIldBUk5JTkc6IHZjcHVfbWln cmF0aW9uX2RlbGF5IG91dHNpZGUgb2YgdmFsaWQgcmFuZ2UgWzAsJWRddXMuXG4iCisgICAgICAg ICAgICAgICAiUmVzZXR0aW5nIHRvIGRlZmF1bHQ6ICV1XG4iLAorICAgICAgICAgICAgICAgWEVO X1NZU0NUTF9DU0NIRURfTUdSX0RMWV9NQVhfVVMsIHZjcHVfbWlncmF0aW9uX2RlbGF5X3VzKTsK KyAgICB9CisgICAgcHJ2LT52Y3B1X21pZ3JfZGVsYXkgPSBNSUNST1NFQ1ModmNwdV9taWdyYXRp b25fZGVsYXlfdXMpOworCiAgICAgcmV0dXJuIDA7CiB9CiAKZGlmZiAtLWdpdCBhL3hlbi9pbmNs dWRlL3B1YmxpYy9zeXNjdGwuaCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9zeXNjdGwuaAppbmRleCAz NjY5ZTMyNTI0Li44YmE2NDRkNmYwIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9wdWJsaWMvc3lz Y3RsLmgKKysrIGIveGVuL2luY2x1ZGUvcHVibGljL3N5c2N0bC5oCkBAIC02MDEsNiArNjAxLDEy IEBAIHN0cnVjdCB4ZW5fc3lzY3RsX2NyZWRpdF9zY2hlZHVsZSB7CiAjZGVmaW5lIFhFTl9TWVND VExfQ1NDSEVEX1RTTElDRV9NSU4gMQogICAgIHVuc2lnbmVkIHRzbGljZV9tczsKICAgICB1bnNp Z25lZCByYXRlbGltaXRfdXM7CisgICAgLyoKKyAgICAgKiBIb3cgbG9uZyB3ZSBjb25zaWRlciBh IHZDUFUgdG8gYmUgY2FjaGUtaG90IG9uIHRoZQorICAgICAqIENQVSB3aGVyZSBpdCBoYXMgcnVu IChtYXggMTAwbXMsIGluIG1pY3Jvc2Vjb25kcykKKyAgICAqLworI2RlZmluZSBYRU5fU1lTQ1RM X0NTQ0hFRF9NR1JfRExZX01BWF9VUyAoMTAwICogMTAwMCkKKyAgICB1bnNpZ25lZCB2Y3B1X21p Z3JfZGVsYXlfdXM7CiB9OwogCiBzdHJ1Y3QgeGVuX3N5c2N0bF9jcmVkaXQyX3NjaGVkdWxlIHsK CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2 ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs