#include "librbd/object_map/ResizeRequest.h"
#include "common/dout.h"
#include "common/errno.h"
+#include "osdc/Striper.h"
#include "librbd/ImageCtx.h"
#include "librbd/ObjectMap.h"
#include "cls/lock/cls_lock_client.h"
uint8_t default_state) {
size_t orig_object_map_size = object_map->size();
object_map->resize(num_objs);
- for (uint64_t i = orig_object_map_size; i < object_map->size(); ++i) {
- (*object_map)[i] = default_state;
+ if (num_objs > orig_object_map_size) {
+ auto it = object_map->begin() + orig_object_map_size;
+ auto end_it = object_map->begin() + num_objs;
+ for (;it != end_it; ++it) {
+ *it = default_state;
+ }
}
}
librados::AioCompletion *rados_completion = create_callback_completion();
int r = m_image_ctx.md_ctx.aio_operate(oid, rados_completion, &op);
- assert(r == 0);
+ ceph_assert(r == 0);
rados_completion->release();
}