Abnormal mounts inside guest's /proc after host migrated to another storage

Hello everybody.
After i’ve moved the whole host’s system to another storage, containers began to behave abnormally, empty uptime, failing ps and top:

root@ldap0:~# ps aux
bad data in /proc/uptime
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
Signal 8 (FPE) caught by ps (3.3.12).
root         1  0.0ps:ps/display.c:66: please report this bug
Floating point exception
root@ldap0:~# uptime
bad data in /proc/uptime
 18:48:37 up 0 min,  0 users,  load average: 0.45, 1.26, 1.13

I’ve inspected what was mounted in container and was dazed with results:

root@ldap0:~# mount
/dev/md2 on / type ext4 (rw,relatime,errors=remount-ro,data=ordered)
none on /dev type tmpfs (rw,relatime,size=492k,mode=755)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
proc on /proc/sys/net type proc (rw,nosuid,nodev,noexec,relatime)
proc on /proc/sys type proc (ro,nosuid,nodev,noexec,relatime)
proc on /proc/sysrq-trigger type proc (ro,nosuid,nodev,noexec,relatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
sysfs on /sys type sysfs (ro,nosuid,nodev,noexec,relatime)
sysfs on /sys/devices/virtual/net type sysfs (rw,relatime)
sysfs on /sys/devices/virtual/net type sysfs (rw,nosuid,nodev,noexec,relatime)
/dev/md2 on /proc/cpuinfo type ext4 (rw,relatime,errors=remount-ro,data=ordered)
/dev/md2 on /proc/diskstats type ext4 (rw,relatime,errors=remount-ro,data=ordered)
/dev/md2 on /proc/meminfo type ext4 (rw,relatime,errors=remount-ro,data=ordered)
/dev/md2 on /proc/stat type ext4 (rw,relatime,errors=remount-ro,data=ordered)
/dev/md2 on /proc/swaps type ext4 (rw,relatime,errors=remount-ro,data=ordered)
/dev/md2 on /proc/uptime type ext4 (rw,relatime,errors=remount-ro,data=ordered)
devpts on /dev/console type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620,ptmxmode=666)
devpts on /dev/tty1 type devpts (rw,relatime,gid=5,mode=620,ptmxmode=666)
devpts on /dev/tty2 type devpts (rw,relatime,gid=5,mode=620,ptmxmode=666)
devpts on /dev/tty3 type devpts (rw,relatime,gid=5,mode=620,ptmxmode=666)
devpts on /dev/tty4 type devpts (rw,relatime,gid=5,mode=620,ptmxmode=666)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset,clone_children)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
mqueue on /dev/mqueue type mqueue (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)

We can see the root block device mounted to /proc/cpuinfo /proc/meminfo, etc… Actually it is not, but after umounting of these objects ps, top etc. begins to work as expected.
Why did i’ve got these strange mounts and how to correct this behaviour of lxc( or maybe lxcfs?) ?

Most likely you killed/restarted lxcfs on the host, which caused the fuse filesystem to get unmounted from the host and all the files in the various containers to point to a broken path.

That is why you should never restart lxcfs and why packaging scripts instead send SIGUSR1 to lxcfs to have it reload itself.