#include <linux/obd_support.h>
#include <linux/obdfs.h>
+void obdfs_change_inode(struct inode *inode);
+
static inline void obdfs_remove_suid(struct inode *inode)
{
unsigned int mode;
mode &= inode->i_mode;
if (mode && !capable(CAP_FSETID)) {
inode->i_mode &= ~mode;
- mark_inode_dirty(inode);
+ obdfs_change_inode(inode);
}
}
struct inode *inode = file->f_dentry->d_inode;
obdfs_remove_suid(inode);
inode->i_ctime = inode->i_mtime = CURRENT_TIME;
- mark_inode_dirty(inode);
+ obdfs_change_inode(inode);
}
EXIT;
return retval;
mmap: generic_file_mmap, /* mmap */
};
-extern int obdfs_notify_change(struct dentry *de, struct iattr *attr);
+extern int obdfs_setattr(struct dentry *de, struct iattr *attr);
struct inode_operations obdfs_file_inode_operations = {
truncate: obdfs_truncate,
- setattr: obdfs_notify_change
+ setattr: obdfs_setattr
};