[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[tyndur-devel] [PATCH 1/6] kernel2: fix Mulitboot-Info-Struktur
! multiboot.h: Pointer auf die Command-Line hat ist immer 32 Bit breit.
Er darf also aus Kompatibilitätsgründen kein char* sein.
Signed-off-by: Andreas Freimuth <m.nemo@xxxxxxx>
---
src/kernel2/include/multiboot.h | 2 +-
src/kernel2/src/init.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/kernel2/include/multiboot.h b/src/kernel2/include/multiboot.h
index 8621d92..39f116f 100644
--- a/src/kernel2/include/multiboot.h
+++ b/src/kernel2/include/multiboot.h
@@ -103,7 +103,7 @@ struct multiboot_info {
uint8_t mi_boot_device_drive;
/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_CMDLINE. */
- char* mi_cmdline;
+ uint32_t mi_cmdline;
/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_MODS. */
uint32_t mi_mods_count;
diff --git a/src/kernel2/src/init.c b/src/kernel2/src/init.c
index 732b8ca..d6332db 100644
--- a/src/kernel2/src/init.c
+++ b/src/kernel2/src/init.c
@@ -139,7 +139,7 @@ void init(int multiboot_magic, struct multiboot_info *boot_info, bool bsp)
// Debugparameter verarbeiten, das ist aber nur moeglich, wenn eine
// Kernelkommandozeile existiert.
if ((multiboot_info.mi_flags & MULTIBOOT_INFO_HAS_CMDLINE) != 0) {
- parse_cmdline(multiboot_info.mi_cmdline);
+ parse_cmdline((char*)(uintptr_t)multiboot_info.mi_cmdline);
}
#if CONFIG_ARCH == ARCH_I386
--
1.7.11.7