1. 12 Feb, 2011 1 commit
  2. 16 Dec, 2010 1 commit
    • Ben Pfaff's avatar
      squish-pty: Flush buffered data from pty to stdout when pty's slave closed · b913988a
      Ben Pfaff authored
      When the slave side of the pty is closed, the "read" system call returns
      EIO.  In this situation, squish-pty failed to flush any output that it
      already had in its buffer (up to 16 bytes) to stdout.  This could cause
      the "Powering off..." message printed by Pintos just before exiting to
      be missing from the output.
      
      This usually didn't happen, because there are two other exit paths from
      the relay() function that does most of squish-pty's work.  The most common
      exit path was (evidently) the one which detected that the child process
      had died, which did properly flush the buffer.  (The third path was wrong
      too, and this patch fixes that one too.)
      
      This patch fixes the problem by using a single exit path from relay() that
      always reads any remaining input from the pty (if it is open) and flushes
      it to stdout.
      
      Reported by Borja Sotomayor <borja@cs.uchicago.edu>.
      b913988a
  3. 11 Dec, 2010 1 commit
  4. 05 May, 2010 1 commit
  5. 01 May, 2010 1 commit
    • Ben Pfaff's avatar
      Make.config: Use a different method to detect --build-id support. · 1ec7b011
      Ben Pfaff authored
      Some versions of ld accept /dev/null as a valid input file.  Others will
      not.  The latter versions will give false negatives for --buil-id support,
      which breaks linking of Pintos userspace programs.  So use a different
      method, that I hope will be more reliable, to detect --build-id support.
      
      Reported by Joseph Huang <jdhuang@stanford.edu>.
      1ec7b011
  6. 26 Jan, 2010 2 commits
  7. 07 Jan, 2010 1 commit
  8. 14 Nov, 2009 1 commit
  9. 24 Oct, 2009 1 commit
  10. 20 Jan, 2009 1 commit
    • Ben Pfaff's avatar
      Remove unnecessary optimization barrier. · 3b458804
      Ben Pfaff authored
      The compiler can't optimize out the load of "ticks" here because
      it can't look into intr_disable() and intr_set_level() and know that
      they don't modify "ticks".
      
      Thanks to Martin <mfleener@stanford.edu> for pointing this out.
      3b458804
  11. 22 Dec, 2008 1 commit
  12. 04 Dec, 2008 3 commits
    • Ben Pfaff's avatar
      Avoid long pauses on serial timeout on boot on physical hardware. · 6ffbc2b6
      Ben Pfaff authored
      The Pintos loader writes status to the serial port as well as the
      VGA console, but this doesn't work out so well on at least some
      real hardware when nothing is connected to the serial port: each
      character can take a second or so to display because the BIOS
      waits for a serial timeout each time.  So, on the first serial
      timeout, replace the "int $0x14" call by a pair of no-ops.
      
      The rest of the changes are part of the struggle not to exceed
      the maximum loader size.
      6ffbc2b6
    • Ben Pfaff's avatar
      Remove MIT copyright notice and license. · b4d3499f
      Ben Pfaff authored
      Pintos used to contain a loader and I/O functions derived from MIT
      code, but this has now been entirely eliminated, so there is no
      longer any reason to retain the MIT copyright notice or license.
      b4d3499f
    • Ben Pfaff's avatar
      Rewrite the I/O port code. · b6988317
      Ben Pfaff authored
      The contents of these functions was derived from code used in the
      Massachusetts Institute of Technology's 6.828 advanced operating
      systems course.
      
      I deleted the contents of these functions and then rewrote them from
      scratch without reference to the earlier code, working only from the
      function comments (which I wrote earlier).
      b6988317
  13. 14 Nov, 2008 2 commits
  14. 13 Nov, 2008 1 commit
  15. 12 Nov, 2008 1 commit
    • Ben Pfaff's avatar
      Implement a proper block layer with partition support. · a0361813
      Ben Pfaff authored
      This is in preparation for introducing new block devices, in
      particular USB storage-based block devices so that Pintos can boot
      from USB memory sticks on notebook and desktop PCs.
      
      This block layer was inspired by one from Anthony Romano
      <chz@vt.edu> but it has been extensively (perhaps entirely) rewritten.
      Thus, bugs must certainly be blamed on the committer.
      a0361813
  16. 10 Nov, 2008 4 commits
  17. 09 Nov, 2008 7 commits
  18. 08 Nov, 2008 3 commits
  19. 07 Nov, 2008 6 commits
  20. 05 Nov, 2008 1 commit