Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1336129
| From | Ingo Molnar <mingo@kernel.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v4] x86/setup: get ramdisk parameters only once |
| Date | 2016-02-17 09:30 +0100 |
| Message-ID | <r35EK-3Ib-9@gated-at.bofh.it> (permalink) |
| References | <r0VTd-6SY-11@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
* Alexander Kuleshov <kuleshovmail@gmail.com> wrote:
> void __init setup_arch(char **cmdline_p)
> {
> + struct ramdisk ramdisk_image = {
> + .start_addr = get_ramdisk_image(),
> + .size = get_ramdisk_size(),
> + .reserve_ramdisk = true
> + };
> +
> + /* Assume only end is not page aligned */
> + ramdisk_image.end_addr = PAGE_ALIGN(ramdisk_image.start_addr + ramdisk_image.size),
> +
> memblock_reserve(__pa_symbol(_text),
> (unsigned long)__bss_stop - (unsigned long)_text);
>
> - early_reserve_initrd();
> + if (!boot_params.hdr.type_of_loader || !ramdisk_image.start_addr
> + || !ramdisk_image.size)
Don't do pointless line breaks.
> + ramdisk_image.reserve_ramdisk = false; /* No initrd provided by bootloader */
> + else
> + memblock_reserve(ramdisk_image.start_addr,
> + ramdisk_image.end_addr - ramdisk_image.start_addr);
There's a simpler way to write that line ...
> /*
> * At this point everything still needed from the boot loader
> @@ -1135,7 +1137,8 @@ void __init setup_arch(char **cmdline_p)
> /* Allocate bigger log buffer */
> setup_log_buf(1);
>
> - reserve_initrd();
> + if (ramdisk_image.reserve_ramdisk)
> + reserve_initrd(&ramdisk_image);
It's cleaner to make that check inside reserve_initrd() ...
Thanks,
Ingo
Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread
[PATCH v4] x86/setup: get ramdisk parameters only once Alexander Kuleshov <kuleshovmail@gmail.com> - 2016-02-11 10:40 +0100 Re: [PATCH v4] x86/setup: get ramdisk parameters only once Ingo Molnar <mingo@kernel.org> - 2016-02-17 09:30 +0100
csiph-web