<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:΢ÈíÑźÚ
}
--></style>
</head>
<body class='hmmessage'><div dir='ltr'>
I have tried this patch, And problem resolved!<BR>
Thank you for your help!<BR>
<BR>&nbsp;<BR>
<DIV>
&gt; Date: Mon, 28 Nov 2011 06:19:47 -0500<BR>&gt; From: hch@infradead.org<BR>&gt; To: ygq51@hotmail.com<BR>&gt; Subject: Re: xfs: validate inode numbers in file handles correctly<BR>&gt; CC: linux-xfs@oss.sgi.com; pengxihan@gmail.com<BR>&gt; <BR>&gt; Guoquan and hank,<BR>&gt; <BR>&gt; are you using 32-bit or 64-bit kernels? I just noticed we have a<BR>&gt; problem with exporting 64-bit inodes on 32-bit kernel because the<BR>&gt; VFS i_ino field is just 32-bits long. The patch below would fix<BR>&gt; that issue.<BR>&gt; <BR>&gt; --- xfs.orig/fs/xfs/linux-2.6/xfs_export.c 2011-11-28 12:11:08.923630697 +0100<BR>&gt; +++ xfs/fs/xfs/linux-2.6/xfs_export.c 2011-11-28 12:13:21.766244360 +0100<BR>&gt; @@ -61,6 +61,8 @@ xfs_fs_encode_fh(<BR>&gt; struct fid *fid = (struct fid *)fh;<BR>&gt; struct xfs_fid64 *fid64 = (struct xfs_fid64 *)fh;<BR>&gt; struct inode *inode = dentry-&gt;d_inode;<BR>&gt; + struct inode *parent;<BR>&gt; + struct xfs_inode *ip = XFS_I(inode);<BR>&gt; int fileid_
 type;<BR>&gt; int len;<BR>&gt; <BR>&gt; @@ -98,22 +100,24 @@ xfs_fs_encode_fh(<BR>&gt; switch (fileid_type) {<BR>&gt; case FILEID_INO32_GEN_PARENT:<BR>&gt; spin_lock(&amp;dentry-&gt;d_lock);<BR>&gt; - fid-&gt;i32.parent_ino = dentry-&gt;d_parent-&gt;d_inode-&gt;i_ino;<BR>&gt; - fid-&gt;i32.parent_gen = dentry-&gt;d_parent-&gt;d_inode-&gt;i_generation;<BR>&gt; + parent = dentry-&gt;d_parent-&gt;d_inode;<BR>&gt; + fid-&gt;i32.parent_ino = XFS_I(parent)-&gt;i_ino;<BR>&gt; + fid-&gt;i32.parent_gen = parent-&gt;i_generation;<BR>&gt; spin_unlock(&amp;dentry-&gt;d_lock);<BR>&gt; /*FALLTHRU*/<BR>&gt; case FILEID_INO32_GEN:<BR>&gt; - fid-&gt;i32.ino = inode-&gt;i_ino;<BR>&gt; + fid-&gt;i32.ino = ip-&gt;i_ino;<BR>&gt; fid-&gt;i32.gen = inode-&gt;i_generation;<BR>&gt; break;<BR>&gt; case FILEID_INO32_GEN_PARENT | XFS_FILEID_TYPE_64FLAG:<BR>&gt; spin_lock(&amp;dentry-&gt;d_lock);<BR>&gt; - fid64-&gt;parent_ino = dentry-&gt;d_parent-&gt;d_inode-&gt;i_ino;<BR>&gt; - fid64-&gt;parent_gen =
  
 dentry-&gt;d_parent-&gt;d_inode-&gt;i_generation;<BR>&gt; + parent = dentry-&gt;d_parent-&gt;d_inode;<BR>&gt; + fid64-&gt;parent_ino = XFS_I(parent)-&gt;i_ino;<BR>&gt; + fid64-&gt;parent_gen = parent-&gt;i_generation;<BR>&gt; spin_unlock(&amp;dentry-&gt;d_lock);<BR>&gt; /*FALLTHRU*/<BR>&gt; case FILEID_INO32_GEN | XFS_FILEID_TYPE_64FLAG:<BR>&gt; - fid64-&gt;ino = inode-&gt;i_ino;<BR>&gt; + fid64-&gt;ino = ip-&gt;i_ino;<BR>&gt; fid64-&gt;gen = inode-&gt;i_generation;<BR>&gt; break;<BR>&gt; }<BR>&gt; <BR>&gt; _______________________________________________<BR>&gt; xfs mailing list<BR>&gt; xfs@oss.sgi.com<BR>&gt; http://oss.sgi.com/mailman/listinfo/xfs<BR></DIV>                                               </div></body>
</html>