cvs commit: src/sys/kern kern_syslink.c src/sys/sys syslink_msg.h

Matthew Dillon dillon at
Sat Mar 24 12:11:52 PDT 2007

dillon      2007/03/24 12:11:15 PDT

DragonFly src repository

  Modified files:
    sys/kern             kern_syslink.c 
    sys/sys              syslink_msg.h 
  Reformulate the syslink_msg structure a bit.  Instead of trying to create
  unique sessions with a combination of logical and transaction ids, which
  when all said and done is not very robust and not easy to index,
  create a 'session' abstraction which can be used as a rendezvous for
  a transaction as well as recorded by the route node for tracking and
  caching purposes.
  The 64 bit session ids are cluster-wide unique numbers, unique for all-time
  (which means 'for long enough'... i.e. at least a year), which identify
  abstracted connections between entities... almost the equivalent of
  an 'open'.  The universal uniqueness of the number combined with the
  logical end-point tracking greatly improves robustness in the face of an
  ever-changing dynamic cluster mesh and guarentees that a syslink message
  will never be misinterpreted.  Stale sessions can now be trivially
  detected and acted upon.
  This also allows us to reformulate the sysids we store in the message
  structure into something that is far more suitable for tracking and routing
  purposes without having to bloat the structure (three 64 bit ids in the
  structure is plenty already!).
  Revision  Changes    Path
  1.7       +6 -4      src/sys/kern/kern_syslink.c
  1.5       +72 -72    src/sys/sys/syslink_msg.h

More information about the Commits mailing list