Kernel panic on a nfsroot system
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Artful |
Fix Released
|
High
|
Unassigned |
Bug Description
== SRU Justification ==
The following commit introduced a regression identified in bug 1734327:
ac8f82a0b6d9 ("UBUNTU: SAUCE: LSM stacking: LSM: Infrastructure management of the remaining blobs")
The regression causes a kernel panic to occur after multiple TCP connection
creations/closures to the localhost. The bug was found using STAF RPC calls,
but is easily reproducible with SSH.
A revert of commit ac8f82a0b6d9 is needed to resolve this bug. However, commit 4ae2508f0bed
also needs to be reverted because it depend on commit ac8f82a0b6d9.
== Fix ==
Revert 4ae2508f0bed ("UBUNTU: SAUCE: LSM stacking: add stacking support to apparmor network hooks")
Revert ac8f82a0b6d9 ("UBUNTU: SAUCE: LSM stacking: LSM: Infrastructure management of the remaining blobs")
== Test Case ==
A test kernel was built with these two commits reverted and tested by the original bug reporter.
The bug reporter states the test kernel resolved the bug.
== Original Bug Description ==
Summary:
Kernel panic occurs after multiple TCP connection creations/closures to the localhost.
The bug was found using STAF RPC calls, but is easily reproducible with SSH.
The bug doesn't appear on an identical virtual machine booting from the disk.
The bug is not reproducible on a similarly-prepared Ubuntu 16.04 machine.
The bug is reproducible using an older 4.13.0-16-generic kernel
Reproducible on multiple hardware types.
Unable to create a kernel memory dump due to makedumpfile errors.
apport-bug save attached.
NFSRoot boot options:
vmlinuz initrd=initrd.img boot=nfs root=/dev/nfs nfsroot=
Software:
OS: Ubuntu 17.10
Kernel: 4.13.0-17-generic x86_64
Reproduction steps:
1. Boot a system from a nfsroot
2. Configure password-less localhost ssh access
3. Run a loop: `while true; do ssh localhost 'uname -a'; done`
4. Wait for system to crash
Trace:
4,1151,
4,1152,
4,1153,52373251,c; sysfillrect dca cryptd sysimgblt i2c_algo_bit fb_sys_fops ahci ptp drm libahci pps_core wmi
4,1154,
4,1155,
4,1156,
4,1157,
4,1158,
4,1159,
4,1160,
4,1161,
4,1162,
4,1163,
4,1164,
4,1165,
4,1166,
4,1167,
4,1168,
4,1169,
4,1170,52373987,-; <IRQ>
4,1171,52374009,-; security_
4,1172,52374042,-; __sk_destruct+
4,1173,52374070,-; sk_destruct+
4,1174,52374095,-; __sk_free+0x82/0xa0
4,1175,52374120,-; sk_free+0x19/0x20
4,1176,52374144,-; sock_put+0x14/0x20
4,1177,52374168,-; tcp_v4_
4,1178,52374195,-; ip_local_
4,1179,52374226,-; ip_local_
4,1180,52374254,-; ip_rcv_
4,1181,52374281,-; ip_rcv+0x28c/0x3a0
4,1182,52374305,-; ? update_
4,1183,52374335,-; __netif_
4,1184,52374369,-; __netif_
4,1185,52374398,-; ? __netif_
4,1186,52374428,-; process_
4,1187,52374457,-; net_rx_
4,1188,52374485,-; __do_softirq+
4,1189,52375837,-; do_softirq_
4,1190,52377188,-; </IRQ>
4,1191,52378538,-; do_softirq.
4,1192,52379869,-; __local_
4,1193,52381174,-; ip_finish_
4,1194,52382442,-; ip_finish_
4,1195,52383658,-; ? ip_finish_
4,1196,52384833,-; ip_output+0x70/0xe0
4,1197,52385959,-; ? lock_timer_
4,1198,52387043,-; ip_local_
4,1199,52388078,-; ip_queue_
4,1200,52389068,-; ? __alloc_
4,1201,52390019,-; tcp_transmit_
4,1202,52390944,-; tcp_send_
4,1203,52391849,-; tcp_send_
4,1204,52392729,-; tcp_cleanup_
4,1205,52393600,-; tcp_recvmsg+
4,1206,52394464,-; inet_recvmsg+
4,1207,52395307,-; sock_recvmsg+
4,1208,52396135,-; sock_read_
4,1209,52396955,-; new_sync_
4,1210,52397766,-; __vfs_read+
4,1211,52398568,-; vfs_read+0x8e/0x130
4,1212,52399347,-; SyS_read+0x55/0xc0
4,1213,52400099,-; entry_SYSCALL_
4,1214,
4,1215,
4,1216,
4,1217,
4,1218,
4,1219,
4,1220,
4,1221,
1,1222,
4,1223,
0,1224,
---
AlsaDevices:
total 0
crw-rw---- 1 root audio 116, 1 Nov 24 12:39 seq
crw-rw---- 1 root audio 116, 33 Nov 24 12:39 timer
AplayDevices: Error: [Errno 2] No such file or directory
ApportVersion: 2.20.7-0ubuntu3.5
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:
DistroRelease: Ubuntu 17.10
InstallationDate: Installed on 2017-11-03 (21 days ago)
InstallationMedia: Ubuntu-Server 17.10 "Artful Aardvark" - Release amd64 (20171017.1)
IwConfig: Error: [Errno 2] No such file or directory
MachineType: Supermicro Super Server
Package: linux (not installed)
PciMultimedia:
ProcFB: 0 astdrmfb
ProcKernelCmdLine: vmlinuz initrd=initrd.img boot=nfs root=/dev/nfs nfsroot=
ProcVersionSign
RelatedPackageV
linux-
linux-
linux-firmware 1.169
RfKill: Error: [Errno 2] No such file or directory
Tags: artful
Uname: Linux 4.13.0-17-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: 12/17/2015
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 2.0
dmi.board.
dmi.board.name: X10SRD-F
dmi.board.vendor: Supermicro
dmi.board.version: 1.01
dmi.chassis.
dmi.chassis.type: 17
dmi.chassis.vendor: Supermicro
dmi.chassis.
dmi.modalias: dmi:bvnAmerican
dmi.product.family: Default string
dmi.product.name: Super Server
dmi.product.
dmi.sys.vendor: Supermicro
tags: |
added: performing-bisect removed: needs-bisect |
description: | updated |
Changed in linux (Ubuntu): | |
status: | In Progress → Fix Committed |
Changed in linux (Ubuntu Artful): | |
status: | In Progress → Fix Committed |
Changed in linux (Ubuntu Artful): | |
status: | Fix Committed → Confirmed |
Changed in linux (Ubuntu): | |
status: | Fix Committed → Fix Released |
This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:
apport-collect 1734327
and then change the status of the bug to 'Confirmed'.
If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.
This change has been made by an automated script, maintained by the Ubuntu Kernel Team.