On Tue 08-12-09 09:41:09, Nick Piggin wrote: > Cc: Christoph Hellwig <hch@xxxxxx> > Acked-by: Hugh Dickins <hugh.dickins@xxxxxxxxxxxxx> > Signed-off-by: Nick Piggin <npiggin@xxxxxxx> ... > @@ -821,11 +824,11 @@ static void shmem_delete_inode(struct in > { > struct shmem_inode_info *info = SHMEM_I(inode); > > - if (inode->i_op->truncate == shmem_truncate) { > + if (inode->i_mapping->a_ops == &shmem_aops) { How about symlinks here? Originally we've truncated inode for them as well... BTW the check is really strange. Shouldn't we rather make it something like S_ISLNK || S_ISREG? > truncate_inode_pages(inode->i_mapping, 0); > shmem_unacct_size(info->flags, inode->i_size); > inode->i_size = 0; > - shmem_truncate(inode); > + shmem_truncate_range(inode, 0, (loff_t)-1); > if (!list_empty(&info->swaplist)) { > mutex_lock(&shmem_swaplist_mutex); > list_del_init(&info->swaplist); Honza -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR -- 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