Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 183491

Summary: linux-2.4.20-CAN-2005-0749-elf_dos.patch is incorrect.
Product: [Retired] Fedora Legacy Reporter: Shuichi KITAGUCHI <kit>
Component: kernelAssignee: Fedora Legacy Bugs <bugs>
Status: CLOSED ERRATA QA Contact:
Severity: high Docs Contact:
Priority: medium    
Version: unspecified   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: LEGACY, rh73, rh90, 1
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-03-05 19:16:07 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:

Description Shuichi KITAGUCHI 2006-03-01 15:10:49 UTC
Description of problem:
linux-2.4.20-CAN-2005-0749-elf_dos.patch in 2.4.20-43.7.legacy is incorrect.
this seems to cause kernel locks up under heavy load.
correct patch is in linux-2.4.21-binfmt-elf.patch from
kernel-2.4.21-27.0.4.EL.src.rpm

problem is here:

diff -Naur linux-2.4.20.ori/fs/binfmt_elf.c linux-2.4.20/fs/binfmt_elf.c
--- linux-2.4.20.ori/fs/binfmt_elf.c	2005-04-25 15:42:21.000000000 -0400
+++ linux-2.4.20/fs/binfmt_elf.c	2005-04-25 18:06:17.000000000 -0400
@@ -846,11 +846,12 @@
 
 static int load_elf_library(struct file *file)
 {
-	struct elf_phdr *elf_phdata;
+	struct elf_phdr *elf_phdata, *elf_phdata_save;
 	unsigned long elf_bss, bss, len;
 	int retval, error, i, j;
 	struct elfhdr elf_ex;
 
+  elf_phdata_save = elf_phdata;     XXX store undecided value to elf_phdata_save
 	error = -ENOEXEC;
 	retval = kernel_read(file, 0, (char *) &elf_ex, sizeof(elf_ex));
 	if (retval != sizeof(elf_ex))
@@ -910,7 +911,7 @@
 	error = 0;
 
 out_free_ph:
-	kfree(elf_phdata);
+	kfree(elf_phdata_save);    XXX kfree undecided value...!
 out:
 	return error;
 }

Comment 1 Marc Deslauriers 2006-03-01 23:04:47 UTC
Yep, that looks broken. I'll fix it in the next kernel update.

Comment 2 Marc Deslauriers 2006-03-05 19:16:07 UTC
Packages that fix this issue are now in updates-testing.