On Mar 15, 2012, at 8:30 PM, Ben Pfaff wrote:

> +#ifndef SO_RCVBUFFORCE
> +#define SO_RCVBUFFORCE 33
> +#endif

It seems like on some platforms, this is defined to be other values.  For 
example, this appears to be the definition on SPARC:

#define SO_RCVBUFFORCE  0x100b

> @@ -122,6 +126,13 @@ nl_sock_create(int protocol, struct nl_sock **sockp)
>     sock->protocol = protocol;
>     sock->dump = NULL;
> 
> +    rcvbuf = 1024 * 1024;
> +    if (setsockopt(sock->fd, SOL_SOCKET, SO_RCVBUFFORCE,
> +                   &rcvbuf, sizeof rcvbuf)) {
> +        VLOG_WARN_RL(&rl, "setting %d-byte socket receive buffer failed 
> (%s)",
> +                     rcvbuf, strerror(errno));
> +    }

It appears that this increase will happen for anything created with 
nl_sock_create(), of which there are a few things now.  Would it make sense to 
make this an optional argument to nl_sock_create()?  (Not necessarily right at 
this moment, of course.)

Thanks for the quick turnaround on this!

--Justin


_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to