> On May 23, 2018, at 4:55 PM, Linus Torvalds <torva...@linux-foundation.org> 
> wrote:
> 
>> On Wed, May 23, 2018 at 3:53 PM Laura Abbott <labb...@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.

Reply via email to