Browse Source

dm exception store: introduce area_location function

Move this logic to a function, because it will be reused later.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Mikulas Patocka 16 years ago
parent
commit
a481db7846
1 changed files with 9 additions and 2 deletions
  1. 9 2
      drivers/md/dm-exception-store.c

+ 9 - 2
drivers/md/dm-exception-store.c

@@ -208,6 +208,14 @@ static int chunk_io(struct pstore *ps, uint32_t chunk, int rw, int metadata)
 	return req.result;
 	return req.result;
 }
 }
 
 
+/*
+ * Convert a metadata area index to a chunk index.
+ */
+static chunk_t area_location(struct pstore *ps, chunk_t area)
+{
+	return 1 + ((ps->exceptions_per_area + 1) * area);
+}
+
 /*
 /*
  * Read or write a metadata area.  Remembering to skip the first
  * Read or write a metadata area.  Remembering to skip the first
  * chunk which holds the header.
  * chunk which holds the header.
@@ -217,8 +225,7 @@ static int area_io(struct pstore *ps, uint32_t area, int rw)
 	int r;
 	int r;
 	uint32_t chunk;
 	uint32_t chunk;
 
 
-	/* convert a metadata area index to a chunk index */
-	chunk = 1 + ((ps->exceptions_per_area + 1) * area);
+	chunk = area_location(ps, area);
 
 
 	r = chunk_io(ps, chunk, rw, 0);
 	r = chunk_io(ps, chunk, rw, 0);
 	if (r)
 	if (r)