linux-mips
[Top] [All Lists]

[RFC] Add 4/8 bytes to 'struct k_sigaction'...

To: linux-mips@linux-mips.org
Subject: [RFC] Add 4/8 bytes to 'struct k_sigaction'...
From: "Steven J. Hill" <sjhill@realitydiluted.com>
Date: Wed, 05 Jan 2005 22:36:08 -0600
Original-recipient: rfc822;linux-mips@linux-mips.org
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.3) Gecko/20041007 Debian/1.7.3-5
In order support easy building of IRIX emulation support as either
a module or statically, I would like to simply have the 'sa_restorer'
function pointer be defined for all big endian architectures. This
means extra storage space, but I wanted comments first. The problem
is that if you configure for IRIX, build and then decide that you
want to build it as a module, CONFIG_BINFMT_IRIX_MODULE gets defined
instead of CONFIG_BINFMT_IRIX and hence 'signal.h' changes and the
whole kernel has to be rebuilt. If we simply have it be defined for
big endian architectures regardless, then there is no recompile. Al
Viro did comment that Christoph Hellwig may be moving stuff like
'struct sighand_struct' out of 'sched.h' along with some other things
which might make this below a non-issue, but that is far off. Comments
before I commit?

-Steve

Index: signal.h
===================================================================
RCS file: /home/cvs/linux/include/asm-mips/signal.h,v
retrieving revision 1.17
diff -u -r1.17 signal.h
--- signal.h    30 Sep 2003 14:27:29 -0000      1.17
+++ signal.h    6 Jan 2005 04:21:58 -0000
@@ -135,7 +135,7 @@

 struct k_sigaction {
        struct sigaction sa;
-#ifdef CONFIG_BINFMT_IRIX
+#if !defined(CONFIG_CPU_LITTLE_ENDIAN)
        void            (*sa_restorer)(void);
 #endif
 };

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