[oe-commits] [openembedded-core] 11/48: perf: workaround the error cased by maybe-uninitialized warning

git at git.openembedded.org git at git.openembedded.org
Thu Apr 11 20:30:42 UTC 2019


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit 0eb4048bc5865579327f5a88086e3e3241b012cb
Author: Dengke Du <dengke.du at windriver.com>
AuthorDate: Thu Apr 4 17:02:33 2019 +0800

    perf: workaround the error cased by maybe-uninitialized warning
    
    When enable DEBUG_BUILD, the perf build failed by the following error:
        libbpf.c:727:36: error: 'data' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    This is ok until Khem commit a patch in oe-core:
        16643b03227466e2c80a24c2d079fe36e89553c1
    This commit import "-Og" option to "DEBUG_OPTIMIZATION", result in this error.
    
    Actually, the warning was misinformation. We explore the code in libbpf.c:
        https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/tools/lib/bpf/libbpf.c#n640
    --------------------------------------------------------------------------
    	if (scn)
    		data = elf_getdata(scn, NULL);
    	if (!scn || !data) {
    		pr_warning("failed to get Elf_Data from map section %d\n",
    			   obj->efile.maps_shndx);
    		return -EINVAL;
    	}
    	......
    	using data...
    	......
    --------------------------------------------------------------------------
    If the 'scn' was not null, the data will be initialized. if the data was null,
    the function will return -EINVAL, so the data must be not null, but compiler
    can't see it in 'if' code block, so treat it as 'maybe-uninitialized'.
    
    Signed-off-by: Dengke Du <dengke.du at windriver.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/recipes-kernel/perf/perf.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/perf.bb
index 5acdcfb..546076f 100644
--- a/meta/recipes-kernel/perf/perf.bb
+++ b/meta/recipes-kernel/perf/perf.bb
@@ -271,3 +271,4 @@ FILES_${PN}-perl = "${libexecdir}/perf-core/scripts/perl"
 
 
 INHIBIT_PACKAGE_DEBUG_SPLIT="1"
+DEBUG_OPTIMIZATION_append = " -Wno-error=maybe-uninitialized"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list