[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] [PATCH v6 09/24] xsplice: Implement payload loading
- To: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx, konrad@xxxxxxxxxx, ross.lagerwall@xxxxxxxxxx, mpohlack@xxxxxxxxx, sasha.levin@xxxxxxxxxx, andrew.cooper3@xxxxxxxxxx
- From: Julien Grall <julien.grall@xxxxxxx>
- Date: Fri, 8 Apr 2016 16:35:13 +0100
- Cc: Keir Fraser <keir@xxxxxxx>, Stefano Stabellini <stefano.stabellini@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>
- Delivery-date: Fri, 08 Apr 2016 15:35:21 +0000
- List-id: Xen developer discussion <xen-devel.lists.xen.org>
Hi Konrad,
On 07/04/16 04:49, Konrad Rzeszutek Wilk wrote:
From: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx>
Add support for loading xsplice payloads. This is somewhat similar to
the Linux kernel module loader, implementing the following steps:
- Verify the elf file.
- Parse the elf file.
- Allocate a region of memory mapped within a free area of
[xen_virt_end, XEN_VIRT_END].
- Copy allocated sections into the new region. Split them in three
regions - .text, .data, and .rodata. MUST have at least .text.
- Resolve section symbols. All other symbols must be absolute addresses.
(Note that patch titled "xsplice,symbols: Implement symbol name resolution
on address" implements that)
- Perform relocations.
- Secure the the regions (.text,.data,.rodata) with proper permissions.
We capitalize on the vmalloc callback API (see patch titled:
"vmap: Add vmalloc_cb and vfree_cb") to allocate a region
of memory within the [xen_virt_end, XEN_VIRT_END] for the code.
Signed-off-by: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
For the ARM bits:
Acked-by: Julien Grall <julien.grall@xxxxxxx>
Regards,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|