Bug 873934

Summary: Failed to run Coverity on libvirt RHEL source rpm
Product: Red Hat Enterprise Linux 6 Reporter: Alex Jia <ajia>
Component: libvirtAssignee: Peter Krempa <pkrempa>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: low Docs Contact:
Priority: medium    
Version: 6.4CC: acathrow, dallan, dyasny, dyuan, mzhan, pkrempa, rwu, zpeng
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: libvirt-0.10.2-8.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-02-21 07:26:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Alex Jia 2012-11-07 02:18:21 UTC
Description of problem:
Coverity still complains compiling error on libvirt-0.10.2-7.el6.src.rpm,
in fact, Eric has committted a patch c047f547 to fix compiling issue on upstream, but the patch hasn't been backporting to libvirt rhel.

For details, please see the following link:
http://releng-test1.englab.brq.redhat.com/covscan/task/992/


Version-Release number of selected component (if applicable):
libvirt-0.10.2-7.el6.src.rpm

How reproducible:
always

Steps to Reproduce:
1. run Coverity on libvirt-0.10.2-7.el6.src.rpm
2.
3.
  
Actual results:

  CC     libvirt_driver_la-libvirt.lo
nodeinfo.c:208: error: expected ',' or ';' before '{' token 
cc1: warning: unrecognized command line option "-Wno-suggest-attribute=const" 
cc1: warning: unrecognized command line option "-Wno-suggest-attribute=pure" 
make[3]: *** [libvirt_driver_la-nodeinfo.lo] Error 1

Expected results:
fix it.

Additional info:

Comment 1 Alex Jia 2012-11-07 02:22:13 UTC
commit c047f54749412bfcbdebfadc7950cfc9b02dbeb2
Author: Eric Blake <eblake>
Date:   Mon Oct 29 16:37:05 2012 -0600

    build: place attributes in correct location
    
    Ever since commit eefb881, ATTRIBUTE_NONNULL has normally been a
    no-op under gcc (since it tends to cause more bugs than it cures
    given gcc's current lame implementation of the attribute).  However,
    the macro is still useful to Coverity and other static-analysis
    tools, but only if we use it correctly.  Coverity follows gcc's lead
    in accepting function declarations with attributes at the end, but
    function bodies must attach attributes to the return type.  That is,
    these are valid:
    
    void foo(void *arg) ATTRIBUTE_NONNULL(1);
    void ATTRIBUTE_NONNULL(1) foo(void *arg);
    void ATTRIBUTE_NONNULL(1) foo(void *arg) {}
    
    but this is not:
    
    void foo(void *arg) ATTRIBUTE_NONNULL(1) {}
    
    even though you don't get a compile failure until you do static
    analysis.  Bug introduced in commit 80533ca, with these symptoms:
    
    nodeinfo.c:206: error: expected ',' or ';' before '{' token
    cc1: warning: unrecognized command line option "-Wno-suggest-attribute=const"
    cc1: warning: unrecognized command line option "-Wno-suggest-attribute=pure"
    make[3]: *** [libvirt_driver_la-nodeinfo.lo] Error 1
    
    * src/nodeinfo.c (virNodeParseNode): Fix syntax error when
    non-null attribute is in use.

Comment 5 zhe peng 2012-11-14 02:21:44 UTC
verify with libvirt-0.10.2-8.el6:

no compiling error in coverity testing, link:
http://releng-test1.englab.brq.redhat.com/covscan/task/1002/

move to verified.

Comment 6 errata-xmlrpc 2013-02-21 07:26:03 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2013-0276.html