summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjdike <jdike>2003-02-02 18:11:34 +0000
committerjdike <jdike>2003-02-02 18:11:34 +0000
commitd1a5eeda9aa1f5b75df5b670b18fd77a9e406634 (patch)
treec7f4bee9935c9a7de59fac8bc685d21fcd2cd70c
parente4dea0b1281a1cfe452d54245ac542dc7f6db4cd (diff)
downloaduml-history-d1a5eeda9aa1f5b75df5b670b18fd77a9e406634.tar.gz
UML now flushes stdout before entering the kernel.
-rw-r--r--arch/um/include/os.h1
-rw-r--r--arch/um/kernel/um_arch.c1
-rw-r--r--arch/um/os-Linux/file.c5
3 files changed, 7 insertions, 0 deletions
diff --git a/arch/um/include/os.h b/arch/um/include/os.h
index d5fcd8f..b495b5b 100644
--- a/arch/um/include/os.h
+++ b/arch/um/include/os.h
@@ -120,6 +120,7 @@ extern int os_map_memory(void *virt, int fd, unsigned long off,
extern int os_protect_memory(void *addr, unsigned long len,
int r, int w, int x);
extern int os_unmap_memory(void *addr, int len);
+extern void os_flush_stdout(void);
#endif
diff --git a/arch/um/kernel/um_arch.c b/arch/um/kernel/um_arch.c
index 8195504..58c1a4e 100644
--- a/arch/um/kernel/um_arch.c
+++ b/arch/um/kernel/um_arch.c
@@ -372,6 +372,7 @@ int linux_main(int argc, char **argv)
2 * PAGE_SIZE;
task_protections((unsigned long) &init_task);
+ os_flush_stdout();
return(CHOOSE_MODE(start_uml_tt(), start_uml_skas()));
}
diff --git a/arch/um/os-Linux/file.c b/arch/um/os-Linux/file.c
index 3b4c7d5..61da438 100644
--- a/arch/um/os-Linux/file.c
+++ b/arch/um/os-Linux/file.c
@@ -341,6 +341,11 @@ int create_unix_socket(char *file, int len)
return(sock);
}
+void os_flush_stdout(void)
+{
+ fflush(stdout);
+}
+
/*
* Overrides for Emacs so that we follow Linus's tabbing style.
* Emacs will notice this stuff at the end of the file and automatically