Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S261712AbVANBJG (ORCPT ); Thu, 13 Jan 2005 20:09:06 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S261753AbVANBIL (ORCPT ); Thu, 13 Jan 2005 20:08:11 -0500 Received: from e1.ny.us.ibm.com ([32.97.182.141]:45726 "EHLO e1.ny.us.ibm.com") by vger.kernel.org with ESMTP id S261712AbVANAxX (ORCPT ); Thu, 13 Jan 2005 19:53:23 -0500 Date: Thu, 13 Jan 2005 16:52:45 -0800 From: Greg KH To: Dave Cc: akpm@osdl.org, torvalds@osdl.org, linux-kernel@vger.kernel.org, smaurer@teja.com, linux@arm.linux.org.uk, dsaxena@plexity.net, drew.moseley@intel.com, mporter@kernel.crashing.org Subject: Re: [PATCH 1/5] Convert resource to u64 from unsigned long Message-ID: <20050114005245.GC4140@kroah.com> References: <8746466a050113152636f49d18@mail.gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="fdj2RfSjLxBAspz7" Content-Disposition: inline In-Reply-To: <8746466a050113152636f49d18@mail.gmail.com> User-Agent: Mutt/1.5.6i Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 25996 Lines: 372 --fdj2RfSjLxBAspz7 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Thu, Jan 13, 2005 at 04:26:57PM -0700, Dave wrote: Ick, care to put the patches inline so we can comment on them? thanks, greg k-h --fdj2RfSjLxBAspz7 Content-Type: application/octet-stream; name=patch-core_u64fix Content-Disposition: attachment; filename=patch-core_u64fix Content-Transfer-Encoding: base64 ZGlmZiAtTmF1ciBsaW51eC0yLjYuMTEtcmMxL2RyaXZlcnMvcGNpL2J1cy5jIGxpbnV4LTIu Ni4xMS1yYzEtdTY0L2RyaXZlcnMvcGNpL2J1cy5jCi0tLSBsaW51eC0yLjYuMTEtcmMxL2Ry aXZlcnMvcGNpL2J1cy5jCTIwMDQtMTItMjQgMTQ6MzU6MzkuMDAwMDAwMDAwIC0wNzAwCisr KyBsaW51eC0yLjYuMTEtcmMxLXU2NC9kcml2ZXJzL3BjaS9idXMuYwkyMDA1LTAxLTEzIDEx OjQ1OjQxLjgzNDQ2MjE2OCAtMDcwMApAQCAtMzQsMTAgKzM0LDEwIEBACiAgKi8KIGludAog cGNpX2J1c19hbGxvY19yZXNvdXJjZShzdHJ1Y3QgcGNpX2J1cyAqYnVzLCBzdHJ1Y3QgcmVz b3VyY2UgKnJlcywKLQl1bnNpZ25lZCBsb25nIHNpemUsIHVuc2lnbmVkIGxvbmcgYWxpZ24s IHVuc2lnbmVkIGxvbmcgbWluLAorCXU2NCBzaXplLCB1NjQgYWxpZ24sIHU2NCBtaW4sCiAJ dW5zaWduZWQgaW50IHR5cGVfbWFzaywKIAl2b2lkICgqYWxpZ25mKSh2b2lkICosIHN0cnVj dCByZXNvdXJjZSAqLAotCQkJdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZyksCisJCQl1 NjQsIHU2NCksCiAJdm9pZCAqYWxpZ25mX2RhdGEpCiB7CiAJaW50IGksIHJldCA9IC1FTk9N RU07CmRpZmYgLU5hdXIgbGludXgtMi42LjExLXJjMS9kcml2ZXJzL3BjaS9wY2kuYyBsaW51 eC0yLjYuMTEtcmMxLXU2NC9kcml2ZXJzL3BjaS9wY2kuYwotLS0gbGludXgtMi42LjExLXJj MS9kcml2ZXJzL3BjaS9wY2kuYwkyMDA1LTAxLTEzIDE0OjQwOjAyLjcyNjE2NDkwNCAtMDcw MAorKysgbGludXgtMi42LjExLXJjMS11NjQvZHJpdmVycy9wY2kvcGNpLmMJMjAwNS0wMS0x MyAxNDowODoxMC44NTQ4MTM1MjggLTA3MDAKQEAgLTU2NCw3ICs1NjQsNyBAQAogCXJldHVy biAwOwogCiBlcnJfb3V0OgotCXByaW50ayAoS0VSTl9XQVJOSU5HICJQQ0k6IFVuYWJsZSB0 byByZXNlcnZlICVzIHJlZ2lvbiAjJWQ6JWx4QCVseCBmb3IgZGV2aWNlICVzXG4iLAorCXBy aW50ayAoS0VSTl9XQVJOSU5HICJQQ0k6IFVuYWJsZSB0byByZXNlcnZlICVzIHJlZ2lvbiAj JWQ6JSIgVTY0Rk1UICJAJSIgVTY0Rk1UICIgZm9yIGRldmljZSAlc1xuIiwKIAkJcGNpX3Jl c291cmNlX2ZsYWdzKHBkZXYsIGJhcikgJiBJT1JFU09VUkNFX0lPID8gIkkvTyIgOiAibWVt IiwKIAkJYmFyICsgMSwgLyogUENJIEJBUiAjICovCiAJCXBjaV9yZXNvdXJjZV9sZW4ocGRl diwgYmFyKSwgcGNpX3Jlc291cmNlX3N0YXJ0KHBkZXYsIGJhciksCmRpZmYgLU5hdXIgbGlu dXgtMi42LjExLXJjMS9kcml2ZXJzL3BjaS9wY2kuaCBsaW51eC0yLjYuMTEtcmMxLXU2NC9k cml2ZXJzL3BjaS9wY2kuaAotLS0gbGludXgtMi42LjExLXJjMS9kcml2ZXJzL3BjaS9wY2ku aAkyMDA0LTEyLTI0IDE0OjM0OjMxLjAwMDAwMDAwMCAtMDcwMAorKysgbGludXgtMi42LjEx LXJjMS11NjQvZHJpdmVycy9wY2kvcGNpLmgJMjAwNS0wMS0xMyAxMTo0NTo0MS44MzY0NjE4 NjQgLTA3MDAKQEAgLTYsMTAgKzYsMTAgQEAKIGV4dGVybiB2b2lkIHBjaV9yZW1vdmVfc3lz ZnNfZGV2X2ZpbGVzKHN0cnVjdCBwY2lfZGV2ICpwZGV2KTsKIGV4dGVybiB2b2lkIHBjaV9j bGVhbnVwX3JvbShzdHJ1Y3QgcGNpX2RldiAqZGV2KTsKIGV4dGVybiBpbnQgcGNpX2J1c19h bGxvY19yZXNvdXJjZShzdHJ1Y3QgcGNpX2J1cyAqYnVzLCBzdHJ1Y3QgcmVzb3VyY2UgKnJl cywKLQkJCQkgIHVuc2lnbmVkIGxvbmcgc2l6ZSwgdW5zaWduZWQgbG9uZyBhbGlnbiwKLQkJ CQkgIHVuc2lnbmVkIGxvbmcgbWluLCB1bnNpZ25lZCBpbnQgdHlwZV9tYXNrLAorCQkJCSAg dTY0IHNpemUsIHU2NCBhbGlnbiwKKwkJCQkgIHU2NCBtaW4sIHVuc2lnbmVkIGludCB0eXBl X21hc2ssCiAJCQkJICB2b2lkICgqYWxpZ25mKSh2b2lkICosIHN0cnVjdCByZXNvdXJjZSAq LAotCQkJCQkgIAkgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZyksCisJCQkJCSAgCSB1 NjQsIHU2NCksCiAJCQkJICB2b2lkICphbGlnbmZfZGF0YSk7CiAvKiBQQ0kgL3Byb2MgZnVu Y3Rpb25zICovCiAjaWZkZWYgQ09ORklHX1BST0NfRlMKZGlmZiAtTmF1ciBsaW51eC0yLjYu MTEtcmMxL2RyaXZlcnMvcGNpL3BjaS1zeXNmcy5jIGxpbnV4LTIuNi4xMS1yYzEtdTY0L2Ry aXZlcnMvcGNpL3BjaS1zeXNmcy5jCi0tLSBsaW51eC0yLjYuMTEtcmMxL2RyaXZlcnMvcGNp L3BjaS1zeXNmcy5jCTIwMDUtMDEtMTMgMTQ6NDA6MDIuNzI1MTY1MDU2IC0wNzAwCisrKyBs aW51eC0yLjYuMTEtcmMxLXU2NC9kcml2ZXJzL3BjaS9wY2ktc3lzZnMuYwkyMDA1LTAxLTEz IDE0OjA5OjQyLjIyOTkyMjQwMCAtMDcwMApAQCAtNjUsNyArNjUsNyBAQAogCQltYXggPSBE RVZJQ0VfQ09VTlRfUkVTT1VSQ0U7CiAKIAlmb3IgKGkgPSAwOyBpIDwgbWF4OyBpKyspIHsK LQkJc3RyICs9IHNwcmludGYoc3RyLCIweCUwMTZseCAweCUwMTZseCAweCUwMTZseFxuIiwK KwkJc3RyICs9IHNwcmludGYoc3RyLCIweCUiIFU2NEZNVCAiIDB4JSIgVTY0Rk1UICIgMHgl MDE2bHhcbiIsCiAJCQkgICAgICAgcGNpX3Jlc291cmNlX3N0YXJ0KHBjaV9kZXYsaSksCiAJ CQkgICAgICAgcGNpX3Jlc291cmNlX2VuZChwY2lfZGV2LGkpLAogCQkJICAgICAgIHBjaV9y ZXNvdXJjZV9mbGFncyhwY2lfZGV2LGkpKTsKZGlmZiAtTmF1ciBsaW51eC0yLjYuMTEtcmMx L2RyaXZlcnMvcGNpL3Byb2MuYyBsaW51eC0yLjYuMTEtcmMxLXU2NC9kcml2ZXJzL3BjaS9w cm9jLmMKLS0tIGxpbnV4LTIuNi4xMS1yYzEvZHJpdmVycy9wY2kvcHJvYy5jCTIwMDQtMTIt MjQgMTQ6MzQ6NTguMDAwMDAwMDAwIC0wNzAwCisrKyBsaW51eC0yLjYuMTEtcmMxLXU2NC9k cml2ZXJzL3BjaS9wcm9jLmMJMjAwNS0wMS0xMyAxNDoyNjo1Ny4yOTY1NjgzNTIgLTA3MDAK QEAgLTMwMSwxMCArMzAxLDEwIEBACiAjZW5kaWYgLyogSEFWRV9QQ0lfTU1BUCAqLwogfTsK IAotI2lmIEJJVFNfUEVSX0xPTkcgPT0gMzIKLSNkZWZpbmUgTE9OR19GT1JNQVQgIlx0JTA4 bHgiCi0jZWxzZQorI2lmIEJJVFNfUEVSX0xPTkcgPT0gNjQKICNkZWZpbmUgTE9OR19GT1JN QVQgIlx0JTE2bHgiCisjZWxzZQorI2RlZmluZSBMT05HX0ZPUk1BVCAiXHQlMTZMeCIKICNl bmRpZgogCiAvKiBpdGVyYXRvciAqLwpkaWZmIC1OYXVyIGxpbnV4LTIuNi4xMS1yYzEvZHJp dmVycy9wY2kvcm9tLmMgbGludXgtMi42LjExLXJjMS11NjQvZHJpdmVycy9wY2kvcm9tLmMK LS0tIGxpbnV4LTIuNi4xMS1yYzEvZHJpdmVycy9wY2kvcm9tLmMJMjAwNC0xMi0yNCAxNDoz NDo0NC4wMDAwMDAwMDAgLTA3MDAKKysrIGxpbnV4LTIuNi4xMS1yYzEtdTY0L2RyaXZlcnMv cGNpL3JvbS5jCTIwMDUtMDEtMTMgMTE6NDU6NDEuODM3NDYxNzEyIC0wNzAwCkBAIC03NCw3 ICs3NCwxMSBAQAogCX0gZWxzZSB7CiAJCWlmIChyZXMtPmZsYWdzICYgSU9SRVNPVVJDRV9S T01fQ09QWSkgewogCQkJKnNpemUgPSBwY2lfcmVzb3VyY2VfbGVuKHBkZXYsIFBDSV9ST01f UkVTT1VSQ0UpOworI2lmIEJJVFNfUEVSX0xPTkcgPT0gNjQJCQkKIAkJCXJldHVybiAodm9p ZCBfX2lvbWVtICopcGNpX3Jlc291cmNlX3N0YXJ0KHBkZXYsIFBDSV9ST01fUkVTT1VSQ0Up OworI2Vsc2UKKwkJCXJldHVybiAodm9pZCBfX2lvbWVtICopKHUzMilwY2lfcmVzb3VyY2Vf c3RhcnQocGRldiwgUENJX1JPTV9SRVNPVVJDRSk7CisjZW5kaWYKIAkJfSBlbHNlIHsKIAkJ CS8qIGFzc2lnbiB0aGUgUk9NIGFuIGFkZHJlc3MgaWYgaXQgZG9lc24ndCBoYXZlIG9uZSAq LwogCQkJaWYgKHJlcy0+cGFyZW50ID09IE5VTEwpCkBAIC0xNTYsMTEgKzE2MCwxNSBAQAog CQlyZXR1cm4gcm9tOwogCiAJcmVzLT5lbmQgPSByZXMtPnN0YXJ0ICsgKnNpemU7IAorI2lm IEJJVFNfUEVSX0xPTkcgPT0gNjQKIAltZW1jcHlfZnJvbWlvKCh2b2lkKilyZXMtPnN0YXJ0 LCByb20sICpzaXplKTsKKyNlbHNlCisJbWVtY3B5X2Zyb21pbygodm9pZCopKHUzMilyZXMt PnN0YXJ0LCByb20sICpzaXplKTsKKyNlbmRpZgogCXBjaV91bm1hcF9yb20ocGRldiwgcm9t KTsKIAlyZXMtPmZsYWdzIHw9IElPUkVTT1VSQ0VfUk9NX0NPUFk7CiAJCi0JcmV0dXJuICh2 b2lkIF9faW9tZW0gKilyZXMtPnN0YXJ0OworCXJldHVybiAodm9pZCBfX2lvbWVtICopKHUz MilyZXMtPnN0YXJ0OwogfQogCiAvKioKQEAgLTIxMiw3ICsyMjAsMTEgQEAKIHsKIAlzdHJ1 Y3QgcmVzb3VyY2UgKnJlcyA9ICZwZGV2LT5yZXNvdXJjZVtQQ0lfUk9NX1JFU09VUkNFXTsK IAlpZiAocmVzLT5mbGFncyAmIElPUkVTT1VSQ0VfUk9NX0NPUFkpIHsKKyNpZiBCSVRTX1BF Ul9MT05HID09IDY0CQkKIAkJa2ZyZWUoKHZvaWQqKXJlcy0+c3RhcnQpOworI2Vsc2UKKwkJ a2ZyZWUoKHZvaWQqKSh1MzIpcmVzLT5zdGFydCk7CisjZW5kaWYKIAkJcmVzLT5mbGFncyAm PSB+SU9SRVNPVVJDRV9ST01fQ09QWTsKIAkJcmVzLT5zdGFydCA9IDA7CiAJCXJlcy0+ZW5k ID0gMDsKZGlmZiAtTmF1ciBsaW51eC0yLjYuMTEtcmMxL2RyaXZlcnMvcGNpL3NldHVwLWJ1 cy5jIGxpbnV4LTIuNi4xMS1yYzEtdTY0L2RyaXZlcnMvcGNpL3NldHVwLWJ1cy5jCi0tLSBs aW51eC0yLjYuMTEtcmMxL2RyaXZlcnMvcGNpL3NldHVwLWJ1cy5jCTIwMDUtMDEtMTMgMTQ6 NDA6MDIuNzI5MTY0NDQ4IC0wNzAwCisrKyBsaW51eC0yLjYuMTEtcmMxLXU2NC9kcml2ZXJz L3BjaS9zZXR1cC1idXMuYwkyMDA1LTAxLTEzIDE0OjE2OjQyLjQ1MDAzOTIzMiAtMDcwMApA QCAtMzU3LDcgKzM1Nyw3IEBACiAJCQlvcmRlciA9IF9fZmZzKGFsaWduKSAtIDIwOwogCQkJ aWYgKG9yZGVyID4gMTEpIHsKIAkJCQlwcmludGsoS0VSTl9XQVJOSU5HICJQQ0k6IHJlZ2lv biAlcy8lZCAiCi0JCQkJICAgICAgICJ0b28gbGFyZ2U6ICVseC0lbHhcbiIsCisJCQkJICAg ICAgICJ0b28gbGFyZ2U6ICUiIFU2NEZNVCAiLSUiIFU2NEZNVCAiXG4iLAogCQkJCSAgICAg ICBwY2lfbmFtZShkZXYpLCBpLCByLT5zdGFydCwgci0+ZW5kKTsKIAkJCQlyLT5mbGFncyA9 IDA7CiAJCQkJY29udGludWU7CmRpZmYgLU5hdXIgbGludXgtMi42LjExLXJjMS9kcml2ZXJz L3BjaS9zZXR1cC1yZXMuYyBsaW51eC0yLjYuMTEtcmMxLXU2NC9kcml2ZXJzL3BjaS9zZXR1 cC1yZXMuYwotLS0gbGludXgtMi42LjExLXJjMS9kcml2ZXJzL3BjaS9zZXR1cC1yZXMuYwky MDA0LTEyLTI0IDE0OjM1OjI1LjAwMDAwMDAwMCAtMDcwMAorKysgbGludXgtMi42LjExLXJj MS11NjQvZHJpdmVycy9wY2kvc2V0dXAtcmVzLmMJMjAwNS0wMS0xMyAxNDoyMDo1OC4wNjEx ODA0MzIgLTA3MDAKQEAgLTQyLDcgKzQyLDcgQEAKIAogCXBjaWJpb3NfcmVzb3VyY2VfdG9f YnVzKGRldiwgJnJlZ2lvbiwgcmVzKTsKIAotCURCR0MoKEtFUk5fRVJSICIgIGdvdCByZXMg WyVseDolbHhdIGJ1cyBbJWx4OiVseF0gZmxhZ3MgJWx4IGZvciAiCisJREJHQygoS0VSTl9F UlIgIiAgZ290IHJlcyBbJSIgVTY0Rk1UICI6JSIgVTY0Rk1UICJdIGJ1cyBbJWx4OiVseF0g ZmxhZ3MgJWx4IGZvciAiCiAJICAgICAgIkJBUiAlZCBvZiAlc1xuIiwgcmVzLT5zdGFydCwg cmVzLT5lbmQsCiAJICAgICAgcmVnaW9uLnN0YXJ0LCByZWdpb24uZW5kLCByZXMtPmZsYWdz LAogCSAgICAgIHJlc25vLCBwY2lfbmFtZShkZXYpKSk7CkBAIC0xMDgsNyArMTA4LDcgQEAK IAkJZXJyID0gaW5zZXJ0X3Jlc291cmNlKHJvb3QsIHJlcyk7CiAKIAlpZiAoZXJyKSB7Ci0J CXByaW50ayhLRVJOX0VSUiAiUENJOiAlcyByZWdpb24gJWQgb2YgJXMgJXMgWyVseDolbHhd XG4iLAorCQlwcmludGsoS0VSTl9FUlIgIlBDSTogJXMgcmVnaW9uICVkIG9mICVzICVzIFsl IiBVNjRGTVQgIjolIiBVNjRGTVQgIl1cbiIsCiAJCSAgICAgICByb290ID8gIkFkZHJlc3Mg c3BhY2UgY29sbGlzaW9uIG9uIiA6CiAJCQkgICAgICAiTm8gcGFyZW50IGZvdW5kIGZvciIs CiAJCSAgICAgICByZXNvdXJjZSwgZHR5cGUsIHBjaV9uYW1lKGRldiksIHJlcy0+c3RhcnQs IHJlcy0+ZW5kKTsKQEAgLTEyMSw3ICsxMjEsNyBAQAogewogCXN0cnVjdCBwY2lfYnVzICpi dXMgPSBkZXYtPmJ1czsKIAlzdHJ1Y3QgcmVzb3VyY2UgKnJlcyA9IGRldi0+cmVzb3VyY2Ug KyByZXNubzsKLQl1bnNpZ25lZCBsb25nIHNpemUsIG1pbiwgYWxpZ247CisJdTY0IHNpemUs IG1pbiwgYWxpZ247CiAJaW50IHJldDsKIAogCXNpemUgPSByZXMtPmVuZCAtIHJlcy0+c3Rh cnQgKyAxOwpAQCAtMTQ4LDcgKzE0OCw3IEBACiAJfQogCiAJaWYgKHJldCkgewotCQlwcmlu dGsoS0VSTl9FUlIgIlBDSTogRmFpbGVkIHRvIGFsbG9jYXRlICVzIHJlc291cmNlICMlZDol bHhAJWx4IGZvciAlc1xuIiwKKwkJcHJpbnRrKEtFUk5fRVJSICJQQ0k6IEZhaWxlZCB0byBh bGxvY2F0ZSAlcyByZXNvdXJjZSAjJWQ6JSIgVTY0Rk1UICJAJSIgVTY0Rk1UICIgZm9yICVz XG4iLAogCQkgICAgICAgcmVzLT5mbGFncyAmIElPUkVTT1VSQ0VfSU8gPyAiSS9PIiA6ICJt ZW0iLAogCQkgICAgICAgcmVzbm8sIHNpemUsIHJlcy0+c3RhcnQsIHBjaV9uYW1lKGRldikp OwogCX0gZWxzZSBpZiAocmVzbm8gPCBQQ0lfQlJJREdFX1JFU09VUkNFUykgewpAQCAtMTc2 LDcgKzE3Niw3IEBACiAJCQljb250aW51ZTsKIAkJaWYgKCFyX2FsaWduKSB7CiAJCQlwcmlu dGsoS0VSTl9XQVJOSU5HICJQQ0k6IElnbm9yZSBib2d1cyByZXNvdXJjZSAlZCAiCi0JCQkJ CSAgICAiWyVseDolbHhdIG9mICVzXG4iLAorCQkJCQkgICAgIlslIiBVNjRGTVQgIjolIiBV NjRGTVQgIl0gb2YgJXNcbiIsCiAJCQkJCSAgICBpLCByLT5zdGFydCwgci0+ZW5kLCBwY2lf bmFtZShkZXYpKTsKIAkJCWNvbnRpbnVlOwogCQl9CmRpZmYgLU5hdXIgbGludXgtMi42LjEx LXJjMS9kcml2ZXJzL3BucC9tYW5hZ2VyLmMgbGludXgtMi42LjExLXJjMS11NjQvZHJpdmVy cy9wbnAvbWFuYWdlci5jCi0tLSBsaW51eC0yLjYuMTEtcmMxL2RyaXZlcnMvcG5wL21hbmFn ZXIuYwkyMDA0LTEyLTI0IDE0OjM1OjM5LjAwMDAwMDAwMCAtMDcwMAorKysgbGludXgtMi42 LjExLXJjMS11NjQvZHJpdmVycy9wbnAvbWFuYWdlci5jCTIwMDUtMDEtMTMgMTE6NDU6NDEu ODM5NDYxNDA4IC0wNzAwCkBAIC0yNSw3ICsyNSw4IEBACiAKIHN0YXRpYyBpbnQgcG5wX2Fz c2lnbl9wb3J0KHN0cnVjdCBwbnBfZGV2ICpkZXYsIHN0cnVjdCBwbnBfcG9ydCAqcnVsZSwg aW50IGlkeCkKIHsKLQl1bnNpZ25lZCBsb25nICpzdGFydCwgKmVuZCwgKmZsYWdzOworCXU2 NCAqc3RhcnQsICplbmQ7CisJdW5zaWduZWQgbG9uZyAqZmxhZ3M7CiAKIAlpZiAoIWRldiB8 fCAhcnVsZSkKIAkJcmV0dXJuIC1FSU5WQUw7CkBAIC02OCw3ICs2OSw4IEBACiAKIHN0YXRp YyBpbnQgcG5wX2Fzc2lnbl9tZW0oc3RydWN0IHBucF9kZXYgKmRldiwgc3RydWN0IHBucF9t ZW0gKnJ1bGUsIGludCBpZHgpCiB7Ci0JdW5zaWduZWQgbG9uZyAqc3RhcnQsICplbmQsICpm bGFnczsKKwl1NjQgKnN0YXJ0LCAqZW5kOworCXVuc2lnbmVkIGxvbmcgKmZsYWdzOwogCiAJ aWYgKCFkZXYgfHwgIXJ1bGUpCiAJCXJldHVybiAtRUlOVkFMOwpAQCAtMTIxLDcgKzEyMyw4 IEBACiAKIHN0YXRpYyBpbnQgcG5wX2Fzc2lnbl9pcnEoc3RydWN0IHBucF9kZXYgKiBkZXYs IHN0cnVjdCBwbnBfaXJxICpydWxlLCBpbnQgaWR4KQogewotCXVuc2lnbmVkIGxvbmcgKnN0 YXJ0LCAqZW5kLCAqZmxhZ3M7CisJdTY0ICpzdGFydCwgKmVuZDsKKwl1bnNpZ25lZCBsb25n ICpmbGFnczsKIAlpbnQgaTsKIAogCS8qIElSUSBwcmlvcml0eTogdGhpcyB0YWJsZSBpcyBn b29kIGZvciBpMzg2ICovCkBAIC0xNzMsNyArMTc2LDggQEAKIAogc3RhdGljIGludCBwbnBf YXNzaWduX2RtYShzdHJ1Y3QgcG5wX2RldiAqZGV2LCBzdHJ1Y3QgcG5wX2RtYSAqcnVsZSwg aW50IGlkeCkKIHsKLQl1bnNpZ25lZCBsb25nICpzdGFydCwgKmVuZCwgKmZsYWdzOworCXU2 NCAqc3RhcnQsICplbmQ7CisJdW5zaWduZWQgbG9uZyAqZmxhZ3M7CiAJaW50IGk7CiAKIAkv KiBETUEgcHJpb3JpdHk6IHRoaXMgdGFibGUgaXMgZ29vZCBmb3IgaTM4NiAqLwpAQCAtNTQ4 LDcgKzU1Miw3IEBACiAgKiBAc2l6ZTogc2l6ZSBvZiByZWdpb24KICAqCiAgKi8KLXZvaWQg cG5wX3Jlc291cmNlX2NoYW5nZShzdHJ1Y3QgcmVzb3VyY2UgKnJlc291cmNlLCB1bnNpZ25l ZCBsb25nIHN0YXJ0LCB1bnNpZ25lZCBsb25nIHNpemUpCit2b2lkIHBucF9yZXNvdXJjZV9j aGFuZ2Uoc3RydWN0IHJlc291cmNlICpyZXNvdXJjZSwgdTY0IHN0YXJ0LCB1NjQgc2l6ZSkK IHsKIAlpZiAocmVzb3VyY2UgPT0gTlVMTCkKIAkJcmV0dXJuOwpkaWZmIC1OYXVyIGxpbnV4 LTIuNi4xMS1yYzEvZHJpdmVycy9wbnAvcmVzb3VyY2UuYyBsaW51eC0yLjYuMTEtcmMxLXU2 NC9kcml2ZXJzL3BucC9yZXNvdXJjZS5jCi0tLSBsaW51eC0yLjYuMTEtcmMxL2RyaXZlcnMv cG5wL3Jlc291cmNlLmMJMjAwNC0xMi0yNCAxNDozNDo1OC4wMDAwMDAwMDAgLTA3MDAKKysr IGxpbnV4LTIuNi4xMS1yYzEtdTY0L2RyaXZlcnMvcG5wL3Jlc291cmNlLmMJMjAwNS0wMS0x MyAxMTo0NTo0MS44NDA0NjEyNTYgLTA3MDAKQEAgLTI0Miw3ICsyNDIsNyBAQAogewogCWlu dCB0bXA7CiAJc3RydWN0IHBucF9kZXYgKnRkZXY7Ci0JdW5zaWduZWQgbG9uZyAqcG9ydCwg KmVuZCwgKnRwb3J0LCAqdGVuZDsKKwl1NjQgKnBvcnQsICplbmQsICp0cG9ydCwgKnRlbmQ7 CiAJcG9ydCA9ICZkZXYtPnJlcy5wb3J0X3Jlc291cmNlW2lkeF0uc3RhcnQ7CiAJZW5kID0g JmRldi0+cmVzLnBvcnRfcmVzb3VyY2VbaWR4XS5lbmQ7CiAKQEAgLTI5OCw3ICsyOTgsNyBA QAogewogCWludCB0bXA7CiAJc3RydWN0IHBucF9kZXYgKnRkZXY7Ci0JdW5zaWduZWQgbG9u ZyAqYWRkciwgKmVuZCwgKnRhZGRyLCAqdGVuZDsKKwl1NjQgKmFkZHIsICplbmQsICp0YWRk ciwgKnRlbmQ7CiAJYWRkciA9ICZkZXYtPnJlcy5tZW1fcmVzb3VyY2VbaWR4XS5zdGFydDsK IAllbmQgPSAmZGV2LT5yZXMubWVtX3Jlc291cmNlW2lkeF0uZW5kOwogCkBAIC0zNTksNyAr MzU5LDcgQEAKIHsKIAlpbnQgdG1wOwogCXN0cnVjdCBwbnBfZGV2ICp0ZGV2OwotCXVuc2ln bmVkIGxvbmcgKiBpcnEgPSAmZGV2LT5yZXMuaXJxX3Jlc291cmNlW2lkeF0uc3RhcnQ7CisJ dTY0ICogaXJxID0gJmRldi0+cmVzLmlycV9yZXNvdXJjZVtpZHhdLnN0YXJ0OwogCiAJLyog aWYgdGhlIHJlc291cmNlIGRvZXNuJ3QgZXhpc3QsIGRvbid0IGNvbXBsYWluIGFib3V0IGl0 ICovCiAJaWYgKGNhbm5vdF9jb21wYXJlKGRldi0+cmVzLmlycV9yZXNvdXJjZVtpZHhdLmZs YWdzKSkKQEAgLTQyNCw3ICs0MjQsNyBAQAogI2lmbmRlZiBDT05GSUdfSUE2NAogCWludCB0 bXA7CiAJc3RydWN0IHBucF9kZXYgKnRkZXY7Ci0JdW5zaWduZWQgbG9uZyAqIGRtYSA9ICZk ZXYtPnJlcy5kbWFfcmVzb3VyY2VbaWR4XS5zdGFydDsKKwl1NjQgKiBkbWEgPSAmZGV2LT5y ZXMuZG1hX3Jlc291cmNlW2lkeF0uc3RhcnQ7CiAKIAkvKiBpZiB0aGUgcmVzb3VyY2UgZG9l c24ndCBleGlzdCwgZG9uJ3QgY29tcGxhaW4gYWJvdXQgaXQgKi8KIAlpZiAoY2Fubm90X2Nv bXBhcmUoZGV2LT5yZXMuZG1hX3Jlc291cmNlW2lkeF0uZmxhZ3MpKQpkaWZmIC1OYXVyIGxp bnV4LTIuNi4xMS1yYzEvaW5jbHVkZS9saW51eC9pb3BvcnQuaCBsaW51eC0yLjYuMTEtcmMx LXU2NC9pbmNsdWRlL2xpbnV4L2lvcG9ydC5oCi0tLSBsaW51eC0yLjYuMTEtcmMxL2luY2x1 ZGUvbGludXgvaW9wb3J0LmgJMjAwNC0xMi0yNCAxNDozNDoyNi4wMDAwMDAwMDAgLTA3MDAK KysrIGxpbnV4LTIuNi4xMS1yYzEtdTY0L2luY2x1ZGUvbGludXgvaW9wb3J0LmgJMjAwNS0w MS0xMyAxMTo0NTo0MS44NDM0NjA4MDAgLTA3MDAKQEAgLTksMTMgKzksMTQgQEAKICNkZWZp bmUgX0xJTlVYX0lPUE9SVF9ICiAKICNpbmNsdWRlIDxsaW51eC9jb21waWxlci5oPgorI2lu Y2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAvKgogICogUmVzb3VyY2VzIGFyZSB0cmVlLWxpa2Us IGFsbG93aW5nCiAgKiBuZXN0aW5nIGV0Yy4uCiAgKi8KIHN0cnVjdCByZXNvdXJjZSB7CisJ dTY0IHN0YXJ0LCBlbmQ7CiAJY29uc3QgY2hhciAqbmFtZTsKLQl1bnNpZ25lZCBsb25nIHN0 YXJ0LCBlbmQ7CiAJdW5zaWduZWQgbG9uZyBmbGFnczsKIAlzdHJ1Y3QgcmVzb3VyY2UgKnBh cmVudCwgKnNpYmxpbmcsICpjaGlsZDsKIH07CkBAIC05OCwzMSArOTksMzEgQEAKIGV4dGVy biBpbnQgcmVsZWFzZV9yZXNvdXJjZShzdHJ1Y3QgcmVzb3VyY2UgKm5ldyk7CiBleHRlcm4g aW50IGluc2VydF9yZXNvdXJjZShzdHJ1Y3QgcmVzb3VyY2UgKnBhcmVudCwgc3RydWN0IHJl c291cmNlICpuZXcpOwogZXh0ZXJuIGludCBhbGxvY2F0ZV9yZXNvdXJjZShzdHJ1Y3QgcmVz b3VyY2UgKnJvb3QsIHN0cnVjdCByZXNvdXJjZSAqbmV3LAotCQkJICAgICB1bnNpZ25lZCBs b25nIHNpemUsCi0JCQkgICAgIHVuc2lnbmVkIGxvbmcgbWluLCB1bnNpZ25lZCBsb25nIG1h eCwKLQkJCSAgICAgdW5zaWduZWQgbG9uZyBhbGlnbiwKKwkJCSAgICAgdTY0IHNpemUsCisJ CQkgICAgIHU2NCBtaW4sIHU2NCBtYXgsCisJCQkgICAgIHU2NCBhbGlnbiwKIAkJCSAgICAg dm9pZCAoKmFsaWduZikodm9pZCAqLCBzdHJ1Y3QgcmVzb3VyY2UgKiwKLQkJCQkJICAgIHVu c2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcpLAorCQkJCQkgICAgdTY0LCB1NjQpLAogCQkJ ICAgICB2b2lkICphbGlnbmZfZGF0YSk7Ci1pbnQgYWRqdXN0X3Jlc291cmNlKHN0cnVjdCBy ZXNvdXJjZSAqcmVzLCB1bnNpZ25lZCBsb25nIHN0YXJ0LAotCQkgICAgdW5zaWduZWQgbG9u ZyBzaXplKTsKK2ludCBhZGp1c3RfcmVzb3VyY2Uoc3RydWN0IHJlc291cmNlICpyZXMsIHU2 NCBzdGFydCwKKwkJICAgIHU2NCBzaXplKTsKIAogLyogQ29udmVuaWVuY2Ugc2hvcnRoYW5k IHdpdGggYWxsb2NhdGlvbiAqLwogI2RlZmluZSByZXF1ZXN0X3JlZ2lvbihzdGFydCxuLG5h bWUpCV9fcmVxdWVzdF9yZWdpb24oJmlvcG9ydF9yZXNvdXJjZSwgKHN0YXJ0KSwgKG4pLCAo bmFtZSkpCiAjZGVmaW5lIHJlcXVlc3RfbWVtX3JlZ2lvbihzdGFydCxuLG5hbWUpIF9fcmVx dWVzdF9yZWdpb24oJmlvbWVtX3Jlc291cmNlLCAoc3RhcnQpLCAobiksIChuYW1lKSkKICNk ZWZpbmUgcmVuYW1lX3JlZ2lvbihyZWdpb24sIG5ld25hbWUpIGRvIHsgKHJlZ2lvbiktPm5h bWUgPSAobmV3bmFtZSk7IH0gd2hpbGUgKDApCiAKLWV4dGVybiBzdHJ1Y3QgcmVzb3VyY2Ug KiBfX3JlcXVlc3RfcmVnaW9uKHN0cnVjdCByZXNvdXJjZSAqLCB1bnNpZ25lZCBsb25nIHN0 YXJ0LCB1bnNpZ25lZCBsb25nIG4sIGNvbnN0IGNoYXIgKm5hbWUpOworZXh0ZXJuIHN0cnVj dCByZXNvdXJjZSAqIF9fcmVxdWVzdF9yZWdpb24oc3RydWN0IHJlc291cmNlICosIHU2NCBz dGFydCwgdTY0IG4sIGNvbnN0IGNoYXIgKm5hbWUpOwogCiAvKiBDb21wYXRpYmlsaXR5IGNy dWZ0ICovCiAjZGVmaW5lIHJlbGVhc2VfcmVnaW9uKHN0YXJ0LG4pCV9fcmVsZWFzZV9yZWdp b24oJmlvcG9ydF9yZXNvdXJjZSwgKHN0YXJ0KSwgKG4pKQogI2RlZmluZSBjaGVja19tZW1f cmVnaW9uKHN0YXJ0LG4pCV9fY2hlY2tfcmVnaW9uKCZpb21lbV9yZXNvdXJjZSwgKHN0YXJ0 KSwgKG4pKQogI2RlZmluZSByZWxlYXNlX21lbV9yZWdpb24oc3RhcnQsbikJX19yZWxlYXNl X3JlZ2lvbigmaW9tZW1fcmVzb3VyY2UsIChzdGFydCksIChuKSkKIAotZXh0ZXJuIGludCBf X2NoZWNrX3JlZ2lvbihzdHJ1Y3QgcmVzb3VyY2UgKiwgdW5zaWduZWQgbG9uZywgdW5zaWdu ZWQgbG9uZyk7Ci1leHRlcm4gdm9pZCBfX3JlbGVhc2VfcmVnaW9uKHN0cnVjdCByZXNvdXJj ZSAqLCB1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nKTsKK2V4dGVybiBpbnQgX19jaGVj a19yZWdpb24oc3RydWN0IHJlc291cmNlICosIHU2NCwgdTY0KTsKK2V4dGVybiB2b2lkIF9f cmVsZWFzZV9yZWdpb24oc3RydWN0IHJlc291cmNlICosIHU2NCwgdTY0KTsKIAotc3RhdGlj IGlubGluZSBpbnQgX19kZXByZWNhdGVkIGNoZWNrX3JlZ2lvbih1bnNpZ25lZCBsb25nIHMs IHVuc2lnbmVkIGxvbmcgbikKK3N0YXRpYyBpbmxpbmUgaW50IF9fZGVwcmVjYXRlZCBjaGVj a19yZWdpb24odTY0IHMsIHU2NCBuKQogewogCXJldHVybiBfX2NoZWNrX3JlZ2lvbigmaW9w b3J0X3Jlc291cmNlLCBzLCBuKTsKIH0KZGlmZiAtTmF1ciBsaW51eC0yLjYuMTEtcmMxL2lu Y2x1ZGUvbGludXgva2VybmVsLmggbGludXgtMi42LjExLXJjMS11NjQvaW5jbHVkZS9saW51 eC9rZXJuZWwuaAotLS0gbGludXgtMi42LjExLXJjMS9pbmNsdWRlL2xpbnV4L2tlcm5lbC5o CTIwMDUtMDEtMTMgMTQ6NDA6MTYuMzY0MDkxNjI0IC0wNzAwCisrKyBsaW51eC0yLjYuMTEt cmMxLXU2NC9pbmNsdWRlL2xpbnV4L2tlcm5lbC5oCTIwMDUtMDEtMTMgMTI6MTM6MDMuNTY2 ODgwOTA0IC0wNzAwCkBAIC0zOSw2ICszOSwxMiBAQAogI2RlZmluZQlLRVJOX0lORk8JIjw2 PiIJLyogaW5mb3JtYXRpb25hbAkJCSovCiAjZGVmaW5lCUtFUk5fREVCVUcJIjw3PiIJLyog ZGVidWctbGV2ZWwgbWVzc2FnZXMJCQkqLwogCisjaWYgQklUU19QRVJfTE9ORyA9PSA2NAor I2RlZmluZSBVNjRGTVQgIjAxNmx4IgorI2Vsc2UKKyNkZWZpbmUgVTY0Rk1UICIwMTZMeCIK KyNlbmRpZgorCiBleHRlcm4gaW50IGNvbnNvbGVfcHJpbnRrW107CiAKICNkZWZpbmUgY29u c29sZV9sb2dsZXZlbCAoY29uc29sZV9wcmludGtbMF0pCmRpZmYgLU5hdXIgbGludXgtMi42 LjExLXJjMS9pbmNsdWRlL2xpbnV4L3BjaS5oIGxpbnV4LTIuNi4xMS1yYzEtdTY0L2luY2x1 ZGUvbGludXgvcGNpLmgKLS0tIGxpbnV4LTIuNi4xMS1yYzEvaW5jbHVkZS9saW51eC9wY2ku aAkyMDA1LTAxLTEzIDE0OjQwOjE4LjAwMTg0MjY0OCAtMDcwMAorKysgbGludXgtMi42LjEx LXJjMS11NjQvaW5jbHVkZS9saW51eC9wY2kuaAkyMDA1LTAxLTEzIDExOjQ1OjQxLjg0NDQ2 MDY0OCAtMDcwMApAQCAtNzI2LDcgKzcyNiw3IEBACiAKIC8qIFVzZWQgb25seSB3aGVuIGRy aXZlcnMvcGNpL3NldHVwLmMgaXMgdXNlZCAqLwogdm9pZCBwY2liaW9zX2FsaWduX3Jlc291 cmNlKHZvaWQgKiwgc3RydWN0IHJlc291cmNlICosCi0JCQkgICAgdW5zaWduZWQgbG9uZywg dW5zaWduZWQgbG9uZyk7CisJCQkgICAgdTY0LCB1NjQpOwogdm9pZCBwY2liaW9zX3VwZGF0 ZV9pcnEoc3RydWN0IHBjaV9kZXYgKiwgaW50IGlycSk7CiAKIC8qIEdlbmVyaWMgUENJIGZ1 bmN0aW9ucyB1c2VkIGludGVybmFsbHkgKi8KQEAgLTg0MywxMCArODQzLDEwIEBACiAKIC8q IGRyaXZlcnMvcGNpL2J1cy5jICovCiBpbnQgcGNpX2J1c19hbGxvY19yZXNvdXJjZShzdHJ1 Y3QgcGNpX2J1cyAqYnVzLCBzdHJ1Y3QgcmVzb3VyY2UgKnJlcywKLQkJCSAgIHVuc2lnbmVk IGxvbmcgc2l6ZSwgdW5zaWduZWQgbG9uZyBhbGlnbiwKLQkJCSAgIHVuc2lnbmVkIGxvbmcg bWluLCB1bnNpZ25lZCBpbnQgdHlwZV9tYXNrLAorCQkJICAgdTY0IHNpemUsIHU2NCBhbGln biwKKwkJCSAgIHU2NCBtaW4sIHVuc2lnbmVkIGludCB0eXBlX21hc2ssCiAJCQkgICB2b2lk ICgqYWxpZ25mKSh2b2lkICosIHN0cnVjdCByZXNvdXJjZSAqLAotCQkJCQkgIHVuc2lnbmVk IGxvbmcsIHVuc2lnbmVkIGxvbmcpLAorCQkJCQkgIHU2NCwgdTY0KSwKIAkJCSAgIHZvaWQg KmFsaWduZl9kYXRhKTsKIHZvaWQgcGNpX2VuYWJsZV9icmlkZ2VzKHN0cnVjdCBwY2lfYnVz ICpidXMpOwogCmRpZmYgLU5hdXIgbGludXgtMi42LjExLXJjMS9pbmNsdWRlL2xpbnV4L3Bu cC5oIGxpbnV4LTIuNi4xMS1yYzEtdTY0L2luY2x1ZGUvbGludXgvcG5wLmgKLS0tIGxpbnV4 LTIuNi4xMS1yYzEvaW5jbHVkZS9saW51eC9wbnAuaAkyMDA0LTEyLTI0IDE0OjM1OjQwLjAw MDAwMDAwMCAtMDcwMAorKysgbGludXgtMi42LjExLXJjMS11NjQvaW5jbHVkZS9saW51eC9w bnAuaAkyMDA1LTAxLTEzIDExOjQ1OjQxLjg0NTQ2MDQ5NiAtMDcwMApAQCAtMzg0LDcgKzM4 NCw3IEBACiBpbnQgcG5wX3ZhbGlkYXRlX2NvbmZpZyhzdHJ1Y3QgcG5wX2RldiAqZGV2KTsK IGludCBwbnBfYWN0aXZhdGVfZGV2KHN0cnVjdCBwbnBfZGV2ICpkZXYpOwogaW50IHBucF9k aXNhYmxlX2RldihzdHJ1Y3QgcG5wX2RldiAqZGV2KTsKLXZvaWQgcG5wX3Jlc291cmNlX2No YW5nZShzdHJ1Y3QgcmVzb3VyY2UgKnJlc291cmNlLCB1bnNpZ25lZCBsb25nIHN0YXJ0LCB1 bnNpZ25lZCBsb25nIHNpemUpOwordm9pZCBwbnBfcmVzb3VyY2VfY2hhbmdlKHN0cnVjdCBy ZXNvdXJjZSAqcmVzb3VyY2UsIHU2NCBzdGFydCwgdTY0IHNpemUpOwogCiAvKiBwcm90b2Nv bCBoZWxwZXJzICovCiBpbnQgcG5wX2lzX2FjdGl2ZShzdHJ1Y3QgcG5wX2RldiAqIGRldik7 CkBAIC00MjksNyArNDI5LDcgQEAKIHN0YXRpYyBpbmxpbmUgaW50IHBucF92YWxpZGF0ZV9j b25maWcoc3RydWN0IHBucF9kZXYgKmRldikgeyByZXR1cm4gLUVOT0RFVjsgfQogc3RhdGlj IGlubGluZSBpbnQgcG5wX2FjdGl2YXRlX2RldihzdHJ1Y3QgcG5wX2RldiAqZGV2KSB7IHJl dHVybiAtRU5PREVWOyB9CiBzdGF0aWMgaW5saW5lIGludCBwbnBfZGlzYWJsZV9kZXYoc3Ry dWN0IHBucF9kZXYgKmRldikgeyByZXR1cm4gLUVOT0RFVjsgfQotc3RhdGljIGlubGluZSB2 b2lkIHBucF9yZXNvdXJjZV9jaGFuZ2Uoc3RydWN0IHJlc291cmNlICpyZXNvdXJjZSwgdW5z aWduZWQgbG9uZyBzdGFydCwgdW5zaWduZWQgbG9uZyBzaXplKSB7IH0KK3N0YXRpYyBpbmxp bmUgdm9pZCBwbnBfcmVzb3VyY2VfY2hhbmdlKHN0cnVjdCByZXNvdXJjZSAqcmVzb3VyY2Us IHU2NCBzdGFydCwgdTY0IHNpemUpIHsgfQogCiAvKiBwcm90b2NvbCBoZWxwZXJzICovCiBz dGF0aWMgaW5saW5lIGludCBwbnBfaXNfYWN0aXZlKHN0cnVjdCBwbnBfZGV2ICogZGV2KSB7 IHJldHVybiAwOyB9CmRpZmYgLU5hdXIgbGludXgtMi42LjExLXJjMS9rZXJuZWwvcmVzb3Vy Y2UuYyBsaW51eC0yLjYuMTEtcmMxLXU2NC9rZXJuZWwvcmVzb3VyY2UuYwotLS0gbGludXgt Mi42LjExLXJjMS9rZXJuZWwvcmVzb3VyY2UuYwkyMDA1LTAxLTEzIDE0OjQwOjE4LjUzNzc2 MTE3NiAtMDcwMAorKysgbGludXgtMi42LjExLXJjMS11NjQva2VybmVsL3Jlc291cmNlLmMJ MjAwNS0wMS0xMyAxNDo0MzoyNC44Nzc0MzMyNDAgLTA3MDAKQEAgLTIzLDcgKzIzLDcgQEAK IAogc3RydWN0IHJlc291cmNlIGlvcG9ydF9yZXNvdXJjZSA9IHsKIAkubmFtZQk9ICJQQ0kg SU8iLAotCS5zdGFydAk9IDB4MDAwMCwKKwkuc3RhcnQJPSAweDAwMDBVTEwsCiAJLmVuZAk9 IElPX1NQQUNFX0xJTUlULAogCS5mbGFncwk9IElPUkVTT1VSQ0VfSU8sCiB9OwpAQCAtMzIs OCArMzIsOCBAQAogCiBzdHJ1Y3QgcmVzb3VyY2UgaW9tZW1fcmVzb3VyY2UgPSB7CiAJLm5h bWUJPSAiUENJIG1lbSIsCi0JLnN0YXJ0CT0gMFVMLAotCS5lbmQJPSB+MFVMLAorCS5zdGFy dAk9IDBVTEwsCisJLmVuZAk9IH4wVUxMLAogCS5mbGFncwk9IElPUkVTT1VSQ0VfTUVNLAog fTsKIApAQCAtODMsNyArODMsNyBAQAogCWZvciAoZGVwdGggPSAwLCBwID0gcjsgZGVwdGgg PCBNQVhfSU9SRVNfTEVWRUw7IGRlcHRoKyssIHAgPSBwLT5wYXJlbnQpCiAJCWlmIChwLT5w YXJlbnQgPT0gcm9vdCkKIAkJCWJyZWFrOwotCXNlcV9wcmludGYobSwgIiUqcyUwKmx4LSUw Kmx4IDogJXNcbiIsCisJc2VxX3ByaW50ZihtLCAiJSpzJSIgVTY0Rk1UICItJSIgVTY0Rk1U ICIgOiAlc1xuIiwKIAkJCWRlcHRoICogMiwgIiIsCiAJCQl3aWR0aCwgci0+c3RhcnQsCiAJ CQl3aWR0aCwgci0+ZW5kLApAQCAtMTUxLDggKzE1MSw4IEBACiAvKiBSZXR1cm4gdGhlIGNv bmZsaWN0IGVudHJ5IGlmIHlvdSBjYW4ndCByZXF1ZXN0IGl0ICovCiBzdGF0aWMgc3RydWN0 IHJlc291cmNlICogX19yZXF1ZXN0X3Jlc291cmNlKHN0cnVjdCByZXNvdXJjZSAqcm9vdCwg c3RydWN0IHJlc291cmNlICpuZXcpCiB7Ci0JdW5zaWduZWQgbG9uZyBzdGFydCA9IG5ldy0+ c3RhcnQ7Ci0JdW5zaWduZWQgbG9uZyBlbmQgPSBuZXctPmVuZDsKKwl1NjQgc3RhcnQgPSBu ZXctPnN0YXJ0OworCXU2NCBlbmQgPSBuZXctPmVuZDsKIAlzdHJ1Y3QgcmVzb3VyY2UgKnRt cCwgKipwOwogCiAJaWYgKGVuZCA8IHN0YXJ0KQpAQCAtMjM2LDExICsyMzYsMTEgQEAKICAq IEZpbmQgZW1wdHkgc2xvdCBpbiB0aGUgcmVzb3VyY2UgdHJlZSBnaXZlbiByYW5nZSBhbmQg YWxpZ25tZW50LgogICovCiBzdGF0aWMgaW50IGZpbmRfcmVzb3VyY2Uoc3RydWN0IHJlc291 cmNlICpyb290LCBzdHJ1Y3QgcmVzb3VyY2UgKm5ldywKLQkJCSB1bnNpZ25lZCBsb25nIHNp emUsCi0JCQkgdW5zaWduZWQgbG9uZyBtaW4sIHVuc2lnbmVkIGxvbmcgbWF4LAotCQkJIHVu c2lnbmVkIGxvbmcgYWxpZ24sCisJCQkgdTY0IHNpemUsCisJCQkgdTY0IG1pbiwgdTY0IG1h eCwKKwkJCSB1NjQgYWxpZ24sCiAJCQkgdm9pZCAoKmFsaWduZikodm9pZCAqLCBzdHJ1Y3Qg cmVzb3VyY2UgKiwKLQkJCQkJdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZyksCisJCQkJ CXU2NCwgdTY0KSwKIAkJCSB2b2lkICphbGlnbmZfZGF0YSkKIHsKIAlzdHJ1Y3QgcmVzb3Vy Y2UgKnRoaXMgPSByb290LT5jaGlsZDsKQEAgLTI4MiwxMSArMjgyLDExIEBACiAgKiBBbGxv Y2F0ZSBlbXB0eSBzbG90IGluIHRoZSByZXNvdXJjZSB0cmVlIGdpdmVuIHJhbmdlIGFuZCBh bGlnbm1lbnQuCiAgKi8KIGludCBhbGxvY2F0ZV9yZXNvdXJjZShzdHJ1Y3QgcmVzb3VyY2Ug KnJvb3QsIHN0cnVjdCByZXNvdXJjZSAqbmV3LAotCQkgICAgICB1bnNpZ25lZCBsb25nIHNp emUsCi0JCSAgICAgIHVuc2lnbmVkIGxvbmcgbWluLCB1bnNpZ25lZCBsb25nIG1heCwKLQkJ ICAgICAgdW5zaWduZWQgbG9uZyBhbGlnbiwKKwkJICAgICAgdTY0IHNpemUsCisJCSAgICAg IHU2NCBtaW4sIHU2NCBtYXgsCisJCSAgICAgIHU2NCBhbGlnbiwKIAkJICAgICAgdm9pZCAo KmFsaWduZikodm9pZCAqLCBzdHJ1Y3QgcmVzb3VyY2UgKiwKLQkJCQkgICAgIHVuc2lnbmVk IGxvbmcsIHVuc2lnbmVkIGxvbmcpLAorCQkJCSAgICAgdTY0LCB1NjQpLAogCQkgICAgICB2 b2lkICphbGlnbmZfZGF0YSkKIHsKIAlpbnQgZXJyOwpAQCAtMzc4LDEwICszNzgsMTAgQEAK ICAqIGFyZ3VtZW50cy4gIFJldHVybnMgLUVCVVNZIGlmIGl0IGNhbid0IGZpdC4gIEV4aXN0 aW5nIGNoaWxkcmVuIG9mCiAgKiB0aGUgcmVzb3VyY2UgYXJlIGFzc3VtZWQgdG8gYmUgaW1t dXRhYmxlLgogICovCi1pbnQgYWRqdXN0X3Jlc291cmNlKHN0cnVjdCByZXNvdXJjZSAqcmVz LCB1bnNpZ25lZCBsb25nIHN0YXJ0LCB1bnNpZ25lZCBsb25nIHNpemUpCitpbnQgYWRqdXN0 X3Jlc291cmNlKHN0cnVjdCByZXNvdXJjZSAqcmVzLCB1NjQgc3RhcnQsIHU2NCBzaXplKQog ewogCXN0cnVjdCByZXNvdXJjZSAqdG1wLCAqcGFyZW50ID0gcmVzLT5wYXJlbnQ7Ci0JdW5z aWduZWQgbG9uZyBlbmQgPSBzdGFydCArIHNpemUgLSAxOworCXU2NCBlbmQgPSBzdGFydCAr IHNpemUgLSAxOwogCWludCByZXN1bHQgPSAtRUJVU1k7CiAKIAl3cml0ZV9sb2NrKCZyZXNv dXJjZV9sb2NrKTsKQEAgLTQyOCw3ICs0MjgsNyBAQAogICoKICAqIFJlbGVhc2UtcmVnaW9u IHJlbGVhc2VzIGEgbWF0Y2hpbmcgYnVzeSByZWdpb24uCiAgKi8KLXN0cnVjdCByZXNvdXJj ZSAqIF9fcmVxdWVzdF9yZWdpb24oc3RydWN0IHJlc291cmNlICpwYXJlbnQsIHVuc2lnbmVk IGxvbmcgc3RhcnQsIHVuc2lnbmVkIGxvbmcgbiwgY29uc3QgY2hhciAqbmFtZSkKK3N0cnVj dCByZXNvdXJjZSAqIF9fcmVxdWVzdF9yZWdpb24oc3RydWN0IHJlc291cmNlICpwYXJlbnQs IHU2NCBzdGFydCwgdTY0IG4sIGNvbnN0IGNoYXIgKm5hbWUpCiB7CiAJc3RydWN0IHJlc291 cmNlICpyZXMgPSBrbWFsbG9jKHNpemVvZigqcmVzKSwgR0ZQX0tFUk5FTCk7CiAKQEAgLTQ2 NSw3ICs0NjUsNyBAQAogCiBFWFBPUlRfU1lNQk9MKF9fcmVxdWVzdF9yZWdpb24pOwogCi1p bnQgX19kZXByZWNhdGVkIF9fY2hlY2tfcmVnaW9uKHN0cnVjdCByZXNvdXJjZSAqcGFyZW50 LCB1bnNpZ25lZCBsb25nIHN0YXJ0LCB1bnNpZ25lZCBsb25nIG4pCitpbnQgX19kZXByZWNh dGVkIF9fY2hlY2tfcmVnaW9uKHN0cnVjdCByZXNvdXJjZSAqcGFyZW50LCB1NjQgc3RhcnQs IHU2NCBuKQogewogCXN0cnVjdCByZXNvdXJjZSAqIHJlczsKIApAQCAtNDgwLDEwICs0ODAs MTAgQEAKIAogRVhQT1JUX1NZTUJPTChfX2NoZWNrX3JlZ2lvbik7CiAKLXZvaWQgX19yZWxl YXNlX3JlZ2lvbihzdHJ1Y3QgcmVzb3VyY2UgKnBhcmVudCwgdW5zaWduZWQgbG9uZyBzdGFy dCwgdW5zaWduZWQgbG9uZyBuKQordm9pZCBfX3JlbGVhc2VfcmVnaW9uKHN0cnVjdCByZXNv dXJjZSAqcGFyZW50LCB1NjQgc3RhcnQsIHU2NCBuKQogewogCXN0cnVjdCByZXNvdXJjZSAq KnA7Ci0JdW5zaWduZWQgbG9uZyBlbmQ7CisJdTY0IGVuZDsKIAogCXAgPSAmcGFyZW50LT5j aGlsZDsKIAllbmQgPSBzdGFydCArIG4gLSAxOwpAQCAtNTEyLDcgKzUxMiw3IEBACiAKIAl3 cml0ZV91bmxvY2soJnJlc291cmNlX2xvY2spOwogCi0JcHJpbnRrKEtFUk5fV0FSTklORyAi VHJ5aW5nIHRvIGZyZWUgbm9uZXhpc3RlbnQgcmVzb3VyY2UgPCUwOGx4LSUwOGx4PlxuIiwg c3RhcnQsIGVuZCk7CisJcHJpbnRrKEtFUk5fV0FSTklORyAiVHJ5aW5nIHRvIGZyZWUgbm9u ZXhpc3RlbnQgcmVzb3VyY2UgPCUiIFU2NEZNVCAiLSUiIFU2NEZNVCAiPlxuIiwgc3RhcnQs IGVuZCk7CiB9CiAKIEVYUE9SVF9TWU1CT0woX19yZWxlYXNlX3JlZ2lvbik7Cg== --fdj2RfSjLxBAspz7-- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/