Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 945221 Details for
Bug 1150510
kernel ignores ACPI memory devices (PNP0C80) present at boot time
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
[RHEL6.7 2/7] ACPI / memory-hotplug: add memory offline code to acpi_memory_device_remove()
0002-ACPI-memory-hotplug-add-memory-offline-code-to-acpi_.patch (text/plain), 3.55 KB, created by
Igor Mammedov
on 2014-10-09 08:12:01 UTC
(
hide
)
Description:
[RHEL6.7 2/7] ACPI / memory-hotplug: add memory offline code to acpi_memory_device_remove()
Filename:
MIME Type:
Creator:
Igor Mammedov
Created:
2014-10-09 08:12:01 UTC
Size:
3.55 KB
patch
obsolete
>From 7de2497e90f8b124fbec7a9fab6afaeb6a010a19 Mon Sep 17 00:00:00 2001 >From: Igor Mammedov <imammedo@redhat.com> >Date: Wed, 8 Oct 2014 12:51:23 +0000 >Subject: [RHEL6.7 2/7] ACPI / memory-hotplug: add memory offline code to > acpi_memory_device_remove() > >Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1150510 >Upstream: 19387b27e42d5e20a8188cfa15dc902114d98c43 >Brew: http://brewweb.devel.redhat.com/brew/taskinfo?taskID=8073569 > >-- > Author: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com> 2012-11-15 06:59:31 > ACPI / memory-hotplug: add memory offline code to acpi_memory_device_remove() > > The memory device can be removed by 2 ways: > 1. send eject request by SCI > 2. echo 1 >/sys/bus/pci/devices/PNP0C80:XX/eject > > In the 1st case, acpi_memory_disable_device() will be called. > In the 2nd case, acpi_memory_device_remove() will be called. > acpi_memory_device_remove() will also be called when we unbind the > memory device from the driver acpi_memhotplug or a driver initialization > fails. > > acpi_memory_disable_device() has already implemented a code which > offlines memory and releases acpi_memory_info struct. But > acpi_memory_device_remove() has not implemented it yet. > > So the patch move offlining memory and releasing acpi_memory_info struct > codes to a new function acpi_memory_remove_memory(). And it is used by both > acpi_memory_device_remove() and acpi_memory_disable_device(). > > Signed-off-by: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com> > Signed-off-by: Wen Congyang <wency@cn.fujitsu.com> > Acked-by: David Rientjes <rientjes@google.com> > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> >-- > >Signed-off-by: Igor Mammedov <imammedo@redhat.com> >--- > drivers/acpi/acpi_memhotplug.c | 31 ++++++++++++++++++++++++------- > 1 file changed, 24 insertions(+), 7 deletions(-) > >diff --git a/drivers/acpi/acpi_memhotplug.c b/drivers/acpi/acpi_memhotplug.c >index 431ba97..1c36bf4 100644 >--- a/drivers/acpi/acpi_memhotplug.c >+++ b/drivers/acpi/acpi_memhotplug.c >@@ -341,25 +341,37 @@ static int acpi_memory_powerdown_device(struct acpi_memory_device *mem_device) > return 0; > } > >-static int acpi_memory_disable_device(struct acpi_memory_device *mem_device) >+static int acpi_memory_remove_memory(struct acpi_memory_device *mem_device) > { > int result; > struct acpi_memory_info *info, *n; > >- >- /* >- * Ask the VM to offline this memory range. >- * Note: Assume that this function returns zero on success >- */ > list_for_each_entry_safe(info, n, &mem_device->res_list, list) { > if (info->enabled) { > result = remove_memory(info->start_addr, info->length); > if (result) > return result; > } >+ >+ list_del(&info->list); > kfree(info); > } > >+ return 0; >+} >+ >+static int acpi_memory_disable_device(struct acpi_memory_device *mem_device) >+{ >+ int result; >+ >+ /* >+ * Ask the VM to offline this memory range. >+ * Note: Assume that this function returns zero on success >+ */ >+ result = acpi_memory_remove_memory(mem_device); >+ if (result) >+ return result; >+ > /* Power-off and eject the device */ > result = acpi_memory_powerdown_device(mem_device); > if (result) { >@@ -509,12 +521,17 @@ static int acpi_memory_device_add(struct acpi_device *device) > static int acpi_memory_device_remove(struct acpi_device *device, int type) > { > struct acpi_memory_device *mem_device = NULL; >- >+ int result; > > if (!device || !acpi_driver_data(device)) > return -EINVAL; > > mem_device = acpi_driver_data(device); >+ >+ result = acpi_memory_remove_memory(mem_device); >+ if (result) >+ return result; >+ > kfree(mem_device); > > return 0; >-- >1.8.3.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 1150510
:
945218
| 945221 |
945222
|
945223
|
945224
|
945225
|
945226