Skip to content

Commit

Permalink
x86: config option to disable info from decompression of the kernel
Browse files Browse the repository at this point in the history
This patch allows the disabling of decompression messages during
x86 bootup.

Signed-off-by: Ben Collins <ben.collins@canonical.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Ben Collins authored and Ingo Molnar committed Jul 3, 2008
1 parent 2ee2394 commit 6bcb13b
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 5 deletions.
8 changes: 8 additions & 0 deletions arch/x86/Kconfig.debug
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,14 @@ config NONPROMISC_DEVMEM
obviously disasterous, but specific access can be used by people
debugging the kernel.

config X86_VERBOSE_BOOTUP
bool "Enable verbose x86 bootup info messages"
default y
help
Enables the informational output from the decompression stage
(e.g. bzImage) of the boot. If you disable this you will still
see errors. Disable this if you want silent bootup.

config EARLY_PRINTK
bool "Early printk" if EMBEDDED
default y
Expand Down
16 changes: 11 additions & 5 deletions arch/x86/boot/compressed/misc.c
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,8 @@ static void free(void *where);
static void *memset(void *s, int c, unsigned n);
static void *memcpy(void *dest, const void *src, unsigned n);

static void putstr(const char *);
static void __putstr(int, const char *);
#define putstr(__x) __putstr(0, __x)

#ifdef CONFIG_X86_64
#define memptr long
Expand Down Expand Up @@ -266,11 +267,16 @@ static void scroll(void)
vidmem[i] = ' ';
}

static void putstr(const char *s)
static void __putstr(int error, const char *s)
{
int x, y, pos;
char c;

#ifndef CONFIG_X86_VERBOSE_BOOTUP
if (!error)
return;
#endif

#ifdef CONFIG_X86_32
if (real_mode->screen_info.orig_video_mode == 0 &&
lines == 0 && cols == 0)
Expand Down Expand Up @@ -363,9 +369,9 @@ static void flush_window(void)

static void error(char *x)
{
putstr("\n\n");
putstr(x);
putstr("\n\n -- System halted");
__putstr(1, "\n\n");
__putstr(1, x);
__putstr(1, "\n\n -- System halted");

while (1)
asm("hlt");
Expand Down

0 comments on commit 6bcb13b

Please sign in to comment.