Bug 515522 - tc fails to replace internal netem qdisc with pfifo - RTNETLINK answers: Invalid argument
Summary: tc fails to replace internal netem qdisc with pfifo - RTNETLINK answers: Inv...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: iproute
Version: 11
Hardware: i686
OS: Linux
low
medium
Target Milestone: ---
Assignee: Marcela Mašláňová
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-08-04 16:18 UTC by David
Modified: 2009-08-13 14:14 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2009-08-13 14:14:26 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description David 2009-08-04 16:18:52 UTC
User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.12) Gecko/2009070611 Firefox/3.0.12

when attempting to replace the internal qdisc for netem with pfifo, tc gives RTNETLINK error and fails.

The script worked in f7 and f10; Fails on new install of f11

See Netem site for another example that fails:
http://www.linuxfoundation.org/en/Net:Netem#How_to_reorder_packets_based_on_jitter.3F

Reproducible: Always

Steps to Reproduce:
#gather some data
date
echo -n Kernel:  " "
uname -r
rpm -q  iproute
lsmod | grep sch
modinfo sch_netem

#create queues for eth2 (all available interface behave the same on my box)
/sbin/tc qdisc del dev eth2 root 2>&1
/sbin/tc qdisc add dev eth2 root handle 1: prio 2>&1
/sbin/tc qdisc add dev eth2 parent 1:3 handle 30: netem delay 1ms 2>&1
/sbin/tc qdisc add dev eth2 handle 40: parent 30:1 pfifo limit 16000 2>&1
/sbin/tc qdisc show dev eth2 2>&1


Actual Results:  
Tue Aug  4 10:07:31 MDT 2009
Kernel:  2.6.29.6-213.fc11.i686.PAE
iproute-2.6.29-2.fc11.i586
sch_netem               5524  1
sch_prio                4220  1
filename:       /lib/modules/2.6.29.6-213.fc11.i686.PAE/kernel/net/sched/sch_netem.ko
license:        GPL
srcversion:     4EA19BD84D4639EDA68D5AC
depends:
vermagic:       2.6.29.6-213.fc11.i686.PAE SMP mod_unload 686
RTNETLINK answers: Invalid argument
qdisc prio 1: root bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc netem 30: parent 1:3 limit 1000 delay 999us


Expected Results:  
#from an F10 installed system:
Wed Jul  1 09:32:59 MDT 2009
Kernel:  2.6.27.5-117.fc10.i686.PAE
sch_netem              10240  1 
sch_prio                8448  1 
filename:       /lib/modules/2.6.27.5-117.fc10.i686.PAE/kernel/net/sched/sch_netem.ko
license:        GPL
srcversion:     AAB2A768D030645593C1EE2
depends:        
vermagic:       2.6.27.5-117.fc10.i686.PAE SMP mod_unload 686 4KSTACKS 
qdisc prio 1: root bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc netem 30: parent 1:3 limit 1000 delay 999us
qdisc pfifo 40: parent 30:1 limit 16000

Note that in F10 the last tc qdisc add actually adds the pfifo,  in F11 we get the RTNETLINK complaint.

Comment 1 Marcela Mašláňová 2009-08-13 10:50:25 UTC
I've tested replacing netem with pfifo and it looks like there is no possibility to change the same class which was already defined. It looks more like kernel problem because I've tested test-cases with different iproute releases and none of them work as it is documented.

I've sent a bug report to upstream project, probably they would know better.

Comment 2 Marcela Mašláňová 2009-08-13 14:14:26 UTC
Kind reply from kernel-net developers contain this link
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=02201464119334690fe209849843881b8e9cfa9f

So netem is classless since kernel-2.6.29 and the documentation is outdated. This mean notabug for this package.


Note You need to log in before you can comment on or make changes to this bug.