8226863: [aix] jdk/java/lang/reflect/exeCallerAccessTest cannot launch on primordial thread
Hi all, Issue: https://bugs.openjdk.java.net/browse/JDK-8226863 webrev: http://cr.openjdk.java.net/~stuefe/webrevs/8226863--jdk-java-lang-reflect-ex... we have this annoying issue on AIX that the libjvm cannot be invoked on a primordial thread. Therefore we need to change launchers which create the VM to spawn own threads (we only do this where it is worth the effort - this, admittedly, is a corner case, we could alternatively just disable the test on AIX). This is annoying and vaguely embarrassing :-/ Maybe IBM will step in some time and help us solve the underlying issues which have to do with the inability to create guard pages on the primordial thread stack (among other things IIRC). Thanks for reviewing, Thomas
Hi Thomas, I looked at this. One thing that catches my eye immediately: exeCallerAccessTest.c, line 149: Looks like this #error would always fire on Windows. So the test wouldn’t compile there…? Or am I wrong? Furthermore, if we do this new thread dance only on AIX, shouldn’t all the extra coding be guarded by #ifdef _AIX? The only common part of the changes would be to rename main to main_inner and call this method for all non-AIX cases… Best regards Christoph From: ppc-aix-port-dev <ppc-aix-port-dev-bounces@openjdk.java.net> On Behalf Of Thomas Stüfe Sent: Donnerstag, 27. Juni 2019 09:02 To: Java Core Libs <core-libs-dev@openjdk.java.net>; ppc-aix-port-dev <ppc-aix-port-dev@openjdk.java.net> Subject: 8226863: [aix] jdk/java/lang/reflect/exeCallerAccessTest cannot launch on primordial thread Hi all, Issue: https://bugs.openjdk.java.net/browse/JDK-8226863 webrev: http://cr.openjdk.java.net/~stuefe/webrevs/8226863--jdk-java-lang-reflect-ex... we have this annoying issue on AIX that the libjvm cannot be invoked on a primordial thread. Therefore we need to change launchers which create the VM to spawn own threads (we only do this where it is worth the effort - this, admittedly, is a corner case, we could alternatively just disable the test on AIX). This is annoying and vaguely embarrassing :-/ Maybe IBM will step in some time and help us solve the underlying issues which have to do with the inability to create guard pages on the primordial thread stack (among other things IIRC). Thanks for reviewing, Thomas
Hi Christoph, On Fri, Jun 28, 2019, 13:19 Langer, Christoph <christoph.langer@sap.com> wrote:
Hi Thomas,
I looked at this.
One thing that catches my eye immediately: exeCallerAccessTest.c, line 149: Looks like this #error would always fire on Windows. So the test wouldn’t compile there…? Or am I wrong?
No :( That whole code section was supposed to be conditional on DEFAULT_SPAWN_IN_NEW_THREAD. Must be the heat... Furthermore, if we do this new thread dance only on AIX, shouldn’t all the
extra coding be guarded by #ifdef _*AIX? *The only common part of the changes would be to rename main to main_inner and call this method for all non-AIX cases…
Yea, I'll repost an update next week. Thanks for the review. Cheers, Thomas
Best regards
Christoph
*From:* ppc-aix-port-dev <ppc-aix-port-dev-bounces@openjdk.java.net> *On Behalf Of *Thomas Stüfe *Sent:* Donnerstag, 27. Juni 2019 09:02 *To:* Java Core Libs <core-libs-dev@openjdk.java.net>; ppc-aix-port-dev < ppc-aix-port-dev@openjdk.java.net> *Subject:* 8226863: [aix] jdk/java/lang/reflect/exeCallerAccessTest cannot launch on primordial thread
Hi all,
Issue:
https://bugs.openjdk.java.net/browse/JDK-8226863
webrev:
http://cr.openjdk.java.net/~stuefe/webrevs/8226863--jdk-java-lang-reflect-ex...
we have this annoying issue on AIX that the libjvm cannot be invoked on a primordial thread. Therefore we need to change launchers which create the VM to spawn own threads (we only do this where it is worth the effort - this, admittedly, is a corner case, we could alternatively just disable the test on AIX).
This is annoying and vaguely embarrassing :-/ Maybe IBM will step in some time and help us solve the underlying issues which have to do with the inability to create guard pages on the primordial thread stack (among other things IIRC).
Thanks for reviewing,
Thomas
Second, corrected Webrev: http://cr.openjdk.java.net/~stuefe/webrevs/execalleraccesstest-cannot-launch... Run through SAP nightlies on all platforms. Cheers, Thomas On Thu, Jun 27, 2019 at 9:02 AM Thomas Stüfe <thomas.stuefe@gmail.com> wrote:
Hi all,
Issue: https://bugs.openjdk.java.net/browse/JDK-8226863 webrev:
http://cr.openjdk.java.net/~stuefe/webrevs/8226863--jdk-java-lang-reflect-ex...
we have this annoying issue on AIX that the libjvm cannot be invoked on a primordial thread. Therefore we need to change launchers which create the VM to spawn own threads (we only do this where it is worth the effort - this, admittedly, is a corner case, we could alternatively just disable the test on AIX).
This is annoying and vaguely embarrassing :-/ Maybe IBM will step in some time and help us solve the underlying issues which have to do with the inability to create guard pages on the primordial thread stack (among other things IIRC).
Thanks for reviewing,
Thomas
Hi Thomas, This is AIX-only. It would be cleaner to move AIX-specific launcher to a new file like main_aix.c. Have you considered that? I don't know how to specify additional .c file in make/test/JtregNativeJdk.gmk though. Mandy On 7/1/19 10:23 PM, Thomas Stüfe wrote:
Second, corrected Webrev:
http://cr.openjdk.java.net/~stuefe/webrevs/execalleraccesstest-cannot-launch...
Run through SAP nightlies on all platforms.
Cheers, Thomas
On Thu, Jun 27, 2019 at 9:02 AM Thomas Stüfe <thomas.stuefe@gmail.com> wrote:
Hi all,
Issue: https://bugs.openjdk.java.net/browse/JDK-8226863 webrev:
http://cr.openjdk.java.net/~stuefe/webrevs/8226863--jdk-java-lang-reflect-ex...
we have this annoying issue on AIX that the libjvm cannot be invoked on a primordial thread. Therefore we need to change launchers which create the VM to spawn own threads (we only do this where it is worth the effort - this, admittedly, is a corner case, we could alternatively just disable the test on AIX).
This is annoying and vaguely embarrassing :-/ Maybe IBM will step in some time and help us solve the underlying issues which have to do with the inability to create guard pages on the primordial thread stack (among other things IIRC).
Thanks for reviewing,
Thomas
Hi Mandy, On Wed, Jul 3, 2019, 00:20 Mandy Chung <mandy.chung@oracle.com> wrote:
Hi Thomas,
This is AIX-only. It would be cleaner to move AIX-specific launcher to a new file like main_aix.c. Have you considered that?
I rather not since this would unnecessarily increase complexity even further. However, if you really dislike the platform specific code, I would withdraw the patch and just disable the test on AIX. I was on the fence about that anyway. Cheers, Thomas
I don't know how to specify additional .c file in make/test/JtregNativeJdk.gmk though.
Mandy
On 7/1/19 10:23 PM, Thomas Stüfe wrote:
Second, corrected Webrev:
http://cr.openjdk.java.net/~stuefe/webrevs/execalleraccesstest-cannot-launch...
Run through SAP nightlies on all platforms.
Cheers, Thomas
On Thu, Jun 27, 2019 at 9:02 AM Thomas Stüfe <thomas.stuefe@gmail.com> wrote:
Hi all,
Issue: https://bugs.openjdk.java.net/browse/JDK-8226863 webrev:
http://cr.openjdk.java.net/~stuefe/webrevs/8226863--jdk-java-lang-reflect-ex...
we have this annoying issue on AIX that the libjvm cannot be invoked on
a
primordial thread. Therefore we need to change launchers which create the VM to spawn own threads (we only do this where it is worth the effort - this, admittedly, is a corner case, we could alternatively just disable the test on AIX).
This is annoying and vaguely embarrassing :-/ Maybe IBM will step in some time and help us solve the underlying issues which have to do with the inability to create guard pages on the primordial thread stack (among other things IIRC).
Thanks for reviewing,
Thomas
On 7/2/19 10:30 PM, Thomas Stüfe wrote:
Hi Mandy,
On Wed, Jul 3, 2019, 00:20 Mandy Chung <mandy.chung@oracle.com <mailto:mandy.chung@oracle.com>> wrote:
Hi Thomas,
This is AIX-only. It would be cleaner to move AIX-specific launcher to a new file like main_aix.c. Have you considered that?
I rather not since this would unnecessarily increase complexity even further.
However, if you really dislike the platform specific code, I would withdraw the patch and just disable the test on AIX. I was on the fence about that anyway.
+1 disabling this test on AIX until the underlying issue is addressed. Mandy
Cheers, Thomas
I don't know how to specify additional .c file in make/test/JtregNativeJdk.gmk though.
Mandy
On 7/1/19 10:23 PM, Thomas Stüfe wrote: > Second, corrected Webrev: > > http://cr.openjdk.java.net/~stuefe/webrevs/execalleraccesstest-cannot-launch... > > Run through SAP nightlies on all platforms. > > Cheers, Thomas > > > On Thu, Jun 27, 2019 at 9:02 AM Thomas Stüfe <thomas.stuefe@gmail.com <mailto:thomas.stuefe@gmail.com>> > wrote: > >> Hi all, >> >> Issue: >> https://bugs.openjdk.java.net/browse/JDK-8226863 >> webrev: >> >> http://cr.openjdk.java.net/~stuefe/webrevs/8226863--jdk-java-lang-reflect-ex... >> >> we have this annoying issue on AIX that the libjvm cannot be invoked on a >> primordial thread. Therefore we need to change launchers which create the >> VM to spawn own threads (we only do this where it is worth the effort - >> this, admittedly, is a corner case, we could alternatively just disable the >> test on AIX). >> >> This is annoying and vaguely embarrassing :-/ Maybe IBM will step in some >> time and help us solve the underlying issues which have to do with the >> inability to create guard pages on the primordial thread stack (among other >> things IIRC). >> >> Thanks for reviewing, >> >> Thomas >> >> >>
participants (3)
-
Langer, Christoph
-
Mandy Chung
-
Thomas Stüfe