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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3ADACC05027 for ; Sun, 12 Feb 2023 22:22:10 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229767AbjBLWWI (ORCPT ); Sun, 12 Feb 2023 17:22:08 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49492 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229503AbjBLWWG (ORCPT ); Sun, 12 Feb 2023 17:22:06 -0500 Received: from mail-oi1-x229.google.com (mail-oi1-x229.google.com [IPv6:2607:f8b0:4864:20::229]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4A407FF16; Sun, 12 Feb 2023 14:22:03 -0800 (PST) Received: by mail-oi1-x229.google.com with SMTP id 20so8824003oix.5; Sun, 12 Feb 2023 14:22:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to :content-language:user-agent:mime-version:date:message-id:sender :from:to:cc:subject:date:message-id:reply-to; bh=wRZLgFwe8qTLyDFbzYz9mAFnMb7vTZuOjkc/nwdQDCU=; b=kpJ0iI2pLpq27nGkf+gBLYzbxVqwdXgBT+WUyc7wUFzeXyCQTFJFWqtupseCK3eVxN x4/fhiBXLm2ZqfdbQ6izgKGTiPEA37rkroRpuHPjFQjkTgq4OopZlJCsBYcugafkY374 SSn/Qa5CASx55lo6D0t71Zr/dseIA1UyqJj2gYyPUHP/xfIp6MQjtZ1iTVUqJ8pnnsm6 hnujN1B+hf2VlAZyp+NFQ4m02fnPO3RTAsb1xrPattjGNWxFDv8yADF0hvkur3cVmpe5 7c7kTpYOV5UZB8FKWv/SqysgKPTw+eKlVl+ZltGqQrXC8u4zTKDX3bbcaV8sspcUVvY3 wEIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to :content-language:user-agent:mime-version:date:message-id:sender :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=wRZLgFwe8qTLyDFbzYz9mAFnMb7vTZuOjkc/nwdQDCU=; b=pQ/d4v0jNpCBdCNzB/Clb4gu5b/3GT6DIzs+4Snf9npDL7rLjJIKrHPJi/illOZ4Gq 22aRiLHm2ODCG2KzIl1gPXvNR4QYWH1uzNle9fM0NAc+OgjLis0CRPerKkvrdBH4Chku M4xvI0AoJiKhIb9sa57wy6ZilJwEczghS9t4/MnP8QGhexrGmxhcuFpOwS0+kd0NAst5 KqtvizNHUZLlEpYRY5tjfC9ywpsa7aC6pms6BEMSPXRAOrhD0qrrDLmTWCT+396DFWgw U/gCbMDsITjiZj4doa22FT2mQXhv1aOncBRKPf19OZpbe3OM5bWtDTbX7ozaQpThmzhZ EVeA== X-Gm-Message-State: AO0yUKU5Ua/dSXdks3BHCIJc9rr8S4QBqnI3nmszY5l+j44YRaSxVUSy BBvAFvPstZEeQdJfZ4wytlI= X-Google-Smtp-Source: AK7set8v8D/KLVdtbo4c+77G55RpiQgSBgAdszw/gLVqK6rwVtcdQXi3hC+/jwfjG8QqFjXMn1CxGA== X-Received: by 2002:a54:4693:0:b0:364:d114:875e with SMTP id k19-20020a544693000000b00364d114875emr10286147oic.4.1676240522562; Sun, 12 Feb 2023 14:22:02 -0800 (PST) Received: from ?IPV6:2600:1700:e321:62f0:329c:23ff:fee3:9d7c? ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id z14-20020a05683020ce00b0068bb6043362sm4581287otq.11.2023.02.12.14.22.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 12 Feb 2023 14:22:01 -0800 (PST) Sender: Guenter Roeck Message-ID: <7b4df6c3-e5bc-d551-a644-492ca061d439@roeck-us.net> Date: Sun, 12 Feb 2023 14:21:59 -0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Content-Language: en-US To: Conor Dooley Cc: Jisheng Zhang , Palmer Dabbelt , Paul Walmsley , Albert Ou , Anup Patel , Atish Patra , Heiko Stuebner , Andrew Jones , Conor Dooley , linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org, kvm-riscv@lists.infradead.org References: <20230212154333.GA3760469@roeck-us.net> <48d2ac96-abdd-23bc-b167-08dc2c1a1dbe@roeck-us.net> <89c99d4a-8f0a-4e7e-9f93-2dc9f881ab9f@roeck-us.net> From: Guenter Roeck Subject: Re: [PATCH v5 00/13] riscv: improve boot time isa extensions handling In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org T24gMi8xMi8yMyAxMjozOSwgQ29ub3IgRG9vbGV5IHdyb3RlOg0KPiBPbiBTdW4sIEZlYiAx MiwgMjAyMyBhdCAxMjoyNzoxMFBNIC0wODAwLCBHdWVudGVyIFJvZWNrIHdyb3RlOg0KPj4g T24gMi8xMi8yMyAxMDo0NSwgQ29ub3IgRG9vbGV5IHdyb3RlOg0KPj4gLi4uDQo+Pj4NCj4+ Pj4gSG93ZXZlciwgSSBzdGlsbCBzZWUgdGhhdCB0aGUgcGF0Y2ggc2VyaWVzDQo+Pj4+IHJl c3VsdHMgaW4gYm9vdCBoYW5ncyB3aXRoIHRoZSBzaWZpdmVfdSBxZW11IGVtdWxhdGlvbiwg d2hlcmUNCj4+Pj4gdGhlIGxvZyBlbmRzIHdpdGggIk9vcHMgLSBpbGxlZ2FsIGluc3RydWN0 aW9uIi4gSXMgdGhhdCBwcm9ibGVtDQo+Pj4+IGJlaW5nIGFkZHJlc3NlZCBhcyB3ZWxsID8N Cj4+Pg0KPj4+IEhtbSwgaWYgaXQgZGllZCBvbiB0aGUgbGFzdCBjb21taXQgaW4gdGhpcyBz ZXJpZXMsIHRoZW4gSSBhbSBub3Qgc3VyZS4NCj4+PiBJZiB5b3UgbWVhbnQgd2l0aCByaXNj di9mb3ItbmV4dCBvciBsaW51eC1uZXh0IHRoYXQncyBmaXhlZCBieSBhIHBhdGNoDQo+Pj4g ZnJvbSBTYW11ZWw6DQo+Pj4gaHR0cHM6Ly9wYXRjaHdvcmsua2VybmVsLm9yZy9wcm9qZWN0 L2xpbnV4LXJpc2N2L3BhdGNoLzIwMjMwMjEyMDIxNTM0LjU5MTIxLTMtc2FtdWVsQHNob2xs YW5kLm9yZy8NCj4+Pg0KPj4NCj4+IEl0IGZhaWxlZCBhZnRlciB0aGUgbWVyZ2UsIHNvIGl0 IGxvb2tzIGxpa2UgaXQgbWF5IGhhdmUgYmVlbiBtZXJnZSBkYW1hZ2UuDQo+Pg0KPj4gQW55 d2F5LCBJIGFwcGxpZWQNCj4+DQo+PiBSSVNDLVY6IERvbid0IGNoZWNrIHRleHRfbXV0ZXgg ZHVyaW5nIHN0b3BfbWFjaGluZQ0KPiANCj4gVGhhdCBiZWluZzoNCj4gaHR0cHM6Ly9sb3Jl Lmtlcm5lbC5vcmcvYWxsLzIwMjIwMzIyMDIyMzMxLjMyMTM2LTEtcGFsbWVyQHJpdm9zaW5j LmNvbS8NCj4gV2hpY2ggaGFuZGxlcyB0aGUgbG9ja2RlcCBhc3NlcnRpb24gZHVyaW5nIHN0 b3BfbWFjaGluZS4uLg0KPiANCj4+IHJpc2N2OiBGaXggZWFybHkgYWx0ZXJuYXRpdmUgcGF0 Y2hpbmcNCj4+IHJpc2N2OiBGaXggWmJiIGFsdGVybmF0aXZlIElEcw0KPj4NCj4+IGFuZCB0 aGUgc2lmaXZlX3UgZW11bGF0aW9uIG5vIGxvbmdlciBjcmFzaGVzLiBIb3dldmVyLCBJIHN0 aWxsIGdldA0KPj4NCj4+IFsgICAgMC4wMDAwMDBdIC0tLS0tLS0tLS0tLVsgY3V0IGhlcmUg XS0tLS0tLS0tLS0tLQ0KPj4gWyAgICAwLjAwMDAwMF0gV0FSTklORzogQ1BVOiAwIFBJRDog MCBhdCBhcmNoL3Jpc2N2L2tlcm5lbC9wYXRjaC5jOjcxIHBhdGNoX2luc25fd3JpdGUrMHgy MjIvMHgyZjYNCj4gDQo+IC4uLmJ1dCBkb2Vzbid0IHByZXZlbnQgdGhlIGVhcmx5ICJzcGFt IiBvZiBhc3NlcnRpb24gZmFpbHVyZXMgZnJvbSB0aGUNCj4gY29kZSBwYXRjaGluZyBmb3Ig YWx0ZXJuYXRpdmVzLiBJIHNlbnQgYSBwYXRjaCB0byB0YWtlIHRoZSBsb2NrIGR1cmluZw0K PiB0aGUgYWx0ZXJuYXRpdmUgcGF0Y2hpbmcgd2hpY2ggc2hvdWxkIGdldCByaWQgb2YgdGhl bSBmb3IgeW91LiBJdCBkaWQNCj4gZm9yIG1lIGF0IGxlYXN0IQ0KPiBodHRwczovL2xvcmUu a2VybmVsLm9yZy9hbGwvMjAyMzAyMTIxOTQ3MzUuNDkxNzg1LTEtY29ub3JAa2VybmVsLm9y Zw0KPiANCj4+IHJlcGVhdGVkIHNldmVyYWwgdGltZXMuDQo+Pg0KPj4gSSB0aGVuIGFsc28g dGVzdGVkDQo+Pg0KPj4gcmlzY3Y6IHBhdGNoOiBGaXh1cCBsb2NrZGVwIHdhcm5pbmcgaW4g c3RvcF9tYWNoaW5lDQo+IA0KPiBUaGlzIG9uZSBqdXN0IGRlbGV0ZXMgdGhlIGxvY2tkZXAg Y2hlY2ssIHNvIEkgd291bGQgZXhwZWN0IGl0IHRvIHJlbW92ZQ0KPiB0aGUgY29tcGxhaW50 cy4NCj4gDQo+PiByaXNjdjogRml4IGVhcmx5IGFsdGVybmF0aXZlIHBhdGNoaW5nDQo+PiBy aXNjdjogRml4IFpiYiBhbHRlcm5hdGl2ZSBJRHMNCj4+DQo+PiB3aGljaCB3b3JrcyBmaW5l IChubyB3YXJuaW5nIGJhY2t0cmFjZSkgZm9yIHNpZml2ZV91LCBidXQgZ2l2ZXMgbWUNCj4+ DQo+PiBXQVJOSU5HOiBDUFU6IDAgUElEOiAwIGF0IGtlcm5lbC90cmFjZS90cmFjZV9ldmVu dHMuYzo0MzMgdHJhY2VfZXZlbnRfcmF3X2luaXQrMHhkZS8weDY0Mg0KPiANCj4gSG1tLCBk byB5b3UgaGF2ZSB0aGUgZnVsbCBzcGxhdCBmb3IgdGhpcyBvbmUgaGFuZHk/DQo+IA0KDQpb ICAgIDAuMDAwMDAwXSAtLS0tLS0tLS0tLS1bIGN1dCBoZXJlIF0tLS0tLS0tLS0tLS0NClsg ICAgMC4wMDAwMDBdIFdBUk5JTkc6IENQVTogMCBQSUQ6IDAgYXQga2VybmVsL3RyYWNlL3Ry YWNlX2V2ZW50cy5jOjQzMyB0cmFjZV9ldmVudF9yYXdfaW5pdCsweGRlLzB4NjQyDQpbICAg IDAuMDAwMDAwXSBNb2R1bGVzIGxpbmtlZCBpbjoNClsgICAgMC4wMDAwMDBdIENQVTogMCBQ SUQ6IDAgQ29tbTogc3dhcHBlci8wIFRhaW50ZWQ6IEcgICAgICAgIFcgICAgICAgICAgNi4y LjAtcmM3LW5leHQtMjAyMzAyMTAgIzENClsgICAgMC4wMDAwMDBdIEhhcmR3YXJlIG5hbWU6 IHJpc2N2LXZpcnRpbyxxZW11IChEVCkNClsgICAgMC4wMDAwMDBdIGVwYyA6IHRyYWNlX2V2 ZW50X3Jhd19pbml0KzB4ZGUvMHg2NDINClsgICAgMC4wMDAwMDBdICByYSA6IHRyYWNlX2V2 ZW50X3Jhd19pbml0KzB4NDVhLzB4NjQyDQpbICAgIDAuMDAwMDAwXSBlcGMgOiBmZmZmZmZm ZjgwMTA1NzFhIHJhIDogZmZmZmZmZmY4MDEwNWE5NiBzcCA6IGZmZmZmZmZmODE4MDNlNjAN ClsgICAgMC4wMDAwMDBdICBncCA6IGZmZmZmZmZmODFhMWFiNzggdHAgOiBmZmZmZmZmZjgx ODE0ZjgwIHQwIDogMDAwMDAwMDAwMDAwMDAwMA0KWyAgICAwLjAwMDAwMF0gIHQxIDogNTI0 NTQzMmQzZTAwMDAwMCB0MiA6IDAwMDAwMDAwMDAwMDAwMDAgczAgOiBmZmZmZmZmZjgxODAz ZjIwDQpbICAgIDAuMDAwMDAwXSAgczEgOiAwMDAwMDAwMDAwMDAwNDVmIGEwIDogMDAwMDAw MDAwMDAwMDAwMCBhMSA6IGZmZmZmZmZmODEzMzFlZjANClsgICAgMC4wMDAwMDBdICBhMiA6 IDAwMDAwMDAwMDAwMDAyNWMgYTMgOiAwMDAwMDAwMDAwMDAwMDAxIGE0IDogZmZmZmZmZmY4 MDEwNTZmYQ0KWyAgICAwLjAwMDAwMF0gIGE1IDogMDAwMDAwMDAwMDAwMDAyYyBhNiA6IGZm ZmZmZmZmODE5MmU0ZDggYTcgOiBmZmZmZmZmZjgxMTU3YTkwDQpbICAgIDAuMDAwMDAwXSAg czIgOiAwMDAwMDAwMDAwMDAwMDAwIHMzIDogZmZmZmZmZmY4MTkyMjg3MCBzNCA6IGZmZmZm ZmZmODE5MmU0ZDgNClsgICAgMC4wMDAwMDBdICBzNSA6IGZmZmZmZmZmODEwMTFjMzAgczYg OiAwMDAwMDAwMDAwMDAwMDBhIHM3IDogMDAwMDAwMDAwMDAwMDAyMQ0KWyAgICAwLjAwMDAw MF0gIHM4IDogMDAwMDAwMDAwMDAwMDA1YyBzOSA6IGZmZmZmZmZmODEzMzFlZTggczEwOiAw MDAwMDAwMDAwMDAwMDAxDQpbICAgIDAuMDAwMDAwXSAgczExOiAwMDAwMDAwMDAwMDAwMDAw IHQzIDogMDAwMDAwMDAwMDAwMDAwNyB0NCA6IDAwMDAwMDAwMDAwMDAwNzANClsgICAgMC4w MDAwMDBdICB0NSA6IDAwMDAwMDAwMDAwMDAwMjUgdDYgOiAwMDAwMDAwMDAwMDAwMDA5DQpb ICAgIDAuMDAwMDAwXSBzdGF0dXM6IDAwMDAwMDAyMDAwMDAxMDAgYmFkYWRkcjogMDAwMDAw MDAwMDAwMDAwMCBjYXVzZTogMDAwMDAwMDAwMDAwMDAwMw0KWyAgICAwLjAwMDAwMF0gWzxm ZmZmZmZmZjgwMTA1NzFhPl0gdHJhY2VfZXZlbnRfcmF3X2luaXQrMHhkZS8weDY0Mg0KWyAg ICAwLjAwMDAwMF0gWzxmZmZmZmZmZjgwMTA0ZDMyPl0gZXZlbnRfaW5pdCsweDI4LzB4ODQN ClsgICAgMC4wMDAwMDBdIFs8ZmZmZmZmZmY4MGMwZjdjYT5dIHRyYWNlX2V2ZW50X2luaXQr MHg5ZS8weDJhZQ0KWyAgICAwLjAwMDAwMF0gWzxmZmZmZmZmZjgwYzBmM2EwPl0gdHJhY2Vf aW5pdCsweDEwLzB4MTgNClsgICAgMC4wMDAwMDBdIFs8ZmZmZmZmZmY4MGMwMGJjNj5dIHN0 YXJ0X2tlcm5lbCsweDUwZS8weDhmOA0KWyAgICAwLjAwMDAwMF0gaXJxIGV2ZW50IHN0YW1w OiAwDQpbICAgIDAuMDAwMDAwXSBoYXJkaXJxcyBsYXN0ICBlbmFibGVkIGF0ICgwKTogWzww MDAwMDAwMDAwMDAwMDAwPl0gMHgwDQpbICAgIDAuMDAwMDAwXSBoYXJkaXJxcyBsYXN0IGRp c2FibGVkIGF0ICgwKTogWzwwMDAwMDAwMDAwMDAwMDAwPl0gMHgwDQpbICAgIDAuMDAwMDAw XSBzb2Z0aXJxcyBsYXN0ICBlbmFibGVkIGF0ICgwKTogWzwwMDAwMDAwMDAwMDAwMDAwPl0g MHgwDQpbICAgIDAuMDAwMDAwXSBzb2Z0aXJxcyBsYXN0IGRpc2FibGVkIGF0ICgwKTogWzww MDAwMDAwMDAwMDAwMDAwPl0gMHgwDQpbICAgIDAuMDAwMDAwXSAtLS1bIGVuZCB0cmFjZSAw MDAwMDAwMDAwMDAwMDAwIF0tLS0NClsgICAgMC4wMDAwMDBdIGV2ZW50IGJ0cmZzX2NsZWFy X2V4dGVudF9iaXQgaGFzIHVuc2FmZSBkZXJlZmVyZW5jZSBvZiBhcmd1bWVudCAxDQpbICAg IDAuMDAwMDAwXSBwcmludF9mbXQ6ICIlcFU6IGlvX3RyZWU9JXMgaW5vPSVsbHUgcm9vdD0l bGx1IHN0YXJ0PSVsbHUgbGVuPSVsbHUgY2xlYXJfYml0cz0lcyIsIFJFQy0+ZnNpZCwgX19w cmludF9zeW1ib2xpYyhSRUMtPm93bmVyLCB7SU9fVFJFRV9GU19QSU5ORURfRVhURU5UUywg IlBJTk5FRF9FWFRFTlRTIn0sIHtJT19UUkVFX0ZTX0VYQ0xVREVEX0VYVEVOVFMsICJFWENM VURFRF9FWFRFTlRTIn0sIHtJT19UUkVFX0JUUkVFX0lOT0RFX0lPLCAiQlRSRUVfSU5PREVf SU8ifSwge0lPX1RSRUVfSU5PREVfSU8sICJJTk9ERV9JTyJ9LCB7SU9fVFJFRV9SRUxPQ19C TE9DS1MsICJSRUxPQ19CTE9DS1MifSwge0lPX1RSRUVfVFJBTlNfRElSVFlfUEFHRVMsICJU UkFOU19ESVJUWV9QQUdFUyJ9LCB7SU9fVFJFRV9ST09UX0RJUlRZX0xPR19QQUdFUywgIlJP T1RfRElSVFlfTE9HX1BBR0VTIn0sIHtJT19UUkVFX0lOT0RFX0ZJTEVfRVhURU5ULCAiSU5P REVfRklMRV9FWFRFTlQifSwge0lPX1RSRUVfTE9HX0NTVU1fUkFOR0UsICJMT0dfQ1NVTV9S QU5HRSJ9LCB7SU9fVFJFRV9TRUxGVEVTVCwgIlNFTEZURVNUIn0pLCBSRUMtPmlubywgUkVD LT5yb290aWQsIFJFQy0+c3RhcnQsIFJFQy0+bGVuLCBfX3ByaW50X2ZsYWdzKFJFQy0+Y2xl YXJfYml0cywgInwiLCB7IEVYVEVOVF9ESVJUWSwgIkRJUlRZIn0sIHsgRVhURU5UX1VQVE9E QVRFLCAiVVBUT0RBVEUifSwgeyBFWFRFTlRfTE9DS0VELCAiTE9DS0VEIn0sIHsgRVhURU5U X05FVywgIk5FVyJ9LCB7IEVYVEVOVF9ERUxBTExPQywgIkRFTEFMTE9DIn0sIHsgRVhURU5U X0RFRlJBRywgIkRFRlJBRyJ9LCB7IEVYVEVOVF9CT1VOREFSWSwgIkJPVU5EQVJZIn0sIHsg RVhURU5UX05PREFUQVNVTSwgIk5PREFUQVNVTSJ9LCB7IEVYVEVOVF9DTEVBUl9NRVRBX1JF U1YsICJDTEVBUl9NRVRBX1JFU1YifSwgeyBFWFRFTlRfTkVFRF9XQUlULCAiTkVFRF9XQUlU In0sIHsgRVhURU5UX05PUkVTRVJWRSwgDQoiTk9SRVNFUlZFIn0sIHsgRVhURU5UX1FHUk9V UF9SRVNFUlYNClsgICAgMC4wMDAwMDBdIGV2ZW50IGJ0cmZzX29yZGVyZWRfc2NoZWQgaGFz IHVuc2FmZSBkZXJlZmVyZW5jZSBvZiBhcmd1bWVudCAxDQpbICAgIDAuMDAwMDAwXSBwcmlu dF9mbXQ6ICIlcFU6IHdvcms9JXAgKG5vcm1hbF93b3JrPSVwKSB3cT0lcCBmdW5jPSVwcyBv cmRlcmVkX2Z1bmM9JXAgb3JkZXJlZF9mcmVlPSVwIiwgUkVDLT5mc2lkLCBSRUMtPndvcmss IFJFQy0+bm9ybWFsX3dvcmssIFJFQy0+d3EsIFJFQy0+ZnVuYywgUkVDLT5vcmRlcmVkX2Z1 bmMsIFJFQy0+b3JkZXJlZF9mcmVlDQpbICAgIDAuMDAwMDAwXSBldmVudCBidHJmc193b3Jr X3NjaGVkIGhhcyB1bnNhZmUgZGVyZWZlcmVuY2Ugb2YgYXJndW1lbnQgMQ0KWyAgICAwLjAw MDAwMF0gcHJpbnRfZm10OiAiJXBVOiB3b3JrPSVwIChub3JtYWxfd29yaz0lcCkgd3E9JXAg ZnVuYz0lcHMgb3JkZXJlZF9mdW5jPSVwIG9yZGVyZWRfZnJlZT0lcCIsIFJFQy0+ZnNpZCwg UkVDLT53b3JrLCBSRUMtPm5vcm1hbF93b3JrLCBSRUMtPndxLCBSRUMtPmZ1bmMsIFJFQy0+ b3JkZXJlZF9mdW5jLCBSRUMtPm9yZGVyZWRfZnJlZQ0KWyAgICAwLjAwMDAwMF0gZXZlbnQg YnRyZnNfd29ya19xdWV1ZWQgaGFzIHVuc2FmZSBkZXJlZmVyZW5jZSBvZiBhcmd1bWVudCAx DQpbICAgIDAuMDAwMDAwXSBwcmludF9mbXQ6ICIlcFU6IHdvcms9JXAgKG5vcm1hbF93b3Jr PSVwKSB3cT0lcCBmdW5jPSVwcyBvcmRlcmVkX2Z1bmM9JXAgb3JkZXJlZF9mcmVlPSVwIiwg UkVDLT5mc2lkLCBSRUMtPndvcmssIFJFQy0+bm9ybWFsX3dvcmssIFJFQy0+d3EsIFJFQy0+ ZnVuYywgUkVDLT5vcmRlcmVkX2Z1bmMsIFJFQy0+b3JkZXJlZF9mcmVlDQpbICAgIDAuMDAw MDAwXSBldmVudCBmaW5kX2ZyZWVfZXh0ZW50X3NlYXJjaF9sb29wIGhhcyB1bnNhZmUgZGVy ZWZlcmVuY2Ugb2YgYXJndW1lbnQgMQ0KDQphbmQgc28gb24uDQoNCkl0IGJpc2VjdHMgdG8g IlJJU0MtVjogYWRkIHpiYiBzdXBwb3J0IHRvIHN0cmluZyBmdW5jdGlvbnMiLCB3aGljaCBh bHNvIHNlZW1zDQp0byBjYXVzZSB2YXJpb3VzIGJvb3QgZmFpbHVyZXMuIFVuZm9ydHVuYXRl bHkgdGhhdCBwYXRjaCBpcyBkaWZmaWN1bHQgdG8gcmV2ZXJ0LA0KYnV0IG1hcmtpbmcgVE9P TENIQUlOX0hBU19aQkIgYXMgYnJva2VuICJmaXhlcyIgaXQuIEkgZG9uJ3Qga25vdyBpZiB0 aGVyZSBpcw0KYSBwcm9ibGVtIHdpdGggdGhlIHBhdGNoIG9yIHdpdGggcWVtdS4gSSdsbCBk aXNhYmxlIFJJU0NWX0lTQV9aQkIgaW4gbXkgdGVzdHMNCmZvciB0aGUgdGltZSBiZWluZyB0 byB3b3JrIGFyb3VuZCBpdC4NCg0KR3VlbnRlcg0KDQoNCj4+IGFuZCBhIHdob2xlIGxvdCBv Zg0KPj4NCj4+IGV2ZW50IGJ0cmZzX2NsZWFyX2V4dGVudF9iaXQgaGFzIHVuc2FmZSBkZXJl ZmVyZW5jZSBvZiBhcmd1bWVudCAxDQo+Pg0KPj4gYW5kIHNpbWlsYXIgbWVzc2FnZXMgd2hl biBydW5uaW5nIHRoZSAidmlydCIgZW11bGF0aW9uLiBUaGF0IHdhcyB0aGVyZSBiZWZvcmUs DQo+PiBidXQgZHJvd25lZCBpbiB0aGUgbm9pc2UuIE9rLCBndWVzcyBJJ2xsIG5lZWQgYW5v dGhlciByb3VuZCBvZiBiaXNlY3QuDQo+IA0KPiBUaGFua3MgZm9yIGFsbCBvZiB5b3VyIHRl c3RpbmcgOikNCj4gDQoNCg==