diff options
author | Julien Thierry <julien.thierry@arm.com> | 2019-01-10 14:20:43 +0000 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2019-01-22 06:55:22 +0000 |
commit | 1349857618e5ddd30dc7401e7cae64ef20a4631c (patch) | |
tree | 8596aff7d33c2471a91c9fb49d1a9a8be07010da | |
parent | f269c81dff7d4fe4b3c867e896169fb405c8084d (diff) | |
download | kvmtool-1349857618e5ddd30dc7401e7cae64ef20a4631c.tar.gz |
builtin-run: Do not look for default kernel when firmware is provided
When a firmware file is provided, kvmtool is not responsible for loading
a kernel image.
There is no reason for looking for a default kernel image when loading
a firmware.
Signed-off-by: Julien Thierry <julien.thierry@arm.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
-rw-r--r-- | builtin-run.c | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/builtin-run.c b/builtin-run.c index 443c10ba..82e2b2e4 100644 --- a/builtin-run.c +++ b/builtin-run.c @@ -512,12 +512,13 @@ static struct kvm *kvm_cmd_run_init(int argc, const char **argv) kvm->nr_disks = kvm->cfg.image_count; - if (!kvm->cfg.kernel_filename) + if (!kvm->cfg.kernel_filename && !kvm->cfg.firmware_filename) { kvm->cfg.kernel_filename = find_kernel(); - if (!kvm->cfg.kernel_filename) { - kernel_usage_with_options(); - return ERR_PTR(-EINVAL); + if (!kvm->cfg.kernel_filename) { + kernel_usage_with_options(); + return ERR_PTR(-EINVAL); + } } kvm->cfg.vmlinux_filename = find_vmlinux(); @@ -639,10 +640,17 @@ static struct kvm *kvm_cmd_run_init(int argc, const char **argv) kvm->cfg.real_cmdline = real_cmdline; - printf(" # %s run -k %s -m %Lu -c %d --name %s\n", KVM_BINARY_NAME, - kvm->cfg.kernel_filename, - (unsigned long long)kvm->cfg.ram_size / 1024 / 1024, - kvm->cfg.nrcpus, kvm->cfg.guest_name); + if (kvm->cfg.kernel_filename) { + printf(" # %s run -k %s -m %Lu -c %d --name %s\n", KVM_BINARY_NAME, + kvm->cfg.kernel_filename, + (unsigned long long)kvm->cfg.ram_size / 1024 / 1024, + kvm->cfg.nrcpus, kvm->cfg.guest_name); + } else if (kvm->cfg.firmware_filename) { + printf(" # %s run --firmware %s -m %Lu -c %d --name %s\n", KVM_BINARY_NAME, + kvm->cfg.firmware_filename, + (unsigned long long)kvm->cfg.ram_size / 1024 / 1024, + kvm->cfg.nrcpus, kvm->cfg.guest_name); + } if (init_list__init(kvm) < 0) die ("Initialisation failed"); |