
- when yielding the cpu while using the vnode's page list, use a marker page to keep our place in the list (like the other cases where we drop the lock). - wait until no one else has the page busy before deciding if the page needs to be cleaned. a page will be dirty while it's being initialized but will be marked clean before PG_BUSY is cleared. both found by enami.