diff --git a/payloads/Config/config.plist b/payloads/Config/config.plist
index c2186148f..db5b1595f 100644
--- a/payloads/Config/config.plist
+++ b/payloads/Config/config.plist
@@ -1269,12 +1269,30 @@
ExecutablePath
Contents/MacOS/NoAVXFSCompressionTypeZlib
MaxKernel
-
+ 21.99.99
MinKernel
21.5.0
PlistPath
Contents/Info.plist
+
+ Arch
+ x86_64
+ BundlePath
+ NoAVXFSCompressionTypeZlib-AVXpel.kext
+ Comment
+ Work-around 13.0+ Zlib kernel panic
+ Enabled
+
+ ExecutablePath
+ Contents/MacOS/NoAVXFSCompressionTypeZlib
+ MaxKernel
+
+ MinKernel
+ 22.0.0
+ PlistPath
+ Contents/Info.plist
+
Arch
x86_64
diff --git a/payloads/Kexts/Misc/NoAVXFSCompressionTypeZlib-AVXpel-v12.6.zip b/payloads/Kexts/Misc/NoAVXFSCompressionTypeZlib-AVXpel-v12.6.zip
new file mode 100644
index 000000000..b25c313eb
Binary files /dev/null and b/payloads/Kexts/Misc/NoAVXFSCompressionTypeZlib-AVXpel-v12.6.zip differ
diff --git a/resources/build.py b/resources/build.py
index f479019ac..656f7d045 100644
--- a/resources/build.py
+++ b/resources/build.py
@@ -268,6 +268,7 @@ class BuildOpenCore:
# To verify the non-AVX kext is used, check IOService for 'com_apple_AppleFSCompression_NoAVXCompressionTypeZlib'
if smbios_data.smbios_dictionary[self.model]["CPU Generation"] < cpu_data.cpu_data.sandy_bridge.value:
self.enable_kext("NoAVXFSCompressionTypeZlib.kext", self.constants.apfs_zlib_version, self.constants.apfs_zlib_path)
+ self.enable_kext("NoAVXFSCompressionTypeZlib-AVXpel.kext", self.constants.apfs_zlib_v2_version, self.constants.apfs_zlib_v2_path)
if not self.constants.custom_model and (self.constants.allow_oc_everywhere is True or self.model in model_array.MacPro):
# Use Innie's same logic:
diff --git a/resources/constants.py b/resources/constants.py
index ad0b8f444..666da98d6 100644
--- a/resources/constants.py
+++ b/resources/constants.py
@@ -56,6 +56,7 @@ class Constants:
self.apple_isight_version = "1.0.0" # AppleiSight
self.apple_raid_version = "1.0.0" # AppleRAIDCard
self.apfs_zlib_version = "12.3.1" # NoAVXFSCompressionTypeZlib
+ self.apfs_zlib_v2_version = "12.6" # NoAVXFSCompressionTypeZlib (patched with AVXpel)
self.multitouch_version = "1.0.0" # AppleUSBMultitouch
self.topcase_version = "1.0.0" # AppleUSBTopCase
self.intel_82574l_version = "1.0.0" # Intel82574L
@@ -331,6 +332,10 @@ class Constants:
def apfs_zlib_path(self):
return self.payload_kexts_path / Path(f"Misc/NoAVXFSCompressionTypeZlib-v{self.apfs_zlib_version}.zip")
+ @property
+ def apfs_zlib_v2_path(self):
+ return self.payload_kexts_path / Path(f"Misc/NoAVXFSCompressionTypeZlib-AVXpel-v{self.apfs_zlib_v2_version}.zip")
+
@property
def multitouch_path(self):
return self.payload_kexts_path / Path(f"Misc/AppleUSBMultitouch-v{self.multitouch_version}.zip")