linux-stable/fs/gfs2
Steven Whitehouse 7276b3b0c7 [GFS2] Tidy up meta_io code
Fix a bug in the directory reading code, where we might have dereferenced
a NULL pointer in case of OOM. Updated the directory code to use the new
& improved version of gfs2_meta_ra() which now returns the first block
that was being read. Previously it was releasing it requiring following
code to grab the block again at each point it was called.

Also turned off readahead on directory lookups since we are reading a
hash table, and therefore reading the entries in order is very
unlikely. Readahead is still used for all other calls to the
directory reading function (e.g. when growing the hash table).

Removed the DIO_START constant. Everywhere this was used, it was
used to unconditionally start i/o aside from a couple of places, so
I've removed it and made the couple of exceptions to this rule into
separate functions.

Also hunted through the other DIO flags and removed them as arguments
from functions which were always called with the same combination of
arguments.

Updated gfs2_meta_indirect_buffer to be a bit more efficient and
hopefully also be a bit easier to read.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
2006-09-21 17:05:23 -04:00
..
locking [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
Kconfig [GFS2] gfs2/dlm: mailing list and web page 2006-06-22 15:29:57 -04:00
Makefile [GFS2] Update copyright, tidy up incore.h 2006-09-01 11:05:15 -04:00
acl.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
acl.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
bmap.c [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
bmap.h [GFS2] Map multiple blocks at once where possible 2006-09-18 17:18:23 -04:00
daemon.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
daemon.h [GFS2] Update copyright, tidy up incore.h 2006-09-01 11:05:15 -04:00
dir.c [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
dir.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
eaops.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
eaops.h [GFS2] Extended attribute code style changes 2006-09-05 13:15:18 -04:00
eattr.c [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
eattr.h [GFS2] Extended attribute code style changes 2006-09-05 13:15:18 -04:00
gfs2.h [GFS2] Update copyright, tidy up incore.h 2006-09-01 11:05:15 -04:00
glock.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
glock.h [GFS2] Remove unused function from glock.c 2006-09-09 18:59:27 -04:00
glops.c [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
glops.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
incore.h [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
inode.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
inode.h [GFS2] Update copyright, tidy up incore.h 2006-09-01 11:05:15 -04:00
lm.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
lm.h [GFS2] Use void * instead of typedef for locking module interface 2006-09-08 10:17:58 -04:00
locking.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
log.c [GFS2] Use list_for_each_entry_safe_reverse in gfs2_ail1_start() 2006-09-19 11:17:38 -04:00
log.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
lops.c [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
lops.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
main.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
meta_io.c [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
meta_io.h [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
mount.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
mount.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
ondisk.c [GFS2] Use const in endian conversion routines 2006-09-04 14:48:37 -04:00
ops_address.c [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
ops_address.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
ops_dentry.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
ops_dentry.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
ops_export.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
ops_export.h [GFS2] Some further style changes 2006-09-04 16:16:45 -04:00
ops_file.c [GFS2] Remove "NFS only" readdir path 2006-09-19 16:41:11 -04:00
ops_file.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
ops_fstype.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
ops_fstype.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
ops_inode.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
ops_inode.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
ops_super.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
ops_super.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
ops_vm.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
ops_vm.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
quota.c [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
quota.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
recovery.c [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
recovery.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
rgrp.c [GFS2] Tidy up meta_io code 2006-09-21 17:05:23 -04:00
rgrp.h [GFS2] More style fixes 2006-09-05 15:41:57 -04:00
super.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
super.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
sys.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
sys.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
trans.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
trans.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
util.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
util.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00