From c6d574d9fd42e96a5c04ce94a4758b9714e07a78 Mon Sep 17 00:00:00 2001 From: Greg Rose Date: Mon, 5 Sep 2011 17:11:40 +0200 Subject: rtnetlink: Compute and store minimum ifinfo dump size [The patch changes the API of the netlink_dump_start interface: port it to the standalone ipset package.] The message size allocated for rtnl ifinfo dumps was limited to a single page. This is not enough for additional interface info available with devices that support SR-IOV and caused a bug in which VF info would not be displayed if more than approximately 40 VFs were created per interface. Implement a new function pointer for the rtnl_register service that will calculate the amount of data required for the ifinfo dump and allocate enough data to satisfy the request. Signed-off-by: Greg Rose Signed-off-by: Jeff Kirsher --- kernel/net/netfilter/ipset/ip_set_core.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'kernel/net') diff --git a/kernel/net/netfilter/ipset/ip_set_core.c b/kernel/net/netfilter/ipset/ip_set_core.c index 8571979..e9169e8 100644 --- a/kernel/net/netfilter/ipset/ip_set_core.c +++ b/kernel/net/netfilter/ipset/ip_set_core.c @@ -1172,7 +1172,11 @@ ip_set_dump(struct sock *ctnl, struct sk_buff *skb, return netlink_dump_start(ctnl, skb, nlh, ip_set_dump_start, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 1, 0) ip_set_dump_done); +#else + ip_set_dump_done, 0); +#endif } /* Add, del and test */ -- cgit v1.2.3