Re: 2.6.11-rc5 and 2.6.12: cannot transmit anything - more info

From: Tommy Christensen
Date: Thu Aug 04 2005 - 15:47:55 EST


Denis Vlasenko wrote:
Hi,

As reported earlier, sometimes my home box don't want
to send anything.

# ip r
1.1.5.5 dev tun0 proto kernel scope link src 1.1.5.6
1.1.4.0/24 dev if proto kernel scope link src 1.1.4.6
default via 1.1.5.5 dev tun0
# ping 1.1.4.1 -i 0.01

2005-08-02_19:12:18.19551 kern.info: qdisc_restart: start, q->dequeue=c03e8662
2005-08-02_19:12:19.19536 kern.info: qdisc_restart: start, q->dequeue=c03e8662

System.map:
c03e8662 t noop_dequeue

I guess this explains why I do not see calls to pfifo_fast_dequeue! :)
But how come my interface is using noop queue, is a mystery to me.

Because link is down. Or at least the kernel thinks so.

# ip l
1: if: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:0a:e6:7c:dd:79 brd ff:ff:ff:ff:ff:ff
2: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
17: tun0: <POINTOPOINT,MULTICAST,NOARP,UP> mtu 1464 qdisc pfifo_fast qlen 100
link/[65534]

As you can see, ip l reports that iface 'if' uses pfifo_fast, not noop...

Yeah, a bit confusing. pfifo_fast is the *configured* qdisc, but in this
case it is not the *active* qdisc. The qdisc is set to noop when carrier
is lost.

Any ideas?

Try tracking the calls to netif_carrier_on/off.


-Tommy
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html