From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Subject: [PATCH v5 32/43] i386 hw/: Don't use CPUState Date: Wed, 14 Mar 2012 22:42:45 +0100 Message-ID: <1331761376-20362-33-git-send-email-afaerber@suse.de> References: <1331761376-20362-1-git-send-email-afaerber@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1331761376-20362-1-git-send-email-afaerber@suse.de> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: qemu-devel@nongnu.org Cc: "open list:X86" , =?UTF-8?q?Andreas=20F=C3=A4rber?= , Stefano Stabellini List-Id: xen-devel@lists.xenproject.org U2NyaXB0ZWQgY29udmVyc2lvbjoKICBmb3IgZmlsZSBpbiBody9hcGljLmggaHcva3ZtL2FwaWMu YyBody9rdm12YXBpYy5jIGh3L3BjLmMgaHcvdm1wb3J0LmMgaHcveGVuX21hY2hpbmVfcHYuYzsg ZG8KICAgIHNlZCAtaSAicy9DUFVTdGF0ZS9DUFVYODZTdGF0ZS9nIiAkZmlsZQogIGRvbmUKClNp Z25lZC1vZmYtYnk6IEFuZHJlYXMgRsOkcmJlciA8YWZhZXJiZXJAc3VzZS5kZT4KQWNrZWQtYnk6 IEFudGhvbnkgTGlndW9yaSA8YWxpZ3VvcmlAdXMuaWJtLmNvbT4KLS0tCiBody9hcGljLmggICAg ICAgICAgIHwgICAgMiArLQogaHcva3ZtL2FwaWMuYyAgICAgICB8ICAgIDIgKy0KIGh3L2t2bXZh cGljLmMgICAgICAgfCAgIDIyICsrKysrKysrKysrLS0tLS0tLS0tLS0KIGh3L3BjLmMgICAgICAg ICAgICAgfCAgIDIwICsrKysrKysrKystLS0tLS0tLS0tCiBody92bXBvcnQuYyAgICAgICAgIHwg ICAxMiArKysrKystLS0tLS0KIGh3L3hlbl9tYWNoaW5lX3B2LmMgfCAgICAyICstCiA2IGZpbGVz IGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyksIDMwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2h3L2FwaWMuaCBiL2h3L2FwaWMuaAppbmRleCBkNmQ2ZDQ0Li42MjE3OWNlIDEwMDY0NAotLS0g YS9ody9hcGljLmgKKysrIGIvaHcvYXBpYy5oCkBAIC0yMiw3ICsyMiw3IEBAIHZvaWQgYXBpY19o YW5kbGVfdHByX2FjY2Vzc19yZXBvcnQoRGV2aWNlU3RhdGUgKmQsIHRhcmdldF91bG9uZyBpcCwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVFBSQWNjZXNzIGFjY2Vzcyk7CiAK IC8qIHBjLmMgKi8KLWludCBjcHVfaXNfYnNwKENQVVN0YXRlICplbnYpOworaW50IGNwdV9pc19i c3AoQ1BVWDg2U3RhdGUgKmVudik7CiBEZXZpY2VTdGF0ZSAqY3B1X2dldF9jdXJyZW50X2FwaWMo dm9pZCk7CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvaHcva3ZtL2FwaWMuYyBiL2h3L2t2bS9hcGlj LmMKaW5kZXggOWNhNjhmOC4uZmZlN2E1MiAxMDA2NDQKLS0tIGEvaHcva3ZtL2FwaWMuYworKysg Yi9ody9rdm0vYXBpYy5jCkBAIC0xMjQsNyArMTI0LDcgQEAgc3RhdGljIHZvaWQga3ZtX2FwaWNf dmFwaWNfYmFzZV91cGRhdGUoQVBJQ0NvbW1vblN0YXRlICpzKQogc3RhdGljIHZvaWQgZG9faW5q ZWN0X2V4dGVybmFsX25taSh2b2lkICpkYXRhKQogewogICAgIEFQSUNDb21tb25TdGF0ZSAqcyA9 IGRhdGE7Ci0gICAgQ1BVU3RhdGUgKmVudiA9IHMtPmNwdV9lbnY7CisgICAgQ1BVWDg2U3RhdGUg KmVudiA9IHMtPmNwdV9lbnY7CiAgICAgdWludDMyX3QgbHZ0OwogICAgIGludCByZXQ7CiAKZGlm ZiAtLWdpdCBhL2h3L2t2bXZhcGljLmMgYi9ody9rdm12YXBpYy5jCmluZGV4IGU4YmZlZWMuLjVk ODM2MjUgMTAwNjQ0Ci0tLSBhL2h3L2t2bXZhcGljLmMKKysrIGIvaHcva3ZtdmFwaWMuYwpAQCAt MTQyLDcgKzE0Miw3IEBAIHN0YXRpYyB2b2lkIHVwZGF0ZV9ndWVzdF9yb21fc3RhdGUoVkFQSUNS T01TdGF0ZSAqcykKICAgICB3cml0ZV9ndWVzdF9yb21fc3RhdGUocyk7CiB9CiAKLXN0YXRpYyBp bnQgZmluZF9yZWFsX3Rwcl9hZGRyKFZBUElDUk9NU3RhdGUgKnMsIENQVVN0YXRlICplbnYpCitz dGF0aWMgaW50IGZpbmRfcmVhbF90cHJfYWRkcihWQVBJQ1JPTVN0YXRlICpzLCBDUFVYODZTdGF0 ZSAqZW52KQogewogICAgIHRhcmdldF9waHlzX2FkZHJfdCBwYWRkcjsKICAgICB0YXJnZXRfdWxv bmcgYWRkcjsKQEAgLTE4NSw3ICsxODUsNyBAQCBzdGF0aWMgYm9vbCBvcGNvZGVfbWF0Y2hlcyh1 aW50OF90ICpvcGNvZGUsIGNvbnN0IFRQUkluc3RydWN0aW9uICppbnN0cikKICAgICAgICAgIG1v ZHJtX3JlZyhvcGNvZGVbMV0pID09IGluc3RyLT5tb2RybV9yZWcpOwogfQogCi1zdGF0aWMgaW50 IGV2YWx1YXRlX3Rwcl9pbnN0cnVjdGlvbihWQVBJQ1JPTVN0YXRlICpzLCBDUFVTdGF0ZSAqZW52 LAorc3RhdGljIGludCBldmFsdWF0ZV90cHJfaW5zdHJ1Y3Rpb24oVkFQSUNST01TdGF0ZSAqcywg Q1BVWDg2U3RhdGUgKmVudiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRh cmdldF91bG9uZyAqcGlwLCBUUFJBY2Nlc3MgYWNjZXNzKQogewogICAgIGNvbnN0IFRQUkluc3Ry dWN0aW9uICppbnN0cjsKQEAgLTI2Nyw3ICsyNjcsNyBAQCBpbnN0cnVjdGlvbl9vazoKICAgICBy ZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCB1cGRhdGVfcm9tX21hcHBpbmcoVkFQSUNST01TdGF0 ZSAqcywgQ1BVU3RhdGUgKmVudiwgdGFyZ2V0X3Vsb25nIGlwKQorc3RhdGljIGludCB1cGRhdGVf cm9tX21hcHBpbmcoVkFQSUNST01TdGF0ZSAqcywgQ1BVWDg2U3RhdGUgKmVudiwgdGFyZ2V0X3Vs b25nIGlwKQogewogICAgIHRhcmdldF9waHlzX2FkZHJfdCBwYWRkcjsKICAgICB1aW50MzJfdCBy b21fc3RhdGVfdmFkZHI7CkBAIC0zMzAsNyArMzMwLDcgQEAgc3RhdGljIGludCB1cGRhdGVfcm9t X21hcHBpbmcoVkFQSUNST01TdGF0ZSAqcywgQ1BVU3RhdGUgKmVudiwgdGFyZ2V0X3Vsb25nIGlw KQogICogY2Fubm90IGJlIGFjY2Vzc2VkIG9yIGlzIGNvbnNpZGVyZWQgaW52YWxpZC4gVGhpcyBh bHNvIGVuc3VyZXMgdGhhdCB3ZSBhcmUKICAqIG5vdCBwYXRjaGluZyB0aGUgd3JvbmcgZ3Vlc3Qu CiAgKi8KLXN0YXRpYyBpbnQgZ2V0X2twY3JfbnVtYmVyKENQVVN0YXRlICplbnYpCitzdGF0aWMg aW50IGdldF9rcGNyX251bWJlcihDUFVYODZTdGF0ZSAqZW52KQogewogICAgIHN0cnVjdCBrcGNy IHsKICAgICAgICAgdWludDhfdCAgZmlsbDFbMHgxY107CkBAIC0zNDcsNyArMzQ3LDcgQEAgc3Rh dGljIGludCBnZXRfa3Bjcl9udW1iZXIoQ1BVU3RhdGUgKmVudikKICAgICByZXR1cm4ga3Bjci5u dW1iZXI7CiB9CiAKLXN0YXRpYyBpbnQgdmFwaWNfZW5hYmxlKFZBUElDUk9NU3RhdGUgKnMsIENQ VVN0YXRlICplbnYpCitzdGF0aWMgaW50IHZhcGljX2VuYWJsZShWQVBJQ1JPTVN0YXRlICpzLCBD UFVYODZTdGF0ZSAqZW52KQogewogICAgIGludCBjcHVfbnVtYmVyID0gZ2V0X2twY3JfbnVtYmVy KGVudik7CiAgICAgdGFyZ2V0X3BoeXNfYWRkcl90IHZhcGljX3BhZGRyOwpAQCAtMzY3LDEyICsz NjcsMTIgQEAgc3RhdGljIGludCB2YXBpY19lbmFibGUoVkFQSUNST01TdGF0ZSAqcywgQ1BVU3Rh dGUgKmVudikKICAgICByZXR1cm4gMDsKIH0KIAotc3RhdGljIHZvaWQgcGF0Y2hfYnl0ZShDUFVT dGF0ZSAqZW52LCB0YXJnZXRfdWxvbmcgYWRkciwgdWludDhfdCBieXRlKQorc3RhdGljIHZvaWQg cGF0Y2hfYnl0ZShDUFVYODZTdGF0ZSAqZW52LCB0YXJnZXRfdWxvbmcgYWRkciwgdWludDhfdCBi eXRlKQogewogICAgIGNwdV9tZW1vcnlfcndfZGVidWcoZW52LCBhZGRyLCAmYnl0ZSwgMSwgMSk7 CiB9CiAKLXN0YXRpYyB2b2lkIHBhdGNoX2NhbGwoVkFQSUNST01TdGF0ZSAqcywgQ1BVU3RhdGUg KmVudiwgdGFyZ2V0X3Vsb25nIGlwLAorc3RhdGljIHZvaWQgcGF0Y2hfY2FsbChWQVBJQ1JPTVN0 YXRlICpzLCBDUFVYODZTdGF0ZSAqZW52LCB0YXJnZXRfdWxvbmcgaXAsCiAgICAgICAgICAgICAg ICAgICAgICAgIHVpbnQzMl90IHRhcmdldCkKIHsKICAgICB1aW50MzJfdCBvZmZzZXQ7CkBAIC0z ODIsNyArMzgyLDcgQEAgc3RhdGljIHZvaWQgcGF0Y2hfY2FsbChWQVBJQ1JPTVN0YXRlICpzLCBD UFVTdGF0ZSAqZW52LCB0YXJnZXRfdWxvbmcgaXAsCiAgICAgY3B1X21lbW9yeV9yd19kZWJ1Zyhl bnYsIGlwICsgMSwgKHZvaWQgKikmb2Zmc2V0LCBzaXplb2Yob2Zmc2V0KSwgMSk7CiB9CiAKLXN0 YXRpYyB2b2lkIHBhdGNoX2luc3RydWN0aW9uKFZBUElDUk9NU3RhdGUgKnMsIENQVVN0YXRlICpl bnYsIHRhcmdldF91bG9uZyBpcCkKK3N0YXRpYyB2b2lkIHBhdGNoX2luc3RydWN0aW9uKFZBUElD Uk9NU3RhdGUgKnMsIENQVVg4NlN0YXRlICplbnYsIHRhcmdldF91bG9uZyBpcCkKIHsKICAgICB0 YXJnZXRfcGh5c19hZGRyX3QgcGFkZHI7CiAgICAgVkFQSUNIYW5kbGVycyAqaGFuZGxlcnM7CkBA IC00MzksNyArNDM5LDcgQEAgdm9pZCB2YXBpY19yZXBvcnRfdHByX2FjY2VzcyhEZXZpY2VTdGF0 ZSAqZGV2LCB2b2lkICpjcHUsIHRhcmdldF91bG9uZyBpcCwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgVFBSQWNjZXNzIGFjY2VzcykKIHsKICAgICBWQVBJQ1JPTVN0YXRlICpzID0gRE9f VVBDQVNUKFZBUElDUk9NU3RhdGUsIGJ1c2Rldi5xZGV2LCBkZXYpOwotICAgIENQVVN0YXRlICpl bnYgPSBjcHU7CisgICAgQ1BVWDg2U3RhdGUgKmVudiA9IGNwdTsKIAogICAgIGNwdV9zeW5jaHJv bml6ZV9zdGF0ZShlbnYpOwogCkBAIC00NzUsNyArNDc1LDcgQEAgc3RhdGljIHZvaWQgdmFwaWNf ZW5hYmxlX3Rwcl9yZXBvcnRpbmcoYm9vbCBlbmFibGUpCiAgICAgVkFQSUNFbmFibGVUUFJSZXBv cnRpbmcgaW5mbyA9IHsKICAgICAgICAgLmVuYWJsZSA9IGVuYWJsZSwKICAgICB9OwotICAgIENQ VVN0YXRlICplbnY7CisgICAgQ1BVWDg2U3RhdGUgKmVudjsKIAogICAgIGZvciAoZW52ID0gZmly c3RfY3B1OyBlbnYgIT0gTlVMTDsgZW52ID0gZW52LT5uZXh0X2NwdSkgewogICAgICAgICBpbmZv LmFwaWMgPSBlbnYtPmFwaWNfc3RhdGU7CkBAIC02MDYsNyArNjA2LDcgQEAgc3RhdGljIGludCB2 YXBpY19wcmVwYXJlKFZBUElDUk9NU3RhdGUgKnMpCiBzdGF0aWMgdm9pZCB2YXBpY193cml0ZSh2 b2lkICpvcGFxdWUsIHRhcmdldF9waHlzX2FkZHJfdCBhZGRyLCB1aW50NjRfdCBkYXRhLAogICAg ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNpemUpCiB7Ci0gICAgQ1BVU3RhdGUg KmVudiA9IGNwdV9zaW5nbGVfZW52OworICAgIENQVVg4NlN0YXRlICplbnYgPSBjcHVfc2luZ2xl X2VudjsKICAgICB0YXJnZXRfcGh5c19hZGRyX3Qgcm9tX3BhZGRyOwogICAgIFZBUElDUk9NU3Rh dGUgKnMgPSBvcGFxdWU7CiAKZGlmZiAtLWdpdCBhL2h3L3BjLmMgYi9ody9wYy5jCmluZGV4IGFj YTQ0NjAuLjgzYTFiNWIgMTAwNjQ0Ci0tLSBhL2h3L3BjLmMKKysrIGIvaHcvcGMuYwpAQCAtMTQw LDcgKzE0MCw3IEBAIHZvaWQgY3B1X3NtbV9yZWdpc3RlcihjcHVfc2V0X3NtbV90IGNhbGxiYWNr LCB2b2lkICphcmcpCiAgICAgc21tX2FyZyA9IGFyZzsKIH0KIAotdm9pZCBjcHVfc21tX3VwZGF0 ZShDUFVTdGF0ZSAqZW52KQordm9pZCBjcHVfc21tX3VwZGF0ZShDUFVYODZTdGF0ZSAqZW52KQog ewogICAgIGlmIChzbW1fc2V0ICYmIHNtbV9hcmcgJiYgZW52ID09IGZpcnN0X2NwdSkKICAgICAg ICAgc21tX3NldCghIShlbnYtPmhmbGFncyAmIEhGX1NNTV9NQVNLKSwgc21tX2FyZyk7CkBAIC0x NDgsNyArMTQ4LDcgQEAgdm9pZCBjcHVfc21tX3VwZGF0ZShDUFVTdGF0ZSAqZW52KQogCiAKIC8q IElSUSBoYW5kbGluZyAqLwotaW50IGNwdV9nZXRfcGljX2ludGVycnVwdChDUFVTdGF0ZSAqZW52 KQoraW50IGNwdV9nZXRfcGljX2ludGVycnVwdChDUFVYODZTdGF0ZSAqZW52KQogewogICAgIGlu dCBpbnRubzsKIApAQCAtMTY3LDcgKzE2Nyw3IEBAIGludCBjcHVfZ2V0X3BpY19pbnRlcnJ1cHQo Q1BVU3RhdGUgKmVudikKIAogc3RhdGljIHZvaWQgcGljX2lycV9yZXF1ZXN0KHZvaWQgKm9wYXF1 ZSwgaW50IGlycSwgaW50IGxldmVsKQogewotICAgIENQVVN0YXRlICplbnYgPSBmaXJzdF9jcHU7 CisgICAgQ1BVWDg2U3RhdGUgKmVudiA9IGZpcnN0X2NwdTsKIAogICAgIERQUklOVEYoInBpY19p cnFzOiAlcyBpcnEgJWRcbiIsIGxldmVsPyAicmFpc2UiIDogImxvd2VyIiwgaXJxKTsKICAgICBp ZiAoZW52LT5hcGljX3N0YXRlKSB7CkBAIC01MjIsNyArNTIyLDcgQEAgdHlwZV9pbml0KHBvcnQ5 Ml9yZWdpc3Rlcl90eXBlcykKIAogc3RhdGljIHZvaWQgaGFuZGxlX2EyMF9saW5lX2NoYW5nZSh2 b2lkICpvcGFxdWUsIGludCBpcnEsIGludCBsZXZlbCkKIHsKLSAgICBDUFVTdGF0ZSAqY3B1ID0g b3BhcXVlOworICAgIENQVVg4NlN0YXRlICpjcHUgPSBvcGFxdWU7CiAKICAgICAvKiBYWFg6IHNl bmQgdG8gYWxsIENQVXMgPyAqLwogICAgIC8qIFhYWDogYWRkIGxvZ2ljIHRvIGhhbmRsZSBtdWx0 aXBsZSBBMjAgbGluZSBzb3VyY2VzICovCkBAIC04NjksNyArODY5LDcgQEAgdm9pZCBwY19pbml0 X25lMmtfaXNhKElTQUJ1cyAqYnVzLCBOSUNJbmZvICpuZCkKICAgICBuYl9uZTJrKys7CiB9CiAK LWludCBjcHVfaXNfYnNwKENQVVN0YXRlICplbnYpCitpbnQgY3B1X2lzX2JzcChDUFVYODZTdGF0 ZSAqZW52KQogewogICAgIC8qIFdlIGhhcmQtd2lyZSB0aGUgQlNQIHRvIHRoZSBmaXJzdCBDUFUu ICovCiAgICAgcmV0dXJuIGVudi0+Y3B1X2luZGV4ID09IDA7CkBAIC05MTcsNyArOTE3LDcgQEAg c3RhdGljIERldmljZVN0YXRlICphcGljX2luaXQodm9pZCAqZW52LCB1aW50OF90IGFwaWNfaWQp CiAKIHZvaWQgcGNfYWNwaV9zbWlfaW50ZXJydXB0KHZvaWQgKm9wYXF1ZSwgaW50IGlycSwgaW50 IGxldmVsKQogewotICAgIENQVVN0YXRlICpzID0gb3BhcXVlOworICAgIENQVVg4NlN0YXRlICpz ID0gb3BhcXVlOwogCiAgICAgaWYgKGxldmVsKSB7CiAgICAgICAgIGNwdV9pbnRlcnJ1cHQocywg Q1BVX0lOVEVSUlVQVF9TTUkpOwpAQCAtOTI2LDE1ICs5MjYsMTUgQEAgdm9pZCBwY19hY3BpX3Nt aV9pbnRlcnJ1cHQodm9pZCAqb3BhcXVlLCBpbnQgaXJxLCBpbnQgbGV2ZWwpCiAKIHN0YXRpYyB2 b2lkIHBjX2NwdV9yZXNldCh2b2lkICpvcGFxdWUpCiB7Ci0gICAgQ1BVU3RhdGUgKmVudiA9IG9w YXF1ZTsKKyAgICBDUFVYODZTdGF0ZSAqZW52ID0gb3BhcXVlOwogCiAgICAgY3B1X3N0YXRlX3Jl c2V0KGVudik7CiAgICAgZW52LT5oYWx0ZWQgPSAhY3B1X2lzX2JzcChlbnYpOwogfQogCi1zdGF0 aWMgQ1BVU3RhdGUgKnBjX25ld19jcHUoY29uc3QgY2hhciAqY3B1X21vZGVsKQorc3RhdGljIENQ VVg4NlN0YXRlICpwY19uZXdfY3B1KGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKLSAgICBDUFVT dGF0ZSAqZW52OworICAgIENQVVg4NlN0YXRlICplbnY7CiAKICAgICBlbnYgPSBjcHVfaW5pdChj cHVfbW9kZWwpOwogICAgIGlmICghZW52KSB7CkBAIC0xMDcwLDcgKzEwNzAsNyBAQCBEZXZpY2VT dGF0ZSAqcGNfdmdhX2luaXQoSVNBQnVzICppc2FfYnVzLCBQQ0lCdXMgKnBjaV9idXMpCiAKIHN0 YXRpYyB2b2lkIGNwdV9yZXF1ZXN0X2V4aXQodm9pZCAqb3BhcXVlLCBpbnQgaXJxLCBpbnQgbGV2 ZWwpCiB7Ci0gICAgQ1BVU3RhdGUgKmVudiA9IGNwdV9zaW5nbGVfZW52OworICAgIENQVVg4NlN0 YXRlICplbnYgPSBjcHVfc2luZ2xlX2VudjsKIAogICAgIGlmIChlbnYgJiYgbGV2ZWwpIHsKICAg ICAgICAgY3B1X2V4aXQoZW52KTsKZGlmZiAtLWdpdCBhL2h3L3ZtcG9ydC5jIGIvaHcvdm1wb3J0 LmMKaW5kZXggOTM3M2JlOS4uYTRmNTJlZSAxMDA2NDQKLS0tIGEvaHcvdm1wb3J0LmMKKysrIGIv aHcvdm1wb3J0LmMKQEAgLTU3LDcgKzU3LDcgQEAgdm9pZCB2bXBvcnRfcmVnaXN0ZXIodW5zaWdu ZWQgY2hhciBjb21tYW5kLCBJT1BvcnRSZWFkRnVuYyAqZnVuYywgdm9pZCAqb3BhcXVlKQogc3Rh dGljIHVpbnQzMl90IHZtcG9ydF9pb3BvcnRfcmVhZCh2b2lkICpvcGFxdWUsIHVpbnQzMl90IGFk ZHIpCiB7CiAgICAgVk1Qb3J0U3RhdGUgKnMgPSBvcGFxdWU7Ci0gICAgQ1BVU3RhdGUgKmVudiA9 IGNwdV9zaW5nbGVfZW52OworICAgIENQVVg4NlN0YXRlICplbnYgPSBjcHVfc2luZ2xlX2VudjsK ICAgICB1bnNpZ25lZCBjaGFyIGNvbW1hbmQ7CiAgICAgdWludDMyX3QgZWF4OwogCkBAIC04Mywy MSArODMsMjEgQEAgc3RhdGljIHVpbnQzMl90IHZtcG9ydF9pb3BvcnRfcmVhZCh2b2lkICpvcGFx dWUsIHVpbnQzMl90IGFkZHIpCiAKIHN0YXRpYyB2b2lkIHZtcG9ydF9pb3BvcnRfd3JpdGUodm9p ZCAqb3BhcXVlLCB1aW50MzJfdCBhZGRyLCB1aW50MzJfdCB2YWwpCiB7Ci0gICAgQ1BVU3RhdGUg KmVudiA9IGNwdV9zaW5nbGVfZW52OworICAgIENQVVg4NlN0YXRlICplbnYgPSBjcHVfc2luZ2xl X2VudjsKIAogICAgIGVudi0+cmVnc1tSX0VBWF0gPSB2bXBvcnRfaW9wb3J0X3JlYWQob3BhcXVl LCBhZGRyKTsKIH0KIAogc3RhdGljIHVpbnQzMl90IHZtcG9ydF9jbWRfZ2V0X3ZlcnNpb24odm9p ZCAqb3BhcXVlLCB1aW50MzJfdCBhZGRyKQogewotICAgIENQVVN0YXRlICplbnYgPSBjcHVfc2lu Z2xlX2VudjsKKyAgICBDUFVYODZTdGF0ZSAqZW52ID0gY3B1X3NpbmdsZV9lbnY7CiAgICAgZW52 LT5yZWdzW1JfRUJYXSA9IFZNUE9SVF9NQUdJQzsKICAgICByZXR1cm4gNjsKIH0KIAogc3RhdGlj IHVpbnQzMl90IHZtcG9ydF9jbWRfcmFtX3NpemUodm9pZCAqb3BhcXVlLCB1aW50MzJfdCBhZGRy KQogewotICAgIENQVVN0YXRlICplbnYgPSBjcHVfc2luZ2xlX2VudjsKKyAgICBDUFVYODZTdGF0 ZSAqZW52ID0gY3B1X3NpbmdsZV9lbnY7CiAgICAgZW52LT5yZWdzW1JfRUJYXSA9IDB4MTE3NzsK ICAgICByZXR1cm4gcmFtX3NpemU7CiB9CkBAIC0xMDUsNyArMTA1LDcgQEAgc3RhdGljIHVpbnQz Ml90IHZtcG9ydF9jbWRfcmFtX3NpemUodm9pZCAqb3BhcXVlLCB1aW50MzJfdCBhZGRyKQogLyog dm1tb3VzZSBoZWxwZXJzICovCiB2b2lkIHZtbW91c2VfZ2V0X2RhdGEodWludDMyX3QgKmRhdGEp CiB7Ci0gICAgQ1BVU3RhdGUgKmVudiA9IGNwdV9zaW5nbGVfZW52OworICAgIENQVVg4NlN0YXRl ICplbnYgPSBjcHVfc2luZ2xlX2VudjsKIAogICAgIGRhdGFbMF0gPSBlbnYtPnJlZ3NbUl9FQVhd OyBkYXRhWzFdID0gZW52LT5yZWdzW1JfRUJYXTsKICAgICBkYXRhWzJdID0gZW52LT5yZWdzW1Jf RUNYXTsgZGF0YVszXSA9IGVudi0+cmVnc1tSX0VEWF07CkBAIC0xMTQsNyArMTE0LDcgQEAgdm9p ZCB2bW1vdXNlX2dldF9kYXRhKHVpbnQzMl90ICpkYXRhKQogCiB2b2lkIHZtbW91c2Vfc2V0X2Rh dGEoY29uc3QgdWludDMyX3QgKmRhdGEpCiB7Ci0gICAgQ1BVU3RhdGUgKmVudiA9IGNwdV9zaW5n bGVfZW52OworICAgIENQVVg4NlN0YXRlICplbnYgPSBjcHVfc2luZ2xlX2VudjsKIAogICAgIGVu di0+cmVnc1tSX0VBWF0gPSBkYXRhWzBdOyBlbnYtPnJlZ3NbUl9FQlhdID0gZGF0YVsxXTsKICAg ICBlbnYtPnJlZ3NbUl9FQ1hdID0gZGF0YVsyXTsgZW52LT5yZWdzW1JfRURYXSA9IGRhdGFbM107 CmRpZmYgLS1naXQgYS9ody94ZW5fbWFjaGluZV9wdi5jIGIvaHcveGVuX21hY2hpbmVfcHYuYwpp bmRleCA3OTg1ZDExLi43ZWVlNzcwIDEwMDY0NAotLS0gYS9ody94ZW5fbWFjaGluZV9wdi5jCisr KyBiL2h3L3hlbl9tYWNoaW5lX3B2LmMKQEAgLTM2LDcgKzM2LDcgQEAgc3RhdGljIHZvaWQgeGVu X2luaXRfcHYocmFtX2FkZHJfdCByYW1fc2l6ZSwKIAkJCWNvbnN0IGNoYXIgKmluaXRyZF9maWxl bmFtZSwKIAkJCWNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKLSAgICBDUFVTdGF0ZSAqZW52Owor ICAgIENQVVg4NlN0YXRlICplbnY7CiAgICAgRHJpdmVJbmZvICpkaW5mbzsKICAgICBpbnQgaTsK IAotLSAKMS43LjcKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6 Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=