summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Brown2008-09-25 08:23:34 +0200
committerMichael Brown2008-09-25 08:23:34 +0200
commitfa880ec70a07f45048c7e3beec225634e8623de9 (patch)
treeed9670c36106af951ca6d17dfe88c889412f015b /src
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.
Diffstat (limited to 'src')
-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;