release: build OCI images with shell scripts
This avoids the need for buildah and skopeo for building releases.
Reviewed by: cpersiva
MFC after: 1 day
Differential Revision: https://reviews.freebsd.org/D48574
routing: do not allow PINNED routes to be overriden
First configured PINNED routes should have higher priority.
Fixes: 1da4954c92ea
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D48650
vnode_pager: simplify loop, avoid overflow
Filling in read-behind pages in vnode_pager_generic_getpages() is made
very slightly simpler here, by avoiding overflowing the startpindex
variable and then avoiding an extra test in the allocation loop that
handles the overflow case.
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D49200
ifconfig: add AES-GCMP RSN OUI decoding
This decodes the AES-GCMP OUI in ifconfig, ifconfig list sta,
ifconfig list scan, etc.
Differential Revision: https://reviews.freebsd.org/D49187
Reviewed by: bz
amdiommu: add register definitions from IOMMU spec 48882 rev. 3.10
Most important for us is the max interrupt remapping count report in the
EFR2 register.
Sponsored by: Advanced Micro Devices (AMD)
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
wifi manuals: Mlink + document description consistency
Interfaces all have an mlink to if_$foo. Add these for the missing ones
and remove an incorrect one from rtwn_pci. Wireless network drivers are
all accessible via `apropos -s4 "wireless network driver", except two
which are "wireless network device". I actually prefer the latter, but
make them all consistent upon the more common parlance. Tag SPDX on one
of the files I touched, while here.
MFC after: 3 days
Reviewed by: bz, carlavilla, mhorne
Approved by: carlavilla, mhorne (mentors)
Differential Revision: https://reviews.freebsd.org/D49063
(cherry picked from commit 4262dbc57982383eb61a8b7806de6dd4b7802da8)
ath_rate_sample: fix setting HT rates
ieee80211_node_set_txrate_ht_mcsrate() takes an MCS rate from 0..76,
the high bit (IEEE80211_RATE_MCS) must not be set.
This is definitely my fault - I likely didn't get to testing this
diff when I changed it from ieee80211_node_set_txrate_dot11rate()
just before landing.
Differential Revision: https://reviews.freebsd.org/D49197
Reviewed by: bz
pf tests: Remove Scapy as a required program
Scapy is not needed to run this test. Remove it from the required
programs list.
Reviewed by: kp
Approved by: emaste (mentor)
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D49006
(cherry picked from commit 1f1963bd32d669f89ea3b044636de0cb7a33134b)
netinet6 tests: Add Scapy as a required program
The ra.py script requires Scapy. Invoke it using the python3 symlink.
While technically, at the moment, python points to python3, and python3
points to the current version of python, it is recommended to use
python3. No functional change intended.
Add the Scapy requirement in the header of each test that makes use of
it.
Reviewed by: kp
Approved by: emaste (mentor)
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D49005
(cherry picked from commit ec60176e7d29d1e9f11121146603ce5b6b5f40b8)
IfAPI: Update ifnet(9) man page
Add starting documentation of the IfAPI to the ifnet(9) page. This
replaces the existing struct ifnet documentation, since it's to be
treated as opaque now.
Reviewed by: #manpages, adrian, ziaee
Differential Revision: https://reviews.freebsd.org/D47931
makefs: Initialize cd9660 inode map only once
Error introduced during a refactoring; cd9660_susp_initialize calls
itself recursively.
Sponsred by: The FreeBSD Foundation
Fixes: 35a2e286157a ("makefs: Record inode for all entries in mtree mode")
iwmbtfw(8): fix getopt flags, unify usage()/manual page contents
Seems like there was an intention to use command line switches
-m, -p and -v (each with argument), but there is no handling
for them.
Also, some enhancements to the usage()/manpage:
- use FreeBSD manpage style -- square brackets -- for denoting
optional arguments in usage();
- show default directory path in usage();
- update manual: -f is the optional flag;
- show descriptions for -I/-D together: they are logically related.
Signed-off-by: Eygene Ryabinkin <rea at FreeBSD.org>
Reviewed by: wulf
[3 lines not shown]
iwmbtfw(8): don't program hardware without existing firmware image
One should not start firmware update sequence just to understand
that there is no firmware image to program: update sequence for 7260
requires leaving manufacturing mode and in the case of missing
firmware file it will trigger complete re-initialization of BT adapter.
Which, in turn, will make the USB device to go away and reappear.
Since devd(8) has hooks for USB device attachment, in the case
of missing firmware it used to
- trigger the (failing) firmware download,
- which triggers device reset,
- which creates USB notification and devd(8) kicks back in.
Nice infinite cycle with many notifications via syslog:
{{{
Jan 3 09:00:01 kernel: ugen0.2: <vendor 0x8087 product 0x0a2a> at usbus0
Jan 3 09:00:01 kernel: ugen0.2: <vendor 0x8087 product 0x0a2a> at usbus0 (disconnected)
Jan 3 09:00:02 kernel: ugen0.2: <vendor 0x8087 product 0x0a2a> at usbus0
[8 lines not shown]
Refactor iwmbtfw: modularize and de-constify
- Move logic for firmware download into different adapter types
to the own functions to allow main() to be simpler
- Use enums/typedefs for exit modes, image types, etc
- Purge most obvious comments: functions are named properly,
so most of their invocations self-document the code.
Signed-off-by: Eygene Ryabinkin <rea at FreeBSD.org>
Reviewed by: wulf
MFC after: 1 month
(cherry picked from commit 06969db312022277729dd144e3655a90007306ef)
Refactor iwmbtfw: set default firmware_dir after argument parsing
Don't repeat firmware_dir stanza at all "if" branches: be more DRY.
Signed-off-by: Eygene Ryabinkin <rea at FreeBSD.org>
Reviewed by: wulf
MFC after: 1 month
(cherry picked from commit f466ba4ca479ec500b927deadaba104469662994)
netlink: refuse a send(2) that is larger than socket buffer
The Netlink RFC doesn't say that explicitly, but general discussion seems
to state that a single netlink message shall be delivered in a single
send(2) to the socket. So, if a single message doesn't fit into buffer it
is clear EMSGSIZE. The RFC is unclear if application is allowed to send
several smaller messages with a single syscall potentially overflowing the
buffer and whether kernel should accept any of them. At the moment, no
legit application does that. So, decision was taken not to overload
nl_sosend() with a message parsing logic and deny any oversized write.
Reported-by: syzbot+eb5db60d36b005dbccf5 at syzkaller.appspotmail.com
nfscl: Add support for CB_RECALL_SLOT
The callback CB_RECALL_SLOT is required for NFSv4.1/4.2.
Fortunately, there does not appear to be any extant
NFSv4.1/4.2 servers that use it. Since commit b97a478896e9
fixed handling of session slot shrinking, this patch
adds support for CB_RECALL_SLOT, which shrinks the
number of session slots as well.
(cherry picked from commit 4517fbfd4251180147082f94253c4347fa44f570)
makefs: Compare pointer against NULL, not 0
Reported by: rpokala
Sponsred by: The FreeBSD Foundation
Fixes: 35a2e286157a ("makefs: Record inode for all entries in mtree mode")