1. 03 Jul, 2014 4 commits
  2. 02 Jul, 2014 2 commits
  3. 27 Jun, 2014 1 commit
    • Mike Hibler's avatar
      Resurrect/enhance delta image code. Another multi-day "one hour hack"! · 49d2f488
      Mike Hibler authored
      Resurrect: get the basic signature matching code working again.
      
      Enhance: add -U option to have imagezip update (or create) the
      signature file. Previously, the signature file was created off-line
      on boss with the imagehash command (that would be Mike's "imagehash"
      (/usr/testbed/bin/imagehash) and not Leigh's "imagehash"
      (/usr/testbed/sbin/imagehash)). Creating it as we create the image
      makes a lot of sense...except for how we do it. We actually read and
      create the hashes as a separate pass before we re-read, compress, and
      create the image--so we read the disk twice. [This is primarily because we
      are mooching off of the existing hash checking code (-H option). Doing
      this right will require re-writing The Big Loop which makes a single
      pass through the data, simultaneously dealing with disk IO, allocated
      ranges, and compression blocks all of which have different size/alignment
      criteria. But I digress...] Anyway, reading the disk data twice sucks,
      but at least it is on the client and not on boss. The take away is:
      don't create your images on pc600s.
      
      Note that -U will always create a signature file for the complete disk
      or partition even when you are creating a delta image (i.e., when combined
      with -H).
      
      Enhance: add "-P <pct>" option, used with -H, which tells imagezip that if
      a resulting delta image would be over <pct> percent the size (where size
      is number of uncompressed sectors in the image) of a full image, then just
      create a full image instead. So "-P 50" says if it would be over half the
      size, "-P 200" says if it was over twice the size, etc. If you always want
      a delta image to be produced, use -H without -P. If you always want a full
      image, don't use -H.
      
      This is part 2 of supporting images. Part 1 is the DB and user interface
      changes that Leigh is working on. Part 3 is next up and involves modifying
      the image creation MFS to download and use signatures along with the
      new imagezip when creating images. Stay tuned.
      49d2f488
  4. 12 Jun, 2014 1 commit
  5. 01 May, 2014 1 commit
  6. 16 Apr, 2014 1 commit
  7. 15 Apr, 2014 2 commits
    • Mike Hibler's avatar
      Add "-T <sec>" server-timeout option to frisbee client. · b4685e99
      Mike Hibler authored
      If we don't get any messages from our server after <sec> seconds,
      we exit. Odd that this didn't already exist, huh?
      
      I re-purposed the -T option which used to be used to specify a prefix for
      a trace file. Since I am the only one that ever used that option, I don't
      feel bad about changing it. Traceprefix is now specified with -U.
      b4685e99
    • Mike Hibler's avatar
      Clang lint. · 96d6be67
      Mike Hibler authored
      96d6be67
  8. 18 Mar, 2014 1 commit
  9. 18 Feb, 2014 1 commit
  10. 13 Feb, 2014 1 commit
  11. 12 Feb, 2014 1 commit
    • Mike Hibler's avatar
      Add frisbee master server mechanisms for turning on dynamic rate tuning. · d9ee4a67
      Mike Hibler authored
      For the Emulab configuration, we add the new site variable
      "images/frisbee/maxrate_dyn" which should be set non-zero to enable
      dynamic adjustment. If maxrate_dyn is enabled, then the maxrate_{std,usr}
      values are used as both the initial and maximum values for the BW of any
      instance. Really, if maxrate_dyn is on, then both of those should be set
      to the same value so that all servers are operating the same and the value
      should be just above the link BW.
      
      For the "null" configuration (aka, the subboss configuration),
      this is set by adding command line options:
          -O dynamicbw=1,bandwidth=1100000000
      which would enable it and start/cap the BW at 1.1Gb/sec.
      d9ee4a67
  12. 10 Feb, 2014 8 commits
  13. 06 Feb, 2014 1 commit
    • Mike Hibler's avatar
      Make sure we don't do a partial sector write when using O_DIRECT. · 7e260e9a
      Mike Hibler authored
      Will cause a write error. This would only happen for the final range of
      an image created with -f. We now pad out any partial last sector if direct
      IO is specified (-f on imageunzip/frisbee) and write that to the file.
      
      If the padding causes any problems in the future, we can always get rid of
      it by truncating the file to the correct size when we are done...I think.
      7e260e9a
  14. 01 Nov, 2013 1 commit
    • Mike Hibler's avatar
      Make Linux PacketSend behave the same as on BSD. · 8efbf584
      Mike Hibler authored
      Two changes: make sendto() call non-blocking (via MSG_DONTWAIT) so we
      get back EAGAIN if socket buffer is full, and turn on "extended error
      return reporting" (via IP_RECVERR) so we get back ENOBUFS when NIC send
      buffers are full.
      8efbf584
  15. 22 Oct, 2013 1 commit
    • Mike Hibler's avatar
      Attempt to un-rot the eventsys code in frisbee. · 2197ba80
      Mike Hibler authored
      Back in the day, when the paper was written, I had an eventsys interface
      to the client to provide a syncronized interface to multiple running
      instances. I rejuvenated the bits, so the eventsys control works again,
      however some logic in the client has changed such that a second attempt
      to run within the same client hangs. More work needed.
      2197ba80
  16. 12 Oct, 2013 2 commits
  17. 18 Jun, 2013 1 commit
    • Mike Hibler's avatar
      Check that fsync is supported on output file of imagezip. · 75b72804
      Mike Hibler authored
      Part of our hack strategy to detect and correct transient NFS errors
      is to fsync after every file write and check for errors. However, some
      devices don't support fsync. So, for example, if you were trying to
      imagezip to /dev/null (to benchmark or check the resulting image size)
      fsync would always fail and we would keep retrying the write forever.
      
      There is already a "-N" option to avoid such checks and retries, but
      Mike can never remember that!
      75b72804
  18. 18 May, 2013 1 commit
    • Mike Hibler's avatar
      Command line option to set the socket buffer size, fix some trace logic. · 2b5587df
      Mike Hibler authored
      The "-k" option (hey, it was the best available letter!) takes a size
      in MB with which the frisbee client and server will first try to size their
      UDP socket buffers. They may still wind up with a smaller size, depending
      on what the OS supports.
      
      Fixed the burst logging logic so that we correctly trace overrun conditions.
      2b5587df
  19. 29 Apr, 2013 1 commit
  20. 07 Feb, 2013 1 commit
  21. 05 Feb, 2013 4 commits
  22. 24 Jan, 2013 1 commit
  23. 14 Jan, 2013 1 commit
  24. 20 Dec, 2012 1 commit