|
@@ -32,6 +32,8 @@
|
|
|
#include "xfs_ialloc.h"
|
|
|
#include "xfs_dir2.h"
|
|
|
|
|
|
+#include <linux/iversion.h>
|
|
|
+
|
|
|
/*
|
|
|
* Check that none of the inode's in the buffer have a next
|
|
|
* unlinked field of 0.
|
|
@@ -264,7 +266,8 @@ xfs_inode_from_disk(
|
|
|
to->di_flags = be16_to_cpu(from->di_flags);
|
|
|
|
|
|
if (to->di_version == 3) {
|
|
|
- inode->i_version = be64_to_cpu(from->di_changecount);
|
|
|
+ inode_set_iversion_queried(inode,
|
|
|
+ be64_to_cpu(from->di_changecount));
|
|
|
to->di_crtime.t_sec = be32_to_cpu(from->di_crtime.t_sec);
|
|
|
to->di_crtime.t_nsec = be32_to_cpu(from->di_crtime.t_nsec);
|
|
|
to->di_flags2 = be64_to_cpu(from->di_flags2);
|
|
@@ -314,7 +317,7 @@ xfs_inode_to_disk(
|
|
|
to->di_flags = cpu_to_be16(from->di_flags);
|
|
|
|
|
|
if (from->di_version == 3) {
|
|
|
- to->di_changecount = cpu_to_be64(inode->i_version);
|
|
|
+ to->di_changecount = cpu_to_be64(inode_peek_iversion(inode));
|
|
|
to->di_crtime.t_sec = cpu_to_be32(from->di_crtime.t_sec);
|
|
|
to->di_crtime.t_nsec = cpu_to_be32(from->di_crtime.t_nsec);
|
|
|
to->di_flags2 = cpu_to_be64(from->di_flags2);
|