summaryrefslogtreecommitdiffstats
path: root/api/src
diff options
context:
space:
mode:
authorShyamsundarR <srangana@redhat.com>2018-05-08 11:06:15 -0400
committerShyamsundarR <srangana@redhat.com>2018-05-08 11:27:48 -0400
commit16873e16f3fdfe7f83ca919ad188075eebb5dd7c (patch)
treec48e33a299a52c533c134942aca8c33992c26dbe /api/src
parent427951b7f74c643d5b7c7c946bc348209b974274 (diff)
Revert "gfapi: return pre/post attributes from glfs_pread/pwrite"
This reverts commit d01f7244e9d9f7e3ef84e0ba7b48ef1b1b09d809. This is being reverted as the API signatures should adapt to a statx like structure, and also all APIs that need to return pre/post attrs are not complete. As a result, instead of fixing up part of the APIs and then refixing the same in a later release, removing these set of fixes from the branch Additionally fixed up posix-entry-ops.c which was using the new syncop signature Updates: bz#1575386 Change-Id: I35222dadc4a2e97010bc1e6b97b6f83583c311f6
Diffstat (limited to 'api/src')
-rw-r--r--api/src/gfapi.aliases6
-rw-r--r--api/src/gfapi.map4
-rw-r--r--api/src/glfs-fops.c100
-rw-r--r--api/src/glfs.h9
4 files changed, 27 insertions, 92 deletions
diff --git a/api/src/gfapi.aliases b/api/src/gfapi.aliases
index 4b3bcc1fb54..bf675e865db 100644
--- a/api/src/gfapi.aliases
+++ b/api/src/gfapi.aliases
@@ -24,8 +24,8 @@ _pub_glfs_readv _glfs_readv$GFAPI_3.4.0
_pub_glfs_writev _glfs_writev$GFAPI_3.4.0
_pub_glfs_readv_async _glfs_readv_async$GFAPI_3.4.0
_pub_glfs_writev_async _glfs_writev_async$GFAPI_3.4.0
-_pub_glfs_pread34 _glfs_pread$GFAPI_3.4.0
-_pub_glfs_pwrite34 _glfs_pwrite$GFAPI_3.4.0
+_pub_glfs_pread _glfs_pread$GFAPI_3.4.0
+_pub_glfs_pwrite _glfs_pwrite$GFAPI_3.4.0
_pub_glfs_pread_async _glfs_pread_async$GFAPI_3.4.0
_pub_glfs_pwrite_async _glfs_pwrite_async$GFAPI_3.4.0
_pub_glfs_preadv _glfs_preadv$GFAPI_3.4.0
@@ -173,5 +173,3 @@ _pub_glfs_file_lock _glfs_file_lock$GFAPI_4.0.0
_pub_glfs_lease _glfs_lease$GFAPI_4.0.0
_pub_glfs_h_lease _glfs_h_lease$GFAPI_4.0.0
_pub_glfs_recall_lease _glfs_recall_lease$GFAPI_4.0.0
-_pub_glfs_pread _glfs_pread$GFAPI_4.0.0
-_pub_glfs_pwrite _glfs_pwrite$GFAPI_4.0.0
diff --git a/api/src/gfapi.map b/api/src/gfapi.map
index 09de5fada3a..75ca2645988 100644
--- a/api/src/gfapi.map
+++ b/api/src/gfapi.map
@@ -30,6 +30,8 @@ GFAPI_3.4.0 {
glfs_writev;
glfs_readv_async;
glfs_writev_async;
+ glfs_pread;
+ glfs_pwrite;
glfs_pread_async;
glfs_pwrite_async;
glfs_preadv;
@@ -224,6 +226,4 @@ GFAPI_4.0.0 {
glfs_lease;
glfs_h_lease;
glfs_recall_lease;
- glfs_pread;
- glfs_pwrite;
} GFAPI_3.13.0;
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;
diff --git a/api/src/glfs.h b/api/src/glfs.h
index c174f53dfaa..ceed2b34290 100644
--- a/api/src/glfs.h
+++ b/api/src/glfs.h
@@ -534,12 +534,11 @@ int glfs_writev_async (glfs_fd_t *fd, const struct iovec *iov, int count,
// glfs_p{read,write}[_async]
ssize_t glfs_pread (glfs_fd_t *fd, void *buf, size_t count, off_t offset,
- int flags, struct stat *poststat) __THROW
- GFAPI_PUBLIC(glfs_pread, 4.0.0);
+ int flags) __THROW
+ GFAPI_PUBLIC(glfs_pread, 3.4.0);
ssize_t glfs_pwrite (glfs_fd_t *fd, const void *buf, size_t count,
- off_t offset, int flags, struct stat *prestat,
- struct stat *poststat) __THROW
- GFAPI_PUBLIC(glfs_pwrite, 4.0.0);
+ off_t offset, int flags) __THROW
+ GFAPI_PUBLIC(glfs_pwrite, 3.4.0);
int glfs_pread_async (glfs_fd_t *fd, void *buf, size_t count, off_t offset,
int flags, glfs_io_cbk fn, void *data) __THROW
GFAPI_PUBLIC(glfs_pread_async, 3.4.0);