diff options
| author | Jerry Jelinek <jerry.jelinek@joyent.com> | 2017-09-28 12:56:20 +0000 |
|---|---|---|
| committer | Jerry Jelinek <jerry.jelinek@joyent.com> | 2017-09-28 12:57:39 +0000 |
| commit | 5ae84a5233b723c890288b775cb5317db2e54d61 (patch) | |
| tree | f28877eae0fdbba8a58726efc3e464145fda1766 /usr/src/uts/sfmmu/vm | |
| parent | 597e7db3df75fb2976c1c29ef285e8bc6c289b4d (diff) | |
| download | illumos-joyent-5ae84a5233b723c890288b775cb5317db2e54d61.tar.gz | |
OS-6306 accurate in-kernel zone RSS tracking
Reviewed by: Dan McDonald <danmcd@joyent.com>
Reviewed by: Jason King <jason.king@joyent.com>
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
Approved by: Dan McDonald <danmcd@joyent.com>
Diffstat (limited to 'usr/src/uts/sfmmu/vm')
| -rw-r--r-- | usr/src/uts/sfmmu/vm/hat_sfmmu.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/usr/src/uts/sfmmu/vm/hat_sfmmu.c b/usr/src/uts/sfmmu/vm/hat_sfmmu.c index b7539c828c..2ef3ea20e8 100644 --- a/usr/src/uts/sfmmu/vm/hat_sfmmu.c +++ b/usr/src/uts/sfmmu/vm/hat_sfmmu.c @@ -24,6 +24,7 @@ /* * Copyright 2011 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Gary Mills + * Copyright 2017 Joyent, Inc. */ /* @@ -85,6 +86,7 @@ #include <sys/fpu/fpusystm.h> #include <vm/mach_kpm.h> #include <sys/callb.h> +#include <sys/zone.h> #ifdef DEBUG #define SFMMU_VALIDATE_HMERID(hat, rid, saddr, len) \ @@ -933,6 +935,7 @@ static kphysm_setup_vector_t sfmmu_update_vec = { } \ pp->p_mapping = hme; \ pp->p_share++; \ + zone_add_page(pp); \ } /* @@ -953,6 +956,7 @@ static kphysm_setup_vector_t sfmmu_update_vec = { \ ASSERT(pp->p_share > 0); \ pp->p_share--; \ + zone_rm_page(pp); \ \ if (hme->hme_prev) { \ ASSERT(pp->p_mapping != hme); \ @@ -7350,6 +7354,8 @@ retry: tpp->p_mapping = NULL; dpp->p_share = tpp->p_share; tpp->p_share = 0; + dpp->p_zoneid = tpp->p_zoneid; + tpp->p_zoneid = ALL_ZONES; while (index != 0) { index = index >> 1; |
