#136: failed to boot under KVM\QEMU
> -------------------------------------+-------------------------------------- > Reporter: silicium@… | Owner: somebody > Type: defect | Status: new > Priority: major | Milestone: > Component: coreboot | Version: v2 > Keywords: | Dependencies: > Patchstatus: patch needs review | > -------------------------------------+-------------------------------------- Fix use of uninitialized pointers. To help in future, move the declaration to the same scope as the use. Signed-off-by: Ronald G. Minnich <rminnich@gmail.com> Acked-by: Myles Watson <mylesgw@gmail.com> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4285 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
67befdc22b
commit
671cedc92f
|
@ -411,7 +411,7 @@ static int load_self_segments(
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
for(ptr = head->next; ptr != head; ptr = ptr->next) {
|
for(ptr = head->next; ptr != head; ptr = ptr->next) {
|
||||||
unsigned char *dest, *middle, *end, *src;
|
unsigned char *dest,*src;
|
||||||
printk_debug("Loading Segment: addr: 0x%016lx memsz: 0x%016lx filesz: 0x%016lx\n",
|
printk_debug("Loading Segment: addr: 0x%016lx memsz: 0x%016lx filesz: 0x%016lx\n",
|
||||||
ptr->s_dstaddr, ptr->s_memsz, ptr->s_filesz);
|
ptr->s_dstaddr, ptr->s_memsz, ptr->s_filesz);
|
||||||
|
|
||||||
|
@ -428,6 +428,7 @@ static int load_self_segments(
|
||||||
|
|
||||||
/* Copy data from the initial buffer */
|
/* Copy data from the initial buffer */
|
||||||
if (ptr->s_filesz) {
|
if (ptr->s_filesz) {
|
||||||
|
unsigned char *middle, *end;
|
||||||
size_t len;
|
size_t len;
|
||||||
len = ptr->s_filesz;
|
len = ptr->s_filesz;
|
||||||
switch(ptr->compression) {
|
switch(ptr->compression) {
|
||||||
|
@ -464,14 +465,15 @@ static int load_self_segments(
|
||||||
(unsigned long)middle,
|
(unsigned long)middle,
|
||||||
(unsigned long)end,
|
(unsigned long)end,
|
||||||
(unsigned long)src);
|
(unsigned long)src);
|
||||||
}
|
|
||||||
/* Zero the extra bytes between middle & end */
|
/* Zero the extra bytes between middle & end */
|
||||||
if (middle < end) {
|
if (middle < end) {
|
||||||
printk_debug("Clearing Segment: addr: 0x%016lx memsz: 0x%016lx\n",
|
printk_debug("Clearing Segment: addr: 0x%016lx memsz: 0x%016lx\n",
|
||||||
(unsigned long)middle, (unsigned long)(end - middle));
|
(unsigned long)middle, (unsigned long)(end - middle));
|
||||||
|
|
||||||
/* Zero the extra bytes */
|
/* Zero the extra bytes */
|
||||||
memset(middle, 0, end - middle);
|
memset(middle, 0, end - middle);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 1;
|
return 1;
|
||||||
|
|
Loading…
Reference in New Issue