|
From: | Corey Minyard |
Subject: | Re: [Qemu-devel] [PATCH 0/2] ipmi: Allow UUID to be set for a BMC |
Date: | Fri, 9 Nov 2018 07:33:03 -0600 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1 |
On 11/8/18 5:22 PM, David Gibson wrote:
On Thu, Nov 08, 2018 at 08:19:42AM -0600, address@hidden wrote:The code was using the qemu UUID for the BMC. But that's really not a good method. In general, you don't want the GUID to change when you migrate, and you want the GUID to be the same between invocations of qemu (if you have a GUID).Hrm. Generally the qemu UUID should remain the same across a migration too, and I think that will be the case if using libvirt. Maybe not if running qemu by hand and not specifying the uuid on the command line. I don't really have an objection to allowing the BMC's id to be explicitly controlled, but the rationale above seems a bit disingenuous.
I'm not sure about migration. I suppose it could be migrated, but I would consider the BMC part of the hardware that needs to be the same on both sides. It's a fuzzy line, I suppose. The qemu UUID is migrated, so I suppose that's not an issue. Controlling it explicitly is important for some testing I do, and might be for other people at some point in time, if you are trying to emulate something specific. And when re-invoking qemu, you might want to keep it the same to avoid confusing software. The big question for you is the lack of a GUID if it's not supplied. With this change, the get GUID command will return a "command not supported" error if the GUID is not supplied. Thanks, -corey
Plus, if you have multiple BMCs, they need to have different GUIDs or the host code cannot tell them apart. I'm not sure anyone really uses multiple BMCs, but I do a lot of testing with that scenario. This change lets the user set the GUID on the command line, and if the GUID is not set return an error for the GUID fetch command. This maps better to how IPMI should work. This change relies on the UUID being set to all zeros to know that it is not set. This is not optimal, perhaps, but an all zero UUID isn't valid (it's the Nil UUID), so it should be ok.
[Prev in Thread] | Current Thread | [Next in Thread] |