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

Re: [Xen-devel] [PATCH, GIT] xen: avoid allocation causing potential swap activity on the resume path



Jeremy,

are you happy for me to send this +
5c6aea17c9692e6c12f198573ef640a9dfb2b431 ("xen: ensure timer tick is
resumed even on CPU driving the resume") to Linus as bugfixes for 2.6.35
(+stable backport)?

Ian.

On Tue, 2010-05-25 at 13:34 +0100, Ian Campbell wrote:
> The following changes since commit 5c6aea17c9692e6c12f198573ef640a9dfb2b431:
>   Ian Campbell (1):
>         xen: ensure timer tick is resumed even on CPU driving the resume
> 
> are available in the git repository at:
> 
>   git://xenbits.xensource.com/people/ianc/linux-2.6.git for-jeremy/saverestore
> 
> Ian Campbell (1):
>       xen: avoid allocation causing potential swap activity on the resume path
> 
>  drivers/xen/xenbus/xenbus_xs.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> Subject: [PATCH] xen: avoid allocation causing potential swap activity on the 
> resume path
> 
> Since the device we are resuming could be the device containing the
> swap device we should ensure that the allocation cannot cause
> IO.
> 
> On resume, this path is triggered when the running system tries to
> continue using its devices.  If it cannot then the resume will fail;
> to try to avoid this we let it dip into the emergency pools.
> 
> The majority of these changes were made when linux-2.6.18-xen.hg
> changeset e8b49cfbdac0 was ported upstream in
> a144ff09bc52ef3f3684ed23eadc9c7c0e57b3aa but somehow this hunk was
> dropped.
> 
> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
> Cc: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
> Cc: Stable Kernel <stable@xxxxxxxxxx>
> ---
>  drivers/xen/xenbus/xenbus_xs.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/xen/xenbus/xenbus_xs.c b/drivers/xen/xenbus/xenbus_xs.c
> index 6f91e8c..5534690 100644
> --- a/drivers/xen/xenbus/xenbus_xs.c
> +++ b/drivers/xen/xenbus/xenbus_xs.c
> @@ -534,7 +534,7 @@ int xenbus_printf(struct xenbus_transaction t,
>  #define PRINTF_BUFFER_SIZE 4096
>       char *printf_buffer;
>  
> -     printf_buffer = kmalloc(PRINTF_BUFFER_SIZE, GFP_KERNEL);
> +     printf_buffer = kmalloc(PRINTF_BUFFER_SIZE, GFP_NOIO | __GFP_HIGH);
>       if (printf_buffer == NULL)
>               return -ENOMEM;
>  



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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