diff mbox series

[v2] FreeBSD: Upgrade to 12.2 release

Message ID 20210307155654.993-2-imp@bsdimp.com (mailing list archive)
State New, archived
Headers show
Series [v2] FreeBSD: Upgrade to 12.2 release | expand

Commit Message

Warner Losh March 7, 2021, 3:56 p.m. UTC
FreeBSD 12.1 has reached end of life. Use 12.2 instead so that FreeBSD's
project's packages will work.  Update which timezone to pick. Work around a QEMU
bug that incorrectly raises an exception on a CRC32 instruction with the FPU
disabled.  The qemu bug is described here:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html

Signed-off-by: Warner Losh <imp@bsdimp.com>

---
 tests/vm/freebsd | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

Comments

Thomas Huth March 8, 2021, 1:30 p.m. UTC | #1
On 07/03/2021 16.56, Warner Losh wrote:
> FreeBSD 12.1 has reached end of life. Use 12.2 instead so that FreeBSD's
> project's packages will work.  Update which timezone to pick. Work around a QEMU
> bug that incorrectly raises an exception on a CRC32 instruction with the FPU
> disabled.  The qemu bug is described here:
> https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
> 
> Signed-off-by: Warner Losh <imp@bsdimp.com>
> 
> ---
>   tests/vm/freebsd | 14 +++++++++-----
>   1 file changed, 9 insertions(+), 5 deletions(-)

I gave this a try, but it's currently failing in the unit tests:

Running test test-crypto-tlscredsx509

** (tests/test-crypto-tlscredsx509:9999): CRITICAL **: 12:56:35.157: Failed 
to sign certificate ASN1 parser: Value is not valid.
ERROR test-crypto-tlscredsx509 - Bail out! FATAL-CRITICAL: Failed to sign 
certificate ASN1 parser: Value is not valid.
gmake: *** [Makefile.mtest:576: run-test-70] Error 1
gmake: *** Waiting for unfinished jobs....
Running test test-crypto-tlssession

** (tests/test-crypto-tlssession:10002): CRITICAL **: 12:56:35.288: Failed 
to sign certificate ASN1 parser: Value is not valid.
ERROR test-crypto-tlssession - Bail out! FATAL-CRITICAL: Failed to sign 
certificate ASN1 parser: Value is not valid.

I guess it's the same problem as:

https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html

... so this would require a bug fix in the libtasn of FreeBSD first? See:

https://gitlab.com/gnutls/libtasn1/-/merge_requests/71

  Thomas
Warner Losh March 8, 2021, 3:26 p.m. UTC | #2
On Mon, Mar 8, 2021 at 6:30 AM Thomas Huth <thuth@redhat.com> wrote:

> On 07/03/2021 16.56, Warner Losh wrote:
> > FreeBSD 12.1 has reached end of life. Use 12.2 instead so that FreeBSD's
> > project's packages will work.  Update which timezone to pick. Work
> around a QEMU
> > bug that incorrectly raises an exception on a CRC32 instruction with the
> FPU
> > disabled.  The qemu bug is described here:
> > https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
> >
> > Signed-off-by: Warner Losh <imp@bsdimp.com>
> >
> > ---
> >   tests/vm/freebsd | 14 +++++++++-----
> >   1 file changed, 9 insertions(+), 5 deletions(-)
>
> I gave this a try, but it's currently failing in the unit tests:
>
> Running test test-crypto-tlscredsx509
>
> ** (tests/test-crypto-tlscredsx509:9999): CRITICAL **: 12:56:35.157:
> Failed
> to sign certificate ASN1 parser: Value is not valid.
> ERROR test-crypto-tlscredsx509 - Bail out! FATAL-CRITICAL: Failed to sign
> certificate ASN1 parser: Value is not valid.
> gmake: *** [Makefile.mtest:576: run-test-70] Error 1
> gmake: *** Waiting for unfinished jobs....
> Running test test-crypto-tlssession
>
> ** (tests/test-crypto-tlssession:10002): CRITICAL **: 12:56:35.288: Failed
> to sign certificate ASN1 parser: Value is not valid.
> ERROR test-crypto-tlssession - Bail out! FATAL-CRITICAL: Failed to sign
> certificate ASN1 parser: Value is not valid.
>

That's totally unrelated to my change. Was it failing before? What
environment was it failing in because it all seemed to work for me...


> I guess it's the same problem as:
>
> https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
>
> ... so this would require a bug fix in the libtasn of FreeBSD first? See:
>
> https://gitlab.com/gnutls/libtasn1/-/merge_requests/71


 Is this on the host that built qemu, or inside the VM or where exactly?

Warner
Daniel P. Berrangé March 8, 2021, 3:31 p.m. UTC | #3
On Mon, Mar 08, 2021 at 08:26:50AM -0700, Warner Losh wrote:
> On Mon, Mar 8, 2021 at 6:30 AM Thomas Huth <thuth@redhat.com> wrote:
> 
> > On 07/03/2021 16.56, Warner Losh wrote:
> > > FreeBSD 12.1 has reached end of life. Use 12.2 instead so that FreeBSD's
> > > project's packages will work.  Update which timezone to pick. Work
> > around a QEMU
> > > bug that incorrectly raises an exception on a CRC32 instruction with the
> > FPU
> > > disabled.  The qemu bug is described here:
> > > https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
> > >
> > > Signed-off-by: Warner Losh <imp@bsdimp.com>
> > >
> > > ---
> > >   tests/vm/freebsd | 14 +++++++++-----
> > >   1 file changed, 9 insertions(+), 5 deletions(-)
> >
> > I gave this a try, but it's currently failing in the unit tests:
> >
> > Running test test-crypto-tlscredsx509
> >
> > ** (tests/test-crypto-tlscredsx509:9999): CRITICAL **: 12:56:35.157:
> > Failed
> > to sign certificate ASN1 parser: Value is not valid.
> > ERROR test-crypto-tlscredsx509 - Bail out! FATAL-CRITICAL: Failed to sign
> > certificate ASN1 parser: Value is not valid.
> > gmake: *** [Makefile.mtest:576: run-test-70] Error 1
> > gmake: *** Waiting for unfinished jobs....
> > Running test test-crypto-tlssession
> >
> > ** (tests/test-crypto-tlssession:10002): CRITICAL **: 12:56:35.288: Failed
> > to sign certificate ASN1 parser: Value is not valid.
> > ERROR test-crypto-tlssession - Bail out! FATAL-CRITICAL: Failed to sign
> > certificate ASN1 parser: Value is not valid.
> >
> 
> That's totally unrelated to my change. Was it failing before? What
> environment was it failing in because it all seemed to work for me...

Do you have  gnutls package present ? These tests are only run if both
gnutls and libtasn1 development packages are present.

> 
> 
> > I guess it's the same problem as:
> >
> > https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
> >
> > ... so this would require a bug fix in the libtasn of FreeBSD first? See:
> >
> > https://gitlab.com/gnutls/libtasn1/-/merge_requests/71
> 
> 
>  Is this on the host that built qemu, or inside the VM or where exactly?

IIUC, it applies to anywhere the libtasn1 is built with modern clang.
IOW, the FreeBSD ports build of libtasn1 would need the patch.


Regards,
Daniel
Thomas Huth March 8, 2021, 3:41 p.m. UTC | #4
On 08/03/2021 16.26, Warner Losh wrote:
> 
> 
> On Mon, Mar 8, 2021 at 6:30 AM Thomas Huth <thuth@redhat.com 
> <mailto:thuth@redhat.com>> wrote:
> 
>     On 07/03/2021 16.56, Warner Losh wrote:
>      > FreeBSD 12.1 has reached end of life. Use 12.2 instead so that FreeBSD's
>      > project's packages will work.  Update which timezone to pick. Work
>     around a QEMU
>      > bug that incorrectly raises an exception on a CRC32 instruction with
>     the FPU
>      > disabled.  The qemu bug is described here:
>      > https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
>     <https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html>
>      >
>      > Signed-off-by: Warner Losh <imp@bsdimp.com <mailto:imp@bsdimp.com>>
>      >
>      > ---
>      >   tests/vm/freebsd | 14 +++++++++-----
>      >   1 file changed, 9 insertions(+), 5 deletions(-)
> 
>     I gave this a try, but it's currently failing in the unit tests:
> 
>     Running test test-crypto-tlscredsx509
> 
>     ** (tests/test-crypto-tlscredsx509:9999): CRITICAL **: 12:56:35.157: Failed
>     to sign certificate ASN1 parser: Value is not valid.
>     ERROR test-crypto-tlscredsx509 - Bail out! FATAL-CRITICAL: Failed to sign
>     certificate ASN1 parser: Value is not valid.
>     gmake: *** [Makefile.mtest:576: run-test-70] Error 1
>     gmake: *** Waiting for unfinished jobs....
>     Running test test-crypto-tlssession
> 
>     ** (tests/test-crypto-tlssession:10002): CRITICAL **: 12:56:35.288: Failed
>     to sign certificate ASN1 parser: Value is not valid.
>     ERROR test-crypto-tlssession - Bail out! FATAL-CRITICAL: Failed to sign
>     certificate ASN1 parser: Value is not valid.
> 
> 
> That's totally unrelated to my change. Was it failing before? What 
> environment was it failing in because it all seemed to work for me...

It's been a while since I last ran "make vm-build-freebsd", so I can't 
really tell whether the problem was already there before ... when I now try 
to run it without your patch, it fails for me, too, but rather due to 
FreeBSD 12.1 being out of service instead.

>     I guess it's the same problem as:
> 
>     https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
>     <https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html>
> 
>     ... so this would require a bug fix in the libtasn of FreeBSD first? See:
> 
>     https://gitlab.com/gnutls/libtasn1/-/merge_requests/71
>     <https://gitlab.com/gnutls/libtasn1/-/merge_requests/71>
> 
>   Is this on the host that built qemu, or inside the VM or where exactly?

It's inside the VM ... I assume the libtasn there has the same bug as the 
one on macOS?

  Thomas
Roman Bolshakov March 8, 2021, 3:46 p.m. UTC | #5
> 8 марта 2021 г., в 18:41, Thomas Huth <thuth@redhat.com> написал(а):
> 
> On 08/03/2021 16.26, Warner Losh wrote:
>> On Mon, Mar 8, 2021 at 6:30 AM Thomas Huth <thuth@redhat.com <mailto:thuth@redhat.com>> wrote:
>>    On 07/03/2021 16.56, Warner Losh wrote:
>>     > FreeBSD 12.1 has reached end of life. Use 12.2 instead so that FreeBSD's
>>     > project's packages will work.  Update which timezone to pick. Work
>>    around a QEMU
>>     > bug that incorrectly raises an exception on a CRC32 instruction with
>>    the FPU
>>     > disabled.  The qemu bug is described here:
>>     > https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
>>    <https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html>
>>     >
>>     > Signed-off-by: Warner Losh <imp@bsdimp.com <mailto:imp@bsdimp.com>>
>>     >
>>     > ---
>>     >   tests/vm/freebsd | 14 +++++++++-----
>>     >   1 file changed, 9 insertions(+), 5 deletions(-)
>>    I gave this a try, but it's currently failing in the unit tests:
>>    Running test test-crypto-tlscredsx509
>>    ** (tests/test-crypto-tlscredsx509:9999): CRITICAL **: 12:56:35.157: Failed
>>    to sign certificate ASN1 parser: Value is not valid.
>>    ERROR test-crypto-tlscredsx509 - Bail out! FATAL-CRITICAL: Failed to sign
>>    certificate ASN1 parser: Value is not valid.
>>    gmake: *** [Makefile.mtest:576: run-test-70] Error 1
>>    gmake: *** Waiting for unfinished jobs....
>>    Running test test-crypto-tlssession
>>    ** (tests/test-crypto-tlssession:10002): CRITICAL **: 12:56:35.288: Failed
>>    to sign certificate ASN1 parser: Value is not valid.
>>    ERROR test-crypto-tlssession - Bail out! FATAL-CRITICAL: Failed to sign
>>    certificate ASN1 parser: Value is not valid.
>> That's totally unrelated to my change. Was it failing before? What environment was it failing in because it all seemed to work for me...
> 
> It's been a while since I last ran "make vm-build-freebsd", so I can't really tell whether the problem was already there before ... when I now try to run it without your patch, it fails for me, too, but rather due to FreeBSD 12.1 being out of service instead.
> 
>>    I guess it's the same problem as:
>>    https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
>>    <https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html>
>>    ... so this would require a bug fix in the libtasn of FreeBSD first? See:
>>    https://gitlab.com/gnutls/libtasn1/-/merge_requests/71
>>    <https://gitlab.com/gnutls/libtasn1/-/merge_requests/71>
>>  Is this on the host that built qemu, or inside the VM or where exactly?
> 
> It's inside the VM ... I assume the libtasn there has the same bug as the one on macOS?
> 

The gnutls failures on macOS and FreeBSD (with clang as main compiler) won’t happen only if libtasn1 from master is used. Otherwise libtasn1 has to be compiled with -O1/-O0.

Отправлено с iPhone

> Thomas
>
Stefan Weil March 8, 2021, 4:49 p.m. UTC | #6
Am 08.03.21 um 16:46 schrieb Roman Bolshakov:

> gnutls failures on macOS and FreeBSD (with clang as main compiler) won’t happen only if libtasn1 from master is used. Otherwise libtasn1 has to be compiled with -O1/-O0.


Of course it is also possible to patch older versions of libtasn1 to
make them work with clang -O2.

Stefan
Warner Losh March 8, 2021, 7:51 p.m. UTC | #7
On Mon, Mar 8, 2021 at 8:46 AM Roman Bolshakov <r.bolshakov@yadro.com>
wrote:

>
> > 8 марта 2021 г., в 18:41, Thomas Huth <thuth@redhat.com> написал(а):
> >
> > On 08/03/2021 16.26, Warner Losh wrote:
> >> On Mon, Mar 8, 2021 at 6:30 AM Thomas Huth <thuth@redhat.com <mailto:
> thuth@redhat.com>> wrote:
> >>    On 07/03/2021 16.56, Warner Losh wrote:
> >>     > FreeBSD 12.1 has reached end of life. Use 12.2 instead so that
> FreeBSD's
> >>     > project's packages will work.  Update which timezone to pick. Work
> >>    around a QEMU
> >>     > bug that incorrectly raises an exception on a CRC32 instruction
> with
> >>    the FPU
> >>     > disabled.  The qemu bug is described here:
> >>     > https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
> >>    <https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html>
> >>     >
> >>     > Signed-off-by: Warner Losh <imp@bsdimp.com <mailto:imp@bsdimp.com
> >>
> >>     >
> >>     > ---
> >>     >   tests/vm/freebsd | 14 +++++++++-----
> >>     >   1 file changed, 9 insertions(+), 5 deletions(-)
> >>    I gave this a try, but it's currently failing in the unit tests:
> >>    Running test test-crypto-tlscredsx509
> >>    ** (tests/test-crypto-tlscredsx509:9999): CRITICAL **: 12:56:35.157:
> Failed
> >>    to sign certificate ASN1 parser: Value is not valid.
> >>    ERROR test-crypto-tlscredsx509 - Bail out! FATAL-CRITICAL: Failed to
> sign
> >>    certificate ASN1 parser: Value is not valid.
> >>    gmake: *** [Makefile.mtest:576: run-test-70] Error 1
> >>    gmake: *** Waiting for unfinished jobs....
> >>    Running test test-crypto-tlssession
> >>    ** (tests/test-crypto-tlssession:10002): CRITICAL **: 12:56:35.288:
> Failed
> >>    to sign certificate ASN1 parser: Value is not valid.
> >>    ERROR test-crypto-tlssession - Bail out! FATAL-CRITICAL: Failed to
> sign
> >>    certificate ASN1 parser: Value is not valid.
> >> That's totally unrelated to my change. Was it failing before? What
> environment was it failing in because it all seemed to work for me...
> >
> > It's been a while since I last ran "make vm-build-freebsd", so I can't
> really tell whether the problem was already there before ... when I now try
> to run it without your patch, it fails for me, too, but rather due to
> FreeBSD 12.1 being out of service instead.
> >
> >>    I guess it's the same problem as:
> >>    https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
> >>    <https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
> >
> >>    ... so this would require a bug fix in the libtasn of FreeBSD first?
> See:
> >>    https://gitlab.com/gnutls/libtasn1/-/merge_requests/71
> >>    <https://gitlab.com/gnutls/libtasn1/-/merge_requests/71>
> >>  Is this on the host that built qemu, or inside the VM or where exactly?
> >
> > It's inside the VM ... I assume the libtasn there has the same bug as
> the one on macOS?
> >
>
> The gnutls failures on macOS and FreeBSD (with clang as main compiler)
> won’t happen only if libtasn1 from master is used. Otherwise libtasn1 has
> to be compiled with -O1/-O0.
>

Forgive my ignorance...

Does this come from a submodule? From something I've built and installed on
my FreeBSD host? Or something that's installed into the FreeBSD guest?

Warner


> Отправлено с iPhone
>
> > Thomas
> >
>
Warner Losh March 8, 2021, 7:57 p.m. UTC | #8
On Mon, Mar 8, 2021 at 12:51 PM Warner Losh <imp@bsdimp.com> wrote:

>
>
> On Mon, Mar 8, 2021 at 8:46 AM Roman Bolshakov <r.bolshakov@yadro.com>
> wrote:
>
>>
>> > 8 марта 2021 г., в 18:41, Thomas Huth <thuth@redhat.com> написал(а):
>> >
>> > On 08/03/2021 16.26, Warner Losh wrote:
>> >> On Mon, Mar 8, 2021 at 6:30 AM Thomas Huth <thuth@redhat.com <mailto:
>> thuth@redhat.com>> wrote:
>> >>    On 07/03/2021 16.56, Warner Losh wrote:
>> >>     > FreeBSD 12.1 has reached end of life. Use 12.2 instead so that
>> FreeBSD's
>> >>     > project's packages will work.  Update which timezone to pick.
>> Work
>> >>    around a QEMU
>> >>     > bug that incorrectly raises an exception on a CRC32 instruction
>> with
>> >>    the FPU
>> >>     > disabled.  The qemu bug is described here:
>> >>     >
>> https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
>> >>    <https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html>
>> >>     >
>> >>     > Signed-off-by: Warner Losh <imp@bsdimp.com <mailto:
>> imp@bsdimp.com>>
>> >>     >
>> >>     > ---
>> >>     >   tests/vm/freebsd | 14 +++++++++-----
>> >>     >   1 file changed, 9 insertions(+), 5 deletions(-)
>> >>    I gave this a try, but it's currently failing in the unit tests:
>> >>    Running test test-crypto-tlscredsx509
>> >>    ** (tests/test-crypto-tlscredsx509:9999): CRITICAL **:
>> 12:56:35.157: Failed
>> >>    to sign certificate ASN1 parser: Value is not valid.
>> >>    ERROR test-crypto-tlscredsx509 - Bail out! FATAL-CRITICAL: Failed
>> to sign
>> >>    certificate ASN1 parser: Value is not valid.
>> >>    gmake: *** [Makefile.mtest:576: run-test-70] Error 1
>> >>    gmake: *** Waiting for unfinished jobs....
>> >>    Running test test-crypto-tlssession
>> >>    ** (tests/test-crypto-tlssession:10002): CRITICAL **: 12:56:35.288:
>> Failed
>> >>    to sign certificate ASN1 parser: Value is not valid.
>> >>    ERROR test-crypto-tlssession - Bail out! FATAL-CRITICAL: Failed to
>> sign
>> >>    certificate ASN1 parser: Value is not valid.
>> >> That's totally unrelated to my change. Was it failing before? What
>> environment was it failing in because it all seemed to work for me...
>> >
>> > It's been a while since I last ran "make vm-build-freebsd", so I can't
>> really tell whether the problem was already there before ... when I now try
>> to run it without your patch, it fails for me, too, but rather due to
>> FreeBSD 12.1 being out of service instead.
>> >
>> >>    I guess it's the same problem as:
>> >>    https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
>> >>    <
>> https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html>
>> >>    ... so this would require a bug fix in the libtasn of FreeBSD
>> first? See:
>> >>    https://gitlab.com/gnutls/libtasn1/-/merge_requests/71
>> >>    <https://gitlab.com/gnutls/libtasn1/-/merge_requests/71>
>> >>  Is this on the host that built qemu, or inside the VM or where
>> exactly?
>> >
>> > It's inside the VM ... I assume the libtasn there has the same bug as
>> the one on macOS?
>> >
>>
>> The gnutls failures on macOS and FreeBSD (with clang as main compiler)
>> won’t happen only if libtasn1 from master is used. Otherwise libtasn1 has
>> to be compiled with -O1/-O0.
>>
>
> Forgive my ignorance...
>
> Does this come from a submodule? From something I've built and installed
> on my FreeBSD host? Or something that's installed into the FreeBSD guest
>

ah, it's inside the guest.

Warner
Thomas Huth March 9, 2021, 5:08 a.m. UTC | #9
On 08/03/2021 20.57, Warner Losh wrote:
> 
> 
> On Mon, Mar 8, 2021 at 12:51 PM Warner Losh <imp@bsdimp.com 
> <mailto:imp@bsdimp.com>> wrote:
> 
> 
> 
>     On Mon, Mar 8, 2021 at 8:46 AM Roman Bolshakov <r.bolshakov@yadro.com
>     <mailto:r.bolshakov@yadro.com>> wrote:
> 
> 
>          > 8 марта 2021 г., в 18:41, Thomas Huth <thuth@redhat.com
>         <mailto:thuth@redhat.com>> написал(а):
>          >
>          > On 08/03/2021 16.26, Warner Losh wrote:
>          >> On Mon, Mar 8, 2021 at 6:30 AM Thomas Huth <thuth@redhat.com
>         <mailto:thuth@redhat.com> <mailto:thuth@redhat.com
>         <mailto:thuth@redhat.com>>> wrote:
>          >>    On 07/03/2021 16.56, Warner Losh wrote:
>          >>     > FreeBSD 12.1 has reached end of life. Use 12.2 instead so
>         that FreeBSD's
>          >>     > project's packages will work.  Update which timezone to
>         pick. Work
>          >>    around a QEMU
>          >>     > bug that incorrectly raises an exception on a CRC32
>         instruction with
>          >>    the FPU
>          >>     > disabled.  The qemu bug is described here:
>          >>     >
>         https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
>         <https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html>
>          >>   
>         <https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
>         <https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html>>
>          >>     >
>          >>     > Signed-off-by: Warner Losh <imp@bsdimp.com
>         <mailto:imp@bsdimp.com> <mailto:imp@bsdimp.com <mailto:imp@bsdimp.com>>>
>          >>     >
>          >>     > ---
>          >>     >   tests/vm/freebsd | 14 +++++++++-----
>          >>     >   1 file changed, 9 insertions(+), 5 deletions(-)
>          >>    I gave this a try, but it's currently failing in the unit tests:
>          >>    Running test test-crypto-tlscredsx509
>          >>    ** (tests/test-crypto-tlscredsx509:9999): CRITICAL **:
>         12:56:35.157: Failed
>          >>    to sign certificate ASN1 parser: Value is not valid.
>          >>    ERROR test-crypto-tlscredsx509 - Bail out! FATAL-CRITICAL:
>         Failed to sign
>          >>    certificate ASN1 parser: Value is not valid.
>          >>    gmake: *** [Makefile.mtest:576: run-test-70] Error 1
>          >>    gmake: *** Waiting for unfinished jobs....
>          >>    Running test test-crypto-tlssession
>          >>    ** (tests/test-crypto-tlssession:10002): CRITICAL **:
>         12:56:35.288: Failed
>          >>    to sign certificate ASN1 parser: Value is not valid.
>          >>    ERROR test-crypto-tlssession - Bail out! FATAL-CRITICAL:
>         Failed to sign
>          >>    certificate ASN1 parser: Value is not valid.
>          >> That's totally unrelated to my change. Was it failing before?
>         What environment was it failing in because it all seemed to work for
>         me...
>          >
>          > It's been a while since I last ran "make vm-build-freebsd", so I
>         can't really tell whether the problem was already there before ...
>         when I now try to run it without your patch, it fails for me, too,
>         but rather due to FreeBSD 12.1 being out of service instead.
>          >
>          >>    I guess it's the same problem as:
>          >>
>         https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
>         <https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html>
>          >>   
>         <https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
>         <https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html>>
>          >>    ... so this would require a bug fix in the libtasn of FreeBSD
>         first? See:
>          >> https://gitlab.com/gnutls/libtasn1/-/merge_requests/71
>         <https://gitlab.com/gnutls/libtasn1/-/merge_requests/71>
>          >>    <https://gitlab.com/gnutls/libtasn1/-/merge_requests/71
>         <https://gitlab.com/gnutls/libtasn1/-/merge_requests/71>>
>          >>  Is this on the host that built qemu, or inside the VM or where
>         exactly?
>          >
>          > It's inside the VM ... I assume the libtasn there has the same
>         bug as the one on macOS?
>          >
> 
>         The gnutls failures on macOS and FreeBSD (with clang as main
>         compiler) won’t happen only if libtasn1 from master is used.
>         Otherwise libtasn1 has to be compiled with -O1/-O0.
> 
> 
>     Forgive my ignorance...
> 
>     Does this come from a submodule? From something I've built and installed
>     on my FreeBSD host? Or something that's installed into the FreeBSD guest
> 
> 
> ah, it's inside the guest.

Yes, IIUC it's the pre-installed libtasn1 in the guest, and the problem 
likely occurs just now since the clang that has been used to compile the 
library has been updated, too?

Anyway, can you reproduce the issue? If so, could you please file a bug 
ticket against libtasn1 there, so that it gets fixed? (sorry, I don't have 
any clue about the FreeBSD process here)

  Thomas
Thomas Huth March 19, 2021, 12:01 p.m. UTC | #10
On 09/03/2021 06.08, Thomas Huth wrote:
> On 08/03/2021 20.57, Warner Losh wrote:
>>
>>
>> On Mon, Mar 8, 2021 at 12:51 PM Warner Losh <imp@bsdimp.com 
>> <mailto:imp@bsdimp.com>> wrote:
>>
>>
>>
>>     On Mon, Mar 8, 2021 at 8:46 AM Roman Bolshakov <r.bolshakov@yadro.com
>>     <mailto:r.bolshakov@yadro.com>> wrote:
>>
>>
>>          > 8 марта 2021 г., в 18:41, Thomas Huth <thuth@redhat.com
>>         <mailto:thuth@redhat.com>> написал(а):
>>          >
>>          > On 08/03/2021 16.26, Warner Losh wrote:
>>          >> On Mon, Mar 8, 2021 at 6:30 AM Thomas Huth <thuth@redhat.com
>>         <mailto:thuth@redhat.com> <mailto:thuth@redhat.com
>>         <mailto:thuth@redhat.com>>> wrote:
>>          >>    On 07/03/2021 16.56, Warner Losh wrote:
>>          >>     > FreeBSD 12.1 has reached end of life. Use 12.2 instead so
>>         that FreeBSD's
>>          >>     > project's packages will work.  Update which timezone to
>>         pick. Work
>>          >>    around a QEMU
>>          >>     > bug that incorrectly raises an exception on a CRC32
>>         instruction with
>>          >>    the FPU
>>          >>     > disabled.  The qemu bug is described here:
>>          >>     >
>>         https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
>>         <https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html>
>>          >>         
>> <https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html
>>         <https://www.mail-archive.com/qemu-devel@nongnu.org/msg784158.html>>
>>          >>     >
>>          >>     > Signed-off-by: Warner Losh <imp@bsdimp.com
>>         <mailto:imp@bsdimp.com> <mailto:imp@bsdimp.com 
>> <mailto:imp@bsdimp.com>>>
>>          >>     >
>>          >>     > ---
>>          >>     >   tests/vm/freebsd | 14 +++++++++-----
>>          >>     >   1 file changed, 9 insertions(+), 5 deletions(-)
>>          >>    I gave this a try, but it's currently failing in the unit 
>> tests:
>>          >>    Running test test-crypto-tlscredsx509
>>          >>    ** (tests/test-crypto-tlscredsx509:9999): CRITICAL **:
>>         12:56:35.157: Failed
>>          >>    to sign certificate ASN1 parser: Value is not valid.
>>          >>    ERROR test-crypto-tlscredsx509 - Bail out! FATAL-CRITICAL:
>>         Failed to sign
>>          >>    certificate ASN1 parser: Value is not valid.
>>          >>    gmake: *** [Makefile.mtest:576: run-test-70] Error 1
>>          >>    gmake: *** Waiting for unfinished jobs....
>>          >>    Running test test-crypto-tlssession
>>          >>    ** (tests/test-crypto-tlssession:10002): CRITICAL **:
>>         12:56:35.288: Failed
>>          >>    to sign certificate ASN1 parser: Value is not valid.
>>          >>    ERROR test-crypto-tlssession - Bail out! FATAL-CRITICAL:
>>         Failed to sign
>>          >>    certificate ASN1 parser: Value is not valid.
>>          >> That's totally unrelated to my change. Was it failing before?
>>         What environment was it failing in because it all seemed to work for
>>         me...
>>          >
>>          > It's been a while since I last ran "make vm-build-freebsd", so I
>>         can't really tell whether the problem was already there before ...
>>         when I now try to run it without your patch, it fails for me, too,
>>         but rather due to FreeBSD 12.1 being out of service instead.
>>          >
>>          >>    I guess it's the same problem as:
>>          >>
>>         https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
>>         <https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html>
>>          >>         
>> <https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html
>>         
>> <https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg06750.html>>
>>          >>    ... so this would require a bug fix in the libtasn of FreeBSD
>>         first? See:
>>          >> https://gitlab.com/gnutls/libtasn1/-/merge_requests/71
>>         <https://gitlab.com/gnutls/libtasn1/-/merge_requests/71>
>>          >>    <https://gitlab.com/gnutls/libtasn1/-/merge_requests/71
>>         <https://gitlab.com/gnutls/libtasn1/-/merge_requests/71>>
>>          >>  Is this on the host that built qemu, or inside the VM or where
>>         exactly?
>>          >
>>          > It's inside the VM ... I assume the libtasn there has the same
>>         bug as the one on macOS?
>>          >
>>
>>         The gnutls failures on macOS and FreeBSD (with clang as main
>>         compiler) won’t happen only if libtasn1 from master is used.
>>         Otherwise libtasn1 has to be compiled with -O1/-O0.
>>
>>
>>     Forgive my ignorance...
>>
>>     Does this come from a submodule? From something I've built and installed
>>     on my FreeBSD host? Or something that's installed into the FreeBSD guest
>>
>>
>> ah, it's inside the guest.
> 
> Yes, IIUC it's the pre-installed libtasn1 in the guest, and the problem 
> likely occurs just now since the clang that has been used to compile the 
> library has been updated, too?
> 
> Anyway, can you reproduce the issue? If so, could you please file a bug 
> ticket against libtasn1 there, so that it gets fixed? (sorry, I don't have 
> any clue about the FreeBSD process here)

For the time being, I suggest we add this hunk to your patch here to get
the VM-build going again:

diff --git a/tests/vm/freebsd b/tests/vm/freebsd
--- a/tests/vm/freebsd
+++ b/tests/vm/freebsd
@@ -46,7 +46,9 @@ class FreeBSDVM(basevm.BaseVM):
          "gettext",
  
          # libs: crypto
-        "gnutls",
+        # TODO: Enable gnutls again once FreeBSD's libtasn1 got fixed
+        # See: https://gitlab.com/gnutls/libtasn1/-/merge_requests/71
+        # "gnutls",
  
          # libs: images
          "jpeg-turbo",

  Thomas
diff mbox series

Patch

diff --git a/tests/vm/freebsd b/tests/vm/freebsd
index 09f3ee6cb8..81389d527e 100755
--- a/tests/vm/freebsd
+++ b/tests/vm/freebsd
@@ -20,12 +20,16 @@  import socket
 import subprocess
 import basevm
 
+FREEBSD_CONFIG = {
+    'cpu'	: "max,sse4.2=off",
+}
+
 class FreeBSDVM(basevm.BaseVM):
     name = "freebsd"
     arch = "x86_64"
 
-    link = "https://download.freebsd.org/ftp/releases/ISO-IMAGES/12.1/FreeBSD-12.1-RELEASE-amd64-disc1.iso.xz"
-    csum = "7394c3f60a1e236e7bd3a05809cf43ae39a3b8e5d42d782004cf2f26b1cfcd88"
+    link = "https://download.freebsd.org/ftp/releases/ISO-IMAGES/12.2/FreeBSD-12.2-RELEASE-amd64-disc1.iso.xz"
+    csum = "a4530246cafbf1dd42a9bd3ea441ca9a78a6a0cd070278cbdf63f3a6f803ecae"
     size = "20G"
     pkgs = [
         # build tools
@@ -125,7 +129,7 @@  class FreeBSDVM(basevm.BaseVM):
         self.console_wait_send("IPv6",                  "n")
         self.console_wait_send("Resolver",              "\n")
 
-        self.console_wait_send("Time Zone Selector",    "a\n")
+        self.console_wait_send("Time Zone Selector",    "0\n")
         self.console_wait_send("Confirmation",          "y")
         self.console_wait_send("Time & Date",           "\n")
         self.console_wait_send("Time & Date",           "\n")
@@ -206,4 +210,4 @@  class FreeBSDVM(basevm.BaseVM):
         self.print_step("All done")
 
 if __name__ == "__main__":
-    sys.exit(basevm.main(FreeBSDVM))
+    sys.exit(basevm.main(FreeBSDVM, config=FREEBSD_CONFIG))