From: Sage Weil Date: Fri, 8 Jan 2016 16:17:02 +0000 (-0500) Subject: os/kstore: make fiemap behave past EOF X-Git-Tag: v10.0.3~88^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d4bded2681973bd99dc265e14f99c46c0ae653c3;p=ceph.git os/kstore: make fiemap behave past EOF Signed-off-by: Sage Weil --- diff --git a/src/os/kstore/KStore.cc b/src/os/kstore/KStore.cc index ff5e6896c535..841c6380b9f0 100644 --- a/src/os/kstore/KStore.cc +++ b/src/os/kstore/KStore.cc @@ -1613,7 +1613,7 @@ int KStore::fiemap( len = o->onode.size; if (offset > o->onode.size) - return 0; + goto out; if (offset + len > o->onode.size) { len = o->onode.size - offset; @@ -1621,8 +1621,11 @@ int KStore::fiemap( dout(20) << __func__ << " " << offset << "~" << len << " size " << o->onode.size << dendl; + // FIXME: do something smarter here m[0] = o->onode.size; + + out: ::encode(m, bl); dout(20) << __func__ << " " << offset << "~" << len << " size = 0 (" << m << ")" << dendl;