summaryrefslogtreecommitdiffstats
path: root/api/src/glfs-fops.c
diff options
context:
space:
mode:
Diffstat (limited to 'api/src/glfs-fops.c')
-rw-r--r--api/src/glfs-fops.c100
1 files changed, 19 insertions, 81 deletions
diff --git a/api/src/glfs-fops.c b/api/src/glfs-fops.c
index 35a6a6628e8..f243999c0c8 100644
--- a/api/src/glfs-fops.c
+++ b/api/src/glfs-fops.c
@@ -748,9 +748,9 @@ invalid_fs:
GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_lseek, 3.4.0);
-static ssize_t
-glfs_preadv_common (struct glfs_fd *glfd, const struct iovec *iovec,
- int iovcnt, off_t offset, int flags, struct stat *poststat)
+ssize_t
+pub_glfs_preadv (struct glfs_fd *glfd, const struct iovec *iovec, int iovcnt,
+ off_t offset, int flags)
{
xlator_t *subvol = NULL;
ssize_t ret = -1;
@@ -759,7 +759,6 @@ glfs_preadv_common (struct glfs_fd *glfd, const struct iovec *iovec,
int cnt = 0;
struct iobref *iobref = NULL;
fd_t *fd = NULL;
- struct iatt iatt = {0, };
dict_t *fop_attr = NULL;
DECLARE_OLD_THIS;
@@ -788,12 +787,9 @@ glfs_preadv_common (struct glfs_fd *glfd, const struct iovec *iovec,
gf_msg_debug ("gfapi", 0, "Getting leaseid from thread failed");
ret = syncop_readv (subvol, fd, size, offset, 0, &iov, &cnt, &iobref,
- &iatt, fop_attr, NULL);
- DECODE_SYNCOP_ERR (ret);
-
- if (ret >= 0 && poststat)
- glfs_iatt_to_stat (glfd->fs, &iatt, poststat);
+ fop_attr, NULL);
+ DECODE_SYNCOP_ERR (ret);
if (ret <= 0)
goto out;
@@ -823,13 +819,6 @@ invalid_fs:
return ret;
}
-ssize_t
-pub_glfs_preadv (struct glfs_fd *glfd, const struct iovec *iovec, int iovcnt,
- off_t offset, int flags)
-{
- return glfs_preadv_common (glfd, iovec, iovcnt, offset, flags, NULL);
-}
-
GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_preadv, 3.4.0);
@@ -851,8 +840,8 @@ GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_read, 3.4.0);
ssize_t
-pub_glfs_pread34 (struct glfs_fd *glfd, void *buf, size_t count, off_t offset,
- int flags)
+pub_glfs_pread (struct glfs_fd *glfd, void *buf, size_t count, off_t offset,
+ int flags)
{
struct iovec iov = {0, };
ssize_t ret = 0;
@@ -865,25 +854,7 @@ pub_glfs_pread34 (struct glfs_fd *glfd, void *buf, size_t count, off_t offset,
return ret;
}
-GFAPI_SYMVER_PUBLIC(glfs_pread34, glfs_pread, 3.4.0);
-
-
-ssize_t
-pub_glfs_pread (struct glfs_fd *glfd, void *buf, size_t count, off_t offset,
- int flags, struct stat *poststat)
-{
- struct iovec iov = {0, };
- ssize_t ret = 0;
-
- iov.iov_base = buf;
- iov.iov_len = count;
-
- ret = glfs_preadv_common (glfd, &iov, 1, offset, flags, poststat);
-
- return ret;
-}
-
-GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_pread, 4.0.0);
+GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_pread, 3.4.0);
ssize_t
@@ -1179,10 +1150,9 @@ out:
}
-static ssize_t
-glfs_pwritev_common (struct glfs_fd *glfd, const struct iovec *iovec,
- int iovcnt, off_t offset, int flags,
- struct stat *prestat, struct stat *poststat)
+ssize_t
+pub_glfs_pwritev (struct glfs_fd *glfd, const struct iovec *iovec, int iovcnt,
+ off_t offset, int flags)
{
xlator_t *subvol = NULL;
int ret = -1;
@@ -1190,7 +1160,6 @@ glfs_pwritev_common (struct glfs_fd *glfd, const struct iovec *iovec,
struct iobuf *iobuf = NULL;
struct iovec iov = {0, };
fd_t *fd = NULL;
- struct iatt preiatt = {0, }, postiatt = {0, };
dict_t *fop_attr = NULL;
DECLARE_OLD_THIS;
@@ -1221,20 +1190,15 @@ glfs_pwritev_common (struct glfs_fd *glfd, const struct iovec *iovec,
gf_msg_debug ("gfapi", 0, "Getting leaseid from thread failed");
ret = syncop_writev (subvol, fd, &iov, 1, offset, iobref, flags,
- &preiatt, &postiatt, fop_attr, NULL);
- DECODE_SYNCOP_ERR (ret);
+ fop_attr, NULL);
- if (ret >= 0) {
- if (prestat)
- glfs_iatt_to_stat (glfd->fs, &preiatt, prestat);
- if (poststat)
- glfs_iatt_to_stat (glfd->fs, &postiatt, poststat);
- }
+ DECODE_SYNCOP_ERR (ret);
if (ret <= 0)
goto out;
glfd->offset = (offset + iov.iov_len);
+
out:
if (iobuf)
iobuf_unref (iobuf);
@@ -1255,14 +1219,6 @@ invalid_fs:
return ret;
}
-ssize_t
-pub_glfs_pwritev (struct glfs_fd *glfd, const struct iovec *iovec, int iovcnt,
- off_t offset, int flags)
-{
- return glfs_pwritev_common (glfd, iovec, iovcnt, offset, flags,
- NULL, NULL);
-}
-
GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_pwritev, 3.4.0);
@@ -1298,8 +1254,8 @@ GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_writev, 3.4.0);
ssize_t
-pub_glfs_pwrite34 (struct glfs_fd *glfd, const void *buf, size_t count,
- off_t offset, int flags)
+pub_glfs_pwrite (struct glfs_fd *glfd, const void *buf, size_t count,
+ off_t offset, int flags)
{
struct iovec iov = {0, };
ssize_t ret = 0;
@@ -1312,26 +1268,8 @@ pub_glfs_pwrite34 (struct glfs_fd *glfd, const void *buf, size_t count,
return ret;
}
-GFAPI_SYMVER_PUBLIC(glfs_pwrite34, glfs_pwrite, 3.4.0);
-
-ssize_t
-pub_glfs_pwrite (struct glfs_fd *glfd, const void *buf, size_t count,
- off_t offset, int flags, struct stat *prestat,
- struct stat *poststat)
-{
- struct iovec iov = {0, };
- ssize_t ret = 0;
-
- iov.iov_base = (void *) buf;
- iov.iov_len = count;
-
- ret = glfs_pwritev_common (glfd, &iov, 1, offset, flags,
- prestat, poststat);
-
- return ret;
-}
+GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_pwrite, 3.4.0);
-GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_pwrite, 4.0.0);
extern glfs_t *pub_glfs_from_glfd (glfs_fd_t *);
@@ -5143,7 +5081,7 @@ glfs_anonymous_pwritev (struct glfs *fs, struct glfs_object *object,
/* TODO : set leaseid */
ret = syncop_writev (subvol, fd, &iov, 1, offset, iobref, flags,
- NULL, NULL, NULL, NULL);
+ NULL, NULL);
DECODE_SYNCOP_ERR (ret);
iobuf_unref (iobuf);
@@ -5213,7 +5151,7 @@ glfs_anonymous_preadv (struct glfs *fs, struct glfs_object *object,
/* TODO : set leaseid */
ret = syncop_readv (subvol, fd, size, offset, flags, &iov, &cnt,
- &iobref, NULL, NULL, NULL);
+ &iobref, NULL, NULL);
DECODE_SYNCOP_ERR (ret);
if (ret <= 0)
goto out;