On 12/07/2018 01:49 PM, David Ahern wrote:
> From: David Ahern <dsah...@gmail.com>
>
> Similar to routes and rules, add protocol attribute to neighbor entries
> for easier tracking of how each was created.
>
> Signed-off-by: David Ahern <dsah...@gmail.com>
> ---
> include/net/neighbour.h | 2 ++
> include/uapi/linux/neighbour.h | 1 +
> net/core/neighbour.c | 24 +++++++++++++++++++++++-
> 3 files changed, 26 insertions(+), 1 deletion(-)
>
> diff --git a/include/net/neighbour.h b/include/net/neighbour.h
> index 6c13072910ab..e93c59df9501 100644
> --- a/include/net/neighbour.h
> +++ b/include/net/neighbour.h
> @@ -149,6 +149,7 @@ struct neighbour {
> __u8 nud_state;
> __u8 type;
> __u8 dead;
> + u8 protocol;
> seqlock_t ha_lock;
> unsigned char ha[ALIGN(MAX_ADDR_LEN, sizeof(unsigned long))];
This looks like ha[] alignment would change, I am not sure how critical it is.
> struct hh_cache hh;
> @@ -173,6 +174,7 @@ struct pneigh_entry {
> possible_net_t net;
> struct net_device *dev;
> u8 flags;
> + u8 protocol;
> u8 key[0];
> };
>