From mboxrd@z Thu Jan 1 00:00:00 1970 From: Patchwork Subject: =?utf-8?q?=E2=9C=97_Fi=2ECI=2ECHECKPATCH=3A_warning_f?= =?utf-8?q?or_attempts_at_catching_mmu=5Fnotifer_deadlocks?= Date: Thu, 25 Oct 2018 15:56:47 -0000 Message-ID: <20181025155647.11310.60075@emeril.freedesktop.org> References: <20181025143527.8575-1-daniel.vetter@ffwll.ch> Reply-To: intel-gfx@lists.freedesktop.org Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181025143527.8575-1-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org PT0gU2VyaWVzIERldGFpbHMgPT0KClNlcmllczogYXR0ZW1wdHMgYXQgY2F0Y2hpbmcgbW11X25v dGlmZXIgZGVhZGxvY2tzClVSTCAgIDogaHR0cHM6Ly9wYXRjaHdvcmsuZnJlZWRlc2t0b3Aub3Jn L3Nlcmllcy81MTUyMi8KU3RhdGUgOiB3YXJuaW5nCgo9PSBTdW1tYXJ5ID09CgokIGRpbSBjaGVj a3BhdGNoIG9yaWdpbi9kcm0tdGlwCjEzZWExMmFkNTE3YiBsb2NraW5nL2xvY2tkZXA6IHJlc3Rv cmUgY3Jvc3MtcmVsZWFzZSBjaGVja3MKLTo4OiBFUlJPUjpHSVRfQ09NTUlUX0lEOiBQbGVhc2Ug dXNlIGdpdCBjb21taXQgZGVzY3JpcHRpb24gc3R5bGUgJ2NvbW1pdCA8MTIrIGNoYXJzIG9mIHNo YTE+ICgiPHRpdGxlIGxpbmU+IiknIC0gaWU6ICdjb21taXQgNTI3MTg3ZDI4NTY5ICgibG9ja2lu Zy9sb2NrZGVwOiBSZW1vdmUgY3Jvc3MtcmVsZWFzZSBsZWZ0b3ZlcnMiKScKIzg6IApjb21taXQg NTI3MTg3ZDI4NTY5ZTM5YzVkNDg5ZDYzMDZkM2I3OTYwNWNmODVhNgoKLToxNDogRVJST1I6R0lU X0NPTU1JVF9JRDogUGxlYXNlIHVzZSBnaXQgY29tbWl0IGRlc2NyaXB0aW9uIHN0eWxlICdjb21t aXQgPDEyKyBjaGFycyBvZiBzaGExPiAoIjx0aXRsZSBsaW5lPiIpJyAtIGllOiAnY29tbWl0IGRi YTA0ZWI3NmRmOSAoImxvY2tpbmcvRG9jdW1lbnRhdGlvbjogUmVtb3ZlIHN0YWxlIGNyb3NzcmVs ZWFzZV9mdWxsc3RhY2sgcGFyYW1ldGVyIiknCiMxNDogCmNvbW1pdCBkYmEwNGViNzZkZjk4Mjcw M2ZlZmMwMjFhNGQyNzgzNDdiNjE3NmE5CgotOjIwOiBFUlJPUjpHSVRfQ09NTUlUX0lEOiBQbGVh c2UgdXNlIGdpdCBjb21taXQgZGVzY3JpcHRpb24gc3R5bGUgJ2NvbW1pdCA8MTIrIGNoYXJzIG9m IHNoYTE+ICgiPHRpdGxlIGxpbmU+IiknIC0gaWU6ICdjb21taXQgZTk2NmVhZWViNjIzICgibG9j a2luZy9sb2NrZGVwOiBSZW1vdmUgdGhlIGNyb3NzLXJlbGVhc2UgbG9ja2luZyBjaGVja3MiKScK IzIwOiAKY29tbWl0IGU5NjZlYWVlYjYyM2YwOTk3NWVmMzYyYzI4NjZmYWU2Zjg2ODQ0ZjkKCi06 NDM6IFdBUk5JTkc6RklMRV9QQVRIX0NIQU5HRVM6IGFkZGVkLCBtb3ZlZCBvciBkZWxldGVkIGZp bGUocyksIGRvZXMgTUFJTlRBSU5FUlMgbmVlZCB1cGRhdGluZz8KIzQzOiAKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKCi06NjE5OiBXQVJOSU5HOlRZUE9fU1BFTExJTkc6ICdwcmVmZXJlZCcgbWF5IGJl IG1pc3NwZWxsZWQgLSBwZXJoYXBzICdwcmVmZXJyZWQnPwojNjE5OiBGSUxFOiBEb2N1bWVudGF0 aW9uL2xvY2tpbmcvY3Jvc3NyZWxlYXNlLnR4dDo1NzI6CitkZWFkbG9jayBvciBpdHMgcG9zc2li aWxpdHkgc29vbmVyLiBTbyB0aGUgZm9ybWVyIHdheSB3b3VsZCBiZSBwcmVmZXJlZAoKLTo3OTE6 IFdBUk5JTkc6VFlQT19TUEVMTElORzogJ2ltcGxtZW50YXRpb24nIG1heSBiZSBtaXNzcGVsbGVk IC0gcGVyaGFwcyAnaW1wbGVtZW50YXRpb24nPwojNzkxOiBGSUxFOiBEb2N1bWVudGF0aW9uL2xv Y2tpbmcvY3Jvc3NyZWxlYXNlLnR4dDo3NDQ6CitsaWtlIGhvdyBsb2NrZGVwIGhhbmRsZXMgaGVs ZF9sb2Nrcy4gTG9ja2xlc3MgaW1wbG1lbnRhdGlvbiBpcyBpbXBvcnRhbnQKCi06ODE0OiBXQVJO SU5HOlRZUE9fU1BFTExJTkc6ICdvY2N1cmVkJyBtYXkgYmUgbWlzc3BlbGxlZCAtIHBlcmhhcHMg J29jY3VycmVkJz8KIzgxNDogRklMRTogRG9jdW1lbnRhdGlvbi9sb2NraW5nL2Nyb3NzcmVsZWFz ZS50eHQ6NzY3OgordGhhdCBpdCBoYXMgbm90IG9jY3VyZWQgeWV0LCBsb2NrZGVwIHNob3VsZCBj b25zaWRlciBhbGwgcG9zc2libGUKCi06OTYxOiBDSEVDSzpNQUNST19BUkdfUkVVU0U6IE1hY3Jv IGFyZ3VtZW50IHJldXNlICd4JyAtIHBvc3NpYmxlIHNpZGUtZWZmZWN0cz8KIzk2MTogRklMRTog aW5jbHVkZS9saW51eC9jb21wbGV0aW9uLmg6NTM6CisjZGVmaW5lIGluaXRfY29tcGxldGlvbl9t YXAoeCwgbSkJCQkJCVwKK2RvIHsJCQkJCQkJCQlcCisJbG9ja2RlcF9pbml0X21hcF9jcm9zc2xv Y2soKHN0cnVjdCBsb2NrZGVwX21hcCAqKSYoeCktPm1hcCwJXAorCQkJKG0pLT5uYW1lLCAobSkt PmtleSwgMCk7CQkJCVwKKwlfX2luaXRfY29tcGxldGlvbih4KTsJCQkJCQlcCit9IHdoaWxlICgw KQoKLTo5NjE6IENIRUNLOk1BQ1JPX0FSR19SRVVTRTogTWFjcm8gYXJndW1lbnQgcmV1c2UgJ20n IC0gcG9zc2libGUgc2lkZS1lZmZlY3RzPwojOTYxOiBGSUxFOiBpbmNsdWRlL2xpbnV4L2NvbXBs ZXRpb24uaDo1MzoKKyNkZWZpbmUgaW5pdF9jb21wbGV0aW9uX21hcCh4LCBtKQkJCQkJXAorZG8g ewkJCQkJCQkJCVwKKwlsb2NrZGVwX2luaXRfbWFwX2Nyb3NzbG9jaygoc3RydWN0IGxvY2tkZXBf bWFwICopJih4KS0+bWFwLAlcCisJCQkobSktPm5hbWUsIChtKS0+a2V5LCAwKTsJCQkJXAorCV9f aW5pdF9jb21wbGV0aW9uKHgpOwkJCQkJCVwKK30gd2hpbGUgKDApCgotOjk2ODogQ0hFQ0s6TUFD Uk9fQVJHX1JFVVNFOiBNYWNybyBhcmd1bWVudCByZXVzZSAneCcgLSBwb3NzaWJsZSBzaWRlLWVm ZmVjdHM/CiM5Njg6IEZJTEU6IGluY2x1ZGUvbGludXgvY29tcGxldGlvbi5oOjYwOgorI2RlZmlu ZSBpbml0X2NvbXBsZXRpb24oeCkJCQkJCQlcCitkbyB7CQkJCQkJCQkJXAorCXN0YXRpYyBzdHJ1 Y3QgbG9ja19jbGFzc19rZXkgX19rZXk7CQkJCVwKKwlsb2NrZGVwX2luaXRfbWFwX2Nyb3NzbG9j aygoc3RydWN0IGxvY2tkZXBfbWFwICopJih4KS0+bWFwLAlcCisJCQkiKGNvbXBsZXRpb24pIiAj eCwJCQkJXAorCQkJJl9fa2V5LCAwKTsJCQkJCVwKKwlfX2luaXRfY29tcGxldGlvbih4KTsJCQkJ CQlcCit9IHdoaWxlICgwKQoKLTo5ODU6IENIRUNLOk1BQ1JPX0FSR19SRVVTRTogTWFjcm8gYXJn dW1lbnQgcmV1c2UgJ3dvcmsnIC0gcG9zc2libGUgc2lkZS1lZmZlY3RzPwojOTg1OiBGSUxFOiBp bmNsdWRlL2xpbnV4L2NvbXBsZXRpb24uaDo3NzoKKyNkZWZpbmUgQ09NUExFVElPTl9JTklUSUFM SVpFUih3b3JrKSBcCisJeyAwLCBfX1dBSVRfUVVFVUVfSEVBRF9JTklUSUFMSVpFUigod29yayku d2FpdCksIFwKKwlTVEFUSUNfQ1JPU1NfTE9DS0RFUF9NQVBfSU5JVCgiKGNvbXBsZXRpb24pIiAj d29yaywgJih3b3JrKSkgfQoKLToxMDgzOiBXQVJOSU5HOlRZUE9fU1BFTExJTkc6ICdTZXBlcmF0 ZScgbWF5IGJlIG1pc3NwZWxsZWQgLSBwZXJoYXBzICdTZXBhcmF0ZSc/CiMxMDgzOiBGSUxFOiBp bmNsdWRlL2xpbnV4L2xvY2tkZXAuaDozMTA6CisJICogU2VwZXJhdGUgc3RhY2tfdHJhY2UgZGF0 YS4gVGhpcyB3aWxsIGJlIHVzZWQgYXQgY29tbWl0IHN0ZXAuCgotOjEwODk6IFdBUk5JTkc6VFlQ T19TUEVMTElORzogJ1NlcGVyYXRlJyBtYXkgYmUgbWlzc3BlbGxlZCAtIHBlcmhhcHMgJ1NlcGFy YXRlJz8KIzEwODk6IEZJTEU6IGluY2x1ZGUvbGludXgvbG9ja2RlcC5oOjMxNjoKKwkgKiBTZXBl cmF0ZSBobG9jayBpbnN0YW5jZS4gVGhpcyB3aWxsIGJlIHVzZWQgYXQgY29tbWl0IHN0ZXAuCgot OjExMTc6IFdBUk5JTkc6VFlQT19TUEVMTElORzogJ1NlcGVyYXRlJyBtYXkgYmUgbWlzc3BlbGxl ZCAtIHBlcmhhcHMgJ1NlcGFyYXRlJz8KIzExMTc6IEZJTEU6IGluY2x1ZGUvbGludXgvbG9ja2Rl cC5oOjM0NDoKKwkgKiBTZXBlcmF0ZSBobG9jayBpbnN0YW5jZS4gVGhpcyB3aWxsIGJlIHVzZWQg YXQgY29tbWl0IHN0ZXAuCgotOjExNDA6IENIRUNLOkFWT0lEX0VYVEVSTlM6IGV4dGVybiBwcm90 b3R5cGVzIHNob3VsZCBiZSBhdm9pZGVkIGluIC5oIGZpbGVzCiMxMTQwOiBGSUxFOiBpbmNsdWRl L2xpbnV4L2xvY2tkZXAuaDo1NjE6CitleHRlcm4gdm9pZCBsb2NrZGVwX2luaXRfbWFwX2Nyb3Nz bG9jayhzdHJ1Y3QgbG9ja2RlcF9tYXAgKmxvY2ssCgotOjExNDQ6IENIRUNLOkFWT0lEX0VYVEVS TlM6IGV4dGVybiBwcm90b3R5cGVzIHNob3VsZCBiZSBhdm9pZGVkIGluIC5oIGZpbGVzCiMxMTQ0 OiBGSUxFOiBpbmNsdWRlL2xpbnV4L2xvY2tkZXAuaDo1NjU6CitleHRlcm4gdm9pZCBsb2NrX2Nv bW1pdF9jcm9zc2xvY2soc3RydWN0IGxvY2tkZXBfbWFwICpsb2NrKTsKCi06MTE2NDogQ0hFQ0s6 QVZPSURfRVhURVJOUzogZXh0ZXJuIHByb3RvdHlwZXMgc2hvdWxkIGJlIGF2b2lkZWQgaW4gLmgg ZmlsZXMKIzExNjQ6IEZJTEU6IGluY2x1ZGUvbGludXgvbG9ja2RlcC5oOjU4NToKK2V4dGVybiB2 b2lkIGNyb3NzcmVsZWFzZV9oaXN0X3N0YXJ0KGVudW0geGhsb2NrX2NvbnRleHRfdCBjKTsKCi06 MTE2NTogQ0hFQ0s6QVZPSURfRVhURVJOUzogZXh0ZXJuIHByb3RvdHlwZXMgc2hvdWxkIGJlIGF2 b2lkZWQgaW4gLmggZmlsZXMKIzExNjU6IEZJTEU6IGluY2x1ZGUvbGludXgvbG9ja2RlcC5oOjU4 NjoKK2V4dGVybiB2b2lkIGNyb3NzcmVsZWFzZV9oaXN0X2VuZChlbnVtIHhobG9ja19jb250ZXh0 X3QgYyk7CgotOjExNjY6IENIRUNLOkFWT0lEX0VYVEVSTlM6IGV4dGVybiBwcm90b3R5cGVzIHNo b3VsZCBiZSBhdm9pZGVkIGluIC5oIGZpbGVzCiMxMTY2OiBGSUxFOiBpbmNsdWRlL2xpbnV4L2xv Y2tkZXAuaDo1ODc6CitleHRlcm4gdm9pZCBsb2NrZGVwX2ludmFyaWFudF9zdGF0ZShib29sIGZv cmNlKTsKCi06MTE2NzogQ0hFQ0s6QVZPSURfRVhURVJOUzogZXh0ZXJuIHByb3RvdHlwZXMgc2hv dWxkIGJlIGF2b2lkZWQgaW4gLmggZmlsZXMKIzExNjc6IEZJTEU6IGluY2x1ZGUvbGludXgvbG9j a2RlcC5oOjU4ODoKK2V4dGVybiB2b2lkIGxvY2tkZXBfaW5pdF90YXNrKHN0cnVjdCB0YXNrX3N0 cnVjdCAqdGFzayk7CgotOjExNjg6IENIRUNLOkFWT0lEX0VYVEVSTlM6IGV4dGVybiBwcm90b3R5 cGVzIHNob3VsZCBiZSBhdm9pZGVkIGluIC5oIGZpbGVzCiMxMTY4OiBGSUxFOiBpbmNsdWRlL2xp bnV4L2xvY2tkZXAuaDo1ODk6CitleHRlcm4gdm9pZCBsb2NrZGVwX2ZyZWVfdGFzayhzdHJ1Y3Qg dGFza19zdHJ1Y3QgKnRhc2spOwoKLToxMjgzOiBXQVJOSU5HOlBSSU5US19XSVRIT1VUX0tFUk5f TEVWRUw6IHByaW50aygpIHNob3VsZCBpbmNsdWRlIEtFUk5fPExFVkVMPiBmYWNpbGl0eSBsZXZl bAojMTI4MzogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExNTg6CisJCXByaW50aygi IFBvc3NpYmxlIHVuc2FmZSBsb2NraW5nIHNjZW5hcmlvIGJ5IGNyb3NzbG9jazpcblxuIik7Cgot OjEyODQ6IFdBUk5JTkc6UFJJTlRLX1dJVEhPVVRfS0VSTl9MRVZFTDogcHJpbnRrKCkgc2hvdWxk IGluY2x1ZGUgS0VSTl88TEVWRUw+IGZhY2lsaXR5IGxldmVsCiMxMjg0OiBGSUxFOiBrZXJuZWwv bG9ja2luZy9sb2NrZGVwLmM6MTE1OToKKwkJcHJpbnRrKCIgICAgICAgQ1BVMCAgICAgICAgICAg ICAgICAgICAgQ1BVMVxuIik7CgotOjEyODU6IFdBUk5JTkc6UFJJTlRLX1dJVEhPVVRfS0VSTl9M RVZFTDogcHJpbnRrKCkgc2hvdWxkIGluY2x1ZGUgS0VSTl88TEVWRUw+IGZhY2lsaXR5IGxldmVs CiMxMjg1OiBGSUxFOiBrZXJuZWwvbG9ja2luZy9sb2NrZGVwLmM6MTE2MDoKKwkJcHJpbnRrKCIg ICAgICAgLS0tLSAgICAgICAgICAgICAgICAgICAgLS0tLVxuIik7CgotOjEyODY6IFdBUk5JTkc6 UFJJTlRLX1dJVEhPVVRfS0VSTl9MRVZFTDogcHJpbnRrKCkgc2hvdWxkIGluY2x1ZGUgS0VSTl88 TEVWRUw+IGZhY2lsaXR5IGxldmVsCiMxMjg2OiBGSUxFOiBrZXJuZWwvbG9ja2luZy9sb2NrZGVw LmM6MTE2MToKKwkJcHJpbnRrKCIgIGxvY2soIik7CgotOjEyODg6IFdBUk5JTkc6UFJFRkVSX1BS X0xFVkVMOiBQcmVmZXIgW3N1YnN5c3RlbSBlZzogbmV0ZGV2XV9jb250KFtzdWJzeXN0ZW1dZGV2 LCAuLi4gdGhlbiBkZXZfY29udChkZXYsIC4uLiB0aGVuIHByX2NvbnQoLi4uICB0byBwcmludGso S0VSTl9DT05UIC4uLgojMTI4ODogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExNjM6 CisJCXByaW50ayhLRVJOX0NPTlQgIik7XG4iKTsKCi06MTI4ODogV0FSTklORzpMT0dHSU5HX0NP TlRJTlVBVElPTjogQXZvaWQgbG9nZ2luZyBjb250aW51YXRpb24gdXNlcyB3aGVyZSBmZWFzaWJs ZQojMTI4ODogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExNjM6CisJCXByaW50ayhL RVJOX0NPTlQgIik7XG4iKTsKCi06MTI4OTogV0FSTklORzpQUklOVEtfV0lUSE9VVF9LRVJOX0xF VkVMOiBwcmludGsoKSBzaG91bGQgaW5jbHVkZSBLRVJOXzxMRVZFTD4gZmFjaWxpdHkgbGV2ZWwK IzEyODk6IEZJTEU6IGtlcm5lbC9sb2NraW5nL2xvY2tkZXAuYzoxMTY0OgorCQlwcmludGsoIiAg bG9jaygiKTsKCi06MTI5MTogV0FSTklORzpQUkVGRVJfUFJfTEVWRUw6IFByZWZlciBbc3Vic3lz dGVtIGVnOiBuZXRkZXZdX2NvbnQoW3N1YnN5c3RlbV1kZXYsIC4uLiB0aGVuIGRldl9jb250KGRl diwgLi4uIHRoZW4gcHJfY29udCguLi4gIHRvIHByaW50ayhLRVJOX0NPTlQgLi4uCiMxMjkxOiBG SUxFOiBrZXJuZWwvbG9ja2luZy9sb2NrZGVwLmM6MTE2NjoKKwkJcHJpbnRrKEtFUk5fQ09OVCAi KTtcbiIpOwoKLToxMjkxOiBXQVJOSU5HOkxPR0dJTkdfQ09OVElOVUFUSU9OOiBBdm9pZCBsb2dn aW5nIGNvbnRpbnVhdGlvbiB1c2VzIHdoZXJlIGZlYXNpYmxlCiMxMjkxOiBGSUxFOiBrZXJuZWwv bG9ja2luZy9sb2NrZGVwLmM6MTE2NjoKKwkJcHJpbnRrKEtFUk5fQ09OVCAiKTtcbiIpOwoKLTox MjkyOiBXQVJOSU5HOlBSSU5US19XSVRIT1VUX0tFUk5fTEVWRUw6IHByaW50aygpIHNob3VsZCBp bmNsdWRlIEtFUk5fPExFVkVMPiBmYWNpbGl0eSBsZXZlbAojMTI5MjogRklMRToga2VybmVsL2xv Y2tpbmcvbG9ja2RlcC5jOjExNjc6CisJCXByaW50aygiICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGxvY2soIik7CgotOjEyOTQ6IFdBUk5JTkc6UFJFRkVSX1BSX0xFVkVMOiBQcmVmZXIg W3N1YnN5c3RlbSBlZzogbmV0ZGV2XV9jb250KFtzdWJzeXN0ZW1dZGV2LCAuLi4gdGhlbiBkZXZf Y29udChkZXYsIC4uLiB0aGVuIHByX2NvbnQoLi4uICB0byBwcmludGsoS0VSTl9DT05UIC4uLgoj MTI5NDogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExNjk6CisJCXByaW50ayhLRVJO X0NPTlQgIik7XG4iKTsKCi06MTI5NDogV0FSTklORzpMT0dHSU5HX0NPTlRJTlVBVElPTjogQXZv aWQgbG9nZ2luZyBjb250aW51YXRpb24gdXNlcyB3aGVyZSBmZWFzaWJsZQojMTI5NDogRklMRTog a2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExNjk6CisJCXByaW50ayhLRVJOX0NPTlQgIik7XG4i KTsKCi06MTI5NTogV0FSTklORzpQUklOVEtfV0lUSE9VVF9LRVJOX0xFVkVMOiBwcmludGsoKSBz aG91bGQgaW5jbHVkZSBLRVJOXzxMRVZFTD4gZmFjaWxpdHkgbGV2ZWwKIzEyOTU6IEZJTEU6IGtl cm5lbC9sb2NraW5nL2xvY2tkZXAuYzoxMTcwOgorCQlwcmludGsoIiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB1bmxvY2soIik7CgotOjEyOTc6IFdBUk5JTkc6UFJFRkVSX1BSX0xFVkVM OiBQcmVmZXIgW3N1YnN5c3RlbSBlZzogbmV0ZGV2XV9jb250KFtzdWJzeXN0ZW1dZGV2LCAuLi4g dGhlbiBkZXZfY29udChkZXYsIC4uLiB0aGVuIHByX2NvbnQoLi4uICB0byBwcmludGsoS0VSTl9D T05UIC4uLgojMTI5NzogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExNzI6CisJCXBy aW50ayhLRVJOX0NPTlQgIik7XG4iKTsKCi06MTI5NzogV0FSTklORzpMT0dHSU5HX0NPTlRJTlVB VElPTjogQXZvaWQgbG9nZ2luZyBjb250aW51YXRpb24gdXNlcyB3aGVyZSBmZWFzaWJsZQojMTI5 NzogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExNzI6CisJCXByaW50ayhLRVJOX0NP TlQgIik7XG4iKTsKCi06MTI5ODogV0FSTklORzpQUklOVEtfV0lUSE9VVF9LRVJOX0xFVkVMOiBw cmludGsoKSBzaG91bGQgaW5jbHVkZSBLRVJOXzxMRVZFTD4gZmFjaWxpdHkgbGV2ZWwKIzEyOTg6 IEZJTEU6IGtlcm5lbC9sb2NraW5nL2xvY2tkZXAuYzoxMTczOgorCQlwcmludGsoIlxuICoqKiBE RUFETE9DSyAqKipcblxuIik7CgotOjEzMDA6IFdBUk5JTkc6UFJJTlRLX1dJVEhPVVRfS0VSTl9M RVZFTDogcHJpbnRrKCkgc2hvdWxkIGluY2x1ZGUgS0VSTl88TEVWRUw+IGZhY2lsaXR5IGxldmVs CiMxMzAwOiBGSUxFOiBrZXJuZWwvbG9ja2luZy9sb2NrZGVwLmM6MTE3NToKKwkJcHJpbnRrKCIg UG9zc2libGUgdW5zYWZlIGxvY2tpbmcgc2NlbmFyaW86XG5cbiIpOwoKLToxMzAxOiBXQVJOSU5H OlBSSU5US19XSVRIT1VUX0tFUk5fTEVWRUw6IHByaW50aygpIHNob3VsZCBpbmNsdWRlIEtFUk5f PExFVkVMPiBmYWNpbGl0eSBsZXZlbAojMTMwMTogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2Rl cC5jOjExNzY6CisJCXByaW50aygiICAgICAgIENQVTAgICAgICAgICAgICAgICAgICAgIENQVTFc biIpOwoKLToxMzAyOiBXQVJOSU5HOlBSSU5US19XSVRIT1VUX0tFUk5fTEVWRUw6IHByaW50aygp IHNob3VsZCBpbmNsdWRlIEtFUk5fPExFVkVMPiBmYWNpbGl0eSBsZXZlbAojMTMwMjogRklMRTog a2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExNzc6CisJCXByaW50aygiICAgICAgIC0tLS0gICAg ICAgICAgICAgICAgICAgIC0tLS1cbiIpOwoKLToxMzAzOiBXQVJOSU5HOlBSSU5US19XSVRIT1VU X0tFUk5fTEVWRUw6IHByaW50aygpIHNob3VsZCBpbmNsdWRlIEtFUk5fPExFVkVMPiBmYWNpbGl0 eSBsZXZlbAojMTMwMzogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExNzg6CisJCXBy aW50aygiICBsb2NrKCIpOwoKLToxMzA1OiBXQVJOSU5HOlBSRUZFUl9QUl9MRVZFTDogUHJlZmVy IFtzdWJzeXN0ZW0gZWc6IG5ldGRldl1fY29udChbc3Vic3lzdGVtXWRldiwgLi4uIHRoZW4gZGV2 X2NvbnQoZGV2LCAuLi4gdGhlbiBwcl9jb250KC4uLiAgdG8gcHJpbnRrKEtFUk5fQ09OVCAuLi4K IzEzMDU6IEZJTEU6IGtlcm5lbC9sb2NraW5nL2xvY2tkZXAuYzoxMTgwOgorCQlwcmludGsoS0VS Tl9DT05UICIpO1xuIik7CgotOjEzMDU6IFdBUk5JTkc6TE9HR0lOR19DT05USU5VQVRJT046IEF2 b2lkIGxvZ2dpbmcgY29udGludWF0aW9uIHVzZXMgd2hlcmUgZmVhc2libGUKIzEzMDU6IEZJTEU6 IGtlcm5lbC9sb2NraW5nL2xvY2tkZXAuYzoxMTgwOgorCQlwcmludGsoS0VSTl9DT05UICIpO1xu Iik7CgotOjEzMDY6IFdBUk5JTkc6UFJJTlRLX1dJVEhPVVRfS0VSTl9MRVZFTDogcHJpbnRrKCkg c2hvdWxkIGluY2x1ZGUgS0VSTl88TEVWRUw+IGZhY2lsaXR5IGxldmVsCiMxMzA2OiBGSUxFOiBr ZXJuZWwvbG9ja2luZy9sb2NrZGVwLmM6MTE4MToKKwkJcHJpbnRrKCIgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbG9jaygiKTsKCi06MTMwODogV0FSTklORzpQUkVGRVJfUFJfTEVWRUw6 IFByZWZlciBbc3Vic3lzdGVtIGVnOiBuZXRkZXZdX2NvbnQoW3N1YnN5c3RlbV1kZXYsIC4uLiB0 aGVuIGRldl9jb250KGRldiwgLi4uIHRoZW4gcHJfY29udCguLi4gIHRvIHByaW50ayhLRVJOX0NP TlQgLi4uCiMxMzA4OiBGSUxFOiBrZXJuZWwvbG9ja2luZy9sb2NrZGVwLmM6MTE4MzoKKwkJcHJp bnRrKEtFUk5fQ09OVCAiKTtcbiIpOwoKLToxMzA4OiBXQVJOSU5HOkxPR0dJTkdfQ09OVElOVUFU SU9OOiBBdm9pZCBsb2dnaW5nIGNvbnRpbnVhdGlvbiB1c2VzIHdoZXJlIGZlYXNpYmxlCiMxMzA4 OiBGSUxFOiBrZXJuZWwvbG9ja2luZy9sb2NrZGVwLmM6MTE4MzoKKwkJcHJpbnRrKEtFUk5fQ09O VCAiKTtcbiIpOwoKLToxMzA5OiBXQVJOSU5HOlBSSU5US19XSVRIT1VUX0tFUk5fTEVWRUw6IHBy aW50aygpIHNob3VsZCBpbmNsdWRlIEtFUk5fPExFVkVMPiBmYWNpbGl0eSBsZXZlbAojMTMwOTog RklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExODQ6CisJCXByaW50aygiICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGxvY2soIik7CgotOjEzMTE6IFdBUk5JTkc6UFJFRkVSX1BS X0xFVkVMOiBQcmVmZXIgW3N1YnN5c3RlbSBlZzogbmV0ZGV2XV9jb250KFtzdWJzeXN0ZW1dZGV2 LCAuLi4gdGhlbiBkZXZfY29udChkZXYsIC4uLiB0aGVuIHByX2NvbnQoLi4uICB0byBwcmludGso S0VSTl9DT05UIC4uLgojMTMxMTogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExODY6 CisJCXByaW50ayhLRVJOX0NPTlQgIik7XG4iKTsKCi06MTMxMTogV0FSTklORzpMT0dHSU5HX0NP TlRJTlVBVElPTjogQXZvaWQgbG9nZ2luZyBjb250aW51YXRpb24gdXNlcyB3aGVyZSBmZWFzaWJs ZQojMTMxMTogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjExODY6CisJCXByaW50ayhL RVJOX0NPTlQgIik7XG4iKTsKCi06MTMxMjogV0FSTklORzpQUklOVEtfV0lUSE9VVF9LRVJOX0xF VkVMOiBwcmludGsoKSBzaG91bGQgaW5jbHVkZSBLRVJOXzxMRVZFTD4gZmFjaWxpdHkgbGV2ZWwK IzEzMTI6IEZJTEU6IGtlcm5lbC9sb2NraW5nL2xvY2tkZXAuYzoxMTg3OgorCQlwcmludGsoIiAg bG9jaygiKTsKCi06MTMxNDogV0FSTklORzpQUkVGRVJfUFJfTEVWRUw6IFByZWZlciBbc3Vic3lz dGVtIGVnOiBuZXRkZXZdX2NvbnQoW3N1YnN5c3RlbV1kZXYsIC4uLiB0aGVuIGRldl9jb250KGRl diwgLi4uIHRoZW4gcHJfY29udCguLi4gIHRvIHByaW50ayhLRVJOX0NPTlQgLi4uCiMxMzE0OiBG SUxFOiBrZXJuZWwvbG9ja2luZy9sb2NrZGVwLmM6MTE4OToKKwkJcHJpbnRrKEtFUk5fQ09OVCAi KTtcbiIpOwoKLToxMzE0OiBXQVJOSU5HOkxPR0dJTkdfQ09OVElOVUFUSU9OOiBBdm9pZCBsb2dn aW5nIGNvbnRpbnVhdGlvbiB1c2VzIHdoZXJlIGZlYXNpYmxlCiMxMzE0OiBGSUxFOiBrZXJuZWwv bG9ja2luZy9sb2NrZGVwLmM6MTE4OToKKwkJcHJpbnRrKEtFUk5fQ09OVCAiKTtcbiIpOwoKLTox MzE1OiBXQVJOSU5HOlBSSU5US19XSVRIT1VUX0tFUk5fTEVWRUw6IHByaW50aygpIHNob3VsZCBp bmNsdWRlIEtFUk5fPExFVkVMPiBmYWNpbGl0eSBsZXZlbAojMTMxNTogRklMRToga2VybmVsL2xv Y2tpbmcvbG9ja2RlcC5jOjExOTA6CisJCXByaW50aygiXG4gKioqIERFQURMT0NLICoqKlxuXG4i KTsKCi06MTQxMTogQ0hFQ0s6UEFSRU5USEVTSVNfQUxJR05NRU5UOiBBbGlnbm1lbnQgc2hvdWxk IG1hdGNoIG9wZW4gcGFyZW50aGVzaXMKIzE0MTE6IEZJTEU6IGtlcm5lbC9sb2NraW5nL2xvY2tk ZXAuYzozMjg3Ogordm9pZCBsb2NrZGVwX2luaXRfbWFwX2Nyb3NzbG9jayhzdHJ1Y3QgbG9ja2Rl cF9tYXAgKmxvY2ssIGNvbnN0IGNoYXIgKm5hbWUsCisJCSAgICAgIHN0cnVjdCBsb2NrX2NsYXNz X2tleSAqa2V5LCBpbnQgc3ViY2xhc3MpCgotOjE3OTY6IENIRUNLOlNQQUNJTkc6IHNwYWNlcyBw cmVmZXJyZWQgYXJvdW5kIHRoYXQgJy0nIChjdHg6VnhWKQojMTc5NjogRklMRToga2VybmVsL2xv Y2tpbmcvbG9ja2RlcC5jOjQ5NDU6CisJaWYgKG5yX3N0YWNrX3RyYWNlX2VudHJpZXMgPj0gTUFY X1NUQUNLX1RSQUNFX0VOVFJJRVMtMSkgewogCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXgoKLToxODIzOiBDSEVDSzpQQVJFTlRIRVNJU19BTElH Tk1FTlQ6IEFsaWdubWVudCBzaG91bGQgbWF0Y2ggb3BlbiBwYXJlbnRoZXNpcwojMTgyMzogRklM RToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjQ5NzI6CisJaWYgKCFhZGRfY2hhaW5fY2FjaGVf Y2xhc3Nlcyh4aWQsIHBpZCwgeGhsb2NrLT5obG9jay5pcnFfY29udGV4dCwKKwkJCQljaGFpbl9r ZXkpKQoKLToxOTU4OiBDSEVDSzpBTExPQ19TSVpFT0ZfU1RSVUNUOiBQcmVmZXIga3phbGxvYyhz aXplb2YoKnRhc2stPnhobG9ja3MpLi4uKSBvdmVyIGt6YWxsb2Moc2l6ZW9mKHN0cnVjdCBoaXN0 X2xvY2spLi4uKQojMTk1ODogRklMRToga2VybmVsL2xvY2tpbmcvbG9ja2RlcC5jOjUxMDc6CisJ dGFzay0+eGhsb2NrcyA9IGt6YWxsb2Moc2l6ZW9mKHN0cnVjdCBoaXN0X2xvY2spICogTUFYX1hI TE9DS1NfTlIsCgotOjE5NjY6IFdBUk5JTkc6VFlQT19TUEVMTElORzogJ0RpYWJsZScgbWF5IGJl IG1pc3NwZWxsZWQgLSBwZXJoYXBzICdEaXNhYmxlJz8KIzE5NjY6IEZJTEU6IGtlcm5lbC9sb2Nr aW5nL2xvY2tkZXAuYzo1MTE1OgorCQkvKiBEaWFibGUgY3Jvc3NyZWxlYXNlIGZvciBjdXJyZW50 ICovCgotOjIwMzg6IFdBUk5JTkc6Tk9fQVVUSE9SX1NJR05fT0ZGOiBNaXNzaW5nIFNpZ25lZC1v ZmYtYnk6IGxpbmUgYnkgbm9taW5hbCBwYXRjaCBhdXRob3IgJ0RhbmllbCBWZXR0ZXIgPGRhbmll bC52ZXR0ZXJAZmZ3bGwuY2g+JwoKdG90YWw6IDMgZXJyb3JzLCA0MSB3YXJuaW5ncywgMTUgY2hl Y2tzLCAxOTQ3IGxpbmVzIGNoZWNrZWQKMmNlNDBhMWMxZjNlIGt0aHJlYWQ6IGZpbmVyLWdyYWlu ZWQgbG9ja2RlcC9jcm9zcy1yZWxlYXNlIGNvbXBsZXRpb24KLTo0NzogQ0hFQ0s6UEFSRU5USEVT SVNfQUxJR05NRU5UOiBBbGlnbm1lbnQgc2hvdWxkIG1hdGNoIG9wZW4gcGFyZW50aGVzaXMKIzQ3 OiBGSUxFOiBpbmNsdWRlL2xpbnV4L2t0aHJlYWQuaDoxMToKK3N0cnVjdCB0YXNrX3N0cnVjdCAq X2t0aHJlYWRfY3JlYXRlX29uX25vZGUoaW50ICgqdGhyZWFkZm4pKHZvaWQgKmRhdGEpLAogCQkJ CQkgICB2b2lkICpkYXRhLAoKLTo2ODogQ0hFQ0s6UEFSRU5USEVTSVNfQUxJR05NRU5UOiBBbGln bm1lbnQgc2hvdWxkIG1hdGNoIG9wZW4gcGFyZW50aGVzaXMKIzY4OiBGSUxFOiBpbmNsdWRlL2xp bnV4L2t0aHJlYWQuaDozOToKK3N0cnVjdCB0YXNrX3N0cnVjdCAqX2t0aHJlYWRfY3JlYXRlX29u X2NwdShpbnQgKCp0aHJlYWRmbikodm9pZCAqZGF0YSksCiAJCQkJCSAgdm9pZCAqZGF0YSwKCi06 MTA2OiBDSEVDSzpQQVJFTlRIRVNJU19BTElHTk1FTlQ6IEFsaWdubWVudCBzaG91bGQgbWF0Y2gg b3BlbiBwYXJlbnRoZXNpcwojMTA2OiBGSUxFOiBpbmNsdWRlL2xpbnV4L2t0aHJlYWQuaDoyMDY6 Citfa3RocmVhZF9jcmVhdGVfd29ya2VyX29uX2NwdShpbnQgY3B1LCB1bnNpZ25lZCBpbnQgZmxh Z3MsCisJCSAgICAgICBzdHJ1Y3QgbG9ja19jbGFzc19rZXkgKmV4aXRlZF9rZXksCgotOjEzNzog Q0hFQ0s6UEFSRU5USEVTSVNfQUxJR05NRU5UOiBBbGlnbm1lbnQgc2hvdWxkIG1hdGNoIG9wZW4g cGFyZW50aGVzaXMKIzEzNzogRklMRToga2VybmVsL2t0aHJlYWQuYzoyMzQ6CisJbG9ja2RlcF9p bml0X21hcF9jcm9zc2xvY2soJnNlbGYtPmV4aXRlZC5tYXAubWFwLAorCQkJIihrdGhyZWFkIGNv bXBsZXRpb24pLT5leGl0ZWQiLAoKLToxMzc6IFdBUk5JTkc6RU1CRURERURfRlVOQ1RJT05fTkFN RTogUHJlZmVyIHVzaW5nICciJXMuLi4iLCBfX2Z1bmNfXycgdG8gdXNpbmcgJ2t0aHJlYWQnLCB0 aGlzIGZ1bmN0aW9uJ3MgbmFtZSwgaW4gYSBzdHJpbmcKIzEzNzogRklMRToga2VybmVsL2t0aHJl YWQuYzoyMzQ6CisJCQkiKGt0aHJlYWQgY29tcGxldGlvbiktPmV4aXRlZCIsCgotOjE0MTogQ0hF Q0s6UEFSRU5USEVTSVNfQUxJR05NRU5UOiBBbGlnbm1lbnQgc2hvdWxkIG1hdGNoIG9wZW4gcGFy ZW50aGVzaXMKIzE0MTogRklMRToga2VybmVsL2t0aHJlYWQuYzoyMzg6CisJbG9ja2RlcF9pbml0 X21hcF9jcm9zc2xvY2soJnNlbGYtPnBhcmtlZC5tYXAubWFwLAorCQkJIihrdGhyZWFkIGNvbXBs ZXRpb24pLT5wYXJrZWQiLAoKLToxNDE6IFdBUk5JTkc6RU1CRURERURfRlVOQ1RJT05fTkFNRTog UHJlZmVyIHVzaW5nICciJXMuLi4iLCBfX2Z1bmNfXycgdG8gdXNpbmcgJ2t0aHJlYWQnLCB0aGlz IGZ1bmN0aW9uJ3MgbmFtZSwgaW4gYSBzdHJpbmcKIzE0MTogRklMRToga2VybmVsL2t0aHJlYWQu YzoyMzg6CisJCQkiKGt0aHJlYWQgY29tcGxldGlvbiktPnBhcmtlZCIsCgotOjIwNzogQ0hFQ0s6 UEFSRU5USEVTSVNfQUxJR05NRU5UOiBBbGlnbm1lbnQgc2hvdWxkIG1hdGNoIG9wZW4gcGFyZW50 aGVzaXMKIzIwNzogRklMRToga2VybmVsL2t0aHJlYWQuYzo0NTQ6CitzdHJ1Y3QgdGFza19zdHJ1 Y3QgKl9rdGhyZWFkX2NyZWF0ZV9vbl9jcHUoaW50ICgqdGhyZWFkZm4pKHZvaWQgKmRhdGEpLAog CQkJCQkgIHZvaWQgKmRhdGEsIHVuc2lnbmVkIGludCBjcHUsCgotOjI5NTogV0FSTklORzpOT19B VVRIT1JfU0lHTl9PRkY6IE1pc3NpbmcgU2lnbmVkLW9mZi1ieTogbGluZSBieSBub21pbmFsIHBh dGNoIGF1dGhvciAnRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5jaD4nCgp0b3Rh bDogMCBlcnJvcnMsIDMgd2FybmluZ3MsIDYgY2hlY2tzLCAyNDAgbGluZXMgY2hlY2tlZAo2MTc4 NWU0M2MyZGMgbG9ja2RlcDogUmVtb3ZlIEdGUF9OT0xPQ0tERVAgYW5ub3RhdGlvbgotOjY6IEVS Uk9SOkdJVF9DT01NSVRfSUQ6IFBsZWFzZSB1c2UgZ2l0IGNvbW1pdCBkZXNjcmlwdGlvbiBzdHls ZSAnY29tbWl0IDwxMisgY2hhcnMgb2Ygc2hhMT4gKCI8dGl0bGUgbGluZT4iKScgLSBpZTogJ2Nv bW1pdCA3ZTc4NDQyMjZmMTAgKCJsb2NrZGVwOiBhbGxvdyB0byBkaXNhYmxlIHJlY2xhaW0gbG9j a3VwIGRldGVjdGlvbiIpJwojNjogClRoaXMgd2FzIG9yaWdpbmFsbHkgYWRkZWQgaW4gN2U3ODQ0 MjI2ZjEwICgibG9ja2RlcDogYWxsb3cgdG8gZGlzYWJsZQoKLTo2OTogV0FSTklORzpOT19BVVRI T1JfU0lHTl9PRkY6IE1pc3NpbmcgU2lnbmVkLW9mZi1ieTogbGluZSBieSBub21pbmFsIHBhdGNo IGF1dGhvciAnRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5jaD4nCgp0b3RhbDog MSBlcnJvcnMsIDEgd2FybmluZ3MsIDAgY2hlY2tzLCAzMiBsaW5lcyBjaGVja2VkCmNkZTUyN2M5 M2E3ZSBtbTogQ2hlY2sgaWYgbW11dCBub3RpZmllciBjYWxsYmFja3MgYXJlIGFsbG93ZWQgdG8g ZmFpbAotOjE5OiBFUlJPUjpTUEFDSU5HOiBzcGFjZSByZXF1aXJlZCBhZnRlciB0aGF0ICcsJyAo Y3R4OlZ4VikKIzE5OiBGSUxFOiBtbS9tbXVfbm90aWZpZXIuYzoxOTM6CisJCQkJV0FSTihibG9j a2FibGUsIiVwUyBjYWxsYmFjayBmYWlsdXJlIG5vdCBhbGxvd2VkXG4iLAogCQkJCSAgICAgICAg ICAgICAgXgoKLToyMzogV0FSTklORzpOT19BVVRIT1JfU0lHTl9PRkY6IE1pc3NpbmcgU2lnbmVk LW9mZi1ieTogbGluZSBieSBub21pbmFsIHBhdGNoIGF1dGhvciAnRGFuaWVsIFZldHRlciA8ZGFu aWVsLnZldHRlckBmZndsbC5jaD4nCgp0b3RhbDogMSBlcnJvcnMsIDEgd2FybmluZ3MsIDAgY2hl Y2tzLCA4IGxpbmVzIGNoZWNrZWQKMzlmNzVlYTAxMmI4IG1tLCBub3RpZmllcjogQ2F0Y2ggc2xl ZXBpbmcvYmxvY2tpbmcgZm9yICFibG9ja2FibGUKLTozMDogV0FSTklORzpOT19BVVRIT1JfU0lH Tl9PRkY6IE1pc3NpbmcgU2lnbmVkLW9mZi1ieTogbGluZSBieSBub21pbmFsIHBhdGNoIGF1dGhv ciAnRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5jaD4nCgp0b3RhbDogMCBlcnJv cnMsIDEgd2FybmluZ3MsIDAgY2hlY2tzLCAxNCBsaW5lcyBjaGVja2VkCmVjMmM0ZmQ2NzQ2NyBt bSwgbm90aWZpZXI6IEFkZCBhIGxvY2tkZXAgbWFwIGZvciBpbnZhbGlkYXRlX3JhbmdlX3N0YXJ0 Ci06NzM6IFdBUk5JTkc6Tk9fQVVUSE9SX1NJR05fT0ZGOiBNaXNzaW5nIFNpZ25lZC1vZmYtYnk6 IGxpbmUgYnkgbm9taW5hbCBwYXRjaCBhdXRob3IgJ0RhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0 ZXJAZmZ3bGwuY2g+JwoKdG90YWw6IDAgZXJyb3JzLCAxIHdhcm5pbmdzLCAwIGNoZWNrcywgMzQg bGluZXMgY2hlY2tlZAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwt Z2Z4Cg==