diff options
Diffstat (limited to 'fs/exofs/pnfs.h')
-rw-r--r-- | fs/exofs/pnfs.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/fs/exofs/pnfs.h b/fs/exofs/pnfs.h new file mode 100644 index 000000000000..423033addd1f --- /dev/null +++ b/fs/exofs/pnfs.h | |||
@@ -0,0 +1,51 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2008, 2009 | ||
3 | * Boaz Harrosh <bharrosh@panasas.com> | ||
4 | * | ||
5 | * This file is part of exofs. | ||
6 | * | ||
7 | * exofs is free software; you can redistribute it and/or modify it under the | ||
8 | * terms of the GNU General Public License version 2 as published by the Free | ||
9 | * Software Foundation. | ||
10 | * | ||
11 | */ | ||
12 | |||
13 | /* FIXME: Remove this file once pnfs hits mainline */ | ||
14 | |||
15 | #ifndef __EXOFS_PNFS_H__ | ||
16 | #define __EXOFS_PNFS_H__ | ||
17 | |||
18 | #if defined(CONFIG_PNFS) | ||
19 | |||
20 | |||
21 | /* FIXME: move this file to: linux/exportfs/pnfs_osd_xdr.h */ | ||
22 | #include "../nfs/objlayout/pnfs_osd_xdr.h" | ||
23 | |||
24 | #else /* defined(CONFIG_PNFS) */ | ||
25 | |||
26 | enum pnfs_iomode { | ||
27 | IOMODE_READ = 1, | ||
28 | IOMODE_RW = 2, | ||
29 | IOMODE_ANY = 3, | ||
30 | }; | ||
31 | |||
32 | /* Layout Structure */ | ||
33 | enum pnfs_osd_raid_algorithm4 { | ||
34 | PNFS_OSD_RAID_0 = 1, | ||
35 | PNFS_OSD_RAID_4 = 2, | ||
36 | PNFS_OSD_RAID_5 = 3, | ||
37 | PNFS_OSD_RAID_PQ = 4 /* Reed-Solomon P+Q */ | ||
38 | }; | ||
39 | |||
40 | struct pnfs_osd_data_map { | ||
41 | u32 odm_num_comps; | ||
42 | u64 odm_stripe_unit; | ||
43 | u32 odm_group_width; | ||
44 | u32 odm_group_depth; | ||
45 | u32 odm_mirror_cnt; | ||
46 | u32 odm_raid_algorithm; | ||
47 | }; | ||
48 | |||
49 | #endif /* else defined(CONFIG_PNFS) */ | ||
50 | |||
51 | #endif /* __EXOFS_PNFS_H__ */ | ||