Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: NetBSD in SIMH vax with 512 MB RAM



On Thu 23 Mar 2023 at 11:38:25 +1100, Kalvis Duckmanton wrote:
> On 22/3/23 23:40, Mouse wrote:
> > That's odd.  Maybe it's reserving enough space for _two_ copies of
> > physical memory or something?
> 
> I think that's exactly what's happening - vax/pmap.c:calc_kvmsize() starts
> like this:
> 
>    static vsize_t
>    calc_kvmsize(vsize_t usrptsize)
>    {
>             vsize_t kvmsize, bufsz;
> 
>             /*
>              * Compute the number of pages kmem_arena will have.
>              */
>             kmeminit_nkmempages();
> 
>             /* All physical memory */
>             kvmsize = avail_end;
>             /* User Page table area. This may be large */
>             kvmsize += (usrptsize * sizeof(struct pte));
>             /* Kernel stacks per process */
>             kvmsize += (USPACE * maxproc);
>             /* kernel malloc arena */
>             kvmsize += nkmempages * PAGE_SIZE;
>             /* IO device register space */
>             kvmsize += (IOSPSZ * VAX_NBPG);
>             /* Pager allocations */
>             kvmsize += (pager_map_size + MAXBSIZE);
>             /* Anon pool structures */
>             kvmsize += (physmem * sizeof(struct vm_anon));
>             /* kernel malloc arena */
>             kvmsize += avail_end;
> 
> avail_end is the size of physical memory.  Note that it's being added to
> kvmsize twice; the returned kvmsize is then used to calculate the length of
> the system page table.

Thinking about why it is like that, and not simply an overlooked
duplication, I see "All physical memory" plus "kernel malloc arena"...
ok, sounds reasonable, somewhat.

But there are also two "kernel malloc arena"s:

>             /* kernel malloc arena */
>             kvmsize += nkmempages * PAGE_SIZE;

>             /* kernel malloc arena */
>             kvmsize += avail_end;

which brings back the sneaky doubt that there is a bit too much added
here that could be reduced.

-Olaf.
-- 
___ "Buying carbon credits is a bit like a serial killer paying someone else to
\X/  have kids to make his activity cost neutral." -The BOFH    falu.nl@rhialto

Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index