Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# Changelog

## Unreleased

- Added successful Force-build functional-test reports for SK hynix BC511 and Samsung PM991.
- Updated the validation boundary: the Force build now has hardware-success reports, while detailed model, firmware, platform, and stress-test matrices remain unrecorded.

## 1.8.1 — 2026-08-12

- Lowered the declared minimum Lilu dependency from 1.7.2 to the actual API floor, 1.6.1.
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

English | [简体中文](README_CN.md)

An automatic Lilu compatibility plugin that fixes an `IONVMeFamily` Identify-timeout kernel panic affecting tested SK hynix PC711 and BC711 NVMe drives on older macOS releases.
An automatic Lilu compatibility plugin that fixes an `IONVMeFamily` Identify-timeout kernel panic affecting tested SK hynix PC711, BC711, and BC511 drives and Samsung PM991 drives on older macOS releases.

> **New finding: PC711 works natively on macOS 26.** The same physical PC711 was identified by Apple `IONVMeFamily` on macOS 26.5.1 (25F80 / Darwin 25.5.0), with working I/O and sleep/wake. Neither PC711Probe nor NVMeFix was required. PC711Probe does not load on macOS 26.

Expand All @@ -18,7 +18,7 @@ An automatic Lilu compatibility plugin that fixes an `IONVMeFamily` Identify-tim

## Verified result

PC711Probe has now been reported working with one PC711 (`SKHynix_HFS512GDE9X084N`) and two BC711 models (`HFM512GD3JX016N` and `HFM512GD3JX013N`). The PC711 completed the full macOS 11–15 matrix and extended macOS 15.7.9 validation below; both 512 GB BC711 variants also passed functional testing. The former Identify/command timeout panic after roughly 75 seconds did not recur.
PC711Probe has now been reported working with one PC711 (`SKHynix_HFS512GDE9X084N`), two BC711 models (`HFM512GD3JX016N` and `HFM512GD3JX013N`), a BC511, and a Samsung PM991. The PC711 completed the full macOS 11–15 matrix and extended macOS 15.7.9 validation below. The BC711 models passed functional testing with the standard build; BC511 and PM991 passed functional testing with the Force build. The former Identify/command timeout panic after roughly 75 seconds did not recur.

![PC711 running macOS 15.6.1 with TRIM, PCIe link details, and measured disk performance](docs/images/macos15-installed-performance.png)

Expand All @@ -35,7 +35,7 @@ PC711Probe has now been reported working with one PC711 (`SKHynix_HFS512GDE9X084
| Native OS | macOS 26.5.1, build 25F80, Darwin 25.5.0 |
| Boot environment | OpenCore 1.0.8, Lilu 1.7.3 |

Additional successful BC711 model strings: `HFM512GD3JX016N` and `HFM512GD3JX013N`. Their detailed firmware, platform, and stress-test matrices have not yet been recorded.
Additional successful reports: BC711 `HFM512GD3JX016N` and `HFM512GD3JX013N` with the standard build, plus SK hynix BC511 and Samsung PM991 with the Force build. Detailed model strings, firmware, platforms, and stress-test matrices have not been recorded for every reported drive.

## Two build variants

Expand All @@ -44,7 +44,7 @@ Version 1.8.0 and later build two mutually exclusive Kexts:
| Kext | Matching | Intended use |
|---|---|---|
| `PC711Probe.kext` | PCI `1C5C:174A` and NVMe class `01:08:02` | Recommended default for known PC711/BC711 174A systems |
| `PC711ProbeForce.kext` | Any PCI Vendor/Device with NVMe class `01:08:02` | Opt-in fallback for an affected drive with a different PCI ID |
| `PC711ProbeForce.kext` | Any PCI Vendor/Device with NVMe class `01:08:02` | Opt-in fallback for a different PCI ID; functionally tested on BC511 and PM991 |

The model string is unavailable until the first Identify succeeds, so neither build can select by model name. The Force build removes the PCI Vendor/Device gate from both the early IOKit personality and the runtime route; it therefore applies to every NVMe controller in the machine, including controllers that may not need the patch. The two Kexts deliberately share one bundle identifier and must never be enabled together.

Expand Down Expand Up @@ -97,7 +97,7 @@ Outputs: `build/Debug/PC711Probe.kext` and `build/Debug/PC711ProbeForce.kext`

Recovery boot is verified on macOS 11–14. A complete macOS 15.6.1 installation, normal system boot, namespace/partition publication, PCIe 3.0 x4 link, reported TRIM support, S.M.A.R.T. status, and a 2766.1/3005.9 MB/s write/read benchmark are verified on the tested PC711. On macOS 15.7.9, the same drive also passed 96 GiB of sequential write/read/two-pass SHA-256 validation, dual 8 GiB parallel I/O, 20,000 small-file operations, three sleep/wake cycles, three reboots, and APFS verification without a panic, NVMe timeout, I/O error, media loss, or hash mismatch.

The deepest matrix covers one physical PC711 (`SKHynix_HFS512GDE9X084N`), firmware `41010C22`, on one AMD platform. Two BC711 models, `HFM512GD3JX016N` and `HFM512GD3JX013N`, have also passed functional testing, but their detailed firmware/platform matrices and the same extended workload have not yet been recorded. The Force build is compile/static-validated but has not yet received separate hardware validation. Keep a rollback EFI and data backup for the first test, and submit independent results through [GitHub Issues](https://github.com/hrx114514x/PC711Probe/issues).
The deepest matrix covers one physical PC711 (`SKHynix_HFS512GDE9X084N`), firmware `41010C22`, on one AMD platform. Two BC711 models, `HFM512GD3JX016N` and `HFM512GD3JX013N`, have also passed functional testing with the standard build. BC511 and PM991 have passed functional testing with the Force build, providing its first hardware-success reports. Detailed identifiers, firmware/platform matrices, and the same extended workload have not yet been recorded for those additional drives. Keep a rollback EFI and data backup for the first test, and submit independent results through [GitHub Issues](https://github.com/hrx114514x/PC711Probe/issues).

## License

Expand Down
10 changes: 5 additions & 5 deletions README_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[English](README.md) | 简体中文

用于修复已测 SK hynix PC711 与 BC711 在旧版 macOS 中初始化时发生 `IONVMeFamily` Identify 超时 Kernel Panic 的自动 Lilu 兼容插件。
用于修复已测 SK hynix PC711、BC711、BC511Samsung PM991 在旧版 macOS 中初始化时发生 `IONVMeFamily` Identify 超时 Kernel Panic 的自动 Lilu 兼容插件。

> **新发现:PC711 在 macOS 26 已经原生免驱。** 同一块实机 PC711 在 macOS 26.5.1(25F80 / Darwin 25.5.0)中可由 Apple `IONVMeFamily` 正常完成识别、读写和睡眠唤醒,不需要 PC711Probe 或 NVMeFix。PC711Probe 不在 macOS 26 加载。

Expand All @@ -18,7 +18,7 @@

## 已验证结果

PC711Probe 目前已有一个 PC711(`SKHynix_HFS512GDE9X084N`)和两个 BC711(`HFM512GD3JX016N`、`HFM512GD3JX013N`)测试通过。PC711 完成了 macOS 11–15 全矩阵与下述 macOS 15.7.9 扩展验证;两个 512 GB BC711 也已通过功能测试。原先约 75 秒后的 Identify/命令超时 KP 不再出现。
PC711Probe 目前已有一个 PC711(`SKHynix_HFS512GDE9X084N`)、两个 BC711(`HFM512GD3JX016N`、`HFM512GD3JX013N`)、一个 BC511 和一个 Samsung PM991 测试通过。PC711 完成了 macOS 11–15 全矩阵与下述 macOS 15.7.9 扩展验证;两个 BC711 使用标准版通过功能测试,BC511 与 PM991 使用 Force 版通过功能测试。原先约 75 秒后的 Identify/命令超时 KP 不再出现。

![PC711 运行 macOS 15.6.1,并显示 TRIM、PCIe 链路和实测磁盘性能](docs/images/macos15-installed-performance.png)

Expand All @@ -35,7 +35,7 @@ PC711Probe 目前已有一个 PC711(`SKHynix_HFS512GDE9X084N`)和两个 BC71
| 原生系统 | macOS 26.5.1,Build 25F80,Darwin 25.5.0 |
| 引导环境 | OpenCore 1.0.8,Lilu 1.7.3 |

新增成功 BC711 型号:`HFM512GD3JX016N``HFM512GD3JX013N`。两者的详细固件、平台与压力测试矩阵尚未记录
新增成功记录:BC711 `HFM512GD3JX016N``HFM512GD3JX013N` 使用标准版通过;SK hynix BC511 与 Samsung PM991 使用 Force 版通过。并非每一项报告都已记录完整型号字符串、固件、平台与压力测试矩阵

## 两个并列版本

Expand All @@ -44,7 +44,7 @@ v1.8.0 及后续版本会构建两个互斥 Kext:
| Kext | 匹配方式 | 用途 |
|---|---|---|
| `PC711Probe.kext` | PCI `1C5C:174A` 且 NVMe class `01:08:02` | 已知 PC711/BC711 174A 系统的推荐默认版 |
| `PC711ProbeForce.kext` | 任意 PCI Vendor/Device,只要 NVMe class 为 `01:08:02` | 故障硬盘 PCI ID 不同时的可选后备版 |
| `PC711ProbeForce.kext` | 任意 PCI Vendor/Device,只要 NVMe class 为 `01:08:02` | PCI ID 不同时的可选后备版;BC511、PM991 已通过功能测试 |

型号字符串必须等第一次 Identify 成功后才能读取,因此两个版本都无法按型号选择。Force 版同时从早期 IOKit personality 和运行时路由中移除 PCI Vendor/Device 限制,因此会影响机器中所有 NVMe 控制器,包括本来不需要补丁的设备。两个 Kext 故意共用同一 Bundle ID,严禁同时启用。

Expand Down Expand Up @@ -97,7 +97,7 @@ cd PC711Probe

macOS 11–14 Recovery 已通过启动验证;macOS 15.6.1 已完成完整安装、正常进入系统、namespace/分区发布、PCIe 3.0 x4 链路、TRIM 支持与 S.M.A.R.T. 状态确认,并实测写入 2766.1 MB/s、读取 3005.9 MB/s。在 macOS 15.7.9 中,同一块硬盘又通过了 96 GiB 顺序写入/读取/两次 SHA-256 校验、双路 8 GiB 并行 I/O、2 万个小文件、3 次睡眠唤醒、3 次重启和 APFS 校验,未发现 KP、NVMe 超时、I/O 错误、掉盘或哈希不一致。

最深入的矩阵仍只覆盖一块 PC711(`SKHynix_HFS512GDE9X084N`)、固件 `41010C22` 和一个 AMD 平台。两个 BC711 型号 `HFM512GD3JX016N` 与 `HFM512GD3JX013N` 也已通过功能测试,但其详细固件/平台矩阵与同等扩展负载尚未记录。Force 版已通过编译与静态检查,但尚未单独完成实机验证。首次使用请保留回滚 EFI 和数据备份,并通过 [GitHub Issues](https://github.com/hrx114514x/PC711Probe/issues) 提交独立测试结果。
最深入的矩阵仍只覆盖一块 PC711(`SKHynix_HFS512GDE9X084N`)、固件 `41010C22` 和一个 AMD 平台。两个 BC711 型号 `HFM512GD3JX016N` 与 `HFM512GD3JX013N` 使用标准版通过功能测试;BC511 与 PM991 使用 Force 版通过功能测试,构成 Force 版首批实机成功记录。这些新增硬盘的完整标识、固件/平台矩阵与同等扩展负载尚未全部记录。首次使用请保留回滚 EFI 和数据备份,并通过 [GitHub Issues](https://github.com/hrx114514x/PC711Probe/issues) 提交独立测试结果。

## 许可

Expand Down
2 changes: 1 addition & 1 deletion docs/DEVELOPMENT.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,4 +61,4 @@ The combined patch removes the timeout across the tested macOS 11–15 Recovery

Post-release testing on macOS 15.7.9 added three 32 GiB write/read/two-pass SHA-256 rounds, dual 8 GiB parallel I/O, 20,000 small-file operations, three sleep/wake cycles, three reboots, and APFS verification. All completed without a panic, NVMe timeout, I/O error, media loss, or hash mismatch.

Two BC711 models, `HFM512GD3JX016N` and `HFM512GD3JX013N`, have subsequently passed functional testing, showing that the compatibility path is not limited to the original PC711 model. Their detailed firmware/platform matrices and extended workload results have not yet been recorded. The Force build is compile/static-validated but not yet separately hardware-validated. PC711Probe remains a compatibility patch rather than a replacement NVMe driver.
Two BC711 models, `HFM512GD3JX016N` and `HFM512GD3JX013N`, subsequently passed functional testing with the standard build. BC511 and Samsung PM991 then passed functional testing with the Force build, providing hardware evidence that the same compatibility path can work beyond PCI `1C5C:174A`. Detailed identifiers, firmware/platform matrices, and extended workload results have not yet been recorded for every additional drive. PC711Probe remains a compatibility patch rather than a replacement NVMe driver.
2 changes: 1 addition & 1 deletion docs/DEVELOPMENT.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,4 +61,4 @@ Identify、队列、namespace 和存储 I/O 仍由 Apple `IONVMeFamily` 完成

发布后又在 macOS 15.7.9 完成了 3 轮 32 GiB 写入/读取/两次 SHA-256 校验、双路 8 GiB 并行 I/O、2 万个小文件、3 次睡眠唤醒、3 次重启和 APFS 校验,未出现 KP、NVMe 超时、I/O 错误、掉盘或哈希不一致。

两个 BC711 型号 `HFM512GD3JX016N` 和 `HFM512GD3JX013N` 后续也已通过功能测试,证明该兼容路径不只适用于原 PC711 型号。两者的详细固件/平台矩阵与扩展负载结果尚未记录。Force 版已通过编译与静态检查,但尚未单独完成实机验证。PC711Probe 仍然是兼容补丁,不是替代 NVMe 驱动。
两个 BC711 型号 `HFM512GD3JX016N` 和 `HFM512GD3JX013N` 后续使用标准版通过功能测试。BC511 与 Samsung PM991 又使用 Force 版通过功能测试,提供了同一兼容路径可用于 PCI `1C5C:174A` 之外设备的实机证据。这些新增硬盘尚未全部记录完整标识、固件/平台矩阵与扩展负载结果。PC711Probe 仍然是兼容补丁,不是替代 NVMe 驱动。
2 changes: 1 addition & 1 deletion docs/INSTALL.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ English | [简体中文](INSTALL.zh-CN.md)
5. Temporarily disable NVMeFix for the first test so results are not mixed.
6. Validate the configuration with the `ocvalidate` matching the OpenCore version.

> PC711 `SKHynix_HFS512GDE9X084N` and BC711 `HFM512GD3JX016N` / `HFM512GD3JX013N` have reported successful results. The deepest matrix belongs to the PC711. The Force build is not yet separately hardware-validated.
> PC711 `SKHynix_HFS512GDE9X084N` and BC711 `HFM512GD3JX016N` / `HFM512GD3JX013N` have reported successful results with the standard build. BC511 and Samsung PM991 have passed functional testing with the Force build. The deepest matrix still belongs to the PC711; detailed identifiers, firmware, platforms, and extended workloads have not been recorded for every additional drive.

## First boot

Expand Down
2 changes: 1 addition & 1 deletion docs/INSTALL.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
5. 首次验证时暂时停用 NVMeFix,避免混淆结果。
6. 使用与 OpenCore 版本匹配的 `ocvalidate` 检查配置。

> PC711 `SKHynix_HFS512GDE9X084N` 与 BC711 `HFM512GD3JX016N` / `HFM512GD3JX013N` 均已报告成功,其中 PC711 的验证矩阵最完整。Force 版尚未单独完成实机验证
> PC711 `SKHynix_HFS512GDE9X084N` 与 BC711 `HFM512GD3JX016N` / `HFM512GD3JX013N` 已使用标准版报告成功;BC511 与 Samsung PM991 已使用 Force 版通过功能测试。PC711 的验证矩阵仍最完整,其他新增硬盘尚未全部记录完整标识、固件、平台与扩展负载

## 首次启动

Expand Down
Loading