All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch 00/14] Syslets, generic asynchronous system call support, v2
@ 2007-02-15 16:51 Ingo Molnar
  2007-02-15 17:59 ` Linus Torvalds
  2007-02-18 10:31 ` Stephen Rothwell
  0 siblings, 2 replies; 3+ messages in thread
From: Ingo Molnar @ 2007-02-15 16:51 UTC (permalink / raw)
  To: linux-kernel
  Cc: Linus Torvalds, Arjan van de Ven, Christoph Hellwig,
	Andrew Morton, Alan Cox, Ulrich Drepper, Zach Brown,
	Evgeniy Polyakov, David S. Miller, Suparna Bhattacharya,
	Davide Libenzi, Thomas Gleixner


this is the v2 release of the syslet subsystem. This is an interim 
release, not all known and pending items are fixed/changed yet - the 
tree is still work in progress:

   http://redhat.com/~mingo/syslet-patches/

The biggest conceptual change in v2 is the ability of cachemiss threads 
to be turned into user threads. This fixes signal handling, makes them 
ptrace-eable, etc. (I've updated the sample userspace code at the URL 
above to also do user-space cachemiss processing - just Ctrl-Z the 
async-test.c run to trigger it action.)

Things not yet done in v2 and planned for v3:

 - multiple completion rings support

 - share the 'spare thread' between multiple rings, to further reduce 
   startup costs.

 - remove mlock() reliance

Changes since v1:

 - FPU support fixed: detach FPU state from kernel thread state 
   (implemented by Arjan van de Ven)

 - remove superfluous CLONE_VM from create_async_thread()
   (noticed by Jens Axboe)

 - sys_umem_add() does not ignore -EFAULT of __put_user()
   (noticed by Andrew Morton)

 - use VERIFY_READ instead of VERIFY_WRITE in copy_uatom()
   (noticed by Andrew Morton)

 - move schedule() to tail of loop in cachemiss_loop()
   (noticed by Andrew Morton)

 - added move_user_context() arch op

 - added async_syscall() and recursion protection against re-entry of 
   sys_async_exec(), sys_fork()/sys_clone(), etc.

 - added sys_async_thread() call - a user-space thread can thus call 
   back into the syslet subsystem and continue cachemiss work.

 - further cleanups in the include files

 - race fixes to sys_async_wait()

 - optimized out the kmalloc()/kfree() of the async_head

 - async_thread structure not on the kernel stack anymore, to allow 
   async contexts to run user-space.

 - added support for head_stack and head_eip to enable the initial 
   thread/task to run a cachemiss user context too, if it gets turned 
   into a cachemiss thread.

As always, comments, suggestions, reports are welcome.

	Ingo

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [patch 00/14] Syslets, generic asynchronous system call support, v2
  2007-02-15 16:51 [patch 00/14] Syslets, generic asynchronous system call support, v2 Ingo Molnar
@ 2007-02-15 17:59 ` Linus Torvalds
  2007-02-18 10:31 ` Stephen Rothwell
  1 sibling, 0 replies; 3+ messages in thread
From: Linus Torvalds @ 2007-02-15 17:59 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: linux-kernel, Arjan van de Ven, Christoph Hellwig, Andrew Morton,
	Alan Cox, Ulrich Drepper, Zach Brown, Evgeniy Polyakov,
	David S. Miller, Suparna Bhattacharya, Davide Libenzi,
	Thomas Gleixner



On Thu, 15 Feb 2007, Ingo Molnar wrote:
> 
> this is the v2 release of the syslet subsystem. This is an interim 
> release, not all known and pending items are fixed/changed yet - the 
> tree is still work in progress:

I'm still not a huge fan of the user space interface, but at least the 
core code looks quite clean. No objections on that front.

		Linus

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [patch 00/14] Syslets, generic asynchronous system call support, v2
  2007-02-15 16:51 [patch 00/14] Syslets, generic asynchronous system call support, v2 Ingo Molnar
  2007-02-15 17:59 ` Linus Torvalds
@ 2007-02-18 10:31 ` Stephen Rothwell
  1 sibling, 0 replies; 3+ messages in thread
From: Stephen Rothwell @ 2007-02-18 10:31 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: linux-kernel, Linus Torvalds, Arjan van de Ven,
	Christoph Hellwig, Andrew Morton, Alan Cox, Ulrich Drepper,
	Zach Brown, Evgeniy Polyakov, David S. Miller,
	Suparna Bhattacharya, Davide Libenzi, Thomas Gleixner

[-- Attachment #1: Type: text/plain, Size: 531 bytes --]

On Thu, 15 Feb 2007 17:51:51 +0100 Ingo Molnar <mingo@elte.hu> wrote:
>
>
> this is the v2 release of the syslet subsystem. This is an interim
> release, not all known and pending items are fixed/changed yet - the
> tree is still work in progress:
>
>    http://redhat.com/~mingo/syslet-patches/

So, has anyone thought about all those 32bit processes running on a 64bit
kernel and how we are going to cope with this interface?

--
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-02-18 10:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-15 16:51 [patch 00/14] Syslets, generic asynchronous system call support, v2 Ingo Molnar
2007-02-15 17:59 ` Linus Torvalds
2007-02-18 10:31 ` Stephen Rothwell

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.