Messages in this thread |  | | | From | Roland McGrath <> | | Subject | Re: [PATCH -mm 1/1] ptrace: PTRACE_GETFDPIC: fix the unsafe usage of child->mm | | Date | Mon, 24 May 2010 16:42:50 -0700 (PDT) |
| |
> You mean, pass it to arch_ptrace() ? > > grep, grep, grep. I guess I understand you. We have more unsafe code > like this in arch/*/kernel/ptrace.c. Of course, it can be fixed without > doing get_task_mm() in sys_ptrace(), but perhaps it would be more clean > to do what you suggest. > > Roland, what do you think?
The mm pointer is only used by these uncommon ptrace operations that exist only in certain unusual arch's (and they're all ill-advised old arch ptrace ABI additions, at that). It doesn't seem wise to pay the overhead for get_task_mm()/mmput() on every ptrace call, 99.44% of which don't use it (and 100% on 90% of machines).
If you were to make any change to the signature of arch_ptrace() it should be one big change to use a struct ptrace_params or suchlike, also passed down to ptrace_request(). Then any future needs to pass around more information won't require changing the code in all the arch code that doesn't look at the new parameter.
Thanks, Roland
|  |