From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH v3 1/2] drm/i915: Make for_each_engine_masked work on intel_gt Date: Thu, 17 Oct 2019 14:45:31 +0100 Message-ID: <20191017134531.20659-1-tvrtko.ursulin@linux.intel.com> References: <20191017095710.4272-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 mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id A5DE96EAA1 for ; Thu, 17 Oct 2019 13:45:36 +0000 (UTC) In-Reply-To: <20191017095710.4272-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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCk1lZGl1bSB0 ZXJtIGdvYWwgaXMgdG8gZWxpbWluYXRlIHRoZSBpOTE1LT5lbmdpbmVbXSBhcnJheSBhbmQgdG8g Z2V0IHRoZXJlCndlIGhhdmUgcmVjZW50bHkgaW50cm9kdWNlZCBlcXVpdmFsZW50IGFycmF5IGlu IGludGVsX2d0LiBOb3cgd2UgbmVlZCB0bwptaWdyYXRlIHRoZSBjb2RlIGZ1cnRoZXIgdG93YXJk cyB0aGlzIHN0YXRlLgoKVGhpcyBuZXh0IHN0ZXAgaXMgdG8gZWxpbWluYXRlIHVzYWdlIG9mIGk5 MTUtPmVuZ2luZXNbXSBmcm9tIHRoZQpmb3JfZWFjaF9lbmdpbmVfbWFza2VkIGl0ZXJhdG9yLgoK Rm9yIHRoaXMgdG8gd29yayB3ZSBhbHNvIG5lZWQgdG8gdXNlIGVuZ2luZS0+aWQgYXMgaW5kZXgg d2hlbiBwb3B1bGF0aW5nCnRoZSBndC0+ZW5naW5lW10gYXJyYXkgYW5kIGFkanVzdCB0aGUgZGVm YXVsdCBlbmdpbmUgc2V0IGluZGV4aW5nIHRvIHVzZQplbmdpbmUtPmxlZ2FjeV9pZHggaW5zdGVh ZCBvZiBhc3N1bWluZyBndC0+ZW5naW5lc1tdIGluZGV4aW5nLgoKdjI6CiAqIFBvcHVsYXRlIGd0 LT5lbmdpbmVbXSBlYXJsaWVyLgoKdjM6CiAqIFdvcmsgYXJvdW5kIHRoZSBpbml0aWFsaXphdGlv biBvcmRlciBpc3N1ZSBiZXR3ZWVuIGRlZmF1bHRfZW5naW5lcygpCiAgIGFuZCBpbnRlbF9lbmdp bmVzX2RyaXZlcl9yZWdpc3RlcigpIHdoaWNoIHNldHMgZW5naW5lLT5sZWdhY3lfaWR4IGZvcgog ICBub3cuIEl0IHdpbGwgYmUgZml4ZWQgcHJvcGVybHkgbGF0ZXIuCgpTaWduZWQtb2ZmLWJ5OiBU dnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgpDYzogQ2hyaXMgV2lsc29u IDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+ClJldmlld2VkLWJ5OiBDaHJpcyBXaWxzb24gPGNo cmlzQGNocmlzLXdpbHNvbi5jby51az4gIyB2MQotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2dl bS9pOTE1X2dlbV9jb250ZXh0LmMgfCAgNyArKysrKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9n dC9pbnRlbF9lbmdpbmVfY3MuYyAgIHwgIDQgKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qv aW50ZWxfZW5naW5lX3VzZXIuYyB8ICAyIC0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRl bF9ndC5jICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2hh bmdjaGVjay5jICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVzZXQu YyAgICAgICB8IDEyICsrKysrKy0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2V4ZWNs aXN0LmMgICAgICAgICB8ICA0ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9zY2hlZHVs ZXIuYyAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9hY3RpdmUuYyAg ICAgICAgICB8ICA0ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAgICAg ICAgICAgfCAgNiArKystLS0KIDEwIGZpbGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDIw IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1 X2dlbV9jb250ZXh0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fY29udGV4 dC5jCmluZGV4IDVkODIyMWM3YmE4My4uODdkNjZkOGZhZmYxIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fY29udGV4dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2dlbS9pOTE1X2dlbV9jb250ZXh0LmMKQEAgLTIwMywxNCArMjAzLDE3IEBAIHN0YXRp YyBzdHJ1Y3QgaTkxNV9nZW1fZW5naW5lcyAqZGVmYXVsdF9lbmdpbmVzKHN0cnVjdCBpOTE1X2dl bV9jb250ZXh0ICpjdHgpCiAJZm9yX2VhY2hfZW5naW5lKGVuZ2luZSwgZ3QsIGlkKSB7CiAJCXN0 cnVjdCBpbnRlbF9jb250ZXh0ICpjZTsKIAorCQlpZiAoZW5naW5lLT5sZWdhY3lfaWR4ID09IC0x KQorCQkJY29udGludWU7CisKIAkJY2UgPSBpbnRlbF9jb250ZXh0X2NyZWF0ZShjdHgsIGVuZ2lu ZSk7CiAJCWlmIChJU19FUlIoY2UpKSB7CiAJCQlfX2ZyZWVfZW5naW5lcyhlLCBpZCk7CiAJCQly ZXR1cm4gRVJSX0NBU1QoY2UpOwogCQl9CiAKLQkJZS0+ZW5naW5lc1tpZF0gPSBjZTsKLQkJZS0+ bnVtX2VuZ2luZXMgPSBpZCArIDE7CisJCWUtPmVuZ2luZXNbZW5naW5lLT5sZWdhY3lfaWR4XSA9 IGNlOworCQllLT5udW1fZW5naW5lcyA9IGVuZ2luZS0+bGVnYWN5X2lkeCArIDE7CiAJfQogCiAJ cmV0dXJuIGU7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdp bmVfY3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2VuZ2luZV9jcy5jCmluZGV4 IDUwNTFhMWZkMjU2NS4uZDFhNzUyYTY2NGVjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9ndC9pbnRlbF9lbmdpbmVfY3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9p bnRlbF9lbmdpbmVfY3MuYwpAQCAtMjkzLDYgKzI5Myw3IEBAIHN0YXRpYyBpbnQgaW50ZWxfZW5n aW5lX3NldHVwKHN0cnVjdCBpbnRlbF9ndCAqZ3QsIGVudW0gaW50ZWxfZW5naW5lX2lkIGlkKQog CUJVSUxEX0JVR19PTihCSVRTX1BFUl9UWVBFKGVuZ2luZS0+bWFzaykgPCBJOTE1X05VTV9FTkdJ TkVTKTsKIAogCWVuZ2luZS0+aWQgPSBpZDsKKwllbmdpbmUtPmxlZ2FjeV9pZHggPSAtMTsKIAll bmdpbmUtPm1hc2sgPSBCSVQoaWQpOwogCWVuZ2luZS0+aTkxNSA9IGd0LT5pOTE1OwogCWVuZ2lu ZS0+Z3QgPSBndDsKQEAgLTMzMCw3ICszMzEsMTAgQEAgc3RhdGljIGludCBpbnRlbF9lbmdpbmVf c2V0dXAoc3RydWN0IGludGVsX2d0ICpndCwgZW51bSBpbnRlbF9lbmdpbmVfaWQgaWQpCiAJZ3Qt PmVuZ2luZV9jbGFzc1tpbmZvLT5jbGFzc11baW5mby0+aW5zdGFuY2VdID0gZW5naW5lOwogCiAJ aW50ZWxfZW5naW5lX2FkZF91c2VyKGVuZ2luZSk7CisJR0VNX0JVR19PTihpZCA+PSBBUlJBWV9T SVpFKGd0LT5pOTE1LT5lbmdpbmUpKTsKIAlndC0+aTkxNS0+ZW5naW5lW2lkXSA9IGVuZ2luZTsK KwlHRU1fQlVHX09OKGlkID49IEFSUkFZX1NJWkUoZ3QtPmVuZ2luZSkpOworCWd0LT5lbmdpbmVb aWRdID0gZW5naW5lOwogCiAJcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfdXNlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qv aW50ZWxfZW5naW5lX3VzZXIuYwppbmRleCA3N2NkNWRlODM5MzAuLmU5ZjNmYmFhNzRhOCAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3VzZXIuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfdXNlci5jCkBAIC0xODMsOCAr MTgzLDYgQEAgc3RhdGljIHZvaWQgYWRkX2xlZ2FjeV9yaW5nKHN0cnVjdCBsZWdhY3lfcmluZyAq cmluZywKIAlpZiAodW5saWtlbHkoaWR4ID09IC0xKSkKIAkJcmV0dXJuOwogCi0JR0VNX0JVR19P TihpZHggPj0gQVJSQVlfU0laRShyaW5nLT5ndC0+ZW5naW5lKSk7Ci0JcmluZy0+Z3QtPmVuZ2lu ZVtpZHhdID0gZW5naW5lOwogCXJpbmctPmluc3RhbmNlKys7CiAKIAllbmdpbmUtPmxlZ2FjeV9p ZHggPSBpZHg7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndC5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZ3QuYwppbmRleCBiMzYxOWEyYTVkMGUu LmM5OWI2YjJmMzhjMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxf Z3QuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndC5jCkBAIC0xODYsNyAr MTg2LDcgQEAgaW50ZWxfZ3RfY2xlYXJfZXJyb3JfcmVnaXN0ZXJzKHN0cnVjdCBpbnRlbF9ndCAq Z3QsCiAJCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKIAkJZW51bSBpbnRlbF9lbmdp bmVfaWQgaWQ7CiAKLQkJZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGk5MTUsIGVuZ2lu ZV9tYXNrLCBpZCkKKwkJZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGd0LCBlbmdpbmVf bWFzaywgaWQpCiAJCQlnZW44X2NsZWFyX2VuZ2luZV9lcnJvcl9yZWdpc3RlcihlbmdpbmUpOwog CX0KIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2hhbmdjaGVj ay5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfaGFuZ2NoZWNrLmMKaW5kZXggYzE0 ZGJlYjNjY2MzLi5iMmFmNzM5ODRmOTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2d0L2ludGVsX2hhbmdjaGVjay5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVs X2hhbmdjaGVjay5jCkBAIC0yMzcsNyArMjM3LDcgQEAgc3RhdGljIHZvaWQgaGFuZ2NoZWNrX2Rl Y2xhcmVfaGFuZyhzdHJ1Y3QgaW50ZWxfZ3QgKmd0LAogCQlodW5nICY9IH5zdHVjazsKIAlsZW4g PSBzY25wcmludGYobXNnLCBzaXplb2YobXNnKSwKIAkJCSIlcyBvbiAiLCBzdHVjayA9PSBodW5n ID8gIm5vIHByb2dyZXNzIiA6ICJoYW5nIik7Ci0JZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdp bmUsIGd0LT5pOTE1LCBodW5nLCB0bXApCisJZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUs IGd0LCBodW5nLCB0bXApCiAJCWxlbiArPSBzY25wcmludGYobXNnICsgbGVuLCBzaXplb2YobXNn KSAtIGxlbiwKIAkJCQkgIiVzLCAiLCBlbmdpbmUtPm5hbWUpOwogCW1zZ1tsZW4tMl0gPSAnXDAn OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVzZXQuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX3Jlc2V0LmMKaW5kZXggNDc3YmZhZmRiMTAzLi5i MTkxYjA3NDU3MDMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX3Jl c2V0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVzZXQuYwpAQCAtMjk4 LDcgKzI5OCw3IEBAIHN0YXRpYyBpbnQgZ2VuNl9yZXNldF9lbmdpbmVzKHN0cnVjdCBpbnRlbF9n dCAqZ3QsCiAJCWludGVsX2VuZ2luZV9tYXNrX3QgdG1wOwogCiAJCWh3X21hc2sgPSAwOwotCQlm b3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZ3QtPmk5MTUsIGVuZ2luZV9tYXNrLCB0bXAp IHsKKwkJZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGd0LCBlbmdpbmVfbWFzaywgdG1w KSB7CiAJCQlHRU1fQlVHX09OKGVuZ2luZS0+aWQgPj0gQVJSQVlfU0laRShod19lbmdpbmVfbWFz aykpOwogCQkJaHdfbWFzayB8PSBod19lbmdpbmVfbWFza1tlbmdpbmUtPmlkXTsKIAkJfQpAQCAt NDMyLDcgKzQzMiw3IEBAIHN0YXRpYyBpbnQgZ2VuMTFfcmVzZXRfZW5naW5lcyhzdHJ1Y3QgaW50 ZWxfZ3QgKmd0LAogCQlod19tYXNrID0gR0VOMTFfR1JET01fRlVMTDsKIAl9IGVsc2UgewogCQlo d19tYXNrID0gMDsKLQkJZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGd0LT5pOTE1LCBl bmdpbmVfbWFzaywgdG1wKSB7CisJCWZvcl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCBndCwg ZW5naW5lX21hc2ssIHRtcCkgewogCQkJR0VNX0JVR19PTihlbmdpbmUtPmlkID49IEFSUkFZX1NJ WkUoaHdfZW5naW5lX21hc2spKTsKIAkJCWh3X21hc2sgfD0gaHdfZW5naW5lX21hc2tbZW5naW5l LT5pZF07CiAJCQlyZXQgPSBnZW4xMV9sb2NrX3NmYyhlbmdpbmUsICZod19tYXNrKTsKQEAgLTQ1 MSw3ICs0NTEsNyBAQCBzdGF0aWMgaW50IGdlbjExX3Jlc2V0X2VuZ2luZXMoc3RydWN0IGludGVs X2d0ICpndCwKIAkgKiBleHBpcmF0aW9uKS4KIAkgKi8KIAlpZiAoZW5naW5lX21hc2sgIT0gQUxM X0VOR0lORVMpCi0JCWZvcl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCBndC0+aTkxNSwgZW5n aW5lX21hc2ssIHRtcCkKKwkJZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGd0LCBlbmdp bmVfbWFzaywgdG1wKQogCQkJZ2VuMTFfdW5sb2NrX3NmYyhlbmdpbmUpOwogCiAJcmV0dXJuIHJl dDsKQEAgLTUxMCw3ICs1MTAsNyBAQCBzdGF0aWMgaW50IGdlbjhfcmVzZXRfZW5naW5lcyhzdHJ1 Y3QgaW50ZWxfZ3QgKmd0LAogCWludGVsX2VuZ2luZV9tYXNrX3QgdG1wOwogCWludCByZXQ7CiAK LQlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZ3QtPmk5MTUsIGVuZ2luZV9tYXNrLCB0 bXApIHsKKwlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZ3QsIGVuZ2luZV9tYXNrLCB0 bXApIHsKIAkJcmV0ID0gZ2VuOF9lbmdpbmVfcmVzZXRfcHJlcGFyZShlbmdpbmUpOwogCQlpZiAo cmV0ICYmICFyZXNldF9ub25fcmVhZHkpCiAJCQlnb3RvIHNraXBfcmVzZXQ7CkBAIC01MzYsNyAr NTM2LDcgQEAgc3RhdGljIGludCBnZW44X3Jlc2V0X2VuZ2luZXMoc3RydWN0IGludGVsX2d0ICpn dCwKIAkJcmV0ID0gZ2VuNl9yZXNldF9lbmdpbmVzKGd0LCBlbmdpbmVfbWFzaywgcmV0cnkpOwog CiBza2lwX3Jlc2V0OgotCWZvcl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCBndC0+aTkxNSwg ZW5naW5lX21hc2ssIHRtcCkKKwlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZ3QsIGVu Z2luZV9tYXNrLCB0bXApCiAJCWdlbjhfZW5naW5lX3Jlc2V0X2NhbmNlbChlbmdpbmUpOwogCiAJ cmV0dXJuIHJldDsKQEAgLTEyMDYsNyArMTIwNiw3IEBAIHZvaWQgaW50ZWxfZ3RfaGFuZGxlX2Vy cm9yKHN0cnVjdCBpbnRlbF9ndCAqZ3QsCiAJICogc2luZ2xlIHJlc2V0IGZhaWxzLgogCSAqLwog CWlmIChpbnRlbF9oYXNfcmVzZXRfZW5naW5lKGd0KSAmJiAhaW50ZWxfZ3RfaXNfd2VkZ2VkKGd0 KSkgewotCQlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgZ3QtPmk5MTUsIGVuZ2luZV9t YXNrLCB0bXApIHsKKwkJZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGd0LCBlbmdpbmVf bWFzaywgdG1wKSB7CiAJCQlCVUlMRF9CVUdfT04oSTkxNV9SRVNFVF9NT0RFU0VUID49IEk5MTVf UkVTRVRfRU5HSU5FKTsKIAkJCWlmICh0ZXN0X2FuZF9zZXRfYml0KEk5MTVfUkVTRVRfRU5HSU5F ICsgZW5naW5lLT5pZCwKIAkJCQkJICAgICAmZ3QtPnJlc2V0LmZsYWdzKSkKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9leGVjbGlzdC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZ3Z0L2V4ZWNsaXN0LmMKaW5kZXggZjIxYjhmYjViMzdlLi5kNmU3YTExODliYWQgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9leGVjbGlzdC5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2d2dC9leGVjbGlzdC5jCkBAIC01MzQsNyArNTM0LDcgQEAgc3RhdGljIHZv aWQgY2xlYW5fZXhlY2xpc3Qoc3RydWN0IGludGVsX3ZncHUgKnZncHUsCiAJc3RydWN0IGludGVs X3ZncHVfc3VibWlzc2lvbiAqcyA9ICZ2Z3B1LT5zdWJtaXNzaW9uOwogCWludGVsX2VuZ2luZV9t YXNrX3QgdG1wOwogCi0JZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGRldl9wcml2LCBl bmdpbmVfbWFzaywgdG1wKSB7CisJZm9yX2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsICZkZXZf cHJpdi0+Z3QsIGVuZ2luZV9tYXNrLCB0bXApIHsKIAkJa2ZyZWUocy0+cmluZ19zY2FuX2J1ZmZl cltlbmdpbmUtPmlkXSk7CiAJCXMtPnJpbmdfc2Nhbl9idWZmZXJbZW5naW5lLT5pZF0gPSBOVUxM OwogCQlzLT5yaW5nX3NjYW5fYnVmZmVyX3NpemVbZW5naW5lLT5pZF0gPSAwOwpAQCAtNTQ4LDcg KzU0OCw3IEBAIHN0YXRpYyB2b2lkIHJlc2V0X2V4ZWNsaXN0KHN0cnVjdCBpbnRlbF92Z3B1ICp2 Z3B1LAogCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKIAlpbnRlbF9lbmdpbmVfbWFz a190IHRtcDsKIAotCWZvcl9lYWNoX2VuZ2luZV9tYXNrZWQoZW5naW5lLCBkZXZfcHJpdiwgZW5n aW5lX21hc2ssIHRtcCkKKwlmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgJmRldl9wcml2 LT5ndCwgZW5naW5lX21hc2ssIHRtcCkKIAkJaW5pdF92Z3B1X2V4ZWNsaXN0KHZncHUsIGVuZ2lu ZS0+aWQpOwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvc2NoZWR1 bGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvc2NoZWR1bGVyLmMKaW5kZXggNjg1MGYx ZjQwMjQxLi45ZWJiMjUzNDU1OGIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2 dC9zY2hlZHVsZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvc2NoZWR1bGVyLmMK QEAgLTg4Nyw3ICs4ODcsNyBAQCB2b2lkIGludGVsX3ZncHVfY2xlYW5fd29ya2xvYWRzKHN0cnVj dCBpbnRlbF92Z3B1ICp2Z3B1LAogCWludGVsX2VuZ2luZV9tYXNrX3QgdG1wOwogCiAJLyogZnJl ZSB0aGUgdW5zdWJtaXRlZCB3b3JrbG9hZHMgaW4gdGhlIHF1ZXVlcy4gKi8KLQlmb3JfZWFjaF9l bmdpbmVfbWFza2VkKGVuZ2luZSwgZGV2X3ByaXYsIGVuZ2luZV9tYXNrLCB0bXApIHsKKwlmb3Jf ZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZSwgJmRldl9wcml2LT5ndCwgZW5naW5lX21hc2ssIHRt cCkgewogCQlsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUocG9zLCBuLAogCQkJJnMtPndvcmtsb2Fk X3FfaGVhZFtlbmdpbmUtPmlkXSwgbGlzdCkgewogCQkJbGlzdF9kZWxfaW5pdCgmcG9zLT5saXN0 KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfYWN0aXZlLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2FjdGl2ZS5jCmluZGV4IGFhMzdjMDcwMDRiOS4uNzkyN2Ix YTBjN2E2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2FjdGl2ZS5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfYWN0aXZlLmMKQEAgLTU5MCw4ICs1OTAsOCBA QCBzdGF0aWMgc3RydWN0IGFjdGl2ZV9ub2RlICpyZXVzZV9pZGxlX2JhcnJpZXIoc3RydWN0IGk5 MTVfYWN0aXZlICpyZWYsIHU2NCBpZHgpCiBpbnQgaTkxNV9hY3RpdmVfYWNxdWlyZV9wcmVhbGxv Y2F0ZV9iYXJyaWVyKHN0cnVjdCBpOTE1X2FjdGl2ZSAqcmVmLAogCQkJCQkgICAgc3RydWN0IGlu dGVsX2VuZ2luZV9jcyAqZW5naW5lKQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 ID0gZW5naW5lLT5pOTE1OwogCWludGVsX2VuZ2luZV9tYXNrX3QgdG1wLCBtYXNrID0gZW5naW5l LT5tYXNrOworCXN0cnVjdCBpbnRlbF9ndCAqZ3QgPSBlbmdpbmUtPmd0OwogCXN0cnVjdCBsbGlz dF9ub2RlICpwb3MsICpuZXh0OwogCWludCBlcnI7CiAKQEAgLTYwMyw3ICs2MDMsNyBAQCBpbnQg aTkxNV9hY3RpdmVfYWNxdWlyZV9wcmVhbGxvY2F0ZV9iYXJyaWVyKHN0cnVjdCBpOTE1X2FjdGl2 ZSAqcmVmLAogCSAqIFdlIGNhbiB0aGVuIHVzZSB0aGUgcHJlYWxsb2NhdGVkIG5vZGVzIGluCiAJ ICogaTkxNV9hY3RpdmVfYWNxdWlyZV9iYXJyaWVyKCkKIAkgKi8KLQlmb3JfZWFjaF9lbmdpbmVf bWFza2VkKGVuZ2luZSwgaTkxNSwgbWFzaywgdG1wKSB7CisJZm9yX2VhY2hfZW5naW5lX21hc2tl ZChlbmdpbmUsIGd0LCBtYXNrLCB0bXApIHsKIAkJdTY0IGlkeCA9IGVuZ2luZS0+a2VybmVsX2Nv bnRleHQtPnRpbWVsaW5lLT5mZW5jZV9jb250ZXh0OwogCQlzdHJ1Y3QgYWN0aXZlX25vZGUgKm5v ZGU7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDg4OTU2ZjM3ZDk2Yy4uNDBlOTIzYjBj MmM4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTE0MTUsMTAgKzE0MTUsMTAgQEAgc3Rh dGljIGlubGluZSBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqcGRldl90b19pOTE1KHN0cnVjdCBw Y2lfZGV2ICpwZGV2KQogCQlmb3JfZWFjaF9pZiAoKGVuZ2luZV9fKSA9IChkZXZfcHJpdl9fKS0+ ZW5naW5lWyhpZF9fKV0pCiAKIC8qIEl0ZXJhdG9yIG92ZXIgc3Vic2V0IG9mIGVuZ2luZXMgc2Vs ZWN0ZWQgYnkgbWFzayAqLwotI2RlZmluZSBmb3JfZWFjaF9lbmdpbmVfbWFza2VkKGVuZ2luZV9f LCBkZXZfcHJpdl9fLCBtYXNrX18sIHRtcF9fKSBcCi0JZm9yICgodG1wX18pID0gKG1hc2tfXykg JiBJTlRFTF9JTkZPKGRldl9wcml2X18pLT5lbmdpbmVfbWFzazsgXAorI2RlZmluZSBmb3JfZWFj aF9lbmdpbmVfbWFza2VkKGVuZ2luZV9fLCBndF9fLCBtYXNrX18sIHRtcF9fKSBcCisJZm9yICgo dG1wX18pID0gKG1hc2tfXykgJiBJTlRFTF9JTkZPKChndF9fKS0+aTkxNSktPmVuZ2luZV9tYXNr OyBcCiAJICAgICAodG1wX18pID8gXAotCSAgICAgKChlbmdpbmVfXykgPSAoZGV2X3ByaXZfXykt PmVuZ2luZVtfX21hc2tfbmV4dF9iaXQodG1wX18pXSksIDEgOiBcCisJICAgICAoKGVuZ2luZV9f KSA9IChndF9fKS0+ZW5naW5lW19fbWFza19uZXh0X2JpdCh0bXBfXyldKSwgMSA6IFwKIAkgICAg IDA7KQogCiAjZGVmaW5lIHJiX3RvX3VhYmlfZW5naW5lKHJiKSBcCi0tIAoyLjIwLjEKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWls aW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==