]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
librbd: flush all queued object IO from simple scheduler
authorJason Dillaman <dillaman@redhat.com>
Wed, 22 Jul 2020 15:25:56 +0000 (11:25 -0400)
committerJason Dillaman <dillaman@redhat.com>
Wed, 22 Jul 2020 16:00:04 +0000 (12:00 -0400)
commit75ff8fd14dccaa7d2f11ba8a561ad3c0f410585c
tree22dd0aba9697ab7635d178f17ba94b20bbc70bbe
parent1613d272f43f11c444da3e53de96415d6968659a
librbd: flush all queued object IO from simple scheduler

Normally IO is tracked via the AioCompletion's async_op but the
scheduler will "complete" writes while the IO might be still
executing. Therefore, prior to shutting down this dispatch layer
we need to wait for all IO to complete.

Fixes: https://tracker.ceph.com/issues/46668
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
src/librbd/io/SimpleSchedulerObjectDispatch.cc
src/librbd/io/SimpleSchedulerObjectDispatch.h
src/test/librbd/io/test_mock_SimpleSchedulerObjectDispatch.cc