From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 08/15] drm/i915: Pass vma to relocate entry Date: Thu, 16 Mar 2017 13:19:59 +0000 Message-ID: <20170316132006.7976-9-chris@chris-wilson.co.uk> References: <20170316132006.7976-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 mail-wm0-x244.google.com (mail-wm0-x244.google.com [IPv6:2a00:1450:400c:c09::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id D9A2D6EAE2 for ; Thu, 16 Mar 2017 13:20:20 +0000 (UTC) Received: by mail-wm0-x244.google.com with SMTP id n11so9737585wma.0 for ; Thu, 16 Mar 2017 06:20:20 -0700 (PDT) In-Reply-To: <20170316132006.7976-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 V2UgY2FuIHNpbXBsaWZ5IG91ciB0cmFja2luZyBvZiBwZW5kaW5nIHdyaXRlcyBpbiBhbiBleGVj YnVmIHRvIHRoZQpzaW5nbGUgYml0IGluIHRoZSB2bWEtPmV4ZWNfZW50cnktPmZsYWdzLCBidXQg dGhhdCByZXF1aXJlcyB0aGUKcmVsb2NhdGlvbiBmdW5jdGlvbiBrbm93aW5nIHRoZSBvYmplY3Qn cyB2bWEuIFBhc3MgaXQgYWxvbmcuCgpTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNocmlz QGNocmlzLXdpbHNvbi5jby51az4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9l eGVjYnVmZmVyLmMgfCAxMDAgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBj aGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCA1OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKaW5kZXggNTkwYTkzYzQ4NTc0Li4zY2ZhZDY4 ZmM0NTIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZm ZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKQEAg LTYwNCw0MiArNjA0LDI1IEBAIHJlbG9jYXRlX2VudHJ5KHN0cnVjdCBkcm1faTkxNV9nZW1fb2Jq ZWN0ICpvYmosCiB9CiAKIHN0YXRpYyBpbnQKLWViX3JlbG9jYXRlX2VudHJ5KHN0cnVjdCBkcm1f aTkxNV9nZW1fb2JqZWN0ICpvYmosCitlYl9yZWxvY2F0ZV9lbnRyeShzdHJ1Y3QgaTkxNV92bWEg KnZtYSwKIAkJICBzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyICplYiwKIAkJICBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX3JlbG9jYXRpb25fZW50cnkgKnJlbG9jKQogewotCXN0cnVjdCBkcm1fZ2VtX29iamVj dCAqdGFyZ2V0X29iajsKLQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqdGFyZ2V0X2k5MTVf b2JqOwotCXN0cnVjdCBpOTE1X3ZtYSAqdGFyZ2V0X3ZtYTsKLQl1aW50NjRfdCB0YXJnZXRfb2Zm c2V0OworCXN0cnVjdCBpOTE1X3ZtYSAqdGFyZ2V0OworCXU2NCB0YXJnZXRfb2Zmc2V0OwogCWlu dCByZXQ7CiAKIAkvKiB3ZSd2ZSBhbHJlYWR5IGhvbGQgYSByZWZlcmVuY2UgdG8gYWxsIHZhbGlk IG9iamVjdHMgKi8KLQl0YXJnZXRfdm1hID0gZWJfZ2V0X3ZtYShlYiwgcmVsb2MtPnRhcmdldF9o YW5kbGUpOwotCWlmICh1bmxpa2VseSh0YXJnZXRfdm1hID09IE5VTEwpKQorCXRhcmdldCA9IGVi X2dldF92bWEoZWIsIHJlbG9jLT50YXJnZXRfaGFuZGxlKTsKKwlpZiAodW5saWtlbHkoIXRhcmdl dCkpCiAJCXJldHVybiAtRU5PRU5UOwotCXRhcmdldF9pOTE1X29iaiA9IHRhcmdldF92bWEtPm9i ajsKLQl0YXJnZXRfb2JqID0gJnRhcmdldF92bWEtPm9iai0+YmFzZTsKLQotCXRhcmdldF9vZmZz ZXQgPSBnZW44X2Nhbm9uaWNhbF9hZGRyKHRhcmdldF92bWEtPm5vZGUuc3RhcnQpOwotCi0JLyog U2FuZHlicmlkZ2UgUFBHVFQgZXJyYXRhOiBXZSBuZWVkIGEgZ2xvYmFsIGd0dCBtYXBwaW5nIGZv ciBNSSBhbmQKLQkgKiBwaXBlX2NvbnRyb2wgd3JpdGVzIGJlY2F1c2UgdGhlIGdwdSBkb2Vzbid0 IHByb3Blcmx5IHJlZGlyZWN0IHRoZW0KLQkgKiB0aHJvdWdoIHRoZSBwcGd0dCBmb3Igbm9uX3Nl Y3VyZSBiYXRjaGJ1ZmZlcnMuICovCi0JaWYgKHVubGlrZWx5KElTX0dFTjYoZWItPmk5MTUpICYm Ci0JCSAgICAgcmVsb2MtPndyaXRlX2RvbWFpbiA9PSBJOTE1X0dFTV9ET01BSU5fSU5TVFJVQ1RJ T04pKSB7Ci0JCXJldCA9IGk5MTVfdm1hX2JpbmQodGFyZ2V0X3ZtYSwgdGFyZ2V0X2k5MTVfb2Jq LT5jYWNoZV9sZXZlbCwKLQkJCQkgICAgUElOX0dMT0JBTCk7Ci0JCWlmIChXQVJOX09OQ0UocmV0 LCAiVW5leHBlY3RlZCBmYWlsdXJlIHRvIGJpbmQgdGFyZ2V0IFZNQSEiKSkKLQkJCXJldHVybiBy ZXQ7Ci0JfQogCiAJLyogVmFsaWRhdGUgdGhhdCB0aGUgdGFyZ2V0IGlzIGluIGEgdmFsaWQgci93 IEdQVSBkb21haW4gKi8KIAlpZiAodW5saWtlbHkocmVsb2MtPndyaXRlX2RvbWFpbiAmIChyZWxv Yy0+d3JpdGVfZG9tYWluIC0gMSkpKSB7CiAJCURSTV9ERUJVRygicmVsb2Mgd2l0aCBtdWx0aXBs ZSB3cml0ZSBkb21haW5zOiAiCi0JCQkgICJvYmogJXAgdGFyZ2V0ICVkIG9mZnNldCAlZCAiCisJ CQkgICJ0YXJnZXQgJWQgb2Zmc2V0ICVkICIKIAkJCSAgInJlYWQgJTA4eCB3cml0ZSAlMDh4IiwK LQkJCSAgb2JqLCByZWxvYy0+dGFyZ2V0X2hhbmRsZSwKKwkJCSAgcmVsb2MtPnRhcmdldF9oYW5k bGUsCiAJCQkgIChpbnQpIHJlbG9jLT5vZmZzZXQsCiAJCQkgIHJlbG9jLT5yZWFkX2RvbWFpbnMs CiAJCQkgIHJlbG9jLT53cml0ZV9kb21haW4pOwpAQCAtNjQ4LDQzICs2MzEsNTYgQEAgZWJfcmVs b2NhdGVfZW50cnkoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAlpZiAodW5saWtl bHkoKHJlbG9jLT53cml0ZV9kb21haW4gfCByZWxvYy0+cmVhZF9kb21haW5zKQogCQkgICAgICYg fkk5MTVfR0VNX0dQVV9ET01BSU5TKSkgewogCQlEUk1fREVCVUcoInJlbG9jIHdpdGggcmVhZC93 cml0ZSBub24tR1BVIGRvbWFpbnM6ICIKLQkJCSAgIm9iaiAlcCB0YXJnZXQgJWQgb2Zmc2V0ICVk ICIKKwkJCSAgInRhcmdldCAlZCBvZmZzZXQgJWQgIgogCQkJICAicmVhZCAlMDh4IHdyaXRlICUw OHgiLAotCQkJICBvYmosIHJlbG9jLT50YXJnZXRfaGFuZGxlLAorCQkJICByZWxvYy0+dGFyZ2V0 X2hhbmRsZSwKIAkJCSAgKGludCkgcmVsb2MtPm9mZnNldCwKIAkJCSAgcmVsb2MtPnJlYWRfZG9t YWlucywKIAkJCSAgcmVsb2MtPndyaXRlX2RvbWFpbik7CiAJCXJldHVybiAtRUlOVkFMOwogCX0K IAotCXRhcmdldF9vYmotPnBlbmRpbmdfcmVhZF9kb21haW5zIHw9IHJlbG9jLT5yZWFkX2RvbWFp bnM7Ci0JdGFyZ2V0X29iai0+cGVuZGluZ193cml0ZV9kb21haW4gfD0gcmVsb2MtPndyaXRlX2Rv bWFpbjsKKwlpZiAocmVsb2MtPndyaXRlX2RvbWFpbikKKwkJdGFyZ2V0LT5leGVjX2VudHJ5LT5m bGFncyB8PSBFWEVDX09CSkVDVF9XUklURTsKKworCS8qIFNhbmR5YnJpZGdlIFBQR1RUIGVycmF0 YTogV2UgbmVlZCBhIGdsb2JhbCBndHQgbWFwcGluZyBmb3IgTUkgYW5kCisJICogcGlwZV9jb250 cm9sIHdyaXRlcyBiZWNhdXNlIHRoZSBncHUgZG9lc24ndCBwcm9wZXJseSByZWRpcmVjdCB0aGVt CisJICogdGhyb3VnaCB0aGUgcHBndHQgZm9yIG5vbl9zZWN1cmUgYmF0Y2hidWZmZXJzLgorCSAq LworCWlmICh1bmxpa2VseShJU19HRU42KGViLT5pOTE1KSAmJgorCQkgICAgIHJlbG9jLT53cml0 ZV9kb21haW4gPT0gSTkxNV9HRU1fRE9NQUlOX0lOU1RSVUNUSU9OKSkgeworCQlyZXQgPSBpOTE1 X3ZtYV9iaW5kKHRhcmdldCwgdGFyZ2V0LT5vYmotPmNhY2hlX2xldmVsLAorCQkJCSAgICBQSU5f R0xPQkFMKTsKKwkJaWYgKFdBUk5fT05DRShyZXQsICJVbmV4cGVjdGVkIGZhaWx1cmUgdG8gYmlu ZCB0YXJnZXQgVk1BISIpKQorCQkJcmV0dXJuIHJldDsKKwl9CiAKIAkvKiBJZiB0aGUgcmVsb2Nh dGlvbiBhbHJlYWR5IGhhcyB0aGUgcmlnaHQgdmFsdWUgaW4gaXQsIG5vCiAJICogbW9yZSB3b3Jr IG5lZWRzIHRvIGJlIGRvbmUuCiAJICovCisJdGFyZ2V0X29mZnNldCA9IGdlbjhfY2Fub25pY2Fs X2FkZHIodGFyZ2V0LT5ub2RlLnN0YXJ0KTsKIAlpZiAodGFyZ2V0X29mZnNldCA9PSByZWxvYy0+ cHJlc3VtZWRfb2Zmc2V0KQogCQlyZXR1cm4gMDsKIAogCS8qIENoZWNrIHRoYXQgdGhlIHJlbG9j YXRpb24gYWRkcmVzcyBpcyB2YWxpZC4uLiAqLwogCWlmICh1bmxpa2VseShyZWxvYy0+b2Zmc2V0 ID4KLQkJICAgICBvYmotPmJhc2Uuc2l6ZSAtIChlYi0+cmVsb2NfY2FjaGUudXNlXzY0Yml0X3Jl bG9jID8gOCA6IDQpKSkgeworCQkgICAgIHZtYS0+c2l6ZSAtIChlYi0+cmVsb2NfY2FjaGUudXNl XzY0Yml0X3JlbG9jID8gOCA6IDQpKSkgewogCQlEUk1fREVCVUcoIlJlbG9jYXRpb24gYmV5b25k IG9iamVjdCBib3VuZHM6ICIKLQkJCSAgIm9iaiAlcCB0YXJnZXQgJWQgb2Zmc2V0ICVkIHNpemUg JWQuXG4iLAotCQkJICBvYmosIHJlbG9jLT50YXJnZXRfaGFuZGxlLAotCQkJICAoaW50KSByZWxv Yy0+b2Zmc2V0LAotCQkJICAoaW50KSBvYmotPmJhc2Uuc2l6ZSk7CisJCQkgICJ0YXJnZXQgJWQg b2Zmc2V0ICVkIHNpemUgJWQuXG4iLAorCQkJICByZWxvYy0+dGFyZ2V0X2hhbmRsZSwKKwkJCSAg KGludClyZWxvYy0+b2Zmc2V0LAorCQkJICAoaW50KXZtYS0+c2l6ZSk7CiAJCXJldHVybiAtRUlO VkFMOwogCX0KIAlpZiAodW5saWtlbHkocmVsb2MtPm9mZnNldCAmIDMpKSB7CiAJCURSTV9ERUJV RygiUmVsb2NhdGlvbiBub3QgNC1ieXRlIGFsaWduZWQ6ICIKLQkJCSAgIm9iaiAlcCB0YXJnZXQg JWQgb2Zmc2V0ICVkLlxuIiwKLQkJCSAgb2JqLCByZWxvYy0+dGFyZ2V0X2hhbmRsZSwKLQkJCSAg KGludCkgcmVsb2MtPm9mZnNldCk7CisJCQkgICJ0YXJnZXQgJWQgb2Zmc2V0ICVkLlxuIiwKKwkJ CSAgcmVsb2MtPnRhcmdldF9oYW5kbGUsCisJCQkgIChpbnQpcmVsb2MtPm9mZnNldCk7CiAJCXJl dHVybiAtRUlOVkFMOwogCX0KIAotCXJldCA9IHJlbG9jYXRlX2VudHJ5KG9iaiwgcmVsb2MsICZl Yi0+cmVsb2NfY2FjaGUsIHRhcmdldF9vZmZzZXQpOworCXJldCA9IHJlbG9jYXRlX2VudHJ5KHZt YS0+b2JqLCByZWxvYywgJmViLT5yZWxvY19jYWNoZSwgdGFyZ2V0X29mZnNldCk7CiAJaWYgKHJl dCkKIAkJcmV0dXJuIHJldDsKIApAQCAtNzMwLDcgKzcyNiw3IEBAIHN0YXRpYyBpbnQgZWJfcmVs b2NhdGVfdm1hKHN0cnVjdCBpOTE1X3ZtYSAqdm1hLCBzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyICpl YikKIAkJZG8gewogCQkJdTY0IG9mZnNldCA9IHItPnByZXN1bWVkX29mZnNldDsKIAotCQkJcmV0 ID0gZWJfcmVsb2NhdGVfZW50cnkodm1hLT5vYmosIGViLCByKTsKKwkJCXJldCA9IGViX3JlbG9j YXRlX2VudHJ5KHZtYSwgZWIsIHIpOwogCQkJaWYgKHJldCkKIAkJCQlnb3RvIG91dDsKIApAQCAt Nzc2LDcgKzc3Miw3IEBAIGViX3JlbG9jYXRlX3ZtYV9zbG93KHN0cnVjdCBpOTE1X3ZtYSAqdm1h LAogCWludCBpLCByZXQgPSAwOwogCiAJZm9yIChpID0gMDsgaSA8IGVudHJ5LT5yZWxvY2F0aW9u X2NvdW50OyBpKyspIHsKLQkJcmV0ID0gZWJfcmVsb2NhdGVfZW50cnkodm1hLT5vYmosIGViLCAm cmVsb2NzW2ldKTsKKwkJcmV0ID0gZWJfcmVsb2NhdGVfZW50cnkodm1hLCBlYiwgJnJlbG9jc1tp XSk7CiAJCWlmIChyZXQpCiAJCQlicmVhazsKIAl9CkBAIC04MDksNyArODA1LDYgQEAgZWJfcmVz ZXJ2ZV92bWEoc3RydWN0IGk5MTVfdm1hICp2bWEsCiAJICAgICAgIHN0cnVjdCBpbnRlbF9lbmdp bmVfY3MgKmVuZ2luZSwKIAkgICAgICAgYm9vbCAqbmVlZF9yZWxvYykKIHsKLQlzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqID0gdm1hLT5vYmo7CiAJc3RydWN0IGRybV9pOTE1X2dlbV9l eGVjX29iamVjdDIgKmVudHJ5ID0gdm1hLT5leGVjX2VudHJ5OwogCXVpbnQ2NF90IGZsYWdzOwog CWludCByZXQ7CkBAIC04NjMsMTEgKzg1OCw2IEBAIGViX3Jlc2VydmVfdm1hKHN0cnVjdCBpOTE1 X3ZtYSAqdm1hLAogCQkqbmVlZF9yZWxvYyA9IHRydWU7CiAJfQogCi0JaWYgKGVudHJ5LT5mbGFn cyAmIEVYRUNfT0JKRUNUX1dSSVRFKSB7Ci0JCW9iai0+YmFzZS5wZW5kaW5nX3JlYWRfZG9tYWlu cyA9IEk5MTVfR0VNX0RPTUFJTl9SRU5ERVI7Ci0JCW9iai0+YmFzZS5wZW5kaW5nX3dyaXRlX2Rv bWFpbiA9IEk5MTVfR0VNX0RPTUFJTl9SRU5ERVI7Ci0JfQotCiAJcmV0dXJuIDA7CiB9CiAKQEAg LTkyOSw3ICs5MTksNiBAQCBlYl92bWFfbWlzcGxhY2VkKHN0cnVjdCBpOTE1X3ZtYSAqdm1hKQog c3RhdGljIGludCBlYl9yZXNlcnZlKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXIgKmViKQogewogCWNv bnN0IGJvb2wgaGFzX2ZlbmNlZF9ncHVfYWNjZXNzID0gSU5URUxfR0VOKGViLT5pOTE1KSA8IDQ7 Ci0Jc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iajsKIAlzdHJ1Y3QgaTkxNV92bWEgKnZt YTsKIAlzdHJ1Y3QgbGlzdF9oZWFkIG9yZGVyZWRfdm1hczsKIAlzdHJ1Y3QgbGlzdF9oZWFkIHBp bm5lZF92bWFzOwpAQCAtOTQyLDcgKzkzMSw2IEBAIHN0YXRpYyBpbnQgZWJfcmVzZXJ2ZShzdHJ1 Y3QgaTkxNV9leGVjYnVmZmVyICplYikKIAkJYm9vbCBuZWVkX2ZlbmNlLCBuZWVkX21hcHBhYmxl OwogCiAJCXZtYSA9IGxpc3RfZmlyc3RfZW50cnkoJmViLT52bWFzLCBzdHJ1Y3QgaTkxNV92bWEs IGV4ZWNfbGluayk7Ci0JCW9iaiA9IHZtYS0+b2JqOwogCQllbnRyeSA9IHZtYS0+ZXhlY19lbnRy eTsKIAogCQlpZiAoZWItPmN0eC0+ZmxhZ3MgJiBDT05URVhUX05PX1pFUk9NQVApCkBAIC05NjIs OSArOTUwLDYgQEAgc3RhdGljIGludCBlYl9yZXNlcnZlKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXIg KmViKQogCQkJbGlzdF9tb3ZlKCZ2bWEtPmV4ZWNfbGluaywgJm9yZGVyZWRfdm1hcyk7CiAJCX0g ZWxzZQogCQkJbGlzdF9tb3ZlX3RhaWwoJnZtYS0+ZXhlY19saW5rLCAmb3JkZXJlZF92bWFzKTsK LQotCQlvYmotPmJhc2UucGVuZGluZ19yZWFkX2RvbWFpbnMgPSBJOTE1X0dFTV9HUFVfRE9NQUlO UyAmIH5JOTE1X0dFTV9ET01BSU5fQ09NTUFORDsKLQkJb2JqLT5iYXNlLnBlbmRpbmdfd3JpdGVf ZG9tYWluID0gMDsKIAl9CiAJbGlzdF9zcGxpY2UoJm9yZGVyZWRfdm1hcywgJmViLT52bWFzKTsK IAlsaXN0X3NwbGljZSgmcGlubmVkX3ZtYXMsICZlYi0+dm1hcyk7CkBAIC0xMTUyLDcgKzExMzcs NyBAQCBlYl9tb3ZlX3RvX2dwdShzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyICplYikKIAkJfQogCiAJ CXJldCA9IGk5MTVfZ2VtX3JlcXVlc3RfYXdhaXRfb2JqZWN0Ci0JCQkoZWItPnJlcXVlc3QsIG9i aiwgb2JqLT5iYXNlLnBlbmRpbmdfd3JpdGVfZG9tYWluKTsKKwkJCShlYi0+cmVxdWVzdCwgb2Jq LCB2bWEtPmV4ZWNfZW50cnktPmZsYWdzICYgRVhFQ19PQkpFQ1RfV1JJVEUpOwogCQlpZiAocmV0 KQogCQkJcmV0dXJuIHJldDsKIAl9CkBAIC0xMzUzLDEyICsxMzM4LDEwIEBAIGViX21vdmVfdG9f YWN0aXZlKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXIgKmViKQogCWxpc3RfZm9yX2VhY2hfZW50cnko dm1hLCAmZWItPnZtYXMsIGV4ZWNfbGluaykgewogCQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dCAqb2JqID0gdm1hLT5vYmo7CiAKLQkJb2JqLT5iYXNlLndyaXRlX2RvbWFpbiA9IG9iai0+YmFz ZS5wZW5kaW5nX3dyaXRlX2RvbWFpbjsKLQkJaWYgKG9iai0+YmFzZS53cml0ZV9kb21haW4pCi0J CQl2bWEtPmV4ZWNfZW50cnktPmZsYWdzIHw9IEVYRUNfT0JKRUNUX1dSSVRFOwotCQllbHNlCi0J CQlvYmotPmJhc2UucGVuZGluZ19yZWFkX2RvbWFpbnMgfD0gb2JqLT5iYXNlLnJlYWRfZG9tYWlu czsKLQkJb2JqLT5iYXNlLnJlYWRfZG9tYWlucyA9IG9iai0+YmFzZS5wZW5kaW5nX3JlYWRfZG9t YWluczsKKwkJb2JqLT5iYXNlLndyaXRlX2RvbWFpbiA9IDA7CisJCWlmICh2bWEtPmV4ZWNfZW50 cnktPmZsYWdzICYgRVhFQ19PQkpFQ1RfV1JJVEUpCisJCQlvYmotPmJhc2UucmVhZF9kb21haW5z ID0gMDsKKwkJb2JqLT5iYXNlLnJlYWRfZG9tYWlucyB8PSBJOTE1X0dFTV9HUFVfRE9NQUlOUzsK IAogCQlpOTE1X3ZtYV9tb3ZlX3RvX2FjdGl2ZSh2bWEsIGViLT5yZXF1ZXN0LCB2bWEtPmV4ZWNf ZW50cnktPmZsYWdzKTsKIAkJZWJfZXhwb3J0X2ZlbmNlKG9iaiwgZWItPnJlcXVlc3QsIHZtYS0+ ZXhlY19lbnRyeS0+ZmxhZ3MpOwpAQCAtMTY2OSw3ICsxNjUyLDcgQEAgaTkxNV9nZW1fZG9fZXhl Y2J1ZmZlcihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCX0KIAogCS8qIFNldCB0aGUgcGVuZGlu ZyByZWFkIGRvbWFpbnMgZm9yIHRoZSBiYXRjaCBidWZmZXIgdG8gQ09NTUFORCAqLwotCWlmIChl Yi5iYXRjaC0+b2JqLT5iYXNlLnBlbmRpbmdfd3JpdGVfZG9tYWluKSB7CisJaWYgKGViLmJhdGNo LT5leGVjX2VudHJ5LT5mbGFncyAmIEVYRUNfT0JKRUNUX1dSSVRFKSB7CiAJCURSTV9ERUJVRygi QXR0ZW1wdGluZyB0byB1c2Ugc2VsZi1tb2RpZnlpbmcgYmF0Y2ggYnVmZmVyXG4iKTsKIAkJcmV0 ID0gLUVJTlZBTDsKIAkJZ290byBlcnI7CkBAIC0xNzA2LDcgKzE2ODksNiBAQCBpOTE1X2dlbV9k b19leGVjYnVmZmVyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCX0KIAl9CiAKLQllYi5iYXRj aC0+b2JqLT5iYXNlLnBlbmRpbmdfcmVhZF9kb21haW5zIHw9IEk5MTVfR0VNX0RPTUFJTl9DT01N QU5EOwogCWlmIChlYi5iYXRjaF9sZW4gPT0gMCkKIAkJZWIuYmF0Y2hfbGVuID0gZWIuYmF0Y2gt PnNpemUgLSBlYi5iYXRjaF9zdGFydF9vZmZzZXQ7CiAKLS0gCjIuMTEuMAoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==