net: activity_stats: Add statistics for network transmission activity
[linux-2.6.git] / net / Kconfig
index a81aca4..0b005b9 100644 (file)
@@ -2,16 +2,15 @@
 # Network configuration
 #
 
-menu "Networking"
-
-config NET
+menuconfig NET
        bool "Networking support"
+       select NLATTR
        ---help---
          Unless you really know what you are doing, you should say Y here.
          The reason is that some programs need kernel networking support even
          when running on a stand-alone machine that isn't connected to any
          other computer.
-         
+
          If you are upgrading from an older kernel, you
          should consider updating your networking tools too because changes
          in the kernel and the tools often go hand in hand. The tools are
@@ -22,28 +21,41 @@ config NET
          recommended to read the NET-HOWTO, available from
          <http://www.tldp.org/docs.html#howto>.
 
-# Make sure that all config symbols are dependent on NET
 if NET
 
-menu "Networking options"
+config WANT_COMPAT_NETLINK_MESSAGES
+       bool
+       help
+         This option can be selected by other options that need compat
+         netlink messages.
 
-config NETDEBUG
-       bool "Network packet debugging"
+config COMPAT_NETLINK_MESSAGES
+       def_bool y
+       depends on COMPAT
+       depends on WEXT_CORE || WANT_COMPAT_NETLINK_MESSAGES
        help
-         You can say Y here if you want to get additional messages useful in
-         debugging bad packets, but can overwhelm logs under denial of service
-         attacks.
+         This option makes it possible to send different netlink messages
+         to tasks depending on whether the task is a compat task or not. To
+         achieve this, you need to set skb_shinfo(skb)->frag_list to the
+         compat skb before sending the skb, the netlink code will sort out
+         which message to actually pass to the task.
+
+         Newly written code should NEVER need this option but do
+         compat-independent messages instead!
+
+menu "Networking options"
 
 source "net/packet/Kconfig"
 source "net/unix/Kconfig"
 source "net/xfrm/Kconfig"
+source "net/iucv/Kconfig"
 
 config INET
        bool "TCP/IP networking"
        ---help---
          These are the protocols used on the Internet and on most local
          Ethernets. It is highly recommended to say Y here (this will enlarge
-         your kernel by about 144 KB), since some programs (e.g. the X window
+         your kernel by about 400 KB), since some programs (e.g. the X window
          system) use TCP/IP even if your machine is not connected to any
          other computer. You will get the so-called loopback device which
          allows you to ping yourself (great fun, that!).
@@ -63,9 +75,24 @@ config INET
 if INET
 source "net/ipv4/Kconfig"
 source "net/ipv6/Kconfig"
+source "net/netlabel/Kconfig"
 
 endif # if INET
 
+config ANDROID_PARANOID_NETWORK
+       bool "Only allow certain groups to create sockets"
+       default y
+       help
+               none
+
+config NET_ACTIVITY_STATS
+       bool "Network activity statistics tracking"
+       default y
+       help
+        Network activity statistics are useful for tracking wireless
+        modem activity on 2G, 3G, 4G wireless networks. Counts number of
+        transmissions and groups them in specified time buckets.
+
 config NETWORK_SECMARK
        bool "Security Marking"
        help
@@ -73,8 +100,18 @@ config NETWORK_SECMARK
          to nfmark, but designated for security purposes.
          If you are unsure how to answer this question, answer N.
 
+config NETWORK_PHY_TIMESTAMPING
+       bool "Timestamping in PHY devices"
+       depends on EXPERIMENTAL
+       help
+         This allows timestamping of network packets by PHYs with
+         hardware timestamping capabilities. This option adds some
+         overhead in the transmit and receive paths.
+
+         If you are unsure how to answer this question, answer N.
+
 menuconfig NETFILTER
-       bool "Network packet filtering (replaces ipchains)"
+       bool "Network packet filtering framework (Netfilter)"
        ---help---
          Netfilter is a framework for filtering and mangling network packets
          that pass through your Linux box.
@@ -126,12 +163,6 @@ menuconfig NETFILTER
          <file:Documentation/Changes> under "iptables" for the location of
          these packages.
 
-         Make sure to say N to "Fast switching" below if you intend to say Y
-         here, as Fast switching currently bypasses netfilter.
-
-         Chances are that you should say Y here if you compile a kernel which
-         will run as a router and N for regular hosts. If unsure, say N.
-
 if NETFILTER
 
 config NETFILTER_DEBUG
@@ -141,9 +172,21 @@ config NETFILTER_DEBUG
          You can say Y here if you want to get additional messages useful in
          debugging the netfilter code.
 
+config NETFILTER_ADVANCED
+       bool "Advanced netfilter configuration"
+       depends on NETFILTER
+       default y
+       help
+         If you say Y here you can select between all the netfilter modules.
+         If you say N the more unusual ones will not be shown and the
+         basic ones needed by most people will default to 'M'.
+
+         If unsure, say Y.
+
 config BRIDGE_NETFILTER
        bool "Bridged IP/ARP packets filtering"
        depends on BRIDGE && NETFILTER && INET
+       depends on NETFILTER_ADVANCED
        default y
        ---help---
          Enabling this option will let arptables resp. iptables see bridged
@@ -164,9 +207,13 @@ endif
 
 source "net/dccp/Kconfig"
 source "net/sctp/Kconfig"
+source "net/rds/Kconfig"
 source "net/tipc/Kconfig"
 source "net/atm/Kconfig"
+source "net/l2tp/Kconfig"
+source "net/802/Kconfig"
 source "net/bridge/Kconfig"
+source "net/dsa/Kconfig"
 source "net/8021q/Kconfig"
 source "net/decnet/Kconfig"
 source "net/llc/Kconfig"
@@ -174,36 +221,58 @@ source "net/ipx/Kconfig"
 source "drivers/net/appletalk/Kconfig"
 source "net/x25/Kconfig"
 source "net/lapb/Kconfig"
+source "net/econet/Kconfig"
+source "net/wanrouter/Kconfig"
+source "net/phonet/Kconfig"
+source "net/ieee802154/Kconfig"
+source "net/sched/Kconfig"
+source "net/dcb/Kconfig"
+source "net/dns_resolver/Kconfig"
+source "net/batman-adv/Kconfig"
+source "net/openvswitch/Kconfig"
+
+config RPS
+       boolean "RPS"
+       depends on SMP && SYSFS && USE_GENERIC_SMP_HELPERS
+       default y
+
+config RFS_ACCEL
+       boolean
+       depends on RPS && GENERIC_HARDIRQS
+       select CPU_RMAP
+       default y
 
-config NET_DIVERT
-       bool "Frame Diverter (EXPERIMENTAL)"
-       depends on EXPERIMENTAL && BROKEN
+config XPS
+       boolean
+       depends on SMP && SYSFS && USE_GENERIC_SMP_HELPERS
+       default y
+
+config NETPRIO_CGROUP
+       tristate "Network priority cgroup"
+       depends on CGROUPS
        ---help---
-         The Frame Diverter allows you to divert packets from the
-         network, that are not aimed at the interface receiving it (in
-         promisc. mode). Typically, a Linux box setup as an Ethernet bridge
-         with the Frames Diverter on, can do some *really* transparent www
-         caching using a Squid proxy for example.
-
-         This is very useful when you don't want to change your router's
-         config (or if you simply don't have access to it).
-
-         The other possible usages of diverting Ethernet Frames are
-         numberous:
-         - reroute smtp traffic to another interface
-         - traffic-shape certain network streams
-         - transparently proxy smtp connections
-         - etc...
-
-         For more informations, please refer to:
-         <http://diverter.sourceforge.net/>
-         <http://perso.wanadoo.fr/magpie/EtherDivert.html>
+         Cgroup subsystem for use in assigning processes to network priorities on
+         a per-interface basis
 
-         If unsure, say N.
+config BQL
+       boolean
+       depends on SYSFS
+       select DQL
+       default y
 
-source "net/econet/Kconfig"
-source "net/wanrouter/Kconfig"
-source "net/sched/Kconfig"
+config HAVE_BPF_JIT
+       bool
+
+config BPF_JIT
+       bool "enable BPF Just In Time compiler"
+       depends on HAVE_BPF_JIT
+       depends on MODULES
+       ---help---
+         Berkeley Packet Filter filtering capabilities are normally handled
+         by an interpreter. This option allows kernel to generate a native
+         code when filter is loaded in memory. This should speedup
+         packet sniffing (libpcap/tcpdump). Note : Admin should enable
+         this feature changing /proc/sys/net/core/bpf_jit_enable
 
 menu "Network testing"
 
@@ -232,28 +301,56 @@ config NET_TCPPROBE
        what was just said, you don't need it: say N.
 
        Documentation on how to use TCP connection probing can be found
-       at http://linux-net.osdl.org/index.php/TcpProbe
+       at:
+
+         http://www.linuxfoundation.org/collaborate/workgroups/networking/tcpprobe
 
        To compile this code as a module, choose M here: the
        module will be called tcp_probe.
 
+config NET_DROP_MONITOR
+       boolean "Network packet drop alerting service"
+       depends on INET && EXPERIMENTAL && TRACEPOINTS
+       ---help---
+       This feature provides an alerting service to userspace in the
+       event that packets are discarded in the network stack.  Alerts
+       are broadcast via netlink socket to any listening user space
+       process.  If you don't need network drop alerts, or if you are ok
+       just checking the various proc files and other utilities for
+       drop statistics, say N here.
+
 endmenu
 
 endmenu
 
 source "net/ax25/Kconfig"
+source "net/can/Kconfig"
 source "net/irda/Kconfig"
 source "net/bluetooth/Kconfig"
-source "net/ieee80211/Kconfig"
+source "net/rxrpc/Kconfig"
 
-config WIRELESS_EXT
+config FIB_RULES
        bool
 
-source "net/netlabel/Kconfig"
+menuconfig WIRELESS
+       bool "Wireless"
+       depends on !S390
+       default y
 
-config FIB_RULES
-       bool
+if WIRELESS
 
-endif   # if NET
-endmenu # Networking
+source "net/wireless/Kconfig"
+source "net/mac80211/Kconfig"
+
+endif # WIRELESS
+
+source "net/wimax/Kconfig"
 
+source "net/rfkill/Kconfig"
+source "net/9p/Kconfig"
+source "net/caif/Kconfig"
+source "net/ceph/Kconfig"
+source "net/nfc/Kconfig"
+
+
+endif   # if NET