From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ronghua Zhang Subject: Re: problems in implementing a new file system Date: Mon, 17 Feb 2003 17:53:29 -0500 (EST) Sender: linux-fsdevel-owner@vger.kernel.org Message-ID: References: Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Return-path: To: linux-fsdevel@vger.kernel.org, kernelnewbies@nl.linux.org In-Reply-To: List-Id: linux-fsdevel.vger.kernel.org Oh, I just forgot to mention that the kernel is 2.4.19 and gcc version is 3.2. I also used uml to trace it, and I found that the 'magic' happens within get_new_inode(): .... inode->i_sb = sb; ... if (sb->s_op->read_inode2) sb->s_op->read_inode2(inode, opaque); else sb->s_op->read_inode(inode); just before sb->s_op_read_inode() is executed, inode->i_sb is still sb. But once the function (which is snet_read_inode()) is called, inode->i_sb just magically point to some other place. rz