2002-08-20 11:43:09

by Ravikiran G Thirumalai

[permalink] [raw]
Subject: Question regarding Qdisc.stats

Where do the Qdisc.stats show up? in /proc? (Assuming CONFIG_NET_SCHED is
not defined) I can see that it is copied to the skb from
qdisc_copy_stats with 'TCA_STATS' attribute, but where is it being
reported? or what is it being used for ?? Specifically, does
Qdisc.stats.drops get reported anywere?

While I am at it, I see that qdisc->enqueue routines kfree the skb with the
dev->queue_lock held (when the enqueue routine drops the packet --
NET_XMIT_DROP) from dev_queue_xmit. kfree_skb can be done outside the
lock.... right? I can make a patch for this if I am not missing something.....

TIA
Kiran


2002-09-16 01:09:16

by Werner Almesberger

[permalink] [raw]
Subject: Re: Question regarding Qdisc.stats

Ravikiran G Thirumalai wrote:
> Where do the Qdisc.stats show up? in /proc?

No, only on (rt)netlink.

> (Assuming CONFIG_NET_SCHED is not defined)

In this case, the statistics are not usefully accessible. The
tx_dropped you get with ifconfig (or such) comes from the device
level, not the traffic control subsystem.

> qdisc_copy_stats with 'TCA_STATS' attribute, but where is it being
> reported? or what is it being used for ?? Specifically, does
> Qdisc.stats.drops get reported anywere?

Yep, e.g. in iproute2/tc/tc_qdisc.c:print_tcstats

> While I am at it, I see that qdisc->enqueue routines kfree the skb with the
> dev->queue_lock held (when the enqueue routine drops the packet --
> NET_XMIT_DROP) from dev_queue_xmit. kfree_skb can be done outside the
> lock.... right? I can make a patch for this if I am not missing something.....

That certainly sounds good to me.

- Werner

--
_________________________________________________________________________
/ Werner Almesberger, Buenos Aires, Argentina [email protected] /
/_http://www.almesberger.net/____________________________________________/