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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 53FE7C4332F for ; Wed, 21 Dec 2022 12:49:02 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231830AbiLUMtA (ORCPT ); Wed, 21 Dec 2022 07:49:00 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45376 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229596AbiLUMsl (ORCPT ); Wed, 21 Dec 2022 07:48:41 -0500 Received: from relay9-d.mail.gandi.net (relay9-d.mail.gandi.net [IPv6:2001:4b98:dc4:8::229]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6701322BF5; Wed, 21 Dec 2022 04:48:39 -0800 (PST) Received: (Authenticated sender: alex@ghiti.fr) by mail.gandi.net (Postfix) with ESMTPSA id 12746FF80A; Wed, 21 Dec 2022 12:48:32 +0000 (UTC) Message-ID: <555f4c90-39fb-3cb9-0b26-1b8af6b4f486@ghiti.fr> Date: Wed, 21 Dec 2022 13:48:32 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Subject: Re: [syzbot] riscv/fixes boot error: WARNING in __apply_to_page_range (2) Content-Language: en-US To: syzbot , andrii@kernel.org, aou@eecs.berkeley.edu, ast@kernel.org, bjorn@kernel.org, bpf@vger.kernel.org, daniel@iogearbox.net, haoluo@google.com, john.fastabend@gmail.com, jolsa@kernel.org, kpsingh@kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, luke.r.nels@gmail.com, martin.lau@linux.dev, palmer@dabbelt.com, paul.walmsley@sifive.com, sdf@google.com, song@kernel.org, syzkaller-bugs@googlegroups.com, xi.wang@gmail.com, yhs@fb.com References: <000000000000ea7a5c05f051fd00@google.com> From: Alexandre Ghiti In-Reply-To: <000000000000ea7a5c05f051fd00@google.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org (resending as the first answer was sent in HTML, sorry) On 12/21/22 09:03, syzbot wrote: > Hello, > > syzbot found the following issue on: > > HEAD commit: eb67d239f3aa Merge tag 'riscv-for-linus-6.2-mw1' of git://.. > git tree: git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux.git fixes > console output: https://syzkaller.appspot.com/x/log.txt?x=16672680480000 > kernel config: https://syzkaller.appspot.com/x/.config?x=be108b5bcf4ef832 > dashboard link: https://syzkaller.appspot.com/bug?extid=5702f46b5b22bdb38b7e > compiler: riscv64-linux-gnu-gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2 > userspace arch: riscv64 > > IMPORTANT: if you fix the issue, please add the following tag to the commit: > Reported-by: syzbot+5702f46b5b22bdb38b7e@syzkaller.appspotmail.com > > ------------[ cut here ]------------ > WARNING: CPU: 0 PID: 2760 at mm/memory.c:2637 apply_to_pmd_range mm/memory.c:2637 [inline] This leads to the following: if (WARN_ON_ONCE(pmd_leaf(*pmd)))     return -EINVAL; > WARNING: CPU: 0 PID: 2760 at mm/memory.c:2637 apply_to_pud_range mm/memory.c:2680 [inline] > WARNING: CPU: 0 PID: 2760 at mm/memory.c:2637 apply_to_p4d_range mm/memory.c:2716 [inline] > WARNING: CPU: 0 PID: 2760 at mm/memory.c:2637 __apply_to_page_range+0x988/0x1212 mm/memory.c:2750 > Modules linked in: > CPU: 0 PID: 2760 Comm: dhcpcd Not tainted 6.1.0-syzkaller-13662-geb67d239f3aa #0 > Hardware name: riscv-virtio,qemu (DT) > epc : apply_to_pmd_range mm/memory.c:2637 [inline] > epc : apply_to_pud_range mm/memory.c:2680 [inline] > epc : apply_to_p4d_range mm/memory.c:2716 [inline] > epc : __apply_to_page_range+0x988/0x1212 mm/memory.c:2750 > ra : apply_to_pmd_range mm/memory.c:2637 [inline] > ra : apply_to_pud_range mm/memory.c:2680 [inline] > ra : apply_to_p4d_range mm/memory.c:2716 [inline] > ra : __apply_to_page_range+0x988/0x1212 mm/memory.c:2750 > epc : ffffffff8042aac8 ra : ffffffff8042aac8 sp : ff20000004d57290 > gp : ffffffff85cdd280 tp : ff6000000e206200 t0 : ff60000010988a00 > t1 : 00000000000f0000 t2 : ffffffff804616b4 s0 : ff20000004d57380 > s1 : 0000000000000006 a0 : 0000000000000007 a1 : 00000000000f0000 > a2 : ffffffff8042aac8 a3 : 0000000000000002 a4 : ff6000000e207200 > a5 : 0000000000000000 a6 : 0000000000000003 a7 : 0000000000000000 > s2 : fffffffeef001000 s3 : 00000000371000e7 s4 : ff6000007a660bc0 > s5 : 0000000000001000 s6 : fffffffeef001000 s7 : 0000000000000001 > s8 : ffffffff804d8484 s9 : 0000000000000000 s10: fffffffeef000000 > s11: 0000000000000000 t3 : fffffffff3f3f300 t4 : fffffffef0a07c70 > t5 : fffffffef0a07c71 t6 : ff6000000ebcccb8 > status: 0000000000000120 badaddr: 0000000000000000 cause: 0000000000000003 > [] apply_to_page_range+0x34/0x46 mm/memory.c:2769 > [] kasan_populate_vmalloc+0x52/0x5e mm/kasan/shadow.c:315 > [] alloc_vmap_area+0x4a6/0x1636 mm/vmalloc.c:1647 > [] __get_vm_area_node+0x272/0x3b0 mm/vmalloc.c:2515 > [] __vmalloc_node_range+0x280/0xdb8 mm/vmalloc.c:3187 > [] bpf_jit_alloc_exec+0x46/0x52 arch/riscv/net/bpf_jit_core.c:190 Here we can see that we are allocating the shadow memory for a BPF region which is *vmalloc-backed*: but the current upstream implementation does populate the BPF region at initialization, it does not shallow populate it. And we try to use huge pages when possible so that can trigger this warning here. This is something that I fixed in the following series: https://patchwork.kernel.org/project/linux-riscv/list/?series=705150 :) Glad to see syzbot running again, thanks Alex > [] bpf_jit_binary_alloc+0x96/0x13c kernel/bpf/core.c:1027 > [] bpf_int_jit_compile+0x87a/0xa8c arch/riscv/net/bpf_jit_core.c:112 > [] bpf_prog_select_runtime+0x1a2/0x22e kernel/bpf/core.c:2191 > [] bpf_migrate_filter+0x258/0x2be net/core/filter.c:1298 > [] bpf_prepare_filter+0x10e/0x1b4 net/core/filter.c:1346 > [] __get_filter+0x148/0x1a0 net/core/filter.c:1515 > [] sk_attach_filter+0x22/0x11a net/core/filter.c:1530 > [] sk_setsockopt+0x144e/0x270c net/core/sock.c:1297 > [] sock_setsockopt+0x48/0x58 net/core/sock.c:1549 > [] __sys_setsockopt+0x3f0/0x418 net/socket.c:2242 > [] __do_sys_setsockopt net/socket.c:2257 [inline] > [] sys_setsockopt+0x3a/0x4c net/socket.c:2254 > [] ret_from_syscall+0x0/0x2 > irq event stamp: 940 > hardirqs last enabled at (939): [] __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:151 [inline] > hardirqs last enabled at (939): [] _raw_spin_unlock_irqrestore+0x68/0x98 kernel/locking/spinlock.c:194 > hardirqs last disabled at (940): [] __trace_hardirqs_off+0x18/0x20 arch/riscv/kernel/trace_irq.c:25 > softirqs last enabled at (888): [] softirq_handle_end kernel/softirq.c:414 [inline] > softirqs last enabled at (888): [] __do_softirq+0x640/0x930 kernel/softirq.c:600 > softirqs last disabled at (883): [] do_softirq_own_stack include/asm-generic/softirq_stack.h:10 [inline] > softirqs last disabled at (883): [] invoke_softirq kernel/softirq.c:452 [inline] > softirqs last disabled at (883): [] __irq_exit_rcu+0x154/0x1ea kernel/softirq.c:650 > ---[ end trace 0000000000000000 ]--- > > > --- > This report is generated by a bot. It may contain errors. > See https://goo.gl/tpsmEJ for more information about syzbot. > syzbot engineers can be reached at syzkaller@googlegroups.com. > > syzbot will keep track of this issue. See: > https://goo.gl/tpsmEJ#status for how to communicate with syzbot. > > _______________________________________________ > linux-riscv mailing list > linux-riscv@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-riscv 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 7004AC4332F for ; Wed, 21 Dec 2022 12:52:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:To:Subject:MIME-Version: Date:Message-ID:Reply-To:Cc:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=wMoAe2fkYg2md0nNgC8AS9vdBynanMLqxHJCPtunjqk=; b=3bJC9B/FFIycpr0ziBisPreAZV OsfzDrVSRDME4zZRgt8mmqN0RB6Fxg68CQbI4lRNkURUT4V+pLh+MaXtnBoegeWkT2vQZIrc/VxyP xshWgmVbtesrBNC6wX/4XspN14KKbNbcg+tScB4Kj0L0wa5yHW+LdH0SBC/8rLvfmzPRtohfbnsac JnQB6/HiD0HPYzq2RKKG7mXO2nYydstBkyg2Vldfs9eOlvwqYY8SIZ1YO0MmRLNo05PGlE6oyhhVB YrWGGAoKEHctWlc0x7qDixae4gqX2C93SJVAJIpOB6nVT8vDTF6sm3Ta+RbdNnP80yyOYzWVgHVfY 3xrMCTLA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1p7yaM-00EpQe-LE; Wed, 21 Dec 2022 12:52:38 +0000 Received: from relay9-d.mail.gandi.net ([2001:4b98:dc4:8::229]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1p7yWZ-00EnpI-81 for linux-riscv@lists.infradead.org; Wed, 21 Dec 2022 12:48:45 +0000 Received: (Authenticated sender: alex@ghiti.fr) by mail.gandi.net (Postfix) with ESMTPSA id 12746FF80A; Wed, 21 Dec 2022 12:48:32 +0000 (UTC) Message-ID: <555f4c90-39fb-3cb9-0b26-1b8af6b4f486@ghiti.fr> Date: Wed, 21 Dec 2022 13:48:32 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Subject: Re: [syzbot] riscv/fixes boot error: WARNING in __apply_to_page_range (2) Content-Language: en-US To: syzbot , andrii@kernel.org, aou@eecs.berkeley.edu, ast@kernel.org, bjorn@kernel.org, bpf@vger.kernel.org, daniel@iogearbox.net, haoluo@google.com, john.fastabend@gmail.com, jolsa@kernel.org, kpsingh@kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, luke.r.nels@gmail.com, martin.lau@linux.dev, palmer@dabbelt.com, paul.walmsley@sifive.com, sdf@google.com, song@kernel.org, syzkaller-bugs@googlegroups.com, xi.wang@gmail.com, yhs@fb.com References: <000000000000ea7a5c05f051fd00@google.com> From: Alexandre Ghiti In-Reply-To: <000000000000ea7a5c05f051fd00@google.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20221221_044843_661149_D65D2CE1 X-CRM114-Status: GOOD ( 16.45 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org KHJlc2VuZGluZyBhcyB0aGUgZmlyc3QgYW5zd2VyIHdhcyBzZW50IGluIEhUTUwsIHNvcnJ5KQoK T24gMTIvMjEvMjIgMDk6MDMsIHN5emJvdCB3cm90ZToKPiBIZWxsbywKPgo+IHN5emJvdCBmb3Vu ZCB0aGUgZm9sbG93aW5nIGlzc3VlIG9uOgo+Cj4gSEVBRCBjb21taXQ6ICAgIGViNjdkMjM5ZjNh YSBNZXJnZSB0YWcgJ3Jpc2N2LWZvci1saW51cy02LjItbXcxJyBvZiBnaXQ6Ly8uLgo+IGdpdCB0 cmVlOiAgICAgICBnaXQ6Ly9naXQua2VybmVsLm9yZy9wdWIvc2NtL2xpbnV4L2tlcm5lbC9naXQv cmlzY3YvbGludXguZ2l0IGZpeGVzCj4gY29uc29sZSBvdXRwdXQ6IGh0dHBzOi8vc3l6a2FsbGVy LmFwcHNwb3QuY29tL3gvbG9nLnR4dD94PTE2NjcyNjgwNDgwMDAwCj4ga2VybmVsIGNvbmZpZzog IGh0dHBzOi8vc3l6a2FsbGVyLmFwcHNwb3QuY29tL3gvLmNvbmZpZz94PWJlMTA4YjViY2Y0ZWY4 MzIKPiBkYXNoYm9hcmQgbGluazogaHR0cHM6Ly9zeXprYWxsZXIuYXBwc3BvdC5jb20vYnVnP2V4 dGlkPTU3MDJmNDZiNWIyMmJkYjM4YjdlCj4gY29tcGlsZXI6ICAgICAgIHJpc2N2NjQtbGludXgt Z251LWdjYyAoRGViaWFuIDEwLjIuMS02KSAxMC4yLjEgMjAyMTAxMTAsIEdOVSBsZCAoR05VIEJp bnV0aWxzIGZvciBEZWJpYW4pIDIuMzUuMgo+IHVzZXJzcGFjZSBhcmNoOiByaXNjdjY0Cj4KPiBJ TVBPUlRBTlQ6IGlmIHlvdSBmaXggdGhlIGlzc3VlLCBwbGVhc2UgYWRkIHRoZSBmb2xsb3dpbmcg dGFnIHRvIHRoZSBjb21taXQ6Cj4gUmVwb3J0ZWQtYnk6IHN5emJvdCs1NzAyZjQ2YjViMjJiZGIz OGI3ZUBzeXprYWxsZXIuYXBwc3BvdG1haWwuY29tCj4KPiAtLS0tLS0tLS0tLS1bIGN1dCBoZXJl IF0tLS0tLS0tLS0tLS0KPiBXQVJOSU5HOiBDUFU6IDAgUElEOiAyNzYwIGF0IG1tL21lbW9yeS5j OjI2MzcgYXBwbHlfdG9fcG1kX3JhbmdlIG1tL21lbW9yeS5jOjI2MzcgW2lubGluZV0KCgpUaGlz IGxlYWRzIHRvIHRoZSBmb2xsb3dpbmc6CgppZiAoV0FSTl9PTl9PTkNFKHBtZF9sZWFmKCpwbWQp KSkKIMKgwqDCoCByZXR1cm4gLUVJTlZBTDsKCgo+IFdBUk5JTkc6IENQVTogMCBQSUQ6IDI3NjAg YXQgbW0vbWVtb3J5LmM6MjYzNyBhcHBseV90b19wdWRfcmFuZ2UgbW0vbWVtb3J5LmM6MjY4MCBb aW5saW5lXQo+IFdBUk5JTkc6IENQVTogMCBQSUQ6IDI3NjAgYXQgbW0vbWVtb3J5LmM6MjYzNyBh cHBseV90b19wNGRfcmFuZ2UgbW0vbWVtb3J5LmM6MjcxNiBbaW5saW5lXQo+IFdBUk5JTkc6IENQ VTogMCBQSUQ6IDI3NjAgYXQgbW0vbWVtb3J5LmM6MjYzNyBfX2FwcGx5X3RvX3BhZ2VfcmFuZ2Ur MHg5ODgvMHgxMjEyIG1tL21lbW9yeS5jOjI3NTAKPiBNb2R1bGVzIGxpbmtlZCBpbjoKPiBDUFU6 IDAgUElEOiAyNzYwIENvbW06IGRoY3BjZCBOb3QgdGFpbnRlZCA2LjEuMC1zeXprYWxsZXItMTM2 NjItZ2ViNjdkMjM5ZjNhYSAjMAo+IEhhcmR3YXJlIG5hbWU6IHJpc2N2LXZpcnRpbyxxZW11IChE VCkKPiBlcGMgOiBhcHBseV90b19wbWRfcmFuZ2UgbW0vbWVtb3J5LmM6MjYzNyBbaW5saW5lXQo+ IGVwYyA6IGFwcGx5X3RvX3B1ZF9yYW5nZSBtbS9tZW1vcnkuYzoyNjgwIFtpbmxpbmVdCj4gZXBj IDogYXBwbHlfdG9fcDRkX3JhbmdlIG1tL21lbW9yeS5jOjI3MTYgW2lubGluZV0KPiBlcGMgOiBf X2FwcGx5X3RvX3BhZ2VfcmFuZ2UrMHg5ODgvMHgxMjEyIG1tL21lbW9yeS5jOjI3NTAKPiAgIHJh IDogYXBwbHlfdG9fcG1kX3JhbmdlIG1tL21lbW9yeS5jOjI2MzcgW2lubGluZV0KPiAgIHJhIDog YXBwbHlfdG9fcHVkX3JhbmdlIG1tL21lbW9yeS5jOjI2ODAgW2lubGluZV0KPiAgIHJhIDogYXBw bHlfdG9fcDRkX3JhbmdlIG1tL21lbW9yeS5jOjI3MTYgW2lubGluZV0KPiAgIHJhIDogX19hcHBs eV90b19wYWdlX3JhbmdlKzB4OTg4LzB4MTIxMiBtbS9tZW1vcnkuYzoyNzUwCj4gZXBjIDogZmZm ZmZmZmY4MDQyYWFjOCByYSA6IGZmZmZmZmZmODA0MmFhYzggc3AgOiBmZjIwMDAwMDA0ZDU3Mjkw Cj4gICBncCA6IGZmZmZmZmZmODVjZGQyODAgdHAgOiBmZjYwMDAwMDBlMjA2MjAwIHQwIDogZmY2 MDAwMDAxMDk4OGEwMAo+ICAgdDEgOiAwMDAwMDAwMDAwMGYwMDAwIHQyIDogZmZmZmZmZmY4MDQ2 MTZiNCBzMCA6IGZmMjAwMDAwMDRkNTczODAKPiAgIHMxIDogMDAwMDAwMDAwMDAwMDAwNiBhMCA6 IDAwMDAwMDAwMDAwMDAwMDcgYTEgOiAwMDAwMDAwMDAwMGYwMDAwCj4gICBhMiA6IGZmZmZmZmZm ODA0MmFhYzggYTMgOiAwMDAwMDAwMDAwMDAwMDAyIGE0IDogZmY2MDAwMDAwZTIwNzIwMAo+ICAg YTUgOiAwMDAwMDAwMDAwMDAwMDAwIGE2IDogMDAwMDAwMDAwMDAwMDAwMyBhNyA6IDAwMDAwMDAw MDAwMDAwMDAKPiAgIHMyIDogZmZmZmZmZmVlZjAwMTAwMCBzMyA6IDAwMDAwMDAwMzcxMDAwZTcg czQgOiBmZjYwMDAwMDdhNjYwYmMwCj4gICBzNSA6IDAwMDAwMDAwMDAwMDEwMDAgczYgOiBmZmZm ZmZmZWVmMDAxMDAwIHM3IDogMDAwMDAwMDAwMDAwMDAwMQo+ICAgczggOiBmZmZmZmZmZjgwNGQ4 NDg0IHM5IDogMDAwMDAwMDAwMDAwMDAwMCBzMTA6IGZmZmZmZmZlZWYwMDAwMDAKPiAgIHMxMTog MDAwMDAwMDAwMDAwMDAwMCB0MyA6IGZmZmZmZmZmZjNmM2YzMDAgdDQgOiBmZmZmZmZmZWYwYTA3 YzcwCj4gICB0NSA6IGZmZmZmZmZlZjBhMDdjNzEgdDYgOiBmZjYwMDAwMDBlYmNjY2I4Cj4gc3Rh dHVzOiAwMDAwMDAwMDAwMDAwMTIwIGJhZGFkZHI6IDAwMDAwMDAwMDAwMDAwMDAgY2F1c2U6IDAw MDAwMDAwMDAwMDAwMDMKPiBbPGZmZmZmZmZmODA0MmIzODY+XSBhcHBseV90b19wYWdlX3Jhbmdl KzB4MzQvMHg0NiBtbS9tZW1vcnkuYzoyNzY5Cj4gWzxmZmZmZmZmZjgwNGQ4NzJhPl0ga2FzYW5f cG9wdWxhdGVfdm1hbGxvYysweDUyLzB4NWUgbW0va2FzYW4vc2hhZG93LmM6MzE1Cj4gWzxmZmZm ZmZmZjgwNDYxOWUwPl0gYWxsb2Nfdm1hcF9hcmVhKzB4NGE2LzB4MTYzNiBtbS92bWFsbG9jLmM6 MTY0Nwo+IFs8ZmZmZmZmZmY4MDQ2MmRlMj5dIF9fZ2V0X3ZtX2FyZWFfbm9kZSsweDI3Mi8weDNi MCBtbS92bWFsbG9jLmM6MjUxNQo+IFs8ZmZmZmZmZmY4MDQ2OTE3Yz5dIF9fdm1hbGxvY19ub2Rl X3JhbmdlKzB4MjgwLzB4ZGI4IG1tL3ZtYWxsb2MuYzozMTg3Cj4gWzxmZmZmZmZmZjgwMDE5MmMw Pl0gYnBmX2ppdF9hbGxvY19leGVjKzB4NDYvMHg1MiBhcmNoL3Jpc2N2L25ldC9icGZfaml0X2Nv cmUuYzoxOTAKCgpIZXJlIHdlIGNhbiBzZWUgdGhhdCB3ZSBhcmUgYWxsb2NhdGluZyB0aGUgc2hh ZG93IG1lbW9yeSBmb3IgYSBCUEYgCnJlZ2lvbiB3aGljaCBpcyAqdm1hbGxvYy1iYWNrZWQqOiBi dXQgdGhlIGN1cnJlbnQgdXBzdHJlYW0gCmltcGxlbWVudGF0aW9uIGRvZXMgcG9wdWxhdGUgdGhl IEJQRiByZWdpb24gYXQgaW5pdGlhbGl6YXRpb24sIGl0IGRvZXMgCm5vdCBzaGFsbG93IHBvcHVs YXRlIGl0LiBBbmQgd2UgdHJ5IHRvIHVzZSBodWdlIHBhZ2VzIHdoZW4gcG9zc2libGUgc28gCnRo YXQgY2FuIHRyaWdnZXIgdGhpcyB3YXJuaW5nIGhlcmUuCgpUaGlzIGlzIHNvbWV0aGluZyB0aGF0 IEkgZml4ZWQgaW4gdGhlIGZvbGxvd2luZyBzZXJpZXM6IApodHRwczovL3BhdGNod29yay5rZXJu ZWwub3JnL3Byb2plY3QvbGludXgtcmlzY3YvbGlzdC8/c2VyaWVzPTcwNTE1MCA6KQoKR2xhZCB0 byBzZWUgc3l6Ym90IHJ1bm5pbmcgYWdhaW4sIHRoYW5rcwoKQWxleAoKCj4gWzxmZmZmZmZmZjgw MjgyZjEwPl0gYnBmX2ppdF9iaW5hcnlfYWxsb2MrMHg5Ni8weDEzYyBrZXJuZWwvYnBmL2NvcmUu YzoxMDI3Cj4gWzxmZmZmZmZmZjgwMDE5MDRjPl0gYnBmX2ludF9qaXRfY29tcGlsZSsweDg3YS8w eGE4YyBhcmNoL3Jpc2N2L25ldC9icGZfaml0X2NvcmUuYzoxMTIKPiBbPGZmZmZmZmZmODAyODRk NzY+XSBicGZfcHJvZ19zZWxlY3RfcnVudGltZSsweDFhMi8weDIyZSBrZXJuZWwvYnBmL2NvcmUu YzoyMTkxCj4gWzxmZmZmZmZmZjgyOGE2ODQwPl0gYnBmX21pZ3JhdGVfZmlsdGVyKzB4MjU4LzB4 MmJlIG5ldC9jb3JlL2ZpbHRlci5jOjEyOTgKPiBbPGZmZmZmZmZmODI4YWNiZWM+XSBicGZfcHJl cGFyZV9maWx0ZXIrMHgxMGUvMHgxYjQgbmV0L2NvcmUvZmlsdGVyLmM6MTM0Ngo+IFs8ZmZmZmZm ZmY4MjhhY2ZiYz5dIF9fZ2V0X2ZpbHRlcisweDE0OC8weDFhMCBuZXQvY29yZS9maWx0ZXIuYzox NTE1Cj4gWzxmZmZmZmZmZjgyOGIzZTdjPl0gc2tfYXR0YWNoX2ZpbHRlcisweDIyLzB4MTFhIG5l dC9jb3JlL2ZpbHRlci5jOjE1MzAKPiBbPGZmZmZmZmZmODI3ZjFhZjQ+XSBza19zZXRzb2Nrb3B0 KzB4MTQ0ZS8weDI3MGMgbmV0L2NvcmUvc29jay5jOjEyOTcKPiBbPGZmZmZmZmZmODI3ZjJkZmE+ XSBzb2NrX3NldHNvY2tvcHQrMHg0OC8weDU4IG5ldC9jb3JlL3NvY2suYzoxNTQ5Cj4gWzxmZmZm ZmZmZjgyN2RmY2M4Pl0gX19zeXNfc2V0c29ja29wdCsweDNmMC8weDQxOCBuZXQvc29ja2V0LmM6 MjI0Mgo+IFs8ZmZmZmZmZmY4MjdkZmQyYT5dIF9fZG9fc3lzX3NldHNvY2tvcHQgbmV0L3NvY2tl dC5jOjIyNTcgW2lubGluZV0KPiBbPGZmZmZmZmZmODI3ZGZkMmE+XSBzeXNfc2V0c29ja29wdCsw eDNhLzB4NGMgbmV0L3NvY2tldC5jOjIyNTQKPiBbPGZmZmZmZmZmODAwMDVmZjY+XSByZXRfZnJv bV9zeXNjYWxsKzB4MC8weDIKPiBpcnEgZXZlbnQgc3RhbXA6IDk0MAo+IGhhcmRpcnFzIGxhc3Qg IGVuYWJsZWQgYXQgKDkzOSk6IFs8ZmZmZmZmZmY4MzM5MDNiMD5dIF9fcmF3X3NwaW5fdW5sb2Nr X2lycXJlc3RvcmUgaW5jbHVkZS9saW51eC9zcGlubG9ja19hcGlfc21wLmg6MTUxIFtpbmxpbmVd Cj4gaGFyZGlycXMgbGFzdCAgZW5hYmxlZCBhdCAoOTM5KTogWzxmZmZmZmZmZjgzMzkwM2IwPl0g X3Jhd19zcGluX3VubG9ja19pcnFyZXN0b3JlKzB4NjgvMHg5OCBrZXJuZWwvbG9ja2luZy9zcGlu bG9jay5jOjE5NAo+IGhhcmRpcnFzIGxhc3QgZGlzYWJsZWQgYXQgKDk0MCk6IFs8ZmZmZmZmZmY4 MDAxMDVlMD5dIF9fdHJhY2VfaGFyZGlycXNfb2ZmKzB4MTgvMHgyMCBhcmNoL3Jpc2N2L2tlcm5l bC90cmFjZV9pcnEuYzoyNQo+IHNvZnRpcnFzIGxhc3QgIGVuYWJsZWQgYXQgKDg4OCk6IFs8ZmZm ZmZmZmY4MzM5MTA3YT5dIHNvZnRpcnFfaGFuZGxlX2VuZCBrZXJuZWwvc29mdGlycS5jOjQxNCBb aW5saW5lXQo+IHNvZnRpcnFzIGxhc3QgIGVuYWJsZWQgYXQgKDg4OCk6IFs8ZmZmZmZmZmY4MzM5 MTA3YT5dIF9fZG9fc29mdGlycSsweDY0MC8weDkzMCBrZXJuZWwvc29mdGlycS5jOjYwMAo+IHNv ZnRpcnFzIGxhc3QgZGlzYWJsZWQgYXQgKDg4Myk6IFs8ZmZmZmZmZmY4MDA2OTE5Mj5dIGRvX3Nv ZnRpcnFfb3duX3N0YWNrIGluY2x1ZGUvYXNtLWdlbmVyaWMvc29mdGlycV9zdGFjay5oOjEwIFtp bmxpbmVdCj4gc29mdGlycXMgbGFzdCBkaXNhYmxlZCBhdCAoODgzKTogWzxmZmZmZmZmZjgwMDY5 MTkyPl0gaW52b2tlX3NvZnRpcnEga2VybmVsL3NvZnRpcnEuYzo0NTIgW2lubGluZV0KPiBzb2Z0 aXJxcyBsYXN0IGRpc2FibGVkIGF0ICg4ODMpOiBbPGZmZmZmZmZmODAwNjkxOTI+XSBfX2lycV9l eGl0X3JjdSsweDE1NC8weDFlYSBrZXJuZWwvc29mdGlycS5jOjY1MAo+IC0tLVsgZW5kIHRyYWNl IDAwMDAwMDAwMDAwMDAwMDAgXS0tLQo+Cj4KPiAtLS0KPiBUaGlzIHJlcG9ydCBpcyBnZW5lcmF0 ZWQgYnkgYSBib3QuIEl0IG1heSBjb250YWluIGVycm9ycy4KPiBTZWUgaHR0cHM6Ly9nb28uZ2wv dHBzbUVKIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHN5emJvdC4KPiBzeXpib3QgZW5naW5l ZXJzIGNhbiBiZSByZWFjaGVkIGF0IHN5emthbGxlckBnb29nbGVncm91cHMuY29tLgo+Cj4gc3l6 Ym90IHdpbGwga2VlcCB0cmFjayBvZiB0aGlzIGlzc3VlLiBTZWU6Cj4gaHR0cHM6Ly9nb28uZ2wv dHBzbUVKI3N0YXR1cyBmb3IgaG93IHRvIGNvbW11bmljYXRlIHdpdGggc3l6Ym90Lgo+Cj4gX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBsaW51eC1yaXNj diBtYWlsaW5nIGxpc3QKPiBsaW51eC1yaXNjdkBsaXN0cy5pbmZyYWRlYWQub3JnCj4gaHR0cDov L2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1yaXNjdgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtcmlzY3YgbWFp bGluZyBsaXN0CmxpbnV4LXJpc2N2QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmlu ZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1yaXNjdgo=