Tue, Jul 05, 2016 at 01:03:36PM CEST, yuval.mi...@qlogic.com wrote: >> 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?
This is called for all neighs. >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., neigh_priv_len does not take stacked devices into account. > >> -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] Better to study the code first before you comment, next time.