|
@@ -317,6 +317,12 @@ static enum ucode_state request_microcode_fw(int cpu, struct device *device)
|
|
|
return UCODE_NFOUND;
|
|
|
}
|
|
|
|
|
|
+ if (*(u32 *)firmware->data != UCODE_MAGIC) {
|
|
|
+ printk(KERN_ERR "microcode: invalid UCODE_MAGIC (0x%08x)\n",
|
|
|
+ *(u32 *)firmware->data);
|
|
|
+ return UCODE_ERROR;
|
|
|
+ }
|
|
|
+
|
|
|
ret = generic_load_microcode(cpu, firmware->data, firmware->size);
|
|
|
|
|
|
release_firmware(firmware);
|