From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH] drm/i915: Replace obj->pin_global with obj->frontbuffer Date: Fri, 23 Aug 2019 18:11:26 +0100 Message-ID: <20190823171126.27219-1-chris@chris-wilson.co.uk> References: <20190823162041.9482-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 8FF076ECFF for ; Fri, 23 Aug 2019 17:11:46 +0000 (UTC) In-Reply-To: <20190823162041.9482-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 b2JqLT5waW5fZ2xvYmFsIHdhcyBvcmlnaW5hbCB1c2VkIGFzIGEgbWVhbnMgdG8ga2VlcCB0aGUg c2hyaW5rZXIgb2ZmCnRoZSBhY3RpdmUgc2Nhbm91dCwgYnV0IHdlIHVzZSB0aGUgdm1hLT5waW5f Y291bnQgaXRzZWxmIGZvciB0aGF0IGFuZAp0aGUgb2JqLT5mcm9udGJ1ZmZlciB0byBkZWxheSBz aHJpbmtpbmcgYWN0aXZlIGZyYW1lYnVmZmVycy4gVGhlIG90aGVyCnJvbGUgdGhhdCBvYmotPnBp bl9nbG9iYWwgZ2FpbmVkIHdhcyBmb3Igc3BvdHRpbmcgZGlzcGxheSBvYmplY3RzIGluc2lkZQpH RU0gYW5kIHdvcmtpbmcgaGFyZGVyIHRvIGtlZXAgdGhvc2UgY29oZXJlbnQ7IGZvciB3aGljaCB3 ZSBjYW4gYWdhaW4Kc2ltcGx5IGluc3BlY3Qgb2JqLT5mcm9udGJ1ZmZlciBkaXJlY3RseS4KCkNv bWluZyB1cCBuZXh0LCB3ZSB3aWxsIHdhbnQgdG8gbWFuaXB1bGF0ZSB0aGUgcGluX2dsb2JhbCBj b3VudGVyCm91dHNpZGUgb2YgdGhlIHByaW5jaXBsZSBsb2Nrcywgc28gd291bGQgbmVlZCB0byBt YWtlIHBpbl9nbG9iYWwgYXRvbWljLgpIb3dldmVyLCBzaW5jZSBvYmotPmZyb250YnVmZmVyIGlz IGFscmVhZHkgbWFuYWdlZCBhdG9taWNhbGx5LCBpdCBtYWtlcwpzZW5zZSB0byB1c2UgdGhhdCB0 aGUgcHJpbWFyeSBrZXkgZm9yIGRpc3BsYXkgb2JqZWN0cyBpbnN0ZWFkIG9mIGhhdmluZwpwaW5f Z2xvYmFsLgoKVmlsbGUgcG9pbnRlZCBvdXQgdGhlIHByaW5jaXBsZSBkaWZmZXJlbmNlIGlzIHRo YXQgb2JqLT5mcm9udGJ1ZmZlciBpcwpzZXQgZm9yIGFzIGxvbmcgYXMgYW4gaW50ZWxfZnJhbWJ1 ZmZlciBpcyBhdHRhY2hlZCB0byBhbiBvYmplY3QsIGJ1dApvYmotPnBpbl9nbG9iYWwgd2FzIG9u bHkgcmFpc2VkIGZvciBhcyBsb25nIGFzIHRoZSBvYmplY3Qgd2FzIGFjdGl2ZS4gSW4KcHJhY3Rp Y2UsIHRoaXMgbWVhbnMgdGhhdCB3ZSBjb25zaWRlciB0aGUgb2JqZWN0IGFzIGJlaW5nIG9uIHRo ZSBzY2Fub3V0CmZvciBsb25nZXIgdGhhbiBpcyBzdHJpY3RseSByZXF1aXJlZCwgY2F1c2luZyB1 cyB0byBiZSBtb3JlIHByb2FjdGl2ZSBpbgpmbHVzaGluZyAtLSB0aG91Z2ggaXQgc2hvdWxkIGJl IHRydWUgdGhhdCB3ZSB3b3VsZCBoYXZlIGZsdXNoZWQKZXZlbnR1YWxseSB3aGVuIHRoZSBiYWNr IGJlY2FtZSB0aGUgZnJvbnQsIGV4Y2VwdCB0aGF0IG9uIHRoZSBmbGlwIHBhdGgKdGhhdCBmbHVz aCBpcyBheW5jIGJ1dCB3aGVuIGhpdCBmcm9tIGFub3RoZXIgaW9jdGwgaXQgd2lsbCBiZQpzeW5j aHJvbm91cy4KCnYyOiBpOTE1X2dlbV9vYmplY3RfaXNfZnJhbWVidWZmZXIoKQoKU2lnbmVkLW9m Zi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBNaWthIEt1 b3BwYWxhIDxtaWthLmt1b3BwYWxhQGxpbnV4LmludGVsLmNvbT4KQ2M6IFZpbGxlIFN5cmrDpGzD pCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Ci0tLQogLi4uL2dwdS9kcm0vaTkxNS9k aXNwbGF5L2ludGVsX2Zyb250YnVmZmVyLmMgIHwgMTMgKysrKystLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvZ2VtL2k5MTVfZ2VtX2RvbWFpbi5jICAgIHwgMzQgKysrKysrLS0tLS0tLS0tLS0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5oICAgIHwgIDMgKy0KIC4u Li9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdF90eXBlcy5oICB8ICAyIC0tCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fc2hyaW5rZXIuYyAgfCAxNSArKystLS0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgICAgICAgICAgIHwgMTIgKystLS0t LQogNiBmaWxlcyBjaGFuZ2VkLCAyOSBpbnNlcnRpb25zKCspLCA1MCBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Zyb250YnVmZmVy LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Zyb250YnVmZmVyLmMKaW5k ZXggNzE5Mzc5Nzc0ZmE1Li5mYzQwZGMxZmRiY2MgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfZnJvbnRidWZmZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Zyb250YnVmZmVyLmMKQEAgLTIyMCwxMSArMjIwLDE4IEBAIHN0 YXRpYyB2b2lkIGZyb250YnVmZmVyX3JlbGVhc2Uoc3RydWN0IGtyZWYgKnJlZikKIHsKIAlzdHJ1 Y3QgaW50ZWxfZnJvbnRidWZmZXIgKmZyb250ID0KIAkJY29udGFpbmVyX29mKHJlZiwgdHlwZW9m KCpmcm9udCksIHJlZik7CisJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiA9IGZyb250 LT5vYmo7CisJc3RydWN0IGk5MTVfdm1hICp2bWE7CiAKLQlmcm9udC0+b2JqLT5mcm9udGJ1ZmZl ciA9IE5VTEw7Ci0Jc3Bpbl91bmxvY2soJnRvX2k5MTUoZnJvbnQtPm9iai0+YmFzZS5kZXYpLT5m Yl90cmFja2luZy5sb2NrKTsKKwlzcGluX2xvY2soJm9iai0+dm1hLmxvY2spOworCWZvcl9lYWNo X2dndHRfdm1hKHZtYSwgb2JqKQorCQl2bWEtPmRpc3BsYXlfYWxpZ25tZW50ID0gSTkxNV9HVFRf TUlOX0FMSUdOTUVOVDsKKwlzcGluX3VubG9jaygmb2JqLT52bWEubG9jayk7CiAKLQlpOTE1X2dl bV9vYmplY3RfcHV0KGZyb250LT5vYmopOworCW9iai0+ZnJvbnRidWZmZXIgPSBOVUxMOworCXNw aW5fdW5sb2NrKCZ0b19pOTE1KG9iai0+YmFzZS5kZXYpLT5mYl90cmFja2luZy5sb2NrKTsKKwor CWk5MTVfZ2VtX29iamVjdF9wdXQob2JqKTsKIAlrZnJlZShmcm9udCk7CiB9CiAKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9kb21haW4uYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9kb21haW4uYwppbmRleCA5YzU4ZThmYWMxZDkuLjZh Zjc0MGE1ZTNkYiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2Vt X2RvbWFpbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9kb21haW4u YwpAQCAtMjcsNyArMjcsNyBAQCBzdGF0aWMgdm9pZCBfX2k5MTVfZ2VtX29iamVjdF9mbHVzaF9m b3JfZGlzcGxheShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQogCiB2b2lkIGk5MTVf Z2VtX29iamVjdF9mbHVzaF9pZl9kaXNwbGF5KHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpv YmopCiB7Ci0JaWYgKCFSRUFEX09OQ0Uob2JqLT5waW5fZ2xvYmFsKSkKKwlpZiAoIWk5MTVfZ2Vt X29iamVjdF9pc19mcmFtZWJ1ZmZlcihvYmopKQogCQlyZXR1cm47CiAKIAlpOTE1X2dlbV9vYmpl Y3RfbG9jayhvYmopOwpAQCAtNDIyLDEyICs0MjIsOCBAQCBpOTE1X2dlbV9vYmplY3RfcGluX3Rv X2Rpc3BsYXlfcGxhbmUoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAogCWFzc2Vy dF9vYmplY3RfaGVsZChvYmopOwogCi0JLyogTWFyayB0aGUgZ2xvYmFsIHBpbiBlYXJseSBzbyB0 aGF0IHdlIGFjY291bnQgZm9yIHRoZQotCSAqIGRpc3BsYXkgY29oZXJlbmN5IHdoaWxzdCBzZXR0 aW5nIHVwIHRoZSBjYWNoZSBkb21haW5zLgotCSAqLwotCW9iai0+cGluX2dsb2JhbCsrOwotCi0J LyogVGhlIGRpc3BsYXkgZW5naW5lIGlzIG5vdCBjb2hlcmVudCB3aXRoIHRoZSBMTEMgY2FjaGUg b24gZ2VuNi4gIEFzCisJLyoKKwkgKiBUaGUgZGlzcGxheSBlbmdpbmUgaXMgbm90IGNvaGVyZW50 IHdpdGggdGhlIExMQyBjYWNoZSBvbiBnZW42LiAgQXMKIAkgKiBhIHJlc3VsdCwgd2UgbWFrZSBz dXJlIHRoYXQgdGhlIHBpbm5pbmcgdGhhdCBpcyBhYm91dCB0byBvY2N1ciBpcwogCSAqIGRvbmUg d2l0aCB1bmNhY2hlZCBQVEVzLiBUaGlzIGlzIGxvd2VzdCBjb21tb24gZGVub21pbmF0b3IgZm9y IGFsbAogCSAqIGNoaXBzZXRzLgpAQCAtNDM5LDEyICs0MzUsMTEgQEAgaTkxNV9nZW1fb2JqZWN0 X3Bpbl90b19kaXNwbGF5X3BsYW5lKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJ cmV0ID0gaTkxNV9nZW1fb2JqZWN0X3NldF9jYWNoZV9sZXZlbChvYmosCiAJCQkJCSAgICAgIEhB U19XVCh0b19pOTE1KG9iai0+YmFzZS5kZXYpKSA/CiAJCQkJCSAgICAgIEk5MTVfQ0FDSEVfV1Qg OiBJOTE1X0NBQ0hFX05PTkUpOwotCWlmIChyZXQpIHsKLQkJdm1hID0gRVJSX1BUUihyZXQpOwot CQlnb3RvIGVycl91bnBpbl9nbG9iYWw7Ci0JfQorCWlmIChyZXQpCisJCXJldHVybiBFUlJfUFRS KHJldCk7CiAKLQkvKiBBcyB0aGUgdXNlciBtYXkgbWFwIHRoZSBidWZmZXIgb25jZSBwaW5uZWQg aW4gdGhlIGRpc3BsYXkgcGxhbmUKKwkvKgorCSAqIEFzIHRoZSB1c2VyIG1heSBtYXAgdGhlIGJ1 ZmZlciBvbmNlIHBpbm5lZCBpbiB0aGUgZGlzcGxheSBwbGFuZQogCSAqIChlLmcuIGxpYmttcyBm b3IgdGhlIGJvb3R1cCBzcGxhc2gpLCB3ZSBoYXZlIHRvIGVuc3VyZSB0aGF0IHdlCiAJICogYWx3 YXlzIHVzZSBtYXBfYW5kX2ZlbmNlYWJsZSBmb3IgYWxsIHNjYW5vdXQgYnVmZmVycy4gSG93ZXZl ciwKIAkgKiBpdCBtYXkgc2ltcGx5IGJlIHRvbyBiaWcgdG8gZml0IGludG8gbWFwcGFibGUsIGlu IHdoaWNoIGNhc2UKQEAgLTQ2MSwyMiArNDU2LDE5IEBAIGk5MTVfZ2VtX29iamVjdF9waW5fdG9f ZGlzcGxheV9wbGFuZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCWlmIChJU19F UlIodm1hKSkKIAkJdm1hID0gaTkxNV9nZW1fb2JqZWN0X2dndHRfcGluKG9iaiwgdmlldywgMCwg YWxpZ25tZW50LCBmbGFncyk7CiAJaWYgKElTX0VSUih2bWEpKQotCQlnb3RvIGVycl91bnBpbl9n bG9iYWw7CisJCXJldHVybiB2bWE7CiAKIAl2bWEtPmRpc3BsYXlfYWxpZ25tZW50ID0gbWF4X3Qo dTY0LCB2bWEtPmRpc3BsYXlfYWxpZ25tZW50LCBhbGlnbm1lbnQpOwogCiAJX19pOTE1X2dlbV9v YmplY3RfZmx1c2hfZm9yX2Rpc3BsYXkob2JqKTsKIAotCS8qIEl0IHNob3VsZCBub3cgYmUgb3V0 IG9mIGFueSBvdGhlciB3cml0ZSBkb21haW5zLCBhbmQgd2UgY2FuIHVwZGF0ZQorCS8qCisJICog SXQgc2hvdWxkIG5vdyBiZSBvdXQgb2YgYW55IG90aGVyIHdyaXRlIGRvbWFpbnMsIGFuZCB3ZSBj YW4gdXBkYXRlCiAJICogdGhlIGRvbWFpbiB2YWx1ZXMgZm9yIG91ciBjaGFuZ2VzLgogCSAqLwog CW9iai0+cmVhZF9kb21haW5zIHw9IEk5MTVfR0VNX0RPTUFJTl9HVFQ7CiAKIAlyZXR1cm4gdm1h OwotCi1lcnJfdW5waW5fZ2xvYmFsOgotCW9iai0+cGluX2dsb2JhbC0tOwotCXJldHVybiB2bWE7 CiB9CiAKIHN0YXRpYyB2b2lkIGk5MTVfZ2VtX29iamVjdF9idW1wX2luYWN0aXZlX2dndHQoc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKQEAgLTUxNCwxMiArNTA2LDYgQEAgaTkxNV9n ZW1fb2JqZWN0X3VucGluX2Zyb21fZGlzcGxheV9wbGFuZShzdHJ1Y3QgaTkxNV92bWEgKnZtYSkK IAogCWFzc2VydF9vYmplY3RfaGVsZChvYmopOwogCi0JaWYgKFdBUk5fT04ob2JqLT5waW5fZ2xv YmFsID09IDApKQotCQlyZXR1cm47Ci0KLQlpZiAoLS1vYmotPnBpbl9nbG9iYWwgPT0gMCkKLQkJ dm1hLT5kaXNwbGF5X2FsaWdubWVudCA9IEk5MTVfR1RUX01JTl9BTElHTk1FTlQ7Ci0KIAkvKiBC dW1wIHRoZSBMUlUgdG8gdHJ5IGFuZCBhdm9pZCBwcmVtYXR1cmUgZXZpY3Rpb24gd2hpbHN0IGZs aXBwaW5nICAqLwogCWk5MTVfZ2VtX29iamVjdF9idW1wX2luYWN0aXZlX2dndHQob2JqKTsKIApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5oCmluZGV4IDVlZmI5OTM2 ZTA1Yi4uMjliOWVkZGM0YzdmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0v aTkxNV9nZW1fb2JqZWN0LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2Vt X29iamVjdC5oCkBAIC00MDYsNyArNDA2LDggQEAgc3RhdGljIGlubGluZSBib29sIGNwdV93cml0 ZV9uZWVkc19jbGZsdXNoKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiAJaWYgKCEo b2JqLT5jYWNoZV9jb2hlcmVudCAmIEk5MTVfQk9fQ0FDSEVfQ09IRVJFTlRfRk9SX1dSSVRFKSkK IAkJcmV0dXJuIHRydWU7CiAKLQlyZXR1cm4gb2JqLT5waW5fZ2xvYmFsOyAvKiBjdXJyZW50bHkg aW4gdXNlIGJ5IEhXLCBrZWVwIGZsdXNoZWQgKi8KKwkvKiBDdXJyZW50bHkgaW4gdXNlIGJ5IEhX IChkaXNwbGF5IGVuZ2luZSk/IEtlZXAgZmx1c2hlZC4gKi8KKwlyZXR1cm4gaTkxNV9nZW1fb2Jq ZWN0X2lzX2ZyYW1lYnVmZmVyKG9iaik7CiB9CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBfX3N0YXJ0 X2NwdV93cml0ZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdF90eXBlcy5oIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdF90eXBlcy5oCmluZGV4IGVkZTBlYjQy MThhOC4uMTNiOWRjMGUxYTg5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0v aTkxNV9nZW1fb2JqZWN0X3R5cGVzLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5 MTVfZ2VtX29iamVjdF90eXBlcy5oCkBAIC0xNTIsOCArMTUyLDYgQEAgc3RydWN0IGRybV9pOTE1 X2dlbV9vYmplY3QgewogCiAJLyoqIENvdW50IG9mIFZNQSBhY3R1YWxseSBib3VuZCBieSB0aGlz IG9iamVjdCAqLwogCWF0b21pY190IGJpbmRfY291bnQ7Ci0JLyoqIENvdW50IG9mIGhvdyBtYW55 IGdsb2JhbCBWTUEgYXJlIGN1cnJlbnRseSBwaW5uZWQgZm9yIHVzZSBieSBIVyAqLwotCXVuc2ln bmVkIGludCBwaW5fZ2xvYmFsOwogCiAJc3RydWN0IHsKIAkJc3RydWN0IG11dGV4IGxvY2s7IC8q IHByb3RlY3RzIHRoZSBwYWdlcyBhbmQgdGhlaXIgdXNlICovCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fc2hyaW5rZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2dlbS9pOTE1X2dlbV9zaHJpbmtlci5jCmluZGV4IGVkZDIxZDE0ZTY0Zi4uNGU1NWNmYzJi MGRjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fc2hyaW5r ZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fc2hyaW5rZXIuYwpA QCAtNjEsNyArNjEsOCBAQCBzdGF0aWMgYm9vbCBjYW5fcmVsZWFzZV9wYWdlcyhzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqKQogCWlmICghaTkxNV9nZW1fb2JqZWN0X2lzX3Nocmlua2Fi bGUob2JqKSkKIAkJcmV0dXJuIGZhbHNlOwogCi0JLyogT25seSByZXBvcnQgdHJ1ZSBpZiBieSB1 bmJpbmRpbmcgdGhlIG9iamVjdCBhbmQgcHV0dGluZyBpdHMgcGFnZXMKKwkvKgorCSAqIE9ubHkg cmVwb3J0IHRydWUgaWYgYnkgdW5iaW5kaW5nIHRoZSBvYmplY3QgYW5kIHB1dHRpbmcgaXRzIHBh Z2VzCiAJICogd2UgY2FuIGFjdHVhbGx5IG1ha2UgZm9yd2FyZCBwcm9ncmVzcyB0b3dhcmRzIGZy ZWVpbmcgcGh5c2ljYWwKIAkgKiBwYWdlcy4KIAkgKgpAQCAtNzIsMTYgKzczLDggQEAgc3RhdGlj IGJvb2wgY2FuX3JlbGVhc2VfcGFnZXMoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikK IAlpZiAoYXRvbWljX3JlYWQoJm9iai0+bW0ucGFnZXNfcGluX2NvdW50KSA+IGF0b21pY19yZWFk KCZvYmotPmJpbmRfY291bnQpKQogCQlyZXR1cm4gZmFsc2U7CiAKLQkvKiBJZiBhbnkgdm1hIGFy ZSAicGVybWFuZW50bHkiIHBpbm5lZCwgaXQgd2lsbCBwcmV2ZW50IHVzIGZyb20KLQkgKiByZWNs YWltaW5nIHRoZSBvYmotPm1tLnBhZ2VzLiBXZSBvbmx5IGFsbG93IHNjYW5vdXQgb2JqZWN0cyB0 byBjbGFpbQotCSAqIGEgcGVybWFuZW50IHBpbiwgYWxvbmcgd2l0aCBhIGZldyBvdGhlcnMgbGlr ZSB0aGUgY29udGV4dCBvYmplY3RzLgotCSAqIFRvIHNpbXBsaWZ5IHRoZSBzY2FuLCBhbmQgdG8g YXZvaWQgd2Fsa2luZyB0aGUgbGlzdCBvZiB2bWEgdW5kZXIgdGhlCi0JICogb2JqZWN0LCB3ZSBq dXN0IGNoZWNrIHRoZSBjb3VudCBvZiBpdHMgcGVybWFuZW50bHkgcGlubmVkLgotCSAqLwotCWlm IChSRUFEX09OQ0Uob2JqLT5waW5fZ2xvYmFsKSkKLQkJcmV0dXJuIGZhbHNlOwotCi0JLyogV2Ug Y2FuIG9ubHkgcmV0dXJuIHBoeXNpY2FsIHBhZ2VzIHRvIHRoZSBzeXN0ZW0gaWYgd2UgY2FuIGVp dGhlcgorCS8qCisJICogV2UgY2FuIG9ubHkgcmV0dXJuIHBoeXNpY2FsIHBhZ2VzIHRvIHRoZSBz eXN0ZW0gaWYgd2UgY2FuIGVpdGhlcgogCSAqIGRpc2NhcmQgdGhlIGNvbnRlbnRzIChiZWNhdXNl IHRoZSB1c2VyIGhhcyBtYXJrZWQgdGhlbSBhcyBiZWluZwogCSAqIHB1cmdlYWJsZSkgb3IgaWYg d2UgY2FuIG1vdmUgdGhlaXIgY29udGVudHMgb3V0IHRvIHN3YXAuCiAJICovCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZGVidWdmcy5jCmluZGV4IGUxMDNmY2JhNjQzNS4uNGFhN2NhYTNhYTI4IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwpAQCAtNzcsMTEgKzc3LDYgQEAgc3RhdGljIGlu dCBpOTE1X2NhcGFiaWxpdGllcyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKmRhdGEpCiAJcmV0 dXJuIDA7CiB9CiAKLXN0YXRpYyBjaGFyIGdldF9waW5fZmxhZyhzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqb2JqKQotewotCXJldHVybiBvYmotPnBpbl9nbG9iYWwgPyAncCcgOiAnICc7Ci19 Ci0KIHN0YXRpYyBjaGFyIGdldF90aWxpbmdfZmxhZyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dCAqb2JqKQogewogCXN3aXRjaCAoaTkxNV9nZW1fb2JqZWN0X2dldF90aWxpbmcob2JqKSkgewpA QCAtMTQwLDkgKzEzNSw4IEBAIGRlc2NyaWJlX29iaihzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHN0cnVj dCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiAJc3RydWN0IGk5MTVfdm1hICp2bWE7CiAJaW50 IHBpbl9jb3VudCA9IDA7CiAKLQlzZXFfcHJpbnRmKG0sICIlcEs6ICVjJWMlYyVjICU4emRLaUIg JTAyeCAlMDJ4ICVzJXMlcyIsCisJc2VxX3ByaW50ZihtLCAiJXBLOiAlYyVjJWMgJTh6ZEtpQiAl MDJ4ICUwMnggJXMlcyVzIiwKIAkJICAgJm9iai0+YmFzZSwKLQkJICAgZ2V0X3Bpbl9mbGFnKG9i aiksCiAJCSAgIGdldF90aWxpbmdfZmxhZyhvYmopLAogCQkgICBnZXRfZ2xvYmFsX2ZsYWcob2Jq KSwKIAkJICAgZ2V0X3Bpbl9tYXBwZWRfZmxhZyhvYmopLApAQCAtMjIxLDggKzIxNSw4IEBAIGRl c2NyaWJlX29iaihzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0 ICpvYmopCiAJc2VxX3ByaW50ZihtLCAiIChwaW5uZWQgeCAlZCkiLCBwaW5fY291bnQpOwogCWlm IChvYmotPnN0b2xlbikKIAkJc2VxX3ByaW50ZihtLCAiIChzdG9sZW46ICUwOGxseCkiLCBvYmot PnN0b2xlbi0+c3RhcnQpOwotCWlmIChvYmotPnBpbl9nbG9iYWwpCi0JCXNlcV9wcmludGYobSwg IiAoZ2xvYmFsKSIpOworCWlmIChpOTE1X2dlbV9vYmplY3RfaXNfZnJhbWVidWZmZXIob2JqKSkK KwkJc2VxX3ByaW50ZihtLCAiIChmYikiKTsKIAogCWVuZ2luZSA9IGk5MTVfZ2VtX29iamVjdF9s YXN0X3dyaXRlX2VuZ2luZShvYmopOwogCWlmIChlbmdpbmUpCi0tIAoyLjIzLjAKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5n IGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==