[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] Convert balloon driver to xenstore
On 8/2/05, Dan Smith <danms@xxxxxxxxxx> wrote: > The attached patch converts the balloon driver and xend to use > xenstore instead of control messages. > <snip> > +static void watch_target(struct xenbus_watch *watch, const char *node) > +{ > + unsigned long new_target; > + int err; > + > + if(watch == &root_watch) > + { > + /* FIXME: This is part of a dom0 sequencing workaround */ > + if(register_xenbus_watch(&xb_watch) == 0) > + { > + /* > + We successfully set a watch on memory/target: > + now we can stop watching root > + */ > + unregister_xenbus_watch(&root_watch); > + balloon_xenbus_init=1; > + } > + else > + { > + return; > + } > + } > + > + err = xenbus_scanf("memory", "target", "%lu", &new_target); > + > + if(err != 1) > + { > + IPRINTK("Unable to read memory/target\n"); > + return; > + } > + > + set_new_target(new_target >> PAGE_SHIFT); as under "memory"node, there probably are several nodes besides "target" (that means what triggered this watch may be not balloon request), i guess it is better to do some checking before calling set_new_target, like this: if (new_target != target_pages) set_new_target(new_target >> PAGE_SHIFT); regards, aq _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |