1. 13 Apr, 2004 1 commit
  2. 09 Apr, 2004 1 commit
  3. 23 Mar, 2004 1 commit
  4. 15 Mar, 2004 1 commit
  5. 12 Mar, 2004 1 commit
  6. 11 Mar, 2004 1 commit
  7. 08 Mar, 2004 1 commit
  8. 17 Feb, 2004 1 commit
  9. 11 Feb, 2004 1 commit
  10. 05 Feb, 2004 2 commits
  11. 30 Jan, 2004 2 commits
  12. 29 Jan, 2004 5 commits
  13. 28 Jan, 2004 3 commits
  14. 26 Jan, 2004 6 commits
  15. 24 Jan, 2004 2 commits
  16. 21 Jan, 2004 1 commit
  17. 20 Jan, 2004 2 commits
  18. 17 Jan, 2004 1 commit
    • David Anderson's avatar
      Checkpoint commit. I've added the static-linked program "ltevent" to send · c6911250
      David Anderson authored
      and wait for linktest events, and integrated it into the perl scripts.
      
      At this point I'm working on small potatoes such as the rc.setup script
      to invoke linktest daemon and nailing down where to put platform-specific
      stuff such as the ns-linktest build and the customized tb-compat.
      
      Also am testing linktest in cases where I've deliberately inserted an error
      to make sure it catches it.
      c6911250
  19. 16 Jan, 2004 2 commits
    • Shashi Guruprasad's avatar
      Before this commit, a simulator packet that crosses pnodes was being · eae5072e
      Shashi Guruprasad authored
      decapsulated if it was determinted that the packet was destined to some
      sim node on the same pnode. This was done at the entry point of the
      packet from the live network. However, in the case of disconnected
      partitions, the packet may have to exit the pnode one or more times
      before reaching the final destination. In this case, the decapsulation
      of it early is a waste. This commit remedies that by performing the
      decapsulation in the port classifier of a node just before the packet
      is given to a traffic agent that will consume the packet.
      eae5072e
    • Robert Ricci's avatar
      Remove dependance on libtb - it was just used to send mail in the · 8013195c
      Robert Ricci authored
      case of errors that we have never, ever seen. Just print the errors
      to stdout.
      
      Make event.so buildable on ops and nodes.
      8013195c
  20. 15 Jan, 2004 4 commits
    • Mac Newbold's avatar
      libdb changes: · 78ad260c
      Mac Newbold authored
      - add functions to recursively dump hashes and arrays into a string
        suitable for printing as debugging output (great for data structures)
      
      - add three new trigger strings
      
      - add 'use strict', do corresponding cleanup
      
      stated changes:
      
      - move special-cased stuff in handleEvent for PXEBOOTING and BOOTING into
        triggers (PXEBOOTING, BOOTING, and CHECKGENISUP)
      
      - clarify (via comments) the existing kinds of triggers and which ones run
        when, and add a new kind (global "any-mode" triggers). We already had
        per-node mode-specific, per-node any-mode, and global mode-specific
        triggers. Now you can have a trigger that is good for any mode in a
        given state, that can be overridden on a mode-specific basis. This is
        great for PXEBOOTING, BOOTING, and ISUP, since they each have a trigger
        list that should be run regardless of what mode you're in. Now they only
        require 3 entries instead of 3*N that have to be maintained per mode.
      
           # A note about triggers:
           #
           # "per-node" triggers only affect their specific node in a
           # particular mode/state, and are run first of all. "global"
           # triggers are triggers for a given mode/state that affect all
           # nodes, and are run after any per-node triggers. "Any-mode"
           # triggers are tied to a state, and occur in that state in any
           # mode. The any-mode triggers are over-ridden by global triggers,
           # and if an "Any-mode" trigger for state XYZ exists as well as a
           # global trigger for mode FOOBAR state XYZ, then when I arrive in
           # XYZ any per-node triggers will be run. Then, if I'm in mode
           # FOOBAR, only the global trigger will run. If I'm in any other
           # mode, only the any-mode trigger will run.
      
           # (our "*" is stored as $TBANYMODE)
           # Per-node triggers have a specific node_id
           # Global triggers have "*" as the node_id
           # Any-mode triggers have "*" as the mode, and can be global or per-node
      
        The updated table looks like this in the accompanying change to
        database-fill.sql:
      
      +---------+----------+------------+-----------------------+
      | node_id | op_mode  | state      | trigger               |
      +---------+----------+------------+-----------------------+
      | *       | *        | BOOTING    | BOOTING, CHECKGENISUP |
      | *       | *        | ISUP       | RESET                 |
      | *       | *        | PXEBOOTING | PXEBOOT               |
      | *       | RELOAD   | RELOADDONE | RESET, RELOADDONE     |
      | *       | ALWAYSUP | SHUTDOWN   | ISUP                  |
      +---------+----------+------------+-----------------------+
      
      - I also cleaned up the functions that add, get, and delete triggers.
        Before, the get function didn't include global triggers. Now it does,
        and has an option to just get the per-node triggers. Add and delete are
        still just per-node, of course.
      
      - Also found and fixed some little bugs while I was in there. (global
        triggers not taking a list,
      
      These changes are me getting ready to re-add all the changes I made months
      ago in order to do a before-and-after experiment for my thesis. Between
      now and the end of next week I'll be working on taking before numbers,
      patching stated with the changes, and getting after numbers.
      
      The problems I'm trying to replicate are the problems and slowdowns we
      used to get when os_{load,setup} would reboot a node, thinking it had
      timed out, when it really didn't know whether it was making progress or
      not. The fix includes making os_{load,setup} depend on stated to watch for
      progress and timeouts, and do any appropriate retries. Part of that is the
      StateWait stuff, that lets programs watch for events easily, and the
      node_reboot-with-events stuff that puts stated in control of nodes as they
      reboot.
      78ad260c
    • Shashi Guruprasad's avatar
      cb802d48
    • Shashi Guruprasad's avatar
      One more bugfix. sendpkt() was being called with a wrong length even though · a59ebe6c
      Shashi Guruprasad authored
      the RAW_IP packet being sent had a different ip_len. This happened in the
      case of a nse topology that is disconnected due to how assign maps it. The
      encapsulated simulator packet was decapsulated even though it has to leave
      the physical node again. Under this circumstance, the decapsulated simulator
      packet size was used for RAW_IP send() instead of the size of the encapsulated
      packet.
      a59ebe6c
    • Shashi Guruprasad's avatar
      Allowing arbitrary strings in the event arguments field for NSEEVENT. These · 6df710cb
      Shashi Guruprasad authored
      are essentially Tcl strings that will be evaluated in nse. The old code
      will do its usual stuff if <name>=<val> type args are passed to tevc.
      6df710cb
  21. 14 Jan, 2004 1 commit
    • David Anderson's avatar
      Updates to Linktest for a caller script, run_linktest.pl. · 5a1ab5a8
      David Anderson authored
      This includes an updated client-install.
      
      However, this is not yet ready for builds due to certain libraries not
      present on the nodes and ops. For those I will be writing a static
      linked c program to handle the linktest "done" event in both linktest.pl
      and run_linktest.pl.
      5a1ab5a8