xenpaging: improve mainloop exit handling
authorOlaf Hering <olaf@aepfle.de>
Sun, 20 Nov 2011 16:02:39 +0000 (17:02 +0100)
committerOlaf Hering <olaf@aepfle.de>
Sun, 20 Nov 2011 16:02:39 +0000 (17:02 +0100)
Remove the if/else logic to exit from the in case a signal arrives.
Update comments.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
tools/xenpaging/xenpaging.c

index f9e0036a6fbd8055b2da74e8801532b1573314c9..07c91098299d24fbab4e6b41848cac3dbb54dbd4 100644 (file)
@@ -805,7 +805,7 @@ int main(int argc, char *argv[])
             }
         }
 
-        /* Write all pages back into the guest */
+        /* If interrupted, write all pages back into the guest */
         if ( interrupted == SIGTERM || interrupted == SIGINT )
         {
             /* If no more pages to process, exit loop. */
@@ -814,13 +814,15 @@ int main(int argc, char *argv[])
             
             /* One more round if there are still pages to process. */
             resume_pages(paging, paging->num_paged_out);
+
+            /* Resume main loop */
+            continue;
         }
-        else
-        {
-            /* Exit on any other signal */
-            if ( interrupted )
-                break;
-        }
+
+        /* Exit main loop on any other signal */
+        if ( interrupted )
+            break;
+
     }
     DPRINTF("xenpaging got signal %d\n", interrupted);