Please do not run udevadm trigger without parameters
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
open-vm-tools (Debian) |
Fix Released
|
Unknown
|
|||
open-vm-tools (Ubuntu) |
Fix Released
|
High
|
Bryce Harrington | ||
Bionic |
Fix Released
|
High
|
Bryce Harrington | ||
Focal |
Fix Released
|
High
|
Bryce Harrington | ||
Impish |
Won't Fix
|
High
|
Unassigned | ||
Jammy |
Fix Released
|
High
|
Bryce Harrington | ||
Kinetic |
Fix Released
|
High
|
Bryce Harrington |
Bug Description
[Impact]
open-vm-tools 2:11.3.5-1ubuntu4 (on Ubuntu 22.04) calls "udevadm trigger" in it's postinst script (line 8). Since no options or devpaths/
[Test Case]
You can see the list of triggered devices by running "udevadm trigger --verbose --dry-run". Without the fix, this displays a large number of irrelevant devices; with the fix a narrower set is shown.
[Regression Potential]
This trigger is performed during the configure step in postinst, so new misbehaviors seen during installation or upgrade might be worth analyzing as regressions. Device-specific variances in behavior after installation may also be worth examination.
This change has been accepted to Debian, and has been tested during kinetic's development period for some weeks without reports of problems. We also plan to keep the jammy MRE with this fix in -proposed for some extra time just to be extra safe.
[Original Report]
Please run "udevadm trigger" only for the relevant subsystems/
```
udevadm trigger --type=devices --subsystem-
```
This was fixed in Debian's 2:12.0.0-1 release by the following delta:
diff --git a/debian/
index f181ab21..aa224fb3 100644
--- a/debian/
+++ b/debian/
@@ -5,7 +5,7 @@ set -e
case "${1}" in
configure)
if which udevadm 1>/dev/null; then
- udevadm trigger || true
+ udevadm trigger --type=devices --subsystem-
fi
;;
Related branches
- git-ubuntu bot: Approve
- Christian Ehrhardt (community): Approve
- Canonical Server Reporter: Pending requested
-
Diff: 25331 lines (+16184/-3226) (has conflicts)182 files modifiedREADME.md (+75/-0)
ReleaseNotes.md (+40/-56)
debian/changelog (+81/-0)
debian/control (+39/-5)
debian/copyright (+3/-1)
debian/open-vm-tools-containerinfo.postinst (+42/-0)
debian/open-vm-tools-containerinfo.postrm (+43/-0)
debian/open-vm-tools-desktop.lintian-overrides (+1/-1)
debian/open-vm-tools-salt-minion.postinst (+42/-0)
debian/open-vm-tools-salt-minion.postrm (+43/-0)
debian/open-vm-tools.postinst (+1/-1)
debian/patches/series (+3/-0)
debian/patches/use-debian-pam (+1/-1)
debian/rules (+11/-0)
debian/upstream/metadata (+1/-0)
dev/null (+0/-785)
open-vm-tools/AUTHORS (+9/-0)
open-vm-tools/ChangeLog (+2347/-65)
open-vm-tools/configure.ac (+248/-14)
open-vm-tools/lib/appUtil/appUtilX11.c (+5/-2)
open-vm-tools/lib/asyncsocket/asyncSocketInterface.c (+3/-4)
open-vm-tools/lib/asyncsocket/asyncSocketVTable.h (+3/-3)
open-vm-tools/lib/asyncsocket/asyncsocket.c (+38/-37)
open-vm-tools/lib/file/fileIO.c (+107/-0)
open-vm-tools/lib/file/fileIOPosix.c (+16/-2)
open-vm-tools/lib/file/fileInt.h (+2/-2)
open-vm-tools/lib/file/fileLockPrimitive.c (+15/-20)
open-vm-tools/lib/file/filePosix.c (+4/-4)
open-vm-tools/lib/glibUtils/fileLogger.c (+2/-0)
open-vm-tools/lib/globalConfig/globalConfig.c (+5/-2)
open-vm-tools/lib/hgfs/cpName.c (+10/-3)
open-vm-tools/lib/hgfs/hgfsEscape.c (+1/-2)
open-vm-tools/lib/hgfs/hgfsUtil.c (+19/-23)
open-vm-tools/lib/include/asyncsocket.h (+23/-2)
open-vm-tools/lib/include/backdoor_def.h (+5/-4)
open-vm-tools/lib/include/buildNumber.h (+6/-6)
open-vm-tools/lib/include/codeset.h (+1/-9)
open-vm-tools/lib/include/conf.h (+114/-1)
open-vm-tools/lib/include/config.h (+6/-2)
open-vm-tools/lib/include/dbllnklst.h (+2/-1)
open-vm-tools/lib/include/dynbuf.h (+18/-1)
open-vm-tools/lib/include/fileIO.h (+9/-0)
open-vm-tools/lib/include/ghIntegrationCommon.h (+32/-2)
open-vm-tools/lib/include/glibUtils.h (+2/-1)
open-vm-tools/lib/include/guest_msg_def.h (+6/-2)
open-vm-tools/lib/include/guest_os.h (+157/-101)
open-vm-tools/lib/include/guest_os_tables.h (+49/-22)
open-vm-tools/lib/include/hostinfo.h (+12/-2)
open-vm-tools/lib/include/includeCheck.h (+7/-6)
open-vm-tools/lib/include/log.h (+127/-131)
open-vm-tools/lib/include/loglevel_userVars.h (+5/-2)
open-vm-tools/lib/include/poll.h (+2/-1)
open-vm-tools/lib/include/sha1.h (+9/-20)
open-vm-tools/lib/include/sigPosixRegs.h (+3/-1)
open-vm-tools/lib/include/sigc++2to3.h (+143/-0)
open-vm-tools/lib/include/strutil.h (+2/-1)
open-vm-tools/lib/include/vm_assert.h (+21/-16)
open-vm-tools/lib/include/vm_atomic.h (+87/-39)
open-vm-tools/lib/include/vm_atomic_arm64_begin.h (+162/-50)
open-vm-tools/lib/include/vm_atomic_arm64_end.h (+7/-1)
open-vm-tools/lib/include/vm_basic_asm.h (+119/-32)
open-vm-tools/lib/include/vm_basic_asm_arm64.h (+69/-18)
open-vm-tools/lib/include/vm_basic_asm_x86_64.h (+32/-1)
open-vm-tools/lib/include/vm_basic_asm_x86_common.h (+64/-27)
open-vm-tools/lib/include/vm_basic_defs.h (+72/-22)
open-vm-tools/lib/include/vm_basic_types.h (+7/-17)
open-vm-tools/lib/include/vm_device_version.h (+14/-25)
open-vm-tools/lib/include/vm_legal.h (+2/-2)
open-vm-tools/lib/include/vm_product.h (+4/-1)
open-vm-tools/lib/include/vm_product_versions.h (+148/-44)
open-vm-tools/lib/include/vm_tools_version.h (+31/-4)
open-vm-tools/lib/include/vm_valgrind.h (+18/-6)
open-vm-tools/lib/include/vm_version.h (+38/-3)
open-vm-tools/lib/include/vmci_defs.h (+65/-12)
open-vm-tools/lib/include/vmware/guestrpc/containerInfo.h (+58/-0)
open-vm-tools/lib/include/vmware/guestrpc/serviceDiscovery.h (+3/-1)
open-vm-tools/lib/include/vmware/guestrpc/timesync.h (+4/-2)
open-vm-tools/lib/include/vmware/tools/log.h (+7/-0)
open-vm-tools/lib/include/vthreadBase.h (+1/-5)
open-vm-tools/lib/include/x86_basic_defs.h (+3/-0)
open-vm-tools/lib/include/x86cpuid.h (+159/-123)
open-vm-tools/lib/lock/ulInt.h (+3/-3)
open-vm-tools/lib/lock/ulStats.c (+6/-6)
open-vm-tools/lib/misc/Makefile.am (+2/-1)
open-vm-tools/lib/misc/codesetOld.c (+5/-5)
open-vm-tools/lib/misc/dynbuf.c (+70/-7)
open-vm-tools/lib/misc/hostinfo.c (+39/-1)
open-vm-tools/lib/misc/hostinfoHV.c (+1/-32)
open-vm-tools/lib/misc/hostinfoInt.h (+2/-2)
open-vm-tools/lib/misc/hostinfoPosix.c (+158/-107)
open-vm-tools/lib/misc/jsonUTF8.c (+483/-0)
open-vm-tools/lib/misc/strutil.c (+43/-1)
open-vm-tools/lib/misc/timeutil.c (+15/-19)
open-vm-tools/lib/misc/util_misc.c (+32/-32)
open-vm-tools/lib/poll/poll.c (+29/-4)
open-vm-tools/lib/procMgr/procMgrPosix.c (+2/-2)
open-vm-tools/lib/rpcVmx/rpcvmx.c (+3/-2)
open-vm-tools/libDeployPkg/linuxDeployment.c (+24/-6)
open-vm-tools/libvmtools/vmtoolsConfig.c (+3/-1)
open-vm-tools/libvmtools/vmtoolsLog.c (+132/-7)
open-vm-tools/modules/shared/vmmemctl/dbllnklst.h (+2/-1)
open-vm-tools/modules/shared/vmmemctl/kernelStubs.h (+16/-5)
open-vm-tools/modules/shared/vmxnet/eth_public.h (+1/-0)
open-vm-tools/modules/shared/vmxnet/vmnet_def.h (+3/-1)
open-vm-tools/modules/shared/vmxnet/vmxnet3_defs.h (+28/-19)
open-vm-tools/modules/solaris/vmhgfs/kernelStubs.h (+16/-5)
open-vm-tools/namespacetool/namespacetool.c (+2/-2)
open-vm-tools/scripts/common/vm-support (+6/-28)
open-vm-tools/services/plugins/Makefile.am (+5/-1)
open-vm-tools/services/plugins/appInfo/appInfo.c (+43/-52)
open-vm-tools/services/plugins/componentMgr/COPYING (+502/-0)
open-vm-tools/services/plugins/componentMgr/Makefile.am (+46/-0)
open-vm-tools/services/plugins/componentMgr/componentMgr.c (+414/-0)
open-vm-tools/services/plugins/componentMgr/componentMgrInstallAction.c (+1216/-0)
open-vm-tools/services/plugins/componentMgr/componentMgrInstallManager.c (+497/-0)
open-vm-tools/services/plugins/componentMgr/componentMgrPlugin.h (+370/-0)
open-vm-tools/services/plugins/componentMgr/componentMgrUtil.c (+216/-0)
open-vm-tools/services/plugins/componentMgr/svtminion.sh (+2134/-0)
open-vm-tools/services/plugins/containerInfo/COPYING (+502/-0)
open-vm-tools/services/plugins/containerInfo/Makefile.am (+98/-0)
open-vm-tools/services/plugins/containerInfo/containerInfo.c (+1016/-0)
open-vm-tools/services/plugins/containerInfo/containerInfoInt.h (+56/-0)
open-vm-tools/services/plugins/containerInfo/containerInfo_docker.c (+503/-0)
open-vm-tools/services/plugins/containerInfo/containerInfo_grpc.cc (+156/-0)
open-vm-tools/services/plugins/deployPkg/deployPkg.c (+26/-17)
open-vm-tools/services/plugins/deployPkg/deployPkgPlugin.c (+52/-11)
open-vm-tools/services/plugins/dndcp/dnd/copyPasteRpc.hh (+3/-2)
open-vm-tools/services/plugins/dndcp/dnd/dndRpc.hh (+3/-2)
open-vm-tools/services/plugins/dndcp/dnd/fileTransferRpc.hh (+3/-2)
open-vm-tools/services/plugins/dndcp/dndGuest/rpcV3Util.cpp (+8/-2)
open-vm-tools/services/plugins/dndcp/dndGuestBase/guestDnD.hh (+2/-2)
open-vm-tools/services/plugins/dndcp/stringxx/string.hh (+15/-1)
open-vm-tools/services/plugins/dndcp/stringxx/ubstr_t.hh (+11/-1)
open-vm-tools/services/plugins/guestInfo/guestInfoServer.c (+19/-20)
open-vm-tools/services/plugins/guestStore/guestStorePlugin.c (+3/-2)
open-vm-tools/services/plugins/resolutionSet/resolutionCommon.c (+5/-3)
open-vm-tools/services/plugins/serviceDiscovery/get-versions.sh (+32/-2)
open-vm-tools/services/plugins/serviceDiscovery/serviceDiscovery.c (+436/-49)
open-vm-tools/services/plugins/serviceDiscovery/serviceDiscoveryInt.h (+22/-4)
open-vm-tools/services/plugins/serviceDiscovery/serviceDiscoveryPosix.c (+45/-82)
open-vm-tools/services/plugins/timeSync/timeSync.c (+10/-14)
open-vm-tools/services/plugins/vix/vixTools.c (+2/-2)
open-vm-tools/services/plugins/vmbackup/stateMachine.c (+28/-4)
open-vm-tools/services/vmtoolsd/mainLoop.c (+0/-5)
open-vm-tools/tests/testVmblock/Makefile.am (+7/-9)
open-vm-tools/toolbox/l10n/de.vmsg (+1/-1)
open-vm-tools/toolbox/l10n/es.vmsg (+1/-1)
open-vm-tools/toolbox/l10n/fr.vmsg (+2/-2)
open-vm-tools/toolbox/l10n/it.vmsg (+1/-1)
open-vm-tools/toolbox/l10n/ja.vmsg (+1/-1)
open-vm-tools/toolbox/l10n/ko.vmsg (+1/-1)
open-vm-tools/toolbox/l10n/zh_CN.vmsg (+1/-1)
open-vm-tools/toolbox/l10n/zh_TW.vmsg (+3/-3)
open-vm-tools/tools.conf (+77/-7)
open-vm-tools/vgauth/cli/l10n/de.vmsg (+1/-1)
open-vm-tools/vgauth/cli/l10n/es.vmsg (+1/-1)
open-vm-tools/vgauth/cli/l10n/fr.vmsg (+1/-1)
open-vm-tools/vgauth/cli/l10n/it.vmsg (+3/-3)
open-vm-tools/vgauth/cli/l10n/ja.vmsg (+1/-1)
open-vm-tools/vgauth/cli/l10n/ko.vmsg (+1/-1)
open-vm-tools/vgauth/cli/l10n/zh_CN.vmsg (+1/-1)
open-vm-tools/vgauth/cli/l10n/zh_TW.vmsg (+1/-1)
open-vm-tools/vgauth/common/certverify.c (+24/-3)
open-vm-tools/vgauth/common/vmxlog.c (+28/-475)
open-vm-tools/vgauth/common/vmxrpc.c (+639/-0)
open-vm-tools/vgauth/common/vmxrpc.h (+33/-0)
open-vm-tools/vgauth/lib/netPosix.c (+3/-1)
open-vm-tools/vgauth/service/Makefile.am (+2/-1)
open-vm-tools/vgauth/serviceImpl/netPosix.c (+9/-2)
open-vm-tools/vgauth/serviceImpl/proto.c (+5/-1)
open-vm-tools/vgauth/serviceImpl/saml-xmlsec1.c (+65/-3)
open-vm-tools/vgauth/serviceImpl/schemas/saml-schema-assertion-2.0.xsd (+283/-283)
open-vm-tools/vmblock-fuse/Makefile.am (+3/-1)
open-vm-tools/vmblock-fuse/fsops.c (+44/-6)
open-vm-tools/vmblock-fuse/fsops.h (+17/-2)
open-vm-tools/vmblock-fuse/main.c (+5/-1)
open-vm-tools/vmhgfs-fuse/Makefile.am (+3/-1)
open-vm-tools/vmhgfs-fuse/config.c (+21/-3)
open-vm-tools/vmhgfs-fuse/dir.c (+5/-1)
open-vm-tools/vmhgfs-fuse/main.c (+58/-20)
open-vm-tools/vmhgfs-fuse/module.h (+8/-2)
open-vm-tools/vmwgfxctrl/main.c (+4/-2)
- git-ubuntu bot: Approve
- Christian Ehrhardt (community): Approve
- Canonical Server Reporter: Pending requested
-
Diff: 28 lines (+9/-1)2 files modifieddebian/changelog (+8/-0)
debian/open-vm-tools.postinst (+1/-1)
- git-ubuntu bot: Approve
- Christian Ehrhardt (community): Approve
- Canonical Server Reporter: Pending requested
-
Diff: 29 lines (+9/-1)2 files modifieddebian/changelog (+8/-0)
debian/open-vm-tools.postinst (+1/-1)
Changed in open-vm-tools (Debian): | |
status: | Unknown → New |
tags: | added: server-todo |
Changed in open-vm-tools (Ubuntu): | |
assignee: | nobody → Bryce Harrington (bryce) |
Changed in open-vm-tools (Debian): | |
status: | New → Fix Released |
description: | updated |
Changed in open-vm-tools (Ubuntu Jammy): | |
assignee: | nobody → Bryce Harrington (bryce) |
status: | New → Triaged |
Changed in open-vm-tools (Ubuntu Kinetic): | |
status: | Confirmed → Fix Released |
Changed in open-vm-tools (Ubuntu Jammy): | |
importance: | Undecided → High |
Changed in open-vm-tools (Ubuntu Kinetic): | |
status: | Fix Released → Triaged |
importance: | Undecided → High |
description: | updated |
description: | updated |
Hi Benjamin, thanks for the bug.
This sounds like an issue not yet wreaking havoc but could be, so it is nice to fix it before things get worse.
Limiting to "scsi + vsock" is what is needed I guess.
The rules we have are:
root@j:~# head /lib/udev/ rules.d/ 60-open- vm-tools. rules /lib/udev/ rules.d/ 99-vmware- scsi-udev. rules rules.d/ 60-open- vm-tools. rules <==
==> /lib/udev/
# VMWare Virtual Sockets permissions
# after loading the vsock module, a block device /dev/vsock will be created with permission 0600
# This rule changes permission to 0666 to allow users access to the virtual sockets
KERNEL=="vsock", MODE="0666"
==> /lib/udev/ rules.d/ 99-vmware- scsi-udev. rules <== =="scsi_ device" , ATTRS{vendor} =="VMware* " , ATTRS{model} =="Virtual disk*", ATTRS{timeout} =="?*", ATTR{timeout}="180" =="scsi_ device" , ATTRS{vendor} =="VMware* " , ATTRS{model} =="VMware Virtual S", ATTRS{timeout} =="?*", ATTR{timeout}="180"
ACTION=="add", SUBSYSTEMS=="scsi", ENV{DEVTYPE}
ACTION=="add", SUBSYSTEMS=="scsi", ENV{DEVTYPE}
@Bryce,
could you have a look at this please?
This should be much smaller to have a look than starting with v12.0.0 right away :-)