git: hammer2 - Refactor frontend part 7/many

Matthew Dillon dillon at
Wed Jun 17 17:15:49 PDT 2015

commit 2ed4fecefa0bf1e6d3eb06b037189cb2bb5d5b52
Author: Matthew Dillon <dillon at>
Date:   Wed Jun 17 11:00:19 2015 -0700

    hammer2 - Refactor frontend part 7/many
    * Start fleshing out the XOP infrastructure.  The frontend will use this
      infrastructure to replicate VOPs to per-node threads for cluster operation.
      The basic idea here is for a VOP to allocate an xop and throw it into a
      xop_group (of which several are available).  ALL nodes associated with
      that xop_group will then process the xop each in their own thread.
      The xop can be detached from the frontend once the cluster operation
      completes, if interruptability is desired due to a stalled cluster,
      or once the operation has run on a sufficient number of nodes but still
      might be running or stalled on remaining nodes.
    * Rename hammer2_syncthr.c, it is now more generic.

Summary of changes:
 sys/vfs/hammer2/Makefile                           |   4 +-
 sys/vfs/hammer2/hammer2.h                          | 141 ++++++++++------
 .../{hammer2_syncthr.c => hammer2_thread.c}        | 180 ++++++++++++++++-----
 sys/vfs/hammer2/hammer2_vfsops.c                   |  92 ++++++++---
 sys/vfs/hammer2/hammer2_vnops.c                    |   2 +-
 5 files changed, 307 insertions(+), 112 deletions(-)
 rename sys/vfs/hammer2/{hammer2_syncthr.c => hammer2_thread.c} (83%)

DragonFly BSD source repository

More information about the Commits mailing list