Actions
Bug #6175
closedrgw: valgrind: invalid reads in copy_obj
% Done:
0%
Source:
Q/A
Tags:
Backport:
dumpling
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Description
<kind>InvalidRead</kind> <what>Invalid read of size 1</what> <stack> <frame> <ip>0x4C2BFB4</ip> <obj>/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so</obj> <fn>strlen</fn> </frame> <frame> <ip>0x6EDF5CF</ip> <obj>/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.16</obj> <fn>std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)</fn> </frame> <frame> <ip>0x51C9041</ip> <obj>/usr/lib/librados.so.2.0.0</obj> <fn>JSONParser::parse(char const*, int)</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/common</dir> <file>ceph_json.cc</file> <line>225</line> </frame> <frame> <ip>0x502AD6</ip> <obj>/usr/bin/radosgw</obj> <fn>RGWRados::copy_obj(void*, std::string const&, std::string const&, std::string const&, req_info*, std::string const&, rgw_obj&, rgw_obj&, RGWBucketInfo&, RGWBucketInfo&, long*, long const*, long const*, char const*, char const*, bool, std::map<std::string, ceph::buffer::l ist, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >&, RGWObjCategory, std::string*, rgw_err*, void (*)(long, void*), void*)</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/rgw</dir> <file>rgw_rados.cc</file> <line>2606</line> </frame> <frame> <ip>0x5202C5</ip> <obj>/usr/bin/radosgw</obj> <fn>RGWCopyObj::execute()</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/rgw</dir> <file>rgw_op.cc</file> <line>1712</line> </frame> <frame> <ip>0x4A58A6</ip> <obj>/usr/bin/radosgw</obj> <fn>RGWProcess::handle_request(RGWRequest*)</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/rgw</dir> <file>rgw_main.cc</file> <line>389</line> </frame> <frame> <ip>0x4A7685</ip> <obj>/usr/bin/radosgw</obj> <fn>RGWProcess::RGWWQ::_process(RGWRequest*)</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/rgw</dir> <file>rgw_main.cc</file> <line>165</line> </frame> <frame> <ip>0x5043F75</ip> <obj>/usr/lib/librados.so.2.0.0</obj> <fn>ThreadPool::worker(ThreadPool::WorkThread*)</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/common</dir> <file>WorkQueue.cc</file> <line>125</line> </frame> <frame> <ip>0x5045D8F</ip> <obj>/usr/lib/librados.so.2.0.0</obj> <fn>ThreadPool::WorkThread::entry()</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/common</dir> <file>WorkQueue.h</file> <line>317</line> </frame> <frame> <ip>0x6117E99</ip> <obj>/lib/x86_64-linux-gnu/libpthread-2.15.so</obj> <fn>start_thread</fn> <dir>/build/buildd/eglibc-2.15/nptl</dir> <file>pthread_create.c</file> <line>308</line> </frame>
and
<error> <unique>0xf6a35</unique> <tid>29</tid> <kind>InvalidRead</kind> <what>Invalid read of size 1</what> <stack> <frame> <ip>0x4C2D0E1</ip> <obj>/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so</obj> <fn>memcpy@@GLIBC_2.14</fn> </frame> <frame> <ip>0x6EDF4AF</ip> <obj>/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.16</obj> <fn>char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag)</fn> </frame> <frame> <ip>0x6EDF5E2</ip> <obj>/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.16</obj> <fn>std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)</fn> </frame> <frame> <ip>0x51C9041</ip> <obj>/usr/lib/librados.so.2.0.0</obj> <fn>JSONParser::parse(char const*, int)</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/common</dir> <file>ceph_json.cc</file> <line>225</line> </frame> <frame> <ip>0x502AD6</ip> <obj>/usr/bin/radosgw</obj> <fn>RGWRados::copy_obj(void*, std::string const&, std::string const&, std::string const&, req_info*, std::string const&, rgw_obj&, rgw_obj&, RGWBucketInfo&, RGWBucketInfo&, long*, long const*, long const*, char const*, char const*, bool, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >&, RGWObjCategory, std::string*, rgw_err*, void (*)(long, void*), void*)</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/rgw</dir> <file>rgw_rados.cc</file> <line>2606</line> </frame> <frame> <ip>0x5202C5</ip> <obj>/usr/bin/radosgw</obj> <fn>RGWCopyObj::execute()</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/rgw</dir> <file>rgw_op.cc</file> <line>1712</line> </frame> <frame> <ip>0x4A58A6</ip> <obj>/usr/bin/radosgw</obj> <fn>RGWProcess::handle_request(RGWRequest*)</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/rgw</dir> <file>rgw_main.cc</file> <line>389</line> </frame> <frame> <ip>0x4A7685</ip> <obj>/usr/bin/radosgw</obj> <fn>RGWProcess::RGWWQ::_process(RGWRequest*)</fn> <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.67-421-g56ff410/src/rgw</dir> <file>rgw_main.cc</file> <line>165</line> </frame> ...
Actions