xref: /illumos-gate/usr/src/uts/common/vm/seg_umap.h (revision 284ce987)
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