Commit Graph

199769 Commits

Author SHA1 Message Date
Justin Hibbits
98be38e7fb Implement a driver for the PowerPC-base RouterBoard (RB333/600/800/1100)
Summary:
This has been tested on the RB800, but should work on the RB333, RB600, and
RB1100 as well.

It's currently missing ECC support, but read and write are complete.

Reviewers: imp

Reviewed By: imp

Subscribers: imp

Differential Revision: https://reviews.freebsd.org/D2223
2015-05-04 20:36:00 +00:00
Alexander Motin
b208a147b9 Implement in-order execution of non-NCQ commands.
Using status updates in r282364, block queue on BSY, DRQ or ERR bits set.
This can be a performance penalization for non-NCQ commands, but it is
required for proper error recovery and standard compliance.

MFC after:	2 weeks
2015-05-04 19:55:01 +00:00
Gleb Smirnoff
84d313761d Fix arithmetical bug in vnode_pager_haspage(). The check against object size
should be done not with the number of pages in the first block, but with the
overall number of pages.  While here, add KASSERT that makes sure that BMAP
doesn't return completely irrelevant blocks.

Reviewed by:	kib
Tested by:	pho
Sponsored by:	Netflix
Sponsored by:	Nginx, Inc.
2015-05-04 18:49:25 +00:00
Baptiste Daroussin
2b30fb2639 Parse filename until first space then print the rest of the line after file
inclusion

This is the same behaviour of heirloom's soelim
2015-05-04 18:20:31 +00:00
Ian Lepore
28315e27a7 Implement a mechanism for making changes in the kernel<->driver PPS
interface without breaking ABI or API compatibility with existing drivers.

The existing data structures used to communicate between the kernel and
driver portions of PPS processing contain no spare/padding fields and no
flags field or other straightforward mechanism for communicating changes
in the structures or behaviors of the code.  This makes it difficult to
MFC new features added to the PPS facility.  ABI compatibility is
important; out-of-tree drivers in module form are known to exist.  (Note
that the existing api_version field in the pps_params structure must
contain the value mandated by RFC 2783 and any RFCs that come along after.)

These changes introduce a pair of abi-version fields which are filled in
by the driver and the kernel respectively to indicate the interface
version.  The driver sets its version field before calling the new
pps_init_abi() function.  That lets the kernel know how much of the
pps_state structure is understood by the driver and it can avoid using
newer fields at the end of the structure that it knows about if the driver
is a lower version.  The kernel fills in its version field during the init
call, letting the driver know what features and data the kernel supports.

To implement the new version information in a way that is backwards
compatible with code from before these changes, the high bit of the
lightly-used 'kcmode' field is repurposed as a flag bit that indicates the
driver is aware of the abi versioning scheme.  Basically if this bit is
clear that indicates a "version 0" driver and if it is set the driver_abi
field indicates the version.

These changes also move the recently-added 'mtx' field of pps_state from
the middle to the end of the structure, and make the kernel code that uses
this field conditional on the driver being abi version 1 or higher.  It
changes the only driver currently supplying the mtx field, usb_serial, to
use pps_init_abi().

Reviewed by:	hselasky@
2015-05-04 17:59:39 +00:00
Baptiste Daroussin
dd354955d4 Do not remove libmap32.conf in make delete-old as it may remove user modified
version by mistake
2015-05-04 17:01:51 +00:00
Baptiste Daroussin
f67555d54c Style fix
Reported by:	bdrewery
2015-05-04 16:59:09 +00:00
Baptiste Daroussin
2b7dce20ad Remove now unneeded libmap32.conf 2015-05-04 16:34:08 +00:00
Baptiste Daroussin
5551c57355 Rework PRIVATELIB
Now when a lib is marked as PRIVATELIB it is renamed into libprivate$foo instead
of being installed in /usr/lib/private and playing with rpath.

Also allow to install headers for PRIVATELIBS in that case the headers will be
installed in /usr/include/private/$foo

Keep the headers under a private namespace to prevent third party build system
to easily find them to ensure they are only used on purpose.

This allows for non base applications to statically link against a library in
base which is linked to a privatelib

Treating PRIVATELIBS as regular libraries allows to push them into our current
compatX packages if needed.

While here finish promotion of libevent as PRIVATELIB
Install header for bsdstat and libucl

Differential Revision:	https://reviews.freebsd.org/D2365
Reviewed by:	brooks, des
Discussed with:	imp
2015-05-04 16:28:54 +00:00
Glen Barber
98becbfc3c Add logic to detect if the net/bsdec2-image-upload port needs
to be installed. [1]

For the cw-ec2-portinstall and ec2ami targets, touch the
.TARGET file after completion to prevent duplicate invocations.

Add cw-ec2-portinstall and ec2ami to CLEANFILES.

Submitted by:	cperciva[1]
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2015-05-04 15:04:39 +00:00
Ian Lepore
f49c3ab774 On an icache sync by address/len, round the length up if the operation spans
a cacheline boundary.

PR:		199740
Submitted by:	Juergen Weiss <weiss@uni-mainz.de>
2015-05-04 14:55:21 +00:00
John Baldwin
196cd80898 Various updates to the ftruncate(2) documentation:
- Note that ftruncate(2) can operate on shared memory objects and cross
  reference shm_open(2).
- Note that ftruncate(2) does not change the file position pointer (aka
  seek pointer) of the file descriptor.
- ftruncate(2) will fail with EINVAL for all sorts of other fd types than
  just sockets, so instead note that it fails for all but regular files and
  shared memory objects.
- Note that ftruncate(2) also appeared in 4.2BSD along with truncate(2).
  (Or at least the manpage for both appeared in 4.2, I did not check the
  kernel code itself to see if either predated 4.2.)

PR:		199472 (2)
Submitted by:	andrew@ugh.net.au (2)
MFC after:	1 week
2015-05-04 14:47:00 +00:00
John Baldwin
afa94a3f97 Partially revert r255486, the first argument to socketpair() is a socket
domain, not a file descriptor.  Use 'domain' instead of the original 'd'
for this argument to match socket(2).

PR:		199491
Reported by:	sp55aa@qq.com
MFC after:	1 week
2015-05-04 14:23:31 +00:00
Cy Schubert
36428b7e17 Restore CPU dependent compile time conditionals.
MFC after:	1 month (with r281143 and r282408)
2015-05-04 12:42:52 +00:00
Cy Schubert
a25439b686 MFV ntp 4.2.8p2 (r281348)
Reviewed by:    delphij (suggested MFC)
Approved by:	roberto
Security:       CVE-2015-1798, CVE-2015-1799
Security:       VuXML ebd84c96-dd7e-11e4-854e-3c970e169bc2
MFC after:	1 month
2015-05-04 04:45:59 +00:00
Neel Natu
6a273d5ef7 Emulate the 'CMP r/m8, imm8' instruction encountered when booting a Windows
Vista guest.

Reported by:	Leon Dang (ldang@nahannisys.com)
MFC after:	1 week
2015-05-04 04:27:23 +00:00
Adrian Chadd
fc4d77c3ce Fix string concatenation - "wlan_##name" -> "wlan_" #name
PR:		kern/197623
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-04 00:47:22 +00:00
Adrian Chadd
364ee1250b Use bssid validation for data frames only + add RUN -> RUN state transition
However, IBSS merge will be performed only if a driver calls
ieee80211_ibss_merge(); so, this applicable to the ath(4) only.
Also, this should fix bug 167870.

PR:		kern/199632
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-04 00:32:10 +00:00
Adrian Chadd
eca3b4fc14 Add node_clear_keyixmap() and use it in the ieee80211_free_node() / node_reclaim().
PR:		kern/199672
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-04 00:29:19 +00:00
Luiz Otavio O Souza
11cede4873 Fix the voltage and clock levels for cpufreq on RPi 2.
Submitted by:	Daisuke Aoyama <aoyama@peach.ne.jp>
2015-05-04 00:01:35 +00:00
Adrian Chadd
3077c104f5 [iwn] Do not filter control frames in monitor mode.
PR:		kern/197143
Submitted by:	 Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:40:12 +00:00
Adrian Chadd
a20c9aff42 Handle properly IBSS merges (works with patch from bug 199632).
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:39:44 +00:00
Adrian Chadd
5cacb17fa2 Fix various powersave races + optimize tx/rx pointer update when powersave is off.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:39:02 +00:00
Adrian Chadd
9b7cc717ed [iwn?] Use correct sequence numbers with non-QoS STAs.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:38:32 +00:00
Adrian Chadd
e43b274af6 Fix warning about comparison of integers of different signs.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:37:13 +00:00
Adrian Chadd
978d805f34 [iwn?] Fix memory leak in wpi_reset_tx_ring().
PR:		kern/197143
Differential Revision:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:36:25 +00:00
Adrian Chadd
12e0ff3b76 Use nitems() for counting elements in arrays.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:35:44 +00:00
Adrian Chadd
cbaa708073 Do not include WPI_START_SCAN event processing into non-debug builds.
PR:		kern/197143
Submitted by:	 Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:35:11 +00:00
Adrian Chadd
c39df5f423 Fix sequence number generation for beacon frames.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:34:24 +00:00
Adrian Chadd
6ddc7d4d45 Add debug output for WPI_BEACON_SENT event.
PR:		kern/197143
Submitted by:	 Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:30:04 +00:00
Adrian Chadd
6f5066748d Try to fix passive scanning hang on beacon miss.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:28:54 +00:00
Adrian Chadd
89023da2eb Add comment about AUTH -> AUTH state transition + fix some style issues.
PR:		kern/197143
Submitted by:	 Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:27:36 +00:00
Adrian Chadd
cf990903c7 Display more information for beacon miss debugging.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:25:33 +00:00
Adrian Chadd
5c0159195d Limit minimum threshold of missed beacons.
PR:		kern/197143
Submitted by:	 Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:24:20 +00:00
Adrian Chadd
b4324a50bd Improve beacon miss detection.
PR:		kern/197143
Submitted by:	 Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:21:16 +00:00
Adrian Chadd
3e54d9fdc0 Create another debug category for WPI_BEACON_MISSED notification.
Differential Revision:	kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:18:28 +00:00
Adrian Chadd
a4703831f1 Unbreak scanning after RUN -> SCAN state transition.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:09:47 +00:00
Adrian Chadd
64c9b99b3e Check channels which are passed in IBSS mode.
PR:		kern/197143
Submitted by:	 Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:08:25 +00:00
Adrian Chadd
b3195a3fdf Do not disable beacon notifications (unbreaks scanning on passive channels).
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:06:19 +00:00
Adrian Chadd
efccc3c60c Fix pause scan time calculation (the remainder must be less than beacon interval).
PR:		kern/197143
Submitted by:	 Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 23:03:06 +00:00
Adrian Chadd
42946b7dbc Fix active/passive dwell calculation.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 22:56:36 +00:00
Adrian Chadd
3289bbc9e3 Turn off led when leaving RUN state.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 22:55:06 +00:00
Warner Losh
729a1e1dec For eabi 5 (what FreeBSD uses), be sure to tag all executables and
shared libraries as either SOFT or HARD float to comply with the EABI
standard.

Differential Revision: https://reviews.freebsd.org/D2401
2015-05-03 22:51:42 +00:00
Warner Losh
f321ea7845 When merging the floating point type attribute, and reporting an error
when things don't match, report which file has them and which one
doesn't correctly.

Differential Revision: https://reviews.freebsd.org/D2400
2015-05-03 22:51:29 +00:00
Adrian Chadd
3d9089a6f1 Add TX status codes (obtained from iwlegacy)
PR:		kern/197143
Differential Revision:	Andriy Voskoboinyk <s3erios@gmail.com>
Obtained from:	Linux drivers/net/wireless/iwlegacy
2015-05-03 22:49:47 +00:00
Adrian Chadd
b3cd88da75 Move radiooff_task to the internal taskqueue.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 22:47:06 +00:00
Adrian Chadd
e948ddb6d1 Use another workaround for scanning.
PR:		kern/197143
Submitted by:	 Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 22:43:45 +00:00
Adrian Chadd
621f1a7594 Add wpi_check_bss_filter()
PR:		kern/197143
Submitted by:	 Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 22:34:32 +00:00
Adrian Chadd
205cb272ea Fix KASSERT statements in if_wpi_debug.h
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 22:32:45 +00:00
Adrian Chadd
b625a56aae Remove workaround for bug 199676.
PR:		kern/197143
Submitted by:	Andriy Voskoboinyk <s3erios@gmail.com>
2015-05-03 22:30:11 +00:00