All of lore.kernel.org
 help / color / mirror / Atom feed
* [LARTC] how to debug RTNETLINK invalid argument?
@ 2006-05-23 16:17 George Nychis
  2006-05-23 16:23 ` Larry Brigman
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: George Nychis @ 2006-05-23 16:17 UTC (permalink / raw)
  To: lartc

Hey,

I am getting an invalid argument trying to insert a qdisc:

[root@emu-5 iproute2]# tc qdisc add dev eth0 root xcp capacity 50Mbit
limit 500
RTNETLINK answers: Invalid argument

I'm not sure whats wrong here, because i can successfully insert this
qdisc on other computers of mine.

How can i debug this?

Thanks!
George
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
@ 2006-05-23 16:23 ` Larry Brigman
  2006-05-23 17:12 ` George Nychis
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Larry Brigman @ 2006-05-23 16:23 UTC (permalink / raw)
  To: lartc

On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
> Hey,
>
> I am getting an invalid argument trying to insert a qdisc:
>
> [root@emu-5 iproute2]# tc qdisc add dev eth0 root xcp capacity 50Mbit
> limit 500
> RTNETLINK answers: Invalid argument
>
> I'm not sure whats wrong here, because i can successfully insert this
> qdisc on other computers of mine.
>
> How can i debug this?
>
Check to see which kernel versions you have on the boxes that work and
the one that
does not.  Also check to see if you have the latest version of
iproute2 installed on the
machine that does not work.
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
  2006-05-23 16:23 ` Larry Brigman
@ 2006-05-23 17:12 ` George Nychis
  2006-05-23 17:51 ` Larry Brigman
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: George Nychis @ 2006-05-23 17:12 UTC (permalink / raw)
  To: lartc



Larry Brigman wrote:
> On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
>> Hey,
>>
>> I am getting an invalid argument trying to insert a qdisc:
>>
>> [root@emu-5 iproute2]# tc qdisc add dev eth0 root xcp capacity 50Mbit
>> limit 500
>> RTNETLINK answers: Invalid argument
>>
>> I'm not sure whats wrong here, because i can successfully insert this
>> qdisc on other computers of mine.
>>
>> How can i debug this?
>>
> Check to see which kernel versions you have on the boxes that work and
> the one that
> does not.  Also check to see if you have the latest version of
> iproute2 installed on the
> machine that does not work.
> 

They are both running the exact same kernel and version of iproute2,
however they are in different environments, what could the environment
have to do with it?

Thanks!
George
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
  2006-05-23 16:23 ` Larry Brigman
  2006-05-23 17:12 ` George Nychis
@ 2006-05-23 17:51 ` Larry Brigman
  2006-05-23 23:29 ` George Nychis
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Larry Brigman @ 2006-05-23 17:51 UTC (permalink / raw)
  To: lartc

On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
>
>
> Larry Brigman wrote:
> > On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
> >> Hey,
> >>
> >> I am getting an invalid argument trying to insert a qdisc:
> >>
> >> [root@emu-5 iproute2]# tc qdisc add dev eth0 root xcp capacity 50Mbit
> >> limit 500
> >> RTNETLINK answers: Invalid argument
> >>
> >> I'm not sure whats wrong here, because i can successfully insert this
> >> qdisc on other computers of mine.
> >>
> >> How can i debug this?
> >>
> > Check to see which kernel versions you have on the boxes that work and
> > the one that
> > does not.  Also check to see if you have the latest version of
> > iproute2 installed on the
> > machine that does not work.
> >
>
> They are both running the exact same kernel and version of iproute2,
> however they are in different environments, what could the environment
> have to do with it?
>
Modules that are not loaded?  modprobe.conf?
lsmod on both boxes looking for specific networking modules.
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
                   ` (2 preceding siblings ...)
  2006-05-23 17:51 ` Larry Brigman
@ 2006-05-23 23:29 ` George Nychis
  2006-05-24  0:21 ` Larry Brigman
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: George Nychis @ 2006-05-23 23:29 UTC (permalink / raw)
  To: lartc



Larry Brigman wrote:
> On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
>>
>>
>> Larry Brigman wrote:
>> > On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
>> >> Hey,
>> >>
>> >> I am getting an invalid argument trying to insert a qdisc:
>> >>
>> >> [root@emu-5 iproute2]# tc qdisc add dev eth0 root xcp capacity 50Mbit
>> >> limit 500
>> >> RTNETLINK answers: Invalid argument
>> >>
>> >> I'm not sure whats wrong here, because i can successfully insert this
>> >> qdisc on other computers of mine.
>> >>
>> >> How can i debug this?
>> >>
>> > Check to see which kernel versions you have on the boxes that work and
>> > the one that
>> > does not.  Also check to see if you have the latest version of
>> > iproute2 installed on the
>> > machine that does not work.
>> >
>>
>> They are both running the exact same kernel and version of iproute2,
>> however they are in different environments, what could the environment
>> have to do with it?
>>
> Modules that are not loaded?  modprobe.conf?
> lsmod on both boxes looking for specific networking modules.
> 

What modules would qdisc's be dependent on?  The weird thing is, netem
works on both machines... therefore I know qdisc's in general are
working.  Lets just say its not working on my other machine, how do i go
about debugging it on the one machine alone?

- George
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
                   ` (3 preceding siblings ...)
  2006-05-23 23:29 ` George Nychis
@ 2006-05-24  0:21 ` Larry Brigman
  2006-05-24  1:04 ` George Nychis
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Larry Brigman @ 2006-05-24  0:21 UTC (permalink / raw)
  To: lartc

On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
> Larry Brigman wrote:
> > On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
> >> Larry Brigman wrote:
> >> > On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
> >> >> Hey,
> >> >>
> >> >> I am getting an invalid argument trying to insert a qdisc:
> >> >>
> >> >> [root@emu-5 iproute2]# tc qdisc add dev eth0 root xcp capacity 50Mbit
> >> >> limit 500
> >> >> RTNETLINK answers: Invalid argument
> >> >>
> >> >> I'm not sure whats wrong here, because i can successfully insert this
> >> >> qdisc on other computers of mine.
> >> >>
> >> >> How can i debug this?
> >> >>
> >> > Check to see which kernel versions you have on the boxes that work and
> >> > the one that
> >> > does not.  Also check to see if you have the latest version of
> >> > iproute2 installed on the
> >> > machine that does not work.
> >> >
> >>
> >> They are both running the exact same kernel and version of iproute2,
> >> however they are in different environments, what could the environment
> >> have to do with it?
> >>
> > Modules that are not loaded?  modprobe.conf?
> > lsmod on both boxes looking for specific networking modules.
> >
>
> What modules would qdisc's be dependent on?  The weird thing is, netem
> works on both machines... therefore I know qdisc's in general are
> working.  Lets just say its not working on my other machine, how do i go
> about debugging it on the one machine alone?
>

Has the tc command been changed recently from your customized version back
to the standard release (ie yum running via cron) or your environment
path changed to
pick up the wrong tc command?
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
                   ` (4 preceding siblings ...)
  2006-05-24  0:21 ` Larry Brigman
@ 2006-05-24  1:04 ` George Nychis
  2006-05-24  1:40 ` Stephen Hemminger
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: George Nychis @ 2006-05-24  1:04 UTC (permalink / raw)
  To: lartc



Larry Brigman wrote:
> On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
>> Larry Brigman wrote:
>> > On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
>> >> Larry Brigman wrote:
>> >> > On 5/23/06, George Nychis <gnychis@cmu.edu> wrote:
>> >> >> Hey,
>> >> >>
>> >> >> I am getting an invalid argument trying to insert a qdisc:
>> >> >>
>> >> >> [root@emu-5 iproute2]# tc qdisc add dev eth0 root xcp capacity
>> 50Mbit
>> >> >> limit 500
>> >> >> RTNETLINK answers: Invalid argument
>> >> >>
>> >> >> I'm not sure whats wrong here, because i can successfully insert
>> this
>> >> >> qdisc on other computers of mine.
>> >> >>
>> >> >> How can i debug this?
>> >> >>
>> >> > Check to see which kernel versions you have on the boxes that
>> work and
>> >> > the one that
>> >> > does not.  Also check to see if you have the latest version of
>> >> > iproute2 installed on the
>> >> > machine that does not work.
>> >> >
>> >>
>> >> They are both running the exact same kernel and version of iproute2,
>> >> however they are in different environments, what could the environment
>> >> have to do with it?
>> >>
>> > Modules that are not loaded?  modprobe.conf?
>> > lsmod on both boxes looking for specific networking modules.
>> >
>>
>> What modules would qdisc's be dependent on?  The weird thing is, netem
>> works on both machines... therefore I know qdisc's in general are
>> working.  Lets just say its not working on my other machine, how do i go
>> about debugging it on the one machine alone?
>>
> 
> Has the tc command been changed recently from your customized version back
> to the standard release (ie yum running via cron) or your environment
> path changed to
> pick up the wrong tc command?
> 

the tc I am using is the standard tc, i didn't change anything about tc,
only trying to use a new custom qdisc with it... i'm not sure honestly,
theres no way to figure out why i'm getting the invalid argument?
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
                   ` (5 preceding siblings ...)
  2006-05-24  1:04 ` George Nychis
@ 2006-05-24  1:40 ` Stephen Hemminger
  2006-05-24  2:12 ` Luciano Ruete
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Stephen Hemminger @ 2006-05-24  1:40 UTC (permalink / raw)
  To: lartc


> the tc I am using is the standard tc, i didn't change anything about tc,
> only trying to use a new custom qdisc with it... i'm not sure honestly,
> theres no way to figure out why i'm getting the invalid argument?
>   

A common problem is that some distro's put tc in /sbin and other's in 
/usr/sbin.
You may have the old version in you path.
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
                   ` (6 preceding siblings ...)
  2006-05-24  1:40 ` Stephen Hemminger
@ 2006-05-24  2:12 ` Luciano Ruete
  2006-05-24 14:14 ` George Nychis
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Luciano Ruete @ 2006-05-24  2:12 UTC (permalink / raw)
  To: lartc

El Tuesday 23 May 2006 13:17, George Nychis escribió:
> Hey,
>
> I am getting an invalid argument trying to insert a qdisc:
>
> [root@emu-5 iproute2]# tc qdisc add dev eth0 root xcp capacity 50Mbit
> limit 500
> RTNETLINK answers: Invalid argument
>
> I'm not sure whats wrong here, because i can successfully insert this
> qdisc on other computers of mine.
>
> How can i debug this?

maybe strace (system calls and signals trace) can give you some clues.

strace tc qdisc add dev eth0 root xcp capacity 50Mbit limit 500

-- 
Luciano

-- 
Luciano
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
                   ` (7 preceding siblings ...)
  2006-05-24  2:12 ` Luciano Ruete
@ 2006-05-24 14:14 ` George Nychis
  2006-05-24 15:06 ` George Nychis
  2006-05-24 15:24 ` George Nychis
  10 siblings, 0 replies; 12+ messages in thread
From: George Nychis @ 2006-05-24 14:14 UTC (permalink / raw)
  To: lartc

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="windows-1252", Size: 6342 bytes --]



Luciano Ruete wrote:
> El Tuesday 23 May 2006 13:17, George Nychis escribió:
>> Hey,
>>
>> I am getting an invalid argument trying to insert a qdisc:
>>
>> [root@emu-5 iproute2]# tc qdisc add dev eth0 root xcp capacity 50Mbit
>> limit 500
>> RTNETLINK answers: Invalid argument
>>
>> I'm not sure whats wrong here, because i can successfully insert this
>> qdisc on other computers of mine.
>>
>> How can i debug this?
> 
> maybe strace (system calls and signals trace) can give you some clues.
> 
> strace tc qdisc add dev eth0 root xcp capacity 50Mbit limit 500
> 

Heres what I get as the output:

execve("/sbin/tc", ["tc", "qdisc", "add", "dev", "eth0", "root", "xcp",
"capacity", "50Mbit", "limit", "500"], [/* 22 vars */]) = 0
uname({sys="Linux", node="emu-5", ...}) = 0
set_tid_address(0)                      = -1 ENOSYS (Function not
implemented)
brk(0)                                  = 0x80705cc
brk(0x8071000)                          = 0x8071000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_sizec789, ...}) = 0
old_mmap(NULL, 63789, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40000000
close(3)                                = 0
open("/lib/libresolv.so.2", O_RDONLY)   = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360\223"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size316, ...}) = 0
old_mmap(0x4e2d7000, 80040, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x4e2d7000
mprotect(0x4e2e6000, 18600, PROT_NONE)  = 0
old_mmap(0x4e2e7000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x4e2e7000
old_mmap(0x4e2e9000, 6312, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4e2e9000
close(3)                                = 0
open("/lib/i686/libm.so.6", O_RDONLY)   = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\263G"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size!5248, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40010000
old_mmap(0x44478000, 139424, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x44478000
old_mmap(0x44499000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x20000) = 0x44499000
close(3)                                = 0
open("/lib/libdl.so.2", O_RDONLY)       = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260\333"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size\x16908, ...}) = 0
old_mmap(0x473fd000, 12388, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x473fd000
old_mmap(0x473ff000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x473ff000
close(3)                                = 0
open("/lib/i686/libc.so.6", O_RDONLY)   = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p36D4\0"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size\x1499368, ...}) = 0
old_mmap(0x4434e000, 1211684, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x4434e000
mprotect(0x4446f000, 27940, PROT_NONE)  = 0
old_mmap(0x44470000, 16384, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x121000) = 0x44470000
old_mmap(0x44474000, 7460, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x44474000
close(3)                                = 0
mprotect(0x44470000, 8192, PROT_READ)   = 0
mprotect(0x473ff000, 4096, PROT_READ)   = 0
mprotect(0x44499000, 4096, PROT_READ)   = 0
mprotect(0x4e2e7000, 4096, PROT_READ)   = 0
mprotect(0xb8b000, 4096, PROT_READ)     = 0
munmap(0x40000000, 63789)               = 0
brk(0)                                  = 0x8071000
brk(0x8092000)                          = 0x8092000
open("/proc/net/psched", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x40000000
read(3, "000c8000 000f4240 000f4240 00000"..., 4096) = 36
close(3)                                = 0
munmap(0x40000000, 4096)                = 0
socket(PF_NETLINK, SOCK_RAW, 0)         = 3
setsockopt(3, SOL_SOCKET, SO_SNDBUF, [32768], 4) = 0
setsockopt(3, SOL_SOCKET, SO_RCVBUF, [32768], 4) = 0
bind(3, {sa_family¯_NETLINK, pid=0, groups\0000000}, 12) = 0
getsockname(3, {sa_family¯_NETLINK, pidT07, groups\0000000}, [12]) = 0
time(NULL)                              = 1148447549
open("/usr/lib/tc/q_xcp.so", O_RDONLY)  = 4
read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\270\5\0"...,
512) = 512
fstat64(4, {st_mode=S_IFREG|0755, st_sizeA92, ...}) = 0
old_mmap(NULL, 6908, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4,
0) = 0x40000000
old_mmap(0x40001000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0) = 0x40001000
close(4)                                = 0
sendto(3, "\24\0\0\0\22\0\1\3>\353sD\0\0\0\0\0\0\0\0", 20, 0,
{sa_family¯_NETLINK, pid=0, groups\0000000}, 12) = 20
recvmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
msg_iov(1)=[{"\264\0\0\0\20\0\2\0>\353sD\37\25\0\0\0\0\4\3\1\0\0\0I\0"...,
16384}], msg_controllen=0, msg_flags=0}, 0) = 920
recvmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
msg_iov(1)=[{"\24\0\0\0\3\0\2\0>\353sD\37\25\0\0\0\0\0\0\1\0\0\0I\0\0"...,
16384}], msg_controllen=0, msg_flags=0}, 0) = 20

sendmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
msg_iov(1)=[{"8\0\0\0$\0\5\6?\353sD\0\0\0\0\0\0\0\0\2\0\0\0\0\0\0\0\377"...,
56}], msg_controllen=0, msg_flags=0}, 0) = 56
recvmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
msg_iov(1)=[{"$\0\0\0\2\0\0\0?\353sD\37\25\0\0\352\377\377\3778\0\0\0"...,
16384}], msg_controllen=0, msg_flags=0}, 0) = 36
dup(2)                                  = 4
fcntl64(4, F_GETFL)                     = 0x8001 (flags
O_WRONLY|O_LARGEFILE)
close(4)                                = 0
write(2, "RTNETLINK answers: Invalid argum"..., 36RTNETLINK answers:
Invalid argument
) = 36
close(3)                                = 0
exit_group(2)                           = ?
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
                   ` (8 preceding siblings ...)
  2006-05-24 14:14 ` George Nychis
@ 2006-05-24 15:06 ` George Nychis
  2006-05-24 15:24 ` George Nychis
  10 siblings, 0 replies; 12+ messages in thread
From: George Nychis @ 2006-05-24 15:06 UTC (permalink / raw)
  To: lartc

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="windows-1252", Size: 11951 bytes --]



George Nychis wrote:
> 
> Luciano Ruete wrote:
>> El Tuesday 23 May 2006 13:17, George Nychis escribió:
>>> Hey,
>>>
>>> I am getting an invalid argument trying to insert a qdisc:
>>>
>>> [root@emu-5 iproute2]# tc qdisc add dev eth0 root xcp capacity 50Mbit
>>> limit 500
>>> RTNETLINK answers: Invalid argument
>>>
>>> I'm not sure whats wrong here, because i can successfully insert this
>>> qdisc on other computers of mine.
>>>
>>> How can i debug this?
>> maybe strace (system calls and signals trace) can give you some clues.
>>
>> strace tc qdisc add dev eth0 root xcp capacity 50Mbit limit 500
>>
> 
> Heres what I get as the output:
> 
> execve("/sbin/tc", ["tc", "qdisc", "add", "dev", "eth0", "root", "xcp",
> "capacity", "50Mbit", "limit", "500"], [/* 22 vars */]) = 0
> uname({sys="Linux", node="emu-5", ...}) = 0
> set_tid_address(0)                      = -1 ENOSYS (Function not
> implemented)
> brk(0)                                  = 0x80705cc
> brk(0x8071000)                          = 0x8071000
> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or
> directory)
> open("/etc/ld.so.cache", O_RDONLY)      = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_sizec789, ...}) = 0
> old_mmap(NULL, 63789, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40000000
> close(3)                                = 0
> open("/lib/libresolv.so.2", O_RDONLY)   = 3
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360\223"...,
> 512) = 512
> fstat64(3, {st_mode=S_IFREG|0755, st_size316, ...}) = 0
> old_mmap(0x4e2d7000, 80040, PROT_READ|PROT_EXEC,
> MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x4e2d7000
> mprotect(0x4e2e6000, 18600, PROT_NONE)  = 0
> old_mmap(0x4e2e7000, 8192, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x4e2e7000
> old_mmap(0x4e2e9000, 6312, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4e2e9000
> close(3)                                = 0
> open("/lib/i686/libm.so.6", O_RDONLY)   = 3
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\263G"...,
> 512) = 512
> fstat64(3, {st_mode=S_IFREG|0755, st_size!5248, ...}) = 0
> old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1, 0) = 0x40010000
> old_mmap(0x44478000, 139424, PROT_READ|PROT_EXEC,
> MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x44478000
> old_mmap(0x44499000, 8192, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x20000) = 0x44499000
> close(3)                                = 0
> open("/lib/libdl.so.2", O_RDONLY)       = 3
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260\333"...,
> 512) = 512
> fstat64(3, {st_mode=S_IFREG|0755, st_size\x16908, ...}) = 0
> old_mmap(0x473fd000, 12388, PROT_READ|PROT_EXEC,
> MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x473fd000
> old_mmap(0x473ff000, 8192, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x473ff000
> close(3)                                = 0
> open("/lib/i686/libc.so.6", O_RDONLY)   = 3
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p36D4\0"...,
> 512) = 512
> fstat64(3, {st_mode=S_IFREG|0755, st_size\x1499368, ...}) = 0
> old_mmap(0x4434e000, 1211684, PROT_READ|PROT_EXEC,
> MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x4434e000
> mprotect(0x4446f000, 27940, PROT_NONE)  = 0
> old_mmap(0x44470000, 16384, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x121000) = 0x44470000
> old_mmap(0x44474000, 7460, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x44474000
> close(3)                                = 0
> mprotect(0x44470000, 8192, PROT_READ)   = 0
> mprotect(0x473ff000, 4096, PROT_READ)   = 0
> mprotect(0x44499000, 4096, PROT_READ)   = 0
> mprotect(0x4e2e7000, 4096, PROT_READ)   = 0
> mprotect(0xb8b000, 4096, PROT_READ)     = 0
> munmap(0x40000000, 63789)               = 0
> brk(0)                                  = 0x8071000
> brk(0x8092000)                          = 0x8092000
> open("/proc/net/psched", O_RDONLY)      = 3
> fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x40000000
> read(3, "000c8000 000f4240 000f4240 00000"..., 4096) = 36
> close(3)                                = 0
> munmap(0x40000000, 4096)                = 0
> socket(PF_NETLINK, SOCK_RAW, 0)         = 3
> setsockopt(3, SOL_SOCKET, SO_SNDBUF, [32768], 4) = 0
> setsockopt(3, SOL_SOCKET, SO_RCVBUF, [32768], 4) = 0
> bind(3, {sa_family¯_NETLINK, pid=0, groups\0000000}, 12) = 0
> getsockname(3, {sa_family¯_NETLINK, pidT07, groups\0000000}, [12]) = 0
> time(NULL)                              = 1148447549
> open("/usr/lib/tc/q_xcp.so", O_RDONLY)  = 4
> read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\270\5\0"...,
> 512) = 512
> fstat64(4, {st_mode=S_IFREG|0755, st_sizeA92, ...}) = 0
> old_mmap(NULL, 6908, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4,
> 0) = 0x40000000
> old_mmap(0x40001000, 4096, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0) = 0x40001000
> close(4)                                = 0
> sendto(3, "\24\0\0\0\22\0\1\3>\353sD\0\0\0\0\0\0\0\0", 20, 0,
> {sa_family¯_NETLINK, pid=0, groups\0000000}, 12) = 20
> recvmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
> msg_iov(1)=[{"\264\0\0\0\20\0\2\0>\353sD\37\25\0\0\0\0\4\3\1\0\0\0I\0"...,
> 16384}], msg_controllen=0, msg_flags=0}, 0) = 920
> recvmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
> msg_iov(1)=[{"\24\0\0\0\3\0\2\0>\353sD\37\25\0\0\0\0\0\0\1\0\0\0I\0\0"...,
> 16384}], msg_controllen=0, msg_flags=0}, 0) = 20
> 
> sendmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
> msg_iov(1)=[{"8\0\0\0$\0\5\6?\353sD\0\0\0\0\0\0\0\0\2\0\0\0\0\0\0\0\377"...,
> 56}], msg_controllen=0, msg_flags=0}, 0) = 56
> recvmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
> msg_iov(1)=[{"$\0\0\0\2\0\0\0?\353sD\37\25\0\0\352\377\377\3778\0\0\0"...,
> 16384}], msg_controllen=0, msg_flags=0}, 0) = 36
> dup(2)                                  = 4
> fcntl64(4, F_GETFL)                     = 0x8001 (flags
> O_WRONLY|O_LARGEFILE)
> close(4)                                = 0
> write(2, "RTNETLINK answers: Invalid argum"..., 36RTNETLINK answers:
> Invalid argument
> ) = 36
> close(3)                                = 0
> exit_group(2)                           = ?
> _______________________________________________
> LARTC mailing list
> LARTC@mailman.ds9a.nl
> http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
> 

Here is an strace from the machine that it is working on:
execve("/usr/sbin/tc", ["tc", "qdisc", "add", "dev", "ath0", "root",
"xcp", "capacity", "50Mbit", "limit", "500"], [/* 40 vars */]) = 0
uname({sys="Linux", node="thorium-ini", ...}) = 0
brk(0)                                  = 0x80765ec
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_sizet093, ...}) = 0
mmap2(NULL, 74093, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40017000
close(3)                                = 0
open("/lib/libresolv.so.2", O_RDONLY)   = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000%\0\000"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_sized568, ...}) = 0
mmap2(NULL, 76020, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0x4002a000
mmap2(0x40039000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe) = 0x40039000
mmap2(0x4003b000, 6388, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4003b000
close(3)                                = 0
open("/lib/libm.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P4\0\000"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size\x153240, ...}) = 0
mmap2(NULL, 135328, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0x4003d000
mmap2(0x4005d000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x20) = 0x4005d000
close(3)                                = 0
open("/lib/libdl.so.2", O_RDONLY)       = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\v\0"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size\x10440, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x4005f000
mmap2(NULL, 12392, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0x40060000
mmap2(0x40062000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0x40062000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\36T\1\000"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size\x1191488, ...}) = 0
mmap2(NULL, 1138036, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0x40064000
mmap2(0x40174000, 16384, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10f) = 0x40174000
mmap2(0x40178000, 7540, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40178000
close(3)                                = 0
mprotect(0x40174000, 4096, PROT_READ)   = 0
mprotect(0x40015000, 4096, PROT_READ)   = 0
munmap(0x40017000, 74093)               = 0
open("/dev/urandom", O_RDONLY)          = 3
read(3, "gq\22\210", 4)                 = 4
close(3)                                = 0
brk(0)                                  = 0x80765ec
brk(0x80975ec)                          = 0x80975ec
brk(0x8098000)                          = 0x8098000
open("/proc/net/psched", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x40017000
read(3, "000c8000 000f4240 000f4240 00000"..., 1024) = 36
close(3)                                = 0
munmap(0x40017000, 4096)                = 0
brk(0x8097000)                          = 0x8097000
socket(PF_NETLINK, SOCK_RAW, 0)         = 3
setsockopt(3, SOL_SOCKET, SO_SNDBUF, [32768], 4) = 0
setsockopt(3, SOL_SOCKET, SO_RCVBUF, [32768], 4) = 0
bind(3, {sa_family¯_NETLINK, pid=0, groups\0000000}, 12) = 0
getsockname(3, {sa_family¯_NETLINK, pid\x14175, groups\0000000}, [12]) = 0
time(NULL)                              = 1148483135
open("/usr/lib/tc/q_xcp.so", O_RDONLY)  = 4
read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\5\0"...,
512) = 512
fstat64(4, {st_mode=S_IFREG|0755, st_sizeD68, ...}) = 0
mmap2(NULL, 7136, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0)
= 0x40017000
mmap2(0x40018000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0) = 0x40018000
close(4)                                = 0
sendto(3, "\24\0\0\0\22\0\1\3@vtD\0\0\0\0\0\0\0\0", 20, 0,
{sa_family¯_NETLINK, pid=0, groups\0000000}, 12) = 20
recvmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
msg_iov(1)=[{"\264\0\0\0\20\0\2\0@vtD_7\0\0\0^\4\3\1\0\0\0I\0\0\0\0\0"...,
16384}], msg_controllen=0, msg_flags=0}, 0) recvmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
msg_iov(1)=[{"\24\0\0\0\3\0\2\0@vtD_7\0\0\0\0\0\0\1\0\0\0I\0\0\0\0\0"...,
16384}], msg_controllen=0, msg_flags=0}, 0) sendmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
msg_iov(1)=[{"8\0\0\0$\0\5\6AvtD\0\0\0\0\0\0\0\0\7\0\0\0\0\0\0\0\377"...,
56}], msg_controllen=0, msg_flags=0}, 0) = 56
recvmsg(3, {msg_name(12)={sa_family¯_NETLINK, pid=0, groups\0000000},
msg_iov(1)=[{"$\0\0\0\2\0\0\0AvtD_7\0\0\0\0\0\0008\0\0\0$\0\5\6AvtD"...,
16384}], msg_controllen=0, msg_flags=0}, 0) = 3
close(3)                                = 0
exit_group(0)                           = ?
Process 14175 detached
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [LARTC] how to debug RTNETLINK invalid argument?
  2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
                   ` (9 preceding siblings ...)
  2006-05-24 15:06 ` George Nychis
@ 2006-05-24 15:24 ` George Nychis
  10 siblings, 0 replies; 12+ messages in thread
From: George Nychis @ 2006-05-24 15:24 UTC (permalink / raw)
  To: lartc

Well it turns out that the problem may very well be the environment, it
seems as though i'm getting a hint in dmesg:

[root@emu-5 net]# dmesg
request_module[sch_xcp]: fork failed, errno 1

that occurs after trying to add the qdisc through tc

so it seems to be failing because a fork is failing in the module, which
 I am guessing is an environment problem.

Anyone suggestions?

I'll keep trying!

- George
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2006-05-24 15:24 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-05-23 16:17 [LARTC] how to debug RTNETLINK invalid argument? George Nychis
2006-05-23 16:23 ` Larry Brigman
2006-05-23 17:12 ` George Nychis
2006-05-23 17:51 ` Larry Brigman
2006-05-23 23:29 ` George Nychis
2006-05-24  0:21 ` Larry Brigman
2006-05-24  1:04 ` George Nychis
2006-05-24  1:40 ` Stephen Hemminger
2006-05-24  2:12 ` Luciano Ruete
2006-05-24 14:14 ` George Nychis
2006-05-24 15:06 ` George Nychis
2006-05-24 15:24 ` George Nychis

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.