Message ID | 20191008135537.197867-4-slp@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Introduce the microvm machine type | expand |
Hi Sergio, On 10/8/19 3:55 PM, Sergio Lopez wrote: > Fix code style issues detected by checkpatch.pl on functions that will > be moved out to x86.c on the next patch. > > Signed-off-by: Sergio Lopez <slp@redhat.com> > --- > hw/i386/pc.c | 86 ++++++++++++++++++++++++++++------------------------ > 1 file changed, 46 insertions(+), 40 deletions(-) > > diff --git a/hw/i386/pc.c b/hw/i386/pc.c > index fd08c6704b..f19d4ac0bd 100644 > --- a/hw/i386/pc.c > +++ b/hw/i386/pc.c > @@ -68,6 +68,7 @@ > #include "qemu/config-file.h" > #include "qemu/error-report.h" > #include "qemu/option.h" > +#include "qemu/cutils.h" Hmm this line seems to belong to the next patch, it is not a style issue cleanup. > #include "hw/acpi/acpi.h" > #include "hw/acpi/cpu_hotplug.h" > #include "hw/boards.h" > @@ -866,7 +867,8 @@ static void handle_a20_line_change(void *opaque, int irq, int level) > x86_cpu_set_a20(cpu, level); > } > > -/* Calculates initial APIC ID for a specific CPU index > +/* > + * Calculates initial APIC ID for a specific CPU index OK > * > * Currently we need to be able to calculate the APIC ID from the CPU index > * alone (without requiring a CPU object), as the QEMU<->Seabios interfaces have > @@ -1039,11 +1041,18 @@ static void x86_load_linux(PCMachineState *pcms, > const char *kernel_cmdline = machine->kernel_cmdline; > > /* Align to 16 bytes as a paranoia measure */ > - cmdline_size = (strlen(kernel_cmdline)+16) & ~15; > + cmdline_size = (strlen(kernel_cmdline) + 16) & ~15; > > /* load the kernel header */ > f = fopen(kernel_filename, "rb"); > - if (!f || !(kernel_size = get_file_size(f)) || > + if (!f) { > + fprintf(stderr, "qemu: could not open kernel file '%s': %s\n", > + kernel_filename, strerror(errno)); This is not a style change neither :( > + exit(1); > + } > + > + kernel_size = get_file_size(f); > + if (!kernel_size || > fread(header, 1, MIN(ARRAY_SIZE(header), kernel_size), f) != > MIN(ARRAY_SIZE(header), kernel_size)) { > fprintf(stderr, "qemu: could not load kernel '%s': %s\n", > @@ -1052,11 +1061,8 @@ static void x86_load_linux(PCMachineState *pcms, > } > > /* kernel protocol version */ > -#if 0 > - fprintf(stderr, "header magic: %#x\n", ldl_p(header+0x202)); Since unfortunately you need to respin, can you move this change (and the other fprintf(stderr) few lines below) into a separate patch "~Remove commented out code~"? > -#endif > - if (ldl_p(header+0x202) == 0x53726448) { > - protocol = lduw_p(header+0x206); > + if (ldl_p(header + 0x202) == 0x53726448) { > + protocol = lduw_p(header + 0x206); OK > } else { > /* > * This could be a multiboot kernel. If it is, let's stop treating it > @@ -1146,19 +1152,9 @@ static void x86_load_linux(PCMachineState *pcms, > prot_addr = 0x100000; > } > > -#if 0 > - fprintf(stderr, > - "qemu: real_addr = 0x" TARGET_FMT_plx "\n" > - "qemu: cmdline_addr = 0x" TARGET_FMT_plx "\n" > - "qemu: prot_addr = 0x" TARGET_FMT_plx "\n", > - real_addr, > - cmdline_addr, > - prot_addr); > -#endif > - > /* highest address for loading the initrd */ > if (protocol >= 0x20c && > - lduw_p(header+0x236) & XLF_CAN_BE_LOADED_ABOVE_4G) { > + lduw_p(header + 0x236) & XLF_CAN_BE_LOADED_ABOVE_4G) { OK > /* > * Linux has supported initrd up to 4 GB for a very long time (2007, > * long before XLF_CAN_BE_LOADED_ABOVE_4G which was added in 2013), > @@ -1177,7 +1173,7 @@ static void x86_load_linux(PCMachineState *pcms, > */ > initrd_max = UINT32_MAX; > } else if (protocol >= 0x203) { > - initrd_max = ldl_p(header+0x22c); > + initrd_max = ldl_p(header + 0x22c); OK > } else { > initrd_max = 0x37ffffff; > } > @@ -1187,20 +1183,21 @@ static void x86_load_linux(PCMachineState *pcms, > } > > fw_cfg_add_i32(fw_cfg, FW_CFG_CMDLINE_ADDR, cmdline_addr); > - fw_cfg_add_i32(fw_cfg, FW_CFG_CMDLINE_SIZE, strlen(kernel_cmdline)+1); > + fw_cfg_add_i32(fw_cfg, FW_CFG_CMDLINE_SIZE, strlen(kernel_cmdline) + 1); OK > fw_cfg_add_string(fw_cfg, FW_CFG_CMDLINE_DATA, kernel_cmdline); > > if (protocol >= 0x202) { > - stl_p(header+0x228, cmdline_addr); > + stl_p(header + 0x228, cmdline_addr); OK > } else { > - stw_p(header+0x20, 0xA33F); > - stw_p(header+0x22, cmdline_addr-real_addr); > + stw_p(header + 0x20, 0xA33F); > + stw_p(header + 0x22, cmdline_addr - real_addr); OK > } > > /* handle vga= parameter */ > vmode = strstr(kernel_cmdline, "vga="); > if (vmode) { > - unsigned int video_mode; > + long video_mode; > + int ret; > /* skip "vga=" */ > vmode += 4; > if (!strncmp(vmode, "normal", 6)) { > @@ -1210,22 +1207,29 @@ static void x86_load_linux(PCMachineState *pcms, > } else if (!strncmp(vmode, "ask", 3)) { > video_mode = 0xfffd; > } else { > - video_mode = strtol(vmode, NULL, 0); > + ret = qemu_strtol(vmode, NULL, 0, &video_mode); > + if (ret != 0) { > + fprintf(stderr, "qemu: can't parse 'vga' parameter: %s\n", > + strerror(-ret)); Not a style cleanup. > + exit(1); > + } > } > - stw_p(header+0x1fa, video_mode); > + stw_p(header + 0x1fa, video_mode); OK > } > > /* loader type */ > - /* High nybble = B reserved for QEMU; low nybble is revision number. > - If this code is substantially changed, you may want to consider > - incrementing the revision. */ > + /* > + * High nybble = B reserved for QEMU; low nybble is revision number. > + * If this code is substantially changed, you may want to consider > + * incrementing the revision. OK > + */ > if (protocol >= 0x200) { > header[0x210] = 0xB0; > } > /* heap */ > if (protocol >= 0x201) { > - header[0x211] |= 0x80; /* CAN_USE_HEAP */ > - stw_p(header+0x224, cmdline_addr-real_addr-0x200); > + header[0x211] |= 0x80; /* CAN_USE_HEAP */ > + stw_p(header + 0x224, cmdline_addr - real_addr - 0x200); OK > } > > /* load initrd */ > @@ -1257,14 +1261,14 @@ static void x86_load_linux(PCMachineState *pcms, > exit(1); > } > > - initrd_addr = (initrd_max-initrd_size) & ~4095; > + initrd_addr = (initrd_max - initrd_size) & ~4095; OK > > fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_ADDR, initrd_addr); > fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_SIZE, initrd_size); > fw_cfg_add_bytes(fw_cfg, FW_CFG_INITRD_DATA, initrd_data, initrd_size); > > - stl_p(header+0x218, initrd_addr); > - stl_p(header+0x21c, initrd_size); > + stl_p(header + 0x218, initrd_addr); > + stl_p(header + 0x21c, initrd_size); OK > } > > /* load kernel and setup */ > @@ -1272,7 +1276,7 @@ static void x86_load_linux(PCMachineState *pcms, > if (setup_size == 0) { > setup_size = 4; > } > - setup_size = (setup_size+1)*512; > + setup_size = (setup_size + 1) * 512; OK > if (setup_size > kernel_size) { > fprintf(stderr, "qemu: invalid kernel header\n"); > exit(1); > @@ -1310,7 +1314,7 @@ static void x86_load_linux(PCMachineState *pcms, > kernel_size = setup_data_offset + sizeof(struct setup_data) + dtb_size; > kernel = g_realloc(kernel, kernel_size); > > - stq_p(header+0x250, prot_addr + setup_data_offset); > + stq_p(header + 0x250, prot_addr + setup_data_offset); OK > > setup_data = (struct setup_data *)(kernel + setup_data_offset); > setup_data->next = 0; > @@ -1507,7 +1511,8 @@ void x86_cpus_init(PCMachineState *pcms) > > x86_cpu_set_default_version(pcmc->default_cpu_version); > > - /* Calculates the limit to CPU APIC ID values > + /* > + * Calculates the limit to CPU APIC ID values OK > * > * Limit for the APIC ID value, so that all > * CPU APIC IDs are < pcms->apic_id_limit. > @@ -2709,7 +2714,7 @@ static const CPUArchIdList *x86_possible_cpu_arch_ids(MachineState *ms) > /* > * make sure that max_cpus hasn't changed since the first use, i.e. > * -smp hasn't been parsed after it > - */ > + */ Arf OK > assert(ms->possible_cpus->len == max_cpus); > return ms->possible_cpus; > } > @@ -2722,7 +2727,8 @@ static const CPUArchIdList *x86_possible_cpu_arch_ids(MachineState *ms) > > ms->possible_cpus->cpus[i].type = ms->cpu_type; > ms->possible_cpus->cpus[i].vcpus_count = 1; > - ms->possible_cpus->cpus[i].arch_id = x86_cpu_apic_id_from_index(pcms, i); > + ms->possible_cpus->cpus[i].arch_id = > + x86_cpu_apic_id_from_index(pcms, i); OK > x86_topo_ids_from_apicid(ms->possible_cpus->cpus[i].arch_id, > pcms->smp_dies, ms->smp.cores, > ms->smp.threads, &topo); >
diff --git a/hw/i386/pc.c b/hw/i386/pc.c index fd08c6704b..f19d4ac0bd 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -68,6 +68,7 @@ #include "qemu/config-file.h" #include "qemu/error-report.h" #include "qemu/option.h" +#include "qemu/cutils.h" #include "hw/acpi/acpi.h" #include "hw/acpi/cpu_hotplug.h" #include "hw/boards.h" @@ -866,7 +867,8 @@ static void handle_a20_line_change(void *opaque, int irq, int level) x86_cpu_set_a20(cpu, level); } -/* Calculates initial APIC ID for a specific CPU index +/* + * Calculates initial APIC ID for a specific CPU index * * Currently we need to be able to calculate the APIC ID from the CPU index * alone (without requiring a CPU object), as the QEMU<->Seabios interfaces have @@ -1039,11 +1041,18 @@ static void x86_load_linux(PCMachineState *pcms, const char *kernel_cmdline = machine->kernel_cmdline; /* Align to 16 bytes as a paranoia measure */ - cmdline_size = (strlen(kernel_cmdline)+16) & ~15; + cmdline_size = (strlen(kernel_cmdline) + 16) & ~15; /* load the kernel header */ f = fopen(kernel_filename, "rb"); - if (!f || !(kernel_size = get_file_size(f)) || + if (!f) { + fprintf(stderr, "qemu: could not open kernel file '%s': %s\n", + kernel_filename, strerror(errno)); + exit(1); + } + + kernel_size = get_file_size(f); + if (!kernel_size || fread(header, 1, MIN(ARRAY_SIZE(header), kernel_size), f) != MIN(ARRAY_SIZE(header), kernel_size)) { fprintf(stderr, "qemu: could not load kernel '%s': %s\n", @@ -1052,11 +1061,8 @@ static void x86_load_linux(PCMachineState *pcms, } /* kernel protocol version */ -#if 0 - fprintf(stderr, "header magic: %#x\n", ldl_p(header+0x202)); -#endif - if (ldl_p(header+0x202) == 0x53726448) { - protocol = lduw_p(header+0x206); + if (ldl_p(header + 0x202) == 0x53726448) { + protocol = lduw_p(header + 0x206); } else { /* * This could be a multiboot kernel. If it is, let's stop treating it @@ -1146,19 +1152,9 @@ static void x86_load_linux(PCMachineState *pcms, prot_addr = 0x100000; } -#if 0 - fprintf(stderr, - "qemu: real_addr = 0x" TARGET_FMT_plx "\n" - "qemu: cmdline_addr = 0x" TARGET_FMT_plx "\n" - "qemu: prot_addr = 0x" TARGET_FMT_plx "\n", - real_addr, - cmdline_addr, - prot_addr); -#endif - /* highest address for loading the initrd */ if (protocol >= 0x20c && - lduw_p(header+0x236) & XLF_CAN_BE_LOADED_ABOVE_4G) { + lduw_p(header + 0x236) & XLF_CAN_BE_LOADED_ABOVE_4G) { /* * Linux has supported initrd up to 4 GB for a very long time (2007, * long before XLF_CAN_BE_LOADED_ABOVE_4G which was added in 2013), @@ -1177,7 +1173,7 @@ static void x86_load_linux(PCMachineState *pcms, */ initrd_max = UINT32_MAX; } else if (protocol >= 0x203) { - initrd_max = ldl_p(header+0x22c); + initrd_max = ldl_p(header + 0x22c); } else { initrd_max = 0x37ffffff; } @@ -1187,20 +1183,21 @@ static void x86_load_linux(PCMachineState *pcms, } fw_cfg_add_i32(fw_cfg, FW_CFG_CMDLINE_ADDR, cmdline_addr); - fw_cfg_add_i32(fw_cfg, FW_CFG_CMDLINE_SIZE, strlen(kernel_cmdline)+1); + fw_cfg_add_i32(fw_cfg, FW_CFG_CMDLINE_SIZE, strlen(kernel_cmdline) + 1); fw_cfg_add_string(fw_cfg, FW_CFG_CMDLINE_DATA, kernel_cmdline); if (protocol >= 0x202) { - stl_p(header+0x228, cmdline_addr); + stl_p(header + 0x228, cmdline_addr); } else { - stw_p(header+0x20, 0xA33F); - stw_p(header+0x22, cmdline_addr-real_addr); + stw_p(header + 0x20, 0xA33F); + stw_p(header + 0x22, cmdline_addr - real_addr); } /* handle vga= parameter */ vmode = strstr(kernel_cmdline, "vga="); if (vmode) { - unsigned int video_mode; + long video_mode; + int ret; /* skip "vga=" */ vmode += 4; if (!strncmp(vmode, "normal", 6)) { @@ -1210,22 +1207,29 @@ static void x86_load_linux(PCMachineState *pcms, } else if (!strncmp(vmode, "ask", 3)) { video_mode = 0xfffd; } else { - video_mode = strtol(vmode, NULL, 0); + ret = qemu_strtol(vmode, NULL, 0, &video_mode); + if (ret != 0) { + fprintf(stderr, "qemu: can't parse 'vga' parameter: %s\n", + strerror(-ret)); + exit(1); + } } - stw_p(header+0x1fa, video_mode); + stw_p(header + 0x1fa, video_mode); } /* loader type */ - /* High nybble = B reserved for QEMU; low nybble is revision number. - If this code is substantially changed, you may want to consider - incrementing the revision. */ + /* + * High nybble = B reserved for QEMU; low nybble is revision number. + * If this code is substantially changed, you may want to consider + * incrementing the revision. + */ if (protocol >= 0x200) { header[0x210] = 0xB0; } /* heap */ if (protocol >= 0x201) { - header[0x211] |= 0x80; /* CAN_USE_HEAP */ - stw_p(header+0x224, cmdline_addr-real_addr-0x200); + header[0x211] |= 0x80; /* CAN_USE_HEAP */ + stw_p(header + 0x224, cmdline_addr - real_addr - 0x200); } /* load initrd */ @@ -1257,14 +1261,14 @@ static void x86_load_linux(PCMachineState *pcms, exit(1); } - initrd_addr = (initrd_max-initrd_size) & ~4095; + initrd_addr = (initrd_max - initrd_size) & ~4095; fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_ADDR, initrd_addr); fw_cfg_add_i32(fw_cfg, FW_CFG_INITRD_SIZE, initrd_size); fw_cfg_add_bytes(fw_cfg, FW_CFG_INITRD_DATA, initrd_data, initrd_size); - stl_p(header+0x218, initrd_addr); - stl_p(header+0x21c, initrd_size); + stl_p(header + 0x218, initrd_addr); + stl_p(header + 0x21c, initrd_size); } /* load kernel and setup */ @@ -1272,7 +1276,7 @@ static void x86_load_linux(PCMachineState *pcms, if (setup_size == 0) { setup_size = 4; } - setup_size = (setup_size+1)*512; + setup_size = (setup_size + 1) * 512; if (setup_size > kernel_size) { fprintf(stderr, "qemu: invalid kernel header\n"); exit(1); @@ -1310,7 +1314,7 @@ static void x86_load_linux(PCMachineState *pcms, kernel_size = setup_data_offset + sizeof(struct setup_data) + dtb_size; kernel = g_realloc(kernel, kernel_size); - stq_p(header+0x250, prot_addr + setup_data_offset); + stq_p(header + 0x250, prot_addr + setup_data_offset); setup_data = (struct setup_data *)(kernel + setup_data_offset); setup_data->next = 0; @@ -1507,7 +1511,8 @@ void x86_cpus_init(PCMachineState *pcms) x86_cpu_set_default_version(pcmc->default_cpu_version); - /* Calculates the limit to CPU APIC ID values + /* + * Calculates the limit to CPU APIC ID values * * Limit for the APIC ID value, so that all * CPU APIC IDs are < pcms->apic_id_limit. @@ -2709,7 +2714,7 @@ static const CPUArchIdList *x86_possible_cpu_arch_ids(MachineState *ms) /* * make sure that max_cpus hasn't changed since the first use, i.e. * -smp hasn't been parsed after it - */ + */ assert(ms->possible_cpus->len == max_cpus); return ms->possible_cpus; } @@ -2722,7 +2727,8 @@ static const CPUArchIdList *x86_possible_cpu_arch_ids(MachineState *ms) ms->possible_cpus->cpus[i].type = ms->cpu_type; ms->possible_cpus->cpus[i].vcpus_count = 1; - ms->possible_cpus->cpus[i].arch_id = x86_cpu_apic_id_from_index(pcms, i); + ms->possible_cpus->cpus[i].arch_id = + x86_cpu_apic_id_from_index(pcms, i); x86_topo_ids_from_apicid(ms->possible_cpus->cpus[i].arch_id, pcms->smp_dies, ms->smp.cores, ms->smp.threads, &topo);
Fix code style issues detected by checkpatch.pl on functions that will be moved out to x86.c on the next patch. Signed-off-by: Sergio Lopez <slp@redhat.com> --- hw/i386/pc.c | 86 ++++++++++++++++++++++++++++------------------------ 1 file changed, 46 insertions(+), 40 deletions(-)