Re: valgrind output

From: Chiara Zampolli <Chiara.Zampolli_at_bo.infn.it>
Date: Wed, 27 Jul 2011 18:49:16 +0200


Ciao Axel,

        I thought it was since it comes from TStorage. I will re-run with the flag you and Akshay suggested me, thanks!

        Cheers,

                Chiara

On Jul 27, 2011, at 6:33 PM, Axel Naumann wrote:

> Hi Chiara,
> 
> The second one is not due to ROOT.
> 
> You can use the valgrind flag
> --suppressions=$ROOTSYS/etc/valgrind-root.supp
> to ignore the known and intentional ROOT leaks.
> 
> Cheers, Axel.
> 
> On 07/27/2011 05:33 PM, Chiara Zampolli wrote:

>> Dear all,
>>
>> When trying to inspect possible leaks in my code, I ran it with valgrind ("valgrind --leak-check=full --log-file=valgrind.out --error-limit=no" options). Most of the errors I got are of the form:
>>
>> ==29354== 44 bytes in 1 blocks are possibly lost in loss record 70,362 of 113,643
>> ==29354== at 0x4A062CA: operator new[](unsigned long) (vg_replace_malloc.c:264)
>> ==29354== by 0x19212541: TStringRef::GetRep(int, int) (TString.cxx:145)
>> ==29354== by 0x19215685: TString::TString(char const*) (TString.cxx:338)
>> ==29354== by 0x192B76BC: TRealData::TRealData(char const*, long, TDataMember*) (TRealData.cxx:42)
>> ==29354== by 0x1929CF2E: TBuildRealData::Inspect(TClass*, char const*, char const*, void const*) (TClass.cxx:523)
>> ==29354== by 0x175474E5: AliCTPTimeParams::ShowMembers(TMemberInspector&) (G__STEER.cxx:15002)
>> ==29354== by 0x19291B12: TClass::CallShowMembers(void*, TMemberInspector&, int) const (TClass.cxx:1741)
>> ==29354== by 0x19292FE2: TClass::BuildRealData(void*, bool) (TClass.cxx:1592)
>> ==29354== by 0x1A54FE06: TBufferFile::WriteClassBuffer(TClass const*, void*) (TBufferFile.cxx:3648)
>> ==29354== by 0x1738973C: AliCTPTimeParams::Streamer(TBuffer&) (G__STEER.cxx:14990)
>> ==29354== by 0x19291A17: TClass::StreamerTObject(void*, TBuffer&, TClass const*) const (TClass.cxx:4954)
>> ==29354== by 0x19288A73: TClass::StreamerDefault(void*, TBuffer&, TClass const*) const (TClass.cxx:5017)
>>
>> and
>>
>> ==29354== 44 (40 direct, 4 indirect) bytes in 1 blocks are definitely lost in loss record 70,372 of 113,643
>> ==29354== at 0x4A0666E: operator new(unsigned long) (vg_replace_malloc.c:220)
>> ==29354== by 0x192110A8: TStorage::ObjectAlloc(unsigned long) (TStorage.cxx:328)
>> ==29354== by 0x173503E3: AliLHCData::FillScalarRecord(int*, char const*, char const*) (TObject.h:156)
>> ==29354== by 0x17351014: AliLHCData::FillData(double, double) (AliLHCData.cxx:217)
>> ==29354== by 0x173510CD: AliLHCData::FillData(char const*, double, double) (AliLHCData.cxx:126)
>> ==29354== by 0x17351192: AliLHCData::AliLHCData(char const*, double, double) (AliLHCData.cxx:107)
>> ==29354== by 0x17312D38: AliGRPPreprocessor::ProcessLHCData(AliGRPObject*) (AliGRPPreprocessor.cxx:1083)
>> ==29354== by 0x17318971: AliGRPPreprocessor::Process(TMap*) (AliGRPPreprocessor.cxx:619)
>> ==29354== by 0x23AF047D: AliTestShuttle::Process() (AliTestShuttle.cxx:596)
>> ==29354== by 0x23AF97CF: G__dict_242_0_13(G__value*, char const*, G__param*, int) (dict.cxx:851)
>> ==29354== by 0x19B29A6E: Cint::G__ExceptionWrapper(int (*)(G__value*, char const*, G__param*, int), G__value*, char*, G__param*, int) (Api.cxx:393)
>> ==29354== by 0x19C2608C: G__execute_call (newlink.cxx:2406)
>> ==29354==
>>
>> and
>>
>> ==29354== 44 bytes in 1 blocks are possibly lost in loss record 70,361 of 113,643
>> ==29354== at 0x4A0666E: operator new(unsigned long) (vg_replace_malloc.c:220)
>> ==29354== by 0x3F6569A520: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) (in /usr/lib64/libstdc++.so.6.0.8)
>> ==29354== by 0x3F6569B024: ??? (in /usr/lib64/libstdc++.so.6.0.8)
>> ==29354== by 0x3F6569B1D1: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (in /usr/lib64/libstdc++.so.6.0.8)
>> ==29354== by 0x192892C3: TClass::AddClass(TClass*) (TClass.cxx:230)
>> ==29354== by 0x1929753A: TClass::Init(char const*, short, std::type_info const*, TVirtualIsAProxy*, void (*)(void*, TMemberInspector&), char const*, char const*, int, int, bool) (TClass.cxx:932)
>> ==29354== by 0x192984C6: TClass::TClass(char const*, short, std::type_info const&, TVirtualIsAProxy*, void (*)(void*, TMemberInspector&), char const*, char const*, int, int, bool) (TClass.cxx:842)
>> ==29354== by 0x192985DD: ROOT::CreateClass(char const*, short, std::type_info const&, TVirtualIsAProxy*, void (*)(void*, TMemberInspector&), char const*, char const*, int, int) (TClass.cxx:4299)
>> ==29354== by 0x4C73F67: ROOT::TDefaultInitBehavior::CreateClass(char const*, short, std::type_info const&, TVirtualIsAProxy*, void (*)(void*, TMemberInspector&), char const*, char const*, int, int) const (
>> Rtypes.h:252)
>> ==29354== by 0x192ADC78: ROOT::TGenericClassInfo::GetClass() (TGenericClassInfo.cxx:219)
>> ==29354== by 0x1738901A: AliTriggerCluster::Class() (G__STEER.cxx:6591)
>> ==29354== by 0x194BA5DE: TInstrumentedIsAProxy<TObject>::operator()(void const*) (TIsAProxy.h:83)
>> ==29354==
>>
>>
>> which seem to be related to ROOT. Is this something known? Can I ignore these errors?
>>
>> Thanks for your help, and Best Regards,
>>
>> Chiara
>>
>>

> Received on Wed Jul 27 2011 - 18:49:28 CEST

This archive was generated by hypermail 2.2.0 : Wed Jul 27 2011 - 23:50:01 CEST