[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] xs: set read_thread stacksize



On 29/05/12 16:56, Simon Rowe wrote:
> xs_watch() creates a thread to wake watchers using default attributes. The
> stacksize can be quite large (8 MB on Linux), applications that link against
> xenstore end up having a larger memory footprint than necessary.
> 
> Signed-off-by: Simon Rowe <simon.rowe@xxxxxxxxxxxxx>
> 
> diff -r 53e0571f94e4 -r 0cf61ed6ce86 tools/xenstore/xs.c
> --- a/tools/xenstore/xs.c     Fri May 25 08:21:25 2012 +0100
> +++ b/tools/xenstore/xs.c     Tue May 29 16:45:03 2012 +0100
> @@ -705,11 +705,31 @@ bool xs_watch(struct xs_handle *h, const
>       /* We dynamically create a reader thread on demand. */
>       mutex_lock(&h->request_mutex);
>       if (!h->read_thr_exists) {
> +#if _POSIX_THREAD_ATTR_STACKSIZE > 0

This #if seems unnecessary.  pthread_attr_setsetstacksize() doesn't
appear to be an optional.

> +             pthread_attr_t attr;
> +
> +             if (pthread_attr_init(&attr) != 0) {
> +                     mutex_unlock(&h->request_mutex);
> +                     return false;
> +             }
> +             if (pthread_attr_setstacksize(&attr, 16 * 1024) != 0) {

#define for this value?

David

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.