|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen stable-4.18] x86/boot: Simplify the expression for extra allocation space
commit 311956bfeeabf5ee5fb9021195942d232021d54b
Author: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
AuthorDate: Thu Mar 27 15:24:43 2025 +0100
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Thu Mar 27 15:24:43 2025 +0100
x86/boot: Simplify the expression for extra allocation space
The expression for one parameter of find_memory() is already complicated and
about to become moreso. Break it out into a new variable, and express it in
an easier-to-follow way.
No functional change.
Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Reviewed-by: Jason Andryuk <jason.andryuk@xxxxxxx>
master commit: ce703c84df1cb279605b0a85a45c6419464a16e8
master date: 2025-03-21 11:52:39 +0000
---
xen/arch/x86/hvm/dom0_build.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index 411beb3f06..2a1bbd6929 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -540,6 +540,7 @@ static int __init pvh_load_kernel(struct domain *d, const
module_t *image,
unsigned long image_len = image->mod_end;
struct elf_binary elf;
struct elf_dom_parms parms;
+ size_t extra_space;
paddr_t last_addr;
struct hvm_start_info start_info = { 0 };
struct hvm_modlist_entry mod = { 0 };
@@ -592,13 +593,16 @@ static int __init pvh_load_kernel(struct domain *d, const
module_t *image,
* split into smaller allocations, done as a single region in order to
* simplify it.
*/
- last_addr = find_memory(d, &elf, sizeof(start_info) +
- (initrd ? ROUNDUP(initrd->mod_end, PAGE_SIZE) +
- sizeof(mod)
- : 0) +
- (cmdline ? ROUNDUP(strlen(cmdline) + 1,
- elf_64bit(&elf) ? 8 : 4)
- : 0));
+ extra_space = sizeof(start_info);
+
+ if ( initrd )
+ extra_space += sizeof(mod) + ROUNDUP(initrd->mod_end, PAGE_SIZE);
+
+ if ( cmdline )
+ extra_space += ROUNDUP(strlen(cmdline) + 1,
+ elf_64bit(&elf) ? 8 : 4);
+
+ last_addr = find_memory(d, &elf, extra_space);
if ( last_addr == INVALID_PADDR )
{
printk("Unable to find a memory region to load initrd and metadata\n");
--
generated by git-patchbot for /home/xen/git/xen.git#stable-4.18
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |