Fix bug with glibc epoll fd
[vpp.git] / src / vcl / vcom.c
index 7558e77..327ab88 100644 (file)
@@ -1587,8 +1587,6 @@ getpeername (int fd, __SOCKADDR_ARG addr, socklen_t * __restrict len)
   if ((errno = -vcom_init ()))
     return -1;
 
-  clib_warning ("LDP<%d>: fd %d (0x%x) ", getpid (), fd, fd);
-
   if (sid != INVALID_SESSION_ID)
     {
       vppcom_endpt_t ep;
@@ -2506,7 +2504,7 @@ getsockopt (int fd, int level, int optname,
              if (VCOM_DEBUG > 1)
                clib_warning ("LDP<%d>: fd %d (0x%x): calling %s(): "
                              "sid %u (0x%x), optlen %d",
-                             getpid (), fd, fd, func_str, sid, sid, *optlen);
+                             getpid (), fd, fd, func_str, sid, sid, buflen);
              rv = vppcom_session_attr (sid, VPPCOM_ATTR_GET_RX_FIFO_LEN,
                                        optval, optlen);
              break;
@@ -3196,7 +3194,7 @@ vcom_epoll_pwait (int epfd, struct epoll_event *events,
                          getpid (), epfd, epfd, func_str,
                          libc_epfd, libc_epfd, events, maxevents, sigmask);
 
-         rv = libc_epoll_pwait (epfd, events, maxevents, 1, sigmask);
+         rv = libc_epoll_pwait (libc_epfd, events, maxevents, 1, sigmask);
          if (rv != 0)
            goto done;
        }
@@ -3209,6 +3207,8 @@ vcom_epoll_pwait (int epfd, struct epoll_event *events,
 done:
   if (VCOM_DEBUG > 3)
     {
+      if (libc_epfd > 0)
+       epfd = libc_epfd;
       if (rv < 0)
        {
          int errno_val = errno;