Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
session: remove ipv6 lookup threading assert
[vpp.git]
/
src
/
vnet
/
session
/
session_table.h
diff --git
a/src/vnet/session/session_table.h
b/src/vnet/session/session_table.h
index
6cf8159
..
636b8d7
100644
(file)
--- a/
src/vnet/session/session_table.h
+++ b/
src/vnet/session/session_table.h
@@
-1,5
+1,5
@@
/*
/*
- * Copyright (c) 2017 Cisco and/or its affiliates.
+ * Copyright (c) 2017
-2019
Cisco and/or its affiliates.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
@@
-37,7
+37,7
@@
typedef struct _session_lookup_table
/**
* Per fib proto and transport proto session rules tables
*/
/**
* Per fib proto and transport proto session rules tables
*/
- session_rules_table_t session_rules;
+ session_rules_table_t
*
session_rules;
/** Flag that indicates if table has local scope */
u8 is_local;
/** Flag that indicates if table has local scope */
u8 is_local;
@@
-49,17
+49,17
@@
typedef struct _session_lookup_table
* byproduct of fib table ids not necessarily being the same for
* identical fib idices of v4 and v6 fib protos */
u8 active_fib_proto;
* byproduct of fib table ids not necessarily being the same for
* identical fib idices of v4 and v6 fib protos */
u8 active_fib_proto;
+ /* Required for pool_get_aligned(...) */
+ CLIB_CACHE_LINE_ALIGN_MARK (cacheline0);
} session_table_t;
#define SESSION_TABLE_INVALID_INDEX ((u32)~0)
#define SESSION_LOCAL_TABLE_PREFIX ((u32)~0)
} session_table_t;
#define SESSION_TABLE_INVALID_INDEX ((u32)~0)
#define SESSION_LOCAL_TABLE_PREFIX ((u32)~0)
-#define SESSION_INVALID_INDEX ((u32)~0)
-#define SESSION_INVALID_HANDLE ((u64)~0)
+#define SESSION_DROP_HANDLE (((u64)~0) - 1)
typedef int (*ip4_session_table_walk_fn_t) (clib_bihash_kv_16_8_t * kvp,
void *ctx);
typedef int (*ip4_session_table_walk_fn_t) (clib_bihash_kv_16_8_t * kvp,
void *ctx);
-void ip4_session_table_walk_cb (clib_bihash_kv_16_8_t * kvp, void *arg);
void ip4_session_table_walk (clib_bihash_16_8_t * hash,
ip4_session_table_walk_fn_t fn, void *arg);
void ip4_session_table_walk (clib_bihash_16_8_t * hash,
ip4_session_table_walk_fn_t fn, void *arg);
@@
-67,15
+67,18
@@
session_table_t *session_table_alloc (void);
session_table_t *session_table_get (u32 table_index);
u32 session_table_index (session_table_t * slt);
void session_table_init (session_table_t * slt, u8 fib_proto);
session_table_t *session_table_get (u32 table_index);
u32 session_table_index (session_table_t * slt);
void session_table_init (session_table_t * slt, u8 fib_proto);
+void session_table_free (session_table_t *slt, u8 fib_proto);
+
+u32 session_table_memory_size (session_table_t *st);
+u8 *format_session_table (u8 *s, va_list *args);
/* Internal, try not to use it! */
session_table_t *_get_session_tables ();
#define session_table_foreach(VAR, BODY) \
/* Internal, try not to use it! */
session_table_t *_get_session_tables ();
#define session_table_foreach(VAR, BODY) \
- pool_foreach
(VAR, _get_session_tables (), BODY)
+ pool_foreach
(VAR, _get_session_tables ()) BODY
#endif /* SRC_VNET_SESSION_SESSION_TABLE_H_ */
#endif /* SRC_VNET_SESSION_SESSION_TABLE_H_ */
-/* *INDENT-ON* */
/*
* fd.io coding-style-patch-verification: ON
*
/*
* fd.io coding-style-patch-verification: ON
*