682c31db kp Feb. 1, 2021, 8:25 p.m.
Verify that the option is passed, error out if it's not.
The problem can be trivially triggered with `ipfw add allow ext6hdr`.

PR:		253169
Reviewed by:	kp@
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D28447
cgit
38bfc6de markj Feb. 1, 2021, 4:15 p.m.
Memory and PCI resources are freed with no particular order.  This could
cause use-after-frees when detaching following a failed attach.  For
instance, iflib_tx_structures_free() frees ctx->ifc_txqs[] but
iflib_tqg_detach() attempts to access this array. Similarly, adapter
queues gets freed by IFDI_QUEUES_FREE() but IFDI_DETACH() attempts to
access adapter queues to free PCI resources.

MFC after:	2 weeks
Sponsored by:	NetApp, Inc.
Differential Revision:	https://reviews.freebsd.org/D27634
cgit
45ecda8e royger Feb. 1, 2021, 2:41 p.m.
All callers of bi_load64 pass 0 as the addr parameter, so just remove
it and always calculate the last load address from the module chain.

No functional change.

Sponsored by:		Citrix Systems R&D
Reviewed by:		tsoome, imp
Differential revision:	https://reviews.freebsd.org/D28412
cgit
243125c8 mhorne Feb. 1, 2021, 2:39 p.m.
With e5cc1c474841, this option is also disabled by WITHOUT_OPENSSL and
WITHOUT_CRYPT.
cgit
e5cc1c47 mhorne Feb. 1, 2021, 2:31 p.m.
libzfs has a dependency on libcrypto. This causes a buildworld link
failure when WITHOUT_OPENSSL/WITHOUT_CRYPT is set.

This dependency was added implicitly by the switch to OpenZFS, and
explicitly in 40d0fd287510 and cd568e2b1b67.

PR:		252841
Reviewed by:	kevans, freqlabs
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D28431
cgit
88be0e11 kp Feb. 1, 2021, 2:27 p.m.
Add the missing commas that got lost in e5539fb618cc7.

PR:		252532
Reviewd by:	kp@, donner@, freqlabs@
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D28425
cgit
05985a7f jrtc27 Feb. 1, 2021, 2:15 p.m.
The existing implementation relies on each trap handler saving a normal
stack frame record, which is a waste of time and space when we're
already saving a trapframe to the stack. It's also wrong as it currently
saves LR not ELR.

Instead of patching it up, rewrite it based on the RISC-V implementation
with inspiration from the amd64 implementation for how to handle
vectored traps to provide an improved implementation. This includes
compressing the information down to one line like other architectures
rather than the highly-verbose old form that repeats itself by printing
LR and FP in one frame only to print them as PC and SP in the next. It
also includes printing out actually useful information about the traps
that occurred, though FAR is not saved in the trapframe so we cannot
print it (in general it can be clobbered between when the trap happened
and now), only ESR.

The AAPCS also allows the stack frame record to be located anywhere in
the frame, not just the top, so the caller's SP is not at a fixed offset
from the callee's FP like on almost all other architectures in
existence. This means there is no way to derive the caller's SP in the
unwinder, and so we have to drop that bit of (unused) state everywhere.

Reviewed by:	jhb, markj
Differential Revision:	https://reviews.freebsd.org/D28026
cgit
db46c0d0 hselasky Feb. 1, 2021, 1:24 p.m.
MFC after:	1 week
Discussed with:	rrs@
Differential Revision:  https://reviews.freebsd.org/D28357
Sponsored by:	Mellanox Technologies // NVIDIA Networking
cgit
bdd4630c tuexen Feb. 1, 2021, 1:04 p.m.
MFC after:	3 days
cgit
69c5fa5c mjg Feb. 1, 2021, 12:18 p.m.
This wil be handled differently upstream and merged later.
cgit
3447df8b np Feb. 1, 2021, 11 a.m.
- The behavior implemented in r362905 resulted in delayed transmission
  of packets in some cases, causing performance issues.  Use a different
  heuristic to predict tx requests.

- Add a tunable/sysctl (hw.cxgbe.tx_coalesce) to disable tx coalescing
  entirely.  It can be changed at any time.  There is no change in
  default behavior.
cgit
5cf6f1c4 arichardson Feb. 1, 2021, 9:32 a.m.
This option has been equivalent to any form of C++ support since libstdc++
was removed. Therefore, replace all MK_LIBCPLUSPLUS uses with MK_CXX.

Reviewed By:	emaste
Differential Revision: https://reviews.freebsd.org/D27974
cgit
d6f9c5a6 gonzo Feb. 1, 2021, 7:56 a.m.
NetLogic platforms have their own implementation of cpu_init_interrupts.
Apply the same logic to it as to intr_machdep.c.

PR:	253051
cgit
e6ff6154 mjg Feb. 1, 2021, 4:53 a.m.
aae89f6f mjg Feb. 1, 2021, 4:53 a.m.