forked from ~ljy/RK356X_SDK_RELEASE

hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/net/Kconfig
....@@ -1,3 +1,4 @@
1
+# SPDX-License-Identifier: GPL-2.0-only
12 #
23 # Network configuration
34 #
....@@ -7,7 +8,7 @@
78 select NLATTR
89 select GENERIC_NET_UTILS
910 select BPF
10
- ---help---
11
+ help
1112 Unless you really know what you are doing, you should say Y here.
1213 The reason is that some programs need kernel networking support even
1314 when running on a stand-alone machine that isn't connected to any
....@@ -51,6 +52,12 @@
5152 config NET_EGRESS
5253 bool
5354
55
+config NET_REDIRECT
56
+ bool
57
+
58
+config SKB_EXTENSIONS
59
+ bool
60
+
5461 menu "Networking options"
5562
5663 source "net/packet/Kconfig"
....@@ -63,9 +70,7 @@
6370
6471 config INET
6572 bool "TCP/IP networking"
66
- select CRYPTO
67
- select CRYPTO_AES
68
- ---help---
73
+ help
6974 These are the protocols used on the Internet and on most local
7075 Ethernets. It is highly recommended to say Y here (this will enlarge
7176 your kernel by about 400 KB), since some programs (e.g. the X window
....@@ -81,7 +86,7 @@
8186 "Sysctl support" below, you can change various aspects of the
8287 behavior of the TCP/IP code by writing to the (virtual) files in
8388 /proc/sys/net/ipv4/*; the options are explained in the file
84
- <file:Documentation/networking/ip-sysctl.txt>.
89
+ <file:Documentation/networking/ip-sysctl.rst>.
8590
8691 Short answer: say Y.
8792
....@@ -89,6 +94,7 @@
8994 source "net/ipv4/Kconfig"
9095 source "net/ipv6/Kconfig"
9196 source "net/netlabel/Kconfig"
97
+source "net/mptcp/Kconfig"
9298
9399 endif # if INET
94100
....@@ -106,15 +112,16 @@
106112 bool "Timestamping in PHY devices"
107113 select NET_PTP_CLASSIFY
108114 help
109
- This allows timestamping of network packets by PHYs with
110
- hardware timestamping capabilities. This option adds some
111
- overhead in the transmit and receive paths.
115
+ This allows timestamping of network packets by PHYs (or
116
+ other MII bus snooping devices) with hardware timestamping
117
+ capabilities. This option adds some overhead in the transmit
118
+ and receive paths.
112119
113120 If you are unsure how to answer this question, answer N.
114121
115122 menuconfig NETFILTER
116123 bool "Network packet filtering framework (Netfilter)"
117
- ---help---
124
+ help
118125 Netfilter is a framework for filtering and mangling network packets
119126 that pass through your Linux box.
120127
....@@ -184,7 +191,8 @@
184191 depends on NETFILTER && INET
185192 depends on NETFILTER_ADVANCED
186193 select NETFILTER_FAMILY_BRIDGE
187
- ---help---
194
+ select SKB_EXTENSIONS
195
+ help
188196 Enabling this option will let arptables resp. iptables see bridged
189197 ARP resp. IP traffic. If you want a bridging firewall, you probably
190198 want this option enabled.
....@@ -254,13 +262,13 @@
254262 default y
255263
256264 config HWBM
257
- bool
265
+ bool
258266
259267 config CGROUP_NET_PRIO
260268 bool "Network priority cgroup"
261269 depends on CGROUPS
262270 select SOCK_CGROUP_DATA
263
- ---help---
271
+ help
264272 Cgroup subsystem for use in assigning processes to network priorities on
265273 a per-interface basis.
266274
....@@ -268,13 +276,13 @@
268276 bool "Network classid cgroup"
269277 depends on CGROUPS
270278 select SOCK_CGROUP_DATA
271
- ---help---
279
+ help
272280 Cgroup subsystem for use as general purpose socket classid marker that is
273281 being used in cls_cgroup and for netfilter matching.
274282
275283 config NET_RX_BUSY_POLL
276284 bool
277
- default y if !PREEMPT_RT_FULL
285
+ default y if !PREEMPT_RT
278286
279287 config BQL
280288 bool
....@@ -286,7 +294,7 @@
286294 bool "enable BPF Just In Time compiler"
287295 depends on HAVE_CBPF_JIT || HAVE_EBPF_JIT
288296 depends on MODULES
289
- ---help---
297
+ help
290298 Berkeley Packet Filter filtering capabilities are normally handled
291299 by an interpreter. This option allows kernel to generate a native
292300 code when filter is loaded in memory. This should speedup
....@@ -299,35 +307,24 @@
299307
300308 config BPF_STREAM_PARSER
301309 bool "enable BPF STREAM_PARSER"
310
+ depends on INET
302311 depends on BPF_SYSCALL
312
+ depends on CGROUP_BPF
303313 select STREAM_PARSER
304
- ---help---
305
- Enabling this allows a stream parser to be used with
306
- BPF_MAP_TYPE_SOCKMAP.
307
-
308
- BPF_MAP_TYPE_SOCKMAP provides a map type to use with network sockets.
309
- It can be used to enforce socket policy, implement socket redirects,
310
- etc.
311
-
312
-config ETHTOOL
313
- bool "enable ethtool"
314
- default y
314
+ select NET_SOCK_MSG
315315 help
316
- This selects ethtool function, default is Y. If say N, ethtool function
317
- is not implemented.
316
+ Enabling this allows a stream parser to be used with
317
+ BPF_MAP_TYPE_SOCKMAP.
318318
319
-config FILTER
320
- bool "enable filter"
321
- default y
322
- help
323
- This selects filter function, default is Y. If say N, filter function
324
- is not implemented.
319
+ BPF_MAP_TYPE_SOCKMAP provides a map type to use with network sockets.
320
+ It can be used to enforce socket policy, implement socket redirects,
321
+ etc.
325322
326323 config NET_FLOW_LIMIT
327324 bool
328325 depends on RPS
329326 default y
330
- ---help---
327
+ help
331328 The network stack has to drop packets when a receive processing CPU's
332329 backlog reaches netdev_max_backlog. If a few out of many active flows
333330 generate the vast majority of load, drop their traffic earlier to
....@@ -340,14 +337,14 @@
340337 config NET_PKTGEN
341338 tristate "Packet Generator (USE WITH CAUTION)"
342339 depends on INET && PROC_FS
343
- ---help---
340
+ help
344341 This module will inject preconfigured packets, at a configurable
345342 rate, out of a given interface. It is used for network interface
346343 stress testing and performance analysis. If you don't understand
347344 what was just said, you don't need it: say N.
348345
349346 Documentation on how to use the packet generator can be found
350
- at <file:Documentation/networking/pktgen.txt>.
347
+ at <file:Documentation/networking/pktgen.rst>.
351348
352349 To compile this code as a module, choose M here: the
353350 module will be called pktgen.
....@@ -355,13 +352,13 @@
355352 config NET_DROP_MONITOR
356353 tristate "Network packet drop alerting service"
357354 depends on INET && TRACEPOINTS
358
- ---help---
359
- This feature provides an alerting service to userspace in the
360
- event that packets are discarded in the network stack. Alerts
361
- are broadcast via netlink socket to any listening user space
362
- process. If you don't need network drop alerts, or if you are ok
363
- just checking the various proc files and other utilities for
364
- drop statistics, say N here.
355
+ help
356
+ This feature provides an alerting service to userspace in the
357
+ event that packets are discarded in the network stack. Alerts
358
+ are broadcast via netlink socket to any listening user space
359
+ process. If you don't need network drop alerts, or if you are ok
360
+ just checking the various proc files and other utilities for
361
+ drop statistics, say N here.
365362
366363 endmenu
367364
....@@ -401,7 +398,7 @@
401398
402399 config LWTUNNEL
403400 bool "Network light weight tunnels"
404
- ---help---
401
+ help
405402 This feature provides an infrastructure to support light weight
406403 tunnels like mpls. There is no netdevice associated with a light
407404 weight tunnel endpoint. Tunnel encapsulation parameters are stored
....@@ -409,9 +406,9 @@
409406
410407 config LWTUNNEL_BPF
411408 bool "Execute BPF program as route nexthop action"
412
- depends on LWTUNNEL
409
+ depends on LWTUNNEL && INET
413410 default y if LWTUNNEL=y
414
- ---help---
411
+ help
415412 Allows to run BPF programs as a nexthop action following a route
416413 lookup for incoming and outgoing packets.
417414
....@@ -426,24 +423,20 @@
426423 config SOCK_VALIDATE_XMIT
427424 bool
428425
429
-config NET_DEVLINK
430
- tristate "Network physical/parent device Netlink interface"
426
+config NET_SOCK_MSG
427
+ bool
428
+ default n
431429 help
432
- Network physical/parent device Netlink interface provides
433
- infrastructure to support access to physical chip-wide config and
434
- monitoring.
430
+ The NET_SOCK_MSG provides a framework for plain sockets (e.g. TCP) or
431
+ ULPs (upper layer modules, e.g. TLS) to process L7 application data
432
+ with the help of BPF programs.
435433
436
-config MAY_USE_DEVLINK
437
- tristate
438
- default m if NET_DEVLINK=m
439
- default y if NET_DEVLINK=y || NET_DEVLINK=n
440
- help
441
- Drivers using the devlink infrastructure should have a dependency
442
- on MAY_USE_DEVLINK to ensure they do not cause link errors when
443
- devlink is a loadable module and the driver using it is built-in.
434
+config NET_DEVLINK
435
+ bool
436
+ default n
444437
445438 config PAGE_POOL
446
- bool
439
+ bool
447440
448441 config FAILOVER
449442 tristate "Generic failover module"
....@@ -458,6 +451,14 @@
458451 migration of VMs with direct attached VFs by failing over to the
459452 paravirtual datapath when the VF is unplugged.
460453
454
+config ETHTOOL_NETLINK
455
+ bool "Netlink interface for ethtool"
456
+ default y
457
+ help
458
+ An alternative userspace interface for ethtool based on generic
459
+ netlink. It provides better extensibility and some new features,
460
+ e.g. notification messages.
461
+
461462 endif # if NET
462463
463464 # Used by archs to tell that they support BPF JIT compiler plus which flavour.