lkml.org 
[lkml]   [2022]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[patch 08/15] timers: Rename del_timer_sync() to timer_delete_sync()
    Date
    The timer related functions do not have a strict timer_ prefixed namespace
    which is really annoying.

    Rename del_timer_sync() to timer_delete_sync() and provide del_timer_sync()
    as a wrapper. Document that del_timer_sync() is not for new code.

    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    ---
    include/linux/timer.h | 15 ++++++++++++++-
    kernel/time/timer.c | 18 +++++++++---------
    2 files changed, 23 insertions(+), 10 deletions(-)

    --- a/include/linux/timer.h
    +++ b/include/linux/timer.h
    @@ -183,7 +183,20 @@ extern int timer_reduce(struct timer_lis
    extern void add_timer(struct timer_list *timer);

    extern int try_to_del_timer_sync(struct timer_list *timer);
    -extern int del_timer_sync(struct timer_list *timer);
    +extern int timer_delete_sync(struct timer_list *timer);
    +
    +/**
    + * del_timer_sync - Delete a pending timer and wait for a running callback
    + * @timer: The timer to be deleted
    + *
    + * See timer_delete_sync() for detailed explanation.
    + *
    + * Do not use in new code. Use timer_delete_sync() instead.
    + */
    +static inline int del_timer_sync(struct timer_list *timer)
    +{
    + return timer_delete_sync(timer);
    +}

    extern void init_timers(void);
    struct hrtimer;
    --- a/kernel/time/timer.c
    +++ b/kernel/time/timer.c
    @@ -1083,7 +1083,7 @@ static inline int
    /*
    * We are trying to schedule the timer on the new base.
    * However we can't change timer's base while it is running,
    - * otherwise del_timer_sync() can't detect that the timer's
    + * otherwise timer_delete_sync() can't detect that the timer's
    * handler yet has not finished. This also guarantees that the
    * timer is serialized wrt itself.
    */
    @@ -1255,7 +1255,7 @@ EXPORT_SYMBOL_GPL(add_timer_on);
    * del_timer - Deactivate a timer.
    * @timer: The timer to be deactivated
    *
    - * Contrary to del_timer_sync() this function does not wait for an
    + * Contrary to timer_delete_sync() this function does not wait for an
    * eventually running timer callback on a different CPU and it neither
    * prevents rearming of the timer. If @timer can be rearmed concurrently
    * then the return value of this function is meaningless.
    @@ -1388,7 +1388,7 @@ static inline void del_timer_wait_runnin
    #endif

    /**
    - * del_timer_sync - Deactivate a timer and wait for the handler to finish.
    + * timer_delete_sync - Deactivate a timer and wait for the handler to finish.
    * @timer: The timer to be deactivated
    *
    * Synchronization rules: Callers must prevent restarting of the timer,
    @@ -1410,10 +1410,10 @@ static inline void del_timer_wait_runnin
    * spin_lock_irq(somelock);
    * <IRQ>
    * spin_lock(somelock);
    - * del_timer_sync(mytimer);
    + * timer_delete_sync(mytimer);
    * while (base->running_timer == mytimer);
    *
    - * Now del_timer_sync() will never return and never release somelock.
    + * Now timer_delete_sync() will never return and never release somelock.
    * The interrupt on the other CPU is waiting to grab somelock but it has
    * interrupted the softirq that CPU0 is waiting to finish.
    *
    @@ -1426,7 +1426,7 @@ static inline void del_timer_wait_runnin
    * * %0 - The timer was not pending
    * * %1 - The timer was pending and deactivated
    */
    -int del_timer_sync(struct timer_list *timer)
    +int timer_delete_sync(struct timer_list *timer)
    {
    int ret;

    @@ -1466,7 +1466,7 @@ int del_timer_sync(struct timer_list *ti

    return ret;
    }
    -EXPORT_SYMBOL(del_timer_sync);
    +EXPORT_SYMBOL(timer_delete_sync);

    static void call_timer_fn(struct timer_list *timer,
    void (*fn)(struct timer_list *),
    @@ -1488,8 +1488,8 @@ static void call_timer_fn(struct timer_l
    #endif
    /*
    * Couple the lock chain with the lock chain at
    - * del_timer_sync() by acquiring the lock_map around the fn()
    - * call here and in del_timer_sync().
    + * timer_delete_sync() by acquiring the lock_map around the fn()
    + * call here and in timer_delete_sync().
    */
    lock_map_acquire(&lockdep_map);

    \
     
     \ /
      Last update: 2022-11-15 21:31    [W:5.115 / U:2.948 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site