FreeBSD/src e0919a4lib/libc/arm Symbol.map

libc/arm: export __signalcontext not _signalcontext

The former exists and architectures other than aarch64 and riscv provide
it.  The later does not exist.

Differential Revision:  https://reviews.freebsd.org/D44329
DeltaFile
+1-1lib/libc/arm/Symbol.map
+1-11 files

FreeBSD/src da77a1blib/libcxxrt Version.map.arm Version.map

libcxxrt: don't export nonexistant symbols

Remove version entries that we don't build.

Add an arm specific Version.map and for other targets run the files
through sed to handle int vs long in new and delete.

Ideally we'd use the SYMBOL_MAPS functionality to preprocess with cpp,
but it doesn't currently handle C++ symbols so be annoyingly duplicative
for now.

Differential Revision:  https://reviews.freebsd.org/D44325
DeltaFile
+362-0lib/libcxxrt/Version.map.arm
+5-42lib/libcxxrt/Version.map
+17-1lib/libcxxrt/Makefile
+384-433 files

FreeBSD/src 3f82d83lib/libgcc_s Symbol.map

libgcc_s: only export 128-bit int APIs when available

These interfaces are only compiled when the platform supports 128-bit
ints.  Use a CRT_HAS_128BIT guard similar to the one used in the
compiler_rt sources.

Reviewed by:    dim
Differential Revision:  https://reviews.freebsd.org/D44323
DeltaFile
+41-26lib/libgcc_s/Symbol.map
+41-261 files

FreeBSD/src b8df8b0lib/libgcc_s Symbol.map

libgcc_s: only export 128-bit long double when available

These functions are only available on aarch64 and riscv so only try to
export them on those architectures.

Differential Revision:  https://reviews.freebsd.org/D44322
DeltaFile
+2-0lib/libgcc_s/Symbol.map
+2-01 files

FreeBSD/src b457144lib/libgcc_s Symbol.map

libgcc_s: exclude symbols not present on some arches

arm, aarch64, and riscv lack some/all frame_info interfaces.
arm and powerpc lack some numeric functions.

Differential Revision:  https://reviews.freebsd.org/D44324
DeltaFile
+24-0lib/libgcc_s/Symbol.map
+24-01 files

FreeBSD/src 35b3504lib/librpcsec_gss Symbol.map

librpcsec_gss: don't export non-existant symbols

rpc_gss_mesh_to_oid was never implemented.

This doesn't seem to be any reason why we would need to export the _stub
functions, but it's also a little unclear to me why the linker thinks
they aren't present.  Perhaps they should be static.

Differential Revision:  https://reviews.freebsd.org/D44248
DeltaFile
+0-3lib/librpcsec_gss/Symbol.map
+0-31 files

FreeBSD/src 63b179blib/libc/stdio Symbol.map

libc: don't try to export __sF

This symbol has been static since 2008 (commit 1e98f88776fc).

Differential Revision:  https://reviews.freebsd.org/D44188
DeltaFile
+0-1lib/libc/stdio/Symbol.map
+0-11 files

FreeBSD/src 1b10a30lib/libc/db Symbol.map

libc: don't try to export mpool_stat

This requires that mpool.c be compiled with -DSTATISTICS and we provide
no mechanism to do this.

Differential Revision:  https://reviews.freebsd.org/D44185
DeltaFile
+0-1lib/libc/db/Symbol.map
+0-11 files

FreeBSD/src 88fcb61lib/libc/net Symbol.map

libc: don't try to export _nsdbtdump

It is only present when compiling nsdispatch.c with -D_NSS_DEBUG and we
provide no mechanism to do so.

Differential Revision:  https://reviews.freebsd.org/D44187
DeltaFile
+0-1lib/libc/net/Symbol.map
+0-11 files

FreeBSD/src 4d6722elib/libc/gmon Symbol.map

libc: don't try to export mexitcount

This requires that mcount.c be compiled with -DGUPROF and we provide no
mechanism to do so.

Differential Revision:  https://reviews.freebsd.org/D44186
DeltaFile
+0-1lib/libc/gmon/Symbol.map
+0-11 files

FreeBSD/src 0dd2f4alib/libc/net Symbol.hesiod.map Symbol.map

libc: only export hesiod symbols when enabled

Create a seperate symbol file for hesiod and conditionally include it.
This allows linkage with --no-undefined-version.

Differential Revision:  https://reviews.freebsd.org/D44184
DeltaFile
+12-0lib/libc/net/Symbol.hesiod.map
+0-10lib/libc/net/Symbol.map
+1-0lib/libc/net/Makefile.inc
+13-103 files

FreeBSD/src 1719886sys/contrib/openzfs/config kernel-blkdev.m4, sys/contrib/openzfs/include/os/linux/spl/sys debug.h

zfs: merge openzfs/zfs at 90ba19eb7

Notable upstream pull request merges:
 #15784 90ba19eb7b Do no use .cfi_negate_ra_state within the assembly
                   on Arm64
 #15942 b6bbaa8372 Give a better message from 'zpool get' with invalid
                   pool name
 #15943 ca678bc0bc Makefile.bsd: sort and cleanup source file list
 #15953 fa480fe5ba zinject: show more device fault fields
 #15983 30c4eba4ea Fix panics when truncating/deleting files
 #15992 99741bde59 zvol: use multiple taskq
 #16015 a100a195fa Add support for zfs mount -R <filesystem>
 #16022 5e5fd0a178 Speculative prefetch for reordered requests
 #16040 997f85b4d3 L2ARC: Relax locking during write
 #16042 b12738182c Improve dbuf_read() error reporting
 #16051 a9a4290173 xdr: header cleanup
 #16052 eeca9a91d6 Fix read errors race after block cloning
 #16057 aa5445c28b Remove db_state DB_NOFILL checks from syncing context
 #16061 76d1dde94c zinject: inject device errors into ioctls

    [7 lines not shown]
DeltaFile
+413-0sys/contrib/openzfs/tests/zfs-tests/tests/functional/vdev_disk/page_alignment.c
+235-54sys/contrib/openzfs/module/zfs/dmu_zfetch.c
+136-83sys/contrib/openzfs/module/os/linux/zfs/vdev_disk.c
+101-93sys/contrib/openzfs/module/zfs/arc.c
+125-34sys/contrib/openzfs/config/kernel-blkdev.m4
+135-17sys/contrib/openzfs/include/os/linux/spl/sys/debug.h
+1,145-28178 files not shown
+2,505-89484 files

FreeBSD/src e4a0c92sys/net iflib.c

iflib: Correct indentation according to style(9)

The indentation style for the SYSCTL_* macros used was not matching KNF.

Reported by:    jhb
Differential Revision:  https://reviews.freebsd.org/D44811
DeltaFile
+135-142sys/net/iflib.c
+135-1421 files

FreeBSD/src d1fb333stand/efi/gptboot Makefile

stand: Install gptboot.efi(8)

We need to include bsd.init.mk first when we have man pages in the boot
loader.

Sponsored by:           Netflix

(cherry picked from commit cfcf475a669738382ac75ea50eb03a20280f7662)
DeltaFile
+1-0stand/efi/gptboot/Makefile
+1-01 files

FreeBSD/src e40703astand/efi/include efichar.h, stand/efi/libefi efichar.c

stand/efi: Changes to efichar to allow it to be used in the kernel

Replace malloc/free with EFICHAR_MALLOC and EFICHAR_FREEE macros.

Obtained from:  Juniper Networks, Inc.
Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D44541

(cherry picked from commit fe429e6794d322636e7c1e520d50ec0cb711dd14)
DeltaFile
+12-5stand/efi/libefi/efichar.c
+8-0stand/efi/include/efichar.h
+20-52 files

FreeBSD/src 41883f5stand/forth loader.4th

loader.4th dictthreshold too small

The dictthreshold in stand/forth/loader.4th is too small
resulting in full dictionary.

Reviewed by:    stevek, imp
Sponsored by:   Juniper Networks, Inc.
Differential Revision:  https://reviews.freebsd.org/D44414

(cherry picked from commit a8eb3b365eb63d2a569b166f2dfc982967d3a7fa)
DeltaFile
+2-2stand/forth/loader.4th
+2-21 files

FreeBSD/src 33d1ce8stand/userboot/userboot Makefile

userboot: allow for overriding the version file location

Use ?= when assigning VERSION_FILE

Reviewed by:    imp
Obtained from:  Juniper Networks, Inc.
Differential Revision:  https://reviews.freebsd.org/D44624

(cherry picked from commit 112783ebbc313f0df73bbec8520a94aba4a4f33d)
DeltaFile
+1-1stand/userboot/userboot/Makefile
+1-11 files

FreeBSD/src 519aef9stand/kboot/kboot hostfs.c

kboot: hostfs -- check for llseek failure correctly

The host_* syscalls are all raw Linux system calls, not the POSIX
wrappers that glibc / musl create. So we have to ranage change the
return value of host_llseek correctly to use the negative value hack
that all Linux system calls use.

This fixes a false positive error detection when we do something like
lseek(fd, 0xf1234567, ...); This returns 0xf1234567, which is a negative
value which used to trigger the error path.  Instead, we check using the
is_linux_error() and store the return value in a long. Translate that
errno to a host errno and set the global errno to that and return
-1. lseek can't otherwise return a negative number, since it's the
offset after seeking into the file, which by definition is positive.

This kept the 'read the UEFI memory map out of physical memory' from
working on aarch64 (whose boot loader falls back to reading it since
there are restrictive kernel options that can also prevent it), since
the physical address the memory map was at on my platform was like

    [6 lines not shown]
DeltaFile
+10-3stand/kboot/kboot/hostfs.c
+10-31 files

FreeBSD/src cb9ef3astand/kboot/kboot main.c

kboot: Use is_linux_error to check mmap return error

Rather than checking against the (incorrect) -511, use the
is_linux_error() function to check to see if host_mmap failed.

Sponsored by:           Netflix

(cherry picked from commit d75524b3fe21752b233f66ae8e9d6450d507f75c)
DeltaFile
+1-1stand/kboot/kboot/main.c
+1-11 files

FreeBSD/src d18377cstand/kboot/kboot hostfs.c

kboot: Avoid UB in signed shift

offset is signed. Copy it to the unsigned res before shifting. This
avoids any possible undefined behavior for right shifting signed
numbers. No functional change intended (and the code generated is the
nearly same for aarch64).

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

(cherry picked from commit 8b1925f29c54f5791db3c8dcdf2b67541bb8ab32)
DeltaFile
+3-2stand/kboot/kboot/hostfs.c
+3-21 files

FreeBSD/src d55ddcestand/kboot/kboot kbootfdt.c

kboot: kbootfdt: fix error handling

If we are able to open /sys/firmware/fdt, but aren't able to read it,
fall back to /proc/device-tree. Remove comment that's not really true,
it turns out.

Sponsored by:           Netflix

(cherry picked from commit 462af7676b3ee8a8bd9ee9b55a35c0cf815a351f)
DeltaFile
+6-7stand/kboot/kboot/kbootfdt.c
+6-71 files

FreeBSD/src 64355a9stand/lua config.lua

loader/lua: Remove workaround for command_error

loader.command_error was available prior to stable/12 branching. No need
to check if it is available or not.

Sponsored by:           Netflix
Reviewed by:            kevans
Differential Revision:  https://reviews.freebsd.org/D44144

(cherry picked from commit 552f3072af54820cf1805f712e2567bc1b7f046d)
DeltaFile
+1-6stand/lua/config.lua
+1-61 files

FreeBSD/src 83bae39stand/uboot Makefile

uboot/Makefile move BINDIR

Set BINDIR before we include bsd.init.mk
so we can override it via local.init.mk

Reviewed by:    imp
Sponsored by:   Juniper Networks, Inc.
Differential Revision:  https://reviews.freebsd.org/D44413

(cherry picked from commit 01f3abbfcd59848e37118e5e2b868a7b3e98cc62)
DeltaFile
+2-1stand/uboot/Makefile
+2-11 files

FreeBSD/src 0bca0destand/kboot/kboot/arch/aarch64 load_addr.c

kboot: Print UEFI memory map

If we can read the UEFI memory map, go ahead and print the memory map.
While the kernel prints this with bootverbose, having it at this stage
is useful for debugging other problems.

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

(cherry picked from commit a9cd3b675e243648aa681bc6ce1bf3e788be88c8)
DeltaFile
+85-0stand/kboot/kboot/arch/aarch64/load_addr.c
+85-01 files

FreeBSD/src 649cc35stand/kboot/include host_syscall.h

kboot: Create function for error checking.

Linux has the convention of returning -ERRNO to flag errors from its
system calls. Sometimes other negative values are returned that are
success...  However, only values -1 to -4096 (inclusive) are really
errors. The rest are either truncated values that only look negative (so
use long instead of int), or are things like addresses or legal unsigned
file offsets or similar that are successful returns. Filter out the
latter.

Sponsored by:           Netflix

(cherry picked from commit 3ae18fdfbcaad827defdc217386e73c993beeba0)
DeltaFile
+20-4stand/kboot/include/host_syscall.h
+20-41 files

FreeBSD/src 216c56fstand/lua core.lua

loader/lua: Remove compat shim for loader.lua_path

loader.lua_path was committed before stable/13 was branched, and merged
in to for 12.2. Remove workaround for it not being present.

Sponsored by:           Netflix
Reviewed by:            kevans
Differential Revision:  https://reviews.freebsd.org/D44143

(cherry picked from commit ab97d42addae97a389c6f22d6bba62ed954bb8e7)
DeltaFile
+1-7stand/lua/core.lua
+1-71 files

FreeBSD/src 7cc0ac5stand/efi/loader Makefile

loader/efi: Only include interpreter's linker script

For safety, only include the interpreter's linker script. Note that the
simple loader doesn't have one, but it's not an error to copy a ELF
section that does not exist. No functional change, however.

Sponsored by:           Netflix
Reviewed by:            tsoome, kevans
Differential Revision:  https://reviews.freebsd.org/D44064

(cherry picked from commit f5f08e41aa57f94e3c127a488a82b4e518781f89)
DeltaFile
+1-1stand/efi/loader/Makefile
+1-11 files

FreeBSD/src 36d49fbstand/efi/loader Makefile, stand/ficl ficl.h loader.c

loader/ficl: Rename the ficl compile set to X4th_compile_set

And upcoming change will need this set to be named this. Since it's only
used in the efi Makefile, and inside if ficl itself, the change should
be a nop.

Sponsored by:           Netflix
Reviewed by:            tsoome, kevans
Differential Revision:  https://reviews.freebsd.org/D44063

(cherry picked from commit 8ec8413faa3573c579d9e6361de904f8251b0c0e)
DeltaFile
+2-2stand/ficl/ficl.h
+1-1stand/ficl/loader.c
+1-1stand/efi/loader/Makefile
+4-43 files

FreeBSD/src 71969b9stand/lua cli.lua

loader/lua: Remove pager shim

Just after 12.2 and before the stable/13 branch, kevans added lpager.c
to provide a pager interface for commands written in lua.  It was merged
into 12.3. Now that 12.2 is long since EOL, we can remove the pager shim
here. Nobody needs that old loader + new lua scripts.  Plus only one
command is affected.

Sponsored by:           Netflix
Reviewed by:            kevans
Differential Revision:  https://reviews.freebsd.org/D44142

(cherry picked from commit 8b9178cd0d35ff2beafebdd51c8c44ba2b5aeb0f)
DeltaFile
+0-12stand/lua/cli.lua
+0-121 files

FreeBSD/src a552d40stand/ficl/mips sysdep.h sysdep.c, stand/ficl/mips64 sysdep.h sysdep.c

stand: Remove dangling mips references

Remove mips support files from ficl.

Sponsored by:           Netflix

(cherry picked from commit 07d600649ef804b9a492ba2d690f676f0513ae08)
DeltaFile
+0-431stand/ficl/mips/sysdep.h
+0-431stand/ficl/mips64/sysdep.h
+0-98stand/ficl/mips/sysdep.c
+0-98stand/ficl/mips64/sysdep.c
+0-1,0584 files