浏览代码

[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.
tags/v0.9.4
Michael Brown 15 年前
父节点
当前提交
b45b39260c
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1
    1
      src/drivers/infiniband/hermon.c

+ 1
- 1
src/drivers/infiniband/hermon.c 查看文件

@@ -1684,7 +1684,7 @@ static int hermon_start_firmware ( struct hermon *hermon ) {
1684 1684
 
1685 1685
 	/* Allocate firmware pages and map firmware area */
1686 1686
 	fw_size = ( fw_pages * HERMON_PAGE_SIZE );
1687
-	hermon->firmware_area = umalloc ( fw_size );
1687
+	hermon->firmware_area = umalloc ( fw_size * 2 );
1688 1688
 	if ( ! hermon->firmware_area ) {
1689 1689
 		rc = -ENOMEM;
1690 1690
 		goto err_alloc_fa;

正在加载...
取消
保存