Project

General

Profile

Bug #23618

SIGFPE, Arithmetic exception in AsyncConnection::_process_connection

Added by Brad Hubbard 12 months ago. Updated 9 days ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
-
Start date:
04/10/2018
Due date:
% Done:

0%

Source:
Development
Tags:
Backport:
luminous
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:

Description

(gdb) bt
#0  0x00007f77454c303e in AsyncConnection::_process_connection (this=this@entry=0x55b71778c700) at /home/brad/working/src/ceph4/src/msg/async/AsyncConnection.cc:974
#1  0x00007f77454c49f8 in AsyncConnection::process (this=<optimized out>) at /home/brad/working/src/ceph4/src/msg/async/AsyncConnection.cc:822
#2  0x00007f77454d536d in EventCenter::process_events (this=this@entry=0x55b717573700, timeout_microseconds=<optimized out>, timeout_microseconds@entry=30000000, working_dur=working_dur@entry=0x7f773f0542d8)
    at /home/brad/working/src/ceph4/src/msg/async/Event.cc:412
#3  0x00007f77454d8034 in NetworkStack::<lambda()>::operator() (__closure=0x55b71766d2f8) at /home/brad/working/src/ceph4/src/msg/async/Stack.cc:53
#4  std::_Function_handler<void(), NetworkStack::add_thread(unsigned int)::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /usr/include/c++/7/bits/std_function.h:316
#5  0x00007f77420d814f in execute_native_thread_routine () from /lib64/libstdc++.so.6
#6  0x00007f77427c550b in start_thread () from /lib64/libpthread.so.0
#7  0x00007f77417f916f in clone () from /lib64/libc.so.6
(gdb) l 974
969
970             ldout(async_msgr->cct, 20) << __func__ << " connect peer addr for me is " << peer_addr_for_me << dendl;
971             lock.unlock();
972             async_msgr->learned_addr(peer_addr_for_me);
973             if (async_msgr->cct->_conf->ms_inject_internal_delays) {
974               if (rand() % async_msgr->cct->_conf->ms_inject_socket_failures == 0) {
975                 ldout(msgr->cct, 10) << __func__ << " sleep for " 
976                                      << async_msgr->cct->_conf->ms_inject_internal_delays << dendl;
977                 utime_t t;
978                 t.set_from_double(async_msgr->cct->_conf->ms_inject_internal_delays);
(gdb) p async_msgr->cct->_conf->ms_inject_socket_failures
$2 = 0

If ms_inject_internal_delays is set, but ms_inject_socket_failures is left at its default value of zero we get an fpe. Elsewhere similar code is wrapped in a test of ms_inject_socket_failures so let's do that.

https://github.com/ceph/ceph/pull/21314


Related issues

Copied to Messengers - Backport #23666: luminous: SIGFPE, Arithmetic exception in AsyncConnection::_process_connection Resolved

History

#1 Updated by John Spray 12 months ago

  • Project changed from Ceph to RADOS
  • Category deleted (msgr)

#2 Updated by Kefu Chai 11 months ago

  • Status changed from New to Pending Backport

#3 Updated by Brad Hubbard 11 months ago

  • Description updated (diff)

#4 Updated by Nathan Cutler 11 months ago

  • Copied to Backport #23666: luminous: SIGFPE, Arithmetic exception in AsyncConnection::_process_connection added

#6 Updated by Nathan Cutler 10 months ago

  • Status changed from Pending Backport to Resolved

#7 Updated by Greg Farnum 9 days ago

  • Project changed from RADOS to Messengers

Also available in: Atom PDF