lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4BA7D8C6.4010103@redhat.com>
Date:	Mon, 22 Mar 2010 22:53:26 +0200
From:	Avi Kivity <avi@...hat.com>
To:	Ingo Molnar <mingo@...e.hu>
CC:	Anthony Liguori <anthony@...emonkey.ws>,
	Pekka Enberg <penberg@...helsinki.fi>,
	"Zhang, Yanmin" <yanmin_zhang@...ux.intel.com>,
	Peter Zijlstra <a.p.zijlstra@...llo.nl>,
	Sheng Yang <sheng@...ux.intel.com>,
	linux-kernel@...r.kernel.org, kvm@...r.kernel.org,
	Marcelo Tosatti <mtosatti@...hat.com>,
	oerg Roedel <joro@...tes.org>,
	Jes Sorensen <Jes.Sorensen@...hat.com>,
	Gleb Natapov <gleb@...hat.com>,
	Zachary Amsden <zamsden@...hat.com>, ziteng.huang@...el.com,
	Arnaldo Carvalho de Melo <acme@...hat.com>,
	Fr?d?ric Weisbecker <fweisbec@...il.com>,
	Gregory Haskins <ghaskins@...ell.com>
Subject: Re: [RFC] Unify KVM kernel-space and user-space code into a single
 project

On 03/22/2010 10:46 PM, Ingo Molnar wrote:
>
>>> You should instead read the long list of disadvantages above, invert them
>>> and list then as advantages for the kernel-based vcpu enumeration
>>> solution, apply common sense and go admit to yourself that indeed in this
>>> situation a kernel provided enumeration of vcpu contexts is the most
>>> robust solution.
>>>        
>> Having qemu enumerate guests one way or another is not a good idea IMO since
>> it is focused on one guest and doesn't have a system-wide entity.  A
>> userspace system-wide entity will work just as well as kernel
>> implementation, without its disadvantages.
>>      
> A system-wide user-space entity only solves one problem out of the 4 i listed,
> still leaving the other 3:
>
>   - Those special files can get corrupted, mis-setup, get out of sync, or can
>     be hard to discover.
>    

That's a hard requirement anyway.  If it happens, we get massive data 
loss.  Way more troubling than 'perf kvm top' doesn't work.  So consider 
it fulfilled.

>   - Apps might start KVM vcpu instances without adhering to the
>     system-wide access method.
>    

Then you don't get their symbol tables.  That happens anyway if the 
symbol server is not installed, not running, handing out fake data.  So 
we have to deal with that anyway.

>   - There is no guarantee for the system-wide process to reply to a request -
>     while the kernel can always guarantee an enumeration result. I dont want
>     'perf kvm' to hang or misbehave just because the system-wide entity has
>     hung.
>    

When you press a key there is no guarantee no component along the way 
will time out.

> Really, i think i have to give up and not try to convince you guys about this
> anymore - i dont think you are arguing constructively anymore and i dont want
> yet another pointless flamewar about this.
>
> Please consider 'perf kvm' scrapped indefinitely, due to lack of robust KVM
> instrumentation features: due to lack of robust+universal vcpu/guest
> enumeration and due to lack of robust+universal symbol access on the KVM side.
> It was a really promising feature IMO and i invested two days of arguments
> into it trying to find a workable solution, but it was not to be.
>    

I am not going to push libvirt or a subset thereof into the kernel for 
'perf kvm'.

-- 
Do not meddle in the internals of kernels, for they are subtle and quick to panic.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ