linux/fs/nilfs2
Ryusuke Konishi d4b961576d nilfs2: remove bmap pointer operations
Previously, the bmap codes of nilfs used three types of function
tables.  The abuse of indirect function calls decreased source
readability and suffered many indirect jumps which would confuse
branch prediction of processors.

This eliminates one type of the function tables,
nilfs_bmap_ptr_operations, which was used to dispatch low level
pointer operations of the nilfs bmap.

This adds a new integer variable "b_ptr_type" to nilfs_bmap struct,
and uses the value to select the pointer operations.

Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
2009-06-10 23:41:10 +09:00
..
Makefile nilfs2: update makefile and Kconfig 2009-04-07 08:31:16 -07:00
alloc.c nilfs2: persistent object allocator 2009-04-07 08:31:13 -07:00
alloc.h nilfs2: persistent object allocator 2009-04-07 08:31:13 -07:00
bmap.c nilfs2: remove bmap pointer operations 2009-06-10 23:41:10 +09:00
bmap.h nilfs2: remove bmap pointer operations 2009-06-10 23:41:10 +09:00
bmap_union.h nilfs2: integrated block mapping 2009-04-07 08:31:13 -07:00
btnode.c nilfs2: B-tree node cache 2009-04-07 08:31:13 -07:00
btnode.h nilfs2: B-tree node cache 2009-04-07 08:31:13 -07:00
btree.c nilfs2: remove bmap pointer operations 2009-06-10 23:41:10 +09:00
btree.h nilfs2: remove useless b_low and b_high fields from nilfs_bmap struct 2009-06-10 23:41:10 +09:00
cpfile.c nilfs2: fix bh leak in nilfs_cpfile_delete_checkpoints function 2009-05-30 22:07:50 +09:00
cpfile.h nilfs2: fix gc failure on volumes keeping numerous snapshots 2009-04-07 08:31:17 -07:00
dat.c nilfs2: remove nilfs_dat_prepare_free function 2009-06-10 23:41:09 +09:00
dat.h nilfs2: disk address translator 2009-04-07 08:31:14 -07:00
dir.c nilfs2: use unlocked_ioctl 2009-04-07 08:31:19 -07:00
direct.c nilfs2: remove bmap pointer operations 2009-06-10 23:41:10 +09:00
direct.h nilfs2: remove useless b_low and b_high fields from nilfs_bmap struct 2009-06-10 23:41:10 +09:00
file.c nilfs2: use unlocked_ioctl 2009-04-07 08:31:19 -07:00
gcdat.c nilfs2: another dat for garbage collection 2009-04-07 08:31:16 -07:00
gcinode.c nilfs2: support nanosecond timestamp 2009-04-07 08:31:20 -07:00
ifile.c nilfs2: inode map file 2009-04-07 08:31:14 -07:00
ifile.h nilfs2: inode map file 2009-04-07 08:31:14 -07:00
inode.c nilfs2: support nanosecond timestamp 2009-04-07 08:31:20 -07:00
ioctl.c nilfs2: eliminate removal list of segments 2009-06-10 23:41:09 +09:00
mdt.c nilfs2: ensure to clear dirty state when deleting metadata file block 2009-05-10 17:04:42 +09:00
mdt.h nilfs2: meta data file 2009-04-07 08:31:13 -07:00
namei.c nilfs2: avoid double error caused by nilfs_transaction_end 2009-04-07 08:31:17 -07:00
nilfs.h nilfs2: fix lock order reversal in nilfs_clean_segments ioctl 2009-05-11 14:54:41 +09:00
page.c nilfs2: ensure to clear dirty state when deleting metadata file block 2009-05-10 17:04:42 +09:00
page.h nilfs2: buffer and page operations 2009-04-07 08:31:13 -07:00
recovery.c nilfs2: remove header file for segment list operations 2009-06-10 23:41:09 +09:00
sb.h nilfs2: add inode and other major structures 2009-04-07 08:31:12 -07:00
segbuf.c nilfs2: eliminate removal list of segments 2009-06-10 23:41:09 +09:00
segbuf.h nilfs2: simplify handling of active state of segments 2009-04-07 08:31:20 -07:00
segment.c nilfs2: eliminate removal list of segments 2009-06-10 23:41:09 +09:00
segment.h nilfs2: remove header file for segment list operations 2009-06-10 23:41:09 +09:00
sufile.c nilfs2: add sufile function that can modify multiple segment usages 2009-06-10 23:41:09 +09:00
sufile.h nilfs2: eliminate removal list of segments 2009-06-10 23:41:09 +09:00
super.c nilfs2: remove module version 2009-04-13 09:53:50 +09:00
the_nilfs.c nilfs2: remove header file for segment list operations 2009-06-10 23:41:09 +09:00
the_nilfs.h nilfs2: introduce secondary super block 2009-04-07 08:31:20 -07:00