diff --git a/fs/orangefs/file.c b/fs/orangefs/file.c index dafa03ef0107302ec3b6e5a5eb1b28b1622f91d9..193671c137c35cb3b7044afaf93e285e463b8fd8 100644 --- a/fs/orangefs/file.c +++ b/fs/orangefs/file.c @@ -170,7 +170,7 @@ static ssize_t wait_for_direct_io(enum ORANGEFS_io_type type, struct inode *inod * 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 @@ static ssize_t wait_for_direct_io(enum ORANGEFS_io_type type, struct inode *inod } 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 @@ static ssize_t wait_for_direct_io(enum ORANGEFS_io_type type, struct inode *inod 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); diff --git a/fs/orangefs/orangefs-bufmap.c b/fs/orangefs/orangefs-bufmap.c index c60019de1fd8626892382b3b15edd0642b636889..1819dee584334800ed69490e40016b5698a41eba 100644 --- a/fs/orangefs/orangefs-bufmap.c +++ b/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; diff --git a/fs/orangefs/orangefs-bufmap.h b/fs/orangefs/orangefs-bufmap.h index dff55e2857c5ca0fa76da1c6c5f50f0e12047594..2a2d4269d03ebf257fb76a037b490ca75c598bef 100644 --- a/fs/orangefs/orangefs-bufmap.h +++ b/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);