> As the following patch will allow upper devices to follow the call down lower
> devices, we need to add dev here and not rely on n->dev.

How does all of this relates to neigh_alloc()? Is it being called only for the
lower devices?
I'm asking as it appears that __neigh_create() would allocates memory
based on some dev's neigh_priv_len, then propagate it via
ndo_neigh_construct() [which you change in patch 2] - looks like the current
implementers of this function assume the private entry is always theirs. E.g.,

> -static int clip_constructor(struct neighbour *neigh)
> +static int clip_constructor(struct net_device *dev, struct neighbour
> +*neigh)
>  {
>       struct atmarp_entry *entry = neighbour_priv(neigh);
> 

[Writing with absolute zero knowledge of this; perhaps this is all bollocks]

Reply via email to