[Linux-ia64] patch ia32 mode [Threads don't wake up in ia32 mode]

From: Jose Luu <jluu_at_mainsoft.com>
Date: 2001-07-27 03:34:47
This is the solution to the problem I described in june,

see test case there:
https://external-lists.valinux.com/archives//linux-ia64/2001-June/001792.htm
l

There was an oversight on the size of the long, which caused an improper
restoration of the real time signals blocking mask of the 32 bit frame, 2 of
these signals are used by the pthreads library for wakeup or cancellation.

This patch can be applied to all 2.4.x series kernels including 2.4.7, since
the file has not changed.

Jose


--- 2.4.5/arch/ia64/ia32/ia32_signal.c  Tue Oct 10 02:54:53 2000
+++ new-2.4.5/arch/ia64/ia32/ia32_signal.c      Thu Jul 26 12:49:42 2001
@@ -279,7 +279,7 @@
        err |= setup_sigcontext_ia32(&frame->sc, &frame->fpstate, regs,
set->sig[0]);

        if (_IA32_NSIG_WORDS > 1) {
-               err |= __copy_to_user(frame->extramask, &set->sig[1],
+               err |= __copy_to_user(frame->extramask,(((char *) &set->sig)
+ 4) ,
                                      sizeof(frame->extramask));
        }
Received on Thu Jul 26 10:34:08 2001

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:04 EST