> > +static loff_t fuse_file_llseek(struct file *file, loff_t offset, int origin) > > +{ > > + long long retval; > > I switched this to have a type of loff_t. Ugh, right. I wonder where that long long came from. I probably copied the generic_file_llseek() from some earlier kernel... > > > + struct inode *inode = file->f_path.dentry->d_inode; > > + > > + mutex_lock(&inode->i_mutex); > > + switch (origin) { > > + case SEEK_END: > > + offset += i_size_read(inode); > > As we hold i_mutex we could directly read inode->i_size here, save a few > cycles. No, that's the whole point of the fuse specific function: fuse doesn't use i_mutex to protect writing i_size, instead it uses a per filesystem spinlock. This is probably worth a comment though, so I'll do that. Thanks, Miklos -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html