From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 3/9] drm/i915/gt: Unlock engine-pm after queuing the kernel context switch Date: Wed, 20 Nov 2019 11:58:27 +0000 Message-ID: References: <20191120093302.3723715-1-chris@chris-wilson.co.uk> <20191120093302.3723715-3-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4E64E6E406 for ; Wed, 20 Nov 2019 11:58:31 +0000 (UTC) In-Reply-To: <20191120093302.3723715-3-chris@chris-wilson.co.uk> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Ck9uIDIwLzExLzIwMTkgMDk6MzIsIENocmlzIFdpbHNvbiB3cm90ZToKPiBJbiBjb21taXQgYTc5 Y2E2NTZiNjQ4ICgiZHJtL2k5MTU6IFB1c2ggdGhlIHdha2VyZWYtPmNvdW50IGRlZmVycmFsIHRv Cj4gdGhlIGJhY2tlbmQiKSwgSSBlcnJvbmVvdXNseSBjb25jbHVkZWQgdGhhdCB3ZSBsYXN0IG1v ZGlmeSB0aGUgZW5naW5lCj4gaW5zaWRlIF9faTkxNV9yZXF1ZXN0X2NvbW1pdCgpIG1lYW5pbmcg dGhhdCB3ZSBjb3VsZCBlbmFibGUgY29uY3VycmVudAo+IHN1Ym1pc3Npb24gZm9yIHVzZXJzcGFj ZSBhcyB3ZSBlbnF1ZXVlZCB0aGlzIHJlcXVlc3QuIEhvd2V2ZXIsIHRoaXMKPiBmYWxscyBpbnRv IGEgdHJhcCB3aXRoIG90aGVyIHVzZXJzIG9mIHRoZSBlbmdpbmUtPmtlcm5lbF9jb250ZXh0IHdh a2luZwo+IHVwIGFuZCBzdWJtaXR0aW5nIHRoZWlyIHJlcXVlc3QgYmVmb3JlIHRoZSBpZGxlLXN3 aXRjaCBpcyBxdWV1ZWQsIHdpdGgKPiB0aGUgcmVzdWx0IHRoYXQgdGhlIGtlcm5lbF9jb250ZXh0 IGlzIGV4ZWN1dGVkIG91dC1vZi1zZXF1ZW5jZSBtb3N0Cj4gbGlrZWx5IHVwc2V0dGluZyB0aGUg R1BVIGFuZCBjZXJ0YWlubHkgb3Vyc2VsdmVzIHdoZW4gd2UgdHJ5IHRvIHJldGlyZQo+IHRoZSBv dXQtb2Ytc2VxdWVuY2UgcmVxdWVzdHMuCj4gCj4gQXMgc3VjaCB3ZSBuZWVkIHRvIGhvbGQgb250 byB0aGUgZWZmZWN0aXZlIGVuZ2luZS0+a2VybmVsX2NvbnRleHQgbXV0ZXgKPiBsb2NrICh2aWEg dGhlIGVuZ2luZSBwbSBtdXRleCBwcm94eSkgdW50aWwgd2UgaGF2ZSBmaW5pc2ggcXVldWluZyB0 aGUKPiByZXF1ZXN0IHRvIHRoZSBlbmdpbmUuCj4gCj4gdjI6IFNlcmlhbGlzZSBhZ2FpbnN0IGNv bmN1cnJlbnQgaW50ZWxfZ3RfcmV0aXJlX3JlcXVlc3RzKCkKPiB2MzogRGVzY3JpYmUgdGhlIGhh aXJ5IGxvY2tpbmcgc2NoZW1lIHdpdGggaW50ZWxfZ3RfcmV0aXJlX3JlcXVlc3RzKCkKPiBmb3Ig ZnV0dXJlIHJlZmVyZW5jZS4KPiB2NDogQ29tYmluZSB0aW1lbGluZS0+bG9jayBhbmQgZW5naW5l IHBtIHJlbGVhc2U7IGl0J3MgaGFpcnkuCj4gCj4gRml4ZXM6IGE3OWNhNjU2YjY0OCAoImRybS9p OTE1OiBQdXNoIHRoZSB3YWtlcmVmLT5jb3VudCBkZWZlcnJhbCB0byB0aGUgYmFja2VuZCIpCj4g U2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4g Q2M6IE1pa2EgS3VvcHBhbGEgPG1pa2Eua3VvcHBhbGFAbGludXguaW50ZWwuY29tPgo+IENjOiBU dnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgo+IC0tLQo+ICAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3BtLmMgfCA0NyArKysrKysrKysrKysrKysr KysrLS0tLQo+ICAgMSBmaWxlIGNoYW5nZWQsIDQwIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25z KC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2VuZ2lu ZV9wbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3BtLmMKPiBpbmRl eCAzYzBmNDkwZmYyYzcuLjFmNTE3MzU3YTI2OCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfcG0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2d0L2ludGVsX2VuZ2luZV9wbS5jCj4gQEAgLTczLDggKzczLDI1IEBAIHN0YXRpYyBpbmxpbmUg dm9pZCBfX3RpbWVsaW5lX21hcmtfdW5sb2NrKHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSwKPiAg IAo+ICAgI2VuZGlmIC8qICFJU19FTkFCTEVEKENPTkZJR19MT0NLREVQKSAqLwo+ICAgCj4gK3N0 YXRpYyB2b2lkCj4gK19faW50ZWxfdGltZWxpbmVfZW50ZXJfYW5kX3BtX3JlbGVhc2Uoc3RydWN0 IGludGVsX3RpbWVsaW5lICp0bCwKPiArCQkJCSAgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KmVuZ2luZSkKPiArewo+ICsJc3RydWN0IGludGVsX2d0X3RpbWVsaW5lcyAqdGltZWxpbmVzID0g JmVuZ2luZS0+Z3QtPnRpbWVsaW5lczsKPiArCj4gKwlzcGluX2xvY2soJnRpbWVsaW5lcy0+bG9j ayk7Cj4gKwo+ICsJaWYgKCFhdG9taWNfZmV0Y2hfaW5jKCZ0bC0+YWN0aXZlX2NvdW50KSkKPiAr CQlsaXN0X2FkZF90YWlsKCZ0bC0+bGluaywgJnRpbWVsaW5lcy0+YWN0aXZlX2xpc3QpOwoKSG1t IHdpdGggdGhlc2UgbmV3IHBhcnQgaXQgbWF5YmUgbWF0Y2hlcy9hbnN3ZXJzIG15IHF1ZXN0aW9u IGZyb20gCiJkcm0vaTkxNS9ndDogQ2xvc2UgcmFjZSBiZXR3ZWVuIGVuZ2luZV9wYXJrIGFuZCAK aW50ZWxfZ3RfcmV0aXJlX3JlcXVlc3RzIi4gSSB0aGluayBhdCBsZWFzdC4gU2luY2UgaXQgbm93 IGFkZHMgYSBzZWNvbmQgCnBsYWNlIHRpbWVsaW5lIGNhbiBlbnRlciB0aGUgYWN0aXZlX2xpc3Qu CgpCdXQgbm8sIHdoZXJlIGRvZXMgdGhlIGludGVsX3RpbWVsaW5lX2VudGVyIHJhY2UgY29tZSBm cm9tPyBDYW4ndCBiZSAKdXNlcnNwYWNlIHN1Ym1pc3Npb24gc2luY2UgdGhleSBhcmUgYmxvY2tl ZCBvbiB3Zi0+bG9jay4KClJlZ2FyZHMsCgpUdnJ0a28KCj4gKwo+ICsJX19pbnRlbF93YWtlcmVm X2RlZmVyX3BhcmsoJmVuZ2luZS0+d2FrZXJlZik7Cj4gKwo+ICsJc3Bpbl91bmxvY2soJnRpbWVs aW5lcy0+bG9jayk7Cj4gK30KPiArCj4gICBzdGF0aWMgYm9vbCBzd2l0Y2hfdG9fa2VybmVsX2Nv bnRleHQoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQo+ICAgewo+ICsJc3RydWN0IGlu dGVsX2NvbnRleHQgKmNlID0gZW5naW5lLT5rZXJuZWxfY29udGV4dDsKPiAgIAlzdHJ1Y3QgaTkx NV9yZXF1ZXN0ICpycTsKPiAgIAl1bnNpZ25lZCBsb25nIGZsYWdzOwo+ICAgCWJvb2wgcmVzdWx0 ID0gdHJ1ZTsKPiBAQCAtOTgsMTYgKzExNSwzMSBAQCBzdGF0aWMgYm9vbCBzd2l0Y2hfdG9fa2Vy bmVsX2NvbnRleHQoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQo+ICAgCSAqIFRoaXMg c2hvdWxkIGhvbGQgdHJ1ZSBhcyB3ZSBjYW4gb25seSBwYXJrIHRoZSBlbmdpbmUgYWZ0ZXIKPiAg IAkgKiByZXRpcmluZyB0aGUgbGFzdCByZXF1ZXN0LCB0aHVzIGFsbCByaW5ncyBzaG91bGQgYmUg ZW1wdHkgYW5kCj4gICAJICogYWxsIHRpbWVsaW5lcyBpZGxlLgo+ICsJICoKPiArCSAqIEZvciB1 bmxvY2tpbmcsIHRoZXJlIGFyZSAyIG90aGVyIHBhcnRpZXMgYW5kIHRoZSBHUFUgd2hvIGhhdmUg YQo+ICsJICogc3Rha2UgaGVyZS4KPiArCSAqCj4gKwkgKiBBIG5ldyBncHUgdXNlciB3aWxsIGJl IHdhaXRpbmcgb24gdGhlIGVuZ2luZS1wbSB0byBzdGFydCB0aGVpcgo+ICsJICogZW5naW5lX3Vu cGFyay4gTmV3IHdhaXRlcnMgYXJlIHByZWRpY2F0ZWQgb24gZW5naW5lLT53YWtlcmVmLmNvdW50 Cj4gKwkgKiBhbmQgc28gaW50ZWxfd2FrZXJlZl9kZWZlcl9wYXJrKCkgYWN0cyBsaWtlIGEgbXV0 ZXhfdW5sb2NrIG9mIHRoZQo+ICsJICogZW5naW5lLT53YWtlcmVmLgo+ICsJICoKPiArCSAqIFRo ZSBvdGhlciBwYXJ0eSBpcyBpbnRlbF9ndF9yZXRpcmVfcmVxdWVzdHMoKSwgd2hpY2ggaXMgd2Fs a2luZyB0aGUKPiArCSAqIGxpc3Qgb2YgYWN0aXZlIHRpbWVsaW5lcyBsb29raW5nIGZvciBjb21w bGV0aW9ucy4gTWVhbndoaWxlIGFzIHNvb24KPiArCSAqIGFzIHdlIGNhbGwgX19pOTE1X3JlcXVl c3RfcXVldWUoKSwgdGhlIEdQVSBtYXkgY29tcGxldGUgb3VyIHJlcXVlc3QuCj4gKwkgKiBFcmdv LCBpZiB3ZSBwdXQgb3Vyc2VsdmVzIG9uIHRoZSB0aW1lbGluZXMuYWN0aXZlX2xpc3QKPiArCSAq IChzZSBpbnRlbF90aW1lbGluZV9lbnRlcigpKSBiZWZvcmUgd2UgaW5jcmVtZW50IHRoZQo+ICsJ ICogZW5naW5lLT53YWtlcmVmLmNvdW50LCB3ZSBtYXkgc2VlIHRoZSByZXF1ZXN0IGNvbXBsZXRp b24gYW5kIHJldGlyZQo+ICsJICogaXQgY2F1c2luZyBhbiB1bmRlZmxvdyBvZiB0aGUgZW5naW5l LT53YWtlcmVmLgo+ICAgCSAqLwo+IC0JZmxhZ3MgPSBfX3RpbWVsaW5lX21hcmtfbG9jayhlbmdp bmUtPmtlcm5lbF9jb250ZXh0KTsKPiArCWZsYWdzID0gX190aW1lbGluZV9tYXJrX2xvY2soY2Up Owo+ICsJR0VNX0JVR19PTihhdG9taWNfcmVhZCgmY2UtPnRpbWVsaW5lLT5hY3RpdmVfY291bnQp IDwgMCk7Cj4gICAKPiAtCXJxID0gX19pOTE1X3JlcXVlc3RfY3JlYXRlKGVuZ2luZS0+a2VybmVs X2NvbnRleHQsIEdGUF9OT1dBSVQpOwo+ICsJcnEgPSBfX2k5MTVfcmVxdWVzdF9jcmVhdGUoY2Us IEdGUF9OT1dBSVQpOwo+ICAgCWlmIChJU19FUlIocnEpKQo+ICAgCQkvKiBDb250ZXh0IHN3aXRj aCBmYWlsZWQsIGhvcGUgZm9yIHRoZSBiZXN0ISBNYXliZSByZXNldD8gKi8KPiAgIAkJZ290byBv dXRfdW5sb2NrOwo+ICAgCj4gLQlpbnRlbF90aW1lbGluZV9lbnRlcihpOTE1X3JlcXVlc3RfdGlt ZWxpbmUocnEpKTsKPiAtCj4gICAJLyogQ2hlY2sgYWdhaW4gb24gdGhlIG5leHQgcmV0aXJlbWVu dC4gKi8KPiAgIAllbmdpbmUtPndha2VyZWZfc2VyaWFsID0gZW5naW5lLT5zZXJpYWwgKyAxOwo+ ICAgCWk5MTVfcmVxdWVzdF9hZGRfYWN0aXZlX2JhcnJpZXJzKHJxKTsKPiBAQCAtMTE2LDEzICsx NDgsMTQgQEAgc3RhdGljIGJvb2wgc3dpdGNoX3RvX2tlcm5lbF9jb250ZXh0KHN0cnVjdCBpbnRl bF9lbmdpbmVfY3MgKmVuZ2luZSkKPiAgIAlycS0+c2NoZWQuYXR0ci5wcmlvcml0eSA9IEk5MTVf UFJJT1JJVFlfQkFSUklFUjsKPiAgIAlfX2k5MTVfcmVxdWVzdF9jb21taXQocnEpOwo+ICAgCj4g LQkvKiBSZWxlYXNlIG91ciBleGNsdXNpdmUgaG9sZCBvbiB0aGUgZW5naW5lICovCj4gLQlfX2lu dGVsX3dha2VyZWZfZGVmZXJfcGFyaygmZW5naW5lLT53YWtlcmVmKTsKPiAgIAlfX2k5MTVfcmVx dWVzdF9xdWV1ZShycSwgTlVMTCk7Cj4gICAKPiArCS8qIEV4cG9zZSBvdXJzZWx2ZXMgdG8gaW50 ZWxfZ3RfcmV0aXJlX3JlcXVlc3RzKCkgYW5kIG5ldyBzdWJtaXNzaW9uICovCj4gKwlfX2ludGVs X3RpbWVsaW5lX2VudGVyX2FuZF9wbV9yZWxlYXNlKGNlLT50aW1lbGluZSwgZW5naW5lKTsKPiAr Cj4gICAJcmVzdWx0ID0gZmFsc2U7Cj4gICBvdXRfdW5sb2NrOgo+IC0JX190aW1lbGluZV9tYXJr X3VubG9jayhlbmdpbmUtPmtlcm5lbF9jb250ZXh0LCBmbGFncyk7Cj4gKwlfX3RpbWVsaW5lX21h cmtfdW5sb2NrKGNlLCBmbGFncyk7Cj4gICAJcmV0dXJuIHJlc3VsdDsKPiAgIH0KPiAgIAo+IApf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZngg bWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng= 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=-7.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, HK_RANDOM_FROM,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 1B713C432C0 for ; Wed, 20 Nov 2019 11:58:33 +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 EBC9522419 for ; Wed, 20 Nov 2019 11:58:32 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org EBC9522419 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.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 8725E6E406; Wed, 20 Nov 2019 11:58:32 +0000 (UTC) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4E64E6E406 for ; Wed, 20 Nov 2019 11:58:31 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Nov 2019 03:58:30 -0800 X-IronPort-AV: E=Sophos;i="5.69,221,1571727600"; d="scan'208";a="200693254" Received: from unknown (HELO [10.252.30.240]) ([10.252.30.240]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/AES256-SHA; 20 Nov 2019 03:58:29 -0800 To: Chris Wilson , intel-gfx@lists.freedesktop.org References: <20191120093302.3723715-1-chris@chris-wilson.co.uk> <20191120093302.3723715-3-chris@chris-wilson.co.uk> From: Tvrtko Ursulin Organization: Intel Corporation UK Plc Message-ID: Date: Wed, 20 Nov 2019 11:58:27 +0000 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: <20191120093302.3723715-3-chris@chris-wilson.co.uk> Content-Language: en-US Subject: Re: [Intel-gfx] [PATCH 3/9] drm/i915/gt: Unlock engine-pm after queuing the kernel context switch X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191120115827.umws6Yse6dHB2u1VjDAhr35OS-d7tf01VhJFbY7jXBM@z> Ck9uIDIwLzExLzIwMTkgMDk6MzIsIENocmlzIFdpbHNvbiB3cm90ZToKPiBJbiBjb21taXQgYTc5 Y2E2NTZiNjQ4ICgiZHJtL2k5MTU6IFB1c2ggdGhlIHdha2VyZWYtPmNvdW50IGRlZmVycmFsIHRv Cj4gdGhlIGJhY2tlbmQiKSwgSSBlcnJvbmVvdXNseSBjb25jbHVkZWQgdGhhdCB3ZSBsYXN0IG1v ZGlmeSB0aGUgZW5naW5lCj4gaW5zaWRlIF9faTkxNV9yZXF1ZXN0X2NvbW1pdCgpIG1lYW5pbmcg dGhhdCB3ZSBjb3VsZCBlbmFibGUgY29uY3VycmVudAo+IHN1Ym1pc3Npb24gZm9yIHVzZXJzcGFj ZSBhcyB3ZSBlbnF1ZXVlZCB0aGlzIHJlcXVlc3QuIEhvd2V2ZXIsIHRoaXMKPiBmYWxscyBpbnRv IGEgdHJhcCB3aXRoIG90aGVyIHVzZXJzIG9mIHRoZSBlbmdpbmUtPmtlcm5lbF9jb250ZXh0IHdh a2luZwo+IHVwIGFuZCBzdWJtaXR0aW5nIHRoZWlyIHJlcXVlc3QgYmVmb3JlIHRoZSBpZGxlLXN3 aXRjaCBpcyBxdWV1ZWQsIHdpdGgKPiB0aGUgcmVzdWx0IHRoYXQgdGhlIGtlcm5lbF9jb250ZXh0 IGlzIGV4ZWN1dGVkIG91dC1vZi1zZXF1ZW5jZSBtb3N0Cj4gbGlrZWx5IHVwc2V0dGluZyB0aGUg R1BVIGFuZCBjZXJ0YWlubHkgb3Vyc2VsdmVzIHdoZW4gd2UgdHJ5IHRvIHJldGlyZQo+IHRoZSBv dXQtb2Ytc2VxdWVuY2UgcmVxdWVzdHMuCj4gCj4gQXMgc3VjaCB3ZSBuZWVkIHRvIGhvbGQgb250 byB0aGUgZWZmZWN0aXZlIGVuZ2luZS0+a2VybmVsX2NvbnRleHQgbXV0ZXgKPiBsb2NrICh2aWEg dGhlIGVuZ2luZSBwbSBtdXRleCBwcm94eSkgdW50aWwgd2UgaGF2ZSBmaW5pc2ggcXVldWluZyB0 aGUKPiByZXF1ZXN0IHRvIHRoZSBlbmdpbmUuCj4gCj4gdjI6IFNlcmlhbGlzZSBhZ2FpbnN0IGNv bmN1cnJlbnQgaW50ZWxfZ3RfcmV0aXJlX3JlcXVlc3RzKCkKPiB2MzogRGVzY3JpYmUgdGhlIGhh aXJ5IGxvY2tpbmcgc2NoZW1lIHdpdGggaW50ZWxfZ3RfcmV0aXJlX3JlcXVlc3RzKCkKPiBmb3Ig ZnV0dXJlIHJlZmVyZW5jZS4KPiB2NDogQ29tYmluZSB0aW1lbGluZS0+bG9jayBhbmQgZW5naW5l IHBtIHJlbGVhc2U7IGl0J3MgaGFpcnkuCj4gCj4gRml4ZXM6IGE3OWNhNjU2YjY0OCAoImRybS9p OTE1OiBQdXNoIHRoZSB3YWtlcmVmLT5jb3VudCBkZWZlcnJhbCB0byB0aGUgYmFja2VuZCIpCj4g U2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4g Q2M6IE1pa2EgS3VvcHBhbGEgPG1pa2Eua3VvcHBhbGFAbGludXguaW50ZWwuY29tPgo+IENjOiBU dnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgo+IC0tLQo+ICAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3BtLmMgfCA0NyArKysrKysrKysrKysrKysr KysrLS0tLQo+ICAgMSBmaWxlIGNoYW5nZWQsIDQwIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25z KC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2VuZ2lu ZV9wbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3BtLmMKPiBpbmRl eCAzYzBmNDkwZmYyYzcuLjFmNTE3MzU3YTI2OCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfcG0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2d0L2ludGVsX2VuZ2luZV9wbS5jCj4gQEAgLTczLDggKzczLDI1IEBAIHN0YXRpYyBpbmxpbmUg dm9pZCBfX3RpbWVsaW5lX21hcmtfdW5sb2NrKHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSwKPiAg IAo+ICAgI2VuZGlmIC8qICFJU19FTkFCTEVEKENPTkZJR19MT0NLREVQKSAqLwo+ICAgCj4gK3N0 YXRpYyB2b2lkCj4gK19faW50ZWxfdGltZWxpbmVfZW50ZXJfYW5kX3BtX3JlbGVhc2Uoc3RydWN0 IGludGVsX3RpbWVsaW5lICp0bCwKPiArCQkJCSAgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KmVuZ2luZSkKPiArewo+ICsJc3RydWN0IGludGVsX2d0X3RpbWVsaW5lcyAqdGltZWxpbmVzID0g JmVuZ2luZS0+Z3QtPnRpbWVsaW5lczsKPiArCj4gKwlzcGluX2xvY2soJnRpbWVsaW5lcy0+bG9j ayk7Cj4gKwo+ICsJaWYgKCFhdG9taWNfZmV0Y2hfaW5jKCZ0bC0+YWN0aXZlX2NvdW50KSkKPiAr CQlsaXN0X2FkZF90YWlsKCZ0bC0+bGluaywgJnRpbWVsaW5lcy0+YWN0aXZlX2xpc3QpOwoKSG1t IHdpdGggdGhlc2UgbmV3IHBhcnQgaXQgbWF5YmUgbWF0Y2hlcy9hbnN3ZXJzIG15IHF1ZXN0aW9u IGZyb20gCiJkcm0vaTkxNS9ndDogQ2xvc2UgcmFjZSBiZXR3ZWVuIGVuZ2luZV9wYXJrIGFuZCAK aW50ZWxfZ3RfcmV0aXJlX3JlcXVlc3RzIi4gSSB0aGluayBhdCBsZWFzdC4gU2luY2UgaXQgbm93 IGFkZHMgYSBzZWNvbmQgCnBsYWNlIHRpbWVsaW5lIGNhbiBlbnRlciB0aGUgYWN0aXZlX2xpc3Qu CgpCdXQgbm8sIHdoZXJlIGRvZXMgdGhlIGludGVsX3RpbWVsaW5lX2VudGVyIHJhY2UgY29tZSBm cm9tPyBDYW4ndCBiZSAKdXNlcnNwYWNlIHN1Ym1pc3Npb24gc2luY2UgdGhleSBhcmUgYmxvY2tl ZCBvbiB3Zi0+bG9jay4KClJlZ2FyZHMsCgpUdnJ0a28KCj4gKwo+ICsJX19pbnRlbF93YWtlcmVm X2RlZmVyX3BhcmsoJmVuZ2luZS0+d2FrZXJlZik7Cj4gKwo+ICsJc3Bpbl91bmxvY2soJnRpbWVs aW5lcy0+bG9jayk7Cj4gK30KPiArCj4gICBzdGF0aWMgYm9vbCBzd2l0Y2hfdG9fa2VybmVsX2Nv bnRleHQoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQo+ICAgewo+ICsJc3RydWN0IGlu dGVsX2NvbnRleHQgKmNlID0gZW5naW5lLT5rZXJuZWxfY29udGV4dDsKPiAgIAlzdHJ1Y3QgaTkx NV9yZXF1ZXN0ICpycTsKPiAgIAl1bnNpZ25lZCBsb25nIGZsYWdzOwo+ICAgCWJvb2wgcmVzdWx0 ID0gdHJ1ZTsKPiBAQCAtOTgsMTYgKzExNSwzMSBAQCBzdGF0aWMgYm9vbCBzd2l0Y2hfdG9fa2Vy bmVsX2NvbnRleHQoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQo+ICAgCSAqIFRoaXMg c2hvdWxkIGhvbGQgdHJ1ZSBhcyB3ZSBjYW4gb25seSBwYXJrIHRoZSBlbmdpbmUgYWZ0ZXIKPiAg IAkgKiByZXRpcmluZyB0aGUgbGFzdCByZXF1ZXN0LCB0aHVzIGFsbCByaW5ncyBzaG91bGQgYmUg ZW1wdHkgYW5kCj4gICAJICogYWxsIHRpbWVsaW5lcyBpZGxlLgo+ICsJICoKPiArCSAqIEZvciB1 bmxvY2tpbmcsIHRoZXJlIGFyZSAyIG90aGVyIHBhcnRpZXMgYW5kIHRoZSBHUFUgd2hvIGhhdmUg YQo+ICsJICogc3Rha2UgaGVyZS4KPiArCSAqCj4gKwkgKiBBIG5ldyBncHUgdXNlciB3aWxsIGJl IHdhaXRpbmcgb24gdGhlIGVuZ2luZS1wbSB0byBzdGFydCB0aGVpcgo+ICsJICogZW5naW5lX3Vu cGFyay4gTmV3IHdhaXRlcnMgYXJlIHByZWRpY2F0ZWQgb24gZW5naW5lLT53YWtlcmVmLmNvdW50 Cj4gKwkgKiBhbmQgc28gaW50ZWxfd2FrZXJlZl9kZWZlcl9wYXJrKCkgYWN0cyBsaWtlIGEgbXV0 ZXhfdW5sb2NrIG9mIHRoZQo+ICsJICogZW5naW5lLT53YWtlcmVmLgo+ICsJICoKPiArCSAqIFRo ZSBvdGhlciBwYXJ0eSBpcyBpbnRlbF9ndF9yZXRpcmVfcmVxdWVzdHMoKSwgd2hpY2ggaXMgd2Fs a2luZyB0aGUKPiArCSAqIGxpc3Qgb2YgYWN0aXZlIHRpbWVsaW5lcyBsb29raW5nIGZvciBjb21w bGV0aW9ucy4gTWVhbndoaWxlIGFzIHNvb24KPiArCSAqIGFzIHdlIGNhbGwgX19pOTE1X3JlcXVl c3RfcXVldWUoKSwgdGhlIEdQVSBtYXkgY29tcGxldGUgb3VyIHJlcXVlc3QuCj4gKwkgKiBFcmdv LCBpZiB3ZSBwdXQgb3Vyc2VsdmVzIG9uIHRoZSB0aW1lbGluZXMuYWN0aXZlX2xpc3QKPiArCSAq IChzZSBpbnRlbF90aW1lbGluZV9lbnRlcigpKSBiZWZvcmUgd2UgaW5jcmVtZW50IHRoZQo+ICsJ ICogZW5naW5lLT53YWtlcmVmLmNvdW50LCB3ZSBtYXkgc2VlIHRoZSByZXF1ZXN0IGNvbXBsZXRp b24gYW5kIHJldGlyZQo+ICsJICogaXQgY2F1c2luZyBhbiB1bmRlZmxvdyBvZiB0aGUgZW5naW5l LT53YWtlcmVmLgo+ICAgCSAqLwo+IC0JZmxhZ3MgPSBfX3RpbWVsaW5lX21hcmtfbG9jayhlbmdp bmUtPmtlcm5lbF9jb250ZXh0KTsKPiArCWZsYWdzID0gX190aW1lbGluZV9tYXJrX2xvY2soY2Up Owo+ICsJR0VNX0JVR19PTihhdG9taWNfcmVhZCgmY2UtPnRpbWVsaW5lLT5hY3RpdmVfY291bnQp IDwgMCk7Cj4gICAKPiAtCXJxID0gX19pOTE1X3JlcXVlc3RfY3JlYXRlKGVuZ2luZS0+a2VybmVs X2NvbnRleHQsIEdGUF9OT1dBSVQpOwo+ICsJcnEgPSBfX2k5MTVfcmVxdWVzdF9jcmVhdGUoY2Us IEdGUF9OT1dBSVQpOwo+ICAgCWlmIChJU19FUlIocnEpKQo+ICAgCQkvKiBDb250ZXh0IHN3aXRj aCBmYWlsZWQsIGhvcGUgZm9yIHRoZSBiZXN0ISBNYXliZSByZXNldD8gKi8KPiAgIAkJZ290byBv dXRfdW5sb2NrOwo+ICAgCj4gLQlpbnRlbF90aW1lbGluZV9lbnRlcihpOTE1X3JlcXVlc3RfdGlt ZWxpbmUocnEpKTsKPiAtCj4gICAJLyogQ2hlY2sgYWdhaW4gb24gdGhlIG5leHQgcmV0aXJlbWVu dC4gKi8KPiAgIAllbmdpbmUtPndha2VyZWZfc2VyaWFsID0gZW5naW5lLT5zZXJpYWwgKyAxOwo+ ICAgCWk5MTVfcmVxdWVzdF9hZGRfYWN0aXZlX2JhcnJpZXJzKHJxKTsKPiBAQCAtMTE2LDEzICsx NDgsMTQgQEAgc3RhdGljIGJvb2wgc3dpdGNoX3RvX2tlcm5lbF9jb250ZXh0KHN0cnVjdCBpbnRl bF9lbmdpbmVfY3MgKmVuZ2luZSkKPiAgIAlycS0+c2NoZWQuYXR0ci5wcmlvcml0eSA9IEk5MTVf UFJJT1JJVFlfQkFSUklFUjsKPiAgIAlfX2k5MTVfcmVxdWVzdF9jb21taXQocnEpOwo+ICAgCj4g LQkvKiBSZWxlYXNlIG91ciBleGNsdXNpdmUgaG9sZCBvbiB0aGUgZW5naW5lICovCj4gLQlfX2lu dGVsX3dha2VyZWZfZGVmZXJfcGFyaygmZW5naW5lLT53YWtlcmVmKTsKPiAgIAlfX2k5MTVfcmVx dWVzdF9xdWV1ZShycSwgTlVMTCk7Cj4gICAKPiArCS8qIEV4cG9zZSBvdXJzZWx2ZXMgdG8gaW50 ZWxfZ3RfcmV0aXJlX3JlcXVlc3RzKCkgYW5kIG5ldyBzdWJtaXNzaW9uICovCj4gKwlfX2ludGVs X3RpbWVsaW5lX2VudGVyX2FuZF9wbV9yZWxlYXNlKGNlLT50aW1lbGluZSwgZW5naW5lKTsKPiAr Cj4gICAJcmVzdWx0ID0gZmFsc2U7Cj4gICBvdXRfdW5sb2NrOgo+IC0JX190aW1lbGluZV9tYXJr X3VubG9jayhlbmdpbmUtPmtlcm5lbF9jb250ZXh0LCBmbGFncyk7Cj4gKwlfX3RpbWVsaW5lX21h cmtfdW5sb2NrKGNlLCBmbGFncyk7Cj4gICAJcmV0dXJuIHJlc3VsdDsKPiAgIH0KPiAgIAo+IApf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZngg bWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=