uaccess: implement a proper unsafe_copy_to_user() and switch filldir over to it