Re: Threadsanitizer Detection on GM

Hongxu Chen <[email protected]> Mon, 25 Feb 2019 21:19:22 +0800
Newsgroups gmane.comp.video.graphicsmagick.bugs
Message-ID <CAJPBKOG-jLRbJrnkcxB7osPjicSosZhmDvJoQBueCDXBP0+KUA@mail.gmail.com>
--===============1951056728574339171==
Content-Type: multipart/alternative; boundary="0000000000009831250582b7cafc"

--0000000000009831250582b7cafc
Content-Type: text/plain; charset="UTF-8"

Sorry didn't notice the attachment size exceeds the allowed limit. Please
see gist link instead.
https://gist.github.com/HongxuChen/03ec5eb797af72609637fed77be86dfa

Best Regards,
Hongxu


On Mon, Feb 25, 2019 at 9:12 PM Hongxu Chen <[email protected]> wrote:

> Hi Bob,
>
>     Thanks for the update. I think your solution makes sense and
> ThreadSanitizer
> no longer reports on row_count and quantum_p.
>     It reports some others however (detailed reports are attached), but*
> I'm not *
> *quite sure whether they are false alarms*.
>     If the data races are real, they may be more relevant.
>     One case is the read/write of "y_start" inside DrawPolygonPrimitive.
> For example,
> at line 5112, there is a write:
>     y_start=(long) ceil(bounds.y1-0.5);
> and at line 5123 there is a read:
>     for (y=y_start; y <= y_stop; y++)
>
> So the essential is that whether "y_start" (and similarly others) is
> shared.
>
>
> WARNING: ThreadSanitizer: data race (pid=20260)
>   Read of size 8 at 0x7fff17ab0258 by thread T3:
>     #0 .omp_outlined..176
> /home/ubuntu/work/GM/GM-fixed/magick/render.c:5123:14 (gm+0x645f32)
>     #1 __kmp_invoke_microtask
> /home/ubuntu/work/openmp/openmp-4/final/runtime/src/z_Linux_asm.s:1399
> (libomp.so.5+0x7a292)
>
>   Previous write of size 8 at 0x7fff17ab0258 by main thread:
>     #0 DrawPolygonPrimitive
> */home/ubuntu/work/GM/GM-fixed/magick/render.c:5112*:14 (gm+0x641361)
>     #1 DrawPrimitive /home/ubuntu/work/GM/GM-fixed/magick/render.c:5782:15
> (gm+0x63f513)
>     #2 DrawImage /home/ubuntu/work/GM/GM-fixed/magick/render.c:4517:13
> (gm+0x6302c5)
>     #3 ReadMVGImage /home/ubuntu/work/GM/GM-fixed/coders/mvg.c:237:10
> (gm+0x8e7cb6)
>     #4 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13
> (gm+0x555242)
>     #5 ReadSVGImage /home/ubuntu/work/GM/GM-fixed/coders/svg.c:3944:13
> (gm+0x991986)
>     #6 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13
> (gm+0x555242)
>     #7 ConvertImageCommand
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:4362:22 (gm+0x4e203a)
>     #8 MagickCommand
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:8886:17 (gm+0x513492)
>     #9 GMCommandSingle
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:17408:10 (gm+0x539161)
>     #10 GMCommand /home/ubuntu/work/GM/GM-fixed/magick/command.c:17461:16
> (gm+0x538e05)
>     #11 main /home/ubuntu/work/GM/GM-fixed/utilities/gm.c:61:10
> (gm+0x4c220b)
>
>   Location is stack of main thread.
>
>   Thread T3 (tid=20264, running) created by main thread at:
>     #0 pthread_create <null> (gm+0x433446)
>     #1 __kmp_create_worker
> /home/ubuntu/work/openmp/openmp-4/final/runtime/src/z_Linux_util.cpp:958:14
> (libomp.so.5+0x6ef74)
>     #2 DrawPrimitive /home/ubuntu/work/GM/GM-fixed/magick/render.c:5782:15
> (gm+0x63f513)
>     #3 DrawImage /home/ubuntu/work/GM/GM-fixed/magick/render.c:4517:13
> (gm+0x6302c5)
>     #4 ReadMVGImage /home/ubuntu/work/GM/GM-fixed/coders/mvg.c:237:10
> (gm+0x8e7cb6)
>     #5 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13
> (gm+0x555242)
>     #6 ReadSVGImage /home/ubuntu/work/GM/GM-fixed/coders/svg.c:3944:13
> (gm+0x991986)
>     #7 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13
> (gm+0x555242)
>     #8 ConvertImageCommand
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:4362:22 (gm+0x4e203a)
>     #9 MagickCommand
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:8886:17 (gm+0x513492)
>     #10 GMCommandSingle
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:17408:10 (gm+0x539161)
>     #11 GMCommand /home/ubuntu/work/GM/GM-fixed/magick/command.c:17461:16
> (gm+0x538e05)
>     #12 main /home/ubuntu/work/GM/GM-fixed/utilities/gm.c:61:10
> (gm+0x4c220b)
> ...
> ...
> ...
> WARNING: ThreadSanitizer: data race (pid=20260)
>   Read of size 4 at 0x7b0800000170 by thread T3:
>     #0 AccessThreadViewData
> /home/ubuntu/work/GM/GM-fixed/magick/omp_data_view.c:181:3 (gm+0x5d2c0b)
>     #1 .omp_outlined..176
> /home/ubuntu/work/GM/GM-fixed/magick/render.c:5149:40 (gm+0x6461ed)
>     #2 __kmp_invoke_microtask
> /home/ubuntu/work/openmp/openmp-4/final/runtime/src/z_Linux_asm.s:1399
> (libomp.so.5+0x7a292)
>
>   Previous write of size 8 at 0x7b0800000170 by main thread:
>     #0 malloc <null> (gm+0x432acb)
>     #1 MagickMalloc */home/ubuntu/work/GM/GM-fixed/magick/memory.c:173*:10
> (gm+0x5cc2b7)
>     #2 AllocateThreadViewDataSet
> /home/ubuntu/work/GM/GM-fixed/magick/omp_data_view.c:88:12 (gm+0x5d25dd)
>     #3 DrawPolygonPrimitive
> /home/ubuntu/work/GM/GM-fixed/magick/render.c:4909:26 (gm+0x64024e)
>     #4 DrawPrimitive /home/ubuntu/work/GM/GM-fixed/magick/render.c:5782:15
> (gm+0x63f513)
>     #5 DrawImage /home/ubuntu/work/GM/GM-fixed/magick/render.c:4517:13
> (gm+0x6302c5)
>     #6 ReadMVGImage /home/ubuntu/work/GM/GM-fixed/coders/mvg.c:237:10
> (gm+0x8e7cb6)
>     #7 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13
> (gm+0x555242)
>     #8 ReadSVGImage /home/ubuntu/work/GM/GM-fixed/coders/svg.c:3944:13
> (gm+0x991986)
>     #9 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13
> (gm+0x555242)
>     #10 ConvertImageCommand
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:4362:22 (gm+0x4e203a)
>     #11 MagickCommand
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:8886:17 (gm+0x513492)
>     #12 GMCommandSingle
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:17408:10 (gm+0x539161)
>     #13 GMCommand /home/ubuntu/work/GM/GM-fixed/magick/command.c:17461:16
> (gm+0x538e05)
>     #14 main /home/ubuntu/work/GM/GM-fixed/utilities/gm.c:61:10
> (gm+0x4c220b)
>
>   Location is heap block of size 24 at 0x7b0800000160 allocated by main
> thread:
>     #0 malloc <null> (gm+0x432acb)
>     #1 MagickMalloc /home/ubuntu/work/GM/GM-fixed/magick/memory.c:173:10
> (gm+0x5cc2b7)
>     #2 AllocateThreadViewDataSet
> /home/ubuntu/work/GM/GM-fixed/magick/omp_data_view.c:88:12 (gm+0x5d25dd)
>     #3 DrawPolygonPrimitive
> /home/ubuntu/work/GM/GM-fixed/magick/render.c:4909:26 (gm+0x64024e)
>     #4 DrawPrimitive /home/ubuntu/work/GM/GM-fixed/magick/render.c:5782:15
> (gm+0x63f513)
>     #5 DrawImage /home/ubuntu/work/GM/GM-fixed/magick/render.c:4517:13
> (gm+0x6302c5)
>     #6 ReadMVGImage /home/ubuntu/work/GM/GM-fixed/coders/mvg.c:237:10
> (gm+0x8e7cb6)
>     #7 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13
> (gm+0x555242)
>     #8 ReadSVGImage /home/ubuntu/work/GM/GM-fixed/coders/svg.c:3944:13
> (gm+0x991986)
>     #9 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13
> (gm+0x555242)
>     #10 ConvertImageCommand
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:4362:22 (gm+0x4e203a)
>     #11 MagickCommand
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:8886:17 (gm+0x513492)
>     #12 GMCommandSingle
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:17408:10 (gm+0x539161)
>     #13 GMCommand /home/ubuntu/work/GM/GM-fixed/magick/command.c:17461:16
> (gm+0x538e05)
>     #14 main /home/ubuntu/work/GM/GM-fixed/utilities/gm.c:61:10
> (gm+0x4c220b)
>
>   Thread T3 (tid=20264, running) created by main thread at:
>     #0 pthread_create <null> (gm+0x433446)
>     #1 __kmp_create_worker
> /home/ubuntu/work/openmp/openmp-4/final/runtime/src/z_Linux_util.cpp:958:14
> (libomp.so.5+0x6ef74)
>     #2 DrawPrimitive /home/ubuntu/work/GM/GM-fixed/magick/render.c:5782:15
> (gm+0x63f513)
>     #3 DrawImage /home/ubuntu/work/GM/GM-fixed/magick/render.c:4517:13
> (gm+0x6302c5)
>     #4 ReadMVGImage /home/ubuntu/work/GM/GM-fixed/coders/mvg.c:237:10
> (gm+0x8e7cb6)
>     #5 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13
> (gm+0x555242)
>     #6 ReadSVGImage /home/ubuntu/work/GM/GM-fixed/coders/svg.c:3944:13
> (gm+0x991986)
>     #7 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13
> (gm+0x555242)
>     #8 ConvertImageCommand
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:4362:22 (gm+0x4e203a)
>     #9 MagickCommand
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:8886:17 (gm+0x513492)
>     #10 GMCommandSingle
> /home/ubuntu/work/GM/GM-fixed/magick/command.c:17408:10 (gm+0x539161)
>     #11 GMCommand /home/ubuntu/work/GM/GM-fixed/magick/command.c:17461:16
> (gm+0x538e05)
>     #12 main /home/ubuntu/work/GM/GM-fixed/utilities/gm.c:61:10
> (gm+0x4c220b)
>
> SUMMARY: ThreadSanitizer: data race
> /home/ubuntu/work/GM/GM-fixed/magick/omp_data_view.c:181:3 in
> AccessThreadViewData
> ==================
>
>     I will look into the use of OpenMP pragmas later to double check them.
>
> Best Regards,
> Hongxu
>
>
> On Sun, Feb 24, 2019 at 5:01 AM Bob Friesenhahn <
> [email protected]> wrote:
>
>> I have made updates which should address most issues related to the
>> progress monitor.  Please re-run your checks on the latest code.
>>
>> Thanks,
>>
>> Bob
>> --
>> Bob Friesenhahn
>> [email protected],
>> http://www.simplesystems.org/users/bfriesen/
>> GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/
>> Public Key,
>> http://www.simplesystems.org/users/bfriesen/public-key.txt
>>
>>
>> _______________________________________________
>> Graphicsmagick-bugs mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/graphicsmagick-bugs
>>
>

--0000000000009831250582b7cafc
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr">Sorry didn&#39;t notice the attachment si=
ze exceeds the allowed limit. Please see gist link instead.<div><a href=3D"=
https://gist.github.com/HongxuChen/03ec5eb797af72609637fed77be86dfa">https:=
//gist.github.com/HongxuChen/03ec5eb797af72609637fed77be86dfa</a></div><div=
><br clear=3D"all"><div><div dir=3D"ltr" class=3D"gmail_signature"><div dir=
=3D"ltr"><div><div dir=3D"ltr"><font color=3D"#313131" face=3D"Arial, sans-=
serif"><span style=3D"font-size:12px">Best Regards,</span></font><div><font=
 color=3D"#313131" face=3D"Arial, sans-serif"><span style=3D"font-size:12px=
">Hongxu</span></font></div></div></div></div></div></div><br></div></div><=
/div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">O=
n Mon, Feb 25, 2019 at 9:12 PM Hongxu Chen &lt;<a href=3D"mailto:leftcopy.c=
[email protected]">[email protected]</a>&gt; wrote:<br></div><blockquote cl=
ass=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid=
 rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div dir=3D"ltr"><div =
dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"=
ltr">Hi Bob,<div><br></div><div>=C2=A0 =C2=A0 Thanks for the update. I thin=
k your solution makes sense and ThreadSanitizer</div><div>no longer reports=
 on row_count and quantum_p.</div><div>=C2=A0 =C2=A0 It reports some others=
 however (detailed reports are attached), but<b> I&#39;m not=C2=A0</b></div=
><div><b>quite sure whether they are false alarms</b>.</div><div>=C2=A0 =C2=
=A0 If the data races are real, they may be more relevant.</div><div>=C2=A0=
 =C2=A0 One case is the read/write of &quot;y_start&quot; inside=C2=A0DrawP=
olygonPrimitive. For example,</div><div>at line 5112, there is a write:</di=
v><div>=C2=A0 =C2=A0=C2=A0y_start=3D(long) ceil(bounds.y1-0.5);</div><div>a=
nd at line 5123 there is a read:</div><div>=C2=A0 =C2=A0 for (y=3Dy_start; =
y &lt;=3D y_stop; y++)</div><div><br></div><div>So the essential is that wh=
ether &quot;y_start&quot; (and similarly others) is shared.</div><div><br><=
/div><div><br></div><div><div>WARNING: ThreadSanitizer: data race (pid=3D20=
260)</div><div>=C2=A0 Read of size 8 at 0x7fff17ab0258 by thread T3:</div><=
div>=C2=A0 =C2=A0 #0 .omp_outlined..176 /home/ubuntu/work/GM/GM-fixed/magic=
k/render.c:5123:14 (gm+0x645f32)</div><div>=C2=A0 =C2=A0 #1 __kmp_invoke_mi=
crotask /home/ubuntu/work/openmp/openmp-4/final/runtime/src/z_Linux_asm.s:1=
399 (libomp.so.5+0x7a292)</div><div><br></div><div>=C2=A0 Previous write of=
 size 8 at 0x7fff17ab0258 by main thread:</div><div>=C2=A0 =C2=A0 #0 DrawPo=
lygonPrimitive <b>/home/ubuntu/work/GM/GM-fixed/magick/render.c:5112</b>:14=
 (gm+0x641361)</div><div>=C2=A0 =C2=A0 #1 DrawPrimitive /home/ubuntu/work/G=
M/GM-fixed/magick/render.c:5782:15 (gm+0x63f513)</div><div>=C2=A0 =C2=A0 #2=
 DrawImage /home/ubuntu/work/GM/GM-fixed/magick/render.c:4517:13 (gm+0x6302=
c5)</div><div>=C2=A0 =C2=A0 #3 ReadMVGImage /home/ubuntu/work/GM/GM-fixed/c=
oders/mvg.c:237:10 (gm+0x8e7cb6)</div><div>=C2=A0 =C2=A0 #4 ReadImage /home=
/ubuntu/work/GM/GM-fixed/magick/constitute.c:1607:13 (gm+0x555242)</div><di=
v>=C2=A0 =C2=A0 #5 ReadSVGImage /home/ubuntu/work/GM/GM-fixed/coders/svg.c:=
3944:13 (gm+0x991986)</div><div>=C2=A0 =C2=A0 #6 ReadImage /home/ubuntu/wor=
k/GM/GM-fixed/magick/constitute.c:1607:13 (gm+0x555242)</div><div>=C2=A0 =
=C2=A0 #7 ConvertImageCommand /home/ubuntu/work/GM/GM-fixed/magick/command.=
c:4362:22 (gm+0x4e203a)</div><div>=C2=A0 =C2=A0 #8 MagickCommand /home/ubun=
tu/work/GM/GM-fixed/magick/command.c:8886:17 (gm+0x513492)</div><div>=C2=A0=
 =C2=A0 #9 GMCommandSingle /home/ubuntu/work/GM/GM-fixed/magick/command.c:1=
7408:10 (gm+0x539161)</div><div>=C2=A0 =C2=A0 #10 GMCommand /home/ubuntu/wo=
rk/GM/GM-fixed/magick/command.c:17461:16 (gm+0x538e05)</div><div>=C2=A0 =C2=
=A0 #11 main /home/ubuntu/work/GM/GM-fixed/utilities/gm.c:61:10 (gm+0x4c220=
b)</div><div><br></div><div>=C2=A0 Location is stack of main thread.</div><=
div><br></div><div>=C2=A0 Thread T3 (tid=3D20264, running) created by main =
thread at:</div><div>=C2=A0 =C2=A0 #0 pthread_create &lt;null&gt; (gm+0x433=
446)</div><div>=C2=A0 =C2=A0 #1 __kmp_create_worker /home/ubuntu/work/openm=
p/openmp-4/final/runtime/src/z_Linux_util.cpp:958:14 (libomp.so.5+0x6ef74)<=
/div><div>=C2=A0 =C2=A0 #2 DrawPrimitive /home/ubuntu/work/GM/GM-fixed/magi=
ck/render.c:5782:15 (gm+0x63f513)</div><div>=C2=A0 =C2=A0 #3 DrawImage /hom=
e/ubuntu/work/GM/GM-fixed/magick/render.c:4517:13 (gm+0x6302c5)</div><div>=
=C2=A0 =C2=A0 #4 ReadMVGImage /home/ubuntu/work/GM/GM-fixed/coders/mvg.c:23=
7:10 (gm+0x8e7cb6)</div><div>=C2=A0 =C2=A0 #5 ReadImage /home/ubuntu/work/G=
M/GM-fixed/magick/constitute.c:1607:13 (gm+0x555242)</div><div>=C2=A0 =C2=
=A0 #6 ReadSVGImage /home/ubuntu/work/GM/GM-fixed/coders/svg.c:3944:13 (gm+=
0x991986)</div><div>=C2=A0 =C2=A0 #7 ReadImage /home/ubuntu/work/GM/GM-fixe=
d/magick/constitute.c:1607:13 (gm+0x555242)</div><div>=C2=A0 =C2=A0 #8 Conv=
ertImageCommand /home/ubuntu/work/GM/GM-fixed/magick/command.c:4362:22 (gm+=
0x4e203a)</div><div>=C2=A0 =C2=A0 #9 MagickCommand /home/ubuntu/work/GM/GM-=
fixed/magick/command.c:8886:17 (gm+0x513492)</div><div>=C2=A0 =C2=A0 #10 GM=
CommandSingle /home/ubuntu/work/GM/GM-fixed/magick/command.c:17408:10 (gm+0=
x539161)</div><div>=C2=A0 =C2=A0 #11 GMCommand /home/ubuntu/work/GM/GM-fixe=
d/magick/command.c:17461:16 (gm+0x538e05)</div><div>=C2=A0 =C2=A0 #12 main =
/home/ubuntu/work/GM/GM-fixed/utilities/gm.c:61:10 (gm+0x4c220b)</div><div>=
...</div></div><div>...</div><div>...</div><div><div>WARNING: ThreadSanitiz=
er: data race (pid=3D20260)</div><div>=C2=A0 Read of size 4 at 0x7b08000001=
70 by thread T3:</div><div>=C2=A0 =C2=A0 #0 AccessThreadViewData /home/ubun=
tu/work/GM/GM-fixed/magick/omp_data_view.c:181:3 (gm+0x5d2c0b)</div><div>=
=C2=A0 =C2=A0 #1 .omp_outlined..176 /home/ubuntu/work/GM/GM-fixed/magick/re=
nder.c:5149:40 (gm+0x6461ed)</div><div>=C2=A0 =C2=A0 #2 __kmp_invoke_microt=
ask /home/ubuntu/work/openmp/openmp-4/final/runtime/src/z_Linux_asm.s:1399 =
(libomp.so.5+0x7a292)</div><div><br></div><div>=C2=A0 Previous write of siz=
e 8 at 0x7b0800000170 by main thread:</div><div>=C2=A0 =C2=A0 #0 malloc &lt=
;null&gt; (gm+0x432acb)</div><div>=C2=A0 =C2=A0 #1 MagickMalloc <b>/home/ub=
untu/work/GM/GM-fixed/magick/memory.c:173</b>:10 (gm+0x5cc2b7)</div><div>=
=C2=A0 =C2=A0 #2 AllocateThreadViewDataSet /home/ubuntu/work/GM/GM-fixed/ma=
gick/omp_data_view.c:88:12 (gm+0x5d25dd)</div><div>=C2=A0 =C2=A0 #3 DrawPol=
ygonPrimitive /home/ubuntu/work/GM/GM-fixed/magick/render.c:4909:26 (gm+0x6=
4024e)</div><div>=C2=A0 =C2=A0 #4 DrawPrimitive /home/ubuntu/work/GM/GM-fix=
ed/magick/render.c:5782:15 (gm+0x63f513)</div><div>=C2=A0 =C2=A0 #5 DrawIma=
ge /home/ubuntu/work/GM/GM-fixed/magick/render.c:4517:13 (gm+0x6302c5)</div=
><div>=C2=A0 =C2=A0 #6 ReadMVGImage /home/ubuntu/work/GM/GM-fixed/coders/mv=
g.c:237:10 (gm+0x8e7cb6)</div><div>=C2=A0 =C2=A0 #7 ReadImage /home/ubuntu/=
work/GM/GM-fixed/magick/constitute.c:1607:13 (gm+0x555242)</div><div>=C2=A0=
 =C2=A0 #8 ReadSVGImage /home/ubuntu/work/GM/GM-fixed/coders/svg.c:3944:13 =
(gm+0x991986)</div><div>=C2=A0 =C2=A0 #9 ReadImage /home/ubuntu/work/GM/GM-=
fixed/magick/constitute.c:1607:13 (gm+0x555242)</div><div>=C2=A0 =C2=A0 #10=
 ConvertImageCommand /home/ubuntu/work/GM/GM-fixed/magick/command.c:4362:22=
 (gm+0x4e203a)</div><div>=C2=A0 =C2=A0 #11 MagickCommand /home/ubuntu/work/=
GM/GM-fixed/magick/command.c:8886:17 (gm+0x513492)</div><div>=C2=A0 =C2=A0 =
#12 GMCommandSingle /home/ubuntu/work/GM/GM-fixed/magick/command.c:17408:10=
 (gm+0x539161)</div><div>=C2=A0 =C2=A0 #13 GMCommand /home/ubuntu/work/GM/G=
M-fixed/magick/command.c:17461:16 (gm+0x538e05)</div><div>=C2=A0 =C2=A0 #14=
 main /home/ubuntu/work/GM/GM-fixed/utilities/gm.c:61:10 (gm+0x4c220b)</div=
><div><br></div><div>=C2=A0 Location is heap block of size 24 at 0x7b080000=
0160 allocated by main thread:</div><div>=C2=A0 =C2=A0 #0 malloc &lt;null&g=
t; (gm+0x432acb)</div><div>=C2=A0 =C2=A0 #1 MagickMalloc /home/ubuntu/work/=
GM/GM-fixed/magick/memory.c:173:10 (gm+0x5cc2b7)</div><div>=C2=A0 =C2=A0 #2=
 AllocateThreadViewDataSet /home/ubuntu/work/GM/GM-fixed/magick/omp_data_vi=
ew.c:88:12 (gm+0x5d25dd)</div><div>=C2=A0 =C2=A0 #3 DrawPolygonPrimitive /h=
ome/ubuntu/work/GM/GM-fixed/magick/render.c:4909:26 (gm+0x64024e)</div><div=
>=C2=A0 =C2=A0 #4 DrawPrimitive /home/ubuntu/work/GM/GM-fixed/magick/render=
.c:5782:15 (gm+0x63f513)</div><div>=C2=A0 =C2=A0 #5 DrawImage /home/ubuntu/=
work/GM/GM-fixed/magick/render.c:4517:13 (gm+0x6302c5)</div><div>=C2=A0 =C2=
=A0 #6 ReadMVGImage /home/ubuntu/work/GM/GM-fixed/coders/mvg.c:237:10 (gm+0=
x8e7cb6)</div><div>=C2=A0 =C2=A0 #7 ReadImage /home/ubuntu/work/GM/GM-fixed=
/magick/constitute.c:1607:13 (gm+0x555242)</div><div>=C2=A0 =C2=A0 #8 ReadS=
VGImage /home/ubuntu/work/GM/GM-fixed/coders/svg.c:3944:13 (gm+0x991986)</d=
iv><div>=C2=A0 =C2=A0 #9 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/con=
stitute.c:1607:13 (gm+0x555242)</div><div>=C2=A0 =C2=A0 #10 ConvertImageCom=
mand /home/ubuntu/work/GM/GM-fixed/magick/command.c:4362:22 (gm+0x4e203a)</=
div><div>=C2=A0 =C2=A0 #11 MagickCommand /home/ubuntu/work/GM/GM-fixed/magi=
ck/command.c:8886:17 (gm+0x513492)</div><div>=C2=A0 =C2=A0 #12 GMCommandSin=
gle /home/ubuntu/work/GM/GM-fixed/magick/command.c:17408:10 (gm+0x539161)</=
div><div>=C2=A0 =C2=A0 #13 GMCommand /home/ubuntu/work/GM/GM-fixed/magick/c=
ommand.c:17461:16 (gm+0x538e05)</div><div>=C2=A0 =C2=A0 #14 main /home/ubun=
tu/work/GM/GM-fixed/utilities/gm.c:61:10 (gm+0x4c220b)</div><div><br></div>=
<div>=C2=A0 Thread T3 (tid=3D20264, running) created by main thread at:</di=
v><div>=C2=A0 =C2=A0 #0 pthread_create &lt;null&gt; (gm+0x433446)</div><div=
>=C2=A0 =C2=A0 #1 __kmp_create_worker /home/ubuntu/work/openmp/openmp-4/fin=
al/runtime/src/z_Linux_util.cpp:958:14 (libomp.so.5+0x6ef74)</div><div>=C2=
=A0 =C2=A0 #2 DrawPrimitive /home/ubuntu/work/GM/GM-fixed/magick/render.c:5=
782:15 (gm+0x63f513)</div><div>=C2=A0 =C2=A0 #3 DrawImage /home/ubuntu/work=
/GM/GM-fixed/magick/render.c:4517:13 (gm+0x6302c5)</div><div>=C2=A0 =C2=A0 =
#4 ReadMVGImage /home/ubuntu/work/GM/GM-fixed/coders/mvg.c:237:10 (gm+0x8e7=
cb6)</div><div>=C2=A0 =C2=A0 #5 ReadImage /home/ubuntu/work/GM/GM-fixed/mag=
ick/constitute.c:1607:13 (gm+0x555242)</div><div>=C2=A0 =C2=A0 #6 ReadSVGIm=
age /home/ubuntu/work/GM/GM-fixed/coders/svg.c:3944:13 (gm+0x991986)</div><=
div>=C2=A0 =C2=A0 #7 ReadImage /home/ubuntu/work/GM/GM-fixed/magick/constit=
ute.c:1607:13 (gm+0x555242)</div><div>=C2=A0 =C2=A0 #8 ConvertImageCommand =
/home/ubuntu/work/GM/GM-fixed/magick/command.c:4362:22 (gm+0x4e203a)</div><=
div>=C2=A0 =C2=A0 #9 MagickCommand /home/ubuntu/work/GM/GM-fixed/magick/com=
mand.c:8886:17 (gm+0x513492)</div><div>=C2=A0 =C2=A0 #10 GMCommandSingle /h=
ome/ubuntu/work/GM/GM-fixed/magick/command.c:17408:10 (gm+0x539161)</div><d=
iv>=C2=A0 =C2=A0 #11 GMCommand /home/ubuntu/work/GM/GM-fixed/magick/command=
.c:17461:16 (gm+0x538e05)</div><div>=C2=A0 =C2=A0 #12 main /home/ubuntu/wor=
k/GM/GM-fixed/utilities/gm.c:61:10 (gm+0x4c220b)</div><div><br></div><div>S=
UMMARY: ThreadSanitizer: data race /home/ubuntu/work/GM/GM-fixed/magick/omp=
_data_view.c:181:3 in AccessThreadViewData</div><div>=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D</div></div><div><br></div><div>=C2=A0 =C2=
=A0 I will look into the use of OpenMP pragmas later to double check them.<=
/div><div><br></div><div><div><div dir=3D"ltr" class=3D"gmail-m_-2573467677=
221858530gmail-m_8677950242933848932gmail_signature"><div dir=3D"ltr"><div>=
<div dir=3D"ltr"><font color=3D"#313131" face=3D"Arial, sans-serif"><span s=
tyle=3D"font-size:12px">Best Regards,</span></font><div><font color=3D"#313=
131" face=3D"Arial, sans-serif"><span style=3D"font-size:12px">Hongxu</span=
></font></div></div></div></div></div></div><br></div></div></div></div></d=
iv></div></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gma=
il_attr">On Sun, Feb 24, 2019 at 5:01 AM Bob Friesenhahn &lt;<a href=3D"mai=
lto:[email protected]" target=3D"_blank">[email protected].=
tx.us</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"ma=
rgin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:=
1ex">I have made updates which should address most issues related to the <b=
r>
progress monitor.=C2=A0 Please re-run your checks on the latest code.<br>
<br>
Thanks,<br>
<br>
Bob<br>
-- <br>
Bob Friesenhahn<br>
<a href=3D"mailto:[email protected]" target=3D"_blank">bfriesen@=
simple.dallas.tx.us</a>, <a href=3D"http://www.simplesystems.org/users/bfri=
esen/" rel=3D"noreferrer" target=3D"_blank">http://www.simplesystems.org/us=
ers/bfriesen/</a><br>
GraphicsMagick Maintainer,=C2=A0 =C2=A0 <a href=3D"http://www.GraphicsMagic=
k.org/" rel=3D"noreferrer" target=3D"_blank">http://www.GraphicsMagick.org/=
</a><br>
Public Key,=C2=A0 =C2=A0 =C2=A0<a href=3D"http://www.simplesystems.org/user=
s/bfriesen/public-key.txt" rel=3D"noreferrer" target=3D"_blank">http://www.=
simplesystems.org/users/bfriesen/public-key.txt</a><br>
<br>
<br>
_______________________________________________<br>
Graphicsmagick-bugs mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_bla=
nk">[email protected]</a><br>
<a href=3D"https://lists.sourceforge.net/lists/listinfo/graphicsmagick-bugs=
" rel=3D"noreferrer" target=3D"_blank">https://lists.sourceforge.net/lists/=
listinfo/graphicsmagick-bugs</a><br>
</blockquote></div>
</div>
</blockquote></div>

--0000000000009831250582b7cafc--


--===============1951056728574339171==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============1951056728574339171==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Graphicsmagick-bugs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/graphicsmagick-bugs

--===============1951056728574339171==--