Commit Graph

235402 Commits

Author SHA1 Message Date
arybchik
1ab62cd0c0 sfxge(4): sync tlv_layout.h with firmwaresrc and update port-mode definition use
It fixes driver attach issue to a new firmware which reports a new
port-modes.

Reviewed by:    gnn
Submitted by:   Tom Millington <tmillington at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      2 days
Differential Revision:  https://reviews.freebsd.org/D8203
2016-10-10 09:54:01 +00:00
sephe
fce72f9619 hyperv/hn: Suffix NDIS offload size with NDIS version.
MFC after:	1 week
Sponsored by:	Microsoft
Differential Revision:	https://reviews.freebsd.org/D8091
2016-10-10 06:14:38 +00:00
sephe
6dfcd4055f hyperv/hn: Generalize RSS capabilities query.
- Support NDIS < 6.30.
- Stringent response checks.

MFC after:	1 week
Sponsored by:	Microsoft
Differential Revision:	https://reviews.freebsd.org/D8090
2016-10-10 05:59:30 +00:00
sephe
dd8232697a hyperv/hn: Fix if_hw_tsomax setup.
MFC after:	1 week
Sponsored by:	Microsoft
Differential Revision:	https://reviews.freebsd.org/D8089
2016-10-10 05:50:01 +00:00
sephe
b7a49dcdb3 hyperv/hn: Fix checksum offload settings
The _correct_ way to identify the supported checksum offloading and
TSO parameters is to query OID_TCP_OFFLOAD_HARDWARE_CAPABILITIES.

MFC after:	1 week
Sponsored by:	Microsoft
Differential Revision:	https://reviews.freebsd.org/D8088
2016-10-10 05:41:39 +00:00
manu
770521dfe6 Add CHIP dts into the build 2016-10-10 04:53:15 +00:00
andrew
ddc1124282 Set INLINE_LIMIT in the aarch64 case for gcc.
Submitted by:	andreast
MFC after:	1 week
2016-10-09 21:47:20 +00:00
mmel
e4f325a150 ARM: Remove unused includes.
MFC after: 1 week
2016-10-09 10:25:47 +00:00
mmel
56c8fb351e ARM: Split identify_arm_cpu() into ARMv4 and ARMv6 variant.
On ARMv6, be more verbose about supported CPU features and/or
optional instructions.
2016-10-09 10:24:10 +00:00
avos
4d86273254 iwm: add missing 'Rx errors' counter incrementation. 2016-10-09 10:21:28 +00:00
gonzo
cf6b5e1664 Fix release MSI method for ARM GIC 2016-10-09 04:37:21 +00:00
gonzo
cf48d75c86 Fix release MSI method for NVidia Tegra PCI controller 2016-10-09 04:36:40 +00:00
gonzo
d2cb12d36f Fix MSI allocation for NVidia Tegra
- Fix range check
- Due to checking found value in for(;;) condition irq after loop was
    always + 1 from actually found slot and wrong entry was marked as
    used which lead to returning slot 0 for all requests.
2016-10-09 04:29:42 +00:00
allanjude
8dac0e547a Fix spurious white space introduced in r301059
r301059 accidently introduced a subtle change for point to point interfaces
where an extra space is inserted before the netmask. This can cause issues
for scripts that parse ifconfig output.

Submitted by:	Kevin Bowling <kevin.bowling@kev009.com>
Reviewed by:	hiren
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D8199
2016-10-09 03:20:58 +00:00
avos
432f14b4e1 wpi: restore frame header before submitting an mbuf to
ieee80211_tx_complete()

This change allows to pass packet length to rate control modules and
fixes IFCOUNTER_OBYTES calculation.

Tested with Intel 3945BG, STA mode.
2016-10-08 20:41:08 +00:00
bapt
05bd0055b6 Remove the WITH_FMAKE option left over from r284464
MFC after:	3 days
2016-10-08 19:54:01 +00:00
cem
ac8551c9b0 sys/module.h: Unbreak MOD_DPF printf
MOD_DPF's args parameter already has parentheses around it.  This was broken 14
years ago in r91472.

Sponsored by:	Dell EMC Isilon
2016-10-08 19:40:58 +00:00
bapt
9a6ce76498 groff is not needed in the bootstrap tools if the system is built
WITHOUT_SHAREDOCS

MFC after:	2 weeks
2016-10-08 18:57:11 +00:00
gonzo
2a81c79b2c Add multitouch support for RPi's FT5406
- Add multitouch support (protocol B)
- Report physical size of the screen
- Switch from using busy loop to callbacks
- Enable callbacks only when there is active listener on /dev/input/eventX

Submitted by:	Vladimir Kondratiev <wulf@cicgroup.ru>
2016-10-08 18:19:52 +00:00
gonzo
a6701d564a Implement EVDEV_FLAG_MT_AUTOREL flag (autorelease touchpoints)
Automaticaly release (send ABS_MT_TRACKING_ID = -1) MT-slots
that has not been listed in current MT protocol type B report.

Slot is counted as listed if corresponding ABS_MT_SLOT event
has been sent regardless of other MT events.

Events are sent on SYN_REPORT event.

Submitted by:	Vladimir Kondratiev <wulf@cicgroup.ru>
2016-10-08 17:59:53 +00:00
gonzo
29cffbce2a Allow using of driver's mutex instead internal one for evdev locking.
Add new API call: evdev_register_mtx which takes lock argument that
should be used instead of internal one for evdev locking. Useful for
cases if evdev_push_event() is always called with driver's lock taken
and reduces amount of lock aquisitions. This allows to avoid LOR
between ev_open/ev_close invocations and evdev_push_event() Such LOR
can happen when ev_open/ev_close methods acquire driver lock and
evdev_push_event() is called with this lock taken.

Submitted by:	Vladimir Kondratiev <wulf@cicgroup.ru>
2016-10-08 17:58:26 +00:00
bapt
b786332844 Update pci_vendors to 2016-10-03
MFC after:	3 days
2016-10-08 17:51:15 +00:00
bapt
1cb400325e Import tzdata 2016g
MFC after:	3 days
2016-10-08 17:46:59 +00:00
bapt
843d857510 Incorporate a change from OpenBSD by millert@OpenBSD.org
Don't warn about valid time zone abbreviations.  POSIX
through 2000 says that an abbreviation cannot start with ':', and
cannot contain ',', '-', '+', NUL, or a digit.  POSIX from 2001
on changes this rule to say that an abbreviation can contain only
'-', '+', and alphanumeric characters from the portable character
set in the current locale.  To be portable to both sets of rules,
an abbreviation must therefore use only ASCII letters."  Adapted
from tzcode2015f.

This is needed to be able to update tzdata to a newer version

MFC after:	3 days
2016-10-08 17:46:29 +00:00
kevlo
5243034a4b Add description for ifi_oqdrops. 2016-10-08 14:58:26 +00:00
kevlo
4ec42ae201 In case of removal of m_copy() the macro should remain named M_COPY()
in ip_compat.h after r305824.  Leaving as vanilla as possible aids in
future maintenance and upgrades.

Suggested by:	glebius, cy
2016-10-08 14:57:21 +00:00
jilles
71c26f702a sh: Do not import IFS's value from the environment.
Per Austin group issue #884, always set IFS to $' \t\n'. As before, IFS will
be exported iff it was in the environment.

Most shells (e.g. bash, ksh93 and mksh) already did this. This change
improves predictability, in that scripts can simply rely on the default
value.

However, the effect on security is little, since applications should not be
calling the shell with attacker-controlled environment variable names in the
first place and other security-sensitive variables such as PATH should be
and are imported by the shell.

When using a new sh with an old (before 10.2) libc wordexp(), IFS is no
longer passed on. Otherwise, wordexp() continues to pass along IFS from the
environment per its documentation.

Discussed with:	pfg
Relnotes:	yes
2016-10-08 13:40:12 +00:00
mjg
4a50f75155 vfs: assert empty tmp free list on unmount 2016-10-08 13:38:05 +00:00
mjg
af2e2494f1 vfs: clear the tmp free list flag before taking the free vnode list lock
Safe access is already guaranteed because of the mnt_listmx lock.
2016-10-08 13:36:59 +00:00
sevan
ed345a1d5f Sort SEE ALSO section sequentially.
Highlighted by mandoc -Tlint

PR:		212440
Approved by:	imp
MFC after:	5 days
Differential Revision:	https://reviews.freebsd.org/D8192
2016-10-08 12:53:23 +00:00
jhibbits
0b74c9ccd0 Minor optimizations to dTSEC glue code
Don't call pmap_kextract() multiple times, it wastes CPU cycles, which in a high
performance environment can be very expensive.

Inline XX_FindTracker() to allow more optimizations as well.
2016-10-08 05:26:45 +00:00
jhibbits
52a2f1d56f Adjust copyright date. No real work was done on it until 2016. 2016-10-08 01:18:01 +00:00
adrian
f5d4ba8153 [net80211] extend the ieee80211_rx_stats struct to include more information.
There are a variety of more interesting RX statistics that we should
keep track of but we don't.  This is a starting point for adding more
information.

Specifically:

* now the RX rate information and some of the packet status is
  passed up;
* The 32 bit or 64 bit TSF is passed up;
* the PHY mode is passed up;
* the "I'm decap'ed AMSDU!" state is passed up;
* number of RX chains is bumped to 4.

This is all mostly a placeholder for getting the data into the RX status
before we pass it up to net80211 - unfortunately we don't yet enforce
that drivers provide it, nor do we pass the provided info back up the
stack so anyone can use the data.

We're going to need to use some of this data moving forward.
Notably, now that some hardware can do AMSDU decap for us (the intel iwm
driver can do it when we flip it on; the ath10k port I'm doing does
it for us) then we need to pass it up through the stack so the duplicate
RX sequence numbers and crypto/IV details don't cause the packet to
be dropped and/or counted against a replay counter.

It's also the beginning of being able to do more interesting node
accounting in net80211.  Specifically, once drivers start populating
per-packet rate information, AMPDU information, timestamps, etc,
we can start providing histograms of rate-versus-RSSI, account
for receive time spent per node and other such interesting things.

(Note: I'm also hoping to include ranging and RTT information for
future chipset support; and it's likely going to include it in
this kind of fashion.)
2016-10-08 01:12:29 +00:00
adrian
6614f8efef [ifconfig] correctly display RSSI. 2016-10-08 01:00:31 +00:00
vangyzen
cbef52ce39 Additional cleanup of the arp(4) man page after r306652
Submitted by:	David A. Bright <david.a.bright@dell.com>
Requested by:	wblock
Reviewed by:	wblock
MFC after:	23 days
Sponsored by:	Dell EMC
Differential Revision:	https://reviews.freebsd.org/D8183
2016-10-07 22:17:25 +00:00
markj
0e9bbe2171 Lock the ND prefix list and add refcounting for prefixes.
This change extends the nd6 lock to protect the ND prefix list as well
as the list of advertising routers associated with each prefix. To handle
cases where the nd6 lock must be dropped while iterating over either the
prefix or default router lists, a generation counter is used to track
modifications to the lists. Additionally, a new mutex is used to serialize
prefix on-link/off-link transitions. This mutex must be acquired before
the nd6 lock and is held while updating the routing table in
nd6_prefix_onlink() and nd6_prefix_offlink().

Reviewed by:	ae, tuexen (SCTP bits)
Tested by:	Jason Wolfe <jason@llnw.com>,
		Larry Rosenman <ler@lerctr.org>
MFC after:	2 months
Differential Revision:	https://reviews.freebsd.org/D8125
2016-10-07 21:10:53 +00:00
markj
671e7fcca9 Reduce the number of conditional statements in nd6_prefix_onlink().
MFC after:	1 week
2016-10-07 21:03:18 +00:00
stevek
a904c8dea7 Just remove freeing memory in pmcstat_cleanup, since we only clean up
when we are exiting anyway.

Add NULL checks for all malloc and strdup returns.

Reviewed by:	gnn
Approved by:	sjg (mentor)
Obtained from:	Juniper Networks, Inc.
Differential Revision:	https://reviews.freebsd.org/D8002
2016-10-07 21:03:12 +00:00
markj
d443c7f48a Combine several checks in nd6_prefix_offlink() into one.
MFC after:	1 week
2016-10-07 21:02:30 +00:00
emaste
909bb20a50 portsnap: use lam on the known good hash list
This change is equivalent to the approach committed in r306417, but if
sed has a bug it could be exploited by the untrusted tar file. Instead,
generate the expected tar content and compare that with find's output.

convert the expected hash list to the expected tar content filesystem
layout, and compare that with find's output.

Submitted by:	cperciva (in review D8052)
Reviewed by:	oshogbo
MFC after:	2 weeks
2016-10-07 20:01:59 +00:00
np
c2587c68b5 cxgbetool: Add a loadcfg subcommand to allow a user to upload a firmware
configuration file to the card.
2016-10-07 19:13:29 +00:00
emaste
be42e2a1a3 makefs: diff reduction with NetBSD
Obtained from:	NetBSD usr.sbin/makefs/cd9660.c 1.33
2016-10-07 19:12:15 +00:00
np
4f4087d25f cxgbe(4): Add an ioctl to copy a firmware config file to the card's flash. 2016-10-07 19:02:39 +00:00
oshogbo
9c3b2ef07c Restrict stdin if it's not in use.
Reviewed by:	emaste, cem
Differential Revision:	https://reviews.freebsd.org/D8184
2016-10-07 19:02:13 +00:00
oshogbo
05acb0798d Remove the duplicated code using Capsicum helpers.
Reviewed by:	cem, ed, bapt, emaste
Differential Revision	https://reviews.freebsd.org/D8140
2016-10-07 17:56:57 +00:00
andrew
41f706c965 The bootloader self relocation code was slightly wrong for the
R_AARCH64_RELATIVE relocation found on arm64. It would try to add the
contents of the memory location being relocated to the base address and
the relocation addend. This worked when the contents was zero, however
this now seems to be set to the value of the addend so we add this twice.
Fix this by just setting the memory to the computed value.

Reviewed by:	emaste
MFC after:	1 week
Sponsored by:	DARPA, AFRL
Differential Revision:	https://reviews.freebsd.org/D8177
2016-10-07 16:17:51 +00:00
marcel
164700b68e In order to allow mkimg(1) (and other tools) to become a build tool
that can be compiled on various OSes (including on older versions
of FreeBSD), make it possible to have it include the partitioning
scheme definitions without pulling in FreeBSD specifics.
In particular this means:
 o  move the scheme definitions iand related defines to header files
    under sys/disk,
 o  make them (more) portable by using uint#_t (where applicable)
    and renaming defines so that they at least have a good prefix,
 o  make the new headers stand-alone so that they don't need FreeBSD
    definitions, like struct uuid(*)
 o  keep the original headers for compatibility, but rewrite them to
    get the scheme definitions from <sys/disk/$scheme.h>.

(*) since UUID/GUID type definitions are non-portable and the GPT
scheme uses them, make it possible to have the scheme definitions
use an external type by allowing consumers of the header to set
GPT_UUID_TYPE. When GPT_UUID_TYPE has not been defined, the header
will use it's own type definition, which is the same as struct uuid.
The gpt_uuid_t typedef is created to abstract the details and allows
consumers to refer to a single type.

There is not conflict between the partitioning scheme headers and
what is defined in them. All headers can be included in the same
source files.

Note: consumers of the old headers have not been changed yet. Such
will be done if and when needed/beneficial.

Reviewed by:	imp, jhb
MFC after:	1 month
Sponsored by:	Bracket Computing
2016-10-07 15:42:20 +00:00
kib
a452be0c3c Add verbosity around failed reboot(2) call.
Sponsored by:	The FreeBSD Foundation
MFC after:	3 weeks
2016-10-07 13:43:38 +00:00
kib
c7d05abb4c When making a pause after detecting hard kill of the single-user
shell, ensure that we do sleep for at least the specified time, in
presence of signals.

Interrupted sleep(3) is followed by _exit(), which might cause 'Going
nowhere without my init' panic if init(8) exits before the reboot(2)
really started, or before SIGTSTP stopped init(8) (both events are
initiated by the parallel reboot(8) operation).

I do not see other calls to sleep(STALL_TIMEOUT) as having the same
disasterous consequences and kept them as is until the similar change
is proven required.

Reported and tested by:	Andy Farkas <chuzzwassa@gmail.com>
Sponsored by:	The FreeBSD Foundation
MFC after:	3 weeks
2016-10-07 13:41:28 +00:00
emaste
6b647a7ab8 Improvements to BSD-licensed DTC.
- Numerous crash and bug fixes
- Improved warning and error messages
- Permit multiple labels on nodes and properties
- Fix node@address references
- Add support for /delete-node/
- Consume whitespace after a node
- Read the next token before the second /memreserve/
- Fix parsing of whitespace
- Clean up /delete-node/ and add support for /delete-property/
- Handle /delete-node/ specifying a unit address

Obtained from:	https://github.com/davidchisnall/dtc @df5ede4
2016-10-07 12:57:35 +00:00