
On 06/28/2017 08:01 AM, Peter Krempa wrote:
On Wed, Jun 28, 2017 at 07:37:37 -0400, John Ferlan wrote:
Commit id 'adf846d3' added many ATTRIBUTE_FALLTHROUGH; statements; however, this particular one caught the eye of the Coverity checker which notes that the statement isn't reachable when the # if is true.
While it could be considered a false positive, just add an # else in order to make it more obvious.
Signed-off-by: John Ferlan <jferlan@redhat.com> ---
I think this is a cleaner solution, since it gets rid of that weird swtich statement altogether:
That's fine. I'll drop this one. John
diff --git a/src/util/virnetdevbridge.c b/src/util/virnetdevbridge.c index 11b03b426..cfb7ebae9 100644 --- a/src/util/virnetdevbridge.c +++ b/src/util/virnetdevbridge.c @@ -468,22 +468,17 @@ virNetDevBridgeCreate(const char *brname) if (resp->nlmsg_len < NLMSG_LENGTH(sizeof(*err))) goto malformed_resp;
- switch (err->error) { - case 0: - break; - case -EOPNOTSUPP: + if (err->error < 0) { # if defined(HAVE_STRUCT_IFREQ) && defined(SIOCBRADDBR) - /* fallback to ioctl if netlink doesn't support creating - * bridges - */ - rc = virNetDevBridgeCreateWithIoctl(brname); - goto cleanup; + if (err->error == -EOPNOTSUPP) { + /* fallback to ioctl if netlink doesn't support creating + * bridges + */ + rc = virNetDevBridgeCreateWithIoctl(brname); + goto cleanup; + } # endif - /* intentionally fall through if virNetDevBridgeCreateWithIoctl() - * isn't available. - */ - ATTRIBUTE_FALLTHROUGH; - default: + virReportSystemError(-err->error, _("error creating bridge interface %s"), brname);
I'll send it as a formal patch if you agree.