summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Brown2008-09-25 08:23:34 +0200
committerMichael Brown2008-09-25 08:23:34 +0200
commitfa880ec70a07f45048c7e3beec225634e8623de9 (patch)
treeed9670c36106af951ca6d17dfe88c889412f015b
parent[hermon] Allocate sufficient space for firmware buffer (diff)
downloadipxe-fa880ec70a07f45048c7e3beec225634e8623de9.tar.gz
ipxe-fa880ec70a07f45048c7e3beec225634e8623de9.tar.xz
ipxe-fa880ec70a07f45048c7e3beec225634e8623de9.zip
[arbel] Allocate sufficient space for firmware buffer
We were accidentally allocating only half the required amount of memory (given the alignment method) for the firmware buffer, leading to conflicts between the firmware buffer and gPXE code/data segments.
-rw-r--r--src/drivers/infiniband/arbel.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/drivers/infiniband/arbel.c b/src/drivers/infiniband/arbel.c
index 2aced777..0c180833 100644
--- a/src/drivers/infiniband/arbel.c
+++ b/src/drivers/infiniband/arbel.c
@@ -1714,7 +1714,7 @@ static int arbel_start_firmware ( struct arbel *arbel ) {
/* Allocate firmware pages and map firmware area */
fw_size = ( fw_pages * 4096 );
- arbel->firmware_area = umalloc ( fw_size );
+ arbel->firmware_area = umalloc ( fw_size * 2 );
if ( ! arbel->firmware_area ) {
rc = -ENOMEM;
goto err_alloc_fa;