From Valgrind manual (pragraph 7.5, http://valgrind.org/docs/manual/hg-manual.html):

Make sure your application, and all the libraries it uses, use the POSIX threading primitives.
Helgrind needs to be able to see all events pertaining to thread creation, exit, locking and other
synchronisation events. To do so it intercepts many POSIX pthreads functions.

Do not roll your own threading primitives (mutexes, etc) from combinations of the Linux futex
syscall, atomic counters, etc. These throw Helgrind's internal what's-going-on models way off
course and will give bogus results.

The point is, even if our custom implementation of semaphores is correct, hellgring wont be able to tell ;-)

@alja and @osschar did you guys stress tested the caching proxy with condvar or just checked with hellgrind? if its just hellgrind maybe it would be worth to do the stress test to see if the crashes in XrdFileCache::IO::SetInput() really go away?


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/xrootd/xrootd","title":"xrootd/xrootd","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/xrootd/xrootd"}},"updates":{"snippets":[{"icon":"PERSON","message":"@simonmichal in #404: From Valgrind manual (pragraph 7.5, http://valgrind.org/docs/manual/hg-manual.html):\r\n\r\n\u003e Make sure your application, and all the libraries it uses, use the POSIX threading primitives. \r\n\u003e Helgrind needs to be able to see all events pertaining to thread creation, exit, locking and other \r\n\u003e synchronisation events. To do so it intercepts many POSIX pthreads functions.\r\n\r\n\u003e Do not roll your own threading primitives (mutexes, etc) from combinations of the Linux futex \r\n\u003e syscall, atomic counters, etc. These throw Helgrind's internal what's-going-on models way off \r\n\u003e course and will give bogus results.\r\n\r\nThe point is, even if our custom implementation of semaphores is correct, hellgring wont be able to tell ;-)\r\n\r\n@alja and @osschar did you guys stress tested the caching proxy with condvar or just checked with hellgrind? if its just hellgrind maybe it would be worth to do the stress test to see if the crashes in XrdFileCache::IO::SetInput() really go away?"}],"action":{"name":"View Issue","url":"https://github.com/xrootd/xrootd/issues/404#issuecomment-241343614"}}}

Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1