aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/symlink.c
diff options
context:
space:
mode:
authorTiger Yang <tiger.yang@oracle.com>2008-08-18 05:11:00 -0400
committerMark Fasheh <mfasheh@suse.com>2008-10-13 19:57:02 -0400
commitcf1d6c763fbcb115263114302485ad17e7933d87 (patch)
tree85717dc9d20b7ac1e31b683653933f2d30099f44 /fs/ocfs2/symlink.c
parentfdd77704a8b4666a32120fcd1e4a9fedaf3263d8 (diff)
ocfs2: Add extended attribute support
This patch implements storing extended attributes both in inode or a single external block. We only store EA's in-inode when blocksize > 512 or that inode block has free space for it. When an EA's value is larger than 80 bytes, we will store the value via b-tree outside inode or block. Signed-off-by: Tiger Yang <tiger.yang@oracle.com> Signed-off-by: Mark Fasheh <mfasheh@suse.com>
Diffstat (limited to 'fs/ocfs2/symlink.c')
-rw-r--r--fs/ocfs2/symlink.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/fs/ocfs2/symlink.c b/fs/ocfs2/symlink.c
index ba9dbb51d25..8c5879c7f84 100644
--- a/fs/ocfs2/symlink.c
+++ b/fs/ocfs2/symlink.c
@@ -50,6 +50,7 @@
50#include "inode.h" 50#include "inode.h"
51#include "journal.h" 51#include "journal.h"
52#include "symlink.h" 52#include "symlink.h"
53#include "xattr.h"
53 54
54#include "buffer_head_io.h" 55#include "buffer_head_io.h"
55 56
@@ -168,10 +169,18 @@ const struct inode_operations ocfs2_symlink_inode_operations = {
168 .follow_link = ocfs2_follow_link, 169 .follow_link = ocfs2_follow_link,
169 .getattr = ocfs2_getattr, 170 .getattr = ocfs2_getattr,
170 .setattr = ocfs2_setattr, 171 .setattr = ocfs2_setattr,
172 .setxattr = generic_setxattr,
173 .getxattr = generic_getxattr,
174 .listxattr = ocfs2_listxattr,
175 .removexattr = generic_removexattr,
171}; 176};
172const struct inode_operations ocfs2_fast_symlink_inode_operations = { 177const struct inode_operations ocfs2_fast_symlink_inode_operations = {
173 .readlink = ocfs2_readlink, 178 .readlink = ocfs2_readlink,
174 .follow_link = ocfs2_follow_link, 179 .follow_link = ocfs2_follow_link,
175 .getattr = ocfs2_getattr, 180 .getattr = ocfs2_getattr,
176 .setattr = ocfs2_setattr, 181 .setattr = ocfs2_setattr,
182 .setxattr = generic_setxattr,
183 .getxattr = generic_getxattr,
184 .listxattr = ocfs2_listxattr,
185 .removexattr = generic_removexattr,
177}; 186};