open-vm-dkms 2011.12.20-562307-0ubuntu1: open-vm-tools kernel module failed to build [error: implicit declaration of function ‘d_alloc_root’]

Bug #1083719 reported by Carsten Schlote
664
This bug affects 115 people
Affects Status Importance Assigned to Milestone
open-vm-tools (Ubuntu)
Invalid
High
Unassigned
Precise
Won't Fix
High
Unassigned

Bug Description

Package ist really outdated for kernel 3.5.0 (lts backport to precise)

Modules not build: vmxnet vmhgfs vmblock

See build log.

Incomplete workaround:

This bug affects those on a hardware enablement stack only, which is the default option on the 12.04.2 images. If do not need the hardware enablement stack, you may downgrade to the 3.2 kernel supplied with 12.04 and 12.04.1, and then the package should build successfully.

See https://wiki.ubuntu.com/Kernel/LTSEnablementStack of details of the hardware enablement stacks.

ProblemType: Package
DistroRelease: Ubuntu 12.04
Package: open-vm-dkms 2011.12.20-562307-0ubuntu1
ProcVersionSignature: Ubuntu 3.2.0-33.52-generic 3.2.31
Uname: Linux 3.2.0-33-generic x86_64
ApportVersion: 2.0.1-0ubuntu15
Architecture: amd64
DKMSKernelVersion: 3.5.0-18-generic
Date: Tue Nov 27 18:53:46 2012
InstallationMedia: Kubuntu 12.04.1 LTS "Precise Pangolin" - Release amd64 (20120817.2)
MarkForUpload: True
PackageArchitecture: all
PackageVersion: 2011.12.20-562307-0ubuntu1
SourcePackage: open-vm-tools
Title: open-vm-dkms 2011.12.20-562307-0ubuntu1: open-vm-tools kernel module failed to build
UpgradeStatus: No upgrade log present (probably fresh install)

Related branches

Revision history for this message
Carsten Schlote (schlote) wrote :
tags: removed: need-duplicate-check
Changed in open-vm-tools (Ubuntu):
status: New → Confirmed
importance: Undecided → Medium
Revision history for this message
James Pearce (pearce-jj) wrote :

Seems vmware tools have to be installed from the vmware ISO, since the packages.vmware.com binaries are also broken for 12.04LTS with 3.5 kernel.

Revision history for this message
Michael Shi (mklnz) wrote :

No updates to this issue? Still happening on a fresh install of latest 12.04 64-bit LTS server

Revision history for this message
A. Colpitts (adcolpitts) wrote :

Happening on fresh install of 12.04 32-bit Desktop as of 2013-03-07. Sorry if this was already known, I'm new to Ubuntu and launchpad.

James Page (james-page)
Changed in open-vm-tools (Ubuntu):
importance: Medium → High
Robie Basak (racb)
tags: added: hwe-dkms
Revision history for this message
Nate Muench (Mink) (n-muench) wrote :

This is one of the reasons I want to start backporting the newer packages to versions like 12.04. This is part of my Saucy blueprint. But first I want to finish up my work (and proposal) on the Saucy update, as well as submit my developer application.

But we have to be really careful, or we'll break stuff that works.

Revision history for this message
launchpadmember (lpuser1138) wrote :

I can confirm this is happening on my setup as well, but I pretty much have the same setup as the op. 12.02, 64bit and all that so I think my bug report would be pretty much a repeat of what was already posted.

Is this problem fixed, or not a problem in the first place on 12.10 or 13.04 releases? Is there a way to get it to install yet or are there any other ways to work arround this problem?

Thanks.

Revision history for this message
launchpadmember (lpuser1138) wrote :

Oops, sorry I meant to type "12.04, 64bit" and not "12.02, 64bit".

Revision history for this message
Nate Muench (Mink) (n-muench) wrote :

My plan is to backport the Raring packaging. I plan to start working as soon my CVE fix gets approved for raring, as well as my Saucy proposal.

It's gonna be a good amount of work because there's stuff in the Quantal/Raring packages that won't work in Precise. So basically it'll be a little bit of trial and error. I'll probably do a complete backport, and work my way back from there. After everything is where I want it to be, I create the proposal.

Revision history for this message
Robie Basak (racb) wrote :

I believe a DKMS package can be set up for different module sources depending on the kernel version it is being built against (using patches). Does this help you?

description: updated
Revision history for this message
Nate Muench (Mink) (n-muench) wrote :

You mean I have to revert the (/debian) DKMS files from Raring->Precise. Yeah I figured that out.

Revision history for this message
Nate Muench (Mink) (n-muench) wrote :

Looking at my notes I have to add some stuff back to the DKMS files. Make a few changes to debian/control.

My goal is to make this update the first upload as the official maintainer of the package, I just have to send e-mails to sponsors for testimonials. Timetable: a month, testimonials will probably take like a week. I just want to get the 1st Saucy proposal submitted and approved, and that will take a couple of weeks

I hope you understand.

Revision history for this message
Nate Muench (Mink) (n-muench) wrote :

I've started work on the Raring backport. It should give support through 3.7 (3.8 with the patches). There's still stuff to downgrade back to what it looked like for Precise

Revision history for this message
Nate Muench (Mink) (n-muench) wrote :

Update:
The proposed update will be upstream packaging from the Raring upload, with the Precise config. I tried the whole Raring packaging and add/remove stuff, but it was being a pain.

The proposal will be submitted in a week or so (after I test it with the 3.2 Precise kernel) should have compatibility through the 3.7 kernel.

Revision history for this message
Luke Yelavich (themuso) wrote :

Would it not be safer to only backport the relevant code to allow the modules to build against the 3.5 kernel, given that this has to be an SRU? I see your new upstream in the branch you proposed, but I do wonder whether updating to a new upstream release is a bit heavy handed, and I am not sure it will even be approved.

Revision history for this message
Nate Muench (Mink) (n-muench) wrote :

This is what's included in the proposal:
Upstream package: Raring
Debian folder: Precise

I tried using the whole Raring package and downgrading as needed. and didn't work.

I have tested it (with a Precise machine), it does work

Revision history for this message
Nate Muench (Mink) (n-muench) wrote :

Patch for the backport

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "04-quantal-module-backport.patch" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Revision history for this message
Jamie Strandboge (jdstrand) wrote :
Download full text (5.1 KiB)

Thanks for the patch!

Unfortunately, the patch is incomplete for the following reasons:
 - it is simply a patch and does not update the packaging that is suitable for SRU. Please see https://wiki.ubuntu.com/StableReleaseUpdates for details on how to get your patch sponsored
 - performing 'quilt pop -a' then adding 04-quantal-module-backport.patch to debian/patches and updating the debian/patches/series file to apply it, then using 'quilt push -a' does not apply:
Applying patch 04-quantal-module-backport.patch
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/shared/autoconf/file_operations_fsync.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/shared/compat_ethtool.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/shared/compat_fs.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/shared/compat_netdevice.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/shared/vmci_defs.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/shared/vmci_iocontrols.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/shared/vmciKernelAPI1.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/shared/vmci_kernel_if.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmblock/linux/filesystem.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmci/common/vmciCommonInt.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmci/common/vmciContext.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmci/common/vmciContext.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmci/common/vmciDriver.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmci/common/vmciPageChannel.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmci/common/vmciRoute.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmci/linux/driver.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmci/linux/vmci_version.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmci/shared/vmci_page_channel.h
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmhgfs/dentry.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmhgfs/file.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmhgfs/filesystem.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmhgfs/inode.c
(Stripping trailing CRs from patch; use --binary to disable.)
patching file modules/linux/vmhgfs/Makefile.kernel
(Stripping trailing CRs from patch; use --binary to disable.)...

Read more...

Revision history for this message
Nate Muench (Mink) (n-muench) wrote :

Let me just note, this update is on hold for now. I want to get the Saucy package fix submitted first (as soon as I get a new upstream release, or a patch to fix the 3.11 build failures).

summary: open-vm-dkms 2011.12.20-562307-0ubuntu1: open-vm-tools kernel module
- failed to build
+ failed to build [error: implicit declaration of function ‘d_alloc_root’]
Revision history for this message
Thomas Dreibholz (dreibh) wrote :

This problem also affects 12.04 LTS, after installing linux-generic-lts-raring-eol-upgrade for upgrading to a newer kernel.

Revision history for this message
Scott Kroll (skroll-h) wrote :

In saucy, it appears that vmxnet and vmblock are not needed (nor is vmci). The vmxnet3 is distributed with the kernel, and in fact if you use the installer from the latest vmware-tools ISO, it does not build vmxnet since the installer script knows this.

vmblock required a bit of changes to work (kernel file operation struct changed a bit, as well as some calls), but I was able to get it compile and spin up /proc/fs/vmblock. It should be noted that copy/paste of text works without vmblock in the latest kernel. I did not test drag & drop functionality, since I'm running a minimal desktop at the moment.

Finally, using the hgfs module sources from vmware-tools ISO, a single line change allowed me to build the hgfs module and mount shares in 3.11. I did manage to turn this code into a dkms module, and it built just fine.

I should note that even without the modules built by dkms, if I run the vmware-user-suid-wrapper (which spawns vmtoolsd for the user), it does complain about vmblock not being there (unless I use my own built vmblock module), but guest resizing works just fine.

Revision history for this message
Sayantan Das (sayantan13) wrote :

getting error in saucy

Setting up open-vm-dkms (2013.04.16-1098359-0ubuntu1) ...
Loading new open-vm-tools-2013.04.16 DKMS files...
First Installation: checking all kernels...
Building only for 3.11.0-9-generic
Building for architecture x86_64
Building initial module for 3.11.0-9-generic
Error! Build of vmblock.ko failed for: 3.11.0-9-generic (x86_64)
Consult the make.log in the build directory

Luke Faraone (lfaraone)
Changed in open-vm-tools (Ubuntu):
status: Confirmed → Invalid
Changed in open-vm-tools (Ubuntu Precise):
status: New → Confirmed
importance: Undecided → High
Revision history for this message
Alex Bligh (ubuntu-alex-org) wrote :

Just as a note, the new kernels are not only needed on LTS for hardware enablement (and I'm guessing relatively few people need hardware enablement in a VMware guest), but also to run Docker, which I suspect affects more people (me included).

Revision history for this message
Robert C Jennings (rcj) wrote :

open-vm-dkms is unable to build drivers on Precise currently for both the stock 3.2 kernel and the newer HWE (https://wiki.ubuntu.com/Kernel/LTSEnablementStack) kernels.

For those needing an HWE kernel in your Precise installation, the Saucy or newer HWE kernels are supported by a new open-vm-tools-lts-trusty package being introduced in bug #1275656.

Older kernels, which are still supported, will still require a fix in open-vm-dkms as the newer packages mentioned above require a v3.9 or newer kernel.

Revision history for this message
Steve Langasek (vorlon) wrote :

The Precise Pangolin has reached end of life, so this bug will not be fixed for that release

Changed in open-vm-tools (Ubuntu Precise):
status: Confirmed → Won't Fix
To post a comment you must log in.