0e7d58890a
- Add kfreebsd >= 9.1 fix to boot a kernel directly w/o chainloading [2] - see also: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=699002 - Add zfs support including zfs feature flags, see: [3] http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-boot/grub/files/grub-2.00-zfs-feature-flag-support-r1.patch - Add FUSE support and knob. - Switch to USES=gmake . - Add LICENSE. - Fix build on head. - Mark MAKE_JOBS_UNSAFE: https://redports.org/~nox/20130803161801-34924-135687/grub2-2.00_1.log - Misc. other changes. - This version is now used successfully by the PCBSD folks so I thought it's finally time to commit it. :) PR: ports/170417 [1] Submitted by: Norihiko Murase <mur1080224@inter7.jp> [1] (original version of the update) Submitted by: Christian Mangin <christian.mangin@gmail.com> [1] Submitted by: Richard Yao <ryao@gentoo.org> [1] (additional contributors to the PR) Obtained from: grub2 upstream [2] Obtained from: gentoo [3]
49 lines
1.3 KiB
C
49 lines
1.3 KiB
C
=== modified file 'grub-core/loader/i386/bsd.c'
|
|
--- grub-core/loader/i386/bsd.c 2012-06-07 14:41:52 +0000
|
|
+++ grub-core/loader/i386/bsd.c 2012-07-21 17:44:45 +0000
|
|
@@ -1309,7 +1309,7 @@
|
|
&& phdr->p_type != PT_DYNAMIC)
|
|
return 0;
|
|
|
|
- paddr = phdr->p_paddr & 0xFFFFFF;
|
|
+ paddr = phdr->p_paddr & 0xFFFFFFF;
|
|
|
|
if (paddr < kern_start)
|
|
kern_start = paddr;
|
|
@@ -1333,7 +1333,7 @@
|
|
}
|
|
|
|
*do_load = 1;
|
|
- phdr->p_paddr &= 0xFFFFFF;
|
|
+ phdr->p_paddr &= 0xFFFFFFF;
|
|
paddr = phdr->p_paddr;
|
|
|
|
*addr = (grub_addr_t) (paddr - kern_start + (grub_uint8_t *) kern_chunk_src);
|
|
@@ -1351,7 +1351,7 @@
|
|
&& phdr->p_type != PT_DYNAMIC)
|
|
return 0;
|
|
|
|
- paddr = phdr->p_paddr & 0xffffff;
|
|
+ paddr = phdr->p_paddr & 0xfffffff;
|
|
|
|
if (paddr < kern_start)
|
|
kern_start = paddr;
|
|
@@ -1375,7 +1375,7 @@
|
|
}
|
|
|
|
*do_load = 1;
|
|
- paddr = phdr->p_paddr & 0xffffff;
|
|
+ paddr = phdr->p_paddr & 0xfffffff;
|
|
|
|
*addr = (grub_addr_t) (paddr - kern_start + (grub_uint8_t *) kern_chunk_src);
|
|
|
|
@@ -1394,7 +1394,7 @@
|
|
{
|
|
grub_relocator_chunk_t ch;
|
|
|
|
- entry = elf->ehdr.ehdr32.e_entry & 0xFFFFFF;
|
|
+ entry = elf->ehdr.ehdr32.e_entry & 0xFFFFFFF;
|
|
err = grub_elf32_phdr_iterate (elf, filename,
|
|
grub_bsd_elf32_size_hook, NULL);
|
|
if (err)
|
|
|