<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Adding dsmark qdisc fails</TITLE>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2900.2802" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><FONT face=Arial><FONT size=2><SPAN 
class=190373421-05012006><FONT color=#0000ff>&nbsp;I&nbsp;</FONT></SPAN>'m 
having a problem identical to one encountered on this list awhile 
back:</FONT></FONT> </DIV>
<P><FONT face=Arial size=2>&gt;I'm trying to configure dsmark qdisc on 2.6.11.4 
user mode linux and</FONT> <BR><FONT face=Arial size=2>&gt;tc from 
iproute2-2.6.11-050314.</FONT> <BR><FONT face=Arial size=2>&gt;</FONT> <BR><FONT 
face=Arial size=2>&gt;</FONT> <BR><FONT face=Arial size=2>&gt;I think I have 
some mismatch in my setup since adding dsmark qdisc</FONT> <BR><FONT face=Arial 
size=2>&gt;fails *unless* I specify "set_tc_index" argument which I believe 
should</FONT> <BR><FONT face=Arial size=2>&gt;be optional:</FONT> <BR><FONT 
face=Arial size=2>&gt;</FONT> <BR><FONT face=Arial size=2>&gt;</FONT> <BR><FONT 
face=Arial size=2>&gt;# tc qdisc add dev eth1 handle 1:0 root dsmark indices 
8</FONT> <BR><FONT face=Arial size=2>&gt;RTNETLINK answers: Invalid 
argument</FONT> <BR><FONT face=Arial size=2>&gt;Mar 20 13:00:50 user user.debug 
kernel: dsmark_init(sch a0bb3ae0,[qdisc a0bb3b60],opt 00000000)</FONT> <BR><FONT 
face=Arial size=2>&gt;</FONT> <BR><FONT face=Arial size=2>&gt;here the log shows 
that opt is null, sch_dsmark checks for that and</FONT> <BR><FONT face=Arial 
size=2>&gt;bails out.&nbsp; However running tc with "set_tc_index" goes 
ok:</FONT> <BR><FONT face=Arial size=2>&gt;</FONT> <BR><FONT face=Arial 
size=2>&gt;</FONT> <BR><FONT face=Arial size=2>&gt;# tc qdisc add dev eth1 
handle 1:0 root dsmark indices 8 set_tc_index</FONT> <BR><FONT face=Arial 
size=2>&gt;Mar 20 13:01:12 user user.debug kernel: dsmark_init(sch 
a0bb3060,[qdisc a0bb30e0],opt a038e9d0)</FONT> <BR><FONT face=Arial 
size=2>&gt;Mar 20 13:01:12 user user.debug kernel: dsmark_init: qdisc 
a0bb30e0</FONT> <BR><FONT face=Arial size=2>&gt;</FONT> <BR><FONT face=Arial 
size=2>&gt;# tc qdisc show dev eth1</FONT> <BR><FONT face=Arial size=2>&gt;qdisc 
dsmark 1: indices 0x0008 set_tc_index</FONT> <BR><FONT face=Arial 
size=2>&gt;</FONT> <BR><FONT face=Arial size=2>&gt;</FONT> <BR><FONT face=Arial 
size=2>&gt;</FONT> <BR><FONT face=Arial size=2>&gt;but then changing the class 
fails:</FONT> <BR><FONT face=Arial size=2>&gt;</FONT> <BR><FONT face=Arial 
size=2>&gt;</FONT> <BR><FONT face=Arial size=2>&gt;# tc class change dev eth1 
classid 1:1 dsmark mask 0x0 value 0xb8</FONT> <BR><FONT face=Arial 
size=2>&gt;RTNETLINK answers: Invalid argument</FONT> <BR><FONT face=Arial 
size=2>&gt;Mar 20 13:02:28 user user.debug kernel: dsmark_get(sch 
a0bb3060,[qdisc a0bb30e0],classid 10001)</FONT> <BR><FONT face=Arial 
size=2>&gt;Mar 20 13:02:28 user user.debug kernel: dsmark_change(sch 
a0bb3060,[qdisc a0bb30e0],classid 10001,parent 0),arg 0x2</FONT> <BR><FONT 
face=Arial size=2>&gt;</FONT> <BR><FONT face=Arial size=2>&gt;</FONT> <BR><FONT 
face=Arial size=2>&gt;Any ideas where I've gone wrong?</FONT> <BR><FONT 
face=Arial size=2>&gt;</FONT> <BR><FONT face=Arial size=2>&gt;</FONT> <BR><FONT 
face=Arial size=2>&gt;--</FONT> <BR><FONT face=Arial size=2>&gt;Tero</FONT> </P>
<P><FONT face=Arial size=2>I've applied the patch to my iproute2 that was 
suggested as a solution, as well as upgrading to the latest version (</FONT><A 
href="http://developer.osdl.org/dev/iproute2/download/iproute2-2.6.14-051107.tar.gz"><U><FONT 
face=Arial color=#0000ff 
size=2>http://developer.osdl.org/dev/iproute2/download/iproute2-2.6.14-051107.tar.gz</FONT></U></A><FONT 
face=Arial size=2>) of iproute2 which includes the patch, but always get the 
following errors:</FONT></P>
<P><FONT face=Arial size=2>#&nbsp; tc qdisc add dev eth1 handle 1:0 root dsmark 
indices 64</FONT> <BR><FONT face=Arial size=2>RTNETLINK answers: Invalid 
argument</FONT> </P>
<P><FONT face=Arial size=2>Changing that to:</FONT> </P>
<P><FONT face=Arial size=2>#&nbsp; tc qdisc add dev eth1 handle 1:0 root dsmark 
indices 64 set_tc_index</FONT> </P>
<P><FONT face=Arial size=2>Works, but following that with produces the same 
error:</FONT> </P>
<P><FONT face=Arial size=2>#&nbsp; tc class change dev eth1 classid 1:1 dsmark 
mask 0x3 value 0x88</FONT> <BR><FONT face=Arial size=2>RTNETLINK answers: 
Invalid argument</FONT> </P>
<P><FONT face=Arial size=2>Is this an iproute2 bug, or user error?</FONT> </P>
<P><FONT face=Arial size=2>I'm using iproute2 on FC4 2.6.14-1.1653</FONT> 
</P><BR>
<P><FONT face=Arial size=2>TIY</FONT> </P>
<P><FONT face=Arial size=2>Keith Mitchell</FONT> <BR><FONT face=Arial 
size=2>CTO</FONT> <BR><FONT face=Arial size=2>Productivity Associates, 
Inc.</FONT> <BR><FONT face=Arial size=2>5625 Ruffin Rd STE 220</FONT> <BR><FONT 
face=Arial size=2>San Diego, CA 92123</FONT> <BR><FONT face=Arial 
size=2>858-495-3528 (Direct)</FONT> <BR><FONT face=Arial size=2>858-495-3540 
(Fax) </FONT></P><BR></BODY></HTML>