On 11/05/2013 10:09 AM, Andreas Färber wrote: > Hi, > > Am 05.11.2013 14:56, schrieb Michael S. Tsirkin: >> On Wed, May 29, 2013 at 05:07:56PM -0500, miny...@acm.org wrote: >>> I have finally gotten some time to work on this, this series of >>> patches adds an IPMI interface to qemu. The changes are roughly: >>> >>> patches 01-05 - Add the capability to have a chardev reconnect if >>> the connections fails. This way, if using an external BMC, qemu >>> will detect the failure and periodically attempt to reconnect. >>> This also adds ways for the device code to get an event on a >>> disconnect and connect so it can handle it properly. This is >>> probably useful for things besides IPMI. There are also a few >>> small bugfixes in this. >>> >>> patches 06-14 - Add the IPMI device itself, with an ISA interface >>> for now (PCI and others can also be added easily). >>> >>> patches 15-18 - Add a way to dynamically add content to the ACPI >>> tables, and add the capability to add the IPMI information to the >>> table. >>> >>> Patches 19-20 - Add a way to dynamically add content to the SMBIOS >>> tables, and add an IPMI entry to the table. >>> >> I was pointed at these patches as an example of useful >> functionality that's out of qemu merely for lack of review >> resources. I'd like to help. >> >> Now that we have code to generate ACPI tables >> directly in qemu, this series can be rebased on top of >> that, with no need for new FW CFG entries or bios changes. >> >> If you have the time, pls Cc me on patches and I'll try to >> help shepherd them upstream. > Me too, I have IPMI on my radar for 1.8/2.0. > > Our use case would be using IPMI tools to boot/reboot/shutdown a guest > and to access its serial console as done for the physical hosts; we had > discussed in the past where to locate such a TCP server component, > whether in QEMU or libvirt - am I interpreting correctly that patch 11 > is preparing an interface to have that as external process now? Or is it > hidden somewhere in patch 10 or is this unimplemented in this version?
Patch 11 does that, it gives an external interface. The OpenIPMI library has a simulator that will plug in to this interface to provide BMC functions and an IPMI LAN interface. You can do the boot/reboot/shutdown via the normal mechanisms with the external simulator. The internal simulator doesn't have an IPMI LAN interface, though, so you would need the external interface. I also have not provided a serial over LAN interface through this interface. If that's what you are looking for, more work would need to be done. Thanks, -corey > > Also, some of the IPMI acronyms in the commit messages (KCS, BT, ...) > could use some explanation in the next version. ;) > > Regards, > Andreas >