On Sun, Sep 1, 2013 at 3:44 PM, Al Viro <v...@zeniv.linux.org.uk> wrote: > > GRRR... I see something else: > void file_sb_list_del(struct file *file) > { > if (!list_empty(&file->f_u.fu_list)) { > lg_local_lock_cpu(&files_lglock, file_list_cpu(file)); > list_del_init(&file->f_u.fu_list); > lg_local_unlock_cpu(&files_lglock, file_list_cpu(file)); > } > } > will cheerfully cause cross-CPU traffic. If that's what is going on, the > earlier patch I've sent (not putting non-regulars and files opened r/o > on ->s_list) should reduce the cacheline bouncing on that cacheline.
Hmm. That might indeed be a bad sources of cross-cpu bouncing on some loads, but the load I test doesn't actually open any files. It just does "stat()" on a filename. So no "struct file *" anywhere for me..It really seems to be vfsmount_lock itself somehow. Linus -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/