History log of /freebsd/sys/netinet/in_rmx.c (Results 26 – 50 of 1026)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: vendor/libc++/libc++-release_38-r258549, vendor/clang/clang-release_38-r258549, vendor/llvm/llvm-release_38-r258549, vendor/ntp/4.2.8p6, vendor/bind9/9.9.8-P3, vendor/openssh/7.1p2, vendor/lldb/lldb-release_38-r257836, vendor/libc++/libc++-release_38-r257836, vendor/clang/clang-release_38-r257836, vendor/llvm/llvm-release_38-r257836, vendor/mandoc/20160116
# 10e0e235 14-Jan-2016 Alexander V. Chernikov <melifaro@FreeBSD.org>

Remove now-unused wrappers for various routing functions.


Revision tags: vendor/lldb/lldb-trunk-r257626, vendor/lld/lld-trunk-r257626, vendor/libc++/r257626, vendor/compiler-rt/compiler-rt-trunk-r257626, vendor/clang/clang-trunk-r257626, vendor/llvm/llvm-trunk-r257626, vendor/acpica/20160108, vendor/ntp/4.2.8p5, vendor/lldb/lldb-trunk-r256945, vendor/lld/lld-trunk-r256945, vendor/libc++/r256945, vendor/compiler-rt/compiler-rt-trunk-r256945, vendor/clang/clang-trunk-r256945, vendor/llvm/llvm-trunk-r256945, vendor/llvm-libunwind/libunwind-r256779, vendor/less/v481, vendor/lldb/lldb-trunk-r256633, vendor/llvm/llvm-trunk-r256633, vendor/lld/lld-trunk-r256633, vendor/libc++/r256633, vendor/compiler-rt/compiler-rt-trunk-r256633, vendor/clang/clang-trunk-r256633, vendor/clang/clang-release_371-r255217, vendor/llvm/llvm-release_371-r255217, vendor/NetBSD/bmake/20151220
# 0a03cf8c 22-Dec-2015 Bjoern A. Zeeb <bz@FreeBSD.org>

Since r256624 we've been leaking routing table allocations
on vnet enabled jail shutdown. Call the provided cleanup
routines for IP versions 4 and 6 to plug these leaks.

Sponsored by: The FreeBSD F

Since r256624 we've been leaking routing table allocations
on vnet enabled jail shutdown. Call the provided cleanup
routines for IP versions 4 and 6 to plug these leaks.

Sponsored by: The FreeBSD Foundation
MFC atfer: 2 weeks
Reviewed by: gnn
Differential Revision: https://reviews.freebsd.org/D4530

show more ...


Revision tags: vendor/acpica/20151218, vendor/bind9/9.9.8-P2, vendor/unbound/1.5.7, vendor/unbound/1.5.6, vendor/elftoolchain/elftoolchain-r3272, vendor/openbsm/1.2-ALPHA-4, vendor/NetBSD/bmake/20151201, vendor/openssl/0.9.8zh, vendor/openssl/1.0.1q, vendor/openssl/1.0.2e
# c00c4e46 30-Nov-2015 Alexander V. Chernikov <melifaro@FreeBSD.org>

Remove in_setifarnh definition.


# e8b0643e 30-Nov-2015 Alexander V. Chernikov <melifaro@FreeBSD.org>

Add new rt_foreach_fib_walk_del() function for deleting route entries
by filter function instead of picking into routing table details in
each consumer.
Remove now-unused rt_expunge() (eliminatin

Add new rt_foreach_fib_walk_del() function for deleting route entries
by filter function instead of picking into routing table details in
each consumer.
Remove now-unused rt_expunge() (eliminating last external RTF_RNH_LOCKED
user).
This simplifies future nexthops/mulitipath changes and rtrequest1_fib()
locking refactoring.

Actual changes:
Add "rt_chain" field to permit rte grouping while doing batched delete
from routing table (thus growing rte 200->208 on amd64).
Add "rti_filter" / "rti_filterdata" / "rti_spare" fields to rt_addrinfo
to pass filter function to various routing subsystems in standard way.
Convert all rt_expunge() customers to new rt_addinfo-based api and eliminate
rt_expunge().

show more ...


Revision tags: vendor/acpica/20151124, vendor/xz/5.2.2, vendor/tzdata/tzdata2015g, vendor/libucl/20151027, vendor/openssl/1.0.2d, vendor/NetBSD/bmake/20151020, vendor/ntp/4.2.8p4
# f221bcaa 17-Oct-2015 Alexander V. Chernikov <melifaro@FreeBSD.org>

Remove several compat functions from pre-fib era.


Revision tags: vendor/wpa/2.5, vendor/subversion/subversion-1.9.2, vendor/dma/0.10, vendor/elftoolchain/elftoolchain-r3250, vendor/unbound/1.5.5, vendor/bind9/9.9.8, vendor/acpica/20150930, vendor/netcat/5.8, vendor/llvm-libunwind/libunwind-r246528, vendor/file/5.25, vendor/unbound/1.5.4, zfs-0.6.5, vendor/libc++/libc++-release_370-r246257, vendor/compiler-rt/compiler-rt-release_370-r246257, vendor/lldb/lldb-release_370-r246257, vendor/clang/clang-release_370-r246257, vendor/llvm/llvm-release_370-r246257, vendor/lldb/lldb-trunk-r242221, vendor/file/5.24, vendor/openssh/7.1p1, vendor/openssh/7.0p1, vendor/acpica/20150818, vendor/pciids/pciids-20150815, vendor/tzdata/tzdata2015f, release/10.2.0, upstream/10.2.0
# 2caee4be 10-Aug-2015 Alexander V. Chernikov <melifaro@FreeBSD.org>

Rename rt_foreach_fib() to rt_foreach_fib_walk().

Suggested by: julian


Revision tags: vendor/sqlite3/sqlite-3081101, vendor/subversion/subversion-1.8.14, vendor/serf/serf-1.3.8, vendor/apr/apr-1.5.2
# d2b5ade3 08-Aug-2015 Marius Strobl <marius@FreeBSD.org>

Fix compilation after r286458.


# 4bdf0b6a 08-Aug-2015 Alexander V. Chernikov <melifaro@FreeBSD.org>

MFP r274295:

* Move interface route cleanup to route.c:rt_flushifroutes()
* Convert most of "for (fibnum = 0; fibnum < rt_numfibs; fibnum++)" users
to use new rt_foreach_fib() instead of hand-roll

MFP r274295:

* Move interface route cleanup to route.c:rt_flushifroutes()
* Convert most of "for (fibnum = 0; fibnum < rt_numfibs; fibnum++)" users
to use new rt_foreach_fib() instead of hand-rolling cycles.

show more ...


Revision tags: vendor/clang/clang-trunk-r242221, vendor/llvm/llvm-trunk-r242221, vendor/bind9/9.9.7-P2, vendor/acpica/20150717, vendor/openssl/1.0.1p, vendor/sendmail/8.15.2, vendor/tcpdump/4.7.4, vendor/clang/clang-trunk-r241361, vendor/llvm/llvm-trunk-r241361, vendor/lldb/lldb-r241361, vendor/openssh/6.9p1, vendor/openssh/6.8p1, vendor/ntp/4.2.8p3, vendor/clang/clang-trunk-r240225, vendor/llvm/llvm-trunk-r240225, vendor/acpica/20150619, vendor/libcxxrt/2015-06-18-e64e93fe5bba67a6d52cbe5a97f8770c054bfa65, vendor/acpica/20150616, vendor/tzdata/tzdata2015e, vendor/openssl/1.0.1o, vendor/openssl/0.9.8zg, vendor/openssl/1.0.1n, vendor/NetBSD/bmake/20150606, vendor/file/5.23, vendor/clang/clang-trunk-r239412, vendor/llvm/llvm-trunk-r239412, vendor/clang/clang-trunk-r238337, vendor/llvm/llvm-trunk-r238337, vendor/elftoolchain/elftoolchain-r3223, vendor/clang/clang-3.6.x, vendor/clang/clang-release_361-r237755, vendor/llvm/llvm-3.6.x, vendor/llvm/llvm-release_361-r237755, vendor/acpica/20150515, vendor/tzdata/tzdata2015d, vendor/tzdata/tzdata2015c, vendor/elftoolchain/elftoolchain-r3197, vendor/ficl/4.1.0, vendor/ficl/3.0.3, vendor/NetBSD/bmake/20150505, vendor/netcat/5.7, vendor/openresolv/3.7.0, vendor/sqlite3/sqlite-3080900, vendor/unbound/1.5.3, vendor/unbound/1.5.2, vendor/NetBSD/bmake/20150418, vendor/wpa/2.4, vendor/acpica/20150410, vendor/nvi/2.1.3, vendor/ntp/4.2.8p2, vendor/acpica/20150408, zfs-0.6.4, vendor/xz/5.2.1, vendor/bind9/9.9.7, vendor/elftoolchain/elftoolchain-r3179, vendor/lld/lld-trunk-r233088, vendor/tzdata/tzdata2015b, vendor/lua/5.3.0, vendor/openssl/0.9.8zf, vendor/openssl/1.0.1m, vendor/mandoc/1.13.3, vendor/tzdata/tzdata2015a, vendor/libucl/20150302, vendor/mandoc/20150302, vendor/device-tree/ian-c8c1b3a7, vendor/clang/clang-release_360-r230434, vendor/llvm/llvm-release_360-r230434, vendor/compiler-rt/compiler-rt-r230183, vendor/clang/clang-release_360-r229772, vendor/llvm/llvm-release_360-r229772, vendor/elftoolchain/elftoolchain-r3163, vendor/clang/clang-release_360-r229040, vendor/llvm/llvm-release_360-r229040, vendor/compiler-rt/compiler-rt-r228651, vendor/lldb/lldb-r228549, vendor/lldb/lldb-r225923, vendor/xz/5.2.0, vendor/ntp/4.2.8p1, vendor/acpica/20150204, vendor/libcxxrt/2014-12-31-1cb607e89f6135bbc10f3d3b6fba1f983e258dcc, vendor/clang/clang-release_360-r227651, vendor/llvm/llvm-release_360-r227651, vendor/clang/clang-release_360-r226102, vendor/llvm/llvm-release_360-r226102, vendor/openssl/0.9.8ze, vendor/openssl/1.0.1l, vendor/clang/clang-release_351-r225668, vendor/llvm/llvm-release_351-r225668, vendor/NetBSD/libedit/2014-01-07, vendor/openssl/0.9.8zd, vendor/openssl/1.0.1k, vendor/libc++/r224926, vendor/compiler-rt/compiler-rt-r224034, vendor/tcpdump/4.6.2, vendor/libpcap/1.6.2, vendor/openssh/6.7p1, vendor/file/5.22, vendor/unbound/1.5.1, vendor/unbound/1.5.0, vendor/elftoolchain/elftoolchain-r3136, vendor/libcxxrt/2014-12-06-00bc29eb6513624824a6d7db2ebc768a4216a604, vendor/mandoc/1.13.2, vendor/elftoolchain/elftoolchain-r3130, vendor/ntp/4.2.8, vendor/bind9/9.9.6-P1, vendor/sendmail/8.15.1, vendor/file/5.21, vendor/tnftp/20141104, vendor/tnftp/20141031, vendor/mandoc/20141201
# 5d14e4cd 29-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Provide rte_<get|set> methods to access rtentry for external consumers.


Revision tags: vendor/libucl/20141129, vendor/lldb/lldb-r216948, vendor/clang/clang-release_350-r216957, vendor/llvm/llvm-release_350-r216957, vendor/sqlite3/sqlite-3080702, vendor/mandoc/1.13.1, vendor/tzdata/tzdata2014j, release/10.1.0, upstream/10.1.0
# 670e8b3b 11-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

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 in

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

show more ...


Revision tags: vendor/acpica/20141107
# f7bab8d0 10-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Switch route radix to dual-lock model:
use rmlock for data patch access, and config rwlock
for conrol plane processing. Route table changes require
bock locks held.


# 55e5eda6 09-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Separate radix and routing: use different structures for route and
for other customers.

Introduce new 'struct rib_head' for routing purposes and make
all routing api use it.


# 1398ffe5 08-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Convert most of "for (fibnum = 0; fibnum < rt_numfibs; fibnum++)" users
to use new rt_foreach_fib() instead of hand-rolling cycles.


# 2c498ee6 08-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Finish r274290: arg.nextstop / arg.updating are not used anymore.


# 9c83df7d 08-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Retire rtq_timeout altering code. This code was initially introduced
by r6399 to enhance expiring large number of host cache routes.
Since we don't have route cloning anymore and no one altered
V_rtq

Retire rtq_timeout altering code. This code was initially introduced
by r6399 to enhance expiring large number of host cache routes.
Since we don't have route cloning anymore and no one altered
V_rtq_toomany default (which is 128) in nearly 20 years, I assume
this can be safely deleted.

show more ...


# 22b08fd8 07-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Split radix implementation and system route table structure:
use new 'struct radix_head' for radix.


# 6df8a710 07-Nov-2014 Gleb Smirnoff <glebius@FreeBSD.org>

Remove SYSCTL_VNET_* macros, and simply put CTLFLAG_VNET where needed.

Sponsored by: Nginx, Inc.


# 930d2a42 07-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Remove legacy inet lookup functions.


Revision tags: vendor/compiler-rt/compiler-rt-r197381
# 1a75e3b2 06-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Make checks for rt_mtu generic:

Some virtual if drivers has (ab)used ifa ifa_rtrequest hook to enforce
route MTU to be not bigger that interface MTU. While ifa_rtrequest hooking
might be an option i

Make checks for rt_mtu generic:

Some virtual if drivers has (ab)used ifa ifa_rtrequest hook to enforce
route MTU to be not bigger that interface MTU. While ifa_rtrequest hooking
might be an option in some situation, it is not feasible to do MTU checks
there: generic (or per-domain) routing code is perfectly capable of doing
this.

We currrently have 3 places where MTU is altered:

1) route addition.
In this case domain overrides radix _addroute callback (in[6]_addroute)
and all necessary checks/fixes are/can be done there.

2) route change (especially, GW change).
In this case, there are no explicit per-domain calls, but one can
override rte by setting ifa_rtrequest hook to domain handler
(inet6 does this).

3) ifconfig ifaceX mtu YYYY
In this case, we have no callbacks, but ip[6]_output performes runtime
checks and decreases rt_mtu if necessary.

Generally, the goals are to be able to handle all MTU changes in
control plane, not in runtime part, and properly deal with increased
interface MTU.

This commit changes the following:
* removes hooks setting MTU from drivers side
* adds proper per-doman MTU checks for case 1)
* adds generic MTU check for case 2)

* The latter is done by using new dom_ifmtu callback since
if_mtu denotes L3 interface MTU, e.g. maximum trasmitted _packet_ size.
However, IPv6 mtu might be different from if_mtu one (e.g. default 1280)
for some cases, so we need an abstract way to know maximum MTU size
for given interface and domain.
* moves rt_setmetrics() before MTU/ifa_rtrequest hooks since it copies
user-supplied data which must be checked.
* removes RT_LOCK_ASSERT() from other ifa_rtrequest hooks to be able to
use this functions on new non-inserted rte.

More changes will follow soon.

MFC after: 1 month
Sponsored by: Yandex LLC

show more ...


# 9f25cbe4 05-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Remove old hack abusing domattach from NFS code.

According to IANA RPC uaddr registry, there are no AFs
except IPv4 and IPv6, so it's not worth being too abstract here.

Remove ne_rtable[AF_MAX+1] a

Remove old hack abusing domattach from NFS code.

According to IANA RPC uaddr registry, there are no AFs
except IPv4 and IPv6, so it's not worth being too abstract here.

Remove ne_rtable[AF_MAX+1] and use explicit per-AF radix tries.
Use own initialization without relying on domattach code.

While I admit that this was one of the rare places in kernel
networking code which really was capable of doing multi-AF
without any AF-depended code, it is not possible anymore to
rely on dom* code.

While here, change terrifying "Invalid radix node head, rn:" message,
to different non-understandable "netcred already exists for given addr/mask",
but less terrifying. Since we know that rn_addaddr() returns NULL if
the same record already exists, we should provide more friendly error.

MFC after: 1 month

show more ...


# 8c3cfe0b 04-Nov-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Hide 'struct rtentry' and all its macro inside new header:
net/route_internal.h
The goal is to make its opaque for all code except route/rtsock and
proto domain _rmx.


Revision tags: vendor/atf/atf-0.21, vendor/NetBSD/mtree/20141028, vendor/netcat/5.6, vendor/tzdata/tzdata2014i, vendor/xz/5.0.7, vendor/openssl/0.9.8zc, vendor/openssl/1.0.1j, vendor/byacc/20141006, vendor/byacc/20141005
# 31f0d081 01-Oct-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Remove lock init from radix.c.
Radix has never managed its locking itself.
The only consumer using radix with embeded rwlock
is system routing table. Move per-AF lock inits there.


Revision tags: vendor/NetBSD/tests/09.30.2014_20.45, vendor/acpica/20140926, vendor/apr-util/apr-util-1.5.4, vendor/openpam/OUROUPARIA, vendor/acpica/20140828, vendor/pjdfstest/abf03c3a47745d4521b0e4aa141317553ca48f91, vendor/NetBSD/libc-vis/20140908, vendor/device-tree/ianc-b78b6b80, vendor/tzdata/tzdata2014f, vendor/sqlite3/sqlite-3080500, vendor/serf/serf-1.3.7, vendor/subversion/subversion-1.8.10, vendor/resolver/9.5.0, vendor/openssl/0.9.8zb, vendor/openssl/1.0.1i, vendor/serf/serf-1.3.6, vendor/libucl/20140718, vendor/libucl/20140716, vendor/byacc/20140715, release/9.3.0, vendor/NetBSD/bmake/20140620, vendor/acpica/20140627, vendor/file/5.19, vendor/tzdata/tzdata2014e, zfs-0.6.3, vendor/openssl/0.9.8za, vendor/openssl/1.0.1h, vendor/apr/apr-1.5.1, vendor/subversion/subversion-1.8.9, vendor/serf/serf-1.3.5, vendor/byacc/20140422, vendor/libucl/20140514, vendor/sendmail/8.14.9, vendor/unbound/1.4.22, vendor/unbound/1.4.21, vendor/ldns/1.6.17, vendor/tzdata/tzdata2014c, vendor/clang/clang-release_34-r208032, vendor/llvm/llvm-release_34-r208032
# a32603a5 03-May-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Fix panic on IPv4 address removal introduced in r265279.

Reported by: Trond Endrestøl
MFC with: r265279


# b980262e 03-May-2014 Alexander V. Chernikov <melifaro@FreeBSD.org>

Pass radix head ptr along with rte to rtexpunge().
Rename rtexpunge to rt_expunge().


Revision tags: vendor/acpica/20140424, vendor/byacc/20140409, vendor/libucl/0.4.0, vendor/netcat/5.5, vendor/openssl/1.0.1g, vendor/tzdata/tzdata2014b, vendor/acpica/20140325, vendor/libucl/20140321, vendor/openssh/6.6p1, vendor/tzdata/tzdata2014a, vendor/libucl/20140302
# e3a7aa6f 05-Mar-2014 Gleb Smirnoff <glebius@FreeBSD.org>

- Remove rt_metrics_lite and simply put its members into rtentry.
- Use counter(9) for rt_pksent (former rt_rmx.rmx_pksent). This
removes another cache trashing ++ from packet forwarding path.
- Cr

- Remove rt_metrics_lite and simply put its members into rtentry.
- Use counter(9) for rt_pksent (former rt_rmx.rmx_pksent). This
removes another cache trashing ++ from packet forwarding path.
- Create zini/fini methods for the rtentry UMA zone. Via initialize
mutex and counter in them.
- Fix reporting of rmx_pksent to routing socket.
- Fix netstat(1) to report "Use" both in kvm(3) and sysctl(3) mode.

The change is mostly targeted for stable/10 merge. For head,
rt_pksent is expected to just disappear.

Discussed with: melifaro
Sponsored by: Netflix
Sponsored by: Nginx, Inc.

show more ...


12345678910>>...42