* jamal <1096426464.1045.133.camel@xxxxxxxxxxxxxxxx> 2004-09-28 22:54
> Lets do it on gnet stats though so we can make it more accessible.
> I think your granularity maybe too thin: bytes,packets, drops
> may need to be in the same TLV.
I partially agree as long as no structs visible to userspace will
ever change after introduction.
I'd really like to avoid maintaining different structs for collection
and transfer which must be kept in sync.
Having the application do its own struct and fill it based on
if (tb[TCA_STATS_*]) conditions avoids all possible compatibility
issues. It would be possible for the application to choose between
the original and a _64 variant if we ever introduce them.
So this would be my approach:
Leave gnet_stats as-is and extend it as needed but hide it from
userspace.
Extend gen_copy_stats to add a nested TLV for every stat in
the structure. We could even introduce a bitmap to allow the
struct gnet_stats user to define which statistics are defined
and which aren't. This way we could avoid the mess with pfifo
and bfifo both using backlog but with a different unit in mind
(packets/bytes).
> do you have cycles to run with that patch?
Yes, it is related to my work so it's not a problem.
|