librbd: use uint64_t instead of size_t for SparseExtent::length
SparseBufferlistExtent's ctor accepts size_t, so, on a 32-bit platform,
the parameter would be narrowed before passing to the ctor, and GCC
complains at seeing this:
/builds/a16bitsysop/aports/community/ceph/src/ceph-16.2.3/src/librbd/deep_copy/ObjectCopyRequest.cc:789:60: warning: narrowing conversion of 'object_extent.striper::LightweightObjectExtent::length'
from 'uint64_t' {aka 'long long unsigned int'} to 'size_t' {aka 'unsigned int'} [-Wnarrowing]
789 | {io::SPARSE_EXTENT_STATE_ZEROED, object_extent.length});
| ~~~~~~~~~~~~~~^~~~~~
so change SparseExtent::length to uint64_t, as ReadExtent::length is
uint64_t and related length() methods in the surrounding classes all
return uint64_t.