I think the bug here is going to be a long way away from this code - there
always should be an inode passed into pagebuf_get - the comment is wrong.
The inode here is coming from the vnode passed in, where it should also
always be set - I bet NFS is using a way into the filesystem to reference
an inode which XFS is not setting things up properly, that is where to look.
Steve
>
>
>
> I'll recreate the backtrace, I don't have all the hex numbers from it
> but
> the function calls were
> pagebuf_Get
> xfs_zero_last_block
> xfs_zero_eof
> xfs_write
> linvfs_write
> nsfd_write
>
> and that's all I recorded, it had another layer or two down to
> "kernel_thread" but I didn't think they were important since the NFS
> code
> and code outside it seem to work with other filesystems.
>
> All I did to create it initially was untar a kernel onto an NFS mounted
> XFS partition. It would go about 1/3 of the way and die, I never
> counted the
> number of files but it looked pretty consistent.
>
>
> Ian Nelson
|