History

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

Pull percpu updates from Tejun Heo: - Major reorganization of percpu header files which I think makes things a lot more readable and logical than before. - percpu-refcount is updated so that it requires explicit destruction and can be reinitialized if necessary. This was pulled into the block tree to replace the custom percpu refcnting implemented in blk-mq. - In the process, percpu and percpu-refcount got cleaned up a bit * 'for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (21 commits) percpu-refcount: implement percpu_ref_reinit() and percpu_ref_is_zero() percpu-refcount: require percpu_ref to be exited explicitly percpu-refcount: use unsigned long for pcpu_count pointer percpu-refcount: add helpers for ->percpu_count accesses percpu-refcount: one bit is enough for REF_STATUS percpu-refcount, aio: use percpu_ref_cancel_init() in ioctx_alloc() workqueue: stronger test in process_one_work() workqueue: clear POOL_DISASSOCIATED in rebind_workers() percpu: Use ALIGN macro instead of hand coding alignment calculation percpu: invoke __verify_pcpu_ptr() from the generic part of accessors and operations percpu: preffity percpu header files percpu: use raw_cpu_*() to define __this_cpu_*() percpu: reorder macros in percpu header files percpu: move {raw|this}_cpu_*() definitions to include/linux/percpu-defs.h percpu: move generic {raw|this}_cpu_*_N() definitions to include/asm-generic/percpu.h percpu: only allow sized arch overrides for {raw|this}_cpu_*() ops percpu: reorganize include/linux/percpu-defs.h percpu: move accessors from include/linux/percpu.h to percpu-defs.h percpu: include/asm-generic/percpu.h should contain only arch-overridable parts percpu: introduce arch_raw_cpu_ptr() ...

Linus Torvalds committed 12 years ago

Commit f2a84172 parents c4c3f5f 2d7227811 files · +832 −811Browse files

Showing the changes to kernel/workqueue.c (1 of 11 files). Show all

Unified · Split

kernel/workqueue.c+3−3
@@ -1962,6 +1962,7 @@ __acquires(&pool->lock) · 1961 unmodified lines
1962 1962
1963 lockdep_copy_map(&lockdep_map, &work->lockdep_map);1963 lockdep_copy_map(&lockdep_map, &work->lockdep_map);
1964#endif1964#endif
1965 /* ensure we're on the correct CPU */
1965 WARN_ON_ONCE(!(pool->flags & POOL_DISASSOCIATED) &&1966 WARN_ON_ONCE(!(pool->flags & POOL_DISASSOCIATED) &&
1966 raw_smp_processor_id() != pool->cpu);1967 raw_smp_processor_id() != pool->cpu);
1967 1968
@@ -4574,11 +4575,10 @@ static int workqueue_cpu_up_callback(struct notifier_block *nfb, · 2606 unmodified lines
4574 for_each_pool(pool, pi) {4575 for_each_pool(pool, pi) {
4575 mutex_lock(&pool->attach_mutex);4576 mutex_lock(&pool->attach_mutex);
4576 4577
4577 if (pool->cpu == cpu) {4578 if (pool->cpu == cpu)
4578 rebind_workers(pool);4579 rebind_workers(pool);
4579 } else if (pool->cpu < 0) {4580 else if (pool->cpu < 0)
4580 restore_unbound_workers_cpumask(pool, cpu);4581 restore_unbound_workers_cpumask(pool, cpu);
4581 }
4582 4582
4583 mutex_unlock(&pool->attach_mutex);4583 mutex_unlock(&pool->attach_mutex);
4584 }4584 }

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t