From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from bombadil.infradead.org ([198.137.202.133]:41198 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750917AbeEIFx7 (ORCPT ); Wed, 9 May 2018 01:53:59 -0400 Subject: Re: [PATCH] media: include/video/omapfb_dss.h: use IS_ENABLED() From: Randy Dunlap To: Mauro Carvalho Chehab Cc: Linux Media Mailing List , Mauro Carvalho Chehab , Bartlomiej Zolnierkiewicz , dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org, tomi.valkeinen@ti.com, linux-omap@vger.kernel.org References: <201805050150.CmagcMOg%fengguang.wu@intel.com> <8d55f45b6aa36f5c758d191825f14cd31723b371.1525466956.git.mchehab+samsung@kernel.org> <20180505181447.2ba0ca3f@vento.lan> <0789b035-0e0f-0665-bd0b-3a7aae6fe9f7@infradead.org> Message-ID: Date: Tue, 8 May 2018 22:53:57 -0700 MIME-Version: 1.0 In-Reply-To: <0789b035-0e0f-0665-bd0b-3a7aae6fe9f7@infradead.org> Content-Type: text/plain; charset=windows-1252 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-media-owner@vger.kernel.org List-ID: On 05/08/2018 03:56 PM, Randy Dunlap wrote: > On 05/05/2018 02:14 PM, Mauro Carvalho Chehab wrote: >> Em Sat, 5 May 2018 10:59:23 -0700 >> Randy Dunlap escreveu: >> >>> On 05/04/2018 01:49 PM, Mauro Carvalho Chehab wrote: >>>> Just checking for ifdefs cause build issues as reported by >>>> kernel test: >>>> >>>> config: openrisc-allmodconfig (attached as .config) >>>> compiler: or1k-linux-gcc (GCC) 6.0.0 20160327 (experimental) >>>> >>>> All errors (new ones prefixed by >>): >>>> >>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c: In function 'omapfb_init_connections': >>>>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c:2396:8: error: implicit declaration of function 'omapdss_find_mgr_from_display' [-Werror=implicit-function-declaration] >>>> mgr = omapdss_find_mgr_from_display(def_dssdev); >>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c:2396:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion] >>>> mgr = omapdss_find_mgr_from_display(def_dssdev); >>>> ^ >>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c: In function 'omapfb_find_default_display': >>>>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c:2430:13: error: implicit declaration of function 'omapdss_get_default_display_name' [-Werror=implicit-function-declaration] >>>> def_name = omapdss_get_default_display_name(); >>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c:2430:11: warning: assignment makes pointer from integer without a cast [-Wint-conversion] >>>> def_name = omapdss_get_default_display_name(); >>>> ^ >>>> >>>> So, use IS_ENABLED() instead. >>> >>> Hi, >>> >>> I would like to test this (the change doesn't make much sense to me), >>> but I cannot find the kernel config file nor the kernel test robot's >>> email of this report. >>> >>> Please include an lkml.kernel.org/r/ reference to such emails >>> so that interested parties can join the party. >> >> The message was not c/c to lkml. You can see the original here: >> >> https://www.mail-archive.com/linux-media@vger.kernel.org/msg130809.html >> >> >>> >>> Does this patch apply only to your media tree? so hopefully I can see it in >>> linux-next on Monday. >> >> Yes, as it is over another two patches applied there. >> >> If you want to test it earlier, it is in the top of the master branch: >> https://git.linuxtv.org/media_tree.git >> >>> >>> Thanks. >>> >>>> Cc: Bartlomiej Zolnierkiewicz >>>> Cc: Randy Dunlap >>>> Cc: tomi.valkeinen@ti.com >>>> Cc: linux-omap@vger.kernel.org >>>> Cc: linux-fbdev@vger.kernel.org >>>> Fixes: 771f7be87ff9 ("media: omapfb: omapfb_dss.h: add stubs to build with COMPILE_TEST && DRM_OMAP") >>>> Signed-off-by: Mauro Carvalho Chehab >>>> --- >>>> include/video/omapfb_dss.h | 2 +- >>>> 1 file changed, 1 insertion(+), 1 deletion(-) >>>> >>>> diff --git a/include/video/omapfb_dss.h b/include/video/omapfb_dss.h >>>> index e9775144ff3b..12755d8d9b4f 100644 >>>> --- a/include/video/omapfb_dss.h >>>> +++ b/include/video/omapfb_dss.h >>>> @@ -778,7 +778,7 @@ struct omap_dss_driver { >>>> >>>> typedef void (*omap_dispc_isr_t) (void *arg, u32 mask); >>>> >>>> -#ifdef CONFIG_FB_OMAP2 >>>> +#if IS_ENABLED(CONFIG_FB_OMAP2) >>>> >>>> enum omapdss_version omapdss_get_version(void); >>>> bool omapdss_is_initialized(void); > > The patch doesn't make any sense to me. I would like to see an > explanation of why this is needed, other than "it fixes the build." ;) I get it now. Using #if IS_ENABLED(CONFIG_FB_OMAP2) is just the "modern" way of saying #if defined(CONFIG_FB_OMAP2) || defined(CONFIG_FB_OMAP2_MODULE) which also builds without errors. > But it does fix the build, so: > Tested-by: Randy Dunlap Acked-by: Randy Dunlap -- ~Randy From mboxrd@z Thu Jan 1 00:00:00 1970 From: Randy Dunlap Date: Wed, 09 May 2018 05:53:57 +0000 Subject: Re: [PATCH] media: include/video/omapfb_dss.h: use IS_ENABLED() Message-Id: List-Id: References: <201805050150.CmagcMOg%fengguang.wu@intel.com> <8d55f45b6aa36f5c758d191825f14cd31723b371.1525466956.git.mchehab+samsung@kernel.org> <20180505181447.2ba0ca3f@vento.lan> <0789b035-0e0f-0665-bd0b-3a7aae6fe9f7@infradead.org> In-Reply-To: <0789b035-0e0f-0665-bd0b-3a7aae6fe9f7@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Mauro Carvalho Chehab Cc: linux-fbdev@vger.kernel.org, Bartlomiej Zolnierkiewicz , dri-devel@lists.freedesktop.org, Mauro Carvalho Chehab , tomi.valkeinen@ti.com, linux-omap@vger.kernel.org, Linux Media Mailing List On 05/08/2018 03:56 PM, Randy Dunlap wrote: > On 05/05/2018 02:14 PM, Mauro Carvalho Chehab wrote: >> Em Sat, 5 May 2018 10:59:23 -0700 >> Randy Dunlap escreveu: >> >>> On 05/04/2018 01:49 PM, Mauro Carvalho Chehab wrote: >>>> Just checking for ifdefs cause build issues as reported by >>>> kernel test: >>>> >>>> config: openrisc-allmodconfig (attached as .config) >>>> compiler: or1k-linux-gcc (GCC) 6.0.0 20160327 (experimental) >>>> >>>> All errors (new ones prefixed by >>): >>>> >>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c: In function 'omapfb_init_connections': >>>>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c:2396:8: error: implicit declaration of function 'omapdss_find_mgr_from_display' [-Werror=implicit-function-declaration] >>>> mgr = omapdss_find_mgr_from_display(def_dssdev); >>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c:2396:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion] >>>> mgr = omapdss_find_mgr_from_display(def_dssdev); >>>> ^ >>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c: In function 'omapfb_find_default_display': >>>>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c:2430:13: error: implicit declaration of function 'omapdss_get_default_display_name' [-Werror=implicit-function-declaration] >>>> def_name = omapdss_get_default_display_name(); >>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>>> drivers/video/fbdev/omap2/omapfb/omapfb-main.c:2430:11: warning: assignment makes pointer from integer without a cast [-Wint-conversion] >>>> def_name = omapdss_get_default_display_name(); >>>> ^ >>>> >>>> So, use IS_ENABLED() instead. >>> >>> Hi, >>> >>> I would like to test this (the change doesn't make much sense to me), >>> but I cannot find the kernel config file nor the kernel test robot's >>> email of this report. >>> >>> Please include an lkml.kernel.org/r/ reference to such emails >>> so that interested parties can join the party. >> >> The message was not c/c to lkml. You can see the original here: >> >> https://www.mail-archive.com/linux-media@vger.kernel.org/msg130809.html >> >> >>> >>> Does this patch apply only to your media tree? so hopefully I can see it in >>> linux-next on Monday. >> >> Yes, as it is over another two patches applied there. >> >> If you want to test it earlier, it is in the top of the master branch: >> https://git.linuxtv.org/media_tree.git >> >>> >>> Thanks. >>> >>>> Cc: Bartlomiej Zolnierkiewicz >>>> Cc: Randy Dunlap >>>> Cc: tomi.valkeinen@ti.com >>>> Cc: linux-omap@vger.kernel.org >>>> Cc: linux-fbdev@vger.kernel.org >>>> Fixes: 771f7be87ff9 ("media: omapfb: omapfb_dss.h: add stubs to build with COMPILE_TEST && DRM_OMAP") >>>> Signed-off-by: Mauro Carvalho Chehab >>>> --- >>>> include/video/omapfb_dss.h | 2 +- >>>> 1 file changed, 1 insertion(+), 1 deletion(-) >>>> >>>> diff --git a/include/video/omapfb_dss.h b/include/video/omapfb_dss.h >>>> index e9775144ff3b..12755d8d9b4f 100644 >>>> --- a/include/video/omapfb_dss.h >>>> +++ b/include/video/omapfb_dss.h >>>> @@ -778,7 +778,7 @@ struct omap_dss_driver { >>>> >>>> typedef void (*omap_dispc_isr_t) (void *arg, u32 mask); >>>> >>>> -#ifdef CONFIG_FB_OMAP2 >>>> +#if IS_ENABLED(CONFIG_FB_OMAP2) >>>> >>>> enum omapdss_version omapdss_get_version(void); >>>> bool omapdss_is_initialized(void); > > The patch doesn't make any sense to me. I would like to see an > explanation of why this is needed, other than "it fixes the build." ;) I get it now. Using #if IS_ENABLED(CONFIG_FB_OMAP2) is just the "modern" way of saying #if defined(CONFIG_FB_OMAP2) || defined(CONFIG_FB_OMAP2_MODULE) which also builds without errors. > But it does fix the build, so: > Tested-by: Randy Dunlap Acked-by: Randy Dunlap -- ~Randy From mboxrd@z Thu Jan 1 00:00:00 1970 From: Randy Dunlap Subject: Re: [PATCH] media: include/video/omapfb_dss.h: use IS_ENABLED() Date: Tue, 8 May 2018 22:53:57 -0700 Message-ID: References: <201805050150.CmagcMOg%fengguang.wu@intel.com> <8d55f45b6aa36f5c758d191825f14cd31723b371.1525466956.git.mchehab+samsung@kernel.org> <20180505181447.2ba0ca3f@vento.lan> <0789b035-0e0f-0665-bd0b-3a7aae6fe9f7@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <0789b035-0e0f-0665-bd0b-3a7aae6fe9f7@infradead.org> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Mauro Carvalho Chehab Cc: linux-fbdev@vger.kernel.org, Bartlomiej Zolnierkiewicz , dri-devel@lists.freedesktop.org, Mauro Carvalho Chehab , tomi.valkeinen@ti.com, linux-omap@vger.kernel.org, Linux Media Mailing List List-Id: linux-omap@vger.kernel.org T24gMDUvMDgvMjAxOCAwMzo1NiBQTSwgUmFuZHkgRHVubGFwIHdyb3RlOgo+IE9uIDA1LzA1LzIw MTggMDI6MTQgUE0sIE1hdXJvIENhcnZhbGhvIENoZWhhYiB3cm90ZToKPj4gRW0gU2F0LCA1IE1h eSAyMDE4IDEwOjU5OjIzIC0wNzAwCj4+IFJhbmR5IER1bmxhcCA8cmR1bmxhcEBpbmZyYWRlYWQu b3JnPiBlc2NyZXZldToKPj4KPj4+IE9uIDA1LzA0LzIwMTggMDE6NDkgUE0sIE1hdXJvIENhcnZh bGhvIENoZWhhYiB3cm90ZToKPj4+PiBKdXN0IGNoZWNraW5nIGZvciBpZmRlZnMgY2F1c2UgYnVp bGQgaXNzdWVzIGFzIHJlcG9ydGVkIGJ5Cj4+Pj4ga2VybmVsIHRlc3Q6Cj4+Pj4KPj4+PiBjb25m aWc6IG9wZW5yaXNjLWFsbG1vZGNvbmZpZyAoYXR0YWNoZWQgYXMgLmNvbmZpZykKPj4+PiBjb21w aWxlcjogb3Ixay1saW51eC1nY2MgKEdDQykgNi4wLjAgMjAxNjAzMjcgKGV4cGVyaW1lbnRhbCkK Pj4+Pgo+Pj4+IEFsbCBlcnJvcnMgKG5ldyBvbmVzIHByZWZpeGVkIGJ5ID4+KToKPj4+Pgo+Pj4+ ICAgIGRyaXZlcnMvdmlkZW8vZmJkZXYvb21hcDIvb21hcGZiL29tYXBmYi1tYWluLmM6IEluIGZ1 bmN0aW9uICdvbWFwZmJfaW5pdF9jb25uZWN0aW9ucyc6ICAKPj4+Pj4+IGRyaXZlcnMvdmlkZW8v ZmJkZXYvb21hcDIvb21hcGZiL29tYXBmYi1tYWluLmM6MjM5Njo4OiBlcnJvcjogaW1wbGljaXQg ZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ29tYXBkc3NfZmluZF9tZ3JfZnJvbV9kaXNwbGF5JyBb LVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0gIAo+Pj4+ICAgICAgbWdyID0g b21hcGRzc19maW5kX21ncl9mcm9tX2Rpc3BsYXkoZGVmX2Rzc2Rldik7Cj4+Pj4gICAgICAgICAg ICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgo+Pj4+ICAgIGRyaXZlcnMvdmlkZW8vZmJk ZXYvb21hcDIvb21hcGZiL29tYXBmYi1tYWluLmM6MjM5Njo2OiB3YXJuaW5nOiBhc3NpZ25tZW50 IG1ha2VzIHBvaW50ZXIgZnJvbSBpbnRlZ2VyIHdpdGhvdXQgYSBjYXN0IFstV2ludC1jb252ZXJz aW9uXQo+Pj4+ICAgICAgbWdyID0gb21hcGRzc19maW5kX21ncl9mcm9tX2Rpc3BsYXkoZGVmX2Rz c2Rldik7Cj4+Pj4gICAgICAgICAgXgo+Pj4+ICAgIGRyaXZlcnMvdmlkZW8vZmJkZXYvb21hcDIv b21hcGZiL29tYXBmYi1tYWluLmM6IEluIGZ1bmN0aW9uICdvbWFwZmJfZmluZF9kZWZhdWx0X2Rp c3BsYXknOiAgCj4+Pj4+PiBkcml2ZXJzL3ZpZGVvL2ZiZGV2L29tYXAyL29tYXBmYi9vbWFwZmIt bWFpbi5jOjI0MzA6MTM6IGVycm9yOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAn b21hcGRzc19nZXRfZGVmYXVsdF9kaXNwbGF5X25hbWUnIFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0 aW9uLWRlY2xhcmF0aW9uXSAgCj4+Pj4gICAgICBkZWZfbmFtZSA9IG9tYXBkc3NfZ2V0X2RlZmF1 bHRfZGlzcGxheV9uYW1lKCk7Cj4+Pj4gICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+Cj4+Pj4gICAgZHJpdmVycy92aWRlby9mYmRldi9vbWFwMi9vbWFwZmIv b21hcGZiLW1haW4uYzoyNDMwOjExOiB3YXJuaW5nOiBhc3NpZ25tZW50IG1ha2VzIHBvaW50ZXIg ZnJvbSBpbnRlZ2VyIHdpdGhvdXQgYSBjYXN0IFstV2ludC1jb252ZXJzaW9uXQo+Pj4+ICAgICAg ZGVmX25hbWUgPSBvbWFwZHNzX2dldF9kZWZhdWx0X2Rpc3BsYXlfbmFtZSgpOwo+Pj4+ICAgICAg ICAgICAgICAgXgo+Pj4+Cj4+Pj4gU28sIHVzZSBJU19FTkFCTEVEKCkgaW5zdGVhZC4gIAo+Pj4K Pj4+IEhpLAo+Pj4KPj4+IEkgd291bGQgbGlrZSB0byB0ZXN0IHRoaXMgKHRoZSBjaGFuZ2UgZG9l c24ndCBtYWtlIG11Y2ggc2Vuc2UgdG8gbWUpLAo+Pj4gYnV0IEkgY2Fubm90IGZpbmQgdGhlIGtl cm5lbCBjb25maWcgZmlsZSBub3IgdGhlIGtlcm5lbCB0ZXN0IHJvYm90J3MKPj4+IGVtYWlsIG9m IHRoaXMgcmVwb3J0Lgo+Pj4KPj4+IFBsZWFzZSBpbmNsdWRlIGFuIGxrbWwua2VybmVsLm9yZy9y LzxtZXNzYWdlX2lkPiByZWZlcmVuY2UgdG8gc3VjaCBlbWFpbHMKPj4+IHNvIHRoYXQgaW50ZXJl c3RlZCBwYXJ0aWVzIGNhbiBqb2luIHRoZSBwYXJ0eS4KPj4KPj4gVGhlIG1lc3NhZ2Ugd2FzIG5v dCBjL2MgdG8gbGttbC4gWW91IGNhbiBzZWUgdGhlIG9yaWdpbmFsIGhlcmU6Cj4+Cj4+IGh0dHBz Oi8vd3d3Lm1haWwtYXJjaGl2ZS5jb20vbGludXgtbWVkaWFAdmdlci5rZXJuZWwub3JnL21zZzEz MDgwOS5odG1sCj4+Cj4+Cj4+Pgo+Pj4gRG9lcyB0aGlzIHBhdGNoIGFwcGx5IG9ubHkgdG8geW91 ciBtZWRpYSB0cmVlPyAgc28gaG9wZWZ1bGx5IEkgY2FuIHNlZSBpdCBpbgo+Pj4gbGludXgtbmV4 dCBvbiBNb25kYXkuCj4+Cj4+IFllcywgYXMgaXQgaXMgb3ZlciBhbm90aGVyIHR3byBwYXRjaGVz IGFwcGxpZWQgdGhlcmUuCj4+Cj4+IElmIHlvdSB3YW50IHRvIHRlc3QgaXQgZWFybGllciwgaXQg aXMgaW4gdGhlIHRvcCBvZiB0aGUgbWFzdGVyIGJyYW5jaDoKPj4gCWh0dHBzOi8vZ2l0LmxpbnV4 dHYub3JnL21lZGlhX3RyZWUuZ2l0Cj4+Cj4+Pgo+Pj4gVGhhbmtzLgo+Pj4KPj4+PiBDYzogQmFy dGxvbWllaiBab2xuaWVya2lld2ljeiA8Yi56b2xuaWVya2llQHNhbXN1bmcuY29tPgo+Pj4+IENj OiBSYW5keSBEdW5sYXAgPHJkdW5sYXBAaW5mcmFkZWFkLm9yZz4KPj4+PiBDYzogdG9taS52YWxr ZWluZW5AdGkuY29tCj4+Pj4gQ2M6IGxpbnV4LW9tYXBAdmdlci5rZXJuZWwub3JnCj4+Pj4gQ2M6 IGxpbnV4LWZiZGV2QHZnZXIua2VybmVsLm9yZwo+Pj4+IEZpeGVzOiA3NzFmN2JlODdmZjkgKCJt ZWRpYTogb21hcGZiOiBvbWFwZmJfZHNzLmg6IGFkZCBzdHVicyB0byBidWlsZCB3aXRoIENPTVBJ TEVfVEVTVCAmJiBEUk1fT01BUCIpCj4+Pj4gU2lnbmVkLW9mZi1ieTogTWF1cm8gQ2FydmFsaG8g Q2hlaGFiIDxtY2hlaGFiK3NhbXN1bmdAa2VybmVsLm9yZz4KPj4+PiAtLS0KPj4+PiAgaW5jbHVk ZS92aWRlby9vbWFwZmJfZHNzLmggfCAyICstCj4+Pj4gIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQo+Pj4+Cj4+Pj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdmlk ZW8vb21hcGZiX2Rzcy5oIGIvaW5jbHVkZS92aWRlby9vbWFwZmJfZHNzLmgKPj4+PiBpbmRleCBl OTc3NTE0NGZmM2IuLjEyNzU1ZDhkOWI0ZiAxMDA2NDQKPj4+PiAtLS0gYS9pbmNsdWRlL3ZpZGVv L29tYXBmYl9kc3MuaAo+Pj4+ICsrKyBiL2luY2x1ZGUvdmlkZW8vb21hcGZiX2Rzcy5oCj4+Pj4g QEAgLTc3OCw3ICs3NzgsNyBAQCBzdHJ1Y3Qgb21hcF9kc3NfZHJpdmVyIHsKPj4+PiAgCj4+Pj4g IHR5cGVkZWYgdm9pZCAoKm9tYXBfZGlzcGNfaXNyX3QpICh2b2lkICphcmcsIHUzMiBtYXNrKTsK Pj4+PiAgCj4+Pj4gLSNpZmRlZiBDT05GSUdfRkJfT01BUDIKPj4+PiArI2lmIElTX0VOQUJMRUQo Q09ORklHX0ZCX09NQVAyKQo+Pj4+ICAKPj4+PiAgZW51bSBvbWFwZHNzX3ZlcnNpb24gb21hcGRz c19nZXRfdmVyc2lvbih2b2lkKTsKPj4+PiAgYm9vbCBvbWFwZHNzX2lzX2luaXRpYWxpemVkKHZv aWQpOwo+IAo+IFRoZSBwYXRjaCBkb2Vzbid0IG1ha2UgYW55IHNlbnNlIHRvIG1lLiAgSSB3b3Vs ZCBsaWtlIHRvIHNlZSBhbgo+IGV4cGxhbmF0aW9uIG9mIHdoeSB0aGlzIGlzIG5lZWRlZCwgb3Ro ZXIgdGhhbiAiaXQgZml4ZXMgdGhlIGJ1aWxkLiIgOykKCkkgZ2V0IGl0IG5vdy4gIFVzaW5nCiNp ZiBJU19FTkFCTEVEKENPTkZJR19GQl9PTUFQMikKCmlzIGp1c3QgdGhlICJtb2Rlcm4iIHdheSBv ZiBzYXlpbmcKI2lmIGRlZmluZWQoQ09ORklHX0ZCX09NQVAyKSB8fCBkZWZpbmVkKENPTkZJR19G Ql9PTUFQMl9NT0RVTEUpCgp3aGljaCBhbHNvIGJ1aWxkcyB3aXRob3V0IGVycm9ycy4KCgoKPiBC dXQgaXQgZG9lcyBmaXggdGhlIGJ1aWxkLCBzbzoKPiBUZXN0ZWQtYnk6IFJhbmR5IER1bmxhcCA8 cmR1bmxhcEBpbmZyYWRlYWQub3JnPgpBY2tlZC1ieTogUmFuZHkgRHVubGFwIDxyZHVubGFwQGlu ZnJhZGVhZC5vcmc+CgotLSAKflJhbmR5Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2RyaS1kZXZlbAo=