Oops. Last commit to vm_object.c should have got these files too.
Remove the use of atomic ops to manipulate vm_object and vm_page flags. Giant is required here, so they are superfluous. Discussed with: dillon
This commit is contained in:
parent
b06805ad34
commit
3a9b5daf48
@ -72,7 +72,6 @@
|
||||
#define _VM_OBJECT_
|
||||
|
||||
#include <sys/queue.h>
|
||||
#include <machine/atomic.h>
|
||||
|
||||
enum obj_type { OBJT_DEFAULT, OBJT_SWAP, OBJT_VNODE, OBJT_DEVICE, OBJT_PHYS,
|
||||
OBJT_DEAD };
|
||||
|
@ -324,16 +324,14 @@ void
|
||||
vm_page_flag_set(vm_page_t m, unsigned short bits)
|
||||
{
|
||||
GIANT_REQUIRED;
|
||||
atomic_set_short(&(m)->flags, bits);
|
||||
/* m->flags |= bits; */
|
||||
m->flags |= bits;
|
||||
}
|
||||
|
||||
void
|
||||
vm_page_flag_clear(vm_page_t m, unsigned short bits)
|
||||
{
|
||||
GIANT_REQUIRED;
|
||||
atomic_clear_short(&(m)->flags, bits);
|
||||
/* m->flags &= ~bits; */
|
||||
m->flags &= ~bits;
|
||||
}
|
||||
|
||||
void
|
||||
@ -384,14 +382,14 @@ void
|
||||
vm_page_io_start(vm_page_t m)
|
||||
{
|
||||
GIANT_REQUIRED;
|
||||
atomic_add_char(&(m)->busy, 1);
|
||||
m->busy++;
|
||||
}
|
||||
|
||||
void
|
||||
vm_page_io_finish(vm_page_t m)
|
||||
{
|
||||
GIANT_REQUIRED;
|
||||
atomic_subtract_char(&(m)->busy, 1);
|
||||
m->busy--;
|
||||
if (m->busy == 0)
|
||||
vm_page_flash(m);
|
||||
}
|
||||
|
@ -76,7 +76,6 @@
|
||||
#endif
|
||||
|
||||
#include <vm/pmap.h>
|
||||
#include <machine/atomic.h>
|
||||
|
||||
/*
|
||||
* Management of resident (logical) pages.
|
||||
|
Loading…
x
Reference in New Issue
Block a user