| /* |
| * Copyright (c) 2014, 2016 The Linux Foundation. All rights reserved. |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License version 2 and |
| * only version 2 as published by the Free Software Foundation. |
| * |
| * This program is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| * GNU General Public License for more details. |
| * |
| * |
| * RMNET Data statistics |
| * |
| */ |
| |
| #ifndef _RMNET_DATA_STATS_H_ |
| #define _RMNET_DATA_STATS_H_ |
| |
| enum rmnet_skb_free_e { |
| RMNET_STATS_SKBFREE_UNKNOWN, |
| RMNET_STATS_SKBFREE_BRDG_NO_EGRESS, |
| RMNET_STATS_SKBFREE_DELIVER_NO_EP, |
| RMNET_STATS_SKBFREE_IPINGRESS_NO_EP, |
| RMNET_STATS_SKBFREE_MAPINGRESS_BAD_MUX, |
| RMNET_STATS_SKBFREE_MAPINGRESS_MUX_NO_EP, |
| RMNET_STATS_SKBFREE_MAPINGRESS_AGGBUF, |
| RMNET_STATS_SKBFREE_INGRESS_NOT_EXPECT_MAPD, |
| RMNET_STATS_SKBFREE_INGRESS_NOT_EXPECT_MAPC, |
| RMNET_STATS_SKBFREE_EGR_MAPFAIL, |
| RMNET_STATS_SKBFREE_VND_NO_EGRESS, |
| RMNET_STATS_SKBFREE_MAPC_BAD_MUX, |
| RMNET_STATS_SKBFREE_MAPC_MUX_NO_EP, |
| RMNET_STATS_SKBFREE_AGG_CPY_EXPAND, |
| RMNET_STATS_SKBFREE_AGG_INTO_BUFF, |
| RMNET_STATS_SKBFREE_DEAGG_MALFORMED, |
| RMNET_STATS_SKBFREE_DEAGG_CLONE_FAIL, |
| RMNET_STATS_SKBFREE_DEAGG_UNKNOWN_IP_TYPE, |
| RMNET_STATS_SKBFREE_DEAGG_DATA_LEN_0, |
| RMNET_STATS_SKBFREE_INGRESS_BAD_MAP_CKSUM, |
| RMNET_STATS_SKBFREE_MAPC_UNSUPPORTED, |
| RMNET_STATS_SKBFREE_MAX |
| }; |
| |
| enum rmnet_queue_xmit_e { |
| RMNET_STATS_QUEUE_XMIT_UNKNOWN, |
| RMNET_STATS_QUEUE_XMIT_EGRESS, |
| RMNET_STATS_QUEUE_XMIT_AGG_FILL_BUFFER, |
| RMNET_STATS_QUEUE_XMIT_AGG_TIMEOUT, |
| RMNET_STATS_QUEUE_XMIT_AGG_CPY_EXP_FAIL, |
| RMNET_STATS_QUEUE_XMIT_AGG_SKIP, |
| RMNET_STATS_QUEUE_XMIT_MAX |
| }; |
| |
| void rmnet_kfree_skb(struct sk_buff *skb, unsigned int reason); |
| void rmnet_stats_queue_xmit(int rc, unsigned int reason); |
| void rmnet_stats_deagg_pkts(int aggcount); |
| void rmnet_stats_agg_pkts(int aggcount); |
| void rmnet_stats_dl_checksum(unsigned int rc); |
| void rmnet_stats_ul_checksum(unsigned int rc); |
| #endif /* _RMNET_DATA_STATS_H_ */ |