1. 02 Dec, 2014 11 commits
  2. 01 Dec, 2014 4 commits
    • Mike Hibler's avatar
      Rudimentary TRIM support. · bdde40fe
      Mike Hibler authored
      We pass through a flag in the tmcd loadinfo call to tell whether to attempt
      to do a TRIM when loading the disk (or after loading the disk). If TRIM=1
      then we do so.
      Since it is not clear from what I have read whether repeated TRIMming is
      a detriment to SSD life, we throttle it as follows:
      1. We don't TRIM at all unless the sitevariable general/bootdisk_trim_interval
         is non zero. If it is set, we will wait at least that many seconds after
         the previous TRIM before we do it again.
      2. We keep track of the last trim via the node_attribute "bootdisk_lasttrim"
         which is a unix timestamp of the last time that tmcd responded to a
         loadinfo request in which it returned TRIM=1.
      2. We track, on a per-node basis, whether the boot disk should be TRIMmed
         or not. If the node or node-type attribute "bootdisk_trim" is non-zero,
         we will attempt a trim if the interval has passed since the last trim.
      So, we never trim if the sitevariable is 0 (the default value). If it is
      non-zero, we only trim the boot disk of those nodes that have the node or
      node_type attribute set and only after a sufficient interval has passed.
      This does not address non-boot disks, but currently frisbee won't mess
      with any other disk anyway. Eventually, we will have to have per-disk or
      per-disktype attributes if we want to do this better.
    • Mike Hibler's avatar
      Fix a "case statement". · 63fd4afa
      Mike Hibler authored
      Should be using last rather than next at the end of each "case".
    • Mike Hibler's avatar
      Don't use implied $_ (@_) variable. · 613c4623
      Mike Hibler authored
      It can interfere with our caller if they are also using it!
    • Mike Hibler's avatar
      Setup ipod before going into pxewait. · 0f22833d
      Mike Hibler authored
  3. 30 Nov, 2014 1 commit
  4. 26 Nov, 2014 1 commit
    • Kirk Webb's avatar
      Fix account listing for vnodes on shared hosts. · 2b2c7bd3
      Kirk Webb authored
      In my cleanup of the "doaccounts" code, it looks like I was a bit
      overzealous. The logic for detecting when a node is a shared vnode
      host was incomplete, and so matched for the vnodes themselves too.
  5. 25 Nov, 2014 7 commits
  6. 24 Nov, 2014 2 commits
    • Kirk Webb's avatar
      Add power support for moonshot. · 1d87bf24
      Kirk Webb authored
      This enhances the power_ipmi module in three ways:
      * Will now check for auth creds in the outets_remoteauth table.
        - Previously the module had credentials hard-wired.
        - Key role in table should be "ipmi-passwd".
      * Makes it run in parallel for the set of outlets provided
        - via emutil::ParRun().
      * HP Moonshot chassis iLO support.
        - Device (node) type == "ipmi-ms".
        - Outlet to ipmi address resolution.
        - Additional required ipmitool parameters ("lanplus" protocol).
      * Supports KGKEY for session encryption.
        - KGKEYs can be placed in the DB ("ipmi-kgkey" role, key encoded in hex).
      Note that the "status" command doesn't really work presently, but that's
      OK since it wasn't ever hooked in.
    • Kirk Webb's avatar
      cloudlab defs file for kwebb · d82ed018
      Kirk Webb authored
  7. 23 Nov, 2014 4 commits
  8. 21 Nov, 2014 1 commit
  9. 19 Nov, 2014 2 commits
    • Kirk Webb's avatar
      Clear taint states from nodes in the proper place (on 'reloading' exit). · 721bb6bc
      Kirk Webb authored
      Move the taint clearing action so that it happens as the node exits
      the "reloading" experiment (vs. when it goes into reloading).
    • Kirk Webb's avatar
      Sprinkle taint checks throughout tmcd to avert privilege escalation. · d9c27fac
      Kirk Webb authored
      Also add utility function to allow the node to get the exact details of
      the image it is running ('imageinfo').
      Some of the taint checks are rather heavy-handed presently.  Pretty much
      any vector that could be used by the user to do something as root has
      been severed right at the top of the relevant tmcd calls.
      Calls affected:
      manifest ('blackbox' and 'useronly' taintstates)
      rpms ('blackbox' and 'useronly' taintstates)
      tarballs ('blackbox' and 'useronly' taintstates)
      blobs ('blackbox' and 'useronly' taintstates)
      startupcmd ('blackbox' taintstate)
      mounts ('blackbox' taintstate)
      programs ('blackbox' taintstate)
      Taint handling for the 'accounts' call was dealt with in a prior commit.
  10. 18 Nov, 2014 2 commits
  11. 17 Nov, 2014 2 commits
  12. 16 Nov, 2014 2 commits
  13. 15 Nov, 2014 1 commit