[PATCH] kexec_file: skip checksum verification when relocations aren't needed
Baoquan He
baoquan.he at linux.dev
Tue Jun 2 02:00:40 PDT 2026
On 06/01/26 at 09:11pm, Michal Clapinski wrote:
...snip...
> + /*
> + * If all segments were loaded into contiguous memory, there will be no
> + * relocations. In that case there is no risk of memory corruption by
> + * uncancelled DMA and we can skip checksum calculation.
> + */
> + for (i = 0; i < image->nr_segments; i++) {
> + if (!image->segment_cma[i]) {
> + can_skip_checksum = false;
> + break;
> + }
> + }
> +
> + if (can_skip_checksum) {
> + pr_info("disabling checksum verification in purgatory\n");
Use pr_debug() or kexec_dprintk() instead because this is unnecessary to
note users if it's a normal action?
Except of this, the overral looks good to me.
Acked-by: Baoquan He <baoquan.he at linux.dev>
> + goto skip_checksum;
> + }
> +
> for (j = i = 0; i < image->nr_segments; i++) {
> struct kexec_segment *ksegment;
>
> @@ -867,6 +885,7 @@ static int kexec_calculate_store_digests(struct kimage *image)
> j++;
> }
>
> +skip_checksum:
> sha256_final(&sctx, digest);
>
> ret = kexec_purgatory_get_set_symbol(image, "purgatory_sha_regions",
> --
> 2.54.0.929.g9b7fa37559-goog
>
More information about the kexec
mailing list