Commit Graph

245329 Commits

Author SHA1 Message Date
Gleb Smirnoff
745894d7e5 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:38 +00:00
Gleb Smirnoff
57cc02c62e Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:32 +00:00
Gleb Smirnoff
36581f8254 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:28 +00:00
Gleb Smirnoff
c42980268b Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:24 +00:00
Gleb Smirnoff
3e346c0a6c Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:19 +00:00
Gleb Smirnoff
51e8082055 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:15 +00:00
Gleb Smirnoff
02cc07d105 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:11 +00:00
Gleb Smirnoff
8bd97b0772 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:08 +00:00
Gleb Smirnoff
95f4453e15 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:02 +00:00
Gleb Smirnoff
bdf4b0ae33 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:10:58 +00:00
Gleb Smirnoff
dbf9bf044c Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:10:52 +00:00
Gleb Smirnoff
5b7a9eab16 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:10:46 +00:00
Gleb Smirnoff
380a564dc2 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:08:25 +00:00
Gleb Smirnoff
5d0c611c51 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:08:20 +00:00
Gleb Smirnoff
0a3c7ec0f4 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:08:16 +00:00
Gleb Smirnoff
44a30c6224 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:08:12 +00:00
Gleb Smirnoff
0407b8bf7a Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:08:03 +00:00
Gleb Smirnoff
e9c5104f43 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:56 +00:00
Gleb Smirnoff
f2921d4c06 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:53 +00:00
Gleb Smirnoff
0ae47039de Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:49 +00:00
Gleb Smirnoff
33253a3794 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:44 +00:00
Gleb Smirnoff
9c0d672823 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:40 +00:00
Gleb Smirnoff
a51cd4c558 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:35 +00:00
Gleb Smirnoff
307b050d3b Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:32 +00:00
Gleb Smirnoff
9bf5c8b430 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:28 +00:00
Gleb Smirnoff
2db0e8ff39 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:24 +00:00
Gleb Smirnoff
ad4cb014c0 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:19 +00:00
Gleb Smirnoff
53dc8c2339 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:15 +00:00
Gleb Smirnoff
ba583cfed2 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:11 +00:00
Gleb Smirnoff
208af059dd Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:07 +00:00
Gleb Smirnoff
69d3f28aa4 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:02 +00:00
Gleb Smirnoff
99e76377d2 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:57 +00:00
Gleb Smirnoff
1d15d9f065 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:53 +00:00
Gleb Smirnoff
349ecfc38a Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:31 +00:00
Gleb Smirnoff
0322ca23bc Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:26 +00:00
Gleb Smirnoff
f0bcd699b8 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:23 +00:00
Gleb Smirnoff
15fd62df7e Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:19 +00:00
Gleb Smirnoff
6545173041 Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:15 +00:00
Gleb Smirnoff
16650a016c Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:09 +00:00
Gleb Smirnoff
eed57e321a Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:06 +00:00
Gleb Smirnoff
57d361630d Convert to if_foreach_llmaddr() KPI.
This driver seems to have a bug.  The bug was carefully saved during
conversion.  In the al_eth_mac_table_unicast_add() the argument 'addr',
which is the actual address is unused.  So, the function is called as
many times as we have addresses, but with the exactly same argument
list.  This doesn't make any sense, but was preserved.
2019-10-21 18:05:43 +00:00
Gleb Smirnoff
8f49db674c Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:00:17 +00:00
Gleb Smirnoff
f1c5eb0d97 Convert to if_foreach_llmaddr() KPI. 2019-10-21 17:59:53 +00:00
Gleb Smirnoff
d6b5965b77 Convert to if_foreach_llmaddr() KPI. 2019-10-21 17:59:16 +00:00
Gleb Smirnoff
7dce56596f Convert to if_foreach_llmaddr() KPI. 2019-10-21 17:59:02 +00:00
Kyle Evans
3d5013337a tuntap(4): restrict scope of net.link.tap.user_open slightly
net.link.tap.user_open has historically allowed non-root users to do devfs
cloning and open /dev/tap* nodes based on permissions. Loosen this up to
make it only allow users to do devfs cloning -- we no longer check it in
tunopen.

This allows tap devices to be created that can actually be opened by a user,
rather than swiftly restricting them to root because the magic sysctl has
not been set.

The sysctl has not yet been completely deprecated, because more thought is
needed for how to handle the devfs cloning case. There is not an easy
suitable replacement for the sysctl there, and more care needs to be placed
in determining whether that's OK or not.

PR:		200185
2019-10-21 14:38:11 +00:00
Andriy Gapon
3ad1ce46d3 debug,kassert.warnings is a statistic, not a tunable
MFC after:	1 week
2019-10-21 12:21:56 +00:00
Leandro Lupori
95ca4720f0 [PPC64] Add minidump support to PowerNV
Implementation of PowerNV specific minidump code.

Reviewed by:	jhibbits
Differential Revision:	https://reviews.freebsd.org/D21643
2019-10-21 11:56:57 +00:00
Bjoern A. Zeeb
f74e6e494f frag6: import a set of test cases
In order to ensure that changing the frag6 code does not change behaviour
or break code a set of test cases were implemented.

Like some other test cases these use Scapy to generate packets and possibly
wait for expected answers.  In most cases we do check the global and
per interface (netstat) statistics output using the libxo output and grep
to validate fields and numbers.  This is a bit hackish but we currently have
no better way to match a selected number of stats only (we have to ignore
some of the ND6 variables; otherwise we could use the entire list).

Test cases include atomic fragments, single fragments, multi-fragments,
and try to cover most error cases in the code currently.
In addition vnet teardown is tested to not panic.

A separate set (not in-tree currently) of probes were used in order to
make sure that the test cases actually test what they should.

The "sniffer" code was copied and adjusted from the netpfil version
as we sometimes will not get packets or have longer timeouts to deal with.

Sponsored by:	Netflix
2019-10-21 09:33:45 +00:00
Bjoern A. Zeeb
67a10c4644 frag6: fix vnet teardown leak
When shutting down a VNET we did not cleanup the fragmentation hashes.
This has multiple problems: (1) leak memory but also (2) leak on the
global counters, which might eventually lead to a problem on a system
starting and stopping a lot of vnets and dealing with a lot of IPv6
fragments that the counters/limits would be exhausted and processing
would no longer take place.

Unfortunately we do not have a useable variable to indicate when
per-VNET initialization of frag6 has happened (or when destroy happened)
so introduce a boolean to flag this. This is needed here as well as
it was in r353635 for ip_reass.c in order to avoid tripping over the
already destroyed locks if interfaces go away after the frag6 destroy.

While splitting things up convert the TRY_LOCK to a LOCK operation in
now frag6_drain_one().  The try-lock was derived from a manual hand-rolled
implementation and carried forward all the time.  We no longer can afford
not to get the lock as that would mean we would continue to leak memory.

Assert that all the buckets are empty before destroying to lock to
ensure long-term stability of a clean shutdown.

Reported by:	hselasky
Reviewed by:	hselasky
MFC after:	3 weeks
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D22054
2019-10-21 08:48:47 +00:00