[Bug 863629] Re: libvirt-lxc: virFileOpenTtyAt can't be called on /some/other/dev/pts
Serge Hallyn
863629 at bugs.launchpad.net
Tue Nov 1 18:31:10 UTC 2011
** Also affects: libvirt (Ubuntu Lucid)
Importance: Undecided
Status: New
** Also affects: libvirt (Ubuntu Maverick)
Importance: Undecided
Status: New
** Also affects: libvirt (Ubuntu Natty)
Importance: Undecided
Status: New
** Also affects: libvirt (Ubuntu Oneiric)
Importance: Undecided
Status: New
** Description changed:
lxcControllerRun() is calling virFileOpenTtyAt() with a slave opened on
/the/container/chroot/dev/pts. While it is not documented in the
manpages, glibc's grantpt does a first check (ensuring that the passed
in fd is a pty slave) with '/dev/pts' as the hardcoded path, appending
the pty#.
lxcControllerRun always calls this on the first slave opened after
creating the new /dev/pts, so grantpt is always checking /dev/pts/0.
Therefore, if your host does not have /dev/pts/0 (easy to reproduce
using screen), then grantpt will fail, and the container creation will
subsequently also fail.
+
+ =================================================================
+ SRU Justification:
+
+ 1. Impact: libvirt will be unable to create lxc containers, saying that it cannot allocate /dev/pts/0
+ 2. Development fix: A patch was sent upstream which makes libvirt-lxc not use glibc's grantpt, which is the cause of the bug.
+ 3. Stable fix: same as the development fix.
+ 4. Test case:
+ 0. [ Set up libvirt and create a libvirt-lxc container ]
+ 1. make sure noone is logged into the server
+ 2. log in, make sure your tty is /dev/pts/0 (check with 'tty')
+ 3. Pin /dev/pts/0 by doing "sleep 2h & disown; exit"
+ 4. Try to start a container on that system. Without this fix it will fail with an error about /dev/pts/0.
+ 5. Regression potential: if the patch was bad, it could cause failures when starting a container, or other places when libvirt allocates a tty.
+ =================================================================
--
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to libvirt in Ubuntu.
https://bugs.launchpad.net/bugs/863629
Title:
libvirt-lxc: virFileOpenTtyAt can't be called on /some/other/dev/pts
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/863629/+subscriptions
More information about the Ubuntu-server-bugs
mailing list