linux/fs/exofs
Boaz Harrosh 1cea312ad4 exofs: Write sbi->s_nextid as part of the Create command
Before when creating a new inode, we'd set the sb->s_dirt flag,
and sometime later the system would write out s_nextid as part
of the sb_info. Also on inode sync we would force the sb sync
as well.

Define the s_nextid as a new partition attribute and set it
every time we create a new object.
At mount we read it from it's new place.

We now never set sb->s_dirt anywhere in exofs. write_super
is actually never called. The call to exofs_write_super from
exofs_put_super is also removed because the VFS always calls
->sync_fs before calling ->put_super twice.

To stay backward-and-forward compatible we also write the old
s_nextid in the super_block object at unmount, and support zero
length attribute on mount.

This also fixes a BUG where in layouts when group_width was not
a divisor of EXOFS_SUPER_ID (0x10000) the s_nextid was not read
from the device it was written to. Because of the sliding window
layout trick, and because the read was always done from the 0
device but the write was done via the raid engine that might slide
the device view. Now we read and write through the raid engine.

Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
2011-03-15 15:02:51 +02:00
..
BUGS exofs: Documentation 2009-03-31 19:44:38 +03:00
common.h exofs: Write sbi->s_nextid as part of the Create command 2011-03-15 15:02:51 +02:00
dir.c exofs: Trivial: fix some indentation and debug prints 2011-03-15 15:00:27 +02:00
exofs.h exofs: Write sbi->s_nextid as part of the Create command 2011-03-15 15:02:51 +02:00
file.c exofs: Write sbi->s_nextid as part of the Create command 2011-03-15 15:02:51 +02:00
inode.c exofs: Write sbi->s_nextid as part of the Create command 2011-03-15 15:02:51 +02:00
ios.c fs/exofs: typo fix of faild to failed 2010-10-25 18:02:49 +02:00
Kbuild exofs: move osd.c to ios.c 2009-12-10 09:59:21 +02:00
Kconfig exofs: Kbuild, Headers and osd utils 2009-03-31 19:44:20 +03:00
namei.c exofs: i_nlink races in rename() 2011-03-03 01:28:17 -05:00
pnfs.h exofs: fix pnfs_osd re-definitions in pre-pnfs trees 2010-01-05 09:14:32 +02:00
super.c exofs: Write sbi->s_nextid as part of the Create command 2011-03-15 15:02:51 +02:00
symlink.c exofs: Remove IBM copyrights 2009-06-21 17:53:47 +03:00