diff --git a/docs/changes.txt b/docs/changes.txt index 4b3b15b72..1938cbed3 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -117,6 +117,7 @@ ## - AMD Driver: Updated requirements for AMD Windows drivers to "AMD Adrenalin Edition" (23.7.2 or later) and "AMD HIP SDK" (23.Q3 or later) +- Alias Devices: Prevents hashcat, when started with x86_64 emulation on Apple Silicon, from showing the Apple M1 OpenCL CPU as an alias for the Apple M1 Metal GPU - Apple Driver: Automatically enable GPU support on Apple OpenCL instead of CPU support - Apple Driver: Updated requirements to use Apple OpenCL API to macOS 13.0 - use - Backend: Updated filename chksum format to prevent invalid cache on Apple Silicon when switching arch diff --git a/src/backend.c b/src/backend.c index e7f4733b3..a8f475fc4 100644 --- a/src/backend.c +++ b/src/backend.c @@ -70,6 +70,15 @@ static bool is_same_device (const hc_device_param_t *src, const hc_device_param_ // Metal can't have aliases if ((src->is_metal == true) && (dst->is_metal == true)) return false; + + // But Metal and OpenCL can have aliases + + if ((src->is_metal == true) && (dst->is_opencl == true)) + { + // Prevents hashcat, when started with x86_64 emulation on Apple Silicon, from showing the Apple M1 OpenCL CPU as an alias for the Apple M1 Metal GPU + + if (src->opencl_device_type != dst->opencl_device_type) return false; + } #endif // But OpenCL can have aliases