Bug 43901

Summary: Packet Dropping when attach TBF to PRIO qdisc
Product: Networking Reporter: Lucas Bocchi (lucas.bocchi)
Component: IPV4Assignee: Stephen Hemminger (stephen)
Status: RESOLVED OBSOLETE    
Severity: normal CC: alan
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 3.4.4 Subsystem:
Regression: No Bisected commit-id:
Attachments: Kernel config file

Description Lucas Bocchi 2012-06-27 12:14:27 UTC
Created attachment 74371 [details]
Kernel config file

Friends

When I do a upgrade in one server kernel with 2.6.32.5 kernel to actual 3.4.4 kernel, my TBF qdisc attached to a PRIO qdisc stops to work.

The first classes won't have any heavy traffic to justify the starvation of another classes, but packets are dropped with 

See some information about the bug
Gnu C                  4.7
Gnu make               3.81
binutils               2.22
util-linux             2.20.1
mount                  support
module-init-tools      8
e2fsprogs              1.42.4
PPP                    2.4.5
Linux C Library        2.13
Dynamic linker (ldd)   2.13
Procps                 3.3.2
Net-tools              1.60
Kbd                    1.15.3
Sh-utils               8.13
Modules Loaded         sch_tbf xt_mark xt_mac xt_state xt_connmark cls_fw cls_u32 sch_prio sha1_ssse3 sha1_generic arc4 ecb ppp_mppe ppp_async crc_ccitt ppp_generic slhc xt_tcpudp ipt_MASQUERADE iptable_mangle iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_conntrack iptable_filter ip_tables x_tables nfsd exportfs nfs nfs_acl auth_rpcgss lockd sunrpc ipv6 loop snd_hda_codec_via iTCO_wdt snd_hda_intel snd_hda_codec acpi_cpufreq mperf freq_table coretemp intel_agp intel_gtt rng_core snd_pcm evdev rtc_cmos i2c_i801 snd_page_alloc i2c_core pcspkr snd_timer processor snd microcode soundcore button ext3 mbcache jbd sr_mod cdrom ata_generic sd_mod pata_acpi usb_storage uas ata_piix thermal thermal_sys uhci_hcd libata scsi_mod r8169 mii piix ide_pci_generic ide_core ehci_hcd


The TC commands
tc qdisc del dev eth0 root
tc qdisc add dev eth0 root handle 01:0 prio bands 5 priomap 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
tc qdisc add dev eth0 parent 01:01 handle 11:0 pfifo limit 100
tc qdisc add dev eth0 parent 01:02 handle 12:0 pfifo limit 100
tc qdisc add dev eth0 parent 01:03 handle 13:0 pfifo limit 100
tc qdisc add dev eth0 parent 01:04 handle 14:0 tbf rate 3Mbit latency 2s burst 10k
tc qdisc add dev eth0 parent 01:05 handle 15:0 tbf rate 3Mbit latency 2s burst 10k


tc filter add dev eth0 parent 01:00 prio 1 u32 match u8 64 0xff at 8 flowid 1:1
tc filter add dev eth0 parent 01:00 prio 1 u32 match ip protocol 6 0xff match u8 0x10 0xff at nexthdr+13 flowid 1:1
tc filter add dev eth0 parent 01:00 prio 1 u32 match ip protocol 6 0xff match u8 0x05 0x0f at 0 match u16 0x0000 0xffc0 at 2 match u8 0x10 0xff at 33 flowid 1:1
tc filter add dev eth0 parent 01:00 prio 2 protocol ip u32 match ip protocol 1 0xff flowid 1:1
tc filter add dev eth0 parent 01:00 prio 3 protocol ip u32 match ip dst 172.16.0.250 flowid 1:2
tc filter add dev eth0 parent 01:00 prio 3 protocol ip u32 match ip dst 172.16.0.58 flowid 1:2
tc filter add dev eth0 parent 01:00 prio 4 protocol ip u32 match ip sport 8291 0xffff flowid 1:3
tc filter add dev eth0 parent 01:00 prio 5 protocol ip handle 1 fw flowid 1:4
Comment 1 Alan 2012-06-27 12:20:22 UTC
Please start by sending this report to netdev@vger.kernel.org if you've not already done so.