[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <86258A5CC0A3704780874CF6004BA8A62DCBEEE8@lhreml502-mbs>
Date: Thu, 16 Mar 2017 15:20:44 +0000
From: Shiju Jose <shiju.jose@...wei.com>
To: James Morse <james.morse@....com>
CC: "rjw@...ysocki.net" <rjw@...ysocki.net>,
"lenb@...nel.org" <lenb@...nel.org>, "bp@...e.de" <bp@...e.de>,
"mingo@...nel.org" <mingo@...nel.org>,
"prarit@...hat.com" <prarit@...hat.com>,
"tbaicar@...eaurora.org" <tbaicar@...eaurora.org>,
"punit.agrawal@....com" <punit.agrawal@....com>,
"linux-acpi@...r.kernel.org" <linux-acpi@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"fu.wei@...aro.org" <fu.wei@...aro.org>,
"Guohanjun (Hanjun Guo)" <guohanjun@...wei.com>,
Gabriele Paoloni <gabriele.paoloni@...wei.com>,
John Garry <john.garry@...wei.com>,
"xuwei (O)" <xuwei5@...ilicon.com>,
"Zhengqiang (turing)" <zhengqiang10@...wei.com>
Subject: RE: [PATCH 1/1] acpi:apei:handle GSIV and GPIO notification types
Hi James,
> -----Original Message-----
> From: linux-acpi-owner@...r.kernel.org [mailto:linux-acpi-
> owner@...r.kernel.org] On Behalf Of James Morse
> Sent: 16 March 2017 14:26
> To: Shiju Jose
> Cc: rjw@...ysocki.net; lenb@...nel.org; bp@...e.de; mingo@...nel.org;
> prarit@...hat.com; tbaicar@...eaurora.org; punit.agrawal@....com;
> linux-acpi@...r.kernel.org; linux-kernel@...r.kernel.org;
> fu.wei@...aro.org; Guohanjun (Hanjun Guo); Gabriele Paoloni; John Garry;
> xuwei (O); Zhengqiang (turing)
> Subject: Re: [PATCH 1/1] acpi:apei:handle GSIV and GPIO notification
> types
>
> On 13/03/17 13:16, Shiju Jose wrote:
> > System Controller Interrupts are received by ACPI's error device,
> > which in turn notifies the GHES code. The same is true of APEI's GSIV
> > and GPIO notification types.
> > Add support for GSIV and GPIO sharing the SCI
> > register/unregister/notifier code.Rename the list and notifier to
> show
> > this is no longer just SCI, but anything from the Hardware Error
> > Device.
>
> Reviewed-by: James Morse <james.morse@....com>
>
>
> ... what looks like an existing bug:
>
> > diff --git a/drivers/acpi/apei/ghes.c b/drivers/acpi/apei/ghes.c
> index
> > b192b42..fd39929 100644
> > --- a/drivers/acpi/apei/ghes.c
> > +++ b/drivers/acpi/apei/ghes.c
> > @@ -1068,10 +1072,12 @@ static int ghes_remove(struct platform_device
> *ghes_dev)
> > free_irq(ghes->irq, ghes);
> > break;
> > case ACPI_HEST_NOTIFY_SCI:
> > + case ACPI_HEST_NOTIFY_GSIV:
> > + case ACPI_HEST_NOTIFY_GPIO:
> > mutex_lock(&ghes_list_mutex);
>
> > list_del_rcu(&ghes->list);
>
> Suspiciously, there is no synchronize_rcu() between this list_del_rcu()
> and the
> kfree(ghes) at the bottom of the function. It looks like 81e88fdc432a
> lifted it into the NOTIFY_NMI path. I will send a separate fix.
Thanks. Got it.
>
>
> > - if (list_empty(&ghes_sci))
> > - unregister_acpi_hed_notifier(&ghes_notifier_sci);
> > + if (list_empty(&ghes_hed))
> > + unregister_acpi_hed_notifier(&ghes_notifier_hed);
> > mutex_unlock(&ghes_list_mutex);
> > break;
> > case ACPI_HEST_NOTIFY_NMI:
> >
>
>
> Thanks,
>
> James
Thanks,
Shiju
> --
> To unsubscribe from this list: send the line "unsubscribe linux-acpi"
> in the body of a message to majordomo@...r.kernel.org More majordomo
> info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists