linux-mips
[Top] [All Lists]

COP2 unaligned -> SIGBUS

To: "linux-mips@linux-mips.org" <linux-mips@linux-mips.org>
Subject: COP2 unaligned -> SIGBUS
From: Mikael Starvik <mikael.starvik@axis.com>
Date: Mon, 23 Nov 2009 07:31:28 +0100
Accept-language: sv-SE
Acceptlanguage: sv-SE
Original-recipient: rfc822;linux-mips@linux-mips.org
Sender: linux-mips-bounce@linux-mips.org
Thread-index: AcpsBpbSFxv5b1bcRcijCkkfZ+dzaw==
Thread-topic: COP2 unaligned -> SIGBUS
Since there are now at least two users of cop2 I propose the following:

Regards
/Mikael

Index: unaligned.c
===================================================================
RCS file: /usr/local/cvs/linux/os/linux-2.6/arch/mips/kernel/unaligned.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- unaligned.c 15 Jun 2009 16:00:57 -0000      1.12
+++ unaligned.c 23 Nov 2009 06:26:04 -0000      1.13
@@ -446,22 +446,15 @@
        case ldc1_op:
        case swc1_op:
        case sdc1_op:
-               /*
-                * I herewith declare: this does not happen.  So send SIGBUS.
-                */
-               goto sigbus;
-
        case lwc2_op:
        case ldc2_op:
        case swc2_op:
        case sdc2_op:
                /*
-                * These are the coprocessor 2 load/stores.  The current
-                * implementations don't use cp2 and cp2 should always be
-                * disabled in c0_status.  So send SIGILL.
-                 * (No longer true: The Sony Praystation uses cp2 for
-                 * 3D matrix operations.  Dunno if that thingy has a MMU ...)
+                * I herewith declare: this does not happen.  So send SIGBUS.
                 */
+               goto sigbus;
+
        default:
                /*
                 * Pheeee...  We encountered an yet unknown instruction or



<Prev in Thread] Current Thread [Next in Thread>