From: Michael Brown Date: Thu, 25 Sep 2008 06:22:06 +0000 (+0100) Subject: [hermon] Allocate sufficient space for firmware buffer X-Git-Tag: v0.9.4~6 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b45b39260ceb65aa020acfe5a3e961a19ed8489a;p=thirdparty%2Fipxe.git [hermon] 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. --- diff --git a/src/drivers/infiniband/hermon.c b/src/drivers/infiniband/hermon.c index 439974eb8..9716aba9e 100644 --- a/src/drivers/infiniband/hermon.c +++ b/src/drivers/infiniband/hermon.c @@ -1684,7 +1684,7 @@ static int hermon_start_firmware ( struct hermon *hermon ) { /* Allocate firmware pages and map firmware area */ fw_size = ( fw_pages * HERMON_PAGE_SIZE ); - hermon->firmware_area = umalloc ( fw_size ); + hermon->firmware_area = umalloc ( fw_size * 2 ); if ( ! hermon->firmware_area ) { rc = -ENOMEM; goto err_alloc_fa;