From: Julien Grall Date: Fri, 30 Jun 2017 15:54:28 +0000 (+0100) Subject: xen/arm: mm: Use lpae_valid and lpae_table in create_xen_entries X-Git-Tag: archive/raspbian/4.11.1-1+rpi1~1^2~66^2~1851 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=7b7a5587ba37191d384ab75002aac6caaa06ef59;p=xen.git xen/arm: mm: Use lpae_valid and lpae_table in create_xen_entries This newly introduced lpae_valid and lpae_table helpers will recude the code and make more readable. Signed-off-by: Julien Grall Reviewed-by: Stefano Stabellini --- diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index c732771444..21b3df395f 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -991,8 +991,7 @@ static int create_xen_entries(enum xenmap_operation op, for(; addr < addr_end; addr += PAGE_SIZE, mfn = mfn_add(mfn, 1)) { - if ( !xen_second[second_linear_offset(addr)].pt.valid || - !xen_second[second_linear_offset(addr)].pt.table ) + if ( !lpae_table(xen_second[second_linear_offset(addr)]) ) { rc = create_xen_table(&xen_second[second_linear_offset(addr)]); if ( rc < 0 ) { @@ -1001,14 +1000,14 @@ static int create_xen_entries(enum xenmap_operation op, } } - BUG_ON(!xen_second[second_linear_offset(addr)].pt.valid); + BUG_ON(!lpae_valid(xen_second[second_linear_offset(addr)])); third = mfn_to_virt(xen_second[second_linear_offset(addr)].pt.base); switch ( op ) { case INSERT: case RESERVE: - if ( third[third_table_offset(addr)].pt.valid ) + if ( lpae_valid(third[third_table_offset(addr)]) ) { printk("create_xen_entries: trying to replace an existing mapping addr=%lx mfn=%"PRI_mfn"\n", addr, mfn_x(mfn)); @@ -1022,7 +1021,7 @@ static int create_xen_entries(enum xenmap_operation op, break; case MODIFY: case REMOVE: - if ( !third[third_table_offset(addr)].pt.valid ) + if ( !lpae_valid(third[third_table_offset(addr)]) ) { printk("create_xen_entries: trying to %s a non-existing mapping addr=%lx\n", op == REMOVE ? "remove" : "modify", addr);