diff options
author | Arvind Sankar <nivedita@alum.mit.edu> | 2020-07-28 18:57:08 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2020-07-31 11:08:17 +0200 |
commit | ee435ee6490d147c1b9963cc8b331665e4cea634 (patch) | |
tree | 0f486be65e84409f0a173bfb2ff393f3fa369576 /arch/x86/boot | |
parent | 3f9412c73053a5be311607e42560c1303a873be7 (diff) | |
download | linux-ee435ee6490d147c1b9963cc8b331665e4cea634.tar.gz linux-ee435ee6490d147c1b9963cc8b331665e4cea634.tar.bz2 linux-ee435ee6490d147c1b9963cc8b331665e4cea634.zip |
x86/kaslr: Eliminate 'start_orig' local variable from __process_mem_region()
Set the region.size within the loop, which removes the need for
start_orig.
Signed-off-by: Arvind Sankar <nivedita@alum.mit.edu>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20200728225722.67457-8-nivedita@alum.mit.edu
Diffstat (limited to 'arch/x86/boot')
-rw-r--r-- | arch/x86/boot/compressed/kaslr.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/arch/x86/boot/compressed/kaslr.c b/arch/x86/boot/compressed/kaslr.c index f2454eef5790..e978c3508814 100644 --- a/arch/x86/boot/compressed/kaslr.c +++ b/arch/x86/boot/compressed/kaslr.c @@ -623,7 +623,7 @@ static void __process_mem_region(struct mem_vector *entry, unsigned long image_size) { struct mem_vector region, overlap; - unsigned long start_orig, end; + unsigned long end; /* Ignore entries entirely below our minimum. */ if (entry->start + entry->size < minimum) @@ -635,12 +635,9 @@ static void __process_mem_region(struct mem_vector *entry, return; region.start = entry->start; - region.size = end - entry->start; /* Give up if slot area array is full. */ while (slot_area_index < MAX_SLOT_AREA) { - start_orig = region.start; - /* Potentially raise address to minimum location. */ if (region.start < minimum) region.start = minimum; @@ -653,7 +650,7 @@ static void __process_mem_region(struct mem_vector *entry, return; /* Reduce size by any delta from the original address. */ - region.size -= region.start - start_orig; + region.size = end - region.start; /* Return if region can't contain decompressed kernel */ if (region.size < image_size) @@ -679,7 +676,6 @@ static void __process_mem_region(struct mem_vector *entry, return; /* Clip off the overlapping region and start over. */ - region.size -= overlap.start - region.start + overlap.size; region.start = overlap.start + overlap.size; } } |