diff options
author | Konstantin Belousov <kib@FreeBSD.org> | 2021-05-07 18:19:30 +0000 |
---|---|---|
committer | Konstantin Belousov <kib@FreeBSD.org> | 2021-05-22 09:38:30 +0000 |
commit | 324fbdb27ab1dbf027cf250fd575739985bf5434 (patch) | |
tree | d27c7207a4a274f7ce1e5d759a85924f393d26a1 | |
parent | f3253c60b426ba7ce4c2da47a8ad04f688ced52c (diff) |
vm_object_set_memattr(): handle all object types without listing them explicitly
(cherry picked from commit 3e7a11ca21f3a7948c50f27de5b2159f0bb56672)
-rw-r--r-- | sys/vm/vm_object.c | 22 |
1 files changed, 5 insertions, 17 deletions
diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index 735ab603a09b..1aa05093f93a 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -330,24 +330,12 @@ vm_object_set_memattr(vm_object_t object, vm_memattr_t memattr) { VM_OBJECT_ASSERT_WLOCKED(object); - switch (object->type) { - case OBJT_DEFAULT: - case OBJT_DEVICE: - case OBJT_MGTDEVICE: - case OBJT_PHYS: - case OBJT_SG: - case OBJT_SWAP: - case OBJT_SWAP_TMPFS: - case OBJT_VNODE: - if (!TAILQ_EMPTY(&object->memq)) - return (KERN_FAILURE); - break; - case OBJT_DEAD: + + if (object->type == OBJT_DEAD) return (KERN_INVALID_ARGUMENT); - default: - panic("vm_object_set_memattr: object %p is of undefined type", - object); - } + if (!TAILQ_EMPTY(&object->memq)) + return (KERN_FAILURE); + object->memattr = memattr; return (KERN_SUCCESS); } |