| 2002 | } |
| 2003 | |
| 2004 | static void |
| 2005 | xstats_reset(uint8_t dev_id, |
| 2006 | enum rte_event_dev_xstats_mode mode, |
| 2007 | uint8_t queue_port_id) |
| 2008 | { |
| 2009 | int ret; |
| 2010 | struct rte_event_dev_xstats_name *xstats_names; |
| 2011 | uint64_t *ids; |
| 2012 | int size; |
| 2013 | |
| 2014 | size = rte_event_dev_xstats_names_get(dev_id, |
| 2015 | mode, |
| 2016 | queue_port_id, |
| 2017 | NULL, /* names */ |
| 2018 | NULL, /* ids */ |
| 2019 | 0); /* num */ |
| 2020 | |
| 2021 | if (size < 0) |
| 2022 | rte_panic("rte_event_dev_xstats_names_get err %d\n", size); |
| 2023 | |
| 2024 | if (size == 0) { |
| 2025 | printf( |
| 2026 | "No stats available for this item, mode=%d, queue_port_id=%d\n", |
| 2027 | mode, queue_port_id); |
| 2028 | return; |
| 2029 | } |
| 2030 | |
| 2031 | /* Get memory to hold stat names, IDs, and values */ |
| 2032 | xstats_names = malloc(sizeof(struct rte_event_dev_xstats_name) * (unsigned int)size); |
| 2033 | ids = malloc(sizeof(unsigned int) * size); |
| 2034 | |
| 2035 | if (!xstats_names || !ids) |
| 2036 | rte_panic("unable to alloc memory for stats retrieval\n"); |
| 2037 | |
| 2038 | ret = rte_event_dev_xstats_names_get(dev_id, mode, queue_port_id, |
| 2039 | xstats_names, ids, |
| 2040 | (unsigned int)size); |
| 2041 | if (ret != size) |
| 2042 | rte_panic("rte_event_dev_xstats_names_get err %d\n", ret); |
| 2043 | |
| 2044 | rte_event_dev_xstats_reset(dev_id, mode, queue_port_id, |
| 2045 | ids, size); |
| 2046 | |
| 2047 | free(xstats_names); |
| 2048 | free(ids); |
| 2049 | |
| 2050 | } |
| 2051 | |
| 2052 | static unsigned int |
| 2053 | eventdev_xstats(void) |
no test coverage detected