public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default)
@ 2024-12-16  9:15 bugzilla-daemon
  2024-12-16  9:22 ` [Bug 219602] " bugzilla-daemon
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: bugzilla-daemon @ 2024-12-16  9:15 UTC (permalink / raw)
  To: kvm

https://bugzilla.kernel.org/show_bug.cgi?id=219602

            Bug ID: 219602
           Summary: Default of kvm.enable_virt_at_load breaks other
                    virtualization solutions (by default)
           Product: Virtualization
           Version: unspecified
          Hardware: All
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P3
         Component: kvm
          Assignee: virtualization_kvm@kernel-bugs.osdl.org
          Reporter: acmelab@proton.me
        Regression: No

Previously (kernel 6.11 and lower) VMs of other virtualization solutions such
as VirtualBox could be started with the KVM module enabled.

Since 6.12 setting kvm.enable_virt_at_load=0 needs to be set at boot if the KVM
module is enabled, if you want to use other virtualization solution beside KVM. 

The commit that introduced the new behavior is
https://github.com/torvalds/linux/commit/b4886fab6fb620b96ad7eeefb9801c42dfa91741.
To be clear it is not about the feature itself, but the default. I am also
aware that this might be intentional; but given it deviates from
previous/expected behavior, it seems like a regression.

The fix would be to set the feature to be off by default. This would be
trivial, but first I need to know for sure that this is considered a bug.

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

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

* [Bug 219602] Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default)
  2024-12-16  9:15 [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) bugzilla-daemon
@ 2024-12-16  9:22 ` bugzilla-daemon
  2024-12-16  9:30 ` [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions bugzilla-daemon
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon @ 2024-12-16  9:22 UTC (permalink / raw)
  To: kvm

https://bugzilla.kernel.org/show_bug.cgi?id=219602

Pinky (acmelab@proton.me) changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Bisected commit-id|                            |b4886fab6fb620b96ad7eeefb98
                   |                            |01c42dfa91741
     Kernel Version|                            |6.12
         Regression|No                          |Yes

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

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

* [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions
  2024-12-16  9:15 [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) bugzilla-daemon
  2024-12-16  9:22 ` [Bug 219602] " bugzilla-daemon
@ 2024-12-16  9:30 ` bugzilla-daemon
  2024-12-17  4:19 ` [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) Christoph Hellwig
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon @ 2024-12-16  9:30 UTC (permalink / raw)
  To: kvm

https://bugzilla.kernel.org/show_bug.cgi?id=219602

Pinky (acmelab@proton.me) changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Default of                  |By default
                   |kvm.enable_virt_at_load     |kvm.enable_virt_at_load
                   |breaks other virtualization |breaks other virtualization
                   |solutions (by default)      |solutions

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

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

* Re: [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default)
  2024-12-16  9:15 [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) bugzilla-daemon
  2024-12-16  9:22 ` [Bug 219602] " bugzilla-daemon
  2024-12-16  9:30 ` [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions bugzilla-daemon
@ 2024-12-17  4:19 ` Christoph Hellwig
  2024-12-17  4:20 ` [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions bugzilla-daemon
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Christoph Hellwig @ 2024-12-17  4:19 UTC (permalink / raw)
  To: bugzilla-daemon; +Cc: kvm

On Mon, Dec 16, 2024 at 09:15:22AM +0000, bugzilla-daemon@kernel.org wrote:
> Previously (kernel 6.11 and lower) VMs of other virtualization solutions such
> as VirtualBox could be started with the KVM module enabled.

There is no other in-tree user of the hardware virtualization
capabilities, so this can't break anything by definition.


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

* [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions
  2024-12-16  9:15 [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) bugzilla-daemon
                   ` (2 preceding siblings ...)
  2024-12-17  4:19 ` [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) Christoph Hellwig
@ 2024-12-17  4:20 ` bugzilla-daemon
  2024-12-17 15:52 ` bugzilla-daemon
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon @ 2024-12-17  4:20 UTC (permalink / raw)
  To: kvm

https://bugzilla.kernel.org/show_bug.cgi?id=219602

--- Comment #1 from hch@infradead.org ---
On Mon, Dec 16, 2024 at 09:15:22AM +0000, bugzilla-daemon@kernel.org wrote:
> Previously (kernel 6.11 and lower) VMs of other virtualization solutions such
> as VirtualBox could be started with the KVM module enabled.

There is no other in-tree user of the hardware virtualization
capabilities, so this can't break anything by definition.

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

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

* [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions
  2024-12-16  9:15 [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) bugzilla-daemon
                   ` (3 preceding siblings ...)
  2024-12-17  4:20 ` [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions bugzilla-daemon
@ 2024-12-17 15:52 ` bugzilla-daemon
  2024-12-17 16:46 ` bugzilla-daemon
  2024-12-17 17:50 ` bugzilla-daemon
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon @ 2024-12-17 15:52 UTC (permalink / raw)
  To: kvm

https://bugzilla.kernel.org/show_bug.cgi?id=219602

--- Comment #2 from Pinky (acmelab@proton.me) ---
(In reply to hch from comment #1)
> On Mon, Dec 16, 2024 at 09:15:22AM +0000, bugzilla-daemon@kernel.org wrote:
> > Previously (kernel 6.11 and lower) VMs of other virtualization solutions
> such
> > as VirtualBox could be started with the KVM module enabled.
> 
> There is no other in-tree user of the hardware virtualization
> capabilities, so this can't break anything by definition.

That sounds like a dead-end argument to me. What is the use case for this new
feature actually? What would be the disadvantage to turn this off by default?

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

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

* [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions
  2024-12-16  9:15 [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) bugzilla-daemon
                   ` (4 preceding siblings ...)
  2024-12-17 15:52 ` bugzilla-daemon
@ 2024-12-17 16:46 ` bugzilla-daemon
  2024-12-17 17:50 ` bugzilla-daemon
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon @ 2024-12-17 16:46 UTC (permalink / raw)
  To: kvm

https://bugzilla.kernel.org/show_bug.cgi?id=219602

Sean Christopherson (seanjc@google.com) changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |seanjc@google.com

--- Comment #3 from Sean Christopherson (seanjc@google.com) ---
From the kernel docs:

        kvm.enable_virt_at_load=[KVM,ARM64,LOONGARCH,MIPS,RISCV,X86]
                        If enabled, KVM will enable virtualization in hardware
                        when KVM is loaded, and disable virtualization when KVM
                        is unloaded (if KVM is built as a module).

                        If disabled, KVM will dynamically enable and disable
                        virtualization on-demand when creating and destroying
                        VMs, i.e. on the 0=>1 and 1=>0 transitions of the
                        number of VMs.

                        Enabling virtualization at module lode avoids potential
                        latency for creation of the 0=>1 VM, as KVM serializes
                        virtualization enabling across all online CPUs.  The
                        "cost" of enabling virtualization when KVM is loaded,
                        is that doing so may interfere with using out-of-tree
                        hypervisors that want to "own" virtualization hardware.

In addition to the latency angle, TDX support is effectively going to require
VMX to be enabled when KVM is loaded, i.e. trying to do something different
will only delay the inevitable.

FWIW, Paolo and I do want to get to a state where out-of-tree hypervisors don't
need to do weird things, but it'll take some time to get to that state.

https://lore.kernel.org/all/ZwQjUSOle6sWARsr@google.com

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

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

* [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions
  2024-12-16  9:15 [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) bugzilla-daemon
                   ` (5 preceding siblings ...)
  2024-12-17 16:46 ` bugzilla-daemon
@ 2024-12-17 17:50 ` bugzilla-daemon
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon @ 2024-12-17 17:50 UTC (permalink / raw)
  To: kvm

https://bugzilla.kernel.org/show_bug.cgi?id=219602

Pinky (acmelab@proton.me) changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |ANSWERED

--- Comment #4 from Pinky (acmelab@proton.me) ---
(In reply to Sean Christopherson from comment #3)
> FWIW, Paolo and I do want to get to a state where out-of-tree hypervisors
> don't need to do weird things, but it'll take some time to get to that state.
> 
> https://lore.kernel.org/all/ZwQjUSOle6sWARsr@google.com

Thanks for the longer explanation (including the link's content). Given that
this was discussed already, I am going to close this then.

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

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

end of thread, other threads:[~2024-12-17 17:50 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-16  9:15 [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) bugzilla-daemon
2024-12-16  9:22 ` [Bug 219602] " bugzilla-daemon
2024-12-16  9:30 ` [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions bugzilla-daemon
2024-12-17  4:19 ` [Bug 219602] New: Default of kvm.enable_virt_at_load breaks other virtualization solutions (by default) Christoph Hellwig
2024-12-17  4:20 ` [Bug 219602] By default kvm.enable_virt_at_load breaks other virtualization solutions bugzilla-daemon
2024-12-17 15:52 ` bugzilla-daemon
2024-12-17 16:46 ` bugzilla-daemon
2024-12-17 17:50 ` bugzilla-daemon

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