Project

General

Profile

Actions

Bug #72403

open

Dangling pointer in ObjectOperation::CB_ObjectOperation_decodevals

Added by Edwin Rodriguez 8 months ago. Updated 5 months ago.

Status:
New
Priority:
Normal
Category:
-
Target version:
-
% Done:

0%

Source:
Backport:
tentacle, squid, reef
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Tags (freeform):
Merge Commit:
Fixed In:
Released In:
Upkeep Timestamp:

Description

[104/1779] Building CXX object src/neorados/CMakeFiles/neorados_api_obj.dir/RADOS.cc.o
FAILED: src/neorados/CMakeFiles/neorados_api_obj.dir/RADOS.cc.o 
/usr/lib64/ccache/c++ -DBOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION -DBOOST_ASIO_HAS_IO_URING -DBOOST_ASIO_NO_TS_EXECUTORS -DHAVE_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D_REENTRANT -D_THREAD_SAFE -D__CEPH__ -D__STDC_FORMAT_MACROS -D__linux__ -I/auto/home/rodried/git/ceph/ceph-werror/cmake-build-relwithdebinfo/src/include -I/auto/home/rodried/git/ceph/ceph-werror/src -isystem /auto/home/rodried/git/ceph/ceph-werror/cmake-build-relwithdebinfo/boost/include -isystem /auto/home/rodried/git/ceph/ceph-werror/cmake-build-relwithdebinfo/include -isystem /auto/home/rodried/git/ceph/ceph-werror/src/jaegertracing/opentelemetry-cpp/api/include -isystem /auto/home/rodried/git/ceph/ceph-werror/src/jaegertracing/opentelemetry-cpp/exporters/jaeger/include -isystem /auto/home/rodried/git/ceph/ceph-werror/src/jaegertracing/opentelemetry-cpp/ext/include -isystem /auto/home/rodried/git/ceph/ceph-werror/src/jaegertracing/opentelemetry-cpp/sdk/include -isystem /auto/home/rodried/git/ceph/ceph-werror/src/xxHash -isystem /auto/home/rodried/git/ceph/ceph-werror/src/fmt/include -O2 -g -DNDEBUG -std=c++23 -fPIC -fdiagnostics-color=always   -U_FORTIFY_SOURCE -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -Wall -fno-strict-aliasing -fsigned-char -Wtype-limits -Wignored-qualifiers -Wpointer-arith -Werror=format-security -Winit-self -Wno-unknown-pragmas -Wnon-virtual-dtor -Wno-ignored-qualifiers -Werror -ftemplate-depth-1024 -DBOOST_ALLOW_DEPRECATED_HEADERS -Wpessimizing-move -Wredundant-move -Wstrict-null-sentinel -Woverloaded-virtual -fstack-protector-strong -fdiagnostics-color=auto -MD -MT src/neorados/CMakeFiles/neorados_api_obj.dir/RADOS.cc.o -MF src/neorados/CMakeFiles/neorados_api_obj.dir/RADOS.cc.o.d -o src/neorados/CMakeFiles/neorados_api_obj.dir/RADOS.cc.o -c /auto/home/rodried/git/ceph/ceph-werror/src/neorados/RADOS.cc
In file included from /auto/home/rodried/git/ceph/ceph-werror/src/librados/IoCtxImpl.h:29,
                 from /auto/home/rodried/git/ceph/ceph-werror/src/librados/RadosClient.h:35,
                 from /auto/home/rodried/git/ceph/ceph-werror/src/neorados/RADOSImpl.h:25,
                 from /auto/home/rodried/git/ceph/ceph-werror/src/neorados/RADOS.cc:59:
/auto/home/rodried/git/ceph/ceph-werror/src/osdc/Objecter.h: In function ‘void ObjectOperation::CB_ObjectOperation_decodevals<Vals>::operator()(boost::system::error_code, int, const ceph::buffer::v15_2_0::list&) [with Vals = boost::container::flat_map<std::__cxx11::basic_string<char>, ceph::buffer::v15_2_0::list>]’:
/auto/home/rodried/git/ceph/ceph-werror/src/osdc/Objecter.h:696:22: error: storing the address of local variable ‘ignore’ in ‘*this.ObjectOperation::CB_ObjectOperation_decodevals<boost::container::flat_map<std::__cxx11::basic_string<char>, ceph::buffer::v15_2_0::list> >::pattrs’ [-Werror=dangling-pointer=]
  696 |               pattrs = &ignore;
      |               ~~~~~~~^~~~~~~~~
/auto/home/rodried/git/ceph/ceph-werror/src/osdc/Objecter.h:693:18: note: ‘ignore’ declared here
  693 |             Vals ignore;
      |                  ^~~~~~
/auto/home/rodried/git/ceph/ceph-werror/src/osdc/Objecter.h:686:86: note: ‘this’ declared here
  686 |     void operator()(boost::system::error_code ec, int r, const ceph::buffer::list& bl) {
      |                                                                                      ^
/auto/home/rodried/git/ceph/ceph-werror/src/osdc/Objecter.h: In function ‘void ObjectOperation::CB_ObjectOperation_decodekeys<Keys>::operator()(boost::system::error_code, int, const ceph::buffer::v15_2_0::list&) [with Keys = boost::container::flat_set<std::__cxx11::basic_string<char> >]’:
/auto/home/rodried/git/ceph/ceph-werror/src/osdc/Objecter.h:741:22: error: storing the address of local variable ‘ignore’ in ‘*this.ObjectOperation::CB_ObjectOperation_decodekeys<boost::container::flat_set<std::__cxx11::basic_string<char> > >::pattrs’ [-Werror=dangling-pointer=]
  741 |               pattrs = &ignore;
      |               ~~~~~~~^~~~~~~~~
/auto/home/rodried/git/ceph/ceph-werror/src/osdc/Objecter.h:738:18: note: ‘ignore’ declared here
  738 |             Keys ignore;
      |                  ^~~~~~
/auto/home/rodried/git/ceph/ceph-werror/src/osdc/Objecter.h:730:86: note: ‘this’ declared here
  730 |     void operator()(boost::system::error_code ec, int r, const ceph::buffer::list& bl) {
      |                                                                                      ^
cc1plus: all warnings being treated as errors
[115/1779] Building CXX object src/CMakeFiles/common-objs.dir/osdc/Objecter.cc.o
Actions #1

Updated by Adam Emerson 7 months ago

  • Backport set to tentacle, squid, reef
Actions #2

Updated by Adam Emerson 5 months ago

  • Pull request ID set to 64956
Actions

Also available in: Atom PDF