]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
common/condition_variable_debug: do not assert() if sloppy 29854/head
authorKefu Chai <kchai@redhat.com>
Fri, 23 Aug 2019 16:28:45 +0000 (00:28 +0800)
committerKefu Chai <kchai@redhat.com>
Fri, 23 Aug 2019 16:31:09 +0000 (00:31 +0800)
commit2a18b3bbd072a4ed2735f2c67e5d42a4d048f59c
tree1bd702fa347b8e29b4df3901269328b3e86c93ed
parent1116362118dee7dfd8a970173f60996a0ba6f520
common/condition_variable_debug: do not assert() if sloppy

replicate the behavior of `Cond::SloppySignal()` to avoid crash like

 ceph version Development (no_version) octopus (dev)
  1: <ceph::__ceph_assert_fail(char const*, char const, int, char const)+0x1e0> at /home/jenkins/workspace/ceph-master36/build/bin/ceph-osd
  2: <ceph::__ceph_assert_fail(ceph::assert_data const&)+0x2f> at /home/jenkins/workspace/ceph-master36/build/bin/ceph-osd
  3: <ceph::condition_variable_debug::notify_all(bool)+0x59> at /home/jenkins/workspace/ceph-master36/build/bin/ceph-osd
  4: <FileJournal::check_for_full(unsigned long, long, long)+0x4e2> at /home/jenkins/workspace/ceph-master36/build/bin/ceph-osd
  5: <FileJournal::prepare_single_write(FileJournal::write_item&, ceph::buffer::v14_2_0::list&, long&, unsigned long&, long&)+0x71> at /home/jenkins/workspace/ceph-master36/build/bin/ceph-osd
  6: <FileJournal::prepare_multi_write(ceph::buffer::v14_2_0::list&, unsigned long&, ceph::buffer::v14_2_0::list&)+0x19d> at /home/jenkins/workspace/ceph-master36/build/bin/ceph-osd
  7: <FileJournal::write_thread_entry(void)+0x561> at /home/jenkins/workspace/ceph-master36/build/bin/ceph-osd
  8: <FileJournal::Writer::entry(void)+0x19> at /home/jenkins/workspace/ceph-master36/build/bin/ceph-osd
  9: <Thread::entry_wrapper(void)+0x84> at /home/jenkins/workspace/ceph-master36/build/bin/ceph-osd
  10: <Thread::_entry_func(void*)+0x15> at /home/jenkins/workspace/ceph-master36/build/bin/ceph-osd

Signed-off-by: Kefu Chai <kchai@redhat.com>
src/common/condition_variable_debug.cc