[Top][All Lists]

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

[SCM] GNU Mach branch, master, updated. v1.8-297-gd4311dd

From: Samuel Thibault
Subject: [SCM] GNU Mach branch, master, updated. v1.8-297-gd4311dd
Date: Fri, 27 Aug 2021 16:49:05 -0400 (EDT)

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  d4311dd342bce90b8e362426e25b71076b9f371a (commit)
       via  2125e974fe7d9773f3d598a064646dc757da3622 (commit)
      from  4dbaa718038fadc51d9b95d2383868a229d91457 (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 d4311dd342bce90b8e362426e25b71076b9f371a
Author: Samuel Thibault <>
Date:   Fri Aug 27 22:47:29 2021 +0200

    linux block: Fix checking block sector.
    * linux/dev/glue/block.c (check_rw_block): Return 0 on no error.

commit 2125e974fe7d9773f3d598a064646dc757da3622
Author: Samuel Thibault <>
Date:   Fri Aug 27 22:40:50 2021 +0200

    vm_page_grab: allow allocating in high memory
    vm_page_grab was systematically using the VM_PAGE_SEL_DIRECTMAP selector
    to play safe with existing code.
    This adds a flags parameter to let callers of vm_page_grab specify their
    Linux drivers need 32bit dmas, Xen drivers use kvtophys to clear some
    data. Callers of kmem_pagealloc_physmem and vm_page_grab_phys_addr also use
    kvtophys. Otherwise allocations can go to highmem.
    This fixes the allocation jam in the directmap segment.
    * vm/vm_page.h (VM_PAGE_DMA, VM_PAGE_DMA32, VM_PAGE_DIRECTMAP,
    VM_PAGE_HIGHMEM): New macros.
    (vm_page_grab): Add flags parameter.
    * vm/vm_resident.c (vm_page_grab): Choose allocation selector according
    to flags parameter.
    (vm_page_convert, vm_page_alloc): Pass VM_PAGE_HIGHMEM to vm_page_grab.
    (vm_page_grab_phys_addr): Pass VM_PAGE_DIRECTMAP to vm_page_grab.
    * vm/vm_fault.c (vm_fault_page): Pass VM_PAGE_HIGHMEM to vm_page_grab.
    * vm/vm_map.c (vm_map_copy_steal_pages): Pass VM_PAGE_HIGHMEM to 
    * kern/slab.c (kmem_pagealloc_physmem): Pass VM_PAGE_DIRECTMAP to 
    * i386/intel/pmap.c (pmap_page_table_page_alloc): Pass VM_PAGE_DIRECTMAP to
    * xen/block.c (device_read): Pass VM_PAGE_DIRECTMAP to vm_page_grab.
    * linux/dev/glue/block.c (alloc_buffer): Pass VM_PAGE_DMA32 to vm_page_grab.


Summary of changes:
 i386/intel/pmap.c      |  2 +-
 kern/slab.c            |  2 +-
 linux/dev/glue/block.c |  6 ++++--
 vm/vm_fault.c          |  4 ++--
 vm/vm_map.c            |  2 +-
 vm/vm_page.h           |  7 ++++++-
 vm/vm_resident.c       | 23 ++++++++++++++++++-----
 xen/block.c            |  2 +-
 8 files changed, 34 insertions(+), 14 deletions(-)

GNU Mach

reply via email to

[Prev in Thread] Current Thread [Next in Thread]