summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Rose <gregory.v.rose@intel.com>2011-09-05 17:11:40 +0200
committerJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2011-09-05 17:11:40 +0200
commitc6d574d9fd42e96a5c04ce94a4758b9714e07a78 (patch)
treec1838082f9f478d79aefa22b18fd0cf82139a72e
parent7eb8ca4961f5189ede9492b072bd517434c53c74 (diff)
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 <gregory.v.rose@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-rw-r--r--kernel/net/netfilter/ipset/ip_set_core.c4
1 files changed, 4 insertions, 0 deletions
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 */