12428aad8SPatrick Mooney /* 22428aad8SPatrick Mooney * This file and its contents are supplied under the terms of the 32428aad8SPatrick Mooney * Common Development and Distribution License ("CDDL"), version 1.0. 42428aad8SPatrick Mooney * You may only use this file in accordance with the terms of version 52428aad8SPatrick Mooney * 1.0 of the CDDL. 62428aad8SPatrick Mooney * 72428aad8SPatrick Mooney * A full copy of the text of the CDDL should have accompanied this 82428aad8SPatrick Mooney * source. A copy of the CDDL is also available via the Internet at 92428aad8SPatrick Mooney * http://www.illumos.org/license/CDDL. 102428aad8SPatrick Mooney */ 112428aad8SPatrick Mooney 122428aad8SPatrick Mooney /* 13*284ce987SPatrick Mooney * Copyright 2018 Joyent, Inc. 142428aad8SPatrick Mooney */ 152428aad8SPatrick Mooney 162428aad8SPatrick Mooney #ifndef _VM_SEG_UMAP_H 172428aad8SPatrick Mooney #define _VM_SEG_UMAP_H 182428aad8SPatrick Mooney 192428aad8SPatrick Mooney #ifdef __cplusplus 202428aad8SPatrick Mooney extern "C" { 212428aad8SPatrick Mooney #endif 222428aad8SPatrick Mooney 232428aad8SPatrick Mooney typedef struct segumap_crargs { 242428aad8SPatrick Mooney caddr_t kaddr; 252428aad8SPatrick Mooney uchar_t prot; /* protection */ 262428aad8SPatrick Mooney uchar_t maxprot; /* maximum protection */ 272428aad8SPatrick Mooney } segumap_crargs_t; 282428aad8SPatrick Mooney 292428aad8SPatrick Mooney typedef struct segumap_data { 302428aad8SPatrick Mooney krwlock_t sud_lock; 312428aad8SPatrick Mooney caddr_t sud_kaddr; 322428aad8SPatrick Mooney uchar_t sud_prot; 332428aad8SPatrick Mooney size_t sud_softlockcnt; 342428aad8SPatrick Mooney } segumap_data_t; 352428aad8SPatrick Mooney 36*284ce987SPatrick Mooney extern int segumap_create(struct seg **, void *); 372428aad8SPatrick Mooney 382428aad8SPatrick Mooney #ifdef __cplusplus 392428aad8SPatrick Mooney } 402428aad8SPatrick Mooney #endif 412428aad8SPatrick Mooney 422428aad8SPatrick Mooney #endif /* _VM_SEG_UMAP_H */ 43