public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Wolfgang Mauerer <wolfgang.mauerer@siemens.com>
To: Dietmar Maurer <dietmar@proxmox.com>
Cc: "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"Kiszka, Jan" <jan.kiszka@siemens.com>
Subject: Re: [PATCH 2/2] kvm-kmod: Document the build process
Date: Wed, 21 Oct 2009 16:20:42 +0200	[thread overview]
Message-ID: <4ADF18BA.9090807@siemens.com> (raw)
In-Reply-To: <90D306BE6EBC8D428A824FBBA7A3113D0127975B06@ronja.maurer-it.com>

[-- Attachment #1: Type: text/plain, Size: 1738 bytes --]

Hio,

Dietmar Maurer wrote:
>> +  Before the kvm module can be built, the linux submodule must be
>> initialised
>> +  and populated. The required sequence of commands is
>> +
>> +  git submodule init
>> +  git submodule update
>> +  ./configure
>> +  make sync
>> +  make
>> +
>> +  Notice that you can also specify an existing Linux tree for the
>> +  synchronisation stage by using
>> +
>> +  make sync LINUX=/path/to/tree
> 
> I always get errors when i try to sync (with our Linux-2.6.24 tree)
> 
> ./configure --kerneldir=${TOP}/linux-2.6.24-openvz
> make sync LINUX=${TOP}/linux-2.6.24-openvz
> 
> make[1]: Entering directory `/a/dir/kvm-kmod-2.6.30.1'
> ./sync kvm-kmod-2.6.30.1
> Traceback (most recent call last):
>   File "./sync", line 210, in <module>
>     header_sync(arch)
>   File "./sync", line 181, in header_sync
>     hack(T, 'x86', 'include/linux/kvm.h')
>   File "./sync", line 127, in hack
>     _hack(T + '/' + file, arch)
>   File "./sync", line 118, in _hack
>     data = file(fname).read()
> IOError: [Errno 2] No such file or directory: 'header/include/linux/kvm.h'
> make[1]: *** [sync] Error 1
> 
> Any idea whats wrong?

Do you have a checked out Linux tree in linux-2.6/?
Currently, the linux-2.6 submodule seems to reference
a commit that is not present in the standard kvm
repo, so I assume that git submodule update
has failed for you. For now, you can fix this by
using git checkout in linux-2.6/

Btw.: Wrt. git sync, I've also updated to README
a bit to the two different kernel trees that come into
play. Comments?

Jan: I think the bogous reference is a leftover
from the tree that you've added as submodule; after
my patch to use Avi's tree, the information might be
out of sync.

Best, Wolfgang

[-- Attachment #2: readme.diff --]
[-- Type: text/x-patch, Size: 1742 bytes --]

diff --git a/README b/README
index 40a72d3..34cc51a 100644
--- a/README
+++ b/README
@@ -1,16 +1,21 @@
 Building the KVM kernel module is performed differently depending on whether
 you are working from a clone of the git repository or from a source release.
+Notice that two kernels are involved: One from which the KVM sources
+are taken (kernel A), and one for which the module is built (kernel B). 
+For out-of-tree module builds, it is well possible that kernel A is more
+recent than kernel B.
 
 - To build from a release, simply use ./configure (possibly with any
   arguments that are required for your setup, see ./configure --help)
-  and make.
+  and make. The kernel specified with --kerneldir refers to kernel B,
+  that is, the kernel for which the module is built.
 
 - Building from a cloned git repository requires a kernel tree with the main
-  kvm sources that is included as a submodule in the linux-2.6/ directory.  By
-  default, the KVM development tree on git.kernel.org is used, but you can
-  change this setting in .gitmodules
+  kvm sources (kernel A) that is included as a submodule in the linux-2.6/
+  directory.  By default, the KVM development tree on git.kernel.org is used,
+  but you can change this setting in .gitmodules
 
-  Before the kvm module can be built, the linux submodule must be initialised 
+  Before the kvm module can be built, the linux submodule must be initialised
   and populated. The required sequence of commands is
 
   git submodule init
@@ -24,3 +29,5 @@ you are working from a clone of the git repository or from a source release.
 
   make sync LINUX=/path/to/tree
 
+  The synchronisation stage refers to kernel A, that is, the kernel
+  from which the KVM sources are taken.

  reply	other threads:[~2009-10-21 14:18 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-20 12:11 [PATCH 1/2] kvm-kmod: Use the main development tree of kvm as Linux submodule wolfgang.mauerer
2009-10-20 12:11 ` [PATCH 2/2] kvm-kmod: Document the build process wolfgang.mauerer
2009-10-21 10:43   ` Dietmar Maurer
2009-10-21 14:20     ` Wolfgang Mauerer [this message]
2009-10-22 20:54       ` Dietmar Maurer
2009-10-23  7:50         ` Jan Kiszka
2009-11-12 17:35           ` [PATCH] kvm-kmod: Document the build process (take 2) Wolfgang Mauerer
2009-11-14  9:08             ` Jan Kiszka
2009-10-22 15:15 ` [PATCH 1/2] kvm-kmod: Use the main development tree of kvm as Linux submodule Avi Kivity
2009-10-22 16:13   ` Wolfgang Mauerer
2009-10-22 16:17     ` Avi Kivity
2009-10-22 16:25       ` Wolfgang Mauerer
2009-10-22 16:35         ` 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=4ADF18BA.9090807@siemens.com \
    --to=wolfgang.mauerer@siemens.com \
    --cc=dietmar@proxmox.com \
    --cc=jan.kiszka@siemens.com \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox