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=-9.5 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,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 22036C433DF for ; Mon, 19 Oct 2020 16:52:56 +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 9A3F122269 for ; Mon, 19 Oct 2020 16:52:55 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="FzOboRpp" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9A3F122269 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 17E556EA1C; Mon, 19 Oct 2020 16:52:55 +0000 (UTC) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [63.128.21.124]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2B60E6EA1C for ; Mon, 19 Oct 2020 16:52:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1603126373; 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=DNcwEhQCSAgCi+6ObKhO/kGdyOuAhlNXG9iiQ83u9jo=; b=FzOboRppgW+YqGyArqkVJq9IPWWQ5CVxI0aIdElnudoN+W/7h69GI91a2U/0567mXOH9gA yeEmK8xr1OnRxv8UqRPvCmt8zOsVysWIlQXpYerAL9vv36MoamFdG6SD8oa4OvNEV2YLi4 dEmrdgQJjFXEiLqs5P7tI+podC3Lq9A= Received: from mail-io1-f71.google.com (mail-io1-f71.google.com [209.85.166.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-582-7LxR401WMumqaSQxnET-Yg-1; Mon, 19 Oct 2020 12:52:51 -0400 X-MC-Unique: 7LxR401WMumqaSQxnET-Yg-1 Received: by mail-io1-f71.google.com with SMTP id a2so520573iod.13 for ; Mon, 19 Oct 2020 09:52:51 -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=DNcwEhQCSAgCi+6ObKhO/kGdyOuAhlNXG9iiQ83u9jo=; b=MqtdU1cKwNfBqoMrvv/wh5klQBYUYJaxEwWzrF8VQSB2z2kt422HSMLj1TBy1oQzN3 oz7izX1iWT9A012TggsjHnzR4ciUV86RtBVvPGkiB54TWm9pp2Tbe3OkWfSqjj9Vi0Th NH3ui1L7wRnP7ozvbn1cpo6No2McmiBTQ1RSDuHGjyOJn+/IMtl/ZeUr5/D4KTnOGNUm /Psf1KtX8Sa00NcVhvnjhEdKYvL3vMooqBHmCumlepAUpxRPVIXYxS+nV+8JxvnfUdra dRiBmpr2czeY6jm4IAI/iIDEBGiILKgcLNHE6EzBegLqQgfALjbTYSW8l2tsoKVA0/Ql xLxw== X-Gm-Message-State: AOAM530vCi2Kpp3SRSKUM+qiVEgahMiXu2vQax6HDYth0ipdTiN4eMB6 xcsHylJcHbrkVEgTJLvvJH7M5haPr+9fp99001WgYR+I+YTiQk3K84iAQdBiYwh4JAOrVMM/afN CPlFbjSYlq+FXlkHWtznUltNx+JdC X-Received: by 2002:a92:1a48:: with SMTP id z8mr768924ill.175.1603126370439; Mon, 19 Oct 2020 09:52:50 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzQv4AWofIkPgQJwgOcPVbMLZeJRi1DWiJu4CpwbkLCbaBovcOqNVGGv2sAhQbN5fMQZBoHUg== X-Received: by 2002:a92:1a48:: with SMTP id z8mr768895ill.175.1603126370074; Mon, 19 Oct 2020 09:52:50 -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 a86sm270993ill.11.2020.10.19.09.52.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Oct 2020 09:52:49 -0700 (PDT) Message-ID: <13616f6ff5e5bfa45694d7d11981c12720ef2f42.camel@redhat.com> From: Lyude Paul To: Ville Syrjala , intel-gfx@lists.freedesktop.org Date: Mon, 19 Oct 2020 12:52:48 -0400 In-Reply-To: <20201013181137.30560-1-ville.syrjala@linux.intel.com> References: <20201007192241.10241-1-ville.syrjala@linux.intel.com> <20201013181137.30560-1-ville.syrjala@linux.intel.com> Organization: Red Hat User-Agent: Evolution 3.36.5 (3.36.5-1.fc32) 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: Re: [Intel-gfx] [PATCH v3 1/3] drm/i915: Reorder hpd init vs. display resume 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: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" UmV2aWV3ZWQtYnk6IEx5dWRlIFBhdWwgPGx5dWRlQHJlZGhhdC5jb20+CgpPbiBUdWUsIDIwMjAt MTAtMTMgYXQgMjE6MTEgKzAzMDAsIFZpbGxlIFN5cmphbGEgd3JvdGU6Cj4gRnJvbTogVmlsbGUg U3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiAKPiBDdXJyZW50bHkg d2UgY2FsbCAuaHBkX2lycV9zZXR1cCgpIGRpcmVjdGx5IGp1c3QgYmVmb3JlIGRpc3BsYXkKPiBy ZXN1bWUsIGFuZCBmb2xsb3cgaXQgd2l0aCBhbm90aGVyIGNhbGwgdmlhIGludGVsX2hwZF9pbml0 KCkKPiBqdXN0IGFmdGVyd2FyZHMuIEFzc3VtaW5nIHRoZSBocGQgcGlucyBhcmUgbWFya2VkIGFz IGVuYWJsZWQKPiBkdXJpbmcgdGhlIG9wZW4tY29kZWQgY2FsbCB0aGVzZSB0d28gdGhpbmdzIGRv IGV4YWN0bHkgdGhlCj4gc2FtZSB0aGluZyAoaWUuIGVuYWJsZSBIUEQgaW50ZXJydXB0cykuIFdo aWNoIGV2ZW4gbWFrZXMgc2Vuc2UKPiBzaW5jZSB3ZSBkZWZpbml0ZWx5IG5lZWQgd29ya2luZyBI UEQgaW50ZXJydXB0cyBmb3IgTVNUIHNpZGViYW5kCj4gZHVyaW5nIHRoZSBkaXNwbGF5IHJlc3Vt ZS4KPiAKPiBTbyBsZXQncyBudWtlIHRoZSBvcGVuLWNvZGVkIGNhbGwgYW5kIG1vdmUgdGhlIGlu dGVsX2hwZF9pbml0KCkKPiBjYWxsIGVhcmxpZXIuIEhvd2V2ZXIgd2UgbmVlZCB0byBsZWF2ZSB0 aGUgcG9sbF9pbml0X3dvcmsgc3R1ZmYKPiBiZWhpbmQgYWZ0ZXIgdGhlIGRpc3BsYXkgcmVzdW1l IGFzIHRoYXQgd2lsbCB0cmlnZ2VyIGRpc3BsYXkKPiBkZXRlY3Rpb24gd2hpbGUgd2UncmUgcmVz dW1pbmcuIFdlIGRvbid0IHdhbnQgdGhhdCB0cmFtcGxpbmcgb3Zlcgo+IHRoZSBkaXNwbGF5IHJl c3VtZSBwcm9jZXNzLiBUbyBtYWtlIHRoaXMgYSBiaXQgbW9yZSBzeW1tZXRyaWMKPiB3ZSB0dXJu IHRoaXMgaW50byBhIGludGVsX2hwZF9wb2xsX3tlbmFibGUsZGlzYWJsZX0oKSBwYWlyLgo+IFNv IHdlIGVuZCB1cCB3aXRoIHRoZSBmb2xsb3dpbmcgdHJhbnNmb3JtYXRpb246Cj4gaW50ZWxfaHBk X3BvbGxfaW5pdCgpIC0+IGludGVsX2hwZF9wb2xsX2VuYWJsZSgpCj4gbG9uZSBpbnRlbF9ocGRf aW5pdCgpIC0+IGludGVsX2hwZF9pbml0KCkraW50ZWxfaHBkX3BvbGxfZGlzYWJsZSgpCj4gLmhw ZF9pcnFfc2V0dXAoKStyZXN1bWUraW50ZWxfaHBkX2luaXQoKSAtPgo+IGludGVsX2hwZF9pbml0 KCkrcmVzdW1lK2ludGVsX2hwZF9wb2xsX2Rpc2FibGUoKQo+IAo+IElmIHdlIHJlYWxseSB3b3Vs ZCBsaWtlIHRvIHByZXZlbnQgYWxsICpsb25nKiBIUEQgcHJvY2Vzc2luZyBkdXJpbmcKPiBkaXNw bGF5IHJlc3VtZSB3ZSdkIG5lZWQgc29tZSBraW5kIG9mIHNvZnR3YXJlIG1lY2hhbmlzbSB0byBz aW1wbHkKPiBpZ25vcmUgYWxsIGxvbmcgSFBEcy4gQ3VycmVudGx5IHdlIGFwcGVhciB0byBoYXZl IHRoYXQganVzdCBmb3IKPiBmYmRldiB2aWEgaWZiZGV2LT5ocGRfc3VzcGVuZGVkLiBTaW5jZSB3 ZSBhcmVuJ3QgZXhwbG9kaW5nIGxlZnQgYW5kCj4gcmlnaHQgYWxsIHRoZSB0aW1lIEkgZ3Vlc3Mg dGhhdCdzIG1vc3RseSBzdWZmaWNpZW50Lgo+IAo+IEZvciBhIGJpdCBvZiBoaXN0b3J5IG9uIHRo aXMsIHdlIGZpcnN0IGdvdCBhIG1lY2hhbmlzbSB0byBibG9jawo+IGhvdHBsdWcgcHJvY2Vzc2lu ZyBkdXJpbmcgc3VzcGVuZCBpbiBjb21taXQgMTUyMzkwOTlkN2E3ICgiZHJtL2k5MTU6Cj4gZW5h YmxlIGlycXMgZWFybGllciB3aGVuIHJlc3VtaW5nIikgb24gYWNjb3VudCBvZiBtb3ZpbmcgdGhl IGlycSBlbmFibGUKPiBlYXJsaWVyLiBUaGlzIHRoZW4gZ290IHJlbW92ZWQgaW4gY29tbWl0IDUw YzNkYzk3MGEwOSAoImRybS9mYi1oZWxwZXI6Cj4gRml4IGhwZCB2cy4gaW5pdGlhbCBjb25maWcg cmFjZXMiKSBiZWNhdXNlIHRoZSBmZGV2IGluaXRpYWwgY29uZmlnCj4gZ290IHB1c2hlZCB0byBh IGxhdGVyIHBvaW50LiBUaGUgc2Vjb25kIGFkLWhvYyBocGRfaXJxX3NldHVwKCkgZm9yCj4gcmVz dW1lIHdhcyBhZGRlZCBpbiBjb21taXQgMGUzMmIzOWNlZWQ2ICgiZHJtL2k5MTU6IGFkZCBEUCAx LjIgTVNUCj4gc3VwcG9ydCAodjAuNykiKSB0byBiZSBhYmxlIHRvIGRvIE1TVCBzaWRlYmFuZCBk dXJpbmcgdGhlIHJlc3VtZS4KPiBBbmQgZmluYWxseSB3ZSBnb3QgYSBwYXJ0aWFsIHJlc3VycmVj dGlvbiBvZiB0aGUgaHBkIGJsb2NraW5nCj4gbWVjaGFuaXNtIGluIGNvbW1pdCBlOGE4ZmVkZDU3 ZmQgKCJkcm0vaTkxNTogQmxvY2sgZmJkZXYgSFBECj4gcHJvY2Vzc2luZyBkdXJpbmcgc3VzcGVu ZCIpLCBidXQgdGhpcyB0aW1lIGl0IG9ubHkgcHJldmVudCBmYmRldgo+IGZyb20gaGFuZGxpbmcg aHBkIHdoaWxlIHJlc3VtaW5nLgo+IAo+IHYyOiBMZWF2ZSB0aGUgcG9sbF9pbml0X3dvcmsgYmVo aW5kCj4gdjM6IFJlbW92ZSB0aGUgZXh0cmEgaW50ZWxfaHBkX3BvbGxfZGlzYWJsZSgpIGZyb20g ZGlzcGxheSByZXNldCAoTHl1ZGUpCj4gICAgIEFkZCB0aGUgbWlzc2luZyBpbnRlbF9ocGRfcG9s bF9kaXNhYmxlKCkgdG8gZGlzcGxheSBpbml0IChJbXJlKQo+IAo+IENjOiBMeXVkZSBQYXVsIDxs eXVkZUByZWRoYXQuY29tPgo+IENjOiBJbXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+Cj4g U2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVs LmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5 LmMgIHwgIDkgKystLQo+ICAuLi4vZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2Vy LmMgICAgfCAgMyArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hvdHBs dWcuYyAgfCA0MiArKysrKysrKysrKysrKy0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rp c3BsYXkvaW50ZWxfaG90cGx1Zy5oICB8ICAzICstCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmMgICAgICAgICAgICAgICB8IDIzICsrKystLS0tLS0KPiAgNSBmaWxlcyBjaGFuZ2Vk LCA0NiBpbnNlcnRpb25zKCspLCAzNCBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCj4gaW5kZXggOTA3ZTFkMTU1NDQzLi4z YmUwZDUzMWY5NmMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVs X2Rpc3BsYXkuYwo+IEBAIC01MDM2LDE4ICs1MDM2LDE0IEBAIHZvaWQgaW50ZWxfZmluaXNoX3Jl c2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlCj4gKmRldl9wcml2KQo+ICAJCWludGVsX3Bwc191 bmxvY2tfcmVnc193YShkZXZfcHJpdik7Cj4gIAkJaW50ZWxfbW9kZXNldF9pbml0X2h3KGRldl9w cml2KTsKPiAgCQlpbnRlbF9pbml0X2Nsb2NrX2dhdGluZyhkZXZfcHJpdik7Cj4gLQo+IC0JCXNw aW5fbG9ja19pcnEoJmRldl9wcml2LT5pcnFfbG9jayk7Cj4gLQkJaWYgKGRldl9wcml2LT5kaXNw bGF5LmhwZF9pcnFfc2V0dXApCj4gLQkJCWRldl9wcml2LT5kaXNwbGF5LmhwZF9pcnFfc2V0dXAo ZGV2X3ByaXYpOwo+IC0JCXNwaW5fdW5sb2NrX2lycSgmZGV2X3ByaXYtPmlycV9sb2NrKTsKPiAr CQlpbnRlbF9ocGRfaW5pdChkZXZfcHJpdik7Cj4gIAo+ICAJCXJldCA9IF9faW50ZWxfZGlzcGxh eV9yZXN1bWUoZGV2LCBzdGF0ZSwgY3R4KTsKPiAgCQlpZiAocmV0KQo+ICAJCQlkcm1fZXJyKCZk ZXZfcHJpdi0+ZHJtLAo+ICAJCQkJIlJlc3RvcmluZyBvbGQgc3RhdGUgZmFpbGVkIHdpdGggJWlc biIsIHJldCk7Cj4gIAo+IC0JCWludGVsX2hwZF9pbml0KGRldl9wcml2KTsKPiArCQlpbnRlbF9o cGRfcG9sbF9kaXNhYmxlKGRldl9wcml2KTsKPiAgCX0KPiAgCj4gIAlkcm1fYXRvbWljX3N0YXRl X3B1dChzdGF0ZSk7Cj4gQEAgLTE4MjU3LDYgKzE4MjUzLDcgQEAgaW50IGludGVsX21vZGVzZXRf aW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZQo+ICppOTE1KQo+ICAKPiAgCS8qIE9ubHkgZW5h YmxlIGhvdHBsdWcgaGFuZGxpbmcgb25jZSB0aGUgZmJkZXYgaXMgZnVsbHkgc2V0IHVwLiAqLwo+ ICAJaW50ZWxfaHBkX2luaXQoaTkxNSk7Cj4gKwlpbnRlbF9ocGRfcG9sbF9kaXNhYmxlKGk5MTUp Owo+ICAKPiAgCWludGVsX2luaXRfaXBjKGk5MTUpOwo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2VyLmMKPiBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5jCj4gaW5kZXggNzI3N2U1 OGIwMWYxLi4yMGRkYzU0Mjk4Y2IgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2VyLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuYwo+IEBAIC0xNDI0LDYgKzE0MjQsNyBAQCBz dGF0aWMgdm9pZCB2bHZfZGlzcGxheV9wb3dlcl93ZWxsX2luaXQoc3RydWN0Cj4gZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAkJcmV0dXJuOwo+ICAKPiAgCWludGVsX2hwZF9pbml0KGRl dl9wcml2KTsKPiArCWludGVsX2hwZF9wb2xsX2Rpc2FibGUoZGV2X3ByaXYpOwo+ICAKPiAgCS8q IFJlLWVuYWJsZSB0aGUgQURQQSwgaWYgd2UgaGF2ZSBvbmUgKi8KPiAgCWZvcl9lYWNoX2ludGVs X2VuY29kZXIoJmRldl9wcml2LT5kcm0sIGVuY29kZXIpIHsKPiBAQCAtMTQ0OSw3ICsxNDUwLDcg QEAgc3RhdGljIHZvaWQgdmx2X2Rpc3BsYXlfcG93ZXJfd2VsbF9kZWluaXQoc3RydWN0Cj4gZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAo+ICAJLyogUHJldmVudCB1cyBmcm9tIHJlLWVu YWJsaW5nIHBvbGxpbmcgb24gYWNjaWRlbnQgaW4gbGF0ZSBzdXNwZW5kICovCj4gIAlpZiAoIWRl dl9wcml2LT5kcm0uZGV2LT5wb3dlci5pc19zdXNwZW5kZWQpCj4gLQkJaW50ZWxfaHBkX3BvbGxf aW5pdChkZXZfcHJpdik7Cj4gKwkJaW50ZWxfaHBkX3BvbGxfZW5hYmxlKGRldl9wcml2KTsKPiAg fQo+ICAKPiAgc3RhdGljIHZvaWQgdmx2X2Rpc3BsYXlfcG93ZXJfd2VsbF9lbmFibGUoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUKPiAqZGV2X3ByaXYsCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaG90cGx1Zy5jCj4gYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2hvdHBsdWcuYwo+IGluZGV4IDVjNThjMWVkNjQ5My4uMzBiZDRjODZk MTQ2IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaG90 cGx1Zy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9ob3RwbHVn LmMKPiBAQCAtNTg0LDcgKzU4NCw3IEBAIHZvaWQgaW50ZWxfaHBkX2lycV9oYW5kbGVyKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlCj4gKmRldl9wcml2LAo+ICAgKiBUaGlzIGlzIGEgc2VwYXJhdGUg c3RlcCBmcm9tIGludGVycnVwdCBlbmFibGluZyB0byBzaW1wbGlmeSB0aGUgbG9ja2luZwo+IHJ1 bGVzCj4gICAqIGluIHRoZSBkcml2ZXIgbG9hZCBhbmQgcmVzdW1lIGNvZGUuCj4gICAqCj4gLSAq IEFsc28gc2VlOiBpbnRlbF9ocGRfcG9sbF9pbml0KCksIHdoaWNoIGVuYWJsZXMgY29ubmVjdG9y IHBvbGxpbmcKPiArICogQWxzbyBzZWU6IGludGVsX2hwZF9wb2xsX2VuYWJsZSgpIGFuZCBpbnRl bF9ocGRfcG9sbF9kaXNhYmxlKCkuCj4gICAqLwo+ICB2b2lkIGludGVsX2hwZF9pbml0KHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiAgewo+IEBAIC01OTUsOSArNTk1LDYgQEAg dm9pZCBpbnRlbF9ocGRfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4g IAkJZGV2X3ByaXYtPmhvdHBsdWcuc3RhdHNbaV0uc3RhdGUgPSBIUERfRU5BQkxFRDsKPiAgCX0K PiAgCj4gLQlXUklURV9PTkNFKGRldl9wcml2LT5ob3RwbHVnLnBvbGxfZW5hYmxlZCwgZmFsc2Up Owo+IC0Jc2NoZWR1bGVfd29yaygmZGV2X3ByaXYtPmhvdHBsdWcucG9sbF9pbml0X3dvcmspOwo+ IC0KPiAgCS8qCj4gIAkgKiBJbnRlcnJ1cHQgc2V0dXAgaXMgYWxyZWFkeSBndWFyYW50ZWVkIHRv IGJlIHNpbmdsZS10aHJlYWRlZCwgdGhpcwo+IGlzCj4gIAkgKiBqdXN0IHRvIG1ha2UgdGhlIGFz c2VydF9zcGluX2xvY2tlZCBjaGVja3MgaGFwcHkuCj4gQEAgLTY1NCwxMiArNjUxLDEyIEBAIHN0 YXRpYyB2b2lkIGk5MTVfaHBkX3BvbGxfaW5pdF93b3JrKHN0cnVjdCB3b3JrX3N0cnVjdAo+ICp3 b3JrKQo+ICB9Cj4gIAo+ICAvKioKPiAtICogaW50ZWxfaHBkX3BvbGxfaW5pdCAtIGVuYWJsZXMv ZGlzYWJsZXMgcG9sbGluZyBmb3IgY29ubmVjdG9ycyB3aXRoIGhwZAo+ICsgKiBpbnRlbF9ocGRf cG9sbF9lbmFibGUgLSBlbmFibGUgcG9sbGluZyBmb3IgY29ubmVjdG9ycyB3aXRoIGhwZAo+ICAg KiBAZGV2X3ByaXY6IGk5MTUgZGV2aWNlIGluc3RhbmNlCj4gICAqCj4gLSAqIFRoaXMgZnVuY3Rp b24gZW5hYmxlcyBwb2xsaW5nIGZvciBhbGwgY29ubmVjdG9ycywgcmVnYXJkbGVzcyBvZiB3aGV0 aGVyCj4gb3IKPiAtICogbm90IHRoZXkgc3VwcG9ydCBob3RwbHVnIGRldGVjdGlvbi4gVW5kZXIg Y2VydGFpbiBjb25kaXRpb25zIEhQRCBtYXkgbm90Cj4gYmUKPiAtICogZnVuY3Rpb25hbC4gT24g bW9zdCBJbnRlbCBHUFVzLCB0aGlzIGhhcHBlbnMgd2hlbiB3ZSBlbnRlciBydW50aW1lCj4gc3Vz cGVuZC4KPiArICogVGhpcyBmdW5jdGlvbiBlbmFibGVzIHBvbGxpbmcgZm9yIGFsbCBjb25uZWN0 b3JzIHdoaWNoIHN1cHBvcnQgSFBELgo+ICsgKiBVbmRlciBjZXJ0YWluIGNvbmRpdGlvbnMgSFBE IG1heSBub3QgYmUgZnVuY3Rpb25hbC4gT24gbW9zdCBJbnRlbCBHUFVzLAo+ICsgKiB0aGlzIGhh cHBlbnMgd2hlbiB3ZSBlbnRlciBydW50aW1lIHN1c3BlbmQuCj4gICAqIE9uIFZhbGxleXZpZXcg YW5kIENoZXJyeXZpZXcgc3lzdGVtcywgdGhpcyBhbHNvIGhhcHBlbnMgd2hlbiB3ZSBzaHV0IG9m Zgo+IGFsbAo+ICAgKiBvZiB0aGUgcG93ZXJ3ZWxscy4KPiAgICoKPiBAQCAtNjY3LDkgKzY2NCw5 IEBAIHN0YXRpYyB2b2lkIGk5MTVfaHBkX3BvbGxfaW5pdF93b3JrKHN0cnVjdCB3b3JrX3N0cnVj dAo+ICp3b3JrKQo+ICAgKiBkZXYtPm1vZGVfY29uZmlnLm11dGV4LCB3ZSBkbyB0aGUgYWN0dWFs IGhvdHBsdWcgZW5hYmxpbmcgaW4gYSBzZXBlcmF0ZQo+ICAgKiB3b3JrZXIuCj4gICAqCj4gLSAq IEFsc28gc2VlOiBpbnRlbF9ocGRfaW5pdCgpLCB3aGljaCByZXN0b3JlcyBocGQgaGFuZGxpbmcu Cj4gKyAqIEFsc28gc2VlOiBpbnRlbF9ocGRfaW5pdCgpIGFuZCBpbnRlbF9ocGRfcG9sbF9kaXNh YmxlKCkuCj4gICAqLwo+IC12b2lkIGludGVsX2hwZF9wb2xsX2luaXQoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KQo+ICt2b2lkIGludGVsX2hwZF9wb2xsX2VuYWJsZShzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIHsKPiAgCVdSSVRFX09OQ0UoZGV2X3ByaXYt PmhvdHBsdWcucG9sbF9lbmFibGVkLCB0cnVlKTsKPiAgCj4gQEAgLTY4Miw2ICs2NzksMzEgQEAg dm9pZCBpbnRlbF9ocGRfcG9sbF9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlCj4gKmRldl9w cml2KQo+ICAJc2NoZWR1bGVfd29yaygmZGV2X3ByaXYtPmhvdHBsdWcucG9sbF9pbml0X3dvcmsp Owo+ICB9Cj4gIAo+ICsvKioKPiArICogaW50ZWxfaHBkX3BvbGxfZGlzYWJsZSAtIGRpc2FibGUg cG9sbGluZyBmb3IgY29ubmVjdG9ycyB3aXRoIGhwZAo+ICsgKiBAZGV2X3ByaXY6IGk5MTUgZGV2 aWNlIGluc3RhbmNlCj4gKyAqCj4gKyAqIFRoaXMgZnVuY3Rpb24gZGlzYWJsZXMgcG9sbGluZyBm b3IgYWxsIGNvbm5lY3RvcnMgd2hpY2ggc3VwcG9ydCBIUEQuCj4gKyAqIFVuZGVyIGNlcnRhaW4g Y29uZGl0aW9ucyBIUEQgbWF5IG5vdCBiZSBmdW5jdGlvbmFsLiBPbiBtb3N0IEludGVsIEdQVXMs Cj4gKyAqIHRoaXMgaGFwcGVucyB3aGVuIHdlIGVudGVyIHJ1bnRpbWUgc3VzcGVuZC4KPiArICog T24gVmFsbGV5dmlldyBhbmQgQ2hlcnJ5dmlldyBzeXN0ZW1zLCB0aGlzIGFsc28gaGFwcGVucyB3 aGVuIHdlIHNodXQgb2ZmCj4gYWxsCj4gKyAqIG9mIHRoZSBwb3dlcndlbGxzLgo+ICsgKgo+ICsg KiBTaW5jZSB0aGlzIGZ1bmN0aW9uIGNhbiBnZXQgY2FsbGVkIGluIGNvbnRleHRzIHdoZXJlIHdl J3JlIGFscmVhZHkKPiBob2xkaW5nCj4gKyAqIGRldi0+bW9kZV9jb25maWcubXV0ZXgsIHdlIGRv IHRoZSBhY3R1YWwgaG90cGx1ZyBlbmFibGluZyBpbiBhIHNlcGVyYXRlCj4gKyAqIHdvcmtlci4K PiArICoKPiArICogQWxzbyB1c2VkIGR1cmluZyBkcml2ZXIgaW5pdCB0byBpbml0aWFsaXplIGNv bm5lY3Rvci0+cG9sbGVkCj4gKyAqIGFwcHJvcHJpYXRlbHkgZm9yIGFsbCBjb25uZWN0b3JzLgo+ ICsgKgo+ICsgKiBBbHNvIHNlZTogaW50ZWxfaHBkX2luaXQoKSBhbmQgaW50ZWxfaHBkX3BvbGxf ZW5hYmxlKCkuCj4gKyAqLwo+ICt2b2lkIGludGVsX2hwZF9wb2xsX2Rpc2FibGUoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICt7Cj4gKwlXUklURV9PTkNFKGRldl9wcml2LT5o b3RwbHVnLnBvbGxfZW5hYmxlZCwgZmFsc2UpOwo+ICsJc2NoZWR1bGVfd29yaygmZGV2X3ByaXYt PmhvdHBsdWcucG9sbF9pbml0X3dvcmspOwo+ICt9Cj4gKwo+ICB2b2lkIGludGVsX2hwZF9pbml0 X3dvcmsoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICB7Cj4gIAlJTklUX0RF TEFZRURfV09SSygmZGV2X3ByaXYtPmhvdHBsdWcuaG90cGx1Z193b3JrLAo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hvdHBsdWcuaAo+IGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9ob3RwbHVnLmgKPiBpbmRleCBhNzA0ZDdjOTRk MTYuLmI4N2U5NWQ2MDZlNiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNw bGF5L2ludGVsX2hvdHBsdWcuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfaG90cGx1Zy5oCj4gQEAgLTE0LDcgKzE0LDggQEAgc3RydWN0IGludGVsX2RpZ2l0YWxf cG9ydDsKPiAgc3RydWN0IGludGVsX2VuY29kZXI7Cj4gIGVudW0gcG9ydDsKPiAgCj4gLXZvaWQg aW50ZWxfaHBkX3BvbGxfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwo+ ICt2b2lkIGludGVsX2hwZF9wb2xsX2VuYWJsZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYpOwo+ICt2b2lkIGludGVsX2hwZF9wb2xsX2Rpc2FibGUoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2KTsKPiAgZW51bSBpbnRlbF9ob3RwbHVnX3N0YXRlIGludGVsX2VuY29k ZXJfaG90cGx1ZyhzdHJ1Y3QgaW50ZWxfZW5jb2Rlcgo+ICplbmNvZGVyLAo+ICAJCQkJCSAgICAg ICBzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yCj4gKmNvbm5lY3Rvcik7Cj4gIHZvaWQgaW50ZWxfaHBk X2lycV9oYW5kbGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwo+IGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuYwo+IGluZGV4IGViYzE1MDY2ZDEwOC4uM2ZjN2I5OTZmYzQ4IDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCj4gQEAgLTEyMjYsMjYgKzEyMjYsMTUgQEAgc3RhdGlj IGludCBpOTE1X2RybV9yZXN1bWUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCj4gIAlpbnRl bF9tb2Rlc2V0X2luaXRfaHcoZGV2X3ByaXYpOwo+ICAJaW50ZWxfaW5pdF9jbG9ja19nYXRpbmco ZGV2X3ByaXYpOwo+ICsJaW50ZWxfaHBkX2luaXQoZGV2X3ByaXYpOwo+ICAKPiAtCXNwaW5fbG9j a19pcnEoJmRldl9wcml2LT5pcnFfbG9jayk7Cj4gLQlpZiAoZGV2X3ByaXYtPmRpc3BsYXkuaHBk X2lycV9zZXR1cCkKPiAtCQlkZXZfcHJpdi0+ZGlzcGxheS5ocGRfaXJxX3NldHVwKGRldl9wcml2 KTsKPiAtCXNwaW5fdW5sb2NrX2lycSgmZGV2X3ByaXYtPmlycV9sb2NrKTsKPiAtCj4gKwkvKiBN U1Qgc2lkZWJhbmQgcmVxdWlyZXMgSFBEIGludGVycnVwdHMgZW5hYmxlZCAqLwo+ICAJaW50ZWxf ZHBfbXN0X3Jlc3VtZShkZXZfcHJpdik7Cj4gLQo+ICAJaW50ZWxfZGlzcGxheV9yZXN1bWUoZGV2 KTsKPiAgCj4gKwlpbnRlbF9ocGRfcG9sbF9kaXNhYmxlKGRldl9wcml2KTsKPiAgCWRybV9rbXNf aGVscGVyX3BvbGxfZW5hYmxlKGRldik7Cj4gIAo+IC0JLyoKPiAtCSAqIC4uLiBidXQgYWxzbyBu ZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IGhvdHBsdWcgcHJvY2Vzc2luZwo+IC0JICogZG9lc24ndCBj YXVzZSBoYXZvYy4gTGlrZSBpbiB0aGUgZHJpdmVyIGxvYWQgY29kZSB3ZSBkb24ndAo+IC0JICog Ym90aGVyIHdpdGggdGhlIHRpbnkgcmFjZSBoZXJlIHdoZXJlIHdlIG1pZ2h0IGxvc2UgaG90cGx1 Zwo+IC0JICogbm90aWZpY2F0aW9ucy4KPiAtCSAqICovCj4gLQlpbnRlbF9ocGRfaW5pdChkZXZf cHJpdik7Cj4gLQo+ICAJaW50ZWxfb3ByZWdpb25fcmVzdW1lKGRldl9wcml2KTsKPiAgCj4gIAlp bnRlbF9mYmRldl9zZXRfc3VzcGVuZChkZXYsIEZCSU5GT19TVEFURV9SVU5OSU5HLCBmYWxzZSk7 Cj4gQEAgLTE1NTcsNyArMTU0Niw3IEBAIHN0YXRpYyBpbnQgaW50ZWxfcnVudGltZV9zdXNwZW5k KHN0cnVjdCBkZXZpY2UgKmtkZXYpCj4gIAlhc3NlcnRfZm9yY2V3YWtlc19pbmFjdGl2ZSgmZGV2 X3ByaXYtPnVuY29yZSk7Cj4gIAo+ICAJaWYgKCFJU19WQUxMRVlWSUVXKGRldl9wcml2KSAmJiAh SVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpCj4gLQkJaW50ZWxfaHBkX3BvbGxfaW5pdChkZXZfcHJp dik7Cj4gKwkJaW50ZWxfaHBkX3BvbGxfZW5hYmxlKGRldl9wcml2KTsKPiAgCj4gIAlkcm1fZGJn X2ttcygmZGV2X3ByaXYtPmRybSwgIkRldmljZSBzdXNwZW5kZWRcbiIpOwo+ICAJcmV0dXJuIDA7 Cj4gQEAgLTE2MDIsOCArMTU5MSwxMCBAQCBzdGF0aWMgaW50IGludGVsX3J1bnRpbWVfcmVzdW1l KHN0cnVjdCBkZXZpY2UgKmtkZXYpCj4gIAkgKiBwb3dlciB3ZWxsLCBzbyBocGQgaXMgcmVpbml0 aWFsaXplZCBmcm9tIHRoZXJlLiBGb3IKPiAgCSAqIGV2ZXJ5b25lIGVsc2UgZG8gaXQgaGVyZS4K PiAgCSAqLwo+IC0JaWYgKCFJU19WQUxMRVlWSUVXKGRldl9wcml2KSAmJiAhSVNfQ0hFUlJZVklF VyhkZXZfcHJpdikpCj4gKwlpZiAoIUlTX1ZBTExFWVZJRVcoZGV2X3ByaXYpICYmICFJU19DSEVS UllWSUVXKGRldl9wcml2KSkgewo+ICAJCWludGVsX2hwZF9pbml0KGRldl9wcml2KTsKPiArCQlp bnRlbF9ocGRfcG9sbF9kaXNhYmxlKGRldl9wcml2KTsKPiArCX0KPiAgCj4gIAlpbnRlbF9lbmFi bGVfaXBjKGRldl9wcml2KTsKPiAgCi0tIApDaGVlcnMsCglMeXVkZSBQYXVsIChzaGUvaGVyKQoJ U29mdHdhcmUgRW5naW5lZXIgYXQgUmVkIEhhdAoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4Cg==