~paelzer/ubuntu/+source/open-vm-tools:improve-fix-to-lp-1804287-disco

Last commit made on 2019-03-04
Get this branch:
git clone -b improve-fix-to-lp-1804287-disco https://git.launchpad.net/~paelzer/ubuntu/+source/open-vm-tools
Only Christian Ehrhardt  can upload to this branch. If you are Christian Ehrhardt  please log in for upload directions.

Branch merges

Branch information

Name:
improve-fix-to-lp-1804287-disco
Repository:
lp:~paelzer/ubuntu/+source/open-vm-tools

Recent commits

2ce3432... by Christian Ehrhardt  on 2019-03-04

changelog: make vgauth service execution more reliable

Signed-off-by: Christian Ehrhardt <email address hidden>

dc2f451... by Christian Ehrhardt  on 2019-03-04

make vgauth service execution more reliable

Since d3d47039 "Start vgauth before vmtoolsd" there is a potential race
of starting vgauth so early that it might have issues. This was
discussed back in the day in [1] to [2], but confirmed to be ok by
VMWare.

We were all somewhat convinced by this, but a bad feeling remained not
only with me but also with Bernd [4].
A recent SRU review denial made me rethink all of it and I think we can
make it safer without thwarting the purpose of the original change.

Note: Disambiguation of service names used below:
vgauth - open-vm-tools.vgauth.service
vmtoolsd - open-vm-tools.service
fs - systemd-remount-fs.service
tmp - systemd-tmpfiles-setup.service
cloud-init - cloud-init-local.service

Currently we have these dependency requirements:
- vgauth should be before vmtoolsd
- cloud init should be before vmtoolsd
- cloud init has to be really early in general
  - therefore this is using DefaultDependencies=No

That lead to this graph:
 fs / tmp -> vmtoolsd -> cloud-init
And d3d47039 added it to be like:
 fs / tmp -> vmtoolsd -> cloud-init
               ^
 vgauth --|

But there is no need to have vgauth without any pre-dependencies at all.
It is only needed to be "before" vmtoolsd, therefore we can make it:
 fs / tmp -> vgauth -> vmtoolsd -> cloud-init

That will make execution of vgauth much less error-prone (even though I
have no hard issue to report) while at the same time holding up all
known required ordering constraints.

Note: this is accepted in Debian via [5] and can be dropped on the
next merge, but due to Debian Freeze we add it as Ubuntu delta for now.

[1]: https://bugs.launchpad.net/ubuntu/+source/open-vm-tools/+bug/1804287/comments/3
[2]: https://bugs.launchpad.net/ubuntu/+source/open-vm-tools/+bug/1804287/comments/12
[3]: https://bugs.launchpad.net/ubuntu/+source/open-vm-tools/+bug/1804287/comments/25
[4]: https://github.com/bzed/pkg-open-vm-tools/pull/15#issuecomment-447237910
[5]: https://github.com/bzed/pkg-open-vm-tools/pull/18

Signed-off-by: Christian Ehrhardt <email address hidden>

0eba19e... by Bernd Zeimetz on 2019-02-11

Import patches-unapplied version 2:10.3.5-6 to debian/sid

Imported using git-ubuntu import.

Changelog parent: d7cb7b259a7885c65b899ec74de6361a22a561a5

New changelog entries:
  * [43ec618] Correct and/or improve handling of certain quiesced
    snapshot failures.
    Thanks to Oliver Kurth (Closes: #921470)

d7cb7b2... by Bernd Zeimetz on 2019-01-31

Import patches-unapplied version 2:10.3.5-5 to debian/sid

Imported using git-ubuntu import.

Changelog parent: 66144680d163219de8e44d0509fe8bfcccfc7702

New changelog entries:
  * [54cce3e] Start vmtoolsd after apparmor.service.
    Github issue #17

6614468... by Bernd Zeimetz on 2018-12-29

Import patches-unapplied version 2:10.3.5-4 to debian/sid

Imported using git-ubuntu import.

Changelog parent: 7c2caae65ab9ca9aeb252be4f89c09c4238552f2

New changelog entries:
  [ Alf Gaida ]
  * [e13792d] udevadm trigger should not fail (Closes: #917642)

7c2caae... by Bernd Zeimetz on 2018-12-14

Import patches-unapplied version 2:10.3.5-3 to debian/sid

Imported using git-ubuntu import.

Changelog parent: 2b53b12d8efa8fa40407cfca2260c16bb28f256c

New changelog entries:
  [ Christian Ehrhardt ]
  * [d3d4703] Start vgauth before vmtoolsd.
    VGAuthService needs to be ready when vmtoolsd runs. Certain cases - e.g.
    Site Recovery Manager failover - will need vgauth to be up.
    Therefore add an After=vgauth.service dependency to open-vm-tools.service
    To have vgauth be able start early - and not pull cloud-init back late - it
    is also required to drop default dependencies which according to VMware is
    fine to do so.
    (LP: #1804287)

2b53b12... by Bernd Zeimetz on 2018-12-11

Import patches-unapplied version 2:10.3.5-2 to debian/sid

Imported using git-ubuntu import.

Changelog parent: 07f838b4af2be42125d61e877f56eab4e11a663c

New changelog entries:
  [ Raphaël Hertzog ]
  * [db2a364] Ensure vmwgfx module is loaded before start of vmtoolsd.
    This avoids a failure to start the resolutionKMS plugin and it's
    achieved through a drop-in snippet extending open-vm-tools.service
    adding an ExecStartPre directive loading the module prior to
    the start of the service. (Closes: #915031)
  [ Christian Ehrhardt ]
  * [e6e0ab8] d/rules: fix dangling symlink of vmware-user.
    Back in 2:9.4.0-1280544-6 vmware-user* was moved to the
    open-vm-tools-desktop package and some follow on fixes moved bits that
    were forgotten like the man page.
    (LP: #1807441)
    There still is a symlink in /usr/bin/vmware-user that is forgotten in
    the base package and broken unless open-vm-tools-desktop is installed.
    Change d/rules to move the symlink as well.
    Signed-off-by: Christian Ehrhardt <email address hidden>
  * [13d22e5] Breaks and Replaces for moving vmware-user.
    Signed-off-by: Christian Ehrhardt <email address hidden>
  * [d56826a] Bump breaks and replaces to next version to be released.
    Signed-off-by: Christian Ehrhardt <email address hidden>
  [ Bernd Zeimetz ]
  * [e4697c7] Fix race condition between open-vm-tools and systemd-tmpfiles-setup.
    Thanks to Jean-Louis Dupond (Closes: #914910)

07f838b... by Bernd Zeimetz on 2018-11-09

Import patches-unapplied version 2:10.3.5-1 to debian/sid

Imported using git-ubuntu import.

Changelog parent: 2095b474e734433d18afa6e60372218294e91ce0

New changelog entries:
  * [7061cb7] Update upstream source from tag 'upstream/10.3.5'
    Update to upstream version '10.3.5'
    with Debian dir 9315f58cab8ba1356c1e4aa77d714257dc0651f2

2095b47... by Bernd Zeimetz on 2018-08-07

Import patches-unapplied version 2:10.3.0-1 to debian/sid

Imported using git-ubuntu import.

Changelog parent: 986764572e0cf54797aa935bd6f45e5aa1099933

New changelog entries:
  * [16acbc3] Remove PrivateTmp=yes.
    Thanks to Christian Ehrhardt (Closes: #905170)
  * [72aabb2] Add RequiresMountsFor=/tmp.
    Thanks to Christopher Odenbach (Closes: #900566)
  * [96bf0c5] Update upstream source from tag 'upstream/10.3.0'
    Update to upstream version '10.3.0'
    with Debian dir ace0137b2d17e039ddac188fdcd15f882119925a
  * [e5a9b82] Re-add .travis.yml
  * [83e043f] Refreshing patches

9867645... by Bernd Zeimetz on 2018-04-06

Import patches-unapplied version 2:10.2.5-1 to debian/sid

Imported using git-ubuntu import.

Changelog parent: a955498437441ae1e4c96d21c895ab419d1e7ed8

New changelog entries:
  * [ea03a58] Update upstream source from tag 'upstream/10.2.5'
    Update to upstream version '10.2.5'
    with Debian dir 74e96286320224bb6d5b717034930169514dbd51
  * [c1c18d3] Refreshing patches.