From mboxrd@z Thu Jan 1 00:00:00 1970 Received: by 2002:adf:a111:0:0:0:0:0 with SMTP id o17-v6csp2033828wro; Sun, 4 Nov 2018 17:48:31 -0800 (PST) X-Google-Smtp-Source: AJdET5fOidwrm/FnxKOIQMqon0XPMIGNJmxeF1ykXldUDUGv6cmyYlZxBMwlqooAct0bK3nl/gKd X-Received: by 2002:a37:8806:: with SMTP id k6-v6mr18797786qkd.119.1541382511218; Sun, 04 Nov 2018 17:48:31 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541382511; cv=none; d=google.com; s=arc-20160816; b=HUUP1ny77LSNrDqdQMOyaj8YrkYPTS/xn/NFkrlH+EJcAs1K9nVm/uUG3Ce365tqsy Fd1LOyuerOgdChTHpOdLp6IOngE/UzlHeLcPoI3QW+KFuFYbEEFgQ6ucciHMIvmLR09E GS4pUf4gY2/XVO8Hydo/V52eeFk6k4PBs7Jv4qHFxcfBfT/cM9cASDMFAkDE+BpkGfXj Own/QmLAjpb7S5udDRV7dNPLhyzbXluzDhvbNoUxa/Up/HtC1b3WnJRpQw7I++peyOyK 3L1GgegVAOMSVrbBJgTJRa1WSgtI9PfWxxW8C7/eILkFLmpsKUeZH0BKNLwApki8fEbP z5bQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from; bh=yngy3YctG1UhwMIwvrBWUvxF1mq0ud8J+F3MR9fC1lE=; b=UonPZh1mrfAhSltTg81PyFAfg9xhQQi6QnHp2d+a8J0QGVPuUASNwt5UxWJJYUH8Ls qONeBAQ/1F4X+6KYhiFpy+vWwhRZsyai2F2aFHPISBpMr58onSCdjcrxHNF5CMrQ4glV SN3L6lkmfHUPck0sGdspxofJ0GC/CJrIZJRqqVI7YYAgzxvFO46c2AMC61/+lNppuagR OMKRAf272+M8HRukZMB+8DF5BhGLqIFjDvSTo+XPFRawUHbnFDe9lQK81cRTnE0mHJl8 Ra7AveKAZ6MVNVaDOe8BGw3l5ziZhd06KJcrVArRAVPCZGzQEBv9vU48qxDlaAt71oCR O5QA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+alex.bennee=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+alex.bennee=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id j16si2038592qvp.114.2018.11.04.17.48.31 for (version=TLS1 cipher=AES128-SHA bits=128/128); Sun, 04 Nov 2018 17:48:31 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+alex.bennee=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+alex.bennee=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+alex.bennee=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from localhost ([::1]:60877 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gJU0E-0004Re-MU for alex.bennee@linaro.org; Sun, 04 Nov 2018 20:48:30 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47095) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gJTup-0007xA-2s for qemu-devel@nongnu.org; Sun, 04 Nov 2018 20:42:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gJTui-0002yv-O1 for qemu-devel@nongnu.org; Sun, 04 Nov 2018 20:42:54 -0500 Received: from mga03.intel.com ([134.134.136.65]:22001) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gJTui-0002wL-1d; Sun, 04 Nov 2018 20:42:48 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Nov 2018 17:42:47 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.54,466,1534834800"; d="scan'208";a="277074386" Received: from emurphy1-mobl1.ger.corp.intel.com (HELO localhost.localdomain) ([10.252.26.250]) by fmsmga005.fm.intel.com with ESMTP; 04 Nov 2018 17:42:42 -0800 From: Samuel Ortiz To: qemu-devel@nongnu.org Date: Mon, 5 Nov 2018 02:40:36 +0100 Message-Id: <20181105014047.26447-14-sameo@linux.intel.com> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181105014047.26447-1-sameo@linux.intel.com> References: <20181105014047.26447-1-sameo@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 134.134.136.65 Subject: [Qemu-devel] [PATCH v5 13/24] hw: acpi: Do not create hotplug method when handler is not defined X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Stefano Stabellini , Eduardo Habkost , "Michael S. Tsirkin" , Shannon Zhao , Igor Mammedov , qemu-arm@nongnu.org, Paolo Bonzini , Anthony Perard , xen-devel@lists.xenproject.org, Richard Henderson Errors-To: qemu-devel-bounces+alex.bennee=linaro.org@nongnu.org Sender: "Qemu-devel" X-TUID: GP/CXuLnaEUT CPU and memory ACPI hotplug are not necessarily handled through SCI events. For example, with Hardware-reduced ACPI, the GED device will manage ACPI hotplug entirely. As a consequence, we make the CPU and memory specific events AML generation optional. The code will only be added when the method name is not NULL. Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Signed-off-by: Samuel Ortiz --- hw/acpi/cpu.c | 8 +++++--- hw/acpi/memory_hotplug.c | 11 +++++++---- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/hw/acpi/cpu.c b/hw/acpi/cpu.c index f10b190019..cd41377b5a 100644 --- a/hw/acpi/cpu.c +++ b/hw/acpi/cpu.c @@ -569,9 +569,11 @@ void build_cpus_aml(Aml *table, MachineState *machine, CPUHotplugFeatures opts, aml_append(sb_scope, cpus_dev); aml_append(table, sb_scope); - method = aml_method(event_handler_method, 0, AML_NOTSERIALIZED); - aml_append(method, aml_call0("\\_SB.CPUS." CPU_SCAN_METHOD)); - aml_append(table, method); + if (event_handler_method) { + method = aml_method(event_handler_method, 0, AML_NOTSERIALIZED); + aml_append(method, aml_call0("\\_SB.CPUS." CPU_SCAN_METHOD)); + aml_append(table, method); + } g_free(cphp_res_path); } diff --git a/hw/acpi/memory_hotplug.c b/hw/acpi/memory_hotplug.c index 8c7c1013f3..db2c4df961 100644 --- a/hw/acpi/memory_hotplug.c +++ b/hw/acpi/memory_hotplug.c @@ -715,10 +715,13 @@ void build_memory_hotplug_aml(Aml *table, uint32_t nr_mem, } aml_append(table, dev_container); - method = aml_method(event_handler_method, 0, AML_NOTSERIALIZED); - aml_append(method, - aml_call0(MEMORY_DEVICES_CONTAINER "." MEMORY_SLOT_SCAN_METHOD)); - aml_append(table, method); + if (event_handler_method) { + method = aml_method(event_handler_method, 0, AML_NOTSERIALIZED); + aml_append(method, + aml_call0(MEMORY_DEVICES_CONTAINER "." + MEMORY_SLOT_SCAN_METHOD)); + aml_append(table, method); + } g_free(mhp_res_path); } -- 2.19.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Samuel Ortiz Subject: [PATCH v5 13/24] hw: acpi: Do not create hotplug method when handler is not defined Date: Mon, 5 Nov 2018 02:40:36 +0100 Message-ID: <20181105014047.26447-14-sameo@linux.intel.com> References: <20181105014047.26447-1-sameo@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gJTuj-0003zp-36 for xen-devel@lists.xenproject.org; Mon, 05 Nov 2018 01:42:49 +0000 In-Reply-To: <20181105014047.26447-1-sameo@linux.intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: qemu-devel@nongnu.org Cc: Peter Maydell , Stefano Stabellini , Eduardo Habkost , "Michael S. Tsirkin" , Shannon Zhao , Igor Mammedov , qemu-arm@nongnu.org, Marcel Apfelbaum , Paolo Bonzini , Anthony Perard , xen-devel@lists.xenproject.org, Richard Henderson List-Id: xen-devel@lists.xenproject.org Q1BVIGFuZCBtZW1vcnkgQUNQSSBob3RwbHVnIGFyZSBub3QgbmVjZXNzYXJpbHkgaGFuZGxlZCB0 aHJvdWdoIFNDSQpldmVudHMuIEZvciBleGFtcGxlLCB3aXRoIEhhcmR3YXJlLXJlZHVjZWQgQUNQ SSwgdGhlIEdFRCBkZXZpY2Ugd2lsbAptYW5hZ2UgQUNQSSBob3RwbHVnIGVudGlyZWx5LgpBcyBh IGNvbnNlcXVlbmNlLCB3ZSBtYWtlIHRoZSBDUFUgYW5kIG1lbW9yeSBzcGVjaWZpYyBldmVudHMg QU1MCmdlbmVyYXRpb24gb3B0aW9uYWwuIFRoZSBjb2RlIHdpbGwgb25seSBiZSBhZGRlZCB3aGVu IHRoZSBtZXRob2QgbmFtZSBpcwpub3QgTlVMTC4KClJldmlld2VkLWJ5OiBQaGlsaXBwZSBNYXRo aWV1LURhdWTDqSA8cGhpbG1kQHJlZGhhdC5jb20+ClRlc3RlZC1ieTogUGhpbGlwcGUgTWF0aGll dS1EYXVkw6kgPHBoaWxtZEByZWRoYXQuY29tPgpTaWduZWQtb2ZmLWJ5OiBTYW11ZWwgT3J0aXog PHNhbWVvQGxpbnV4LmludGVsLmNvbT4KLS0tCiBody9hY3BpL2NwdS5jICAgICAgICAgICAgfCAg OCArKysrKy0tLQogaHcvYWNwaS9tZW1vcnlfaG90cGx1Zy5jIHwgMTEgKysrKysrKy0tLS0KIDIg ZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9ody9hY3BpL2NwdS5jIGIvaHcvYWNwaS9jcHUuYwppbmRleCBmMTBiMTkwMDE5Li5jZDQx Mzc3YjVhIDEwMDY0NAotLS0gYS9ody9hY3BpL2NwdS5jCisrKyBiL2h3L2FjcGkvY3B1LmMKQEAg LTU2OSw5ICs1NjksMTEgQEAgdm9pZCBidWlsZF9jcHVzX2FtbChBbWwgKnRhYmxlLCBNYWNoaW5l U3RhdGUgKm1hY2hpbmUsIENQVUhvdHBsdWdGZWF0dXJlcyBvcHRzLAogICAgIGFtbF9hcHBlbmQo c2Jfc2NvcGUsIGNwdXNfZGV2KTsKICAgICBhbWxfYXBwZW5kKHRhYmxlLCBzYl9zY29wZSk7CiAK LSAgICBtZXRob2QgPSBhbWxfbWV0aG9kKGV2ZW50X2hhbmRsZXJfbWV0aG9kLCAwLCBBTUxfTk9U U0VSSUFMSVpFRCk7Ci0gICAgYW1sX2FwcGVuZChtZXRob2QsIGFtbF9jYWxsMCgiXFxfU0IuQ1BV Uy4iIENQVV9TQ0FOX01FVEhPRCkpOwotICAgIGFtbF9hcHBlbmQodGFibGUsIG1ldGhvZCk7Cisg ICAgaWYgKGV2ZW50X2hhbmRsZXJfbWV0aG9kKSB7CisgICAgICAgIG1ldGhvZCA9IGFtbF9tZXRo b2QoZXZlbnRfaGFuZGxlcl9tZXRob2QsIDAsIEFNTF9OT1RTRVJJQUxJWkVEKTsKKyAgICAgICAg YW1sX2FwcGVuZChtZXRob2QsIGFtbF9jYWxsMCgiXFxfU0IuQ1BVUy4iIENQVV9TQ0FOX01FVEhP RCkpOworICAgICAgICBhbWxfYXBwZW5kKHRhYmxlLCBtZXRob2QpOworICAgIH0KIAogICAgIGdf ZnJlZShjcGhwX3Jlc19wYXRoKTsKIH0KZGlmZiAtLWdpdCBhL2h3L2FjcGkvbWVtb3J5X2hvdHBs dWcuYyBiL2h3L2FjcGkvbWVtb3J5X2hvdHBsdWcuYwppbmRleCA4YzdjMTAxM2YzLi5kYjJjNGRm OTYxIDEwMDY0NAotLS0gYS9ody9hY3BpL21lbW9yeV9ob3RwbHVnLmMKKysrIGIvaHcvYWNwaS9t ZW1vcnlfaG90cGx1Zy5jCkBAIC03MTUsMTAgKzcxNSwxMyBAQCB2b2lkIGJ1aWxkX21lbW9yeV9o b3RwbHVnX2FtbChBbWwgKnRhYmxlLCB1aW50MzJfdCBucl9tZW0sCiAgICAgfQogICAgIGFtbF9h cHBlbmQodGFibGUsIGRldl9jb250YWluZXIpOwogCi0gICAgbWV0aG9kID0gYW1sX21ldGhvZChl dmVudF9oYW5kbGVyX21ldGhvZCwgMCwgQU1MX05PVFNFUklBTElaRUQpOwotICAgIGFtbF9hcHBl bmQobWV0aG9kLAotICAgICAgICBhbWxfY2FsbDAoTUVNT1JZX0RFVklDRVNfQ09OVEFJTkVSICIu IiBNRU1PUllfU0xPVF9TQ0FOX01FVEhPRCkpOwotICAgIGFtbF9hcHBlbmQodGFibGUsIG1ldGhv ZCk7CisgICAgaWYgKGV2ZW50X2hhbmRsZXJfbWV0aG9kKSB7CisgICAgICAgIG1ldGhvZCA9IGFt bF9tZXRob2QoZXZlbnRfaGFuZGxlcl9tZXRob2QsIDAsIEFNTF9OT1RTRVJJQUxJWkVEKTsKKyAg ICAgICAgYW1sX2FwcGVuZChtZXRob2QsCisgICAgICAgICAgICAgICAgICAgYW1sX2NhbGwwKE1F TU9SWV9ERVZJQ0VTX0NPTlRBSU5FUiAiLiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TUVNT1JZX1NMT1RfU0NBTl9NRVRIT0QpKTsKKyAgICAgICAgYW1sX2FwcGVuZCh0YWJsZSwgbWV0 aG9kKTsKKyAgICB9CiAKICAgICBnX2ZyZWUobWhwX3Jlc19wYXRoKTsKIH0KLS0gCjIuMTkuMQoK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZl bCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlz dHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw= From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47095) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gJTup-0007xA-2s for qemu-devel@nongnu.org; Sun, 04 Nov 2018 20:42:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gJTui-0002yv-O1 for qemu-devel@nongnu.org; Sun, 04 Nov 2018 20:42:54 -0500 From: Samuel Ortiz Date: Mon, 5 Nov 2018 02:40:36 +0100 Message-Id: <20181105014047.26447-14-sameo@linux.intel.com> In-Reply-To: <20181105014047.26447-1-sameo@linux.intel.com> References: <20181105014047.26447-1-sameo@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [Qemu-devel] [PATCH v5 13/24] hw: acpi: Do not create hotplug method when handler is not defined List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Shannon Zhao , Stefano Stabellini , Anthony Perard , Richard Henderson , Marcel Apfelbaum , xen-devel@lists.xenproject.org, Paolo Bonzini , "Michael S. Tsirkin" , Igor Mammedov , qemu-arm@nongnu.org, Peter Maydell , Eduardo Habkost CPU and memory ACPI hotplug are not necessarily handled through SCI events. For example, with Hardware-reduced ACPI, the GED device will manage ACPI hotplug entirely. As a consequence, we make the CPU and memory specific events AML generation optional. The code will only be added when the method name is not NULL. Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Signed-off-by: Samuel Ortiz --- hw/acpi/cpu.c | 8 +++++--- hw/acpi/memory_hotplug.c | 11 +++++++---- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/hw/acpi/cpu.c b/hw/acpi/cpu.c index f10b190019..cd41377b5a 100644 --- a/hw/acpi/cpu.c +++ b/hw/acpi/cpu.c @@ -569,9 +569,11 @@ void build_cpus_aml(Aml *table, MachineState *machine, CPUHotplugFeatures opts, aml_append(sb_scope, cpus_dev); aml_append(table, sb_scope); - method = aml_method(event_handler_method, 0, AML_NOTSERIALIZED); - aml_append(method, aml_call0("\\_SB.CPUS." CPU_SCAN_METHOD)); - aml_append(table, method); + if (event_handler_method) { + method = aml_method(event_handler_method, 0, AML_NOTSERIALIZED); + aml_append(method, aml_call0("\\_SB.CPUS." CPU_SCAN_METHOD)); + aml_append(table, method); + } g_free(cphp_res_path); } diff --git a/hw/acpi/memory_hotplug.c b/hw/acpi/memory_hotplug.c index 8c7c1013f3..db2c4df961 100644 --- a/hw/acpi/memory_hotplug.c +++ b/hw/acpi/memory_hotplug.c @@ -715,10 +715,13 @@ void build_memory_hotplug_aml(Aml *table, uint32_t nr_mem, } aml_append(table, dev_container); - method = aml_method(event_handler_method, 0, AML_NOTSERIALIZED); - aml_append(method, - aml_call0(MEMORY_DEVICES_CONTAINER "." MEMORY_SLOT_SCAN_METHOD)); - aml_append(table, method); + if (event_handler_method) { + method = aml_method(event_handler_method, 0, AML_NOTSERIALIZED); + aml_append(method, + aml_call0(MEMORY_DEVICES_CONTAINER "." + MEMORY_SLOT_SCAN_METHOD)); + aml_append(table, method); + } g_free(mhp_res_path); } -- 2.19.1