All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tmem: fixup 2010 cleanup patch that breaks tmem save/restore
@ 2012-09-04 21:25 Dan Magenheimer
  2012-09-05 11:33 ` Jan Beulich
  0 siblings, 1 reply; 2+ messages in thread
From: Dan Magenheimer @ 2012-09-04 21:25 UTC (permalink / raw)
  To: xen-devel, keir; +Cc: Kurt Hackel, Konrad Wilk

[-- Attachment #1: Type: text/plain, Size: 1252 bytes --]

20918:a3fa6d444b25 "Fix domain reference leaks" (in Feb 2010, by Jan)
does some cleanup in addition to the leak fixes.  Unfortunately, that
cleanup inadvertently resulted in an incorrect fallthrough in a switch
statement which breaks tmem save/restore.

That broken patch was apparently applied to 4.0-testing and 4.1-testing
so those are broken as well.

What is the process now for requesting back-patches to 4.0 and 4.1?

(Side note: This does not by itself entirely fix save/restore in 4.2.)

Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com>

diff -r 1dfbae8dd282 xen/common/tmem.c
--- a/xen/common/tmem.c	Fri Aug 31 11:13:49 2012 +0100
+++ b/xen/common/tmem.c	Tue Sep 04 15:17:29 2012 -0600
@@ -2404,6 +2404,7 @@ static NOINLINE int tmemc_save_subop(int
         *uuid++ = pool->uuid[0];
         *uuid = pool->uuid[1];
         rc = 0;
+        break;
     case TMEMC_SAVE_END:
         client->live_migrating = 0;
         if ( !list_empty(&client->persistent_invalidated_list) )
@@ -2412,6 +2413,7 @@ static NOINLINE int tmemc_save_subop(int
                 pgp_free_from_inv_list(client,pgp);
         client->frozen = client->was_frozen;
         rc = 0;
+        break;
     }
     return rc;
 }

[-- Attachment #2: tmem-fix-switch-in-tmemsave.patch --]
[-- Type: application/octet-stream, Size: 661 bytes --]

diff -r 1dfbae8dd282 xen/common/tmem.c
--- a/xen/common/tmem.c	Fri Aug 31 11:13:49 2012 +0100
+++ b/xen/common/tmem.c	Tue Sep 04 15:17:29 2012 -0600
@@ -2404,6 +2404,7 @@ static NOINLINE int tmemc_save_subop(int
         *uuid++ = pool->uuid[0];
         *uuid = pool->uuid[1];
         rc = 0;
+        break;
     case TMEMC_SAVE_END:
         client->live_migrating = 0;
         if ( !list_empty(&client->persistent_invalidated_list) )
@@ -2412,6 +2413,7 @@ static NOINLINE int tmemc_save_subop(int
                 pgp_free_from_inv_list(client,pgp);
         client->frozen = client->was_frozen;
         rc = 0;
+        break;
     }
     return rc;
 }

[-- Attachment #3: Type: text/plain, Size: 126 bytes --]

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] tmem: fixup 2010 cleanup patch that breaks tmem save/restore
  2012-09-04 21:25 [PATCH] tmem: fixup 2010 cleanup patch that breaks tmem save/restore Dan Magenheimer
@ 2012-09-05 11:33 ` Jan Beulich
  0 siblings, 0 replies; 2+ messages in thread
From: Jan Beulich @ 2012-09-05 11:33 UTC (permalink / raw)
  To: Dan Magenheimer; +Cc: Kurt Hackel, Konrad Wilk, keir, xen-devel

>>> On 04.09.12 at 23:25, Dan Magenheimer <dan.magenheimer@oracle.com> wrote:
> 20918:a3fa6d444b25 "Fix domain reference leaks" (in Feb 2010, by Jan)
> does some cleanup in addition to the leak fixes.  Unfortunately, that
> cleanup inadvertently resulted in an incorrect fallthrough in a switch
> statement which breaks tmem save/restore.

Oh, I'm sorry for that. We had spotted these missing breaks in
the course of the XSA-15 investigations too, so I'm having a
similar patch pending (deferred its posting until after the
publishing of that advisory). I'd prefer the security ones to go in
first, and this one (or mine, which has some more cleanup in it)
on top. If it's going to be yours, then it would need re-basing, as
the security patches will break the context of the first hunk.

> That broken patch was apparently applied to 4.0-testing and 4.1-testing
> so those are broken as well.

The patch actually went in before 4.0.0-rc3, i.e. before
4.0-testing got branched off.

> What is the process now for requesting back-patches to 4.0 and 4.1?

Unless someone steps up to maintain the 4.0 tree, it'll be
considered dead with the release of 4.2.

For 4.1, I'll be making sure to apply it there too once it comes
through the unstable stage testing.

> (Side note: This does not by itself entirely fix save/restore in 4.2.)
> 
> Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com>

With the above, in any case

Acked-by: Jan Beulich <jbeulich@suse.com>

Jan

> diff -r 1dfbae8dd282 xen/common/tmem.c
> --- a/xen/common/tmem.c	Fri Aug 31 11:13:49 2012 +0100
> +++ b/xen/common/tmem.c	Tue Sep 04 15:17:29 2012 -0600
> @@ -2404,6 +2404,7 @@ static NOINLINE int tmemc_save_subop(int
>          *uuid++ = pool->uuid[0];
>          *uuid = pool->uuid[1];
>          rc = 0;
> +        break;
>      case TMEMC_SAVE_END:
>          client->live_migrating = 0;
>          if ( !list_empty(&client->persistent_invalidated_list) )
> @@ -2412,6 +2413,7 @@ static NOINLINE int tmemc_save_subop(int
>                  pgp_free_from_inv_list(client,pgp);
>          client->frozen = client->was_frozen;
>          rc = 0;
> +        break;
>      }
>      return rc;
>  }

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-09-05 11:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-09-04 21:25 [PATCH] tmem: fixup 2010 cleanup patch that breaks tmem save/restore Dan Magenheimer
2012-09-05 11:33 ` Jan Beulich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.