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 14#ifndef __EXOFS_PNFS_H__ 15#define __EXOFS_PNFS_H__ 16 17#if !defined(__PNFS_OSD_XDR_H__) 18 19enum pnfs_iomode { 20 IOMODE_READ = 1, 21 IOMODE_RW = 2, 22 IOMODE_ANY = 3, 23}; 24 25/* Layout Structure */ 26enum pnfs_osd_raid_algorithm4 { 27 PNFS_OSD_RAID_0 = 1, 28 PNFS_OSD_RAID_4 = 2, 29 PNFS_OSD_RAID_5 = 3, 30 PNFS_OSD_RAID_PQ = 4 /* Reed-Solomon P+Q */ 31}; 32 33struct pnfs_osd_data_map { 34 u32 odm_num_comps; 35 u64 odm_stripe_unit; 36 u32 odm_group_width; 37 u32 odm_group_depth; 38 u32 odm_mirror_cnt; 39 u32 odm_raid_algorithm; 40}; 41 42#endif /* ! defined(__PNFS_OSD_XDR_H__) */ 43 44#endif /* __EXOFS_PNFS_H__ */ 45