On 7/18/2012 11:42 PM, Jiri Pirko wrote:
Thu, Jul 19, 2012 at 12:05:44AM CEST, john.r.fastabend@intel.com wrote:
quoted
This adds support to allow virtual net devices to be created. These
devices can be managed independtly of the physical function but
use the same physical link.
[...]
quoted
+
+size_t vmdq_getpriv_size(struct net *src_net, struct nlattr *tb[])
+{
+ struct net_device *lowerdev;
+
+ if (!tb[IFLA_LINK])
+ return -EINVAL;
+
+ lowerdev = __dev_get_by_index(src_net, nla_get_u32(tb[IFLA_LINK]));
+ if (!lowerdev)
+ return -ENODEV;
+
+ return sizeof(netdev_priv(lowerdev));
+}
Why exactly do you need to have the priv of same size as lowerdev? I do
not see you use that anywhere...
When we add a child device the hardware/sw may have some private data
it needs to manage this device.
I made an assumption here that the priv space for child devices is the
same as the lowerdev but this might be a bad assumption.
.John