[CRIU] [PATCH 5/5] log: open pidfile at work dir

Ruslan Kuprieiev kupruser at gmail.com
Tue Nov 12 13:43:01 PST 2013


Signed-off-by: Ruslan Kuprieiev <kupruser at gmail.com>
---
 log.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/log.c b/log.c
index c06d1c2..3ede8d4 100644
--- a/log.c
+++ b/log.c
@@ -195,9 +195,15 @@ void print_on_level(unsigned int loglevel, const char *format, ...)
 
 int write_pidfile(char *pfname, int pid)
 {
-	int fd;
+	int fd, dfd;
 
-	fd = open(pfname, O_WRONLY | O_TRUNC | O_CREAT, 0600);
+	dfd = get_service_fd(WORK_DIR_FD_OFF);
+	if (dfd < 0) {
+		pr_perror("Work dir isn't set");
+		return -1;
+	}
+
+	fd = openat(dfd, pfname, O_WRONLY | O_TRUNC | O_CREAT, 0600);
 	if (fd == -1) {
 		pr_perror("Can't open %s", pfname);
 		return -1;
-- 
1.8.1.2



More information about the CRIU mailing list