From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?B?Q2hyaXN0aWFuIEvDtm5pZw==?= Subject: Re: [PATCH] drm/radeon: fix TOPDOWN handling for bo_create Date: Wed, 11 Mar 2015 19:21:42 +0100 Message-ID: <550087B6.3090307@vodafone.de> References: <1426088652-32727-1-git-send-email-alexander.deucher@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from pegasos-out.vodafone.de (pegasos-out.vodafone.de [80.84.1.38]) by gabe.freedesktop.org (Postfix) with ESMTP id 3B56B6E0D1 for ; Wed, 11 Mar 2015 11:21:53 -0700 (PDT) In-Reply-To: <1426088652-32727-1-git-send-email-alexander.deucher@amd.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Alex Deucher , dri-devel@lists.freedesktop.org, oded.gabbay@amd.com Cc: Alex Deucher , stable@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org T24gMTEuMDMuMjAxNSAxNjo0NCwgQWxleCBEZXVjaGVyIHdyb3RlOgo+IHJhZGVvbl9ib19jcmVh dGUoKSBjYWxscyByYWRlb25fdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbigpCj4gYmVmb3JlIHR0 bV9ib19pbml0KCkgaXMgY2FsbGVkLiAgcmFkZW9uX3R0bV9wbGFjZW1lbnRfZnJvbV9kb21haW4o KQo+IHVzZXMgdGhlIHR0bSBibyBzaXplIHRvIGRldGVybWluZSB3aGVuIHRvIHNlbGVjdCB0b3Ag ZG93bgo+IGFsbG9jYXRpb24gYnV0IHNpbmNlIHRoZSB0dG0gYm8gaXMgbm90IGluaXRpYWxpemVk IHlldCB0aGUKPiBjaGVjayBpcyBhbHdheXMgZmFsc2UuCj4KPiBOb3RpY2VkLWJ5OiBPZGVkIEdh YmJheSA8b2RlZC5nYWJiYXlAYW1kLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBBbGV4IERldWNoZXIg PGFsZXhhbmRlci5kZXVjaGVyQGFtZC5jb20+Cj4gQ2M6IHN0YWJsZUB2Z2VyLmtlcm5lbC5vcmcK CkFuZCBJIHdhcyBhbHJlYWR5IHdvbmRlcmluZyB3aHkgdGhlIGhlY2sgdGhlIEJPcyBhbHdheXMg bWFkZSB0aGlzIApwaW5nL3BvbmcgaW4gbWVtb3J5IGFmdGVyIGNyZWF0aW9uLgoKUGF0Y2ggaXMg UmV2aWV3ZWQtYnk6IENocmlzdGlhbiBLw7ZuaWcgPGNocmlzdGlhbi5rb2VuaWdAYW1kLmNvbT4K ClJlZ2FyZHMsCkNocmlzdGlhbi4KCj4gLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3Jh ZGVvbi5oICAgICAgICB8ICAzICsrLQo+ICAgZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25f Z2VtLmMgICAgfCAgMiArLQo+ICAgZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fbW4uYyAg ICAgfCAgMiArLQo+ICAgZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fb2JqZWN0LmMgfCAx NyArKysrKysrKysrLS0tLS0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fdHRt LmMgICAgfCAxMiArKysrKysrKy0tLS0KPiAgIDUgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9u cygrKSwgMTQgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Jh ZGVvbi9yYWRlb24uaCBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmgKPiBpbmRleCA1 NTg3NjAzLi43MjZlODlmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFk ZW9uLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oCj4gQEAgLTI5NzAs NyArMjk3MCw4IEBAIGV4dGVybiB2b2lkIHJhZGVvbl9zdXJmYWNlX2luaXQoc3RydWN0IHJhZGVv bl9kZXZpY2UgKnJkZXYpOwo+ICAgZXh0ZXJuIGludCByYWRlb25fY3NfcGFyc2VyX2luaXQoc3Ry dWN0IHJhZGVvbl9jc19wYXJzZXIgKnAsIHZvaWQgKmRhdGEpOwo+ICAgZXh0ZXJuIHZvaWQgcmFk ZW9uX2xlZ2FjeV9zZXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LCBp bnQgZW5hYmxlKTsKPiAgIGV4dGVybiB2b2lkIHJhZGVvbl9hdG9tX3NldF9jbG9ja19nYXRpbmco c3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYsIGludCBlbmFibGUpOwo+IC1leHRlcm4gdm9pZCBy YWRlb25fdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbihzdHJ1Y3QgcmFkZW9uX2JvICpyYm8sIHUz MiBkb21haW4pOwo+ICtleHRlcm4gdm9pZCByYWRlb25fdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFp bihzdHJ1Y3QgcmFkZW9uX2JvICpyYm8sIHUzMiBkb21haW4sCj4gKwkJCQkJICAgICB1NjQgc2l6 ZSk7Cj4gICBleHRlcm4gYm9vbCByYWRlb25fdHRtX2JvX2lzX3JhZGVvbl9ibyhzdHJ1Y3QgdHRt X2J1ZmZlcl9vYmplY3QgKmJvKTsKPiAgIGV4dGVybiBpbnQgcmFkZW9uX3R0bV90dF9zZXRfdXNl cnB0cihzdHJ1Y3QgdHRtX3R0ICp0dG0sIHVpbnQ2NF90IGFkZHIsCj4gICAJCQkJICAgICB1aW50 MzJfdCBmbGFncyk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9u X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZ2VtLmMKPiBpbmRleCBhYzNj MTMxLi5kNjEzZDBjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9u X2dlbS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZ2VtLmMKPiBAQCAt MzM3LDcgKzMzNyw3IEBAIGludCByYWRlb25fZ2VtX3VzZXJwdHJfaW9jdGwoc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAgIAkJCWdvdG8gcmVsZWFzZV9vYmplY3Q7Cj4gICAJ CX0KPiAgIAo+IC0JCXJhZGVvbl90dG1fcGxhY2VtZW50X2Zyb21fZG9tYWluKGJvLCBSQURFT05f R0VNX0RPTUFJTl9HVFQpOwo+ICsJCXJhZGVvbl90dG1fcGxhY2VtZW50X2Zyb21fZG9tYWluKGJv LCBSQURFT05fR0VNX0RPTUFJTl9HVFQsIGJvLT50Ym8ubWVtLnNpemUpOwo+ICAgCQlyID0gdHRt X2JvX3ZhbGlkYXRlKCZiby0+dGJvLCAmYm8tPnBsYWNlbWVudCwgdHJ1ZSwgZmFsc2UpOwo+ICAg CQlyYWRlb25fYm9fdW5yZXNlcnZlKGJvKTsKPiAgIAkJdXBfcmVhZCgmY3VycmVudC0+bW0tPm1t YXBfc2VtKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fbW4u YyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX21uLmMKPiBpbmRleCBhNjliZDQ0Li5l NTFmMDliIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX21uLmMK PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9tbi5jCj4gQEAgLTE0MSw3ICsx NDEsNyBAQCBzdGF0aWMgdm9pZCByYWRlb25fbW5faW52YWxpZGF0ZV9yYW5nZV9zdGFydChzdHJ1 Y3QgbW11X25vdGlmaWVyICptbiwKPiAgIAkJCQlEUk1fRVJST1IoIiglZCkgZmFpbGVkIHRvIHdh aXQgZm9yIHVzZXIgYm9cbiIsIHIpOwo+ICAgCQl9Cj4gICAKPiAtCQlyYWRlb25fdHRtX3BsYWNl bWVudF9mcm9tX2RvbWFpbihibywgUkFERU9OX0dFTV9ET01BSU5fQ1BVKTsKPiArCQlyYWRlb25f dHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbihibywgUkFERU9OX0dFTV9ET01BSU5fQ1BVLCBiby0+ dGJvLm1lbS5zaXplKTsKPiAgIAkJciA9IHR0bV9ib192YWxpZGF0ZSgmYm8tPnRibywgJmJvLT5w bGFjZW1lbnQsIGZhbHNlLCBmYWxzZSk7Cj4gICAJCWlmIChyKQo+ICAgCQkJRFJNX0VSUk9SKCIo JWQpIGZhaWxlZCB0byB2YWxpZGF0ZSB1c2VyIGJvXG4iLCByKTsKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fb2JqZWN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFk ZW9uL3JhZGVvbl9vYmplY3QuYwo+IGluZGV4IDQzZTA5OTQuLjA3ZjhmZDUgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fb2JqZWN0LmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuYwo+IEBAIC05Myw3ICs5Myw4IEBAIGJvb2wg cmFkZW9uX3R0bV9ib19pc19yYWRlb25fYm8oc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICpibykK PiAgIAlyZXR1cm4gZmFsc2U7Cj4gICB9Cj4gICAKPiAtdm9pZCByYWRlb25fdHRtX3BsYWNlbWVu dF9mcm9tX2RvbWFpbihzdHJ1Y3QgcmFkZW9uX2JvICpyYm8sIHUzMiBkb21haW4pCj4gK3ZvaWQg cmFkZW9uX3R0bV9wbGFjZW1lbnRfZnJvbV9kb21haW4oc3RydWN0IHJhZGVvbl9ibyAqcmJvLCB1 MzIgZG9tYWluLAo+ICsJCQkJICAgICAgdTY0IHNpemUpCj4gICB7Cj4gICAJdTMyIGMgPSAwLCBp Owo+ICAgCj4gQEAgLTE3OSw3ICsxODAsNyBAQCB2b2lkIHJhZGVvbl90dG1fcGxhY2VtZW50X2Zy b21fZG9tYWluKHN0cnVjdCByYWRlb25fYm8gKnJibywgdTMyIGRvbWFpbikKPiAgIAkgKiBpbXBy b3ZlIGZyYWdtZW50YXRpb24gcXVhbGl0eS4KPiAgIAkgKiA1MTJrYiB3YXMgbWVhc3VyZWQgYXMg dGhlIG1vc3Qgb3B0aW1hbCBudW1iZXIuCj4gICAJICovCj4gLQlpZiAocmJvLT50Ym8ubWVtLnNp emUgPiA1MTIgKiAxMDI0KSB7Cj4gKwlpZiAoc2l6ZSA+IDUxMiAqIDEwMjQpIHsKPiAgIAkJZm9y IChpID0gMDsgaSA8IGM7IGkrKykgewo+ICAgCQkJcmJvLT5wbGFjZW1lbnRzW2ldLmZsYWdzIHw9 IFRUTV9QTF9GTEFHX1RPUERPV047Cj4gICAJCX0KPiBAQCAtMjUyLDcgKzI1Myw3IEBAIGludCBy YWRlb25fYm9fY3JlYXRlKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LAo+ICAgCWJvLT5mbGFn cyAmPSB+UkFERU9OX0dFTV9HVFRfV0M7Cj4gICAjZW5kaWYKPiAgIAo+IC0JcmFkZW9uX3R0bV9w bGFjZW1lbnRfZnJvbV9kb21haW4oYm8sIGRvbWFpbik7Cj4gKwlyYWRlb25fdHRtX3BsYWNlbWVu dF9mcm9tX2RvbWFpbihibywgZG9tYWluLCBzaXplKTsKPiAgIAkvKiBLZXJuZWwgYWxsb2NhdGlv biBhcmUgdW5pbnRlcnJ1cHRpYmxlICovCj4gICAJZG93bl9yZWFkKCZyZGV2LT5wbS5tY2xrX2xv Y2spOwo+ICAgCXIgPSB0dG1fYm9faW5pdCgmcmRldi0+bW1hbi5iZGV2LCAmYm8tPnRibywgc2l6 ZSwgdHlwZSwKPiBAQCAtMzUwLDcgKzM1MSw3IEBAIGludCByYWRlb25fYm9fcGluX3Jlc3RyaWN0 ZWQoc3RydWN0IHJhZGVvbl9ibyAqYm8sIHUzMiBkb21haW4sIHU2NCBtYXhfb2Zmc2V0LAo+ICAg Cj4gICAJCXJldHVybiAwOwo+ICAgCX0KPiAtCXJhZGVvbl90dG1fcGxhY2VtZW50X2Zyb21fZG9t YWluKGJvLCBkb21haW4pOwo+ICsJcmFkZW9uX3R0bV9wbGFjZW1lbnRfZnJvbV9kb21haW4oYm8s IGRvbWFpbiwgYm8tPnRiby5tZW0uc2l6ZSk7Cj4gICAJZm9yIChpID0gMDsgaSA8IGJvLT5wbGFj ZW1lbnQubnVtX3BsYWNlbWVudDsgaSsrKSB7Cj4gICAJCS8qIGZvcmNlIHRvIHBpbiBpbnRvIHZp c2libGUgdmlkZW8gcmFtICovCj4gICAJCWlmICgoYm8tPnBsYWNlbWVudHNbaV0uZmxhZ3MgJiBU VE1fUExfRkxBR19WUkFNKSAmJgo+IEBAIC01NTcsNyArNTU4LDcgQEAgaW50IHJhZGVvbl9ib19s aXN0X3ZhbGlkYXRlKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LAo+ICAgCQkJfQo+ICAgCj4g ICAJCXJldHJ5Ogo+IC0JCQlyYWRlb25fdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbihibywgZG9t YWluKTsKPiArCQkJcmFkZW9uX3R0bV9wbGFjZW1lbnRfZnJvbV9kb21haW4oYm8sIGRvbWFpbiwg Ym8tPnRiby5tZW0uc2l6ZSk7Cj4gICAJCQlpZiAocmluZyA9PSBSNjAwX1JJTkdfVFlQRV9VVkRf SU5ERVgpCj4gICAJCQkJcmFkZW9uX3V2ZF9mb3JjZV9pbnRvX3V2ZF9zZWdtZW50KGJvLCBhbGxv d2VkKTsKPiAgIAo+IEBAIC04MDAsNyArODAxLDggQEAgaW50IHJhZGVvbl9ib19mYXVsdF9yZXNl cnZlX25vdGlmeShzdHJ1Y3QgdHRtX2J1ZmZlcl9vYmplY3QgKmJvKQo+ICAgCQlyZXR1cm4gMDsK PiAgIAo+ICAgCS8qIGh1cnJhaCB0aGUgbWVtb3J5IGlzIG5vdCB2aXNpYmxlICEgKi8KPiAtCXJh ZGVvbl90dG1fcGxhY2VtZW50X2Zyb21fZG9tYWluKHJibywgUkFERU9OX0dFTV9ET01BSU5fVlJB TSk7Cj4gKwlyYWRlb25fdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbihyYm8sIFJBREVPTl9HRU1f RE9NQUlOX1ZSQU0sCj4gKwkJCQkJIHJiby0+dGJvLm1lbS5zaXplKTsKPiAgIAlscGZuID0JcmRl di0+bWMudmlzaWJsZV92cmFtX3NpemUgPj4gUEFHRV9TSElGVDsKPiAgIAlmb3IgKGkgPSAwOyBp IDwgcmJvLT5wbGFjZW1lbnQubnVtX3BsYWNlbWVudDsgaSsrKSB7Cj4gICAJCS8qIEZvcmNlIGlu dG8gdmlzaWJsZSBWUkFNICovCj4gQEAgLTgxMCw3ICs4MTIsOCBAQCBpbnQgcmFkZW9uX2JvX2Zh dWx0X3Jlc2VydmVfbm90aWZ5KHN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqYm8pCj4gICAJfQo+ ICAgCXIgPSB0dG1fYm9fdmFsaWRhdGUoYm8sICZyYm8tPnBsYWNlbWVudCwgZmFsc2UsIGZhbHNl KTsKPiAgIAlpZiAodW5saWtlbHkociA9PSAtRU5PTUVNKSkgewo+IC0JCXJhZGVvbl90dG1fcGxh Y2VtZW50X2Zyb21fZG9tYWluKHJibywgUkFERU9OX0dFTV9ET01BSU5fR1RUKTsKPiArCQlyYWRl b25fdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbihyYm8sIFJBREVPTl9HRU1fRE9NQUlOX0dUVCwK PiArCQkJCQkJIHJiby0+dGJvLm1lbS5zaXplKTsKPiAgIAkJcmV0dXJuIHR0bV9ib192YWxpZGF0 ZShibywgJnJiby0+cGxhY2VtZW50LCBmYWxzZSwgZmFsc2UpOwo+ICAgCX0gZWxzZSBpZiAodW5s aWtlbHkociAhPSAwKSkgewo+ICAgCQlyZXR1cm4gcjsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL3JhZGVvbi9yYWRlb25fdHRtLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVv bl90dG0uYwo+IGluZGV4IGQwMmFhMWQuLmNlOGVkMmQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL3JhZGVvbi9yYWRlb25fdHRtLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9u L3JhZGVvbl90dG0uYwo+IEBAIC0xOTcsNyArMTk3LDggQEAgc3RhdGljIHZvaWQgcmFkZW9uX2V2 aWN0X2ZsYWdzKHN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqYm8sCj4gICAJc3dpdGNoIChiby0+ bWVtLm1lbV90eXBlKSB7Cj4gICAJY2FzZSBUVE1fUExfVlJBTToKPiAgIAkJaWYgKHJiby0+cmRl di0+cmluZ1tyYWRlb25fY29weV9yaW5nX2luZGV4KHJiby0+cmRldildLnJlYWR5ID09IGZhbHNl KQo+IC0JCQlyYWRlb25fdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbihyYm8sIFJBREVPTl9HRU1f RE9NQUlOX0NQVSk7Cj4gKwkJCXJhZGVvbl90dG1fcGxhY2VtZW50X2Zyb21fZG9tYWluKHJibywg UkFERU9OX0dFTV9ET01BSU5fQ1BVLAo+ICsJCQkJCQkJIHJiby0+dGJvLm1lbS5zaXplKTsKPiAg IAkJZWxzZSBpZiAocmJvLT5yZGV2LT5tYy52aXNpYmxlX3ZyYW1fc2l6ZSA8IHJiby0+cmRldi0+ bWMucmVhbF92cmFtX3NpemUgJiYKPiAgIAkJCSBiby0+bWVtLnN0YXJ0IDwgKHJiby0+cmRldi0+ bWMudmlzaWJsZV92cmFtX3NpemUgPj4gUEFHRV9TSElGVCkpIHsKPiAgIAkJCXVuc2lnbmVkIGZw Zm4gPSByYm8tPnJkZXYtPm1jLnZpc2libGVfdnJhbV9zaXplID4+IFBBR0VfU0hJRlQ7Cj4gQEAg LTIwOSw3ICsyMTAsOCBAQCBzdGF0aWMgdm9pZCByYWRlb25fZXZpY3RfZmxhZ3Moc3RydWN0IHR0 bV9idWZmZXJfb2JqZWN0ICpibywKPiAgIAkJCSAqIEJPcyB0byBiZSBldmljdGVkIGZyb20gVlJB TQo+ICAgCQkJICovCj4gICAJCQlyYWRlb25fdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbihyYm8s IFJBREVPTl9HRU1fRE9NQUlOX1ZSQU0gfAo+IC0JCQkJCQkJIFJBREVPTl9HRU1fRE9NQUlOX0dU VCk7Cj4gKwkJCQkJCQkgUkFERU9OX0dFTV9ET01BSU5fR1RULAo+ICsJCQkJCQkJIHJiby0+dGJv Lm1lbS5zaXplKTsKPiAgIAkJCXJiby0+cGxhY2VtZW50Lm51bV9idXN5X3BsYWNlbWVudCA9IDA7 Cj4gICAJCQlmb3IgKGkgPSAwOyBpIDwgcmJvLT5wbGFjZW1lbnQubnVtX3BsYWNlbWVudDsgaSsr KSB7Cj4gICAJCQkJaWYgKHJiby0+cGxhY2VtZW50c1tpXS5mbGFncyAmIFRUTV9QTF9GTEFHX1ZS QU0pIHsKPiBAQCAtMjIyLDExICsyMjQsMTMgQEAgc3RhdGljIHZvaWQgcmFkZW9uX2V2aWN0X2Zs YWdzKHN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqYm8sCj4gICAJCQkJfQo+ICAgCQkJfQo+ICAg CQl9IGVsc2UKPiAtCQkJcmFkZW9uX3R0bV9wbGFjZW1lbnRfZnJvbV9kb21haW4ocmJvLCBSQURF T05fR0VNX0RPTUFJTl9HVFQpOwo+ICsJCQlyYWRlb25fdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFp bihyYm8sIFJBREVPTl9HRU1fRE9NQUlOX0dUVCwKPiArCQkJCQkJCSByYm8tPnRiby5tZW0uc2l6 ZSk7Cj4gICAJCWJyZWFrOwo+ICAgCWNhc2UgVFRNX1BMX1RUOgo+ICAgCWRlZmF1bHQ6Cj4gLQkJ cmFkZW9uX3R0bV9wbGFjZW1lbnRfZnJvbV9kb21haW4ocmJvLCBSQURFT05fR0VNX0RPTUFJTl9D UFUpOwo+ICsJCXJhZGVvbl90dG1fcGxhY2VtZW50X2Zyb21fZG9tYWluKHJibywgUkFERU9OX0dF TV9ET01BSU5fQ1BVLAo+ICsJCQkJCQkgcmJvLT50Ym8ubWVtLnNpemUpOwo+ICAgCX0KPiAgIAkq cGxhY2VtZW50ID0gcmJvLT5wbGFjZW1lbnQ7Cj4gICB9CgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZl bEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=