summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/uts/common/os/project.c2
-rw-r--r--usr/src/uts/common/syscall/rctlsys.c10
2 files changed, 6 insertions, 6 deletions
diff --git a/usr/src/uts/common/os/project.c b/usr/src/uts/common/os/project.c
index 2fe052cfbe..e19f1959bc 100644
--- a/usr/src/uts/common/os/project.c
+++ b/usr/src/uts/common/os/project.c
@@ -1020,7 +1020,7 @@ project_kstat_delete(kproject_t *pj)
if (pj->kpj_data.kpd_lockedmem_kstat != NULL) {
data = pj->kpj_data.kpd_lockedmem_kstat->ks_data;
kstat_delete(pj->kpj_data.kpd_lockedmem_kstat);
- kmem_free(data, sizeof (zone_kstat_t));
+ kmem_free(data, sizeof (kproject_kstat_t));
}
pj->kpj_data.kpd_lockedmem_kstat = NULL;
}
diff --git a/usr/src/uts/common/syscall/rctlsys.c b/usr/src/uts/common/syscall/rctlsys.c
index b82f4b0566..5c4da3274b 100644
--- a/usr/src/uts/common/syscall/rctlsys.c
+++ b/usr/src/uts/common/syscall/rctlsys.c
@@ -870,11 +870,6 @@ rctlsys_projset(char *name, rctl_opaque_t *rblk, size_t size, int flags)
return (set_errno(EFAULT));
}
- if (secpolicy_rctlsys(CRED(), B_TRUE) != 0) {
- kmem_free(kname, MAXPATHLEN);
- return (set_errno(EPERM));
- }
-
if (size > RCTL_PROJSET_MAXSIZE) {
kmem_free(kname, MAXPATHLEN);
return (set_errno(EINVAL));
@@ -893,6 +888,11 @@ rctlsys_projset(char *name, rctl_opaque_t *rblk, size_t size, int flags)
return (set_errno(EINVAL));
}
+ if (secpolicy_rctlsys(CRED(), B_FALSE) != 0) {
+ kmem_free(kname, MAXPATHLEN);
+ return (set_errno(EPERM));
+ }
+
/* Allocate an array large enough for all resource control blocks */
krblk = kmem_zalloc(sizeof (rctl_opaque_t) * size, KM_SLEEP);