On Wed, Sep 10, 2014 at 10:35:04AM +0200, Michal Privoznik wrote:
On 09.09.2014 18:25, Steven Wilson wrote:
>We recently ran into libvirt lxc shutdown failing because of mount
>namespaces not being available:
>
># virsh -c lxc:/// start test01
>Domain test01 started
>
># virsh -c lxc:/// list
> Id Name State
>----------------------------------------------------
> 9336 test01 running
>
># virsh -c lxc:/// shutdown test01
>error: Failed to shutdown domain test01
>error: Mount namespaces are not available on this platform: Function not
>implemented
>
>/var/log/libvirt/libvirtd.log:
>2014-09-03 15:50:50.682+0000: 3030: error :
>virProcessRunInMountNamespace:999 : Mount namespaces are not available
>on this platform: Function not implemented
>
>We're running Debian wheezy with stock libc6 2.13-38, a custom 3.12.15
>kernel (with namespace support) and libvirt 1.2.3.
This may be the problem. Libvirt needs setns() syscall as of 1.2.2 which may
not exist in your custom kernel. Or maybe you have old kernel-headers
package so the libvirt's configure script doesn't see the syscall.
>
>The patch in this previous thread fixes shutdown for us and we'd like to
>see it merged upstream:
>
>https://www.redhat.com/archives/libvir-list/2014-May/msg00175.html
From this it seems like glic is wrapping the syscall, so a glibc update may
solve the issue. If that's the case we may need to update our
libvirt.spec.in to reflect that.
Yes, the problem is the distros in question have the kernel support but
their glibc is too older for the wrapper. We can't rely on distros being
able to fix their glibc in this case, so adding the compat definition is
a reasonable thing todo here.
ACK to the patch referenced above.
Regards,
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|