[lxc-users] upgrade to LXC 1.0.6 : segfault

Stéphane Graber stgraber at ubuntu.com
Mon Oct 27 16:45:22 UTC 2014


On Mon, Oct 27, 2014 at 05:08:29PM +0100, Yannick Barbeaux wrote:
> Hi everyone,
> 
> my first post in the LXC world!
> I have been using LXC 1.0.3 on debian wheezy for a few months now and
> everything worked fine, except that the kern.log (and thus syslog too) on
> "Dom0" was garbled as soon as I started any container :
> 
> example:
> Oct 27 16:19:51 myserver kernel: rl(NU)I=r.0
> U=MC0:05:00:1f:ac:1e:60:0SC0000DT24001LN3 O=x0PE=x0TL1I= FPOO2
> Oct 27 16:19:53 myserver kernel: 91845] rpe yfrwl IPT Nb012OT
> A=10:e0:00:e5:86:88:80 R=... S=2... E=2TS00 RC0C T= D0D RT=  2.233 rp  ra
> NTIb.4U C10e001ece20480R0. =..E2S0R0 =DDR=4>[  922.837874]  dropped by
> firewall (INPUT) IN=br0105 OU=MC0:05:00:16:09:99:f0:0SC0000DT=2... E=2TS00
> RC0C T= D0D RT= ==x0PE=x0TL1I= FPOO2
> 
> it seems that various processes write at the same time in the logs and thus
> it is totally messy.
> 
> I thought that upgrading to LXC 1.0.6 could solve that issue. I downloaded
> the sources and compiled the new version with python enabled.
> 
> The real problems started with that new version: after rebooting, the
> containers would simply not start (lxc-start -d -n p1 does not do anything,
> nothing in the logs either). After investigations, I found out that the
> link to the liblxc pointed to the liblxc.so.1.1.0.alpha1.
> After deleting the symbolic link and recreating it to point to
> liblxc.so.1.0.6, I was able to launch the containers successfully but
> unfortunately, one of the command I used the most, lxc-ls --fancy was
> broken (Segmentation fault). Same issue for the lxc-autostart command.
> 
> Furthermore, after each reboot, the link to the alpha1 version of the lib
> is automatically recreated so before launching the containers, I have to
> execute those commands to recreate the correct link:
> rm /usr/local/lib/liblxc.so.1
> ln -s /usr/local/lib/liblxc.so.1.0.6 /usr/local/lib/liblxc.so.1
> 
> And guess what, with the v1.0.6, my kern.log and syslog are still garbled
> so the upgrade was definitely not efficient in my case.
> 
> To sum up, since the upgrade, I face the following issues:
> - garbled logs on "Dom0" (same issue as with v1.0.3)
> - link to the liblxc.so.1.1.0alpha is recreated at each system startup (and
> implies that I cannot launch my containers)
> - lxc-ls --fancy and lxc-autostart not working anymore
> 
> Any help on this would be really appreciated.
> 
> Thanks
> 
> Yannick

The mixed up logs are not related to LXC but to the way kernel logging
works. There's unfortunately nothing LXC will ever be able to do about
this, instead the fix needs to happen in kernel land.

What distribution are you running on?
If you're running on Ubuntu, you can use ppa:ubuntu-lxc/stable which
contains 1.0.6 built for all versions of Ubuntu. Note that if you're
running Ubuntu 14.10, which contains LXC 1.1.0.alpha2, you will need to
manually pin the 1.0.6 packages so that your system doesn't keep
upgrading to 1.1.

Mixing 1.1.0 and 1.0.6 can indeed lead to the kind of problem you're
reporting. Especially as python typically doesn't look for extension
modules in /usr/local so it's very likely that python loaded the 1.1
version of the C extension module and then tried to interface with
liblxc 1.0.6 which caused the segfault.

-- 
Stéphane Graber
Ubuntu developer
http://www.ubuntu.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.linuxcontainers.org/pipermail/lxc-users/attachments/20141027/bdacc906/attachment.sig>


More information about the lxc-users mailing list