public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/15] Review: acpi processor hotplug
@ 2008-02-22 21:34 Glauber Costa
  2008-02-22 21:34 ` [PATCH 1/15] Make a GPE register block be acessible Glauber Costa
  2008-02-24  9:44 ` [PATCH 0/15] Review: acpi processor hotplug Avi Kivity
  0 siblings, 2 replies; 25+ messages in thread
From: Glauber Costa @ 2008-02-22 21:34 UTC (permalink / raw)
  To: kvm-devel; +Cc: chrisw, marcelo, avi

Hi,

In this series, I'm sending the result-so-far of my work
with acpi for processor hotplug. I'm able to put a cpu up and down
(with the help of some udev scripts I wrote), but it still has some
known bugs and issues. For x86_64 linux machines (because the kernel
supports it), you can plug cpus that _were not_ listed initially in 
smp_cpus.

The usage is : cpu_set x (online/offline), in qemu monitor.
It will then send the proper signals to the cpu #x.

However, it is important to note that:

* there's no way to know if it suceeded. (ex, if the udev scripts are not
running, the cpu will not be put up, and you'll never know)
* there's no way to unconditionally send an add signal. (if you send BUS_CHECK again,
  and the cpu is already marked as present, it will offline it instead)

because of that, management gets a bit complicated. The ideal situation is to specify:
"I want Y cpus", and have it. Error reported in case it fails. Because of that, I _still_
advocate for an alternative virtio implementation. ACPI still plays its role in this scenario,
but not the full role.

In my TODO list, you'll find:
* fix some more issues in this code, and merge the gently comments I'm sure you'll make
* device acpi hotplug
* virtio cpu hotplug for linux (meaning refactoring the existing patch)
* occupy 24 territories.
* conquer 18 territories with at least 2 battalions on each. 

Besides a bunch of boring personal items I'm sure are not of interest to anybody here.

Thanks in advance 


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/

^ permalink raw reply	[flat|nested] 25+ messages in thread
* [PATCH 0/15] acpi processor hotplug
@ 2008-02-26 19:56 Glauber Costa
  2008-02-26 19:56 ` [PATCH 1/15] Make a GPE register block be acessible Glauber Costa
  0 siblings, 1 reply; 25+ messages in thread
From: Glauber Costa @ 2008-02-26 19:56 UTC (permalink / raw)
  To: kvm-devel; +Cc: marcelo, qemu-devel, avi, chrisw

Hi,

I'm resending the series with avi's few comments merged, and a couple
of others on my own:

* _STA returns 0xF instead of 0x1. According to the specification, it means
  that the device, besides present, is also functional, enabled, and a couple
  of other cool things.
* gpe_base and proc_base as #defines, not unsigned long
* _EJ method out. It's causing a lot of troubles, and I'm not even sure it
  makes sense for processors. We can live without it by now, and if it is needed,
  it can be added later.

Have a safe trip back home,



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/

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

end of thread, other threads:[~2008-02-26 23:07 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-22 21:34 [PATCH 0/15] Review: acpi processor hotplug Glauber Costa
2008-02-22 21:34 ` [PATCH 1/15] Make a GPE register block be acessible Glauber Costa
2008-02-22 21:34   ` [PATCH 2/15] mark extra cpus as present Glauber Costa
2008-02-22 21:34     ` [PATCH 3/15] introduce cpu_set to qemu monitor Glauber Costa
2008-02-22 21:34       ` [PATCH 4/15] mark processors as presents Glauber Costa
2008-02-22 21:34         ` [PATCH 5/15] provide gpe _L0x methods Glauber Costa
2008-02-22 21:34           ` [PATCH 6/15] provide operation region for pio to the gpes Glauber Costa
2008-02-22 21:34             ` [PATCH 7/15] implement method _L00 for GPE0 Glauber Costa
2008-02-22 21:34               ` [PATCH 8/15] isolate cpu initialization function in hw/pc.c Glauber Costa
2008-02-22 21:34                 ` [PATCH 9/15] initialize hot add system Glauber Costa
2008-02-22 21:34                   ` [PATCH 10/15] handle gpe data for pio Glauber Costa
2008-02-22 21:34                     ` [PATCH 11/15] manipulate the gpe bits and send sci up the os Glauber Costa
2008-02-22 21:34                       ` [PATCH 12/15] isolate cpu thread creation in qemu-kvm.c Glauber Costa
2008-02-22 21:34                         ` [PATCH 13/15] provide _MAT to acpi processor Glauber Costa
2008-02-22 21:34                           ` [PATCH 14/15] start a new cpu thread Glauber Costa
2008-02-22 21:34                             ` [PATCH 15/15] provide _EJ0 method for processor removal Glauber Costa
2008-02-24  9:33         ` [PATCH 4/15] mark processors as presents Avi Kivity
2008-02-25 14:38           ` Glauber Costa
2008-02-25 14:49             ` Avi Kivity
2008-02-25 14:43               ` Glauber Costa
2008-02-24  9:34       ` [PATCH 3/15] introduce cpu_set to qemu monitor Avi Kivity
2008-02-24  9:44 ` [PATCH 0/15] Review: acpi processor hotplug Avi Kivity
  -- strict thread matches above, loose matches on Subject: below --
2008-02-26 19:56 [PATCH 0/15] " Glauber Costa
2008-02-26 19:56 ` [PATCH 1/15] Make a GPE register block be acessible Glauber Costa
2008-02-26 19:56   ` [PATCH 2/15] mark extra cpus as present Glauber Costa
2008-02-26 19:56     ` [PATCH 3/15] introduce cpu_set to qemu monitor Glauber Costa
2008-02-26 19:56       ` [PATCH 4/15] mark processors as presents Glauber Costa
2008-02-26 23:05         ` Alexander Graf
2008-02-26 23:07           ` Alexander Graf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox