Hi Kees, On 05/08/15 21:26, Kees Cook wrote: > On Wed, Aug 5, 2015 at 8:48 AM, James Hogan <james.hogan@xxxxxxxxxx> wrote: >> These patches extend the test_user_copy test module to handle lots more >> cases of user accessors which architectures can override separately, and >> in particular those which are important for checking the MIPS Enhanced >> Virtual Addressing (EVA) implementations, which need to handle >> overlapping user and kernel address spaces, with special instructions >> for accessing user address space from kernel mode. >> >> - Checking that kernel pointers are accepted when user address limit is >> set to KERNEL_DS, as done by the kernel when it internally invokes >> system calls with kernel pointers. >> - Checking of the unchecked accessors (which don't call access_ok()). >> Some of the tests are special cased for EVA at the moment which has >> stricter hardware guarantees for bad user accesses than other >> configurations. >> - Checking of other sets of user accessors, including the inatomic user >> copies, copy_in_user, clear_user, the user string accessors, and the >> user checksum functions, all of which need special handling in arch >> code with EVA. >> >> Tested on MIPS with and without EVA, and on x86_64. >> >> James Hogan (7): >> test_user_copy: Check legit kernel accesses >> test_user_copy: Check unchecked accessors >> test_user_copy: Check __clear_user()/clear_user() >> test_user_copy: Check __copy_in_user()/copy_in_user() >> test_user_copy: Check __copy_{to,from}_user_inatomic() >> test_user_copy: Check user string accessors >> test_user_copy: Check user checksum functions >> >> lib/test_user_copy.c | 221 +++++++++++++++++++++++++++++++++++++++++++++++++++ >> 1 file changed, 221 insertions(+) >> >> Cc: Kees Cook <keescook@xxxxxxxxxxxx> >> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > > Ooooh! Nice! This is great, thank you. :) Great to hear it helped find > a bug too. :) > > I'm wondering if we need to macro-ize any of these. Probably not, but > it just feels like there's a lot of repeated stuff now. But I think > it's a bit of an illusion since each test is ever so slightly > different from the others. Yeh, I wondered that too, but I agree they're all slightly different in their requirements so it'd just end up confusing things. > > Acked-by: Kees Cook <keescook@xxxxxxxxxxxx> Thanks! James
Attachment:
signature.asc
Description: OpenPGP digital signature