recordmcount: Remove unused fd from uwrite() and ulseek()

uwrite() works within the pseudo-mapping and extends it as necessary
without needing the file descriptor (fd) parameter passed to it.
Similarly, ulseek() doesn't need its fd parameter. These parameters
were only added because the functions bear a conceptual resemblance
to write() and lseek(). Worse, they obscure the fact that at the time
uwrite() and ulseek() are called fd_map is not a valid file descriptor.

Remove the unused file descriptor parameters that make it look like
fd_map is still valid.

Link: http://lkml.kernel.org/r/2a136e820ee208469d375265c7b8eb28570749a0.1563992889.git.mhelsley@vmware.com

Signed-off-by: Matt Helsley <mhelsley@vmware.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
This commit is contained in:
Matt Helsley 2019-07-24 14:04:57 -07:00 committed by Steven Rostedt (VMware)
parent a146207916
commit 17e262e995
2 changed files with 21 additions and 21 deletions

View File

@ -92,7 +92,7 @@ succeed_file(void)
/* ulseek, uwrite, ...: Check return value for errors. */ /* ulseek, uwrite, ...: Check return value for errors. */
static off_t static off_t
ulseek(int const fd, off_t const offset, int const whence) ulseek(off_t const offset, int const whence)
{ {
switch (whence) { switch (whence) {
case SEEK_SET: case SEEK_SET:
@ -113,7 +113,7 @@ ulseek(int const fd, off_t const offset, int const whence)
} }
static size_t static size_t
uwrite(int const fd, void const *const buf, size_t const count) uwrite(void const *const buf, size_t const count)
{ {
size_t cnt = count; size_t cnt = count;
off_t idx = 0; off_t idx = 0;
@ -183,8 +183,8 @@ static int make_nop_x86(void *map, size_t const offset)
return -1; return -1;
/* convert to nop */ /* convert to nop */
ulseek(fd_map, offset - 1, SEEK_SET); ulseek(offset - 1, SEEK_SET);
uwrite(fd_map, ideal_nop, 5); uwrite(ideal_nop, 5);
return 0; return 0;
} }
@ -232,10 +232,10 @@ static int make_nop_arm(void *map, size_t const offset)
return -1; return -1;
/* Convert to nop */ /* Convert to nop */
ulseek(fd_map, off, SEEK_SET); ulseek(off, SEEK_SET);
do { do {
uwrite(fd_map, ideal_nop, nop_size); uwrite(ideal_nop, nop_size);
} while (--cnt > 0); } while (--cnt > 0);
return 0; return 0;
@ -252,8 +252,8 @@ static int make_nop_arm64(void *map, size_t const offset)
return -1; return -1;
/* Convert to nop */ /* Convert to nop */
ulseek(fd_map, offset, SEEK_SET); ulseek(offset, SEEK_SET);
uwrite(fd_map, ideal_nop, 4); uwrite(ideal_nop, 4);
return 0; return 0;
} }

View File

@ -202,14 +202,14 @@ static void append_func(Elf_Ehdr *const ehdr,
new_e_shoff = t; new_e_shoff = t;
/* body for new shstrtab */ /* body for new shstrtab */
ulseek(fd_map, sb.st_size, SEEK_SET); ulseek(sb.st_size, SEEK_SET);
uwrite(fd_map, old_shstr_sh_offset + (void *)ehdr, old_shstr_sh_size); uwrite(old_shstr_sh_offset + (void *)ehdr, old_shstr_sh_size);
uwrite(fd_map, mc_name, 1 + strlen(mc_name)); uwrite(mc_name, 1 + strlen(mc_name));
/* old(modified) Elf_Shdr table, word-byte aligned */ /* old(modified) Elf_Shdr table, word-byte aligned */
ulseek(fd_map, t, SEEK_SET); ulseek(t, SEEK_SET);
t += sizeof(Elf_Shdr) * old_shnum; t += sizeof(Elf_Shdr) * old_shnum;
uwrite(fd_map, old_shoff + (void *)ehdr, uwrite(old_shoff + (void *)ehdr,
sizeof(Elf_Shdr) * old_shnum); sizeof(Elf_Shdr) * old_shnum);
/* new sections __mcount_loc and .rel__mcount_loc */ /* new sections __mcount_loc and .rel__mcount_loc */
@ -225,7 +225,7 @@ static void append_func(Elf_Ehdr *const ehdr,
mcsec.sh_info = 0; mcsec.sh_info = 0;
mcsec.sh_addralign = _w(_size); mcsec.sh_addralign = _w(_size);
mcsec.sh_entsize = _w(_size); mcsec.sh_entsize = _w(_size);
uwrite(fd_map, &mcsec, sizeof(mcsec)); uwrite(&mcsec, sizeof(mcsec));
mcsec.sh_name = w(old_shstr_sh_size); mcsec.sh_name = w(old_shstr_sh_size);
mcsec.sh_type = (sizeof(Elf_Rela) == rel_entsize) mcsec.sh_type = (sizeof(Elf_Rela) == rel_entsize)
@ -239,15 +239,15 @@ static void append_func(Elf_Ehdr *const ehdr,
mcsec.sh_info = w(old_shnum); mcsec.sh_info = w(old_shnum);
mcsec.sh_addralign = _w(_size); mcsec.sh_addralign = _w(_size);
mcsec.sh_entsize = _w(rel_entsize); mcsec.sh_entsize = _w(rel_entsize);
uwrite(fd_map, &mcsec, sizeof(mcsec)); uwrite(&mcsec, sizeof(mcsec));
uwrite(fd_map, mloc0, (void *)mlocp - (void *)mloc0); uwrite(mloc0, (void *)mlocp - (void *)mloc0);
uwrite(fd_map, mrel0, (void *)mrelp - (void *)mrel0); uwrite(mrel0, (void *)mrelp - (void *)mrel0);
ehdr->e_shoff = _w(new_e_shoff); ehdr->e_shoff = _w(new_e_shoff);
ehdr->e_shnum = w2(2 + w2(ehdr->e_shnum)); /* {.rel,}__mcount_loc */ ehdr->e_shnum = w2(2 + w2(ehdr->e_shnum)); /* {.rel,}__mcount_loc */
ulseek(fd_map, 0, SEEK_SET); ulseek(0, SEEK_SET);
uwrite(fd_map, ehdr, sizeof(*ehdr)); uwrite(ehdr, sizeof(*ehdr));
} }
static unsigned get_mcountsym(Elf_Sym const *const sym0, static unsigned get_mcountsym(Elf_Sym const *const sym0,
@ -396,8 +396,8 @@ static void nop_mcount(Elf_Shdr const *const relhdr,
Elf_Rel rel; Elf_Rel rel;
rel = *(Elf_Rel *)relp; rel = *(Elf_Rel *)relp;
Elf_r_info(&rel, Elf_r_sym(relp), rel_type_nop); Elf_r_info(&rel, Elf_r_sym(relp), rel_type_nop);
ulseek(fd_map, (void *)relp - (void *)ehdr, SEEK_SET); ulseek((void *)relp - (void *)ehdr, SEEK_SET);
uwrite(fd_map, &rel, sizeof(rel)); uwrite(&rel, sizeof(rel));
} }
relp = (Elf_Rel const *)(rel_entsize + (void *)relp); relp = (Elf_Rel const *)(rel_entsize + (void *)relp);
} }