Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix temporaries in the header #12322

Merged
merged 1 commit into from Nov 10, 2015

Conversation

davidlt
Copy link
Contributor

@davidlt davidlt commented Nov 9, 2015

We have to make this as static or extern in order to keep the
lifetime of these arrays until application terminates. static needs to
be picked if values will not be compared by reference between various
translation units otherwise we need extern.

Should resolve valgrind detected issues, e.g.:

==27582== Invalid read of size 4
==27582==    at 0x5BFEE2D: __gnu_cxx::__exchange_and_add(int volatile*, int) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFEEC1: __gnu_cxx::__exchange_and_add_dispatch(int*, int) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0330F: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x71AD3EF: __tcf_2 (GEMDetLabel.h:4)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
==27582==  Address 0x60579c0 is 16 bytes inside a block of size 30 free'd
==27582==    at 0x40290B3: operator delete(void*) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/valgrind/3.10.1/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==27582==    by 0x5C03D3F: __gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0337E: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x713F6FE: __tcf_2 (GEMDetLabel.h:4)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)

Signed-off-by: David Abdurachmanov David.Abdurachmanov@cern.ch

We have to make this as `static` or `extern` in order to keep the
lifetime of these arrays until application terminates. `static` needs to
be picked if values will not be compared by reference between various
translation units otherwise we need `extern`.

Should resolve valgrind detected issues, e.g.:

    ==27582== Invalid read of size 4
    ==27582==    at 0x5BFEE2D: __gnu_cxx::__exchange_and_add(int volatile*, int) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
    ==27582==    by 0x5BFEEC1: __gnu_cxx::__exchange_and_add_dispatch(int*, int) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
    ==27582==    by 0x5C0330F: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
    ==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
    ==27582==    by 0x71AD3EF: __tcf_2 (GEMDetLabel.h:4)
    ==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
    ==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
    ==27582==  Address 0x60579c0 is 16 bytes inside a block of size 30 free'd
    ==27582==    at 0x40290B3: operator delete(void*) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/valgrind/3.10.1/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==27582==    by 0x5C03D3F: __gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
    ==27582==    by 0x5C0337E: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
    ==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
    ==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
    ==27582==    by 0x713F6FE: __tcf_2 (GEMDetLabel.h:4)
    ==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
    ==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)

Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
@davidlt
Copy link
Contributor Author

davidlt commented Nov 9, 2015

All issues below. Pick between static and extern depending on behaviour you need.

==27582== Invalid read of size 4
==27582==    at 0x5BFEE2D: __gnu_cxx::__exchange_and_add(int volatile*, int) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFEEC1: __gnu_cxx::__exchange_and_add_dispatch(int*, int) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0330F: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x71AD3EF: __tcf_2 (GEMDetLabel.h:4)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
==27582==  Address 0x60579c0 is 16 bytes inside a block of size 30 free'd
==27582==    at 0x40290B3: operator delete(void*) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/valgrind/3.10.1/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==27582==    by 0x5C03D3F: __gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0337E: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x713F6FE: __tcf_2 (GEMDetLabel.h:4)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
==27582==
==27582== Invalid read of size 8
==27582==    at 0x5C03345: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x71AD3EF: __tcf_2 (GEMDetLabel.h:4)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
==27582==  Address 0x60579b8 is 8 bytes inside a block of size 30 free'd
==27582==    at 0x40290B3: operator delete(void*) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/valgrind/3.10.1/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==27582==    by 0x5C03D3F: __gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0337E: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x713F6FE: __tcf_2 (GEMDetLabel.h:4)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
==27582==
==27582== Invalid free() / delete / delete[] / realloc()
==27582==    at 0x40290B3: operator delete(void*) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/valgrind/3.10.1/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==27582==    by 0x5C03D3F: __gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0337E: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x71AD3EF: __tcf_2 (GEMDetLabel.h:4)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
==27582==  Address 0x60579b0 is 0 bytes inside a block of size 30 free'd
==27582==    at 0x40290B3: operator delete(void*) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/valgrind/3.10.1/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==27582==    by 0x5C03D3F: __gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0337E: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x713F6FE: __tcf_2 (GEMDetLabel.h:4)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
==27582== Invalid read of size 8
==27582==    at 0x5C03345: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x71AD3B6: __tcf_1 (GEMDetLabel.h:3)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
==27582==  Address 0x6057898 is 8 bytes inside a block of size 29 free'd
==27582==    at 0x40290B3: operator delete(void*) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/valgrind/3.10.1/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==27582==    by 0x5C03D3F: __gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0337E: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x713F6C5: __tcf_1 (GEMDetLabel.h:3)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
==27582==
==27582== Invalid read of size 8
==27582==    at 0x5C03345: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x71AD37D: __tcf_0 (GEMDetLabel.h:2)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)
==27582==  Address 0x6057778 is 8 bytes inside a block of size 32 free'd
==27582==    at 0x40290B3: operator delete(void*) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/valgrind/3.10.1/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==27582==    by 0x5C03D3F: __gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0337E: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5C0332B: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x5BFF9E2: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (in /afs/cern.ch/cms/sw/ReleaseCandidates/volB/slc6_amd64_gcc493/external/gcc/4.9.3/lib64/libstdc++.so.6.0.20)
==27582==    by 0x713F68C: __tcf_0 (GEMDetLabel.h:2)
==27582==    by 0x3A46635B21: exit (in /lib64/libc-2.12.so)
==27582==    by 0x3A4661ED63: (below main) (in /lib64/libc-2.12.so)

@davidlt
Copy link
Contributor Author

davidlt commented Nov 9, 2015

Should resolve issues introduced by #11891

@cmsbuild
Copy link
Contributor

cmsbuild commented Nov 9, 2015

A new Pull Request was created by @davidlt for CMSSW_8_0_X.

Fix temporaries in the header

It involves the following packages:

Validation/MuonGEMHits

@cmsbuild, @danduggan, @vanbesien, @deguio can you please review it and eventually sign? Thanks.
You can sign-off by replying to this message having '+1' in the first line of your reply.
You can reject by replying to this message having '-1' in the first line of your reply.
If you are a L2 or a release manager you can ask for tests by saying 'please test' or '@cmsbuild, please test' 'please test with cms-sw/cmsdist#PR' in the first line of a comment.
@Degano you are the release manager for this.
You can merge this pull request by typing 'merge' in the first line of your comment.

@cmsbuild
Copy link
Contributor

cmsbuild commented Nov 9, 2015

@cmsbuild
Copy link
Contributor

cmsbuild commented Nov 9, 2015

@davidlt
Copy link
Contributor Author

davidlt commented Nov 10, 2015

This seems to be: https://sft.its.cern.ch/jira/browse/ROOT-7775

This is needed for ROOT 6.04/6.06 where CMSSW IBs hangs while running edmWriteConfigs on 3 packages which directly or indirectly gets this header.

edmWriteConfigs hangs because it segfaults and signal handler is using malloc, thus deadlock.

davidlange6 added a commit that referenced this pull request Nov 10, 2015
@davidlange6 davidlange6 merged commit 2d05605 into cms-sw:CMSSW_8_0_X Nov 10, 2015
davidlt pushed a commit to cms-sw/cmsdist that referenced this pull request Nov 24, 2015
ROOT commit: bcfd9aa063d0881063cec712ccbc9e66e443375a

Includes a fix for ROOT-7775 (static variable handling). This was
causing segfaults in CMSSW (edmConfigWriter). Signal handler inside ROOT
was causing deadlock in malloc hanging CMSSW IBs.

The following patch was applied in CMSSW to work around the isue:
cms-sw/cmssw#12322

Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants