Skip to content

Commit

Permalink
Merge branch 'x86-setup-for-linus' of git://git.kernel.org/pub/scm/li…
Browse files Browse the repository at this point in the history
…nux/kernel/git/tip/linux-2.6-tip

* 'x86-setup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86, e820: Guard against array overflowed in __e820_add_region()
  x86, setup: remove obsolete pre-Kconfig CONFIG_VIDEO_ variables
  • Loading branch information
Linus Torvalds committed Sep 14, 2009
2 parents 55e0715 + 5051fd6 commit 0cc6d77
Show file tree
Hide file tree
Showing 5 changed files with 4 additions and 40 deletions.
7 changes: 1 addition & 6 deletions arch/x86/boot/video-vesa.c
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@ static inline void vesa_store_mode_params_graphics(void) {}

static int vesa_probe(void)
{
#if defined(CONFIG_VIDEO_VESA) || defined(CONFIG_FIRMWARE_EDID)
struct biosregs ireg, oreg;
u16 mode;
addr_t mode_ptr;
Expand All @@ -49,8 +48,7 @@ static int vesa_probe(void)
vginfo.signature != VESA_MAGIC ||
vginfo.version < 0x0102)
return 0; /* Not present */
#endif /* CONFIG_VIDEO_VESA || CONFIG_FIRMWARE_EDID */
#ifdef CONFIG_VIDEO_VESA

set_fs(vginfo.video_mode_ptr.seg);
mode_ptr = vginfo.video_mode_ptr.off;

Expand Down Expand Up @@ -102,9 +100,6 @@ static int vesa_probe(void)
}

return nmodes;
#else
return 0;
#endif /* CONFIG_VIDEO_VESA */
}

static int vesa_set_mode(struct mode_info *mode)
Expand Down
10 changes: 0 additions & 10 deletions arch/x86/boot/video-vga.c
Original file line number Diff line number Diff line change
Expand Up @@ -47,26 +47,16 @@ static u8 vga_set_basic_mode(void)

initregs(&ireg);

#ifdef CONFIG_VIDEO_400_HACK
if (adapter >= ADAPTER_VGA) {
ireg.ax = 0x1202;
ireg.bx = 0x0030;
intcall(0x10, &ireg, NULL);
}
#endif

ax = 0x0f00;
intcall(0x10, &ireg, &oreg);
mode = oreg.al;

set_fs(0);
rows = rdfs8(0x484); /* rows minus one */

#ifndef CONFIG_VIDEO_400_HACK
if ((oreg.ax == 0x5003 || oreg.ax == 0x5007) &&
(rows == 0 || rows == 24))
return mode;
#endif

if (mode != 3 && mode != 7)
mode = 3;
Expand Down
5 changes: 0 additions & 5 deletions arch/x86/boot/video.c
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,6 @@ static unsigned int mode_menu(void)
}
}

#ifdef CONFIG_VIDEO_RETAIN
/* Save screen content to the heap */
static struct saved_screen {
int x, y;
Expand Down Expand Up @@ -299,10 +298,6 @@ static void restore_screen(void)
ireg.dl = saved.curx;
intcall(0x10, &ireg, NULL);
}
#else
#define save_screen() ((void)0)
#define restore_screen() ((void)0)
#endif

void set_video(void)
{
Expand Down
20 changes: 2 additions & 18 deletions arch/x86/boot/video.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,8 @@

#include <linux/types.h>

/* Enable autodetection of SVGA adapters and modes. */
#undef CONFIG_VIDEO_SVGA

/* Enable autodetection of VESA modes */
#define CONFIG_VIDEO_VESA

/* Retain screen contents when switching modes */
#define CONFIG_VIDEO_RETAIN

/* Force 400 scan lines for standard modes (hack to fix bad BIOS behaviour */
#undef CONFIG_VIDEO_400_HACK

/* This code uses an extended set of video mode numbers. These include:
/*
* This code uses an extended set of video mode numbers. These include:
* Aliases for standard modes
* NORMAL_VGA (-1)
* EXTENDED_VGA (-2)
Expand Down Expand Up @@ -67,13 +56,8 @@
/* The "recalculate timings" flag */
#define VIDEO_RECALC 0x8000

/* Define DO_STORE according to CONFIG_VIDEO_RETAIN */
#ifdef CONFIG_VIDEO_RETAIN
void store_screen(void);
#define DO_STORE() store_screen()
#else
#define DO_STORE() ((void)0)
#endif /* CONFIG_VIDEO_RETAIN */

/*
* Mode table structures
Expand Down
2 changes: 1 addition & 1 deletion arch/x86/kernel/e820.c
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ static void __init __e820_add_region(struct e820map *e820x, u64 start, u64 size,
{
int x = e820x->nr_map;

if (x == ARRAY_SIZE(e820x->map)) {
if (x >= ARRAY_SIZE(e820x->map)) {
printk(KERN_ERR "Ooops! Too many entries in the memory map!\n");
return;
}
Expand Down

0 comments on commit 0cc6d77

Please sign in to comment.