pf: Add missing PF_TS_CNT Netlink attribute
There is no parser entry for PF_TS_CNT, therefore PF_TS_REFCNT
is written starting at pfrts_cnt, causing the refcount
to be wrongly shown in the "Addresses:" section of print_tstats().
Issue: https://github.com/opnsense/src/issues/300
igc: additionally disable PCIe ASPM for I226
Always disable PCIe ASPM for i226 type cards to improve stability
and wire sysctl calls to iflib_request_reset instead of igc_if_init
as this will stall the drivers RX path.
py-django-localflavor: updated to 5.1
5.1 (2026-08-01)
New flavors:
- Added local flavor for Qatar
- Added local flavor for Taiwan
- Added local flavor for United Arab Emirates
New fields for existing flavors:
- US: Added ``USIndividualTaxpayerIdentificationNumberField``,
``USAdoptionTaxpayerIdentificationNumberField``, and
``USTaxpayerIdentificationNumberField`` form and model fields for validating
ITINs, ATINs, and any valid U.S. taxpayer identification number (SSN, ITIN,
or ATIN).
Modifications to existing flavors:
[7 lines not shown]
py-drf-nested-routers: updated to 0.95.3
0.95.3
Removed support to EOLed Python 3.9. Still works for now, but no CI will validate it anymore.
Update flake8 to 7.1.1
Test against DRF 3.16 and Django 5.2
Test and advertise DRF 3.16 and Django 5.2 compatibility
Fix Error when request.data is a list. Fixes #349.
Update mypy to 1.13.0
Fix release pyc leakages
Add Python 3.14 & Update release flow
py-djangorestframework: updated to 3.18.0
3.18.0
Breaking changes
Drop support for Django 4.2, Django 5.0 and Django 5.1
Change errors for list serializers (many=True) to dict format
Features
Add support for Django 6.1
Add unaccent to SearchFilter
Add @throttle_scope function based view decorator
Add nulls_distinct support to UniqueTogetherValidator
Bug fixes
Replace cc_delim_re usage with split_header_value for Django 6.1+ compatibility
[9 lines not shown]
igc: Disable PCIe L1.2 on I225
I225 devices can incorrectly enter L1 substates while CLKREQ# is
asserted, both while idle and in D3. Disable ASPM and PCI-PM L1.2 on
I225 to prevent the resulting packet loss.
Keep the I226 workaround ASPM-only because it addresses a separate
traffic exit latency observation.
PR: 265714
(cherry picked from commit 4a28d390f5fbae2483e88805559881b04ccf9a80)
igc: Disable ASPM L1.2 on I226 to prevent RX stalls
I226 parts advertise support for the PCIe L1.2 link substate, but a
hardware erratum makes the exit latency from that low-power state
longer than the packet buffer can absorb under load. This stalls the
inbound packet stream. Disabling ASPM system-wide (BIOS or OS ASPM
policy) does not fix it. The L1.2 enable bit must be cleared directly
in the device's own PCIe L1 PM extended capability.
Add igc_is_device_id_i226() to identify affected parts and
igc_disable_broken_aspm_l1_2() to clear the ASPM L1.2 enable bit
on attach and after resume, since PCIe config space can be
reset across a suspend/resume cycle.
Adapted from the Linux igc driver:
0325143b59c6 igc: disable L1.2 PCI-E link substate to avoid
performance issue
1468c1f97cf3 igc: fix disabling L1.2 PCI-E link substate on I226
[9 lines not shown]
py-django-stubs-ext: updated to 6.0.9
6.0.9
6.0.8 was supposed to be the last 6.0.x release, but we found several regressions that we wanted to fix.
Now we are working on 6.1.0 release :)
Detect every generic stub class in the generic consistency test
Don't crash on a many-to-many through model that can't be resolved
py-django5: updated to 5.2.17
Django 5.2.17 fixes one security issue with severity “high”, two security
issues with severity “moderate”, and one security issue with severity “low” in
5.2.16.
py-django: updated to 6.1
The Django team is happy to announce the release of Django 6.1.
The release notes offer a harmonious mélange of new features and usability improvements. A few highlights are:
- Model field fetch modes for configuring on-demand fetching behavior
- Database-level delete options for ForeignKey.on_delete
- Dictionary-based email settings
sys/socket.h: Fix AF_MAX
AF_MAX was always intended to be one more than the greatest allocated
value. Jeff broke this in 2013. Unfortunately, a bunch of people then
decided to adapt to the mistake instead of correcting it.
Fixes: 863c7e45628d (" - Reserve a special AF for SDP. The one we were incorrectly using before was taken by another AF.")
MFC after: 3 days
Sponsored by: Klara, Inc.
Sponsored by: NetApp, Inc.
Reviewed by: kevans, glebius
Differential Revision: https://reviews.freebsd.org/D58597
(cherry picked from commit ddd850aa7720f77b6605599655df898b16ed74cc)
ena: Update driver version to v2.8.4
Bug Fixes:
* Fix false 'missing TX completions' warnings due to timestamp race
* Put taskqueues into correct NUMA domain if !RSS
Minor Changes:
* Batch RX statistics updates
* Swap RX/TX completions cleanup order
Submitted by: Arthur Kiyanovski <akiyano at amazon.com>
MFC after: 2 weeks
Sponsored by: Amazon, Inc.
Reviewed by: cperciva
Differential Revision: https://reviews.freebsd.org/D58242
(cherry picked from commit 605e699cd6ca4feae6c73c5c5ea8337054897116)
ena: Fix false 'missing TX completions' warnings due to timestamp race
Sporadic 'Found a Tx that wasn't completed on time' warnings appear
under sustained TX load, always reporting '1 msecs since last cleanup'
despite the 5-second timeout threshold.
The per-packet TX timestamp uses struct bintime (128 bits: two 64-bit
fields sec and frac) which is read and written non-atomically. A race
exists between the missing TX completion check
(check_missing_comp_in_tx_queue reading the timestamp) and the TX
submit path or cleanup path writing it on another CPU. Since the two
fields are not updated atomically, the check can observe a partially
written timestamp - one field from the old value and one from the new.
This can produce a timestamp with {sec=0, frac=valid}, causing the
check to compute a time offset equal to system uptime and falsely
exceeding the 5-second timeout.
Confirmed by instrumentation showing all occurrences had sec=0 with
valid frac/mbuf, cleanup_running=0, and ticks==last_cleanup_ticks.
[24 lines not shown]
ena: Batch RX statistics updates
Move per-packet counter_enter/counter_exit pairs out of the RX
processing loop and batch them into a single update after the
loop completes.
Previously, each received packet triggered two separate
counter_enter/counter_exit blocks -- one for bytes and one for
packet count. This commit accumulates totals in local variables
and updates all four counters (ring and hw stats for both packets
and bytes) in a single counter_enter/counter_exit block after the
loop.
Also move the stats update to after the refill and LRO flush
so that the error path (goto update_stats) and the normal path
converge at the same label, avoiding code duplication.
Submitted by: David Arinzon <darinzon at amazon.com>
MFC after: 2 weeks
[5 lines not shown]
ena: Swap cleanup order
As RX processing is heavier than TX completions processing, swap the
order and process TX completions first, in order to avoid starving the
completions and causing potential missing TX completions.
Submitted by: Ofir Tabachnik <ofirt at amazon.com>
MFC after: 2 weeks
Sponsored by: Amazon, Inc.
Reviewed by: cperciva
Differential Revision: https://reviews.freebsd.org/D58239
(cherry picked from commit f08def9ed97f45700eb0611a3fd9240210c9303e)