1. 01 Dec, 2014 1 commit
  2. 25 Nov, 2014 1 commit
  3. 19 Nov, 2014 1 commit
  4. 11 Nov, 2014 1 commit
    • Kirk Webb's avatar
      More TaintState management updates. · d24df9d2
      Kirk Webb authored
      * Do not "reset" taint states to match partitions after OS load.
      
      Encumber node with any additional taint states found across the
      OSes loaded on a node's partitions (union of states).  Change the
      name of the associated Node object method to better represent the
      functionality.
      
      * Clear all taint states when a node exits "reloading"
      
      When the reload_daemon is finished with a node and ready to release it,
      it will now clear any/all taint states set on the node.  This is the
      only automatic way to have a node's taint states cleared.  Users
      cannot clear node taint states by os_load'ing away all tainted
      partitions after this commit; nodes must travel through reloading
      to get cleared.
      d24df9d2
  5. 01 Jul, 2014 1 commit
  6. 17 Mar, 2014 1 commit
  7. 26 Feb, 2013 1 commit
  8. 22 Feb, 2013 1 commit
    • Mike Hibler's avatar
      More minor speed ups for stated. · 461a1fce
      Mike Hibler authored
      Log would be mail messages in stated-mail.log rather than actually emailing them.
      Fewer regular log messages.
      Avoid scanning a list unnecessarily if not in debug mode.
      Use mysql to pick out certain osfeatures.
      Bug fix: typo would let stated block when sent a SIGUSR1.
      461a1fce
  9. 18 Nov, 2012 1 commit
  10. 27 Sep, 2012 1 commit
  11. 24 Sep, 2012 1 commit
    • Eric Eide's avatar
      Replace license symbols with {{{ }}}-enclosed license blocks. · 6df609a9
      Eric Eide authored
      This commit is intended to makes the license status of Emulab and
      ProtoGENI source files more clear.  It replaces license symbols like
      "EMULAB-COPYRIGHT" and "GENIPUBLIC-COPYRIGHT" with {{{ }}}-delimited
      blocks that contain actual license statements.
      
      This change was driven by the fact that today, most people acquire and
      track Emulab and ProtoGENI sources via git.
      
      Before the Emulab source code was kept in git, the Flux Research Group
      at the University of Utah would roll distributions by making tar
      files.  As part of that process, the Flux Group would replace the
      license symbols in the source files with actual license statements.
      
      When the Flux Group moved to git, people outside of the group started
      to see the source files with the "unexpanded" symbols.  This meant
      that people acquired source files without actual license statements in
      them.  All the relevant files had Utah *copyright* statements in them,
      but without the expanded *license* statements, the licensing status of
      the source files was unclear.
      
      This commit is intended to clear up that confusion.
      
      Most Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the Affero GNU General Public License, version 3
      (AGPLv3).
      
      Most Utah-copyrighted files related to ProtoGENI are distributed under
      the terms of the GENI Public License, which is a BSD-like open-source
      license.
      
      Some Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the GNU Lesser General Public License, version 2.1
      (LGPL).
      6df609a9
  12. 23 Sep, 2012 1 commit
  13. 04 Apr, 2012 1 commit
  14. 02 Apr, 2012 1 commit
  15. 14 Mar, 2012 1 commit
    • Mike Hibler's avatar
      Make the secure boot path work with PXEWAIT. · ceeede28
      Mike Hibler authored
      When a node with the secure boot dongle is freed, it goes into PXEWAIT in
      the context of the secure MFS. Previously we remained in "secure mode"
      (i.e., did not terminate with a TPMSIGNOFF) while a node was in this state.
      If the next use of the node, just booted from the OS that was already on
      the disk, then we never signed off properly.
      
      Now we sign off before entering PXEWAIT. I thought that this would be the
      easiest alternative to fixing the problem..HaHaHa..not! Because now we have
      to restart the secure boot path (i.e., reboot) if the result of coming out
      of PXEWAIT is a request to reload the disk (i.e., if we are continuing the
      secure disk load path).
      
      Ideally this would have required only modifications to the state machines
      for SECUREBOOT/LOAD, but as you can see by the presence of stated.in in the
      modified files, this was not the case. The change required some additional
      "finesse" to get it working. See the comments in stated.in and bootinfo_mysql.c
      if you really care.
      ceeede28
  16. 19 Jan, 2012 1 commit
  17. 10 Nov, 2011 1 commit
  18. 30 Aug, 2011 1 commit
  19. 23 Aug, 2011 1 commit
  20. 17 Aug, 2011 1 commit
  21. 11 Aug, 2011 1 commit
    • Mike Hibler's avatar
      Initial support for loading Windows7 .wim images via WinPE/ImageX. · ac711ea5
      Mike Hibler authored
      1. Support for "one-shot" PXE booting ala the one-shot osid. Switches to
         pxelinux to boot WinPE and then switch back after done. Painful now
         because we have to HUP dhcpd everytime we change the PXE path, but we
         may be able to fix this in the future by going all-pxelinux-all-the-time.
      
      2. Added pxe_select, analogous to os_select, for changing the pxe_boot_path
         including the one time path.
      
      3. Added the WIMRELOAD state machine to shepherd a node through the process.
         Still has some rough edges and may need refining.
      ac711ea5
  22. 28 Jul, 2011 1 commit
  23. 13 Jul, 2011 1 commit
  24. 27 Jun, 2011 1 commit
  25. 22 Jun, 2011 1 commit
    • Mike Hibler's avatar
      When forcing a transition to a new opMode, look for a valid next state. · 2b3fd82a
      Mike Hibler authored
      Previously, a forced opModeTransition would just remain in the same state
      after moving to the new op_mode rather than looking for a valid
      oldmode/oldstate => newmode/newstate transition in the mode_transitions
      table. This should only effect the transition from SECUREBOOT/TPMSIGNOFF,
      since all other uses should not find a valid newstate and should remain in
      the old state as before.
      2b3fd82a
  26. 20 Jun, 2011 1 commit
    • Mike Hibler's avatar
      If stated were a space probe it would have crashed into Mars... · c88f89f3
      Mike Hibler authored
      Minor units conversion problem here. IO::Poll() takes seconds as it argument,
      not milliseconds as we were doing (by multiplying the arg by 1000 before
      calling).
      
      Unfortunately, this is not the Big One (memory corruption) that we have been
      chasing for so long. Sigh...
      (cherry picked from commit 1ee85494)
      c88f89f3
  27. 13 Jun, 2011 1 commit
    • Mike Hibler's avatar
      If stated were a space probe it would have crashed into Mars... · 1ee85494
      Mike Hibler authored
      Minor units conversion problem here. IO::Poll() takes seconds as it argument,
      not milliseconds as we were doing (by multiplying the arg by 1000 before
      calling).
      
      Unfortunately, this is not the Big One (memory corruption) that we have been
      chasing for so long. Sigh...
      1ee85494
  28. 02 Jun, 2011 1 commit
  29. 11 May, 2011 1 commit
  30. 10 May, 2011 1 commit
    • Leigh Stoller's avatar
      Gack, must call "select STDOUT" after the reopen operation, since we · 84a6e9fe
      Leigh Stoller authored
      used "select STDERR" to change the line buffering. The result was that
      after the log roll, the child was printing to STDERR instead of
      STDOUT, and so the parent never saw any new events.
      
      Note that USR1 (re-exec binary) does not work since exec bypasses the
      END block, and things get messed up. Not fixed yet.
      84a6e9fe
  31. 13 Mar, 2011 1 commit
  32. 25 Feb, 2011 1 commit
    • Mike Hibler's avatar
      Fix some nagging bugs. · 85d8986c
      Mike Hibler authored
      We were not processing the timeout queue because we got stuck forever in
      the loop that processed events. Now before looping back to sysread, make
      sure there is something to read so we don't block.
      
      When we startup or re-read the DB state, ignore really old state timeout
      values; e.g., for nodes that have been dead for ages but happen to be in
      a state such as SHUTDOWN that has a timeout.
      
      In the main loop, handle any re-read of the DB state before testing the
      queue length to see if we can do a blocking poll. Re-reading the state may
      add timeouts to the queue.
      85d8986c
  33. 24 Feb, 2011 1 commit
  34. 04 Feb, 2011 1 commit
  35. 02 Feb, 2011 2 commits
  36. 01 Feb, 2011 1 commit
  37. 25 Jan, 2011 1 commit
  38. 24 Jan, 2011 1 commit
  39. 17 Nov, 2010 1 commit