]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
3 years agoAdd UPDATING entry and bump version releng/12.1
Ed Maste [Fri, 29 Jan 2021 00:16:22 +0000 (19:16 -0500)]
Add UPDATING entry and bump version

Approved by: so

3 years agoxen: allow limiting the amount of duplicated pending xenstore watches
Roger Pau Monné [Wed, 25 Nov 2020 11:34:38 +0000 (12:34 +0100)]
xen: allow limiting the amount of duplicated pending xenstore watches

Xenstore watches received are queued in a list and processed in a
deferred thread. Such queuing was done without any checking, so a
guest could potentially trigger a resource starvation against the
FreeBSD kernel if such kernel is watching any user-controlled xenstore
path.

Allowing limiting the amount of pending events a watch can accumulate
to prevent a remote guest from triggering this resource starvation
issue.

For the PV device backends and frontends this limitation is only
applied to the other end /state node, which is limited to 1 pending
event, the rest of the watched paths can still have unlimited pending
watches because they are either local or controlled by a privileged
domain.

The xenstore user-space device gets special treatment as it's not
possible for the kernel to know whether the paths being watched by
user-space processes are controlled by a guest domain. For this reason
watches set by the xenstore user-space device are limited to 1000
pending events. Note this can be modified using the
max_pending_watch_events sysctl of the device.

This is XSA-349.

Sponsored by: Citrix Systems R&D
MFC after: 3 days

(cherry picked from commit 4e4e43dc9e1afc863670a031cc5cc75eb5e668d6)
(cherry picked from commit 2d194dc219892049dd03564c4083080cac1aa688)

Approved by: so
Security: XSA-349, CVE-2020-29568

3 years agoxen/xenstore: remove unused functions
Roger Pau Monné [Thu, 26 Nov 2020 08:57:47 +0000 (09:57 +0100)]
xen/xenstore: remove unused functions

Those helpers are not used, so remove them. No functional change.

Sponsored by: Citrix Systems R&D
MFC after: 3 days

(cherry picked from commit 2ae75536d370c238f77ad09e5e994d2b8bdf010c)
(cherry picked from commit af4ed05c3dd25c957b657f92f953bd9f00f818a8)

Approved by: so

3 years agomsdosfs: Fix a leak of dirent padding bytes
Mark Johnston [Sun, 27 Dec 2020 21:52:30 +0000 (16:52 -0500)]
msdosfs: Fix a leak of dirent padding bytes

This was missed in r340856 / commit
6d2e2df764199f0a15fd743e79599391959cc17d.  Three bytes from the kernel
stack may be leaked when reading directory entries.

Reported by: Syed Faraz Abrar <faraz@elttam.com>

(cherry picked from commit 599f90446376370eb365a0fde857ea2b5766873a)
(cherry picked from commit 5ece34669c27a61f78cd0f6e0759c17f7787aebb)

Approved by: so
Security: CVE-2020-25579

3 years agoEnsure that dirent's d_off field is initialized
Mark Johnston [Sun, 3 Jan 2021 16:32:30 +0000 (11:32 -0500)]
Ensure that dirent's d_off field is initialized

We have the d_off field in struct dirent for providing the seek offset
of the next directory entry.  Several filesystems were not initializing
the field, which ends up being copied out to userland.

Reported by: Syed Faraz Abrar <faraz@elttam.com>
Reviewed by: kib

(cherry picked from commit 90f580b954090e669da234f6c8e8d0379ff9d8bc)
(cherry picked from commit acaac0eefa1f2675dfc49faa077e3fb10949d540)

Approved by: so
Security: CVE-2020-25578

3 years agoMFC r368237: if: Fix panic when destroying vnet and epair simultaneously
Kristof Provost [Mon, 18 Jan 2021 21:55:53 +0000 (16:55 -0500)]
MFC r368237: if: Fix panic when destroying vnet and epair simultaneously

When destroying a vnet and an epair (with one end in the vnet) we often
panicked. This was the result of the destruction of the epair, which destroys
both ends simultaneously, happening while vnet_if_return() was moving the
struct ifnet to its home vnet. This can result in a freed ifnet being re-added
to the home vnet V_ifnet list. That in turn panics the next time the ifnet is
used.

Prevent this race by ensuring that vnet_if_return() cannot run at the same time
as if_detach() or epair_clone_destroy().

PR: 238870, 234985, 244703, 250870
Sponsored by: Modirum MDPay
Approved by: so

3 years agocontrib/tzdata: import tzdata 2021a
Philip Paeps [Mon, 25 Jan 2021 00:18:14 +0000 (08:18 +0800)]
contrib/tzdata: import tzdata 2021a

Merge commit '4cd7e1071de16a7392b0e466287f13e9e6f2081a'

Changes: https://github.com/eggert/tz/blob/2021a/NEWS

(cherry picked from commit 8c5bef2eb24cb191c87712a56a9860d8c29415a0)
(cherry picked from commit 085997e8f05e69c66a8ffc0804b275a386ba1ca8)

Approved by: so

3 years agoMFC: contrib/tzdata: import tzdata 2020f
Philip Paeps [Wed, 30 Dec 2020 04:50:26 +0000 (12:50 +0800)]
MFC: contrib/tzdata: import tzdata 2020f

Merge commit '96b88ac701b35ce68425046d4be8f51cb75b5d5b' into main

Changes: https://github.com/eggert/tz/blob/2020f/NEWS

(cherry picked from commit e35a01eec6926bfb5c088ca8961079b51a067bf3)
(cherry picked from commit ce87312019a18e6bd0c97c50e5762b38ffc21e76)

Approved by: so

3 years agoMFC: contrib/tzdata: import tzdata 2020e
Philip Paeps [Fri, 25 Dec 2020 15:16:38 +0000 (23:16 +0800)]
MFC: contrib/tzdata: import tzdata 2020e

Changes: https://github.com/eggert/tz/blob/2020e/NEWS

(cherry picked from commit dc505d53dcc15636aea9df8c03298f8c32147fa9)
(cherry picked from commit 1a8f8af03320165b33526d44de4f12360aa5440a)

Approved by: so

3 years agoFix OpenSSL NULL pointer de-reference.
Gordon Tetlow [Tue, 8 Dec 2020 19:10:40 +0000 (19:10 +0000)]
Fix OpenSSL NULL pointer de-reference.

Approved by: so
Security: FreeBSD-SA-20:33.openssl
Security: CVE-2020-1971

3 years agoAdd UPDATING entries and bump version.
Gordon Tetlow [Tue, 1 Dec 2020 19:40:58 +0000 (19:40 +0000)]
Add UPDATING entries and bump version.

Approved by: so

3 years agoFix multiple vulnerabilities in rtsold.
Gordon Tetlow [Tue, 1 Dec 2020 19:39:44 +0000 (19:39 +0000)]
Fix multiple vulnerabilities in rtsold.

Approved by: so
Security: FreeBSD-SA-20:32.rtsold
Security: CVE-2020-25577

3 years agoFix ICMPv6 use-after-free in error message handling.
Gordon Tetlow [Tue, 1 Dec 2020 19:38:52 +0000 (19:38 +0000)]
Fix ICMPv6 use-after-free in error message handling.

Approved by: so
Security: FreeBSD-SA-20:31.icmp6
Security: CVE-2020-7469

3 years agoFix race condition in callout CPU migration.
Gordon Tetlow [Tue, 1 Dec 2020 19:37:33 +0000 (19:37 +0000)]
Fix race condition in callout CPU migration.

Approved by: so
Security: FreeBSD-EN-20:22.callout

3 years agoUpdate timezone database information.
Gordon Tetlow [Tue, 1 Dec 2020 19:35:48 +0000 (19:35 +0000)]
Update timezone database information.

Approved by: so
Security: FreeBSD-EN-20:20.tzdata

3 years agoFix execve/fexecve system call auditing.
Gordon Tetlow [Tue, 1 Dec 2020 19:34:45 +0000 (19:34 +0000)]
Fix execve/fexecve system call auditing.

Approved by: so
Security: FreeBSD-EN-20:19.audit

3 years agoAdd UPDATING entries and bump version.
Gordon Tetlow [Tue, 15 Sep 2020 21:48:24 +0000 (21:48 +0000)]
Add UPDATING entries and bump version.

Approved by: so
Approved by: re (implicit for releng/12.2)

3 years agoFix ftpd privilege escalation via ftpchroot.
Gordon Tetlow [Tue, 15 Sep 2020 21:47:44 +0000 (21:47 +0000)]
Fix ftpd privilege escalation via ftpchroot.

Approved by: so
Approved by: re (implicit for releng/12.2)
Security: FreeBSD-SA-20:30.ftpd
Security: CVE-2020-7468

3 years agoFix bhyve SVM guest escape.
Gordon Tetlow [Tue, 15 Sep 2020 21:46:39 +0000 (21:46 +0000)]
Fix bhyve SVM guest escape.

This actually has a patch to sys/amd64/vmm/amd/svm.c that was accidentally
committed as part of r365779.

Approved by: so
Approved by: re (implicit for releng/12.2)
Security: FreeBSD-SA-20:29.bhyve_svm
Security: CVE-2020-7467

3 years agoFix bhyve privilege escalation via VMCS access.
Gordon Tetlow [Tue, 15 Sep 2020 21:43:41 +0000 (21:43 +0000)]
Fix bhyve privilege escalation via VMCS access.

Approved by: so
Approved by: re (implicit for releng/12.2)
Security: FreeBSD-SA-20:28.bhyve_vmcs
Security: CVE-2020-24718

3 years agoFix ure device driver susceptible to packet-in-packet attack.
Gordon Tetlow [Tue, 15 Sep 2020 21:42:05 +0000 (21:42 +0000)]
Fix ure device driver susceptible to packet-in-packet attack.

Approved by: so
Approved by: re (implicit for releng/12.2)
Security: FreeBSD-SA-20:27.ure
Security: CVE-2020-7464

3 years agoAdd UPDATING entries and bump version.
Gordon Tetlow [Wed, 2 Sep 2020 16:29:40 +0000 (16:29 +0000)]
Add UPDATING entries and bump version.

Approved by: so

3 years agoFix dhclient heap overflow.
Gordon Tetlow [Wed, 2 Sep 2020 16:25:31 +0000 (16:25 +0000)]
Fix dhclient heap overflow.

Approved by: so
Security: FreeBSD-SA-20:26.dhclient
Security: CVE-2020-7461

3 years agoFix SCTP socket use-after-free.
Gordon Tetlow [Wed, 2 Sep 2020 16:24:32 +0000 (16:24 +0000)]
Fix SCTP socket use-after-free.

Approved by: so
Security: FreeBSD-SA-20:25.sctp
Security: CVE-2020-7463

3 years agoFix FreeBSD Linux ABI kernel panic.
Gordon Tetlow [Wed, 2 Sep 2020 16:21:27 +0000 (16:21 +0000)]
Fix FreeBSD Linux ABI kernel panic.

Approved by: so
Security: FreeBSD-EN-20:17.linuxthread

3 years agoAdd UPDATING entries and bump version.
Gordon Tetlow [Wed, 5 Aug 2020 17:14:37 +0000 (17:14 +0000)]
Add UPDATING entries and bump version.

Approved by: so

3 years agoFix sendmsg(2) privilege escalation.
Gordon Tetlow [Wed, 5 Aug 2020 17:14:01 +0000 (17:14 +0000)]
Fix sendmsg(2) privilege escalation.

Approved by: so
Security: FreeBSD-SA-20:23.sendmsg
Security: CVE-2020-7460

3 years agoFix multiple vulnerabilities in sqlite3.
Gordon Tetlow [Wed, 5 Aug 2020 17:13:08 +0000 (17:13 +0000)]
Fix multiple vulnerabilities in sqlite3.

Approved by: so
Security: FreeBSD-SA-20:22.sqlite
Security: CVE-2020-11655
Security: CVE-2020-11656
Security: CVE-2020-13434
Security: CVE-2020-13435
Security: CVE-2020-13630
Security: CVE-2020-13631
Security: CVE-2020-13632

3 years agoFix memory corruption in USB network device drivers.
Gordon Tetlow [Wed, 5 Aug 2020 17:11:18 +0000 (17:11 +0000)]
Fix memory corruption in USB network device drivers.

Approved by: so
Security: FreeBSD-SA-20:21.usb_net
Security: CVE-2020-7459

3 years agoFix vmx driver packet loss and degraded performance.
Gordon Tetlow [Wed, 5 Aug 2020 17:09:54 +0000 (17:09 +0000)]
Fix vmx driver packet loss and degraded performance.

Approved by: so
Security: FreeBSD-EN-20:16.vmx

3 years agoAdd UPDATING entries and bump version.
Gordon Tetlow [Wed, 8 Jul 2020 20:26:19 +0000 (20:26 +0000)]
Add UPDATING entries and bump version.

Approved by: so

3 years agoFix multiple vulnerabilities in unbound.
Gordon Tetlow [Wed, 8 Jul 2020 20:25:06 +0000 (20:25 +0000)]
Fix multiple vulnerabilities in unbound.

Approved by: so
Security: FreeBSD-SA-20:19.unbound
Security: CVE-2020-12662
Security: CVE-2020-12663

3 years agoFix IPv6 socket option race condition and use after free.
Gordon Tetlow [Wed, 8 Jul 2020 20:11:40 +0000 (20:11 +0000)]
Fix IPv6 socket option race condition and use after free.

Approved by: so
Security: FreeBSD-SA-20:20.ipv6
Security: CVE-2020-7457

3 years agoFix kernel panic in mps(4) driver.
Gordon Tetlow [Wed, 8 Jul 2020 19:58:00 +0000 (19:58 +0000)]
Fix kernel panic in mps(4) driver.

Approved by: so
Security: FreeBSD-EN-20:15.mps

3 years agoFix kernel panic in LinuxKPI subsystem.
Gordon Tetlow [Wed, 8 Jul 2020 19:57:24 +0000 (19:57 +0000)]
Fix kernel panic in LinuxKPI subsystem.

Approved by: so
Security: FreeBSD-EN-20:14.linuxpki

3 years agoFix host crash in bhyve with PCI device passthrough.
Gordon Tetlow [Wed, 8 Jul 2020 19:56:34 +0000 (19:56 +0000)]
Fix host crash in bhyve with PCI device passthrough.

Approved by: so
Security: FreeBSD-EN-20:13.bhyve

3 years agoAdd UPDATING entries and bump version.
Gordon Tetlow [Tue, 9 Jun 2020 16:15:07 +0000 (16:15 +0000)]
Add UPDATING entries and bump version.

Approved by: so
Approved by: re (implicit)

3 years agoFix USB HID descriptor parsing error.
Gordon Tetlow [Tue, 9 Jun 2020 16:13:54 +0000 (16:13 +0000)]
Fix USB HID descriptor parsing error.

Approved by: so
Approved by: re (implicit)
Security: FreeBSD-SA-20:17.usb
Security: CVE-2020-7456

3 years agoFix iflib watchdog timeout resetting idle queues.
Gordon Tetlow [Tue, 9 Jun 2020 16:11:54 +0000 (16:11 +0000)]
Fix iflib watchdog timeout resetting idle queues.

Approved by: so
Security: FreeBSD-EN-20:12.iflib

3 years agoFix stability issues in ena(4) driver.
Gordon Tetlow [Tue, 9 Jun 2020 16:10:57 +0000 (16:10 +0000)]
Fix stability issues in ena(4) driver.

Approved by: so
Security: FreeBSD-EN-20:11.ena

3 years agoAdd UPDATING entries and bump version.
Gordon Tetlow [Tue, 12 May 2020 17:00:23 +0000 (17:00 +0000)]
Add UPDATING entries and bump version.

Approved by: so
Approved by: re (implicit)

3 years agoFix insufficient cryptodev MAC key length check.
Gordon Tetlow [Tue, 12 May 2020 16:59:09 +0000 (16:59 +0000)]
Fix insufficient cryptodev MAC key length check.

Approved by: so
Security: FreeBSD-SA-20:16.cryptodev
Security: CVE-2019-15880

3 years agoFix use after free in cryptodev module.
Gordon Tetlow [Tue, 12 May 2020 16:57:47 +0000 (16:57 +0000)]
Fix use after free in cryptodev module.

Approved by: so
Security: FreeBSD-SA-20:15.cryptodev
Security: CVE-2019-15879

3 years agoFix memory disclosure vulnerability in libalias.
Gordon Tetlow [Tue, 12 May 2020 16:54:39 +0000 (16:54 +0000)]
Fix memory disclosure vulnerability in libalias.

Approved by: so
Approved by: re (implicit)
Security: FreeBSD-SA-20:13.libalias
Security: CVE-2020-7455

3 years agoFix insufficient packet length validation in libalias.
Gordon Tetlow [Tue, 12 May 2020 16:51:11 +0000 (16:51 +0000)]
Fix insufficient packet length validation in libalias.

Approved by: so
Approved by: re (implicit)
Security: FreeBSD-SA-20:12.libalias
Security: CVE-2020-7454

3 years agoFix igb interfaces failing to switch to inactive state.
Gordon Tetlow [Tue, 12 May 2020 16:46:14 +0000 (16:46 +0000)]
Fix igb interfaces failing to switch to inactive state.

Approved by: so
Security: FreeBSD-EN-20:09.igb

3 years agoUpdate to tzdata 2020a.
Gordon Tetlow [Tue, 12 May 2020 16:44:13 +0000 (16:44 +0000)]
Update to tzdata 2020a.

Approved by: so
Security: EN-20:08.tzdata

4 years agoMF10 r352637,r358076: correct Clang and lld version checks
Ed Maste [Wed, 29 Apr 2020 18:51:34 +0000 (18:51 +0000)]
MF10 r352637,r358076: correct Clang and lld version checks

r352637 (mhorne): Allow for compiler versions >= 10
r358076 (dim): Correctly recognize linker versions greater than 10.0.

These routines determine the host compiler and linker version, and caused
attempts to build 12.1-RELEASE on 13-CURRENT to fail after the latter was
updated to Clang 10.  We don't guarantee such a build config to work, but
it is used by FreeBSD ports build processes.  As a result the fixes from
stable/12 will be included with the next set of advisories, and are being
committed to the branch now to unblock ports builds.

PR: 245973
Reported by: sbruno, antoine
Approved by: so
Errata: EN-20:10.build
Sponsored by: The FreeBSD Foundation

4 years agoAdd UPDATING entries and bump version.
Gordon Tetlow [Tue, 21 Apr 2020 15:54:08 +0000 (15:54 +0000)]
Add UPDATING entries and bump version.

Approved by: so

4 years agoFix OpenSSL remote denial of service vulnerability.
Gordon Tetlow [Tue, 21 Apr 2020 15:53:08 +0000 (15:53 +0000)]
Fix OpenSSL remote denial of service vulnerability.

Approved by: so
Security: FreeBSD-SA-20:11.openssl
Security: CVE-2020-1967

4 years agoFix ipfw invalid mbuf handling.
Gordon Tetlow [Tue, 21 Apr 2020 15:52:22 +0000 (15:52 +0000)]
Fix ipfw invalid mbuf handling.

Approved by: so
Security: FreeBSD-SA-20:10.ipfw
Security: CVE-2019-5614
Security: CVE-2019-15874

4 years agoFix regression in rpc.rquotad with certain NFS servers.
Gordon Tetlow [Tue, 21 Apr 2020 15:50:57 +0000 (15:50 +0000)]
Fix regression in rpc.rquotad with certain NFS servers.

Approved by: so
Security: FreeBSD-EN-20:07.quotad

4 years agoAdd UPDATING entries and bump version.
Gordon Tetlow [Thu, 19 Mar 2020 17:01:57 +0000 (17:01 +0000)]
Add UPDATING entries and bump version.

Approved by: so

4 years agoFix multiple denial of service in ntpd.
Gordon Tetlow [Thu, 19 Mar 2020 16:52:41 +0000 (16:52 +0000)]
Fix multiple denial of service in ntpd.

Approved by: so
Security: FreeBSD-SA-20:09.ntp

4 years agoFix kernel memory disclosure with nested jails.
Gordon Tetlow [Thu, 19 Mar 2020 16:51:33 +0000 (16:51 +0000)]
Fix kernel memory disclosure with nested jails.

Approved by: so
Security: FreeBSD-SA-20:08.jail
Security: CVE-2020-7453

4 years agoFix incorrect user-controlled pointer use in epair.
Gordon Tetlow [Thu, 19 Mar 2020 16:50:36 +0000 (16:50 +0000)]
Fix incorrect user-controlled pointer use in epair.

Approved by: so
Security: FreeBSD-SA-20:07.epair
Security: CVE-2020-7452

4 years agoFix insufficient ixl(4) ioctl(2) privilege checking.
Gordon Tetlow [Thu, 19 Mar 2020 16:49:32 +0000 (16:49 +0000)]
Fix insufficient ixl(4) ioctl(2) privilege checking.

Approved by: so
Security: FreeBSD-SA-20:06.if_ixl_ioctl
Security: CVE-2019-15877

4 years agoFix insufficient oce(4) ioctl(2) privilege checking.
Gordon Tetlow [Thu, 19 Mar 2020 16:48:29 +0000 (16:48 +0000)]
Fix insufficient oce(4) ioctl(2) privilege checking.

Approved by: so
Security: FreeBSD-SA-20:05.if_oce_ioctl
Security: CVE-2019-15876

4 years agoFix TCP IPv6 SYN cache kernel information disclosure.
Gordon Tetlow [Thu, 19 Mar 2020 16:46:01 +0000 (16:46 +0000)]
Fix TCP IPv6 SYN cache kernel information disclosure.

Approved by: so
Security: FreeBSD-SA-20:04.tcp
Security: CVE-2020-7451

4 years agoFix incorrect checksum calculations with IPv6 extension headers.
Gordon Tetlow [Thu, 19 Mar 2020 16:43:37 +0000 (16:43 +0000)]
Fix incorrect checksum calculations with IPv6 extension headers.

Approved by: so
Security: FreeBSD-EN-20:06.ipv6

4 years agoFix packet forwarding performance in mlx5en(4) driver.
Gordon Tetlow [Thu, 19 Mar 2020 16:41:29 +0000 (16:41 +0000)]
Fix packet forwarding performance in mlx5en(4) driver.

Approved by: so
Security: FreeBSD-EN-20:05.mlx5en

4 years agoFix misleading log messages upon successful sshd login.
Gordon Tetlow [Thu, 19 Mar 2020 16:34:11 +0000 (16:34 +0000)]
Fix misleading log messages upon successful sshd login.

Approved by: so
Security: FreeBSD-EN-20:03.sshd

4 years agoAdd UPDATING entries and bump version.
Gordon Tetlow [Tue, 28 Jan 2020 18:58:37 +0000 (18:58 +0000)]
Add UPDATING entries and bump version.

Approved by: so

4 years agoFix kernel stack data disclosure
Gordon Tetlow [Tue, 28 Jan 2020 18:57:45 +0000 (18:57 +0000)]
Fix kernel stack data disclosure

Reported by: Ilja Van Sprundel
Approved by: so
Security: FreeBSD-SA-20:03.thrmisc
Security: CVE-2019-15875

4 years agoFix libfetch buffer overflow
Gordon Tetlow [Tue, 28 Jan 2020 18:55:25 +0000 (18:55 +0000)]
Fix libfetch buffer overflow

Reported by: Duncan Overbruck
Approved by: so
Security: FreeBSD-SA-20:01.libfetch
Security: CVE-2020-7450

4 years agoFix imprecise ordering of SSP canary initialization
Gordon Tetlow [Tue, 28 Jan 2020 18:53:14 +0000 (18:53 +0000)]
Fix imprecise ordering of SSP canary initialization

Submitted by: Kyle Evans
Approved by: so
Security: FreeBSD-EN-20:01.ssp

4 years agoAdd UPDATING entries and bump version numbers.
Gordon Tetlow [Tue, 12 Nov 2019 18:13:51 +0000 (18:13 +0000)]
Add UPDATING entries and bump version numbers.

Approved by: so

4 years agoFix Machine Check Exception on Page Size Change.
Gordon Tetlow [Tue, 12 Nov 2019 18:13:04 +0000 (18:13 +0000)]
Fix Machine Check Exception on Page Size Change.

Approved by: so
Security: FreeBSD-SA-19:25.mcepsc
Security: CVE-2018-12207

4 years agoFix UEFI Loader Memory Fragmentation.
Gordon Tetlow [Tue, 12 Nov 2019 18:10:26 +0000 (18:10 +0000)]
Fix UEFI Loader Memory Fragmentation.

Approved by: so
Security: FreeBSD-EN-19:19.loader

4 years ago- Switch releng/12.1 from RC2 to RELEASE.
Glen Barber [Fri, 1 Nov 2019 00:00:17 +0000 (00:00 +0000)]
- Switch releng/12.1 from RC2 to RELEASE.
- Add the anticipated 12.1-RELEASE date to UPDATING.
- Set a static __FreeBSD_version.

Approved by: re (implicit)
Sponsored by: Rubicon Communications, LLC (Netgate)

4 years agoMFS r354090:
Michael Tuexen [Fri, 25 Oct 2019 18:46:53 +0000 (18:46 +0000)]
MFS r354090:

Ensure that the flags indicating IPv4/IPv6 are not changed by failing
bind() calls. This would lead to inconsistent state resulting in a panic.
A fix for stable/11 was committed in
https://svnweb.freebsd.org/base?view=revision&revision=338986

Reported by: syzbot+2609a378d89264ff5a42@syzkaller.appspotmail.com
Obtained from: jtl@
Sponsored by: Netflix, Inc.
Approved by: re (gjb@)

4 years agoMFC r353776 (dim):
Glen Barber [Mon, 21 Oct 2019 17:17:21 +0000 (17:17 +0000)]
MFC r353776 (dim):
 Follow up on r351916 by also bumping the version suffix to 12.1 in
 Makefile.libcompat.

Approved by: re (kib)
Sponsored by: Rubicon Communications, LLC (Netgate)

4 years ago- Update releng/12.1 from RC1 to RC2 as part of the 12.1-RELEASE
Glen Barber [Fri, 18 Oct 2019 00:00:11 +0000 (00:00 +0000)]
- Update releng/12.1 from RC1 to RC2 as part of the 12.1-RELEASE
  cycle.
- Update the dvd1.iso pkg(8) configuration to use the release_1
  package set to populate the dvd.

Approved by: re (implicit)
Sponsored by: Rubicon Communications, LLC (Netgate)

4 years agoMFC r353675 from stable-12 (r353651-r353652 from head)...
Ian Lepore [Thu, 17 Oct 2019 16:20:24 +0000 (16:20 +0000)]
MFC r353675 from stable-12 (r353651-r353652 from head)...

r353651:
Relax the sdhci(4) check that filters out the 1.8v voltage option unless
the slot is flagged as 'embedded'.

The features related to embedded and shared slots were added in v3.0 of
the sdhci spec.  Hardware prior to v3 sometimes supported 1.8v on non-
removable devices in embedded systems, but had no way to indicate that
via the standard sdhci registers (instead they use out of band metadata
such as FDT data).

This change adds the controller specification version to the check for
whether to filter out the 1.8v selection.  On older hardware, the 1.8v
option is allowed to remain.  On 3.0 or later it still requires the
embedded-slot flag to remain.

This is part of the fix for PR 241301 (eMMC not detected on Beaglebone).
Changes to the sdhci_ti driver are also needed for a full fix.

PR:           241301

r353652:
Revert r351218 (by manu).  While the changes in r351218 appear to be (and
should be) correct, they lead to the eMMC on a Beaglebone failing to work
in some situations.

The TI sdhci hardware is kind of strange.  The first device inherently
supports 1.8v and 3.3v and the abililty to switch between them, and the
other two devices must be set to 1.8v in the sdhci power control register to
operate correctly, but doing so actually makes them run at 3.3v (unless an
external level-shifter is present in the signal path).  Even the 1.8v on the
first device may actually be 3.3v (or any other value), depending on what
voltage is fed to the VDDS1-VDDS7 power supply pins on the am335x chip.

Another strange quirk is that the convention for am335x sdhci drivers in
linux and uboot and the am335x boot ROM seems to be to set the voltage in
the sdhci capabilities register to 3.0v even though the actual voltage is
3.3v.  Why this is done is a complete mystery to me, but it seems to be
required for correct operation.

If we had complete modern support for the am335x chip we could get the
actual voltages from the FDT data and the regulator framework.  But our
am335x code currently doesn't have any regulator framework support.
Reverting to the prior code will get the popular Beaglebone boards working
again.

This is part of the fix for PR 241301, but also requires r353651 for a
complete fix.

PR:           241301
Discussed with: manu

Approved by: re(kib)

4 years agoMFC r353660: ixgbe: Disable EEE for backplane X550EM_X
Eric Joyner [Wed, 16 Oct 2019 21:46:49 +0000 (21:46 +0000)]
MFC r353660: ixgbe: Disable EEE for backplane X550EM_X

This prevents a kernel panic when configuring EEE on X552 devices.

PR: 240320
Approved by: re@ (gjb@)
Sponsored by: Intel Corporation

4 years agoMFS r353475, r353553:
Mark Johnston [Tue, 15 Oct 2019 16:27:04 +0000 (16:27 +0000)]
MFS r353475, r353553:
Fix a couple of bugs around handling of PGA_WRITEABLE.

Approved by: re (kib)

4 years agoMFS r353563:
Michael Tuexen [Tue, 15 Oct 2019 16:05:55 +0000 (16:05 +0000)]
MFS r353563:

Ensure that local variables are reset to their initial value when
dealing with error cases in a loop over all remote addresses.
This issue was found and reported by OSS_Fuzz in:

https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=18080
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=18086
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=18121
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=18163

MFS r353567:

Fix mergeinfo for r353563.

Approved by: re(gjb)

4 years agoMFS r353554:
Mark Johnston [Tue, 15 Oct 2019 14:45:33 +0000 (14:45 +0000)]
MFS r353554:
Fix handling of empty SCM_RIGHTS messages.

Approved by: re (kib)

4 years agoloader.efi: efipart needs to use ioalign
Toomas Soome [Tue, 15 Oct 2019 06:19:33 +0000 (06:19 +0000)]
loader.efi: efipart needs to use ioalign

UEFI specification 2.7A, EFI_BLOCK_IO_PROTOCOL, page 566.

The ioalign property does define the alignment of data buffer.

If the alignment is required and our buffer is not aligned, or if
the data buffer is not multiple of Blocksize, we need to use bounce buffer
to perform the block IO. This is much like with BIOS version, except
there the INT13 needs buffer to be located in low memory.

MFS: r353501
MFC: r347195,350654-350656,351274,351630,351637,352421,352439,352443-352446,352451

Approved by: re (gjb)

4 years agoMFS r353450:
Glen Barber [Sat, 12 Oct 2019 17:15:32 +0000 (17:15 +0000)]
MFS r353450:
 MFC r353348:
  Connect the libucl(3) manual page to the build.

Approved by: re (kib)
Sponsored by: Rubicon Communications, LLC (Netgate)

4 years agoUpdate releng/12.1 to RC1 as part of the 12.1-RELEASE cycle.
Glen Barber [Fri, 11 Oct 2019 00:02:00 +0000 (00:02 +0000)]
Update releng/12.1 to RC1 as part of the 12.1-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: Rubicon Communications, LLC (Netgate)

4 years agoMFS r353402:
Michael Tuexen [Thu, 10 Oct 2019 18:39:11 +0000 (18:39 +0000)]
MFS r353402:

In r343587 a simple port filter as sysctl tunable was added to siftr.
The new sysctl was not added to the siftr.4 man page at the time.
This updates the man page, and removes one left over trailing whitespace.

Submitted by: Richard Scheffenegger
Differential Revision: https://reviews.freebsd.org/D21619
Reviewed by: bcr@
Approved by: re (gjb@)

4 years agoMFS r353409:
Glen Barber [Thu, 10 Oct 2019 18:27:05 +0000 (18:27 +0000)]
MFS r353409:
 MFC r353320:
  Rework the logic for installing the pkg(8) configuration.

  'quarterly' package sets do not exist for head, so explicitly
  install the 'latest' configuration file there.  Otherwise,
  fall back to the original conditional evaluation to determine
  if the 'latest' or 'quarterly' configuration file should be
  installed.

Approved by: re (kib)
Sponsored by: Rubicon Communications, LLC (Netgate)

4 years agoMFS r353395:
Michael Tuexen [Thu, 10 Oct 2019 18:19:22 +0000 (18:19 +0000)]
MFS r353395:

Add missing input validation. This could result in reading from
uninitialized memory.
The issue was found by OSS-Fuzz for usrsctp  and reported in
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=17780

MFS r353396:

Cleanup sctp_asconf_error_response() and ensure that the parameter
is padded as required. This fixes the followig bug reported by
OSS-Fuzz for the usersctp stack:
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=17790

MFS r353397:

When skipping the address parameter, take the padding into account.

MFS r353398:

Fix the adding of padding to COOKIE-ECHO chunks.

Thanks to Mark Wodrich who found this issue while fuzz testing the
usrsctp stack and reported the issue in
https://github.com/sctplab/usrsctp/issues/382

MFS r353399:

Plumb an mbuf leak found by Mark Wodrich from Google by fuzz testing the
userland stack and reporting it in:
https://github.com/sctplab/usrsctp/issues/396

MFS r353400:

Fix a use after free bug when removing remote addresses.
This bug was found by OSS-Fuzz and reported in
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=18004

MFS r353401:

Plumb an mbuf leak in a code path that should not be taken. Also avoid
that this path is taken by setting the tail pointer correctly.
There is still bug related to handling unordered unfragmented messages
which were delayed in deferred handling.
This issue was found by OSS-Fuzz testing the usrsctp stack and reported
in
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=17794

MFS r353403:

Validate length before use it, not vice versa.
r353060 should have contained this...
This fixes
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=18070

Approved by: re (gjb@)

4 years agoMFS r353405:
Hans Petter Selasky [Thu, 10 Oct 2019 16:04:43 +0000 (16:04 +0000)]
MFS r353405:
Fix regression issue after r352989:

As noted by the commit message, callouts are now persistant
and should not be in the auto-zero section of the RQ's and SQ's.
This fixes an assert when using the TX completion event
factor feature with mlx5en(4).

Found by: gallatin@
Sponsored by: Mellanox Technologies
Approved by: re (gjb)

4 years agoMFC r353065, MFS12 353385:
Konstantin Belousov [Thu, 10 Oct 2019 15:19:49 +0000 (15:19 +0000)]
MFC r353065, MFS12 353385:
tmpfs_readdir(): unlock the locked node.

Approved by: re (gjb)

4 years agoMFS r353177:
Hans Petter Selasky [Mon, 7 Oct 2019 15:29:37 +0000 (15:29 +0000)]
MFS r353177:
Add quirk for XHCI(4) controllers to support USB control transfers
above 1Kbyte.  It might look like some XHCI(4) controllers do not
support when the USB control transfer is split using a link TRB. The
next NORMAL TRB after the link TRB is simply failing with XHCI error
code 4. The quirk ensures we allocate a 64Kbyte buffer so that the
data stage TRB is not broken with a link TRB.

Found at: EuroBSDcon 2019
Sponsored by: Mellanox Technologies
Approved by: re (gjb)

4 years agoMFS r353276:
Mark Johnston [Mon, 7 Oct 2019 15:26:40 +0000 (15:26 +0000)]
MFS r353276:
Disallow fcntl(F_READAHEAD) when the vnode is not a regular file.

Approved by: re (gjb)

4 years agoMFS r353173:
Hans Petter Selasky [Mon, 7 Oct 2019 15:25:00 +0000 (15:25 +0000)]
MFS r353173:
Increase the maximum user-space buffer size from 256kBytes to 32MBytes for
libusb. This is useful for speeding up large data transfers while reducing
the interrupt rate.

Found at: EuroBSDcon 2019
Sponsored by: Mellanox Technologies
Approved by: re (gjb)

4 years agoMFS r353169:
Hans Petter Selasky [Mon, 7 Oct 2019 15:03:24 +0000 (15:03 +0000)]
MFS r353169:
The maximum TD size is 31 and not 15.

Found at: EuroBSDcon 2019
Sponsored by: Mellanox Technologies
Approved by: re (gjb)

4 years agoMFS r353184, r353186, r353188, r353190, r353192, r353194, r353196, r353198,
Hans Petter Selasky [Mon, 7 Oct 2019 13:13:06 +0000 (13:13 +0000)]
MFS r353184, r353186, r353188, r353190, r353192, r353194, r353196, r353198,
r353200, r353203, r353205, r353207, r353209, r353211, r353213, r353215,
r353217, r353219, r353221, r353223, r353225, r353227, r353229, r353231,
r353233, r353235, r353237, r353239, r353241, r353243, r353245, r353247,
r353249, r353251, r353253, r353255, r353257, r353259, r353261, r353263,
r353265 and r353267:

Update mlx5core, mlx5en(4) and mlx5ib(4).

Sponsored by: Mellanox Technologies
Approved by: re (gjb)

MFC r352956:
Fix reported max SGE calculation in mlx5ib.

Add the 512 bytes limit of RDMA READ and the size of remote address to the max
SGE calculation.

Linux commit: 288c01b746aa

MFC r352957:
Update warning and error print formats in mlx5ib.

MFC r352958:
Make sure the number of IRQ vectors doesn't exceed 256 in mlx5core.
The "intr" field in "struct mlx5_ifc_eqc_bits" is only 8 bits wide.

MFC r352959:
Check return value of mlx5_vector2eqn() function in mlx5en.

MFC r352960:
Fix for missing cleanup code in error case in mlx5en.

MFC r352961:
Implement macro for asserting priv lock in mlx5en.

MFC r352962:
Add support for Multi-Physical Function Switch, MPFS, in mlx5en.

MPFS is a logical switch in the Mellanox device which forward packets
based on a hardware driven L2 address table, to one or more physical-
or virtual- functions. The physical- or virtual- function is required
to tell the MPFS by using the MPFS firmware commands, which unicast
MAC addresses it is requesting from the physical port's traffic.
Broadcast and multicast traffic however, is copied to all listening
physical- and virtual- functions and does not need a rule in the MPFS
switching table.

Linux commit: eeb66cdb682678bfd1f02a4547e3649b38ffea7e

MFC r352963:
Cleanup naming of IRQ vectors in mlx5en.
Remove unused IRQ naming functions and arrays.

MFC r352964:
Export channel IRQ number as part of the "hw_ctx_debug" sysctl(8) in mlx5en(4).

MFC r352965:
Correct and update some counter names in mlx5en(4).

MFC r352966:
Add port module event software counters in mlx5core.
While at it, fixup PME based on latest PRM defines.

MFC r352967:
Make the mlx5_vsc_wait_on_flag(9) function global.

MFC r352968:
Move mlx5_ifc_vsc_space_bits and mlx5_ifc_vsc_addr_bits to mlx5_ifc.h.

MFC r352969:
Use the MLX5_VSC_DOMAIN_SEMAPHORES constant instead of hand-rolled symbol
in mlx5core.

MFC r352970:
Define MLX5_VSC_DOMAIN_SCAN_CRSPACE.

MFC r352971:
Read rege map from crdump scan space in mlx5core.

MFC r352972:
Remove no longer needed fwdump register tables from mlx5core.

MFC r352973:
Add missing blank line at the end of the print in mlx5core.

MFC r352974:
Add proper print in case of 0x0 health syndrome in mlx5core.

In case of health counter fails to increment it indicates a bad device health.
In case when the syndrome indicated by firmware is 0x0, this indicates that
firmware is unable to respond to initialization segment reads.
Add proper print in this case.

MFC r352975:
Unify prints in mlx5core.

All prints in mlx5core should use on of the macros:
mlx5_core_err/dbg/warn

MFC r352976:
Unify prints in mlx5en(4).

All prints in mlx5en(4) should use on of the macros:
mlx5_en_err/dbg/warn

MFC r352977:
Sort the ports registers definitions numerically in mlx5core.

MFC r352978:
Add definition for the Port Buffer Status Register in mlx5core.

MFC r352979:
Update definitons for PPTB and PBMC registers layouts in mlx5core.

MFC r352980:
Add mlx5e_dbg() compatibility macro.

MFC r352981:
Import Linux code to query/set buffer state in mlx5en(4).

MFC r352982:
Add support for buffer parameter manipulations in mlx5en(4).

The following sysctls are added:
dev.mce.N.conf.qos.cable_length
dev.mce.N.conf.qos.buffers_size
dev.mce.N.conf.qos.buffers_prio

MFC r352983 and r353001:
Move EEPROM information query from a sysctl in mlx5en(4) to an ioctl
in mlx5core. The EEPROM information is not only a property of the
mlx5en(4) driver.

MFC r352984:
Add the ability to query the EEPROM information in mlx5tool(8).

MFC r352985:
Add sysctl(8) to get and set forward error correction, FEC, configuration
in mlx5en(4).

MFC r352986:
Return an error from ioctl(MLX5_FW_RESET) if reset was rejected in mlx5core.

MFC r352987:
Remove mkey_be from channel structure in mlx5en(4).
Use value from priv structure instead.
This saves some space in the channel structure.

MFC r352988:
Remove unused cpu field from channel structure in mlx5en(4).

MFC r352989:
Seal transmit path with regards to using destroyed mutex in mlx5en(4).

It may happen during link down that the running state may be observed
non-zero in the transmit routine, right before the running state is
cleared. This may end up using a destroyed mutex.

Make all channel mutexes and callouts persistant.

Preserve receive and send queue statistics during link toggle.

MFC r352991 and 353000:
Wait for FW readiness before initializing command interface in mlx5core.

Before attempting to initialize the command interface we must wait till
the fw_initializing bit is clear.

If we fail to meet this condition the hardware will drop our
configuration, specifically the descriptors page address.  This scenario
can happen when the firmware is still executing an FLR flow and did not
finish yet so the driver needs to wait for that to finish.

Linux commits:
6c780a0267b8
b8a92577f4be.

MFC r352992:
Use size_t for byte_to_write variable when comparing to eeprom_info_out_len
which is also size_t in mlx5tool(8).

MFC r352993:
Randomize the delay when waiting for VSC flag in mlx5core.

The PRM suggests random 0 - 10ms to prevent multiple waiters on the same
interval in order to avoid starvation.

MFC r352994:
Improve mlx5_fwdump_prep logging in mlx5core.

MFC r352995:
Only update lossy buffers config when manual PFC configuration was done
in mlx5en(4).

MFC r352996:
Add print to show user a reason for rejecting buffer size change in mlx5en(4).

MFC r352997:
Print numeric error_type and module_status in mlx5core
in case the strings are not available.

MFC r352998:
Bump driver version for mlx5core, mlx5en(4) and mlx5ib(4).

4 years agoMFS r353182:
Hans Petter Selasky [Mon, 7 Oct 2019 12:54:28 +0000 (12:54 +0000)]
MFS r353182:
Make sure the transmit loop doesn't get starved in ipoib.

When the software send queue gets filled up, callbacks to
if_transmit will stop. Make sure the transmit callback
routine checks the send queue and outputs any remaining
mbufs. Else the remaining mbufs may simply sit in the
output queue blocking the transmit path.

Sponsored by: Mellanox Technologies
Approved by: re (gjb)

4 years agoMFS r353180:
Hans Petter Selasky [Mon, 7 Oct 2019 12:51:36 +0000 (12:51 +0000)]
MFS r353180:
Notify all sleeping threads of device removal in krping.
Implement d_purge for krping_cdevsw.

Submitted by: slavash@
Sponsored by: Mellanox Technologies
Approved by: re (gjb)

4 years agoMFS r353157: tuntap(4): loosen up tunclose restrictions
Kyle Evans [Mon, 7 Oct 2019 02:57:00 +0000 (02:57 +0000)]
MFS r353157: tuntap(4): loosen up tunclose restrictions

Realistically, this cannot work. We don't allow the tun to be opened twice,
so it must be done via fd passing, fork, dup, some mechanism like these.
Applications demonstrably do not enforce strict ordering when they're
handing off tun devices, so the parent closing before the child will easily
leave the tun/tap device in a bad state where it can't be destroyed and a
confused user because they did nothing wrong.

Concede that we can't leave the tun/tap device in this kind of state because
of software not playing the TUNSIFPID game, but it is still good to find and
fix this kind of thing to keep ifconfig(8) up-to-date and help ensure good
discipline in tun handling.

Approved by: re (gjb)

4 years agoMFS r353106:
Mark Johnston [Fri, 4 Oct 2019 16:36:09 +0000 (16:36 +0000)]
MFS r353106:
Implement pmap_page_is_mapped() correctly on arm64 and riscv.

Approved by: re (kib)

4 years agoMFS r353032:
Andrew Turner [Fri, 4 Oct 2019 14:10:56 +0000 (14:10 +0000)]
MFS r353032:

Check the vfs option length is valid before accessing through

When a VFS option passed to nmount is present but NULL the kernel will
place an empty option in its internal list. This will have a NULL
pointer and a length of 0. When we come to read one of these the kernel
will try to load from the last address of virtual memory. This is
normally invalid so will fault resulting in a kernel panic.

Fix this by checking if the length is valid before dereferencing.

Approved by: re (kib)
Sponsored by: DARPA, AFRL

4 years agoUpdate releng/12.1 to BETA3 as part of the 12.1-RELEASE cycle.
Glen Barber [Fri, 4 Oct 2019 00:04:21 +0000 (00:04 +0000)]
Update releng/12.1 to BETA3 as part of the 12.1-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: Rubicon Communications, LLC (Netgate)

4 years agoMerge r353031 from stable/12:
Dimitry Andric [Thu, 3 Oct 2019 16:22:56 +0000 (16:22 +0000)]
Merge r353031 from stable/12:

Pull in r357528 from upstream llvm trunk (by Craig Topper):

  [X86] Check MI.isConvertibleTo3Addr() before calling
  convertToThreeAddress in X86FixupLEAs.

  X86FixupLEAs just assumes convertToThreeAddress will return nullptr
  for any instruction that isn't convertible.

  But the code in convertToThreeAddress for X86 assumes that any
  instruction coming in has at least 2 operands and that the second one
  is a register. But those properties aren't guaranteed of all
  instructions. We should check the instruction property first.

Pull in r365720 from upstream llvm trunk (by Craig Topper):

  [X86] Don't convert 8 or 16 bit ADDs to LEAs on Atom in FixupLEAPass.

  We use the functions that convert to three address to do the
  conversion, but changing an 8 or 16 bit will cause it to create a
  virtual register. This can't be done after register allocation where
  this pass runs.

  I've switched the pass completely to a white list of instructions
  that can be converted to LEA instead of a blacklist that was
  incorrect. This will avoid surprises if we enhance the three address
  conversion function to include additional instructions in the future.

  Fixes PR42565.

This should fix assertions/segfaults when compiling certain ports with
CPUTYPE=atom.

Approved by: re (kib)
PR: 240928

4 years agoMFS r353051:
Mark Johnston [Thu, 3 Oct 2019 15:23:38 +0000 (15:23 +0000)]
MFS r353051:
Add IFLIB_SINGLE_IRQ_RX_ONLY.

PR: 239118
Approved by: re (gjb)

4 years agoMFS12 r353047:
Glen Barber [Thu, 3 Oct 2019 14:41:20 +0000 (14:41 +0000)]
MFS12 r353047:
 MFC r353004, r353012:
 r353004:
  Explicitly add opensolaris_load="YES" to loader.conf through the
  installer when installing the system on a ZFS root filesystem.

  For arm64, zfs_load="YES" does not add opensolaris.ko as a kld
  dependency, so add it explicitly to prevent boot-time failures
  out-of-box.

 r353012:
  Add a comment explaining why the opensolaris_load line in loader.conf
  is explicitly added.

PR: 240478
Approved by: re (kib)
Sponsored by: Rubicon Communications, LLC (Netgate)