Commit dbcb5e7f authored by Martin Brandenburg's avatar Martin Brandenburg Committed by Mike Marshall

orangefs: open code short single-use functions

Signed-off-by: default avatarMartin Brandenburg <martin@omnibond.com>
Signed-off-by: default avatarMike Marshall <hubcap@omnibond.com>
parent 81e3d025
...@@ -41,70 +41,6 @@ static int flush_racache(struct inode *inode) ...@@ -41,70 +41,6 @@ static int flush_racache(struct inode *inode)
return ret; return ret;
} }
/*
* Copy to client-core's address space from the buffers specified
* by the iovec upto total_size bytes.
* NOTE: the iovector can either contain addresses which
* can futher be kernel-space or user-space addresses.
* or it can pointers to struct page's
*/
static int precopy_buffers(int buffer_index,
struct iov_iter *iter,
size_t total_size)
{
int ret = 0;
/*
* copy data from application/kernel by pulling it out
* of the iovec.
*/
if (total_size) {
ret = orangefs_bufmap_copy_from_iovec(iter,
buffer_index,
total_size);
if (ret < 0)
gossip_err("%s: Failed to copy-in buffers. Please make sure that the pvfs2-client is running. %ld\n",
__func__,
(long)ret);
}
if (ret < 0)
gossip_err("%s: Failed to copy-in buffers. Please make sure that the pvfs2-client is running. %ld\n",
__func__,
(long)ret);
return ret;
}
/*
* Copy from client-core's address space to the buffers specified
* by the iovec upto total_size bytes.
* NOTE: the iovector can either contain addresses which
* can futher be kernel-space or user-space addresses.
* or it can pointers to struct page's
*/
static int postcopy_buffers(int buffer_index,
struct iov_iter *iter,
size_t total_size)
{
int ret = 0;
/*
* copy data to application/kernel by pushing it out to
* the iovec. NOTE; target buffers can be addresses or
* struct page pointers.
*/
if (total_size) {
ret = orangefs_bufmap_copy_to_iovec(iter,
buffer_index,
total_size);
if (ret < 0)
gossip_err("%s: Failed to copy-out buffers. Please make sure that the pvfs2-client is running (%ld)\n",
__func__,
(long)ret);
}
return ret;
}
/* /*
* Post and wait for the I/O upcall to finish * Post and wait for the I/O upcall to finish
*/ */
...@@ -157,15 +93,16 @@ static ssize_t wait_for_direct_io(enum ORANGEFS_io_type type, struct inode *inod ...@@ -157,15 +93,16 @@ static ssize_t wait_for_direct_io(enum ORANGEFS_io_type type, struct inode *inod
total_size); total_size);
/* /*
* Stage 1: copy the buffers into client-core's address space * Stage 1: copy the buffers into client-core's address space
* precopy_buffers only pertains to writes.
*/ */
if (type == ORANGEFS_IO_WRITE) { if (type == ORANGEFS_IO_WRITE && total_size) {
ret = precopy_buffers(buffer_index, ret = orangefs_bufmap_copy_from_iovec(iter, buffer_index,
iter,
total_size); total_size);
if (ret < 0) if (ret < 0) {
gossip_err("%s: Failed to copy-in buffers. Please make sure that the pvfs2-client is running. %ld\n",
__func__, (long)ret);
goto out; goto out;
} }
}
gossip_debug(GOSSIP_FILE_DEBUG, gossip_debug(GOSSIP_FILE_DEBUG,
"%s(%pU): Calling post_io_request with tag (%llu)\n", "%s(%pU): Calling post_io_request with tag (%llu)\n",
...@@ -260,15 +197,21 @@ static ssize_t wait_for_direct_io(enum ORANGEFS_io_type type, struct inode *inod ...@@ -260,15 +197,21 @@ static ssize_t wait_for_direct_io(enum ORANGEFS_io_type type, struct inode *inod
/* /*
* Stage 3: Post copy buffers from client-core's address space * Stage 3: Post copy buffers from client-core's address space
* postcopy_buffers only pertains to reads.
*/ */
if (type == ORANGEFS_IO_READ) { if (type == ORANGEFS_IO_READ && new_op->downcall.resp.io.amt_complete) {
ret = postcopy_buffers(buffer_index, /*
iter, * NOTE: the iovector can either contain addresses which
* can futher be kernel-space or user-space addresses.
* or it can pointers to struct page's
*/
ret = orangefs_bufmap_copy_to_iovec(iter, buffer_index,
new_op->downcall.resp.io.amt_complete); new_op->downcall.resp.io.amt_complete);
if (ret < 0) if (ret < 0) {
gossip_err("%s: Failed to copy-out buffers. Please make sure that the pvfs2-client is running (%ld)\n",
__func__, (long)ret);
goto out; goto out;
} }
}
gossip_debug(GOSSIP_FILE_DEBUG, gossip_debug(GOSSIP_FILE_DEBUG,
"%s(%pU): Amount %s, returned by the sys-io call:%d\n", "%s(%pU): Amount %s, returned by the sys-io call:%d\n",
__func__, __func__,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment