Project

General

Profile

Bug #45586

invalid read in cls_2pc_queue_abort detected by valgrind

Added by Kefu Chai 3 months ago. Updated 2 months ago.

Status:
Resolved
Priority:
Normal
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
rados
Pull request ID:
Crash signature:

Description

<error>
  <unique>0x0</unique>
  <tid>55</tid>
  <threadname>tp_osd_tp</threadname>
  <kind>InvalidRead</kind>
  <what>Invalid read of size 8</what>
  <stack>
    <frame>
      <ip>0x20D4622B</ip>
      <obj>/usr/lib64/rados-classes/libcls_2pc_queue.so.1.0.0</obj>
      <fn>cls_2pc_queue_abort(void*, ceph::buffer::v15_2_0::list*, ceph::buffer::v15_2_0::list*)</fn>
      <dir>/usr/src/debug/ceph-16.0.0-1509.gf01f6a8.el8.x86_64/src/cls/2pc_queue</dir>
      <file>cls_2pc_queue.cc</file>
      <line>371</line>
    </frame>
    <frame>
      <ip>0x792521</ip>
      <obj>/usr/bin/ceph-osd</obj>
      <fn>operator()&lt;int (*)(void*, ceph::buffer::v15_2_0::list*, ceph::buffer::v15_2_0::list*)&gt;</fn>
      <dir>/usr/src/debug/ceph-16.0.0-1509.gf01f6a8.el8.x86_64/src/osd</dir>
      <file>ClassHandler.cc</file>
      <line>319</line>
    </frame>
    <frame>
      <ip>0x792521</ip>
      <obj>/usr/bin/ceph-osd</obj>
      <fn>__invoke_impl&lt;void, ClassHandler::ClassMethod::exec(cls_method_context_t, ceph::bufferlist&amp;, ceph::bufferlist&amp;)::&lt;lambda(auto:28)&gt;, int (*&amp;)(void*, ceph::buffer::v15_2_0::list*, ceph::buffer::v15_2_0::list*)&gt;</fn>
      <dir>/usr/include/c++/8/bits</dir>
      <file>invoke.h</file>
      <line>60</line>
    </frame>
    <frame>
      <ip>0x792521</ip>
      <obj>/usr/bin/ceph-osd</obj>
      <fn>__invoke&lt;ClassHandler::ClassMethod::exec(cls_method_context_t, ceph::bufferlist&amp;, ceph::bufferlist&amp;)::&lt;lambda(auto:28)&gt;, int (*&amp;)(void*, ceph::buffer::v15_2_0::list*, ceph::buffer::v15_2_0::list*)&gt;</fn>
      <dir>/usr/include/c++/8/bits</dir>
      <file>invoke.h</file>
      <line>95</line>
    </frame>
    <frame>
      <ip>0x792521</ip>
      <obj>/usr/bin/ceph-osd</obj>
      <fn>std::__detail::__variant::__gen_vtable_impl&lt;std::__detail::__variant::_Multi_array&lt;void (*)(ClassHandler::ClassMethod::exec(void*, ceph::buffer::v15_2_0::list&amp;, ceph::buffer::v15_2_0::list&amp;)::{lambda(auto:1)#1}&amp;&amp;, std::variant&lt;int (*)(void*, ceph::buffer::v15_2_0::list*, std::variant), int (*)(void*, char*, int, int (**)(void*, ceph::buffer::v15_2_0::list*, std::variant), int*)&gt;&amp;)&gt;, std::tuple&lt;std::variant&lt;int (*)(void*, ceph::buffer::v15_2_0::list*, std::variant), int (*)(void*, char*, int, int (**)(void*, ceph::buffer::v15_2_0::list*, std::variant), int*)&gt; &gt;, std::integer_sequence&lt;unsigned long, 0ul&gt; &gt;::__visit_invoke(ClassHandler::ClassMethod::exec(void*, ceph::buffer::v15_2_0::list&amp;, ceph::buffer::v15_2_0::list&amp;)::{lambda(auto:1)#1}, std::variant&lt;int (*)(void*, ceph::buffer::v15_2_0::list*, std::variant), int (*)(void*, char*, int, int (**)(void*, ceph::buffer::v15_2_0::list*, std::variant), int*)&gt;)</fn>
      <dir>/usr/include/c++/8</dir>
      <file>variant</file>
      <line>830</line>
    </frame>
    <frame>
      <ip>0x79284D</ip>
      <obj>/usr/bin/ceph-osd</obj>
      <fn>visit&lt;ClassHandler::ClassMethod::exec(cls_method_context_t, ceph::bufferlist&amp;, ceph::bufferlist&amp;)::&lt;lambda(auto:28)&gt;, std::variant&lt;int (*)(void*, ceph::buffer::v15_2_0::list*, ceph::buffer::v15_2_0::list*), int (*)(void*, char*, int, char**, int*)&gt;&amp;&gt;</fn>
      <dir>/usr/include/c++/8</dir>
      <file>variant</file>
      <line>1398</line>
    </frame>
    <frame>
      <ip>0x79284D</ip>
      <obj>/usr/bin/ceph-osd</obj>
      <fn>ClassHandler::ClassMethod::exec(void*, ceph::buffer::v15_2_0::list&amp;, ceph::buffer::v15_2_0::list&amp;)</fn>
      <dir>/usr/src/debug/ceph-16.0.0-1509.gf01f6a8.el8.x86_64/src/osd</dir>
      <file>ClassHandler.cc</file>
      <line>315</line>
    </frame>
    <frame>
      <ip>0x85D2FE</ip>
      <obj>/usr/bin/ceph-osd</obj>
      <fn>PrimaryLogPG::do_osd_ops(PrimaryLogPG::OpContext*, std::vector&lt;OSDOp, std::allocator&lt;OSDOp&gt; &gt;&amp;)</fn>
      <dir>/usr/src/debug/ceph-16.0.0-1509.gf01f6a8.el8.x86_64/src/osd</dir>
      <file>PrimaryLogPG.cc</file>
      <line>5865</line>
    </frame>
    <frame>
      <ip>0x86EBB5</ip>
      <obj>/usr/bin/ceph-osd</obj>
      <fn>PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)</fn>
      <dir>/usr/src/debug/ceph-16.0.0-1509.gf01f6a8.el8.x86_64/src/osd</dir>
      <file>PrimaryLogPG.cc</file>
      <line>3906</line>
    </frame>
    <frame>
      <ip>0x8784CB</ip>
      <obj>/usr/bin/ceph-osd</obj>
      <fn>PrimaryLogPG::do_op(boost::intrusive_ptr&lt;OpRequest&gt;&amp;)</fn>
      <dir>/usr/src/debug/ceph-16.0.0-1509.gf01f6a8.el8.x86_64/src/osd</dir>
      <file>PrimaryLogPG.cc</file>
      <line>2330</line>
    </frame>
    <frame>
      <ip>0x87F70F</ip>
      <obj>/usr/bin/ceph-osd</obj>
      <fn>PrimaryLogPG::do_request(boost::intrusive_ptr&lt;OpRequest&gt;&amp;, ThreadPool::TPHandle&amp;)</fn>
      <dir>/usr/src/debug/ceph-16.0.0-1509.gf01f6a8.el8.x86_64/src/osd</dir>
      <file>PrimaryLogPG.cc</file>
      <line>1759</line>
...

the only PRs tested in this batch are

- https://github.com/ceph/ceph/pull/34897
- https://github.com/ceph/ceph/pull/34864

$ git log --oneline
f01f6a8f8d (HEAD -> wip-kefu2-testing-2020-05-13-1200, ci/wip-kefu2-testing-2020-05-13-1200) Merge branch 'wip-45298' of https://github.com/neha-ojha/ceph into wip-kefu2-testing-2020-05-13-1200
1f19cc0181 Merge branch 'fix-45335' of https://github.com/aclamk/ceph into wip-kefu2-testing-2020-05-13-1200
c6059d9669 Merge branch 'wip-qa-tasks-no-filter' of https://github.com/tchaikov/ceph into wip-kefu2-testing-2020-05-13-1200
898ea3e956 Merge pull request #35009 from ivancich/wip-orphan-pending-rel-notes
01aea7f7e1 Merge PR #34978 into master
3560552cbc Merge pull request #35021 from tchaikov/wip-cephfs-shell-pep8

Yuval, could you take a look?

History

#1 Updated by Kefu Chai 3 months ago

/a/kchai-2020-05-17_14:47:51-rados-wip-kefu2-testing-2020-05-13-1200-distro-basic-smithi/5063572/remote/smithi019/log/valgrind/osd.5.log.gz

#2 Updated by Yuval Lifshitz 3 months ago

  • Status changed from New to Fix Under Review
  • Pull request ID set to 35107

#3 Updated by Kefu Chai 2 months ago

  • Status changed from Fix Under Review to Resolved

Also available in: Atom PDF