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  e56301bd2528ed83bc695b4acb7c323521d2c6c3 (commit)
       via  31e2a0c8ed4565d52548e9851010cf637e23ef14 (commit)
       via  e0a8a6fd98af55a73410bf244efc2bb68b04ec63 (commit)
       via  6c37f565815f0e2d7a1261c3fb02b5476e057de7 (commit)
      from  9d10f486be9d328870fab5979de48695d824e0c4 (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 e56301bd2528ed83bc695b4acb7c323521d2c6c3
Author: Paulo Duarte <[email protected]>
Date:   Sun May 24 02:43:18 2026 +0100

    tests: add aarch64 arm to start.S
    
    The userland test stubs run as freestanding multiboot modules: the
    kernel exec path hands them control at _start with argc/argv/envp
    laid out sysv-style on the stack, and they call c_start(sp) to find
    their arguments.  The i386 and x86_64 arms already implement this;
    add the aarch64 equivalent (mov x0, sp; bl c_start) so test modules
    can be cross-compiled with aarch64-unknown-none-elf-gcc and entered
    by Bugaev's pcb/exec path.
    
    bl rather than a tail-call b keeps the saved-LR contract intact in
    case anything unwinds out of the userland prelude.
    Message-ID: <[email protected]>

commit 31e2a0c8ed4565d52548e9851010cf637e23ef14
Author: Paulo Duarte <[email protected]>
Date:   Sun May 24 02:43:10 2026 +0100

    ipc: declare copyinmsg / copyoutmsg in <ipc/copy_user.h>
    
    The copyinmsg() and copyoutmsg() routines are defined per-arch (in
    i386/i386/locore.S and friends) but have never had cross-arch
    declarations.  Each kern/ caller has historically picked them up
    through an arch-specific header, or via implicit declaration.
    
    Declare them in <ipc/copy_user.h> alongside the other copy_user
    helpers, with copyoutmsg becoming an alias for copyout when not
    building a 64-bit kernel with a 32-bit userland (the only case
    where the two diverge today).  Add the missing include to
    kern/exception.c which uses both.
    Message-ID: <[email protected]>

commit e0a8a6fd98af55a73410bf244efc2bb68b04ec63
Author: Paulo Duarte <[email protected]>
Date:   Sun May 24 02:43:09 2026 +0100

    mach: add EM_AARCH64 to the ELF machine constant list
    
    The Mach exec/elf.h pseudo-header already enumerates a handful of
    machine types (PARISC, PPC, x86_64, …) but not aarch64.  Add it so
    exec-format code can recognise aarch64 ELF binaries by EM number.
    Defined per the ARM-supplied ELF supplement (the same value Linux,
    glibc, and FreeBSD have used since 2014).
    Message-ID: <[email protected]>

commit 6c37f565815f0e2d7a1261c3fb02b5476e057de7
Author: Paulo Duarte <[email protected]>
Date:   Sun May 24 02:43:06 2026 +0100

    aarch64: add per-arch lock.h shim for kern/lock.h's machine include
    
    kern/lock.h on current master unconditionally does
    
        #include <machine/lock.h>
    
    at line 61 (with a /*XXX*/ marker), even though the body only
    references its definitions when NCPUS > 1.  Bugaev's wip-aarch64
    worked around this by editing kern/lock.h itself — wrapping the
    include in `#if NCPUS > 1` — which would touch a shared file
    upstream maintains.
    
    Provide the include as a per-arch shim instead: an empty
    aarch64/aarch64/lock.h.  machine/ resolves to the active TARGET's
    arch directory at build time, so kern/lock.h's include picks this
    up on aarch64 without any shared-file change.  Today aarch64 is
    built with NCPUS = 1, so an empty header is sufficient; a future
    SMP-capable aarch64 port should fill this in with the low-level
    _simple_lock_data_t and _simple_lock / _simple_unlock primitives,
    mirroring i386/i386/lock.h.
    
    Without this shim the imported port fails to compile the first
    file that pulls in kern/lock.h.
    Message-ID: <[email protected]>

-----------------------------------------------------------------------

Summary of changes:
 .../mach/aarch64/vm_param.h => aarch64/lock.h}     | 25 +++++++++++-----------
 include/mach/exec/elf.h                            |  1 +
 ipc/copy_user.h                                    | 15 +++++++++++++
 kern/exception.c                                   |  1 +
 tests/start.S                                      | 10 +++++++++
 5 files changed, 39 insertions(+), 13 deletions(-)
 copy aarch64/{include/mach/aarch64/vm_param.h => aarch64/lock.h} (57%)


hooks/post-receive
-- 
GNU Mach

Reply via email to