Skip to content
Snippets Groups Projects
  1. Jan 27, 2014
    • Nadav Har'El's avatar
      clock: Clean up more unneeded stuff · 0b6bc10e
      Nadav Har'El authored
      
      For this patch series to be bisectable, the previous patches left behind
      some features, or temporarily added features, that we couldn't remove
      until they are no longer use. Now we can finally delete these unused
      features:
      
      1. After the previous patches stopped using clock::get()->time() in sched.cc,
      we can drop the alias osv::clock::get() we added temporarily just to make
      it easier to compile the first patches in this series.
      2. Drop the clock_event::set(s64) variant.
      3. Drop the timer_base::set(s64) variant.
      
      Fixes #81.
      
      Reviewed-by: default avatarGlauber Costa <glommer@cloudius-systems.com>
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      0b6bc10e
    • Nadav Har'El's avatar
      clock: add clock_event::set(timepoint) · 9781a6f2
      Nadav Har'El authored
      
      In the previous patch we built clock_event::set(s64) on top of
      set(duration). In this patch we add set(timepoint), for absolute time
      in any clock supporting the now() static method. In the following patches,
      we'll convert our timers to using the monotonic clock osv::clock::uptime,
      and use timepoints of that clock in calls to clock_event::set().
      
      By temporarily having both s64 and std::chrono:time_point versions
      of set(), we make this patch series bisectable. At the end of this series,
      the s64 variant will be removed.
      
      Reviewed-by: default avatarGlauber Costa <glommer@cloudius-systems.com>
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      9781a6f2
    • Nadav Har'El's avatar
      clock: relative-time clock_event::set() · 5c5f5971
      Nadav Har'El authored
      
      OSv's timer mechanism hinges on the Local APIC's (per-cpu) one-shot timer,
      which delivers an interrupt after the requested number of nanoseconds.
      
      The API to set this timer, clock_event::set(), took the absolute time of
      the next interrupt. However, what it really needs is the duration in
      nanoseconds until the next interrupt.
      
      So this patch we change the basic clock_event::set() API to take a
      duration, and implement the original clock_event::set(s64) - taking an s64
      absolute wall-clock time - as a simple wrapper.  The next patch will add
      more wrappers for set() taking absolute times from different clocks.
      Later patches in this series will stop using the old set(s64) version,
      until it is dropped in the end of the series.
      
      Reviewed-by: default avatarGlauber Costa <glommer@cloudius-systems.com>
      Signed-off-by: default avatarNadav Har'El <nyh@cloudius-systems.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
      5c5f5971
  2. Sep 15, 2013
    • Nadav Har'El's avatar
      Add copyright statement to drivers/* · c0e0ebf2
      Nadav Har'El authored
      Add Cloudius copyright and license statement to drivers/*.
      
      A couple of header files were based on Linux's BSD-licensed header files
      (e.g., include/uapi/linux/virtio_net.h) so they included the BSD license,
      but not any copyright statement, so we can just replace that by our own
      statement of the BSD license.
      c0e0ebf2
  3. Feb 07, 2013
  4. Feb 05, 2013
  5. Jan 16, 2013
Loading