vmware-specific-specific 5.5.x and kernel 2.6.32

Posted on December 4th, 2009

You can follow any responses to this entry through the RSS 2.0 feed.

vmware startup

Just a small fix to the previous patch was necessary for this one to work.

Remember that you do need to patch your kernel for this to work properly.

See the README inside the archive.

vmware-update-2.6.32-5.5.9.tar.bz2

Edit: there is a more complete patch here for vmware server 2.0.2, i haven’t tested it.

14 Responses to “vmware-specific-specific 5.5.x and kernel 2.6.32”

  1. Cyber says:

    works like a charm – thanks again! ;)

    >>>Alois

  2. PierP says:

    Works also great with VMware Server 1.0.10 (and 2.6.32.2)! Just what I was looking for! :) Thanx!

  3. big al says:

    fedora core 12 doesn’t have init_task.c in the source-devel so the patch doesn’t work. Is there another kernel-devel distro I should be using?

  4. Ramon de Carvalho Valle says:

    I released a patch for VMware Server 2.0.2 that properly add support for newer versions of the Linux kernel:

    http://risesecurity.org/2010/01/10/vmware-server-2-0-2-update-patch/

  5. Aack says:

    Ok, so I took Ramon’s patch and stole all the good bits to make server 1.0.10 compile for 2.6.31 on fedora 12, however when a guest is started, my system (core2 quad 3.0G) slows to almost stopped. I’ve tried several variations of his fixes vs Kang’s fixes + Ramons init_mm fix, etc. All seem to give the same result. I’m stumped. Any ideas on what to try next welcome. I would prefer to stick with version 1 for the console.

  6. hankang says:

    Updating what I did for 2.6.31 – no need to recompile host kernel!

    #!/bin/sh
    cd /usr/lib/vmware/modules/source
    cp vmmon.tar vmmon.2.6.32.save.tar
    cp vmnet.tar vmnet.2.6.32.save.tar
    tar xf vmmon.tar
    tar xf vmnet.tar
    cat %3C%3C HERE | patch -p1
    diff -Naur ./vmmon-only.old/include/compat_pgtable.h ./vmmon-only/include/compat_pgtable.h
    — ./vmmon-only.old/include/compat_pgtable.h 2007-07-22 07:21:17.000000000 -0400
    +++ ./vmmon-only/include/compat_pgtable.h 2010-02-02 15:54:55.000000000 -0500
    @@ -72,7 +72,7 @@
    #endif

    -#ifdef pgd_offset_k
    +#if (LINUX_VERSION_CODE %3C KERNEL_VERSION(2, 6, 25)) && defined(pgd_offset_k)
    # define compat_pgd_offset_k(mm, address) pgd_offset_k(address)
    #else
    # define compat_pgd_offset_k(mm, address) pgd_offset(mm, address)
    diff -Naur ./vmmon-only.old/include/pgtbl.h ./vmmon-only/include/pgtbl.h
    — ./vmmon-only.old/include/pgtbl.h 2007-07-22 07:21:17.000000000 -0400
    +++ ./vmmon-only/include/pgtbl.h 2010-03-09 06:44:56.000000000 -0500
    @@ -7,7 +7,6 @@
    #include “compat_spinlock.h”
    #include “compat_page.h”

    -
    /*
    *—————————————————————————–
    *
    diff -Naur ./vmmon-only.old/include/vmci_kernel_defs.h ./vmmon-only/include/vmci_kernel_defs.h
    — ./vmmon-only.old/include/vmci_kernel_defs.h 2007-05-02 00:08:21.000000000 -0400
    +++ ./vmmon-only/include/vmci_kernel_defs.h 2010-03-09 06:53:14.000000000 -0500
    @@ -27,6 +27,7 @@
    #include “compat_interrupt.h”
    #include “compat_spinlock.h”
    #include “compat_slab.h”
    +#include “compat_sched.h”
    #endif // linux

    #ifdef __APPLE__
    diff -Naur ./vmmon-only.old/linux/hostif.c ./vmmon-only/linux/hostif.c
    — ./vmmon-only.old/linux/hostif.c 2009-04-21 10:47:54.000000000 -0400
    +++ ./vmmon-only/linux/hostif.c 2010-02-02 15:56:33.000000000 -0500
    @@ -564,6 +564,7 @@
    static void
    DoClearNXBit(VA vaddr)
    {
    +#if LINUX_VERSION_CODE %3C KERNEL_VERSION(2, 6, 25)
    int ptemap;
    pgd_t *pgd = pgd_offset_k(vaddr);
    pmd_t *pmd = pmd_offset_map(pgd, vaddr);
    @@ -574,6 +575,10 @@
    } else {
    pte = pte_offset_map(pmd, vaddr);
    }
    +#else /* >= 2.6.25 */
    + int level;
    + pte_t *pte = lookup_address(vaddr & PAGE_MASK, &level);
    +#endif /* linux version */
    if (pte_val(*pte) & _PAGE_NX) {
    /* pte_val() is not lvalue on x86 PAE */
    #ifdef CONFIG_X86_PAE
    HERE
    cat << HERE | patch -p1
    diff -Naur ./vmnet-only.old/compat_pgtable.h ./vmnet-only/compat_pgtable.h
    — ./vmnet-only.old/compat_pgtable.h 2007-11-28 05:25:06.000000000 -0500
    +++ ./vmnet-only/compat_pgtable.h 2010-02-02 15:58:37.000000000 -0500
    @@ -76,7 +76,7 @@
    #endif

    -#ifdef pgd_offset_k
    +#if (LINUX_VERSION_CODE %3C KERNEL_VERSION(2, 6, 25)) && defined(pgd_offset_k)
    # define compat_pgd_offset_k(mm, address) pgd_offset_k(address)
    #else
    # define compat_pgd_offset_k(mm, address) pgd_offset(mm, address)
    HERE
    tar cf vmmon.tar ./vmmon-only
    tar cf vmnet.tar ./vmnet-only

    NOTE: I replaced %3C with %253C so the tag stripper wouldn’t rip out pieces of the script.

  7. Cyber says:

    @kang: this patch works also for 2.6.33!
    @hankang: altough I had manually alter the diffs (I think the tag-stripper still did his work) it works now also without patching init_mm – great.

    perhaps complete packages can be created? ;)

    kind regards, Alois

  8. Pauel says:

    >>>PierP
    >>>
    >>>Works also great with VMware Server 1.0.10 (and 2.6.32.2)! >>>Just what I was looking for! :) Thanx!

    How to establish this patch?

  9. Technologists Notes » Blog Archive » Virtual satisfaction with VMware Server and kernel 2.6.31 says:

    [...] before Aack’s praised VirtualBox, but Kang still seems to be preparing for kernel 2.6.32 (vmware-specific-specific 5.5.x and kernel 2.6.32), so maybe things will be easy enough by the time Fedora 13 comes [...]

  10. kang says:

    Sorry, I have been using KVM lately ;)
    I might still make a clean 2.6.33 patch for the people (the one that doesnt require kernel changes), if only i could get some spare time :)
    Maybe someone will come up with it before.
    Still, I recommend switching to a newer vmware or virtualbox or kvm these days. kvm is a lot faster, virtualbox is nearly as good as vmware 5.5 and vmware 6.5/7 well.. they’re mostly supported xD

  11. Cyber says:

    hi kang,

    http://cableguy.no-ip.com/Files/vmware-update-2.6.32-33.5.5.9.1.tar.gz

    it’s not in your format, just the two tars packed – init_mm patch is included, works here stable since over a month.

    please do not post this link – i will delete the file soon, i have not enough bandwith … :-/
    but so you do not need to do anything beside posting it here.

    kind regards, Alois

  12. Sandesh says:

    Hi,

    I am getting following error message, any help?

    In file included from /tmp/vmware-config6/vmmon-only/vmcore/moduleloop.c:29:
    /tmp/vmware-config6/vmmon-only/./common/hostif.h:39:7: warning: “WINNT_DDK” is not defined
    LD [M] /tmp/vmware-config6/vmmon-only/vmmon.o
    Building modules, stage 2.
    MODPOST 1 modules
    WARNING: /tmp/vmware-config6/vmmon-only/vmmon.o (.properties): unexpected non-allocatable section.
    Did you forget to use “ax”/”aw” in a .S file?
    Note that for example contains
    section definitions for use in .S files.

    WARNING: “init_mm” [/tmp/vmware-config6/vmmon-only/vmmon.ko] undefined!
    CC /tmp/vmware-config6/vmmon-only/vmmon.mod.o
    LD [M] /tmp/vmware-config6/vmmon-only/vmmon.ko
    make[1]: Leaving directory `/usr/src/linux-headers-2.6.32-22-generic’
    cp -f vmmon.ko ./../vmmon.o
    make: Leaving directory `/tmp/vmware-config6/vmmon-only’
    Unable to make a vmmon module that can be loaded in the running kernel:
    insmod: error inserting ‘/tmp/vmware-config6/vmmon.o’: -1 Unknown symbol in module
    There is probably a slight difference in the kernel configuration between the
    set of C header files you specified and your running kernel. You may want to
    rebuild a kernel based on that directory, or specify another directory.

    Best Regards.
    Sandesh

  13. Ben Lindstrom says:

    Same here. Unknown symbol in module error. *frown* Bad omen for SLED11 SP1 and VMWare Server 1.0.10

  14. Technologists Notes » Blog Archive » Fedora & VMWare “right side up” says:

    [...] advice thread (vmware-specific-specific 5.5.x and kernel 2.6.32) that originally made me optimistic did not continue to offer encouragement. Anticipating Fedora 13 [...]

Leave a Reply