xen/arm: Extend create_xen_entries prototype to take mapping attribute

Signed-off-by: Julien Grall <julien.grall@linaro.org>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
This commit is contained in:
Julien Grall authored and Ian Campbell committed 2013-05-13 11:51:42 +01:00
1 parent ce2abaa5fa
commit 0a6a239a61
1 file changed
+5 -4
+5 -4
View File
@@ -631,7 +631,8 @@ enum xenmap_operation {
static int create_xen_entries(enum xenmap_operation op,
unsigned long virt,
unsigned long mfn,
unsigned long nr_mfns)
unsigned long nr_mfns,
unsigned int ai)
{
int rc;
unsigned long addr = virt, addr_end = addr + nr_mfns * PAGE_SIZE;
@@ -664,6 +665,7 @@ static int create_xen_entries(enum xenmap_operation op,
}
pte = mfn_to_xen_entry(mfn);
pte.pt.table = 1;
pte.pt.ai = ai;
write_pte(&third[third_table_offset(addr)], pte);
break;
case REMOVE:
@@ -693,12 +695,11 @@ int map_pages_to_xen(unsigned long virt,
unsigned long nr_mfns,
unsigned int flags)
{
ASSERT(flags == PAGE_HYPERVISOR);
return create_xen_entries(INSERT, virt, mfn, nr_mfns);
return create_xen_entries(INSERT, virt, mfn, nr_mfns, flags);
}
void destroy_xen_mappings(unsigned long v, unsigned long e)
{
create_xen_entries(REMOVE, v, 0, (e - v) >> PAGE_SHIFT);
create_xen_entries(REMOVE, v, 0, (e - v) >> PAGE_SHIFT, 0);
}
enum mg { mg_clear, mg_ro, mg_rw, mg_rx };
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.