rtld: explain the use of rtld_bind_lock in rtld_get_addr_slow()
Discussed with: jrtc27
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D59269
rtld i386: use macro for the 'GNU ABI' calling convention of TLS resolver
Discussed with: jrtc27
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D59269
dns/wdns: Upgrade to 0.13.0
0.13.0:
* Remove strict aliasing violations.
* Replace Python dependency with shell script.
* Fix various off-by-one errors in bounds checking.
* Various small build and test fixes.
MFH: 2026Q3
Sponsored by: DomainTools LLC
(cherry picked from commit 8a8a26d3b2c0dcdc01a60e11a07ef069338ac1ab)
[VPlan] Preserve branch weights from VPlan0 through to codegen. (#213143)
This patch adds support for carrying through branch weights from the
original scalar loop through VPlan.
The flow is as follows:
1. On the scalar VPlan, we import the branch weights from the existing
IR branches and add them as !prof metadata to VPInstruction terminators
2. The predicator dissolves the control flow and each block will get
executed unconditionally. What remains are predicated recipes, with
their lanes executing with probability relative to the header. Compute
the executing probabilities as sum of probabilities of all incoming
edges.
3. Each masked recipe gets the execution probability attached as custom
!vplan.execution.frequency metadata
4. When creating replicate regions, a predicated recipe is replaced by
explicit control fold. The execution frequency from the recipe is
converted to profile metadata and added to the newly introduced
[23 lines not shown]
[include-cleaner] Support Objective-C literals and boxed expressions in WalkAST (#216201)
This change adds AST visitors for ObjCBoxedExpr, ObjCArrayLiteral,
ObjCDictionaryLiteral, and ObjCStringLiteral. This ensures that the
underlying class interfaces (such as NSNumber, NSArray, NSDictionary,
and NSString) and any associated categories used for these literals are
correctly reported as referenced. Unit tests are included to verify the
new behavior.
video: bump __FreeBSD_version for V4L2 camera class renumbering
The camera control IDs in videoio.h changed numeric values; ports
consuming V4L2 camera controls need to be rebuilt.
Reviewed by: thierry
Differential Revision: https://reviews.freebsd.org/D59460
video(4): fix camera control class ABI and add missing V4L2 constants
Renumbered the camera class to match the reference ABI and added the
constants ported applications expect:
Reviewed by: thierry
Differential Revision: https://reviews.freebsd.org/D59459
rpi5: drop framebuffer_depth=32 from config.txt
The setting existed because the console runs on the firmware framebuffer,
where an unset depth yields 16bpp, bcm2835_fbd(4) then asks for 24, and the
console comes up dim and blue-cast. With VideoCoreKMS autoloading
(nextbsd-kernel-extensions#185) the intent is that KMS owns the display and
the firmware's depth stops mattering.
NOT VERIFIED ON HARDWARE. The Pi was unreachable when this was written, so
nobody has looked at a console without this line. Three things say it may
still be required, and they are recorded in the file rather than left for
someone to rediscover:
- the firmware allocates the console framebuffer before any kext can load,
so autoload does not change what happens at boot
- KMS does not take over the console. Measured with KMS loaded and
/dev/dri/card0 present:
fb0: <BCM2835 VT framebuffer driver> on simplebus0
[12 lines not shown]
Implement page table mirroring in apldart(4) and use that to enable the
IOMMU for the USB controllers on Apple Silicon.
Based on a diff from Heyang Zhou.
13962 Support using CPUID instruction for TSC frequency when available
Reviewed by: Toomas Soome <tsoome at me.com>
Reviewed by: Andy Fiddaman <illumos at fiddaman.net>
Reviewed by: Hans Rosenfeld <rosenfeld at grumpf.hope-2000.org>
Approved by: Robert Mustacchi <rm at fingolfin.org>
ZIO: Batch vdev children completions
A vdev child ZIO's life after return from the block layer is three cheap
pipeline stages, yet each child costs its own taskq dispatch and context
switch to get there, only to decrement the parent's child count and die.
Even with increased number of taskqueues this can create a huge lock
contention and scheduler overheads, especially on large systems.
To avoid that extra cost collect the leaf children of a RAIDZ, dRAID or
mirror parents as they come back, and only once the last one is in,
process all of their completions, followed by the parent's one, all on
a single thread.
This optimization is mutually exclusive with I/O scheduler, since
delayed completions there may lead to a deadlock, but for that case I
have somewhat alike optimization idea later.
With this change my tests of 32KB block writes to 3x 5-wide NVMe RAIDZ1
on 64-core system show throughput increase from 13 GiB/s to 17 GiB/s,
[4 lines not shown]
databases/mysql*-server: make the rc script service jail aware
Set a default of net_basic for the service jail options, so mysqld
can use IPv4/IPv6 when it is started in a service jail. The default
can be overridden via rc.conf.
PR: 279672
Sponsored by: Netzkommune GmbH