1*2428aad8SPatrick Mooney /* 2*2428aad8SPatrick Mooney * This file and its contents are supplied under the terms of the 3*2428aad8SPatrick Mooney * Common Development and Distribution License ("CDDL"), version 1.0. 4*2428aad8SPatrick Mooney * You may only use this file in accordance with the terms of version 5*2428aad8SPatrick Mooney * 1.0 of the CDDL. 6*2428aad8SPatrick Mooney * 7*2428aad8SPatrick Mooney * A full copy of the text of the CDDL should have accompanied this 8*2428aad8SPatrick Mooney * source. A copy of the CDDL is also available via the Internet at 9*2428aad8SPatrick Mooney * http://www.illumos.org/license/CDDL. 10*2428aad8SPatrick Mooney */ 11*2428aad8SPatrick Mooney 12*2428aad8SPatrick Mooney /* 13*2428aad8SPatrick Mooney * Copyright 2016 Joyent, Inc. 14*2428aad8SPatrick Mooney */ 15*2428aad8SPatrick Mooney 16*2428aad8SPatrick Mooney #ifndef _VM_SEG_UMAP_H 17*2428aad8SPatrick Mooney #define _VM_SEG_UMAP_H 18*2428aad8SPatrick Mooney 19*2428aad8SPatrick Mooney #ifdef __cplusplus 20*2428aad8SPatrick Mooney extern "C" { 21*2428aad8SPatrick Mooney #endif 22*2428aad8SPatrick Mooney 23*2428aad8SPatrick Mooney typedef struct segumap_crargs { 24*2428aad8SPatrick Mooney caddr_t kaddr; 25*2428aad8SPatrick Mooney uchar_t prot; /* protection */ 26*2428aad8SPatrick Mooney uchar_t maxprot; /* maximum protection */ 27*2428aad8SPatrick Mooney } segumap_crargs_t; 28*2428aad8SPatrick Mooney 29*2428aad8SPatrick Mooney typedef struct segumap_data { 30*2428aad8SPatrick Mooney krwlock_t sud_lock; 31*2428aad8SPatrick Mooney caddr_t sud_kaddr; 32*2428aad8SPatrick Mooney uchar_t sud_prot; 33*2428aad8SPatrick Mooney size_t sud_softlockcnt; 34*2428aad8SPatrick Mooney } segumap_data_t; 35*2428aad8SPatrick Mooney 36*2428aad8SPatrick Mooney extern int segumap_create(struct seg *, void *); 37*2428aad8SPatrick Mooney 38*2428aad8SPatrick Mooney #ifdef __cplusplus 39*2428aad8SPatrick Mooney } 40*2428aad8SPatrick Mooney #endif 41*2428aad8SPatrick Mooney 42*2428aad8SPatrick Mooney #endif /* _VM_SEG_UMAP_H */ 43