From 09f25cc9e9425cbdedc179ff2efd2d91eeadc10f Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Fri, 10 Oct 2008 17:12:51 +0800 Subject: [PATCH] --- yaml --- r: 113777 b: refs/heads/master c: 3c08f1d122627c9559fb03a11f52ea37f960b61e h: refs/heads/master i: 113775: fe866619a63910fc6d2b00896b96f8105ac9f7c4 v: v3 --- [refs] | 2 +- trunk/arch/blackfin/kernel/ptrace.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index b3b2e3125855..f11a0eea798a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d207a8c7681f14302e9e80ef5b8202abe39060b5 +refs/heads/master: 3c08f1d122627c9559fb03a11f52ea37f960b61e diff --git a/trunk/arch/blackfin/kernel/ptrace.c b/trunk/arch/blackfin/kernel/ptrace.c index 7e1f762b6700..140bf00e9974 100644 --- a/trunk/arch/blackfin/kernel/ptrace.c +++ b/trunk/arch/blackfin/kernel/ptrace.c @@ -160,6 +160,10 @@ static inline int is_user_addr_valid(struct task_struct *child, struct vm_list_struct *vml; struct sram_list_struct *sraml; + /* overflow */ + if (start + len < start) + return -EIO; + for (vml = child->mm->context.vmlist; vml; vml = vml->next) if (start >= vml->vma->vm_start && start + len < vml->vma->vm_end) return 0;