diff options
author | Justus Winter <4winter@informatik.uni-hamburg.de> | 2015-05-20 11:09:33 +0200 |
---|---|---|
committer | Justus Winter <4winter@informatik.uni-hamburg.de> | 2015-05-20 11:09:33 +0200 |
commit | 3135f046c8344075a57b6e5e92e73a8d54513fc6 (patch) | |
tree | 544561fb81f6c0965cd9de37f229cb616e051296 /debian/patches/0001-kern-import-macros.h-from-x15.patch | |
parent | 617744c5e30834b4ae39e790b95f9e72e03983ac (diff) |
drop merged patches
Diffstat (limited to 'debian/patches/0001-kern-import-macros.h-from-x15.patch')
-rw-r--r-- | debian/patches/0001-kern-import-macros.h-from-x15.patch | 622 |
1 files changed, 0 insertions, 622 deletions
diff --git a/debian/patches/0001-kern-import-macros.h-from-x15.patch b/debian/patches/0001-kern-import-macros.h-from-x15.patch deleted file mode 100644 index 2373e20..0000000 --- a/debian/patches/0001-kern-import-macros.h-from-x15.patch +++ /dev/null @@ -1,622 +0,0 @@ -From b3c5e41bc05bc622c637d1da75a3c63091e4e789 Mon Sep 17 00:00:00 2001 -From: Justus Winter <4winter@informatik.uni-hamburg.de> -Date: Tue, 31 Mar 2015 12:57:05 +0200 -Subject: [PATCH gnumach 1/6] kern: import `macros.h' from x15 - -Import the macro definitions from the x15 kernel project, and replace -all similar definitions littered all over the place with it. - -Importing this file will make importing code from the x15 kernel -easier. We are already using the red-black tree implementation and -the slab allocator from it, and we will import even more code in the -near future. - -* kern/list.h: Do not define `structof', include `macros.h' instead. -* kern/rbtree.h: Likewise. -* kern/slab.c: Do not define `ARRAY_SIZE', include `macros.h' instead. -* i386/grub/misc.h: Likewise. -* i386/i386/xen.h: Do not define `barrier', include `macros.h' instead. -* kern/macro_help.h: Delete file. Replaced by `macros.h'. -* kern/macros.h: New file. -* Makefrag.am (libkernel_a_SOURCES): Add new file, remove old file. -* device/dev_master.h: Adopt accordingly. -* device/io_req.h: Likewise. -* device/net_io.h: Likewise. -* i386/intel/read_fault.c: Likewise. -* ipc/ipc_kmsg.h: Likewise. -* ipc/ipc_mqueue.h: Likewise. -* ipc/ipc_object.h: Likewise. -* ipc/ipc_port.h: Likewise. -* ipc/ipc_space.h: Likewise. -* ipc/ipc_splay.c: Likewise. -* ipc/ipc_splay.h: Likewise. -* kern/assert.h: Likewise. -* kern/ast.h: Likewise. -* kern/pc_sample.h: Likewise. -* kern/refcount.h: Likewise. -* kern/sched.h: Likewise. -* kern/sched_prim.c: Likewise. -* kern/timer.c: Likewise. -* kern/timer.h: Likewise. -* vm/vm_fault.c: Likewise. -* vm/vm_map.h: Likewise. -* vm/vm_object.h: Likewise. -* vm/vm_page.h: Likewise. ---- - Makefrag.am | 2 +- - device/dev_master.h | 2 +- - device/io_req.h | 2 +- - device/net_io.h | 2 +- - i386/grub/misc.h | 2 +- - i386/i386/xen.h | 2 +- - i386/intel/read_fault.c | 2 +- - ipc/ipc_kmsg.h | 2 +- - ipc/ipc_mqueue.h | 2 +- - ipc/ipc_object.h | 2 +- - ipc/ipc_port.h | 2 +- - ipc/ipc_space.h | 2 +- - ipc/ipc_splay.c | 2 +- - ipc/ipc_splay.h | 2 +- - kern/assert.h | 2 +- - kern/ast.h | 2 +- - kern/list.h | 4 +-- - kern/macro_help.h | 50 ---------------------------------- - kern/macros.h | 72 +++++++++++++++++++++++++++++++++++++++++++++++++ - kern/pc_sample.h | 2 +- - kern/rbtree.h | 5 +--- - kern/refcount.h | 2 +- - kern/sched.h | 2 +- - kern/sched_prim.c | 2 +- - kern/slab.c | 2 +- - kern/timer.c | 2 +- - kern/timer.h | 2 +- - vm/vm_fault.c | 2 +- - vm/vm_map.h | 2 +- - vm/vm_object.h | 2 +- - vm/vm_page.h | 2 +- - 31 files changed, 101 insertions(+), 84 deletions(-) - delete mode 100644 kern/macro_help.h - create mode 100644 kern/macros.h - -diff --git a/Makefrag.am b/Makefrag.am -index 9166143..9222ad2 100644 ---- a/Makefrag.am -+++ b/Makefrag.am -@@ -171,7 +171,7 @@ libkernel_a_SOURCES += \ - kern/mach_factor.h \ - kern/machine.c \ - kern/machine.h \ -- kern/macro_help.h \ -+ kern/macros.h \ - kern/pc_sample.c \ - kern/pc_sample.h \ - kern/printf.c \ -diff --git a/device/dev_master.h b/device/dev_master.h -index 6ad1152..70d4c63 100644 ---- a/device/dev_master.h -+++ b/device/dev_master.h -@@ -37,7 +37,7 @@ - - #if NCPUS > 1 - --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <kern/cpu_number.h> - #include <kern/sched_prim.h> - #include <kern/thread.h> -diff --git a/device/io_req.h b/device/io_req.h -index 65e23e6..1ad4680 100644 ---- a/device/io_req.h -+++ b/device/io_req.h -@@ -42,7 +42,7 @@ - #include <device/device_types.h> - #include <device/dev_hdr.h> - --#include <kern/macro_help.h> -+#include <kern/macros.h> - - /* - * IO request element, queued on device for delayed replies. -diff --git a/device/net_io.h b/device/net_io.h -index f6de854..d4e24d4 100644 ---- a/device/net_io.h -+++ b/device/net_io.h -@@ -38,7 +38,7 @@ - #include <mach/machine/vm_types.h> - #include <ipc/ipc_kmsg.h> - --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <kern/lock.h> - #include <kern/kalloc.h> - -diff --git a/i386/grub/misc.h b/i386/grub/misc.h -index c6cd456..b71140a 100644 ---- a/i386/grub/misc.h -+++ b/i386/grub/misc.h -@@ -21,6 +21,7 @@ - #define GRUB_MISC_HEADER 1 - - #include <stdarg.h> -+#include <kern/macros.h> - #include <grub/types.h> - #include <grub/symbol.h> - #include <grub/err.h> -@@ -32,7 +33,6 @@ - #define ALIGN_UP_OVERHEAD(addr, align) ((-(addr)) & ((typeof (addr)) (align) - 1)) - #define ALIGN_DOWN(addr, align) \ - ((addr) & ~((typeof (addr)) align - 1)) --#define ARRAY_SIZE(array) (sizeof (array) / sizeof (array[0])) - #define COMPILE_TIME_ASSERT(cond) switch (0) { case 1: case !(cond): ; } - - #define grub_dprintf(condition, ...) grub_real_dprintf(GRUB_FILE, __LINE__, condition, __VA_ARGS__) -diff --git a/i386/i386/xen.h b/i386/i386/xen.h -index 638d671..c681187 100644 ---- a/i386/i386/xen.h -+++ b/i386/i386/xen.h -@@ -21,6 +21,7 @@ - - #ifdef MACH_XEN - #ifndef __ASSEMBLER__ -+#include <kern/macros.h> - #include <kern/printf.h> - #include <mach/machine/vm_types.h> - #include <mach/vm_param.h> -@@ -32,7 +33,6 @@ - #include <xen/public/xen.h> - - /* TODO: this should be moved in appropriate non-Xen place. */ --#define barrier() __asm__ __volatile__ ("": : :"memory") - #define mb() __asm__ __volatile__("lock; addl $0,0(%%esp)":::"memory") - #define rmb() mb() - #define wmb() mb() -diff --git a/i386/intel/read_fault.c b/i386/intel/read_fault.c -index 29f4439..4b1edce 100644 ---- a/i386/intel/read_fault.c -+++ b/i386/intel/read_fault.c -@@ -31,7 +31,7 @@ - #include <vm/vm_page.h> - #include <vm/pmap.h> - --#include <kern/macro_help.h> -+#include <kern/macros.h> - - /* - * Expansion of vm_fault for read fault in kernel mode. -diff --git a/ipc/ipc_kmsg.h b/ipc/ipc_kmsg.h -index 620785b..393c039 100644 ---- a/ipc/ipc_kmsg.h -+++ b/ipc/ipc_kmsg.h -@@ -38,7 +38,7 @@ - #include <mach/message.h> - #include <kern/assert.h> - #include <kern/cpu_number.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <kern/kalloc.h> - #include <ipc/ipc_marequest.h> - #include <ipc/ipc_object.h> -diff --git a/ipc/ipc_mqueue.h b/ipc/ipc_mqueue.h -index f8a2f1e..2af5e02 100644 ---- a/ipc/ipc_mqueue.h -+++ b/ipc/ipc_mqueue.h -@@ -37,7 +37,7 @@ - #include <mach/message.h> - #include <kern/assert.h> - #include <kern/lock.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <ipc/ipc_kmsg_queue.h> - #include <ipc/ipc_kmsg.h> - #include <ipc/ipc_thread.h> -diff --git a/ipc/ipc_object.h b/ipc/ipc_object.h -index b83bb5a..be5bea7 100644 ---- a/ipc/ipc_object.h -+++ b/ipc/ipc_object.h -@@ -38,7 +38,7 @@ - #include <mach/message.h> - #include <ipc/ipc_types.h> - #include <kern/lock.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <kern/slab.h> - - typedef unsigned int ipc_object_refs_t; -diff --git a/ipc/ipc_port.h b/ipc/ipc_port.h -index 6914c71..ade6967 100644 ---- a/ipc/ipc_port.h -+++ b/ipc/ipc_port.h -@@ -43,7 +43,7 @@ - #include <mach/kern_return.h> - #include <mach/port.h> - #include <kern/lock.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <kern/ipc_kobject.h> - #include <ipc/ipc_mqueue.h> - #include <ipc/ipc_table.h> -diff --git a/ipc/ipc_space.h b/ipc/ipc_space.h -index c4683d2..3bd2f4d 100644 ---- a/ipc/ipc_space.h -+++ b/ipc/ipc_space.h -@@ -42,7 +42,7 @@ - #include <mach/boolean.h> - #include <mach/kern_return.h> - #include <mach/mach_types.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <kern/lock.h> - #include <kern/slab.h> - #include <ipc/ipc_splay.h> -diff --git a/ipc/ipc_splay.c b/ipc/ipc_splay.c -index 6fb5bcb..062a69f 100644 ---- a/ipc/ipc_splay.c -+++ b/ipc/ipc_splay.c -@@ -35,7 +35,7 @@ - - #include <mach/port.h> - #include <kern/assert.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <ipc/ipc_entry.h> - #include <ipc/ipc_splay.h> - -diff --git a/ipc/ipc_splay.h b/ipc/ipc_splay.h -index d3316ef..42e5a80 100644 ---- a/ipc/ipc_splay.h -+++ b/ipc/ipc_splay.h -@@ -38,7 +38,7 @@ - - #include <mach/port.h> - #include <kern/assert.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <ipc/ipc_entry.h> - - typedef struct ipc_splay_tree { -diff --git a/kern/assert.h b/kern/assert.h -index bd2a8be..7b66d1b 100644 ---- a/kern/assert.h -+++ b/kern/assert.h -@@ -29,7 +29,7 @@ - - /* assert.h 4.2 85/01/21 */ - --#include <kern/macro_help.h> -+#include <kern/macros.h> - - #ifndef NDEBUG - #define MACH_ASSERT 1 -diff --git a/kern/ast.h b/kern/ast.h -index 4c28b1e..7d472be 100644 ---- a/kern/ast.h -+++ b/kern/ast.h -@@ -41,7 +41,7 @@ - */ - - #include "cpu_number.h" --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <machine/ast.h> - - /* -diff --git a/kern/list.h b/kern/list.h -index ad782a8..be92762 100644 ---- a/kern/list.h -+++ b/kern/list.h -@@ -31,9 +31,7 @@ - - #include <stddef.h> - #include <sys/types.h> -- --#define structof(ptr, type, member) \ -- ((type *)((char *)ptr - offsetof(type, member))) -+#include <kern/macros.h> - - /* - * Structure used as both head and node. -diff --git a/kern/macro_help.h b/kern/macro_help.h -deleted file mode 100644 -index 7ce171f..0000000 ---- a/kern/macro_help.h -+++ /dev/null -@@ -1,50 +0,0 @@ --/* -- * Mach Operating System -- * Copyright (c) 1991,1990,1989,1988 Carnegie Mellon University -- * All Rights Reserved. -- * -- * Permission to use, copy, modify and distribute this software and its -- * documentation is hereby granted, provided that both the copyright -- * notice and this permission notice appear in all copies of the -- * software, derivative works or modified versions, and any portions -- * thereof, and that both notices appear in supporting documentation. -- * -- * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" -- * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR -- * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. -- * -- * Carnegie Mellon requests users of this software to return to -- * -- * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU -- * School of Computer Science -- * Carnegie Mellon University -- * Pittsburgh PA 15213-3890 -- * -- * any improvements or extensions that they make and grant Carnegie Mellon -- * the rights to redistribute these changes. -- */ --/* -- * File: kern/macro_help.h -- * -- * Provide help in making lint-free macro routines -- * -- */ -- --#ifndef _KERN_MACRO_HELP_H_ --#define _KERN_MACRO_HELP_H_ -- --#if !defined(MACRO_BEGIN) -- --#include <mach/boolean.h> -- --#define NEVER FALSE --#define ALWAYS TRUE -- --#define MACRO_BEGIN ({ --#define MACRO_END }) -- --#define MACRO_RETURN if (ALWAYS) return -- --#endif /* !MACRO_BEGIN */ -- --#endif /* _KERN_MACRO_HELP_H_ */ -diff --git a/kern/macros.h b/kern/macros.h -new file mode 100644 -index 0000000..fb8dc5e ---- /dev/null -+++ b/kern/macros.h -@@ -0,0 +1,72 @@ -+/* -+ * Copyright (c) 2009, 2010, 2013 Richard Braun. -+ * -+ * This program is free software: you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation, either version 3 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program. If not, see <http://www.gnu.org/licenses/>. -+ * -+ * -+ * Helper macros. -+ */ -+ -+#ifndef _KERN_MACROS_H -+#define _KERN_MACROS_H -+ -+#define MACRO_BEGIN ({ -+#define MACRO_END }) -+#define MACRO_RETURN if (1) return -+ -+#define __QUOTE(x) #x -+#define QUOTE(x) __QUOTE(x) -+ -+#ifdef __ASSEMBLER__ -+#define DECL_CONST(x, s) x -+#else /* __ASSEMBLER__ */ -+#define __DECL_CONST(x, s) x##s -+#define DECL_CONST(x, s) __DECL_CONST(x, s) -+#endif /* __ASSEMBLER__ */ -+ -+#define STRLEN(x) (sizeof(x) - 1) -+#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) -+ -+#define MIN(a, b) ((a) < (b) ? (a) : (b)) -+#define MAX(a, b) ((a) > (b) ? (a) : (b)) -+ -+#define DIV_CEIL(n, d) (((n) + (d) - 1) / (d)) -+ -+#define P2ALIGNED(x, a) (((x) & ((a) - 1)) == 0) -+#define ISP2(x) P2ALIGNED(x, x) -+#define P2ALIGN(x, a) ((x) & -(a)) -+#define P2ROUND(x, a) (-(-(x) & -(a))) -+#define P2END(x, a) (-(~(x) & -(a))) -+ -+#define structof(ptr, type, member) \ -+ ((type *)((char *)(ptr) - offsetof(type, member))) -+ -+#define alignof(x) __alignof__(x) -+ -+#define likely(expr) __builtin_expect(!!(expr), 1) -+#define unlikely(expr) __builtin_expect(!!(expr), 0) -+ -+#define barrier() asm volatile("" : : : "memory") -+ -+#define __noreturn __attribute__((noreturn)) -+#define __aligned(x) __attribute__((aligned(x))) -+#define __always_inline inline __attribute__((always_inline)) -+#define __section(x) __attribute__((section(x))) -+#define __packed __attribute__((packed)) -+#define __alias(x) __attribute__((alias(x))) -+ -+#define __format_printf(fmt, args) \ -+ __attribute__((format(printf, fmt, args))) -+ -+#endif /* _KERN_MACROS_H */ -diff --git a/kern/pc_sample.h b/kern/pc_sample.h -index 3c64068..4832cb9 100644 ---- a/kern/pc_sample.h -+++ b/kern/pc_sample.h -@@ -49,7 +49,7 @@ - #include <mach/pc_sample.h> - #include <mach/machine/vm_types.h> - #include <kern/kern_types.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - - /* - * Control structure for sampling, included in -diff --git a/kern/rbtree.h b/kern/rbtree.h -index 189a7fd..16ef273 100644 ---- a/kern/rbtree.h -+++ b/kern/rbtree.h -@@ -31,12 +31,9 @@ - - #include <stddef.h> - #include <kern/assert.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <sys/types.h> - --#define structof(ptr, type, member) \ -- ((type *)((char *)ptr - offsetof(type, member))) -- - /* - * Indexes of the left and right nodes in the children array of a node. - */ -diff --git a/kern/refcount.h b/kern/refcount.h -index 74204d6..f32feb8 100644 ---- a/kern/refcount.h -+++ b/kern/refcount.h -@@ -27,7 +27,7 @@ - #ifndef _KERN_REFCOUNT_H_ - #define _KERN_REFCOUNT_H_ - --#include <kern/macro_help.h> -+#include <kern/macros.h> - - /* Unless the above include file specified otherwise, - use the system-independent (unoptimized) atomic reference counter. */ -diff --git a/kern/sched.h b/kern/sched.h -index ea601c5..f82f9f5 100644 ---- a/kern/sched.h -+++ b/kern/sched.h -@@ -38,7 +38,7 @@ - #include <kern/queue.h> - #include <kern/lock.h> - #include <kern/kern_types.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - - #if MACH_FIXPRI - #include <mach/policy.h> -diff --git a/kern/sched_prim.c b/kern/sched_prim.c -index d7792ae..e8f260e 100644 ---- a/kern/sched_prim.c -+++ b/kern/sched_prim.c -@@ -44,7 +44,7 @@ - #include <kern/lock.h> - #include <kern/mach_clock.h> - #include <kern/mach_factor.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <kern/processor.h> - #include <kern/queue.h> - #include <kern/sched.h> -diff --git a/kern/slab.c b/kern/slab.c -index 19ebfed..60378b5 100644 ---- a/kern/slab.c -+++ b/kern/slab.c -@@ -79,6 +79,7 @@ - #include <string.h> - #include <kern/assert.h> - #include <kern/mach_clock.h> -+#include <kern/macros.h> - #include <kern/printf.h> - #include <kern/slab.h> - #include <kern/kalloc.h> -@@ -96,7 +97,6 @@ - /* - * Utility macros. - */ --#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) - #define P2ALIGNED(x, a) (((x) & ((a) - 1)) == 0) - #define ISP2(x) P2ALIGNED(x, x) - #define P2ALIGN(x, a) ((x) & -(a)) -diff --git a/kern/timer.c b/kern/timer.c -index 6d6517e..79ada27 100644 ---- a/kern/timer.c -+++ b/kern/timer.c -@@ -33,7 +33,7 @@ - #include <kern/cpu_number.h> - - #include <kern/assert.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - - - -diff --git a/kern/timer.h b/kern/timer.h -index 57f017a..2f473cf 100644 ---- a/kern/timer.h -+++ b/kern/timer.h -@@ -27,7 +27,7 @@ - #ifndef _KERN_TIMER_H_ - #define _KERN_TIMER_H_ - --#include <kern/macro_help.h> -+#include <kern/macros.h> - - #if STAT_TIME - /* -diff --git a/vm/vm_fault.c b/vm/vm_fault.c -index 686156c..0fa4d6a 100644 ---- a/vm/vm_fault.c -+++ b/vm/vm_fault.c -@@ -51,7 +51,7 @@ - #include <mach/memory_object.h> - #include <vm/memory_object_user.user.h> - /* For memory_object_data_{request,unlock} */ --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <kern/slab.h> - - #if MACH_PCSAMPLE -diff --git a/vm/vm_map.h b/vm/vm_map.h -index b8103eb..fc7730a 100644 ---- a/vm/vm_map.h -+++ b/vm/vm_map.h -@@ -52,7 +52,7 @@ - #include <vm/vm_types.h> - #include <kern/lock.h> - #include <kern/rbtree.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - - /* TODO: make it dynamic */ - #define KENTRY_DATA_SIZE (256*PAGE_SIZE) -diff --git a/vm/vm_object.h b/vm/vm_object.h -index 5c42f56..3bfc67a 100644 ---- a/vm/vm_object.h -+++ b/vm/vm_object.h -@@ -45,7 +45,7 @@ - #include <kern/lock.h> - #include <kern/assert.h> - #include <kern/debug.h> --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <vm/pmap.h> - #include <ipc/ipc_types.h> - -diff --git a/vm/vm_page.h b/vm/vm_page.h -index 4fe1b41..e6a8c49 100644 ---- a/vm/vm_page.h -+++ b/vm/vm_page.h -@@ -42,7 +42,7 @@ - #include <kern/queue.h> - #include <kern/lock.h> - --#include <kern/macro_help.h> -+#include <kern/macros.h> - #include <kern/sched_prim.h> /* definitions of wait/wakeup */ - - #if MACH_VM_DEBUG --- -2.1.4 - |