aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2016-07-29 11:44:51 +0100
committerWill Deacon <will.deacon@arm.com>2016-07-29 11:44:51 +0100
commitc1c33b44b75cd61e69193d56161fb290fe7b732a (patch)
treee825e8bdc3151eb14299fe60d8268ac00407a5a4
parentb6dcc46671b81d443f811eaef8c148929afe8f59 (diff)
downloadkvmtool-c1c33b44b75cd61e69193d56161fb290fe7b732a.tar.gz
kvmtool: remove redundant calls to lseek
open() sets the file osset to the beginning of the file, so there's no need for an explicit lseek when called in kvm__arch_load_kernel_image. Signed-off-by: Will Deacon <will.deacon@arm.com>
-rw-r--r--arm/kvm.c6
-rw-r--r--mips/kvm.c3
-rw-r--r--powerpc/kvm.c6
-rw-r--r--x86/kvm.c3
4 files changed, 0 insertions, 18 deletions
diff --git a/arm/kvm.c b/arm/kvm.c
index 433a7bc4..ce40897a 100644
--- a/arm/kvm.c
+++ b/arm/kvm.c
@@ -96,9 +96,6 @@ bool kvm__arch_load_kernel_image(struct kvm *kvm, int fd_kernel, int fd_initrd,
unsigned long guest_addr;
ssize_t file_size;
- if (lseek(fd_kernel, 0, SEEK_SET) < 0)
- die_perror("lseek");
-
/*
* Linux requires the initrd and dtb to be mapped inside lowmem,
* so we can't just place them at the top of memory.
@@ -141,9 +138,6 @@ bool kvm__arch_load_kernel_image(struct kvm *kvm, int fd_kernel, int fd_initrd,
struct stat sb;
unsigned long initrd_start;
- if (lseek(fd_initrd, 0, SEEK_SET) < 0)
- die_perror("lseek");
-
if (fstat(fd_initrd, &sb))
die_perror("fstat");
diff --git a/mips/kvm.c b/mips/kvm.c
index 8fbf8dec..24bd6507 100644
--- a/mips/kvm.c
+++ b/mips/kvm.c
@@ -296,9 +296,6 @@ static bool load_elf_binary(struct kvm *kvm, int fd_kernel)
char *p;
struct kvm__arch_elf_info ei;
- if (lseek(fd_kernel, 0, SEEK_SET) < 0)
- die_perror("lseek");
-
nr = read(fd_kernel, &eh, sizeof(eh));
if (nr != sizeof(eh)) {
pr_info("Couldn't read %d bytes for ELF header.", (int)sizeof(eh));
diff --git a/powerpc/kvm.c b/powerpc/kvm.c
index f9314802..3c1596d7 100644
--- a/powerpc/kvm.c
+++ b/powerpc/kvm.c
@@ -164,9 +164,6 @@ bool kvm__arch_load_kernel_image(struct kvm *kvm, int fd_kernel, int fd_initrd,
void *k_start;
ssize_t filesize;
- if (lseek(fd_kernel, 0, SEEK_SET) < 0)
- die_perror("lseek");
-
p = k_start = guest_flat_to_host(kvm, KERNEL_LOAD_ADDR);
filesize = read_file(fd_kernel, p, INITRD_LOAD_ADDR - KERNEL_LOAD_ADDR);
@@ -179,9 +176,6 @@ bool kvm__arch_load_kernel_image(struct kvm *kvm, int fd_kernel, int fd_initrd,
pr_info("Loaded kernel to 0x%x (%ld bytes)", KERNEL_LOAD_ADDR,
filesize);
if (fd_initrd != -1) {
- if (lseek(fd_initrd, 0, SEEK_SET) < 0)
- die_perror("lseek");
-
if (p-k_start > INITRD_LOAD_ADDR)
die("Kernel overlaps initrd!");
diff --git a/x86/kvm.c b/x86/kvm.c
index ae430a0d..bfa04b81 100644
--- a/x86/kvm.c
+++ b/x86/kvm.c
@@ -243,9 +243,6 @@ static bool load_bzimage(struct kvm *kvm, int fd_kernel, int fd_initrd,
* memory layout.
*/
- if (lseek(fd_kernel, 0, SEEK_SET) < 0)
- die_perror("lseek");
-
if (read_in_full(fd_kernel, &boot, sizeof(boot)) != sizeof(boot))
return false;