lkml.org 
[lkml]   [2011]   [Jul]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 08/17] ACPI, APEI, GHES, Support disable GHES at boot time
    On Wed, Jul 13, 2011 at 01:14:19PM +0800, Huang Ying wrote:
    > Some machine may have broken firmware so that GHES and firmware first
    > mode should be disabled. This patch adds support to that.

    Does this still work if you have disabled ghes module support in the
    previous patch?

    Cheers,
    Don

    >
    > Signed-off-by: Huang Ying <ying.huang@intel.com>
    > Reviewed-by: Andi Kleen <ak@linux.intel.com>
    > Reviewed-by: Matthew Garrett <mjg@redhat.com>
    > ---
    > drivers/acpi/apei/ghes.c | 8 ++++++++
    > drivers/acpi/apei/hest.c | 17 +++++++++--------
    > include/acpi/apei.h | 1 +
    > 3 files changed, 18 insertions(+), 8 deletions(-)
    >
    > --- a/drivers/acpi/apei/ghes.c
    > +++ b/drivers/acpi/apei/ghes.c
    > @@ -77,6 +77,9 @@ struct ghes {
    > };
    > };
    >
    > +int ghes_disable;
    > +module_param_named(disable, ghes_disable, bool, 0);
    > +
    > static int ghes_panic_timeout __read_mostly = 30;
    >
    > /*
    > @@ -665,6 +668,11 @@ static int __init ghes_init(void)
    > return -EINVAL;
    > }
    >
    > + if (ghes_disable) {
    > + pr_info(GHES_PFX "GHES is not enabled!\n");
    > + return -EINVAL;
    > + }
    > +
    > rc = ghes_ioremap_init();
    > if (rc)
    > goto err;
    > --- a/drivers/acpi/apei/hest.c
    > +++ b/drivers/acpi/apei/hest.c
    > @@ -231,16 +231,17 @@ void __init acpi_hest_init(void)
    > goto err;
    > }
    >
    > - rc = apei_hest_parse(hest_parse_ghes_count, &ghes_count);
    > - if (rc)
    > - goto err;
    > -
    > - rc = hest_ghes_dev_register(ghes_count);
    > - if (!rc) {
    > - pr_info(HEST_PFX "Table parsing has been initialized.\n");
    > - return;
    > + if (!ghes_disable) {
    > + rc = apei_hest_parse(hest_parse_ghes_count, &ghes_count);
    > + if (rc)
    > + goto err;
    > + rc = hest_ghes_dev_register(ghes_count);
    > + if (rc)
    > + goto err;
    > }
    >
    > + pr_info(HEST_PFX "Table parsing has been initialized.\n");
    > + return;
    > err:
    > hest_disable = 1;
    > }
    > --- a/include/acpi/apei.h
    > +++ b/include/acpi/apei.h
    > @@ -18,6 +18,7 @@
    >
    > extern int hest_disable;
    > extern int erst_disable;
    > +extern int ghes_disable;
    >
    > #ifdef CONFIG_ACPI_APEI
    > void __init acpi_hest_init(void);
    > --
    > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    > the body of a message to majordomo@vger.kernel.org
    > More majordomo info at http://vger.kernel.org/majordomo-info.html
    > Please read the FAQ at http://www.tux.org/lkml/


    \
     
     \ /
      Last update: 2011-07-14 16:49    [W:0.027 / U:63.564 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site