1. 01 Aug, 2012 1 commit
    • Mike Hibler's avatar
      Support 64-bit FreeBSD on the server side. · 9036d314
      Mike Hibler authored
      NOTE: currently only for FreeBSD 7.3 installs because that is the only
      set of boss/ops/fs packages I have built so far!
      
      This mostly involved minor changes to event agents. Too often we were
      passing a pointer to a "long" to *get_int32, which on a 64-bit x86 OS would
      fill the wrong half of a 64-bit variable. There was also one instance of
      TCL code that had to be tweaked to account for 32- vs 64-bit.
      
      These changes also required regeneration of SWIG stubs and an ugly change
      to the SWIG generated code to use va_copy rather than direct assignment in
      a couple of places.
      
      Also related to SWIG is ensuring that the components that go into the
      perl/python stub .so files are built with PIC. The amd64 linker requires
      this.
      
      The meta-ports had to be changed to reflect that linuxthreads and
      ulsshxmlrpcpp don't work on amd64. The former had little effect as we
      had mostly eliminated uses of linuxthreads already. The one thing that
      did change was that we do not build nfstrace on amd64 (and we don't
      currently use this anyway). Removing ulsshxmlrpcpp required switching
      to the new event scheduler (event/new_sched) that Ryan did awhile back.
      Note that it is only "new" in the sense that it uses a standard XMLRPC
      package, there should be no functional differences. However, to be safe
      we only use new_sched as the standard scheduler on 64-bit server installs.
      
      Finally, added support to elabinelab setup to do a 64-bit server install.
      Just specify FBSD73-64-STD as the boss/ops/fs osid and rc.mkelab should
      do the rest.
      
      That is pretty much it other than some random nits here and there.
      9036d314
  2. 04 Apr, 2012 1 commit
  3. 02 Apr, 2012 1 commit
  4. 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
  5. 30 Jan, 2012 1 commit
  6. 23 Jan, 2012 4 commits
  7. 19 Jan, 2012 1 commit
  8. 10 Nov, 2011 1 commit
  9. 30 Aug, 2011 1 commit
  10. 23 Aug, 2011 1 commit
  11. 17 Aug, 2011 1 commit
  12. 16 Aug, 2011 1 commit
  13. 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
  14. 10 Aug, 2011 1 commit
  15. 28 Jul, 2011 1 commit
  16. 27 Jul, 2011 1 commit
  17. 19 Jul, 2011 12 commits
  18. 13 Jul, 2011 1 commit
  19. 27 Jun, 2011 1 commit
  20. 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
  21. 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
  22. 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
  23. 02 Jun, 2011 1 commit
  24. 12 May, 2011 1 commit
  25. 11 May, 2011 1 commit
  26. 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