[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4B55370B.4060801@rs.jp.nec.com>
Date: Tue, 19 Jan 2010 13:37:31 +0900
From: Akira Fujita <a-fujita@...jp.nec.com>
To: Manish Katiyar <mkatiyar@...il.com>
CC: ext4 <linux-ext4@...r.kernel.org>
Subject: Re: [PATCH] e4defrag : Open the source file for e4defrag in read
write mode to avoid failures from EXT4_IOC_EXT_MOVE
Hi Manish,
(2010/01/19 13:21), Manish Katiyar wrote:
> Hi Akira,
>
> I am consistently getting -EBADF while trying out e4defrag and it
> fails with below error.
>
> /home/mkatiyar/e2fs-git/e2fsprogs/misc> ./e4defrag -v /tmp/ohsm/mntdir/f1
> ext4 defragmentation for /tmp/ohsm/mntdir/f1
> [1/1]/tmp/ohsm/mntdir/f1: 0%
> Failed to defrag:Bad file descriptor [ NG ]
> Success: [0/1]
>
> Below patch fixes the issue for me, though I am not sure if this is
> the right fix to open the source file in readwrite mode or fix the
> ext4 ioctl part.
>
Patch looks good to me.
# I send same patch to Ted last month, but it is not on linux-ext4, sorry.
By commit 4a58579b9e4e2a35d57e6c9c8483e52f6f1b7fd6 of Linus' kernel tree,
rw mode check was added to EXT4_IOC_MOVE_EXTENT.
But command patch which corresponds to this change
has not been merged into e2fsprogs.
So this change is needed to run e4defrag command on current Linux kernel.
Regards,
Akira Fujita
> Open the source file in read write mode to avoid failures from EXT4_IOC_EXT_MOVE
>
> Signed-off-by: Manish Katiyar<mkatiyar@...il.com>
> ---
> misc/e4defrag.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/misc/e4defrag.c b/misc/e4defrag.c
> index 82e3868..424e0ca 100644
> --- a/misc/e4defrag.c
> +++ b/misc/e4defrag.c
> @@ -1605,7 +1605,7 @@ static int file_defrag(const char *file, const
> struct stat64 *buf,
> return 0;
> }
>
> - fd = open64(file, O_RDONLY);
> + fd = open64(file, O_RDWR);
> if (fd< 0) {
> if (mode_flag& DETAIL) {
> PRINT_FILE_NAME(file);
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists