| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- name: 'Setup Networking Options'
- description: 'Set up kernel configuration fragment with required options'
- inputs:
- version:
- description: 'Kernel config version (e.g., android15-6.6)'
- required: true
- kernel_version:
- description: 'Kernel version (e.g., 6.1)'
- required: true
- android_version:
- description: 'Android version (e.g., android14)'
- required: true
- sublevel:
- description: 'Kernel sublevel'
- required: true
- runs:
- using: "composite"
- steps:
- - name: 'Apply BBRv3'
- shell: bash
- if: true
- working-directory: ${{ github.workspace }}/kernel/common
- run: |
- set -euo pipefail
- if [[ ${{ inputs.version }} == "android16-6.12" ]]; then
- cp "${{ github.workspace }}/kernel_patches/common/bbrv3/0001-net-tcp-backport-BBRv3-to-android15-6.6.patch" temp.patch
- #patch -p1 -F 3 < temp.patch
- rm temp.patch
- elif [[ ${{ inputs.version }} == "android15-6.6" ]]; then
- cp "${{ github.workspace }}/kernel_patches/common/bbrv3/0001-net-tcp-backport-BBRv3-to-android15-6.6.patch" temp.patch
- patch -p1 -F 3 < temp.patch
- rm temp.patch
- elif [[ ${{ inputs.version }} == "android14-6.1" ]]; then
- cp "${{ github.workspace }}/kernel_patches/common/bbrv3/0001-net-tcp-backport-BBRv3-to-android14-6.1.patch" temp.patch
- patch -p1 -F 3 < temp.patch
- rm temp.patch
- elif [[ ${{ inputs.version }} == "android14-5.15" ]]; then
- cp "${{ github.workspace }}/kernel_patches/common/bbrv3/0001-net-tcp-backport-BBRv3-to-android13-5.15.patch" temp.patch
- patch -p1 -F 3 < temp.patch
- rm temp.patch
- elif [[ ${{ inputs.version }} == "android13-5.15" && ${{ inputs.sublevel }} >= "74"]]; then
- cp "${{ github.workspace }}/kernel_patches/common/bbrv3/0001-net-tcp-backport-BBRv3-to-android13-5.15.patch" temp.patch
- patch -p1 -F 3 < temp.patch
- rm temp.patch
- elif [[ ${{ inputs.version }} == "android13-5.10" && ${{ inputs.sublevel }} >= "186"]]; then
- cp "${{ github.workspace }}/kernel_patches/common/bbrv3/0001-net-tcp-backport-BBRv3-to-android12-5.10.patch" temp.patch
- patch -p1 -F 3 < temp.patch
- rm temp.patch
- elif [[ ${{ inputs.version }} == "android12-5.10" && ${{ inputs.sublevel }} >= "185" ]]; then
- cp "${{ github.workspace }}/kernel_patches/common/bbrv3/0001-net-tcp-backport-BBRv3-to-android12-5.10.patch" temp.patch
- patch -p1 -F 3 < temp.patch
- rm temp.patch
- fi
-
- echo "✅ BBRv3 patches applied"
- - name: Enable Kernel Configs
- if: true
- uses: ./.github/actions/set-kernel-config
- with:
- config_list: |
- CONFIG_TCP_CONG_BBR3=y
- - name: Enable Kernel Configs
- uses: ./.github/actions/set-kernel-config
- with:
- config_list: |
- CONFIG_IP_SET=y
- CONFIG_IP_SET_MAX=65534
- CONFIG_IP_SET_BITMAP_IP=y
- CONFIG_IP_SET_BITMAP_IPMAC=y
- CONFIG_IP_SET_BITMAP_PORT=y
- CONFIG_IP_SET_HASH_IP=y
- CONFIG_IP_SET_HASH_IPMARK=y
- CONFIG_IP_SET_HASH_IPPORT=y
- CONFIG_IP_SET_HASH_IPPORTIP=y
- CONFIG_IP_SET_HASH_IPPORTNET=y
- CONFIG_IP_SET_HASH_IPMAC=y
- CONFIG_IP_SET_HASH_MAC=y
- CONFIG_IP_SET_HASH_NETPORTNET=y
- CONFIG_IP_SET_HASH_NET=y
- CONFIG_IP_SET_HASH_NETNET=y
- CONFIG_IP_SET_HASH_NETPORT=y
- CONFIG_IP_SET_HASH_NETIFACE=y
- CONFIG_IP_SET_LIST_SET=y
- CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
- CONFIG_NETFILTER_XT_SET=y
- CONFIG_NETFILTER_XT_TARGET_LOG=y
- CONFIG_NETFILTER_XT_MATCH_RECENT=y
- CONFIG_IP6_NF_NAT=y
- CONFIG_IP6_NF_TARGET_MASQUERADE=y
- - name: Enable Kernel Configs
- uses: ./.github/actions/set-kernel-config
- with:
- config_list: |
- CONFIG_TCP_CONG_ADVANCED=y
- CONFIG_TCP_CONG_BBR=y
- CONFIG_TCP_CONG_CUBIC=y
- CONFIG_TCP_CONG_BIC=y
- CONFIG_TCP_CONG_WESTWOOD=y
- CONFIG_TCP_CONG_HTCP=y
- CONFIG_DEFAULT_BBR=y
- CONFIG_DEFAULT_TCP_CONG="bbr"
- CONFIG_NET_SCH_FQ=y
- CONFIG_NET_SCH_FQ_CODEL=y
- CONFIG_NET_ACT_CONNMARK=y
- CONFIG_NET_SCH_CAKE=y
-
- - name: Apply Kernel Config for 5.10
- shell: bash
- working-directory: ${{ github.workspace }}/kernel/common
- if: inputs.kernel_version == '5.10'
- run: |
- sed -i 's/CONFIG_IP_SET_MAX/65534/g' net/netfilter/ipset/ip_set_core.c
- - name: Apply NTSync Patch
- if: false
- shell: bash
- working-directory: ${{ github.workspace }}/kernel/common
- run: |
- set -euo pipefail
- echo "Using patch: $(basename $NTSYNC_PATCH)"
- if [[ ${{ inputs.version }} = "android16-6.12" ]]; then
- echo "Removing pre-existing ntsync files for android16-6.12"
- rm -f include/uapi/linux/ntsync.h
- rm -f drivers/misc/ntsync.c
- fi
- cp ${{ github.workspace }}/kernel_patches/common/ntsync/ntsync_compat_${{ inputs.version }}.patch ${{ github.workspace }}/kernel/common
- patch -p1 ntsync_compat_${{ inputs.version }}.patch
-
- cp ${{ github.workspace }}/kernel_patches/common/ntsync/ntsync_base.patch ${{ github.workspace }}/kernel/common
- patch -p1 < ntsync_base.patch
- cat >> "${{ github.workspace }}/kernel/common/arch/arm64/configs/gki_defconfig" << 'EOF'
- CONFIG_NTSYNC=y
- EOF
|