Messages in this thread | | | Subject | Re: [RFC][v6][PATCH 0/9] clone_with_pids() syscall | From | Peter Zijlstra <> | Date | Fri, 11 Sep 2009 19:00:04 +0200 |
| |
On Fri, 2009-09-11 at 09:47 -0700, Sukadev Bhattiprolu wrote: > | Also, if you're passing a struct, why not put nr_pids in there, and > | replace clone_pid_struct with a simple array? That would give us > | > | struct clone_struct { > | u64 flags; > | u64 child_stack; > | u32 child_tid; > | u32 parent_tid; > | u32 nr_pids; > | u32 reserved1; > | u64 reserved2; > | }; > | > | int clone2(struct clone_struct *cs, pid_t *pids); > > My only concern with this approach was the extra copy_from_user() in the > common case (i.e when not using the extended features). I assume the > overhead of copy_from_user() is small enough to be ignored ?
I would think so, esp for small structure, it would be a cache hot copy. That is, for x86 I doubt it'll show up. No idea what hoops other arch have to jump through to get copy_from_user() doing what it does.
| |