[ovs-dev] [PATCH 1/5] netlink: Expose method to get Netlink pid of a socket.

Ben Pfaff blp at nicira.com
Thu Sep 22 11:39:10 PDT 2011


On Thu, Sep 22, 2011 at 11:07:43AM -0700, Jesse Gross wrote:
> Yeah, I understand the rationale for the FD-swapping and I think it
> makes sense in the context of transactions and dumps being intermixed.
>  The specific part that made me nervous is usage with multicast or
> unicast upcalls where it's important to have the right socket.  And
> since existing users already segregate asynchronous usage it's not
> really worth the extra complexity to fully handle.  Your patch below
> looks good to me.

Thanks.  I pushed it, after fixing up a comment that I noticed was
wrong:

diff --git a/lib/netlink-socket.c b/lib/netlink-socket.c
index 085918d..8f9c3d5 100644
--- a/lib/netlink-socket.c
+++ b/lib/netlink-socket.c
@@ -538,9 +538,8 @@ nl_dump_start(struct nl_dump *dump,
     dump->seq = nlmsghdr->nlmsg_seq;
     dump->buffer = NULL;
     if (sock->dump) {
-        /* 'sock' already has an ongoing dump.  Clone the socket to avoid
-         * possibly intermixing multicast messages or previous dump results
-         * with our results. */
+        /* 'sock' already has an ongoing dump.  Clone the socket because
+         * Netlink only allows one dump at a time. */
         dump->status = nl_sock_clone(sock, &dump->sock);
         if (dump->status) {
             return;



More information about the dev mailing list