Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
workqueue: It is likely that WORKER_NOT_RUNNING is true
MAINTAINERS: Add workqueue entry
workqueue: check the allocation of system_unbound_wq

+13 -3
+9
MAINTAINERS
··· 6583 6583 F: include/sound/wm????.h 6584 6584 F: sound/soc/codecs/wm* 6585 6585 6586 + WORKQUEUE 6587 + M: Tejun Heo <tj@kernel.org> 6588 + L: linux-kernel@vger.kernel.org 6589 + T: git git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git 6590 + S: Maintained 6591 + F: include/linux/workqueue.h 6592 + F: kernel/workqueue.c 6593 + F: Documentation/workqueue.txt 6594 + 6586 6595 X.25 NETWORK LAYER 6587 6596 M: Andrew Hendry <andrew.hendry@gmail.com> 6588 6597 L: linux-x25@vger.kernel.org
+4 -3
kernel/workqueue.c
··· 661 661 { 662 662 struct worker *worker = kthread_data(task); 663 663 664 - if (likely(!(worker->flags & WORKER_NOT_RUNNING))) 664 + if (!(worker->flags & WORKER_NOT_RUNNING)) 665 665 atomic_inc(get_gcwq_nr_running(cpu)); 666 666 } 667 667 ··· 687 687 struct global_cwq *gcwq = get_gcwq(cpu); 688 688 atomic_t *nr_running = get_gcwq_nr_running(cpu); 689 689 690 - if (unlikely(worker->flags & WORKER_NOT_RUNNING)) 690 + if (worker->flags & WORKER_NOT_RUNNING) 691 691 return NULL; 692 692 693 693 /* this can only happen on the local cpu */ ··· 3692 3692 system_nrt_wq = alloc_workqueue("events_nrt", WQ_NON_REENTRANT, 0); 3693 3693 system_unbound_wq = alloc_workqueue("events_unbound", WQ_UNBOUND, 3694 3694 WQ_UNBOUND_MAX_ACTIVE); 3695 - BUG_ON(!system_wq || !system_long_wq || !system_nrt_wq); 3695 + BUG_ON(!system_wq || !system_long_wq || !system_nrt_wq || 3696 + !system_unbound_wq); 3696 3697 return 0; 3697 3698 } 3698 3699 early_initcall(init_workqueues);