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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 7CBCBF54AD0 for ; Tue, 24 Mar 2026 15:25:28 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id CFCB110E5D7; Tue, 24 Mar 2026 15:25:27 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=arm.com header.i=@arm.com header.b="jVEcK4Sy"; dkim-atps=neutral Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by gabe.freedesktop.org (Postfix) with ESMTP id 30EEB10E70F for ; Tue, 24 Mar 2026 15:25:26 +0000 (UTC) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 7793314BF for ; Tue, 24 Mar 2026 08:25:19 -0700 (PDT) Received: from [192.168.0.1] (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 332683F836 for ; Tue, 24 Mar 2026 08:25:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=arm.com; s=foss; t=1774365925; bh=uwPKBBZ4H8ET5yPwi0SdlITDXHozT6ps2YNd8n1q0UA=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=jVEcK4Syhu4tIDt8vonEPR63Jc9IMV3d6vKYXVxE8OdizQMf6MGD08R2hhtnNpPwU U1xK6/Is/Z0xBmFXRcIRbLT4AMRL8GMNunoMSFbuNzun4/bxJlaJEPMPiS3VBAd9OF /OLb1d5Y0GSYZyZVF8ycjPbV+FREMa8UM1S9Zk7k= Date: Tue, 24 Mar 2026 15:25:22 +0000 From: Liviu Dudau To: Marcin Slusarz Cc: Boris Brezillon , Steven Price , dri-devel@lists.freedesktop.org, Chia-I Wu , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Lukas Zapolskas , nd@arm.com Subject: Re: [PATCH v4] drm/panthor: extend timestamp query with flags Message-ID: References: <20260318112952.645160-1-marcin.slusarz@arm.com> <20260324132557.1707286-1-marcin.slusarz@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: base64 In-Reply-To: <20260324132557.1707286-1-marcin.slusarz@arm.com> 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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" T24gVHVlLCBNYXIgMjQsIDIwMjYgYXQgMDI6MjU6NTdQTSArMDEwMCwgTWFyY2luIFNsdXNhcnog d3JvdGU6Cj4gRmxhZ3Mgbm93IGNvbnRyb2wgd2hpY2ggZGF0YSB1c2VyIHNwYWNlIHdhbnRzIHRv IHF1ZXJ5LAo+IHRoZXJlIGlzIG1vcmUgaW5mb3JtYXRpb24gc291cmNlcywgYW5kIHRoZXJlJ3Mg YWJpbGl0eQo+IHRvIHF1ZXJ5IGR1cmF0aW9uIG9mIG11bHRpcGxlIHRpbWVzdGFtcCByZWFkcy4K PiAKPiBOZXcgc291cmNlczoKPiAtIENQVSdzIG1vbm90b25pYywKPiAtIENQVSdzIG1vbm90b25p YyByYXcsCj4gLSBHUFUncyBjeWNsZSBjb3VudAo+IAo+IFRoZXNlIGNoYW5nZXMgc2hvdWxkIG1h a2UgdGhlIGltcGxlbWVudGF0aW9uIG9mCj4gVktfS0hSX2NhbGlicmF0ZWRfdGltZXN0YW1wcyBt b3JlIGFjY3VyYXRlIGFuZCBtdWNoIHNpbXBsZXIuCj4gCj4gU2lnbmVkLW9mZi1ieTogTWFyY2lu IFNsdXNhcnogPG1hcmNpbi5zbHVzYXJ6QGFybS5jb20+Cj4gUmV2aWV3ZWQtYnk6IEJvcmlzIEJy ZXppbGxvbiA8Ym9yaXMuYnJlemlsbG9uQGNvbGxhYm9yYS5jb20+CgpSZXZpZXdlZC1ieTogTGl2 aXUgRHVkYXUgPGxpdml1LmR1ZGF1QGFybS5jb20+CgpCZXN0IHJlZ2FyZHMsCkxpdml1Cgo+IC0t LQo+IENoYW5nZXMgaW4gdjQ6Cj4gIC0gMCByZXBsYWNlZCBieSBEUk1fUEFOVEhPUl9USU1FU1RB TVBfQ1BVX05PTkUgaW4gQ1BVX1RZUEVfTUFTSyBzd2l0Y2gKPiAgLSBleHRlbmRlZCBkb2N1bWVu dGF0aW9uIGZvciBmbGFncwo+IENoYW5nZXMgaW4gdjM6Cj4gIC0ge30gYXJvdW5kIG11bHRpbGlu ZSBzdGF0ZW1lbnRzCj4gIC0gYWRkZWQgY29tbWVudCBhYm91dCBkZWZhdWx0IGZsYWdzCj4gIC0g YWRkZWQgVkFMSURfVElNRVNUQU1QX1FVRVJZX0ZMQUdTCj4gIC0gdXNlZCB1NjRfdG9fdXNlcl9w dHIKPiBDaGFuZ2VzIGluIHYyOgo+ICAtIGFkZGVkIERSTV9QQU5USE9SX1RJTUVTVEFNUF9DUFVf Tk9ORQo+ICAtIGNwdV90aW1lc3RhbXBfbnNlYyBleHRlbmRlZCB0byB1NjQKPiAgLSBwYWQxIHJl bW92ZWQKPiAgLSBjb3B5X2Zyb21fdXNlciAtPiBjb3B5X3N0cnVjdF9mcm9tX3VzZXIKPiAgLSBs b29raW5nIGF0IHNpemUgcmVwbGFjZWQgYnkgbG9va2luZyBhdCBmbGFncwo+ICAtIG1vcmUgY29t bWVudHMKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL3BhbnRob3IvcGFudGhvcl9kcnYuYyB8IDEz NCArKysrKysrKysrKysrKysrKysrKysrKystLQo+ICBpbmNsdWRlL3VhcGkvZHJtL3BhbnRob3Jf ZHJtLmggICAgICAgIHwgIDYzICsrKysrKysrKysrLQo+ICAyIGZpbGVzIGNoYW5nZWQsIDE4OSBp bnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vcGFudGhvci9wYW50aG9yX2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbnRob3IvcGFu dGhvcl9kcnYuYwo+IGluZGV4IDE2NWRkZGZkZTZjYS4uOWU2NWFmNDUzMTE5IDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9wYW50aG9yL3BhbnRob3JfZHJ2LmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vcGFudGhvci9wYW50aG9yX2Rydi5jCj4gQEAgLTEzLDcgKzEzLDkgQEAKPiAgI2lu Y2x1ZGUgPGxpbnV4L3BhZ2VtYXAuaD4KPiAgI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2Rldmlj ZS5oPgo+ICAjaW5jbHVkZSA8bGludXgvcG1fcnVudGltZS5oPgo+ICsjaW5jbHVkZSA8bGludXgv c2NoZWQvY2xvY2suaD4KPiAgI2luY2x1ZGUgPGxpbnV4L3RpbWU2NC5oPgo+ICsjaW5jbHVkZSA8 bGludXgvdGltZV9uYW1lc3BhY2UuaD4KPiAgCj4gICNpbmNsdWRlIDxkcm0vZHJtX2F1dGguaD4K PiAgI2luY2x1ZGUgPGRybS9kcm1fZGVidWdmcy5oPgo+IEBAIC03NjEsMjIgKzc2MywxMzUgQEAg c3RhdGljIHZvaWQgcGFudGhvcl9zdWJtaXRfY3R4X2NsZWFudXAoc3RydWN0IHBhbnRob3Jfc3Vi bWl0X2N0eCAqY3R4LAo+ICAJa3ZmcmVlKGN0eC0+am9icyk7Cj4gIH0KPiAgCj4gKyNkZWZpbmUg VkFMSURfVElNRVNUQU1QX1FVRVJZX0ZMQUdTIFwKPiArCQkoRFJNX1BBTlRIT1JfVElNRVNUQU1Q X0dQVSB8IFwKPiArCQkgRFJNX1BBTlRIT1JfVElNRVNUQU1QX0NQVV9UWVBFX01BU0sgfCBcCj4g KwkJIERSTV9QQU5USE9SX1RJTUVTVEFNUF9HUFVfT0ZGU0VUIHwgXAo+ICsJCSBEUk1fUEFOVEhP Ul9USU1FU1RBTVBfR1BVX0NZQ0xFX0NPVU5UIHwgXAo+ICsJCSBEUk1fUEFOVEhPUl9USU1FU1RB TVBfRlJFUSB8IFwKPiArCQkgRFJNX1BBTlRIT1JfVElNRVNUQU1QX0RVUkFUSU9OKQo+ICsKPiAg c3RhdGljIGludCBwYW50aG9yX3F1ZXJ5X3RpbWVzdGFtcF9pbmZvKHN0cnVjdCBwYW50aG9yX2Rl dmljZSAqcHRkZXYsCj4gIAkJCQkJc3RydWN0IGRybV9wYW50aG9yX3RpbWVzdGFtcF9pbmZvICph cmcpCj4gIHsKPiAgCWludCByZXQ7Cj4gKwl1MzIgZmxhZ3M7Cj4gKwl1bnNpZ25lZCBsb25nIGly cV9mbGFnczsKPiArCXN0cnVjdCB0aW1lc3BlYzY0IGNwdV90czsKPiArCXU2NCBxdWVyeV9zdGFy dF90aW1lOwo+ICsJYm9vbCBtaW5pbWl6ZV9pbnRlcnJ1cHRpb247Cj4gKwl1MzIgdGltZXN0YW1w X3R5cGVzID0gMDsKPiArCj4gKwlpZiAoYXJnLT5mbGFncyAhPSAwKSB7Cj4gKwkJZmxhZ3MgPSBh cmctPmZsYWdzOwo+ICsJfSBlbHNlIHsKPiArCQkvKgo+ICsJCSAqIElmIGZsYWdzIGFyZSAwLCB0 aGVuIGFzayBmb3IgdGhlIHNhbWUgdGhpbmdzIHRoYXQgd2UgYXNrZWQKPiArCQkgKiBmb3IgYmVm b3JlIGZsYWdzIHdlcmUgYWRkZWQuCj4gKwkJICovCj4gKwkJZmxhZ3MgPSBEUk1fUEFOVEhPUl9U SU1FU1RBTVBfR1BVIHwKPiArCQkJRFJNX1BBTlRIT1JfVElNRVNUQU1QX0dQVV9PRkZTRVQgfAo+ ICsJCQlEUk1fUEFOVEhPUl9USU1FU1RBTVBfRlJFUTsKPiArCX0KPiArCj4gKwlzd2l0Y2ggKGZs YWdzICYgRFJNX1BBTlRIT1JfVElNRVNUQU1QX0NQVV9UWVBFX01BU0spIHsKPiArCWNhc2UgRFJN X1BBTlRIT1JfVElNRVNUQU1QX0NQVV9OT05FOgo+ICsJCWJyZWFrOwo+ICsJY2FzZSBEUk1fUEFO VEhPUl9USU1FU1RBTVBfQ1BVX01PTk9UT05JQzoKPiArCWNhc2UgRFJNX1BBTlRIT1JfVElNRVNU QU1QX0NQVV9NT05PVE9OSUNfUkFXOgo+ICsJCXRpbWVzdGFtcF90eXBlcysrOwo+ICsJCWJyZWFr Owo+ICsJZGVmYXVsdDoKPiArCQlyZXR1cm4gLUVJTlZBTDsKPiArCX0KPiArCj4gKwlpZiAoZmxh Z3MgJiB+VkFMSURfVElNRVNUQU1QX1FVRVJZX0ZMQUdTKQo+ICsJCXJldHVybiAtRUlOVkFMOwo+ ICsKPiArCWlmIChmbGFncyAmIERSTV9QQU5USE9SX1RJTUVTVEFNUF9HUFUpCj4gKwkJdGltZXN0 YW1wX3R5cGVzKys7Cj4gKwlpZiAoZmxhZ3MgJiBEUk1fUEFOVEhPUl9USU1FU1RBTVBfR1BVX0NZ Q0xFX0NPVU5UKQo+ICsJCXRpbWVzdGFtcF90eXBlcysrOwo+ICsKPiArCS8qIElmIHVzZXIgYXNr ZWQgdG8gb2J0YWluIHRpbWVzdGFtcHMgZnJvbSBtb3JlIHRoYW4gb25lIHNvdXJjZSwKPiArCSAq IHRoZW4gaXQgdmVyeSBsaWtlbHkgbWVhbnMgdGhleSB3YW50IHRoZW0gdG8gYmUgYXMgY2xvc2Ug YXMgcG9zc2libGUuCj4gKwkgKiBJZiB0aGV5IGFza2VkIGZvciBkdXJhdGlvbiwgdGhlbiB0aGF0 IGxpa2VseSBtZWFucyB0aGF0IHRoZXkKPiArCSAqIHdhbnQgdG8ga25vdyBob3cgbG9uZyBvYnRh aW5pbmcgdGltZXN0YW1wIHRha2VzLCB3aXRob3V0IHJhbmRvbQo+ICsJICogZXZlbnRzLCBsaWtl IHByb2Nlc3Mgc2NoZWR1bGluZyBvciBpbnRlcnJ1cHRzLgo+ICsJICovCj4gKwltaW5pbWl6ZV9p bnRlcnJ1cHRpb24gPQo+ICsJCShmbGFncyAmIERSTV9QQU5USE9SX1RJTUVTVEFNUF9EVVJBVElP TikgfHwKPiArCQkodGltZXN0YW1wX3R5cGVzID49IDIpOwo+ICAKPiAgCXJldCA9IHBhbnRob3Jf ZGV2aWNlX3Jlc3VtZV9hbmRfZ2V0KHB0ZGV2KTsKPiAgCWlmIChyZXQpCj4gIAkJcmV0dXJuIHJl dDsKPiAgCj4gKwlpZiAoZmxhZ3MgJiBEUk1fUEFOVEhPUl9USU1FU1RBTVBfRlJFUSkgewo+ICAj aWZkZWYgQ09ORklHX0FSTV9BUkNIX1RJTUVSCj4gLQlhcmctPnRpbWVzdGFtcF9mcmVxdWVuY3kg PSBhcmNoX3RpbWVyX2dldF9jbnRmcnEoKTsKPiArCQlhcmctPnRpbWVzdGFtcF9mcmVxdWVuY3kg PSBhcmNoX3RpbWVyX2dldF9jbnRmcnEoKTsKPiAgI2Vsc2UKPiAtCWFyZy0+dGltZXN0YW1wX2Zy ZXF1ZW5jeSA9IDA7Cj4gKwkJYXJnLT50aW1lc3RhbXBfZnJlcXVlbmN5ID0gMDsKPiAgI2VuZGlm Cj4gLQlhcmctPmN1cnJlbnRfdGltZXN0YW1wID0gZ3B1X3JlYWQ2NF9jb3VudGVyKHB0ZGV2LCBH UFVfVElNRVNUQU1QKTsKPiAtCWFyZy0+dGltZXN0YW1wX29mZnNldCA9IGdwdV9yZWFkNjQocHRk ZXYsIEdQVV9USU1FU1RBTVBfT0ZGU0VUKTsKPiArCX0gZWxzZSB7Cj4gKwkJYXJnLT50aW1lc3Rh bXBfZnJlcXVlbmN5ID0gMDsKPiArCX0KPiArCj4gKwlpZiAoZmxhZ3MgJiBEUk1fUEFOVEhPUl9U SU1FU1RBTVBfR1BVX09GRlNFVCkKPiArCQlhcmctPnRpbWVzdGFtcF9vZmZzZXQgPSBncHVfcmVh ZDY0KHB0ZGV2LCBHUFVfVElNRVNUQU1QX09GRlNFVCk7Cj4gKwllbHNlCj4gKwkJYXJnLT50aW1l c3RhbXBfb2Zmc2V0ID0gMDsKPiArCj4gKwlpZiAobWluaW1pemVfaW50ZXJydXB0aW9uKSB7Cj4g KwkJcHJlZW1wdF9kaXNhYmxlKCk7Cj4gKwkJbG9jYWxfaXJxX3NhdmUoaXJxX2ZsYWdzKTsKPiAr CX0KPiArCj4gKwlpZiAoZmxhZ3MgJiBEUk1fUEFOVEhPUl9USU1FU1RBTVBfRFVSQVRJT04pCj4g KwkJcXVlcnlfc3RhcnRfdGltZSA9IGxvY2FsX2Nsb2NrKCk7Cj4gKwllbHNlCj4gKwkJcXVlcnlf c3RhcnRfdGltZSA9IDA7Cj4gKwo+ICsJaWYgKGZsYWdzICYgRFJNX1BBTlRIT1JfVElNRVNUQU1Q X0dQVSkKPiArCQlhcmctPmN1cnJlbnRfdGltZXN0YW1wID0gZ3B1X3JlYWQ2NF9jb3VudGVyKHB0 ZGV2LCBHUFVfVElNRVNUQU1QKTsKPiArCWVsc2UKPiArCQlhcmctPmN1cnJlbnRfdGltZXN0YW1w ID0gMDsKPiArCj4gKwlzd2l0Y2ggKGZsYWdzICYgRFJNX1BBTlRIT1JfVElNRVNUQU1QX0NQVV9U WVBFX01BU0spIHsKPiArCWNhc2UgRFJNX1BBTlRIT1JfVElNRVNUQU1QX0NQVV9NT05PVE9OSUM6 Cj4gKwkJa3RpbWVfZ2V0X3RzNjQoJmNwdV90cyk7Cj4gKwkJYnJlYWs7Cj4gKwljYXNlIERSTV9Q QU5USE9SX1RJTUVTVEFNUF9DUFVfTU9OT1RPTklDX1JBVzoKPiArCQlrdGltZV9nZXRfcmF3X3Rz NjQoJmNwdV90cyk7Cj4gKwkJYnJlYWs7Cj4gKwlkZWZhdWx0Ogo+ICsJCWJyZWFrOwo+ICsJfQo+ ICsKPiArCWlmIChmbGFncyAmIERSTV9QQU5USE9SX1RJTUVTVEFNUF9HUFVfQ1lDTEVfQ09VTlQp Cj4gKwkJYXJnLT5jeWNsZV9jb3VudCA9IGdwdV9yZWFkNjRfY291bnRlcihwdGRldiwgR1BVX0NZ Q0xFX0NPVU5UKTsKPiArCWVsc2UKPiArCQlhcmctPmN5Y2xlX2NvdW50ID0gMDsKPiArCj4gKwlp ZiAoZmxhZ3MgJiBEUk1fUEFOVEhPUl9USU1FU1RBTVBfRFVSQVRJT04pCj4gKwkJYXJnLT5kdXJh dGlvbl9uc2VjID0gbG9jYWxfY2xvY2soKSAtIHF1ZXJ5X3N0YXJ0X3RpbWU7Cj4gKwllbHNlCj4g KwkJYXJnLT5kdXJhdGlvbl9uc2VjID0gMDsKPiArCj4gKwlpZiAobWluaW1pemVfaW50ZXJydXB0 aW9uKSB7Cj4gKwkJbG9jYWxfaXJxX3Jlc3RvcmUoaXJxX2ZsYWdzKTsKPiArCQlwcmVlbXB0X2Vu YWJsZSgpOwo+ICsJfQo+ICsKPiArCWlmIChmbGFncyAmIERSTV9QQU5USE9SX1RJTUVTVEFNUF9D UFVfVFlQRV9NQVNLKSB7Cj4gKwkJdGltZW5zX2FkZF9tb25vdG9uaWMoJmNwdV90cyk7Cj4gKwo+ ICsJCWFyZy0+Y3B1X3RpbWVzdGFtcF9zZWMgPSBjcHVfdHMudHZfc2VjOwo+ICsJCWFyZy0+Y3B1 X3RpbWVzdGFtcF9uc2VjID0gY3B1X3RzLnR2X25zZWM7Cj4gKwl9IGVsc2Ugewo+ICsJCWFyZy0+ Y3B1X3RpbWVzdGFtcF9zZWMgPSAwOwo+ICsJCWFyZy0+Y3B1X3RpbWVzdGFtcF9uc2VjID0gMDsK PiArCX0KPiAgCj4gIAlwbV9ydW50aW1lX3B1dChwdGRldi0+YmFzZS5kZXYpOwo+ICAJcmV0dXJu IDA7Cj4gQEAgLTg1MSw4ICs5NjYsMTQgQEAgc3RhdGljIGludCBwYW50aG9yX2lvY3RsX2Rldl9x dWVyeShzdHJ1Y3QgZHJtX2RldmljZSAqZGRldiwgdm9pZCAqZGF0YSwgc3RydWN0IGQKPiAgCQly ZXR1cm4gUEFOVEhPUl9VT0JKX1NFVChhcmdzLT5wb2ludGVyLCBhcmdzLT5zaXplLCBwdGRldi0+ Y3NpZl9pbmZvKTsKPiAgCj4gIAljYXNlIERSTV9QQU5USE9SX0RFVl9RVUVSWV9USU1FU1RBTVBf SU5GTzoKPiAtCQlyZXQgPSBwYW50aG9yX3F1ZXJ5X3RpbWVzdGFtcF9pbmZvKHB0ZGV2LCAmdGlt ZXN0YW1wX2luZm8pOwo+ICsJCXJldCA9IGNvcHlfc3RydWN0X2Zyb21fdXNlcigmdGltZXN0YW1w X2luZm8sCj4gKwkJCQkJICAgIHNpemVvZih0aW1lc3RhbXBfaW5mbyksCj4gKwkJCQkJICAgIHU2 NF90b191c2VyX3B0cihhcmdzLT5wb2ludGVyKSwKPiArCQkJCQkgICAgYXJncy0+c2l6ZSk7Cj4g KwkJaWYgKHJldCkKPiArCQkJcmV0dXJuIHJldDsKPiAgCj4gKwkJcmV0ID0gcGFudGhvcl9xdWVy eV90aW1lc3RhbXBfaW5mbyhwdGRldiwgJnRpbWVzdGFtcF9pbmZvKTsKPiAgCQlpZiAocmV0KQo+ ICAJCQlyZXR1cm4gcmV0Owo+ICAKPiBAQCAtMTY4MCw2ICsxODAxLDcgQEAgc3RhdGljIHZvaWQg cGFudGhvcl9kZWJ1Z2ZzX2luaXQoc3RydWN0IGRybV9taW5vciAqbWlub3IpCj4gICAqICAgICAg IC0gYWRkcyBEUk1fSU9DVExfUEFOVEhPUl9CT19TWU5DIGlvY3RsCj4gICAqICAgICAgIC0gYWRk cyBEUk1fSU9DVExfUEFOVEhPUl9CT19RVUVSWV9JTkZPIGlvY3RsCj4gICAqICAgICAgIC0gYWRk cyBkcm1fcGFudGhvcl9ncHVfaW5mbzo6c2VsZWN0ZWRfY29oZXJlbmN5Cj4gKyAqIC0gMS44IC0g ZXh0ZW5kcyBERVZfUVVFUllfVElNRVNUQU1QX0lORk8gd2l0aCBmbGFncwo+ICAgKi8KPiAgc3Rh dGljIGNvbnN0IHN0cnVjdCBkcm1fZHJpdmVyIHBhbnRob3JfZHJtX2RyaXZlciA9IHsKPiAgCS5k cml2ZXJfZmVhdHVyZXMgPSBEUklWRVJfUkVOREVSIHwgRFJJVkVSX0dFTSB8IERSSVZFUl9TWU5D T0JKIHwKPiBAQCAtMTY5Myw3ICsxODE1LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZHJp dmVyIHBhbnRob3JfZHJtX2RyaXZlciA9IHsKPiAgCS5uYW1lID0gInBhbnRob3IiLAo+ICAJLmRl c2MgPSAiUGFudGhvciBEUk0gZHJpdmVyIiwKPiAgCS5tYWpvciA9IDEsCj4gLQkubWlub3IgPSA3 LAo+ICsJLm1pbm9yID0gOCwKPiAgCj4gIAkuZ2VtX2NyZWF0ZV9vYmplY3QgPSBwYW50aG9yX2dl bV9jcmVhdGVfb2JqZWN0LAo+ICAJLmdlbV9wcmltZV9pbXBvcnRfc2dfdGFibGUgPSBkcm1fZ2Vt X3NobWVtX3ByaW1lX2ltcG9ydF9zZ190YWJsZSwKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91YXBp L2RybS9wYW50aG9yX2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9wYW50aG9yX2RybS5oCj4gaW5k ZXggYjQwMWFjNTg1ZDZhLi4wZTQ1NWQ5MWU3N2QgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS91YXBp L2RybS9wYW50aG9yX2RybS5oCj4gKysrIGIvaW5jbHVkZS91YXBpL2RybS9wYW50aG9yX2RybS5o Cj4gQEAgLTQwOSw2ICs0MDksMzggQEAgc3RydWN0IGRybV9wYW50aG9yX2NzaWZfaW5mbyB7Cj4g IAlfX3UzMiBwYWQ7Cj4gIH07Cj4gIAo+ICsvKioKPiArICogZW51bSBkcm1fcGFudGhvcl90aW1l c3RhbXBfaW5mb19mbGFncyAtIGRybV9wYW50aG9yX3RpbWVzdGFtcF9pbmZvLmZsYWdzCj4gKyAq Lwo+ICtlbnVtIGRybV9wYW50aG9yX3RpbWVzdGFtcF9pbmZvX2ZsYWdzIHsKPiArCS8qKiBARFJN X1BBTlRIT1JfVElNRVNUQU1QX0dQVTogUXVlcnkgR1BVIHRpbWUuICovCj4gKwlEUk1fUEFOVEhP Ul9USU1FU1RBTVBfR1BVID0gMSA8PCAwLAo+ICsKPiArCS8qKiBARFJNX1BBTlRIT1JfVElNRVNU QU1QX0NQVV9OT05FOiBEb24ndCBxdWVyeSBDUFUgdGltZS4gKi8KPiArCURSTV9QQU5USE9SX1RJ TUVTVEFNUF9DUFVfTk9ORSA9IDAgPDwgMSwKPiArCj4gKwkvKiogQERSTV9QQU5USE9SX1RJTUVT VEFNUF9DUFVfTU9OT1RPTklDOiBRdWVyeSBDUFUgdGltZSB1c2luZyBDTE9DS19NT05PVE9OSUMu ICovCj4gKwlEUk1fUEFOVEhPUl9USU1FU1RBTVBfQ1BVX01PTk9UT05JQyA9IDEgPDwgMSwKPiAr Cj4gKwkvKiogQERSTV9QQU5USE9SX1RJTUVTVEFNUF9DUFVfTU9OT1RPTklDX1JBVzogUXVlcnkg Q1BVIHRpbWUgdXNpbmcgQ0xPQ0tfTU9OT1RPTklDX1JBVy4gKi8KPiArCURSTV9QQU5USE9SX1RJ TUVTVEFNUF9DUFVfTU9OT1RPTklDX1JBVyA9IDIgPDwgMSwKPiArCj4gKwkvKiogQERSTV9QQU5U SE9SX1RJTUVTVEFNUF9DUFVfVFlQRV9NQVNLOiBTcGFjZSByZXNlcnZlZCBmb3IgQ1BVIGNsb2Nr IHR5cGUuICovCj4gKwlEUk1fUEFOVEhPUl9USU1FU1RBTVBfQ1BVX1RZUEVfTUFTSyA9IDcgPDwg MSwKPiArCj4gKwkvKiogQERSTV9QQU5USE9SX1RJTUVTVEFNUF9HUFVfT0ZGU0VUOiBRdWVyeSBH UFUgb2Zmc2V0LiAqLwo+ICsJRFJNX1BBTlRIT1JfVElNRVNUQU1QX0dQVV9PRkZTRVQgPSAxIDw8 IDQsCj4gKwo+ICsJLyoqIEBEUk1fUEFOVEhPUl9USU1FU1RBTVBfR1BVX0NZQ0xFX0NPVU5UOiBR dWVyeSBHUFUgY3ljbGUgY291bnQuICovCj4gKwlEUk1fUEFOVEhPUl9USU1FU1RBTVBfR1BVX0NZ Q0xFX0NPVU5UID0gMSA8PCA1LAo+ICsKPiArCS8qKiBARFJNX1BBTlRIT1JfVElNRVNUQU1QX0ZS RVE6IFF1ZXJ5IHRpbWVzdGFtcCBmcmVxdWVuY3kuICovCj4gKwlEUk1fUEFOVEhPUl9USU1FU1RB TVBfRlJFUSA9IDEgPDwgNiwKPiArCj4gKwkvKiogQERSTV9QQU5USE9SX1RJTUVTVEFNUF9EVVJB VElPTjogUmV0dXJuIGR1cmF0aW9uIG9mIHRpbWUgcXVlcnkuICovCj4gKwlEUk1fUEFOVEhPUl9U SU1FU1RBTVBfRFVSQVRJT04gPSAxIDw8IDcsCj4gK307Cj4gKwo+ICAvKioKPiAgICogc3RydWN0 IGRybV9wYW50aG9yX3RpbWVzdGFtcF9pbmZvIC0gVGltZXN0YW1wIGluZm9ybWF0aW9uCj4gICAq Cj4gQEAgLTQyMSwxMSArNDUzLDM4IEBAIHN0cnVjdCBkcm1fcGFudGhvcl90aW1lc3RhbXBfaW5m byB7Cj4gIAkgKi8KPiAgCV9fdTY0IHRpbWVzdGFtcF9mcmVxdWVuY3k7Cj4gIAo+IC0JLyoqIEBj dXJyZW50X3RpbWVzdGFtcDogVGhlIGN1cnJlbnQgdGltZXN0YW1wLiAqLwo+ICsJLyoqIEBjdXJy ZW50X3RpbWVzdGFtcDogVGhlIGN1cnJlbnQgR1BVIHRpbWVzdGFtcC4gKi8KPiAgCV9fdTY0IGN1 cnJlbnRfdGltZXN0YW1wOwo+ICAKPiAtCS8qKiBAdGltZXN0YW1wX29mZnNldDogVGhlIG9mZnNl dCBvZiB0aGUgdGltZXN0YW1wIHRpbWVyLiAqLwo+ICsJLyoqIEB0aW1lc3RhbXBfb2Zmc2V0OiBU aGUgb2Zmc2V0IG9mIHRoZSBHUFUgdGltZXN0YW1wIHRpbWVyLiAqLwo+ICAJX191NjQgdGltZXN0 YW1wX29mZnNldDsKPiArCj4gKwkvKioKPiArCSAqIEBmbGFnczogQml0bWFzayBvZiBkcm1fcGFu dGhvcl90aW1lc3RhbXBfaW5mb19mbGFncy4KPiArCSAqCj4gKwkgKiBJZiBzZXQgdG8gMCwgdGhl biBpdCBpcyBpbnRlcnByZXRlZCBhczoKPiArCSAqICBEUk1fUEFOVEhPUl9USU1FU1RBTVBfR1BV IHwKPiArCSAqICBEUk1fUEFOVEhPUl9USU1FU1RBTVBfR1BVX09GRlNFVCB8Cj4gKwkgKiAgRFJN X1BBTlRIT1JfVElNRVNUQU1QX0ZSRVEKPiArCSAqCj4gKwkgKiBOb3RlOiB0aGVzZSBmbGFncyBh cmUgZXhjbHVzaXZlIHRvIGVhY2ggb3RoZXIgKG9ubHkgb25lIGNhbiBiZSB1c2VkKToKPiArCSAq IC0gRFJNX1BBTlRIT1JfVElNRVNUQU1QX0NQVV9OT05FCj4gKwkgKiAtIERSTV9QQU5USE9SX1RJ TUVTVEFNUF9DUFVfTU9OT1RPTklDCj4gKwkgKiAtIERSTV9QQU5USE9SX1RJTUVTVEFNUF9DUFVf TU9OT1RPTklDX1JBVwo+ICsJICovCj4gKwlfX3UzMiBmbGFnczsKPiArCj4gKwkvKiogQGR1cmF0 aW9uX25zZWM6IER1cmF0aW9uIG9mIHRpbWUgcXVlcnkuICovCj4gKwlfX3UzMiBkdXJhdGlvbl9u c2VjOwo+ICsKPiArCS8qKiBAY3ljbGVfY291bnQ6IFZhbHVlIG9mIEdQVV9DWUNMRV9DT1VOVC4g Ki8KPiArCV9fdTY0IGN5Y2xlX2NvdW50Owo+ICsKPiArCS8qKiBAY3B1X3RpbWVzdGFtcF9zZWM6 IFNlY29uZHMgcGFydCBvZiBDUFUgdGltZXN0YW1wLiAqLwo+ICsJX191NjQgY3B1X3RpbWVzdGFt cF9zZWM7Cj4gKwo+ICsJLyoqIEBjcHVfdGltZXN0YW1wX25zZWM6IE5hbnNlY29uZHMgcGFydCBv ZiBDUFUgdGltZXN0YW1wLiAqLwo+ICsJX191NjQgY3B1X3RpbWVzdGFtcF9uc2VjOwo+ICB9Owo+ ICAKPiAgLyoqCj4gLS0gCj4gMi4zNC4xCj4gCgotLSAKPT09PT09PT09PT09PT09PT09PT0KfCBJ IHdvdWxkIGxpa2UgdG8gfAp8IGZpeCB0aGUgd29ybGQsICB8CnwgYnV0IHRoZXkncmUgbm90IHwK fCBnaXZpbmcgbWUgdGhlICAgfAogXCBzb3VyY2UgY29kZSEgIC8KICAtLS0tLS0tLS0tLS0tLS0K ICAgIMKvXF8o44OEKV8vwq8K