lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 12 Jan 2024 18:28:53 +0100
From: Ard Biesheuvel <ardb@...nel.org>
To: Thomas Zimmermann <tzimmermann@...e.de>
Cc: nathan@...nel.org, tglx@...utronix.de, mingo@...hat.com, bp@...en8.de, 
	dave.hansen@...ux.intel.com, x86@...nel.org, hpa@...or.com, 
	bhelgaas@...gle.com, arnd@...db.de, zohar@...ux.ibm.com, 
	dmitry.kasatkin@...il.com, paul@...l-moore.com, jmorris@...ei.org, 
	serge@...lyn.com, javierm@...hat.com, linux-arch@...r.kernel.org, 
	linux-efi@...r.kernel.org, linux-kernel@...r.kernel.org, 
	linux-pci@...r.kernel.org, linux-integrity@...r.kernel.org, 
	linux-security-module@...r.kernel.org
Subject: Re: [PATCH v5 0/4] arch/x86: Remove unnecessary dependencies on bootparam.h

On Fri, 12 Jan 2024 at 10:50, Thomas Zimmermann <tzimmermann@...e.de> wrote:
>
> Reduce build time in some cases by removing unnecessary include statements
> for <asm/bootparam.h>. Reorganize some header files accordingly.
>
> While working on the kernel's boot-up graphics, I noticed that touching
> include/linux/screen_info.h triggers a complete rebuild of the kernel
> on x86. It turns out that the architecture's PCI and EFI headers include
> <asm/bootparam.h>, which depends on <linux/screen_info.h>. But none of
> the drivers have any business with boot parameters or the screen_info
> state.
>
> The patchset moves code from bootparam.h and efi.h into separate header
> files and removes obsolete include statements on x86. I did
>
>   make allmodconfig
>   make -j28
>   touch include/linux/screen_info.h
>   time make -j28
>
> to measure the time it takes to rebuild. Results without the patchset
> are around 20 minutes.
>
>   real    20m46,705s
>   user    354m29,166s
>   sys     28m27,359s
>
> And with the patchset applied it goes down to less than one minute.
>
>   real    0m56,643s
>   user    4m0,661s
>   sys     0m32,956s
>
> The test system is an Intel i5-13500.
>
> v5:
>         * silence clang warnings for real-mode code (Nathan)
>         * revert boot/compressed/misc.h (kernel test robot)
> v4:
>         * fix fwd declaration in compressed/misc.h (Ard)
> v3:
>         * keep setup_header in bootparam.h (Ard)
>         * implement arch_ima_efi_boot_mode() in source file (Ard)
> v2:
>         * only keep struct boot_params in bootparam.h (Ard)
>         * simplify arch_ima_efi_boot_mode define (Ard)
>         * updated cover letter
>
> Thomas Zimmermann (4):
>   arch/x86: Move UAPI setup structures into setup_data.h
>   arch/x86: Move internal setup_data structures into setup_data.h
>   arch/x86: Implement arch_ima_efi_boot_mode() in source file
>   arch/x86: Do not include <asm/bootparam.h> in several files
>

This looks ok to me, thanks for sticking with it.

For the series,

Reviewed-by: Ard Biesheuvel <ardb@...nel.org>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ