From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?G=C3=A1bor_Boskovits?= Subject: Re: bug#36685: ant-bootstrap fails on core-updates (409 dependents) Date: Fri, 19 Jul 2019 12:37:47 +0000 Message-ID: References: <8736j61n57.fsf@gmail.com> <87o91ugdot.fsf@elephly.net> <87ftn5gjzw.fsf@elephly.net> <871ryogu6j.fsf@elephly.net> <87r26nfwes.fsf@elephly.net> <87a7dafntp.fsf@elephly.net> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000152f9c058e07ff40" Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:51622) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hoS9C-00080t-SN for guix-devel@gnu.org; Fri, 19 Jul 2019 08:38:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hoS9B-0005Tq-C3 for guix-devel@gnu.org; Fri, 19 Jul 2019 08:38:02 -0400 Received: from mail-ed1-x531.google.com ([2a00:1450:4864:20::531]:43440) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hoS9B-0005QG-2x for guix-devel@gnu.org; Fri, 19 Jul 2019 08:38:01 -0400 Received: by mail-ed1-x531.google.com with SMTP id e3so34381417edr.10 for ; Fri, 19 Jul 2019 05:38:00 -0700 (PDT) In-Reply-To: <87a7dafntp.fsf@elephly.net> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Ricardo Wurmus Cc: Guix-devel , 36685@debbugs.gnu.org --000000000000152f9c058e07ff40 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello, Ricardo Wurmus ezt =C3=ADrta (id=C5=91pont: 2019. j=C3= =BAl. 19., P, 8:09): > > Ricardo Wurmus writes: > > Here=E2=80=99s a shorter patch: > > > > --8<---------------cut here---------------start------------->8--- > > diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm > > index 403c446a82..bd98784232 100644 > > --- a/gnu/packages/java.scm > > +++ b/gnu/packages/java.scm > > @@ -152,6 +152,13 @@ and binary format defined in The Java Virtual > Machine Specification.") > > "--disable-gjdoc") > > #:phases > > (modify-phases %standard-phases > > + (add-after 'unpack 'foo > > + (lambda _ > > + (substitute* "native/jni/java-io/java_io_VMFile.c" > > + (("result =3D cpio_isFileExists.*" m) > > + (string-append m " > > +//Without a long comment the Java side will return \"true\" on x86_64 > all the time."))) > > + #t)) > > (add-after 'install 'install-data > > (lambda _ (invoke "make" "install-data")))))) > > (native-inputs > > --8<---------------cut here---------------end--------------->8--- > > > > This only adds a comment. If the comment is too short it won=E2=80=99t= work. > > I confirm this path works. I tested a modified version, where I took out the comment text. It also works that way. We might contact the classpath devs to get a proper fix, and maybe a new release, they were super responsive the last time. > No, that=E2=80=99s wrong. > > To my eternal embarrassement but also great relief this substitution has > the effect of commenting the *following* line which frees up previously > claimed resources (a bunch of characters making up the file name). The > other comments I tested must have ended on \n, so they did not have this > effect. > > Thanks to Julien for pointing this out! > > So! Creating a memory leak lets us successfully build ant-bootstrap. > It does not, however, get us all the way through the Java bootstrap. > When configuring the first icedtea I get this error: > > --8<---------------cut here---------------start------------->8--- > checking if the VM and compiler work together... ./configure: line 9614: > 697 Illegal instruction $JAVA -classpath . $BYTECODE 1>&5 2>&1 > configure: error: VM failed to run compiled class. > command > "/gnu/store/h9c5g3inn5zmkixk08m27zzpj58zbfgy-bash-minimal-5.0.7/bin/bash" > "./configure" > "CONFIG_SHELL=3D/gnu/store/h9c5g3inn5zmkixk08m27zzpj58zbfgy-bash-minimal-= 5.0.7/bin/bash" > "SHELL=3D/gnu/store/h9c5g3inn5zmkixk08m27zzpj58zbfgy-bash-minimal-5.0.7/b= in/bash" > "--prefix=3D/gnu/store/802356lxpjkqk66kv35mdzxhvaw6rghp-icedtea-1.13.13" > "--enable-fast-install" > "--docdir=3D/gnu/store/d4c4w9bka2bnnrwrmph1ilgjss5i37h9-icedtea-1.13.13-d= oc/share/doc/icedtea" > "--build=3Dx86_64-unknown-linux-gnu" "--enable-bootstrap" "--enable-nss" > "--without-rhino" "--with-parallel-jobs" "--disable-downloading" > "--disable-tests" > "--with-ecj=3D/gnu/store/6dijv9ynn5j2bya86dgjn8v0qfd1nv3j-ecj-bootstrap-3= .2.2/share/java/ecj-bootstrap.jar" > "--with-jar=3D/gnu/store/hw67b3w83cc2abbgrf0wqzra07iiz3a1-fastjar-0.98/bi= n/fastjar" > "--with-jdk-home=3D/gnu/store/1agbz95p2ljcvbb88w7p7jn2hnd6z3gv-classpath-= 0.99-1.e7c13ee0c" > "--with-java=3D/gnu/store/ril2kk63p1grib14vl88z3aladfs33gf-jamvm-2.0.0/bi= n/jamvm" > failed with status 1 > --8<---------------cut here---------------end--------------->8--- > > Illegal instruction? This uses JamVM 2.0.0 as the JVM. I=E2=80=99ll try= to > figure out what instruction this is and where it comes from. > I hit the same bug now. > -- > Ricardo > > > Best regards, g_bor --=20 OpenPGP Key Fingerprint: 7988:3B9F:7D6A:4DBF:3719:0367:2506:A96C:CF63:0B21 --000000000000152f9c058e07ff40 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello,

Ricardo Wurmus <rekado@elephly.net> ezt =C3=ADrta (id=C5=91pont: 2019.= j=C3=BAl. 19., P, 8:09):

Ricardo Wurmus <= rekado@elephly.net> writes:
> Here=E2=80=99s a shorter patch:
>
> --8<---------------cut here---------------start------------->8--= -
> diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
> index 403c446a82..bd98784232 100644
> --- a/gnu/packages/java.scm
> +++ b/gnu/packages/java.scm
> @@ -152,6 +152,13 @@ and binary format defined in The Java Virtual Mac= hine Specification.")
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"--disable-= gjdoc")
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0#:phases
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(modify-phases %standard-phases
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(add-after 'unpack 'foo
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(lambda _
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(substitute* "na= tive/jni/java-io/java_io_VMFile.c"
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(("result= =3D cpio_isFileExists.*" m)
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (string-appen= d m "
> +//Without a long comment the Java side will return \"true\"= on x86_64 all the time.")))
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0#t))
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(add-after 'install 'i= nstall-data
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(lambda _ (invoke "= ;make" "install-data"))))))
>=C2=A0 =C2=A0 =C2=A0 (native-inputs
> --8<---------------cut here---------------end--------------->8--= -
>
> This only adds a comment.=C2=A0 If the comment is too short it won=E2= =80=99t work.


I confirm this path works.
I= tested a modified version, where I took out the comment text. It also work= s that way.
We might contact the classpath devs to get a proper f= ix, and maybe a new release, they
were super responsive the last = time.
=C2=A0
No, that=E2=80=99s wrong.

To my eternal embarrassement but also great relief this substitution has the effect of commenting the *following* line which frees up previously
claimed resources (a bunch of characters making up the file name).=C2=A0 Th= e
other comments I tested must have ended on \n, so they did not have this effect.

Thanks to Julien for pointing this out!

So!=C2=A0 Creating a memory leak lets us successfully build ant-bootstrap.<= br> It does not, however, get us all the way through the Java bootstrap.
When configuring the first icedtea I get this error:

--8<---------------cut here---------------start------------->8---
checking if the VM and compiler work together... ./configure: line 9614:=C2= =A0 =C2=A0697 Illegal instruction=C2=A0 =C2=A0 =C2=A0$JAVA -classpath . $BY= TECODE 1>&5 2>&1
configure: error: VM failed to run compiled class.
command "/gnu/store/h9c5g3inn5zmkixk08m27zzpj58zbfgy-bash-minimal-5.0.= 7/bin/bash" "./configure" "CONFIG_SHELL=3D/gnu/store/h9= c5g3inn5zmkixk08m27zzpj58zbfgy-bash-minimal-5.0.7/bin/bash" "SHEL= L=3D/gnu/store/h9c5g3inn5zmkixk08m27zzpj58zbfgy-bash-minimal-5.0.7/bin/bash= " "--prefix=3D/gnu/store/802356lxpjkqk66kv35mdzxhvaw6rghp-icedtea= -1.13.13" "--enable-fast-install" "--docdir=3D/gnu/stor= e/d4c4w9bka2bnnrwrmph1ilgjss5i37h9-icedtea-1.13.13-doc/share/doc/icedtea&qu= ot; "--build=3Dx86_64-unknown-linux-gnu" "--enable-bootstrap= " "--enable-nss" "--without-rhino" "--with-pa= rallel-jobs" "--disable-downloading" "--disable-tests&q= uot; "--with-ecj=3D/gnu/store/6dijv9ynn5j2bya86dgjn8v0qfd1nv3j-ecj-boo= tstrap-3.2.2/share/java/ecj-bootstrap.jar" "--with-jar=3D/gnu/sto= re/hw67b3w83cc2abbgrf0wqzra07iiz3a1-fastjar-0.98/bin/fastjar" "--= with-jdk-home=3D/gnu/store/1agbz95p2ljcvbb88w7p7jn2hnd6z3gv-classpath-0.99-= 1.e7c13ee0c" "--with-java=3D/gnu/store/ril2kk63p1grib14vl88z3alad= fs33gf-jamvm-2.0.0/bin/jamvm" failed with status 1
--8<---------------cut here---------------end--------------->8---

Illegal instruction?=C2=A0 This uses JamVM 2.0.0 as the JVM.=C2=A0 I=E2=80= =99ll try to
figure out what instruction this is and where it comes from.

I hit the same bug now.


--
Ricardo



Best regards,
g_bor

--
O= penPGP Key Fingerprint: 7988:3B9F:7D6A:4DBF:3719:0367:2506:A96C:CF63:0B21
--000000000000152f9c058e07ff40--