diff options
author | Sage Weil <sage@inktank.com> | 2013-10-01 21:07:49 -0700 |
---|---|---|
committer | Sage Weil <sage@inktank.com> | 2013-10-01 21:07:49 -0700 |
commit | fbeabccaf060fa79a65ffa61a0a1ac40100e1451 (patch) | |
tree | 5dd35e409a49b9d8eb179df235661c8be01e9227 | |
parent | 895939f0934e6da631f06d2476921a354df80aad (diff) | |
download | ceph-fbeabccaf060fa79a65ffa61a0a1ac40100e1451.tar.gz |
os/FileStore: report errors from _crc_load_... and _crc_save
Signed-off-by: Sage Weil <sage@inktank.com>
-rw-r--r-- | src/os/GenericFileStoreBackend.cc | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/os/GenericFileStoreBackend.cc b/src/os/GenericFileStoreBackend.cc index dad1a9c220c..81d896a0943 100644 --- a/src/os/GenericFileStoreBackend.cc +++ b/src/os/GenericFileStoreBackend.cc @@ -263,6 +263,7 @@ int GenericFileStoreBackend::_crc_load_or_init(int fd, SloppyCRCMap *cm) { char buf[100]; bufferptr bp; + int r = 0; int l = chain_fgetxattr(fd, SLOPPY_CRC_XATTR, buf, sizeof(buf)); if (l == -ENODATA) { return 0; @@ -284,16 +285,21 @@ int GenericFileStoreBackend::_crc_load_or_init(int fd, SloppyCRCMap *cm) ::decode(*cm, p); } catch (buffer::error &e) { - return -EIO; + r = -EIO; } - return 0; + if (r < 0) + derr << __func__ << " got " << cpp_strerror(r) << dendl; + return r; } int GenericFileStoreBackend::_crc_save(int fd, SloppyCRCMap *cm) { bufferlist bl; ::encode(*cm, bl); - return chain_fsetxattr(fd, SLOPPY_CRC_XATTR, bl.c_str(), bl.length()); + int r = chain_fsetxattr(fd, SLOPPY_CRC_XATTR, bl.c_str(), bl.length()); + if (r < 0) + derr << __func__ << " got " << cpp_strerror(r) << dendl; + return r; } int GenericFileStoreBackend::_crc_update_write(int fd, loff_t off, size_t len, const bufferlist& bl) |