[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#447036: marked as done (gnumach: panic: fp_intr: already caught intr)



Your message dated Fri, 20 Feb 2009 01:47:04 +0000
with message-id <E1LaKTo-0006Ct-9P@ries.debian.org>
and subject line Bug#447036: fixed in gnumach 2:1.3.99.dfsg.cvs20090220-1
has caused the Debian Bug report #447036,
regarding gnumach: panic: fp_intr: already caught intr
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
447036: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=447036
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: gnumach
Version: 2:1.3.99.dfsg.cvs20070809-1

I get the following panic during configure of erlang ("checking for
unreliable floating point execptions"):

panic: fp_intr: already caught intr
Kernel Breakpoint trap, eip 0x117d07
Stopped at 0x117d06: int $3

The trace is:

0x117d06
Debugger
/build/buildd/gnumach-1.3.99.dfsg.cvs20070809/build-dbg/../kern/debug.c:101
0x117cd3
panic
/build/buildd/gnumach-1.3.99.dfsg.cvs20070809/build-dbg/../kern/debug.c:143
0x100f58
fpintr
/build/buildd/gnumach-1.3.99.dfsg.cvs20070809/build-dbg/../i386/i386/fpu.c:814
0x134a55
interrupt
/build/buildd/gnumach-1.3.99.dfsg.cvs20070809/build-dbg/../i386/i386at/interrupt.S:44

The registers are:

cs 0x8
ds 0x10
es 0x10
fs 0x10
gs 0x10
ss 0x10
eax 0xa
ecx 0x7dff4
edx 0x3d5
ebx 0xffffffff
esp 0x2ddff0
ebp 0x2de004
esi 0x1
edi 0x1204fc8
eip 0x117d06
efl 0x206

(esi and edi were different on a second time I triggered the panic)

This is the (trimmed down) program which provokes the panic:

--8<--
/* fpe-test.c */
#include <stdio.h>
#include <signal.h>
#include <stdlib.h>

volatile int erl_fp_exception;

static void unmask_x87(void)
{
    unsigned short cw;
    __asm__ __volatile__("fstcw %0" : "=m"(cw));
    cw &= ~(0x01|0x04|0x08);   /* unmask IM, ZM, OM */
    __asm__ __volatile__("fldcw %0" : : "m"(cw));
}

static void unmask_fpe(void)
{
    unmask_x87();
}

static __inline__ int check_fpe(double f)
{
    __asm__ __volatile__("fwait" : "=m"(erl_fp_exception) : "m"(f));
    if (!erl_fp_exception)
       return 0;
    __asm__ __volatile__("fninit");
    unmask_fpe();
    return 1;
}

static void fpe_sig_handler(int sig)
{
    erl_fp_exception = 1;
}

static void do_init(void)
{
    signal(SIGFPE, fpe_sig_handler);
    unmask_fpe();
}

double a = 3.23e133;
double b = 3.57e257;
double res;

void do_fmul(void)
{
    res = a * b;
}

int do_check(void)
{
    if (check_fpe(res)) {
       fprintf(stderr, "res = %g, FPE worked\n", res);
       return 0;
    } else {
       fprintf(stderr, "res = %g, FPE failed\n", res);
       return 1;
}

int main(int argc, const char **argv)
{
    if (argc == 3) {
       a = atof(argv[1]);
       b = atof(argv[2]);
    }
    do_init();
    do_fmul();
    return do_check();
}
--8<--

It gets compiled with gcc -o erlang -g -O2
-I/org/buildd/build/buildd/erlang-11.b.5dfsg/erts/i686-unknown-gnu0.3
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -D_GNU_SOURCE   erlang.c
-lutil -ldl -lm.


Michael



--- End Message ---
--- Begin Message ---
Source: gnumach
Source-Version: 2:1.3.99.dfsg.cvs20090220-1

We believe that the bug you reported is fixed in the latest version of
gnumach, which is due to be installed in the Debian FTP archive:

gnumach-dbg_1.3.99.dfsg.cvs20090220-1_i386.deb
  to pool/main/g/gnumach/gnumach-dbg_1.3.99.dfsg.cvs20090220-1_i386.deb
gnumach-dev_1.3.99.dfsg.cvs20090220-1_i386.deb
  to pool/main/g/gnumach/gnumach-dev_1.3.99.dfsg.cvs20090220-1_i386.deb
gnumach-udeb_1.3.99.dfsg.cvs20090220-1_i386.udeb
  to pool/main/g/gnumach/gnumach-udeb_1.3.99.dfsg.cvs20090220-1_i386.udeb
gnumach_1.3.99.dfsg.cvs20090220-1.diff.gz
  to pool/main/g/gnumach/gnumach_1.3.99.dfsg.cvs20090220-1.diff.gz
gnumach_1.3.99.dfsg.cvs20090220-1.dsc
  to pool/main/g/gnumach/gnumach_1.3.99.dfsg.cvs20090220-1.dsc
gnumach_1.3.99.dfsg.cvs20090220-1_i386.deb
  to pool/main/g/gnumach/gnumach_1.3.99.dfsg.cvs20090220-1_i386.deb
gnumach_1.3.99.dfsg.cvs20090220.orig.tar.gz
  to pool/main/g/gnumach/gnumach_1.3.99.dfsg.cvs20090220.orig.tar.gz



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 447036@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Guillem Jover <guillem@debian.org> (supplier of updated gnumach package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Fri, 20 Feb 2009 03:27:59 +0200
Source: gnumach
Binary: gnumach gnumach-udeb gnumach-dbg gnumach-dev
Architecture: source i386
Version: 2:1.3.99.dfsg.cvs20090220-1
Distribution: unstable
Urgency: low
Maintainer: GNU Hurd Maintainers <debian-hurd@lists.debian.org>
Changed-By: Guillem Jover <guillem@debian.org>
Description: 
 gnumach    - The GNU version of the Mach microkernel
 gnumach-dbg - The GNU version of the Mach microkernel for debugging
 gnumach-dev - The GNU version of the Mach microkernel
 gnumach-udeb - The GNU version of the Mach microkernel (udeb)
Closes: 447036
Changes: 
 gnumach (2:1.3.99.dfsg.cvs20090220-1) unstable; urgency=low
 .
   * New upstream CVS snapshot.
     - Do not panic in fpintr if we receive the interrupt twice in the same
       thread. (Closes: #447036)
 .
   [ Samuel Thibault ]
   * Remove kern/mach_param.h patch from debian/patches/14_alloc_params.patch,
     increase zone_map_size and maximum number of cached objects.
 .
   [ Guillem Jover ]
   * Switch to debhelper compatibility level 7.
   * Use dh_prep instead of “dh_clean -k”.
   * Remove XC- prefix from Package-Type field.
   * Sync with upstream:
     - debian/patches/00_clean_gfdl.patch: Refresh.
     - debian/patches/05_halt_on_panic_flag.patch: Likewise.
     - debian/patches/14_alloc_params.patch: Likewise.
     - debian/patches/15_mem_obj_proxy.patch: Likewise.
     - debian/patches/20_mmx_support.patch: Likewise.
Checksums-Sha1: 
 9877aa7221708edd8e08031f39297081f672a770 1556 gnumach_1.3.99.dfsg.cvs20090220-1.dsc
 58ee573feb9f38c12c0a88b187553a0ecd0cfaab 3379420 gnumach_1.3.99.dfsg.cvs20090220.orig.tar.gz
 e9713c22783decb4ad80d1fad5359f4e08c08e1e 51896 gnumach_1.3.99.dfsg.cvs20090220-1.diff.gz
 31f07f1d8b5f1c91a91dbbfb431e80830331d7df 961672 gnumach_1.3.99.dfsg.cvs20090220-1_i386.deb
 35ef5e1adf226b67a7a213dcf1cbb0ff38c0caa3 865704 gnumach-udeb_1.3.99.dfsg.cvs20090220-1_i386.udeb
 fbe723d2d917ed396b9aabf9ef54d42cd9a61d00 3483354 gnumach-dbg_1.3.99.dfsg.cvs20090220-1_i386.deb
 2c5e1ffa9f38e958982cf6101adaa8d9fe718db9 162208 gnumach-dev_1.3.99.dfsg.cvs20090220-1_i386.deb
Checksums-Sha256: 
 94073ede1bbf709388a3627871566691b10beee00f6e407f99102623440db5bd 1556 gnumach_1.3.99.dfsg.cvs20090220-1.dsc
 bf71537a485d8439dd009b368d2a3191c1ee4f03c166005ccaa59abf93d92522 3379420 gnumach_1.3.99.dfsg.cvs20090220.orig.tar.gz
 001e7d6289451c5553cf2311837f2850a750b612b87a69edc77f22ecdda4094d 51896 gnumach_1.3.99.dfsg.cvs20090220-1.diff.gz
 de3ae7cca8f1eea27e72a68985758a02fd25377a0886b2297f45d93fe4d392ca 961672 gnumach_1.3.99.dfsg.cvs20090220-1_i386.deb
 38be586ac5814766972ace3b3d070afd9210af4ce6a277505400267f3ab86a8a 865704 gnumach-udeb_1.3.99.dfsg.cvs20090220-1_i386.udeb
 55f88368e5f25b492ea313dd4693af901cc61b201d9cf6280b9f36368a59bbb6 3483354 gnumach-dbg_1.3.99.dfsg.cvs20090220-1_i386.deb
 8ad44b8ce18dd36b65ae1521eb5af38f3c59fd1ba2a5352f197a061a02341c69 162208 gnumach-dev_1.3.99.dfsg.cvs20090220-1_i386.deb
Files: 
 ad1046b968d420cf67622de072cf9924 1556 admin optional gnumach_1.3.99.dfsg.cvs20090220-1.dsc
 c1a203f403579c18b08ea076803e9d0f 3379420 admin optional gnumach_1.3.99.dfsg.cvs20090220.orig.tar.gz
 73980933796358da08113abde9a2280c 51896 admin optional gnumach_1.3.99.dfsg.cvs20090220-1.diff.gz
 f2bf3857658ae64e5f351116cbee143b 961672 admin optional gnumach_1.3.99.dfsg.cvs20090220-1_i386.deb
 1a338c8d681893fc0d6258c0326d000f 865704 debian-installer optional gnumach-udeb_1.3.99.dfsg.cvs20090220-1_i386.udeb
 242ead3138e2c82f6d2958f3d59844af 3483354 devel extra gnumach-dbg_1.3.99.dfsg.cvs20090220-1_i386.deb
 c2e2565559bc0698f2a621eb6520842d 162208 devel optional gnumach-dev_1.3.99.dfsg.cvs20090220-1_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEARECAAYFAkmeCMYACgkQuW9ciZ2SjJs/fwCeKKqhMReqKa9G2auqHXWcYO6D
5vkAoMzIzrB1Jva+LX/jWTBfMDFuimbr
=fdFg
-----END PGP SIGNATURE-----



--- End Message ---

Reply to: