All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] acpi: Fix CPU hot removal problem
@ 2011-09-08  2:39 canquan.shen
  2011-09-13  5:58 ` canquan.shen
  0 siblings, 1 reply; 3+ messages in thread
From: canquan.shen @ 2011-09-08  2:39 UTC (permalink / raw)
  To: lenb
  Cc: Bjorn Helgaas, shemminger, yakui.zhao, xiaowei.yang, hanweidong,
	linqiangmin, linux-kernel, linux-acpi

We run Linux as a guest in Xen environment. When used xen tools
(xm vcpu-set <n>) to hot add and remove vcpu to and from the guest,
  we encountered the failure on vcpu removal. We found the reason is
that it didn't go to really remove cpu in the cpu removal code path.

This patch adds acpi_bus_trim in acpi_process_hotplug_notify to fix
this issue. With this patch, it works fine for us.

Signed-off-by: Canquan Shen <shencanquan@huawei.com>
---
  drivers/acpi/processor_driver.c |    5 +++++
  1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/acpi/processor_driver.c 
b/drivers/acpi/processor_driver.c
index a1c564f..114592f 100644
--- a/drivers/acpi/processor_driver.c
+++ b/drivers/acpi/processor_driver.c
@@ -678,7 +678,11 @@ static void 
acpi_processor_hotplug_notify(acpi_handle handle,
              return;
          }

+        if (acpi_bus_trim(device, 1)) {
+            printk(KERN_ERR PREFIX
+                    "Removing device failed\n");
+            return;
+        }
          break;
      default:
          ACPI_DEBUG_PRINT((ACPI_DB_INFO,
-- 
1.7.6


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] acpi: Fix CPU hot removal problem
  2011-09-08  2:39 [PATCH v2] acpi: Fix CPU hot removal problem canquan.shen
@ 2011-09-13  5:58 ` canquan.shen
  2011-09-13 15:49   ` Bjorn Helgaas
  0 siblings, 1 reply; 3+ messages in thread
From: canquan.shen @ 2011-09-13  5:58 UTC (permalink / raw)
  To: len.brown
  Cc: Bjorn Helgaas, shemminger, yakui.zhao, xiaowei.yang, hanweidong,
	linqiangmin, linux-kernel, linux-acpi

On 2011/9/8 10:39, canquan.shen wrote:
> We run Linux as a guest in Xen environment. When used xen tools
> (xm vcpu-set <n>) to hot add and remove vcpu to and from the guest,
> we encountered the failure on vcpu removal. We found the reason is
> that it didn't go to really remove cpu in the cpu removal code path.
>
> This patch adds acpi_bus_trim in acpi_process_hotplug_notify to fix
> this issue. With this patch, it works fine for us.
>
> Signed-off-by: Canquan Shen <shencanquan@huawei.com>
> ---
> drivers/acpi/processor_driver.c | 5 +++++
> 1 files changed, 5 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/acpi/processor_driver.c
> b/drivers/acpi/processor_driver.c
> index a1c564f..114592f 100644
> --- a/drivers/acpi/processor_driver.c
> +++ b/drivers/acpi/processor_driver.c
> @@ -678,7 +678,11 @@ static void
> acpi_processor_hotplug_notify(acpi_handle handle,
> return;
> }
>
> + if (acpi_bus_trim(device, 1)) {
> + printk(KERN_ERR PREFIX
> + "Removing device failed\n");
> + return;
> + }
> break;
> default:
> ACPI_DEBUG_PRINT((ACPI_DB_INFO,

Hi Len,
     I just see your email in linux-kernel maillist and known that your 
kernel.org email is kaput, so I resend this email to your intel email 
address.

Thanks,
- Canquan Shen

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] acpi: Fix CPU hot removal problem
  2011-09-13  5:58 ` canquan.shen
@ 2011-09-13 15:49   ` Bjorn Helgaas
  0 siblings, 0 replies; 3+ messages in thread
From: Bjorn Helgaas @ 2011-09-13 15:49 UTC (permalink / raw)
  To: canquan.shen
  Cc: len.brown, shemminger, yakui.zhao, xiaowei.yang, hanweidong,
	linqiangmin, linux-kernel, linux-acpi

On Mon, Sep 12, 2011 at 11:58 PM, canquan.shen <shencanquan@huawei.com> wrote:
> On 2011/9/8 10:39, canquan.shen wrote:
>>
>> We run Linux as a guest in Xen environment. When used xen tools
>> (xm vcpu-set <n>) to hot add and remove vcpu to and from the guest,
>> we encountered the failure on vcpu removal. We found the reason is
>> that it didn't go to really remove cpu in the cpu removal code path.
>>
>> This patch adds acpi_bus_trim in acpi_process_hotplug_notify to fix
>> this issue. With this patch, it works fine for us.
>>
>> Signed-off-by: Canquan Shen <shencanquan@huawei.com>
>> ---
>> drivers/acpi/processor_driver.c | 5 +++++
>> 1 files changed, 5 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/acpi/processor_driver.c
>> b/drivers/acpi/processor_driver.c
>> index a1c564f..114592f 100644
>> --- a/drivers/acpi/processor_driver.c
>> +++ b/drivers/acpi/processor_driver.c
>> @@ -678,7 +678,11 @@ static void
>> acpi_processor_hotplug_notify(acpi_handle handle,
>> return;
>> }
>>
>> + if (acpi_bus_trim(device, 1)) {
>> + printk(KERN_ERR PREFIX
>> + "Removing device failed\n");
>> + return;
>> + }
>> break;
>> default:
>> ACPI_DEBUG_PRINT((ACPI_DB_INFO,

I think this patch is OK.  One nit is that kernel printks should never
be constant strings.  There's almost always more information that's
useful in debugging.  This error should at least tell us which driver
is involved, and preferably which specific device (though we have to
be careful in case the device struct is freed by acpi_bus_trim()).

Bjorn

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-09-13 15:50 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-09-08  2:39 [PATCH v2] acpi: Fix CPU hot removal problem canquan.shen
2011-09-13  5:58 ` canquan.shen
2011-09-13 15:49   ` Bjorn Helgaas

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.