linux.conf.au 2003 Create a file - cont. static struct dentry *fs_create_file (const char *name, mode_t mode, struct dentry *parent, void *data, struct file_operations *fops, uid_t uid, gid_t gid) { struct dentry *dentry; int error; dbg("creating file '%s'",name); error = fs_create_by_name (name, mode, parent, &dentry); if (error) { dentry = NULL; } else { if (dentry->d_inode) { if (data) dentry->d_inode->u.generic_ip = data; if (fops) dentry->d_inode->i_fop = fops; dentry->d_inode->i_uid = uid; dentry->d_inode->i_gid = gid; } } return dentry; }