lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 17 Mar 2009 19:50:04 -0700 From: Andrew Morton <akpm@...ux-foundation.org> To: Lai Jiangshan <laijs@...fujitsu.com> Cc: Valdis.Kletnieks@...edu, jkosina@...e.cz, gregkh@...e.de, linux-kernel@...r.kernel.org, Oleg Nesterov <oleg@...sign.ru>, Oliver Neukum <oliver@...kum.org> Subject: Re: 29-rc-mmotm - HID/USB wedge w/ WARNING: at kernel/workqueue.c:371 On Wed, 18 Mar 2009 10:29:40 +0800 Lai Jiangshan <laijs@...fujitsu.com> wrote: > Valdis.Kletnieks@...edu wrote: > > On Tue, 17 Mar 2009 13:54:24 PDT, Andrew Morton said: > > > >> It's an error in workqueue-avoid-recursion-in-run_workqueue.patch, methinks. > > > > Thanks for the diagnosis - I got as far as realizing that any backtrace that > > included flush_cpu_workqueue() and worker_thread() had a problem and got > > stuck there. > > > > It's dangerous when we allow recursion in run_workqueue(). static void run_workqueue(struct cpu_workqueue_struct *cwq) { spin_lock_irq(&cwq->lock); cwq->run_depth++; if (cwq->run_depth > 3) { /* morton gets to eat his hat */ printk("%s: recursion depth exceeded: %d\n", __func__, cwq->run_depth); dump_stack(); } That was added five or six years ago, and I never ever got to eat my hat. > If it's hard for you avoid flush_scheduled_work() in > keventd's work fuction by other fix, you can create > another workqueue to handle your works, IMO. Why do we need to change anything here? No known bugs were fixed, and some new ones were added. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists