summaryrefslogtreecommitdiffstats
path: root/fs/dcache.c
diff options
context:
space:
mode:
authorSteven Whitehouse <swhiteho@redhat.com>2013-06-11 13:45:29 +0100
committerSteven Whitehouse <swhiteho@redhat.com>2013-06-11 13:45:29 +0100
commit5a00f3cc978be45b9d2597851bedaa40630bc597 (patch)
tree716a1b29594e352c4c793b699331d4d57578cce9 /fs/dcache.c
parenta9aefd707c65aa5a7945b3f16bd39f314aa8414d (diff)
downloadlinux-5a00f3cc978be45b9d2597851bedaa40630bc597.tar.gz
linux-5a00f3cc978be45b9d2597851bedaa40630bc597.tar.bz2
linux-5a00f3cc978be45b9d2597851bedaa40630bc597.zip
GFS2: Only do one directory search on create
Creation of a new inode requires a directory search in order to ensure that we are not trying to create an inode with the same name as an existing one. This was hidden away inside the create_ok() function. In the case that there was an existing inode, and a lookup can be substituted for a create (which is the case with regular files when the O_EXCL flag is not in use) then we were doing a second lookup in order to return the inode. This patch merges these two lookups into one. This can be done by passing a flag to gfs2_dir_search() to tell it to just return -EEXIST in the cases where we don't actually want to look up the inode. Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/dcache.c')
0 files changed, 0 insertions, 0 deletions