From owner-freebsd-bugs@FreeBSD.ORG Mon Jan 3 04:00:22 2011 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A18001065675 for ; Mon, 3 Jan 2011 04:00:22 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 2C7DB8FC13 for ; Mon, 3 Jan 2011 04:00:21 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id p0340LEt046641 for ; Mon, 3 Jan 2011 04:00:21 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id p0340LIF046615; Mon, 3 Jan 2011 04:00:21 GMT (envelope-from gnats) Date: Mon, 3 Jan 2011 04:00:21 GMT Message-Id: <201101030400.p0340LIF046615@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: "Pedro F. Giffuni" Cc: Subject: Re: kern/153584: Performance fix and cleanups for BSD licensed ext2fs X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: "Pedro F. Giffuni" List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jan 2011 04:00:22 -0000 The following reply was made to PR kern/153584; it has been noted by GNATS. From: "Pedro F. Giffuni" To: bug-followup@FreeBSD.org Cc: Doug Barton Subject: Re: kern/153584: Performance fix and cleanups for BSD licensed ext2fs Date: Sun, 2 Jan 2011 19:50:08 -0800 (PST) --0-493483054-1294026608=:21492 Content-Type: text/plain; charset=us-ascii A small update ... This includes a small patch for the #ifdef KDB case in ext2_subr.c. Thanks to Doug Barton for reporting the issue. --0-493483054-1294026608=:21492 Content-Type: text/plain; name="patch-ext2fs.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="patch-ext2fs.txt" ZGlmZiAtcnUgZXh0MmZzLm9yaWcvZXh0Ml9hbGxvYy5jIGV4dDJmcy9leHQy X2FsbG9jLmMKLS0tIGV4dDJmcy5vcmlnL2V4dDJfYWxsb2MuYwkyMDEwLTEy LTI5IDE1OjE0OjA2LjAwMDAwMDAwMCArMDAwMAorKysgZXh0MmZzL2V4dDJf YWxsb2MuYwkyMDEwLTEyLTMxIDEwOjA1OjA5LjAwMDAwMDAwMCArMDAwMApA QCAtNTksNiArNTksMTAgQEAKIAkJCQkJCWludCkpOwogc3RhdGljIGRhZGRy X3QJZXh0Ml9ub2RlYWxsb2NjZyhzdHJ1Y3QgaW5vZGUgKiwgaW50LCBkYWRk cl90LCBpbnQpOwogc3RhdGljIGRhZGRyX3QgIGV4dDJfbWFwc2VhcmNoKHN0 cnVjdCBtX2V4dDJmcyAqLCBjaGFyICosIGRhZGRyX3QpOworI2lmZGVmIEZB TkNZX1JFQUxMT0MKK3N0YXRpYyBpbnQJZXh0Ml9yZWFsbG9jYmxrcyhzdHJ1 Y3Qgdm9wX3JlYWxsb2NibGtzX2FyZ3MgKik7CisjZW5kaWYKKwogLyoKICAq IEFsbG9jYXRlIGEgYmxvY2sgaW4gdGhlIGZpbGUgc3lzdGVtLgogICoKQEAg LTc2LDcgKzgwLDYgQEAKICAqICAgMikgcXVhZHJhZGljYWxseSByZWhhc2gg aW50byBvdGhlciBjeWxpbmRlciBncm91cHMsIHVudGlsIGFuCiAgKiAgICAg ICAgYXZhaWxhYmxlIGJsb2NrIGlzIGxvY2F0ZWQuCiAgKi8KLQogaW50CiBl eHQyX2FsbG9jKGlwLCBsYm4sIGJwcmVmLCBzaXplLCBjcmVkLCBibnApCiAJ c3RydWN0IGlub2RlICppcDsKQEAgLTExNiw2ICsxMTksMTAgQEAKICAgICAg ICAgYm5vID0gKGRhZGRyX3QpZXh0Ml9oYXNoYWxsb2MoaXAsIGNnLCBicHJl ZiwgZnMtPmUyZnNfYnNpemUsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZXh0Ml9hbGxvY2NnKTsKICAgICAg ICAgaWYgKGJubyA+IDApIHsKKwkJLyogc2V0IG5leHRfYWxsb2MgZmllbGRz IGFzIGRvbmUgaW4gYmxvY2tfZ2V0YmxrICovCisJCWlwLT5pX25leHRfYWxs b2NfYmxvY2sgPSBsYm47CisJCWlwLT5pX25leHRfYWxsb2NfZ29hbCA9IGJu bzsKKwogICAgICAgICAgICAgICAgIGlwLT5pX2Jsb2NrcyArPSBidG9kYihm cy0+ZTJmc19ic2l6ZSk7CiAgICAgICAgICAgICAgICAgaXAtPmlfZmxhZyB8 PSBJTl9DSEFOR0UgfCBJTl9VUERBVEU7CiAgICAgICAgICAgICAgICAgKmJu cCA9IGJubzsKQEAgLTE0NCw5ICsxNTEsMTMgQEAKICAqLwogCiAjaWZkZWYg RkFOQ1lfUkVBTExPQwotI2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4KK1NZU0NU TF9OT0RFKF92ZnMsIE9JRF9BVVRPLCBleHQyLCBDVExGTEFHX1JXLCAwLCAi RVhUMkZTIGZpbGVzeXN0ZW0iKTsKKwogc3RhdGljIGludCBkb2FzeW5jZnJl ZSA9IDE7CitTWVNDVExfSU5UKF92ZnNfZXh0MiwgT0lEX0FVVE8sIGRvYXN5 bmNmcmVlLCBDVExGTEFHX1JXLCAmZG9hc3luY2ZyZWUsIDAsICIiKTsKKwog c3RhdGljIGludCBkb3JlYWxsb2NibGtzID0gMTsKK1NZU0NUTF9JTlQoX3Zm c19leHQycywgT0lEX0FVVE8sIGRvcmVhbGxvY2Jsa3MsIENUTEZMQUdfUlcs ICZkb3JlYWxsb2NibGtzLCAwLCAiIik7CiAKICNpZmRlZglPUFRfREVCVUcK IFNZU0NUTF9JTlQoX2RlYnVnLCAxNCwgZG9hc3luY2ZyZWUsIENUTEZMQUdf UlcsICZkb2FzeW5jZnJlZSwgMCwgIiIpOwpAQCAtMTczLDcgKzE4NCw3IEBA CiAJc3RydWN0IGV4dDJtb3VudCAqdW1wOwogCXN0cnVjdCBjbHVzdGVyX3Nh dmUgKmJ1Zmxpc3Q7CiAJc3RydWN0IGluZGlyIHN0YXJ0X2FwW05JQUREUiAr IDFdLCBlbmRfYXBbTklBRERSICsgMV0sICppZHA7Ci0JaW50MzJfdCBzdGFy dF9sYm4sIGVuZF9sYm4sIHNvZmYsIG5ld2JsaywgYmxrbm8gPTA7CisJaW50 MzJfdCBzdGFydF9sYm4sIGVuZF9sYm4sIHNvZmYsIG5ld2JsaywgYmxrbm87 CiAJaW50IGksIGxlbiwgc3RhcnRfbHZsLCBlbmRfbHZsLCBwcmVmLCBzc2l6 ZTsKIAogCXZwID0gYXAtPmFfdnA7CkBAIC0yMjMsNyArMjM0LDcgQEAKIAkg KiBGaW5kIHRoZSBwcmVmZXJyZWQgbG9jYXRpb24gZm9yIHRoZSBjbHVzdGVy LgogCSAqLwogCUVYVDJfTE9DSyh1bXApOyAKLQlwcmVmID0gZXh0Ml9ibGtw cmVmKGlwLCBzdGFydF9sYm4sIHNvZmYsIHNiYXAsIGJsa25vKTsKKwlwcmVm ID0gZXh0Ml9ibGtwcmVmKGlwLCBzdGFydF9sYm4sIHNvZmYsIHNiYXAsIGJs a25vPTApOwogCS8qCiAJICogSWYgdGhlIGJsb2NrIHJhbmdlIHNwYW5zIHR3 byBibG9jayBtYXBzLCBnZXQgdGhlIHNlY29uZCBtYXAuCiAJICovCkBAIC02 MjUsNyArNjM2LDcgQEAKIAlzdHJ1Y3QgbV9leHQyZnMgKmZzOwogCXN0cnVj dCBidWYgKmJwOwogCXN0cnVjdCBleHQybW91bnQgKnVtcDsKLQlpbnQgZXJy b3IsIGJubywgc3RhcnQsIGVuZCwgbG9jOworCWludCBlcnJvciwgYm5vOwog CWNoYXIgKmJicDsKIAkvKiBYWFggb25kaXNrMzIgKi8KIAlmcyA9IGlwLT5p X2UyZnM7CkBAIC02NTgsMjYgKzY2OSw3IEBACiAJLyoKIAkgKiBubyBibG9j a3MgaW4gdGhlIHJlcXVlc3RlZCBjeWxpbmRlciwgc28gdGFrZSBuZXh0CiAJ ICogYXZhaWxhYmxlIG9uZSBpbiB0aGlzIGN5bGluZGVyIGdyb3VwLgotCSAq IGZpcnN0IHRyeSB0byBnZXQgOCBjb250aWdvdXMgYmxvY2tzLCB0aGVuIGZh bGwgYmFjayB0byBhIHNpbmdsZQotCSAqIGJsb2NrLgogCSAqLwotCWlmIChi cHJlZikKLQkJc3RhcnQgPSBkdG9nZChmcywgYnByZWYpIC8gTkJCWTsKLQll bHNlCi0JCXN0YXJ0ID0gMDsKLQllbmQgPSBob3dtYW55KGZzLT5lMmZzLT5l MmZzX2ZwZywgTkJCWSkgLSBzdGFydDsKLQlmb3IgKGxvYyA9IHN0YXJ0OyBs b2MgPCBlbmQ7IGxvYysrKSB7Ci0JCWlmIChiYnBbbG9jXSA9PSAwKSB7Ci0J CQlibm8gPSBsb2MgKiBOQkJZOwotCQkJZ290byBnb3RpdDsKLQkJfQotCX0K LQlmb3IgKGxvYyA9IDA7IGxvYyA8IHN0YXJ0OyBsb2MrKykgewotCQlpZiAo YmJwW2xvY10gPT0gMCkgewotCQkJYm5vID0gbG9jICogTkJCWTsKLQkJCWdv dG8gZ290aXQ7Ci0JCX0KLQl9CiAKIAlibm8gPSBleHQyX21hcHNlYXJjaChm cywgYmJwLCBicHJlZik7CiAJaWYgKGJubyA8IDApewpAQCAtNzAzLDYgKzY5 NSwyNiBAQAogCXJldHVybiAoY2cgKiBmcy0+ZTJmcy0+ZTJmc19mcGcgKyBm cy0+ZTJmcy0+ZTJmc19maXJzdF9kYmxvY2sgKyBibm8pOwogfQogCisjaWZk ZWYgRkFOQ1lfUkVBTExPQworLyoKKyAqIERldGVybWluZSB3aGV0aGVyIGEg Y2x1c3RlciBjYW4gYmUgYWxsb2NhdGVkLgorICoKKyAqIFdlIGRvIG5vdCBj dXJyZW50bHkgY2hlY2sgZm9yIG9wdGltYWwgcm90YXRpb25hbCBsYXlvdXQg aWYgdGhlcmUKKyAqIGFyZSBtdWx0aXBsZSBjaG9pY2VzIGluIHRoZSBzYW1l IGN5bGluZGVyIGdyb3VwLiBJbnN0ZWFkIHdlIGp1c3QKKyAqIHRha2UgdGhl IGZpcnN0IG9uZSB0aGF0IHdlIGZpbmQgZm9sbG93aW5nIGJwcmVmLgorICov CitzdGF0aWMgZGFkZHJfdAorZXh0MmZzX2NsdXN0ZXJhbGxvYyhpcCwgY2cs IGJwcmVmLCBsZW4sIHVudXNlZCkKKwlzdHJ1Y3QgaW5vZGUgKmlwOworCXVf aW50IGNnOworCXVmczJfZGFkZHJfdCBicHJlZjsKKwlpbnQgbGVuOworCWlu dCB1bnVzZWQ7Cit7CisJCS8qIE5PVCBJTVBMRU1FTlRFRCAqLworfQorI2Vu ZGlmCisKIC8qCiAgKiBEZXRlcm1pbmUgd2hldGhlciBhbiBpbm9kZSBjYW4g YmUgYWxsb2NhdGVkLgogICoKZGlmZiAtcnUgZXh0MmZzLm9yaWcvZXh0Ml9k aW5vZGUuaCBleHQyZnMvZXh0Ml9kaW5vZGUuaAotLS0gZXh0MmZzLm9yaWcv ZXh0Ml9kaW5vZGUuaAkyMDEwLTEyLTI5IDE1OjE0OjIzLjAwMDAwMDAwMCAr MDAwMAorKysgZXh0MmZzL2V4dDJfZGlub2RlLmgJMjAxMC0xMi0zMCAyMzox ODoyMS4wMDAwMDAwMDAgKzAwMDAKQEAgLTMyLDYgKzMyLDE4IEBACiAjZGVm aW5lIGUyZGlfc2l6ZV9oaWdoCWUyZGlfZGFjbAogCiAvKgorICogU3BlY2lh bCBpbm9kZSBudW1iZXJzCisgKiBUaGUgcm9vdCBpbm9kZSBpcyB0aGUgcm9v dCBvZiB0aGUgZmlsZSBzeXN0ZW0uICBJbm9kZSAwIGNhbid0IGJlIHVzZWQg Zm9yCisgKiBub3JtYWwgcHVycG9zZXMgYW5kIGJhZCBibG9ja3MgYXJlIG5v cm1hbGx5IGxpbmtlZCB0byBpbm9kZSAxLCB0aHVzCisgKiB0aGUgcm9vdCBp bm9kZSBpcyAyLgorICogSW5vZGUgMyB0byAxMCBhcmUgcmVzZXJ2ZWQgaW4g ZXh0MmZzLgorICovCisjZGVmaW5lIEVYVDJfQkFEX0lOTwkJIDEJLyogQmFk IGJsb2NrcyBpbm9kZSAqLworI2RlZmluZSBFWFQyX1JPT1RfSU5PCQkgMgkv KiBSb290IGlub2RlICovCisjZGVmaW5lIEVYVDJfQk9PVF9MT0FERVJfSU5P CSA1CS8qIEJvb3QgbG9hZGVyIGlub2RlICovCisjZGVmaW5lIEVYVDJfVU5E RUxfRElSX0lOTwkgNgkvKiBVbmRlbGV0ZSBkaXJlY3RvcnkgaW5vZGUgKi8K KworLyoKICAqIElub2RlIGZsYWdzCiAgKiBUaGUgY3VycmVudCBpbXBsZW1l bnRhdGlvbiB1c2VzIG9ubHkgRVhUMl9JTU1VVEFCTEUgYW5kIEVYVDJfQVBQ RU5EIGZsYWdzCiAgKi8KQEAgLTc0LDUgKzg2LDUgQEAKIAl1X2ludDMyX3QJ ZTJkaV9saW51eF9yZXNlcnZlZDM7IC8qIDEyNCAqLwogfTsKIAotI2VuZGlm IC8qIF9GU19FWFQyRlNfRVhUMl9ESU5PREVfSF8gKi8KKyNlbmRpZiAvKiAh X0ZTX0VYVDJGU19FWFQyX0RJTk9ERV9IXyAqLwogCmRpZmYgLXJ1IGV4dDJm cy5vcmlnL2V4dDJfbG9va3VwLmMgZXh0MmZzL2V4dDJfbG9va3VwLmMKLS0t IGV4dDJmcy5vcmlnL2V4dDJfbG9va3VwLmMJMjAxMC0xMi0yOSAxNToxNDo1 MS4wMDAwMDAwMDAgKzAwMDAKKysrIGV4dDJmcy9leHQyX2xvb2t1cC5jCTIw MTAtMTItMzAgMjM6MTY6MDYuMDAwMDAwMDAwICswMDAwCkBAIC0zNDcsNiAr MzQ3LDcgQEAKIAkJc2xvdG5lZWRlZCA9IChzaXplb2Yoc3RydWN0IGRpcmVj dCkgLSBNQVhOQU1MRU4gKwogCQkJY25wLT5jbl9uYW1lbGVuICsgMykgJn4g MzsgKi8KIAl9CisJYm1hc2sgPSBWRlNUT0VYVDIodmRwLT52X21vdW50KS0+ dW1fbW91bnRwLT5tbnRfc3RhdC5mX2lvc2l6ZSAtIDE7CiAKIAkvKgogCSAq IElmIHRoZXJlIGlzIGNhY2hlZCBpbmZvcm1hdGlvbiBvbiBhIHByZXZpb3Vz IHNlYXJjaCBvZgpAQCAtMzU5LDcgKzM2MCw2IEBACiAJICogcHJvZmlsaW5n IHRpbWUgYW5kIGhlbmNlIGhhcyBiZWVuIHJlbW92ZWQgaW4gdGhlIGludGVy ZXN0CiAJICogb2Ygc2ltcGxpY2l0eS4KIAkgKi8KLQlibWFzayA9IFZGU1RP RVhUMih2ZHAtPnZfbW91bnQpLT51bV9tb3VudHAtPm1udF9zdGF0LmZfaW9z aXplIC0gMTsKIAlpZiAobmFtZWlvcCAhPSBMT09LVVAgfHwgaV9kaXJvZmYg PT0gMCB8fAogCSAgICBpX2Rpcm9mZiA+IGRwLT5pX3NpemUpIHsKIAkJZW50 cnlvZmZzZXRpbmJsb2NrID0gMDsKZGlmZiAtcnUgZXh0MmZzLm9yaWcvZXh0 Ml9zdWJyLmMgZXh0MmZzL2V4dDJfc3Vici5jCi0tLSBleHQyZnMub3JpZy9l eHQyX3N1YnIuYwkyMDEwLTEyLTI5IDE1OjE1OjA2LjAwMDAwMDAwMCArMDAw MAorKysgZXh0MmZzL2V4dDJfc3Vici5jCTIwMTEtMDEtMDIgMjI6MzY6MDUu MDAwMDAwMDAwICswMDAwCkBAIC0xMDUsNyArMTA1LDcgQEAKIAlmb3IgKGVw ID0gYnVmOyBlcCA8IGVicDsgZXArKykgewogCQlpZiAoZXAgPT0gYnAgfHwg KGVwLT5iX2ZsYWdzICYgQl9JTlZBTCkpCiAJCQljb250aW51ZTsKLQkJdnAg PSBpcC0+aV9kZXZ2cDsKKwkJdnAgPSBpcC0+aV91bXAtPnVtX2RldnZwOwog CQkvKiBsb29rIGZvciBvdmVybGFwICovCiAJCWlmIChlcC0+Yl9iY291bnQg PT0gMCB8fCBlcC0+Yl9ibGtubyA+IGxhc3QgfHwKIAkJICAgIGVwLT5iX2Js a25vICsgYnRvZGIoZXAtPmJfYmNvdW50KSA8PSBzdGFydCkKZGlmZiAtcnUg ZXh0MmZzLm9yaWcvZXh0Ml92ZnNvcHMuYyBleHQyZnMvZXh0Ml92ZnNvcHMu YwotLS0gZXh0MmZzLm9yaWcvZXh0Ml92ZnNvcHMuYwkyMDEwLTEyLTI5IDE1 OjE1OjExLjAwMDAwMDAwMCArMDAwMAorKysgZXh0MmZzL2V4dDJfdmZzb3Bz LmMJMjAxMC0xMi0zMSAxMDowMToyOC4wMDAwMDAwMDAgKzAwMDAKQEAgLTk1 LDkgKzk1LDkgQEAKIHN0YXRpYyBpbnQJY29tcHV0ZV9zYl9kYXRhKHN0cnVj dCB2bm9kZSAqIGRldnZwLAogCQkgICAgc3RydWN0IGV4dDJmcyAqIGVzLCBz dHJ1Y3QgbV9leHQyZnMgKiBmcyk7CiAKLXN0YXRpYyBjb25zdCBjaGFyICpl eHQyX29wdHNbXSA9IHsgImZyb20iLCAiZXhwb3J0IiwgImFjbHMiLCAibm9l eGVjIiwKLSAgICAibm9hdGltZSIsICJ1bmlvbiIsICJzdWlkZGlyIiwgIm11 bHRpbGFiZWwiLCAibm9zeW1mb2xsb3ciLAotICAgICJub2NsdXN0ZXJyIiwg Im5vY2x1c3RlcnciLCAiZm9yY2UiLCBOVUxMIH07CitzdGF0aWMgY29uc3Qg Y2hhciAqZXh0Ml9vcHRzW10gPSB7ICJhY2xzIiwgImFzeW5jIiwgIm5vYXRp bWUiLCAibm9jbHVzdGVyciIsIAorICAgICJub2NsdXN0ZXJ3IiwgIm5vZXhl YyIsICJleHBvcnQiLCAiZm9yY2UiLCAiZnJvbSIsICJtdWx0aWxhYmVsIiwK KyAgICAic3VpZGRpciIsICJub3N5bWZvbGxvdyIsICJzeW5jIiwgInVuaW9u IiwgTlVMTCB9OwogCiAvKgogICogVkZTIE9wZXJhdGlvbnMuCkBAIC05NDUs OSArOTQ1LDggQEAKIAl9CiAKIAkvKgotCSAqIEZpbmlzaCBpbm9kZSBpbml0 aWFsaXphdGlvbiBub3cgdGhhdCBhbGlhc2luZyBoYXMgYmVlbiByZXNvbHZl ZC4KKwkgKiBGaW5pc2ggaW5vZGUgaW5pdGlhbGl6YXRpb24uCiAJICovCi0J aXAtPmlfZGV2dnAgPSB1bXAtPnVtX2RldnZwOwogCiAJLyoKIAkgKiBTZXQg dXAgYSBnZW5lcmF0aW9uIG51bWJlciBmb3IgdGhpcyBpbm9kZSBpZiBpdCBk b2VzIG5vdApkaWZmIC1ydSBleHQyZnMub3JpZy9leHQyZnMuaCBleHQyZnMv ZXh0MmZzLmgKLS0tIGV4dDJmcy5vcmlnL2V4dDJmcy5oCTIwMTAtMTItMjkg MTU6MTU6MjEuMDAwMDAwMDAwICswMDAwCisrKyBleHQyZnMvZXh0MmZzLmgJ MjAxMC0xMi0zMCAyMzoxODoyMS4wMDAwMDAwMDAgKzAwMDAKQEAgLTM5LDIy ICszOSw2IEBACiAKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KIAotLyoKLSAq IFNwZWNpYWwgaW5vZGUgbnVtYmVycwotICovCi0jZGVmaW5lCUVYVDJfQkFE X0lOTwkJIDEJLyogQmFkIGJsb2NrcyBpbm9kZSAqLwotI2RlZmluZSBFWFQy X1JPT1RfSU5PCQkgMgkvKiBSb290IGlub2RlICovCi0jZGVmaW5lIEVYVDJf Qk9PVF9MT0FERVJfSU5PCSA1CS8qIEJvb3QgbG9hZGVyIGlub2RlICovCi0j ZGVmaW5lIEVYVDJfVU5ERUxfRElSX0lOTwkgNgkvKiBVbmRlbGV0ZSBkaXJl Y3RvcnkgaW5vZGUgKi8KLQotLyogRmlyc3Qgbm9uLXJlc2VydmVkIGlub2Rl IGZvciBvbGQgZXh0MiBmaWxlc3lzdGVtcyAqLwotI2RlZmluZSBFMkZTX1JF VjBfRklSU1RfSU5PCTExCi0KLS8qCi0gKiBUaGUgc2Vjb25kIGV4dGVuZGVk IGZpbGUgc3lzdGVtIG1hZ2ljIG51bWJlcgotICovCi0jZGVmaW5lIEUyRlNf TUFHSUMJCTB4RUY1MwotCiAjaWYgZGVmaW5lZChfS0VSTkVMKQogLyoKICAq IEZyZWVCU0QgcGFzc2VzIHRoZSBwb2ludGVyIHRvIHRoZSBpbi1jb3JlIHN0 cnVjdCB3aXRoIHJlbGV2YW50CkBAIC0xMjksNyArMTEzLDkgQEAKIAl1X2lu dDhfdCAgIGUyZnNfdXVpZFsxNl07CS8qIDEyOC1iaXQgdXVpZCBmb3Igdm9s dW1lICovCiAJY2hhciAgICAgICBlMmZzX3ZuYW1lWzE2XTsJLyogdm9sdW1l IG5hbWUgKi8KIAljaGFyICAgICAgIGUyZnNfZnNtbnRbNjRdOyAJLyogbmFt ZSBtb3VudGVkIG9uICovCi0JdV9pbnQzMl90ICBlMmZzX2FsZ287CQkvKiBG b3IgY29tY2F0ZSBmb3IgZGlyICovCisJdV9pbnQzMl90ICBlMmZzX2FsZ287 CQkvKiBmb3IgY29tcHJlc3Npb24gKi8KKwl1aW50OF90CSAgIGUyZnNfcHJl YWxsb2M7CS8qICMgb2YgYmxvY2tzIHRvIHByZWFsbG9jYXRlICovCisJdWlu dDhfdAkgICBlMmZzX2Rpcl9wcmVhbGxvYzsJLyogIyBvZiBibG9ja3MgdG8g cHJlYWxsb2NhdGUgZm9yIGRpciAqLwogCXVfaW50MTZfdCAgZTJmc19yZXNl cnZlZF9uZ2RiOyAvKiAjIG9mIHJlc2VydmVkIGdkIGJsb2NrcyBmb3IgcmVz aXplICovCiAJdV9pbnQzMl90ICByZXNlcnZlZDJbMjA0XTsKIH07CkBAIC0x NTMsOCArMTM5LDggQEAKIAl1aW50MzJfdCBlMmZzX2JzaGlmdDsgICAgIC8q IGNhbGMgb2YgbG9naWNhbCBibG9jayBubyAqLwogCWludDMyX3QgZTJmc19i bWFzazsgICAgICAgLyogY2FsYyBvZiBibG9jayBvZmZzZXQgKi8KIAlpbnQz Ml90IGUyZnNfYnBnOyAgICAgICAgIC8qIE51bWJlciBvZiBibG9ja3MgcGVy IGdyb3VwICovCi0JaW50NjRfdCBlMmZzX3FibWFzazsgICAgICAgLyogPSBz X2Jsb2Nrc2l6ZSAtMSAqLwotCXVpbnQzMl90IGUyZnNfZnNidG9kYjsgICAg IC8qIFNoaWZ0IHRvIGdldCBkaXNrIGJsb2NrICovCisJaW50NjRfdCBlMmZz X3FibWFzazsgICAgICAvKiA9IHNfYmxvY2tzaXplIC0xICovCisJdWludDMy X3QgZTJmc19mc2J0b2RiOyAgICAvKiBTaGlmdCB0byBnZXQgZGlzayBibG9j ayAqLwogCXVpbnQzMl90IGUyZnNfaXBnOyAgICAgICAgLyogTnVtYmVyIG9m IGlub2RlcyBwZXIgZ3JvdXAgKi8KIAl1aW50MzJfdCBlMmZzX2lwYjsgICAg ICAgIC8qIE51bWJlciBvZiBpbm9kZXMgcGVyIGJsb2NrICovCiAJdWludDMy X3QgZTJmc19pdHBnOyAgICAgICAvKiBOdW1iZXIgb2YgaW5vZGUgdGFibGUg cGVyIGdyb3VwICovCkBAIC0xNjksOCArMTU1LDggQEAKIAlpbnQzMl90ICBl MmZzX2lzaXplOyAgICAgIC8qIFNpemUgb2YgaW5vZGUgKi8KIAl1aW50MzJf dCBlMmZzX21vdW50X29wdDsKIAl1aW50MzJfdCBlMmZzX2Jsb2Nrc2l6ZV9i aXRzOworCXVpbnQ4X3QJKmUyZnNfY29udGlnZGlyczsgLyogKHUpICMgb2Yg Y29udGlnLiBhbGxvY2F0ZWQgZGlycyAqLwogCXVpbnQzMl90IGUyZnNfdG90 YWxfZGlyOyAgLyogVG90YWwgbnVtYmVyIG9mIGRpcmVjdG9yaWVzICovCi0J dWludDhfdAkqZTJmc19jb250aWdkaXJzOwogCWNoYXIgZTJmc193YXN2YWxp ZDsgICAgICAgLyogdmFsaWQgYXQgbW91bnQgdGltZSAqLwogCW9mZl90IGUy ZnNfbWF4ZmlsZXNpemU7CiAJc3RydWN0IGV4dDJfZ2QgKmUyZnNfZ2Q7IC8q IEdyb3VwIERlc2NyaXB0b3JzICovCkBAIC0xODIsNiArMTY4LDE0IEBACiAj ZGVmaW5lIEUyRlNfREFURQkJIjk1LzA4LzA5IgogI2RlZmluZSBFMkZTX1ZF UlNJT04JCSIwLjViIgogCisvKiBGaXJzdCBub24tcmVzZXJ2ZWQgaW5vZGUg Zm9yIG9sZCBleHQyIGZpbGVzeXN0ZW1zICovCisjZGVmaW5lIEUyRlNfUkVW MF9GSVJTVF9JTk8JMTEKKworLyoKKyAqIFRoZSBzZWNvbmQgZXh0ZW5kZWQg ZmlsZSBzeXN0ZW0gbWFnaWMgbnVtYmVyCisgKi8KKyNkZWZpbmUgRTJGU19N QUdJQwkJMHhFRjUzCisKIC8qCiAgKiBSZXZpc2lvbiBsZXZlbHMKICAqLwpA QCAtMTk3LDYgKzE5MSw3IEBACiAgKiBjb21wYXRpYmxlL2luY29tcGF0aWJs ZSBmZWF0dXJlcwogICovCiAjZGVmaW5lIEVYVDJGX0NPTVBBVF9QUkVBTExP QwkJMHgwMDAxCisjZGVmaW5lIEVYVDJGX0NPTVBBVF9IQVNKT1VSTkFMCQkw eDAwMDQKICNkZWZpbmUgRVhUMkZfQ09NUEFUX1JFU0laRQkJMHgwMDEwCiAK ICNkZWZpbmUgRVhUMkZfUk9DT01QQVRfU1BBUlNFU1VQRVIJMHgwMDAxCkBA IC0zMjYsNCArMzIxLDQgQEAKIAogI2VuZGlmCiAKLSNlbmRpZgkvKiBfTElO VVhfRVhUMl9GU19IICovCisjZW5kaWYJLyogIV9GU19FWFQyRlNfRVhUMkZT X0ggKi8KZGlmZiAtcnUgZXh0MmZzLm9yaWcvaW5vZGUuaCBleHQyZnMvaW5v ZGUuaAotLS0gZXh0MmZzLm9yaWcvaW5vZGUuaAkyMDEwLTEyLTI5IDE1OjE1 OjMwLjAwMDAwMDAwMCArMDAwMAorKysgZXh0MmZzL2lub2RlLmgJMjAxMC0x Mi0zMCAyMzoxNjowNi4wMDAwMDAwMDAgKzAwMDAKQEAgLTYyLDcgKzYyLDYg QEAKICAqLwogc3RydWN0IGlub2RlIHsKIAlzdHJ1Y3QJdm5vZGUgICppX3Zu b2RlOy8qIFZub2RlIGFzc29jaWF0ZWQgd2l0aCB0aGlzIGlub2RlLiAqLwot CXN0cnVjdAl2bm9kZSAgKmlfZGV2dnA7LyogVm5vZGUgZm9yIGJsb2NrIEkv Ty4gKi8KIAlzdHJ1Y3QJZXh0Mm1vdW50ICppX3VtcDsKIAl1X2ludDMyX3Qg aV9mbGFnOwkvKiBmbGFncywgc2VlIGJlbG93ICovCiAJaW5vX3QJICBpX251 bWJlcjsJLyogVGhlIGlkZW50aXR5IG9mIHRoZSBpbm9kZS4gKi8KQEAgLTE0 Myw2ICsxNDIsOSBAQAogI2RlZmluZQlJTl9TUEFDRUNPVU5URUQJMHgwMDgw CQkvKiBCbG9ja3MgdG8gYmUgZnJlZWQgaW4gZnJlZSBjb3VudC4gKi8KICNk ZWZpbmUgSU5fTEFaWUFDQ0VTUyAgIDB4MDEwMAkJLyogUHJvY2VzcyBJTl9B Q0NFU1MgYWZ0ZXIgdGhlCiAJCQkJCSAgICBzdXNwZW5zaW9uIGZpbmlzaGVk ICovCisKKyNkZWZpbmUgaV9kZXZ2cCBpX3VtcC0+dW1fZGV2dnAKKwogI2lm ZGVmIF9LRVJORUwKIC8qCiAgKiBTdHJ1Y3R1cmUgdXNlZCB0byBwYXNzIGFy b3VuZCBsb2dpY2FsIGJsb2NrIHBhdGhzIGdlbmVyYXRlZCBieQo= --0-493483054-1294026608=:21492--