physmap-fault — Phần mềm
Thông báo do kernel ghi (osfmk/arm64/sleh.c) khi CPU báo, ở chế độ kernel, một lỗi truy cập (trang chưa được ánh xạ, cờ truy cập hoặc quyền) tại một địa chỉ trong “physical aperture” (physmap), vùng ánh xạ toàn bộ RAM. Kernel không bao giờ mong đợi lỗi ở vùng này: một đoạn mã kernel đã đọc hoặc ghi vào một trang không (hoặc không còn) được ánh xạ, qua một con trỏ cũ hoặc bị hỏng. Vì vậy trước hết đây là một dạng lỗi phần mềm của kernel, không phải một driver cụ thể; hỏng bộ nhớ do phần cứng (một bit bị đảo trong con trỏ) có thể xảy ra nhưng hiếm và không lặp lại y hệt. Trên hai log iPhone 16 (iOS 18.6.2) đã phân tích: cùng một lệnh gây lỗi dù địa chỉ khác nhau (KASLR), cùng tiến trình (mediaplaybackd), cùng đường đi qua apfs, sao chép từ một trang physmap chưa ánh xạ (ESR 0x96000007 = lỗi dịch địa chỉ cấp 3): panic lặp lại được trên một đường mã cụ thể, nên nghiêng về lỗi iOS hơn là bộ nhớ hay SoC.
iPhone
Phần mềm trước (lỗi kernel iOS / hệ thống tệp); chỉ nghi bộ nhớ hoặc main nếu vẫn lỗi trên iOS sạch
Kiểm tra đầu tiên
Cập nhật iOS; nếu panic quay lại, restore bằng máy tính thành máy mới không dùng bản sao lưu, và ghi lại tiến trình liên quan (“panicked task”): nếu lần nào cũng giống nhau (ví dụ mediaplaybackd, phát media), tìm ứng dụng hoặc nội dung gây ra.
Nguồn
- Apple XNU – sleh.c, handle_kernel_abort(): “Ensure no faults in the physical aperture…” → panic_with_thread_kernel_state("Unexpected fault in kernel physical aperture") ↗
- Apple XNU – proc_reg.h (mã trạng thái lỗi: FSC_TRANSLATION_FAULT_L3 = 0x07) ↗
- Apple Developer Forums #124127 – iOS system panic “Kernel data abort”: trả lời của kỹ sư DTS (kernel panic = lỗi phía hệ thống, cần báo cáo kèm sysdiagnose) ↗
- iFixit – iPhone Kernel Panics (wiki): kernel panic, “phần mềm trước” khi không có gì chỉ ra linh kiện ↗