Up: Troubleshooting Previous: State Manager not Responding

MiniDAQ: Disconnecting the psm State Manager

PROBLEM: MiniDAQ interface to psm is still running after psm hangs.
SYMPTOMS:

  1. You have quit Run Control and other psm clients, and psm has died or been killed, but you cannot restart psm.
  2. A common cause of an orphan psm client on MiniDAQ is the user killing psm with ``kill -9'' instead of ``kill -INT'', which would have given psm a chance to close the socket connections to its clients gracefully.

REMEDY: Check if the MiniDAQ psm interface is running; stop it if it is:

  1. In eider's console window, use the command "i" to get a list of all tasks running on eider. The output will be 80+ lines. Tasks are listed in priority order (fourth column of display, labeled PRI). The two tasks you are looking for have priority 100. Other characteristics:
            ENTRY _mdqSmClient, name t<n> where <n> is a small number.
            ENTRY _mdqSeqIF, name mdq_seq_if.
    

    Example output:

            ->   i
    
            NAME        ENTRY       TID    PRI STATUS   PC    SP    ...
          ---------- ------------ -------- --- ------ ----- ------- ...
          tExcTask   _excTask       7d42f4   0 PEND   73ba8  7d425c ...
          tLogTask   _logTask       7d19f4   0 PEND   73ba8  7d1958 ...
             ...
          run_control_sequencer     44ceec 100 PEND+T  c0c4  44ce4c ...
          run_contro__ss_entry      44a64c 100 PEND+T  c0c4  44a5e8 ...
       => t10        _mdqSmClient   41828c 100 READY   c0c4  417fac ...
       => mdq_seq_if _mdqSeqIF      3df694 100 READY  73ba8  3df5e8 ...
          RD dbCaOutp_cac_recv_ta   522394 101 READY   c0c4  522260 ...
          RD t7      _cac_recv_ta   788a04 101 READY   c0c4  7888d0 ...
             ...
          RD daq0_han_cac_recv_ta   34313c 211 READY   c0c4  343008 ...
          RD daq2_han_cac_recv_ta   317bd4 211 READY   c0c4  317aa0 ...
          RD daq1_han_cac_recv_ta   2f5868 211 READY   c0c4  2f5734 ...
          value = 0 = 0x0
       ->
    
  2. If you don't see these two tasks, then the MiniDAQ interface to Run Control is not running, and the problem lies elsewhere. If you do see them, you should be able to delete them using the td command. "td" takes a task ID (TID) or NAME as its argument:
            ->   td t10
            value = 0 = 0x0
            ->   td mdq_seq_if
            value = 0 = 0x0
            ->
    

    OR using task ID's (remember to add the prefix "0x"):

            ->   td 0x41828c
            value = 0 = 0x0
            ->   td 0x3df694
            value = 0 = 0x0
            ->
    


Written: 10-JUN-1997 by Susanna Jacobson
Last Modified:


Page maintenance:

Roy Bossingham, LBNL
RRBossingham@lbl.gov