svn commit: r290411 - stable/10/sys/boot/amd64/efi

John Baldwin jhb at FreeBSD.org
Thu Nov 5 20:21:44 UTC 2015


Author: jhb
Date: Thu Nov  5 20:21:43 2015
New Revision: 290411
URL: https://svnweb.freebsd.org/changeset/base/290411

Log:
  MFC 288372:
  Use EFI page size constants instead of hardcoding 4096.

Modified:
  stable/10/sys/boot/amd64/efi/copy.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/boot/amd64/efi/copy.c
==============================================================================
--- stable/10/sys/boot/amd64/efi/copy.c	Thu Nov  5 19:55:45 2015	(r290410)
+++ stable/10/sys/boot/amd64/efi/copy.c	Thu Nov  5 20:21:43 2015	(r290411)
@@ -41,7 +41,7 @@ __FBSDID("$FreeBSD$");
 #define	EFI_STAGING_SIZE	48
 #endif
 
-#define	STAGE_PAGES	((EFI_STAGING_SIZE) * 1024 * 1024 / 4096)
+#define	STAGE_PAGES	EFI_SIZE_TO_PAGES((EFI_STAGING_SIZE) * 1024 * 1024)
 
 EFI_PHYSICAL_ADDRESS	staging, staging_end;
 int			stage_offset_set = 0;
@@ -59,7 +59,7 @@ x86_efi_copy_init(void)
 		    (unsigned long)(status & EFI_ERROR_MASK));
 		return (status);
 	}
-	staging_end = staging + STAGE_PAGES * 4096;
+	staging_end = staging + STAGE_PAGES * EFI_PAGE_SIZE;
 
 	return (0);
 }
@@ -114,7 +114,7 @@ x86_efi_copy_finish(void)
 
 	src = (uint64_t *)staging;
 	dst = (uint64_t *)(staging - stage_offset);
-	last = (uint64_t *)(staging + STAGE_PAGES * EFI_PAGE_SIZE);
+	last = (uint64_t *)staging_end;
 
 	while (src < last)
 		*dst++ = *src++;


More information about the svn-src-all mailing list