]>
Commit | Line | Data |
---|---|---|
187d0738 | 1 | /* SPDX-License-Identifier: GPL-2.0 |
2 | * | |
3 | * Copyright (c) 2019 Facebook | |
4 | * | |
5 | * This program is free software; you can redistribute it and/or | |
6 | * modify it under the terms of version 2 of the GNU General Public | |
7 | * License as published by the Free Software Foundation. | |
8 | * | |
9 | * Include file for Host Bandwidth Management (HBM) programs | |
10 | */ | |
11 | struct hbm_vqueue { | |
12 | struct bpf_spin_lock lock; | |
13 | /* 4 byte hole */ | |
14 | unsigned long long lasttime; /* In ns */ | |
15 | int credit; /* In bytes */ | |
16 | unsigned int rate; /* In bytes per NS << 20 */ | |
17 | }; | |
18 | ||
19 | struct hbm_queue_stats { | |
20 | unsigned long rate; /* in Mbps*/ | |
21 | unsigned long stats:1, /* get HBM stats (marked, dropped,..) */ | |
ffd81558 | 22 | loopback:1, /* also limit flows using loopback */ |
23 | no_cn:1; /* do not use cn flags */ | |
187d0738 | 24 | unsigned long long pkts_marked; |
25 | unsigned long long bytes_marked; | |
26 | unsigned long long pkts_dropped; | |
27 | unsigned long long bytes_dropped; | |
28 | unsigned long long pkts_total; | |
29 | unsigned long long bytes_total; | |
30 | unsigned long long firstPacketTime; | |
31 | unsigned long long lastPacketTime; | |
d58c6f72 | 32 | unsigned long long pkts_ecn_ce; |
33 | unsigned long long returnValCount[4]; | |
34 | unsigned long long sum_cwnd; | |
35 | unsigned long long sum_rtt; | |
36 | unsigned long long sum_cwnd_cnt; | |
37 | long long sum_credit; | |
187d0738 | 38 | }; |