mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-21 16:29:59 +00:00
Blackfin: fix length checking in kgdb_ebin2mem
The kgdb_ebin2mem() was decrementing the count variable to do parsing, but then later still tries to use it based on its original meaning. So leave it untouched and use a different variable to walk the memory. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
parent
11aca0e735
commit
0a99061426
1 changed files with 2 additions and 3 deletions
|
@ -587,19 +587,18 @@ int kgdb_ebin2mem(char *buf, char *mem, int count)
|
|||
unsigned short *mmr16;
|
||||
unsigned long *mmr32;
|
||||
int err;
|
||||
int size = 0;
|
||||
int size;
|
||||
int cpu = raw_smp_processor_id();
|
||||
|
||||
tmp_old = tmp_new = buf;
|
||||
|
||||
while (count-- > 0) {
|
||||
for (size = 0; size < count; ++size) {
|
||||
if (*tmp_old == 0x7d)
|
||||
*tmp_new = *(++tmp_old) ^ 0x20;
|
||||
else
|
||||
*tmp_new = *tmp_old;
|
||||
tmp_new++;
|
||||
tmp_old++;
|
||||
size++;
|
||||
}
|
||||
|
||||
err = validate_memory_access_address((unsigned long)mem, size);
|
||||
|
|
Loading…
Reference in a new issue