From owner-freebsd-fs@FreeBSD.ORG Thu Nov 15 00:25:00 2012 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1D2A1EFD for ; Thu, 15 Nov 2012 00:25:00 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from esa-jnhn.mail.uoguelph.ca (esa-jnhn.mail.uoguelph.ca [131.104.91.44]) by mx1.freebsd.org (Postfix) with ESMTP id 8D7BE8FC08 for ; Thu, 15 Nov 2012 00:24:59 +0000 (UTC) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgAJAGU1pFCDaFvO/2dsb2JhbABEhh25Y4RGB4IeAQYjBIECFBkCBFUGiB6aDY5Tkl+MLYUZgRMDiFqGIYcBkEODDYF7 X-IronPort-AV: E=Sophos;i="4.83,254,1352091600"; d="scan'208";a="247816" Received: from erie.cs.uoguelph.ca (HELO zcs3.mail.uoguelph.ca) ([131.104.91.206]) by esa-jnhn.mail.uoguelph.ca with ESMTP; 14 Nov 2012 19:24:58 -0500 Received: from zcs3.mail.uoguelph.ca (localhost.localdomain [127.0.0.1]) by zcs3.mail.uoguelph.ca (Postfix) with ESMTP id 85408B4040 for ; Wed, 14 Nov 2012 19:24:58 -0500 (EST) Date: Wed, 14 Nov 2012 19:24:58 -0500 (EST) From: Rick Macklem To: "freebsd-fs@freebsd.org" Message-ID: <585500992.392200.1352939098529.JavaMail.root@erie.cs.uoguelph.ca> In-Reply-To: <1960242840.392195.1352939094946.JavaMail.root@erie.cs.uoguelph.ca> Subject: testing/review of a patch that adds "nfsstat -m" to dump NFS mount options MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_392199_539570562.1352939098525" X-Originating-IP: [172.17.91.201] X-Mailer: Zimbra 6.0.10_GA_2692 (ZimbraWebClient - IE7 (Win)/6.0.10_GA_2692) X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Nov 2012 00:25:00 -0000 ------=_Part_392199_539570562.1352939098525 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Hi, I've attached a pair of patches: nfsstat-m.patch - applies to nfsstat to add a "-m" options nfsstat-dumpmnt.patch - applies to the kernel to support the above "nfsstat -m" dumps out the options actually being used by new NFS client mounts. Feel free to test and/or review them. Thanks, rick ------=_Part_392199_539570562.1352939098525 Content-Type: text/x-patch; name=nfsstat-m.patch Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=nfsstat-m.patch LS0tIHVzci5iaW4vbmZzc3RhdC9uZnNzdGF0LmMuc2F2CTIwMTItMTEtMTQgMDg6MzQ6MDIuMDAw MDAwMDAwIC0wNTAwCisrKyB1c3IuYmluL25mc3N0YXQvbmZzc3RhdC5jCTIwMTItMTEtMTQgMTg6 MDk6MDEuMDAwMDAwMDAwIC0wNTAwCkBAIC0xMDcsMTQgKzEwNywzNiBAQCBtYWluKGludCBhcmdj LCBjaGFyICoqYXJndikKIAlpbnQgY2g7CiAJY2hhciAqbWVtZiwgKm5saXN0ZjsKIAljaGFyIGVy cmJ1ZltfUE9TSVgyX0xJTkVfTUFYXTsKKwlpbnQgbW50bGVuLCBpOworCWNoYXIgYnVmWzEwMjRd OworCXN0cnVjdCBzdGF0ZnMgKm1udGJ1ZjsKKwlzdHJ1Y3QgbmZzY2xfZHVtcG1udG9wdHMgZHVt cG1udG9wdHM7CiAKIAlpbnRlcnZhbCA9IDA7CiAJbWVtZiA9IG5saXN0ZiA9IE5VTEw7Ci0Jd2hp bGUgKChjaCA9IGdldG9wdChhcmdjLCBhcmd2LCAiY2VzV006Tjpvdzp6IikpICE9IC0xKQorCXdo aWxlICgoY2ggPSBnZXRvcHQoYXJnYywgYXJndiwgImNlc1dNOm1OOm93OnoiKSkgIT0gLTEpCiAJ CXN3aXRjaChjaCkgewogCQljYXNlICdNJzoKIAkJCW1lbWYgPSBvcHRhcmc7CiAJCQlicmVhazsK KwkJY2FzZSAnbSc6CisJCQkvKiBEaXNwbGF5IG1vdW50IG9wdGlvbnMgZm9yIE5GUyBtb3VudCBw b2ludHMuICovCisJCQltbnRsZW4gPSBnZXRtbnRpbmZvKCZtbnRidWYsIE1OVF9OT1dBSVQpOwor CQkJZm9yIChpID0gMDsgaSA8IG1udGxlbjsgaSsrKSB7CisJCQkJaWYgKHN0cmNtcChtbnRidWYt PmZfZnN0eXBlbmFtZSwgIm5mcyIpID09IDApIHsKKwkJCQkJZHVtcG1udG9wdHMubmRtbnRfZm5h bWUgPQorCQkJCQkgICAgbW50YnVmLT5mX21udG9ubmFtZTsKKwkJCQkJZHVtcG1udG9wdHMubmRt bnRfYnVmID0gYnVmOworCQkJCQlkdW1wbW50b3B0cy5uZG1udF9ibGVuID0gc2l6ZW9mKGJ1Zik7 CisJCQkJCWlmIChuZnNzdmMoTkZTU1ZDX0RVTVBNTlRPUFRTLAorCQkJCQkgICAgJmR1bXBtbnRv cHRzKSA+PSAwKQorCQkJCQkJcHJpbnRmKCIlcyBvbiAlc1xuJXNcbiIsCisJCQkJCQkgICAgbW50 YnVmLT5mX21udGZyb21uYW1lLAorCQkJCQkJICAgIG1udGJ1Zi0+Zl9tbnRvbm5hbWUsIGJ1Zik7 CisJCQkJfQorCQkJCW1udGJ1ZisrOworCQkJfQorCQkJZXhpdCgwKTsKIAkJY2FzZSAnTic6CiAJ CQlubGlzdGYgPSBvcHRhcmc7CiAJCQlicmVhazsKQEAgLTY0Niw3ICs2NjgsNyBAQCB2b2lkCiB1 c2FnZSh2b2lkKQogewogCSh2b2lkKWZwcmludGYoc3RkZXJyLAotCSAgICAidXNhZ2U6IG5mc3N0 YXQgWy1jZW9zelddIFstTSBjb3JlXSBbLU4gc3lzdGVtXSBbLXcgd2FpdF1cbiIpOworCSAgICAi dXNhZ2U6IG5mc3N0YXQgWy1jZW9tc3pXXSBbLU0gY29yZV0gWy1OIHN5c3RlbV0gWy13IHdhaXRd XG4iKTsKIAlleGl0KDEpOwogfQogCi0tLSB1c3IuYmluL25mc3N0YXQvbmZzc3RhdC4xLnNhdgky MDEyLTExLTE0IDE4OjA0OjMyLjAwMDAwMDAwMCAtMDUwMAorKysgdXNyLmJpbi9uZnNzdGF0L25m c3N0YXQuMQkyMDEyLTExLTE0IDE4OjA3OjUzLjAwMDAwMDAwMCAtMDUwMApAQCAtMjgsNyArMjgs NyBAQAogLlwiICAgICBGcm9tOiBAKCMpbmZzc3RhdC4xCTguMSAoQmVya2VsZXkpIDYvNi85Mwog LlwiICRGcmVlQlNEOiBzdGFibGUvOS91c3IuYmluL25mc3N0YXQvbmZzc3RhdC4xIDIyMTQ5MSAy MDExLTA1LTA1IDEwOjE3OjA4WiBydSAkCiAuXCIKLS5EZCBNYXkgNCwgMjAxMQorLkRkIE5vdmVt YmVyIDE0LCAyMDEyCiAuRHQgTkZTU1RBVCAxCiAuT3MKIC5TaCBOQU1FCkBAIC0zOCw3ICszOCw3 IEBACiBzdGF0aXN0aWNzCiAuU2ggU1lOT1BTSVMKIC5ObQotLk9wIEZsIGNlb3N6VworLk9wIEZs IGNlb21zelcKIC5PcCBGbCBNIEFyIGNvcmUKIC5PcCBGbCBOIEFyIHN5c3RlbQogLk9wIEZsIHcg QXIgd2FpdApAQCAtNjksNiArNjksMTEgQEAgRXh0cmFjdCB0aGUgbmFtZSBsaXN0IGZyb20gdGhl IHNwZWNpZmllZAogUmVwb3J0IHN0YXRpc3RpY3MgZm9yIHRoZSBvbGQgTkZTIGNsaWVudCBhbmQv b3Igc2VydmVyLgogV2l0aG91dCB0aGlzCiBvcHRpb24gc3RhdGlzdGljcyBmb3IgdGhlIG5ldyBO RlMgY2xpZW50IGFuZC9vciBzZXJ2ZXIgd2lsbCBiZSByZXBvcnRlZC4KKy5JdCBGbCBtCitSZXBv cnQgdGhlIG1vdW50IG9wdGlvbnMgZm9yIGFsbCBuZXcgTkZTIGNsaWVudCBtb3VudHMuCitUaGlz IG9wdGlvbiBvdmVycmlkZXMgYWxsIG90aGVycyBhbmQKKy5ObQord2lsbCBleGl0IGFmdGVyIGNv bXBsZXRpbmcgdGhlIHJlcG9ydC4KIC5JdCBGbCBzCiBPbmx5IGRpc3BsYXkgc2VydmVyIHNpZGUg c3RhdGlzdGljcy4KIC5JdCBGbCBXCg== ------=_Part_392199_539570562.1352939098525 Content-Type: text/x-patch; name=nfsstat-dumpmnt.patch Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=nfsstat-dumpmnt.patch LS0tIG5mcy9uZnNzdmMuaC5zYXYyCTIwMTItMTEtMTMgMTA6MDQ6MDYuMDAwMDAwMDAwIC0wNTAw CisrKyBuZnMvbmZzc3ZjLmgJMjAxMi0xMS0xNCAxNzo0ODoyNS4wMDAwMDAwMDAgLTA1MDAKQEAg LTY4LDUgKzY4LDEzIEBACiAjZGVmaW5lCU5GU1NWQ19aRVJPU1JWU1RBVFMJMHgwMjAwMDAwMAkv KiBtb2RpZmllciBmb3IgR0VUU1RBVFMgKi8KICNkZWZpbmUJTkZTU1ZDX1NVU1BFTkRORlNECTB4 MDQwMDAwMDAKICNkZWZpbmUJTkZTU1ZDX1JFU1VNRU5GU0QJMHgwODAwMDAwMAorI2RlZmluZQlO RlNTVkNfRFVNUE1OVE9QVFMJMHgxMDAwMDAwMAorCisvKiBBcmd1bWVudCBzdHJ1Y3R1cmUgZm9y IE5GU1NWQ19EVU1QTU5UT1BUUy4gKi8KK3N0cnVjdCBuZnNjbF9kdW1wbW50b3B0cyB7CisJY2hh cgkqbmRtbnRfZm5hbWU7CQkvKiBGaWxlIE5hbWUgKi8KKwlzaXplX3QJbmRtbnRfYmxlbjsJCS8q IFNpemUgb2YgYnVmZmVyICovCisJdm9pZAkqbmRtbnRfYnVmOwkJLyogYW5kIHRoZSBidWZmZXIg Ki8KK307CiAKICNlbmRpZiAvKiBfTkZTX05GU1NWQ19IICovCi0tLSBuZnMvbmZzX25mc3N2Yy5j LnNhdjIJMjAxMi0xMS0xMyAxMDowMjozMC4wMDAwMDAwMDAgLTA1MDAKKysrIG5mcy9uZnNfbmZz c3ZjLmMJMjAxMi0xMS0xMyAxMDowMzo1Ny4wMDAwMDAwMDAgLTA1MDAKQEAgLTkxLDggKzkxLDgg QEAgc3lzX25mc3N2YyhzdHJ1Y3QgdGhyZWFkICp0ZCwgc3RydWN0IG5mcwogCWlmICgodWFwLT5m bGFnICYgKE5GU1NWQ19BRERTT0NLIHwgTkZTU1ZDX09MRE5GU0QgfCBORlNTVkNfTkZTRCkpICYm CiAJICAgIG5mc2RfY2FsbF9uZnNzZXJ2ZXIgIT0gTlVMTCkKIAkJZXJyb3IgPSAoKm5mc2RfY2Fs bF9uZnNzZXJ2ZXIpKHRkLCB1YXApOwotCWVsc2UgaWYgKCh1YXAtPmZsYWcgJiAoTkZTU1ZDX0NC QUREU09DSyB8IE5GU1NWQ19ORlNDQkQpKSAmJgotCSAgICBuZnNkX2NhbGxfbmZzY2wgIT0gTlVM TCkKKwllbHNlIGlmICgodWFwLT5mbGFnICYgKE5GU1NWQ19DQkFERFNPQ0sgfCBORlNTVkNfTkZT Q0JEIHwKKwkgICAgTkZTU1ZDX0RVTVBNTlRPUFRTKSkgJiYgbmZzZF9jYWxsX25mc2NsICE9IE5V TEwpCiAJCWVycm9yID0gKCpuZnNkX2NhbGxfbmZzY2wpKHRkLCB1YXApOwogCWVsc2UgaWYgKCh1 YXAtPmZsYWcgJiAoTkZTU1ZDX0lETkFNRSB8IE5GU1NWQ19HRVRTVEFUUyB8CiAJICAgIE5GU1NW Q19HU1NEQUREUE9SVCB8IE5GU1NWQ19HU1NEQURERklSU1QgfCBORlNTVkNfR1NTRERFTEVURUFM TCB8Ci0tLSBmcy9uZnMvbmZzX3Zhci5oLnNhdjIJMjAxMi0xMS0xMyAxMDoxMToyMC4wMDAwMDAw MDAgLTA1MDAKKysrIGZzL25mcy9uZnNfdmFyLmgJMjAxMi0xMS0xMyAxMDoxMTo1NS4wMDAwMDAw MDAgLTA1MDAKQEAgLTMxMyw2ICszMTMsNyBAQCB2b2lkIG5mc2RfaW5pdCh2b2lkKTsKIGludCBu ZnNkX2NoZWNrcm9vdGV4cChzdHJ1Y3QgbmZzcnZfZGVzY3JpcHQgKik7CiAKIC8qIG5mc19jbHZm c29wcy5jICovCit2b2lkIG5mc2NsX3JldG9wdHMoc3RydWN0IG5mc21vdW50ICosIGNoYXIgKiwg c2l6ZV90KTsKIAogLyogbmZzX2NvbW1vbnBvcnQuYyAqLwogaW50IG5mc3J2X2NoZWNrc29ja3Nl cW51bShzdHJ1Y3Qgc29ja2V0ICosIHRjcF9zZXEpOwotLS0gZnMvbmZzY2xpZW50L25mc19jbHBv cnQuYy5zYXYyCTIwMTItMTEtMTMgMTA6MDU6MDAuMDAwMDAwMDAwIC0wNTAwCisrKyBmcy9uZnNj bGllbnQvbmZzX2NscG9ydC5jCTIwMTItMTEtMTQgMDk6MDU6MjguMDAwMDAwMDAwIC0wNTAwCkBA IC0xMjMyLDYgKzEyMzIsOSBAQCBuZnNzdmNfbmZzY2woc3RydWN0IHRocmVhZCAqdGQsIHN0cnVj dCBuCiAJc3RydWN0IG5mc2NiZF9hcmdzIG5mc2NiZGFyZzsKIAlzdHJ1Y3QgbmZzZF9uZnNjYmRf YXJncyBuZnNjYmRhcmcyOwogCWludCBlcnJvcjsKKwlzdHJ1Y3QgbmFtZWlkYXRhIG5kOworCXN0 cnVjdCBuZnNjbF9kdW1wbW50b3B0cyBkdW1wbW50b3B0czsKKwljaGFyICpidWY7CiAKIAlpZiAo dWFwLT5mbGFnICYgTkZTU1ZDX0NCQUREU09DSykgewogCQllcnJvciA9IGNvcHlpbih1YXAtPmFy Z3AsIChjYWRkcl90KSZuZnNjYmRhcmcsIHNpemVvZihuZnNjYmRhcmcpKTsKQEAgLTEyNjQsNiAr MTI2NywyOCBAQCBuZnNzdmNfbmZzY2woc3RydWN0IHRocmVhZCAqdGQsIHN0cnVjdCBuCiAJCWlm IChlcnJvcikKIAkJCXJldHVybiAoZXJyb3IpOwogCQllcnJvciA9IG5mc2NiZF9uZnNkKHRkLCAm bmZzY2JkYXJnMik7CisJfSBlbHNlIGlmICh1YXAtPmZsYWcgJiBORlNTVkNfRFVNUE1OVE9QVFMp IHsKKwkJZXJyb3IgPSBjb3B5aW4odWFwLT5hcmdwLCAmZHVtcG1udG9wdHMsIHNpemVvZihkdW1w bW50b3B0cykpOworCQlpZiAoZXJyb3IgPT0gMCAmJiAoZHVtcG1udG9wdHMubmRtbnRfYmxlbiA8 IDI1NiB8fAorCQkgICAgZHVtcG1udG9wdHMubmRtbnRfYmxlbiA+IDEwMjQpKQorCQkJZXJyb3Ig PSBFUEVSTTsKKwkJaWYgKGVycm9yID09IDApCisJCQllcnJvciA9IG5mc3J2X2xvb2t1cGZpbGVu YW1lKCZuZCwKKwkJCSAgICBkdW1wbW50b3B0cy5uZG1udF9mbmFtZSwgdGQpOworCQlpZiAoZXJy b3IgPT0gMCAmJiBzdHJjbXAobmQubmlfdnAtPnZfbW91bnQtPm1udF92ZmMtPnZmY19uYW1lLAor CQkgICAgIm5mcyIpICE9IDApIHsKKwkJCXZwdXQobmQubmlfdnApOworCQkJZXJyb3IgPSBFUEVS TTsKKwkJfQorCQlpZiAoZXJyb3IgPT0gMCkgeworCQkJYnVmID0gbWFsbG9jKGR1bXBtbnRvcHRz Lm5kbW50X2JsZW4sIE1fVEVNUCwgTV9XQUlUT0spOworCQkJbmZzY2xfcmV0b3B0cyhWRlNUT05G UyhuZC5uaV92cC0+dl9tb3VudCksIGJ1ZiwKKwkJCSAgICBkdW1wbW50b3B0cy5uZG1udF9ibGVu KTsKKwkJCXZwdXQobmQubmlfdnApOworCQkJZXJyb3IgPSBjb3B5b3V0KGJ1ZiwgZHVtcG1udG9w dHMubmRtbnRfYnVmLAorCQkJICAgIGR1bXBtbnRvcHRzLm5kbW50X2JsZW4pOworCQkJZnJlZShi dWYsIE1fVEVNUCk7CisJCX0KIAl9IGVsc2UgewogCQllcnJvciA9IEVJTlZBTDsKIAl9Ci0tLSBm cy9uZnNjbGllbnQvbmZzX2NsdmZzb3BzLmMuc2F2MgkyMDEyLTA5LTI4IDE5OjAyOjMyLjAwMDAw MDAwMCAtMDQwMAorKysgZnMvbmZzY2xpZW50L25mc19jbHZmc29wcy5jCTIwMTItMTEtMTQgMTg6 MDI6MjYuMDAwMDAwMDAwIC0wNTAwCkBAIC0xNjI4LDMgKzE2MjgsMTA1IEBAIG5mc19nZXRubG1p bmZvKHN0cnVjdCB2bm9kZSAqdnAsIHVpbnQ4X3QKIAl9CiB9CiAKKy8qCisgKiBUaGlzIGZ1bmN0 aW9uIHByaW50cyBvdXQgYW4gb3B0aW9uIG5hbWUsIGJhc2VkIG9uIHRoZSBjb25kaXRpb25hbAor ICogYXJndW1lbnQuCisgKi8KK3N0YXRpYyBfX2lubGluZSB2b2lkIG5mc2NsX3ByaW50b3B0KHN0 cnVjdCBuZnNtb3VudCAqbm1wLCBpbnQgdGVzdHZhbCwKKyAgICBjaGFyICpvcHQsIGNoYXIgKipi dWYsIHNpemVfdCAqYmxlbikKK3sKKwlpbnQgbGVuOworCisJaWYgKHRlc3R2YWwgIT0gMCAmJiAq YmxlbiA+IHN0cmxlbihvcHQpKSB7CisJCWxlbiA9IHNucHJpbnRmKCpidWYsICpibGVuLCAiJXMi LCBvcHQpOworCQlpZiAobGVuICE9IHN0cmxlbihvcHQpKQorCQkJcHJpbnRmKCJFRUshIVxuIik7 CisJCSpidWYgKz0gbGVuOworCQkqYmxlbiAtPSBsZW47CisJfQorfQorCisvKgorICogVGhpcyBm dW5jdGlvbiBwcmludGYgb3V0IGFuIG9wdGlvbnMgaW50ZWdlciB2YWx1ZS4KKyAqLworc3RhdGlj IF9faW5saW5lIHZvaWQgbmZzY2xfcHJpbnRvcHR2YWwoc3RydWN0IG5mc21vdW50ICpubXAsIGlu dCBvcHR2YWwsCisgICAgY2hhciAqb3B0LCBjaGFyICoqYnVmLCBzaXplX3QgKmJsZW4pCit7CisJ aW50IGxlbjsKKworCWlmICgqYmxlbiA+IHN0cmxlbihvcHQpICsgMSkgeworCQkvKiBDb3VsZCBy ZXN1bHQgaW4gdHJ1bmNhdGVkIG91dHB1dCBzdHJpbmcuICovCisJCWxlbiA9IHNucHJpbnRmKCpi dWYsICpibGVuLCAiJXM9JWQiLCBvcHQsIG9wdHZhbCk7CisJCWlmIChsZW4gPCAqYmxlbikgewor CQkJKmJ1ZiArPSBsZW47CisJCQkqYmxlbiAtPSBsZW47CisJCX0KKwl9Cit9CisKKy8qCisgKiBM b2FkIHRoZSBvcHRpb24gZmxhZ3MgYW5kIHZhbHVlcyBpbnRvIHRoZSBidWZmZXIuCisgKi8KK3Zv aWQgbmZzY2xfcmV0b3B0cyhzdHJ1Y3QgbmZzbW91bnQgKm5tcCwgY2hhciAqYnVmZmVyLCBzaXpl X3QgYnVmbGVuKQoreworCWNoYXIgKmJ1ZjsKKwlzaXplX3QgYmxlbjsKKworCWJ1ZiA9IGJ1ZmZl cjsKKwlibGVuID0gYnVmbGVuOworCW5mc2NsX3ByaW50b3B0KG5tcCwgKG5tcC0+bm1fZmxhZyAm IE5GU01OVF9ORlNWNCkgIT0gMCwgIm5mc3Y0IiwgJmJ1ZiwKKwkgICAgJmJsZW4pOworCW5mc2Ns X3ByaW50b3B0KG5tcCwgKG5tcC0+bm1fZmxhZyAmIE5GU01OVF9ORlNWMykgIT0gMCwgIm5mc3Yz IiwgJmJ1ZiwKKwkgICAgJmJsZW4pOworCW5mc2NsX3ByaW50b3B0KG5tcCwgKG5tcC0+bm1fZmxh ZyAmIChORlNNTlRfTkZTVjMgfCBORlNNTlRfTkZTVjQpKSA9PSAwLAorCSAgICAibmZzdjIiLCAm YnVmLCAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHQobm1wLCBubXAtPm5tX3NvdHlwZSA9PSBTT0NL X1NUUkVBTSwgIix0Y3AiLCAmYnVmLCAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHQobm1wLCBubXAt Pm5tX3NvdHlwZSAhPSBTT0NLX1NUUkVBTSwgIix1ZHAiLCAmYnVmLCAmYmxlbik7CisJbmZzY2xf cHJpbnRvcHQobm1wLCAobm1wLT5ubV9mbGFnICYgTkZTTU5UX1JFU1ZQT1JUKSAhPSAwLCAiLHJl c3Zwb3J0IiwKKwkgICAgJmJ1ZiwgJmJsZW4pOworCW5mc2NsX3ByaW50b3B0KG5tcCwgKG5tcC0+ bm1fZmxhZyAmIE5GU01OVF9OT0NPTk4pICE9IDAsICIsbm9jb25uIiwKKwkgICAgJmJ1ZiwgJmJs ZW4pOworCW5mc2NsX3ByaW50b3B0KG5tcCwgKG5tcC0+bm1fZmxhZyAmIE5GU01OVF9TT0ZUKSA9 PSAwLCAiLGhhcmQiLCAmYnVmLAorCSAgICAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHQobm1wLCAo bm1wLT5ubV9mbGFnICYgTkZTTU5UX1NPRlQpICE9IDAsICIsc29mdCIsICZidWYsCisJICAgICZi bGVuKTsKKwluZnNjbF9wcmludG9wdChubXAsIChubXAtPm5tX2ZsYWcgJiBORlNNTlRfSU5UKSAh PSAwLCAiLGludHIiLCAmYnVmLAorCSAgICAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHQobm1wLCAo bm1wLT5ubV9mbGFnICYgTkZTTU5UX05PQ1RPKSA9PSAwLCAiLGN0byIsICZidWYsCisJICAgICZi bGVuKTsKKwluZnNjbF9wcmludG9wdChubXAsIChubXAtPm5tX2ZsYWcgJiBORlNNTlRfTk9DVE8p ICE9IDAsICIsbm9jdG8iLCAmYnVmLAorCSAgICAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHQobm1w LCAobm1wLT5ubV9mbGFnICYgTkZTTU5UX05PTE9DS0QpID09IDAsICIsbG9ja2QiLAorCSAgICAm YnVmLCAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHQobm1wLCAobm1wLT5ubV9mbGFnICYgTkZTTU5U X05PTE9DS0QpICE9IDAsICIsbm9sb2NrZCIsCisJICAgICZidWYsICZibGVuKTsKKwluZnNjbF9w cmludG9wdChubXAsIChubXAtPm5tX2ZsYWcgJiBORlNNTlRfUkRJUlBMVVMpICE9IDAsICIscmRp cnBsdXMiLAorCSAgICAmYnVmLCAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHQobm1wLCAobm1wLT5u bV9mbGFnICYgTkZTTU5UX0tFUkIpID09IDAsICIsc2VjPXN5cyIsCisJICAgICZidWYsICZibGVu KTsKKwluZnNjbF9wcmludG9wdChubXAsIChubXAtPm5tX2ZsYWcgJiAoTkZTTU5UX0tFUkIgfCBO RlNNTlRfSU5URUdSSVRZIHwKKwkgICAgTkZTTU5UX1BSSVZBQ1kpKSA9PSBORlNNTlRfS0VSQiwg IixzZWM9a3JiNSIsICZidWYsICZibGVuKTsKKwluZnNjbF9wcmludG9wdChubXAsIChubXAtPm5t X2ZsYWcgJiAoTkZTTU5UX0tFUkIgfCBORlNNTlRfSU5URUdSSVRZIHwKKwkgICAgTkZTTU5UX1BS SVZBQ1kpKSA9PSAoTkZTTU5UX0tFUkIgfCBORlNNTlRfSU5URUdSSVRZKSwgIixzZWM9a3JiNWki LAorCSAgICAmYnVmLCAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHQobm1wLCAobm1wLT5ubV9mbGFn ICYgKE5GU01OVF9LRVJCIHwgTkZTTU5UX0lOVEVHUklUWSB8CisJICAgIE5GU01OVF9QUklWQUNZ KSkgPT0gKE5GU01OVF9LRVJCIHwgTkZTTU5UX1BSSVZBQ1kpLCAiLHNlYz1rcmI1cCIsCisJICAg ICZidWYsICZibGVuKTsKKwluZnNjbF9wcmludG9wdHZhbChubXAsIG5tcC0+bm1fYWNkaXJtaW4s ICIsYWNkaXJtaW4iLCAmYnVmLCAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHR2YWwobm1wLCBubXAt Pm5tX2FjZGlybWF4LCAiLGFjZGlybWF4IiwgJmJ1ZiwgJmJsZW4pOworCW5mc2NsX3ByaW50b3B0 dmFsKG5tcCwgbm1wLT5ubV9hY3JlZ21pbiwgIixhY3JlZ21pbiIsICZidWYsICZibGVuKTsKKwlu ZnNjbF9wcmludG9wdHZhbChubXAsIG5tcC0+bm1fYWNyZWdtYXgsICIsYWNyZWdtYXgiLCAmYnVm LCAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHR2YWwobm1wLCBubXAtPm5tX25hbWV0aW1lbywgIixu YW1ldGltZW8iLCAmYnVmLCAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHR2YWwobm1wLCBubXAtPm5t X25lZ25hbWV0aW1lbywgIixuZWduYW1ldGltZW8iLCAmYnVmLAorCSAgICAmYmxlbik7CisJbmZz Y2xfcHJpbnRvcHR2YWwobm1wLCBubXAtPm5tX3JzaXplLCAiLHJzaXplIiwgJmJ1ZiwgJmJsZW4p OworCW5mc2NsX3ByaW50b3B0dmFsKG5tcCwgbm1wLT5ubV93c2l6ZSwgIix3c2l6ZSIsICZidWYs ICZibGVuKTsKKwluZnNjbF9wcmludG9wdHZhbChubXAsIG5tcC0+bm1fcmVhZGRpcnNpemUsICIs cmVhZGRpcnNpemUiLCAmYnVmLAorCSAgICAmYmxlbik7CisJbmZzY2xfcHJpbnRvcHR2YWwobm1w LCBubXAtPm5tX3JlYWRhaGVhZCwgIixyZWFkYWhlYWQiLCAmYnVmLCAmYmxlbik7CisJbmZzY2xf cHJpbnRvcHR2YWwobm1wLCBubXAtPm5tX3djb21taXRzaXplLCAiLHdjb21taXRzaXplIiwgJmJ1 ZiwKKwkgICAgJmJsZW4pOworCW5mc2NsX3ByaW50b3B0dmFsKG5tcCwgbm1wLT5ubV90aW1lbywg Iix0aW1lb3V0IiwgJmJ1ZiwgJmJsZW4pOworCW5mc2NsX3ByaW50b3B0dmFsKG5tcCwgbm1wLT5u bV9yZXRyeSwgIixyZXRyYW5zIiwgJmJ1ZiwgJmJsZW4pOworfQorCg== ------=_Part_392199_539570562.1352939098525--