[CRIU] [PATCH 2/2] reg-files: No need for atomic @users

Cyrill Gorcunov gorcunov at openvz.org
Mon Sep 17 11:14:23 EDT 2012


We're under lock anyway.

Signed-off-by: Cyrill Gorcunov <gorcunov at openvz.org>
---
 files-reg.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/files-reg.c b/files-reg.c
index 6ffa6fa..27d1148 100644
--- a/files-reg.c
+++ b/files-reg.c
@@ -37,7 +37,7 @@ struct ghost_file {
 			char *path;
 		};
 	};
-	atomic_t users;
+	unsigned int users;
 };
 
 static u32 ghost_file_ids = 1;
@@ -116,10 +116,10 @@ static int open_remap_ghost(struct reg_file_info *rfi,
 	close(gfd);
 
 	gf->id = rfe->remap_id;
-	atomic_set(&gf->users, 0);
+	gf->users = 0;
 	list_add_tail(&gf->list, &ghost_files);
 gf_found:
-	atomic_inc(&gf->users);
+	gf->users++;
 	rfi->ghost = gf;
 	return 0;
 
@@ -370,7 +370,8 @@ static int open_path(struct file_desc *d,
 
 	if (rfi->ghost) {
 		unlink(rfi->path);
-		if (atomic_dec_and_test(&rfi->ghost->users)) {
+		BUG_ON(!rfi->ghost->users);
+		if (--rfi->ghost->users == 0) {
 			pr_info("Unlink the ghost %s\n", rfi->ghost->path);
 			unlink(rfi->ghost->path);
 		}
-- 
1.7.7.6



More information about the CRIU mailing list