]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
5 years agoMFC r341326
Andrew Rybchenko [Fri, 21 Dec 2018 16:31:16 +0000 (16:31 +0000)]
MFC r341326

sfxge(4): ensure EvQ poll stops when abort is requested

If an event handler requested an abort, only the inner loop was
guarenteed to be broken out of - the outer loop could continue
if total == batch.

Fix this by poisoning batch to ensure it is different to total.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18287

5 years agoMFC r341311
Andrew Rybchenko [Fri, 21 Dec 2018 16:30:21 +0000 (16:30 +0000)]
MFC r341311

sfxge(4): make last byte of module information available

Adjust bounds so the interface supports reading
the last available byte of data.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18273

5 years agoMFC r341309
Andrew Rybchenko [Fri, 21 Dec 2018 16:29:31 +0000 (16:29 +0000)]
MFC r341309

sfxge(4): fix MAC Tx stats for less or equal to 64 bytes

This statistic should include 64byte and smaller frames.
Fix EF10 calculation to match Siena code.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18271

5 years agoMFC r341302
Andrew Rybchenko [Fri, 21 Dec 2018 16:28:22 +0000 (16:28 +0000)]
MFC r341302

sfxge(4): fix a typo in unicast filter insertion comment

Submitted by:   Ivan Malov <ivan.malov at oktetlabs.ru>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18264

5 years agoMFC r341301
Andrew Rybchenko [Fri, 21 Dec 2018 16:27:37 +0000 (16:27 +0000)]
MFC r341301

sfxge(4): prevent access to the NIC config before probe

NIC config is initialized during NIC probe.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18263

5 years agoMFC r341295
Andrew Rybchenko [Fri, 21 Dec 2018 16:26:18 +0000 (16:26 +0000)]
MFC r341295

sfxge(4): avoid usage of too big arrays on stack

Found by PreFAST static analysis.

Submitted by:   Martin Harvey <mharvey at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18257

5 years agoMFC r341290
Andrew Rybchenko [Fri, 21 Dec 2018 16:25:25 +0000 (16:25 +0000)]
MFC r341290

sfxge(4): check size of memory to read sensors data to

Size of provided memory should be consistent with specified size.

Submitted by:   Martin Harvey <mharvey at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18252

5 years agoMFC r341215
Andrew Rybchenko [Fri, 21 Dec 2018 16:24:37 +0000 (16:24 +0000)]
MFC r341215

sfxge(4): fix build because of no declaration

Functions declared in mcdi_mon.h are implemented in mcdi_mon.c.
The build fails if compiler options require declaration before
definition.

Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18246

5 years agoMFC r341214
Andrew Rybchenko [Fri, 21 Dec 2018 16:22:12 +0000 (16:22 +0000)]
MFC r341214

sfxge(4): fix SAL annotation for input buffers

Submitted by:   Martin Harvey <mharvey at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18245

5 years agoMFC r341213
Andrew Rybchenko [Fri, 21 Dec 2018 16:21:19 +0000 (16:21 +0000)]
MFC r341213

sfxge(4): fix PreFAST warnings because of unused return

Submitted by:   Martin Harvey <mharvey at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18244

5 years agoMFC r341197
Andrew Rybchenko [Fri, 21 Dec 2018 16:20:13 +0000 (16:20 +0000)]
MFC r341197

sfxge(4): fix comparison always true warning

Loopback type used as bit index has efx_loopback_type_t type
which is enum. clang complains that it is always true when it
is compared with qword (64 bit) bits number boundary.

Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18228

5 years agoMFC r340896
Andrew Rybchenko [Fri, 21 Dec 2018 16:13:48 +0000 (16:13 +0000)]
MFC r340896

sfxge(4): remove Falcon-specific concurrency check

Falcon support has been withdrawn from libefx, however, there is still
an obsolete Falcon-specific assertion that efx_mac_stats_upload()
and efx_port_poll() aren't concurrent. To be consistent with an overall
Falcon support revocation it's desirable to remove it.

Fix debug build invalid assertion failure.

Submitted by:   Ivan Malov <ivan.malov at oktetlabs.ru>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18130

5 years agoMFC r340895
Andrew Rybchenko [Fri, 21 Dec 2018 16:12:59 +0000 (16:12 +0000)]
MFC r340895

sfxge(4): move BIU test code into Siena-specific file

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18129

5 years agoMFC r340894
Andrew Rybchenko [Fri, 21 Dec 2018 16:11:18 +0000 (16:11 +0000)]
MFC r340894

sfxge(4): fix PreFAST static analysis warning (C6001)

Fix warning
"C6001: Using uninitialized memory '*sensor_maskp'"
which could occur when the npages argument to efx_mcdi_sensor_info()
is less than or equal to zero.

Submitted by:   Andrew Lee <alee at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18128

5 years agoMFC r340892
Andrew Rybchenko [Fri, 21 Dec 2018 16:10:31 +0000 (16:10 +0000)]
MFC r340892

sfxge(4): remove obsolete check for pre-Siena hardware

The fail4 label was used twice, so it doesn't need removing.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18126

5 years agoMFC r340891
Andrew Rybchenko [Fri, 21 Dec 2018 16:08:49 +0000 (16:08 +0000)]
MFC r340891

sfxge(4): fix warnings from VS2015 C compiler (C4214)

Fix multiple level 4 warnings
"C4214: nonstandard extension used: bit field types other than int";
no functional changes.

Submitted by:   Andrew Lee <alee at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18125

5 years agoMFC r340890
Andrew Rybchenko [Fri, 21 Dec 2018 16:07:13 +0000 (16:07 +0000)]
MFC r340890

sfxge(4): fix warnings from VS2015 C compiler (C4057)

Fix two level 4 warnings
"C4057: 'function': 'const uint8_t *' differs in indirection to
slightly different base types from 'caddr_t'"; no functional changes.

Submitted by:   Andrew Lee <alee at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18124

5 years agoMFC r340889
Andrew Rybchenko [Fri, 21 Dec 2018 16:06:25 +0000 (16:06 +0000)]
MFC r340889

sfxge(4): fix warnings from VS2015 C compiler (C4189)

Fix multiple level 4 warnings
"C4189: 'xxx': local variable is initialized but not referenced";
no functional changes.

Submitted by:   Andrew Lee <alee at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18123

5 years agoMFC r340888
Andrew Rybchenko [Fri, 21 Dec 2018 16:02:29 +0000 (16:02 +0000)]
MFC r340888

sfxge(4): fix warnings from VS2015 C compiler (C4100)

Fix multiple level 4 warnings
"C4100: 'xxx': unreferenced formal parameter"
no functional changes.

The _NOTE(ARGUNUSED(xxx)) annotations are being exposed to the Visual
Studio 2015 C compiler with the following:

  #define _NOTE_ARGUNUSED(...) UNREFERENCED_PARAMETER((__VA_ARGS__));
  #define _NOTE(_annotation)   _NOTE_ ## _annotation

Submitted by:   Andrew Lee <alee at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D18122

5 years agoMFC r340887
Andrew Rybchenko [Fri, 21 Dec 2018 15:59:37 +0000 (15:59 +0000)]
MFC r340887

sfxge(4): fix warnings from VS2015 C compiler (C4245)

Fix level 4 warning
"C4245: 'initializing': conversion from 'int' to 'uint32_t',
signed/unsigned mismatch" warning; no functional changes.

Submitted by:   Andrew Lee <alee at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18121

5 years agoMFC r340804
Andrew Rybchenko [Fri, 21 Dec 2018 15:57:38 +0000 (15:57 +0000)]
MFC r340804

sfxge(4): insert filters for encapsulated packets

On Medford, with full-featured firmware running, encapsulated
packets may not be delivered unless filters are inserted for
them, as ordinary filters are not applied to encapsulated
packets. So filters for encapsulated packets need to be
inserted for each class of encapsulated packet. For simplicity,
catch-all filters are always inserted. These may match more
packets than the OS has asked for, but trying to insert more
precise filters increases complexity for little gain.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18074

5 years agoMFC r340803
Andrew Rybchenko [Fri, 21 Dec 2018 15:56:40 +0000 (15:56 +0000)]
MFC r340803

sfxge(4): support filters for encapsulated packets

This supports filters which match all unicast or multicast
inner frames in VXLAN, GENEVE, or NVGRE packets.
(Additional fields to match on can be added easily.)

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18073

5 years agoMFC r340802
Andrew Rybchenko [Fri, 21 Dec 2018 15:55:44 +0000 (15:55 +0000)]
MFC r340802

sfxge(4): use proper MCDI command for encap filters

MC_CMD_FILTER_OP_IN_EXT is needed to set filters for encapsulated
packets.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18072

5 years agoMFC r340801
Andrew Rybchenko [Fri, 21 Dec 2018 15:53:33 +0000 (15:53 +0000)]
MFC r340801

sfxge(4): provide information about supported tunnels

VXLAN/NVGRE (and Geneve) support is available on SFN8xxx with
full-feature firmware variant running.

Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18071

5 years agoMFC r340886
Andrew Rybchenko [Fri, 21 Dec 2018 15:15:07 +0000 (15:15 +0000)]
MFC r340886

sfxge(4): fix warnings from VS2015 C compiler (C4244)

Fix level 4 warning
"C4244: '+=': conversion from 'unsigned int' to 'uint16_t', possible
loss
of data"; no functional changes.

Submitted by:   Andrew Lee <alee at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18120

5 years agoMFC r340885
Andrew Rybchenko [Fri, 21 Dec 2018 15:13:59 +0000 (15:13 +0000)]
MFC r340885

sfxge(4): fix warnings from VS2015 C compiler (C4310)

Fix level 4 warning
"C4310: cast truncates constant value";
no functional changes.

Submitted by:   Andrew Lee <alee at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18119

5 years agoMFC r340884
Andrew Rybchenko [Fri, 21 Dec 2018 15:12:58 +0000 (15:12 +0000)]
MFC r340884

sfxge(4): fix probes in licensing support

EFSYS_PROBE1 takes one typed value (in addition to the probe name),
whereas EFSYS_PROBE has just the probe name.

Which to use is determined by the probe name - "fail1" probes are
expected to include the function result.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18118

5 years agoMFC r340883
Andrew Rybchenko [Fri, 21 Dec 2018 15:11:52 +0000 (15:11 +0000)]
MFC r340883

sfxge(4): fix diagnostics support build without Siena

The compilation failed because __efx_sram_pattern_fns was used in
efx_nic.c, but defined in efx_sram.c which is only needed when
supporting Siena.

To fix it move all the code using __efx_sram_pattern_fns into
Siena-specific files (except for the definition in efx_sram.c itself,
as that file only needs to be included in Siena-supporting builds
anyway).

The functions to test registers and tables are unlikely to apply to any
new hardware and so can be moved into Siena files. Since Huntington
such tests have been implemented in firmware.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18117

5 years agoMFC r340875
Andrew Rybchenko [Fri, 21 Dec 2018 15:10:07 +0000 (15:10 +0000)]
MFC r340875

sfxge(4): fix build issue with PHY LED control enabled

Fixed build issue with the EFSYS_OPT_PHY_LED_CONTROL for Huntigton and
Medford.

Submitted by:   Vijay Srivastava <vijays at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18110

5 years agoMFC r340814
Andrew Rybchenko [Fri, 21 Dec 2018 15:08:14 +0000 (15:08 +0000)]
MFC r340814

sfxge(4): fix result code in MCDI NVRAM update finish

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18084

5 years agor340796
Andrew Rybchenko [Fri, 21 Dec 2018 15:06:54 +0000 (15:06 +0000)]
r340796

sfxge(4): fix failure path in EF10 Tx queue PIO enable

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18066

5 years agoMFC r340800
Andrew Rybchenko [Fri, 21 Dec 2018 15:05:56 +0000 (15:05 +0000)]
MFC r340800

sfxge(4): let caller know that queue is already flushed

Tx/Rx queue may be already flushed due to Tx/Rx error on the queue or
MC reboot. Caller needs to know that the queue is already flushed to
avoid waiting for flush done event.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18070

5 years agor340798
Andrew Rybchenko [Fri, 21 Dec 2018 15:05:01 +0000 (15:05 +0000)]
r340798

sfxge(4): fix out of bounds read in VIs allocation

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18068

5 years agoMFC r340822
Andrew Rybchenko [Fri, 21 Dec 2018 15:03:44 +0000 (15:03 +0000)]
MFC r340822

sfxge(4): fix check in NVRAM validate

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18092

5 years agoMFC r340799
Andrew Rybchenko [Fri, 21 Dec 2018 15:02:36 +0000 (15:02 +0000)]
MFC r340799

sfxge(4): fix error code usage

MCDI results returned in req.emr_rc have already been translated
from MC_CMD_ERR_* to errno names, so using an MC_CMD_ERR_* value
is incorrect.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18069

5 years agoMFC r340806
Andrew Rybchenko [Fri, 21 Dec 2018 14:59:24 +0000 (14:59 +0000)]
MFC r340806

sfxge(4): fix default RSS context check on Siena

Default RSS context check is carried out during filter
insertion on Siena and it needs to be fixed

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18076

5 years agoMFC r340805
Andrew Rybchenko [Fri, 21 Dec 2018 14:58:16 +0000 (14:58 +0000)]
MFC r340805

sfxge(4): define a handle to denote default RSS context

Make the existing filter-specific define more general.
This is the same as MC_CMD_RSS_CONTEXT_ALLOC_OUT_RSS_CONTEXT_ID_INVALID.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18075

5 years agoMFC r340797
Andrew Rybchenko [Fri, 21 Dec 2018 14:53:50 +0000 (14:53 +0000)]
MFC r340797

sfxge(4): fix potential buffer overflow in Tx queue init

Improve error checking to avoid a caller overflowing the MCDI
request buffer if the requested TXQ size was excessively large.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18067

5 years agoMFC r340826
Andrew Rybchenko [Fri, 21 Dec 2018 14:52:46 +0000 (14:52 +0000)]
MFC r340826

sfxge(4): fix ignoring function return value

fix PreFAST issue, add missing annotation that function return value
should not be ignored. Fix alignment.

Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18096

5 years agoMFC r340767
Andrew Rybchenko [Fri, 21 Dec 2018 14:50:18 +0000 (14:50 +0000)]
MFC r340767

sfxge(4): limit max TXQ size on Medford to 2048

Queues with 4096 descriptors are not supported as the top bit is used
for vfifo stuffing.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D8948

5 years agoMFC r342086:
Mark Johnston [Fri, 21 Dec 2018 02:22:11 +0000 (02:22 +0000)]
MFC r342086:
Add support for the nForce MCP89 adapter.

PR: 234015

5 years agoMFC r342183:
Cy Schubert [Fri, 21 Dec 2018 01:58:01 +0000 (01:58 +0000)]
MFC r342183:

Update sqlite3-3.23.1 --> sqlite3-3.26.0 (3260000)

PR: 234113
Security: https://blade.tencent.com/magellan/index_en.html
No known CVE was apparently registered.

5 years agoPull in r329671 from upstream clang trunk (by Akira Hatanaka):
Dimitry Andric [Thu, 20 Dec 2018 18:28:53 +0000 (18:28 +0000)]
Pull in r329671 from upstream clang trunk (by Akira Hatanaka):

  [ExprConstant] Use an AST node and a version number as a key to
  create an APValue and retrieve it from map Temporaries.

  The version number is needed when a single AST node is visited
  multiple times and is used to create APValues that are required to be
  distinct from each other (for example, MaterializeTemporaryExprs in
  default arguments and VarDecls in loops).

  rdar://problem/36505742

  Differential Revision: https://reviews.llvm.org/D42776

This should fix 'Assertion failed: (Result.isUninit() && "temporary
created multiple times"), function createTemporary' errors (if
assertions are enabled, otherwise the compiler internal state might go
bad), when building the graphics/rawtherapee port.

Direct commit to stable/11 and stable/12, since head already has clang
7.0.1, which includes this change.

PR: 234144

5 years agoMFC r341632: acpi_{Device,Battery}IsPresent: restore pre-r330957 behaviour
Andriy Gapon [Thu, 20 Dec 2018 08:45:41 +0000 (08:45 +0000)]
MFC r341632: acpi_{Device,Battery}IsPresent: restore pre-r330957 behaviour

Specifically, assume that the device is present if evaluation of _STA
method fails.

PR: 227191

5 years agoMFC r342030:
Andrey V. Elsukov [Thu, 20 Dec 2018 08:28:51 +0000 (08:28 +0000)]
MFC r342030:
  Plug memory leak for AES_*_NIST_GMAC algorithms.

  swcr_newsession() allocates sw_ictx for these algorithms, thus we need
  to free() it in swcr_freesession().

  PR: 233907

5 years agoMFC r341786, r342156
Andriy Voskoboinyk [Thu, 20 Dec 2018 02:50:24 +0000 (02:50 +0000)]
MFC r341786, r342156
rtwn, rsu: add more USB ids.

PR: 233638
Submitted by: cezary.sliwa@gmail.com

5 years agoMFC r341988
David Bright [Thu, 20 Dec 2018 00:57:23 +0000 (00:57 +0000)]
MFC r341988

asmc: Add Support for Macbook Pro 8,1

PR: 217505
Submitted by: John O. Brickley <obryan.brickley@gmail.com>, updated by Maciej Pasternacki <maciej@pasternacki.net>
Reported by: John O. Brickley <obryan.brickley@gmail.com>

5 years agoMFC r342053
Mateusz Guzik [Wed, 19 Dec 2018 23:29:44 +0000 (23:29 +0000)]
MFC r342053

dtrace: fix userspace access on boxes with SMAP

Sponsored by: The FreeBSD Foundation

5 years agoMFC r341806:
David Bright [Wed, 19 Dec 2018 22:46:03 +0000 (22:46 +0000)]
MFC r341806:

Add uk.macbook.kbd keymap (vt)

PR: 215185
Submitted by: James Wright <james.wright@jigsawdezign.com>
Reported by: James Wright <james.wright@jigsawdezign.com>

5 years agoMFC r340676,r340677,r340679,r340747,r340749,r341682
Mateusz Guzik [Wed, 19 Dec 2018 22:42:06 +0000 (22:42 +0000)]
MFC r340676,r340677,r340679,r340747,r340749,r341682

Implement unr64
pipe: use unr64
tmpfs: use unr64 for inode numbers
uipc_shm: use unr64 for inode numbers
uipc_usrreq: fix inode number assignment
unr64: use locked variant if not __LP64__

Sponsored by: The FreeBSD Foundation

5 years agoMFC r340482,r341724
Mateusz Guzik [Wed, 19 Dec 2018 22:38:06 +0000 (22:38 +0000)]
MFC r340482,r341724

proc: always store parent pid in p_oppid
Remove proctree acquire from note_procstat_proc

Sponsored by: The FreeBSD Foundation

5 years agoMFC r340410
Mateusz Guzik [Wed, 19 Dec 2018 22:31:20 +0000 (22:31 +0000)]
MFC r340410

locks: plug warnings about unitialized variables

Sponsored by: The FreeBSD Foundation

5 years agoMFC r341820:
David Bright [Wed, 19 Dec 2018 21:28:11 +0000 (21:28 +0000)]
MFC r341820:

asmc: Add Support for MacBookAir 7,1 and 7,2

PR: 226172
Submitted by: James Wright <james.wright@jigsawdezign.com>
Reported by: James Wright <james.wright@jigsawdezign.com>

5 years agoMFC r341272,r341273,r341351
Mateusz Guzik [Wed, 19 Dec 2018 21:25:43 +0000 (21:25 +0000)]
MFC r341272,r341273,r341351

amd64: tidy up copying backwards in memmove
amd64: remove stale attribution for memmove work
amd64: handle small memmove buffers with overlapping stores

5 years agoMFC r341719
Mateusz Guzik [Wed, 19 Dec 2018 21:04:06 +0000 (21:04 +0000)]
MFC r341719

amd64: stop re-reading curpc on subyte/suword

5 years agoMFC r341364
Mateusz Guzik [Wed, 19 Dec 2018 21:03:17 +0000 (21:03 +0000)]
MFC r341364

amd64: align target memmove buffer to 16 bytes before using rep movs

5 years agoMFC r342227: bootpd: validate hardware type
Ed Maste [Wed, 19 Dec 2018 18:17:59 +0000 (18:17 +0000)]
MFC r342227: bootpd: validate hardware type

Due to insufficient validation of network-provided data it may have been
possible for a malicious actor to craft a bootp packet which could cause
a stack buffer overflow.

admbugs: 850
Reported by: Reno Robert
Reviewed by: markj
Approved by: so
Security: FreeBSD-SA-18:15.bootpd
Sponsored by: The FreeBSD Foundation

5 years agoRevert r342219.
Mark Johnston [Wed, 19 Dec 2018 17:48:37 +0000 (17:48 +0000)]
Revert r342219.

It depends on a Capsicum helper not present in stable/12.

5 years agoMFC r341595:
Mark Johnston [Wed, 19 Dec 2018 17:42:39 +0000 (17:42 +0000)]
MFC r341595:
Clamp the INPCB port hash tables to IPPORT_MAX + 1 chains.

5 years agoMFC r341837, r342192:
Mark Johnston [Wed, 19 Dec 2018 17:40:45 +0000 (17:40 +0000)]
MFC r341837, r342192:
Use Capsicum helpers in ping(8).

5 years agoMFC r341844:
Hans Petter Selasky [Wed, 19 Dec 2018 08:49:07 +0000 (08:49 +0000)]
MFC r341844:
Don't register IOCTLs with capsicum when there is no valid file descriptor.
This fixes tcpdump when using mlx5_X devices.

Differential Revision: https://reviews.freebsd.org/D18499
Reviewed by: kib@, slavash@, oshogbo@
Sponsored by: Mellanox Technologies

5 years agoMFC r342144:
Konstantin Belousov [Wed, 19 Dec 2018 03:21:49 +0000 (03:21 +0000)]
MFC r342144:
Document new required MI behaviour of pmap_enter(9) for CoW.

5 years agoMFC r342150:
Cy Schubert [Wed, 19 Dec 2018 02:34:31 +0000 (02:34 +0000)]
MFC r342150:

Add a missing leading / in a filename.

5 years agoMFC r342124:
Andriy Voskoboinyk [Wed, 19 Dec 2018 02:23:51 +0000 (02:23 +0000)]
MFC r342124:
Add new USB id in rtwn_usb(4) (RTL8812AU)

PR: 234029
Submitted by: <hakotani000@gmail.com>

5 years agoMFC r339909: Allow changing lagg(4) MTU.
Alexander Motin [Tue, 18 Dec 2018 22:56:24 +0000 (22:56 +0000)]
MFC r339909: Allow changing lagg(4) MTU.

Previously, changing the MTU would require destroying the lagg and
creating a new one. Now it is allowed to change the MTU of
the lagg interface and the MTU of the ports will be set to match.

If any port cannot set the new MTU, all ports are reverted to the original
MTU of the lagg. Additionally, when adding ports, the MTU of a port will be
automatically set to the MTU of the lagg. As always, the MTU of the lagg is
initially determined by the MTU of the first port added. If adding an
interface as a port for some reason fails, that interface is reverted to its
original MTU.

Submitted by: Ryan Moeller <ryan@freqlabs.com>
Relnotes: Yes
Sponsored by: iXsystems Inc.

5 years agoMFC r340402, r340914 (by alc), r341602 (by alc), r341766 (by alc):
Mark Johnston [Tue, 18 Dec 2018 21:01:48 +0000 (21:01 +0000)]
MFC r340402, r340914 (by alc), r341602 (by alc), r341766 (by alc):
Allow allocations across meta boundaries.

5 years agoMFC r341594, r341601:
Mark Johnston [Tue, 18 Dec 2018 20:16:46 +0000 (20:16 +0000)]
MFC r341594, r341601:
mlx4en(4) and ixl(4) have netdump support.

5 years agoMFC r341808:
Mark Johnston [Tue, 18 Dec 2018 20:14:33 +0000 (20:14 +0000)]
MFC r341808:
Remove an unused malloc(9) type.

5 years agoMFC r341807:
Mark Johnston [Tue, 18 Dec 2018 20:13:45 +0000 (20:13 +0000)]
MFC r341807:
Use inline tests for individual PTE bits in the RISC-V pmap.

5 years agoMFC r341821:
Mark Johnston [Tue, 18 Dec 2018 20:12:43 +0000 (20:12 +0000)]
MFC r341821:
Fix the PAE kernel gcc build.

5 years agoMFC: r340090, r342056
Jung-uk Kim [Tue, 18 Dec 2018 19:38:28 +0000 (19:38 +0000)]
MFC: r340090, r342056

Merge ACPICA 20181031 and 20181213.

5 years agoMFC r341824:
Stephen Hurd [Tue, 18 Dec 2018 17:31:31 +0000 (17:31 +0000)]
MFC r341824:

Fix !tx_abdicate error from r336560

r336560 was supposed to restore pre-r323954 behaviour when tx_abdicate is
not set (the default case). However, it appears that rather than the drainage
check being made conditional on tx_abdicate being set, it was duplicated
so it occured twice if tx_abdicate was set and once if it was not.

Now when !tx_abdicate, drainage is only checked if the doorbell isn't
pending.

Reported by:    lev
Sponsored by:   Limelight Networks

5 years agoMFC r342125:
Brooks Davis [Tue, 18 Dec 2018 09:13:50 +0000 (09:13 +0000)]
MFC r342125:

Fix bugs in plugable CC algorithm and siftr sysctls.

Use the sysctl_handle_int() handler to write out the old value and read
the new value into a temporary variable. Use the temporary variable
for any checks of values rather than using the CAST_PTR_INT() macro on
req->newptr. The prior usage read directly from userspace memory if the
sysctl() was called correctly. This is unsafe and doesn't work at all on
some architectures (at least i386.)

In some cases, the code could also be tricked into reading from kernel
memory and leaking limited information about the contents or crashing
the system. This was true for CDG, newreno, and siftr on all platforms
and true for i386 in all cases. The impact of this bug is largest in
VIMAGE jails which have been configured to allow writing to these
sysctls.

Per discussion with the security officer, we will not be issuing an
advisory for this issue as root access and a non-default config are
required to be impacted.

Reviewed by: markj, bz
Discussed with: gordon (security officer)
Security: kernel information leak, local DoS (both require root)
Differential Revision: https://reviews.freebsd.org/D18443

5 years agoMFC r341810:
Konstantin Belousov [Tue, 18 Dec 2018 07:11:12 +0000 (07:11 +0000)]
MFC r341810:
Free bootstacks after AP startup.

5 years agoMFC r340707:
Marcelo Araujo [Tue, 18 Dec 2018 03:00:12 +0000 (03:00 +0000)]
MFC r340707:

Define AHCI_PORT_IDENT and increase by 1 the VTBLK_BLK_ID_BYTES
to avoid buffer accessed out of bounds, also switch to snprintf(3).

PR: 200859
Submitted by: Caglar <caglar@10ur.org>
Obtained from: https://github.com/mist64/xhyve/pull/24

5 years agoMFC r342127
Hiren Panchasara [Mon, 17 Dec 2018 21:46:42 +0000 (21:46 +0000)]
MFC r342127
Revert r331567 CC Cubic: fix underflow for cubic_cwnd()

This change is causing TCP connections using cubic to hang. Need to dig more to
find exact cause and fix it.

5 years agoMFC r341257: improve speed of empty block detection.
Maxim Sobolev [Mon, 17 Dec 2018 15:17:09 +0000 (15:17 +0000)]
MFC r341257: improve speed of empty block detection.

5 years agoMFC r341253: panic() should not apply \n.
Maxim Sobolev [Mon, 17 Dec 2018 15:13:58 +0000 (15:13 +0000)]
MFC r341253: panic() should not apply \n.

5 years agoMFC r341798:
Andrey V. Elsukov [Mon, 17 Dec 2018 10:42:20 +0000 (10:42 +0000)]
MFC r341798:
  Use correct size for IPv4 address in gethostbyaddr().
  When u_long is 8 bytes, it returns EINVAL and 'ipfw -N show' doesn't work.

  Reported by: Claudio Eichenberger <cei at yourshop.com>

MFC r341799:
  Rework how protocol number is tracked in rule. Save it when O_PROTO
  opcode will be printed. This should solve the problem, when protocol
  name is not printed in `ipfw -N show`.

  Reported by: Claudio Eichenberger <cei at yourshop.com>

5 years agoMFC r342071: ng_bpf.4: fix EXAMPLES: do not activate promiscuous mode
Eugene Grosbein [Mon, 17 Dec 2018 06:58:11 +0000 (06:58 +0000)]
MFC r342071: ng_bpf.4: fix EXAMPLES: do not activate promiscuous mode

PR: 102719

5 years agoMFC r341402:
Konstantin Belousov [Sun, 16 Dec 2018 02:46:51 +0000 (02:46 +0000)]
MFC r341402:
Fix off-by-one (page) errors in checks in d_mmap methods of several drivers.

5 years agoMFC r341400:
Konstantin Belousov [Sun, 16 Dec 2018 02:46:09 +0000 (02:46 +0000)]
MFC r341400:
Add a comment noting that the additional range checks are not needed.

5 years agoMFC r341399:
Konstantin Belousov [Sun, 16 Dec 2018 02:44:57 +0000 (02:44 +0000)]
MFC r341399:
Fix off by one in hpet_mmap() csw method.

5 years agoMFC r341398:
Konstantin Belousov [Sun, 16 Dec 2018 02:42:32 +0000 (02:42 +0000)]
MFC r341398:
Change the vm_ooffset_t type to unsigned.

MFC note: For KPI stability, UOFF_TO_IDX() macro is still provided,
redefined to OFF_TO_IDX().

5 years agoMFC r341746:
Konstantin Belousov [Sun, 16 Dec 2018 02:30:55 +0000 (02:30 +0000)]
MFC r341746:
Fix PAE boot.

5 years agoMFC r341768,r341795: ping(8): remove needless comparision with LONG_MAX
Eugene Grosbein [Sun, 16 Dec 2018 01:17:27 +0000 (01:17 +0000)]
MFC r341768,r341795: ping(8): remove needless comparision with LONG_MAX
after unsigned long ultmp changed to long ltmp in r340245.

5 years agoMFC r341990:
Mark Johnston [Sat, 15 Dec 2018 19:56:51 +0000 (19:56 +0000)]
MFC r341990:
Fix a possible mbuf double free in bwn_dma_tx_start().

admbug: 820

5 years agoMFC r341993
Vincenzo Maffione [Sat, 15 Dec 2018 18:11:41 +0000 (18:11 +0000)]
MFC r341993

netmap: add man page for ptnet

Add a man page for ptnet(4), describing the guest driver for netmap passthrough.

Reviewed by:    bcr
Differential Revision:  https://reviews.freebsd.org/D18518

5 years agoMFC r341992
Vincenzo Maffione [Sat, 15 Dec 2018 18:05:05 +0000 (18:05 +0000)]
MFC r341992

netmap: fix warning in netmap_kloop.c

Reported by:    markj

5 years agoMFC r341738:
Michal Meloun [Sat, 15 Dec 2018 06:22:48 +0000 (06:22 +0000)]
MFC r341738:

  Implement R_AARCH64_TLS_DTPMOD64 and A_AARCH64_TLS_DTPREL64 relocations.
  Although these are slightly obsolete in favor of R_AARCH64_TLSDESC, gcc
  -mtls-dialect=trad still use them.

5 years agoMFC r341694:
Mark Johnston [Fri, 14 Dec 2018 18:40:08 +0000 (18:40 +0000)]
MFC r341694:
Update the description of the address space layout on RISC-V.

5 years agoMFC r341693:
Mark Johnston [Fri, 14 Dec 2018 18:39:06 +0000 (18:39 +0000)]
MFC r341693:
Rename sptbr to satp per v1.10 of the privileged architecture spec.

5 years agoMFC r341692:
Mark Johnston [Fri, 14 Dec 2018 18:38:10 +0000 (18:38 +0000)]
MFC r341692:
Let the cap_syslog capability inherit stdio descriptors.

5 years agoMFC r341829: Allow CTL device specification in bhyve virtio-scsi.
Alexander Motin [Fri, 14 Dec 2018 14:49:04 +0000 (14:49 +0000)]
MFC r341829: Allow CTL device specification in bhyve virtio-scsi.

There was a large refactoring done in CTL to allow multiple ioctl frontend
ports (and respective devices) to be created, particularly for bhyve.
Unfortunately, respective part of bhyve functionality got lost somehow from
the original virtio-scsi commit.  This change allows wanted device path to
be specified in either of two ways:
 -s 6,virtio-scsi,/dev/cam/ctl1.1
 -s 6,virtio-scsi,dev=/dev/cam/ctl2.3
If neither is specified, the default /dev/cam/ctl device is used.

While there, remove per-queue CTL device opening, which makes no sense at
this point.

5 years agoMFC r341706: Make virtio-scsi pass SCSI Task Attributes to CTL.
Alexander Motin [Fri, 14 Dec 2018 14:46:35 +0000 (14:46 +0000)]
MFC r341706: Make virtio-scsi pass SCSI Task Attributes to CTL.

5 years agoMFC r341704: Fill initid explicitly on requests.
Alexander Motin [Fri, 14 Dec 2018 14:45:54 +0000 (14:45 +0000)]
MFC r341704: Fill initid explicitly on requests.

Unfortunately ctl_scsi_zero_io() wipes that field, so it was always zero.
While there, targ_port is set by kernel, so user-space should not fill it.

5 years agoMFC r341705: Fix several iov handling bugs in bhyve virtio-scsi backend.
Alexander Motin [Fri, 14 Dec 2018 14:44:38 +0000 (14:44 +0000)]
MFC r341705: Fix several iov handling bugs in bhyve virtio-scsi backend.

 - buf_to_iov() does not use buflen parameter, allowing out of bound read.
 - buf_to_iov() leaks memory if seek argument > 0.
 - iov_to_buf() doesn't need to reallocate buffer for every segment.
 - there is no point to use size_t for iov counts, int is more then enough.
 - some iov function arguments can be constified.
 - pci_vtscsi_request_handle() used truncate_iov() incorrectly, allowing
   getting out of buffer and possibly corrupting data.
 - pci_vtscsi_controlq_notify() written returned status at wrong offset.
 - pci_vtscsi_controlq_notify() leaked one buffer per event.

5 years agoMFC r341679:
Michal Meloun [Fri, 14 Dec 2018 10:30:09 +0000 (10:30 +0000)]
MFC r341679:

  Fix cut&paste typo in atomic_fetchadd_64().

5 years agoMFC r341511,r341512,r341513:
Michal Meloun [Fri, 14 Dec 2018 10:20:26 +0000 (10:20 +0000)]
MFC r341511,r341512,r341513:

  r341511:
    Fix style(9). Not a functional change.
  r341512:
    Implement arm64 version of __tls_get_addr().
  r341513:
    Tidy up arm64 reloc_jmpslots() implementation.
    - don't relocate jump slots multiple times (if LD_BIND_NOW is defined).
    - process only R_AARCH64_JUMP_SLOT here, other relocation types are
      handled by reloc_plt().

5 years agoMFC r341680
Vincenzo Maffione [Fri, 14 Dec 2018 09:06:56 +0000 (09:06 +0000)]
MFC r341680

netmap: remove dead code obsoleted by iflib

The iflib subsystem implements netmap support in a driver-independent
way (sys/net/iflib.c). We can therefore remove the headers that
used to implement netmap support for all the drivers now supported
by iflib (em, igb, ixl, ixgbe, lem).