summaryrefslogtreecommitdiff
path: root/arch/x86/lib/zimage.c
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2021-01-24 20:06:09 +0300
committerBin Meng <bmeng.cn@gmail.com>2021-02-01 10:33:25 +0300
commit06c085c0d2a1ae33b1772d04dec9b1f66af12f14 (patch)
treef46984be14b1438aca171897fc5eb968c280c0f3 /arch/x86/lib/zimage.c
parent577c4ad0550825fa94c44ebca23523f05faecf17 (diff)
downloadu-boot-06c085c0d2a1ae33b1772d04dec9b1f66af12f14.tar.xz
x86: zimage: Improve command-line debug handling
At present if the command line is very long it is truncated by the printf() statement, which works within a limited buffer. Use puts() instead. Also show better debugging with the command-line setup fails. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Diffstat (limited to 'arch/x86/lib/zimage.c')
-rw-r--r--arch/x86/lib/zimage.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/arch/x86/lib/zimage.c b/arch/x86/lib/zimage.c
index 3e9ee12400..602788e016 100644
--- a/arch/x86/lib/zimage.c
+++ b/arch/x86/lib/zimage.c
@@ -109,8 +109,11 @@ static void build_command_line(char *command_line, int auto_boot)
if (env_command_line)
strcat(command_line, env_command_line);
-
- printf("Kernel command line: \"%s\"\n", command_line);
+#ifdef DEBUG
+ printf("Kernel command line:");
+ puts(command_line);
+ printf("\n");
+#endif
}
static int kernel_magic_ok(struct setup_header *hdr)
@@ -354,7 +357,8 @@ int setup_zimage(struct boot_params *setup_base, char *cmd_line, int auto_boot,
build_command_line(cmd_line, auto_boot);
ret = bootm_process_cmdline(cmd_line, max_size, BOOTM_CL_ALL);
if (ret) {
- printf("Cmdline setup failed (err=%d)\n", ret);
+ printf("Cmdline setup failed (max_size=%x, bootproto=%x, err=%d)\n",
+ max_size, bootproto, ret);
return ret;
}
printf("Kernel command line: \"");