aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/style.tex2
-rw-r--r--extras/mini-os/Makefile15
-rw-r--r--extras/mini-os/h/hypervisor.h44
-rw-r--r--extras/mini-os/h/lib.h4
-rw-r--r--extras/mini-os/h/mm.h6
-rw-r--r--extras/mini-os/h/os.h4
-rw-r--r--extras/mini-os/kernel.c2
-rw-r--r--extras/mini-os/lib/malloc.c2
-rw-r--r--extras/mini-os/lib/math.c9
-rw-r--r--extras/mini-os/lib/printf.c10
-rw-r--r--extras/mini-os/lib/string.c6
-rw-r--r--extras/mini-os/time.c2
-rw-r--r--extras/mini-os/traps.c4
-rw-r--r--xen/include/hypervisor-ifs/block.h6
14 files changed, 57 insertions, 59 deletions
diff --git a/docs/style.tex b/docs/style.tex
index de59d9a912..b35308ef48 100644
--- a/docs/style.tex
+++ b/docs/style.tex
@@ -4,7 +4,7 @@
\setcounter{secnumdepth}{10}
\setcounter{tocdepth}{2}
-\usepackage{sabon}
+%\usepackage{sabon}
\def\textos#1{#1}
%
diff --git a/extras/mini-os/Makefile b/extras/mini-os/Makefile
index c0b977080b..2e4d08e9d0 100644
--- a/extras/mini-os/Makefile
+++ b/extras/mini-os/Makefile
@@ -1,17 +1,24 @@
CC := gcc
LD := ld
+
# Linker should relocate monitor to this address
MONITOR_BASE := 0xE0100000
-CFLAGS := -fno-builtin -O3 -Wall -Ih/
+
+# NB. '-Wstrict-prototypes -Wredundant-decls -Wpointer-arith -Winline -ansi'
+# might all be okay to add to Xen. '-Wnested-externs' is a maybe.
+# '-Wcast-qual' is evil.
+CFLAGS := -fno-builtin -O3 -Wall -Ih/ -Wredundant-decls
+CFLAGS += -Wstrict-prototypes -Wnested-externs -Wpointer-arith -Winline -ansi
TARGET := mini-os
-LOBJS:= lib/malloc.o lib/math.o lib/printf.o lib/string.o
-OBJS := entry.o kernel.o traps.o hypervisor.o mm.o events.o time.o ${LOBJS}
+LOBJS := lib/malloc.o lib/math.o lib/printf.o lib/string.o
+OBJS := entry.o kernel.o traps.o hypervisor.o mm.o events.o time.o ${LOBJS}
HINTF := h/hypervisor-ifs/hypervisor-if.h
-HDRS := h/os.h h/types.h h/hypervisor.h h/mm.h h/events.h h/time.h h/lib.h $(HINTF)
+HDRS := h/os.h h/types.h h/hypervisor.h h/mm.h h/events.h h/time.h h/lib.h
+HDRS += $(HINTF)
default: $(TARGET)
diff --git a/extras/mini-os/h/hypervisor.h b/extras/mini-os/h/hypervisor.h
index e07018a937..a4f5625692 100644
--- a/extras/mini-os/h/hypervisor.h
+++ b/extras/mini-os/h/hypervisor.h
@@ -32,7 +32,7 @@ void ack_hypervisor_event(unsigned int ev);
* Assembler stubs for hyper-calls.
*/
-static inline int HYPERVISOR_set_trap_table(trap_info_t *table)
+static __inline__ int HYPERVISOR_set_trap_table(trap_info_t *table)
{
int ret;
__asm__ __volatile__ (
@@ -43,7 +43,7 @@ static inline int HYPERVISOR_set_trap_table(trap_info_t *table)
return ret;
}
-static inline int HYPERVISOR_mmu_update(mmu_update_t *req, int count)
+static __inline__ int HYPERVISOR_mmu_update(mmu_update_t *req, int count)
{
int ret;
__asm__ __volatile__ (
@@ -54,7 +54,7 @@ static inline int HYPERVISOR_mmu_update(mmu_update_t *req, int count)
return ret;
}
-static inline int HYPERVISOR_console_write(const char *str, int count)
+static __inline__ int HYPERVISOR_console_write(const char *str, int count)
{
int ret;
__asm__ __volatile__ (
@@ -66,7 +66,7 @@ static inline int HYPERVISOR_console_write(const char *str, int count)
return ret;
}
-static inline int HYPERVISOR_set_gdt(unsigned long *frame_list, int entries)
+static __inline__ int HYPERVISOR_set_gdt(unsigned long *frame_list, int entries)
{
int ret;
__asm__ __volatile__ (
@@ -78,7 +78,7 @@ static inline int HYPERVISOR_set_gdt(unsigned long *frame_list, int entries)
return ret;
}
-static inline int HYPERVISOR_stack_switch(unsigned long ss, unsigned long esp)
+static __inline__ int HYPERVISOR_stack_switch(unsigned long ss, unsigned long esp)
{
int ret;
__asm__ __volatile__ (
@@ -89,7 +89,7 @@ static inline int HYPERVISOR_stack_switch(unsigned long ss, unsigned long esp)
return ret;
}
-static inline int HYPERVISOR_set_callbacks(
+static __inline__ int HYPERVISOR_set_callbacks(
unsigned long event_selector, unsigned long event_address,
unsigned long failsafe_selector, unsigned long failsafe_address)
{
@@ -103,7 +103,7 @@ static inline int HYPERVISOR_set_callbacks(
return ret;
}
-static inline int HYPERVISOR_net_io_op(netop_t *op)
+static __inline__ int HYPERVISOR_net_io_op(netop_t *op)
{
int ret;
__asm__ __volatile__ (
@@ -114,7 +114,7 @@ static inline int HYPERVISOR_net_io_op(netop_t *op)
return ret;
}
-static inline int HYPERVISOR_fpu_taskswitch(void)
+static __inline__ int HYPERVISOR_fpu_taskswitch(void)
{
int ret;
__asm__ __volatile__ (
@@ -124,7 +124,7 @@ static inline int HYPERVISOR_fpu_taskswitch(void)
return ret;
}
-static inline int HYPERVISOR_yield(void)
+static __inline__ int HYPERVISOR_yield(void)
{
int ret;
__asm__ __volatile__ (
@@ -135,7 +135,7 @@ static inline int HYPERVISOR_yield(void)
return ret;
}
-static inline int HYPERVISOR_exit(void)
+static __inline__ int HYPERVISOR_exit(void)
{
int ret;
__asm__ __volatile__ (
@@ -146,7 +146,7 @@ static inline int HYPERVISOR_exit(void)
return ret;
}
-static inline int HYPERVISOR_stop(void)
+static __inline__ int HYPERVISOR_stop(void)
{
int ret;
__asm__ __volatile__ (
@@ -157,7 +157,7 @@ static inline int HYPERVISOR_stop(void)
return ret;
}
-static inline int HYPERVISOR_dom0_op(void *dom0_op)
+static __inline__ int HYPERVISOR_dom0_op(void *dom0_op)
{
int ret;
__asm__ __volatile__ (
@@ -168,7 +168,7 @@ static inline int HYPERVISOR_dom0_op(void *dom0_op)
return ret;
}
-static inline int HYPERVISOR_network_op(void *network_op)
+static __inline__ int HYPERVISOR_network_op(void *network_op)
{
int ret;
__asm__ __volatile__ (
@@ -179,7 +179,7 @@ static inline int HYPERVISOR_network_op(void *network_op)
return ret;
}
-static inline int HYPERVISOR_block_io_op(unsigned int op)
+static __inline__ int HYPERVISOR_block_io_op(unsigned int op)
{
int ret;
__asm__ __volatile__ (
@@ -190,7 +190,7 @@ static inline int HYPERVISOR_block_io_op(unsigned int op)
return ret;
}
-static inline int HYPERVISOR_set_debugreg(int reg, unsigned long value)
+static __inline__ int HYPERVISOR_set_debugreg(int reg, unsigned long value)
{
int ret;
__asm__ __volatile__ (
@@ -201,7 +201,7 @@ static inline int HYPERVISOR_set_debugreg(int reg, unsigned long value)
return ret;
}
-static inline unsigned long HYPERVISOR_get_debugreg(int reg)
+static __inline__ unsigned long HYPERVISOR_get_debugreg(int reg)
{
unsigned long ret;
__asm__ __volatile__ (
@@ -212,7 +212,7 @@ static inline unsigned long HYPERVISOR_get_debugreg(int reg)
return ret;
}
-static inline int HYPERVISOR_update_descriptor(
+static __inline__ int HYPERVISOR_update_descriptor(
unsigned long pa, unsigned long word1, unsigned long word2)
{
int ret;
@@ -224,7 +224,7 @@ static inline int HYPERVISOR_update_descriptor(
return ret;
}
-static inline int HYPERVISOR_set_fast_trap(int idx)
+static __inline__ int HYPERVISOR_set_fast_trap(int idx)
{
int ret;
__asm__ __volatile__ (
@@ -235,7 +235,7 @@ static inline int HYPERVISOR_set_fast_trap(int idx)
return ret;
}
-static inline int HYPERVISOR_dom_mem_op(void *dom_mem_op)
+static __inline__ int HYPERVISOR_dom_mem_op(void *dom_mem_op)
{
int ret;
__asm__ __volatile__ (
@@ -246,7 +246,7 @@ static inline int HYPERVISOR_dom_mem_op(void *dom_mem_op)
return ret;
}
-static inline int HYPERVISOR_multicall(void *call_list, int nr_calls)
+static __inline__ int HYPERVISOR_multicall(void *call_list, int nr_calls)
{
int ret;
__asm__ __volatile__ (
@@ -257,7 +257,7 @@ static inline int HYPERVISOR_multicall(void *call_list, int nr_calls)
return ret;
}
-static inline long HYPERVISOR_kbd_op(unsigned char op, unsigned char val)
+static __inline__ long HYPERVISOR_kbd_op(unsigned char op, unsigned char val)
{
int ret;
__asm__ __volatile__ (
@@ -268,7 +268,7 @@ static inline long HYPERVISOR_kbd_op(unsigned char op, unsigned char val)
return ret;
}
-static inline int HYPERVISOR_update_va_mapping(
+static __inline__ int HYPERVISOR_update_va_mapping(
unsigned long page_nr, unsigned long new_val, unsigned long flags)
{
int ret;
diff --git a/extras/mini-os/h/lib.h b/extras/mini-os/h/lib.h
index 48140ab79d..d9996a2f85 100644
--- a/extras/mini-os/h/lib.h
+++ b/extras/mini-os/h/lib.h
@@ -114,7 +114,7 @@ void free(void* p);
void *realloc(void* p, size_t n);
void *memalign(size_t alignment, size_t n);
void *valloc(size_t n);
-struct mallinfo mallinfo();
+struct mallinfo mallinfo(void);
int mallopt(int parameter_number, int parameter_value);
void **independent_calloc(size_t n_elements, size_t size, void* chunks[]);
@@ -123,7 +123,7 @@ void *pvalloc(size_t n);
void cfree(void* p);
int malloc_trim(size_t pad);
size_t malloc_usable_size(void* p);
-void malloc_stats();
+void malloc_stats(void);
#endif /* _LIB_H_ */
diff --git a/extras/mini-os/h/mm.h b/extras/mini-os/h/mm.h
index 466f0c3137..e12b56495d 100644
--- a/extras/mini-os/h/mm.h
+++ b/extras/mini-os/h/mm.h
@@ -51,13 +51,13 @@
extern unsigned long *phys_to_machine_mapping;
#define pfn_to_mfn(_pfn) (phys_to_machine_mapping[(_pfn)])
#define mfn_to_pfn(_mfn) (machine_to_phys_mapping[(_mfn)])
-static inline unsigned long phys_to_machine(unsigned long phys)
+static __inline__ unsigned long phys_to_machine(unsigned long phys)
{
unsigned long machine = pfn_to_mfn(phys >> PAGE_SHIFT);
machine = (machine << PAGE_SHIFT) | (phys & ~PAGE_MASK);
return machine;
}
-static inline unsigned long machine_to_phys(unsigned long machine)
+static __inline__ unsigned long machine_to_phys(unsigned long machine)
{
unsigned long phys = mfn_to_pfn(machine >> PAGE_SHIFT);
phys = (phys << PAGE_SHIFT) | (machine & ~PAGE_MASK);
@@ -69,7 +69,7 @@ static inline unsigned long machine_to_phys(unsigned long machine)
#define to_phys(x) ((unsigned long)(x)-VIRT_START)
#define to_virt(x) ((void *)((unsigned long)(x)+VIRT_START))
-void init_mm();
+void init_mm(void);
unsigned long alloc_pages(int order);
#endif /* _MM_H_ */
diff --git a/extras/mini-os/h/os.h b/extras/mini-os/h/os.h
index 9be205e009..c717b66961 100644
--- a/extras/mini-os/h/os.h
+++ b/extras/mini-os/h/os.h
@@ -137,8 +137,8 @@ typedef struct { volatile int counter; } atomic_t;
#define xchg(ptr,v) \
((__typeof__(*(ptr)))__xchg((unsigned long)(v),(ptr),sizeof(*(ptr))))
struct __xchg_dummy { unsigned long a[100]; };
-#define __xg(x) ((struct __xchg_dummy *)(x))
-static inline unsigned long __xchg(unsigned long x, volatile void * ptr,
+#define __xg(x) ((volatile struct __xchg_dummy *)(x))
+static __inline__ unsigned long __xchg(unsigned long x, volatile void * ptr,
int size)
{
switch (size) {
diff --git a/extras/mini-os/kernel.c b/extras/mini-os/kernel.c
index ca9b8f4c6b..4af99cdd35 100644
--- a/extras/mini-os/kernel.c
+++ b/extras/mini-os/kernel.c
@@ -60,10 +60,10 @@ void failsafe_callback(void);
static void exit_handler(int ev, struct pt_regs *regs);
static void debug_handler(int ev, struct pt_regs *regs);
+extern char shared_info[PAGE_SIZE];
static shared_info_t *map_shared_info(unsigned long pa)
{
- extern char shared_info[PAGE_SIZE];
if ( HYPERVISOR_update_va_mapping((unsigned long)shared_info >> PAGE_SHIFT,
pa | 3, UVMF_INVLPG) )
{
diff --git a/extras/mini-os/lib/malloc.c b/extras/mini-os/lib/malloc.c
index c231eb7e86..68af1581cb 100644
--- a/extras/mini-os/lib/malloc.c
+++ b/extras/mini-os/lib/malloc.c
@@ -60,7 +60,7 @@ static void *more_core(size_t n)
if ( ret )
{
num_pages = 1 << order;
- last = ret + (num_pages * PAGE_SIZE);
+ last = (char *)ret + (num_pages * PAGE_SIZE);
}
return ret;
diff --git a/extras/mini-os/lib/math.c b/extras/mini-os/lib/math.c
index 29e1cc933e..be08740965 100644
--- a/extras/mini-os/lib/math.c
+++ b/extras/mini-os/lib/math.c
@@ -140,8 +140,7 @@ shl(register digit *p, register int len, register int sh)
* leading zeros).
*/
u64
-__qdivrem(uq, vq, arq)
- u64 uq, vq, *arq;
+__qdivrem(u64 uq, u64 vq, u64 *arq)
{
union uu tmp;
digit *u, *v, *q;
@@ -363,8 +362,7 @@ __divdi3(s64 a, s64 b)
* Divide two unsigned quads.
*/
u64
-__udivdi3(a, b)
- u64 a, b;
+__udivdi3(u64 a, u64 b)
{
return (__qdivrem(a, b, (u64 *)0));
}
@@ -374,8 +372,7 @@ __udivdi3(a, b)
* Return remainder after dividing two unsigned quads.
*/
u_quad_t
-__umoddi3(a, b)
- u_quad_t a, b;
+__umoddi3(u_quad_t a, u_quad_t b)
{
u_quad_t r;
diff --git a/extras/mini-os/lib/printf.c b/extras/mini-os/lib/printf.c
index bd7beba2c5..698a089c18 100644
--- a/extras/mini-os/lib/printf.c
+++ b/extras/mini-os/lib/printf.c
@@ -130,10 +130,7 @@ vsprintf(char *buf, const char *cfmt, va_list ap)
* The buffer pointed to by `nbuf' must have length >= MAXNBUF.
*/
static char *
-ksprintn(nbuf, ul, base, lenp)
- char *nbuf;
- u_long ul;
- int base, *lenp;
+ksprintn(char *nbuf, u_long ul, int base, int *lenp)
{
char *p;
@@ -148,10 +145,7 @@ ksprintn(nbuf, ul, base, lenp)
}
/* ksprintn, but for a quad_t. */
static char *
-ksprintqn(nbuf, uq, base, lenp)
- char *nbuf;
- u_quad_t uq;
- int base, *lenp;
+ksprintqn(char *nbuf, u_quad_t uq, int base, int *lenp)
{
char *p;
diff --git a/extras/mini-os/lib/string.c b/extras/mini-os/lib/string.c
index c1b9dbfc8e..a00a861316 100644
--- a/extras/mini-os/lib/string.c
+++ b/extras/mini-os/lib/string.c
@@ -35,7 +35,8 @@ int memcmp(const void * cs,const void * ct,size_t count)
void * memcpy(void * dest,const void *src,size_t count)
{
- char *tmp = (char *) dest, *s = (char *) src;
+ char *tmp = (char *) dest;
+ const char *s = src;
while (count--)
*tmp++ = *s++;
@@ -120,7 +121,7 @@ char * strchr(const char * s, int c)
for(; *s != (char) c; ++s)
if (*s == '\0')
return NULL;
- return (char *) s;
+ return (char *)s;
}
char * strstr(const char * s1,const char * s2)
@@ -139,4 +140,3 @@ char * strstr(const char * s1,const char * s2)
}
return NULL;
}
-
diff --git a/extras/mini-os/time.c b/extras/mini-os/time.c
index 23b31794ba..447e164987 100644
--- a/extras/mini-os/time.c
+++ b/extras/mini-os/time.c
@@ -88,7 +88,7 @@ static void get_time_values_from_xen(void)
(shadow_time_version == HYPERVISOR_shared_info->time_version2)
-static inline unsigned long get_time_delta_usecs(void)
+static __inline__ unsigned long get_time_delta_usecs(void)
{
s32 delta_tsc;
u32 low;
diff --git a/extras/mini-os/traps.c b/extras/mini-os/traps.c
index b97f9e3bc6..c0ef335025 100644
--- a/extras/mini-os/traps.c
+++ b/extras/mini-os/traps.c
@@ -57,7 +57,7 @@ void dump_regs(struct pt_regs *regs)
}
-static inline void dump_code(unsigned eip)
+static __inline__ void dump_code(unsigned eip)
{
unsigned *ptr = (unsigned *)eip;
int x;
@@ -80,7 +80,7 @@ static inline void dump_code(unsigned eip)
* register CR2, but that is not accessible in a virtualised OS.
*/
-static void inline do_trap(int trapnr, char *str,
+static void __inline__ do_trap(int trapnr, char *str,
struct pt_regs * regs, long error_code)
{
printk("FATAL: Unhandled Trap (see mini-os:traps.c)");
diff --git a/xen/include/hypervisor-ifs/block.h b/xen/include/hypervisor-ifs/block.h
index 6b7840e6dc..0f0e32f665 100644
--- a/xen/include/hypervisor-ifs/block.h
+++ b/xen/include/hypervisor-ifs/block.h
@@ -104,10 +104,10 @@ typedef struct xen_disk
typedef struct xen_disk_info
{
/* IN variables */
- int max; // maximumum number of disks to report
- xen_disk_t *disks; // pointer to array of disk info
+ int max; /* maximumum number of disks to report */
+ xen_disk_t *disks; /* pointer to array of disk info */
/* OUT variables */
- int count; // how many disks we have info about
+ int count; /* how many disks we have info about */
} xen_disk_info_t;
#endif