ia64/xen-unstable

changeset 1488:4f79516ed019

bitkeeper revision 1.971 (40d0bbb1JPrSxn2RF8RhPvWOZBY1Sg)

More code excision.
author kaf24@scramble.cl.cam.ac.uk
date Wed Jun 16 21:29:21 2004 +0000 (2004-06-16)
parents 55825bcb964e
children f32df7f04499 c3ad1ceced2b
files .rootkeys xen/arch/x86/apic.c xen/arch/x86/setup.c xen/common/dom0_ops.c xen/common/kernel.c xen/common/memory.c xen/common/trace.c xen/drivers/acpi/acpi_ksyms.c xen/drivers/pci/pci.c xen/include/acpi/acpi_bus.h xen/include/asm-x86/hardirq.h xen/include/asm-x86/param.h xen/include/asm-x86/system.h xen/include/asm-x86/time.h xen/include/asm-x86/timex.h xen/include/asm-x86/unaligned.h xen/include/xen/config.h xen/include/xen/interrupt.h xen/include/xen/irq_cpustat.h xen/include/xen/module.h xen/include/xen/slab.h xen/include/xen/time.h xen/include/xen/timex.h xen/include/xen/version.h
line diff
     1.1 --- a/.rootkeys	Wed Jun 16 17:09:26 2004 +0000
     1.2 +++ b/.rootkeys	Wed Jun 16 21:29:21 2004 +0000
     1.3 @@ -424,7 +424,6 @@ 3ddb79c3I98vWcQR8xEo34JMJ4Ahyw xen/inclu
     1.4  3ddb79c3n_UbPuxlkNxvvLycClIkxA xen/include/asm-x86/mpspec.h
     1.5  3ddb79c2wa0dA_LGigxOelSGbJ284Q xen/include/asm-x86/msr.h
     1.6  3ddb79c3xjYnrv5t3VqYlR4tNEOl4Q xen/include/asm-x86/page.h
     1.7 -3e450943kzme29HPCtq5HNOVQkddfw xen/include/asm-x86/param.h
     1.8  3ddb79c3ysKUbxZuwKBRK3WXU2TlEg xen/include/asm-x86/pci.h
     1.9  404f1bb41Yl-5ZjIWnG66HDCj6OIWA xen/include/asm-x86/pda.h
    1.10  4022a73diKn2Ax4-R4gzk59lm1YdDg xen/include/asm-x86/pdb.h
    1.11 @@ -437,11 +436,8 @@ 3ddb79c3e9DCEoR-WzNxcOQDzLu7BQ xen/inclu
    1.12  3ddb79c3NiyQE2vQnyGiaBnNjBO1rA xen/include/asm-x86/spinlock.h
    1.13  3e7f358aG11EvMI9VJ4_9hD4LUO7rQ xen/include/asm-x86/string.h
    1.14  3ddb79c3ezddh34MdelJpa5tNR00Dw xen/include/asm-x86/system.h
    1.15 -3e397e66xPNc8eaSqC9pPbyAtRGzHA xen/include/asm-x86/time.h
    1.16 -3e450943TfE-iovQIY_tMO_VdGsPhA xen/include/asm-x86/timex.h
    1.17  3ddb79c4HugMq7IYGxcQKFBpKwKhzA xen/include/asm-x86/types.h
    1.18  40cf1596saFaHD5DC5zvrSn7CDCWGQ xen/include/asm-x86/uaccess.h
    1.19 -3ddb79c3uPGcP_l_2xyGgBSWd5aC-Q xen/include/asm-x86/unaligned.h
    1.20  3ddb79c2ADvRmdexd9y3AYK9_NTx-Q xen/include/asm-x86/x86_32/current.h
    1.21  3ddb79c3mbqEM7QQr3zVq7NiBNhouA xen/include/asm-x86/x86_32/ptrace.h
    1.22  3ddb79c3M2n1ROZH6xk3HbyN4CPDqg xen/include/asm-x86/x86_32/uaccess.h
    1.23 @@ -482,7 +478,6 @@ 3e4cd9d8elj_7EgAs9Of56RQ2Yq_4g xen/inclu
    1.24  3ddb79c1NfYlOrWNqgZkj9EwtFfJow xen/include/xen/lib.h
    1.25  3ddb79c18Ajy7micDGQQfJ0zWgEHtA xen/include/xen/list.h
    1.26  3ddb79c1gs2VbLbQlw0dcDUXYIepDA xen/include/xen/mm.h
    1.27 -3ddb79c13p9iHn1XAp0IS1qvj4yDsg xen/include/xen/module.h
    1.28  3ddb79c1ieLZfGSFwfvvSQ2NK1BMSg xen/include/xen/multiboot.h
    1.29  3ddb79c2Fg44_PBPVxHSC0gTOMq4Ow xen/include/xen/pci.h
    1.30  3ddb79c0MOVXq8qZDQRGb6z64_xAwg xen/include/xen/pci_ids.h
    1.31 @@ -499,10 +494,8 @@ 3ddb79c09xbS-xxfKxuV3JETIhBzmg xen/inclu
    1.32  3ddb79c2iIcESrDAB8samy_yAh6olQ xen/include/xen/spinlock.h
    1.33  3e7f358aMtFMUVvN_Zjg5qvEJIqEBA xen/include/xen/string.h
    1.34  3ddb79c0BnA20PbgmuMPSGIBljNRQw xen/include/xen/time.h
    1.35 -3ddb79c2_m8lT9jDKse_tePj7zcnNQ xen/include/xen/timex.h
    1.36  403a3edbG9K5uZjuY19_LORbQGmFbA xen/include/xen/trace.h
    1.37  3ddb79c1-kVvF8cVa0k3ZHDdBMj01Q xen/include/xen/types.h
    1.38 -3e8827bdaqPeZAWGVOwswgY9bWSx4g xen/include/xen/version.h
    1.39  3ddb79c4x8dvwPtzclghWAKFWpEBFA xen/tools/Makefile
    1.40  3ddb79c4yGZ7_22QAFFwPzqP4NSHwA xen/tools/elf-reloc.c
    1.41  3eb3c87fc79FXLA6R9TvdBJNTvQDwA xen/tools/figlet/LICENSE
     2.1 --- a/xen/arch/x86/apic.c	Wed Jun 16 17:09:26 2004 +0000
     2.2 +++ b/xen/arch/x86/apic.c	Wed Jun 16 21:29:21 2004 +0000
     2.3 @@ -30,7 +30,6 @@
     2.4  #include <asm/apic.h>
     2.5  #include <xen/mm.h>
     2.6  #include <asm/io_apic.h>
     2.7 -#include <asm/timex.h>
     2.8  #include <xen/ac_timer.h>
     2.9  #include <xen/perfc.h>
    2.10  
     3.1 --- a/xen/arch/x86/setup.c	Wed Jun 16 17:09:26 2004 +0000
     3.2 +++ b/xen/arch/x86/setup.c	Wed Jun 16 21:29:21 2004 +0000
     3.3 @@ -7,7 +7,6 @@
     3.4  #include <xen/pci.h>
     3.5  #include <xen/serial.h>
     3.6  #include <xen/acpi.h>
     3.7 -#include <xen/module.h>
     3.8  #include <asm/bitops.h>
     3.9  #include <asm/smp.h>
    3.10  #include <asm/processor.h>
     4.1 --- a/xen/common/dom0_ops.c	Wed Jun 16 17:09:26 2004 +0000
     4.2 +++ b/xen/common/dom0_ops.c	Wed Jun 16 21:29:21 2004 +0000
     4.3 @@ -518,7 +518,6 @@ long do_dom0_op(dom0_op_t *u_dom0_op)
     4.4      case DOM0_PHYSINFO:
     4.5      {
     4.6          extern int phys_proc_id[];
     4.7 -        extern unsigned long cpu_khz;
     4.8  
     4.9          dom0_physinfo_t *pi = &op->u.physinfo;
    4.10  
     5.1 --- a/xen/common/kernel.c	Wed Jun 16 17:09:26 2004 +0000
     5.2 +++ b/xen/common/kernel.c	Wed Jun 16 21:29:21 2004 +0000
     5.3 @@ -18,7 +18,6 @@
     5.4  #include <xen/delay.h>
     5.5  #include <xen/interrupt.h>
     5.6  #include <xen/compile.h>
     5.7 -#include <xen/version.h>
     5.8  #include <xen/console.h>
     5.9  #include <xen/serial.h>
    5.10  #include <xen/shadow.h>
     6.1 --- a/xen/common/memory.c	Wed Jun 16 17:09:26 2004 +0000
     6.2 +++ b/xen/common/memory.c	Wed Jun 16 21:29:21 2004 +0000
     6.3 @@ -1327,9 +1327,9 @@ void audit_page(unsigned long pfn)
     6.4  {
     6.5      unsigned long     i;
     6.6  
     6.7 -    cli();
     6.8 +    __cli();
     6.9      __audit_page(pfn);
    6.10 -    sti();
    6.11 +    __sti();
    6.12      /* add pfn to last_pages cache if is not already present */
    6.13      for ( i = 0; i < LASTPAGES_SIZE; i++ )
    6.14          if ( last_pages[i] == pfn )
    6.15 @@ -1371,7 +1371,7 @@ void audit_all_pages(u_char key, void *d
    6.16  
    6.17      printk("audit_all_pages\n");
    6.18  
    6.19 -    cli();
    6.20 +    __cli();
    6.21      
    6.22      /* walk the frame table */
    6.23      for ( i = 0; i < max_page; i++ )
    6.24 @@ -1432,7 +1432,7 @@ void audit_all_pages(u_char key, void *d
    6.25              }
    6.26          } /* ref count error */
    6.27      }
    6.28 -    sti();
    6.29 +    __sti();
    6.30      
    6.31  }
    6.32  
     7.1 --- a/xen/common/trace.c	Wed Jun 16 17:09:26 2004 +0000
     7.2 +++ b/xen/common/trace.c	Wed Jun 16 21:29:21 2004 +0000
     7.3 @@ -17,7 +17,6 @@
     7.4   */
     7.5  
     7.6  #include <xen/config.h>
     7.7 -#include <asm/timex.h>
     7.8  #include <asm/types.h>
     7.9  #include <asm/io.h>
    7.10  #include <xen/lib.h>
     8.1 --- a/xen/drivers/acpi/acpi_ksyms.c	Wed Jun 16 17:09:26 2004 +0000
     8.2 +++ b/xen/drivers/acpi/acpi_ksyms.c	Wed Jun 16 21:29:21 2004 +0000
     8.3 @@ -23,7 +23,7 @@
     8.4   * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     8.5   */
     8.6  
     8.7 -#include <xen/module.h>
     8.8 +#include <xen/config.h>
     8.9  #include <xen/acpi.h>
    8.10  
    8.11  #ifdef CONFIG_ACPI_INTERPRETER
     9.1 --- a/xen/drivers/pci/pci.c	Wed Jun 16 17:09:26 2004 +0000
     9.2 +++ b/xen/drivers/pci/pci.c	Wed Jun 16 21:29:21 2004 +0000
     9.3 @@ -11,7 +11,6 @@
     9.4  
     9.5  #include <xen/config.h>
     9.6  #include <xen/sched.h>
     9.7 -#include <xen/module.h>
     9.8  #include <xen/types.h>
     9.9  #include <xen/pci.h>
    9.10  #include <xen/init.h>
    10.1 --- a/xen/include/acpi/acpi_bus.h	Wed Jun 16 17:09:26 2004 +0000
    10.2 +++ b/xen/include/acpi/acpi_bus.h	Wed Jun 16 21:29:21 2004 +0000
    10.3 @@ -26,12 +26,13 @@
    10.4  #ifndef __ACPI_BUS_H__
    10.5  #define __ACPI_BUS_H__
    10.6  
    10.7 +#if 0
    10.8  #include <xen/version.h>
    10.9 -
   10.10  #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,4))
   10.11  #include <xen/device.h>
   10.12  #define CONFIG_LDM
   10.13  #endif
   10.14 +#endif /* 0 */
   10.15  
   10.16  #include <acpi/acpi.h>
   10.17  
    11.1 --- a/xen/include/asm-x86/hardirq.h	Wed Jun 16 17:09:26 2004 +0000
    11.2 +++ b/xen/include/asm-x86/hardirq.h	Wed Jun 16 21:29:21 2004 +0000
    11.3 @@ -9,7 +9,6 @@ typedef struct {
    11.4  	unsigned int __softirq_pending;
    11.5  	unsigned int __local_irq_count;
    11.6  	unsigned int __local_bh_count;
    11.7 -	unsigned int __syscall_count;
    11.8  	unsigned int __nmi_count;
    11.9  	unsigned long idle_timestamp;
   11.10  } ____cacheline_aligned irq_cpustat_t;
   11.11 @@ -25,68 +24,7 @@ typedef struct {
   11.12  
   11.13  #define in_irq() (local_irq_count(smp_processor_id()) != 0)
   11.14  
   11.15 -#ifndef CONFIG_SMP
   11.16 -
   11.17 -#define hardirq_trylock(cpu)	(local_irq_count(cpu) == 0)
   11.18 -#define hardirq_endlock(cpu)	do { } while (0)
   11.19 -
   11.20  #define irq_enter(cpu, irq)	(local_irq_count(cpu)++)
   11.21  #define irq_exit(cpu, irq)	(local_irq_count(cpu)--)
   11.22  
   11.23 -#define synchronize_irq()	barrier()
   11.24 -
   11.25 -#else
   11.26 -
   11.27 -#include <asm/atomic.h>
   11.28 -#include <asm/smp.h>
   11.29 -
   11.30 -extern unsigned char global_irq_holder;
   11.31 -extern unsigned volatile long global_irq_lock; /* long for set_bit -RR */
   11.32 -
   11.33 -static inline int irqs_running (void)
   11.34 -{
   11.35 -	int i;
   11.36 -
   11.37 -	for (i = 0; i < smp_num_cpus; i++)
   11.38 -		if (local_irq_count(i))
   11.39 -			return 1;
   11.40 -	return 0;
   11.41 -}
   11.42 -
   11.43 -static inline void release_irqlock(int cpu)
   11.44 -{
   11.45 -	/* if we didn't own the irq lock, just ignore.. */
   11.46 -	if (global_irq_holder == (unsigned char) cpu) {
   11.47 -		global_irq_holder = NO_PROC_ID;
   11.48 -		clear_bit(0,&global_irq_lock);
   11.49 -	}
   11.50 -}
   11.51 -
   11.52 -static inline void irq_enter(int cpu, int irq)
   11.53 -{
   11.54 -	++local_irq_count(cpu);
   11.55 -
   11.56 -	smp_mb();
   11.57 -
   11.58 -	while (test_bit(0,&global_irq_lock)) {
   11.59 -		cpu_relax();
   11.60 -	}
   11.61 -}
   11.62 -
   11.63 -static inline void irq_exit(int cpu, int irq)
   11.64 -{
   11.65 -	--local_irq_count(cpu);
   11.66 -}
   11.67 -
   11.68 -static inline int hardirq_trylock(int cpu)
   11.69 -{
   11.70 -	return !local_irq_count(cpu) && !test_bit(0,&global_irq_lock);
   11.71 -}
   11.72 -
   11.73 -#define hardirq_endlock(cpu)	do { } while (0)
   11.74 -
   11.75 -extern void synchronize_irq(void);
   11.76 -
   11.77 -#endif /* CONFIG_SMP */
   11.78 -
   11.79  #endif /* __ASM_HARDIRQ_H */
    12.1 --- a/xen/include/asm-x86/param.h	Wed Jun 16 17:09:26 2004 +0000
    12.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.3 @@ -1,24 +0,0 @@
    12.4 -#ifndef _ASM_PARAM_H
    12.5 -#define _ASM_PARAM_H
    12.6 -
    12.7 -#ifndef HZ
    12.8 -#define HZ 100
    12.9 -#endif
   12.10 -
   12.11 -#define EXEC_PAGESIZE	4096
   12.12 -
   12.13 -#ifndef NGROUPS
   12.14 -#define NGROUPS		32
   12.15 -#endif
   12.16 -
   12.17 -#ifndef NOGROUP
   12.18 -#define NOGROUP		(-1)
   12.19 -#endif
   12.20 -
   12.21 -#define MAXHOSTNAMELEN	64	/* max length of hostname */
   12.22 -
   12.23 -#ifdef __KERNEL__
   12.24 -# define CLOCKS_PER_SEC	100	/* frequency at which times() counts */
   12.25 -#endif
   12.26 -
   12.27 -#endif
    13.1 --- a/xen/include/asm-x86/system.h	Wed Jun 16 17:09:26 2004 +0000
    13.2 +++ b/xen/include/asm-x86/system.h	Wed Jun 16 21:29:21 2004 +0000
    13.3 @@ -230,26 +230,6 @@ static inline int local_irq_is_enabled(v
    13.4      return !!(flags & (1<<9)); /* EFLAGS_IF */
    13.5  }
    13.6  
    13.7 -#ifdef CONFIG_SMP
    13.8 -
    13.9 -extern void __global_cli(void);
   13.10 -extern void __global_sti(void);
   13.11 -extern unsigned long __global_save_flags(void);
   13.12 -extern void __global_restore_flags(unsigned long);
   13.13 -#define cli() __global_cli()
   13.14 -#define sti() __global_sti()
   13.15 -#define save_flags(x) ((x)=__global_save_flags())
   13.16 -#define restore_flags(x) __global_restore_flags(x)
   13.17 -
   13.18 -#else
   13.19 -
   13.20 -#define cli() __cli()
   13.21 -#define sti() __sti()
   13.22 -#define save_flags(x) __save_flags(x)
   13.23 -#define restore_flags(x) __restore_flags(x)
   13.24 -
   13.25 -#endif
   13.26 -
   13.27  /*
   13.28   * disable hlt during certain critical i/o operations
   13.29   */
    14.1 --- a/xen/include/asm-x86/time.h	Wed Jun 16 17:09:26 2004 +0000
    14.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.3 @@ -1,21 +0,0 @@
    14.4 -/* -*-  Mode:C; c-basic-offset:4; tab-width:4 -*-
    14.5 - ****************************************************************************
    14.6 - * (C) 2002 - Rolf Neugebauer - Intel Research Cambridge
    14.7 - ****************************************************************************
    14.8 - *
    14.9 - *        File: time.h
   14.10 - *      Author: Rolf Neugebauer (neugebar@dcs.gla.ac.uk)
   14.11 - * 
   14.12 - * Environment: Xen Hypervisor
   14.13 - * Description: Architecture dependent definition of time variables
   14.14 - */
   14.15 -
   14.16 -#ifndef _ASM_TIME_H_
   14.17 -#define _ASM_TIME_H_
   14.18 -
   14.19 -#include <asm/types.h>
   14.20 -#include <asm/msr.h>
   14.21 -
   14.22 -typedef s64 s_time_t;  /* system time */
   14.23 -
   14.24 -#endif /* _ASM_TIME_H_ */
    15.1 --- a/xen/include/asm-x86/timex.h	Wed Jun 16 17:09:26 2004 +0000
    15.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.3 @@ -1,58 +0,0 @@
    15.4 -/*
    15.5 - * linux/include/asm-i386/timex.h
    15.6 - *
    15.7 - * i386 architecture timex specifications
    15.8 - */
    15.9 -#ifndef _ASMi386_TIMEX_H
   15.10 -#define _ASMi386_TIMEX_H
   15.11 -
   15.12 -#include <xen/config.h>
   15.13 -#include <asm/msr.h>
   15.14 -
   15.15 -#ifdef CONFIG_MELAN
   15.16 -#  define CLOCK_TICK_RATE 1189200 /* AMD Elan has different frequency! */
   15.17 -#else
   15.18 -#  define CLOCK_TICK_RATE 1193180 /* Underlying HZ */
   15.19 -#endif
   15.20 -
   15.21 -#define CLOCK_TICK_FACTOR	20	/* Factor of both 1000000 and CLOCK_TICK_RATE */
   15.22 -#define FINETUNE ((((((long)LATCH * HZ - CLOCK_TICK_RATE) << SHIFT_HZ) * \
   15.23 -	(1000000/CLOCK_TICK_FACTOR) / (CLOCK_TICK_RATE/CLOCK_TICK_FACTOR)) \
   15.24 -		<< (SHIFT_SCALE-SHIFT_HZ)) / HZ)
   15.25 -
   15.26 -/*
   15.27 - * Standard way to access the cycle counter on i586+ CPUs.
   15.28 - * Currently only used on SMP.
   15.29 - *
   15.30 - * If you really have a SMP machine with i486 chips or older,
   15.31 - * compile for that, and this will just always return zero.
   15.32 - * That's ok, it just means that the nicer scheduling heuristics
   15.33 - * won't work for you.
   15.34 - *
   15.35 - * We only use the low 32 bits, and we'd simply better make sure
   15.36 - * that we reschedule before that wraps. Scheduling at least every
   15.37 - * four billion cycles just basically sounds like a good idea,
   15.38 - * regardless of how fast the machine is. 
   15.39 - */
   15.40 -typedef unsigned long long cycles_t;
   15.41 -
   15.42 -extern cycles_t cacheflush_time;
   15.43 -
   15.44 -static inline cycles_t get_cycles (void)
   15.45 -{
   15.46 -#ifndef CONFIG_X86_TSC
   15.47 -	return 0;
   15.48 -#else
   15.49 -	unsigned long long ret;
   15.50 -
   15.51 -	rdtscll(ret);
   15.52 -	return ret;
   15.53 -#endif
   15.54 -}
   15.55 -
   15.56 -extern unsigned long cpu_khz;
   15.57 -
   15.58 -#define vxtime_lock()		do {} while (0)
   15.59 -#define vxtime_unlock()		do {} while (0)
   15.60 -
   15.61 -#endif
    16.1 --- a/xen/include/asm-x86/unaligned.h	Wed Jun 16 17:09:26 2004 +0000
    16.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    16.3 @@ -1,37 +0,0 @@
    16.4 -#ifndef __X86_UNALIGNED_H
    16.5 -#define __X86_UNALIGNED_H
    16.6 -
    16.7 -/*
    16.8 - * x86 can do unaligned accesses itself. 
    16.9 - *
   16.10 - * The strange macros are there to make sure these can't
   16.11 - * be misused in a way that makes them not work on other
   16.12 - * architectures where unaligned accesses aren't as simple.
   16.13 - */
   16.14 -
   16.15 -/**
   16.16 - * get_unaligned - get value from possibly mis-aligned location
   16.17 - * @ptr: pointer to value
   16.18 - *
   16.19 - * This macro should be used for accessing values larger in size than 
   16.20 - * single bytes at locations that are expected to be improperly aligned, 
   16.21 - * e.g. retrieving a u16 value from a location not u16-aligned.
   16.22 - *
   16.23 - * Note that unaligned accesses can be very expensive on some architectures.
   16.24 - */
   16.25 -#define get_unaligned(ptr) (*(ptr))
   16.26 -
   16.27 -/**
   16.28 - * put_unaligned - put value to a possibly mis-aligned location
   16.29 - * @val: value to place
   16.30 - * @ptr: pointer to location
   16.31 - *
   16.32 - * This macro should be used for placing values larger in size than 
   16.33 - * single bytes at locations that are expected to be improperly aligned, 
   16.34 - * e.g. writing a u16 value to a location not u16-aligned.
   16.35 - *
   16.36 - * Note that unaligned accesses can be very expensive on some architectures.
   16.37 - */
   16.38 -#define put_unaligned(val, ptr) ((void)( *(ptr) = (val) ))
   16.39 -
   16.40 -#endif
    17.1 --- a/xen/include/xen/config.h	Wed Jun 16 17:09:26 2004 +0000
    17.2 +++ b/xen/include/xen/config.h	Wed Jun 16 21:29:21 2004 +0000
    17.3 @@ -9,6 +9,8 @@
    17.4  
    17.5  #include <asm/config.h>
    17.6  
    17.7 +#define EXPORT_SYMBOL(var)
    17.8 +
    17.9  /* syslog levels ==> nothing! */
   17.10  #define KERN_NOTICE  ""
   17.11  #define KERN_WARNING ""
    18.1 --- a/xen/include/xen/interrupt.h	Wed Jun 16 17:09:26 2004 +0000
    18.2 +++ b/xen/include/xen/interrupt.h	Wed Jun 16 21:29:21 2004 +0000
    18.3 @@ -169,53 +169,4 @@ extern void tasklet_kill(struct tasklet_
    18.4  extern void tasklet_init(struct tasklet_struct *t,
    18.5  			 void (*func)(unsigned long), unsigned long data);
    18.6  
    18.7 -#ifdef CONFIG_SMP
    18.8 -
    18.9 -#define SMP_TIMER_NAME(name) name##__thr
   18.10 -
   18.11 -#define SMP_TIMER_DEFINE(name, task) \
   18.12 -DECLARE_TASKLET(task, name##__thr, 0); \
   18.13 -static void name (unsigned long dummy) \
   18.14 -{ \
   18.15 -	tasklet_schedule(&(task)); \
   18.16 -}
   18.17 -
   18.18 -#else /* CONFIG_SMP */
   18.19 -
   18.20 -#define SMP_TIMER_NAME(name) name
   18.21 -#define SMP_TIMER_DEFINE(name, task)
   18.22 -
   18.23 -#endif /* CONFIG_SMP */
   18.24 -
   18.25 -/*
   18.26 - * Autoprobing for irqs:
   18.27 - *
   18.28 - * probe_irq_on() and probe_irq_off() provide robust primitives
   18.29 - * for accurate IRQ probing during kernel initialization.  They are
   18.30 - * reasonably simple to use, are not "fooled" by spurious interrupts,
   18.31 - * and, unlike other attempts at IRQ probing, they do not get hung on
   18.32 - * stuck interrupts (such as unused PS2 mouse interfaces on ASUS boards).
   18.33 - *
   18.34 - * For reasonably foolproof probing, use them as follows:
   18.35 - *
   18.36 - * 1. clear and/or mask the device's internal interrupt.
   18.37 - * 2. sti();
   18.38 - * 3. irqs = probe_irq_on();      // "take over" all unassigned idle IRQs
   18.39 - * 4. enable the device and cause it to trigger an interrupt.
   18.40 - * 5. wait for the device to interrupt, using non-intrusive polling or a delay.
   18.41 - * 6. irq = probe_irq_off(irqs);  // get IRQ number, 0=none, negative=multiple
   18.42 - * 7. service the device to clear its pending interrupt.
   18.43 - * 8. loop again if paranoia is required.
   18.44 - *
   18.45 - * probe_irq_on() returns a mask of allocated irq's.
   18.46 - *
   18.47 - * probe_irq_off() takes the mask as a parameter,
   18.48 - * and returns the irq number which occurred,
   18.49 - * or zero if none occurred, or a negative irq number
   18.50 - * if more than one irq occurred.
   18.51 - */
   18.52 -extern unsigned long probe_irq_on(void);	/* returns 0 on failure */
   18.53 -extern int probe_irq_off(unsigned long);	/* returns 0 or negative on failure */
   18.54 -extern unsigned int probe_irq_mask(unsigned long);	/* returns mask of ISA interrupts */
   18.55 -
   18.56  #endif
    19.1 --- a/xen/include/xen/irq_cpustat.h	Wed Jun 16 17:09:26 2004 +0000
    19.2 +++ b/xen/include/xen/irq_cpustat.h	Wed Jun 16 21:29:21 2004 +0000
    19.3 @@ -29,7 +29,6 @@ extern irq_cpustat_t irq_stat[];			/* de
    19.4  #define softirq_pending(cpu)	__IRQ_STAT((cpu), __softirq_pending)
    19.5  #define local_irq_count(cpu)	__IRQ_STAT((cpu), __local_irq_count)
    19.6  #define local_bh_count(cpu)	__IRQ_STAT((cpu), __local_bh_count)
    19.7 -#define syscall_count(cpu)	__IRQ_STAT((cpu), __syscall_count)
    19.8  #define nmi_count(cpu)		__IRQ_STAT((cpu), __nmi_count)
    19.9  
   19.10  #endif	/* __irq_cpustat_h */
    20.1 --- a/xen/include/xen/module.h	Wed Jun 16 17:09:26 2004 +0000
    20.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    20.3 @@ -1,417 +0,0 @@
    20.4 -/*
    20.5 - * Dynamic loading of modules into the kernel.
    20.6 - *
    20.7 - * Rewritten by Richard Henderson <rth@tamu.edu> Dec 1996
    20.8 - */
    20.9 -
   20.10 -#ifndef _LINUX_MODULE_H
   20.11 -#define _LINUX_MODULE_H
   20.12 -
   20.13 -#include <xen/config.h>
   20.14 -#include <xen/spinlock.h>
   20.15 -#include <xen/list.h>
   20.16 -
   20.17 -#ifdef __GENKSYMS__
   20.18 -#  define _set_ver(sym) sym
   20.19 -#  undef  MODVERSIONS
   20.20 -#  define MODVERSIONS
   20.21 -#else /* ! __GENKSYMS__ */
   20.22 -# if !defined(MODVERSIONS) && defined(EXPORT_SYMTAB)
   20.23 -#   define _set_ver(sym) sym
   20.24 -#   include <xen/modversions.h>
   20.25 -# endif
   20.26 -#endif /* __GENKSYMS__ */
   20.27 -
   20.28 -#include <asm/atomic.h>
   20.29 -
   20.30 -/* Don't need to bring in all of uaccess.h just for this decl.  */
   20.31 -struct exception_table_entry;
   20.32 -
   20.33 -/* Used by get_kernel_syms, which is obsolete.  */
   20.34 -struct kernel_sym
   20.35 -{
   20.36 -	unsigned long value;
   20.37 -	char name[60];		/* should have been 64-sizeof(long); oh well */
   20.38 -};
   20.39 -
   20.40 -struct module_symbol
   20.41 -{
   20.42 -	unsigned long value;
   20.43 -	const char *name;
   20.44 -};
   20.45 -
   20.46 -struct module_ref
   20.47 -{
   20.48 -	struct module *dep;	/* "parent" pointer */
   20.49 -	struct module *ref;	/* "child" pointer */
   20.50 -	struct module_ref *next_ref;
   20.51 -};
   20.52 -
   20.53 -/* TBD */
   20.54 -struct module_persist;
   20.55 -
   20.56 -struct module
   20.57 -{
   20.58 -	unsigned long size_of_struct;	/* == sizeof(module) */
   20.59 -	struct module *next;
   20.60 -	const char *name;
   20.61 -	unsigned long size;
   20.62 -
   20.63 -	union
   20.64 -	{
   20.65 -		atomic_t usecount;
   20.66 -		long pad;
   20.67 -	} uc;				/* Needs to keep its size - so says rth */
   20.68 -
   20.69 -	unsigned long flags;		/* AUTOCLEAN et al */
   20.70 -
   20.71 -	unsigned nsyms;
   20.72 -	unsigned ndeps;
   20.73 -
   20.74 -	struct module_symbol *syms;
   20.75 -	struct module_ref *deps;
   20.76 -	struct module_ref *refs;
   20.77 -	int (*init)(void);
   20.78 -	void (*cleanup)(void);
   20.79 -	const struct exception_table_entry *ex_table_start;
   20.80 -	const struct exception_table_entry *ex_table_end;
   20.81 -#ifdef __alpha__
   20.82 -	unsigned long gp;
   20.83 -#endif
   20.84 -	/* Members past this point are extensions to the basic
   20.85 -	   module support and are optional.  Use mod_member_present()
   20.86 -	   to examine them.  */
   20.87 -	const struct module_persist *persist_start;
   20.88 -	const struct module_persist *persist_end;
   20.89 -	int (*can_unload)(void);
   20.90 -	int runsize;			/* In modutils, not currently used */
   20.91 -	const char *kallsyms_start;	/* All symbols for kernel debugging */
   20.92 -	const char *kallsyms_end;
   20.93 -	const char *archdata_start;	/* arch specific data for module */
   20.94 -	const char *archdata_end;
   20.95 -	const char *kernel_data;	/* Reserved for kernel internal use */
   20.96 -};
   20.97 -
   20.98 -struct module_info
   20.99 -{
  20.100 -	unsigned long addr;
  20.101 -	unsigned long size;
  20.102 -	unsigned long flags;
  20.103 -	long usecount;
  20.104 -};
  20.105 -
  20.106 -/* Bits of module.flags.  */
  20.107 -
  20.108 -#define MOD_UNINITIALIZED	0
  20.109 -#define MOD_RUNNING		1
  20.110 -#define MOD_DELETED		2
  20.111 -#define MOD_AUTOCLEAN		4
  20.112 -#define MOD_VISITED  		8
  20.113 -#define MOD_USED_ONCE		16
  20.114 -#define MOD_JUST_FREED		32
  20.115 -#define MOD_INITIALIZING	64
  20.116 -
  20.117 -/* Values for query_module's which.  */
  20.118 -
  20.119 -#define QM_MODULES	1
  20.120 -#define QM_DEPS		2
  20.121 -#define QM_REFS		3
  20.122 -#define QM_SYMBOLS	4
  20.123 -#define QM_INFO		5
  20.124 -
  20.125 -/* Can the module be queried? */
  20.126 -#define MOD_CAN_QUERY(mod) (((mod)->flags & (MOD_RUNNING | MOD_INITIALIZING)) && !((mod)->flags & MOD_DELETED))
  20.127 -
  20.128 -/* When struct module is extended, we must test whether the new member
  20.129 -   is present in the header received from insmod before we can use it.  
  20.130 -   This function returns true if the member is present.  */
  20.131 -
  20.132 -#define mod_member_present(mod,member) 					\
  20.133 -	((unsigned long)(&((struct module *)0L)->member + 1)		\
  20.134 -	 <= (mod)->size_of_struct)
  20.135 -
  20.136 -/*
  20.137 - * Ditto for archdata.  Assumes mod->archdata_start and mod->archdata_end
  20.138 - * are validated elsewhere.
  20.139 - */
  20.140 -#define mod_archdata_member_present(mod, type, member)			\
  20.141 -	(((unsigned long)(&((type *)0L)->member) +			\
  20.142 -	  sizeof(((type *)0L)->member)) <=				\
  20.143 -	 ((mod)->archdata_end - (mod)->archdata_start))
  20.144 -	 
  20.145 -
  20.146 -/* Check if an address p with number of entries n is within the body of module m */
  20.147 -#define mod_bound(p, n, m) ((unsigned long)(p) >= ((unsigned long)(m) + ((m)->size_of_struct)) && \
  20.148 -	         (unsigned long)((p)+(n)) <= (unsigned long)(m) + (m)->size)
  20.149 -
  20.150 -/* Backwards compatibility definition.  */
  20.151 -
  20.152 -#define GET_USE_COUNT(module)	(atomic_read(&(module)->uc.usecount))
  20.153 -
  20.154 -/* Poke the use count of a module.  */
  20.155 -
  20.156 -#define __MOD_INC_USE_COUNT(mod)					\
  20.157 -	(atomic_inc(&(mod)->uc.usecount), (mod)->flags |= MOD_VISITED|MOD_USED_ONCE)
  20.158 -#define __MOD_DEC_USE_COUNT(mod)					\
  20.159 -	(atomic_dec(&(mod)->uc.usecount), (mod)->flags |= MOD_VISITED)
  20.160 -#define __MOD_IN_USE(mod)						\
  20.161 -	(mod_member_present((mod), can_unload) && (mod)->can_unload	\
  20.162 -	 ? (mod)->can_unload() : atomic_read(&(mod)->uc.usecount))
  20.163 -
  20.164 -/* Indirect stringification.  */
  20.165 -
  20.166 -#define __MODULE_STRING_1(x)	#x
  20.167 -#define __MODULE_STRING(x)	__MODULE_STRING_1(x)
  20.168 -
  20.169 -/* Generic inter module communication.
  20.170 - *
  20.171 - * NOTE: This interface is intended for small amounts of data that are
  20.172 - *       passed between two objects and either or both of the objects
  20.173 - *       might be compiled as modules.  Do not over use this interface.
  20.174 - *
  20.175 - *       If more than two objects need to communicate then you probably
  20.176 - *       need a specific interface instead of abusing this generic
  20.177 - *       interface.  If both objects are *always* built into the kernel
  20.178 - *       then a global extern variable is good enough, you do not need
  20.179 - *       this interface.
  20.180 - *
  20.181 - * Keith Owens <kaos@ocs.com.au> 28 Oct 2000.
  20.182 - */
  20.183 -
  20.184 -#ifdef __KERNEL__
  20.185 -#define HAVE_INTER_MODULE
  20.186 -extern void inter_module_register(const char *, struct module *, const void *);
  20.187 -extern void inter_module_unregister(const char *);
  20.188 -extern const void *inter_module_get(const char *);
  20.189 -extern const void *inter_module_get_request(const char *, const char *);
  20.190 -extern void inter_module_put(const char *);
  20.191 -
  20.192 -struct inter_module_entry {
  20.193 -	struct list_head list;
  20.194 -	const char *im_name;
  20.195 -	struct module *owner;
  20.196 -	const void *userdata;
  20.197 -};
  20.198 -
  20.199 -#if 0
  20.200 -extern int try_inc_mod_count(struct module *mod);
  20.201 -#else
  20.202 -static inline int try_inc_mod_count(struct module * mod)
  20.203 -{
  20.204 -    if ( mod ) __MOD_INC_USE_COUNT(mod);
  20.205 -    return 1;
  20.206 -}
  20.207 -#endif
  20.208 -#endif /* __KERNEL__ */
  20.209 -
  20.210 -#if defined(MODULE) && !defined(__GENKSYMS__)
  20.211 -
  20.212 -/* Embedded module documentation macros.  */
  20.213 -
  20.214 -/* For documentation purposes only.  */
  20.215 -
  20.216 -#define MODULE_AUTHOR(name)						   \
  20.217 -const char __module_author[] __attribute__((section(".modinfo"))) = 	   \
  20.218 -"author=" name
  20.219 -
  20.220 -#define MODULE_DESCRIPTION(desc)					   \
  20.221 -const char __module_description[] __attribute__((section(".modinfo"))) =   \
  20.222 -"description=" desc
  20.223 -
  20.224 -/* Could potentially be used by kmod...  */
  20.225 -
  20.226 -#define MODULE_SUPPORTED_DEVICE(dev)					   \
  20.227 -const char __module_device[] __attribute__((section(".modinfo"))) = 	   \
  20.228 -"device=" dev
  20.229 -
  20.230 -/* Used to verify parameters given to the module.  The TYPE arg should
  20.231 -   be a string in the following format:
  20.232 -   	[min[-max]]{b,h,i,l,s}
  20.233 -   The MIN and MAX specifiers delimit the length of the array.  If MAX
  20.234 -   is omitted, it defaults to MIN; if both are omitted, the default is 1.
  20.235 -   The final character is a type specifier:
  20.236 -	b	byte
  20.237 -	h	short
  20.238 -	i	int
  20.239 -	l	long
  20.240 -	s	string
  20.241 -*/
  20.242 -
  20.243 -#define MODULE_PARM(var,type)			\
  20.244 -const char __module_parm_##var[]		\
  20.245 -__attribute__((section(".modinfo"))) =		\
  20.246 -"parm_" __MODULE_STRING(var) "=" type
  20.247 -
  20.248 -#define MODULE_PARM_DESC(var,desc)		\
  20.249 -const char __module_parm_desc_##var[]		\
  20.250 -__attribute__((section(".modinfo"))) =		\
  20.251 -"parm_desc_" __MODULE_STRING(var) "=" desc
  20.252 -
  20.253 -/*
  20.254 - * MODULE_DEVICE_TABLE exports information about devices
  20.255 - * currently supported by this module.  A device type, such as PCI,
  20.256 - * is a C-like identifier passed as the first arg to this macro.
  20.257 - * The second macro arg is the variable containing the device
  20.258 - * information being made public.
  20.259 - *
  20.260 - * The following is a list of known device types (arg 1),
  20.261 - * and the C types which are to be passed as arg 2.
  20.262 - * pci - struct pci_device_id - List of PCI ids supported by this module
  20.263 - * isapnp - struct isapnp_device_id - List of ISA PnP ids supported by this module
  20.264 - * usb - struct usb_device_id - List of USB ids supported by this module
  20.265 - */
  20.266 -#define MODULE_GENERIC_TABLE(gtype,name)	\
  20.267 -static const unsigned long __module_##gtype##_size \
  20.268 -  __attribute__ ((unused)) = sizeof(struct gtype##_id); \
  20.269 -static const struct gtype##_id * __module_##gtype##_table \
  20.270 -  __attribute__ ((unused)) = name
  20.271 -
  20.272 -/*
  20.273 - * The following license idents are currently accepted as indicating free
  20.274 - * software modules
  20.275 - *
  20.276 - *	"GPL"				[GNU Public License v2 or later]
  20.277 - *	"GPL and additional rights"	[GNU Public License v2 rights and more]
  20.278 - *	"Dual BSD/GPL"			[GNU Public License v2 or BSD license choice]
  20.279 - *	"Dual MPL/GPL"			[GNU Public License v2 or Mozilla license choice]
  20.280 - *
  20.281 - * The following other idents are available
  20.282 - *
  20.283 - *	"Proprietary"			[Non free products]
  20.284 - *
  20.285 - * There are dual licensed components, but when running with Linux it is the
  20.286 - * GPL that is relevant so this is a non issue. Similarly LGPL linked with GPL
  20.287 - * is a GPL combined work.
  20.288 - *
  20.289 - * This exists for several reasons
  20.290 - * 1.	So modinfo can show license info for users wanting to vet their setup 
  20.291 - *	is free
  20.292 - * 2.	So the community can ignore bug reports including proprietary modules
  20.293 - * 3.	So vendors can do likewise based on their own policies
  20.294 - */
  20.295 - 
  20.296 -#define MODULE_LICENSE(license) 	\
  20.297 -static const char __module_license[] __attribute__((section(".modinfo"))) =   \
  20.298 -"license=" license
  20.299 -
  20.300 -/* Define the module variable, and usage macros.  */
  20.301 -extern struct module __this_module;
  20.302 -
  20.303 -#define THIS_MODULE		(&__this_module)
  20.304 -#define MOD_INC_USE_COUNT	__MOD_INC_USE_COUNT(THIS_MODULE)
  20.305 -#define MOD_DEC_USE_COUNT	__MOD_DEC_USE_COUNT(THIS_MODULE)
  20.306 -#define MOD_IN_USE		__MOD_IN_USE(THIS_MODULE)
  20.307 -
  20.308 -#if 0
  20.309 -#include <xen/version.h>
  20.310 -static const char __module_kernel_version[] __attribute__((section(".modinfo"))) =
  20.311 -"kernel_version=" UTS_RELEASE;
  20.312 -#ifdef MODVERSIONS
  20.313 -static const char __module_using_checksums[] __attribute__((section(".modinfo"))) =
  20.314 -"using_checksums=1";
  20.315 -#endif
  20.316 -#endif
  20.317 -
  20.318 -#else /* MODULE */
  20.319 -
  20.320 -#define MODULE_AUTHOR(name)
  20.321 -#define MODULE_LICENSE(license)
  20.322 -#define MODULE_DESCRIPTION(desc)
  20.323 -#define MODULE_SUPPORTED_DEVICE(name)
  20.324 -#define MODULE_PARM(var,type)
  20.325 -#define MODULE_PARM_DESC(var,desc)
  20.326 -
  20.327 -/* Create a dummy reference to the table to suppress gcc unused warnings.  Put
  20.328 - * the reference in the .data.exit section which is discarded when code is built
  20.329 - * in, so the reference does not bloat the running kernel.  Note: cannot be
  20.330 - * const, other exit data may be writable.
  20.331 - */
  20.332 -#define MODULE_GENERIC_TABLE(gtype,name) \
  20.333 -static const struct gtype##_id * __module_##gtype##_table \
  20.334 -  __attribute__ ((unused, __section__(".data.exit"))) = name
  20.335 -
  20.336 -#ifndef __GENKSYMS__
  20.337 -
  20.338 -#define THIS_MODULE		NULL
  20.339 -#define MOD_INC_USE_COUNT	do { } while (0)
  20.340 -#define MOD_DEC_USE_COUNT	do { } while (0)
  20.341 -#define MOD_IN_USE		1
  20.342 -
  20.343 -extern struct module *module_list;
  20.344 -
  20.345 -#endif /* !__GENKSYMS__ */
  20.346 -
  20.347 -#endif /* MODULE */
  20.348 -
  20.349 -#define MODULE_DEVICE_TABLE(type,name)		\
  20.350 -  MODULE_GENERIC_TABLE(type##_device,name)
  20.351 -
  20.352 -/* Export a symbol either from the kernel or a module.
  20.353 -
  20.354 -   In the kernel, the symbol is added to the kernel's global symbol table.
  20.355 -
  20.356 -   In a module, it controls which variables are exported.  If no
  20.357 -   variables are explicitly exported, the action is controled by the
  20.358 -   insmod -[xX] flags.  Otherwise, only the variables listed are exported.
  20.359 -   This obviates the need for the old register_symtab() function.  */
  20.360 -
  20.361 -#if defined(__GENKSYMS__)
  20.362 -
  20.363 -/* We want the EXPORT_SYMBOL tag left intact for recognition.  */
  20.364 -
  20.365 -#elif !defined(CONFIG_MODULES)
  20.366 -
  20.367 -#define __EXPORT_SYMBOL(sym,str)
  20.368 -#define EXPORT_SYMBOL(var)
  20.369 -#define EXPORT_SYMBOL_NOVERS(var)
  20.370 -#define EXPORT_SYMBOL_GPL(var)
  20.371 -
  20.372 -#elif !defined(EXPORT_SYMTAB)
  20.373 -
  20.374 -#define __EXPORT_SYMBOL(sym,str)   error this_object_must_be_defined_as_export_objs_in_the_Makefile
  20.375 -#define EXPORT_SYMBOL(var)	   error this_object_must_be_defined_as_export_objs_in_the_Makefile
  20.376 -#define EXPORT_SYMBOL_NOVERS(var)  error this_object_must_be_defined_as_export_objs_in_the_Makefile
  20.377 -#define EXPORT_SYMBOL_GPL(var)  error this_object_must_be_defined_as_export_objs_in_the_Makefile
  20.378 -
  20.379 -#else
  20.380 -
  20.381 -#define __EXPORT_SYMBOL(sym, str)			\
  20.382 -const char __kstrtab_##sym[]				\
  20.383 -__attribute__((section(".kstrtab"))) = str;		\
  20.384 -const struct module_symbol __ksymtab_##sym 		\
  20.385 -__attribute__((section("__ksymtab"))) =			\
  20.386 -{ (unsigned long)&sym, __kstrtab_##sym }
  20.387 -
  20.388 -#define __EXPORT_SYMBOL_GPL(sym, str)			\
  20.389 -const char __kstrtab_##sym[]				\
  20.390 -__attribute__((section(".kstrtab"))) = "GPLONLY_" str;	\
  20.391 -const struct module_symbol __ksymtab_##sym		\
  20.392 -__attribute__((section("__ksymtab"))) =			\
  20.393 -{ (unsigned long)&sym, __kstrtab_##sym }
  20.394 -
  20.395 -#if defined(MODVERSIONS) || !defined(CONFIG_MODVERSIONS)
  20.396 -#define EXPORT_SYMBOL(var)  __EXPORT_SYMBOL(var, __MODULE_STRING(var))
  20.397 -#define EXPORT_SYMBOL_GPL(var)  __EXPORT_SYMBOL_GPL(var, __MODULE_STRING(var))
  20.398 -#else
  20.399 -#define EXPORT_SYMBOL(var)  __EXPORT_SYMBOL(var, __MODULE_STRING(__VERSIONED_SYMBOL(var)))
  20.400 -#define EXPORT_SYMBOL_GPL(var)  __EXPORT_SYMBOL(var, __MODULE_STRING(__VERSIONED_SYMBOL(var)))
  20.401 -#endif
  20.402 -
  20.403 -#define EXPORT_SYMBOL_NOVERS(var)  __EXPORT_SYMBOL(var, __MODULE_STRING(var))
  20.404 -
  20.405 -#endif /* __GENKSYMS__ */
  20.406 -
  20.407 -#ifdef MODULE
  20.408 -/* Force a module to export no symbols.  */
  20.409 -#define EXPORT_NO_SYMBOLS  __asm__(".section __ksymtab\n.previous")
  20.410 -#else
  20.411 -#define EXPORT_NO_SYMBOLS
  20.412 -#endif /* MODULE */
  20.413 -
  20.414 -#ifdef CONFIG_MODULES
  20.415 -#define SET_MODULE_OWNER(some_struct) do { (some_struct)->owner = THIS_MODULE; } while (0)
  20.416 -#else
  20.417 -#define SET_MODULE_OWNER(some_struct) do { } while (0)
  20.418 -#endif
  20.419 -
  20.420 -#endif /* _LINUX_MODULE_H */
    21.1 --- a/xen/include/xen/slab.h	Wed Jun 16 17:09:26 2004 +0000
    21.2 +++ b/xen/include/xen/slab.h	Wed Jun 16 21:29:21 2004 +0000
    21.3 @@ -1,25 +1,19 @@
    21.4  /*
    21.5 - * linux/mm/slab.h
    21.6   * Written by Mark Hemment, 1996.
    21.7   * (markhe@nextd.demon.co.uk)
    21.8   */
    21.9  
   21.10 -#if	!defined(_LINUX_SLAB_H)
   21.11 -#define	_LINUX_SLAB_H
   21.12 +#ifndef __SLAB_H__
   21.13 +#define	__SLAB_H__
   21.14  
   21.15  typedef struct kmem_cache_s kmem_cache_t;
   21.16  
   21.17 -#include	<xen/mm.h>
   21.18 -#include	<xen/cache.h>
   21.19 +#include <xen/mm.h>
   21.20 +#include <xen/cache.h>
   21.21  
   21.22  /* flags for kmem_cache_alloc() */
   21.23 -#define	SLAB_NOFS		GFP_NOFS
   21.24 -#define	SLAB_NOIO		GFP_NOIO
   21.25 -#define SLAB_NOHIGHIO		GFP_NOHIGHIO
   21.26  #define	SLAB_ATOMIC		GFP_ATOMIC
   21.27 -#define	SLAB_USER		GFP_USER
   21.28  #define	SLAB_KERNEL		GFP_KERNEL
   21.29 -#define	SLAB_NFS		GFP_NFS
   21.30  #define	SLAB_DMA		GFP_DMA
   21.31  
   21.32  #define SLAB_LEVEL_MASK		(__GFP_WAIT|__GFP_HIGH|__GFP_IO|__GFP_HIGHIO|__GFP_FS)
   21.33 @@ -29,7 +23,6 @@ typedef struct kmem_cache_s kmem_cache_t
   21.34   * The first 3 are only valid when the allocator as been build
   21.35   * SLAB_DEBUG_SUPPORT.
   21.36   */
   21.37 -#define	SLAB_DEBUG_FREE		0x00000100UL	/* Peform (expensive) checks on free */
   21.38  #define	SLAB_DEBUG_INITIAL	0x00000200UL	/* Call constructor (as verifier) */
   21.39  #define	SLAB_RED_ZONE		0x00000400UL	/* Red zone objs in a cache */
   21.40  #define	SLAB_POISON		0x00000800UL	/* Poison objects */
   21.41 @@ -62,23 +55,4 @@ extern int FASTCALL(kmem_cache_reap(int)
   21.42  
   21.43  extern void dump_slabinfo();
   21.44  
   21.45 -#if 0
   21.46 -extern int slabinfo_read_proc(char *page, char **start, off_t off,
   21.47 -				 int count, int *eof, void *data);
   21.48 -extern int slabinfo_write_proc(struct file *file, const char *buffer,
   21.49 -			   unsigned long count, void *data);
   21.50 -#endif
   21.51 -
   21.52 -/* System wide caches */
   21.53 -extern kmem_cache_t	*vm_area_cachep;
   21.54 -extern kmem_cache_t	*mm_cachep;
   21.55 -extern kmem_cache_t	*names_cachep;
   21.56 -extern kmem_cache_t	*files_cachep;
   21.57 -extern kmem_cache_t	*filp_cachep;
   21.58 -extern kmem_cache_t	*dquot_cachep;
   21.59 -extern kmem_cache_t	*bh_cachep;
   21.60 -extern kmem_cache_t	*fs_cachep;
   21.61 -extern kmem_cache_t	*sigact_cachep;
   21.62 -
   21.63 -
   21.64 -#endif	/* _LINUX_SLAB_H */
   21.65 +#endif	/* __SLAB_H__ */
    22.1 --- a/xen/include/xen/time.h	Wed Jun 16 17:09:26 2004 +0000
    22.2 +++ b/xen/include/xen/time.h	Wed Jun 16 21:29:21 2004 +0000
    22.3 @@ -27,12 +27,12 @@
    22.4  #ifndef __XEN_TIME_H__
    22.5  #define __XEN_TIME_H__
    22.6  
    22.7 -#include <asm/time.h>    /* pull in architecture specific time definition */
    22.8  #include <xen/types.h>
    22.9  #include <hypervisor-ifs/hypervisor-if.h>
   22.10  
   22.11  extern int init_xen_time();
   22.12  
   22.13 +extern unsigned long cpu_khz;
   22.14  
   22.15  /*
   22.16   * System Time
   22.17 @@ -43,6 +43,8 @@ extern int init_xen_time();
   22.18   * of real time into system time 
   22.19   */
   22.20  
   22.21 +typedef s64 s_time_t;
   22.22 +
   22.23  s_time_t get_s_time(void);
   22.24  
   22.25  #define NOW()           ((s_time_t)get_s_time())
    23.1 --- a/xen/include/xen/timex.h	Wed Jun 16 17:09:26 2004 +0000
    23.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    23.3 @@ -1,7 +0,0 @@
    23.4 -#ifndef _LINUX_TIMEX_H
    23.5 -#define _LINUX_TIMEX_H
    23.6 -
    23.7 -#include <asm/param.h>
    23.8 -#include <asm/timex.h>
    23.9 -
   23.10 -#endif /* LINUX_TIMEX_H */
    24.1 --- a/xen/include/xen/version.h	Wed Jun 16 17:09:26 2004 +0000
    24.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    24.3 @@ -1,2 +0,0 @@
    24.4 -#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
    24.5 -#define LINUX_VERSION_CODE KERNEL_VERSION(2,4,21)