android_kernel_xiaomi_sm8350/fs/ocfs2
Mark Fasheh 2b604351bc ocfs2: simplify deallocation locking
Deallocation of suballocator blocks, most notably extent blocks, might
involve multiple suballocator inodes.

The locking for this can get extremely complicated, especially when the
suballocator inodes to delete from aren't known until deep within an
unrelated codepath.

Implement a simple scheme for recording the blocks to be unlinked so that
the actual deallocation can be done in a context which won't deadlock.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
2007-07-10 17:31:54 -07:00
..
cluster [PATCH] ocfs2: use list_for_each_entry where benefical 2007-07-10 17:19:49 -07:00
dlm [KJ PATCH] Replacing memset(<addr>,0,PAGE_SIZE) with clear_page() in fs/ocfs2/dlm/dlmrecovery.c 2007-07-10 17:19:52 -07:00
alloc.c ocfs2: simplify deallocation locking 2007-07-10 17:31:54 -07:00
alloc.h ocfs2: simplify deallocation locking 2007-07-10 17:31:54 -07:00
aops.c ocfs2: harden buffer check during mapping of page blocks 2007-07-10 17:31:52 -07:00
aops.h ocfs2: shared writeable mmap 2007-07-10 17:31:51 -07:00
buffer_head_io.c
buffer_head_io.h
dcache.c
dcache.h
dir.c ocfs2: Wrap access of directory allocations with ip_alloc_sem. 2007-05-02 15:07:42 -07:00
dir.h ocfs2: Remove struct ocfs2_journal_handle in favor of handle_t 2006-12-01 18:28:28 -08:00
dlmglue.c [PATCH] ocfs2: use list_for_each_entry where benefical 2007-07-10 17:19:49 -07:00
dlmglue.h [PATCH] fs/ocfs2/: make 3 functions static 2007-05-02 15:07:27 -07:00
endian.h
export.c ocfs2: fix sparse warnings in fs/ocfs2 2007-05-02 15:08:08 -07:00
export.h
extent_map.c [PATCH] ocfs2: use list_for_each_entry where benefical 2007-07-10 17:19:49 -07:00
extent_map.h ocfs2: Cache extent records 2007-04-26 15:10:40 -07:00
file.c ocfs2: shared writeable mmap 2007-07-10 17:31:51 -07:00
file.h [PATCH] fs/ocfs2/: make 3 functions static 2007-05-02 15:07:27 -07:00
heartbeat.c ocfs2: Depend on configfs heartbeat items. 2007-07-10 17:19:40 -07:00
heartbeat.h
inode.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
inode.h [PATCH] Copy i_flags to ocfs2 inode flags on write 2007-05-02 15:07:58 -07:00
ioctl.c [PATCH] Copy i_flags to ocfs2 inode flags on write 2007-05-02 15:07:58 -07:00
ioctl.h ocfs2: Implement compat_ioctl() 2007-05-02 15:07:16 -07:00
journal.c [PATCH] ocfs2: use list_for_each_entry where benefical 2007-07-10 17:19:49 -07:00
journal.h ocfs2: make room for unwritten extents flag 2007-04-26 15:02:37 -07:00
localalloc.c ocfs2: fix inode leak 2007-05-25 11:00:46 -07:00
localalloc.h ocfs2: Remove struct ocfs2_journal_handle in favor of handle_t 2006-12-01 18:28:28 -08:00
Makefile
mmap.c ocfs2: shared writeable mmap 2007-07-10 17:31:51 -07:00
mmap.h
namei.c ocfs2: fix sparse warnings in fs/ocfs2 2007-05-02 15:08:08 -07:00
namei.h [PATCH] mark struct inode_operations const 2 2007-02-12 09:48:46 -08:00
ocfs1_fs_compat.h
ocfs2_fs.h ocfs2: Implement compat_ioctl() 2007-05-02 15:07:16 -07:00
ocfs2_lockid.h ocfs2: Remove delete inode vote 2007-04-26 14:39:48 -07:00
ocfs2.h ocfs2: Add "preferred slot" mount option 2007-07-10 17:19:54 -07:00
slot_map.c ocfs2: Add "preferred slot" mount option 2007-07-10 17:19:54 -07:00
slot_map.h
suballoc.c ocfs2: simplify deallocation locking 2007-07-10 17:31:54 -07:00
suballoc.h ocfs2: simplify deallocation locking 2007-07-10 17:31:54 -07:00
super.c ocfs2: Add "preferred slot" mount option 2007-07-10 17:19:54 -07:00
super.h
symlink.c mm: make read_cache_page synchronous 2007-05-07 12:12:51 -07:00
symlink.h [PATCH] mark struct inode_operations const 2 2007-02-12 09:48:46 -08:00
sysfile.c
sysfile.h
uptodate.c [PATCH] slab: remove kmem_cache_t 2006-12-07 08:39:25 -08:00
uptodate.h
ver.c
ver.h
vote.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
vote.h ocfs2: remove unused code 2007-04-26 14:40:16 -07:00