Whamcloud - gitweb
b=5209
[fs/lustre-release.git] / lustre / kernel_patches / patches / ext3-xattr-header-move-2.6.suse.patch
1 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/acl.c linux-2.6.4-51.0/fs/ext3/acl.c
2 --- linux-2.6.4-51.0.orig/fs/ext3/acl.c 2004-04-05 19:41:59.000000000 +0300
3 +++ linux-2.6.4-51.0/fs/ext3/acl.c      2004-04-07 11:06:33.000000000 +0300
4 @@ -10,7 +10,7 @@
5  #include <linux/fs.h>
6  #include <linux/ext3_jbd.h>
7  #include <linux/ext3_fs.h>
8 -#include "xattr.h"
9 +#include <linux/ext3_xattr.h>
10  #include "acl.h"
11  
12  /*
13 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/file.c linux-2.6.4-51.0/fs/ext3/file.c
14 --- linux-2.6.4-51.0.orig/fs/ext3/file.c        2004-04-05 19:41:59.000000000 +0300
15 +++ linux-2.6.4-51.0/fs/ext3/file.c     2004-04-07 11:06:39.000000000 +0300
16 @@ -23,7 +23,7 @@
17  #include <linux/jbd.h>
18  #include <linux/ext3_fs.h>
19  #include <linux/ext3_jbd.h>
20 -#include "xattr.h"
21 +#include <linux/ext3_xattr.h>
22  #include "acl.h"
23  
24  /*
25 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/ialloc.c linux-2.6.4-51.0/fs/ext3/ialloc.c
26 --- linux-2.6.4-51.0.orig/fs/ext3/ialloc.c      2004-04-06 22:17:15.000000000 +0300
27 +++ linux-2.6.4-51.0/fs/ext3/ialloc.c   2004-04-07 11:06:46.000000000 +0300
28 @@ -26,7 +26,7 @@
29  #include <asm/bitops.h>
30  #include <asm/byteorder.h>
31  
32 -#include "xattr.h"
33 +#include <linux/ext3_xattr.h>
34  #include "acl.h"
35  
36  /*
37 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/inode.c linux-2.6.4-51.0/fs/ext3/inode.c
38 --- linux-2.6.4-51.0.orig/fs/ext3/inode.c       2004-04-06 22:17:15.000000000 +0300
39 +++ linux-2.6.4-51.0/fs/ext3/inode.c    2004-04-07 11:25:05.000000000 +0300
40 @@ -36,7 +36,7 @@
41  #include <linux/writeback.h>
42  #include <linux/mpage.h>
43  #include <linux/uio.h>
44 -#include "xattr.h"
45 +#include <linux/ext3_xattr.h>
46  #include "iopen.h"
47  #include "acl.h"
48  
49 @@ -2340,7 +2340,7 @@ static unsigned long ext3_get_inode_bloc
50   * performed.
51   */
52  int ext3_get_inode_loc(struct inode *inode,
53 -                               struct ext3_iloc *iloc, int in_mem)
54 +                      struct ext3_iloc *iloc, int in_mem)
55  {
56         unsigned long block;
57         struct buffer_head *bh;
58 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/namei.c linux-2.6.4-51.0/fs/ext3/namei.c
59 --- linux-2.6.4-51.0.orig/fs/ext3/namei.c       2004-04-06 22:17:15.000000000 +0300
60 +++ linux-2.6.4-51.0/fs/ext3/namei.c    2004-04-07 11:06:57.000000000 +0300
61 @@ -36,7 +36,7 @@
62  #include <linux/quotaops.h>
63  #include <linux/buffer_head.h>
64  #include <linux/smp_lock.h>
65 -#include "xattr.h"
66 +#include <linux/ext3_xattr.h>
67  #include "iopen.h"
68  #include "acl.h"
69  
70 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/super.c linux-2.6.4-51.0/fs/ext3/super.c
71 --- linux-2.6.4-51.0.orig/fs/ext3/super.c       2004-04-06 22:17:15.000000000 +0300
72 +++ linux-2.6.4-51.0/fs/ext3/super.c    2004-04-07 11:07:05.000000000 +0300
73 @@ -33,7 +33,7 @@
74  #include <linux/vfs.h>
75  #include <linux/random.h>
76  #include <asm/uaccess.h>
77 -#include "xattr.h"
78 +#include <linux/ext3_xattr.h>
79  #include "acl.h"
80  
81  static int ext3_load_journal(struct super_block *, struct ext3_super_block *);
82 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/symlink.c linux-2.6.4-51.0/fs/ext3/symlink.c
83 --- linux-2.6.4-51.0.orig/fs/ext3/symlink.c     2004-04-05 19:41:59.000000000 +0300
84 +++ linux-2.6.4-51.0/fs/ext3/symlink.c  2004-04-07 11:07:16.000000000 +0300
85 @@ -20,7 +20,7 @@
86  #include <linux/fs.h>
87  #include <linux/jbd.h>
88  #include <linux/ext3_fs.h>
89 -#include "xattr.h"
90 +#include <linux/ext3_xattr.h>
91  
92  static int
93  ext3_readlink(struct dentry *dentry, char __user *buffer, int buflen)
94 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/xattr.c linux-2.6.4-51.0/fs/ext3/xattr.c
95 --- linux-2.6.4-51.0.orig/fs/ext3/xattr.c       2004-04-06 22:17:15.000000000 +0300
96 +++ linux-2.6.4-51.0/fs/ext3/xattr.c    2004-04-07 11:22:34.000000000 +0300
97 @@ -59,7 +59,7 @@
98  #include <linux/mbcache.h>
99  #include <linux/quotaops.h>
100  #include <linux/rwsem.h>
101 -#include "xattr.h"
102 +#include <linux/ext3_xattr.h>
103  #include "acl.h"
104  
105  #define HDR(bh) ((struct ext3_xattr_header *)((bh)->b_data))
106 @@ -348,7 +348,7 @@ cleanup:
107   */
108  int
109  ext3_xattr_ibody_get(struct inode *inode, int name_index, const char *name,
110 -              void *buffer, size_t buffer_size)
111 +                    void *buffer, size_t buffer_size)
112  {
113         int size, name_len = strlen(name), storage_size;
114         struct ext3_xattr_entry *last;
115 @@ -360,7 +360,7 @@ ext3_xattr_ibody_get(struct inode *inode
116         if (EXT3_SB(inode->i_sb)->s_inode_size <= EXT3_GOOD_OLD_INODE_SIZE)
117                 return -ENOENT;
118  
119 -       ret = ext3_get_inode_loc(inode, &iloc);
120 +       ret = ext3_get_inode_loc(inode, &iloc, 1);
121         if (ret)
122                 return ret;
123         raw_inode = ext3_raw_inode(&iloc);
124 @@ -542,7 +542,7 @@ ext3_xattr_ibody_list(struct inode *inod
125         if (EXT3_SB(inode->i_sb)->s_inode_size <= EXT3_GOOD_OLD_INODE_SIZE)
126                 return 0;
127  
128 -       ret = ext3_get_inode_loc(inode, &iloc);
129 +       ret = ext3_get_inode_loc(inode, &iloc, 1);
130         if (ret)
131                 return ret;
132         raw_inode = ext3_raw_inode(&iloc);
133 @@ -693,7 +693,7 @@ ext3_xattr_ibody_find(struct inode *inod
134         if (EXT3_SB(inode->i_sb)->s_inode_size <= EXT3_GOOD_OLD_INODE_SIZE)
135                 return ret;
136  
137 -       err = ext3_get_inode_loc(inode, &iloc);
138 +       err = ext3_get_inode_loc(inode, &iloc, 1);
139         if (err)
140                 return -EIO;
141         raw_inode = ext3_raw_inode(&iloc);
142 @@ -824,7 +824,7 @@ ext3_xattr_ibody_set(handle_t *handle, s
143         if (EXT3_SB(inode->i_sb)->s_inode_size <= EXT3_GOOD_OLD_INODE_SIZE)
144                 return -ENOSPC;
145  
146 -       err = ext3_get_inode_loc(inode, &iloc);
147 +       err = ext3_get_inode_loc(inode, &iloc, 1);
148         if (err)
149                 return err;
150         raw_inode = ext3_raw_inode(&iloc);
151 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/xattr.h linux-2.6.4-51.0/fs/ext3/xattr.h
152 --- linux-2.6.4-51.0.orig/fs/ext3/xattr.h       2004-04-06 22:17:15.000000000 +0300
153 +++ linux-2.6.4-51.0/fs/ext3/xattr.h    1970-01-01 03:00:00.000000000 +0300
154 @@ -1,147 +0,0 @@
155 -/*
156 -  File: fs/ext3/xattr.h
157 -
158 -  On-disk format of extended attributes for the ext3 filesystem.
159 -
160 -  (C) 2001 Andreas Gruenbacher, <a.gruenbacher@computer.org>
161 -*/
162 -
163 -#include <linux/config.h>
164 -#include <linux/xattr.h>
165 -
166 -/* Magic value in attribute blocks */
167 -#define EXT3_XATTR_MAGIC               0xEA020000
168 -
169 -/* Maximum number of references to one attribute block */
170 -#define EXT3_XATTR_REFCOUNT_MAX                1024
171 -
172 -/* Name indexes */
173 -#define EXT3_XATTR_INDEX_MAX                   10
174 -#define EXT3_XATTR_INDEX_USER                  1
175 -#define EXT3_XATTR_INDEX_POSIX_ACL_ACCESS      2
176 -#define EXT3_XATTR_INDEX_POSIX_ACL_DEFAULT     3
177 -#define EXT3_XATTR_INDEX_TRUSTED               4
178 -#define        EXT3_XATTR_INDEX_LUSTRE                 5
179 -#define EXT3_XATTR_INDEX_SECURITY              6
180 -
181 -struct ext3_xattr_header {
182 -       __u32   h_magic;        /* magic number for identification */
183 -       __u32   h_refcount;     /* reference count */
184 -       __u32   h_blocks;       /* number of disk blocks used */
185 -       __u32   h_hash;         /* hash value of all attributes */
186 -       __u32   h_reserved[4];  /* zero right now */
187 -};
188 -
189 -struct ext3_xattr_entry {
190 -       __u8    e_name_len;     /* length of name */
191 -       __u8    e_name_index;   /* attribute name index */
192 -       __u16   e_value_offs;   /* offset in disk block of value */
193 -       __u32   e_value_block;  /* disk block attribute is stored on (n/i) */
194 -       __u32   e_value_size;   /* size of attribute value */
195 -       __u32   e_hash;         /* hash value of name and value */
196 -       char    e_name[0];      /* attribute name */
197 -};
198 -
199 -#define EXT3_XATTR_PAD_BITS            2
200 -#define EXT3_XATTR_PAD         (1<<EXT3_XATTR_PAD_BITS)
201 -#define EXT3_XATTR_ROUND               (EXT3_XATTR_PAD-1)
202 -#define EXT3_XATTR_LEN(name_len) \
203 -       (((name_len) + EXT3_XATTR_ROUND + \
204 -       sizeof(struct ext3_xattr_entry)) & ~EXT3_XATTR_ROUND)
205 -#define EXT3_XATTR_NEXT(entry) \
206 -       ( (struct ext3_xattr_entry *)( \
207 -         (char *)(entry) + EXT3_XATTR_LEN((entry)->e_name_len)) )
208 -#define EXT3_XATTR_SIZE(size) \
209 -       (((size) + EXT3_XATTR_ROUND) & ~EXT3_XATTR_ROUND)
210 -
211 -# ifdef CONFIG_EXT3_FS_XATTR
212 -
213 -struct ext3_xattr_handler {
214 -       char *prefix;
215 -       size_t (*list)(char *list, struct inode *inode, const char *name,
216 -                      int name_len);
217 -       int (*get)(struct inode *inode, const char *name, void *buffer,
218 -                  size_t size);
219 -       int (*set)(struct inode *inode, const char *name, const void *buffer,
220 -                  size_t size, int flags);
221 -};
222 -
223 -extern int ext3_xattr_register(int, struct ext3_xattr_handler *);
224 -extern void ext3_xattr_unregister(int, struct ext3_xattr_handler *);
225 -
226 -extern int ext3_setxattr(struct dentry *, const char *, const void *, size_t, int);
227 -extern ssize_t ext3_getxattr(struct dentry *, const char *, void *, size_t);
228 -extern ssize_t ext3_listxattr(struct dentry *, char *, size_t);
229 -extern int ext3_removexattr(struct dentry *, const char *);
230 -
231 -extern int ext3_xattr_get(struct inode *, int, const char *, void *, size_t);
232 -extern int ext3_xattr_list(struct inode *, char *, size_t);
233 -extern int ext3_xattr_set(struct inode *, int, const char *, const void *, size_t, int);
234 -extern int ext3_xattr_set_handle(handle_t *, struct inode *, int, const char *,const void *,size_t,int);
235 -extern int ext3_xattr_block_set(handle_t *, struct inode *, int, const char *,const void *,size_t,int);
236 -
237 -extern void ext3_xattr_delete_inode(handle_t *, struct inode *);
238 -extern void ext3_xattr_put_super(struct super_block *);
239 -
240 -extern int init_ext3_xattr(void);
241 -extern void exit_ext3_xattr(void);
242 -
243 -# else  /* CONFIG_EXT3_FS_XATTR */
244 -#  define ext3_setxattr                NULL
245 -#  define ext3_getxattr                NULL
246 -#  define ext3_listxattr       NULL
247 -#  define ext3_removexattr     NULL
248 -
249 -static inline int
250 -ext3_xattr_get(struct inode *inode, int name_index, const char *name,
251 -              void *buffer, size_t size, int flags)
252 -{
253 -       return -EOPNOTSUPP;
254 -}
255 -
256 -static inline int
257 -ext3_xattr_list(struct inode *inode, void *buffer, size_t size)
258 -{
259 -       return -EOPNOTSUPP;
260 -}
261 -
262 -static inline int
263 -ext3_xattr_set(struct inode *inode, int name_index, const char *name,
264 -              const void *value, size_t size, int flags)
265 -{
266 -       return -EOPNOTSUPP;
267 -}
268 -
269 -static inline int
270 -ext3_xattr_set_handle(handle_t *handle, struct inode *inode, int name_index,
271 -              const char *name, const void *value, size_t size, int flags)
272 -{
273 -       return -EOPNOTSUPP;
274 -}
275 -
276 -static inline void
277 -ext3_xattr_delete_inode(handle_t *handle, struct inode *inode)
278 -{
279 -}
280 -
281 -static inline void
282 -ext3_xattr_put_super(struct super_block *sb)
283 -{
284 -}
285 -
286 -static inline int
287 -init_ext3_xattr(void)
288 -{
289 -       return 0;
290 -}
291 -
292 -static inline void
293 -exit_ext3_xattr(void)
294 -{
295 -}
296 -
297 -# endif  /* CONFIG_EXT3_FS_XATTR */
298 -
299 -extern struct ext3_xattr_handler ext3_xattr_user_handler;
300 -extern struct ext3_xattr_handler ext3_xattr_trusted_handler;
301 -extern struct ext3_xattr_handler ext3_xattr_security_handler;
302 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/xattr_security.c linux-2.6.4-51.0/fs/ext3/xattr_security.c
303 --- linux-2.6.4-51.0.orig/fs/ext3/xattr_security.c      2004-04-05 19:41:59.000000000 +0300
304 +++ linux-2.6.4-51.0/fs/ext3/xattr_security.c   2004-04-07 11:06:22.000000000 +0300
305 @@ -9,7 +9,7 @@
306  #include <linux/smp_lock.h>
307  #include <linux/ext3_jbd.h>
308  #include <linux/ext3_fs.h>
309 -#include "xattr.h"
310 +#include <linux/ext3_xattr.h>
311  
312  static size_t
313  ext3_xattr_security_list(char *list, struct inode *inode,
314 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/xattr_trusted.c linux-2.6.4-51.0/fs/ext3/xattr_trusted.c
315 --- linux-2.6.4-51.0.orig/fs/ext3/xattr_trusted.c       2004-04-05 19:41:59.000000000 +0300
316 +++ linux-2.6.4-51.0/fs/ext3/xattr_trusted.c    2004-04-07 11:07:41.000000000 +0300
317 @@ -11,7 +11,7 @@
318  #include <linux/smp_lock.h>
319  #include <linux/ext3_jbd.h>
320  #include <linux/ext3_fs.h>
321 -#include "xattr.h"
322 +#include <linux/ext3_xattr.h>
323  
324  #define XATTR_TRUSTED_PREFIX "trusted."
325  
326 diff -rupN linux-2.6.4-51.0.orig/fs/ext3/xattr_user.c linux-2.6.4-51.0/fs/ext3/xattr_user.c
327 --- linux-2.6.4-51.0.orig/fs/ext3/xattr_user.c  2004-04-05 19:41:59.000000000 +0300
328 +++ linux-2.6.4-51.0/fs/ext3/xattr_user.c       2004-04-07 11:07:47.000000000 +0300
329 @@ -11,7 +11,7 @@
330  #include <linux/smp_lock.h>
331  #include <linux/ext3_jbd.h>
332  #include <linux/ext3_fs.h>
333 -#include "xattr.h"
334 +#include <linux/ext3_xattr.h>
335  
336  #define XATTR_USER_PREFIX "user."
337  
338 diff -rupN linux-2.6.4-51.0.orig/include/linux/ext3_fs.h linux-2.6.4-51.0/include/linux/ext3_fs.h
339 --- linux-2.6.4-51.0.orig/include/linux/ext3_fs.h       2004-04-06 22:17:15.000000000 +0300
340 +++ linux-2.6.4-51.0/include/linux/ext3_fs.h    2004-04-07 11:13:26.000000000 +0300
341 @@ -741,6 +741,9 @@ extern void ext3_truncate (struct inode 
342  extern void ext3_set_inode_flags(struct inode *);
343  extern void ext3_set_aops(struct inode *inode);
344  
345 +extern int ext3_get_inode_loc(struct inode *inode,
346 +                             struct ext3_iloc *iloc, int in_mem);
347 +
348  /* ioctl.c */
349  extern int ext3_ioctl (struct inode *, struct file *, unsigned int,
350                        unsigned long);
351 diff -rupN linux-2.6.4-51.0.orig/include/linux/ext3_xattr.h linux-2.6.4-51.0/include/linux/ext3_xattr.h
352 --- linux-2.6.4-51.0.orig/include/linux/ext3_xattr.h    1970-01-01 03:00:00.000000000 +0300
353 +++ linux-2.6.4-51.0/include/linux/ext3_xattr.h 2004-04-07 11:08:34.000000000 +0300
354 @@ -0,0 +1,152 @@
355 +/*
356 +  File: linux/include/linux/ext3_xattr.h
357 +
358 +  On-disk format of extended attributes for the ext3 filesystem.
359 +
360 +  (C) 2001 Andreas Gruenbacher, <a.gruenbacher@computer.org>
361 +*/
362 +
363 +#ifndef _LINUX_EXT3_XATTR_H
364 +#define _LINUX_EXT3_XATTR_H
365 +
366 +#include <linux/config.h>
367 +#include <linux/xattr.h>
368 +
369 +/* Magic value in attribute blocks */
370 +#define EXT3_XATTR_MAGIC               0xEA020000
371 +
372 +/* Maximum number of references to one attribute block */
373 +#define EXT3_XATTR_REFCOUNT_MAX                1024
374 +
375 +/* Name indexes */
376 +#define EXT3_XATTR_INDEX_MAX                   10
377 +#define EXT3_XATTR_INDEX_USER                  1
378 +#define EXT3_XATTR_INDEX_POSIX_ACL_ACCESS      2
379 +#define EXT3_XATTR_INDEX_POSIX_ACL_DEFAULT     3
380 +#define EXT3_XATTR_INDEX_TRUSTED               4
381 +#define        EXT3_XATTR_INDEX_LUSTRE                 5
382 +#define EXT3_XATTR_INDEX_SECURITY              6
383 +
384 +struct ext3_xattr_header {
385 +       __u32   h_magic;        /* magic number for identification */
386 +       __u32   h_refcount;     /* reference count */
387 +       __u32   h_blocks;       /* number of disk blocks used */
388 +       __u32   h_hash;         /* hash value of all attributes */
389 +       __u32   h_reserved[4];  /* zero right now */
390 +};
391 +
392 +struct ext3_xattr_entry {
393 +       __u8    e_name_len;     /* length of name */
394 +       __u8    e_name_index;   /* attribute name index */
395 +       __u16   e_value_offs;   /* offset in disk block of value */
396 +       __u32   e_value_block;  /* disk block attribute is stored on (n/i) */
397 +       __u32   e_value_size;   /* size of attribute value */
398 +       __u32   e_hash;         /* hash value of name and value */
399 +       char    e_name[0];      /* attribute name */
400 +};
401 +
402 +#define EXT3_XATTR_PAD_BITS            2
403 +#define EXT3_XATTR_PAD         (1<<EXT3_XATTR_PAD_BITS)
404 +#define EXT3_XATTR_ROUND               (EXT3_XATTR_PAD-1)
405 +#define EXT3_XATTR_LEN(name_len) \
406 +       (((name_len) + EXT3_XATTR_ROUND + \
407 +       sizeof(struct ext3_xattr_entry)) & ~EXT3_XATTR_ROUND)
408 +#define EXT3_XATTR_NEXT(entry) \
409 +       ( (struct ext3_xattr_entry *)( \
410 +         (char *)(entry) + EXT3_XATTR_LEN((entry)->e_name_len)) )
411 +#define EXT3_XATTR_SIZE(size) \
412 +       (((size) + EXT3_XATTR_ROUND) & ~EXT3_XATTR_ROUND)
413 +
414 +# ifdef CONFIG_EXT3_FS_XATTR
415 +
416 +struct ext3_xattr_handler {
417 +       char *prefix;
418 +       size_t (*list)(char *list, struct inode *inode, const char *name,
419 +                      int name_len);
420 +       int (*get)(struct inode *inode, const char *name, void *buffer,
421 +                  size_t size);
422 +       int (*set)(struct inode *inode, const char *name, const void *buffer,
423 +                  size_t size, int flags);
424 +};
425 +
426 +extern int ext3_xattr_register(int, struct ext3_xattr_handler *);
427 +extern void ext3_xattr_unregister(int, struct ext3_xattr_handler *);
428 +
429 +extern int ext3_setxattr(struct dentry *, const char *, const void *, size_t, int);
430 +extern ssize_t ext3_getxattr(struct dentry *, const char *, void *, size_t);
431 +extern ssize_t ext3_listxattr(struct dentry *, char *, size_t);
432 +extern int ext3_removexattr(struct dentry *, const char *);
433 +
434 +extern int ext3_xattr_get(struct inode *, int, const char *, void *, size_t);
435 +extern int ext3_xattr_list(struct inode *, char *, size_t);
436 +extern int ext3_xattr_set(struct inode *, int, const char *, const void *, size_t, int);
437 +extern int ext3_xattr_set_handle(handle_t *, struct inode *, int, const char *,const void *,size_t,int);
438 +extern int ext3_xattr_block_set(handle_t *, struct inode *, int, const char *,const void *,size_t,int);
439 +
440 +extern void ext3_xattr_delete_inode(handle_t *, struct inode *);
441 +extern void ext3_xattr_put_super(struct super_block *);
442 +
443 +extern int init_ext3_xattr(void);
444 +extern void exit_ext3_xattr(void);
445 +
446 +# else  /* CONFIG_EXT3_FS_XATTR */
447 +#  define ext3_setxattr                NULL
448 +#  define ext3_getxattr                NULL
449 +#  define ext3_listxattr       NULL
450 +#  define ext3_removexattr     NULL
451 +
452 +static inline int
453 +ext3_xattr_get(struct inode *inode, int name_index, const char *name,
454 +              void *buffer, size_t size, int flags)
455 +{
456 +       return -EOPNOTSUPP;
457 +}
458 +
459 +static inline int
460 +ext3_xattr_list(struct inode *inode, void *buffer, size_t size)
461 +{
462 +       return -EOPNOTSUPP;
463 +}
464 +
465 +static inline int
466 +ext3_xattr_set(struct inode *inode, int name_index, const char *name,
467 +              const void *value, size_t size, int flags)
468 +{
469 +       return -EOPNOTSUPP;
470 +}
471 +
472 +static inline int
473 +ext3_xattr_set_handle(handle_t *handle, struct inode *inode, int name_index,
474 +              const char *name, const void *value, size_t size, int flags)
475 +{
476 +       return -EOPNOTSUPP;
477 +}
478 +
479 +static inline void
480 +ext3_xattr_delete_inode(handle_t *handle, struct inode *inode)
481 +{
482 +}
483 +
484 +static inline void
485 +ext3_xattr_put_super(struct super_block *sb)
486 +{
487 +}
488 +
489 +static inline int
490 +init_ext3_xattr(void)
491 +{
492 +       return 0;
493 +}
494 +
495 +static inline void
496 +exit_ext3_xattr(void)
497 +{
498 +}
499 +
500 +# endif  /* CONFIG_EXT3_FS_XATTR */
501 +
502 +extern struct ext3_xattr_handler ext3_xattr_user_handler;
503 +extern struct ext3_xattr_handler ext3_xattr_trusted_handler;
504 +extern struct ext3_xattr_handler ext3_xattr_security_handler;
505 +
506 +#endif