From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 09/17] drm/i915: Push the ring creation flags to the backend Date: Tue, 30 Jul 2019 14:30:27 +0100 Message-ID: <20190730133035.1977-10-chris@chris-wilson.co.uk> References: <20190730133035.1977-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 F30656E512 for ; Tue, 30 Jul 2019 13:30:55 +0000 (UTC) In-Reply-To: <20190730133035.1977-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 UHVzaCB0aGUgcmluZyBjcmVhdGlvbiBmbGFncyBmcm9tIHRoZSBvdXRlciBHRU0gY29udGV4dCB0 byB0aGUgaW5uZXIKaW50ZWxfY290bmV4dCB0byBhdm9pZCBhbiB1bnNpZ2h0bHkgYmFjay1yZWZl cmVuY2UgZnJvbSBpbnNpZGUgdGhlCmJhY2tlbmQuCgpTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxz b24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9n ZW0vaTkxNV9nZW1fY29udGV4dC5jICAgfCAyMSArKysrKysrKysrKy0tLS0tLQogLi4uL2dwdS9k cm0vaTkxNS9nZW0vaTkxNV9nZW1fY29udGV4dF90eXBlcy5oIHwgIDMgLS0tCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9ndC9pbnRlbF9jb250ZXh0LmMgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9ndC9pbnRlbF9jb250ZXh0LmggICAgICAgfCAgNSArKysrCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfY3MuYyAgICAgfCAgMiArKwogZHJpdmVycy9ncHUvZHJt L2k5MTUvZ3QvaW50ZWxfbHJjLmMgICAgICAgICAgIHwgIDUgKystLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvZ3QvaW50ZWxfcmluZ2J1ZmZlci5jICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2d0L21vY2tfZW5naW5lLmMgICAgICAgICB8ICA5ICsrKysrKy0tCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2RlYnVnZnMuYyAgICAgICAgICAgfCAyMyArKysrKysrKysrKystLS0tLS0t CiA5IGZpbGVzIGNoYW5nZWQsIDQ3IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9jb250ZXh0LmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fY29udGV4dC5jCmluZGV4IDFiM2RjNzI1 OGVmMi4uMmU4Y2VkY2UwNTlmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0v aTkxNV9nZW1fY29udGV4dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dl bV9jb250ZXh0LmMKQEAgLTQzNCw4ICs0MzQsNiBAQCBfX2NyZWF0ZV9jb250ZXh0KHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICppOTE1KQogCWk5MTVfZ2VtX2NvbnRleHRfc2V0X2Jhbm5hYmxlKGN0 eCk7CiAJaTkxNV9nZW1fY29udGV4dF9zZXRfcmVjb3ZlcmFibGUoY3R4KTsKIAotCWN0eC0+cmlu Z19zaXplID0gNCAqIFBBR0VfU0laRTsKLQogCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGN0 eC0+aGFuZ190aW1lc3RhbXApOyBpKyspCiAJCWN0eC0+aGFuZ190aW1lc3RhbXBbaV0gPSBqaWZm aWVzIC0gQ09OVEVYVF9GQVNUX0hBTkdfSklGRklFUzsKIApAQCAtNTY1LDggKzU2MywxNSBAQCBp OTE1X2dlbV9jb250ZXh0X2NyZWF0ZV9ndnQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlpOTE1 X2dlbV9jb250ZXh0X3NldF9jbG9zZWQoY3R4KTsgLyogbm90IHVzZXIgYWNjZXNzaWJsZSAqLwog CWk5MTVfZ2VtX2NvbnRleHRfY2xlYXJfYmFubmFibGUoY3R4KTsKIAlpOTE1X2dlbV9jb250ZXh0 X3NldF9mb3JjZV9zaW5nbGVfc3VibWlzc2lvbihjdHgpOwotCWlmICghVVNFU19HVUNfU1VCTUlT U0lPTih0b19pOTE1KGRldikpKQotCQljdHgtPnJpbmdfc2l6ZSA9IDUxMiAqIFBBR0VfU0laRTsg LyogTWF4IHJpbmcgYnVmZmVyIHNpemUgKi8KKwlpZiAoIVVTRVNfR1VDX1NVQk1JU1NJT04odG9f aTkxNShkZXYpKSkgeworCQljb25zdCB1bnNpZ25lZCBsb25nIHJpbmdfc2l6ZSA9IDUxMiAqIFNa XzRLOyAvKiBtYXggKi8KKwkJc3RydWN0IGk5MTVfZ2VtX2VuZ2luZXNfaXRlciBpdDsKKwkJc3Ry dWN0IGludGVsX2NvbnRleHQgKmNlOworCisJCWZvcl9lYWNoX2dlbV9lbmdpbmUoY2UsIGk5MTVf Z2VtX2NvbnRleHRfbG9ja19lbmdpbmVzKGN0eCksIGl0KQorCQkJY2UtPnJpbmcgPSBfX2ludGVs X2NvbnRleHRfcmluZ19zaXplKHJpbmdfc2l6ZSk7CisJCWk5MTVfZ2VtX2NvbnRleHRfdW5sb2Nr X2VuZ2luZXMoY3R4KTsKKwl9CiAKIAlHRU1fQlVHX09OKGk5MTVfZ2VtX2NvbnRleHRfaXNfa2Vy bmVsKGN0eCkpOwogb3V0OgpAQCAtNjA1LDcgKzYxMCw2IEBAIGk5MTVfZ2VtX2NvbnRleHRfY3Jl YXRlX2tlcm5lbChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwgaW50IHByaW8pCiAKIAlp OTE1X2dlbV9jb250ZXh0X2NsZWFyX2Jhbm5hYmxlKGN0eCk7CiAJY3R4LT5zY2hlZC5wcmlvcml0 eSA9IEk5MTVfVVNFUl9QUklPUklUWShwcmlvKTsKLQljdHgtPnJpbmdfc2l6ZSA9IFBBR0VfU0la RTsKIAogCUdFTV9CVUdfT04oIWk5MTVfZ2VtX2NvbnRleHRfaXNfa2VybmVsKGN0eCkpOwogCkBA IC0xNTg5LDYgKzE1OTMsNyBAQCBzZXRfZW5naW5lcyhzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAq Y3R4LAogCWZvciAobiA9IDA7IG4gPCBudW1fZW5naW5lczsgbisrKSB7CiAJCXN0cnVjdCBpOTE1 X2VuZ2luZV9jbGFzc19pbnN0YW5jZSBjaTsKIAkJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5n aW5lOworCQlzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2U7CiAKIAkJaWYgKGNvcHlfZnJvbV91c2Vy KCZjaSwgJnVzZXItPmVuZ2luZXNbbl0sIHNpemVvZihjaSkpKSB7CiAJCQlfX2ZyZWVfZW5naW5l cyhzZXQuZW5naW5lcywgbik7CkBAIC0xNjExLDExICsxNjE2LDEzIEBAIHNldF9lbmdpbmVzKHN0 cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgsCiAJCQlyZXR1cm4gLUVOT0VOVDsKIAkJfQogCi0J CXNldC5lbmdpbmVzLT5lbmdpbmVzW25dID0gaW50ZWxfY29udGV4dF9jcmVhdGUoY3R4LCBlbmdp bmUpOwotCQlpZiAoIXNldC5lbmdpbmVzLT5lbmdpbmVzW25dKSB7CisJCWNlID0gaW50ZWxfY29u dGV4dF9jcmVhdGUoY3R4LCBlbmdpbmUpOworCQlpZiAoIWNlKSB7CiAJCQlfX2ZyZWVfZW5naW5l cyhzZXQuZW5naW5lcywgbik7CiAJCQlyZXR1cm4gLUVOT01FTTsKIAkJfQorCisJCXNldC5lbmdp bmVzLT5lbmdpbmVzW25dID0gY2U7CiAJfQogCXNldC5lbmdpbmVzLT5udW1fZW5naW5lcyA9IG51 bV9lbmdpbmVzOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9n ZW1fY29udGV4dF90eXBlcy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2Nv bnRleHRfdHlwZXMuaAppbmRleCBhMDJkOTg0OTQwNzguLjI2MGQ1OWNjM2RlOCAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2NvbnRleHRfdHlwZXMuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fY29udGV4dF90eXBlcy5oCkBAIC0x NjksOSArMTY5LDYgQEAgc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgewogCiAJc3RydWN0IGk5MTVf c2NoZWRfYXR0ciBzY2hlZDsKIAotCS8qKiByaW5nX3NpemU6IHNpemUgZm9yIGFsbG9jYXRpbmcg dGhlIHBlci1lbmdpbmUgcmluZyBidWZmZXIgKi8KLQl1MzIgcmluZ19zaXplOwotCiAJLyoqIGd1 aWx0eV9jb3VudDogSG93IG1hbnkgdGltZXMgdGhpcyBjb250ZXh0IGhhcyBjYXVzZWQgYSBHUFUg aGFuZy4gKi8KIAlhdG9taWNfdCBndWlsdHlfY291bnQ7CiAJLyoqCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9jb250ZXh0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9ndC9pbnRlbF9jb250ZXh0LmMKaW5kZXggMzRjOGUzN2E3M2I4Li5kYjkyMzY1NzBmZjUgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2NvbnRleHQuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9jb250ZXh0LmMKQEAgLTIxNCw2ICsyMTQsNyBA QCBpbnRlbF9jb250ZXh0X2luaXQoc3RydWN0IGludGVsX2NvbnRleHQgKmNlLAogCWNlLT5lbmdp bmUgPSBlbmdpbmU7CiAJY2UtPm9wcyA9IGVuZ2luZS0+Y29wczsKIAljZS0+c3NldSA9IGVuZ2lu ZS0+c3NldTsKKwljZS0+cmluZyA9IF9faW50ZWxfY29udGV4dF9yaW5nX3NpemUoU1pfMTZLKTsK IAogCUlOSVRfTElTVF9IRUFEKCZjZS0+c2lnbmFsX2xpbmspOwogCUlOSVRfTElTVF9IRUFEKCZj ZS0+c2lnbmFscyk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9j b250ZXh0LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9jb250ZXh0LmgKaW5kZXgg MDdmOTkyNGRlNDhmLi4xM2YyOGRkMzE2YmMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2d0L2ludGVsX2NvbnRleHQuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRl bF9jb250ZXh0LmgKQEAgLTEzNiw0ICsxMzYsOSBAQCBpbnQgaW50ZWxfY29udGV4dF9wcmVwYXJl X3JlbW90ZV9yZXF1ZXN0KHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSwKIAogc3RydWN0IGk5MTVf cmVxdWVzdCAqaW50ZWxfY29udGV4dF9jcmVhdGVfcmVxdWVzdChzdHJ1Y3QgaW50ZWxfY29udGV4 dCAqY2UpOwogCitzdGF0aWMgaW5saW5lIHN0cnVjdCBpbnRlbF9yaW5nICpfX2ludGVsX2NvbnRl eHRfcmluZ19zaXplKHU2NCBzeikKK3sKKwlyZXR1cm4gdTY0X3RvX3B0cihzdHJ1Y3QgaW50ZWxf cmluZywgc3opOworfQorCiAjZW5kaWYgLyogX19JTlRFTF9DT05URVhUX0hfXyAqLwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX2NzLmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfY3MuYwppbmRleCA2NWNiZjFkOTExOGQuLjk3 Y2UzNTg5MzM4ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5n aW5lX2NzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX2NzLmMK QEAgLTc4Myw2ICs3ODMsOCBAQCBzdGF0aWMgaW50IHBpbl9jb250ZXh0KHN0cnVjdCBpOTE1X2dl bV9jb250ZXh0ICpjdHgsCiAJaWYgKElTX0VSUihjZSkpCiAJCXJldHVybiBQVFJfRVJSKGNlKTsK IAorCWNlLT5yaW5nID0gX19pbnRlbF9jb250ZXh0X3Jpbmdfc2l6ZShTWl80Syk7CisKIAllcnIg PSBpbnRlbF9jb250ZXh0X3BpbihjZSk7CiAJaW50ZWxfY29udGV4dF9wdXQoY2UpOwogCWlmIChl cnIpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9scmMuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2xyYy5jCmluZGV4IDIzMmY0MGZjYjQ5MC4uNWUx MTNkZGJlMjczIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9scmMu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9scmMuYwpAQCAtMzEwOCw5ICsz MTA4LDggQEAgc3RhdGljIGludCBleGVjbGlzdHNfY29udGV4dF9kZWZlcnJlZF9hbGxvYyhzdHJ1 Y3QgaW50ZWxfY29udGV4dCAqY2UsCiAJCWdvdG8gZXJyb3JfZGVyZWZfb2JqOwogCX0KIAotCXJp bmcgPSBpbnRlbF9lbmdpbmVfY3JlYXRlX3JpbmcoZW5naW5lLAotCQkJCQl0aW1lbGluZSwKLQkJ CQkJY2UtPmdlbV9jb250ZXh0LT5yaW5nX3NpemUpOworCXJpbmcgPSBpbnRlbF9lbmdpbmVfY3Jl YXRlX3JpbmcoZW5naW5lLCB0aW1lbGluZSwKKwkJCQkJKHVuc2lnbmVkIGxvbmcpY2UtPnJpbmcp OwogCWludGVsX3RpbWVsaW5lX3B1dCh0aW1lbGluZSk7CiAJaWYgKElTX0VSUihyaW5nKSkgewog CQlyZXQgPSBQVFJfRVJSKHJpbmcpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv Z3QvaW50ZWxfcmluZ2J1ZmZlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmlu Z2J1ZmZlci5jCmluZGV4IDhkMjRhNDllNTEzOS4uZWJkYTM3OWY3YmFjIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yaW5nYnVmZmVyLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmluZ2J1ZmZlci5jCkBAIC0yMzQyLDcgKzIzNDIsNyBAQCBp bnQgaW50ZWxfcmluZ19zdWJtaXNzaW9uX2luaXQoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5n aW5lKQogCX0KIAlHRU1fQlVHX09OKHRpbWVsaW5lLT5oYXNfaW5pdGlhbF9icmVhZGNydW1iKTsK IAotCXJpbmcgPSBpbnRlbF9lbmdpbmVfY3JlYXRlX3JpbmcoZW5naW5lLCB0aW1lbGluZSwgMzIg KiBQQUdFX1NJWkUpOworCXJpbmcgPSBpbnRlbF9lbmdpbmVfY3JlYXRlX3JpbmcoZW5naW5lLCB0 aW1lbGluZSwgU1pfMTZLKTsKIAlpbnRlbF90aW1lbGluZV9wdXQodGltZWxpbmUpOwogCWlmIChJ U19FUlIocmluZykpIHsKIAkJZXJyID0gUFRSX0VSUihyaW5nKTsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2d0L21vY2tfZW5naW5lLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9n dC9tb2NrX2VuZ2luZS5jCmluZGV4IDEwY2IzMTI0NjJlNS4uYmYyZGMxMTQyZjNjIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9tb2NrX2VuZ2luZS5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2d0L21vY2tfZW5naW5lLmMKQEAgLTEzMywxMyArMTMzLDE4IEBAIHN0YXRp YyB2b2lkIG1vY2tfY29udGV4dF91bnBpbihzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UpCiAJbW9j a190aW1lbGluZV91bnBpbihjZS0+cmluZy0+dGltZWxpbmUpOwogfQogCitzdGF0aWMgYm9vbCBo YXNfcmluZyhzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UpCit7CisJcmV0dXJuIGNlLT5yaW5nID4g X19pbnRlbF9jb250ZXh0X3Jpbmdfc2l6ZShTWl8xNkspOworfQorCiBzdGF0aWMgdm9pZCBtb2Nr X2NvbnRleHRfZGVzdHJveShzdHJ1Y3Qga3JlZiAqcmVmKQogewogCXN0cnVjdCBpbnRlbF9jb250 ZXh0ICpjZSA9IGNvbnRhaW5lcl9vZihyZWYsIHR5cGVvZigqY2UpLCByZWYpOwogCiAJR0VNX0JV R19PTihpbnRlbF9jb250ZXh0X2lzX3Bpbm5lZChjZSkpOwogCi0JaWYgKGNlLT5yaW5nKQorCWlm IChoYXNfcmluZyhjZSkpCiAJCW1vY2tfcmluZ19mcmVlKGNlLT5yaW5nKTsKIAogCWludGVsX2Nv bnRleHRfZmluaShjZSk7CkBAIC0xNTAsNyArMTU1LDcgQEAgc3RhdGljIGludCBtb2NrX2NvbnRl eHRfcGluKHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSkKIHsKIAlpbnQgcmV0OwogCi0JaWYgKCFj ZS0+cmluZykgeworCWlmICghaGFzX3JpbmcoY2UpKSB7CiAJCWNlLT5yaW5nID0gbW9ja19yaW5n KGNlLT5lbmdpbmUpOwogCQlpZiAoIWNlLT5yaW5nKQogCQkJcmV0dXJuIC1FTk9NRU07CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCmluZGV4IDI0Nzg3YmI0OGM5Zi4uMGZmNTA0Zjc5Nzc5 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwpAQCAtMzI4LDEwICszMjgsMTQgQEAg c3RhdGljIHZvaWQgcHJpbnRfY29udGV4dF9zdGF0cyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sCiAKIAkJ Zm9yX2VhY2hfZ2VtX2VuZ2luZShjZSwKIAkJCQkgICAgaTkxNV9nZW1fY29udGV4dF9sb2NrX2Vu Z2luZXMoY3R4KSwgaXQpIHsKLQkJCWlmIChjZS0+c3RhdGUpCi0JCQkJcGVyX2ZpbGVfc3RhdHMo MCwgY2UtPnN0YXRlLT5vYmosICZrc3RhdHMpOwotCQkJaWYgKGNlLT5yaW5nKQorCQkJaW50ZWxf Y29udGV4dF9sb2NrX3Bpbm5lZChjZSk7CisJCQlpZiAoaW50ZWxfY29udGV4dF9pc19waW5uZWQo Y2UpKSB7CisJCQkJaWYgKGNlLT5zdGF0ZSkKKwkJCQkJcGVyX2ZpbGVfc3RhdHMoMCwKKwkJCQkJ CSAgICAgICBjZS0+c3RhdGUtPm9iaiwgJmtzdGF0cyk7CiAJCQkJcGVyX2ZpbGVfc3RhdHMoMCwg Y2UtPnJpbmctPnZtYS0+b2JqLCAma3N0YXRzKTsKKwkJCX0KKwkJCWludGVsX2NvbnRleHRfdW5s b2NrX3Bpbm5lZChjZSk7CiAJCX0KIAkJaTkxNV9nZW1fY29udGV4dF91bmxvY2tfZW5naW5lcyhj dHgpOwogCkBAIC0xNjc3LDEyICsxNjgxLDE1IEBAIHN0YXRpYyBpbnQgaTkxNV9jb250ZXh0X3N0 YXR1cyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKnVudXNlZCkKIAogCQlmb3JfZWFjaF9nZW1f ZW5naW5lKGNlLAogCQkJCSAgICBpOTE1X2dlbV9jb250ZXh0X2xvY2tfZW5naW5lcyhjdHgpLCBp dCkgewotCQkJc2VxX3ByaW50ZihtLCAiJXM6ICIsIGNlLT5lbmdpbmUtPm5hbWUpOwotCQkJaWYg KGNlLT5zdGF0ZSkKLQkJCQlkZXNjcmliZV9vYmoobSwgY2UtPnN0YXRlLT5vYmopOwotCQkJaWYg KGNlLT5yaW5nKQorCQkJaW50ZWxfY29udGV4dF9sb2NrX3Bpbm5lZChjZSk7CisJCQlpZiAoaW50 ZWxfY29udGV4dF9pc19waW5uZWQoY2UpKSB7CisJCQkJc2VxX3ByaW50ZihtLCAiJXM6ICIsIGNl LT5lbmdpbmUtPm5hbWUpOworCQkJCWlmIChjZS0+c3RhdGUpCisJCQkJCWRlc2NyaWJlX29iaiht LCBjZS0+c3RhdGUtPm9iaik7CiAJCQkJZGVzY3JpYmVfY3R4X3JpbmcobSwgY2UtPnJpbmcpOwot CQkJc2VxX3B1dGMobSwgJ1xuJyk7CisJCQkJc2VxX3B1dGMobSwgJ1xuJyk7CisJCQl9CisJCQlp bnRlbF9jb250ZXh0X3VubG9ja19waW5uZWQoY2UpOwogCQl9CiAJCWk5MTVfZ2VtX2NvbnRleHRf dW5sb2NrX2VuZ2luZXMoY3R4KTsKIAotLSAKMi4yMi4wCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZng=