If I call systemctl to shutdown or reboot, the effect is that it does
not honor kodi-x11.service's ExecStop= line which results in an
unclean exit of kodi and of data loss since kodi writes out some data
when it exits. By contrast, calling systemctl to stop the service
works as expected.
It seems systemd treats processes in user.slice differently that those
in system.slice and that removing PAMName=login was to blame for kodi's
processes running in user.slice.
Discussion:
https://lists.freedesktop.org/archives/systemd-devel/2020-December/045713.htmlhttps://bbs.archlinux.org/viewtopic.php?id=261684