From: Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
To: Hollis Blanchard <hollisb-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
Christian Ehrhardt
<ehrhardt-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>,
carsteno-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org, "Zhang,
Xiantao" <xiantao.zhang-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Subject: Re: [PATCH]0/2 Patches to furthure split kvm_init
Date: Fri, 30 Nov 2007 22:36:22 +0200 [thread overview]
Message-ID: <47507446.9050904@qumranet.com> (raw)
In-Reply-To: <1196443782.7103.24.camel@basalt>
Hollis Blanchard wrote:
> On Fri, 2007-11-30 at 18:03 +0800, Zhang, Xiantao wrote:
>
>> Avi Kivity wrote:
>>
>>> Zhang, Xiantao wrote:
>>>
>>>>> Ah, I see. It isn't just the alignment. How do you allocate
>>>>> kvm_vcpu, then?
>>>>>
>>>>>
>>>> For evevy vm, we allocate a big chunk of memory for structure
>>>> allocation. For vcpu, it should be always 64k aligned through our
>>>> allocation mechanism. So, we don't care about its aligment issue :)
>>>>
>>>>
>>> I see. Can you explain why you do that? Do you have a special
>>> allocator in your guest-resident vmm module?
>>>
>> Since our VMM module and KVM module will share the kvm and vcpu
>> structure, but VMM module has a different address space, so we have to
>> use fixed allocation method to handle this share. For example, we
>> allocates 1M memory(1M align) for every vm for this purpose in kvm
>> module, and the first 64k is used for first vcpu of guest, and the
>> second 64 for the second vcpu, and same for other vcpus. You can call
>> it as special allocator or other names:) This is determined by IA64
>> virtualization architecture, and hard to workaround it in this
>> host-based vm model. :(
>>
>
> We're doing something similar with very large allocations.
>
> Currently, PowerPC's "vcpu" is actually a copy of the exception
> handlers, plus the real vcpu data structure at a higher offset. Since
> our exception handlers can't span 64KB regions, we allocate a full 64KB
> for each vcpu. I'm not sure what benefit a kmem_cache would have in this
> situation...
>
>
A kmem_cache is useful for specifying alignment, and as a general
bookkeeping system. It's nice to see how many objects you have
allocated in /proc/slabinfo, and it will automatically inform you if you
have a leak when you unload the module.
--
Do not meddle in the internals of kernels, for they are subtle and quick to panic.
-------------------------------------------------------------------------
SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell. From the desktop to the data center, Linux is going
mainstream. Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
next prev parent reply other threads:[~2007-11-30 20:36 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-29 8:16 [PATCH]0/2 Patches to furthure split kvm_init Zhang, Xiantao
[not found] ` <42DFA526FC41B1429CE7279EF83C6BDCA394B2-wq7ZOvIWXbMAbVU2wMM1CrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-11-29 9:59 ` Christian Ehrhardt
[not found] ` <474E8D88.4090508-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2007-11-30 7:43 ` Avi Kivity
[not found] ` <474FBF0D.7020601-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-30 8:27 ` Zhang, Xiantao
[not found] ` <42DFA526FC41B1429CE7279EF83C6BDCA397B9-wq7ZOvIWXbMAbVU2wMM1CrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-11-30 8:36 ` Avi Kivity
[not found] ` <474FCB79.2010008-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-30 8:50 ` Zhang, Xiantao
[not found] ` <42DFA526FC41B1429CE7279EF83C6BDCA397CF-wq7ZOvIWXbMAbVU2wMM1CrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-11-30 9:04 ` Avi Kivity
[not found] ` <474FD21E.8030900-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-30 9:14 ` Zhang, Xiantao
[not found] ` <42DFA526FC41B1429CE7279EF83C6BDCA397EA-wq7ZOvIWXbMAbVU2wMM1CrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-11-30 9:51 ` Avi Kivity
[not found] ` <474FDD34.9020807-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-30 10:03 ` Zhang, Xiantao
[not found] ` <42DFA526FC41B1429CE7279EF83C6BDCA39817-wq7ZOvIWXbMAbVU2wMM1CrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-11-30 17:29 ` Hollis Blanchard
2007-11-30 20:36 ` Avi Kivity [this message]
2007-11-30 9:52 ` Christian Ehrhardt
2007-11-30 11:52 ` Carsten Otte
[not found] ` <474FF970.9060404-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-11-30 11:55 ` Avi Kivity
[not found] ` <474FFA26.6020302-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-30 12:49 ` Carsten Otte
[not found] ` <475006D5.9060504-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2007-11-30 14:50 ` Avi Kivity
[not found] ` <4750234D.6000504-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-30 18:18 ` Hollis Blanchard
2007-11-30 20:34 ` Avi Kivity
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=47507446.9050904@qumranet.com \
--to=avi-atkuwr5tajbwk0htik3j/w@public.gmane.org \
--cc=carsteno-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org \
--cc=ehrhardt-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
--cc=hollisb-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org \
--cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
--cc=xiantao.zhang-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox