History log of /src/stand/kboot/libkboot/host_syscalls.c (Results 1 – 21 of 21)
Revision Date Author Comments
# 8f7327dc 28-Jan-2024 Warner Losh <imp@FreeBSD.org>

kboot: update copyright on these files.

host_syscalls.c: I've written, so put Netflix copyright on. It's
possible in the confusion that Nathan wrote the host_gettimeofday
implementation.

syscall_nr

kboot: update copyright on these files.

host_syscalls.c: I've written, so put Netflix copyright on. It's
possible in the confusion that Nathan wrote the host_gettimeofday
implementation.

syscall_nr: These files likely can't enjoy copyright protection since
they are just facts (the per-arch Linux system calls), so add a note
they are in the public domain.

Sponsored by: Netflix

show more ...


# 2e3f4988 28-Jan-2024 Warner Losh <imp@FreeBSD.org>

kboot: Move system calls to libkboot

Sponsored by: Netflix


# 091c255b 28-Jan-2024 Warner Losh <imp@FreeBSD.org>

kboot: Move to kboot/kboot

In anticipation of separating the library elements from the kboot
prorgam elements, move kboot down a level into a subdirectory. There
will be libkboot and include directo

kboot: Move to kboot/kboot

In anticipation of separating the library elements from the kboot
prorgam elements, move kboot down a level into a subdirectory. There
will be libkboot and include directories in subsequent commits,
mirroring other subsystems like i386 and efi.

Sponsored by: Netflix

show more ...


# a0e4d180 07-Jan-2023 Warner Losh <imp@FreeBSD.org>

kboot: Sort kexec_load alphabetically

Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D37968


# 54e6e0de 26-Jul-2022 Warner Losh <imp@FreeBSD.org>

kboot: Implement host_ioctl

Sponsored by: Netflix


# f56d7a73 28-Jul-2022 Warner Losh <imp@FreeBSD.org>

kboot: Add host_exit and use it to implement exit()

Clients of libsa are expected to implement exit(). The current exit just
loops forever. It is better to really exit: when running as init that
wil

kboot: Add host_exit and use it to implement exit()

Clients of libsa are expected to implement exit(). The current exit just
loops forever. It is better to really exit: when running as init that
will reboot the system. When not running as init, other programs can
recover (not that we support running as init, but when we do in the
future, this is still the rigtht thing).

Sponsored by: Netflix

show more ...


# 75cbdbc9 11-Jul-2022 Warner Losh <imp@FreeBSD.org>

kboot: aarch64 support

Add support for aarch64. exec.c and ldscript are copied from the EFI
version with #ifdefs for the differences. Once complete, I'll refactor
them. host_syscall.S implements a g

kboot: aarch64 support

Add support for aarch64. exec.c and ldscript are copied from the EFI
version with #ifdefs for the differences. Once complete, I'll refactor
them. host_syscall.S implements a generic system call. tramp.S is a
first attempt to create a tramoline that we can use to jump to the
aarch64 kernel. Add aarch64-specific startup and stat files as well.
exec.c tweaked slightly to avoid bringing in bi_load(), which will come
in later. Includes tweaks to stat due to name differences between names
on different Linux architectures.

Sponsored by: Netflix

show more ...


# 3a1b966a 28-Jul-2022 Warner Losh <imp@FreeBSD.org>

kboot: Convert from getdents to getdents64

Linux 2.4 introduced getdents64. Switch to using it because aarch64
doesn't have getdents as that syscall was obsoleted before that port was
created.

Spon

kboot: Convert from getdents to getdents64

Linux 2.4 introduced getdents64. Switch to using it because aarch64
doesn't have getdents as that syscall was obsoleted before that port was
created.

Sponsored by: Netflix

show more ...


# ffb0d016 28-Jun-2022 Warner Losh <imp@FreeBSD.org>

kboot: Refinements to host_kexec_load

Move kexec_segments to host_syscall.h and pre-pend host_ to it. Correct
args to host_exec_load.

Sponsored by: Netflix


# 8138a766 30-Jun-2022 Warner Losh <imp@FreeBSD.org>

kboot: Implement mount(2)

Create a wrapper for the mount system call. To ensure a sane early boot
environment and to gather data we need for kexec, we may need to mount
some special filesystems.

Sp

kboot: Implement mount(2)

Create a wrapper for the mount system call. To ensure a sane early boot
environment and to gather data we need for kexec, we may need to mount
some special filesystems.

Sponsored by: Netflix

show more ...


# a99d47bc 30-Jun-2022 Warner Losh <imp@FreeBSD.org>

kboot: Implement mkdir(2)

mkdir() may be needed early in boot to create missing
directories. Provide a syscall wrapper for it.

Sponsored by: Netflix


# bc84de74 30-Jun-2022 Warner Losh <imp@FreeBSD.org>

kboot: Implement dup(2)

Early in boot, we need to create the normal stdin/out/err env for the
boot loader to run in. To do that, we need to open the console and
duplicate the file descriptors which

kboot: Implement dup(2)

Early in boot, we need to create the normal stdin/out/err env for the
boot loader to run in. To do that, we need to open the console and
duplicate the file descriptors which requires dup(2). Implement a
wrapper as host_dup.

Sponsored by: Netflix

show more ...


# a4ed0eb1 30-Jun-2022 Warner Losh <imp@FreeBSD.org>

kboot: Implement symlink(2)

Linux's /dev/fd is implemented inside of /proc/self/fd, so we may need
to create a symlink to it early in boot. "/dev/fd" and "/dev/std*" might
not be strictly required f

kboot: Implement symlink(2)

Linux's /dev/fd is implemented inside of /proc/self/fd, so we may need
to create a symlink to it early in boot. "/dev/fd" and "/dev/std*" might
not be strictly required for the boot loader, but should be present for
maximum flexibility.

Sponsored by: Netflix

show more ...


# 76478029 30-Jun-2022 Warner Losh <imp@FreeBSD.org>

kboot: Implement getpid(2)

Add host_getpid() so we can know if we're running as init(8) or not. If
we are, we may chose to do early system setup / sanity operations.

Sponsored by: Netflix


# 76949f50 27-Jun-2022 Warner Losh <imp@FreeBSD.org>

kboot: Implement munmap(2)

Define host_munmap so we can use it in the x86 code to find things for
the BIOS/CMS boot path and unmap after we find it.

Sponsored by: Netflix


# a647d4a4 15-Jul-2022 Warner Losh <imp@FreeBSD.org>

kboot: Implement stat(2) and fstat(2) system calls

Implement stat(2) and fstat(2) in terms of newfstatat and newfstat
system calls respectively (assume we have a compat #define when
there's no newfs

kboot: Implement stat(2) and fstat(2) system calls

Implement stat(2) and fstat(2) in terms of newfstatat and newfstat
system calls respectively (assume we have a compat #define when
there's no newfstat and just a regular fstat and do so for ppc).

Snag struct kstat (the Linux kernel stat(2), et al interface) from musl
and attribute properly.

Sponsored by: Netflix

show more ...


# edc23ddf 07-Jul-2022 Warner Losh <imp@FreeBSD.org>

kboot: Reimplement older system calls in terms of newer ones

aarch64 doesn't have open, just openat, etc. Cope.

Sponsored by: Netflix


# d8f3ef8f 13-Jun-2022 Warner Losh <imp@FreeBSD.org>

kboot: rename kexec_load to host_kexec_load

And make it match the system call more closely by passing in the proper
args.

Sponsored by: Netflix


# 201c1d0d 13-Jun-2022 Warner Losh <imp@FreeBSD.org>

kboot: sort system calls

Sort the system calls. No functional change intended.

Sponsored by: Netflix


# 43ad112b 13-Jun-2022 Warner Losh <imp@FreeBSD.org>

kboot: use SYS_kexec_load insteaed of __NR_kexec_load

Make this regular with the rest of the system calls.

Sponsored by: Netflix


# 5974cfe1 30-Dec-2021 Warner Losh <imp@FreeBSD.org>

kboot: move to generic syscall interface

Just have the MD code provide syscall and have generic code for the
rest.

Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D33515