Content-Type: multipart/mixed; boundary="===============7465126490393537962==" MIME-Version: 1.0 From: Jaroslav Skarvada Subject: [Powertop] [PATCH] Do not exit on MSR read errors Date: Mon, 11 May 2015 12:49:44 -0400 Message-ID: <1009270194.15661933.1431362984315.JavaMail.zimbra@redhat.com> In-Reply-To: 1431354734-5615-1-git-send-email-jskarvad@redhat.com To: powertop@lists.01.org List-ID: --===============7465126490393537962== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi, it seems there are virtual environments not correctly implementing the MSR (e.g. VirtualBox bug: https://www.virtualbox.org/ticket/14099) or not imple= menting it at all (e.g. KVM). PowerTOP just exits in such environments and cannot r= un. = The proposed patch makes PowerTOP not to exit on MSR read errors, but still report them. Resending as attachment, because the previous e-mail has been probably bloc= ked somewhere thanks & regards Jaroslav --===============7465126490393537962== Content-Type: text/x-patch MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-Do-not-exit-on-MSR-read-errors.patch" RnJvbSBlZjQ1ZWI4ODIyNzRlMTRjNjA5MjBhNDMzYTY2NWMzNjk1ZTY4NWU3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/SmFyb3NsYXY9MjA9QzU9QTBrYXJ2YWRhPz0g PGpza2FydmFkQHJlZGhhdC5jb20+CkRhdGU6IFRodSwgNyBNYXkgMjAxNSAxNzoxMTo0MyArMDIw MApTdWJqZWN0OiBbUEFUQ0hdIERvIG5vdCBleGl0IG9uIE1TUiByZWFkIGVycm9ycwpNSU1FLVZl cnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKQ29udGVu dC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAoKVGhlcmUgYXJlIHZpcnR1YWwgZW52aXJvbm1lbnRz IG5vdCBjb3JyZWN0bHkgaW1wbGVtZW50aW5nIHRoZSBNU1IgKGUuZy4KVmlydHVhbEJveCBidWc6 IGh0dHBzOi8vd3d3LnZpcnR1YWxib3gub3JnL3RpY2tldC8xNDA5OSkgb3Igbm90IGltcGxlbWVu dGluZwppdCBhdCBhbGwgKGUuZy4gS1ZNKS4gUG93ZXJUT1AganVzdCBleGl0cyBpbiBzdWNoIGVu dmlyb25tZW50cyBhbmQKY2Fubm90IHJ1bi4KClRoZSBwcm9wb3NlZCBwYXRjaCBtYWtlcyBQb3dl clRPUCBub3QgdG8gZXhpdCBvbiBNU1IgcmVhZCBlcnJvcnMsIGJ1dCBzdGlsbApyZXBvcnQgdGhl bS4KClNpZ25lZC1vZmYtYnk6IEphcm9zbGF2IMWga2FydmFkYSA8anNrYXJ2YWRAcmVkaGF0LmNv bT4KLS0tCiBzcmMvY3B1L2ludGVsX2NwdXMuY3BwIHwgMTAzICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyYy9jcHUvaW50ZWxfY3B1cy5oICAgfCAg IDEgKwogMiBmaWxlcyBjaGFuZ2VkLCA2MiBpbnNlcnRpb25zKCspLCA0MiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmMvY3B1L2ludGVsX2NwdXMuY3BwIGIvc3JjL2NwdS9pbnRlbF9jcHVz LmNwcAppbmRleCAxZjM2NDdhLi42OWZkYzg0IDEwMDY0NAotLS0gYS9zcmMvY3B1L2ludGVsX2Nw dXMuY3BwCisrKyBiL3NyYy9jcHUvaW50ZWxfY3B1cy5jcHAKQEAgLTc5LDIwICs3OSwyMCBAQCBp bnQgaXNfc3VwcG9ydGVkX2ludGVsX2NwdShpbnQgbW9kZWwpCiAJcmV0dXJuIDA7CiB9CiAKLXN0 YXRpYyB1aW50NjRfdCBnZXRfbXNyKGludCBjcHUsIHVpbnQ2NF90IG9mZnNldCkKK3N0YXRpYyBp bnQgZ2V0X21zcihpbnQgY3B1LCB1aW50NjRfdCBvZmZzZXQsIHVpbnQ2NF90ICptc3IpCiB7CiAJ c3NpemVfdCByZXR2YWw7Ci0JdWludDY0X3QgbXNyOwogCi0JcmV0dmFsID0gcmVhZF9tc3IoY3B1 LCBvZmZzZXQsICZtc3IpOworCXJldHZhbCA9IHJlYWRfbXNyKGNwdSwgb2Zmc2V0LCBtc3IpOwog CWlmIChyZXR2YWwgPCAwKSB7CiAJCXJlc2V0X2Rpc3BsYXkoKTsKIAkJZnByaW50ZihzdGRlcnIs IF8oInJlYWRfbXNyIGNwdSVkIDB4JWxseCA6ICIpLCBjcHUsICh1bnNpZ25lZCBsb25nIGxvbmcp b2Zmc2V0KTsKIAkJZnByaW50ZihzdGRlcnIsICIlc1xuIiwgc3RyZXJyb3IoZXJybm8pKTsKLQkJ ZXhpdCgtMik7CisJCSptc3IgPSAwOworCQlyZXR1cm4gMDsKIAl9CiAKLQlyZXR1cm4gbXNyOwor CXJldHVybiAxOwogfQogCiBpbnRlbF91dGlsOjppbnRlbF91dGlsKCkKQEAgLTE1MiwxMyArMTUy LDE4IEBAIHZvaWQgbmhtX2NvcmU6Om1lYXN1cmVtZW50X3N0YXJ0KHZvaWQpCiAJbGFzdF9zdGFt cCA9IDA7CiAKIAlpZiAodGhpcy0+aGFzX2MxX3JlcykKLQkJYzFfYmVmb3JlID0gZ2V0X21zcihm aXJzdF9jcHUsIE1TUl9DT1JFX0MxX1JFU0lERU5DWSk7CisJCWlmICghZ2V0X21zcihmaXJzdF9j cHUsIE1TUl9DT1JFX0MxX1JFU0lERU5DWSwgJmMxX2JlZm9yZSkpCisJCQl0aGlzLT5oYXNfYzFf cmVzID0gMDsKIAlpZiAodGhpcy0+aGFzX2MzX3JlcykKLQkJYzNfYmVmb3JlICAgID0gZ2V0X21z cihmaXJzdF9jcHUsIE1TUl9DT1JFX0MzX1JFU0lERU5DWSk7Ci0JYzZfYmVmb3JlICAgID0gZ2V0 X21zcihmaXJzdF9jcHUsIE1TUl9DT1JFX0M2X1JFU0lERU5DWSk7CisJCWlmICghZ2V0X21zcihm aXJzdF9jcHUsIE1TUl9DT1JFX0MzX1JFU0lERU5DWSwgJmMzX2JlZm9yZSkpCisJCQl0aGlzLT5o YXNfYzNfcmVzID0gMDsKKwlpZiAodGhpcy0+aGFzX2M2X3JlcykKKwkJaWYgKCFnZXRfbXNyKGZp cnN0X2NwdSwgTVNSX0NPUkVfQzZfUkVTSURFTkNZLCAmYzZfYmVmb3JlKSkKKwkJCXRoaXMtPmhh c19jNl9yZXMgPSAwOwogCWlmICh0aGlzLT5oYXNfYzdfcmVzKQotCQljN19iZWZvcmUgICAgPSBn ZXRfbXNyKGZpcnN0X2NwdSwgTVNSX0NPUkVfQzdfUkVTSURFTkNZKTsKLQl0c2NfYmVmb3JlICAg PSBnZXRfbXNyKGZpcnN0X2NwdSwgTVNSX1RTQyk7CisJCWlmICghZ2V0X21zcihmaXJzdF9jcHUs IE1TUl9DT1JFX0M3X1JFU0lERU5DWSwgJmM3X2JlZm9yZSkpCisJCQl0aGlzLT5oYXNfYzdfcmVz ID0gMDsKKwlnZXRfbXNyKGZpcnN0X2NwdSwgTVNSX1RTQywgJnRzY19iZWZvcmUpOwogCiAJaWYg KHRoaXMtPmhhc19jMV9yZXMpCiAJCWluc2VydF9jc3RhdGUoImNvcmUgYzEiLCAiQzEgKGNjMSki LCAwLCBjMV9iZWZvcmUsIDEpOwpAQCAtMTk2LDEzICsyMDEsMTggQEAgdm9pZCBuaG1fY29yZTo6 bWVhc3VyZW1lbnRfZW5kKHZvaWQpCiAJZG91YmxlIHJhdGlvOwogCiAJaWYgKHRoaXMtPmhhc19j MV9yZXMpCi0JCWMxX2FmdGVyID0gZ2V0X21zcihmaXJzdF9jcHUsIE1TUl9DT1JFX0MxX1JFU0lE RU5DWSk7CisJCWlmICghZ2V0X21zcihmaXJzdF9jcHUsIE1TUl9DT1JFX0MxX1JFU0lERU5DWSwg JmMxX2FmdGVyKSkKKwkJCXRoaXMtPmhhc19jMV9yZXMgPSAwOwogCWlmICh0aGlzLT5oYXNfYzNf cmVzKQotCQljM19hZnRlciAgICA9IGdldF9tc3IoZmlyc3RfY3B1LCBNU1JfQ09SRV9DM19SRVNJ REVOQ1kpOwotCWM2X2FmdGVyICAgID0gZ2V0X21zcihmaXJzdF9jcHUsIE1TUl9DT1JFX0M2X1JF U0lERU5DWSk7CisJCWlmICghZ2V0X21zcihmaXJzdF9jcHUsIE1TUl9DT1JFX0MzX1JFU0lERU5D WSwgJmMzX2FmdGVyKSkKKwkJCXRoaXMtPmhhc19jM19yZXMgPSAwOworCWlmICh0aGlzLT5oYXNf YzZfcmVzKQorCQlpZiAoIWdldF9tc3IoZmlyc3RfY3B1LCBNU1JfQ09SRV9DNl9SRVNJREVOQ1ks ICZjNl9hZnRlcikpCisJCQl0aGlzLT5oYXNfYzZfcmVzID0gMDsKIAlpZiAodGhpcy0+aGFzX2M3 X3JlcykKLQkJYzdfYWZ0ZXIgICAgPSBnZXRfbXNyKGZpcnN0X2NwdSwgTVNSX0NPUkVfQzdfUkVT SURFTkNZKTsKLQl0c2NfYWZ0ZXIgICA9IGdldF9tc3IoZmlyc3RfY3B1LCBNU1JfVFNDKTsKKwkJ aWYgKCFnZXRfbXNyKGZpcnN0X2NwdSwgTVNSX0NPUkVfQzdfUkVTSURFTkNZLCAmYzdfYWZ0ZXIp KQorCQkJdGhpcy0+aGFzX2M3X3JlcyA9IDA7CisJZ2V0X21zcihmaXJzdF9jcHUsIE1TUl9UU0Ms ICZ0c2NfYWZ0ZXIpOwogCiAJaWYgKHRoaXMtPmhhc19jMV9yZXMpCiAJCWZpbmFsaXplX2NzdGF0 ZSgiY29yZSBjMSIsIDAsIGMxX2FmdGVyLCAxKTsKQEAgLTM2MCwyNyArMzcwLDMxIEBAIHZvaWQg bmhtX3BhY2thZ2U6Om1lYXN1cmVtZW50X3N0YXJ0KHZvaWQpCiAJbGFzdF9zdGFtcCA9IDA7CiAK IAlpZiAodGhpcy0+aGFzX2MyYzZfcmVzKQotCQljMl9iZWZvcmUgICAgPSBnZXRfbXNyKG51bWJl ciwgTVNSX1BLR19DMl9SRVNJREVOQ1kpOworCQlpZiAoIWdldF9tc3IobnVtYmVyLCBNU1JfUEtH X0MyX1JFU0lERU5DWSwgJmMyX2JlZm9yZSkpCisJCQl0aGlzLT5oYXNfYzJjNl9yZXMgPSAwOwog CiAJaWYgKHRoaXMtPmhhc19jM19yZXMpCi0JCWMzX2JlZm9yZSAgICA9IGdldF9tc3IobnVtYmVy LCBNU1JfUEtHX0MzX1JFU0lERU5DWSk7CisJCWlmICghZ2V0X21zcihudW1iZXIsIE1TUl9QS0df QzNfUkVTSURFTkNZLCAmYzNfYmVmb3JlKSkKKwkJCXRoaXMtPmhhc19jM19yZXMgPSAwOwogCiAJ LyoKIAkgKiBIYWNrIGZvciBCcmFzd2VsbCB3aGVyZSBDNyBNU1IgaXMgYWN0dWFsbHkgQlNXIEM2 CiAJICovCiAJaWYgKHRoaXMtPmhhc19jNmNfcmVzKQotCQljNl9iZWZvcmUgICAgPSBnZXRfbXNy KG51bWJlciwgTVNSX1BLR19DN19SRVNJREVOQ1kpOworCQlnZXRfbXNyKG51bWJlciwgTVNSX1BL R19DN19SRVNJREVOQ1ksICZjNl9iZWZvcmUpOwogCWVsc2UKLQkJYzZfYmVmb3JlICAgID0gZ2V0 X21zcihudW1iZXIsIE1TUl9QS0dfQzZfUkVTSURFTkNZKTsKKwkJZ2V0X21zcihudW1iZXIsIE1T Ul9QS0dfQzZfUkVTSURFTkNZLCAmYzZfYmVmb3JlKTsKIAogCWlmICh0aGlzLT5oYXNfYzdfcmVz KQotCQljN19iZWZvcmUgICAgPSBnZXRfbXNyKG51bWJlciwgTVNSX1BLR19DN19SRVNJREVOQ1kp OworCQlpZiAoIWdldF9tc3IobnVtYmVyLCBNU1JfUEtHX0M3X1JFU0lERU5DWSwgJmM3X2JlZm9y ZSkpCisJCQl0aGlzLT5oYXNfYzdfcmVzID0gMDsKIAlpZiAodGhpcy0+aGFzX2M4YzljMTBfcmVz KSB7Ci0JCWM4X2JlZm9yZSAgICA9IGdldF9tc3IobnVtYmVyLCBNU1JfUEtHX0M4X1JFU0lERU5D WSk7Ci0JCWM5X2JlZm9yZSAgICA9IGdldF9tc3IobnVtYmVyLCBNU1JfUEtHX0M5X1JFU0lERU5D WSk7Ci0JCWMxMF9iZWZvcmUgICAgPSBnZXRfbXNyKG51bWJlciwgTVNSX1BLR19DMTBfUkVTSURF TkNZKTsKKwkJaWYgKCFnZXRfbXNyKG51bWJlciwgTVNSX1BLR19DOF9SRVNJREVOQ1ksICZjOF9i ZWZvcmUpIHx8CisJCSAgICAhZ2V0X21zcihudW1iZXIsIE1TUl9QS0dfQzlfUkVTSURFTkNZLCAm YzlfYmVmb3JlKSB8fAorCQkgICAgIWdldF9tc3IobnVtYmVyLCBNU1JfUEtHX0MxMF9SRVNJREVO Q1ksICZjMTBfYmVmb3JlKSkKKwkJCXRoaXMtPmhhc19jOGM5YzEwX3JlcyA9IDA7CiAJfQotCXRz Y19iZWZvcmUgICA9IGdldF9tc3IoZmlyc3RfY3B1LCBNU1JfVFNDKTsKKwlnZXRfbXNyKGZpcnN0 X2NwdSwgTVNSX1RTQywgJnRzY19iZWZvcmUpOwogCiAJaWYgKHRoaXMtPmhhc19jMmM2X3JlcykK IAkJaW5zZXJ0X2NzdGF0ZSgicGtnIGMyIiwgIkMyIChwYzIpIiwgMCwgYzJfYmVmb3JlLCAxKTsK QEAgLTQwOSwyNCArNDIzLDI4IEBAIHZvaWQgbmhtX3BhY2thZ2U6Om1lYXN1cmVtZW50X2VuZCh2 b2lkKQogCiAKIAlpZiAodGhpcy0+aGFzX2MyYzZfcmVzKQotCQljMl9hZnRlciAgICA9IGdldF9t c3IobnVtYmVyLCBNU1JfUEtHX0MyX1JFU0lERU5DWSk7CisJCWlmICghZ2V0X21zcihudW1iZXIs IE1TUl9QS0dfQzJfUkVTSURFTkNZLCAmYzJfYWZ0ZXIpKQorCQkJdGhpcy0+aGFzX2MyYzZfcmVz ID0gMDsKIAogCWlmICh0aGlzLT5oYXNfYzNfcmVzKQotCQljM19hZnRlciAgICA9IGdldF9tc3Io bnVtYmVyLCBNU1JfUEtHX0MzX1JFU0lERU5DWSk7CisJCWlmICghZ2V0X21zcihudW1iZXIsIE1T Ul9QS0dfQzNfUkVTSURFTkNZLCAmYzNfYWZ0ZXIpKQorCQkJdGhpcy0+aGFzX2MzX3JlcyA9IDA7 CiAKIAlpZiAodGhpcy0+aGFzX2M2Y19yZXMpCi0JCWM2X2FmdGVyICAgID0gZ2V0X21zcihudW1i ZXIsIE1TUl9QS0dfQzdfUkVTSURFTkNZKTsKKwkJZ2V0X21zcihudW1iZXIsIE1TUl9QS0dfQzdf UkVTSURFTkNZLCAmYzZfYWZ0ZXIpOwogCWVsc2UKLQkJYzZfYWZ0ZXIgICAgPSBnZXRfbXNyKG51 bWJlciwgTVNSX1BLR19DNl9SRVNJREVOQ1kpOworCQlnZXRfbXNyKG51bWJlciwgTVNSX1BLR19D Nl9SRVNJREVOQ1ksICZjNl9hZnRlcik7CiAKIAlpZiAodGhpcy0+aGFzX2M3X3JlcykKLQkJYzdf YWZ0ZXIgICAgPSBnZXRfbXNyKG51bWJlciwgTVNSX1BLR19DN19SRVNJREVOQ1kpOwotCWlmICho YXNfYzhjOWMxMF9yZXMpIHsKLQkJYzhfYWZ0ZXIgPSBnZXRfbXNyKG51bWJlciwgTVNSX1BLR19D OF9SRVNJREVOQ1kpOwotCQljOV9hZnRlciA9IGdldF9tc3IobnVtYmVyLCBNU1JfUEtHX0M5X1JF U0lERU5DWSk7Ci0JCWMxMF9hZnRlciA9IGdldF9tc3IobnVtYmVyLCBNU1JfUEtHX0MxMF9SRVNJ REVOQ1kpOworCQlpZiAoIWdldF9tc3IobnVtYmVyLCBNU1JfUEtHX0M3X1JFU0lERU5DWSwgJmM3 X2FmdGVyKSkKKwkJCXRoaXMtPmhhc19jN19yZXMgPSAwOworCWlmICh0aGlzLT5oYXNfYzhjOWMx MF9yZXMpIHsKKwkJaWYgKCFnZXRfbXNyKG51bWJlciwgTVNSX1BLR19DOF9SRVNJREVOQ1ksICZj OF9hZnRlcikgfHwKKwkJICAgICFnZXRfbXNyKG51bWJlciwgTVNSX1BLR19DOV9SRVNJREVOQ1ks ICZjOV9hZnRlcikgfHwKKwkJICAgICFnZXRfbXNyKG51bWJlciwgTVNSX1BLR19DMTBfUkVTSURF TkNZLCAmYzEwX2FmdGVyKSkKKwkJCXRoaXMtPmhhc19jOGM5YzEwX3JlcyA9IDA7CiAJfQotCXRz Y19hZnRlciAgID0gZ2V0X21zcihmaXJzdF9jcHUsIE1TUl9UU0MpOworCWdldF9tc3IoZmlyc3Rf Y3B1LCBNU1JfVFNDLCAmdHNjX2FmdGVyKTsKIAogCWdldHRpbWVvZmRheSgmc3RhbXBfYWZ0ZXIs IE5VTEwpOwogCkBAIC00NDEsNyArNDU5LDcgQEAgdm9pZCBuaG1fcGFja2FnZTo6bWVhc3VyZW1l bnRfZW5kKHZvaWQpCiAJZmluYWxpemVfY3N0YXRlKCJwa2cgYzYiLCAwLCBjNl9hZnRlciwgMSk7 CiAJaWYgKHRoaXMtPmhhc19jN19yZXMpCiAJCWZpbmFsaXplX2NzdGF0ZSgicGtnIGM3IiwgMCwg YzdfYWZ0ZXIsIDEpOwotCWlmIChoYXNfYzhjOWMxMF9yZXMpIHsKKwlpZiAodGhpcy0+aGFzX2M4 YzljMTBfcmVzKSB7CiAJCWZpbmFsaXplX2NzdGF0ZSgicGtnIGM4IiwgMCwgYzhfYWZ0ZXIsIDEp OwogCQlmaW5hbGl6ZV9jc3RhdGUoInBrZyBjOSIsIDAsIGM5X2FmdGVyLCAxKTsKIAkJZmluYWxp emVfY3N0YXRlKCJwa2cgYzEwIiwgMCwgYzEwX2FmdGVyLCAxKTsKQEAgLTQ5Nyw5ICs1MTUsOSBA QCB2b2lkIG5obV9jcHU6Om1lYXN1cmVtZW50X3N0YXJ0KHZvaWQpCiAKIAlsYXN0X3N0YW1wID0g MDsKIAotCWFwZXJmX2JlZm9yZSA9IGdldF9tc3IobnVtYmVyLCBNU1JfQVBFUkYpOwotCW1wZXJm X2JlZm9yZSA9IGdldF9tc3IobnVtYmVyLCBNU1JfTVBFUkYpOwotCXRzY19iZWZvcmUgICA9IGdl dF9tc3IobnVtYmVyLCBNU1JfVFNDKTsKKwlnZXRfbXNyKG51bWJlciwgTVNSX0FQRVJGLCAmYXBl cmZfYmVmb3JlKTsKKwlnZXRfbXNyKG51bWJlciwgTVNSX01QRVJGLCAmbXBlcmZfYmVmb3JlKTsK KwlnZXRfbXNyKG51bWJlciwgTVNSX1RTQywgJnRzY19iZWZvcmUpOwogCiAJaW5zZXJ0X2NzdGF0 ZSgiYWN0aXZlIiwgXygiQzAgYWN0aXZlIiksIDAsIGFwZXJmX2JlZm9yZSwgMSk7CiAKQEAgLTUy Nyw5ICs1NDUsOSBAQCB2b2lkIG5obV9jcHU6Om1lYXN1cmVtZW50X2VuZCh2b2lkKQogCWRvdWJs ZSByYXRpbzsKIAl1bnNpZ25lZCBpbnQgaTsKIAotCWFwZXJmX2FmdGVyID0gZ2V0X21zcihudW1i ZXIsIE1TUl9BUEVSRik7Ci0JbXBlcmZfYWZ0ZXIgPSBnZXRfbXNyKG51bWJlciwgTVNSX01QRVJG KTsKLQl0c2NfYWZ0ZXIgICA9IGdldF9tc3IobnVtYmVyLCBNU1JfVFNDKTsKKwlnZXRfbXNyKG51 bWJlciwgTVNSX0FQRVJGLCAmYXBlcmZfYWZ0ZXIpOworCWdldF9tc3IobnVtYmVyLCBNU1JfTVBF UkYsICZtcGVyZl9hZnRlcik7CisJZ2V0X21zcihudW1iZXIsIE1TUl9UU0MsICZ0c2NfYWZ0ZXIp OwogCiAKIApAQCAtNTgyLDcgKzYwMCw4IEBAIGNoYXIgKiBuaG1fY3B1OjpmaWxsX3BzdGF0ZV9s aW5lKGludCBsaW5lX25yLCBjaGFyICpidWZmZXIpCiAKIAlpZiAobGluZV9uciA9PSBMRVZFTF9D MCkgewogCQlkb3VibGUgRjsKLQkJRiA9IDEuMCAqICh0c2NfYWZ0ZXIgLSB0c2NfYmVmb3JlKSAq IChhcGVyZl9hZnRlciAtIGFwZXJmX2JlZm9yZSkgLyAobXBlcmZfYWZ0ZXIgLSBtcGVyZl9iZWZv cmUpIC8gdGltZV9mYWN0b3IgKiAxMDAwOworCQlGID0gbXBlcmZfYWZ0ZXIgLSBtcGVyZl9iZWZv cmU7CisJCUYgPSAxLjAgKiAodHNjX2FmdGVyIC0gdHNjX2JlZm9yZSkgKiAoYXBlcmZfYWZ0ZXIg LSBhcGVyZl9iZWZvcmUpIC8gKEYgPyBGIDogMSkgLyB0aW1lX2ZhY3RvciAqIDEwMDA7CiAJCWh6 X3RvX2h1bWFuKEYsIGJ1ZmZlciwgMSk7CiAJCXJldHVybiBidWZmZXI7CiAJfQpkaWZmIC0tZ2l0 IGEvc3JjL2NwdS9pbnRlbF9jcHVzLmggYi9zcmMvY3B1L2ludGVsX2NwdXMuaAppbmRleCAwMzMx MDY5Li5lOTA5MDE4IDEwMDY0NAotLS0gYS9zcmMvY3B1L2ludGVsX2NwdXMuaAorKysgYi9zcmMv Y3B1L2ludGVsX2NwdXMuaApAQCAtMTAwLDYgKzEwMCw3IEBAIHByaXZhdGU6CiAJdWludDY0X3QJ dG90YWxfc3RhbXA7CiBwdWJsaWM6CiAJaW50CQloYXNfYzFfcmVzOworCWludAkJaGFzX2M2X3Jl cyA9IDE7CiAJaW50CQloYXNfYzdfcmVzOwogCWludAkJaGFzX2MzX3JlczsKIAluaG1fY29yZShp bnQgbW9kZWwpOwotLSAKMi4xLjAKCg== --===============7465126490393537962==--