This dequeue dates back to the CSRG sources:
https://svnweb.freebsd.org/csrg/sys/vm/vm_fault.c?view=markup#l239
However, I don't believe it's necessary. If the page is in
PQ_INACTIVE/PQ_LAUNDRY, the busy lock will cause the page daemon to
ignore it. If the page is in PQ_ACTIVE, we can handle a concurrent scan
by the page daemon, which is only counting references.
If the fault is CoW, release_page() will call vm_page_deactivate() on
the page, which handles the dequeue. Otherwise we will call
vm_page_activate() on the page, which also dequeues as necessary. In
particular, if the page is already in PQ_ACTIVE, this change lets us
avoid a needless pair of page queue lock acquisitions.