Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
STATS: Separate socket for fd exchange.
[vpp.git]
/
src
/
vpp
/
stats
/
stats.h
diff --git
a/src/vpp/stats/stats.h
b/src/vpp/stats/stats.h
index
fd1ab27
..
3b6f781
100644
(file)
--- a/
src/vpp/stats/stats.h
+++ b/
src/vpp/stats/stats.h
@@
-29,6
+29,9
@@
#include <svm/queue.h>
#include <svm/ssvm.h>
#include <svm/queue.h>
#include <svm/ssvm.h>
+/* Default socket to exchange segment fd */
+#define STAT_SEGMENT_SOCKET_FILE "/run/vpp/stats.sock"
+
typedef struct
{
volatile u32 lock;
typedef struct
{
volatile u32 lock;
@@
-162,10
+165,26
@@
typedef struct
ssvm_private_t stat_segment;
uword *counter_vector_by_name;
clib_spinlock_t *stat_segment_lockp;
ssvm_private_t stat_segment;
uword *counter_vector_by_name;
clib_spinlock_t *stat_segment_lockp;
+ clib_socket_t *socket;
+ u8 *socket_name;
- /* Pointers to scalar stats maintained by the stat
segment process
*/
+ /* Pointers to scalar stats maintained by the stat
thread
*/
f64 *input_rate_ptr;
f64 *input_rate_ptr;
+ f64 *last_runtime_ptr;
+ f64 *last_runtime_stats_clear_ptr;
f64 *vector_rate_ptr;
f64 *vector_rate_ptr;
+ u64 last_input_packets;
+
+ /* Pointers to vector stats maintained by the stat thread */
+ u8 *serialized_nodes;
+ vlib_main_t **stat_vms;
+ vlib_node_t ***node_dups;
+
+ f64 *vectors_per_node;
+ f64 *vector_rate_in;
+ f64 *vector_rate_out;
+ f64 *vector_rate_drop;
+ f64 *vector_rate_punt;
/* convenience */
vlib_main_t *vlib_main;
/* convenience */
vlib_main_t *vlib_main;
@@
-187,6
+206,7
@@
typedef enum
STAT_DIR_TYPE_VECTOR_POINTER,
STAT_DIR_TYPE_COUNTER_VECTOR,
STAT_DIR_TYPE_ERROR_INDEX,
STAT_DIR_TYPE_VECTOR_POINTER,
STAT_DIR_TYPE_COUNTER_VECTOR,
STAT_DIR_TYPE_ERROR_INDEX,
+ STAT_DIR_TYPE_SERIALIZED_NODES,
} stat_directory_type_t;
typedef struct
} stat_directory_type_t;
typedef struct
@@
-195,6
+215,8
@@
typedef struct
void *value;
} stat_segment_directory_entry_t;
void *value;
} stat_segment_directory_entry_t;
+void do_stat_segment_updates (stats_main_t * sm);
+
#endif /* __included_stats_h__ */
/*
#endif /* __included_stats_h__ */
/*