Messages in this thread |  | | Date | Tue, 28 Oct 2014 21:12:21 +0100 | From | Oleg Nesterov <> | Subject | Re: [PATCH 2/3] introduce probe_slab_address() |
| |
On 10/28, Oleg Nesterov wrote: > > On 10/28, Kirill Tkhai wrote: > > > > Yes, probe_kernel_read() is in [1/3], but it's not the same as > > __probe_kernel_read() for blackfin, for example. > > > > It's defined as > > > > long __weak probe_kernel_read(void *dst, const void *src, size_t size) > > __attribute__((alias("__probe_kernel_read"))); > > > > But blackfin's probe_kernel_read() redefines this __weak function, > > isn't it? Didn't get_freepointer_safe() use to call architecture's > > probe_kernel_read() before? > > I _think_ that __probe_kernel_read(slab_ddr) should be fine. > > Yes, an architecture may want to reimplement probe_kernel_read() to > allow to safely access the special areas, or special addresses. > > But again, in this case we know that this address points to the > "normal" kernel memory, __copy_from_user_inatomic() should work fine.
OTOH, perhaps probe_kernel_address() should use probe_kernel_read(), not __probe_kernel_read(). But currently it just calls __copy_inatomic() so 1/3 follows this logic.
Oleg.
|  |