Update KiCAD to 10.0.4
- Take maintainership
- Added -DBOOST_STACKTRACE_GNU_SOURCE_NOT_REQUIRED to fix the build with
Boost. I’ve taken this from other ports.
- patch-cmake_FindPoppler_cmake I have removed all references to Qt, as
otherwise we would be linking agents Qt, which makes no sense in this
port.
Runtime test feedback from two users
iked: vroute: Validate routing socket replies
When parsing malformed RTM replies from the kernel vroute_process()
might walk beyond the response buffer. Therefore check msglen and
rtm_msglen cover the header, and bound every sa_len against the
remaining message and sizeof(struct sockaddr_storage) before copying.
From Andrew Griffiths, thanks!
rework how mbufs share references to external storage
previously mbufs that shared a reference to the same external storage
were linked together with a pair of lists, but operations on these
lists have to be serialised because different cpus can be working
on on mbufs that share the same external storage. this serialisation
was provided by a single global mutex, which has now become contended
when the kernel is doing a lot of work that relies on shared external
storage.
this diff replaces the links with an m_ext_refs struct that "proxies"
the external storage information on mbufs when that storage is first
shared between two mbufs. that struct contains a refcnt that's
increased if the external storage is shared again, and only when
the refcnt drops to zero is the external storage actually released
with the original free handler. these per shared storage refcnts
replace the global mutex for coordinating the "finalisation" and
actual free of the external storage.
[9 lines not shown]
www/superhtml: explicitly set CPU
lang/zig default behaviour is to compile for the specific CPU on which it
runs. This specifies a more generic baseline CPU for amd64 and arm64.
Here's hoping that this fixes the issues observed with the binary in
current packages.