From mboxrd@z Thu Jan 1 00:00:00 1970 From: Fanhenglong Subject: (xen 4.6 unstable) triple fault when execute fxsave during the procedure of guest iso install Date: Wed, 24 Jun 2015 09:14:35 +0000 Message-ID: <7EE47F9F3BEC294493BA3E433F16E08A3B302953@SZXEMA504-MBX.china.huawei.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============9148036858031963780==" Return-path: Content-Language: zh-CN List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: "xen-devel@lists.xen.org" Cc: "Liuqiming (John)" , Yanqiangjun , "Huangpeng (Peter)" , "Hanweidong (Randy)" List-Id: xen-devel@lists.xenproject.org --===============9148036858031963780== Content-Language: zh-CN Content-Type: multipart/alternative; boundary="_000_7EE47F9F3BEC294493BA3E433F16E08A3B302953SZXEMA504MBXchi_" --_000_7EE47F9F3BEC294493BA3E433F16E08A3B302953SZXEMA504MBXchi_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi everyone, I want to debug the procedure of windows os install with windbg, windbg executes instruction(fxsave) after the blank vm is started and befor= e guest iso start to install, fxsave trigger the following code path: vmx_vmexit_handler(EXIT_REASON_EPT_VIOLATION) ->ept_handle_violation ->hvm_hap_nested_page_fault ->handle_mmio_with_translation ->handle_mmio ->hvm_emulate_one ->x86_emulate X86_emulate return X86EMUL_UNHANDLEABLE The xl dmesg log; (d5) Writing SMBIOS tables ... (d5) Loading OVMF ... (XEN) d5v0 Over-allocation for domain 5: 2097409 > 2097408 (XEN) memory.c:155:d5v0 Could not allocate order=3D0 extent: id=3D5 memflag= s=3D0 (0 of 1) (d5) Loading ACPI ... (d5) vm86 TSS at fc012d00 (d5) BIOS map: (d5) ffe00000-ffffffff: Main BIOS (d5) E820 table: (d5) [00]: 00000000:00000000 - 00000000:000a0000: RAM (d5) HOLE: 00000000:000a0000 - 00000000:000f0000 (d5) [01]: 00000000:000f0000 - 00000000:00100000: RESERVED (d5) [02]: 00000000:00100000 - 00000000:f0000000: RAM (d5) HOLE: 00000000:f0000000 - 00000000:fc000000 (d5) [03]: 00000000:fc000000 - 00000001:00000000: RESERVED (d5) [04]: 00000001:00000000 - 00000002:0f6ed000: RAM (d5) Invoking OVMF ... (XEN) stdvga.c:147:d5v0 entering stdvga and caching modes (XEN) stdvga.c:151:d5v0 leaving stdvga (XEN) irq.c:276: Dom5 PCI link 0 changed 5 -> 11 (XEN) irq.c:276: Dom5 PCI link 1 changed 10 -> 11 (XEN) irq.c:276: Dom5 PCI link 2 changed 11 -> 10 (XEN) irq.c:276: Dom5 PCI link 3 changed 5 -> 10 (XEN) MMIO emulation failed: d5v0 64bit @ 0028:efe54dab -> 0f ae 07 fc ff 7= 5 10 48 8b 4d 08 48 89 e2 48 83 (XEN) MMIO emulation failed: d5v0 64bit @ 0028:efe54dab -> 0f ae 07 fc ff 7= 5 10 48 8b 4d 08 48 89 e2 48 83 (XEN) MMIO emulation failed: d5v0 64bit @ 0028:efe54dab -> 0f ae 07 fc ff 7= 5 10 48 8b 4d 08 48 89 e2 48 83 (XEN) d5v0 Triple fault - invoking HVM shutdown action 1 * Now I can't use windbg tool, Can anyone give me some advice to solve the problem? Thanks --_000_7EE47F9F3BEC294493BA3E433F16E08A3B302953SZXEMA504MBXchi_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

Hi everyone,<= /p>

 

 

I want to debug the procedure o= f windows os install with windbg,

windbg executes instruction(fxs= ave) after the blank vm is started and before guest iso start to install,

 

 

fxsave trigger the following co= de path:

vmx_vmexit_handler(EXIT_REASON_= EPT_VIOLATION)

->ept_handle_violation<= /o:p>

->hvm_hap_nested_page_fault<= o:p>

->handle_mmio_with_translati= on

->handle_mmio

->hvm_emulate_one=

->x86_emulate

 

X86_emulate return X86EMUL_U= NHANDLEABLE

 

The xl dmesg log;

(d5) Writing SMBIOS tables ...<= o:p>

(d5) Loading OVMF ...

(XEN) d5v0 Over-allocation for = domain 5: 2097409 > 2097408

(XEN) memory.c:155:d5v0 Could n= ot allocate order=3D0 extent: id=3D5 memflags=3D0 (0 of 1)

(d5) Loading ACPI ...

(d5) vm86 TSS at fc012d00<= /o:p>

(d5) BIOS map:

(d5)  ffe00000-ffffffff: M= ain BIOS

(d5) E820 table:

(d5)  [00]: 00000000:00000= 000 - 00000000:000a0000: RAM

(d5)  HOLE: 00000000:000a0= 000 - 00000000:000f0000

(d5)  [01]: 00000000:000f0= 000 - 00000000:00100000: RESERVED

(d5)  [02]: 00000000:00100= 000 - 00000000:f0000000: RAM

(d5)  HOLE: 00000000:f0000= 000 - 00000000:fc000000

(d5)  [03]: 00000000:fc000= 000 - 00000001:00000000: RESERVED

(d5)  [04]: 00000001:00000= 000 - 00000002:0f6ed000: RAM

(d5) Invoking OVMF ...

(XEN) stdvga.c:147:d5v0 enterin= g stdvga and caching modes

(XEN) stdvga.c:151:d5v0 leaving= stdvga

(XEN) irq.c:276: Dom5 PCI link = 0 changed 5 -> 11

(XEN) irq.c:276: Dom5 PCI link = 1 changed 10 -> 11

(XEN) irq.c:276: Dom5 PCI link = 2 changed 11 -> 10

(XEN) irq.c:276: Dom5 PCI link = 3 changed 5 -> 10

(XEN) MMIO emulation failed: d5= v0 64bit @ 0028:efe54dab -> 0f ae 07 fc ff 75 10 48 8b 4d 08 48 89 e2 48 8= 3

(XEN) MMIO emulation failed: d5= v0 64bit @ 0028:efe54dab -> 0f ae 07 fc ff 75 10 48 8b 4d 08 48 89 e2 48= 83

(XEN) MMIO emulation failed: d5= v0 64bit @ 0028:efe54dab -> 0f ae 07 fc ff 75 10 48 8b 4d 08 48 89 e2 48= 83

(XEN) d5v0 = Triple fault - invoking HVM shutdown action 1

 

 

·    &nbs= p;    =  

Now I can’t use windbg to= ol,

Can anyone give me some advice = to solve the problem?

 

 

 

 

Thanks

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

--_000_7EE47F9F3BEC294493BA3E433F16E08A3B302953SZXEMA504MBXchi_-- --===============9148036858031963780== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel --===============9148036858031963780==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: Razvan Cojocaru Subject: Re: (xen 4.6 unstable) triple fault when execute fxsave during the procedure of guest iso install Date: Wed, 24 Jun 2015 12:25:39 +0300 Message-ID: <558A7793.7060903@bitdefender.com> References: <7EE47F9F3BEC294493BA3E433F16E08A3B302953@SZXEMA504-MBX.china.huawei.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <7EE47F9F3BEC294493BA3E433F16E08A3B302953@SZXEMA504-MBX.china.huawei.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Fanhenglong , "xen-devel@lists.xen.org" Cc: "Liuqiming (John)" , Yanqiangjun , "Huangpeng (Peter)" , "Hanweidong (Randy)" List-Id: xen-devel@lists.xenproject.org On 06/24/2015 12:14 PM, Fanhenglong wrote: > I want to debug the procedure of windows os install with windbg, > > windbg executes instruction(fxsave) after the blank vm is started and > before guest iso start to install, > > fxsave trigger the following code path: > vmx_vmexit_handler(EXIT_REASON_EPT_VIOLATION) > ->ept_handle_violation > ->hvm_hap_nested_page_fault > ->handle_mmio_with_translation > ->handle_mmio > ->hvm_emulate_one > ->x86_emulate > > *X86_emulate return X86EMUL_UNHANDLEABLE* How are you using Xen in this case? Are you by any chance using the vm_event system in a way that sends back an "emulate" vm_event response from userspace? You might want to look at x86_emulate() in xen/arch/x86/x86_emulate/x86_emulate.c and see if (and how) fxsave is being handled. HTH, Razvan From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: (xen 4.6 unstable) triple fault when execute fxsave during the procedure of guest iso install Date: Wed, 24 Jun 2015 10:31:57 +0100 Message-ID: <558A790D.30103@citrix.com> References: <7EE47F9F3BEC294493BA3E433F16E08A3B302953@SZXEMA504-MBX.china.huawei.com> <558A7793.7060903@bitdefender.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <558A7793.7060903@bitdefender.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Razvan Cojocaru , Fanhenglong , "xen-devel@lists.xen.org" Cc: "Liuqiming (John)" , Yanqiangjun , "Huangpeng (Peter)" , "Hanweidong (Randy)" List-Id: xen-devel@lists.xenproject.org On 24/06/15 10:25, Razvan Cojocaru wrote: > On 06/24/2015 12:14 PM, Fanhenglong wrote: >> I want to debug the procedure of windows os install with windbg, >> >> windbg executes instruction(fxsave) after the blank vm is started and >> before guest iso start to install, >> >> fxsave trigger the following code path: >> vmx_vmexit_handler(EXIT_REASON_EPT_VIOLATION) >> ->ept_handle_violation >> ->hvm_hap_nested_page_fault >> ->handle_mmio_with_translation >> ->handle_mmio >> ->hvm_emulate_one >> ->x86_emulate >> >> *X86_emulate return X86EMUL_UNHANDLEABLE* > How are you using Xen in this case? Are you by any chance using the > vm_event system in a way that sends back an "emulate" vm_event response > from userspace? > > You might want to look at x86_emulate() in > xen/arch/x86/x86_emulate/x86_emulate.c and see if (and how) fxsave is > being handled. The fxsave instruction has no emulation implementation. "0f ae 07" is "fxsave (%rdi)" which means that either introspection is active, or %rdi is a pointer into an MMIO region. ~Andrew From mboxrd@z Thu Jan 1 00:00:00 1970 From: Razvan Cojocaru Subject: Re: (xen 4.6 unstable) triple fault when execute fxsave during the procedure of guest iso install Date: Wed, 24 Jun 2015 13:28:41 +0300 Message-ID: <558A8659.9060705@bitdefender.com> References: <7EE47F9F3BEC294493BA3E433F16E08A3B302953@SZXEMA504-MBX.china.huawei.com> <558A7793.7060903@bitdefender.com> <558A790D.30103@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <558A790D.30103@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Andrew Cooper , Fanhenglong , "xen-devel@lists.xen.org" Cc: "Liuqiming (John)" , Yanqiangjun , "Huangpeng (Peter)" , "Hanweidong (Randy)" List-Id: xen-devel@lists.xenproject.org On 06/24/2015 12:31 PM, Andrew Cooper wrote: > On 24/06/15 10:25, Razvan Cojocaru wrote: >> On 06/24/2015 12:14 PM, Fanhenglong wrote: >>> I want to debug the procedure of windows os install with windbg, >>> >>> windbg executes instruction(fxsave) after the blank vm is started and >>> before guest iso start to install, >>> >>> fxsave trigger the following code path: >>> vmx_vmexit_handler(EXIT_REASON_EPT_VIOLATION) >>> ->ept_handle_violation >>> ->hvm_hap_nested_page_fault >>> ->handle_mmio_with_translation >>> ->handle_mmio >>> ->hvm_emulate_one >>> ->x86_emulate >>> >>> *X86_emulate return X86EMUL_UNHANDLEABLE* >> How are you using Xen in this case? Are you by any chance using the >> vm_event system in a way that sends back an "emulate" vm_event response >> from userspace? >> >> You might want to look at x86_emulate() in >> xen/arch/x86/x86_emulate/x86_emulate.c and see if (and how) fxsave is >> being handled. > > The fxsave instruction has no emulation implementation. > > "0f ae 07" is "fxsave (%rdi)" which means that either introspection is > active, or %rdi is a pointer into an MMIO region. I see, these are the cases we wanted to treat with the old patch (I thick it was called "xen: Handle resumed instruction based on previous mem_event reply" - the early versions, with RFC) that sometimes bypassed the emulator in the introspection case. Without that, there's always going to be a potential current or future instruction not emulated, and then something like this happens. Cheers, Razvan From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: Re: (xen 4.6 unstable) triple fault when execute fxsave during the procedure of guest iso install Date: Wed, 24 Jun 2015 11:35:21 +0100 Message-ID: <20150624103521.GB9685@zion.uk.xensource.com> References: <7EE47F9F3BEC294493BA3E433F16E08A3B302953@SZXEMA504-MBX.china.huawei.com> <558A7793.7060903@bitdefender.com> <558A790D.30103@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <558A790D.30103@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Andrew Cooper Cc: wei.liu2@citrix.com, Razvan Cojocaru , "Hanweidong (Randy)" , Yanqiangjun , "Huangpeng (Peter)" , "xen-devel@lists.xen.org" , Fanhenglong , "Liuqiming (John)" List-Id: xen-devel@lists.xenproject.org On Wed, Jun 24, 2015 at 10:31:57AM +0100, Andrew Cooper wrote: > On 24/06/15 10:25, Razvan Cojocaru wrote: > > On 06/24/2015 12:14 PM, Fanhenglong wrote: > >> I want to debug the procedure of windows os install with windbg, > >> > >> windbg executes instruction(fxsave) after the blank vm is started and > >> before guest iso start to install, > >> > >> fxsave trigger the following code path: > >> vmx_vmexit_handler(EXIT_REASON_EPT_VIOLATION) > >> ->ept_handle_violation > >> ->hvm_hap_nested_page_fault > >> ->handle_mmio_with_translation > >> ->handle_mmio > >> ->hvm_emulate_one > >> ->x86_emulate > >> > >> *X86_emulate return X86EMUL_UNHANDLEABLE* > > How are you using Xen in this case? Are you by any chance using the > > vm_event system in a way that sends back an "emulate" vm_event response > > from userspace? > > > > You might want to look at x86_emulate() in > > xen/arch/x86/x86_emulate/x86_emulate.c and see if (and how) fxsave is > > being handled. > > The fxsave instruction has no emulation implementation. > > "0f ae 07" is "fxsave (%rdi)" which means that either introspection is > active, or %rdi is a pointer into an MMIO region. > So I think this is not a regression? (I'm now trying to identify possible blockers for the release) Wei. > ~Andrew > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: (xen 4.6 unstable) triple fault when execute fxsave during the procedure of guest iso install Date: Wed, 24 Jun 2015 11:38:09 +0100 Message-ID: <558AA4B10200007800088CB5@mail.emea.novell.com> References: <7EE47F9F3BEC294493BA3E433F16E08A3B302953@SZXEMA504-MBX.china.huawei.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <7EE47F9F3BEC294493BA3E433F16E08A3B302953@SZXEMA504-MBX.china.huawei.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Fanhenglong Cc: "Liuqiming (John)" , Yanqiangjun , "xen-devel@lists.xen.org" , "Huangpeng (Peter)" , "Hanweidong (Randy)" List-Id: xen-devel@lists.xenproject.org >>> On 24.06.15 at 11:14, wrote: > I want to debug the procedure of windows os install with windbg, > windbg executes instruction(fxsave) after the blank vm is started and before > guest iso start to install, > > > fxsave trigger the following code path: > vmx_vmexit_handler(EXIT_REASON_EPT_VIOLATION) > ->ept_handle_violation > ->hvm_hap_nested_page_fault > ->handle_mmio_with_translation > ->handle_mmio > ->hvm_emulate_one > ->x86_emulate > > X86_emulate return X86EMUL_UNHANDLEABLE > > The xl dmesg log; > (d5) Writing SMBIOS tables ... > (d5) Loading OVMF ... > (XEN) d5v0 Over-allocation for domain 5: 2097409 > 2097408 > (XEN) memory.c:155:d5v0 Could not allocate order=0 extent: id=5 memflags=0 > (0 of 1) > (d5) Loading ACPI ... > (d5) vm86 TSS at fc012d00 > (d5) BIOS map: > (d5) ffe00000-ffffffff: Main BIOS > (d5) E820 table: > (d5) [00]: 00000000:00000000 - 00000000:000a0000: RAM > (d5) HOLE: 00000000:000a0000 - 00000000:000f0000 > (d5) [01]: 00000000:000f0000 - 00000000:00100000: RESERVED > (d5) [02]: 00000000:00100000 - 00000000:f0000000: RAM > (d5) HOLE: 00000000:f0000000 - 00000000:fc000000 > (d5) [03]: 00000000:fc000000 - 00000001:00000000: RESERVED > (d5) [04]: 00000001:00000000 - 00000002:0f6ed000: RAM > (d5) Invoking OVMF ... > (XEN) stdvga.c:147:d5v0 entering stdvga and caching modes > (XEN) stdvga.c:151:d5v0 leaving stdvga > (XEN) irq.c:276: Dom5 PCI link 0 changed 5 -> 11 > (XEN) irq.c:276: Dom5 PCI link 1 changed 10 -> 11 > (XEN) irq.c:276: Dom5 PCI link 2 changed 11 -> 10 > (XEN) irq.c:276: Dom5 PCI link 3 changed 5 -> 10 > (XEN) MMIO emulation failed: d5v0 64bit @ 0028:efe54dab -> 0f ae 07 fc ff 75 10 48 8b 4d 08 48 89 e2 48 83 > (XEN) MMIO emulation failed: d5v0 64bit @ 0028:efe54dab -> 0f ae 07 fc ff 75 10 48 8b 4d 08 48 89 e2 48 83 > (XEN) MMIO emulation failed: d5v0 64bit @ 0028:efe54dab -> 0f ae 07 fc ff 75 10 48 8b 4d 08 48 89 e2 48 83 > (XEN) d5v0 Triple fault - invoking HVM shutdown action 1 Considering the address (below 4Gb) I'd view it equally possible that it's OVMF that is running into this (and Windows may not have got control at all by that time). But as others have said - unless you're using VM events, it first of all would need to be understood why fxsave would be issued on MMIO space, which as a very minimum requires register state to be made visible. Jan From mboxrd@z Thu Jan 1 00:00:00 1970 From: Fanhenglong Subject: =?gb2312?b?tPC4tDogICh4ZW4gNC42IHVuc3RhYmxlKSB0cmlw?= =?gb2312?b?bGUgZmF1bHQgd2hlbiBleGVjdXRlIGZ4c2F2ZSBkdXJpbmcgdGhlIHByb2Nl?= =?gb2312?b?ZHVyZSBvZiBndWVzdCBpc28gaW5zdGFsbA==?= Date: Thu, 25 Jun 2015 00:40:16 +0000 Message-ID: <7EE47F9F3BEC294493BA3E433F16E08A3B302E16@SZXEMA504-MBX.china.huawei.com> References: <7EE47F9F3BEC294493BA3E433F16E08A3B302953@SZXEMA504-MBX.china.huawei.com> <558A7793.7060903@bitdefender.com> Mime-Version: 1.0 Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <558A7793.7060903@bitdefender.com> Content-Language: zh-CN List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Razvan Cojocaru , "xen-devel@lists.xen.org" Cc: "Liuqiming (John)" , Yanqiangjun , "Huangpeng (Peter)" , "Hanweidong (Randy)" List-Id: xen-devel@lists.xenproject.org V2luZG93cyA4LjAgaXNvIGNhbid0IGluc3RhbGwgaW4gdWVmaSBtb2RlLA0KSSBoYXZlIHRvIHVz ZSB3aW5kYmcgdG8gZ2V0IG1vcmUgZGVidWcgaW5mb3JtYXRpb24sIA0KU28gdXNpbmcgeGVuIGlu IHRoaXMgY2FzZQ0KDQoNCreivP7IyzogUmF6dmFuIENvam9jYXJ1IFttYWlsdG86cmNvam9jYXJ1 QGJpdGRlZmVuZGVyLmNvbV0gDQq3osvNyrG85DogMjAxNcTqNtTCMjTI1SAxNzoyNg0KytW8/sjL OiBGYW5oZW5nbG9uZzsgeGVuLWRldmVsQGxpc3RzLnhlbi5vcmcNCrOty806IExpdXFpbWluZyAo Sm9obik7IFlhbnFpYW5nanVuOyBIdWFuZ3BlbmcgKFBldGVyKTsgSGFud2VpZG9uZyAoUmFuZHkp DQrW98ziOiBSZTogW1hlbi1kZXZlbF0gKHhlbiA0LjYgdW5zdGFibGUpIHRyaXBsZSBmYXVsdCB3 aGVuIGV4ZWN1dGUgZnhzYXZlIGR1cmluZyB0aGUgcHJvY2VkdXJlIG9mIGd1ZXN0IGlzbyBpbnN0 YWxsDQoNCk9uIDA2LzI0LzIwMTUgMTI6MTQgUE0sIEZhbmhlbmdsb25nIHdyb3RlOg0KPiBJIHdh bnQgdG8gZGVidWcgdGhlIHByb2NlZHVyZSBvZiB3aW5kb3dzIG9zIGluc3RhbGwgd2l0aCB3aW5k YmcsDQo+IA0KPiB3aW5kYmcgZXhlY3V0ZXMgaW5zdHJ1Y3Rpb24oZnhzYXZlKSBhZnRlciB0aGUg Ymxhbmsgdm0gaXMgc3RhcnRlZCBhbmQgDQo+IGJlZm9yZSBndWVzdCBpc28gc3RhcnQgdG8gaW5z dGFsbCwNCj4gDQo+IGZ4c2F2ZSB0cmlnZ2VyIHRoZSBmb2xsb3dpbmcgY29kZSBwYXRoOg0KPiB2 bXhfdm1leGl0X2hhbmRsZXIoRVhJVF9SRUFTT05fRVBUX1ZJT0xBVElPTikNCj4gLT5lcHRfaGFu ZGxlX3Zpb2xhdGlvbg0KPiAtPmh2bV9oYXBfbmVzdGVkX3BhZ2VfZmF1bHQNCj4gLT5oYW5kbGVf bW1pb193aXRoX3RyYW5zbGF0aW9uDQo+IC0+aGFuZGxlX21taW8NCj4gLT5odm1fZW11bGF0ZV9v bmUNCj4gLT54ODZfZW11bGF0ZQ0KPiANCj4gKlg4Nl9lbXVsYXRlIHJldHVybiBYODZFTVVMX1VO SEFORExFQUJMRSoNCg0KSG93IGFyZSB5b3UgdXNpbmcgWGVuIGluIHRoaXMgY2FzZT8gQXJlIHlv dSBieSBhbnkgY2hhbmNlIHVzaW5nIHRoZSB2bV9ldmVudCBzeXN0ZW0gaW4gYSB3YXkgdGhhdCBz ZW5kcyBiYWNrIGFuICJlbXVsYXRlIiB2bV9ldmVudCByZXNwb25zZSBmcm9tIHVzZXJzcGFjZT8N Cg0KWW91IG1pZ2h0IHdhbnQgdG8gbG9vayBhdCB4ODZfZW11bGF0ZSgpIGluIHhlbi9hcmNoL3g4 Ni94ODZfZW11bGF0ZS94ODZfZW11bGF0ZS5jIGFuZCBzZWUgaWYgKGFuZCBob3cpIGZ4c2F2ZSBp cyBiZWluZyBoYW5kbGVkLg0KDQoNCkhUSCwNClJhenZhbg0KX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2 ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK