linux/fs/ext4
Aneesh Kumar K.V a30d542a00 ext4: Make sure all the block allocation paths reserve blocks
With delayed allocation we need to make sure block are reserved before
we attempt to allocate them. Otherwise we get block allocation failure
(ENOSPC) during writepages which cannot be handled. This would mean
silent data loss (We do a printk stating data will be lost). This patch
updates the DIO and fallocate code path to do block reservation before
block allocation. This is needed to make sure parallel DIO and fallocate
request doesn't take block out of delayed reserve space.

When free blocks count go below a threshold we switch to a slow patch
which looks at other CPU's accumulated percpu counter values.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2008-10-09 10:56:23 -04:00
..
acl.c [PATCH] sanitize ->permission() prototype 2008-07-26 20:53:14 -04:00
acl.h ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
balloc.c ext4: Make sure all the block allocation paths reserve blocks 2008-10-09 10:56:23 -04:00
bitmap.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
dir.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
ext4_extents.h ext4: journal credits reservation fixes for extent file writepage 2008-08-19 22:16:05 -04:00
ext4_i.h ext4: delayed allocation ENOSPC handling 2008-07-14 17:52:37 -04:00
ext4_jbd2.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
ext4_jbd2.h ext4: journal credits calulation cleanup and fix for non-extent writepage 2008-08-19 22:16:07 -04:00
ext4_sb.h ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
ext4.h ext4: Make sure all the block allocation paths reserve blocks 2008-10-09 10:56:23 -04:00
extents.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
file.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
fsync.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
group.h ext4: Rename read_block_bitmap() to ext4_read_block_bitmap() 2008-07-11 19:27:31 -04:00
hash.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
ialloc.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
inode.c ext4: Make sure all the block allocation paths reserve blocks 2008-10-09 10:56:23 -04:00
ioctl.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
Makefile ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
mballoc.c ext4: Make sure all the block allocation paths reserve blocks 2008-10-09 10:56:23 -04:00
mballoc.h ext4: Don't allow lg prealloc list to be grow large. 2008-07-23 14:14:05 -04:00
migrate.c ext4: journal credits reservation fixes for extent file writepage 2008-08-19 22:16:05 -04:00
namei.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
namei.h
resize.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
super.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
symlink.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
xattr_security.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
xattr_trusted.c ext4: remove double definitions of xattr macros 2008-07-11 19:27:31 -04:00
xattr_user.c ext4: remove double definitions of xattr macros 2008-07-11 19:27:31 -04:00
xattr.c ext4: Cleanup whitespace and other miscellaneous style issues 2008-07-26 16:15:44 -04:00
xattr.h ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00