diff --git a/arch/arm/kernel/pie.lds.S b/arch/arm/kernel/pie.lds.S index 0953281739d0..921b746acd63 100755 --- a/arch/arm/kernel/pie.lds.S +++ b/arch/arm/kernel/pie.lds.S @@ -33,6 +33,7 @@ SECTIONS PIE_OVERLAY_START OVERLAY : NOCROSSREFS { + PIE_OVERLAY_SECTION(overlay) PIE_OVERLAY_SECTION(rk3288) PIE_OVERLAY_SECTION(rk3188) } diff --git a/lib/pie.c b/lib/pie.c index 2aa0fc996985..c266a61bad72 100644 --- a/lib/pie.c +++ b/lib/pie.c @@ -64,7 +64,7 @@ struct pie_chunk *__pie_load_data(struct gen_pool *pool, bool phys, goto err; } - common_sz = code_start - (void *)__pie_common_start; + common_sz = __pie_overlay_start - __pie_common_start; code_sz = code_end - code_start; chunk->pool = pool;