09 May, 2007

1 commit


17 Feb, 2007

2 commits

  • Implement high resolution timers on top of the hrtimers infrastructure and the
    clockevents / tick-management framework. This provides accurate timers for
    all hrtimer subsystem users.

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

    Thomas Gleixner
     
  • - hrtimers did not use the hrtimer_restart enum and relied on the implict
    int representation. Fix the prototypes and the functions using the enums.
    - Use seperate name spaces for the enumerations
    - Convert hrtimer_restart macro to inline function
    - Add comments

    No functional changes.

    [akpm@osdl.org: fix input driver]
    Signed-off-by: Thomas Gleixner
    Signed-off-by: Ingo Molnar
    Cc: john stultz
    Cc: Roman Zippel
    Cc: Dmitry Torokhov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Thomas Gleixner
     

12 Feb, 2007

1 commit

  • Replace appropriate pairs of "kmem_cache_alloc()" + "memset(0)" with the
    corresponding "kmem_cache_zalloc()" call.

    Signed-off-by: Robert P. J. Day
    Cc: "Luck, Tony"
    Cc: Andi Kleen
    Cc: Roland McGrath
    Cc: James Bottomley
    Cc: Greg KH
    Acked-by: Joel Becker
    Cc: Steven Whitehouse
    Cc: Jan Kara
    Cc: Michael Halcrow
    Cc: "David S. Miller"
    Cc: Stephen Smalley
    Cc: James Morris
    Cc: Chris Wright
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert P. J. Day
     

08 Dec, 2006

1 commit

  • Replace all uses of kmem_cache_t with struct kmem_cache.

    The patch was generated using the following script:

    #!/bin/sh
    #
    # Replace one string by another in all the kernel sources.
    #

    set -e

    for file in `find * -name "*.c" -o -name "*.h"|xargs grep -l $1`; do
    quilt add $file
    sed -e "1,\$s/$1/$2/g" $file >/tmp/$$
    mv /tmp/$$ $file
    quilt refresh
    done

    The script was run like this

    sh replace kmem_cache_t "struct kmem_cache"

    Signed-off-by: Christoph Lameter
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Lameter
     

04 Oct, 2006

1 commit


30 Sep, 2006

1 commit

  • The clock_nanosleep() function does not return the time remaining when the
    sleep is interrupted by a signal.

    This patch creates a new call out, compat_clock_nanosleep_restart(), which
    handles returning the remaining time after a sleep is interrupted. This
    patch revives clock_nanosleep_restart(). It is now accessed via the new
    call out. The compat_clock_nanosleep_restart() is used for compatibility
    access.

    Since this is implemented in compatibility mode the normal path is
    virtually unaffected - no real performance impact.

    Signed-off-by: Toyo Abe
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: Roland McGrath
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Toyo Abe
     

27 Mar, 2006

3 commits


23 Mar, 2006

1 commit

  • Semaphore to mutex conversion.

    The conversion was generated via scripts, and the result was validated
    automatically via a script as well.

    Signed-off-by: Arjan van de Ven
    Signed-off-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arjan van de Ven
     

17 Mar, 2006

1 commit


02 Feb, 2006

4 commits


15 Jan, 2006

1 commit


11 Jan, 2006

5 commits


14 Nov, 2005

1 commit


31 Oct, 2005

1 commit


22 Oct, 2005

1 commit

  • When I originally moved exit_itimers into __exit_signal, that was the only
    place where we could reliably know it was the last thread in the group
    dying, without races. Since then we've gotten the signal_struct.live
    counter, and do_exit can reliably do group-wide cleanup work.

    This patch moves the call to do_exit, where it's made without locks. This
    avoids the deadlock issues that the old __exit_signal code's comment talks
    about, and the one that Oleg found recently with process CPU timers.

    [ This replaces e03d13e985d48ac4885382c9e3b1510c78bd047f, which is why
    it was just reverted. ]

    Signed-off-by: Roland McGrath
    Signed-off-by: Linus Torvalds

    Roland McGrath
     

08 Sep, 2005

1 commit

  • posix_timer_event() first checks that the thread (SIGEV_THREAD_ID case)
    does not have PF_EXITING flag, then it calls send_sigqueue() which locks
    task list. But if the thread exits in between the kernel will oops
    (->sighand == NULL after __exit_sighand).

    This patch moves the PF_EXITING check into the send_sigqueue(), it must be
    done atomically under tasklist_lock. When send_sigqueue() detects exiting
    thread it returns -1. In that case posix_timer_event will send the signal
    to thread group.

    Also, this patch fixes task_struct use-after-free in posix_timer_event.

    Signed-off-by: Oleg Nesterov
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Oleg Nesterov
     

05 Aug, 2005

1 commit


29 Jul, 2005

1 commit

  • (We found this (after a customer complained) and it is in the kernel.org
    kernel. Seems that for CLOCK_MONOTONIC absolute timers and clock_nanosleep
    calls both the request time and wall_to_monotonic are subtracted prior to
    the normalize resulting in an overflow in the existing normalize test.
    This causes the result to be shifted ~4 seconds ahead instead of ~2 seconds
    back in time.)

    The normalize code in posix-timers.c fails when the tv_nsec member is ~1.2
    seconds negative. This can happen on absolute timers (and
    clock_nanosleeps) requested on CLOCK_MONOTONIC (both the request time and
    wall_to_monotonic are subtracted resulting in the possibility of a number
    close to -2 seconds.)

    This fix uses the set_normalized_timespec() (which does not have an
    overflow problem) to fix the problem and as a side effect makes the code
    cleaner.

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

    George Anzinger
     

24 Jun, 2005

1 commit

  • sys_timer_settime/sys_timer_delete needs to delete k_itimer->real.timer
    synchronously while holding ->it_lock, which is also locked in
    posix_timer_fn.

    This patch removes timer_active/set_timer_inactive which plays with
    timer_list's internals in favour of using try_to_del_timer_sync(), which
    was introduced in the previous patch.

    Signed-off-by: Oleg Nesterov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Oleg Nesterov
     

18 Jun, 2005

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds