This patch simply moves the flag field and makes it atomic to eliminate the final dependency on the object lock in vm_page_set_validclean().
I do not fully understand the race described in vm_fault.c:~225 that requires the page lock. This may be the final vestige of page_lock after Mark and I are done so it would be good for someone to suggest a new approach and especially to review this patch in that light. I believe what I have done is correct however.