Bug 213221 - emulators/qemu: rdma.c:935:35: error: incomplete definition of type 'struct rdma_addrinfo'
Summary: emulators/qemu: rdma.c:935:35: error: incomplete definition of type 'struct r...
Status: Closed Overcome By Events
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Muhammad Moinur Rahman
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-10-05 06:34 UTC by O. Hartmann
Modified: 2018-01-08 20:04 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (bofh)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description O. Hartmann 2016-10-05 06:34:34 UTC
I get haunted by an error on 12-CURRENT, which prevents me from installing or building (poudriere) QEMU on 12-CURRENT:

[...]
  CC    net/util.o
migration/rdma.c:805:26: warning: unused variable 'port_attr' [-Wunused-variable]
    struct ibv_port_attr port_attr;
                         ^
migration/rdma.c:929:11: warning: implicit declaration of function 'rdma_getaddrinfo' is invalid in C99 [-Wimplicit-function-declaration]
    ret = rdma_getaddrinfo(rdma->host, port_str, NULL, &res);
          ^
migration/rdma.c:935:35: error: incomplete definition of type 'struct rdma_addrinfo'
    for (e = res; e != NULL; e = e->ai_next) {
                                 ~^
migration/rdma.c:901:12: note: forward declaration of 'struct rdma_addrinfo'
    struct rdma_addrinfo *res;
           ^
migration/rdma.c:936:20: error: incomplete definition of type 'struct rdma_addrinfo'
        inet_ntop(e->ai_family,
                  ~^
migration/rdma.c:901:12: note: forward declaration of 'struct rdma_addrinfo'
    struct rdma_addrinfo *res;
           ^
migration/rdma.c:937:39: error: incomplete definition of type 'struct rdma_addrinfo'
            &((struct sockaddr_in *) e->ai_dst_addr)->sin_addr, ip, sizeof ip);
                                     ~^
migration/rdma.c:901:12: note: forward declaration of 'struct rdma_addrinfo'
    struct rdma_addrinfo *res;
           ^
migration/rdma.c:940:53: error: incomplete definition of type 'struct rdma_addrinfo'
        ret = rdma_resolve_addr(rdma->cm_id, NULL, e->ai_dst_addr,
[...]


I have this error on several boxes - all showing the same error on very different building environments.
Comment 1 Muhammad Moinur Rahman freebsd_committer freebsd_triage 2017-03-10 13:36:57 UTC
Hi,
Is this reproducible after upgrading to 2.8.0?
Comment 2 O. Hartmann 2017-03-11 11:39:01 UTC
(In reply to Muhammad Moinur Rahman from comment #1)
This error is still existent even after the upgrade to 2.8. The port neither builds the traditional way via make, nor does it on two poudriere hosts.
Comment 3 Muhammad Moinur Rahman freebsd_committer freebsd_triage 2017-03-11 12:51:17 UTC
(In reply to O. Hartmann from comment #2)
Hi,
Can you share your OS Version and poudriere version. I can't reproduce it in any of my poudriere builder neither in any HEAD.
Comment 4 Walter Schwarzenfeld 2017-03-11 14:03:18 UTC
In work/qemu-2.8.0/ui/egl-helpers.c exists another error:

i/egl-helpers.c:55:30: error: use of undeclared identifier 'O_CLOEXEC'
        r = open(p, O_RDWR | O_CLOEXEC | O_NOCTTY | O_NONBLOCK);
Comment 5 Walter Schwarzenfeld 2017-03-11 14:29:41 UTC
Forgot: on 10.3-RELEASE-p17 amd64
Comment 6 O. Hartmann 2017-03-11 17:54:21 UTC
FreeBSD 12.0-CURRENT #26 r315059: Sat Mar 11 08:38:09 CET 2017 amd64

Just updated the poudriere jail on this very same version. The poudriere port itself is most recent taken from ports tree.
Comment 7 Muhammad Moinur Rahman freebsd_committer freebsd_triage 2017-03-11 20:48:07 UTC
(In reply to O. Hartmann from comment #6)
http://pdr.bofh.network/data/latest-per-pkg/qemu/2.8.0/
Comment 8 O. Hartmann 2018-01-08 20:04:00 UTC
The correct (and logical) reason for closing would be: Overcome by events. Can not reproduce is non-sense in this context.