From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.3 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BE136C433DF for ; Fri, 26 Jun 2020 17:46:19 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9004E207D8 for ; Fri, 26 Jun 2020 17:46:19 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="WMjUKikK" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9004E207D8 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 05EA56ECF4; Fri, 26 Jun 2020 17:46:19 +0000 (UTC) Received: from mail-wr1-x441.google.com (mail-wr1-x441.google.com [IPv6:2a00:1450:4864:20::441]) by gabe.freedesktop.org (Postfix) with ESMTPS id C4E4D6ECF4 for ; Fri, 26 Jun 2020 17:46:17 +0000 (UTC) Received: by mail-wr1-x441.google.com with SMTP id r12so10232667wrj.13 for ; Fri, 26 Jun 2020 10:46:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=reply-to:subject:to:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding:content-language; bh=p5oCDSglmOGM8LtlOUxUyt5Y7jYtANXRw6weuC8natw=; b=WMjUKikKttbuTLdWpOQ5W/DDj0z09nDJlFDYJHI3B/ucTDw3PBxB3w/XWlZ1+Q9IFI ZJUL2Avjc5GQPUom4lfw070igaT30uuSjxkTHlBbo3fyMWtCWt2QbO37+TkyreWc8E4t Ax2DfL4IkWOmDtQOMbBs1nu9Fh7lhxBHzvhyW9kh85pgEAMh+H50Ddf3paQhlR3oe/So q+2D37gly5ggbeH4CGjiDKlaRMeM5ebVaoArKqWwjUoXnnww5NE4e4bLniFTOqRkuRUc E7ah/ZLZUjVCMGiV3ZoTFbpMcqGLg2FW986nag+Hrf3AhjpzyAL1xKPtr2NKL4vsKI0u JWPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:reply-to:subject:to:references:from:message-id :date:user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=p5oCDSglmOGM8LtlOUxUyt5Y7jYtANXRw6weuC8natw=; b=FUA6OFThOoX1MgmqA9JWt3SBgi18n8uorBnA3h03X1HPaRbvBXSmTQdlxvkUYEy9Tm lM43xMWnKmH5qsBEJJdDP1fvkQWtu8b/bxJv81qMPCXXHUOijOV4iCgjHEarEajunhpX tz41uIFl5ZC46cj5ymI+ThIuMU3hL1NBRtazA3SOTiY3T6XNBHzOLZGCljdgrGDJGfmB 9dF9SG+x2w9q7xG+KAG8/O9F4zKEwhcL0GhhdzMP1p/5jxxuUAdCMjK0qkBMb/f4hm8B mn8C+0jYLdRV41xWcBrlu50Hdmm8w2EM8L76uJbt8nFMOhl5s2zU3pjdU0Q15Dc7EDvj t0IQ== X-Gm-Message-State: AOAM532w6/NAoJxAND2v5oPU8tlP9IsqnH5TFnB7W8tfMcUWjcTv5h+y 4ehjHTqJhq/7C2XM6nCFdEtwGOFC X-Google-Smtp-Source: ABdhPJxBm36ZANS+1DHiK2GXAOy/6h8MiguSRsfXcgs69A5OHdvqRhvVNfPrLmeKD3WcmOENtFwKjw== X-Received: by 2002:adf:dd83:: with SMTP id x3mr5302994wrl.292.1593193576296; Fri, 26 Jun 2020 10:46:16 -0700 (PDT) Received: from ?IPv6:2a02:908:1252:fb60:be8a:bd56:1f94:86e7? ([2a02:908:1252:fb60:be8a:bd56:1f94:86e7]) by smtp.gmail.com with ESMTPSA id r11sm828419wmh.1.2020.06.26.10.46.15 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 26 Jun 2020 10:46:15 -0700 (PDT) Subject: Re: [PATCH 1/2] drm/ttm: cleanup ttm_mem_type_manager_func.get_node interface To: "Ruhl, Michael J" , "dri-devel@lists.freedesktop.org" References: <20200624133558.1758-1-christian.koenig@amd.com> <14063C7AD467DE4B82DEDB5C278E866301154CA0E1@FMSMSX108.amr.corp.intel.com> From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: <4153d578-dc0d-0a4c-e252-413b3b512b0e@gmail.com> Date: Fri, 26 Jun 2020 19:46:14 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 MIME-Version: 1.0 In-Reply-To: <14063C7AD467DE4B82DEDB5C278E866301154CA0E1@FMSMSX108.amr.corp.intel.com> Content-Language: en-US X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: christian.koenig@amd.com Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" QW0gMjYuMDYuMjAgdW0gMTk6Mzkgc2NocmllYiBSdWhsLCBNaWNoYWVsIEo6Cj4+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tCj4+IEZyb206IGRyaS1kZXZlbCA8ZHJpLWRldmVsLWJvdW5jZXNA bGlzdHMuZnJlZWRlc2t0b3Aub3JnPiBPbiBCZWhhbGYgT2YKPj4gQ2hyaXN0aWFuIEvDtm5pZwo+ PiBTZW50OiBXZWRuZXNkYXksIEp1bmUgMjQsIDIwMjAgOTozNiBBTQo+PiBUbzogZHJpLWRldmVs QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+PiBTdWJqZWN0OiBbUEFUQ0ggMS8yXSBkcm0vdHRtOiBj bGVhbnVwCj4+IHR0bV9tZW1fdHlwZV9tYW5hZ2VyX2Z1bmMuZ2V0X25vZGUgaW50ZXJmYWNlCj4+ Cj4+IEluc3RlYWQgb2Ygc2lnbmFsaW5nIGZhaWx1cmUgYnkgc2V0dGluZyB0aGUgbm9kZSBwb2lu dGVyIHRvCj4+IE5VTEwgZG8gc28gYnkgcmV0dXJuaW5nIC1FTk9TUEMuCj4+Cj4+IFNpZ25lZC1v ZmYtYnk6IENocmlzdGlhbiBLw7ZuaWcgPGNocmlzdGlhbi5rb2VuaWdAYW1kLmNvbT4KPj4gLS0t Cj4+IGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9ndHRfbWdyLmMgICB8ICA0ICst LS0KPj4gZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZyYW1fbWdyLmMgIHwgIDUg KystLS0KPj4gZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbm91dmVhdV90dG0uYyAgICAgICAgIHwg IDggLS0tLS0tLS0KPj4gZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fYm8uYyAgICAgICAgICAgICAg ICAgIHwgMTEgKysrKystLS0tLS0KPj4gZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fYm9fbWFuYWdl ci5jICAgICAgICAgIHwgIDIgKy0KPj4gZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfZ21y aWRfbWFuYWdlci5jIHwgIDQgKy0tLQo+PiA2IGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMo KyksIDI0IGRlbGV0aW9ucygtKQo+Pgo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1X2d0dF9tZ3IuYwo+PiBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2FtZGdwdV9ndHRfbWdyLmMKPj4gaW5kZXggNjI3MTA0NDAxZTg0Li4yYmFhODAyMjRmYTQgMTAw NjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9ndHRfbWdyLmMK Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2d0dF9tZ3IuYwo+PiBA QCAtMjI5LDcgKzIyOSw3IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2d0dF9tZ3JfbmV3KHN0cnVjdAo+ PiB0dG1fbWVtX3R5cGVfbWFuYWdlciAqbWFuLAo+PiAJaWYgKCgmdGJvLT5tZW0gPT0gbWVtIHx8 IHRiby0+bWVtLm1lbV90eXBlICE9IFRUTV9QTF9UVCkgJiYKPj4gCSAgICBhdG9taWM2NF9yZWFk KCZtZ3ItPmF2YWlsYWJsZSkgPCBtZW0tPm51bV9wYWdlcykgewo+PiAJCXNwaW5fdW5sb2NrKCZt Z3ItPmxvY2spOwo+PiAtCQlyZXR1cm4gMDsKPj4gKwkJcmV0dXJuIC1FTk9TUEM7Cj4+IAl9Cj4+ IAlhdG9taWM2NF9zdWIobWVtLT5udW1fcGFnZXMsICZtZ3ItPmF2YWlsYWJsZSk7Cj4+IAlzcGlu X3VubG9jaygmbWdyLT5sb2NrKTsKPj4gQEAgLTI0OSw4ICsyNDksNiBAQCBzdGF0aWMgaW50IGFt ZGdwdV9ndHRfbWdyX25ldyhzdHJ1Y3QKPj4gdHRtX21lbV90eXBlX21hbmFnZXIgKm1hbiwKPj4g CQlyID0gYW1kZ3B1X2d0dF9tZ3JfYWxsb2MobWFuLCB0Ym8sIHBsYWNlLCBtZW0pOwo+PiAJCWlm ICh1bmxpa2VseShyKSkgewo+PiAJCQlrZnJlZShub2RlKTsKPj4gLQkJCW1lbS0+bW1fbm9kZSA9 IE5VTEw7Cj4gSG1tLCBhbWRncHVfZ3R0X21ncl9kZWwoKSBncmFicyBtZW0tPm1tX25vZGUgYW5k IGtmcmVlcyBpdC4KPgo+IElmIHRoaXMgdmFsdWUgaXMgbm90IE5VTCwgaXQgbG9va3MgbGlrZSBi YWQgdGhpbmdzIGNvdWxkIGhhcHBlbi4KPgo+IFdpbGwgX21ncl9kZWwgbmV2ZXIgZ2V0IGNhbGxl ZCBpbiB0aGlzIGNhc2U/CgpZZXMsIGV2ZXJ5dGhpbmcgZWxzZSB3b3VsZCBiZSBhIGJ1Zy4KCj4g VXNpbmcgdGhlIHJldHVybiB2YWx1ZSBzZWVtcyBwcmV0dHkgcmVhc29uYWJsZSwgbGVhdmluZyBi YWQgcG9pbnRlcnMKPiBseWluZyBhcm91bmQgbWFrZXMgbWUgc2xpZ2h0bHkgbmVydm91cy4KClRo ZSBjYWxsZXIgc2hvdWxkIG5vdCB0b3VjaCB0aGUgbWVtYmVyIHdoZW4gYW4gZXJyb3Igb2NjdXJy ZWQgc2luY2UgaXQgCmlzIGNlcnRhaW5seSBub3QgaW5pdGlhbGl6ZWQuCgpCdXQgaXQgbWlnaHQg YmUgYSBnb29kIGlkZWEgdG8gemVybyBpbml0aWFsaXplIHRoZSBzdHJ1Y3R1cmUgYnkgdGhlIApj YWxsZXIganVzdCB0byBiZSBzdXJlLgoKVGhhbmtzIGZvciB0aGUgY29tbWVudCwKQ2hyaXN0aWFu LgoKPgo+IE1pa2UKPgo+PiAtCQkJciA9IDA7Cj4+IAkJCWdvdG8gZXJyX291dDsKPj4gCQl9Cj4+ IAl9IGVsc2Ugewo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X3ZyYW1fbWdyLmMKPj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdnJh bV9tZ3IuYwo+PiBpbmRleCAxMjhhNjY3ZWQ4ZmEuLmU4ZDFkZDU2NDAwNiAxMDA2NDQKPj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZyYW1fbWdyLmMKPj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZyYW1fbWdyLmMKPj4gQEAgLTMzNiw4 ICszMzYsNyBAQCBzdGF0aWMgaW50IGFtZGdwdV92cmFtX21ncl9uZXcoc3RydWN0Cj4+IHR0bV9t ZW1fdHlwZV9tYW5hZ2VyICptYW4sCj4+IAltZW1fYnl0ZXMgPSAodTY0KW1lbS0+bnVtX3BhZ2Vz IDw8IFBBR0VfU0hJRlQ7Cj4+IAlpZiAoYXRvbWljNjRfYWRkX3JldHVybihtZW1fYnl0ZXMsICZt Z3ItPnVzYWdlKSA+IG1heF9ieXRlcykgewo+PiAJCWF0b21pYzY0X3N1YihtZW1fYnl0ZXMsICZt Z3ItPnVzYWdlKTsKPj4gLQkJbWVtLT5tbV9ub2RlID0gTlVMTDsKPj4gLQkJcmV0dXJuIDA7Cj4+ ICsJCXJldHVybiAtRU5PU1BDOwo+PiAJfQo+Pgo+PiAJaWYgKHBsYWNlLT5mbGFncyAmIFRUTV9Q TF9GTEFHX0NPTlRJR1VPVVMpIHsKPj4gQEAgLTQxNyw3ICs0MTYsNyBAQCBzdGF0aWMgaW50IGFt ZGdwdV92cmFtX21ncl9uZXcoc3RydWN0Cj4+IHR0bV9tZW1fdHlwZV9tYW5hZ2VyICptYW4sCj4+ IAlhdG9taWM2NF9zdWIobWVtLT5udW1fcGFnZXMgPDwgUEFHRV9TSElGVCwgJm1nci0+dXNhZ2Up Owo+Pgo+PiAJa3ZmcmVlKG5vZGVzKTsKPj4gLQlyZXR1cm4gciA9PSAtRU5PU1BDID8gMCA6IHI7 Cj4+ICsJcmV0dXJuIHI7Cj4+IH0KPj4KPj4gLyoqCj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vbm91dmVhdS9ub3V2ZWF1X3R0bS5jCj4+IGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUv bm91dmVhdV90dG0uYwo+PiBpbmRleCA3Y2EwYTI0OTg1MzIuLmU4OWVhMDUyY2Y3MSAxMDA2NDQK Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbm91dmVhdV90dG0uYwo+PiArKysgYi9k cml2ZXJzL2dwdS9kcm0vbm91dmVhdS9ub3V2ZWF1X3R0bS5jCj4+IEBAIC03NSwxMCArNzUsNiBA QCBub3V2ZWF1X3ZyYW1fbWFuYWdlcl9uZXcoc3RydWN0Cj4+IHR0bV9tZW1fdHlwZV9tYW5hZ2Vy ICptYW4sCj4+IAlyZXQgPSBub3V2ZWF1X21lbV92cmFtKHJlZywgbnZiby0+Y29udGlnLCBudmJv LT5wYWdlKTsKPj4gCWlmIChyZXQpIHsKPj4gCQlub3V2ZWF1X21lbV9kZWwocmVnKTsKPj4gLQkJ aWYgKHJldCA9PSAtRU5PU1BDKSB7Cj4+IC0JCQlyZWctPm1tX25vZGUgPSBOVUxMOwo+PiAtCQkJ cmV0dXJuIDA7Cj4+IC0JCX0KPj4gCQlyZXR1cm4gcmV0Owo+PiAJfQo+Pgo+PiBAQCAtMTM5LDEw ICsxMzUsNiBAQCBudjA0X2dhcnRfbWFuYWdlcl9uZXcoc3RydWN0Cj4+IHR0bV9tZW1fdHlwZV9t YW5hZ2VyICptYW4sCj4+IAkJCSAgIHJlZy0+bnVtX3BhZ2VzIDw8IFBBR0VfU0hJRlQsICZtZW0t PnZtYVswXSk7Cj4+IAlpZiAocmV0KSB7Cj4+IAkJbm91dmVhdV9tZW1fZGVsKHJlZyk7Cj4+IC0J CWlmIChyZXQgPT0gLUVOT1NQQykgewo+PiAtCQkJcmVnLT5tbV9ub2RlID0gTlVMTDsKPj4gLQkJ CXJldHVybiAwOwo+PiAtCQl9Cj4+IAkJcmV0dXJuIHJldDsKPj4gCX0KPj4KPj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS90dG0vdHRtX2JvLmMgYi9kcml2ZXJzL2dwdS9kcm0vdHRtL3R0 bV9iby5jCj4+IGluZGV4IGY3M2I4MWMyNTc2ZS4uMTVmOWIxOWZhMDBkIDEwMDY0NAo+PiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vdHRtL3R0bV9iby5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS90 dG0vdHRtX2JvLmMKPj4gQEAgLTkxNiwxMCArOTE2LDEwIEBAIHN0YXRpYyBpbnQgdHRtX2JvX21l bV9mb3JjZV9zcGFjZShzdHJ1Y3QKPj4gdHRtX2J1ZmZlcl9vYmplY3QgKmJvLAo+PiAJdGlja2V0 ID0gZG1hX3Jlc3ZfbG9ja2luZ19jdHgoYm8tPmJhc2UucmVzdik7Cj4+IAlkbyB7Cj4+IAkJcmV0 ID0gKCptYW4tPmZ1bmMtPmdldF9ub2RlKShtYW4sIGJvLCBwbGFjZSwgbWVtKTsKPj4gLQkJaWYg KHVubGlrZWx5KHJldCAhPSAwKSkKPj4gLQkJCXJldHVybiByZXQ7Cj4+IC0JCWlmIChtZW0tPm1t X25vZGUpCj4+ICsJCWlmIChsaWtlbHkoIXJldCkpCj4+IAkJCWJyZWFrOwo+PiArCQlpZiAodW5s aWtlbHkocmV0ICE9IC1FTk9TUEMpKQo+PiArCQkJcmV0dXJuIHJldDsKPj4gCQlyZXQgPSB0dG1f bWVtX2V2aWN0X2ZpcnN0KGJkZXYsIG1lbS0+bWVtX3R5cGUsIHBsYWNlLAo+PiBjdHgsCj4+IAkJ CQkJICB0aWNrZXQpOwo+PiAJCWlmICh1bmxpa2VseShyZXQgIT0gMCkpCj4+IEBAIC0xMDYzLDEy ICsxMDYzLDExIEBAIGludCB0dG1fYm9fbWVtX3NwYWNlKHN0cnVjdCB0dG1fYnVmZmVyX29iamVj dAo+PiAqYm8sCj4+Cj4+IAkJbWFuID0gJmJkZXYtPm1hblttZW0tPm1lbV90eXBlXTsKPj4gCQly ZXQgPSAoKm1hbi0+ZnVuYy0+Z2V0X25vZGUpKG1hbiwgYm8sIHBsYWNlLCBtZW0pOwo+PiArCQlp ZiAocmV0ID09IC1FTk9TUEMpCj4+ICsJCQljb250aW51ZTsKPj4gCQlpZiAodW5saWtlbHkocmV0 KSkKPj4gCQkJZ290byBlcnJvcjsKPj4KPj4gLQkJaWYgKCFtZW0tPm1tX25vZGUpCj4+IC0JCQlj b250aW51ZTsKPj4gLQo+PiAJCXJldCA9IHR0bV9ib19hZGRfbW92ZV9mZW5jZShibywgbWFuLCBt ZW0sIGN0eC0KPj4+IG5vX3dhaXRfZ3B1KTsKPj4gCQlpZiAodW5saWtlbHkocmV0KSkgewo+PiAJ CQkoKm1hbi0+ZnVuYy0+cHV0X25vZGUpKG1hbiwgbWVtKTsKPj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS90dG0vdHRtX2JvX21hbmFnZXIuYwo+PiBiL2RyaXZlcnMvZ3B1L2RybS90dG0v dHRtX2JvX21hbmFnZXIuYwo+PiBpbmRleCAxOGQzZGViY2M5NDkuLmZhY2QzMDQ5YzNhYSAxMDA2 NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fYm9fbWFuYWdlci5jCj4+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS90dG0vdHRtX2JvX21hbmFnZXIuYwo+PiBAQCAtODYsNyArODYsNyBA QCBzdGF0aWMgaW50IHR0bV9ib19tYW5fZ2V0X25vZGUoc3RydWN0Cj4+IHR0bV9tZW1fdHlwZV9t YW5hZ2VyICptYW4sCj4+IAkJbWVtLT5zdGFydCA9IG5vZGUtPnN0YXJ0Owo+PiAJfQo+Pgo+PiAt CXJldHVybiAwOwo+PiArCXJldHVybiByZXQ7Cj4+IH0KPj4KPj4gc3RhdGljIHZvaWQgdHRtX2Jv X21hbl9wdXRfbm9kZShzdHJ1Y3QgdHRtX21lbV90eXBlX21hbmFnZXIgKm1hbiwKPj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2dtcmlkX21hbmFnZXIuYwo+PiBi L2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2dtcmlkX21hbmFnZXIuYwo+PiBpbmRleCA3 ZGE3NTJjYTFjMzQuLjRhNzZmYzcxMTRhZCAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L3Ztd2dmeC92bXdnZnhfZ21yaWRfbWFuYWdlci5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS92 bXdnZngvdm13Z2Z4X2dtcmlkX21hbmFnZXIuYwo+PiBAQCAtNTMsOCArNTMsNiBAQCBzdGF0aWMg aW50IHZtd19nbXJpZF9tYW5fZ2V0X25vZGUoc3RydWN0Cj4+IHR0bV9tZW1fdHlwZV9tYW5hZ2Vy ICptYW4sCj4+IAkJKHN0cnVjdCB2bXdnZnhfZ21yaWRfbWFuICopbWFuLT5wcml2Owo+PiAJaW50 IGlkOwo+Pgo+PiAtCW1lbS0+bW1fbm9kZSA9IE5VTEw7Cj4+IC0KPj4gCWlkID0gaWRhX2FsbG9j X21heCgmZ21hbi0+Z21yX2lkYSwgZ21hbi0+bWF4X2dtcl9pZHMgLSAxLAo+PiBHRlBfS0VSTkVM KTsKPj4gCWlmIChpZCA8IDApCj4+IAkJcmV0dXJuIChpZCAhPSAtRU5PTUVNID8gMCA6IGlkKTsK Pj4gQEAgLTc4LDcgKzc2LDcgQEAgc3RhdGljIGludCB2bXdfZ21yaWRfbWFuX2dldF9ub2RlKHN0 cnVjdAo+PiB0dG1fbWVtX3R5cGVfbWFuYWdlciAqbWFuLAo+PiAJZ21hbi0+dXNlZF9nbXJfcGFn ZXMgLT0gYm8tPm51bV9wYWdlczsKPj4gCXNwaW5fdW5sb2NrKCZnbWFuLT5sb2NrKTsKPj4gCWlk YV9mcmVlKCZnbWFuLT5nbXJfaWRhLCBpZCk7Cj4+IC0JcmV0dXJuIDA7Cj4+ICsJcmV0dXJuIC1F Tk9TUEM7Cj4+IH0KPj4KPj4gc3RhdGljIHZvaWQgdm13X2dtcmlkX21hbl9wdXRfbm9kZShzdHJ1 Y3QgdHRtX21lbV90eXBlX21hbmFnZXIKPj4gKm1hbiwKPj4gLS0KPj4gMi4xNy4xCj4+Cj4+IF9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4+IGRyaS1kZXZl bCBtYWlsaW5nIGxpc3QKPj4gZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+PiBodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1h aWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==