Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Nov 2010 10:49:55 GMT
From:      Fumiyuki Shimizu/ =?iso-2022-jp?B?GyRCQDY/ZRsoQiAbJEJKODlUGyhC?= <fumifumi@abacustech.jp>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/152292: [PATCH] emulators/open-vm-tools: vmware-user-suid-wrapper failes to load vmblock.ko
Message-ID:  <201011161049.oAGAnsUe065546@www.freebsd.org>
Resent-Message-ID: <201011161050.oAGAo87o099114@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         152292
>Category:       ports
>Synopsis:       [PATCH] emulators/open-vm-tools: vmware-user-suid-wrapper failes to load vmblock.ko
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Nov 16 10:50:08 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Fumiyuki Shimizu/ =?iso-2022-jp?B?GyRCQDY/ZRsoQiAbJEJKODlUGyhC?=
>Release:        8.1-RELEASE-p1
>Organization:
Abacus Technologies, Inc.
>Environment:
FreeBSD 8.1-RELEASE FreeBSD 8.1-RELEASE #0: Mon Jul 19 02:55:53 UTC 2010     root@almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  i386
as a guest OS.
>Description:
Helpful PR ports/151872 has fixed a issue of pkg-config,
however it does not contain the patch for the main symptom of PR ports/150913.
I have recreated a simple patch for the new 313025 version.

-----
vmware-user-suid-wrapper unloads vmblock.ko successfully,
then fails to reload it, since kernel modules are not installed
on the default path of kldload by this port, politely.
Clipboard sharing does not work.

>How-To-Repeat:
> sudo chmod u=xs,go=x /usr/local/bin/vmware-user-suid-wrapper

> kldstat -m vmblock
Id Refs Name
458 1 vmblock

> /usr/local/bin/vmware-user-suid-wrapper
vmware-user: failed to load vmblock: No such file or directory
vmware-user: failed to start vmblock

> kldstat -m vmblock
kldstat: can't find module vmblock: No such file or directory.

>Fix:
A patch is attached.
Changing kern.module_path with root privilege may also work,
but it is a global setting.

Thank you for everything,


Patch attached with submission follows:

diff -auwprN emulators/open-vm-tools/files/patch-wrapper-Makefile.am emulators/open-vm-tools.suid-wrapper/files/patch-wrapper-Makefile.am
--- emulators/open-vm-tools/files/patch-wrapper-Makefile.am	1970-01-01 09:00:00.000000000 +0900
+++ emulators/open-vm-tools.suid-wrapper/files/patch-wrapper-Makefile.am	2010-11-16 18:06:18.000000000 +0900
@@ -0,0 +1,11 @@
+--- vmware-user-suid-wrapper/Makefile.am.orig	2010-10-20 05:19:54.000000000 +0900
++++ vmware-user-suid-wrapper/Makefile.am	2010-11-16 17:52:55.000000000 +0900
+@@ -19,6 +19,8 @@
+ 
+ AM_CPPFLAGS =
+ AM_CPPFLAGS += -DVMTOOLSD_PATH=\"$(bindir)/vmtoolsd\"
++# See post-install on Makefile of ports.
++AM_CPPFLAGS += -DVMWARE_KMOD_DIR=\"$(prefix)/lib/vmware-tools/modules/drivers\"
+ 
+ vmware_user_suid_wrapper_SOURCES =
+ vmware_user_suid_wrapper_SOURCES += main.c
diff -auwprN emulators/open-vm-tools/files/patch-wrapper-Makefile.in emulators/open-vm-tools.suid-wrapper/files/patch-wrapper-Makefile.in
--- emulators/open-vm-tools/files/patch-wrapper-Makefile.in	1970-01-01 09:00:00.000000000 +0900
+++ emulators/open-vm-tools.suid-wrapper/files/patch-wrapper-Makefile.in	2010-11-16 18:06:18.000000000 +0900
@@ -0,0 +1,11 @@
+--- vmware-user-suid-wrapper/Makefile.in.orig	2010-10-20 05:20:08.000000000 +0900
++++ vmware-user-suid-wrapper/Makefile.in	2010-11-16 17:52:55.000000000 +0900
+@@ -301,7 +301,7 @@
+ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+-AM_CPPFLAGS = -DVMTOOLSD_PATH=\"$(bindir)/vmtoolsd\"
++AM_CPPFLAGS = -DVMTOOLSD_PATH=\"$(bindir)/vmtoolsd\" -DVMWARE_KMOD_DIR=\"$(prefix)/lib/vmware-tools/modules/drivers\"
+ vmware_user_suid_wrapper_SOURCES = main.c wrapper-@TARGET_OS@.c
+ vmware_user_suid_wrapper_LDADD = ../lib/vmSignal/libVmSignal.la
+ desktopfile = vmware-user.desktop
diff -auwprN emulators/open-vm-tools/files/patch-wrapper-wrapper-freebsd.c emulators/open-vm-tools.suid-wrapper/files/patch-wrapper-wrapper-freebsd.c
--- emulators/open-vm-tools/files/patch-wrapper-wrapper-freebsd.c	1970-01-01 09:00:00.000000000 +0900
+++ emulators/open-vm-tools.suid-wrapper/files/patch-wrapper-wrapper-freebsd.c	2010-11-16 18:06:18.000000000 +0900
@@ -0,0 +1,11 @@
+--- vmware-user-suid-wrapper/wrapper-freebsd.c.orig	2010-10-20 05:19:54.000000000 +0900
++++ vmware-user-suid-wrapper/wrapper-freebsd.c	2010-11-16 17:52:55.000000000 +0900
+@@ -116,7 +116,7 @@
+    /*
+     * Kldload(2) will handle module search paths for us.
+     */
+-   if (kldload(MODULE_NAME) == -1) {
++   if (kldload(VMWARE_KMOD_DIR "/" MODULE_NAME ".ko") == -1) {
+       Error("failed to load vmblock: %s\n", strerror(errno));
+       return FALSE;
+    }


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201011161049.oAGAnsUe065546>