diff options
| -rw-r--r-- | arch/powerpc/kernel/prom.c | 7 | 
1 files changed, 6 insertions, 1 deletions
| diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c index d50c8df0183e..535a33e4aa37 100644 --- a/arch/powerpc/kernel/prom.c +++ b/arch/powerpc/kernel/prom.c | |||
| @@ -491,7 +491,12 @@ void __init finish_device_tree(void) | |||
| 491 | size = 16; | 491 | size = 16; | 
| 492 | finish_node(allnodes, &size, 1); | 492 | finish_node(allnodes, &size, 1); | 
| 493 | size -= 16; | 493 | size -= 16; | 
| 494 | end = start = (unsigned long) __va(lmb_alloc(size, 128)); | 494 | |
| 495 | if (0 == size) | ||
| 496 | end = start = 0; | ||
| 497 | else | ||
| 498 | end = start = (unsigned long)__va(lmb_alloc(size, 128)); | ||
| 499 | |||
| 495 | finish_node(allnodes, &end, 0); | 500 | finish_node(allnodes, &end, 0); | 
| 496 | BUG_ON(end != start + size); | 501 | BUG_ON(end != start + size); | 
| 497 | 502 | ||
