DragonFly BSD
DragonFly commits List (threaded) for 2003-07
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

cvs commit: src/sys/kern lwkt_msgport.c lwkt_rwlock.c lwkt_thread.c


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Sat, 19 Jul 2003 18:37:22 -0700 (PDT)

dillon      2003/07/19 18:37:22 PDT

  Modified files:
    sys/kern             lwkt_rwlock.c lwkt_thread.c 
  Added files:
    sys/kern             lwkt_msgport.c 
  Log:
  This is the initial implmentation of the LWKT messaging infrastructure.
  Messages are sent to message ports and typically replied to a message port
  embedded in the originating thread's thread structure (td_msgport).
  The port functions match up and optimization client sync/asynch requests
  verses target synch/asynch responses.
  
  In this initial implementation a port must be owned by a particular thread,
  and we use *asynch* IPI messaging to forward queueing and dequeueing operations
  to the correct cpu.  Most of the IPI overhead will be absorbed by the fact
  that these same IPIs also tend to schedule the threads in question, which on
  the correct cpu (which is the one it will be on) costs nothing.
  
  Message ports have in-context dispatch functions for initiating, aborting,
  and replying to a message which can be overriden and will queue by default.
  
  This code compiles but is as yet unreferenced, and almost certainly needs more
  work.
  
  Revision  Changes    Path
  1.4       +6 -3      src/sys/kern/lwkt_rwlock.c
  1.25      +18 -6     src/sys/kern/lwkt_thread.c




[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]