[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <74922e6d-73d5-62cc-3679-96ea447a1cb4@intel.com>
Date: Tue, 22 Nov 2022 15:04:41 -0800
From: Jacob Keller <jacob.e.keller@...el.com>
To: Thomas Gleixner <tglx@...utronix.de>,
LKML <linux-kernel@...r.kernel.org>
CC: Linus Torvalds <torvalds@...uxfoundation.org>,
Steven Rostedt <rostedt@...dmis.org>,
Anna-Maria Behnsen <anna-maria@...utronix.de>,
"Peter Zijlstra" <peterz@...radead.org>,
Stephen Boyd <sboyd@...nel.org>,
"Guenter Roeck" <linux@...ck-us.net>,
Andrew Morton <akpm@...ux-foundation.org>,
"Julia Lawall" <Julia.Lawall@...ia.fr>,
Arnd Bergmann <arnd@...db.de>,
Viresh Kumar <viresh.kumar@...aro.org>,
Marc Zyngier <maz@...nel.org>,
Marcel Holtmann <marcel@...tmann.org>,
Johan Hedberg <johan.hedberg@...il.com>,
"Luiz Augusto von Dentz" <luiz.dentz@...il.com>,
<linux-bluetooth@...r.kernel.org>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
"Jakub Kicinski" <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>, <netdev@...r.kernel.org>
Subject: Re: [patch V2 13/17] timers: Split [try_to_]del_timer[_sync]() to
prepare for shutdown mode
On 11/22/2022 9:45 AM, Thomas Gleixner wrote:
> +/**
> + * try_to_del_timer_sync - Try to deactivate a timer
> + * @timer: Timer to deactivate
> + *
> + * This function tries to deactivate a timer. On success the timer is not
> + * queued and the timer callback function is not running on any CPU.
> + *
> + * This function does not guarantee that the timer cannot be rearmed right
> + * after dropping the base lock. That needs to be prevented by the calling
> + * code if necessary.
> + *
> + * Return:
> + * * %0 - The timer was not pending
> + * * %1 - The timer was pending and deactivated
> + * * %-1 - The timer callback function is running on a different CPU
> + */
> +int try_to_del_timer_sync(struct timer_list *timer)
> +{
> + return __try_to_del_timer_sync(timer);
> +}
> EXPORT_SYMBOL(try_to_del_timer_sync);
>
Its a bit odd to me that some patches refactor and replace functions
with new variants all under timer_* namespace, but then we've left some
of them available without that.
Any reasoning behind this? I guess "try_*" is pretty clear and unlikely
to get stolen by other code..?
Thanks,
Jake
Powered by blists - more mailing lists