------- Comment From dougm...@us.ibm.com 2018-04-22 11:43 EDT------- I think the fact that two threads are in qlt_free_session_done() for the same fcport at the same time is definitely a problem. I'm not sure how two different kworker pools could contain the same work item. If the same work item got put on two pools, that would effectively merge the two pool lists at that point (the item's next pointer would point to the remainder of the list for the last pool the item was added to). This would mean that two kworker threads would end up working the same list at the same time, leading to something like what we see. But, the work item that crashes might not be the one that was erroneously added to both pools (although it is probably likely).
This scenario might explain the strange condition of the pool pointers and work item. It appears that the offending work_struct has had INIT_WORK() run on it, but the pool still has it on the worklist. The only place I see INIT_WORK() run on the free_work item is from qlt_unreg_sess(), but this is the predecessor to qlt_free_session_done() being run, and should not ordinarily happen on the same CPU/thread. Still, the INIT_WORK() immediately precedes schedule_work() so the work item should only exist in this condition for a short time - unless something preempts the code or another CPU/thread races in and crashes before it can complete. Are there any tasks (in the dumps) that are running in qlt_unreg_sess()? It's looking as if some locking malfunction or memory corruption (which could cause lock malfunction) is happening here. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1762844 Title: ISST-LTE:KVM:Ubuntu1804:BostonLC:boslcp3: Host crashed & enters into xmon after moving to 4.15.0-15.16 kernel To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1762844/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs