diff -urpN linux-2.6.18-371.9.1.el5.028stab114.2/arch/x86_64/kernel/ptrace.c linux-2.6.18-371.9.1.el5.028stab114.2-owl/arch/x86_64/kernel/ptrace.c --- linux-2.6.18-371.9.1.el5.028stab114.2/arch/x86_64/kernel/ptrace.c 2014-06-30 06:58:47 +0000 +++ linux-2.6.18-371.9.1.el5.028stab114.2-owl/arch/x86_64/kernel/ptrace.c 2014-07-07 08:09:18 +0000 @@ -314,6 +314,10 @@ static int putreg(struct task_struct *ch return -EIO; value &= 0xffff; break; + case offsetof(struct user_regs_struct,rip): + if (value >= TASK_SIZE_OF(child)) + return -EIO; + break; } put_stack_long(child, regno - sizeof(struct pt_regs), value); return 0;