Re: [PATCH v3 06/10] crash_dump: Only use kexec_dprintk during the kexec_file_load syscall

Sourabh Jain <[email protected]>
Newsgroups org.infradead.lists.kexec,org.kernel.vger.linux-kernel
Message-ID <[email protected]>

On 29/07/26 09:06, Coiby Xu wrote:
> kexec_dprintk will only be activated by "kexec -d" during
> kexec_file_load syscall. So use pr_* outside of this syscall.
>
> Fixes: 9ebfa8dcaea7 ("crash_dump: reuse saved dm crypt keys for CPU/memory hot-plugging")
> Fixes: 62f17d9df692 ("crash_dump: retrieve dm crypt keys in kdump kernel")
> Signed-off-by: Coiby Xu <[email protected]>
> ---
>   kernel/crash_dump_dm_crypt.c | 15 +++++++--------
>   1 file changed, 7 insertions(+), 8 deletions(-)
>
> diff --git a/kernel/crash_dump_dm_crypt.c b/kernel/crash_dump_dm_crypt.c
> index 9a64e2d6841b..3ee01996778f 100644
> --- a/kernel/crash_dump_dm_crypt.c
> +++ b/kernel/crash_dump_dm_crypt.c
> @@ -75,10 +75,10 @@ static int add_key_to_keyring(struct dm_crypt_key *dm_key,
>   	if (!IS_ERR(key_ref)) {
>   		r = key_ref_to_ptr(key_ref)->serial;
>   		key_ref_put(key_ref);
> -		kexec_dprintk("Success adding key %s", dm_key->key_desc);
> +		pr_debug("Success adding key %s", dm_key->key_desc);

Missing a newline in the above debug message.

>   	} else {
>   		r = PTR_ERR(key_ref);
> -		kexec_dprintk("Error when adding key");
> +		pr_warn("Error when adding key");
>   	}

Missing a newline. Also, I think printing the error code (r) would be 
helpful.

Apart from these two minor nits, the changes look good to me.

Reviewed-by: Sourabh Jain <[email protected]>

>   
>   	return r;
> @@ -128,19 +128,19 @@ static int restore_dm_crypt_keys_to_thread_keyring(void)
>   	keyring_ref =
>   		lookup_user_key(KEY_SPEC_USER_KEYRING, 0x01, KEY_NEED_WRITE);
>   	if (IS_ERR(keyring_ref)) {
> -		kexec_dprintk("Failed to get the user keyring\n");
> +		pr_warn("Failed to get the user keyring\n");
>   		return PTR_ERR(keyring_ref);
>   	}
>   
>   	addr = dm_crypt_keys_addr;
>   	dm_crypt_keys_read((char *)&key_count, sizeof(key_count), &addr);
>   	if (key_count > KEY_NUM_MAX) {
> -		kexec_dprintk("Failed to read the number of dm-crypt keys\n");
> +		pr_warn("Failed to read the number of dm-crypt keys\n");
>   		ret = -1;
>   		goto out;
>   	}
>   
> -	kexec_dprintk("There are %u keys\n", key_count);
> +	pr_debug("There are %u keys\n", key_count);
>   	addr = dm_crypt_keys_addr;
>   
>   	keys_header_size = get_keys_header_size(key_count);
> @@ -154,7 +154,7 @@ static int restore_dm_crypt_keys_to_thread_keyring(void)
>   
>   	for (int i = 0; i < keys_header->total_keys; i++) {
>   		key = &keys_header->keys[i];
> -		kexec_dprintk("Get key (size=%u)\n", key->key_size);
> +		pr_debug("Get key (size=%u)\n", key->key_size);
>   		add_key_to_keyring(key, keyring_ref);
>   	}
>   
> @@ -309,8 +309,7 @@ static ssize_t config_keys_reuse_store(struct config_item *item,
>   	int r;
>   
>   	if (!kexec_crash_image || !kexec_crash_image->dm_crypt_keys_addr) {
> -		kexec_dprintk(
> -			"dm-crypt keys haven't be saved to crash-reserved memory\n");
> +		pr_debug("dm-crypt keys haven't be saved to crash-reserved memory\n");
>   		return -EINVAL;
>   	}
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.