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=-10.3 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham 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 76AE7C4363A for ; Thu, 8 Oct 2020 13:15:16 +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 F04B82083B for ; Thu, 8 Oct 2020 13:15:15 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="Ug5I0Yty" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F04B82083B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=amd-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 63FF56E3B7; Thu, 8 Oct 2020 13:15:15 +0000 (UTC) Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by gabe.freedesktop.org (Postfix) with ESMTPS id EDB296E3B7; Thu, 8 Oct 2020 13:15:14 +0000 (UTC) Received: from embeddedor (187-162-31-110.static.axtel.net [187.162.31.110]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id A848520578; Thu, 8 Oct 2020 13:15:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1602162914; bh=UWoDqHo+eFm+eSQ5OGgFYUjO6Z7d50msPdjJxQyta2U=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Ug5I0Ytyqwx21KzKcI1lwgbskPJV9lRdMWFNxDBMkUzgIpc6O116yMh595eB4NqaW qYSjnz2AYeX27cEJLjiJC7mNDjgO10c+b9f4mLSVqwvTyxNvHjtaoOiHGw1LX9R3Sq pXc8OjlgAx6C5b7blalo7EMPtg3k5MxPXIHGJlu4= Date: Thu, 8 Oct 2020 08:20:36 -0500 From: "Gustavo A. R. Silva" To: Christian =?iso-8859-1?Q?K=F6nig?= Subject: Re: [PATCH 00/14] drm/amd/pm: Replace one-element arrays with flexible-array members Message-ID: <20201008132036.GB6588@embeddedor> References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.9.4 (2018-02-28) X-BeenThere: amd-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Airlie , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, amd-gfx@lists.freedesktop.org, linux-hardening@vger.kernel.org, Daniel Vetter , Alex Deucher Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: amd-gfx-bounces@lists.freedesktop.org Sender: "amd-gfx" T24gVGh1LCBPY3QgMDgsIDIwMjAgYXQgMDk6MTk6NDdBTSArMDIwMCwgQ2hyaXN0aWFuIEvDtm5p ZyB3cm90ZToKPiBBbSAwNy4xMC4yMCB1bSAxODowMSBzY2hyaWViIEd1c3Rhdm8gQS4gUi4gU2ls dmE6Cj4gPiBIaSBhbGwsCj4gPiAKPiA+IFRoaXMgc2VyaWVzIGFpbXMgdG8gcmVwbGFjZSBvbmUt ZWxlbWVudCBhcnJheXMgd2l0aCBmbGV4aWJsZS1hcnJheQo+ID4gbWVtYmVycy4KPiA+IAo+ID4g VGhlcmUgaXMgYSByZWd1bGFyIG5lZWQgaW4gdGhlIGtlcm5lbCB0byBwcm92aWRlIGEgd2F5IHRv IGRlY2xhcmUgaGF2aW5nCj4gPiBhIGR5bmFtaWNhbGx5IHNpemVkIHNldCBvZiB0cmFpbGluZyBl bGVtZW50cyBpbiBhIHN0cnVjdHVyZS4gS2VybmVsIGNvZGUKPiA+IHNob3VsZCBhbHdheXMgdXNl IOKAnGZsZXhpYmxlIGFycmF5IG1lbWJlcnPigJ1bMV0gZm9yIHRoZXNlIGNhc2VzLiBUaGUgb2xk ZXIKPiA+IHN0eWxlIG9mIG9uZS1lbGVtZW50IG9yIHplcm8tbGVuZ3RoIGFycmF5cyBzaG91bGQg bm8gbG9uZ2VyIGJlIHVzZWRbMl0uCj4gPiAKPiA+IFJlZmFjdG9yIHRoZSBjb2RlIGFjY29yZGlu ZyB0byB0aGUgdXNlIG9mIGZsZXhpYmxlLWFycmF5IG1lbWJlcnMsIGluc3RlYWQKPiA+IG9mIG9u ZS1lbGVtZW50IGFycmF5cywgYW5kIHVzZSB0aGUgc3RydWN0X3NpemUoKSBoZWxwZXIgdG8gY2Fs Y3VsYXRlIHRoZQo+ID4gc2l6ZSBmb3IgdGhlIGR5bmFtaWMgbWVtb3J5IGFsbG9jYXRpb24uCj4g PiAKPiA+IEFsc28sIHNhdmUgc29tZSBoZWFwIHNwYWNlIGluIHRoZSBwcm9jZXNzLiBNb3JlIG9u IHRoaXMgb24gZWFjaCBpbmRpdmlkdWFsCj4gPiBwYXRjaC4KPiAKPiBBaCEgTmljZSB0byBzZWUg dGhhdCBmaW5hbGx5IGJlIGRvY3VtZW50ZWQgYW5kIGNsZWFuZWQgdXAuCj4gCj4gRmVlbCBmcmVl IHRvIGFkZCBhbiBBY2tlZC1ieTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0Bh bWQuY29tPgo+IAo+IEkgYWxzbyBrbm93IGFib3V0IGEgY2FzZSB3aGVyZSB3ZSBkb24ndCB1c2Ug c3RydWN0X3NpemUgaW4gdGhlIERNQS1idWYgY29kZS4KPiAKPiBJJ20gdGhlIG1haW50YWluZXIg b2YgdGhhdCBzdHVmZiBhcyB3ZWxsLCBzbyBiZSBwcmVwYXJlZCB0byBnZXQgcGF0Y2hlcwo+IHRo cm93biBhdCB5b3UgdG8gY2xlYW4gdGhhdCB1cCBhcyB3ZWxsLgoKTm8gcHJvYmxlbS4gRmVlbCBm cmVlIHRvIHNlbmQgYWxsIG9mIHRob3NlIG15IHdheS4gOikKClRoYW5rcwotLQpHdXN0YXZvCgo+ IAo+IFRoYW5rcywKPiBDaHJpc3RpYW4uCj4gCj4gPiAKPiA+IFRoaXMgc2VyaWVzIGFsc28gYWRk cmVzc2VzIG11bHRpcGxlIG9mIHRoZSBmb2xsb3dpbmcgc29ydHMgb2Ygd2FybmluZ3M6Cj4gPiAK PiA+IGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9zbXU4 X2h3bWdyLmM6MTUxNTozNzoKPiA+IHdhcm5pbmc6IGFycmF5IHN1YnNjcmlwdCAxIGlzIGFib3Zl IGFycmF5IGJvdW5kcyBvZiDigJhjb25zdCBzdHJ1Y3QKPiA+IHBobV9jbG9ja192b2x0YWdlX2Rl cGVuZGVuY3lfcmVjb3JkWzFd4oCZIFstV2FycmF5LWJvdW5kc10KPiA+IAo+ID4gd2hpY2gsIGlu IHRoaXMgY2FzZSwgdGhleSBhcmUgZmFsc2UgcG9zaXRpdmVzLCBidXQgbmVydmVydGhlbGVzcyBz aG91bGQgYmUKPiA+IGZpeGVkIGluIG9yZGVyIHRvIGVuYWJsZSAtV2FycmF5LWJvdW5kc1szXVs0 XS4KPiA+IAo+ID4gWzFdIGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9v ay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmVuLndpa2lwZWRpYS5vcmclMkZ3aWtpJTJGRmxleGli bGVfYXJyYXlfbWVtYmVyJmFtcDtkYXRhPTAyJTdDMDElN0NjaHJpc3RpYW4ua29lbmlnJTQwYW1k LmNvbSU3QzUzMTI4NjJhM2I4YzQxODM4ZWY1MDhkODZhZDk2OWMxJTdDM2RkODk2MWZlNDg4NGU2 MDhlMTFhODJkOTk0ZTE4M2QlN0MwJTdDMCU3QzYzNzM3NjgyOTk0NzA5OTE3OSZhbXA7c2RhdGE9 NUxFV3lSOHBZU3htSHNxaEhpWWlPUyUyQlBQayUyRm01c3VPYzZIN2Y1Y0lCTDQlM0QmYW1wO3Jl c2VydmVkPTAKPiA+IFsyXSBodHRwczovL25hbTExLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxv b2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZ3d3cua2VybmVsLm9yZyUyRmRvYyUyRmh0bWwlMkZ2 NS45LXJjMSUyRnByb2Nlc3MlMkZkZXByZWNhdGVkLmh0bWwlMjN6ZXJvLWxlbmd0aC1hbmQtb25l LWVsZW1lbnQtYXJyYXlzJmFtcDtkYXRhPTAyJTdDMDElN0NjaHJpc3RpYW4ua29lbmlnJTQwYW1k LmNvbSU3QzUzMTI4NjJhM2I4YzQxODM4ZWY1MDhkODZhZDk2OWMxJTdDM2RkODk2MWZlNDg4NGU2 MDhlMTFhODJkOTk0ZTE4M2QlN0MwJTdDMCU3QzYzNzM3NjgyOTk0NzA5OTE3OSZhbXA7c2RhdGE9 d09xeG5Oa0E5Rm5PSSUyQmZCM2RIbjlSVTdjcVBKNjJxcUdDSzlnc2QyaSUyQm8lM0QmYW1wO3Jl c2VydmVkPTAKPiA+IFszXSBodHRwczovL25hbTExLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxv b2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZnaXQua2VybmVsLm9yZyUyRmxpbnVzJTJGNDQ3MjA5 OTZlMmQ3OWU0N2Q1MDhiMGFiZTk5YjkzMWE3MjZhMzE5NyZhbXA7ZGF0YT0wMiU3QzAxJTdDY2hy aXN0aWFuLmtvZW5pZyU0MGFtZC5jb20lN0M1MzEyODYyYTNiOGM0MTgzOGVmNTA4ZDg2YWQ5Njlj MSU3QzNkZDg5NjFmZTQ4ODRlNjA4ZTExYTgyZDk5NGUxODNkJTdDMCU3QzAlN0M2MzczNzY4Mjk5 NDcwOTkxNzkmYW1wO3NkYXRhPXglMkJTSmVPclFBMTFIWG9UYVpFZHlMeU5XTDlyQzRHbmdEeW9E TVJCVW40TSUzRCZhbXA7cmVzZXJ2ZWQ9MAo+ID4gWzRdIGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtz LnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmdpdGh1Yi5jb20lMkZL U1BQJTJGbGludXglMkZpc3N1ZXMlMkYxMDkmYW1wO2RhdGE9MDIlN0MwMSU3Q2NocmlzdGlhbi5r b2VuaWclNDBhbWQuY29tJTdDNTMxMjg2MmEzYjhjNDE4MzhlZjUwOGQ4NmFkOTY5YzElN0MzZGQ4 OTYxZmU0ODg0ZTYwOGUxMWE4MmQ5OTRlMTgzZCU3QzAlN0MwJTdDNjM3Mzc2ODI5OTQ3MDk5MTc5 JmFtcDtzZGF0YT00ODE1NXVWbzdBYm9DZFNaZnNUUDEwaTJySGZCSmN0RyUyRjQzMmxEJTJCcGZI byUzRCZhbXA7cmVzZXJ2ZWQ9MAo+ID4gCj4gPiBHdXN0YXZvIEEuIFIuIFNpbHZhICgxNCk6Cj4g PiAgICBkcm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdpdGggZmxleGlibGUt YXJyYXkgbWVtYmVyCj4gPiAgICBkcm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5 IHdpdGggZmxleGlibGUtYXJyYXkgbWVtYmVyIGluCj4gPiAgICAgIHN0cnVjdCB2aV9kcG1fdGFi bGUKPiA+ICAgIGRybS9hbWQvcG06IFJlcGxhY2Ugb25lLWVsZW1lbnQgYXJyYXkgd2l0aCBmbGV4 aWJsZS1hcnJheSBpbiBzdHJ1Y3QKPiA+ICAgICAgcGhtX2Nsb2NrX2FycmF5Cj4gPiAgICBkcm0v YW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdpdGggZmxleGlibGUtYXJyYXkgaW4g c3RydWN0Cj4gPiAgICAgIHBobV91dmRfY2xvY2tfdm9sdGFnZV9kZXBlbmRlbmN5X3RhYmxlCj4g PiAgICBkcm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdpdGggZmxleGlibGUt YXJyYXkgaW4gc3RydWN0Cj4gPiAgICAgIHBobV9hY3BfY2xvY2tfdm9sdGFnZV9kZXBlbmRlbmN5 X3RhYmxlCj4gPiAgICBkcm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdpdGgg ZmxleGlibGUtYXJyYXkgaW4gc3RydWN0Cj4gPiAgICAgIHBobV9waGFzZV9zaGVkZGluZ19saW1p dHNfdGFibGUKPiA+ICAgIGRybS9hbWQvcG06IFJlcGxhY2Ugb25lLWVsZW1lbnQgYXJyYXkgd2l0 aCBmbGV4aWJsZS1hcnJheSBpbiBzdHJ1Y3QKPiA+ICAgICAgcGhtX3ZjZV9jbG9ja192b2x0YWdl X2RlcGVuZGVuY3lfdGFibGUKPiA+ICAgIGRybS9hbWQvcG06IFJlcGxhY2Ugb25lLWVsZW1lbnQg YXJyYXkgd2l0aCBmbGV4aWJsZS1hcnJheSBpbiBzdHJ1Y3QKPiA+ICAgICAgcGhtX2NhY19sZWFr YWdlX3RhYmxlCj4gPiAgICBkcm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdp dGggZmxleGlibGUtYXJyYXkgaW4gc3RydWN0Cj4gPiAgICAgIHBobV9zYW11X2Nsb2NrX3ZvbHRh Z2VfZGVwZW5kZW5jeV90YWJsZQo+ID4gICAgZHJtL2FtZC9wbTogUmVwbGFjZSBvbmUtZWxlbWVu dCBhcnJheSB3aXRoIGZsZXhpYmxlLWFycmF5IGluIHN0cnVjdAo+ID4gICAgICBwaG1fcHB0X3Yx X2Nsb2NrX3ZvbHRhZ2VfZGVwZW5kZW5jeV90YWJsZQo+ID4gICAgZHJtL2FtZC9wbTogUmVwbGFj ZSBvbmUtZWxlbWVudCBhcnJheSB3aXRoIGZsZXhpYmxlLWFycmF5IGluIHN0cnVjdAo+ID4gICAg ICBwaG1fcHB0X3YxX21tX2Nsb2NrX3ZvbHRhZ2VfZGVwZW5kZW5jeV90YWJsZQo+ID4gICAgZHJt L2FtZC9wbTogUmVwbGFjZSBvbmUtZWxlbWVudCBhcnJheSB3aXRoIGZsZXhpYmxlLWFycmF5IGlu IHN0cnVjdAo+ID4gICAgICBwaG1fcHB0X3YxX3ZvbHRhZ2VfbG9va3VwX3RhYmxlCj4gPiAgICBk cm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdpdGggZmxleGlibGUtYXJyYXkg aW4gc3RydWN0Cj4gPiAgICAgIHBobV9wcHRfdjFfcGNpZV90YWJsZQo+ID4gICAgZHJtL2FtZC9w bTogUmVwbGFjZSBvbmUtZWxlbWVudCBhcnJheSB3aXRoIGZsZXhpYmxlLWFycmF5IGluIHN0cnVj dAo+ID4gICAgICBBVE9NX1ZlZ2ExMF9HRlhDTEtfRGVwZW5kZW5jeV9UYWJsZQo+ID4gCj4gPiAg IGRyaXZlcnMvZ3B1L2RybS9hbWQvcG0vaW5jL2h3bWdyLmggICAgICAgICAgICB8IDIwICsrLS0t Cj4gPiAgIC4uLi9kcm0vYW1kL3BtL3Bvd2VycGxheS9od21nci9od21ncl9wcHQuaCAgICB8ICA4 ICstCj4gPiAgIC4uLi9wb3dlcnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8wLmMgICB8 IDg1ICsrKysrKystLS0tLS0tLS0tLQo+ID4gICAuLi4vYW1kL3BtL3Bvd2VycGxheS9od21nci9w cm9jZXNzcHB0YWJsZXMuYyAgfCA4NSArKysrKysrLS0tLS0tLS0tLS0KPiA+ICAgLi4uL2RybS9h bWQvcG0vcG93ZXJwbGF5L2h3bWdyL3NtdThfaHdtZ3IuYyAgIHwgIDIgKy0KPiA+ICAgLi4uL2Ry bS9hbWQvcG0vcG93ZXJwbGF5L2h3bWdyL3NtdV9oZWxwZXIuYyAgIHwgIDUgKy0KPiA+ICAgLi4u L2FtZC9wbS9wb3dlcnBsYXkvaHdtZ3IvdmVnYTEwX3BwdGFibGUuaCAgIHwgIDIgKy0KPiA+ICAg Li4uL3Bvd2VycGxheS9od21nci92ZWdhMTBfcHJvY2Vzc3BwdGFibGVzLmMgIHwgODggKysrKysr LS0tLS0tLS0tLS0tLQo+ID4gICA4IGZpbGVzIGNoYW5nZWQsIDEwNyBpbnNlcnRpb25zKCspLCAx ODggZGVsZXRpb25zKC0pCj4gPiAKPiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9h bWQtZ2Z4Cg== 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=-10.6 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham 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 83FEAC4363C for ; Thu, 8 Oct 2020 13:15:16 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 3215320578 for ; Thu, 8 Oct 2020 13:15:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1602162916; bh=UWoDqHo+eFm+eSQ5OGgFYUjO6Z7d50msPdjJxQyta2U=; h=Date:From:To:Cc:Subject:References:In-Reply-To:List-ID:From; b=fIJ7lY9h11UaCJrUG1S+lFWATQGbaf1z50mb/VvYKW0UovW2c7r11Dzd5DZ/e+Yq4 tgFDrUg8QjD7MMkLcTl4Fa1nUohD/N2bu9RmttQ8mL/HyiZ2QeJj/Zm5Z19nTlYPob BiNA91+QUnqgM1RC6ijOBpispK11zYdHwPjZuLfY= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728969AbgJHNPQ (ORCPT ); Thu, 8 Oct 2020 09:15:16 -0400 Received: from mail.kernel.org ([198.145.29.99]:42322 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725874AbgJHNPP (ORCPT ); Thu, 8 Oct 2020 09:15:15 -0400 Received: from embeddedor (187-162-31-110.static.axtel.net [187.162.31.110]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id A848520578; Thu, 8 Oct 2020 13:15:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1602162914; bh=UWoDqHo+eFm+eSQ5OGgFYUjO6Z7d50msPdjJxQyta2U=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Ug5I0Ytyqwx21KzKcI1lwgbskPJV9lRdMWFNxDBMkUzgIpc6O116yMh595eB4NqaW qYSjnz2AYeX27cEJLjiJC7mNDjgO10c+b9f4mLSVqwvTyxNvHjtaoOiHGw1LX9R3Sq pXc8OjlgAx6C5b7blalo7EMPtg3k5MxPXIHGJlu4= Date: Thu, 8 Oct 2020 08:20:36 -0500 From: "Gustavo A. R. Silva" To: Christian =?iso-8859-1?Q?K=F6nig?= Cc: linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org, Alex Deucher , David Airlie , Daniel Vetter , amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Subject: Re: [PATCH 00/14] drm/amd/pm: Replace one-element arrays with flexible-array members Message-ID: <20201008132036.GB6588@embeddedor> References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.9.4 (2018-02-28) Precedence: bulk List-ID: X-Mailing-List: linux-hardening@vger.kernel.org On Thu, Oct 08, 2020 at 09:19:47AM +0200, Christian König wrote: > Am 07.10.20 um 18:01 schrieb Gustavo A. R. Silva: > > Hi all, > > > > This series aims to replace one-element arrays with flexible-array > > members. > > > > There is a regular need in the kernel to provide a way to declare having > > a dynamically sized set of trailing elements in a structure. Kernel code > > should always use “flexible array members”[1] for these cases. The older > > style of one-element or zero-length arrays should no longer be used[2]. > > > > Refactor the code according to the use of flexible-array members, instead > > of one-element arrays, and use the struct_size() helper to calculate the > > size for the dynamic memory allocation. > > > > Also, save some heap space in the process. More on this on each individual > > patch. > > Ah! Nice to see that finally be documented and cleaned up. > > Feel free to add an Acked-by: Christian König > > I also know about a case where we don't use struct_size in the DMA-buf code. > > I'm the maintainer of that stuff as well, so be prepared to get patches > thrown at you to clean that up as well. No problem. Feel free to send all of those my way. :) Thanks -- Gustavo > > Thanks, > Christian. > > > > > This series also addresses multiple of the following sorts of warnings: > > > > drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu8_hwmgr.c:1515:37: > > warning: array subscript 1 is above array bounds of ‘const struct > > phm_clock_voltage_dependency_record[1]’ [-Warray-bounds] > > > > which, in this case, they are false positives, but nervertheless should be > > fixed in order to enable -Warray-bounds[3][4]. > > > > [1] https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FFlexible_array_member&data=02%7C01%7Cchristian.koenig%40amd.com%7C5312862a3b8c41838ef508d86ad969c1%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637376829947099179&sdata=5LEWyR8pYSxmHsqhHiYiOS%2BPPk%2Fm5suOc6H7f5cIBL4%3D&reserved=0 > > [2] https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.kernel.org%2Fdoc%2Fhtml%2Fv5.9-rc1%2Fprocess%2Fdeprecated.html%23zero-length-and-one-element-arrays&data=02%7C01%7Cchristian.koenig%40amd.com%7C5312862a3b8c41838ef508d86ad969c1%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637376829947099179&sdata=wOqxnNkA9FnOI%2BfB3dHn9RU7cqPJ62qqGCK9gsd2i%2Bo%3D&reserved=0 > > [3] https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.kernel.org%2Flinus%2F44720996e2d79e47d508b0abe99b931a726a3197&data=02%7C01%7Cchristian.koenig%40amd.com%7C5312862a3b8c41838ef508d86ad969c1%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637376829947099179&sdata=x%2BSJeOrQA11HXoTaZEdyLyNWL9rC4GngDyoDMRBUn4M%3D&reserved=0 > > [4] https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FKSPP%2Flinux%2Fissues%2F109&data=02%7C01%7Cchristian.koenig%40amd.com%7C5312862a3b8c41838ef508d86ad969c1%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637376829947099179&sdata=48155uVo7AboCdSZfsTP10i2rHfBJctG%2F432lD%2BpfHo%3D&reserved=0 > > > > Gustavo A. R. Silva (14): > > drm/amd/pm: Replace one-element array with flexible-array member > > drm/amd/pm: Replace one-element array with flexible-array member in > > struct vi_dpm_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_clock_array > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_uvd_clock_voltage_dependency_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_acp_clock_voltage_dependency_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_phase_shedding_limits_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_vce_clock_voltage_dependency_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_cac_leakage_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_samu_clock_voltage_dependency_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_ppt_v1_clock_voltage_dependency_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_ppt_v1_mm_clock_voltage_dependency_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_ppt_v1_voltage_lookup_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > phm_ppt_v1_pcie_table > > drm/amd/pm: Replace one-element array with flexible-array in struct > > ATOM_Vega10_GFXCLK_Dependency_Table > > > > drivers/gpu/drm/amd/pm/inc/hwmgr.h | 20 ++--- > > .../drm/amd/pm/powerplay/hwmgr/hwmgr_ppt.h | 8 +- > > .../powerplay/hwmgr/process_pptables_v1_0.c | 85 +++++++----------- > > .../amd/pm/powerplay/hwmgr/processpptables.c | 85 +++++++----------- > > .../drm/amd/pm/powerplay/hwmgr/smu8_hwmgr.c | 2 +- > > .../drm/amd/pm/powerplay/hwmgr/smu_helper.c | 5 +- > > .../amd/pm/powerplay/hwmgr/vega10_pptable.h | 2 +- > > .../powerplay/hwmgr/vega10_processpptables.c | 88 ++++++------------- > > 8 files changed, 107 insertions(+), 188 deletions(-) > > > 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=-10.3 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=unavailable 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 1F68EC04EBE for ; Thu, 8 Oct 2020 13:15:17 +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 9ACFE20578 for ; Thu, 8 Oct 2020 13:15:16 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="Ug5I0Yty" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9ACFE20578 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org 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 AC82A6E3D2; Thu, 8 Oct 2020 13:15:15 +0000 (UTC) Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by gabe.freedesktop.org (Postfix) with ESMTPS id EDB296E3B7; Thu, 8 Oct 2020 13:15:14 +0000 (UTC) Received: from embeddedor (187-162-31-110.static.axtel.net [187.162.31.110]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id A848520578; Thu, 8 Oct 2020 13:15:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1602162914; bh=UWoDqHo+eFm+eSQ5OGgFYUjO6Z7d50msPdjJxQyta2U=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Ug5I0Ytyqwx21KzKcI1lwgbskPJV9lRdMWFNxDBMkUzgIpc6O116yMh595eB4NqaW qYSjnz2AYeX27cEJLjiJC7mNDjgO10c+b9f4mLSVqwvTyxNvHjtaoOiHGw1LX9R3Sq pXc8OjlgAx6C5b7blalo7EMPtg3k5MxPXIHGJlu4= Date: Thu, 8 Oct 2020 08:20:36 -0500 From: "Gustavo A. R. Silva" To: Christian =?iso-8859-1?Q?K=F6nig?= Subject: Re: [PATCH 00/14] drm/amd/pm: Replace one-element arrays with flexible-array members Message-ID: <20201008132036.GB6588@embeddedor> References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.9.4 (2018-02-28) 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: David Airlie , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, amd-gfx@lists.freedesktop.org, linux-hardening@vger.kernel.org, Alex Deucher Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" T24gVGh1LCBPY3QgMDgsIDIwMjAgYXQgMDk6MTk6NDdBTSArMDIwMCwgQ2hyaXN0aWFuIEvDtm5p ZyB3cm90ZToKPiBBbSAwNy4xMC4yMCB1bSAxODowMSBzY2hyaWViIEd1c3Rhdm8gQS4gUi4gU2ls dmE6Cj4gPiBIaSBhbGwsCj4gPiAKPiA+IFRoaXMgc2VyaWVzIGFpbXMgdG8gcmVwbGFjZSBvbmUt ZWxlbWVudCBhcnJheXMgd2l0aCBmbGV4aWJsZS1hcnJheQo+ID4gbWVtYmVycy4KPiA+IAo+ID4g VGhlcmUgaXMgYSByZWd1bGFyIG5lZWQgaW4gdGhlIGtlcm5lbCB0byBwcm92aWRlIGEgd2F5IHRv IGRlY2xhcmUgaGF2aW5nCj4gPiBhIGR5bmFtaWNhbGx5IHNpemVkIHNldCBvZiB0cmFpbGluZyBl bGVtZW50cyBpbiBhIHN0cnVjdHVyZS4gS2VybmVsIGNvZGUKPiA+IHNob3VsZCBhbHdheXMgdXNl IOKAnGZsZXhpYmxlIGFycmF5IG1lbWJlcnPigJ1bMV0gZm9yIHRoZXNlIGNhc2VzLiBUaGUgb2xk ZXIKPiA+IHN0eWxlIG9mIG9uZS1lbGVtZW50IG9yIHplcm8tbGVuZ3RoIGFycmF5cyBzaG91bGQg bm8gbG9uZ2VyIGJlIHVzZWRbMl0uCj4gPiAKPiA+IFJlZmFjdG9yIHRoZSBjb2RlIGFjY29yZGlu ZyB0byB0aGUgdXNlIG9mIGZsZXhpYmxlLWFycmF5IG1lbWJlcnMsIGluc3RlYWQKPiA+IG9mIG9u ZS1lbGVtZW50IGFycmF5cywgYW5kIHVzZSB0aGUgc3RydWN0X3NpemUoKSBoZWxwZXIgdG8gY2Fs Y3VsYXRlIHRoZQo+ID4gc2l6ZSBmb3IgdGhlIGR5bmFtaWMgbWVtb3J5IGFsbG9jYXRpb24uCj4g PiAKPiA+IEFsc28sIHNhdmUgc29tZSBoZWFwIHNwYWNlIGluIHRoZSBwcm9jZXNzLiBNb3JlIG9u IHRoaXMgb24gZWFjaCBpbmRpdmlkdWFsCj4gPiBwYXRjaC4KPiAKPiBBaCEgTmljZSB0byBzZWUg dGhhdCBmaW5hbGx5IGJlIGRvY3VtZW50ZWQgYW5kIGNsZWFuZWQgdXAuCj4gCj4gRmVlbCBmcmVl IHRvIGFkZCBhbiBBY2tlZC1ieTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0Bh bWQuY29tPgo+IAo+IEkgYWxzbyBrbm93IGFib3V0IGEgY2FzZSB3aGVyZSB3ZSBkb24ndCB1c2Ug c3RydWN0X3NpemUgaW4gdGhlIERNQS1idWYgY29kZS4KPiAKPiBJJ20gdGhlIG1haW50YWluZXIg b2YgdGhhdCBzdHVmZiBhcyB3ZWxsLCBzbyBiZSBwcmVwYXJlZCB0byBnZXQgcGF0Y2hlcwo+IHRo cm93biBhdCB5b3UgdG8gY2xlYW4gdGhhdCB1cCBhcyB3ZWxsLgoKTm8gcHJvYmxlbS4gRmVlbCBm cmVlIHRvIHNlbmQgYWxsIG9mIHRob3NlIG15IHdheS4gOikKClRoYW5rcwotLQpHdXN0YXZvCgo+ IAo+IFRoYW5rcywKPiBDaHJpc3RpYW4uCj4gCj4gPiAKPiA+IFRoaXMgc2VyaWVzIGFsc28gYWRk cmVzc2VzIG11bHRpcGxlIG9mIHRoZSBmb2xsb3dpbmcgc29ydHMgb2Ygd2FybmluZ3M6Cj4gPiAK PiA+IGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL3BtL3Bvd2VycGxheS9od21nci9zbXU4 X2h3bWdyLmM6MTUxNTozNzoKPiA+IHdhcm5pbmc6IGFycmF5IHN1YnNjcmlwdCAxIGlzIGFib3Zl IGFycmF5IGJvdW5kcyBvZiDigJhjb25zdCBzdHJ1Y3QKPiA+IHBobV9jbG9ja192b2x0YWdlX2Rl cGVuZGVuY3lfcmVjb3JkWzFd4oCZIFstV2FycmF5LWJvdW5kc10KPiA+IAo+ID4gd2hpY2gsIGlu IHRoaXMgY2FzZSwgdGhleSBhcmUgZmFsc2UgcG9zaXRpdmVzLCBidXQgbmVydmVydGhlbGVzcyBz aG91bGQgYmUKPiA+IGZpeGVkIGluIG9yZGVyIHRvIGVuYWJsZSAtV2FycmF5LWJvdW5kc1szXVs0 XS4KPiA+IAo+ID4gWzFdIGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9v ay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmVuLndpa2lwZWRpYS5vcmclMkZ3aWtpJTJGRmxleGli bGVfYXJyYXlfbWVtYmVyJmFtcDtkYXRhPTAyJTdDMDElN0NjaHJpc3RpYW4ua29lbmlnJTQwYW1k LmNvbSU3QzUzMTI4NjJhM2I4YzQxODM4ZWY1MDhkODZhZDk2OWMxJTdDM2RkODk2MWZlNDg4NGU2 MDhlMTFhODJkOTk0ZTE4M2QlN0MwJTdDMCU3QzYzNzM3NjgyOTk0NzA5OTE3OSZhbXA7c2RhdGE9 NUxFV3lSOHBZU3htSHNxaEhpWWlPUyUyQlBQayUyRm01c3VPYzZIN2Y1Y0lCTDQlM0QmYW1wO3Jl c2VydmVkPTAKPiA+IFsyXSBodHRwczovL25hbTExLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxv b2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZ3d3cua2VybmVsLm9yZyUyRmRvYyUyRmh0bWwlMkZ2 NS45LXJjMSUyRnByb2Nlc3MlMkZkZXByZWNhdGVkLmh0bWwlMjN6ZXJvLWxlbmd0aC1hbmQtb25l LWVsZW1lbnQtYXJyYXlzJmFtcDtkYXRhPTAyJTdDMDElN0NjaHJpc3RpYW4ua29lbmlnJTQwYW1k LmNvbSU3QzUzMTI4NjJhM2I4YzQxODM4ZWY1MDhkODZhZDk2OWMxJTdDM2RkODk2MWZlNDg4NGU2 MDhlMTFhODJkOTk0ZTE4M2QlN0MwJTdDMCU3QzYzNzM3NjgyOTk0NzA5OTE3OSZhbXA7c2RhdGE9 d09xeG5Oa0E5Rm5PSSUyQmZCM2RIbjlSVTdjcVBKNjJxcUdDSzlnc2QyaSUyQm8lM0QmYW1wO3Jl c2VydmVkPTAKPiA+IFszXSBodHRwczovL25hbTExLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxv b2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZnaXQua2VybmVsLm9yZyUyRmxpbnVzJTJGNDQ3MjA5 OTZlMmQ3OWU0N2Q1MDhiMGFiZTk5YjkzMWE3MjZhMzE5NyZhbXA7ZGF0YT0wMiU3QzAxJTdDY2hy aXN0aWFuLmtvZW5pZyU0MGFtZC5jb20lN0M1MzEyODYyYTNiOGM0MTgzOGVmNTA4ZDg2YWQ5Njlj MSU3QzNkZDg5NjFmZTQ4ODRlNjA4ZTExYTgyZDk5NGUxODNkJTdDMCU3QzAlN0M2MzczNzY4Mjk5 NDcwOTkxNzkmYW1wO3NkYXRhPXglMkJTSmVPclFBMTFIWG9UYVpFZHlMeU5XTDlyQzRHbmdEeW9E TVJCVW40TSUzRCZhbXA7cmVzZXJ2ZWQ9MAo+ID4gWzRdIGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtz LnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmdpdGh1Yi5jb20lMkZL U1BQJTJGbGludXglMkZpc3N1ZXMlMkYxMDkmYW1wO2RhdGE9MDIlN0MwMSU3Q2NocmlzdGlhbi5r b2VuaWclNDBhbWQuY29tJTdDNTMxMjg2MmEzYjhjNDE4MzhlZjUwOGQ4NmFkOTY5YzElN0MzZGQ4 OTYxZmU0ODg0ZTYwOGUxMWE4MmQ5OTRlMTgzZCU3QzAlN0MwJTdDNjM3Mzc2ODI5OTQ3MDk5MTc5 JmFtcDtzZGF0YT00ODE1NXVWbzdBYm9DZFNaZnNUUDEwaTJySGZCSmN0RyUyRjQzMmxEJTJCcGZI byUzRCZhbXA7cmVzZXJ2ZWQ9MAo+ID4gCj4gPiBHdXN0YXZvIEEuIFIuIFNpbHZhICgxNCk6Cj4g PiAgICBkcm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdpdGggZmxleGlibGUt YXJyYXkgbWVtYmVyCj4gPiAgICBkcm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5 IHdpdGggZmxleGlibGUtYXJyYXkgbWVtYmVyIGluCj4gPiAgICAgIHN0cnVjdCB2aV9kcG1fdGFi bGUKPiA+ICAgIGRybS9hbWQvcG06IFJlcGxhY2Ugb25lLWVsZW1lbnQgYXJyYXkgd2l0aCBmbGV4 aWJsZS1hcnJheSBpbiBzdHJ1Y3QKPiA+ICAgICAgcGhtX2Nsb2NrX2FycmF5Cj4gPiAgICBkcm0v YW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdpdGggZmxleGlibGUtYXJyYXkgaW4g c3RydWN0Cj4gPiAgICAgIHBobV91dmRfY2xvY2tfdm9sdGFnZV9kZXBlbmRlbmN5X3RhYmxlCj4g PiAgICBkcm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdpdGggZmxleGlibGUt YXJyYXkgaW4gc3RydWN0Cj4gPiAgICAgIHBobV9hY3BfY2xvY2tfdm9sdGFnZV9kZXBlbmRlbmN5 X3RhYmxlCj4gPiAgICBkcm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdpdGgg ZmxleGlibGUtYXJyYXkgaW4gc3RydWN0Cj4gPiAgICAgIHBobV9waGFzZV9zaGVkZGluZ19saW1p dHNfdGFibGUKPiA+ICAgIGRybS9hbWQvcG06IFJlcGxhY2Ugb25lLWVsZW1lbnQgYXJyYXkgd2l0 aCBmbGV4aWJsZS1hcnJheSBpbiBzdHJ1Y3QKPiA+ICAgICAgcGhtX3ZjZV9jbG9ja192b2x0YWdl X2RlcGVuZGVuY3lfdGFibGUKPiA+ICAgIGRybS9hbWQvcG06IFJlcGxhY2Ugb25lLWVsZW1lbnQg YXJyYXkgd2l0aCBmbGV4aWJsZS1hcnJheSBpbiBzdHJ1Y3QKPiA+ICAgICAgcGhtX2NhY19sZWFr YWdlX3RhYmxlCj4gPiAgICBkcm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdp dGggZmxleGlibGUtYXJyYXkgaW4gc3RydWN0Cj4gPiAgICAgIHBobV9zYW11X2Nsb2NrX3ZvbHRh Z2VfZGVwZW5kZW5jeV90YWJsZQo+ID4gICAgZHJtL2FtZC9wbTogUmVwbGFjZSBvbmUtZWxlbWVu dCBhcnJheSB3aXRoIGZsZXhpYmxlLWFycmF5IGluIHN0cnVjdAo+ID4gICAgICBwaG1fcHB0X3Yx X2Nsb2NrX3ZvbHRhZ2VfZGVwZW5kZW5jeV90YWJsZQo+ID4gICAgZHJtL2FtZC9wbTogUmVwbGFj ZSBvbmUtZWxlbWVudCBhcnJheSB3aXRoIGZsZXhpYmxlLWFycmF5IGluIHN0cnVjdAo+ID4gICAg ICBwaG1fcHB0X3YxX21tX2Nsb2NrX3ZvbHRhZ2VfZGVwZW5kZW5jeV90YWJsZQo+ID4gICAgZHJt L2FtZC9wbTogUmVwbGFjZSBvbmUtZWxlbWVudCBhcnJheSB3aXRoIGZsZXhpYmxlLWFycmF5IGlu IHN0cnVjdAo+ID4gICAgICBwaG1fcHB0X3YxX3ZvbHRhZ2VfbG9va3VwX3RhYmxlCj4gPiAgICBk cm0vYW1kL3BtOiBSZXBsYWNlIG9uZS1lbGVtZW50IGFycmF5IHdpdGggZmxleGlibGUtYXJyYXkg aW4gc3RydWN0Cj4gPiAgICAgIHBobV9wcHRfdjFfcGNpZV90YWJsZQo+ID4gICAgZHJtL2FtZC9w bTogUmVwbGFjZSBvbmUtZWxlbWVudCBhcnJheSB3aXRoIGZsZXhpYmxlLWFycmF5IGluIHN0cnVj dAo+ID4gICAgICBBVE9NX1ZlZ2ExMF9HRlhDTEtfRGVwZW5kZW5jeV9UYWJsZQo+ID4gCj4gPiAg IGRyaXZlcnMvZ3B1L2RybS9hbWQvcG0vaW5jL2h3bWdyLmggICAgICAgICAgICB8IDIwICsrLS0t Cj4gPiAgIC4uLi9kcm0vYW1kL3BtL3Bvd2VycGxheS9od21nci9od21ncl9wcHQuaCAgICB8ICA4 ICstCj4gPiAgIC4uLi9wb3dlcnBsYXkvaHdtZ3IvcHJvY2Vzc19wcHRhYmxlc192MV8wLmMgICB8 IDg1ICsrKysrKystLS0tLS0tLS0tLQo+ID4gICAuLi4vYW1kL3BtL3Bvd2VycGxheS9od21nci9w cm9jZXNzcHB0YWJsZXMuYyAgfCA4NSArKysrKysrLS0tLS0tLS0tLS0KPiA+ICAgLi4uL2RybS9h bWQvcG0vcG93ZXJwbGF5L2h3bWdyL3NtdThfaHdtZ3IuYyAgIHwgIDIgKy0KPiA+ICAgLi4uL2Ry bS9hbWQvcG0vcG93ZXJwbGF5L2h3bWdyL3NtdV9oZWxwZXIuYyAgIHwgIDUgKy0KPiA+ICAgLi4u L2FtZC9wbS9wb3dlcnBsYXkvaHdtZ3IvdmVnYTEwX3BwdGFibGUuaCAgIHwgIDIgKy0KPiA+ICAg Li4uL3Bvd2VycGxheS9od21nci92ZWdhMTBfcHJvY2Vzc3BwdGFibGVzLmMgIHwgODggKysrKysr LS0tLS0tLS0tLS0tLQo+ID4gICA4IGZpbGVzIGNoYW5nZWQsIDEwNyBpbnNlcnRpb25zKCspLCAx ODggZGVsZXRpb25zKC0pCj4gPiAKPiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vZHJpLWRldmVsCg==