Skip to content

Remove py2 code from dso-stats, clean up and add info on thread-local storage in binaries

Stewart Martin-Haugh requested to merge smh/athena:dso-stats-py3 into master

Make dso-stats work directly with libraries, instead of storing in a text file first:

echo "/cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-dbg/2020-12-10T2101/Athena/22.0.24/InstallArea/x86_64-centos7-gcc8-dbg/lib/libPerfMonComps.so" > file.txt
dso-stats file.txt 
Name                             DSO  Code  Pure   C++  data   BSS  Frag  Total
** Unknown section [.tbss] **
PerfMonComps                    6179  2844   196   376  3064     7     2  12668
Total                           6179  2844   196   376  3064     7     2  12668

you can now do

dso-stats /cvmfs/atlas-nightlies.cern.ch/repo/sw/master_Athena_x86_64-centos7-gcc8-dbg/2020-12-10T2101/Athena/22.0.24/InstallArea/x86_64-centos7-gcc8-dbg/lib/libPerfMonComps.so
Name                             DSO  Code  Pure   C++  data   BSS  TBSS  Frag  Total
PerfMonComps                    6179  2844   196   376  3064     7     0     6  12672
Total                           6179  2844   196   376  3064     7     0     6  12672

as a bonus, the warning about unknown .tbss is gone - this is now recognised (although it was zero in every Athena library I checked).

cc @ssnyder @amete

Merge request reports