'KVM Chainsaw' Expected to Hit Linux 7.3 For Dealing with 'God Data Structure' (phoronix.com) 10
An anonymous reader shared this report from Phoronix:
A patch series that appears destined for the upcoming Linux 7.3 merge window is what's dubbed the "KVM Chainsaw" as a major code clean-up in dealing with the kvm_mmu "god data structure". Red Hat engineer and KVM maintainer Paolo Bonzini has merged the kvm-chainsaw branch to KVM's "next" Git branch. With this KVM Chainsaw work now in the next branch, it should be submitted for the upcoming Linux 7.3 cycle.
The KVM Chainsaw work deals with the kvm_mmu structure being overloaded with multiple uses and splits it down into three parts for better handling current KVM usage. Paolo explains of KVM Chainsaw with the merge to the KVM.git next branch:
"The kvm_mmu is a "god data structure" that includes three different tasks: describing the guest page table's format, walking the guest page tables and building the page tables. This means that the (already poorly named) nested_mmu is only used in part, since it has no page tables to construct. Furthermore, some parts are reused across guest and host page tables (such as the reserved bits detector) but others are not; for example permission_fault is replaced by simplified code such as is_executable_pte().
This series cleans this up by splitting kvm_mmu in three parts...
The KVM Chainsaw work deals with the kvm_mmu structure being overloaded with multiple uses and splits it down into three parts for better handling current KVM usage. Paolo explains of KVM Chainsaw with the merge to the KVM.git next branch:
"The kvm_mmu is a "god data structure" that includes three different tasks: describing the guest page table's format, walking the guest page tables and building the page tables. This means that the (already poorly named) nested_mmu is only used in part, since it has no page tables to construct. Furthermore, some parts are reused across guest and host page tables (such as the reserved bits detector) but others are not; for example permission_fault is replaced by simplified code such as is_executable_pte().
This series cleans this up by splitting kvm_mmu in three parts...
But I thought... (Score:2)
Re: (Score:2)
Seriously, pick a new acronym. Same goes for DRM.
Re: (Score:2)
I think the problem is that too many people picking acronyms know a lot less about tech than they think they do and fail to do minimal research. Kind of a small Dunning-Kruger effect.
I see the words.... (Score:2)
...but I'm unclear on how these changes would impact (or not) my life as a daily user of a linux desktop and occasional server. Not everyone is a kernel developer.
Re: (Score:3)
KVM is kernel virtual machine, and it is used to allow Linux to act as hypervisor.
Presumably as a desktop user and occasional server maintainer this does not affect you at all. Usually they work pretty hard to not break user land, but I imagine things like qemu or android studio that couple fairly tightly to KVM behavior might see performance gains or something if you update to versions aware of the platform changes.
Re: (Score:2)
It also may bring about additional functionality as time goes by, which can be useful. kvm is one of the few best of breed apps there is for what it does, and has an excellent reputation.
Re: (Score:2)
This isn't going to affect you at all. Statistically nobody not working on KVM cares about this. It's almost exclusively just going to make KVM development easier. There is no reason why this should have hit the front page.
Re: (Score:2)
Exactly.
Re: (Score:2)
It is essentially a detail-level optimization. No idea why it even gets reported here. Maybe Red Hat paid to have their name up there.
Why is this newsworthy? (Score:2)
Nothing in the summary really conveys why this raises to the level of news. Digging in it doesn't really have consequences for the users in the short term.
Plausibly a good change, but a change among countless other good changes that pass without notice.
Re: (Score:2)
I completely agree. Maybe Red Hat paid to have their name up there. Or maybe it is a slow-news day.