Messages in this thread | | | From | Luiz Augusto von Dentz <> | Date | Thu, 17 Nov 2022 13:16:08 -0800 | Subject | Re: [syzbot] WARNING in call_timer_fn |
| |
Hi Tetsuo,
On Thu, Nov 17, 2022 at 1:04 PM Luiz Augusto von Dentz <luiz.dentz@gmail.com> wrote: > > Hi Thomas, > > On Thu, Nov 17, 2022 at 8:06 AM Thomas Gleixner <tglx@linutronix.de> wrote: > > > > On Thu, Nov 17 2022 at 20:55, Hillf Danton wrote: > > > On 17 Nov 2022 12:54:28 +0100 Thomas Gleixner <tglx@linutronix.de> > > >> > > >> The work has been canceled already before in the same function and there > > >> are some more delayed works which can trigger this. > > >> > > >> So no, this whole close_sync() function is prone to teardown races and > > >> just slapping a single cancel here without deeper analysis does not cut > > >> it. > > > > > > Agree. > > > > > > A set of sync cancelations can do the job, given what is defined in struct > > > hci_dev wrt workqueue. > > > > It's only part of the solution because you also have to prevent that > > work is queued from other parts of the code.... > > I thought we would have something similar to shutdown_timer (e.g. > shutdown_delayed_work) so we can safely free its object/struct, at > least that was the impression I got when discussing with Steven.
Wasn't the following patch suppose to address such problem:
https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git/commit/?id=deee93d13d385103205879a8a0915036ecd83261
It was merged in the last pull request to net-next:
https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git/commit/?id=a507ea32b9c2c407012bf89109ac0cf89fae313c
-- Luiz Augusto von Dentz
| |