lkml.org 
[lkml]   [2018]   [May]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCHv3 2/2] x86/vdso: Add build salt to the vDSO
From
Date


> On May 23, 2018, at 4:55 PM, Linus Torvalds <torvalds@linux-foundation.org> wrote:
>
>> On Wed, May 23, 2018 at 3:53 PM Laura Abbott <labbott@redhat.com> wrote:
>>
>> Actually I remember now why this is necessary: there is not a simple way
>> to encode a string into a linker file as it has to be spit out byte
>> by byte.
>
> I think you can use the "fill" thing to basically add any random data to a
> section.
>
> So you can do something like
>
> . = ALIGN(16);
> .salt : AT(ADDR(.salt) - LOAD_OFFSET) {
> LONG(0xffaa5500);
> . = ALIGN(16);
> } =0x01234567890abcdef
>
> in the lds file, and you'll get a section that looks like this:
>
> [torvalds@i7 linux]$ objdump -h vmlinux -j .salt -s
>
> vmlinux: file format elf64-x86-64
>
> Sections:
> Idx Name Size VMA LMA File off
> Algn
> 15 .salt 00000010 ffffffff8432b000 000000000432b000 0352b000
> 2**0
> CONTENTS, ALLOC, LOAD, DATA
> Contents of section .salt:
> ffffffff8432b000 0055aaff 00123456 7890abcd ef001234 .U....4Vx......4
>
> Now whether that is sufficient for your needs, I dunno.
>

I don’t know whether I’m missing something obvious, but can’t this be in C?

asm (“.pushsection \”.comment\”; .ascii \”” WHATEVER “\”; .popsection”);

Or the .S equivalent.

\
 
 \ /
  Last update: 2018-05-24 02:01    [W:0.070 / U:0.820 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site