1 <html> 2 <head> 3 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 4 <title>2.NEWS</title> 5 <link rel="stylesheet" type="text/css" href="vg_basic.css"> 6 <meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7 <link rel="home" href="index.html" title="Valgrind Documentation"> 8 <link rel="up" href="dist.html" title="Valgrind Distribution Documents"> 9 <link rel="prev" href="dist.authors.html" title="1.AUTHORS"> 10 <link rel="next" href="dist.news.old.html" title="3.OLDER NEWS"> 11 </head> 12 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 13 <div><table class="nav" width="100%" cellspacing="3" cellpadding="3" border="0" summary="Navigation header"><tr> 14 <td width="22px" align="center" valign="middle"><a accesskey="p" href="dist.authors.html"><img src="images/prev.png" width="18" height="21" border="0" alt="Prev"></a></td> 15 <td width="25px" align="center" valign="middle"><a accesskey="u" href="dist.html"><img src="images/up.png" width="21" height="18" border="0" alt="Up"></a></td> 16 <td width="31px" align="center" valign="middle"><a accesskey="h" href="index.html"><img src="images/home.png" width="27" height="20" border="0" alt="Up"></a></td> 17 <th align="center" valign="middle">Valgrind Distribution Documents</th> 18 <td width="22px" align="center" valign="middle"><a accesskey="n" href="dist.news.old.html"><img src="images/next.png" width="18" height="21" border="0" alt="Next"></a></td> 19 </tr></table></div> 20 <div class="chapter"> 21 <div class="titlepage"><div><div><h1 class="title"> 22 <a name="dist.news"></a>2.NEWS</h1></div></div></div> 23 <div class="literallayout"><p><br> 24 Release3.13.0(15June2017)<br> 25 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 26 <br> 27 3.13.0isafeaturereleasewithmanyimprovementsandtheusualcollectionof<br> 28 bugfixes.<br> 29 <br> 30 ThisreleasesupportsX86/Linux,AMD64/Linux,ARM32/Linux,ARM64/Linux,<br> 31 PPC32/Linux,PPC64BE/Linux,PPC64LE/Linux,S390X/Linux,MIPS32/Linux,<br> 32 MIPS64/Linux,ARM/Android,ARM64/Android,MIPS32/Android,X86/Android,<br> 33 X86/Solaris,AMD64/SolarisandAMD64/MacOSX10.12.<br> 34 <br> 35 *====================CORECHANGES===================<br> 36 <br> 37 *Thetranslationcachesizehasbeenincreasedtokeepupwiththedemandsof<br> 38 largeapplications.Themaximumnumberofsectorshasincreasedfrom24to<br> 39 48.Thedefaultnumberofsectorshasincreasedfrom16to32onall<br> 40 targetsexceptAndroid,wheretheincreaseisfrom6to12.<br> 41 <br> 42 *TheamountofmemorythatValgrindcanusehasbeenincreasedfrom64GBto<br> 43 128GB.Inparticularthismeansyourapplicationcanallocateuptoabout<br> 44 60GBwhenrunningonMemcheck.<br> 45 <br> 46 *Valgrind'sdefaultloadaddresshasbeenchangedfrom0x3800'0000to<br> 47 0x5800'0000,soastomakeitpossibletoloadlargerexecutables.This<br> 48 shouldmakeitpossibletoloadexecutablesofsizeatleast1200MB.<br> 49 <br> 50 *Amassivespaceleakcausedbyreadingcompresseddebuginfofileshasbeen<br> 51 fixed.Valgrindshouldnowbeentirelyusablewithgcc-7.0"-gz"created<br> 52 debuginfo.<br> 53 <br> 54 *TheC++demanglerhasbeenupdated.<br> 55 <br> 56 *SupportfordemanglingRustsymbolshasbeenadded.<br> 57 <br> 58 *Anewrepresentationofstacktraces,the"XTree",hasbeenadded.AnXTree<br> 59 isatreeofstacktraceswithdataassociatedwiththestacktraces.Thisis<br> 60 usedbyvarioustools(Memcheck,Helgrind,Massif)toreportontheheap<br> 61 consumptionofyourprogram.Reportingiscontrolledbythenewoptions<br> 62 --xtree-memory=none|allocs|fulland--xtree-memory-file=<file>.<br> 63 <br> 64 Areportcanalsobeproducedondemandusingthegdbservermonitorcommand<br> 65 'xtmemory[<filename>]>'.TheXTreecanbeoutputin2formats:'callgrind<br> 66 format'and'massifformat.Theexistingvisualisersfortheseformats(e.g.<br> 67 callgrind_annotate,KCachegrind,ms_print)canbeusedtovisualiseand<br> 68 analysethesereports.<br> 69 <br> 70 MemcheckcanalsoproduceXTreeleakreportsusingtheCallgrindfile<br> 71 format.Formoredetails,seetheusermanual.<br> 72 <br> 73 *==================PLATFORMCHANGES=================<br> 74 <br> 75 *ppc64:supportforISA3.0Bandvariousfixesforexisting3.0support<br> 76 <br> 77 *amd64:fixesforJITfailureproblemsonlongAVX2codeblocks<br> 78 <br> 79 *amd64andx86:supportforCETprefixeshasbeenadded<br> 80 <br> 81 *arm32:afewmissingARMv8instructionshavebeenimplemented<br> 82 <br> 83 *arm64,mips64,mips32:analternativeimplementationofLoad-Linkedand<br> 84 Store-Conditionalinstructionshasbeenadded.Thisistodealwith<br> 85 processorimplementationsthatimplementtheLL/SCspecificationsstrictly<br> 86 andasaresultcauseValgrindtohangincertainsituations.The<br> 87 alternativeimplementationisautomaticallyenabledatstartup,asrequired.<br> 88 Youcanusetheoption--sim-hints=fallback-llsctoforce-enableitifyou<br> 89 want.<br> 90 <br> 91 *SupportforOSX10.12hasbeenimproved.<br> 92 <br> 93 *OnLinux,clonehandlinghasbeenimprovedtohonourCLONE_VFORKthat<br> 94 involvesachildstack.NotehoweverthatCLONE_VFORK|CLONE_VMishandled<br> 95 likeCLONE_VFORK(byremovingCLONE_VM),soapplicationsthatdependon<br> 96 CLONE_VMexactsemanticswill(still)notwork.<br> 97 <br> 98 *TheTileGX/Linuxporthasbeenremovedbecauseitappearstobebothunused<br> 99 andunsupported.<br> 100 <br> 101 *====================TOOLCHANGES====================<br> 102 <br> 103 *Memcheck:<br> 104 <br> 105 -Memcheckshouldgivefewerfalsepositiveswhenrunningoptimised<br> 106 Clang/LLVMgeneratedcode.<br> 107 <br> 108 -Supportfor--xtree-memoryand'xtmemory[<filename>]>'.<br> 109 <br> 110 -Newcommandlineoptions--xtree-leak=no|yesand--xtree-leak-file=<file><br> 111 toproducetheendofexecutionleakreportinaxtreecallgrindformat<br> 112 file.<br> 113 <br> 114 -Newoption'xtleak'inthememcheckleak_checkmonitorcommand,toproduce<br> 115 theleakreportinanxtreefile.<br> 116 <br> 117 *Massif:<br> 118 <br> 119 -Supportfor--xtree-memoryand'xtmemory[<filename>]>'.<br> 120 <br> 121 -Forsomeworkloads(typically,forbigapplications),Massifmemory<br> 122 consumptionandCPUconsumptionhasdecreasedsignificantly.<br> 123 <br> 124 *Helgrind:<br> 125 <br> 126 -Supportfor--xtree-memoryand'xtmemory[<filename>]>'.<br> 127 <br> 128 -additionofclientrequestVALGRIND_HG_GNAT_DEPENDENT_MASTER_JOIN,useful<br> 129 forAdagnatcompiledapplications.<br> 130 <br> 131 *====================OTHERCHANGES====================<br> 132 <br> 133 *ForValgrinddevelopers:inanouter/innersetup,theouterValgrindwill<br> 134 appendtheinnergueststacktracetotheinnerhoststacktrace.Thishelps<br> 135 toinvestigatetheerrorsreportedbytheouter,whentheyarecausedbythe<br> 136 innerguestprogram(suchasaninnerregtest).SeeREADME_DEVELOPERSfor<br> 137 moreinfo.<br> 138 <br> 139 *Toallowfastdetectionofcallgrindfilesbydesktopenvironmentsandfile<br> 140 managers,theformatwasextendedtohaveanoptionalfirstlinethat<br> 141 uniquelyidentifiestheformat("#callgrindformat").Callgrindcreates<br> 142 thislinenow,asdoesthenewxtreefunctionality.<br> 143 <br> 144 *Filenametemplatearguments(suchas--log-file,--xtree-memory-file,...)<br> 145 haveanew%nformatletterthatisreplacedbyasequencenumber.<br> 146 <br> 147 *"--version-v"nowshowstheSVNrevisionnumbersfromwhichValgrindwas<br> 148 built.<br> 149 <br> 150 *====================FIXEDBUGS====================<br> 151 <br> 152 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 153 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 154 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 155 bugzilla(https://bugs.kde.org/enter_bug.cgi?product=valgrind)rather<br> 156 thanmailingthedevelopers(ormailinglists)directly--bugsthat<br> 157 arenotenteredintobugzillatendtogetforgottenaboutorignored.<br> 158 <br> 159 Toseedetailsofagivenbug,visit<br> 160 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 161 whereXXXXXXisthebugnumberaslistedbelow.<br> 162 <br> 163 162848--log-fileoutputisn'tsplitwhenaprogramforks<br> 164 340777Illegalinstructiononmips(ar71xx)<br> 165 341481MIPS64:Iop_CmpNE32triggersfalsewarningonMIPS64platforms<br> 166 342040ValgrindmishandlesclonewithCLONE_VFORK|CLONE_VMthatclones<br> 167 toadifferentstack.<br> 168 344139x86stack-segoverrides,neededbytheWinepeople<br> 169 344524storeconditionalofguestapplicationsalwaysfail-observedon<br> 170 Octeon3(MIPS)<br> 171 348616Wine/valgrind:notedbutunhandledioctl0x5390[..](DVD_READ_STRUCT)<br> 172 352395PleaseprovideSVNrevisioninfoin--version-v<br> 173 352767Wine/valgrind:notedbutunhandledioctl0x5307[..](CDROMSTOP)<br> 174 356374Assertion'DRD_(g_threadinfo)[tid].pt_threadid!=<br> 175 INVALID_POSIX_THREADID'failed<br> 176 358213helgrind/drdbar_badtestcasehangsorcrasheswithnewglibcpthread<br> 177 barrierimplementation<br> 178 358697valgrind.h:SomecoderemainsevenwhendefiningNVALGRIND<br> 179 359202Addmusllibcconfigure/compile<br> 180 360415amd64instructionsADCXandADOXarenotimplementedinVEX<br> 181 ==372828(vexamd64->IR:0x660xF0x3A0x620x4A0x10)<br> 182 360429unhandledioctl0x530dwithnosize/directionhints(CDROMREADMODE1)<br> 183 362223assertionfailedwhen.valgrindrcisadirectoryinsteadofafile<br> 184 367543bt/btc/btr/btsx86/x86_64instructionsarepoorly-handledwrtflags<br> 185 367942SegfaultvgPlain_do_sys_sigaction(m_signals.c:1138)<br> 186 368507can'tmallocchunkslargerthanabout34GB<br> 187 368529Androidarmtargetlinkerror,missingatexitandpthread_atfork<br> 188 368863WARNING:unhandledarm64-linuxsyscall:100(get_robust_list)<br> 189 368865WARNING:unhandledarm64-linuxsyscall:272(kcmp)<br> 190 368868disInstr(arm64):unhandledinstruction0xD53BE000=cntfrq_el0(ARMv8)<br> 191 368917WARNING:unhandledarm64-linuxsyscall:218(request_key)<br> 192 368918WARNING:unhandledarm64-linuxsyscall:127(sched_rr_get_interval)<br> 193 368922WARNING:unhandledarm64-linuxsyscall:161(sethostname)<br> 194 368924WARNING:unhandledarm64-linuxsyscall:84(sync_file_range)<br> 195 368925WARNING:unhandledarm64-linuxsyscall:130(tkill)<br> 196 368926WARNING:unhandledarm64-linuxsyscall:97(unshare)<br> 197 369459valgrindonarm64violatestheARMv8spec(ldxr/stxr)<br> 198 370028ReducethenumberofcompilerwarningsonMIPSplatforms<br> 199 370635arm64missingsyscallgetcpu<br> 200 371225Fixorderoftimer_{gettime,getoverrun,settime}syscallsonarm64<br> 201 371227CleanAArch64syscalltable<br> 202 371412Renamewrap_sys_shmattosys_shmatlikeotherwrappers<br> 203 371471Valgrindcomplainsaboutnonlegitmemoryleaksonplacementnew(C++)<br> 204 371491handleAddrOverrides()is[incorrect]whenASOprefixisused<br> 205 371503disInstr(arm64):unhandledinstruction0xF89F0000<br> 206 371869support'%'insymbolZ-encoding<br> 207 371916executiontreextreeconcept<br> 208 372120c++demanglerdemanglessymbolswhicharenotc++<br> 209 372185SupportofvalgrindonARMv8with32bitexecutable<br> 210 372188vexamd64->IR:0x660xF0x3A0x620x4A0x100x100x48(PCMPxSTRx$0x10)<br> 211 372195PowerPC,xxselinstructionisnotalwaysrecognized.<br> 212 372504Hangingonexit_group<br> 213 372600processloopsforeverwhenfatalsignalsarearrivingquickly<br> 214 372794LibVEX(arm32frontend):'AssertionszBlg2<=3'failed<br> 215 373046Stacksregisteredbycoreareneverderegistered<br> 216 373069memcheck/tests/leak_cpp_interiorfailswithGCC5.1+<br> 217 373086ImplementadditionalXenhypercalls<br> 218 373192Callingposix_spawninglibc2.24completelybroken<br> 219 373488SupportforfanotifyAPIonARM64architecture<br> 220 ==368864WARNING:unhandledarm64-linuxsyscall:262(fanotify_init)<br> 221 373555RenameBBPTRtoGSPTRasitdenotesgueststatepointeronly<br> 222 373938constIRExprargumentsformatchIRExpr()<br> 223 374719somespellingfixes<br> 224 374963increasevalgrind'sloadaddresstopreventmmapfailure<br> 225 375514valgrind_get_tls_addr()doesnotworkincaseofstaticTLS<br> 226 375772+1erroringet_elf_symbol_info()whencomputingvalueof'hi'address<br> 227 forML_(find_rx_mapping)()<br> 228 375806Testhelgrind/tests/tc22_exit_w_lockfailswithglibc2.24<br> 229 375839Temporarystorageexhausted,withlongsequenceofvfmadd231psinsns<br> 230 ==377159"vex:the`impossible'happened"stillpresent<br> 231 ==375150Assertion'tres.status==VexTransOK'failed<br> 232 ==378068valgrindcrashesonAVX2functioninFFmpeg<br> 233 376142SegfaultsonMIPSCaviumOcteonboards<br> 234 376279disInstr(arm64):unhandledinstruction0xD50320FF<br> 235 376455Solaris:unhandledsyscalllgrpsys(180)<br> 236 376518Solaris:unhandledfasttrapgetlgrp(6)<br> 237 376611ppc64andarm64don'tknowaboutprlimit64syscall<br> 238 376729PPC64,removeR2fromtheclobberlist<br> 239 ==371668<br> 240 376956syswrapofSNDDRVandDRM_IOCTL_VERSIONcausingsomeaddresses<br> 241 tobewronglymarkedasaddressable<br> 242 377066SomeValgrindunittestsfailtocompileonUbuntu16.10with<br> 243 PIEenabledbydefault<br> 244 377376memcheck/tests/linux/getregsetfailswithglibc2.24<br> 245 377427PPC64,lxvinstructionfailingonodddestinationregister<br> 246 377478PPC64:ISA3.0setupfixes<br> 247 377698Missingmemorycheckforfutex()uaddrargforFUTEX_WAKE<br> 248 andFUTEX_WAKE_BITSET,checkonly4argsforFUTEX_WAKE_BITSET,<br> 249 and2argsforFUTEX_TRYLOCK_PI<br> 250 377717Fixmassivespaceleakwhenreadingcompresseddebuginfosections<br> 251 377891UpdateXen4.6domctlwrappers<br> 252 377930fcntlsyscallwrapperismissingflockstructurecheck<br> 253 378524libvexmultiarch_testregressionons390xandppc64<br> 254 378535ValgrindreportsINTERNALERRORinexecvesyscallwrapper<br> 255 378673Updatelibibertydemangler<br> 256 378931AddISA3.0Badditionalisnstructions,addOV32,CA32settingsupport<br> 257 379039syscallwrapperforprctl(PR_SET_NAME)mustnotcheckmorethan16bytes<br> 258 379094ValgrindreportsINTERNALERRORinrt_sigsuspendsyscallwrapper<br> 259 379371UNKNOWNtaskmessage[id3444,tomach_task_self(),reply0x603]<br> 260 (task_register_dyld_image_infos)<br> 261 379372UNKNOWNtaskmessage[id3447,tomach_task_self(),reply0x603]<br> 262 (task_register_dyld_shared_cache_image_info)<br> 263 379390unhandledsyscall:mach:70(host_create_mach_voucher_trap)<br> 264 379473MIPS:addsupportforrdhwrcyclecounterregister<br> 265 379504removeTileGX/Linuxport<br> 266 379525Supportmorex86nopopcodes<br> 267 379838disAMode(x86):notanaddr!<br> 268 379703PCISA3.0fixes:stxvx,stxv,xscmpexpdpinstructions<br> 269 379890arm:unhandledinstruction:0xEBAD0x1B05(sub.wfp,sp,r5,lsl#4)<br> 270 379895clock_gettimedoesnotexecutePOSTsyscallwrapper<br> 271 379925PPC64,mtffsdoesnotsettheFPCCandCbitsintheFPSCRcorrectly<br> 272 379966WARNING:unhandledamd64-linuxsyscall:313(finit_module)<br> 273 380200xtreegeneratedcallgrindfilesrefertofileswithoutdirectoryname<br> 274 380202Assertionfailureforcachelinesize(cls==64)onaarch64.<br> 275 380397s390x:__GI_strcspn()replacementneeded<br> 276 n-i-bzFixpub_tool_basics.hbuildissuewithg++4.4.7.<br> 277 <br> 278 (3.13.0.RC1:2June2017,vexr3386,valgrindr16434)<br> 279 (3.13.0.RC2:9June2017,vexr3389,valgrindr16443)<br> 280 (3.13.0:14June2017,vexr3396,valgrindr16446)<br> 281 <br> 282 <br> 283 <br> 284 Release3.12.0(20October2016)<br> 285 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 286 <br> 287 3.12.0isafeaturereleasewithmanyimprovementsandtheusual<br> 288 collectionofbugfixes.<br> 289 <br> 290 ThisreleasesupportsX86/Linux,AMD64/Linux,ARM32/Linux,<br> 291 ARM64/Linux,PPC32/Linux,PPC64BE/Linux,PPC64LE/Linux,S390X/Linux,<br> 292 MIPS32/Linux,MIPS64/Linux,ARM/Android,ARM64/Android,<br> 293 MIPS32/Android,X86/Android,X86/Solaris,AMD64/Solaris,X86/MacOSX<br> 294 10.10andAMD64/MacOSX10.10.Thereisalsopreliminarysupportfor<br> 295 X86/MacOSX10.11/12,AMD64/MacOSX10.11/12andTILEGX/Linux.<br> 296 <br> 297 *==================PLATFORMCHANGES=================<br> 298 <br> 299 *POWER:SupportforISA3.0hasbeenadded<br> 300 <br> 301 *mips:supportforO32FPXXABIhasbeenadded.<br> 302 *mips:improvedrecognitionofdifferentprocessors<br> 303 *mips:determinationofpagesizenowdoneatruntime<br> 304 <br> 305 *amd64:PartialsupportforAMDFMA4instructions.<br> 306 <br> 307 *arm,arm64:Supportforv8cryptoandCRCinstructions.<br> 308 <br> 309 *ImprovementsandrobustificationoftheSolarisport.<br> 310 <br> 311 *PreliminarysupportforMacOS10.12(Sierra)hasbeenadded.<br> 312 <br> 313 Whilst3.12.0continuestosupportthe32-bitx86instructionset,we<br> 314 wouldpreferuserstomigrateto64-bitx86(a.k.aamd64orx86_64)<br> 315 wherepossible.Valgrind'ssupportfor32-bitx86hasstagnatedin<br> 316 recentyearsandhasfallenfarbehindthatfor64-bitx86<br> 317 instructions.Bycontrast64-bitx86iswellsupported,uptoand<br> 318 includingAVX2.<br> 319 <br> 320 *====================TOOLCHANGES====================<br> 321 <br> 322 *Memcheck:<br> 323 <br> 324 -Addedmetamempoolsupportfordescribingacustomallocatorwhich:<br> 325 -Auto-freesallchunksassumingthatdestroyingapooldestroysall<br> 326 objectsinthepool<br> 327 -Usesitselftoallocateothermemoryblocks<br> 328 <br> 329 -Newflag--ignore-range-below-sptoignorememoryaccessesbelow<br> 330 thestackpointer,ifyoureallyhaveto.Therelatedflag<br> 331 --workaround-gcc296-bugs=yesisnowdeprecated.Use<br> 332 --ignore-range-below-sp=1024-1asareplacement.<br> 333 <br> 334 *DRD:<br> 335 <br> 336 -Improvedthreadstartuptimesignificantlyonnon-Linuxplatforms.<br> 337 <br> 338 *DHAT<br> 339 <br> 340 -Addedcollectionofthemetric"tot-blocks-allocd"<br> 341 <br> 342 *====================OTHERCHANGES====================<br> 343 <br> 344 *Replacement/wrappingofmalloc/newrelatedfunctionsisnowdonenotjust<br> 345 forsystemlibrariesbydefault,butforanygloballydefinedmalloc/new<br> 346 relatedfunction(bothinsharedlibrariesandstaticallylinkedalternative<br> 347 mallocimplementations).Thedynamic(runtime)linkerisexcluded,though.<br> 348 Toonlyinterceptmalloc/newrelatedfunctionsin<br> 349 systemlibrariesuse--soname-synonyms=somalloc=nouserintercepts(where<br> 350 "nouserintercepts"canbeanynon-existinglibraryname).<br> 351 ThisnewfunctionalityisnotimplementedforMacOSX.<br> 352 <br> 353 *Themaximumnumberofcallersinasuppressionentryisnowequalto<br> 354 themaximumsizefor--num-callers(500).<br> 355 Notethat--gen-suppressions=yes|allsimilarlygeneratessuppressions<br> 356 containingupto--num-callersframes.<br> 357 <br> 358 *NewandmodifiedGDBservermonitorfeatures:<br> 359 <br> 360 -Valgrind'sgdbservernowacceptsthecommand'catchsyscall'.<br> 361 NotethatyoumusthaveGDB>=7.11touse'catchsyscall'with<br> 362 gdbserver.<br> 363 <br> 364 *Newoption--run-cxx-freeres=<yes|no>canbeusedtochangewhether<br> 365 __gnu_cxx::__freeres()cleanupfunctioniscalledornot.Defaultis<br> 366 'yes'.<br> 367 <br> 368 *Valgrindisabletoreadcompresseddebuginfosectionsintwoformats:<br> 369 -zlibELFgABIformatwithSHF_COMPRESSEDflag(gccoption-gz=zlib)<br> 370 -zlibGNUformatwith.zdebugsections(gccoption-gz=zlib-gnu)<br> 371 <br> 372 *ModestJIT-costimprovements:thecostofinstrumentingcodeblocks<br> 373 forthemostcommonusecase(x86_64-linux,Memcheck)hasbeen<br> 374 reducedby10%-15%.<br> 375 <br> 376 *Improvedperformanceforprogramsthatdoalotofdiscardingof<br> 377 instructionaddressrangesof8KBorless.<br> 378 <br> 379 *TheC++symboldemanglerhasbeenupdated.<br> 380 <br> 381 *MorerobustnessagainstinvalidsyscallparametersonLinux.<br> 382 <br> 383 *====================FIXEDBUGS====================<br> 384 <br> 385 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 386 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 387 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 388 bugzilla(https://bugs.kde.org/enter_bug.cgi?product=valgrind)rather<br> 389 thanmailingthedevelopers(ormailinglists)directly--bugsthat<br> 390 arenotenteredintobugzillatendtogetforgottenaboutorignored.<br> 391 <br> 392 Toseedetailsofagivenbug,visit<br> 393 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 394 whereXXXXXXisthebugnumberaslistedbelow.<br> 395 <br> 396 191069ExitingduetosignalnotreportedinXMLoutput<br> 397 199468Suppressions:stacksizelimitedto25<br> 398 while--num-callersallowsmoreframes<br> 399 212352vexamd64unhandledopc_aux=0x2,first_opcode==0xDC(FCOM)<br> 400 278744cvtps2pdwithredundantRexW<br> 401 303877valgrinddoesn'tsupportcompresseddebuginfosections.<br> 402 345307Warningabout"stillreachable"memorywhenusinglibstdc++fromgcc5<br> 403 348345Assertionfailsfornegativelineno<br> 404 348924MIPS:LoaddoublesthroughmemorysothecodecompileswiththeFPXXABI<br> 405 351282V3.10.1MIPSsoftfloatbuildbrokenwithGCC4.9.3/binutils2.25.1<br> 406 351692Dumpscreatedbyvalgrindarenotreadablebygdb(mips32specific)<br> 407 351804Crashongeneratingsuppressionsfor"printf"callonOSX10.10<br> 408 352197mips:mmap2()notwrappedcorrectlyforpagesize>4096<br> 409 353083arm64doesn'timplementvariousxattrsystemcalls<br> 410 353084arm64doesn'tsupportsigpendingsystemcall<br> 411 353137www:updateinfoforSupportedPlatforms<br> 412 353138www:update"TheValgrindDevelopers"page<br> 413 353370don'tadvertiseRDRANDincpuidforCore-i7-4910-likeavx2machine<br> 414 ==365325<br> 415 ==357873<br> 416 353384amd64->IR:0x660xF0x3A0x620xD10x62(pcmpXstrX$0x62)<br> 417 353398WARNING:unhandledamd64-solarissyscall:207<br> 418 353660XMLinauxwhattagnotescapingreservedsymbolsproperly<br> 419 353680s390x:Crashwithcertainglibcversionsduetonon-implementedTBEGIN<br> 420 353727amd64->IR:0x660xF0x3A0x620xD10x72(pcmpXstrX$0x72)<br> 421 353802ELFdebuginforeaderconfusedwithmultiple.rodatasections<br> 422 353891Assert'bad_scanned_addr<VG_ROUNDDN(start+len,sizeof(Addr))'failed<br> 423 353917unhandledamd64-solarissyscallfchdir(120)<br> 424 353920unhandledamd64-solarissyscall:170<br> 425 354274arm:unhandledinstruction:0xEBAD0x0AC1(sub.wsl,sp,r1,lsl#3)<br> 426 354392unhandledamd64-solarissyscall:171<br> 427 354797VbittestdoesnotincludeIopsforPower8instructionsupport<br> 428 354883tst->os_state.pthread-magic_deltaassertionfailureonOSX10.11<br> 429 ==361351<br> 430 ==362920<br> 431 ==366222<br> 432 354933Fixdocumentationof--kernel-variant=android-no-hw-tlsoption<br> 433 355188valgrindshouldinterceptallmallocrelatedglobalfunctions<br> 434 355454donotinterceptmallocrelatedsymbolsfromtheruntimelinker<br> 435 355455stderr.expoftestcaseswrapmallocandwrapmallocstaticoverconstrained<br> 436 356044Dwarflineinforeadermisinterpretsis_stmtregister<br> 437 356112mips:replaceaddiwithaddiu<br> 438 356393valgrind(vex)crashesbecauseisZeroUhappened<br> 439 ==363497<br> 440 ==364497<br> 441 356676arm64-linux:unhandledsyscalls125,126(sched_get_priority_max/min)<br> 442 356678arm64-linux:unhandledsyscall232(mincore)<br> 443 356817valgrind.htriggerscompilererrorsonMSVCwhendefiningNVALGRIND<br> 444 356823UnsupportedARMinstruction:stlex<br> 445 357059x86/amd64:SSEcvtpi2pswithmemorysourcedoestransitiontoMMXstate<br> 446 357338UnhandledinstructionforSHAinstructionslibcryptoBoringSSL<br> 447 357673crashifItrytorunvalgrindwithabinarylinkwithlibcurl<br> 448 357833SettingRLIMIT_DATAtozerobreakswithlinux4.5+<br> 449 357871pthread_spin_destroynotproperlywrapped<br> 450 357887CallstoVG_(fclose)donotclosethefiledescriptor<br> 451 357932amd64->IR:acceptredundantREXprefixesfor{minsd,maxsd}m128,xmm.<br> 452 358030supportdirectsocketcallsonx8632bit(newinlinux4.3)<br> 453 358478drd/tests/std_thread.cppdoesn'tbuildwithGCC6<br> 454 359133Assertion'eltSzB<=ddpa->poolSzB'failed<br> 455 359181BufferOverflowduringDemangling<br> 456 359201futexsyscall"skips"argument5ifopisFUTEX_WAIT_BITSET<br> 457 359289s390x:popcnt(B9E1)notimplemented<br> 458 359472ThePowerPCvsubuqminstructiondoesn'talwaysgivethecorrectresult<br> 459 359503Addmissingsyscallsforaarch64(arm64)<br> 460 359645"Youneedlibc6-dbg"helpmessagecouldbemorehelpful<br> 461 359703s390:wireupseparatesocketcallssystemcalls<br> 462 359724getsocknamemightcrash-deref_UIntshouldcallsafe_to_deref<br> 463 359733amd64implementld.sostrchr/indexoverridelikex86<br> 464 359767ValgrinddoesnotsupporttheIBMPOWERISA3.0instructions,part1/5<br> 465 359829PowerPCtestsuitenone/tests/ppc64/test_isa_2_07.cuses<br> 466 uninitializeddata<br> 467 359838arm64:Unhandledinstruction0xD5033F5F(clrex)<br> 468 359871Incorrectmaskhandlinginppoll<br> 469 359952UnrecognisedPCMPESTRMvariants(0x70,0x19)<br> 470 360008ContentsofPowervrregisterscontentsisnotprintedcorrectlywhen<br> 471 the--vgdb-shadow-registers=yesoptionisused<br> 472 360035POWERPCinstructionbcdaddandbcdsubtractgenerateresultwith<br> 473 non-zeroshadowbits<br> 474 360378arm64:Unhandledinstruction0x5E280844(sha1hs4,s2)<br> 475 360425arm64unsupportedinstructionldpsw<br> 476 ==364435<br> 477 360519none/tests/arm64/memory.vgtestmightfailwithnewergcc<br> 478 360571ErrorabouttheAndroidRuntimereadingbelowthestackpointeronARM<br> 479 360574Wrongparametertypeforanashmemioctl()callonAndroidandARM64<br> 480 360749kludgeformultiple.rodatasectionsonSolarisnolongerneeded<br> 481 360752raisethenumberofreservedfdsinm_main.cfrom10to12<br> 482 361207ValgrinddoesnotsupporttheIBMPOWERISA3.0instructions,part2/5<br> 483 361226s390x:risbgn(EC59)notimplemented<br> 484 361253[s390x]ex_clone.c:42:undefinedreferenceto`pthread_create'<br> 485 361354ppc64[le]:wireupseparatesocketcallssystemcalls<br> 486 361615Inconsistentterminationformultithreadedprocessterminatedbysignal<br> 487 361926UnhandledSolarissyscall:sysfs(84)<br> 488 362009Vdumpscoreonunimplementedfunctionalitybeforethreadsarecreated<br> 489 362329ValgrinddoesnotsupporttheIBMPOWERISA3.0instructions,part3/5<br> 490 362894missing(broken)supportforwbitfieldonmtfsfiinstruction(ppc64)<br> 491 362935[AsusWRT]Assertion'sizeof(TTEntryC)<=88'failed<br> 492 362953RequestforanupdatetotheValgrindDeveloperspage<br> 493 363680addrenameat2()support<br> 494 363705arm64missingsyscallname_to_handle_atandopen_by_handle_at<br> 495 363714ppc64missingsyscallssync,waitidandname_to/open_by_handle_at<br> 496 363858ValgrinddoesnotsupporttheIBMPOWERISA3.0instructions,part4/5<br> 497 364058clarifyinmanuallimitationsofarrayoverrunsdetections<br> 498 364413pselectsycallwrappermishandlesNULLsigmask<br> 499 364728PowerPC,missingsupportforseveralHWregistersin<br> 500 get_otrack_shadow_offset_wrk()<br> 501 364948ValgrinddoesnotsupporttheIBMPOWERISA3.0instructions,part5/5<br> 502 365273Invalidwritetostacklocationreportedaftersignalhandlerruns<br> 503 365912ppc64BEsegfaultduringjm-insnstest(RELRO)<br> 504 366079FPXXSupportforMIPS32Valgrind<br> 505 366138FixconfigureerrorsoutwhenusingXcode8(clang8.0.0)<br> 506 366344MultipleunhandledinstructionforAarch64<br> 507 (0x0EE0E020,0x1AC15800,0x4E284801,0x5E040023,0x5E056060)<br> 508 367995Integrationofmemcheckwithcustommemoryallocator<br> 509 368120x86_linuxasm_startfunctionsdonotkeep16-bytealignedstackpointer<br> 510 368412Falsepositiveresultforaltiveccapabilitycheck<br> 511 368416Addtc06_two_races_xml.expoutputforppc64<br> 512 368419PerfEventsioctlsnotimplemented<br> 513 368461mmapunmaptestfailsonppc64<br> 514 368823run_a_thread_NORETURNassemblycodetypoforVGP_arm64_linuxtarget<br> 515 369000AMD64fma4instructionsunsupported.<br> 516 369169ppc64failsjm_int_isa_2_07test<br> 517 369175jm_vec_isa_2_07testcrashesonppc64<br> 518 369209valgrindloopsandeatsupallmemoryifcwddoesn'texist.<br> 519 369356pre_mem_read_sockaddrsyscallwrappercancrashwithbadsockaddr<br> 520 369359msghdr_foreachfieldcancrashwhenhandlingbadiovec<br> 521 369360Badsigprocmaskoldornewsetscancrashvalgrind<br> 522 369361vmsplicesyscallwrappercrashesonbadiovec<br> 523 369362Badsigactionargumentscrashvalgrind<br> 524 369383x86sys_modify_ldtwrappercrashesonbadptr<br> 525 369402Badset/get_thread_areapointercrashesvalgrind<br> 526 369441badlvecargumentcrashesprocess_vm_readv/writevsyscallwrappers<br> 527 369446valgrindcrashesonunknownfcntlcommand<br> 528 369439S390x:UnhandledinsnsRISBLG/RISBHGandLDE/LDER<br> 529 369468RemovequadraticmetapoolalgorithmusingVG_(HT_remove_at_Iter)<br> 530 370265ISA3.0HWcapstuffneedsupdating<br> 531 371128BCDaddandsubtractinstructionsonPowerBEin32-bitmodedonotwork<br> 532 372195PowerPC,xxselinstructionisnotalwaysrecognized<br> 533 <br> 534 n-i-bzFixincorrect(orinfiniteloop)unwindonRHEL7x86andamd64<br> 535 n-i-bzmassif--pages-as-heap=yesdoesnotreportpeakcausedbymmap+munmap<br> 536 n-i-bzfalsepositiveleaksduetoaspacemgrmergingheap&nonheapsegments<br> 537 n-i-bzFixppoll_alarmexclusiononOSX<br> 538 n-i-bzDocumentbrksegmentlimitation,referencemanualinlimitreachedmsg.<br> 539 n-i-bzFixclobberlistinnone/tests/amd64/xacq_xrel.c[valgrindr15737]<br> 540 n-i-bzBumpallowedshiftvaluefor"add.wreg,sp,reg,lsl#N"[vexr3206]<br> 541 n-i-bzamd64:memcheckfalsepositivewithshr%edx<br> 542 n-i-bzarm3:AllowearlywritebackofSPbaseregisterin"strdrD,[sp,#-16]"<br> 543 n-i-bzppc:FixtwocasesofPPCAvFpOpvsPPCFpOpenumconfusion<br> 544 n-i-bzarm:Fixincorrectregister-numberconstraintcheckforLDAEX{,B,H,D}<br> 545 n-i-bzDHAT:addedcollectionofthemetric"tot-blocks-allocd"<br> 546 <br> 547 (3.12.0.RC1:20October2016,vexr3282,valgrindr16094)<br> 548 (3.12.0.RC2:20October2016,vexr3282,valgrindr16096)<br> 549 (3.12.0:21October2016,vexr3282,valgrindr16098)<br> 550 <br> 551 <br> 552 <br> 553 Release3.11.0(22September2015)<br> 554 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 555 <br> 556 3.11.0isafeaturereleasewithmanyimprovementsandtheusual<br> 557 collectionofbugfixes.<br> 558 <br> 559 ThisreleasesupportsX86/Linux,AMD64/Linux,ARM32/Linux,<br> 560 ARM64/Linux,PPC32/Linux,PPC64BE/Linux,PPC64LE/Linux,S390X/Linux,<br> 561 MIPS32/Linux,MIPS64/Linux,ARM/Android,ARM64/Android,<br> 562 MIPS32/Android,X86/Android,X86/Solaris,AMD64/Solaris,X86/MacOSX<br> 563 10.10andAMD64/MacOSX10.10.Thereisalsopreliminarysupportfor<br> 564 X86/MacOSX10.11,AMD64/MacOSX10.11andTILEGX/Linux.<br> 565 <br> 566 *==================PLATFORMCHANGES=================<br> 567 <br> 568 *SupportforSolaris/x86andSolaris/amd64hasbeenadded.<br> 569 <br> 570 *PreliminarysupportforMacOSX10.11(ElCapitan)hasbeenadded.<br> 571 <br> 572 *PreliminarysupportfortheTileraTileGXarchitecturehasbeenadded.<br> 573 <br> 574 *s390x:Itisnowrequiredforthehosttohavethe"longdisplacement"<br> 575 facility.Theoldestsupportedmachinemodelisz990.<br> 576 <br> 577 *x86:onanSSE2onlyhost,Valgrindin32bitmodenowclaimstobea<br> 578 Pentium4.3.10.1wronglyclaimedtobeaCore2,whichisSSSE3.<br> 579 <br> 580 *TheJIT'sregisterallocatorissignificantlyfaster,makingtheJIT<br> 581 asawholesomewhatfaster,soJIT-intensiveactivities,forexample<br> 582 programstartup,aremodestlyfaster,around5%.<br> 583 <br> 584 *Therehavebeenchangestothedefaultsettingsofseveralcommand<br> 585 lineflags,asdetailedbelow.<br> 586 <br> 587 *IntelAVX2supportismorecomplete(64bittargetsonly).OnAVX2<br> 588 capablehosts,thesimulatedCPUIDwillnowindicateAVX2support.<br> 589 <br> 590 *====================TOOLCHANGES====================<br> 591 <br> 592 *Memcheck:<br> 593 <br> 594 -Thedefaultvaluefor--leak-check-heuristicshasbeenchangedfrom<br> 595 "none"to"all".Thishelpstoreducethenumberofpossibly<br> 596 lostblocks,inparticularforC++applications.<br> 597 <br> 598 -Thedefaultvaluefor--keep-stacktraceshasbeenchangedfrom<br> 599 "malloc-then-free"to"malloc-and-free".Thishasasmallcostin<br> 600 memory(onewordpermalloc-edblock)butallowsMemchecktoshowthe<br> 601 3stacktracesofadanglingreference:wheretheblockwasallocated,<br> 602 whereitwasfreed,andwhereitisacccessedafterbeingfreed.<br> 603 <br> 604 -Thedefaultvaluefor--partial-loads-okhasbeenchangedfrom"no"to<br> 605 "yes",soastoavoidfalsepositiveerrorsresultingfromsomekinds<br> 606 ofvectorisedloops.<br> 607 <br> 608 -Anewmonitorcommand'xb<addr><len>'showsthevaliditybitsof<br> 609 <len>bytesat<addr>.Themonitorcommand'xb'iseasiertouse<br> 610 thanget_vbitswhenyouneedtoassociatebytedatavaluewith<br> 611 theircorrespondingvaliditybits.<br> 612 <br> 613 -The'block_list'monitorcommandhasbeenenhanced:<br> 614 oitcanprintarangeoflossrecords<br> 615 oitnowacceptsanoptionalargument'limited<max_blocks>'<br> 616 tocontrolthenumberofblocksprinted.<br> 617 oifablockhasbeenfoundusingaheuristic,then<br> 618 'block_list'nowshowstheheuristicaftertheblocksize.<br> 619 othelossrecords/blockstoprintcanbelimitedtotheblocks<br> 620 foundviaspecifiedheuristics.<br> 621 <br> 622 -TheChelperfunctionsusedtoinstrumentloadson<br> 623 x86-{linux,solaris}andarm-linux(both32-bitonly)havebeen<br> 624 replacedbyhandwrittenassemblysequences.Thisgivesspeedups<br> 625 intheregionof0%to7%forthosetargetsonly.<br> 626 <br> 627 -Anewcommandlineoption,--expensive-definedness-checks=yes|no,<br> 628 hasbeenadded.Thisisusefulforavoidingoccasionalinvalid<br> 629 uninitialised-valueerrorsinoptimisedcode.Watchoutfor<br> 630 runtimedegradation,asthiscanbeupto25%.Asalways,though,<br> 631 theslowdownishighlyapplicationspecific.Thedefaultsetting<br> 632 is"no".<br> 633 <br> 634 *Massif:<br> 635 <br> 636 -Anewmonitorcommand'all_snapshots<filename>'dumpsall<br> 637 snapshotstakensofar.<br> 638 <br> 639 *Helgrind:<br> 640 <br> 641 -Significantmemoryreductionandmoderatespeedupsfor<br> 642 --history-level=fullforapplicationsaccessingalotofmemory<br> 643 withmanydifferentstacktraces.<br> 644 <br> 645 -Thedefaultvaluefor--conflict-cache-size=Nhasbeendoubledto<br> 646 2000000.Usersthatwerenotusingthedefaultvalueshould<br> 647 preferablyalsodoublethevaluetheygive.<br> 648 <br> 649 Thedefaultwaschangedduetothechangesinthe"fullhistory"<br> 650 implementation.Doublingthevaluegivesonaverageaslightlymore<br> 651 completehistoryandusessimilarmemory(orsignificantlylessmemory<br> 652 intheworstcase)thanthepreviousimplementation.<br> 653 <br> 654 -TheHelgrindmonitorcommand'infolocks'nowacceptsanoptional<br> 655 argument'lock_addr',whichshowsinformationaboutthelockatthe<br> 656 givenaddressonly.<br> 657 <br> 658 -Whenusing--history-level=full,thenewHelgrindmonitorcommand<br> 659 'accesshistory<addr>[<len>]'willshowtherecordedaccessesfor<br> 660 <len>(or1)bytesat<addr>.<br> 661 <br> 662 *====================OTHERCHANGES====================<br> 663 <br> 664 *Thedefaultvalueforthe--smc-checkoptionhasbeenchangedfrom<br> 665 "stack"to"all-non-file"ontargetsthatprovideautomaticD-I<br> 666 cachecoherence(x86,amd64ands390x).Theresultistoprovide,<br> 667 bydefault,transparentsupportforJITgeneratedandself-modifying<br> 668 codeonalltargets.<br> 669 <br> 670 *MacOSXonly:thedefaultvalueforthe--dsymutiloptionhasbeen<br> 671 changedfrom"no"to"yes",sinceanyserioususageonMacOSX<br> 672 alwaysrequiredittobe"yes".<br> 673 <br> 674 *Thecommandlineoptions--db-attachand--db-commandhavebeenremoved.<br> 675 Theyweredeprecatedin3.10.0.<br> 676 <br> 677 *Whenaprocessdiesduetoasignal,Valgrindnowshowsthesignal<br> 678 andthestacktraceatdefaultverbosity(i.e.verbosity1).<br> 679 <br> 680 *TheaddressdescriptionlogicusedbyMemcheckandHelgrindnow<br> 681 describesaddressesinanonymoussegments,filemmap-edsegments,<br> 682 sharedmemorysegmentsandthebrkdatasegment.<br> 683 <br> 684 *Thenewoption--error-markers=<begin>,<end>canbeusedtomarkthe<br> 685 begin/endoferrorsintextualoutputmode,tofacilitate<br> 686 searching/extractingerrorsinoutputfilesthatmixvalgrinderrors<br> 687 withprogramoutput.<br> 688 <br> 689 *Thenewoption--max-threads=<number>canbeusedtochangethenumber<br> 690 ofthreadsvalgrindcanhandle.Thedefaultis500threadswhich<br> 691 shouldbemorethanenoughformostapplications.<br> 692 <br> 693 *Thenewoption--valgrind-stacksize=<number>canbeusedtochangethe<br> 694 sizeoftheprivatethreadstacksusedbyValgrind.Thisisuseful<br> 695 forreducingmemoryuseorincreasingthestacksizeifValgrind<br> 696 segfaultsduetostackoverflow.<br> 697 <br> 698 *Thenewoption--avg-transtab-entry-size=<number>canbeusedtospecify<br> 699 theexpectedinstrumentedblocksize,eithertoreducememoryuseor<br> 700 toavoidexcessiveretranslation.<br> 701 <br> 702 *ValgrindcanbebuiltwithIntel'sICCcompiler,version14.0orlater.<br> 703 <br> 704 *NewandmodifiedGDBservermonitorfeatures:<br> 705 <br> 706 -WhenasignalisreportedinGDB,youcannowusetheGDBconvenience<br> 707 variable$_siginfotoexaminedetailedsignalinformation.<br> 708 <br> 709 -Valgrind'sgdbservernowallowstheusertochangethesignal<br> 710 todelivertotheprocess.So,use'signalSIGNAL'tocontinueexecution<br> 711 withSIGNALinsteadofthesignalreportedtoGDB.Use'signal0'to<br> 712 continuewithoutpassingthesignaltotheprocess.<br> 713 <br> 714 -WithGDB>=7.10,thecommand'targetremote'<br> 715 willautomaticallyloadtheexecutablefileoftheprocessrunning<br> 716 underValgrind.Thismeansyoudonotneedtospecifytheexecutable<br> 717 fileyourself,GDBwilldiscoverititself.SeeGDBdocumentationabout<br> 718 'qXfer:exec-file:read'packetformoreinfo.<br> 719 <br> 720 *====================FIXEDBUGS====================<br> 721 <br> 722 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 723 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 724 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 725 bugzilla(https://bugs.kde.org/enter_bug.cgi?product=valgrind)rather<br> 726 thanmailingthedevelopers(ormailinglists)directly--bugsthat<br> 727 arenotenteredintobugzillatendtogetforgottenaboutorignored.<br> 728 <br> 729 Toseedetailsofagivenbug,visit<br> 730 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 731 whereXXXXXXisthebugnumberaslistedbelow.<br> 732 <br> 733 116002VG_(printf):Problemswithjustificationofstringsandintegers<br> 734 155125avoidcuttingawayfile:linenoafterlongfunctionname<br> 735 197259Unsupportedarch_prtctlPR_SET_GSoption<br> 736 201152ppc64:Assertioninppc32g_dirtyhelper_MFSPR_268_269<br> 737 201216FixValgrinddoesnotsupportpthread_sigmask()onOSX<br> 738 201435FixDarwin:-vdoesnotshowkernelversion<br> 739 208217"Warning:notedbutunhandledioctl0x2000747b"onMacOSX<br> 740 211256Fixedanoutdatedcommentregardingthedefaultplatform.<br> 741 211529IncompletecallstacksforcodecompiledbynewerversionsofMSVC<br> 742 211926Avoidcompilationwarningsinvalgrind.hwith-pedantic<br> 743 212291Fixunhandledsyscall:unix:132(mkfifo)onOSX<br> 744 ==263119<br> 745 226609Creditingupstreamauthorsinmanpage<br> 746 231257Valgrindomitspathwhenexecutingscriptfromshebangline<br> 747 254164OSXtask_info:UNKNOWNtaskmessage[id3405,tomach_task_self()[..]<br> 748 294065Improvethepdbfilereaderbyavoidinghardwiredabsolutepathnames<br> 749 269360s390x:Fixaddressingmodeselectionforcompare-and-swap<br> 750 302630Memcheck:Assertionfailed:'sizeof(UWord)==sizeof(UInt)'<br> 751 ==326797<br> 752 312989ioctlhandlingneedstodoPOSThandlingongenericioctlsand[..]<br> 753 319274Fixunhandledsyscall:unix:410(sigsuspend_nocancel)onOSX<br> 754 324181mmapdoesnothandleMAP_32BIT(handleitnow,ratherthanfailit)<br> 755 327745Fixvalgrind3.9.0buildfailsonMacOSX10.6.8<br> 756 330147libmpiwrapPMPI_Get_countreturnsundefinedvalue<br> 757 333051mmapofhugepagesfailsduetoincorrectalignment<br> 758 ==339163<br> 759 334802valgrinddoesnotalwaysexplainwhyagivenoptionisbad<br> 760 335618mov.wrN,pc/sp(ARM32)<br> 761 335785amd64->IR0xC40xE20x750x2F(vmaskmovpd)<br> 762 ==307399<br> 763 ==343175<br> 764 ==342740<br> 765 ==346912<br> 766 335907segfaultwhenrunningwine'sddrawex/tests/surface.cundervalgrind<br> 767 338602AVX2bitinCPUIDmissing<br> 768 338606Strangemessageforscriptswithinvalidinterpreter<br> 769 338731ppc:Fixtestuitebuildfortoolchainsnotsupporting-maltivec<br> 770 338995shmatwithhugepages(SHM_HUGETLB)failswithEINVAL<br> 771 339045GettingvalgrindtocompileandrunonOSXYosemite(10.10)<br> 772 ==340252<br> 773 339156gdbsrvnotcalledforfatalsignal<br> 774 339215Valgrind3.10.0contain2013incopyrightsnotice<br> 775 339288supportCaviumOcteonMIPSspecificBBIT*32instructions<br> 776 339636Usefxsave64andfxrstor64mnemonicsinsteadofold-schoolrex64prefix<br> 777 339442FixtestsuitebuildfailureonOSX10.9<br> 778 339542EnablecompilationwithIntel'sICCcompiler<br> 779 339563TheDVBdemuxDMX_STOPioctldoesn'thaveawrapper<br> 780 339688Mac-specificASMdoesnotsupport.versiondirective(cpuid,<br> 781 tronicalandpushfpopftests)<br> 782 339745ValgrindcrashwhencheckMarmaladeapp(partialfix)<br> 783 339755Fixknowndeliberatememoryleakinsetenv()onMacOSX10.9<br> 784 339778Linux/TileGxplatformsupportforValgrind<br> 785 339780Fixknownuninitialisedreadinpthread_rwlock_init()onMacOSX10.9<br> 786 339789Fixnone/tests/execvetestonMacOSX10.9<br> 787 339808Fixnone/tests/rlimit64_nofiletestonMacOSX10.9<br> 788 339820vexamd64->IR:0x660xF0x3A0x630xA0x420x740x9(pcmpistri$0x42)<br> 789 340115Fixnone/tests/cmdline[1|2]testsonsystemswhichdefineTMPDIR<br> 790 340392Allowusertoselectmoreaccuratedefinednesscheckinginmemcheck<br> 791 toavoidinvalidcomplaintsonoptimisedcode<br> 792 340430Fixsomegrammaticalweirdnessinthemanual.<br> 793 341238RecognizeGCC5/DWARFv5DW_LANGconstants(Go,C11,C++11,C++14)<br> 794 341419Signalhandlerucontext_tnotfilledoutcorrectlyonOSX<br> 795 341539VG_(describe_addr)shouldnotdescribeaddressasbelongingtoclient<br> 796 segmentifitispasttheheapend<br> 797 341613Enablebuildingofmanythreadsandthread-exitstestsonMacOSX<br> 798 341615Fixnone/tests/darwin/access_extendedtestonMacOSX<br> 799 341698Valgrind'sAESKEYGENASSISTgiveswrongresultinwords0and2[..]<br> 800 341789aarch64:shmatfailswithvalgrindonARMv8<br> 801 341997MIPS64:CaviumOCTEONinsns-immediateoperandhandledincorrectly<br> 802 342008valgrind.hneedstypecast[..]forclang/llvmin64-bitmode<br> 803 342038Unhandledsyscallsonaarch64(mbind/get/set_mempolicy)<br> 804 342063wrongformatspecifierfortestmcblocklistsearchingdbserver_tests<br> 805 342117HangwhenloadingPDBfileforMSVCcompiledFirefoxunderWine<br> 806 342221socketconnectfalsepositiveuninitmemoryforunknownaffamily<br> 807 342353Allowdumpingfullmassifoutputwhilevalgrindisstillrunning<br> 808 342571ValgrindchokesonAVXcompareintrinsicwith_CMP_GE_QS<br> 809 ==346476<br> 810 ==348387<br> 811 ==350593<br> 812 342603AddI2C_SMBUSioctlsupport<br> 813 342635OSX10.10(Yosemite)-missingsystemcallsandfcntlcode<br> 814 342683Markmemorypasttheinitialbrklimitasunaddressable<br> 815 342783arm:unhandledinstruction0xEEFE1ACA="vcvt.s32.f32s3,s3,#12"<br> 816 342795Internalglibc__GI_mempcpycallshouldbeintercepted<br> 817 342841s390x:Supportinstructionsfiebr(a)andfidbr(a)<br> 818 343012Unhandledsyscall319(memfd_create)<br> 819 343069Patchupdatingv4l2APIsupport<br> 820 343173helgrindcrashduringstackunwind<br> 821 343219fixGET_STARTREGSforarm<br> 822 343303Fixknowndeliberatememoryleakinsetenv()onMacOSX10.10<br> 823 343306OSX10.10:UNKNOWNmach_msgunhandledMACH_SEND_TRAILERoption<br> 824 343332Unhandledinstruction0x9E310021(fcvtmu)onaarch64<br> 825 343335unhandledinstruction0x1E638400(fccmp)aarch64<br> 826 343523OSXmach_ports_register:UNKNOWNtaskmessage[id3403,to[..]<br> 827 343525OSXhost_get_special_port:UNKNOWNhostmessage[id412,to[..]<br> 828 343597ppc64le:incorrectuseofoffseofmacro<br> 829 343649OSXhost_create_mach_voucher:UNKNOWNhostmessage[id222,to[..]<br> 830 343663OSX10.10Memchecjalwaysreportsaleakregardlessof[..]<br> 831 343732Unhandledsyscall144(setgid)onaarch64<br> 832 343733Unhandledsyscall187(msgctlandrelated)onaarch64<br> 833 343802s390x:Falsepositive"conditionaljumpormovedependson[..]<br> 834 343902--vgdb=yesdoesn'tbreakwhen--xml=yesisused<br> 835 343967Don'twarnaboutsetuid/setgid/setcapexecutablefordirectories<br> 836 343978RecognizeDWARF5/GCC5DW_LANG_Fortran2003and2008constants<br> 837 344007accept4syscallunhandledonarm64(242)andppc64(344)<br> 838 344033HelgrindonARM32losestrackofmutexstateinpthread_cond_wait<br> 839 344054www-updateinfoforSolaris/illumos<br> 840 344416'makeregtest'doesnotworkcleanlyonOSX<br> 841 344235Removeduplicateincludeofpub_core_aspacemgr.h<br> 842 344279syscallsendmmsgonarm64(269)andppc32/64(349)unhandled<br> 843 344295syscallrecvmmsgonarm64(243)andppc32/64(343)unhandled<br> 844 3443072unhandledsyscallsonaarch64/arm64:umount2(39),mount(40)<br> 845 344314callgrind_annotate...warningsaboutcommandscontainingnewlines<br> 846 344318socketcallshouldwraprecvmmsgandsendmmsg<br> 847 344337Fixunhandledsyscall:mach:41(_kernelrpc_mach_port_guard_trap)<br> 848 344416Fix'makeregtest'doesnotworkcleanlyonOSX<br> 849 344499FixcompilationforLinuxkernel>=4.0.0<br> 850 344512OSX:unhandledsyscall:unix:348(__pthread_chdir),<br> 851 unix:349(__pthread_fchdir)<br> 852 344559Garbagecollectionofunusedsegmentnamesinaddressspacemanager<br> 853 344560FixstacktracesmissingpenultimateframeonOSX<br> 854 344621Fixmemcheck/tests/err_disable4testonOSX<br> 855 344686Fixsuppressionforpthread_rwlock_initonOSX10.10<br> 856 344702FixmissinglibobjcsuppressionsonOSX10.10<br> 857 ==344543<br> 858 344936Fixunhandledsyscall:unix:473(readlinkat)onOSX10.10<br> 859 344939Fixmemcheck/tests/xml1onOSX10.10<br> 860 345016helgrind/tests/locked_vs_unlocked2isfailingsometimes<br> 861 345079FixbuildproblemsinVEX/useful/test_main.c<br> 862 345126IncorrecthandlingofVIDIOC_G_AUDIOandG_AUDOUT<br> 863 345177arm64:prfm(reg)notimplemented<br> 864 345215Performanceimprovementsfortheregisterallocator<br> 865 345248addsupportforSolarisOSinvalgrind<br> 866 345338TIOCGSERIALandTIOCSSERIALioctlsupportonLinux<br> 867 345394Fixmemcheck/tests/strchronOSX<br> 868 345637Fixmemcheck/tests/sendmsgonOSX<br> 869 345695AddPOWERPCsupportforAT_DCACHESIZEandHWCAP2<br> 870 345824Fixaspacemsegmentmismatch:seenwithnone/tests/bigcode<br> 871 345887Fixanassertionintheaddressspacemanager<br> 872 345928amd64:callstackonlycontainscurrentfunctionforsmallstacks<br> 873 345984disInstr(arm):unhandledinstruction:0xEE193F1E<br> 874 345987MIPS64:ImplementcaviumLHXinstruction<br> 875 346031MIPS:ImplementsupportfortheCvmCountregister(rhwr%0,31)<br> 876 346185Fixtyposavingaltivecregisterv24<br> 877 346267CompilerwarningsforPPC64codeoncalltoLibVEX_GuestPPC64_get_XER()<br> 878 andLibVEX_GuestPPC64_get_CR()<br> 879 346270Regressiontestsnone/tests/jm_vec/isa_2_07and<br> 880 none/tests/test_isa_2_07_part2havefailuresonPPC64littleendian<br> 881 346307fusefilesystemsyscalldeadlocks<br> 882 346324PPC64missingsupportforlbarx,lharx,stbcxandsthcxinstructions<br> 883 346411MIPS:SysRes::_valExhandlingisincorrect<br> 884 346416AddsupportforLL_IOC_PATH2FIDandLL_IOC_GETPARENTLustreioctls<br> 885 346474PPC64Power8,sprTEXASRUregisternotsupported<br> 886 346487Compilergenerates"note"aboutafutureABIchangeforPPC64<br> 887 346562MIPS64:lwl/lwrinstructionsareperforming64bitloads<br> 888 andcausingspurious"invalidreadofsize8"warnings<br> 889 346801FixlinkerroronOSX:_vgModuleLocal_sf_maybe_extend_stack<br> 890 347151Fixsuppressionforpthread_rwlock_initonOSX10.8<br> 891 347233Fixmemcheck/tests/strchronOSX10.10(Haswell)<br> 892 347322PowerPCregressiontestcleanup<br> 893 347379valgrind--leak-check=fullleakerrorsfromsystemlibsonOSX10.8<br> 894 ==217236<br> 895 347389unhandledsyscall:373(LinuxARMsyncfs)<br> 896 347686PatchsettocleanupPPC64regtests<br> 897 347978Removebashdependencieswherenotneeded<br> 898 347982OSX:undefinedsymbolsforarchitecturex86_64:"_global"[..]<br> 899 347988Memcheck:the'impossible'happened:unexpectedsizeforAddr(OSX/wine)<br> 900 ==345929<br> 901 348102Patchupdatingv4l2APIsupport<br> 902 348247amd64frontend:jnojumpswronglywhenoverflowisnotset<br> 903 348269ImprovemmapMAP_HUGETLBsupport.<br> 904 348334(ppc)valgrinddoesnotsimulatedcbfl-thenmyprogramterminates<br> 905 348345Assertionfailsfornegativelineno<br> 906 348377UnsupportedARMinstruction:yield<br> 907 348565Fixdetectionofcommandlineoptionavailabilityforclang<br> 908 348574vexamd64->IRpcmpistriSSE4.2unsupported(pcmpistri$0x18)<br> 909 348728FixbrokencheckforVIDIOC_G_ENC_INDEX<br> 910 348748Fixredundantcondition<br> 911 348890Fixclangwarningaboutunsupported--paraminline-unit-growth=900<br> 912 348949Bogus"ERROR:--ignore-ranges:suspiciouslylargerange"<br> 913 349034AddLustreioctlsLL_IOC_GROUP_LOCKandLL_IOC_GROUP_UNLOCK<br> 914 349086FixUNKNOWNtaskmessage[id3406,tomach_task_self(),[..]<br> 915 349087FixUNKNOWNtaskmessage[id3410,tomach_task_self(),[..]<br> 916 349626ImplementedadditionalXenhypercalls<br> 917 349769Clang/osx:ld:warning:-read_only_relocscannotbeusedwithx86_64<br> 918 349790Cleanupofthehardwarecapabilitycheckingutilities.<br> 919 349828memcpyinterceptsmemmovecausingsrc/dstoverlaperror(ppc64ld.so)<br> 920 349874Fixtyposinsourcecode<br> 921 349879memcheck:addhandwrittenassemblyforhelperc_LOADV*<br> 922 349941di_notify_mmapmightcreatewrongstart/sizeDebugInfoMapping<br> 923 350062vexx86->IR:0x660xF0x3A0xB(ROUNDSD)onOSX<br> 924 350202Addlimitedparamto'monitorblock_list'<br> 925 350290s390x:Supportinstructionsfixbr(a)<br> 926 350359memcheck/tests/x86/fxsavehangsindefinetelyonOSX<br> 927 350809Fixnone/tests/async-sigsforSolaris<br> 928 350811Removereferenceto--db-attachwhichhasbeenremoved.<br> 929 350813Memcheck/x86:enablehandwrittenassemblyhelpersforx86/Solaristoo<br> 930 350854hard-to-understandcodeinVG_(load_ELF)()<br> 931 351140arm64syscallssetuid(146)andsetresgid(149)notimplemented<br> 932 351386Solaris:Cannotrunld.so.1underValgrind<br> 933 351474FixVG_(iseqsigset)asobvious<br> 934 351531Typoin/include/vki/vki-xen-physdev.hheaderguard<br> 935 351756Interceptplatform_memchr$VARIANT$HaswellonOSX<br> 936 351858ldsoexecsupportonSolaris<br> 937 351873Newergccdoesn'tallow__builtin_tabortdc[i]inppc32mode<br> 938 352130helgrindreportsfalseracesforprintfsusingmempcpyonFILE*state<br> 939 352284s390:Conditionaljumpdependsonuninitialisedvalue(s)invfprintf<br> 940 352320arm64crashonnone/tests/nestedfs<br> 941 352765VbittestfailsonPower6<br> 942 352768ThembarinstructionismissingfromthePowerPCsupport<br> 943 352769PowerPCprogrampriorityregister(PPR)isnotsupported<br> 944 n-i-bzProvideimplementationsofcertaincompilerbuiltinstosupport<br> 945 compilersthatmaynotprovidethose<br> 946 n-i-bzOldSTABScodeisstillbeingcompiled,butneverused.Removeit.<br> 947 n-i-bzFixcompilationondistroswithglibc<2.5<br> 948 n-i-bz(vex3098)AvoidgenerationofNeoninsnsonnon-Neonhosts<br> 949 n-i-bzEnablert_sigpendingsyscallonppc64linux.<br> 950 n-i-bzmremapdidnotworkproperlyonsharedmemory<br> 951 n-i-bzFixincorrectsizeofexpressioninsyswrap-xen.creportedbyCoverity<br> 952 n-i-bzInVALGRIND_PRINTFwriteoutthreadname,ifany,toxml<br> 953 <br> 954 (3.11.0.TEST1:8September2015,vexr3187,valgrindr15646)<br> 955 (3.11.0.TEST2:21September2015,vexr3193,valgrindr15667)<br> 956 (3.11.0:22September2015,vexr3195,valgrindr15674)<br> 957 <br> 958 <br> 959 <br> 960 Release3.10.1(25November2014)<br> 961 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 962 3.10.1isabugfixrelease.Itfixesvariousbugsreportedin3.10.0<br> 963 andbackportsfixesforallreportedmissingAArch64ARMv8instructions<br> 964 andsyscallsfromthetrunk.Ifyoupackageordeliver3.10.0forothers<br> 965 touse,youmightwanttoconsiderupgradingto3.10.1instead.<br> 966 <br> 967 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 968 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 969 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 970 bugzilla(https://bugs.kde.org/enter_bug.cgi?product=valgrind)rather<br> 971 thanmailingthedevelopers(ormailinglists)directly--bugsthat<br> 972 arenotenteredintobugzillatendtogetforgottenaboutorignored.<br> 973 <br> 974 Toseedetailsofagivenbug,visit<br> 975 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 976 whereXXXXXXisthebugnumberaslistedbelow.<br> 977 <br> 978 335440arm64:ld1(singlestructure)isnotimplemented<br> 979 335713arm64:unhandedinstruction:prfm(immediate)<br> 980 339020ppc64:memcheck/tests/ppc64/power_ISA2_05failinginnightlybuild<br> 981 339182ppc64:AvSplatoughttoloaddestinationvectorregisterwith[..]<br> 982 339336PPC64storequadinstruction(stq)isnotsupposedtochange[..]<br> 983 339433ppc64lxvw4xinstructionusesfour32-byteloads<br> 984 339645Usecorrecttagnamesinsys_getdents/64wrappers<br> 985 339706Fixfalsepositiveforioctl(TIOCSIG)onlinux<br> 986 339721assertion'check_sibling==sibling'failedinreaddwarf3.c...<br> 987 339853arm64timessyscallunknown<br> 988 339855arm64unhandledgetsid/setsidsyscalls<br> 989 339858arm64dmbsynotimplemented<br> 990 339926Unhandledinstruction0x1E674001(frintx)onaarm64<br> 991 339927Unhandledinstruction0x9E7100C6(fcvtmu)onaarch64<br> 992 339938disInstr(arm64):unhandledinstruction0x4F8010A4(fmla)<br> 993 ==339950<br> 994 339940arm64:unhandledsyscall:83(sys_fdatasync)+patch<br> 995 340033arm64:unhandledinsndmbishldandsomeotherisb-dmb-dsbvariants<br> 996 340028unhandledsyscallsforarm64(msync,pread64,setreuidandsetregid)<br> 997 340036arm64:Unhandledinstructionld4(multiplestructures,nooffset)<br> 998 340236arm64:unhandledsyscalls:mknodat,fchdir,chroot,fchownat<br> 999 340509arm64:unhandledinstructionfcvtas<br> 1000 340630arm64:fchmod(52)andfchown(55)syscallsnotrecognized<br> 1001 340632arm64:unhandledinstructionfcvtas<br> 1002 340722Resolve"UNKNOWNattrlistflags0:0x10000000"<br> 1003 340725AVX2:Incorrectdecodingofvpbroadcast{b,w}reg,regforms<br> 1004 340788warning:unhandledsyscall:318(getrandom)<br> 1005 340807disInstr(arm):unhandledinstruction:0xEE989B20<br> 1006 340856disInstr(arm64):unhandledinstruction0x1E634C45(fcsel)<br> 1007 340922arm64:unhandledgetgroups/setgroupssyscalls<br> 1008 350251FixtypoinVEXutilityprogram(test_main.c).<br> 1009 350407arm64:unhandledinstructionucvtf(vector,integer)<br> 1010 350809none/tests/async-sigsbreakswhenrunundercrononSolaris<br> 1011 350811updateREADME.solarisafterr15445<br> 1012 350813Usehandwrittenmemcheckassemblyhelpersonx86/Solaris[..]<br> 1013 350854strangecodeinVG_(load_ELF)()<br> 1014 351140arm64syscallssetuid(146)andsetresgid(149)notimplemented<br> 1015 n-i-bzDRDandHelgrind:HandleImbe_CancelReservation(clrexonARM)<br> 1016 n-i-bzAddmissing]]toterminateCDATA.<br> 1017 n-i-bzGlibcversionspriorto2.5donotdefinePTRACE_GETSIGINFO<br> 1018 n-i-bzEnablesys_fadvise64_64onarm32.<br> 1019 n-i-bzAddtestcasesforallremainingAArch64SIMD,FPandmemoryinsns.<br> 1020 n-i-bzAddtestcasesforallknownarm64load/storeinstructions.<br> 1021 n-i-bzPRE(sys_openat):whencheckingwhetherARG1==VKI_AT_FDCWD[..]<br> 1022 n-i-bzAdddetectionofoldppc32magicinstructionsfrombug278808.<br> 1023 n-i-bzexp-dhat:Implementmissingfunction"dh_malloc_usable_size".<br> 1024 n-i-bzarm64:Implement"fcvtpuw,s".<br> 1025 n-i-bzarm64:implementADDPandvariousothers<br> 1026 n-i-bzarm64:Implement{S,U}CVTF(scalar,fixedpt).<br> 1027 n-i-bzarm64:enableFCVT{A,N}SX,S.<br> 1028 <br> 1029 (3.10.1:25November2014,vexr3026,valgrindr14785)<br> 1030 <br> 1031 <br> 1032 <br> 1033 Release3.10.0(10September2014)<br> 1034 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 1035 <br> 1036 3.10.0isafeaturereleasewithmanyimprovementsandtheusual<br> 1037 collectionofbugfixes.<br> 1038 <br> 1039 ThisreleasesupportsX86/Linux,AMD64/Linux,ARM32/Linux,ARM64/Linux,<br> 1040 PPC32/Linux,PPC64BE/Linux,PPC64LE/Linux,S390X/Linux,MIPS32/Linux,<br> 1041 MIPS64/Linux,ARM/Android,MIPS32/Android,X86/Android,X86/MacOSX10.9<br> 1042 andAMD64/MacOSX10.9.SupportforMacOSX10.8and10.9is<br> 1043 significantlyimprovedrelativetothe3.9.0release.<br> 1044 <br> 1045 *==================PLATFORMCHANGES=================<br> 1046 <br> 1047 *Supportforthe64-bitARMArchitecture(AArch64ARMv8).Thisport<br> 1048 ismostlycomplete,andisusable,butsomeSIMDinstructionsareas<br> 1049 yetunsupported.<br> 1050 <br> 1051 *Supportforlittle-endianvariantofthe64-bitPOWERarchitecture.<br> 1052 <br> 1053 *SupportforAndroidonMIPS32.<br> 1054 <br> 1055 *Supportfor64bitFPUonMIPS32platforms.<br> 1056 <br> 1057 *Both32-and64-bitexecutablesaresupportedonMacOSX10.8and10.9.<br> 1058 <br> 1059 *ConfigurationforandrunningonAndroidtargetshaschanged.<br> 1060 SeeREADME.androidinthesourcetreefordetails.<br> 1061 <br> 1062 *==================DEPRECATEDFEATURES=================<br> 1063 <br> 1064 *--db-attachisnowdeprecatedandwillberemovedinthenext<br> 1065 valgrindfeaturerelease.Thebuilt-inGDBservercapabilitiesare<br> 1066 superiorandshouldbeusedinstead.Learnmorehere:<br> 1067 http://valgrind.org/docs/manual/manual-core-adv.html#manual-core-adv.gdbserver<br> 1068 <br> 1069 *====================TOOLCHANGES====================<br> 1070 <br> 1071 *Memcheck:<br> 1072 <br> 1073 -Clientcodecannowselectivelydisableandre-enablereportingof<br> 1074 invalidaddresserrorsinspecificrangesusingthenewclient<br> 1075 requestsVALGRIND_DISABLE_ADDR_ERROR_REPORTING_IN_RANGEand<br> 1076 VALGRIND_ENABLE_ADDR_ERROR_REPORTING_IN_RANGE.<br> 1077 <br> 1078 -Leakchecker:thereisanewleakcheckheuristiccalled<br> 1079 "length64".Thisisusedtodetectinteriorpointerspointing8<br> 1080 bytesinsideablock,ontheassumptionthatthefirst8bytes<br> 1081 holdsthevalue"blocksize-8".Thisisusedby<br> 1082 sqlite3MemMalloc,forexample.<br> 1083 <br> 1084 -Checkingofsystemcallparameters:ifasyscallparameter<br> 1085 (e.g.bindstructsockaddr,sendmsgstructmsghdr,...)has<br> 1086 severalfieldsnotinitialised,anerrorisnowreportedforeach<br> 1087 field.Previously,anerrorwasreportedonlyforthefirst<br> 1088 uninitialisedfield.<br> 1089 <br> 1090 -Mismatchedalloc/freechecking:anewflag<br> 1091 --show-mismatched-frees=no|yes[yes]makesitpossibletoturnoff<br> 1092 suchchecksifnecessary.<br> 1093 <br> 1094 *Helgrind:<br> 1095 <br> 1096 -Improvementstoerrormessages:<br> 1097 <br> 1098 oRaceconditionerrormessageinvolvingheapallocatedblocksalso<br> 1099 showthethreadnumberthatallocatedtheraced-onblock.<br> 1100 <br> 1101 oAlllocksreferencedbyanerrormessagearenowannounced.<br> 1102 Previously,someerrormessagesonlyshowedthelockaddresses.<br> 1103 <br> 1104 oThemessageindicatingwherealockwasfirstobservednowalso<br> 1105 describestheaddress/locationofthelock.<br> 1106 <br> 1107 -HelgrindnowunderstandstheAdataskterminationrulesand<br> 1108 createsahappens-beforerelationshipbetweenaterminatedtask<br> 1109 anditsmaster.Thisavoidssomefalsepositivesandavoidsabig<br> 1110 memoryleakwhenalotofAdatasksarecreatedandterminated.<br> 1111 Theinterceptionsareonlyactivatedwithforthcomingreleasesof<br> 1112 gnatpro>=7.3.0w-20140611andgcc>=5.0.<br> 1113 <br> 1114 -AnewGDBservermonitorcommand"infolocks"givingthelistof<br> 1115 locks,theirlocation,andtheirstatus.<br> 1116 <br> 1117 *Callgrind:<br> 1118 <br> 1119 -callgrind_controlnowsupportsthe--vgdb-prefixargument,<br> 1120 whichisneededifvalgrindwasstartedwiththissameargument.<br> 1121 <br> 1122 *====================OTHERCHANGES====================<br> 1123 <br> 1124 *Unwindingthroughinlinedfunctioncalls.Stackunwindingcannow<br> 1125 makeuseofDwarf3inlined-unwindinformationifitisavailable.<br> 1126 Thepracticaleffectisthatinlinedcallsbecomevisibleinstack<br> 1127 traces.Thesuppressionmatchingmachineryhasbeenadjusted<br> 1128 accordingly.Thisiscontrolledbythenewoption<br> 1129 --read-inline-info=yes|no.Currentlythisisenabledbydefault<br> 1130 onlyonLinuxandAndroidtargetsandonlyforthetoolsMemcheck,<br> 1131 HelgrindandDRD.<br> 1132 <br> 1133 *ValgrindcannowreadEXIDXunwindinformationon32-bitARM<br> 1134 targets.IfanobjectcontainsbothCFIandEXIDXunwind<br> 1135 information,ValgrindwillprefertheCFIovertheEXIDX.This<br> 1136 facilitatesunwindingthroughsystemlibrariesonarm-android<br> 1137 targets.<br> 1138 <br> 1139 *Addressdescriptionlogichasbeenimprovedandisnowcommon<br> 1140 betweenMemcheckandHelgrind,resultinginbetteraddress<br> 1141 descriptionsforsomekindsoferrormessages.<br> 1142 <br> 1143 *Errormessagesaboutdubiousarguments(eg,tomallocorcalloc)are<br> 1144 outputlikeothererrors.Thismeansthattheycanbesuppressed<br> 1145 andtheyhaveastacktrace.<br> 1146 <br> 1147 *TheC++demanglerhasbeenupdatedforbetterC++11support.<br> 1148 <br> 1149 *NewandmodifiedGDBservermonitorfeatures:<br> 1150 <br> 1151 -Threadlocalvariables/storage(__thread)cannowbedisplayed.<br> 1152 <br> 1153 -TheGDBservermonitorcommand"v.infolocation<address>"<br> 1154 displaysinformationaboutanaddress.Theinformationproduced<br> 1155 dependsonthetoolandontheoptionsgiventovalgrind.<br> 1156 Possibly,thefollowingaredescribed:globalvariables,local<br> 1157 (stack)variables,allocatedorfreedblocks,...<br> 1158 <br> 1159 -Theoption"--vgdb-stop-at=event1,event2,..."allowstheuserto<br> 1160 asktheGDBservertostopatthestartofprogramexecution,at<br> 1161 theendoftheprogramexecutionandonValgrindinternalerrors.<br> 1162 <br> 1163 -Anewmonitorcommand"v.infostats"showsvariousValgrindcore<br> 1164 andtoolstatistics.<br> 1165 <br> 1166 -Anewmonitorcommand"v.sethostvisibility"allowstheGDBserver<br> 1167 toprovideaccesstoValgrindinternalhoststatus/memory.<br> 1168 <br> 1169 *Anewoption"--aspace-minaddr=<address>"caninsomesituations<br> 1170 allowtheuseofmorememorybydecreasingtheaddressabovewhich<br> 1171 Valgrindmapsmemory.Itcanalsobeusedtosolveaddress<br> 1172 conflictswithsystemlibrariesbyincreasingthedefaultvalue.<br> 1173 Seeusermanualfordetails.<br> 1174 <br> 1175 *TheamountofmemoryusedbyValgrindtostoredebuginfo(unwind<br> 1176 info,linenumberinformationandsymboldata)hasbeen<br> 1177 significantlyreduced,eventhoughValgrindnowreadsmore<br> 1178 informationinordertosupportunwindingofinlinedfunctioncalls.<br> 1179 <br> 1180 *Dwarf3handlingwith--read-var-info=yeshasbeenimproved:<br> 1181 <br> 1182 -AdaandCstructcontainingVLAsnolongercausea"badDIE"error<br> 1183 <br> 1184 -Codecompiledwith<br> 1185 -ffunction-sections-fdata-sections-Wl,--gc-sections<br> 1186 nolongercausesassertionfailures.<br> 1187 <br> 1188 *Improvedcheckingforthe--sim-hints=and--kernel-variant=<br> 1189 options.Unknownstringsarenowdetectedandreportedtotheuser<br> 1190 asausageerror.<br> 1191 <br> 1192 *Thesemanticsofstackstart/endboundariesinthevalgrind.h<br> 1193 VALGRIND_STACK_REGISTERclientrequesthasbeenclarifiedand<br> 1194 documented.Theconventionisthatstartandendarerespectively<br> 1195 thelowestandhighestaddressablebytesofthestack.<br> 1196 <br> 1197 *====================FIXEDBUGS====================<br> 1198 <br> 1199 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 1200 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 1201 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 1202 bugzilla(https://bugs.kde.org/enter_bug.cgi?product=valgrind)rather<br> 1203 thanmailingthedevelopers(ormailinglists)directly--bugsthat<br> 1204 arenotenteredintobugzillatendtogetforgottenaboutorignored.<br> 1205 <br> 1206 Toseedetailsofagivenbug,visit<br> 1207 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 1208 whereXXXXXXisthebugnumberaslistedbelow.<br> 1209 <br> 1210 175819Supportforipv6socketreportingwith--track-fds<br> 1211 232510makedistcheckfails<br> 1212 249435Analyzingwineprogramswithcallgrindtriggersacrash<br> 1213 278972supportforinlinedfunctioncallsinstacktracesandsuppression<br> 1214 ==199144<br> 1215 291310FXSAVEinstructionmarksmemoryasundefinedonamd64<br> 1216 303536ioctlforSIOCETHTOOL(ethtool(8))isn'twrapped<br> 1217 308729vexx86->IR:unhandledinstructionbytes0xf0x5(syscall)<br> 1218 315199vgcorefileforthreadedappdoesnotshowwhichthreadcrashed<br> 1219 315952tun/tapioctlsarenotsupported<br> 1220 323178Unhandledinstruction:PLDWregister(ARM)<br> 1221 323179Unhandledinstruction:PLDWimmediate(ARM)<br> 1222 324050Helgrind:SEGVbecauseofunalignedstackwhenusingmovdqa<br> 1223 325110Addtest-casesforPowerISA2.06insns:divdo/divdo.anddivduo/divduo.<br> 1224 325124[MIPSEL]Compilationerror<br> 1225 325477Phase4supportforIBMPowerISA2.07<br> 1226 325538caviumocteonmips64,valgrindreported"dumpingcore"[...]<br> 1227 325628Phase5supportforIBMPowerISA2.07<br> 1228 325714EmptyvgcorebutRLIMIT_COREisbigenough(toobig)<br> 1229 325751MissingthetwoprivilegedPowerPCTransactionalMemoryInstructions<br> 1230 325816Phase6supportforIBMPowerISA2.07<br> 1231 325856MakeSGCheckfailgracefullyonunsupportedplatforms<br> 1232 326026Iopnamesforcountleadingzeros/signbitsincorrectlyimply[..]<br> 1233 326436DRD:Falsepositiveinlibstdc++std::list::push_back<br> 1234 326444CaviumMIPSOcteonSpecificLoadIndexedInstructions<br> 1235 326462Refactorvgdbtoisolateinvokerstuffintoseparatemodule<br> 1236 326469amd64->IR:0x660xF0x3A0x630xC10xE(pcmpistri0x0E)<br> 1237 326623DRD:falsepositiveconflictreportinafieldassignment<br> 1238 326724ValgrinddoesnotcompileonOSX1.9Mavericks<br> 1239 326816Interceptfor__strncpy_sse2_unalignedmissing?<br> 1240 326921coregrindfailstocompilem_trampoline.SwithMIPS/LinuxportofV<br> 1241 326983Cleardirectionflagaftertestsonamd64.<br> 1242 327212Donotprependthecurrentdirectorytoabsolutepathnames.<br> 1243 327223SupportforCaviumMIPSOcteonAtomicandCountInstructions<br> 1244 327238CallgrindAssertion'passed<=last_bb->cjmp_count'failed<br> 1245 327284s390x:Fixtranslationoftherisbginstruction<br> 1246 327639vexamd64->IRpcmpestriSSE4.2instructionisunsupported0x34<br> 1247 327837dwzcompressedalternate.debug_infoand.debug_strnotreadcorrectly<br> 1248 327916DW_TAG_typedefmayhavenoname<br> 1249 327943s390x:addaredirectionforthe'index'function<br> 1250 328100XABORTnotimplemented<br> 1251 328205ImplementadditionalXenhypercalls<br> 1252 328454addsupportBacktraceswithARMunwindtables(EXIDX)<br> 1253 328455s390x:SIGILLafteremittingwrongregisterpairforldxbr<br> 1254 328711valgrind.1manpage"memcheckoptions"sectionisbadlygenerated<br> 1255 328878vexamd64->IRpcmpestriSSE4.2instructionisunsupported0x14<br> 1256 329612IncorrecthandlingofAT_BASEforimageexecution<br> 1257 329694clangwarnsaboutusinguninitializedvariable<br> 1258 329956valgrindcrasheswhenlmw/stmwinstructionsareusedonppc64<br> 1259 330228mmapmustaligntoVKI_SHMLBAonmips32<br> 1260 330257LLVMdoesnotsupport`-mno-dynamic-no-pic`option<br> 1261 330319amd64->IR:unhandledinstructionbytes:0xF0x10xD5(xend)<br> 1262 330459--track-fds=yesdoesn'ttrackeventfds<br> 1263 330469Addclock_adjtimesyscallsupport<br> 1264 330594MissingsysallsonPowerPC/uClibc<br> 1265 330622AddtesttoregressionsuiteforPOWERinstruction:dcbzl<br> 1266 330939SupportforAMD'ssyscallinstructiononx86<br> 1267 ==308729<br> 1268 330941TypoinPRE(poll)syscallwrapper<br> 1269 331057unhandledinstruction:0xEEE01B20(vfma.f64)(haspatch)<br> 1270 331254Fixexpectedoutputformemcheck/tests/dw4<br> 1271 331255Fixraceconditionintestnone/tests/coolo_sigaction<br> 1272 331257Fixtypeofjumpbufferintestnone/tests/faultstatus<br> 1273 331305configureusesbashspecificsyntax<br> 1274 331337s390xWARNING:unhandledsyscall:326(dup3)<br> 1275 331380Syscallparamtimer_create(evp)pointstouninitialisedbyte(s)<br> 1276 331476Patchtohandleioctl0x5422onLinux(x86andamd64)<br> 1277 331829Unexpectedioctlopcodesignextension<br> 1278 331830ppc64:WARNING:unhandledsyscall:96/97<br> 1279 331839drd/tests/sem_openspecifiesinvalidsemaphorename<br> 1280 331847outcomeofdrd/tests/thread_nameisnondeterministic<br> 1281 332037ValgrindcannothandleThumb"addpc,reg"<br> 1282 332055drdassertsonplatformswithVG_STACK_REDZONE_SZB==0and<br> 1283 consistencychecksenabled<br> 1284 332263interceptsforpthread_rwlock_timedrdlockand<br> 1285 pthread_rwlock_timedwrlockareincorrect<br> 1286 332265drdcoulddowithpost-rwlock_initandpre-rwlock_destroy<br> 1287 clientrequests<br> 1288 332276ImplementadditionalXenhypercalls<br> 1289 332658ldrd.wr1,r2,[PC,#imm]doesnotadjustfor32bitalignment<br> 1290 332765Fixms_printtocreatetemporaryfilesinaproperdirectory<br> 1291 333072drd:Addsemaphoreannotations<br> 1292 333145TestsformissalignedPC+#immaccessforarm<br> 1293 333228AAarch64Missinginstructionencoding:mrs%[reg],ctr_el0<br> 1294 333230AAarch64missinginstructionencodings:dc,ic,dsb.<br> 1295 333248WARNING:unhandledsyscall:unix:443<br> 1296 333428ldr.wpc[rD,#imm]instructionleadstoassertion<br> 1297 333501cachegrind:assertion:Cachesetcountisnotapoweroftwo.<br> 1298 ==336577<br> 1299 ==292281<br> 1300 333666RecognizeMPXinstructionsandbndprefix.<br> 1301 333788ValgrinddoesnotsupporttheCDROM_DISC_STATUSioctl(haspatch)<br> 1302 333817ValgrindreportsthememoryareaswrittentobytheSG_IO<br> 1303 ioctlasuntouched<br> 1304 334049lzcntfailssilently(x86_32)<br> 1305 334384ValgrinddoesnothavesupportLittleEndiansupportfor<br> 1306 IBMPOWERPPC64<br> 1307 334585recvmmsgunhandled(+patch)(arm)<br> 1308 334705sendmsgandrecvmsgshouldguardagainstbogusmsghdrfields.<br> 1309 334727Buildfailswith-Werror=format-security<br> 1310 334788clarifydocabout--log-fileinitialprogramdirectory<br> 1311 334834PPC64LittleEndiansupport,patch2<br> 1312 334836PPC64LittleEndiansupport,patch3testcasefixes<br> 1313 334936patchtofixfalsepositivesonalsaSNDRV_CTL_*ioctls<br> 1314 335034Unhandledioctl:HCIGETDEVLIST<br> 1315 335155vgdb,fixerrorprintstatement.<br> 1316 335262arm64:movi8bitversionisnotsupported<br> 1317 335263arm64:dmbinstructionisnotimplemented<br> 1318 335441unhandledioctl0x8905(SIOCATMARK)whenrunningwineundervalgrind<br> 1319 335496arm64:sbc/abcinstructionsarenotimplemented<br> 1320 335554arm64:unhandledinstruction:abs<br> 1321 335564arm64:unhandledinstruction:fcvtpuXn,Sn<br> 1322 335735arm64:unhandledinstruction:cnt<br> 1323 335736arm64:unhandledinstruction:uaddlv<br> 1324 335848arm64:unhandledinstruction:{s,u}cvtf<br> 1325 335902arm64:unhandledinstruction:sli<br> 1326 335903arm64:unhandledinstruction:umull(vector)<br> 1327 336055arm64:unhandledinstruction:mov(element)<br> 1328 336062arm64:unhandledinstruction:shrn{,2}<br> 1329 336139mip64:[...]valgrindhangsandspinsonasinglecore[...]<br> 1330 336189arm64:unhandledInstruction:mvn<br> 1331 336435Valgrindhangsinpthread_spin_lockconsuming100%CPU<br> 1332 336619valgrind--read-var-info=yesdoesn'thandleDW_TAG_restrict_type<br> 1333 336772Makemoansaboutunknownioctlsmoreinformative<br> 1334 336957AddasectionabouttheSolaris/illumosportonthewebpage<br> 1335 337094ifuncwrapperisbrokenonppc64<br> 1336 337285fcntlcommandsF_OFD_SETLK,F_OFD_SETLKW,andF_OFD_GETLKnotsupported<br> 1337 337528leakcheckheuristicforblockprefixedbylengthas64bitnumber<br> 1338 337740ImplementadditionalXenhypercalls<br> 1339 337762guest_arm64_toIR.c:4166(dis_ARM64_load_store):Assertion`0'failed.<br> 1340 337766arm64-linux:unhandledsyscallsmlock(228)andmlockall(230)<br> 1341 337871deprecate--db-attach<br> 1342 338023AddsupportforallV4L2/mediaioctls<br> 1343 338024inlinedfunctionsarenotshownifDW_AT_rangesisused<br> 1344 338106Addsupportfor'kcmp'syscall<br> 1345 338115DRD:computedconflictsetdiffersfromactualafterfork<br> 1346 338160implementdisplayofthreadlocalstorageingdbsrv<br> 1347 338205configure.acandcheckfor-Wno-tautological-compare<br> 1348 338300coredumpsaremissingonebyteofeverysegment<br> 1349 338445amd64vbit-testfailswithunknownopcodesusedbyarm64VEX<br> 1350 338499--sim-hintsparsingbrokenduetowrongorderintokens<br> 1351 338615suppressglibc2.20optimizedstrcmpimplementationforARMv7<br> 1352 338681Unabletounwindthroughclonethreadcreatedoni386-linux<br> 1353 338698raceconditionbetweengdbsrvandvgdbonstartup<br> 1354 338703helgrindonarm-linuxgetsfalsepositivesindynamicloader<br> 1355 338791altdwzfilescanberelativeofdebug/mainfile<br> 1356 338878onMacOS:assertion'VG_IS_PAGE_ALIGNED(clstack_end+1)'failed<br> 1357 338932buildV-trunkwithgcc-trunk<br> 1358 338974glibc2.20changedsizeofstructsigactionsa_flagsfieldons390<br> 1359 345079FixbuildproblemsinVEX/useful/test_main.c<br> 1360 n-i-bzFixKVM_CREATE_IRQCHIPioctlhandling<br> 1361 n-i-bzs390x:Fixmemorycorruptionformultithreadedapplications<br> 1362 n-i-bzvexarm->IR:allowPCasbasereginsomeLDRDcases<br> 1363 n-i-bzinternalerrorinValgrindifvgdbtransmitsignalswhenptraceinvoked<br> 1364 n-i-bzFixmingw64supportinvalgrind.h(dev@,9May2014)<br> 1365 n-i-bzdrdmanual:DocumenthowtoC++11programsthatuseclass"std::thread"<br> 1366 n-i-bzAddcommand-lineoption--default-suppressions<br> 1367 n-i-bzAddsupportforBLKDISCARDZEROESioctl<br> 1368 n-i-bzppc32/64:fixaregressionwiththemtfsb0/mtfsb1instructions<br> 1369 n-i-bzAddsupportfor sys_pivot_rootandsys_unshare<br> 1370 <br> 1371 (3.10.0.BETA1:2September2014,vexr2940,valgrindr14428)<br> 1372 (3.10.0.BETA2:8September2014,vexr2950,valgrindr14503)<br> 1373 (3.10.0:10September2014,vexr2950,valgrindr14514)<br> 1374 <br> 1375 <br> 1376 <br> 1377 Release3.9.0(31October2013)<br> 1378 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 1379 3.9.0isafeaturereleasewithmanyimprovementsandtheusual<br> 1380 collectionofbugfixes.<br> 1381 <br> 1382 ThisreleasesupportsX86/Linux,AMD64/Linux,ARM/Linux,PPC32/Linux,<br> 1383 PPC64/Linux,S390X/Linux,MIPS32/Linux,MIPS64/Linux,ARM/Android,<br> 1384 X86/Android,X86/MacOSX10.7andAMD64/MacOSX10.7.Supportfor<br> 1385 MacOSX10.8issignificantlyimprovedrelativetothe3.8.0release.<br> 1386 <br> 1387 *==================PLATFORMCHANGES=================<br> 1388 <br> 1389 *SupportforMIPS64LEandBErunningLinux.Valgrindhasbeen<br> 1390 testedonMIPS64DebianSqueezeandDebianWheezydistributions.<br> 1391 <br> 1392 *SupportforMIPSDSPASEonMIPS32platforms.<br> 1393 <br> 1394 *Supportfors390xDecimalFloatingPointinstructionsonhoststhat<br> 1395 havetheDFPfacilityinstalled.<br> 1396 <br> 1397 *SupportforPOWER8(PowerISA2.07)instructions<br> 1398 <br> 1399 *SupportforIntelAVX2instructions.Thisisavailableonlyon64<br> 1400 bitcode.<br> 1401 <br> 1402 *InitialsupportforIntelTransactionalSynchronizationExtensions,<br> 1403 bothRTMandHLE.<br> 1404 <br> 1405 *InitialsupportforHardwareTransactionalMemoryonPOWER.<br> 1406 <br> 1407 *ImprovedsupportforMacOSX10.8(64-bitonly).Memcheckcannow<br> 1408 runlargeGUIappstolerablywell.<br> 1409 <br> 1410 *====================TOOLCHANGES====================<br> 1411 <br> 1412 *Memcheck:<br> 1413 <br> 1414 -Improvementsinhandlingofvectorisedcode,leadingto<br> 1415 significantlyfewerfalseerrorreports.Youneedtousetheflag<br> 1416 --partial-loads-ok=yestogetthebenefitsofthesechanges.<br> 1417 <br> 1418 -Bettercontrolovertheleakchecker.Itisnowpossibleto<br> 1419 specifywhichleakkinds(definite/indirect/possible/reachable)<br> 1420 shouldbedisplayed,whichshouldberegardedaserrors,andwhich<br> 1421 shouldbesuppressedbyagivenleaksuppression.Thisisdone<br> 1422 usingtheoptions--show-leak-kinds=kind1,kind2,..,<br> 1423 --errors-for-leak-kinds=kind1,kind2,..andanoptional<br> 1424 "match-leak-kinds:"lineinsuppressionentries,respectively.<br> 1425 <br> 1426 Notethatgeneratedleaksuppressionscontainthisnewlineand<br> 1427 arethereforemorespecificthaninpreviousreleases.Togetthe<br> 1428 samebehaviouraspreviousreleases,removethe"match-leak-kinds:"<br> 1429 linefromgeneratedsuppressionsbeforeusingthem.<br> 1430 <br> 1431 -Reduced"possibleleak"reportsfromtheleakcheckerbytheuse<br> 1432 ofbetterheuristics.Theavailableheuristicsprovidedetection<br> 1433 ofvalidinteriorpointerstostd::stdstring,tonew[]allocated<br> 1434 arrayswithelementshavingdestructorsandtointeriorpointers<br> 1435 pointingtoaninnerpartofaC++objectusingmultiple<br> 1436 inheritance.Theycanbeselectedindividuallyusingthe<br> 1437 option--leak-check-heuristics=heur1,heur2,...<br> 1438 <br> 1439 -Bettercontrolofstacktraceacquisitionforheap-allocated<br> 1440 blocks.Usingthe--keep-stacktracesoption,itispossibleto<br> 1441 controlindependentlywhetherastacktraceisacquiredforeach<br> 1442 allocationanddeallocation.Thiscanbeusedtocreatebetter<br> 1443 "useafterfree"errorsortodecreaseValgrind'sresource<br> 1444 consumptionbyrecordinglessinformation.<br> 1445 <br> 1446 -Betterreportingofleaksuppressionusage.Thelistofused<br> 1447 suppressions(shownwhenthe-voptionisgiven)nowshows,for<br> 1448 eachleaksuppressions,howmanyblocksandbytesitsuppressed<br> 1449 duringthelastleaksearch.<br> 1450 <br> 1451 *Helgrind:<br> 1452 <br> 1453 -Falseerrorsresultingfromtheuseofstaticallyinitialised<br> 1454 mutexesandconditionvariables(PTHREAD_MUTEX_INITIALISER,etc)<br> 1455 havebeenremoved.<br> 1456 <br> 1457 -Falseerrorsresultingfromtheuseofpthread_cond_waitsthat<br> 1458 timeout,havebeenremoved.<br> 1459 <br> 1460 *====================OTHERCHANGES====================<br> 1461 <br> 1462 *SomeattempttotuneValgrind'sspacerequirementstotheexpected<br> 1463 capabilitiesofthetarget:<br> 1464 <br> 1465 -Thedefaultsizeofthetranslationcachehasbeenreducedfrom8<br> 1466 sectorsto6onAndroidplatforms,sinceeachsectoroccupies<br> 1467 about40MBwhenusingMemcheck.<br> 1468 <br> 1469 -Thedefaultsizeofthetranslationcachehasbeenincreasedto16<br> 1470 sectorsonallotherplatforms,reflectingthefactthatlarge<br> 1471 applicationsrequireinstrumentationandstorageofhugeamounts<br> 1472 ofcode.Forsimilarreasons,thenumberofmemorymapped<br> 1473 segmentsthatcanbetrackedhasbeenincreasedbyafactorof6.<br> 1474 <br> 1475 -Inallcases,themaximumnumberofsectorsinthetranslation<br> 1476 cachecanbecontrolledbythenewflag--num-transtab-sectors.<br> 1477 <br> 1478 *Changesinhowdebuginfo(linenumbers,etc)isread:<br> 1479 <br> 1480 -Valgrindnolongertemporarilymmapstheentireobjecttoread<br> 1481 fromit.Instead,readingisdonethroughasmallfixedsized<br> 1482 buffer.ThisavoidsvirtualmemoryusagespikeswhenValgrind<br> 1483 readsdebuginfofromlargesharedobjects.<br> 1484 <br> 1485 -Anewexperimentalremotedebuginfoserver.Valgrindcanread<br> 1486 debuginfofromadifferentmachine(typically,abuildhost)<br> 1487 wheredebuginfoobjectsarestored.Thiscansavealotoftime<br> 1488 andhasslewhenrunningValgrindonresource-constrainedtargets<br> 1489 (phones,tablets)whenthefulldebuginfoobjectsarestored<br> 1490 somewhereelse.Thisisenabledbythe--debuginfo-server=<br> 1491 option.<br> 1492 <br> 1493 -Consistencycheckingbetweenmainanddebugobjectscanbe<br> 1494 disabledusingthe--allow-mismatched-debuginfooption.<br> 1495 <br> 1496 *Stackunwindingbystackscanning,onARM.Unwindingbystack<br> 1497 scanningcanrecoverstacktracesinsomecaseswhenthenormal<br> 1498 unwindmechanismsfail.Stackscanningisbestdescribedas"a<br> 1499 nasty,dangerousandmisleadinghack"andsoisdisabledbydefault.<br> 1500 Use--unw-stack-scan-threshand--unw-stack-scan-framestoenable<br> 1501 andcontrolit.<br> 1502 <br> 1503 *Detectionandmergingofrecursivestackframecycles.Whenyour<br> 1504 programhasrecursivealgorithms,thislimitsthememoryusedby<br> 1505 Valgrindforrecordedstacktracesandavoidsrecording<br> 1506 uninterestingrepeatedcalls.Thisiscontrolledbythecommand<br> 1507 lineoption--merge-recursive-frameandbythemonitorcommand<br> 1508 "v.setmerge-recursive-frames".<br> 1509 <br> 1510 *Filenameandlinenumbersforusedsuppressions.Thelistofused<br> 1511 suppressions(shownwhenthe-voptionisgiven)nowshows,foreach<br> 1512 usedsuppression,thefilenameandlinenumberwherethesuppression<br> 1513 isdefined.<br> 1514 <br> 1515 *NewandmodifiedGDBservermonitorfeatures:<br> 1516 <br> 1517 -valgrind.hhasanewclientrequest,VALGRIND_MONITOR_COMMAND,<br> 1518 thatcanbeusedtoexecutegdbservermonitorcommandsfromthe<br> 1519 clientprogram.<br> 1520 <br> 1521 -Anewmonitorcommand,"v.infoopen_fds",thatgivesthelistof<br> 1522 openfiledescriptorsandadditionaldetails.<br> 1523 <br> 1524 -Anoptionalmessageinthe"v.infon_errs_found"monitorcommand,<br> 1525 forexample"v.infon_errs_foundtest1234finished",allowinga<br> 1526 commentstringtobeaddedtotheprocessoutput,perhapsforthe<br> 1527 purposeofseparatingerrorsofdifferenttestsortestphases.<br> 1528 <br> 1529 -Anewmonitorcommand"v.infoexecontext"thatshowsinformation<br> 1530 aboutthestacktracesrecordedbyValgrind.<br> 1531 <br> 1532 -Anewmonitorcommand"v.doexpensive_sanity_check_general"torun<br> 1533 someinternalconsistencychecks.<br> 1534 <br> 1535 *Newflag--sigill-diagnosticstocontrolwhetheradiagnostic<br> 1536 messageisprintedwhentheJITencountersaninstructionitcan't<br> 1537 translate.Theactualbehavior--deliveryofSIGILLtothe<br> 1538 application--isunchanged.<br> 1539 <br> 1540 *ThemaximumamountofmemorythatValgrindcanuseon64bittargets<br> 1541 hasbeenincreasedfrom32GBto64GB.Thisshouldmakeitpossible<br> 1542 torunapplicationsonMemcheckthatnativelyrequireuptoabout35GB.<br> 1543 <br> 1544 *====================FIXEDBUGS====================<br> 1545 <br> 1546 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 1547 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 1548 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 1549 bugzilla(https://bugs.kde.org/enter_bug.cgi?product=valgrind)rather<br> 1550 thanmailingthedevelopers(ormailinglists)directly--bugsthat<br> 1551 arenotenteredintobugzillatendtogetforgottenaboutorignored.<br> 1552 <br> 1553 Toseedetailsofagivenbug,visit<br> 1554 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 1555 whereXXXXXXisthebugnumberaslistedbelow.<br> 1556 <br> 1557 123837systemcall:4thargumentisoptional,dependingoncmd<br> 1558 135425memcheckshouldtellyouwhereFreedblockswereMallocd<br> 1559 164485VG_N_SEGNAMESandVG_N_SEGMENTSare(still)toosmall<br> 1560 207815Addssomeofthedrmioctlstosyswrap-linux.c<br> 1561 251569vexamd64->IR:0xF0x10xF90xBF0x900xD00x30x0(RDTSCP)<br> 1562 252955Impossibletocompilewithccache<br> 1563 253519Memcheckreportsauxvpointeraccessesasinvalidreads.<br> 1564 263034CrashwhenloadingsomePPC64binaries<br> 1565 269599Increasedeepestbacktrace<br> 1566 274695s390x:Support"compareto/fromlogical"instructions(z196)<br> 1567 275800s390x:Autodetectcacheinfo(part2)<br> 1568 280271Valgrindreportspossiblememoryleaksonstill-reachablestd::string<br> 1569 284540Memcheckshouldn'tcountsuppressionsmatchingstill-reachable[..]<br> 1570 289578BacktraceswithARMunwindtables(stackscanflags)<br> 1571 296311Wrongstacktracesdueto-fomit-frame-pointer(x86)<br> 1572 304832ppc32:buildfailure<br> 1573 305431Usefind_buildidshdrfallbackforseparate.debugfiles<br> 1574 305728AddsupportforAVX2instructions<br> 1575 305948ppc64:codegenerationforShlD64/ShrD64asserts<br> 1576 306035s390x:FixIRgenerationforLAAGandfriends<br> 1577 306054s390x:Conditioncodecomputationforconvert-to-int/logical<br> 1578 306098s390x:alternateopcodeformforconvertto/fromfixed<br> 1579 306587FixcachelinedetectionfromauxiliaryvectorforPPC.<br> 1580 306783Mipsunhandledsyscall:4025/4079/4182<br> 1581 307038DWARF2CFIreader:unhandledDW_OP_opcode0x8(DW_OP_const1uetal)<br> 1582 307082HGfalsepositive:pthread_cond_destroy:destructionofunknownCV<br> 1583 307101sys_capgetsecondargumentcanbeNULL<br> 1584 307103sys_openat:Ifpathnameisabsolute,thendirfdisignored.<br> 1585 307106amd64->IR:f00fc002(lockxaddbyte)<br> 1586 307113s390x:DFPsupport<br> 1587 307141valgrinddoes'tworkinmips-linuxsystem<br> 1588 307155filter_gdbshouldfilteroutsyscall-template.ST_PSEUDO<br> 1589 307285x86_amd64featuretestforavxintestsuiteiswrong<br> 1590 307290memcheckoverlaptestcaseneedsmemcpyversionfilter<br> 1591 307463Pleaseadd"&limit=0"tothe"allopenbugs"link<br> 1592 307465--show-possibly-lost=noshouldreducetheerrorcount/exitcode<br> 1593 307557LeaksonMacOSX10.7.5librariesatImageLoader::recursiveInit[..]<br> 1594 307729pkgconfigsupportbrokenvalgrind.pc<br> 1595 307828MemcheckfalseerrorsSSEoptimizedwcscpy,wcscmp,wcsrchr,wcschr<br> 1596 307955Buildingvalgrind3.7.0-r4failsinGentooAMD64whenusingclang<br> 1597 308089Unhandledsyscallonppc64:prctl<br> 1598 308135PPC32MPC8xxhas16bytescachesize<br> 1599 308321testsuitememcheckfilterinterfereswithgdb_filter<br> 1600 308333==307106<br> 1601 308341vgdbshouldreportprocessexit(orfatalsignal)<br> 1602 308427s390memcheckreportstsearchcjump/cmovedependsonuninit<br> 1603 308495RemovebuilddependencyoninstalledXenheaders<br> 1604 308573Internalerroron64-bitinstructionexecutedin32-bitmode<br> 1605 308626==308627<br> 1606 308627pmovmskbvaliditybitpropagationisimprecise<br> 1607 308644vgdbcommandforhavingtheinfoforthetrack-fdsoption<br> 1608 308711givemoreinfoaboutaspacemgrandarenasinout_of_memory<br> 1609 308717ARM:implementfixed-pointVCVT.F64.[SU]32<br> 1610 308718ARMimplementSMLALBBfamilyofinstructions<br> 1611 308886MissingsupportforPTRACE_SET/GETREGSET<br> 1612 308930syscallname_to_handle_at(303onamd64)nothandled<br> 1613 309229V-bittesterdoesnotreportnumberoftestsgenerated<br> 1614 309323printunrecognizedinstuctiononMIPS<br> 1615 309425Providea--sigill-diagnosticsflagtosuppressillegal[..]<br> 1616 309427SSEoptimizedstpncpytriggeruninitialisedvalue[..]errors<br> 1617 309430Selfhostingppc64encountersavasserterroronoperandtype<br> 1618 309600valgrindisabitconfusedabout0-sizedsections<br> 1619 309823Generateerrorsforstillreachableblocks<br> 1620 309921PCMPISTRIvaliditybitpropagationisimprecise<br> 1621 309922none/tests/ppc64/test_dfp5sometimesfails<br> 1622 310169TheIop_CmpORDclassofIopsisnotsupportedbythevbitchecker.<br> 1623 310424--read-var-infodoesnotproperlydescribestaticvariables<br> 1624 310792searchadditionalpathfordebugsymbols<br> 1625 310931s390x:Message-securityassist(MSA)instructionextension[..]<br> 1626 311100PPCDFPimplementationoftheintegeroperandsisinconsistent[..]<br> 1627 311318ARM:"128-bitconstantisnotimplemented"errormessage<br> 1628 311407ssse3bcopy(actuallyconvertedmemcpy)causesinvalidread[..]<br> 1629 311690Vcrashesbecauseitredirectsbranchesinsideofaredirectedfunction<br> 1630 311880x86_64:makeregtesthangsatshell_valid1<br> 1631 311922WARNING:unhandledsyscall:170<br> 1632 311933==251569<br> 1633 312171ppc:insnselectionforDFP<br> 1634 312571RoundingmodecallwrongfortheDFPIops[..]<br> 1635 312620ChangetoIop_D32toD64[..]fors390DFPsupportbrokeppc[..]<br> 1636 312913Danglingpointerserrorshouldalsoreporttheallocstacktrace<br> 1637 312980BuildingonMountainLiongeneratessomecompilerwarnings<br> 1638 313267AddingMIPS64/LinuxporttoValgrind<br> 1639 313348==251569<br> 1640 313354==251569<br> 1641 313811Bufferoverflowinassert_fail<br> 1642 314099coveritypointedouterrorinVEXguest_ppc_toIR.cinsn_suffix<br> 1643 314269ppc:deadcodeininsnselection<br> 1644 314718ARM:implementintegerdivideinstruction(sdivandudiv)<br> 1645 315345cl-format.xmlandcallgrind/dump.cdon'tagreeonusingcfl=orcfi=<br> 1646 315441sendmsgsyscallshouldignoreunsetmsghdrmsg_flags<br> 1647 315534msgrcvinsideathreadcausesvalgrindtohang(block)<br> 1648 315545Assertion'(UChar*)sec->tt[tteNo].tcptr<=(UChar*)hcode'failed<br> 1649 315689disInstr(thumb):unhandledinstruction:0xF8520x0E10(LDRT)<br> 1650 315738disInstr(arm):unhandledinstruction:0xEEBE0BEE(vcvt.s32.f64)<br> 1651 315959valgrindmanpagehasbogusSGCHECK(andnoBBV)OPTIONSsection<br> 1652 316144valgrind.1manpagecontainsunknown???strings[..]<br> 1653 316145callgrindcommandlineoptionsinmanpagereference(unknown)[..]<br> 1654 316145callgrindcommandlineoptionsinmanpagereference[..]<br> 1655 316181drd:Fixeda4xslowdownforcertainapplications<br> 1656 316503ValgrinddoesnotsupportSSE4"movntdqa"instruction<br> 1657 316535Useof|signedint|insteadof|size_t|invalgrindmessages<br> 1658 316696fluidanimateprogramofparsec2.1stuck<br> 1659 316761syscallopen_by_handle_at(304onamd64,342onx86)nothandled<br> 1660 317091Use-Wl,-Ttext-segmentwhenstaticlinkingifpossible[..]<br> 1661 317186"Impossiblehappens"whenoccursVCVTinstructiononARM<br> 1662 317318SupportforThreadingBuildingBlocks"scalable_malloc"<br> 1663 317444amd64->IR:0xC40x410x2C0xC20xD20x8(vcmpeq_uqps)<br> 1664 317461FixBMIassemblerconfigurecheckandavx2/bmi/fmavgtestprereqs<br> 1665 317463bmitestcaseIRSANITYCHECKFAILURE<br> 1666 317506memcheck/tests/vbit-testfailswithunknownopcodeafter[..]<br> 1667 318050libmpiwrapfailstocompilewithout-of-sourcebuild<br> 1668 318203setsockopthandlingneedstohandleSOL_SOCKET/SO_ATTACH_FILTER<br> 1669 318643annotate_trace_memorytestsinfinitelooponarmandppc[..]<br> 1670 318773amd64->IR:0xF30x480x0F0xBC0xC20xC30x660x0F<br> 1671 318929Crashwith:disInstr(thumb):0xF3210x0001(ssat16)<br> 1672 318932AddmissingPPC64andPPC32systemcallsupport<br> 1673 319235--db-attach=yesisbrokenwithYama(ptracescoping)enabled<br> 1674 319395CrashwithunhandledinstructiononSTRT(Thumb)instructions<br> 1675 319494VEXMakefile-gccstandalonebuildupdateafterr2702<br> 1676 319505[MIPSEL]Crash:unhandledUNRAYoperator.<br> 1677 319858disInstr(thumb):unhandledinstructiononinstructionSTRBT<br> 1678 319932disInstr(thumb):unhandledinstructiononinstructionSTRHT<br> 1679 320057Problemswhenwetrytommapmorethan12memorypagesonMIPS32<br> 1680 320063MemoryfromPTRACE_GET_THREAD_AREAisreporteduninitialised<br> 1681 320083disInstr(thumb):unhandledinstructiononinstructionLDRBT<br> 1682 320116bindonAF_BLUETOOTHproduceswarningsbecauseofsockaddr_rcpadding<br> 1683 320131WARNING:unhandledsyscall:369onARM(prlimit64)<br> 1684 320211Stackbufferoverflowin./coregrind/m_main.cwithhugeTMPDIR<br> 1685 320661vgModuleLocal_read_elf_debug_info():"Assertion'!di->soname'<br> 1686 320895addfanotifysupport(patchincluded)<br> 1687 320998vexamd64->IRpcmpestriandpcmpestrmSSE4.2instruction<br> 1688 321065ValgrindupdatesforXen4.3<br> 1689 321148Unhandledinstruction:PLI(Thumb1,2,3)<br> 1690 321363Unhandledinstruction:SSAX(ARM+Thumb)<br> 1691 321364Unhandledinstruction:SXTAB16(ARM+Thumb)<br> 1692 321466Unhandledinstruction:SHASX(ARM+Thumb)<br> 1693 321467Unhandledinstruction:SHSAX(ARM+Thumb)<br> 1694 321468Unhandledinstruction:SHSUB16(ARM+Thumb)<br> 1695 321619Unhandledinstruction:SHSUB8(ARM+Thumb)<br> 1696 321620Unhandledinstruction:UASX(ARM+Thumb)<br> 1697 321621Unhandledinstruction:USAX(ARM+Thumb)<br> 1698 321692Unhandledinstruction:UQADD16(ARM+Thumb)<br> 1699 321693Unhandledinstruction:LDRSBT(Thumb)<br> 1700 321694Unhandledinstruction:UQASX(ARM+Thumb)<br> 1701 321696Unhandledinstruction:UQSAX(Thumb+ARM)<br> 1702 321697Unhandledinstruction:UHASX(ARM+Thumb)<br> 1703 321703Unhandledinstruction:UHSAX(ARM+Thumb)<br> 1704 321704Unhandledinstruction:REVSH(ARM+Thumb)<br> 1705 321730Addcg_diffandcg_mergemanpages<br> 1706 321738Addvgdbandvalgrind-listenermanpages<br> 1707 321814==315545<br> 1708 321891Unhandledinstruction:LDRHT(Thumb)<br> 1709 321960pthread_create()thenalloca()causinginvalidstackwriteerrors<br> 1710 321969ppc32andppc64don'tsupport[lf]setxattr<br> 1711 322254Showthreadnametogetherwithtidifsetbyapplication<br> 1712 322294AddinitialsupportforIBMPowerISA2.07<br> 1713 322368Assertionfailureinwqthread_hijackunderOSX10.8<br> 1714 322563vexmips->IR:0x700x830xF00x3A<br> 1715 322807VALGRIND_PRINTF_BACKTRACEwritescallstacktoxmlandtexttostderr<br> 1716 3228510bXXXbinaryliteralsyntaxisnotstandard<br> 1717 323035Unhandledinstruction:LDRSHT(Thumb)<br> 1718 323036Unhandledinstruction:SMMLS(ARMandThumb)<br> 1719 323116Thememcheck/tests/ppc64/power_ISA2_05.cfailstobuild[..]<br> 1720 323175Unhandledinstruction:SMLALD(ARM+Thumb)<br> 1721 323177Unhandledinstruction:SMLSLD(ARM+Thumb)<br> 1722 323432Callingpthread_cond_destroy()orpthread_mutex_destroy()[..]<br> 1723 323437Phase2supportforIBMPowerISA2.07<br> 1724 323713Supportmmxext(integersse)subsetoni386(athlon)<br> 1725 323803TransactionalmemoryinstructionsarenotsupportedforPower<br> 1726 323893SSE3notavailableonamdcpusinvalgrind<br> 1727 323905ProbablefalsepositivefromValgrind/drdonclose()<br> 1728 323912valgrind.hheaderisn'tcompatibleformingw64<br> 1729 324047Valgrinddoesn'tsupport[LDR,ST]{S}[B,H]TARMinstructions<br> 1730 324149helgrind:Whenpthread_cond_timedwaitreturnsETIMEDOUT[..]<br> 1731 324181mmapdoesnothandleMAP_32BIT<br> 1732 324227memcheckfalsepositiveleakwhenathreadcallsexit+block[..]<br> 1733 324421SupportforfanotifyAPIonARMarchitecture<br> 1734 324514gdbservermonitorcmdoutputbehaviourconsistency[..]<br> 1735 324518ppc64:Emulationofdcbtinstructionsdoesnothandle[..]<br> 1736 324546none/tests/ppc32test_isa_2_07_part2requests-m64<br> 1737 324582Whenaccessismadetofreedmemory,reportbothallocation[..]<br> 1738 324594FixoverflowcomputationforPowerISA2.06insns:mulldo/mulldo.<br> 1739 324765ppc64:illegalinstructionwhenexecutingnone/tests/ppc64/jm-misc<br> 1740 324816IncorrectVEXimplementationforxscvspdp/xvcvspdpforSNaNinputs<br> 1741 324834UnhandledinstructionsinMicrosoftCrun-timeforx86_64<br> 1742 324894Phase3supportforIBMPowerISA2.07<br> 1743 326091drd:Avoidfalseracereportsfromoptimizedstrlen()impls<br> 1744 326113valgrindlibvexhwcapserroronAMD64<br> 1745 n-i-bzSomewrongcommandlineoptionscouldbeignored<br> 1746 n-i-bzpatchtoallowfair-schedonandroid<br> 1747 n-i-bzreporterrorforvgdbsnapshotrequestedbeforeexecution<br> 1748 n-i-bzsameas303624(fixedin3.8.0),butforx86android<br> 1749 <br> 1750 (3.9.0:31October2013,vexr2796,valgrindr13708)<br> 1751 <br> 1752 <br> 1753 <br> 1754 Release3.8.1(19September2012)<br> 1755 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 1756 3.8.1isabugfixrelease.Itfixessomeassertionfailuresin3.8.0<br> 1757 thatoccurmoderatelyfrequentlyinrealusecases,addssupportfor<br> 1758 somemissinginstructionsonARM,andfixesadeadlockconditionon<br> 1759 MacOSX.Ifyoupackageordeliver3.8.0forotherstouse,youmight<br> 1760 wanttoconsiderupgradingto3.8.1instead.<br> 1761 <br> 1762 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 1763 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 1764 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 1765 bugzilla(https://bugs.kde.org/enter_bug.cgi?product=valgrind)rather<br> 1766 thanmailingthedevelopers(ormailinglists)directly--bugsthat<br> 1767 arenotenteredintobugzillatendtogetforgottenaboutorignored.<br> 1768 <br> 1769 Toseedetailsofagivenbug,visit<br> 1770 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 1771 whereXXXXXXisthebugnumberaslistedbelow.<br> 1772 <br> 1773 284004==301281<br> 1774 289584Unhandledinstruction:0xF0x290xE5(MOVAPS)<br> 1775 295808amd64->IR:0xF30xF0xBC0xC0(TZCNT)<br> 1776 298281wcslencausesfalse(?)uninitialisedvaluewarnings<br> 1777 301281valgrindhangsonOSXwhentheprocesscallssystem()<br> 1778 304035disInstr(arm):unhandledinstruction0xE1023053<br> 1779 304867implementMOVBEinstructioninx86mode<br> 1780 304980Assertion'lo<=hi'failedinvgModuleLocal_find_rx_mapping<br> 1781 305042amd64:implement0F7Fencodingofmovqbetweentworegisters<br> 1782 305199ARM:implementQDADDandQDSUB<br> 1783 305321amd64->IR:0xF0xD0xC(prefetchw)<br> 1784 305513killedbyfatalsignal:SIGSEGV<br> 1785 305690DRDreportinginvalidsemaphorewhensem_trywaitfails<br> 1786 305926InvalidalignmentchecksforsomeAVXinstructions<br> 1787 306297disInstr(thumb):unhandledinstruction0xE8830x000C<br> 1788 3063103.8.0releasetarballmissingsomefiles<br> 1789 306612RHEL6glibc-2.Xdefaultsuppressionsneed/lib*/libc-*patterns<br> 1790 306664vexamd64->IR:0x660xF0x3A0x620xD10x460x660xF<br> 1791 n-i-bzshmatofasegment>4Gbdoesnotwork<br> 1792 n-i-bzsimulate_control_cscriptwrongUSR1signalnumberonmips<br> 1793 n-i-bzvgdbptracecallswrongonmips[...]<br> 1794 n-i-bzFixesformoreMPIfalsepositives<br> 1795 n-i-bzexp-sgcheck'smemcpycausesprogramstosegfault<br> 1796 n-i-bzOSXbuildw/clang:assertsatstartup<br> 1797 n-i-bzIncorrectundef'dnesspropforIop_DPBtoBCDandIop_BCDtoDPB<br> 1798 n-i-bzfixacoupleofuniontag-vs-fieldmixups<br> 1799 n-i-bzOSX:use__NR_poll_nocancelratherthan__NR_poll<br> 1800 <br> 1801 Thefollowingbugswerefixedin3.8.0butnotlistedinthisNEWS<br> 1802 fileatthetime:<br> 1803 <br> 1804 254088ValgrindshouldknowaboutUD2instruction<br> 1805 301280==254088<br> 1806 301902==254088<br> 1807 304754NEWSblowsTeX'slittlemind<br> 1808 <br> 1809 (3.8.1:19September2012,vexr2537,valgrindr12996)<br> 1810 <br> 1811 <br> 1812 <br> 1813 Release3.8.0(10August2012)<br> 1814 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 1815 3.8.0isafeaturereleasewithmanyimprovementsandtheusual<br> 1816 collectionofbugfixes.<br> 1817 <br> 1818 ThisreleasesupportsX86/Linux,AMD64/Linux,ARM/Linux,PPC32/Linux,<br> 1819 PPC64/Linux,S390X/Linux,MIPS/Linux,ARM/Android,X86/Android,<br> 1820 X86/MacOSX10.6/10.7andAMD64/MacOSX10.6/10.7.Supportforrecent<br> 1821 distrosandtoolchaincomponents(glibc2.16,gcc4.7)hasbeenadded.<br> 1822 ThereisinitialsupportforMacOSX10.8,butitisnotusablefor<br> 1823 seriousworkatpresent.<br> 1824 <br> 1825 *==================PLATFORMCHANGES=================<br> 1826 <br> 1827 *SupportforMIPS32platformsrunningLinux.Valgrindhasbeen<br> 1828 testedonMIPS32andMIPS32r2platformsrunningdifferentDebian<br> 1829 SqueezeandMeeGodistributions.Bothlittle-endianandbig-endian<br> 1830 coresaresupported.ThetoolsMemcheck,MassifandLackeyhave<br> 1831 beentestedandareknowntowork.SeeREADME.mipsformoredetails.<br> 1832 <br> 1833 *PreliminarysupportforAndroidrunningonx86.<br> 1834 <br> 1835 *Preliminary(as-yetlargelyunusable)supportforMacOSX10.8.<br> 1836 <br> 1837 *SupportforIntelAVXinstructionsandforAESinstructions.This<br> 1838 supportisavailableonlyfor64bitcode.<br> 1839 <br> 1840 *SupportforPOWERDecimalFloatingPointinstructions.<br> 1841 <br> 1842 *====================TOOLCHANGES====================<br> 1843 <br> 1844 *Non-libcmallocimplementationsarenowsupported.Thisisuseful<br> 1845 fortoolsthatreplacemalloc(Memcheck,Massif,DRD,Helgrind).<br> 1846 Usingthenewoption--soname-synonyms,suchtoolscanbeinformed<br> 1847 thatthemallocimplementationiseitherlinkedstaticallyintothe<br> 1848 executable,orispresentinsomeothersharedlibrarydifferent<br> 1849 fromlibc.so.Thismakesitpossibletoprocessstaticallylinked<br> 1850 programs,andprogramsusingothermalloclibraries,forexample<br> 1851 TCMallocorJEMalloc.<br> 1852 <br> 1853 *Fortoolsthatprovidetheirownreplacementformallocetal,the<br> 1854 option--redzone-size=<number>allowsuserstospecifythesizeof<br> 1855 thepaddingblocks(redzones)addedbeforeandaftereachclient<br> 1856 allocatedblock.Smallerredzonesdecreasethememoryneededby<br> 1857 Valgrind.Biggerredzonesincreasethechancetodetectblocks<br> 1858 overrunorunderrun.Priortothischange,theredzonesizewas<br> 1859 hardwiredto16bytesinMemcheck.<br> 1860 <br> 1861 *Memcheck:<br> 1862 <br> 1863 -Theleak_checkGDBservermonitorcommandnowcan<br> 1864 controlthemaximumnroflossrecordstooutput.<br> 1865 <br> 1866 -Reductionofmemoryuseforapplicationsallocating<br> 1867 manyblocksand/orhavingmanypartiallydefinedbytes.<br> 1868 <br> 1869 -AdditionofGDBservermonitorcommand'block_list'thatlists<br> 1870 theaddresses/sizesoftheblocksofaleaksearchlossrecord.<br> 1871 <br> 1872 -AdditionofGDBservermonitorcommand'who_points_at'thatlists<br> 1873 thelocationspointingatablock.<br> 1874 <br> 1875 -Ifaredzonesize>0isgiven,VALGRIND_MALLOCLIKE_BLOCKnowwill<br> 1876 detectaninvalidaccessoftheseredzones,bymarkingthem<br> 1877 noaccess.Similarly,ifaredzonesizeisgivenforamemory<br> 1878 pool,VALGRIND_MEMPOOL_ALLOCwillmarktheredzonesnoaccess.<br> 1879 Thisstillallowstofindsomebugsiftheuserhasforgottento<br> 1880 markthepoolsuperblocknoaccess.<br> 1881 <br> 1882 -Performanceofmemoryleakcheckhasbeenimproved,especiallyin<br> 1883 caseswheretherearemanyleakedblocksand/ormanysuppression<br> 1884 rulesusedtosuppressleakreports.<br> 1885 <br> 1886 -Reducednoise(falsepositive)levelonMacOSX10.6/10.7,dueto<br> 1887 morepreciseanalysis,whichisimportantforLLVM/Clang<br> 1888 generatedcode.Thisisatthecostofsomewhatreduced<br> 1889 performance.Notethereisnochangetoanalysisprecisionor<br> 1890 costsonLinuxtargets.<br> 1891 <br> 1892 *DRD:<br> 1893 <br> 1894 -Addedevenmorefacilitiesthatcanhelpfindingthecauseofadata<br> 1895 race,namelythecommand-lineoption--ptrace-addrandthemacro<br> 1896 DRD_STOP_TRACING_VAR(x).Moreinformationcanbefoundinthemanual.<br> 1897 <br> 1898 -Fixedasubtlebugthatcouldcausefalsepositivedataracereports.<br> 1899 <br> 1900 *====================OTHERCHANGES====================<br> 1901 <br> 1902 *TheC++demanglerhasbeenupdatedsoastoworkwellwithC++<br> 1903 compiledbyuptoatleastg++4.6.<br> 1904 <br> 1905 *Tooldeveloperscanmakereplacement/wrappingmoreflexiblethanks<br> 1906 tothenewoption--soname-synonyms.Thiswasreportedabove,but<br> 1907 infactisverygeneralandappliestoallfunction<br> 1908 replacement/wrapping,notjusttomalloc-familyfunctions.<br> 1909 <br> 1910 *Round-robinschedulingofthreadscanbeselected,usingthenew<br> 1911 option--fair-sched=yes.Priortothischange,thepipe-based<br> 1912 threadserialisationmechanism(whichisstillthedefault)could<br> 1913 giveveryunfairscheduling.--fair-sched=yesimproves<br> 1914 responsivenessofinteractivemultithreadedapplications,and<br> 1915 improvesrepeatabilityofresultsfromthethreadcheckersHelgrind<br> 1916 andDRD.<br> 1917 <br> 1918 *Fortooldevelopers:supporttorunValgrindonValgrindhasbeen<br> 1919 improved.WecannowroutinelyValgrindonHelgrindorMemcheck.<br> 1920 <br> 1921 *gdbservernowshowsthefloatshadowregistersasinteger<br> 1922 ratherthanfloatvalues,astheshadowvaluesaremostly<br> 1923 usedasbitpatterns.<br> 1924 <br> 1925 *Increasedlimitforthe--num-callerscommandlineflagto500.<br> 1926 <br> 1927 *Performanceimprovementsforerrormatchingwhentherearemany<br> 1928 suppressionrecordsinuse.<br> 1929 <br> 1930 *ImprovedsupportforDWARF4debugginginformation(bug284184).<br> 1931 <br> 1932 *InitialsupportforDWZcompressedDwarfdebuginfo.<br> 1933 <br> 1934 *ImprovedcontrolovertheIRoptimiser'shandlingofthetradeoff<br> 1935 betweenperformanceandprecisionofexceptions.Specifically,<br> 1936 --vex-iropt-precise-memory-exnshasbeenremovedandreplacedby<br> 1937 --vex-iropt-register-updates,withextendedfunctionality.This<br> 1938 allowstheValgrindgdbservertoalwaysshowuptodateregister<br> 1939 valuestoGDB.<br> 1940 <br> 1941 *Modestperformancegainsthroughtheuseoftranslationchainingfor<br> 1942 JIT-generatedcode.<br> 1943 <br> 1944 *====================FIXEDBUGS====================<br> 1945 <br> 1946 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 1947 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 1948 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 1949 bugzilla(https://bugs.kde.org/enter_bug.cgi?product=valgrind)rather<br> 1950 thanmailingthedevelopers(ormailinglists)directly--bugsthat<br> 1951 arenotenteredintobugzillatendtogetforgottenaboutorignored.<br> 1952 <br> 1953 Toseedetailsofagivenbug,visit<br> 1954 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 1955 whereXXXXXXisthebugnumberaslistedbelow.<br> 1956 <br> 1957 197914Buildingvalgrindfromsvnnowrequiresautomake-1.10<br> 1958 203877increaseto16Mbmaximumallowedalignmentformemalignetal<br> 1959 219156Handlestaticallylinkedmallocorothermalloclib(e.g.tcmalloc)<br> 1960 247386makeperfdoesnotrunallperformancetests<br> 1961 270006Valgrindschedulerunfair<br> 1962 270777AddingMIPS/LinuxporttoValgrind<br> 1963 270796s390x:RemovedbrokensupportfortheTSinsn<br> 1964 271438FixconfigureforproperSSE4.2detection<br> 1965 273114s390x:SupportTR,TRE,TROO,TROT,TRTO,andTRTTinstructions<br> 1966 273475AddsupportforAVXinstructions<br> 1967 274078improvedconfigurelogicformpicc<br> 1968 276993fixmremap'nothrashchecks'<br> 1969 278313Fedora15/x64:errreaddebuginfowith--read-var-info=yesflag<br> 1970 281482memcheckincorrectbyteallocationcountinrealloc()forsillyargument<br> 1971 282230groupallocatorforsmallfixedsize,useitforMC_Chunk/SEcvbit<br> 1972 283413Fixwrongsanitycheck<br> 1973 283671RobustizealignmentcomputationinLibVEX_Alloc<br> 1974 283961AddingsupportforsomeHCIIOCTLs<br> 1975 284124parse_type_DIE:confusedby:DWARF4<br> 1976 284864==273475(AddsupportforAVXinstructions)<br> 1977 285219Too-restrictiveconstraintsforThumb2"SPplus/minusregister"<br> 1978 285662(MacOSX):Memcheckneedstoreplacememcpy/memmove<br> 1979 285725==273475(AddsupportforAVXinstructions)<br> 1980 286261addwrapperforlinuxI2C_RDWRioctl<br> 1981 286270vgpreloadisnotfriendlyto64->32bitexecs,givesld.sowarnings<br> 1982 286374Runningcachegrindwith--branch-sim=yeson64-bitPowerPCprogramfails<br> 1983 286384configurefails"checkingforasupportedversionofgcc"<br> 1984 286497==273475(AddsupportforAVXinstructions)<br> 1985 286596==273475(AddsupportforAVXinstructions)<br> 1986 286917disInstr(arm):unhandledinstruction:QADD(alsoQSUB)<br> 1987 287175ARM:scalarVFPfixed-pointVCVTinstructionsnothandled<br> 1988 287260Incorrectconditionaljumpormovedependsonuninitialisedvalue(s)<br> 1989 287301vexamd64->IR:0x660xF0x380x410xC00xB80x00x0(PHMINPOSUW)<br> 1990 287307==273475(AddsupportforAVXinstructions)<br> 1991 287858VG_(strerror):unknownerror<br> 1992 288298(MacOSX)unhandledsyscallshm_unlink<br> 1993 288995==273475(AddsupportforAVXinstructions)<br> 1994 289470LoadingoflargeMach-Othinbinariesfails.<br> 1995 289656==273475(AddsupportforAVXinstructions)<br> 1996 289699vgdbconnectioninrelaymodeerroneouslyclosedduetobufferoverrun<br> 1997 289823==293754(PCMPxSTRxnotimplementedfor16-bitcharacters)<br> 1998 289839s390x:Providesupportforunicodeconversioninstructions<br> 1999 289939monitorcmd'leak_check'withdetailsaboutleakedorreachableblocks<br> 2000 290006memcheckdoesn'tmark%xmmasinitializedafter"pcmpeqw%xmm%xmm"<br> 2001 290655AddsupportforAESKEYGENASSISTinstruction<br> 2002 290719valgrind-3.7.0failswithautomake-1.11.2dueto"pkglibdir"usage<br> 2003 290974vgdbmustalignpagestoVKI_SHMLBA(16KB)onARM<br> 2004 291253ESregisternotinitialisedinvalgrindsimulation<br> 2005 291568Fix3DNOW-relatedcrasheswithbaselinex86_64CPU(wpatch)<br> 2006 291865s390x:Supportthe"CompareDoubleandSwap"familyofinstructions<br> 2007 292300==273475(AddsupportforAVXinstructions)<br> 2008 292430unrecognizedinstructionin__intel_get_new_mem_ops_cpuid<br> 2009 292493==273475(AddsupportforAVXinstructions)<br> 2010 292626MissingfcntlF_SETOWN_EXandF_GETOWN_EXsupport<br> 2011 292627MissingsupportforsomeSCSIioctls<br> 2012 292628none/tests/x86/bug125959-x86.ctriggersundefinedbehavior<br> 2013 292841==273475(AddsupportforAVXinstructions)<br> 2014 292993implementthegetcpusyscallonamd64-linux<br> 2015 292995Implementthe“crossmemoryattach”syscallsintroducedinLinux3.2<br> 2016 293088AddsomeVEXsanitychecksforppc64unhandledinstructions<br> 2017 293751==290655(AddsupportforAESKEYGENASSISTinstruction)<br> 2018 293754PCMPxSTRxnotimplementedfor16-bitcharacters<br> 2019 293755==293754(NotestsforPCMPxSTRxon16-bitcharacters)<br> 2020 293808CLFLUSHnotsupportedbylatestVEXforamd64<br> 2021 294047valgrinddoesnotcorrectlyemulateprlimit64(...,RLIMIT_NOFILE,...)<br> 2022 294048MPSADBWinstructionnotimplemented<br> 2023 294055regtestnone/tests/shellfailswhenlocaleisnotsettoC<br> 2024 294185INT0x44(andothers)notsupportedonx86guest,butusedbyJikesRVM<br> 2025 294190--vgdb-error=xxxcanbeoutofsyncwitherrorsshowntotheuser<br> 2026 294191amd64:fnsave/frstorand0x66sizeprefixesonFPinstructions<br> 2027 294260disInstr_AMD64:disInstrmiscalculatednext%rip<br> 2028 294523--partial-loads-ok=yescausesfalsenegatives<br> 2029 294617vexamd64->IR:0x660xF0x3A0xDF0xD10x10xE80x6A<br> 2030 294736vexamd64->IR:0x480xF0xD70xD60x480x83<br> 2031 294812patchallowingtorun(onx86atleast)helgrind/drdontool.<br> 2032 295089cannotannotatesourceforbothhelgrindanddrd<br> 2033 295221POWERProcessordecimalfloatingpointinstructionsupportmissing<br> 2034 295427buildingfori386withclangondarwin11requires"-new_linkerlinker"<br> 2035 295428coregrind/m_main.chasincorrectx86assemblyfordarwin<br> 2036 295590Helgrind:Assertion'cvi->nWaiters>0'failed<br> 2037 295617ARM-Addsomemissingsyscalls<br> 2038 295799Missing\nwithget_vbitsingdbserverwhenlineis%80[...]<br> 2039 296229Linuxuserinputdeviceioctlsmissingwrappers<br> 2040 296318ELFDebuginfoimprovements(morethanonerx/rwmapping)<br> 2041 296422Addtranslationchainingsupport<br> 2042 296457vexamd64->IR:0x660xF0x3A0xDF0xD10x10xE80x6A(dupofAES)<br> 2043 296792valgrind3.7.0:addSIOCSHWTSTAMP(0x89B0)ioctlwrapper<br> 2044 296983Fixbuildissuesonx86_64/ppc64without32-bittoolchains<br> 2045 297078gdbserversignalhandlingproblems[..]<br> 2046 297147drdfalsepositivesonnewlyallocatedmemory<br> 2047 297329disallowdecodingofIBMPowerDFPinsnsonsomemachines<br> 2048 297497POWERProcessordecimalfloatingpointinstructionsupportmissing<br> 2049 297701Anotheraliasforstrncasecmp_linlibc-2.13.so<br> 2050 297911'invalidwrite'notreportedwhenusingAPIsforcustommemallocators.<br> 2051 297976s390x:revisitEXimplementation<br> 2052 297991Valgrindinterfereswithmmap()+ftell()<br> 2053 297992SupportsystemsmissingWIFCONTINUED(e.g.pre-2.6.10Linux)<br> 2054 297993Fixcompilationofvalgrindwithgcc-g3.<br> 2055 298080POWERProcessorDFPsupportmissing,part3<br> 2056 298227==273475(AddsupportforAVXinstructions)<br> 2057 298335==273475(AddsupportforAVXinstructions)<br> 2058 298354UnhandledARMThumbinstruction0xEB0D0x0585(streq)<br> 2059 298394s390x:Don'tbailoutonanunknownmachinemodel.[..]<br> 2060 298421accept4()syscall(366)supportismissingforARM<br> 2061 298718vexamd64->IR:0xF0xB10xCB0x9C0x8F0x45<br> 2062 298732valgrindinstallationprobleminubuntuwithkernelversion3.x<br> 2063 298862POWERProcessorDFPinstructionsupportmissing,part4<br> 2064 298864DWARFreadermis-parsesDW_FORM_ref_addr<br> 2065 298943massifassertswith--pages-as-heap=yeswhenbrkischanging[..]<br> 2066 299053SupportDWARF4DW_AT_high_pcconstantform<br> 2067 299104==273475(AddsupportforAVXinstructions)<br> 2068 299316Helgrind:hg_main.c:628(map_threads_lookup):Assertion'thr'failed.<br> 2069 299629dup3()syscall(358)supportismissingforARM<br> 2070 299694POWERProcessorDFPinstructionsupportmissing,part5<br> 2071 299756Ignore--free-fillforMEMPOOL_FREEandFREELIKEclientrequests<br> 2072 299803==273475(AddsupportforAVXinstructions)<br> 2073 299804==273475(AddsupportforAVXinstructions)<br> 2074 299805==273475(AddsupportforAVXinstructions)<br> 2075 300140ARM-Missing(T1)SMMUL<br> 2076 300195==296318(ELFDebuginfoimprovements(morethanonerx/rwmapping))<br> 2077 300389Assertion`are_valid_hwcaps(VexArchAMD64,[..])'failed.<br> 2078 300414FCOMandFCOMPunimplementedforamd64guest<br> 2079 301204infiniteloopincanonicaliseSymtabwithifuncsymbol<br> 2080 301229==203877(increaseto16Mbmaximumallowedalignmentformemalignetc)<br> 2081 301265addx86supporttoAndroidbuild<br> 2082 301984configurescriptdoesn'tdetectcertainversionsofclang<br> 2083 302205FixcompilerwarningsforPOWERVEXcodeandPOWERtestcases<br> 2084 302287UnhandledmovbeinstructiononAtomprocessors<br> 2085 302370PPC:fnmadd,fnmsub,fnmadds,fnmsubsinsnsalwaysnegatetheresult<br> 2086 302536FixforthePOWERValgrindregressiontest:memcheck-ISA2.0.<br> 2087 302578Unrecognizedisntruction0xc50x320xc20xca0x09vcmpngess<br> 2088 302656==273475(AddsupportforAVXinstructions)<br> 2089 302709valgrindforARMneedsextratlssupportforandroidemulator[..]<br> 2090 302827addwrapperforCDROM_GET_CAPABILITY<br> 2091 302901Valgrindcrasheswithdwzoptimizeddebuginfo<br> 2092 302918Enabletestingofthevmaddfpandvnsubfpinstructionsinthetestsuite<br> 2093 303116AddsupportforthePOWERinstructionpopcntb<br> 2094 303127Powertestsuitefixesforfrsqrte,vrefp,andvrsqrtefpinstructions.<br> 2095 303250Assertion`instrs_in->arr_used<=10000'failedw/OpenSSLcode<br> 2096 303466==273475(AddsupportforAVXinstructions)<br> 2097 303624segmentationfaultonAndroid4.1(e.g.onGalaxyNexusOMAP)<br> 2098 303963strstr()functionproduceswrongresultsundervalgrindcallgrind<br> 2099 304054CALL_FN_xxmacrosneedtoenforcestackalignment<br> 2100 304561teesystemcallnotsupported<br> 2101 715750(MacOSX):Incorrectinvalid-addresserrorsnear0xFFFFxxxx(mozbug#)<br> 2102 n-i-bzAddmissinggdbserverxmlfilesforshadowregistersforppc32<br> 2103 n-i-bzBypassgcc4.4/4.5codegenbugscausingoutofmemoryorasserts<br> 2104 n-i-bzFixassertingdbserverforwatchpointswatchingthesameaddress<br> 2105 n-i-bzFixfalsepositiveinsys_cloneonamd64whenoptionalargs[..]<br> 2106 n-i-bzs390x:Shadowregisterscannowbeexaminedusingvgdb<br> 2107 <br> 2108 (3.8.0-TEST3:9August2012,vexr2465,valgrindr12865)<br> 2109 (3.8.0:10August2012,vexr2465,valgrindr12866)<br> 2110 <br> 2111 <br> 2112 <br> 2113 Release3.7.0(5November2011)<br> 2114 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 2115 3.7.0isafeaturereleasewithmanysignificantimprovementsandthe<br> 2116 usualcollectionofbugfixes.<br> 2117 <br> 2118 ThisreleasesupportsX86/Linux,AMD64/Linux,ARM/Linux,PPC32/Linux,<br> 2119 PPC64/Linux,S390X/Linux,ARM/Android,X86/DarwinandAMD64/Darwin.<br> 2120 Supportforrecentdistrosandtoolchaincomponents(glibc2.14,gcc<br> 2121 4.6,MacOSX10.7)hasbeenadded.<br> 2122 <br> 2123 *==================PLATFORMCHANGES=================<br> 2124 <br> 2125 *SupportforIBMz/Architecture(s390x)runningLinux.Valgrindcan<br> 2126 analyse64-bitprogramsrunningonz/Architecture.Mostuserspace<br> 2127 instructionsuptoandincludingz10aresupported.Valgrindhas<br> 2128 beentestedextensivelyonz9,z10,andz196machinesrunningSLES<br> 2129 10/11,RedHat5/6m,andFedora.TheMemcheckandMassiftoolsare<br> 2130 knowntoworkwell.Callgrind,Helgrind,andDRDworkreasonably<br> 2131 wellonz9andlatermodels.SeeREADME.s390formoredetails.<br> 2132 <br> 2133 *PreliminarysupportforMacOSX10.7andXCode4.Both32-and<br> 2134 64-bitprocessesaresupported.Somecomplexthreadedapplications<br> 2135 (Firefox)areobservedtohangwhenrunas32bitapplications,<br> 2136 whereas64-bitversionsrunOK.Thecauseisunknown.Memcheck<br> 2137 willlikelyreportsomefalseerrors.Ingeneral,expectsomerough<br> 2138 spots.ThisreleasealsosupportsMacOSX10.6,butdropssupport<br> 2139 for10.5.<br> 2140 <br> 2141 *PreliminarysupportforAndroid(onARM).Valgrindcannowrun<br> 2142 largeapplications(eg,Firefox)on(eg)aSamsungNexusS.See<br> 2143 README.androidformoredetails,plusinstructionsonhowtoget<br> 2144 started.<br> 2145 <br> 2146 *SupportfortheIBMPowerISA2.06(Power7instructions)<br> 2147 <br> 2148 *GeneralcorrectnessandperformanceimprovementsforARM/Linux,and,<br> 2149 byextension,ARM/Android.<br> 2150 <br> 2151 *FurthersolidificationofsupportforSSE4.2in64-bitmode.AVX<br> 2152 instructionsetsupportisunderdevelopmentbutisnotavailablein<br> 2153 thisrelease.<br> 2154 <br> 2155 *SupportforAIX5hasbeenremoved.<br> 2156 <br> 2157 *====================TOOLCHANGES====================<br> 2158 <br> 2159 *Memcheck:someincrementalchanges:<br> 2160 <br> 2161 -reductionofmemoryuseinsomecircumstances<br> 2162 <br> 2163 -improvedhandlingoffreedmemory,whichinsomecircumstances<br> 2164 cancausedetectionofuse-after-freethatwouldpreviouslyhave<br> 2165 beenmissed<br> 2166 <br> 2167 -fixofalongstandingbugthatcouldcausefalsenegatives(missed<br> 2168 errors)inprogramsdoingvectorsaturatednarrowinginstructions.<br> 2169 <br> 2170 *Helgrind:performanceimprovementsandmajormemoryusereductions,<br> 2171 particularlyforlarge,longrunningapplicationswhichperformmany<br> 2172 synchronisation(lock,unlock,etc)events.Plusmanysmaller<br> 2173 changes:<br> 2174 <br> 2175 -displayoflocksetsforboththreadsinvolvedinarace<br> 2176 <br> 2177 -generalimprovementsinformatting/clarityoferrormessages<br> 2178 <br> 2179 -additionoffacilitiesanddocumentationregardingannotation<br> 2180 ofthreadsafereferencecountedC++classes<br> 2181 <br> 2182 -newflag--check-stack-refs=no|yes[yes],todisableracechecking<br> 2183 onthreadstacks(aperformancehack)<br> 2184 <br> 2185 -newflag--free-is-write=no|yes[no],toenabledetectionofraces<br> 2186 whereonethreadaccessesheapmemorybutanotheronefreesit,<br> 2187 withoutanycoordinatingsynchronisationevent<br> 2188 <br> 2189 *DRD:enabledXMLoutput;addedsupportfordelayedthreaddeletion<br> 2190 inordertodetectracesthatoccurclosetotheendofathread<br> 2191 (--join-list-vol);fixedamemoryleaktriggeredbyrepeatedclient<br> 2192 memoryallocatationanddeallocation;improvedDarwinsupport.<br> 2193 <br> 2194 *exp-ptrcheck:thistoolhasbeenrenamedtoexp-sgcheck<br> 2195 <br> 2196 *exp-sgcheck:thistoolhasbeenreducedinscopesoastoimprove<br> 2197 performanceandremovecheckingthatMemcheckdoesbetter.<br> 2198 Specifically,theabilitytocheckforoverrunsforstackandglobal<br> 2199 arraysisunchanged,buttheabilitytocheckforoverrunsofheap<br> 2200 blockshasbeenremoved.Thetoolhasaccordinglybeenrenamedto<br> 2201 exp-sgcheck("StackandGlobalArrayChecking").<br> 2202 <br> 2203 *====================OTHERCHANGES====================<br> 2204 <br> 2205 *GDBserver:ValgrindnowhasanembeddedGDBserver.Thatmeansit<br> 2206 ispossibletocontrolaValgrindrunfromGDB,doingalltheusual<br> 2207 thingsthatGDBcando(singlestepping,breakpoints,examining<br> 2208 data,etc).Tool-specificfunctionalityisalsoavailable.For<br> 2209 example,itispossibletoquerythedefinednessstateofvariables<br> 2210 ormemoryfromwithinGDBwhenrunningMemcheck;arbitrarilylarge<br> 2211 memorywatchpointsaresupported,etc.TousetheGDBserver,start<br> 2212 Valgrindwiththeflag--vgdb-error=0andfollowtheon-screen<br> 2213 instructions.<br> 2214 <br> 2215 *Improvedsupportforunfriendlyself-modifyingcode:anewoption<br> 2216 --smc-check=all-non-fileisavailable.Thisaddstherelevant<br> 2217 consistencychecksonlytocodethatoriginatesinnon-file-backed<br> 2218 mappings.Ineffectthisconfinestheconsistencycheckingonlyto<br> 2219 codethatisormightbeJITgenerated,andavoidschecksoncode<br> 2220 thatmusthavebeencompiledaheadoftime.Thissignificantly<br> 2221 improvesperformanceonapplicationsthatgeneratecodeatruntime.<br> 2222 <br> 2223 *ItisnowpossibletobuildaworkingValgrindusingClang-2.9on<br> 2224 Linux.<br> 2225 <br> 2226 *newclientrequestsVALGRIND_{DISABLE,ENABLE}_ERROR_REPORTING.<br> 2227 Theseenableanddisableerrorreportingonaper-thread,and<br> 2228 nestable,basis.Thisisusefulforhidingerrorsinparticularly<br> 2229 troublesomepiecesofcode.TheMPIwrapperlibrary(libmpiwrap.c)<br> 2230 nowusesthisfacility.<br> 2231 <br> 2232 *Addedthe--mod-funcnameoptiontocg_diff.<br> 2233 <br> 2234 *====================FIXEDBUGS====================<br> 2235 <br> 2236 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 2237 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 2238 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 2239 bugzilla(http://bugs.kde.org/enter_valgrind_bug.cgi)ratherthan<br> 2240 mailingthedevelopers(ormailinglists)directly--bugsthatare<br> 2241 notenteredintobugzillatendtogetforgottenaboutorignored.<br> 2242 <br> 2243 Toseedetailsofagivenbug,visit<br> 2244 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 2245 whereXXXXXXisthebugnumberaslistedbelow.<br> 2246 <br> 2247 79311mallocsillyargwarningdoesnotgivestacktrace<br> 2248 210935portvalgrind.h(notvalgrind)towin32tosupportclientrequests<br> 2249 214223valgrindSIGSEGVonstartupgcc4.4.1ppc32(G4)Ubuntu9.10<br> 2250 243404PorttozSeries<br> 2251 243935Helgrind:incorrecthandlingofANNOTATE_HAPPENS_BEFORE()/AFTER()<br> 2252 247223non-x86:Suppresswarning:'regparm'attributedirectiveignored<br> 2253 250101huge"free"memoryusageduetom_mallocfree.cfragmentation<br> 2254 253206Somefixesforthefaultstatustestcase<br> 2255 255223capgettestcasefailswhenrunningasroot<br> 2256 256703xlc_dbl_u32.ctestcasebroken<br> 2257 256726Helgrindtestshavebrokeninlineasm<br> 2258 259977==214223(Valgrindsegfaultsdoing__builtin_longjmp)<br> 2259 264800testcasecompilefailureonzseries<br> 2260 265762makepublicVEXheaderscompilablebyG++3.x<br> 2261 265771assertioninjumps.c(r11523)failswithglibc-2.3<br> 2262 266753configurescriptdoesnotgivetheusertheoptiontonotuseQtCore<br> 2263 266931gen_insn_test.plisbroken<br> 2264 266961ld-linux.so.2i?86-linuxstrlenissues<br> 2265 266990setnsinstructioncausesfalsepositive<br> 2266 267020Makedirectoryfortemporaryfilesconfigurableatrun-time.<br> 2267 267342==267997(segmentationfaultonMacOS10.6)<br> 2268 267383Assertion'vgPlain_strlen(dir)+vgPlain_strlen(file)+1<256'failed<br> 2269 267413Assertion'DRD_(g_threadinfo)[tid].synchr_nesting>=1'failed.<br> 2270 267488regtest:darwinsupportfor64-bitbuild<br> 2271 267552SIGSEGV(misaligned_stack_error)withDRD,butnotwithothertools<br> 2272 267630AddsupportforIBMPowerISA2.06--stage1<br> 2273 267769==267997(Darwin:memchecktriggerssegmentationfault)<br> 2274 267819Addclientrequestforinformingthecoreaboutreallocation<br> 2275 267925laogdatastructurequadraticforasinglesequenceoflock<br> 2276 267968drd:(vgDrd_thread_set_joinable):Assertion'0<=(int)tid..'failed<br> 2277 267997MacOSX:64-bitVsegfaultsonlaunchwhenbuiltwithXcode4.0.1<br> 2278 268513missedoptimizationsinfold_Expr<br> 2279 268619s390x:fpr-gprtransferfacility<br> 2280 268620s390x:reconsider"longdisplacement"requirement<br> 2281 268621s390x:improveIRgenerationforXC<br> 2282 268715s390x:FLOGRisnotuniversallyavailable<br> 2283 268792==267997(valgrindsegfaultsonstartupwhencompiledwithXcode4)<br> 2284 268930s390x:MHYisnotuniversallyavailable<br> 2285 269078arm->IR:unhandledinstructionSUB(SPminusimmediate/register)<br> 2286 269079SupportptracesystemcallonARM<br> 2287 269144missing"Badoption"errormessage<br> 2288 269209conditionalloadandstorefacility(z196)<br> 2289 269354Shiftbyzeroonx86canincorrectlyclobberCC_NDEP<br> 2290 269641==267997(valgrindsegfaultsimmediately(segmentationfault))<br> 2291 269736s390x:minorcodegenerationtweaks<br> 2292 269778==272986(valgrind.h:swaprolesofVALGRIND_DO_CLIENT_REQUEST()..)<br> 2293 269863s390x:removeunusedfunctionparameters<br> 2294 269864s390x:tweaks390_emit_load_cc<br> 2295 269884==250101(overheadforhugeblocksexhaustsspacetoosoon)<br> 2296 270082s390x:MakesuretopointthePSWaddresstothenextaddressonSIGILL<br> 2297 270115s390x:rewritesometestcases<br> 2298 270309==267997(valgrindcrashonstartup)<br> 2299 270320addsupportforLinuxFIOQSIZEioctl()call<br> 2300 270326segfaultwhiletryingtosanitizetheenvironmentpassedtoexecle<br> 2301 270794IBMPOWER7supportpatchcausesregressioninnone/tests<br> 2302 270851IBMPOWER7fcfidusinstructioncausesmemchecktofail<br> 2303 270856IBMPOWER7xsnmaddadpinstructioncausesmemchecktofailon32bitapp<br> 2304 270925hyper-optimizedstrspn()in/lib64/libc-2.13.soneedsfix<br> 2305 270959s390x:invaliduseofR0asbaseregister<br> 2306 271042VSXconfigurecheckfailswhenitshouldnot<br> 2307 271043Valgrindbuildfailswithassemblererroronppc64withbinutils2.21<br> 2308 271259s390x:fixcodeconfusion<br> 2309 271337==267997(ValgrindsegfaultsonMacOSX)<br> 2310 271385s390x:ImplementIst_MBE<br> 2311 271501s390x:misccleanups<br> 2312 271504s390x:promotelikelyandunlikely<br> 2313 271579ppc:usingwrongenumtype<br> 2314 271615unhandledinstruction"popcnt"(arch=amd10h)<br> 2315 271730Fixbugwhencheckingioctls:duplicatecheck<br> 2316 271776s390x:provideSTFLEinstructionsupport<br> 2317 271779s390x:provideclockinstructionslikeSTCK<br> 2318 271799Darwin:ioctlswithoutanargreportamemoryerror<br> 2319 271820arm:fixtypeconfusion<br> 2320 271917pthread_cond_timedwaitfailureleadstonot-lockedfalsepositive<br> 2321 272067s390x:fixDISP20macro<br> 2322 272615Atypoindebugoutputinmc_leakcheck.c<br> 2323 272661callgrind_annotatechokeswhenrunfrompathscontainingregexchars<br> 2324 272893amd64->IR:0x660xF0x380x2B0xC10x660xF0x7F==(closedasdup)<br> 2325 272955Unhandledsyscallerrorforpwrite64onppc64arch<br> 2326 272967makedocumentationbuild-systemmorerobust<br> 2327 272986Fixgcc-4.6warningswithvalgrind.h<br> 2328 273318amd64->IR:0x660xF0x3A0x610xC10x38(missingPCMPxSTRxcase)<br> 2329 273318unhandledPCMPxSTRxcase:vexamd64->IR:0x660xF0x3A0x610xC10x38<br> 2330 273431valgrindsegfaultsinevalCfiExpr(debuginfo.c:2039)<br> 2331 273465Callgrind:jumps.c:164(new_jcc):Assertion'(0<=jmp)&&...'<br> 2332 273536Builderror:multipledefinitionof`vgDrd_pthread_cond_initializer'<br> 2333 273640ppc64-linux:unhandledsyscallssetresuid(164)andsetresgid(169)<br> 2334 273729==283000(IllegalopcodeforSSE2"roundsd"instruction)<br> 2335 273778exp-ptrcheck:unhandledsysno==259<br> 2336 274089exp-ptrcheck:unhandledsysno==208<br> 2337 274378s390x:Variousdispatchertweaks<br> 2338 274447WARNING:unhandledsyscall:340<br> 2339 274776amd64->IR:0x660xF0x380x2B0xC50x66<br> 2340 274784==267997(valgrindls-lresultsinSegmentationFault)<br> 2341 274926valgrinddoesnotbuildagainstlinux-3<br> 2342 275148configureFAILwithglibc-2.14<br> 2343 275151Fedora15/glibc-2.14'makeregtest'FAIL<br> 2344 275168MakeValgrindworkforMacOSX10.7Lion<br> 2345 275212==275284(lotsoffalsepositivesfrom__memcpy_ssse3_backetal)<br> 2346 275278valgrinddoesnotbuildonLinuxkernel3.0.*duetosilly<br> 2347 275284Valgrindmemcpy/memmoveredirectionstoppedworkinginglibc2.14/x86_64<br> 2348 275308Fiximplementationforppc64fresinstruc<br> 2349 275339s390x:fixtestcasecompilewarnings<br> 2350 275517s390x:ProvidesupportforCKSMinstruction<br> 2351 275710s390x:getridofredundantaddressmodecalculation<br> 2352 275815==247894(Valgrinddoesn'tknowaboutLinuxreadahead(2)syscall)<br> 2353 275852==250101(valgrindusesallswapspaceandiskilled)<br> 2354 276784AddsupportforIBMPowerISA2.06--stage3<br> 2355 276987gdbsrv:fixtestsfollowingrecentcommits<br> 2356 277045ValgrindcrasheswithunhandledDW_OP_opcode0x2a<br> 2357 277199Thetest_isa_2_06_part1.cinnone/tests/ppc64shouldbeasymlink<br> 2358 277471Unhandledsyscall:340<br> 2359 277610valgrindcrashesinVG_(lseek)(core_fd,phdrs[idx].p_offset,...)<br> 2360 277653ARM:supportThumb2PLDinstruction<br> 2361 277663ARM:NEONfloatVMULbyscalarincorrect<br> 2362 277689ARM:testsforVSTnwithregisterpost-indexarebroken<br> 2363 277694ARM:BLXLRinstructionbrokeninARMmode<br> 2364 277780ARM:VMOV.F32(immediate)instructionisbroken<br> 2365 278057fusefilesystemsyscalldeadlocks<br> 2366 278078Unimplementedsyscall280onppc32<br> 2367 278349F_GETPIPE_SZandF_SETPIPE_SZLinuxfcntlcommands<br> 2368 278454VALGRIND_STACK_DEREGISTERhaswrongoutputtype<br> 2369 278502==275284(Valgrindconfusesmemcpy()andmemmove())<br> 2370 278892gdbsrv:factorizegdbversionhandling,fixdocandtypos<br> 2371 279027SupportforMVCLandCLCLinstruction<br> 2372 279027s390x:ProvidesupportforCLCLandMVCLinstructions<br> 2373 279062Removearedundantcheckintheinsnselectorforppc.<br> 2374 279071JDKcreatesPTESTwithredundantREX.Wprefix<br> 2375 279212gdbsrv:addmonitorcmdv.infoscheduler.<br> 2376 279378exp-ptrcheck:the'impossible'happenedonmkfifocall<br> 2377 279698memcheckdiscardsvalid-bitsforpackuswb<br> 2378 279795memcheckreportsuninitialisedvaluesformincoreonamd64<br> 2379 279994AddsupportforIBMPowerISA2.06--stage3<br> 2380 280083mempolicysyscallcheckerrors<br> 2381 280290vexamd64->IR:0x660xF0x380x280xC10x660xF0x6F<br> 2382 280710s390x:configfilesfornightlybuilds<br> 2383 280757/tmpdirstillusedbyvalgrindevenifTMPDIRisspecified<br> 2384 280965Valgrindbreaksfcntllockswhenprogramdoesmmap<br> 2385 281138WARNING:unhandledsyscall:340<br> 2386 281241==275168(valgrinduselessonMacos10.7.1Lion)<br> 2387 281304==275168(Darwin:dyld"cannotloadinsertedlibrary")<br> 2388 281305==275168(unhandledsyscall:unix:357onDarwin11.1)<br> 2389 281468s390x:handledo_cloneandgccclonesincalltraces<br> 2390 281488ARM:VFPregistercorruption<br> 2391 281828==275284(falsememmovewarning:"Sourceanddestinationoverlap")<br> 2392 281883s390x:Fixsystemcallwrapperfor"clone".<br> 2393 282105generalise'reclaimSuperBlock'toalsoreclaimsplittablesuperblock<br> 2394 282112Unhandledinstructionbytes:0xDE0xD90x9B0xDF(fcompp)<br> 2395 282238SLES10:makecheckfails<br> 2396 282979strcasestrneedsreplacementwithrecent(>=2.12)glibc<br> 2397 283000vexamd64->IR:0x660xF0x3A0xA0xC00x90xF30xF<br> 2398 283243Regressioninppc64memchecktests<br> 2399 283325==267997(Darwin:VsegfaultsonstartupwhenbuiltwithXcode4.0)<br> 2400 283427re-connectepoll_pwaitsyscallonARMlinux<br> 2401 283600gdbsrv:android:portvgdb.c<br> 2402 283709none/tests/faultstatusneedstoaccountforpagesize<br> 2403 284305filter_gdbneedsenhancementtoworkonppc64<br> 2404 284384clang3.1-Wunused-valuewarningsinvalgrind.h,memcheck.h<br> 2405 284472Thumb2ROR.WencodingT2notimplemented<br> 2406 284621XML-escapeprocesscommandlineinXMLoutput<br> 2407 n-i-bzcachegrind/callgrind:handleCPUIDinformationforCoreiXIntelCPUs<br> 2408 thathavenon-power-of-2sizes(alsoAMDs)<br> 2409 n-i-bzdon'tbespookedbylibrariesmashedbyelfhack<br> 2410 n-i-bzdon'tbespookedbylibxul.solinkedwithgold<br> 2411 n-i-bzimprovedcheckingforVALGRIND_CHECK_MEM_IS_DEFINED<br> 2412 <br> 2413 (3.7.0-TEST1:27October2011,vexr2228,valgrindr12245)<br> 2414 (3.7.0.RC1:1November2011,vexr2231,valgrindr12257)<br> 2415 (3.7.0:5November2011,vexr2231,valgrindr12258)<br> 2416 <br> 2417 <br> 2418 <br> 2419 Release3.6.1(16February2011)<br> 2420 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 2421 3.6.1isabugfixrelease.ItaddssupportforsomeSSE4<br> 2422 instructionsthatwereomittedin3.6.0duetolackoftime.Initial<br> 2423 supportforglibc-2.13hasbeenadded.Anumberofbugscausing<br> 2424 crashingorassertionfailureshavebeenfixed.<br> 2425 <br> 2426 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 2427 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 2428 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 2429 bugzilla(http://bugs.kde.org/enter_valgrind_bug.cgi)ratherthan<br> 2430 mailingthedevelopers(ormailinglists)directly--bugsthatare<br> 2431 notenteredintobugzillatendtogetforgottenaboutorignored.<br> 2432 <br> 2433 Toseedetailsofagivenbug,visit<br> 2434 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 2435 whereXXXXXXisthebugnumberaslistedbelow.<br> 2436 <br> 2437 188572ValgrindonMacshouldsuppresssetenv()memleak<br> 2438 194402vexamd64->IR:0x480xF0xAE0x4(properFX{SAVE,RSTOR}support)<br> 2439 210481vexamd64->IR:Assertion`sz==2||sz==4'failed(REX.WPOPQ)<br> 2440 246152callgrindinternalerrorafterpthread_cancelon32BitLinux<br> 2441 250038ppc64:AltivecLVSRandLVSLinstructionsfailtheirregtest<br> 2442 254420memorypooltrackingbroken<br> 2443 254957Testcodefailingtocompileduetochangesinmemcheck.h<br> 2444 255009helgrind/drd:crashonchmodwithinvalidparameter<br> 2445 255130readdwarf3.cparse_type_DIEconfusedbyGNATAdatypes<br> 2446 255355helgrind/drd:crashonthreadedprogramsdoingfork<br> 2447 255358==255355<br> 2448 255418(SSE4.x)rintcallcompiledwithICC<br> 2449 255822--gen-suppressionscancreateinvalidfiles:"toomanycallers[...]"<br> 2450 255888closingvalgrindoutputtagoutputtedtolog-streamonerror<br> 2451 255963(SSE4.x)vexamd64->IR:0x660xF0x3A0x90xDB0x0(ROUNDPD)<br> 2452 255966Slownesswhenusingmempoolannotations<br> 2453 256387vexx86->IR:0xD40xA0x20x7(AADandAAM)<br> 2454 256600super-optimizedstrcasecmp()falsepositive<br> 2455 256669vexamd64->IR:UnhandledLOOPNELinsnonamd64<br> 2456 256968(SSE4.x)vexamd64->IR:0x660xF0x380x100xD30x66(BLENDVPx)<br> 2457 257011(SSE4.x)vexamd64->IR:0x660xF0x3A0xE0xFD0xA0(PBLENDW)<br> 2458 257063(SSE4.x)vexamd64->IR:0x660xF0x3A0x80xC00x0(ROUNDPS)<br> 2459 257276Missingcaseinmemcheck--track-origins=yes<br> 2460 258870(SSE4.x)AddsupportforEXTRACTPSSSE4.1instruction<br> 2461 261966(SSE4.x)supportforCRC32BandCRC32Qislacking(alsoCRC32{W,L})<br> 2462 262985VEXregressioninvalgrind3.6.0inhandlingPowerPCVMX<br> 2463 262995(SSE4.x)crashwhentryingtovalgrindgcc-snapshot(PCMPxSTRx$0)<br> 2464 263099callgrind_annotatecountsIrimproperly[...]<br> 2465 263877undefinedcoprocessorinstructiononARMv7<br> 2466 265964configureFAILwithglibc-2.13<br> 2467 n-i-bzFixcompileerrorw/icc-12.xinguest_arm_toIR.c<br> 2468 n-i-bzDocs:fixbogusdescriptionsforVALGRIND_CREATE_BLOCKetal<br> 2469 n-i-bzMassif:don'tassertonshmat()with--pages-as-heap=yes<br> 2470 n-i-bzBugfixesandmajorspeedupsfortheexp-DHATspaceprofiler<br> 2471 n-i-bzDRD:disable--free-is-writeduetoimplementationdifficulties<br> 2472 <br> 2473 (3.6.1:16February2011,vexr2103,valgrindr11561).<br> 2474 <br> 2475 <br> 2476 <br> 2477 Release3.6.0(21October2010)<br> 2478 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 2479 3.6.0isafeaturereleasewithmanysignificantimprovementsandthe<br> 2480 usualcollectionofbugfixes.<br> 2481 <br> 2482 ThisreleasesupportsX86/Linux,AMD64/Linux,ARM/Linux,PPC32/Linux,<br> 2483 PPC64/Linux,X86/DarwinandAMD64/Darwin.Supportforrecentdistros<br> 2484 andtoolchaincomponents(glibc2.12,gcc4.5,OSX10.6)hasbeenadded.<br> 2485 <br> 2486 -------------------------<br> 2487 <br> 2488 Herearesomehighlights.Detailsareshownfurtherdown:<br> 2489 <br> 2490 *SupportforARM/Linux.<br> 2491 <br> 2492 *SupportforrecentLinuxdistros:Ubuntu10.10andFedora14.<br> 2493 <br> 2494 *SupportforMacOSX10.6,both32-and64-bitexecutables.<br> 2495 <br> 2496 *SupportfortheSSE4.2instructionset.<br> 2497 <br> 2498 *EnhancementstotheCallgrindprofiler,includingtheabilityto<br> 2499 handleCPUswiththreelevelsofcache.<br> 2500 <br> 2501 *Anewexperimentalheapprofiler,DHAT.<br> 2502 <br> 2503 *Ahugenumberofbugfixesandsmallenhancements.<br> 2504 <br> 2505 -------------------------<br> 2506 <br> 2507 Herearedetailsoftheabovechanges,togetherwithdescriptionsof<br> 2508 manyotherchanges,andalistoffixedbugs.<br> 2509 <br> 2510 *==================PLATFORMCHANGES=================<br> 2511 <br> 2512 *SupportforARM/Linux.ValgrindnowrunsonARMv7capableCPUs<br> 2513 runningLinux.ItisknowntoworkonUbuntu10.04,Ubuntu10.10,<br> 2514 andMaemo5,soyoucanrunValgrindonyourNokiaN900ifyouwant.<br> 2515 <br> 2516 ThisrequiresaCPUcapableofrunningtheARMv7-Ainstructionset<br> 2517 (CortexA5,A8andA9).Valgrindprovidesfairlycompletecoverage<br> 2518 oftheuserspaceinstructionset,includingARMandThumbinteger<br> 2519 code,VFPv3,NEONandV6mediainstructions.TheMemcheck,<br> 2520 CachegrindandMassiftoolsworkproperly;othertoolsworkto<br> 2521 varyingdegrees.<br> 2522 <br> 2523 *SupportforrecentLinuxdistros(Ubuntu10.10andFedora14),along<br> 2524 withsupportforrecentreleasesoftheunderlyingtoolchain<br> 2525 components,notablygcc-4.5andglibc-2.12.<br> 2526 <br> 2527 *SupportforMacOSX10.6,both32-and64-bitexecutables.64-bit<br> 2528 supportalsoworksmuchbetteronOSX10.5,andisassolidas<br> 2529 32-bitsupportnow.<br> 2530 <br> 2531 *SupportfortheSSE4.2instructionset.SSE4.2issupportedin<br> 2532 64-bitmode.In32-bitmode,supportisonlyavailableuptoand<br> 2533 includingSSSE3.Someexceptions:SSE4.2AESinstructionsarenot<br> 2534 supportedin64-bitmode,and32-bitmodedoesinfactsupportthe<br> 2535 bareminimumSSE4instructionstoneededtorunprogramsonMacOSX<br> 2536 10.6on32-bittargets.<br> 2537 <br> 2538 *SupportforIBMPOWER6cpushasbeenimproved.ThePowerISAupto<br> 2539 andincludingversion2.05issupported.<br> 2540 <br> 2541 *====================TOOLCHANGES====================<br> 2542 <br> 2543 *Cachegrindhasanewprocessingscript,cg_diff,whichfindsthe<br> 2544 differencebetweentwoprofiles.It'sveryusefulforevaluating<br> 2545 theperformanceeffectsofachangeinaprogram.<br> 2546 <br> 2547 Relatedtothischange,themeaningofcg_annotate's(rarely-used)<br> 2548 --thresholdoptionhaschanged;thisisunlikelytoaffectmany<br> 2549 people,ifyoudouseitpleaseseetheusermanualfordetails.<br> 2550 <br> 2551 *Callgrindnowcandobranchpredictionsimulation,similarto<br> 2552 Cachegrind.Inaddition,itoptionallycancountthenumberof<br> 2553 executedglobalbusevents.Bothcanbeusedforabetter<br> 2554 approximationofa"CycleEstimation"asderivedevent(youneedto<br> 2555 updatetheeventformulainKCachegrindyourself).<br> 2556 <br> 2557 *CachegrindandCallgrindnowrefertotheLL(last-level)cache<br> 2558 ratherthantheL2cache.Thisistoaccommodatemachineswith<br> 2559 threelevelsofcaches--ifCachegrind/Callgrindauto-detectsthe<br> 2560 cacheconfigurationofsuchamachineitwillrunthesimulationas<br> 2561 iftheL2cacheisn'tpresent.Thismeanstheresultsareless<br> 2562 likelytomatchthetrueresultforthemachine,but<br> 2563 Cachegrind/Callgrind'sresultsarealreadyonlyapproximate,and<br> 2564 shouldnotbeconsideredauthoritative.Theresultsarestill<br> 2565 usefulforgivingageneralideaaboutaprogram'slocality.<br> 2566 <br> 2567 *Massifhasanewoption,--pages-as-heap,whichisdisabledby<br> 2568 default.Whenenabled,insteadoftrackingallocationsatthelevel<br> 2569 ofheapblocks(asallocatedwithmalloc/new/new[]),itinstead<br> 2570 tracksmemoryallocationsatthelevelofmemorypages(asmappedby<br> 2571 mmap,brk,etc).Eachmappedpageistreatedasitsownblock.<br> 2572 Interpretingthepage-leveloutputisharderthantheheap-level<br> 2573 output,butthisoptionisusefulifyouwanttoaccountforevery<br> 2574 byteofmemoryusedbyaprogram.<br> 2575 <br> 2576 *DRDhastwonewcommand-lineoptions:--free-is-writeand<br> 2577 --trace-alloc.Theformerallowstodetectreadingfromalreadyfreed<br> 2578 memory,andthelatterallowstracingofallmemoryallocationsand<br> 2579 deallocations.<br> 2580 <br> 2581 *DRDhasseveralnewannotations.Custombarrierimplementationscan<br> 2582 nowbeannotated,aswellasbenignracesonstaticvariables.<br> 2583 <br> 2584 *DRD'shappensbefore/happensafterannotationshavebeenmademore<br> 2585 powerful,sothattheycannowalsobeusedtoannotatee.g.asmart<br> 2586 pointerimplementation.<br> 2587 <br> 2588 *Helgrind'sannotationsethasalsobeendrasticallyimproved,soas<br> 2589 toprovidetousersageneralsetofannotationstodescribelocks,<br> 2590 semaphores,barriersandconditionvariables.Annotationsto<br> 2591 describethread-safereferencecountedheapobjectshavealsobeen<br> 2592 added.<br> 2593 <br> 2594 *Memcheckhasanewcommand-lineoption,--show-possibly-lost,which<br> 2595 isenabledbydefault.Whendisabled,theleakdetectorwillnot<br> 2596 showpossibly-lostblocks.<br> 2597 <br> 2598 *Anewexperimentalheapprofiler,DHAT(DynamicHeapAnalysisTool),<br> 2599 hasbeenadded.DHATkeepstrackofallocatedheapblocks,andalso<br> 2600 inspectseverymemoryreferencetoseewhichblock(ifany)isbeing<br> 2601 accessed.Thisgivesalotofinsightintoblocklifetimes,<br> 2602 utilisation,turnover,liveness,andthelocationofhotandcold<br> 2603 fields.YoucanuseDHATtodohot-fieldprofiling.<br> 2604 <br> 2605 *====================OTHERCHANGES====================<br> 2606 <br> 2607 *Improvedsupportforunfriendlyself-modifyingcode:theextra<br> 2608 overheadincurredby--smc-check=allhasbeenreducedby<br> 2609 approximatelyafactorof5ascomparedwith3.5.0.<br> 2610 <br> 2611 *Abilitytoshowdirectorynamesforsourcefilesinerrormessages.<br> 2612 Thisiscombinedwithaflexiblemechanismforspecifyingwhich<br> 2613 partsofthepathsshouldbeshown.Thisisenabledbythenewflag<br> 2614 --fullpath-after.<br> 2615 <br> 2616 *Anewflag,--require-text-symbol,whichwillstoptherunifa<br> 2617 specifiedsymbolisnotfounditagivensharedobjectwhenitis<br> 2618 loadedintotheprocess.Thismakesadvancedworkingwithfunction<br> 2619 interceptingandwrappingsaferandmorereliable.<br> 2620 <br> 2621 *ImprovedsupportfortheValkyrieGUI,version2.0.0.GUIoutput<br> 2622 andcontrolofValgrindisnowavailableforthetoolsMemcheckand<br> 2623 Helgrind.XMLoutputfromValgrindisavailableforMemcheck,<br> 2624 Helgrindandexp-Ptrcheck.<br> 2625 <br> 2626 *Morereliablestackunwindingonamd64-linux,particularlyinthe<br> 2627 presenceoffunctionwrappers,andwithgcc-4.5compiledcode.<br> 2628 <br> 2629 *Modestscalability(performanceimprovements)formassive<br> 2630 long-runningapplications,particularlyforthosewithhugeamounts<br> 2631 ofcode.<br> 2632 <br> 2633 *SupportforanalyzingprogramsrunningunderWinewithhasbeen<br> 2634 improved.Theheaderfiles<valgrind/valgrind.h>,<br> 2635 <valgrind/memcheck.h>and<valgrind/drd.h>cannowbeusedin<br> 2636 Windows-programscompiledwithMinGWoroneoftheMicrosoftVisual<br> 2637 Studiocompilers.<br> 2638 <br> 2639 *Ararebutseriouserrorinthe64-bitx86CPUsimulationwasfixed.<br> 2640 The32-bitsimulatorwasnotaffected.Thisdidnotoccuroften,<br> 2641 butwhenitdidwouldusuallycrashtheprogramundertest.<br> 2642 Bug245925.<br> 2643 <br> 2644 *Alargenumberofbugswerefixed.Theseareshownbelow.<br> 2645 <br> 2646 *Anumberofbugswereinvestigated,andwerecandidatesforfixing,<br> 2647 butarenotfixedin3.6.0,duetolackofdevelopertime.Theymay<br> 2648 getfixedinlaterreleases.Theyare:<br> 2649 <br> 2650 194402vexamd64->IR:0x480xF0xAE0x40x240x49(FXSAVE64)<br> 2651 212419falsepositive"lockorderviolated"(A+BvsA)<br> 2652 213685Undefinedvaluepropagatespastdependencybreakinginstruction<br> 2653 216837IncorrectinstrumentationofNSOperationQueueonDarwin<br> 2654 237920valgrindsegfaultonforkfailure<br> 2655 242137supportforcodecompiledbyLLVM-2.8<br> 2656 242423AnotherunknownIntelcacheconfigvalue<br> 2657 243232InconsistentLockOrderingsreportwithtrylock<br> 2658 243483ppc:callgrindtriggersVEXassertionfailure<br> 2659 243935Helgrind:implementationofANNOTATE_HAPPENS_BEFORE()iswrong<br> 2660 244677Helgrindcrashhg_main.c:616(map_threads_lookup):Assertion<br> 2661 'thr'failed.<br> 2662 246152callgrindinternalerrorafterpthread_cancelon32BitLinux<br> 2663 249435Analyzingwineprogramswithcallgrindtriggersacrash<br> 2664 250038ppc64:Altiveclvsrandlvslinstructionsfailtheirregtest<br> 2665 250065Handlinglargeallocations<br> 2666 250101huge"free"memoryusageduetom_mallocfree.c<br> 2667 "superblocksfragmentation"<br> 2668 251569vexamd64->IR:0xF0x10xF90x8B0x4C0x24(RDTSCP)<br> 2669 252091CallgrindonARMdoesnotdetectfunctionreturnscorrectly<br> 2670 252600[PATCH]Allowlhstobeapointerforshl/shr<br> 2671 254420memorypooltrackingbroken<br> 2672 n-i-bzsupportforaddingsymbolsforJITgeneratedcode<br> 2673 <br> 2674 <br> 2675 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 2676 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 2677 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 2678 bugzilla(http://bugs.kde.org/enter_valgrind_bug.cgi)ratherthan<br> 2679 mailingthedevelopers(ormailinglists)directly--bugsthatare<br> 2680 notenteredintobugzillatendtogetforgottenaboutorignored.<br> 2681 <br> 2682 Toseedetailsofagivenbug,visit<br> 2683 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 2684 whereXXXXXXisthebugnumberaslistedbelow.<br> 2685 <br> 2686 135264dcbzlinstructionmissing<br> 2687 142688==250799<br> 2688 153699Valgrindshouldreportunalignedreadswithmovdqa<br> 2689 180217==212335<br> 2690 190429Valgrindreportslostoferrorsinld.so<br> 2691 withx86_642.9.90glibc<br> 2692 197266valgrindappearstochokeonthexmmsinstruction<br> 2693 "roundsd"onx86_64<br> 2694 197988Crashwhendemanglingverylargesymbolnames<br> 2695 202315unhandledsyscall:332(inotify_init1)<br> 2696 203256Addpage-levelprofilingtoMassif<br> 2697 205093dsymutil=yesneedsquotes,locking(partialfix)<br> 2698 205241SnowLeopard10.6support(partialfix)<br> 2699 206600Leakcheckerfailstoupgradeindirectblockswhentheir<br> 2700 parentbecomesreachable<br> 2701 210935portvalgrind.h(notvalgrind)towin32soappsrununder<br> 2702 winecanmakeclientrequests<br> 2703 211410vexamd64->IR:0x150xFF0xFF0x00x00x89<br> 2704 withinLinuxip-stackchecksumfunctions<br> 2705 212335unhandledinstructionbytes:0xF30xF0xBD0xC0<br> 2706 (lzcnt%eax,%eax)<br> 2707 213685Undefinedvaluepropagatespastdependencybreakinginstruction<br> 2708 (partialfix)<br> 2709 215914Valgrindinsertsbogusemptyenvironmentvariable<br> 2710 217863==197988<br> 2711 219538adjtimexsyscallwrapperwronginreadonlyadjtimemode<br> 2712 222545shmatfailsundervalgindonsomearmtargets<br> 2713 222560ARMNEONsupport<br> 2714 230407==202315<br> 2715 231076==202315<br> 2716 232509Docsbuildfailswithformattinginside<title></title>elements<br> 2717 232793==202315<br> 2718 235642[PATCH]syswrap-linux.c:supportevdevEVIOCG*ioctls<br> 2719 236546vexx86->IR:0x660xF0x3A0xA<br> 2720 237202vexamd64->IR:0xF30xF0xB80xC00x490x3B<br> 2721 237371bettersupportforVALGRIND_MALLOCLIKE_BLOCK<br> 2722 237485symlink(syscall57)isnotsupportedonMacOS<br> 2723 237723sysno==101exp-ptrcheck:the'impossible'happened:<br> 2724 unhandledsyscall<br> 2725 238208is_just_below_ESPdoesn'ttakeintoaccountred-zone<br> 2726 238345valgrindpasseswrong$0whenexecutingashellscript<br> 2727 238679mq_timedreceivesyscalldoesn'tflagthereceptionbuffer<br> 2728 as"defined"<br> 2729 238696fcntlcommandF_DUPFD_CLOEXECnotsupported<br> 2730 238713unhandledinstructionbytes:0x660xF0x290xC6<br> 2731 238713unhandledinstructionbytes:0x660xF0x290xC6<br> 2732 2387453.5.0MakefailsonPPCAltivecopcodes,thoughconfigure<br> 2733 says"Altivecoff"<br> 2734 239992vexamd64->IR:0x480xF0xC40xC10x00x48<br> 2735 240488==197988<br> 2736 240639==212335<br> 2737 241377==236546<br> 2738 241903==202315<br> 2739 241920==212335<br> 2740 242606unhandledsyscall:setegid(inPtrcheck)<br> 2741 242814Helgrind"Impossiblehashappened"during<br> 2742 QApplication::initInstance();<br> 2743 243064Valgrindattemptingtoreaddebuginformationfromiso<br> 2744 243270MakestackunwindinginValgrindwrappersmorereliable<br> 2745 243884exp-ptrcheck:the'impossiblehappened:unhandledsyscall<br> 2746 sysno=277(mq_open)<br> 2747 244009exp-ptrcheckunknownsyscallsinanalyzinglighttpd<br> 2748 244493ARMVFPd16-d31registerssupport<br> 2749 244670addsupportforaudit_session_selfsyscallonMacOS10.6<br> 2750 244921Thexmlreportofhelgrindtoolisnotwellformat<br> 2751 244923Inthexmlreportfile,the<preamble>notescapethe<br> 2752 xmlchar,eg'<','&','>'<br> 2753 245535printfullpathnamesinplaintextreports<br> 2754 245925x86-64redzonehandlingproblem<br> 2755 246258Valgrindnotcatchingintegerunderruns+new[]s<br> 2756 246311reg/regcmpxchgdoesn'tworkonamd64<br> 2757 246549unhandledsyscallunix:277whiletesting32-bitDarwinapp<br> 2758 246888ImproveMakefile.vex.am<br> 2759 247510[OSX10.6]Memcheckreportsunaddressablebytespassed<br> 2760 to[f]chmod_extended<br> 2761 247526IBMPOWER6(ISA2.05)supportisincomplete<br> 2762 247561Someleaktestcasesfailsduetoreachableaddressesin<br> 2763 callersaveregs<br> 2764 247875sizeofIRTypetohandleIty_I128<br> 2765 247894[PATCH]unhandledsyscallsys_readahead<br> 2766 247980Doesn'thonorCFLAGSpassedtoconfigure<br> 2767 248373darwin10.suppisemptyinthetrunk<br> 2768 248822LinuxFIBMAPioctlhasintparameterinsteadoflong<br> 2769 248893[PATCH]makereaddwarf.cbigendianesssafetoenable<br> 2770 unwindingonbigendiansystems<br> 2771 249224Syscall336notsupported(SYS_proc_info)<br> 2772 249359==245535<br> 2773 249775IncorrectschemefordetectingNEONcapabilitiesofhostCPU<br> 2774 249943jniJVMinitfailswhenusingvalgrind<br> 2775 249991ValgrindincorrectlydeclaresAESKEYGENASSISTsupport<br> 2776 sinceVEXr2011<br> 2777 249996linux/arm:unhandledsyscall:181(__NR_pwrite64)<br> 2778 250799frexp$fenv_access_offfunctiongeneratesSIGILL<br> 2779 250998vexx86->IR:unhandledinstructionbytes:0x660x660x660x2E<br> 2780 251251supportpclmulqdqinsn<br> 2781 251362valgrind:ARM:attachtodebuggereitherfailsorprovokes<br> 2782 kerneloops<br> 2783 251674Unhandledsyscall294<br> 2784 251818==254550<br> 2785 <br> 2786 254257Addsupportfordebugfilesfoundbybuild-id<br> 2787 254550[PATCH]ImplementDW_ATE_UTF(DWARF4)<br> 2788 254646WrappedfunctionscausestackmisalignmentonOSX<br> 2789 (andpossiblyLinux)<br> 2790 254556ARM:valgrindinganythingfailswithSIGSEGVfor0xFFFF0FA0<br> 2791 <br> 2792 (3.6.0:21October2010,vexr2068,valgrindr11471).<br> 2793 <br> 2794 <br> 2795 <br> 2796 Release3.5.0(19August2009)<br> 2797 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 2798 3.5.0isafeaturereleasewithmanysignificantimprovementsandthe<br> 2799 usualcollectionofbugfixes.ThemainimprovementisthatValgrind<br> 2800 nowworksonMacOSX.<br> 2801 <br> 2802 ThisreleasesupportsX86/Linux,AMD64/Linux,PPC32/Linux,PPC64/Linux<br> 2803 andX86/Darwin.Supportforrecentdistrosandtoolchaincomponents<br> 2804 (glibc2.10,gcc4.5)hasbeenadded.<br> 2805 <br> 2806 -------------------------<br> 2807 <br> 2808 Hereisashortsummaryofthechanges.Detailsareshownfurther<br> 2809 down:<br> 2810 <br> 2811 *SupportforMacOSX(10.5.x).<br> 2812 <br> 2813 *ImprovementsandsimplificationstoMemcheck'sleakchecker.<br> 2814 <br> 2815 *ClarificationandsimplificationsinvariousaspectsofValgrind's<br> 2816 textoutput.<br> 2817 <br> 2818 *XMLoutputforHelgrindandPtrcheck.<br> 2819 <br> 2820 *PerformanceandstabilityimprovementsforHelgrindandDRD.<br> 2821 <br> 2822 *Genuinelyatomicsupportforx86/amd64/ppcatomicinstructions.<br> 2823 <br> 2824 *Anewexperimentaltool,BBV,usefulforcomputerarchitecture<br> 2825 research.<br> 2826 <br> 2827 *ImprovedWinesupport,includingabilitytoreadWindowsPDB<br> 2828 debuginfo.<br> 2829 <br> 2830 -------------------------<br> 2831 <br> 2832 Herearedetailsoftheabovechanges,followedbydescriptionsof<br> 2833 manyotherminorchanges,andalistoffixedbugs.<br> 2834 <br> 2835 <br> 2836 *ValgrindnowrunsonMacOSX.(NotethatMacOSXissometimes<br> 2837 called"Darwin"becausethatisthenameoftheOScore,whichisthe<br> 2838 levelthatValgrindworksat.)<br> 2839 <br> 2840 Supportedsystems:<br> 2841 <br> 2842 -ItrequiresOS10.5.x(Leopard).Portingto10.4.xisnotplanned<br> 2843 becauseitwouldrequireworkand10.4isonlybecominglesscommon.<br> 2844 <br> 2845 -32-bitprogramsonx86andAMD64(a.k.ax86-64)machinesaresupported<br> 2846 fairlywell.For10.5.x,32-bitprogramsarethedefaultevenon<br> 2847 64-bitmachines,soithandlesmostcurrentprograms.<br> 2848 <br> 2849 -64-bitprogramsonx86andAMD64(a.k.ax86-64)machinesarenot<br> 2850 officiallysupported,butsimpleprogramsatleastwillprobablywork.<br> 2851 However,start-upisslow.<br> 2852 <br> 2853 -PowerPCmachinesarenotsupported.<br> 2854 <br> 2855 Thingsthatdon'twork:<br> 2856 <br> 2857 -ThePtrchecktool.<br> 2858 <br> 2859 -Objective-Cgarbagecollection.<br> 2860 <br> 2861 ---db-attach=yes.<br> 2862 <br> 2863 -IfyouhaveRogueAmoeba's"InstantHijack"programinstalled,<br> 2864 ValgrindwillfailwithaSIGTRAPatstart-up.See<br> 2865 https://bugs.kde.org/show_bug.cgi?id=193917fordetailsanda<br> 2866 simplework-around.<br> 2867 <br> 2868 Usagenotes:<br> 2869 <br> 2870 -Youwilllikelyfind--dsymutil=yesausefuloption,aserror<br> 2871 messagesmaybeimprecisewithoutit.<br> 2872 <br> 2873 -MacOSXsupportisnewandthereforewillbelessrobustthanthe<br> 2874 Linuxsupport.Pleasereportanybugsyoufind.<br> 2875 <br> 2876 -ThreadedprogramsmayrunmoreslowlythanonLinux.<br> 2877 <br> 2878 ManythankstoGregParkerfordevelopingthisportoverseveralyears.<br> 2879 <br> 2880 <br> 2881 *Memcheck'sleakcheckerhasbeenimproved.<br> 2882 <br> 2883 -Theresultsfor--leak-check=summarynowmatchthesummaryresults<br> 2884 for--leak-check=full.Previouslytheycoulddifferbecause<br> 2885 --leak-check=summarycounted"indirectlylost"blocksand<br> 2886 "suppressed"blocksas"definitelylost".<br> 2887 <br> 2888 -Blocksthatareonlyreachableviaatleastoneinterior-pointer,<br> 2889 butaredirectlypointedtobyastart-pointer,werepreviously<br> 2890 markedas"stillreachable".Theyarenowcorrectlymarkedas<br> 2891 "possiblylost".<br> 2892 <br> 2893 -Thedefaultvalueforthe--leak-resolutionoptionhasbeen<br> 2894 changedfrom"low"to"high".Ingeneral,thismeansthatmore<br> 2895 leakreportswillbeproduced,buteachleakreportwilldescribe<br> 2896 fewerleakedblocks.<br> 2897 <br> 2898 -With--leak-check=full,"definitelylost"and"possiblylost"<br> 2899 leaksarenowconsideredaspropererrors,ie.theyarecounted<br> 2900 forthe"ERRORSUMMARY"andaffectthebehaviourof<br> 2901 --error-exitcode.Theseleaksarenotcountedaserrorsif<br> 2902 --leak-check=summaryisspecified,however.<br> 2903 <br> 2904 -Documentationfortheleakcheckerhasbeenimproved.<br> 2905 <br> 2906 <br> 2907 *VariousaspectsofValgrind'stextoutputhavechanged.<br> 2908 <br> 2909 -Valgrind'sstart-upmessagehaschanged.Itisshorterbutalso<br> 2910 includesthecommandbeingrun,whichmakesiteasiertouse<br> 2911 --trace-children=yes.Anexample:<br> 2912 <br> 2913 -Valgrind'sshut-downmessageshavealsochanged.Thisismost<br> 2914 noticeablewithMemcheck,wheretheleaksummarynowoccursbefore<br> 2915 theerrorsummary.Thischangewasnecessarytoallowleakstobe<br> 2916 countedaspropererrors(seethedescriptionoftheleakchecker<br> 2917 changesaboveformoredetails).Thiswasalsonecessarytofixa<br> 2918 longstandingbuginwhichusesofsuppressionsagainstleakswere<br> 2919 not"counted",leadingtodifficultiesinmaintainingsuppression<br> 2920 files(seehttps://bugs.kde.org/show_bug.cgi?id=186790).<br> 2921 <br> 2922 -Behaviorof-vhaschanged.Inpreviousversions,-vprintedout<br> 2923 amixtureofmarginally-user-usefulinformation,andtool/core<br> 2924 statistics.Thestatisticsprintinghasnowbeenmovedtoitsown<br> 2925 flag,--stats=yes.Thismeans-vislessverboseandmorelikely<br> 2926 toconveyusefulend-userinformation.<br> 2927 <br> 2928 -Theformatofsome(non-XML)stacktraceentrieshaschangeda<br> 2929 little.Previouslythereweresixpossibleforms:<br> 2930 <br> 2931 0x80483BF:really(a.c:20)<br> 2932 0x80483BF:really(in/foo/a.out)<br> 2933 0x80483BF:really<br> 2934 0x80483BF:(within/foo/a.out)<br> 2935 0x80483BF:???(a.c:20)<br> 2936 0x80483BF:???<br> 2937 <br> 2938 Thethirdandfourthoftheseformshavebeenmademoreconsistent<br> 2939 withtheothers.Thesixpossibleformsarenow:<br> 2940 <br> 2941 0x80483BF:really(a.c:20)<br> 2942 0x80483BF:really(in/foo/a.out)<br> 2943 0x80483BF:really(in???)<br> 2944 0x80483BF:???(in/foo/a.out)<br> 2945 0x80483BF:???(a.c:20)<br> 2946 0x80483BF:???<br> 2947 <br> 2948 Stacktracesproducedwhen--xml=yesisspecifiedaredifferent<br> 2949 andunchanged.<br> 2950 <br> 2951 <br> 2952 *HelgrindandPtrchecknowsupportXMLoutput,sotheycanbeused<br> 2953 fromGUItools.Also,theXMLoutputmechanismhasbeen<br> 2954 overhauled.<br> 2955 <br> 2956 -TheXMLformathasbeenoverhauledandgeneralised,soitismore<br> 2957 suitableforerrorreportingtoolsingeneral.TheMemcheck<br> 2958 specificaspectsofithavebeenremoved.Thenewformat,which<br> 2959 isanevolutionoftheoldformat,isdescribedin<br> 2960 docs/internals/xml-output-protocol4.txt.<br> 2961 <br> 2962 -Memcheckhasbeenupdatedtousethenewformat.<br> 2963 <br> 2964 -HelgrindandPtrcheckarenowabletoemitoutputinthisformat.<br> 2965 <br> 2966 -TheXMLoutputmechanismhasbeenoverhauled.XMLisnowoutput<br> 2967 toitsownfiledescriptor,whichmeansthat:<br> 2968 <br> 2969 *ValgrindcanoutputtextandXMLindependently.<br> 2970 <br> 2971 *ThelongstandingproblemofXMLoutputbeingcorruptedby<br> 2972 unexpectedun-taggedtextmessagesissolved.<br> 2973 <br> 2974 Asbefore,thedestinationfortextoutputisspecifiedusing<br> 2975 --log-file=,--log-fd=or--log-socket=.<br> 2976 <br> 2977 Asbefore,XMLoutputforatoolisenabledusing--xml=yes.<br> 2978 <br> 2979 Becausethere'sanewXMLoutputchannel,theXMLoutput<br> 2980 destinationisnowspecifiedby--xml-file=,--xml-fd=or<br> 2981 --xml-socket=.<br> 2982 <br> 2983 Initialfeedbackhasshownthiscausessomeconfusion.To<br> 2984 clarify,thetwoenvisagedusagescenariosare:<br> 2985 <br> 2986 (1)Normaltextoutput.Inthiscase,donotspecify--xml=yes<br> 2987 noranyof--xml-file=,--xml-fd=or--xml-socket=.<br> 2988 <br> 2989 (2)XMLoutput.Inthiscase,specify--xml=yes,andoneof<br> 2990 --xml-file=,--xml-fd=or--xml-socket=toselecttheXML<br> 2991 destination,oneof--log-file=,--log-fd=or--log-socket=<br> 2992 toselectthedestinationforanyremainingtextmessages,<br> 2993 and,importantly,-q.<br> 2994 <br> 2995 -qmakesValgrindcompletelysilentonthetextchannel,<br> 2996 exceptinthecaseofcriticalfailures,suchasValgrind<br> 2997 itselfsegfaulting,orfailingtoreaddebugginginformation.<br> 2998 Hence,inthisscenario,itsufficestocheckwhetherornot<br> 2999 anyoutputappearedonthetextchannel.Ifyes,thenitis<br> 3000 likelytobeacriticalerrorwhichshouldbebroughttothe<br> 3001 attentionoftheuser.Ifno(thetextchannelproducedno<br> 3002 output)thenitcanbeassumedthattherunwassuccessful.<br> 3003 <br> 3004 ThisallowsGUIstomakethecriticaldistinctiontheyneedto<br> 3005 make(didtherunfailornot?)withouthavingtosearchor<br> 3006 filterthetextoutputchannelinanyway.<br> 3007 <br> 3008 Itisalsorecommendedtouse--child-silent-after-fork=yesin<br> 3009 scenario(2).<br> 3010 <br> 3011 <br> 3012 *ImprovementsandchangesinHelgrind:<br> 3013 <br> 3014 -XMLoutput,asdescribedabove<br> 3015 <br> 3016 -Checksforconsistentassociationbetweenpthreadcondition<br> 3017 variablesandtheirassociatedmutexesarenowperformed.<br> 3018 <br> 3019 -pthread_spinlockfunctionsaresupported.<br> 3020 <br> 3021 -Modestperformanceimprovements.<br> 3022 <br> 3023 -Initial(skeletal)supportfordescribingthebehaviourof<br> 3024 non-POSIXsynchronisationobjectsthroughThreadSanitizer<br> 3025 compatibleANNOTATE_*macros.<br> 3026 <br> 3027 -Morecontrollabletradeoffsbetweenperformanceandthelevelof<br> 3028 detailof"previous"accessesinarace.Therearenowthree<br> 3029 settings:<br> 3030 <br> 3031 *--history-level=full.Thisisthedefault,andwasalsothe<br> 3032 defaultin3.4.x.Itshowsbothstacksinvolvedinarace,but<br> 3033 requiresalotofmemoryandcanbeveryslowinprogramsthat<br> 3034 domanyinter-threadsynchronisationevents.<br> 3035 <br> 3036 *--history-level=none.Thisonlyshowsthelaterstackinvolved<br> 3037 inarace.Thiscanbemuchfasterthan--history-level=full,<br> 3038 butmakesitmuchmoredifficulttofindtheotheraccess<br> 3039 involvedintherace.<br> 3040 <br> 3041 Thenewintermediatesettingis<br> 3042 <br> 3043 *--history-level=approx<br> 3044 <br> 3045 Fortheearlier(other)access,twostacksarepresented.The<br> 3046 earlieraccessisguaranteedtobesomewhereinbetweenthetwo<br> 3047 programpointsdenotedbythosestacks.Thisisnotasuseful<br> 3048 asshowingtheexactstackforthepreviousaccess(asper<br> 3049 --history-level=full),butitisbetterthannothing,andit's<br> 3050 almostasfastas--history-level=none.<br> 3051 <br> 3052 <br> 3053 *NewfeaturesandimprovementsinDRD:<br> 3054 <br> 3055 -TheerrormessagesprintedbyDRDarenoweasiertointerpret.<br> 3056 Insteadofusingtwodifferentnumberstoidentifyeachthread<br> 3057 (ValgrindthreadIDandDRDthreadID),DRDdoesnowidentify<br> 3058 threadsviaasinglenumber(theDRDthreadID).Furthermore<br> 3059 "firstobservedat"informationisnowprintedforallerror<br> 3060 messagesrelatedtosynchronizationobjects.<br> 3061 <br> 3062 -Addedsupportfornamedsemaphores(sem_open()andsem_close()).<br> 3063 <br> 3064 -Raceconditionsbetweenpthread_barrier_wait()and<br> 3065 pthread_barrier_destroy()callsarenowreported.<br> 3066 <br> 3067 -Addedsupportforcustomallocatorsthroughthemacros<br> 3068 VALGRIND_MALLOCLIKE_BLOCK()VALGRIND_FREELIKE_BLOCK()(definedin<br> 3069 in<valgrind/valgrind.h>).Analternativeforthesetwomacrosis<br> 3070 thenewclientrequestVG_USERREQ__DRD_CLEAN_MEMORY(definedin<br> 3071 <valgrind/drd.h>).<br> 3072 <br> 3073 -Addedsupportforannotatingnon-POSIXsynchronizationobjects<br> 3074 throughseveralnewANNOTATE_*()macros.<br> 3075 <br> 3076 -OpenMP:addedsupportfortheOpenMPruntime(libgomp)included<br> 3077 withgccversions4.3.0and4.4.0.<br> 3078 <br> 3079 -Fasteroperation.<br> 3080 <br> 3081 -Addedtwonewcommand-lineoptions(--first-race-onlyand<br> 3082 --segment-merging-interval).<br> 3083 <br> 3084 <br> 3085 *Genuinelyatomicsupportforx86/amd64/ppcatomicinstructions<br> 3086 <br> 3087 Valgrindwillnowpreserve(memory-access)atomicityofLOCK-<br> 3088 prefixedx86/amd64instructions,andanyothersimplyingaglobal<br> 3089 buslock.DittoforPowerPCl{w,d}arx/st{w,d}cx.instructions.<br> 3090 <br> 3091 ThismeansthatValgrindedprocesseswill"playnicely"in<br> 3092 situationswherecommunicationwithotherprocesses,orthekernel,<br> 3093 isdonethroughsharedmemoryandcoordinatedwithsuchatomic<br> 3094 instructions.Priortothischange,sucharrangementsusually<br> 3095 resultedinhangs,racesorothersynchronisationfailures,because<br> 3096 Valgrinddidnothonouratomicityofsuchinstructions.<br> 3097 <br> 3098 <br> 3099 *Anewexperimentaltool,BBV,hasbeenadded.BBVgeneratesbasic<br> 3100 blockvectorsforusewiththeSimPointanalysistool,whichallows<br> 3101 aprogram'soverallbehaviourtobeapproximatedbyrunningonlya<br> 3102 fractionofit.Thisisusefulforcomputerarchitecture<br> 3103 researchers.YoucanrunBBVbyspecifying--tool=exp-bbv(the<br> 3104 "exp-"prefixisshortfor"experimental").BBVwaswrittenby<br> 3105 VinceWeaver.<br> 3106 <br> 3107 <br> 3108 *ModestlyimprovedsupportforrunningWindowsapplicationsunder<br> 3109 Wine.Inparticular,initialsupportforreadingWindows.PDBdebug<br> 3110 informationhasbeenadded.<br> 3111 <br> 3112 <br> 3113 *AnewMemcheckclientrequestVALGRIND_COUNT_LEAK_BLOCKShasbeen<br> 3114 added.ItissimilartoVALGRIND_COUNT_LEAKSbutcountsblocks<br> 3115 insteadofbytes.<br> 3116 <br> 3117 <br> 3118 *TheValgrindclientrequestsVALGRIND_PRINTFand<br> 3119 VALGRIND_PRINTF_BACKTRACEhavebeenchangedslightly.Previously,<br> 3120 thestringwasalwaysprintedimmediatelyonitsownline.Now,the<br> 3121 stringwillbeaddedtoabufferbutnotprinteduntilanewlineis<br> 3122 encountered,orotherValgrindoutputisprinted(notethatfor<br> 3123 VALGRIND_PRINTF_BACKTRACE,theback-traceitselfisconsidered<br> 3124 "otherValgrindoutput").Thisallowsyoutousemultiple<br> 3125 VALGRIND_PRINTFcallstobuildupasingleoutputline,andalsoto<br> 3126 printmultipleoutputlineswithasinglerequest(byembedding<br> 3127 multiplenewlinesinthestring).<br> 3128 <br> 3129 <br> 3130 *ThegraphsdrawnbyMassif'sms_printprogramhavechangedslightly:<br> 3131 <br> 3132 -Thehalf-heightchars'.'and','arenolongerdrawn,because<br> 3133 theyareconfusing.The--yoptioncanbeusedifthedefault<br> 3134 y-resolutionisnothighenough.<br> 3135 <br> 3136 -Horizontallinesarenowdrawnafterthetopofasnapshotif<br> 3137 thereisagapuntilthenextsnapshot.Thismakesitclearthat<br> 3138 thememoryusagehasnotdroppedtozerobetweensnapshots.<br> 3139 <br> 3140 <br> 3141 *Somethingthathappenedin3.4.0,butwasn'tclearlyannounced:the<br> 3142 option--read-var-info=yescanbeusedbysometools(Memcheck,<br> 3143 HelgrindandDRD).Whenenabled,itcausesValgrindtoreadDWARF3<br> 3144 variabletypeandlocationinformation.Thismakesthosetools<br> 3145 startupmoreslowlyandincreasesmemoryconsumption,but<br> 3146 descriptionsofdataaddressesinerrormessagesbecomemore<br> 3147 detailed.<br> 3148 <br> 3149 <br> 3150 *exp-Omega,anexperimentalinstantaneousleak-detectingtool,was<br> 3151 disabledin3.4.0duetoalackofinterestandmaintenance,<br> 3152 althoughthesourcecodewasstillinthedistribution.Thesource<br> 3153 codehasnowbeenremovedfromthedistribution.Foranyone<br> 3154 interested,theremovaloccurredinSVNrevisionr10247.<br> 3155 <br> 3156 <br> 3157 *Somechangeshavebeenmadetothebuildsystem.<br> 3158 <br> 3159 -VEX/isnowintegratedproperlyintothebuildsystem.Thismeans<br> 3160 thatdependencytrackingwithinVEX/nowworksproperly,"make<br> 3161 install"willworkwithoutrequiring"make"beforeit,and<br> 3162 parallelbuilds(ie.'make-j')nowwork(previouslya<br> 3163 .NOTPARALLELdirectivewasusedtoserializebuilds,ie.'make-j'<br> 3164 waseffectivelyignored).<br> 3165 <br> 3166 -The--with-vexconfigureoptionhasbeenremoved.Itwasof<br> 3167 littleuseandremovingitsimplifiedthebuildsystem.<br> 3168 <br> 3169 -Thelocationofsomeinstallfileshaschanged.Thisshouldnot<br> 3170 affectmostusers.Thosewhomightbeaffected:<br> 3171 <br> 3172 *ForpeoplewhouseValgrindwithMPIprograms,theinstalled<br> 3173 libmpiwrap.solibraryhasmovedfrom<br> 3174 $(INSTALL)/<platform>/libmpiwrap.soto<br> 3175 $(INSTALL)/libmpiwrap-<platform>.so.<br> 3176 <br> 3177 *ForpeoplewhodistributestandaloneValgrindtools,the<br> 3178 installedlibrariessuchas$(INSTALL)/<platform>/libcoregrind.a<br> 3179 havemovedto$(INSTALL)/libcoregrind-<platform>.a.<br> 3180 <br> 3181 Thesechangessimplifythebuildsystem.<br> 3182 <br> 3183 -Previously,allthedistributedsuppression(*.supp)fileswere<br> 3184 installed.Now,onlydefault.suppisinstalled.Thisshouldnot<br> 3185 affectusersastheotherinstalledsuppressionfileswerenot<br> 3186 read;thefactthattheywereinstalledwasamistake.<br> 3187 <br> 3188 <br> 3189 *KNOWNLIMITATIONS:<br> 3190 <br> 3191 -MemcheckisunusablewiththeIntelcompilersuiteversion11.1,<br> 3192 whenitgeneratescodeforSSE2-and-abovecapabletargets.This<br> 3193 isbecauseoficc'suseofhighlyoptimisedinlinedstrlen<br> 3194 implementations.ItcausesMemchecktoreporthugenumbersof<br> 3195 falseerrorseveninsimpleprograms.HelgrindandDRDmayalso<br> 3196 haveproblems.<br> 3197 <br> 3198 Versions11.0andearliermaybeOK,butthishasnotbeen<br> 3199 properlytested.<br> 3200 <br> 3201 <br> 3202 Thefollowingbugshavebeenfixedorresolved.Notethat"n-i-bz"<br> 3203 standsfor"notinbugzilla"--thatis,abugthatwasreportedtous<br> 3204 butnevergotabugzillaentry.Weencourageyoutofilebugsin<br> 3205 bugzilla(http://bugs.kde.org/enter_valgrind_bug.cgi)ratherthan<br> 3206 mailingthedevelopers(ormailinglists)directly--bugsthatare<br> 3207 notenteredintobugzillatendtogetforgottenaboutorignored.<br> 3208 <br> 3209 Toseedetailsofagivenbug,visit<br> 3210 https://bugs.kde.org/show_bug.cgi?id=XXXXXX<br> 3211 whereXXXXXXisthebugnumberaslistedbelow.<br> 3212 <br> 3213 84303HowaboutaLockChecktool?<br> 3214 91633dereferenceofnullptrinvgPlain_st_basetype<br> 3215 97452Valgrinddoesn'treportanypthreadsproblems<br> 3216 100628leak-checkgetsassertionfailurewhenusing<br> 3217 VALGRIND_MALLOCLIKE_BLOCKonmalloc()edmemory<br> 3218 108528NPTLpthreadcleanuphandlersnotcalled<br> 3219 110126Valgrind2.4.1configure.intramplesCFLAGS<br> 3220 110128mallinfoisnotimplemented...<br> 3221 110770VEX:Generatedfilesnotalwaysupdatedwhenmakingvalgrind<br> 3222 111102Memcheck:problemswithlarge(memoryfootprint)applications<br> 3223 115673Vex'sdecodershouldneverassert<br> 3224 117564Falsepositive:Syscallparamclone(child_tidptr)contains<br> 3225 uninitialisedbyte(s)<br> 3226 119404executingsshfrominsidevalgrindfails<br> 3227 133679Callgrinddoesnotwritepathnamestosourceswithdwarfdebug<br> 3228 info<br> 3229 135847configure.inproblemwithnongnucompilers(andpossiblefix)<br> 3230 136154threads.c:273(vgCallgrind_post_signal):Assertion<br> 3231 '*(vgCallgrind_current_fn_stack.top)==0'failed.<br> 3232 136230memcheckreports"possiblylost",shouldbe"stillreachable"<br> 3233 137073NULLargtoMALLOCLIKE_BLOCKcausescrash<br> 3234 137904ValgrindreportsamemoryleakwhenusingPOSIXthreads,<br> 3235 whileitshouldn't<br> 3236 139076valgrindVT_GETSTATEerror<br> 3237 142228complaintofelf_dynamic_do_relaintrivialusage<br> 3238 145347spuriouswarningwithUSBDEVFS_REAPURB<br> 3239 148441(wine)can'tfindmemoryleakinWine,win32binary<br> 3240 executablefile.<br> 3241 148742Leak-checkfailsassertonexit<br> 3242 149878add(proper)checkforcallocintegeroverflow<br> 3243 150606Callgraphisbrokenwhenusingcallgrindcontrol<br> 3244 152393leakerrorsproduceanexitcodeof0.Ineedsomewayto<br> 3245 causeleakerrorstoresultinanonzeroexitcode.<br> 3246 157154documentation(leak-resolutiondocspeaksaboutnum-callers<br> 3247 def=4)+whatisalossrecord<br> 3248 159501incorrecthandlingofALSAioctls<br> 3249 162020Valgrindinganempty/zero-bytefilecrashesvalgrind<br> 3250 162482ppc:Valgrindcrasheswhilereadingstabsinformation<br> 3251 162718x86:avoidsegmentselector0insys_set_thread_area()<br> 3252 163253(wine)canonicaliseSymtabforgotsomefieldsinDiSym<br> 3253 163560VEX/test_main.cismissingfromvalgrind-3.3.1<br> 3254 164353malloc_usable_size()doesn'treturnausablesize<br> 3255 165468Inconsistentformattinginmemcheckmanual--pleasefix<br> 3256 169505main.c:286(endOfInstr):<br> 3257 Assertion'ii->cost_offset==*cost_offset'failed<br> 3258 177206Generatedefault.suppduringcompileinsteadofconfigure<br> 3259 177209Configurevalt_load_addressbasedonarch+os<br> 3260 177305eventfd/syscall323patchlost<br> 3261 179731Testsfailtobuildbecauseofinliningofnon-localasmlabels<br> 3262 181394helgrind:libhb_core.c:3762(msm_write):Assertion<br> 3263 'ordxx==POrd_EQ||ordxx==POrd_LT'failed.<br> 3264 181594Boguswarningforemptytextsegment<br> 3265 181707dwarfdoesn'trequireenumerationstohavename<br> 3266 185038exp-ptrcheck:"unhandledsyscall:285"(fallocate)onx86_64<br> 3267 185050exp-ptrcheck:sg_main.c:727(add_block_to_GlobalTree):<br> 3268 Assertion'!already_present'failed.<br> 3269 185359exp-ptrcheck:unhandledsyscallgetresuid()<br> 3270 185794"WARNING:unhandledsyscall:285"(fallocate)onx86_64<br> 3271 185816Valgrindisunabletohandledebuginfoforfileswithsplit<br> 3272 debuginfothatareprelinkedafterwards<br> 3273 185980[darwin]unhandledsyscall:sem_open<br> 3274 186238bbToIR_AMD64:disInstrmiscalculatednext%rip<br> 3275 186507exp-ptrcheckunhandledsyscallsprctl,etc.<br> 3276 186790Suppressionpatternusedforleaksarenotreported<br> 3277 186796Symbolswithlength>200insuppressionfilesareignored<br> 3278 187048drd:mutexPTHREAD_PROCESS_SHAREDattributemissinterpretation<br> 3279 187416exp-ptrcheck:supportfor__NR_{setregid,setreuid,setresuid}<br> 3280 188038helgrind:hg_main.c:926:mk_SHVAL_fail:the'impossible'happened<br> 3281 188046bashismsintheconfigurescript<br> 3282 188127amd64->IR:unhandledinstructionbytes:0xF00xF0xB00xA<br> 3283 188161memcheck:--track-origins=yesasserts"mc_machine.c:672<br> 3284 (get_otrack_shadow_offset_wrk):the'impossible'happened."<br> 3285 188248helgrind:pthread_cleanup_push,pthread_rwlock_unlock,<br> 3286 assertionfail"!lock->heldBy"<br> 3287 188427Addsupportforepoll_create1(withpatch)<br> 3288 188530SupportforSIOCGSTAMPNS<br> 3289 188560Includevalgrind.specinthetarball<br> 3290 188572ValgrindonMacshouldsuppresssetenv()memleak<br> 3291 189054Valgrindfailstobuildbecauseofduplicatenon-localasmlabels<br> 3292 189737vexamd64->IR:unhandledinstructionbytes:0xAC<br> 3293 189762epoll_createsyscallnothandled(--tool=exp-ptrcheck)<br> 3294 189763drdassertionfailure:s_threadinfo[tid].is_recording<br> 3295 190219unhandledsyscall:328(x86-linux)<br> 3296 190391dupof181394;seeabove<br> 3297 190429Valgrindreportslotsoferrorsinld.sowithx86_642.9.90glibc<br> 3298 190820Nodebuginformationonpowerpc-linux<br> 3299 191095PATCH:Improveusbdevfsioctlhandling<br> 3300 191182memcheck:VALGRIND_LEAK_CHECKquadraticwhenbignrofchunks<br> 3301 orbignroferrors<br> 3302 191189--xml=yesshouldobey--gen-suppressions=all<br> 3303 191192syslog()needsasuppressiononmacosx<br> 3304 191271DARWIN:WARNING:unhandledsyscall:33554697a.k.a.:265<br> 3305 191761getrlimitonMacOSX<br> 3306 191992multiple--fn-skiponlyworkssometimes;dependentonorder<br> 3307 192634V.reports"aspacemsync_check_mapping_callback:<br> 3308 segmentmismatch"onDarwin<br> 3309 192954__extension__missingon2clientrequests<br> 3310 194429Crashatstart-upwithglibc-2.10.1andlinux-2.6.29<br> 3311 194474"INSTALL"filehasdifferentbuildinstructionsthan"README"<br> 3312 194671Unhandledsyscall(sem_wait?)frommacvalgrind<br> 3313 195069memcheck:reportsleak(memorystillreachable)for<br> 3314 printf("%d',x)<br> 3315 195169drd:(vgDrd_barrier_post_wait):<br> 3316 Assertion'r->sg[p->post_iteration]'failed.<br> 3317 195268valgrind--log-filedoesn'taccept~/...<br> 3318 195838VEXabort:LibVEX_N_SPILL_BYTEStoosmallforCPUIDboilerplate<br> 3319 195860WARNING:unhandledsyscall:unix:223<br> 3320 196528needaerrorsuppressionforpthread_rwlock_initunderosx?<br> 3321 197227Supportaio_*syscallsonDarwin<br> 3322 197456valgrindshouldreject--suppressions=(directory)<br> 3323 197512DWARF2CFIreader:unhandledCFIinstruction0:10<br> 3324 197591unhandledsyscall27(mincore)<br> 3325 197793MergeDCASbranchtothetrunk==85756,142103<br> 3326 197794AvoidduplicatefilenamesinVex<br> 3327 197898makecheckfailsoncurrentSVN<br> 3328 197901makecheckfailsalsounderexp-ptrcheckincurrentSVN<br> 3329 197929Make--leak-resolution=highthedefault<br> 3330 197930Reducespacingbetweenleakreports<br> 3331 197933Printcommandlineofclientatstart-up,andshortenpreamble<br> 3332 197966unhandledsyscall205(x86-linux,--tool=exp-ptrcheck)<br> 3333 198395addBBVtothedistributionasanexperimentaltool<br> 3334 198624MissingsyscallsonDarwin:82,167,281,347<br> 3335 198649callgrind_annotatedoesn'tcumulatecounters<br> 3336 199338callgrind_annotatesorting/thresholdsarebrokenforallbutIr<br> 3337 199977Valgrindcomplainsaboutanunrecognizedinstructioninthe<br> 3338 atomic_incstestprogram<br> 3339 200029valgrindisn'tabletoreadFedora12debuginfo<br> 3340 200760darwinunhandledsyscall:unix:284<br> 3341 200827DRDdoesn'tworkonMacOSX<br> 3342 200990VG_(read_millisecond_timer)()doesnotworkcorrectly<br> 3343 201016Valgrinddoesnotsupportpthread_kill()onMacOS<br> 3344 201169Document--read-var-info<br> 3345 201323Pre-3.5.0performancesanitychecking<br> 3346 201384Reviewusermanualforthe3.5.0release<br> 3347 201585mfpvrnotimplementedonppc<br> 3348 201708testsfailingbecausex86directionflagisleftset<br> 3349 201757Valgrinddoesn'thandleanyrecentsys_futexadditions<br> 3350 20437764-bitvalgrindcannotstartashellscript<br> 3351 (with#!/path/to/shell)iftheshellisa32-bitexecutable<br> 3352 n-i-bzdrd:fixedassertionfailuretriggeredbymutexreinitialization.<br> 3353 n-i-bzdrd:fixedabugthatcausedincorrectmessagestobeprinted<br> 3354 aboutmemoryallocationeventswithmemoryaccesstracingenabled<br> 3355 n-i-bzdrd:fixedamemoryleaktriggeredbyvectorclockdeallocation<br> 3356 <br> 3357 (3.5.0:19Aug2009,vexr1913,valgrindr10846).<br> 3358 <br> 3359 <br> 3360 <br> 3361 Release3.4.1(28February2009)<br> 3362 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 3363 3.4.1isabug-fixreleasethatfixessomeregressionsandassertion<br> 3364 failuresindebuginforeadingin3.4.0,mostnotablyincorrectstack<br> 3365 tracesonamd64-linuxonolder(glibc-2.3based)systems.Various<br> 3366 otherdebuginfoproblemsarealsofixed.Anumberofbugsinthe<br> 3367 exp-ptrchecktoolintroducedin3.4.0havebeenfixed.<br> 3368 <br> 3369 Inviewofthefactthat3.4.0containsuser-visibleregressions<br> 3370 relativeto3.3.x,upgradingto3.4.1isrecommended.Packagersare<br> 3371 encouragedtoship3.4.1inpreferenceto3.4.0.<br> 3372 <br> 3373 Thefixedbugsareasfollows.Notethat"n-i-bz"standsfor"notin<br> 3374 bugzilla"--thatis,abugthatwasreportedtousbutnevergota<br> 3375 bugzillaentry.Weencourageyoutofilebugsinbugzilla<br> 3376 (http://bugs.kde.org/enter_valgrind_bug.cgi)ratherthanmailingthe<br> 3377 developers(ormailinglists)directly--bugsthatarenotentered<br> 3378 intobugzillatendtogetforgottenaboutorignored.<br> 3379 <br> 3380 n-i-bzFixvariousbugsreadingicc-11generateddebuginfo<br> 3381 n-i-bzFixvariousbugsreadinggcc-4.4generateddebuginfo<br> 3382 n-i-bzPreliminarysupportforglibc-2.10/Fedora11<br> 3383 n-i-bzCachegrindandCallgrind:handlenon-power-of-twocachesizes,<br> 3384 soastosupport(eg)24kAtomD1andCore2with3/6/12MBL2.<br> 3385 179618exp-ptrcheckcrashed/exitprematurely<br> 3386 179624helgrind:falsepositiveraceswithpthread_createand<br> 3387 recv/open/close/read<br> 3388 134207pkg-configoutputcontains@VG_PLATFORM@<br> 3389 176926floatingpointexceptionatvalgrindstartupwithPPC440EPX<br> 3390 181594Boguswarningforemptytextsegment<br> 3391 173751amd64->IR:0x480xF0x6F0x45(evenmoreredundantrexprefixes)<br> 3392 181707Dwarf3doesn'trequireenumerationstohavename<br> 3393 185038exp-ptrcheck:"unhandledsyscall:285"(fallocate)onx86_64<br> 3394 185050exp-ptrcheck:sg_main.c:727(add_block_to_GlobalTree):<br> 3395 Assertion'!already_present'failed.<br> 3396 185359exp-ptrcheckunhandledsyscallgetresuid()<br> 3397 <br> 3398 (3.4.1.RC1:24Feb2008,vexr1884,valgrindr9253).<br> 3399 (3.4.1:28Feb2008,vexr1884,valgrindr9293).<br> 3400 <br> 3401 <br> 3402 <br> 3403 Release3.4.0(2January2009)<br> 3404 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 3405 3.4.0isafeaturereleasewithmanysignificantimprovementsandthe<br> 3406 usualcollectionofbugfixes.ThisreleasesupportsX86/Linux,<br> 3407 AMD64/Linux,PPC32/LinuxandPPC64/Linux.Supportforrecentdistros<br> 3408 (usinggcc4.4,glibc2.8and2.9)hasbeenadded.<br> 3409 <br> 3410 3.4.0bringssomesignificanttoolimprovements.Memcheckcannow<br> 3411 reporttheoriginofuninitialisedvalues,thethreadcheckers<br> 3412 HelgrindandDRDaremuchimproved,andwehaveanewexperimental<br> 3413 tool,exp-Ptrcheck,whichisabletodetectoverrunsofstackand<br> 3414 globalarrays.Indetail:<br> 3415 <br> 3416 *Memcheckisnowabletotracktheoriginofuninitialisedvalues.<br> 3417 Whenitreportsanuninitialisedvalueerror,itwilltrytoshow<br> 3418 theoriginofthevalue,aseitheraheaporstackallocation.<br> 3419 Origintrackingisexpensiveandsoisnotenabledbydefault.To<br> 3420 useit,specify--track-origins=yes.Memcheck'sspeedwillbe<br> 3421 essentiallyhalved,andmemoryusagewillbesignificantly<br> 3422 increased.Neverthelessitcandrasticallyreducetheeffort<br> 3423 requiredtoidentifytherootcauseofuninitialisedvalueerrors,<br> 3424 andsoisoftenaprogrammerproductivitywin,despiterunningmore<br> 3425 slowly.<br> 3426 <br> 3427 *Aversion(1.4.0)oftheValkyrieGUI,thatworkswithMemcheckin<br> 3428 3.4.0,willbereleasedshortly.<br> 3429 <br> 3430 *Helgrind'sracedetectionalgorithmhasbeencompletelyredesigned<br> 3431 andreimplemented,toaddressusabilityandscalabilityconcerns:<br> 3432 <br> 3433 -Thenewalgorithmhasalowerfalse-errorrate:itismuchless<br> 3434 likelytoreportracesthatdonotreallyexist.<br> 3435 <br> 3436 -Helgrindwilldisplayfullcallstacksforbothaccessesinvolved<br> 3437 inarace.Thismakesiteasiertoidentifytherootcausesof<br> 3438 races.<br> 3439 <br> 3440 -Limitationsonthesizeofprogramthatcanrunhavebeenremoved.<br> 3441 <br> 3442 -Performancehasbeenmodestlyimproved,althoughthatisvery<br> 3443 workload-dependent.<br> 3444 <br> 3445 -DirectsupportforQt4threadinghasbeenadded.<br> 3446 <br> 3447 -pthread_barriersarenowdirectlysupported.<br> 3448 <br> 3449 -HelgrindworkswellonallsupportedLinuxtargets.<br> 3450 <br> 3451 *TheDRDthreaddebuggingtoolhasseenmajorimprovements:<br> 3452 <br> 3453 -Greatlyimprovedperformanceandsignificantlyreducedmemory<br> 3454 usage.<br> 3455 <br> 3456 -Supportforseveralmajorthreadinglibraries(Boost.Thread,Qt4,<br> 3457 glib,OpenMP)hasbeenadded.<br> 3458 <br> 3459 -Supportforatomicinstructions,POSIXsemaphores,barriersand<br> 3460 reader-writerlockshasbeenadded.<br> 3461 <br> 3462 -WorksnowonPowerPCCPUstoo.<br> 3463 <br> 3464 -Addedsupportforprintingthreadstackusageatthreadexittime.<br> 3465 <br> 3466 -Addedsupportfordebugginglockcontention.<br> 3467 <br> 3468 -AddedamanualforDrd.<br> 3469 <br> 3470 *Anewexperimentaltool,exp-Ptrcheck,hasbeenadded.Ptrcheck<br> 3471 checksformisusesofpointers.Inthatsenseitisabitlike<br> 3472 Memcheck.However,PtrcheckcandothingsMemcheckcan't:itcan<br> 3473 detectoverrunsofstackandglobalarrays,itcandetect<br> 3474 arbitrarilyfarout-of-boundsaccessestoheapblocks,anditcan<br> 3475 detectaccessesheapblocksthathavebeenfreedaverylongtime<br> 3476 ago(millionsofblocksinthepast).<br> 3477 <br> 3478 Ptrcheckcurrentlyworksonlyonx86-linuxandamd64-linux.Touse<br> 3479 it,use--tool=exp-ptrcheck.Asimplemanualisprovided,aspart<br> 3480 ofthemainValgrinddocumentation.Asthisisanexperimental<br> 3481 tool,wewouldbeparticularlyinterestedinhearingaboutyour<br> 3482 experienceswithit.<br> 3483 <br> 3484 *exp-Omega,anexperimentalinstantaneousleak-detectingtool,isno<br> 3485 longerbuiltbydefault,althoughthecoderemainsintherepository<br> 3486 andthetarball.Thisisduetothreefactors:aperceivedlackof<br> 3487 users,alackofmaintenance,andconcernsthatitmaynotbe<br> 3488 possibletoachievereliableoperationusingtheexistingdesign.<br> 3489 <br> 3490 *Asusual,supportforthelatestLinuxdistrosandtoolchain<br> 3491 componentshasbeenadded.ItshouldworkwellonFedoraCore10,<br> 3492 OpenSUSE11.1andUbuntu8.10.gcc-4.4(initscurrentpre-release<br> 3493 state)issupported,asisglibc-2.9.TheC++demanglerhasbeen<br> 3494 updatedsoastoworkwellwithC++compiledbyeventhemostrecent<br> 3495 g++'s.<br> 3496 <br> 3497 *Youcannowuseframe-levelwildcardsinsuppressions.Thiswasa<br> 3498 frequently-requestedenhancement.Aline"..."inasuppressionnow<br> 3499 matcheszeroormoreframes.Thismakesiteasiertowrite<br> 3500 suppressionswhicharepreciseyetinsensitivetochangesin<br> 3501 inliningbehaviour.<br> 3502 <br> 3503 *3.4.0addssupportonx86/amd64fortheSSSE3instructionset.<br> 3504 <br> 3505 *VerybasicsupportforIBMPower6hasbeenadded(64-bitprocessesonly).<br> 3506 <br> 3507 *Valgrindisnowcross-compilable.Forexample,itispossibleto<br> 3508 crosscompileValgrindonanx86/amd64-linuxhost,sothatitruns<br> 3509 onappc32/64-linuxtarget.<br> 3510 <br> 3511 *Youcansetthemainthread'sstacksizeatstartupusingthe<br> 3512 new--main-stacksize=flag(subjectofcoursetoulimitsettings).<br> 3513 Thisisusefulforrunningappsthatneedalotofstackspace.<br> 3514 <br> 3515 *Thelimitationthatyoucan'tuse--trace-children=yestogether<br> 3516 with--db-attach=yeshasbeenremoved.<br> 3517 <br> 3518 *Thefollowingbugshavebeenfixed.Notethat"n-i-bz"standsfor<br> 3519 "notinbugzilla"--thatis,abugthatwasreportedtousbut<br> 3520 nevergotabugzillaentry.Weencourageyoutofilebugsin<br> 3521 bugzilla(http://bugs.kde.org/enter_valgrind_bug.cgi)ratherthan<br> 3522 mailingthedevelopers(ormailinglists)directly.<br> 3523 <br> 3524 n-i-bzMakereturntypesforsomeclientrequests64-bitclean<br> 3525 n-i-bzglibc2.9support<br> 3526 n-i-bzignoreunsafe.valgrindrc's(CVE-2008-4865)<br> 3527 n-i-bzMPI_Init(0,0)isvalidbutlibmpiwrap.csegfaults<br> 3528 n-i-bzBuildinginanenvwithoutgdbgivesbogusgdbattach<br> 3529 92456Tracingtheoriginofuninitialisedmemory<br> 3530 106497ValgrinddoesnotdemanglesomeC++templatesymbols<br> 3531 162222==106497<br> 3532 151612Suppressionwith"..."(frame-levelwildcardsin.suppfiles)<br> 3533 156404UnabletostartoocalcundermemcheckonopenSUSE10.3(64-bit)<br> 3534 159285unhandledsyscall:25(stime,onx86-linux)<br> 3535 159452unhandledioctl0x8B01on"valgrindiwconfig"<br> 3536 160954ppcbuildofvalgrindcrasheswithillegalinstruction(isel)<br> 3537 160956mallinfoimplementation,w/patch<br> 3538 162092Valgrindfailstostartgnome-system-monitor<br> 3539 162819malloc_free_filltestdoesn'tpassonglibc2.8x86<br> 3540 163794assertionfailurewith"--track-origins=yes"<br> 3541 163933sigcontext.errand.trapnomustbesettogether<br> 3542 163955removeconstraint!(--db-attach=yes&&--trace-children=yes)<br> 3543 164476Missingkernelmoduleloadingsystemcalls<br> 3544 164669SVNregression:mmap()dropsposixfilelocks<br> 3545 166581Callgrindoutputcorruptionwhenprogramforks<br> 3546 167288PatchfileformissingsystemcallsonCellBE<br> 3547 168943unsupportedscasinstructionpentium<br> 3548 171645Unrecognisedinstruction(MOVSD,non-binutilsencoding)<br> 3549 172417x86->IR:0x82...<br> 3550 172563amd64->IR:0xD90xF5-fprem1<br> 3551 173099.ldslinkerscriptgenerationerror<br> 3552 173177[x86_64]syscalls:125/126/179(capget/capset/quotactl)<br> 3553 173751amd64->IR:0x480xF0x6F0x45(evenmoreredundantprefixes)<br> 3554 174532==173751<br> 3555 174908--log-filevaluenotexpandedcorrectlyforcorefile<br> 3556 175044Addlookup_dcookieforamd64<br> 3557 175150x86->IR:0xF20xF0x110xC1(movssnon-binutilsencoding)<br> 3558 <br> 3559 Developer-visiblechanges:<br> 3560 <br> 3561 *Valgrind'sdebug-inforeadingmachineryhasbeenmajorlyoverhauled.<br> 3562 ItcannowcorrectlyestablishtheaddressesforELFdatasymbols,<br> 3563 whichissomethingthathasneverworkedproperlybeforenow.<br> 3564 <br> 3565 Also,ValgrindcannowreadDWARF3typeandlocationinformationfor<br> 3566 stackandglobalvariables.Thismakesitpossibletousethe<br> 3567 frameworktobuildtoolsthatrelyonknowingthetypeandlocations<br> 3568 ofstackandglobalvariables,forexampleexp-Ptrcheck.<br> 3569 <br> 3570 Readingofsuchinformationisdisabledbydefault,becausemost<br> 3571 toolsdon'tneedit,andbecauseitisexpensiveinspaceandtime.<br> 3572 However,youcanforceValgrindtoreadit,usingthe<br> 3573 --read-var-info=yesflag.Memcheck,HelgrindandDRDareableto<br> 3574 makeuseofsuchinformation,ifpresent,toprovidesource-level<br> 3575 descriptionsofdataaddressesintheerrormessagestheycreate.<br> 3576 <br> 3577 (3.4.0.RC1:24Dec2008,vexr1878,valgrindr8882).<br> 3578 (3.4.0:3Jan2009,vexr1878,valgrindr8899).<br> 3579 <br> 3580 </p></div> 3581 </div> 3582 <div> 3583 <br><table class="nav" width="100%" cellspacing="3" cellpadding="2" border="0" summary="Navigation footer"> 3584 <tr> 3585 <td rowspan="2" width="40%" align="left"> 3586 <a accesskey="p" href="dist.authors.html"><<1.AUTHORS</a></td> 3587 <td width="20%" align="center"><a accesskey="u" href="dist.html">Up</a></td> 3588 <td rowspan="2" width="40%" align="right"><a accesskey="n" href="dist.news.old.html">3.OLDER NEWS>></a> 3589 </td> 3590 </tr> 3591 <tr><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td></tr> 3592 </table> 3593 </div> 3594 </body> 3595 </html> 3596