SRU request submitted: https://lists.ubuntu.com/archives/kernel-team/2017-November/088106.html
** Description changed: - When running 2 docker containers, one as samba server and another one as - samba client that mounts and umounts a smb share a kernel OOps can be - triggered on multiple kernels. + == SRU Justification == + This bug causes Samba mount and umounts in docker container to trigger + a kernel Oops. When running 2 docker containers, one as samba server and + another one as samba client that mounts and umounts a smb share a kernel + OOps can be triggered. + + This bug happens in Xenial and Zesty, and is fixed by the following two commits: + 76da0704507b ("ipv6: only call ip6_route_dev_notify() once for NETDEV_UNREGISTER") + 12d94a804946 ("ipv6: fix NULL dereference in ip6_route_dev_notify()") + + Both commits are clean cherry picks. 76da0704507b is in mainline as of v4.12. + Commit 12d94a804946 is in mainline as of v4.13-rc6. + + == Fixes == + commit 76da0704507bbc51875013f6557877ab308cfd0a + Author: WANG Cong <xiyou.wangcong at gmail.com> + Date: Tue Jun 20 11:42:27 2017 -0700 + + ipv6: only call ip6_route_dev_notify() once for NETDEV_UNREGISTER + + commit 12d94a804946af291e24b80fc53ec86264765781 + Author: Eric Dumazet <edumazet at google.com> + Date: Tue Aug 15 04:09:51 2017 -0700 + + ipv6: fix NULL dereference in ip6_route_dev_notify() + + == Regression Potential == + Both commits are specific to ipv6 and fix a regression introduced into Xenial and Zesty. + + == Test Case == + A test kernel was built with these patches and tested by the original bug reporter. + The bug reporter states the test kernel resolved the bug. + The kernel message: - unregister_netdevice: waiting for lo to become free. Usage count = 1 + unregister_netdevice: waiting for lo to become free. Usage count = 1 shows up, some minutes later the oops and/or warnings happens. - The scripts to trigger the kernel Oops can be found at: https://github.com/fho/docker-samba-loop I was able to reproduce kernel Oopses on a clean Ubuntu 16.0.4 installation with: - linux-image-4.4.0-93-generic=4.4.0-93.116~14.04.1 - linux-image-4.10.0-32-generic=4.10.0-32.36~16.04.1 - linux-image-4.11.0-14-generic=4.11.0-14.20~16.04.1 In a different scenario were Ubuntu 16.04 servers were running multiple docker containers with Nginx or small network applications in parallel, I was also able to reproduce the kernel Oopses also on: - linux-image-4.10.0-1004-gcp - linux-image-4.12.10-041210-generic=4.12.10-041210.20170830 I haven't tried again to reproduce it with those kernels on a clean Ubuntu installation and unfortunately didn't kept the kernel logs. The "unregister_netdevice: waiting for lo to become free. Usage count = 1" messages are related to https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1711407 which is handled as separate issue. - According to https://github.com/moby/moby/issues/35068 the crash is fixed by: https://patchwork.ozlabs.org/patch/801533/ https://patchwork.ozlabs.org/patch/778449/ - --- + --- AlsaDevices: - total 0 - crw-rw---- 1 root audio 116, 1 Nov 3 09:51 seq - crw-rw---- 1 root audio 116, 33 Nov 3 09:51 timer + total 0 + crw-rw---- 1 root audio 116, 1 Nov 3 09:51 seq + crw-rw---- 1 root audio 116, 33 Nov 3 09:51 timer AplayDevices: Error: [Errno 2] No such file or directory ApportVersion: 2.20.1-0ubuntu2.10 Architecture: amd64 ArecordDevices: Error: [Errno 2] No such file or directory AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/seq', '/dev/snd/timer'] failed with exit code 1: CRDA: N/A DistroRelease: Ubuntu 16.04 IwConfig: Error: [Errno 2] No such file or directory Lsusb: Error: command ['lsusb'] failed with exit code 1: MachineType: Google Google Compute Engine Package: linux (not installed) PciMultimedia: - + ProcEnviron: - TERM=rxvt-unicode-256color - PATH=(custom, no user) - LANG=en_US.UTF-8 - SHELL=/bin/bash + TERM=rxvt-unicode-256color + PATH=(custom, no user) + LANG=en_US.UTF-8 + SHELL=/bin/bash ProcFB: - + ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.10.0-37-generic root=UUID=bf9a017a-931d-4191-84bc-b8434dbba527 ro scsi_mod.use_blk_mq=Y console=ttyS0 ProcVersionSignature: Ubuntu 4.10.0-37.41~16.04.1-generic 4.10.17 RelatedPackageVersions: - linux-restricted-modules-4.10.0-37-generic N/A - linux-backports-modules-4.10.0-37-generic N/A - linux-firmware N/A + linux-restricted-modules-4.10.0-37-generic N/A + linux-backports-modules-4.10.0-37-generic N/A + linux-firmware N/A RfKill: Error: [Errno 2] No such file or directory Tags: xenial uec-images xenial uec-images Uname: Linux 4.10.0-37-generic x86_64 UnreportableReason: The report belongs to a package that is not installed. UpgradeStatus: No upgrade log present (probably fresh install) UserGroups: - + _MarkForUpload: False dmi.bios.date: 01/01/2011 dmi.bios.vendor: Google dmi.bios.version: Google dmi.board.asset.tag: A3DDBB61-646B-C60C-3999-1F1D7B7A334A dmi.board.name: Google Compute Engine dmi.board.vendor: Google dmi.chassis.type: 1 dmi.chassis.vendor: Google dmi.modalias: dmi:bvnGoogle:bvrGoogle:bd01/01/2011:svnGoogle:pnGoogleComputeEngine:pvr:rvnGoogle:rnGoogleComputeEngine:rvr:cvnGoogle:ct1:cvr: dmi.product.name: Google Compute Engine dmi.sys.vendor: Google -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1729637 Title: Samba mount/umount in docker container triggers kernel Oops To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1729637/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs