Hello, in some cases Microsoft OEM licence can be used in virtual machine legally. http://www.microsoft.com/windowsserver2008/en/us/licensing-datacenter.aspx For Windows 7 it is not clear, but possibly it is legal. To make in technically possible, one should use its ACPI SLIC table from original BIOS in virtual BIOS. I've created a patch for some versions (including latest stable), it can be easily cherry-picked in master. http://gitorious.org/seabios/seabios Of course, the patch does not include this SLIC table, only a code and place to put it.
Coreboot project have such support (at least for some motherboards).
-- Klimovsky Arseny
On Mon, Jun 21, 2010 at 04:07:33PM +0400, Arseny Klimovsky wrote:
Hello, in some cases Microsoft OEM licence can be used in virtual machine legally. http://www.microsoft.com/windowsserver2008/en/us/licensing-datacenter.aspx For Windows 7 it is not clear, but possibly it is legal. To make in technically possible, one should use its ACPI SLIC table from original BIOS in virtual BIOS. I've created a patch for some versions (including latest stable), it can be easily cherry-picked in master. http://gitorious.org/seabios/seabios Of course, the patch does not include this SLIC table, only a code and place to put it.
Qemu support passing acpi tables to Seabios already using -acpitable option. It was added specifically to pass SLIC tables.
-- Gleb.
Gleb Natapov wrote:
On Mon, Jun 21, 2010 at 04:07:33PM +0400, Arseny Klimovsky wrote:
Hello, in some cases Microsoft OEM licence can be used in virtual machine legally. http://www.microsoft.com/windowsserver2008/en/us/licensing-datacenter.aspx For Windows 7 it is not clear, but possibly it is legal. To make in technically possible, one should use its ACPI SLIC table from original BIOS in virtual BIOS. I've created a patch for some versions (including latest stable), it can be easily cherry-picked in master. http://gitorious.org/seabios/seabios Of course, the patch does not include this SLIC table, only a code and place to put it.
Qemu support passing acpi tables to Seabios already using -acpitable option. It was added specifically to pass SLIC tables.
Yes, I argee, that such support should be made in qemu/kvm also, because this way one should recompile BIOS for adding SLIC.
But actually passing -acpitable is not enough for Windows OEM activation, in all tables oem_id and table_oem_id should match manufacturer. You can read about this here http://kerneltrap.org/mailarchive/linux-kvm/2010/3/25/6260141/thread Now, no support for changing these fields, which are already inserted in BIOS. So, anyway one should recompile BIOS to have OEM activation working.
Anyway, even if such support is added, sometimes it is more convenient for user to add SLIC table to BIOS file. This way you should not think about this every time you change configuration in scripts/libvirt.
I think this feature is useful and easy to support, while it should not be enabled by default.
-- Klimovsky Arseny
On Mon, Jun 21, 2010 at 07:54:15PM +0400, Arseny Klimovsky wrote:
Gleb Natapov wrote:
Qemu support passing acpi tables to Seabios already using -acpitable option. It was added specifically to pass SLIC tables.
Yes, I argee, that such support should be made in qemu/kvm also, because this way one should recompile BIOS for adding SLIC.
I don't understand, why would someone want to recompile their bios in place of just passing in the slic table?
But actually passing -acpitable is not enough for Windows OEM activation, in all tables oem_id and table_oem_id should match manufacturer.
If I understand your changes, you want seabios to update the oem ids in the passed in slic table so that it matches seabios' other tables. Is this correct? Why do you need to both update the oem ids and compile in a slic table?
-Kevin
On Mon, Jun 21, 2010 at 10:52:02PM -0400, Kevin O'Connor wrote:
If I understand your changes, you want seabios to update the oem ids in the passed in slic table so that it matches seabios' other tables. Is this correct? Why do you need to both update the oem ids and compile in a slic table?
Because Vista checks both.
OG.
Kevin O'Connor wrote:
On Mon, Jun 21, 2010 at 07:54:15PM +0400, Arseny Klimovsky wrote:
Gleb Natapov wrote:
Qemu support passing acpi tables to Seabios already using -acpitable option. It was added specifically to pass SLIC tables.
Yes, I argee, that such support should be made in qemu/kvm also, because this way one should recompile BIOS for adding SLIC.
I don't understand, why would someone want to recompile their bios in place of just passing in the slic table?
Sorry, my sentence was not clear. I mean, that using the introduced patch one should recompile BIOS to have OEM activation working. But if needed support is added to qemu, recompilation will be not necessary. So, the introduced patch is a partial solution, full solution can be made in qemu.
But actually passing -acpitable is not enough for Windows OEM activation, in all tables oem_id and table_oem_id should match manufacturer.
If I understand your changes, you want seabios to update the oem ids in the passed in slic table so that it matches seabios' other tables. Is this correct? Why do you need to both update the oem ids and compile in a slic table?
No, I want seabios update oem_id in all other tables, so that it match oem_id in SLIC table. SLIC table must be untouched, it has some digital signature. The best solution for qemu is adding a parameter like "-oemid", so that all this filed will be updated in all tables. And this is a dynamic support for carrying OEM information to virtual environment, I introduced a patch for static support.