Bug 125900 - [PATCH] CAN-2004-0554: FPU exception handling local DoS
Summary: [PATCH] CAN-2004-0554: FPU exception handling local DoS
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 1
Hardware: All
OS: Linux
medium
high
Target Milestone: ---
Assignee: Arjan van de Ven
QA Contact: Brian Brock
URL: http://reviewed.homelinux.org/news/20...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2004-06-13 16:38 UTC by Robert Scheck
Modified: 2007-11-30 22:10 UTC (History)
3 users (show)

Fixed In Version: 2.4.22-1.2194.nptl
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2004-06-22 22:33:19 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
linux-2.4.22-fpu.patch (1.02 KB, patch)
2004-06-13 19:53 UTC, Robert Scheck
no flags Details | Diff
linux-2.4.22-fpu.patch (1.02 KB, patch)
2004-06-13 22:30 UTC, Robert Scheck
no flags Details | Diff
linux-2.4.22-fpu.patch for x86 and x86_64 (1.76 KB, patch)
2004-06-13 22:33 UTC, Robert Scheck
no flags Details | Diff
Last patch flooding (hopefully), backport (from Linus' official 2.6) for x86 and x86_64 (1.81 KB, patch)
2004-06-14 19:41 UTC, Robert Scheck
no flags Details | Diff

Description Robert Scheck 2004-06-13 16:38:01 UTC
Description of problem:
Since June 11, 2004 there's a crash code for the Linux kernel 2.4.x 
and 2.6.x available, freezing the system/breaking it down, for more 
see: http://reviewed.homelinux.org/news/2004-06-11_kernel_crash/

Version-Release number of selected component (if applicable):
kernel-2.4.22-1.2188.nptl

How reproducible:
Everytime, see below.

Steps to Reproduce:
1. wget http://reviewed.homelinux.org/news/2004-06-11_kernel_crash/crash.c.txt
2. mv crash.c.txt crash.c
3. gcc crash.c -o evil
4. ./evil
5. Get the system freeze
  
Actual results:
Well, this crash code causes a system breakdown ;-)

Expected results:
No crash/breakdown/system freeze at using this crash code.

Additional info:
I was able to reproduce that behaviour with kernel-2.4.22-1.2188.nptl
at i586, i686 and athlon.

Comment 1 Robert Scheck 2004-06-13 19:53:21 UTC
Oh...I forgot to say, that the patches at this website don't apply 
(signal.c-2.4.2?.patch.txt) to the Red Hat modified kernel and there are kernel oops (http://lkml.org/lkml/2004/6/12/64), but the idea 
from http://lkml.org/lkml/2004/6/12/81 is working after a 2.4 
backport.

After applying this patch (I applied it as Patch86x in the spec 
file), rebuild, install & reboot, I executed the crash code again - 
it only has a upper cpu usage now, but it doesn't crash the system :)

This patch worked for me at i586, i686, athlon. Sorry, I've got no 
SMP and no x86_64 here (so x86_64 also seems to be generally 
affected?) to test it there.

Comment 2 Robert Scheck 2004-06-13 19:53:58 UTC
Created attachment 101097 [details]
linux-2.4.22-fpu.patch

Comment 3 Robert Scheck 2004-06-13 22:30:46 UTC
Created attachment 101099 [details]
linux-2.4.22-fpu.patch

Well, I got access to a x86_64 box at work and there, the system crashed also
without a patch. Applying the same patch to the x86_64 solved it for me.

I still don't know, whether that what I'm doing with that patch is maybe good 
or bad - but it is working for me currently. If I'm wrong, I'm hoping that you 

guys from Red Hat do it better ;-)

Comment 4 Robert Scheck 2004-06-13 22:33:26 UTC
Created attachment 101100 [details]
linux-2.4.22-fpu.patch for x86 and x86_64

Sorry, uploaded the wrong x86 (IA32 only) again, so here's the right one ;-)

Comment 5 Robert Scheck 2004-06-14 19:41:41 UTC
Created attachment 101125 [details]
Last patch flooding (hopefully), backport (from Linus' official 2.6) for x86 and x86_64

Comment 6 Dave Jones 2004-06-14 20:45:42 UTC
an RPM with this problem fixed went to updates-testing this afternoon.
If it looks ok, it'll move to updates-final in the next day or so.


Comment 7 Petter Reinholdtsen 2004-06-15 08:39:47 UTC
This bug is CAN-2004-0554, and the same as bug #125794.

Comment 8 Robert Scheck 2004-06-19 13:34:39 UTC
Dave, I've got a problem since using 219x: My CPU load isn't lower than
0.5 now (my system is just idling, no CPU intensive processes!), most 
of the time the "default load" is >= 1.00 - that's still too much for 
simple idling, where I had with kernel 218x a load from 0.0x up to 
maximal 0.5. Hotsanic documented this for me very well...so what's up?

Could you please have a look to this?! Thank you! FYI: I've got a 
Intel Celeron 1.0 GHz.

Comment 9 Dave Jones 2004-06-19 15:44:56 UTC
theres nothing changed in the kernel that could explain this that I
can see.  The FPU fix adds a single instruction to context switching,
so that path slows down a little, but that should not affect your load
average at all.


Comment 10 Robert Scheck 2004-06-19 17:56:30 UTC
Okay, 2194 is working now on all my computers normally - including 
the "problem host" above (a reinstall of the kernel solved it for me; 
don't know what the problem caused).

Comment 11 Robert Scheck 2004-06-22 22:33:19 UTC
kernel-2.4.22-1.2194.nptl was moved from testing to the stable update 
repository, but I'm missing an announcement at fedora-announce- 
list...but I'm closing this bug now, because my issue is solved.


Note You need to log in before you can comment on or make changes to this bug.