Merge branch 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 boot updates from Ingo Molnar:
 "Two cleanups"

* 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/boot: Add missing va_end() to die()
  x86/boot: Simplify the detect_memory*() control flow
This commit is contained in:
Linus Torvalds 2018-12-26 16:56:00 -08:00
commit 9a126e788a
3 changed files with 12 additions and 22 deletions

View File

@ -309,7 +309,7 @@ void query_edd(void);
void __attribute__((noreturn)) die(void);
/* memory.c */
int detect_memory(void);
void detect_memory(void);
/* pm.c */
void __attribute__((noreturn)) go_to_protected_mode(void);

View File

@ -17,7 +17,7 @@
#define SMAP 0x534d4150 /* ASCII "SMAP" */
static int detect_memory_e820(void)
static void detect_memory_e820(void)
{
int count = 0;
struct biosregs ireg, oreg;
@ -68,10 +68,10 @@ static int detect_memory_e820(void)
count++;
} while (ireg.ebx && count < ARRAY_SIZE(boot_params.e820_table));
return boot_params.e820_entries = count;
boot_params.e820_entries = count;
}
static int detect_memory_e801(void)
static void detect_memory_e801(void)
{
struct biosregs ireg, oreg;
@ -80,7 +80,7 @@ static int detect_memory_e801(void)
intcall(0x15, &ireg, &oreg);
if (oreg.eflags & X86_EFLAGS_CF)
return -1;
return;
/* Do we really need to do this? */
if (oreg.cx || oreg.dx) {
@ -89,7 +89,7 @@ static int detect_memory_e801(void)
}
if (oreg.ax > 15*1024) {
return -1; /* Bogus! */
return; /* Bogus! */
} else if (oreg.ax == 15*1024) {
boot_params.alt_mem_k = (oreg.bx << 6) + oreg.ax;
} else {
@ -102,11 +102,9 @@ static int detect_memory_e801(void)
*/
boot_params.alt_mem_k = oreg.ax;
}
return 0;
}
static int detect_memory_88(void)
static void detect_memory_88(void)
{
struct biosregs ireg, oreg;
@ -115,22 +113,13 @@ static int detect_memory_88(void)
intcall(0x15, &ireg, &oreg);
boot_params.screen_info.ext_mem_k = oreg.ax;
return -(oreg.eflags & X86_EFLAGS_CF); /* 0 or -1 */
}
int detect_memory(void)
void detect_memory(void)
{
int err = -1;
detect_memory_e820();
if (detect_memory_e820() > 0)
err = 0;
detect_memory_e801();
if (!detect_memory_e801())
err = 0;
if (!detect_memory_88())
err = 0;
return err;
detect_memory_88();
}

View File

@ -132,6 +132,7 @@ static void die(const char * str, ...)
va_list args;
va_start(args, str);
vfprintf(stderr, str, args);
va_end(args);
fputc('\n', stderr);
exit(1);
}