07 Mar, 2006

1 commit

  • Also from Thomas Gleixner

    Function next_timer_interrupt() got broken with a recent patch
    6ba1b91213e81aa92b5cf7539f7d2a94ff54947c as sys_nanosleep() was moved to
    hrtimer. This broke things as next_timer_interrupt() did not check hrtimer
    tree for next event.

    Function next_timer_interrupt() is needed with dyntick (CONFIG_NO_IDLE_HZ,
    VST) implementations, as the system can be in idle when next hrtimer event
    was supposed to happen. At least ARM and S390 currently use
    next_timer_interrupt().

    Signed-off-by: Thomas Gleixner
    Cc: Martin Schwidefsky
    Cc: Heiko Carstens
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tony Lindgren
     

15 Feb, 2006

1 commit

  • CONFIG_TIME_LOW_RES is a temporary way for architectures to signal that
    they simply return xtime in do_gettimeoffset(). In this corner-case we
    want to round up by resolution when starting a relative timer, to avoid
    short timeouts. This will go away with the GTOD framework.

    Signed-off-by: Ingo Molnar
    Cc: Roman Zippel
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     

02 Feb, 2006

3 commits

  • At some point we added credits to people who actively helped to bring
    k/hr-timers along. This was lost in the big code revamp. Add it back.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Thomas Gleixner
     
  • Clean up the interface to hrtimers by changing the init code to pass the mode
    as well as the clock. This allow the init code to select the correct base and
    eliminates extra timer re-init code in posix-timers. We also simplify the
    restart interface nanosleep use.

    Signed-off-by: George Anzinger
    Signed-off-by: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    George Anzinger
     
  • From: Steven Rostedtrostedt@goodmis.org

    CPU0 expires a posix-timer and runs the callback function. The signal is
    queued.

    After releasing the posix-timer lock and before returning to hrtimer_run_queue
    CPU0 gets interrupted. CPU1 delivers the queued signal and rearms the timer.
    CPU0 comes back to hrtimer_run_queue and sets the timer state to expired.

    The next modification of the timer can result in an oops, because the state
    information is wrong.

    Keep track of state = RUNNING and check if the state has been in the return
    path of hrtimer_run_queue. In case the state has been changed, ignore a
    restart request and do not touch the state variable.

    Signed-off-by: Steven Rostedt
    Signed-off-by: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    akpm@osdl.org
     

17 Jan, 2006

2 commits

  • fix the following sparse warning:

    kernel/hrtimer.c:665:34: warning: incorrect type in argument 2 (different address spaces)
    kernel/hrtimer.c:665:34: expected void const *from
    kernel/hrtimer.c:665:34: got struct timespec [noderef] *
    kernel/hrtimer.c:664:2: warning: dereference of noderef expression

    Signed-off-by: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     
  • Fix a comment which missed an update cycle somewhere.

    Signed-off-by: Jonathan Corbet
    Signed-off-by: Linus Torvalds

    Jonathan Corbet
     

12 Jan, 2006

3 commits


11 Jan, 2006

4 commits

  • This series removes the getnstimestamp() function from kernel/time.c in favor
    of kernel/hrtimer.c's ktime_get_ts() function which currently does exactly the
    same thing: retrieves a high-resolution (ns) timespec structure and performs
    the wall_to_monotonic adjustment.

    This patch:

    Export ktime_get_ts() to be used as a timestamp function since it uses
    getnstimefoday() and does the wall_to_monotonic adjustment.

    Signed-off-by: Matt Helsley
    Cc: john stultz
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matt Helsley
     
  • convert sys_nanosleep() to use hrtimer_nanosleep()

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Thomas Gleixner
     
  • introduce the hrtimer_nanosleep() and hrtimer_nanosleep_real() APIs. Not yet
    used by any code.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Thomas Gleixner
     
  • hrtimer subsystem core. It is initialized at bootup and expired by the timer
    interrupt, but is otherwise not utilized by any other subsystem yet.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Thomas Gleixner