Re: Infinite recursion in device_reorder_to_tail() due to circular device links
From: Hugh Dickins <hughd@google.com>
Date: 2021-01-24 20:08:07
Also in:
linux-pm, lkml
On Sun, 24 Jan 2021, Greg Kroah-Hartman wrote:
On Sat, Jan 23, 2021 at 03:37:30PM -0800, Hugh Dickins wrote:quoted
On Tue, 12 Jan 2021, Greg Kroah-Hartman wrote:quoted
On Tue, Jan 12, 2021 at 03:32:04PM +0100, Rafael J. Wysocki wrote:quoted
On Mon, Jan 11, 2021 at 7:46 PM Stephan Gerhold [off-list ref] wrote:quoted
Hi, since 5.11-rc1 I get kernel crashes with infinite recursion in device_reorder_to_tail() in some situations... It's a bit complicated to explain so I want to apologize in advance for the long mail. :) Kernel panic - not syncing: kernel stack overflow CPU: 1 PID: 33 Comm: kworker/1:1 Not tainted 5.11.0-rc3 #1 Hardware name: Qualcomm Technologies, Inc. APQ 8016 SBC (DT) Call trace: ... device_reorder_to_tail+0x4c/0xf0 device_reorder_to_tail+0x98/0xf0 device_reorder_to_tail+0x60/0xf0 device_reorder_to_tail+0x60/0xf0 device_reorder_to_tail+0x60/0xf0 ... The crash happens only in 5.11 with commit 5b6164d3465f ("driver core: Reorder devices on successful probe"). It stops happening when I revert this commit.Thanks for the report! Greg, please revert commit 5b6164d3465f, it clearly is not an improvement, at least at this point.Now reverted, thanks. greg k-hI think that there has been a misunderstanding here: although 5b6164d3465f ("driver core: Reorder devices on successful probe") has been reverted from linux-next (thank you), it has not yet been reverted from 5.11-rc, and still causing problems there (in my case, not the infinite recursion Stephan reported in this thread, but the ThinkPad rmi4 suspend failure that I reported in another thread).It will be sent to Linus in a few hours, thanks, so should show up in 5.11-rc5. I had other patches to go along with this to send him at the same time :)
And indeed it's now in, thanks Greg: I'm sorry for being importunate, the misunderstanding was mine. Hugh