Bug 10346

Summary: iBCS bug that produces "SIG: sigpending lied" in Foxpro 2.6 for Unix
Product: [Retired] Red Hat Linux Reporter: Dennis Allen <dennis>
Component: kernelAssignee: Alan Cox <alan>
Status: CLOSED WONTFIX QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 4.2   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2002-12-16 03:02:11 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Tested and working patch for kernel-2.2.16-3.src.rpm none

Description Dennis Allen 2000-03-25 21:24:52 UTC
To get SCO Foxpro 2.6 for Unix to work on a RedHat 6.0 Linux, you must
load the iBCS module [insmod iBCS.o].

When FPU produces a bell, you will see several "SIG: sigpending lied"
messages.  This message is from a bug in the iBCS component of the Linux
kernel. Well, Piotr Kasprzyk actually found this bug and showed me how to
fix it.

vi /usr/src/linux/ibcs/iBCSemul/signal.c

In the file signal.c find function deactivate_signal(), around line 95.
You'll need to add the line:

          recalc_sigpending(task);

This function should then look like:

     void
     deactivate_signal(struct task_struct *task, int signum)
     {
             spin_lock_irq(&task->sigmask_lock);
             sigdelset(&task->signal, signum);
          recalc_sigpending(task);
             spin_unlock_irq(&task->sigmask_lock);
     }

Comment 1 Jan Carlson 2000-08-15 21:25:03 UTC
Created attachment 2523 [details]
Tested and working patch for kernel-2.2.16-3.src.rpm

Comment 2 Alan Cox 2002-12-16 03:02:11 UTC
xabi replaced ibcs2