pseudofs.h (168637) | pseudofs.h (168720) |
---|---|
1/*- 2 * Copyright (c) 2001 Dag-Erling Co�dan Sm�rgrav 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * | 1/*- 2 * Copyright (c) 2001 Dag-Erling Co�dan Sm�rgrav 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * |
28 * $FreeBSD: head/sys/fs/pseudofs/pseudofs.h 168637 2007-04-11 22:40:57Z des $ | 28 * $FreeBSD: head/sys/fs/pseudofs/pseudofs.h 168720 2007-04-14 14:08:30Z des $ |
29 */ 30 31#ifndef _PSEUDOFS_H_INCLUDED 32#define _PSEUDOFS_H_INCLUDED 33 34/* 35 * Opaque structures 36 */ --- 123 unchanged lines hidden (view full) --- 160#define PFS_DESTROY_ARGS \ 161 struct pfs_node *pn 162#define PFS_DESTROY_PROTO(name) \ 163 int name(PFS_DESTROY_ARGS); 164typedef int (*pfs_destroy_t)(PFS_DESTROY_ARGS); 165 166/* 167 * pfs_info: describes a pseudofs instance | 29 */ 30 31#ifndef _PSEUDOFS_H_INCLUDED 32#define _PSEUDOFS_H_INCLUDED 33 34/* 35 * Opaque structures 36 */ --- 123 unchanged lines hidden (view full) --- 160#define PFS_DESTROY_ARGS \ 161 struct pfs_node *pn 162#define PFS_DESTROY_PROTO(name) \ 163 int name(PFS_DESTROY_ARGS); 164typedef int (*pfs_destroy_t)(PFS_DESTROY_ARGS); 165 166/* 167 * pfs_info: describes a pseudofs instance |
168 * 169 * The pi_mutex is only used to avoid using the global subr_unit lock for 170 * unrhdr. The rest of struct pfs_info is only modified while Giant is 171 * held (during vfs_init() and vfs_uninit()). |
|
168 */ 169struct pfs_info { 170 char pi_name[PFS_FSNAMELEN]; 171 pfs_init_t pi_init; 172 pfs_init_t pi_uninit; | 172 */ 173struct pfs_info { 174 char pi_name[PFS_FSNAMELEN]; 175 pfs_init_t pi_init; 176 pfs_init_t pi_uninit; |
173 /* members below this line aren't initialized */ | 177 178 /* members below this line are initialized at run time*/ |
174 struct pfs_node *pi_root; | 179 struct pfs_node *pi_root; |
175 /* currently, the mutex is only used to protect the bitmap */ | |
176 struct mtx pi_mutex; 177 struct unrhdr *pi_unrhdr; 178}; 179 180/* 181 * pfs_node: describes a node (file or directory) within a pseudofs 182 */ 183struct pfs_node { --- 100 unchanged lines hidden --- | 180 struct mtx pi_mutex; 181 struct unrhdr *pi_unrhdr; 182}; 183 184/* 185 * pfs_node: describes a node (file or directory) within a pseudofs 186 */ 187struct pfs_node { --- 100 unchanged lines hidden --- |