Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Arm64 disasm crc32 tests #6

Closed
wants to merge 63 commits into from
Closed

Arm64 disasm crc32 tests #6

wants to merge 63 commits into from

Commits on Aug 20, 2023

  1. ssh: fix OpenSSH 9.4 regression with multiplexed sessions

    Upstream commit message:
    upstream: fix regression in OpenSSH 9.4 (mux.c r1.99) that caused
    multiplexed sessions to ignore SIGINT under some circumstances.
    Reported by / feedback naddy@, ok dtucker@
    
    OpenBSD-Commit-ID: 4d5c6c894664f50149153fd4764f21f43e7d7e5a
    
    Fixes: 535af61 ("ssh: Update to OpenSSH 9.4p1")
    Obtained from:	OpenSSH 803e22eabd3b
    Sponsored by:	The FreeBSD Foundation
    emaste committed Aug 20, 2023
    Configuration menu
    Copy the full SHA
    1b91d63 View commit details
    Browse the repository at this point in the history
  2. share/mk/bsd.cpu.mk: Add AMD Zen 4 for x86

    Main difference between older Zen variants is that this supports AVX-512
    
    Reviewed by:	imp (previous version), emaste
    Approved by:	emaste
    Differential Revision:	https://reviews.freebsd.org/D41331
    Daniel Engberg authored and Daniel Engberg committed Aug 20, 2023
    Configuration menu
    Copy the full SHA
    ed3fb74 View commit details
    Browse the repository at this point in the history
  3. libc: export pthread_getname_np stub

    pthread_getname_np needs to be provided by libc in order to import
    jemalloc 5.3.0.
    
    A stub implementation for libc pthread_getname_np() is added for
    _pthread_stubs.c, which always reports empty name for the main thread.
    
    Internal _pthread_getname_np() is not exported, but provided for libc
    own use.
    
    Reviewed by:	kib
    MFC after:	1 week
    Differential Revision:	https://reviews.freebsd.org/D41461
    fel1x-developer authored and kostikbel committed Aug 20, 2023
    Configuration menu
    Copy the full SHA
    0dc52b7 View commit details
    Browse the repository at this point in the history
  4. libc/gen/_pthread_stubs.c: Remove stray whitespaces

    Sponsored by:	The FreeBSD Foundation
    MFC after:	1 week
    kostikbel committed Aug 20, 2023
    Configuration menu
    Copy the full SHA
    89e17c6 View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2023

  1. LinuxKPI: 802.11: update compat code for updated drivers

    Adjust and add structs, fields, functions to make more modern versions
    of LinuxKPI based wireless drivers (based on wireless-testing (
    wt-2023-06-09, wt-2023-07-24, and later)) compile.
    
    Some of these changes can only be applied once all drivers get
    updated to not break the old versions currently in the tree.
    Mark those changes with __FOR_LATER_DRV_UPDATE for now and flip the
    switch at a later point.
    
    Sponsored by:	The FreeBSD Foundation
    MFC after:	20 days
    Bjoern A. Zeeb authored and Bjoern A. Zeeb committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    adff403 View commit details
    Browse the repository at this point in the history
  2. ath10k: specifically mark a debug workaround for an early firmware crash

    During the last import a (debug) workaround to avoid an early firmware
    crash was imported.  In order to remember and to separate it from
    upstream sources put it under #ifdef
    
    MFC after:	20 days
    Bjoern A. Zeeb authored and Bjoern A. Zeeb committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    734e82f View commit details
    Browse the repository at this point in the history
  3. ath1xk_common: update common athk files from upstream

    Update ath1xk_common based on wireless-testing (wt-2023-05-11)
    711dca0ca3d77414f8f346e564e9c8640147f40d (right after v6.4-rc1).
    
    MFC after:	20 days
    Bjoern A. Zeeb authored and Bjoern A. Zeeb committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    eb50aa6 View commit details
    Browse the repository at this point in the history
  4. ath10k: update driver from upstream

    This is a set of updates of the ath10k driver based on wireless-testing
    (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1),
    (wt-2023-06-09) 7bd20e011626ccc3ad53e57873452b1716fcfaaa (after v6.4-rc5),
    (wt-2023-07-24) 62e409149b62a285e89018e49b2e115757fb9022 (after v6.5-rc3),
    (wt-2023-08-06) 2a220a15be657a24868368892e3e2caba2115283 (after v6.5-rc4).
    
    MFC after:	20 days
    Bjoern A. Zeeb authored and Bjoern A. Zeeb committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    07724ba View commit details
    Browse the repository at this point in the history
  5. ath11k: update driver from upstream

    This is a set of updates of the ath11k driver based on wireless-testing
    (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1),
    (wt-2023-06-09) 7bd20e011626ccc3ad53e57873452b1716fcfaaa (after v6.4-rc5),
    (wt-2023-07-24) 62e409149b62a285e89018e49b2e115757fb9022 (after v6.5-rc3),
    (wt-2023-08-06) 2a220a15be657a24868368892e3e2caba2115283 (after v6.5-rc4).
    
    MFC after:	20 days
    Bjoern A. Zeeb authored and Bjoern A. Zeeb committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    28348ca View commit details
    Browse the repository at this point in the history
  6. ath12k: import driver from upstream

    Import BSD-3-Clause-Clear ath12k driver based on wireless-testing
    (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1)
    with further updates based on
    (wt-2023-06-09) 7bd20e011626ccc3ad53e57873452b1716fcfaaa (after v6.4-rc5),
    (wt-2023-07-24) 62e409149b62a285e89018e49b2e115757fb9022 (after v6.5-rc3),
    (wt-2023-08-06) 2a220a15be657a24868368892e3e2caba2115283 (after v6.5-rc4),
    (wt-2023-08-13) 81e147b1317ee7cde8b624ee8c0501b470d7e91c (after v6.5-rc5).
    
    Complement the driver to make compile on FreeBSD
    using LinuxKPI with changes covered by #ifdef (__FreeBSD__).
    
    Add the module build framework but keep disconnected from the
    build for now.
    The current driver (or rather LinuxKPI) lacks support for some
    "qcom" bits needed in order to get things working (as does ath11k).
    There was interest by various people to enhance support further
    for ath11k which will equally benefit ath12k.
    
    Given the lack of full license texts on the files this is
    imported under the draft policy for handling SPDX files (D29226)
    and with approval for BSD-3-Clause-Clear. [1]
    
    Approved by:	core (jhb, 2023-05-11) [1]
    MFC after:      20 days
    Bjoern A. Zeeb authored and Bjoern A. Zeeb committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    5c1def8 View commit details
    Browse the repository at this point in the history
  7. mt76: update driver from upstream

    This is a set of updates of the mt76 driver based on wireless-testing
    (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1),
      This adds support for mt7996 as well.
    (wt-2023-06-09) 7bd20e011626ccc3ad53e57873452b1716fcfaaa (after v6.4-rc5),
    (wt-2023-07-24) 62e409149b62a285e89018e49b2e115757fb9022 (after v6.5-rc3),
    (wt-2023-08-06) 2a220a15be657a24868368892e3e2caba2115283 (after v6.5-rc4).
    
    The current version of LinuxKPI lacks support for "page pool" which
    needs enhancing and updating a decade or so old shortcut mapping
    struct page directly to struct vm_page.
    
    MFC after:	20 days
    Bjoern A. Zeeb authored and Bjoern A. Zeeb committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    cbb3ec2 View commit details
    Browse the repository at this point in the history
  8. rtw89: update driver from upstream

    This is a set of updates of the rtw89 driver based on wireless-testing
    (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1).
    (wt-2023-06-09) 7bd20e011626ccc3ad53e57873452b1716fcfaaa (after v6.4-rc5).
    (wt-2023-07-24) 62e409149b62a285e89018e49b2e115757fb9022 (after v6.5-rc3).
    (wt-2023-08-06) 2a220a15be657a24868368892e3e2caba2115283 (after v6.5-rc4).
    (wt-2023-08-13) 81e147b1317ee7cde8b624ee8c0501b470d7e91c (after v6.5-rc5).
    
    MFC after:      20 days
    Bjoern A. Zeeb authored and Bjoern A. Zeeb committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    e234027 View commit details
    Browse the repository at this point in the history
  9. PMC_OP_CONFIGURELOG: cleanup logging process if aborting due to pm_flags

    Reported by:	pho
    Fixes:	8e63e78
    Sponsored by:	The FreeBSD Foundation
    kostikbel committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    42e70f4 View commit details
    Browse the repository at this point in the history
  10. pf: reduce indentation

    Early-return to reduce syncookie-related indentation.
    
    No functional change.
    
    MFC after:	1 week
    Reviewed by:	kp
    Sponsored by:	InnoGames GmbH
    Differential Revision:	https://reviews.freebsd.org/D41502
    TuxPowered42 authored and kprovost committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    9642d94 View commit details
    Browse the repository at this point in the history
  11. pf: enable the syncookie feature for IPv6

    When syncookie support was added to pf the relevant work was only done
    in pf_test(), not pf_test6(). Do this now.
    
    MFC after:	1 week
    Reviewed by:	kp
    Sponsored by:	InnoGames GmbH
    Differential Revision:	https://reviews.freebsd.org/D41502
    TuxPowered42 authored and kprovost committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    92d4152 View commit details
    Browse the repository at this point in the history
  12. pf tests: test syncookies on IPv6

    MFC after:	1 week
    Sponsored by:	Rubicon Communications, LLC ("Netgate")
    kprovost committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    1fd8c84 View commit details
    Browse the repository at this point in the history
  13. hwpmc: on process exit, ensure that the owned log is closed

    Tested by:	pho (previous version)
    Reviewed by:	markj
    Sponsored by:	The FreeBSD Foundation
    MFC after:	1 week
    Differential revision:	https://reviews.freebsd.org/D41521
    kostikbel committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    3c872a7 View commit details
    Browse the repository at this point in the history
  14. rtld_malloc.c: change return type of cp2op() to void

    for it to be useful to return unaligned pointer.
    
    Reviewed by:	markj
    Sponsored by:	The FreeBSD Foundation
    MFC after:	1 week
    Differential revision:	https://reviews.freebsd.org/D41150
    kostikbel committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    6bb7f05 View commit details
    Browse the repository at this point in the history
  15. rtld_malloc: increase overhead index to uint16

    Reorder it with magic, to keep alignment.
    
    Reviewed by:	markj
    Sponsored by:	The FreeBSD Foundation
    MFC after:	1 week
    Differential revision:	https://reviews.freebsd.org/D41150
    kostikbel committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    d60130b View commit details
    Browse the repository at this point in the history
  16. rtld_malloc: add __crt_aligned_alloc_offset()

    It is modelled after aligned_alloc(3).  Most importantly, to free the
    allocation, __crt_free() can be used.  Additionally, caller may specify
    offset into the aligned allocation, so that we return offset-ed from
    alignment pointer.
    
    Reviewed by:	markj
    Sponsored by:	The FreeBSD Foundation
    MFC after:	1 week
    Differential revision:	https://reviews.freebsd.org/D41150
    kostikbel committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    c29ee08 View commit details
    Browse the repository at this point in the history
  17. rtld: switch from malloc_aligned() to __crt_aligned_alloc()

    Use regular free(), since it works now.
    
    Reviewed by:	markj
    Sponsored by:	The FreeBSD Foundation
    MFC after:	1 week
    Differential revision:	https://reviews.freebsd.org/D41150
    kostikbel committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    feaae6b View commit details
    Browse the repository at this point in the history
  18. e6000sw: support building without FDT

    This enables the use of this driver on platorms without device tree,
    such as Netgate's XG-7100.
    
    Sponsored by:	Rubicon Communications, LLC ("Netgate")
    loos-br authored and kprovost committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    2c135a2 View commit details
    Browse the repository at this point in the history
  19. pctrie: change for vm_radix compatibility

    Restructure parts of pctrie code to make it more compatible with the
    needs of vm_radix code.
    
    1. End passing function pointers for memory management.
    
    By breaking insertion into two functions, the call for allocating
    memory can happen at the top level and be inlined, rather than
    happening via an function pointer to a memory allocator.
    
    By changing the remove function slightly, freeing of memory, when
    necessary, can happen at the top level and be inlined.
    
    By turning the reclamation code into two functions, one for starting
    iteration over to-be-freed nodes and the other continuing it, all the
    freeing can happen at the top level and be inlined.
    
    2. Offer a version of remove that does not panic and returns the freed
    value (or NULL).
    3. Offer a 'replace' operation, to replace one leaf with another that
    has the same key.
    
    These are three of the roadblocks that prevent code sharing between
    pctrie and vm_radix code.
    
    Reviewed by:	kib (previous version)
    Differential Revision:	https://reviews.freebsd.org/D41396
    Doug Moore authored and Doug Moore committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    3b7ffac View commit details
    Browse the repository at this point in the history
  20. Import unifdef 2.11

    dag-erling committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    9b3517a View commit details
    Browse the repository at this point in the history
  21. Import unifdef 2.12

    dag-erling committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    2b7d40e View commit details
    Browse the repository at this point in the history
  22. Add missing version.h.

    dag-erling committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    0da4488 View commit details
    Browse the repository at this point in the history
  23. Add 'contrib/unifdef/' from commit '0da44885831dc0a43c4ca6ff04a243099…

    …3cc0a80'
    
    git-subtree-dir: contrib/unifdef
    git-subtree-mainline: 3b7ffac
    git-subtree-split: 0da4488
    dag-erling committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    fb3ef04 View commit details
    Browse the repository at this point in the history
  24. unifdef: Reapply our 61287be.

    dag-erling committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    343b776 View commit details
    Browse the repository at this point in the history
  25. unifdef: Reapply our 7102ec5.

    dag-erling committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    049b760 View commit details
    Browse the repository at this point in the history
  26. unifdef: Vendorize.

    dag-erling committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    7addfaf View commit details
    Browse the repository at this point in the history
  27. lib/libc/amd64/string/stpcpy.S: add baseline implementation

    This commit adds a baseline implementation of stpcpy(3) for amd64.
    It performs quite well in comparison to the previous scalar implementation
    as well as agains bionic and glibc (though glibc is faster for very long
    strings).  Fiddle with the Makefile to also have strcpy(3) call into the
    optimised stpcpy(3) code, fixing an oversight from D9841.
    
    Sponsored by:	The FreeBSD Foundation
    Reviewed by:	imp ngie emaste
    Approved by:	mjg kib
    Fixes:		D9841
    Differential Revision:	https://reviews.freebsd.org/D41349
    clausecker committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    9fbea87 View commit details
    Browse the repository at this point in the history
  28. share/man/man7/simd.7: document SIMD-enhanced stpcpy()

    Sponsored by:	The FreeBSD Foundation
    Approved by:	mjg kib
    Differential Revision:	https://reviews.freebsd.org/D41349
    clausecker committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    245fee9 View commit details
    Browse the repository at this point in the history
  29. lib/libc/amd64/string/memcmp.S: add baseline implementation

    This changeset adds a baseline implementation of memcmp and bcmp
    for amd64. The same code is used for both functions with conditional
    code were the behaviour differs (we need more precise output for the
    memcmp case).
    
    FreeBSD documents that memcmp returns the difference between the
    mismatching characters. Slightly faster code would be possible could
    we relax this requirement to the ISO/IEC 9899:1999 requirement of
    merely returning a negative/positive integer or zero.
    
    Performance is better than bionic and glibc, except for long strings
    were the two are 13% faster. This could be because they use SSE4
    ptest which we cannot use in a baseline kernel.
    
    Sponsored by:	The FreeBSD Foundation
    Approved by:	mjg
    Differential Revision:	https://reviews.freebsd.org/D41442
    clausecker committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    8803f01 View commit details
    Browse the repository at this point in the history
  30. share/man/man7/simd.7: document new amd64 memcmp/bcmp baseline routines

    Sponsored by:	The FreeBSD Foundation
    
    bcmp(3) is implemented as a variant of memcmp(3) and benefits
    from the same optimisations.
    
    Sponsored by:	The FreeBSD Foundation
    Approved by:	kib
    Differential Revision:	https://reviews.freebsd.org/D41442
    clausecker committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    b404e03 View commit details
    Browse the repository at this point in the history
  31. x86: handle domains with no CPUs usable for intr delivery

    We can end up with a domain having no CPUs capable of receiving I/O
    interrupts.  This can occur, for example, when all APIC IDs in a given
    domain are 256 or greater, and we have no IOMMU.
    
    In this case disable per-domain interrupt support, effectively reverting
    to the behaviour before commit a48de40 ("Only use CPUs in the
    domain the device is attached to for default").  This has a performance
    impact but at least allows the system to be functional.  It is a stop-
    gap until we can rely on the presence of an IOMMU on all x86 platforms.
    
    Thanks to AMD for providing the high-thread-count machine I used for
    testing this change, and to cperciva for testing on other hardware.
    
    Reviewed by:	jhb
    Tested by:	cperciva, emaste
    Sponsored by:	The FreeBSD Foundation
    Differential Revision: https://reviews.freebsd.org/D41501
    emaste committed Aug 21, 2023
    Configuration menu
    Copy the full SHA
    4258eb5 View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2023

  1. Update freebsd-yeet for mfc

    bsdimp committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    b376ef3 View commit details
    Browse the repository at this point in the history
  2. Delete trailing whitespace from $FreeBSD$ removal

    Fixes: d4bf800
    Sponsored by: Netflix
    bsdimp committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    682d5a8 View commit details
    Browse the repository at this point in the history
  3. riscv db_trace: Ensure trapframe pointer is suitably aligned.

    Suggested by:	jrtc27
    Reviewed by:	jrtc27
    Sponsored by:	DARPA
    Differential Revision:	https://reviews.freebsd.org/D41534
    bsdjhb committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    7ccaf76 View commit details
    Browse the repository at this point in the history
  4. build{libcompat}: Pass UNIVERSE_TOOLCHAIN_PATH to the _lc_build-tools…

    … submake
    
    This fixes make UNIVERSE_TOOLCHAIN=yes with libcompats.
    
    Reviewed by:	jrtc27
    Differential Revision:	https://reviews.freebsd.org/D41535
    bsdjhb committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    834f73d View commit details
    Browse the repository at this point in the history
  5. libcrypto: Don't embed $FreeBSD$ in generated assembly files

    Reviewed by:	gallatin, ngie, emaste
    Differential Revision:	https://reviews.freebsd.org/D41536
    bsdjhb committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    7a56f5a View commit details
    Browse the repository at this point in the history
  6. libcrypto: Add new assembly files added in OpenSSL 3.0.

    This only affects amd64 and i386, but in particular includes wrappers
    for AES encryption/decryption that gate all of the accelerated AES.
    
    Reviewed by:	gallatin, ngie, emaste
    Differential Revision:	https://reviews.freebsd.org/D41537
    bsdjhb committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    f3cac6c View commit details
    Browse the repository at this point in the history
  7. libcrypto: Generate new files added in OpenSSL 3.0.

    Reviewed by:	gallatin, ngie, emaste
    Differential Revision:	https://reviews.freebsd.org/D41538
    bsdjhb committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    74d73bb View commit details
    Browse the repository at this point in the history
  8. libcrypto: Update assembly build glue for x86 for OpenSSL 3.0.

    Notably, define AES_ASM which is required for any AES acceleration
    (OpenSSL 1.0 gated all AES acceleration on OPENSSL_CPUID_OBJ instead).
    Enabling this exposed that new assembly files added in OpenSSL 3.0
    needed to be included in the build (aes-x86-64.S and aes-586.S).  Both
    of these files supplant both aes_core.c and aes_cbc.c.  The last file
    had to be moved out of the MI SRCS line for aes and into each ASM_*
    for non-x86.
    
    As part of this I audited the generated configdata.pm for amd64, i386,
    and aarch64 and found the following additional discrepecancies that are
    fixed here as well:
    
    - Enabled BSAES_ASM on amd64 which requires bsase-x86_64.S
    
    - Enabled WHIRLPOOL_ASM on amd64 (asm sources already built)
    
    - Enabled CMLL_ASM on amd64 and i386 (asm sources already built)
    
    aarch64 had no discreprecancies in configdata.pm, and no *.pl asm
    generators were missing for aarch64 in Makefile.asm.  I did not check
    powerpc or armv7, but for armv7 all of the asm generators seem to be
    present in Makefile.asm.
    
    Reported by:	gallatin (AES-GCM using plain software on amd64)
    Reviewed by:	gallatin, ngie, emaste
    Differential Revision:	https://reviews.freebsd.org/D41539
    bsdjhb committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    3250c9d View commit details
    Browse the repository at this point in the history
  9. bhyve: add config option to load ACPI tables into memory

    For backward compatibility, the ACPI tables are loaded into the guest
    memory. Windows scans the memory, finds the ACPI tables and uses them.
    It ignores the ACPI tables provided by the UEFI. We are patching the
    ACPI tables in the guest memory, so that's mostly fine. However, Windows
    will break when the ACPI tables become to large or when we add entries
    which can't be patched by bhyve. One example of an unpatchable entry, is
    a TPM log. The TPM log has to be allocated by the guest firmware. As the
    address of the TPM log is unpredictable, bhyve can't assign it in the
    memory version of the ACPI tables. Additionally, this makes it
    impossible for bhyve to calculate a correct checksum of the table.
    
    By default ACPI tables are still loaded into guest memory for backward
    compatibility. The new acpi_tables_in_memory config value can be set to
    false to avoid this behaviour.
    
    Reviewed by:		markj
    MFC after:		1 week
    Sponsored by:		Beckhoff Automation GmbH & Co. KG
    Differential Revision:	https://reviews.freebsd.org/D39979
    ckoehne committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    6f7e977 View commit details
    Browse the repository at this point in the history
  10. Document strnstr()'s history.

    David E. O'Brien authored and David E. O'Brien committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    4d004cc View commit details
    Browse the repository at this point in the history
  11. geom_linux_lvm: Check the offset of physical volume header

    The LVM label is stored on any of the first four sectors, and the
    PV (physical volume) header is stored within the same sector following
    the LVM label. The current implementation does not fully check the
    offset of PV header, when attaching a bad formatted LVM PV the kernel
    may crash due to out-of-bounds memory read.
    
    PR:	266562
    Reviewed by:	jhb
    MFC after:	2 weeks
    Differential Revision:	https://reviews.freebsd.org/D36773
    gmshake committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    c941b82 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    3b4da25 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    5157b45 View commit details
    Browse the repository at this point in the history
  14. etc: remove leftover leading empty comments, blank lines

    Remove leftover empty leading comments/blank lines that had been
    spacers between $FreeBSD$ and the following content in config files
    in src/etc.
    
    Reviewed by:	imp
    Differential Revision:	https://reviews.freebsd.org/D41548
    Mike Karels authored and Mike Karels committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    9d6049d View commit details
    Browse the repository at this point in the history
  15. if_ovpn: clear mbuf flags on rx

    When we receive a packet and remove the encapsulating layer we should
    also clear out protocol flags and any mbuf tags.
    
    If we do not we risk confusing firewalls filtering the tunneled packet.
    
    See also: 	https://redmine.pfsense.org/issues/14682#change-69073
    Sponsored by:	Rubicon Communications, LLC ("Netgate")
    kprovost committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    949491f View commit details
    Browse the repository at this point in the history
  16. tcp_fill_info(): Change lock assertion on INPCB to locked only

    This function actually only ever reads from the TCP PCB. Consequently,
    also make the pointer to its TCP PCB parameter const.
    
    Sponsored by:	NetApp, Inc. (originally)
    sparcplug committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    8c6104c View commit details
    Browse the repository at this point in the history
  17. tcp_info: Add and export more FreeBSD-specific fields

    This change adds struct tcp_info fields corresponding to the following
    struct tcpcb ones:
    - snd_una
    - snd_max
    - rcv_numsacks
    - rcv_adv
    - dupacks
    
    Note that while both tcp_fill_info() and fill_tcp_info_from_tcb() are
    extended accordingly, no counterpart of rcv_numsacks is available in
    the cxgbe(4) TOE PCB, though.
    
    Sponsored by:	NetApp, Inc. (originally)
    sparcplug committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    dc485b9 View commit details
    Browse the repository at this point in the history
  18. kbdcontrol: Support building as a bootstrap tool on old and non-FreeBSD

    Systems that predate 971bac5 ("kbd: consolidate kb interfaces
    (phase one)") cannot build kbdcontrol since kbdelays and kbrates moved
    to sys/kbio.h. Moreover, on non-FreeBSD, it requires all kinds of ioctls
    and sysctls that are highly FreeBSD-specific to build, but we use it as
    a bootstrap tool to generate the keymaps used by some kernels (LINT ones
    in particular). Thus, when bootstrapping kbdcontrol, disable everything
    that's not needed for that singular use, and use the in-tree kbio.h to
    get the definitions of the necessary structures.
    
    This allows KBDMUX_DFLT_KEYMAP, UKBD_DFLT_KEYMAP and ATKBD_DFLT_KEYMAP
    to be enabled when building on non-FreeBSD, and thus LINT kernels.
    
    Reviewed by:	imp
    Differential Revision:	https://reviews.freebsd.org/D41541
    jrtc27 committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    968a3db View commit details
    Browse the repository at this point in the history
  19. arm: Add missing no-ctfconvert for fw_stub.awk target

    This target produces a C file not an object file, so using ctfconvert on
    it should not be attempted. This keeps it in sync with all other uses of
    fw_stub.awk, squashes a warning seen during the build of TEGRA124 on
    FreeBSD and avoids the same issue failing the build on non-FreeBSD (such
    errors are #ifdef'ed into being warnings on FreeBSD in ctfconvert, which
    should be revisited in the future).
    
    Reviewed by:	manu
    MFC after:	1 week
    Differential Revision:	https://reviews.freebsd.org/D41542
    jrtc27 committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    c9b2751 View commit details
    Browse the repository at this point in the history
  20. libzstd: Explicitly define ZSTD_DISABLE_ASM

    On FreeBSD, ZSTD_ASM_SUPPORTED is defined as 0, but on macOS and Linux
    it is defined as 1, yet we don't build any of the assembly sources.
    Rather than add them just for bootstrapping on non-FreeBSD, explicitly
    define ZSTD_DISABLE_ASM so they're not needed and everything is
    consistent.
    
    This fixes building a bootstrap LLVM toolchain on non-FreeBSD amd64 (the
    only architecture with assembly available).
    
    Reviewed by:	emaste, imp
    Differential Revision:	https://reviews.freebsd.org/D41543
    jrtc27 committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    4101bcf View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    80e9ea4 View commit details
    Browse the repository at this point in the history
  22. ofed: mask seq_num identifier to occupy only 3 bytes

    The seq_num among other things is used to assign rq_psn value, which is
    a 24-bit identifier.  When the seq_num is full 4-byte value, we are
    usually receiving: '_ib_modify_qp rq_psn overflow, masking to 24 bits'
    warning.
    
    This is burdensome for running rdma traffic with large number of
    connections, because the number of logs is growing fast.
    
    Signed-off-by: Bartosz Sobczak <bartosz.sobczak@intel.com>
    Signed-off-by: Eric Joyner <erj@FreeBSD.org>
    
    Reviewed by:	kib@, erj@
    MFC after:	3 days
    Sponsored by:	Intel Corporation
    Differential Revision:	https://reviews.freebsd.org/D41531
    bsobczak authored and ricera committed Aug 22, 2023
    Configuration menu
    Copy the full SHA
    c7f73a1 View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2023

  1. add pmap_active_cpus()

    For amd64, i386, arm, and riscv, i.e. all architectures except arm64,
    the custom implementation is provided since we maintain the bitmask of
    active CPUs anyway.
    
    Arm64 uses somewhat naive iteration over CPUs and match current vmspace'
    pmap with the argument. It is not guaranteed that vmspace->pmap is the
    same as the active pmap, but the inaccuracy should be toleratable.
    
    Sponsored by:	The FreeBSD Foundation
    MFC after:	1 week
    Differential revision:	https://reviews.freebsd.org/D32360
    kostikbel committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    8882b78 View commit details
    Browse the repository at this point in the history
  2. Add cpu_sync_core()

    Sponsored by:	The FreeBSD Foundation
    MFC after:	1 week
    Differential revision:	https://reviews.freebsd.org/D32360
    kostikbel committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    74ccb8e View commit details
    Browse the repository at this point in the history
  3. Add membarrier(2)

    This is an attempt at clean-room implementation of the Linux'
    membarrier(2) syscall.  For documentation, you would need to read
    both membarrier(2) Linux man page, the comments in Linux
    kernel/sched/membarrier.c implementation and possibly look at
    actual uses.
    
    Sponsored by:	The FreeBSD Foundation
    MFC after:	1 week
    Differential revision:	https://reviews.freebsd.org/D32360
    kostikbel committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    4a69fc1 View commit details
    Browse the repository at this point in the history
  4. Regen

    kostikbel committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    c7df872 View commit details
    Browse the repository at this point in the history
  5. type01 add tests

    toor1245 committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    ce63873 View commit details
    Browse the repository at this point in the history
  6. update crc32 to type06

    toor1245 committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    01a4693 View commit details
    Browse the repository at this point in the history