This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] HEADS UP, the game of hardcoded pathes and the results

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] HEADS UP, the game of hardcoded pathes and the results
From: Christoph Egger <Christoph.Egger@xxxxxxx>
Date: Thu, 2 Jul 2009 15:35:02 +0200
Delivery-date: Thu, 02 Jul 2009 06:35:51 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: KMail/1.9.7

As everyone noticed, I have submitted a lot of patches which removed
hardcoded pathes from the whole xen and ioemu trees.

With xen c/s 19873 and ioemu c/s b471f03d51cde3976b6d52179ca2a86d8906a587
(and newer) you have a source tree with all patches in it.

The benefits from the changes:

1. Multiple xen installations in different directories.

   Compile the sources with PREFIX="<your-install-dir>" gmake
   Install xen into the directory.
   *Before* you start xend, make sure to set the
       PATH, LD_LIBRARY_PATH and PYTHONPATH environment variables
   to the correct pathes which start with <your-install-dir>.
   When they are set correct, then
   "which xend" and "which xm" finds xend and xm in the install-dir,
   python should find the modules used by xend and xm and the dynamic
   linker finds the libs like libxc.

   When you don't set PREFIX, then all behaves the old way.

   To switch between different installations, first stop xend and all daemons.
   Change PATH, LD_LIBRARY_PATH and PYTHONPATH to the new pathes
   and then restart xend.

   This is a nice feature to test different developments / bugfixing tasks
   based on same changeset.

2. Easy packaging for distributions.

    When a distributor packages xen, there are always a good amount
    of patches which modify the buildsystem to sqeeze xen into the
    infrastructure. Now that hardcoded pathes are gone, there should only
    a few patches necessary.

3. Guest migration - Cross-Dom0.

    Linux, Solaris and NetBSD, all have their own default install directories.
    Guest migration between them failed because the hvmloader or qemu-dm
    aren't found at the specified location in the guest config file.
    Now you can replace

           kernel = '/usr/lib/xen/boot/hvmloader'
           device_model = '/usr/lib64/xen/bin/qemu-dm'


           kernel = 'hvmloader'
           device_model = 'qemu-dm'

    and xen finds hvmloader and qemu-dm itself in the install directory
    and guest migration works.
    (Actually it always worked by design but never by implementation
     because of this.)
    Note: There are some unfixable details like network bridge interfaces
       having different names.



---to satisfy European Law for business letters:
Advanced Micro Devices GmbH
Karl-Hammerschmidt-Str. 34, 85609 Dornach b. Muenchen
Geschaeftsfuehrer: Thomas M. McCoy, Giuliano Meroni
Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632

Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] HEADS UP, the game of hardcoded pathes and the results, Christoph Egger <=