Просмотр исходного кода

ci(workflows): update susfs patch application logic in build workflow

- Reorganized patch application conditions for different Android/kernel versions
- Removed KSU-specific patch application section as it appears to be redundant
- Simplified SUSFS-related kernel configs by removing commented-out KPROBES entries
TheWildJames 8 месяцев назад
Родитель
Сommit
67ba3d321e
2 измененных файлов с 31 добавлено и 74 удалено
  1. 30 74
      .github/workflows/build.yml
  2. 1 0
      temp_patches

+ 30 - 74
.github/workflows/build.yml

@@ -275,54 +275,54 @@ jobs:
 
             cd "$KERNEL_ROOT/common"
             if [[ "${{ inputs.android_version }}" == "android12" && "${{ inputs.kernel_version }}" == "5.10" ]]; then
-              if [ "$ACTUAL_SUBLEVEL" -le 43 ]; then
-                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a12-5.10-fix-base.c.patch ./
-                patch -p1 < a12-5.10-fix-base.c.patch
-              fi
               if [ "$ACTUAL_SUBLEVEL" -le 117 ]; then
-                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a12-5.10-fix-fdinfo.c.patch ./
-                patch -p1 < a12-5.10-fix-fdinfo.c.patch
+                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a12-5.10/fdinfo.c.patch ./
+                patch -p1 < fdinfo.c.patch
               fi
-              if [ "$ACTUAL_SUBLEVEL" -le 209 ]; then
-                echo "Not Needed"
-                #sed -i -e 's/goto show_pad;/return 0;/' ./fs/proc/task_mmu.c
+              if [ "$ACTUAL_SUBLEVEL" -le 43 ]; then
+                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a12-5.10/base.c.patch ./
+                patch -p1 < base.c.patch
               fi
             fi
             if [[ "${{ inputs.android_version }}" == "android13" && "${{ inputs.kernel_version }}" == "5.10" ]]; then
-              if [ "$ACTUAL_SUBLEVEL" -le 117 ]; then
-                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a13-5.10-fix-fdinfo.c.patch ./
-                patch -p1 < a13-5.10-fix-fdinfo.c.patch
+              if [ "$ACTUAL_SUBLEVEL" -le 107 ]; then
+                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a13-5.10/fdinfo.c.patch ./
+                patch -p1 < fdinfo.c.patch
               fi
             fi
             if [[ "${{ inputs.android_version }}" == "android13" && "${{ inputs.kernel_version }}" == "5.15" ]]; then
-              if [[ "$ACTUAL_SUBLEVEL" -le 41 ]]; then
-              cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a13-5.15-fix-fdinfo.c.patch ./
-                patch -p1 < a13-5.15-fix-fdinfo.c.patch
-                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a13-5.15-fix-namespace.c.patch ./
-                patch -p1 < a13-5.15-fix-namespace.c.patch
-                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a13-5.15-fix-open.c.patch ./
-                patch -p1 < a13-5.15-fix-open.c.patch
-                sed -i 's/i_uid_into_mnt(i_user_ns(inode), inode)/i_uid_into_mnt(inode->i_sb->s_user_ns, inode)/g' fs/susfs.c
+              if [ "$ACTUAL_SUBLEVEL" -le 41 ]; then
+                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a13-5.15/namespace.c.patch ./
+                patch -p1 < namespace.c.patch
               fi
-            fi
-            if [[ "${{ inputs.android_version }}" == "android14" && "${{ inputs.kernel_version }}" == "5.15" ]]; then
-              if [ "$ACTUAL_SUBLEVEL" -le 9999 ]; then
-                echo "Not Needed"
+              if [ "$ACTUAL_SUBLEVEL" -le 41 ]; then
+                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a13-5.15/fdinfo.c.patch ./
+                patch -p1 < fdinfo.c.patch
+              fi
+              if [ "$ACTUAL_SUBLEVEL" -le 41 ]; then
+                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a13-5.15/open.c.patch ./
+                patch -p1 < open.c.patch
               fi
             fi
             if [[ "${{ inputs.android_version }}" == "android14" && "${{ inputs.kernel_version }}" == "6.1" ]]; then
-              if [ "$ACTUAL_SUBLEVEL" -le 9999 ]; then
-                echo "Not Needed"
+              if [ "$ACTUAL_SUBLEVEL" -ge 145 ]; then
+                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a14-6.1/base.c.patch ./
+                patch -p1 < base.c.patch
               fi
             fi
             if [[ "${{ inputs.android_version }}" == "android15" && "${{ inputs.kernel_version }}" == "6.6" ]]; then
-              if [ "$ACTUAL_SUBLEVEL" -le 9999 ]; then
-                echo "Not Needed"
+              if [ "$ACTUAL_SUBLEVEL" -ge 98 ]; then
+                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a15-6.6/base.c.patch ./
+                patch -p1 < base.c.patch
+              fi
+              if [ "$ACTUAL_SUBLEVEL" -le 58 ]; then
+                cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/a15-6.6/task_mmu.c.patch ./
+                patch -p1 < task_mmu.c.patch
               fi
             fi
             if [[ "${{ inputs.android_version }}" == "android16" && "${{ inputs.kernel_version }}" == "6.12" ]]; then
-              if [ "$ACTUAL_SUBLEVEL" -ge 9999 ]; then
-                echo "Not Needed"
+              if [ "$ACTUAL_SUBLEVEL" -le 9999 ]; then
+                echo "Nothing to fix!"
               fi
             fi
             ;;
@@ -333,46 +333,6 @@ jobs:
             ;;
         esac
 
-        case "${{ inputs.ksu_variant }}" in
-          KSU)
-            if [[ "${{ inputs.android_version }}" == "android12" && "${{ inputs.kernel_version }}" == "5.10" && $ACTUAL_SUBLEVEL -le 209 ]] ||
-               [[ "${{ inputs.android_version }}" == "android13" && "${{ inputs.kernel_version }}" == "5.10" && "${{ inputs.os_patch_level }}" != "2024-05" && $ACTUAL_SUBLEVEL -le 209 ]] ||
-               [[ "${{ inputs.android_version }}" == "android13" && "${{ inputs.kernel_version }}" == "5.15" && "${{ inputs.os_patch_level }}" != "2024-05" && $ACTUAL_SUBLEVEL -le 148 ]] ||
-               [[ "${{ inputs.android_version }}" == "android14" && "${{ inputs.kernel_version }}" == "5.15" && "${{ inputs.os_patch_level }}" != "2024-05" && $ACTUAL_SUBLEVEL -le 148 ]] ||
-               [[ "${{ inputs.android_version }}" == "android14" && "${{ inputs.kernel_version }}" == "6.1" && "${{ inputs.os_patch_level }}" != "2024-05" && $ACTUAL_SUBLEVEL -le 75 ]]; then
-              sed -i -e 's/goto show_pad;/return 0;/' ./fs/proc/task_mmu.c
-            fi
-
-            if [[ "${{ inputs.android_version }}" == "android12" && "${{ inputs.kernel_version }}" == "5.10" && $ACTUAL_SUBLEVEL -le 43 ]] ||
-               [[ "${{ inputs.android_version }}" == "android14" && "${{ inputs.kernel_version }}" == "6.1" && $ACTUAL_SUBLEVEL -ge 145 ]] ||
-               [[ "${{ inputs.android_version }}" == "android15" && "${{ inputs.kernel_version }}" == "6.6" && $ACTUAL_SUBLEVEL -ge 98 ]]; then
-              cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/1_fix_base.c.patch ./
-              patch -p1 < 1_fix_base.c.patch
-            fi
-
-            if [[ "${{ inputs.android_version }}" == "android12" && "${{ inputs.kernel_version }}" == "5.10" && $ACTUAL_SUBLEVEL -le 43 ]]; then
-              cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/2_fix_base.c.patch ./
-              patch -p1 < 2_fix_base.c.patch || true
-            fi
-
-            if [[ "${{ inputs.android_version }}" == "android15" && "${{ inputs.kernel_version }}" == "6.6" && $ACTUAL_SUBLEVEL -le 58 ]]; then
-              cp $KERNEL_PATCHES/wild/susfs_fix_patches/v${SUSFS_VERSION}/fix_task_mmu.c.patch ./
-              patch -p1 < fix_task_mmu.c.patch || true
-            fi
-
-            # Apply additional SUSFS patches for Android 13 5.15 compatibility
-            if [[ "${{ inputs.android_version }}" == "android13" && "${{ inputs.kernel_version }}" == "5.15" ]] && [[ ${{ inputs.sub_level }} -le 41 ]]; then
-              cp $KERNEL_PATCHES/ksu/susfs_fix_patches/v${SUSFS_VERSION}/fix_fdinfo.c.patch ./
-              patch -p1 < fix_fdinfo.c.patch || true
-              cp $KERNEL_PATCHES/ksu/susfs_fix_patches/v${SUSFS_VERSION}/fix_namespace.c.patch ./w
-              patch -p1 < fix_namespace.c.patch || true
-              cp $KERNEL_PATCHES/ksu/susfs_fix_patches/v${SUSFS_VERSION}/fix_open.c.patch ./
-              patch -p1 < fix_open.c.patch || true
-              sed -i 's/i_uid_into_mnt(i_user_ns(inode), inode)/i_uid_into_mnt(inode->i_sb->s_user_ns, inode)/g' fs/susfs.c
-            fi
-            ;;
-        esac
-
     - name: Apply Hooks Patches
       if: false
       working-directory: ${{ env.KERNEL_ROOT }}/common
@@ -461,10 +421,6 @@ jobs:
         CONFIG_KSU=y
         
         CONFIG_KSU_SUSFS=y
-        
-        #CONFIG_KPROBES=y
-        #CONFIG_HAVE_KPROBES=y
-        #CONFIG_KPROBE_EVENTS=y
 
         # Mountify Support
         CONFIG_TMPFS_XATTR=y

+ 1 - 0
temp_patches

@@ -0,0 +1 @@
+Subproject commit 07b48406541109978a89f0f6c5ff013afb8129d0