Mk/Uses/electron.mk: Use absolute path for jq and yq commands
Using bare "jq" or "yq" in a parse-time != assignment fails with a
minimal PATH, printing "/bin/sh: jq: not found". Running jq/yq with
absolute path prevents the error.
PR: 299151
Reported by: dvl
Reviewed by: mat
Co-authored-by: Dan Langille <dvl at FreeBSD.org>
graphics/photocraft: Native image editor with layers, masks, type and PSD support
PhotoCraft is an open-source, native image editor written in Rust that works
the way Photoshop users expect: layers, masks, adjustment layers, layer
styles, type, vectors, brushes and selections, with 8/16/32-bit documents
and layered PSD/PSB files that round-trip. The canvas is composited on the
GPU through wgpu, with a CPU compositor as the reference.
The package also installs photocraft-cli, a headless converter and command
runner for batch work and automation.
arm64/vmm: vgic_v3: Fix missing free of vgic_cpu->private_irqs
vgic_cpu->private_irqs is allocated but never freed, as a result leaking
memory whenever the vmm module is unloaded. Add the missing free.
Signed-off-by: Kajetan Puchalski <kajetan.puchalski at arm.com>
Reviewed by: andrew
Sponsored by: Arm Ltd
Pull Request: https://github.com/freebsd/freebsd-src/pull/2439
arm64/vmm: vgic_v3: Set EOI for level-triggered interrupts
ICH_LR_EL2 bit 41 (EOI) determines whether a maintenance interrupt will
be asserted if the interrupt identified by the LR's vINTID is
deactivated. For level-triggered interrupts, that maintenance interrupt
is necessary for the host to resample the current level once the
interrupt is deactivated.
Set the EOI bit when flushing level-triggered interrupts into LRs.
Signed-off-by: Kajetan Puchalski <kajetan.puchalski at arm.com>
Reviewed by: andrew
Sponsored by: Arm Ltd
Pull Request: https://github.com/freebsd/freebsd-src/pull/2437
arm64: Fix the MPIDR_EL1 field names
Use the field names from the Arm Documentation for the MPIDR_EL1
register. These will later be generated from a BSD Licensed JSON file
so to reduce the diff for that rename now.
Reviewed by: kajetan.puchalski_arm.com
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D59176
arm64: Use sysinsn.h to generate tlbi instructions
Some toolchains may not understand the .arch_extension.
Reviewed by: jhb
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D59148
arm64: Add a header for system instructions
Like armreg.h for system registers add a header to hold macros for
system instructions.
Reviewed by: jhb
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D59147
x11/quickshell: Fix a use-after-free in Hyprland IPC requests
HyprlandIpc::makeRequest() deletes the request socket inside the
socket's own readyRead handler, after which QIODevice touches the
deleted object. With FreeBSD-CURRENT's malloc junk filling every
Hyprland session crashes the shell with SIGBUS on its first
request. Defer the deletion and disconnect the socket so the callback
runs once.
Closes: https://github.com/freebsd/freebsd-ports/pull/634
Reported by: Jordan Hubbard <jordanhubbard at gmail.com>
Pull Request: https://github.com/freebsd/freebsd-ports/pull/634
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
ulimit(3): Improve UL_{GET,SET}FSIZE wording
Reword the UL_GETFSIZE and UL_SETFSIZE descriptions to say 512-byte
blocks and make the setter's argument clearer.
While here, improve mdoc markup and pull in other small improvements.
Reviewed by: des
MFC after: 3 days
Obtained from: https://github.com/apple-oss-distributions/libc
Sponsored by: Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D60467
net/intel-iavf-kmod: broken on 15+
iavf_lib.c:1501:18: error: no member named 'msix_msgnum' in 'struct pcicfg_msix'
1501 | dinfo->cfg.msix.msix_msgnum = (msix_ctrl & PCIM_MSIXCTRL_TABLE_SIZE) + 1;
security/vuxml: Correct postgresql-jdbc vulnerability
Apparenly, <range> with a ge and a lt requires both ends in the same
range, or they will be aggregated using logical OR.
www/code-server: Update to 4.141.0
A new --enable-remote-storage flag stores workbench state on the
server instead of in the browser, so it can be shared between
devices. The TypeScript extension no longer fails to activate because
it was loaded as a browser extension. Pasting a copied block at a
single cursor distributes its rows across successive lines.
Changelog: https://github.com/coder/code-server/releases
Sponsored by: Netzkommune GmbH
net/linux-remotedesktopmanager: Update to 2026.3.1.1
Fixes several SSH shell problems: special characters went to the wrong
session, a stuck Alt key state, and the SFTP pane could not be opened.
Also fixes the All Vaults search on Linux, German keyboards in RDP and
RDP through an RD Gateway with Negotiate and Devolutions SSPI.
Changelog:
https://devolutions.net/remote-desktop-manager/release-notes/linux/
Sponsored by: Netzkommune GmbH
if_bnxt: dcb: serialize HWRM sends and avoid freeing DMA bufs on timeout
Every _hwrm_send_message() call in bnxt_dcb.c ran without BNXT_HWRM_LOCK,
unlike the rest of the driver, letting concurrent HWRM commands race on
the shared MMIO doorbell and response buffer. Route single-shot sends
through the already-locked hwrm_send_message() wrapper, and wrap the
remaining send+response-read sequences in explicit BNXT_HWRM_LOCK/UNLOCK.
Also stop freeing the transient DMA buffers used for structured-data
get/set on ETIMEDOUT: a host-side timeout doesn't guarantee firmware
actually gave up, so a late completion could still DMA into memory
that's since been freed and reused. Leak the buffer instead in that case.
Reviewed by: gallatin
MFC after: 2 weeks
Sponsored by: Broadcom Inc.
Differential Revision: https://reviews.freebsd.org/D60179
if_bnxt: don't reserve RoCE MSI-x on chips that don't support RoCE
RoCE is only supported on Thor and onwards chips.
bnxt_init_sctx_variants() unconditionally set isc_admin_intrcnt to
BNXT_ROCE_IRQ_COUNT for every PF device, stealing 9 MSI-x vectors from
older, non-RoCE-capable chips that will never use them.
Gate the reservation on the device ID: RoCE-capable chips keep
BNXT_ROCE_IRQ_COUNT, other chips fall back to 1, the baseline
isc_admin_intrcnt value used before RoCE support (commit 050d28e13cde)
repurposed it for RoCE MSI-x on every device.
Reviewed by: gallatin
MFC after: 2 weeks
Sponsored by: Broadcom Inc.
Differential Revision: https://reviews.freebsd.org/D59091
if_bnxt: port workqueue, task-queue, and synchronization kPIs to FreeBSD natives
- Replace Linux workqueue (struct workqueue_struct, bnxt_pf_wq) with a
FreeBSD taskqueue (bnxt_taskq) shared by every attached PF. bnxt_taskq
is created once at module load and destroyed once at module unload
(SYSINIT/SYSUNINIT on SI_SUB_KLD), matching the module-owned-taskqueue
idiom used elsewhere in the tree (e.g. sys/dev/cxgbe/t4_main.c's
reset_tq). This replaces an earlier lazy, per-attach/detach
create-or-reuse scheme guarded by a mutex and a "ready" flag, which
had a real race: bnxt_queue_sp_work()/bnxt_queue_fw_reset_work() and
bnxt_attach_pre() re-read the bnxt_taskq/bnxt_taskq_ready globals
outside the mutex right after the lazy-init call returned, so a
concurrent bnxt_detach() on another PF freeing the shared queue once
bnxt_num_pfs hit 0 could race a still-attached PF into enqueuing onto
a freed taskqueue. Tying the taskqueue's lifetime to the module
instead of to any one PF's attach/detach removes that race outright,
since the module can't unload while a PF is still attached.
- Replace struct work_struct sp_task with struct task sp_task;
[42 lines not shown]
if_bnxt: port endian, memory-barrier, and bitops kAPIs to FreeBSD natives
There are few more Linux kernel APIs left in the code. So,
replaced them with corresponding FreeBSD native APIs.
- Replace cpu_to_le16/32/64/le16_to_cpu/le32_to_cpu/le64_to_cpu with
htole16/32/64/le16toh/le32toh/le64toh throughout bnxt_hwrm.c and
the vf-event producer path in if_bnxt.c.
- Replace rmb()/wmb() interprocessor-ordering uses in bnxt_ulp.c
(publishing/consuming ulp->async_events_bmap and max_async_event_id
across CPUs) with atomic_thread_fence_acq()/atomic_thread_fence_rel();
keep wmb() for the HWRM doorbell/DMA ordering barrier in
_hwrm_send_message() (bnxt_hwrm.c), since atomic_thread_fence_rel()
compiles to a bare compiler barrier on amd64/i386 and does not order
the request-buffer store against the doorbell MMIO write.
- Replace hweight32 with bitcount32, ARRAY_SIZE with nitems, and
DECLARE_BITMAP with a plain unsigned long array (sized via
howmany()) in bnxt_hwrm_func_drv_rgtr(); replace the __set_bit/
test_bit calls there with bit_set()/bit_test() from
[12 lines not shown]
if_bnxt: add support for SIOCGI2CPB page/bank i2c requests
Advertise IFLIB_I2C_PAGE_BANK and forward the requested page/bank to
firmware, so CMIS optics can be read correctly instead of falling
back to bogus legacy SFF-8472 decoding. Also fix bnxt_i2c_req() to
return positive errno values.
Signed-off-by: gallatin
Reviewed by: gallatin
MFC after: 2 weeks
Sponsored by: Broadcom Inc.
Differential Revision: https://reviews.freebsd.org/D59573