mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
fs: fix kernel_read prototype
Use proper ssize_t and size_t types for the return value and count argument, move the offset last and make it an in/out argument like all other read/write helpers, and make the buf argument a void pointer to get rid of lots of casts in the callers. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
committed by
Al Viro
parent
c41fbad015
commit
bdd1d2d3d2
@@ -145,6 +145,7 @@ static int elf_fdpic_fetch_phdrs(struct elf_fdpic_params *params,
|
||||
struct elf32_phdr *phdr;
|
||||
unsigned long size;
|
||||
int retval, loop;
|
||||
loff_t pos = params->hdr.e_phoff;
|
||||
|
||||
if (params->hdr.e_phentsize != sizeof(struct elf_phdr))
|
||||
return -ENOMEM;
|
||||
@@ -156,8 +157,7 @@ static int elf_fdpic_fetch_phdrs(struct elf_fdpic_params *params,
|
||||
if (!params->phdrs)
|
||||
return -ENOMEM;
|
||||
|
||||
retval = kernel_read(file, params->hdr.e_phoff,
|
||||
(char *) params->phdrs, size);
|
||||
retval = kernel_read(file, params->phdrs, size, &pos);
|
||||
if (unlikely(retval != size))
|
||||
return retval < 0 ? retval : -ENOEXEC;
|
||||
|
||||
@@ -199,6 +199,7 @@ static int load_elf_fdpic_binary(struct linux_binprm *bprm)
|
||||
char *interpreter_name = NULL;
|
||||
int executable_stack;
|
||||
int retval, i;
|
||||
loff_t pos;
|
||||
|
||||
kdebug("____ LOAD %d ____", current->pid);
|
||||
|
||||
@@ -246,10 +247,9 @@ static int load_elf_fdpic_binary(struct linux_binprm *bprm)
|
||||
if (!interpreter_name)
|
||||
goto error;
|
||||
|
||||
retval = kernel_read(bprm->file,
|
||||
phdr->p_offset,
|
||||
interpreter_name,
|
||||
phdr->p_filesz);
|
||||
pos = phdr->p_offset;
|
||||
retval = kernel_read(bprm->file, interpreter_name,
|
||||
phdr->p_filesz, &pos);
|
||||
if (unlikely(retval != phdr->p_filesz)) {
|
||||
if (retval >= 0)
|
||||
retval = -ENOEXEC;
|
||||
@@ -277,8 +277,9 @@ static int load_elf_fdpic_binary(struct linux_binprm *bprm)
|
||||
*/
|
||||
would_dump(bprm, interpreter);
|
||||
|
||||
retval = kernel_read(interpreter, 0, bprm->buf,
|
||||
BINPRM_BUF_SIZE);
|
||||
pos = 0;
|
||||
retval = kernel_read(interpreter, bprm->buf,
|
||||
BINPRM_BUF_SIZE, &pos);
|
||||
if (unlikely(retval != BINPRM_BUF_SIZE)) {
|
||||
if (retval >= 0)
|
||||
retval = -ENOEXEC;
|
||||
|
Reference in New Issue
Block a user