For some reason my workstation doesn't like to send take messages...
sorry if this shows up 2x.
If we get into xfs_attrctl_by_handle from scratch, and wind up with a
brand new inode, inode->i_op->attrctl isn't getting set. You can see
this by attrctl-ing a device special file on a filesystem, remount the
filesystem, and then xfsdump it - xfsdump will segfault because there's
no i_op->attrctl. (Thanks to Harrison Xing.) This didn't show up on
regular files, perhaps because xfsdump calls xfs_open_by_handle first on
it, which sets the inode ops. Adding a call to linvfs_set_inode_ops in
xfs_attrctl_by_handle may be redundant, but it's better than never
setting it at all. :)
Also added a sanity check for inode->i_op && inode->i_op->attrctl before
trying to do anything with it.
Date: Fri Aug 15:49:32 PDT 2001
Workarea: stout.americas.sgi.com:/localhome/eric/2.4.x-xfs/workarea
The following file(s) were checked into:
bonnie.engr.sgi.com:/isms/slinx/2.4.x-xfs
Modid: 2.4.x-xfs:slinx:100561a
linux/fs/xfs/linux/xfs_ioctl.c - 1.45
- set inode ops in xfs_attrctl_by_handle
--
Eric Sandeen XFS for Linux http://oss.sgi.com/projects/xfs
sandeen@xxxxxxx SGI, Inc.
|