From: Enrico Scholz Date: Fri, 20 Feb 2004 17:04:12 +0000 (+0000) Subject: vc_get_vx_info_v13(): handle xid==0 and xid==1 case manually X-Git-Tag: VERSION_0_10~593 X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=10d078bba28b291b037063982c3e52a32cf0bd43;p=util-vserver.git vc_get_vx_info_v13(): handle xid==0 and xid==1 case manually git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@970 94cd875c-1c1d-0410-91d2-eb244daf1a30 --- diff --git a/util-vserver/lib/syscall_getvxinfo-v13.hc b/util-vserver/lib/syscall_getvxinfo-v13.hc index da6b78a..f4584d8 100644 --- a/util-vserver/lib/syscall_getvxinfo-v13.hc +++ b/util-vserver/lib/syscall_getvxinfo-v13.hc @@ -23,14 +23,22 @@ static inline ALWAYSINLINE int vc_get_vx_info_v13(xid_t xid, struct vc_vx_info *info) { - struct vcmd_vx_info_v0 res; - int rc; + if (xid==0 || xid==1) { + info->xid = xid; + info->initpid = -1; - rc = vserver(VCMD_vx_info, CTX_USER2KERNEL(xid), &res); - if (rc==-1) return -1; + return 0; + } + else { + struct vcmd_vx_info_v0 res; + int rc; - info->xid = CTX_KERNEL2USER(res.xid); - info->initpid = res.initpid; + rc = vserver(VCMD_vx_info, CTX_USER2KERNEL(xid), &res); + if (rc==-1) return -1; - return rc; + info->xid = CTX_KERNEL2USER(res.xid); + info->initpid = res.initpid; + + return rc; + } }