[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20071108100920.b1c77eb0.akpm@linux-foundation.org>
Date: Thu, 8 Nov 2007 10:09:20 -0800
From: Andrew Morton <akpm@...ux-foundation.org>
To: "linux-ext4@...r.kernel.org" <linux-ext4@...r.kernel.org>
Cc: bugme-daemon@...zilla.kernel.org, sandeen@...hat.com
Subject: Re: [Bugme-new] [Bug 9329] New: ext4: delalloc space accounting
problem drops data
> On Thu, 8 Nov 2007 09:42:10 -0800 (PST) bugme-daemon@...zilla.kernel.org wrote:
> http://bugzilla.kernel.org/show_bug.cgi?id=9329
>
> Summary: ext4: delalloc space accounting problem drops data
> Product: File System
> Version: 2.5
> KernelVersion: 2.6.24-rc1
> Platform: All
> OS/Version: Linux
> Tree: Mainline
> Status: NEW
> Severity: normal
> Priority: P1
> Component: ext4
> AssignedTo: fs_ext4@...nel-bugs.osdl.org
> ReportedBy: sandeen@...hat.com
>
>
> 2.6.24-rc1 + ext4 git patch queue from last week or so.
>
> It appears that delalloc does not track used space properly, and fails to
> return ENOSPC as appropriate:
>
> [root@...r-05 ~]# mkfs.ext3 -I 256 /dev/sdb7 32768
> [root@...r-05 ~]# mount -t ext4dev -o data=writeback,delalloc,extents,mballoc
> /dev/sdb7 /mnt/test
> [root@...r-05 ~]# df -h /mnt/test
> Filesystem Size Used Avail Use% Mounted on
> /dev/sdb7 30M 4.5M 24M 16% /mnt/test
> [root@...r-05 ~]# du -h /tmp/1Mfile
> 1.1M /tmp/1Mfile
> [root@...r-05 ~]# for I in `seq 1 50`; do cp /tmp/1Mfile /mnt/test/1Mfile-$I;
> done
> [root@...r-05 ~]# df -h /mnt/test
> Filesystem Size Used Avail Use% Mounted on
> /dev/sdb7 30M 30M 0 100% /mnt/test
>
> all resulting files are 1M in length:
> [root@...r-05 ~]# ls -l /mnt/test/1M* | grep -v 1048576
> [root@...r-05 ~]# ls -l /mnt/test/1M* | grep 1048576 | wc -l
> 50
> but many of them have silently dropped data on the floor:
> [root@...r-05 ~]# du -hc /mnt/test/1Mfile-* | grep -v "1.0M"
> 596K /mnt/test/1Mfile-26
> 0 /mnt/test/1Mfile-27
> 0 /mnt/test/1Mfile-28
> 0 /mnt/test/1Mfile-29
> 0 /mnt/test/1Mfile-30
> <snip>
>
> When mounted with nodelalloc, I get proper behavior:
>
> [root@...r-05 ~]# for I in `seq 1 50`; do cp /tmp/1Mfile /mnt/test/1Mfile-$I;
> done
> cp: writing `/mnt/test/1Mfile-26': No space left on device
> cp: writing `/mnt/test/1Mfile-27': No space left on device
> cp: writing `/mnt/test/1Mfile-28': No space left on device
> cp: writing `/mnt/test/1Mfile-29': No space left on device
> <snip>
>
>
> --
> Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You are on the CC list for the bug, or are watching someone who is.
-
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