AMD Vanilla (AMD-OSX/AMD_Vanilla, vendored in amd_patches.plist) is an XNU
*processor* patch set. It is applied when profile.cpu_vendor == "amd" and
must never be applied on an Intel CPU — an AMD Radeon GPU on an Intel host
needs no kernel patch.
- hardware.py: when the Windows CPU marketing name contains neither "intel"
nor "amd", fall back to Win32_Processor.Manufacturer (AuthenticAMD /
GenuineIntel) so a Ryzen/Threadripper still routes into the AMD path.
- config_gen.py: _amd_kernel_patches() now returns [] for any non-AMD CPU
as a hard guard, plus a comment on why GPU vendor is irrelevant here.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
(cherry picked from commit 389e8f47aa007528acb3368b158510434dbdddfe)
Problem
_detect_cpu_windows() sets the vendor from the marketing name string:
Some CPUs (engineering samples, a few OEM strings) don't contain "intel" or "amd" → vendor = "unknown" → the build is treated as Intel → no AMD Vanilla kernel patches → kernel panic on an AMD box.
Fix
Two files, ~17 lines. No test changes needed.