Commit c6f7afae authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'for-linus' of git://git.open-osd.org/linux-open-osd

* 'for-linus' of git://git.open-osd.org/linux-open-osd:
  exofs: simple_write_end does not mark_inode_dirty
  exofs: fix pnfs_osd re-definitions in pre-pnfs trees
parents 34e2fde8 efd124b9
...@@ -738,13 +738,28 @@ static int exofs_write_begin_export(struct file *file, ...@@ -738,13 +738,28 @@ static int exofs_write_begin_export(struct file *file,
fsdata); fsdata);
} }
static int exofs_write_end(struct file *file, struct address_space *mapping,
loff_t pos, unsigned len, unsigned copied,
struct page *page, void *fsdata)
{
struct inode *inode = mapping->host;
/* According to comment in simple_write_end i_mutex is held */
loff_t i_size = inode->i_size;
int ret;
ret = simple_write_end(file, mapping,pos, len, copied, page, fsdata);
if (i_size != inode->i_size)
mark_inode_dirty(inode);
return ret;
}
const struct address_space_operations exofs_aops = { const struct address_space_operations exofs_aops = {
.readpage = exofs_readpage, .readpage = exofs_readpage,
.readpages = exofs_readpages, .readpages = exofs_readpages,
.writepage = exofs_writepage, .writepage = exofs_writepage,
.writepages = exofs_writepages, .writepages = exofs_writepages,
.write_begin = exofs_write_begin_export, .write_begin = exofs_write_begin_export,
.write_end = simple_write_end, .write_end = exofs_write_end,
}; };
/****************************************************************************** /******************************************************************************
......
...@@ -15,13 +15,7 @@ ...@@ -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 { ...@@ -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__ */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment