Since the page "frame" doesn't belong to a vm object, it can't be paged

out.  Since it can't be paged out, it is never actually enqueued in a
paging queue.  Nonetheless, passing PQ_INACTIVE to vm_page_unwire()
creates the appearance that the page "frame" is being enqueued in the
inactive queue.  As of r288122, we can avoid this false impression by
passing PQ_NONE.

MFC after:	1 week
This commit is contained in:
Alan Cox 2017-09-24 02:50:59 +00:00
parent d86680b073
commit 92993af469
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=323961

View File

@ -1621,7 +1621,7 @@ ti_newbuf_jumbo(struct ti_softc *sc, int idx, struct mbuf *m_old)
} }
sf[i] = sf_buf_alloc(frame, SFB_NOWAIT); sf[i] = sf_buf_alloc(frame, SFB_NOWAIT);
if (sf[i] == NULL) { if (sf[i] == NULL) {
vm_page_unwire(frame, PQ_INACTIVE); vm_page_unwire(frame, PQ_NONE);
vm_page_free(frame); vm_page_free(frame);
device_printf(sc->ti_dev, "buffer allocation " device_printf(sc->ti_dev, "buffer allocation "
"failed -- packet dropped!\n"); "failed -- packet dropped!\n");