[X86] Tidyup atom fpu->gpr costs (#214454)
These had matching high latency and throughput numbers, which suggest
they hadn't been updated since the itinerary conversion.
Confirmed with Agner, uops.info and instlatx64 which report a consistent
throughput of 2cy, latency seems to be about 4cy (uops.info just says <=
6cy)
Noticed while trying to confirm #214191 vector reduction costs for atom
type cpus, and llvm-mca was reporting some very odd numbers for bonnell.
ixgbe: rebuild the shared multicast table
The MTA is shared by the PF and all VFs. The VF mailbox handler only
ORs new bits, so hashes survive list removal and VF reset. Conversely,
PF multicast updates replace the whole table with PF-only state and
discard live VF filters.
Rebuild the table from the PF list and every active VF whenever either
changes. Clear VF multicast state during reset and PF reinitialization,
and remove all VF hashes on SR-IOV teardown. Keep the software shadow
and multicast control state synchronized, and avoid writes to unchanged
MTA registers.
Adapt the aggregate desired-state rebuild introduced for igb(4) in
a2ed165f0049 and its write-elision scheme from 350211ab1782 to ixgbe's
shared MTA.
MFC after: 1 week
ixgbe: rebuild the shared multicast table
The MTA is shared by the PF and all VFs. The VF mailbox handler only
ORs new bits, so hashes survive list removal and VF reset. Conversely,
PF multicast updates replace the whole table with PF-only state and
discard live VF filters.
Rebuild the table from the PF list and every active VF whenever either
changes. Clear VF multicast state during reset and PF reinitialization,
and remove all VF hashes on SR-IOV teardown. Keep the software shadow
and multicast control state synchronized, and avoid writes to unchanged
MTA registers.
Adapt the aggregate desired-state rebuild introduced for igb(4) in
a2ed165f0049 and its write-elision scheme from 350211ab1782 to ixgbe's
shared MTA.
MFC after: 1 week
ixv: reconcile the PF-approved MAC address
The shared VF set-RAR helper restores hw.mac.addr when the PF rejects a
requested address, but ixv ignores the error and leaves the interface
link-layer address unchanged. Subsequent initialization repeats the
rejected request while the interface appears to use an address the PF
will not deliver.
Refresh the permanent address returned by the PF after every successful
reset handshake. Copy the resulting PF-approved address back to the
interface and emit the normal link-layer address notification without
re-entering the driver initialization path. This also recovers from a
prior mailbox transport failure or a PF-side reassignment.
Adapt the igb VF address reconciliation added in a6bb3850e7c6.
MFC after: 1 week
ixv: reconcile the PF-approved MAC address
The shared VF set-RAR helper restores hw.mac.addr when the PF rejects a
requested address, but ixv ignores the error and leaves the interface
link-layer address unchanged. Subsequent initialization repeats the
rejected request while the interface appears to use an address the PF
will not deliver.
Refresh the permanent address returned by the PF after every successful
reset handshake. Copy the resulting PF-approved address back to the
interface and emit the normal link-layer address notification without
re-entering the driver initialization path. This also recovers from a
prior mailbox transport failure or a PF-side reassignment.
Adapt the igb VF address reconciliation added in a6bb3850e7c6.
MFC after: 1 week
[PAC][ELF] Make non-preemptible IFUNC GOT assertion an error and extend
Support for R_AARCH64_AUTH_IRELATIVE is not yet present in LLD, but we
accept various input that would give rise to needing it. For the direct
reloc case, replaceWithDefined asserts (rather than give an error
message) this was not requested, whilst for the non-direct reloc case it
silently ignores which GOT type was requested. In the latter case, and
the former when assertions are disabled, this results in mis-linking the
object, producing one with a non-AUTH GOT entry, that would presumably
then fail the AUTDA operation in any user of it (aside from the IPLT
entry generated by LLD).
Fixes: 417d2d7ce694 ("[PAC][lld][AArch64][ELF] Support signed GOT (#113815)")
ixv: defer every admin-vector interrupt
The VF admin vector carries both link and PF mailbox causes, but the
filter schedules the admin task only for link-status changes. Defer
administration for every interrupt so reset and control notifications
are serviced promptly.
MFC after: 1 week
ixv: defer every admin-vector interrupt
The VF admin vector carries both link and PF mailbox causes, but the
filter schedules the admin task only for link-status changes. Defer
administration for every interrupt so reset and control notifications
are serviced promptly.
MFC after: 1 week
[flang][debug] Emit debug info for named constants (#213974)
Fixes https://github.com/llvm/llvm-project/issues/213966.
Only globals whose uniqued name deconstructs to `NameKind::VARIABLE`
were described. A Fortran named constant (PARAMETER) is mangled with EC
and deconstructs to `NameKind::CONSTANT`, so it got no debug info at all
and a debugger could not evaluate one, whether it was declared in a
module or inside a procedure.
A module constant is described the way a module variable already is,
with a `DIGlobalVariable` scoped to the `DIModule`. A constant local to
a procedure is described in the scope of that procedure.
Two related fixes for entities whose global has internal linkage, which
covers both a procedure local constant and a procedure local SAVE
variable that was already being described:
- `isLocalToUnit` was hardcoded to false, so these were marked
[10 lines not shown]
net/ucx: Improve FreeBSD ucx_vfs support
- replace Linux-specific fusermount3 with mount_fusefs/umount
- use FreeBSD-compatible FUSE capability detection
- fix UNIX socket ancillary data handling for SCM_RIGHTS and peer
credentials on FreeBSD
This allows ucx_vfs to start and communicate correctly on FreeBSD.
PR: 297093
Reported-by: Laurent Chardon <laurent at FreeBSD.org>
Reviewed by: thierry (mentor)
Approved by: thierry (mentor)
net/ucx: Improve FreeBSD ucx_vfs support
- replace Linux-specific fusermount3 with mount_fusefs/umount
- use FreeBSD-compatible FUSE capability detection
- fix UNIX socket ancillary data handling for SCM_RIGHTS and peer
credentials on FreeBSD
This allows ucx_vfs to start and communicate correctly on FreeBSD.
PR: 297093
Reported-by: Laurent Chardon <laurent at FreeBSD.org>
Reviewed by: thierry (mentor)
Approved by: thierry (mentor)
[mlir][vector] Disallow vector broadcast along scalable dim (#212197)
Broadcasts from vectors to higher rank vectors get lowered recursively
by iterating over leading dimensions to create "size(dimension)" insert
ops. This cannot be done for scalable dimensions whose size is unknown.
This PR prevents such transforms from occurring by stopping if the
leading dimension is scalable.
databases/erlang-p1_pgsql: Update to 1.1.41
# Version 1.1.41
* Updating stringprep to version 1.0.34.
# Version 1.1.40
* Fix issues reported by dialyzer
# Version 1.1.39
* Stop depending on xmpp, and replace its usage with stringprep
[AArch64] Fix wrong comment on TTI(NFC) (#213743)
The Apple runtime unroll preference in context only accepts single BB
loops by `if (Header == Latch)`