Lines Matching full:patch

125  * microcode patch we found to match.
135 * Microcode patch container file is prepended to the initrd in cpio
146 * 2. To match which patches to load because the patch revision ID
253 pr_err("No sha256 digest for patch ID: 0x%x found\n", patch_id); in verify_sha256_digest()
260 pr_err("Patch 0x%x SHA256 digest mismatch!\n", patch_id); in verify_sha256_digest()
391 * Check whether there is a valid, non-truncated microcode patch section at the
394 * On success, @sh_psize returns the patch size according to the section header,
403 ucode_dbg("Truncated patch section.\n"); in __verify_patch_section()
418 ucode_dbg("Patch of size %u too short.\n", p_size); in __verify_patch_section()
429 * a patch of the indicated @sh_psize (and also whether this size does not
465 * Verify the patch in @buf.
469 * positive: patch is not for this family, skip it
491 * Check if the remaining buffer is big enough to contain a patch of in verify_patch()
495 ucode_dbg("Patch of size %u truncated.\n", sh_psize); in verify_patch()
500 ucode_dbg("Per-family patch size mismatch.\n"); in verify_patch()
508 pr_err("Patch-ID 0x%08x: chipset-specific code unsupported.\n", mc_hdr->patch_id); in verify_patch()
515 ucode_dbg("Patch-ID 0x%08x: family: 0x%x\n", mc_hdr->patch_id, patch_fam); in verify_patch()
557 * doesn't contain a patch for the CPU, scan through the whole container in parse_container()
577 * Patch verification failed, skip to the next container, if in parse_container()
579 * found a patch already. If so, use it. in parse_container()
598 /* Skip patch section header too: */ in parse_container()
605 * If we have found a patch (desc->mc), it means we're looking at the in parse_container()
606 * container which has a patch for this CPU so return 0 to mean, @ucode in parse_container()
658 * Flush next page too if patch image is crossing a page in __apply_microcode_amd()
668 /* verify patch application was successful */ in __apply_microcode_amd()
718 * patch container file in initrd, traverse equivalent cpu table, look for a
719 * matching microcode patch, and update, all in initrd memory in place.
774 /* Zen and newer hardcode the f/m/s in the patch ID */ in patch_cpus_equivalent()
810 /* Zen and newer hardcode the f/m/s in the patch ID */ in patch_newer()
837 /* we already have the latest patch */ in update_cache()
849 /* no patch found, add it */ in update_cache()
908 * a patch could have been loaded early, set uci->mc so that in collect_cpu_info_amd()
940 /* need to apply patch? */ in apply_microcode_amd()
1020 * we can skip over the next patch. If we return a negative value, we
1029 struct ucode_patch *patch; in verify_and_add_patch() local
1037 patch = kzalloc(sizeof(*patch), GFP_KERNEL); in verify_and_add_patch()
1038 if (!patch) { in verify_and_add_patch()
1039 pr_err("Patch allocation failure.\n"); in verify_and_add_patch()
1043 patch->data = kmemdup(fw + SECTION_HDR_SIZE, *patch_size, GFP_KERNEL); in verify_and_add_patch()
1044 if (!patch->data) { in verify_and_add_patch()
1045 pr_err("Patch data allocation failure.\n"); in verify_and_add_patch()
1046 kfree(patch); in verify_and_add_patch()
1049 patch->size = *patch_size; in verify_and_add_patch()
1054 INIT_LIST_HEAD(&patch->plist); in verify_and_add_patch()
1055 patch->patch_id = mc_hdr->patch_id; in verify_and_add_patch()
1056 patch->equiv_cpu = proc_id; in verify_and_add_patch()
1059 __func__, patch->patch_id, proc_id); in verify_and_add_patch()
1062 update_cache(patch); in verify_and_add_patch()