[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] tools/xenconsoled: Initialise static data before use
On Thu, 2013-03-07 at 18:54 +0000, Andrew Cooper wrote: > On 07/03/13 18:45, Andrew Cooper wrote: > > 'fds' and 'current_array_size' are used in a memset() in reset_fds(), and > > for > > the first call to set_fds() before being initialised. > > > > Also initialise nr_fds for sanity sake. > > > > This is another regression introduced by > > > > "Switch from select() to poll() in xenconsoled's IO loop." > > hg c/s 26405:7359c3122c5d > > git cc5434c933153c4b8812d1df901f8915c22830a8 > > > > Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> > > Signed-off-by: Marcus Granado <marcus.granado@xxxxxxxxxx> > > > > --- > > > > This is still not enough to fix the issue of xenconsoled exiting after 384 > > VMs, but does allow us to reliably reach the 383rd VM. > > On second thoughts, memset(NULL, 0, 0); is still silly. I shall resin > tomorrow. > I googled "memset NULL", presumably this is undefined and should be fix. :-( You fix here is quite odd, because these static variables should be initialized to 0 automatically. Is this something related to compiler / CFLAGS settings that trigger the bug? I just tested booting up >384 mini-os, with you previous patch applied, everything worked fine. I'm setting up LVM on my test box to test with normal Linux guests. A hint on "128", set_fds expands the array on a multiple of 128. Wei. > ~Andrew > > > > > diff -r 94ece33caae2 -r 803a5869bfb5 tools/console/daemon/io.c > > --- a/tools/console/daemon/io.c > > +++ b/tools/console/daemon/io.c > > @@ -70,9 +70,9 @@ static int log_hv_fd = -1; > > > > static xc_gnttab *xcg_handle = NULL; > > > > -static struct pollfd *fds; > > -static unsigned int current_array_size; > > -static unsigned int nr_fds; > > +static struct pollfd *fds = NULL; > > +static unsigned int current_array_size = 0; > > +static unsigned int nr_fds = 0; > > > > #define ROUNDUP(_x,_w) (((unsigned long)(_x)+(1UL<<(_w))-1) & > > ~((1UL<<(_w))-1)) > > > > > > _______________________________________________ > > Xen-devel mailing list > > Xen-devel@xxxxxxxxxxxxx > > http://lists.xen.org/xen-devel > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |