The implementation private sits right after the primary_key memory.

Signed-off-by: David S. Miller <[email protected]>
---
 include/net/neighbour.h |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/include/net/neighbour.h b/include/net/neighbour.h
index 4ba8521..8ff9143 100644
--- a/include/net/neighbour.h
+++ b/include/net/neighbour.h
@@ -178,6 +178,13 @@ struct neigh_table {
        struct pneigh_entry     **phash_buckets;
 };
 
+#define NEIGH_PRIV_ALIGN       sizeof(long long)
+
+static inline void *neighbour_priv(const struct neighbour *n)
+{
+       return (char *)n + ALIGN(sizeof(*n) + n->tbl->key_len, 
NEIGH_PRIV_ALIGN);
+}
+
 /* flags for neigh_update() */
 #define NEIGH_UPDATE_F_OVERRIDE                        0x00000001
 #define NEIGH_UPDATE_F_WEAK_OVERRIDE           0x00000002
-- 
1.7.6

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to