Index: kernel/arch/amd64/include/context.h
===================================================================
--- kernel/arch/amd64/include/context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/amd64/include/context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -47,5 +47,5 @@
  * during function call
  */
-struct context {
+typedef struct {
     uintptr_t sp;
     uintptr_t pc;
@@ -60,5 +60,5 @@
 
     ipl_t ipl;
-} __attribute__ ((packed));
+} __attribute__ ((packed)) context_t;
 
 #endif
Index: kernel/arch/ia32/include/context.h
===================================================================
--- kernel/arch/ia32/include/context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/ia32/include/context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -52,5 +52,5 @@
  * function calls.
  */
-struct context {
+typedef struct {
 	uintptr_t sp;
 	uintptr_t pc;
@@ -60,5 +60,5 @@
 	uint32_t ebp;
 	ipl_t ipl;
-} __attribute__ ((packed));
+} __attribute__ ((packed)) context_t;
 
 #endif
Index: kernel/arch/ia32/include/fpu_context.h
===================================================================
--- kernel/arch/ia32/include/fpu_context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/ia32/include/fpu_context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -45,7 +45,7 @@
 
 
-struct fpu_context {
+typedef struct {
 	uint8_t fpu[512]; 		/* FXSAVE & FXRSTOR storage area */
-};
+} fpu_context_t;
 
 #endif
Index: kernel/arch/ia64/include/context.h
===================================================================
--- kernel/arch/ia64/include/context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/ia64/include/context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -67,5 +67,5 @@
  * function calls.
  */
-struct context {
+typedef struct {
 
 	/*
@@ -129,5 +129,5 @@
 	
 	ipl_t ipl;
-};
+} context_t;
 
 #endif
Index: kernel/arch/ia64/include/fpu_context.h
===================================================================
--- kernel/arch/ia64/include/fpu_context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/ia64/include/fpu_context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -43,7 +43,7 @@
 #define FRS 96
 
-struct fpu_context {
+typedef struct {
 	__r128 fr[FRS];
-};
+} fpu_context_t;
 
 #endif
Index: kernel/arch/mips32/include/context.h
===================================================================
--- kernel/arch/mips32/include/context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/mips32/include/context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -53,5 +53,5 @@
  * function calls.
  */
-struct context {
+typedef struct {
 	uintptr_t sp;
 	uintptr_t pc;
@@ -69,5 +69,5 @@
 
 	ipl_t ipl;
-};
+} context_t;
 
 #endif /* __ASM__ */
Index: kernel/arch/mips32/include/fpu_context.h
===================================================================
--- kernel/arch/mips32/include/fpu_context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/mips32/include/fpu_context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -40,8 +40,8 @@
 #define FPU_CONTEXT_ALIGN    sizeof(unative_t)
 
-struct fpu_context {
+typedef struct {
 	unative_t dregs[32];
 	unative_t cregs[32];
-};
+} fpu_context_t;
 
 #endif
Index: kernel/arch/ppc32/include/context.h
===================================================================
--- kernel/arch/ppc32/include/context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/ppc32/include/context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -40,5 +40,5 @@
 #define SP_DELTA	16
 
-struct context {
+typedef struct {
 	uintptr_t sp;
 	uintptr_t pc;
@@ -68,5 +68,5 @@
 	
 	ipl_t ipl;
-} __attribute__ ((packed));
+} __attribute__ ((packed)) context_t;
 
 #endif
Index: kernel/arch/ppc32/include/fpu_context.h
===================================================================
--- kernel/arch/ppc32/include/fpu_context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/ppc32/include/fpu_context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -40,5 +40,5 @@
 #endif
 
-struct fpu_context {
+typedef struct {
 	uint64_t fr14;
 	uint64_t fr15;
@@ -60,5 +60,5 @@
 	uint64_t fr31;
 	uint32_t fpscr;
-} __attribute__ ((packed));
+} __attribute__ ((packed)) fpu_context_t;
 
 #endif
Index: kernel/arch/ppc64/include/context.h
===================================================================
--- kernel/arch/ppc64/include/context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/ppc64/include/context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -40,5 +40,5 @@
 #define SP_DELTA	16
 
-struct context {
+typedef struct {
 	uintptr_t sp;
 	uintptr_t pc;
@@ -68,5 +68,5 @@
 	
 	ipl_t ipl;
-} __attribute__ ((packed));
+} __attribute__ ((packed)) context_t;
 
 #endif
Index: kernel/arch/ppc64/include/fpu_context.h
===================================================================
--- kernel/arch/ppc64/include/fpu_context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/ppc64/include/fpu_context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -40,5 +40,5 @@
 #endif
 
-struct fpu_context {
+typedef struct {
 	uint64_t fr14;
 	uint64_t fr15;
@@ -60,5 +60,5 @@
 	uint64_t fr31;
 	uint32_t fpscr;
-} __attribute__ ((packed));
+} __attribute__ ((packed)) fpu_context_t;
 
 #endif
Index: kernel/arch/sparc64/include/context.h
===================================================================
--- kernel/arch/sparc64/include/context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/sparc64/include/context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -57,5 +57,5 @@
  * function calls.
  */
-struct context {
+typedef struct {
 	uintptr_t sp;		/* %o6 */
 	uintptr_t pc;		/* %o7 */
@@ -77,5 +77,5 @@
 	uint64_t l7;
 	ipl_t ipl;
-};
+} context_t;
 
 #endif
Index: kernel/arch/sparc64/include/fpu_context.h
===================================================================
--- kernel/arch/sparc64/include/fpu_context.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/arch/sparc64/include/fpu_context.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -41,8 +41,8 @@
 #define FPU_CONTEXT_ALIGN	8
 
-struct fpu_context {
+typedef struct {
 	uint64_t	d[32];
 	uint64_t	fsr;
-};
+} fpu_context_t;
 
 #endif
Index: kernel/generic/include/mm/buddy.h
===================================================================
--- kernel/generic/include/mm/buddy.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/generic/include/mm/buddy.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -41,28 +41,30 @@
 #define BUDDY_SYSTEM_INNER_BLOCK	0xff
 
+struct buddy_system;
+
 /** Buddy system operations to be implemented by each implementation. */
-struct buddy_system_operations {
+typedef struct {
 	/** Return pointer to left-side or right-side buddy for block passed as
 	  * argument. */
-	link_t *(* find_buddy)(buddy_system_t *, link_t *);
+	link_t *(* find_buddy)(struct buddy_system *, link_t *);
 	/** Bisect the block passed as argument and return pointer to the new
 	  * right-side buddy. */
-	link_t *(* bisect)(buddy_system_t *, link_t *);
+	link_t *(* bisect)(struct buddy_system *, link_t *);
 	/** Coalesce two buddies into a bigger block. */
-	link_t *(* coalesce)(buddy_system_t *, link_t *, link_t *);
+	link_t *(* coalesce)(struct buddy_system *, link_t *, link_t *);
 	/** Set order of block passed as argument. */
-	void (*set_order)(buddy_system_t *, link_t *, uint8_t);
+	void (*set_order)(struct buddy_system *, link_t *, uint8_t);
 	/** Return order of block passed as argument. */
-	uint8_t (*get_order)(buddy_system_t *, link_t *);
+	uint8_t (*get_order)(struct buddy_system *, link_t *);
 	/** Mark block as busy. */
-	void (*mark_busy)(buddy_system_t *, link_t *);
+	void (*mark_busy)(struct buddy_system *, link_t *);
 	/** Mark block as available. */
-	void (*mark_available)(buddy_system_t *, link_t *);
+	void (*mark_available)(struct buddy_system *, link_t *);
 	/** Find parent of block that has given order  */
-	link_t *(* find_block)(buddy_system_t *, link_t *, uint8_t);
-	void (* print_id)(buddy_system_t *, link_t *);
-};
+	link_t *(* find_block)(struct buddy_system *, link_t *, uint8_t);
+	void (* print_id)(struct buddy_system *, link_t *);
+} buddy_system_operations_t;
 
-struct buddy_system {
+typedef struct buddy_system {
 	/** Maximal order of block which can be stored by buddy system. */
 	uint8_t max_order;
@@ -71,5 +73,5 @@
 	/** Pointer to be used by the implementation. */
 	void *data;
-};
+} buddy_system_t;
 
 extern void buddy_system_create(buddy_system_t *b, uint8_t max_order,
Index: kernel/generic/include/typedefs.h
===================================================================
--- kernel/generic/include/typedefs.h	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/generic/include/typedefs.h	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -50,6 +50,4 @@
 typedef struct task task_t;
 typedef struct thread thread_t;
-typedef struct context context_t;
-typedef struct fpu_context fpu_context_t;
 
 typedef struct spinlock spinlock_t;
@@ -61,7 +59,4 @@
 typedef struct waitq waitq_t;
 typedef struct futex futex_t;
-
-typedef struct buddy_system buddy_system_t;
-typedef struct buddy_system_operations buddy_system_operations_t;
 
 typedef struct as_area as_area_t;
Index: kernel/generic/src/mm/frame.c
===================================================================
--- kernel/generic/src/mm/frame.c	(revision e7b7be3ff072782e570cb6ee64b50b1625a3fd89)
+++ kernel/generic/src/mm/frame.c	(revision 726e1043bcec8878ef81123f08f4dd7dc7d8e58f)
@@ -425,5 +425,5 @@
 }
 
-static struct buddy_system_operations  zone_buddy_system_operations = {
+static buddy_system_operations_t zone_buddy_system_operations = {
 	.find_buddy = zone_buddy_find_buddy,
 	.bisect = zone_buddy_bisect,
