[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20221104204159.GA506794@roeck-us.net>
Date: Fri, 4 Nov 2022 13:41:59 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: linux-kernel@...r.kernel.org,
Linus Torvalds <torvalds@...ux-foundation.org>,
Thomas Gleixner <tglx@...utronix.de>,
Stephen Boyd <sboyd@...nel.org>,
Anna-Maria Gleixner <anna-maria@...utronix.de>,
Andrew Morton <akpm@...ux-foundation.org>, rcu@...r.kernel.org,
linux-doc@...r.kernel.org, linux-s390@...r.kernel.org,
linux-sh@...r.kernel.org, linux-edac@...r.kernel.org,
cgroups@...r.kernel.org, linux-block@...r.kernel.org,
linux-acpi@...r.kernel.org,
linux-atm-general@...ts.sourceforge.net, netdev@...r.kernel.org,
linux-pm@...r.kernel.org, drbd-dev@...ts.linbit.com,
linux-bluetooth@...r.kernel.org,
openipmi-developer@...ts.sourceforge.net,
linux-media@...r.kernel.org, dri-devel@...ts.freedesktop.org,
linaro-mm-sig@...ts.linaro.org, intel-gfx@...ts.freedesktop.org,
linux-input@...r.kernel.org, linux-parisc@...r.kernel.org,
linux-leds@...r.kernel.org, intel-wired-lan@...ts.osuosl.org,
linux-usb@...r.kernel.org, linux-wireless@...r.kernel.org,
linux-scsi@...r.kernel.org, linux-staging@...ts.linux.dev,
linux-ext4@...r.kernel.org, linux-nilfs@...r.kernel.org,
bridge@...ts.linux-foundation.org, netfilter-devel@...r.kernel.org,
coreteam@...filter.org, lvs-devel@...r.kernel.org,
linux-afs@...ts.infradead.org, linux-nfs@...r.kernel.org,
tipc-discussion@...ts.sourceforge.net, alsa-devel@...a-project.org
Subject: Re: [RFC][PATCH v3 00/33] timers: Use timer_shutdown*() before
freeing timers
On Fri, Nov 04, 2022 at 03:42:09PM -0400, Steven Rostedt wrote:
> On Fri, 4 Nov 2022 12:22:32 -0700
> Guenter Roeck <linux@...ck-us.net> wrote:
>
> > Unfortunately the renaming caused some symbol conflicts.
> >
> > Global definition: timer_shutdown
> >
> > File Line
> > 0 time.c 93 static inline void timer_shutdown(struct clock_event_device *evt)
> > 1 arm_arch_timer.c 690 static __always_inline int timer_shutdown(const int access,
> > 2 timer-fttmr010.c 105 int (*timer_shutdown)(struct clock_event_device *evt);
> > 3 timer-sp804.c 158 static inline void timer_shutdown(struct clock_event_device *evt)
> > 4 timer.h 239 static inline int timer_shutdown(struct timer_list *timer)
>
> $ git grep '\btimer_shutdown'
> arch/arm/mach-spear/time.c:static inline void timer_shutdown(struct clock_event_device *evt)
> arch/arm/mach-spear/time.c: timer_shutdown(evt);
> arch/arm/mach-spear/time.c: timer_shutdown(evt);
> arch/arm/mach-spear/time.c: timer_shutdown(evt);
> drivers/clocksource/arm_arch_timer.c:static __always_inline int timer_shutdown(const int access,
> drivers/clocksource/arm_arch_timer.c: return timer_shutdown(ARCH_TIMER_VIRT_ACCESS, clk);
> drivers/clocksource/arm_arch_timer.c: return timer_shutdown(ARCH_TIMER_PHYS_ACCESS, clk);
> drivers/clocksource/arm_arch_timer.c: return timer_shutdown(ARCH_TIMER_MEM_VIRT_ACCESS, clk);
> drivers/clocksource/arm_arch_timer.c: return timer_shutdown(ARCH_TIMER_MEM_PHYS_ACCESS, clk);
> drivers/clocksource/timer-fttmr010.c: int (*timer_shutdown)(struct clock_event_device *evt);
> drivers/clocksource/timer-fttmr010.c: fttmr010->timer_shutdown(evt);
> drivers/clocksource/timer-fttmr010.c: fttmr010->timer_shutdown(evt);
> drivers/clocksource/timer-fttmr010.c: fttmr010->timer_shutdown(evt);
> drivers/clocksource/timer-fttmr010.c: fttmr010->timer_shutdown = ast2600_timer_shutdown;
> drivers/clocksource/timer-fttmr010.c: fttmr010->timer_shutdown = fttmr010_timer_shutdown;
> drivers/clocksource/timer-fttmr010.c: fttmr010->clkevt.set_state_shutdown = fttmr010->timer_shutdown;
> drivers/clocksource/timer-fttmr010.c: fttmr010->clkevt.tick_resume = fttmr010->timer_shutdown;
> drivers/clocksource/timer-sp804.c:static inline void timer_shutdown(struct clock_event_device *evt)
> drivers/clocksource/timer-sp804.c: timer_shutdown(evt);
> drivers/clocksource/timer-sp804.c: timer_shutdown(evt);
>
> Honestly, I think these need to be renamed, as "timer_shutdown()"
> should be specific to the timer code, and not individual timers.
Yes, that is what I did locally. I am repeating my test now with that
change made.
Guenter
Powered by blists - more mailing lists