All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff Garzik <jeff@garzik.org>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: torvalds@linux-foundation.org, andi@firstfloor.org,
	linux-kernel@vger.kernel.org
Subject: Re: x86 setup code rewrite in C - revised
Date: Wed, 11 Jul 2007 16:08:09 -0400	[thread overview]
Message-ID: <469538A9.4010202@garzik.org> (raw)
In-Reply-To: <1184181538674-git-send-email-hpa@zytor.com>

H. Peter Anvin wrote:
> This patch set replaces the x86 setup code, which is currently all in
> assembly, with a version written in C, using the ".code16gcc" feature
> of binutils (which has been present since at least 2001.)
> 
> The new code is vastly easier to read, and, I hope, debug.  It should
> be noted that I found a fair number of minor bugs while going through
> this code, and have attempted to correct them.
> 
> In the process of doing so, it introduces several cleanups, in
> particular:
> 
> - Obsoletes the hd_info field in the boot_params structure; they are
>   only ever used for ST-506 (pre-IDE) drives and are pretty much
>   guaranteed to be wrong on current BIOSes;
> - Unifies the CPU feature bits between i386 and x86-64.  In the
>   future, it should be possible to use arch/i386/boot/cpucheck.c to do
>   the post-invocation CPU check currently done in
>   arch/x86_64/kernel/trampoline.S, although this patch set doesn't
>   introduce that change.
> - boot_params is now a proper structure.
> 
> This patchset incorporates all feedback received by 2007-07-11 12:00 PDT.

I'm sure you know what's changed since the last revision, but nobody 
everybody does :)  It would be nice to know what's different from the 
last posting.

	Jeff




  parent reply	other threads:[~2007-07-11 20:08 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-11 19:18 x86 setup code rewrite in C - revised H. Peter Anvin
2007-07-11 19:18 ` [x86 setup 01/33] x86 setup: MAINTAINERS: formally take responsibility for the i386 boot code H. Peter Anvin
2007-07-11 19:18   ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 02/33] hd.c: remove BIOS/CMOS queries H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 03/33] include/asm-i386/boot.h: This is <asm/boot.h>, not <linux/boot.h> H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 04/33] Unify the CPU features vectors between i386 and x86-64 H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 05/33] Change CONFIG_X86_MINIMUM_CPU_MODEL to CONFIG_X86_MINIMUM_CPU_FAMILY H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 06/33] Clean up struct screen_info (<linux/screen_info.h>) H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 07/33] Use a new CPU feature word to cover all Intel features that are spread around H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 08/33] Define zero-page offset 0x1e4 as a scratch field, and use it H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 09/33] Make definitions for struct e820entry and struct e820map consistent H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 10/33] Make struct boot_params a real structure, and remove obsolete fields H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 11/33] x86-64: add CONFIG_PHYSICAL_ALIGN for consistency with i386 H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 12/33] x86-64: add symbolic constants for the boot segment selectors H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 13/33] Header file to produce 16-bit code with gcc H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 14/33] Top header file for new x86 setup code H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 15/33] Simple bitops for the " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 16/33] String-handling functions " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 17/33] A20 handling code H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 18/33] APM probing code H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 19/33] Command-line parsing code for the new x86 setup code H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 20/33] Console-writing " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 21/33] Version string " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 22/33] CPU features verification " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 23/33] EDD probing code " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 24/33] MCA support for " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 25/33] Memory probing support for the " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 26/33] Voyager " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 27/33] Video mode probing " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-16 10:59     ` Martin Mares
2007-07-11 19:18   ` [x86 setup 28/33] Code for actual protected-mode entry H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 29/33] Assembly header and main routine for new x86 setup code H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 30/33] Linker script for the " H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 31/33] Use the new x86 setup code for i386 H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-13  9:27       ` Tilman Schmidt
2007-07-11 19:18   ` [x86 setup 32/33] Use the new x86 setup code for x86-64; unify with i386 H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 19:18   ` [x86 setup 33/33] Remove old i386 setup code H. Peter Anvin
2007-07-11 19:18     ` H. Peter Anvin
2007-07-11 20:08 ` Jeff Garzik [this message]
2007-07-11 20:29   ` x86 setup code rewrite in C - revised H. Peter Anvin
2007-07-12 17:24 ` Linus Torvalds
2007-07-12 17:30   ` Andrew Morton
2007-07-12 17:49     ` Linus Torvalds
2007-07-12 19:38   ` Andi Kleen
  -- strict thread matches above, loose matches on Subject: below --
2007-07-12 13:18 Etienne Lorrain
2007-07-13 14:25 Etienne Lorrain
2007-07-13 16:35 ` Chuck Ebbert
2007-07-13 16:51   ` H. Peter Anvin
2007-07-13 22:23   ` H. Peter Anvin
2007-07-16 13:31     ` Etienne Lorrain
2007-07-16 17:35       ` H. Peter Anvin
2007-07-13 14:42 Etienne Lorrain
2007-07-16  9:15 RE : Re: RE : " H. Peter Anvin
2007-07-16 10:21 ` Etienne Lorrain

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=469538A9.4010202@garzik.org \
    --to=jeff@garzik.org \
    --cc=andi@firstfloor.org \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.