From owner-cvs-src-old@FreeBSD.ORG Wed Mar 16 03:53:44 2011 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BD32D106564A for ; Wed, 16 Mar 2011 03:53:44 +0000 (UTC) (envelope-from marcel@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8E34B8FC18 for ; Wed, 16 Mar 2011 03:53:44 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.4/8.14.4) with ESMTP id p2G3rinb079153 for ; Wed, 16 Mar 2011 03:53:44 GMT (envelope-from marcel@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.4/8.14.4/Submit) id p2G3riN4079152 for cvs-src-old@freebsd.org; Wed, 16 Mar 2011 03:53:44 GMT (envelope-from marcel@repoman.freebsd.org) Message-Id: <201103160353.p2G3riN4079152@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to marcel@repoman.freebsd.org using -f From: Marcel Moolenaar Date: Wed, 16 Mar 2011 03:53:18 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/boot/common Makefile.inc src/sys/boot/efi/libefi libefi.c src/sys/boot/ia64/common bootinfo.c copy.c exec.c libia64.h src/sys/boot/ia64/efi conf.c efimd.c version src/sys/boot/ia64/ski conf.c libski.h skimd.c version ... X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Mar 2011 03:53:44 -0000 marcel 2011-03-16 03:53:18 UTC FreeBSD src repository Modified files: sys/boot/common Makefile.inc sys/boot/efi/libefi libefi.c sys/boot/ia64/common bootinfo.c copy.c exec.c libia64.h sys/boot/ia64/efi conf.c efimd.c version sys/boot/ia64/ski conf.c libski.h skimd.c version sys/ia64/include bootinfo.h vmparam.h Log: SVN rev 219691 on 2011-03-16 03:53:18Z by marcel MFaltix: Add support for Pre-Boot Virtual Memory (PBVM) to the loader. PBVM allows us to link the kernel at a fixed virtual address without having to make any assumptions about the physical memory layout. On the SGI Altix 350 for example, there's no usuable physical memory below 192GB. Also, the PBVM allows us to control better where we're going to physically load the kernel and its modules so that we can make sure we load the kernel in memory that's close to the BSP. The PBVM is managed by a simple page table. The minimum size of the page table is 4KB (EFI page size) and the maximum is currently set to 1MB. A page in the PBVM is 64KB, as that's the maximum alignment one can specify in a linker script. The bottom line is that PBVM is between 64KB and 8GB in size. The loader maps the PBVM page table at a fixed virtual address and using a single translations. The PBVM itself is also mapped using a single translation for a maximum of 32MB. While here, increase the heap in the EFI loader from 512KB to 2MB and set the stage for supporting relocatable modules. Revision Changes Path 1.30 +3 -1 src/sys/boot/common/Makefile.inc 1.8 +1 -1 src/sys/boot/efi/libefi/libefi.c 1.16 +25 -3 src/sys/boot/ia64/common/bootinfo.c 1.10 +82 -1 src/sys/boot/ia64/common/copy.c 1.19 +126 -38 src/sys/boot/ia64/common/exec.c 1.3 +18 -11 src/sys/boot/ia64/common/libia64.h 1.14 +0 -11 src/sys/boot/ia64/efi/conf.c 1.4 +138 -50 src/sys/boot/ia64/efi/efimd.c 1.11 +1 -0 src/sys/boot/ia64/efi/version 1.8 +0 -12 src/sys/boot/ia64/ski/conf.c 1.9 +0 -1 src/sys/boot/ia64/ski/libski.h 1.2 +19 -13 src/sys/boot/ia64/ski/skimd.c 1.5 +1 -0 src/sys/boot/ia64/ski/version 1.9 +3 -2 src/sys/ia64/include/bootinfo.h 1.24 +46 -0 src/sys/ia64/include/vmparam.h