Project

General

Profile

Actions

Bug #10827

closed

seg fault: Objecter::linger_register

Added by Jason Dillaman about 9 years ago. Updated about 9 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Jason Dillaman
Category:
-
Target version:
-
% Done:

0%

Source:
other
Tags:
Backport:
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Objecter::linger_register is not holding the rwlock when it manipulates data structures:

#0  0x00007ffe250512b0 in std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&) () from /lib64/libstdc++.so.6
#1  0x00000000006e21fe in _M_insert_ (__v=..., __p=0x4181050, __x=<optimized out>, this=0x4260238)
    at /usr/include/c++/4.9.2/bits/stl_tree.h:1145
#2  _M_insert_unique_ (__v=..., __position=..., this=0x4260238) at /usr/include/c++/4.9.2/bits/stl_tree.h:1603
#3  insert (__x=..., __position=..., this=0x4260238) at /usr/include/c++/4.9.2/bits/stl_map.h:683
#4  operator[] (__k=<optimized out>, this=0x4260238) at /usr/include/c++/4.9.2/bits/stl_map.h:504
#5  Objecter::linger_register (this=0x425ffb0, oid=..., oloc=..., flags=flags@entry=0) at osdc/Objecter.cc:669
---Type <return> to continue, or q <return> to quit---
#6  0x00000000006c2823 in librados::IoCtxImpl::notify (this=0x4322680, oid=..., bl=..., timeout_ms=timeout_ms@entry=5000, 
    preply_bl=preply_bl@entry=0x0, preply_buf=preply_buf@entry=0x0, preply_buf_len=0x0) at librados/IoCtxImpl.cc:1187
#7  0x00000000006862f6 in librados::IoCtx::notify2 (this=0x44978e0, oid=..., bl=..., timeout_ms=timeout_ms@entry=5000, 
    preplybl=preplybl@entry=0x0) at librados/librados.cc:1725
#8  0x000000000062ac7b in librbd::ImageWatcher::notify_released_lock (this=0x42b5340) at librbd/ImageWatcher.cc:601
#9  0x000000000063557a in operator() (a0=<optimized out>, this=<optimized out>) at /usr/include/boost/function/function_template.hpp:767
#10 FunctionContext::finish (this=<optimized out>, r=<optimized out>) at ./include/Context.h:461
#11 0x000000000060b599 in Context::complete (this=0x42ea320, r=<optimized out>) at ./include/Context.h:65
#12 0x000000000073f888 in Finisher::finisher_thread_entry (this=0x42c1620) at common/Finisher.cc:59
#13 0x00007ffe25b5c52a in start_thread () from /lib64/libpthread.so.0
#14 0x00007ffe247ff79d in clone () from /lib64/libc.so.6
Actions #1

Updated by Jason Dillaman about 9 years ago

  • Status changed from In Progress to Fix Under Review
Actions #2

Updated by Jason Dillaman about 9 years ago

Actions #3

Updated by Sage Weil about 9 years ago

  • Status changed from Fix Under Review to Resolved
Actions

Also available in: Atom PDF