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