[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#511747: linux-image-2.6.24-etchnhalf.1-amd64: unresponsible for some time when removing qdisc



Package: linux-image-2.6.24-etchnhalf.1-amd64
Version: 2.6.24-6~etchnhalf.7
Severity: important

When I delete whole qdisc with iproute command
# tc qdisc del dev eth0 root
the system don't respond for some time.

It is apparent only when more classes are in use. Here is a sample script, which can reproduce that:

#!/bin/bash
tc qdisc add dev eth0 root handle 1:0 htb
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 20Mbit
for i in $(seq 2 9999); do
  tc class add dev eth0 parent 1:1 classid 1:$i htb rate 450kbit
  #tc qdisc add dev eth0 parent 1:$i handle $i: htb
  #tc class add dev eth0 parent $i: classid $i:1 htb rate 450kbit
  #tc class add dev eth0 parent $i:1 classid $i:ff htb rate 5kbit
done


After running it, when running
# tc qdisc del dev eth0 root
whole machine is unusable for some time, part of output from fping pinging this machine (fping -l 10.0.1.93):
10.0.1.93 : [648], 96 bytes, 5.30 ms (7.57 avg, 0% loss)
10.0.1.93 : [649], 96 bytes, 1491 ms (9.86 avg, 0% loss)
10.0.1.93 : [650], 96 bytes, 483 ms (10.5 avg, 0% loss)
10.0.1.93 : [651], 96 bytes, 6.69 ms (10.5 avg, 0% loss)

This is only sample to quickly reproduce the bug, when shaping for 3000 customers, I could notice more then a minute hang-up.

On testing 2.6.26-1-686 there is the same bug.

I also tried 2.6.18-6-amd64 Linux from stable, where it is all right (but it is not usable on multiprocessor systems - bug 506799).

When hanged for longer time, it produces messages i dmesg:

BUG: soft lockup - CPU#3 stuck for 11s! [tc:8086]
CPU 3:
Modules linked in: ipt_MASQUERADE iptable_nat nf_nat iptable_filter sch_ingress cls_u32 nf_conntrack_ipv4 xt_CON NMARK nf_conntrack xt_multiport xt_mark xt_MARK cls_fw sch_sfq sch_htb iptable_mangle ip_tables x_tables ac batt ery ipv6 dm_snapshot dm_mirror dm_mod loop serio_raw i2c_i801 container button shpchp psmouse pci_hotplug iTCO_w dt i2c_core evdev pcspkr ext3 jbd mbcache sd_mod ata_generic usbhid hid ata_piix libata scsi_mod generic ide_cor
e uhci_hcd ehci_hcd e1000 thermal processor fan
Pid: 8086, comm: tc Not tainted 2.6.24-etchnhalf.1-amd64 #1
RIP: 0010:[<ffffffff803aabc3>] [<ffffffff803aabc3>] gen_kill_estimator+0x97/0xbd
RSP: 0018:ffff8100771a3908  EFLAGS: 00000287
RAX: ffff810077493910 RBX: ffff8100775128c0 RCX: ffff810077493910
RDX: ffff810077493910 RSI: ffff810077493944 RDI: ffff810077493920
RBP: ffff81000000c700 R08: ffff810037960810 R09: ffff8100774920c0
R10: ffffffff803aabbc R11: ffffffff803c2244 R12: 0000000000000082
R13: ffff81007fd15a48 R14: ffff81007dfd7b40 R15: ffffffff8027509d
FS:  00002ad7a722bae0(0000) GS:ffff81007dfd7ac0(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
CR2: 0000000000421810 CR3: 00000000798d2000 CR4: 00000000000006e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400

Call Trace:
 [<ffffffff803a70e2>] skb_dequeue+0x48/0x50
 [<ffffffff803bd992>] qdisc_destroy+0x55/0xa2
 [<ffffffff882115a3>] :sch_htb:htb_destroy_class+0x4e/0x15a
 [<ffffffff882115e6>] :sch_htb:htb_destroy_class+0x91/0x15a
 [<ffffffff882115e6>] :sch_htb:htb_destroy_class+0x91/0x15a
 [<ffffffff88211fce>] :sch_htb:htb_destroy+0x39/0x7d
 [<ffffffff803bd9ae>] qdisc_destroy+0x71/0xa2
 [<ffffffff882115a3>] :sch_htb:htb_destroy_class+0x4e/0x15a
 [<ffffffff882115e6>] :sch_htb:htb_destroy_class+0x91/0x15a
 [<ffffffff882115e6>] :sch_htb:htb_destroy_class+0x91/0x15a
 [<ffffffff88211fce>] :sch_htb:htb_destroy+0x39/0x7d
 [<ffffffff803bd9ae>] qdisc_destroy+0x71/0xa2
 [<ffffffff803bf65e>] tc_get_qdisc+0x180/0x1c4
 [<ffffffff803b5ec1>] rtnetlink_rcv_msg+0x0/0x1dd
 [<ffffffff803c40a2>] netlink_rcv_skb+0x34/0x8b
 [<ffffffff803b5ebb>] rtnetlink_rcv+0x18/0x1e
 [<ffffffff803c3e42>] netlink_unicast+0x1e0/0x240
 [<ffffffff803a7d20>] __alloc_skb+0x7f/0x12d
 [<ffffffff803c46f4>] netlink_sendmsg+0x2bf/0x2d2
 [<ffffffff803a2027>] sock_sendmsg+0xe2/0xff
 [<ffffffff802481fe>] autoremove_wake_function+0x0/0x2e
 [<ffffffff802481fe>] autoremove_wake_function+0x0/0x2e
 [<ffffffff80271c5f>] find_lock_page+0x1f/0x7f
 [<ffffffff80273a94>] filemap_fault+0x1c1/0x30b
 [<ffffffff803a2258>] sys_sendmsg+0x214/0x287
 [<ffffffff80312ee3>] __up_read+0x13/0x8a
 [<ffffffff80223620>] do_page_fault+0x38e/0x702
 [<ffffffff803a317d>] sys_getsockname+0x7a/0xaa
 [<ffffffff8020be2e>] system_call+0x7e/0x83

BUG: soft lockup - CPU#0 stuck for 11s! [swapper:0]
CPU 0:
Modules linked in: ipt_MASQUERADE iptable_nat nf_nat iptable_filter sch_ingress cls_u32 nf_conntrack_ipv4 xt_CON NMARK nf_conntrack xt_multiport xt_mark xt_MARK cls_fw sch_sfq sch_htb iptable_mangle ip_tables x_tables ac batt ery ipv6 dm_snapshot dm_mirror dm_mod loop serio_raw i2c_i801 container button shpchp psmouse pci_hotplug iTCO_w dt i2c_core evdev pcspkr ext3 jbd mbcache sd_mod ata_generic usbhid hid ata_piix libata scsi_mod generic ide_cor
e uhci_hcd ehci_hcd e1000 thermal processor fan
Pid: 0, comm: swapper Not tainted 2.6.24-etchnhalf.1-amd64 #1
RIP: 0010:[<ffffffff80416037>]  [<ffffffff80416037>] _spin_lock+0x5/0xf
RSP: 0018:ffffffff805aadb8  EFLAGS: 00000286
RAX: 0000000000001202 RBX: ffff8100378e7000 RCX: 0000000000000000
RDX: 0000000000000002 RSI: ffff8100378e7000 RDI: ffff8100378e72b8
RBP: ffffffff805aad30 R08: ffff810073cf9212 R09: ffff8100754ab9c0
R10: 0000000000000000 R11: 0000000000000000 R12: ffffffff8020ca66
R13: 0000000000000000 R14: ffff8100754ab9c0 R15: ffffffff803e7088
FS:  0000000000000000(0000) GS:ffffffff80514000(0000) knlGS:0000000000000000
CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
CR2: 00000000005b2b50 CR3: 0000000000201000 CR4: 00000000000006e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400

Call Trace:
 <IRQ>  [<ffffffff803ac5da>] netif_receive_skb+0x21e/0x3c0
 [<ffffffff8801dc11>] :e1000:e1000_clean_rx_irq+0x404/0x4ed
 [<ffffffff8801af44>] :e1000:e1000_clean+0x72/0x211
 [<ffffffff8024b06e>] hrtimer_get_next_event+0x9b/0xaa
 [<ffffffff803ae807>] net_rx_action+0x9e/0x18c
 [<ffffffff8023a981>] __do_softirq+0x55/0xc3
 [<ffffffff8020cfbc>] call_softirq+0x1c/0x28
 [<ffffffff8020ec12>] do_softirq+0x2c/0x7d
 [<ffffffff8023a8e7>] irq_exit+0x3f/0x84
 [<ffffffff8020ee42>] do_IRQ+0xb6/0xd4
 [<ffffffff8020b1da>] mwait_idle+0x0/0x46
 [<ffffffff8020c341>] ret_from_intr+0x0/0xa
 <EOI>  [<ffffffff8020b21c>] mwait_idle+0x42/0x46
 [<ffffffff8020b16a>] cpu_idle+0x90/0xbb
 [<ffffffff80556a81>] start_kernel+0x2d9/0x2e5
 [<ffffffff8055611d>] _sinittext+0x11d/0x124

Thanks for help
Jindrich Vrba


-- Package-specific info:

-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.24-etchnhalf.1-amd64



Reply to: