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=-5.4 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no 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 EED70C48BE8 for ; Wed, 16 Jun 2021 13:00:22 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id D15536135C for ; Wed, 16 Jun 2021 13:00:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233111AbhFPNC1 (ORCPT ); Wed, 16 Jun 2021 09:02:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33202 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233113AbhFPNCS (ORCPT ); Wed, 16 Jun 2021 09:02:18 -0400 Received: from mail-oo1-xc34.google.com (mail-oo1-xc34.google.com [IPv6:2607:f8b0:4864:20::c34]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1B707C061574 for ; Wed, 16 Jun 2021 06:00:13 -0700 (PDT) Received: by mail-oo1-xc34.google.com with SMTP id d27-20020a4a3c1b0000b029024983ef66dbso657965ooa.3 for ; Wed, 16 Jun 2021 06:00:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel-dk.20150623.gappssmtp.com; s=20150623; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=wr3evAdCjQtOBqG7bWvgB68DiYXGxJ1XTZfxGH51J5I=; b=w97B3s49URV+ATkttjsdN0zOG8oOjVQPHIECkcvPIkev3cXQMKkqKDGceaUXg6TRlB ZNfFARexpheCQDAZDqTy3Uo+NfrnuOVVadFiL3AEaKutz5Vtofyfnx4sk/qK4R75gM/c Qjy4Aup6kIuOscF1OWhA+RxwSiWRHNJNTye6zPEG542g8FPGt5dVCtD0NCyXD+fy8Mav h9UdpknUijW50fkRtrnMqvB/ahko46bGyk6LvrkblyA2bQIMRjK+ll8HFYnjhqQ6dXBz SE+dl0O29hV9bXID+KBr6U23JKzLELSpqZxmq/FsSxclkVusX35GefQNpFSFXi7bAuu2 GihQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=wr3evAdCjQtOBqG7bWvgB68DiYXGxJ1XTZfxGH51J5I=; b=NXzoGiCG1JvMRYsd3MFUBYP9fHSp8TgGq3ihNtxTboDKTL5sKeyMTctsTrsnbBli01 si5XdtshcWVCB+uD2tG46G+VSDlhlWQoTZEzt8C51SD/tyOvVqRM06khT3DJOZNkZTw5 cvWpREyJi9ZHRBru/6uN0zM0E/9GXZ4fODfy1jTwQyn8d5cxhwX7I2mh7kiwbjrZYqTt R6WhNLskqGeAD+5z0r2d6mmNkG9e3mFJOEpRuFSTGj5CeJvtPqqbpuU0NZLLDz6u8xAW OJM65zxJhpNOlrDlg9xQWWPxAejYirL/F+W29dFR+aXXgBr3WuqvJZqo6lrl29vZifDp y7zg== X-Gm-Message-State: AOAM532LHI0CW161vD0evq2qLgSx2CvktYavt8S5Y9k71BiTj3iBAp+Z vnaSaFPiUrq4/1vPNp2RAu8kEA== X-Google-Smtp-Source: ABdhPJxmaLQ98fPlcumfuprdDdLFkFT/5m2A/oQjFNB9PbXSSRVXmQHQY0OngqHatwxcNNdyoZ288A== X-Received: by 2002:a4a:5182:: with SMTP id s124mr3984545ooa.34.1623848412425; Wed, 16 Jun 2021 06:00:12 -0700 (PDT) Received: from [192.168.1.134] ([198.8.77.61]) by smtp.gmail.com with ESMTPSA id p65sm459376oop.0.2021.06.16.06.00.11 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 16 Jun 2021 06:00:12 -0700 (PDT) Subject: Re: kernel panic when scanning MTD partitions To: Corentin Labbe Cc: miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, linux-block@vger.kernel.org, linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org References: <1424d9da-5e11-3ba8-82ae-85f95f60ca9d@kernel.dk> From: Jens Axboe Message-ID: <00d45681-5dfc-3c93-5699-4652c71128dd@kernel.dk> Date: Wed, 16 Jun 2021 07:00:10 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-block@vger.kernel.org On 6/16/21 6:59 AM, Corentin Labbe wrote: > Le Wed, Jun 16, 2021 at 06:54:41AM -0600, Jens Axboe a écrit : >> On 6/16/21 6:24 AM, Corentin Labbe wrote: >>> Hello >>> >>> When scanning MTD partitions my kernel panic: >>> Searching for RedBoot partition table in 30000000.flash at offset 0xfe0000 >>> 7 RedBoot partitions found on MTD device 30000000.flash >>> Creating 7 MTD partitions on "30000000.flash": >>> 0x000000000000-0x000000020000 : "BOOT" >>> 8<--- cut here --- >>> Unable to handle kernel NULL pointer dereference at virtual address 00000034 >>> pgd = (ptrval) >>> [00000034] *pgd=00000000 >>> Internal error: Oops: 17 [#1] PREEMPT ARM >>> Modules linked in: >>> CPU: 0 PID: 1 Comm: swapper Not tainted 5.13.0-rc6-next-20210615+ #101 >>> Hardware name: Gemini (Device Tree) >>> PC is at _set_bit+0x20/0x4c >>> LR is at blk_queue_write_cache+0x20/0x5c >>> pc : [] lr : [] psr: 60000093 >>> sp : c1439ca0 ip : 60000013 fp : c4058c00 >>> r10: 00000000 r9 : c4058ab8 r8 : c1c553b8 >>> r7 : c3f71080 r6 : 00000000 r5 : 00000000 r4 : 00000000 >>> r3 : 00020000 r2 : 00000011 r1 : 00000034 r0 : 00000000 >>> Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment none >>> Control: 0000397f Table: 02338000 DAC: 00000053 >>> Register r0 information: NULL pointer >>> Register r1 information: non-paged memory >>> Register r2 information: non-paged memory >>> Register r3 information: non-paged memory >>> Register r4 information: NULL pointer >>> Register r5 information: NULL pointer >>> Register r6 information: NULL pointer >>> Register r7 information: slab kmalloc-128 start c3f71080 pointer offset 0 size 128 >>> Register r8 information: slab dentry start c1c553b8 pointer offset 0 size 40 >>> Register r9 information: slab kmalloc-1k start c4058800 pointer offset 696 size 1024 >>> Register r10 information: NULL pointer >>> Register r11 information: slab kmalloc-1k start c4058c00 pointer offset 0 size 1024 >>> Register r12 information: non-paged memory >>> Process swapper (pid: 1, stack limit = 0x(ptrval)) >>> Stack: (0xc1439ca0 to 0xc143a000) >>> 9ca0: c231a480 c07ab67c 00000000 c03cd1b8 00000000 c00f4b18 c07ab67c c231a480 >>> 9cc0: c4058c00 c07ab67c 05a00000 c03ce474 c07ab67c c4058c00 c07ab658 c03ccf88 >>> 9ce0: c4058c00 c07ab660 c07ab434 c03c7328 c068ab50 00000000 c4058cf8 c40912c0 >>> 9d00: ffffffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 >>> 9d20: 00000101 00000000 00000001 c03c6ba8 00000000 00020000 00000001 00000001 >>> 9d40: c4058c00 00000000 00000000 4af56ea3 00000000 c4058800 c4058800 c406f000 >>> 9d60: 00000007 c03ca0fc 00000000 00000000 00000007 c07ab638 c05c6c84 00000000 >>> 9d80: 00000007 c4058800 c1438000 00000000 00000000 c03c9f90 00000001 c05c6c88 >>> 9da0: 00000000 00000000 c406f000 00000007 c07ab638 4af56ea3 00002201 c4058800 >>> 9dc0: c05c6c84 00000000 00000000 c221c2a0 c2215810 00000000 00000000 c03c7694 >>> 9de0: 00000001 c4009c20 c4008500 c2215800 c221c2a0 c03dc4a0 00000000 c0196864 >>> 9e00: 00000000 c4008500 c4052b58 00000000 00000002 4af56ea3 00000000 00000000 >>> 9e20: c2215810 c07ab928 00000000 c07ab928 00000000 c07bb000 c06f73e0 c037b898 >>> 9e40: c2215810 c0815554 00000000 00000000 c07ab928 c03796fc c2215810 c07ab928 >>> 9e60: c2215854 c07ab928 c071c830 c06d408c c07bb000 c0379b4c c2215810 00000000 >>> 9e80: c2215854 c037a0ec 00000000 c07ab928 c2215810 c07a9fb0 c071c830 c037a17c >>> 9ea0: 00000000 c07ab928 c037a0f4 c0377584 c143e11c c143e10c c140c530 4af56ea3 >>> 9ec0: c07ab928 c4008480 00000000 c0378a68 c068d2f4 c068d2f4 c06f73e0 c07ab928 >>> 9ee0: 00000000 00000000 c07bb000 c037a818 c07117f8 ffffe000 00000000 c00097ac >>> 9f00: c1403b00 c1403b08 c1403aff c0035200 00000000 c0694bc0 0000009f 00000000 >>> 9f20: 00000000 c06f73e0 00000006 00000006 00000000 c1403b16 c1403b1d 4af56ea3 >>> 9f40: 00000000 00000006 0000009f 4af56ea3 c071c84c c0724380 00000007 c1403b00 >>> 9f60: c071c850 c06f8108 00000006 00000006 00000000 c06f73e0 00000000 0000009f >>> 9f80: c0558560 00000000 c0558560 00000000 00000000 00000000 00000000 00000000 >>> 9fa0: 00000000 c0558570 00000000 c0008348 00000000 00000000 00000000 00000000 >>> 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 >>> 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000 >>> [] (_set_bit) from [] (blk_queue_write_cache+0x20/0x5c) >>> [] (blk_queue_write_cache) from [] (add_mtd_blktrans_dev+0x218/0x3cc) >>> [] (add_mtd_blktrans_dev) from [] (mtdblock_add_mtd+0x60/0x78) >>> [] (mtdblock_add_mtd) from [] (blktrans_notify_add+0x3c/0x54) >>> [] (blktrans_notify_add) from [] (add_mtd_device+0x3bc/0x5e8) >>> [] (add_mtd_device) from [] (add_mtd_partitions+0xc4/0x16c) >>> [] (add_mtd_partitions) from [] (parse_mtd_partitions+0x370/0x418) >>> [] (parse_mtd_partitions) from [] (mtd_device_parse_register+0x74/0x2c4) >>> [] (mtd_device_parse_register) from [] (physmap_flash_probe+0x5e8/0x808) >>> [] (physmap_flash_probe) from [] (platform_probe+0x5c/0xbc) >>> [] (platform_probe) from [] (really_probe+0xf8/0x4e8) >>> [] (really_probe) from [] (driver_probe_device+0x60/0xb8) >>> [] (driver_probe_device) from [] (device_driver_attach+0xa8/0xb0) >>> [] (device_driver_attach) from [] (__driver_attach+0x88/0x11c) >>> [] (__driver_attach) from [] (bus_for_each_dev+0x78/0xc4) >>> [] (bus_for_each_dev) from [] (bus_add_driver+0xe8/0x1d0) >>> [] (bus_add_driver) from [] (driver_register+0x88/0x118) >>> [] (driver_register) from [] (do_one_initcall+0x50/0x1e0) >>> [] (do_one_initcall) from [] (kernel_init_freeable+0x178/0x200) >>> [] (kernel_init_freeable) from [] (kernel_init+0x10/0x100) >>> [] (kernel_init) from [] (ret_from_fork+0x14/0x2c) >>> Exception stack(0xc1439fb0 to 0xc1439ff8) >>> 9fa0: 00000000 00000000 00000000 00000000 >>> 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 >>> 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000 >>> Code: e3a03001 e1a03213 e10fc000 e321f093 (e7912100) >>> ---[ end trace f3b2f52ba3b0d435 ]--- >>> Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b >>> ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b ]--- >>> >>> This happen on 5.13.0-rc6-next-20210615+ on my ARM Gemini ssi1328. >> >> Should be fixed once for-next updates the block branch. >> > > Thanks, do you have a link to the fix ? or patch name. Yep, this one: https://git.kernel.dk/cgit/linux-block/commit/?h=for-5.14/block&id=07a719f8fdbe4ae0f825fa1a6d2755a63deb265e -- Jens Axboe 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=-5.6 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no 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 41CF1C48BE5 for ; Wed, 16 Jun 2021 13:00:53 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 0B58861019 for ; Wed, 16 Jun 2021 13:00:53 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0B58861019 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=kernel.dk Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date: Message-ID:From:References:Cc:To:Subject:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=Pu/pi3u7moBFOSP4wchvOrUibmbqualgO2lrEoMORVA=; b=bhowivHeznnBnBMCTeEFDI8zMl y5FVKwRIFGNdJ7acLx3kGZUMFeI2L4VWgtsWEeIhNvozh7VcKDxfG5TwGwOb9Zd78n5EG+AxnO3RQ ahe25rpPOtrB1mbe6cI3rfShTyv/mL79AdBl2/LMc2SBlRTVo2joWZ8EQzRFnJ8QM2sEDNiCuCUKu Yq44qmJv7djkPIeEsijwx0HZF7ZfLAwt5pR8GgYF/QprGsPxxEVD6zVDaO6Odrga/oSgDH0HqOl8T 6QYf6sqpnHZ4lsAgeZZjliw+Lzjt3/IhLvY3C2cSIycQ5NqAM0Q4a3rd1DzuQkHCjbePBa3qMVWRh EzPcfzrg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1ltV9V-006LLD-At; Wed, 16 Jun 2021 13:00:17 +0000 Received: from mail-oo1-xc33.google.com ([2607:f8b0:4864:20::c33]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1ltV9R-006LJp-Nu for linux-mtd@lists.infradead.org; Wed, 16 Jun 2021 13:00:15 +0000 Received: by mail-oo1-xc33.google.com with SMTP id q20-20020a4a6c140000b029024915d1bd7cso642421ooc.12 for ; Wed, 16 Jun 2021 06:00:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel-dk.20150623.gappssmtp.com; s=20150623; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=wr3evAdCjQtOBqG7bWvgB68DiYXGxJ1XTZfxGH51J5I=; b=w97B3s49URV+ATkttjsdN0zOG8oOjVQPHIECkcvPIkev3cXQMKkqKDGceaUXg6TRlB ZNfFARexpheCQDAZDqTy3Uo+NfrnuOVVadFiL3AEaKutz5Vtofyfnx4sk/qK4R75gM/c Qjy4Aup6kIuOscF1OWhA+RxwSiWRHNJNTye6zPEG542g8FPGt5dVCtD0NCyXD+fy8Mav h9UdpknUijW50fkRtrnMqvB/ahko46bGyk6LvrkblyA2bQIMRjK+ll8HFYnjhqQ6dXBz SE+dl0O29hV9bXID+KBr6U23JKzLELSpqZxmq/FsSxclkVusX35GefQNpFSFXi7bAuu2 GihQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=wr3evAdCjQtOBqG7bWvgB68DiYXGxJ1XTZfxGH51J5I=; b=Yw/MtyaCunA3/jmHKs5QwOnOlXP1Jko59unyAgkKaB5CsQ6BN0SNDfandPvn/zVDWR /2PsfZKh+4P829OSjqi49xE1dlbzGM6jkl3OIR7xWFrOwN4A66FBUjoGuyWX4jMUTPCk Ri4e/T7r01QiETnwJVzqSEV1ezanaWj+EbtEfBflKpgixTnF7B3xuN1dQyo60mZaw9DJ KtXqWAdTFkuMT8TaphQ8PeB4jpnL72pfLs/mZ52qk1VNfE/SRPwbG6ghaIQXCMwArvYd 7jQplltuU53ABuF5YdAM7Y5zC8tyj/u60wUrymmgLcPNHwmO40LjMpwTum9fIuu8GAwQ Qu4w== X-Gm-Message-State: AOAM532c+CzZ4lMe7pJ8KeGDIdB+YZAnFlzbkPepHCtTXk6RDQeTwQoN CCC3j7VMNUYrtPe82vC931DAvQ== X-Google-Smtp-Source: ABdhPJxmaLQ98fPlcumfuprdDdLFkFT/5m2A/oQjFNB9PbXSSRVXmQHQY0OngqHatwxcNNdyoZ288A== X-Received: by 2002:a4a:5182:: with SMTP id s124mr3984545ooa.34.1623848412425; Wed, 16 Jun 2021 06:00:12 -0700 (PDT) Received: from [192.168.1.134] ([198.8.77.61]) by smtp.gmail.com with ESMTPSA id p65sm459376oop.0.2021.06.16.06.00.11 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 16 Jun 2021 06:00:12 -0700 (PDT) Subject: Re: kernel panic when scanning MTD partitions To: Corentin Labbe Cc: miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, linux-block@vger.kernel.org, linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org References: <1424d9da-5e11-3ba8-82ae-85f95f60ca9d@kernel.dk> From: Jens Axboe Message-ID: <00d45681-5dfc-3c93-5699-4652c71128dd@kernel.dk> Date: Wed, 16 Jun 2021 07:00:10 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210616_060013_867049_351219ED X-CRM114-Status: GOOD ( 14.50 ) X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-mtd" Errors-To: linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org T24gNi8xNi8yMSA2OjU5IEFNLCBDb3JlbnRpbiBMYWJiZSB3cm90ZToKPiBMZSBXZWQsIEp1biAx NiwgMjAyMSBhdCAwNjo1NDo0MUFNIC0wNjAwLCBKZW5zIEF4Ym9lIGEgw6ljcml0IDoKPj4gT24g Ni8xNi8yMSA2OjI0IEFNLCBDb3JlbnRpbiBMYWJiZSB3cm90ZToKPj4+IEhlbGxvCj4+Pgo+Pj4g V2hlbiBzY2FubmluZyBNVEQgcGFydGl0aW9ucyBteSBrZXJuZWwgcGFuaWM6Cj4+PiBTZWFyY2hp bmcgZm9yIFJlZEJvb3QgcGFydGl0aW9uIHRhYmxlIGluIDMwMDAwMDAwLmZsYXNoIGF0IG9mZnNl dCAweGZlMDAwMAo+Pj4gNyBSZWRCb290IHBhcnRpdGlvbnMgZm91bmQgb24gTVREIGRldmljZSAz MDAwMDAwMC5mbGFzaAo+Pj4gQ3JlYXRpbmcgNyBNVEQgcGFydGl0aW9ucyBvbiAiMzAwMDAwMDAu Zmxhc2giOgo+Pj4gMHgwMDAwMDAwMDAwMDAtMHgwMDAwMDAwMjAwMDAgOiAiQk9PVCIKPj4+IDg8 LS0tIGN1dCBoZXJlIC0tLQo+Pj4gVW5hYmxlIHRvIGhhbmRsZSBrZXJuZWwgTlVMTCBwb2ludGVy IGRlcmVmZXJlbmNlIGF0IHZpcnR1YWwgYWRkcmVzcyAwMDAwMDAzNAo+Pj4gcGdkID0gKHB0cnZh bCkKPj4+IFswMDAwMDAzNF0gKnBnZD0wMDAwMDAwMAo+Pj4gSW50ZXJuYWwgZXJyb3I6IE9vcHM6 IDE3IFsjMV0gUFJFRU1QVCBBUk0KPj4+IE1vZHVsZXMgbGlua2VkIGluOgo+Pj4gQ1BVOiAwIFBJ RDogMSBDb21tOiBzd2FwcGVyIE5vdCB0YWludGVkIDUuMTMuMC1yYzYtbmV4dC0yMDIxMDYxNSsg IzEwMQo+Pj4gSGFyZHdhcmUgbmFtZTogR2VtaW5pIChEZXZpY2UgVHJlZSkKPj4+IFBDIGlzIGF0 IF9zZXRfYml0KzB4MjAvMHg0Ywo+Pj4gTFIgaXMgYXQgYmxrX3F1ZXVlX3dyaXRlX2NhY2hlKzB4 MjAvMHg1Ywo+Pj4gcGMgOiBbPGMwMmYyMTk0Pl0gICAgbHIgOiBbPGMwMjlkNmMwPl0gICAgcHNy OiA2MDAwMDA5Mwo+Pj4gc3AgOiBjMTQzOWNhMCAgaXAgOiA2MDAwMDAxMyAgZnAgOiBjNDA1OGMw MAo+Pj4gcjEwOiAwMDAwMDAwMCAgcjkgOiBjNDA1OGFiOCAgcjggOiBjMWM1NTNiOAo+Pj4gcjcg OiBjM2Y3MTA4MCAgcjYgOiAwMDAwMDAwMCAgcjUgOiAwMDAwMDAwMCAgcjQgOiAwMDAwMDAwMAo+ Pj4gcjMgOiAwMDAyMDAwMCAgcjIgOiAwMDAwMDAxMSAgcjEgOiAwMDAwMDAzNCAgcjAgOiAwMDAw MDAwMAo+Pj4gRmxhZ3M6IG5aQ3YgIElSUXMgb2ZmICBGSVFzIG9uICBNb2RlIFNWQ18zMiAgSVNB IEFSTSAgU2VnbWVudCBub25lCj4+PiBDb250cm9sOiAwMDAwMzk3ZiAgVGFibGU6IDAyMzM4MDAw ICBEQUM6IDAwMDAwMDUzCj4+PiBSZWdpc3RlciByMCBpbmZvcm1hdGlvbjogTlVMTCBwb2ludGVy Cj4+PiBSZWdpc3RlciByMSBpbmZvcm1hdGlvbjogbm9uLXBhZ2VkIG1lbW9yeQo+Pj4gUmVnaXN0 ZXIgcjIgaW5mb3JtYXRpb246IG5vbi1wYWdlZCBtZW1vcnkKPj4+IFJlZ2lzdGVyIHIzIGluZm9y bWF0aW9uOiBub24tcGFnZWQgbWVtb3J5Cj4+PiBSZWdpc3RlciByNCBpbmZvcm1hdGlvbjogTlVM TCBwb2ludGVyCj4+PiBSZWdpc3RlciByNSBpbmZvcm1hdGlvbjogTlVMTCBwb2ludGVyCj4+PiBS ZWdpc3RlciByNiBpbmZvcm1hdGlvbjogTlVMTCBwb2ludGVyCj4+PiBSZWdpc3RlciByNyBpbmZv cm1hdGlvbjogc2xhYiBrbWFsbG9jLTEyOCBzdGFydCBjM2Y3MTA4MCBwb2ludGVyIG9mZnNldCAw IHNpemUgMTI4Cj4+PiBSZWdpc3RlciByOCBpbmZvcm1hdGlvbjogc2xhYiBkZW50cnkgc3RhcnQg YzFjNTUzYjggcG9pbnRlciBvZmZzZXQgMCBzaXplIDQwCj4+PiBSZWdpc3RlciByOSBpbmZvcm1h dGlvbjogc2xhYiBrbWFsbG9jLTFrIHN0YXJ0IGM0MDU4ODAwIHBvaW50ZXIgb2Zmc2V0IDY5NiBz aXplIDEwMjQKPj4+IFJlZ2lzdGVyIHIxMCBpbmZvcm1hdGlvbjogTlVMTCBwb2ludGVyCj4+PiBS ZWdpc3RlciByMTEgaW5mb3JtYXRpb246IHNsYWIga21hbGxvYy0xayBzdGFydCBjNDA1OGMwMCBw b2ludGVyIG9mZnNldCAwIHNpemUgMTAyNAo+Pj4gUmVnaXN0ZXIgcjEyIGluZm9ybWF0aW9uOiBu b24tcGFnZWQgbWVtb3J5Cj4+PiBQcm9jZXNzIHN3YXBwZXIgKHBpZDogMSwgc3RhY2sgbGltaXQg PSAweChwdHJ2YWwpKQo+Pj4gU3RhY2s6ICgweGMxNDM5Y2EwIHRvIDB4YzE0M2EwMDApCj4+PiA5 Y2EwOiBjMjMxYTQ4MCBjMDdhYjY3YyAwMDAwMDAwMCBjMDNjZDFiOCAwMDAwMDAwMCBjMDBmNGIx OCBjMDdhYjY3YyBjMjMxYTQ4MAo+Pj4gOWNjMDogYzQwNThjMDAgYzA3YWI2N2MgMDVhMDAwMDAg YzAzY2U0NzQgYzA3YWI2N2MgYzQwNThjMDAgYzA3YWI2NTggYzAzY2NmODgKPj4+IDljZTA6IGM0 MDU4YzAwIGMwN2FiNjYwIGMwN2FiNDM0IGMwM2M3MzI4IGMwNjhhYjUwIDAwMDAwMDAwIGM0MDU4 Y2Y4IGM0MDkxMmMwCj4+PiA5ZDAwOiBmZmZmZmZmZiAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAw MCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMAo+Pj4gOWQyMDogMDAwMDAxMDEg MDAwMDAwMDAgMDAwMDAwMDEgYzAzYzZiYTggMDAwMDAwMDAgMDAwMjAwMDAgMDAwMDAwMDEgMDAw MDAwMDEKPj4+IDlkNDA6IGM0MDU4YzAwIDAwMDAwMDAwIDAwMDAwMDAwIDRhZjU2ZWEzIDAwMDAw MDAwIGM0MDU4ODAwIGM0MDU4ODAwIGM0MDZmMDAwCj4+PiA5ZDYwOiAwMDAwMDAwNyBjMDNjYTBm YyAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwNyBjMDdhYjYzOCBjMDVjNmM4NCAwMDAwMDAwMAo+ Pj4gOWQ4MDogMDAwMDAwMDcgYzQwNTg4MDAgYzE0MzgwMDAgMDAwMDAwMDAgMDAwMDAwMDAgYzAz YzlmOTAgMDAwMDAwMDEgYzA1YzZjODgKPj4+IDlkYTA6IDAwMDAwMDAwIDAwMDAwMDAwIGM0MDZm MDAwIDAwMDAwMDA3IGMwN2FiNjM4IDRhZjU2ZWEzIDAwMDAyMjAxIGM0MDU4ODAwCj4+PiA5ZGMw OiBjMDVjNmM4NCAwMDAwMDAwMCAwMDAwMDAwMCBjMjIxYzJhMCBjMjIxNTgxMCAwMDAwMDAwMCAw MDAwMDAwMCBjMDNjNzY5NAo+Pj4gOWRlMDogMDAwMDAwMDEgYzQwMDljMjAgYzQwMDg1MDAgYzIy MTU4MDAgYzIyMWMyYTAgYzAzZGM0YTAgMDAwMDAwMDAgYzAxOTY4NjQKPj4+IDllMDA6IDAwMDAw MDAwIGM0MDA4NTAwIGM0MDUyYjU4IDAwMDAwMDAwIDAwMDAwMDAyIDRhZjU2ZWEzIDAwMDAwMDAw IDAwMDAwMDAwCj4+PiA5ZTIwOiBjMjIxNTgxMCBjMDdhYjkyOCAwMDAwMDAwMCBjMDdhYjkyOCAw MDAwMDAwMCBjMDdiYjAwMCBjMDZmNzNlMCBjMDM3Yjg5OAo+Pj4gOWU0MDogYzIyMTU4MTAgYzA4 MTU1NTQgMDAwMDAwMDAgMDAwMDAwMDAgYzA3YWI5MjggYzAzNzk2ZmMgYzIyMTU4MTAgYzA3YWI5 MjgKPj4+IDllNjA6IGMyMjE1ODU0IGMwN2FiOTI4IGMwNzFjODMwIGMwNmQ0MDhjIGMwN2JiMDAw IGMwMzc5YjRjIGMyMjE1ODEwIDAwMDAwMDAwCj4+PiA5ZTgwOiBjMjIxNTg1NCBjMDM3YTBlYyAw MDAwMDAwMCBjMDdhYjkyOCBjMjIxNTgxMCBjMDdhOWZiMCBjMDcxYzgzMCBjMDM3YTE3Ywo+Pj4g OWVhMDogMDAwMDAwMDAgYzA3YWI5MjggYzAzN2EwZjQgYzAzNzc1ODQgYzE0M2UxMWMgYzE0M2Ux MGMgYzE0MGM1MzAgNGFmNTZlYTMKPj4+IDllYzA6IGMwN2FiOTI4IGM0MDA4NDgwIDAwMDAwMDAw IGMwMzc4YTY4IGMwNjhkMmY0IGMwNjhkMmY0IGMwNmY3M2UwIGMwN2FiOTI4Cj4+PiA5ZWUwOiAw MDAwMDAwMCAwMDAwMDAwMCBjMDdiYjAwMCBjMDM3YTgxOCBjMDcxMTdmOCBmZmZmZTAwMCAwMDAw MDAwMCBjMDAwOTdhYwo+Pj4gOWYwMDogYzE0MDNiMDAgYzE0MDNiMDggYzE0MDNhZmYgYzAwMzUy MDAgMDAwMDAwMDAgYzA2OTRiYzAgMDAwMDAwOWYgMDAwMDAwMDAKPj4+IDlmMjA6IDAwMDAwMDAw IGMwNmY3M2UwIDAwMDAwMDA2IDAwMDAwMDA2IDAwMDAwMDAwIGMxNDAzYjE2IGMxNDAzYjFkIDRh ZjU2ZWEzCj4+PiA5ZjQwOiAwMDAwMDAwMCAwMDAwMDAwNiAwMDAwMDA5ZiA0YWY1NmVhMyBjMDcx Yzg0YyBjMDcyNDM4MCAwMDAwMDAwNyBjMTQwM2IwMAo+Pj4gOWY2MDogYzA3MWM4NTAgYzA2Zjgx MDggMDAwMDAwMDYgMDAwMDAwMDYgMDAwMDAwMDAgYzA2ZjczZTAgMDAwMDAwMDAgMDAwMDAwOWYK Pj4+IDlmODA6IGMwNTU4NTYwIDAwMDAwMDAwIGMwNTU4NTYwIDAwMDAwMDAwIDAwMDAwMDAwIDAw MDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwCj4+PiA5ZmEwOiAwMDAwMDAwMCBjMDU1ODU3MCAwMDAw MDAwMCBjMDAwODM0OCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMAo+Pj4gOWZj MDogMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAg MDAwMDAwMDAgMDAwMDAwMDAKPj4+IDlmZTA6IDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAw MDAwMDAwIDAwMDAwMDEzIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwCj4+PiBbPGMwMmYyMTk0 Pl0gKF9zZXRfYml0KSBmcm9tIFs8YzAyOWQ2YzA+XSAoYmxrX3F1ZXVlX3dyaXRlX2NhY2hlKzB4 MjAvMHg1YykKPj4+IFs8YzAyOWQ2YzA+XSAoYmxrX3F1ZXVlX3dyaXRlX2NhY2hlKSBmcm9tIFs8 YzAzY2QxYjg+XSAoYWRkX210ZF9ibGt0cmFuc19kZXYrMHgyMTgvMHgzY2MpCj4+PiBbPGMwM2Nk MWI4Pl0gKGFkZF9tdGRfYmxrdHJhbnNfZGV2KSBmcm9tIFs8YzAzY2U0NzQ+XSAobXRkYmxvY2tf YWRkX210ZCsweDYwLzB4NzgpCj4+PiBbPGMwM2NlNDc0Pl0gKG10ZGJsb2NrX2FkZF9tdGQpIGZy b20gWzxjMDNjY2Y4OD5dIChibGt0cmFuc19ub3RpZnlfYWRkKzB4M2MvMHg1NCkKPj4+IFs8YzAz Y2NmODg+XSAoYmxrdHJhbnNfbm90aWZ5X2FkZCkgZnJvbSBbPGMwM2M3MzI4Pl0gKGFkZF9tdGRf ZGV2aWNlKzB4M2JjLzB4NWU4KQo+Pj4gWzxjMDNjNzMyOD5dIChhZGRfbXRkX2RldmljZSkgZnJv bSBbPGMwM2NhMGZjPl0gKGFkZF9tdGRfcGFydGl0aW9ucysweGM0LzB4MTZjKQo+Pj4gWzxjMDNj YTBmYz5dIChhZGRfbXRkX3BhcnRpdGlvbnMpIGZyb20gWzxjMDNjOWY5MD5dIChwYXJzZV9tdGRf cGFydGl0aW9ucysweDM3MC8weDQxOCkKPj4+IFs8YzAzYzlmOTA+XSAocGFyc2VfbXRkX3BhcnRp dGlvbnMpIGZyb20gWzxjMDNjNzY5ND5dIChtdGRfZGV2aWNlX3BhcnNlX3JlZ2lzdGVyKzB4NzQv MHgyYzQpCj4+PiBbPGMwM2M3Njk0Pl0gKG10ZF9kZXZpY2VfcGFyc2VfcmVnaXN0ZXIpIGZyb20g WzxjMDNkYzRhMD5dIChwaHlzbWFwX2ZsYXNoX3Byb2JlKzB4NWU4LzB4ODA4KQo+Pj4gWzxjMDNk YzRhMD5dIChwaHlzbWFwX2ZsYXNoX3Byb2JlKSBmcm9tIFs8YzAzN2I4OTg+XSAocGxhdGZvcm1f cHJvYmUrMHg1Yy8weGJjKQo+Pj4gWzxjMDM3Yjg5OD5dIChwbGF0Zm9ybV9wcm9iZSkgZnJvbSBb PGMwMzc5NmZjPl0gKHJlYWxseV9wcm9iZSsweGY4LzB4NGU4KQo+Pj4gWzxjMDM3OTZmYz5dIChy ZWFsbHlfcHJvYmUpIGZyb20gWzxjMDM3OWI0Yz5dIChkcml2ZXJfcHJvYmVfZGV2aWNlKzB4NjAv MHhiOCkKPj4+IFs8YzAzNzliNGM+XSAoZHJpdmVyX3Byb2JlX2RldmljZSkgZnJvbSBbPGMwMzdh MGVjPl0gKGRldmljZV9kcml2ZXJfYXR0YWNoKzB4YTgvMHhiMCkKPj4+IFs8YzAzN2EwZWM+XSAo ZGV2aWNlX2RyaXZlcl9hdHRhY2gpIGZyb20gWzxjMDM3YTE3Yz5dIChfX2RyaXZlcl9hdHRhY2gr MHg4OC8weDExYykKPj4+IFs8YzAzN2ExN2M+XSAoX19kcml2ZXJfYXR0YWNoKSBmcm9tIFs8YzAz Nzc1ODQ+XSAoYnVzX2Zvcl9lYWNoX2RldisweDc4LzB4YzQpCj4+PiBbPGMwMzc3NTg0Pl0gKGJ1 c19mb3JfZWFjaF9kZXYpIGZyb20gWzxjMDM3OGE2OD5dIChidXNfYWRkX2RyaXZlcisweGU4LzB4 MWQwKQo+Pj4gWzxjMDM3OGE2OD5dIChidXNfYWRkX2RyaXZlcikgZnJvbSBbPGMwMzdhODE4Pl0g KGRyaXZlcl9yZWdpc3RlcisweDg4LzB4MTE4KQo+Pj4gWzxjMDM3YTgxOD5dIChkcml2ZXJfcmVn aXN0ZXIpIGZyb20gWzxjMDAwOTdhYz5dIChkb19vbmVfaW5pdGNhbGwrMHg1MC8weDFlMCkKPj4+ IFs8YzAwMDk3YWM+XSAoZG9fb25lX2luaXRjYWxsKSBmcm9tIFs8YzA2ZjgxMDg+XSAoa2VybmVs X2luaXRfZnJlZWFibGUrMHgxNzgvMHgyMDApCj4+PiBbPGMwNmY4MTA4Pl0gKGtlcm5lbF9pbml0 X2ZyZWVhYmxlKSBmcm9tIFs8YzA1NTg1NzA+XSAoa2VybmVsX2luaXQrMHgxMC8weDEwMCkKPj4+ IFs8YzA1NTg1NzA+XSAoa2VybmVsX2luaXQpIGZyb20gWzxjMDAwODM0OD5dIChyZXRfZnJvbV9m b3JrKzB4MTQvMHgyYykKPj4+IEV4Y2VwdGlvbiBzdGFjaygweGMxNDM5ZmIwIHRvIDB4YzE0Mzlm ZjgpCj4+PiA5ZmEwOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwMDAwMDAw MCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMAo+Pj4gOWZjMDogMDAwMDAwMDAgMDAwMDAwMDAg MDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAKPj4+ IDlmZTA6IDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDEzIDAwMDAw MDAwCj4+PiBDb2RlOiBlM2EwMzAwMSBlMWEwMzIxMyBlMTBmYzAwMCBlMzIxZjA5MyAoZTc5MTIx MDApIAo+Pj4gLS0tWyBlbmQgdHJhY2UgZjNiMmY1MmJhM2IwZDQzNSBdLS0tCj4+PiBLZXJuZWwg cGFuaWMgLSBub3Qgc3luY2luZzogQXR0ZW1wdGVkIHRvIGtpbGwgaW5pdCEgZXhpdGNvZGU9MHgw MDAwMDAwYgo+Pj4gLS0tWyBlbmQgS2VybmVsIHBhbmljIC0gbm90IHN5bmNpbmc6IEF0dGVtcHRl ZCB0byBraWxsIGluaXQhIGV4aXRjb2RlPTB4MDAwMDAwMGIgXS0tLQo+Pj4KPj4+IFRoaXMgaGFw cGVuIG9uIDUuMTMuMC1yYzYtbmV4dC0yMDIxMDYxNSsgb24gbXkgQVJNIEdlbWluaSBzc2kxMzI4 Lgo+Pgo+PiBTaG91bGQgYmUgZml4ZWQgb25jZSBmb3ItbmV4dCB1cGRhdGVzIHRoZSBibG9jayBi cmFuY2guCj4+Cj4gCj4gVGhhbmtzLCBkbyB5b3UgaGF2ZSBhIGxpbmsgdG8gdGhlIGZpeCA/IG9y IHBhdGNoIG5hbWUuCgpZZXAsIHRoaXMgb25lOgoKaHR0cHM6Ly9naXQua2VybmVsLmRrL2NnaXQv bGludXgtYmxvY2svY29tbWl0Lz9oPWZvci01LjE0L2Jsb2NrJmlkPTA3YTcxOWY4ZmRiZTRhZTBm ODI1ZmExYTZkMjc1NWE2M2RlYjI2NWUKCi0tIApKZW5zIEF4Ym9lCgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkxpbnV4IE1URCBkaXNjdXNz aW9uIG1haWxpbmcgbGlzdApodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2xpbnV4LW10ZC8K