diff options
author | Patrick Mooney <pmooney@pfmooney.com> | 2019-01-05 00:15:31 +0000 |
---|---|---|
committer | Patrick Mooney <pmooney@pfmooney.com> | 2019-01-08 01:03:07 +0000 |
commit | 1681fea05e271e6e0ec1aa68bf37b34cbcf5854e (patch) | |
tree | 3a276ed85d5969b77535b9fe5329e27a4852e340 /usr/src | |
parent | 66b9606131b15c87650523d677d70277878480f6 (diff) | |
download | illumos-joyent-1681fea05e271e6e0ec1aa68bf37b34cbcf5854e.tar.gz |
OS-7483 excessive page destruction caused by 6602
Reviewed by: Toomas Soome <tsoome@me.com>
Reviewed by: Mike Gerdts <mike.gerdts@joyent.com>
Reviewed by: Ryan Zezeski <rpz@joyent.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Diffstat (limited to 'usr/src')
-rw-r--r-- | usr/src/uts/common/io/lofi.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/usr/src/uts/common/io/lofi.c b/usr/src/uts/common/io/lofi.c index 95f4cd7254..1169f3fdfc 100644 --- a/usr/src/uts/common/io/lofi.c +++ b/usr/src/uts/common/io/lofi.c @@ -24,6 +24,7 @@ * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright (c) 2016 Andrey Sokolov * Copyright 2016 Toomas Soome <tsoome@me.com> + * Copyright 2019 Joyent, Inc. */ /* @@ -173,7 +174,7 @@ #define SIZE_PROP_NAME "Size" #define ZONE_PROP_NAME "zone" -#define SETUP_C_DATA(cd, buf, len) \ +#define SETUP_C_DATA(cd, buf, len) \ (cd).cd_format = CRYPTO_DATA_RAW; \ (cd).cd_offset = 0; \ (cd).cd_miscdata = NULL; \ @@ -553,7 +554,7 @@ lofi_destroy(struct lofi_state *lsp, cred_t *credp) } if (lsp->ls_vp != NULL) { - (void) VOP_PUTPAGE(lsp->ls_vp, 0, 0, B_INVAL, credp, NULL); + (void) VOP_PUTPAGE(lsp->ls_vp, 0, 0, B_FREE, credp, NULL); (void) VOP_CLOSE(lsp->ls_vp, lsp->ls_openflag, 1, 0, credp, NULL); VN_RELE(lsp->ls_vp); @@ -2934,7 +2935,7 @@ err: lofi_destroy(lsp, credp); } else { if (vp != NULL) { - (void) VOP_PUTPAGE(vp, 0, 0, B_INVAL, credp, NULL); + (void) VOP_PUTPAGE(vp, 0, 0, B_FREE, credp, NULL); (void) VOP_CLOSE(vp, flag, 1, 0, credp, NULL); VN_RELE(vp); } |