/* When XORing in kernel mode, we need to map each user page to kernel
* space before we can access it. We don't want to assume anything
* about which input buffers are in kernel/user space, nor about their
* alignment, so in each loop we compute the maximum number of bytes
* that we can xor without crossing any page boundaries, and do only
* this many bytes before the next remap.
*
* len - is in longwords
*/