From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ii5k8-0003cs-PQ for mharc-grub-devel@gnu.org; Wed, 17 Oct 2007 06:03:12 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ii5k7-0003ce-FV for grub-devel@gnu.org; Wed, 17 Oct 2007 06:03:11 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ii5k5-0003cC-RK for grub-devel@gnu.org; Wed, 17 Oct 2007 06:03:11 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ii5k5-0003c9-DC for grub-devel@gnu.org; Wed, 17 Oct 2007 06:03:09 -0400 Received: from smtp-vbr6.xs4all.nl ([194.109.24.26]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ii5k4-0000Y2-Ow for grub-devel@gnu.org; Wed, 17 Oct 2007 06:03:09 -0400 Received: from localhost.localdomain (249-174.surfsnel.dsl.internl.net [145.99.174.249]) by smtp-vbr6.xs4all.nl (8.13.8/8.13.8) with ESMTP id l9HA37PV045475 for ; Wed, 17 Oct 2007 12:03:08 +0200 (CEST) (envelope-from mgerards@xs4all.nl) From: Marco Gerards To: The development of GRUB 2 References: <20071016210907.GA10870@thorin> <87k5pmqgyr.fsf@xs4all.nl> <20071017085052.GA17346@thorin> Mail-Copies-To: mgerards@xs4all.nl Date: Wed, 17 Oct 2007 12:04:14 +0200 In-Reply-To: <20071017085052.GA17346@thorin> (Robert Millan's message of "Wed, 17 Oct 2007 10:50:52 +0200") Message-ID: <877ilmqcpt.fsf@xs4all.nl> User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Virus-Scanned: by XS4ALL Virus Scanner X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.6-4.9 Subject: Re: [PATCH] split realmode and loader routines out of startup.S X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: The development of GRUB 2 List-Id: The development of GRUB 2 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Oct 2007 10:03:11 -0000 Robert Millan writes: > On Wed, Oct 17, 2007 at 10:32:28AM +0200, Marco Gerards wrote: >> > * kern/i386/pc/startup.S (grub_linux_prot_size): Moved to ... >> > * kern/i386/loader.S (grub_linux_prot_size): ... here. >> >> I would say: >> >> (...): Moved from here... >> (...): ... to here. >> >> Can you change that? > > Ok (ACKed also for the next patch I already sent). Great! >> > * kern/i386/pc/startup.S (grub_linux_tmp_addr): Moved to ... >> > * kern/i386/loader.S (grub_linux_tmp_addr): ... here. >> > * kern/i386/pc/startup.S (grub_linux_real_addr): Moved to ... >> > * kern/i386/loader.S (grub_linux_real_addr): ... here. >> > * kern/i386/pc/startup.S (grub_linux_boot_zimage): Moved to ... >> > * kern/i386/loader.S (grub_linux_boot_zimage): ... here. >> > * kern/i386/pc/startup.S (grub_linux_boot_bzimage): Moved to ... >> > * kern/i386/loader.S (grub_linux_boot_bzimage): ... here. >> > * kern/i386/pc/startup.S (grub_multiboot_real_boot): Moved to ... >> > * kern/i386/loader.S (grub_multiboot_real_boot): ... here. >> > * kern/i386/pc/startup.S (grub_multiboot2_real_boot): Moved to ... >> > * kern/i386/loader.S (grub_multiboot2_real_boot): ... here. >> > >> > * kern/i386/realmode.S: New file. >> > >> > * kern/i386/pc/startup.S (protstack): Moved to ... >> > * kern/i386/realmode.S (protstack): ... here. >> > * kern/i386/pc/startup.S (gdt): Moved to ... >> > * kern/i386/realmode.S (gdt): ... here. >> > * kern/i386/pc/startup.S (prot_to_real): Moved to ... >> > * kern/i386/realmode.S (prot_to_real): ... here. >> > >> > * kern/i386/pc/startup.S: Include `kern/i386/loader.S' and >> > `kern/i386/realmode.S'. >> >> Why include? Can't it be linked? That's what a linker is for :-) > > Linking required wrapping a lot of references with EXT_C() macro, so I opted > for #include (note this is done for lzo1x.S already). Is using EXT_C a problem? I don't know this code too well, unfortunately :( > Also, #including stuff from the wrong [1] place caused cpu faults in my tests. > With my current patch, code doesn't change much its location (real mode stuff > at the beginning, loader stuff at the end). :-/ > [1] Sorry, I'm not sure what wrong means here. Maybe it has to do with GAS > syntax magic affecting cross-include borders or with a weird hardcoded > reference to a specific memory layout. I can't help you there. -- Marco