Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1389533

Re: [PATCH 1/2] ARM: PIE infrastructure

From Russell King - ARM Linux <linux@arm.linux.org.uk>
Newsgroups linux.kernel
Subject Re: [PATCH 1/2] ARM: PIE infrastructure
Date 2016-04-27 21:50 +0200
Message-ID <rsDDc-6TR-5@gated-at.bofh.it> (permalink)
References <rjKDT-8qi-13@gated-at.bofh.it> <rjKDT-8qi-11@gated-at.bofh.it> <rk9Ck-1sf-47@gated-at.bofh.it> <rqSwG-1vv-17@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Sat, Apr 23, 2016 at 01:15:03AM +0200, Alexandre Belloni wrote:
> Well, do you want me to iterate and use fncpy on all the functions from
> the generated binary?

No, because that will break the image too.

> I'm not sure this is necessary as the generated binary is self contained
> and doing so will force me to also ensure the offsets are kept the same.
> Doing only one copy is much more convenient. However, I still need to
> ensure the destination address is properly 8-byte aligned and the
> flush_icache_range().

What you need to do is to immitate being an ELF loader - in other words,
copy the blob according to the alignment rules of the blob (which may be
greater than 8-byte alignment) and use the symbol table to find the
functions and the type of the function (ARM vs ELF).

> I understand this is abusing fncpy() but it does want I need (still, I'm
> planning to avoid the BUG() by always passing a properly aligned
> destination address).

Yea yea yea, such arguments don't wash with me, sorry.  The "but it does
what I need" is total bollocks, sorry.  fncpy() is designed for a
purpose, and what you're doing is an abuse of it, one which I will not
stand for for the sake of long term maintainability.

-- 
RMK's Patch system: http://www.arm.linux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

Re: [PATCH 1/2] ARM: PIE infrastructure Alexandre Belloni <alexandre.belloni@free-electrons.com> - 2016-04-23 01:20 +0200
  Re: [PATCH 1/2] ARM: PIE infrastructure Russell King - ARM Linux <linux@arm.linux.org.uk> - 2016-04-27 21:50 +0200

csiph-web