forked from ~ljy/RK356X_SDK_RELEASE

hc
2023-12-11 1f93a7dfd1f8d5ff7a5c53246c7534fe2332d6f4
kernel/include/net/gen_stats.h
....@@ -8,10 +8,16 @@
88 #include <linux/pkt_sched.h>
99 #include <net/net_seq_lock.h>
1010
11
+/* Note: this used to be in include/uapi/linux/gen_stats.h */
12
+struct gnet_stats_basic_packed {
13
+ __u64 bytes;
14
+ __u64 packets;
15
+};
16
+
1117 struct gnet_stats_basic_cpu {
1218 struct gnet_stats_basic_packed bstats;
1319 struct u64_stats_sync syncp;
14
-};
20
+} __aligned(2 * sizeof(u64));
1521
1622 struct net_rate_estimator;
1723
....@@ -45,6 +51,10 @@
4551 struct gnet_stats_basic_packed *bstats,
4652 struct gnet_stats_basic_cpu __percpu *cpu,
4753 struct gnet_stats_basic_packed *b);
54
+int gnet_stats_copy_basic_hw(net_seqlock_t *running,
55
+ struct gnet_dump *d,
56
+ struct gnet_stats_basic_cpu __percpu *cpu,
57
+ struct gnet_stats_basic_packed *b);
4858 int gnet_stats_copy_rate_est(struct gnet_dump *d,
4959 struct net_rate_estimator __rcu **ptr);
5060 int gnet_stats_copy_queue(struct gnet_dump *d,