Home | History | Annotate | Download | only in tests
      1 <?xml version="1.0"?>
      2 
      3 <valgrindoutput>
      4 
      5 <protocolversion>4</protocolversion>
      6 <protocoltool>helgrind</protocoltool>
      7 
      8 <preamble>
      9   <line>Helgrind, a thread error detector</line>
     10   <line>Copyright (C) XXXX-YYYY, and GNU GPL'd, by OpenWorks LLP et al.</line>
     11   <line>Using Valgrind-X.Y.X and LibVEX; rerun with -h for copyright info</line>
     12   <line>Command: ./tc06_two_races</line>
     13 </preamble>
     14 
     15 <pid>...</pid>
     16 <ppid>...</ppid>
     17 <tool>helgrind</tool>
     18 
     19 <args>
     20   <vargv>
     21     <exe>...</exe>
     22     <arg>--command-line-only=yes</arg>
     23     <arg>--memcheck:leak-check=no</arg>
     24     <arg>--tool=helgrind</arg>
     25     <arg>--read-var-info=yes</arg>
     26     <arg>--xml=yes</arg>
     27     <arg>--xml-fd=2</arg>
     28     <arg>--log-file=/dev/null</arg>
     29   </vargv>
     30   <argv>
     31     <exe>...</exe>
     32   </argv>
     33 </args>
     34 
     35 <status>
     36   <state>RUNNING</state>
     37   <time>...</time>
     38 </status>
     39 
     40 <announcethread>
     41   <hthreadid>1</hthreadid>
     42   <isrootthread></isrootthread>
     43 </announcethread>
     44 
     45 <announcethread>
     46   <hthreadid>2</hthreadid>
     47   <stack>
     48     <frame>...</frame>
     49     <frame>
     50       <ip>0x........</ip>
     51       <obj>...</obj>
     52       <fn>pthread_create_WRK</fn>
     53       <dir>...</dir>
     54       <file>hg_intercepts.c</file>
     55       <line>...</line>
     56     </frame>
     57     <frame>
     58       <ip>0x........</ip>
     59       <obj>...</obj>
     60       <fn>pthread_create@*</fn>
     61       <dir>...</dir>
     62       <file>hg_intercepts.c</file>
     63       <line>...</line>
     64     </frame>
     65     <frame>
     66       <ip>0x........</ip>
     67       <obj>...</obj>
     68       <fn>main</fn>
     69       <dir>...</dir>
     70       <file>tc06_two_races.c</file>
     71       <line>26</line>
     72     </frame>
     73   </stack>
     74 </announcethread>
     75 
     76 <error>
     77   <unique>...</unique>
     78   <tid>...</tid>
     79   <kind>Race</kind>
     80   <xwhat>
     81     <text>Possible data race during read of size 4 at 0x........ by thread #x</text>
     82     <hthreadid>1</hthreadid>
     83   </xwhat>
     84   <stack>
     85     <frame>
     86       <ip>0x........</ip>
     87       <obj>...</obj>
     88       <fn>main</fn>
     89       <dir>...</dir>
     90       <file>tc06_two_races.c</file>
     91       <line>31</line>
     92     </frame>
     93   </stack>
     94   <xauxwhat>
     95     <text>This conflicts with a previous write of size 4 by thread #x</text>
     96     <hthreadid>2</hthreadid>
     97   </xauxwhat>
     98   <stack>
     99     <frame>
    100       <ip>0x........</ip>
    101       <obj>...</obj>
    102       <fn>child_fn</fn>
    103       <dir>...</dir>
    104       <file>tc06_two_races.c</file>
    105       <line>14</line>
    106     </frame>
    107     <frame>
    108       <ip>0x........</ip>
    109       <obj>...</obj>
    110       <fn>mythread_wrapper</fn>
    111       <dir>...</dir>
    112       <file>hg_intercepts.c</file>
    113       <line>...</line>
    114     </frame>
    115     <frame>...</frame>
    116   </stack>
    117   <auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
    118   <xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>9</line> </xauxwhat>
    119 </error>
    120 
    121 <error>
    122   <unique>...</unique>
    123   <tid>...</tid>
    124   <kind>Race</kind>
    125   <xwhat>
    126     <text>Possible data race during write of size 4 at 0x........ by thread #x</text>
    127     <hthreadid>1</hthreadid>
    128   </xwhat>
    129   <stack>
    130     <frame>
    131       <ip>0x........</ip>
    132       <obj>...</obj>
    133       <fn>main</fn>
    134       <dir>...</dir>
    135       <file>tc06_two_races.c</file>
    136       <line>31</line>
    137     </frame>
    138   </stack>
    139   <xauxwhat>
    140     <text>This conflicts with a previous write of size 4 by thread #x</text>
    141     <hthreadid>2</hthreadid>
    142   </xauxwhat>
    143   <stack>
    144     <frame>
    145       <ip>0x........</ip>
    146       <obj>...</obj>
    147       <fn>child_fn</fn>
    148       <dir>...</dir>
    149       <file>tc06_two_races.c</file>
    150       <line>14</line>
    151     </frame>
    152     <frame>
    153       <ip>0x........</ip>
    154       <obj>...</obj>
    155       <fn>mythread_wrapper</fn>
    156       <dir>...</dir>
    157       <file>hg_intercepts.c</file>
    158       <line>...</line>
    159     </frame>
    160     <frame>...</frame>
    161   </stack>
    162   <auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
    163   <xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>9</line> </xauxwhat>
    164 </error>
    165 
    166 <error>
    167   <unique>...</unique>
    168   <tid>...</tid>
    169   <kind>Race</kind>
    170   <xwhat>
    171     <text>Possible data race during read of size 4 at 0x........ by thread #x</text>
    172     <hthreadid>1</hthreadid>
    173   </xwhat>
    174   <stack>
    175     <frame>
    176       <ip>0x........</ip>
    177       <obj>...</obj>
    178       <fn>main</fn>
    179       <dir>...</dir>
    180       <file>tc06_two_races.c</file>
    181       <line>35</line>
    182     </frame>
    183   </stack>
    184   <xauxwhat>
    185     <text>This conflicts with a previous write of size 4 by thread #x</text>
    186     <hthreadid>2</hthreadid>
    187   </xauxwhat>
    188   <stack>
    189     <frame>
    190       <ip>0x........</ip>
    191       <obj>...</obj>
    192       <fn>child_fn</fn>
    193       <dir>...</dir>
    194       <file>tc06_two_races.c</file>
    195       <line>18</line>
    196     </frame>
    197     <frame>
    198       <ip>0x........</ip>
    199       <obj>...</obj>
    200       <fn>mythread_wrapper</fn>
    201       <dir>...</dir>
    202       <file>hg_intercepts.c</file>
    203       <line>...</line>
    204     </frame>
    205     <frame>...</frame>
    206   </stack>
    207   <auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
    208   <xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>9</line> </xauxwhat>
    209 </error>
    210 
    211 <error>
    212   <unique>...</unique>
    213   <tid>...</tid>
    214   <kind>Race</kind>
    215   <xwhat>
    216     <text>Possible data race during write of size 4 at 0x........ by thread #x</text>
    217     <hthreadid>1</hthreadid>
    218   </xwhat>
    219   <stack>
    220     <frame>
    221       <ip>0x........</ip>
    222       <obj>...</obj>
    223       <fn>main</fn>
    224       <dir>...</dir>
    225       <file>tc06_two_races.c</file>
    226       <line>35</line>
    227     </frame>
    228   </stack>
    229   <xauxwhat>
    230     <text>This conflicts with a previous write of size 4 by thread #x</text>
    231     <hthreadid>2</hthreadid>
    232   </xauxwhat>
    233   <stack>
    234     <frame>
    235       <ip>0x........</ip>
    236       <obj>...</obj>
    237       <fn>child_fn</fn>
    238       <dir>...</dir>
    239       <file>tc06_two_races.c</file>
    240       <line>18</line>
    241     </frame>
    242     <frame>
    243       <ip>0x........</ip>
    244       <obj>...</obj>
    245       <fn>mythread_wrapper</fn>
    246       <dir>...</dir>
    247       <file>hg_intercepts.c</file>
    248       <line>...</line>
    249     </frame>
    250     <frame>...</frame>
    251   </stack>
    252   <auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
    253   <xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>9</line> </xauxwhat>
    254 </error>
    255 
    256 
    257 <status>
    258   <state>FINISHED</state>
    259   <time>...</time>
    260 </status>
    261 
    262 <errorcounts>...</errorcounts>
    263 
    264 <suppcounts>...</suppcounts>
    265 
    266 </valgrindoutput>
    267 
    268