diff options
| -rw-r--r-- | debian/changelog | 32 | ||||
| -rw-r--r-- | debian/patches/00_clean_gfdl.patch | 2 | ||||
| -rw-r--r-- | debian/patches/05_halt_on_panic_flag.patch | 6 | ||||
| -rw-r--r-- | debian/patches/13_ide_dma.patch | 4 | ||||
| -rw-r--r-- | debian/patches/14_alloc_params.patch | 13 | ||||
| -rw-r--r-- | debian/patches/21_aligned_zalloc.patch | 18 | ||||
| -rw-r--r-- | debian/patches/30_net_multicast.patch | 29 | ||||
| -rw-r--r-- | debian/patches/50_ide_bm.patch | 25 | ||||
| -rw-r--r-- | debian/patches/60_bad_user_access_length_fix.patch | 20 | ||||
| -rw-r--r-- | debian/patches/61_vm_resident-zoned.patch | 1708 | ||||
| -rw-r--r-- | debian/patches/70_cld.patch | 13 | ||||
| -rw-r--r-- | debian/patches/80_rtl8139_open.patch | 33 | ||||
| -rw-r--r-- | debian/patches/90_autoconf_autogen.patch | 1151 | ||||
| -rw-r--r-- | debian/patches/series | 6 |
14 files changed, 21 insertions, 3039 deletions
diff --git a/debian/changelog b/debian/changelog index 445b36f..241cf7c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,26 +1,19 @@ -gnumach (2:1.3.99.dfsg.cvs20070809-2) UNRELEASED; urgency=low +gnumach (2:1.3.99.dfsg.cvs20080708-1) UNRELEASED; urgency=low + + * New upstream CVS snapshot. + - Fix zalloc alignment support, and thus alignment of FPU save area. + (Closes: #440068) + - Enable multicast for IPv6. + - Enable Bus Mastering on triton chipsets. + - Fix gcc-4.3 non-inlining. (Closes: #474902) + - Fix direction flag on syscall entry. (Closes: #469566) + - Fix initialization of RTL8139. (Closes: #469566) [ Samuel Thibault ] * Append more agressive caching parameter to debian/patches/14_alloc_params.patch. - * Fix zalloc alignment support, and thus alignment of FPU save area - (Closes: #440068) - - debian/patches/21_aligned_zalloc.patch * New patch to enable IDE multiple sector I/O when the drive can do it. - debian/patches/16_ide_multsect.patch - * New patch from CVS to enable multicast for IPv6. - - debian/patches/30_net_multicast.patch - * New patch from CVS to enable Bus Mastering on triton chipsets. - - debian/patches/50_ide_bm.patch - * New patch from CVS to fix gcc-4.3 non-inlining. - (Closes: #474902) - - debian/patches/60_bad_user_access_length_fix.patch - * New patch from CVS to fix direction flag on syscall entry. - (Closes: #469566) - - debian/patches/70_cld.patch - * New patch from CVS to fix initialization of RTL8139. - (Closes: #469566) - - debian/patches/80_rtl8139_open.patch * Clean debian/tmp-dbg. [ Guillem Jover ] @@ -35,6 +28,11 @@ gnumach (2:1.3.99.dfsg.cvs20070809-2) UNRELEASED; urgency=low * Remove DPATCHLEVEL variable from patches. * Change source and binary packages from Section base to admin. * Mangle the Debian version in the watch file. + * Sync with upstream: + - debian/patches/00_clean_gfdl.patch: Refresh. + - debian/patches/05_halt_on_panic_flag.patch: Likewise. + - debian/patches/13_ide_dma.patch: Likewise. + - debian/patches/14_alloc_params.patch: Likewise. -- Guillem Jover <guillem@debian.org> Thu, 09 Aug 2007 01:45:22 +0300 diff --git a/debian/patches/00_clean_gfdl.patch b/debian/patches/00_clean_gfdl.patch index 8dd4133..d3d327c 100644 --- a/debian/patches/00_clean_gfdl.patch +++ b/debian/patches/00_clean_gfdl.patch @@ -2,7 +2,7 @@ Index: b/Makefile.am =================================================================== --- a/Makefile.am +++ b/Makefile.am -@@ -110,7 +110,7 @@ include Makefrag.am +@@ -108,7 +108,7 @@ include Makefrag.am include tests/Makefrag.am # Documentation. diff --git a/debian/patches/05_halt_on_panic_flag.patch b/debian/patches/05_halt_on_panic_flag.patch index 5d99852..1509810 100644 --- a/debian/patches/05_halt_on_panic_flag.patch +++ b/debian/patches/05_halt_on_panic_flag.patch @@ -50,9 +50,9 @@ Index: b/kern/debug.c void panic(const char *s, ...) @@ -165,7 +169,7 @@ panic(const char *s, ...) - #if MACH_KDB - Debugger("panic"); - #else + delay (1000000); /* microseconds */ + } + - halt_all_cpus (1); + halt_all_cpus (reboot_on_panic); #endif diff --git a/debian/patches/13_ide_dma.patch b/debian/patches/13_ide_dma.patch index c17ee2a..c3252e2 100644 --- a/debian/patches/13_ide_dma.patch +++ b/debian/patches/13_ide_dma.patch @@ -586,7 +586,7 @@ Index: b/linux/src/drivers/block/triton.c goto quit; if ((pcicmd & 1) == 0) { printk("ide: ports are not enabled (BIOS)\n"); -@@ -416,21 +639,29 @@ void ide_init_triton (byte bus, byte fn) +@@ -426,21 +649,29 @@ void ide_init_triton (byte bus, byte fn) */ int try_again = 1; do { @@ -623,7 +623,7 @@ Index: b/linux/src/drivers/block/triton.c goto quit; } } while (try_again--); -@@ -439,89 +670,308 @@ void ide_init_triton (byte bus, byte fn) +@@ -449,89 +680,308 @@ void ide_init_triton (byte bus, byte fn) /* * See if ide port(s) are enabled */ diff --git a/debian/patches/14_alloc_params.patch b/debian/patches/14_alloc_params.patch index 7dc6542..e5f246a 100644 --- a/debian/patches/14_alloc_params.patch +++ b/debian/patches/14_alloc_params.patch @@ -68,19 +68,6 @@ Index: b/vm/vm_object.c decl_simple_lock_data(,vm_object_cached_lock_data) -Index: b/linux/dev/glue/block.c -=================================================================== ---- a/linux/dev/glue/block.c -+++ b/linux/dev/glue/block.c -@@ -572,7 +572,7 @@ out: - } - - #define BH_Bounce 16 --#define MAX_BUF VM_MAP_COPY_PAGE_LIST_MAX -+#define MAX_BUF 8 - - /* Perform read/write operation RW on device DEV - starting at *off to/from buffer *BUF of size *RESID. Index: b/vm/vm_map.h =================================================================== --- a/vm/vm_map.h diff --git a/debian/patches/21_aligned_zalloc.patch b/debian/patches/21_aligned_zalloc.patch deleted file mode 100644 index bef36f1..0000000 --- a/debian/patches/21_aligned_zalloc.patch +++ /dev/null @@ -1,18 +0,0 @@ -2007-09-03 Samuel Thibault <samuel.thibault@ens-lyon.org> - - * kern/zalloc.c (zget_space): Align zalloc_next_space again after - calling kmem_alloc_wired (which may sleep). - -Index: b/kern/zalloc.c -=================================================================== ---- a/kern/zalloc.c -+++ b/kern/zalloc.c -@@ -320,6 +320,8 @@ static vm_offset_t zget_space(vm_offset_ - zone_page_init(new_space, space_to_add, - ZONE_PAGE_USED); - simple_lock(&zget_space_lock); -+ if (align > 0) -+ ALIGN_SIZE_UP(zalloc_next_space, align); - continue; - } - diff --git a/debian/patches/30_net_multicast.patch b/debian/patches/30_net_multicast.patch deleted file mode 100644 index ff4d6d9..0000000 --- a/debian/patches/30_net_multicast.patch +++ /dev/null @@ -1,29 +0,0 @@ -2007-10-09 Thomas Schwinge <tschwinge@gnu.org> - - * linux/dev/glue/net.c (device_open) <LINUX_IFF_ALLMULTI>: Comment. - -2007-10-08 Stefan Siegl <stesie@brokenpipe.de> - - * linux/dev/glue/net.c (device_open): Set LINUX_IFF_ALLMULTI flag - on device and propagate. - -Index: b/linux/dev/glue/net.c -=================================================================== ---- a/linux/dev/glue/net.c -+++ b/linux/dev/glue/net.c -@@ -398,8 +398,14 @@ device_open (ipc_port_t reply_port, mach - } - else - { -- dev->flags |= LINUX_IFF_UP | LINUX_IFF_RUNNING; -+ /* IPv6 heavily relies on multicasting (especially router and -+ neighbor solicits and advertisements), so enable reception of -+ those multicast packets by setting `LINUX_IFF_ALLMULTI'. */ -+ dev->flags |= LINUX_IFF_UP | LINUX_IFF_RUNNING | LINUX_IFF_ALLMULTI; - skb_queue_head_init (&dev->buffs[0]); -+ -+ if (dev->set_multicast_list) -+ dev->set_multicast_list (dev); - } - if (IP_VALID (reply_port)) - ds_device_open_reply (reply_port, reply_port_type, diff --git a/debian/patches/50_ide_bm.patch b/debian/patches/50_ide_bm.patch deleted file mode 100644 index 982f28b..0000000 --- a/debian/patches/50_ide_bm.patch +++ /dev/null @@ -1,25 +0,0 @@ -Enable Bus Mastering if not enabled by BIOS (Bochs' BIOS doesn't). - -Index: b/linux/src/drivers/block/triton.c -=================================================================== ---- a/linux/src/drivers/block/triton.c -+++ b/linux/src/drivers/block/triton.c -@@ -632,7 +632,17 @@ hpt343_jump_in: - goto quit; - } - if ((pcicmd & 4) == 0) { -- printk("ide: BM-DMA feature is not enabled (BIOS)\n"); -+ printk("ide: BM-DMA feature is not enabled (BIOS), enabling\n"); -+ pcicmd |= 4; -+ pcibios_write_config_word(bus, fn, 0x04, pcicmd); -+ if ((rc = pcibios_read_config_word(bus, fn, 0x04, &pcicmd))) { -+ printk("ide: Couldn't read back PCI command\n"); -+ goto quit; -+ } -+ } -+ -+ if ((pcicmd & 4) == 0) { -+ printk("ide: BM-DMA feature couldn't be enabled\n"); - } else { - /* - * Get the bmiba base address diff --git a/debian/patches/60_bad_user_access_length_fix.patch b/debian/patches/60_bad_user_access_length_fix.patch deleted file mode 100644 index 7445018..0000000 --- a/debian/patches/60_bad_user_access_length_fix.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/linux/dev/include/asm-i386/segment.h 14 Jan 2004 22:28:30 -0000 1.2.2.1 -+++ b/linux/dev/include/asm-i386/segment.h 2 Jul 2008 11:27:19 -0000 -@@ -44,7 +44,7 @@ struct __segment_dummy { unsigned long a - #define __sd(x) ((struct __segment_dummy *) (x)) - #define __const_sd(x) ((const struct __segment_dummy *) (x)) - --static inline void __put_user(unsigned long x, void * y, int size) -+static inline void __attribute__((always_inline)) __put_user(unsigned long x, void * y, int size) - { - switch (size) { - case 1: -@@ -67,7 +67,7 @@ static inline void __put_user(unsigned l - } - } - --static inline unsigned long __get_user(const void * y, int size) -+static inline unsigned long __attribute__((always_inline)) __get_user(const void * y, int size) - { - unsigned long result; - diff --git a/debian/patches/61_vm_resident-zoned.patch b/debian/patches/61_vm_resident-zoned.patch deleted file mode 100644 index 94ccc03..0000000 --- a/debian/patches/61_vm_resident-zoned.patch +++ /dev/null @@ -1,1708 +0,0 @@ -2006-01-20 Gianluca Guida <glguida@gmail.com> - - * vm/pmap.h (pmap_is_dma, pmap_is_normal): New functions. - - * vm/page.h (VM_PAGE_DMA): New macro. - (vm_page_queue_free): Variable removed. - (vm_page_queue_free_dma, vm_page_queue_free_normal): New - variables. - (vm_page_physaddr_lookup, vm_page_grab_flags) - (vm_page_grab_contiguous_pages_flags): New functions. - (first_phys_addr, last_phys_addr): Declarations removed. - (phys_first_addr, phys_last_addr): New declarations. - - * vm/vm_resident.c (vm_page_free_bitmap) - (vm_page_free_bitmap_bitsz): New variables. - (vm_page_free_bitmap_set, vm_page_free_bitmap_unset) - (vm_page_free_bitmap_alloc, vm_page_array_init, vm_page_array_add) - (vm_page_physaddr_lookup): New functions. - (vm_page_bootstrap): Initialize vm_page_queue_free_normal and - vm_page_queue_free_dma. Call vm_page_free_bitmap_alloc. - (pmap_startup): Call vm_page_array_init. Add page to vm_page_array - for physaddress-to-vm_page_t resolution. Do not release page in - any particular order. - (vm_page_create): Add page to vm_page_array. - (vm_page_grab_flags, vm_page_grab_contiguous_pages_queue) - (vm_page_grab_contiguous_flags): New functions. - (vm_page_grab, vm_page_grab_contiguous_pages): Function rewritten. - (vm_page_release): Select proper free list based on page type (DMA - or non-DMA). Use Mach's queue handling funcitons not .next and - .prev pointers manually. Set vm_page_free_bitmap when freeing a - page. - - * i386/i386at/model_dep.c (use_all_mem): Always set to 1. - (init_alloc_aligned): Do not use any particular oder during - bootstrap allocation. - - * kern/startup.c: Include <vm/pmap.h>. - (setup_main): Calculate memory size using phys_last_addr and - phys_first_addr. - - * i386/intel/pmap.c (vm_page_normal_first, vm_page_normal_last) - (vm_page_dma_first, vm_page_dma_last): New variables. - (pmap_bootstrap): Set proper values to vm_page_normal_* and - vm_page_dma_* based on system's memory. - (pmap_is_dma, pmap_is_normal): New functions. - - * kern/startup.c: Removed /* XXX */ comments, since phys_last_addr - and phys_first_addr are exported by pmap.c now. - - * linux/dev/glue/kmem.c: Include <mach/error.h> - (MEM_CHUNK_SIZE, MEM_CHUNKS, NBPW): Macro removed. - (pages_free, memlist, num_page_collect, linux_mem_avail): - Variables removed. - (memlist_dma, memlist_nml): New variables. - (linux_kmem_init): No initialization needed anymore (all code - removed). - (coalesce_blocks): Coalesce separately DMA memory blocks and - non-DMA memory blocks. - (linux_kmalloc): Check for DMA in priority argument. Select proper - memlist to get blocks from. Pass dma information to - __get_free_pages. - (linux_kfree): Select proper memlist to free memory into. - (collect_kmalloc_pages): Function removed. - (collect_kmalloc_pages_dma, collect_kmalloc_pages_nml) - (linux_kmem_collect): New functions. - (__get_free_pages, free_pages): Functions rewritten. - - * linux/dev/init/main.c (CONTIG_ALLOC, NBPW): Macro removed. - (CONTIG_ALLOC_ORDER): New macro. - (linux_init): Use __getfreepages to allocate PCI initialization - memory and free_pages to free it. - (alloc_contig_mem, free_contig_mem): Functions removed. - - * vm/vm_pageout.c (vm_pageout_scan) [LINUX_DEV]: Call - linux_kmem_collect. - - -Index: i386/i386at/model_dep.c -=================================================================== ---- i386/i386at/model_dep.c.orig 2006-08-26 20:27:09.000000000 +0300 -+++ i386/i386at/model_dep.c 2006-08-26 20:27:35.000000000 +0300 -@@ -449,7 +449,6 @@ init_alloc_aligned(vm_size_t size, vm_of - vm_offset_t addr; - extern char start[], end[]; - int i; -- static int wrapped = 0; - - /* Memory regions to skip. */ - vm_offset_t cmdline_start_pa = boot_info.flags & MULTIBOOT_CMDLINE -@@ -469,25 +468,8 @@ init_alloc_aligned(vm_size_t size, vm_of - /* Page-align the start address. */ - avail_next = round_page(avail_next); - -- /* Start with memory above 16MB, reserving the low memory for later. */ -- if (!wrapped && phys_last_addr > 16 * 1024*1024) -- { -- if (avail_next < 16 * 1024*1024) -- avail_next = 16 * 1024*1024; -- else if (avail_next == phys_last_addr) -- { -- /* We have used all the memory above 16MB, so now start on -- the low memory. This will wind up at the end of the list -- of free pages, so it should not have been allocated to any -- other use in early initialization before the Linux driver -- glue initialization needs to allocate low memory. */ -- avail_next = 0x1000; -- wrapped = 1; -- } -- } -- - /* Check if we have reached the end of memory. */ -- if (avail_next == (wrapped ? 16 * 1024*1024 : phys_last_addr)) -+ if (avail_next == phys_last_addr) - return FALSE; - - /* Tentatively assign the current location to the caller. */ -Index: i386/intel/pmap.c -=================================================================== ---- i386/intel/pmap.c.orig 2006-08-26 20:27:01.000000000 +0300 -+++ i386/intel/pmap.c 2006-08-26 20:27:35.000000000 +0300 -@@ -584,6 +584,11 @@ vm_offset_t pmap_map_bd(virt, start, end - return(virt); - } - -+unsigned long vm_page_normal_first = 16*1024*1024; -+unsigned long vm_page_normal_last = 0; -+unsigned long vm_page_dma_first = 0; -+unsigned long vm_page_dma_last = 16*1024*1024 - 1; -+ - /* - * Bootstrap the system enough to run with virtual memory. - * Allocate the kernel page directory and page tables, -@@ -703,6 +708,25 @@ void pmap_bootstrap() - va += INTEL_PGBYTES; - } - } -+ -+ if (phys_last_addr <= 16*1024*1024) { -+ /* Set so to never get TRUE from isnormal(). */ -+ vm_page_normal_first = phys_last_addr + 1; -+ vm_page_normal_last = 0; -+ -+ /* Only DMA memory. */ -+ vm_page_dma_first = 0; -+ vm_page_dma_last = phys_last_addr; -+ } else { -+ vm_page_normal_first = 16*1024*1024; -+ vm_page_normal_last = phys_last_addr; -+ -+ vm_page_dma_first = 0; -+ vm_page_dma_last = 16*1024*1024 - 1; -+ } -+ -+ -+ - } - - #if i860 -@@ -2346,6 +2370,27 @@ boolean_t pmap_is_referenced(phys) - return (phys_attribute_test(phys, PHYS_REFERENCED)); - } - -+/* -+ * pmap_is_dma -+ * -+ * Return TRUE if PHYS is in the DMA zone range. -+ */ -+boolean_t pmap_is_dma (vm_offset_t phys) -+{ -+ return (phys < 16*1024*1024); -+} -+ -+/* -+ * pmap_is_normal: -+ * -+ * Return TRUE if PHYS is in the normal zone range. -+ */ -+boolean_t pmap_is_normal (vm_offset_t phys) -+{ -+ return (phys >= 16*1024*1024); -+} -+ -+ - #if NCPUS > 1 - /* - * TLB Coherence Code (TLB "shootdown" code) -Index: kern/startup.c -=================================================================== ---- kern/startup.c.orig 2006-08-26 20:27:01.000000000 +0300 -+++ kern/startup.c 2006-08-26 20:27:35.000000000 +0300 -@@ -78,9 +78,6 @@ extern void start_other_cpus(); - extern void action_thread(); - #endif /* NCPUS > 1 */ - --/* XX */ --extern vm_offset_t phys_first_addr, phys_last_addr; -- - /* - * Running in virtual memory, on the interrupt stack. - * Does not return. Dispatches initial thread. -@@ -120,7 +117,7 @@ void setup_main() - machine_init(); - - machine_info.max_cpus = NCPUS; -- machine_info.memory_size = phys_last_addr - phys_first_addr; /* XXX mem_size */ -+ machine_info.memory_size = phys_last_addr - phys_first_addr; - machine_info.avail_cpus = 0; - machine_info.major_version = KERNEL_MAJOR_VERSION; - machine_info.minor_version = KERNEL_MINOR_VERSION; -Index: linux/dev/glue/kmem.c -=================================================================== ---- linux/dev/glue/kmem.c.orig 2006-08-26 20:27:01.000000000 +0300 -+++ linux/dev/glue/kmem.c 2006-08-26 20:27:35.000000000 +0300 -@@ -25,6 +25,7 @@ - #include <sys/types.h> - - #include <mach/mach_types.h> -+#include <mach/error.h> - #include <mach/vm_param.h> - - #include <kern/assert.h> -@@ -40,22 +41,11 @@ - - #include <asm/system.h> - --extern void *alloc_contig_mem (unsigned, unsigned, unsigned, vm_page_t *); - extern int printf (const char *, ...); - --/* Amount of memory to reserve for Linux memory allocator. -- We reserve 64K chunks to stay within DMA limits. -- Increase MEM_CHUNKS if the kernel is running out of memory. */ --#define MEM_CHUNK_SIZE (64 * 1024) --#define MEM_CHUNKS 7 -- - /* Mininum amount that linux_kmalloc will allocate. */ - #define MIN_ALLOC 12 - --#ifndef NBPW --#define NBPW 32 --#endif -- - /* Memory block header. */ - struct blkhdr - { -@@ -70,62 +60,17 @@ struct pagehdr - struct pagehdr *next; /* next header in list */ - }; - --/* This structure describes a memory chunk. */ --struct chunkhdr --{ -- unsigned long start; /* start address */ -- unsigned long end; /* end address */ -- unsigned long bitmap; /* busy/free bitmap of pages */ --}; -- --/* Chunks from which pages are allocated. */ --static struct chunkhdr pages_free[MEM_CHUNKS]; -- - /* Memory list maintained by linux_kmalloc. */ --static struct pagehdr *memlist; -+static struct pagehdr *memlist_dma = NULL; -+static struct pagehdr *memlist_nml = NULL; - - /* Some statistics. */ - int num_block_coalesce = 0; --int num_page_collect = 0; --int linux_mem_avail; - - /* Initialize the Linux memory allocator. */ - void - linux_kmem_init () - { -- int i, j; -- vm_page_t p, pages; -- -- for (i = 0; i < MEM_CHUNKS; i++) -- { -- /* Allocate memory. */ -- pages_free[i].start = (unsigned long) alloc_contig_mem (MEM_CHUNK_SIZE, -- 16 * 1024 * 1024, -- 0xffff, &pages); -- -- assert (pages_free[i].start); -- assert ((pages_free[i].start & 0xffff) == 0); -- -- /* Sanity check: ensure pages are contiguous and within DMA limits. */ -- for (p = pages, j = 0; j < MEM_CHUNK_SIZE - PAGE_SIZE; j += PAGE_SIZE) -- { -- assert (p->phys_addr < 16 * 1024 * 1024); -- assert (p->phys_addr + PAGE_SIZE -- == ((vm_page_t) p->pageq.next)->phys_addr); -- -- p = (vm_page_t) p->pageq.next; -- } -- -- pages_free[i].end = pages_free[i].start + MEM_CHUNK_SIZE; -- -- /* Initialize free page bitmap. */ -- pages_free[i].bitmap = 0; -- j = MEM_CHUNK_SIZE >> PAGE_SHIFT; -- while (--j >= 0) -- pages_free[i].bitmap |= 1 << j; -- } -- -- linux_mem_avail = (MEM_CHUNKS * MEM_CHUNK_SIZE) >> PAGE_SHIFT; - } - - /* Return the number by which the page size should be -@@ -178,7 +123,40 @@ coalesce_blocks () - - num_block_coalesce++; - -- for (ph = memlist; ph; ph = ph->next) -+ /* Coalesce DMA memory. */ -+ for (ph = memlist_dma; ph; ph = ph->next) -+ { -+ bh = (struct blkhdr *) (ph + 1); -+ ebh = (struct blkhdr *) ((void *) ph + ph->size); -+ while (1) -+ { -+ /* Skip busy blocks. */ -+ while (bh < ebh && !bh->free) -+ bh = (struct blkhdr *) ((void *) (bh + 1) + bh->size); -+ if (bh == ebh) -+ break; -+ -+ /* Merge adjacent free blocks. */ -+ while (1) -+ { -+ bhp = (struct blkhdr *) ((void *) (bh + 1) + bh->size); -+ if (bhp == ebh) -+ { -+ bh = bhp; -+ break; -+ } -+ if (!bhp->free) -+ { -+ bh = (struct blkhdr *) ((void *) (bhp + 1) + bhp->size); -+ break; -+ } -+ bh->size += bhp->size + sizeof (struct blkhdr); -+ } -+ } -+ } -+ -+ /* Coalesce non-DMA memory. */ -+ for (ph = memlist_nml; ph; ph = ph->next) - { - bh = (struct blkhdr *) (ph + 1); - ebh = (struct blkhdr *) ((void *) ph + ph->size); -@@ -216,20 +194,26 @@ coalesce_blocks () - void * - linux_kmalloc (unsigned int size, int priority) - { -- int order, coalesced = 0; -+ int order, coalesced = 0, dma = 0; - unsigned flags; -- struct pagehdr *ph; -+ struct pagehdr *ph, **memlistp; - struct blkhdr *bh, *new_bh; - -+ if (priority & GFP_DMA) -+ { -+ memlistp = &memlist_dma; -+ dma = 1; -+ } -+ else -+ { -+ memlistp = &memlist_nml; -+ dma = 0; -+ } - if (size < MIN_ALLOC) - size = MIN_ALLOC; - else - size = (size + sizeof (int) - 1) & ~(sizeof (int) - 1); - -- assert (size <= (MEM_CHUNK_SIZE -- - sizeof (struct pagehdr) -- - sizeof (struct blkhdr))); -- - save_flags (flags); - cli (); - -@@ -238,7 +222,7 @@ again: - - /* Walk the page list and find the first free block with size - greater than or equal to the one required. */ -- for (ph = memlist; ph; ph = ph->next) -+ for (ph = *memlistp; ph; ph = ph->next) - { - bh = (struct blkhdr *) (ph + 1); - while (bh < (struct blkhdr *) ((void *) ph + ph->size)) -@@ -278,16 +262,26 @@ again: - order = get_page_order (size - + sizeof (struct pagehdr) - + sizeof (struct blkhdr)); -- ph = (struct pagehdr *) __get_free_pages (GFP_KERNEL, order, ~0UL); -+ ph = (struct pagehdr *) __get_free_pages (GFP_KERNEL, order, dma); - if (!ph) - { - restore_flags (flags); - return NULL; - } - -+ /* __get_free_pages may return DMA memory if non-DMA memory is not -+ free so we check back here for mem type. */ -+ if (pmap_is_dma ((unsigned long)ph)) -+ { -+ memlistp = &memlist_dma; -+ } -+ else -+ { -+ memlistp = &memlist_nml; -+ } - ph->size = PAGE_SIZE << order; -- ph->next = memlist; -- memlist = ph; -+ ph->next = *memlistp; -+ *memlistp = ph; - bh = (struct blkhdr *) (ph + 1); - bh->free = 0; - bh->size = ph->size - sizeof (struct pagehdr) - sizeof (struct blkhdr); -@@ -310,17 +304,28 @@ void - linux_kfree (void *p) - { - unsigned flags; -+ vm_offset_t addr; - struct blkhdr *bh; -- struct pagehdr *ph; -+ struct pagehdr *ph, **memlistp; - - assert (((int) p & (sizeof (int) - 1)) == 0); - -+ addr = (vm_offset_t) p; -+ -+ if (pmap_is_dma (addr)) -+ { -+ memlistp = &memlist_dma; -+ } -+ else -+ { -+ memlistp = &memlist_nml; -+ } - save_flags (flags); - cli (); - - check_page_list (__LINE__); - -- for (ph = memlist; ph; ph = ph->next) -+ for (ph = *memlistp; ph; ph = ph->next) - if (p >= (void *) ph && p < (void *) ph + ph->size) - break; - -@@ -339,10 +344,10 @@ linux_kfree (void *p) - restore_flags (flags); - } - --/* Free any pages that are not in use. -+/* Free any DMA page that are not in use. - Called by __get_free_pages when pages are running low. */ - static void --collect_kmalloc_pages () -+collect_kmalloc_pages_dma () - { - struct blkhdr *bh; - struct pagehdr *ph, **prev_ph; -@@ -353,8 +358,8 @@ collect_kmalloc_pages () - - check_page_list (__LINE__); - -- ph = memlist; -- prev_ph = &memlist; -+ ph = memlist_dma; -+ prev_ph = &memlist_dma; - while (ph) - { - bh = (struct blkhdr *) (ph + 1); -@@ -373,68 +378,91 @@ collect_kmalloc_pages () - - check_page_list (__LINE__); - } -- --/* Allocate ORDER + 1 number of physically contiguous pages. -- PRIORITY and DMA are not used in Mach. -- -- XXX: This needs to be dynamic. To do that we need to make -- the Mach page manipulation routines interrupt safe and they -- must provide machine dependant hooks. */ --unsigned long --__get_free_pages (int priority, unsigned long order, int dma) -+/* Free any non-DMA page that are not in use. -+ Called by __get_free_pages when pages are running low. */ -+static void -+collect_kmalloc_pages_nml () - { -- int i, pages_collected = 0; -- unsigned flags, bits, off, j, len; -+ struct blkhdr *bh; -+ struct pagehdr *ph, **prev_ph; - -- assert ((PAGE_SIZE << order) <= MEM_CHUNK_SIZE); -+ check_page_list (__LINE__); - -- /* Construct bitmap of contiguous pages. */ -- bits = 0; -- j = 0; -- len = 0; -- while (len < (PAGE_SIZE << order)) -- { -- bits |= 1 << j++; -- len += PAGE_SIZE; -- } -+ coalesce_blocks (); - -- save_flags (flags); -- cli (); --again: -+ check_page_list (__LINE__); - -- /* Search each chunk for the required number of contiguous pages. */ -- for (i = 0; i < MEM_CHUNKS; i++) -+ ph = memlist_nml; -+ prev_ph = &memlist_nml; -+ while (ph) - { -- off = 0; -- j = bits; -- while (MEM_CHUNK_SIZE - off >= (PAGE_SIZE << order)) -+ bh = (struct blkhdr *) (ph + 1); -+ if (bh->free && (void *) (bh + 1) + bh->size == (void *) ph + ph->size) - { -- if ((pages_free[i].bitmap & j) == j) -- { -- pages_free[i].bitmap &= ~j; -- linux_mem_avail -= order + 1; -- restore_flags (flags); -- return pages_free[i].start + off; -- } -- j <<= 1; -- off += PAGE_SIZE; -+ *prev_ph = ph->next; -+ free_pages ((unsigned long) ph, get_page_order (ph->size)); -+ ph = *prev_ph; -+ } -+ else -+ { -+ prev_ph = &ph->next; -+ ph = ph->next; - } - } - -- /* Allocation failed; collect kmalloc and buffer pages -- and try again. */ -- if (!pages_collected) -- { -- num_page_collect++; -- collect_kmalloc_pages (); -- pages_collected = 1; -- goto again; -- } -+ check_page_list (__LINE__); -+} - -- printf ("%s:%d: __get_free_pages: ran out of pages\n", __FILE__, __LINE__); -+/* Allocate ORDER + 1 number of physically contiguous pages. -+ PRIORITY and DMA are not used in Mach. */ -+unsigned long -+__get_free_pages (int priority, unsigned long order, int dma) -+{ -+ unsigned long pagenum; -+ unsigned vm_page_flags = 0; -+ unsigned long p; -+ -+ if (dma) -+ vm_page_flags |= VM_PAGE_DMA; -+ -+ pagenum = (1 << order); -+ -+ p = 0; -+ -+ if (pagenum > 1) -+ { -+ /* -+ * Contiguous grabbing is slow and may fail. -+ * We reserve it for special occasions. -+ */ -+ mach_error_t err; -+ vm_offset_t vmo; -+ -+ err = vm_page_grab_contiguous_pages_flags (pagenum, &vmo, FALSE, -+ vm_page_flags, 0); -+ p = (unsigned long) vmo; -+ -+ if (err) -+ return 0; -+ } -+ else -+ { -+ vm_page_t m; -+ -+ m = vm_page_grab_flags (FALSE, vm_page_flags); -+ if (!m) -+ return 0; -+ -+ p = m->phys_addr; -+ -+ if (m->tabled) -+ { -+ printf ("Error while getting page of order %ld\n", order); -+ return 0; -+ } -+ }; - -- restore_flags (flags); -- return 0; -+ return p; - } - - /* Free ORDER + 1 number of physically -@@ -442,36 +470,20 @@ again: - void - free_pages (unsigned long addr, unsigned long order) - { -- int i; -- unsigned flags, bits, len, j; -- -- assert ((addr & PAGE_MASK) == 0); -+ unsigned long i, pagenum; - -- for (i = 0; i < MEM_CHUNKS; i++) -- if (addr >= pages_free[i].start && addr < pages_free[i].end) -- break; -- -- assert (i < MEM_CHUNKS); -+ pagenum = 1 << order; - -- /* Contruct bitmap of contiguous pages. */ -- len = 0; -- j = 0; -- bits = 0; -- while (len < (PAGE_SIZE << order)) -+ for (i = 0; i < pagenum; i++) - { -- bits |= 1 << j++; -- len += PAGE_SIZE; -- } -- bits <<= (addr - pages_free[i].start) >> PAGE_SHIFT; -+ vm_page_t m; - -- save_flags (flags); -- cli (); -- -- assert ((pages_free[i].bitmap & bits) == 0); -+ m = vm_page_physaddr_lookup (addr + (i * PAGE_SIZE)); -+ if (m == VM_PAGE_NULL) -+ panic ("couldn't lookup page for address %lx", addr + (i * PAGE_SIZE)); - -- pages_free[i].bitmap |= bits; -- linux_mem_avail += order + 1; -- restore_flags (flags); -+ vm_page_free (m); -+ } - } - - -@@ -579,3 +591,9 @@ vremap (unsigned long offset, unsigned l - vmalloc_list_insert (addr, round_page (size)); - return (void *) addr; - } -+ -+void linux_kmem_collect (void) -+{ -+ collect_kmalloc_pages_nml (); -+ collect_kmalloc_pages_dma (); -+} -Index: linux/dev/init/main.c -=================================================================== ---- linux/dev/init/main.c.orig 2006-08-26 20:27:01.000000000 +0300 -+++ linux/dev/init/main.c 2006-08-26 20:27:35.000000000 +0300 -@@ -82,9 +82,7 @@ struct drive_info_struct - static void calibrate_delay (void); - - extern int hz; --extern vm_offset_t phys_last_addr; - --extern void *alloc_contig_mem (unsigned, unsigned, unsigned, vm_page_t *); - extern void free_contig_mem (vm_page_t); - extern void init_IRQ (void); - extern void restore_IRQ (void); -@@ -106,10 +104,8 @@ extern void linux_sched_init (void); - extern void pcmcia_init (void); - - --/* -- * Amount of contiguous memory to allocate for initialization. -- */ --#define CONTIG_ALLOC (512 * 1024) -+/* Amount of contiguous memory to allocate for initialization. */ -+#define CONTIG_ALLOC_ORDER (7) /* 512kb. */ - - /* - * Initialize Linux drivers. -@@ -118,7 +114,7 @@ void - linux_init (void) - { - int addr; -- unsigned memory_start, memory_end; -+ unsigned long memory_start, memory_end; - vm_page_t pages; - - /* -@@ -143,40 +139,34 @@ linux_init (void) - memcpy ((char *) &drive_info + 16, - (void *) ((addr & 0xffff) + ((addr >> 12) & 0xffff0)), 16); - -- /* -- * Initialize Linux memory allocator. -- */ -+ /* Initialize Linux memory allocator. */ - linux_kmem_init (); - -- /* -- * Allocate contiguous memory below 16 MB. -- */ -- memory_start = (unsigned long) alloc_contig_mem (CONTIG_ALLOC, -- 16 * 1024 * 1024, -- 0, &pages); -- if (memory_start == 0) -- panic ("linux_init: alloc_contig_mem failed"); -- memory_end = memory_start + CONTIG_ALLOC; -+ /* Allocate contiguous memory below 16 MB. */ -+ memory_start = __get_free_pages (GFP_ATOMIC, CONTIG_ALLOC_ORDER, 1); -+ if (!memory_start) -+ panic ("linux_init: alloc PCI memory failed"); -+ memory_end = memory_start + ((1 << CONTIG_ALLOC_ORDER) * PAGE_SIZE); - -- /* -- * Initialize PCI bus. -- */ -+ /* Initialize PCI bus. */ - memory_start = pci_init (memory_start, memory_end); - - if (memory_start > memory_end) - panic ("linux_init: ran out memory"); - -- /* -- * Free unused memory. -- */ -- while (pages && pages->phys_addr < round_page (memory_start)) -- pages = (vm_page_t) pages->pageq.next; -- if (pages) -- free_contig_mem (pages); -+ /* Free unused memory. */ -+ { -+ unsigned long memaddr; -+ -+ for (memaddr = round_page (memory_start); -+ memaddr < memory_end; -+ memaddr += PAGE_SIZE) -+ { -+ free_pages (memaddr, 0); -+ } -+ } - -- /* -- * Initialize devices. -- */ -+ /* Initialize devices. */ - #ifdef CONFIG_INET - linux_net_emulation_init (); - #endif -@@ -196,148 +186,6 @@ linux_init (void) - linux_auto_config = 0; - } - --#ifndef NBPW --#define NBPW 32 --#endif -- --/* -- * Allocate contiguous memory with the given constraints. -- * This routine is horribly inefficient but it is presently -- * only used during initialization so it's not that bad. -- */ --void * --alloc_contig_mem (unsigned size, unsigned limit, -- unsigned mask, vm_page_t * pages) --{ -- int i, j, bits_len; -- unsigned *bits, len; -- void *m; -- vm_page_t p, page_list, tail, prev; -- vm_offset_t addr, max_addr; -- -- if (size == 0) -- return (NULL); -- size = round_page (size); -- if ((size >> PAGE_SHIFT) > vm_page_free_count) -- return (NULL); -- -- /* Allocate bit array. */ -- max_addr = phys_last_addr; -- if (max_addr > limit) -- max_addr = limit; -- bits_len = ((((max_addr >> PAGE_SHIFT) + NBPW - 1) / NBPW) -- * sizeof (unsigned)); -- bits = (unsigned *) kalloc (bits_len); -- if (!bits) -- return (NULL); -- memset (bits, 0, bits_len); -- -- /* -- * Walk the page free list and set a bit for every usable page. -- */ -- simple_lock (&vm_page_queue_free_lock); -- p = vm_page_queue_free; -- while (p) -- { -- if (p->phys_addr < limit) -- (bits[(p->phys_addr >> PAGE_SHIFT) / NBPW] -- |= 1 << ((p->phys_addr >> PAGE_SHIFT) % NBPW)); -- p = (vm_page_t) p->pageq.next; -- } -- -- /* -- * Scan bit array for contiguous pages. -- */ -- len = 0; -- m = NULL; -- for (i = 0; len < size && i < bits_len / sizeof (unsigned); i++) -- for (j = 0; len < size && j < NBPW; j++) -- if (!(bits[i] & (1 << j))) -- { -- len = 0; -- m = NULL; -- } -- else -- { -- if (len == 0) -- { -- addr = ((vm_offset_t) (i * NBPW + j) -- << PAGE_SHIFT); -- if ((addr & mask) == 0) -- { -- len += PAGE_SIZE; -- m = (void *) addr; -- } -- } -- else -- len += PAGE_SIZE; -- } -- -- if (len != size) -- { -- simple_unlock (&vm_page_queue_free_lock); -- kfree ((vm_offset_t) bits, bits_len); -- return (NULL); -- } -- -- /* -- * Remove pages from free list -- * and construct list to return to caller. -- */ -- page_list = NULL; -- for (len = 0; len < size; len += PAGE_SIZE, addr += PAGE_SIZE) -- { -- prev = NULL; -- for (p = vm_page_queue_free; p; p = (vm_page_t) p->pageq.next) -- { -- if (p->phys_addr == addr) -- break; -- prev = p; -- } -- if (!p) -- panic ("alloc_contig_mem: page not on free list"); -- if (prev) -- prev->pageq.next = p->pageq.next; -- else -- vm_page_queue_free = (vm_page_t) p->pageq.next; -- p->free = FALSE; -- p->pageq.next = NULL; -- if (!page_list) -- page_list = tail = p; -- else -- { -- tail->pageq.next = (queue_entry_t) p; -- tail = p; -- } -- vm_page_free_count--; -- } -- -- simple_unlock (&vm_page_queue_free_lock); -- kfree ((vm_offset_t) bits, bits_len); -- if (pages) -- *pages = page_list; -- return (m); --} -- --/* -- * Free memory allocated by alloc_contig_mem. -- */ --void --free_contig_mem (vm_page_t pages) --{ -- int i; -- vm_page_t p; -- -- for (p = pages, i = 0; p->pageq.next; p = (vm_page_t) p->pageq.next, i++) -- p->free = TRUE; -- p->free = TRUE; -- simple_lock (&vm_page_queue_free_lock); -- vm_page_free_count += i + 1; -- p->pageq.next = (queue_entry_t) vm_page_queue_free; -- vm_page_queue_free = pages; -- simple_unlock (&vm_page_queue_free_lock); --} -- - /* This is the number of bits of precision for the loops_per_second. Each - * bit takes on average 1.5/HZ seconds. This (like the original) is a little - * better than 1% -Index: vm/pmap.h -=================================================================== ---- vm/pmap.h.orig 2006-08-26 20:27:01.000000000 +0300 -+++ vm/pmap.h 2006-08-26 20:27:35.000000000 +0300 -@@ -174,6 +174,15 @@ void pmap_clear_modify(vm_offset_t pa); - /* Return modify bit */ - boolean_t pmap_is_modified(vm_offset_t pa); - -+/* -+ * Page Zones routines -+ */ -+ -+/* Physical address is in DMA capable zone. */ -+boolean_t pmap_is_dma (vm_offset_t pa); -+ -+/* Physical address is in non-DMA capable zone. */ -+boolean_t pmap_is_normal (vm_offset_t pa); - - /* - * Statistics routines -Index: vm/vm_page.h -=================================================================== ---- vm/vm_page.h.orig 2006-08-26 20:27:01.000000000 +0300 -+++ vm/vm_page.h 2006-08-26 20:27:35.000000000 +0300 -@@ -152,22 +152,26 @@ typedef struct vm_page *vm_page_t; - * ordered, in LRU-like fashion. - */ - -+#define VM_PAGE_DMA 0x1 -+ -+extern -+queue_head_t vm_page_queue_free_normal; /* normal memory free queue */ - extern --vm_page_t vm_page_queue_free; /* memory free queue */ -+queue_head_t vm_page_queue_free_dma; /* DMA-capable memory free queue */ - extern --vm_page_t vm_page_queue_fictitious; /* fictitious free queue */ -+vm_page_t vm_page_queue_fictitious; /* fictitious free queue */ - extern --queue_head_t vm_page_queue_active; /* active memory queue */ -+queue_head_t vm_page_queue_active; /* active memory queue */ - extern - queue_head_t vm_page_queue_inactive; /* inactive memory queue */ - - extern --vm_offset_t first_phys_addr; /* physical address for first_page */ -+vm_offset_t phys_first_addr;/* physical address for first_page */ - extern --vm_offset_t last_phys_addr; /* physical address for last_page */ -+vm_offset_t phys_last_addr; /* physical address for last_page */ - - extern --int vm_page_free_count; /* How many pages are free? */ -+int vm_page_free_count; /* How many pages are free? */ - extern - int vm_page_fictitious_count;/* How many fictitious pages are free? */ - extern -@@ -220,11 +224,20 @@ extern void vm_page_create( - extern vm_page_t vm_page_lookup( - vm_object_t object, - vm_offset_t offset); -+extern vm_page_t vm_page_physaddr_lookup (vm_offset_t); - extern vm_page_t vm_page_grab_fictitious(void); - extern void vm_page_release_fictitious(vm_page_t); - extern boolean_t vm_page_convert(vm_page_t, boolean_t); - extern void vm_page_more_fictitious(void); - extern vm_page_t vm_page_grab(boolean_t); -+extern vm_page_t vm_page_grab_flags(boolean_t, unsigned); -+extern kern_return_t vm_page_grab_contiguous_pages_flags( -+ int npages, -+ vm_offset_t *phys_address, -+ boolean_t external, -+ unsigned flags, -+ unsigned long align); -+ - extern void vm_page_release(vm_page_t, boolean_t); - extern void vm_page_wait(void (*)(void)); - extern vm_page_t vm_page_alloc( -Index: vm/vm_pageout.c -=================================================================== ---- vm/vm_pageout.c.orig 2006-08-26 20:27:01.000000000 +0300 -+++ vm/vm_pageout.c 2006-08-26 20:27:35.000000000 +0300 -@@ -550,6 +550,9 @@ void vm_pageout_scan() - */ - - Restart: -+#ifdef LINUX_DEV -+ linux_kmem_collect(); -+#endif - stack_collect(); - net_kmsg_collect(); - consider_task_collect(); -Index: vm/vm_resident.c -=================================================================== ---- vm/vm_resident.c.orig 2006-08-26 20:27:01.000000000 +0300 -+++ vm/vm_resident.c 2006-08-26 20:27:35.000000000 +0300 -@@ -56,6 +56,9 @@ - #include <vm/vm_user.h> - #endif - -+extern unsigned long vm_page_normal_first, vm_page_normal_last; -+extern unsigned long vm_page_dma_first, vm_page_dma_last; -+ - /* in zalloc.c XXX */ - extern vm_offset_t zdata; - extern vm_size_t zdata_size; -@@ -105,14 +108,19 @@ struct vm_page vm_page_template; - * Resident pages that represent real memory - * are allocated from a free list. - */ --vm_page_t vm_page_queue_free; -+queue_head_t vm_page_queue_free_normal; -+queue_head_t vm_page_queue_free_dma; - vm_page_t vm_page_queue_fictitious; - decl_simple_lock_data(,vm_page_queue_free_lock) -+ - unsigned int vm_page_free_wanted; - int vm_page_free_count; - int vm_page_fictitious_count; - int vm_page_external_count; - -+natural_t *vm_page_free_bitmap; -+unsigned long vm_page_free_bitmap_bitsz; -+ - unsigned int vm_page_free_count_minimum; /* debugging */ - - /* -@@ -174,6 +182,102 @@ boolean_t vm_page_deactivate_behind = TR - boolean_t vm_page_deactivate_hint = TRUE; - - /* -+ * vm_page_free_bitmap_set and vm_page_free_bitmap_unset: -+ * FIXME: Free pages bitmap is SLOW! Make a decent multizone O(1) -+ * page allocator. -+ * -+ * Used to mark a page as free. -+ */ -+ -+#ifndef NBBY -+#define NBBY 8 /* size in bits of sizeof()`s unity */ -+#endif -+#define NBPEL (sizeof(natural_t)*NBBY) -+ -+void vm_page_free_bitmap_set(natural_t pageno) -+{ -+ register int word_index, bit_index; -+ -+ word_index = pageno / NBPEL; -+ bit_index = pageno - (word_index * NBPEL); -+ -+ vm_page_free_bitmap[word_index] |= 1 << bit_index; -+} -+void vm_page_free_bitmap_unset(natural_t pageno) -+{ -+ register int word_index, bit_index; -+ -+ word_index = pageno / NBPEL; -+ bit_index = pageno - (word_index * NBPEL); -+ -+ vm_page_free_bitmap[word_index] &= ~(1 << bit_index); -+} -+ -+/* -+ * vm_page_free_bitmap_alloc: -+ * -+ * Alloc space for bitmap at initializiation time. -+ * FIXME: Free pages bitmap is SLOW! Make a decent multizone O(1) -+ * page allocator. -+ */ -+ -+void vm_page_free_bitmap_alloc(void) -+{ -+ register unsigned long size, bitsz; -+ unsigned long vm_page_big_pagenum; -+ int i; -+ -+ vm_page_big_pagenum = atop (phys_last_addr); -+ -+ bitsz = (vm_page_big_pagenum + NBPEL - 1) -+ & ~(NBPEL - 1); /* in bits */ -+ -+ size = bitsz / NBBY; /* in bytes */ -+ -+ vm_page_free_bitmap = (natural_t *) pmap_steal_memory (size); -+ bzero(vm_page_free_bitmap, size); -+ -+ vm_page_free_bitmap_bitsz = bitsz; -+} -+ -+ -+/* Fast phys_addr to vm_page_t lookup. */ -+ -+static vm_page_t *vm_page_array; -+static unsigned vm_page_array_size; -+ -+static void -+vm_page_array_init () -+{ -+ int i; -+ -+ vm_page_array_size = (phys_last_addr - phys_first_addr) >> PAGE_SHIFT; -+ vm_page_array = (vm_page_t *) pmap_steal_memory (sizeof(vm_page_t) -+ * (vm_page_array_size)); -+ -+ for (i = 0; i < vm_page_array_size; i++) -+ vm_page_array[i] = VM_PAGE_NULL; -+ -+} -+ -+static void -+vm_page_array_add (vm_offset_t phys_addr, vm_page_t pg) -+{ -+ assert (phys_addr < phys_last_addr && phys_addr >= phys_first_addr); -+ -+ vm_page_array [(phys_addr - phys_first_addr) >> PAGE_SHIFT] = pg; -+} -+ -+vm_page_t -+vm_page_physaddr_lookup (vm_offset_t phys_addr) -+{ -+ assert (phys_addr < phys_last_addr && phys_addr >= phys_first_addr); -+ -+ return vm_page_array [(phys_addr - phys_first_addr) >> PAGE_SHIFT]; -+} -+ -+ -+/* - * vm_page_bootstrap: - * - * Initializes the resident memory module. -@@ -229,7 +333,8 @@ void vm_page_bootstrap( - simple_lock_init(&vm_page_queue_free_lock); - simple_lock_init(&vm_page_queue_lock); - -- vm_page_queue_free = VM_PAGE_NULL; -+ queue_init (&vm_page_queue_free_normal); -+ queue_init (&vm_page_queue_free_dma); - vm_page_queue_fictitious = VM_PAGE_NULL; - queue_init(&vm_page_queue_active); - queue_init(&vm_page_queue_inactive); -@@ -279,6 +384,8 @@ void vm_page_bootstrap( - simple_lock_init(&bucket->lock); - } - -+ vm_page_free_bitmap_alloc(); -+ - /* - * Machine-dependent code allocates the resident page table. - * It uses vm_page_init to initialize the page frames. -@@ -294,7 +401,6 @@ void vm_page_bootstrap( - *startp = virtual_space_start; - *endp = virtual_space_end; - -- /* printf("vm_page_bootstrap: %d free pages\n", vm_page_free_count);*/ - vm_page_free_count_minimum = vm_page_free_count; - } - -@@ -380,6 +486,8 @@ void pmap_startup( - - pages = (vm_page_t) pmap_steal_memory(npages * sizeof *pages); - -+ vm_page_array_init (); -+ - /* - * Initialize the page frames. - */ -@@ -389,21 +497,12 @@ void pmap_startup( - break; - - vm_page_init(&pages[i], paddr); -+ vm_page_array_add (paddr, &pages[i]); -+ vm_page_release(&pages[i], FALSE); - pages_initialized++; - } - - /* -- * Release pages in reverse order so that physical pages -- * initially get allocated in ascending addresses. This keeps -- * the devices (which must address physical memory) happy if -- * they require several consecutive pages. -- */ -- -- for (i = pages_initialized; i > 0; i--) { -- vm_page_release(&pages[i - 1], FALSE); -- } -- -- /* - * We have to re-align virtual_space_start, - * because pmap_steal_memory has been using it. - */ -@@ -421,7 +520,7 @@ void pmap_startup( - * Second initialization pass, to be done after - * the basic VM system is ready. - */ --void vm_page_module_init(void) -+void vm_page_module_init(void) - { - vm_page_zone = zinit((vm_size_t) sizeof(struct vm_page), - VM_MAX_KERNEL_ADDRESS - VM_MIN_KERNEL_ADDRESS, -@@ -453,6 +552,7 @@ void vm_page_create( - panic("vm_page_create"); - - vm_page_init(m, paddr); -+ vm_page_array_add (paddr, m); - vm_page_release(m, FALSE); - } - } -@@ -840,16 +940,16 @@ boolean_t vm_page_convert( - } - - /* -- * vm_page_grab: -+ * vm_page_grab_flags: - * -- * Remove a page from the free list. -+ * Remove a page specifying the memory zone to get the page from. - * Returns VM_PAGE_NULL if the free list is too small. - */ -- --vm_page_t vm_page_grab( -- boolean_t external) -+vm_page_t vm_page_grab_flags( -+ boolean_t external, -+ unsigned flags) - { -- register vm_page_t mem; -+ register vm_page_t mem = VM_PAGE_NULL; - - simple_lock(&vm_page_queue_free_lock); - -@@ -867,17 +967,70 @@ vm_page_t vm_page_grab( - return VM_PAGE_NULL; - } - -- if (vm_page_queue_free == VM_PAGE_NULL) -+ /* -+ * If we put no flag, we request any page, so we search in -+ * the normal zone before. -+ */ -+ -+ if (!(flags & VM_PAGE_DMA) -+ && !(queue_empty(&vm_page_queue_free_normal))) -+ { -+ -+ if (--vm_page_free_count < vm_page_free_count_minimum) -+ vm_page_free_count_minimum = vm_page_free_count; -+ -+ if (external) -+ vm_page_external_count++; -+ -+ queue_remove_first (&vm_page_queue_free_normal, -+ mem, vm_page_t, pageq); -+ -+ mem->free = FALSE; -+ mem->extcounted = mem->external = external; -+ mem->pageq.next = 0; -+ mem->pageq.prev = 0; -+ -+ vm_page_free_bitmap_unset (atop (mem->phys_addr)); -+ } -+ -+ if (!mem) -+ { -+ -+ /* -+ * It is not necessarily a bug if we ask for a DMA page and we can't -+ * obtain it, despite of vm_page_free_count, since free pages can be -+ * in the normal zone. -+ */ -+ if (queue_empty(&vm_page_queue_free_dma)) -+ { -+ if (!(flags & VM_PAGE_DMA)) - panic("vm_page_grab"); -+ else -+ { -+ printf ("vm_page_grab: no dma anymore"); -+ simple_unlock(&vm_page_queue_free_lock); -+ return VM_PAGE_NULL; -+ } -+ } -+ -+ -+ if (--vm_page_free_count < vm_page_free_count_minimum) -+ vm_page_free_count_minimum = vm_page_free_count; -+ -+ if (external) -+ vm_page_external_count++; -+ -+ queue_remove_first (&vm_page_queue_free_dma, -+ mem, vm_page_t, pageq); -+ -+ mem->free = FALSE; -+ mem->extcounted = mem->external = external; -+ mem->pageq.next = 0; -+ mem->pageq.prev = 0; -+ -+ vm_page_free_bitmap_unset (atop (mem->phys_addr)); -+ } - -- if (--vm_page_free_count < vm_page_free_count_minimum) -- vm_page_free_count_minimum = vm_page_free_count; -- if (external) -- vm_page_external_count++; -- mem = vm_page_queue_free; -- vm_page_queue_free = (vm_page_t) mem->pageq.next; -- mem->free = FALSE; -- mem->extcounted = mem->external = external; - simple_unlock(&vm_page_queue_free_lock); - - /* -@@ -897,6 +1050,26 @@ vm_page_t vm_page_grab( - thread_wakeup((event_t) &vm_page_free_wanted); - - return mem; -+ -+} -+ -+ -+/* -+ * vm_page_grab: -+ * -+ * Remove a page from the free list. -+ * Returns VM_PAGE_NULL if the free list is too small. -+ */ -+ -+vm_page_t vm_page_grab( -+ boolean_t external) -+{ -+ register vm_page_t mem; -+ -+ /* Get any free page, no matter what zone. */ -+ mem = vm_page_grab_flags (external, 0); -+ -+ return mem; - } - - vm_offset_t vm_page_grab_phys_addr() -@@ -909,13 +1082,12 @@ vm_offset_t vm_page_grab_phys_addr() - } - - /* -- * vm_page_grab_contiguous_pages: -+ * vm_page_grab_contiguous_pages_queue: - * -- * Take N pages off the free list, the pages should -- * cover a contiguous range of physical addresses. -- * [Used by device drivers to cope with DMA limitations] -+ * Take N pages off the free list FREEQUEUE, the pages -+ * should cover a contiguous range of physical addresses. - * -- * Returns the page descriptors in ascending order, or -+ * Returns the first page descriptor, or - * Returns KERN_RESOURCE_SHORTAGE if it could not. - */ - -@@ -924,44 +1096,32 @@ vm_offset_t vm_page_grab_phys_addr() - vm_size_t vm_page_big_pagenum = 0; /* Set this before call! */ - - kern_return_t --vm_page_grab_contiguous_pages( -- int npages, -- vm_page_t pages[], -- natural_t *bits, -- boolean_t external) -+vm_page_grab_contiguous_pages_queue( -+ int npages, -+ vm_offset_t *phys_addr, -+ boolean_t external, -+ queue_t freequeue, -+ unsigned long minbitidx, -+ unsigned long maxbitidx, -+ unsigned long align) -+ - { - register int first_set; - int size, alloc_size; - kern_return_t ret; - vm_page_t mem, prevmem; - --#ifndef NBBY --#define NBBY 8 /* size in bits of sizeof()`s unity */ --#endif -+ if (!align) -+ align = 1; - --#define NBPEL (sizeof(natural_t)*NBBY) -+ if (minbitidx >= vm_page_free_bitmap_bitsz) -+ panic ("minbitidx too high."); - -- size = (vm_page_big_pagenum + NBPEL - 1) -- & ~(NBPEL - 1); /* in bits */ -- -- size = size / NBBY; /* in bytes */ -- -- /* -- * If we are called before the VM system is fully functional -- * the invoker must provide us with the work space. [one bit -- * per page starting at phys 0 and up to vm_page_big_pagenum] -- */ -- if (bits == 0) { -- alloc_size = round_page(size); -- if (kmem_alloc_wired(kernel_map, -- (vm_offset_t *)&bits, -- alloc_size) -- != KERN_SUCCESS) -- return KERN_RESOURCE_SHORTAGE; -- } else -- alloc_size = 0; -- -- bzero(bits, size); -+ if (maxbitidx > vm_page_free_bitmap_bitsz) { -+ printf ("%s: maxbitidx exceeds bitmap size (%x > %x).\n", -+ __FUNCTION__, maxbitidx, vm_page_free_bitmap_bitsz); -+ maxbitidx = vm_page_free_bitmap_bitsz; -+ } - - /* - * A very large granularity call, its rare so that is ok -@@ -972,32 +1132,16 @@ vm_page_grab_contiguous_pages( - * Do not dip into the reserved pool. - */ - -- if ((vm_page_free_count < vm_page_free_reserved) -- || (vm_page_external_count >= vm_page_external_limit)) { -+ if (((vm_page_free_count < vm_page_free_reserved) -+ || (external -+ && (vm_page_external_count > vm_page_external_limit))) -+ && !current_thread()->vm_privilege) { - simple_unlock(&vm_page_queue_free_lock); - return KERN_RESOURCE_SHORTAGE; - } - - /* -- * First pass through, build a big bit-array of -- * the pages that are free. It is not going to -- * be too large anyways, in 4k we can fit info -- * for 32k pages. -- */ -- mem = vm_page_queue_free; -- while (mem) { -- register int word_index, bit_index; -- -- bit_index = (mem->phys_addr >> PAGE_SHIFT); -- word_index = bit_index / NBPEL; -- bit_index = bit_index - (word_index * NBPEL); -- bits[word_index] |= 1 << bit_index; -- -- mem = (vm_page_t) mem->pageq.next; -- } -- -- /* -- * Second loop. Scan the bit array for NPAGES -+ * First loop. Scan the bit array for NPAGES - * contiguous bits. That gives us, if any, - * the range of pages we will be grabbing off - * the free list. -@@ -1007,9 +1151,13 @@ vm_page_grab_contiguous_pages( - - first_set = 0; - -- for (i = 0; i < size; i += sizeof(natural_t)) { -+ for (i = (minbitidx/NBBY); -+ i < (maxbitidx/NBBY); -+ i += sizeof(natural_t)) -+ { - -- register natural_t v = bits[i / sizeof(natural_t)]; -+ register natural_t v = -+ vm_page_free_bitmap[i / sizeof(natural_t)]; - register int bitpos; - - /* -@@ -1042,14 +1190,20 @@ count_ones: - */ - bits_so_far = 0; - count_zeroes: -- while ((bitpos < NBPEL) && ((v & 1) == 0)) { -+ while ((bitpos < NBPEL) && -+ (((v & 1) == 0) -+ || ((bitpos + i*NBBY) % align))) -+ { - bitpos++; - v >>= 1; - } -- if (v & 1) { -+ -+ if ((v & 1) -+ && (!((bitpos + i*NBBY) % align))) -+ { - first_set = (i * NBBY) + bitpos; - goto count_ones; -- } -+ } - } - /* - * No luck -@@ -1063,7 +1217,6 @@ count_zeroes: - */ - not_found_em: - simple_unlock(&vm_page_queue_free_lock); -- - ret = KERN_RESOURCE_SHORTAGE; - goto out; - -@@ -1079,43 +1232,33 @@ found_em: - vm_page_free_count_minimum = vm_page_free_count; - if (external) - vm_page_external_count += npages; -+ - { -- register vm_offset_t first_phys, last_phys; -- -- /* cache values for compare */ -- first_phys = first_set << PAGE_SHIFT; -- last_phys = first_phys + (npages << PAGE_SHIFT);/* not included */ -- -- /* running pointers */ -- mem = vm_page_queue_free; -- prevmem = VM_PAGE_NULL; -- -- while (mem) { -- -- register vm_offset_t addr; -- -- addr = mem->phys_addr; -- -- if ((addr >= first_phys) && -- (addr < last_phys)) { -- if (prevmem) -- prevmem->pageq.next = mem->pageq.next; -- pages[(addr - first_phys) >> PAGE_SHIFT] = mem; -- mem->free = FALSE; -- mem->extcounted = mem->external = external; -- /* -- * Got them all ? -- */ -- if (--npages == 0) break; -- } else -- prevmem = mem; -- -- mem = (vm_page_t) mem->pageq.next; -+ vm_offset_t first_phys; -+ vm_page_t pg; -+ int i; -+ -+ first_phys = first_set << PAGE_SHIFT; -+ -+ if (phys_addr) -+ *phys_addr = first_phys; -+ -+ for (i = 0; i < npages; i++) -+ { -+ pg = vm_page_physaddr_lookup (first_phys + (i << PAGE_SHIFT)); -+ -+ assert (pg != VM_PAGE_NULL); -+ -+ queue_remove (freequeue, pg, vm_page_t, pageq); -+ -+ pg->free = FALSE; -+ pg->extcounted = pg->external = external; -+ vm_page_free_bitmap_unset (atop (pg->phys_addr)); - } - } -- -+ - simple_unlock(&vm_page_queue_free_lock); -- -+ - /* - * Decide if we should poke the pageout daemon. - * We do this if the free count is less than the low -@@ -1134,8 +1277,74 @@ found_em: - - ret = KERN_SUCCESS; - out: -- if (alloc_size) -- kmem_free(kernel_map, (vm_offset_t) bits, alloc_size); -+ -+ return ret; -+} -+ -+/* -+ * vm_page_grab_contiguous_pages_flags: -+ * -+ * Take N pages from specified zone, the pages should -+ * cover a contiguous range of physical addresses. -+ * [Used by device drivers to cope with DMA limitations] -+ * -+ * Returns the page descriptors in ascending order, or -+ * Returns KERN_RESOURCE_SHORTAGE if it could not. -+ */ -+ -+kern_return_t -+vm_page_grab_contiguous_pages_flags( -+ int npages, -+ vm_offset_t *phys_addr, -+ boolean_t external, -+ unsigned flags, -+ unsigned long align) -+{ -+ kern_return_t ret; -+ -+ if (!(flags & VM_PAGE_DMA)) -+ { -+ ret = vm_page_grab_contiguous_pages_queue ( -+ npages, phys_addr, external, -+ &vm_page_queue_free_normal, -+ atop(vm_page_normal_first), -+ atop(vm_page_normal_last), -+ align); -+ -+ if (ret == KERN_SUCCESS) -+ return ret; -+ }; -+ -+ ret = vm_page_grab_contiguous_pages_queue ( -+ npages, phys_addr, external, -+ &vm_page_queue_free_dma, -+ atop(vm_page_dma_first), -+ atop(vm_page_dma_last), -+ align); -+ -+ return ret; -+} -+ -+/* -+ * vm_page_grab_contiguous_pages: -+ * -+ * Take N pages off the free list, the pages should -+ * cover a contiguous range of physical addresses. -+ * -+ * Returns the page descriptors in ascending order, or -+ * Returns KERN_RESOURCE_SHORTAGE if it could not. -+ * [Used by device drivers to cope with DMA limitations] -+ */ -+kern_return_t -+vm_page_grab_contiguous_pages( -+ int npages, -+ queue_t pages, -+ vm_offset_t *phys_addr, -+ boolean_t e) -+{ -+ kern_return_t ret; -+ -+ ret = vm_page_grab_contiguous_pages_flags (npages, phys_addr, e, 0, 0); - - return ret; - } -@@ -1150,16 +1359,36 @@ void vm_page_release( - register vm_page_t mem, - boolean_t external) - { -+ queue_t freequeue; -+ -+ if (pmap_is_dma (mem->phys_addr)) -+ freequeue = &vm_page_queue_free_dma; -+ else if (pmap_is_normal (mem->phys_addr)) -+ freequeue = &vm_page_queue_free_normal; -+ else { -+ /* XXX - Don't put a panic here. it's just for now. */ -+ panic ("vm_page_release (unknown page zone)"); -+ } -+ -+ /* UGLY: We skip the page 0, since it may cause problems -+ when returned to drivers. */ -+ if (mem->phys_addr == 0) -+ return; -+ - simple_lock(&vm_page_queue_free_lock); -+ - if (mem->free) - panic("vm_page_release"); - mem->free = TRUE; -- mem->pageq.next = (queue_entry_t) vm_page_queue_free; -- vm_page_queue_free = mem; -+ -+ queue_enter (freequeue, mem, vm_page_t, pageq); -+ - vm_page_free_count++; - if (external) - vm_page_external_count--; - -+ vm_page_free_bitmap_set (atop (mem->phys_addr)); -+ - /* - * Check if we should wake up someone waiting for page. - * But don't bother waking them unless they can allocate. diff --git a/debian/patches/70_cld.patch b/debian/patches/70_cld.patch deleted file mode 100644 index 69fdf3c..0000000 --- a/debian/patches/70_cld.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: b/i386/i386/locore.S -=================================================================== ---- a/i386/i386/locore.S -+++ b/i386/i386/locore.S -@@ -960,6 +960,8 @@ ENTRY(syscall) - syscall_entry: - pushf /* save flags as soon as possible */ - syscall_entry_2: -+ cld /* clear direction flag */ -+ - pushl %eax /* save system call number */ - pushl $0 /* clear trap number slot */ - diff --git a/debian/patches/80_rtl8139_open.patch b/debian/patches/80_rtl8139_open.patch deleted file mode 100644 index f4b9376..0000000 --- a/debian/patches/80_rtl8139_open.patch +++ /dev/null @@ -1,33 +0,0 @@ -Fix 8138 initialization division by zero. - -Index: linux/src/drivers/net/rtl8139.c -=================================================================== -RCS file: /cvsroot/hurd/gnumach/linux/src/drivers/net/Attic/rtl8139.c,v -retrieving revision 1.2.4.2 -retrieving revision 1.2.4.1 -diff -u -p -r1.2.4.2 -r1.2.4.1 ---- linux/src/drivers/net/rtl8139.c 4 Jul 2008 10:04:17 -0000 1.2.4.2 -+++ linux/src/drivers/net/rtl8139.c 22 Jan 2006 15:54:41 -0000 1.2.4.1 -@@ -705,6 +705,10 @@ static int rtl8129_open(struct net_devic - int rx_buf_len_idx; - - MOD_INC_USE_COUNT; -+ if (request_irq(dev->irq, &rtl8129_interrupt, SA_SHIRQ, dev->name, dev)) { -+ MOD_DEC_USE_COUNT; -+ return -EAGAIN; -+ } - - /* The Rx ring allocation size is 2^N + delta, which is worst-case for - the kernel binary-buddy allocation. We allocate the Tx bounce buffers -@@ -733,11 +737,6 @@ static int rtl8129_open(struct net_devic - tp->rx_config = - (RX_FIFO_THRESH << 13) | (rx_buf_len_idx << 11) | (RX_DMA_BURST<<8); - -- if (request_irq(dev->irq, &rtl8129_interrupt, SA_SHIRQ, dev->name, dev)) { -- MOD_DEC_USE_COUNT; -- return -EAGAIN; -- } -- - rtl_hw_start(dev); - netif_start_tx_queue(dev); - diff --git a/debian/patches/90_autoconf_autogen.patch b/debian/patches/90_autoconf_autogen.patch deleted file mode 100644 index 215173c..0000000 --- a/debian/patches/90_autoconf_autogen.patch +++ /dev/null @@ -1,1151 +0,0 @@ -This patch is just autogenerated stuff, do not hack directly on it. -Regenerate with: - - $ debian/rules autoregen - - -Index: b/config.h.in -=================================================================== ---- a/config.h.in 2007-08-09 00:48:38.000000000 +0300 -+++ b/config.h.in 2007-08-09 01:13:18.000000000 +0300 -@@ -45,6 +45,9 @@ - default and for qemu */ - #undef CONFIG_BLK_DEV_FD - -+/* Force DMA on IDE block devices */ -+#undef CONFIG_BLK_DEV_FORCE_DMA -+ - /* option ide: Linux device driver for IDE disk controllers; on ix86-at - enabled by default and for qemu */ - #undef CONFIG_BLK_DEV_IDE -@@ -347,6 +350,10 @@ - ix86-at enabled by default */ - #undef CONFIG_SEEQ8005 - -+/* option sis900: Linux device driver for Ethernet controller SiS 900; on -+ ix86-at enabled by default */ -+#undef CONFIG_SIS900 -+ - /* option sk_g16: Linux device driver for Ethernet controller Schneider & Koch - G16; on ix86-at enabled by default */ - #undef CONFIG_SK_G16 -Index: b/configure -=================================================================== ---- a/configure 2007-08-09 00:48:32.000000000 +0300 -+++ b/configure 2007-08-09 01:13:14.000000000 +0300 -@@ -821,6 +821,8 @@ device_driver_rtl8139_TRUE - device_driver_rtl8139_FALSE - device_driver_seeq8005_TRUE - device_driver_seeq8005_FALSE -+device_driver_sis900_TRUE -+device_driver_sis900_FALSE - device_driver_sk_g16_TRUE - device_driver_sk_g16_FALSE - device_driver_smc_ultra_TRUE -@@ -1493,6 +1495,7 @@ Optional Features: - enabled by default and for qemu - --enable-ide Linux device driver for IDE disk controllers; on - ix86-at enabled by default and for qemu -+ --enable-ide-forcedma enable forced use of DMA on IDE - --enable-53c78xx Linux device driver for SCSI controller NCR - 53C7,8xx; on ix86-at enabled by default - --enable-AM53C974 Linux device driver for SCSI controller AM53/79C974 -@@ -1659,6 +1662,8 @@ Optional Features: - ix86-at enabled by default - --enable-seeq8005 Linux device driver for Ethernet controller - Seeq8005; on ix86-at enabled by default -+ --enable-sis900 Linux device driver for Ethernet controller SiS 900; -+ on ix86-at enabled by default - --enable-sk_g16 Linux device driver for Ethernet controller - Schneider & Koch G16; on ix86-at enabled by default - --enable-smc-ultra Linux device driver for Ethernet controller SMC -@@ -6450,6 +6455,17 @@ _ACEOF - fi - - -+# Check whether --enable-ide-forcedma was given. -+if test "${enable_ide_forcedma+set}" = set; then -+ enableval=$enable_ide_forcedma; test x"$enableval" = xno || -+ -+cat >>confdefs.h <<\_ACEOF -+#define CONFIG_BLK_DEV_FORCE_DMA 1 -+_ACEOF -+ -+fi -+ -+ - - - -@@ -9534,6 +9550,52 @@ fi - - - unset enableval -+# Check whether --enable-sis900 was given. -+if test "${enable_sis900+set}" = set; then -+ enableval=$enable_sis900; -+fi -+ -+#TODO. Could use some M4 magic to avoid a lot of shell code. -+case $host_platform:$host_cpu in -+ at:i?86) -+ case $enable_device_drivers:'Linux device driver for Ethernet controller SiS 900; on ix86-at enabled -+ by default' in -+ default:*by\ default* | qemu:*for\ qemu*) -+ enableval=${enableval-yes};; -+ *) -+ enableval=${enableval-no};; -+ esac;; -+ *) -+ if [ x"$enableval" = xyes ]; then -+ # TODO. That might not always be true. -+ { { echo "$as_me:$LINENO: error: cannot enable \`sis900' in this configuration." >&5 -+echo "$as_me: error: cannot enable \`sis900' in this configuration." >&2;} -+ { (exit 1); exit 1; }; } -+ fi;; -+esac -+ -+ -+if [ x"$enableval" = xyes ]; then -+ device_driver_sis900_TRUE= -+ device_driver_sis900_FALSE='#' -+else -+ device_driver_sis900_TRUE='#' -+ device_driver_sis900_FALSE= -+fi -+ -+if [ x"$enableval" = xyes ]; then -+ have_linux_code=yes -+ -+cat >>confdefs.h <<\_ACEOF -+#define CONFIG_SIS900 1 -+_ACEOF -+ -+ device_driver_group net -+fi -+ -+ -+ -+unset enableval - # Check whether --enable-sk_g16 was given. - if test "${enable_sk_g16+set}" = set; then - enableval=$enable_sk_g16; -@@ -11645,6 +11707,13 @@ echo "$as_me: error: conditional \"devic - Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } - fi -+if test -z "${device_driver_sis900_TRUE}" && test -z "${device_driver_sis900_FALSE}"; then -+ { { echo "$as_me:$LINENO: error: conditional \"device_driver_sis900\" was never defined. -+Usually this means the macro was only invoked conditionally." >&5 -+echo "$as_me: error: conditional \"device_driver_sis900\" was never defined. -+Usually this means the macro was only invoked conditionally." >&2;} -+ { (exit 1); exit 1; }; } -+fi - if test -z "${device_driver_sk_g16_TRUE}" && test -z "${device_driver_sk_g16_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"device_driver_sk_g16\" was never defined. - Usually this means the macro was only invoked conditionally." >&5 -@@ -12750,6 +12819,8 @@ device_driver_rtl8139_TRUE!$device_drive - device_driver_rtl8139_FALSE!$device_driver_rtl8139_FALSE$ac_delim - device_driver_seeq8005_TRUE!$device_driver_seeq8005_TRUE$ac_delim - device_driver_seeq8005_FALSE!$device_driver_seeq8005_FALSE$ac_delim -+device_driver_sis900_TRUE!$device_driver_sis900_TRUE$ac_delim -+device_driver_sis900_FALSE!$device_driver_sis900_FALSE$ac_delim - device_driver_sk_g16_TRUE!$device_driver_sk_g16_TRUE$ac_delim - device_driver_sk_g16_FALSE!$device_driver_sk_g16_FALSE$ac_delim - device_driver_smc_ultra_TRUE!$device_driver_smc_ultra_TRUE$ac_delim -@@ -12797,8 +12868,6 @@ device_driver_smc91c92_cs_FALSE!$device_ - device_driver_xirc2ps_cs_TRUE!$device_driver_xirc2ps_cs_TRUE$ac_delim - device_driver_xirc2ps_cs_FALSE!$device_driver_xirc2ps_cs_FALSE$ac_delim - device_driver_orinoco_cs_TRUE!$device_driver_orinoco_cs_TRUE$ac_delim --device_driver_orinoco_cs_FALSE!$device_driver_orinoco_cs_FALSE$ac_delim --device_driver_group_net_TRUE!$device_driver_group_net_TRUE$ac_delim - _ACEOF - - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then -@@ -12840,6 +12909,8 @@ _ACEOF - ac_delim='%!_!# ' - for ac_last_try in false false false false false :; do - cat >conf$$subs.sed <<_ACEOF -+device_driver_orinoco_cs_FALSE!$device_driver_orinoco_cs_FALSE$ac_delim -+device_driver_group_net_TRUE!$device_driver_group_net_TRUE$ac_delim - device_driver_group_net_FALSE!$device_driver_group_net_FALSE$ac_delim - device_driver_group_pcmcia_TRUE!$device_driver_group_pcmcia_TRUE$ac_delim - device_driver_group_pcmcia_FALSE!$device_driver_group_pcmcia_FALSE$ac_delim -@@ -12853,7 +12924,7 @@ LIBOBJS!$LIBOBJS$ac_delim - LTLIBOBJS!$LTLIBOBJS$ac_delim - _ACEOF - -- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 11; then -+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 13; then - break - elif $ac_last_try; then - { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -Index: b/Makefile.in -=================================================================== ---- a/Makefile.in 2007-08-09 00:48:52.000000000 +0300 -+++ b/Makefile.in 2007-08-09 01:13:24.000000000 +0300 -@@ -225,28 +225,6 @@ - # Tests. - # - --# Makefile fragment for the documentation. -- --# Copyright (C) 2006, 2007 Free Software Foundation, Inc. -- --# 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 2, 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, write to the Free Software Foundation, Inc., --# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -- --# --# The GNU Mach Reference Manual. --# -- - - - -@@ -285,15 +263,14 @@ DIST_COMMON = README $(am__configure_dep - $(include_mach_eXec_HEADERS) $(srcdir)/Makefile.am \ - $(srcdir)/Makefile.in $(srcdir)/Makefrag.am \ - $(srcdir)/Makerules.am $(srcdir)/Makerules.mig.am \ -- $(srcdir)/config.h.in $(srcdir)/doc/Makefrag.am \ -- $(srcdir)/doc/stamp-vti $(srcdir)/doc/version.texi \ -- $(srcdir)/i386/Makefrag.am $(srcdir)/i386/linux/Makefrag.am \ -- $(srcdir)/linux/Makefrag.am $(srcdir)/tests/Makefrag.am \ -- $(srcdir)/version.c.in $(top_srcdir)/configure \ -- $(top_srcdir)/tests/test-mbchk.in AUTHORS COPYING ChangeLog \ -- INSTALL NEWS build-aux/compile build-aux/config.guess \ -- build-aux/config.sub build-aux/depcomp build-aux/install-sh \ -- build-aux/mdate-sh build-aux/missing build-aux/texinfo.tex -+ $(srcdir)/config.h.in $(srcdir)/i386/Makefrag.am \ -+ $(srcdir)/i386/linux/Makefrag.am $(srcdir)/linux/Makefrag.am \ -+ $(srcdir)/tests/Makefrag.am $(srcdir)/version.c.in \ -+ $(top_srcdir)/configure $(top_srcdir)/tests/test-mbchk.in \ -+ AUTHORS COPYING ChangeLog INSTALL NEWS build-aux/compile \ -+ build-aux/config.guess build-aux/config.sub build-aux/depcomp \ -+ build-aux/install-sh build-aux/mdate-sh build-aux/missing \ -+ build-aux/texinfo.tex - - # Do we want the icky kernel debugger? - @enable_kdb_TRUE@am__append_2 = \ -@@ -672,62 +649,65 @@ DIST_COMMON = README $(am__configure_dep - @device_driver_seeq8005_TRUE@ linux/src/drivers/net/seeq8005.c \ - @device_driver_seeq8005_TRUE@ linux/src/drivers/net/seeq8005.h - --@device_driver_sk_g16_TRUE@am__append_83 = \ -+@device_driver_sis900_TRUE@am__append_83 = \ -+@device_driver_sis900_TRUE@ linux/src/drivers/net/sis900.c -+ -+@device_driver_sk_g16_TRUE@am__append_84 = \ - @device_driver_sk_g16_TRUE@ linux/src/drivers/net/sk_g16.c \ - @device_driver_sk_g16_TRUE@ linux/src/drivers/net/sk_g16.h - --@device_driver_smc_ultra_TRUE@am__append_84 = \ -+@device_driver_smc_ultra_TRUE@am__append_85 = \ - @device_driver_smc_ultra_TRUE@ linux/src/drivers/net/smc-ultra.c \ - @device_driver_smc_ultra_TRUE@ linux/src/drivers/net/8390.c - --@device_driver_smc_ultra32_TRUE@am__append_85 = \ -+@device_driver_smc_ultra32_TRUE@am__append_86 = \ - @device_driver_smc_ultra32_TRUE@ linux/src/drivers/net/smc-ultra32.c \ - @device_driver_smc_ultra32_TRUE@ linux/src/drivers/net/8390.c - --@device_driver_starfire_TRUE@am__append_86 = \ -+@device_driver_starfire_TRUE@am__append_87 = \ - @device_driver_starfire_TRUE@ linux/src/drivers/net/starfire.c - --@device_driver_sundance_TRUE@am__append_87 = \ -+@device_driver_sundance_TRUE@am__append_88 = \ - @device_driver_sundance_TRUE@ linux/src/drivers/net/sundance.c - --@device_driver_tlan_TRUE@am__append_88 = \ -+@device_driver_tlan_TRUE@am__append_89 = \ - @device_driver_tlan_TRUE@ linux/src/drivers/net/tlan.c \ - @device_driver_tlan_TRUE@ linux/src/drivers/net/tlan.h - --@device_driver_tulip_TRUE@am__append_89 = \ -+@device_driver_tulip_TRUE@am__append_90 = \ - @device_driver_tulip_TRUE@ linux/src/drivers/net/tulip.c - --@device_driver_via_rhine_TRUE@am__append_90 = \ -+@device_driver_via_rhine_TRUE@am__append_91 = \ - @device_driver_via_rhine_TRUE@ linux/src/drivers/net/via-rhine.c - --@device_driver_wavelan_TRUE@am__append_91 = \ -+@device_driver_wavelan_TRUE@am__append_92 = \ - @device_driver_wavelan_TRUE@ linux/src/drivers/net/i82586.h \ - @device_driver_wavelan_TRUE@ linux/src/drivers/net/wavelan.c \ - @device_driver_wavelan_TRUE@ linux/src/drivers/net/wavelan.h \ - @device_driver_wavelan_TRUE@ linux/dev/drivers/net/wavelan.p.h - --@device_driver_wd_TRUE@am__append_92 = \ -+@device_driver_wd_TRUE@am__append_93 = \ - @device_driver_wd_TRUE@ linux/src/drivers/net/wd.c - --@device_driver_winbond_840_TRUE@am__append_93 = \ -+@device_driver_winbond_840_TRUE@am__append_94 = \ - @device_driver_winbond_840_TRUE@ linux/src/drivers/net/winbond-840.c \ - @device_driver_winbond_840_TRUE@ linux/src/drivers/net/8390.c - --@device_driver_yellowfin_TRUE@am__append_94 = \ -+@device_driver_yellowfin_TRUE@am__append_95 = \ - @device_driver_yellowfin_TRUE@ linux/src/drivers/net/yellowfin.c - --@device_driver_znet_TRUE@am__append_95 = \ -+@device_driver_znet_TRUE@am__append_96 = \ - @device_driver_znet_TRUE@ linux/src/drivers/net/znet.c - --@device_driver_group_pcmcia_TRUE@am__append_96 = \ -+@device_driver_group_pcmcia_TRUE@am__append_97 = \ - @device_driver_group_pcmcia_TRUE@ liblinux_pcmcia_cs_modules.a \ - @device_driver_group_pcmcia_TRUE@ liblinux_pcmcia_cs_clients.a \ - @device_driver_group_pcmcia_TRUE@ liblinux_pcmcia_cs_wireless.a --@device_driver_group_pcmcia_TRUE@am__append_97 = \ -+@device_driver_group_pcmcia_TRUE@am__append_98 = \ - @device_driver_group_pcmcia_TRUE@ liblinux_pcmcia_cs_modules.a \ - @device_driver_group_pcmcia_TRUE@ liblinux_pcmcia_cs_clients.a \ - @device_driver_group_pcmcia_TRUE@ liblinux_pcmcia_cs_wireless.a --@device_driver_i82365_TRUE@am__append_98 = \ -+@device_driver_i82365_TRUE@am__append_99 = \ - @device_driver_i82365_TRUE@ linux/pcmcia-cs/modules/cirrus.h \ - @device_driver_i82365_TRUE@ linux/pcmcia-cs/modules/ene.h \ - @device_driver_i82365_TRUE@ linux/pcmcia-cs/modules/i82365.c \ -@@ -740,34 +720,34 @@ DIST_COMMON = README $(am__configure_dep - @device_driver_i82365_TRUE@ linux/pcmcia-cs/modules/vg468.h \ - @device_driver_i82365_TRUE@ linux/pcmcia-cs/modules/yenta.h - --@device_driver_3c574_cs_TRUE@am__append_99 = \ -+@device_driver_3c574_cs_TRUE@am__append_100 = \ - @device_driver_3c574_cs_TRUE@ linux/pcmcia-cs/clients/3c574_cs.c - --@device_driver_3c589_cs_TRUE@am__append_100 = \ -+@device_driver_3c589_cs_TRUE@am__append_101 = \ - @device_driver_3c589_cs_TRUE@ linux/pcmcia-cs/clients/3c589_cs.c - --@device_driver_axnet_cs_TRUE@am__append_101 = \ -+@device_driver_axnet_cs_TRUE@am__append_102 = \ - @device_driver_axnet_cs_TRUE@ linux/pcmcia-cs/clients/ax8390.h \ - @device_driver_axnet_cs_TRUE@ linux/pcmcia-cs/clients/axnet_cs.c - --@device_driver_fmvj18x_cs_TRUE@am__append_102 = \ -+@device_driver_fmvj18x_cs_TRUE@am__append_103 = \ - @device_driver_fmvj18x_cs_TRUE@ linux/pcmcia-cs/clients/fmvj18x_cs.c - --@device_driver_nmclan_cs_TRUE@am__append_103 = \ -+@device_driver_nmclan_cs_TRUE@am__append_104 = \ - @device_driver_nmclan_cs_TRUE@ linux/pcmcia-cs/clients/nmclan_cs.c - --@device_driver_pcnet_cs_TRUE@am__append_104 = \ -+@device_driver_pcnet_cs_TRUE@am__append_105 = \ - @device_driver_pcnet_cs_TRUE@ linux/pcmcia-cs/clients/pcnet_cs.c \ - @device_driver_pcnet_cs_TRUE@ linux/src/drivers/net/8390.c - --@device_driver_smc91c92_cs_TRUE@am__append_105 = \ -+@device_driver_smc91c92_cs_TRUE@am__append_106 = \ - @device_driver_smc91c92_cs_TRUE@ linux/pcmcia-cs/clients/ositech.h \ - @device_driver_smc91c92_cs_TRUE@ linux/pcmcia-cs/clients/smc91c92_cs.c - --@device_driver_xirc2ps_cs_TRUE@am__append_106 = \ -+@device_driver_xirc2ps_cs_TRUE@am__append_107 = \ - @device_driver_xirc2ps_cs_TRUE@ linux/pcmcia-cs/clients/xirc2ps_cs.c - --@device_driver_orinoco_cs_TRUE@am__append_107 = \ -+@device_driver_orinoco_cs_TRUE@am__append_108 = \ - @device_driver_orinoco_cs_TRUE@ linux/pcmcia-cs/glue/wireless_glue.h \ - @device_driver_orinoco_cs_TRUE@ linux/pcmcia-cs/wireless/hermes.c \ - @device_driver_orinoco_cs_TRUE@ linux/pcmcia-cs/wireless/hermes.h \ -@@ -777,11 +757,11 @@ DIST_COMMON = README $(am__configure_dep - @device_driver_orinoco_cs_TRUE@ linux/pcmcia-cs/wireless/orinoco.h \ - @device_driver_orinoco_cs_TRUE@ linux/pcmcia-cs/wireless/orinoco_cs.c - --@HOST_ix86_TRUE@am__append_108 = \ -+@HOST_ix86_TRUE@am__append_109 = \ - @HOST_ix86_TRUE@ i386/linux/dev/include/linux/autoconf.h \ - @HOST_ix86_TRUE@ linux/src/arch/i386/lib/semaphore.S - --@HOST_ix86_TRUE@am__append_109 = \ -+@HOST_ix86_TRUE@am__append_110 = \ - @HOST_ix86_TRUE@ i386/i386at/autoconf.c \ - @HOST_ix86_TRUE@ i386/i386at/boothdr.S \ - @HOST_ix86_TRUE@ i386/i386at/com.c \ -@@ -795,6 +775,7 @@ DIST_COMMON = README $(am__configure_dep - @HOST_ix86_TRUE@ i386/i386at/immc.c \ - @HOST_ix86_TRUE@ i386/i386at/int_init.c \ - @HOST_ix86_TRUE@ i386/i386at/interrupt.S \ -+@HOST_ix86_TRUE@ i386/i386at/iopl.c \ - @HOST_ix86_TRUE@ i386/i386at/kd.c \ - @HOST_ix86_TRUE@ i386/i386at/kd.h \ - @HOST_ix86_TRUE@ i386/i386at/kd_event.c \ -@@ -815,7 +796,7 @@ DIST_COMMON = README $(am__configure_dep - # - # `lpr' device support. - # --@HOST_ix86_TRUE@@enable_lpr_TRUE@am__append_110 = \ -+@HOST_ix86_TRUE@@enable_lpr_TRUE@am__append_111 = \ - @HOST_ix86_TRUE@@enable_lpr_TRUE@ i386/i386at/lpr.c \ - @HOST_ix86_TRUE@@enable_lpr_TRUE@ i386/i386at/lprreg.h - -@@ -823,7 +804,7 @@ DIST_COMMON = README $(am__configure_dep - # - # Further source files for any i386 kernel. - # --@HOST_ix86_TRUE@am__append_111 = \ -+@HOST_ix86_TRUE@am__append_112 = \ - @HOST_ix86_TRUE@ i386/i386/ast.h \ - @HOST_ix86_TRUE@ i386/i386/ast_check.c \ - @HOST_ix86_TRUE@ i386/i386/ast_types.h \ -@@ -908,21 +889,21 @@ DIST_COMMON = README $(am__configure_dep - # - - # Instead of listing each file individually... --@HOST_ix86_TRUE@am__append_112 = i386/i386/mach_i386.srv \ -+@HOST_ix86_TRUE@am__append_113 = i386/i386/mach_i386.srv \ - @HOST_ix86_TRUE@ i386/i386/i386asm.sym i386/ldscript \ - @HOST_ix86_TRUE@ i386/README-Drivers i386/include - - # - # KDB support. - # --@HOST_ix86_TRUE@@enable_kdb_TRUE@am__append_113 = \ -+@HOST_ix86_TRUE@@enable_kdb_TRUE@am__append_114 = \ - @HOST_ix86_TRUE@@enable_kdb_TRUE@ i386/i386/_setjmp.S - - - # - # Files from the generic sources that we want. - # --@HOST_ix86_TRUE@am__append_114 = \ -+@HOST_ix86_TRUE@am__append_115 = \ - @HOST_ix86_TRUE@ chips/busses.c \ - @HOST_ix86_TRUE@ chips/busses.h \ - @HOST_ix86_TRUE@ device/cirbuf.c -@@ -933,14 +914,14 @@ DIST_COMMON = README $(am__configure_dep - # - # See Makerules.mig.am. - # --@HOST_ix86_TRUE@am__append_115 = \ -+@HOST_ix86_TRUE@am__append_116 = \ - @HOST_ix86_TRUE@ i386/i386/mach_i386.server.defs.c - --@HOST_ix86_TRUE@am__append_116 = i386/i386/mach_i386.server.h \ -+@HOST_ix86_TRUE@am__append_117 = i386/i386/mach_i386.server.h \ - @HOST_ix86_TRUE@ i386/i386/mach_i386.server.c \ - @HOST_ix86_TRUE@ i386/i386/mach_i386.server.msgids \ - @HOST_ix86_TRUE@ i386/i386/i386asm.h --@HOST_ix86_TRUE@@PLATFORM_at_TRUE@am__append_117 = \ -+@HOST_ix86_TRUE@@PLATFORM_at_TRUE@am__append_118 = \ - @HOST_ix86_TRUE@@PLATFORM_at_TRUE@ --defsym _START=0x100000 \ - @HOST_ix86_TRUE@@PLATFORM_at_TRUE@ -T '$(srcdir)'/i386/ldscript - -@@ -1026,10 +1007,10 @@ am__libkernel_a_SOURCES_DIST = ddb/db_ac - kern/time_out.h kern/time_stamp.c kern/time_stamp.h \ - kern/timer.c kern/timer.h kern/xpr.c kern/xpr.h kern/zalloc.c \ - kern/zalloc.h kern/elf-load.c kern/boot_script.c \ -- util/putchar.c util/puts.c vm/memory_object.c \ -- vm/memory_object.h vm/pmap.h vm/vm_debug.c vm/vm_external.c \ -- vm/vm_external.h vm/vm_fault.c vm/vm_fault.h vm/vm_init.c \ -- vm/vm_kern.c vm/vm_kern.h vm/vm_map.c vm/vm_map.h \ -+ util/putchar.c util/puts.c vm/memory_object_proxy.c \ -+ vm/memory_object.c vm/memory_object.h vm/pmap.h vm/vm_debug.c \ -+ vm/vm_external.c vm/vm_external.h vm/vm_fault.c vm/vm_fault.h \ -+ vm/vm_init.c vm/vm_kern.c vm/vm_kern.h vm/vm_map.c vm/vm_map.h \ - vm/vm_object.c vm/vm_object.h vm/vm_page.h vm/vm_pageout.c \ - vm/vm_pageout.h vm/vm_resident.c vm/vm_user.c vm/vm_user.h \ - device/blkio.c device/buf.h device/chario.c device/cirbuf.h \ -@@ -1046,12 +1027,13 @@ am__libkernel_a_SOURCES_DIST = ddb/db_ac - i386/i386at/cons_conf.c i386/i386at/cram.h i386/i386at/disk.h \ - i386/i386at/i8250.h i386/i386at/idt.h i386/i386at/immc.c \ - i386/i386at/int_init.c i386/i386at/interrupt.S \ -- i386/i386at/kd.c i386/i386at/kd.h i386/i386at/kd_event.c \ -- i386/i386at/kd_event.h i386/i386at/kd_mouse.c \ -- i386/i386at/kd_mouse.h i386/i386at/kd_queue.c \ -- i386/i386at/kd_queue.h i386/i386at/kdasm.S \ -- i386/i386at/kdsoft.h i386/i386at/model_dep.c \ -- i386/i386at/pic_isa.c i386/i386at/rtc.c i386/i386at/rtc.h \ -+ i386/i386at/iopl.c i386/i386at/kd.c i386/i386at/kd.h \ -+ i386/i386at/kd_event.c i386/i386at/kd_event.h \ -+ i386/i386at/kd_mouse.c i386/i386at/kd_mouse.h \ -+ i386/i386at/kd_queue.c i386/i386at/kd_queue.h \ -+ i386/i386at/kdasm.S i386/i386at/kdsoft.h \ -+ i386/i386at/model_dep.c i386/i386at/pic_isa.c \ -+ i386/i386at/rtc.c i386/i386at/rtc.h \ - i386/include/mach/sa/stdarg.h i386/i386at/lpr.c \ - i386/i386at/lprreg.h i386/i386/ast.h i386/i386/ast_check.c \ - i386/i386/ast_types.h i386/i386/cpu_number.h \ -@@ -1108,6 +1090,7 @@ am__libkernel_a_SOURCES_DIST = ddb/db_ac - @HOST_ix86_TRUE@ i386/i386at/immc.$(OBJEXT) \ - @HOST_ix86_TRUE@ i386/i386at/int_init.$(OBJEXT) \ - @HOST_ix86_TRUE@ i386/i386at/interrupt.$(OBJEXT) \ -+@HOST_ix86_TRUE@ i386/i386at/iopl.$(OBJEXT) \ - @HOST_ix86_TRUE@ i386/i386at/kd.$(OBJEXT) \ - @HOST_ix86_TRUE@ i386/i386at/kd_event.$(OBJEXT) \ - @HOST_ix86_TRUE@ i386/i386at/kd_mouse.$(OBJEXT) \ -@@ -1184,9 +1167,10 @@ am_libkernel_a_OBJECTS = $(am__objects_2 - kern/xpr.$(OBJEXT) kern/zalloc.$(OBJEXT) \ - kern/elf-load.$(OBJEXT) kern/boot_script.$(OBJEXT) \ - util/putchar.$(OBJEXT) util/puts.$(OBJEXT) \ -- vm/memory_object.$(OBJEXT) vm/vm_debug.$(OBJEXT) \ -- vm/vm_external.$(OBJEXT) vm/vm_fault.$(OBJEXT) \ -- vm/vm_init.$(OBJEXT) vm/vm_kern.$(OBJEXT) vm/vm_map.$(OBJEXT) \ -+ vm/memory_object_proxy.$(OBJEXT) vm/memory_object.$(OBJEXT) \ -+ vm/vm_debug.$(OBJEXT) vm/vm_external.$(OBJEXT) \ -+ vm/vm_fault.$(OBJEXT) vm/vm_init.$(OBJEXT) \ -+ vm/vm_kern.$(OBJEXT) vm/vm_map.$(OBJEXT) \ - vm/vm_object.$(OBJEXT) vm/vm_pageout.$(OBJEXT) \ - vm/vm_resident.$(OBJEXT) vm/vm_user.$(OBJEXT) \ - device/blkio.$(OBJEXT) device/chario.$(OBJEXT) \ -@@ -1331,7 +1315,8 @@ am__liblinux_a_SOURCES_DIST = linux/dev/ - linux/src/drivers/net/rtl8139.c \ - linux/src/drivers/net/seeq8005.c \ - linux/src/drivers/net/seeq8005.h \ -- linux/src/drivers/net/sk_g16.c linux/src/drivers/net/sk_g16.h \ -+ linux/src/drivers/net/sis900.c linux/src/drivers/net/sk_g16.c \ -+ linux/src/drivers/net/sk_g16.h \ - linux/src/drivers/net/smc-ultra.c \ - linux/src/drivers/net/smc-ultra32.c \ - linux/src/drivers/net/starfire.c \ -@@ -1441,23 +1426,24 @@ am__liblinux_a_SOURCES_DIST = linux/dev/ - @device_driver_pcnet32_TRUE@am__objects_78 = linux/src/drivers/net/liblinux_a-pcnet32.$(OBJEXT) - @device_driver_rtl8139_TRUE@am__objects_79 = linux/src/drivers/net/liblinux_a-rtl8139.$(OBJEXT) - @device_driver_seeq8005_TRUE@am__objects_80 = linux/src/drivers/net/liblinux_a-seeq8005.$(OBJEXT) --@device_driver_sk_g16_TRUE@am__objects_81 = linux/src/drivers/net/liblinux_a-sk_g16.$(OBJEXT) --@device_driver_smc_ultra_TRUE@am__objects_82 = linux/src/drivers/net/liblinux_a-smc-ultra.$(OBJEXT) \ -+@device_driver_sis900_TRUE@am__objects_81 = linux/src/drivers/net/liblinux_a-sis900.$(OBJEXT) -+@device_driver_sk_g16_TRUE@am__objects_82 = linux/src/drivers/net/liblinux_a-sk_g16.$(OBJEXT) -+@device_driver_smc_ultra_TRUE@am__objects_83 = linux/src/drivers/net/liblinux_a-smc-ultra.$(OBJEXT) \ - @device_driver_smc_ultra_TRUE@ linux/src/drivers/net/liblinux_a-8390.$(OBJEXT) --@device_driver_smc_ultra32_TRUE@am__objects_83 = linux/src/drivers/net/liblinux_a-smc-ultra32.$(OBJEXT) \ -+@device_driver_smc_ultra32_TRUE@am__objects_84 = linux/src/drivers/net/liblinux_a-smc-ultra32.$(OBJEXT) \ - @device_driver_smc_ultra32_TRUE@ linux/src/drivers/net/liblinux_a-8390.$(OBJEXT) --@device_driver_starfire_TRUE@am__objects_84 = linux/src/drivers/net/liblinux_a-starfire.$(OBJEXT) --@device_driver_sundance_TRUE@am__objects_85 = linux/src/drivers/net/liblinux_a-sundance.$(OBJEXT) --@device_driver_tlan_TRUE@am__objects_86 = linux/src/drivers/net/liblinux_a-tlan.$(OBJEXT) --@device_driver_tulip_TRUE@am__objects_87 = linux/src/drivers/net/liblinux_a-tulip.$(OBJEXT) --@device_driver_via_rhine_TRUE@am__objects_88 = linux/src/drivers/net/liblinux_a-via-rhine.$(OBJEXT) --@device_driver_wavelan_TRUE@am__objects_89 = linux/src/drivers/net/liblinux_a-wavelan.$(OBJEXT) --@device_driver_wd_TRUE@am__objects_90 = linux/src/drivers/net/liblinux_a-wd.$(OBJEXT) --@device_driver_winbond_840_TRUE@am__objects_91 = linux/src/drivers/net/liblinux_a-winbond-840.$(OBJEXT) \ -+@device_driver_starfire_TRUE@am__objects_85 = linux/src/drivers/net/liblinux_a-starfire.$(OBJEXT) -+@device_driver_sundance_TRUE@am__objects_86 = linux/src/drivers/net/liblinux_a-sundance.$(OBJEXT) -+@device_driver_tlan_TRUE@am__objects_87 = linux/src/drivers/net/liblinux_a-tlan.$(OBJEXT) -+@device_driver_tulip_TRUE@am__objects_88 = linux/src/drivers/net/liblinux_a-tulip.$(OBJEXT) -+@device_driver_via_rhine_TRUE@am__objects_89 = linux/src/drivers/net/liblinux_a-via-rhine.$(OBJEXT) -+@device_driver_wavelan_TRUE@am__objects_90 = linux/src/drivers/net/liblinux_a-wavelan.$(OBJEXT) -+@device_driver_wd_TRUE@am__objects_91 = linux/src/drivers/net/liblinux_a-wd.$(OBJEXT) -+@device_driver_winbond_840_TRUE@am__objects_92 = linux/src/drivers/net/liblinux_a-winbond-840.$(OBJEXT) \ - @device_driver_winbond_840_TRUE@ linux/src/drivers/net/liblinux_a-8390.$(OBJEXT) --@device_driver_yellowfin_TRUE@am__objects_92 = linux/src/drivers/net/liblinux_a-yellowfin.$(OBJEXT) --@device_driver_znet_TRUE@am__objects_93 = linux/src/drivers/net/liblinux_a-znet.$(OBJEXT) --@HOST_ix86_TRUE@am__objects_94 = linux/src/arch/i386/lib/liblinux_a-semaphore.$(OBJEXT) -+@device_driver_yellowfin_TRUE@am__objects_93 = linux/src/drivers/net/liblinux_a-yellowfin.$(OBJEXT) -+@device_driver_znet_TRUE@am__objects_94 = linux/src/drivers/net/liblinux_a-znet.$(OBJEXT) -+@HOST_ix86_TRUE@am__objects_95 = linux/src/arch/i386/lib/liblinux_a-semaphore.$(OBJEXT) - am_liblinux_a_OBJECTS = linux/dev/init/liblinux_a-version.$(OBJEXT) \ - linux/dev/kernel/liblinux_a-softirq.$(OBJEXT) \ - linux/src/arch/i386/lib/liblinux_a-delay.$(OBJEXT) \ -@@ -1504,7 +1490,7 @@ am_liblinux_a_OBJECTS = linux/dev/init/l - $(am__objects_85) $(am__objects_86) $(am__objects_87) \ - $(am__objects_88) $(am__objects_89) $(am__objects_90) \ - $(am__objects_91) $(am__objects_92) $(am__objects_93) \ -- $(am__objects_94) -+ $(am__objects_94) $(am__objects_95) - liblinux_a_OBJECTS = $(am_liblinux_a_OBJECTS) - liblinux_pcmcia_cs_clients_a_AR = $(AR) $(ARFLAGS) - liblinux_pcmcia_cs_clients_a_LIBADD = -@@ -1519,19 +1505,19 @@ am__liblinux_pcmcia_cs_clients_a_SOURCES - linux/src/drivers/net/8390.c linux/pcmcia-cs/clients/ositech.h \ - linux/pcmcia-cs/clients/smc91c92_cs.c \ - linux/pcmcia-cs/clients/xirc2ps_cs.c --@device_driver_3c574_cs_TRUE@am__objects_95 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-3c574_cs.$(OBJEXT) --@device_driver_3c589_cs_TRUE@am__objects_96 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-3c589_cs.$(OBJEXT) --@device_driver_axnet_cs_TRUE@am__objects_97 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-axnet_cs.$(OBJEXT) --@device_driver_fmvj18x_cs_TRUE@am__objects_98 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-fmvj18x_cs.$(OBJEXT) --@device_driver_nmclan_cs_TRUE@am__objects_99 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-nmclan_cs.$(OBJEXT) --@device_driver_pcnet_cs_TRUE@am__objects_100 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-pcnet_cs.$(OBJEXT) \ -+@device_driver_3c574_cs_TRUE@am__objects_96 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-3c574_cs.$(OBJEXT) -+@device_driver_3c589_cs_TRUE@am__objects_97 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-3c589_cs.$(OBJEXT) -+@device_driver_axnet_cs_TRUE@am__objects_98 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-axnet_cs.$(OBJEXT) -+@device_driver_fmvj18x_cs_TRUE@am__objects_99 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-fmvj18x_cs.$(OBJEXT) -+@device_driver_nmclan_cs_TRUE@am__objects_100 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-nmclan_cs.$(OBJEXT) -+@device_driver_pcnet_cs_TRUE@am__objects_101 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-pcnet_cs.$(OBJEXT) \ - @device_driver_pcnet_cs_TRUE@ linux/src/drivers/net/liblinux_pcmcia_cs_clients_a-8390.$(OBJEXT) --@device_driver_smc91c92_cs_TRUE@am__objects_101 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-smc91c92_cs.$(OBJEXT) --@device_driver_xirc2ps_cs_TRUE@am__objects_102 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-xirc2ps_cs.$(OBJEXT) --am_liblinux_pcmcia_cs_clients_a_OBJECTS = $(am__objects_95) \ -- $(am__objects_96) $(am__objects_97) $(am__objects_98) \ -- $(am__objects_99) $(am__objects_100) $(am__objects_101) \ -- $(am__objects_102) -+@device_driver_smc91c92_cs_TRUE@am__objects_102 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-smc91c92_cs.$(OBJEXT) -+@device_driver_xirc2ps_cs_TRUE@am__objects_103 = linux/pcmcia-cs/clients/liblinux_pcmcia_cs_clients_a-xirc2ps_cs.$(OBJEXT) -+am_liblinux_pcmcia_cs_clients_a_OBJECTS = $(am__objects_96) \ -+ $(am__objects_97) $(am__objects_98) $(am__objects_99) \ -+ $(am__objects_100) $(am__objects_101) $(am__objects_102) \ -+ $(am__objects_103) - liblinux_pcmcia_cs_clients_a_OBJECTS = \ - $(am_liblinux_pcmcia_cs_clients_a_OBJECTS) - liblinux_pcmcia_cs_modules_a_AR = $(AR) $(ARFLAGS) -@@ -1556,7 +1542,7 @@ am__liblinux_pcmcia_cs_modules_a_SOURCES - linux/pcmcia-cs/modules/topic.h \ - linux/pcmcia-cs/modules/vg468.h \ - linux/pcmcia-cs/modules/yenta.h --@device_driver_i82365_TRUE@am__objects_103 = linux/pcmcia-cs/modules/liblinux_pcmcia_cs_modules_a-i82365.$(OBJEXT) -+@device_driver_i82365_TRUE@am__objects_104 = linux/pcmcia-cs/modules/liblinux_pcmcia_cs_modules_a-i82365.$(OBJEXT) - am_liblinux_pcmcia_cs_modules_a_OBJECTS = linux/pcmcia-cs/glue/liblinux_pcmcia_cs_modules_a-pcmcia.$(OBJEXT) \ - linux/pcmcia-cs/modules/liblinux_pcmcia_cs_modules_a-cs.$(OBJEXT) \ - linux/pcmcia-cs/modules/liblinux_pcmcia_cs_modules_a-ds.$(OBJEXT) \ -@@ -1564,7 +1550,7 @@ am_liblinux_pcmcia_cs_modules_a_OBJECTS - linux/pcmcia-cs/modules/liblinux_pcmcia_cs_modules_a-bulkmem.$(OBJEXT) \ - linux/pcmcia-cs/modules/liblinux_pcmcia_cs_modules_a-cistpl.$(OBJEXT) \ - linux/pcmcia-cs/modules/liblinux_pcmcia_cs_modules_a-pci_fixup.$(OBJEXT) \ -- $(am__objects_103) -+ $(am__objects_104) - liblinux_pcmcia_cs_modules_a_OBJECTS = \ - $(am_liblinux_pcmcia_cs_modules_a_OBJECTS) - liblinux_pcmcia_cs_wireless_a_AR = $(AR) $(ARFLAGS) -@@ -1578,10 +1564,10 @@ am__liblinux_pcmcia_cs_wireless_a_SOURCE - linux/pcmcia-cs/wireless/orinoco.c \ - linux/pcmcia-cs/wireless/orinoco.h \ - linux/pcmcia-cs/wireless/orinoco_cs.c --@device_driver_orinoco_cs_TRUE@am__objects_104 = linux/pcmcia-cs/wireless/liblinux_pcmcia_cs_wireless_a-hermes.$(OBJEXT) \ -+@device_driver_orinoco_cs_TRUE@am__objects_105 = linux/pcmcia-cs/wireless/liblinux_pcmcia_cs_wireless_a-hermes.$(OBJEXT) \ - @device_driver_orinoco_cs_TRUE@ linux/pcmcia-cs/wireless/liblinux_pcmcia_cs_wireless_a-orinoco.$(OBJEXT) \ - @device_driver_orinoco_cs_TRUE@ linux/pcmcia-cs/wireless/liblinux_pcmcia_cs_wireless_a-orinoco_cs.$(OBJEXT) --am_liblinux_pcmcia_cs_wireless_a_OBJECTS = $(am__objects_104) -+am_liblinux_pcmcia_cs_wireless_a_OBJECTS = $(am__objects_105) - liblinux_pcmcia_cs_wireless_a_OBJECTS = \ - $(am_liblinux_pcmcia_cs_wireless_a_OBJECTS) - am__installdirs = "$(DESTDIR)$(exec_bootdir)" "$(DESTDIR)$(infodir)" \ -@@ -1623,14 +1609,13 @@ DIST_SOURCES = $(am__libkernel_a_SOURCES - $(am__liblinux_pcmcia_cs_modules_a_SOURCES_DIST) \ - $(am__liblinux_pcmcia_cs_wireless_a_SOURCES_DIST) \ - $(gnumach_SOURCES) $(gnumach_o_SOURCES) --INFO_DEPS = $(srcdir)/doc/mach.info - TEXINFO_TEX = $(top_srcdir)/build-aux/texinfo.tex - am__TEXINFO_TEX_DIR = $(top_srcdir)/build-aux --DVIS = doc/mach.dvi --PDFS = doc/mach.pdf --PSS = doc/mach.ps --HTMLS = doc/mach.html --TEXINFOS = doc/mach.texi -+DVIS = -+PDFS = -+PSS = -+HTMLS = -+TEXINFOS = - TEXI2DVI = texi2dvi - TEXI2PDF = $(TEXI2DVI) --pdf --batch - MAKEINFOHTML = $(MAKEINFO) --html -@@ -1912,6 +1897,8 @@ device_driver_seagate_FALSE = @device_dr - device_driver_seagate_TRUE = @device_driver_seagate_TRUE@ - device_driver_seeq8005_FALSE = @device_driver_seeq8005_FALSE@ - device_driver_seeq8005_TRUE = @device_driver_seeq8005_TRUE@ -+device_driver_sis900_FALSE = @device_driver_sis900_FALSE@ -+device_driver_sis900_TRUE = @device_driver_sis900_TRUE@ - device_driver_sk_g16_FALSE = @device_driver_sk_g16_FALSE@ - device_driver_sk_g16_TRUE = @device_driver_sk_g16_TRUE@ - device_driver_smc91c92_cs_FALSE = @device_driver_smc91c92_cs_FALSE@ -@@ -2014,8 +2001,7 @@ EXTRA_DIST = gensym.awk ipc/mach_port.sr - linux/src/drivers/scsi/NCR5380.h linux/src/drivers/net/8390.h \ - linux/src/drivers/net/kern_compat.h linux/pcmcia-cs/glue/ds.c \ - linux/dev/README linux/src/COPYING linux/dev/include \ -- linux/src/include linux/pcmcia-cs/include $(am__append_112) \ -- $(mach_TEXINFOS) \ -+ linux/src/include linux/pcmcia-cs/include $(am__append_113) \ - Makefile.correct_output_files_for_.S_files.patch \ - config.status.dep.patch ChangeLog.0 ChangeLog.00 DEVELOPMENT - -@@ -2030,9 +2016,9 @@ DISTCHECK_CONFIGURE_FLAGS = --enable-kdb - # The main kernel functionality. - # - noinst_LIBRARIES = libkernel.a lib_dep_tr_for_defs.a $(am__append_4) \ -- $(am__append_96) -+ $(am__append_97) - TESTS = tests/test-mbchk --info_TEXINFOS = doc/mach.texi -+info_TEXINFOS = - # kern/mach.server.defs - # kern/mach4.server.defs - # kern/mach_debug.server.defs -@@ -2128,10 +2114,10 @@ libkernel_a_SOURCES = $(am__append_2) ip - kern/time_out.h kern/time_stamp.c kern/time_stamp.h \ - kern/timer.c kern/timer.h kern/xpr.c kern/xpr.h kern/zalloc.c \ - kern/zalloc.h kern/elf-load.c kern/boot_script.c \ -- util/putchar.c util/puts.c vm/memory_object.c \ -- vm/memory_object.h vm/pmap.h vm/vm_debug.c vm/vm_external.c \ -- vm/vm_external.h vm/vm_fault.c vm/vm_fault.h vm/vm_init.c \ -- vm/vm_kern.c vm/vm_kern.h vm/vm_map.c vm/vm_map.h \ -+ util/putchar.c util/puts.c vm/memory_object_proxy.c \ -+ vm/memory_object.c vm/memory_object.h vm/pmap.h vm/vm_debug.c \ -+ vm/vm_external.c vm/vm_external.h vm/vm_fault.c vm/vm_fault.h \ -+ vm/vm_init.c vm/vm_kern.c vm/vm_kern.h vm/vm_map.c vm/vm_map.h \ - vm/vm_object.c vm/vm_object.h vm/vm_page.h vm/vm_pageout.c \ - vm/vm_pageout.h vm/vm_resident.c vm/vm_user.c vm/vm_user.h \ - device/blkio.c device/buf.h device/chario.c device/cirbuf.h \ -@@ -2142,9 +2128,9 @@ libkernel_a_SOURCES = $(am__append_2) ip - device/ds_routines.c device/ds_routines.h device/errno.h \ - device/if_ether.h device/if_hdr.h device/io_req.h \ - device/net_io.c device/net_io.h device/param.h device/subrs.c \ -- device/tty.h $(am__append_3) $(am__append_109) \ -- $(am__append_110) $(am__append_111) $(am__append_113) \ -- $(am__append_114) -+ device/tty.h $(am__append_3) $(am__append_110) \ -+ $(am__append_111) $(am__append_112) $(am__append_114) \ -+ $(am__append_115) - - # - # Version number. -@@ -2168,10 +2154,10 @@ nodist_libkernel_a_SOURCES = version.c v - kern/mach4.server.msgids kern/mach_debug.server.h \ - kern/mach_debug.server.c kern/mach_debug.server.msgids \ - kern/mach_host.server.h kern/mach_host.server.c \ -- kern/mach_host.server.msgids $(am__append_116) --gnumach_o_LDADD = libkernel.a $(am__append_5) $(am__append_97) -+ kern/mach_host.server.msgids $(am__append_117) -+gnumach_o_LDADD = libkernel.a $(am__append_5) $(am__append_98) - gnumach_SOURCES = --gnumach_LINKFLAGS = $(am__append_117) -+gnumach_LINKFLAGS = $(am__append_118) - - # - # Automatically generated source files. -@@ -2197,7 +2183,7 @@ nodist_lib_dep_tr_for_defs_a_SOURCES = - device/device.server.defs.c device/device_pager.server.defs.c \ - ipc/mach_port.server.defs.c kern/mach.server.defs.c \ - kern/mach4.server.defs.c kern/mach_debug.server.defs.c \ -- kern/mach_host.server.defs.c $(am__append_115) -+ kern/mach_host.server.defs.c $(am__append_116) - # Preprocess only. - lib_dep_tr_for_defs_a_CPPFLAGS = $(AM_CPPFLAGS) \ - -E -@@ -2341,7 +2327,8 @@ liblinux_a_SOURCES = linux/dev/init/vers - $(am__append_85) $(am__append_86) $(am__append_87) \ - $(am__append_88) $(am__append_89) $(am__append_90) \ - $(am__append_91) $(am__append_92) $(am__append_93) \ -- $(am__append_94) $(am__append_95) $(am__append_108) -+ $(am__append_94) $(am__append_95) $(am__append_96) \ -+ $(am__append_109) - - # pcmcia-cs. - liblinux_pcmcia_cs_modules_a_CPPFLAGS = $(liblinux_a_CPPFLAGS) \ -@@ -2358,24 +2345,24 @@ liblinux_pcmcia_cs_modules_a_SOURCES = l - linux/pcmcia-cs/modules/rsrc_mgr.c \ - linux/pcmcia-cs/modules/bulkmem.c \ - linux/pcmcia-cs/modules/cistpl.c \ -- linux/pcmcia-cs/modules/pci_fixup.c $(am__append_98) -+ linux/pcmcia-cs/modules/pci_fixup.c $(am__append_99) - liblinux_pcmcia_cs_clients_a_CPPFLAGS = $(liblinux_a_CPPFLAGS) \ - -DPCMCIA_CLIENT -I$(srcdir)/linux/pcmcia-cs/include - - liblinux_pcmcia_cs_clients_a_CFLAGS = $(liblinux_a_CFLAGS) \ - -include $(srcdir)/linux/pcmcia-cs/glue/pcmcia_glue.h - --liblinux_pcmcia_cs_clients_a_SOURCES = $(am__append_99) \ -- $(am__append_100) $(am__append_101) $(am__append_102) \ -- $(am__append_103) $(am__append_104) $(am__append_105) \ -- $(am__append_106) -+liblinux_pcmcia_cs_clients_a_SOURCES = $(am__append_100) \ -+ $(am__append_101) $(am__append_102) $(am__append_103) \ -+ $(am__append_104) $(am__append_105) $(am__append_106) \ -+ $(am__append_107) - liblinux_pcmcia_cs_wireless_a_CPPFLAGS = $(liblinux_a_CPPFLAGS) \ - -I$(srcdir)/linux/pcmcia-cs/include - - liblinux_pcmcia_cs_wireless_a_CFLAGS = $(liblinux_a_CFLAGS) \ - -include $(srcdir)/linux/pcmcia-cs/glue/wireless_glue.h - --liblinux_pcmcia_cs_wireless_a_SOURCES = $(am__append_107) -+liblinux_pcmcia_cs_wireless_a_SOURCES = $(am__append_108) - - # - # Installation. -@@ -2401,14 +2388,6 @@ liblinux_pcmcia_cs_wireless_a_SOURCES = - @HOST_ix86_TRUE@ i386/include/mach/i386/vm_param.h \ - @HOST_ix86_TRUE@ i386/include/mach/i386/vm_types.h - --mach_TEXINFOS = \ -- doc/fdl.texi doc/gpl.texi -- -- --# --# Web pages of the GNU Mach Reference Manual. --# --web = doc/web - - # Makerules: how to do some things. - -@@ -2417,6 +2396,7 @@ web = doc/web - # Test suite. - - # Documentation. -+#include doc/Makefrag.am - - # - # Kernel Image -@@ -2451,7 +2431,7 @@ all: config.h - .SUFFIXES: .S .c .dvi .o .obj .ps - am--refresh: - @: --$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Makerules.am $(srcdir)/Makerules.mig.am $(srcdir)/Makefrag.am $(srcdir)/linux/Makefrag.am $(srcdir)/i386/linux/Makefrag.am $(srcdir)/i386/Makefrag.am $(srcdir)/tests/Makefrag.am $(srcdir)/doc/Makefrag.am $(am__configure_deps) -+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Makerules.am $(srcdir)/Makerules.mig.am $(srcdir)/Makefrag.am $(srcdir)/linux/Makefrag.am $(srcdir)/i386/linux/Makefrag.am $(srcdir)/i386/Makefrag.am $(srcdir)/tests/Makefrag.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ -@@ -2741,6 +2721,8 @@ util/putchar.$(OBJEXT): util/$(am__dirst - util/$(DEPDIR)/$(am__dirstamp) - util/puts.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -+vm/memory_object_proxy.$(OBJEXT): vm/$(am__dirstamp) \ -+ vm/$(DEPDIR)/$(am__dirstamp) - vm/memory_object.$(OBJEXT): vm/$(am__dirstamp) \ - vm/$(DEPDIR)/$(am__dirstamp) - vm/vm_debug.$(OBJEXT): vm/$(am__dirstamp) vm/$(DEPDIR)/$(am__dirstamp) -@@ -2801,6 +2783,8 @@ i386/i386at/int_init.$(OBJEXT): i386/i38 - i386/i386at/$(DEPDIR)/$(am__dirstamp) - i386/i386at/interrupt.$(OBJEXT): i386/i386at/$(am__dirstamp) \ - i386/i386at/$(DEPDIR)/$(am__dirstamp) -+i386/i386at/iopl.$(OBJEXT): i386/i386at/$(am__dirstamp) \ -+ i386/i386at/$(DEPDIR)/$(am__dirstamp) - i386/i386at/kd.$(OBJEXT): i386/i386at/$(am__dirstamp) \ - i386/i386at/$(DEPDIR)/$(am__dirstamp) - i386/i386at/kd_event.$(OBJEXT): i386/i386at/$(am__dirstamp) \ -@@ -3347,6 +3331,9 @@ linux/src/drivers/net/liblinux_a-rtl8139 - linux/src/drivers/net/liblinux_a-seeq8005.$(OBJEXT): \ - linux/src/drivers/net/$(am__dirstamp) \ - linux/src/drivers/net/$(DEPDIR)/$(am__dirstamp) -+linux/src/drivers/net/liblinux_a-sis900.$(OBJEXT): \ -+ linux/src/drivers/net/$(am__dirstamp) \ -+ linux/src/drivers/net/$(DEPDIR)/$(am__dirstamp) - linux/src/drivers/net/liblinux_a-sk_g16.$(OBJEXT): \ - linux/src/drivers/net/$(am__dirstamp) \ - linux/src/drivers/net/$(DEPDIR)/$(am__dirstamp) -@@ -3606,6 +3593,7 @@ mostlyclean-compile: - -rm -f i386/i386at/immc.$(OBJEXT) - -rm -f i386/i386at/int_init.$(OBJEXT) - -rm -f i386/i386at/interrupt.$(OBJEXT) -+ -rm -f i386/i386at/iopl.$(OBJEXT) - -rm -f i386/i386at/kd.$(OBJEXT) - -rm -f i386/i386at/kd_event.$(OBJEXT) - -rm -f i386/i386at/kd_mouse.$(OBJEXT) -@@ -3777,6 +3765,7 @@ mostlyclean-compile: - -rm -f linux/src/drivers/net/liblinux_a-pcnet32.$(OBJEXT) - -rm -f linux/src/drivers/net/liblinux_a-rtl8139.$(OBJEXT) - -rm -f linux/src/drivers/net/liblinux_a-seeq8005.$(OBJEXT) -+ -rm -f linux/src/drivers/net/liblinux_a-sis900.$(OBJEXT) - -rm -f linux/src/drivers/net/liblinux_a-sk_g16.$(OBJEXT) - -rm -f linux/src/drivers/net/liblinux_a-smc-ultra.$(OBJEXT) - -rm -f linux/src/drivers/net/liblinux_a-smc-ultra32.$(OBJEXT) -@@ -3835,6 +3824,7 @@ mostlyclean-compile: - -rm -f vm/lib_dep_tr_for_defs_a-memory_object_user.user.defs.$(OBJEXT) - -rm -f vm/memory_object.$(OBJEXT) - -rm -f vm/memory_object_default.user.$(OBJEXT) -+ -rm -f vm/memory_object_proxy.$(OBJEXT) - -rm -f vm/memory_object_user.user.$(OBJEXT) - -rm -f vm/vm_debug.$(OBJEXT) - -rm -f vm/vm_external.$(OBJEXT) -@@ -3925,6 +3915,7 @@ distclean-compile: - @AMDEP_TRUE@@am__include@ @am__quote@i386/i386at/$(DEPDIR)/cons_conf.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@i386/i386at/$(DEPDIR)/immc.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@i386/i386at/$(DEPDIR)/int_init.Po@am__quote@ -+@AMDEP_TRUE@@am__include@ @am__quote@i386/i386at/$(DEPDIR)/iopl.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@i386/i386at/$(DEPDIR)/kd.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@i386/i386at/$(DEPDIR)/kd_event.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@i386/i386at/$(DEPDIR)/kd_mouse.Po@am__quote@ -@@ -4094,6 +4085,7 @@ distclean-compile: - @AMDEP_TRUE@@am__include@ @am__quote@linux/src/drivers/net/$(DEPDIR)/liblinux_a-pcnet32.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@linux/src/drivers/net/$(DEPDIR)/liblinux_a-rtl8139.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@linux/src/drivers/net/$(DEPDIR)/liblinux_a-seeq8005.Po@am__quote@ -+@AMDEP_TRUE@@am__include@ @am__quote@linux/src/drivers/net/$(DEPDIR)/liblinux_a-sis900.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@linux/src/drivers/net/$(DEPDIR)/liblinux_a-sk_g16.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@linux/src/drivers/net/$(DEPDIR)/liblinux_a-smc-ultra.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@linux/src/drivers/net/$(DEPDIR)/liblinux_a-smc-ultra32.Po@am__quote@ -@@ -4152,6 +4144,7 @@ distclean-compile: - @AMDEP_TRUE@@am__include@ @am__quote@vm/$(DEPDIR)/lib_dep_tr_for_defs_a-memory_object_user.user.defs.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@vm/$(DEPDIR)/memory_object.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@vm/$(DEPDIR)/memory_object_default.user.Po@am__quote@ -+@AMDEP_TRUE@@am__include@ @am__quote@vm/$(DEPDIR)/memory_object_proxy.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@vm/$(DEPDIR)/memory_object_user.user.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@vm/$(DEPDIR)/vm_debug.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@vm/$(DEPDIR)/vm_external.Po@am__quote@ -@@ -5872,6 +5865,20 @@ linux/src/drivers/net/liblinux_a-seeq800 - @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ - @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblinux_a_CPPFLAGS) $(CPPFLAGS) $(liblinux_a_CFLAGS) $(CFLAGS) -c -o linux/src/drivers/net/liblinux_a-seeq8005.obj `if test -f 'linux/src/drivers/net/seeq8005.c'; then $(CYGPATH_W) 'linux/src/drivers/net/seeq8005.c'; else $(CYGPATH_W) '$(srcdir)/linux/src/drivers/net/seeq8005.c'; fi` - -+linux/src/drivers/net/liblinux_a-sis900.o: linux/src/drivers/net/sis900.c -+@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblinux_a_CPPFLAGS) $(CPPFLAGS) $(liblinux_a_CFLAGS) $(CFLAGS) -MT linux/src/drivers/net/liblinux_a-sis900.o -MD -MP -MF "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sis900.Tpo" -c -o linux/src/drivers/net/liblinux_a-sis900.o `test -f 'linux/src/drivers/net/sis900.c' || echo '$(srcdir)/'`linux/src/drivers/net/sis900.c; \ -+@am__fastdepCC_TRUE@ then mv -f "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sis900.Tpo" "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sis900.Po"; else rm -f "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sis900.Tpo"; exit 1; fi -+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='linux/src/drivers/net/sis900.c' object='linux/src/drivers/net/liblinux_a-sis900.o' libtool=no @AMDEPBACKSLASH@ -+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblinux_a_CPPFLAGS) $(CPPFLAGS) $(liblinux_a_CFLAGS) $(CFLAGS) -c -o linux/src/drivers/net/liblinux_a-sis900.o `test -f 'linux/src/drivers/net/sis900.c' || echo '$(srcdir)/'`linux/src/drivers/net/sis900.c -+ -+linux/src/drivers/net/liblinux_a-sis900.obj: linux/src/drivers/net/sis900.c -+@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblinux_a_CPPFLAGS) $(CPPFLAGS) $(liblinux_a_CFLAGS) $(CFLAGS) -MT linux/src/drivers/net/liblinux_a-sis900.obj -MD -MP -MF "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sis900.Tpo" -c -o linux/src/drivers/net/liblinux_a-sis900.obj `if test -f 'linux/src/drivers/net/sis900.c'; then $(CYGPATH_W) 'linux/src/drivers/net/sis900.c'; else $(CYGPATH_W) '$(srcdir)/linux/src/drivers/net/sis900.c'; fi`; \ -+@am__fastdepCC_TRUE@ then mv -f "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sis900.Tpo" "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sis900.Po"; else rm -f "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sis900.Tpo"; exit 1; fi -+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='linux/src/drivers/net/sis900.c' object='linux/src/drivers/net/liblinux_a-sis900.obj' libtool=no @AMDEPBACKSLASH@ -+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblinux_a_CPPFLAGS) $(CPPFLAGS) $(liblinux_a_CFLAGS) $(CFLAGS) -c -o linux/src/drivers/net/liblinux_a-sis900.obj `if test -f 'linux/src/drivers/net/sis900.c'; then $(CYGPATH_W) 'linux/src/drivers/net/sis900.c'; else $(CYGPATH_W) '$(srcdir)/linux/src/drivers/net/sis900.c'; fi` -+ - linux/src/drivers/net/liblinux_a-sk_g16.o: linux/src/drivers/net/sk_g16.c - @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblinux_a_CPPFLAGS) $(CPPFLAGS) $(liblinux_a_CFLAGS) $(CFLAGS) -MT linux/src/drivers/net/liblinux_a-sk_g16.o -MD -MP -MF "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sk_g16.Tpo" -c -o linux/src/drivers/net/liblinux_a-sk_g16.o `test -f 'linux/src/drivers/net/sk_g16.c' || echo '$(srcdir)/'`linux/src/drivers/net/sk_g16.c; \ - @am__fastdepCC_TRUE@ then mv -f "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sk_g16.Tpo" "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sk_g16.Po"; else rm -f "linux/src/drivers/net/$(DEPDIR)/liblinux_a-sk_g16.Tpo"; exit 1; fi -@@ -6333,74 +6340,6 @@ linux/pcmcia-cs/wireless/liblinux_pcmcia - @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='linux/pcmcia-cs/wireless/orinoco_cs.c' object='linux/pcmcia-cs/wireless/liblinux_pcmcia_cs_wireless_a-orinoco_cs.obj' libtool=no @AMDEPBACKSLASH@ - @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ - @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(liblinux_pcmcia_cs_wireless_a_CPPFLAGS) $(CPPFLAGS) $(liblinux_pcmcia_cs_wireless_a_CFLAGS) $(CFLAGS) -c -o linux/pcmcia-cs/wireless/liblinux_pcmcia_cs_wireless_a-orinoco_cs.obj `if test -f 'linux/pcmcia-cs/wireless/orinoco_cs.c'; then $(CYGPATH_W) 'linux/pcmcia-cs/wireless/orinoco_cs.c'; else $(CYGPATH_W) '$(srcdir)/linux/pcmcia-cs/wireless/orinoco_cs.c'; fi` --doc/$(am__dirstamp): -- @$(mkdir_p) doc -- @: > doc/$(am__dirstamp) -- --$(srcdir)/doc/mach.info: doc/mach.texi $(srcdir)/doc/version.texi -- restore=: && backupdir="$(am__leading_dot)am$$$$" && \ -- am__cwd=`pwd` && cd $(srcdir) && \ -- rm -rf $$backupdir && mkdir $$backupdir && \ -- if ($(MAKEINFO) --version) >/dev/null 2>&1; then \ -- for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \ -- if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \ -- done; \ -- else :; fi && \ -- cd "$$am__cwd"; \ -- if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I doc -I $(srcdir)/doc \ -- -o $@ $(srcdir)/doc/mach.texi; \ -- then \ -- rc=0; \ -- cd $(srcdir); \ -- else \ -- rc=$$?; \ -- cd $(srcdir) && \ -- $$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \ -- fi; \ -- rm -rf $$backupdir; exit $$rc -- --doc/mach.dvi: doc/mach.texi $(srcdir)/doc/version.texi doc/$(am__dirstamp) -- TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ -- MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I doc -I $(srcdir)/doc' \ -- $(TEXI2DVI) -o $@ `test -f 'doc/mach.texi' || echo '$(srcdir)/'`doc/mach.texi -- --doc/mach.pdf: doc/mach.texi $(srcdir)/doc/version.texi doc/$(am__dirstamp) -- TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ -- MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I doc -I $(srcdir)/doc' \ -- $(TEXI2PDF) -o $@ `test -f 'doc/mach.texi' || echo '$(srcdir)/'`doc/mach.texi -- --doc/mach.html: doc/mach.texi $(srcdir)/doc/version.texi doc/$(am__dirstamp) -- rm -rf $(@:.html=.htp) -- if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I doc -I $(srcdir)/doc \ -- -o $(@:.html=.htp) `test -f 'doc/mach.texi' || echo '$(srcdir)/'`doc/mach.texi; \ -- then \ -- rm -rf $@; \ -- if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \ -- mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \ -- else \ -- if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \ -- rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \ -- exit 1; \ -- fi --$(srcdir)/doc/stamp-vti: doc/mach.texi $(top_srcdir)/configure -- test -f doc/$(am__dirstamp) || $(MAKE) doc/$(am__dirstamp) -- @(dir=.; test -f ./doc/mach.texi || dir=$(srcdir); \ -- set `$(SHELL) $(top_srcdir)/build-aux/mdate-sh $$dir/doc/mach.texi`; \ -- echo "@set UPDATED $$1 $$2 $$3"; \ -- echo "@set UPDATED-MONTH $$2 $$3"; \ -- echo "@set EDITION $(VERSION)"; \ -- echo "@set VERSION $(VERSION)") > vti.tmp -- @cmp -s vti.tmp $(srcdir)/doc/version.texi \ -- || (echo "Updating $(srcdir)/doc/version.texi"; \ -- cp vti.tmp $(srcdir)/doc/version.texi) -- -@rm -f vti.tmp -- @cp $(srcdir)/doc/version.texi $@ -- --mostlyclean-vti: -- -rm -f vti.tmp -- --maintainer-clean-vti: -- -rm -f $(srcdir)/doc/stamp-vti $(srcdir)/doc/version.texi - .dvi.ps: - TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ - $(DVIPS) -o $@ $< -@@ -6446,9 +6385,7 @@ dist-info: $(INFO_DEPS) - done - - mostlyclean-aminfo: -- -rm -rf mach.aux mach.cp mach.cps mach.fn mach.fns mach.ky mach.kys mach.log \ -- mach.pg mach.tmp mach.toc mach.tp mach.vr doc/mach.dvi \ -- doc/mach.pdf doc/mach.ps doc/mach.html -+ -rm -rf - - maintainer-clean-aminfo: - @list='$(INFO_DEPS)'; for i in $$list; do \ -@@ -6750,7 +6687,7 @@ check-TESTS: $(TESTS) - distdir: $(DISTFILES) - $(am__remove_distdir) - mkdir $(distdir) -- $(mkdir_p) $(distdir)/. $(distdir)/build-aux $(distdir)/device $(distdir)/doc $(distdir)/i386 $(distdir)/i386/i386 $(distdir)/i386/include/mach/i386 $(distdir)/i386/linux $(distdir)/include/device $(distdir)/include/mach $(distdir)/include/mach/exec $(distdir)/ipc $(distdir)/kern $(distdir)/linux $(distdir)/linux/dev $(distdir)/linux/pcmcia-cs $(distdir)/linux/pcmcia-cs/glue $(distdir)/linux/src $(distdir)/linux/src/drivers/net $(distdir)/linux/src/drivers/scsi $(distdir)/tests $(distdir)/vm -+ $(mkdir_p) $(distdir)/. $(distdir)/build-aux $(distdir)/device $(distdir)/i386 $(distdir)/i386/i386 $(distdir)/i386/include/mach/i386 $(distdir)/i386/linux $(distdir)/include/device $(distdir)/include/mach $(distdir)/include/mach/exec $(distdir)/ipc $(distdir)/kern $(distdir)/linux $(distdir)/linux/dev $(distdir)/linux/pcmcia-cs $(distdir)/linux/pcmcia-cs/glue $(distdir)/linux/src $(distdir)/linux/src/drivers/net $(distdir)/linux/src/drivers/scsi $(distdir)/tests $(distdir)/vm - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ -@@ -6929,7 +6866,6 @@ distclean-generic: - -rm -f ddb/$(am__dirstamp) - -rm -f device/$(DEPDIR)/$(am__dirstamp) - -rm -f device/$(am__dirstamp) -- -rm -f doc/$(am__dirstamp) - -rm -f i386/i386/$(DEPDIR)/$(am__dirstamp) - -rm -f i386/i386/$(am__dirstamp) - -rm -f i386/i386at/$(DEPDIR)/$(am__dirstamp) -@@ -7007,7 +6943,7 @@ dvi-am: $(DVIS) - - html: html-recursive - --html-am: $(HTMLS) html-local -+html-am: $(HTMLS) - - info: info-recursive - -@@ -7063,20 +6999,20 @@ maintainer-clean: maintainer-clean-recur - -rm -rf ./$(DEPDIR) chips/$(DEPDIR) ddb/$(DEPDIR) device/$(DEPDIR) i386/i386/$(DEPDIR) i386/i386at/$(DEPDIR) i386/intel/$(DEPDIR) ipc/$(DEPDIR) kern/$(DEPDIR) linux/dev/arch/i386/kernel/$(DEPDIR) linux/dev/drivers/block/$(DEPDIR) linux/dev/drivers/net/$(DEPDIR) linux/dev/drivers/scsi/$(DEPDIR) linux/dev/glue/$(DEPDIR) linux/dev/init/$(DEPDIR) linux/dev/kernel/$(DEPDIR) linux/dev/lib/$(DEPDIR) linux/dev/net/core/$(DEPDIR) linux/pcmcia-cs/clients/$(DEPDIR) linux/pcmcia-cs/glue/$(DEPDIR) linux/pcmcia-cs/modules/$(DEPDIR) linux/pcmcia-cs/wireless/$(DEPDIR) linux/src/arch/i386/kernel/$(DEPDIR) linux/src/arch/i386/lib/$(DEPDIR) linux/src/drivers/block/$(DEPDIR) linux/src/drivers/net/$(DEPDIR) linux/src/drivers/pci/$(DEPDIR) linux/src/drivers/scsi/$(DEPDIR) linux/src/lib/$(DEPDIR) util/$(DEPDIR) vm/$(DEPDIR) - -rm -f Makefile - maintainer-clean-am: distclean-am maintainer-clean-aminfo \ -- maintainer-clean-generic maintainer-clean-vti -+ maintainer-clean-generic - - mostlyclean: mostlyclean-recursive - - mostlyclean-am: mostlyclean-aminfo mostlyclean-compile \ -- mostlyclean-generic mostlyclean-vti -+ mostlyclean-generic - - pdf: pdf-recursive - --pdf-am: $(PDFS) pdf-local -+pdf-am: $(PDFS) - - ps: ps-recursive - --ps-am: $(PSS) ps-local -+ps-am: $(PSS) - - uninstall-am: uninstall-exec_bootPROGRAMS uninstall-exec_msgidsDATA \ - uninstall-include_deviceHEADERS uninstall-include_machHEADERS \ -@@ -7093,19 +7029,18 @@ uninstall-info: uninstall-info-recursive - distcheck distclean distclean-compile distclean-generic \ - distclean-hdr distclean-recursive distclean-tags \ - distcleancheck distdir distuninstallcheck dvi dvi-am html \ -- html-am html-local info info-am install install-am \ -- install-data install-data-am install-data-hook install-exec \ -- install-exec-am install-exec_bootPROGRAMS \ -- install-exec_msgidsDATA install-include_deviceHEADERS \ -- install-include_machHEADERS install-include_mach_eXecHEADERS \ -+ html-am info info-am install install-am install-data \ -+ install-data-am install-data-hook install-exec install-exec-am \ -+ install-exec_bootPROGRAMS install-exec_msgidsDATA \ -+ install-include_deviceHEADERS install-include_machHEADERS \ -+ install-include_mach_eXecHEADERS \ - install-include_mach_i386HEADERS install-info install-info-am \ - install-man install-strip installcheck installcheck-am \ - installdirs installdirs-am maintainer-clean \ - maintainer-clean-aminfo maintainer-clean-generic \ -- maintainer-clean-recursive maintainer-clean-vti mostlyclean \ -- mostlyclean-aminfo mostlyclean-compile mostlyclean-generic \ -- mostlyclean-recursive mostlyclean-vti pdf pdf-am pdf-local ps \ -- ps-am ps-local tags tags-recursive uninstall uninstall-am \ -+ maintainer-clean-recursive mostlyclean mostlyclean-aminfo \ -+ mostlyclean-compile mostlyclean-generic mostlyclean-recursive \ -+ pdf pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ - uninstall-exec_bootPROGRAMS uninstall-exec_msgidsDATA \ - uninstall-include_deviceHEADERS uninstall-include_machHEADERS \ - uninstall-include_mach_eXecHEADERS \ -@@ -7242,87 +7177,6 @@ dist-hook-linux: - # - - # ix86. -- --# Prepare a checkout in `$(web)/' of the web pages of the GNU Mach Reference --# Manual, using the same account that was used for the source code. Then --# install the potentially updated files into `$(web)/'. --.PHONY: $(web) --$(web): -- if test -d $@/CVS; then :; else \ -- mkdir -p $@ $@/CVS && \ -- sed -e s%cvsroot%web% \ -- < $(top_srcdir)/CVS/Root \ -- > $@/CVS/Root && \ -- echo hurd/gnumach-doc \ -- > $@/CVS/Repository && \ -- : > $@/CVS/Entries; \ -- fi -- cd $@/ && \ -- cvs update -- $(MAKE) $(AM_MAKEFLAGS) \ -- html \ -- ps \ -- pdf -- --# Update the files, if such a checkout exists. --html-local: -- if test -d $(web); then \ -- ( cd $(web)/ && \ -- for f in *.html; do \ -- if test -f ../../$(HTMLS)/"$$f"; then :; else \ -- echo "\`$$f' isn't anymore. Removing." && \ -- rm "$$f" && \ -- cvs remove "$$f"; \ -- fi; \ -- done ) && \ -- cp $(HTMLS)/*.html $(web)/ && \ -- cd $(web)/ && \ -- { cvs add *.html || :; }; \ -- fi --ps-local: -- if test -d $(web); then \ -- ( cd $(web)/ && \ -- for f in *.ps; do \ -- case \ $(PSS)\ in \ -- \ doc/"$$f"\ ) :;; \ -- *) echo "\`$$f' isn't anymore. Removing." && \ -- rm -f "$$f" "$$f".ps && \ -- cvs remove "$$f" "$$f".ps ;; \ -- esac; \ -- done ) && \ -- cp $(PSS) $(web)/ && \ -- cd $(web)/ && \ -- for f in *.ps; do \ -- gzip -9 < "$$f" > "$$f".gz; \ -- done && \ -- { cvs add *.ps *.ps.gz || :; }; \ -- fi --pdf-local: -- if test -d $(web); then \ -- ( cd $(web)/ && \ -- for f in *.pdf; do \ -- case \ $(PDFS)\ in \ -- \ doc/"$$f"\ ) :;; \ -- *) echo "\`$$f' isn't anymore. Removing." && \ -- rm "$$f" && \ -- cvs remove "$$f";; \ -- esac; \ -- done ) && \ -- cp $(PDFS) $(web)/ && \ -- cd $(web)/ && \ -- { cvs add *.pdf || :; }; \ -- fi --# TODO. There doesn't seem to be a hook or `-local' target suitable for this. --$(srcdir)/doc/version.texi: $(srcdir)/doc/stamp-vti -- @if test -d $(web); then :; \ -- elif grep -q :ext: $(top_srcdir)/CVS/Root 2> /dev/null; then \ -- echo "*** As it seems that you'd be allowed to check in the" \ -- "possible resulting fixes, you may cosider running" \ -- " \`make $(web)' to get a checkout of the web pages of the" \ -- "GNU Mach manual and have possible changes installed into" \ -- "\`$(web)/', ready for checking them in in there." && \ -- sleep 2; \ -- fi - gnumach-undef: gnumach.$(OBJEXT) - $(NM) -u $< | sed 's/ *U *//;s/^_*//' | sort -u > $@ - gnumach-undef-bad: gnumach-undef Makefile diff --git a/debian/patches/series b/debian/patches/series index f47c408..7f434cb 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -7,11 +7,5 @@ 15_mem_obj_proxy.patch 16_ide_multsect.patch 20_mmx_support.patch -21_aligned_zalloc.patch 24_pci_irq_fix.patch -30_net_multicast.patch 40_iopl_mmap.patch -50_ide_bm.patch -60_bad_user_access_length_fix.patch -70_cld.patch -90_autoconf_autogen.patch |
