net: restore gnet_stats_basic to previous definition
In 5e140dfc1f
"net: reorder struct Qdisc
for better SMP performance" the definition of struct gnet_stats_basic
changed incompatibly, as copies of this struct are shipped to
userland via netlink.
Restoring old behavior is not welcome, for performance reason.
Fix is to use a private structure for kernel, and
teach gnet_stats_copy_basic() to convert from kernel to user land,
using legacy structure (struct gnet_stats_basic)
Based on a report and initial patch from Michael Spang.
Reported-by: Michael Spang <mspang@csclub.uwaterloo.ca>
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
c6ba973b8f
commit
c1a8f1f1c8
@@ -116,7 +116,7 @@ struct hfsc_class
|
||||
struct Qdisc_class_common cl_common;
|
||||
unsigned int refcnt; /* usage count */
|
||||
|
||||
struct gnet_stats_basic bstats;
|
||||
struct gnet_stats_basic_packed bstats;
|
||||
struct gnet_stats_queue qstats;
|
||||
struct gnet_stats_rate_est rate_est;
|
||||
unsigned int level; /* class level in hierarchy */
|
||||
|
Reference in New Issue
Block a user