Browse Source

Blackfin arch: fix off-by-one errors on end of memory range

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Mike Frysinger 16 years ago
parent
commit
89c6c139a5
1 changed files with 4 additions and 4 deletions
  1. 4 4
      arch/blackfin/kernel/kgdb.c

+ 4 - 4
arch/blackfin/kernel/kgdb.c

@@ -643,7 +643,7 @@ int kgdb_ebin2mem(char *buf, char *mem, int count)
 			return EFAULT;
 		}
 	} else if ((cpu == 0 && (unsigned int)mem >= L1_CODE_START &&
-		(unsigned int)(mem + count) < L1_CODE_START + L1_CODE_LENGTH)
+		(unsigned int)(mem + count) <= L1_CODE_START + L1_CODE_LENGTH)
 #ifdef CONFIG_SMP
 		|| (cpu == 1 && (unsigned int)mem >= COREB_L1_CODE_START &&
 		(unsigned int)(mem + count) <=
@@ -758,11 +758,11 @@ int kgdb_arch_set_breakpoint(unsigned long addr, char *saved_instr)
 
 	if ((cpu == 0 && (unsigned int)addr >= L1_CODE_START
 		&& (unsigned int)(addr + BREAK_INSTR_SIZE)
-		< L1_CODE_START + L1_CODE_LENGTH)
+		<= L1_CODE_START + L1_CODE_LENGTH)
 #ifdef CONFIG_SMP
 		|| (cpu == 1 && (unsigned int)addr >= COREB_L1_CODE_START
 		&& (unsigned int)(addr + BREAK_INSTR_SIZE)
-		< COREB_L1_CODE_START + L1_CODE_LENGTH)
+		<= COREB_L1_CODE_START + L1_CODE_LENGTH)
 #endif
 		) {
 		/* access L1 instruction SRAM */
@@ -789,7 +789,7 @@ int kgdb_arch_set_breakpoint(unsigned long addr, char *saved_instr)
 int kgdb_arch_remove_breakpoint(unsigned long addr, char *bundle)
 {
 	if ((unsigned int)addr >= L1_CODE_START &&
-		(unsigned int)(addr + BREAK_INSTR_SIZE) <
+		(unsigned int)(addr + BREAK_INSTR_SIZE) <=
 			L1_CODE_START + L1_CODE_LENGTH) {
 		/* access L1 instruction SRAM */
 		if (dma_memcpy((void *)addr, bundle, BREAK_INSTR_SIZE) == NULL)