Subject: Re: UVM failure :(
To: Michael L. Hitch <mhitch@lightning.oscs.montana.edu>
From: Simon Burge <simonb@telstra.com.au>
List: port-pmax
Date: 11/29/1998 14:01:13
On Fri, 27 Nov 1998 11:45:46 -0700  "Michael L. Hitch" wrote:

>   The problem is that UVM is allocating memory for swapctl that isn't
> included in the pmax kernel virtual memory size calculations.  The Mach
> VM swap used a fixed-size allocation, which is still being included.
> 
>   Try the following change to pmap.c and see if that helps.

Thanks - this works for me.  Without looking further, and from your
above comments, it sounds like there'll still be some swap-size limit?
Btw, I changed the "#if 0" to "#ifdef UVM" and reversed the clauses when
I patched my system - should this change (either way) be commited to the
tree?

Simon.
--
> --- pmap.c.orig Sun Nov 15 05:19:04 1998
> +++ pmap.c      Mon Nov 23 11:46:59 1998
> @@ -252,11 +272,17 @@
>         /*
>          * Allocate a PTE table for the kernel.
>          * The '1024' comes from PAGER_MAP_SIZE in vm_pager_init().
> +        * XXX - What about UVM???
>          * This should be kept in sync.
>          * We also reserve space for kmem_alloc_pageable() for vm_fork().
>          */
>         Sysmapsize = (VM_KMEM_SIZE + VM_MBUF_SIZE + VM_PHYS_SIZE +
> +#if 0
>                 nbuf * MAXBSIZE + 16 * NCARGS) / NBPG + 1024 + 256;
> +#else
> +               nbuf * MAXBSIZE + 16 * NCARGS) / NBPG + 2048 +
> +               (maxproc * UPAGES);
> +#endif
>  #ifdef SYSVSHM
>         Sysmapsize += shminfo.shmall;
>  #endif