[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200723232046.GA1468652@bjorn-Precision-5520>
Date: Thu, 23 Jul 2020 18:20:46 -0500
From: Bjorn Helgaas <helgaas@...nel.org>
To: Shiju Jose <shiju.jose@...wei.com>
Cc: linux-acpi@...r.kernel.org, linux-pci@...r.kernel.org,
linux-kernel@...r.kernel.org, rjw@...ysocki.net, bp@...en8.de,
james.morse@....com, lenb@...nel.org, tony.luck@...el.com,
dan.carpenter@...cle.com, zhangliguang@...ux.alibaba.com,
andriy.shevchenko@...ux.intel.com, wangkefeng.wang@...wei.com,
jroedel@...e.de, linuxarm@...wei.com, yangyicong@...ilicon.com,
jonathan.cameron@...wei.com, tanxiaofei@...wei.com
Subject: Re: [PATCH v13 1/2] ACPI / APEI: Add a notifier chain for unknown
(vendor) CPER records
On Wed, Jul 22, 2020 at 11:39:51AM +0100, Shiju Jose wrote:
> CPER records describing a firmware-first error are identified by GUID.
> The ghes driver currently logs, but ignores any unknown CPER records.
> This prevents describing errors that can't be represented by a standard
> entry, that would otherwise allow a driver to recover from an error.
> The UEFI spec calls these 'Non-standard Section Body' (N.2.3 of
> version 2.8).
> +#ifdef CONFIG_ACPI_APEI_GHES
> +/**
> + * ghes_register_vendor_record_notifier - register a notifier for vendor
> + * records that the kernel would otherwise ignore.
> + * @nb: pointer to the notifier_block structure of the event handler.
> + *
> + * return 0 : SUCCESS, non-zero : FAIL
> + */
> +int ghes_register_vendor_record_notifier(struct notifier_block *nb);
> +
> +/**
> + * ghes_unregister_vendor_record_notifier - unregister the previously
> + * registered vendor record notifier.
> + * @nb: pointer to the notifier_block structure of the vendor record handler.
> + */
> +void ghes_unregister_vendor_record_notifier(struct notifier_block *nb);
> +#else
> +static inline int ghes_register_vendor_record_notifier(struct notifier_block *nb)
> +{
> + return -ENODEV;
> +}
> +
> +static inline void ghes_unregister_vendor_record_notifier(struct notifier_block *nb)
> +{
> +}
If you made CONFIG_PCIE_HISI_ERR depend on CONFIG_ACPI_APEI_GHES,
you'd be able to get rid of these stubs, wouldn't you? It doesn't
look like there's any point in building pcie-hisi-error.c at all
unless CONFIG_ACPI_APEI_GHES is enabled.
> +#endif
> +
> int ghes_estatus_pool_init(int num_ghes);
>
> /* From drivers/edac/ghes_edac.c */
> --
> 2.17.1
>
>
Powered by blists - more mailing lists