> Am 31.01.2019 um 17:22 schrieb Bin Meng <bmeng...@gmail.com>: > > At present the 4-level page table base address for 64-bit U-Boot > proper is assigned an address that conflicts with CONFIG_LOADADDR. > Change it to an address within the low memory range instead.
Can't you dynamically allocate the PT too? Alex > > Fixes crashes seen when 'dhcp' on QEMU x86_64 with > "-net nic -net user,tftp=.,bootfile=u-boot". > > Reported-by: Alexander Graf <ag...@suse.de> > Signed-off-by: Bin Meng <bmeng...@gmail.com> > --- > > arch/x86/cpu/i386/cpu.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/arch/x86/cpu/i386/cpu.c b/arch/x86/cpu/i386/cpu.c > index 208ef08..af42431 100644 > --- a/arch/x86/cpu/i386/cpu.c > +++ b/arch/x86/cpu/i386/cpu.c > @@ -462,6 +462,7 @@ int cpu_has_64bit(void) > has_long_mode(); > } > > +#define PAGETABLE_BASE 0x80000 > #define PAGETABLE_SIZE (6 * 4096) > > /** > @@ -523,10 +524,7 @@ int cpu_jump_to_64bit_uboot(ulong target) > uint32_t *pgtable; > func_t func; > > - /* TODO(s...@chromium.org): Find a better place for this */ > - pgtable = (uint32_t *)0x1000000; > - if (!pgtable) > - return -ENOMEM; > + pgtable = (uint32_t *)PAGETABLE_BASE; > > build_pagetable(pgtable); > > -- > 2.7.4 > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot