Author: mjg
Date: Thu Sep 19 21:23:14 2019
New Revision: 352543
URL: https://svnweb.freebsd.org/changeset/base/352543

Log:
  vfs: group fields used for per-cpu ops in one cacheline
  
  Sponsored by: The FreeBSD Foundation

Modified:
  head/sys/kern/vfs_mount.c
  head/sys/sys/mount.h

Modified: head/sys/kern/vfs_mount.c
==============================================================================
--- head/sys/kern/vfs_mount.c   Thu Sep 19 21:13:51 2019        (r352542)
+++ head/sys/kern/vfs_mount.c   Thu Sep 19 21:23:14 2019        (r352543)
@@ -157,7 +157,7 @@ vfs_mount_init(void *dummy __unused)
 {
 
        mount_zone = uma_zcreate("Mountpoints", sizeof(struct mount), NULL,
-           NULL, mount_init, mount_fini, UMA_ALIGN_PTR, UMA_ZONE_NOFREE);
+           NULL, mount_init, mount_fini, UMA_ALIGN_CACHE, UMA_ZONE_NOFREE);
 }
 SYSINIT(vfs_mount, SI_SUB_VFS, SI_ORDER_ANY, vfs_mount_init, NULL);
 

Modified: head/sys/sys/mount.h
==============================================================================
--- head/sys/sys/mount.h        Thu Sep 19 21:13:51 2019        (r352542)
+++ head/sys/sys/mount.h        Thu Sep 19 21:23:14 2019        (r352543)
@@ -226,7 +226,7 @@ struct mount {
        struct lock     mnt_explock;            /* vfs_export walkers lock */
        TAILQ_ENTRY(mount) mnt_upper_link;      /* (m) we in the all uppers */
        TAILQ_HEAD(, mount) mnt_uppers;         /* (m) upper mounts over us*/
-       int             mnt_vfs_ops;            /* (i) pending vfs ops */
+       int __aligned(CACHE_LINE_SIZE)  mnt_vfs_ops;/* (i) pending vfs ops */
        int             *mnt_thread_in_ops_pcpu;
        int             *mnt_ref_pcpu;
        int             *mnt_lockref_pcpu;
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to