Page MenuHomeFreeBSD

(vm object 5) Move PGA_NOSYNC to VPA_NOSYNC so that the object lock is not required.
Needs ReviewPublic

Authored by jeff on Tue, Sep 10, 8:20 PM.

Details

Reviewers
alc
kib
markj
dougm
Summary

This patch simply moves the flag field and makes it atomic to eliminate the final dependency on the object lock in vm_page_set_validclean().

I do not fully understand the race described in vm_fault.c:~225 that requires the page lock. This may be the final vestige of page_lock after Mark and I are done so it would be good for someone to suggest a new approach and especially to review this patch in that light. I believe what I have done is correct however.

Diff Detail

Lint
Lint OK
Unit
No Unit Test Coverage
Build Status
Buildable 26392
Build 24849: arc lint + arc unit

Event Timeline

jeff created this revision.Tue, Sep 10, 8:20 PM
jeff retitled this revision from Move PGA_NOSYNC to VPA_NOSYNC so that the object lock is not required. to (vm object 5) Move PGA_NOSYNC to VPA_NOSYNC so that the object lock is not required..Tue, Sep 10, 8:23 PM
jeff edited the summary of this revision. (Show Details)
jeff added reviewers: alc, kib, markj, dougm.