Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-9]: src/sys/dev/acpi Pull up following revision(s) (requested by ...



details:   https://anonhg.NetBSD.org/src/rev/19c22a23f279
branches:  netbsd-9
changeset: 934919:19c22a23f279
user:      martin <martin%NetBSD.org@localhost>
date:      Sat Jun 20 15:52:50 2020 +0000

description:
Pull up following revision(s) (requested by jdolecek in ticket #959):

        sys/dev/acpi/acpi_ec.c: revision 1.84

only install space handler and enable interrupt for EC if ACPI

claims the device is actually present, it's not enough when there
is entry for it in the ACPI tables
fixes interrupt storm triggered on Dell PowerEdge R220 by enabling
GPE interrupt on a non-enabled EC (for which _REG call later
fails), reported and fix tested by Dima Veselov:
http://mail-index.netbsd.org/netbsd-users/2020/03/02/msg024166.html

XXX pullup netbsd-9

diffstat:

 sys/dev/acpi/acpi_ec.c |  9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diffs (30 lines):

diff -r f17868bc9e61 -r 19c22a23f279 sys/dev/acpi/acpi_ec.c
--- a/sys/dev/acpi/acpi_ec.c    Sat Jun 20 15:49:15 2020 +0000
+++ b/sys/dev/acpi/acpi_ec.c    Sat Jun 20 15:52:50 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: acpi_ec.c,v 1.75.20.3 2020/04/29 13:33:35 martin Exp $ */
+/*     $NetBSD: acpi_ec.c,v 1.75.20.4 2020/06/20 15:52:50 martin Exp $ */
 
 /*-
  * Copyright (c) 2007 Joerg Sonnenberger <joerg%NetBSD.org@localhost>.
@@ -59,7 +59,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: acpi_ec.c,v 1.75.20.3 2020/04/29 13:33:35 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: acpi_ec.c,v 1.75.20.4 2020/06/20 15:52:50 martin Exp $");
 
 #include <sys/param.h>
 #include <sys/callout.h>
@@ -268,6 +268,11 @@
                goto fail0;
        }
 
+       if (!acpi_device_present(aa->aa_node->ad_handle)) {
+               aprint_normal(": not present\n");
+               goto fail0;
+       }
+
        if (!acpiec_parse_gpe_package(self, aa->aa_node->ad_handle,
                                      &gpe_handle, &gpebit))
                goto fail0;



Home | Main Index | Thread Index | Old Index