Skip to content

Commit

Permalink
switch itanic perfmonctl(2) to fget_light()
Browse files Browse the repository at this point in the history
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
  • Loading branch information
Al Viro committed Sep 27, 2012
1 parent 866ecfd commit 7456a29
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions arch/ia64/kernel/perfmon.c
Original file line number Diff line number Diff line change
Expand Up @@ -4791,6 +4791,7 @@ sys_perfmonctl (int fd, int cmd, void __user *arg, int count)
int narg, completed_args = 0, call_made = 0, cmd_flags;
int (*func)(pfm_context_t *ctx, void *arg, int count, struct pt_regs *regs);
int (*getsize)(void *arg, size_t *sz);
int fput_needed;
#define PFM_MAX_ARGSIZE 4096

/*
Expand Down Expand Up @@ -4879,7 +4880,7 @@ sys_perfmonctl (int fd, int cmd, void __user *arg, int count)

ret = -EBADF;

file = fget(fd);
file = fget_light(fd, &fput_needed);
if (unlikely(file == NULL)) {
DPRINT(("invalid fd %d\n", fd));
goto error_args;
Expand Down Expand Up @@ -4920,7 +4921,7 @@ sys_perfmonctl (int fd, int cmd, void __user *arg, int count)

error_args:
if (file)
fput(file);
fput_light(file, fput_needed);

kfree(args_k);

Expand Down

0 comments on commit 7456a29

Please sign in to comment.