rpms/kernel/F-7 kernel-2.6.spec, 1.3423, 1.3424 linux-2.6-execshield.patch, 1.56, 1.57

Chuck Ebbert (cebbert) fedora-extras-commits at redhat.com
Thu Jan 31 00:46:47 UTC 2008


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv27977

Modified Files:
	kernel-2.6.spec linux-2.6-execshield.patch 
Log Message:
* Wed Jan 30 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.23.14-73
- Fix segfaults from using vdso=2 (F8#427641)



Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/kernel-2.6.spec,v
retrieving revision 1.3423
retrieving revision 1.3424
diff -u -r1.3423 -r1.3424
--- kernel-2.6.spec	26 Jan 2008 00:07:23 -0000	1.3423
+++ kernel-2.6.spec	31 Jan 2008 00:45:58 -0000	1.3424
@@ -2324,6 +2324,9 @@
 %endif
 
 %changelog
+* Wed Jan 30 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.23.14-73
+- Fix segfaults from using vdso=2 (F8#427641)
+
 * Fri Jan 25 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.23.14-72
 - Fix the initio driver broken in 2.6.23. (F8#390531)
 

linux-2.6-execshield.patch:

Index: linux-2.6-execshield.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/linux-2.6-execshield.patch,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- linux-2.6-execshield.patch	10 Oct 2007 21:22:57 -0000	1.56
+++ linux-2.6-execshield.patch	31 Jan 2008 00:45:58 -0000	1.57
@@ -367,7 +367,7 @@
  	 * Walk the list again, actually closing and freeing it,
 --- linux-2.6.22.noarch/arch/i386/kernel/traps.c~	2007-07-20 13:50:07.000000000 -0400
 +++ linux-2.6.22.noarch/arch/i386/kernel/traps.c	2007-07-20 13:52:09.000000000 -0400
-@@ -573,7 +573,88 @@ DO_ERROR(10, SIGSEGV, "invalid TSS", inv
+@@ -573,7 +573,91 @@ DO_ERROR(10, SIGSEGV, "invalid TSS", inv
  DO_ERROR(11, SIGBUS,  "segment not present", segment_not_present)
  DO_ERROR(12, SIGBUS,  "stack segment", stack_segment)
  DO_ERROR_INFO(17, SIGBUS, "alignment check", alignment_check, BUS_ADRALN, 0, 0)
@@ -382,9 +382,9 @@
 +static int
 +check_lazy_exec_limit(int cpu, struct pt_regs *regs, long error_code)
 +{
-+struct desc_struct *desc1, *desc2;
-+struct vm_area_struct *vma;
-+unsigned long limit;
++	struct desc_struct *desc1, *desc2;
++	struct vm_area_struct *vma;
++	unsigned long limit;
 +
 +	if (current->mm == NULL)
 +		return 0;
@@ -396,6 +396,9 @@
 +		for (vma = current->mm->mmap; vma; vma = vma->vm_next)
 +			if ((vma->vm_flags & VM_EXEC) && (vma->vm_end > limit))
 +				limit = vma->vm_end;
++		vma = get_gate_vma(current);
++		if (vma && (vma->vm_flags & VM_EXEC) && (vma->vm_end > limit))
++			limit = vma->vm_end;
 +		spin_unlock(&current->mm->page_table_lock);
 +		if (limit >= TASK_SIZE)
 +			limit = -1UL;




More information about the fedora-extras-commits mailing list