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/

Reply via email to