xfs
[Top] [All Lists]

[PATCH] don't reallocate sxp variable passed into xfs_swapext

To: xfs-oss <xfs@xxxxxxxxxxx>
Subject: [PATCH] don't reallocate sxp variable passed into xfs_swapext
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Sun, 25 Jan 2009 20:53:00 -0600
Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>, pm@xxxxxxxxxx, "Rafael J. Wysocki" <rjw@xxxxxxx>
User-agent: Thunderbird 2.0.0.19 (Macintosh/20081209)
fixes kernel.org bugzilla 12538, xfs_fsr fails on 2.6.29-rc kernels

Regression caused by 743bb4650da9e2595d6cedd01c680b5b9398c74a

This was an embarrasing mistake, reallocating the sxp pointer passed
in from the main ioctl switch.

Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxxx
Reported-by: Paul Martin <pm@xxxxxxxxxx>
Tested-by: Paul Martin <pm@xxxxxxxxxx>
---


Index: linux-2.6/fs/xfs/xfs_dfrag.c
===================================================================
--- linux-2.6.orig/fs/xfs/xfs_dfrag.c
+++ linux-2.6/fs/xfs/xfs_dfrag.c
@@ -55,17 +55,11 @@ xfs_swapext(
        struct file     *file, *target_file;
        int             error = 0;
 
-       sxp = kmem_alloc(sizeof(xfs_swapext_t), KM_MAYFAIL);
-       if (!sxp) {
-               error = XFS_ERROR(ENOMEM);
-               goto out;
-       }
-
        /* Pull information for the target fd */
        file = fget((int)sxp->sx_fdtarget);
        if (!file) {
                error = XFS_ERROR(EINVAL);
-               goto out_free_sxp;
+               goto out;
        }
 
        if (!(file->f_mode & FMODE_WRITE) || (file->f_flags & O_APPEND)) {
@@ -109,8 +103,6 @@ xfs_swapext(
        fput(target_file);
  out_put_file:
        fput(file);
- out_free_sxp:
-       kmem_free(sxp);
  out:
        return error;
 }



<Prev in Thread] Current Thread [Next in Thread>