blob: d488ae7d788cdbcfdffd655744f911edfd8c536b [file] [log] [blame]
/*
******************************************************************************
* Copyright (c) 2019, The Linux Foundation. All rights reserved.
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
* above copyright notice and this permission notice appear in all copies.
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
* OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
* ****************************************************************************
*/
#ifndef __NSS_TSTAMP_STATS_H
#define __NSS_TSTAMP_STATS_H
#include <nss_cmn.h>
/**
* TSTAMP node statistics
*/
enum nss_tstamp_stats_types {
NSS_TSTAMP_STATS_BOOMERANGED = NSS_STATS_NODE_MAX,
/**< Number of boomeranged packets. */
NSS_TSTAMP_STATS_DROPPED_FAIL_ENQUEUE,
/**< Number of failed enqueue drops. */
NSS_TSTAMP_STATS_DROPPED_FAIL_ALLOC,
/**< Number of failed allocation drops. */
NSS_TSTAMP_STATS_DROPPED_FAIL_COPY,
/**< Number of failed copy drops. */
NSS_TSTAMP_STATS_DROPPED_NO_INTERFACE,
/**< Number of failed no interface drops. */
NSS_TSTAMP_STATS_DROPPED_NO_HEADROOM,
/**< Number of failed no headroom drops. */
NSS_TSTAMP_STATS_MAX,
};
/*
* TSTAMP statistics APIs
*/
extern void nss_tstamp_stats_sync(struct nss_ctx_instance *nss_ctx, struct nss_tstamp_stats_msg *nts, uint32_t interface);
extern void nss_tstamp_stats_dentry_create(void);
#endif /* __NSS_TSTAMP_STATS_H */