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. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/