From: Rusty Russell <rusty@rustcorp.com.au>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org,
Lai Jiangshan <laijs@cn.fujitsu.com>,
Vitaliy Gusev <vgusev@openvz.org>,
Oleg Nesterov <oleg@redhat.com>,
Andrew Morton <akpm@linux-foundation.org>,
Ingo Molnar <mingo@elte.hu>
Subject: [PULL] kthread and two misc cleanups (all long in linux-next)
Date: Tue, 7 Apr 2009 13:56:12 +0930 [thread overview]
Message-ID: <200904071356.13545.rusty@rustcorp.com.au> (raw)
The following changes since commit d508afb437daee7cf07da085b635c44a4ebf9b38:
Trond Myklebust (1):
NFS: Fix a double free in nfs_parse_mount_options()
are available in the git repository at:
ssh://master.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus.git master
Andrew Morton (1):
work_on_cpu(): rewrite it to create a kernel thread on demand
Lai Jiangshan (1):
cpuhotplug: remove cpu_hotplug_init()
Oleg Nesterov (1):
kthread: move sched-realeted initialization from kthreadd context
Rusty Russell (1):
misc: remove redundant start_kernel prototypes.
Vitaliy Gusev (1):
kthread: Don't looking for a task in create_kthread() #2
include/asm-frv/gdb-stub.h | 1 -
include/asm-mn10300/gdb-stub.h | 1 -
include/linux/cpu.h | 5 -----
init/main.c | 1 -
kernel/cpu.c | 11 +++--------
kernel/kthread.c | 26 ++++++++++++--------------
kernel/workqueue.c | 36 +++++++++++++++++++-----------------
7 files changed, 34 insertions(+), 47 deletions(-)
commit 2bb68fd7b6882ec39688d187ad89917ce734e9c8
Author: Rusty Russell <rusty@rustcorp.com.au>
Date: Tue Apr 7 13:51:33 2009 -0600
misc: remove redundant start_kernel prototypes.
No need for redeclaration.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
include/asm-frv/gdb-stub.h | 1 -
include/asm-mn10300/gdb-stub.h | 1 -
2 files changed, 0 insertions(+), 2 deletions(-)
commit 49f3e4288e07854308caabe790e8491c2e64faf9
Author: Lai Jiangshan <laijs@cn.fujitsu.com>
Date: Tue Feb 17 17:08:40 2009 +0800
cpuhotplug: remove cpu_hotplug_init()
cpu_hotplug_init() is almost equal to a dummy function,
this patch remove it.
Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
include/linux/cpu.h | 5 -----
init/main.c | 1 -
kernel/cpu.c | 11 +++--------
3 files changed, 3 insertions(+), 14 deletions(-)
commit f52a0223e95a5f49f028f61902c86b12ad81df5d
Author: Vitaliy Gusev <vgusev@openvz.org>
Date: Tue Apr 7 13:51:35 2009 -0600
kthread: Don't looking for a task in create_kthread() #2
Remove the unnecessary find_task_by_pid_ns(). kthread() can just
use "current" to get the same result.
Signed-off-by: Vitaliy Gusev <vgusev@openvz.org>
Acked-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
kernel/kthread.c | 4 +---
1 files changed, 1 insertions(+), 3 deletions(-)
commit 5fc789815a655473119ccc8df8199ae39639db91
Author: Oleg Nesterov <oleg@redhat.com>
Date: Tue Apr 7 13:51:35 2009 -0600
kthread: move sched-realeted initialization from kthreadd context
kthreadd is the single thread which implements ths "create" request, move
sched_setscheduler/etc from create_kthread() to kthread_create() to
improve the scalability.
We should be careful with sched_setscheduler(), use _nochek helper.
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Pavel Emelyanov <xemul@openvz.org>
Cc: Vitaliy Gusev <vgusev@openvz.org
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
kernel/kthread.c | 22 +++++++++++-----------
1 files changed, 11 insertions(+), 11 deletions(-)
commit 188b4afa4bc94d7aaefac27fe37263df107f4c2d
Author: Andrew Morton <akpm@linux-foundation.org>
Date: Tue Apr 7 13:51:35 2009 -0600
work_on_cpu(): rewrite it to create a kernel thread on demand
The various implemetnations and proposed implemetnations of work_on_cpu()
are vulnerable to various deadlocks because they all used queues of some
form.
Unrelated pieces of kernel code thus gained dependencies wherein if one
work_on_cpu() caller holds a lock which some other work_on_cpu() callback
also takes, the kernel could rarely deadlock.
Fix this by creating a short-lived kernel thread for each work_on_cpu()
invokation.
This is not terribly fast, but the only current caller of work_on_cpu() is
pci_call_probe().
It would be nice to find some other way of doing the node-local
allocations in the PCI probe code so that we can zap work_on_cpu()
altogether. The code there is rather nasty. I can't think of anything
simple at this time...
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
kernel/workqueue.c | 36 +++++++++++++++++++-----------------
1 files changed, 19 insertions(+), 17 deletions(-)
reply other threads:[~2009-04-07 4:26 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200904071356.13545.rusty@rustcorp.com.au \
--to=rusty@rustcorp.com.au \
--cc=akpm@linux-foundation.org \
--cc=laijs@cn.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=oleg@redhat.com \
--cc=torvalds@linux-foundation.org \
--cc=vgusev@openvz.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.