--- zzzz-none-000/linux-2.6.19.2/fs/fuse/control.c 2007-01-10 19:10:37.000000000 +0000 +++ davinci-8020-5505/linux-2.6.19.2/fs/fuse/control.c 2008-04-22 14:04:52.000000000 +0000 @@ -23,7 +23,11 @@ { struct fuse_conn *fc; mutex_lock(&fuse_mutex); - fc = file->f_dentry->d_inode->i_private; +#if 1 /* AVM - old kernel */ + fc = file->f_dentry->d_inode->i_private; +#else + fc = file->f_path.dentry->d_inode->i_private; +#endif if (fc) fc = fuse_conn_get(fc); mutex_unlock(&fuse_mutex); @@ -73,7 +77,7 @@ struct fuse_conn *fc, const char *name, int mode, int nlink, - struct inode_operations *iop, + const struct inode_operations *iop, const struct file_operations *fop) { struct dentry *dentry; @@ -193,8 +197,12 @@ static void fuse_ctl_kill_sb(struct super_block *sb) { + struct fuse_conn *fc; + mutex_lock(&fuse_mutex); fuse_control_sb = NULL; + list_for_each_entry(fc, &fuse_conn_list, entry) + fc->ctl_ndents = 0; mutex_unlock(&fuse_mutex); kill_litter_super(sb);