diff options
author | alc <alc@FreeBSD.org> | 2003-04-28 06:11:32 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2003-04-28 06:11:32 +0000 |
commit | 482e860dda7cab14715c1f17c1b888d5c5591e90 (patch) | |
tree | c45e4b863414b2d8b4e2acb3a5bf3614c5bf08f5 /sys/vm | |
parent | 600f5cf898c0247ef04cdb52bd6aeb4c726db69f (diff) | |
download | FreeBSD-src-482e860dda7cab14715c1f17c1b888d5c5591e90.zip FreeBSD-src-482e860dda7cab14715c1f17c1b888d5c5591e90.tar.gz |
uma_zone_set_obj() must perform VM_OBJECT_LOCK_INIT() if the caller
provides storage for the vm_object.
Diffstat (limited to 'sys/vm')
-rw-r--r-- | sys/vm/uma_core.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/vm/uma_core.c b/sys/vm/uma_core.c index a51c8ba..a27794b 100644 --- a/sys/vm/uma_core.c +++ b/sys/vm/uma_core.c @@ -1941,10 +1941,11 @@ uma_zone_set_obj(uma_zone_t zone, struct vm_object *obj, int count) if (obj == NULL) obj = vm_object_allocate(OBJT_DEFAULT, pages); - else + else { + VM_OBJECT_LOCK_INIT(obj); _vm_object_allocate(OBJT_DEFAULT, pages, obj); - + } ZONE_LOCK(zone); zone->uz_kva = kva; zone->uz_obj = obj; |