Make sense of the inner loop in write_thread. The crash on
"it != m_events.end()" assert reproduces even faster this way.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit
d790b57b4bd3868cf12941c565b6906534e19f91)
bufferlist payload_bl;
payload_bl.append(payload);
auto aio_comp = new librbd::io::AioCompletion();
- api::Io<>::aio_write(*ictx, aio_comp, 0, payload.size(),
+ api::Io<>::aio_write(*ictx, aio_comp, offset, payload.size(),
std::move(payload_bl), 0, true);
ASSERT_EQ(0, aio_comp->wait_for_complete());
aio_comp->release();