exofs: fix pnfs_osd re-definitions in pre-pnfs trees
Some on disk exofs constants and types are defined in the pnfs_osd_xdr.h file. Since we needed these types before the pnfs-objects code was accepted to mainline we duplicated the minimal needed definitions into an exofs local header. The definitions where conditionally included depending on !CONFIG_PNFS defined. So if PNFS was present in the tree definitions are taken from there and if not they are defined locally. That was all good but, the CONFIG_PNFS is planed to be included upstream before the pnfs-objects is also included. (The first pnfs batch might be pnfs-files only) So condition exofs local definitions on the absence of pnfs_osd_xdr.h inclusion (__PNFS_OSD_XDR_H__ not defined). User code must make sure that in future pnfs_osd_xdr.h will be included before fs/exofs/pnfs.h, which happens to be so in current code. Once pnfs-objects hits mainline, exofs's local header will be removed. Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
This commit is contained in:
@@ -15,13 +15,7 @@
|
|||||||
#ifndef __EXOFS_PNFS_H__
|
#ifndef __EXOFS_PNFS_H__
|
||||||
#define __EXOFS_PNFS_H__
|
#define __EXOFS_PNFS_H__
|
||||||
|
|
||||||
#if defined(CONFIG_PNFS)
|
#if ! defined(__PNFS_OSD_XDR_H__)
|
||||||
|
|
||||||
|
|
||||||
/* FIXME: move this file to: linux/exportfs/pnfs_osd_xdr.h */
|
|
||||||
#include "../nfs/objlayout/pnfs_osd_xdr.h"
|
|
||||||
|
|
||||||
#else /* defined(CONFIG_PNFS) */
|
|
||||||
|
|
||||||
enum pnfs_iomode {
|
enum pnfs_iomode {
|
||||||
IOMODE_READ = 1,
|
IOMODE_READ = 1,
|
||||||
@@ -46,6 +40,6 @@ struct pnfs_osd_data_map {
|
|||||||
u32 odm_raid_algorithm;
|
u32 odm_raid_algorithm;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* else defined(CONFIG_PNFS) */
|
#endif /* ! defined(__PNFS_OSD_XDR_H__) */
|
||||||
|
|
||||||
#endif /* __EXOFS_PNFS_H__ */
|
#endif /* __EXOFS_PNFS_H__ */
|
||||||
|
Reference in New Issue
Block a user