[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] GNU Mach branch, master, updated. v1.6-45-gbb6d33f
From: |
Richard Braun |
Subject: |
[SCM] GNU Mach branch, master, updated. v1.6-45-gbb6d33f |
Date: |
Mon, 22 Feb 2016 21:12:40 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Mach".
The branch, master has been updated
via bb6d33fef898d931dcebb882be259e4ed4d727d8 (commit)
via 724326b4d590d94ff81eb2e5817cc79a9bade7e4 (commit)
via b325f426b367d813b23799aeb058d7d3ac81f13d (commit)
via 9e7f22971be0f427601926b42b640426ab7da4db (commit)
from e3cdb6f6ad3f2ef690cc5822178efb3bde93fa9a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit bb6d33fef898d931dcebb882be259e4ed4d727d8
Author: Richard Braun <address@hidden>
Date: Mon Feb 22 21:59:07 2016 +0100
Remove kmem cache flags from the debugging interface
* include/mach_debug/slab_info.h (CACHE_FLAGS_NO_CPU_POOL,
CACHE_FLAGS_SLAB_EXTERNAL, CACHE_FLAGS_NO_RECLAIM,
CACHE_FLAGS_VERIFY, CACHE_FLAGS_DIRECT): Remove macros.
* kern/slab.c (host_slab_info): Pass raw cache flags to caller.
commit 724326b4d590d94ff81eb2e5817cc79a9bade7e4
Author: Richard Braun <address@hidden>
Date: Mon Feb 22 21:59:07 2016 +0100
Fix slab allocator option handling
The slab allocator has grown to use multiple ways to allocate slabs
as well as track them, which got a little messy. One consequence is
the breaking of the KMEM_CF_VERIFY option. In order to make the code
less confusing, this change expresses all options as explicit cache
flags and clearly defines their relationships.
The special kmem_slab and vm_map_entry caches are initialized
accordingly.
* kern/slab.c (KMEM_CF_DIRECTMAP): Rename to ...
(KMEM_CF_PHYSMEM): ... this new macro.
(KMEM_CF_DIRECT): Restore macro.
(KMEM_CF_USE_TREE, KMEM_CF_USE_PAGE): New macros.
(KMEM_CF_VERIFY): Update value.
(kmem_pagealloc_directmap): Rename to...
(kmem_pagealloc_physmem): ... this new function.
(kmem_pagefree_directmap): Rename to ...
(kmem_pagefree_physmem): ... this new function.
(kmem_pagealloc, kmem_pagefree): Update macro names.
(kmem_slab_use_tree): Remove function.
(kmem_slab_create, kmem_slab_destroy): Update according to the new
cache flags.
(kmem_cache_compute_sizes): Rename to ...
(kmem_cache_compute_properties): ... this new function, and update
to properly set cache flags.
(kmem_cache_init): Update call to kmem_cache_compute_properties.
(kmem_cache_alloc_from_slab): Check KMEM_CF_USE_TREE instead of
calling the defunct kmem_slab_use_tree function.
(kmem_cache_free_to_slab): Update according to the new cache flags.
kmem_cache_free_verify): Add assertion.
(slab_init): Update initialization of kmem_slab_cache.
* kern/slab.h (KMEM_CACHE_DIRECTMAP): Rename to ...
(KMEM_CACHE_PHYSMEM): ... this new macro.
* vm/vm_map.c (vm_map_init): Update initialization of vm_map_entry_cache.
commit b325f426b367d813b23799aeb058d7d3ac81f13d
Author: Richard Braun <address@hidden>
Date: Mon Feb 22 21:59:07 2016 +0100
Optimize slab lookup on the free path
Caches that use external slab data but allocate slabs from the direct
physical mapping can look up slab data in constant time by associating
the slab data directly with the underlying page.
* kern/slab.c (kmem_slab_use_tree): Take KMEM_CF_DIRECTMAP into account.
(kmem_slab_create): Set page private data if relevant.
(kmem_slab_destroy): Clear page private data if relevant.
(kmem_cache_free_to_slab): Use page private data if relevant.
* vm/vm_page.c (vm_page_init_pa): Set `priv' member to NULL.
* vm/vm_page.h (vm_page_set_priv, vm_page_get_priv): New functions.
commit 9e7f22971be0f427601926b42b640426ab7da4db
Author: Richard Braun <address@hidden>
Date: Mon Feb 22 21:59:07 2016 +0100
Fix unused variable warnings
* kern/slab.c (slab_init): Remove unused variables.
-----------------------------------------------------------------------
Summary of changes:
include/mach_debug/slab_info.h | 6 --
kern/slab.c | 121 +++++++++++++++++++++++++++-------------
kern/slab.h | 2 +-
vm/vm_map.c | 2 +-
vm/vm_page.c | 1 +
vm/vm_page.h | 16 +++++
6 files changed, 100 insertions(+), 48 deletions(-)
hooks/post-receive
--
GNU Mach
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] GNU Mach branch, master, updated. v1.6-45-gbb6d33f,
Richard Braun <=