net: Facility to report route quality of connected sockets
This patch add the SO_CNX_ADVICE socket option (setsockopt only). The purpose is to allow an application to give feedback to the kernel about the quality of the network path for a connected socket. The value argument indicates the type of quality report. For this initial patch the only supported advice is a value of 1 which indicates "bad path, please reroute"-- the action taken by the kernel is to call dst_negative_advice which will attempt to choose a different ECMP route, reset the TX hash for flow label and UDP source port in encapsulation, etc. This facility should be useful for connected UDP sockets where only the application can provide any feedback about path quality. It could also be useful for TCP applications that have additional knowledge about the path outside of the normal TCP control loop. Signed-off-by:Tom Herbert <tom@herbertland.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
mentioned in commit 7dbc4cec
-
mentioned in commit eb07d63b
-
mentioned in commit 20bd277f
-
mentioned in commit 455c4dc2
-
mentioned in commit 77b12937
-
mentioned in commit b49996c2
-
mentioned in commit 9b0dadc8
-
mentioned in commit 9e3f84a8
-
mentioned in commit 29c88853
-
mentioned in commit 3856ad0c
-
mentioned in commit 5055db81
-
mentioned in commit e1551735
-
mentioned in commit bd2bcb81
-
mentioned in commit b8932254
-
mentioned in commit aa80ae5b
-
mentioned in commit f7af961c
-
mentioned in commit 5046404a
-
mentioned in commit fe43a8bd
-
mentioned in commit 8d07c061
-
mentioned in commit bff4c6ba
-
mentioned in commit f77790c7
-
mentioned in commit cdf8911e
-
mentioned in commit 6b99e20d
-
mentioned in commit 98e631b4
-
mentioned in commit 6d1a46e5
-
mentioned in commit e9bbab26
-
mentioned in commit 3dfa5a4d
-
mentioned in commit e026cce9
-
mentioned in commit bc403b99
-
mentioned in commit 4af855de
-
mentioned in commit e4f2809d
-
mentioned in commit 23168368
-
mentioned in commit 4e64dace
-
mentioned in commit b0f1ac27
-
mentioned in commit b7cef2ac
-
mentioned in commit 60aab548
-
mentioned in commit e673b01b
-
mentioned in commit a006016c
-
mentioned in commit c3a24c7a
-
mentioned in commit e55ab40d
-
mentioned in commit a75c8f9b
-
mentioned in commit 872ec621
-
mentioned in commit a0d26614