From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: [PATCH 2/4] x86/hvm: take a reference on ioreq server emulating domain Date: Fri, 16 Mar 2018 11:45:37 +0000 Message-ID: <20180316114539.16870-3-paul.durrant@citrix.com> References: <20180316114539.16870-1-paul.durrant@citrix.com> 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 1ewnny-0007O4-H7 for xen-devel@lists.xenproject.org; Fri, 16 Mar 2018 11:45:50 +0000 In-Reply-To: <20180316114539.16870-1-paul.durrant@citrix.com> 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: Andrew Cooper , Paul Durrant , Jan Beulich List-Id: xen-devel@lists.xenproject.org V2hlbiBhbiBpb3JlcSBzZXJ2ZXIgaXMgY3JlYXRlZCB0aGUgY29kZSBjdXJyZW50bHkgc3RvcmVz IHRoZSBpZApvZiB0aGUgZW11bGF0aW5nIGRvbWFpbiwgYnV0IGRvZXMgbm90IHRha2UgYSByZWZl cmVuY2Ugb24gdGhhdCBkb21haW4uCgpUaGlzIHBhdGNoIG1vZGlmaWVzIHRoZSBjb2RlIHRvIGhv bGQgYSByZWZlcmVuY2UgZm9yIHRoZSBsaWZldGltZSBvZiB0aGUKaW9yZXEgc2VydmVyLgoKTk9U RTogRm9yIHRoZSBkZWZhdWx0IHNlcnZlciBvbmx5IGl0IGlzIHRoZW9yaXRpY2FsbHkgcG9zc2li bGUgZm9yIHRoZQogICAgICBlbXVsYXRpbmcgZG9tYWluIHRvIGNoYW5nZSBkdXJpbmcgdGhlIGxp ZmV0aW1lIG9mIHRoZSBpb3JlcSBzZXJ2ZXIKICAgICAgKGlmIGEgdG9vbHMgZG9tYWluIG1vZGlm aWVzIEhWTV9QQVJBTV9ETV9ET01BSU4pIHNvIHRoaXMgZG9tYWluCiAgICAgIHJlZmVyZW5jZXMg YXJlIHN3aXp6bGVkIGluIHRoaXMgY2FzZS4KClNpZ25lZC1vZmYtYnk6IFBhdWwgRHVycmFudCA8 cGF1bC5kdXJyYW50QGNpdHJpeC5jb20+Ci0tLQpDYzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1 c2UuY29tPgpDYzogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KLS0t CiB4ZW4vYXJjaC94ODYvaHZtL2lvcmVxLmMgICAgICAgICB8IDEwMiArKysrKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tLS0tLS0KIHhlbi9pbmNsdWRlL2FzbS14ODYvaHZtL2RvbWFpbi5o IHwgICA0ICstCiAyIGZpbGVzIGNoYW5nZWQsIDczIGluc2VydGlvbnMoKyksIDMzIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9odm0vaW9yZXEuYyBiL3hlbi9hcmNoL3g4 Ni9odm0vaW9yZXEuYwppbmRleCBlZTVmNDdkZTY1Li44ZDFmZjQ2MTQ2IDEwMDY0NAotLS0gYS94 ZW4vYXJjaC94ODYvaHZtL2lvcmVxLmMKKysrIGIveGVuL2FyY2gveDg2L2h2bS9pb3JlcS5jCkBA IC0yMTgsNyArMjE4LDcgQEAgc3RhdGljIHZvaWQgaHZtX3VubWFwX2lvcmVxX3BhZ2Uoc3RydWN0 IGh2bV9pb3JlcV9zZXJ2ZXIgKnMsIGJvb2wgYnVmKQogc3RhdGljIGludCBodm1fbWFwX2lvcmVx X3BhZ2UoCiAgICAgc3RydWN0IGh2bV9pb3JlcV9zZXJ2ZXIgKnMsIGJvb2wgYnVmLCB1bnNpZ25l ZCBsb25nIGdmbikKIHsKLSAgICBzdHJ1Y3QgZG9tYWluICpkID0gcy0+ZG9tYWluOworICAgIHN0 cnVjdCBkb21haW4gKmQgPSBzLT50YXJnZXQ7CiAgICAgc3RydWN0IGh2bV9pb3JlcV9wYWdlICpp b3JwID0gYnVmID8gJnMtPmJ1ZmlvcmVxIDogJnMtPmlvcmVxOwogICAgIHN0cnVjdCBwYWdlX2lu Zm8gKnBhZ2U7CiAgICAgdm9pZCAqdmE7CkBAIC0zMDUsNiArMzA1LDcgQEAgc3RhdGljIGludCBo dm1faW9yZXFfc2VydmVyX2FkZF92Y3B1KHN0cnVjdCBodm1faW9yZXFfc2VydmVyICpzLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNfZGVmYXVsdCwgc3RydWN0 IHZjcHUgKnYpCiB7CiAgICAgc3RydWN0IGh2bV9pb3JlcV92Y3B1ICpzdjsKKyAgICBkb21pZF90 IGRvbWlkOwogICAgIGludCByYzsKIAogICAgIHN2ID0geHphbGxvYyhzdHJ1Y3QgaHZtX2lvcmVx X3ZjcHUpOwpAQCAtMzE1LDcgKzMxNiw5IEBAIHN0YXRpYyBpbnQgaHZtX2lvcmVxX3NlcnZlcl9h ZGRfdmNwdShzdHJ1Y3QgaHZtX2lvcmVxX3NlcnZlciAqcywKIAogICAgIHNwaW5fbG9jaygmcy0+ bG9jayk7CiAKLSAgICByYyA9IGFsbG9jX3VuYm91bmRfeGVuX2V2ZW50X2NoYW5uZWwodi0+ZG9t YWluLCB2LT52Y3B1X2lkLCBzLT5kb21pZCwKKyAgICBkb21pZCA9IHMtPmVtdWxhdG9yLT5kb21h aW5faWQ7CisKKyAgICByYyA9IGFsbG9jX3VuYm91bmRfeGVuX2V2ZW50X2NoYW5uZWwodi0+ZG9t YWluLCB2LT52Y3B1X2lkLCBkb21pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCk7CiAgICAgaWYgKCByYyA8IDAgKQogICAgICAgICBnb3RvIGZhaWwyOwpA QCAtMzI0LDkgKzMyNyw5IEBAIHN0YXRpYyBpbnQgaHZtX2lvcmVxX3NlcnZlcl9hZGRfdmNwdShz dHJ1Y3QgaHZtX2lvcmVxX3NlcnZlciAqcywKIAogICAgIGlmICggdi0+dmNwdV9pZCA9PSAwICYm IHMtPmJ1ZmlvcmVxLnZhICE9IE5VTEwgKQogICAgIHsKLSAgICAgICAgc3RydWN0IGRvbWFpbiAq ZCA9IHMtPmRvbWFpbjsKKyAgICAgICAgc3RydWN0IGRvbWFpbiAqZCA9IHMtPnRhcmdldDsKIAot ICAgICAgICByYyA9IGFsbG9jX3VuYm91bmRfeGVuX2V2ZW50X2NoYW5uZWwodi0+ZG9tYWluLCAw LCBzLT5kb21pZCwgTlVMTCk7CisgICAgICAgIHJjID0gYWxsb2NfdW5ib3VuZF94ZW5fZXZlbnRf Y2hhbm5lbCh2LT5kb21haW4sIDAsIGRvbWlkLCBOVUxMKTsKICAgICAgICAgaWYgKCByYyA8IDAg KQogICAgICAgICAgICAgZ290byBmYWlsMzsKIApAQCAtNDM0LDcgKzQzNyw3IEBAIHN0YXRpYyBp bnQgaHZtX2lvcmVxX3NlcnZlcl9zZXR1cF9wYWdlcyhzdHJ1Y3QgaHZtX2lvcmVxX3NlcnZlciAq cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGlzX2RlZmF1 bHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBoYW5kbGVf YnVmaW9yZXEpCiB7Ci0gICAgc3RydWN0IGRvbWFpbiAqZCA9IHMtPmRvbWFpbjsKKyAgICBzdHJ1 Y3QgZG9tYWluICpkID0gcy0+dGFyZ2V0OwogICAgIHVuc2lnbmVkIGxvbmcgaW9yZXFfZ2ZuID0g Z2ZuX3goSU5WQUxJRF9HRk4pOwogICAgIHVuc2lnbmVkIGxvbmcgYnVmaW9yZXFfZ2ZuID0gZ2Zu X3goSU5WQUxJRF9HRk4pOwogICAgIGludCByYzsKQEAgLTQ3MSw3ICs0NzQsNyBAQCBzdGF0aWMg aW50IGh2bV9pb3JlcV9zZXJ2ZXJfc2V0dXBfcGFnZXMoc3RydWN0IGh2bV9pb3JlcV9zZXJ2ZXIg KnMsCiBzdGF0aWMgdm9pZCBodm1faW9yZXFfc2VydmVyX3VubWFwX3BhZ2VzKHN0cnVjdCBodm1f aW9yZXFfc2VydmVyICpzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBib29sIGlzX2RlZmF1bHQpCiB7Ci0gICAgc3RydWN0IGRvbWFpbiAqZCA9IHMtPmRvbWFpbjsK KyAgICBzdHJ1Y3QgZG9tYWluICpkID0gcy0+dGFyZ2V0OwogICAgIGJvb2wgaGFuZGxlX2J1Zmlv cmVxID0gISFzLT5idWZpb3JlcS52YTsKIAogICAgIGlmICggaGFuZGxlX2J1ZmlvcmVxICkKQEAg LTUyMSw3ICs1MjQsNyBAQCBzdGF0aWMgaW50IGh2bV9pb3JlcV9zZXJ2ZXJfYWxsb2NfcmFuZ2Vz ZXRzKHN0cnVjdCBodm1faW9yZXFfc2VydmVyICpzLAogICAgICAgICBpZiAoIHJjICkKICAgICAg ICAgICAgIGdvdG8gZmFpbDsKIAotICAgICAgICBzLT5yYW5nZVtpXSA9IHJhbmdlc2V0X25ldyhz LT5kb21haW4sIG5hbWUsCisgICAgICAgIHMtPnJhbmdlW2ldID0gcmFuZ2VzZXRfbmV3KHMtPnRh cmdldCwgbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUkFOR0VTRVRG X3ByZXR0eXByaW50X2hleCk7CiAKICAgICAgICAgeGZyZWUobmFtZSk7CkBAIC01NDUsNyArNTQ4 LDcgQEAgc3RhdGljIGludCBodm1faW9yZXFfc2VydmVyX2FsbG9jX3Jhbmdlc2V0cyhzdHJ1Y3Qg aHZtX2lvcmVxX3NlcnZlciAqcywKIHN0YXRpYyB2b2lkIGh2bV9pb3JlcV9zZXJ2ZXJfZW5hYmxl KHN0cnVjdCBodm1faW9yZXFfc2VydmVyICpzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgYm9vbCBpc19kZWZhdWx0KQogewotICAgIHN0cnVjdCBkb21haW4gKmQgPSBzLT5k b21haW47CisgICAgc3RydWN0IGRvbWFpbiAqZCA9IHMtPnRhcmdldDsKICAgICBzdHJ1Y3QgaHZt X2lvcmVxX3ZjcHUgKnN2OwogICAgIGJvb2wgaGFuZGxlX2J1ZmlvcmVxID0gISFzLT5idWZpb3Jl cS52YTsKIApAQCAtNTc2LDcgKzU3OSw3IEBAIHN0YXRpYyB2b2lkIGh2bV9pb3JlcV9zZXJ2ZXJf ZW5hYmxlKHN0cnVjdCBodm1faW9yZXFfc2VydmVyICpzLAogc3RhdGljIHZvaWQgaHZtX2lvcmVx X3NlcnZlcl9kaXNhYmxlKHN0cnVjdCBodm1faW9yZXFfc2VydmVyICpzLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNfZGVmYXVsdCkKIHsKLSAgICBzdHJ1Y3Qg ZG9tYWluICpkID0gcy0+ZG9tYWluOworICAgIHN0cnVjdCBkb21haW4gKmQgPSBzLT50YXJnZXQ7 CiAgICAgYm9vbCBoYW5kbGVfYnVmaW9yZXEgPSAhIXMtPmJ1ZmlvcmVxLnZhOwogCiAgICAgc3Bp bl9sb2NrKCZzLT5sb2NrKTsKQEAgLTU5OCw2ICs2MDEsMjAgQEAgc3RhdGljIHZvaWQgaHZtX2lv cmVxX3NlcnZlcl9kaXNhYmxlKHN0cnVjdCBodm1faW9yZXFfc2VydmVyICpzLAogICAgIHNwaW5f dW5sb2NrKCZzLT5sb2NrKTsKIH0KIAorc3RhdGljIGludCBnZXRfZGVmYXVsdF9lbXVsYXRvcihk b21pZF90IGRvbWlkLCBzdHJ1Y3QgZG9tYWluICoqZW11bGF0b3IpCit7CisgICAgICAgIGJvb2wg cmVmOworCisgICAgICAgICplbXVsYXRvciA9IHJjdV9sb2NrX2RvbWFpbl9ieV9pZChkb21pZCk7 CisgICAgICAgIGlmICggISplbXVsYXRvciApCisgICAgICAgICAgICByZXR1cm4gLUVTUkNIOwor CisgICAgICAgIHJlZiA9ICEhZ2V0X2RvbWFpbigqZW11bGF0b3IpOyAvKiBmYWlscyBpZiBkb21h aW4gaXMgZHlpbmcgKi8KKyAgICAgICAgcmN1X3VubG9ja19kb21haW4oKmVtdWxhdG9yKTsKKwor ICAgICAgICByZXR1cm4gcmVmID8gMCA6IC1FQUNDRVM7Cit9CisKIHN0YXRpYyBpbnQgaHZtX2lv cmVxX3NlcnZlcl9pbml0KHN0cnVjdCBodm1faW9yZXFfc2VydmVyICpzLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRvbWFpbiAqZCwgYm9vbCBpc19kZWZhdWx0LAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGJ1ZmlvcmVxX2hhbmRsaW5nLCBp b3NlcnZpZF90IGlkKQpAQCAtNjA2LDExICs2MjMsMjMgQEAgc3RhdGljIGludCBodm1faW9yZXFf c2VydmVyX2luaXQoc3RydWN0IGh2bV9pb3JlcV9zZXJ2ZXIgKnMsCiAgICAgaW50IHJjOwogCiAg ICAgcy0+aWQgPSBpZDsKLSAgICBzLT5kb21haW4gPSBkOworICAgIHMtPnRhcmdldCA9IGQ7CiAK LSAgICBzLT5kb21pZCA9IGlzX2RlZmF1bHQgPwotICAgICAgICBkLT5hcmNoLmh2bV9kb21haW4u cGFyYW1zW0hWTV9QQVJBTV9ETV9ET01BSU5dIDoKLSAgICAgICAgY3VycmVudC0+ZG9tYWluLT5k b21haW5faWQ7CisgICAgaWYgKCBpc19kZWZhdWx0ICkKKyAgICB7CisgICAgICAgIGRvbWlkX3Qg ZG9taWQgPSBkLT5hcmNoLmh2bV9kb21haW4ucGFyYW1zW0hWTV9QQVJBTV9ETV9ET01BSU5dOwor CisgICAgICAgIHJjID0gZ2V0X2RlZmF1bHRfZW11bGF0b3IoZG9taWQsICZzLT5lbXVsYXRvcik7 CisgICAgICAgIGlmICggcmMgKQorICAgICAgICAgICAgcmV0dXJuIHJjOworICAgIH0gZWxzZSB7 CisgICAgICAgIHN0cnVjdCBkb21haW4gKmN1cnJkID0gY3VycmVudC0+ZG9tYWluOworCisgICAg ICAgIGlmICggIWdldF9kb21haW4oY3VycmQpICkKKyAgICAgICAgICAgIHJldHVybiAtRUFDQ0VT OworCisgICAgICAgIHMtPmVtdWxhdG9yID0gY3VycmQ7CisgICAgfQogCiAgICAgc3Bpbl9sb2Nr X2luaXQoJnMtPmxvY2spOwogICAgIElOSVRfTElTVF9IRUFEKCZzLT5pb3JlcV92Y3B1X2xpc3Qp OwpAQCAtNjU0LDYgKzY4Myw4IEBAIHN0YXRpYyB2b2lkIGh2bV9pb3JlcV9zZXJ2ZXJfZGVpbml0 KHN0cnVjdCBodm1faW9yZXFfc2VydmVyICpzLAogICAgIGh2bV9pb3JlcV9zZXJ2ZXJfcmVtb3Zl X2FsbF92Y3B1cyhzKTsKICAgICBodm1faW9yZXFfc2VydmVyX3VubWFwX3BhZ2VzKHMsIGlzX2Rl ZmF1bHQpOwogICAgIGh2bV9pb3JlcV9zZXJ2ZXJfZnJlZV9yYW5nZXNldHMocywgaXNfZGVmYXVs dCk7CisKKyAgICBwdXRfZG9tYWluKHMtPmVtdWxhdG9yKTsKIH0KIAogc3RhdGljIGlvc2Vydmlk X3QgbmV4dF9pb3NlcnZpZChzdHJ1Y3QgZG9tYWluICpkKQpAQCAtMTEyNSwzNSArMTE1Niw0NiBA QCBpbnQgaHZtX3NldF9kbV9kb21haW4oc3RydWN0IGRvbWFpbiAqZCwgZG9taWRfdCBkb21pZCkK ICAgICBkb21haW5fcGF1c2UoZCk7CiAgICAgc3Bpbl9sb2NrKCZzLT5sb2NrKTsKIAotICAgIGlm ICggcy0+ZG9taWQgIT0gZG9taWQgKQorICAgIGlmICggZG9taWQgIT0gcy0+ZW11bGF0b3ItPmRv bWFpbl9pZCApCiAgICAgewotICAgICAgICBzdHJ1Y3QgaHZtX2lvcmVxX3ZjcHUgKnN2OworICAg ICAgICBzdHJ1Y3QgZG9tYWluICplbXVsYXRvcjsKIAotICAgICAgICBsaXN0X2Zvcl9lYWNoX2Vu dHJ5ICggc3YsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcy0+aW9yZXFfdmNwdV9s aXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdF9lbnRyeSApCisgICAgICAg IHJjID0gZ2V0X2RlZmF1bHRfZW11bGF0b3IoZG9taWQsICZlbXVsYXRvcik7CisgICAgICAgIGlm ICggIXJjICkKICAgICAgICAgewotICAgICAgICAgICAgc3RydWN0IHZjcHUgKnYgPSBzdi0+dmNw dTsKKyAgICAgICAgICAgIHN0cnVjdCBodm1faW9yZXFfdmNwdSAqc3Y7CiAKLSAgICAgICAgICAg IGlmICggdi0+dmNwdV9pZCA9PSAwICkKKyAgICAgICAgICAgIGxpc3RfZm9yX2VhY2hfZW50cnkg KCBzdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcy0+aW9yZXFfdmNwdV9s aXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RfZW50cnkgKQogICAg ICAgICAgICAgeworICAgICAgICAgICAgICAgIHN0cnVjdCB2Y3B1ICp2ID0gc3YtPnZjcHU7CisK KyAgICAgICAgICAgICAgICBpZiAoIHYtPnZjcHVfaWQgPT0gMCApCisgICAgICAgICAgICAgICAg eworICAgICAgICAgICAgICAgICAgICByYyA9IGh2bV9yZXBsYWNlX2V2ZW50X2NoYW5uZWwodiwg ZG9taWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmcy0+YnVmaW9yZXFfZXZ0Y2huKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKCByYyApCisg ICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKKworICAgICAgICAgICAgICAgICAgICBkLT5h cmNoLmh2bV9kb21haW4ucGFyYW1zW0hWTV9QQVJBTV9CVUZJT1JFUV9FVlRDSE5dID0KKyAgICAg ICAgICAgICAgICAgICAgICAgIHMtPmJ1ZmlvcmVxX2V2dGNobjsKKyAgICAgICAgICAgICAgICB9 CisKICAgICAgICAgICAgICAgICByYyA9IGh2bV9yZXBsYWNlX2V2ZW50X2NoYW5uZWwodiwgZG9t aWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzLT5i dWZpb3JlcV9ldnRjaG4pOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAmc3YtPmlvcmVxX2V2dGNobik7CiAgICAgICAgICAgICAgICAgaWYgKCByYyApCiAg ICAgICAgICAgICAgICAgICAgIGJyZWFrOwogCi0gICAgICAgICAgICAgICAgZC0+YXJjaC5odm1f ZG9tYWluLnBhcmFtc1tIVk1fUEFSQU1fQlVGSU9SRVFfRVZUQ0hOXSA9Ci0gICAgICAgICAgICAg ICAgICAgIHMtPmJ1ZmlvcmVxX2V2dGNobjsKKyAgICAgICAgICAgICAgICBodm1fdXBkYXRlX2lv cmVxX2V2dGNobihzLCBzdik7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIHJjID0gaHZt X3JlcGxhY2VfZXZlbnRfY2hhbm5lbCh2LCBkb21pZCwgJnN2LT5pb3JlcV9ldnRjaG4pOwotICAg ICAgICAgICAgaWYgKCByYyApCi0gICAgICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgICAg IGh2bV91cGRhdGVfaW9yZXFfZXZ0Y2huKHMsIHN2KTsKKyAgICAgICAgICAgIGlmICggIXJjICkK KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBwdXRfZG9tYWluKHMtPmVtdWxhdG9yKTsK KyAgICAgICAgICAgICAgICBzLT5lbXVsYXRvciA9IGVtdWxhdG9yOworICAgICAgICAgICAgfQog ICAgICAgICB9Ci0KLSAgICAgICAgcy0+ZG9taWQgPSBkb21pZDsKICAgICB9CiAKICAgICBzcGlu X3VubG9jaygmcy0+bG9jayk7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS9k b21haW4uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL2RvbWFpbi5oCmluZGV4IDdmMTI4YzA1 ZmYuLjZlMDNkMDI0YzggMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL2RvbWFp bi5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL2RvbWFpbi5oCkBAIC01MywxMyArNTMs MTEgQEAgc3RydWN0IGh2bV9pb3JlcV92Y3B1IHsKIAogc3RydWN0IGh2bV9pb3JlcV9zZXJ2ZXIg ewogICAgIHN0cnVjdCBsaXN0X2hlYWQgICAgICAgbGlzdF9lbnRyeTsKLSAgICBzdHJ1Y3QgZG9t YWluICAgICAgICAgICpkb21haW47CisgICAgc3RydWN0IGRvbWFpbiAgICAgICAgICAqdGFyZ2V0 LCAqZW11bGF0b3I7CiAKICAgICAvKiBMb2NrIHRvIHNlcmlhbGl6ZSB0b29sc3RhY2sgbW9kaWZp Y2F0aW9ucyAqLwogICAgIHNwaW5sb2NrX3QgICAgICAgICAgICAgbG9jazsKIAotICAgIC8qIERv bWFpbiBpZCBvZiBlbXVsYXRpbmcgZG9tYWluICovCi0gICAgZG9taWRfdCAgICAgICAgICAgICAg ICBkb21pZDsKICAgICBpb3NlcnZpZF90ICAgICAgICAgICAgIGlkOwogICAgIHN0cnVjdCBodm1f aW9yZXFfcGFnZSAgaW9yZXE7CiAgICAgc3RydWN0IGxpc3RfaGVhZCAgICAgICBpb3JlcV92Y3B1 X2xpc3Q7Ci0tIAoyLjExLjAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9q ZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVu LWRldmVs