On 3 January 2011 08:17, Mark Burgess <mark.burg...@iu.hio.no> wrote:
>
> the ps issue is already fixed as far as I know in current trunk svn.

Yes, enterprise_stubs.c has been updated to append "-z global" for the
global zone (see below).

I think this still will fail on Solaris, because the use of the -e
option (as set in classes.c) cancels out -z. The following is run in
the global zone on a server with many zones, note how the number of
processes stays the same in the two first commands (showing the total
number for all zones, including global), while the last ps shows
processes for the global zone only (now -e here).

$ ps -eo user|wc -l
    1826
$ ps -eo user -z global|wc -l
    1826
$ ps -o user -z global|wc -l
     248

The code should use either -e or -z global, as in the hack I did.

- Erlend

char *GetProcessOptions()
{
#ifdef HAVE_GETZONEID
 zoneid_t zid;
 char zone[ZONENAME_MAX];
 static psopts[CF_BUFSIZE];

zid = getzoneid();
getzonenamebyid(zid,zone,ZONENAME_MAX);

if (cf_strcmp(zone,"global") == 0)
   {
   snprintf(psopts,CF_BUFSIZE,"%s -z global",VPSOPTS[VSYSTEMHARDCLASS]);
   return psopts;
   }
#endif

return VPSOPTS[VSYSTEMHARDCLASS];
}
_______________________________________________
Help-cfengine mailing list
Help-cfengine@cfengine.org
https://cfengine.org/mailman/listinfo/help-cfengine

Reply via email to