Page MenuHomeFreeBSD

D22886.id.diff
No OneTemporary

D22886.id.diff

Index: head/sys/vm/vm_page.h
===================================================================
--- head/sys/vm/vm_page.h
+++ head/sys/vm/vm_page.h
@@ -649,7 +649,6 @@
int vm_page_rename(vm_page_t, vm_object_t, vm_pindex_t);
void vm_page_replace(vm_page_t mnew, vm_object_t object,
vm_pindex_t pindex, vm_page_t mold);
-void vm_page_requeue(vm_page_t m);
int vm_page_sbusied(vm_page_t m);
vm_page_t vm_page_scan_contig(u_long npages, vm_page_t m_start,
vm_page_t m_end, u_long alignment, vm_paddr_t boundary, int options);
@@ -659,7 +658,6 @@
int vm_page_sleep_if_xbusy(vm_page_t m, const char *msg);
vm_offset_t vm_page_startup(vm_offset_t vaddr);
void vm_page_sunbusy(vm_page_t m);
-void vm_page_swapqueue(vm_page_t m, uint8_t oldq, uint8_t newq);
bool vm_page_try_remove_all(vm_page_t m);
bool vm_page_try_remove_write(vm_page_t m);
int vm_page_trysbusy(vm_page_t m);
@@ -833,31 +831,6 @@
addr = (void *)&m->a;
val = bits << VM_PAGE_AFLAG_SHIFT;
atomic_set_32(addr, val);
-}
-
-/*
- * Atomically update the queue state of the page. The operation fails if
- * any of the queue flags in "fflags" are set or if the "queue" field of
- * the page does not match the expected value; if the operation is
- * successful, the flags in "nflags" are set and all other queue state
- * flags are cleared.
- */
-static inline bool
-vm_page_pqstate_cmpset(vm_page_t m, uint32_t oldq, uint32_t newq,
- uint32_t fflags, uint32_t nflags)
-{
- vm_page_astate_t new, old;
-
- old = vm_page_astate_load(m);
- do {
- if ((old.flags & fflags) != 0 || old.queue != oldq)
- return (false);
- new = old;
- new.flags = (new.flags & ~PGA_QUEUE_OP_MASK) | nflags;
- new.queue = newq;
- } while (!vm_page_astate_fcmpset(m, &old, new));
-
- return (true);
}
/*
Index: head/sys/vm/vm_page.c
===================================================================
--- head/sys/vm/vm_page.c
+++ head/sys/vm/vm_page.c
@@ -3662,52 +3662,6 @@
}
/*
- * vm_page_requeue: [ internal use only ]
- *
- * Schedule a requeue of the given page.
- *
- * The page must be locked.
- */
-void
-vm_page_requeue(vm_page_t m)
-{
-
- vm_page_assert_locked(m);
- KASSERT(vm_page_queue(m) != PQ_NONE,
- ("%s: page %p is not logically enqueued", __func__, m));
- KASSERT(m->ref_count > 0,
- ("%s: page %p does not carry any references", __func__, m));
-
- if ((m->a.flags & PGA_REQUEUE) == 0)
- vm_page_aflag_set(m, PGA_REQUEUE);
- vm_page_pqbatch_submit(m, atomic_load_8(&m->a.queue));
-}
-
-/*
- * vm_page_swapqueue: [ internal use only ]
- *
- * Move the page from one queue to another, or to the tail of its
- * current queue, in the face of a possible concurrent free of the
- * page.
- */
-void
-vm_page_swapqueue(vm_page_t m, uint8_t oldq, uint8_t newq)
-{
- vm_page_astate_t new, old;
-
- old = vm_page_astate_load(m);
- do {
- if (old.queue != oldq || (old.flags & PGA_DEQUEUE) != 0)
- return;
- new = old;
- new.flags |= PGA_REQUEUE;
- new.queue = newq;
- } while (!vm_page_pqstate_commit_dequeue(m, &old, new));
-
- vm_page_pqbatch_submit(m, newq);
-}
-
-/*
* vm_page_free_prep:
*
* Prepares the given page to be put on the free list,

File Metadata

Mime Type
text/plain
Expires
Tue, Sep 1, 11:43 PM (6 h, 45 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
37749837
Default Alt Text
D22886.id.diff (3 KB)

Event Timeline