[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-2d-dev
Subject: Re: [OpenJDK 2D-Dev] RFR 8195615 : libsplashscreen linux ppc64le build error after libpng update - w
From: "Doerr, Martin" <martin.doerr () sap ! com>
Date: 2018-01-18 9:28:16
Message-ID: 08465e0a6f6f4c45a2706194ae7987b6 () sap ! com
[Download RAW message or body]
Hi Matthias,
thanks for fixing. Looks good.
Reviewed and pushed to jdk10.
Best regards,
Martin
From: Baesken, Matthias
Sent: Donnerstag, 18. Januar 2018 07:53
To: Phil Race <philip.race@oracle.com>; 2d-dev@openjdk.java.net
Cc: Doerr, Martin <martin.doerr@sap.com>; Simonis, Volker <volker.simonis@s=
ap.com>; Lindenmaier, Goetz <goetz.lindenmaier@sap.com>
Subject: RE: RFR 8195615 : libsplashscreen linux ppc64le build error after =
libpng update - was : RE: jdk-hs ppc64le build error, probably related to l=
ibpng update
Thanks, do I need another review ?
( Here I found the names of the libpng authors + current maintainer :
http://www.libpng.org/pub/png/libpng.html
)
Best regards, Matthias
From: Phil Race [mailto:philip.race@oracle.com]
Sent: Mittwoch, 17. Januar 2018 22:57
To: Baesken, Matthias <matthias.baesken@sap.com<mailto:matthias.baesken@sap=
.com>>; 2d-dev@openjdk.java.net<mailto:2d-dev@openjdk.java.net>
Cc: Doerr, Martin <martin.doerr@sap.com<mailto:martin.doerr@sap.com>>; Simo=
nis, Volker <volker.simonis@sap.com<mailto:volker.simonis@sap.com>>
Subject: Re: RFR 8195615 : libsplashscreen linux ppc64le build error after =
libpng update - was : RE: jdk-hs ppc64le build error, probably related to l=
ibpng update
This looks fine to me.
Martin asked (a while ago) if I knew where to report this upstream.
I can only suggest what I find via search as being the libpng bug tracker :
https://sourceforge.net/p/libpng/bugs/
-phil
On 01/17/2018 06:45 AM, Baesken, Matthias wrote:
Hello I created a bug + webrev for the png / libsplashscreen build i=
ssue seen on linux ppc64le .
The error because of undefined png_init_filter_functions_vsx is :
/open_jdk/jdk_2_build/linuxppc64le/support/native/java.desktop/libsplashscr=
een/pngrutil.o: In function `png_init_filter_functions':
/open_jdk/jdk_2/jdk/src/java.desktop/share/native/libsplashscreen/libpng/pn=
grutil.c:4134: undefined reference to png_init_filter_functions_vsx'
The issue has been observed on a SLES12 SP1 ppc64le build machine with "gcc=
version 4.8.5 (SUSE Linux)" .
Please review .
Bug :
https://bugs.openjdk.java.net/browse/JDK-8195615
Webrev :
http://cr.openjdk.java.net/~mbaesken/webrevs/8195615/<http://cr.openjdk.jav=
a.net/%7Embaesken/webrevs/8195615/>
Thanks, Matthias
From: Philip Race [mailto:philip.race@oracle.com]
Sent: Donnerstag, 28. Dezember 2017 18:09
To: Baesken, Matthias <matthias.baesken@sap.com><mailto:matthias.baesken@sa=
p.com>
Cc: 2d-dev@openjdk.java.net<mailto:2d-dev@openjdk.java.net>; Doerr, Martin =
<martin.doerr@sap.com><mailto:martin.doerr@sap.com>; Simonis, Volker <volke=
r.simonis@sap.com><mailto:volker.simonis@sap.com>
Subject: Re: jdk-hs ppc64le build error, probably related to libpng update
This all sounds fine to me.
Definitely we should report this upstream to see what they say but
clearly we aren't bound to wait for an answer from there since this is
a build breakage for PPC. If someone upstream
comes back with a better answer we can update the fix.
I think this png update will get backported to 8u at some point ..
the PPC port is supported on 8u, isn't it ? So we'll want to make
sure we have the fix before we do the backport.
-phil.
On 12/28/17, 5:07 AM, Baesken, Matthias wrote:
Hi Phil, I think your idea to guard with
#ifdef PNG_POWERPC_VSX_API_SUPPORTED
Is fine, should I prepare a webrev using this guard ?
* Wrapping in that check might be OK (for PNG_POWERPC_VSX_API_SUPPORTED=
) but you'll want to report this upstream.
Yes it is a good idea to report this upstream as well at libpng.
Best regards, Matthias
From: Phil Race [mailto:philip.race@oracle.com]
Sent: Freitag, 22. Dezember 2017 19:08
To: Baesken, Matthias <matthias.baesken@sap.com><mailto:matthias.baesken@sa=
p.com>; 2d-dev@openjdk.java.net<mailto:2d-dev@openjdk.java.net>
Cc: Doerr, Martin <martin.doerr@sap.com><mailto:martin.doerr@sap.com>; Simo=
nis, Volker <volker.simonis@sap.com><mailto:volker.simonis@sap.com>
Subject: Re: jdk-hs ppc64le build error, probably related to libpng update
I expect that will fix it but I wonder if the problem is that all of this n=
eeds
to be guarded by checking :-
#ifdef PNG_POWERPC_VSX_API_SUPPORTED
It looks to me configure would have set that if it had been run on PPC AND
you have passed --enable-powerpc-vsx to configure
But of course I did not.
And someone can set it unsupported anyway.
So this seems like a libpng bug.
Wrapping in that check might be OK (for PNG_POWERPC_VSX_API_SUPPORTED) but
you'll want to report this upstream.
I have no intention of pulling in the accelerated code .. even for intel ..=
. this
library is used only for splashscreen.
-phil.
On 12/21/2017 07:13 AM, Baesken, Matthias wrote:
>Do you have a version of libpng available that contains the missing =
function png_init_filter_functions_vsx ?
>Or do you have an idea where it should come from (I cannot find it in the =
main libpng sources).
>To fix the build, we could probably disable the part bringing in png_ini=
t_filter_functions_vsx in png_init_filter_functions_vsx .
Hello, small update - here is a fix that disables the libpng vsx optimi=
zations on ppc64 (and fixes the build issue).
Should I prepare a webrev ? Or how to get a ppc64 le / be png_init_fi=
lter_functions_vsx implementation ?
Best regards, Matthias
-----------------------
diff -r d55bee3727de src/java.desktop/share/native/libsplashscreen/libpng/p=
ngpriv.h
--- a/src/java.desktop/share/native/libsplashscreen/libpng/pngpriv.h Tue=
Dec 19 17:31:53 2017 -0500
+++ b/src/java.desktop/share/native/libsplashscreen/libpng/pngpriv.h Wed De=
c 20 17:16:01 2017 +0100
@@ -220,12 +220,15 @@
# endif
#endif
+/* for now avoid the ppc64 vsx optimizations */
#ifndef PNG_POWERPC_VSX_OPT
-# if defined(__PPC64__) && defined(__ALTIVEC__) && defined(__VSX__)
-# define PNG_POWERPC_VSX_OPT 2
-# else
+/*
+ * # if defined(__PPC64__) && defined(__ALTIVEC__) && defined(__VSX__)
+ * # define PNG_POWERPC_VSX_OPT 2
+ * # else
+ */
# define PNG_POWERPC_VSX_OPT 0
-# endif
+/* # endif */
#endif
#ifndef PNG_INTEL_SSE_OPT
-----------------------
From: Baesken, Matthias
Sent: Mittwoch, 20. Dezember 2017 13:04
To: Phil Race (philip.race@oracle.com<mailto:philip.race@oracle.com>) <phil=
ip.race@oracle.com><mailto:philip.race@oracle.com>
Cc: Doerr, Martin <martin.doerr@sap.com><mailto:martin.doerr@sap.com>; Simo=
nis, Volker <volker.simonis@sap.com><mailto:volker.simonis@sap.com>; 2d-dev=
@openjdk.java.net<mailto:2d-dev@openjdk.java.net>
Subject: jdk-hs ppc64le build error, probably related to libpng update
Hi Phil, it looks like the recent png lib change
8183960: Upgrade to libpng 1.6.34
http://hg.openjdk.java.net/jdk/hs/rev/791d551bcdb8
+#if PNG_POWERPC_VSX_OPT > 0
+# define PNG_FILTER_OPTIMIZATIONS png_init_filter_functions_vsx
+# define PNG_POWERPC_VSX_IMPLEMENTATION 1
+#endif
Causes build errors in our linuxppc64le openjdk jdk-hs (fast)dbg bu=
ild .
We get this linker error :
pngrutil.c:(.text+0x4824): undefined reference to `png_init_filter_function=
s_vsx'
Do you have a version of libpng available that contains the missing f=
unction png_init_filter_functions_vsx ?
Or do you have an idea where it should come from (I cannot find it in the m=
ain libpng sources).
To fix the build, we could probably disable the part bringing in png_init=
_filter_functions_vsx in png_init_filter_functions_vsx .
Thanks, Matthias
Error message :
* /hs/support/native/java.desktop/libsplashscreen/pngrutil.o: In functi=
on `png_read_filter_row':
* pngrutil.c:(.text+0x4824): undefined reference to `png_init_filter_fu=
nctions_vsx'
* collect2: error: ld returned 1 exit status
* Awt2dLibraries.gmk:928: recipe for target '/hs/support/modules_libs/j=
ava.desktop/libsplashscreen.so' failed
[Attachment #3 (text/html)]
<html xmlns:v="urn:schemas-microsoft-com:vml" \
xmlns:o="urn:schemas-microsoft-com:office:office" \
xmlns:w="urn:schemas-microsoft-com:office:word" \
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" \
xmlns="http://www.w3.org/TR/REC-html40"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
color:black;
mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
pre
{mso-style-priority:99;
mso-style-link:"HTML Preformatted Char";
margin:0cm;
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:"Courier New";
color:black;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{mso-style-priority:34;
margin-top:0cm;
margin-right:0cm;
margin-bottom:0cm;
margin-left:36.0pt;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
color:black;
mso-fareast-language:EN-US;}
span.HTMLPreformattedChar
{mso-style-name:"HTML Preformatted Char";
mso-style-priority:99;
mso-style-link:"HTML Preformatted";
font-family:"Courier New";}
p.msonormal0, li.msonormal0, div.msonormal0
{mso-style-name:msonormal;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman",serif;
color:black;}
span.EmailStyle21
{mso-style-type:personal;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.EmailStyle22
{mso-style-type:personal;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.plusline
{mso-style-name:plusline;}
span.EmailStyle24
{mso-style-type:personal;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.EmailStyle25
{mso-style-type:personal;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.EmailStyle26
{mso-style-type:personal;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.EmailStyle27
{mso-style-type:personal;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.EmailStyle29
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:543757113;
mso-list-type:hybrid;
mso-list-template-ids:1594522332 -872140402 67567619 67567621 67567617 67567619 \
67567621 67567617 67567619 67567621;} @list l0:level1
{mso-level-start-at:0;
mso-level-number-format:bullet;
mso-level-text:\F0D8;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;
mso-fareast-font-family:Calibri;
mso-bidi-font-family:Calibri;
color:black;}
@list l0:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l0:level3
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l0:level4
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l0:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l0:level6
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l0:level7
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l0:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l0:level9
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l1
{mso-list-id:550533400;
mso-list-template-ids:-1075947942;}
@list l1:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:36.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1:level2
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:72.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1:level3
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:108.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1:level4
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:144.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1:level5
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:180.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1:level6
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:216.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1:level7
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:252.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1:level8
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:288.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1:level9
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:324.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l2
{mso-list-id:600651995;
mso-list-type:hybrid;
mso-list-template-ids:-104027792 -746400758 67567619 67567621 67567617 67567619 \
67567621 67567617 67567619 67567621;} @list l2:level1
{mso-level-start-at:323;
mso-level-number-format:bullet;
mso-level-text:\F0D8;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;
mso-fareast-font-family:"Times New Roman";
mso-bidi-font-family:Calibri;
color:black;}
@list l2:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l2:level3
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l2:level4
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l2:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l2:level6
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l2:level7
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l2:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l2:level9
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l3
{mso-list-id:980843837;
mso-list-template-ids:-1086533424;}
@list l3:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:36.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l3:level2
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:72.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l3:level3
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:108.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l3:level4
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:144.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l3:level5
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:180.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l3:level6
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:216.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l3:level7
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:252.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l3:level8
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:288.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l3:level9
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:324.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
ol
{margin-bottom:0cm;}
ul
{margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor="white" lang="DE" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span style="color:windowtext">Hi \
Matthias,<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:windowtext"><o:p> </o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext">thanks for fixing. Looks \
good.<o:p></o:p></span></p> <p class="MsoNormal"><span lang="EN-US" \
style="color:windowtext">Reviewed and pushed to jdk10.<o:p></o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US" \
style="color:windowtext"><o:p> </o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext">Best regards,<o:p></o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US" \
style="color:windowtext">Martin<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext"><o:p> </o:p></span></p> <p \
class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p> <div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" \
style="color:windowtext;mso-fareast-language:DE">From:</span></b><span lang="EN-US" \
style="color:windowtext;mso-fareast-language:DE"> Baesken, Matthias <br>
<b>Sent:</b> Donnerstag, 18. Januar 2018 07:53<br>
<b>To:</b> Phil Race <philip.race@oracle.com>; 2d-dev@openjdk.java.net<br>
<b>Cc:</b> Doerr, Martin <martin.doerr@sap.com>; Simonis, Volker \
<volker.simonis@sap.com>; Lindenmaier, Goetz \
<goetz.lindenmaier@sap.com><br> <b>Subject:</b> RE: RFR 8195615 : \
libsplashscreen linux ppc64le build error after libpng update - was : RE: jdk-hs \
ppc64le build error, probably related to libpng update<o:p></o:p></span></p> </div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US">Thanks, do I need another review \
?<o:p></o:p></span></p> <p class="MsoNormal"><span lang="EN-US" \
style="color:windowtext"><o:p> </o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext"> ( Here I found the names of the libpng \
authors + current maintainer :<o:p></o:p></span></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext"><o:p> </o:p></span></p> <p \
class="MsoNormal"><span style="color:windowtext"><a \
href="http://www.libpng.org/pub/png/libpng.html">http://www.libpng.org/pub/png/libpng.html</a></span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">)<span style="color:windowtext"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext">Best regards, \
Matthias<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:windowtext"><o:p> </o:p></span></p> <p class="MsoNormal"><span \
style="color:windowtext"><o:p> </o:p></span></p> <p \
class="MsoNormal"><o:p> </o:p></p> <div style="border:none;border-left:solid \
blue 1.5pt;padding:0cm 0cm 0cm 4.0pt"> <div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" \
style="color:windowtext;mso-fareast-language:DE">From:</span></b><span lang="EN-US" \
style="color:windowtext;mso-fareast-language:DE"> Phil Race [<a \
href="mailto:philip.race@oracle.com">mailto:philip.race@oracle.com</a>] <br>
<b>Sent:</b> Mittwoch, 17. Januar 2018 22:57<br>
<b>To:</b> Baesken, Matthias <<a \
href="mailto:matthias.baesken@sap.com">matthias.baesken@sap.com</a>>; <a \
href="mailto:2d-dev@openjdk.java.net">2d-dev@openjdk.java.net</a><br> <b>Cc:</b> \
Doerr, Martin <<a href="mailto:martin.doerr@sap.com">martin.doerr@sap.com</a>>; \
Simonis, Volker <<a \
href="mailto:volker.simonis@sap.com">volker.simonis@sap.com</a>><br> \
<b>Subject:</b> Re: RFR 8195615 : libsplashscreen linux ppc64le build error after \
libpng update - was : RE: jdk-hs ppc64le build error, probably related to libpng \
update<o:p></o:p></span></p> </div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt">This looks fine to me.<br>
<br>
Martin asked (a while ago) if I knew where to report this upstream.<br>
<br>
I can only suggest what I find via search as being the libpng bug tracker :<br>
<a href="https://sourceforge.net/p/libpng/bugs/">https://sourceforge.net/p/libpng/bugs/</a><br>
<br>
-phil<span style="font-size:12.0pt;mso-fareast-language:DE"><o:p></o:p></span></p>
<div>
<p class="MsoNormal">On 01/17/2018 06:45 AM, Baesken, Matthias wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><span lang="EN-US" style="color:windowtext">Hello I created \
a bug + webrev for the png / libsplashscreen \
build issue seen on linux ppc64le .</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US" \
style="color:windowtext"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext">The error because of undefined \
png_init_filter_functions_vsx is :</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US" \
style="color:windowtext"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext">/open_jdk/jdk_2_build/linuxppc64le/support/native/java.desktop/libsplashscreen/pngrutil.o: \
In function `png_init_filter_functions': <br> \
/open_jdk/jdk_2/jdk/src/java.desktop/share/native/libsplashscreen/libpng/pngrutil.c:4134: \
undefined reference to png_init_filter_functions_vsx' <br> <br>
The issue has been observed on a SLES12 SP1 ppc64le build machine with "gcc \
version 4.8.5 (SUSE Linux)" . </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US" \
style="color:windowtext"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext">Please review .</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US" \
style="color:windowtext"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext">Bug :</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US" \
style="color:windowtext"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="color:windowtext"><a \
href="https://bugs.openjdk.java.net/browse/JDK-8195615">https://bugs.openjdk.java.net/browse/JDK-8195615</a></span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">Webrev :</span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext"><a \
href="http://cr.openjdk.java.net/%7Embaesken/webrevs/8195615/">http://cr.openjdk.java.net/~mbaesken/webrevs/8195615/</a></span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:windowtext">Thanks, \
Matthias</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="color:windowtext"> </span><o:p></o:p></p> <p \
class="MsoNormal"> <o:p></o:p></p> <div style="border:none;border-left:solid \
blue 1.5pt;padding:0cm 0cm 0cm 4.0pt"> <div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" \
style="color:windowtext;mso-fareast-language:DE">From:</span></b><span lang="EN-US" \
style="color:windowtext;mso-fareast-language:DE"> Philip Race [<a \
href="mailto:philip.race@oracle.com">mailto:philip.race@oracle.com</a>] <br>
<b>Sent:</b> Donnerstag, 28. Dezember 2017 18:09<br>
<b>To:</b> Baesken, Matthias <a \
href="mailto:matthias.baesken@sap.com"><matthias.baesken@sap.com></a><br> \
<b>Cc:</b> <a href="mailto:2d-dev@openjdk.java.net">2d-dev@openjdk.java.net</a>; \
Doerr, Martin <a href="mailto:martin.doerr@sap.com"><martin.doerr@sap.com></a>; \
Simonis, Volker <a href="mailto:volker.simonis@sap.com"><volker.simonis@sap.com></a><br>
<b>Subject:</b> Re: jdk-hs ppc64le build error, probably related to libpng \
update</span><o:p></o:p></p> </div>
</div>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">This all sounds fine to me.<br>
Definitely we should report this upstream to see what they say but<br>
clearly we aren't bound to wait for an answer from there since this is<br>
a build breakage for PPC. If someone upstream<br>
comes back with a better answer we can update the fix.<br>
<br>
I think this png update will get backported to 8u at some point ..<br>
the PPC port is supported on 8u, isn't it ? So we'll want to make<br>
sure we have the fix before we do the backport.<br>
<br>
-phil.<br>
<br>
On 12/28/17, 5:07 AM, Baesken, Matthias wrote: <o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><span lang="EN-US" style="color:windowtext">Hi Phil, I \
think your idea to guard with </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" \
style="color:windowtext"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">#ifdef PNG_POWERPC_VSX_API_SUPPORTED</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US" \
style="color:windowtext"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext">Is fine, should I prepare a webrev \
using this guard ?</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext"> </span><o:p></o:p></p> <ul \
style="margin-top:0cm" type="disc"> <li class="MsoNormal" \
style="color:windowtext;margin-left:0cm;mso-list:l2 level1 lfo3"> <span lang="EN-US" \
style="color:black">Wrapping in that check might be OK (for \
PNG_POWERPC_VSX_API_SUPPORTED) but you'll want to report this \
upstream.</span><o:p></o:p></li></ul> <p class="MsoNormal"><span lang="EN-US" \
style="color:windowtext"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext">Yes it is a good idea to report this upstream \
as well at libpng.</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="color:windowtext"> </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US">Best regards, Matthias</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <div \
style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt"> <div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" \
style="color:windowtext;mso-fareast-language:DE">From:</span></b><span lang="EN-US" \
style="color:windowtext;mso-fareast-language:DE"> Phil Race [<a \
href="mailto:philip.race@oracle.com">mailto:philip.race@oracle.com</a>] <br>
<b>Sent:</b> Freitag, 22. Dezember 2017 19:08<br>
<b>To:</b> Baesken, Matthias <a \
href="mailto:matthias.baesken@sap.com"><matthias.baesken@sap.com></a>; <a \
href="mailto:2d-dev@openjdk.java.net">2d-dev@openjdk.java.net</a><br> <b>Cc:</b> \
Doerr, Martin <a href="mailto:martin.doerr@sap.com"><martin.doerr@sap.com></a>; \
Simonis, Volker <a href="mailto:volker.simonis@sap.com"><volker.simonis@sap.com></a><br>
<b>Subject:</b> Re: jdk-hs ppc64le build error, probably related to libpng \
update</span><o:p></o:p></p> </div>
</div>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt">I expect that will fix it but I \
wonder if the problem is that all of this needs<br> to be guarded by checking :-<br>
<br>
#ifdef PNG_POWERPC_VSX_API_SUPPORTED<br>
<br>
It looks to me configure would have set that if it had been run on PPC AND<br>
you have passed --enable-powerpc-vsx to configure<br>
<br>
But of course I did not.<br>
<br>
And someone can set it unsupported anyway.<br>
<br>
So this seems like a libpng bug.<br>
<br>
Wrapping in that check might be OK (for PNG_POWERPC_VSX_API_SUPPORTED) but<br>
you'll want to report this upstream.<br>
<br>
I have no intention of pulling in the accelerated code .. even for intel ... this<br>
library is used only for splashscreen.<br>
<br>
-phil.<br>
<br>
<br>
<br>
<o:p></o:p></p>
<div>
<p class="MsoNormal">On 12/21/2017 07:13 AM, Baesken, Matthias wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><span lang="EN-US">>Do you have a version \
of libpng available that contains the missing function \
png_init_filter_functions_vsx ?</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US">>Or do you have an idea where it should come \
from (I cannot find it in the main libpng sources).</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US">>To fix the build, we could probably \
disable the part bringing in png_init_filter_functions_vsx in \
png_init_filter_functions_vsx .</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US">Hello, small update - here is a fix \
that disables the libpng vsx optimizations on ppc64 \
(and fixes the build issue).</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">Should I prepare a webrev ? Or how to get a ppc64 le / \
be png_init_filter_functions_vsx implementation \
?</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">Best regards, Matthias</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">-----------------------</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">diff -r d55bee3727de \
src/java.desktop/share/native/libsplashscreen/libpng/pngpriv.h</span><o:p></o:p></p> \
<p class="MsoNormal"><span lang="EN-US">--- \
a/src/java.desktop/share/native/libsplashscreen/libpng/pngpriv.h \
Tue Dec 19 17:31:53 2017 -0500</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">+++ \
b/src/java.desktop/share/native/libsplashscreen/libpng/pngpriv.h Wed Dec 20 17:16:01 \
2017 +0100</span><o:p></o:p></p> <p class="MsoNormal"><span lang="EN-US">@@ \
-220,12 +220,15 @@</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"># endif</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">#endif</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">+/* for now avoid the ppc64 vsx optimizations \
*/</span><o:p></o:p></p> <p class="MsoNormal"><span lang="EN-US">#ifndef \
PNG_POWERPC_VSX_OPT</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">-# if defined(__PPC64__) && defined(__ALTIVEC__) \
&& defined(__VSX__)</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">-# define PNG_POWERPC_VSX_OPT \
2</span><o:p></o:p></p> <p class="MsoNormal"><span lang="EN-US">-# \
else</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">+/*</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">+ * # if defined(__PPC64__) && defined(__ALTIVEC__) \
&& defined(__VSX__)</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">+ * # define PNG_POWERPC_VSX_OPT \
2</span><o:p></o:p></p> <p class="MsoNormal"><span lang="EN-US">+ * # \
else</span><o:p></o:p></p> <p class="MsoNormal"><span lang="EN-US">+ \
*/</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"># define PNG_POWERPC_VSX_OPT \
0</span><o:p></o:p></p> <p class="MsoNormal"><span lang="EN-US">-# \
endif</span><o:p></o:p></p> <p class="MsoNormal"><span lang="EN-US">+/* # \
endif */</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">#endif</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"> #ifndef PNG_INTEL_SSE_OPT</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US">-----------------------</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <div \
style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt"> <div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" \
style="mso-fareast-language:DE">From:</span></b><span lang="EN-US" \
style="mso-fareast-language:DE"> Baesken, Matthias <br>
<b>Sent:</b> Mittwoch, 20. Dezember 2017 13:04<br>
<b>To:</b> Phil Race (<a \
href="mailto:philip.race@oracle.com">philip.race@oracle.com</a>) <a \
href="mailto:philip.race@oracle.com"><philip.race@oracle.com></a><br> \
<b>Cc:</b> Doerr, Martin <a \
href="mailto:martin.doerr@sap.com"><martin.doerr@sap.com></a>; Simonis, Volker \
<a href="mailto:volker.simonis@sap.com"><volker.simonis@sap.com></a>; <a \
href="mailto:2d-dev@openjdk.java.net"> 2d-dev@openjdk.java.net</a><br>
<b>Subject:</b> jdk-hs ppc64le build error, probably related to libpng \
update</span><o:p></o:p></p> </div>
</div>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Hi Phil, it looks like the recent \
png lib change</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt">8183960: Upgrade to libpng 1.6.34</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <p \
class="MsoNormal"><a \
href="http://hg.openjdk.java.net/jdk/hs/rev/791d551bcdb8">http://hg.openjdk.java.net/jdk/hs/rev/791d551bcdb8</a><o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:9.0pt">+#if \
PNG_POWERPC_VSX_OPT > 0</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="font-size:9.0pt">+# define PNG_FILTER_OPTIMIZATIONS \
png_init_filter_functions_vsx</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="font-size:9.0pt">+# define \
PNG_POWERPC_VSX_IMPLEMENTATION 1</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US" style="font-size:9.0pt">+#endif</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US">Causes build errors in \
our linuxppc64le openjdk jdk-hs (fast)dbg build \
.</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"> </span><o:p></o:p></p> <p class="MsoNormal"><span lang="EN-US">We \
get this linker error :</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"> </span><o:p></o:p></p> <p class="MsoNormal" \
style="margin-left:35.4pt"><span lang="EN-US">pngrutil.c:(.text+0x4824): \
undefined reference to `png_init_filter_functions_vsx'</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US">Do you have a version of \
libpng available that contains the missing function \
png_init_filter_functions_vsx ?</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US">Or do you have an idea where it should come from \
(I cannot find it in the main libpng sources).</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US">To fix the build, we could probably \
disable the part bringing in png_init_filter_functions_vsx in \
png_init_filter_functions_vsx .</span><o:p></o:p></p> <p \
class="MsoNormal"><span lang="EN-US" \
style="font-size:9.0pt"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">Thanks, Matthias</span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US"> </span><o:p></o:p></p> <p class="MsoNormal"><span \
lang="EN-US">Error message :</span><o:p></o:p></p> <p \
class="MsoNormal"> <o:p></o:p></p> <ul style="margin-top:0cm" type="disc">
<li class="MsoNormal" style="margin-left:0cm;mso-list:l0 level1 lfo6"><span \
lang="EN-US">/hs/support/native/java.desktop/libsplashscreen/pngrutil.o: In function \
`png_read_filter_row':</span><o:p></o:p></li><li class="MsoNormal" \
style="margin-left:0cm;mso-list:l0 level1 lfo6"><span \
lang="EN-US">pngrutil.c:(.text+0x4824): undefined reference to \
`png_init_filter_functions_vsx'</span><o:p></o:p></li><li class="MsoNormal" \
style="margin-left:0cm;mso-list:l0 level1 lfo6"><span lang="EN-US">collect2: error: \
ld returned 1 exit status</span><o:p></o:p></li><li class="MsoNormal" \
style="margin-left:0cm;mso-list:l0 level1 lfo6"><span \
lang="EN-US">Awt2dLibraries.gmk:928: recipe for target \
'/hs/support/modules_libs/java.desktop/libsplashscreen.so' \
failed</span><o:p></o:p></li></ul> </div>
</blockquote>
<p class="MsoNormal"><span style="font-size:12.0pt"> </span><o:p></o:p></p>
</div>
</blockquote>
</div>
</blockquote>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New \
Roman",serif;mso-fareast-language:DE"><o:p> </o:p></span></p> </div>
</div>
</body>
</html>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic