22 May 2013 14:24
vzctl error
Hi,
I have a strange error on one of our servers when I use vzctl. There's a running host with a few VE-s and if I type vzctl enter "CTID" then I receive enter into CT "CTID" failed and no further messages. After a lot of debugging I realized that it works if I directly connect via the server's console, but if I login via ssh it gives the error.
The system parameters:
OS: CentOS release 6.4
Kernel: Linux vm4 2.6.32-042stab078.10 #1 SMP Wed May 8 19:45:03 MSK 2013 x86_64 x86_64 x86_64 GNU/Linux
vzctl: vzctl-core-4.2-1.el6.x86_64
vzctl-4.2-1.el6.x86_64
I've tried to reboot the system with different kernels, but the same error. There's another strange thing: we have another machine with the same kernel but I cannot reproduce the error there.
I've also tried to run vzctl with gdb and search in the source code, and there seems to be a problem around setting up the environment:
In src/lib/hooks_vz.c there's a function:
static int vz_env_create_ioctl(vps_handler *h, envid_t veid, int flags)
{
struct vzctl_env_create env_create;
int errcode;
int retry = 0;
memset(&env_create, 0, sizeof(env_create));
env_create.veid = veid;
env_create.flags = flags;
do {
if (retry)
sleep(1);
errcode = ioctl(h->vzfd, VZCTL_ENV_CREATE, &env_create);
fprintf(stderr,"error code: %d\n",errcode);
} while (errcode < 0 && errno == EBUSY && retry++ < ENVRETRY);
if (errcode >= 0 && (flags & VE_ENTER)) {
/* Clear supplementary group IDs */
setgroups(0, NULL);
/* Set personality PER_LINUX32 for i386 based CTs */
set_personality32();
}
else{
fprintf(stderr,"%s,%d\n",strerror(errno),errno);
}
return errcode;
}
The ioctl returns with an error: INVALID ARG. Also the vzct start/stop don't work.
I compared the two host's environment variables, but no difference.
Thank you for your help in advance!
Regards,
Tamas
I have a strange error on one of our servers when I use vzctl. There's a running host with a few VE-s and if I type vzctl enter "CTID" then I receive enter into CT "CTID" failed and no further messages. After a lot of debugging I realized that it works if I directly connect via the server's console, but if I login via ssh it gives the error.
The system parameters:
OS: CentOS release 6.4
Kernel: Linux vm4 2.6.32-042stab078.10 #1 SMP Wed May 8 19:45:03 MSK 2013 x86_64 x86_64 x86_64 GNU/Linux
vzctl: vzctl-core-4.2-1.el6.x86_64
vzctl-4.2-1.el6.x86_64
I've tried to reboot the system with different kernels, but the same error. There's another strange thing: we have another machine with the same kernel but I cannot reproduce the error there.
I've also tried to run vzctl with gdb and search in the source code, and there seems to be a problem around setting up the environment:
In src/lib/hooks_vz.c there's a function:
static int vz_env_create_ioctl(vps_handler *h, envid_t veid, int flags)
{
struct vzctl_env_create env_create;
int errcode;
int retry = 0;
memset(&env_create, 0, sizeof(env_create));
env_create.veid = veid;
env_create.flags = flags;
do {
if (retry)
sleep(1);
errcode = ioctl(h->vzfd, VZCTL_ENV_CREATE, &env_create);
fprintf(stderr,"error code: %d\n",errcode);
} while (errcode < 0 && errno == EBUSY && retry++ < ENVRETRY);
if (errcode >= 0 && (flags & VE_ENTER)) {
/* Clear supplementary group IDs */
setgroups(0, NULL);
/* Set personality PER_LINUX32 for i386 based CTs */
set_personality32();
}
else{
fprintf(stderr,"%s,%d\n",strerror(errno),errno);
}
return errcode;
}
The ioctl returns with an error: INVALID ARG. Also the vzct start/stop don't work.
I compared the two host's environment variables, but no difference.
Thank you for your help in advance!
Regards,
Tamas
_______________________________________________ Users mailing list Users@... https://lists.openvz.org/mailman/listinfo/users
RSS Feed