]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
os/bluestore: fix deferred_queue locking
authorIgor Fedotov <ifedotov@suse.com>
Sat, 16 Jan 2021 16:54:52 +0000 (19:54 +0300)
committerNeha Ojha <nojha@redhat.com>
Wed, 20 Jan 2021 17:14:48 +0000 (17:14 +0000)
commite0c55ab9ee5f431ca84bb3b6e40201ad009ac21e
tree235741142869c653b29523741a61a2556c71daaa
parent76e46a2e520a4dc804de2c33425c63caaa22a6d8
os/bluestore: fix deferred_queue locking

https://github.com/ceph/ceph/pull/30027 introduced a gap in osr
protection (in _deferred_queue()) which could cause improper deferred_pending value while
processing osr from _deferred_aio_finish().
As a result both segmentation fault in _deferred_aio_finish() or deadlock could occur.

Fixes: https://tracker.ceph.com/issues/48776
Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit ac73df71584eb482e626f38e4a12f4c044db3231)
src/os/bluestore/BlueStore.cc