Skip to contentSkip to conversation

UML - create as-layout.h

PATCH In review Jeff Dike 2 participants 3 messages Mar 22, 2007 – Mar 23, 2007 User-mode Linux (UML)

lore
Share & tools
lore

Jeff Dike

author
#0 lore raw

PATCH 4/7 UML - create as-layout.h

This patch moves all the the symbols defined in um_arch.c, which are mostly boundaries between different parts of the UML kernel address space, to a new header, as-layout.h. There are also a few things here which aren't really related to address space layout, but which don't really have a better place to go.

--

 arch/um/include/as-layout.h   |   35 +++++++++++++++++++++++++++++++++++
 arch/um/include/user_util.h   |   23 -----------------------
 arch/um/kernel/exec.c         |    1 +
 arch/um/kernel/ksyms.c        |    1 +
 arch/um/kernel/mem.c          |    1 +
 arch/um/kernel/physmem.c      |    1 +
 arch/um/kernel/process.c      |    1 +
 arch/um/kernel/skas/process.c |    1 +
 arch/um/kernel/tlb.c          |    1 +
 arch/um/kernel/trap.c         |    1 +
 arch/um/kernel/um_arch.c      |    1 +
 arch/um/os-Linux/main.c       |    1 +
 arch/um/os-Linux/skas/trap.c  |    1 +
 13 files changed, 46 insertions(+), 23 deletions(-)
arch/um/kernel/exec.c +1 -0
Index: linux-2.6.21-mm/arch/um/kernel/exec.c
===================================================================
@@ -12,6 +12,7 @@
 #include "asm/uaccess.h"
 #include "user_util.h"
 #include "kern_util.h"
+#include "as-layout.h"
 #include "mem_user.h"
 #include "kern.h"
 #include "irq_user.h"
arch/um/kernel/mem.c +1 -0
Index: linux-2.6.21-mm/arch/um/kernel/mem.c
===================================================================
@@ -15,6 +15,7 @@
 #include "asm/pgalloc.h"
 #include "user_util.h"
 #include "kern_util.h"
+#include "as-layout.h"
 #include "kern.h"
 #include "mem_user.h"
 #include "uml_uaccess.h"
arch/um/kernel/process.c +1 -0
Index: linux-2.6.21-mm/arch/um/kernel/process.c
===================================================================
@@ -34,6 +34,7 @@
 #include "asm/user.h"
 #include "user_util.h"
 #include "kern_util.h"
+#include "as-layout.h"
 #include "kern.h"
 #include "signal_kern.h"
 #include "init.h"
arch/um/kernel/skas/process.c +1 -0
Index: linux-2.6.21-mm/arch/um/kernel/skas/process.c
===================================================================
@@ -13,6 +13,7 @@
 #include "asm/uaccess.h"
 #include "asm/atomic.h"
 #include "kern_util.h"
+#include "as-layout.h"
 #include "skas.h"
 #include "os.h"
 #include "user_util.h"
arch/um/os-Linux/main.c +1 -0
Index: linux-2.6.21-mm/arch/um/os-Linux/main.c
===================================================================
@@ -15,6 +15,7 @@
 #include <asm/page.h>
 #include "user_util.h"
 #include "kern_util.h"
+#include "as-layout.h"
 #include "mem_user.h"
 #include "irq_user.h"
 #include "user.h"
arch/um/os-Linux/skas/trap.c +1 -0
Index: linux-2.6.21-mm/arch/um/os-Linux/skas/trap.c
===================================================================
@@ -7,6 +7,7 @@
 #include <errno.h>
 #include "user_util.h"
 #include "kern_util.h"
+#include "as-layout.h"
 #include "task.h"
 #include "sigcontext.h"
 #include "skas.h"
arch/um/kernel/physmem.c +1 -0
Index: linux-2.6.21-mm/arch/um/kernel/physmem.c
===================================================================
@@ -13,6 +13,7 @@
 #include "asm/types.h"
 #include "asm/pgtable.h"
 #include "kern_util.h"
+#include "as-layout.h"
 #include "user_util.h"
 #include "mode_kern.h"
 #include "mem.h"
arch/um/kernel/tlb.c +1 -0
Index: linux-2.6.21-mm/arch/um/kernel/tlb.c
===================================================================
@@ -9,6 +9,7 @@
 #include "asm/tlbflush.h"
 #include "choose-mode.h"
 #include "mode_kern.h"
+#include "as-layout.h"
 #include "user_util.h"
 #include "tlb.h"
 #include "mem.h"
arch/um/kernel/trap.c +1 -0
Index: linux-2.6.21-mm/arch/um/kernel/trap.c
===================================================================
@@ -20,6 +20,7 @@
 #include "sysdep/sigcontext.h"
 #include "user_util.h"
 #include "kern_util.h"
+#include "as-layout.h"
 #include "arch.h"
 #include "kern.h"
 #include "chan_kern.h"
arch/um/kernel/um_arch.c +1 -0
Index: linux-2.6.21-mm/arch/um/kernel/um_arch.c
===================================================================
@@ -28,6 +28,7 @@
 #include "asm/current.h"
 #include "user_util.h"
 #include "kern_util.h"
+#include "as-layout.h"
 #include "arch.h"
 #include "kern.h"
 #include "mem_user.h"
arch/um/include/user_util.h +0 -23
Index: linux-2.6.21-mm/arch/um/include/user_util.h
===================================================================
@@ -30,30 +30,7 @@ extern int grantpt(int __fd);
 extern int unlockpt(int __fd);
 extern char *ptsname(int __fd);
 
-struct cpu_task {
-	int pid;
-	void *task;
-};
-
-extern struct cpu_task cpu_tasks[];
-
-extern void (*sig_info[])(int, union uml_pt_regs *);
-
-extern unsigned long low_physmem;
-extern unsigned long high_physmem;
-extern unsigned long uml_physmem;
-extern unsigned long uml_reserved;
-extern unsigned long end_vm;
-extern unsigned long start_vm;
-extern unsigned long long highmem;
-
-extern unsigned long _stext, _etext, _sdata, _edata, __bss_start, _end;
-extern unsigned long _unprotected_end;
-extern unsigned long brk_start;
-
 extern void *add_signal_handler(int sig, void (*handler)(int));
-extern int linux_main(int argc, char **argv);
-extern void set_cmdline(char *cmd);
 extern void input_cb(void (*proc)(void *), void *arg, int arg_len);
 extern int get_pty(void);
 extern int switcheroo(int fd, int prot, void *from, void *to, int size);
arch/um/kernel/ksyms.c +1 -0
Index: linux-2.6.21-mm/arch/um/kernel/ksyms.c
===================================================================
@@ -16,6 +16,7 @@
 #include "asm/page.h"
 #include "asm/tlbflush.h"
 #include "kern_util.h"
+#include "as-layout.h"
 #include "user_util.h"
 #include "mem_user.h"
 #include "os.h"
arch/um/include/as-layout.h new file +35 -0
Index: linux-2.6.21-mm/arch/um/include/as-layout.h
===================================================================
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
+ * Licensed under the GPL
+ */
+
+#ifndef __START_H__
+#define __START_H__
+
+#include "sysdep/ptrace.h"
+
+struct cpu_task {
+	int pid;
+	void *task;
+};
+
+extern struct cpu_task cpu_tasks[];
+
+extern unsigned long low_physmem;
+extern unsigned long high_physmem;
+extern unsigned long uml_physmem;
+extern unsigned long uml_reserved;
+extern unsigned long end_vm;
+extern unsigned long start_vm;
+extern unsigned long long highmem;
+
+extern unsigned long _stext, _etext, _sdata, _edata, __bss_start, _end;
+extern unsigned long _unprotected_end;
+extern unsigned long brk_start;
+
+extern int linux_main(int argc, char **argv);
+extern void set_cmdline(char *cmd);
+
+extern void (*sig_info[])(int, union uml_pt_regs *);
+
+#endif

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
User-mode-linux-devel mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

#1 lore raw
Quoted 5 lines · Jeff Dike

This patch moves all the the symbols defined in um_arch.c, which are mostly boundaries between different parts of the UML kernel address space, to a new header, as-layout.h. There are also a few things here which aren't really related to address space layout, but which don't really have a better place to go.

Hey, I do like _these_ patches! A nice picture in that header could then be added (in the very future ;-) ), but at least one knows there are so much of them. And user_util.h is no more!

;-)

Bye!

Signature · 5 lines
Inform me of my mistakes, so I can add them to my list!
Paolo Giarrusso, aka Blaisorblade
http://www.user-mode-linux.org/~blaisorblade
Chiacchiera con i tuoi amici in tempo reale! 
 http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com 
author
#2 lore raw
Quoted 3 lines · Blaisorblade

Hey, I do like _these_ patches! A nice picture in that header could then be added (in the very future ;-) ), but at least one knows there are so much of them. And user_util.h is no more!

Heh :-)

user_util.h has disgusted me for a long time. The best thing about it is looking at the loong list of one-line deletions in that patch.

Jeff

Signature · 11 lines
Work email - jdike at linux dot intel dot com

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel