But the write should have triggered a page fault immediately in that case, and should have been blocked on the page being actually allocated before resuming.
yes, i went back and re-read the report. an immediate read 1 instruction later works, but 10 does not. the page marked dirty but pointing to the zero page. some context flapping i assume