reopen 488810
found 488810 2008.07.01-102166-2
found 488810 2008.07.01-102166-3~bpo40+2

The init script still tries to load the vmxnet module when it does not exist. 
And unloads pcnet32 in that case. The ifs in the for loop already trigger 
return 0 and therefore the check for the module does not make any difference.

Attached patch fixes this problem. I separated the two checks in one function 
each as I think thats a clean way to do it.

-- 
Martin Steigerwald - team(ix) GmbH - http://www.teamix.de
gpg: 19E3 8D42 896F D004 08AC A0CA 1E10 C593 0399 AE90
--- /etc/init.d/open-vm-tools-2008-07-28	2008-07-18 16:25:27.000000000 +0200
+++ /etc/init.d/open-vm-tools	2008-07-28 16:07:16.000000000 +0200
@@ -29,6 +29,11 @@
 		fi
 	done
 
+	return 1
+}
+
+vmxnet_found ()
+{
 	if [ -n "$(find /lib/modules/$(uname -r)/ -name vmxnet.ko)" ]
 	then
 		return 0
@@ -56,7 +61,7 @@
 		log_progress_msg "vmsync"; modprobe vmsync
 		log_end_msg 0
 
-		if vmxnet_needed
+		if vmxnet_found && vmxnet_needed
 		then
 			modprobe -r pcnet32
 			modprobe vmxnet
@@ -80,7 +85,7 @@
 
 		log_end_msg 0
 
-		if vmxnet_needed
+		if vmxnet_found && vmxnet_needed
 		then
 			modprobe -r vmxnet
 			modprobe pcnet32

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to