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=-2.3 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,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 B921FC43603 for ; Tue, 17 Dec 2019 09:21:12 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 8CD0B20733 for ; Tue, 17 Dec 2019 09:21:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726962AbfLQJVL (ORCPT ); Tue, 17 Dec 2019 04:21:11 -0500 Received: from lhrrgout.huawei.com ([185.176.76.210]:2200 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726757AbfLQJVL (ORCPT ); Tue, 17 Dec 2019 04:21:11 -0500 Received: from lhreml705-cah.china.huawei.com (unknown [172.18.7.107]) by Forcepoint Email with ESMTP id 03653C820D823CF25975; Tue, 17 Dec 2019 09:21:09 +0000 (GMT) Received: from lhreml724-chm.china.huawei.com (10.201.108.75) by lhreml705-cah.china.huawei.com (10.201.108.46) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 17 Dec 2019 09:20:44 +0000 Received: from [127.0.0.1] (10.202.226.46) by lhreml724-chm.china.huawei.com (10.201.108.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 17 Dec 2019 09:20:44 +0000 Subject: Re: Warnings in DRM code when removing/unbinding a driver From: John Garry To: "zourongrong@gmail.com" , "kongxinwei (A)" , "Chenfeng (puck)" , "airlied@linux.ie" , CC: "dri-devel@lists.freedesktop.org" , "linux-kernel@vger.kernel.org" , Linuxarm , "xuwei (O)" References: <07899bd5-e9a5-cff0-395f-b4fb3f0f7f6c@huawei.com> Message-ID: Date: Tue, 17 Dec 2019 09:20:43 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.1.2 MIME-Version: 1.0 In-Reply-To: <07899bd5-e9a5-cff0-395f-b4fb3f0f7f6c@huawei.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-Originating-IP: [10.202.226.46] X-ClientProxiedBy: lhreml728-chm.china.huawei.com (10.201.108.79) To lhreml724-chm.china.huawei.com (10.201.108.75) X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 16/12/2019 17:23, John Garry wrote: +, - > Hi all, xinliang is bouncing. We need to get his new mail address. John > > Enabling CONFIG_DEBUG_TEST_DRIVER_REMOVE causes many warns on a system > with the HIBMC hw: > > [   27.788806] WARNING: CPU: 24 PID: 1 at > drivers/gpu/drm/drm_gem_vram_helper.c:564 bo_driver_move_notify+0x8c/0x98 > [   27.798969] Modules linked in: > [   27.802018] CPU: 24 PID: 1 Comm: swapper/0 Tainted: G    B >  5.5.0-rc1-dirty #565 > [   27.810358] Hardware name: Huawei D06 /D06, BIOS Hisilicon D06 UEFI > RC0 - V1.16.01 03/15/2019 > [   27.818872] pstate: 20c00009 (nzCv daif +PAN +UAO) > [   27.823654] pc : bo_driver_move_notify+0x8c/0x98 > [   27.828262] lr : bo_driver_move_notify+0x40/0x98 > [   27.832868] sp : ffff00236f0677e0 > [   27.836173] x29: ffff00236f0677e0 x28: ffffa0001454e5e0 > [   27.841476] x27: ffff002366e52128 x26: ffffa000149e67b0 > [   27.846779] x25: ffff002366e523e0 x24: ffff002336936120 > [   27.852082] x23: ffff0023346f4010 x22: ffff002336936128 > [   27.857385] x21: ffffa000149c15c0 x20: ffff0023369361f8 > [   27.862687] x19: ffff002336936000 x18: 0000000000001258 > [   27.867989] x17: 0000000000001190 x16: 00000000000011d0 > [   27.873292] x15: 0000000000001348 x14: ffffa00012d68190 > [   27.878595] x13: 0000000000000006 x12: 1ffff40003241f91 > [   27.883897] x11: ffff940003241f91 x10: dfffa00000000000 > [   27.889200] x9 : ffff940003241f92 x8 : 0000000000000001 > [   27.894502] x7 : ffffa0001920fc88 x6 : ffff940003241f92 > [   27.899804] x5 : ffff940003241f92 x4 : ffff0023369363a0 > [   27.905107] x3 : ffffa00010c104b8 x2 : dfffa00000000000 > [   27.910409] x1 : 0000000000000003 x0 : 0000000000000001 > [   27.915712] Call trace: > [   27.918151]  bo_driver_move_notify+0x8c/0x98 > [   27.922412]  ttm_bo_cleanup_memtype_use+0x54/0x100 > [   27.927194]  ttm_bo_put+0x3a0/0x5d0 > [   27.930673]  drm_gem_vram_object_free+0xc/0x18 > [   27.935109]  drm_gem_object_free+0x34/0xd0 > [   27.939196]  drm_gem_object_put_unlocked+0xc8/0xf0 > [   27.943978]  hibmc_user_framebuffer_destroy+0x20/0x40 > [   27.949020]  drm_framebuffer_free+0x48/0x58 > [   27.953194]  drm_mode_object_put.part.1+0x90/0xe8 > [   27.957889]  drm_mode_object_put+0x28/0x38 > [   27.961976]  hibmc_fbdev_fini+0x54/0x78 > [   27.965802]  hibmc_unload+0x2c/0xd0 > [   27.969281]  hibmc_pci_remove+0x2c/0x40 > [   27.973109]  pci_device_remove+0x6c/0x140 > [   27.977110]  really_probe+0x174/0x548 > [   27.980763]  driver_probe_device+0x7c/0x148 > [   27.984936]  device_driver_attach+0x94/0xa0 > [   27.989109]  __driver_attach+0xa8/0x110 > [   27.992935]  bus_for_each_dev+0xe8/0x158 > [   27.996849]  driver_attach+0x30/0x40 > [   28.000415]  bus_add_driver+0x234/0x2f0 > [   28.004241]  driver_register+0xbc/0x1d0 > [   28.008067]  __pci_register_driver+0xbc/0xd0 > [   28.012329]  hibmc_pci_driver_init+0x20/0x28 > [   28.016590]  do_one_initcall+0xb4/0x254 > [   28.020417]  kernel_init_freeable+0x27c/0x328 > [   28.024765]  kernel_init+0x10/0x118 > [   28.028245]  ret_from_fork+0x10/0x18 > [   28.031813] ---[ end trace 35a83b71b657878d ]--- > [   28.036503] ------------[ cut here ]------------ > [   28.041115] WARNING: CPU: 24 PID: 1 at > drivers/gpu/drm/drm_gem_vram_helper.c:40 > ttm_buffer_object_destroy+0x4c/0x80 > [   28.051537] Modules linked in: > [   28.054585] CPU: 24 PID: 1 Comm: swapper/0 Tainted: G    B   W >  5.5.0-rc1-dirty #565 > [   28.062924] Hardware name: Huawei D06 /D06, BIOS Hisilicon D06 UEFI > RC0 - V1.16.01 03/15/2019 > > [snip] > > Indeed, simply unbinding the device from the driver causes the same sort > of issue: > > root@(none)$ cd ./bus/pci/drivers/hibmc-drm/ > root@(none)$ ls > 0000:05:00.0  bind          new_id        remove_id     uevent > unbind > root@(none)$ echo 0000\:05\:00.0 > unbind > [  116.074352] ------------[ cut here ]------------ > [  116.078978] WARNING: CPU: 17 PID: 1178 at > drivers/gpu/drm/drm_gem_vram_helper.c:40 > ttm_buffer_object_destroy+0x4c/0x80 > [  116.089661] Modules linked in: > [  116.092711] CPU: 17 PID: 1178 Comm: sh Tainted: G    B   W > 5.5.0-rc1-dirty #565 > [  116.100704] Hardware name: Huawei D06 /D06, BIOS Hisilicon D06 UEFI > RC0 - V1.16.01 03/15/2019 > [  116.109218] pstate: 20400009 (nzCv daif +PAN -UAO) > [  116.114001] pc : ttm_buffer_object_destroy+0x4c/0x80 > [  116.118956] lr : ttm_buffer_object_destroy+0x18/0x80 > [  116.123910] sp : ffff0022e6cef8e0 > [  116.127215] x29: ffff0022e6cef8e0 x28: ffff00231b1fb000 > [  116.132519] x27: 0000000000000000 x26: ffff00231b1fb000 > [  116.137821] x25: ffff0022e6cefdc0 x24: 0000000000002480 > [  116.143124] x23: ffff0023682b6ab0 x22: ffff0023682b6800 > [  116.148427] x21: ffff0023682b6800 x20: 0000000000000000 > [  116.153730] x19: ffff0023682b6800 x18: 0000000000000000 > [  116.159032] x17: 000000000000000000000000001 > [  116.185545] x7 : ffff0023682b6b07 x6 : ffff80046d056d61 > [  116.190848] x5 : ffff80046d056d61 x4 : ffff0023682b6ba0 > [  116.196151] x3 : ffffa00010197338 x2 : dfffa00000000000 > [  116.201453] x1 : 0000000000000003 x0 : 0000000000000001 > [  116.206756] Call trace: > [  116.209195]  ttm_buffer_object_destroy+0x4c/0x80 > [  116.213803]  ttm_bo_release_list+0x184/0x220 > [  116.218064]  ttm_bo_put+0x410/0x5d0 > [  116.221544]  drm_gem_vram_object_free+0xc/0x18 > [  116.225979]  drm_gem_object_free+0x34/0xd0 > [  116.230066]  drm_gem_object_put_unlocked+0xc8/0xf0 > [  116.234848]  hibmc_user_framebuffer_destroy+0x20/0x40 > [  116.239890]  drm_framebuffer_free+0x48/0x58 > [  116.244064]  drm_mode_object_put.part.1+0x90/0xe8 > [  116.248759]  drm_mode_object_put+0x28/0x38 > [  116.252846]  hibmc_fbdev_fini+0x54/0x78 > [  116.256672]  hibmc_unload+0x2c/0xd0 > [  116.260151]  hibmc_pci_remove+0x2c/0x40 > [  116.263979]  pci_device_remove+0x6c/0x140 > [  116.267980]  device_release_driver_internal+0x134/0x250 > [  116.273196]  device_driver_detach+0x28/0x38 > [  116.277369]  unbind_store+0xfc/0x150 > [  116.280934]  drv_attr_store+0x48/0x60 > [  116.284589]  sysfs_kf_write+0x80/0xb0 > [  116.288241]  kernfs_fop_write+0x1d4/0x320 > [  116.292243]  __vfs_write+0x54/0x98 > [  116.295635]  vfs_write+0xe8/0x270 > [  116.298940]  ksys_write+0xc8/0x180 > [  116.302333]  __arm64_sys_write+0x40/0x50 > [  116.306248]  el0_svc_common.constprop.0+0xa4/0x1f8 > [  116.311029]  el0_svc_handler+0x34/0xb0 > [  116.314770]  el0_sync_handler+0x10c/0x1c8 > [  116.318769]  el0_sync+0x140/0x180 > [  116.322074] ---[ end trace e60e43d0e316b5c8 ]--- > [  116.326868] ------------[ cut here ]------------ > > > dmesg and .config is here: > https://pastebin.com/4P5yaZBS > > I'm not sure if this is a HIBMC driver issue or issue with the framework. > > john > > 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=-2.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,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 568A2C2D0C3 for ; Wed, 18 Dec 2019 08:13:56 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 3267124691 for ; Wed, 18 Dec 2019 08:13:56 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3267124691 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=huawei.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 71DFF6E25F; Wed, 18 Dec 2019 08:13:13 +0000 (UTC) Received: from huawei.com (lhrrgout.huawei.com [185.176.76.210]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4133489E98 for ; Tue, 17 Dec 2019 09:21:12 +0000 (UTC) Received: from lhreml705-cah.china.huawei.com (unknown [172.18.7.107]) by Forcepoint Email with ESMTP id 03653C820D823CF25975; Tue, 17 Dec 2019 09:21:09 +0000 (GMT) Received: from lhreml724-chm.china.huawei.com (10.201.108.75) by lhreml705-cah.china.huawei.com (10.201.108.46) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 17 Dec 2019 09:20:44 +0000 Received: from [127.0.0.1] (10.202.226.46) by lhreml724-chm.china.huawei.com (10.201.108.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 17 Dec 2019 09:20:44 +0000 Subject: Re: Warnings in DRM code when removing/unbinding a driver From: John Garry To: "zourongrong@gmail.com" , "kongxinwei (A)" , "Chenfeng (puck)" , "airlied@linux.ie" , References: <07899bd5-e9a5-cff0-395f-b4fb3f0f7f6c@huawei.com> Message-ID: Date: Tue, 17 Dec 2019 09:20:43 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.1.2 MIME-Version: 1.0 In-Reply-To: <07899bd5-e9a5-cff0-395f-b4fb3f0f7f6c@huawei.com> Content-Language: en-US X-Originating-IP: [10.202.226.46] X-ClientProxiedBy: lhreml728-chm.china.huawei.com (10.201.108.79) To lhreml724-chm.china.huawei.com (10.201.108.75) X-CFilter-Loop: Reflected X-Mailman-Approved-At: Wed, 18 Dec 2019 08:13:03 +0000 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: , Cc: "xuwei \(O\)" , "linux-kernel@vger.kernel.org" , "dri-devel@lists.freedesktop.org" , Linuxarm Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" T24gMTYvMTIvMjAxOSAxNzoyMywgSm9obiBHYXJyeSB3cm90ZToKCissIC0KCj4gSGkgYWxsLAoK eGlubGlhbmcgPHoubGl1eGlubGlhbmdAaGlzaWxpY29uLmNvbT4gaXMgYm91bmNpbmcuIFdlIG5l ZWQgdG8gZ2V0IGhpcyAKbmV3IG1haWwgYWRkcmVzcy4KCkpvaG4KCj4gCj4gRW5hYmxpbmcgQ09O RklHX0RFQlVHX1RFU1RfRFJJVkVSX1JFTU9WRSBjYXVzZXMgbWFueSB3YXJucyBvbiBhIHN5c3Rl bSAKPiB3aXRoIHRoZSBISUJNQyBodzoKPiAKPiBbwqDCoCAyNy43ODg4MDZdIFdBUk5JTkc6IENQ VTogMjQgUElEOiAxIGF0IAo+IGRyaXZlcnMvZ3B1L2RybS9kcm1fZ2VtX3ZyYW1faGVscGVyLmM6 NTY0IGJvX2RyaXZlcl9tb3ZlX25vdGlmeSsweDhjLzB4OTgKPiBbwqDCoCAyNy43OTg5NjldIE1v ZHVsZXMgbGlua2VkIGluOgo+IFvCoMKgIDI3LjgwMjAxOF0gQ1BVOiAyNCBQSUQ6IDEgQ29tbTog c3dhcHBlci8wIFRhaW50ZWQ6IEfCoMKgwqAgQiAKPiAgwqA1LjUuMC1yYzEtZGlydHkgIzU2NQo+ IFvCoMKgIDI3LjgxMDM1OF0gSGFyZHdhcmUgbmFtZTogSHVhd2VpIEQwNiAvRDA2LCBCSU9TIEhp c2lsaWNvbiBEMDYgVUVGSSAKPiBSQzAgLSBWMS4xNi4wMSAwMy8xNS8yMDE5Cj4gW8KgwqAgMjcu ODE4ODcyXSBwc3RhdGU6IDIwYzAwMDA5IChuekN2IGRhaWYgK1BBTiArVUFPKQo+IFvCoMKgIDI3 LjgyMzY1NF0gcGMgOiBib19kcml2ZXJfbW92ZV9ub3RpZnkrMHg4Yy8weDk4Cj4gW8KgwqAgMjcu ODI4MjYyXSBsciA6IGJvX2RyaXZlcl9tb3ZlX25vdGlmeSsweDQwLzB4OTgKPiBbwqDCoCAyNy44 MzI4NjhdIHNwIDogZmZmZjAwMjM2ZjA2NzdlMAo+IFvCoMKgIDI3LjgzNjE3M10geDI5OiBmZmZm MDAyMzZmMDY3N2UwIHgyODogZmZmZmEwMDAxNDU0ZTVlMAo+IFvCoMKgIDI3Ljg0MTQ3Nl0geDI3 OiBmZmZmMDAyMzY2ZTUyMTI4IHgyNjogZmZmZmEwMDAxNDllNjdiMAo+IFvCoMKgIDI3Ljg0Njc3 OV0geDI1OiBmZmZmMDAyMzY2ZTUyM2UwIHgyNDogZmZmZjAwMjMzNjkzNjEyMAo+IFvCoMKgIDI3 Ljg1MjA4Ml0geDIzOiBmZmZmMDAyMzM0NmY0MDEwIHgyMjogZmZmZjAwMjMzNjkzNjEyOAo+IFvC oMKgIDI3Ljg1NzM4NV0geDIxOiBmZmZmYTAwMDE0OWMxNWMwIHgyMDogZmZmZjAwMjMzNjkzNjFm OAo+IFvCoMKgIDI3Ljg2MjY4N10geDE5OiBmZmZmMDAyMzM2OTM2MDAwIHgxODogMDAwMDAwMDAw MDAwMTI1OAo+IFvCoMKgIDI3Ljg2Nzk4OV0geDE3OiAwMDAwMDAwMDAwMDAxMTkwIHgxNjogMDAw MDAwMDAwMDAwMTFkMAo+IFvCoMKgIDI3Ljg3MzI5Ml0geDE1OiAwMDAwMDAwMDAwMDAxMzQ4IHgx NDogZmZmZmEwMDAxMmQ2ODE5MAo+IFvCoMKgIDI3Ljg3ODU5NV0geDEzOiAwMDAwMDAwMDAwMDAw MDA2IHgxMjogMWZmZmY0MDAwMzI0MWY5MQo+IFvCoMKgIDI3Ljg4Mzg5N10geDExOiBmZmZmOTQw MDAzMjQxZjkxIHgxMDogZGZmZmEwMDAwMDAwMDAwMAo+IFvCoMKgIDI3Ljg4OTIwMF0geDkgOiBm ZmZmOTQwMDAzMjQxZjkyIHg4IDogMDAwMDAwMDAwMDAwMDAwMQo+IFvCoMKgIDI3Ljg5NDUwMl0g eDcgOiBmZmZmYTAwMDE5MjBmYzg4IHg2IDogZmZmZjk0MDAwMzI0MWY5Mgo+IFvCoMKgIDI3Ljg5 OTgwNF0geDUgOiBmZmZmOTQwMDAzMjQxZjkyIHg0IDogZmZmZjAwMjMzNjkzNjNhMAo+IFvCoMKg IDI3LjkwNTEwN10geDMgOiBmZmZmYTAwMDEwYzEwNGI4IHgyIDogZGZmZmEwMDAwMDAwMDAwMAo+ IFvCoMKgIDI3LjkxMDQwOV0geDEgOiAwMDAwMDAwMDAwMDAwMDAzIHgwIDogMDAwMDAwMDAwMDAw MDAwMQo+IFvCoMKgIDI3LjkxNTcxMl0gQ2FsbCB0cmFjZToKPiBbwqDCoCAyNy45MTgxNTFdwqAg Ym9fZHJpdmVyX21vdmVfbm90aWZ5KzB4OGMvMHg5OAo+IFvCoMKgIDI3LjkyMjQxMl3CoCB0dG1f Ym9fY2xlYW51cF9tZW10eXBlX3VzZSsweDU0LzB4MTAwCj4gW8KgwqAgMjcuOTI3MTk0XcKgIHR0 bV9ib19wdXQrMHgzYTAvMHg1ZDAKPiBbwqDCoCAyNy45MzA2NzNdwqAgZHJtX2dlbV92cmFtX29i amVjdF9mcmVlKzB4Yy8weDE4Cj4gW8KgwqAgMjcuOTM1MTA5XcKgIGRybV9nZW1fb2JqZWN0X2Zy ZWUrMHgzNC8weGQwCj4gW8KgwqAgMjcuOTM5MTk2XcKgIGRybV9nZW1fb2JqZWN0X3B1dF91bmxv Y2tlZCsweGM4LzB4ZjAKPiBbwqDCoCAyNy45NDM5NzhdwqAgaGlibWNfdXNlcl9mcmFtZWJ1ZmZl cl9kZXN0cm95KzB4MjAvMHg0MAo+IFvCoMKgIDI3Ljk0OTAyMF3CoCBkcm1fZnJhbWVidWZmZXJf ZnJlZSsweDQ4LzB4NTgKPiBbwqDCoCAyNy45NTMxOTRdwqAgZHJtX21vZGVfb2JqZWN0X3B1dC5w YXJ0LjErMHg5MC8weGU4Cj4gW8KgwqAgMjcuOTU3ODg5XcKgIGRybV9tb2RlX29iamVjdF9wdXQr MHgyOC8weDM4Cj4gW8KgwqAgMjcuOTYxOTc2XcKgIGhpYm1jX2ZiZGV2X2ZpbmkrMHg1NC8weDc4 Cj4gW8KgwqAgMjcuOTY1ODAyXcKgIGhpYm1jX3VubG9hZCsweDJjLzB4ZDAKPiBbwqDCoCAyNy45 NjkyODFdwqAgaGlibWNfcGNpX3JlbW92ZSsweDJjLzB4NDAKPiBbwqDCoCAyNy45NzMxMDldwqAg cGNpX2RldmljZV9yZW1vdmUrMHg2Yy8weDE0MAo+IFvCoMKgIDI3Ljk3NzExMF3CoCByZWFsbHlf cHJvYmUrMHgxNzQvMHg1NDgKPiBbwqDCoCAyNy45ODA3NjNdwqAgZHJpdmVyX3Byb2JlX2Rldmlj ZSsweDdjLzB4MTQ4Cj4gW8KgwqAgMjcuOTg0OTM2XcKgIGRldmljZV9kcml2ZXJfYXR0YWNoKzB4 OTQvMHhhMAo+IFvCoMKgIDI3Ljk4OTEwOV3CoCBfX2RyaXZlcl9hdHRhY2grMHhhOC8weDExMAo+ IFvCoMKgIDI3Ljk5MjkzNV3CoCBidXNfZm9yX2VhY2hfZGV2KzB4ZTgvMHgxNTgKPiBbwqDCoCAy Ny45OTY4NDldwqAgZHJpdmVyX2F0dGFjaCsweDMwLzB4NDAKPiBbwqDCoCAyOC4wMDA0MTVdwqAg YnVzX2FkZF9kcml2ZXIrMHgyMzQvMHgyZjAKPiBbwqDCoCAyOC4wMDQyNDFdwqAgZHJpdmVyX3Jl Z2lzdGVyKzB4YmMvMHgxZDAKPiBbwqDCoCAyOC4wMDgwNjddwqAgX19wY2lfcmVnaXN0ZXJfZHJp dmVyKzB4YmMvMHhkMAo+IFvCoMKgIDI4LjAxMjMyOV3CoCBoaWJtY19wY2lfZHJpdmVyX2luaXQr MHgyMC8weDI4Cj4gW8KgwqAgMjguMDE2NTkwXcKgIGRvX29uZV9pbml0Y2FsbCsweGI0LzB4MjU0 Cj4gW8KgwqAgMjguMDIwNDE3XcKgIGtlcm5lbF9pbml0X2ZyZWVhYmxlKzB4MjdjLzB4MzI4Cj4g W8KgwqAgMjguMDI0NzY1XcKgIGtlcm5lbF9pbml0KzB4MTAvMHgxMTgKPiBbwqDCoCAyOC4wMjgy NDVdwqAgcmV0X2Zyb21fZm9yaysweDEwLzB4MTgKPiBbwqDCoCAyOC4wMzE4MTNdIC0tLVsgZW5k IHRyYWNlIDM1YTgzYjcxYjY1Nzg3OGQgXS0tLQo+IFvCoMKgIDI4LjAzNjUwM10gLS0tLS0tLS0t LS0tWyBjdXQgaGVyZSBdLS0tLS0tLS0tLS0tCj4gW8KgwqAgMjguMDQxMTE1XSBXQVJOSU5HOiBD UFU6IDI0IFBJRDogMSBhdCAKPiBkcml2ZXJzL2dwdS9kcm0vZHJtX2dlbV92cmFtX2hlbHBlci5j OjQwIAo+IHR0bV9idWZmZXJfb2JqZWN0X2Rlc3Ryb3krMHg0Yy8weDgwCj4gW8KgwqAgMjguMDUx NTM3XSBNb2R1bGVzIGxpbmtlZCBpbjoKPiBbwqDCoCAyOC4wNTQ1ODVdIENQVTogMjQgUElEOiAx IENvbW06IHN3YXBwZXIvMCBUYWludGVkOiBHwqDCoMKgIELCoMKgIFcgCj4gIMKgNS41LjAtcmMx LWRpcnR5ICM1NjUKPiBbwqDCoCAyOC4wNjI5MjRdIEhhcmR3YXJlIG5hbWU6IEh1YXdlaSBEMDYg L0QwNiwgQklPUyBIaXNpbGljb24gRDA2IFVFRkkgCj4gUkMwIC0gVjEuMTYuMDEgMDMvMTUvMjAx OQo+IAo+IFtzbmlwXQo+IAo+IEluZGVlZCwgc2ltcGx5IHVuYmluZGluZyB0aGUgZGV2aWNlIGZy b20gdGhlIGRyaXZlciBjYXVzZXMgdGhlIHNhbWUgc29ydCAKPiBvZiBpc3N1ZToKPiAKPiByb290 QChub25lKSQgY2QgLi9idXMvcGNpL2RyaXZlcnMvaGlibWMtZHJtLwo+IHJvb3RAKG5vbmUpJCBs cwo+IDAwMDA6MDU6MDAuMMKgIGJpbmTCoMKgwqDCoMKgwqDCoMKgwqAgbmV3X2lkwqDCoMKgwqDC oMKgwqAgcmVtb3ZlX2lkwqDCoMKgwqAgdWV2ZW50ICAgICAgICAKPiB1bmJpbmQKPiByb290QChu b25lKSQgZWNobyAwMDAwXDowNVw6MDAuMCA+IHVuYmluZAo+IFvCoCAxMTYuMDc0MzUyXSAtLS0t LS0tLS0tLS1bIGN1dCBoZXJlIF0tLS0tLS0tLS0tLS0KPiBbwqAgMTE2LjA3ODk3OF0gV0FSTklO RzogQ1BVOiAxNyBQSUQ6IDExNzggYXQgCj4gZHJpdmVycy9ncHUvZHJtL2RybV9nZW1fdnJhbV9o ZWxwZXIuYzo0MCAKPiB0dG1fYnVmZmVyX29iamVjdF9kZXN0cm95KzB4NGMvMHg4MAo+IFvCoCAx MTYuMDg5NjYxXSBNb2R1bGVzIGxpbmtlZCBpbjoKPiBbwqAgMTE2LjA5MjcxMV0gQ1BVOiAxNyBQ SUQ6IDExNzggQ29tbTogc2ggVGFpbnRlZDogR8KgwqDCoCBCwqDCoCBXIAo+IDUuNS4wLXJjMS1k aXJ0eSAjNTY1Cj4gW8KgIDExNi4xMDA3MDRdIEhhcmR3YXJlIG5hbWU6IEh1YXdlaSBEMDYgL0Qw NiwgQklPUyBIaXNpbGljb24gRDA2IFVFRkkgCj4gUkMwIC0gVjEuMTYuMDEgMDMvMTUvMjAxOQo+ IFvCoCAxMTYuMTA5MjE4XSBwc3RhdGU6IDIwNDAwMDA5IChuekN2IGRhaWYgK1BBTiAtVUFPKQo+ IFvCoCAxMTYuMTE0MDAxXSBwYyA6IHR0bV9idWZmZXJfb2JqZWN0X2Rlc3Ryb3krMHg0Yy8weDgw Cj4gW8KgIDExNi4xMTg5NTZdIGxyIDogdHRtX2J1ZmZlcl9vYmplY3RfZGVzdHJveSsweDE4LzB4 ODAKPiBbwqAgMTE2LjEyMzkxMF0gc3AgOiBmZmZmMDAyMmU2Y2VmOGUwCj4gW8KgIDExNi4xMjcy MTVdIHgyOTogZmZmZjAwMjJlNmNlZjhlMCB4Mjg6IGZmZmYwMDIzMWIxZmIwMDAKPiBbwqAgMTE2 LjEzMjUxOV0geDI3OiAwMDAwMDAwMDAwMDAwMDAwIHgyNjogZmZmZjAwMjMxYjFmYjAwMAo+IFvC oCAxMTYuMTM3ODIxXSB4MjU6IGZmZmYwMDIyZTZjZWZkYzAgeDI0OiAwMDAwMDAwMDAwMDAyNDgw Cj4gW8KgIDExNi4xNDMxMjRdIHgyMzogZmZmZjAwMjM2ODJiNmFiMCB4MjI6IGZmZmYwMDIzNjgy YjY4MDAKPiBbwqAgMTE2LjE0ODQyN10geDIxOiBmZmZmMDAyMzY4MmI2ODAwIHgyMDogMDAwMDAw MDAwMDAwMDAwMAo+IFvCoCAxMTYuMTUzNzMwXSB4MTk6IGZmZmYwMDIzNjgyYjY4MDAgeDE4OiAw MDAwMDAwMDAwMDAwMDAwCj4gW8KgIDExNi4xNTkwMzJdIHgxNzogMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAxCj4gW8KgIDExNi4xODU1NDVdIHg3IDogZmZmZjAwMjM2ODJiNmIwNyB4NiA6IGZm ZmY4MDA0NmQwNTZkNjEKPiBbwqAgMTE2LjE5MDg0OF0geDUgOiBmZmZmODAwNDZkMDU2ZDYxIHg0 IDogZmZmZjAwMjM2ODJiNmJhMAo+IFvCoCAxMTYuMTk2MTUxXSB4MyA6IGZmZmZhMDAwMTAxOTcz MzggeDIgOiBkZmZmYTAwMDAwMDAwMDAwCj4gW8KgIDExNi4yMDE0NTNdIHgxIDogMDAwMDAwMDAw MDAwMDAwMyB4MCA6IDAwMDAwMDAwMDAwMDAwMDEKPiBbwqAgMTE2LjIwNjc1Nl0gQ2FsbCB0cmFj ZToKPiBbwqAgMTE2LjIwOTE5NV3CoCB0dG1fYnVmZmVyX29iamVjdF9kZXN0cm95KzB4NGMvMHg4 MAo+IFvCoCAxMTYuMjEzODAzXcKgIHR0bV9ib19yZWxlYXNlX2xpc3QrMHgxODQvMHgyMjAKPiBb wqAgMTE2LjIxODA2NF3CoCB0dG1fYm9fcHV0KzB4NDEwLzB4NWQwCj4gW8KgIDExNi4yMjE1NDRd wqAgZHJtX2dlbV92cmFtX29iamVjdF9mcmVlKzB4Yy8weDE4Cj4gW8KgIDExNi4yMjU5NzldwqAg ZHJtX2dlbV9vYmplY3RfZnJlZSsweDM0LzB4ZDAKPiBbwqAgMTE2LjIzMDA2Nl3CoCBkcm1fZ2Vt X29iamVjdF9wdXRfdW5sb2NrZWQrMHhjOC8weGYwCj4gW8KgIDExNi4yMzQ4NDhdwqAgaGlibWNf dXNlcl9mcmFtZWJ1ZmZlcl9kZXN0cm95KzB4MjAvMHg0MAo+IFvCoCAxMTYuMjM5ODkwXcKgIGRy bV9mcmFtZWJ1ZmZlcl9mcmVlKzB4NDgvMHg1OAo+IFvCoCAxMTYuMjQ0MDY0XcKgIGRybV9tb2Rl X29iamVjdF9wdXQucGFydC4xKzB4OTAvMHhlOAo+IFvCoCAxMTYuMjQ4NzU5XcKgIGRybV9tb2Rl X29iamVjdF9wdXQrMHgyOC8weDM4Cj4gW8KgIDExNi4yNTI4NDZdwqAgaGlibWNfZmJkZXZfZmlu aSsweDU0LzB4NzgKPiBbwqAgMTE2LjI1NjY3Ml3CoCBoaWJtY191bmxvYWQrMHgyYy8weGQwCj4g W8KgIDExNi4yNjAxNTFdwqAgaGlibWNfcGNpX3JlbW92ZSsweDJjLzB4NDAKPiBbwqAgMTE2LjI2 Mzk3OV3CoCBwY2lfZGV2aWNlX3JlbW92ZSsweDZjLzB4MTQwCj4gW8KgIDExNi4yNjc5ODBdwqAg ZGV2aWNlX3JlbGVhc2VfZHJpdmVyX2ludGVybmFsKzB4MTM0LzB4MjUwCj4gW8KgIDExNi4yNzMx OTZdwqAgZGV2aWNlX2RyaXZlcl9kZXRhY2grMHgyOC8weDM4Cj4gW8KgIDExNi4yNzczNjldwqAg dW5iaW5kX3N0b3JlKzB4ZmMvMHgxNTAKPiBbwqAgMTE2LjI4MDkzNF3CoCBkcnZfYXR0cl9zdG9y ZSsweDQ4LzB4NjAKPiBbwqAgMTE2LjI4NDU4OV3CoCBzeXNmc19rZl93cml0ZSsweDgwLzB4YjAK PiBbwqAgMTE2LjI4ODI0MV3CoCBrZXJuZnNfZm9wX3dyaXRlKzB4MWQ0LzB4MzIwCj4gW8KgIDEx Ni4yOTIyNDNdwqAgX192ZnNfd3JpdGUrMHg1NC8weDk4Cj4gW8KgIDExNi4yOTU2MzVdwqAgdmZz X3dyaXRlKzB4ZTgvMHgyNzAKPiBbwqAgMTE2LjI5ODk0MF3CoCBrc3lzX3dyaXRlKzB4YzgvMHgx ODAKPiBbwqAgMTE2LjMwMjMzM13CoCBfX2FybTY0X3N5c193cml0ZSsweDQwLzB4NTAKPiBbwqAg MTE2LjMwNjI0OF3CoCBlbDBfc3ZjX2NvbW1vbi5jb25zdHByb3AuMCsweGE0LzB4MWY4Cj4gW8Kg IDExNi4zMTEwMjldwqAgZWwwX3N2Y19oYW5kbGVyKzB4MzQvMHhiMAo+IFvCoCAxMTYuMzE0Nzcw XcKgIGVsMF9zeW5jX2hhbmRsZXIrMHgxMGMvMHgxYzgKPiBbwqAgMTE2LjMxODc2OV3CoCBlbDBf c3luYysweDE0MC8weDE4MAo+IFvCoCAxMTYuMzIyMDc0XSAtLS1bIGVuZCB0cmFjZSBlNjBlNDNk MGUzMTZiNWM4IF0tLS0KPiBbwqAgMTE2LjMyNjg2OF0gLS0tLS0tLS0tLS0tWyBjdXQgaGVyZSBd LS0tLS0tLS0tLS0tCj4gCj4gCj4gZG1lc2cgYW5kIC5jb25maWcgaXMgaGVyZToKPiBodHRwczov L3Bhc3RlYmluLmNvbS80UDV5YVpCUwo+IAo+IEknbSBub3Qgc3VyZSBpZiB0aGlzIGlzIGEgSElC TUMgZHJpdmVyIGlzc3VlIG9yIGlzc3VlIHdpdGggdGhlIGZyYW1ld29yay4KPiAKPiBqb2huCj4g Cj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmkt ZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK