Annotate non-common kernel config options.

Annotate any kernel config option not present in all the kernel branches
regularly being tested (3.10, 3.18, 4.4, 4.9, 4.14) with when the option
was added or removed, and whether it was an Android kernel option or
not.

These annotations are useful when cross-checking the net tests list with
the kernel/configs project.

Bug: 79546208
Change-Id: Ie501624818025b9d70c2af53d4b23ce1c7225b0b
Signed-off-by: Alistair Strachan <astrachan@google.com>
diff --git a/net/test/run_net_test.sh b/net/test/run_net_test.sh
index 8ab645d..17b1891 100755
--- a/net/test/run_net_test.sh
+++ b/net/test/run_net_test.sh
@@ -1,42 +1,49 @@
 #!/bin/bash
 
-# Kernel configuration options.
+# Common kernel options
 OPTIONS=" DEBUG_SPINLOCK DEBUG_ATOMIC_SLEEP DEBUG_MUTEXES DEBUG_RT_MUTEXES"
+OPTIONS="$OPTIONS DEVTMPFS DEVTMPFS_MOUNT"
 OPTIONS="$OPTIONS IPV6 IPV6_ROUTER_PREF IPV6_MULTIPLE_TABLES IPV6_ROUTE_INFO"
 OPTIONS="$OPTIONS TUN SYN_COOKIES IP_ADVANCED_ROUTER IP_MULTIPLE_TABLES"
 OPTIONS="$OPTIONS NETFILTER NETFILTER_ADVANCED NETFILTER_XTABLES"
 OPTIONS="$OPTIONS NETFILTER_XT_MARK NETFILTER_XT_TARGET_MARK"
 OPTIONS="$OPTIONS IP_NF_IPTABLES IP_NF_MANGLE IP_NF_FILTER"
 OPTIONS="$OPTIONS IP6_NF_IPTABLES IP6_NF_MANGLE IP6_NF_FILTER INET6_IPCOMP"
-OPTIONS="$OPTIONS IPV6_PRIVACY IPV6_OPTIMISTIC_DAD"
+OPTIONS="$OPTIONS IPV6_OPTIMISTIC_DAD"
 OPTIONS="$OPTIONS IPV6_ROUTE_INFO IPV6_ROUTER_PREF"
 OPTIONS="$OPTIONS NETFILTER_XT_TARGET_NFLOG"
 OPTIONS="$OPTIONS NETFILTER_XT_MATCH_QUOTA"
 OPTIONS="$OPTIONS NETFILTER_XT_MATCH_QUOTA2"
 OPTIONS="$OPTIONS NETFILTER_XT_MATCH_QUOTA2_LOG"
-OPTIONS="$OPTIONS NETFILTER_TPROXY"
 OPTIONS="$OPTIONS NETFILTER_XT_MATCH_SOCKET"
 OPTIONS="$OPTIONS NETFILTER_XT_MATCH_QTAGUID"
-# For 4.14 NETFILTER_XT_MATCH_SOCKET demands NF_SOCKET_IPV4/6
-OPTIONS="$OPTIONS NF_SOCKET_IPV4 NF_SOCKET_IPV6"
 OPTIONS="$OPTIONS INET_UDP_DIAG INET_DIAG_DESTROY"
-OPTIONS="$OPTIONS IP_SCTP INET_SCTP_DIAG"
+OPTIONS="$OPTIONS IP_SCTP"
 OPTIONS="$OPTIONS IP_NF_TARGET_REJECT IP_NF_TARGET_REJECT_SKERR"
 OPTIONS="$OPTIONS IP6_NF_TARGET_REJECT IP6_NF_TARGET_REJECT_SKERR"
-OPTIONS="$OPTIONS BPF_SYSCALL NET_KEY XFRM_USER XFRM_STATISTICS CRYPTO_CBC"
+OPTIONS="$OPTIONS NET_KEY XFRM_USER XFRM_STATISTICS CRYPTO_CBC"
 OPTIONS="$OPTIONS CRYPTO_CTR CRYPTO_HMAC CRYPTO_AES CRYPTO_SHA1"
 OPTIONS="$OPTIONS CRYPTO_USER INET_ESP INET_XFRM_MODE_TRANSPORT"
 OPTIONS="$OPTIONS INET_XFRM_MODE_TUNNEL INET6_ESP"
 OPTIONS="$OPTIONS INET6_XFRM_MODE_TRANSPORT INET6_XFRM_MODE_TUNNEL"
 OPTIONS="$OPTIONS CRYPTO_SHA256 CRYPTO_SHA512 CRYPTO_AES_X86_64 CRYPTO_NULL"
-OPTIONS="$OPTIONS CRYPTO_GCM CRYPTO_ECHAINIV NET_IPVTI IPV6_VTI"
-OPTIONS="$OPTIONS SOCK_CGROUP_DATA CGROUP_BPF XFRM_INTERFACE"
+OPTIONS="$OPTIONS CRYPTO_GCM CRYPTO_ECHAINIV NET_IPVTI"
 
-# For 4.14 kernels, where UBD and HOSTFS are not set
-OPTIONS="$OPTIONS BLK_DEV_UBD HOSTFS"
+# Kernel version specific options
+OPTIONS="$OPTIONS XFRM_INTERFACE"                # Various device kernels
+OPTIONS="$OPTIONS BLK_DEV_UBD HOSTFS"            # Unset by default in 4.14
+OPTIONS="$OPTIONS CGROUP_BPF"                    # Added in android-4.9
+OPTIONS="$OPTIONS NF_SOCKET_IPV4 NF_SOCKET_IPV6" # Added in 4.9
+OPTIONS="$OPTIONS INET_SCTP_DIAG"                # Added in 4.7
+OPTIONS="$OPTIONS SOCK_CGROUP_DATA"              # Added in 4.5
+OPTIONS="$OPTIONS CRYPTO_ECHAINIV"               # Added in 4.1
+OPTIONS="$OPTIONS BPF_SYSCALL"                   # Added in 3.18
+OPTIONS="$OPTIONS IPV6_VTI"                      # Added in 3.13
+OPTIONS="$OPTIONS IPV6_PRIVACY"                  # Removed in 3.12
+OPTIONS="$OPTIONS NETFILTER_TPROXY"              # Removed in 3.11
 
-# For 3.1 kernels, where devtmpfs is not on by default.
-OPTIONS="$OPTIONS DEVTMPFS DEVTMPFS_MOUNT"
+# Obsolete options present at some time in Android kernels
+OPTIONS="$OPTIONS IP_NF_TARGET_REJECT_SKERR IP6_NF_TARGET_REJECT_SKERR"
 
 # These two break the flo kernel due to differences in -Werror on recent GCC.
 DISABLE_OPTIONS=" REISERFS_FS ANDROID_PMEM"