Browse Source

switch EXT4_IOC_MOVE_EXT to fget_light()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Al Viro 13 years ago
parent
commit
6bdf295401
1 changed files with 3 additions and 3 deletions
  1. 3 3
      fs/ext4/ioctl.c

+ 3 - 3
fs/ext4/ioctl.c

@@ -234,7 +234,7 @@ group_extend_out:
 	case EXT4_IOC_MOVE_EXT: {
 		struct move_extent me;
 		struct file *donor_filp;
-		int err;
+		int err, fput_needed;
 
 		if (!(filp->f_mode & FMODE_READ) ||
 		    !(filp->f_mode & FMODE_WRITE))
@@ -245,7 +245,7 @@ group_extend_out:
 			return -EFAULT;
 		me.moved_len = 0;
 
-		donor_filp = fget(me.donor_fd);
+		donor_filp = fget_light(me.donor_fd, &fput_needed);
 		if (!donor_filp)
 			return -EBADF;
 
@@ -274,7 +274,7 @@ group_extend_out:
 				 &me, sizeof(me)))
 			err = -EFAULT;
 mext_out:
-		fput(donor_filp);
+		fput_light(donor_filp, fput_needed);
 		return err;
 	}