Actually I think the syscall error is because of strace on ARM, not because of vcmd. [EMAIL PROTECTED]:/work/test# ./vcmd wenbin print: num_cmd = 0, num_id = 0 Illegal instruction
[EMAIL PROTECTED]:/work/test# strace -fF -o vcmd.trace ./vcmd syscall: unknown syscall trap 0xef000139 "unknow syscall" should be a strace bug, I think. The basic failure is becuase of "illegal instruction" during vserver(num_cmd, num_id, data) syscall. Thanks, Wenbin On 4/29/07, Wenbin Zhang <[EMAIL PROTECTED]> wrote:
I traced the vcmd command. When the vcmd command is run and without arguments, the error is: syscall: unknown syscall trap 0xef000139 This syscall error is occured while "num_ret = vserver(num_cmd, num_id, data);" is executed. I guss ARM is using a different method to register new syscall? Thanks, Wenbin On 4/29/07, Herbert Poetzl <[EMAIL PROTECTED]> wrote: > > On Fri, Apr 27, 2007 at 01:02:34PM -0400, Wenbin Zhang wrote: > > Hello, guys, > > > > This time I build a new Vserver enabled kernel and GPE package, now > solved > > the "Illegal instruction" on ARM. > > But I tried "vcmd -i 42 -C ctx_create -- ps auxwww", it just simply > > hung (but I can interrupt the command). > > Any approach to solve this? > > strace -fF -o vcmd.trace vcmd > > > Btw, I tried below command for the vserver kernel, seems OK. > > 1)[EMAIL PROTECTED]:/work/vcmd-0.08# cat /proc/virtual/info > > VCIVersion: 0002:0002 > > VCISyscall: 313 > > VCIKernel: 03000036 > > > > 2) [EMAIL PROTECTED]:/work/vcmd-0.08# setattr --~hide /proc/uptime > > > > 3) [EMAIL PROTECTED]:/work/vcmd-0.08# vserver-stat > > CTX PROC VSZ RSS userTIME sysTIME UPTIME NAME > > 0 49 165.9M 63.9M 0m55s76 0m24s19 10m14s64 root server > > > > 4) [EMAIL PROTECTED]:/work/vcmd-0.08# vserver-info > > Versions: > > Kernel: 2.6.16.13-vs2.0.3-rc1 > > VS-API: 0x00020002 > > util-vserver: 0.30.212; Apr 17 2007, 18:47:18 > > > > Features: > > CC: arm-angstrom-linux-gnueabi-gcc, > > arm-angstrom-linux-gnueabi-gcc (GCC) 4.1.1 > > CXX: arm-angstrom-linux-gnueabi-c++, > > arm-angstrom-linux-gnueabi-c++ (GCC) 4.1.1 > > CPPFLAGS: '' > > CFLAGS: '-g -O2 -std=c99 -Wall -pedantic -W > > -funit-at-a-time' > > CXXFLAGS: '-g -O2 -ansi -Wall -pedantic -W > > -fmessage-length=0 -funit-at-a-time' > > build/host: i686-pc-linux-gnu/arm-unknown-none > > Use dietlibc: no (you have been warned) > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > > Build C++ programs: yes > > Build C99 programs: yes > > Available APIs: v13,net,v21 > > ext2fs Source: kernel > > syscall(2) invocation: traditional > > vserver(2) syscall#: 313/fallback > > > > Paths: > > prefix: > > sysconf-Directory: ${prefix}/etc > > cfg-Directory: ${prefix}/etc/vservers > > initrd-Directory: $(sysconfdir)/init.d > > pkgstate-Directory: ${prefix}/var/run/vservers > > vserver-Rootdir: /vservers > > > > Assumed 'SYSINFO' as no other option given; try '--help' for more > > information. > > > > Seems everything is fine, but why vcmd cannot be run correctly? > > no idea, maybe a broken toolchain? > > best, > Herbert > > > (I can run vcmd correctly on my PC machine) > > > > Thanks, > > Wenbin > > > > On 4/27/07, Wenbin Zhang <[EMAIL PROTECTED]> wrote: > > > > > > > > > > > >On 4/26/07, Herbert Poetzl < [EMAIL PROTECTED]> wrote: > > >> > > >> On Wed, Apr 25, 2007 at 12:40:12AM -0400, Wenbin Zhang wrote: > > >> > > > > >> > > > > >> > >> vcmd -i 42 -C ctx_create -- ps auxwww > > >> > >> vserver: ret = 0x0000002A (42) > > >> > >> USER PID %CPU %MEM VSZ RSS TTY STAT START > TIME > > >> COMMAND > > >> > >> root 11780 0.0 0.0 1944 672 pts/2 R+ 13:35 > 0:00 ps > > >> > >> auxwww > > >> > >> > > >> > >I downloaded the vcmd source, and crosscompiled it, then copy to > the > > >> ARM > > >> > phone, however, when I tried to run the command, it cannot create > the > > >> > process successfully, very strange... > > >> > when I run "vcmd -h", it can show the help, but when I run " > vcmd -i > > >> 42 -C > > >> > ctx_create -- ps auxwww", it just hung. > > >> > [EMAIL PROTECTED]:/work/vcmd- 0.08# ./vcmd -h > > >> > This is ./vcmd V0.08 > > >> > options are: > > >> > -h print this help message > > >> > -A dump data after syscall > > >> > -B dump data before syscall > > >> > > > >> > Btw, my ARM kernel is vserver enabled, I can find the > > >> > /proc/virtual/info does exist but it is an empty file. > > >> > > >> that sounds odd ... > > >> > > >> > I guess might be the vserver kernel module has some > > >> > problem, but I cannot figure out what it is, which is the > > >> > thing I am worrying about. > > >> > > >> there is no such thing as a Linux-VServer kernel module, > > >> so I'm pretty sure that is fine ... > > >> > > >> > Can you think of any ideas? > > >> > > >> maybe you compiled the wrong kernel? > > >> maybe your toolchain is broken? > > >> > > >> Not really, I compiled other package with my tool chain, that's > fine, no > > >problem > > >However seems vserver kernel has some problems. > > > > > >[EMAIL PROTECTED] :/# vserver-info > > >Versions: > > > Kernel: 2.6.16.13-vs2.0.3-rc1-ezx6 > > > VS-API: Illegal instruction > > >[EMAIL PROTECTED]:/# vserver-stat > > >Illegal instruction > > > > > >Strange, any possiblities? > > > > > >Thanks, > > >Wenbin > > > > > > _______________________________________________ > > Vserver mailing list > > Vserver@list.linux-vserver.org > > http://list.linux-vserver.org/mailman/listinfo/vserver > >
_______________________________________________ Vserver mailing list Vserver@list.linux-vserver.org http://list.linux-vserver.org/mailman/listinfo/vserver