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]
Message-Id: <D1RFUDSAJJKJ.2MF9OSQAJGBRW@kernel.org>
Date: Tue, 04 Jun 2024 21:18:44 +0300
From: "Jarkko Sakkinen" <jarkko@...nel.org>
To: "Ross Philipson" <ross.philipson@...cle.com>,
 <linux-kernel@...r.kernel.org>, <x86@...nel.org>,
 <linux-integrity@...r.kernel.org>, <linux-doc@...r.kernel.org>,
 <linux-crypto@...r.kernel.org>, <kexec@...ts.infradead.org>,
 <linux-efi@...r.kernel.org>, <iommu@...ts.linux-foundation.org>
Cc: <dpsmith@...rtussolutions.com>, <tglx@...utronix.de>,
 <mingo@...hat.com>, <bp@...en8.de>, <hpa@...or.com>,
 <dave.hansen@...ux.intel.com>, <ardb@...nel.org>, <mjg59@...f.ucam.org>,
 <James.Bottomley@...senpartnership.com>, <peterhuewe@....de>,
 <jgg@...pe.ca>, <luto@...capital.net>, <nivedita@...m.mit.edu>,
 <herbert@...dor.apana.org.au>, <davem@...emloft.net>, <corbet@....net>,
 <ebiederm@...ssion.com>, <dwmw2@...radead.org>, <baolu.lu@...ux.intel.com>,
 <kanth.ghatraju@...cle.com>, <andrew.cooper3@...rix.com>,
 <trenchboot-devel@...glegroups.com>
Subject: Re: [PATCH v9 01/19] x86/boot: Place kernel_info at a fixed offset

On Fri May 31, 2024 at 4:03 AM EEST, Ross Philipson wrote:
> From: Arvind Sankar <nivedita@...m.mit.edu>
>
> There are use cases for storing the offset of a symbol in kernel_info.
> For example, the trenchboot series [0] needs to store the offset of the
> Measured Launch Environment header in kernel_info.

So either there are other use cases that you should enumerate, or just
be straight and state that this is done for Trenchboot.

I believe latter is the case, and there is no reason to project further.
If it does not interfere kernel otherwise, it should be fine just by
that.

Also I believe that it is written as Trenchboot, without "series" ;-)
Think when writing commit message that it will some day be part of the
commit log, not a series flying in the air.

Sorry for the nitpicks but better to be punctual and that way also
transparent as possible, right?

>
> Since commit (note: commit ID from tip/master)
>
> commit 527afc212231 ("x86/boot: Check that there are no run-time relocations")
>
> run-time relocations are not allowed in the compressed kernel, so simply
> using the symbol in kernel_info, as
>
> 	.long	symbol
>
> will cause a linker error because this is not position-independent.
>
> With kernel_info being a separate object file and in a different section
> from startup_32, there is no way to calculate the offset of a symbol
> from the start of the image in a position-independent way.
>
> To enable such use cases, put kernel_info into its own section which is

"To allow Trenchboot to access the fields of kernel_info..."

Much more understandable.

> placed at a predetermined offset (KERNEL_INFO_OFFSET) via the linker
> script. This will allow calculating the symbol offset in a
> position-independent way, by adding the offset from the start of
> kernel_info to KERNEL_INFO_OFFSET.
>
> Ensure that kernel_info is aligned, and use the SYM_DATA.* macros
> instead of bare labels. This stores the size of the kernel_info
> structure in the ELF symbol table.

Aligned to which boundary and short explanation why to that boundary,
i.e. state the obvious if you bring it up anyway here.

Just seems to be progressing pretty well so taking my eye glass and
looking into nitty gritty details...

BR, Jarkko

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ