History log of /netbsd/sys/arch/mips/mips/vm_machdep.c (Results 1 – 25 of 166)
Revision Date Author Comments
# 3a4b11ba 25-Feb-2023 skrll <skrll@NetBSD.org>

Convert some assignments into KASSERTs.

l_md is zeroised by lwp_create with

memset(&l2->l_startzero, 0, sizeof(*l2) -
offsetof(lwp_t, l_startzero));


# 57f8e18f 29-Sep-2022 skrll <skrll@NetBSD.org>

Remove unnecessary include of <sys/malloc.h>.


# 3223acab 19-Oct-2021 rin <rin@NetBSD.org>

Revert previous:

http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/mips/mips/vm_machdep.c#rev1.163

> cpu_uarea_alloc: For ILP32, do not try to allocate physical memory above
> pmap_limits.avail_end.

Revert previous:

http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/mips/mips/vm_machdep.c#rev1.163

> cpu_uarea_alloc: For ILP32, do not try to allocate physical memory above
> pmap_limits.avail_end.
>
> Fix NULL dereference in uvm_pglistalloc_contig_aggressive().

"high" argument larger than pmap_limits.avail_end is just legal for
uvm_pglistalloc(); uvm_pglistalloc_contig_aggressive() and friends
allocate memory between uvm_physseg_get_avail_start() and
uvm_physseg_get_avail_end().

It turned out that the NULL dereference took place as PHYS_TO_VM_PAGE()
aka uvm_phys_to_vm_page() returns NULL for a valid pa. I've not figured
out why...

Thanks chs@ for correcting my misunderstanding.

show more ...


# 0a3e3b19 14-Oct-2021 rin <rin@NetBSD.org>

cpu_uarea_alloc: For ILP32, do not try to allocate physical memory above
pmap_limits.avail_end.

Fix NULL dereference in uvm_pglistalloc_contig_aggressive().


# 765a2cc4 23-Aug-2020 simonb <simonb@NetBSD.org>

Use a 16kB USPACE (and larger kernel stack) for LP64 kernels. Invert
the logic for setting the USPACE size. Define a desired USPACE size
(16kB for LP64, 8kB otherwise) then divide by PAGE_SIZE to g

Use a 16kB USPACE (and larger kernel stack) for LP64 kernels. Invert
the logic for setting the USPACE size. Define a desired USPACE size
(16kB for LP64, 8kB otherwise) then divide by PAGE_SIZE to get UPAGES.

Fixes random segmap lossage, since the uarea usually sits immediately
above the segmap for a process. Thanks to mrg@, skrll@ and dholland@
for testing, debugging and general help tracking down this problem.

show more ...


# 7f4fdbff 09-Aug-2020 skrll <skrll@NetBSD.org>

Add a comment


# 16e12c90 20-Nov-2019 pgoyette <pgoyette@NetBSD.org>

Move all non-emulation-specific coredump code into the coredump module,
and remove all #ifdef COREDUMP conditional compilation. Now, the
coredump module is completely separated from the emulation mo

Move all non-emulation-specific coredump code into the coredump module,
and remove all #ifdef COREDUMP conditional compilation. Now, the
coredump module is completely separated from the emulation modules, and
they can all be independently loaded and unloaded.

Welcome to 9.99.18 !

show more ...


# 7feaf6cf 14-Jul-2017 christos <christos@NetBSD.org>

KASSERT Fires for MIPS1, disable.


# 8b3085c6 11-May-2017 skrll <skrll@NetBSD.org>

Fix non-DIAGNOSTIC build


# b2ae7dcf 10-May-2017 skrll <skrll@NetBSD.org>

Add a KASSERT


# 108c6254 10-May-2017 skrll <skrll@NetBSD.org>

Make cpu_uarea_{alloc,free} conditional on PMAP_{,UN}MAP_POOLPAGE and
use PMAP_{,UN}_POOLPAGE to ensure cache aliases are handled correctly
and for all the pages used.


# bb55a7db 10-May-2017 skrll <skrll@NetBSD.org>

Allow cpu_uarea_alloc to return NULL for non-system LWPs in the non-_LP64
case. That way TLB mapped KVA can be found by uarea_poolpage_alloc.


# 0d7c2929 10-May-2017 skrll <skrll@NetBSD.org>

Improve comment wording.


# 4478835c 09-Aug-2016 skrll <skrll@NetBSD.org>

Sign extended uarea va appropriately for mips_dcache_inv_range


# 0e0d7758 09-Aug-2016 skrll <skrll@NetBSD.org>

Initialise md_upte for the new lwp
KASSERT that we're always direct mapped when we expect to be


# 08bf0b47 09-Aug-2016 skrll <skrll@NetBSD.org>

Fixup the #if to reflect when we can have non-direct mappable USPACE


# 137d94ff 31-Jul-2016 skrll <skrll@NetBSD.org>

Fix up uarea page mapping compile conditional - we only need code if
USPACE is > PAGE_SIZE.


# 3ae5e334 30-Jul-2016 matt <matt@NetBSD.org>

For LP64 and N32 make sure KX is set in the trapframe as well.


# c6282c1a 30-Jul-2016 skrll <skrll@NetBSD.org>

KASSERT for KX in __mips_n32 as well.


# ab65ba63 14-Jul-2016 skrll <skrll@NetBSD.org>

Trailing whitespace


# f694fbd0 11-Jul-2016 matt <matt@NetBSD.org>

Change MIPS to use the common pmap code.
Switch to 8KB pages on CPUs with a R4K MMU.
Simplify cache code.
Merge in most of changes from matt-mips64 branch


# d1e404e7 11-Jun-2015 matt <matt@NetBSD.org>

Add struct pmap_limits and pm_{min,max}addr from uvm/pmap/map.h and use it to
store avail_start, avail_end, virtual_start, and virtual_end.
Remove iospace and let emips just bump pmap_limits.virtual_

Add struct pmap_limits and pm_{min,max}addr from uvm/pmap/map.h and use it to
store avail_start, avail_end, virtual_start, and virtual_end.
Remove iospace and let emips just bump pmap_limits.virtual_start to get the
VA space it needs.
pmap_segtab.c is almost identical to uvm/pmap/pmap_segtab.c now. It won't
be long until we switch to the uvm/pmap one.

show more ...


# 9ec40257 06-Jun-2015 matt <matt@NetBSD.org>

Convert a KASSERT to KASSERTMSG


# 6d11dfb3 23-Apr-2014 skrll <skrll@NetBSD.org>

Fix a logic inversion introduced with the matt-nb5-mips64 for
pmap_{zero,copy}_page cache alias handing. The check previously used
PG_MD_UNCACHED_P, where it now uses PG_MD_CACHED_P, when considering

Fix a logic inversion introduced with the matt-nb5-mips64 for
pmap_{zero,copy}_page cache alias handing. The check previously used
PG_MD_UNCACHED_P, where it now uses PG_MD_CACHED_P, when considering if
a cache invalidation is required.

Additionally flush the cache for the uarea va to avoid potential (future)
cache aliases in cpu_uarea_free when handing pages back to uvm for later
use.

ok matt@

Hopefully this addresses the instability reported in the following PRs:

PR/44900 - R5000/Rm5200 mips ports are broken
PR/46170 - NetBSD/cobalt 6.0_BETA does not boot
PR/46890 - upcoming NetBSD 6.0 release is very unstable / unusable on cobalt qube 2
PR/48628 - cobalt and hpcmips ports are dead

show more ...


# 154d3024 19-Feb-2012 rmind <rmind@NetBSD.org>

Remove COMPAT_SA / KERN_SA. Welcome to 6.99.3!
Approved by core@.


1234567