From owner-cvs-src-old@FreeBSD.ORG Sun Apr 3 22:32:12 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 54DAF1065744 for ; Sun, 3 Apr 2011 22:32:12 +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 4489F8FC21 for ; Sun, 3 Apr 2011 22:32:12 +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 p33MWCHf086440 for ; Sun, 3 Apr 2011 22:32:12 GMT (envelope-from marcel@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.4/8.14.4/Submit) id p33MWCdB086439 for cvs-src-old@freebsd.org; Sun, 3 Apr 2011 22:32:12 GMT (envelope-from marcel@repoman.freebsd.org) Message-Id: <201104032232.p33MWCdB086439@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to marcel@repoman.freebsd.org using -f From: Marcel Moolenaar Date: Sun, 3 Apr 2011 22:31:51 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/boot/common bootstrap.h load_elf.c load_elf_obj.c module.c src/sys/boot/pc98/loader main.c 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: Sun, 03 Apr 2011 22:32:12 -0000 marcel 2011-04-03 22:31:51 UTC FreeBSD src repository Modified files: sys/boot/common bootstrap.h load_elf.c load_elf_obj.c module.c sys/boot/pc98/loader main.c Log: SVN rev 220311 on 2011-04-03 22:31:51Z by marcel Add 2 new archsw interfaces: 1. arch_loadaddr - used by platform code to adjust the address at which the object gets loaded. Implement PC98 using this new interface instead of using conditional compilation. For ELF objects the ELF header is passed as the data pointer. For raw files it's the filename. Note that ELF objects are first considered as raw files. 2. arch_loadseg - used by platform code to keep track of actual segments, so that (instruction) caches can be flushed or translations can be created. Both the ELF header as well as the program header are passed to allow platform code to treat the kernel proper differently from any additional modules and to have all the relevant details of the loaded segment (e.g. protection). Revision Changes Path 1.49 +18 -0 src/sys/boot/common/bootstrap.h 1.42 +10 -9 src/sys/boot/common/load_elf.c 1.4 +4 -2 src/sys/boot/common/load_elf_obj.c 1.31 +6 -19 src/sys/boot/common/module.c 1.31 +17 -0 src/sys/boot/pc98/loader/main.c