فهرست منبع

get rid of bufmap argument of orangefs_bufmap_put()

it's always equal to __orangefs_bufmap and the latter can't change
until we are done

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
Al Viro 9 سال پیش
والد
کامیت
1357d06d49
3فایلهای تغییر یافته به همراه6 افزوده شده و 5 حذف شده
  1. 3 3
      fs/orangefs/file.c
  2. 2 1
      fs/orangefs/orangefs-bufmap.c
  3. 1 1
      fs/orangefs/orangefs-bufmap.h

+ 3 - 3
fs/orangefs/file.c

@@ -170,7 +170,7 @@ populate_shared_memory:
 	 * a new shared memory location.
 	 */
 	if (ret == -EAGAIN && op_state_purged(new_op)) {
-		orangefs_bufmap_put(bufmap, buffer_index);
+		orangefs_bufmap_put(buffer_index);
 		buffer_index = -1;
 		if (type == ORANGEFS_IO_WRITE)
 			*iter = saved;
@@ -190,7 +190,7 @@ populate_shared_memory:
 		} else {
 			complete(&new_op->done);
 		}
-		orangefs_bufmap_put(bufmap, buffer_index);
+		orangefs_bufmap_put(buffer_index);
 		buffer_index = -1;
 		/*
 		 * don't write an error to syslog on signaled operation
@@ -239,7 +239,7 @@ done_copying:
 
 out:
 	if (buffer_index >= 0) {
-		orangefs_bufmap_put(bufmap, buffer_index);
+		orangefs_bufmap_put(buffer_index);
 		gossip_debug(GOSSIP_FILE_DEBUG,
 			     "%s(%pU): PUT buffer_index %d\n",
 			     __func__, handle, buffer_index);

+ 2 - 1
fs/orangefs/orangefs-bufmap.c

@@ -458,9 +458,10 @@ int orangefs_bufmap_get(struct orangefs_bufmap **mapp, int *buffer_index)
  *
  * no return value
  */
-void orangefs_bufmap_put(struct orangefs_bufmap *bufmap, int buffer_index)
+void orangefs_bufmap_put(int buffer_index)
 {
 	struct slot_args slargs;
+	struct orangefs_bufmap *bufmap = __orangefs_bufmap;
 
 	slargs.slot_count = bufmap->desc_count;
 	slargs.slot_array = bufmap->buffer_index_array;

+ 1 - 1
fs/orangefs/orangefs-bufmap.h

@@ -21,7 +21,7 @@ void orangefs_bufmap_finalize(void);
 
 int orangefs_bufmap_get(struct orangefs_bufmap **mapp, int *buffer_index);
 
-void orangefs_bufmap_put(struct orangefs_bufmap *bufmap, int buffer_index);
+void orangefs_bufmap_put(int buffer_index);
 
 int orangefs_readdir_index_get(struct orangefs_bufmap **mapp, int *buffer_index);