Project

General

Profile

Actions

Bug #51441

closed

Lingking crimson-osd failed on Arm64

Added by Kevin Zhao almost 3 years ago. Updated 11 months ago.

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

0%

Source:
Tags:
Backport:
Regression:
No
Severity:
2 - major
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

In file included from ../src/crimson/osd/exceptions.h:9,
from ../src/crimson/os/seastore/random_block_manager/nvme_manager.h:15,
from ../src/test/crimson/seastore/test_randomblock_manager.cc:9:
../src/crimson/common/errorator.h:753:9: note: ‘crimson::errorator<crimson::unthrowable_wrapper<const std::error_code&, ((const std::error_code&)(& crimson::ec<std::errc::io_error>))>, crimson::unthrowable_wrapper<const std::error_code&, ((const std::error_code&)(& crimson::ec<std::errc::invalid_argument>))> >::future<>’ {aka ‘crimson::errorator<crimson::unthrowable_wrapper<const std::error_code&, ((const std::error_code&)(& crimson::ec<std::errc::io_error>))>, crimson::unthrowable_wrapper<const std::error_code&, ((const std::error_code&)(& crimson::ec<std::errc::invalid_argument>))> >::_future<crimson::errorated_future_marker<void> >’} declared here
753 | using future = _future<::crimson::errorated_future_marker<ValueT>>; | ^~~~
[1881/2368] Linking CXX executable bin/crimson-osd
FAILED: bin/crimson-osd
: && /usr/bin/ccache /usr/bin/c++ -g -rdynamic src/crimson/osd/CMakeFiles/crimson-osd.dir/backfill_state.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/ec_backend.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/heartbeat.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/main.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_meta.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/pg.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/pg_backend.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/pg_meta.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/replicated_backend.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/shard_services.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/object_context.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/ops_executer.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operation.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/client_request.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/client_request_common.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/compound_peering_request.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/internal_client_request.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/peering_event.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/pg_advance_map.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/replicated_request.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/background_recovery.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/recovery_subrequest.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/pg_recovery.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/recovery_backend.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/replicated_recovery_backend.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/scheduler/scheduler.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/scheduler/mclock_scheduler.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/osdmap_gate.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/pg_map.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/pg_interval_interrupt_condition.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/objclass.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/objclass/class_api.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/ClassHandler.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/osd_op_util.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/OSDCap.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/PeeringState.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/PGPeeringEvent.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/PGStateUtils.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/MissingLoc.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/PGLog.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/recovery_types.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/osd_perf_counters.cc.o src/crimson/osd/CMakeFiles/crimson-osd.dir/watch.cc.o -o bin/crimson-osd -Wl,-rpath,::::::::::::::::::: lib/libcrimson-admin.a lib/libcrimson-common.a lib/libcrimson-os.a lib/libcrimson.a lib/libfmtd.a lib/libdmclock.a lib/libcrimson-cyanstore.a lib/libcrimson-os.a lib/libcrimson-cyanstore.a lib/libcrimson-alienstore.a lib/libkv.a /usr/lib/aarch64-linux-gnu/libleveldb.so src/rocksdb/librocksdb.a /usr/lib/aarch64-linux-gnu/libsnappy.so /usr/lib/aarch64-linux-gnu/liblz4.so /usr/lib/aarch64-linux-gnu/libz.so lib/libheap_profiler.a lib/libcrimson-alien-common.a /usr/lib/aarch64-linux-gnu/libblkid.so /usr/lib/aarch64-linux-gnu/libudev.so lib/libblk.a /usr/lib/aarch64-linux-gnu/libaio.so ../src/spdk/build/lib/libspdk_lvol.a ../src/spdk/build/lib/libspdk_env_dpdk.a -Wl,--whole-archive /home/ubuntu/ceph/build/src/dpdk/lib/librte_bus_pci.a /home/ubuntu/ceph/build/src/dpdk/lib/librte_eal.a /home/ubuntu/ceph/build/src/dpdk/lib/librte_kvargs.a /home/ubuntu/ceph/build/src/dpdk/lib/librte_mbuf.a /home/ubuntu/ceph/build/src/dpdk/lib/librte_mempool.a /home/ubuntu/ceph/build/src/dpdk/lib/librte_mempool_ring.a /home/ubuntu/ceph/build/src/dpdk/lib/librte_pci.a /home/ubuntu/ceph/build/src/dpdk/lib/librte_ring.a /home/ubuntu/ceph/build/src/dpdk/lib/librte_telemetry.a -Wl,--no-whole-archive -Wl,-lnuma -Wl,-lpthread,-ldl -lrt ../src/spdk/build/lib/libspdk_sock.a ../src/spdk/build/lib/libspdk_nvmf.a ../src/spdk/build/lib/libspdk_bdev.a ../src/spdk/build/lib/libspdk_nvme.a ../src/spdk/build/lib/libspdk_conf.a ../src/spdk/build/lib/libspdk_thread.a ../src/spdk/build/lib/libspdk_trace.a ../src/spdk/build/lib/libspdk_notify.a ../src/spdk/build/lib/libspdk_accel.a ../src/spdk/build/lib/libspdk_event_accel.a ../src/spdk/build/lib/libspdk_blob.a ../src/spdk/build/lib/libspdk_vmd.a ../src/spdk/build/lib/libspdk_event_vmd.a ../src/spdk/build/lib/libspdk_event_bdev.a ../src/spdk/build/lib/libspdk_sock_posix.a ../src/spdk/build/lib/libspdk_event_sock.a ../src/spdk/build/lib/libspdk_event.a ../src/spdk/build/lib/libspdk_rpc.a ../src/spdk/build/lib/libspdk_jsonrpc.a ../src/spdk/build/lib/libspdk_json.a ../src/spdk/build/lib/libspdk_util.a /usr/lib/aarch64-linux-gnu/libuuid.so ../src/spdk/build/lib/libspdk_log.a src/liburing/src/liburing.a lib/libcrimson-seastore.a lib/libcrimson.a lib/libcrimson-common.a lib/libcrc32.a lib/libarch.a boost/lib/libboost_iostreams.a boost/lib/libboost_regex.a boost/lib/libboost_random.a lib/libjson_spirit.a lib/libcommon_utf8.a /usr/lib/aarch64-linux-gnu/libz.so /usr/lib/aarch64-linux-gnu/libcrypto.so lib/libseastar.a lib/libfmtd.a boost/lib/libboost_program_options.a boost/lib/libboost_thread.a boost/lib/libboost_chrono.a boost/lib/libboost_system.a boost/lib/libboost_date_time.a boost/lib/libboost_atomic.a /usr/lib/aarch64-linux-gnu/libcares.so /usr/lib/aarch64-linux-gnu/libcryptopp.so /usr/lib/aarch64-linux-gnu/liblz4.so -ldl /usr/lib/aarch64-linux-gnu/libgnutls.so -latomic /usr/lib/aarch64-linux-gnu/libsctp.so /usr/lib/aarch64-linux-gnu/libprotobuf.so -lrt /usr/lib/aarch64-linux-gnu/libyaml-cpp.so -fsanitize=address -fsanitize=undefined -fno-sanitize=vptr /usr/lib/aarch64-linux-gnu/libnuma.so -lpthread && :
boost/lib/libboost_program_options.a(cmdline.o): in function `boost::program_options::invalid_syntax::get_template[abi:cxx11](boost::program_options::invalid_syntax::kind_t)':
cmdline.cpp:(.text+0x70): relocation truncated to fit: R_AARCH64_CALL26 against symbol `strlen' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x8c): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long)' defined in .text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm] section in src/crimson/osd/CMakeFiles/crimson-osd.dir/backfill_state.cc.o
cmdline.cpp:(.text+0xa4): relocation truncated to fit: R_AARCH64_CALL26 against symbol `memcpy' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x14c): relocation truncated to fit: R_AARCH64_CALL26 against symbol `__stack_chk_fail@GLIBC_2.17' defined in .text section in /lib/aarch64-linux-gnu/libc.so.6
boost/lib/libboost_program_options.a(cmdline.o): in function `boost::program_options::detail::cmdline::style(int)':
cmdline.cpp:(.text+0x1b0): relocation truncated to fit: R_AARCH64_CALL26 against symbol `strlen' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x1c8): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long)' defined in .text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm] section in src/crimson/osd/CMakeFiles/crimson-osd.dir/backfill_state.cc.o
cmdline.cpp:(.text+0x1e4): relocation truncated to fit: R_AARCH64_CALL26 against symbol `memcpy' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x200): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::logic_error::logic_error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
@GLIBCXX_3.4.21' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x214): relocation truncated to fit: R_AARCH64_CALL26 against symbol `__cxa_allocate_exception@CXXABI_1.3' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x230): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::logic_error::logic_error(std::logic_error const&)
@GLIBCXX_3.4.21' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x274): additional relocation overflows omitted from the output
collect2: error: ld returned 1 exit status
[1938/2368] Generating ../../../lib/cython_modules/lib.3/cephfs.cpython-39-aarch64-linux-gnu.so
Compiling cephfs.pyx because it changed.
[1/1] Cythonizing cephfs.pyx
running build
running build_ext
building 'cephfs' extension
creating /home/ubuntu/ceph/build/lib/cython_modules/temp.linux-aarch64-3.9/home/ubuntu/ceph/build/src/pybind/cephfs
/usr/bin/ccache /usr/bin/cc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -iquote/home/ubuntu/ceph/src/include -w -Dvoid0=dead_function(void) -D__Pyx_check_single_interpreter(ARG)=ARG ## 0 -fPIC -I/usr/include/python3.9 -I/usr/include/python3.9 -c /home/ubuntu/ceph/build/src/pybind/cephfs/cephfs.c -o /home/ubuntu/ceph/build/lib/cython_modules/temp.linux-aarch64-3.9/home/ubuntu/ceph/build/src/pybind/cephfs/cephfs.o /usr/bin/cc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -iquote/home/ubuntu/ceph/src/include -w -Dvoid0=dead_function(void) -D__Pyx_check_single_interpreter(ARG)=ARG ## 0 -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2
cc: warning: /usr/bin/cc: linker input file unused because linking not done
/usr/bin/ccache /usr/bin/cc -shared -L/home/ubuntu/ceph/build/lib -iquote/home/ubuntu/ceph/src/include -w -Dvoid0=dead_function(void) -D__Pyx_check_single_interpreter(ARG)=ARG ## 0 /home/ubuntu/ceph/build/lib/cython_modules/temp.linux-aarch64-3.9/home/ubuntu/ceph/build/src/pybind/cephfs/cephfs.o -L/usr/lib/python3.9/config-3.9-aarch64-linux-gnu -lcephfs -lcrypt -lpthread -ldl -lutil -lm -lm -o /home/ubuntu/ceph/build/lib/cython_modules/lib.3/cephfs.cpython-39-aarch64-linux-gnu.so -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2

After checking the patches recently merged, the patch https://github.com/ceph/ceph/commit/3ef4040c4199fdd20f5f5c390d4ec75cb336d0a0 introduce this failure
Work on fix this now
Actions #1

Updated by Kevin Zhao almost 3 years ago

commit: 337745c17a67c2cc5cf7894cc335e632f9e5820f build error
commit: c0aeb3ac53b78c18378ad5ffeb1295973142a123 fix build error but induce Link failed:
boost/lib/libboost_program_options.a(cmdline.o): in function `boost::program_options::invalid_syntax::get_template[abi:cxx11](boost::program_options::invalid_syntax::kind_t)':
cmdline.cpp:(.text+0x70): relocation truncated to fit: R_AARCH64_CALL26 against symbol `strlen' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x8c): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long)' defined in .text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm] section in src/crimson/osd/CMakeFiles/crimson-osd.dir/backfill_state.cc.o
cmdline.cpp:(.text+0xa4): relocation truncated to fit: R_AARCH64_CALL26 against symbol `memcpy' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x14c): relocation truncated to fit: R_AARCH64_CALL26 against symbol `__stack_chk_fail@GLIBC_2.17' defined in .text section in /lib/aarch64-linux-gnu/libc.so.6
boost/lib/libboost_program_options.a(cmdline.o): in function `boost::program_options::detail::cmdline::style(int)':
cmdline.cpp:(.text+0x1b0): relocation truncated to fit: R_AARCH64_CALL26 against symbol `strlen' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x1c8): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long)' defined in .text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm] section in src/crimson/osd/CMakeFiles/crimson-osd.dir/backfill_state.cc.o
cmdline.cpp:(.text+0x1e4): relocation truncated to fit: R_AARCH64_CALL26 against symbol `memcpy' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x200): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::logic_error::logic_error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
@GLIBCXX_3.4.21' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x214): relocation truncated to fit: R_AARCH64_CALL26 against symbol `__cxa_allocate_exception@CXXABI_1.3' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x230): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::logic_error::logic_error(std::logic_error const&)
@GLIBCXX_3.4.21' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x274): additional relocation overflows omitted from the output

Actions #2

Updated by Kevin Zhao almost 3 years ago

Rebuild with GCC 10.3 is find

Actions #3

Updated by Kevin Zhao almost 3 years ago

Kevin Zhao wrote:

Rebuild with GCC 10.3 is fine

Actions #4

Updated by Kevin Zhao almost 3 years ago

https://github.com/ceph/ceph/commit/80961c27d1adaa969e9ad3647d2fb9944b77904a Definitely this commit induce the Link issue.

boost/lib/libboost_program_options.a(cmdline.o): in function `boost::program_options::invalid_syntax::get_template[abi:cxx11](boost::program_options::invalid_syntax::kind_t)':
cmdline.cpp:(.text+0x70): relocation truncated to fit: R_AARCH64_CALL26 against symbol `strlen' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x8c): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long)' defined in .text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm] section in src/crimson/osd/CMakeFiles/crimson-osd.dir/backfill_state.cc.o
cmdline.cpp:(.text+0xa4): relocation truncated to fit: R_AARCH64_CALL26 against symbol `memcpy' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x14c): relocation truncated to fit: R_AARCH64_CALL26 against symbol `__stack_chk_fail@GLIBC_2.17' defined in .text section in /lib/aarch64-linux-gnu/libc.so.6
boost/lib/libboost_program_options.a(cmdline.o): in function `boost::program_options::detail::cmdline::style(int)':
cmdline.cpp:(.text+0x1b0): relocation truncated to fit: R_AARCH64_CALL26 against symbol `strlen' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x1c8): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long)' defined in .text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm] section in src/crimson/osd/CMakeFiles/crimson-osd.dir/backfill_state.cc.o
cmdline.cpp:(.text+0x1e4): relocation truncated to fit: R_AARCH64_CALL26 against symbol `memcpy' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x200): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::logic_error::logic_error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
@GLIBCXX_3.4.21' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x214): relocation truncated to fit: R_AARCH64_CALL26 against symbol `__cxa_allocate_exception@CXXABI_1.3' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x230): relocation truncated to fit: R_AARCH64_CALL26 against symbol `std::logic_error::logic_error(std::logic_error const&)
@GLIBCXX_3.4.21' defined in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x274): additional relocation overflows omitted from the output
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

Actions #5

Updated by Kevin Zhao almost 3 years ago

remove include seastar/prometheus.hh and corresponding lines can avoid this issue. WIP why

Actions #6

Updated by Kevin Zhao almost 3 years ago

Rebuild with clang++10 works quite well. The crimson-osd binary is only 1G.

New build error:

rc/test/fio/CMakeFiles/fio_ceph_objectstore.dir/fio_ceph_objectstore.cc.o
/usr/bin/ccache /usr/bin/clang++-10 -DBOOST_ALL_NO_LIB -DBOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION -DBOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT -DBOOST_DATE_TIME_DYN_LINK -DBOOST_IOSTREAMS_DYN_LINK -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST
RANDOM_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -DBOOST_THREAD_DYN_LINK -DHAVE_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_CEPH__ -D__STDC_FORMAT_MACROS -D__linux__ -Dfio_ceph_objectstore_EXPORTS -Isrc/include
-I../src -isystem /opt/ceph/include -isystem include -isystem ../src/xxHash -isystem ../src/rapidjson/include -isystem src/fio -isystem ../src/rocksdb/include -isystem /usr/include/fuse -g -fPIC -Wall -fno-strict-aliasing -fsigned-ch
ar -Wtype-limits -Wignored-qualifiers -Wpointer-arith -Werror=format-security -Winit-self -Wno-unknown-pragmas -Wnon-virtual-dtor -Wno-ignored-qualifiers -ftemplate-depth-1024 -Wpessimizing-move -Wredundant-move -Wno-inconsistent-missin
g-override -Wno-mismatched-tags -Wno-unused-private-field -Wno-address-of-packed-member -Wno-unused-function -Wno-unused-local-typedef -Wno-varargs -Wno-gnu-designator -Wno-missing-braces -Wno-parentheses -Wno-deprecated-register -D_GLI
BCXX_ASSERTIONS -fdiagnostics-color=auto -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -include /home/ubuntu/ceph/build/src/fio/config-host.h -std=gnu++17 -std=c++17 -MD -MT src/test/fio/CMakeFiles/fio_c
eph_objectstore.dir/fio_ceph_objectstore.cc.o -MF src/test/fio/CMakeFiles/fio_ceph_objectstore.dir/fio_ceph_objectstore.cc.o.d -o src/test/fio/CMakeFiles/fio_ceph_objectstore.dir/fio_ceph_objectstore.cc.o -c ../src/test/fio/fio_ceph_obj
ectstore.cc
In file included from ../src/test/fio/fio_ceph_objectstore.cc:26:
In file included from src/fio/fio.h:18:
In file included from src/fio/thread_options.h:6:
In file included from src/fio/options.h:8:
src/fio/parse.h:128:13: error: arithmetic on a pointer to void
return ret + offset;
~~~ ^
1 error generated.
[1876/2361] Building CXX object src/client/CMakeFiles/client.dir/MetaSession.cc.o

Actions #7

Updated by Josh Durgin almost 3 years ago

  • Project changed from Ceph to crimson
Actions #8

Updated by Kevin Zhao almost 3 years ago

use
./do_cmake.sh -DCMAKE_C_FLAGS_DEBUG=-Og -DCMAKE_CXX_FLAGS_DEBUG=-Og ***
can actually solve the Linking issue.

More info check the GCC bugzilla: https://gcc.gnu.org/bugzilla/process_bug.cgi

-O0 generates very poor (and large) code. I wouldn't recommend using at all except for basic syntax checking of your application.

-Og is pretty minimal optimization and should still be suitable for debugging an application if needed.

So I think this is simply a case of you exceeded the limits of the system.

Actions #9

Updated by Kevin Zhao almost 3 years ago

The R_AARCH64_CALL26 relocation has a branch range of +/-2^27 bytes, or 128MBytes, so that puts a limit on the size of the code segment of a binary.

Actions #10

Updated by Kefu Chai almost 3 years ago

  • Status changed from New to Fix Under Review
  • Pull request ID set to 42367
Actions #11

Updated by Matan Breizman 11 months ago

  • Status changed from Fix Under Review to Resolved
Actions

Also available in: Atom PDF