Thread (13 messages) 13 messages, 4 authors, 2020-08-04

Re: [PATCH v1 0/4] [RFC] Implement Trampoline File Descriptor

From: Madhavan T. Venkataraman <hidden>
Date: 2020-08-03 17:00:09
Also in: linux-api, linux-fsdevel, linux-integrity, linux-security-module, lkml

Possibly related (same subject, not in this thread)


On 8/3/20 11:57 AM, David Laight wrote:
From: Madhavan T. Venkataraman
quoted
Sent: 03 August 2020 17:03

On 8/3/20 3:27 AM, David Laight wrote:
quoted
From: Mark Rutland
quoted
Sent: 31 July 2020 19:32
...
quoted
quoted
It requires PC-relative data references. I have not worked on all architectures.
So, I need to study this. But do all ISAs support PC-relative data references?
Not all do, but pretty much any recent ISA will as it's a practical
necessity for fast position-independent code.
i386 has neither PC-relative addressing nor moves from %pc.
The cpu architecture knows that the sequence:
	call	1f
1:	pop	%reg
is used to get the %pc value so is treated specially so that
it doesn't 'trash' the return stack.

So PIC code isn't too bad, but you have to use the correct
sequence.
Is that true only for 32-bit systems only? I thought RIP-relative addressing was
introduced in 64-bit mode. Please confirm.
I said i386 not amd64 or x86-64.
I am sorry. My bad.
So yes, 64bit code has PC-relative addressing.
But I'm pretty sure it has no other way to get the PC itself
except using call - certainly nothing in the 'usual' instructions.
OK.

Madhavan

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help