git: hammer2 hammer2 - Implement and test first SPAN message transaction.

Matthew Dillon dillon at crater.dragonflybsd.org
Tue Jun 12 22:52:41 PDT 2012


commit 9b8b748f5ae6af42fcdda02fba2b052633d7dfac
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Tue Jun 12 22:46:13 2012 -0700

    hammer2 - Implement and test first SPAN message transaction.
    
    * The hammer2 VFS now sends a dummy SPAN message to the hammer2 service
      daemon.  SPANs are used to register capabilities (primarily PFS services
      and PFS consumers).  SPAN messages are left as open transactions for the
      duration of the link and/or when the graph changes (mainly a spanning
      tree mechanic that will be coded as a function of the hammer2 service
      daemon in userland.
    
    * Basic open transaction and simple reply message tested.  Use a dummy
      message for testing.
    
    * hammer2_msg_write() detects CREATE, allocates state, and assigns a
      msgid.  state allocation moved out of hammer2_state_msgtx() and
      into hammer2_msg_write() so we can calculate the proper CRCs.
    
    * Fixed a couple of expected bugs.  The userland code was swapping
      msg_hdr.source and msg_hdr.target in the reply, but I adjusted the
      message spec to NOT do that (meaning any message routing has to select
      {source} or {target} based on whether the REPLY bit is set or not.
    
    * Memory seems to get cleaned up properly, so far.

Summary of changes:
 sbin/hammer2/cmd_service.c                         |    8 +-
 sbin/hammer2/crypto.c                              |    4 +
 sbin/hammer2/hammer2.h                             |    1 +
 sbin/hammer2/main.c                                |   20 ++--
 sbin/hammer2/msg.c                                 |    6 -
 sys/vfs/hammer2/DESIGN                             |    1 +
 sys/vfs/hammer2/Makefile                           |    2 +-
 sys/vfs/hammer2/hammer2.h                          |   25 ++++-
 sys/vfs/hammer2/hammer2_disk.h                     |   15 ++-
 sys/vfs/hammer2/hammer2_msg.c                      |  131 +++++++++++++++++---
 .../sysarch.c => vfs/hammer2/hammer2_msgops.c}     |   39 +++----
 sys/vfs/hammer2/hammer2_network.h                  |   88 ++++++++++++--
 sys/vfs/hammer2/hammer2_vfsops.c                   |   26 ++++-
 13 files changed, 288 insertions(+), 78 deletions(-)
 copy sys/{platform/vkernel64/platform/sysarch.c => vfs/hammer2/hammer2_msgops.c} (77%)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/9b8b748f5ae6af42fcdda02fba2b052633d7dfac


-- 
DragonFly BSD source repository





More information about the Commits mailing list