From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 2/2] drm/i915: Remove last traces of exec-id (GEM_BUSY) Date: Sat, 2 Mar 2019 10:06:35 +0000 Message-ID: <20190302100635.3916-3-chris@chris-wilson.co.uk> References: <20190302100635.3916-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 109BB6E36F for ; Sat, 2 Mar 2019 10:06:41 +0000 (UTC) In-Reply-To: <20190302100635.3916-1-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org QXMgd2UgYWxsb3cgcGVyLWNvbnRleHQgZW5naW5lIGFsbG93cyB0aGUgbGVnYWN5IGNvbmNlcHQg b2YKSTkxNV9FWEVDX1JJTkcgbm8gbG9uZ2VyIGFwcGxpZXMgdW5pdmVyc2FsbHkuIFdlIGFyZSBz dGlsbCBleHBvc2luZyB0aGUKdW5yZWxhdGVkIGV4ZWMtaWQgaW4gR0VNX0JVU1ksIHNvIHRyYW5z aXRpb24gdGhpcyBpb2N0bCAob25jZSBtb3JlCnNsaWdodGx5IGNoYW5naW5nIGl0cyBBQkksIGJ1 dCBubyBvbmUgY2FyZXMpIG92ZXIgdG8gb25seSByZXBvcnRpbmcgdGhlCnVhYmktY2xhc3MgKG5v dCBpbnN0YW5jZSBhcyB3ZSBjYW4gbm90IGZvcmVzZWVhYmx5IGZpdCB0aG9zZSBpbnRvIHRoZQpz bWFsbCBiaXRtYXNrKS4KClRoZSBvbmx5IHVzZXIgb2YgdGhlIGV4dGVuZGVkIHJpbmcgaW5mb3Jt YXRpb24gZnJvbSBHRU1fQlVTWSBpcyBkZHgvc25hLAp3aGljaCB0cmllcyB0byB1c2UgdGhlIG5v bi1yY3MgYnVzaW5lc3MgaW5mb3JtYXRpb24gdG8gZ3VpZGUgd2hpY2gKZW5naW5lIHRvIHVzZSBm b3Igc3Vic2VxdWVudCBvcGVyYXRpb25zIG9uIGZvcmVpZ24gYm8uIEFsbCB0aGF0IG1hdHRlcnMK Zm9yIGl0IGlzIHRoZSBkZWNpc2lvbiBiZXR3ZWVuIHJjcyBhbmQgIXJjcywgc28gaXQgaXMgdW5h ZmZlY3RlZCBieSB0aGUKY2hhbmdlIGluIGhpZ2hlciBiaXRzLgoKU2lnbmVkLW9mZi1ieTogQ2hy aXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Ci0tLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW0uYyAgICAgICAgIHwgMzIgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZW5naW5lX2NzLmMgIHwgMTAgLS0tLS0tLS0KIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaCB8ICAxIC0KIGluY2x1ZGUvdWFw aS9kcm0vaTkxNV9kcm0uaCAgICAgICAgICAgICB8IDMyICsrKysrKysrKysrKystLS0tLS0tLS0t LS0KIDQgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgNDEgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtLmMKaW5kZXggYTFhZDVlMTM3YTk3Li42OTQxM2Y5OWVkMDQgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpAQCAtMzgyNSwyMCArMzgyNSwxNyBAQCBpOTE1X2dlbV9v YmplY3RfZ2d0dF9waW4oc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAogc3RhdGlj IF9fYWx3YXlzX2lubGluZSB1bnNpZ25lZCBpbnQgX19idXN5X3JlYWRfZmxhZyh1bnNpZ25lZCBp bnQgaWQpCiB7Ci0JLyogTm90ZSB0aGF0IHdlIGNvdWxkIGFsaWFzIGVuZ2luZXMgaW4gdGhlIGV4 ZWNidWYgQVBJLCBidXQKLQkgKiB0aGF0IHdvdWxkIGJlIHZlcnkgdW53aXNlIGFzIGl0IHByZXZl bnRzIHVzZXJzcGFjZSBmcm9tCi0JICogZmluZSBjb250cm9sIG92ZXIgZW5naW5lIHNlbGVjdGlv bi4gQWhlbS4KLQkgKgotCSAqIFRoaXMgc2hvdWxkIGJlIHNvbWV0aGluZyBsaWtlIEVYRUNfTUFY X0VOR0lORSBpbnN0ZWFkIG9mCi0JICogSTkxNV9OVU1fRU5HSU5FUy4KLQkgKi8KLQlCVUlMRF9C VUdfT04oSTkxNV9OVU1fRU5HSU5FUyA+IDE2KTsKKwlpZiAoaWQgPT0gSTkxNV9FTkdJTkVfQ0xB U1NfSU5WQUxJRCkKKwkJcmV0dXJuIDB4ZmZmZjAwMDA7CisKKwlHRU1fQlVHX09OKGlkID49IDE2 KTsKIAlyZXR1cm4gMHgxMDAwMCA8PCBpZDsKIH0KIAogc3RhdGljIF9fYWx3YXlzX2lubGluZSB1 bnNpZ25lZCBpbnQgX19idXN5X3dyaXRlX2lkKHVuc2lnbmVkIGludCBpZCkKIHsKLQkvKiBUaGUg dUFCSSBndWFyYW50ZWVzIGFuIGFjdGl2ZSB3cml0ZXIgaXMgYWxzbyBhbW9uZ3N0IHRoZSByZWFk CisJLyoKKwkgKiBUaGUgdUFCSSBndWFyYW50ZWVzIGFuIGFjdGl2ZSB3cml0ZXIgaXMgYWxzbyBh bW9uZ3N0IHRoZSByZWFkCiAJICogZW5naW5lcy4gVGhpcyB3b3VsZCBiZSB0cnVlIGlmIHdlIGFj Y2Vzc2VkIHRoZSBhY3Rpdml0eSB0cmFja2luZwogCSAqIHVuZGVyIHRoZSBsb2NrLCBidXQgYXMg d2UgcGVyZm9ybSB0aGUgbG9va3VwIG9mIHRoZSBvYmplY3QgYW5kCiAJICogaXRzIGFjdGl2aXR5 IGxvY2tsZXNzbHkgd2UgY2FuIG5vdCBndWFyYW50ZWUgdGhhdCB0aGUgbGFzdF93cml0ZQpAQCAt Mzg0NiwxNiArMzg0MywyMCBAQCBzdGF0aWMgX19hbHdheXNfaW5saW5lIHVuc2lnbmVkIGludCBf X2J1c3lfd3JpdGVfaWQodW5zaWduZWQgaW50IGlkKQogCSAqIGxhc3RfcmVhZCAtIGhlbmNlIHdl IGFsd2F5cyBzZXQgYm90aCByZWFkIGFuZCB3cml0ZSBidXN5IGZvcgogCSAqIGxhc3Rfd3JpdGUu CiAJICovCi0JcmV0dXJuIGlkIHwgX19idXN5X3JlYWRfZmxhZyhpZCk7CisJaWYgKGlkID09IEk5 MTVfRU5HSU5FX0NMQVNTX0lOVkFMSUQpCisJCXJldHVybiAweGZmZmZmZmZmOworCisJcmV0dXJu IChpZCArIDEpIHwgX19idXN5X3JlYWRfZmxhZyhpZCk7CiB9CiAKIHN0YXRpYyBfX2Fsd2F5c19p bmxpbmUgdW5zaWduZWQgaW50CiBfX2J1c3lfc2V0X2lmX2FjdGl2ZShjb25zdCBzdHJ1Y3QgZG1h X2ZlbmNlICpmZW5jZSwKIAkJICAgICB1bnNpZ25lZCBpbnQgKCpmbGFnKSh1bnNpZ25lZCBpbnQg aWQpKQogewotCXN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxOworCWNvbnN0IHN0cnVjdCBpOTE1X3Jl cXVlc3QgKnJxOwogCi0JLyogV2UgaGF2ZSB0byBjaGVjayB0aGUgY3VycmVudCBodyBzdGF0dXMg b2YgdGhlIGZlbmNlIGFzIHRoZSB1QUJJCisJLyoKKwkgKiBXZSBoYXZlIHRvIGNoZWNrIHRoZSBj dXJyZW50IGh3IHN0YXR1cyBvZiB0aGUgZmVuY2UgYXMgdGhlIHVBQkkKIAkgKiBndWFyYW50ZWVz IGZvcndhcmQgcHJvZ3Jlc3MuIFdlIGNvdWxkIHJlbHkgb24gdGhlIGlkbGUgd29ya2VyCiAJICog dG8gZXZlbnR1YWxseSBmbHVzaCB1cywgYnV0IHRvIG1pbmltaXNlIGxhdGVuY3kganVzdCBhc2sg dGhlCiAJICogaGFyZHdhcmUuCkBAIC0zODY2LDExICszODY3LDExIEBAIF9fYnVzeV9zZXRfaWZf YWN0aXZlKGNvbnN0IHN0cnVjdCBkbWFfZmVuY2UgKmZlbmNlLAogCQlyZXR1cm4gMDsKIAogCS8q IG9wZW5jb2RlIHRvX3JlcXVlc3QoKSBpbiBvcmRlciB0byBhdm9pZCBjb25zdCB3YXJuaW5ncyAq LwotCXJxID0gY29udGFpbmVyX29mKGZlbmNlLCBzdHJ1Y3QgaTkxNV9yZXF1ZXN0LCBmZW5jZSk7 CisJcnEgPSBjb250YWluZXJfb2YoZmVuY2UsIGNvbnN0IHN0cnVjdCBpOTE1X3JlcXVlc3QsIGZl bmNlKTsKIAlpZiAoaTkxNV9yZXF1ZXN0X2NvbXBsZXRlZChycSkpCiAJCXJldHVybiAwOwogCi0J cmV0dXJuIGZsYWcocnEtPmVuZ2luZS0+dWFiaV9pZCk7CisJcmV0dXJuIGZsYWcocnEtPmVuZ2lu ZS0+dWFiaV9jbGFzcyk7CiB9CiAKIHN0YXRpYyBfX2Fsd2F5c19pbmxpbmUgdW5zaWduZWQgaW50 CkBAIC0zOTA0LDcgKzM5MDUsOCBAQCBpOTE1X2dlbV9idXN5X2lvY3RsKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJaWYgKCFvYmopCiAJCWdvdG8gb3V0OwogCi0JLyogQSBk aXNjcmVwYW5jeSBoZXJlIGlzIHRoYXQgd2UgZG8gbm90IHJlcG9ydCB0aGUgc3RhdHVzIG9mCisJ LyoKKwkgKiBBIGRpc2NyZXBhbmN5IGhlcmUgaXMgdGhhdCB3ZSBkbyBub3QgcmVwb3J0IHRoZSBz dGF0dXMgb2YKIAkgKiBub24taTkxNSBmZW5jZXMsIGkuZS4gZXZlbiB0aG91Z2ggd2UgbWF5IHJl cG9ydCB0aGUgb2JqZWN0IGFzIGlkbGUsCiAJICogYSBjYWxsIHRvIHNldC1kb21haW4gbWF5IHN0 aWxsIHN0YWxsIHdhaXRpbmcgZm9yIGZvcmVpZ24gcmVuZGVyaW5nLgogCSAqIFRoaXMgYWxzbyBt ZWFucyB0aGF0IHdhaXQtaW9jdGwgbWF5IHJlcG9ydCBhbiBvYmplY3QgYXMgYnVzeSwKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZW5naW5lX2NzLmMKaW5kZXggMmY3YjZjN2FlYjc4Li42MmEyYmJi YmNjNjQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jCkBAIC04NCw3ICs4 NCw2IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZW5naW5lX2NsYXNzX2luZm8gaW50ZWxfZW5naW5l X2NsYXNzZXNbXSA9IHsKICNkZWZpbmUgTUFYX01NSU9fQkFTRVMgMwogc3RydWN0IGVuZ2luZV9p bmZvIHsKIAl1bnNpZ25lZCBpbnQgaHdfaWQ7Ci0JdW5zaWduZWQgaW50IHVhYmlfaWQ7CiAJdTgg Y2xhc3M7CiAJdTggaW5zdGFuY2U7CiAJLyogbW1pbyBiYXNlcyB0YWJsZSAqbXVzdCogYmUgc29y dGVkIGluIHJldmVyc2UgZ2VuIG9yZGVyICovCkBAIC05Nyw3ICs5Niw2IEBAIHN0cnVjdCBlbmdp bmVfaW5mbyB7CiBzdGF0aWMgY29uc3Qgc3RydWN0IGVuZ2luZV9pbmZvIGludGVsX2VuZ2luZXNb XSA9IHsKIAlbUkNTMF0gPSB7CiAJCS5od19pZCA9IFJDUzBfSFcsCi0JCS51YWJpX2lkID0gSTkx NV9FWEVDX1JFTkRFUiwKIAkJLmNsYXNzID0gUkVOREVSX0NMQVNTLAogCQkuaW5zdGFuY2UgPSAw LAogCQkubW1pb19iYXNlcyA9IHsKQEAgLTEwNiw3ICsxMDQsNiBAQCBzdGF0aWMgY29uc3Qgc3Ry dWN0IGVuZ2luZV9pbmZvIGludGVsX2VuZ2luZXNbXSA9IHsKIAl9LAogCVtCQ1MwXSA9IHsKIAkJ Lmh3X2lkID0gQkNTMF9IVywKLQkJLnVhYmlfaWQgPSBJOTE1X0VYRUNfQkxULAogCQkuY2xhc3Mg PSBDT1BZX0VOR0lORV9DTEFTUywKIAkJLmluc3RhbmNlID0gMCwKIAkJLm1taW9fYmFzZXMgPSB7 CkBAIC0xMTUsNyArMTEyLDYgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBlbmdpbmVfaW5mbyBpbnRl bF9lbmdpbmVzW10gPSB7CiAJfSwKIAlbVkNTMF0gPSB7CiAJCS5od19pZCA9IFZDUzBfSFcsCi0J CS51YWJpX2lkID0gSTkxNV9FWEVDX0JTRCwKIAkJLmNsYXNzID0gVklERU9fREVDT0RFX0NMQVNT LAogCQkuaW5zdGFuY2UgPSAwLAogCQkubW1pb19iYXNlcyA9IHsKQEAgLTEyNiw3ICsxMjIsNiBA QCBzdGF0aWMgY29uc3Qgc3RydWN0IGVuZ2luZV9pbmZvIGludGVsX2VuZ2luZXNbXSA9IHsKIAl9 LAogCVtWQ1MxXSA9IHsKIAkJLmh3X2lkID0gVkNTMV9IVywKLQkJLnVhYmlfaWQgPSBJOTE1X0VY RUNfQlNELAogCQkuY2xhc3MgPSBWSURFT19ERUNPREVfQ0xBU1MsCiAJCS5pbnN0YW5jZSA9IDEs CiAJCS5tbWlvX2Jhc2VzID0gewpAQCAtMTM2LDcgKzEzMSw2IEBAIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgZW5naW5lX2luZm8gaW50ZWxfZW5naW5lc1tdID0gewogCX0sCiAJW1ZDUzJdID0gewogCQku aHdfaWQgPSBWQ1MyX0hXLAotCQkudWFiaV9pZCA9IEk5MTVfRVhFQ19CU0QsCiAJCS5jbGFzcyA9 IFZJREVPX0RFQ09ERV9DTEFTUywKIAkJLmluc3RhbmNlID0gMiwKIAkJLm1taW9fYmFzZXMgPSB7 CkBAIC0xNDUsNyArMTM5LDYgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBlbmdpbmVfaW5mbyBpbnRl bF9lbmdpbmVzW10gPSB7CiAJfSwKIAlbVkNTM10gPSB7CiAJCS5od19pZCA9IFZDUzNfSFcsCi0J CS51YWJpX2lkID0gSTkxNV9FWEVDX0JTRCwKIAkJLmNsYXNzID0gVklERU9fREVDT0RFX0NMQVNT LAogCQkuaW5zdGFuY2UgPSAzLAogCQkubW1pb19iYXNlcyA9IHsKQEAgLTE1NCw3ICsxNDcsNiBA QCBzdGF0aWMgY29uc3Qgc3RydWN0IGVuZ2luZV9pbmZvIGludGVsX2VuZ2luZXNbXSA9IHsKIAl9 LAogCVtWRUNTMF0gPSB7CiAJCS5od19pZCA9IFZFQ1MwX0hXLAotCQkudWFiaV9pZCA9IEk5MTVf RVhFQ19WRUJPWCwKIAkJLmNsYXNzID0gVklERU9fRU5IQU5DRU1FTlRfQ0xBU1MsCiAJCS5pbnN0 YW5jZSA9IDAsCiAJCS5tbWlvX2Jhc2VzID0gewpAQCAtMTY0LDcgKzE1Niw2IEBAIHN0YXRpYyBj b25zdCBzdHJ1Y3QgZW5naW5lX2luZm8gaW50ZWxfZW5naW5lc1tdID0gewogCX0sCiAJW1ZFQ1Mx XSA9IHsKIAkJLmh3X2lkID0gVkVDUzFfSFcsCi0JCS51YWJpX2lkID0gSTkxNV9FWEVDX1ZFQk9Y LAogCQkuY2xhc3MgPSBWSURFT19FTkhBTkNFTUVOVF9DTEFTUywKIAkJLmluc3RhbmNlID0gMSwK IAkJLm1taW9fYmFzZXMgPSB7CkBAIC0zMjQsNyArMzE1LDYgQEAgaW50ZWxfZW5naW5lX3NldHVw KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAllbmdpbmUtPmNsYXNzID0gaW5m by0+Y2xhc3M7CiAJZW5naW5lLT5pbnN0YW5jZSA9IGluZm8tPmluc3RhbmNlOwogCi0JZW5naW5l LT51YWJpX2lkID0gaW5mby0+dWFiaV9pZDsKIAllbmdpbmUtPnVhYmlfY2xhc3MgPSBpbnRlbF9l bmdpbmVfY2xhc3Nlc1tpbmZvLT5jbGFzc10udWFiaV9jbGFzczsKIAogCWVuZ2luZS0+Y29udGV4 dF9zaXplID0gX19pbnRlbF9lbmdpbmVfY29udGV4dF9zaXplKGRldl9wcml2LApkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCmluZGV4IGVjOTY4MTQwYjQ2Zi4uMThlODY1ZmY2 NjM3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgK KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCkBAIC0zMzYsNyAr MzM2LDYgQEAgc3RydWN0IGludGVsX2VuZ2luZV9jcyB7CiAJdW5zaWduZWQgaW50IGd1Y19pZDsK IAlpbnRlbF9lbmdpbmVfbWFza190IG1hc2s7CiAKLQl1OCB1YWJpX2lkOwogCXU4IHVhYmlfY2xh c3M7CiAKIAl1OCBjbGFzczsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0u aCBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaAppbmRleCAxYTYwNjQyYzFkNjEuLmFhMmQ0 YzczYTk3ZCAxMDA2NDQKLS0tIGEvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCisrKyBiL2lu Y2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaApAQCAtMTEyNywzMiArMTEyNywzNCBAQCBzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX2J1c3kgewogCSAqIGFzIGJ1c3kgbWF5IGJlY29tZSBpZGxlIGJlZm9yZSB0 aGUgaW9jdGwgaXMgY29tcGxldGVkLgogCSAqCiAJICogRnVydGhlcm1vcmUsIGlmIHRoZSBvYmpl Y3QgaXMgYnVzeSwgd2hpY2ggZW5naW5lIGlzIGJ1c3kgaXMgb25seQotCSAqIHByb3ZpZGVkIGFz IGEgZ3VpZGUuIFRoZXJlIGFyZSByYWNlIGNvbmRpdGlvbnMgd2hpY2ggcHJldmVudCB0aGUKLQkg KiByZXBvcnQgb2Ygd2hpY2ggZW5naW5lcyBhcmUgYnVzeSBmcm9tIGJlaW5nIGFsd2F5cyBhY2N1 cmF0ZS4KLQkgKiBIb3dldmVyLCB0aGUgY29udmVyc2UgaXMgbm90IHRydWUuIElmIHRoZSBvYmpl Y3QgaXMgaWRsZSwgdGhlCi0JICogcmVzdWx0IG9mIHRoZSBpb2N0bCwgdGhhdCBhbGwgZW5naW5l cyBhcmUgaWRsZSwgaXMgYWNjdXJhdGUuCisJICogcHJvdmlkZWQgYXMgYSBndWlkZSBhbmQgb25s eSBpbmRpcmVjdGx5IGJ5IHJlcG9ydGluZyBpdHMgY2xhc3MKKwkgKiAodGhlcmUgbWF5IGJlIG1v cmUgdGhhbiBvbmUgZW5naW5lIGluIGVhY2ggY2xhc3MpLiBUaGVyZSBhcmUgcmFjZQorCSAqIGNv bmRpdGlvbnMgd2hpY2ggcHJldmVudCB0aGUgcmVwb3J0IG9mIHdoaWNoIGVuZ2luZXMgYXJlIGJ1 c3kgZnJvbQorCSAqIGJlaW5nIGFsd2F5cyBhY2N1cmF0ZS4gIEhvd2V2ZXIsIHRoZSBjb252ZXJz ZSBpcyBub3QgdHJ1ZS4gSWYgdGhlCisJICogb2JqZWN0IGlzIGlkbGUsIHRoZSByZXN1bHQgb2Yg dGhlIGlvY3RsLCB0aGF0IGFsbCBlbmdpbmVzIGFyZSBpZGxlLAorCSAqIGlzIGFjY3VyYXRlLgog CSAqCiAJICogVGhlIHJldHVybmVkIGR3b3JkIGlzIHNwbGl0IGludG8gdHdvIGZpZWxkcyB0byBp bmRpY2F0ZSBib3RoCi0JICogdGhlIGVuZ2luZXMgb24gd2hpY2ggdGhlIG9iamVjdCBpcyBiZWlu ZyByZWFkLCBhbmQgdGhlCi0JICogZW5naW5lIG9uIHdoaWNoIGl0IGlzIGN1cnJlbnRseSBiZWlu ZyB3cml0dGVuIChpZiBhbnkpLgorCSAqIHRoZSBlbmdpbmUgY2xhc3Nlc3Mgb24gd2hpY2ggdGhl IG9iamVjdCBpcyBiZWluZyByZWFkLCBhbmQgdGhlCisJICogZW5naW5lIGNsYXNzIG9uIHdoaWNo IGl0IGlzIGN1cnJlbnRseSBiZWluZyB3cml0dGVuIChpZiBhbnkpLgogCSAqCiAJICogVGhlIGxv dyB3b3JkIChiaXRzIDA6MTUpIGluZGljYXRlIGlmIHRoZSBvYmplY3QgaXMgYmVpbmcgd3JpdHRl bgogCSAqIHRvIGJ5IGFueSBlbmdpbmUgKHRoZXJlIGNhbiBvbmx5IGJlIG9uZSwgYXMgdGhlIEdF TSBpbXBsaWNpdAogCSAqIHN5bmNocm9uaXNhdGlvbiBydWxlcyBmb3JjZSB3cml0ZXMgdG8gYmUg c2VyaWFsaXNlZCkuIE9ubHkgdGhlCi0JICogZW5naW5lIGZvciB0aGUgbGFzdCB3cml0ZSBpcyBy ZXBvcnRlZC4KKwkgKiBlbmdpbmUgY2xhc3MgKG9mZnNldCBieSAxLCBJOTE1X0VOR0lORV9DTEFT U19SRU5ERVIgaXMgcmVwb3J0ZWQgYXMKKwkgKiAxIG5vdCAwIGV0YykgZm9yIHRoZSBsYXN0IHdy aXRlIGlzIHJlcG9ydGVkLgogCSAqCi0JICogVGhlIGhpZ2ggd29yZCAoYml0cyAxNjozMSkgYXJl IGEgYml0bWFzayBvZiB3aGljaCBlbmdpbmVzIGFyZQotCSAqIGN1cnJlbnRseSByZWFkaW5nIGZy b20gdGhlIG9iamVjdC4gTXVsdGlwbGUgZW5naW5lcyBtYXkgYmUKKwkgKiBUaGUgaGlnaCB3b3Jk IChiaXRzIDE2OjMxKSBhcmUgYSBiaXRtYXNrIG9mIHdoaWNoIGVuZ2luZXMgY2xhc3NlcworCSAq IGFyZSBjdXJyZW50bHkgcmVhZGluZyBmcm9tIHRoZSBvYmplY3QuIE11bHRpcGxlIGVuZ2luZXMg bWF5IGJlCiAJICogcmVhZGluZyBmcm9tIHRoZSBvYmplY3Qgc2ltdWx0YW5lb3VzbHkuCiAJICoK LQkgKiBUaGUgdmFsdWUgb2YgZWFjaCBlbmdpbmUgaXMgdGhlIHNhbWUgYXMgc3BlY2lmaWVkIGlu IHRoZQotCSAqIEVYRUNCVUZGRVIyIGlvY3RsLCBpLmUuIEk5MTVfRVhFQ19SRU5ERVIsIEk5MTVf RVhFQ19CU0QgZXRjLgotCSAqIE5vdGUgSTkxNV9FWEVDX0RFRkFVTFQgaXMgYSBzeW1ib2xpYyB2 YWx1ZSBhbmQgaXMgbWFwcGVkIHRvCi0JICogdGhlIEk5MTVfRVhFQ19SRU5ERVIgZW5naW5lIGZv ciBleGVjdXRpb24sIGFuZCBzbyBpdCBpcyBuZXZlcgorCSAqIFRoZSB2YWx1ZSBvZiBlYWNoIGVu Z2luZSBjbGFzcyBpcyB0aGUgc2FtZSBhcyBzcGVjaWZpZWQgaW4gdGhlCisJICogSTkxNV9DT05U RVhUX1NFVF9FTkdJTkVTIHBhcmFtZXRlciBhbmQgdmlhIHBlcmYsIGkuZS4KKwkgKiBJOTE1X0VO R0lORV9DTEFTU19SRU5ERVIsIEk5MTVfRU5HSU5FX0NMQVNTX0NPUFksIGV0Yy4KIAkgKiByZXBv cnRlZCBhcyBhY3RpdmUgaXRzZWxmLiBTb21lIGhhcmR3YXJlIG1heSBoYXZlIHBhcmFsbGVsCiAJ ICogZXhlY3V0aW9uIGVuZ2luZXMsIGUuZy4gbXVsdGlwbGUgbWVkaWEgZW5naW5lcywgd2hpY2gg YXJlCi0JICogbWFwcGVkIHRvIHRoZSBzYW1lIGlkZW50aWZpZXIgaW4gdGhlIEVYRUNCVUZGRVIy IGlvY3RsIGFuZAotCSAqIHNvIGFyZSBub3Qgc2VwYXJhdGVseSByZXBvcnRlZCBmb3IgYnVzeW5l c3MuCisJICogbWFwcGVkIHRvIHRoZSBzYW1lIGNsYXNzIGlkZW50aWZpZXIgYW5kIHNvIGFyZSBu b3Qgc2VwYXJhdGVseQorCSAqIHJlcG9ydGVkIGZvciBidXN5bmVzcy4KIAkgKgogCSAqIENhdmVh dCBlbXB0b3I6CiAJICogT25seSB0aGUgYm9vbGVhbiByZXN1bHQgb2YgdGhpcyBxdWVyeSBpcyBy ZWxpYWJsZTsgdGhhdCBpcyB3aGV0aGVyCi0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwt Z2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==