* Use mkdir -p, rather than trying to only create /run/user/$uid. That helps if /run and/or /run/user do not exist, as they do in libxl-made chroots with recent libxl (which gets qemu to chroot).
* Do all of this in the root directory of the qemu process, not our own root directory. So it works if qemu is chrooted. CC: George Dunlap <[email protected]> Signed-off-by: Ian Jackson <[email protected]> --- v2: Actually use $qpid rather than hardcoding 8123 ! squash! ts-depriv-audit-qemu: Create complete /run/user in appropriate root --- ts-depriv-audit-qemu | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ts-depriv-audit-qemu b/ts-depriv-audit-qemu index 5d093500..d5bf10c9 100755 --- a/ts-depriv-audit-qemu +++ b/ts-depriv-audit-qemu @@ -48,9 +48,10 @@ END qpid=$(xenstore-read /local/domain/$domid/image/device-model-pid) uid=$(id -u xen-qemuuser-range-base) uid=$(( $uid + $domid )) - test -d /run/user || mkdir -m 2755 /run/user - if mkdir -m 2700 /run/user/$uid; then - chown $uid:root /run/user/$uid + qroot=$(readlink /proc/$qpid/root) + mkdir -pm 2755 $qroot/run/user + if mkdir -m 2700 $qroot/run/user/$uid; then + chown $uid:root $qroot/run/user/$uid fi osstest-depriv-fd-collector $qpid \ /usr/local/lib/xen/bin/depriv-fd-checker -- 2.11.0 _______________________________________________ Xen-devel mailing list [email protected] https://lists.xenproject.org/mailman/listinfo/xen-devel
