From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 404296EB52 for ; Fri, 29 Jan 2021 14:45:30 +0000 (UTC) From: =?UTF-8?q?Zbigniew=20Kempczy=C5=84ski?= Date: Fri, 29 Jan 2021 15:44:35 +0100 Message-Id: <20210129144454.121178-13-zbigniew.kempczynski@intel.com> In-Reply-To: <20210129144454.121178-1-zbigniew.kempczynski@intel.com> References: <20210129144454.121178-1-zbigniew.kempczynski@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v18 12/31] lib/intel_batchbuffer: Add tracking intel_buf to intel_bb List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org List-ID: RnJvbSBub3cgb24gaW50ZWxfYmIgc3RhcnRzIHRyYWNraW5nIGFkZGVkL3JlbW92ZWQgaW50ZWxf YnVmcy4KV2UncmUgc2FmZSBub3cgcmVnYXJkbGVzcyBvcmRlciBvZiBpbnRlbF9idWYgY2xvc2Uv ZGVzdHJveQpvciBpbnRlbF9iYiBkZXN0cm95IHBhdGhzLgoKV2hlbiBpbnRlbF9idWYgaXMgY2xv c2VkL2Rlc3Ryb3llZCBmaXJzdCBhbmQgaXQgd2FzIHByZXZpb3VzbHkgYWRkZWQKdG8gaW50ZWxf YmIgaXQgY2FsbHMgdGhlIGNvZGUgd2hpY2ggcmVtb3ZlcyBpdHNlbGYgZnJvbSBpbnRlbF9iYi4K CldoZW4gaW50ZWxfYmIgaXMgZGVzdHJveWVkIGZpcnN0IGl0IGdvZXMgb3ZlciBhbGwgdHJhY2tl ZCBpbnRlbF9idWZzCmFuZCBjbGVhcnMgdHJhY2tpbmcgaW5mb3JtYXRpb24gYW5kIGNsZWFycyBw cmV2aW91cyBidWZmZXIgb2Zmc2V0CihpdCBzZXRzIHRvIElOVEVMX0JVRl9JTlZBTElEX0FERFJF U1MpLgoKU2lnbmVkLW9mZi1ieTogWmJpZ25pZXcgS2VtcGN6ecWEc2tpIDx6Ymlnbmlldy5rZW1w Y3p5bnNraUBpbnRlbC5jb20+CkNjOiBEb21pbmlrIEdyemVnb3J6ZWsgPGRvbWluaWsuZ3J6ZWdv cnpla0BpbnRlbC5jb20+CkNjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51 az4KLS0tCiBsaWIvaW50ZWxfYmF0Y2hidWZmZXIuYyB8IDcxICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tLS0tCiBsaWIvaW50ZWxfYmF0Y2hidWZmZXIuaCB8ICA1ICsrKwog bGliL2ludGVsX2J1Zm9wcy5jICAgICAgfCAxNyArKysrKysrLS0tCiBsaWIvaW50ZWxfYnVmb3Bz LmggICAgICB8ICA2ICsrKysKIDQgZmlsZXMgY2hhbmdlZCwgNzcgaW5zZXJ0aW9ucygrKSwgMjIg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliL2ludGVsX2JhdGNoYnVmZmVyLmMgYi9saWIv aW50ZWxfYmF0Y2hidWZmZXIuYwppbmRleCA0NmMyZGFkODQuLjUxY2U3MTcwOCAxMDA2NDQKLS0t IGEvbGliL2ludGVsX2JhdGNoYnVmZmVyLmMKKysrIGIvbGliL2ludGVsX2JhdGNoYnVmZmVyLmMK QEAgLTEzMTMsNiArMTMxMyw4IEBAIF9faW50ZWxfYmJfY3JlYXRlKGludCBpOTE1LCB1aW50MzJf dCBjdHgsIHVpbnQzMl90IHNpemUsIGJvb2wgZG9fcmVsb2NzLAogCQkJCSAgICAgZmFsc2UpOwog CWliYi0+YmF0Y2hfb2Zmc2V0ID0gb2JqZWN0LT5vZmZzZXQ7CiAKKwlJR1RfSU5JVF9MSVNUX0hF QUQoJmliYi0+aW50ZWxfYnVmcyk7CisKIAlpYmItPnJlZmNvdW50ID0gMTsKIAogCXJldHVybiBp YmI7CkBAIC0xNDQzLDYgKzE0NDUsMTUgQEAgc3RhdGljIHZvaWQgX19pbnRlbF9iYl9kZXN0cm95 X2NhY2hlKHN0cnVjdCBpbnRlbF9iYiAqaWJiKQogCWliYi0+cm9vdCA9IE5VTEw7CiB9CiAKK3N0 YXRpYyB2b2lkIF9faW50ZWxfYmJfcmVtb3ZlX2ludGVsX2J1ZnMoc3RydWN0IGludGVsX2JiICpp YmIpCit7CisJc3RydWN0IGludGVsX2J1ZiAqZW50cnksICp0bXA7CisKKwlpZ3RfbGlzdF9mb3Jf ZWFjaF9lbnRyeV9zYWZlKGVudHJ5LCB0bXAsICZpYmItPmludGVsX2J1ZnMsIGxpbmspIHsKKwkJ aW50ZWxfYmJfcmVtb3ZlX2ludGVsX2J1ZihpYmIsIGVudHJ5KTsKKwl9Cit9CisKIC8qKgogICog aW50ZWxfYmJfZGVzdHJveToKICAqIEBpYmI6IHBvaW50ZXIgdG8gaW50ZWxfYmIKQEAgLTE0NTYs NiArMTQ2Nyw3IEBAIHZvaWQgaW50ZWxfYmJfZGVzdHJveShzdHJ1Y3QgaW50ZWxfYmIgKmliYikK IAlpYmItPnJlZmNvdW50LS07CiAJaWd0X2Fzc2VydF9mKGliYi0+cmVmY291bnQgPT0gMCwgIlRy eWluZyB0byBkZXN0cm95IHJlZmVyZW5jZWQgYmIhIik7CiAKKwlfX2ludGVsX2JiX3JlbW92ZV9p bnRlbF9idWZzKGliYik7CiAJX19pbnRlbF9iYl9kZXN0cm95X3JlbG9jYXRpb25zKGliYik7CiAJ X19pbnRlbF9iYl9kZXN0cm95X29iamVjdHMoaWJiKTsKIAlfX2ludGVsX2JiX2Rlc3Ryb3lfY2Fj aGUoaWJiKTsKQEAgLTE4MTAsMjQgKzE4MjIsMTMgQEAgaW50ZWxfYmJfYWRkX29iamVjdChzdHJ1 Y3QgaW50ZWxfYmIgKmliYiwgdWludDMyX3QgaGFuZGxlLCB1aW50NjRfdCBzaXplLAogCiAJb2Jq ZWN0LT5vZmZzZXQgPSBvZmZzZXQ7CiAKLQkvKiBMaW1pdCBjdXJyZW50IG9mZnNldCB0byBndHQg c2l6ZSAqLwotCWlmIChvZmZzZXQgIT0gSU5URUxfQlVGX0lOVkFMSURfQUREUkVTUykgewotCQlv YmplY3QtPm9mZnNldCA9IGdlbjhfY2Fub25pY2FsX2FkZHIob2Zmc2V0ICYgKGliYi0+Z3R0X3Np emUgLSAxKSk7Ci0KLQotCX0gZWxzZSB7Ci0JCW9iamVjdC0+b2Zmc2V0ID0gX19pbnRlbF9iYl9n ZXRfb2Zmc2V0KGliYiwKLQkJCQkJCSAgICAgICBoYW5kbGUsIHNpemUsCi0JCQkJCQkgICAgICAg b2JqZWN0LT5hbGlnbm1lbnQpOwotCX0KLQogCWlmICh3cml0ZSkKIAkJb2JqZWN0LT5mbGFncyB8 PSBFWEVDX09CSkVDVF9XUklURTsKIAogCWlmIChpYmItPnN1cHBvcnRzXzQ4Yl9hZGRyZXNzKQog CQlvYmplY3QtPmZsYWdzIHw9IEVYRUNfT0JKRUNUX1NVUFBPUlRTXzQ4Ql9BRERSRVNTOwogCi0J aWYgKGliYi0+dXNlc19mdWxsX3BwZ3R0ICYmIGliYi0+YWxsb2NhdG9yX3R5cGUgPT0gSU5URUxf QUxMT0NBVE9SX1NJTVBMRSkKKwlpZiAoaWJiLT51c2VzX2Z1bGxfcHBndHQgJiYgIWliYi0+ZW5m b3JjZV9yZWxvY3MpCiAJCW9iamVjdC0+ZmxhZ3MgfD0gRVhFQ19PQkpFQ1RfUElOTkVEOwogCiAJ cmV0dXJuIG9iamVjdDsKQEAgLTE4NjQsNiArMTg2NSw5IEBAIF9faW50ZWxfYmJfYWRkX2ludGVs X2J1ZihzdHJ1Y3QgaW50ZWxfYmIgKmliYiwgc3RydWN0IGludGVsX2J1ZiAqYnVmLAogewogCXN0 cnVjdCBkcm1faTkxNV9nZW1fZXhlY19vYmplY3QyICpvYmo7CiAKKwlpZ3RfYXNzZXJ0KGliYik7 CisJaWd0X2Fzc2VydChidWYpOworCWlndF9hc3NlcnQoIWJ1Zi0+aWJiIHx8IGJ1Zi0+aWJiID09 IGliYik7CiAJaWd0X2Fzc2VydChBTElHTihhbGlnbm1lbnQsIDQwOTYpID09IGFsaWdubWVudCk7 CiAKIAlpZiAoIWFsaWdubWVudCkgewpAQCAtMTg4OCw2ICsxODkyLDEzIEBAIF9faW50ZWxfYmJf YWRkX2ludGVsX2J1ZihzdHJ1Y3QgaW50ZWxfYmIgKmliYiwgc3RydWN0IGludGVsX2J1ZiAqYnVm LAogCWlmICghaWJiLT5lbmZvcmNlX3JlbG9jcykKIAkJb2JqLT5hbGlnbm1lbnQgPSBhbGlnbm1l bnQ7CiAKKwlpZiAoaWd0X2xpc3RfZW1wdHkoJmJ1Zi0+bGluaykpIHsKKwkJaWd0X2xpc3RfYWRk X3RhaWwoJmJ1Zi0+bGluaywgJmliYi0+aW50ZWxfYnVmcyk7CisJCWJ1Zi0+aWJiID0gaWJiOwor CX0gZWxzZSB7CisJCWlndF9hc3NlcnQoYnVmLT5pYmIgPT0gaWJiKTsKKwl9CisKIAlyZXR1cm4g b2JqOwogfQogCkBAIC0xOTA2LDE2ICsxOTE3LDM3IEBAIGludGVsX2JiX2FkZF9pbnRlbF9idWZf d2l0aF9hbGlnbm1lbnQoc3RydWN0IGludGVsX2JiICppYmIsIHN0cnVjdCBpbnRlbF9idWYgKmJ1 CiAKIGJvb2wgaW50ZWxfYmJfcmVtb3ZlX2ludGVsX2J1ZihzdHJ1Y3QgaW50ZWxfYmIgKmliYiwg c3RydWN0IGludGVsX2J1ZiAqYnVmKQogewotCWJvb2wgcmVtb3ZlZCA9IGludGVsX2JiX3JlbW92 ZV9vYmplY3QoaWJiLCBidWYtPmhhbmRsZSwKLQkJCQkJICAgICAgYnVmLT5hZGRyLm9mZnNldCwK LQkJCQkJICAgICAgaW50ZWxfYnVmX2JvX3NpemUoYnVmKSk7CisJYm9vbCByZW1vdmVkOworCisJ aWd0X2Fzc2VydChpYmIpOworCWlndF9hc3NlcnQoYnVmKTsKKwlpZ3RfYXNzZXJ0KCFidWYtPmli YiB8fCBidWYtPmliYiA9PSBpYmIpOworCisJcmVtb3ZlZCA9IGludGVsX2JiX3JlbW92ZV9vYmpl Y3QoaWJiLCBidWYtPmhhbmRsZSwKKwkJCQkJIGJ1Zi0+YWRkci5vZmZzZXQsCisJCQkJCSBpbnRl bF9idWZfYm9fc2l6ZShidWYpKTsKIAotCWlmIChyZW1vdmVkKQorCWlmIChyZW1vdmVkICYmICFp Z3RfbGlzdF9lbXB0eSgmYnVmLT5saW5rKSkgewogCQlidWYtPmFkZHIub2Zmc2V0ID0gSU5URUxf QlVGX0lOVkFMSURfQUREUkVTUzsKKwkJYnVmLT5pYmIgPSBOVUxMOworCQlpZ3RfbGlzdF9kZWwo JmJ1Zi0+bGluayk7CisJCUlHVF9JTklUX0xJU1RfSEVBRCgmYnVmLT5saW5rKTsKKwl9CiAKIAly ZXR1cm4gcmVtb3ZlZDsKIH0KIAordm9pZCBpbnRlbF9iYl9pbnRlbF9idWZfbGlzdChzdHJ1Y3Qg aW50ZWxfYmIgKmliYikKK3sKKwlzdHJ1Y3QgaW50ZWxfYnVmICplbnRyeTsKKworCWlndF9saXN0 X2Zvcl9lYWNoX2VudHJ5KGVudHJ5LCAmaWJiLT5pbnRlbF9idWZzLCBsaW5rKSB7CisJCWlndF9p bmZvKCJoYW5kbGU6ICV1LCBpYmI6ICVwLCBvZmZzZXQ6ICVseFxuIiwKKwkJCSBlbnRyeS0+aGFu ZGxlLCBlbnRyeS0+aWJiLAorCQkJIChsb25nKSBlbnRyeS0+YWRkci5vZmZzZXQpOworCX0KK30K Kwogc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgKgogaW50ZWxfYmJfZmluZF9vYmpl Y3Qoc3RydWN0IGludGVsX2JiICppYmIsIHVpbnQzMl90IGhhbmRsZSkKIHsKQEAgLTIzMTMsNyAr MjM0NSw3IEBAIHN0YXRpYyB2b2lkIHVwZGF0ZV9vZmZzZXRzKHN0cnVjdCBpbnRlbF9iYiAqaWJi LAogCiAjZGVmaW5lIExJTkVMRU4gNzYKIC8qCi0gKiBAX19pbnRlbF9iYl9leGVjOgorICogX19p bnRlbF9iYl9leGVjOgogICogQGliYjogcG9pbnRlciB0byBpbnRlbF9iYgogICogQGVuZF9vZmZz ZXQ6IG9mZnNldCBvZiB0aGUgbGFzdCBpbnN0cnVjdGlvbiBpbiB0aGUgYmIKICAqIEBmbGFnczog ZmxhZ3MgcGFzc2VkIGRpcmVjdGx5IHRvIGV4ZWNidWYKQEAgLTIzNTIsNiArMjM4NCw5IEBAIHN0 YXRpYyBpbnQgX19pbnRlbF9iYl9leGVjKHN0cnVjdCBpbnRlbF9iYiAqaWJiLCB1aW50MzJfdCBl bmRfb2Zmc2V0LAogCWlmIChpYmItPmR1bXBfYmFzZTY0KQogCQlpbnRlbF9iYl9kdW1wX2Jhc2U2 NChpYmIsIExJTkVMRU4pOwogCisJLyogRm9yIGRlYnVnZ2luZyBvbiBDSSwgcmVtb3ZlIGluIGZp bmFsIHNlcmllcyAqLworCWludGVsX2JiX2R1bXBfZXhlY2J1ZihpYmIsICZleGVjYnVmKTsKKwog CXJldCA9IF9fZ2VtX2V4ZWNidWZfd3IoaWJiLT5pOTE1LCAmZXhlY2J1Zik7CiAJaWYgKHJldCkg ewogCQlpbnRlbF9iYl9kdW1wX2V4ZWNidWYoaWJiLCAmZXhlY2J1Zik7CkBAIC0yNDUzLDcgKzI0 ODgsNyBAQCBib29sIGludGVsX2JiX29iamVjdF9vZmZzZXRfdG9fYnVmKHN0cnVjdCBpbnRlbF9i YiAqaWJiLCBzdHJ1Y3QgaW50ZWxfYnVmICpidWYpCiAJCXJldHVybiBmYWxzZTsKIAl9CiAKLQli dWYtPmFkZHIub2Zmc2V0ID0gKCpmb3VuZCktPm9mZnNldCAmIChpYmItPmd0dF9zaXplIC0gMSk7 CisJYnVmLT5hZGRyLm9mZnNldCA9ICgqZm91bmQpLT5vZmZzZXQ7CiAJYnVmLT5hZGRyLmN0eCA9 IGliYi0+Y3R4OwogCiAJcmV0dXJuIHRydWU7CmRpZmYgLS1naXQgYS9saWIvaW50ZWxfYmF0Y2hi dWZmZXIuaCBiL2xpYi9pbnRlbF9iYXRjaGJ1ZmZlci5oCmluZGV4IGI5YTRlZTdlOC4uODJkZjk5 MWJjIDEwMDY0NAotLS0gYS9saWIvaW50ZWxfYmF0Y2hidWZmZXIuaAorKysgYi9saWIvaW50ZWxf YmF0Y2hidWZmZXIuaApAQCAtNiw2ICs2LDcgQEAKICNpbmNsdWRlIDxpOTE1X2RybS5oPgogCiAj aW5jbHVkZSAiaWd0X2NvcmUuaCIKKyNpbmNsdWRlICJpZ3RfbGlzdC5oIgogI2luY2x1ZGUgImlu dGVsX3JlZy5oIgogI2luY2x1ZGUgImRybXRlc3QuaCIKICNpbmNsdWRlICJpbnRlbF9hbGxvY2F0 b3IuaCIKQEAgLTQ4MCw2ICs0ODEsOSBAQCBzdHJ1Y3QgaW50ZWxfYmIgewogCXVpbnQzMl90IG51 bV9yZWxvY3M7CiAJdWludDMyX3QgYWxsb2NhdGVkX3JlbG9jczsKIAorCS8qIFRyYWNrZWQgaW50 ZWxfYnVmcyAqLworCXN0cnVjdCBpZ3RfbGlzdF9oZWFkIGludGVsX2J1ZnM7CisKIAkvKgogCSAq IEJPIHJlY3JlYXRlIGluIHJlc2V0IHBhdGggb25seSB3aGVuIHJlZmNvdW50ID09IDAKIAkgKiBD dXJyZW50bHkgd2UgZG9uJ3QgbmVlZCB0byB1c2UgYXRvbWljcyBiZWNhdXNlIGludGVsX2JiCkBA IC01OTIsNiArNTk2LDcgQEAgc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgKgogaW50 ZWxfYmJfYWRkX2ludGVsX2J1Zl93aXRoX2FsaWdubWVudChzdHJ1Y3QgaW50ZWxfYmIgKmliYiwg c3RydWN0IGludGVsX2J1ZiAqYnVmLAogCQkJCSAgICAgIHVpbnQ2NF90IGFsaWdubWVudCwgYm9v bCB3cml0ZSk7CiBib29sIGludGVsX2JiX3JlbW92ZV9pbnRlbF9idWYoc3RydWN0IGludGVsX2Ji ICppYmIsIHN0cnVjdCBpbnRlbF9idWYgKmJ1Zik7Cit2b2lkIGludGVsX2JiX2ludGVsX2J1Zl9s aXN0KHN0cnVjdCBpbnRlbF9iYiAqaWJiKTsKIHN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY19vYmpl Y3QyICoKIGludGVsX2JiX2ZpbmRfb2JqZWN0KHN0cnVjdCBpbnRlbF9iYiAqaWJiLCB1aW50MzJf dCBoYW5kbGUpOwogCmRpZmYgLS1naXQgYS9saWIvaW50ZWxfYnVmb3BzLmMgYi9saWIvaW50ZWxf YnVmb3BzLmMKaW5kZXggNjI3YjRhMmJiLi4xNjZhOTU3ZjEgMTAwNjQ0Ci0tLSBhL2xpYi9pbnRl bF9idWZvcHMuYworKysgYi9saWIvaW50ZWxfYnVmb3BzLmMKQEAgLTcyNyw2ICs3MjcsNyBAQCBz dGF0aWMgdm9pZCBfX2ludGVsX2J1Zl9pbml0KHN0cnVjdCBidWZfb3BzICpib3BzLAogCiAJYnVm LT5ib3BzID0gYm9wczsKIAlidWYtPmFkZHIub2Zmc2V0ID0gSU5URUxfQlVGX0lOVkFMSURfQURE UkVTUzsKKwlJR1RfSU5JVF9MSVNUX0hFQUQoJmJ1Zi0+bGluayk7CiAKIAlpZiAoY29tcHJlc3Np b24pIHsKIAkJaW50IGF1eF93aWR0aCwgYXV4X2hlaWdodDsKQEAgLTgyMiwxNyArODIzLDI1IEBA IHZvaWQgaW50ZWxfYnVmX2luaXQoc3RydWN0IGJ1Zl9vcHMgKmJvcHMsCiAgKgogICogRnVuY3Rp b24gY2xvc2VzIGdlbSBCTyBpbnNpZGUgaW50ZWxfYnVmIGlmIGJvIGlzIG93bmVkIGJ5IGludGVs X2J1Zi4KICAqIEZvciBoYW5kbGUgcGFzc2VkIGZyb20gdGhlIGNhbGxlciBpbnRlbF9idWYgZG9l c24ndCB0YWtlIG93bmVyc2hpcCBhbmQKLSAqIGRvZXNuJ3QgY2xvc2UgaXQgaW4gY2xvc2UoKS9k ZXN0cm95KCkgcGF0aHMuCisgKiBkb2Vzbid0IGNsb3NlIGl0IGluIGNsb3NlKCkvZGVzdHJveSgp IHBhdGhzLiBXaGVuIGludGVsX2J1ZiB3YXMgcHJldmlvdXNseQorICogYWRkZWQgdG8gaW50ZWxf YmIgKGludGVsX2JiX2FkZF9pbnRlbF9idWYoKSBjYWxsKSBpdCBpcyB0cmFja2VkIHRoZXJlIGFu ZAorICogbXVzdCBiZSByZW1vdmVkIGZyb20gaXRzIGludGVybmFsIHN0cnVjdHVyZXMuCiAgKi8K IHZvaWQgaW50ZWxfYnVmX2Nsb3NlKHN0cnVjdCBidWZfb3BzICpib3BzLCBzdHJ1Y3QgaW50ZWxf YnVmICpidWYpCiB7CiAJaWd0X2Fzc2VydChib3BzKTsKIAlpZ3RfYXNzZXJ0KGJ1Zik7CiAKLQlp ZiAoYnVmLT5pc19vd25lcikgewotCQlpbnRlbF9hbGxvY2F0b3JfcmVtb3ZlX2hhbmRsZShib3Bz LT5mZCwgYnVmLT5oYW5kbGUpOwotCQlnZW1fY2xvc2UoYm9wcy0+ZmQsIGJ1Zi0+aGFuZGxlKTsK KwkvKiBJZiBidWYgaXMgdHJhY2tlZCBieSBzb21lIGludGVsX2JiIGVuc3VyZSBpdCB3aWxsIGJl IHJlbW92ZWQgdGhlcmUgKi8KKwlpZiAoYnVmLT5pYmIpIHsKKwkJaW50ZWxfYmJfcmVtb3ZlX2lu dGVsX2J1ZihidWYtPmliYiwgYnVmKTsKKwkJYnVmLT5hZGRyLm9mZnNldCA9IElOVEVMX0JVRl9J TlZBTElEX0FERFJFU1M7CisJCWJ1Zi0+aWJiID0gTlVMTDsKKwkJSUdUX0lOSVRfTElTVF9IRUFE KCZidWYtPmxpbmspOwogCX0KKworCWlmIChidWYtPmlzX293bmVyKQorCQlnZW1fY2xvc2UoYm9w cy0+ZmQsIGJ1Zi0+aGFuZGxlKTsKIH0KIAogLyoqCmRpZmYgLS1naXQgYS9saWIvaW50ZWxfYnVm b3BzLmggYi9saWIvaW50ZWxfYnVmb3BzLmgKaW5kZXggNTQ0ODBiZmY2Li4xYTNkODY5MjUgMTAw NjQ0Ci0tLSBhL2xpYi9pbnRlbF9idWZvcHMuaAorKysgYi9saWIvaW50ZWxfYnVmb3BzLmgKQEAg LTIsNiArMiw3IEBACiAjZGVmaW5lIF9fSU5URUxfQlVGT1BTX0hfXwogCiAjaW5jbHVkZSA8c3Rk aW50Lmg+CisjaW5jbHVkZSAiaWd0X2xpc3QuaCIKICNpbmNsdWRlICJpZ3RfYXV4LmgiCiAjaW5j bHVkZSAiaW50ZWxfYmF0Y2hidWZmZXIuaCIKIApAQCAtMTMsNiArMTQsNyBAQCBzdHJ1Y3QgYnVm X29wczsKIAogc3RydWN0IGludGVsX2J1ZiB7CiAJc3RydWN0IGJ1Zl9vcHMgKmJvcHM7CisKIAli b29sIGlzX293bmVyOwogCXVpbnQzMl90IGhhbmRsZTsKIAl1aW50NjRfdCBzaXplOwpAQCAtNDAs NiArNDIsMTAgQEAgc3RydWN0IGludGVsX2J1ZiB7CiAJCXVpbnQzMl90IGN0eDsKIAl9IGFkZHI7 CiAKKwkvKiBUcmFja2luZyAqLworCXN0cnVjdCBpbnRlbF9iYiAqaWJiOworCXN0cnVjdCBpZ3Rf bGlzdF9oZWFkIGxpbms7CisKIAkvKiBDUFUgbWFwcGluZyAqLwogCXVpbnQzMl90ICpwdHI7CiAJ Ym9vbCBjcHVfd3JpdGU7Ci0tIAoyLjI2LjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaWd0LWRldgo=