I get an invalid operands to binary & error when I compile this line in a kernel module return (pte_val(*pte) & ~(PAGE_SIZE -1)) + (address & (PAGE_SIZE - 1)); Can anyone tell me why? TIA -- Best regards, David Stroupe Keyed-Up Software