stand: Fix brand positioning on framebuffer console
The drawer.lua script ignores the values in loader_brand_x and
loader_brand_y on framebuffer consoles, always positioning the brand at
(1, 1).
Allow it to be positioned by accepting the x and y values just like the
text version. For example:
/boot/lua/gfx-nanobsd.lua:
return {
brand = {
graphic = {
""
},
requires_color = true,
image = "/boot/images/freebsd-logo-rev.png"
}
[15 lines not shown]
nfscl: Move layout high water variables into clientID
Commit f5aff1871d32 moved the delegation high water
variables into the clientID structure, so that they are now
per mount instead of global. This patch does the
same for the layout highwater variables. It happens
that the layout highwater variables are not actually
used. This patch changes the code to use them.
This is needed to add support
for the CB_RECALL_ANY callback in a future commit.
This patch only affects NFSv4.1/4.2 mounts with the "pnfs"
mount option. The effect on these mounts will be minimal,
since layouts are returned when they are stale and this
normally ensures that the highwater mark is never hit.
(cherry picked from commit 7e26f1c21049b5a1a2f490d8ac1909ccb24f0db2)
nfscl: Move delegation high water variables into clientID
Without this patch, the variables used to maintain a high
water limit for delegations are global and apply to all
mounts. This patch moves them into the clientID structure,
which makes them per mount. This is needed to add support
for the CB_RECALL_ANY callback in a future commit.
The only effect of this patch is an increase in the
total number of delegations held if there are multiple NFSv4
mounts to NFSv4 servers with delegations enabled.
Since the default of NFSCLDELEGHIGHWATER is fairly small,
this should not have a significant impact.
(cherry picked from commit f5aff1871d3273b3cd3621ea5d3e37cdd807e66f)
if_infininband: Support BPF write for broadcast frames
To support DHCP for IPoIB links, DHCP clients and servers require the
ability to transmit link-layer broadcasts on the IB interfaces. BPF
provides the mechanism for doing this.
This change updates the if_infiniband driver to be capable of accepting
link-layer broadcast requests via BPF using Ethernet formatted frames
(the driver currently registers with BPF as DLT_EN10MB). Only Broadcast
frames can reliably be interpreted using the Ethernet header format so
detect unicast and multicast frames are rejected if passed in using the
Ethernet format. This doesn't impact the ability to support native
unicast, broadcast or multicast frames if native infiniband header
support is added to BPF at a later date.
Further the above, this commit also addresses an issue in the existing
code that can result in separation of part of the packet header from the
rest of the payload if a BPF write was attempted. This was caused by
mbuf preallocation of the infiniband header length regardless of length
[9 lines not shown]
amdiommu: fix typo in the bit description
Noted by: alc
Sponsored by: Advanced Micro Devices (AMD)
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
vm_page: drop page_iter_lookup
The functions vm_page_iter_lookup and vm_page_iter_lookup_ge are just
wrappers around vm_radix_iter_lookup and vm_radix_iter_lookup_ge,
respectively. They server no real purpose, so drop them and use the
vm_radix versions everywhere.
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D49203
net: if_media for 1000Base-BX BiDi
1000Base-BX uses two wavelengths, commonly 1310nm, 1490nm, 1550nm, or
1590nm, in a Coarse Wavelength Division Multiplexing (CWDM) arrangement
so that a single fiber strand may carry both upstream and downstream.
It is sometimes referred to as BiDi for bi-directional usage of one
fiber.
Optics must be paired such that the RX and TX wavelengths cross over,
with one side often called U(pstream) and the other D(ownstream).
This technology is useful for increasing link density or working around
construction issues, and is also frequently used as a last mile delivery
technology for FTTx.
Sponsored by: BBOX.io (review/commits)
Pull Request: https://github.com/freebsd/freebsd-src/pull/1518
(cherry picked from commit 78c63ed260fa20b3500aedfe41dc0dcae9593f51)
net: if_media for 1000Base-BX BiDi
1000Base-BX uses two wavelengths, commonly 1310nm, 1490nm, 1550nm, or
1590nm, in a Coarse Wavelength Division Multiplexing (CWDM) arrangement
so that a single fiber strand may carry both upstream and downstream.
It is sometimes referred to as BiDi for bi-directional usage of one
fiber.
Optics must be paired such that the RX and TX wavelengths cross over,
with one side often called U(pstream) and the other D(ownstream).
This technology is useful for increasing link density or working around
construction issues, and is also frequently used as a last mile delivery
technology for FTTx.
Sponsored by: BBOX.io (review/commits)
Pull Request: https://github.com/freebsd/freebsd-src/pull/1518
(cherry picked from commit 78c63ed260fa20b3500aedfe41dc0dcae9593f51)
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)