forked from rpms/kernel
		
	NX emulation fixes
Fix get_gate_vma usage in i386 NX emulation Fix up dependancy on the dropped randomization patch.
This commit is contained in:
		
							parent
							
								
									96b3b74649
								
							
						
					
					
						commit
						acf0fc7b14
					
				| @ -2033,6 +2033,10 @@ fi | |||||||
| #                 ||----w | | #                 ||----w | | ||||||
| #                 ||     || | #                 ||     || | ||||||
| %changelog | %changelog | ||||||
|  | * Sat Aug 27 2011 Dave Jones <davej@redhat.com> | ||||||
|  | - Fix get_gate_vma usage in i386 NX emulation | ||||||
|  |   Fix up dependancy on the dropped randomization patch. | ||||||
|  | 
 | ||||||
| * Sat Aug 27 2011 Josh Boyer <jwboyer@redhat.com> | * Sat Aug 27 2011 Josh Boyer <jwboyer@redhat.com> | ||||||
| - Linux 3.1-rc3-git6 | - Linux 3.1-rc3-git6 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -249,7 +249,7 @@ | |||||||
| +		for (vma = current->mm->mmap; vma; vma = vma->vm_next)
 | +		for (vma = current->mm->mmap; vma; vma = vma->vm_next)
 | ||||||
| +			if ((vma->vm_flags & VM_EXEC) && (vma->vm_end > limit))
 | +			if ((vma->vm_flags & VM_EXEC) && (vma->vm_end > limit))
 | ||||||
| +				limit = vma->vm_end;
 | +				limit = vma->vm_end;
 | ||||||
| +		vma = get_gate_vma(current);
 | +		vma = get_gate_vma(current->mm);
 | ||||||
| +		if (vma && (vma->vm_flags & VM_EXEC) && (vma->vm_end > limit))
 | +		if (vma && (vma->vm_flags & VM_EXEC) && (vma->vm_end > limit))
 | ||||||
| +			limit = vma->vm_end;
 | +			limit = vma->vm_end;
 | ||||||
| +		spin_unlock(¤t->mm->page_table_lock);
 | +		spin_unlock(¤t->mm->page_table_lock);
 | ||||||
| @ -606,7 +606,7 @@ index 57d1868..29c0c35 100644 | |||||||
| +	/* in the case of NX emulation, shove the brk segment way out of the
 | +	/* in the case of NX emulation, shove the brk segment way out of the
 | ||||||
| +	   way of the exec randomization area, since it can collide with
 | +	   way of the exec randomization area, since it can collide with
 | ||||||
| +	   future allocations if not. */
 | +	   future allocations if not. */
 | ||||||
| +	if ( (mm->get_unmapped_exec_area == arch_get_unmapped_exec_area) &&
 | +	if ( (mm->get_unmapped_exec == arch_get_unmapped_exec_area) &&
 | ||||||
| +	     (mm->brk < 0x08000000) ) {
 | +	     (mm->brk < 0x08000000) ) {
 | ||||||
| +		bump = (TASK_SIZE/6);
 | +		bump = (TASK_SIZE/6);
 | ||||||
| +	}
 | +	}
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user