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=-13.5 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED 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 578BEC433B4 for ; Thu, 29 Apr 2021 19:01:06 +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 EA3906143E for ; Thu, 29 Apr 2021 19:01:05 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org EA3906143E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 548836E303; Thu, 29 Apr 2021 19:01:05 +0000 (UTC) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by gabe.freedesktop.org (Postfix) with ESMTPS id 69B356E303 for ; Thu, 29 Apr 2021 19:01:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1619722863; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=89SyVrdao/AN9O3FbdqC+LAk6++2bSAzBFK7EKGZaOw=; b=E41DKrQmWycfCHXwI8re47CDZ7x/Ln+FVeDyTQVGU4NPC4xTsovlei6iHiZGa22yTvjXxd H2gb2YGAf1fIvSvfqNc5AMwlz16GbbQPakv98+66p98LWSHKUmYjs2WFC8I7R0zzvCYMVi X0gRmseopV9e8xVX6W2lH4HMdNrUgjk= Received: from mail-qv1-f70.google.com (mail-qv1-f70.google.com [209.85.219.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-488-6RnKWUfCMsiN0fDjL-rPLw-1; Thu, 29 Apr 2021 15:00:59 -0400 X-MC-Unique: 6RnKWUfCMsiN0fDjL-rPLw-1 Received: by mail-qv1-f70.google.com with SMTP id i19-20020a0cf3930000b02901c3869f9a1dso1496006qvk.5 for ; Thu, 29 Apr 2021 12:00:59 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:organization:user-agent:mime-version :content-transfer-encoding; bh=89SyVrdao/AN9O3FbdqC+LAk6++2bSAzBFK7EKGZaOw=; b=gF28VN7pe0JTnUukEXEPOW7aUFBZ2D/6qbSr77PCNK52Afa7W9xepM2z5AC9irJW0K NgaR4AZIICy33LOOcMqc/+WfYpUS0N82gXs437ZXOBvmEzigd/da7fGyURp5Mu0R/9zp 3z2fwVcbGQ+O9atWwWVLEF/B70LkJ0sTqXsJ8sxxIaKknOxRr/zRE5+XRSoWjxxZlgMo NQAKIH8Qj1cDDvbGbn82VCaasEciqFvL34QSUMMRIK/yH3Lc1L15Qrg6lj4DLgdBS6LR gQ6CtH2wdG+mBtgK6H+kzxgQuiWQYKb7aIV1f5TJBi0Uh9SFadctRd9QWfd99O0yIvq3 hKdg== X-Gm-Message-State: AOAM533oeeQRw0sWSrfuWQo/xThKt6+hDm7WKUWvHx6MYY0g4G8GMWWa 3Wk7r5uOeDeoG0ueklejtk6fi4WNCb+g4TCgm40bb2NEQB5z88U1jre3NyELpmrqxc85yNtqneY p132l4FqHnyv51lRj1ArkiJwHo2f1 X-Received: by 2002:ae9:f308:: with SMTP id p8mr1247818qkg.392.1619722858976; Thu, 29 Apr 2021 12:00:58 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxKG/k7/v1bfzDwBPKGsm1lQqFa7nR7PYnemFzdDRV5QtfH7fpB6WzP7cKiiHi/kw2XSTn+Uw== X-Received: by 2002:ae9:f308:: with SMTP id p8mr1247781qkg.392.1619722858695; Thu, 29 Apr 2021 12:00:58 -0700 (PDT) Received: from Ruby.lyude.net (pool-108-49-102-102.bstnma.fios.verizon.net. [108.49.102.102]) by smtp.gmail.com with ESMTPSA id l71sm2902010qke.27.2021.04.29.12.00.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Apr 2021 12:00:58 -0700 (PDT) Message-ID: <2bc4cf58838635b357e77d2a132fd901dc477c71.camel@redhat.com> From: Lyude Paul To: Nikola Cornij , amd-gfx@lists.freedesktop.org, Jani Nikula , Ben Skeggs Date: Thu, 29 Apr 2021 15:00:56 -0400 In-Reply-To: <20210428234346.1085977-2-nikola.cornij@amd.com> References: <20210428234346.1085977-1-nikola.cornij@amd.com> <20210428234346.1085977-2-nikola.cornij@amd.com> Organization: Red Hat User-Agent: Evolution 3.38.4 (3.38.4-1.fc33) MIME-Version: 1.0 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lyude@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Subject: [Intel-gfx] [Heads up to maintainers] Re: [PATCH v8 1/1] drm/drm_mst: Use Extended Base Receiver Capability DPCD space X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, koba.ko@canonical.com, aurabindo.pillai@amd.com, mikita.lipski@amd.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" SkZZSSBKYW5pIGFuZCBCZW46IEkgd2lsbCBiZSBwdXNoaW5nIHRoaXMgcGF0Y2ggdG8gZHJtLW1p c2MtbmV4dCBzb21ldGltZQp0b2RheSBpZiB0aGVyZSdzIG5vIG9iamVjdGlvbnMKCk9uIFdlZCwg MjAyMS0wNC0yOCBhdCAxOTo0MyAtMDQwMCwgTmlrb2xhIENvcm5paiB3cm90ZToKPiBbd2h5XQo+ IERQIDEuNGEgc3BlYyBtYWRhdGVzIHRoYXQgaWYgRFBfRVhURU5ERURfUkVDRUlWRVJfQ0FQX0ZJ RUxEX1BSRVNFTlQgaXMKPiBzZXQsIEV4dGVuZGVkIEJhc2UgUmVjZWl2ZXIgQ2FwYWJpbGl0eSBE UENEIHNwYWNlIG11c3QgYmUgdXNlZC4gV2l0aG91dAo+IGRvaW5nIHRoYXQsIHRoZSB0aHJlZSBE UENEIHZhbHVlcyB0aGF0IGRpZmZlciB3aWxsIGJlIHdyb25nLCBsZWFkaW5nIHRvCj4gaW5jb3Jy ZWN0IG9yIGxpbWl0ZWQgZnVuY3Rpb25hbGl0eS4gTVNUIGxpbmsgcmF0ZSwgZm9yIGV4YW1wbGUs IGNvdWxkCj4gaGF2ZSBhIGxvd2VyIHZhbHVlLiBBbHNvLCBTeW5hcHRpY3MgcXVpcmsgd291bGRu J3Qgd29yayBvdXQgd2VsbCB3aGVuCj4gRXh0ZW5kZWQgRFBDRCB3YXMgbm90IHJlYWQsIHJlc3Vs dGluZyBpbiBubyBEU0MgZm9yIHN1Y2ggaHVicy4KPiAKPiBbaG93XQo+IE1vZGlmeSBNU1QgdG9w b2xvZ3kgbWFuYWdlciB0byB1c2UgdGhlIHZhbHVlcyBmcm9tIEV4dGVuZGVkIERQQ0Qgd2hlcmUK PiBhcHBsaWNhYmxlLgo+IAo+IFRvIHByZXZlbnQgcmVncmVzc2lvbiBvbiB0aGUgc291cmNlcyB0 aGF0IGhhdmUgYSBsb3dlciBtYXhpbXVtIGxpbmsgcmF0ZQo+IGNhcGFiaWxpdHkgdGhhbiBNQVhf TElOS19SQVRFIGZyb20gRXh0ZW5kZWQgRFBDRCwgaGF2ZSB0aGUgZHJpdmVycwo+IHN1cHBseSBt YXhpbXVtIGxhbmUgY291bnQgYW5kIHJhdGUgYXQgaW5pdGlhbGl6YXRpb24gdGltZS4KPiAKPiBU aGlzIGFsc28gcmV2ZXJ0cyAnY29tbWl0IDJkY2FiODc1ZTc2MyAoIlJldmVydCBkcm0vZHBfbXN0 OiBSZXRyaWV2ZQo+IGV4dGVuZGVkIERQQ0QgY2FwcyBmb3IgdG9wb2xvZ3kgbWFuYWdlciIpJywg YnJpbmluZyB0aGUgY2hhbmdlIGJhY2sgdG8KPiB0aGUgb3JpZ2luYWwgJ2NvbW1pdCBhZDQ0YzAz MjA4ZTQgKCJkcm0vZHBfbXN0OiBSZXRyaWV2ZSBleHRlbmRlZCBEUENECj4gY2FwcyBmb3IgdG9w b2xvZ3kgbWFuYWdlciIpJy4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBOaWtvbGEgQ29ybmlqIDxuaWtv bGEuY29ybmlqQGFtZC5jb20+Cj4gLS0tCj4gwqAuLi4vZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1 X2RtX21zdF90eXBlcy5jwqDCoCB8wqAgNSArKysKPiDCoC4uLi9ncHUvZHJtL2FtZC9kaXNwbGF5 L2RjL2NvcmUvZGNfbGlua19kcC5jwqAgfCAxOCArKysrKysrKysrCj4gwqBkcml2ZXJzL2dwdS9k cm0vYW1kL2Rpc3BsYXkvZGMvZGNfbGluay5owqDCoMKgwqDCoCB8wqAgMiArKwo+IMKgZHJpdmVy cy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuY8KgwqDCoMKgwqDCoMKgwqAgfCAzMyArKysr KysrKysrKystLS0tLS0tCj4gwqBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rw X21zdC5jwqDCoCB8wqAgNiArKystCj4gwqBkcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9kaXNwbnY1 MC9kaXNwLmPCoMKgwqDCoMKgwqAgfMKgIDMgKy0KPiDCoGRyaXZlcnMvZ3B1L2RybS9yYWRlb24v cmFkZW9uX2RwX21zdC5jwqDCoMKgwqDCoMKgwqAgfMKgIDcgKysrKwo+IMKgaW5jbHVkZS9kcm0v ZHJtX2RwX21zdF9oZWxwZXIuaMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfCAxMiArKysr KystCj4gwqA4IGZpbGVzIGNoYW5nZWQsIDcxIGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygt KQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2Rt L2FtZGdwdV9kbV9tc3RfdHlwZXMuYwo+IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2Ft ZGdwdV9kbS9hbWRncHVfZG1fbXN0X3R5cGVzLmMKPiBpbmRleCA5OTc1NjdmNmYwYmEuLmI3ZTAx YjZmYjMyOCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvYW1kZ3B1 X2RtL2FtZGdwdV9kbV9tc3RfdHlwZXMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlz cGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtX21zdF90eXBlcy5jCj4gQEAgLTQyOSw2ICs0MjksOCBA QCB2b2lkIGFtZGdwdV9kbV9pbml0aWFsaXplX2RwX2Nvbm5lY3RvcihzdHJ1Y3QKPiBhbWRncHVf ZGlzcGxheV9tYW5hZ2VyICpkbSwKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHN0cnVjdCBhbWRncHVf ZG1fY29ubmVjdG9yCj4gKmFjb25uZWN0b3IsCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpbnQgbGlu a19pbmRleCkKPiDCoHsKPiArwqDCoMKgwqDCoMKgwqBzdHJ1Y3QgZGNfbGlua19zZXR0aW5ncyBt YXhfbGlua19lbmNfY2FwID0gezB9Owo+ICsKPiDCoMKgwqDCoMKgwqDCoMKgYWNvbm5lY3Rvci0+ ZG1fZHBfYXV4LmF1eC5uYW1lID0KPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGth c3ByaW50ZihHRlBfS0VSTkVMLCAiQU1ER1BVIERNIGF1eCBodyBidXMgJWQiLAo+IMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxpbmtfaW5kZXgpOwo+ IEBAIC00NDMsNiArNDQ1LDcgQEAgdm9pZCBhbWRncHVfZG1faW5pdGlhbGl6ZV9kcF9jb25uZWN0 b3Ioc3RydWN0Cj4gYW1kZ3B1X2Rpc3BsYXlfbWFuYWdlciAqZG0sCj4gwqDCoMKgwqDCoMKgwqDC oGlmIChhY29ubmVjdG9yLT5iYXNlLmNvbm5lY3Rvcl90eXBlID09IERSTV9NT0RFX0NPTk5FQ1RP Ul9lRFApCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1cm47Cj4gwqAKPiAr wqDCoMKgwqDCoMKgwqBkY19saW5rX2RwX2dldF9tYXhfbGlua19lbmNfY2FwKGFjb25uZWN0b3It PmRjX2xpbmssCj4gJm1heF9saW5rX2VuY19jYXApOwo+IMKgwqDCoMKgwqDCoMKgwqBhY29ubmVj dG9yLT5tc3RfbWdyLmNicyA9ICZkbV9tc3RfY2JzOwo+IMKgwqDCoMKgwqDCoMKgwqBkcm1fZHBf bXN0X3RvcG9sb2d5X21ncl9pbml0KAo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg JmFjb25uZWN0b3ItPm1zdF9tZ3IsCj4gQEAgLTQ1MCw2ICs0NTMsOCBAQCB2b2lkIGFtZGdwdV9k bV9pbml0aWFsaXplX2RwX2Nvbm5lY3RvcihzdHJ1Y3QKPiBhbWRncHVfZGlzcGxheV9tYW5hZ2Vy ICpkbSwKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCZhY29ubmVjdG9yLT5kbV9k cF9hdXguYXV4LAo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgMTYsCj4gwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqA0LAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqBtYXhfbGlua19lbmNfY2FwLmxhbmVfY291bnQsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoG1heF9saW5rX2VuY19jYXAubGlua19yYXRlLAo+IMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgYWNvbm5lY3Rvci0+Y29ubmVjdG9yX2lkKTsKPiDCoAo+IMKgwqDCoMKg wqDCoMKgwqBkcm1fY29ubmVjdG9yX2F0dGFjaF9kcF9zdWJjb25uZWN0b3JfcHJvcGVydHkoJmFj b25uZWN0b3ItPmJhc2UpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3Bs YXkvZGMvY29yZS9kY19saW5rX2RwLmMKPiBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9k Yy9jb3JlL2RjX2xpbmtfZHAuYwo+IGluZGV4IDdkMmU0MzNjMjI3NS4uNmZlNjZiN2VlNTNlIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9kYy9jb3JlL2RjX2xpbmtf ZHAuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9kYy9jb3JlL2RjX2xpbmtf ZHAuYwo+IEBAIC0xODk0LDYgKzE4OTQsMjQgQEAgYm9vbCBkY19saW5rX2RwX3N5bmNfbHRfZW5k KHN0cnVjdCBkY19saW5rICpsaW5rLAo+IGJvb2wgbGlua19kb3duKQo+IMKgwqDCoMKgwqDCoMKg wqByZXR1cm4gdHJ1ZTsKPiDCoH0KPiDCoAo+ICtib29sIGRjX2xpbmtfZHBfZ2V0X21heF9saW5r X2VuY19jYXAoY29uc3Qgc3RydWN0IGRjX2xpbmsgKmxpbmssIHN0cnVjdAo+IGRjX2xpbmtfc2V0 dGluZ3MgKm1heF9saW5rX2VuY19jYXApCj4gK3sKPiArwqDCoMKgwqDCoMKgwqBpZiAoIW1heF9s aW5rX2VuY19jYXApIHsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgRENfTE9HX0VS Uk9SKCIlczogQ291bGQgbm90IHJldHVybiBtYXggbGluayBlbmNvZGVyIGNhcHMiLAo+IF9fZnVu Y19fKTsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIGZhbHNlOwo+ICvC oMKgwqDCoMKgwqDCoH0KPiArCj4gK8KgwqDCoMKgwqDCoMKgaWYgKGxpbmstPmxpbmtfZW5jLT5m dW5jcy0+Z2V0X21heF9saW5rX2NhcCkgewo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqBsaW5rLT5saW5rX2VuYy0+ZnVuY3MtPmdldF9tYXhfbGlua19jYXAobGluay0+bGlua19lbmMs Cj4gbWF4X2xpbmtfZW5jX2NhcCk7Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHJl dHVybiB0cnVlOwo+ICvCoMKgwqDCoMKgwqDCoH0KPiArCj4gK8KgwqDCoMKgwqDCoMKgRENfTE9H X0VSUk9SKCIlczogTWF4IGxpbmsgZW5jb2RlciBjYXBzIHVua25vd24iLCBfX2Z1bmNfXyk7Cj4g K8KgwqDCoMKgwqDCoMKgbWF4X2xpbmtfZW5jX2NhcC0+bGFuZV9jb3VudCA9IDE7Cj4gK8KgwqDC oMKgwqDCoMKgbWF4X2xpbmtfZW5jX2NhcC0+bGlua19yYXRlID0gNjsKPiArwqDCoMKgwqDCoMKg wqByZXR1cm4gZmFsc2U7Cj4gK30KPiArCj4gwqBzdGF0aWMgc3RydWN0IGRjX2xpbmtfc2V0dGlu Z3MgZ2V0X21heF9saW5rX2NhcChzdHJ1Y3QgZGNfbGluayAqbGluaykKPiDCoHsKPiDCoMKgwqDC oMKgwqDCoMKgc3RydWN0IGRjX2xpbmtfc2V0dGluZ3MgbWF4X2xpbmtfY2FwID0gezB9Owo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvZGMvZGNfbGluay5oCj4gYi9k cml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvZGMvZGNfbGluay5oCj4gaW5kZXggYjAwMTNlNjc0 ODY0Li5jYjZkMDU0M2Q4MzkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNw bGF5L2RjL2RjX2xpbmsuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9kYy9k Y19saW5rLmgKPiBAQCAtMzQ2LDYgKzM0Niw4IEBAIGJvb2wgZGNfbGlua19kcF9zZXRfdGVzdF9w YXR0ZXJuKAo+IMKgwqDCoMKgwqDCoMKgwqBjb25zdCB1bnNpZ25lZCBjaGFyICpwX2N1c3RvbV9w YXR0ZXJuLAo+IMKgwqDCoMKgwqDCoMKgwqB1bnNpZ25lZCBpbnQgY3VzdF9wYXR0ZXJuX3NpemUp Owo+IMKgCj4gK2Jvb2wgZGNfbGlua19kcF9nZXRfbWF4X2xpbmtfZW5jX2NhcChjb25zdCBzdHJ1 Y3QgZGNfbGluayAqbGluaywgc3RydWN0Cj4gZGNfbGlua19zZXR0aW5ncyAqbWF4X2xpbmtfZW5j X2NhcCk7Cj4gKwo+IMKgdm9pZCBkY19saW5rX2VuYWJsZV9ocGRfZmlsdGVyKHN0cnVjdCBkY19s aW5rICpsaW5rLCBib29sIGVuYWJsZSk7Cj4gwqAKPiDCoGJvb2wgZGNfbGlua19pc19kcF9zaW5r X3ByZXNlbnQoc3RydWN0IGRjX2xpbmsgKmxpbmspOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vZHJtX2RwX21zdF90b3BvbG9neS5jCj4gYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2RwX21z dF90b3BvbG9neS5jCj4gaW5kZXggNTUzOWE5MWI0MDMxLi4zMWQ5ZjNmZjBkMzkgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMKPiBAQCAtMzcwOCwxOSArMzcwOCwyNCBA QCBpbnQgZHJtX2RwX21zdF90b3BvbG9neV9tZ3Jfc2V0X21zdChzdHJ1Y3QKPiBkcm1fZHBfbXN0 X3RvcG9sb2d5X21nciAqbWdyLCBib29sIG1zCj4gwqDCoMKgwqDCoMKgwqDCoC8qIHNldCB0aGUg ZGV2aWNlIGludG8gTVNUIG1vZGUgKi8KPiDCoMKgwqDCoMKgwqDCoMKgaWYgKG1zdF9zdGF0ZSkg ewo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgc3RydWN0IGRybV9kcF9wYXlsb2Fk IHJlc2V0X3BheTsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaW50IGxhbmVfY291 bnQ7Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGludCBsaW5rX3JhdGU7Cj4gwqAK PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoFdBUk5fT04obWdyLT5tc3RfcHJpbWFy eSk7Cj4gwqAKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoC8qIGdldCBkcGNkIGlu Zm8gKi8KPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0ID0gZHJtX2RwX2RwY2Rf cmVhZChtZ3ItPmF1eCwgRFBfRFBDRF9SRVYsIG1nci0+ZHBjZCwKPiBEUF9SRUNFSVZFUl9DQVBf U0laRSk7Cj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlmIChyZXQgIT0gRFBfUkVD RUlWRVJfQ0FQX1NJWkUpIHsKPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoGRybV9kYmdfa21zKG1nci0+ZGV2LCAiZmFpbGVkIHRvIHJlYWQgRFBDRFxuIik7 Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHJldCA9IGRybV9kcF9yZWFkX2RwY2Rf Y2FwcyhtZ3ItPmF1eCwgbWdyLT5kcGNkKTsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgaWYgKHJldCA8IDApIHsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoGRybV9kYmdfa21zKG1nci0+ZGV2LCAiJXM6IGZhaWxlZCB0byByZWFkIERQQ0Qs IHJldAo+ICVkXG4iLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBtZ3ItPmF1eC0+bmFtZSwgcmV0KTsKPiDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBnb3RvIG91dF91bmxv Y2s7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB9Cj4gwqAKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgbGFuZV9jb3VudCA9IG1pbl90KGludCwgbWdyLT5kcGNkWzJd ICYKPiBEUF9NQVhfTEFORV9DT1VOVF9NQVNLLCBtZ3ItPm1heF9sYW5lX2NvdW50KTsKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgbGlua19yYXRlID0gbWluX3QoaW50LCBtZ3ItPmRw Y2RbMV0sIG1nci0+bWF4X2xpbmtfcmF0ZSk7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqBtZ3ItPnBibl9kaXYgPSBkcm1fZHBfZ2V0X3ZjX3BheWxvYWRfYncobWdyLAo+IC0KPiDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGRybV9k cF9id19jb2RlX3RvX2xpbmsKPiBfcmF0ZShtZ3ItPmRwY2RbMV0pLAo+IC3CoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoG1nci0+ZHBjZFsyXSAmCj4g RFBfTUFYX0xBTkVfQ09VTlRfTUFTSyk7Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgZHJtX2RwX2J3X2NvZGVfdG9fbGkKPiBua19yYXRlKGxp bmtfcmF0ZSksCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgbGFuZV9jb3VudCk7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBp ZiAobWdyLT5wYm5fZGl2ID09IDApIHsKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqByZXQgPSAtRUlOVkFMOwo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGdvdG8gb3V0X3VubG9jazsKPiBAQCAtNTQ0OCwxNCAr NTQ1MywxNyBAQCBFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfZ2V0X21zdF90b3BvbG9neV9zdGF0 ZSk7Cj4gwqAgKiBAYXV4OiBEUCBoZWxwZXIgYXV4IGNoYW5uZWwgdG8gdGFsayB0byB0aGlzIGRl dmljZQo+IMKgICogQG1heF9kcGNkX3RyYW5zYWN0aW9uX2J5dGVzOiBodyBzcGVjaWZpYyBEUENE IHRyYW5zYWN0aW9uIGxpbWl0Cj4gwqAgKiBAbWF4X3BheWxvYWRzOiBtYXhpbXVtIG51bWJlciBv ZiBwYXlsb2FkcyB0aGlzIEdQVSBjYW4gc291cmNlCj4gKyAqIEBtYXhfbGFuZV9jb3VudDogbWF4 aW11bSBudW1iZXIgb2YgbGFuZXMgdGhpcyBHUFUgc3VwcG9ydHMKPiArICogQG1heF9saW5rX3Jh dGU6IG1heGltdW0gbGluayByYXRlIHRoaXMgR1BVIHN1cHBvcnRzLCB1bml0cyBhcyBpbiBEUENE Cj4gwqAgKiBAY29ubl9iYXNlX2lkOiB0aGUgY29ubmVjdG9yIG9iamVjdCBJRCB0aGUgTVNUIGRl dmljZSBpcyBjb25uZWN0ZWQgdG8uCj4gwqAgKgo+IMKgICogUmV0dXJuIDAgZm9yIHN1Y2Nlc3Ms IG9yIG5lZ2F0aXZlIGVycm9yIGNvZGUgb24gZmFpbHVyZQo+IMKgICovCj4gwqBpbnQgZHJtX2Rw X21zdF90b3BvbG9neV9tZ3JfaW5pdChzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1n ciwKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZHBfYXV4Cj4g KmF1eCwKPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgaW50IG1heF9kcGNkX3RyYW5zYWN0aW9uX2J5dGVzLAo+IC3CoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBp bnQgbWF4X3BheWxvYWRzLCBpbnQgY29ubl9iYXNlX2lkKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpbnQgbWF4X2RwY2Rf dHJhbnNhY3Rpb25fYnl0ZXMsIGludAo+IG1heF9wYXlsb2FkcywKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaW50IG1heF9s YW5lX2NvdW50LCBpbnQgbWF4X2xpbmtfcmF0ZSwKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaW50IGNvbm5fYmFzZV9pZCkK PiDCoHsKPiDCoMKgwqDCoMKgwqDCoMKgc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfc3RhdGUg Km1zdF9zdGF0ZTsKPiDCoAo+IEBAIC01NDkwLDYgKzU0OTgsOCBAQCBpbnQgZHJtX2RwX21zdF90 b3BvbG9neV9tZ3JfaW5pdChzdHJ1Y3QKPiBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLAo+ IMKgwqDCoMKgwqDCoMKgwqBtZ3ItPmF1eCA9IGF1eDsKPiDCoMKgwqDCoMKgwqDCoMKgbWdyLT5t YXhfZHBjZF90cmFuc2FjdGlvbl9ieXRlcyA9IG1heF9kcGNkX3RyYW5zYWN0aW9uX2J5dGVzOwo+ IMKgwqDCoMKgwqDCoMKgwqBtZ3ItPm1heF9wYXlsb2FkcyA9IG1heF9wYXlsb2FkczsKPiArwqDC oMKgwqDCoMKgwqBtZ3ItPm1heF9sYW5lX2NvdW50ID0gbWF4X2xhbmVfY291bnQ7Cj4gK8KgwqDC oMKgwqDCoMKgbWdyLT5tYXhfbGlua19yYXRlID0gbWF4X2xpbmtfcmF0ZTsKPiDCoMKgwqDCoMKg wqDCoMKgbWdyLT5jb25uX2Jhc2VfaWQgPSBjb25uX2Jhc2VfaWQ7Cj4gwqDCoMKgwqDCoMKgwqDC oGlmIChtYXhfcGF5bG9hZHMgKyAxID4gc2l6ZW9mKG1nci0+cGF5bG9hZF9tYXNrKSAqIDggfHwK PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG1heF9wYXlsb2FkcyArIDEgPiBzaXplb2YobWdyLT52 Y3BpX21hc2spICogOCkKPiBAQCAtNTg5NiwxNCArNTkwNiwxMyBAQCBzdHJ1Y3QgZHJtX2RwX2F1 eAo+ICpkcm1fZHBfbXN0X2RzY19hdXhfZm9yX3BvcnQoc3RydWN0IGRybV9kcF9tc3RfcG9ydCAq cG9ydCkKPiDCoMKgwqDCoMKgwqDCoMKgaWYgKGRybV9kcF9oYXNfcXVpcmsoJmRlc2MsIERQX0RQ Q0RfUVVJUktfRFNDX1dJVEhPVVRfVklSVFVBTF9EUENEKQo+ICYmCj4gwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBwb3J0LT5tZ3ItPmRwY2RbRFBfRFBDRF9SRVZdID49IERQX0RQQ0RfUkVWXzE0ICYm Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBwb3J0LT5wYXJlbnQgPT0gcG9ydC0+bWdyLT5tc3Rf cHJpbWFyeSkgewo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB1OCBkb3duc3RyZWFt cG9ydDsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgdTggZHBjZF9leHRbRFBfUkVD RUlWRVJfQ0FQX1NJWkVdOwo+IMKgCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlm IChkcm1fZHBfZHBjZF9yZWFkKCZwb3J0LT5hdXgsIERQX0RPV05TVFJFQU1QT1JUX1BSRVNFTlQs Cj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgJmRvd25zdHJlYW1wb3J0LCAxKSA8IDApCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoGlmIChkcm1fZHBfcmVhZF9kcGNkX2NhcHMocG9ydC0+bWdyLT5h dXgsIGRwY2RfZXh0KSA8IDApCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgcmV0dXJuIE5VTEw7Cj4gwqAKPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgaWYgKChkb3duc3RyZWFtcG9ydCAmIERQX0RXTl9TVFJNX1BPUlRfUFJFU0VOVCkgJiYK PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKGRvd25zdHJlYW1wb3J0ICYg RFBfRFdOX1NUUk1fUE9SVF9UWVBFX01BU0spCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoGlmICgoZHBjZF9leHRbRFBfRE9XTlNUUkVBTVBPUlRfUFJFU0VOVF0gJgo+IERQX0RXTl9T VFJNX1BPUlRfUFJFU0VOVCkgJiYKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICgoZHBjZF9leHRbRFBfRE9XTlNUUkVBTVBPUlRfUFJFU0VOVF0gJgo+IERQX0RXTl9TVFJN X1BPUlRfVFlQRV9NQVNLKQo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgIT0gRFBfRFdOX1NUUk1fUE9SVF9UWVBFX0FOQUxPRykpCj4gwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIHBvcnQtPm1nci0+YXV4Owo+IMKg wqDCoMKgwqDCoMKgwqB9Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfZHBfbXN0LmMKPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf ZHBfbXN0LmMKPiBpbmRleCA4NjAzODFkNjhkOWQuLmE0MjQ1ZWI0OGVmNCAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwX21zdC5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcF9tc3QuYwo+IEBAIC05NDIsNiArOTQy LDcgQEAgaW50ZWxfZHBfbXN0X2VuY29kZXJfaW5pdChzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0 Cj4gKmRpZ19wb3J0LCBpbnQgY29ubl9iYXNlX2lkKQo+IMKgwqDCoMKgwqDCoMKgwqBzdHJ1Y3Qg aW50ZWxfZHAgKmludGVsX2RwID0gJmRpZ19wb3J0LT5kcDsKPiDCoMKgwqDCoMKgwqDCoMKgZW51 bSBwb3J0IHBvcnQgPSBkaWdfcG9ydC0+YmFzZS5wb3J0Owo+IMKgwqDCoMKgwqDCoMKgwqBpbnQg cmV0Owo+ICvCoMKgwqDCoMKgwqDCoGludCBiaW9zX21heF9saW5rX3JhdGU7Cj4gwqAKPiDCoMKg wqDCoMKgwqDCoMKgaWYgKCFIQVNfRFBfTVNUKGk5MTUpIHx8IGludGVsX2RwX2lzX2VkcChpbnRl bF9kcCkpCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1cm4gMDsKPiBAQCAt OTU2LDggKzk1NywxMSBAQCBpbnRlbF9kcF9tc3RfZW5jb2Rlcl9pbml0KHN0cnVjdCBpbnRlbF9k aWdpdGFsX3BvcnQKPiAqZGlnX3BvcnQsIGludCBjb25uX2Jhc2VfaWQpCj4gwqAKPiDCoMKgwqDC oMKgwqDCoMKgLyogY3JlYXRlIGVuY29kZXJzICovCj4gwqDCoMKgwqDCoMKgwqDCoGludGVsX2Rw X2NyZWF0ZV9mYWtlX21zdF9lbmNvZGVycyhkaWdfcG9ydCk7Cj4gK8KgwqDCoMKgwqDCoMKgYmlv c19tYXhfbGlua19yYXRlID0gaW50ZWxfYmlvc19kcF9tYXhfbGlua19yYXRlKCZkaWdfcG9ydC0+ YmFzZSk7Cj4gwqDCoMKgwqDCoMKgwqDCoHJldCA9IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyX2lu aXQoJmludGVsX2RwLT5tc3RfbWdyLCAmaTkxNS0+ZHJtLAo+IC3CoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICZpbnRlbF9kcC0+YXV4LCAxNiwgMywKPiBjb25uX2Jhc2VfaWQpOwo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICZpbnRlbF9kcC0+YXV4LCAxNiwgMywKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCBkaWdfcG9ydC0+bWF4X2xhbmVzLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIGJpb3NfbWF4X2xpbmtfcmF0ZSAvIDI3MDAwLAo+IGNvbm5fYmFzZV9pZCk7Cj4gwqDC oMKgwqDCoMKgwqDCoGlmIChyZXQpCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBy ZXR1cm4gcmV0Owo+IMKgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rp c3BudjUwL2Rpc3AuYwo+IGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvZGlzcG52NTAvZGlzcC5j Cj4gaW5kZXggMWM5YzBjZGY4NWRiLi5lMDJmOWQyZDc0ZWIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL25vdXZlYXUvZGlzcG52NTAvZGlzcC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L25vdXZlYXUvZGlzcG52NTAvZGlzcC5jCj4gQEAgLTE2MTcsNyArMTYxNyw4IEBAIG52NTBfbXN0 bV9uZXcoc3RydWN0IG5vdXZlYXVfZW5jb2RlciAqb3V0cCwgc3RydWN0Cj4gZHJtX2RwX2F1eCAq YXV4LCBpbnQgYXV4X21heCwKPiDCoMKgwqDCoMKgwqDCoMKgbXN0bS0+bWdyLmNicyA9ICZudjUw X21zdG07Cj4gwqAKPiDCoMKgwqDCoMKgwqDCoMKgcmV0ID0gZHJtX2RwX21zdF90b3BvbG9neV9t Z3JfaW5pdCgmbXN0bS0+bWdyLCBkZXYsIGF1eCwgYXV4X21heCwKPiAtwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBtYXhfcGF5bG9hZHMsIGNvbm5fYmFzZV9pZCk7Cj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgbWF4X3BheWxvYWRzLCBvdXRwLT5kY2ItCj4gPmRwY29uZi5saW5rX25yLAo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG91dHAtPmRjYi0+ZHBjb25mLmxpbmtfYncsCj4g Y29ubl9iYXNlX2lkKTsKPiDCoMKgwqDCoMKgwqDCoMKgaWYgKHJldCkKPiDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoHJldHVybiByZXQ7Cj4gwqAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZHBfbXN0LmMKPiBiL2RyaXZlcnMvZ3B1L2RybS9yYWRl b24vcmFkZW9uX2RwX21zdC5jCj4gaW5kZXggNTljZjFkMjg4NDY1Li44ZjBiMmRjY2QxOTkgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZHBfbXN0LmMKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kcF9tc3QuYwo+IEBAIC02MjksMTMgKzYy OSwyMCBAQCBpbnQKPiDCoHJhZGVvbl9kcF9tc3RfaW5pdChzdHJ1Y3QgcmFkZW9uX2Nvbm5lY3Rv ciAqcmFkZW9uX2Nvbm5lY3RvcikKPiDCoHsKPiDCoMKgwqDCoMKgwqDCoMKgc3RydWN0IGRybV9k ZXZpY2UgKmRldiA9IHJhZGVvbl9jb25uZWN0b3ItPmJhc2UuZGV2Owo+ICvCoMKgwqDCoMKgwqDC oGludCBtYXhfbGlua19yYXRlOwo+IMKgCj4gwqDCoMKgwqDCoMKgwqDCoGlmICghcmFkZW9uX2Nv bm5lY3Rvci0+ZGRjX2J1cy0+aGFzX2F1eCkKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoHJldHVybiAwOwo+IMKgCj4gK8KgwqDCoMKgwqDCoMKgaWYgKHJhZGVvbl9jb25uZWN0b3Jf aXNfZHAxMl9jYXBhYmxlKCZyYWRlb25fY29ubmVjdG9yLT5iYXNlKSkKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgbWF4X2xpbmtfcmF0ZSA9IDB4MTQ7Cj4gK8KgwqDCoMKgwqDCoMKg ZWxzZQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBtYXhfbGlua19yYXRlID0gMHgw YTsKPiArCj4gwqDCoMKgwqDCoMKgwqDCoHJhZGVvbl9jb25uZWN0b3ItPm1zdF9tZ3IuY2JzID0g Jm1zdF9jYnM7Cj4gwqDCoMKgwqDCoMKgwqDCoHJldHVybiBkcm1fZHBfbXN0X3RvcG9sb2d5X21n cl9pbml0KCZyYWRlb25fY29ubmVjdG9yLT5tc3RfbWdyLCBkZXYsCj4gwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgJnJhZGVvbl9jb25uZWN0b3ItPmRkY19idXMtPmF1eCwKPiAxNiwgNiwK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDQsIG1heF9saW5rX3JhdGUsCj4gwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmFkZW9uX2Nvbm5lY3Rvci0+YmFzZS5iYXNlLmlkKTsK PiDCoH0KPiDCoAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fZHBfbXN0X2hlbHBlci5o Cj4gYi9pbmNsdWRlL2RybS9kcm1fZHBfbXN0X2hlbHBlci5oCj4gaW5kZXggMjBkYzcwNTY0MmJk Li5iNWIwYmYzNzgxM2IgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2RwX21zdF9oZWxw ZXIuaAo+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9kcF9tc3RfaGVscGVyLmgKPiBAQCAtNTkzLDYg KzU5MywxNCBAQCBzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3Igewo+IMKgwqDCoMKgwqDC oMKgwqAgKiBAbWF4X3BheWxvYWRzOiBtYXhpbXVtIG51bWJlciBvZiBwYXlsb2FkcyB0aGUgR1BV IGNhbiBnZW5lcmF0ZS4KPiDCoMKgwqDCoMKgwqDCoMKgICovCj4gwqDCoMKgwqDCoMKgwqDCoGlu dCBtYXhfcGF5bG9hZHM7Cj4gK8KgwqDCoMKgwqDCoMKgLyoqCj4gK8KgwqDCoMKgwqDCoMKgICog QG1heF9sYW5lX2NvdW50OiBtYXhpbXVtIG51bWJlciBvZiBsYW5lcyB0aGUgR1BVIGNhbiBkcml2 ZS4KPiArwqDCoMKgwqDCoMKgwqAgKi8KPiArwqDCoMKgwqDCoMKgwqBpbnQgbWF4X2xhbmVfY291 bnQ7Cj4gK8KgwqDCoMKgwqDCoMKgLyoqCj4gK8KgwqDCoMKgwqDCoMKgICogQG1heF9saW5rX3Jh dGU6IG1heGltdW0gbGluayByYXRlIHBlciBsYW5lIEdQVSBjYW4gb3V0cHV0Lgo+ICvCoMKgwqDC oMKgwqDCoCAqLwo+ICvCoMKgwqDCoMKgwqDCoGludCBtYXhfbGlua19yYXRlOwo+IMKgwqDCoMKg wqDCoMKgwqAvKioKPiDCoMKgwqDCoMKgwqDCoMKgICogQGNvbm5fYmFzZV9pZDogRFJNIGNvbm5l Y3RvciBJRCB0aGlzIG1nciBpcyBjb25uZWN0ZWQgdG8uIE9ubHkKPiB1c2VkCj4gwqDCoMKgwqDC oMKgwqDCoCAqIHRvIGJ1aWxkIHRoZSBNU1QgY29ubmVjdG9yIHBhdGggdmFsdWUuCj4gQEAgLTc2 NSw3ICs3NzMsOSBAQCBzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3Igewo+IMKgaW50IGRy bV9kcF9tc3RfdG9wb2xvZ3lfbWdyX2luaXQoc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdy ICptZ3IsCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2RwX2F1 eAo+ICphdXgsCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCBpbnQgbWF4X2RwY2RfdHJhbnNhY3Rpb25fYnl0ZXMsCj4gLcKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIGludCBtYXhfcGF5bG9hZHMsIGludCBjb25uX2Jhc2VfaWQpOwo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpbnQgbWF4 X3BheWxvYWRzLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCBpbnQgbWF4X2xhbmVfY291bnQsIGludCBtYXhfbGlua19yYXRl LAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBpbnQgY29ubl9iYXNlX2lkKTsKPiDCoAo+IMKgdm9pZCBkcm1fZHBfbXN0X3Rv cG9sb2d5X21ncl9kZXN0cm95KHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyKTsK PiDCoAoKLS0gCkNoZWVycywKIEx5dWRlIFBhdWwgKHNoZS9oZXIpCiBTb2Z0d2FyZSBFbmdpbmVl ciBhdCBSZWQgSGF0CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1n ZngK