xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xensource.com
Subject: [PATCH 10 of 12] xenpaging: add helper function for unlinking pagefile
Date: Tue, 07 Jun 2011 11:53:12 +0200	[thread overview]
Message-ID: <fb445bd61233844f4b9d.1307440392@probook.site> (raw)
In-Reply-To: <patchbomb.1307440382@probook.site>

# HG changeset patch
# User Olaf Hering <olaf@aepfle.de>
# Date 1307437220 -7200
# Node ID fb445bd61233844f4b9d42b6eca172670f75eb98
# Parent  48244bc8156ff8eca82ce9ab811516aae3d3fe32
xenpaging: add helper function for unlinking pagefile

Unlink pagefile in the signal handler and also in the exit path.
This does not leave a stale pagefile if an error occoured.

Signed-off-by: Olaf Hering <olaf@aepfle.de>

diff -r 48244bc8156f -r fb445bd61233 tools/xenpaging/xenpaging.c
--- a/tools/xenpaging/xenpaging.c	Tue Jun 07 11:00:18 2011 +0200
+++ b/tools/xenpaging/xenpaging.c	Tue Jun 07 11:00:20 2011 +0200
@@ -41,11 +41,20 @@
 
 static char filename[80];
 static int interrupted;
+
+static void unlink_pagefile(void)
+{
+    if ( filename[0] )
+    {
+        unlink(filename);
+        filename[0] = '\0';
+    }
+}
+
 static void close_handler(int sig)
 {
     interrupted = sig;
-    if ( filename[0] )
-        unlink(filename);
+    unlink_pagefile();
 }
 
 static void *init_page(void)
@@ -679,6 +688,7 @@ int main(int argc, char *argv[])
 
  out:
     close(fd);
+    unlink_pagefile();
     free(victims);
 
     /* Tear down domain paging */

  parent reply	other threads:[~2011-06-07  9:53 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-07  9:53 [PATCH 00 of 12] xenpaging fixes for xen-unstable Olaf Hering
2011-06-07  9:53 ` [PATCH 01 of 12] xenpaging: correct dropping of pages to avoid full ring buffer Olaf Hering
2011-06-07  9:53 ` [PATCH 02 of 12] xenpaging: do not bounce p2mt to xenpaging Olaf Hering
2011-06-07  9:53 ` [PATCH 03 of 12] xenpaging: remove srand call Olaf Hering
2011-06-07  9:53 ` [PATCH 04 of 12] xenpaging: remove return values from functions that can not fail Olaf Hering
2011-06-07  9:53 ` [PATCH 05 of 12] xenpaging: catch xc_mem_paging_resume errors Olaf Hering
2011-06-07  9:53 ` [PATCH 06 of 12] xenpaging: remove local domain_id variable Olaf Hering
2011-06-07  9:53 ` [PATCH 07 of 12] xenpaging: move num_pages into xenpaging struct Olaf Hering
2011-06-07  9:53 ` [PATCH 08 of 12] xenpaging: start paging in the middle of gfn range Olaf Hering
2011-06-07  9:53 ` [PATCH 09 of 12] xenpaging: pass integer to xenpaging_populate_page Olaf Hering
2011-06-07  9:53 ` Olaf Hering [this message]
2011-06-07  9:53 ` [PATCH 11 of 12] xenpaging: add watch thread to catch guest shutdown Olaf Hering
2011-06-07 10:23   ` Ian Campbell
2011-06-07 19:07     ` Olaf Hering
2011-06-07  9:53 ` [PATCH 12 of 12] xenpaging: implement stopping of pager by sending SIGTERM/SIGINT Olaf Hering
2011-06-07 12:27 ` [PATCH 00 of 12] xenpaging fixes for xen-unstable Keir Fraser
2011-06-07 13:38   ` Olaf Hering
2011-06-08 16:01     ` Keir Fraser
2011-06-10  7:28     ` Keir Fraser
2011-06-10 11:27       ` Olaf Hering
2011-06-10 12:52         ` Keir Fraser

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=fb445bd61233844f4b9d.1307440392@probook.site \
    --to=olaf@aepfle.de \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).