Bug 250407 - emulators/open-vm-tools: prevent running vmware-guestd rc script before ldconfig
Summary: emulators/open-vm-tools: prevent running vmware-guestd rc script before ldconfig
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Josh Paetzel
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-10-16 21:23 UTC by Dimitry Andric
Modified: 2020-10-21 18:48 UTC (History)
0 users

See Also:
bugzilla: maintainer-feedback? (jpaetzel)


Attachments
Add ldconfig to vmware-guestd REQUIRES: line (437 bytes, patch)
2020-10-16 21:23 UTC, Dimitry Andric
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dimitry Andric freebsd_committer freebsd_triage 2020-10-16 21:23:03 UTC
Created attachment 218813 [details]
Add ldconfig to vmware-guestd REQUIRES: line

Recently at startup of a VM with open-vm-tools-nox11-11.1.5,2 installed I saw the following at bootup:

Oct 16 21:19:19 foobar kernel: Setting hostname: foobar.
Oct 16 21:19:19 foobar kernel: ld-elf.so.1: Shared object "libpcre.so.1" not found, required by "libglib-2.0.so.0"
Oct 16 21:19:19 foobar syslogd: last message repeated 1 times
Oct 16 21:19:19 foobar kernel: /etc/rc: WARNING: failed precmd routine for vmware_guestd
Oct 16 21:19:19 foobar kernel: ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/compat /usr/
local/lib/compat/pkg /usr/local/lib/dovecot /usr/local/lib/expect5.45.4 /usr/local/lib/gcc10 /usr/local/lib/gcc11 /usr/local/lib/gcc48 /usr/local/lib/gcc7 /usr/
local/lib/gcc8 /usr/local/lib/gcc9 /usr/local/lib/graphviz /usr/local/lib/perl5/5.32/mach/CORE /usr/local/lib/samba4 /usr/local/llvm10/lib /usr/local/llvm80/lib
 /usr/local/llvm90/lib

What happens here is that /usr/local/etc/rc.d/vmware-guestd only has "REQUIRE: FILESYSTEMS" in it, and sometimes it can then be started before /etc/rc.d/ldconfig has run. In that case, /usr/local/lib will not yet have been added to the dynamic linker path, and the above messages will show up.

I propose to add "ldconfig" to the "REQUIRE:" line of the rc.d script template.
Comment 1 commit-hook freebsd_committer freebsd_triage 2020-10-21 18:48:00 UTC
A commit references this bug:

Author: jpaetzel
Date: Wed Oct 21 18:47:28 UTC 2020
New revision: 552879
URL: https://svnweb.freebsd.org/changeset/ports/552879

Log:
  Fix an issue where the rc.d script can error out because it was run before ldconfig

  PR:	250407
  Submitted by:	dim
  Sponsored by:	Panzura

Changes:
  head/emulators/open-vm-tools/Makefile
  head/emulators/open-vm-tools/files/vmware-guestd.in