| 28 | |
| 29 | template <typename I> |
| 30 | uint64_t get_file_offset(I* image_ctx, uint64_t object_no, |
| 31 | uint64_t object_off) { |
| 32 | auto off = io::util::raw_to_area_offset( |
| 33 | *image_ctx, Striper::get_file_offset(image_ctx->cct, &image_ctx->layout, |
| 34 | object_no, object_off)); |
| 35 | ceph_assert(off.second == io::ImageArea::DATA); |
| 36 | return off.first; |
| 37 | } |
| 38 | |
| 39 | template <typename I> |
| 40 | struct C_AlignedObjectReadRequest : public Context { |
no test coverage detected