From: Chanwoo Choi <cw00.choi@samsung.com>
To: Marek Szyprowski <m.szyprowski@samsung.com>,
linux-samsung-soc@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org
Cc: Will Deacon <will.deacon@arm.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Marc Zyngier <marc.zyngier@arm.com>,
Thomas Gleixner <tglx@linutronix.de>,
Daniel Lezcano <daniel.lezcano@linaro.org>,
Krzysztof Kozlowski <krzk@kernel.org>,
Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
Inki Dae <inki.dae@samsung.com>
Subject: Re: [PATCH v2 2/6] clocksource: exynos_mct: Fix error path in timer resources initialization
Date: Tue, 16 Oct 2018 10:27:01 +0900 [thread overview]
Message-ID: <5BC53E65.7050500@samsung.com> (raw)
In-Reply-To: <20181015123112.9379-3-m.szyprowski@samsung.com>
Dear Marek,
On 2018년 10월 15일 21:31, Marek Szyprowski wrote:
> While freeing interrupt handlers in error path, don't assume that all
> requested interrupts are per-processor interrupts and properly release
> standard interrupts too.
>
> Suggested-by: Krzysztof Kozlowski <krzk@kernel.org>
> Fixes: 56a94f13919c ("clocksource: exynos_mct: Avoid blocking calls in the cpu hotplug notifier")
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> ---
> drivers/clocksource/exynos_mct.c | 14 +++++++++++++-
> 1 file changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/clocksource/exynos_mct.c b/drivers/clocksource/exynos_mct.c
> index 43b335ff4a96..a379f11fad2d 100644
> --- a/drivers/clocksource/exynos_mct.c
> +++ b/drivers/clocksource/exynos_mct.c
> @@ -562,7 +562,19 @@ static int __init exynos4_timer_resources(struct device_node *np, void __iomem *
> return 0;
>
> out_irq:
> - free_percpu_irq(mct_irqs[MCT_L0_IRQ], &percpu_mct_tick);
> + if (mct_int_type == MCT_INT_PPI) {
> + free_percpu_irq(mct_irqs[MCT_L0_IRQ], &percpu_mct_tick);
> + } else {
> + for_each_possible_cpu(cpu) {
> + struct mct_clock_event_device *pcpu_mevt =
> + per_cpu_ptr(&percpu_mct_tick, cpu);
> +
> + if (pcpu_mevt->evt.irq != -1) {
> + free_irq(pcpu_mevt->evt.irq, pcpu_mevt);
> + pcpu_mevt->evt.irq = -1;
> + }
> + }
> + }
> return err;
> }
>
>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
--
Best Regards,
Chanwoo Choi
Samsung Electronics
WARNING: multiple messages have this Message-ID (diff)
From: cw00.choi@samsung.com (Chanwoo Choi)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 2/6] clocksource: exynos_mct: Fix error path in timer resources initialization
Date: Tue, 16 Oct 2018 10:27:01 +0900 [thread overview]
Message-ID: <5BC53E65.7050500@samsung.com> (raw)
In-Reply-To: <20181015123112.9379-3-m.szyprowski@samsung.com>
Dear Marek,
On 2018? 10? 15? 21:31, Marek Szyprowski wrote:
> While freeing interrupt handlers in error path, don't assume that all
> requested interrupts are per-processor interrupts and properly release
> standard interrupts too.
>
> Suggested-by: Krzysztof Kozlowski <krzk@kernel.org>
> Fixes: 56a94f13919c ("clocksource: exynos_mct: Avoid blocking calls in the cpu hotplug notifier")
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> ---
> drivers/clocksource/exynos_mct.c | 14 +++++++++++++-
> 1 file changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/clocksource/exynos_mct.c b/drivers/clocksource/exynos_mct.c
> index 43b335ff4a96..a379f11fad2d 100644
> --- a/drivers/clocksource/exynos_mct.c
> +++ b/drivers/clocksource/exynos_mct.c
> @@ -562,7 +562,19 @@ static int __init exynos4_timer_resources(struct device_node *np, void __iomem *
> return 0;
>
> out_irq:
> - free_percpu_irq(mct_irqs[MCT_L0_IRQ], &percpu_mct_tick);
> + if (mct_int_type == MCT_INT_PPI) {
> + free_percpu_irq(mct_irqs[MCT_L0_IRQ], &percpu_mct_tick);
> + } else {
> + for_each_possible_cpu(cpu) {
> + struct mct_clock_event_device *pcpu_mevt =
> + per_cpu_ptr(&percpu_mct_tick, cpu);
> +
> + if (pcpu_mevt->evt.irq != -1) {
> + free_irq(pcpu_mevt->evt.irq, pcpu_mevt);
> + pcpu_mevt->evt.irq = -1;
> + }
> + }
> + }
> return err;
> }
>
>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
--
Best Regards,
Chanwoo Choi
Samsung Electronics
next prev parent reply other threads:[~2018-10-16 1:27 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20181015123134eucas1p1bdc005e0c46e9b1b7895bf2526ba1f2c@eucas1p1.samsung.com>
2018-10-15 12:31 ` [PATCH v2 0/6] Proper arch timer support for Exynos5433-based TM2(e) boards Marek Szyprowski
2018-10-15 12:31 ` Marek Szyprowski
2018-10-15 12:31 ` [PATCH v2 1/6] clocksource: exynos_mct: Remove dead code Marek Szyprowski
2018-10-15 12:31 ` Marek Szyprowski
2018-10-16 0:44 ` Chanwoo Choi
2018-10-16 0:44 ` Chanwoo Choi
2018-10-15 12:31 ` [PATCH v2 2/6] clocksource: exynos_mct: Fix error path in timer resources initialization Marek Szyprowski
2018-10-15 12:31 ` Marek Szyprowski
2018-10-15 15:26 ` Krzysztof Kozlowski
2018-10-15 15:26 ` Krzysztof Kozlowski
2018-10-16 1:27 ` Chanwoo Choi [this message]
2018-10-16 1:27 ` Chanwoo Choi
2018-10-15 12:31 ` [PATCH v2 3/6] clocksource: exynos_mct: Add arch_timer cooperation mode for ARM64 Marek Szyprowski
2018-10-15 12:31 ` Marek Szyprowski
2018-10-15 13:26 ` Mark Rutland
2018-10-15 13:26 ` Mark Rutland
2018-10-17 12:36 ` Marek Szyprowski
2018-10-17 12:36 ` Marek Szyprowski
2018-10-16 13:11 ` Krzysztof Kozlowski
2018-10-16 13:11 ` Krzysztof Kozlowski
2018-10-17 5:00 ` Chanwoo Choi
2018-10-17 5:00 ` Chanwoo Choi
2018-10-15 12:31 ` [PATCH v2 4/6] clocksource: Change CPU hotplug priority of exynos_mct driver Marek Szyprowski
2018-10-15 12:31 ` Marek Szyprowski
2018-10-16 0:59 ` Chanwoo Choi
2018-10-16 0:59 ` Chanwoo Choi
2018-10-15 12:31 ` [PATCH v2 5/6] arm64: dts: exynos: Move arch-timer node to right place Marek Szyprowski
2018-10-15 12:31 ` Marek Szyprowski
2018-10-16 13:05 ` Krzysztof Kozlowski
2018-10-16 13:05 ` Krzysztof Kozlowski
2018-10-17 5:01 ` Chanwoo Choi
2018-10-17 5:01 ` Chanwoo Choi
2018-10-15 12:31 ` [PATCH v2 6/6] arm64: platform: Add enable Exynos Multi-Core Timer driver Marek Szyprowski
2018-10-15 12:31 ` Marek Szyprowski
2018-10-16 13:06 ` Krzysztof Kozlowski
2018-10-16 13:06 ` Krzysztof Kozlowski
2018-10-17 5:03 ` Chanwoo Choi
2018-10-17 5:03 ` Chanwoo Choi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5BC53E65.7050500@samsung.com \
--to=cw00.choi@samsung.com \
--cc=b.zolnierkie@samsung.com \
--cc=catalin.marinas@arm.com \
--cc=daniel.lezcano@linaro.org \
--cc=inki.dae@samsung.com \
--cc=krzk@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=m.szyprowski@samsung.com \
--cc=marc.zyngier@arm.com \
--cc=tglx@linutronix.de \
--cc=will.deacon@arm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.