All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Tokarev <mjt@tls.msk.ru>
To: dbareiro@gmx.net, KVM General <kvm@vger.kernel.org>
Subject: Re: KSM with Debian GNU/Linux
Date: Mon, 09 Aug 2010 19:28:23 +0400	[thread overview]
Message-ID: <4C601E97.3080102@msgid.tls.msk.ru> (raw)
In-Reply-To: <20100809142732.GC1771@defiant.freesoftware>

09.08.2010 18:27, Daniel Bareiro wrote:
> On Monday, 09 August 2010 14:27:12 +0400,
> Michael Tokarev wrote:
>
>>> I have understood that in addition to support from the kernel and
>>> qemu-kvm, there must be support in libc. So in testing I was doing on
>>> Lenny, it did not work using libc from Debian repositories. Now that
>>> squeeze is frozen, anyone knows if it will support KSM?
>
>> KSM is working in qemu-kvm packages in bpo, for quite long
>> time already.  It has nothing to do with libc, and now it
>> does not even require recent-enough kernel headers to compile.
>> What's needed is recent-enough kernel that actually implements
>> the feature.  The kernel in Lenny does not KSM support, but
>> the one in bpo has.  Also note that Lenny's kernel is too old
>> for kvm.
>
> I'm using Linux 2.6.32.3 compiled by myself with the kernel.org source
> code with support for KSM:
>
> # cat /boot/config-2.6.32.3-dgb | grep KSM
> CONFIG_KSM=y
>
> I'm also using qemu-kvm 0.12.1.2 compiled by myself with the source code
> of SourceForge.

Note that this one has numerous bugs, some of which involves
data corruption.  JFYI.

> These are the checks that I was doing in the VMHost:
>
> # ll /sys/kernel/mm/ksm/
> total 0
> -r--r--r-- 1 root root 4096 ago  9 06:28 full_scans
> -rw-r--r-- 1 root root 4096 ago  9 06:28 max_kernel_pages
> -r--r--r-- 1 root root 4096 ago  9 06:28 pages_shared
> -r--r--r-- 1 root root 4096 ago  9 06:28 pages_sharing
> -rw-r--r-- 1 root root 4096 ago  9 06:28 pages_to_scan
> -r--r--r-- 1 root root 4096 ago  9 06:28 pages_unshared
> -r--r--r-- 1 root root 4096 ago  9 06:28 pages_volatile
> -rw-r--r-- 1 root root 4096 ago  9 06:27 run
> -rw-r--r-- 1 root root 4096 ago  9 06:28 sleep_millisecs
>
>
> # cat /sys/kernel/mm/ksm/max_kernel_pages
> 253500
>
> But KSM seems not work:
>
> # cat /sys/kernel/mm/ksm/pages_sharing
> 0

Did you actually enable it in the kernel?  Did you read
the ksm docs shipped with the kernel?

> Should I have some additional consideration when compiling qemu-kvm?

Please note what Nikola Ciprich said.  If you don't have
kernel headers that defines MADV_MERGEABLE, you'll have
to define it when compiling kvm.

Note again that debian qemu-kvm package (you're asking
about debian after all) includes support for KSM.  It
also includes a small patch to #define that symbol.

/mjt

  reply	other threads:[~2010-08-09 15:28 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-09 10:16 KSM with Debian GNU/Linux Daniel Bareiro
2010-08-09 10:27 ` Michael Tokarev
2010-08-09 11:00   ` Nikola Ciprich
2010-08-09 11:30     ` Michael Tokarev
2010-08-09 14:39     ` Daniel Bareiro
2010-08-09 14:27   ` Daniel Bareiro
2010-08-09 15:28     ` Michael Tokarev [this message]
2010-08-13  1:05       ` Daniel Bareiro
2010-08-16  0:49         ` Daniel Bareiro

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=4C601E97.3080102@msgid.tls.msk.ru \
    --to=mjt@tls.msk.ru \
    --cc=dbareiro@gmx.net \
    --cc=kvm@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.