Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Dec 2013 20:42:08 -0800
From:      Adrian Chadd <adrian@freebsd.org>
To:        Warner Losh <imp@freebsd.org>
Cc:        svn-src-releng@freebsd.org, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "src-committers@freebsd.org" <src-committers@freebsd.org>
Subject:   Re: svn commit: r259746 - releng/10.0/sys/arm/at91
Message-ID:  <CAJ-Vmo=Bq8grVH_zQ7GnDS2gVvU_YbqEjV1kkw4jMkGMSjQ8jg@mail.gmail.com>
In-Reply-To: <201312222220.rBMMKI54055437@svn.freebsd.org>
References:  <201312222220.rBMMKI54055437@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Are there any compile and/or run time checks to ensure that memory
regions aren't overlapping and to bitch if they are?


-a

On 22 December 2013 14:20, Warner Losh <imp@freebsd.org> wrote:
> Author: imp
> Date: Sun Dec 22 22:20:17 2013
> New Revision: 259746
> URL: http://svnweb.freebsd.org/changeset/base/259746
>
> Log:
>   Merge from stable/10 r259380:
>
>   MFC r259038, r259039:
>
>    Bump the maximum VM space from 3 * memory size to a fixed
>    256MB. That's all we have room for since we map the hardware registers
>    starting at 0xd0000000. This allows my 64MB AT91SAM9G20 to boot again
>    after the unmmaped I/O changes were MFC'd at r251897. Other
>    subplatforms may need similar treatment.
>
>    Although not strictly required to boot a 64MB board, bump
>    vm_max_virtual_address to be KERNVIRTADDR + 256MB. This allows some
>    future shock protection since the KVA requirements have gone up since
>    the unmapped changes have gone in, as well as preventing us from
>    overlapping with the hardware devices, which we map at 0xd0000000,
>    which we'd hit with anything more than 85MB...
>
>   Approved by:  re@ (gjb@)
>
> Modified:
>   releng/10.0/sys/arm/at91/at91_machdep.c
> Directory Properties:
>   releng/10.0/   (props changed)
>
> Modified: releng/10.0/sys/arm/at91/at91_machdep.c
> ==============================================================================
> --- releng/10.0/sys/arm/at91/at91_machdep.c     Sun Dec 22 21:53:08 2013        (r259745)
> +++ releng/10.0/sys/arm/at91/at91_machdep.c     Sun Dec 22 22:20:17 2013        (r259746)
> @@ -631,7 +631,8 @@ initarm(struct arm_boot_params *abp)
>
>         pmap_curmaxkvaddr = afterkern + L1_S_SIZE * (KERNEL_PT_KERN_NUM - 1);
>         arm_dump_avail_init(memsize, sizeof(dump_avail)/sizeof(dump_avail[0]));
> -       vm_max_kernel_address = KERNVIRTADDR + 3 * memsize;
> +       /* Always use the 256MB of KVA we have available between the kernel and devices */
> +       vm_max_kernel_address = KERNVIRTADDR + (256 << 20);
>         pmap_bootstrap(freemempos, &kernel_l1pt);
>         msgbufp = (void*)msgbufpv.pv_va;
>         msgbufinit(msgbufp, msgbufsize);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-Vmo=Bq8grVH_zQ7GnDS2gVvU_YbqEjV1kkw4jMkGMSjQ8jg>