5236 Commits

Author SHA1 Message Date
arybchik
1fcfea902b sfxge: Separate software Tx queue limit for non-TCP traffic
Add separate software Tx queue limit for non-TCP traffic to make total
limit higher and avoid local drops of TCP packets because of no
backpressure.
There is no point to make non-TCP limit high since without backpressure
UDP stream easily overflows any sensible limit.

Split early drops statistics since it is better to have separate counter
for each drop reason to make it unabmiguous.

Add software Tx queue high watermark. The information is very useful to
understand how big queues grow under traffic load.

Sponsored by:   Solarflare Communications, Inc.
Approved by:    gnn (mentor)
2015-01-29 19:11:37 +00:00
arybchik
88d7d71821 sfxge: implemented parameter to restrict RSS channels
Submitted by:   Artem V. Andreev <Artem.Andreev at oktetlabs.ru>
Sponsored by:   Solarflare Communications, Inc.
Approved by:    gnn (mentor)
2015-01-29 19:09:14 +00:00
ngie
6917287669 Add MK_BHYVE knob for building and installing bhyve(4), et al
MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division
2015-01-26 06:44:48 +00:00
ngie
ed476849d3 Add MK_CCD knob for building and installing ccd(4), ccdconfig, etc
MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division
2015-01-25 04:52:48 +00:00
ngie
29002c447a Add MK_ISCSI knob for building the iscsi initiator, iscsi daemon, kernel
modules, etc

MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division
2015-01-25 04:20:11 +00:00
jilles
67db24d0f2 Add futimens and utimensat system calls.
The core kernel part is patch file utimes.2008.4.diff from
pluknet@FreeBSD.org. I updated the code for API changes, added the manual
page and added compatibility code for old kernels. There is also audit and
Capsicum support.

A new UTIME_* constant might allow setting birthtimes in future.

Differential Revision:	https://reviews.freebsd.org/D1426
Submitted by:	pluknet (partially)
Reviewed by:	delphij, pluknet, rwatson
Relnotes:	yes
2015-01-23 21:07:08 +00:00
melifaro
59ad9f39b6 Eliminate SIOCGIFADDR handling in bpf.
Quoting 19 years bpf.4 manual from bpf-1.2a1:
"
(SIOCGIFADDR is obsolete under BSD systems.  SIOCGIFCONF should be
 used to query link-level addresses.)
"
* SIOCGIFADDR was not imported in NetBSD (bpf.c 1.36) and OpenBSD.
* Last bits (e.g. manpage claiming SIOCGIFADDR exists) was cleaned
  from NetBSD via kern/21513 5 years ago,
  from OpenBSD via documentation/6352 5 years ago.
2015-01-16 10:09:28 +00:00
jfv
623fce0413 Add needed bits to the Makefile, and the Mt to the emails.
Thanks to Nathan and Baptiste for the corrections :)

MFC after: 1 week
2015-01-15 22:17:11 +00:00
jfv
1442d03741 First draft man pages for ixl and ixlv drivers.
MFC after: 1 week
2015-01-15 21:47:02 +00:00
brueffer
43f1afcde6 Mdoc markup and style cleanup. 2015-01-12 10:40:28 +00:00
glebius
fc986ff561 Remove the support for NGM_CISCO_GET_IPADDR message from ng_iface(4). The
legitimacy of removal is proved by the fact that implementation contained
a critical bug: the response allocated was sizeof(pointer), while should
had been 2*sizeof(struct ng_cisco_ipaddr).  The reason for ng_iface(4) to
support ng_cisco(4) message isn't explained anywhere, and code comes from
original Whistle import.

Sponsored by:	Nginx, Inc.
2015-01-12 09:48:45 +00:00
hiren
8ad8794452 DCTCP (Data Center TCP) implementation.
DCTCP congestion control algorithm aims to maximise throughput and minimise
latency in data center networks by utilising the proportion of Explicit
Congestion Notification (ECN) marked packets received from capable hardware as a
congestion signal.

Highlights:
Implemented as a mod_cc(4) module.
ECN (Explicit congestion notification) processing is done differently from
RFC3168.
Takes one-sided DCTCP into consideration where only one of the sides is using
DCTCP and other is using standard ECN.

IETF draft: http://tools.ietf.org/html/draft-bensley-tcpm-dctcp-00
Thesis report by Midori Kato: https://eggert.org/students/kato-thesis.pdf

Submitted by:	Midori Kato <katoon@sfc.wide.ad.jp> and
		Lars Eggert <lars@netapp.com>
		with help and modifications from
		hiren
Differential Revision:	https://reviews.freebsd.org/D604
Reviewed by:	gnn
2015-01-12 08:33:04 +00:00
imp
20163879d8 Remove old ioctl use and support, once and for all. 2015-01-06 05:28:37 +00:00
brueffer
47d4a0fc0c Add a very basic manpage for the Etherswitch framework.
MFC after:	1 week
2015-01-05 11:40:05 +00:00
kevlo
1bb98ee8d4 Mention axge(4). 2015-01-05 10:10:35 +00:00
scottl
445e8d91ed Garbage collect the asr driver. Hardware for it has not been produced in
roughly 10 years, and the driver has not enjoyed any significant maintenance
since long before that.  Despite well-meaning efforts from a number of
people, myself included, it never made the jump to 64-bit and was relegated
to the back-corners of i386.  Now its frailty is hampering forward progress
with Clang.  Any renewed engineering efforts are of course welcome and can
happen outside of the tree.  No MFC of this is planned.
2015-01-02 05:34:14 +00:00
wblock
80ecdea1cc Remove the svn:executable property from iscsi.4.
PR:		196380
Submitted by:	Trond.Endrestol@ximalas.info
MFC after:	1 week
2014-12-30 21:55:50 +00:00
joel
fb7abcd8fc mdoc: remove EOL whitespace. 2014-12-29 13:50:59 +00:00
sbruno
26a4abd5a2 Correct naming of sysctl pmtud_blackhole_activated_min_mss.
Clarify some statements around PMTUD blackhole detection to make
the behavior more clear in the man page.

Submitted by:	Mikhail <mp@lenta.ru>
MFC after:	2 weeks
2014-12-28 20:56:03 +00:00
joel
7e529110a7 mdoc: improvements to SEE ALSO. 2014-12-27 07:07:37 +00:00
bapt
dad23483ed Sort SEE ALSO 2014-12-26 22:30:18 +00:00
bapt
4581d744fb mdoc fix 2014-12-26 21:45:01 +00:00
bapt
1b2f73b222 mdoc fixes (escape the dot to prevent ... to be considered as a macro) 2014-12-26 21:03:56 +00:00
joel
4e43db302d Minor mdoc fixes. 2014-12-26 09:35:23 +00:00
kevlo
b35fa78035 Mention cc_cdg. 2014-12-26 01:48:44 +00:00
phk
92a41d31d4 Deorbit the IEEE-488/GPIB support. 2014-12-25 20:15:13 +00:00
brueffer
33d4745855 Remove EOL whitespace.
Found with:	mandoc -Tlint
2014-12-21 10:04:26 +00:00
brueffer
b61c6e4e79 Fix various mdoc issues.
Found with:	mandoc -Tlint
2014-12-21 09:53:29 +00:00
bryanv
bd42e1aaf2 Prefix all the vxlan ifconfig commands so they are unique
And rehook ifvxlan back into the build.
2014-12-17 05:36:34 +00:00
jmg
c3ff54cc39 Add some new modes to OpenCrypto. These modes are AES-ICM (can be used
for counter mode), and AES-GCM.  Both of these modes have been added to
the aesni module.

Included is a set of tests to validate that the software and aesni
module calculate the correct values.  These use the NIST KAT test
vectors.  To run the test, you will need to install a soon to be
committed port, nist-kat that will install the vectors.  Using a port
is necessary as the test vectors are around 25MB.

All the man pages were updated.  I have added a new man page, crypto.7,
which includes a description of how to use each mode.  All the new modes
and some other AES modes are present.  It would be good for someone
else to go through and document the other modes.

A new ioctl was added to support AEAD modes which AES-GCM is one of them.
Without this ioctl, it is not possible to test AEAD modes from userland.

Add a timing safe bcmp for use to compare MACs.  Previously we were using
bcmp which could leak timing info and result in the ability to forge
messages.

Add a minor optimization to the aesni module so that single segment
mbufs don't get copied and instead are updated in place.  The aesni
module needs to be updated to support blocked IO so segmented mbufs
don't have to be copied.

We require that the IV be specified for all calls for both GCM and ICM.
This is to ensure proper use of these functions.

Obtained from:	p4: //depot/projects/opencrypto
Relnotes:	yes
Sponsored by:	FreeBSD Foundation
Sponsored by:	NetGate
2014-12-12 19:56:36 +00:00
mp
d51e18675d Document support for Netgear WG111v1 (rev2) 2014-12-08 04:06:03 +00:00
mav
645c5190d6 Document ISP 2532 support and hint.isp.0.vports tunable.
MFC after:	1 week
2014-12-01 17:51:16 +00:00
peterj
058535ab0f Cross reference tap(4) and tun(4) and include a short explanation as
to how they differ.  This will assist users in selecting which interface
is more appropriate for their purposes.

Approved by:	grog (co-mentor)
MFC after:	2 week
2014-11-30 04:50:13 +00:00
joel
121294362f Misc mdoc fixes:
- Remove superfluous paragraph macros.
- Remove/fix empty or incorrect macros.
- Sort sections into conventional order.
- Terminate quoted strings properly.
- Remove EOL whitespace.
2014-11-23 21:00:00 +00:00
ian
019421f910 Document the recent enhancements for configuring bus speed in iicbus(4).
Differential Revision:        https://reviews.freebsd.org/D1182
PR:		195009
2014-11-21 21:30:08 +00:00
emaste
87fb414438 Spell out "Windows" - no need to censor it in a man page 2014-11-20 14:18:07 +00:00
kevlo
20ccdec729 Add Trendnet TEW-646UBH.
Submitted by:	bolshakov_1 at yahoo dot com
2014-11-19 05:38:45 +00:00
mav
e45f7634f9 Remove mostly obsolete hint to disable LAPIC timers.
It is partially covered by new code and partially by new CPUs.

PR:		195016
Submitted by:	tobias.rehbein@web.de
MFC after:	1 week
2014-11-14 22:01:14 +00:00
trasz
7c55576f39 Fix mdoc warning.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-11-14 11:47:27 +00:00
trasz
13a1d2d1f6 Fix mdoc warning by removing empty lines.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-11-14 08:58:55 +00:00
jhb
22cc2a08ce Drop mention of ISA cards. Note that I have no idea what to cull from the
supported hardware list.  Judging by the PCI driver attachment, dpt_pci.c
only supports a single adapter rather than the various PCI adapters listed.
The list of EISA adapters listed somewhat overlaps with the device IDs in
dpt_eisa.c.  It's not clear which devices are ISA-only devices.
2014-11-13 20:09:47 +00:00
melifaro
12580bcaa8 Kill custom in_matroute() radix mathing function removing one rte mutex lock.
Initially in_matrote() in_clsroute() in their current state was introduced by
r4105 20 years ago. Instead of deleting inactive routes immediately, we kept them
in route table, setting RTPRF_OURS flag and some expire time. After that, either
GC came or RTPRF_OURS got removed on first-packet. It was a good solution
in that days (and probably another decade after that) to keep TCP metrics.
However, after moving metrics to TCP hostcache in r122922, most of in_rmx
functionality became unused. It might had been used for flushing icmp-originated
routes before rte mutexes/refcounting, but I'm not sure about that.

So it looks like this is nearly impossible to make GC do its work nowadays:

in_rtkill() ignores non-RTPRF_OURS routes.
route can only become RTPRF_OURS after dropping last reference via rtfree()
which calls in_clsroute(), which, it turn, ignores UP and non-RTF_DYNAMIC routes.

Dynamic routes can still be installed via received redirect, but they
have default lifetime (no specific rt_expire) and no one has another trie walker
to call RTFREE() on them.

So, the changelist:
* remove custom rnh_match / rnh_close matching function.
* remove all GC functions
* partially revert r256695 (proto3 is no more used inside kernel,
  it is not possible to use rt_expire from user point of view, proto3 support
  is not complete)
* Finish r241884 (similar to this commit) and remove remaining IPv6 parts

MFC after:	1 month
2014-11-11 02:52:40 +00:00
melifaro
b5d711d3a6 Renove faith(4) and faithd(8) from base. It looks like industry
have chosen different (and more traditional) stateless/statuful
NAT64 as translation mechanism. Last non-trivial commits to both
faith(4) and faithd(8) happened more than 12 years ago, so I assume
it is time to drop RFC3142 in FreeBSD.

No objections from:	net@
2014-11-09 21:33:01 +00:00
ae
7144dc8bc2 Overhaul if_gre(4).
Split it into two modules: if_gre(4) for GRE encapsulation and
if_me(4) for minimal encapsulation within IP.

gre(4) changes:
* convert to if_transmit;
* rework locking: protect access to softc with rmlock,
  protect from concurrent ioctls with sx lock;
* correct interface accounting for outgoing datagramms (count only payload size);
* implement generic support for using IPv6 as delivery header;
* make implementation conform to the RFC 2784 and partially to RFC 2890;
* add support for GRE checksums - calculate for outgoing datagramms and check
  for inconming datagramms;
* add support for sending sequence number in GRE header;
* remove support of cached routes. This fixes problem, when gre(4) doesn't
  work at system startup. But this also removes support for having tunnels with
  the same addresses for inner and outer header.
* deprecate support for various GREXXX ioctls, that doesn't used in FreeBSD.
  Use our standard ioctls for tunnels.

me(4):
* implementation conform to RFC 2004;
* use if_transmit;
* use the same locking model as gre(4);

PR:		164475
Differential Revision:	D1023
No objections from:	net@
Relnotes:	yes
Sponsored by:	Yandex LLC
2014-11-07 19:13:19 +00:00
jmg
084b35d30b convert .Nm to proper .Xr's... 2014-11-04 08:22:08 +00:00
dumbbell
8aba5b5e96 vt(4): Start new sentences on their own lines
Submitted by:	brueffer@
MFC after:	1 week
2014-11-03 16:01:44 +00:00
dumbbell
c66781c20d vt(4): Improve the description of kern.vt.fb.modes.$connector
Differential Revision:	https://reviews.freebsd.org/D1098
Submitted by:	emaste@
MFC after:	1 week
2014-11-03 15:25:48 +00:00
dumbbell
040eeec269 vt(4): Document kern.vt.fb.default_mode and kern.vt.fb.modes.*
Those tunables are used to set a specific mode in vt(4) instead of using
the default mode.

Differential Revision:	https://reviews.freebsd.org/D1098
Reviewed by:	ak@, emaste@, kwm@
MFC after:	1 week
2014-11-03 14:57:41 +00:00
trasz
6abe4c9596 Mention VAAI and ODX in ctl(4).
Reviewed by:	mav@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-10-26 13:30:53 +00:00
kevlo
be49686e26 Add D-Link DWA-123 rev D1 and Elecom WDC-150SU2M. 2014-10-24 15:36:30 +00:00