Eric,
How does attached look instead of the 32K?
I found it helps to let user space suggest something
larger.
cheers,
jamal
diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c
index 7b73c7c..bc982ef 100644
--- a/net/netlink/af_netlink.c
+++ b/net/netlink/af_netlink.c
@@ -1849,7 +1849,7 @@ static int netlink_recvmsg(struct socket *sock, struct
msghdr *msg, size_t len,
/* Record the max length of recvmsg() calls for future allocations */
nlk->max_recvmsg_len = max(nlk->max_recvmsg_len, len);
nlk->max_recvmsg_len = min_t(size_t, nlk->max_recvmsg_len,
- SKB_WITH_OVERHEAD(32768));
+ sk->sk_rcvbuf / 4);
copied = data_skb->len;
if (len < copied) {