From 1ebbb82cc4ccf8a5256e4d8dad2bfc22d2c26885 Mon Sep 17 00:00:00 2001 From: Sebastien Ponce Date: Thu, 12 Mar 2015 22:15:43 +0100 Subject: [PATCH] XrdCeph : fixed problem with files bigger than 2GB froo synchronous reads --- src/XrdCeph/XrdCephOssFile.cc | 2 +- src/XrdCeph/XrdCephPosix.cc | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/XrdCeph/XrdCephOssFile.cc b/src/XrdCeph/XrdCephOssFile.cc index 2b9fb065f17..d21eaaa5769 100644 --- a/src/XrdCeph/XrdCephOssFile.cc +++ b/src/XrdCeph/XrdCephOssFile.cc @@ -59,7 +59,7 @@ ssize_t XrdCephOssFile::Read(off_t offset, size_t blen) { } ssize_t XrdCephOssFile::Read(void *buff, off_t offset, size_t blen) { - int rc = ceph_posix_lseek(m_fd, offset, SEEK_SET); + long long rc = ceph_posix_lseek(m_fd, offset, SEEK_SET); if (offset == rc) { return ceph_posix_read(m_fd, buff, blen); } diff --git a/src/XrdCeph/XrdCephPosix.cc b/src/XrdCeph/XrdCephPosix.cc index 223c0e6a3c3..d822c2447df 100644 --- a/src/XrdCeph/XrdCephPosix.cc +++ b/src/XrdCeph/XrdCephPosix.cc @@ -511,7 +511,7 @@ off_t ceph_posix_lseek(int fd, off_t offset, int whence) { std::map::iterator it = g_fds.find(fd); if (it != g_fds.end()) { CephFileRef &fr = it->second; - logwrapper((char*)"ceph_lseek: for fd %d, offset=%d, whence=%d", fd, offset, whence); + logwrapper((char*)"ceph_lseek: for fd %d, offset=%lld, whence=%d", fd, offset, whence); return (off_t)lseek_compute_offset(fr, offset, whence); } else { return -EBADF; @@ -522,7 +522,7 @@ off64_t ceph_posix_lseek64(int fd, off64_t offset, int whence) { std::map::iterator it = g_fds.find(fd); if (it != g_fds.end()) { CephFileRef &fr = it->second; - logwrapper((char*)"ceph_lseek64: for fd %d, offset=%d, whence=%d", fd, offset, whence); + logwrapper((char*)"ceph_lseek64: for fd %d, offset=%lld, whence=%d", fd, offset, whence); return lseek_compute_offset(fr, offset, whence); } else { return -EBADF;