linux/fs/btrfs
Josef Bacik 4e06bdd6cb Btrfs: try committing transaction before returning ENOSPC
This fixes a problem where we could return -ENOSPC when we may actually have
plenty of space, the space is just pinned.  Instead of returning -ENOSPC
immediately, commit the transaction first and then try and do the allocation
again.

This patch also does chunk allocation for metadata if we pass the 80%
threshold for metadata space.  This will help with stack usage since the chunk
allocation will happen early on, instead of when the allocation is happening.

Signed-off-by: Josef Bacik <jbacik@redhat.com>
2009-02-20 10:59:53 -05:00
..
Kconfig Btrfs: make btrfs acls selectable 2009-02-04 09:28:28 -05:00
Makefile Btrfs: Add zlib compression support 2008-10-29 14:49:59 -04:00
acl.c Btrfs: Fix checkpatch.pl warnings 2009-01-05 21:25:51 -05:00
async-thread.c Btrfs: async threads should try harder to find work 2009-02-04 09:23:24 -05:00
async-thread.h Btrfs: Add ordered async work queues 2008-11-06 22:03:00 -05:00
btrfs_inode.h Btrfs: add better -ENOSPC handling 2009-02-20 11:00:09 -05:00
compat.h Btrfs: drop remaining LINUX_KERNEL_VERSION checks and compat code 2009-01-06 09:38:55 -05:00
compression.c Btrfs: removed unused #include <version.h>'s 2009-01-21 10:49:16 -05:00
compression.h Btrfs: Add zlib compression support 2008-10-29 14:49:59 -04:00
crc32c.h Btrfs: Drop the hardware crc32c asm code 2009-01-07 19:56:59 -05:00
ctree.c Btrfs: make a lockdep class for the extent buffer locks 2009-02-12 14:09:45 -05:00
ctree.h Btrfs: add better -ENOSPC handling 2009-02-20 11:00:09 -05:00
dir-item.c Btrfs: Fix checkpatch.pl warnings 2009-01-05 21:25:51 -05:00
disk-io.c Btrfs: make a lockdep class for the extent buffer locks 2009-02-12 14:09:45 -05:00
disk-io.h Btrfs: make a lockdep class for the extent buffer locks 2009-02-12 14:09:45 -05:00
export.c Btrfs: Fix checkpatch.pl warnings 2009-01-05 21:25:51 -05:00
export.h NFS support for btrfs - v3 2008-09-25 11:04:06 -04:00
extent-tree.c Btrfs: try committing transaction before returning ENOSPC 2009-02-20 10:59:53 -05:00
extent_io.c Btrfs: remove unused code in split_state() 2009-02-12 14:25:23 -05:00
extent_io.h Btrfs: Change btree locking to use explicit blocking points 2009-02-04 09:25:08 -05:00
extent_map.c Btrfs: removed unused #include <version.h>'s 2009-01-21 10:49:16 -05:00
extent_map.h Btrfs: Fix csum error for compressed data 2008-11-10 07:34:43 -05:00
file-item.c Btrfs: tree logging checksum fixes 2009-01-06 11:42:00 -05:00
file.c Btrfs: add better -ENOSPC handling 2009-02-20 11:00:09 -05:00
free-space-cache.c Btrfs: Fix checkpatch.pl warnings 2009-01-05 21:25:51 -05:00
hash.h Switch btrfs_name_hash() to crc32c 2008-09-25 11:04:06 -04:00
inode-item.c Btrfs: make things static and include the right headers 2008-12-02 09:54:17 -05:00
inode-map.c Btrfs: remove btrfs_init_path 2009-02-12 14:11:25 -05:00
inode.c Btrfs: add better -ENOSPC handling 2009-02-20 11:00:09 -05:00
ioctl.c Btrfs: add better -ENOSPC handling 2009-02-20 11:00:09 -05:00
ioctl.h Btrfs: fix ioctl arg size (userland incompatible change!) 2009-01-16 11:59:08 -05:00
locking.c Btrfs: make a lockdep class for the extent buffer locks 2009-02-12 14:09:45 -05:00
locking.h Btrfs: don't use spin_is_contended 2009-02-09 16:22:03 -05:00
ordered-data.c Btrfs: simplify iteration codes 2009-01-21 10:59:08 -05:00
ordered-data.h Btrfs: move data checksumming into a dedicated tree 2008-12-08 16:58:54 -05:00
orphan.c Btrfs: Create orphan inode records to prevent lost files after a crash 2008-09-25 11:04:05 -04:00
print-tree.c Btrfs: Fix checkpatch.pl warnings 2009-01-05 21:25:51 -05:00
print-tree.h Btrfs: Create extent_buffer interface for large blocksizes 2008-09-25 11:03:56 -04:00
ref-cache.c Btrfs: Make btrfs_drop_snapshot work in larger and more efficient chunks 2009-02-04 09:27:02 -05:00
ref-cache.h Btrfs: Make btrfs_drop_snapshot work in larger and more efficient chunks 2009-02-04 09:27:02 -05:00
root-tree.c Btrfs: Fix checkpatch.pl warnings 2009-01-05 21:25:51 -05:00
struct-funcs.c Btrfs: Fix checkpatch.pl warnings 2009-01-05 21:25:51 -05:00
super.c Btrfs: don't clean old snapshots on sync(1) 2009-02-12 09:45:08 -05:00
sysfs.c Btrfs: Fix checkpatch.pl warnings 2009-01-05 21:25:51 -05:00
transaction.c Btrfs: hold trans_mutex when using btrfs_record_root_in_trans 2009-02-12 14:14:53 -05:00
transaction.h Btrfs: Fix checkpatch.pl warnings 2009-01-05 21:25:51 -05:00
tree-defrag.c Btrfs: Change btree locking to use explicit blocking points 2009-02-04 09:25:08 -05:00
tree-log.c Btrfs: hold trans_mutex when using btrfs_record_root_in_trans 2009-02-12 14:14:53 -05:00
tree-log.h Btrfs: Add a write ahead tree log to optimize synchronous operations 2008-09-25 11:04:07 -04:00
version.h Update Btrfs files for in-kernel usage 2008-09-25 15:41:59 -04:00
version.sh Btrfs: Fixes for 2.6.28-rc API changes 2008-11-19 21:17:22 -05:00
volumes.c Btrfs: make a lockdep class for the extent buffer locks 2009-02-12 14:09:45 -05:00
volumes.h Btrfs: shared seed device 2008-12-12 10:03:26 -05:00
xattr.c Btrfs: selinux support 2009-02-04 09:29:13 -05:00
xattr.h Btrfs: selinux support 2009-02-04 09:29:13 -05:00
zlib.c Btrfs: Fix checkpatch.pl warnings 2009-01-05 21:25:51 -05:00